Q2FyZXksCgpEZXNwaXRlIG5vdCBleHBlY3RpbmcgYW55IGFuYWxvZyBzaWduYWxzLCB5b3Ugc3Rp bGwgaGF2ZSB0byBkaXNhYmxlIHRoZQphbmFsb2cgaW5wdXQgdG8gZW5zdXJlIHRoYXQgeW91ciBJ MkMgbGluZXMgaGF2ZSB0aGUgY29ycmVjdCBpbXBlZGFuY2UuIEl0Cm1heSBzZWVtIGlsbG9naWNh bCBidXQgdGhhdCdzIHRoZSB3YXkgdGhlIEsgc2VyaWVzIG9mIFBJQ3Mgd29ya3MuCgpCZXN0LApS YXkKCkNhcmV5IEZpc2hlciB3cm90ZToKPiBSYXksCj4KPiBUaGFuayB5b3UgZm9yIHRoZSByZXNw b25zZS4KPgo+IEkndmUgc2V0IFNTUDFDT04xLlNTUEVOIHRvIGNvbmZpZ3VyZSB0aGUgcGlucy4g VGhlcmUgYXJlIG5vIGFuYWxvZ3Mgb24KPiBQb3J0QyBzbyBubyBuZWVkIHRvIGNvbmZpZ3VyZSBB TlNFTEMuIFRoZSBwb3J0IHBpbiBhc3NpZ25tZW50cyBkZWZhdWx0IHRvCj4gdGhlIGNvcnJlY3Qg dmFsdWVzIGF0IHBvd2VyIG9uIHNvIG5vIG5lZWQgdG8gbWVzcyB3aXRoIHRoZSBQUFMgcmVnaXN0 ZXJzLgo+Cj4gV2hhdCBlbHNlIG5lZWRzIHRvIGJlIGRvbmU/Cj4KPiBDYXJleSBGaXNoZXIKPgo+ IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tCj4gRnJvbTogcGljbGlzdC1ib3VuY2VzQG1pdC5l ZHUgW21haWx0bzpwaWNsaXN0LWJvdW5jZXNAbWl0LmVkdV0gT24gQmVoYWxmCj4gT2YgUmF5IEhh ZGRhZAo+IFNlbnQ6IFR1ZXNkYXksIEZlYnJ1YXJ5IDI3LCAyMDE4IDM6NTYgUE0KPiBUbzogTWlj cm9jb250cm9sbGVyIGRpc2N1c3Npb24gbGlzdCAtIFB1YmxpYy4gPHBpY2xpc3RAbWl0LmVkdT4K PiBTdWJqZWN0OiBSZTogW1BJQ10gSTJDIE1vZHVsZSBvbiAxOEY2N0s0MAo+Cj4gQ2FyZXksCj4K PiBBbGwgb3RoZXIgZnVuY3Rpb25zIG9uIHRob3NlIHBpbnMgbXVzdCBiZSBkaXNhYmxlZCBpbiB5 b3VyIGhlYWRlci4gT25seQo+IHRoZSBTQ0wgYW5kIFNEQSBvdXRwdXRzIGNhbiBiZSBlbmFibGUu IFJlZmVyIHRvIHRoZSBzcGVjIHNoZWV0IHNvIHNldCB5b3VyCj4gcmVnaXN0ZXJzIHRvIGRpc2Fi bGUgdGhvc2UgZnVuY3Rpb25zLgo+Cj4gUmF5Cj4KPgo+IENhcmV5IEZpc2hlciB3cm90ZToKPj4g SSdtIGhhdmluZyBhIHRlcnJpYmxlIHRpbWUgdHJ5aW5nIHRvIGdldCB0aGUgSTJDIG1vZHVsZSBv biB0aGUKPj4gMThGNjdLNDAgd29ya2luZy4gTXkgdGVzdCBjb2RlIGlzIHBvc3RlZCBiZWxvdy4g VGhpcyBjb2RlIGFuZCB0aGUgSTJDCj4+IG1vZHVsZSBzZWVtIHZlcnkgc2ltcGxlIHNvIEkgbXVz dCBiZSBtaXNzaW5nIHNvbWV0aGluZyBzaW1wbGUuCj4+IFRoaXMgY29kZSB0cmllcyB0byByZWFk IGFkZHJlc3MgMDAwMCBvZiBhbiBhdHRhY2hlZCAyNExDNTEyIEVFUFJPTS4gSQo+PiBrbm93IHRo ZSBoYXJkd2FyZSBpcyBnb29kIGJlY2F1c2UgSSBjYW4gdXNlIFBpYyBCYXNpYyBQcm8gYW5kIHJl YWQgYW5kCj4+IHdyaXRlIHRoZSBFRVBST00gdXNpbmcgSTJDLgo+PiBUaGUgY29kZSBJJ20gdXNp bmcgY2FtZSBvZmYgYSBmb3J1bSBvbiB0aGUgTWljcm9jaGlwIFN1cHBvcnQgd2Vic2l0ZS4KPj4g SXQgaXMgImJ1bGxldCBwcm9vZiIuIEhhLgo+Pgo+PiBJJ3ZlIHB1dCBkZWJ1Z2dpbmcgc3RhdGVt ZW50cyBpbiB0aGUgY29kZSBhbmQgd2hhdCBJJ3ZlIGZvdW5kIGlzIHRoYXQKPj4gdGhlIEludGVy cnVwdCBmbGFnLCBQSVIzLFNTUDFJRiwgbmV2ZXIgZ2V0cyBhc3NlcnRlZC4KPj4KPj4gQW55IHBv aW50ZXJzIHdvdWxkIGJlIGdyZWF0bHkgYXBwcmVjaWF0ZWQuCj4+Cj4+Cj4+ICdpMmN0ZXN0LnBi cAo+PiAnYW5vdGhlciB0cnkgYXQgcmVhZGluZyBJMkMgZGF0YSBmcm9tIDI0TEM1MTIKPj4KPj4g J1N0YXJ0IENvbmRpdGlvbgo+PiAnQ29udHJvbCBCeXRlIGZvciB3cml0ZQo+PiAnSGlnaCBhZGRy ZXNzIGJ5dGUKPj4gJ0xvdyBhZGRyZXNzIGJ5dGUKPj4gJ1N0YXJ0IENvbmRpdGlvbgo+PiAnQ29u dHJvbCBCeXRlIGZvciByZWFkCj4+ICdSZWFkIGluIGRhdGEgYnl0ZQo+PiAnUmV0dXJuIHdpdGgg TkFDSwo+PiAnU3RvcCBDb25kaXRpb24KPj4KPj4KPj4gYXNtCj4+ICNkZWZpbmUgTWVtdG9wIDB4 MTAwMDAgICAgICAgO2hpZ2VzdCBtZW1vcnkgaW4gdGhlIDE4RjY3azQwIHByb2Nlc3Nvcgo+PiBT dGFydGFkZHJlc3MgPSAgIE1lbVRvcC04MDAKPj4gU0RBID0gNAo+PiBTQ0wgPSAzCj4+Cj4+ICAg ICBPUkcgU3RhcnRhZGRyZXNzCj4+Cj4+IDsqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKPj4gIDsKPj4gIDsgIDI0TEMyNTYgSTJD IFNpbmdsZSBCeXRlIFJlYWQgUm91dGluZXMgIDsKPj4KPj4gIDsKPj4gIDsKPj4gX0kyQ1RFU1Qx Cj4+ICAgICAJcmNhbGwgCUkyQ0luaXQKPj4KPj4gO0VFX1JECj4+ICAgICAJcmNhbGwJSTJDU3Ry dAkJO3NlbmQgSTJDIFNUQVJUCj4+ICAgICAJbW92bHcgIGgnQTYnCj4+ICAJcmNhbGwJSTJDU2Vu ZAkJO3NlbmQgZGV2aWNlIGFkZHJlc3MgKGNvbnRyb2wgYnl0ZSkKPj4gICAgCSBtb3ZsdyAgIGgn MDAnCj4+ICAJcmNhbGwJSTJDU2VuZAkJO3NlbmQgYWRkcmVzcyBoaSBieXRlCj4+ICAgIAkgbW92 bHcgICBoJzAwJwo+PiAgCXJjYWxsCUkyQ1NlbmQJCTtzZW5kIGFkZHJlc3MgbG8gYnl0ZQo+PiAg CXJjYWxsCUkyQ1N0cnQJCTtzZW5kIEkyQyBTVEFSVAo+PiAgICAJIG1vdmx3ICAgaCdBNycKPj4g IAlyY2FsbAlJMkNTZW5kCQk7c2VuZCBkZXZpY2UgYWRkcmVzcyAoY29udHJvbCBieXRlKQo+PiBF RV9SMQo+PiAgICAgCXJjYWxsCUkyQ1JjdgkJO3JlY2VpdmUgbW9kZSAocmVjZWl2ZSBieXRlKQo+ PiAgICAgCW1vdndmICAgX3Rlc3RieXRlMQo+PiAgCXJjYWxsCUkyQ05hY2sJCTtzaWduYWwgZW5k IG9mIHJlY2VpdmUKPj4gIAlyY2FsbAlJMkNTdG9wcAkJO3NlbmQgU1RPUAo+PiAgCXJldHVybgkJ CTsKPj4KPj4gIDsqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioKPj4gIDsKPj4gIDsgIEkyQyBwcmltaXRpdmVzCj4+ICA7Cj4+ICA7 ICBTU1BBREQgPSAoKEZvc2MvSTJDY2xvY2spLzQpLTEgIHtmb3JtdWxhIGZyb20gQU43MzV9ICA7 Cj4+Cj4+IEkyQ0luaXQKPj4gICAgICAgICAJYnNmIFBJRTMsU1NQMUlFCSA7IGVuYWJsZSB0aGUg SW50ZXJydXB0IGZsYWcsIFBJUjMsU1NQMUlGCj4+ICAgICAgICBic2YJVFJJU0MsU0NMCTsKPj4g IAlic2YJVFJJU0MsU0RBCTsKPj4gIAltb3ZsdwliJzAwMTAxMDAwJwk7U1NQRU4gKyAxMkMgTWFz dGVyCj4+ICAJbW92d2YJU1NQMUNPTjEJCTsKPj4gIAltb3ZsdwliJzAwMDAwMDAwJwk7Cj4+ICAJ bW92d2YJU1NQMUNPTjIJCTsKPj4gIAltb3ZsdwliJzAwMDAwMDAwJwk7c2xldyByYXRlIG9uIGZv ciA0MDBraHoKPj4gIAltb3Z3ZglTU1AxU1RBVAkJOwo+PiAgCW1vdmx3CWQnMTMnCQk7KDIwMDAw MDAwLzEwMDAwMCktMS80Cj4+ICAJbW92d2YJU1NQMUFERAkJOzQwMGtoeiB1c2luZyAyMG1oeiB4 dGFsCj4+ICAgICByZXR1cm4JCQk7Cj4+Cj4+IEkyQ0RlYnVnCj4+ICAgIAkgbW92ZiAgc3NwMXN0 YXQsMAo+PiAgCW1vdndmIF90ZXN0Ynl0ZTEKPj4gIAltb3ZmIHNzcDFjb24xLDAKPj4gIAltb3Z3 ZiBfdGVzdGJ5dGUyCj4+ICAJbW92ZiBzc3AxY29uMiwwCj4+ICAJbW92d2YgX3Rlc3RieXRlMwo+ PiAgCW1vdmYgc3NwMWNvbjMsMAo+PiAgCW1vdndmIF90ZXN0Ynl0ZTQKPj4gICAgIHJldHVybgo+ Pgo+PiBJMkNXYWl0Cj4+ICAgICAJYnRmc3MgUElSMyxTU1AxSUYJO2NvbXBsZXRlIGZsYWc/Cj4+ ICAJYnJhCUkyQ1dhaXQJCTtubywgd2FpdAo+PiAgCWJjZglQSVIzLFNTUDFJRgk7Y2xlYXIgaXJx IGZsYWcKPj4gIHJldHVybgkJCTsKPj4KPj4gSTJDU3RydAo+PiAgICAgCWJzZglTU1AxQ09OMixT RU5fU1NQMUNPTjIJO3NlbmQgU1RBUlQgY29uZGl0aW9uCj4+ICAgICAJYnJhCUkyQ1dhaXQJCTsK Pj4KPj4gSTJDU3RvcHAKPj4gICAgIAlic2YJU1NQMUNPTjIsUEVOCTtzZW5kIFNUT1AgY29uZGl0 aW9uCj4+ICAJYnJhCUkyQ1dhaXQJCTsKPj4KPj4gSTJDU2VuZAo+PiAgICAgCW1vdndmCVNTUDFC VUYJCTtzZW5kIGJ5dGUKPj4gIAlicmEJSTJDV2FpdAkJOwo+Pgo+PiBJMkNSY3YKPj4gICAgIAli dGZzYwlTU1AxU1RBVCxSX1cJO3RyYW5zbWl0IGNvbXBsZXRlPwo+PiAgCWJyYQlJMkNSY3YJCTtu bywgd2FpdAo+PiAgCWJzZglTU1AxQ09OMixSQ0VOCTtyZWNlaXZlIGVuYWJsZQo+PiAgICAgCWJj ZglQSVIzLFNTUDFJRgk7Y2xlYXIgaXJxIGZsYWcKPj4gICAgCSByY2FsbAlJMkNXYWl0CQk7Cj4+ ICAJbW92ZglTU1AxQlVGLFcJOwo+PiAgcmV0dXJuCQkJOwo+Pgo+PiBJMkNBY2sKPj4gICAgIAli Y2YJU1NQMUNPTjIsQUNLRFQJO3NldCBBQ0sKPj4gIAlicmEJSTJDTmFjaysyCTsKPj4KPj4gSTJD TmFjawo+PiAgICAJIGJzZglTU1AxQ09OMixBQ0tEVAk7c2V0IE5BQ0sKPj4gIAlic2YJU1NQMUNP TjIsQUNLRU4JO3NlbmQgQUNLIG9yIE5BQ0sKPj4gIAlicmEJSTJDV2FpdAkJOwo+Pgo+PiBJMkNS ZXMKPj4gICAgIAlic2YJU1NQMUNPTjIsUlNFTgk7c2VuZCBSRVNUQVJUIGNvbmRpdGlvbgo+PiAg CWJyYQlJMkNXYWl0CQk7Cj4+Cj4+IGVuZGFzbQo+Pgo+PiBDYXJleSBGaXNoZXIg4pSCIERpcmVj dG9yIG9mIEVuZ2luZWVyaW5nIE8gKzEgNzcwLTIwOS0wMDEyIHgyMDMxIOKUgiBGICsxCj4+IDc3 MC0yMDktMDcxOQo+PiA0Mjk1IEhhbWlsdG9uIE1pbGwgUm9hZCDilIIgU3VpdGUgMTAwIOKUgiBC dWZvcmQsIEdBIDMwNTE4Cj4+IHd3dy5vbW5pbWV0cml4Lm5ldAo+Pgo+Pgo+Pgo+PiBUZWxsIHVz IGhvdyB3ZSdyZSBkb2luZyEgQ2xpY2sgaGVyZSB0byB0YWtlIG91ciB0d28tcXVlc3Rpb24gc3Vy dmV5Lgo+Pgo+PiDCoCDCoMKgwqAKPj4KPj4KPj4gLS0KPj4gaHR0cDovL3d3dy5waWNsaXN0LmNv bS90ZWNocmVmL3BpY2xpc3QgUElDL1NYIEZBUSAmIGxpc3QgYXJjaGl2ZQo+PiBWaWV3L2NoYW5n ZSB5b3VyIG1lbWJlcnNoaXAgb3B0aW9ucyBhdAo+PiBodHRwOi8vbWFpbG1hbi5taXQuZWR1L21h aWxtYW4vbGlzdGluZm8vcGljbGlzdAo+Pgo+Cj4KPiAtLQo+IGh0dHA6Ly93d3cucGljbGlzdC5j b20vdGVjaHJlZi9waWNsaXN0IFBJQy9TWCBGQVEgJiBsaXN0IGFyY2hpdmUKPiBWaWV3L2NoYW5n ZSB5b3VyIG1lbWJlcnNoaXAgb3B0aW9ucyBhdAo+IGh0dHA6Ly9tYWlsbWFuLm1pdC5lZHUvbWFp bG1hbi9saXN0aW5mby9waWNsaXN0Cj4KPiAtLQo+IGh0dHA6Ly93d3cucGljbGlzdC5jb20vdGVj aHJlZi9waWNsaXN0IFBJQy9TWCBGQVEgJiBsaXN0IGFyY2hpdmUKPiBWaWV3L2NoYW5nZSB5b3Vy IG1lbWJlcnNoaXAgb3B0aW9ucyBhdAo+IGh0dHA6Ly9tYWlsbWFuLm1pdC5lZHUvbWFpbG1hbi9s aXN0aW5mby9waWNsaXN0Cj4KCgotLSAKaHR0cDovL3d3dy5waWNsaXN0LmNvbS90ZWNocmVmL3Bp Y2xpc3QgUElDL1NYIEZBUSAmIGxpc3QgYXJjaGl2ZQpWaWV3L2NoYW5nZSB5b3VyIG1lbWJlcnNo aXAgb3B0aW9ucyBhdApodHRwOi8vbWFpbG1hbi5taXQuZWR1L21haWxtYW4vbGlzdGluZm8vcGlj bGlzdAo= .