LS0tLS1CRUdJTiBQR1AgU0lHTkVEIE1FU1NBR0UtLS0tLQpIYXNoOiBSSVBFTUQxNjAKCkFoIHRo YXQgZXhwbGFpbnMgaXQ7IEkgd2Fzbid0IGF3YXJlIHdlIHdlcmUgdGFsa2luZyBhYm91dCBlbmNv ZGVycyB3aXRoCmRldGVudHMuIEkndmUgb25seSBldmVyIHRvdWNoZWQgb3B0aWNhbCBlbmNvZGVy cywgd2hlcmUgYSBxdWFydGVyIG9mIGEKcXVhZHJhdHVyZSBjeWNsZSBlcXVhbHMgYSBxdWFydGVy IG9mIGEgZGVncmVlIChpbiBteSBjYXNlKSBvZiBzaGFmdApyb3RhdGlvbi4gSW4gdGhpcyBzaXR1 YXRpb24sICJ3YWl0W2luZ10gZm9yIHRoZSBvdXRwdXRzIHRvIGdvIHRvIHRoZQpub3JtYWwgcmVz dGluZyBzdGF0ZSIgd29uJ3QgZG8gYW55dGhpbmcsIGJlY2F1c2UgaWYgKDAwKSBpcyB0aGUgbm9y bWFsCnJlc3Rpbmcgc3RhdGUsIHRoZW4geW91IGNhbiBzdGlsbCBnbyAoMDApLygwMSkvKDAwKSB3 aXRob3V0IGFwcGx5aW5nIGEKbmV0IHJvdGF0aW9uIHRvIHRoZSBzaGFmdCwgYW5kIHlldCB5b3Un ZCBjb3VudCB0aGF0IGFzICsxIHVzaW5nIGFuCmFsZ29yaXRobSB0aGF0IGRvZXNuJ3QgZG8gZnVs bCBxdWFkcmF0dXJlIGRlY29kaW5nLgoKU29ycnkgZm9yIHRoZSBtaXN1bmRlcnN0YW5kaW5nLgoK Q2hyaXMKCk9uIFR1ZSwgMTEgT2N0IDIwMTEgMjM6NDU6MzkgLTA0MDAKS2VycnkgV2VudHdvcnRo IDxrd2VudHdvcnRoQHNrdW5rd29ya3NuaC5jb20+IHdyb3RlOgoKPiBDb3JyZWN0IG1lIGlmIEkn bSB3cm9uZywgYnV0IHRoaXMgZW5jb2RlciBpcyBtZWNoYW5pY2FsLCBub3Qgb3B0aWNhbCwgCj4g YW5kIGl0IGhhcyBkZXRlbnRzLCBhbmQgbW92aW5nIGZyb20gMSBkZXRlbnQgdG8gdGhlIG5leHQg ZXF1YWxzIDM2MCAKPiBkZWdyZWVzIG9mIGVsZWN0cmljYWwgdHJhdmVsLiAgSSBoYXZlIHRyaWVk IHRvIHVzZSBteSBub3JtYWwgb3B0aWNhbCAKPiBlbmNvZGVyIHNvZnR3YXJlIHdpdGggc3VjaCBl bmNvZGVycyB3aXRoIHBvb3IgcmVzdWx0cy4KPiAKPiBVc2luZyA0WCBvciBldmVuIDJYIGFsZ29y aXRobXMgd291bGQgaGF2ZSBubyBhZHZhbnRhZ2Ugd2l0aCBzdWNoIAo+IGVuY29kZXJzLiAgIEFs c28sIHRoZXkgd2lsbCBuZXZlciBzaXQgb24gdGhlIGVkZ2Ugb2YgIEEgb3IgQiBjaGFuZ2luZyAK PiB3aXRoIHNtYWxsIHZpYnJhdGlvbnMuIFRoZXkgd2lsbCBzaXQgaW4gYSBkZXRlbnQgaGFsZndh eSBiZXR3ZWVuIEEgCj4gY2hhbmdlIGFuZCBCIGNoYW5nZS4KPiAKPiBLZXJyeQo+IAo+IAo+IAo+ IGppbSB3cm90ZToKPiA+IE5vIGl0IHdvbid0ICJjb3VudCByYXBpZGx5Ii4gIEJlY2F1c2UgSSB3 YWl0IGZvciB0aGUgb3V0cHV0cyB0byBnbwo+ID4gdG8gdGhlIG5vcm1hbCByZXN0aW5nIHN0YXRl IGJlZm9yZSBJIGV4aXQgdGhlIHJvdXRpbmUgd2hlcmUgaXQgYWRkcwo+ID4gdG8gdGhlIGNvdW50 IHZhcmlhYmxlLiAgSSBoYXZlIGJlZW4gcGxheWluZyB3aXRoIHRoZSBlbmNvZGVyIHRvIGdldAo+ ID4gaXQgdG8gbWVzcyB1cCwgYnV0IEkgaGF2ZW4ndCBiZWVuIGFibGUgdG8gc28gZmFyLiAgSXQg d29ya3MgZm9yIG1lCj4gPiBhcyBpdCBpcy4gWU1NVi4gSSBkb24ndCBjbGFpbSBpdCB0byBiZSBi dWxsZXRwcm9vZi4gIEFsbCBJIGNsYWltIGlzCj4gPiB0aGF0IEkgd3JvdGUgaXQgdXNpbmcgSW5m b3JtYXRpb24gZ2xlYW5lZCBmcm9tIG9ic2VydmF0aW9uIG9mIHRoZQo+ID4gZW5jb2RlciBhdCB3 b3JrIHVzaW5nIGEgRE1NLCBBbmQgZnJvbSBvdGhlcnMgY29kZSBwb3N0ZWQgb24gdGhlCj4gPiBp bnRlcm5ldC4KPiA+Cj4gPiBSZWdhcmRzLAo+ID4KPiA+IEppbQo+ID4KPiA+IC0tLS0tT3JpZ2lu YWwgTWVzc2FnZS0tLS0tCj4gPiBGcm9tOiBwaWNsaXN0LWJvdW5jZXNAbWl0LmVkdSBbbWFpbHRv OnBpY2xpc3QtYm91bmNlc0BtaXQuZWR1XSBPbgo+ID4gQmVoYWxmIE9mIENocmlzdG9waGVyIEhl YWQgU2VudDogVHVlc2RheSwgT2N0b2JlciAxMSwgMjAxMSA1OjQ4IFBNCj4gPiBUbzogcGljbGlz dEBtaXQuZWR1Cj4gPiBTdWJqZWN0OiBSZTogW0VFXSBSb3RhcnkgRW5jb2RlciBJbXBsZW1lbnRh dGlvbgo+ID4KPiA+ICAgCj4gPj4gamltQGpwZXMuY29tIHdyb3RlOgo+ID4+ICAgICAKPiA+Pj4g IEFsbCwKPiA+Pj4KPiA+Pj4gIEkgaGF2ZSBiZWVuIHdvcmtpbmcgd2l0aCBhIHJvdGFyeSBlbmNv ZGVyIHRoYXQgSSBhbSBwbGFubmluZyB0bwo+ID4+PiB1c2UgYXMgYSBjb250cm9sIGZvciBhIHBp ZWNlIG9mIHRlc3QgCj4gPj4+ICBlcXVpcG1lbnQgYXQgd29yay4gIEkgaGF2ZSBsb29rZWQgb24g dGhlIHdlYiBmb3IgYWxnb3JpdGhtcyB0bwo+ID4+PiBkZWNvZGUgdGhlIG91dHB1dHMgb2Ygc2Fp ZCBlbmNvZGVyLCAKPiA+Pj4gIGFuZCBoYXZlIGZvdW5kIHNldmVyYWwuICBNb3N0IG9mIHRoZW0g d29yayBhcyBhZHZlcnRpc2VkIGluIG15Cj4gPj4+IGFwcGxpY2F0aW9uLCBidXQgSSBoYXZlIGNv bWUgdXAgd2l0aCBhIAo+ID4+PiAgdmVyc2lvbiB0aGF0IHdvcmtzIHZlcnkgd2VsbCBpbiBteSBv cGluaW9uLgo+ID4+Pgo+ID4+PiAgSSBkb24ndCBrbm93IHdoZXRoZXIgaXQgaXMgbmV3IG9yIG5v dmVsLCBidXQgYWxsIEkgaGF2ZSBkb25lIGlzCj4gPj4+IHdhdGNoIGZvciB0aGUgIkEiIG91dHB1 dCB0byBnbyBoaWdoLgo+ID4+PiAgV2hlbiBpdCBkb2VzLCBJIHRoZW4gcmVhZCB0aGUgcG9ydCB0 aGF0IHRoZSBlbmNvZGVyIGlzIGF0dGFjaGVkCj4gPj4+IHRvLiAgSSBtYXNrIG9mIHRoZSBiaXRz IEkgYW0gaW50ZXJlc3RlZCAKPiA+Pj4gIGluLCBhbmQgdXNlIHRoaXMgYXMgYW4gaW5kZXggaW50 byBhIHRhYmxlLiAgSWYgdGhlIHZhbHVlIGlzICIwMSIKPiA+Pj4gSSBhZGQgIjEiIHRvIG15IHZh cmlhYmxlLiAgSWYgdGhlIHZhbHVlIAo+ID4+PiAgaXMgIjEwIiwgSSBzdWJ0cmFjdCAiMSIgYnkg YWRkaW5nIDI1NS4gIEFueSBvdGhlciBjb21iaW5hdGlvbgo+ID4+PiAiMDAiIG9yICIxMSIgYWRk cyBhIHplcm8gZm9yIG5vIGNoYW5nZS4KPiA+Pj4KPiA+Pj4gIEkgaGF2ZSB0cmllZCB0aGlzIG91 dCBzcGlubmluZyB0aGUga25vYiBvbiB0aGUgZW5jb2RlciBhcyBmYXN0Cj4gPj4+IGFzIEkgY2Fu LCBhbmQgSSBjYW4ndCBzZWUgYW55IG1pc3NlZCAKPiA+Pj4gIGNvdW50cy4gIEkgYW0gdXNpbmcg YSBkZWxheSBvZiAyLjUgbVMgaW4gbXkgcm91dGluZSBmb3IKPiA+Pj4gZGVib3VuY2luZy4gIAo+ ID4+PiAgICAgICAKPiA+Cj4gPiBJIGFzc3VtZSB3ZSdyZSB0YWxraW5nIGFib3V0IGEgcXVhZHJh dHVyZS1vdXRwdXQgcm90YXRpb25hbCBlbmNvZGVyCj4gPiBoZXJlOyBpZ25vcmUgaWYgbm90Lgo+ ID4KPiA+IFRoaXMgd2lsbCBwcm9iYWJseSB3b3JrIGZpbmUgd2hlbiBzcGlubmluZyB0aGUga25v YiwgYnV0IGl0IGNvdWxkCj4gPiBmYWlsIGlmIHRoZSBpbnB1dCBpcyBtb3N0bHkgc3RpbGwgYnV0 IGppdHRlcmluZyBzbGlnaHRseS4gVGhlCj4gPiBvdXRwdXRzIG9mIGEgcm90YXJ5IGVuY29kZXIg YXJlIGluIHF1YWRyYXR1cmUsIHNvIGFjcm9zcyBhIGZ1bGwKPiA+IG91dHB1dCBjeWNsZSwgQSB3 aWxsIHJpc2UsIHRoZW4gQiB3aWxsIHJpc2UsIHRoZW4gQSB3aWxsIGZhbGwsIHRoZW4KPiA+IEIg d2lsbCBmYWxsLiBJbWFnaW5lIGlmIHRoZSBrbm9iIGlzIHNpdHRpbmcgcmlnaHQgYnkgdGhlIHBv c2l0aW9uCj4gPiB3aGVyZSBBIHJpc2VzLCBhbmQgaXMgaml0dGVyaW5nIHNsaWdodGx5LiBZb3Un bGwgc2VlIHRoZSBBIG91dHB1dAo+ID4gb3NjaWxsYXRpbmcgd2hpbGUgQiByZW1haW5zIHN0YWJs ZS4gWW91ciBleGFtcGxlIGFsZ29yaXRobSB3aWxsCj4gPiBjb3VudCByYXBpZGx5LiBBIGZ1bGwg cXVhZHJhdHVyZS1kZWNvZGUgd2lsbCBzaW1wbHkgYWRkIGFuZAo+ID4gc3VidHJhY3Qgb25lIHJl cGVhdGVkbHkgaW4gdGhpcyBzaXR1YXRpb24sIGFjY3VyYXRlbHkgcmVmbGVjdGluZwo+ID4gdGhl IHBoeXNpY2FsIHJlYWxpdHkuIEFsc28sIGRvaW5nIHByb3BlciBxdWFkcmF0dXJlIGRlY29kaW5n Cj4gPiBlbGltaW5hdGVzIHRoZSBuZWVkIHRvIGRvIGRlYm91bmNpbmcgYWx0b2dldGhlciwgc2lu Y2UgYW55IHBvc3NpYmxlCj4gPiBqaXR0ZXIgb2NjdXJzIG9uIG9ubHkgb25lIG91dHB1dCBhdCBh IHRpbWUgYW5kIGhlbmNlIGNhbiBvbmx5Cj4gPiBjaGFuZ2UgdGhlIGNvdW50ZXIgdmFsdWUgYnkg wrExLiBBbmQgaXQgZ2l2ZXMgeW91IDTDlyB0aGUgcmVzb2x1dGlvbi4KPiA+Cj4gPiBDaHJpcwo+ ID4gICAKPiAKCi0tLS0tQkVHSU4gUEdQIFNJR05BVFVSRS0tLS0tClZlcnNpb246IEdudVBHIHYy LjAuMTcgKEdOVS9MaW51eCkKCmlFWUVBUkVEQUFZRkFrNldpUWtBQ2drUVhVRjZoT1RHUDdmV3pR Q2dvUE9ha1lOOExmUEo4M3czY2p6YjllRzgKbUJVQW4wRVhQcmwvd0J5NCtxRFByTEJCK3k1Vmpl TG0KPWI2YmEKLS0tLS1FTkQgUEdQIFNJR05BVFVSRS0tLS0tCgotLSAKaHR0cDovL3d3dy5waWNs aXN0LmNvbSBQSUMvU1ggRkFRICYgbGlzdCBhcmNoaXZlClZpZXcvY2hhbmdlIHlvdXIgbWVtYmVy c2hpcCBvcHRpb25zIGF0Cmh0dHA6Ly9tYWlsbWFuLm1pdC5lZHUvbWFpbG1hbi9saXN0aW5mby9w aWNsaXN0Cg== .