VHdvIHRoaW5ncyB0aGF0IGFyZSB2aXRhbCB0byBmb2N1cyBtaXNzZWQgZm9yIHN1cmUgOikKKCBv biB0b3Agb2YgYWxsIHRob3NlIGJyYWluLCBicmF2ZSAmIGJsYWNrIG1hZ2ljIHRoaW5ncyApCgox LiBDb29sICYgcXVpdGUgY2xpbWF0ZSBpbiB0aGUgInRoaW5rIHRhbmsiIHJvb20KMi4gIkVuZGxl c3MiIGN1cCBvZiBnb29kIHN0cm9uZyB0ZWEgb3IgY29mZmVlICggd2hvIHByZWZlcnMgd2hhdCA6 KQoKCldCUiBEbWl0cml5LgoKCkfDa2hhbiBTRVZFUiB3cm90ZToKPiAKPiAgIldoYXQgTWFrZXMg YW4gRW5naW5lZXIgU3VjY2Vzc2Z1bCIsIGJ5IFdhbHRlciBXLiBGcmV5Cj4gCj4gSUVFRSBQb3Rl bnRpYWxzLCBWb2x1bWUgMTYsIElzc3VlIDUsIERlY2VtYmVyIDE5OTcgLSBKYW51YXJ5IDE5OTgK PiAKPiBBZnRlciB3b3JraW5nIGFzIGFuIGVuZ2luZWVyIGZvciBvdmVyIDM1IHllYXJzLCBJIG5v dyBjb25jbHVkZSB0aGF0IGEKPiBzdWNjZXNzZnVsIGNhcmVlciBkZXBlbmRzIG9uIHVuZGVyc3Rh bmRpbmcgd2hhdCBlbmdpbmVlcmluZyBpcywgYWNhZGVtaWMKPiBwZXJmb3JtYW5jZSwgYW5kIHBl cnNvbmFsaXR5LiBBbmQgdGhlc2UgY29uc2lkZXJhdGlvbnMgYXJlIG5vdCBhbGwgaW1wb3J0YW50 Cj4gZm9yIHRoZSByaWdodCByZWFzb25zLgo+IAo+IEVuZ2luZWVyaW5nIGlzIHRoZSBhcnQgb2Yg YXBwbHlpbmcgc2NpZW50aWZpYyBwcmluY2lwbGVzIHRvIHNvbHZlIGEgcHJvYmxlbS4KPiBJdCBp cyBub3QgYSBzZXBhcmF0ZSBhcmVhIG9mIHNjaWVuY2Ugc3VjaCBhcyBwaHlzaWNzLiBFbmdpbmVl cmluZyBwcm9qZWN0cwo+IGFyZSBib3VuZCBieSB0aHJlZSB2YXJpYWJsZXM6IHRoZSBudW1iZXIg b2YgcHJvYmxlbXMgdG8gc29sdmUsIHRoZSBmdW5kcwo+IGF2YWlsYWJsZSB0byBzb2x2ZSB0aGVz ZSBwcm9ibGVtcywgYW5kIHRoZSBkZWxpdmVyeSBkYXRlIG9mIHRoZSBmaW5pc2hlZAo+IGl0ZW1z LiBUaGUgY2F0Y2ggaXMgeW91IGNhbiBvbmx5IGZpeCB0d28gb2YgdGhlIHZhcmlhYmxlcywgd2hp bGUgdGhlIHRoaXJkCj4gaXMgZGV0ZXJtaW5lZCBieSB0aGUgb3RoZXJzLgo+IAo+IEFsdGhvdWdo IGEgbW9kaWN1bSBvZiBhY2FkZW1pYyBwZXJmb3JtYW5jZSBpcyBuZWNlc3NhcnkgdG8gZ3JhZHVh dGUsIGEgaGlnaAo+IEdQQSBkb2VzIG5vdCBwcmVkaWNhdGUgYSBzdWNjZXNzZnVsIGNhcmVlci4g VGhlIHJlYWwgaW5kaWNhdG9ycyBmb3IKPiBlbmdpbmVlcmluZyBwZXJmb3JtYW5jZSByZXNpZGUg aW4gYSBwZXJzb24ncyBwZXJzb25hbGl0eSB0cmFpdHMsIGFiaWxpdHkgdG8KPiB0aGluayBpbm5v dmF0aXZlbHksIGFuZCBza2lsbCBpbiBpbnRlcmFjdGluZyB3aXRoIG90aGVycy4gUGVyc29ubmVs Cj4gZGVwYXJ0bWVudHMgKG9mdGVuIGZvciBsZWdhbCByZWFzb25zKSBzdGF5IGF3YXkgZnJvbSB0 cnlpbmcgdG8gcmF0ZSB0aGVzZQo+IHN1YmplY3RpdmUgYXJlYXMgYW5kIHN0aWNrIHRvIGVhc2ls eSBxdWFudGlmaWVkIGFyZWFzLCBpLmUuLCAiR1BBLCBjbGFzcwo+IHN0YW5kaW5nLCBldGMuIiBU aHVzLCBtYW55IHBvdGVudGlhbGx5IGdvb2QgZW5naW5lZXJzIGFyZSB0dXJuZWQgYXdheSBkdWUg dG8KPiBwb29yIGdyYWRlcy4KPiAKPiBUaGUgZm9sbG93aW5nIHN1YmplY3RpdmUgYXJlYXMgYWxz byBhcmUgbmVjZXNzYXJ5IGZvciBhIHN1Y2Nlc3NmdWwKPiBlbmdpbmVlcmluZyBjYXJlZXI6Cj4g Cj4gQ3VyaW9zaXR5IC0gVGhlIGRlc2lyZSB0byBmaW5kIG91dCBob3cgdGhpbmdzIHdvcmssIG9y IHdoeSB0aGV5IGRvbid0LiBUaGUKPiBlbmdpbmVlciBub3RlcyB0aGUgZ29vZCBhbmQgdGhlIGJh ZCBhcHByb2FjaGVzIHRvIHRoZSBwcm9ibGVtLgo+IAo+IFBlcnNldmVyYW5jZSAtIFRoaXMgdHJh aXQgaXMgbmVlZGVkIHRvIHN0YXkgd2l0aCBhIHByb2JsZW0gZXZlbiB0aG91Z2ggdGhlCj4gc29s dXRpb24gaXMgbm90IGFkZXF1YXRlIG9yIGVsdWRlcyBvciBzZWVtcyB0byBmaWdodCB0aGUgZW5n aW5lZXIuIEhvd2V2ZXIsCj4gdGhpcyBtdXN0IGJlIG5vdCBiZSBjYXJyaWVkIHRvIGFuIGV4dHJl bWUsIGkuZS4sIGl0IGJlY29tZXMgYSBmdXRpbGUKPiBvYnNlc3Npb24uIEFsc28sIG9mdGVudGlt ZXMgYSBwcm9ibGVtIHdpbGwgaGF2ZSB0byBiZSB0ZW1wb3JhcmlseSBzaGVsdmVkIHRvCj4gd29y ayBvbiBwcm9qZWN0cyB3aGljaCB3aWxsIHByb2R1Y2UgbW9yZSBpbW1lZGlhdGUgcmVzdWx0cy4K PiAKPiBTZWxmLWNvbmZpZGVuY2UgLSBUaGUgZW5naW5lZXIga25vd3MgaGlzIG9yIGhlciBjYXBh YmlsaXRpZXMgYW5kIHByb2JsZW0KPiBhcmVhczsgZm9yIGV4YW1wbGUsIGhlIG9yIHNoZSBoYXMg YSB0ZW5kZW5jeSB0byBzZXR0bGUgb24gdGhlIGZpcnN0IHNvbHV0aW9uCj4gdGhhdCBwcmVzZW50 cyBpdHNlbGYuCj4gCj4gQ29tbW9uIHNlbnNlIC0gVGhlIGFiaWxpdHkgdG8gbWFrZSBkZWNpc2lv bnMgb24gcGFydGlhbCBvciBjb250cmFkaWN0b3J5Cj4gaW5mb3JtYXRpb24uIEl0IGlzIGFsc28g dXNlZCB0byBiYWxhbmNlIHBlcnNldmVyYW5jZSBhZ2FpbnN0IHdoYXQgaXMgYmVzdAo+IGZvciB0 aGUgb3ZlcmFsbCBwcm9ncmFtLgo+IAo+IFNlbnNlIG9mIGh1bW9yIC0gVGhpcyB0cmFpdCBpcyBu ZWNlc3NhcnkgdG8ga2VlcCBmcm9tIGdldHRpbmcgZGVwcmVzc2VkIHdoZW4KPiB0aGUgc29sdXRp b24gaGFzIGJlZW4gZWx1c2l2ZSBhbmQgYWxsIHNvcnRzIG9mIGlycmVsZXZhbnQgcHJvYmxlbXMg YXJlCj4gb2JzY3VyaW5nIHRoZSBhbnN3ZXIuIEh1bW9yIGlzIGFsc28gdmVyeSB1c2VmdWwgaW4g aGFuZGxpbmcgcGVyc29uYWxpdHkKPiBwcm9ibGVtcyB3aXRoIHN1Ym9yZGluYXRlcyBhbmQvb3Ig c3VwZXJpb3JzLgo+IAo+IEluZ2VudWl0eSAtIFRoaXMgbWVhbnMgdGhlIGVuZ2luZWVyIGlzIG5v dCBsaW1pdGVkIHRvIHRoZSAiYnkgdGhlIGJvb2siIHdheQo+IG9mIGRvaW5nIHRoaW5ncy4gVGhp cyBwZXJzb24gaXMgb3BlbiB0byB1bmlxdWUgb3IgdW5wcm92ZWQgc29sdXRpb25zIHRvCj4gZGlm ZmljdWx0IHByb2JsZW1zOyBoZSBvciBzaGUgaXMgd2lsbGluZyB0byB0YWtlIGEgY2hhbmNlIGlm IHRoZSBwb3RlbnRpYWwKPiBnYWlucyBhcmUgZ3JlYXQuCj4gCj4gQ29tbXVuaWNhdGlvbiAtIEVu Z2luZWVyaW5nIGlzIGFuIG9jY3VwYXRpb24gdGhhdCBkZXBlbmRzIG9uIHRoZSBleGNoYW5nZQo+ IGFuZCBpbnRlcnByZXRhdGlvbiBvZiBpZGVhcy4gQW4gZW5naW5lZXIgbXVzdCBiZSBhd2FyZSBv ZiBob3cgb3RoZXJzIGhhdmUKPiB0cmllZCB0byBzb2x2ZSBhIHByb2JsZW0uIFRoaXMga25vd2xl ZGdlIG9mdGVuIHByZXNlbnRzIGl0c2VsZiB3aGVuCj4gZW5naW5lZXJzIGdldCB0b2dldGhlciBh cmlkIHRhbGsgc2hvcC4gVmVyeSBvZnRlbiwgdGhlIHNvbHV0aW9uIHJlcXVpcmVzCj4gbWVyZ2lu ZyB0aGUgYmVzdCBwYXJ0cyBvZiBjb21wZXRpbmcgc29sdXRpb25zIGludG8gYSB1bmlmaWVkIGFw cHJvYWNoLgo+IEhvd2V2ZXIsIHRoaXMgaXMgbm90IHRoZSBzYW1lIGFzIHdoZW4sIHN0dWZmIGlz IGluY2x1ZGVkIGp1c3QgdG8ga2VlcAo+IGV2ZXJ5b25lIGhhcHB5LiBUaGlzICJ0ZWFtIGFwcHJv YWNoIiB0eXBpY2FsbHkgcmVzdWx0cyBpbiBtZWRpb2NyZSBwcm9kdWN0cy4KPiAKPiBMdWNrIC0g THVjayBpcyBhbHdheXMgdXNlZnVsIHNpbmNlICJubyBhbW91bnQgb2YgcGxhbm5pbmcgd2lsbCBy ZXBsYWNlIGR1bWIKPiBsdWNrLiIgSG93ZXZlciwgZ29vZCBwbGFubmluZyBhbmQgY29udGluZ2Vu Y3kgcGxhbm5pbmcgb2Z0ZW4gaGVscCBvciBhcmUKPiBjb25mdXNlZCB3aXRoIGx1Y2suCj4gCj4g QWx0b2dldGhlciwgdGhlc2UgZWlnaHQgYXR0cmlidXRlcyB3aWxsIG1vcmUgZ3JlYXRseSBhZmZl Y3Qgb25lJ3MKPiBwZXJmb3JtYW5jZSBhcyBhbiBlbmdpbmVlciB0aGFuIGhpcyBvciBoZXIgR1BB Lgo+IAo+IEFib3V0IHRoZSBhdXRob3IgLSBXYWx0ZXIgVy4gRnJleSBpcyBhbiBJRUVFIExpZmUg U2VuaW9yLgo+IC0tCj4gaHR0cDovL3d3dy5waWNsaXN0LmNvbSBQSUMvU1ggRkFRICYgbGlzdCBh cmNoaXZlCj4gVmlldy9jaGFuZ2UgeW91ciBtZW1iZXJzaGlwIG9wdGlvbnMgYXQKPiBodHRwOi8v bWFpbG1hbi5taXQuZWR1L21haWxtYW4vbGlzdGluZm8vcGljbGlzdAotLSAKaHR0cDovL3d3dy5w aWNsaXN0LmNvbSBQSUMvU1ggRkFRICYgbGlzdCBhcmNoaXZlClZpZXcvY2hhbmdlIHlvdXIgbWVt YmVyc2hpcCBvcHRpb25zIGF0Cmh0dHA6Ly9tYWlsbWFuLm1pdC5lZHUvbWFpbG1hbi9saXN0aW5m by9waWNsaXN0Cg==