SmVhbi1QYXVsLCBoZXJlIGlzIG15IChob3BlZnVsbHkgY29uc3RydWN0aXZlKSByYW50IGluIHJl c3BvbnNlIHRvIHlvdXJzLgoKT24gU3VuLCBTZXAgNywgMjAxNCBhdCA5OjA4IFBNLCBKZWFuLVBh dWwgTG91aXMgPGxvdWlqcEB5YWhvby5jb20+IHdyb3RlOgo+IEphc29uLAo+Cj4gWW91IGFyZSBz aG93aW5nIHdoeSBvcGVuIHNvdXJjZSBoYXMgYSBoYXJkIHRpbWUgdG8gc3Vydml2ZS4gWW91IGNy aXRpY2l6ZSBbS2lDYWRdIHdpdGhvdXQga25vd2luZyBbS2lDYWRdLgoKSSdtIGFmcmFpZCB5b3Ug aGF2ZSBtaXNpbnRlcnByZXRlZCBtZS4gUGxlYXNlIGRvIG5vdCBjYWxsIG1lIG5hbWVzIGFzCml0 IGlzIG5vdCB2ZXJ5IG5pY2UuIFdoYXQgSSBzYWlkIGlzIHRoYXQgS2lDYWQgbGlrZSBnRURBIHBy b2JhYmx5CnN1cHBvcnRzIGEgdmlydHVhbGx5IHVubGltaXRlZCBudW1iZXIgb2YgbGF5ZXJzLCB0 aGF0IGNhbid0IGJlIHNhaWQKZm9yIGV2ZXJ5IHByb3BpdGlhdG9yeSBsYXlvdXQgc3VpdGUuIEFs dGhvdWdoIHlvdSB3b3VsZCBsaWtlIHRvIHNlZSBtZQphcyBzb21lIHNvcnQgb2YgdmFuZGFsLCBv dXQgbG9vdGluZyB0aGUgcmVwdXRhdGlvbiBvZiB5b3VyIGZhdm9yaXRlCnByb2plY3QsIHRoYXQg Y291bGRuJ3QgYmUgZmF0aGVyIGZyb20gdGhlIHRydXRoLiBJIGFtIGFuIGF2aWQKc3VwcG9ydGVy IG9mIG9wZW4gc291cmNlIHNvZnR3YXJlIGFuZCB1c2UgaXQgd2hlcmV2ZXIgaXQgaXMgd2FycmFu dGVkCih3aGljaCBpcyBwcmFjdGljYWxseSBldmVyeXdoZXJlKS4KCk15IG9ubHkgY29tcGxhaW50 IGFib3V0IEtpQ2FkLCB3aGljaCBoYXMgYmVlbiB0aGUgc2FtZSBlYWNoIHRpbWUgSQpoYXZlIGNv bXBpbGVkIGl0IHNpbmNlIEkgZmlyc3QgdHJpZWQgaXQgeWVhcnMgYWdvLCBpcyB0aGF0IEkgbGlr ZSBtYW55Cm90aGVycyBmaW5kIHRoZSBVSSBjb3VudGVyLWludHVpdGl2ZS4gU3BvbnNvcnNoaXBz IGFuZCBjYXBhYmlsaXRpZXMKYXJlIGlycmVsZXZhbnQgdG8gbWUsIGlmIEkgZmluZCB0aGUgc29m dHdhcmUgdG9vIGRpZmZpY3VsdCB0byB1c2UgdGhlbgpJIHdpbGwgc2VlayBhIGJldHRlciBzdWl0 ZWQgcmVwbGFjZW1lbnQuIEFsdGhvdWdoIHlvdSBzZWVtIHRvIGhhdmUKZGlmZmljdWx0bHkgdW5k ZXJzdGFuZGluZyBpdCwgd2h5IEkgcHJvbW90ZSBnRURBIGluc3RlYWQgb2YgeW91cgpmYXZvcml0 ZSBwYWNrYWdlIGlzIGJlY2F1c2UsIGZvciBtZSwgZ0VEQSBoYXMgc3VjY2VlZGVkIGluIGJlaW5n CmludHVpdGl2ZSBhbmQgcHJvZHVjdGl2ZSBmb3IgbXkgcHVycG9zZXMuIFRoZSBpcyBub3RoaW5n IGluaGVyZW50bHkKd3Jvbmcgd2l0aCB0aGF0LgoKT24gYSBzaWRlIG5vdGU6CkhvdyBpcyBvcGVu IHNvdXJjZSBkeWluZz8gV2hpbGUgc29tZSBwcm9qZWN0cyBkaWUsIG9mdGVuIHJpZ2h0bHkgc28s IEkKY2FuIGFzc3VyZSB5b3UgdGhlIHNvdXJjZSBlY29zeXN0ZW0gZG9lcyBub3QgYW5kIHdpbGwg bm90LgoKU3Vydml2YWwgZm9yIG9wZW4gc291cmNlIHByb2plY3RzIGlzIGJhc2VkIHVwb24gdXRp bGl0eSwgaWYgaXQgaXMgbm90CnVzZWZ1bCBlbm91Z2ggdG8gaGl0ICJjcml0aWNhbCB2ZWxvY2l0 eSIgdGhlbiBpdCB3aWxsIGZhZGUuIFdoZW4KcHJvamVjdCBmYWRlcyB0aGVuIGl0cyB1c2VyIGJh c2Ugd2lsbCBnbyB0byBvdGhlciBjb21wZXRpbmcgcHJvamVjdHMKYW5kIGNvbnRyaWJ1dGUgdGhl aXIgdGltZSB0byB0aGVtIGluc3RlYWQuIElmIHRoZXJlIGlzIG5vIGNvbXBldGluZwpwcm9qZWN0 ICgiYSB2YWN1dW0iKSBpbiBhIHBhcnRpY3VsYXIgbmljaGUsIHRoZW4gc29tZW9uZSB3aWxsIGFs bW9zdApjZXJ0YWlubHkgd3JpdGUgc29tZXRoaW5nIHRvIHJlcGxhY2UgaXQuIFRoZSBzeXN0ZW0g b2Ygb3BlbiBzb3VyY2UKc29mdHdhcmUgaXMgcm9idXN0LCBub3QgZnJhZ2lsZSwgYW5kIGRyYXdz IG1hbnkgcGFyYWxsZWxzIHRvIHN5c3RlbXMKYXQgcGxheSBpbiBiaW9sb2d5IChldm9sdXRpb24s IGFuZCBuYXR1cmFsIHNlbGVjdGlvbiksIG9yIGV2ZW4KZWNvbm9taWNzIChjYXBpdGFsaXNtKS4g RGVhdGggb2Ygb25lIHByb2plY3QgZnJlZXMgdGhlIHJlc291cmNlcyBvZiBhCnBhcnRpY3VsYXIg bmljaGUgdG8gYmUgY29udHJpYnV0ZWQgdG8gbmV3LCBpbm5vdmF0aXZlIHByb2plY3RzLApicmlu Z2luZyBhIGJyZWF0aCBvZiBmcmVzaCBhaXIgaW50byBhbiBvdGhlcndpc2Ugc3RhZ25hbnQgZW52 aXJvbm1lbnQuCgpFdmVuIGluIHRoZSBldmVudCBvZiBhIHByb2plY3QncyBkZWF0aCwgdGhlIHVz ZXJzIGFuZCB0aGUgbmVlZCBmb3IgdGhlCm9wZW4gc291cmNlIHNvZnR3YXJlIGlzIHN0aWxsIHRo ZXJlLiBUaGUgcGVvcGxlIGFyZSB0aGUgZXNzZW5jZSBvZgpvcGVuIHNvdXJjZSwgbm90IHRoZSB0 YW5nbGVkIGx1bXBzIG9mIGNvZGUgdGhleSBwcm9kdWNlLiBXaGVuIChub3QgaWYpCnNvZnR3YXJl IHByb2plY3RzIGJlY29tZSBibG9hdGVkLCBpdCBpcyBvZnRlbiBlYXNpZXIgdG8gcmV3cml0ZSB0 aGFuCnJlZmFjdG9yLiBTbywgZm9sbG93aW5nIHRoZSBwYXRoIG9mIGxlYXN0IHJlc2lzdGFuY2Ug KGF0IGxlYXN0IGZvciBhCmRldmVsb3BlcikgaXQgaXMgb25seSBuYXR1cmFsIHRoYXQgYSBjb21w ZXRpbmcgcHJvamVjdCBpcyBib3JuLiBUaGlzCmZyZWVkb20gdG8gY3JlYXRlIGFuZCBjb21wZXRl IGlzIHRoZSBkcml2aW5nIGZvcmNlIGJlaGluZCB0aGUgb3Blbgpzb3VyY2UgZWNvc3lzdGVtLiBB cyBsb25nIGFzIHRoZXJlIGFyZSBwZW9wbGUgd2hvIGdldCBzb21lIGJlbmVmaXQKZnJvbSB0aGUg ZnJlZSwgaGlnaCBxdWFsaXR5IHNvZnR3YXJlIHByb2R1Y2VkIGJ5IG9wZW4gc291cmNlLCB0aGVu IHRoZQplY29zeXN0ZW0gd2lsbCBjb250aW51ZSB0byBzdXN0YWluIGl0c2VsZi4gTm8gY29tcGFu eSBub3IgaW5kaXZpZHVhbApjb3VsZCBjaGFuZ2UgdGhhdCBldmVuIGlmIHRoZXkgd2FudGVkIHRv LgoKCgo+IEF0IGxlYXN0IHlvdSByZWNvZ25pemUgdGhhdCB5b3UgZG9u4oCZdCBrbm93LCBidXQg dGhlIGRhbWFnZSBpcyBkb25lIGFueXdheS4gSSBhbHJlYWR5IG1lbnRpb25lZCB0aGF0IGtpY2Fk IGhhZCBkcmFzdGljYWxseSBpbXByb3ZlZCBpbiB0aGUgbGFzdCBjb3VwbGUgb2YgeWVhcnMuIEl0 IGNhbiBoYW5kbGUgbm93IDE2IGNvcHBlciBsYXllcnMsIGFuZCBibGluZCBiaWFzLgo+IEkgZG8g bm90IHVuZGVyc3RhbmQgd2h5IHBlb3BsZSBwb28tcG9vIG92ZXIgb3BlbiBzb3VyY2Ugc29mdHdh cmUsIHdpdGhvdXQgZXZlbiB0cnlpbmcgaXQuIFZlcnkgb2Z0ZW4sIGl0IGlzIGFzIGdvb2Qgb3Ig YmV0dGVyIGFzIGNsb3NlZCBzb3VyY2UgY29tbWVyY2lhbCBzb2Z0d2FyZSwgYnV0IGxhY2sgdGhl IHBhaWQgc3VwcG9ydCB0aGF0IGNvbW1lcmNpYWwgc29mdHdhcmUgdXNlIHRvIG1ha2UgbW9yZSBt b25leS4gQnV0IHRoZSBkZXZlbG9wZXJzIGtlZXAgaW1wcm92aW5nIGl0LCBhbmQgQUZBSUssIEkg d2lsbCBuZXZlciB1c2UgY2xvc2VkIHNvZnR3YXJlIGFnYWluLCBidXQgd2lsbCBzdXBwb3J0IGEg cHJvZHVjdCBsaWtlIGtpY2FkIHRvIHRoZSBleHRlbnQgb2YgbXkgcG9zc2liaWxpdGllcy4KPgo+ IEplYW4tUGF1bAo+IEFDOUdICj4KPgo+Cj4gT24gU2VwIDcsIDIwMTQsIGF0IDQ6MzIgUE0sIEph c29uIFdoaXRlIDx3aGl0ZXdhdGVyc3NvZnR3YXJlaW5mb0BnbWFpbC5jb20+IHdyb3RlOgo+Cj4+ IE9uIFN1biwgU2VwIDcsIDIwMTQgYXQgMToxOSBQTSwgIDxhbGFuLmIucGVhcmNlQHN0ZmMuYWMu dWs+IHdyb3RlOgo+Pj4gSSBzdXNwZWN0IHRoYXQgeW91IHdpbGwgZmluZCBmcmVlL2xvdyBwcmlj ZWQvaG9iYnkgcGFja2FnZXMgaGF2ZSBsYXllcgo+Pj4gbGltaXRhdGlvbnMgYmVjYXVzZSB0aGUg dW5kZXJseWluZyBjb2RlIHRvIGtlZXAgdHJhY2sgb2YgZXZlcnl0aGluZyBvbgo+Pj4gZWFjaCBs YXllciBiZWNvbWVzIGEgYmlnIG1lc3MgaWYgbm90IHdlbGwgZGVzaWduZWQuIE9uY2UgdG8gZ2V0 IHRvCj4+PiAnc2VyaW91cycgcGFja2FnZXMgdGhhdCBjb3N0IHNpZ25pZmljYW50IG1vbmV5IHlv dSBjYW4gZG8gYW55dGhpbmcgd2l0aAo+Pj4gdGhlbSBmcm9tIGxheWluZyBvdXQgc2lsaWNvbiBm b3IgSUNzIHRvIG11bHRpbGF5ZXIgUENCcyB3aGVyZQo+Pj4gbWFudWZhY3R1cmluZyB0ZWNobm9s b2d5IG9mIHRoZSBib2FyZHMgc2V0cyB0aGUgbWF4aW11bSBsYXllciBsaW1pdHMuCj4+Cj4+IFdo aWxlIEkgYWdyZWUgY29tbWVyY2lhbCBzb2Z0d2FyZSBpcyBtdWNoIGJldHRlciBzdWl0ZWQgZm9y IGRvaW5nIDEyIGxheWVycywKPj4gSSBrbm93IGZvciBhIGZhY3QgdGhlIGdFREEgc3VwcG9ydHMg YW4gdW5saW1pdGVkIG51bWJlciBvZiByb3V0aW5nIGxheWVycy4KPj4gSXQgaXMgY29udHJvbGxl ZCBieSBhIGNvbXBpbGUgdGltZSB2YXJpYWJsZSB0aGF0IGlzIHNldCB0byA4IGJ5IGRlZmF1bHQu Cj4+IFVuZm9ydHVuYXRlbHksIGl0IGRvZXMgbm90IHN1cHBvcnQgYmxpbmQgdmlhcywgd2hpY2gg SSBoYXZlIHRvIGltYWdpbmUgaXMKPj4gYSBzaG93IHN0b3BwZXIgb24gaGlnaCBsYXllciBjb3Vu dCBib2FyZHMuCj4+Cj4+IEkgZG9uJ3Qga25vdyBob3cgaXQgaXMgZm9yIEtpQ2FkLCBidXQgSSBo YXZlIHRvIGltYWdpbmUgdGhhdCBpdCBpcyBhIHNpbWlsYXIKPj4gc3RvcnkuCj4+Cj4+IC0tCj4+ IEphc29uIFdoaXRlCj4+IC0tCj4+IGh0dHA6Ly93d3cucGljbGlzdC5jb20vdGVjaHJlZi9waWNs aXN0IFBJQy9TWCBGQVEgJiBsaXN0IGFyY2hpdmUKPj4gVmlldy9jaGFuZ2UgeW91ciBtZW1iZXJz aGlwCj4KPgo+IC0tCj4gaHR0cDovL3d3dy5waWNsaXN0LmNvbS90ZWNocmVmL3BpY2xpc3QgUElD L1NYIEZBUSAmIGxpc3QgYXJjaGl2ZQo+IFZpZXcvY2hhbmdlIHlvdXIgbWVtYmVyc2hpcCBvcHRp b25zIGF0Cj4gaHR0cDovL21haWxtYW4ubWl0LmVkdS9tYWlsbWFuL2xpc3RpbmZvL3BpY2xpc3QK CgoKLS0gCkphc29uIFdoaXRlCgotLSAKaHR0cDovL3d3dy5waWNsaXN0LmNvbS90ZWNocmVmL3Bp Y2xpc3QgUElDL1NYIEZBUSAmIGxpc3QgYXJjaGl2ZQpWaWV3L2NoYW5nZSB5b3VyIG1lbWJlcnNo aXAgb3B0aW9ucyBhdApodHRwOi8vbWFpbG1hbi5taXQuZWR1L21haWxtYW4vbGlzdGluZm8vcGlj bGlzdAo= .