SSBoYWQgdGhhdCwgYnV0IGl0IHdhcyBpbiBhbiBBVlIuCgpOb3QgbG9uZyBhZnRlciB0aGUgTWVn YTEyOCBjYW1lIG91dCwgSSB1c2VkIGEgcGFpciBvZiB0aGVtIGluIGEgdGhlcm1hbCBwcmludGVy IGRlc2lnbiwgcGx1cyBhIFRpbnktMjYgZm9yIGJhdHRlcnkgY2hhcmdpbmcuClRoZSBwcmludGhl YWQgbWFuYWdlciB0b29rIGluIGRhdGEgZnJvbSB0aGUgY29tbXMgbWFuYWdlciBhbmQgcmFzdGVy aXplZCBpdCwgYW5kIG1hbmFnZWQgdGhlIHN0ZXBwZXIgbW90b3Igd2l0aCBhY2NlbC9kZWNhbCBh cyB3ZWxsIGFzIHRoZSBidXJuIHB1bHNlIHRpbWluZyBmb3IgODMyIHBpeGVscyBpbiAxMyBzZWdt ZW50cywgYXQgc29tZXRoaW5nIGxpa2UgMjAwMCBsaW5lcy9zZWNvbmQuCgpJdCB3b3JrZWQgd2Vs bCwgYnV0IHdlIHdvdWxkIGdldCBvY2Nhc2lvbmFsIGRhdGEgY29ycnVwdGlvbiBhbmQgbm8gYW1v dW50IG9mIGRlYnVnZ2luZyBldmVyIHJlc3VsdGVkIGluIGEgZml4LgpUaGUgbWVjaGFuaXNtIG9m IGRhdGEgdHJhbnNmZXIgd2FzIGJsYW1lZCwgYnV0IG9ubHkgb3V0IG9mIGRlc3BlcmF0aW9uLgoK QXQgb25lIHBvaW50LCBJIHdhcyBjYWxsZWQgdG8gdGhlIGZhY3RvcnkgYmVjYXVzZSBzdWRkZW5s eSAibm90aGluZyB3b3JrcyIuICAgIEkgZ2V0IHRoZXJlIGFuZCBzdXJlIGVub3VnaCwgdGhlIGNo aXBzIHByb2dyYW0gYnV0IHRoZXkgZG9uJ3QgcnVuLiAgQXMgSSdtIGludmVzdGlnYXRpbmcgSSBu b3RpY2VkIHRoYXQgdGhlIGxvdyBwb3dlciBvc2NpbGxhdG9yIGZ1c2Ugd2FzIHNldC4gIEkgaGFk IHNwZWNpZmllZCBOT1QgdG8gZG8gdGhpcyBidXQgc29tZW9uZSBvdmVycm9kZSBteSBkZWNpc2lv bi4KCkl0IHR1cm5zIG91dCB0aGF0IHRoZSBsb3cgcG93ZXIgb3NjaWxsYXRvciwgYXQgbGVhc3Qg b24gdGhvc2UgcGFydHMsIGlzbid0IHdlbGwgY2hhcmFjdGVyaXplZC4gIEF0bWVsIHdhcyBuZXZl ciBhYmxlIHRvIHRlbGwgbWUgd2hhdCBjcnlzdGFscyB3b3VsZCB3b3JrIHdpdGggaXQgb3IgaG93 IHRvIHNlbGVjdCBjcnlzdGFscyB0aGF0IHdvdWxkIHdvcmsgd2l0aCBpdC4gIFRoZSBwcm9ibGVt IGlzIHRoYXQgaW4gbG93IHBvd2VyIG1vZGUsIHRoZSBhbXBsaXR1ZGUgaXMgbXVjaCBsb3dlciBh bmQgd2l0aCBtb3N0IG9mIHRoZSBjaGlwcyB3aGF0IGhhcHBlbnMgaXMgdGhhdCBzb21ldGltZXMg cGFydCBvZiB0aGUgc3lzdGVtIGRpZG4ndCBnZXQgY2xvY2tlZCwgcmVzdWx0aW5nIGluIG5vbi1k ZXRlcm1pbmlzdGljIGV4ZWN1dGlvbi4gKCEpICAgQ29uY3VycmVudCBzeW1wdG9tcyBpbmNsdWRl ZCB0aGUgc2VyaWFsIGJhdWQgcmF0ZXMgYmVpbmcgc2xpZ2h0bHkgc2xvdy4gTm93aGVyZSBuZWFy IGVub3VnaCB0byB3b3JyeSBhYm91dCBidXQgbm90IGNvcnJlY3QuCgpTZXR0aW5nIHRoZSBvc2Np bGxhdG9yIGZ1c2UgdG8gZnVsbCBwb3dlciByZXNvbHZlZCBhbGwgdGhlIGlzc3Vlcy4KV2UganVz dCBnb3QgImx1Y2t5IiBpbiB0aGF0IHRoZSBvbmUgYmF0Y2ggcHV0IHRoZSBwcm9ibGVtIGZyb250 IGFuZCBjZW50ZXIuCgpJJ3ZlIHRhbGtlZCB0byBhIG51bWJlciBvZiBBVlIgdXNlcnMgc2luY2Ug dGhlbiB3aXRoIHNpbWlsYXIgaXNzdWVzLCBhbmQgdHVybmluZyBvZmYgdGhhdCBsb3cgcG93ZXIg b3NjaWxsYXRvciB3b3JrZWQgbWlyYWNsZXMuCk9uIHRoZSBNMTI4LCB0aGUgbG93IHBvd2VyIG1v ZGUgd2FzIHRoZSBERUZBVUxUIQoKCgoKLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0KRnJvbTog cGljbGlzdC1ib3VuY2VzQG1pdC5lZHUgPHBpY2xpc3QtYm91bmNlc0BtaXQuZWR1PiBPbiBCZWhh bGYgT2YgQ2xpbnQgSmF5ClNlbnQ6IFdlZG5lc2RheSwgSnVuZSA2LCAyMDE4IDk6NDQgQU0KVG86 IE1pY3JvY29udHJvbGxlciBkaXNjdXNzaW9uIGxpc3QgLSBQdWJsaWMuIDxwaWNsaXN0QG1pdC5l ZHU+ClN1YmplY3Q6IFJlOiBbT1RdOiBTdHJhbmdlIE1pY3JvY2hpcCBFbWFpbAoKSGVpc2VuYmVy ZydzIGJ1ZyBodW50ZXIsIHRoZSBhY3Qgb2YgZmluZGluZyBhIGJ1ZyBtZWFucyBpdCBjaGFuZ2Vz IGludG8gYSBkaWZmZXJlbnQgYnVnPwoKT24gNiBKdW5lIDIwMTggYXQgMTY6NDIsIFZhbiBIb3Ju LCBEYXZpZCA8IGRhdmlkLnZhbmhvcm5AYmFja2NvdW50cnlhY2Nlc3MuY29tPiB3cm90ZToKCj4g QW5kIHRoZXkgc2VuZCBpdCB0byB5b3UgYmVjYXVzZSB0aGV5IGtub3cgeW91J2xsIG5lZWQgaXQu ICBObyBuZWVkIHRvIAo+IHJlcXVlc3QuCj4KPgo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0t Cj4gRnJvbTogcGljbGlzdC1ib3VuY2VzQG1pdC5lZHUgPHBpY2xpc3QtYm91bmNlc0BtaXQuZWR1 PiBPbiBCZWhhbGYgT2YgCj4gUnVzc2VsbE1jCj4gU2VudDogV2VkbmVzZGF5LCBKdW5lIDYsIDIw MTggOToyMiBBTQo+IFRvOiBNaWNyb2NvbnRyb2xsZXIgZGlzY3Vzc2lvbiBsaXN0IC0gUHVibGlj LiA8cGljbGlzdEBtaXQuZWR1Pgo+IFN1YmplY3Q6IFJlOiBbT1RdOiBTdHJhbmdlIE1pY3JvY2hp cCBFbWFpbAo+Cj4gIOKAiwo+Cj4gT24gNyBKdW5lIDIwMTggYXQgMDE6MzMsIERlbm55IEVzdGVy bGluZSA8ZGVzdGVybGluZUBnbWFpbC5jb20+IHdyb3RlOgo+Cj4gPiBUaGUgd2VpcmQgcGFydCBm b3IgbWUgd2FzIHRoYXQgSSByZWNlaXZlZCB0aGUgYm9hcmQgYSBjb3VwbGUgd2Vla3MgCj4gPiBi ZWZvcmUgdGhlIGVtYWlsLiBJdCBvbmx5IHZpb2xhdGVkIGNhdXNhbGl0eSBhIGxpdHRsZSA6LSkK PiA+Cj4gPgo+Cj4gVGhlIGJvYXJkcyBhcmUgZWl0aGVyIGRlYWQgb3IgYWxpdmUuCj4g4oCLU29t ZSB5b3UgZ2V0IGp1c3QgYSBzbWlsZSBmbG9hdGluZyBpbiB0aGUgYWlyLgo+IE1vcmUgbGlrZWx5 IHNvIGlmIHlvdSBsaXZlIGluIENoZXNoaXJlLgo+Cj4KPiAgICAgICAgUuKAiwo+Cj4KPiDigIsK PiAtLQo+IGh0dHA6Ly93d3cucGljbGlzdC5jb20vdGVjaHJlZi9waWNsaXN0IFBJQy9TWCBGQVEg JiBsaXN0IGFyY2hpdmUgCj4gVmlldy9jaGFuZ2UgeW91ciBtZW1iZXJzaGlwIG9wdGlvbnMgYXQg aHR0cDovL21haWxtYW4ubWl0LmVkdS8gCj4gbWFpbG1hbi9saXN0aW5mby9waWNsaXN0Cj4KPiAt LQo+IGh0dHA6Ly93d3cucGljbGlzdC5jb20vdGVjaHJlZi9waWNsaXN0IFBJQy9TWCBGQVEgJiBs aXN0IGFyY2hpdmUgCj4gVmlldy9jaGFuZ2UgeW91ciBtZW1iZXJzaGlwIG9wdGlvbnMgYXQgCj4g aHR0cDovL21haWxtYW4ubWl0LmVkdS9tYWlsbWFuL2xpc3RpbmZvL3BpY2xpc3QKPgoKCgotLQpD bGludC4gTTBVQVcgSU84MwoKKk5vIHRyZWVzIHdlcmUgaGFybWVkIGluIHRoZSBzZW5kaW5nIG9m IHRoaXMgbWFpbC4gSG93ZXZlciwgYSBsYXJnZSBudW1iZXIgb2YgZWxlY3Ryb25zIHdlcmUgZ3Jl YXRseSBpbmNvbnZlbmllbmNlZC4qCi0tCmh0dHA6Ly93d3cucGljbGlzdC5jb20vdGVjaHJlZi9w aWNsaXN0IFBJQy9TWCBGQVEgJiBsaXN0IGFyY2hpdmUgVmlldy9jaGFuZ2UgeW91ciBtZW1iZXJz aGlwIG9wdGlvbnMgYXQgaHR0cDovL21haWxtYW4ubWl0LmVkdS9tYWlsbWFuL2xpc3RpbmZvL3Bp Y2xpc3QKCi0tIApodHRwOi8vd3d3LnBpY2xpc3QuY29tL3RlY2hyZWYvcGljbGlzdCBQSUMvU1gg RkFRICYgbGlzdCBhcmNoaXZlClZpZXcvY2hhbmdlIHlvdXIgbWVtYmVyc2hpcCBvcHRpb25zIGF0 Cmh0dHA6Ly9tYWlsbWFuLm1pdC5lZHUvbWFpbG1hbi9saXN0aW5mby9waWNsaXN0Cg== .