PGh0bWw+CjxoZWFkPgo8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1JU08tODg1OS0xIj4KPHRpdGxlPlN0YW5kYWxvbmUgbGlicmFyeSBjb21waWxhdGlvbjwvdGl0bGU+CjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4vc3R5bGUvc3R5bGUuY3NzIiB0eXBlPSJ0ZXh0L2NzcyI+CjxtZXRhIG5hbWU9ImdlbmVyYXRvciIgY29udGVudD0iRG9jQm9vayBYU0wgU3R5bGVzaGVldHMgVjEuNzQuMCI+CjxsaW5rIHJlbD0iaG9tZSIgaHJlZj0iLi4vLi4vaW5kZXguaHRtbCIgdGl0bGU9IkJvb3N0IFRlc3QgTGlicmFyeSI+CjxsaW5rIHJlbD0idXAiIGhyZWY9Ii4uL2NvbXBpbGF0aW9uLmh0bWwiIHRpdGxlPSJUaGUgVVRGIGNvbXBpbGF0aW9uIHZhcmlhbnRzIGFuZCBwcm9jZWR1cmVzIj4KPGxpbmsgcmVsPSJwcmV2IiBocmVmPSIuLi9jb21waWxhdGlvbi5odG1sIiB0aXRsZT0iVGhlIFVURiBjb21waWxhdGlvbiB2YXJpYW50cyBhbmQgcHJvY2VkdXJlcyI+CjxsaW5rIHJlbD0ibmV4dCIgaHJlZj0iYXV0by1saW5raW5nLmh0bWwiIHRpdGxlPSJTdXBwb3J0IG9mIHRoZSBhdXRvLWxpbmtpbmcgZmVhdHVyZSI+CjxzY3JpcHQgbGFuZ3VhZ2U9IkphdmFTY3JpcHQxLjIiIHNyYz0iLi4vLi4vLi4vanMvYm9vc3QtdGVzdC5qcyI+PC9zY3JpcHQ+CjwvaGVhZD4KPGJvZHkgYmdjb2xvcj0id2hpdGUiIHRleHQ9ImJsYWNrIiBsaW5rPSIjMDAwMEZGIiB2bGluaz0iIzg0MDA4NCIgYWxpbms9IiMwMDAwRkYiPgo8dGFibGUgd2lkdGg9IjEwMCUiPjx0cj4KPHRkIHdpZHRoPSIxMCUiPjxhIGhyZWY9Ii4uLy4uL2luZGV4Lmh0bWwiPjxpbWcgYWx0PSJIb21lIiB3aWR0aD0iMjI5IiBoZWlnaHQ9IjYxIiBib3JkZXI9IjAiIHNyYz0iLi4vLi4vLi4vLi4vLi4vLi4vbGlicy90ZXN0L2RvY2Jvb2svaW1nL2Jvb3N0LnRlc3QubG9nby5wbmciPjwvYT48L3RkPgo8dGQgdmFsaWduPSJtaWRkbGUiIGFsaWduPSJsZWZ0Ij4gJmd0OyA8YSBocmVmPSIuLi8uLi91dGYuaHRtbCI+VGhlIFVuaXQgVGVzdCBGcmFtZXdvcms8L2E+ICZndDsgPGEgaHJlZj0iLi4vY29tcGlsYXRpb24uaHRtbCI+Q29tcGlsYXRpb248L2E+PGEgaHJlZj0iLi4vdXNlci1ndWlkZS5odG1sIj4KICAgICAgJmd0OwogICAgICA8L2E+PGI+U3RhbmRhbG9uZSBsaWJyYXJ5IGNvbXBpbGF0aW9uPC9iPgo8L3RkPgo8dGQ+PGRpdiBjbGFzcz0ic3Bpcml0LW5hdiI+CjxhIGhyZWY9Ii4uL2NvbXBpbGF0aW9uLmh0bWwiPjxpbWcgc3JjPSIuLi8uLi8uLi8uLi8uLi8uLi9kb2MvaHRtbC9pbWFnZXMvcHJldi5wbmciIGFsdD0iUHJldiI+PC9hPjxhIGhyZWY9ImF1dG8tbGlua2luZy5odG1sIj48aW1nIHNyYz0iLi4vLi4vLi4vLi4vLi4vLi4vZG9jL2h0bWwvaW1hZ2VzL25leHQucG5nIiBhbHQ9Ik5leHQiPjwvYT4KPC9kaXY+PC90ZD4KPC90cj48L3RhYmxlPgo8aHI+CjxkaXYgY2xhc3M9InNlY3Rpb24iIGxhbmc9ImVuIj4KPGRpdiBjbGFzcz0idGl0bGVwYWdlIj48ZGl2PjxkaXY+PGg0IGNsYXNzPSJ0aXRsZSI+CjxhIG5hbWU9InV0Zi5jb21waWxhdGlvbi5zdGFuZGFsb25lIj48L2E+U3RhbmRhbG9uZSBsaWJyYXJ5IGNvbXBpbGF0aW9uPC9oND48L2Rpdj48L2Rpdj48L2Rpdj4KPHAgY2xhc3M9ImZpcnN0LWxpbmUtaW5kZW50ZWQiPgogICAgSWYgeW91IG9wdGVkIHRvIGxpbmsgeW91ciBwcm9ncmFtIHdpdGggdGhlIHN0YW5kYWxvbmUgbGlicmFyeSwgeW91IG5lZWQgdG8gYnVpbGQgaXQgZmlyc3QuIFRvIGJ1aWxkIGEgc3RhbmRhbG9uZSAKICAgIGxpYnJhcnkgdGhlIGFsbCBDKysgZmlsZXMgKC5jcHApLCB0aGF0IGNvbnN0aXR1dGUgPGFjcm9ueW0gY2xhc3M9ImFjcm9ueW0iPlVURjwvYWNyb255bT4gPGEgY2xhc3M9ImxpbmsiIGhyZWY9Ii4uLy4uL3ByZy1leGVjLW1vbml0b3IvaW1wbC5odG1sIiB0aXRsZT0iVGhlIFByb2dyYW0gRXhlY3V0aW9uIE1vbml0b3IgaW1wbGVtZW50YXRpb24iPmltcGxlbWVudGF0aW9uPC9hPiBuZWVkIHRvIGJlIAogICAgbGlzdGVkIGFzIHNvdXJjZSBmaWxlcyBpbiB5b3VyIG1ha2VmaWxlPHN1cD5bPGEgbmFtZT0iaWQ2NDYxMTEiIGhyZWY9IiNmdG4uaWQ2NDYxMTEiIGNsYXNzPSJmb290bm90ZSI+MzwvYT5dPC9zdXA+LgogICA8L3A+CjxwIGNsYXNzPSJmaXJzdC1saW5lLWluZGVudGVkIj4KICAgIFRoZSBKYW1maWxlIGZvciB1c2Ugd2l0aCBCb29zdC5CdWlsZCBzeXN0ZW0gaXMgc3VwcGxpZWQgaW4gPGNvZGUgY2xhc3M9ImZpbGVuYW1lIj5saWJzL3Rlc3QvYnVpbGQ8L2NvZGU+CiAgICBkaXJlY3RvcnkuIFRoZSA8YWNyb255bSBjbGFzcz0iYWNyb255bSI+VVRGPC9hY3JvbnltPiBjYW4gYmUgYnVpbHQgYXMgZWl0aGVyIDxhIG5hbWU9InByZy1leGVjLW1vbml0b3IuY29tcGlsYXRpb24uc3RhbmRhbG9uZS5zdGF0aWMiPjwvYT5zdGF0aWMgCiAgICBvciA8YSBuYW1lPSJwcmctZXhlYy1tb25pdG9yLmNvbXBpbGF0aW9uLnN0YW5kYWxvbmUuZHluYW1pYyI+PC9hPmR5bmFtaWMgbGlicmFyeS4KICAgPC9wPgo8ZGl2IGNsYXNzPSJzZWN0aW9uIiBsYW5nPSJlbiI+CjxkaXYgY2xhc3M9InRpdGxlcGFnZSI+PGRpdj48ZGl2PjxoNSBjbGFzcz0idGl0bGUiPgo8YSBuYW1lPSJ1dGYuY29tcGlsYXRpb24uc3RhbmRhbG9uZS5zdGF0aWMiPjwvYT5TdGF0aWMgbGlicmFyeSBjb21waWxhdGlvbjwvaDU+PC9kaXY+PC9kaXY+PC9kaXY+CjxwIGNsYXNzPSJmaXJzdC1saW5lLWluZGVudGVkIj4KICAgICBObyBzcGVjaWFsIGJ1aWxkIG9wdGlvbnMgb3IgbWFjcm8gZGVmaW5pdGlvbnMgYXJlIHJlcXVpcmVkIHRvIGJ1aWxkIHRoZSBzdGF0aWMgbGlicmFyeS4gVXNpbmcgdGhlIEJvb3N0LkJ1aWxkCiAgICAgc3lzdGVtIHlvdSBjYW4gYnVpbGQgdGhlIHN0YXRpYyBsaWJyYXJ5IHdpdGggdGhlIGZvbGxvd2luZyBjb21tYW5kIGZyb20KICAgICA8Y29kZSBjbGFzcz0iZmlsZW5hbWUiPmxpYnMvdGVzdC9idWlsZDwvY29kZT4gZGlyZWN0b3J5OgogICAgPC9wPgo8ZGl2IGNsYXNzPSJjbWRzeW5vcHNpcyI+PHA+PGNvZGUgY2xhc3M9ImNvbW1hbmQiPmJqYW08L2NvZGU+ICBbLXNUT09MUz0mbHQ7eW91ci10b29sLW5hbWUmZ3Q7XSB7LXNCVUlMRD1ib29zdF91bml0X3Rlc3RfZnJhbWV3b3JrfTwvcD48L2Rpdj4KPHAgY2xhc3M9ImZpcnN0LWxpbmUtaW5kZW50ZWQiPgogICAgIEFsc28gb24gV2luZG93cyB5b3UgY2FuIHVzZSB0aGUgTWljcm9zb2Z0IFZpc3VhbCBTdHVkaW8gLk5FVCBwcm9qZWN0IGZpbGUgcHJvdmlkZWQuCiAgICA8L3A+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJzZWN0aW9uIiBsYW5nPSJlbiI+CjxkaXYgY2xhc3M9InRpdGxlcGFnZSI+PGRpdj48ZGl2PjxoNSBjbGFzcz0idGl0bGUiPgo8YSBuYW1lPSJ1dGYuY29tcGlsYXRpb24uc3RhbmRhbG9uZS5keW5hbWljIj48L2E+RHluYW1pYyBsaWJyYXJ5IGNvbXBpbGF0aW9uPC9oNT48L2Rpdj48L2Rpdj48L2Rpdj4KPHAgY2xhc3M9ImZpcnN0LWxpbmUtaW5kZW50ZWQiPgogICAgIFRvIGJ1aWxkIHRoZSBkeW5hbWljIGxpYnJhcnk8c3VwPls8YSBuYW1lPSJpZDY0NjI2MiIgaHJlZj0iI2Z0bi5pZDY0NjI2MiIgY2xhc3M9ImZvb3Rub3RlIj40PC9hPl08L3N1cD4geW91IAogICAgIG5lZWQgdG8gYWRkIDxhIGNsYXNzPSJ4cmVmIiBocmVmPSIuLi9jb21waWxhdGlvbi5odG1sI3V0Zi5mbGFnLmR5bi1saW5rIj5CT09TVF9URVNUX0RZTl9MSU5LPC9hPiB0byB0aGUgbGlzdCBvZiBtYWNybyBkZWZpbml0aW9ucyBpbiB0aGUgCiAgICAgbWFrZWZpbGUuIFVzaW5nIHRoZSBCb29zdC5CdWlsZCBzeXN0ZW0geW91IGNhbiBidWlsZCB0aGUgZHluYW1pYyBsaWJyYXJ5IHdpdGggdGhlIGZvbGxvd2luZyBjb21tYW5kIGZyb20KICAgICA8Y29kZSBjbGFzcz0iZmlsZW5hbWUiPmxpYnMvdGVzdC9idWlsZDwvY29kZT4gZGlyZWN0b3J5OgogICAgPC9wPgo8ZGl2IGNsYXNzPSJjbWRzeW5vcHNpcyI+PHA+PGNvZGUgY2xhc3M9ImNvbW1hbmQiPmJqYW08L2NvZGU+ICBbLXNUT09MUz0mbHQ7eW91ci10b29sLW5hbWUmZ3Q7XSB7LXNCVUlMRD1ib29zdF91bml0X3Rlc3RfZnJhbWV3b3JrfTwvcD48L2Rpdj4KPHAgY2xhc3M9ImZpcnN0LWxpbmUtaW5kZW50ZWQiPgogICAgIEFsc28gb24gV2luZG93cyB5b3UgY2FuIHVzZSB0aGUgTWljcm9zb2Z0IFZpc3VhbCBTdHVkaW8gLk5FVCBwcm9qZWN0IGZpbGUgcHJvdmlkZWQuCiAgICA8L3A+CjxkaXYgY2xhc3M9ImltcG9ydGFudCI+PHRhYmxlIGJvcmRlcj0iMCIgc3VtbWFyeT0iSW1wb3J0YW50Ij4KPHRyPgo8dGQgcm93c3Bhbj0iMiIgYWxpZ249ImNlbnRlciIgdmFsaWduPSJ0b3AiIHdpZHRoPSIyNSI+PGltZyBhbHQ9IltJbXBvcnRhbnRdIiBzcmM9Ii4uLy4uLy4uLy4uLy4uLy4uL2RvYy9odG1sL2ltYWdlcy9pbXBvcnRhbnQucG5nIj48L3RkPgo8dGggYWxpZ249ImxlZnQiPkltcG9ydGFudDwvdGg+CjwvdHI+Cjx0cj48dGQgYWxpZ249ImxlZnQiIHZhbGlnbj0idG9wIj48cD4KICAgICAgRm9yIHRlc3QgbW9kdWxlIHRvIHN1Y2Nlc3NmdWxseSBsaW5rIHdpdGggdGhlIGR5bmFtaWMgbGlicmFyeSB0aGUgZmxhZwogICAgICA8YSBjbGFzcz0ieHJlZiIgaHJlZj0iLi4vY29tcGlsYXRpb24uaHRtbCN1dGYuZmxhZy5keW4tbGluayI+Qk9PU1RfVEVTVF9EWU5fTElOSzwvYT4gbmVlZHMgdG8gYmUgZGVmaW5lZCBib3RoIGR1cmluZyBkeW5hbWljIGxpYnJhcnkgYnVpbGQKICAgICAgYW5kIGR1cmluZyB0ZXN0IG1vZHVsZSBjb21waWxhdGlvbi4KICAgICA8L3A+PC90ZD48L3RyPgo8L3RhYmxlPjwvZGl2Pgo8L2Rpdj4KPGRpdiBjbGFzcz0iZm9vdG5vdGVzIj4KPGJyPjxociB3aWR0aD0iMTAwIiBhbGlnbj0ibGVmdCI+CjxkaXYgY2xhc3M9ImZvb3Rub3RlIj48cD48c3VwPls8YSBuYW1lPSJmdG4uaWQ2NDYxMTEiIGhyZWY9IiNpZDY0NjExMSIgY2xhc3M9InNpbXBhcmEiPjM8L2E+XSA8L3N1cD5UaGVyZSBhcmUgdmFyaWV0aWVzIG9mIG1ha2Ugc3lzdGVtcyB0aGF0IGNhbiBiZSB1c2VkLiBUbyBuYW1lIAogICAgYSBmZXc6IDxhY3JvbnltIGNsYXNzPSJhY3JvbnltIj5HTlU8L2Fjcm9ueW0+IG1ha2UgKGFuZCBvdGhlciBtYWtlIGNsb25lcykgYW5kIGJ1aWxkIHN5c3RlbXMgaW50ZWdyYXRlZCBpbnRvIDxhY3JvbnltIGNsYXNzPSJhY3JvbnltIj5JREU8L2Fjcm9ueW0+cwogICAgKGZvciAgZXhhbXBsZSBNaWNyb3NvZnQgIFZpc3VhbCBTdHVkaW8pLiBUaGUgQm9vc3QgcHJlZmVycmVkIHNvbHV0aW9uIGlzIEJvb3N0LkJ1aWxkIHN5c3RlbSB0aGF0IGlzIGJhc2VkIG9uIHRvcCBvZiAKICAgIGJqYW0gIHRvb2wuIE1ha2UgIHN5c3RlbXMgcmVxdWlyZSBzb21lIGtpbmQgb2YgY29uZmlndXJhdGlvbiBmaWxlIHRoYXQgbGlzdHMgYWxsIGZpbGVzIHRoYXQgY29uc3RpdHV0ZSB0aGUgbGlicmFyeSAKICAgIGFuZCBhbGwgYnVpbGQgIG9wdGlvbnMuIEZvciBleGFtcGxlIHRoZSBtYWtlZmlsZSB0aGF0IGlzIHVzZWQgYnkgbWFrZSwgb3IgdGhlIE1pY3Jvc29mdCBWaXN1YWwgU3R1ZGlvIHByb2plY3QgZmlsZSwgCiAgICBKYW1maWxlIGlzICB1c2VkIGJ5IEJvb3N0LkJ1aWxkLiBGb3IgdGhlIHNha2Ugb2Ygc2ltcGxpY2l0eSBsZXQncyBjYWxsIHRoaXMgZmlsZSB0aGUgbWFrZWZpbGUuPC9wPjwvZGl2Pgo8ZGl2IGNsYXNzPSJmb290bm90ZSI+PHA+PHN1cD5bPGEgbmFtZT0iZnRuLmlkNjQ2MjYyIiBocmVmPSIjaWQ2NDYyNjIiIGNsYXNzPSJzaW1wYXJhIj40PC9hPl0gPC9zdXA+V2hhdCBpcyBtZWFudCBieSB0aGUgdGVybSBkeW5hbWljIGxpYnJhcnkgaXMgYSA8ZW0gY2xhc3M9ImZpcnN0dGVybSI+ZHluYW1pY2FsbHkgCiAgICAgbG9hZGVkIGxpYnJhcnk8L2VtPiwgYWx0ZXJuYXRpdmVseSBjYWxsZWQgYSA8ZW0gY2xhc3M9ImZpcnN0dGVybSI+c2hhcmVkIGxpYnJhcnk8L2VtPi48L3A+PC9kaXY+CjwvZGl2Pgo8L2Rpdj4KPHRhYmxlIHhtbG5zOnJldj0iaHR0cDovL3d3dy5jcy5ycGkuZWR1L35ncmVnb2QvYm9vc3QvdG9vbHMvZG9jL3JldmlzaW9uIiB3aWR0aD0iMTAwJSI+PHRyPgo8dGQgYWxpZ249ImxlZnQiPjwvdGQ+Cjx0ZCBhbGlnbj0icmlnaHQiPjxkaXYgY2xhc3M9ImNvcHlyaWdodC1mb290ZXIiPkNvcHlyaWdodCCpIDIwMDEtMjAwNyBHZW5uYWRpeSBSb3plbnRhbDwvZGl2PjwvdGQ+CjwvdHI+PC90YWJsZT4KPGhyPgo8ZGl2IGNsYXNzPSJzcGlyaXQtbmF2Ij4KPGEgYWNjZXNza2V5PSJwIiBocmVmPSIuLi9jb21waWxhdGlvbi5odG1sIj48aW1nIHNyYz0iLi4vLi4vLi4vLi4vLi4vLi4vZG9jL2h0bWwvaW1hZ2VzL3ByZXYucG5nIiBhbHQ9IlByZXYiPjwvYT48YSBhY2Nlc3NrZXk9InUiIGhyZWY9Ii4uL2NvbXBpbGF0aW9uLmh0bWwiPjxpbWcgc3JjPSIuLi8uLi8uLi8uLi8uLi8uLi9kb2MvaHRtbC9pbWFnZXMvdXAucG5nIiBhbHQ9IlVwIj48L2E+PGEgYWNjZXNza2V5PSJoIiBocmVmPSIuLi8uLi9pbmRleC5odG1sIj48aW1nIHNyYz0iLi4vLi4vLi4vLi4vLi4vLi4vZG9jL2h0bWwvaW1hZ2VzL2hvbWUucG5nIiBhbHQ9IkhvbWUiPjwvYT48YSBhY2Nlc3NrZXk9Im4iIGhyZWY9ImF1dG8tbGlua2luZy5odG1sIj48aW1nIHNyYz0iLi4vLi4vLi4vLi4vLi4vLi4vZG9jL2h0bWwvaW1hZ2VzL25leHQucG5nIiBhbHQ9Ik5leHQiPjwvYT4KPC9kaXY+CjwvYm9keT4KPC9odG1sPgo=