PD9waHAgIAkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCXJlcXVpcmVfb25jZSgkX1NFUlZFUlsnRE9DVU1FTlRfUk9PVCddIC4gIi9lY2xpcHNlLm9yZy1jb21tb24vc3lzdGVtL2FwcC5jbGFzcy5waHAiKTsJcmVxdWlyZV9vbmNlKCRfU0VSVkVSWydET0NVTUVOVF9ST09UJ10gLiAiL2VjbGlwc2Uub3JnLWNvbW1vbi9zeXN0ZW0vbmF2LmNsYXNzLnBocCIpOyAJcmVxdWlyZV9vbmNlKCRfU0VSVkVSWydET0NVTUVOVF9ST09UJ10gLiAiL2VjbGlwc2Uub3JnLWNvbW1vbi9zeXN0ZW0vbWVudS5jbGFzcy5waHAiKTsgCSRBcHAgCT0gbmV3IEFwcCgpOwkkTmF2CT0gbmV3IE5hdigpOwkkTWVudSAJPSBuZXcgTWVudSgpOwkJaW5jbHVkZSgkQXBwLT5nZXRQcm9qZWN0Q29tbW9uKCkpOyAgICAjIEFsbCBvbiB0aGUgc2FtZSBsaW5lIHRvIHVuY2x1dHRlciB0aGUgdXNlcidzIGRlc2t0b3AnCgoJIyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCgkjCgkjIHJlZmVyZW5jZXMucGhwCgkjCgkjIEF1dGhvcjogCQlNYXJjb3MgRGlkb25ldCBEZWwgRmFicm8KCSMgRGF0ZToJCQkyMDA2LTA4LTI4CgkjCgkjIERlc2NyaXB0aW9uOiBUaGlzIHBhZ2UgbGlzdHMgYSBzZXQgb2YgYXJ0aWNsZXMgdGhhdCBtYWtlIHJlZmVyZW5jZSB0byBBTVcuCgkjICAgICAgICAgICAgICAKCSMKCSMqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCgkKCSMKCSMgQmVnaW46IHBhZ2Utc3BlY2lmaWMgc2V0dGluZ3MuICBDaGFuZ2UgdGhlc2UuIAoJJHBhZ2VUaXRsZSAJCT0gIkFNVyAtIEV4dGVybmFsIFJlZmVyZW5jZXMiOwoJJHBhZ2VLZXl3b3Jkcwk9ICIiOwoJJHBhZ2VBdXRob3IJCT0gIk1hcmNvcyBEaWRvbmV0IERlbCBGYWJybyI7CgkKCSMgUGFzdGUgeW91ciBIVE1MIGNvbnRlbnQgYmV0d2VlbiB0aGUgRU9IVE1MIG1hcmtlcnMhCQoJJGh0bWwgPSA8PDxFT0hUTUwKCjwhLS0gTWFpbiBwYXJ0IC0tPgoJPGRpdiBpZD0ibWlkY29sdW1uIj4KCQk8dGFibGUgd2lkdGg9IjEwMCUiPgoJCQk8dHI+CgkJCQk8dGQgd2lkdGg9IjUwJSI+CgkJCQkJPGgxPiRwYWdlVGl0bGU8L2gxPgoJCQkJPC90ZD4KCQkJCTx0ZCBhbGlnbj0icmlnaHQiPgoJCQkJCTxpbWcgYWx0PSJBTVcgTG9nbyIgc3JjPSJyZXNvdXJjZXMvYW13TG9nby5wbmciIHZhbGlnbj0idG9wIiAvPgoJCQkJPC90ZD4KCQkJPC90cj4KCQk8L3RhYmxlPgoJCTxwLz4KCgk8dWwgY2xhc3M9Im1pZGxpc3QiPgoJPGxpPgoJCQoJCVRoaXMgcGFnZSBsaXN0cyBhIHNldCBvZiBhcnRpY2xlcywgcHJlc2VudGF0aW9ucywgZ2VuZXJhbCB3b3JrLCBldGMuIHRoYXQgcmVmZXJzIHRvIHRoZSBBVExBUyBNb2RlbCBXZWF2ZXIgcHJvamVjdC48cC8+CgkJQW55b25lIHRoYXQgaXMgaW50ZXJlc3RlZCB0byBhZGQgaXRzIHdvcmsgbWF5IGNvbnRhY3QgPGEgaHJlZj0ibWFpbHRvOm1hcmNvcy5kaWRvbmV0LWRlbC1mYWJyb19hdF91bml2LW5hbnRlcy5mciI+bWFyY29zLmRpZG9uZXQtZGVsLWZhYnJvIGF0IHVuaXYtbmFudGVzLmZyPC9hPi4gPHAvPgoJCQoJCVRoZSBBTVcgUHVibGljYXRpb25zIGFyZSBhdmFpbGFibGUgaW4gdGhlIDxhIGhyZWY9InB1YmxpY2F0aW9uLnBocCI+UHVibGljYXRpb25zIHBhZ2U8L2E+LgoJPC9saT4KCTxici8+CiAgIAkgICAgPGg0PjIwMDc8L2g0PiAgCSAKICAgCSAgICAKICAgCQkgICAgCiAgIAkgICAgCTxsaT4KCSAgICAgICAgICAgWzxhIGhyZWY9Imh0dHA6Ly93d3cuc2NpZW5jZXMudW5pdi1uYW50ZXMuZnIvbGluYS9hdGwvYmlibGlvZ3JhcGh5L2V4dF9BT1NEMDciPkFPU0QwNzwvYT5dCgkgICAgICAgICAgICBHcm9oZXIsIEksIGFuZCBWb2VsdGVyLCBNIDogWFdlYXZlOiBtb2RlbHMgYW5kIGFzcGVjdHMgaW4gY29uY2VydC4gCgkgICAgICAgICAgICBJbjogMTB0aCBpbnRlcm5hdGlvbmFsIHdvcmtzaG9wIG9uIEFzcGVjdC1vcmllbnRlZCBtb2RlbGluZyB0YWJsZSBvZiBjb250ZW50cy4gCgkgICAgICAgICAgICBBQ00gUHJlc3MsIHBhZ2VzIDM1LTQwLiAgMjAwNy4KCSAgIAkgICAgIDwvbGk+CgkgICAJICAgIDxwLz4KCSAgIAkgICAgPGxpPgoJICAgICAgICAgICBbPGEgaHJlZj0iaHR0cDovL3d3dy5zY2llbmNlcy51bml2LW5hbnRlcy5mci9saW5hL2F0bC9iaWJsaW9ncmFwaHkvZXh0X1NBQzA3YiI+U0FDMDdiPC9hPl0KCSAgICAgICAgICAgIEF2aWxhLUdhcmNpYSwgTywgRXN06XZleiBHYXJjaWEsIEEsIFNhbmNoZXogUmVidWxsLCBFLCBhbmQgUm9kYSBHYXJjaWEsIEogOiAKCSAgICAgICAgICAgIFVzaW5nIFNvZnR3YXJlIFByb2R1Y3QgTGluZXMgdG8gTWFuYWdlIE1vZGVsIEZhbWlsaWVzIGluIE1vZGVsLURyaXZlbiBFbmdpbmVlcmluZy4gCgkgICAgICAgICAgICBJbjogQUNNIFNBQyAyMDA3LSBNb2RlbCBUcmFuc2Zvcm1hdGlvbiBUcmFjay4gQUNNIFByZXNzLCBwYWdlcyAxMDA2LTEwMTEuIE1hcmNoIDIwMDcuCgkgICAJICAgIAoJICAgCSAgICA8L2xpPgoJICAgCSAgICA8cC8+CgkgICAJICAgIDxsaT4KICAgICAgICAgICAgICAgICAgWzxhIGhyZWY9Imh0dHA6Ly93d3cuc2NpZW5jZXMudW5pdi1uYW50ZXMuZnIvbGluYS9hdGwvYmlibGlvZ3JhcGh5L2V4dF9TQUMwN2EiPlNBQzA3YTwvYT5dCiAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgTGFtYXJpLCBNIDogVG93YXJkcyBhbiBBdXRvbWF0ZWQgVGVzdCBHZW5lcmF0aW9uIGZvciB0aGUgVmVyaWZpY2F0aW9uIG9mIE1vZGVsIFRyYW5zZm9ybWF0aW9ucy4gCiAgICAgICAgICAgICAgICAgICBJbjogQUNNIFNBQyAyMDA3LSBNb2RlbCBUcmFuc2Zvcm1hdGlvbiBUcmFjay4gQUNNIFByZXNzLCBwYWdlcyA5OTgtMTAwNS4gTWFyY2ggMjAwNwogICAgICAgICAgICAgPC9saT4gICAgICAKICAgICAgICAgICAgIDxwLz4KICAgCSAgICAKICAgICAgICAgICAgICAgIDxsaT4KICAgICAgICAgICAgICAgICAgWzxhIGhyZWY9Imh0dHA6Ly93d3cuc2NpZW5jZXMudW5pdi1uYW50ZXMuZnIvbGluYS9hdGwvYmlibGlvZ3JhcGh5L2V4dF9ISUNTUzA3Ij5ISUNTUzA3PC9hPl0gICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgV2ltbWVyLCBNLCBTdHJvbW1lciwgTSwgS2FyZ2wsIEgsIGFuZCBLcmFtbGVyLCBHIDogICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIFRvd2FyZHMgTW9kZWwgVHJhbnNmb3JtYXRpb24gR2VuZXJhdGlvbiBCeS1FeGFtcGxlLiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICBJbiBwcm9jLiBvZiAgSElDU1MtNDAgSGF3YWlpIEludGVybmF0aW9uYWwgQ29uZmVyZW5jZSBvbiBTeXN0ZW0gU2NpZW5jZXMsIEhhd2FpaSwgVVNBLiAKICAgICAgICAgICAgICAgICAgICAgIDIwMDcuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly93d3cuYmlnLnR1d2llbi5hYy5hdC9yZXNlYXJjaC9wdWJsaWNhdGlvbnMvMjAwNi8yODA2LnBkZiI+KGxpbmspPC9hPiAKICAgICAgICAgICAgICAgIDwvbGk+CiAgICAKICAgIAogICAgICAgICAgCiAgIAkgIAk8aDQ+MjAwNjwvaDQ+CgkJCQk8bGk+CgkJCQkJWzxhIGhyZWY9Imh0dHA6Ly93d3cuc2NpZW5jZXMudW5pdi1uYW50ZXMuZnIvbGluYS9hdGwvYmlibGlvZ3JhcGh5L2V4dF9NT0RFTFMwNiI+TU9ERUxTMDY8L2E+XQkJCQkJCgkJCQkJS2FwcGVsLCBHLCBLYXBzYW1tZXIsIEUsIEthcmdsLCBILCBLcmFtbGVyLCBHLCBSZWl0ZXIsIFQsIFJldHNjaGl0emVnZ2VyLCBXLCBTY2h3aW5nZXIsIFcsIGFuZCBXaW1tZXIsIE0gOgoJCQkJCSBMaWZ0aW5nIG1ldGFtb2RlbHMgdG8gb250b2xvZ2llcyAtIGEgc3RlcCB0byB0aGUgc2VtYW50aWMgaW50ZWdyYXRpb24gb2YgbW9kZWxpbmcgbGFuZ3VhZ2VzLiAKCQkJCQkgSW46IEFDTS9JRUVFIDl0aCBJbnRlcm5hdGlvbmFsIENvbmZlcmVuY2Ugb24gTW9kZWwgRHJpdmVuIEVuZ2luZWVyaW5nIExhbmd1YWdlcyBhbmQgU3lzdGVtcyAoTU9ERUxTJzA2KS4gMjAwNi4gCiAgICAgICAgICAJCTwvbGk+CiAgICAgICAgICAgIDxwLz4KCQkJPGxpPgoJCQlbPGEgaHJlZj0iaHR0cDovL3d3dy5zY2llbmNlcy51bml2LW5hbnRlcy5mci9saW5hL2F0bC9iaWJsaW9ncmFwaHkvZXh0X0lCTVNKIj5JQk1TSjwvYT5dCgkJCSAgCSBIZWxzZW4sIFMgOiBGZWF0dXJlLWJhc2VkIHN1cnZleSBvZiBtb2RlbCB0cmFuc2Zvcm1hdGlvbiBhcHByb2FjaGVzLiBXZWJwdWJsaXNoZWQuICAyMDA2CQkJICAJIAkJCSAgCSAKCQkJICA8cC8+CgkJCSAgCgkJCSAgPGxpPgoJCQlbPGEgaHJlZj0iaHR0cDovL3d3dy5zY2llbmNlcy51bml2LW5hbnRlcy5mci9saW5hL2F0bC9iaWJsaW9ncmFwaHkvZXh0X1NXRVNFMDYiPlNXRVNFMDY8L2E+XQoJCQkJIFJvc2VyLCBTLCBhbmQgQmF1ZXIsIEIgOiBBbiBBcHByb2FjaCB0byBBdXRvbWF0aWNhbGx5IEdlbmVyYXRlZCBNb2RlbCBUcmFuc2Zvcm1hdGlvbnMgVXNpbmcgT250b2xvZ3kgRW5naW5lZXJpbmcgU3BhY2UuCgkJCQkgIEluOiAybmQgSW50ZXJuYXRpb25hbCBXb3Jrc2hvcCBvbiBTZW1hbnRpYyBXZWIgRW5hYmxlZCBTb2Z0d2FyZSBFbmdpbmVlcmluZyAoU1dFU0UgMjAwNikuICAyMDA2LgoJCQkgPC9saT4KICAgICAgICAgICAgPHAvPgoJCQkgIAoJCQkgIAoJCQkgIAogICAgICAgICAgICAgPGxpPgogICAgICAgICAgICBbPGEgaHJlZj0iaHR0cDovL3d3dy5zY2llbmNlcy51bml2LW5hbnRlcy5mci9saW5hL2F0bC9iaWJsaW9ncmFwaHkvZXh0X0VET0MwNiI+RURPQzA2PC9hPl0gU3RlZmFub3YsIFYsIGFuZCBMaXN0LCBCIDogCiAgICAgICAgICAgIAlCdXNpbmVzcyBNZXRhZGF0YSBmb3IgdGhlIERhdGEgV2FyZWhvdXNlIC0gV2VhdmluZyBFbnRlcnByaXNlIEdvYWxzIGFuZCBNdWx0aWRpbWVuc2lvbmFsIE1vZGVscy4gCiAgICAgICAgICAgIAlJbjogSW50ZXJuYXRpb25hbCBXb3Jrc2hvcCBvbiBNb2RlbHMgZm9yIEVudGVycHJpc2UgQ29tcHV0aW5nIChJV01FQykgYXQgdGhlIDEwdGggSW50ZXJuYXRpb25hbCBFbnRlcnByaXNlIAogICAgICAgICAgICAJRGlzdHJpYnV0ZWQgT2JqZWN0IENvbXB1dGluZyBDb25mZXJlbmNlIChFRE9DIDIwMDYpLiAyMDA2LiAgICAgICAgICAgICAgICAgIAogICAgICAgICAgCQk8L2xpPgogICAgICAgICAgICA8cC8+CiAgICAgICAgICAgIDxsaT4KICAgICAgICAgICAgWzxhIGhyZWY9Imh0dHA6Ly93d3cuc2NpZW5jZXMudW5pdi1uYW50ZXMuZnIvbGluYS9hdGwvYmlibGlvZ3JhcGh5L2V4dF9FQ09PUDA2Ij5FQ09PUDA2PC9hPl0gCiAgICAgICAgICAgICAgUmVpdGVyLCBULCBSZXRzY2hpdHplZ2dlciwgVywgU2NoYXVlcmh1YmVyLCBBLCBTY2h3aW5nZXIsIFcsIGFuZCBLYXBzYW1tZXIsIEUgOgogICAgICAgICAgICAgICBFbmFibGluZyBBUEktYmFzZWQgVG9vbCBJbnRlZ3JhdGlvbiB0aHJvdWdoIEFzcGVjdC1PcmllbnRhdGlvbi4gCiAgICAgICAgICAgICAgIDJuZCBXb3Jrc2hvcCBvbiBNb2RlbHMgYW5kIEFzcGVjdHMsIChFQ09PUCcwNiksIE5hbnRlcywgRnJhbmNlLiAgMjAwNi4gCiAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgIDxwLz4KCgoJICAgICAgICAgICAgPGxpPgoJICAgICAgICAgICAgWzxhIGhyZWY9Imh0dHA6Ly93d3cuc2NpZW5jZXMudW5pdi1uYW50ZXMuZnIvbGluYS9hdGwvYmlibGlvZ3JhcGh5L2V4dF9NT0RFTFMwNmIiPk1PREVMUzA2YjwvYT5dIAoJICAgICAgICAgICAgICBBbHRtYW5uaW5nZXIsIEssIEthcHBlbCwgRywgS2Fwc2FtbWVyLCBFLCBLYXJnbCwgSCwgS290c2lzLCBHLCBLcmFtbGVyLCBHLCBSZWl0ZXIsIFQsIFJldHNjaGl0emVnZ2VyLCBXLCAKCSAgICAgICAgICAgICAgU2Nod2luZ2VyLCBXLCBTZWlkbCwgTSwgU3Ryb21tZXIsIE0sIGFuZCBXaW1tZXIsIE0gOiAKCSAgICAgICAgICAgICAgRnJvbSBNb2RlbHMgdG8gT250b2xvZ2llcyBhbmQgQmFjayBBZ2FpbjogVGhlIE1vZGVsQ1ZTIEFwcHJvYWNoIGZvciBJbnRlZ3JhdGluZyBNb2RlbGluZyBUb29scy4gCgkgICAgICAgICAgICAgIEluOiBBQ00vSUVFRSA5dGggSW50ZXJuYXRpb25hbCBDb25mZXJlbmNlIG9uIE1vZGVsIERyaXZlbiBFbmdpbmVlcmluZyBMYW5ndWFnZXMgYW5kIFN5c3RlbXMgCgkgICAgICAgICAgICAgIChNT0RFTFMnMDYpLiAgMjAwNi4KCSAgICAgICAgICAgIDwvbGk+CgkgICAgICAgICAgICA8cC8+CgkgICAgICAgICAgICAKCSAgICAgICAgICAgIDxsaT4KCSAgICAgICAgICAgIFs8YSBocmVmPSJodHRwOi8vd3d3LnNjaWVuY2VzLnVuaXYtbmFudGVzLmZyL2xpbmEvYXRsL2JpYmxpb2dyYXBoeS9leHRfTVBNMDYiPk1QTTA2PC9hPl0gCgkgICAgICAgICAgICAgUmVpdGVyLCBULCBSZXRzY2hpdHplZ2dlciwgVywgYW5kIEFsdG1hbm5pbmdlciwgSyA6IAoJICAgICAgICAgICAgIFRoaW5rIEdsb2JhbCwgQWN0IExvY2FsOiBJbXBsZW1lbnRpbmcgTW9kZWwgTWFuYWdlbWVudCB3aXRoIERvbWFpbi1TcGVjaWZpYyBJbnRlZ3JhdGlvbiBMYW5ndWFnZXMuIAoJICAgICAgICAgICAgIEluOiBQcm9jZWVkaW5ncyBvZiB0aGUgV29ya3Nob3Agb24gTXVsdGktUGFyYWRpZ20gTW9kZWxpbmc6IENvbmNlcHRzIGFuZCBUb29scyBhdCB0aGUgOXRoIEludGVybmF0aW9uYWwgCgkgICAgICAgICAgICAgQ29uZmVyZW5jZSBvbiBNb2RlbC1Ecml2ZW4gRW5naW5lZXJpbmcgTGFuZ3VhZ2VzIGFuZCBTeXN0ZW1zIEdlbm92YSwgSXRhbHkuICAyMDA2LgoJICAgICAgICAgICAgPC9saT4KCSAgICAgICAgICAgIDxwLz4KCSAgICAgICAgICAgIAkgICAgICAgICAgICAKICAgCSAgICAgICAgICAgIDxsaT4KCSAgICAgICAgICAgIFs8YSBocmVmPSJodHRwOi8vd3d3LnNjaWVuY2VzLnVuaXYtbmFudGVzLmZyL2xpbmEvYXRsL2JpYmxpb2dyYXBoeS9leHRfREJJUzA2Ij5EQklTMDY8L2E+XSAKCQkgICAgICAgICAgICBCYWxhbmR5dGUsIE0sIGFuZCBOZW11cmFpdGUsIEwgOiAKCQkgICAgICAgICAgICBUaW1lLCBldmVudCBhbmQgc2VsZi1tYW5hZ2VtZW50IGFzcGVjdHMgaW4gbW9kZWwtZHJpdmVuIGRldmVsb3BtZW50IG9mIGluZm9ybWF0aW9uIHN5c3RlbXMuIAoJCSAgICAgICAgICAgIEluOiA3dGggSW50ZXJuYXRpb25hbCBCYWx0aWMgQ29uZmVyZW5jZSBvbiBEYXRhYmFzZXMgYW5kIEluZm9ybWF0aW9uIFN5c3RlbXMsIHBhZ2VzIDE1MZcxNTguICAyMDA2LgoJICAgICAgICAgICAgPC9saT4KCSAgICAgICAgICAgIDxwLz4KCSAgICAgICAgICAgCiAgIAkgICAgICAgICAgICA8bGk+CgkgICAgICAgICAgICBbPGEgaHJlZj0iaHR0cDovL3d3dy5zY2llbmNlcy51bml2LW5hbnRlcy5mci9saW5hL2F0bC9iaWJsaW9ncmFwaHkvZXh0X1RSMDYiPlRSMDY8L2E+XSAKCQkgICAgICAgICAgICBEaXNraW4sIFogOiAKCQkgICAgICAgICAgICBNb2RlbCB0cmFuc2Zvcm1hdGlvbiB2aWEgcHVsbC1iYWNrczogYWxnZWJyYSB2cy4gaGV1cmlzdGljcy4gCgkJICAgICAgICAgICAgUmVzZWFyY2ggUmVwb3J0IFNjaG9vbCBvZiBDb21wdXRpbmcsIFF1ZWVuknMgVW5pdmVyc2l0eSwgS2luZ3N0b24sIE9udGFyaW8sIENhbmFkYSwgKDIwMDYtNTIxKS4gIDIwMDYuCgkgICAgICAgICAgICA8L2xpPgoJICAgICAgICAgICAgPHAvPgoJCQkJPGxpPgoJICAgICAgICAgICAgWzxhIGhyZWY9Imh0dHA6Ly93d3cuc2NpZW5jZXMudW5pdi1uYW50ZXMuZnIvbGluYS9hdGwvYmlibGlvZ3JhcGh5L2V4dF9TRVRSQTA2Ij5TRVRSQTA2PC9hPl0KCSAgICAgICAgICAgICAJIEJvcm9uYXQsIEEsIENhcnNpLCBKLCBhbmQgUmFtb3MsIEkgOiBFeG9nZW5vdXMgTW9kZWwgTWVyZ2luZyBieSBtZWFucyBvZiBNb2RlbCBNYW5hZ2VtZW50IE9wZXJhdG9ycy4gCgkgICAgICAgICAgICAgCSBJbjogUHJvY2VlZGluZ3Mgb2YgdGhlIFRoaXJkIFdvcmtzaG9wIG9uIFNvZnR3YXJlIEV2b2x1dGlvbiB0aHJvdWdoIFRyYW5zZm9ybWF0aW9uczogRW1icmFjaW5nIHRoZSBDaGFuZ2UuICAyMDA2LgoJICAgICAgICAgICAgICAgPC9saT4KCSAgICAgICAgICAgIDxwLz4KCiAgIAkgICAgICAgICAgICA8bGk+CgkgICAgICAgICAgICBbPGEgaHJlZj0iaHR0cDovL3d3dy5zY2llbmNlcy51bml2LW5hbnRlcy5mci9saW5hL2F0bC9iaWJsaW9ncmFwaHkvZXh0X0lDU09GVDA2Ij5JQ1NPRlQwNjwvYT5dIAoJCSAgICAgICAgICAgTnl0dW4sIEpQIDogCgkJICAgICAgICAgICBBIGdlbmVyaWMgbW9kZWwgZm9yIGNvbm5lY3RpbmcgbW9kZWxzIGluIGEgbXVsdGlsZXZlbCBtb2RlbGxpbmcgZnJhbWV3b3JrLiAKCQkgICAgICAgICAgIEluOiBGaXJzdCBJbnRlcm5hdGlvbmFsIENvbmZlcmVuY2Ugb24gU29mdHdhcmUgYW5kIERhdGEgVGVjaG5vbG9naWVzIC0gSUNTT0ZUIDIwMDYuICAyMDA2LgoJICAgICAgICAgICAgPC9saT4KCSAgICAgICAgICAgIDxwLz4KCSAgICAgICAgICAgIAkgICAgICAgICAgICAJICAgICAgICAgICAgCSAgICAgICAgICAgICAKCQkJCTxsaT4gICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICBbPGEgaHJlZj0iaHR0cDovL3d3dy5zY2llbmNlcy51bml2LW5hbnRlcy5mci9saW5hL2F0bC9iaWJsaW9ncmFwaHkvZXh0X0VDQlMwNiI+RUNCUzA2PC9hPl0gICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgIERpIFJ1c2NpbywgRCwgTXVjY2luaSwgSCwgUGVsbGljY2lvbmUsIFAsIGFuZCBQaWVyYW50b25pbywgQSA6CiAgICAgICAgICAgICAgICAgICAgVG93YXJkcyBXZWF2aW5nIFNvZnR3YXJlIEFyY2hpdGVjdHVyZSBNb2RlbHMuCiAgICAgICAgICAgICAgICAgICAgICBNQkQtTU9NUEVTIDIwMDYgV29ya3Nob3AgdG8gYmUgaGVsZCBhdCBFQ0JTIDIwMDYsIFBvdHNkYW0sIEdlcm1hbnkuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAyMDA2LgogICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9zZTJjLnVuaS5sdS90aWtpL3NlMmMtYmliX2Rvd25sb2FkLnBocD9pZD0xOTY5Ij4obGluayk8L2E+IAoJCQkJPC9saT4gICAgICAgICAgICAgIAoJCQkJPHAvPiAgICAgICAKCQkJCTxsaT4gICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICBbPGEgaHJlZj0iaHR0cDovL3d3dy5zY2llbmNlcy51bml2LW5hbnRlcy5mci9saW5hL2F0bC9iaWJsaW9ncmFwaHkvZXh0X1NBQzA2Ij5TQUMwNjwvYT5dICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICBDaWNjaGV0dGksIEEsIERpIFJ1c2NpbywgRCwgYW5kIFBpZXJhbnRvbmlvLCBBIDogV2VhdmluZyBDb25jZXJucyBpbiBNb2RlbCBCYXNlZCBEZXZlbG9wbWVudCBvZiAKICAgICAgICAgICAgICAgICAgICAgIERhdGEgSW50ZW5zaXZlIFdlYiBBcHBsaWNhdGlvbnMuIEFDTSBTQUMgKFN5bXBvc2l1bSBvbiBBcHBsaWVkIENvbXB1dGluZykgLSBNb2RlbCBUcmFuc2Zvcm1hdGlvbiBUcmFjayA6MTI1NiAtIDEyNjEuIDIwMDYKICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vcG9ydGFsLmFjbS5vcmcvY2l0YXRpb24uY2ZtP2lkPTExNDEyNzcuMTE0MTU3MSZjb2xsPUdVSURFJmRsPUdVSURFJnR5cGU9c2VyaWVzJmlkeD0xMTQxMjc3JnBhcnQ9c2VyaWVzJldhbnRUeXBlPXNlcmllcyZ0aXRsZT1TeW1wb3NpdW0lMjBvbiUyMEFwcGxpZWQlMjBDb21wdXRpbmcmQ0ZJRD0xNTE1MTUxNSZDRlRPS0VOPTYxODQ2MTgiPihsaW5rKTwvYT4gCgkJCQk8L2xpPiAgICAgICAgICAgICAgCgkJCQk8cC8+ICAgICAgIAoJCQkJICAgICAgIAoJCQk8bGk+ICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgIFs8YSBocmVmPSJodHRwOi8vd3d3LnNjaWVuY2VzLnVuaXYtbmFudGVzLmZyL2xpbmEvYXRsL2JpYmxpb2dyYXBoeS9leHRfQU1NQTA2YSI+QU1NQTA2YTwvYT5dCiAgICAgICAgICAgICAgICAgICAgICBTY2h3YXJ6ZXIsIFIgOgogICAgICAgICAgICAgICAgICAgIEFUTEFTIE1vZGVsIE1hbmFnZW1lbnQgQXJjaGl0ZWN0dXJlLgogICAgICAgICAgICAgICAgICAgICAgTWlzY2VsbGFuZW91cyBwdWJsaWNhdGlvbi4KICAgICAgICAgICAgICAgICAgICAgIDIwMDYuCiAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2JpczIuaW5mb3JtYXRpay51bmktbGVpcHppZy5kZS9zdHVkaXVtL3NlbWluYXJlLzIwMDVfd3MvbWRzZC8yMDA1MTIyMS9zY2h3YXJ6ZXIucGRmIj4obGluayk8L2E+IAogICAgICAgICAgICAgIAoJCQk8L2xpPiAgICAgICAgICAgICAgCgkJCTxwLz4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgIDxsaT4KICAgICAgICAgICAgICAgICAgWzxhIGhyZWY9Imh0dHA6Ly93d3cuc2NpZW5jZXMudW5pdi1uYW50ZXMuZnIvbGluYS9hdGwvYmlibGlvZ3JhcGh5L2V4dF9DSVRTQTA2Ij5DSVRTQTA2PC9hPl0KICAgICAgICAgICAgICAgICAgICAgIEthcHNhbW1lciAsIEUsIFJlaXRlciAsIFQsIGFuZCBTY2h3aW5nZXIsIFcgOgogICAgICAgICAgICAgICAgICAgIE1vZGVsLUJhc2VkIFRvb2wgSW50ZWdyYXRpb24gLSBTdGF0ZSBvZiB0aGUgQXJ0IGFuZCBGdXR1cmUgUGVyc3BlY3RpdmVzLgogICAgICAgICAgICAgICAgICAgICAgSW4gcHJvYy4gb2YgdGhlIDNyZCBJbnRlcm5hdGlvbmFsIENvbmZlcmVuY2Ugb24gQ3liZXJuZXRpY3MgYW5kIEluZm9ybWF0aW9uIFRlY2hub2xvZ2llcywgU3lzdGVtcyBhbmQgQXBwbGljYXRpb25zIChDSVRTQSAyMDA2KSwgMjAtMjMsIE9ybGFuZG8sIFVTQS4KICAgICAgICAgICAgICAgICAgICAgIDIwMDYuCiAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL3d3dy5iaW9pbmYuamt1LmF0L3B1YmxpY2F0aW9ucy8yMDA2LzA3MDYucGRmIj4obGluayk8L2E+IAoJCQk8L2xpPiAgICAgICAgICAgIAoJCQk8cC8+CgkJCTxsaT4gICAgICAgICAgCiAgICAgICAgICAgICAgICAgIFs8YSBocmVmPSJodHRwOi8vd3d3LnNjaWVuY2VzLnVuaXYtbmFudGVzLmZyL2xpbmEvYXRsL2JpYmxpb2dyYXBoeS9leHRfT0NDRUxMTzA2Ij5PQ0NFTExPMDY8L2E+XQogICAgICAgICAgICAgICAgICAgICAgT2NjZWxsbywgQSA6CiAgICAgICAgICAgICAgICAgICAgQ2FwaXRhbGl6aW5nIHNhZmV0eSBvZiBhcHBsaWNhdGlvbnMgYmVpbmcgYWRhcHRlZCBkeW5hbWljYWxseTogdGhlIFNhdGluIGV4ZWN1dGFibGUgbW9kZWwuCiAgICAgICAgICAgICAgICAgICAgICBQaGQgdGhlc2lzLCBVbml2ZXJzaXTpIGRlIE5pY2UtU29waGlhIEFudGlwb2xpcy4KICAgICAgICAgICAgICAgICAgICAgIDIwMDYuCiAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL3d3dy5lc3NpLmZyL35vY2NlbGxvL2RvYy9yYXBwb3J0RmluYWxfT2NjZWxsby5wZGYiPihsaW5rKTwvYT4gCgkJCTwvbGk+ICAgICAgICAgICAgICAKCQkJPHAvPgoJCQk8bGk+CiAgICAgICAgICAgICAgICAgIFs8YSBocmVmPSJodHRwOi8vd3d3LnNjaWVuY2VzLnVuaXYtbmFudGVzLmZyL2xpbmEvYXRsL2JpYmxpb2dyYXBoeS9leHRfU01PTElLMDYiPlNNT0xJSzA2PC9hPl0KICAgICAgICAgICAgICAgICAgICAgIFNtb2xpaywgUFMgOgogICAgICAgICAgICAgICAgICAgIE1BTUJPIE1ldGFtb2RlbGluZyBFbnZpcm9ubWVudC4KICAgICAgICAgICAgICAgICAgICAgIFBoZCB0aGVzaXMsIEJybm8gVW5pdmVyc2l0eSBvZiBUZWNobm9sb2d5IC0gRmFjdWx0eSBvZiBJbmZvcm1hdGlvbiBUZWNobm9sb2d5LgogICAgICAgICAgICAgICAgICAgICAgMjAwNi4KICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vd3d3Lm1hbWJvbWRlLmluZm8vTWFtYm9NREUucGRmIj4obGluayk8L2E+IAoJCQk8L2xpPiAgICAgICAgICAgICAgCgkJCTxwLz4KICAgICAgICAgICAgIDxsaT4KICAgICAgICAgICAgICAgICAgWzxhIGhyZWY9Imh0dHA6Ly93d3cuc2NpZW5jZXMudW5pdi1uYW50ZXMuZnIvbGluYS9hdGwvYmlibGlvZ3JhcGh5L2V4dF9WSUVOTkEwNiI+VklFTk5BMDY8L2E+XQogICAgICAgICAgICAgICAgICAgICAgV2ltbWVyLCBNLCBTY2hhdWVyaHViZXIsIEEsIEthcHNhbW1lciwgRSwgYW5kIEtyYW1sZXIsIEcgOiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgRnJvbSBEb2N1bWVudCBUeXBlIERlZmluaXRpb25zIHRvIE1ldGFtb2RlbHM6IFRoZSBXZWJNTCBDYXNlIFN0dWR5LiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICBWaWVubmEgVW5pdmVyc2l0eSBvZiBUZWNobm9sb2d5LgogICAgICAgICAgICAgICAgICAgICAgMjAwNi4KICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vd3d3LmJpZy50dXdpZW4uYWMuYXQvcHJvamVjdHMvd2VibWwvRFREMk1PRl9XaW1tZXJfU2NoYXVlcmh1YmVyMDYucGRmIj4obGluayk8L2E+IAoJCQk8L2xpPiAgICAgICAgICAgICAgCgkJCTxwLz4KCQkJPGxpPgoJCQkgICAgICBbPGEgaHJlZj0iaHR0cDovL3d3dy5zY2llbmNlcy51bml2LW5hbnRlcy5mci9saW5hL2F0bC9iaWJsaW9ncmFwaHkvZXh0X0dBTU1BMDZiIj5HQU1NQTA2YjwvYT5dCiAgICAgICAgICAgICAgICAgICAgICBLYXBwZWwsIEcsIEthcHNhbW1lciwgRSwgS3JhbWxlciwgRywgUmVpdGVyLCBULCBSZXRzY2hpdHplZ2dlciwgVywgYW5kIFNjaHdpbmdlciwgVyA6CiAgICAgICAgICAgICAgICAgICAgVG93YXJkcyBhIHNlbWFudGljIGluZnJhc3RydWN0dXJlIHN1cHBvcnRpbmcgbW9kZWwtYmFzZWQgdG9vbCBpbnRlZ3JhdGlvbi4KICAgICAgICAgICAgICAgICAgICAgIEluIHByb2MuIG9mIHRoZSAxc3QgSW50ZXJuYXRpb25hbCBXb3Jrc2hvcCBvbiBHbG9iYWwgaW50ZWdyYXRlZCBNb2RlbCBNYW5hZ2VtZW50IChHYU1NYTIwMDYpLCBTaGFuZ2hhaS4KICAgICAgICAgICAgICAgICAgICAgIDIwMDYuCiAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL3d3dy5iaW9pbmYuamt1LmF0L3B1YmxpY2F0aW9ucy8yMDA2LzA1MDYucGRmIj4obGluayk8L2E+IAoJCQk8L2xpPiAgICAgICAgICAgICAgCgkJCTxwLz4KCgkJCTxsaT4KICAgICAgICAgICAgICAgICAgWzxhIGhyZWY9Imh0dHA6Ly93d3cuc2NpZW5jZXMudW5pdi1uYW50ZXMuZnIvbGluYS9hdGwvYmlibGlvZ3JhcGh5L2V4dF9DQUlTRTA2Ij5DQUlTRTA2PC9hPl0KICAgICAgICAgICAgICAgICAgICAgIFN0ZWZhbm92LCBWIDoKICAgICAgICAgICAgICAgICAgICBCcmlkZ2luZyB0aGUgR2FwIGJldHdlZW4gRGF0YSBXYXJlaG91c2VzIGFuZCBPcmdhbml6YXRpb25zLgogICAgICAgICAgICAgICAgICAgICAgSW4gcHJvYy4gb2YgV29ya3Nob3BzIGFuZCBEb2N0b3JhbCBDb25zb3J0aXVtLCAxOHRoIENvbmZlcmVuY2Ugb24gQWR2YW5jZWQgSW5mb3JtYXRpb24gU3lzdGVtIEVuZ2luZWVyaW5nIChDQWlTRScwNiksIE5hbXVyIFVuaXZlcnNpdHkgUHJlc3MuCiAgICAgICAgICAgICAgICAgICAgICAyMDA2LgogICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly93aXQudHV3aWVuLmFjLmF0L3Blb3BsZS9zdGVmYW5vdi9kb2N1bWVudHMvY2Fpc2UwNl9kb2N0b3JhbF9jb25zb3J0aXVtX3N0ZWZhbm92LnBkZiI+KGxpbmspPC9hPiAKCQkJPC9saT4gICAKCQkJPHAvPiAgICAgICAgICAgCiAgICAgICAgICAgIDxsaT4KICAgICAgICAgICAgICAgICAgWzxhIGhyZWY9Imh0dHA6Ly93d3cuc2NpZW5jZXMudW5pdi1uYW50ZXMuZnIvbGluYS9hdGwvYmlibGlvZ3JhcGh5L2V4dF9HQU1NQTA2Ij5HQU1NQTA2PC9hPl0KICAgICAgICAgICAgICAgICAgICAgIEtvbG92b3MsIERTLCBQYWlnZSwgUkYsIGFuZCBQb2xhY2ssIEZBIDoKICAgICAgICAgICAgICAgICAgICBNb2RlbCBDb21wYXJpc29uOiBhIEZvdW5kYXRpb24gZm9yIE1vZGVsIENvbXBvc2l0aW9uIGFuZCBNb2RlbCBUcmFuc2Zvcm1hdGlvbiBUZXN0aW5nLgogICAgICAgICAgICAgICAgICAgICAgSW4gUHJvYy4gRmlyc3QgSW50ZXJuYXRpb25hbCBXb3Jrc2hvcCBvbiBHbG9iYWwgSW50ZWdyYXRlZCBNb2RlbCBNYW5hZ2VtZW50IChHQE1NQSkgOjEzLTIwLgogICAgICAgICAgICAgICAgICAgICAgMjAwNi4KICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vcG9ydGFsLmFjbS5vcmcvY2l0YXRpb24uY2ZtP2RvaWQ9MTEzODMwNC4xMTM4MzA4Ij4obGluayk8L2E+IAoJCQk8L2xpPiAgICAgICAgICAgICAgCgkJCTxwLz4KCQkJPGxpPgogICAgICAgICAgICAgICAgICBbPGEgaHJlZj0iaHR0cDovL3d3dy5zY2llbmNlcy51bml2LW5hbnRlcy5mci9saW5hL2F0bC9iaWJsaW9ncmFwaHkvZXh0X0VDTURBMDYiPkVDTURBMDY8L2E+XQogICAgICAgICAgICAgICAgICAgICAgS29sb3ZvcywgRFMsIFBhaWdlLCBSRiwgYW5kIFBvbGFjaywgRkEgOgogICAgICAgICAgICAgICAgICAgIE9uLURlbWFuZCBNZXJnaW5nIG9mIFRyYWNlYWJpbGl0eSBMaW5rcyB3aXRoIE1vZGVscy4KICAgICAgICAgICAgICAgICAgICAgIEluIFByb2MuIDJuZCBFQy1NREEgV29ya3Nob3Agb24gVHJhY2VhYmlsaXR5LCBCaWxiYW8sIFNwYWluLgogICAgICAgICAgICAgICAgICAgICAgMjAwNi4KICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vbW9kZWxiYXNlZC5uZXQvZWNtZGEtdHJhY2VhYmlsaXR5L2ltYWdlcy9wYXBlcnMvMl9ka29sb3Zvcy50cmFjZWFiaWxpdHkwNi5jYW1lcmEtcmVhZHkucGRmIj4obGluayk8L2E+CgkJCQk8L2xpPiAgICAgICAgICAgICAgICAgICAgCgkJCQk8cC8+CgkJCQk8bGk+CiAgICAgICAgICAgICAgICAgIFs8YSBocmVmPSJodHRwOi8vd3d3LnNjaWVuY2VzLnVuaXYtbmFudGVzLmZyL2xpbmEvYXRsL2JpYmxpb2dyYXBoeS9leHRfRUNNREEwNmIiPkVDTURBMDZiPC9hPl0KICAgICAgICAgICAgICAgICAgICAgIEtvbG92b3MsIERTLCBQYWlnZSwgUkYsIGFuZCBQb2xhY2ssIEZBIDoKICAgICAgICAgICAgICAgICAgICBUaGUgRXBzaWxvbiBPYmplY3QgTGFuZ3VhZ2UgKEVPTCkuCiAgICAgICAgICAgICAgICAgICAgICBJbiBwcm9jLiBvZiBFdXJvcGVhbiBDb25mZXJlbmNlIGluIE1vZGVsIERyaXZlbiBBcmNoaXRlY3R1cmUgKEVDLU1EQSkgQmlsYmFvLCBTcGFpbjoxMjgtMTQyLgogICAgICAgICAgICAgICAgICAgICAgMjAwNi4KICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vd3d3LnNwcmluZ2VybGluay5jb20vY29udGVudC9yMjYyNDY4OTYyMDE3MjY2LyI+KGxpbmspPC9hPiAKCQkJPC9saT4gICAgICAgICAgICAgIAoJCQk8cC8+CgkJCQoJCQk8aDQ+MjAwNTwvaDQ+CgoJCQk8bGk+CgkJCQoJCQlbPGEgaHJlZj0iaHR0cDovL3d3dy5zY2llbmNlcy51bml2LW5hbnRlcy5mci9saW5hL2F0bC9iaWJsaW9ncmFwaHkvZXh0X1BIREJBRVowNSI+UEhEQkFFWjA1PC9hPl0KCQkJICAJIFZlZ2EgQmFleiwgR0UgOiBE6XZlbG9wcGVtZW50IGQnQXBwbGljYXRpb25zIOAgR3JhbmRlIEVjaGVsbGUgcGFyIENvbXBvc2l0aW9uIGRlIE3pdGEtTW9k6Gxlcy4gCgkJCSAgCSBQaGQgdGhlc2lzLCBVbml2ZXJzaXTpIEpvc2VwaCBGb3VyaWVyIGRlIEdyZW5vYmxlLiAgMjAwNS4gCgkJCQoJCQk8L2xpPgoJCQk8cC8+CgkJCQoJCQk8bGk+CgkJCSAgICAgICBbPGEgaHJlZj0iaHR0cDovL3d3dy5zY2llbmNlcy51bml2LW5hbnRlcy5mci9saW5hL2F0bC9iaWJsaW9ncmFwaHkvZXh0X01EV0UwNSI+TURXRTA1PC9hPl0KICAgICAgICAgICAgICAgICAgICAgIFJlaXRlciwgVCwgS2Fwc2FtbWVyLCBFLCBSZXRzY2hpdHplZ2dlciAsIFcsIGFuZCBTY2h3aW5nZXIsIFcgOgogICAgICAgICAgICAgICAgICAgIE1vZGVsIEludGVncmF0aW9uIFRocm91Z2ggTWVnYSBPcGVyYXRpb25zLgogICAgICAgICAgICAgICAgICAgICAgV29ya3Nob3Agb24gTW9kZWwtZHJpdmVuIFdlYiBFbmdpbmVlcmluZyAoMjAwNSkuCiAgICAgICAgICAgICAgICAgICAgICAyMDA1LgogICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly93d3cubGNjLnVtYS5lcy9+YXYvbWR3ZTIwMDUvY2FtZXJhLXJlYWR5LzMtTURXRTIwMDVfTWVnYU9wZXJhdGlvbnNfQ2FtZXJhUmVhZHkucGRmIj4obGluayk8L2E+IAoJCQk8L2xpPgoJCQkgPHAvPgkJCSAgICAgICAgICAgICAgCgkJCTxsaT4KICAgICAgICAgICAgICAgICAgWzxhIGhyZWY9Imh0dHA6Ly93d3cuc2NpZW5jZXMudW5pdi1uYW50ZXMuZnIvbGluYS9hdGwvYmlibGlvZ3JhcGh5L2V4dF9NT0RFTFMwNWEiPk1PREVMUzA1YTwvYT5dCiAgICAgICAgICAgICAgICAgICAgICBNdXJ6ZWssIE0sIEthcHBlbCwgRywgYW5kIEtyYW1sZXIsIEcgOgogICAgICAgICAgICAgICAgICAgIE1vZGVsIFRyYW5zZm9ybWF0aW9ucyBpbiBQcmFjdGljZSBVc2luZyB0aGUgQk9DIE1vZGVsIFRyYW5zZm9ybWVyIC4KICAgICAgICAgICAgICAgICAgICAgIEluIHByb2MuIG9mIFdvcmtzaG9wICYjODIyMDtNb2RlbCBUcmFuc2Zvcm1hdGlvbiBpbiBQcmFjdGljZSYjODIyMTsgYXQgTW9ERUxTIDIwMDUsIE1vbnRlZ28gQmF5LCBKYW1haWNhLgogICAgICAgICAgICAgICAgICAgICAgMjAwNS4KICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vd3d3LndpdC5hdC9wZW9wbGUvbXVyemVrL3B1YmxpY2F0aW9ucy8yMDA1MTAwM19NVElQX3VzaW5nX0JNVC5wZGYiPihsaW5rKTwvYT4gCiAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgPHAvPgogICAgICAgICAgICAgPGxpPgogICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgIFs8YSBocmVmPSJodHRwOi8vd3d3LnNjaWVuY2VzLnVuaXYtbmFudGVzLmZyL2xpbmEvYXRsL2JpYmxpb2dyYXBoeS9leHRfSkZETFBBMDUiPkpGRExQQTA1PC9hPl0KICAgICAgICAgICAgICAgICAgICAgIENyZXNjZW56byAsIFAsIGFuZCBMYWhpcmUsIFAgOgogICAgICAgICAgICAgICAgICAgIFVuZSBhcHByb2NoZSBwb3VyIGFt6Wxpb3JlciBsYSBy6XV0aWxpc2FiaWxpdOkgZGVzIG1vZOhsZXMgbel0aWVycy4KICAgICAgICAgICAgICAgICAgICAgIDLobWUgSm91cm7pZSBGcmFuY29waG9uZSBzdXIgbGUgROl2ZWxvcHBlbWVudCBkZSBMb2dpY2llbHMgUGFyIEFzcGVjdHMgKEpGRExQQSAyMDA1KS48L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAyMDA1LgogICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly93d3cyLmxpZmwuZnIvamZkbHBhMDUvY3Jlc2NlbnpvLnBkZiI+KGxpbmspPC9hPiAKCQkJCTwvbGk+ICAgICAgICAgICAgICAKICAgICAgICAgICAgIDxwLz4KICAgICAgICAgICAgICA8bGk+CiAgICAgICAgICAgICAgICAgIFs8YSBocmVmPSJodHRwOi8vd3d3LnNjaWVuY2VzLnVuaXYtbmFudGVzLmZyL2xpbmEvYXRsL2JpYmxpb2dyYXBoeS9leHRfR1JBWklBREVJMDUiPkdSQVpJQURFSTA1PC9hPl0KICAgICAgICAgICAgICAgICAgICAgIEdyYXppYWRlaSwgVFIgOgogICAgICAgICAgICAgICAgICAgICBBc3BlY3QgT3JpZW50ZWQgTW9kZWwgV2VhdmVyIC4KICAgICAgICAgICAgICAgICAgICAgIE1hc3RlcnMgdGhlc2lzLCBGYWNoaG9jaHNjaHVsZSBWb3JhcmxiZXJnIEdtYkguIEluIHRoZSBEZWdyZWUgUHJvZ3JhbS48L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAyMDA1LgogICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly93d3cyLmFsdW1uaS5maC12b3JhcmxiZXJnLmFjLmF0L350Z3I4MzQ1L3RoZXNpcy9UaGVzaXMucGRmICI+KGxpbmspPC9hPiAKCQkJCTwvbGk+CiAgICAgICAgICAgICA8cC8+CgkJPC91bD4KCQk8cC8+CgoJPC9kaXY+CgkKRU9IVE1MOwoKCgkjIEdlbmVyYXRlIHRoZSB3ZWIgcGFnZQoJJEFwcC0+Z2VuZXJhdGVQYWdlKCR0aGVtZSwgJE1lbnUsICROYXYsICRwYWdlQXV0aG9yLCAkcGFnZUtleXdvcmRzLCAkcGFnZVRpdGxlLCAkaHRtbCk7Cj8+Cg==