Rmlyc3QsIHNvcnJ5IHRvIGhpamFjayB0aGUgdG9waWMgd2l0aCBteSBlbWFpbCBhZHZlbnR1cmVz LgoKSSB1bmRlcnN0YW5kIHdoeSBteSBlbWFpbCBkb2VzIG5vdCBiZWhhdmUgd2VsbCwgYnV0IEkg ZG8gbm90IGtub3cgaG93IHRvIGZpeCBpdC4KSSBoYXZlIGJlZW4gdXNpbmcgdGhpcyB5YWhvbyBl bWFpbCBhZGRyZXNzIGZvciBvdmVyIDIwIHllYXJzLCBhbmQgY2hhbmdpbmcgaXQgaXMKYWxtb3N0 IGltcG9zc2libGUgYXMgSSBoYXZlIG1hbnkgb2ZmaWNpYWwgYW5kIHByb2Zlc3Npb25hbCB1c2Vz IG9mIHRoaXMgYWRkcmVzcy4KCkkgaGF2ZSBhIGdtYWlsIGFjY291bnQsIGJ1dCBJIGRvIG5vdCB1 c2UgbXVjaCBhcyB0aGUgZ21haWwgY2xpZW50IHN1Y2tzIGluIG15IGJvb2suCgpNYXliZSBJIG5l ZWQgdG8gcmVzdWJzY3JpYmUgdG8gdGhlIHBpYy1saXN0IHdpdGggbXkgZ21haWwgYWNjb3VudCwg YW5kIGxldApBcHBsZSBtYWlsIHRha2UgY2FyZSBvZiBpdC4KClNpbmNlIEkgY2hhbmdlZCB0byBN YWMgT1MgWCwgSSB1c2UgQXBwbGUgbWFpbCBjbGllbnQgYW5kIG1lcmdlZCBhbGwgbXkgYWNjb3Vu dHMgaW4gdGhlIGNsaWVudC4KClNvIFBsZWFzZSBsZXQgbWUga25vdyBpZiBJIG5lZWQgdG8gcmVz dWJzY3JpYmUsIGFuZCBJIHdpbGwgZG8gaXQsIEkgYW0gbm90IHN1cmUgbXkgQXBwbGUKY2xpZW50 IGhhcyBhIGZlYXR1cmUgbGlrZSAibmV2ZXIgc2VuZCB0byBzcGFt4oCdLgoKVGhhbmtzLApKZWFu LVBhdWwKTjFKUEwKCgoKCj4gT24gTWF5IDksIDIwMTYsIGF0IDc6NDggUE0sIEphbWVzIENhbWVy b24gPHF1b3psQGxhcHRvcC5vcmc+IHdyb3RlOgo+IAo+IE9oLCBhbmQgdGhpcyBwYWdlIGlzIGlu dGVyZXN0aW5nLCBhcyBpdCBkZXNjcmliZXMgWWFob28gaW4gYSBiaXQgbW9yZQo+IGNvbnRleHQ7 IGh0dHBzOi8vYmxvZy5yZXR1cm5wYXRoLmNvbS9wcmVjZWRlbmNlLwo+IAo+IE9uIFR1ZSwgTWF5 IDEwLCAyMDE2IGF0IDA5OjIxOjM4QU0gKzEwMDAsIEphbWVzIENhbWVyb24gd3JvdGU6Cj4+IEkg YWRtaW5pc3RlciBzZXZlcmFsIG90aGVyIG1haWxpbmcgbGlzdHMuCj4+IAo+PiBPdGhlciBwZW9w bGUgaGF2ZSB0aGlzIHByb2JsZW0gd2l0aCBZYWhvbyBhZGRyZXNzZXMuCj4+IAo+PiBBdXRvbWF0 ZWQgaGV1cmlzdGljcyB1c2VkIGluIHNjb3Jpbmcgb2YgbWVzc2FnZXMgdGVuZCB0byBtYWtlCj4+ IEB5YWhvby5jb20gb3JpZ2luYXRlZCBtYWlsIHNjb3JlIGhpZ2hlciwgd2hpY2ggaWYgSSByZWNh bGwgY29ycmVjdGx5Cj4+IHdhcyBiZWNhdXNlIG9mIGxvdyBiYXJyaWVyIHRvIGVudHJ5IGZvciBu ZXcgYW5vbnltb3VzIGFjY291bnRzIG9uCj4+IHlhaG9vLmNvbS4KPj4gCj4+IE1vc3QgcGVvcGxl IEkga25vdyB3aG8gaGFkIHRoaXMgcHJvYmxlbSBoYXZlIHdvcmtlZCBhcm91bmQgaXQgYnkKPj4g c3Vic2NyaWJpbmcgdG8gb3RoZXIgbWFpbCBwcm92aWRlcnMsIGFuZCBjb25maWd1cmluZyB0aGVp ciBtYWlsIGNsaWVudAo+PiB0byBtZXJnZSBhbGwgYWNjb3VudHMgdGhleSBoYXZlLCBhbmQgdXNl IHRoZSBjb3JyZWN0IGFkZHJlc3Mgd2hlbgo+PiBzZW5kaW5nLgo+PiAKPj4gSXQncyBkaWZmaWN1 bHQgdG8gc3RheSB3aXRoIG9uZSBwcm92aWRlciwgYmVjYXVzZSB0aGUgcHJvdmlkZXIgYW5kIHRo ZQo+PiBlbnZpcm9ubWVudCBjaGFuZ2VzLgo+PiAKPj4gSSBkb24ndCBrbm93IGhvdyB0byBwcm9n cmFtIFlhaG9vJ3MgbWFpbCBjbGllbnQgdG8gYXZvaWQgdGhlIGJ1bGsKPj4gZm9sZGVyLCBidXQg dGhhdCB3b3VsZCBiZSBzb21ldGhpbmcgdGhlaXIgc3VwcG9ydCB0ZWFtIG1heSBiZSBhYmxlIHRv Cj4+IGhlbHAgd2l0aC4gIElmIHRoZSBwcm9ncmFtIGlzIHRvbyBzaW1wbGUsIGl0IG1pZ2h0IG5v dCBiZSBwb3NzaWJsZS4KPj4gCj4+IFRoZSBtZXNzYWdlcyBmcm9tIFBJQ2xpc3QgYXJlIGF1dG9t YXRpY2FsbHkgdGFnZ2VkIHdpdGggIlByZWNlZGVuY2U6Cj4+IGxpc3QiLiAgVGhlIG1haWwgc3Rh bmRhcmRzIGNvdmVyIHRoaXMgaW4gdmFyaW91cyB3YXlzOwo+PiAKPj4gaHR0cHM6Ly90b29scy5p ZXRmLm9yZy9odG1sL3JmYzIwNzYgbWVudGlvbnMgdGhlIFByZWNlZGVuY2UgbWVzc2FnZQo+PiBo ZWFkZXIgZmllbGQsIGNhbiBpbmZsdWVuY2UgdHJhbnNtaXNzaW9uIHNwZWVkIGFuZCBkZWxpdmVy eS4KPj4gCj4+IGh0dHBzOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmMzODM0IHNheXMKPj4+IDMu MS44LiAgUHJlY2VkZW5jZSBmaWVsZAo+Pj4gICBBIHJlc3BvbnNlIE1BWSBpbmNsdWRlIGEgUHJl Y2VkZW5jZSBmaWVsZCBbSTQuUkZDMjA3Nl0gaW4gb3JkZXIgdG8KPj4+ICAgZGlzY291cmFnZSBy ZXNwb25zZXMgZnJvbSBzb21lIGtpbmRzIG9mIHJlc3BvbmRlcnMgd2hpY2ggcHJlZGF0ZSB0aGlz Cj4+PiAgIHNwZWNpZmljYXRpb24uICBUaGUgZmllbGQtYm9keSBvZiB0aGUgUHJlY2VkZW5jZSBm aWVsZCBNQVkgY29uc2lzdCBvZgo+Pj4gICB0aGUgdGV4dCAianVuayIsICJsaXN0IiwgImJ1bGsi LCBvciBvdGhlciB0ZXh0IGRlZW1lZCBhcHByb3ByaWF0ZSBieQo+Pj4gICB0aGUgcmVzcG9uZGVy LiAgQmVjYXVzZSB0aGUgUHJlY2VkZW5jZSBmaWVsZCBpcyBub24tc3RhbmRhcmQgYW5kIGl0cwo+ Pj4gICBpbnRlcnByZXRhdGlvbiB2YXJpZXMgd2lkZWx5LCB0aGUgdXNlIG9mIFByZWNlZGVuY2Ug aXMgbm90Cj4+PiAgIHNwZWNpZmljYWxseSByZWNvbW1lbmRlZCBieSB0aGlzIHNwZWNpZmljYXRp b24sIG5vciBkb2VzIHRoaXMKPj4+ICAgc3BlY2lmaWNhdGlvbiByZWNvbW1lbmQgYW55IHBhcnRp Y3VsYXIgdmFsdWUgZm9yIHRoYXQgZmllbGQuCj4+IAo+PiBodHRwczovL3Rvb2xzLmlldGYub3Jn L2h0bWwvcmZjMjM2OSBtZW50aW9ucyB0aGUgTGlzdC1Qb3N0LCBMaXN0LU93bmVyCj4+IGFuZCBM aXN0LUFyY2hpdmUgbWVzc2FnZSBoZWFkZXIgZmllbGRzIHdoaWNoIG1pZ2h0IGFsc28gYmUgdXNl ZCBpbgo+PiByZWZpbGluZyBpbiBhbiBhZHZhbmNlZCBtYWlsIGNsaWVudC4KPj4gCj4+IEhvcGUg dGhhdCBoZWxwcy4KPj4gCj4+IE9uIE1vbiwgTWF5IDA5LCAyMDE2IGF0IDA2OjI1OjAyUE0gKzAw MDAsIEplYW4tUGF1bCBMb3VpcyB3cm90ZToKPj4+IEhpIFJ1c3NlbGwsIEkgaGF2ZSBubyBjbHVl cyBhYm91dCBpdCwgYXMgbW9zdCBvZiB0aGUgdHJhZmZpYyBvZiB0aGlzIGxpc3QgYWx3YXlzIGVu ZCB1cCBpbiBteSBCdWxrIGZvbGRlci5FdmVyeWRheSwgSSBoYXZlIHRvIGNoZWNrIG15IEJ1bGsg Zm9sZGVyIHRvIGV4dHJhY3QgbW9yZSB0aGFuIDgwJSBvZiB0aGUgbGlzdCB0cmFmZmljLiBJIGhh dmUgaGFkIHRoZSBzYW1lIGVtYWlsIGFkZHJlc3Mgc2luY2UgdGhlIGVhcmx5IGRheXMgb2YgWWFo b28sIGFuZCBJIGRvIG5vdCBrbm93IHdoYXQgWWFob28ncyBtYWlsIHNlcnZlciBkb2VzIHRvIG1h a2UgbWUgbG9vayBsaWtlIHNwYW0uCj4+PiBJZiB5b3UgaGF2ZSBhIHJlY2lwZSB0byBmaXggdGhh dCwgSSB3aWxsIGJlIGluIHlvdXIgZGVidCBmb3IgbXkgcmVtYWluaW5nIGRheXMuCj4+PiBCZXN0 IHJlZ2FyZHMsSmVhbi1QYXVsTjFKUEwKPj4+IAo+Pj4gU2VudCBmcm9tIFlhaG9vIE1haWwgb24g QW5kcm9pZCAKPj4+IAo+Pj4gIE9uIE1vbiwgTWF5IDksIDIwMTYgYXQgNzo1MCBBTSwgUnVzc2Vs bE1jPGFwcHRlY2huekBnbWFpbC5jb20+IHdyb3RlOiAgIAo+Pj4gCj4+Pj4gU29ycnkgZm9yIHRh a2luZyBzbyBsb25nIHRvIHJlcGx5LCBmb3Igc29tZSByZWFzb24gR21haWwgc2VuZHMgdGhlIG1h am9yaXR5Cj4+Pj4gb2YgeW91ciBlbWFpbHMgZnJvbSBwaWNsaXN0IGludG8gbXkgc3BhbSBib3gu Cj4+PiAKPj4+IE15IEdtYWlsIGFsc28gdHJlYXRzIEplYW4tUGF1bHMgZW1haWxzIGZyb20gcGlj bGlzdCBhcyBzcGFtLiAgSSBoYXZlIHRyaWVkCj4+PiBtYW55IHRpbWUgdG8gY29udmluY2UgaXQg b3RoZXJ3aXNlLgo+Pj4gCj4+PiAKPj4+IOKAi01pbmUgYWxzby5CVVQgSSBsb25nIGFnbyAgc2V0 IGEgZmlsdGVyIHdoaWNoIGluY2x1ZGVzICJuZXZlciBzZW5kIHRvIHNwYW0iLk90aGVycyB3aXRo IGdtYWlsIHNob3VsZCBiZSBhYmxlIHRvIGRvIHRoZSBzYW1lLgo+Pj4gSmVhbi1QYXVsIC0gZG8g eW91IGtub3cgd2hhdCBtYWtlcyB5b3VyIGVtYWlsIGFwcGVhciBzcGFtbXk/Cj4+PiAKPj4+ICAg ICAgICAgICAgUnVzc2VsbOKAiyAgIAo+Pj4gLS0gCj4+PiBodHRwOi8vd3d3LnBpY2xpc3QuY29t L3RlY2hyZWYvcGljbGlzdCBQSUMvU1ggRkFRICYgbGlzdCBhcmNoaXZlCj4+PiBWaWV3L2NoYW5n ZSB5b3VyIG1lbWJlcnNoaXAgb3B0aW9ucyBhdAo+Pj4gaHR0cDovL21haWxtYW4ubWl0LmVkdS9t YWlsbWFuL2xpc3RpbmZvL3BpY2xpc3QKPj4gCj4+IC0tIAo+PiBKYW1lcyBDYW1lcm9uCj4+IGh0 dHA6Ly9xdW96bC5uZXRyZWsub3JnLwo+IAo+IC0tIAo+IEphbWVzIENhbWVyb24KPiBodHRwOi8v cXVvemwubmV0cmVrLm9yZy8KPiAtLSAKPiBodHRwOi8vd3d3LnBpY2xpc3QuY29tL3RlY2hyZWYv cGljbGlzdCBQSUMvU1ggRkFRICYgbGlzdCBhcmNoaXZlCj4gVmlldy9jaGFuZ2UgeW91ciBtZW1i ZXJzaGlwIG9wdGlvbnMgYXQKPiBodHRwOi8vbWFpbG1hbi5taXQuZWR1L21haWxtYW4vbGlzdGlu Zm8vcGljbGlzdAoKCi0tIApodHRwOi8vd3d3LnBpY2xpc3QuY29tL3RlY2hyZWYvcGljbGlzdCBQ SUMvU1ggRkFRICYgbGlzdCBhcmNoaXZlClZpZXcvY2hhbmdlIHlvdXIgbWVtYmVyc2hpcCBvcHRp b25zIGF0Cmh0dHA6Ly9tYWlsbWFuLm1pdC5lZHUvbWFpbG1hbi9saXN0aW5mby9waWNsaXN0Cg== .