PCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXRyYW5zaXRpb25hbC5kdGQiPjxodG1sPjxoZWFkPjx0aXRsZT5BcGFjaGUgQXhpczIvQyAtIEFwYWNoZSBBeGlzMi9DIC0gVGhlIFdlYiBTZXJ2aWNlcyBFbmdpbmU8L3RpdGxlPjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyIgbWVkaWE9ImFsbCI+CiAgICAgICAgICBAaW1wb3J0IHVybCgiLi9zdHlsZS9tYXZlbi1iYXNlLmNzcyIpOwogICAgICAgICAgCgkJCSAgICBAaW1wb3J0IHVybCgiLi9zdHlsZS9tYXZlbi1jbGFzc2ljLmNzcyIpOzwvc3R5bGU+PGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuL3N0eWxlL3ByaW50LmNzcyIgdHlwZT0idGV4dC9jc3MiIG1lZGlhPSJwcmludCI+PC9saW5rPjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PUlTTy04ODU5LTEiPjwvbWV0YT48L2hlYWQ+PGJvZHkgY2xhc3M9ImNvbXBvc2l0ZSI+PGRpdiBpZD0iYmFubmVyIj48YSBocmVmPSJodHRwOi8vd3d3LmFwYWNoZS5vcmcvIiBpZD0ib3JnYW5pemF0aW9uTG9nbyI+PGltZyBhbHQ9IkFwYWNoZSBTb2Z0d2FyZSBGb3VuZGF0aW9uIiBzcmM9Imh0dHA6Ly93d3cuYXBhY2hlLm9yZy9pbWFnZXMvYXNmLWxvZ28uZ2lmIj48L2ltZz48L2E+PGEgaHJlZj0iaHR0cDovL3dzLmFwYWNoZS5vcmcvYXhpczIvYyIgaWQ9InByb2plY3RMb2dvIj48aW1nIGFsdD0iQXBhY2hlIEF4aXMyL0MiIHNyYz0iaHR0cDovL3dzLmFwYWNoZS5vcmcvYXhpczIvaW1hZ2VzL2F4aXMuanBnIj48L2ltZz48L2E+PGRpdiBjbGFzcz0iY2xlYXIiPjxocj48L2hyPjwvZGl2PjwvZGl2PjxkaXYgaWQ9ImJyZWFkY3J1bWJzIj48ZGl2IGNsYXNzPSJ4bGVmdCI+CiAgICAgICAgICAgICAgICAJTGFzdCBwdWJsaXNoZWQ6IDE3IEFwcmlsIDIwMDkKICAgICAgICAgICAgICAgICAgfCBEb2MgZm9yIDEuNi4wPC9kaXY+PGRpdiBjbGFzcz0ieHJpZ2h0Ij48L2Rpdj48ZGl2IGNsYXNzPSJjbGVhciI+PGhyPjwvaHI+PC9kaXY+PC9kaXY+PGRpdiBpZD0ibGVmdENvbHVtbiI+PGRpdiBpZD0ibmF2Y29sdW1uIj48ZGl2IGlkPSJtZW51QXBhY2hlX0F4aXMyX0MiPjxoNT5BcGFjaGUgQXhpczIvQzwvaDU+PHVsPjxsaSBjbGFzcz0ibm9uZSI+PGEgaHJlZj0iaW5kZXguaHRtbCI+QXBhY2hlIEF4aXMyL0MgSG9tZTwvYT48L2xpPjxsaSBjbGFzcz0iZXhwYW5kZWQiPjxhIGhyZWY9Imh0dHA6Ly93cy5hcGFjaGUub3JnL2F4aXMyL2MvZG93bmxvYWQuY2dpIiBjbGFzcz0iZXh0ZXJuYWxMaW5rIiB0aXRsZT0iRXh0ZXJuYWwgTGluayI+RG93bmxvYWQgQXhpczIvQzwvYT48dWw+PGxpIGNsYXNzPSJub25lIj48YSBocmVmPSJodHRwOi8vd3MuYXBhY2hlLm9yZy9heGlzMi9jL2Rvd25sb2FkLmNnaSIgY2xhc3M9ImV4dGVybmFsTGluayIgdGl0bGU9IkV4dGVybmFsIExpbmsiPlJlbGVhc2VzPC9hPjwvbGk+PC91bD48L2xpPjxsaSBjbGFzcz0iZXhwYW5kZWQiPjxhIGhyZWY9ImRvY3MvaW5kZXguaHRtbCI+RG9jdW1lbnRhdGlvbjwvYT48dWw+PGxpIGNsYXNzPSJub25lIj48YSBocmVmPSJkb2NzL2luc3RhbGxhdGlvbmd1aWRlLmh0bWwiPkluc3RhbGxhdGlvbiBHdWlkZTwvYT48L2xpPjxsaSBjbGFzcz0ibm9uZSI+PGEgaHJlZj0iZG9jcy9heGlzMmNfbWFudWFsLmh0bWwiPkF4aXMyL0MgbWFudWFsPC9hPjwvbGk+PGxpIGNsYXNzPSJub25lIj48YSBocmVmPSJkb2NzL2ZhcS5odG1sIj5BeGlzMi9DIEZBUTwvYT48L2xpPjwvdWw+PC9saT48bGkgY2xhc3M9ImV4cGFuZGVkIj48YSBocmVmPSJsaXN0c19pc3N1ZXMuaHRtbCI+R2V0IEludm9sdmVkPC9hPjx1bD48bGkgY2xhc3M9Im5vbmUiPjxhIGhyZWY9Imxpc3RzX2lzc3Vlcy5odG1sIj5NYWlsaW5nIExpc3RzICZhbXA7IElzc3VlIFRyYWNraW5nPC9hPjwvbGk+PGxpIGNsYXNzPSJub25lIj48YSBocmVmPSJzdm4uaHRtbCI+Q2hlY2tvdXQgU291cmNlIENvZGU8L2E+PC9saT48L3VsPjwvbGk+PGxpIGNsYXNzPSJleHBhbmRlZCI+PGEgaHJlZj0iY29kaW5nX2NvbnZlbnRpb25zLmh0bWwiPkRldmVsb3BlciBHdWlkZWxpbmVzPC9hPjx1bD48bGkgY2xhc3M9Im5vbmUiPjxhIGhyZWY9ImNvZGluZ19jb252ZW50aW9ucy5odG1sIj5Db2RpbmcgQ29udmVudGlvbjwvYT48L2xpPjxsaSBjbGFzcz0ibm9uZSI+PGEgaHJlZj0idmVyc2lvbmluZy5odG1sIj5WZXJzaW9ubmluZzwvYT48L2xpPjwvdWw+PC9saT48bGkgY2xhc3M9ImV4cGFuZGVkIj48YSBocmVmPSJ0ZWFtLWxpc3QuaHRtbCI+UHJvamVjdCBJbmZvcm1hdGlvbjwvYT48dWw+PGxpIGNsYXNzPSJub25lIj48YSBocmVmPSJ0ZWFtLWxpc3QuaHRtbCI+UHJvamVjdCBUZWFtPC9hPjwvbGk+PGxpIGNsYXNzPSJub25lIj48YSBocmVmPSJodHRwOi8vc3ZuLmFwYWNoZS5vcmcvdmlld3ZjL2F4aXMvYXhpczIvYy9jb3JlL3RydW5rLyIgY2xhc3M9ImV4dGVybmFsTGluayIgdGl0bGU9IkV4dGVybmFsIExpbmsiPlNvdXJjZSBDb2RlPC9hPjwvbGk+PC91bD48L2xpPjwvdWw+PC9kaXY+PGEgaHJlZj0iaHR0cDovL21hdmVuLmFwYWNoZS5vcmcvIiB0aXRsZT0iQnVpbHQgYnkgTWF2ZW4iIGlkPSJwb3dlcmVkQnkiPjxpbWcgYWx0PSJCdWlsdCBieSBNYXZlbiIgc3JjPSIuL2ltYWdlcy9sb2dvcy9tYXZlbi1idXR0b24tMS5wbmciPjwvaW1nPjwvYT48L2Rpdj48L2Rpdj48ZGl2IGlkPSJib2R5Q29sdW1uIj48ZGl2IGNsYXNzPSJjb250ZW50Qm94Ij48ZGl2IGNsYXNzPSJzZWN0aW9uIj48YSBuYW1lPSJXZWxjb21lX3RvX0FwYWNoZV9BeGlzMl9DIj48L2E+PGgyPldlbGNvbWUgdG8gQXBhY2hlIEF4aXMyL0M8L2gyPjxwPkFwYWNoZSBBeGlzMi9DIGlzIGEgV2ViIHNlcnZpY2VzIGVuZ2luZSBpbXBsZW1lbnRlZCBpbiB0aGUgQyBwcm9ncmFtbWluZyBsYW5ndWFnZS4gSXQgaXMgYmFzZWQgb24gdGhlIGV4dGVuc2libGUgYW5kIGZsZXhpYmxlIDxhIGhyZWY9Imh0dHA6Ly93cy5hcGFjaGUub3JnL2F4aXMyLzFfMi9BeGlzMkFyY2hpdGVjdHVyZUd1aWRlLmh0bWwiIGNsYXNzPSJleHRlcm5hbExpbmsiIHRpdGxlPSJFeHRlcm5hbCBMaW5rIj5BeGlzMiBhcmNoaXRlY3R1cmU8L2E+LiBBcGFjaGUgQXhpczIvQyBjYW4gYmUgdXNlZCB0byBwcm92aWRlIGFuZCBjb25zdW1lIFdlYlNlcnZpY2VzLiBJdCBoYXMgYmVlbiBpbXBsZW1lbnRlZCB3aXRoIHBvcnRhYmlsaXR5IGFuZCBhYmlsaXR5IHRvIGVtYmVkIGluIG1pbmQsIGhlbmNlIGNvdWxkIGJlIHVzZWQgYXMgYSBXZWIgc2VydmljZXMgZW5hYmxlciBpbiBvdGhlciBzb2Z0d2FyZS48L3A+PHA+QXBhY2hlIEF4aXMyL0Mgc3VwcG9ydHMgPGEgaHJlZj0iaHR0cDovL3d3dy53My5vcmcvVFIvMjAwMC9OT1RFLVNPQVAtMjAwMDA1MDgvIiBjbGFzcz0iZXh0ZXJuYWxMaW5rIiB0aXRsZT0iRXh0ZXJuYWwgTGluayI+U09BUCAxLjE8L2E+IGFuZCA8YSBocmVmPSJodHRwOi8vd3d3LnczLm9yZy9UUi9zb2FwMTItcGFydDEvIiBjbGFzcz0iZXh0ZXJuYWxMaW5rIiB0aXRsZT0iRXh0ZXJuYWwgTGluayI+U09BUCAxLjI8L2E+LCBhcyB3ZWxsIGFzIDxhIGhyZWY9Imh0dHA6Ly93d3cueGZyb250LmNvbS9SRVNULVdlYi1TZXJ2aWNlcy5odG1sIiBjbGFzcz0iZXh0ZXJuYWxMaW5rIiB0aXRsZT0iRXh0ZXJuYWwgTGluayI+UkVTVDwvYT4gc3R5bGUgb2YgV2Vic2VydmljZXMuIEEgc2luZ2xlIHNlcnZpY2UgY291bGQgYmUgZXhwb3NlZCBib3RoIGFzIGEgU09BUCBzdHlsZSBhcyB3ZWxsIGFzIGEgUkVTVCBzdHlsZSBzZXJ2aWNlIHNpbXVsdGFuZW91c2x5LiBJdCBhbHNvIGhhcyBidWlsdCBpbiA8YSBocmVmPSJodHRwOi8vd3d3LnczLm9yZy9UUi9zb2FwMTItbXRvbS8iIGNsYXNzPSJleHRlcm5hbExpbmsiIHRpdGxlPSJFeHRlcm5hbCBMaW5rIj5NVE9NPC9hPiBzdXBwb3J0LCB0aGF0IGNhbiBiZSB1c2VkIHRvIGV4Y2hhbmdlIGJpbmFyeSBkYXRhLjwvcD48cD5BcGFjaGUgQXhpczIvQyBpcyBlZmZpY2llbnQsIG1vZHVsYXIgYW5kIGlzIGRlc2lnbmVkIHdpdGggZXh0ZW5zaWJpbGl0eS4gVGhlIGV4dGVuc2libGUgZGVzaWduIGFsbG93cyBpdCB0byBzdXBwb3J0IHRoZSBmdWxsIFdTLSogc3RhY2sgd2l0aCB0aGUgY29uY2VwdCBvZiBtb2R1bGVzLiBBcGFjaGUgQXhpczIvQyBpcyB0aGUgV2ViIHNlcnZpY2VzIGVuZ2luZSB0aGF0IHN1cHBvcnRzIHRoZSBtb3N0IG51bWJlciBvZiBXUy0qIHNwZWNpZmljYXRpb24gaW1wbGVtZW50YXRpb25zIGluIEMsIHdpdGggZ3VhcmFudGVlZCBpbnRlcm9wZXJhYmlsaXR5LiBUaGlzIGVuYWJsZXMgdXNpbmcgQyBpbiBTZXJ2aWNlIE9yaWVudGVkIEFyY2hpdGVjdHVyZSAoU09BKSBpbXBsZW1lbnRhdGlvbnMsIGFuZCB3b3VsZCBiZSB2ZXJ5IHVzZWZ1bCB3aGVuIGludGVncmF0aW5nIGxlZ2FjeSBzeXN0ZW1zIGludG8gU09BLgogICAgICA8YnI+PC9icj4KICAgICAgVGhlIGZvbGxvd2luZyBXUy0qIHNwZWNpZmljYXRpb25zIGFyZSBzdXBwb3J0ZWQsIGVpdGhlciBhcyBidWlsdCBpbiBtb2R1bGVzCiAgICAgIG9yIGFzIHNlcGFyYXRlIEFwYWNoZSBwcm9qZWN0czogPC9wPjx1bD4KICAgICAgPGxpPjxhIGhyZWY9Imh0dHA6Ly93d3cudzMub3JnL1N1Ym1pc3Npb24vd3MtYWRkcmVzc2luZy8iIGNsYXNzPSJleHRlcm5hbExpbmsiIHRpdGxlPSJFeHRlcm5hbCBMaW5rIj5XUy1BZGRyZXNzaW5nPC9hPiAtIEJ1aWx0IGluIHRvIEF4aXMyL0MgPC9saT4KICAgICAgPGxpPjxhIGhyZWY9Imh0dHA6Ly93d3cudzMub3JnL1N1Ym1pc3Npb24vV1MtUG9saWN5LyIgY2xhc3M9ImV4dGVybmFsTGluayIgdGl0bGU9IkV4dGVybmFsIExpbmsiPldTLVBvbGljeTwvYT4gLSBCdWlsdCBpbiB0byBBeGlzMi9DIDwvbGk+CiAgICAgIDxsaT48YSBocmVmPSJodHRwOi8vd3d3Lm9hc2lzLW9wZW4ub3JnL2NvbW1pdHRlZXMvdGNfaG9tZS5waHA/d2dfYWJicmV2PXdzcyIgY2xhc3M9ImV4dGVybmFsTGluayIgdGl0bGU9IkV4dGVybmFsIExpbmsiPldTLVNlY3VyaXR5PC9hPiAtIEltcGxlbWVudGVkIGJ5IDxhIGhyZWY9Imh0dHA6Ly93cy5hcGFjaGUub3JnL3JhbXBhcnQvYy8iIGNsYXNzPSJleHRlcm5hbExpbmsiIHRpdGxlPSJFeHRlcm5hbCBMaW5rIj5BcGFjaGUgUmFtcGFydC9DPC9hPiBwcm9qZWN0IDwvbGk+CiAgICAgIDxsaT4gPGEgaHJlZj0iaHR0cDovL3NwZWNzLnhtbHNvYXAub3JnL3dzLzIwMDUvMDcvc2VjdXJpdHlwb2xpY3kvd3Mtc2VjdXJpdHlwb2xpY3kucGRmIiBjbGFzcz0iZXh0ZXJuYWxMaW5rIiB0aXRsZT0iRXh0ZXJuYWwgTGluayI+V1MtU2VjdXJpdHlQb2xpY3k8L2E+IC0gQnVpbHQgaW4gdG8gQXhpczIvQyA8L2xpPgogICAgICA8bGk+IDxhIGhyZWY9Imh0dHA6Ly93d3cub2FzaXMtb3Blbi5vcmcvY29tbWl0dGVlcy90Y19ob21lLnBocD93Z19hYmJyZXY9d3NybSIgY2xhc3M9ImV4dGVybmFsTGluayIgdGl0bGU9IkV4dGVybmFsIExpbmsiPldTLVJlbGlhYmxlTWVzc2FnaW5nPC9hPiAtIEltcGxlbWVudGVkIGJ5IDxhIGhyZWY9Imh0dHA6Ly93cy5hcGFjaGUub3JnL3NhbmRlc2hhL3NhbmRlc2hhMi9jIiBjbGFzcz0iZXh0ZXJuYWxMaW5rIiB0aXRsZT0iRXh0ZXJuYWwgTGluayI+QXBhY2hlIFNhbmRlc2hhMi9DPC9hPnByb2plY3QKICAgICAgPC9saT4KICAgICAgPGxpPjxhIGhyZWY9Imh0dHA6Ly93d3cudzMub3JnL1N1Ym1pc3Npb24vV1MtRXZlbnRpbmcvIiBjbGFzcz0iZXh0ZXJuYWxMaW5rIiB0aXRsZT0iRXh0ZXJuYWwgTGluayI+V1MtRXZlbnRpbmc8L2E+IC0gSW1wbGVtZW50ZWQgYnkgPGEgaHJlZj0iaHR0cDovL3dzLmFwYWNoZS5vcmcvc2F2YW4vYy8iIGNsYXNzPSJleHRlcm5hbExpbmsiIHRpdGxlPSJFeHRlcm5hbCBMaW5rIj5BcGFjaGUgU2F2YW4vQzwvYT5wcm9qZWN0PC9saT4KICAgIDwvdWw+PGRpdiBjbGFzcz0ic3Vic2VjdGlvbiI+CiAgICAgIDxhIG5hbWU9IkxhdGVzdF9SZWxlYXNlIj48L2E+CiAgICAgIDxoMz5MYXRlc3QgUmVsZWFzZTwvaDM+CiAgICA8L2Rpdj48ZGl2IGNsYXNzPSJzdWJzZWN0aW9uIj4KICAgICAgPGEgbmFtZT0iMjBfQXByaWxfMjAwOV8tX0FwYWNoZV9BeGlzMl9DX1ZlcnNpb25fMV82XzBfUmVsZWFzZWQiPjwvYT4KICAgICAgPGgzPjIwdGggQXByaWwgMjAwOSAtIEFwYWNoZSBBeGlzMi9DIFZlcnNpb24gMS42LjAgUmVsZWFzZWQ8L2gzPgogICAgICA8cD48YSBocmVmPSJodHRwOi8vd3MuYXBhY2hlLm9yZy9heGlzMi9jL2Rvd25sb2FkLmNnaSIgY2xhc3M9ImV4dGVybmFsTGluayIgdGl0bGU9IkV4dGVybmFsIExpbmsiPkRvd25sb2FkIDEuNi4wPC9hPjwvcD4KICAgIDwvZGl2PjxkaXYgY2xhc3M9InN1YnNlY3Rpb24iPgogICAgICA8YSBuYW1lPSJLZXlfRmVhdHVyZXMiPjwvYT4KICAgICAgPGgzPktleSBGZWF0dXJlczwvaDM+CiAgICAgIDxvbD4KICAgICAgICA8bGk+U3VwcG9ydCBmb3Igb25lLXdheSBtZXNzYWdpbmcgKEluLU9ubHkpIGFuZCByZXF1ZXN0IHJlc3BvbnNlIG1lc3NhZ2luZyAoSW4tT3V0KTwvbGk+CiAgICAgICAgPGxpPkNsaWVudCBBUElzOiBFYXN5IHRvIHVzZSBzZXJ2aWNlIGNsaWVudCBBUEkgYW5kIG1vcmUgYWR2YW5jZWQgb3BlcmF0aW9uIGNsaWVudCBBUEk8L2xpPgogICAgICAgIDxsaT5UcmFuc3BvcnRzIHN1cHBvcnRlZDogSFRUUAogICAgICAgICAgPHVsPgogICAgICAgICAgICA8bGk+SW5idWlsdCBIVFRQIHNlcnZlciBjYWxsZWQgc2ltcGxlIGF4aXMgc2VydmVyPC9saT4KICAgICAgICAgICAgPGxpPkFwYWNoZTIgaHR0cGQgbW9kdWxlIGNhbGxlZCBtb2RfYXhpczIgZm9yIHNlcnZlciBzaWRlPC9saT4KICAgICAgICAgICAgPGxpPklJUyBtb2R1bGUgZm9yIHNlcnZlciBzaWRlLiBTdXBwb3J0cyBJSVMgNS4xLCA2IGFuZCA3PC9saT4KICAgICAgICAgICAgPGxpPkNsaWVudCB0cmFuc3BvcnQgd2l0aCBhYmlsaXR5IHRvIGVuYWJsZSBTU0wgc3VwcG9ydDwvbGk+CiAgICAgICAgICAgIDxsaT5CYXNpYyBIVFRQIEF1dGhlbnRpY2F0aW9uPC9saT4KICAgICAgICAgICAgPGxpPkFNUVAgVHJhbnNwb3J0IGJhc2VkIG9uIEFwYWNoZSBRcGlkIChFeHBlcmltZW50YWwpPC9saT48bGk+CiAgICAgICAgICAgIDwvbGk+PGxpPmxpYmN1cmwgYmFzZWQgY2xpZW50IHRyYW5zcG9ydDwvbGk+CiAgICAgICAgICAgIDxsaT5DR0kgaW50ZXJmYWNlPC9saT4KICAgICAgICAgIDwvdWw+CiAgICAgICAgPC9saT4KICAgICAgICA8bGk+TW9kdWxlIGFyY2hpdGVjdHVyZSwgbWVjaGFuaXNtIHRvIGV4dGVuZCB0aGUgU09BUCBwcm9jZXNzaW5nIG1vZGVsPC9saT4KICAgICAgICA8bGk+V1MtQWRkcmVzc2luZyBzdXBwb3J0LCBib3RoIHRoZSBzdWJtaXNzaW9uICgyMDA0LzA4KSBhbmQgZmluYWwgKDIwMDUvMDgpIHZlcnNpb25zLCBpbXBsZW1lbnRlZCBhcyBhIG1vZHVsZTwvbGk+CiAgICAgICAgPGxpPk1UT00vWE9QIHN1cHBvcnQ8L2xpPgogICAgICAgIDxsaT5YUGF0aCBzdXBwb3J0IGZvciBBeGlvbSBYTUwgT2JqZWN0IG1vZGVsPC9saT4KICAgICAgICA8bGk+QVhJT00sIGFuIFhNTCBvYmplY3QgbW9kZWwgb3B0aW1pemVkIGZvciBTT0FQIDEuMS8xLjIgbWVzc2FnZXM7IFRoaXMgaGFzIGNvbXBsZXRlIFhNTCBpbmZvc2V0IHN1cHBvcnQgPC9saT4KICAgICAgICA8bGk+WE1MIHBhcnNlciBhYnN0cmFjdGlvbgogICAgICAgICAgPHVsPgogICAgICAgICAgICA8bGk+TGlieG1sMiB3cmFwcGVyPC9saT4KICAgICAgICAgICAgPGxpPkd1dGh0aGlsYSBwdWxsIHBhcnNlciBzdXBwb3J0PC9saT4KICAgICAgICAgIDwvdWw+CiAgICAgICAgPC9saT4KICAgICAgICA8bGk+Qm90aCBkaXJlY3RvcnkgYmFzZWQgYW5kIGFyY2hpdmUgYmFzZWQgZGVwbG95bWVudCBtb2RlbHMgZm9yIGRlcGxveWluZyBzZXJ2aWNlcyBhbmQgbW9kdWxlcyA8L2xpPgogICAgICAgIDxsaT5EZXNjcmlwdGlvbiBoaWVyYXJjaHkgcHJvdmlkaW5nIGFjY2VzcyB0byBzdGF0aWMgZGF0YSBvZiBBeGlzMi9DIHJ1bnRpbWUgKGNvbmZpZ3VyYXRpb24sIHNlcnZpY2UgZ3JvdXBzLCBzZXJ2aWNlcywgb3BlcmF0aW9ucyBhbmQgbWVzc2FnZXMpIDwvbGk+CiAgICAgICAgPGxpPkNvbnRleHQgaGllcmFyY2h5IHByb3ZpZGluZyBhY2Nlc3MgdG8gZHluYW1pYyBBeGlzMi9DIHJ1bnRpbWUgaW5mb3JtYXRpb24oY29ycmVzcG9uZGluZyBjb250ZXh0cyB0byBtYXAgdG8gZWFjaCBsZXZlbCBvZiBkZXNjcmlwdGlvbiBoaWVyYXJjaHkpIDwvbGk+CiAgICAgICAgPGxpPk1lc3NhZ2UgcmVjZWl2ZXIgYWJzdHJhY3Rpb24KICAgICAgICAgIDx1bD4KICAgICAgICAgICAgPGxpPkluYnVpbHQgcmF3IFhNTCBtZXNzYWdlIHJlY2VpdmVyPC9saT4KICAgICAgICAgIDwvdWw+CiAgICAgICAgPC9saT4KICAgICAgICA8bGk+Q29kZSBnZW5lcmF0aW9uIHRvb2wgZm9yIHN0dWIgYW5kIHNrZWxldG9uIGdlbmVyYXRpb24gZm9yIGEgZ2l2ZW4gV1NETCAoYmFzZWQgb24gSmF2YSB0b29sKSAgICAgICAgPHVsPgogICAgICAgICAgICA8bGk+QXhpcyBEYXRhIEJpbmRpbmcgKEFEQikgc3VwcG9ydCA8L2xpPgogICAgICAgICAgPC91bD4KICAgICAgICA8L2xpPgogICAgICAgIDxsaT5UcmFuc3BvcnQgcHJveHkgc3VwcG9ydDwvbGk+CiAgICAgICAgPGxpPlJFU1Qgc3VwcG9ydCAobW9yZSBQT1ggbGlrZSkgdXNpbmcgYm90aCBIVFRQIFBPU1QgYW5kIEdFVCA8L2xpPgogICAgICAgIDxsaT5Db21wcmVoZW5zaXZlIGRvY3VtZW50YXRpb24KICAgICAgICAgIDx1bD4KICAgICAgICAgICAgPGxpPkF4aXMyL0MgTWFudWFsIDwvbGk+CiAgICAgICAgICA8L3VsPgogICAgICAgIDwvbGk+CiAgICAgICAgPGxpPldTLVBvbGljeSBpbXBsZW1lbnRhdGlvbiBjYWxsZWQgTmVldGhpL0MsIHdpdGggV1MtU2VjdXJpdHlQb2xpY3kgZXh0ZW5zaW9uPC9saT4KICAgICAgICA8bGk+VENQIFRyYW5zcG9ydCwgZm9yIGJvdGggY2xpZW50IGFuZCBzZXJ2ZXIgc2lkZSA8L2xpPgogICAgPC9vbD48L2Rpdj48ZGl2IGNsYXNzPSJzdWJzZWN0aW9uIj4KICAgICAgPGEgbmFtZT0iTWFqb3JfQ2hhbmdlc19TaW5jZV9MYXN0X1JlbGVhc2UiPjwvYT4KICAgICAgPGgzPkNoYW5nZXMgU2luY2UgTGFzdCBSZWxlYXNlPC9oMz4KICAgICAgPG9sPiAKICAgICAgICA8bGk+WFBhdGggc3VwcG9ydCBmb3IgQXhpb20gWE1MIG9iamVjdCBtb2RlbDwvbGk+CiAgICAgICAgPGxpPkNHSSBzdXBwb3J0PC9saT4KICAgICAgICA8bGk+SW1wcm92ZW1lbnRzIHRvIE1UT00gdG8gc2VuZCwgcmVjZWl2ZSB2ZXJ5IGxhcmdlIGF0dGFjaG1lbnRzPC9saT4KICAgICAgICA8bGk+SW1wcm92ZW1lbnRzIHRvIEFNUVAgdHJhbnNwb3J0PC9saT4KICAgICAgICA8bGk+SW1wcm92ZW1lbnRzIHRvIFdTREwyQyBjb2RlZ2VuIHRvb2w8L2xpPgogICAgICAgIDxsaT5NYW55IGJ1ZyBmaXhlcy48L2xpPgogICAgICAgIDxsaT5NZW1vcnkgbGVhayBmaXhlczwvbGk+CiAgICAgIDwvb2w+CiAgICA8L2Rpdj48ZGl2IGNsYXNzPSJzdWJzZWN0aW9uIj4KICAgICAgPGEgbmFtZT0iQXJjaGl2ZWRfTmV3cyI+PC9hPgogICAgICA8aDM+QXJjaGl2ZWQgTmV3czwvaDM+CiAgICAgIDxwPlJlZmVyIHRvIGluZm9ybWF0aW9uIG9uIHRoZSA8YSBocmVmPSJhcmNoaXZlZF9uZXdzLmh0bWwiPnByZXZpb3VzIHJlbGVhc2VzPC9hPi4KICAgICAgPC9wPgogIDwvZGl2PjxkaXYgY2xhc3M9ImNsZWFyIj48aHI+PC9ocj48L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJjbGVhciI+PGhyPjwvaHI+PC9kaXY+PGRpdiBpZD0iZm9vdGVyIj48ZGl2IGNsYXNzPSJ4cmlnaHQiPqkgMjAwNS0yMDA5LCBBcGFjaGUgU29mdHdhcmUgRm91bmRhdGlvbjwvZGl2PjxkaXYgY2xhc3M9ImNsZWFyIj48aHI+PC9ocj48L2Rpdj48L2Rpdj48L2JvZHk+PC9odG1sPgo=