SWYgeW91IGdvIGZvciBtYWduZXRpYyBob2xkaW5nIHlvdSBjb3VsZCBwZXJoYXBzIHVzZSB2ZXJ5 IHN0cm9uZyBtYWduZXRzIHRvIGhvbGQgaXQgaW4gZHVyaW5nIHVzZSBhbmQgZ2V0IG92ZXIgdGhl IGV4Y2Vzc2l2ZSByZW1vdmFsIGZvcmNlIHByb2JsZW0gYnkgaGF2aW5nIGFuIGVqZWN0IGJ1dHRv biB0aGF0IGZpcmVzIHVwIGFuIGVsZWN0cm9tYWduZXQgdGhhdCBicmllZmx5IG92ZXJ3aGVsbXMg dGhlIGhvbGRpbmcgbWFnbmV0cyB0byBzcGl0IHRoZSBjb25uZWN0b3Igb3V0LiBUaGVyZSBtaWdo dCBiZSBzb21lIGludGVyZXN0aW5nIGJhY2sgRU1GIHByb2JsZW1zIGZyb20gdGhlIGVqZWN0aW9u IGNvaWwgYXMgdGhlIHBvd2VyIGdldHMgYWJydXB0bHkgY3V0IG9mZiB0aG91Z2guLi4gYW5kIHlv dSBkb24ndCB3YW50IHRvIGdvIHBlcm1hbmVudGx5ICBkZW1hZ25ldGlzaW5nIHlvdXIgaG9sZGlu ZyBtYWduZXRzIGVpdGhlciAuLi4gbWlnaHQgd29yayB0aG91Z2ggOikKCkNoZWVycywKICAgICAg ICAgUm9iaW4uCgoKLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0KRnJvbTogcGljbGlzdC1ib3Vu Y2VzQG1pdC5lZHUgW21haWx0bzpwaWNsaXN0LWJvdW5jZXNAbWl0LmVkdV0gT24gQmVoYWxmIE9m IEpvbmF0aGFuIEhhbGxhbWV5ZXIKU2VudDogMTYgSnVuZSAyMDExIDA0OjI2ClRvOiBNaWNyb2Nv bnRyb2xsZXIgZGlzY3Vzc2lvbiBsaXN0IC0gUHVibGljLgpTdWJqZWN0OiBSZTogW0VFXSBJTlZF TlQgTXVzaW5nIGFib3V0IGhpZ2ggcG93ZXIsbmVhci16ZXJvIGluc2VydGlvbiBmb3JjZSBjb25u ZWN0aW9ucy4KCj4gVGhlIHByb2JsZW0gaXMgbW92ZW1lbnQuIMKgSWYgaXQncyB6ZXJvLWZvcmNl IHRvIGluc2VydCwgdGhlbiBpdCAKPiBwcm9iYWJseSB3b24ndCB0YWtlIG11Y2ggZm9yIGl0IHRv IGZhbGwgb3V0LiDCoElmIHlvdSBkbyB0aGUgTWFjQm9vayAKPiB0aGluZyAtIGh0dHA6Ly9lbi53 aWtpcGVkaWEub3JnL3dpa2kvTWFnU2FmZSB0aGVuIHlvdSBjb3VsZCBhbHdheXMgCj4ganVzdCB1 c2UgYSByZWFsbHkgYmlnIG1hZ25ldC4KPgo+IEkgaGF2ZSBzZWVuIG1haW5zLXJhdGVkIHN0dWZm IGxpa2UgdGhhdCwgSSBjYW4ndCByZW1lbWJlciB3aGVyZSB0aG91Z2guCj4KPiBUb255Cj4KPgoK SVZlIHNlZW4gYSBkZWVwIGZyeWVyIHdpdGggYSBtYWduZXRpYyBjb25uZWN0b3IsICAyIHBpbnMg Zm9yIHRoZSBtYWlucywgcmVjZXNzZWQgYSBnb29kIHdheXMgaW5zaWRlIG9mIHRoZSBjb3JkIGNv bm5lY3RvciwgYW5kIHRoZXJlIHdhcyBhbHNvIGEgbGlwIG9uIHRoZSBjb25uZWN0b3Igc28geW91 IHdvdWxkIHJvY2sgaXQgaW50byBwbGFjZSwgYW5kIHRoZSBtYWduZXQgd291bGQgaG9sZCBpdCBk b3duLgoKLS0KSm9uYXRoYW4gSGFsbGFtZXllcgoKLS0KaHR0cDovL3d3dy5waWNsaXN0LmNvbSBQ SUMvU1ggRkFRICYgbGlzdCBhcmNoaXZlIFZpZXcvY2hhbmdlIHlvdXIgbWVtYmVyc2hpcCBvcHRp b25zIGF0IGh0dHA6Ly9tYWlsbWFuLm1pdC5lZHUvbWFpbG1hbi9saXN0aW5mby9waWNsaXN0Cgot LSAKaHR0cDovL3d3dy5waWNsaXN0LmNvbSBQSUMvU1ggRkFRICYgbGlzdCBhcmNoaXZlClZpZXcv Y2hhbmdlIHlvdXIgbWVtYmVyc2hpcCBvcHRpb25zIGF0Cmh0dHA6Ly9tYWlsbWFuLm1pdC5lZHUv bWFpbG1hbi9saXN0aW5mby9waWNsaXN0Cg== .