T24gVHVlc2RheSAxOCBGZWJydWFyeSAyMDE0IDE0OjU0OjA0IEpvcyBQb29ydHZsaWV0IHdyb3Rl Ogo+IE9uIFR1ZXNkYXkgMTggRmVicnVhcnkgMjAxNCAxNDozMDoxMyBBYXJvbiBKLiBTZWlnbyB3 cm90ZToKPiA+IEluIHRoaXMgY2FzZSB0aGUgZGV2ZWxvcGVyIGFjdHVhbGx5IHdlbnQgYmFjayBv biB0aGVpciB3b3JkIHRvIG5vdCBtYWtlCj4gPiB0aGUKPiA+IG5ldyBuYW1lIGEgcHVibGljbHkg dmlzaWJsZSBicmFuZCwgd2hpY2ggaGFzIGNvbXBvdW5kZWQgdGhlIGlzc3VlIGJlY2F1c2UsCj4g PiBzaW5jZSBJIHRydXN0ZWQgdGhlaXIgd29yZCBvbiB0aGlzLCB0aGVyZSB3YXMgbGl0dGxlIGFk dmFuY2Ugd29yayBkb25lIHRvCj4gPiBoZWFkIG9mZiB0aGUgb2J2aW91cyBmYWxsb3V0IHRoYXQg d291bGQgZW5zdWUsIHN1Y2ggYXMgc2VlbiB0b2RheSBvbgo+ID4gUGhvcm9uaXguCgpUaGlzIHR1 cm4gb2YgcGhyYXNlICgid2VudCBiYWNrIG9uIikgYm90aGVycyBtZSBhIGxpdHRsZSAtIHRvIGJl IGJsdW50LCBpdCAKc2VlbXMgdW5mYWlyLiBGcm9tIHdoYXQgSSd2ZSBzZWVuIG9mIHRoZSBkaXNj dXNzaW9ucywgVmlzaGVzaCBoYXMgdHJpZWQgdG8gCndvcmsgd2l0aCBwcm9tbyBvbiB0aGlzIGFu ZCBhcyBmYXIgYXMgSSBjYW4gc2VlIGhhcyBrZXB0IHRvIHRoZSAoSSB0aG91Z2h0IApjb25zZW5z dXMpIHBvc2l0aW9uIHRoYXQgJ0JhbG9vJyByZXBsYWNlZCAnTmVwb211aycgYXMgdGhlIG1lYW5z IG9mIAppbXBsZW1lbnRpbmcgc2VtYW50aWMgc2VhcmNoLgoKSXQgaXMgcG9zc2libGUgSSBtaXNz ZWQgc29tZXRoaW5nIGhlcmUgYW5kIGFtIGRlbW9uc3RyYWJseSB3cm9uZywgaW4gd2hpY2ggCmNh c2UgbXkgYXBvbG9naWVzLgoKPiA+IFRoZSB0YWxrIGluIHRoaXMgdGhyZWFkIG9mIGNyZWF0aW5n IGEgbG9nby9pY29uIGZvciBCYWxvbyBpcyB3aWxkbHkKPiA+IG1pc2RpcmVjdGVkIGFzIHdlbGwu IFRoZXJlIGlzIGEgbG9nby9pY29uIGZvciDigJxkZXNrdG9wIHNlYXJjaOKAnSBpbiBLREUKPiA+ IGFscmVhZHkuIFN3YXBwaW5nIGl0IG91dCBzZXJ2ZXMgbm9uZSBvZiBvdXIgdXNlcnMgYW5kIHdv cmtzIGRpcmVjdGx5Cj4gPiBhZ2FpbnN0IHB1YmxpYyBjb21tdW5pY2F0aW9ucyBjb250aW51aXR5 Lgo+IAo+IEkgYWdyZWUgdGhhdCBCYWxvbyBzaG91bGRuJ3QgaGF2ZSBhbnkgb2J2aW91cyBicmFu ZGluZyBvdGhlciB0aGFuIHRoZSBzZWFyY2gKPiB0aGluZyB3ZSBhbHJlYWR5IGhhdmUuCgpZZXAs IHdlIHdvcmtlZCB0byBtYWtlICdOZXBvbXVrJyBzb21ld2hhdCBpbnZpc2libGUuIEJhbG9vIHNo b3VsZCBiZSBubyBtb3JlIAp2aXNpYmxlIHRvIHRoZSB1c2VyLiBUaGF0IHdhcyB3aGF0IEkgdW5k ZXJzdG9vZCBmcm9tIFZpc2hlc2gncyBlYXJsaWVyIApjb21tZW50cy4KCkluIHRoaXMgcGFydGlj dWxhciBjYXNlLCB0aGVyZSBhcmUgc29tZSBtYWpvciB0aGluZ3MgY2hhbmdpbmcgLSBpdCdzIGEg YmlnIApzd2l0Y2ggdGhhdCBtaWdodCBsZWF2ZSBzb21lIGFwcGxpY2F0aW9ucyBjdXJyZW50bHkg bmVlZGluZyBOZXBvbXVrLiBJJ20gbm90IApzdXJlIGl0IGNhbiBiZSBkb25lIGNvbXBsZXRlbHkg dW5hbm5vdW5jZWQsIHdpdGggbm8gcHVibGljIGNoYW5nZSAoaW4gCm5hbWUvdGVybWlub2xvZ3kp LiAgSXQgY291bGQgYmUgZG9uZSBwZXJoYXBzIHdpdGggYSBOZXBvbXVrIHYxIHZlcnN1cyBOZXBv bXVrIAp2MiBraW5kIG9mIGRpc3RpbmN0aW9uIChoZXksIG1heWJlIHRoYXQgd291bGQgaGF2ZSBi ZWVuIGJldHRlcikuIEkgdG9vIHRoaW5rIAppdCdzIGxhdGUgZm9yIHRoYXQgbm93IC0gcGFydGlj dWxhcmx5IGFzIHRoZSBuYW1lIEJhbG9vIGlzIG91dCB0aGVyZSAoZnJvbSB1c2UgCm9uIHRoZSBt YWlsaW5nIGxpc3QsIGFwcGFyZW50bHkpIC0gYnV0IEknbSB3aWxsaW5nIHRvIGJlIGNvbnZpbmNl ZC4KClsuLi5dCgo+IE1lYW53aGlsZSwgSSBkaWRuJ3QgdGhpbmsgb2YgYW55dGhpbmcgaG9ycmli bGUgYW5kIHN0aWxsIGRvbid0IGZlZWwgaXQgaXMKPiB0aGF0IGJhZCAqYW5kKiBpdCBzZWVtcyBu b2JvZHkgaGFzIGhhbW1lcmVkIG9uIHRoaXMgcG9pbnQgeWV0IC0gSSBzdWdnZXN0IHdlCj4gc3Rp Y2sgd2l0aCBpdC4gQmVzaWRlcywgaW4gb3VyIGNvbW11bmljYXRpb24gd2Ugc2hvdWxkIGluZGVl ZCBjYWxsIGl0Cj4gJ3NlYXJjaCcgb3IgJ3NlbWFudGljIHNlYXJjaCcgYW5kIG5vdGhpbmcgZWxz ZSBhbnl3YXkuCj4gCj4gSG93IGFib3V0IHdlIGVuZCB0aGlzIGRpc2N1c3Npb24sIHB1c2ggb3V0 IHRoZSBhcnRpY2xlIGFzYXAgKHZpc2hlc2gsIGFueQo+IGlucHV0IG9uIHRoaW5ncyB0aGF0IHdl cmUgcG9ydGVkPyB0aGUgcmVzdCBzZWVtcyBnb29kIHRvIGdvKS4KPiAKPiBIdWdlIHRoYW5rcyBm b3IgU3R1IGZvciBoaXMgZXhjZWxsZW50IGVkaXRpbmcuCgpUaGFua3MuIElzIHRoZXJlIGFueXRo aW5nIGVsc2Ugd2Ugc2hvdWxkIGFkZC9jaGFuZ2U/IEFueSBtb3JlIGVtcGhhc2lzIHRoYXQgCnRo aW5ncyBsb29rIHZlcnkgc2ltaWxhciB0byB0aGUgdXNlciBhZnRlciB0aGUgY2hhbmdlPyBJIGp1 c3QgbWFkZSBhIHF1aWNrIAplZGl0IHRvIGNoYW5nZSAnTmVwb211ayBUZWFtJyBlYXJseSBvbiB0 byAnU2VtYW50aWMgU2VhcmNoIHRlYW0nIHRvIHRyeSAgYW5kIAplbXBoYXNpc2UgdGhlIGNvbnRp bnVpdHkgYW5kIGEgZmV3IG90aGVyIG1pbm9yIGNoYW5nZXMuCgpJIG5vdGljZSBhIHJlZmVyZW5j ZSB0byAnbmVwb211a2JhbG9vbWlncmF0b3InLCBmb3IgdHJhbnNmZXJyaW5nIGV4aXN0aW5nIApz ZW1hbnRpYyBkYXRhIGJldHdlZW4gc3lzdGVtcy4gSSB0aGluayB0aGlzIG5lZWRzIGEgbGl0dGxl IG1vcmUgaW5mbywgZXZlbiBpZiAKaXQgaXMganVzdCBhbG9uZyB0aGUgbGluZXMgb2YgJ2Z1cnRo ZXIgZ3VpZGFuY2Ugb24gbWlncmF0aW9uIHdpbGwgYmUgcHJvdmlkZWQgCmF0IHRoZSB0aW1lIG9m IHRoZSA0LjEzIHJlbGVhc2UnIChpLmUuIGRvZXMgdGhlIHVzZXIgaGF2ZSB0byBydW4gaXQgbWFu dWFsbHksIAp3aWxsIGl0IGdldCBydW4gZmlyc3QgdGltZSBiYWxvbyBsYXVuY2hlcyAtIGluIHdo aWNoIGNhc2Ugd2UgbWF5YmUgZG9uJ3QgCm1lbnRpb24gaXQgYXQgYWxsIGFuZCBqdXN0IHNheSBl eGlzdGluZyBkYXRhIGFyZSBhdXRvbWF0aWNhbGx5IG1pZ3JhdGVkKS4KCkNoZWVycywKU3R1Cgpf X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpUaGlzIG1lc3Nh Z2UgaXMgZnJvbSB0aGUga2RlLXByb21vIG1haWxpbmcgbGlzdC4KClZpc2l0IGh0dHBzOi8vbWFp bC5rZGUub3JnL21haWxtYW4vbGlzdGluZm8va2RlLXByb21vIHRvIHVuc3Vic2NyaWJlLCBzZXQg ZGlnZXN0IG9uIG9yIHRlbXBvcmFyaWx5IHN0b3AgeW91ciBzdWJzY3JpcHRpb24u