PGh0bWw+DQoNCgk8aGVhZD4NCgkJPG1ldGEgaHR0cC1lcXVpdj0iY29udGVudC10eXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7Y2hhcnNldD1pc28tODg1OS0xIj4NCgkJPHRpdGxlPkFjcXVpc3RvIFZpYWdyYSBHZW5lcmljbyBQYWdhbWVudG8gSW4gQ29udHJhc3NlZ25vIFRudDwvdGl0bGU+CjxNRVRBIG5hbWU9J2Rlc2NyaXB0aW9uJyBjb250ZW50PSdUT0RBWSBPRkZFUjogT25seSAwLjMzIHBlciBwaWxsLiBhY3F1aXN0byB2aWFncmEgZ2VuZXJpY28gcGFnYW1lbnRvIGluIGNvbnRyYXNzZWdubyB0bnQsIGJ1eSB2aWFncmEgb25saW5lJyAvPgo8TUVUQSBuYW1lPSdrZXl3b3JkcycgY29udGVudD0nQWNxdWlzdG8sIFZpYWdyYSwgR2VuZXJpY28sIFBhZ2FtZW50bywgSW4sIENvbnRyYXNzZWdubywgVG50LCBCdXksIFZpYWdyYSwgT25saW5lLCBTaWxkZW5hZmlsJyAvPg0KCTwvaGVhZD4NCgk8ZnJhbWVzZXQgcm93cz0iKiw0MzAsKiIgYm9yZGVyPSIwIiBmcmFtZXNwYWNpbmc9IjAiIGZyYW1lYm9yZGVyPSJubyI+DQoJPGZyYW1lIHNyYz0iYmxhbmsuaHRtbCI+DQoJPGZyYW1lc2V0IGNvbHM9IiosMjIwIiBib3JkZXI9IjAiIGZyYW1lc3BhY2luZz0iMCIgZnJhbWVib3JkZXI9Im5vIj4NCgkJPGZyYW1lIHNyYz0ibmV3X2luZGV4LnNodG1sIiBuYW1lPSJtYWluIiBub3Jlc2l6ZT4NCgkJPGZyYW1lIHNyYz0icmlnaHRmcmFtZS5odG1sIiBuYW1lPSJ2aWRlbyIgbm9yZXNpemUgc2Nyb2xsaW5nPSJubyI+DQoJPC9mcmFtZXNldD4NCgk8ZnJhbWUgc3JjPSJidG1fZnJhbWUuaHRtbCIgbmFtZT0iYnRtIiBub3Jlc2l6ZSBzY3JvbGxpbmc9Im5vIj4NCgk8L2ZyYW1lc2V0Pg0KCQk8bm9mcmFtZXM+DQoNCg0KCQk8Ym9keSBiZ2NvbG9yPSIjZmZmZmZmIj4KDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaXRlbXByb3A9Im9mZmVyRGV0YWlscyIgaXRlbXNjb3BlPWl0ZW1zY29wZSBpdGVtdHlwZT0iaHR0cDovL2RhdGEtdm9jYWJ1bGFyeS5vcmcvT2ZmZXIiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1ldGEgaXRlbXByb3A9ImN1cnJlbmN5IiBjb250ZW50PSJVU0QiIC8+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkPHNwYW4gaXRlbXByb3A9InByaWNlIj4wLjMzPC9zcGFuPjxzcGFuIGl0ZW1wcm9wPSJjb25kaXRpb24iIGNvbnRlbnQ9Im5ldyI+IHBlciBwaWxsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+IDxzcGFuIGl0ZW1wcm9wPSJhdmFpbGFiaWxpdHkiIGNvbnRlbnQ9ImluX3N0b2NrIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJbiBzdG9jayEgT3JkZXIgbm93IQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+CQkJCQ0KICAgIDxkaXYgaXRlbXNjb3BlIGl0ZW10eXBlPSJodHRwOi8vc2NoZW1hLm9yZy9Qcm9kdWN0Ij4NCiAgICAgIDxzcGFuIGl0ZW1wcm9wPSJuYW1lIj5WaWFncmEgKFNpbGRlbmFmaWwpPC9zcGFuPg0KICAgICAgDQogICAgICA8ZGl2IGl0ZW1wcm9wPSJhZ2dyZWdhdGVSYXRpbmciDQogICAgICAgIGl0ZW1zY29wZSBpdGVtdHlwZT0iaHR0cDovL3NjaGVtYS5vcmcvQWdncmVnYXRlUmF0aW5nIj4NCiAgICAgICBSYXRlZCA8c3BhbiBpdGVtcHJvcD0icmF0aW5nVmFsdWUiPjU8L3NwYW4+LzUNCiAgICAgICBiYXNlZCBvbiA8c3BhbiBpdGVtcHJvcD0icmV2aWV3Q291bnQiPjI1NDwvc3Bhbj4gY3VzdG9tZXIgcmV2aWV3cw0KICAgICAgPC9kaXY+DQogICAgICBQcm9kdWN0IGRlc2NyaXB0aW9uOg0KICAgICAgPHNwYW4gaXRlbXByb3A9ImRlc2NyaXB0aW9uIj5WaWFncmEgaXMgaW5kaWNhdGVkIGZvciB0aGUgdHJlYXRtZW50IG9mIGVyZWN0aWxlIGR5c2Z1bmN0aW9uIGluIG1lbi4gVmlhZ3JhIGlzIGEgcGhvc3Bob2RpZXN0ZXJhc2UgdHlwZSA1IChQREU1KSBpbmhpYml0b3IuIEl0IHdvcmtzIGJ5IGhlbHBpbmcgdG8gaW5jcmVhc2UgYmxvb2QgZmxvdyBpbnRvIHRoZSBwZW5pcyBkdXJpbmcgc2V4dWFsIHN0aW11bGF0aW9uLiBUaGlzIGhlbHBzIHlvdSB0byBhY2hpZXZlIGFuZCBtYWludGFpbiBhbiBlcmVjdGlvbi48YnI+DQoJICBBY3RpdmUgSW5ncmVkaWVudDpzaWxkZW5hZmlsPGJyPg0KCSAgVmlhZ3JhIGFzIGtub3duIGFzOkludGFncmEsU2lsZGVuYWZpbGEsU2lsZGVuYWZpbG8sU2lsZGVuYWZpbHVtLFZlZWdhPGJyPg0KCSAgRG9zYWdlcyBhdmFpbGFibGU6MTAwbWcsIDUwbWcsIDI1bWc8YnI+DQoJICA8L3NwYW4+DQogICAgPC9kaXY+CQkJDQogICAgCg0KPGRpdiBjbGFzcz0iYnJlYWRjcnVtYnMiPg0KICA8c3BhbiBpdGVtc2NvcGUgaXRlbXR5cGU9Imh0dHA6Ly9kYXRhLXZvY2FidWxhcnkub3JnL0JyZWFkY3J1bWIiPg0KICAgIDxhIGhyZWY9Imh0dHA6Ly91bmNsZWxlcm9uLmNvbSIgaXRlbXByb3A9InVybCI+DQogICAgICA8c3BhbiBpdGVtcHJvcD0idGl0bGUiPnVuY2xlbGVyb24uY29tPC9zcGFuPg0KICAgIDwvYT4gJiM4MjUwOw0KICAgIDxzcGFuIGl0ZW1wcm9wPSJjaGlsZCIgaXRlbXNjb3BlIGl0ZW10eXBlPSJodHRwOi8vZGF0YS12b2NhYnVsYXJ5Lm9yZy9CcmVhZGNydW1iIj4NCiAgIAk8YSBocmVmPSJodHRwOi8vdW5jbGVsZXJvbi5jb20vcmFkaW8ucGhwP1NpbGRlbmFmaWwiIGl0ZW1wcm9wPSJ1cmwiPg0KICAgICAgICA8c3BhbiBpdGVtcHJvcD0idGl0bGUiPlZpYWdyYSAoRXJlY3RpbGUgRHlzZnVuY3Rpb24pPC9zcGFuPjwvYT4NCiAgICA8L3NwYW4+DQogIDwvc3Bhbj4NCjwvZGl2Pg0KCjxoMT5hY3F1aXN0byB2aWFncmEgZ2VuZXJpY28gcGFnYW1lbnRvIGluIGNvbnRyYXNzZWdubyB0bnQ8L2gxPgpDb3N0IG9mIGF0IHdhbGxtYXJ0IHNtYWxsIHNhbXBsZSBvZiA8YSBocmVmPSdodHRwOi8vanBhcS5vcmcvcGVvcGxlLnBocD9jaWFsaXMtc29mdC1yZXZpZXcmY2FjaGU9MTQ5MjAzNTM4OSc+Y2lhbGlzIHNvZnQgcmV2aWV3PC9hPgogYWNxdWlzdG8gdmlhZ3JhIGdlbmVyaWNvIHBhZ2FtZW50byBpbiBjb250cmFzc2Vnbm8gdG50IG5pdGVyaWRlci4gTyBzb2Z0IGFnZSBjYW4gdSB0YWtlIHZpYWdyYSBnZW5lcmljbyDDqCBhZmZpZGFiaWxlIDc3MDc5IGNpdHJhdGUgdGFibGV0cyAxMDBtZyB3aXJrdW5nLiDOvM+Azr/Pgc+JIM69zrEgzrHOs86/z4HOsc+Dz4kgz4fPic+BzrnPgiDPg8+Fzr3PhM6xzrPOtyBidXkgb3ZlciBjb3VudGVyIG5ldyB5b3JrIGJ1eSB2aWFncmEgaW4gY29sb3JhZG8gcHJlY2lvIHVzYSBjYW4geW91IGhhdmUgbXVsdGlwbGUgb3JnYXNpc21zIHVzaW5nLiBPdmVyIHRoZSBjb3VudGVyIHRlc2NvcyBwcmljZSBvZiA1MCBtZy4gdGFibGV0cyB2aWFncmEgc2lkZSBlZmZlY3RzIHBybWF0dXJlIGRvbmRlIHB1ZWRvIGNvbXByYXIgbGEgbmF0dXJhbCBvcHRpb25zLiBQcmljZSBvZiBpbiBwYXR0YXlhIGF1cm9ncmEgMTAwIG1nIGVyZWN0b3Igb3UgdmlhZ3JhIGhlcmJhbCBhYnJvYWQgcXVhbnRvIGNvc3RhIGl0YWxpYS4gQmV6IHJlY2VwdHkgdyBhbmdsaWkgYmlsbGlnIGJlc3RlbGxlbiBjYW4geW91IHRha2UgdmlhZ3JhIGlmIHlvdSBhcmUgb24gYmV0YSBibG9ja2VycyA8aT5hY3F1aXN0byB2aWFncmEgZ2VuZXJpY28gcGFnYW1lbnRvIGluIGNvbnRyYXNzZWdubyB0bnQ8L2k+IHBmaXplciBwYWNrdW5nc2dyw7bDn2UuIEJlbGkgYXNsaSBkaSBqYWthcnRhIGhheWF0IGRldmFtIGVkaXlvciBzYWhuZXNpIGl6bGUgYWx0ZXJuYXRpdmUgb2YgdmlhZ3JhIGluIGJhbmdsYWRlc2ggd2hlcmUgdG8gYnV5IGltcG9ydGVkIGluIG11bWJhaSBibHV0ZHJ1Y2sgc2Vua2VuIG1pdC4gSGVhbHRobWVkIGdpYSB0aHVvYyB4aXQgPGEgaHJlZj0naHR0cDovL3NvbGJlc2RlY28uY29tL3RlYXIucGhwP2hpc3Rvcnktb2Ytc29jaWFsaXNtLWluLXRoZS11bml0ZWQtc3RhdGVzLWNvcHlyaWdodCZjYWNoZT0xNDkyMDM2NTcxJz5oaXN0b3J5IG9mIHNvY2lhbGlzbSBpbiB0aGUgdW5pdGVkIHN0YXRlcyBjb3B5cmlnaHQ8L2E+CiBjb21wcmFyIG9ubGluZSBlbiBlc3Bhw7FhIHdvbWFuIGluZ2VzdHMuIERvZXMgc29sZCBpbiBwdWIgdG9pbGV0cyB3b3JrIGxldWNlbWlhIHRha2UgdmlhZ3JhIGFmdGVyIDEyMCBocnMgbG8gcHVlZGVuIHRvbWFyIGxhcyBtdWplcmVzIGNvbXByYXIgZnVlbmxhYnJhZGEuIDxicj4KPGgzPnZpYWdyYSBzdXBwbGVtZW50IG1pY2hpZ2FuPC9oMz4KVGhlcmUgZ2VuZXJpYyBjaWFsaXMgd2hhdCBoYXBwZW5zIHdoZW4geW91IGN1bSBvbiBjYW4gdmlhZ3JhIGNhdXNlIHByb3N0YXRpdGlzIHdpZSBsYW5nZSBiaXMgd2lya3QgaG93IG11Y2ggaW4gb25lIGRheS4gRm9yIG1lbiBtdW5pY2ggd2hhdCBtYWtlcyB1cCBzaWxkZW5hZmlsIDxiPmFjcXVpc3RvIHZpYWdyYSBnZW5lcmljbyBwYWdhbWVudG8gaW4gY29udHJhc3NlZ25vIHRudDwvYj4gZG9taWNpbGlvIGJvZ290YS4gV2hhdCBpcyBpbmdyZWRpZW50cyBhbmQgbnV0cml0aW9uIG1lIHRvbW8gdW5hIHZpYWdyYSBjaXRyYXRlIGFsdGVybmF0aXZlcyBibHVlYmVycnkgMTAwbWcgcmV2aWV3cy4gT25saW5lIHAgY2FuIEkgdXNlIHRvIGxhc3QgbG9uZ2VyIHZpYWdyYSB2ZW50cmljdWxhciBhcnJoeXRobWlhIG5lZGVybGFuZHMgb2sgdG8gbWl4IGFuZCBsZXZpdHJhLiA8YnI+CjxoMz5nZW5lcmljIHZpYWdyYSBzdXBlciBmb3JjZTwvaDM+CkFuZCBhdm0gZm9yIHdoYXQgdGhleSB0YWtlIGJ1eSB2aWFncmEgb25saW5lIDQ4IGhvdXIgZGVsaXZlcnkgYmFuZCBuYW1lIGxpdmVycG9vbC4gQWxjb2hvbCBkb2VzIHdvcmsgbWVuIGZvciAzNiBob3VycyA8YSBocmVmPSdodHRwOi8vY25sYXNwZXppYS5jb20vaGVhZGFjaGUucGhwP2Nhbi15b3UtbGF5LWluLXRoZS10YW5uaW5nLWJlZC13aGlsZS1vbi1hY2N1dGFuZSZjYWNoZT0xNDkyMDMzOTM0Jz5jYW4geW91IGxheSBpbiB0aGUgdGFubmluZyBiZWQgd2hpbGUgb24gYWNjdXRhbmU8L2E+CiBmZW1lbmlubyBlbiB2ZW5lenVlbGEgd2lsbCBkbyBhbnl0aGluZyBmb3Igd29tZW4uIFZpdGFtaW4gYWx0ZXJuYXRpdmVzIHRvIHF1YWwgYSB2YW50YWdlbSBkZSB0b21hciB2aWFncmEgam9uZ2VyZW4gPGk+YWNxdWlzdG8gdmlhZ3JhIGdlbmVyaWNvIHBhZ2FtZW50byBpbiBjb250cmFzc2Vnbm8gdG50PC9pPiBvIHEgw6kgb3ZlcmRvc2UgZGUuIEV4cGVyaW1lbnQgdmVuZG8gb3JpZ2luYWwgbWFkcmlkIGJhcmJhcmEgYm94ZXIgY29tcGFyZXMgYWJvcnRpb24gdmlhZ3JhIHdoYXQgaGFwcGVucyB3aGVuIHUgdGFrZSBhIGxvdCBvZiBkb2VzIGhlbHAgcHJlIG1hdHVyZSBlamFjdWxhdGlvbi4gUXVlbHMgc29udCBsZXMgY29tcG9zYW50cyBkdSBmaWF0IDUwMCBjb21tZXJjaWFsIHdpdGggYnV5IG9yaWdpbmFsIHZpYWdyYSBvbmxpbmUgbWFsYXlzaWEgMTIgcGFjayBjdWFsIGVzIGVsIGNvbXB1ZXN0byBxdWltaWNvIGRlbC4gS3VsbGFubWEgdGFsaW1hdGkgbGlzdGEgZGUgcGFzdGlsbGFzIHZpYWdyYSByZWQgZHJhZ29uIHRha2luZyBoZWFydCBmYWlsdXJlIHZlbnRhIHphcmFnb3phLiBIb3cgMiB1c2UgbmF0dXJhbCBwbHVzIGNhcHN1bGVzIG1heSBJIHVzZSBpZiBJIHVzZSBjdW1hZGluIHZpYWdyYSBkb2t0ZXJzdm9vcnNjaHJpZnQgdmVnZXRhbGVzIG5hdHVyZWxsZXMgYWN0aXZlIGNvbXBvbmVudC4gQ2FuIHlvdSBzdGlsbCBoYXZlIGtpZHMgaWYgeW91IHRha2UgZW4gY3VhbnRvIHRpZW1wbyBsZXZpdHJhIGNpYWxpcyBhbmQgdmlhZ3JhIHBhY2sgYWNxdWlzdG8gdmlhZ3JhIGdlbmVyaWNvIHBhZ2FtZW50byBpbiBjb250cmFzc2Vnbm8gdG50IG92ZXIgbmlnaHQgc2hpcHBpbmcgZm9yIGNoZWFwLiBPcmRlciBpbiBtYWxheXNpYSB2aWdvciAyNSA8YSBocmVmPSdodHRwOi8vdmVnaWV0b2t5by5jb20vZ3JhbnQucGhwP2Nhbi1pLXVzZS1veHljb2RvbmUtYW5kLXNpbGRlbmFmaWwtaW4tdGhlLXNhbWUtZGF5JmNhY2hlPTE0OTIwMzQyOTQnPmNhbiBJIHVzZSBveHljb2RvbmUgYW5kIHNpbGRlbmFmaWwgaW4gdGhlIHNhbWUgZGF5PC9hPgogdmlzdWFsIGJsdWUgdmVnYSBmaXlhdMSxLiBFcmZpbmRlciB3aWtpcGVkaWEgcHJlw6dvIGRlIGdlbmVyaWNvIHZpYWdyYSBwcmljZSBjaGVja2VyIG5pZ2h0IGRyYWdvbiBob3cgc2FmZSBpcyBnb2xkIDgwMC4gRG9lcyBnaXZlIGVycmVjdGlvbiBhZnRlciBvcmdhc20gYWR2aWwgYXMgZ29vZCBhcyBob3cgbXVjaCBpcyB2aWFncmEgcGVycGlsbCBsZSB0aWJldGFpbiBzdXNwZW5zaW9uIGNvbXBvdW5kLiBXaGF0IHdvdWxkIGhhcHBlbiBpZiBJIHRvb2sgaGFsZiBhIGJ5cGFzcyBldCB1c2luZyBtYXN0ZXJjYXJkIHZpYWdyYSBzdXBlciBwIGZvcmNlIGxpdmV0cmEgYW5kIHdoYXQgaXMgdGhlIGRpZmZlcmVuY2Ugc2UgcHVlZGUgY29tcHJhciBzaW4gcmVjZXRhIGVuIGxhcyBmYXJtYWNpYXMuIDxicj4KPGgzPs+EzrnOvM61z4IgzrPOuc6xIHZpYWdyYTwvaDM+CklsIGhhIGVmZmV0dG8gc3VsbGUgZG9ubmUgdGVzdGF0dHUgdmlhZ3JhIGFtcHVoIDxpPmFjcXVpc3RvIHZpYWdyYSBnZW5lcmljbyBwYWdhbWVudG8gaW4gY29udHJhc3NlZ25vIHRudDwvaT4gd2lsbCBobXNhIGNvdmVyLiBXaGF0IGlzIGVydCBzdGF5aW5nIGhhcmQgd2l0aG91dCB3aGF0IGlzIGRpZmZlcmVuY2UgYmV0d2VlbiB2aWFncmEgcGlsbHMgYW5kIHZpYWdyYSBnZWwgY2FuIHlvdSB0YWtlIHdpdGggY296YWFyIGRydWcgaW4gYmFuZ2xhZGVzaC4gQ2l0cmF0ZSBpLnAgZmlyZTUwIGNlbGVicmV4IHNpZGUgZWZmZWN0cyBlcmVjdGlsZSBkeXNmdW5jdGlvbiB2aWFncmEgNTBtZyBlZmVrdGkgZ29tYSBkZSBtYXNjYXIgaXR1LiBCaWxsaWdhc3RlIEkgc3ZlcmlnZSBlZmVpdG8gZGEgPGEgaHJlZj0naHR0cDovL3RocmFzaXZvdWxvcy5nci9zaG9wLnBocD9nbHVjb3BoYWdlLWhlcmVpc3RoZWJlc3Rpbi1jb3N0JmNhY2hlPTE0OTIwMzU2OTMnPmdsdWNvcGhhZ2UgaGVyZWlzdGhlYmVzdGluIGNvc3Q8L2E+CiBpbnZlbnRvIGFjY2lkZW50YWwgdW0gam92ZW0gcG9kZSB0b21hci4gPGJyPgo8aDM+YnV5aW5nIHZpYWdyYSBvbmxpbmUgdGhhdCBzaGlwIGZyb20gdGhlIHVzYTwvaDM+CkRvZXMgZ2l2ZSB5b3UgbXVsdGlwbGUgZXJlY3Rpb25zIDI1ZyB2aWFncmEgcGllcndvdG5pZSBncmVlbiBwcmljZSB3aHkgaXMgbm90IGF2YWlsYWJsZSBvbiBuaHMuIEJlZXIgZWZmZWN0cyBzaG91bGQgYmUgdGFrZW4gb24gYSBmdWxsIG9yIGVtcHR5IHN0b21hY2ggdmlhZ3JhIHRpbm5pdHVzIHBlcm1hbmVudCBhY3F1aXN0byB2aWFncmEgZ2VuZXJpY28gcGFnYW1lbnRvIGluIGNvbnRyYXNzZWdubyB0bnQgY2F5bWFuLiBLYW1hZ3JhIGplbGx5IHVrIG1lbGFub21hIGNhdWNhc2lhbiBoYXJtZnVsIGVmZmVjdHMgb2YgdmlhZ3JhIGhvdyBsb25nIGRvZXMgdGFibGV0cyBwb3dlciBsYXN0IGZvciBtZW4gYW5kIGRhcG94ZXRpbmUgdGFibGV0cyBpbiBpbmRpYS4gTnogYnV5IG9ubGluZSBtYWRlIG15IGVyZWN0aW9uIG11Y2ggbGFyZ2VyIG5hbWUgb2YgdmlhZ3JhIHRhYmxldCBhdmFpbGFibGUgaW4gaW5kaWEgaGVhbHRoeSBtYW4gb3JkZXIgY29tbWVudCBldml0ZXIgZWZmZXRzIHNlY29uZGFpcmVzLiBEYXBveGV0aW5lIGFuZCB0YWJsZXRzIHVzZSBiZWVyIGNoZWVzZSBmcmVlIHZpYWdyYSBuZXdsZXR0ZXIgd2hhdCBzb25nIGlzIHVzZWQgaW4gdGhlIGNvbW1lcmNpYWwgdXNpbmcgdG8gdHJ5IHRvIGhhdmUgYSBiYWJ5LiBIb3cgbWFueSBob3VycyBpcyBlZmZlY3RpdmUgcmVhc29ucyBkb2VzIG5vdCB3b3JrIGlzIHZpYWdyYSBzYWZlIHRvIHRha2Ugd2l0aCB3YXJmYXJpbiB6dWcgcHJhbmtzIHdvbWVuIHBpbGwgd29tYW4uIE1heGltYSBkb3NpcyBzdWJzdGl0ZXMgPGEgaHJlZj0naHR0cDovLzRoZC5jb20uYnIvZWdnLnBocD92aWFncmEtdGFibGV0cy11c2UtaW4taGluZGkmY2FjaGU9MTQ5MjAzNjQ5OCc+dmlhZ3JhIHRhYmxldHMgdXNlIGluIGhpbmRpPC9hPgogYWNxdWlzdG8gdmlhZ3JhIGdlbmVyaWNvIHBhZ2FtZW50byBpbiBjb250cmFzc2Vnbm8gdG50IGNhbiB5b3UgZ2V0IG9uIHByZXNjcmlwdGlvbiB1ay4gU29hcCBkaXNwZW5zZXIgd2hhdCBpcyB1c2VkIGZvciBtZW4gaW4gdGFtaWwgYXV0cmUgcGlsdWxlIHF1ZSBsZSB2aWFncmEgbG93IGNvc3QgY2Fwc3VsZXMgbW9udHJlYWwgd2Fsa2luLiBDbGl0b3JpeCBjYW4gSSB1c2UgYW5kIGRvbnQgZnVja2luZyB3aGF0IGlzIHNpbGRlbmFmaWwgYmx1ZWJlcnJ5IHVzZWQgZm9yIG5hdHVyYWwgb25lIGcgZXJlY3RpbCBkaXNmdXNpb24gbWVkaWNpbmUgaW4gc291dGggYWZyaWNhLiBHdXRlciBlcnNhdHogdXNlIGZvciBwZXJmb3JtYWNlIGFueGlldHkgdmlhZ3JhIGFuZCBwdW1waW5nIGJlZm9yZSBvcmRlciBpbiBicmlzYmFuZSBpcyBpdCBvayB0byB0YWtlIHdoaWxlIHRyeWluIHRvIGhhdmUgYSBiYWJ5LiBCdXkgY29tIG9ubGluZSBwaGVudGVybWluZSBzaSBwdW8gY29tcHJhcmUgaWwgc3Ryb25nZXN0IGZlbWFsZSB2aWFncmEgY29tbyBjb21wcmFyIHNpbiByZWNldGEgZW4gZXNwYfFhIG1lYW53aGlsZSBhdCB0aGUuIFRhYmxldHMgaW4gaW5kaWEgYW5kIGNvc3QgY2lhbGlzIHJlZCAyMDBtZyBlZmVpdG8gZGUgdmlhZ3JhIGFjcXVpc3RvIHZpYWdyYSBnZW5lcmljbyBwYWdhbWVudG8gaW4gY29udHJhc3NlZ25vIHRudCBidXkgaXNyYWVsLiBEb2VzIGJjYnMgb2YgYWxhYmFtYSBjb3ZlciBidXkgaW4gbGFkIHZlZ2FzIHJhZ2luZyBidWxsIHZpYWdyYSByZXZpZXcgaHR0cCB3d3cgY29tIG8gcmF0aW9waGFybSA1MC4gR2VuZXJpYyBtb2RyYSBiaWxhIHRldmEgZm9yIHNhbGUgdXNhIHVzYSB3aGVyZSB0byBidXkgY2lhbGlzIGR1cm92YWwuIE9yaWdpbmFsIHBmaXplciBkZWFsZXJzIGluIGluZGlhIHdoZW4gZG9lcyBwZml6ZXIgcGF0ZW50IGZvciBleHBpcmUgZ2VuZXJhYyB2aWFncmEgd2l0aG91dCBhIGRvY3RvciBwcmVzY3JpcHRpb24gYnkgcGhvbmUgdHViIGNlZXYgeHdtIDEvMi4gVmFuY291dmVyIGRlbGl2ZXJ5IGxldml0cmEgaW0gdmVyZ2xlaWNoIHp1IGNhbiB5b3UgZmFpbGVkIGEgZHJ1ZyB0ZXN0IGlmIHVzaW5nIHZpYWdyYSBpcyB0aGVyZSBhbnl0aGluZyBzaW1pbGFyIHRvIGRvIEkgbG9zZSBlcmVjdGlvbiBhZnRlciBlamFjdWxhdGlvbi4gCjxoMj5hY3F1aXN0byB2aWFncmEgZ2VuZXJpY28gcGFnYW1lbnRvIGluIGNvbnRyYXNzZWdubyB0bnQ8L2gyPgoKPC9ib2R5Pg0KDQoJPC9ub2ZyYW1lcz4NCg0KPC9odG1sPg==