PiBDb3VsZCBzb21lYm9keSBwbGVhc2UgZXhwbGFpbiB0aGUgbWVjaGFuaXNtIGJ5IHdoaWNoIHNv bGFyIGFjdGl2aXR5Cj4gZW5kYW5nZXJzL2FmZmVjdHMgdGhlIHBvd2VyIGdyaWQsIGlmIGluIGZh Y3QsIGl0IHJlYWxseSBkb2VzPwoKSXQncyByZWFsCkl0J3Mgbm90IHRvdGFsbHkgIHNpbXBsZS4K RXNzZW50aWFsbHkgaXQgbmVlZHMgYSBsYXJnZSBzb2xhciBjb3JvbmFsIG1hc3MgZWplY3Rpb24g KENNRSkgd2l0aCBhCnN0cm9uZyBtYWduZXRpYyBmaWVsZCBvcHBvc2l0ZSB0byB0aGF0IG9mIHRo ZSBlYXJ0aCB3aGljaCBpbXBhY3RzIHRoZQplYXJ0aCdzIG1hZ25ldGljIGZpZWxkIGF0IGhpZ2gg c3BlZWQKRmxhcmVzIGNhbiBhZGQgdG8gdGhlIGVmZmVjdCBidXQgdGhlIENNRSdzIGFyZSB0aGUg bWFpbiBtaXNjcmVhbnRzLiBBCmJpZyBlbm91Z2ggaW5jaWRlbnQgd2lsbCBpbmR1Y2UgY3VycmVu dHMgaW4gcG93ZXIgZ3JpZHMgbGFyZ2UgZW5vdWdoCnRvICdjYXVzZSBwcm9ibGVtcycuIExhcmdl c3QgcmVjb3JkZWQgd2FzIGluIDE4NTkuCgpGdWxsIHJlY2VudCAoMjAwOCkgIHJlcG9ydCAoMTUw IHBhZ2VzKSBvdmVydmlld2VkIGhlcmUgd2l0aCBsaW5rIHRvCnJlcG9ydCBhdCBib3R0b20gb2Yg cGFnZQpSZXBvcnQgZGVhbHMgbW9yZSB3aXRoIGVmZmVjdHMgYnV0IGdpdmVzIGEgZ29vZCBvdmVy dmlldy4KCk92ZXJ2aWV3CgogIGh0dHA6Ly9zY2llbmNlLm5hc2EuZ292L3NjaWVuY2UtbmV3cy9z Y2llbmNlLWF0LW5hc2EvMjAwOS8yMWphbl9zZXZlcmVzcGFjZXdlYXRoZXIvCgpSZXBvcnQgZG93 bmxvYWQgaGVyZS4KTmVlZHMgZnJlZSByZWdpc3RyYXRpb24KCiAgICAgaHR0cDovL2Jvb2tzLm5h cC5lZHUvY2F0YWxvZy5waHA/cmVjb3JkX2lkPTEyNTA3CgoKCiAgICAgICAgICAgICAgICAgICAg ICAgUnVzc2VsbCBNY01haG9uCgoKX19fX19fX19fX19fX19fX19fX19fX19fXwoKRnJvbSB0aGUg cmVwb3J0OgoKQSBtYWpvciB0dXJuaW5nIHBvaW50IGluIG91ciB1bmRlcnN0YW5kaW5nIG9mIHNw YWNlIHdlYXRoZXIgY2FtZSB3aXRoCnRoZSBkaXNjb3Zlcnkgb2YgY29yb25hbCBtYXNzIGVqZWN0 aW9ucwooQ01FcykgaW4gdGhlIDE5NzBzIGFuZCB3aXRoIHRoZSByZWNvZ25pdGlvbiB0aGF0IHRo ZXNlLCByYXRoZXIgdGhhbgplcnVwdGl2ZSBmbGFyZXMsIGFyZSB0aGUgY2F1c2Ugb2Ygbm9uLXJl Y3VycmVudApnZW9tYWduZXRpYyBzdG9ybXMuMTYgTGFyZ2Utc2NhbGUgZXJ1cHRpb25zIG9mIHBs YXNtYSBhbmQgbWFnbmV0aWMKZmllbGRzIGZyb20gdGhlIFN1buKAmXMgY29yb25hLCBDTUVzIGNv bnRhaW4KYXMgbXVjaCBhcyAxMDE2IGdyYW1zIG9yIG1vcmUgb2YgY29yb25hbCBtYXRlcmlhbCBh bmQgdHJhdmVsIGF0IHNwZWVkcwphcyBoaWdoIGFzIDMwMDAga2lsb21ldGVycy9zZWNvbmQsIHdp dGgKYSBraW5ldGljIGVuZXJneSBvZiB1cCB0byAxMDMyIGVyZ3MuMTcgRXJ1cHRpdmUgZmxhcmVz IGFuZCBDTUVzIG9jY3VyCm1vc3Qgb2Z0ZW4gYXJvdW5kIHNvbGFyIG1heGltdW0gYW5kCnJlc3Vs dCBmcm9tIHRoZSByZWxlYXNlIG9mIGVuZXJneSBzdG9yZWQgaW4gdGhlIFN1buKAmXMgbWFnbmV0 aWMgZmllbGQuCkNNRXMgYW5kIGZsYXJlcyBjYW4gb2NjdXIgaW5kZXBlbmRlbnRseQpvZiBvbmUg YW5vdGhlcjsgaG93ZXZlciwgYm90aCBhcmUgZ2VuZXJhbGx5IG9ic2VydmVkIGF0IHRoZSBzdGFy dCBvZiBhCnNwYWNlIHdlYXRoZXIgZXZlbnQgdGhhdCBsZWFkcyB0byBhIGxhcmdlCm1hZ25ldGlj IHN0b3JtLiBUbyBiZSBtYXhpbWFsbHkgZ2VvZWZmZWN0aXZlLCBpLmUuLCB0byBkcml2ZSBhCm1h Z25ldGljIHN0b3JtLCBhIENNRSBtdXN0ICgxKSBiZSBsYXVuY2hlZApmcm9tIG5lYXIgdGhlIGNl bnRlciBvZiB0aGUgU3VuIG9udG8gYSB0cmFqZWN0b3J5IHRoYXQgd2lsbCBjYXVzZSBpdAp0byBp bXBhY3QgRWFydGjigJlzIG1hZ25ldGljIGZpZWxkOyAoMikgYmUgZmFzdAoo4omlMTAwMCBraWxv bWV0ZXJzL3NlY29uZCkgYW5kIG1hc3NpdmUsIHRodXMgcG9zc2Vzc2luZyBsYXJnZSBraW5ldGlj CmVuZXJneTsgYW5kICgzKSBoYXZlIGEgc3Ryb25nIG1hZ25ldGljIGZpZWxkCndob3NlIG9yaWVu dGF0aW9uIGlzIG9wcG9zaXRlIHRoYXQgb2YgRWFydGjigJlzLjE4ClRoZSBjYXVzZSBvZiB0aGUg bWFnbmV0aWMgc3Rvcm0gdGhhdCBiZWdhbiBvbiBTZXB0ZW1iZXIgMiwgMTg1OSwgd2FzCnRodXMg bm90IHRoZSBoaWdobHkgZW5lcmdldGljIGZsYXJlMTkgdGhhdApDYXJyaW5ndG9uIGFuZCBIb2Rn c29uIGhhZCBvYnNlcnZlZCB0aGUgcHJldmlvdXMgbW9ybmluZy4gSXQgd2FzIGEKZmFzdCBDTUUg bGF1bmNoZWQgZnJvbSBvciBuZWFyIHRoZSBzYW1lCmdpYW50IHN1bnNwb3QgcmVnaW9uIGp1c3Qg bm9ydGh3ZXN0IG9mIHRoZSBTdW7igJlzIGNlbnRlciB0aGF0IGhhZApwcm9kdWNlZCB0aGUgZmxh cmUuIEhhZCB0aGUgU29sYXIgYW5kIEhlbGlvc3BoZXJpYwpPYnNlcnZhdG9yeSAoU09ITykgYmVl biBpbiBvcGVyYXRpb24gaW4gMTg1OSwgaXRzIExhcmdlLUFuZ2xlIGFuZApTcGVjdHJvbWV0cmlj IENvcm9uYWdyYXBoIChMQVNDTykgd291bGQKaGF2ZSBvYnNlcnZlZCB0aGUgQ01FIHNvbWUgMjAg bWludXRlcyBvciBzbyBhZnRlciB0aGUgZmxhcmXigJlzIHBlYWsKZW1pc3Npb24gYXQgMTE6MTUg R01ULiBUaGUgQ01FIHdvdWxkCmhhdmUgYXBwZWFyZWQgYXMgYSBicmlnaHQg4oCcaGFsb+KAnSBv ZiBtYXRlcmlhbCBzdXJyb3VuZGluZyB0aGUgb2NjdWx0ZWQKc29sYXIgZGlzaywgaW5kaWNhdGlu ZyB0aGF0IGl0IHdhcyBoZWFkZWQKZGlyZWN0bHkgdG93YXJkIEVhcnRoIChGaWd1cmUgMS4zKS4g QmV0d2VlbiB0aGUgdGltZSBvZiB0aGUgZmxhcmUvQ01FCmVydXB0aW9uIG9uIFNlcHRlbWJlciAx IGFuZCB0aGUgb25zZXQgb2YKdGhlIG1hZ25ldGljIHN0b3JtIHRoZSBuZXh0IG1vcm5pbmcsIDE3 IGhvdXJzIGFuZCAzNSBtaW51dGVzCmVsYXBzZWQuMjAgRGl2aWRpbmcgdGhlIG1lYW4gZGlzdGFu Y2UgYmV0d2VlbgpFYXJ0aCBhbmQgdGhlIFN1biBieSB0aGUgMTcuNS1ob3VyIHByb3BhZ2F0aW9u IHRpbWUgeWllbGRzIGEgc3BlZWQgb2YKYXBwcm94aW1hdGVseSAyMzAwIGtpbG9tZXRlcnMgcGVy IHNlY29uZCwKbWFraW5nIHRoZSBDTUUgb2YgU2VwdGVtYmVyIDEsIDE4NTksIHRoZSBzZWNvbmQg ZmFzdGVzdCBDTUUgb24gcmVjb3JkLjIxCk1vdmluZyBzdWJzdGFudGlhbGx5IGZhc3RlciB0aGFu IHRoZSBzdXJyb3VuZGluZyBtZWRpdW0sIGZhc3QgQ01FcwpjcmVhdGUgYSBzaG9jayB3YXZlIHRo YXQgYWNjZWxlcmF0ZXMKY29yb25hbCBhbmQgc29sYXIgd2luZCBpb25zIChwcmVkb21pbmFudGx5 IHByb3RvbnMpIGFuZCBlbGVjdHJvbnMgdG8KcmVsYXRpdmlzdGljIGFuZCBuZWFyLXJlbGF0aXZp c3RpYyB2ZWxvY2l0aWVzLgpQYXJ0aWNsZXMgYXJlIGFjY2VsZXJhdGVkIGJ5IHNvbGFyIGZsYXJl cyBhcyB3ZWxsOyBhbmQgbGFyZ2Ugc29sYXIKZW5lcmdldGljIHBhcnRpY2xlIChTRVApIGV2ZW50 cywgYWx0aG91Z2ggZG9taW5hdGVkCmJ5IHNob2NrLWFjY2VsZXJhdGVkIHBhcnRpY2xlcywgZ2Vu ZXJhbGx5IGluY2x1ZGUgZmxhcmUtYWNjZWxlcmF0ZWQKcGFydGljbGVzIChzb21lIG9mIHdoaWNo IG1heSBiZSBmdXJ0aGVyIGFjY2VsZXJhdGVkCmJ5IHRoZSBzaG9jaykuIFRyYXZlbGluZyBuZWFy IHRoZSBzcGVlZCBvZiBsaWdodCwgU0VQcyBiZWdpbiBhcnJpdmluZwphdCBFYXJ0aCB3aXRoaW4g bGVzcyB0aGFuIGhvdXIgb2YgdGhlCkNNRSBsaWZ0LW9mZi9mbGFyZSBlcnVwdGlvbiBhbmQgYXJl IGNoYW5uZWxlZCBhbG9uZyBnZW9tYWduZXRpYyBmaWVsZApsaW5lcyBpbnRvIHRoZSB1cHBlciBh dG1vc3BoZXJlIGFib3ZlIHRoZQpOb3J0aCBhbmQgU291dGggcG9sZXMsIHdoZXJlIHRoZXkgZW5o YW5jZSB0aGUgaW9uaXphdGlvbiBvZiB0aGUgbG93ZXIKaW9ub3NwaGVyZSBvdmVyIHRoZSBlbnRp cmUgcG9sYXIgcmVnaW9uc+KAlApwb2xhciBjYXAgYWJzb3JwdGlvbiAoUENBKSBldmVudHPigJRh bmQgY2FuIGluaXRpYXRlIG96b25lLWRlcGxldGluZwpjaGVtaXN0cnkgaW4gdGhlIG1pZGRsZSBh dG1vc3BoZXJlLjIyIFNFUApldmVudHPigJTigJxzb2xhciByYWRpYXRpb24gc3Rvcm1z4oCdIGlu IE5PQUEgdGVybWlub2xvZ3nigJRjYW4gbGFzdCBzZXZlcmFsIGRheXMuMjMKCmFuZAoKLi4uIGFs bG93cyB0aGUgbWFnbml0dWRlIG9mIGhpc3RvcmljYWzigJRpLmUuLCBwcmUtc3BhY2UtZXJh4oCU U0VQIGV2ZW50cwp0byBiZSBlc3RpbWF0ZWQuMjQgU3VjaCBhbiBhbmFseXNpcyBpbmRpY2F0ZXMK dGhhdCB0aGUgMTg1OSBldmVudCBpcyB0aGUgbGFyZ2VzdCBTRVAgZXZlbnQga25vd24sIHdpdGgg YSB0b3RhbApmbHVlbmNlIG9mIDEuOSDDlyAxMDEwIGNt4oCTMiBmb3IgcHJvdG9ucyB3aXRoIGVu ZXJnaWVzCmdyZWF0ZXIgdGhhbiAzMCBNZVYsIGZvdXIgdGltZXMgdGhhdCBvZiB0aGUgQXVndXN0 IDE5NzIgZXZlbnQuMjUKVGhlIHNob2NrIHJlc3BvbnNpYmxlIGZvciB0aGUgcmFkaWF0aW9uIHN0 b3JtIGhpdCBFYXJ0aOKAmXMKbWFnbmV0b3NwaGVyZTI2IGF0IDA0NTAgR01UIG9uIFNlcHRlbWJl ciAyLiBJdApkcmFtYXRpY2FsbHkgY29tcHJlc3NlZCB0aGUgZ2VvbWFnbmV0aWMgZmllbGQsIHBy b2R1Y2luZyBhIHN0ZWVwCmluY3JlYXNlIGluIHRoZSBtYWduaXR1ZGUgb2YgdGhlIGZpZWxk4oCZ cyBob3Jpem9udGFsCihIKSBjb21wb25lbnQsMjcgd2hpY2ggbWFya2VkIHRoZSBvbnNldCBvZiB0 aGUgZ2VvbWFnbmV0aWMgc3Rvcm0uIFRoZQpjb21wcmVzc2lvbiBvZiB0aGUgZmllbGQgd291bGQK YWxzbyBoYXZlIHRyaWdnZXJlZCBhbiBhbG1vc3QgaW5zdGFudGFuZW91cyBicmlnaHRlbmluZyBv ZiB0aGUgZW50aXJlCmF1cm9yYWwgb3ZhbCAoRmlndXJlIDEuNCkuClRoZSBDTUUgYXJyaXZlZCBz aG9ydGx5IGFmdGVyIHRoZSBwYXNzYWdlIG9mIHRoZSBzaG9jayBhbmQgdHJpZ2dlcmVkCnRoZSBt YWluIHBoYXNlIG9mIHRoZSBzdG9ybSwgdGhlIHNldmVyaXR5Cm9mIHdoaWNoIGNhbiBiZSBpbmZl cnJlZCBmcm9tIGNvbnRlbXBvcmFyeSByZXBvcnRzIG9mIGxvdy1sYXRpdHVkZQphdXJvcmFzIGFu ZCBtYWduZXRvbWV0ZXIgZGF0YSBmcm9tIHRoZSBDb2xhYmEKT2JzZXJ2YXRvcnkgaW4gQm9tYmF5 LCBJbmRpYS4yOCBUaGUgZXF1YXRvcndhcmQgYm91bmRhcnkgb2YgdGhlIGF1cm9yYQptb3ZlcyB0 byBpbmNyZWFzaW5nbHkgbG93ZXIgbGF0aXR1ZGVzCihyZWxhdGl2ZSB0byBpdHMgbm9taW5hbCBs b2NhdGlvbiBhdCA1NcKwLTY1wrAgbWFnbmV0aWMgbGF0aXR1ZGUpIHdpdGgKaW5jcmVhc2luZyBz dG9ybSBpbnRlbnNpdHkuMjkgVGhlIG9ic2VydmF0aW9ucyBvZgp0aGUgYXVyb3JhIGFzIGZhciBz b3V0aCBhcyB0aGUgV2VzdCBJbmRpZXMsIEphbWFpY2EsIEN1YmEsIGFuZCBTYW4KU2FsdmFkb3Ig YXJlIHRodXMgZXZpZGVuY2UgdGhhdCB0aGUgU2VwdGVtYmVyCnN0b3JtIHdhcyBleHRyYW9yZGlu YXJpbHkgaW50ZW5zZS4gQSByb3VnaCBxdWFudGl0YXRpdmUgbWVhc3VyZSBvZiBpdHMKaW50ZW5z aXR5IGlzIHByb3ZpZGVkIGJ5IHRoZSBDb2xhYmEgZGF0YSwKd2hpY2ggc2hvdyBhIHByZWNpcGl0 b3VzIHJlZHVjdGlvbiAoMTYwMCBuVCkgaW4gSCBhdCB0aGUgcGVhayBvZiB0aGUKc3Rvcm3igJlz IG1haW4gcGhhc2UuIENvbnZlcnRlZCB0byAxLWhvdXIKYXZlcmFnZXMsIHRoZXNlIGRhdGEgeWll bGQgYSBwcm94eSBEc3QgaW5kZXggb2YgYXBwcm94aW1hdGVseSDigJM4NTAKblQuMzAgRm9yIGNv bXBhcmlzb24sIHRoZSBsYXJnZXN0IERzdCBpbmRleApyZWNvcmRlZCBzaW5jZSB0aGUgSW50ZXJu YXRpb25hbCBHZW9waHlzaWNhbCBZZWFyICgxOTU3KSBpcyDigJM1NDggblQKZm9yIHRoZSBzdXBl cnN0b3JtIG9mIE1hcmNoIDE0LCAxOTg5LjMxCgotLSAKaHR0cDovL3d3dy5waWNsaXN0LmNvbSBQ SUMvU1ggRkFRICYgbGlzdCBhcmNoaXZlClZpZXcvY2hhbmdlIHlvdXIgbWVtYmVyc2hpcCBvcHRp b25zIGF0Cmh0dHA6Ly9tYWlsbWFuLm1pdC5lZHUvbWFpbG1hbi9saXN0aW5mby9waWNsaXN0Cg== .