TXkgYW5zd2VyIGlzIGZyb20gbXkgZXhwZXJpZW5jZXMgYSBjb3VwbGUvZmV3IHllYXJzIGFnby4u LgoKV2hlbiBJIGRlY2lkZWQgdG8gdXNlIFBJQzMyJ3MsIEkgZGVjaWRlZCB0byBzdG9wIGJlaW5n IHNvIGh1bmcgdXAgb24gCmV4dHJhY3RpbmcgZXZlcnkgbGFzdCBvdW5jZSBvZiBwZXJmb3JtYW5j ZSBmcm9tIHRoZSBjaGlwcyAoYXMgSSBkaWQgd2l0aCAKUElDMTYncyBhbmQgUElDMTgncykgYW5k IHVzZSB0aGUgdG9vbHMgKEhhcm1vbnkpIGFuZCBsaWJyYXJpZXMgYXZhaWxhYmxlIAp0byBtYWtl IHRoaW5ncyBlYXNpZXIgb24gbXlzZWxmLiAgSXQgd2FzIGEgZnJ1c3RyYXRpbmcgcHJvY2VzcyBi ZWNhdXNlIApkb2N1bWVudGF0aW9uIHdhcyBzY2F0dGVyZWQgYW5kIGxvdHMgb2YgdGhlIHNvZnR3 YXJlIHdhcyBpbiBsaW1iby4gIFRoZSAKaGVscCB3aXRoaW4gdGhlIHRvb2wgd2FzIHRlbGxpbmcg bWUgdG8gdXNlIG9uZSBvZiB0aGUgbGlicmFyaWVzIChQTElCIG9yIApIQUwpLCB3aGlsZSB0aGUg cGRmIGhlbHAgZG9jIHdpdGhpbiB0aGUgZm9sZGVyIG9mIHRoZSBzYW1lIGluc3RhbGxhdGlvbiAK d2FzIHRlbGxpbmcgbWUgdG8gdXNlIHRoZSBvdGhlci4gTG90cyBvZiBjb2RlIGp1c3QgZGlkbid0 IHdvcmsgYXMgCmV4cGVjdGVkIGFuZCBJIHNhdCBkb3duIGZvciBjb2ZmZWUgd2l0aCBteSBsb2Nh bCBGQUUgYW5kIHByb3ZlZCBpdCB0byAKaGltLiAgSSBoYWQgYWxzbyBqdXN0IHN0YXJ0ZWQgdXNp bmcgTVBMQUIgWCBhbmQgdGhhdCBhZGRlZCB0byB0aGUgcGFpbiwgCmFzIEkgd2FzIG9uIGEgMTQ0 MC1saW5lIHJlc29sdXRpb24gbGFwdG9wIGFuZCB0aGUgZm9udHMgZGlkIG5vdCBzY2FsZSAKcHJv cGVybHkuICBBcHBhcmVudGx5IHRoZXkgd2VyZSBoYXJkY29kZWQgaW4gc29tZSBwYXJ0cyBvZiB0 aGUgSURFIGFuZCAKc2NhbGFibGUgaW4gb3RoZXIgcGFydHMuICBTb21lIHRvb2xzIChzdWNoIGFz IHRoZSBncmFwaGljcyBnZW5lcmF0b3IpIApqdXN0IGZsYXQgb3V0IGRpZCBub3Qgd29yay4gIEFs c28gdmVyaWZpZWQgYnkgbXkgRkFFLiAgVXBkYXRlcyB3ZXJlIApoYXBwZW5pbmcgcmFwaWRseSBh bmQgdGhlIGNoYW5nZXMgd2VyZSBzaWduaWZpY2FudC4gIEFyb3VuZCB0aGlzIHRpbWUsIAp0aGVy ZSB3YXMgYSBjaGlwIGZhbWlseSBjYWxsZWQgdGhlIFBJQzMyTVouLkVDLCB3aGljaCB3YXMgYXBw YXJlbnRseSAKVkVSWSBidWdneS4gIEV2ZW4gbXkgRkFFIHRvbGQgbWUgdG8gYXZvaWQgaXQuCgpN eSBpbXByZXNzaW9uIHdhcyBNaWNyb2NoaXAgd2FzIHNjcmFtYmxpbmcgdG8gZ2V0IGEgcHJvZHVj dCAoSGFybW9ueSkgCm91dCB0aGVyZSB0byBjb21wZXRlIHdpdGggb3RoZXJzIGFuZCB3YXMgdGhy b3dpbmcgb3V0IHZlcnkgdW5maW5pc2hlZCAKY29kZSwgd2hpbGUgYWxzbyBjaGFuZ2luZyBkaXJl Y3Rpb25zIGR1cmluZyB0aGF0IHRpbWUsIHNvIEkgd2FzIHBsYXlpbmcgCmFscGhhLXRlc3Rlci4g IEFuZCBpdCBtYWRlIG5vIHNlbnNlIHRvIHN0YXJ0IGxlYXJuaW5nIGFuIG9sZGVyIApjb2RlL2xp YnJhcnkgc3lzdGVtIChQTElCKSBhcyBpdCB3b3VsZCBub3QgYmUgc3VwcG9ydGVkIGFueW1vcmUu CgpOb3cgcHJpb3IgdG8gdGhpcywgSSB1c2VkIHRoZSBDaGlwa2l0IGJvYXJkcyBmb3IgUElDMzIg Y29kZSwgYW5kIHRoaW5ncyAKd2VyZSBzaW1wbGVyIGFuZCB3b3JrZWQgd2VsbCwgdGhvdWdoIGEg Yml0IGxpbWl0aW5nLCAgU28gSSBjb250aW51ZWQgdG8gCnVzZWQgdGhlIFBJQzMyIGluIHRoYXQg cGxhdGZvcm0gZm9yIG90aGVyIHRoaW5ncy4KCkFyb3VuZCB0aGF0IHRpbWUgSSBnb3QgYSBjdXN0 b21lciBnaWcgdG8gZGV2ZWxvcCBhIHByb2R1Y3QgdXNpbmcgYW4gQVJNIApwcm9jZXNzb3IgKHRo ZXkgd2FudGVkIEFSTSBiZWNhdXNlIG9mIHRoZSBidXp6d29yZCkgYW5kIGFsc28gc3RhcnRlZCAK cGxheWluZyB3aXRoIFNUTTMyJ3MsIHdoaWNoIHdhcyBhIG11Y2ggYmV0dGVyIGV4cGVyaWVuY2Uu IEl0IHdhcyBzbyBtdWNoIAptb3JlIG1hdHVyZS4gIFNpbmNlIHRoZW4gSSd2ZSBzdHVjayB3aXRo IFNUTTMyIHByb2Nlc3NvcnMuCgpJIGhhdmVuJ3QgdG91Y2hlZCBQSUMzMidzIGZvciBvdmVyIGEg eWVhciBvciB0d28gbm93IHNvIGNhbid0IHByb3ZpZGUgYSAKcmVjZW50IGV4cGVyaWVuY2UsIGJ1 dCBJIHdvdWxkIGV4cGVjdC9ob3BlIHRoZXkgaGF2ZSB0aGVpciBhY3QgdG9nZXRoZXIgCmEgYml0 IG1vcmUgYnkgbm93LiAgSXNhYWMgKG9uIGhlcmUpIGlzIGEgYmlnIFBJQzMyIGZhbiBzbyBjaGVj ayB3aXRoIGhpbSAKZm9yIGEgZGlmZmVyZW50IHBlcnNwZWN0aXZlLgoKQ2hlZXJzLAotTmVpbC4K CgoKCk9uIDExLzEwLzIwMTkgOToyNSBQTSwgSm9zaCBLb2ZmbWFuIHdyb3RlOgo+IEhpIGFsbCwK Pgo+IEnigJltIGNvbnNpZGVyaW5nIHN0YXJ0aW5nIG15IGZpcnN0IHByb2plY3QgdGFyZ2V0aW5n IHRoZSBQSUMzMiBzZXJpZXMuIEnigJl2ZQo+IGxvbmcgYmVlbiB1c2luZyB0aGUgOCBiaXQgY2hp cHMsIGFuZCBJ4oCZZCBsaWtlIHRvIHRyeSB0aGUgMzIgYml0IG9uZXMuIFRoZQo+IG1haW4gcmVh c29uIGlzIHRoYXQgSeKAmW0gY29ubmVjdGluZyB0byBhIG1vZHVsZSB0aGF0IHRoZSBtYW51ZmFj dHVyZXIKPiBwcm92aWRlcyBleGFtcGxlIFBJQzMyIGNvZGUgZm9yLiBQbHVzIEnigJltIGhvcGlu ZyBJIGNhbiBnZXQgc29tZSBmYXN0ZXIgUFdNCj4gcGVyaXBoZXJhbCBzcGVlZHMgZHVlIHRvIGZh c3RlciBjbG9jayAoaGF2ZSB0byBjaGVjayB0aGlzIHRob3VnaCkuIEFsc28KPiBmZWVscyBsaWtl IGl0IG1pZ2h0IG5vdCBiZSBhIGJhZCBpZGVhIHRvIG1vdmUgdG8gYSBwcm9jZXNzb3IgYSBiaXQg bW9yZQo+IG9wdGltaXplZCBmb3IgQyBwcm9ncmFtbWluZy4KPgo+IE15IGN1cnJlbnQgcGxhbiBp cyB0byBwcm9ncmFtIGluIFhDMzIuIEnigJltIGxvb2tpbmcgYXQgdGhlIFBJQzMyTVgyNzAKPiBm YW1pbHksIGJ1dCBJIGFtIG9wZW4gdG8gc3VnZ2VzdGlvbnMgaWYgdGhlcmUgYXJlIG5ld2VyL2Jl dHRlciBjaG9pY2VzCj4gKHBhcnRpY3VsYXJseSBpZiB0aGV5IGhhdmUgbmV3ZXIgUFdNIHBlcmlw aGVyYWxzKS4KPgo+IE15IHJlcXVpcmVtZW50cyBvbiB0aGlzIGZpcnN0IHByb2plY3QgYXJlIGZh aXJseSBzaW1wbGUgLSBoYW5kbGUgc29tZSBzZXR1cAo+IG9mIHRoZSBtb2R1bGUsIHB1bGwgZGF0 YSB2aWEgSTJDLCBhbmQgZG8gc29tZSBQV00uIEZ1dHVyZSBwcm9qZWN0cyB3aWxsIGdldAo+IG1v cmUgY29tcGxleC4KPgo+IFNvIG9uIHRvIHRoZSBxdWVzdGlvbnM6Cj4KPiBXaGF0IGRldiB0b29s cyBhcmUgcGVvcGxlIGN1cnJlbnRseSB1c2luZz8gSeKAmXZlIGJlZW4gbG9va2luZyBhdCB0aGUg U2VnZ2VyCj4gSi1MaW5rIGRldmljZXMuIEkgYmVsaWV2ZSB0aGV5IGludGVncmF0ZSBpbnRvIE1Q TEFCLCB0aG91Z2ggSSBuZWVkIHRvCj4gdmVyaWZ5IHRoYXQuIEkgaGF2ZSBuZXZlciB1c2VkIEpU QUcgYmVmb3JlLCBidXQgZnJvbSB0aGUgYnJpZWYgYml0cyBJ4oCZdmUKPiByZWFkIEkgYmVsaWV2 ZSBpdCB3b3VsZCBiZSBmYXN0ZXIgdGhhbiBJQ1NQIG9uIHRoZXNlIGNoaXBzLiBXb3VsZCBJIGFs c28KPiBuZWVkIHNvbWV0aGluZyBsaWtlIGEgUElDa2l0IG9yIElDRCB0byBwcm9ncmFtIGZvciBz dGFuZGFsb25lIHJ1bm5pbmc/Cj4KPiBBbnkgZ2VuZXJhbCBhZHZpY2Ugb24gWEMzMiBvciB0aGUg Y2hpcHMgaW4gZ2VuZXJhbD8gSSBrbm93IEkgbmVlZCB0byBjaGVjawo+IGVycmF0YSBjYXJlZnVs bHkuIEFueXRoaW5nIGVsc2U/IFdoYXQgdG9vbGNoYWlucyBhcmUgb3RoZXIgcGVvcGxlIHVzaW5n Pwo+Cj4gVGhhbmsgeW91IQo+Cj4gSm9zaAoKLS0gCmh0dHA6Ly93d3cucGljbGlzdC5jb20vdGVj aHJlZi9waWNsaXN0IFBJQy9TWCBGQVEgJiBsaXN0IGFyY2hpdmUKVmlldy9jaGFuZ2UgeW91ciBt ZW1iZXJzaGlwIG9wdGlvbnMgYXQKaHR0cDovL21haWxtYW4ubWl0LmVkdS9tYWlsbWFuL2xpc3Rp bmZvL3BpY2xpc3QK .