|
VGhlICBBbmFseXNpcyAgb2YgTFNEJ3MgQnVmZmVyIE92ZXJydW4gaW4gV2luZG93cyBSUEMgSW50 ZXJmYWNlDQpBdXRob3I6Rmxhc2hza3kNCnNpdGU6d3d3Lnhmb2N1cy5vcmcgV1dXLlZFTlVTVEVD SC5DT00uQ04gV1dXLlNIT1BTS1kuQ09NDQpFbWFpbDpmbGFzaHNreUB4Zm9jdXMub3JnDQpUcmFu c2xhdG9yOkJlbmp1cnJ5IA0KRW1haWw6QmVuanVycnlAeGZvY3VzLm9yZw0KQ29kZSBieSBGbGFz aHNreSBhbmQgQmVuanVycnkNCg0KDQpodHRwOi8vd3d3Lnhmb2N1cy5vcmcvZG9jdW1lbnRzLzIw MDMwNy8yLmh0bWwNCg0KRm9yZXdvcmQNCk9uIEp1bCAxNnRoLCAyMDAzLExTRCBwdWJsaXNoZWQg dGhhdCB0aGV5IGhhZCBkaXNjb3ZlcmVkIGEgY3JpdGljYWwgc2VjdXJpdHkgdnVsbmVyYWJpbGl0 eSBpbiBhbGwgcmVjZW50IHZlcnNpb25zIG9mIE1pY3Jvc29mdCBvcGVyYXRpbmcgc3lzdGVtcy4g VGhlIHZ1bG5lcmFiaWxpdHkgYWZmZWN0cyBkZWZhdWx0IGluc3RhbGxhdGlvbnMgb2YgV2luZG93 cyBOVCA0LjAsIFdpbmRvd3MgMjAwMCwgV2luZG93cyBYUCBhcyB3ZWxsIGFzIFdpbmRvd3MgMjAw MyBTZXJ2ZXIuQnV0IHRoZXkgZGlkbid0IHB1Ymxpc2ggY29kZXMgb3IgYW55IHRlY2huaWNhbCBk ZXRhaWxzLkZvciBhbmFseXNpbmcgYW5kIGV4cGxvaXQgdGhlIHZ1bG5lcmFiaWxpdHksTWVtYmVy cyBvZiBYZm9jdXMgaGF2ZSByZXNlYXJjaGVkIHRoZSAgcHJvYmxlbSBhbmQgcmVhZCB0aGUgY29k ZSBkYXkgYWZ0ZXIgbmlnaHQuVGhyb3VnaCB0aGUgcHJvY2Vzcyx3ZSBmaW5kIHRoZSAiTWljcm9z b2Z0IFdpbmRvd3MgMjAwMCBSUEMgRENPTSBJbnRlcmZhY2UgRE9TIEFORCAgUHJpdmlsZWdlIEVz Y2FsYXRpb24gVnVsbmVyYWJpbGl0eSIsYW5kIG5vdyB3ZSBoYXZlIGdvdHRvbiB0aGUgcmVhc29u IG9mIHZ1bG5lcmFiaWxpdHkgZm91bmQgYnkgTFNELldlIHRoYW5rcyBhbGwgbWVtYmVycyBvZiB4 Zm9jdXMgYW5kIHl1YW5nZSxFWUFTLElQWE9ESSx0aGVzZSBndXlzIGdhdmUgdXMgbXVjaCBoZWxw LkFuZCBhdCB0aGUgc2FtZSB0aW1lLCB3ZSBhZG1pcmUgTFNEIGZvciB0aGVpciBicmlnaHRuZXNz Lg0KDQpBbmFseXNpcw0KDQpJbiBmYWN0LE1TMDMtMDI2IGZpeCB0d28gdnVsbmVyYWJpbGl0aWVz LG9uZSBpcyB0aGUgbG9jYWwgc3RhY2sgb3ZlcmZsb3cgYW5kIHRoZSBvdGhlciBpcyByZW1vdGUg c3RhY2sgb3ZlcmZsb3cgLlRoZXkgIGJvdGggcmVzdWx0IGZyb20gdGhlIHNhbWUgaW50ZXJmYWNl LHRoZSBpbXByb3BlciBBUEkgaXMgZm9sbG93aW5nOiANCkhSRVNVTFQgQ29HZXRJbnN0YW5jZUZy b21GaWxlKA0KICBDT1NFUlZFUklORk8gKiBwU2VydmVySW5mbywgDQogIENMU0lEICogcGNsc2lk LA0KICBJVW5rbm93biAqIHB1bmtPdXRlciwNCiAgRFdPUkQgZHdDbHNDdHgsDQogIERXT1JEIGdy Zk1vZGUsDQogIE9MRUNIQVIgKiBzek5hbWUsDQogIFVMT05HIGNtcSwNCiAgTVVMVElfUUkgKiBy Z21xUmVzdWx0cw0KKTsNCg0KDQpUaGUgc2l4dGggUGFyYW1ldGVyIGlzIHN6TmFtZSAsSW4gTVNE TiBpdCBpcyBzYWlkOiBGaWxlIHRvIGluaXRpYWxpemUgdGhlIG9iamVjdCB3aXRoIHVzaW5nIElQ ZXJzaXN0RmlsZTo6TG9hZC4gTWF5IG5vdCBiZSBOVUxMLiBUaGlzIHBhcmFtZXRlciB3aWxsIHJl c3VsdCBpbiBidWZmIG92ZXJmbG93Lg0KaHIgPSBDb0dldEluc3RhbmNlRnJvbUZpbGUocFNlcnZl ckluZm8sTlVMTCwwLENMU0NUWF9SRU1PVEVfU0VSVkVSLFNUR01fUkVBRFdSSVRFLEwiQzpcXDEy MzQ1NjExMTExMTExMTExMTExMTExMTExMTExMTEuZG9jIiwxLCZxaSk7DQoNCldoZW4gdGhlIGZp bGVuYW1lIGlzIHRvbyBsb25nICx0aGUgd2luZG93cyB3aWxsIHByb2R1Y2UgYSBsb2NhbCBidWZm IHZvZXJmbG93LGJlY2F1c2UgdGhlIEdldFBhdGhGb3JTZXJ2ZXIgZnVuY3Rpb24gb2YgUlBDU1Mg b25seSBoYXMgMHgyMjAgc3BhY2UuIGhvd2V2ZXIgdGhlIEFQSSBjaGVja3MgdGhlIGZpbGUgaW4g bG9jYWwgZmlyc3QgLGFuZCB3ZSBjYW4ndCBjcmVhdGUgYSBmaWxlIHdoaWNoIGZpbGVuYW1lIGlz IGxvbmcgdGhhbiAweDIyMC5TbyB3ZSBjYW4ndCB1c2UgdGhpcyBBUEkgdG8gZXhwb2l0LCBidXQg d2UgY2FuIHVzZSBmdWN0aW9uIG9mIExQQyBieSBjb25zdHJ1Y3RpbmcgcGFja2V0IC4gIEhlcmUg d2Ugb25seSBmb2N1cyBvbiByZW1vdGUgc3RhY2sgb3ZlcmZsb3c6KQ0KDQpBZnRlciB0aGUgY2xp ZW50IHRyYW5zZmVyIHRoZSBQYXJhbWV0ZXIgdG8gdGhlIHNlcnZlciwgdGhlIHNlcnZlciB3aWxs IHRyYW5zbGF0ZSBpdCB0byBmb3JtYXQgYXMgZm9sbG93aW5nOg0KTKGwXFxzZXJ2ZXJuYW1lXGMk XDEyMzQ1NjExMTExMTExMTExMTExMTExMTExMTExMTEuZG9jIi4NClRoZW4gdGhlIHNlcnZlciB3 aWxsIGdldCB0aGUgc2VydmVybmFtZSBmaXJzdCxCdXQgaGVyZSBpcyB3cm9uZywgdGhlIHdpbmRv d3MgRG9lcyBub3QgY2hlY2sgdGhlIHBhcmFtZXRlcixvbmx5IGFzc2lnbnMgdGhlIHN0YWNrIG9m IDB4MjAgLCAweDIwIGlzICBNQVggIGxlbmd0aCBvZiBORVRCSU9TIG5hbWUuVGhlbiBidWZmIG92 ZXJmbG93IGNvbWVzIGludG8gYmVpbmcuDQp0aGUga2V5IGNvZGUgaXMgbGlzdCBhcyBmb2xsb3dp bmc6DQoNCg0KR2V0UGF0aEZvclNlcnZlcqO6DQoudGV4dDo3NjE1NDNEQSAgICAgICAgICAgICAg ICAgcHVzaCAgICBlYnANCi50ZXh0Ojc2MTU0M0RCICAgICAgICAgICAgICAgICBtb3YgICAgIGVi cCwgZXNwDQoudGV4dDo3NjE1NDNERCAgICAgICAgICAgICAgICAgc3ViICAgICBlc3AsIDIwaCAg PC0tLS0tdGhlIGxlbmd0aCBpcyBvbnkgMHgyMA0KLnRleHQ6NzYxNTQzRTAgICAgICAgICAgICAg ICAgIG1vdiAgICAgZWF4LCBbZWJwK2FyZ180XQ0KLnRleHQ6NzYxNTQzRTMgICAgICAgICAgICAg ICAgIHB1c2ggICAgZWJ4DQoudGV4dDo3NjE1NDNFNCAgICAgICAgICAgICAgICAgcHVzaCAgICBl c2kNCi50ZXh0Ojc2MTU0M0U1ICAgICAgICAgICAgICAgICBtb3YgICAgIGVzaSwgW2VicCtoTWVt XQ0KLnRleHQ6NzYxNTQzRTggICAgICAgICAgICAgICAgIHB1c2ggICAgZWRpDQoudGV4dDo3NjE1 NDNFOSAgICAgICAgICAgICAgICAgcHVzaCAgICA1Q2gNCi50ZXh0Ojc2MTU0M0VCICAgICAgICAg ICAgICAgICBwb3AgICAgIGVieA0KLnRleHQ6NzYxNTQzRUMgICAgICAgICAgICAgICAgIG1vdiAg ICAgW2VheF0sIGVzaQ0KLnRleHQ6NzYxNTQzRUUgICAgICAgICAgICAgICAgIGNtcCAgICAgW2Vz aV0sIGJ4DQoudGV4dDo3NjE1NDNGMSAgICAgICAgICAgICAgICAgbW92ICAgICBlZGksIGVzaQ0K LnRleHQ6NzYxNTQzRjMgICAgICAgICAgICAgICAgIGpueiAgICAgbG9jXzc2MTU0NEJGDQoudGV4 dDo3NjE1NDNGOSAgICAgICAgICAgICAgICAgY21wICAgICBbZXNpKzJdLCBieA0KLnRleHQ6NzYx NTQzRkQgICAgICAgICAgICAgICAgIGpueiAgICAgbG9jXzc2MTU0NEJGDQoudGV4dDo3NjE1NDQw MyAgICAgICAgICAgICAgICAgbGVhICAgICBlYXgsIFtlYnArU3RyaW5nMV0gPC0tLS0tLS0tLS0t YWRkciB0byBwbGFjZSBzZXJ2ZXJuYW1lICxvbmx5IGhhdmUgdGhlIGxlbmd0aCBvZiAwWDIwDQou dGV4dDo3NjE1NDQwNiAgICAgICAgICAgICAgICAgcHVzaCAgICAwDQoudGV4dDo3NjE1NDQwOCAg ICAgICAgICAgICAgICAgcHVzaCAgICBlYXgNCi50ZXh0Ojc2MTU0NDA5ICAgICAgICAgICAgICAg ICBwdXNoICAgIGVzaSAgICAgICAgPC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1oZXJlIGlzIHRoZSBw YXJhbWV0ZXIgb2YgZmlsZW5hbWUgDQoudGV4dDo3NjE1NDQwQSAgICAgICAgICAgICAgICAgY2Fs bCAgICBHZXRNYWNoaW5lTmFtZQ0KLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4u Li4uLi4uLi4uLi4uLi4uLi4uLi4uLiAgd2hlbiB0aGUgZnVjdGlvbiByZXR1cm4gLGl0IHdpbGwg YmUgYnVmZmVyIG92ZXJmbG93Lg0KDQpHZXRNYWNoaW5lTmFtZToNCi50ZXh0Ojc2MTREQjZGICAg ICAgICAgICAgICAgICBtb3YgICAgIGVheCwgW2VicCthcmdfMF0NCi50ZXh0Ojc2MTREQjcyICAg ICAgICAgICAgICAgICBtb3YgICAgIGVjeCwgW2VicCthcmdfNF0NCi50ZXh0Ojc2MTREQjc1ICAg ICAgICAgICAgICAgICBsZWEgICAgIGVkeCwgW2VheCs0XQ0KLnRleHQ6NzYxNERCNzggICAgICAg ICAgICAgICAgIG1vdiAgICAgYXgsIFtlYXgrNF0NCi50ZXh0Ojc2MTREQjdDICAgICAgICAgICAg ICAgICBjbXAgICAgIGF4LCA1Q2ggICAgICAgICAgPC0tLS0tLS0tLS0tLS0tLS0tY2hlY2sgaWYg aXQgaXMgMFg1QyxpZiB5ZXMsdGhlIHNlcnZlcm5hbWUgaXMgb3ZlciANCi50ZXh0Ojc2MTREQjgw ICAgICAgICAgICAgICAgICBqeiAgICAgIHNob3J0IGxvY183NjE0REI5Mw0KLnRleHQ6NzYxNERC ODIgICAgICAgICAgICAgICAgIHN1YiAgICAgZWR4LCBlY3gNCi50ZXh0Ojc2MTREQjg0IA0KLnRl eHQ6NzYxNERCODQgbG9jXzc2MTREQjg0OiAgICAgICAgICAgICAgICAgICAgICAgICAgIDsgQ09E RSBYUkVGOiBzdWJfNzYxNERBMTkrMTc4GWoNCi50ZXh0Ojc2MTREQjg0ICAgICAgICAgICAgICAg ICBtb3YgICAgIFtlY3hdLCBheCAgICAgIDwtLS0tLS0tLS0tLS0tLS0td3JpdGUgdGhlIHNlcnZl cm5hbWUgdG8gYWRkcixpZiBsb25nZXIgdGhhbiAweDIwLGJ1ZmYgb3ZlcmZsb3cgY29tZXMgaW50 byBiZWluZw0KLnRleHQ6NzYxNERCODcgICAgICAgICAgICAgICAgIGluYyAgICAgZWN4DQoudGV4 dDo3NjE0REI4OCAgICAgICAgICAgICAgICAgaW5jICAgICBlY3gNCi50ZXh0Ojc2MTREQjg5ICAg ICAgICAgICAgICAgICBtb3YgICAgIGF4LCBbZWN4K2VkeF0NCi50ZXh0Ojc2MTREQjhEICAgICAg ICAgICAgICAgICBjbXAgICAgIGF4LCA1Q2gNCi50ZXh0Ojc2MTREQjkxICAgICAgICAgICAgICAg ICBqbnogICAgIHNob3J0IGxvY183NjE0REI4NA0KLnRleHQ6NzYxNERCOTMgDQoNCk5vdyBoZXJl IHdlIGZpbmQgdGhlIHByb2JsZW0gYW5kIGNhbiBleHBsb2l0IGl0LlRoZSBvbmx5IHF1ZXN0aW9u IGlzIHRoYXQgdGhlICJcXHNlcnZlcm5hbWUiIGlzIG5hbWVkIGJ5ZSBzeXN0ZW0sYnV0IHdlIGNh biBjb25zdHJ1Y3QgaXQgIG91cnNlbHZlcyBieSBzZW5kaW5nIG1hbGZvcm1lZCBtZXNzYWdlcy4N CkJUVyx0aGVyZSBjYW4ndCBpbmNsdWRlICIweDVjIiBpbiB0aGUgc2hlbGxjb2RlIGJlY2F1c2Ug dGhlIGZ1bmN0aW9uIEdldE1hY2hpbmVOYW1lIGNoZWNrcyBpdCAuDQoNCg0KRXhwbG9pdDoNCjGh olRoZSBleHBsb2l0IHVzZXMgSk1QIEVTUCAoRkYgRTQpdG8ganVtcCAsc28gd2Ugc2hvdWxkIGFk anVzZSB0aGUgYWRkcmVzcyB0byBvdGhlciB3aW5kb3dzIHZlcnNpb247DQoyoaJUaGUgc2hlbGxj b2RlIGNhbiBjb25uZWN0IHJldmVyc2Vko6xzbyB3ZSBzaG91bGQgcnVuIG5jIC1sIC1wIFhYWCBm aXJzdDsNCjOholRoZSBsZW5ndGggb2Ygc2hlbGxjb2RlIG11c3QgYmUgc2l6ZW9mKHNoZWxsY29k ZSklMTY9MTIgLGlmIG5vdCBwbGVhc2UgZmlsbCB3aXRoIDB4OTAsb3IgdGhlIHBhY2tldCBmb3Jt YXRvZiBSUEMgd2lsbCBiZSB3cm9uZzsNCjShokJlZm9yZSB0aGUgYnVmZmVyIG92ZXJmbG93IHJl dHVybiAsdGhlIDIgUGFyYW1ldGVycyBhZnRlciByZXR1cm4gYWRkcmVzcyBuZWVkIHRvIGJlIHVz ZWQgLHNvIHdlIHNob3VsZCB0aGVzZSBhZGRyZXNzZXMgY2FuIGJlIHdyaXR0ZW4uDQo1oaJUaGUg ZXhwbG9pdCB1c2UgSk1QIEVTUCxhbmQgd2UgY2FuIGV4cG9pdCBieSBvdmVybGF5aW5nIFNFSC4N Cg0KDQojaW5jbHVkZSA8c3RkaW8uaD4NCiNpbmNsdWRlIDx3aW5zb2NrMi5oPg0KI2luY2x1ZGUg PHdpbmRvd3MuaD4NCiNpbmNsdWRlIDxwcm9jZXNzLmg+DQojaW5jbHVkZSA8c3RyaW5nLmg+DQoj aW5jbHVkZSA8d2luYmFzZS5oPg0KI3ByYWdtYSAgY29tbWVudChsaWIsIndzMl8zMiIpDQoNCnVu c2lnbmVkIGNoYXIgYmluZHN0cltdPXsNCjB4MDUsMHgwMCwweDBCLDB4MDMsMHgxMCwweDAwLDB4 MDAsMHgwMCwweDQ4LDB4MDAsMHgwMCwweDAwLDB4N0YsMHgwMCwweDAwLDB4MDAsDQoweEQwLDB4 MTYsMHhEMCwweDE2LDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMSwweDAwLDB4MDAsMHgwMCwweDAx LDB4MDAsMHgwMSwweDAwLA0KMHhhMCwweDAxLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAw LDB4QzAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHg0NiwweDAwLDB4MDAsMHgwMCww eDAwLA0KMHgwNCwweDVELDB4ODgsMHg4QSwweEVCLDB4MUMsMHhDOSwweDExLDB4OUYsMHhFOCww eDA4LDB4MDAsDQoweDJCLDB4MTAsMHg0OCwweDYwLDB4MDIsMHgwMCwweDAwLDB4MDB9Ow0KDQp1 bnNpZ25lZCBjaGFyIHJlcXVlc3QxW109ew0KMHgwNSwweDAwLDB4MDAsMHgwMywweDEwLDB4MDAs MHgwMCwweDAwLDB4RTgsMHgwMw0KLDB4MDAsMHgwMCwweEU1LDB4MDAsMHgwMCwweDAwLDB4RDAs MHgwMywweDAwLDB4MDAsMHgwMSwweDAwLDB4MDQsMHgwMCwweDA1LDB4MDANCiwweDA2LDB4MDAs MHgwMSwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MzIsMHgyNCwweDU4LDB4 RkQsMHhDQywweDQ1DQosMHg2NCwweDQ5LDB4QjAsMHg3MCwweERELDB4QUUsMHg3NCwweDJDLDB4 OTYsMHhEMiwweDYwLDB4NUUsMHgwRCwweDAwLDB4MDEsMHgwMA0KLDB4MDAsMHgwMCwweDAwLDB4 MDAsMHgwMCwweDAwLDB4NzAsMHg1RSwweDBELDB4MDAsMHgwMiwweDAwLDB4MDAsMHgwMCwweDdD LDB4NUUNCiwweDBELDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDEwLDB4MDAsMHgwMCwweDAw LDB4ODAsMHg5NiwweEYxLDB4RjEsMHgyQSwweDREDQosMHhDRSwweDExLDB4QTYsMHg2QSwweDAw LDB4MjAsMHhBRiwweDZFLDB4NzIsMHhGNCwweDBDLDB4MDAsMHgwMCwweDAwLDB4NEQsMHg0MQ0K LDB4NTIsMHg0MiwweDAxLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwRCww eEYwLDB4QUQsMHhCQSwweDAwLDB4MDANCiwweDAwLDB4MDAsMHhBOCwweEY0LDB4MEIsMHgwMCww eDYwLDB4MDMsMHgwMCwweDAwLDB4NjAsMHgwMywweDAwLDB4MDAsMHg0RCwweDQ1DQosMHg0Riww eDU3LDB4MDQsMHgwMCwweDAwLDB4MDAsMHhBMiwweDAxLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgw MCwweDAwLDB4QzAsMHgwMA0KLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDQ2LDB4MzgsMHgw MywweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweEMwLDB4MDANCiwweDAwLDB4MDAsMHgw MCwweDAwLDB4MDAsMHg0NiwweDAwLDB4MDAsMHgwMCwweDAwLDB4MzAsMHgwMywweDAwLDB4MDAs MHgyOCwweDAzDQosMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMSwweDEwLDB4MDgs MHgwMCwweENDLDB4Q0MsMHhDQywweENDLDB4QzgsMHgwMA0KLDB4MDAsMHgwMCwweDRELDB4NDUs MHg0RiwweDU3LDB4MjgsMHgwMywweDAwLDB4MDAsMHhEOCwweDAwLDB4MDAsMHgwMCwweDAwLDB4 MDANCiwweDAwLDB4MDAsMHgwMiwweDAwLDB4MDAsMHgwMCwweDA3LDB4MDAsMHgwMCwweDAwLDB4 MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwDQosMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4 MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweEM0LDB4MjgsMHhDRCwweDAwLDB4NjQsMHgyOQ0KLDB4 Q0QsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDcsMHgwMCwweDAwLDB4MDAsMHhCOSwweDAx LDB4MDAsMHgwMCwweDAwLDB4MDANCiwweDAwLDB4MDAsMHhDMCwweDAwLDB4MDAsMHgwMCwweDAw LDB4MDAsMHgwMCwweDQ2LDB4QUIsMHgwMSwweDAwLDB4MDAsMHgwMCwweDAwDQosMHgwMCwweDAw LDB4QzAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHg0NiwweEE1LDB4MDEsMHgwMCww eDAwLDB4MDAsMHgwMA0KLDB4MDAsMHgwMCwweEMwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCww eDAwLDB4NDYsMHhBNiwweDAxLDB4MDAsMHgwMCwweDAwLDB4MDANCiwweDAwLDB4MDAsMHhDMCww eDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDQ2LDB4QTQsMHgwMSwweDAwLDB4MDAsMHgw MCwweDAwDQosMHgwMCwweDAwLDB4QzAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHg0 NiwweEFELDB4MDEsMHgwMCwweDAwLDB4MDAsMHgwMA0KLDB4MDAsMHgwMCwweEMwLDB4MDAsMHgw MCwweDAwLDB4MDAsMHgwMCwweDAwLDB4NDYsMHhBQSwweDAxLDB4MDAsMHgwMCwweDAwLDB4MDAN CiwweDAwLDB4MDAsMHhDMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDQ2LDB4MDcs MHgwMCwweDAwLDB4MDAsMHg2MCwweDAwDQosMHgwMCwweDAwLDB4NTgsMHgwMCwweDAwLDB4MDAs MHg5MCwweDAwLDB4MDAsMHgwMCwweDQwLDB4MDAsMHgwMCwweDAwLDB4MjAsMHgwMA0KLDB4MDAs MHgwMCwweDc4LDB4MDAsMHgwMCwweDAwLDB4MzAsMHgwMCwweDAwLDB4MDAsMHgwMSwweDAwLDB4 MDAsMHgwMCwweDAxLDB4MTANCiwweDA4LDB4MDAsMHhDQywweENDLDB4Q0MsMHhDQywweDUwLDB4 MDAsMHgwMCwweDAwLDB4NEYsMHhCNiwweDg4LDB4MjAsMHhGRiwweEZGDQosMHhGRiwweEZGLDB4 MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAw LDB4MDAsMHgwMA0KLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAw LDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDANCiwweDAwLDB4MDAsMHgwMCwweDAw LDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCww eDAwDQosMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCww eDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMA0KLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCww eDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAxLDB4MTANCiww eDA4LDB4MDAsMHhDQywweENDLDB4Q0MsMHhDQywweDQ4LDB4MDAsMHgwMCwweDAwLDB4MDcsMHgw MCwweDY2LDB4MDAsMHgwNiwweDA5DQosMHgwMiwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHhD MCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDQ2LDB4MTAsMHgwMA0KLDB4MDAsMHgw MCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMSwweDAwLDB4MDAs MHgwMCwweDAwLDB4MDANCiwweDAwLDB4MDAsMHg3OCwweDE5LDB4MEMsMHgwMCwweDU4LDB4MDAs MHgwMCwweDAwLDB4MDUsMHgwMCwweDA2LDB4MDAsMHgwMSwweDAwDQosMHgwMCwweDAwLDB4NzAs MHhEOCwweDk4LDB4OTMsMHg5OCwweDRGLDB4RDIsMHgxMSwweEE5LDB4M0QsMHhCRSwweDU3LDB4 QjIsMHgwMA0KLDB4MDAsMHgwMCwweDMyLDB4MDAsMHgzMSwweDAwLDB4MDEsMHgxMCwweDA4LDB4 MDAsMHhDQywweENDLDB4Q0MsMHhDQywweDgwLDB4MDANCiwweDAwLDB4MDAsMHgwRCwweEYwLDB4 QUQsMHhCQSwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAw DQosMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgxOCwweDQzLDB4MTQsMHgwMCwweDAw LDB4MDAsMHgwMCwweDAwLDB4NjAsMHgwMA0KLDB4MDAsMHgwMCwweDYwLDB4MDAsMHgwMCwweDAw LDB4NEQsMHg0NSwweDRGLDB4NTcsMHgwNCwweDAwLDB4MDAsMHgwMCwweEMwLDB4MDENCiwweDAw LDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweEMwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCww eDAwLDB4NDYsMHgzQiwweDAzDQosMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHhDMCww eDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDQ2LDB4MDAsMHgwMA0KLDB4MDAsMHgwMCww eDMwLDB4MDAsMHgwMCwweDAwLDB4MDEsMHgwMCwweDAxLDB4MDAsMHg4MSwweEM1LDB4MTcsMHgw MywweDgwLDB4MEUNCiwweEU5LDB4NEEsMHg5OSwweDk5LDB4RjEsMHg4QSwweDUwLDB4NkYsMHg3 QSwweDg1LDB4MDIsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwDQosMHgwMCwweDAwLDB4MDAsMHgw MCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAs MHgwMA0KLDB4MDAsMHgwMCwweDAxLDB4MDAsMHgwMCwweDAwLDB4MDEsMHgxMCwweDA4LDB4MDAs MHhDQywweENDLDB4Q0MsMHhDQywweDMwLDB4MDANCiwweDAwLDB4MDAsMHg3OCwweDAwLDB4NkUs MHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4RDgsMHhEQSwweDBELDB4MDAsMHgwMCwweDAwDQos MHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgyMCwweDJGLDB4MEMsMHgwMCwweDAwLDB4 MDAsMHgwMCwweDAwLDB4MDAsMHgwMA0KLDB4MDAsMHgwMCwweDAzLDB4MDAsMHgwMCwweDAwLDB4 MDAsMHgwMCwweDAwLDB4MDAsMHgwMywweDAwLDB4MDAsMHgwMCwweDQ2LDB4MDANCiwweDU4LDB4 MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAxLDB4MTAsMHgwOCwweDAwLDB4Q0MsMHhDQywweEND LDB4Q0MsMHgxMCwweDAwDQosMHgwMCwweDAwLDB4MzAsMHgwMCwweDJFLDB4MDAsMHgwMCwweDAw LDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMA0KLDB4MDAsMHgwMCwweDAw LDB4MDAsMHgwMCwweDAwLDB4MDEsMHgxMCwweDA4LDB4MDAsMHhDQywweENDLDB4Q0MsMHhDQyww eDY4LDB4MDANCiwweDAwLDB4MDAsMHgwRSwweDAwLDB4RkYsMHhGRiwweDY4LDB4OEIsMHgwQiww eDAwLDB4MDIsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwDQosMHgwMCwweDAwLDB4MDAsMHgwMCww eDAwLDB4MDB9Ow0KDQp1bnNpZ25lZCBjaGFyIHJlcXVlc3QyW109ew0KMHgyMCwweDAwLDB4MDAs MHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MjAsMHgwMA0KLDB4MDAsMHgwMCwweDVDLDB4MDAs MHg1QywweDAwfTsNCg0KdW5zaWduZWQgY2hhciByZXF1ZXN0M1tdPXsNCjB4NUMsMHgwMA0KLDB4 NDMsMHgwMCwweDI0LDB4MDAsMHg1QywweDAwLDB4MzEsMHgwMCwweDMyLDB4MDAsMHgzMywweDAw LDB4MzQsMHgwMCwweDM1LDB4MDANCiwweDM2LDB4MDAsMHgzMSwweDAwLDB4MzEsMHgwMCwweDMx LDB4MDAsMHgzMSwweDAwLDB4MzEsMHgwMCwweDMxLDB4MDAsMHgzMSwweDAwDQosMHgzMSwweDAw LDB4MzEsMHgwMCwweDMxLDB4MDAsMHgzMSwweDAwLDB4MzEsMHgwMCwweDMxLDB4MDAsMHgzMSww eDAwLDB4MzEsMHgwMA0KLDB4MkUsMHgwMCwweDY0LDB4MDAsMHg2RiwweDAwLDB4NjMsMHgwMCww eDAwLDB4MDB9Ow0KDQoNCg0KDQp1bnNpZ25lZCBpbnQgam1wZXNwX2NuX3NwMyA9ICJceDI5XHgy Y1x4ZTJceDc3IjsNCnVuc2lnbmVkIGludCBqbXBlc3BfY25fc3A0ID0gIlx4MjlceDRjXHhkZlx4 NzciOw0KdW5zaWduZWQgaW50IGptcGVzcF9lbl94cF9zcDE9Ilx4ZGJceDM3XHhkN1x4NzciOw0K DQoNCnVuc2lnbmVkIGNoYXIgc2NbXT0NCiAgICAiXHg0Nlx4MDBceDU4XHgwMFx4NEVceDAwXHg0 Mlx4MDBceDQ2XHgwMFx4NThceDAwIg0KICAgICJceDQ2XHgwMFx4NThceDAwXHg0RVx4MDBceDQy XHgwMFx4NDZceDAwXHg1OFx4MDBceDQ2XHgwMFx4NThceDAwIg0KICAgICJceDQ2XHgwMFx4NThc eDAwXHg0Nlx4MDBceDU4XHgwMCINCg0KICAgIA0KICAgICJceDI5XHg0Y1x4ZGZceDc3Ii8vam1w IGVzcCAncyBhZGRyZXNzIG9uIFdpbmRvd3MgMmsgU1A0IENoaW5lc2UgdmVyc2lvbi4NCiAgICAi XHgzOFx4NmVceDE2XHg3Nlx4MGRceDZlXHgxNlx4NzYiICAvL3Nob3VsZCBiZSBhZGRyZXNzIHdo aWNoIGNhbiBiZSB3cml0dGVuLg0KICAgICAgICAvL2hlcmUgaXMgU0hFTExDT0RFo6x3ZSBjYW4g dXNlIG91ciBTSEVMTENPREWjrGJ1dCB0aGUgbGVuZ3RoIG11c3QgYmUgc2l6ZW9mKHNoZWxsY29k ZSklMTY9MTIgLGlmIG5vdCBwbGVhc2UgZmlsbCB3aXRoIDB4OTAgDQogICAgICAgIC8vU0hFTExD T0RFIGNhbid0IGhhcyB0aGUgY29kZSBzdWNoIGFzIDBYMDAgYW5kIDBYNUMNCiAgICAiXHhlYlx4 MDJceGViXHgwNVx4ZThceGY5XHhmZlx4ZmZceGZmXHg1OFx4ODNceGMwXHgxYlx4OGRceGEwXHgw MSINCiAgICAiXHhmY1x4ZmZceGZmXHg4M1x4ZTRceGZjXHg4Ylx4ZWNceDMzXHhjOVx4NjZceGI5 XHg5OVx4MDFceDgwXHgzMCINCiAgICAiXHg5M1x4NDBceGUyXHhmYSINCiAgICAvLyBjb2RlIA0K ICAgICJceDdiXHhlNFx4OTNceDkzXHg5M1x4ZDRceGY2XHhlN1x4YzNceGUxXHhmY1x4ZjBceGQy XHhmN1x4ZjdceGUxIg0KICAgICJceGY2XHhlMFx4ZTBceDkzXHhkZlx4ZmNceGYyXHhmN1x4ZGZc eGZhXHhmMVx4ZTFceGYyXHhlMVx4ZWFceGQyIg0KICAgICJceDkzXHhkMFx4ZTFceGY2XHhmMlx4 ZTdceGY2XHhjM1x4ZTFceGZjXHhmMFx4ZjZceGUwXHhlMFx4ZDJceDkzIg0KICAgICJceGQwXHhm Zlx4ZmNceGUwXHhmNlx4ZGJceGYyXHhmZFx4ZjdceGZmXHhmNlx4OTNceGQ2XHhlYlx4ZmFceGU3 Ig0KICAgICJceGM3XHhmYlx4ZTFceGY2XHhmMlx4ZjdceDkzXHhlNFx4ZTBceGExXHhjY1x4YTBc eGExXHg5M1x4YzRceGMwIg0KICAgICJceGQyXHhjMFx4ZTdceGYyXHhlMVx4ZTdceGU2XHhlM1x4 OTNceGM0XHhjMFx4ZDJceGMwXHhmY1x4ZjBceGY4Ig0KICAgICJceGY2XHhlN1x4ZDJceDkzXHhm MFx4ZmZceGZjXHhlMFx4ZjZceGUwXHhmY1x4ZjBceGY4XHhmNlx4ZTdceDkzIg0KICAgICJceGYw XHhmY1x4ZmRceGZkXHhmNlx4ZjBceGU3XHg5M1x4ZjBceGZlXHhmN1x4OTNceGM5XHhjMVx4Mjhc eDkzIg0KICAgICJceDkzXHg2M1x4ZTRceDEyXHhhOFx4ZGVceGM5XHgwM1x4OTNceGU3XHg5MFx4 ZDhceDc4XHg2Nlx4MThceGUwIg0KICAgICJceGFmXHg5MFx4NjBceDE4XHhlNVx4ZWJceDkwXHg2 MFx4MThceGVkXHhiM1x4OTBceDY4XHgxOFx4ZGRceDg3Ig0KICAgICJceGM1XHhhMFx4NTNceGM0 XHhjMlx4MThceGFjXHg5MFx4NjhceDE4XHg2MVx4YTBceDVhXHgyMlx4OWRceDYwIg0KICAgICJc eDM1XHhjYVx4Y2NceGU3XHg5Ylx4MTBceDU0XHg5N1x4ZDNceDcxXHg3Ylx4NmNceDcyXHhjZFx4 MThceGM1Ig0KICAgICJceGI3XHg5MFx4NDBceDQyXHg3M1x4OTBceDUxXHhhMFx4NWFceGY1XHgx OFx4OWJceDE4XHhkNVx4OGZceDkwIg0KICAgICJceDUwXHg1Mlx4NzJceDkxXHg5MFx4NTJceDE4 XHg4M1x4OTBceDQwXHhjZFx4MThceDZkXHhhMFx4NWFceDIyIg0KICAgICJceDk3XHg3Ylx4MDhc eDkzXHg5M1x4OTNceDEwXHg1NVx4OThceGMxXHhjNVx4NmNceGM0XHg2M1x4YzlceDE4Ig0KICAg ICJceDRiXHhhMFx4NWFceDIyXHg5N1x4N2JceDE0XHg5M1x4OTNceDkzXHgxMFx4NTVceDliXHhj Nlx4ZmJceDkyIg0KICAgICJceDkyXHg5M1x4OTNceDZjXHhjNFx4NjNceDE2XHg1M1x4ZTZceGUw XHhjM1x4YzNceGMzXHhjM1x4ZDNceGMzIg0KICAgICJceGQzXHhjM1x4NmNceGM0XHg2N1x4MTBc eDZiXHg2Y1x4ZTdceGYwXHgxOFx4NGJceGY1XHg1NFx4ZDZceDkzIg0KICAgICJceDkxXHg5M1x4 ZjVceDU0XHhkNlx4OTFceDI4XHgzOVx4NTRceGQ2XHg5N1x4NGVceDVmXHgyOFx4MzlceGY5Ig0K ICAgICJceDgzXHhjNlx4YzBceDZjXHhjNFx4NmZceDE2XHg1M1x4ZTZceGQwXHhhMFx4NWFceDIy XHg4Mlx4YzRceDE4Ig0KICAgICJceDZlXHg2MFx4MzhceGNjXHg1NFx4ZDZceDkzXHhkN1x4OTNc eDkzXHg5M1x4MWFceGNlXHhhZlx4MWFceGNlIg0KICAgICJceGFiXHgxYVx4Y2VceGQzXHg1NFx4 ZDZceGJmXHg5Mlx4OTJceDkzXHg5M1x4MWVceGQ2XHhkN1x4YzNceGM2Ig0KICAgICJceGMyXHhj Mlx4YzJceGQyXHhjMlx4ZGFceGMyXHhjMlx4YzVceGMyXHg2Y1x4YzRceDc3XHg2Y1x4ZTZceGQ3 Ig0KICAgICJceDZjXHhjNFx4N2JceDZjXHhlNlx4ZGJceDZjXHhjNFx4N2JceGMwXHg2Y1x4YzRc eDZiXHhjM1x4NmNceGM0Ig0KICAgICJceDdmXHgxOVx4OTVceGQ1XHgxN1x4NTNceGU2XHg2YVx4 YzJceGMxXHhjNVx4YzBceDZjXHg0MVx4YzlceGNhIg0KICAgICJceDFhXHg5NFx4ZDRceGQ0XHhk NFx4ZDRceDcxXHg3YVx4NTBceDkwXHg5MCINCiAgICAiXHg5MFx4OTBceDkwXHg5MFx4OTBceDkw XHg5MFx4OTBceDkwXHg5MFx4OTBceDkwIjsNCg0KdW5zaWduZWQgY2hhciByZXF1ZXN0NFtdPXsN CjB4MDEsMHgxMA0KLDB4MDgsMHgwMCwweENDLDB4Q0MsMHhDQywweENDLDB4MjAsMHgwMCwweDAw LDB4MDAsMHgzMCwweDAwLDB4MkQsMHgwMCwweDAwLDB4MDANCiwweDAwLDB4MDAsMHg4OCwweDJB LDB4MEMsMHgwMCwweDAyLDB4MDAsMHgwMCwweDAwLDB4MDEsMHgwMCwweDAwLDB4MDAsMHgyOCww eDhDDQosMHgwQywweDAwLDB4MDEsMHgwMCwweDAwLDB4MDAsMHgwNywweDAwLDB4MDAsMHgwMCww eDAwLDB4MDAsMHgwMCwweDAwDQp9Ow0KDQp2b2lkIG1haW4oaW50IGFyZ2MsY2hhciAqKiBhcmd2 KQ0Kew0KICAgIFdTQURBVEEgV1NBRGF0YTsNCiAgICBTT0NLRVQgc29jazsNCiAgICBpbnQgbGVu LGxlbjE7DQogICAgU09DS0FERFJfSU4gYWRkcl9pbjsNCiAgICBzaG9ydCBwb3J0PTEzNTsNCiAg ICB1bnNpZ25lZCBjaGFyIGJ1ZjFbMHgxMDAwXTsNCiAgICB1bnNpZ25lZCBjaGFyIGJ1ZjJbMHgx MDAwXTsNCiAgICB1bnNpZ25lZCBzaG9ydCBwb3J0MTsNCiAgICBEV09SRCBjYjsNCiAgICANCiAg ICBwcmludGYoIlJQQyBEQ09NIG92ZXJmbG93IFZ1bG5lcmFiaWxpdHkgZGlzY292ZXJpZWQgYnkg TFNEXG4iKTsNCiAgICBwcmludGYoIkNvZGUgYnkgRmxhc2hTa3ksRmxhc2hza3lAeGZvY3VzLm9y ZyxiZW5qdXJyeSxiZW5qdXJyeUB4Zm9jdXMub3JnXG4iKTsNCiAgICBwcmludGYoIldlbGNvbWUg dG8gb3VyIEVuZ2xpc2ggU2l0ZTogaHR0cDovL3d3dy54Zm9jdXMub3JnXG4iKTsNCiAgICBwcmlu dGYoIldlbGNvbWUgdG8gb3VyIENoaW5lc2UgU2l0ZTogaHR0cDovL3d3dy54Zm9jdXMubmV0XG4i KTsNCg0KDQppZihhcmdjPDUpDQp7DQogIHByaW50ZigidXNlYWdlOiVzIHRhcmdldGlwIGxvY2Fs SVAgTG9jYWxQb3J0IFNQVmVyc2lvblxuIixhcmd2WzBdKTsNCiAgIHByaW50ZigiU1BWZXJzaW9u OlxuMCB3MmsgQ2hpbmVzZSB2ZXJzaW9uICtzcDNcbiAxIHcyayBDaGluZXNlIHZlcnNpb24gK1NQ NFxuIDIgd2lueHAgRW5nbGlzaCB2ZXJzaW9uICtzcDFcbiIpOw0KZXhpdCgxKTsNCn0NCiANCmlm KGF0b2koYXJndls0XSk9PTApDQptZW1jcHkoc2MrMzYsam1wZXNwX2NuX3NwMyxzaXplb2Yoam1w ZXNwX2NuX3NwMykpOw0KZWxzZSBpZiAoYXRvaShhcmd2WzRdKT09MSkNCm1lbWNweShzYyszNixq bXBlc3BfY25fc3A0LHNpemVvZihqbXBlc3BfY25fc3A0KSk7DQplbHNlIGlmIChhdG9pKGFyZ3Zb NF0pPT0yKQ0KbWVtY3B5KHNjKzM2LGptcGVzcF9lbl94cF9zcDEsc2l6ZW9mKGptcGVzcF9lbl94 cF9zcDEpKTsNCg0KDQogICAgaWYgKFdTQVN0YXJ0dXAoTUFLRVdPUkQoMiwwKSwmV1NBRGF0YSkh PTApDQogICAgew0KICAgICAgICBwcmludGYoIldTQVN0YXJ0dXAgZXJyb3IuRXJyb3I6JWRcbiIs V1NBR2V0TGFzdEVycm9yKCkpOw0KICAgICAgICByZXR1cm47DQogICAgfQ0KDQogICAgYWRkcl9p bi5zaW5fZmFtaWx5PUFGX0lORVQ7DQogICAgYWRkcl9pbi5zaW5fcG9ydD1odG9ucyhwb3J0KTsN CiAgICBhZGRyX2luLnNpbl9hZGRyLlNfdW4uU19hZGRyPWluZXRfYWRkcihhcmd2WzFdKTsNCiAg ICANCiAgICBpZiAoKHNvY2s9c29ja2V0KEFGX0lORVQsU09DS19TVFJFQU0sSVBQUk9UT19UQ1Ap KT09SU5WQUxJRF9TT0NLRVQpDQogICAgew0KICAgICAgICBwcmludGYoIlNvY2tldCBmYWlsZWQu RXJyb3I6JWRcbiIsV1NBR2V0TGFzdEVycm9yKCkpOw0KICAgICAgICByZXR1cm47DQogICAgfQ0K ICAgIGlmKFdTQUNvbm5lY3Qoc29jaywoc3RydWN0IHNvY2thZGRyICopJmFkZHJfaW4sc2l6ZW9m KGFkZHJfaW4pLE5VTEwsTlVMTCxOVUxMLE5VTEwpPT1TT0NLRVRfRVJST1IpDQogICAgew0KICAg ICAgICBwcmludGYoIkNvbm5lY3QgZmFpbGVkLkVycm9yOiVkIixXU0FHZXRMYXN0RXJyb3IoKSk7 DQogICAgICAgIHJldHVybjsNCiAgICB9DQogICAgcG9ydDEgPSBodG9ucyhhdG9pKGFyZ3ZbM10p KTsgIA0KICAgIHBvcnQxIF49IDB4OTM5MzsNCiAgICBjYj1pbmV0X2FkZHIoYXJndlsyXSk7DQog ICAgY2IgXj0gMHg5MzkzOTM5MzsNCiAgICAqKHVuc2lnbmVkIHNob3J0ICopJnNjWzMzMCsweDMw XSA9IHBvcnQxOw0KICAgICoodW5zaWduZWQgaW50ICopJnNjWzMzNSsweDMwXSA9IGNiOw0KICAg IGxlbj1zaXplb2Yoc2MpOw0KICAgIG1lbWNweShidWYyLHJlcXVlc3QxLHNpemVvZihyZXF1ZXN0 MSkpOw0KICAgIGxlbjE9c2l6ZW9mKHJlcXVlc3QxKTsNCiAgICAqKERXT1JEICopKHJlcXVlc3Qy KT0qKERXT1JEICopKHJlcXVlc3QyKStzaXplb2Yoc2MpLzI7ICANCiAgICAqKERXT1JEICopKHJl cXVlc3QyKzgpPSooRFdPUkQgKikocmVxdWVzdDIrOCkrc2l6ZW9mKHNjKS8yOw0KICAgIG1lbWNw eShidWYyK2xlbjEscmVxdWVzdDIsc2l6ZW9mKHJlcXVlc3QyKSk7DQogICAgbGVuMT1sZW4xK3Np emVvZihyZXF1ZXN0Mik7DQogICAgbWVtY3B5KGJ1ZjIrbGVuMSxzYyxzaXplb2Yoc2MpKTsNCiAg ICBsZW4xPWxlbjErc2l6ZW9mKHNjKTsNCiAgICBtZW1jcHkoYnVmMitsZW4xLHJlcXVlc3QzLHNp emVvZihyZXF1ZXN0MykpOw0KICAgIGxlbjE9bGVuMStzaXplb2YocmVxdWVzdDMpOw0KICAgIG1l bWNweShidWYyK2xlbjEscmVxdWVzdDQsc2l6ZW9mKHJlcXVlc3Q0KSk7DQogICAgbGVuMT1sZW4x K3NpemVvZihyZXF1ZXN0NCk7DQogICAgKihEV09SRCAqKShidWYyKzgpPSooRFdPUkQgKikoYnVm Mis4KStzaXplb2Yoc2MpLTB4YzsNCg0KICAgICooRFdPUkQgKikoYnVmMisweDEwKT0qKERXT1JE ICopKGJ1ZjIrMHgxMCkrc2l6ZW9mKHNjKS0weGM7ICANCiAgICAqKERXT1JEICopKGJ1ZjIrMHg4 MCk9KihEV09SRCAqKShidWYyKzB4ODApK3NpemVvZihzYyktMHhjOw0KICAgICooRFdPUkQgKiko YnVmMisweDg0KT0qKERXT1JEICopKGJ1ZjIrMHg4NCkrc2l6ZW9mKHNjKS0weGM7DQogICAgKihE V09SRCAqKShidWYyKzB4YjQpPSooRFdPUkQgKikoYnVmMisweGI0KStzaXplb2Yoc2MpLTB4YzsN CiAgICAqKERXT1JEICopKGJ1ZjIrMHhiOCk9KihEV09SRCAqKShidWYyKzB4YjgpK3NpemVvZihz YyktMHhjOw0KICAgICooRFdPUkQgKikoYnVmMisweGQwKT0qKERXT1JEICopKGJ1ZjIrMHhkMCkr c2l6ZW9mKHNjKS0weGM7DQogICAgKihEV09SRCAqKShidWYyKzB4MThjKT0qKERXT1JEICopKGJ1 ZjIrMHgxOGMpK3NpemVvZihzYyktMHhjOw0KICAgIGlmIChzZW5kKHNvY2ssYmluZHN0cixzaXpl b2YoYmluZHN0ciksMCk9PVNPQ0tFVF9FUlJPUikNCiAgICB7DQogICAgICAgICAgICBwcmludGYo IlNlbmQgZmFpbGVkLkVycm9yOiVkXG4iLFdTQUdldExhc3RFcnJvcigpKTsNCiAgICAgICAgICAg IHJldHVybjsNCiAgICB9DQogICAgDQogICAgbGVuPXJlY3Yoc29jayxidWYxLDEwMDAsTlVMTCk7 DQogICAgaWYgKHNlbmQoc29jayxidWYyLGxlbjEsMCk9PVNPQ0tFVF9FUlJPUikNCiAgICB7DQog ICAgICAgICAgICBwcmludGYoIlNlbmQgZmFpbGVkLkVycm9yOiVkXG4iLFdTQUdldExhc3RFcnJv cigpKTsNCiAgICAgICAgICAgIHJldHVybjsNCiAgICB9DQogICAgbGVuPXJlY3Yoc29jayxidWYx LDEwMjQsTlVMTCk7DQp9IA0KDQpBYm91dCBYRk9DVVMuT1JHDQogICBYZm9jdXMgaXMgYSBub24t cHJvZml0IGFuZCBmcmVlIHRlY2hub2xvZ3kgb3JnYW5pemF0aW9uIHdoaWNoIHdhcyBmb3VuZGVk IGluIDE5OTggaW4gQ2hpbmEuIFdlIGFyZSBkZXZvdGluZyB0byByZXNlYXJjaCBhbmQgZGVtb25z dHJhdGlvbiBvZiB3ZWFrbmVzc2VzIHJlbGF0ZWQgdG8gbmV0d29yayBzZXJ2aWNlcyBhbmQgY29t bXVuaWNhdGlvbiBzZWN1cml0eS4NCldlIGhvcGUgdGhhdCB3ZSBjYW4gdXNlIG5ldyB0ZWNobmlj YWwgdG9vbHMgdG8gYWNoaWV2ZSBvdXIgZ29hbCwgYW5kIHRvIGJyb2FkZW4gb3VyIG91dGxvb2su IFdlIGFsc28gaG9wZSB3ZSBjYW4gY29tbXVuaWNhdGUgYW5kIGhlbHAgd2l0aCBlYWNoIG90aGVy IHRocm91Z2ggdGhpcyBhbWF6aW5nIEludGVybmV0Lg0KICAgDQogICBGcm9tIHRoZSBJbnRlcm5l dC4gRm9yIHRoZSBJbnRlcm5ldC4gSGF2ZSBmdW4h