
T24gMDYvMTQvMjAxNyAwNDoyOSBBTSwgWmhpUGVuZyBMdSB3cm90ZTo+IEJlZm9yZSBsaWJ2aXJ0 IHRoYXQgY2FsbHMgdmlyTmV0RGV2TWFjVkxhbkNyZWF0ZVdpdGhWUG9ydFByb2ZpbGUgc2V0cyBt YWMgYWRkcmVzcz4gb3IgdmxhbiBvZiBhIFZpcnR1YWwgRnVuY3Rpb24oVkYpIGxpbmtlZCB0byBh IG1hY3Z0YXAgcGFzc3Rocm91Z2ggZGV2aWNlIG9mIG1pZ3JhdGlvbj4gZGVzdGluYXRpb24gaG9z dCBpbiBtaWdyYXRpb24gc3RhcnQgc3RlcC4gSWYgd2UgcGluZyB0aGUgbWlncmF0aW5nIHZtLD4g d2UgZ2V0IHRoZSBuZXR3b3JrIGRvZXMgbm90IHBhc3MuIEJlY2F1c2UgVkZzIG9mIG1pZ3JhdGlv biBzb3VyY2UgYW5kIGRlc3RpbmF0aW9uPiBoYXZlIHRoZSBzYW1lIE1BQyBhZGRyZXNzLiBUaGUg cGF0Y2ggbGF0ZXIgY2FsbGluZyBxZW11TWlncmF0aW9uVlBBc3NvY2lhdGVQb3J0UHJvZmlsZXM+ IHNldHMgbWFjIGFkZHJlc3Mgb2YgVkYgaW4gbWlncmF0aW9uIGZpbmlzaCBzdGVwIGluc3RlYWQg b2Ygc3RhcnQgc3RlcC4+IFRoZSBwYXRjaCBhaW1zIHRvIHJlZHVjZSBwYWNrZXQgbG9zcyByYXRl Lj5JIG1pc3NlZCB0aGlzIHBhdGNoIHdoZW4geW91IGluaXRpYWxseSBzZW50IGl0LCBhbmQgc2Vl IHRoYXQgbm9ib2R5IGVsc2U+cmVzcG9uZGVkLi4uPldoYXQgeW91J3JlIGRvaW5nIGhlcmUgc2hv dWxkbid0IGJlIG5lZWRlZC4gRHVyaW5nIG1pZ3JhdGlvbiwgYSBtYWN2dGFwPmRldmljZSBzaG91 bGQgYmUgY3JlYXRlZCB3aXRoIH5JRkZfVVAsIGFuZCBub3QgYnJvdWdodCBvbmxpbmUgdW50aWw+ cWVtdUludGVyZmFjZVN0YXJ0RGV2aWNlKCkgaXMgY2FsbGVkIGp1c3QgcHJpb3IgdG8gc3RhcnRp bmcgdGhlIGd1ZXN0PkNQVXMgb24gdGhlIGRlc3RpbmF0aW9uIGJ5IHRoaXMgdGltZSB0aGUgZ3Vl c3QgQ1BVcyBvbiB0aGUgc291cmNlIGhhdmU+YWxyZWFkeSBiZWVuIHN0b3BwZWQgKGFuZCB0aGUg Z3Vlc3QncyBtYWN2dGFwIGludGVyZmFjZXMgb24gdGhlIHNvdXJjZT5oYXZlIGJlZW4gc2V0IG9m ZmxpbmUpLiBVbnRpbCBhIGRldmljZSBpcyBJRkZfVVAsIGl0IHNob3VsZG4ndCBzZW5kIG91dD5h bnkgdHJhZmZpYyB3aXRoIGl0cyBNQUMgYWRkcmVzcy4NCg0KLS0tLVByb2JhYmx5IG5vdCB1bmRl cnN0YW5kaW5nIHdoYXQgSSBtZWFuIHdoZW4gdGhlIG5ldHdvcmsgcGFja2V0IGxvc3MgaGFwcGVu cy4gDQoNClRoaXMgcGF0Y2ggZGVzY3JpYmVzICB0aGUgdGltZSBiZWZvcmUgdGhlIGd1ZXN0IENQ VSBvbiB0aGUgIHNvdXJjZSAgaGFzIGJlZW4gc3RvcHBlZCBhbmQgdGhlIG1hY3Z0YXAgZGV2aWNl IHdhcyBJRkZfVVAuDQoNCmlmIHdlIHNlbmQgbmV0d29yayBkYXRhIGZyb20gdGhlIGRlc3RpbmF0 aW9uLCB0aGUgbmV0d29yayBwYWNrZXQgbG9zcy4NCg0KDQoNCj5JZiB5b3UgbG9vayBhdCB0aGUg bWFjdnRhcCBkZXZpY2Ugb24gdGhlIGRlc3RpbmF0aW9uIGFuZCBpdCBoYXMgSUZGX1VQPnNldCBw cmlvciB0byB0aGUgY29tcGxldGlvbiBvZiBtaWdyYXRpb24sIHRoZW4gdGhlcmUgaXMgYSBidWcg aW4gbGlidmlydD50aGF0IHdlIG5lZWQgdG8gZml4LiBPdGhlcndpc2UsIEkgdGhpbmsgYW55IHBh Y2tldCBsb3NzIHlvdSdyZSBzZWVpbmcgaXM+Y29taW5nIGZyb20gc29tZXRoaW5nIGVsc2UuPj4g U2lnbmVkLW9mZi1ieTogWmhpUGVuZyBMdSA8bHUuemhpcGVuZ0B6dGUuY29tLmNuPj4gLS0tPiAg c3JjL3FlbXUvcWVtdV9taWdyYXRpb24uYyAgIHwgMTggKysrKysrKysrKysrKysrKy0tPiAgc3Jj L3V0aWwvdmlybmV0ZGV2bWFjdmxhbi5jIHwgMTcgKysrKysrKysrKystLS0tLS0+ICAyIGZpbGVz IGNoYW5nZWQsIDI3IGluc2VydGlvbnMoKyksIDggZGVsZXRpb25zKC0pPj4gZGlmZiAtLWdpdCBh L3NyYy9xZW11L3FlbXVfbWlncmF0aW9uLmMgYi9zcmMvcWVtdS9xZW11X21pZ3JhdGlvbi5jPiBp bmRleCAwOWFkYjA0Li43OTVlZDcxIDEwMDY0ND4gLS0tIGEvc3JjL3FlbXUvcWVtdV9taWdyYXRp b24uYz4gKysrIGIvc3JjL3FlbXUvcWVtdV9taWdyYXRpb24uYz4gQEAgLTUwMDQsNyArNTAwNCw3 IEBAIHFlbXVNaWdyYXRpb25QZXJmb3JtKHZpclFFTVVEcml2ZXJQdHIgZHJpdmVyLD4gIH0+ICA+ ICBzdGF0aWMgaW50PiAtcWVtdU1pZ3JhdGlvblZQQXNzb2NpYXRlUG9ydFByb2ZpbGVzKHZpckRv bWFpbkRlZlB0ciBkZWYpPiArcWVtdU1pZ3JhdGlvblZQQXNzb2NpYXRlUG9ydFByb2ZpbGVzKHZp ckRvbWFpbkRlZlB0ciBkZWYsIGNvbnN0IGNoYXIgKnN0YXRlRGlyKQ0KDQoNCg0KDQoNCg0KDQoN Cg0KDQoNCg0KDQoNCuiKpuW/l+aciyBsdXpoaXBlbmcNCg0KDQoNCg0KDQoNCklU5byA5Y+R5bel 56iL5biIIElUIERldmVsb3BtZW50CkVuZ2luZWVyDQrmk43kvZzns7vnu5/kuqflk4Hpg6gv5Lit 5b+D56CU56m26ZmiL+ezu+e7n+S6p+WTgSBPUyBQcm9kdWN0IERlcHQuL0NlbnRyYWwgUu+8hkQg SW5zdGl0dXRlL1N5c3RlbSBQcm9kdWN0DQoNCg0KDQoNCg0KDQoNCg0KDQrmt7HlnLPluILljZfl sbHljLrnp5HmioDljZfot681NeWPt+S4reWFtOmAmuiur+eglOWPkeWkp+alvDMz5qW8IA0KMzMv RiwgUiZEIEJ1aWxkaW5nLCBaVEUKQ29ycG9yYXRpb24gSGktdGVjaCBSb2FkIFNvdXRoLCANCkhp LXRlY2gKSW5kdXN0cmlhbCBQYXJrIE5hbnNoYW4gRGlzdHJpY3QsIFNoZW56aGVuLCBQLlIuQ2hp bmEsIDUxODA1NyANClQ6ICs4NiA3NTUgeHh4eHh4eHggRjorODYgNzU1IHh4eHh4eHh4IA0KTTog Kzg2IHh4eHh4eHh4eHh4IA0KRTogbHUuemhpcGVuZ0B6dGUuY29tLmNuIA0Kd3d3Lnp0ZS5jb20u Y24NCg0KDQoNCg0KDQoNCuWOn+Wni+mCruS7tg0KDQoNCg0K5Y+R5Lu25Lq677yaIDxsYWluZUBs YWluZS5vcmc+DQrmlLbku7bkurrvvJogPGxpYnZpci1saXN0QHJlZGhhdC5jb20+DQrmioTpgIHk urrvvJroiqblv5fmnIsxMDEwODI3Mg0K5pelIOacnyDvvJoyMDE35bm0MDfmnIgxN+aXpSAwNTow MQ0K5Li7IOmimCDvvJpSZTogW2xpYnZpcnRdIFt2MiBSRVNFTkQgUEFUQ0hdIHFlbXU6IHJlZHVj ZSBwYWNrZXQgbG9zcyByYXRlIGZvciB2bXdpdGggbWFjdnRhcCBwYXNzdGhyb3VnaCBtb2RlIGlu IG1pZ3JhdGlvbg0KDQoNCg0KDQoNCk9uIDA2LzE0LzIwMTcgMDQ6MjkgQU0sIFpoaVBlbmcgTHUg d3JvdGU6DQo+IEJlZm9yZSBsaWJ2aXJ0IHRoYXQgY2FsbHMgdmlyTmV0RGV2TWFjVkxhbkNyZWF0 ZVdpdGhWUG9ydFByb2ZpbGUgc2V0cyBtYWMgYWRkcmVzcw0KPiBvciB2bGFuIG9mIGEgVmlydHVh bCBGdW5jdGlvbihWRikgbGlua2VkIHRvIGEgbWFjdnRhcCBwYXNzdGhyb3VnaCBkZXZpY2Ugb2Yg bWlncmF0aW9uDQo+IGRlc3RpbmF0aW9uIGhvc3QgaW4gbWlncmF0aW9uIHN0YXJ0IHN0ZXAuIElm IHdlIHBpbmcgdGhlIG1pZ3JhdGluZyB2bSwNCj4gd2UgZ2V0IHRoZSBuZXR3b3JrIGRvZXMgbm90 IHBhc3MuIEJlY2F1c2UgVkZzIG9mIG1pZ3JhdGlvbiBzb3VyY2UgYW5kIGRlc3RpbmF0aW9uDQo+ IGhhdmUgdGhlIHNhbWUgTUFDIGFkZHJlc3MuIFRoZSBwYXRjaCBsYXRlciBjYWxsaW5nIHFlbXVN aWdyYXRpb25WUEFzc29jaWF0ZVBvcnRQcm9maWxlcw0KPiBzZXRzIG1hYyBhZGRyZXNzIG9mIFZG IGluIG1pZ3JhdGlvbiBmaW5pc2ggc3RlcCBpbnN0ZWFkIG9mIHN0YXJ0IHN0ZXAuDQo+IFRoZSBw YXRjaCBhaW1zIHRvIHJlZHVjZSBwYWNrZXQgbG9zcyByYXRlLg0KDQpJIG1pc3NlZCB0aGlzIHBh dGNoIHdoZW4geW91IGluaXRpYWxseSBzZW50IGl0LCBhbmQgc2VlIHRoYXQgbm9ib2R5IGVsc2UN CnJlc3BvbmRlZC4uLg0KDQoNCldoYXQgeW91J3JlIGRvaW5nIGhlcmUgc2hvdWxkbid0IGJlIG5l ZWRlZC4gRHVyaW5nIG1pZ3JhdGlvbiwgYSBtYWN2dGFwDQpkZXZpY2Ugc2hvdWxkIGJlIGNyZWF0 ZWQgd2l0aCB+SUZGX1VQLCBhbmQgbm90IGJyb3VnaHQgb25saW5lIHVudGlsDQpxZW11SW50ZXJm YWNlU3RhcnREZXZpY2UoKSBpcyBjYWxsZWQganVzdCBwcmlvciB0byBzdGFydGluZyB0aGUgZ3Vl c3QNCkNQVXMgb24gdGhlIGRlc3RpbmF0aW9uIGJ5IHRoaXMgdGltZSB0aGUgZ3Vlc3QgQ1BVcyBv biB0aGUgc291cmNlIGhhdmUNCmFscmVhZHkgYmVlbiBzdG9wcGVkIChhbmQgdGhlIGd1ZXN0J3Mg bWFjdnRhcCBpbnRlcmZhY2VzIG9uIHRoZSBzb3VyY2UNCmhhdmUgYmVlbiBzZXQgb2ZmbGluZSku IFVudGlsIGEgZGV2aWNlIGlzIElGRl9VUCwgaXQgc2hvdWxkbid0IHNlbmQgb3V0DQphbnkgdHJh ZmZpYyB3aXRoIGl0cyBNQUMgYWRkcmVzcy4NCg0KSWYgeW91IGxvb2sgYXQgdGhlIG1hY3Z0YXAg ZGV2aWNlIG9uIHRoZSBkZXN0aW5hdGlvbiBhbmQgaXQgaGFzIElGRl9VUA0Kc2V0IHByaW9yIHRv IHRoZSBjb21wbGV0aW9uIG9mIG1pZ3JhdGlvbiwgdGhlbiB0aGVyZSBpcyBhIGJ1ZyBpbiBsaWJ2 aXJ0DQp0aGF0IHdlIG5lZWQgdG8gZml4LiBPdGhlcndpc2UsIEkgdGhpbmsgYW55IHBhY2tldCBs b3NzIHlvdSdyZSBzZWVpbmcgaXMNCmNvbWluZyBmcm9tIHNvbWV0aGluZyBlbHNlLg0KDQoNCj4N Cj4gU2lnbmVkLW9mZi1ieTogWmhpUGVuZyBMdSA8bHUuemhpcGVuZ0B6dGUuY29tLmNuPg0KPiAt LS0NCj4gIHNyYy9xZW11L3FlbXVfbWlncmF0aW9uLmMgICB8IDE4ICsrKysrKysrKysrKysrKyst LQ0KPiAgc3JjL3V0aWwvdmlybmV0ZGV2bWFjdmxhbi5jIHwgMTcgKysrKysrKysrKystLS0tLS0N Cj4gIDIgZmlsZXMgY2hhbmdlZCwgMjcgaW5zZXJ0aW9ucygrKSwgOCBkZWxldGlvbnMoLSkNCj4N Cj4gZGlmZiAtLWdpdCBhL3NyYy9xZW11L3FlbXVfbWlncmF0aW9uLmMgYi9zcmMvcWVtdS9xZW11 X21pZ3JhdGlvbi5jDQo+IGluZGV4IDA5YWRiMDQuLjc5NWVkNzEgMTAwNjQ0DQo+IC0tLSBhL3Ny Yy9xZW11L3FlbXVfbWlncmF0aW9uLmMNCj4gKysrIGIvc3JjL3FlbXUvcWVtdV9taWdyYXRpb24u Yw0KPiBAQCAtNTAwNCw3ICs1MDA0LDcgQEAgcWVtdU1pZ3JhdGlvblBlcmZvcm0odmlyUUVNVURy aXZlclB0ciBkcml2ZXIsDQo+ICB9DQo+ICANCj4gIHN0YXRpYyBpbnQNCj4gLXFlbXVNaWdyYXRp b25WUEFzc29jaWF0ZVBvcnRQcm9maWxlcyh2aXJEb21haW5EZWZQdHIgZGVmKQ0KPiArcWVtdU1p Z3JhdGlvblZQQXNzb2NpYXRlUG9ydFByb2ZpbGVzKHZpckRvbWFpbkRlZlB0ciBkZWYsIGNvbnN0 IGNoYXIgKnN0YXRlRGlyKQ0KPiAgew0KPiAgICAgIHNpemVfdCBpDQo+ICAgICAgaW50IGxhc3Rf Z29vZF9uZXQgPSAtMQ0KPiBAQCAtNTAxMyw2ICs1MDEzLDIwIEBAIHFlbXVNaWdyYXRpb25WUEFz c29jaWF0ZVBvcnRQcm9maWxlcyh2aXJEb21haW5EZWZQdHIgZGVmKQ0KPiAgICAgIGZvciAoaSA9 IDAgaSA8IGRlZi0+bm5ldHMgaSsrKSB7DQo+ICAgICAgICAgIG5ldCA9IGRlZi0+bmV0c1tpXQ0K PiAgICAgICAgICBpZiAodmlyRG9tYWluTmV0R2V0QWN0dWFsVHlwZShuZXQpID09IFZJUl9ET01B SU5fTkVUX1RZUEVfRElSRUNUKSB7DQo+ICsgICAgICAgICAgICBpZiAoKCF2aXJEb21haW5OZXRH ZXRBY3R1YWxWaXJ0UG9ydFByb2ZpbGUobmV0KSB8fCAodmlyRG9tYWluTmV0R2V0QWN0dWFsVmly dFBvcnRQcm9maWxlKG5ldCkgJiYNCj4gKyAgICAgICAgICAgICAgICAgdmlyRG9tYWluTmV0R2V0 QWN0dWFsVmlydFBvcnRQcm9maWxlKG5ldCktPnZpcnRQb3J0VHlwZSAhPSBWSVJfTkVUREVWX1ZQ T1JUX1BST0ZJTEVfODAyMVFCRyAmJg0KPiArICAgICAgICAgICAgICAgIHZpckRvbWFpbk5ldEdl dEFjdHVhbFZpcnRQb3J0UHJvZmlsZShuZXQpLT52aXJ0UG9ydFR5cGUgIT0gVklSX05FVERFVl9W UE9SVF9QUk9GSUxFXzgwMjFRQkgpKSAmJg0KPiArICAgICAgICAgICAgICAgIHZpckRvbWFpbk5l dEdldEFjdHVhbERpcmVjdE1vZGUobmV0KSA9PQ0KPiArICAgICAgICAgICAgICAgICBWSVJfTkVU REVWX01BQ1ZMQU5fTU9ERV9QQVNTVEhSVSkgew0KPiArICAgICAgICAgICAgICAgIGlmICh2aXJO ZXREZXZTYXZlTmV0Q29uZmlnKHZpckRvbWFpbk5ldEdldEFjdHVhbERpcmVjdERldihuZXQpLA0K PiArICAgICAgICAgICAgICAgICAgICAtMSwgc3RhdGVEaXIsIGZhbHNlKSA8IDApIHsNCj4gKyAg ICAgICAgICAgICAgICAgICAgZ290byBlcnJfZXhpdA0KPiArICAgICAgICAgICAgICAgIH0NCj4g KyAgICAgICAgICAgICAgICBpZiAodmlyTmV0RGV2U2V0TmV0Q29uZmlnKHZpckRvbWFpbk5ldEdl dEFjdHVhbERpcmVjdERldihuZXQpLA0KPiArICAgICAgICAgICAgICAgICAgICAtMSwgTlVMTCwg dmlyRG9tYWluTmV0R2V0QWN0dWFsVmxhbihuZXQpLCAmbmV0LT5tYWMsIGZhbHNlKSA8IDApIHsN Cj4gKyAgICAgICAgICAgICAgICAgICAgZ290byBlcnJfZXhpdA0KPiArICAgICAgICAgICAgICAg IH0NCj4gKyAgICAgICAgICAgIH0NCj4gICAgICAgICAgICAgIGlmICh2aXJOZXREZXZWUG9ydFBy b2ZpbGVBc3NvY2lhdGUobmV0LT5pZm5hbWUsDQo+ICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHZpckRvbWFpbk5ldEdldEFjdHVhbFZpcnRQb3J0UHJvZmls ZShuZXQpLA0KPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAmbmV0LT5tYWMsDQo+IEBAIC01MTg3LDcgKzUyMDEsNyBAQCBxZW11TWlncmF0aW9uRmluaXNo KHZpclFFTVVEcml2ZXJQdHIgZHJpdmVyLA0KPiAgICAgICAgICBnb3RvIGVuZGpvYg0KPiAgICAg IH0NCj4gIA0KPiAtICAgIGlmIChxZW11TWlncmF0aW9uVlBBc3NvY2lhdGVQb3J0UHJvZmlsZXMo dm0tPmRlZikgPCAwKQ0KPiArICAgIGlmIChxZW11TWlncmF0aW9uVlBBc3NvY2lhdGVQb3J0UHJv ZmlsZXModm0tPmRlZiwgY2ZnLT5zdGF0ZURpcikgPCAwKQ0KPiAgICAgICAgICBnb3RvIGVuZGpv Yg0KPiAgDQo+ICAgICAgaWYgKG1pZy0+bmV0d29yayAmJiBxZW11RG9tYWluTWlncmF0ZU9QRFJl bG9jYXRlKGRyaXZlciwgdm0sIG1pZykgPCAwKQ0KPiBkaWZmIC0tZ2l0IGEvc3JjL3V0aWwvdmly bmV0ZGV2bWFjdmxhbi5jIGIvc3JjL3V0aWwvdmlybmV0ZGV2bWFjdmxhbi5jDQo+IGluZGV4IDcy MjJiMGYuLjY4MmRjZDEgMTAwNjQ0DQo+IC0tLSBhL3NyYy91dGlsL3Zpcm5ldGRldm1hY3ZsYW4u Yw0KPiArKysgYi9zcmMvdXRpbC92aXJuZXRkZXZtYWN2bGFuLmMNCj4gQEAgLTEwMjAsMTIgKzEw MjAsMTcgQEAgdmlyTmV0RGV2TWFjVkxhbkNyZWF0ZVdpdGhWUG9ydFByb2ZpbGUoY29uc3QgY2hh ciAqaWZuYW1lUmVxdWVzdGVkLA0KPiAgICAgICAgICAgICAgICovDQo+ICAgICAgICAgICAgICBz ZXRWbGFuID0gZmFsc2UNCj4gICAgICAgICAgfQ0KPiAtDQo+IC0gICAgICAgIGlmICh2aXJOZXRE ZXZTYXZlTmV0Q29uZmlnKGxpbmtkZXYsIC0xLCBzdGF0ZURpciwgc2V0VmxhbikgPCAwKQ0KPiAt ICAgICAgICAgICByZXR1cm4gLTENCj4gLQ0KPiAtICAgICAgICBpZiAodmlyTmV0RGV2U2V0TmV0 Q29uZmlnKGxpbmtkZXYsIC0xLCBOVUxMLCB2bGFuLCBtYWNhZGRyZXNzLCBzZXRWbGFuKSA8IDAp DQo+IC0gICAgICAgICAgIHJldHVybiAtMQ0KPiArICAgICAgICBpZiAodm1PcCAhPSBWSVJfTkVU REVWX1ZQT1JUX1BST0ZJTEVfT1BfTUlHUkFURV9JTl9TVEFSVCAmJg0KPiArICAgICAgICAgICAg dmlydFBvcnRQcm9maWxlICYmICh2aXJ0UG9ydFByb2ZpbGUtPnZpcnRQb3J0VHlwZSA9PSBWSVJf TkVUREVWX1ZQT1JUX1BST0ZJTEVfODAyMVFCSCB8fA0KPiArICAgICAgICAgICAgdmlydFBvcnRQ cm9maWxlLT52aXJ0UG9ydFR5cGUgPT0gVklSX05FVERFVl9WUE9SVF9QUk9GSUxFXzgwMjFRQkcp KSB7DQo+ICsgICAgICAgICAgICBpZiAodmlyTmV0RGV2U2F2ZU5ldENvbmZpZyhsaW5rZGV2LCAt MSwgc3RhdGVEaXIsIHNldFZsYW4pIDwgMCkgew0KPiArICAgICAgICAgICAgICAgIHJldHVybiAt MQ0KPiArICAgICAgICAgICAgfQ0KPiArICAgICAgICAgICAgaWYgKHZpck5ldERldlNldE5ldENv bmZpZyhsaW5rZGV2LCAtMSwgTlVMTCwgdmxhbiwgbWFjYWRkcmVzcywNCj4gKyAgICAgICAgICAg ICAgICBzZXRWbGFuKSA8IDApIHsNCj4gKyAgICAgICAgICAgICAgICByZXR1cm4gLTENCj4gKyAg ICAgICAgICAgIH0NCj4gKyAgICAgICAgfQ0KPiAgICAgIH0NCj4gIA0KPiAgICAgIGlmIChpZm5h bWVSZXF1ZXN0ZWQpIHs=