QnV0IHRoZSBzb2xkZXJpbmcgaGFzIHRvIGJlIGFsbCBkb25lIGF0IG9uY2UgcmVhbGx5ICYgb25s eSBoZWF0ZWQgaW4gYSBwYXJ0aWN1bGFyIHdheSBmb3IgYSBnaXZlbiB0aW1lLiBUaGF0IHNhaWQs IEkndmUgaGFuZCBzb2xkZXJlZCBtYW55IGNpcmN1aXRzLgoKSG93IHRoaXMgbWFjaGluZSBtaWdo dCBkbyB3aGVuIHBsYWNpbmcgcGFydHMgb24gYSBwYXN0ZSBzdGVuY2lsbGVkIGJvYXJkIEkgY2Fu J3Qgc2F5LCBidXQgSSBzdXJlIGhhdGUgZG9pbmcgdGhhdCBtYW51YWxseS4KCkpvZQoKLS0tLS1P cmlnaW5hbCBNZXNzYWdlLS0tLS0KRnJvbTogcGljbGlzdC1ib3VuY2VzQG1pdC5lZHUgW21haWx0 bzpwaWNsaXN0LWJvdW5jZXNAbWl0LmVkdV0gT24gQmVoYWxmIE9mIEplYW4tUGF1bCBMb3VpcwpT ZW50OiAxMyBGZWJydWFyeSAyMDE1IDEzOjI3ClRvOiBNaWNyb2NvbnRyb2xsZXIgZGlzY3Vzc2lv biBsaXN0IC0gUHVibGljLgpTdWJqZWN0OiBSZTogW0VFXTo6IFByb3RvdHlwZSBwaWNrICYgcGxh Y2UgbWFjaGluZSAtIERJWS9LaXRzZXQgLi4uICRVUzEyMDAKCkpvZSwKWW91IHJlYWxseSBuZWVk IHRvIGxlYXJuIGFib3V0IFNNVCB0ZWNobm9sb2d5LiBQbGFjZW1lbnQgaXMgb25seSBoYWxmIG9m IHRoZSBzdG9yeS4gWW91IGhhdmUgYWxzbyB0byB3b3JyeSBhYm91dCByZWZsb3cgdGhlIHNvbGRl ciBwYXN0ZSBhbmQgdGhhdCB3YXMgbm90IHNob3duIGluIHRoZSB2aWRlby4gV2hhdCB3b3VsZCBo YXZlIGJlZW4gYSBjb29sIG1hY2hpbmUgaXMgaWYgdGhlcmUgd2FzIGFuIGluZnJhcmVkIGxhc2Vy IGF0dGFjaGVkIHRvIHRoZSBzYW1lIHBsYWNlbWVudCBoZWFkIGluIG9yZGVyIHRvIHJlZmxvdyB0 aGUgc29sZGVyIHBhc3RlIGFmdGVyIHBsYWNlbWVudC4KQnV0IEkgYW0gZHJlYW1pbmfigKbigKbi gKYuLgoKSmVhbi1QYXVsCkFDOUdICgo+IE9uIEZlYiAxMywgMjAxNSwgYXQgNjowMyBBTSwgSm9l IE1jQ2F1bGV5IDxQTUNDVUxFWUB0Y2QuaWU+IHdyb3RlOgo+IAo+IEl0IG1heSBiZSBzbG93LCBJ IGRvbid0IGtub3cgbXVjaCBhYm91dCB0aGVzZSBtYWNoaW5lcywgYnV0IEknZCByYXRoZXIgaGF2 ZSBhIG1hY2hpbmUgdG8gZG8gdGhhdCBqb2IgdGhhbiBtZS4gQXQgbGVhc3QgeW91IGNhbiBiZSBk b2luZyBzb21ldGhpbmcgZWxzZSB3aGlsZSBpdCBpcyBkb2luZyB0aGUgZG9ua2V5IHdvcmsuCj4g Cj4gSm9lCj4gCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0KPiBGcm9tOiBwaWNsaXN0LWJv dW5jZXNAbWl0LmVkdSBbbWFpbHRvOnBpY2xpc3QtYm91bmNlc0BtaXQuZWR1XSBPbiAKPiBCZWhh bGYgT2YgSmVhbi1QYXVsIExvdWlzCj4gU2VudDogMTIgRmVicnVhcnkgMjAxNSAxNzoyNAo+IFRv OiBNaWNyb2NvbnRyb2xsZXIgZGlzY3Vzc2lvbiBsaXN0IC0gUHVibGljLgo+IFN1YmplY3Q6IFJl OiBbRUVdOjogUHJvdG90eXBlIHBpY2sgJiBwbGFjZSBtYWNoaW5lIC0gRElZL0tpdHNldCAuLi4g Cj4gJFVTMTIwMAo+IAo+IEkgYWdyZWUgMTAwJSB3aXRoIFJvYmVydC4KPiBJIGhhdmUgbmV2ZXIg c2VlbiBhIFNoYXBlT2tvIGJhc2VkIG1hY2hpbmUgbW92aW5nIHRoYXQgc2xvdy4KPiBUaGUgb25l cyB1c2VkIGF0IHRoZSBNYWtlciBTcGFjZSBJIGF0dGVuZCwgYXJlIGEgbG90IGZhc3Rlci4KPiBG b3IgU01UIHBsYWNlbWVudCwgaXQgaXMgcGFpbmZ1bGx5IHNsb3csIGFuZCBpdCBpcyBhIHJlYWwg Y2hhbGxlbmdlIHRvIGdldCB0aGUgdGFwZSB0byBzdGF5IHJlYWwgZmxhdCAodGhleSBjb21lIG9u IHJlZWxzIHNvIHRoZXkgYXJlIHByZS1iZW50KS4KPiBJdCBuZWVkZWQgYWJvdXQgOCBtaW51dGVz IHRvIHBsYWNlIGFib3V0IDIwIHBhcnRzLiB0aGF04oCZcyBhYm91dCAxNTAgcGFydHMgcGVyIGhv dXIuIEkgY2FuIGRvIGEgbG90IGZhc3RlciBieSBoYW5kLgo+IAo+IEp1c3QgbXkgJDAuMDIsCj4g SmVhbi1QYXVsCj4gQUM5R0gKPiAKPiAKPj4gT24gRmViIDEyLCAyMDE1LCBhdCA0OjQ2IEFNLCBS b2JlcnQgRHZvcmFjZWsgPGxndG5nc3RrQGhvdG1haWwuY29tPiB3cm90ZToKPj4gCj4+IE15IG1h aW4gZ3JpcGUgd2l0aCBsaXRlcGxhY2VyIGlzIHRoYXQgaXQgaXMgU0xPVyEKPj4gCj4+IENoZWVy cywKPj4gUm9iZXJ0Cj4+IAo+PiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tCj4+PiBGcm9tOiBhcHB0ZWNobnpAZ21haWwuY29tCj4+PiBEYXRlOiBUaHUsIDEyIEZlYiAy MDE1IDIyOjA0OjQ0ICsxMzAwCj4+PiBTdWJqZWN0OiBSZTogW0VFXTo6IFByb3RvdHlwZSBwaWNr ICYgcGxhY2UgbWFjaGluZSAtIERJWS9LaXRzZXQgLi4uIAo+Pj4gJFVTMTIwMAo+Pj4gVG86IHBp Y2xpc3RAbWl0LmVkdQo+Pj4gCj4+PiBPbiAxMiBGZWJydWFyeSAyMDE1IGF0IDE5OjIyLCBSb2Jl cnQgRHZvcmFjZWsgPGxndG5nc3RrQGhvdG1haWwuY29tPiB3cm90ZToKPj4+IAo+Pj4+IFRoZSBG aXJlUGljayBEZWx0YSB3YXMgbXVjaCBmYXN0ZXIgYW5kIG9ubHkgJDMwMCwgYnV0IGRldmVsb3Bt ZW50IAo+Pj4+IGFwcGVhcnMgdG8gaGF2ZSBzdGFsbGVkLgo+Pj4+IDxhIGhyZWY9Imh0dHA6Ly9k ZWx0YS5maXJlcGljay5vcmcvIiB0YXJnZXQ9Il9ibGFuayIKPj4+PiBjbGFzcz0ibmV3bHlpbnNl cnRlZGxpbmsiPmh0dHA6Ly9kZWx0YS5maXJlcGljay5vcmcvPC9hPgo+Pj4+IGh0dHA6Ly9oYWNr YWRheS5pby9wcm9qZWN0Lzk2My0zMDAtcGljay1hbmQtcGxhY2UtM2QtcHJpbnRlcgo+Pj4gCj4+ PiAKPj4+IFRoZSAkMzAwIEZpcmVwaWNrIHZlcnNpb24gaXMgZW50cnkgZW50cnkgbGV2ZWwgYW5k IHlvdSBjb3VsZCBzcGVuZCAKPj4+IDEwIHggdGhhdCAodGhleSBzYXkpLgo+Pj4gT24gdGhlIHBs dXMgc2lkZSBpdCdzIGFsc28gYSA0IGNvbG91ciBQTEEgM0QgcHJpbnRlciwgYnV0IGF0IGEgCj4+ PiBnbGFuY2UgaXQgc2VlbXMgdG8gYmUgcG90ZW50aWFsbHkgbW9yZSBsaW1pdGVkIGluIGFic29s dXRlIHBpY2sgYW5kIAo+Pj4gcGxhY2UgY2FwYWJpbGl0eS4KPj4+IAo+Pj4gR29vZCBwaG90byBo ZXJlLgo+Pj4gCj4+PiBodHRwczovL2Nkbi5oYWNrYWRheS5pby9pbWFnZXMvODM1NzE0MDEyNDU5 MzI4NTAucG5nCj4+PiAKPj4+IEl0IHVzZXMgYSBTdGV3YXJ0IFBsYXRmb3JtIHdoaWNoIGdpdmVz IGl0IGV4Y2VsbGVudCBtYW5ldXZlcmFiaWxpdHkgCj4+PiB3aXRoaW4gdGhlIHdvcmtzcGFjZSAo NkRPRikgYnV0IGFsc28gaGFzIHRoZSByZXN1bHQgdGhhdCBpdCBjYW4gCj4+PiByZWFjaCBvbmx5 IHNsaWdodGx5IG91dHNpZGUgdGhlIHdvcmsgYXJlYSBkZWZpbmVkIGJ5IHRoZSB2ZXJ0aWNhbCBj b2x1bW5zLgo+Pj4gRXh0ZW5kaW5nIGl0cyByZWFjaC0gZXZlbiBpbiBzYXkgb25lIGRpcmVjdGlv biBieSBhIGZhY3RvciBvZiAyIG9yIDMgb3IgNCBvciAuLi4KPj4+IHdvdWxkIHZhc3RseSBpbmNy ZWFzZSB0aGUgc2l6ZSBhbmQgY29tcGxleGl0eSBvZiB0aGUgbWFjaGluZS4gCj4+PiBXaGVyZWFz IHRoZSBsaWdodHBsYWNlciA8aHR0cDovL3d3dy5saXRlcGxhY2VyLmNvbS8KPj4+PiB1c2VzIGV4 dHJ1c2lvbnMgd2hpY2ggYWxsb3cgc3Vic3RhbnRpYWwgZXh0ZW5zaW9uIGF0IHJlbGF0b2l2ZWx5 IAo+Pj4+IG1pbmltYWwKPj4+IGNvc3QuIElmIHlvdSB3YW50IGEgaHVnZSBiZWFzdCBpdCBjb3Vs ZCBjb3N0IG5vdCB2YXN0bHkgbW9yZS4gRG9uJ3QgCj4+PiBleHBlY3QgaXQgdG8gM0QgcHJpbnQg Oi0pCj4+PiAKPj4+IEkgaGF2ZSBubyBpbnZvbHZlbWVudCB3aXRoIGFuZCBubyAnYXhlIHRvIGdy aW5kJyBvbiBiZWhhbGYgb2YgYW55IG9mIAo+Pj4gdGhlc2UgbWFjaGluZXMuCj4+PiAKPj4+IAo+ Pj4gUnVzc2VsbAo+Pj4gLS0KPj4+IGh0dHA6Ly93d3cucGljbGlzdC5jb20vdGVjaHJlZi9waWNs aXN0IFBJQy9TWCBGQVEgJiBsaXN0IGFyY2hpdmUgCj4+PiBWaWV3L2NoYW5nZSB5b3VyIG1lbWJl cnNoaXAgb3B0aW9ucyBhdCAKPj4+IGh0dHA6Ly9tYWlsbWFuLm1pdC5lZHUvbWFpbG1hbi9saXN0 aW5mby9waWNsaXN0Cj4+IAkJIAkgICAJCSAgCj4+IC0tCj4+IGh0dHA6Ly93d3cucGljbGlzdC5j b20vdGVjaHJlZi9waWNsaXN0IFBJQy9TWCBGQVEgJiBsaXN0IGFyY2hpdmUgCj4+IFZpZXcvY2hh bmdlIHlvdXIgbWVtYmVyc2hpcCBvcHRpb25zIGF0IAo+PiBodHRwOi8vbWFpbG1hbi5taXQuZWR1 L21haWxtYW4vbGlzdGluZm8vcGljbGlzdAo+IAo+IAo+IC0tCj4gaHR0cDovL3d3dy5waWNsaXN0 LmNvbS90ZWNocmVmL3BpY2xpc3QgUElDL1NYIEZBUSAmIGxpc3QgYXJjaGl2ZSAKPiBWaWV3L2No YW5nZSB5b3VyIG1lbWJlcnNoaXAgb3B0aW9ucyBhdCAKPiBodHRwOi8vbWFpbG1hbi5taXQuZWR1 L21haWxtYW4vbGlzdGluZm8vcGljbGlzdAo+IAo+IC0tCj4gaHR0cDovL3d3dy5waWNsaXN0LmNv bS90ZWNocmVmL3BpY2xpc3QgUElDL1NYIEZBUSAmIGxpc3QgYXJjaGl2ZSAKPiBWaWV3L2NoYW5n ZSB5b3VyIG1lbWJlcnNoaXAgb3B0aW9ucyBhdCAKPiBodHRwOi8vbWFpbG1hbi5taXQuZWR1L21h aWxtYW4vbGlzdGluZm8vcGljbGlzdAoKCi0tCmh0dHA6Ly93d3cucGljbGlzdC5jb20vdGVjaHJl Zi9waWNsaXN0IFBJQy9TWCBGQVEgJiBsaXN0IGFyY2hpdmUgVmlldy9jaGFuZ2UgeW91ciBtZW1i ZXJzaGlwIG9wdGlvbnMgYXQgaHR0cDovL21haWxtYW4ubWl0LmVkdS9tYWlsbWFuL2xpc3RpbmZv L3BpY2xpc3QKCi0tIApodHRwOi8vd3d3LnBpY2xpc3QuY29tL3RlY2hyZWYvcGljbGlzdCBQSUMv U1ggRkFRICYgbGlzdCBhcmNoaXZlClZpZXcvY2hhbmdlIHlvdXIgbWVtYmVyc2hpcCBvcHRpb25z IGF0Cmh0dHA6Ly9tYWlsbWFuLm1pdC5lZHUvbWFpbG1hbi9saXN0aW5mby9waWNsaXN0Cg== .