T24gU2F0LCAyMDI0LTA1LTA0IGF0IDA3OjUzICswMjAwLCBQZXRlciBCb3kgd3JvdGU6DQo+IA0K PiANCj4gPiBBbSAwNC4wNS4yMDI0IHVtIDA1OjQxIHNjaHJpZWIgU8OpcmdpbyBCYXN0byA8c2Vy Z2lvQHNlcmp1eC5jb20+Og0KPiA+IA0KPiA+IEhpLCANCj4gPiBBYm91dCB0aGlzIGRvY3VtZW50 YXRpb24gWzBdLCBmaW5hbGx5IHRhbGtzIGFib3V0IHJlc2N1ZSBhDQo+ID4gYm9vdGxvYWRlcg0K PiA+IHdpdGggbGl2ZSBpbWFnZXMgLi4uIChidXQgSSB3aWxsIHdyb3RlIGFib3V0IHRoYXQgaW4g YW5vdGhlciB0aW1lKQ0KPiANCj4gVGhhdCBkb2MgaXMgcXVpdGUgb2xkLCBsYXN0IHJldmlldyAy MDEyLTA1LTExISBBcyBhIG1lbWJlciBvZiB0aGUNCj4gZG9jcyBib2FyZCBpdCB0cmllZCB0byBn ZXQgaXQgdXBkYXRlZCBieSBhbiBleHBlcnQgRmVkb3JpYW4sDQo+IHVuZm9ydHVuYXRlbHkgd2l0 aG91dCBzdWNjZXNzLiBHcnViIGNoYW5nZXMgb25seSBzbG93bHkgYW5kDQo+IGNhcmVmdWxseS4g QmFzaWNhbGx5LCB0aGUgdGV4dCBpcyBzdGlsbCBPSyBpbiBteSBvcGluaW9uLCBidXQgc29tZQ0K PiB0aGluZ3MgYXJlIG1pc3NpbmcuIA0KPiANCj4gDQo+ID4gSSBydW4gaW4gdHJvdWJsZSBvbiBj bG9uaW5nIGEgZGlzayBmcm9tIGFuIG9sZCBjb21wdXRlciBhbmQNCj4gPiBzdGFydGluZw0KPiA+ IGJvb3Rpbmcgb24gYSBuZXcgY29tcHV0ZXIgLCBzZWN1cml0eSBnZXQgdGhlIHRoaW5nIG1vcmUN Cj4gPiBjb21wbGljYXRlZCwgSQ0KPiA+IGhhZCB0byBkaXNhYmxlIHNlY3VyZSBib290IGFuZCBz ZWxpbnV4IG5vdCBzdXJlICwgYnV0IEkgYWR2aWNlIGJvb3QNCj4gPiB3aXRoIGtlcm5lbCBwYXJh bWV0ZXIgc2VsaW51eD0wDQo+IA0KPiBUbyBzZXQgc2VsaW51eD0wIGlzIGEgYmFkIGlkZWEuIEFs bCB0aGUgaXNzdWVzIHlvdSBkZXNjcmliZSBoYXZlDQo+IG5vdGhpbmcgdG8gZG8gd2l0aCBzZWxp bnV4Lg0KPiANCj4gPiBteSBvbGQgY29tcHV0ZXIgd2FzIGJpb3MgbGVnYWN5IGFuZCB0aGUgbmV3 IGhhdmUgVUVGSSBhbmQgaGVyZQ0KPiA+IHN0YXJ0cw0KPiA+IHRoZSBjaGFsbGVuZ2UgLg0KPiAN Cg0KYWxzbyB0aGlzIGRvY3VtZW50YXRpb24gY2FuIGJlIHdyb25nIA0KaHR0cHM6Ly9kb2NzLmZl ZG9yYXByb2plY3Qub3JnL2VuLVVTL2ZlZG9yYS9yYXdoaWRlL3N5c3RlbS1hZG1pbmlzdHJhdG9y cy1ndWlkZS9rZXJuZWwtbW9kdWxlLWRyaXZlci1jb25maWd1cmF0aW9uL1dvcmtpbmdfd2l0aF90 aGVfR1JVQl8yX0Jvb3RfTG9hZGVyLyNzZWMtZ3J1YjItcmVpbnN0YWxsX29uX1VFRkktQmFzZWRf TWFjaGluZXMNCg0KDQo+IFRoYXTigJlzIHJlYWxseSBhIGNoYWxsZW5nZS4gWW91IGRvbuKAmXQg ZGVzY3JpYmUgd2hhdCB5b3UgZGlkIGluIGRldGFpbC4NCg0KSSBkaWQgc29tZSBub3Rlcywgc29t ZSB5ZWFycyBhZ28gb24gaHR0cHM6Ly93d3cuc2VyanV4LmNvbS9jbG9uZS8gYW5kIEkNCndpbGwg dXBkYXRlIGl0IGFmdGVyIHdyaXRlIHRoaXMgZW1haWwgLg0KDQpGaXJzdCBJIGluc3RhbGxlZCBG ZWRvcmEgMzkgb24gbmV3IGNvbXB1dGVyIHdpdGggYW4gdXNiIHN0aWNrIHdpdGgNCk5ldHdvcmsg SW5zdGFsbCBpc28gLCBpcyBvbmx5IHVzZWZ1bCB0byBtYWtlIHRoZSBwYXJ0aXRpb25zIC4uLg0K QWZ0ZXIgSSBqdXN0IGNvcGllZCB0aGUgZGlza3MgZnJvbSBvbGQgY29tcHV0ZXIgdG8gdGhlIG5l dyBjb21wdXRlcg0Kb3ZlciB0aGUgbmV0d29yaywgc29tZXRoaW5nIGxpa2UgdGhpcyBbMV0gdG8g YW4gL21udC9uZXcgZGlyZWN0b3J5LCBpbg0Kb2xkIGNvbXB1dGVyIHByZXZpb3VzbHkgSSBsb2dn ZWQgb3V0IGFsbCBzZXNzaW9ucyBhbmQgcnVuIGFzIHJvb3QgaW5pdA0KMy4NCkFmdGVyIHdpdGgg c2FtZSAiTmV0d29yayBJbnN0YWxsIGlzbyIsIEkgYm9vdCBhZ2FpbiBpbiBuZXcgY29tcHV0ZXIg YnV0DQppbiByZXNjdWUgbW9kZSBhbmQgSSBkZWxldGUgcm9vdCBhbmQgYm9vdCBvZiB0aGUgcHJl dmlvdXMgaW5zdGFsbGF0aW9uDQphbmQgbW92ZSBkYXRhIChvZiBvbGQgY29tcHV0ZXIpIGZyb20g L21udC9uZXcgZm9sZGVyIHRvIC8gYW5kIC9ib290IA0KDQpUaGUgbmV4dCBpcyBqdXN0IGNoYW5n ZSBvbiAvZXRjL2ZzdGFiIHRoZSBuZXcgbG9jYXRpb24gb2YgLyBhbmQgL2Jvb3QNClsyXSwgQVRN IHdlIGFsc28gbmVlZCBlZGl0IC9ldGMva2VybmVsL2NtZGxpbmXCoFszXSB3aXRoIHRoZSBzYW1l IG5ldw0KbG9jYXRpb24gb2Ygcm9vdCBwYXJ0aXRpb24uDQoNCmFuZCByZWJvb3QgYWdhaW4gc2V2 ZXJhbCB0aW1lcyBpbiByZXNjdWUgbW9kZSwgdW50aWwgcmVzdG9yZSB0aGUgR1JVQjINCkJvb3Rs b2FkZXIgICwNCg0KTm90ZXMgZm9yIGJvb3QgaW50byByZXNjdWUgbW9kZSA6DQoNCkFzIEkgbWVu dGlvbiBJIGRpc2FibGUgc2VjdXJlZCBib290IG9uIGJpb3MgYW5kIHRoaW5rIEkgbmVlZGVkIHRv IGJvb3QNCiJOZXR3b3JrIEluc3RhbGwgaXNvIiB3aXRoIHNlbGludXg9MCBpbiBncnViIGNvbW1h bmQgbGluZSBbNF0uICANCiANCmlmIC9ldGMvZnN0YWIgZG9lc24ndCBoYXZlIHRoZSBjb3JyZWN0 IHBhdGhzLCB3ZSBtYXkgbm90IGhhdmUgTFZNDQphY3RpdmUsIHNvIHRvIGFjdGl2YXRlIGl0IHdl IG5lZWQgcnVuIDogYGx2bSB2Z2NoYW5nZSAtYSB5YA0KDQpkaXNhYmxlIGJlbGw6IGBybW1vZCBw Y3Nwa3JgDQpjaGFuZ2Uga2V5Ym9hcmQgbGF5b3V0OiBgbG9hZGtleXMgcHRgDQoNCmNocm9vdCAv bW50L3N5c2ltYWdlLyBvciBjaHJvb3QgL21udC9zeXNyb290IChpdCB3aWxsIGJlIHByaW50ZWQg YnkNCnJlc2N1ZSBzeXN0ZW0pIA0KwqANCmRuZiByZWluc3RhbGwgc2hpbS0qIGdydWIyLWVmaS0q IGdydWIyLWNvbW1vbiAod2hlcmUgSSB0aGluayBpcw0KaW1wb3J0YW50IGJvb3Qgd2l0aCBzZWxp bnV4PTAgb3IgZWxzZSB5b3UgbWF5IGdvdCBzcHVyaW91cyBtZXNzYWdlcw0KWzRdKQ0KDQpncnVi Mi1ta2NvbmZpZyAtbyAvYm9vdC9lZmkvRUZJL2ZlZG9yYS9ncnViLmNmZw0KDQpncnViYnkgLS1p bmZvPUFMTA0KDQoNClsxXQ0KbWtkaXIgL21udC9uZXcNCmNkIC9tbnQvbmV3Lw0Kc3NoIHJvb3RA MTkyLjE2OC4xLjEwMiAiZHVtcCAtMCAtZiAtIC8gIiB8IGNhdCAtIHwgcmVzdG9yZSAtciAtZiAt DQpzc2ggcm9vdEAxOTIuMTY4LjEuMTAyICJkdW1wIC0wIC1mIC0gL2Jvb3QgIiB8IGNhdCAtIHwg cmVzdG9yZSAtciAtZiAtIA0KDQpbMl0NCi9kZXYvbWFwcGVyL2ZlZG9yYV9sZWdpb24tcm9vdCAv ICAgICBleHQ0ICAgIGRlZmF1bHRzICAgICAgICAxIDENClVVSUQ9YTVkNjE2ZmYtZjkzYy00ODg3 LTliOGYtNzg5NTYyOGZmNzg3IC9ib290ICBleHQ0ICAgIGRlZmF1bHRzICAgICANCjEgMg0KDQpb M10NCnJvb3Q9L2Rldi9tYXBwZXIvZmVkb3JhX2xlZ2lvbi1yb290IHJvIGF1ZGl0PTAgc2VsaW51 eD0wDQoNCls0XQ0KaHR0cHM6Ly9kb2NzLmZlZG9yYXByb2plY3Qub3JnL2VuLVVTL2ZlZG9yYS9y YXdoaWRlL3N5c3RlbS1hZG1pbmlzdHJhdG9ycy1ndWlkZS9rZXJuZWwtbW9kdWxlLWRyaXZlci1j b25maWd1cmF0aW9uL1dvcmtpbmdfd2l0aF90aGVfR1JVQl8yX0Jvb3RfTG9hZGVyLyNzZWMtVGVy bWluYWxfTWVudV9FZGl0aW5nX0R1cmluZ19Cb290DQoNCmVkaXQgbWVudSBkdXJpbmcgdGhlIGJv b3QgdG8gYWRkIHNlbGludXg9MCANCiANCj4gQnV0IHRoZSBmaXJzdCB0aGluayBpcyB0aGF0IHlv dSBjYW7igJl0IGNsb25lIHRoZSBkaXNrLiBZb3VyIG9sZCBCSU9TDQo+IGJvb3Qgc3lzdGVtIHBy b2JhYmx5IHVzZXMgYW4gTUJSIHBhcnRpdGlvbiBzY2hlbWUuIFlvdXIgbmV3IGNvbXB1dGVyDQo+ IHdpdGggVUVGSSwgb24gdGhlIG90aGVyIGhhbmQsIHJlcXVpcmVzIGEgR1BUIHBhcnRpdGlvbmlu ZyBzY2hlbWUuIA0KPiANCj4gWW91IHdpbGwgaGF2ZSB0byBtYWtlIGEgbG90IG9mIG1hbnVhbCBh ZGp1c3RtZW50cyB0byB0cmFuc2ZlciB0aGUNCj4gc3lzdGVtLiANCj4gWW91IGNhbiBjb252ZXJ0 IHlvdXIgZGlzayB0byBHUFQgW2FdLiBJIG5ldmVyIGRpZCB0aGlzIGFuZCBJ4oCZbQ0KPiB3b25k ZXJpbmcgaG93IHN1Y2Nlc3NmdWwgaXQgd29ya3MuIA0KPiANCj4gDQo+IEkgbmV2ZXIgZGlkIHRo aXMsIGJ1dCBJIGd1ZXNzIHRoZSBiZXN0IG9wdGlvbiBpcyB0byBrZWVwIHlvdXIgbmV3DQo+IGNv bXB1dGVyIG9uIFVFRkksIGRvIGEgY29tcGxldGUgbmV3IGluc3RhbGxhdGlvbiwgYnV0IHVzZSBB TkFDT05EQQ0KPiBmcm9tIHRoZSBsaXZlIGltYWdlIHRvIHJlcGxhY2UgYnRyZnMgYnkgYSBMVk0g c3lzdGVtIHJlcHJvZHVjaW5nIHlvdXINCj4gb2xkIExWTSBwYXJ0aXRpb25zIGFzIGNsb3NlIGFz IHBvc3NpYmxlIGFuZCB1c2UgZ3J1YjIgKG1heWJlIHlvdSBoYXZlDQo+IHRvIHVzZSB0aGUgZXZl cnl0aGluZyBuZXQgaW5zdGFsbCBtZWRpdW0pLiBXaGVuIHRoZSBzeXN0ZW0gYm9vdHMsDQo+IGNs b25lIHlvdXIgTFZNIHBhcnRpdGlvbnMgKGVhY2ggcGFydGl0aW9uIHNlcGFyYXRlbHksIG5vdCB0 aGUNCj4gY29tcGxldGUgZGlzaykuIE1vc3QgaW1wb3J0YW50bHkgeW91IHNob3VsZCBwcmVzZXJ2 ZXIgdGhlIHJlc3BlY3RpdmUNCj4gcGFydGl0aW9uIG51bWJlcnMuIEFuZCBmaW5kIG91dCB3aGF0 IGVsc2UgdG8gYWRqdXN0IChlLmcuIHRoZSB1dWlkcykuDQo+IFRoYXQgd2lsbCB3ZSBhIGxvdCBv ZiB3b3JrLCBJIGd1ZXNzLiANCj4gDQo+IA0KPiANCj4gDQo+IA0KPiBbYV0NCj4gaHR0cHM6Ly9z ZXJ2ZXJmYXVsdC5jb20vcXVlc3Rpb25zLzk2MzE3OC9ob3ctZG8taS1jb252ZXJ0LW15LWxpbnV4 LWRpc2stZnJvbS1tYnItdG8tZ3B0LXdpdGgtdWVmaS85NjMxNzkjOTYzMTc5DQo+IC0tDQo+IFBl dGVyIEJveQ0KPiBodHRwczovL2ZlZG9yYXByb2plY3Qub3JnL3dpa2kvVXNlcjpQYm95DQo+IFBC b3lAZmVkb3JhcHJvamVjdC5vcmcNCj4gDQo+IFRpbWV6b25lOiBDRVQgKFVUQysxKSAvIENFU1Qg KFVUQysyKQ0KPiANCj4gRmVkb3JhIFNlcnZlciBFZGl0aW9uIFdvcmtpbmcgR3JvdXAgbWVtYmVy DQo+IEZlZG9yYSBEb2NzIHRlYW0gY29udHJpYnV0b3IgYW5kIGJvYXJkIG1lbWJlcg0KPiBKYXZh IGRldmVsb3BlciBhbmQgZW50aHVzaWFzdA0KPiANCj4gDQo+IA0KPiAtLQ0KPiBfX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXw0KPiBkZXZlbCBtYWlsaW5nIGxp c3QgLS0gZGV2ZWxAbGlzdHMuZmVkb3JhcHJvamVjdC5vcmcNCj4gVG8gdW5zdWJzY3JpYmUgc2Vu ZCBhbiBlbWFpbCB0byBkZXZlbC1sZWF2ZUBsaXN0cy5mZWRvcmFwcm9qZWN0Lm9yZw0KPiBGZWRv cmEgQ29kZSBvZiBDb25kdWN0Og0KPiBodHRwczovL2RvY3MuZmVkb3JhcHJvamVjdC5vcmcvZW4t VVMvcHJvamVjdC9jb2RlLW9mLWNvbmR1Y3QvDQo+IExpc3QgR3VpZGVsaW5lczoNCj4gaHR0cHM6 Ly9mZWRvcmFwcm9qZWN0Lm9yZy93aWtpL01haWxpbmdfbGlzdF9ndWlkZWxpbmVzDQo+IExpc3Qg QXJjaGl2ZXM6DQo+IGh0dHBzOi8vbGlzdHMuZmVkb3JhcHJvamVjdC5vcmcvYXJjaGl2ZXMvbGlz dC9kZXZlbEBsaXN0cy5mZWRvcmFwcm9qZWN0Lm9yZw0KPiBEbyBub3QgcmVwbHkgdG8gc3BhbSwg cmVwb3J0IGl0Og0KPiBodHRwczovL3BhZ3VyZS5pby9mZWRvcmEtaW5mcmFzdHJ1Y3R1cmUvbmV3 X2lzc3VlDQoNCi0tIA0KU8OpcmdpbyBNLiBCLgotLQpfX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fXwpkZXZlbCBtYWlsaW5nIGxpc3QgLS0gZGV2ZWxAbGlzdHMu ZmVkb3JhcHJvamVjdC5vcmcKVG8gdW5zdWJzY3JpYmUgc2VuZCBhbiBlbWFpbCB0byBkZXZlbC1s ZWF2ZUBsaXN0cy5mZWRvcmFwcm9qZWN0Lm9yZwpGZWRvcmEgQ29kZSBvZiBDb25kdWN0OiBodHRw czovL2RvY3MuZmVkb3JhcHJvamVjdC5vcmcvZW4tVVMvcHJvamVjdC9jb2RlLW9mLWNvbmR1Y3Qv Ckxpc3QgR3VpZGVsaW5lczogaHR0cHM6Ly9mZWRvcmFwcm9qZWN0Lm9yZy93aWtpL01haWxpbmdf bGlzdF9ndWlkZWxpbmVzCkxpc3QgQXJjaGl2ZXM6IGh0dHBzOi8vbGlzdHMuZmVkb3JhcHJvamVj dC5vcmcvYXJjaGl2ZXMvbGlzdC9kZXZlbEBsaXN0cy5mZWRvcmFwcm9qZWN0Lm9yZwpEbyBub3Qg cmVwbHkgdG8gc3BhbSwgcmVwb3J0IGl0OiBodHRwczovL3BhZ3VyZS5pby9mZWRvcmEtaW5mcmFz dHJ1Y3R1cmUvbmV3X2lzc3VlCg==