SSBhZG1pbmlzdGVyIHNldmVyYWwgb3RoZXIgbWFpbGluZyBsaXN0cy4KCk90aGVyIHBlb3BsZSBo YXZlIHRoaXMgcHJvYmxlbSB3aXRoIFlhaG9vIGFkZHJlc3Nlcy4KCkF1dG9tYXRlZCBoZXVyaXN0 aWNzIHVzZWQgaW4gc2NvcmluZyBvZiBtZXNzYWdlcyB0ZW5kIHRvIG1ha2UKQHlhaG9vLmNvbSBv cmlnaW5hdGVkIG1haWwgc2NvcmUgaGlnaGVyLCB3aGljaCBpZiBJIHJlY2FsbCBjb3JyZWN0bHkK d2FzIGJlY2F1c2Ugb2YgbG93IGJhcnJpZXIgdG8gZW50cnkgZm9yIG5ldyBhbm9ueW1vdXMgYWNj b3VudHMgb24KeWFob28uY29tLgoKTW9zdCBwZW9wbGUgSSBrbm93IHdobyBoYWQgdGhpcyBwcm9i bGVtIGhhdmUgd29ya2VkIGFyb3VuZCBpdCBieQpzdWJzY3JpYmluZyB0byBvdGhlciBtYWlsIHBy b3ZpZGVycywgYW5kIGNvbmZpZ3VyaW5nIHRoZWlyIG1haWwgY2xpZW50CnRvIG1lcmdlIGFsbCBh Y2NvdW50cyB0aGV5IGhhdmUsIGFuZCB1c2UgdGhlIGNvcnJlY3QgYWRkcmVzcyB3aGVuCnNlbmRp bmcuCgpJdCdzIGRpZmZpY3VsdCB0byBzdGF5IHdpdGggb25lIHByb3ZpZGVyLCBiZWNhdXNlIHRo ZSBwcm92aWRlciBhbmQgdGhlCmVudmlyb25tZW50IGNoYW5nZXMuCgpJIGRvbid0IGtub3cgaG93 IHRvIHByb2dyYW0gWWFob28ncyBtYWlsIGNsaWVudCB0byBhdm9pZCB0aGUgYnVsawpmb2xkZXIs IGJ1dCB0aGF0IHdvdWxkIGJlIHNvbWV0aGluZyB0aGVpciBzdXBwb3J0IHRlYW0gbWF5IGJlIGFi bGUgdG8KaGVscCB3aXRoLiAgSWYgdGhlIHByb2dyYW0gaXMgdG9vIHNpbXBsZSwgaXQgbWlnaHQg bm90IGJlIHBvc3NpYmxlLgoKVGhlIG1lc3NhZ2VzIGZyb20gUElDbGlzdCBhcmUgYXV0b21hdGlj YWxseSB0YWdnZWQgd2l0aCAiUHJlY2VkZW5jZToKbGlzdCIuICBUaGUgbWFpbCBzdGFuZGFyZHMg Y292ZXIgdGhpcyBpbiB2YXJpb3VzIHdheXM7CgpodHRwczovL3Rvb2xzLmlldGYub3JnL2h0bWwv cmZjMjA3NiBtZW50aW9ucyB0aGUgUHJlY2VkZW5jZSBtZXNzYWdlCmhlYWRlciBmaWVsZCwgY2Fu IGluZmx1ZW5jZSB0cmFuc21pc3Npb24gc3BlZWQgYW5kIGRlbGl2ZXJ5LgoKaHR0cHM6Ly90b29s cy5pZXRmLm9yZy9odG1sL3JmYzM4MzQgc2F5cwo+IDMuMS44LiAgUHJlY2VkZW5jZSBmaWVsZAo+ ICAgIEEgcmVzcG9uc2UgTUFZIGluY2x1ZGUgYSBQcmVjZWRlbmNlIGZpZWxkIFtJNC5SRkMyMDc2 XSBpbiBvcmRlciB0bwo+ICAgIGRpc2NvdXJhZ2UgcmVzcG9uc2VzIGZyb20gc29tZSBraW5kcyBv ZiByZXNwb25kZXJzIHdoaWNoIHByZWRhdGUgdGhpcwo+ICAgIHNwZWNpZmljYXRpb24uICBUaGUg ZmllbGQtYm9keSBvZiB0aGUgUHJlY2VkZW5jZSBmaWVsZCBNQVkgY29uc2lzdCBvZgo+ICAgIHRo ZSB0ZXh0ICJqdW5rIiwgImxpc3QiLCAiYnVsayIsIG9yIG90aGVyIHRleHQgZGVlbWVkIGFwcHJv cHJpYXRlIGJ5Cj4gICAgdGhlIHJlc3BvbmRlci4gIEJlY2F1c2UgdGhlIFByZWNlZGVuY2UgZmll bGQgaXMgbm9uLXN0YW5kYXJkIGFuZCBpdHMKPiAgICBpbnRlcnByZXRhdGlvbiB2YXJpZXMgd2lk ZWx5LCB0aGUgdXNlIG9mIFByZWNlZGVuY2UgaXMgbm90Cj4gICAgc3BlY2lmaWNhbGx5IHJlY29t bWVuZGVkIGJ5IHRoaXMgc3BlY2lmaWNhdGlvbiwgbm9yIGRvZXMgdGhpcwo+ICAgIHNwZWNpZmlj YXRpb24gcmVjb21tZW5kIGFueSBwYXJ0aWN1bGFyIHZhbHVlIGZvciB0aGF0IGZpZWxkLgoKaHR0 cHM6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzIzNjkgbWVudGlvbnMgdGhlIExpc3QtUG9zdCwg TGlzdC1Pd25lcgphbmQgTGlzdC1BcmNoaXZlIG1lc3NhZ2UgaGVhZGVyIGZpZWxkcyB3aGljaCBt aWdodCBhbHNvIGJlIHVzZWQgaW4KcmVmaWxpbmcgaW4gYW4gYWR2YW5jZWQgbWFpbCBjbGllbnQu CgpIb3BlIHRoYXQgaGVscHMuCgpPbiBNb24sIE1heSAwOSwgMjAxNiBhdCAwNjoyNTowMlBNICsw MDAwLCBKZWFuLVBhdWwgTG91aXMgd3JvdGU6Cj4gSGkgUnVzc2VsbCzCoEkgaGF2ZSBubyBjbHVl cyBhYm91dCBpdCwgYXMgbW9zdCBvZiB0aGUgdHJhZmZpYyBvZiB0aGlzIGxpc3QgYWx3YXlzIGVu ZCB1cCBpbiBteSBCdWxrIGZvbGRlci5FdmVyeWRheSwgSSBoYXZlIHRvIGNoZWNrIG15IEJ1bGsg Zm9sZGVyIHRvIGV4dHJhY3QgbW9yZSB0aGFuIDgwJSBvZiB0aGUgbGlzdCB0cmFmZmljLiBJIGhh dmUgaGFkIHRoZSBzYW1lIGVtYWlsIGFkZHJlc3Mgc2luY2UgdGhlIGVhcmx5IGRheXMgb2YgWWFo b28sIGFuZCBJIGRvIG5vdCBrbm93IHdoYXQgWWFob28ncyBtYWlsIHNlcnZlciBkb2VzIHRvIG1h a2UgbWUgbG9vayBsaWtlIHNwYW0uCj4gSWYgeW91IGhhdmUgYSByZWNpcGUgdG8gZml4IHRoYXQs IEkgd2lsbCBiZSBpbiB5b3VyIGRlYnQgZm9yIG15IHJlbWFpbmluZyBkYXlzLgo+IEJlc3QgcmVn YXJkcyxKZWFuLVBhdWxOMUpQTAo+IAo+IFNlbnQgZnJvbSBZYWhvbyBNYWlsIG9uIEFuZHJvaWQg Cj4gIAo+ICAgT24gTW9uLCBNYXkgOSwgMjAxNiBhdCA3OjUwIEFNLCBSdXNzZWxsTWM8YXBwdGVj aG56QGdtYWlsLmNvbT4gd3JvdGU6ICAgCj4gCj4gPiBTb3JyeSBmb3IgdGFraW5nIHNvIGxvbmcg dG8gcmVwbHksIGZvciBzb21lIHJlYXNvbiBHbWFpbCBzZW5kcyB0aGUgbWFqb3JpdHkKPiA+IG9m IHlvdXIgZW1haWxzIGZyb20gcGljbGlzdCBpbnRvIG15IHNwYW0gYm94Lgo+IAo+IE15IEdtYWls IGFsc28gdHJlYXRzIEplYW4tUGF1bHMgZW1haWxzIGZyb20gcGljbGlzdCBhcyBzcGFtLsKgIEkg aGF2ZSB0cmllZAo+IG1hbnkgdGltZSB0byBjb252aW5jZSBpdCBvdGhlcndpc2UuCj4gCj4gCj4g 4oCLTWluZSBhbHNvLkJVVCBJIGxvbmcgYWdvIMKgc2V0IGEgZmlsdGVyIHdoaWNoIGluY2x1ZGVz ICJuZXZlciBzZW5kIHRvIHNwYW0iLk90aGVycyB3aXRoIGdtYWlsIHNob3VsZCBiZSBhYmxlIHRv IGRvIHRoZSBzYW1lLgo+IEplYW4tUGF1bCAtIGRvIHlvdSBrbm93IHdoYXQgbWFrZXMgeW91ciBl bWFpbCBhcHBlYXIgc3BhbW15Pwo+IAo+IMKgIMKgIMKgIMKgIMKgIMKgUnVzc2VsbOKAi8KgICAK PiAtLSAKPiBodHRwOi8vd3d3LnBpY2xpc3QuY29tL3RlY2hyZWYvcGljbGlzdCBQSUMvU1ggRkFR ICYgbGlzdCBhcmNoaXZlCj4gVmlldy9jaGFuZ2UgeW91ciBtZW1iZXJzaGlwIG9wdGlvbnMgYXQK PiBodHRwOi8vbWFpbG1hbi5taXQuZWR1L21haWxtYW4vbGlzdGluZm8vcGljbGlzdAoKLS0gCkph bWVzIENhbWVyb24KaHR0cDovL3F1b3psLm5ldHJlay5vcmcvCi0tIApodHRwOi8vd3d3LnBpY2xp c3QuY29tL3RlY2hyZWYvcGljbGlzdCBQSUMvU1ggRkFRICYgbGlzdCBhcmNoaXZlClZpZXcvY2hh bmdlIHlvdXIgbWVtYmVyc2hpcCBvcHRpb25zIGF0Cmh0dHA6Ly9tYWlsbWFuLm1pdC5lZHUvbWFp bG1hbi9saXN0aW5mby9waWNsaXN0Cg== .