PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPCFET0NUWVBFIGh0bWwKICBQVUJMSUMgIi0vL1czQy8vRFREIFhIVE1MIDEuMCBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL0RURC94aHRtbDEtdHJhbnNpdGlvbmFsLmR0ZCI+CjxodG1sPgo8aGVhZD4KPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIgaHJlZj0iLi4vLi4vY29tLmlibS5oZWxwLmRvYy9zd2dfaW5mb19jb21tb24uY3NzIiAvPgo8dGl0bGU+QWRkaW5nIGFuIGltcG9ydCBlbGVtZW50PC90aXRsZT4KPHNjcmlwdCBsYW5ndWFnZT0iSmF2YVNjcmlwdCI+CiAgICBmdW5jdGlvbiBwb3B1cF93aW5kb3coIHVybCwgaWQsIHdpZHRoLCBoZWlnaHQgKQogICAgewogICAgICBwb3B1cCA9IHdpbmRvdy5vcGVuKCB1cmwsIGlkLCAndG9vbGJhcj1ubyxzY3JvbGxiYXJzPW5vLGxvY2F0aW9uPW5vLHN0YXR1c2Jhcj1ubyxtZW51YmFyPW5vLHJlc2l6YWJsZT1ubyx3aWR0aD0nICsgd2lkdGggKyAnLGhlaWdodD0nICsgaGVpZ2h0ICsgJyxsZWZ0PSx0b3A9JyApOwogICAgICBwb3B1cC5mb2N1cygpOwogICAgfQo8L3NjcmlwdD48c2NyaXB0IGxhbmd1YWdlPSJKYXZhU2NyaXB0IiBzcmM9ImhlbHAvbGl2ZUhlbHAuanMiPjwvc2NyaXB0PjwvaGVhZD4KPGJvZHkgaWQ9InRhZGRpbXB0Ij48YSBuYW1lPSJ0YWRkaW1wdCI+PCEtLSAtLT48L2E+Cgo8aDEgY2xhc3M9InRvcGljdGl0bGUxIj5BZGRpbmcgYW4gaW1wb3J0IGVsZW1lbnQ8L2gxPgo8ZGl2PjxwPkFzIHNjaGVtYXMgYmVjb21lIGxhcmdlciwgaXQgaXMgb2Z0ZW4gZGVzaXJhYmxlIHRvIGRpdmlkZSB0aGVpcgpjb250ZW50IGFtb25nIHNldmVyYWwgc2NoZW1hIGRvY3VtZW50cyBmb3IgcHVycG9zZXMgc3VjaCBhcyBlYXNlIG9mIG1haW50ZW5hbmNlLApyZXVzZSwgYW5kIHJlYWRhYmlsaXR5LiBYTUwgc2NoZW1hIGRlZmluZXMgdHdvIGNvbnN0cnVjdHMgdG8gc3VwcG9ydCB0aGlzOiA8aT5pbmNsdWRlPC9pPiBhbmQgPGk+aW1wb3J0PC9pPi4KVGhlIGluY2x1ZGUgZWxlbWVudCBicmluZ3MgaW4gZGVmaW5pdGlvbnMgYW5kIGRlY2xhcmF0aW9ucyBmcm9tIHRoZSBpbmNsdWRlZApzY2hlbWEgaW50byB0aGUgY3VycmVudCBzY2hlbWEuIEl0IHJlcXVpcmVzIHRoZSBpbmNsdWRlZCBzY2hlbWEgdG8gYmUgaW4gdGhlCnNhbWUgdGFyZ2V0IG5hbWVzcGFjZSBhcyB0aGUgaW5jbHVkaW5nIHNjaGVtYS4gVGhlIGltcG9ydCBlbGVtZW50IGJlaGF2ZXMKaW4gYSBzaW1pbGFyIHdheSwgd2l0aCB0aGUgZXhjZXB0aW9uIHRoYXQgdGhlIGltcG9ydGVkIHNjaGVtYSBjYW4gY29tZSBmcm9tCmEgZGlmZmVyZW50IG5hbWVzcGFjZS48L3A+PGRpdiBjbGFzcz0ic2tpcHNwYWNlIj48cD5JbiB0aGUgWE1MIHNjaGVtYSBlZGl0b3IsIHlvdSBjYW4gYWRkIGFuIGltcG9ydCBlbGVtZW50IHRvIGFuClhNTCBzY2hlbWEuIEJlZm9yZSB5b3UgY2FuIGRvIHRoaXMsIHlvdSBtdXN0IGNyZWF0ZSBhbiBYTUwgc2NoZW1hIGFuZCBvcGVuCml0IGluIHRoZSBYTUwgc2NoZW1hIGVkaXRvciAoeW91IGNhbiBvcGVuIGFuIFhNTCBzY2hlbWEgaW4gdGhlIFhNTCBzY2hlbWEKZWRpdG9yIGJ5IGRvdWJsZS1jbGlja2luZyBpdCkuPC9wPgo8cD5Zb3UgY2FuIGFkZCBtdWx0aXBsZSBpbXBvcnQgZWxlbWVudHMKdG8gYW4gWE1MIHNjaGVtYSwgaG93ZXZlciwgcHJlZml4ZXMgYW5kIG5hbWVzcGFjZXMgaGF2ZSB0byB1bmlxdWUgYW1vbmdzdAp0aGUgaW1wb3J0ZWQgc2NoZW1hcy48L3A+CjxwPkFuIGltcG9ydCBlbGVtZW50IGlzIGFsd2F5cyBhZGRlZCB0byB0aGUgdG9wIG9mCnRoZSBzY2hlbWEgZmlsZSwgYXMgaXQgbXVzdCBhcHBlYXIgYXMgdGhlIGZpcnN0IGNoaWxkcmVuIG9mIHRoZSBzY2hlbWEgZWxlbWVudC6gPC9wPgo8cD5UaGUKZm9sbG93aW5nIGluc3RydWN0aW9ucyB3ZXJlIHdyaXR0ZW4gZm9yIHRoZSBSZXNvdXJjZSBwZXJzcGVjdGl2ZSwgYnV0IHRoZXkKd2lsbCBhbHNvIHdvcmsgaW4gbWFueSBvdGhlciBwZXJzcGVjdGl2ZXMuoDwvcD4KPHA+VG8gYWRkIGFuIGltcG9ydCBlbGVtZW50LApmb2xsb3cgdGhlc2Ugc3RlcHM6PC9wPgo8L2Rpdj4KPG9sPjxsaSBjbGFzcz0ic2tpcHNwYWNlIj48c3Bhbj5PcGVuIHlvdXIgWE1MIHNjaGVtYSBpbiB0aGUgWE1MIHNjaGVtYSBlZGl0b3IuPC9zcGFuPjwvbGk+CjxsaSBjbGFzcz0ic2tpcHNwYWNlIj48c3Bhbj5JbiB0aGUgT3V0bGluZSB2aWV3LCBzZWxlY3QgeW91ciBzY2hlbWEuPC9zcGFuPiBUaGUgZW50aXJlCnNjaGVtYSBhbmQgaXRzIGNvbnRlbnRzIHNob3VsZCBiZSBkaXNwbGF5ZWQgaW4gdGhlIEdyYXBoIHZpZXcuPC9saT4KPGxpIGNsYXNzPSJza2lwc3BhY2UiPjxzcGFuPkluIHRoZSBHcmFwaCB2aWV3LCByaWdodCBjbGljayBpbiB0aGUgPGI+RGlyZWN0aXZlczwvYj4gc2VjdGlvbgphbmQgY2xpY2sgPHNwYW4gY2xhc3M9InVpY29udHJvbCI+QWRkIEltcG9ydDwvc3Bhbj4uPC9zcGFuPjwvbGk+CjxsaSBjbGFzcz0ic2tpcHNwYWNlIj48c3Bhbj5JbiB0aGUgUHJvcGVydGllcyB2aWV3LCBjbGljayB0aGUgPGI+R2VuZXJhbDwvYj4gdGFiIGFuZCBjbGljawp0aGUgPHNwYW4gY2xhc3M9InVpY29udHJvbCI+TW9yZTwvc3Bhbj4gYnV0dG9uIHRvIHRoZSByaWdodCBvZiB0aGUgPHNwYW4gY2xhc3M9InVpY29udHJvbCI+U2NoZW1hCmxvY2F0aW9uPC9zcGFuPiBmaWVsZC48L3NwYW4+PC9saT4KPGxpIGNsYXNzPSJza2lwc3BhY2UiPjxzcGFuPklmIHlvdSB3YW50IHRvIGltcG9ydCBhbiBYTUwgc2NoZW1hIGxvY2F0ZWQgaW4gdGhlIHdvcmtiZW5jaCwgc2VsZWN0CnRoZSA8c3BhbiBjbGFzcz0idWljb250cm9sIj5Xb3JrYmVuY2ggcHJvamVjdHM8L3NwYW4+IHJhZGlvIGJ1dHRvbiBhbmQgY2xpY2sgPHNwYW4gY2xhc3M9InVpY29udHJvbCI+TmV4dDwvc3Bhbj4uIDwvc3Bhbj48b2wgdHlwZT0iYSI+PGxpPjxzcGFuPlNlbGVjdCB0aGUgc2NoZW1hIHlvdSB3YW50IHRvIGltcG9ydCBhbmQgY2xpY2sgPHNwYW4gY2xhc3M9InVpY29udHJvbCI+RmluaXNoPC9zcGFuPi48L3NwYW4+PC9saT4KPC9vbD4KPC9saT4KPGxpIGNsYXNzPSJza2lwc3BhY2UiPjxzcGFuPklmIHlvdSB3YW50IHRvIGltcG9ydCBhbiBYTUwgc2NoZW1hIGxvY2F0ZWQgb24gdGhlIFdlYiwgc2VsZWN0CnRoZSA8c3BhbiBjbGFzcz0idWljb250cm9sIj5IVFRQPC9zcGFuPiByYWRpbyBidXR0b24gYW5kIGNsaWNrIDxzcGFuIGNsYXNzPSJ1aWNvbnRyb2wiPk5leHQ8L3NwYW4+Ljwvc3Bhbj48b2wgdHlwZT0iYSI+PGxpIGNsYXNzPSJza2lwc3BhY2UiPjxzcGFuPlR5cGUgdGhlIFVSTCBvZiB0aGUgWE1MIHNjaGVtYSBhbmQgY2xpY2sgPHNwYW4gY2xhc3M9InVpY29udHJvbCI+RmluaXNoPC9zcGFuPi48L3NwYW4+IDxkaXYgY2xhc3M9Im5vdGUiPjxzcGFuIGNsYXNzPSJub3RldGl0bGUiPk5vdGU6IDwvc3Bhbj5BIGxvY2FsIGNvcHkgb2YgdGhlIHNjaGVtYSB3aWxsIG5vdCBiZSBzdG9yZWQgaW4gdGhlIHdvcmtiZW5jaC4KRXZlcnkgdGltZSB5b3UgdmFsaWRhdGUgeW91ciBzY2hlbWEsIHRoZSBzY2hlbWEncyBjb250ZW50cyB3aWxsIGJlIGNoZWNrZWQKZnJvbSB0aGUgVVJMIHlvdSBzcGVjaWZ5LjwvZGl2Pgo8L2xpPgo8L29sPgo8L2xpPgo8bGkgY2xhc3M9InNraXBzcGFjZSI+PHNwYW4+VGhlIFhNTCBzY2hlbWEgZWRpdG9yIHdpbGwgcmV0cmlldmUgdGhlIG5hbWVzcGFjZSBmb3IgdGhlIGltcG9ydGVkClhNTCBzY2hlbWEgZmlsZSBhbmQgZGlzcGxheSBpdCBhcyByZWFkLW9ubHkgaW4gdGhlIDxzcGFuIGNsYXNzPSJ1aWNvbnRyb2wiPk5hbWVzcGFjZTwvc3Bhbj4gZmllbGQuPC9zcGFuPjwvbGk+CjxsaSBjbGFzcz0ic2tpcHNwYWNlIj48c3Bhbj5JZiBuZWNlc3NhcnksIHR5cGUgYSB1bmlxdWUgcHJlZml4IGZvciB0aGlzIG5hbWVzcGFjZSBpbiB0aGUgPHNwYW4gY2xhc3M9InVpY29udHJvbCI+UHJlZml4PC9zcGFuPiBmaWVsZC48L3NwYW4+PC9saT4KPGxpIGNsYXNzPSJza2lwc3BhY2UiPjxzcGFuPkNsaWNrIHRoZSA8c3BhbiBjbGFzcz0idWljb250cm9sIj5Eb2N1bWVudGF0aW9uPC9zcGFuPiB0YWIgaWYgeW91IHdhbnQKdG8gcHJvdmlkZSBhbnkgaW5mb3JtYXRpb24gYWJvdXQgdGhpcyBpbXBvcnQgZWxlbWVudC48L3NwYW4+IFRoZSA8c3BhbiBjbGFzcz0idWljb250cm9sIj5Eb2N1bWVudGF0aW9uPC9zcGFuPiBwYWdlCmlzIHVzZWQgZm9yIGh1bWFuIHJlYWRhYmxlIG1hdGVyaWFsLCBzdWNoIGFzIGEgZGVzY3JpcHRpb24sIGFuZCB0aGUgPHNwYW4gY2xhc3M9InVpY29udHJvbCI+QXBwCkluZm88L3NwYW4+IHBhZ2UgY2FuIGJlIHVzZWQgdG8gcHJvdmlkZSBpbmZvcm1hdGlvbiBmb3IgYXBwbGljYXRpb25zLqA8L2xpPgo8L29sPgo8ZGl2IGNsYXNzPSJza2lwc3BhY2UiPjxwPk9uY2UgeW91IGhhdmUgYWRkZWQgYW4gaW1wb3J0IGVsZW1lbnQgdG8geW91ciBYTUwgc2NoZW1hLCB3aGVuCnlvdSBkZWZpbmUgbmV3IGVsZW1lbnRzLCBhdHRyaWJ1dGVzLCBjb21wbGV4IHR5cGVzLCBvciBzaW1wbGUgdHlwZXMgd2hlcmUKeW91IGNhbiBzcGVjaWZ5IHR5cGUgaW5mb3JtYXRpb24sIGFueSBkZWNsYXJhdGlvbnMgZnJvbSB0aGUgaW5jbHVkZWQgc2NoZW1hCndpbGwgYmUgYXZhaWxhYmxlIGluIHRoZSA8c3BhbiBjbGFzcz0idWljb250cm9sIj5UeXBlPC9zcGFuPiBsaXN0IGZvciB0aGUgZWxlbWVudCwKYXR0cmlidXRlLCBjb21wbGV4IG9yIHNpbXBsZSB0eXBlLjwvcD4KPC9kaXY+CjxkaXYgY2xhc3M9InNraXBzcGFjZSI+PC9kaXY+CjwvZGl2PgoKPGRpdj48cD48YiBjbGFzcz0icmVsdGFza3NoZCI+UmVsYXRlZCB0YXNrczwvYj48YnIgLz4KPGEgaHJlZj0iLi4vdG9waWNzL3RhZGRpbmNsLmh0bWwiIHRpdGxlPSJBcyBzY2hlbWFzIGJlY29tZSBsYXJnZXIsIGl0IGlzIG9mdGVuIGRlc2lyYWJsZSB0byBkaXZpZGUgdGhlaXIgY29udGVudCBhbW9uZyBzZXZlcmFsIHNjaGVtYSBkb2N1bWVudHMgZm9yIHB1cnBvc2VzIHN1Y2ggYXMgZWFzZSBvZiBtYWludGVuYW5jZSwgcmV1c2UsIGFuZCByZWFkYWJpbGl0eS4gWE1MIHNjaGVtYSBkZWZpbmVzIHR3byBjb25zdHJ1Y3RzIHRvIHN1cHBvcnQgdGhpczogaW5jbHVkZSBhbmQgaW1wb3J0LiBUaGUgaW5jbHVkZSBlbGVtZW50IGJyaW5ncyBpbiBkZWZpbml0aW9ucyBhbmQgZGVjbGFyYXRpb25zIGZyb20gdGhlIGluY2x1ZGVkIHNjaGVtYSBpbnRvIHRoZSBjdXJyZW50IHNjaGVtYS4gSXQgcmVxdWlyZXMgdGhlIGluY2x1ZGVkIHNjaGVtYSB0byBiZSBpbiB0aGUgc2FtZSB0YXJnZXQgbmFtZXNwYWNlIGFzIHRoZSBpbmNsdWRpbmcgc2NoZW1hLiBUaGUgaW1wb3J0IGVsZW1lbnQgYmVoYXZlcyBpbiBhIHNpbWlsYXIgd2F5LCB3aXRoIHRoZSBleGNlcHRpb24gdGhhdCB0aGUgaW1wb3J0ZWQgc2NoZW1hIGNhbiBjb21lIGZyb20gYSBkaWZmZXJlbnQgbmFtZXNwYWNlLiI+QWRkaW5nIGFuIGluY2x1ZGUgZWxlbWVudDwvYT48YnIgLz4KPGEgaHJlZj0iLi4vdG9waWNzL3RhZGRyZGZuLmh0bWwiIHRpdGxlPSJZb3UgY2FuIHVzZSB0aGUgcmVkZWZpbmUgbWVjaGFuaXNtIHRvIHJlZGVmaW5lIHNpbXBsZSBhbmQgY29tcGxleCB0eXBlcywgZ3JvdXBzLCBhbmQgYXR0cmlidXRlIGdyb3VwcyBvYnRhaW5lZCBmcm9tIGV4dGVybmFsIHNjaGVtYSBmaWxlcy4gTGlrZSB0aGUgaW5jbHVkZSBtZWNoYW5pc20sIHJlZGVmaW5lIHJlcXVpcmVzIHRoZSBleHRlcm5hbCBjb21wb25lbnRzIHRvIGJlIGluIHRoZSBzYW1lIHRhcmdldCBuYW1lc3BhY2UgYXMgdGhlIHJlZGVmaW5pbmcgc2NoZW1hLCBhbHRob3VnaCBleHRlcm5hbCBjb21wb25lbnRzIGZyb20gc2NoZW1hcyB0aGF0IGhhdmUgbm8gbmFtZXNwYWNlIGNhbiBhbHNvIGJlIHJlZGVmaW5lZC4iPkFkZGluZyBhIHJlZGVmaW5lIGVsZW1lbnQ8L2E+PGJyIC8+CjwvcD4KPHA+PGIgY2xhc3M9InJlbHJlZmhkIj5SZWxhdGVkIHJlZmVyZW5jZTwvYj48YnIgLz4KPGEgaHJlZj0iLi4vdG9waWNzL3JubXNwYy5odG1sIiB0aXRsZT0iIj5YTUwgbmFtZXNwYWNlczwvYT48YnIgLz4KPC9wPgo8L2Rpdj48cD4KCQkoQykgQ29weXJpZ2h0IElCTSBDb3Jwb3JhdGlvbiAyMDAwLCAyMDA1LiBBbGwgUmlnaHRzIFJlc2VydmVkLgo8L3A+CjwvYm9keT4KPC9odG1sPg==