NDkuLi4gY29vbC4KCkhhcHB5IEhvbGlkYXlzLCBldmVyeW9uZSEKCkNoZWVycywKLU5laWwuCgoK Ck9uIDEyLzI0LzIwMTUgNjo0MiBBTSwgUnVzc2VsbE1jIHdyb3RlOgo+IENocmlzdG1hcyBkYXkg aGFzIGp1c3QgYmVndW4gaGVyZSBhdCB0aGUgZGF3biBvZiB0aGUgZGF5IGFuZCB0aGUgYmVnaW5u aW5nCj4gb2YgdGltZS4KPiBGb3IgdGhlIG5leHQgNDkgaG91cnMgaXQgd2lsbCBiZSBDaHJpc3Rt YXMgc29tZXdoZXJlIG9uIGVhcnRoKioqLgo+Cj4gSSBjb25zaWRlcmVkIGhvdyBJIGNvdWxkIG9m ZmVyIGEgbWVhbmluZ2Z1bCBDaHJpc3RtYXMgd2lzaCB0aGF0IGRpZCBub3QKPiBvZmZlbmQgdGhl IHNlbnNpYmlsaXRpZXMgb2YgdmFyaW91cyBwZW9wbGUsIGFzIHVzdWFsbHkgc2VlbXMgdG8gYmUg dGhlCj4gY2FzZSwgbm8gbWF0dGVyIHdoYXQgaXMgc2FpZC4KPgo+IEEgZGF5IG9yIHNvIGFnbyBp dCBvY2N1cnJlZCB0byBtZSB0aGF0IEkgaGFkIHNvIHZlcnkgb2Z0ZW4gaGVhcmQgdGhlCj4gImdy ZWV0aW5nIiBpbiBMdWtlIDI6MTQgYnV0IG5ldmVyIHNlZW4gaG93IHByb2ZvdW5kIGl0IHdhcyBp biBzcGl0ZSBvZiAob3IKPiBiZWNhdXNlIG9mKSBpdHMgc2ltcGxpY2l0eS4gSSBncmV3IHVwIHdp dGggdGhlIEtpbmcgSmFtZXMgQmlibGUgYW5kIHRoYXQKPiB0cmFuc2xhdGlvbiBzZXJ2ZXMgd2Vs bCBoZXJlLgo+Cj4gSGVyZSB0aGUgJ2hlYXZlbmx5IGhvc3QnKiogZGVsaXZlcmVkIHRoZSBtZXNz YWdlIHdoaWNoIHdlLWFsbCB3ZXJlCj4gYXBwYXJlbnRseSBtZWFudCB0byB0YWtlIGZyb20gdGhl IG9jY2FzaW9uLgo+IFRoYXQgdGhpcyB3YXMgZGVsaXZlcmVkIGluIHRoZSBtaWRkbGUtRWFzdCBh ZGRzIHRvIGl0cyBpbXBhY3QuCj4KPiBXaGF0IHdhcyB0aGUgY29yZSBDaHJpc3RtYXMgbWVzc2Fn ZSB0aGF0IHdvdWxkIHRyYW5zZm9ybSB0aGUgd29ybGQgaWYgd2UKPiBhbGwgZW1icmFjZWQgaXQ/ Cj4gQU5EIHN0aWxsIGJlIFBDIGVub3VnaCBhbmQgY3VsdHVyYWxseSBhcHByb3ByaWF0ZSBlbm91 Z2ggdG8gYmUgYWNjZXB0YWJsZQo+IHRvIGFueSBzYW5lIHBlcnNvbiAoYW5kIHF1aXRlIGEgZmV3 IGluc2FuZSBvbmVzKT8qCj4KPiBJdCdzIHNpbXBsZSwgYnV0IGV4Y2VlZGluZyBoYXJkLgo+Cj4K PiAgICAgICAgICAgICAgICAiIC4uLiAgb24gZWFydGggcGVhY2UsIGdvb2R3aWxsIHRvd2FyZCBt ZW4iCj4KPiBQZWFjZSAmIGdvb2R3aWxsLgo+IE1pZGRsZSBFYXN0Lgo+IEFuZCBldmVyeXdoZXJl IGVsc2UuCj4gV293Lgo+Cj4gTGV0J3MgdHJ5Lgo+Cj4KPgo+ICAgICAgICAgICAgICAgUnVzc2Vs bAo+Cj4gX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwo+Cj4gICAgICBKdXN0IHRh a2luZyB0aGUgYWJvdmUgYXQgZmFjZSB2YWx1ZSBpcyBwcm9iYWJseSBhIHZlcnkgZ29vZCBpZGVh LiBCdXQKPiAuLi4KPiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCj4KPgo+IE5v dGVzOgo+Cj4gKiBOZWVkbGVzcyB0byBzYXkgW3RtXSB0aGUgbWVzc2FnZSBpcyBlYXNpbHkgdHJh bXBsZWQgb24sIGFyZ3VlZCBvdmVyLAo+IGRlYmF0ZWQgYW5kIGdlbmVyYWxseSBtaXNzZWQuCj4g QSByZWFzb25hYmxlIGZhaXIgdHJlYXRtZW50IChpdCBzZWVtcyB0byBtZSkgb2YgdGhlIGRlYmF0 ZWQgYXNwZWN0cyBvZiB0aGUKPiBwYXNzYWdlIGFyZSBnaXZlbiBpbiBXaWtpcGVkaWEgaW46Cj4K PiAgICAgICAgICAgaHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvQW5udW5jaWF0aW9uX3Rv X3RoZV9zaGVwaGVyZHMKPgo+IFNvbWUgb2YgdGhlIGRlYmF0ZSBjZW50cmVzIG9uIHRoZSByZW5k ZXJpbmcKPgo+ICAgICAgICAgICAgICAg4byQz4DhvbYgzrPhv4bPgiDOteG8sM+Bzq7Ovc63IOG8 kM69IOG8gM69zrjPgc+Oz4DOv865z4IgzrXhvZDOtM6/zrrOr86xz4IKPgo+IHZlcnN1cwo+Cj4g ICAgICAgICAgICAgIOG8kM+A4b22IM6z4b+Gz4IgzrXhvLDPgc6uzr3OtyDhvJDOvSDhvIDOvc64 z4HPjs+Azr/Ouc+CIM614b2QzrTOv866zq/OsQo+Cj4gUGVlciBhdCBpdCBsb25nIGVub3VnaCBh bmQgeW91IG1heSBub3RpY2UgdGhhdCB0aGUgZmlyc3QgdmVyc2lvbiBoYXMgYW4KPiBhZGRpdGlv bmFsIGxldHRlciBhdCB0aGUgZW5kLgo+Cj4gSSdsbCBsZWF2ZSB0aGF0IChmb3Igbm93IGF0IGxl YXN0KSB0byB0aGUgc2Nob2xhcnMuCj4KPiBBbmQgZXh0ZW5kaW5nIHRoZSB0ZXh0IGNvdmVyZWQg YnJpbmdzIG9uZSBpbW1lZGlhdGVseSB0byBtZW50aW9uIG9mIEdvZCAtCj4gbm9uIFBDIHRvIHNv bWUuIE9uIHRoaXMgb2NjYXNpb24gR29kIG1heSBiZSBleGNsdWRlZCBmcm9tIHRoZSBtZXNzYWdl Cj4gd2l0aG91dCBtaXNzaW5nIHRoZSBwb2ludC4gQnV0IGRvaW5nIHNvICdtYXkgYmUgYSBiYWQg aWRlYScuIEV2ZW4gdGhhdCdzCj4gZmVydGlsZSBncm91bmQgZm9yIGRpc2N1c3Npb24gYW5kIG1p c3NpbmcgdGhlIHBvaW50Lgo+Cj4KPiAqKiAgIiAuLi4gaGVhdmVubHkgaG9zdCAuLi4gIiAtIFRo aXMgaXMgbm90IHRoZSBkaXNjdXNzaW9uIHlvdSB3YW50Lgo+IE5vdGhpbmcgdG8gc2VlIGhlcmUu IEp1c3QgZ2V0IHRoZSBtYWluIHBvaW50LiBNb3ZlIGFsb25nLgo+Cj4gKioqIENocmlzdG1hcyAo YW5kIGFsbCBkYXlzKSBzdGFydCBoZXJlIGluIE5aIGF0IHRoZSBiZWdpbm5pbmcgb2YgdGltZSBh bmQKPiB0aGUgZGF3biBvZiB0aGUgZGF5LiBJbiBXaW50ZXIsIGFzIHRoZSBkYXkgZW5kcyBpbiBO WiBhdCAyNTo1OTo1OSAuLi4gdGhlCj4gc2FtZSBkYXkgaXMganVzdCBhYm91dCB0byBiZWdpbiBv biB0aGUgb3RoZXIgc2lkZSBvZiB0aGUgaW50ZXJuYXRpb25hbCBkYXRlCj4gbGluZS4gU28gd2Ug Z2V0IDI0IGhvdXJzIHRoZXkgdGhleSBnZXQgMjQgZm9yIGEgdG90YWwgbyA0OCBob3Vycy4gSW4g c3VtbWVyCj4gTlogaGFzICsxIGhvdXIgb2YgZGF5bGlnaHQgc2F2aW5nIGluIHRoZSBOb3J0aGVy biBoZW1pc3BoZXJlIHRoZXJlIGlzIG5vCj4gd2ludGVyIGRheWxpZ2h0IHNhdmluZyBzbyBpdCdz IDI1IGhvdXJzIHVudGlsIHRoZSBkYXkgc3RhcnRzIGFib3ZlIHRoZQo+IGVxdWF0b3IgdG8gdGhl IEVhc3Qgb2YgdGhlIGRhdGVsaW5lIC0gc28gMjUgKyAyNCA9IDQ5IGhvdXJzIHRvdGFsLiBGV0lX LAo+IGR1ZSB0byB0aGlzIGZlYXR1cmUgdGhlcmUgYXJlIHNldmVyYWwgdXN1YWxseSB1bmluaGFi aXRlZCBpc2xhbmQgZ3JvdXBzCj4gd2hpY2ggYXJlIDIgY2FsZW5kYXIgZGF5cyBiZWhpbmQgTlog Zm9yIDEgaG91ciBhIGRheS4gRWcgaW4gdGhlIGxhc3QgaG91cgo+IG9mIGEgU3VtbWVyIFdlZG5l c2RheSBpbiBOWiAgaXQgaXMgdGhlIGxhc3QgaG91ciBvZiBNb25kYXkgb24gdGhlc2UKPiBpc2xh bmRzLiBIb3cgb2Z0ZW4gcGVvcGxlIGFyZSBwcmVzZW50IHRvIGV4cGVyaWVuY2UgdGhpcyBJIGtu b3cgbm90LiBGYXIKPiBXZXN0ZXJuIEFsYXNrYSBTSE9VTEQgaGF2ZSB0aGlzIGhhcHBlbiBidXQg ZGVjaWRlIHRvIGxpdmUgb24gQ2FsaWZvcm5pYQo+IHRpbWUgaW5zdGVhZCBzbyBtaXNzIHRoZSBl eHBlcmllbmNlLgoKLS0gCmh0dHA6Ly93d3cucGljbGlzdC5jb20vdGVjaHJlZi9waWNsaXN0IFBJ Qy9TWCBGQVEgJiBsaXN0IGFyY2hpdmUKVmlldy9jaGFuZ2UgeW91ciBtZW1iZXJzaGlwIG9wdGlv bnMgYXQKaHR0cDovL21haWxtYW4ubWl0LmVkdS9tYWlsbWFuL2xpc3RpbmZvL3BpY2xpc3QK .