Fwd: At last, GCHQ reveals the secret wartime history of homes, farms and sheds
"Postranecky, Martin" <m.postranecky-pJrKddK8Xz/[email protected]> Wed, 6 Nov 2019 01:07:29 +0000
| Newsgroups | gmane.science.cryptography.bletchley-park |
|---|---|
| Message-ID | <[email protected]> |
DQpGcmlkYXkgTm92ZW1iZXIgMDEgMjAxOQ0KDQpBdCBsYXN0LA0KR0NIUSByZXZlYWxzIHRoZSBz ZWNyZXQgd2FydGltZSBoaXN0b3J5IG9mIGhvbWVzLCBmYXJtcyBhbmQgc2hlZHMNCi0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t DQoNCkx1Y3kgRmlzaGVyLCBEZWZlbmNlIENvcnJlc3BvbmRlbnQNCg0KLSAgVGhlIHJvbGVzIG9m IEFiYm90cyBDbGlmZiBIb3VzZSBhbmQgdGhlIGludGVsbGlnZW5jZSB0ZWFtDQogICAgaGVhZGVk IGJ5IFBhbWVsYSBQaWdlb24sIGluc2V0LCBhcmUgYmVpbmcgZmluYWxseSByZWNvZ25pc2VkDQoN ClRoZSBjbHVzdGVyIG9mIHdvb2RlbiBodXRzIGluIGEgZmllbGQgbmVhciBTY2FyYm9yb3VnaCBs b29rZWQgbW9yZSBsaWtlIA0KYSBjcmlja2V0IHZpbGxhZ2UgY2x1YmhvdXNlIHRoYW4gYSB0b3Ag c2VjcmV0IHNpZ25hbHMgaW50ZWxsaWdlbmNlIGJhc2UuDQoNCkdDSFEgaGFzIHJldmVhbGVkLCBo b3dldmVyLCB0aGF0IHNwaWVzIGJhc2VkIHRoZXJlIGR1cmluZyB0aGUgU2Vjb25kIA0KV29ybGQg V2FyIHBsYXllZCBhIGNydWNpYWwgcGFydCBpbiBzaW5raW5nIHRoZSBCaXNtYXJjay4gQ3JvZnQg U3BhIGlzIA0Kb25lIG9mIGZpdmUgbG9jYXRpb25zIGJlaW5nIHB1YmxpY2lzZWQgdG9kYXkgYnkg dGhlIGdvdmVybm1lbnTigJlzIA0KY29tbXVuaWNhdGlvbnMgSFEsIHdoaWNoIGlzIG1hcmtpbmcg aXRzIGNlbnRlbmFyeS4NCg0KVGhlIGJ1aWxkaW5ncyB0b2dldGhlciBmb3JtZWQgb25lIG9mIGEg c2VyaWVzIG9mIOKAnGRpcmVjdGlvbiBmaW5kaW5nIA0Kc3RhdGlvbnPigJ0gZG90dGVkIGFsb25n IHRoZSBjb2FzdCBmcm9tIG5vcnRoZWFzdCBTY290bGFuZCB0byB0aGUgVGhhbWVzIA0KZXN0dWFy eSB0aGF0IHBpbnBvaW50ZWQgdGhlIGxvY2F0aW9ucyBvZiBlbmVteSB2ZXNzZWxzIGluIHRoZSBO b3J0aCBTZWEuDQoNCkluIDE5NDEsIGludGVsbGlnZW5jZSB3b3JrZXJzIGluIHRoZSBodXRzIHBp Y2tlZCB1cCBhIHN0cmF5IHRyYW5zbWlzc2lvbiANCmZyb20gQmlzbWFyY2ssIGhlbHBpbmcgdGhl IFJveWFsIE5hdnkgdG8gbGF1bmNoIHRoZSBmYXRhbCBhdHRhY2suIFR3ZW50eSANCnNwaWVzIHdv cmtlZC4uLi4NCg0KdGhlcmUgaW4gdGhlIHdhciBhbmQgdGhlIGJhc2UgcmVtYWluZWQgb3BlcmF0 aW9uYWwgdW50aWwgMTk3NSwgYWx0aG91Z2ggDQppbiBsYXRlciB5ZWFycyB0aGUgc3RhZmYgaGFk IHRvIHN0cmFpbiB0byBoZWFyIHRoZSBzaWduYWxzIG92ZXIgdGhlIA0Kbm9pc2Ugb2YgZmFybSBt YWNoaW5lcnkgb3V0c2lkZS4gQWdlbnRzIGhhZCB0byBiZWcgZmFybWVycyB0byBoYWx0IHRoZWly IA0Kd29yayB3aXRob3V0IGJlaW5nIGFibGUgdG8gZXhwbGFpbiB3aHkuDQoNCkFub3RoZXIgbG9j YXRpb24gdG8gYmUgcmV2ZWFsZWQgYnkgdGhlIGludGVsbGlnZW5jZSBhZ2VuY3kgdG9kYXkgaXMg DQpBYmJvdHMgQ2xpZmYgSG91c2UsIENhcGVsIGxlIEZlcm5lLCBLZW50LCB0aGUgbmVhcmVzdCBo b3VzZSB0byBGcmFuY2UgaW4gDQpFbmdsYW5kLg0KDQpJdCB3YXMgdGhlcmUgdGhhdCA2MCB5b3Vu ZyBmZW1hbGUgR2VybWFuLXNwZWFraW5nIGxpbmd1aXN0cyB3ZXJlIA0Kc3RhdGlvbmVkIGJldHdl ZW4gMTk0MCB1bnRpbCB0aGUgZW5kIG9mIHRoZSB3YXIsIGNvbGxlY3RpbmcgVkhGIHZvaWNlIA0K bWVzc2FnZXMgZnJvbSBHZXJtYW4gZm9yY2VzIHRoYXQgcmV2ZWFsZWQgdGhlIHJvdXRlIG9mIGVu ZW15IGFpcmNyYWZ0IA0KYW5kIGZhc3QgYXR0YWNrIGNyYWZ0LCBFLWJvYXRzLCBpbiB0aGUgQ2hh bm5lbC4gVGhlIGhvdXNlLCBwZXJjaGVkIGF0b3AgDQpvbmUgb2YgRG92ZXLigJlzIHdoaXRlIGNs aWZmcywgd2FzIGFuIGV4cG9zZWQgdGFyZ2V0IGFuZCBmcmVxdWVudGx5IA0Kc3RyYWZlZCBieSB0 aGUgTHVmdHdhZmZlLg0KDQotICBUaGUgc2hlZHMgYXQgQ3JvZnQgU3BhDQoNClRvbnkgQ29tZXIs IEdDSFHigJlzIGhpc3Rvcmlhbiwgc2FpZCA6IOKAnE91ciBzaWdodHMgY292ZXJlZCB0aGUgbGVu Z3RoIGFuZCANCmJyZWFkdGggb2YgdGhlIEJyaXRpc2ggSXNsZXMgYW5kIGVhY2ggb25lIG9mIHRo ZW0gaGFkIGl0cyBvd24gc3RvcnkgdG8gDQp0ZWxsLCBidXQgcGFydCBvZiB0aGF0IHN0b3J5LCB3 aGljaCBpcyByZWZsZWN0ZWQgdG9kYXksIGlzIHRoYXQgdGhlc2UgDQphcmUgc3RvcmllcyBhYm91 dCBvcmRpbmFyeSBwZW9wbGUu4oCdDQoNCldvbWVuIHdlcmUgYWxzbyBkcmFmdGVkIGluIHRvIHdv cmsgZm9yIEdDSFEgYXQgYSByYW5nZSBvZiBvdGhlciBzaXRlcyANCmFjcm9zcyBCcml0YWluIGR1 cmluZyB0aGUgd2FyLiBUaGUgbW9zdCBzZW5pb3Igd2FzIFNlY29uZCBPZmZpY2VyIFBhbWVsYSAN ClBpZ2Vvbiwgd2hvIGJlY2FtZSB0aGUgZmlyc3QgZmVtYWxlIGludGVsbGlnZW5jZSBvZmZpY2Vy IHRvIGxlYWQgYSB1bml0IA0KYXQgdGhlIGFnZW5jeS4gVGhlIE5ldyBaZWFsYW5kLWJvcm4gc3B5 IHdvcmtlZCBhdCBNYXJzdG9uIE1vbnRnb21lcnksIGEgDQpiYXNlIGluIERlcmJ5c2hpcmUsIHRo YXQgd2FzIHNldCB1cCBpbiAxOTQxIGFzIGFuIG91dHBvc3Qgb2YgUkFGIA0KQ2hlYWRsZS4gVGhl IDEwMCBvciBzbyBzcGllcyB3b3JraW5nIGF0IHRoZSBiYXNlIHByYWN0aXNlZCDigJxvcGVyYXRv ciANCmZpbmdlcnByaW50aW5n4oCdIOKAlCBsaXN0ZW5pbmcgdG8gYXQgbGVhc3QgMjUgZGlmZmVy ZW50IG9wZXJhdG9ycyBlYWNoIGFuZCANCmlkZW50aWZ5aW5nIGluZGl2aWR1YWwgcmFkaW8gc2ln bmFscy4gVGhpcyBjb3VsZCBiZSBkb25lLCBmb3IgZXhhbXBsZSwgDQpieSBtb25pdG9yaW5nIHRo ZSBzcGVlZCB0aGF0IHBlb3BsZSB0YXBwZWQgb3V0IE1vcnNlIGNvZGUuIE9uY2UgZW5lbXkgDQpv cGVyYXRvcnMgd2VyZSBpZGVudGlmaWVkLCB0aGUgaW5mb3JtYXRpb24gY291bGQgYmUgdXNlZCB0 byBwaWVjZSANCnRvZ2V0aGVyIHRyb29wIG1vdmVtZW50cy4NCg0KLSAgUGFtZWxhIFBpZ2Vvbiwg Y2VudHJlLCB3aXRoIG1lbWJlcnMgb2YgaGVyIHVuaXQNCg0KU29tZSBvZiB0aGUgbW9zdCBpbXBv cnRhbnQgaW50ZWxsaWdlbmNlIGNvbGxlY3RlZCBieSBHQ0hRIHdlcmUgdGhlIA0KZW5jcnlwdGVk IG9yZGVycyBBZG9sZiBIaXRsZXIgZGlzc2VtaW5hdGVkIG92ZXIgdGVsZXByaW50ZXIsIG1vcmUg c2VjdXJlIA0KdGhhbiBFbmlnbWEgbWFjaGluZXMsIHRvIGhpcyBjb21tYW5kZXJzIGluIHRoZSBm aWVsZCBhY3Jvc3Mgb2NjdXBpZWQgRXVyb3BlLg0KDQpUaGVzZSBzdHJhdGVnaWMgY29tbXVuaWNh dGlvbnMgd2VyZSBpbnRlcmNlcHRlZCBhdCBJdnkgRmFybSwgS25vY2tob2x0LCANCktlbnQsIHdo aWNoIHdhcyBob21lIHRvIHRoZSBGb3JlaWduIE9mZmljZSBSZXNlYXJjaCBhbmQgRGV2ZWxvcG1l bnQgDQpFc3RhYmxpc2htZW50LCBhIGRlcGFydG1lbnQgdGhhdCBzdGlsbCBleGlzdHMgYnV0IGlz IG5vdyBiYXNlZCBpbiB0aGUgDQpHQ0hRIOKAnGRvdWdobnV04oCdIGJ1aWxkaW5nIGluIENoZWx0 ZW5oYW0uDQoNCkJsZXRjaGxleSBQYXJrLCB3aGVyZSB3YXJ0aW1lIGNyeXB0b2dyYXBoZXJzIGNy YWNrZWQgdGhlIEVuaWdtYSBjb2RlLCANCmhhcyBiZWNvbWUgc3lub255bW91cyB3aXRoIEdDSFEs IGJ1dCBpdHMgbW9yZSB1bnN1bmcgbG9jYXRpb25zIGFyZSANCnJlY2VpdmluZyBsb25nLW92ZXJk dWUgcmVjb2duaXRpb24uDQoNCk1yIENvbWVyIGFkZGVkIHRoYXQgdGhlcmUgaGFkIGJlZW4gYSB0 ZW5kZW5jeSBpbiB0aGUgcHVibGljIGRpc2NvdXJzZSANCmFyb3VuZCBHQ0hRIHRvIOKAnG92ZXJl bXBoYXNpc2UgdGhlIHJlYWxseSBicmlsbGlhbnQgbWluZHMgb2YgdGhlIEFsYW4gDQpUdXJpbmdz 4oCdLCB3aGVuIG11Y2ggaW50ZWxsaWdlbmNlIHdvcmsg4oCUIHN1Y2ggYXMgdGhhdCBjb25kdWN0 ZWQgYXQgdGhlIA0Kc2VjcmV0IHNpdGVzIHVudmVpbGVkIHRvZGF5IOKAlCByZWxpZWQgb24gY2xv c2UgdGVhbXdvcmsgdW5kZXJ0YWtlbiBieSANCmRlZGljYXRlZCBncm91cHMgcmF0aGVyIHRoYW4g YSBzaW5nbGUgZ2VuaXVzLiDigJxBIGxvdCBvZiB0aGUgd29yayB3ZSBkbyANCmlzIGFib3V0IGdh dGhlcmluZyB1cCBmcmFnbWVudGFyeSBwaWVjZXMgb2YgaW5mb3JtYXRpb24gYW5kIHB1dHRpbmcg dGhlbSANCnRvZ2V0aGVyLOKAnSBoZSBzYWlkLg0KDQoNCmh0dHBzOi8vd3d3LnRoZXRpbWVzLmNv LnVrL3Bhc3Qtc2l4LWRheXMvMjAxOS0xMS0wMS9uZXdzL2F0LWxhc3QtZ2NocS1yZXZlYWxzLXRo ZS1zZWNyZXQtd2FydGltZS1oaXN0b3J5LW9mLWhvbWVzLWZhcm1zLWFuZC1zaGVkcy1rOHo1ODYy bWQNCg0KaHR0cHM6Ly93d3cudGhldGltZXMuY28udWsvaW1hZ2VzZXJ2ZXIvaW1hZ2UvbWV0aG9k ZSUyRnRpbWVzJTJGcHJvZCUyRndlYiUyRmJpbiUyRmNhMjg4NTg0LWZjMjUtMTFlOS04MzdmLTc5 ZjMxMmEwMGZiZC5wbmc/Y3JvcD0xNDI5JTJDODA0JTJDMTglMkMxMiZyZXNpemU9Njg1DQoNCmh0 dHBzOi8vd3d3LnRoZXRpbWVzLmNvLnVrL2ltYWdlc2VydmVyL2ltYWdlL21ldGhvZGUlMkZ0aW1l cyUyRnByb2QlMkZ3ZWIlMkZiaW4lMkZiOTg4NTg3Ni1mYzM0LTExZTktYjRjOS0xNjkwZjY2MTRm YWQucG5nP2Nyb3A9MjAwMCUyQzMwMDAlMkMwJTJDMCZyZXNpemU9MzIwDQoNCmh0dHBzOi8vd3d3 LnRoZXRpbWVzLmNvLnVrL2ltYWdlc2VydmVyL2ltYWdlL21ldGhvZGUlMkZ0aW1lcyUyRnByb2Ql MkZ3ZWIlMkZiaW4lMkY5YjNjMWVlNi1mYzA0LTExZTktYTRiNC1iODE2NzY4Y2E3MTEuanBnP2Ny b3A9MTkzNyUyQzEyOTElMkMwJTJDMCZyZXNpemU9NDk4DQoNCmh0dHBzOi8vd3d3LnRoZXRpbWVz LmNvLnVrL2ltYWdlc2VydmVyL2ltYWdlL21ldGhvZGUlMkZ0aW1lcyUyRnByb2QlMkZ3ZWIlMkZi aW4lMkYxY2UyODA0Yy1mYzE1LTExZTktODM3Zi03OWYzMTJhMDBmYmQuanBnP2Nyb3A9NzM2JTJD NDkxJTJDMCUyQzAmcmVzaXplPTY4NQ0KDQotLS0tLS0tLS0tLS0tLS0tLS0tLS0NCg0KRnJpZGF5 IE5vdmVtYmVyIDAxIDIwMTkNCg0KTEVBRElORyBBUlRJQ0xFDQoNClRoZSBUaW1lcyB2aWV3IG9u IEdDSFEsIHRoZSBRdWVlbiBhbmQgSmFtZXMgQm9uZCA6IENvZGUgb2YgU2lsZW5jZQ0KLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tDQoNCkJyaXRhaW4gaXMgcGFydGljdWxhcmx5IGdvb2QgYXQga2VlcGluZyBzZWNyZXRzDQoN ClBlcmhhcHMgdW5zdXJwcmlzaW5nbHkgZm9yIGEgbmF0aW9uIHRoYXQgbnVtYmVycyBKYW1lcyBC b25kIGFtb25nIGl0cyANCmN1bHR1cmFsIGhlcm9lcywgdGhlIEJyaXRpc2ggYXJlIGdvb2QgYXQg a2VlcGluZyBzdGF0ZSBzZWNyZXRzLiBUaGUgDQpRdWVlbuKAmXMgZHJlc3NlciwgQW5nZWxhIEtl bGx5LCBoYXMgd2FpdGVkIGEgcXVhcnRlciBvZiBhIGNlbnR1cnkgYW5kIGZvciANCmV4cGxpY2l0 IHBlcm1pc3Npb24gZnJvbSBIZXIgTWFqZXN0eSBiZWZvcmUgd3JpdGluZyBhIGJvb2sgYWJvdXQg aGVyIA0KZXhwZXJpZW5jZXMuIEl0IGluY2x1ZGVzIHRoZSByZXZlbGF0aW9uIHRoYXQgdGhlIFF1 ZWVuIHRvb2sg4oCcanVzdCBmaXZlIA0KbWludXRlc+KAnSB0byBhZ3JlZSB0byBhcHBlYXIgaW4g YSBza2V0Y2ggd2l0aCBEYW5pZWwgQ3JhaWfigJlzIDAwNyBhdCB0aGUgDQpPbHltcGljcyBpbiAy MDEyLiBCb25kIG1heSBiZSBhIHNlY3JldCBhZ2VudCBidXQgR0NIUSBoYXMgYmVlbiBrZWVwaW5n IA0Kc2VjcmV0cyBldmVuIGxvbmdlci4NCg0KVG8gbWFyayBpdHMgMTAwdGggYW5uaXZlcnNhcnkg dGhlIGVhdmVzZHJvcHBpbmcgYWdlbmN5IGhhcyByZXZlYWxlZCBmaXZlIA0KbG9jYXRpb25zIHdo ZXJlIGl0IG9wZXJhdGVkIGR1cmluZyB0aGUgU2Vjb25kIFdvcmxkIFdhci4gT25lIGlzIGEgDQpk ZWNlcHRpdmVseSB1bnByZXBvc3Nlc3NpbmcgY2x1dGNoIG9mIHdvb2RlbiBodXRzIGluIHRoZSBT Y2FyYm9yb3VnaCANCmNvdW50cnlzaWRlIGFycmFuZ2VkIOKAnHRvIHJlc2VtYmxlIGEgcnVyYWwg Y3JpY2tldCBjbHVi4oCdLCBhIHN0YXRpb24gdGhhdCANCmhlbHBlZCB0aGUgUm95YWwgTmF2eSB0 byBzaW5rIHRoZSBCaXNtYXJjay4gQW5vdGhlciBpcyBBYmJvdHMgQ2xpZmYgDQpIb3VzZSwgRW5n bGFuZOKAmXMgY2xvc2VzdCBob3VzZSB0byBGcmFuY2UsIGluIHdoaWNoIHNvbWUgNjAgZmVtYWxl IA0KbGluZ3Vpc3RzIHdlcmUgZW1wbG95ZWQgdG8gbGlzdGVuIHRvIEdlcm1hbiBwaWxvdHMgdGFs a2luZyBvdmVyIHRoZSANCnJhZGlvLiBJdCB3YXMgb2Z0ZW4gc3RyYWZlZCBieSBlbmVteSBhaXJj cmFmdC4NCg0KVGhhdCBpdCBoYXMgbWFuYWdlZCB0byBrZWVwIHRoZXNlIGZvcm1lciBvcGVyYXRp b24gc2l0ZXMgc2VjcmV0IGZvciA3NCANCnllYXJzIGlzIHJlbWFya2FibGUuIFRoZSBpbnN0aXR1 dGlvbuKAmXMgY29kZWJyZWFrZXJzIHdlcmUgZGVzY3JpYmVkIGJ5IA0KV2luc3RvbiBDaHVyY2hp bGwgYXMg4oCcdGhlIGdlZXNlIHRoYXQgbGFpZCB0aGUgZ29sZGVuIGVnZ3MgYW5kIG5ldmVyIA0K Y2Fja2xlZOKAnSwgc3VjaCB3YXMgdGhlaXIgZ3JpcCBvbiBzZWNyZWN5LiBGb3IgZGVjYWRlcyBh ZnRlciB0aGUgZW5kIG9mIA0KdGhlIHdhciBpdHMgZm9ybWVyIGVtcGxveWVlcyBjb250aW51ZWQg dG8ga2VlcCB0aGVpciBzZWNyZXRzLCBldmVuIGZyb20gDQpmYW1pbGllcy4gVGhlIHJvbGVzIHRo ZXkgcGxheWVkIG9ubHkgYmVjYW1lIHB1YmxpYyBpbiB0aGUgMTk3MHMuIFdoZW4gaW4gDQp0aGUg MTk2MHMgdGhlIERpY3Rpb25hcnkgb2YgTmF0aW9uYWwgQmlvZ3JhcGh5IHB1Ymxpc2hlZCBhbiBl bnRyeSBvbiB0aGUgDQptYXRoZW1hdGljaWFuIEFsYW4gVHVyaW5nLCBpdCBjb250YWluZWQgbm90 IG9uZSBtZW50aW9uIG9mIGhpcyANCmNvZGVicmVha2luZyB3b3JrIGF0IEJsZXRjaGxleSB0aGF0 IGhhZCBoZWxwZWQgdGhlIEFsbGllcyB0byB2aWN0b3J5Lg0KDQpPZiBjb3Vyc2UgQnJpdGFpbuKA mXMgY3VsdHVyZSBvZiBzZWNyZWN5IGhhcyBpdHMgZG93bnNpZGVzLCBhcyBqb3VybmFsaXN0cyAN Cmtub3cgdG8gdGhlaXIgZnJ1c3RyYXRpb24gb25seSB0b28gd2VsbC4gQnV0IGluIGEgZ29zc2lw eSBhZ2UsIG9uZSBjYW4gDQpvbmx5IGFkbWlyZSB0aG9zZSB3aG8gY2FuIGhvbGQgdGhlaXIgdG9u Z3VlLg0KDQoNCmh0dHBzOi8vd3d3LnRoZXRpbWVzLmNvLnVrL3Bhc3Qtc2l4LWRheXMvMjAxOS0x MS0wMS9jb21tZW50L3RoZS10aW1lcy12aWV3LW9uLWdjaHEtdGhlLXF1ZWVuLWFuZC1qYW1lcy1i b25kLWNvZGUtb2Ytc2lsZW5jZS02ajNsZG1xY2YNCg0KLS0tLS0tLS0tDQoNCkZyaWRheSBOb3Zl bWJlciAwMSAyMDE5DQoNCkdDSFEgbWFya3MgMTAwIHllYXJzIGJ5IHVudmVpbGluZyBkZXRhaWxz IG9mIHdhcnRpbWUgc3B5IHdvcmsNCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCg0KQWdlbmN5IGhvbm91cnMgbGluZ3Vpc3RzLCBp bmNsdWRpbmcgbWFueSB3b21lbiwgd2hvIGVhdmVzZHJvcHBlZCBhbmQgDQpkZWNvZGVkIGluIHNl Y3JldCBsb2NhdGlvbnMNCg0KRGFuIFNhYmJhZ2ggRGVmZW5jZSBhbmQgc2VjdXJpdHkgZWRpdG9y DQoNCi0gIEEgcmVjZWl2ZXIgY29udHJvbCBiYXkgaW4gS25vY2tob2x0LCBLZW50LCB3aGVyZSBz dGFmZg0KICAgIHdvcmtlZCBvbiBkZWNvZGluZyBoZWF2aWx5IGVuY3J5cHRlZCBHZXJtYW4g4oCc bm9pc2XigJ0uDQoNClRoZSBzcHkgYWdlbmN5IEdDSFEgaXMgY2VsZWJyYXRpbmcgaXRzIGNlbnRl bmFyeSBvbiBGcmlkYXkgYnkgDQpoaWdobGlnaHRpbmcgbGl0dGxlLWtub3duIHdhcnRpbWUgZWF2 ZXNkcm9wcGluZyBhbmQgZGVjb2Rpbmcgd29yayB0aGF0IA0KdG9vayBwbGFjZSBpbiBmaXZlIHNl Y3JldCBsb2NhdGlvbnMgYXJvdW5kIHRoZSBjb3VudHJ5LCBmcm9tIHRoZSBLZW50IA0KY2xpZmZz IHRvIHRoZSBEZXJieXNoaXJlIGNvdW50cnlzaWRlLg0KDQpUaGF0IGluY2x1ZGVzIHRoZSBkYW5n ZXJvdXMgd29yayB1bmRlcnRha2VuIGRhaWx5IGJ5IGFib3V0IDUwIGxpbmd1aXN0cywgDQptYW55 IG9mIHdob20gd2VyZSB3b21lbiwgd2hvIGxpc3RlbmVkIGluIHRvIHNob3J0d2F2ZSBHZXJtYW4g bmF2YWwgYW5kIA0KYWlyZm9yY2UgcmFkaW8gYXQgQWJib3RzIENsaWZmIEhvdXNlIG5lYXIgRG92 ZXIsIGEgc2l0ZSBleHBvc2VkIHRvIGVuZW15IA0KYXR0YWNrLg0KDQpPciBhdCBNYXJzdG9uIE1v bnRnb21lcnksIGEgYmFzZSBoZWFkZWQgYXQgb25lIHBvaW50IGJ5IHRoZSBhZ2VuY3nigJlzIA0K Zmlyc3QgZmVtYWxlIGNvbW1hbmRlciwgUGFtZWxhIFBpZ2VvbiwgYSBOZXcgWmVhbGFuZGVyIHdo byB0b29rIG92ZXIgDQpvcGVyYXRpb25zIGluIDE5NDMgaW4gYSBzZXJpZXMgb2Ygd29vZGVuIGh1 dHMgaGlkZGVuIGluIHRoZSBjb3VudHJ5c2lkZS4NCg0KVG9ueSBDb21lciwgR0NIUeKAmXMgaGlz dG9yaWFuLCB0b2xkIHRoZSBHdWFyZGlhbiB0aGF0IGFib3V0IDEwMCBwZW9wbGUgDQp3ZXJlIGJh c2VkIHRoZXJlLCDigJxmaW5nZXJwcmludGluZyBpbmRpdmlkdWFsIEdlcm1hbiByYWRpb3MsIHRh a2luZyANCmFkdmFudGFnZSBvZiB0aGUgZmFjdCB0aGF0IGVhY2ggY3J5c3RhbCBhdCB0aGUgaGVh cnQgb2YgYSByYWRpbyANCm9zY2lsbGF0ZWQgc2xpZ2h0bHkgZGlmZmVyZW50bHkuDQoNCuKAnElm IHlvdSBoYWQgcHJldmlvdXNseSB3b3JrZWQgb3V0IHdoYXQgZWFjaCByYWRpbyB3YXMgdXNlZCBm b3IsIGl0IA0KcHJlc2VudGVkIGFuIGVhc3kgd2F5IHRvIGRpc3Rpbmd1aXNoIGJldHdlZW4gYSBi b21iZXIgc3F1YWRyb24gb3Igc2ltcGx5IA0KZmlnaHRlciBhaXJjcmFmdCBhcHByb2FjaGluZyB3 aXRob3V0IGhhdmluZyB0byBkZWNvZGUgYW55IG1lc3NhZ2VzLuKAnQ0KDQpUaGUgNiwwMDAtc3Ry b25nIGFnZW5jeSDigJMgdGhlIG1vc3Qgc2VjcmV0aXZlIG9mIEJyaXRhaW7igJlzIGludGVsbGln ZW5jZSANCm9yZ2FuaXNhdGlvbnMg4oCTIHdhbnRzIHRvIHNob3djYXNlIG1vcmUgb2YgaXRzIGxp dHRsZS1rbm93biBoaXN0b3J5IA0KYmV5b25kIHRoZSBub3cgZmFtb3VzIHN0b3J5IG9mIHRoZSBj cmFja2luZyBvZiB0aGUgR2VybWFuIEVuaWdtYSBjaXBoZXIgDQphdCBCbGV0Y2hsZXkgUGFyaywg bGVkIGJ5IEFsYW4gVHVyaW5nLg0KDQpJdCBpcyBhIGhpc3RvcnkgdGhhdCBkYXRlcyBiYWNrIHRv IHRoZSBhZnRlcm1hdGggb2YgdGhlIGZpcnN0IHdvcmxkIHdhciwgDQp3aGVuIHBvbGl0aWNpYW5z IOKAkyBpbmNsdWRpbmcgdGhlIHByaW1lIG1pbmlzdGVyIGF0IHRoZSB0aW1lLCBEYXZpZCBMbG95 ZCANCkdlb3JnZSDigJMgd2VyZSBlYWdlciB0byBtYWludGFpbiBhIGNhcGFiaWxpdHkgdGhhdCBo YWQgYmVlbiBidWlsdCB1cCANCnNlcGFyYXRlbHkgYnkgdGhlIGFybXkgYW5kIG5hdnkuDQoNCi0g IEEgZmF4IGludGVyY2VwdGVkIGFuZCB0cmFuc2xhdGVkIGJ5IEdDSFEgc3RhZmYNCiAgICBkdXJp bmcgdGhlIHNlY29uZCB3b3JsZCB3YXIuDQoNCkEgeWVhciBlYXJsaWVyLCBpbiAxOTE3LCBuYXZh bCBjb2RlYnJlYWtlcnMgaGFkIGNyYWNrZWQgdGhlIFppbW1lcm1hbiANClRlbGVncmFtLCBhbiBv ZmZlciBmcm9tIEdlcm1hbnkgdG8gTWV4aWNvIHRvIGVudGVyIHRoZSB3YXIgaW4gcmV0dXJuIGZv ciANCnRlcnJpdG9yaWVzIGluIHRoZSBVUywgd2hpY2gsIHdoZW4gcmV2ZWFsZWQsIGhlbHBlZCBi cmluZyBhbiBhbmdyeSBVUyANCmludG8gdGhlIGNvbmZsaWN0Lg0KDQpTdG9yaWVzIGFib3V0IEdD SFHigJlzIHdhcnRpbWUgd29yayBhcmUgZmVsdCB0byBoZWxwIHdpdGggdGhlIGFnZW5jeeKAmXMg DQpwcm9maWxlIGFuZCByZWNydWl0bWVudCBmb2xsb3dpbmcgcmV2ZWxhdGlvbnMgYnkgdGhlIHdo aXN0bGVibG93ZXIgDQpFZHdhcmQgU25vd2RlbiBvZiB0aGUgZXh0ZW50IG9mIGl0cyBzdXJ2ZWls bGFuY2UgYWN0aXZpdGllcy4NCg0KU2l4IHllYXJzIGFnbywgYmFzZWQgb24gdGhlIGxlYWtzLCB0 aGUgR3VhcmRpYW4gYW5kIG90aGVyIG5ld3MgDQpvcmdhbmlzYXRpb25zIHdlcmUgYWJsZSB0byBk ZW1vbnN0cmF0ZSB0aGF0IEdDSFEgaGFkIHRhcHBlZCBpbnRvIA0KZmlicmUtb3B0aWMgY2FibGVz IHZpYSBhIHByb2dyYW1tZSBuYW1lZCAnVGVtcG9yYScgYW5kIGhlbHBlZCB0aGUgVVMgDQpOYXRp b25hbCBTZWN1cml0eSBBZ2VuY3kgdG8gZ2FpbiBhY2Nlc3MgdG8gdGhlIHNlcnZlcnMgb2YgbW9z dGx5IFVTIA0KaW50ZXJuZXQgcHJvdmlkZXJzIGluIGEgc2NoZW1lIGNhbGxlZCAnUHJpc20nLg0K DQpBdCB0aGUgdGltZSwgdGhlIFNub3dkZW4gZmlsZXMgcmV2ZWFsZWQgdGhlIGV4dGVudCBvZiB0 aGUgYWdlbmN54oCZcyANCmFtYml0aW9ucywgdGhhdCBpdCB3YW50ZWQgdG8gYmUgYWJsZSB0byDi gJxleHBsb2l0IGFueSBwaG9uZSwgYW55d2hlcmUsIA0KYW55IHRpbWXigJ0gYW5kIHRoYXQgaXRz IOKAnGNvbGxlY3Rpb24gcG9zdHVyZeKAnSBpbmNsdWRlZCBzbGlkZXMgbGlzdGVkIHVuZGVyIA0K dGhlIGhlYWRpbmcg4oCcQ29sbGVjdCBJdCBBbGzigJ0uDQoNClN1Y2ggYWN0aXZpdGllcyBkbyBu b3QgZmVhdHVyZSBhcyBwYXJ0IG9mIEdDSFHigJlzIGhpc3RvcmljYWwgY2VsZWJyYXRpb25zIA0K 4oCTIHRoZSBzZWNyZXQgYWdlbmN54oCZcyBwZXJjZXB0aW9uIG9mIGhpc3RvcnkgY2xvc2VzIGF0 IHRoZSBlbmQgb2YgdGhlIA0KY29sZCB3YXIg4oCTIGFsdGhvdWdoIHNvbWUgbGF0ZXIgYWN0aXZp dGllcyBhcmUgZm9yZXNoYWRvd2VkIGJ5IHdoYXQgd2VudCANCm9uIGJldHdlZW4gMTkzOSBhbmQg MTk0NS4NCg0KLSAgSXZ5IEZhcm0sIGluIEtub2NraG9sdCwgS2VudA0KDQpBdCBJdnkgRmFybSwg aW4gS25vY2tob2x0IGluIEtlbnQsIGEgZ3JvdXAgb2YgYWJvdXQgODAgaGFkIHRoZSB0YXNrIG9m IA0KbGlzdGVuaW5nIHRvIOKAnGh1bWFuLW1hZGUgbm9pc2XigJ0g4oCTIHdoYXQgQ29tZXIgZGVz Y3JpYmVkIGFzIOKAnGFueSB1bnVzdWFsIA0KYWN0aXZpdHkgb24gdGhlIGVsZWN0cm9tYWduZXRp YyBzcGVjdHJ1beKAnSB0aGF0IGNvdWxkIGFtb3VudCB0byBhIA0KcHJldmlvdXNseSB1bmtub3du IGZvcm0gb2YgZW5jcnlwdGVkIGNvbW11bmljYXRpb24uIFRob3NlIHdvcmtpbmcgdGhlcmUgDQpt YW5hZ2VkIHRvIGlzb2xhdGUgZW5jaXBoZXJlZCBjb21tdW5pY2F0aW9ucyBiZXR3ZWVuIEFkb2xm IEhpdGxlciBhbmQgDQpoaXMgZmllbGQgbWFyc2hhbHMgdXNpbmcgdGhlICdMb3JlbnonIGNpcGhl ciB0aGF0IHdhcyBjcmFja2VkIGF0IA0KQmxldGNobGV5IFBhcmsuDQoNClRoZSBzaXRlLCBDb21l ciBhZGRlZCwgd2FzIHRoZSBmaXJzdCBwbGFjZSByZXNwb25zaWJsZSBmb3IgdGhlIA0KaW50ZXJj ZXB0aW9uIG9mIGEgZmF4LCB0aGVuIGFuIGVtZXJnaW5nIHRlY2hub2xvZ3kgdXNlZCBwcmltYXJp bHkgYnkgDQpuZXdzcGFwZXJzIHRvIHNlbmQgc2ltcGxlIHBpY3R1cmVzIGFyb3VuZCB0aGUgd29y bGQuDQoNCuKAnEEgSmFwYW5lc2UgcHJlc3MgYXR0YWNoZSBpbiBCZXJsaW4gaGFkIHNlbnQgYSBk ZXNjcmlwdGlvbiBvZiBhIHR5cGljYWwgDQpVUyBib21iZXIgZm9ybWF0aW9uIHRvIGEgcHJlc3Mg YWdlbmN5IGluIFRva3lvLiBTdGFmZiBhdCBJdnkgRmFybSB3ZXJlIA0KYWJsZSB0byBpbnRlcmNl cHQgdGhlIGNvbW11bmljYXRpb24gYW5kIHBhc3MgaXQgb24gdG8gdGhlIEFtZXJpY2Fucywgc28g DQp0aGV5IGNvdWxkIGFkYXB0LOKAnSB0aGUgaGlzdG9yaWFuIGFkZGVkLg0KDQpPdGhlciBzZWNy ZXQgbG9jYXRpb25zIGhpZ2hsaWdodGVkIGJ5IEdDSFEgaW5jbHVkZSBDaGVzdGVyZmllbGQgU3Ry ZWV0IA0KaW4gTWF5ZmFpciwgdGhlIHNpdGUgb2YgdGhlIGFnZW5jeeKAmXMgZmlyc3QgYW50aS1T b3ZpZXQgb3BlcmF0aW9ucywgd2hpY2ggDQpiZWdhbiB3b3JrIGluIDE5NDQsIGEgeWVhciBiZWZv cmUgdGhlIHdhciBlbmRlZCwgYW5kIENyb2Z0IFNwYSwgaW4gdGhlIA0KWW9ya3NoaXJlIGNvdW50 cnlzaWRlIG5lYXIgU2NhcmJvcm91Z2gsIHdoZXJlIHNpZ25hbHMgZnJvbSBlbmVteSBzaGlwcyAN CmluIHRoZSBOb3J0aCBTZWEgd2VyZSBwaW5wb2ludGVkLg0KDQoNCmh0dHBzOi8vd3d3LnRoZWd1 YXJkaWFuLmNvbS91ay1uZXdzLzIwMTkvbm92LzAxL2djaHEtbWFya3MtMTAwLXllYXJzLWJ5LXVu dmVpbGluZy1kZXRhaWxzLW9mLXdhcnRpbWUtc3B5LXdvcmsNCg0KaHR0cHM6Ly9pLmd1aW0uY28u dWsvaW1nL21lZGlhLzE5ZTJhMzZjMGQzNDc3NWQ1NTg4ZmI4MDg4YjkzZWFiNTgzMjY3ZjEvMF85 MF8xMzQwXzgwNC9tYXN0ZXIvMTM0MC5qcGc/d2lkdGg9NzAwJnF1YWxpdHk9ODUmYXV0bz1mb3Jt YXQmZml0PW1heCZzPTVjYzA2YzM0M2ViZTVlZjk4NzJiYWU5NmI2ODk0NmUyDQoNCmh0dHBzOi8v aS5ndWltLmNvLnVrL2ltZy9tZWRpYS82MzI4MzA0YjQ4MjY3NTdlNWNlMDhmZDZlOWQ1N2U1Y2Jk NzNhMWViLzBfMF8zNDM4XzIwNjMvbWFzdGVyLzM0MzguanBnP3dpZHRoPTk2NSZxdWFsaXR5PTg1 JmF1dG89Zm9ybWF0JmZpdD1tYXgmcz01YmNmODcxZDM0ODMyZjU5NjFmOTQ4YmI2YzkyYjM1Yw0K DQpodHRwczovL2kuZ3VpbS5jby51ay9pbWcvbWVkaWEvZjcwODg0YTY2Njg1NTM0ZTg1MGJjM2Mw MmY5OGEwYWYzNzBmZDJkMi8wXzBfMTk0Ml8xMzIwL21hc3Rlci8xOTQyLmpwZz93aWR0aD05NjUm cXVhbGl0eT04NSZhdXRvPWZvcm1hdCZmaXQ9bWF4JnM9NmRjN2JjMTRiYzZkZDYzMDU3NGFjM2Yy ZTg2ZjUzODENCg0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQoNCkZyaWRheSBO b3ZlbWJlciAwMSAyMDE5DQoNClJldmVhbGVkIC0gdGhlIGh1dHMgdGhhdCBzYW5rIHRoZSBCaXNt YXJjayA6DQpVbmFzc3VtaW5nIHNoZWRzIGluIFlvcmtzaGlyZSBjb3VudHJ5c2lkZSB3ZXJlIGhv bWUgdG8gMjAgcmFkaW8gDQpvcGVyYXRvcnMgd29ya2luZyBmb3IgVUsncyBzcHkgYWdlbmN5IEdD SFEgZHVyaW5nIFdvcmxkIFdhciBJSQ0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCg0KLSBDcm9mdCBTcGEgaW4gU2NhcmJvcm91 Z2ggd2FzIGhvbWUgdG8gMjAgcmFkaW8gb3BlcmF0b3JzIHdvcmtpbmcgZm9yIA0KQnJpdGlzaCBz cHkgYWdlbmN5IEdDSFENCi0gSXQgd2FzIG9uZSBvZiBtYW55IHN0YXRpb25zIHRvIGludGVyY2Vw dCB0cmFuc21pc3Npb25zIGZyb20gR2VybWFuIA0Kc2hpcHMsIGluY2x1ZGluZyBvbmVzIGF0IERv dmVyDQotIEdDSFEgaGFzIHJldmVhbGVkIHRoZSB3b3JrIGRvbmUgYXQgdGhlc2Ugc2l0ZXMgdG8g cHJvdmlkZSBpbnNpZ2h0IGludG8gDQpzaWduYWxzIG9uIGFnZW5jeSdzIDEwMHRoIGFubml2ZXJz YXJ5DQoNCkJ5IExhcmlzYSBCcm93biBmb3IgdGhlIERhaWx5IE1haWwNCg0KVGhleSdyZSBqdXN0 IGEgY291cGxlIG9mIHVucmVtYXJrYWJsZSB3b29kZW4gaHV0cyBpbiB0aGUgbWlkZGxlIG9mIGEg DQpmaWVsZCBpbiB0aGUgU2NhcmJvcm91Z2ggY291bnRyeXNpZGUuDQoNCkJ1dCB3aGF0IHdlbnQg b24gYmVoaW5kIHRoZWlyIGRvb3JzIGhlbHBlZCB0dXJuIHRoZSB0aWRlIG9mIFdvcmxkIFdhciBJ SS4NCg0KQ3JvZnQgU3BhIHdhcyBob21lIHRvIDIwIHJhZGlvIG9wZXJhdG9ycyB3b3JraW5nIGZv ciBCcml0YWluJ3Mgc3B5IA0KYWdlbmN5IEdDSFEgYW5kIGlzIG9uZSBvZiBhIG51bWJlciBvZiBw cmV2aW91c2x5IHNlY3JldCBsb2NhdGlvbnMgdXNlZCANCmJ5IHRoZSBhZ2VuY3kgaW4gdGhlIGZp Z2h0IGFnYWluc3QgdGhlIE5hemlzLCByZXZlYWxlZCB0b2RheSBvbiBpdHMgDQoxMDB0aCBhbm5p dmVyc2FyeS4NCg0KVW5iZWtub3duIHRvIHRoZSBwdWJsaWMsIENyb2Z0IFNwYSB3YXMgYSBkaXJl Y3Rpb24gZmluZGluZyBzdGF0aW9uIGFuZCANCnRob3NlIHdvcmtpbmcgaW5zaWRlIHdlcmUgYWJs ZSB0byBsb2NhdGUgdGhlIEdlcm1hbiBiYXR0bGVzaGlwIEJpc21hcmNrIA0KaW4gdGhlIEF0bGFu dGljIOKAkyBhIGRpc2NvdmVyeSB0aGF0IGN1bG1pbmF0ZWQgaW4gdGhlIHNpbmtpbmcgb2YgdGhl IA0KcHJpZGUgb2YgdGhlIE5hemkgbmF2eSDigJMgb24gTWF5IDI3LCAxOTQxLg0KDQotICBDcm9m dCBTcGEgKCBwaWN0dXJlZCApIGluIFNjYXJib3JvdWdoIHdhcyBob21lIHRvIDIwIHJhZGlvIG9w ZXJhdG9ycw0KICAgIHdvcmtpbmcgZm9yIEJyaXRhaW4ncyBzcHkgYWdlbmN5IEdDSFENCg0KLSAg SXQgd2FzIGEgZGlyZWN0aW9uIGZpbmRpbmcgc3RhdGlvbiBhbmQgdGhvc2Ugd29ya2luZyBpbnNp ZGUgd2VyZSBhYmxlDQogICAgdG8gbG9jYXRlIHRoZSBHZXJtYW4gYmF0dGxlc2hpcCBCaXNtYXJj ayBpbiB0aGUgQXRsYW50aWMNCg0KR0NIUSBoaXN0b3JpYW4gVG9ueSBDb21lciwgc2FpZCA6ICdU aGF0IHdhcyBhIGZhbnRhc3RpYyBhY2hpZXZlbWVudCANCmJlY2F1c2UgaGVyZSB5b3UgaGF2ZSBv bmUgb2YgdGhlIHByaW5jaXBsZSB2ZXNzZWxzIG9mIHRoZSBHZXJtYW4gbmF2eSANCnRoYXQgd2Fz IGRlc3Ryb3llZCBhbmQgaXQgY291bGQgbm90IGJlIHJlcGxhY2VkIGR1cmluZyB0aGUgd2FyLg0K DQonQnkgc2lua2luZyB0aGUgQmlzbWFyY2ssIHlvdSd2ZSB0YWtlbiBvdXQgYSBzaWduaWZpY2Fu dCBwcm9wb3J0aW9uIG9mIA0KR2VybWFueSdzIHBvc3NpYmlsaXR5IG9mIGJlaW5nIGFibGUgdG8g aW5mbHVlbmNlIHRoZSB3YXIgYXQgc2VhLg0KDQonSXQgZW5hYmxlZCB0aGUgUm95YWwgTmF2eSB0 byBnZXQgY2xvc2VyIHRvIGJlaW5nIGFibGUgdG8gZG9taW5hdGUgdGhlIA0Kc2Vhd2F5cywgdG8g YWxsb3cgY29udm95cyB0byBzYWlsIHRoZSBvY2VhbnMgc2FmZWx5LicNCg0KLSAgVG8gbWFyayBp dHMgMTAwdGggYW5uaXZlcnNhcnksIEdDSFEgaGFzIHJldmVhbGVkIHRoZSBncm91bmQtYnJlYWtp bmcNCiAgICB3b3JrIGNhcnJpZWQgb3V0IGF0IGZpdmUgZm9ybWVyIHNlY3JldCBzaXRlcywgaW5j bHVkaW5nIENyb2Z0IFNwYQ0KDQpNciBDb21lciBqb2luZWQgdGhlIHNlcnZpY2UgaW4gdGhlIDE5 ODBzIGFzIGEgbGluZ3Vpc3QgYW5kIGlzIGp1c3Qgb25lIA0Kb2YganVzdCBzZXZlbiBwZW9wbGUg YWxsb3dlZCB0byBzcGVhayBwdWJsaWNseSBvbiBpdHMgYmVoYWxmLg0KDQpIZSBzYWlkIHRoZSAn b3JkaW5hcnknIHBsYWluLWNsb3RoZWQgd29ya2VycyBpbiB0aGUgaHV0IHdlcmUgYW1vbmcgdGhv c2UgDQoncmlnaHQgYXQgdGhlIGhlYXJ0IG9mIHByb3RlY3RpbmcgdGhlIHNlY3VyaXR5IG9mIHRo ZSBjb3VudHJ5Jy4NCg0KLSAgR0NIUSBoYXMgcmV2ZWFsZWQgdGhlIHdvcmsgZG9uZSBhdCB0aGVz ZSBsaXR0bGUta25vd24gc2l0ZXMgdG8NCiAgICBwcm92aWRlIGFuIGluc2lnaHQgaW50byBzaWdu YWxzIGludGVsbGlnZW5jZQ0KDQpUbyBtYXJrIGl0cyAxMDB0aCBhbm5pdmVyc2FyeSB0b2RheSwg R0NIUSBoYXMgcmV2ZWFsZWQgdGhlIA0KZ3JvdW5kLWJyZWFraW5nIHdvcmsgY2FycmllZCBvdXQg YXQgZml2ZSBmb3JtZXIgc2VjcmV0IHNpdGVzLCBpbmNsdWRpbmcgDQpDcm9mdCBTcGEuDQoNCk90 aGVyIGxvY2F0aW9ucyBpbmNsdWRlIGEgZmFybWhvdXNlIG91dHNpZGUgTG9uZG9uIGFuZCBhIG1h bm9yIG9uIHRoZSANCldoaXRlIENsaWZmcyBvZiBEb3Zlci4NCg0KR0NIUSBoYXMgcmV2ZWFsZWQg dGhlIHdvcmsgZG9uZSBhdCB0aGVzZSBsaXR0bGUta25vd24gc2l0ZXMgdG8gcHJvdmlkZSANCmFu IGluc2lnaHQgaW50byBzaWduYWxzIGludGVsbGlnZW5jZSBvdmVyIHRoZSBjb3Vyc2Ugb2YgdGhl IA0Kb3JnYW5pc2F0aW9uJ3MgMTAwLXllYXIgaGlzdG9yeS4NCg0KQ3JvZnQgU3BhIOKAkyBvcGVy YXRpb25hbCBmcm9tIDE5NDAtNzUg4oCTIHdhcyBvbmUgb2YgbWFueSBzdGF0aW9ucyBzZXQgdXAg DQp0byBpbnRlcmNlcHQgdHJhbnNtaXNzaW9ucyBmcm9tIEdlcm1hbiBzaGlwcy4gU3RhZmYgcHV0 IHRoZWlyIGRhdGEgDQp0b2dldGhlciB0byBwaW5wb2ludCB0aGUgbG9jYXRpb24gb2YgZW5lbXkg c2lnbmFscyBmcm9tIHNoaXBzLg0KDQpJdCB3YXMgdGhlIHBlcmZlY3QgcGxhY2UgdG8gbG9jYXRl IGEgbGlzdGVuaW5nIHN0YXRpb24gdG8gdGhlIGxvdyBub2lzZSANCmZsb29yLg0KDQpCdXQgd2hl biBhZ3JpY3VsdHVyZSBiZWNhbWUgbW9yZSBtZWNoYW5pc2VkLCB0aGUgc3RhZmYgZnJlcXVlbnRs eSBoYWQgdG8gDQphc2sgbG9jYWwgZmFybWVycyB0byBzdG9wIHRoZWlyIHdvcmsgc28gbm9pc2Ug ZnJvbSB0aGUgbWFjaGluZXJ5IGRpZCBub3QgDQppbnRlcmZlcmUgd2l0aCB0aGUgY29sbGVjdGlv biBvZiBpbXBvcnRhbnQgY29tbXVuaWNhdGlvbnMuDQoNClRoZSBmYXJtZXJzIGhhZCBubyBpZGVh IHdoeS4NCg0KRXhwbGFpbmluZyB0aGUgd29yayBjYXJyaWVkIG91dCB0aGVyZSwgTXIgQ29tZXIg c2FpZDogJ0V2ZXJ5IHRpbWUgb25lIG9mIA0KdGhlIG1haW4gc3RhdGlvbnMsIGxpa2UgU2NhcmJv cm91Z2ggd291bGQgaW50ZXJjZXB0IGEgdHJhbnNtaXNzaW9uIGZyb20gDQphIEdlcm1hbiBzaGlw LCB0aGV5IHdvdWxkIGJlIGFibGUgdG8gdGVsbCB3aGF0IGRpcmVjdGlvbiB0aGUgDQp0cmFuc21p c3Npb24gd2FzIGNvbWluZyBmcm9tLg0KDQonVGhhdCB3b3VsZCBiZSBhIHNpbmdsZSBsaW5lIG9m IGJlYXJpbmcgYW5kIHNvIGEgd2hvbGUgc2VyaWVzIG9mIA0KZGlyZWN0aW9uIGZpbmRpbmcgc3Rh dGlvbnMgd2VyZSBidWlsdCBhbmQgZWFjaCBvZiB0aGVzZSB3b3VsZCB0YWtlIGEgDQpsb29rIGF0 IGV2ZXJ5IHRyYW5zbWlzc2lvbiB0aGF0IHdhcyBpbnRlcmNlcHRlZCBhdCBhIG1haW4gc3RhdGlv bi4NCg0KLSAgSXZ5IEZhcm0gaW4gdGhlIEtlbnQgY291bnRyeXNpZGUgd2FzIHdoZXJlIHN0YWZm IGVuY3J5cHRlZCBhDQogICAgdGVsZXByaW50ZXIgd2hpY2ggQWRvbGYgSGl0bGVyIHVzZWQgdG8g Y29tbXVuaWNhdGUgd2l0aCBoaXMgZmllbGQNCiAgICBtYXJzaGFscw0KDQotICBBdCBBYmJvdHMg Q2xpZmYgSG91c2UgaW4gQ2FwZWwgbGUgRmVybmUsIEtlbnQsIDYwIHlvdW5nIEdlcm1hbi0NCiAg ICBzcGVha2luZyBsaW5ndWlzdHMgd2VyZSBzdGF0aW9uZWQgZnJvbSAxOTQwIGNvbGxlY3Rpbmcg bWVzc2FnZXMgZnJvbQ0KICAgIEdlcm1hbiBmb3JjZXMuIFRoZSBob21lIGlzIG5vdyBhdmFpbGFi bGUgdG8gcmVudCBmb3IgbmVhcmx5IMKjMiwwMDANCiAgICBwZXIgbmlnaHQNCg0KJ0J5IGNvbXBh cmluZyB0aGUgZGlmZmVyZW50IGxpbmVzIG9mIGJlYXJpbmcgZnJvbSBhbGwgb2YgdGhlc2Ugc3Rh dGlvbnMsIA0KeW91IGNvdWxkIGdldCBhbiBhY2N1cmF0ZSBmaXggb2Ygd2hlcmUgdGhlIHNoaXAg dGhhdCB3YXMgZG9pbmcgdGhlIA0KdHJhbnNtaXNzaW9uIHdhcyBieSBwcm9jZXNzIG9mIHRyaWFu Z3VsYXRpb24uJw0KDQpIZSB3ZW50IG9uIDogJ1RoZSBzdGF0aW9uIGF0IENyb2Z0IFNwYSBpcyBy ZWFsbHkganVzdCBhIGNvdXBsZSBvZiBzbWFsbCANCndvb2RlbiBodXRzIGFuZCB0aGVyZSB3ZXJl IGRvemVucyBvZiBzbWFsbCBzdGF0aW9ucyBsaWtlIHRoaXMgYXJvdW5kIHRoZSANCmNvdW50eSBk dXJpbmcgdGhlIHdhci4nDQoNCkVhY2ggc3RhdGlvbiBoYWQgbm8gbW9yZSB0aGFuIGFyb3VuZCAy MCBwZW9wbGUgYW5kIHRoZWlyIGpvYiB3YXMgdG8gbG9vayANCmZvciB0aGUgbGluZSBvZiBiZWFy aW5nIG9uIGFueSB0cmFuc21pc3Npb24gdGhhdCB0aGV5IHdlcmUgdGFza2VkIHdpdGguDQoNCk1y IENvbWVyIGFkZGVkIDogJ0l0IHNvdW5kcyBsaWtlIGEgdmVyeSBzb3J0IG9mIHRlZGlvdXMgYnVz aW5lc3MgYnV0IA0KYWN0dWFsbHkgaXQgY2FuIGJlIGNvbXBsZXRlbHkgY3J1Y2lhbC4nDQoNCkhl IHNhaWQgb25lIGV4YW1wbGUgb2YgdGhlaXIgd29yayB3YXMgdGhlIHNpbmtpbmcgb2YgdGhlIEJp c21hcmNrLg0KDQotICBUaGUgbW9zdCBzZW5pb3Igd29tYW4gYXQgR0NIUSB3YXMgUGFtZWxhIFBp Z2Vvbg0KICAgICggY2VudHJlLCBtaWRkbGUgcm93ICksIHdobyBiZWNhbWUgdGhlIGZpcnN0IGZl bWFsZQ0KICAgIGludGVsbGlnZW5jZSBvZmZpY2VyIHRvIGxlYWQgYSB1bml0DQoNCidJdCBoYWQg YmVlbiBkYW1hZ2VkIGFuZCB3YXMgdHJ5aW5nIHRvIGdldCB0byBhIHBvcnQgaW4gb2NjdXBpZWQg RnJhbmNlIA0KYnV0IGl0IG1hZGUgb25lIHRyYW5zbWlzc2lvbiB0aGF0IHdhcyBsb2NhdGVkIHRo cm91Z2ggZGlyZWN0aW9uIGZpbmRpbmcgDQphbmQgdGhpcyB3YXMgZW5vdWdoIHRvIGJlIGFibGUg dG8gdGVsbCB0aGUgUm95YWwgTmF2eSBleGFjdGx5IHdoZXJlIA0KQmlzbWFyY2sgd2FzIGFuZCBl bnN1cmUgdGhhdCB0aGUgc2hpcCB3YXMgc3VuayBiZWZvcmUgaXQgY291bGQgcmVhY2ggYSANCnNh ZmUtaGF2ZW4uDQoNCidTbyBldmVuIHRob3VnaCB0aGV5IGFyZSB0aW55IGFuZCB0aGV5IGxvb2sg YXMgdGhvdWdoIG5vdGhpbmcgdmVyeSANCnNpZ25pZmljYW50IHdvdWxkIGJlIGdvaW5nIG9uIGlu IHRoZW0sIGFjdHVhbGx5IHRoZXkgY29udHJpYnV0ZWQgdG8gDQpxdWl0ZSBtb21lbnRvdXMgaGFw cGVuaW5ncycsIGhlIGFkZGVkLg0KDQpUaGUgcmFkaW8gb3BlcmF0b3JzIHdlcmUgdW5saWtlbHkg dG8gaGF2ZSBiZWVuIHRvbGQgYWJvdXQgdGhlaXIgDQphY2hpZXZlbWVudCBiZWNhdXNlIGl0IHdh cyBhICdtYXR0ZXIgb2YgbGlmZSBhbmQgZGVhdGggZm9yIHRoZSBjb3VudHJ5JywgDQpoZSBzYWlk Lg0KDQonSWYgdGhlIEdlcm1hbnMgaGFkIGd1ZXNzZWQgd2Ugd2VyZSByZWFkaW5nIHRoZWlyIHNl Y3JldCBtZXNzYWdlcyB0aGV5IA0Kd291bGQgaGF2ZSBjaGFuZ2VkIHRoZSB3YXkgdGhleSBlbmNy eXB0ZWQgdGhlbS4NCg0KJ05vYm9keSBldmVyIHRhbGtlZCBhYm91dCB3aGF0IHRoZXkgZGlkIG91 dHNpZGUuIFNvIG1hbnkgY29tbXVuaXRpZXMgDQpob3VzZWQgdGhlc2Ugc2VjcmV0IHNpZ2h0cyB3 aXRob3V0IGV2ZXIgcmVhbGlzaW5nIHdoYXQgd2FzIGdvaW5nIG9uIA0KYmVoaW5kIHRoZWlyIHdp cmUgZmVuY2VzJywgaGUgc2FpZC4NCg0KQXQgSXZ5IEZhcm0sIGluIEtub2NraG9sdCwgS2VudCwg dXAgdG8gMTAwIHBlcnNvbm5lbCBpbnRlcmNlcHRlZCBzZWNyZXQgDQpjb21tdW5pY2F0aW9ucyBi ZXR3ZWVuIEFkb2xmIEhpdGxlciBhbmQgaGlzIGZpZWxkIG1hcnNoYWxzLg0KDQotICBQaWdlb24g d29ya2VkIGF0IE1hcnN0b24gTW9udGdvbWVyeSAoIHBpY3R1cmVkICksDQogICAgYSByZW1vdGUg YmFzZSBpbiBEZXJieXNoaXJlIHNldCB1cCBpbiAxOTQxIGFzIGFuDQogICAgb3V0cG9zdCBvZiBS QUYgQ2hlYWRsZQ0KDQpUaGV5IGludmVzdGlnYXRlZCB3aGF0IGlzIGtub3duIGFzICdub2lzZScg LSBzb3VuZCB3aGljaCBkb2VzIG5vdCBjYXJyeSANCmh1bWFuIGNvbW11bmljYXRpb25zLg0KDQpJ dCB1c2VkIGVuY3J5cHRlZCB0ZWxlcHJpbnRlciB0ZWNobm9sb2d5LCB3aGljaCB3YXMgbWFueSBt b3JlIHRpbWVzIA0Kc2VjdXJlIHRoYW4gRW5pZ21hLg0KDQpBYmJvdHMgQ2xpZmYgSG91c2UgYXQg Q2FwZWwgbGUgRmVybmUgaW4gS2VudCBvcGVyYXRlZCB0aHJvdWdob3V0IHRoZSB3YXIgDQp3aGVy ZSA1MCBmZW1hbGUgd2lyZWxlc3Mgb3BlcmF0b3JzIGludGVyY2VwdGVkIFZIRiBjb21tdW5pY2F0 aW9ucyBmcm9tIA0KQmVybGluLg0KDQpUaGUgY2xvc2VzdCBob3VzZSB0byBGcmFuY2UgaXMgbm93 IGEgcmVudGFsIHByb3BlcnR5IG9wZW4gdG8gdGhlIHB1YmxpYyANCmFuZCBpcyBhdmFpbGFibGUg Zm9yIG5lYXJseSDCozIsMDAwIHBlciBuaWdodCwgYWNjb3JkaW5nIHRvIFRoZSBUZWxlZ3JhcGgu DQoNClRoZSBtb3N0IHNlbmlvciB3b21hbiBhdCBHQ0hRIHdhcyBQYW1lbGEgUGlnZW9uLCB3aG8g YmVjYW1lIHRoZSBmaXJzdCANCmZlbWFsZSBpbnRlbGxpZ2VuY2Ugb2ZmaWNlciB0byBsZWFkIGEg dW5pdCBhbmQgd29ya2VkIGF0IE1hcnN0b24gDQpNb250Z29tZXJ5LCBhIHJlbW90ZSBiYXNlIGlu IERlcmJ5c2hpcmUgc2V0IHVwIGluIDE5NDEgYXMgYW4gb3V0cG9zdCBvZiANClJBRiBDaGVhZGxl Lg0KDQpKZXJlbXkgRmxlbWluZywgZGlyZWN0b3Igb2YgR0NIUSwgYW5kIG1lbWJlcnMgb2YgdGhl IEZpdmUgRXllcyANCmludGVsbGlnZW5jZSBhbGxpYW5jZSB3aWxsIGNlbGVicmF0ZSB0aGUgYW5u aXZlcnNhcnkgdG9kYXkuDQoNClByaW1lIE1pbmlzdGVyIEJvcmlzIEpvaG5zb24gc2FpZDogJ0dD SFEgaGFzIGJlZW4gaG9tZSB0byBzb21lIG9mIHRoZSANCmJyaWdodGVzdCBwZW9wbGUgaW4gdGhl IGNvdW50cnkgd2hvIHF1aWV0bHksIGFuZCB3aXRob3V0IGZhbmZhcmUsIHdvcmsgDQpkYXkgYW5k IG5pZ2h0IHRvIGtlZXAgdXMgc2FmZS4NCg0KJ1RoZSBDZW50ZW5hcnkgcHJvdmlkZXMgYW4gb3Bw b3J0dW5pdHkgdG8gcmVjb2duaXNlIHRoZWlyIGVub3Jtb3VzIA0KY29udHJpYnV0aW9uIHRvIHRo ZSBzZWN1cml0eSBvZiB0aGUgVUsgYW5kIEkgdGhhbmsgdGhlbSBmb3IgYWxsIHRoYXQgDQp0aGV5 IGRvLicNCg0KLSAgQXQgMTAgQ2hlc3RlcmZpZWxkIFN0cmVldCwgdGhlIGFub255bW91cyB0b3du aG91c2Ugbm93IGhpZGVzDQogICAgdGhlIEJhaGFtYXMgSGlnaCBDb21taXNzaW9uLCBidXQgdXNl ZCB0byBiZSB0aGUgaGVhZHF1YXJ0ZXJzDQogICAgb2YgR0NIUSdzIENvbGQgV2FyIG9wZXJhdGlv bnMNCg0KRGlyZWN0b3IgR0NIUSBKZXJlbXkgRmxlbWluZyBzYWlkIDogJ0ZvciBHQ0hRLCBpdCBo YXMgYmVlbiBhIGNlbnR1cnkgb2YgDQpzaG9ydGVuaW5nIHdhcnMsIHNhdmluZyBsaXZlcyBhbmQg Z2l2aW5nIHRoZSBVSyBhIHRlY2huaWNhbCBlZGdlLg0KDQonSSBjYW4ndCBwcmVkaWN0IHdoYXQg R0NIUSB3aWxsIGxvb2sgbGlrZSAxMDAgeWVhcnMgZnJvbSBub3cuIFdobyB3ZSBhcmUgDQpoYXMg YmVlbiBzaGFwZWQgYnkgdGhlIGNoYW5naW5nIHRocmVhdHMgYW5kIHRlY2hub2xvZ3kgYXJvdW5k IHVzLg0KDQonSW4gdGhlIGZ1dHVyZSB3ZSB3aWxsIGNvbnRpbnVlIHRvIGZhY2UgZW5vcm1vdXMg Y29tcGxleGl0eSBidXQgYWxzbyANCmVub3Jtb3VzIG9wcG9ydHVuaXR5LicNCg0KSGUgYWRkZWQ6 ICdPcmdhbmlzYXRpb25zIGxpa2Ugb3VycyB0aGF0IHNlZWsgdG8ga2VlcCB0aGUgY291bnRyeSBz YWZlIA0KY2Fubm90IHNob3V0IGFib3V0IG91ciBtaXNzaW9uLg0KDQonV2Ugd29yayBhZ2FpbnN0 IHRoZSBtb3N0IHNldmVyZSBwcm9ibGVtcyB0aGF0IHRoZSBjb3VudHJ5IGZhY2VzOiB3ZSANCnRh Y2tsZSBzZXJpb3VzIGN5YmVyLCB0ZXJyb3Jpc3QsIGNyaW1pbmFsLCBhbmQgc3RhdGUgdGhyZWF0 cy4NCg0KJ0FuZCB3ZSdyZSBkb2luZyB0aGF0IGluIGFuIGluY3JlYXNpbmdseSB0cmFuc3BhcmVu dCBhbmQgb3BlbiB3YXkuIEkgDQp3ZWxjb21lIHRoaXMgc2hpZnQuJw0KDQotLS0tLS0NClJlYWQg bW9yZSA6DQotIFRoZSBHQ0hRIGxpc3RlbmluZyBwb3N0IHlvdSBjYW4gcmVudCBmb3IgwqMyLDAw MCBhIG5pZ2h0DQoNCmh0dHBzOi8vd3d3LnRlbGVncmFwaC5jby51ay9uZXdzLzIwMTkvMTEvMDEv Z2NocS1saXN0ZW5pbmctcG9zdC1jYW4tcmVudC0yMDAwLW5pZ2h0Lw0KLS0tDQoNCmh0dHBzOi8v d3d3LmRhaWx5bWFpbC5jby51ay9uZXdzL2FydGljbGUtNzYzNzQ4MS9UaGUtaHV0cy1zYW5rLUJp c21hcmNrLmh0bWwNCg0KaHR0cHM6Ly9pLmRhaWx5bWFpbC5jby51ay8xcy8yMDE5LzExLzAxLzAw LzIwNDU0MDU4LTc2Mzc0ODEtQ3JvZnRfU3BhX3BpY3R1cmVkX3dhc19ob21lX3RvXzIwX3JhZGlv X29wZXJhdG9yc193b3JraW5nX2Zvcl9Cci1hLTgyXzE1NzI1NjkwNTU0NzUuanBnDQoNCmh0dHBz Oi8vaS5kYWlseW1haWwuY28udWsvMXMvMjAxOS8xMS8wMS8wMC8yMDQ1NDA1Ni03NjM3NDgxLUl0 X3dhc19hX2RpcmVjdGlvbl9maW5kaW5nX3N0YXRpb25fYW5kX3Rob3NlX3dvcmtpbmdfaW5zaWRl X3dlcmUtYS04M18xNTcyNTY5MDU1NDc5LmpwZw0KDQpodHRwczovL2kuZGFpbHltYWlsLmNvLnVr LzFzLzIwMTkvMTEvMDEvMDAvMjA0NTYyOTAtNzYzNzQ4MS1Ub19tYXJrX2l0c18xMDB0aF9hbm5p dmVyc2FyeV9HQ0hRX2hhc19yZXZlYWxlZF90aGVfZ3JvdW5kX2JyZWFrLWEtODFfMTU3MjU2OTA1 NTQ3My5qcGcNCg0KaHR0cHM6Ly9pLmRhaWx5bWFpbC5jby51ay8xcy8yMDE5LzExLzAxLzAxLzIw NDU3MDI4LTc2Mzc0ODEtaW1hZ2UtYS05OV8xNTcyNTcwNTQ2NDE4LmpwZw0KDQpodHRwczovL2ku ZGFpbHltYWlsLmNvLnVrLzFzLzIwMTkvMTEvMDEvMTcvMjA0NTY3MjYtNzYzNzQ4MS1JdnlfRmFy bV9pbl90aGVfS2VudF9jb3VudHJ5c2lkZV93YXNfd2hlcmVfc3RhZmZfZW5jcnlwdGVkX2FfdGVs LWEtMV8xNTcyNjI5ODY2NTIzLmpwZw0KDQpodHRwczovL2kuZGFpbHltYWlsLmNvLnVrLzFzLzIw MTkvMTEvMDEvMDAvMjA0NTY3NDgtNzYzNzQ4MS1pbWFnZS1hLTg4XzE1NzI1Njk5MjAwMTIuanBn DQoNCmh0dHBzOi8vaS5kYWlseW1haWwuY28udWsvMXMvMjAxOS8xMS8wMS8wMS8yMDQ1Njc0Ni03 NjM3NDgxLWltYWdlLW0tOTJfMTU3MjU3MDA4NTE2Mi5qcGcNCg0KaHR0cHM6Ly9pLmRhaWx5bWFp bC5jby51ay8xcy8yMDE5LzExLzAxLzAxLzIwNDU2NzUwLTc2Mzc0ODEtaW1hZ2UtYS05Nl8xNTcy NTcwMjQ1NzU2LmpwZw0KDQpodHRwczovL2kuZGFpbHltYWlsLmNvLnVrLzFzLzIwMTkvMTEvMDEv MDEvMjA0NTY3NDQtNzYzNzQ4MS1pbWFnZS1hLTkzXzE1NzI1NzAxNzgyMzIuanBnDQoNCi0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCg0KaHR0cHM6Ly93d3cuZXhwcmVzcy5jby51ay9u ZXdzL3VrLzExOTg3Mzgvd29ybGQtd2FyLTItZ2NocS1maXZlLXNlY3JldC1sb2NhdGlvbnMtbWFw cGVkLXVrLWludGVsbGlnZW5jZS1uYXppLWhpdGxlci1iaXNtYXJjay1zcHQNCg0KaHR0cHM6Ly9j ZG4uaW1hZ2VzLmV4cHJlc3MuY28udWsvaW1nL2R5bmFtaWMvMS81OTB4L3NlY29uZGFyeS9UaGUt bG9jYXRpb25zLXdlcmUtcmV2ZWFsZWQtdG9kYXktMjE0MjQ0NS5qcGc/cj0xNTcyNjc5MDYzMjMz DQoNCmh0dHBzOi8vd3d3LmV4cHJlc3MuY28udWsvbmV3cy91ay8xMTk3MDc1L3dvcmxkLXdhci0y LXNlY3JldC11bmRlcmdyb3VuZC10dW5uZWxzLWJyaXRhaW4tZnVlbC1uZXR3b3JrLXNwdA0KDQot LS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQpTYXR1cmRheSAwMiBOT1YgMjAxOQ0KDQpVSydzIHNw eSBhZ2VuY3kgR0NIUQ0KdGVsbHMgb2YgZml2ZSBzZWNyZXQgc2l0ZXMgdXNlZCBkdXJpbmcgdGhl IFNlY29uZCBXb3JsZCBXYXINCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tDQoNClRoZSBzaXRlcyBpbiBLZW50LCBMb25kb24gYW5kIERl cmJ5c2hpcmUgd2VyZSB1c2VkIGZvciBpZGVudGlmeWluZyANCnNlY3JldCBjb21tdW5pY2F0aW9u cyBiZXR3ZWVuIEFkb2xmIEhpdGxlciBhbmQgaGlzIGZpZWxkIG1hcnNoYWxzDQoNCi0gIEFiYm90 cyBDbGlmZiBIb3VzZSBpbiBDYXBlbCBsZSBGZXJuZSwgS2VudCwgd2hlcmUgNjAgeW91bmcgR2Vy bWFuLQ0KICAgc3BlYWtpbmcgbGluZ3Vpc3RzIHdlcmUgc3RhdGlvbmVkIGZyb20gMTk0MCBjb2xs ZWN0aW5nIG1lc3NhZ2VzIGZyb20NCiAgIEdlcm1hbiBmb3JjZXMNCg0KVGhlIFVLJ3Mgc3B5IGFn ZW5jeSwgR0NIUSwgaGFzIHJldmVhbGVkIHRoZSBsb2NhdGlvbnMgb2YgZml2ZSBzZWNyZXQgDQpz aXRlcyBpdCB1c2VkIGR1cmluZyB0aGUgU2Vjb25kIFdvcmxkIFdhciBhbmQgQ29sZCBXYXIuDQoN ClRoZSBzaXRlcyBoYXZlIGxvbmcgc2luY2UgYmVlbiBjbG9zZWQgZG93biwgYnV0IHdlcmUgdXNl ZCBmb3IgDQppZGVudGlmeWluZyBzZWNyZXQgY29tbXVuaWNhdGlvbnMgYmV0d2VlbiBBZG9sZiBI aXRsZXIgYW5kIGhpcyBmaWVsZCANCm1hcnNoYWxzLCBhcyB3ZWxsIGFzIGludGVyY2VwdGluZyBh IGZheCBmb3IgdGhlIGZpcnN0IHRpbWUgaW4gQnJpdGlzaCANCmludGVsbGlnZW5jZSBoaXN0b3J5 Lg0KDQpUZWFtcyBiYXNlZCBhdCB0aGUgZml2ZSBwcmV2aW91c2x5IGNvdmVydCBsb2NhdGlvbnMg YWxzbyBoZWxwZWQgdGhlIENvbGQgDQpXYXIgZWZmb3J0cyBhZ2FpbnN0IHRoZSBTb3ZpZXQgVW5p b24gYnkgaW50ZXJjZXB0aW5nIGNvbW11bmljYXRpb25zIGZyb20gDQppdHMgYXJteSwgbmF2eSBh bmQgYWlyIGZvcmNlLg0KDQotICBJdnkgRmFybSwgaW4gS25vY2tob2x0LCBLZW50DQoNCk9wZXJh dGlvbmFsIGluIHRoZSBTZWNvbmQgV29ybGQgV2FyLCBJdnkgRmFybSwgaW4gS25vY2tob2x0LCBL ZW50IHdhcyANCmhvbWUgdG8gdGhlIGhlYWRxdWFydGVycyBmb3IgdGhlIEZvcmVpZ24gT2ZmaWNl IFJlc2VhcmNoIGFuZCBEZXZlbG9wbWVudCANCkVzdGFibGlzaG1lbnQsIHdoaWNoIGhhcyBzaW5j ZSBtb3ZlZCB0byBDaGVsdGVuaGFtLiBTdGFmZiBudW1iZXJlZCANCmJldHdlZW4gNjAgYW5kIDEw MC4NCg0KUmF0aGVyIHRoYW4gbW9uaXRvcmluZyB2b2ljZSBvciBNb3JzZSBjb2RlLCBmb3IgdGhl IGZpcnN0IHRpbWUgaW4gVUsgDQppbnRlbGxpZ2VuY2UgaGlzdG9yeSBzdGFmZiBhdCBJdnkgRmFy bSBpbnZlc3RpZ2F0ZWQgd2hhdCBpcyBrbm93biBhcyANCiJub2lzZSIgLSBzb3VuZCB3aGljaCBk b2VzIG5vdCBjYXJyeSBodW1hbiBjb21tdW5pY2F0aW9ucy4NCg0KU3VjaCBub2lzZSB3YXMgZm91 bmQgdG8gY2FycnkgdGhlIHNlY3JldCB0byBBZG9sZiBIaXRsZXIncyBtb3N0IHNlY3VyZSANCmNv bW11bmljYXRpb25zIHdpdGggaGlzIGZpZWxkIG1hcnNoYWxzIGFjcm9zcyBFdXJvcGUuIEl0IHVz ZWQgZW5jcnlwdGVkIA0KdGVsZXByaW50ZXIgdGVjaG5vbG9neSwgd2hpY2ggd2FzIG1hbnkgbW9y ZSB0aW1lcyBzZWN1cmUgdGhhbiB0aGUgRW5pZ21hIA0KY29kZS4NCg0KU3RhZmYgc3VjY2Vzc2Z1 bGx5IGludGVyY2VwdGVkIGFuZCBpc29sYXRlZCBtZXNzYWdlcyB3aXRoaW4gdGhlICJub2lzZSIg DQp3aGljaCB3YXMgcGFzc2VkIG9uIHRvIEJsZXRjaGxleSBQYXJrIHRvIGRlY2lwaGVyIGFuZCB1 bHRpbWF0ZWx5IGxlYWQgdG8gDQp0aGUgY3JlYXRpb24gb2YgdGhlIHdvcmxkJ3MgZmlyc3QgY29t cHV0ZXIgQ29sb3NzdXMuDQoNCkl2eSBGYXJtIHdhcyBhbHNvIHJlc3BvbnNpYmxlIGZvciB0aGUg Zmlyc3QtZXZlciBVSyBpbnRlcmNlcHRpb24gb2YgYSBmYXguDQoNCkEgSmFwYW5lc2UgcHJlc3Mg YXR0YWNoZSBpbiBCZXJsaW4gaGFkIHNlbnQgYSBmYXggZmVhdHVyaW5nIGRldGFpbHMgb2YgDQpV UyBib21iZXIgc3F1YWRyb25zIGFuZCBmb3JtYXRpb25zIHRvIGEgVG9reW8tYmFzZWQgcHJlc3Mg YWdlbmN5LCANCmludGVuZGVkIGZvciB0aGUgSmFwYW5lc2UgbWlsaXRhcnkgc28gdGhleSBjb3Vs ZCBiZXR0ZXIgYXR0YWNrIHRoZSBVUyANCmFpciBmb3JjZS4NCg0KVGhpcyBpbmZvcm1hdGlvbiB3 YXMgcGFzc2VkIHRvIFVTIGFsbGllcyBzbyB0aGV5IGNvdWxkIGFkYXB0IHRoZWlyIA0KdGFjdGlj cyBhY2NvcmRpbmdseS4NCg0KLSAgQWJib3RzIENsaWZmIEhvdXNlLCBLZW50IDoNCiAgICBBIHJl Y2VpdmVyIGNvbnRyb2wgYmF5IGluIEtub2NraG9sdCwgS2VudCwgd2hlcmUgc3RhZmYgd29ya2Vk IG9uDQogICAgZGVjb2RpbmcgaGVhdmlseSBlbmNyeXB0ZWQgR2VybWFuIG1lc3NhZ2VzDQoNCk9w ZXJhdGlvbmFsIGJldHdlZW4gMTk0MCBhbmQgMTk0NSwgQWJib3RzIENsaWZmIEhvdXNlIGF0IENh cGVsIGxlIEZlcm5lIA0KbmVhciBGb2xrZXN0b25lIGhhZCBiZXR3ZWVuIDUwIGFuZCA2MCBzdGFm Zi4NCg0KVGhlIGJhc2UgY29sbGVjdGVkIFZlcnkgSGlnaCBGcmVxdWVuY3kgKCBWSEYgKSBjb21t dW5pY2F0aW9ucyBmcm9tIA0KR2VybWFueSBkaXJlY3RpbmcgYWlyY3JhZnQgb3IgZmFzdCBtb3Zp bmcgRS1ib2F0cyBpbiB0aGUgRW5nbGlzaCBDaGFubmVsLg0KDQpWSEYgaGFzIGEgdmVyeSBzaG9y dCByYW5nZSB3aGljaCBtZWFudCB0aGF0IEdlcm1hbi1zcGVha2luZyBsaW5ndWlzdHMsIA0KbWFp bmx5IHlvdW5nIHdvbWVuLCB3ZXJlIHNlbnQgdG8gdGhlIGZyb250IGxpbmUgdG8gbGl2ZS1sb2cg dGhlIA0KY29tbXVuaWNhdGlvbnMuDQoNClRoaXMgdHlwZSBvZiBpbnRlcmNlcHRpb24gaGFkIG5l dmVyIGJlZW4gZG9uZSBiZWZvcmUgZm9yIHZvaWNlIA0KY29tbXVuaWNhdGlvbnMgYW5kIHRoZSB0 YWN0aWNhbCBuYXR1cmUgb2YgdGhpcyBqb2IgbWVhbnQgdGhhdCBldmVyeSBkYXkgDQp0aGUgaW5m b3JtYXRpb24gY29sbGVjdGVkIGJ5IHRoZXNlIHdvcmtlcnMgd2FzIGhlbHBpbmcgdG8gcHJvdGVj dCANCkJyaXRpc2ggcGlsb3RzIGFuZCBzYWlsb3JzLg0KDQpHZXJtYW4gZm9yY2VzIHdvdWxkIHRy eSB0byBjYXB0dXJlIEJyaXRpc2ggcGlsb3RzIGRvd25lZCBvdmVyIHRoZSANCkNoYW5uZWwgYW5k IGluZm9ybWF0aW9uIGZyb20gQWJib3RzIENsaWZmIEhvdXNlIHdvdWxkIGhhdmUgaGVscGVkIHNh dmUgDQpzb21lIEJyaXRpc2ggcGlsb3RzIGR1cmluZyB0aGUgd2FyLg0KDQpUaGUgYnVpbGRpbmcg c3RpbGwgZXhpc3RzIHRvZGF5IGFuZCBvdmVybG9va3MgdGhlIGNvYXN0IHRvIEZyYW5jZS4NCg0K LSAgQ2hlc3RlcmZpZWxkIFN0cmVldCwgTG9uZG9uIDoNCiAgICAxMCBDaGVzdGVyZmllbGQgU3Ry ZWV0LCB0aGUgYW5vbnltb3VzIHRvd25ob3VzZSBub3cgdXNlZCB0byBiZSB0aGUNCiAgICBoZWFk cXVhcnRlcnMgb2YgR0NIUSdzIENvbGQgV2FyIG9wZXJhdGlvbnMNCg0KVGhlIHNpdGUgaW4gTWF5 ZmFpciBiZWdhbiBvcGVyYXRpb25zIHdpdGggYXJvdW5kIDEwIHBlb3BsZSBpbiAxOTQ0IGFuZCAN CmV2ZW50dWFsbHkgaGFkIHVwIHRvIDYwIHN0YWZmLg0KDQpUaGUgb2ZmaWNlIGJsb2NrIGhvdXNl ZCB0aGUgYmVnaW5uaW5ncyBvZiB3aGF0IGJlY2FtZSBHQ0hRIGR1cmluZyB0aGUgDQpDb2xkIFdh ci4NCg0KQWxsIFNvdmlldCB0YXJnZXRzIHdlcmUgd29ya2VkIG9uIGZyb20gdGhlIG9mZmljZSBh bmQgdGhlIGZpcnN0IA0KaW50ZXJjZXB0aW9uIG9mIGVuZW15IGFybXksIG5hdnkgYW5kIGFpciBm b3JjZSBjb21tdW5pY2F0aW9ucyB3YXMgDQphY2hpZXZlZCBoZXJlLg0KDQpUaGUgb2ZmaWNlIHN0 YXllZCBvcGVuIHVudGlsIDE5NTMgd2hlbiB0aGUgUGFsbWVyIFN0cmVldCBvZmZpY2UgbmVhciBT dCANCkphbWVzJyBQYXJrIHdhcyBvcGVuZWQgdG8gY29uc29saWRhdGUgYWxsIExvbmRvbiBvcGVy YXRpb25zLg0KDQpCaWxsIEJvbnNhbGwgam9pbmVkIGFzIG9uZSBvZiB0aGUgMTAgZmlyc3QgZW1w bG95ZWVzIGluIDE5NDQsIG1haW5seSANCndvcmtpbmcgb24gR2VybWFuIGFpciBmb3JjZSBpbnRl cmNlcHQuIEhlIHdlbnQgb24gdG8gYmVjb21lIGRpcmVjdG9yIG9mIA0KR0NIUSBpbiAxOTczLg0K DQpUaGUgQ2hlc3RlcmZpZWxkIG9mZmljZSBpcyBub3cgdGhlIHNpdGUgb2YgdGhlIEhpZ2ggQ29t bWlzc2lvbiBvZiBUaGUgDQpCYWhhbWFzLg0KDQotICBNYXJzdG9uLiBNb250Z29tZXJ5LCBEZXJi eXNoaXJlIDoNCiAgICBBIGZheCBpbnRlcmNlcHRlZCBhbmQgdHJhbnNsYXRlZCBieSBHQ0hRIHN0 YWZmIGR1cmluZyB0aGUgc2Vjb25kDQogICAgd29ybGQgd2FyZQ0KDQpUaGlzIHNpdGUsIG1hZGUg dXAgb2YgYSBzZXJpZXMgb2Ygd29vZGVuIGh1dHMgaW4gYSByZW1vdGUgbG9jYXRpb24sIHdhcyAN Cm9wZXJhdGlvbmFsIGJldHdlZW4gMTk0MSBhbmQgMTk0NyB3aXRoIGFyb3VuZCAxMDAgcGVvcGxl IGJhc2VkIGhlcmUuDQoNClNldCB1cyBhcyBhbiBvdXRzdGF0aW9uIG9mIFJBRiBDaGVhZGxlLCB0 aGUgaGVhZCBvZmZpY2UgZm9yIHRoZSBSQUYncyANClNpZ2ludCB1bml0LCBNYXJzdG9uIE1vbnRn b21lcnkgd2FzIHRoZSBob21lIG9mIHRlY2huaWNhbCByYWRpbyBhbmQgDQpvcGVyYXRvciBmaW5n ZXItcHJpbnRpbmcuDQoNClN0YWZmIHdvdWxkIGxpc3RlbiB0byBhdCBsZWFzdCAyNSBkaWZmZXJl bnQgb3BlcmF0b3JzIGVhY2gsIGlkZW50aWZ5aW5nIA0KaW5kaXZpZHVhbCByYWRpbyBzaWduYWxz IC0gZm9yIGV4YW1wbGUgYnkgdGhlIHNwZWVkIHRoYXQgcGVvcGxlIHdvdWxkIA0KdHlwZSBvdXQg TW9yc2UgY29kZS4NCg0KT25jZSBlbmVteSBvcGVyYXRvcnMgd2VyZSBpZGVudGlmaWVkLCB0aGlz IGluZm9ybWF0aW9uIGNvdWxkIGJlIHVzZWQgdG8gDQpwaWVjZSB0b2dldGhlciB0cm9vcCBtb3Zl bWVudHMuDQoNClRoaXMgd2FzIHRoZSBmaXJzdCBHQ0hRIGJhc2UgdG8gaGF2ZSBhIHdvbWFuIGNv bW1hbmRlciwgMm5kIG9mZmljZXIgDQpQYW1lbGEgUGlnZW9uLg0KDQpJdCB3YXMgZGlzbWFudGxl ZCBhZnRlciB0aGUgd2FyLg0KDQotICBDcm9mdCBTcGEsIFNjYXJib3JvdWdoIDoNCiAgICBDcm9m dCBTcGEgaW4gU2NhcmJvcm91Z2ggd2FzIGhvbWUgdG8gMjAgcmFkaW8gb3BlcmF0b3JzIHdvcmtp bmcgZm9yDQogICAgQnJpdGFpbidzIHNweSBhZ2VuY3kgR0NIUQ0KDQpBcm91bmQgMjAgcGVvcGxl IHdvcmtlZCBpbiB0aGUgY291bnRyeXNpZGUgbmVhciB0aGUgTm9ydGggWW9ya3NoaXJlIA0Kc2Vh c2lkZSB0b3duIGJldHdlZW4gMTk0MCBhbmQgMTk3NS4NCg0KSXQgd2FzIGEgZGlyZWN0aW9uLWZp bmRpbmcgc3RhdGlvbiB0aGF0IHdvcmtlZCBpbiBjb25qdW5jdGlvbiB3aXRoIG90aGVyIA0Kc2l0 ZXMgdG8gcGlucG9pbnQgdGhlIGxvY2F0aW9uIG9mIGVuZW15IHNpZ25hbHMgZnJvbSBzaGlwcyBp biB0aGUgTm9ydGggU2VhLg0KDQpUaGUgc3RhZmYgZnJlcXVlbnRseSBoYWQgdG8gYXNrIGZhcm1l cnMgdG8gc3RvcCB0aGVpciB3b3JrIHdpdGhvdXQgZ2l2ZW4gDQp0aGVtIGEgcmVhc29uIC0gd2hp Y2ggd2FzIHRvIGVuc3VyZSBub2lzZSBmcm9tIHRoZWlyIG1hY2hpbmVyeSBkaWQgbm90IA0KaW50 ZXJmZXJlIHdpdGggdGhlIGNvbGxlY3Rpb24gb2YgdGhlIGltcG9ydGFudCBjb21tdW5pY2F0aW9u cy4NCg0KDQpodHRwczovL3d3dy5taXJyb3IuY28udWsvbmV3cy91ay1uZXdzL3Vrcy1zcHktYWdl bmN5LWdjaHEtdGVsbHMtMjA3OTMxNTENCg0KaHR0cHM6Ly9pMi1wcm9kLm1pcnJvci5jby51ay9p bmNvbWluZy9hcnRpY2xlMjA3OTMxNzAuZWNlL0FMVEVSTkFURVMvczgxMC8wXzIwNDU2NzQ4LTc2 Mzc0ODEtaW1hZ2UtYS04OF8xNTcyNTY5OTIwMDEyLmpwZw0KDQpodHRwczovL2kyLXByb2QubWly cm9yLmNvLnVrL2luY29taW5nL2FydGljbGUyMDc5MzE3NS5lY2UvQUxURVJOQVRFUy9zNjE1Yi8w XzE5NDIuanBnDQoNCmh0dHBzOi8vaTItcHJvZC5taXJyb3IuY28udWsvaW5jb21pbmcvYXJ0aWNs ZTIwNzkzMTczLmVjZS9BTFRFUk5BVEVTL3M2MTViLzBfMTM0MC5qcGcNCg0KaHR0cHM6Ly9pMi1w cm9kLm1pcnJvci5jby51ay9pbmNvbWluZy9hcnRpY2xlMjA3OTMxNzEuZWNlL0FMVEVSTkFURVMv czYxNWIvMF8yMDQ1Njc0NC03NjM3NDgxLWltYWdlLWEtOTNfMTU3MjU3MDE3ODIzMi5qcGcNCg0K aHR0cHM6Ly9pMi1wcm9kLm1pcnJvci5jby51ay9pbmNvbWluZy9hcnRpY2xlMjA3OTMxNzQuZWNl L0FMVEVSTkFURVMvczYxNWIvMF8zNDM4LmpwZw0KDQpodHRwczovL2kyLXByb2QubWlycm9yLmNv LnVrL2luY29taW5nL2FydGljbGUyMDc5MzE3Mi5lY2UvQUxURVJOQVRFUy9zNjE1Yi8wX2hvbWVf dG9fMjBfcmFkaW9fb3BlcmF0b3JzX3dvcmtpbmdfZm9yX0JyLWEtODJfMTU3MjU2OTA1NTQ3NS5q cGcNCg0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQoNClB1Ymxpc2hlZCBGcmlkYXkgTm92ZW1iZXIg MDEgMjAxOQ0KDQpJbnRlbGxpZ2VuY2Ugd29yayBhdCBzZWNyZXQgc2l0ZXMgcmV2ZWFsZWQgZm9y IHRoZSBmaXJzdCB0aW1lDQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tDQoNClRvIG1hcmsgb3VyIDEwMHRoIGFubml2ZXJzYXJ5LCB3 ZSByZXZlYWwgdGhlIGdyb3VuZC1icmVha2luZyB3b3JrIGRvbmUgDQphdCBmaXZlIGZvcm1lciBz ZWNyZXQgc2l0ZXMgZm9yIHRoZSBmaXJzdCB0aW1lDQoNCi0gIEtub2NraG9sdCBSZWNlaXZlciBD b250cm9sIEJheQ0KDQogRnJvbSBmaXZlIHVubGlrZWx5IGxvY2F0aW9ucyBhY3Jvc3MgdGhlIFVL LCBpbmNsdWRpbmcgYSBmYXJtLWhvdXNlIA0Kb3V0c2lkZSBMb25kb24gYW5kIGEgbWFub3Igb24g dGhlIFdoaXRlIENsaWZmcyBvZiBEb3ZlciwgR0NIUSBjYXJyaWVkIA0Kb3V0IHRvcCBzZWNyZXQg b3BlcmF0aW9ucywgaW5jbHVkaW5nOg0KDQotIElkZW50aWZ5aW5nIGFuZCBkZWNpcGhlcmluZyBz ZWNyZXQgY29tbXVuaWNhdGlvbnMgYmV0d2VlbiBBZG9sZiBIaXRsZXIgDQphbmQgaGlzIGZpZWxk IG1hcnNoYWxzOw0KDQotICBJbnRlcmNlcHRpbmcgYSBmYXggZm9yIHRoZSBmaXJzdCB0aW1lIGlu IEJyaXRpc2ggaW50ZWxsaWdlbmNlIGhpc3RvcnkgDQp0byBoZWxwIHByZXZlbnQgSmFwYW5lc2Ug ZmlnaHRlciBwaWxvdHMgZ2V0dGluZyB0aGUgYmV0dGVyIG9mIG91ciANCkFtZXJpY2EgYWxsaWVz OyBhbmQNCg0KLSAgTW91bnRpbmcgb3VyIENvbGQgV2FyIGVmZm9ydHMgYWdhaW5zdCB0aGUgU292 aWV0IFVuaW9uLCBieSBwaW9uZWVyaW5nIA0KdGhlIGludGVyY2VwdGlvbiBvZiBjb21tdW5pY2F0 aW9ucyBmcm9tIGl0cyBhcm15LCBuYXZ5IGFuZCBhaXIgZm9yY2UuDQoNCldlIGhhdmUgcmV2ZWFs ZWQgdGhlIHdvcmsgZG9uZSBhdCB0aGVzZSBsaXR0bGUta25vd24gc2l0ZXMgdG8gcHJvdmlkZSBh biANCmluc2lnaHQgaW50byBzaWduYWxzIGludGVsbGlnZW5jZSBvdmVyIHRoZSBjb3Vyc2Ugb2Yg b3VyIDEwMC15ZWFyIGhpc3RvcnkuDQoNClRoZXNlIGxvY2F0aW9ucywgZG90dGVkIGFyb3VuZCB0 aGUgVUssIGhhdmUgbG9uZyBzaW5jZSBjbG9zZWQgZG93biDigJMgdG8gDQpiZSByZXBsYWNlZCBi eSB0aGUgb3JnYW5pc2F0aW9u4oCZcyBiZXR0ZXIga25vd24gc2l0ZXMgaW4gQ2hlbHRlbmhhbSwg QnVkZSANCmFuZCBTY2FyYm9yb3VnaCwgYW5kIHRoZSBOYXRpb25hbCBDeWJlciBTZWN1cml0eeKA mXMgb2ZmaWNlcyBpbiBWaWN0b3JpYSwgDQpMb25kb24uDQoNCkFzIERpcmVjdG9yIEdDSFEgSmVy ZW15IEZsZW1pbmcgaGFzIHNhaWQsIHRoZSBwYXN0IGNlbnR1cnkgaGFzIHNlZW4gR0NIUSANCuKA nHNhdmUgY291bnRsZXNzIGxpdmVzLCBnaXZlbiBCcml0YWluIGFuIGVkZ2UsIGFuZCBzb2x2ZSBh bmQgaGFybmVzcyBzb21lIA0Kb2YgdGhlIHdvcmxk4oCZcyBtb3N0IGNvbXBsZXggdGVjaG5vbG9n aWNhbCBjaGFsbGVuZ2Vz4oCdLg0KDQogRnJvbSBhIHF1aWV0IGZhcm0gaG91c2UgaW4gS2VudCB0 byBhIGRpc2NyZWV0IG9mZmljZSBibG9jayBpbiBNYXlmYWlyLCANCm91ciAxMDAteWVhciBoaXN0 b3J5IGlzIGZ1bGwgb2Ygb3JkaW5hcnkgcGVvcGxlIHdvcmtpbmcgdG9nZXRoZXIgdG8gDQpzb2x2 ZSBleHRyYW9yZGluYXJ5IHByb2JsZW1zLiBUaGF0IHdvcmsgY29udGludWVzIHRvZGF5IGF0IGFu ZCBhcm91bmQgDQpzZWNyZXQgbG9jYXRpb25zIGFjcm9zcyB0aGUgVUsuDQoNCkl2eSBGYXJtIDog SW50ZXJjZXB0aW5nIEhpdGxlcuKAmXMgb3JkZXJzDQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLQ0KT3BlcmF0aW9uYWwgaW4gdGhlIFNlY29uZCBXb3JsZCBXYXIsIEl2eSBGYXJtLCBL bm9ja2hvbHQgS2VudCB3YXMgdGhlIA0KaG9tZSB0byB0aGUgSGVhZHF1YXJ0ZXJzIGZvciB0aGUg Rm9yZWlnbiBPZmZpY2UgUmVzZWFyY2ggYW5kIERldmVsb3BtZW50IA0KRXN0YWJsaXNobWVudCwg d2hpY2ggc2l0cyB3aXRoaW4gR0NIUSBpbiBDaGVsdGVuaGFtIHRvZGF5LiBTdGFmZiANCm51bWJl cmVkIGJldHdlZW4gNjAtMTAwLg0KDQpPcGVyYXRpb25zIDogUmF0aGVyIHRoYW4gbW9uaXRvcmlu ZyB2b2ljZSBvciBNb3JzZSBDb2RlLCBmb3IgdGhlIGZpcnN0IA0KdGltZSBpbiBVSyBJbnRlbGxp Z2VuY2UgaGlzdG9yeSBzdGFmZiBhdCBJdnkgRmFybSBpbnZlc3RpZ2F0ZWQgd2hhdCBpcyANCmtu b3duIGFzIOKAnG5vaXNl4oCdIOKAkyBzb3VuZCB3aGljaCBkb2VzIG5vdCBjYXJyeSBodW1hbiBj b21tdW5pY2F0aW9ucy4gU29tZSANCm9mIHRoZSBVS+KAmXMgYnJpZ2h0ZXN0IHRlY2hub2xvZ2lz dHMgd2VyZSBicm91Z2h0IGluIHRvIHdvcmsgYXQgdGhpcyANCnNpdGUsIGluY2x1ZGluZyBmcm9t IHRoZSBQb3N0IE9mZmljZSAoIHdoZXJlIFRvbW15IEZsb3dlcnMsIHdobyBtYWRlIHRoZSANCndv cmxk4oCZcyBmaXJzdCBjb21wdXRlciBzdGFydGVkIHdvcmsgb24gQ29sb3NzdXMgKS4gVGhpcyBu b2lzZSBjYXJyaWVkIA0KdGhlIHNlY3JldCB0byBBZG9sZiBIaXRsZXLigJlzIG1vc3Qgc2VjdXJl IGNvbW11bmljYXRpb25zIHdpdGggaGlzIGZpZWxkIA0KbWFyc2hhbGxzIGFjcm9zcyBFdXJvcGUu IEl0IHVzZWQgZW5jcnlwdGVkIHRlbGVwcmludGVyIHRlY2hub2xvZ3ksIHdoaWNoIA0Kd2FzIG1h bnkgbW9yZSB0aW1lcyBzZWN1cmUgdGhhbiBFbmlnbWEuDQoNCkludGVyZXN0aW5nIEZhY3QgOiBT dGFmZiBzdWNjZXNzZnVsbHkgaW50ZXJjZXB0ZWQgYW5kIGlzb2xhdGVkIHRoaXMgDQrigJxub2lz ZeKAnSB3aGljaCB3YXMgcGFzc2VkIG9udG8gQmxldGNobGV5IHRvIGRlY2lwaGVyLCBhbmQgdWx0 aW1hdGVseSBsZWFkIA0KdG8gdGhlIGNyZWF0aW9uIG9mIHRoZSB3b3JsZOKAmXMgZmlyc3QgY29t cHV0ZXIgQ29sb3NzdXMuIFRoZSBzaXRlIHdhcyANCmFsc28gcmVzcG9uc2libGUgZm9yIHRoZSBm aXJzdC1ldmVyIFVLIGludGVyY2VwdGlvbiBvZiBmYXguIEEgSmFwYW5lc2UgDQpwcmVzcyBhdHRh Y2hlzIEgaW4gQmVybGluIGhhZCBzZW50IGEgZmF4LCBmZWF0dXJpbmcgZGV0YWlscyBvZiBVUyBi b21iZXIgDQpzcXVhZHJvbnMgYW5kIGZvcm1hdGlvbnMsIHRvIGEgVG9reW8tYmFzZWQgcHJlc3Mg YWdlbmN5IGludGVuZGVkIGZvciB0aGUgDQpKYXBhbmVzZSBtaWxpdGFyeSBzbyB0aGV5IGNvdWxk IGJldHRlciBhdHRhY2sgdGhlIFVTIGFpciBmb3JjZS4gVGhpcyANCmluZm9ybWF0aW9uIHdhcyBw YXNzZWQgdG8gVVMgYWxsaWVzIHNvIHRoZXkgY291bGQgYWRhcHQgdGhlaXIgdGFjdGljcyANCmFj Y29yZGluZ2x5Lg0KDQpBYmJvdHMgQ2xpZmYgSG91c2UgOiBXb21lbiBwcm90ZWN0aW5nIHRoZSBX aGl0ZSBDbGlmZnMgb2YgRG92ZXINCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KT3BlcmF0aW9uYWwgYmV0d2VlbiAxOTQwIGFu ZCAxOTQ1LCBBYmJvdHMgQ2xpZmYgSG91c2UgYXQgQ2FwZWwgbGUgRmVybmUgDQpoYWQgYmV0d2Vl biA1MC0gNjAgcGVvcGxlIHdvcmtpbmcgdGhlcmUuDQoNCk9wZXJhdGlvbnMgOiBUaGlzIGJhc2Ug Y29sbGVjdGVkIFZlcnkgSGlnaCBGcmVxdWVuY3kgKFZIRikgDQpjb21tdW5pY2F0aW9ucyBmcm9t IEdlcm1hbnkgZGlyZWN0aW5nIGFpcmNyYWZ0IG9yIGZhc3QgbW92aW5nIEUtYm9hdHMgaW4gDQp0 aGUgRW5nbGlzaCBDaGFubmVsLiBWSEYgaGFzIGEgdmVyeSBzaG9ydCByYW5nZSB3aGljaCBtZWFu dCB0aGF0IEdlcm1hbiANCmxpbmd1aXN0cywgbWFpbmx5IHlvdW5nIHdvbWVuLCB3ZXJlIHNlbnQg dG8gdGhlIGZyb250IGxpbmUgdG8gbGl2ZSBsb2cgDQp0aGUgY29tbXVuaWNhdGlvbnMuDQoNCklu dGVyZXN0aW5nIEZhY3QgOiBUaGlzIHR5cGUgb2YgaW50ZXJjZXB0aW9uIGhhZCBuZXZlciBiZWVu IGRvbmUgYmVmb3JlIA0KZm9yIHZvaWNlIGNvbW11bmljYXRpb25zIGFuZCB0aGUgdGFjdGljYWwg bmF0dXJlIG9mIHRoaXMgam9iIG1lYW50IHRoYXQgDQpldmVyeSBkYXkgdGhlIGluZm9ybWF0aW9u IGNvbGxlY3RlZCBieSB0aGVzZSB5b3VuZyB3b21lbiB3YXMgaGVscGluZyB0byANCnByb3RlY3Qg QnJpdGlzaCBwaWxvdHMgYW5kIHNhaWxvcnMuIEdlcm1hbiBmb3JjZXMgd291bGQgdHJ5IHRvIGNh cHR1cmUgDQpCcml0aXNoIHBpbG90cyBkb3duZWQgb3ZlciB0aGUgQ2hhbm5lbCBhbmQgaW5mb3Jt YXRpb24gZnJvbSBBYmJvdHMgQ2xpZmYgDQpIb3VzZSB3b3VsZCBoYXZlIGhlbHBlZCB0byBzYXZl IHNvbWUgQnJpdGlzaCBwaWxvdHMgZHVyaW5nIHRoZSB3YXIuDQoNClRvZGF5IDogQWJib3RzIENs aWZmIEhvdXNlIGlzIHN0aWxsIHRoZXJlIHRvZGF5LCB3aXRoIHZpZXdzIGFjcm9zcyB0byANCkZy YW5jZS4NCg0KQ2hlc3RlcmZpZWxkIFN0cmVldCA6IFRoZSBzdGFydCBvZiBDb2xkIFdhciBvcGVy YXRpb25zDQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0NCk9wZXJhdGlvbmFsIGJldHdlZW4gMTk0NC0xOTUzIHRoZSBzaXRlIGluIE1heWZhaXIs IExvbmRvbiwgc3RhcnRlZCB3aXRoIA0KYXJvdW5kIDEwIHBlb3BsZSBiZWZvcmUgaG9zdGluZyB1 cCB0byA2MCBhdCBjYXBhY2l0eS4NCg0KT3BlcmF0aW9ucyA6IFRoaXMgb2ZmaWNlIGJsb2NrIHdh cyB0aGUgc3RhcnQgb2Ygd2hhdCBiZWNhbWUgR0NIUSBpbiB0aGUgDQpDb2xkIFdhci4gQWxsIHNv dmlldCB0YXJnZXRzIHdlcmUgd29ya2VkIG9uIGZyb20gdGhpcyBvZmZpY2UgYW5kIHRoZSANCmZp cnN0IGludGVyY2VwdGlvbiBvZiBhcm15LCBuYXZ5IGFuZCBhaXIgZm9yY2Ugd2FzIGFjaGlldmVk IGhlcmUuIFRoZSANCm9mZmljZSBzdGF5ZWQgb3BlbiB1bnRpbCAxOTUzIHdoZW4gdGhlIHJlY2Vu dGx5IGF2b3dlZCBQYWxtZXIgU3RyZWV0IA0Kb2ZmaWNlIG5lYXIgU3QgSmFtZXPigJkgUGFyayB3 YXMgb3BlbmVkIHRvIGNvbnNvbGlkYXRlIGFsbCBvZiBvdXIgTG9uZG9uIA0Kb2ZmaWNlcw0KDQpJ bnRlcmVzdGluZyBGYWN0IDogQmlsbCBCb25zYWxsIGpvaW5lZCBhcyBvbmUgb2YgdGhlIDEwIHBl b3BsZSBpbiAxOTQ0LCANCm1haW5seSB3b3JraW5nIG9uIEdlcm1hbiBBaXJmb3JjZSBpbnRlcmNl cHQuIEhlIGxhdGVyIHdlbnQgb250byBiZWNvbWUgDQpEaXJlY3RvciBHQ0hRIGluIDE5NzMuDQoN ClRvZGF5IDogSXQgaXMgbm93IHRoZSBzaXRlIG9mIHRoZSBIaWdoIENvbW1pc3Npb24gb2YgVGhl IEJhaGFtYXMgd2hpY2ggDQp3YXMgZmlyc3QgZXN0YWJsaXNoZWQgaW4gdGhlIDE5NzBzLg0KDQpN YXJzdG9uIE1vbnRnb21lcnkgOiBUaGUgZmlyc3Qgd29tYW4gY29tbWFuZGVyDQotLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQpUaGlzIHNpdGUsIGluIE1hcnN0 b24gTW9udGdvbWVyeSwgRGVyYnlzaGlyZSwgbWFkZSB1cCBvZiBhIHNlcmllcyBvZiANCndvb2Rl biBodXRzIGluIGEgcmVtb3RlIGxvY2F0aW9uLCB3YXMgc2V0IHVwIGluIDE5NDEgYW5kIGNsb3Nl ZCBpbiAxOTQ3LiANCkFyb3VuZCAxMDAgcGVvcGxlIHdlcmUgYmFzZWQgaGVyZS4NCg0KT3BlcmF0 aW9ucyA6IFNldCB1cyBhcyBhbiBvdXRzdGF0aW9uIG9mIFJBRiBDaGVhZGxlLCB0aGUgSGVhZCBP ZmZpY2UgZm9yIA0KUkFGIFNpZ2ludCwgTWFyc3RvbiBNb250Z29tZXJ5IHdhcyB0aGUgaG9tZSBv ZiB0ZWNobmljYWwgcmFkaW8gYW5kIA0Kb3BlcmF0b3IgZmluZ2VycHJpbnRpbmcuIFN0YWZmIHdv dWxkIGJlIGxpc3RlbmluZyB0byBhdCBsZWFzdCAyNSANCmRpZmZlcmVudCBvcGVyYXRvcnMgZWFj aCwgaWRlbnRpZnlpbmcgaW5kaXZpZHVhbCByYWRpbyBzaWduYWxzIOKAkyBmb3IgDQpleGFtcGxl IGJ5IHRoZSBzcGVlZCB0aGF0IHBlb3BsZSB3b3VsZCB0eXBlIG91ciBNb3JzZSBjb2RlLiBPbmNl IGVuZW15IA0Kb3BlcmF0b3JzIHdlcmUgaWRlbnRpZmllZCB0aGlzIGluZm9ybWF0aW9uIGNvdWxk IGJlIHVzZWQgdG8gcGllY2UgDQp0b2dldGhlciB0cm9vcCBtb3ZlbWVudHMuDQoNCkludGVyZXN0 aW5nIEZhY3Q6IFRoaXMgd2FzIHRoZSBmaXJzdCBHQ0hRIGJhc2UgdG8gaGF2ZSBhIHdvbWFuIA0K Y29tbWFuZGVyLCAybmQgb2ZmaWNlciBQYW1lbGEgUGlnZW9uLg0KDQpUb2RheSA6IFRoZSBzaXRl IHdhcyBkaXNtYW50bGVkIGFmdGVyIHRoZSB3YXIuDQoNCkNyb2Z0IFNwYSA6IEZhcm1pbmcgZm9y IGVuZW15IHNpZ25hbHMNCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCkxv Y2F0ZWQgaW4gdGhlIFNjYXJib3JvdWdoIGNvdW50cnlzaWRlIHRoaXMgc2l0ZSB3YXMgb3BlcmF0 aW9uYWwgYmV0d2VlbiANCjE5NDAtIDc1IGFuZCB3YXMgaG9tZSB0byB1cCB0byAyMCBvcGVyYXRv cnMuDQoNCk9wZXJhdGlvbnMgOiBDcm9mdCBTcGEgd2FzIGEgZGlyZWN0aW9uLWZpbmRpbmcgc3Rh dGlvbiDigJMgd2hpY2ggbWVhbnQgaXQgDQp3b3JrZWQgaW4gY29uanVuY3Rpb24gd2l0aCBvdGhl ciBzaXRlcyB0byBwaW5wb2ludCB0aGUgbG9jYXRpb24gb2YgZW5lbXkgDQpzaWduYWxzIGZyb20g c2hpcHMgaW4gdGhlIE5vcnRoIFNlYS4NCg0KSW50ZXJlc3RpbmcgZmFjdCA6IFRoaXMgdGlueSBy dXJhbCBzdGF0aW9uLCBvbiB0aGUgZWRnZSBvZiBhIG1pbGl0YXJ5IA0KZmFjaWxpdHksIHdhcyB0 aGUgcGVyZmVjdCBwbGFjZSB0byBsb2NhdGUgYSBsaXN0ZW5pbmcgc3RhdGlvbiB0byB0aGUgbG93 IA0Kbm9pc2UgZmxvb3IuIEhvd2V2ZXIsIHdoZW4gYWdyaWN1bHR1cmUgYmVjYW1lIG1vcmUgbWVj aGFuaXNlZCwgdGhlIHN0YWZmIA0KZnJlcXVlbnRseSBoYWQgdG8gYXNrIGxvY2FsIGZhcm1lcnMg dG8gc3RvcCB0aGVpciB3b3JrIChidXQgbm90IHRvbGQgDQp3aHkpIHNvIG5vaXNlIGZyb20gdGhl IG1hY2hpbmVyeSBkaWQgbm90IGludGVyZmVyZSB3aXRoIHRoZSBjb2xsZWN0aW9uIA0Kb2YgaW1w b3J0YW50IGNvbW11bmljYXRpb25zLg0KDQoNCmh0dHBzOi8vd3d3LmdjaHEuZ292LnVrL25ld3Mv c2VjcmV0LXNpdGVzLXJldmVhbGVkDQoNCmh0dHBzOi8vczMuZXUtd2VzdC0xLmFtYXpvbmF3cy5j b20vZ2NocS1jb250ZW50L2ltYWdlcy9SZWNlaXZlciUyMENvbnRyb2wlMjBCYXklMjBLbm9ja2hv bHQuanBnDQoNCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQpQdWJsaXNoZWQgMDUg QXByaWwgMjAxOQ0KDQpHQ0hRIFJldmVhbHMgU2VjcmV0IExvbmRvbiBTaXRlDQpGb3IgdGhlIGZp cnN0IHRpbWUgd2UgcmV2ZWFsIHRoZSBzZWNyZXQgTG9uZG9uIHNpdGUNCndlIGhhdmUgb3BlcmF0 ZWQgZnJvbSBmb3Igb3ZlciA2NiB5ZWFycw0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tDQoNCi0gIFBhbG1lciBTdHJlZXQgYnVpbGRpbmcNCg0KT3ZlciBvdXIgMTAwIHll YXIgaGlzdG9yeSBHQ0hRIGhhcyBoYWQgYSBwcmVzZW5jZSBpbiBMb25kb24uIEZvciB0aGUgDQpw YXN0IDY2IHllYXJzIHdlIGhhdmUgYmVlbiBvcGVyYXRpbmcgZnJvbSBhIHNlY3JldCBsb2NhdGlv biB0dWNrZWQgYXdheSANCm9uIGEgYnVzeSBzdHJlZXQgaW4gV2VzdG1pbnN0ZXIgb3Bwb3NpdGUg U3QgSmFtZXMnIFBhcmsgdHViZSBzdGF0aW9uLiANCkZvciB0aGUgZmlyc3QgdGltZSwgd2UgYXJl IGFibGUgdG8gcmV2ZWFsIHRoZSByb2xlIG91ciBQYWxtZXIgU3RyZWV0IA0Kb2ZmaWNlIGhhcyBw bGF5ZWQgaW4ga2VlcGluZyB0aGUgY2FwaXRhbCBhbmQgdGhlIGNvdW50cnkgc2FmZS4NCg0KVG9k YXkncyByZXZlbGF0aW9uIGlzIHBvc3NpYmxlIGFzIEdDSFEsIHdoaWxzdCBtYWludGFpbmluZyBh IExvbmRvbiANCnByZXNlbmNlLCB3aWxsIG5vIGxvbmdlciBvcGVyYXRlIGZyb20gdGhlIGJ1aWxk aW5nLiBJdCBjb21lcyBhcyB3ZSBsb29rIA0KdG8gZnVydGhlciBleHRlbmQgb3VyIG5ldHdvcmsg b2Ygc2l0ZXMgaW4gdGhlIFVLLCB3aXRoIGEgbmV3IHNlY3VyZSANCmZhY2lsaXR5IGluIE1hbmNo ZXN0ZXIgb3BlbmluZyBsYXRlciB0aGlzIHllYXIsIGJyaW5naW5nIGh1bmRyZWRzIG9mIA0Kam9i cyB0byB0aGUgcmVnaW9uLg0KDQpBcyB3ZWxsIGFzIGl0cyBoZWFkcXVhcnRlcnMgaW4gQ2hlbHRl bmhhbSwgR0NIUSBhbHNvIGhhcyBvZmZpY2VzIGluIEJ1ZGUgDQppbiBDb3Jud2FsbCwgU2NhcmJv cm91Z2gsIExpbmNvbG5zaGlyZSBhbmQgSGFycm9nYXRlLiBJbiAyMDE3LCB0aGUgDQonTmF0aW9u YWwgQ3liZXIgU2VjdXJpdHkgQ2VudHJlJyAoIE5DU0MgKSwgd2hpY2ggaXMgcGFydCBvZiBHQ0hR LCBvcGVuZWQgDQppdHMgbmV3IGhlYWRxdWFydGVycyBuZWFyIFZpY3RvcmlhIGluIExvbmRvbi4N Cg0KQW5kIGVhcmxpZXIgdGhpcyB5ZWFyLCBIZXIgTWFqZXN0eSB0aGUgUXVlZW4sIGNvbW1lbW9y YXRlZCBHQ0hRJ3MgDQoxMDAteWVhciBhbm5pdmVyc2FyeSBieSB1bnZlaWxpbmcgYW4gaGlzdG9y aWMgcGxhcXVlIGF0IGEgZGlmZmVyZW50IA0KTG9uZG9uIHNpdGUgLSBXYXRlcmdhdGUgSG91c2Us IHRoZSBmaXJzdCBob21lIGFuZCBiaXJ0aHBsYWNlIG9mIHRoZSANCm9yZ2FuaXNhdGlvbi4NCg0K RGlyZWN0b3Igb2YgR0NIUSwgSmVyZW15IEZsZW1pbmcgc2FpZCA6DQoNCiAgICAgIkFzIHdlIGRl cGFydCBvdXIgUGFsbWVyIFN0cmVldCBzaXRlIGFmdGVyIDY2IHllYXJzLCB3ZSBsb29rIGJhY2sg DQpvbiBhIGhpc3RvcnkgZnVsbCBvZiBhbWF6aW5nIGludGVsbGlnZW5jZSwgd29ybGQtbGVhZGlu ZyBpbm5vdmF0aW9uLCBhbmQgDQp0aGUgaW5nZW5pb3VzIHBlb3BsZSB3aG8gcGFzc2VkIHRocm91 Z2ggdGhvc2Ugc2VjcmV0IGRvb3JzLiBUaGVuLCBhcyANCm5vdywgaXQncyBhIGhpc3RvcnkgZGVm aW5lZCBieSB0aGUgYmVsaWVmIHRoYXQgd2l0aCB0aGUgcmlnaHQgbWl4IG9mIA0KbWluZHMsIGFu eXRoaW5nIGlzIHBvc3NpYmxlLiINCg0KR0NIUSwgb3IgdGhlIEdvdmVybm1lbnQgQ29kZSAmIEN5 cGhlciBTY2hvb2wgKEdDJkNTKSBhcyBpdCB3YXMga25vd24gYXQgDQp0aGUgdGltZSwgd2FzIGVz dGFibGlzaGVkIG9uIDEgTm92ZW1iZXIgMTkxOSBhcyBhIHBlYWNldGltZSANCmNyeXB0YW5hbHl0 aWMgdW5pdCBtYWRlIHVwIGZyb20gc3RhZmYgZnJvbSB0aGUgQWRtaXJhbHR5J3MgUm9vbSA0MCBh bmQgDQp0aGUgV2FyIE9mZmljZSdzIE1JMShiKS4NCg0KRHVyaW5nIFdXSUksIEdDSFEgc3RhZmYg bW92ZWQgdG8gQmxldGNobGV5IFBhcmsgd2hlcmUgdGhleSBkZWNyeXB0ZWQgDQpHZXJtYW4gbWVz c2FnZXMsIG1vc3QgZmFtb3VzbHkgYnkgYnJlYWtpbmcgRW5pZ21hLWVuY3J5cHRlZCANCmNvbW11 bmljYXRpb25zLCBtYWtpbmcgYSBzaWduaWZpY2FudCBjb250cmlidXRpb24gdG8gdGhlIEFsbGll ZCB2aWN0b3J5Lg0KDQpJbiB0aGUgZWFybHkgMTk1MHMsIEdDSFEgbW92ZWQgaXRzIGhlYWRxdWFy dGVycyBmcm9tIHRoZSBMb25kb24gc3VidXJicyANCm9mIEVhc3Rjb3RlIHRvIENoZWx0ZW5oYW0s IG1lYW5pbmcgYSBzdWl0YWJsZSBjZW50cmFsIExvbmRvbiBsb2NhdGlvbiANCndhcyBuZWVkZWQg Zm9yIHRoZSBoYW5kbGluZyBvZiBzZWNyZXQgcGFwZXJ3b3JrIGFuZCBhcyBhIHJlZ3VsYXIgYmFz ZSANCmZvciB0aGUgRGlyZWN0b3IuIEFmdGVyIGEgc3Vic3RhbnRpYWwgc2VhcmNoLCB0aGUgTWlu aXN0cnkgb2YgV29ya3MgDQpwcm92aWRlZCBhIG5ld2x5LWJ1aWx0LCBHb3Zlcm5tZW50IGxlYXNl ZCBidWlsZGluZyBvbiBQYWxtZXIgU3RyZWV0LiANCkdDSFEgbW92ZWQgaW50byB0aGVpciBuZXcs IHNlY3JldCBMb25kb24gaG9tZSBpbiBTcHJpbmcgMTk1MywgaG91c2luZyBhIA0KcmFuZ2Ugb2Yg ZGlmZmVyZW50IHRlYW1zIHRoZXJlIG92ZXIgdGhlIGZvbGxvd2luZyBkZWNhZGVzLg0KDQpUaGUg UGFsbWVyIFN0cmVldCBodWIgaGFzIHBsYXllZCBpdHMgcGFydCBpbiBzaWduaWZpY2FudCBldmVu dHMgb3ZlciB0aGUgDQp5ZWFycywgc3VjaCBhcyB0aGUgMjAxMiBMb25kb24gT2x5bXBpY3MsIHdv cmtpbmcgd2l0aCBvdXIgcGFydG5lcnMsIE1JNiwgDQpNSTUgYW5kIHRoZSBNZXRyb3BvbGl0YW4g UG9saWNlIHRvIGNvdW50ZXIgdGVycm9yaXN0IGFjdGl2aXRpZXMgYW5kIA0Kc2VyaW91cyBhbmQg b3JnYW5pc2VkIGNyaW1lIHdoaWxzdCBrZWVwaW5nIE1pbmlzdGVycyB1cCB0byBkYXRlIHdpdGgg DQpzZWN1cml0eSBicmllZmluZ3MuDQoNClJlaW52ZW50aW9uIGFuZCBjaGFuZ2UgaXMgY3J1Y2lh bCBpZiB0aGUgYWdlbmN5IGlzIHRvIHJlbWFpbiBhaGVhZCBvZiANCmFkdmVyc2FyaWVzIGluIHRo ZSBjeWJlciBhZ2UuIEVhcmxpZXIgdGhpcyB5ZWFyLCBNciBGbGVtaW5nIHNwb2tlIG9mIA0KR0NI USdzIG5lZWQgdG8ga2VlcCByZWludmVudGluZyBpdHNlbGYuIEhlIHNhaWQ6DQoNCiAgICAgIkl0 J3MgY2xlYXIgdG8gdXMgYWxsIHRoYXQgdGhlIHdvcmxkIGlzIGNoYW5naW5nIGF0IGFuIA0KdW5w cmVjZWRlbnRlZCByYXRlLiBJdCdzIG1vcmUgaW50ZXJjb25uZWN0ZWQgdGhhbiBldmVyIGJlZm9y ZS4NCg0KICAgICAiVGhpcyBpcyBkcml2aW5nIGV4dHJhb3JkaW5hcnkgb3Bwb3J0dW5pdHksIGlu bm92YXRpb24gYW5kIA0KcHJvZ3Jlc3MuIEl0J3MgYWxzbyB1bmxlYXNoaW5nIGFtYXppbmcgY29t cGxleGl0eSwgdW5jZXJ0YWludHkgYW5kIHJpc2suIA0KVG8ga2VlcCB1cCBpbiB0aGlzIGRpZ2l0 YWwgZXJhIC0gdG8gb3B0aW1pc2UgdGhlIHBvdGVudGlhbCBvZiANCnRlY2hub2xvZ2llcyBzdWNo IGFzIGFydGlmaWNpYWwgaW50ZWxsaWdlbmNlIGFuZCBxdWFudHVtIGNvbXB1dGluZyAtIHdlIA0K a25vdyB3ZSBuZWVkIHRvIGtlZXAgcmVpbnZlbnRpbmcuDQoNCiAgICAgIklmIHdlIGdldCB0aGlz IHJpZ2h0IC0gYW5kIEknbSBjb25maWRlbnQgd2Ugd2lsbCAtIHRoZSBwcml6ZSBpcyBhIA0KbmV3 IGtpbmQgb2Ygc2VjdXJpdHkgYW5kIGludGVsbGlnZW5jZSBtaXNzaW9uIGZpdCBmb3Igb3VyIHNl Y29uZCBjZW50dXJ5LiINCg0KR0NIUSB3b3JrcyBhbG9uZ3NpZGUgTUk1IGFuZCB0aGUgU2VjcmV0 IEludGVsbGlnZW5jZSBTZXJ2aWNlIChNSTYpIHRvIA0Ka2VlcCBCcml0YWluIHNhZmUuIFRoZSBp bmdlbnVpdHkgYW5kIHByb2JsZW0tc29sdmluZyBvZiBpdHMgd2FydGltZSANCmZvdW5kZXJzIGlz IHN0aWxsIGFidW5kYW50IHRvZGF5IGluIGhvdyBpdHMgcGVvcGxlIGhlbHAgdG8gY291bnRlciAN Cm9ubGluZSBhbmQgcmVhbC13b3JsZCB0aHJlYXRzIGZyb20gbmF0aW9uIHN0YXRlcywgY3JpbWlu YWwgZ3JvdXBzLCANCnRlcnJvcmlzdHMsIGFuZCBpbmRpdmlkdWFscy4NCg0KDQpodHRwczovL3d3 dy5nY2hxLmdvdi51ay9uZXdzL2djaHEtcmV2ZWFscy1zZWNyZXQtc2l0ZS1mb3ItdGhlLWZpcnN0 LXRpbWUNCg0KaHR0cHM6Ly9zMy5ldS13ZXN0LTEuYW1hem9uYXdzLmNvbS9nY2hxLWNvbnRlbnQv aW1hZ2VzL1BhbG1lclN0NzY4eDUxMi5qcGcNCg0KaHR0cHM6Ly93d3cuZ2NocS5nb3YudWsvc3Rh dGljLWFzc2V0cy9pbWFnZXMvbmV3cy9QYWxtZXJTdEVudHJhbmNlNzY4eDUxMi5qcGcNCg0KLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0NCg0K