PGh0bWw+CjxoZWFkPgo8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1JU08tODg1OS0xIj4KPHRpdGxlPk51bGxhcnkgZnVuY3Rpb24gYmFzZWQgdGVzdCBjYXNlPC90aXRsZT4KPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi8uLi8uLi9zdHlsZS9zdHlsZS5jc3MiIHR5cGU9InRleHQvY3NzIj4KPG1ldGEgbmFtZT0iZ2VuZXJhdG9yIiBjb250ZW50PSJEb2NCb29rIFhTTCBTdHlsZXNoZWV0cyBWMS43NC4wIj4KPGxpbmsgcmVsPSJob21lIiBocmVmPSIuLi8uLi8uLi9pbmRleC5odG1sIiB0aXRsZT0iQm9vc3QgVGVzdCBMaWJyYXJ5Ij4KPGxpbmsgcmVsPSJ1cCIgaHJlZj0iLi4vdGVzdC1vcmdhbml6YXRpb24uaHRtbCIgdGl0bGU9IlRlc3Qgb3JnYW5pemF0aW9uIG9yIHRoZSBob3VzZSB0aGF0IEphY2sgYnVpbHQiPgo8bGluayByZWw9InByZXYiIGhyZWY9Ii4uL3Rlc3Qtb3JnYW5pemF0aW9uLmh0bWwiIHRpdGxlPSJUZXN0IG9yZ2FuaXphdGlvbiBvciB0aGUgaG91c2UgdGhhdCBKYWNrIGJ1aWx0Ij4KPGxpbmsgcmVsPSJuZXh0IiBocmVmPSJtYW51YWwtbnVsbGFyeS10ZXN0LWNhc2UuaHRtbCIgdGl0bGU9Ik1hbnVhbGx5IHJlZ2lzdGVyZWQgbnVsbGFyeSBmdW5jdGlvbiBiYXNlZCB0ZXN0IGNhc2UiPgo8c2NyaXB0IGxhbmd1YWdlPSJKYXZhU2NyaXB0MS4yIiBzcmM9Ii4uLy4uLy4uLy4uL2pzL2Jvb3N0LXRlc3QuanMiPjwvc2NyaXB0Pgo8L2hlYWQ+Cjxib2R5IGJnY29sb3I9IndoaXRlIiB0ZXh0PSJibGFjayIgbGluaz0iIzAwMDBGRiIgdmxpbms9IiM4NDAwODQiIGFsaW5rPSIjMDAwMEZGIj4KPHRhYmxlIHdpZHRoPSIxMDAlIj48dHI+Cjx0ZCB3aWR0aD0iMTAlIj48YSBocmVmPSIuLi8uLi8uLi9pbmRleC5odG1sIj48aW1nIGFsdD0iSG9tZSIgd2lkdGg9IjIyOSIgaGVpZ2h0PSI2MSIgYm9yZGVyPSIwIiBzcmM9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdGVzdC9kb2Nib29rL2ltZy9ib29zdC50ZXN0LmxvZ28ucG5nIj48L2E+PC90ZD4KPHRkIHZhbGlnbj0ibWlkZGxlIiBhbGlnbj0ibGVmdCI+ICZndDsgPGEgaHJlZj0iLi4vLi4vLi4vdXRmLmh0bWwiPlRoZSBVbml0IFRlc3QgRnJhbWV3b3JrPC9hPiAmZ3Q7IDxhIGhyZWY9Ii4uLy4uL3VzZXItZ3VpZGUuaHRtbCI+VXNlcidzIGd1aWRlPC9hPjxhIGhyZWY9Ii4uLy4uL3Rlc3RpbmctdG9vbHMuaHRtbCI+CiAgICAgICZndDsKICAgICAgPC9hPjxhIGhyZWY9Ii4uL3Rlc3Qtb3JnYW5pemF0aW9uLmh0bWwiPlRlc3Qgb3JnYW5pemF0aW9uPC9hPjxhIGhyZWY9Ii4uL2ZpeHR1cmUuaHRtbCI+CiAgICAgICZndDsKICAgICAgPC9hPjxiPk51bGxhcnkgZnVuY3Rpb24gYmFzZWQgdGVzdCBjYXNlPC9iPjxhIGhyZWY9InVuYXJ5LXRlc3QtY2FzZS5odG1sIj4KICAgICAgJmd0OwogICAgICA8L2E+CjwvdGQ+Cjx0ZD48ZGl2IGNsYXNzPSJzcGlyaXQtbmF2Ij4KPGEgaHJlZj0iLi4vdGVzdC1vcmdhbml6YXRpb24uaHRtbCI+PGltZyBzcmM9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2RvYy9odG1sL2ltYWdlcy9wcmV2LnBuZyIgYWx0PSJQcmV2Ij48L2E+PGEgaHJlZj0ibWFudWFsLW51bGxhcnktdGVzdC1jYXNlLmh0bWwiPjxpbWcgc3JjPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kb2MvaHRtbC9pbWFnZXMvbmV4dC5wbmciIGFsdD0iTmV4dCI+PC9hPgo8L2Rpdj48L3RkPgo8L3RyPjwvdGFibGU+Cjxocj4KPGRpdiBjbGFzcz0ic2VjdGlvbiIgbGFuZz0iZW4iPgo8ZGl2IGNsYXNzPSJ0aXRsZXBhZ2UiPjxkaXY+PGRpdj48aDUgY2xhc3M9InRpdGxlIj4KPGEgbmFtZT0idXRmLnVzZXItZ3VpZGUudGVzdC1vcmdhbml6YXRpb24ubnVsbGFyeS10ZXN0LWNhc2UiPjwvYT5OdWxsYXJ5IGZ1bmN0aW9uIGJhc2VkIHRlc3QgY2FzZTwvaDU+PC9kaXY+PC9kaXY+PC9kaXY+CjxwIGNsYXNzPSJmaXJzdC1saW5lLWluZGVudGVkIj4KICAgVGhlIG1vc3Qgd2lkZWx5IHVzZWQgYXJlIHRlc3QgY2FzZXMgYmFzZWQgb24gYSBudWxsYXJ5IGZ1bmN0aW9uLiBUaGVzZSBpbmNsdWRlIG51bGxhcnkgZnJlZSBmdW5jdGlvbnMsIG51bGxhcnkKICAgZnVuY3Rpb24gb2JqZWN0cyBjcmVhdGVkIHdpdGggPGNvZGUgY2xhc3M9ImNvbXB1dGVyb3V0cHV0Ij5ib29zdDo6YmluZDwvY29kZT4gYW5kIG51bGxhcnkgPGNvZGUgY2xhc3M9ImNvbXB1dGVyb3V0cHV0Ij5ib29zdDo6ZnVuY3Rpb248L2NvZGU+CiAgIGluc3RhbmNlcy4gVGhlIHNpbXBsZXN0IGlzIGEgZnJlZSBmdW5jdGlvbiBhbmQgdGhlIDxhY3JvbnltIGNsYXNzPSJhY3JvbnltIj5VVEY8L2Fjcm9ueW0+IHByb3ZpZGVzIGZhY2lsaXRpZXMgdG8gY3JlYXRlIGEgZnJlZSBmdW5jdGlvbiBiYXNlZCB0ZXN0CiAgIGNhc2UgdGhhdCBpcyBhdXRvbWF0aWNhbGx5IHJlZ2lzdGVyZWQuIEhlcmUgYXJlIHRoZSB0d28gY29uc3RydWN0aW9uIGludGVyZmFjZXM6CiAgPC9wPgo8ZGl2IHhtbG5zOnJldj0iaHR0cDovL3d3dy5jcy5ycGkuZWR1L35ncmVnb2QvYm9vc3QvdG9vbHMvZG9jL3JldmlzaW9uIiBjbGFzcz0iaXRlbWl6ZWRsaXN0Ij48dWwgdHlwZT0iZGlzYyI+CjxsaT4KICAgICA8YSBjbGFzcz0ibGluayIgaHJlZj0ibWFudWFsLW51bGxhcnktdGVzdC1jYXNlLmh0bWwiIHRpdGxlPSJNYW51YWxseSByZWdpc3RlcmVkIG51bGxhcnkgZnVuY3Rpb24gYmFzZWQgdGVzdCBjYXNlIj5NYW51YWxseSByZWdpc3RlcmVkIHRlc3QgY2FzZTwvYT4KICAgIDwvbGk+CjxsaT4KICAgICA8YSBjbGFzcz0ibGluayIgaHJlZj0iYXV0by1udWxsYXJ5LXRlc3QtY2FzZS5odG1sIiB0aXRsZT0iTnVsbGFyeSBmdW5jdGlvbiBiYXNlZCB0ZXN0IGNhc2Ugd2l0aCBhdXRvbWF0ZWQgcmVnaXN0cmF0aW9uIj5UZXN0IGNhc2Ugd2l0aCBhdXRvbWF0ZWQgcmVnaXN0cmF0aW9uPC9hPgogICAgPC9saT4KPC91bD48L2Rpdj4KPC9kaXY+Cjx0YWJsZSB4bWxuczpyZXY9Imh0dHA6Ly93d3cuY3MucnBpLmVkdS9+Z3JlZ29kL2Jvb3N0L3Rvb2xzL2RvYy9yZXZpc2lvbiIgd2lkdGg9IjEwMCUiPjx0cj4KPHRkIGFsaWduPSJsZWZ0Ij48L3RkPgo8dGQgYWxpZ249InJpZ2h0Ij48ZGl2IGNsYXNzPSJjb3B5cmlnaHQtZm9vdGVyIj5Db3B5cmlnaHQgqSAyMDAxLTIwMDcgR2VubmFkaXkgUm96ZW50YWw8L2Rpdj48L3RkPgo8L3RyPjwvdGFibGU+Cjxocj4KPGRpdiBjbGFzcz0ic3Bpcml0LW5hdiI+CjxhIGFjY2Vzc2tleT0icCIgaHJlZj0iLi4vdGVzdC1vcmdhbml6YXRpb24uaHRtbCI+PGltZyBzcmM9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2RvYy9odG1sL2ltYWdlcy9wcmV2LnBuZyIgYWx0PSJQcmV2Ij48L2E+PGEgYWNjZXNza2V5PSJ1IiBocmVmPSIuLi90ZXN0LW9yZ2FuaXphdGlvbi5odG1sIj48aW1nIHNyYz0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vZG9jL2h0bWwvaW1hZ2VzL3VwLnBuZyIgYWx0PSJVcCI+PC9hPjxhIGFjY2Vzc2tleT0iaCIgaHJlZj0iLi4vLi4vLi4vaW5kZXguaHRtbCI+PGltZyBzcmM9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2RvYy9odG1sL2ltYWdlcy9ob21lLnBuZyIgYWx0PSJIb21lIj48L2E+PGEgYWNjZXNza2V5PSJuIiBocmVmPSJtYW51YWwtbnVsbGFyeS10ZXN0LWNhc2UuaHRtbCI+PGltZyBzcmM9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2RvYy9odG1sL2ltYWdlcy9uZXh0LnBuZyIgYWx0PSJOZXh0Ij48L2E+CjwvZGl2Pgo8L2JvZHk+CjwvaHRtbD4K