WmllZ2xlci1OaWNob2xzIGhhcyB3b3JrZWQgd2VsbCBmb3IgbWUgaW4gdGhlIHBhc3QgdGhlIG9u ZSB3aGljaCBoYXMgd29ya2VkCnRoZSBiZXN0IGlzIEludGVybmFsIE1vZGVsIENvbnRyb2wgKElN QyksIGFzIGxvbmcgYXMgeW91IGNhbiBhcHBseSBpdC4KClJlZ2FyZHMsCgpDYXJsb3MuCkVsIGRp Yy4gMzAsIDIwMTQgMTE6MDMgUE0sICJOZWlsIiA8cGljZHVkZTNAbmFyd2FuaS5vcmc+IGVzY3Jp YmnDszoKCj4gT2ggd2VsbCB0aGF0IHNvdW5kcyBuaWNlLiAgSSBkb24ndCBoYXZlIGFueSBQSUQg eWV0IChqdXN0IG15IGNydWRlIFApLAo+IGJ1dCBhbSB3b3JraW5nIG9uIHRoYXQgbm93LiAgRnJv bSB3aGF0IEkgcmVhZCB0aG91Z2gsIGl0IHNlZW1zIGxpa2UgZWFjaAo+IHRpbWUgSSBtb3ZlIGl0 IGJhY2sgaXQgd291bGQgdGFrZSBhIGhhbmRmdWwgb2YgY3ljbGVzIGZvciB0aGUgSSB0ZXJtIHRv Cj4gZ3JvdyBlbm91Z2ggdG8gbW92ZSB0aGUgbW90b3Igd2hlcmUgaXQgbmVlZHMgdG8gYmUsIHNv IHdvdWxkIHRoYXQKPiBpbnRyb2R1Y2UgYSBub3RpY2VhYmxlIGRlbGF5IHRvIGdldCB0aGUgbW90 b3IgaW50byBwb3NpdGlvbj8KPgo+IFdoaWxlIEknbSBoZXJlLCB3aGF0J3MgYSBnb29kIG1ldGhv ZCB0byB0dW5lPyAgRnJvbSBXaWtpcGVkaWEncyBpbmZvCj4gaGVyZSAoIGh0dHA6Ly9lbi53aWtp cGVkaWEub3JnL3dpa2kvUElEX2NvbnRyb2xsZXIgKSwgSSdtIGdvaW5nIHRvIHRyeQo+IHRoZSBa aWVnbGVyLU5pY2hvbHMgbWV0aG9kLCBidXQgaXMgdGhlcmUgYW55dGhpbmcgZWxzZSB5b3UnZCBy ZWNvbW1lbmQ/Cj4KPiBUaGFua3MsCj4gLU5laWwuCj4KPgo+Cj4gT24gMTIvMzAvMjAxNCA5OjU2 IFBNLCBSYW5keSBEYXdzb24gd3JvdGU6Cj4gPiBIaSBOaWVsLAo+ID4KPiA+IElmIHlvdSBoYXZl IGludGVncmFsIHdvcmtpbmcgaW4geW91ciBhbGdvcml0aG0sIHRoaXMgd2lsbCB0YWtlIGNhcmUg b2YKPiBpdC4KPiA+Cj4gPiBBcyBsb25nIGFzIGEgcG9zaXRpb24gZXJyb3IgZXhpc3RzLCB0aGUg SSB0ZXJtIHdpbGwgaW5jcmVhc2UgaW4gdmFsdWUKPiBmb3IgZWFjaCB0aW1lc3RlcCBhbmQgaW5j cmVhc2UgdGhlIFBJRCBvdXRwdXQgdG8gdHVybiBvbiB5b3VyIG1vdG9yIGFnYWluc3QKPiB0aGUg c3ByaW5nLgo+ID4KPiA+IEluIHRoZSBvdGhlciBkaXJlY3Rpb24sIHdpdGhvdXQgdGhlIHNwcmlu ZyBvcHBvc2luZywgdGhlIEkgdGVybSBpcyAnb3V0Cj4gb2YgdGhlIGxvb3AnLCBhbmQgdGhlIHBy b3BvcnRpb25hbCB0ZXJtIGRvZXMgaXQgYWxsIGJ5IGl0c2VsZiAob3IgbWF5YmUKPiBub3QsIGZv ciBhIHRpZ2h0IHNlYWwpCj4gPgo+ID4gV2hhdCB5b3UgYXJlIGdvaW5nIHRvIHNlZSwgaXMgUCBz bGV3IHRoZSBtb3RvciB1bnRpbCByZXNpc3RhbmNlIGlzIG1ldCwKPiB0aGUgbG9uZ2VyIGl0cyBu b3QgYXQgdGhlIGRlc2lyZWQgcG9zaXRpb24sIG91dHB1dCBpbmNyZWFzZXMsIGNsb3NpbmcKPiBh Z2FpbnN0IHRoZSByZXNpc3RhbmNlLgo+ID4KPiA+IEkgaGF2ZSB1c2VkIHRoaXMgb24gc2Vydm8g dmFsdmVzIHdpdGggcnViYmVyIHNlYXRzLCB3aGVyZSBJIGFsd2F5cyBoYXZlCj4gdG8gZ2l2ZSB0 aGUgb3V0cHV0IHRlcm0gYW4gaW5jcmVhc2UsIHRoZSBsb25nZXIgaXQgcmVtYWlucyBvdXQgb2Yg cG9zaXRpb24uCj4gPgo+ID4gUmFuZHkKPiA+Cj4gPj4gRGF0ZTogVHVlLCAzMCBEZWMgMjAxNCAy MTozNzo0OCAtMDUwMAo+ID4+IEZyb206IHBpY2R1ZGUzQG5hcndhbmkub3JnCj4gPj4gVG86IHBp Y2xpc3RAbWl0LmVkdQo+ID4+IFN1YmplY3Q6IFtFRV0gQXN5bW1ldHJpY2FsIG1vdG9yL3NlcnZv IFBJRCBjb250cm9sPwo+ID4+Cj4gPj4gSGkgYWxsLAo+ID4+Cj4gPj4gSSdtIHRyeWluZyB0byBt YWtlIHdoYXQgaXMgZXNzZW50aWFsbHkgYSBzZXJ2byBmb3IgYSBvbmUtb2ZmIHByb2plY3QgZm9y Cj4gPj4gYSBmcmllbmQuLi4gSSdtIGRyaXZpbmcgYSB3aW5kb3cgbW90b3IgKEkgY2FuIGNvbnRy b2wgc3BlZWQKPiA+PiBiaWRpcmVjdGlvbmFsbHkpIHdpdGggYSBjb250cm9sbGVyL2RyaXZlciBh bmQgdGhlcmUncyBhIHBvdGVudGlvbWV0ZXIKPiA+PiBhdHRhY2hlZCBmb3IgZmVlZGJhY2suICBG b3Igbm93LCBJJ20gdXNpbmcgYW4gQXJkdWlubyB0byBnZXQgaXQgcnVubmluZywKPiA+PiBidXQg SSdsbCBnZXQgYSBjdXN0b20gUENCIG1hZGUgZm9yIGEgUElDLWJhc2VkIGNpcmN1aXQgbGF0ZXIu ICBCVVQuLi4KPiA+PiB0aGVyZSdzIGEgb25lLXNpZGVkIGZvcmNlIChzcHJpbmcpIG9uIHRoZSBs b2FkIHRoZSBtb3RvciBpcyBtb3ZpbmcuCj4gPj4KPiA+PiBGb3IgYW4gaW5pdGlhbCB0ZXN0IEkg dHJpZWQgc2V0dGluZyB0aGUgbW90b3Igc3BlZWQgcHJvcG9ydGlvbmFsIHRvIGhvdwo+ID4+IGZh ciBvZmYgaXQgd2FzIGZyb20gaXQncyB0YXJnZXQsIGJ1dCB3aGVuIGl0IGdldHMgY2xvc2UsIHRo ZSBzcHJpbmcgbG9hZAo+ID4+IGlzIHRvbyBtdWNoIGZvciBpdC4gIENoYW5naW5nIHRoZSBmb3Jj ZSBzbyBpdCdzIGEgYml0IG1vcmUgYXQgY2xvc2UgdG8KPiA+PiB0YXJnZXQgcG9zaXRpb24gaGVs cHMsIGJ1dCBJIHRoaW5rIEknbSBqdXN0IGdvaW5nIHRvIHVzZSBQSUQuICBNeQo+ID4+IGNvbmNl cm4gaXMgdGhhdCB3aXRoIHRoZSBzcHJpbmcgZm9yY2UgYWN0aW5nIG9ubHkgb25lIHdheSwgdGhl IFBJRAo+ID4+IHBhcmFtZXRlcnMgd291bGQgYmUgZGlmZmVyZW50IGZyb20gb25lIHNpZGUgdG8g dGhlIG5leHQuICBFc3NlbnRpYWxseSB0bwo+ID4+IHN0YXkgaW4gYSBmaXhlZCBwb3NpdGlvbiwg SSdkIG5lZWQgYSBjb250aW51b3VzIG5vbi16ZXJvIHNwZWVkIG9uIHRoZQo+IG1vdG9yLgo+ID4+ Cj4gPj4gSG93IGlzIHRoaXMgKGVhc2lseSkgaGFuZGxlZD8gIERvIEkgZG8gc2VwYXJhdGUgY2Fz ZXMgZm9yIG9uZSBkaXJlY3Rpb24KPiA+PiB2cy4gdGhlIG90aGVyPyAgT3IgZG8gSSBlbXBpcmlj YWxseSBkZXRlcm1pbmUgaG93IG11Y2ggc3BlZWQgdG8gc2VuZCBpdAo+ID4+IHRvIGNvdW50ZXIg dGhlIHNwcmluZyBmb3JjZSBhbmQgYWRkIHRoYXQgdmFsdWUgYmVmb3JlIHNlbmRpbmcgdG8gdGhl Cj4gPj4gbW90b3IgY29udHJvbGxlcj8gIE9mIGNvdXJzZSwgdGhpcyB3b3VsZCBhc3N1bWUgdGhl IHNwcmluZyBpdCBtb3N0bHkKPiA+PiBjb25zdGFudCBmb3JjZSBmb3IgdGhlIGZ1bGwgcmFuZ2Ug b2YgbW92ZW1lbnQuICBCdXQgd2hhdCBpZiBpdCdzIG5vdD8KPiA+Pgo+ID4+IENoZWVycywKPiA+ PiAtTmVpbAo+ID4+Cj4gPj4gLS0KPiA+PiBodHRwOi8vd3d3LnBpY2xpc3QuY29tL3RlY2hyZWYv cGljbGlzdCBQSUMvU1ggRkFRICYgbGlzdCBhcmNoaXZlCj4gPj4gVmlldy9jaGFuZ2UgeW91ciBt ZW1iZXJzaGlwIG9wdGlvbnMgYXQKPiA+PiBodHRwOi8vbWFpbG1hbi5taXQuZWR1L21haWxtYW4v bGlzdGluZm8vcGljbGlzdAo+ID4KPgo+IC0tCj4gaHR0cDovL3d3dy5waWNsaXN0LmNvbS90ZWNo cmVmL3BpY2xpc3QgUElDL1NYIEZBUSAmIGxpc3QgYXJjaGl2ZQo+IFZpZXcvY2hhbmdlIHlvdXIg bWVtYmVyc2hpcCBvcHRpb25zIGF0Cj4gaHR0cDovL21haWxtYW4ubWl0LmVkdS9tYWlsbWFuL2xp c3RpbmZvL3BpY2xpc3QKPgotLSAKaHR0cDovL3d3dy5waWNsaXN0LmNvbS90ZWNocmVmL3BpY2xp c3QgUElDL1NYIEZBUSAmIGxpc3QgYXJjaGl2ZQpWaWV3L2NoYW5nZSB5b3VyIG1lbWJlcnNoaXAg b3B0aW9ucyBhdApodHRwOi8vbWFpbG1hbi5taXQuZWR1L21haWxtYW4vbGlzdGluZm8vcGljbGlz dAo= .