Received: from localhost ([::1]:47868 helo=stodi.digitalkingdom.org) by stodi.digitalkingdom.org with esmtp (Exim 4.76) (envelope-from ) id 1RO4AR-0001Eg-50; Wed, 09 Nov 2011 01:09:59 -0800 Received: from 173-13-139-235-sfba.hfc.comcastbusiness.net ([173.13.139.235]:42450 helo=jukni.digitalkingdom.org) by stodi.digitalkingdom.org with esmtps (TLSv1:AES256-SHA:256) (Exim 4.76) (envelope-from ) id 1RO4A7-0001EF-0F for wikineurotic@lojban.org; Wed, 09 Nov 2011 01:09:54 -0800 Received: from jukni.digitalkingdom.org (localhost [127.0.0.1]) by jukni.digitalkingdom.org (8.14.5/8.14.5) with ESMTP id pA999cPT027733 for ; Wed, 9 Nov 2011 01:09:38 -0800 Received: (from apache@localhost) by jukni.digitalkingdom.org (8.14.5/8.14.5/Submit) id pA999baS027732; Wed, 9 Nov 2011 01:09:37 -0800 Date: Wed, 9 Nov 2011 01:09:37 -0800 X-Authentication-Warning: jukni.digitalkingdom.org: apache set sender to webmaster@lojban.org using -f To: wikineurotic@lojban.org X-PHP-Originating-Script: 48:htmlMimeMail.php MIME-Version: 1.0 From: webmaster@lojban.org Message-ID: X-MIME-Autoconverted: from 8bit to quoted-printable by jukni.digitalkingdom.org id pA999cPT027733 X-Spam-Score: 3.5 (+++) X-Spam_score: 3.5 X-Spam_score_int: 35 X-Spam_bar: +++ X-Spam-Report: Spam detection software, running on the system "stodi.digitalkingdom.org", has identified this incoming email as possible spam. The original message has been attached to this so you can view it (if it isn't spam) or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: The page wavelessonscontinued was changed by klaki at 09:09 UTC You can view the page by following this link: http://www.lojban.org/tiki/wavelessonscontinued [...] Content analysis details: (3.5 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 0.0 FRT_SOMA2 BODY: ReplaceTags: Soma (2) 0.4 RDNS_DYNAMIC Delivered to internal network by host with dynamic-looking rDNS 2.5 DRUGS_MUSCLE Refers to a muscle relaxant 0.6 TO_NO_BRKTS_DYNIP To: misformatted and dynamic rDNS Subject: [Wikineurotic] Wiki page wavelessonscontinued changed by klaki X-BeenThere: wikineurotic@lojban.org X-Mailman-Version: 2.1.14 Precedence: list Reply-To: webmaster@lojban.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: wikineurotic-bounces@lojban.org VGhlIHBhZ2Ugd2F2ZWxlc3NvbnNjb250aW51ZWQgd2FzIGNoYW5nZWQgYnkga2xha2kgYXQgMDk6 MDkgVVRDCgpZb3UgY2FuIHZpZXcgdGhlIHBhZ2UgYnkgZm9sbG93aW5nIHRoaXMgbGluazoKIApo dHRwOi8vd3d3LmxvamJhbi5vcmcvdGlraS93YXZlbGVzc29uc2NvbnRpbnVlZAoKWW91IGNhbiB2 aWV3IGEgZGlmZiBiYWNrIHRvIHRoZSBwcmV2aW91cyB2ZXJzaW9uIGJ5IGZvbGxvd2luZyB0aGlz IGxpbms6IApodHRwOi8vd3d3LmxvamJhbi5vcmcvdGlraS90aWtpLXBhZ2VoaXN0b3J5LnBocD9w YWdlPXdhdmVsZXNzb25zY29udGludWVkJmNvbXBhcmU9MSZvbGR2ZXI9NiZuZXd2ZXI9NwoKCioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq ClRoZSBjaGFuZ2VzIGluIHRoaXMgdmVyc2lvbiBmb2xsb3cgYmVsb3csIGZvbGxvd2VkIGFmdGVy IGJ5IHRoZSBjdXJyZW50IGZ1bGwgcGFnZSB0ZXh0LgoqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgoKCistKy0rLSstKy0rLSstKy0rLSst Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCkBAIC1MaW5lczogOS03NyBj aGFuZ2VkIHRvICtMaW5lczogOS03NyBAQAorLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKwpXaGVuIHRha2luZyB0aGlzIHR1dG9yaWFsLCBp dOKAmXMgYmVzdCB0byBwYXVzZSBiZXR3ZWVuIGxlc3NvbnMgaW4gb3JkZXIgdG8gaW50ZXJuYWxp emUgd2hhdCB5b3UgaGF2ZSBsZWFybnQuIEkgaGF2ZSBhdHRlbXB0ZWQgdG8gYnVpbGQgdGhlc2Ug bGVzc29ucyBmcm9tIHRoZSBib3R0b20gdXAgYW5kIGV4Y2x1ZGUgYW55IHdvcmRzIG9yIGNvbmNl cHRzIHRoYXQgaGF2ZSBub3QgYmVlbiBleHBsYWluZWQgaW4gcHJldmlvdXMgbGVzc29ucy4gT25j ZSBleHBsYWluZWQsIHRoZXkgYXJlIHVzZWQgZnJlZWx5IHRocm91Z2hvdXQgdGhlIHJlbWFpbmRl ciBvZiB0aGUgdHV0b3JpYWwuIEkgdXJnZSByZWFkZXJzIG5vdCB0byBwYXNzIGFueSBtaXN1bmRl cnN0b29kIGNvbnRlbnQ7IGlmIHlvdSBoYXZlIHF1ZXN0aW9ucyBvciBhcmUgdW5jZXJ0YWluIGFi b3V0IHNvbWV0aGluZywgZmVlbCBmcmVlIHRvIGFzayB0aGUgTG9qYmFuIGNvbW11bml0eSwgd2hp Y2ggY2FuIGJlIGZvdW5kIGluICNsb2piYW4gb24gdGhlIEZyZWVub2RlIElSQyBuZXR3b3JrLiBU aGV5IHdpbGwgYmUgaGFwcHkgdG8gaGVscC4KCi0gSW4gdGhpcyB0dXRvcmlhbCwgTG9qYmFuIHRl eHQgaXMgd3JpdHRlbiBpbiBjb3VyaWVyIG5ldyBmb250IGFuZCBzb21ldGltZXMgZW5jYXNlZCBp biB7Y3VybHkgYnJhY2tldHN9LiBBbnN3ZXJzIHRvIGV4ZXJjaXNlcyBhcmUgY29sb3JlZCBsaWdo dCBncmV5LiBUaWx0IHlvdXIgc2NyZWVuIG9yIGNvcHkgdGhlIHRleHQgaW50byBzb21lIG90aGVy IG1lZGl1bSwgYW4gYWRkcmVzcyBiYXIgb3IgdGV4dCBlZGl0b3IgaW4gb3JkZXIgdG8gc2VlIGl0 LgorIEluIHRoaXMgdHV0b3JpYWwsIExvamJhbiB0ZXh0IGlzIHdyaXR0ZW4gaW4gX19ib2xkX18g YW5kIHNvbWV0aW1lcyBlbmNhc2VkIGluIHtjdXJseSBicmFja2V0c30uIExhdGVyLCB3aGVuIHVz ZWQgYXMgRW5nbGlzaCBsb2Fud29yZHMgaW4gZW5nbGlzaCBzZW50ZW5jZXMsIHRoZXkgYXJlIG5v dCBtYXJrZWQuIEFuc3dlcnMgdG8gZXhlcmNpc2VzIGFyZSBkaXNwbGF5ZWQgYXMgYSBncmV5IGJh ci4gSGlnaGxpZ2h0IHRoZSB0ZXh0IGluIG9yZGVyIHRvIHNlZSBpdC4KCi0gTGFzdGx5LCBJIGhh dmUgYXMgZmFyIGFzIHBvc3NpYmxlIGF0dGVtcHRlZCB0byB1c2UgdGhlIExvamJhbiB3b3JkcyBm b3IgZ3JhbW1hdGljYWwgY29uc3RydWN0czogc3Vta2HigJlpIGluc3RlYWQgb2YgcHJvLXN1bXRp LCBzdW10Y2l0YSBpbnN0ZWFkIG9mIG1vZGFsIGFuZCBqdWZyYSBpbnN0ZWFkIG9mIHV0dGVyYW5j ZS4gVGhpcyBpcyBiZWNhdXNlIEkgZmVlbCB0aGUgRW5nbGlzaCB3b3JkcyBhcmUgb2Z0ZW4gZWl0 aGVyIGFyYml0cmFyeSwgaW4gd2hpY2ggY2FzZSB0aGV5IGFyZSBqdXN0IG1vcmUgd29yZHMgdG8g bGVhcm4sIG9yIG1pc2xlYWRpbmcsIGluIHdoaWNoIGNhc2UgdGhleSBhcmUgd29yc2UgdGhhbiB1 c2VsZXNzLiBJbiBlaXRoZXIgY2FzZSwgYXMgbG9uZyBhcyB0aGUgd29yZHMgYXJlIHNwZWNpZmlj IHRvIHRob3NlIHdobyBhcmUgbGVhcm5pbmcgTG9qYmFuIGFueXdheSwgdGhlcmUgaXMgbm8gcmVh c29uIGZvciB0aGVtIHRvIGV4aXN0IGFzIHNlcGFyYXRlIEVuZ2xpc2ggd29yZHMuCisgTGFzdGx5 LCBJIGhhdmUgYXMgZmFyIGFzIHBvc3NpYmxlIGF0dGVtcHRlZCB0byB1c2UgdGhlIExvamJhbiB3 b3JkcyBmb3IgZ3JhbW1hdGljYWwgY29uc3RydWN0czogX19zdW1rYeKAmWlfXyBpbnN0ZWFkIG9m IHByby1zdW10aSwgX19zdW10Y2l0YV9fIGluc3RlYWQgb2YgbW9kYWwgYW5kIF9fanVmcmFfXyBp bnN0ZWFkIG9mIHV0dGVyYW5jZS4gVGhpcyBpcyBiZWNhdXNlIEkgZmVlbCB0aGUgRW5nbGlzaCB3 b3JkcyBhcmUgb2Z0ZW4gZWl0aGVyIGFyYml0cmFyeSwgaW4gd2hpY2ggY2FzZSB0aGV5IGFyZSBq dXN0IG1vcmUgd29yZHMgdG8gbGVhcm4sIG9yIG1pc2xlYWRpbmcsIGluIHdoaWNoIGNhc2UgdGhl eSBhcmUgd29yc2UgdGhhbiB1c2VsZXNzLiBJbiBlaXRoZXIgY2FzZSwgYXMgbG9uZyBhcyB0aGUg d29yZHMgYXJlIHNwZWNpZmljIHRvIHRob3NlIHdobyBhcmUgbGVhcm5pbmcgTG9qYmFuIGFueXdh eSwgdGhlcmUgaXMgbm8gcmVhc29uIGZvciB0aGVtIHRvIGV4aXN0IGFzIHNlcGFyYXRlIEVuZ2xp c2ggd29yZHMuCgoKISFMb2piYW4gTGVzc29ucyDigJMgbGVzc29uIG9uZSAoYnJpZGksIGp1ZnJh LCBzdW10aSBhbmQgc2VsYnJpKQotIEEgYnJpZGkgaXMgdGhlIG1vc3QgY2VudHJhbCB1bml0IG9m IExvamJhbiB1dHRlcmFuY2VzLiBUaGUgY29uY2VwdCBpcyB2ZXJ5IGNsb3NlIHRvIHdoYXQgd2Ug Y2FsbCBhIHByb3Bvc2l0aW9uIGluIEVuZ2xpc2guIEEgYnJpZGkgaXMgYSBjbGFpbSB0aGF0IHNv bWUgb2JqZWN0cyBzdGFuZCBpbiBhIHJlbGF0aW9uIHRvIGVhY2ggb3RoZXIsIG9yIHRoYXQgYW4g b2JqZWN0IGhhcyBzb21lIHByb3BlcnR5LiBUaGlzIHN0YW5kcyBpbiBjb250cmFzdCB0byBqdWZy YSwgd2hpY2ggYXJlIG1lcmVseSBMb2piYW4gdXR0ZXJhbmNlcywgd2hpY2ggY2FuIGJlIGJyaWRp IG9yIGFueXRoaW5nIGVsc2UgYmVpbmcgc2FpZC4gVGhlIGRpZmZlcmVuY2UgYmV0d2VlbiBhIGJy aWRpIGFuZCBhIGp1ZnJhIGlzIHRoYXQgYSBqdWZyYSBkb2VzIG5vdCBuZWNlc3NhcmlseSBzdGF0 ZSBhbnl0aGluZywgd2hpbGUgYSBicmlkaSBkb2VzLiBUaHVzLCBhIGJyaWRpIG1pZ2h0IGJlIHRy dWUgb3IgZmFsc2UsIHdoaWxlIG5vdCBhbGwganVmcmEgY2FuIGJlIHNhaWQgdG8gYmUgc3VjaC48 YnIgLz5UbyBoYXZlIHNvbWUgZXhhbXBsZXMgKGluIEVuZ2xpc2gsIHRvIGJlZ2luIHdpdGgpLCDi gJxNb3phcnQgd2FzIHRoZSBncmVhdGVzdCBtdXNpY2lhbiBvZiBhbGwgdGltZeKAnSBpcyBhIGJy aWRpLCBiZWNhdXNlIGl0IG1ha2VzIGEgY2xhaW0gd2l0aCBhIHRydXRoIHZhbHVlLCBhbmQgaXQg aW52b2x2ZXMgYW4gb2JqZWN0LCBNb3phcnQsIGFuZCBhIHByb3BlcnR5LCBiZWluZyB0aGUgZ3Jl YXRlc3QgbXVzaWNpYW4gb2YgYWxsIHRpbWUuIE9uIHRoZSBjb250cmFyeSwg4oCcT3chIE15IHRv ZSHigJ0gaXMgbm90IGEgYnJpZGksIHNpbmNlIGl0IGRvZXMgbm90IGludm9sdmUgYSByZWxhdGlv biwgYW5kIHRodXMgZG9lcyBub3Qgc3RhdGUgYW55dGhpbmcuIEJvdGgsIHRob3VnaCwgYXJlIGp1 ZnJhLjxiciAvPlRyeSB0byBpZGVudGlmeSB0aGUgYnJpZGkgYW1vbmcgdGhlc2UgRW5nbGlzaCBq dWZyYToKKyBBIF9fYnJpZGlfXyBpcyB0aGUgbW9zdCBjZW50cmFsIHVuaXQgb2YgTG9qYmFuIHV0 dGVyYW5jZXMuIFRoZSBjb25jZXB0IGlzIHZlcnkgY2xvc2UgdG8gd2hhdCB3ZSBjYWxsIGEgcHJv cG9zaXRpb24gaW4gRW5nbGlzaC4gQSBfX2JyaWRpX18gaXMgYSBjbGFpbSB0aGF0IHNvbWUgb2Jq ZWN0cyBzdGFuZCBpbiBhIHJlbGF0aW9uIHRvIGVhY2ggb3RoZXIsIG9yIHRoYXQgYW4gb2JqZWN0 IGhhcyBzb21lIHByb3BlcnR5LiBUaGlzIHN0YW5kcyBpbiBjb250cmFzdCB0byBfX2p1ZnJhX18s IHdoaWNoIGFyZSBtZXJlbHkgTG9qYmFuIHV0dGVyYW5jZXMsIHdoaWNoIGNhbiBiZSBfX2JyaWRp X18gb3IgYW55dGhpbmcgZWxzZSBiZWluZyBzYWlkLiBUaGUgZGlmZmVyZW5jZSBiZXR3ZWVuIGEg X19icmlkaV9fIGFuZCBhIF9fanVmcmFfXyBpcyB0aGF0IGEgX19qdWZyYV9fIGRvZXMgbm90IG5l Y2Vzc2FyaWx5IHN0YXRlIGFueXRoaW5nLCB3aGlsZSBhIF9fYnJpZGlfXyBkb2VzLiBUaHVzLCBh IF9fYnJpZGlfXyBtaWdodCBiZSB0cnVlIG9yIGZhbHNlLCB3aGlsZSBub3QgYWxsIF9fanVmcmFf XyBjYW4gYmUgc2FpZCB0byBiZSBzdWNoLjxiciAvPlRvIGhhdmUgc29tZSBleGFtcGxlcyAoaW4g RW5nbGlzaCwgdG8gYmVnaW4gd2l0aCksIOKAnE1vemFydCB3YXMgdGhlIGdyZWF0ZXN0IG11c2lj aWFuIG9mIGFsbCB0aW1l4oCdIGlzIGEgX19icmlkaV9fLCBiZWNhdXNlIGl0IG1ha2VzIGEgY2xh aW0gd2l0aCBhIHRydXRoIHZhbHVlLCBhbmQgaXQgaW52b2x2ZXMgYW4gb2JqZWN0LCBNb3phcnQs IGFuZCBhIHByb3BlcnR5LCBiZWluZyB0aGUgZ3JlYXRlc3QgbXVzaWNpYW4gb2YgYWxsIHRpbWUu IE9uIHRoZSBjb250cmFyeSwg4oCcT3chIE15IHRvZSHigJ0gaXMgbm90IGEgX19icmlkaV9fLCBz aW5jZSBpdCBkb2VzIG5vdCBpbnZvbHZlIGEgcmVsYXRpb24sIGFuZCB0aHVzIGRvZXMgbm90IHN0 YXRlIGFueXRoaW5nLiBCb3RoLCB0aG91Z2gsIGFyZSBfX2p1ZnJhX18uPGJyIC8+VHJ5IHRvIGlk ZW50aWZ5IHRoZSBfX2JyaWRpX18gYW1vbmcgdGhlc2UgRW5nbGlzaCBfX2p1ZnJhX186Cgoj4oCc SSBoYXRlIGl0IHdoZW4geW91IGRvIHRoYXQu4oCdCgotIOKAnFJ1bnMu4oCdCisgI+KAnFJ1bnMu 4oCdCgotIOKAnFdvYWgsIHRoYXQgbG9va3MgZGVsaWNpb3VzIeKAnQorICPigJxXb2FoLCB0aGF0 IGxvb2tzIGRlbGljaW91cyHigJ0KCi0g4oCcR2Vleiwgbm90IGFnYWluLuKAnQorICPigJxHZWV6 LCBub3QgYWdhaW4u4oCdCgotIOKAnE5vLCBJIG93biB0aHJlZSBjYXJz4oCdCisgI+KAnE5vLCBJ IG93biB0aHJlZSBjYXJz4oCdCgotIOKAnE5pbmV0ZWVuIG1pbnV0ZXMgcGFzdCBlaWdodC7igJ0K KyAj4oCcTmluZXRlZW4gbWludXRlcyBwYXN0IGVpZ2h0LuKAnQoKLSDigJxUaGlzIFNhdHVyZGF5 LCB5ZXMu4oCdCisgI+KAnFRoaXMgU2F0dXJkYXksIHllcy7igJ0KCi0gfn4jMDAwOkFuc3dlcjog MSwgMyBhbmQgNSBhcmUgYnJpZGkuIDIgY29udGFpbnMgbm8gb2JqZWN0cyBhbmQgdGhlIHJlc3Qg Y29udGFpbiBubyByZWxhdGlvbiBvciBjbGFpbSBvZiBhIHByb3BlcnR5Ln5+Cisgfn5ncmV5LGdy ZXk6QW5zd2VyOiAxLCAzIGFuZCA1IGFyZSBicmlkaS4gMiBjb250YWlucyBubyBvYmplY3RzIGFu ZCB0aGUgcmVzdCBjb250YWluIG5vIHJlbGF0aW9uIG9yIGNsYWltIG9mIGEgcHJvcGVydHkufn4K Ci0gUHV0IGluIExvamJhbiB0ZXJtcywgYSBicmlkaSBjb25zaXN0cyBvZiBvbmUgc2VsYnJpLCBh bmQgb25lIG9yIG1vcmUgc3VtdGkuIFRoZSBzZWxicmkgaXMgdGhlIHJlbGF0aW9uIG9yIGNsYWlt IGFib3V0IHRoZSBvYmplY3QsIGFuZCB0aGUgc3VtdGkgYXJlIHRoZSBvYmplY3RzIHdoaWNoIGFy ZSBpbiBhIHJlbGF0aW9uLiBOb3RlIHRoYXQg4oCcb2JqZWN04oCdIGlzIG5vdCBhIHBlcmZlY3Qg dHJhbnNsYXRpb24gb2Yg4oCcc3VtdGnigJ0sIHNpbmNlIOKAnHN1bXRp4oCdIGNhbiByZWZlciB0 byBub3QganVzdCBwaHlzaWNhbCBvYmplY3RzLCBidXQgY2FuIGFsc28gcHVyZWx5IGFic3RyYWN0 IHRoaW5ncyBsaWtlIOKAnFRoZSBpZGVhIG9mIHdhcmZhcmXigJ0uIEEgYmV0dGVyIHRyYW5zbGF0 aW9uIHdvdWxkIGJlIHNvbWV0aGluZyBsaWtlIOKAnHN1YmplY3QsIGRpcmVjdCBvciBpbmRpcmVj dCBvYmplY3TigJ0gZm9yIHN1bXRpLCBhbmQg4oCcdmVyYuKAnSBmb3Igc2VsYnJpLCB0aG91Z2gs IGFzIHdlIHdpbGwgc2VlLCB0aGlzIGlzIG5vdCBvcHRpbWFsIGVpdGhlci4KKyBQdXQgaW4gTG9q YmFuIHRlcm1zLCBhIF9fYnJpZGlfXyBjb25zaXN0cyBvZiBvbmUgX19zZWxicmlfXywgYW5kIG9u ZSBvciBtb3JlIF9fc3VtdGlfXy4gVGhlIF9fc2VsYnJpX18gaXMgdGhlIHJlbGF0aW9uIG9yIGNs YWltIGFib3V0IHRoZSBvYmplY3QsIGFuZCB0aGUgX19zdW10aV9fIGFyZSB0aGUgb2JqZWN0cyB3 aGljaCBhcmUgaW4gYSByZWxhdGlvbi4gTm90ZSB0aGF0IOKAnG9iamVjdOKAnSBpcyBub3QgYSBw ZXJmZWN0IHRyYW5zbGF0aW9uIG9mIOKAnHN1bXRp4oCdLCBzaW5jZSDigJxzdW10aeKAnSBjYW4g cmVmZXIgdG8gbm90IGp1c3QgcGh5c2ljYWwgb2JqZWN0cywgYnV0IGNhbiBhbHNvIHB1cmVseSBh YnN0cmFjdCB0aGluZ3MgbGlrZSDigJxUaGUgaWRlYSBvZiB3YXJmYXJl4oCdLiBBIGJldHRlciB0 cmFuc2xhdGlvbiB3b3VsZCBiZSBzb21ldGhpbmcgbGlrZSDigJxzdWJqZWN0LCBkaXJlY3Qgb3Ig aW5kaXJlY3Qgb2JqZWN04oCdIGZvciBzdW10aSwgYW5kIOKAnHZlcmLigJ0gZm9yIF9fc2VsYnJp X18sIHRob3VnaCwgYXMgd2Ugd2lsbCBzZWUsIHRoaXMgaXMgbm90IG9wdGltYWwgZWl0aGVyLgpX ZSBjYW4gbm93IHdyaXRlIHRoZSBmaXJzdCBpbXBvcnRhbnQgbGVzc29uIGRvd246Ci0gYnJpZGkg PSBzZWxicmkgKyBvbmUgb3IgbW9yZSBzdW10aTxiciAvPlB1dCBhbm90aGVyIHdheSwgYSBicmlk aSBzdGF0ZXMgdGhhdCBzb21lIHN1bXRpIGRvL2FyZSBzb21ldGhpbmcgZXhwbGFpbmVkIGJ5IGEg c2VsYnJpLgorIF9fYnJpZGlfXyA9IF9fc2VsYnJpX18gKyBvbmUgb3IgbW9yZSBfX3N1bXRpX188 YnIgLz5QdXQgYW5vdGhlciB3YXksIGEgX19icmlkaV9fIHN0YXRlcyB0aGF0IHNvbWUgX19zdW10 aV9fIGRvL2FyZSBzb21ldGhpbmcgZXhwbGFpbmVkIGJ5IGEgX19zZWxicmlfXy4KCi0gSWRlbnRp ZnkgdGhlIHN1bXRpIGFuZCBzZWxicmkgZXF1aXZhbGVudHMgaW4gdGhlc2UganVmcmE6CisgSWRl bnRpZnkgdGhlIF9fc3VtdGlfXyBhbmQgX19zZWxicmlfXyBlcXVpdmFsZW50cyBpbiB0aGVzZSBF bmdsaXNoIF9fanVmcmFfXzoK4oCcSSB3aWxsIHBpY2sgdXAgbXkgZGF1Z2h0ZXJzIHdpdGggbXkg Y2Fy4oCdCgotIEFuc3dlcjogc2VsYnJpOiDigJxwaWNrIHVwICh3aXRoKeKAnS4gc3VtdGk6IOKA nEnigJ0sIOKAnG15IGRhdWdodGVyc+KAnSwg4oCcbXkgY2Fy4oCdCisgfn5ncmV5LGdyZXk6QW5z d2VyOiBzZWxicmk6IOKAnHBpY2sgdXAgKHdpdGgp4oCdLiBzdW10aTog4oCcSeKAnSwg4oCcbXkg ZGF1Z2h0ZXJz4oCdLCDigJxteSBjYXLigJ1+fgoK4oCcSGUgYm91Z2h0IHNpeHRlZW4gbmV3IHNo aXJ0cyBmcm9tIExlYSZMZXZ54oCZcyBmb3IganVzdCB0d28gaHVuZHJlZCBldXJvIeKAnQoKLSBB bnN3ZXI6IHNlbGJyaTog4oCcYm91Z2h0IChmcm9tKSAoZm9yKeKAnSBzdW10aTog4oCcSGXigJ0s IOKAnHNpeHRlZW4gbmV3IHNoaXJ0c+KAnSwg4oCcTGVhJmFtcDtMZXdpc+KAnSBhbmQg4oCcdHdv IGh1bmRyZWQgZXVyb3PigJ0KKyB+fmdyZXksZ3JleTpBbnN3ZXI6IHNlbGJyaTog4oCcYm91Z2h0 IChmcm9tKSAoZm9yKeKAnSBzdW10aTog4oCcSGXigJ0sIOKAnHNpeHRlZW4gbmV3IHNoaXJ0c+KA nSwg4oCcTGVhJmFtcDtMZXdpc+KAnSBhbmQg4oCcdHdvIGh1bmRyZWQgZXVyb3PigJ1+fgoKU2lu Y2UgdGhlc2UgY29uY2VwdHMgYXJlIHNvIGZ1bmRhbWVudGFsIHRvIExvamJhbiwgbGV04oCZcyBo YXZlIGEgdGhpcmQgZXhhbXBsZTog4oCcU28gZmFyLCB0aGUgRVBBIGhhdmUgZG9uZSBub3RoaW5n IGFib3V0IHRoZSBhbW91bnQgb2Ygc3VscGh1ciBkaW94aWRlIGluIHRoZSBhaXIu4oCdCgotIEFu c3dlcjogc2VsYnJpOiDigJxoYXZlIGRvbmUgKGFib3V0KeKAnSBzdW10aTog4oCcVGhlIEVQQeKA nSwg4oCcbm90aGluZ+KAnSBhbmQg4oCcdGhlIGFtb3VudCBvZiBzdWxwaG9yIGRpb3hpZGUgaW4g dGhlIGFpcuKAnQorIH5+Z3JleSxncmV5OkFuc3dlcjogc2VsYnJpOiDigJxoYXZlIGRvbmUgKGFi b3V0KeKAnSBzdW10aTog4oCcVGhlIEVQQeKAnSwg4oCcbm90aGluZ+KAnSBhbmQg4oCcdGhlIGFt b3VudCBvZiBzdWxwaG9yIGRpb3hpZGUgaW4gdGhlIGFpcuKAnX5+CgotIE5vdyB0cnkgYmVnaW4g bWFraW5nIExvamJhbiBicmlkaS4gRm9yIHRoaXMgeW91IHdpbGwgbmVlZCB0byB1c2Ugc29tZSB3 b3JkLCB3aGljaCBjYW4gYWN0IGFzIHNlbGJyaTo8YnIgLz5kdW5kYSB4MSBnaXZlcyB4MiB0byB4 MyAod2l0aG91dCBwYXltZW50KTxiciAvPnBlbHh1IHgxIGlzIHllbGxvdzxiciAvPnpkYW5pIHgx IGlzIGEgaG9tZSBvZiB4MgorIE5vdyB0cnkgYmVnaW4gbWFraW5nIExvamJhbiBfX2JyaWRpX18u IEZvciB0aGlzIHlvdSB3aWxsIG5lZWQgdG8gdXNlIHNvbWUgd29yZCwgd2hpY2ggY2FuIGFjdCBh cyBfX3NlbGJyaV9fOjxiciAvPl9fZHVuZGFfXyB4MSBnaXZlcyB4MiB0byB4MyAod2l0aG91dCBw YXltZW50KTxiciAvPl9fcGVseHVfXyB4MSBpcyB5ZWxsb3c8YnIgLz5fX3pkYW5pX18geDEgaXMg YSBob21lIG9mIHgyCgotIE5vdGljZSB0aGF0IHRoZXNlIHdvcmRzIG1lYW5pbmcg4oCcZ2l2ZeKA nSwg4oCceWVsbG934oCdIGFuZCDigJxob21l4oCdIHdvdWxkIGJlIGNvbnNpZGVyZWQgYSB2ZXJi LCBhbiBhZGplY3RpdmUgYW5kIGEgbm91biBpbiBFbmdsaXNoLiBJbiBMb2piYW4sIHRoZXJlIGFy ZSBubyBzdWNoIGNhdGVnb3JpZXMgYW5kIG5vIHN1Y2ggZGlzdGluY3Rpb24uIGR1bmRhIGNhbiBi ZSB0cmFuc2xhdGVkIOKAnGdpdmVz4oCdICh2ZXJiKSwg4oCcaXMgYSBnaXZlcuKAnSAobm91biks IOKAnGlzIGdpdmluZ+KAnSAoYWRqZWN0aXZlKSBhcyB3ZWxsIGFzIHRvIGFuIGFkdmVyYiBmb3Jt LiBUaGV5IGFsbCBhY3QgYXMgc2VsYnJpLCBhbmQgYXJlIHVzZWQgaW4gdGhlIHNhbWUgd2F5Lgor IE5vdGljZSB0aGF0IHRoZXNlIHdvcmRzIG1lYW5pbmcg4oCcZ2l2ZeKAnSwg4oCceWVsbG934oCd IGFuZCDigJxob21l4oCdIHdvdWxkIGJlIGNvbnNpZGVyZWQgYSB2ZXJiLCBhbiBhZGplY3RpdmUg YW5kIGEgbm91biBpbiBFbmdsaXNoLiBJbiBMb2piYW4sIHRoZXJlIGFyZSBubyBzdWNoIGNhdGVn b3JpZXMgYW5kIG5vIHN1Y2ggZGlzdGluY3Rpb24uIF9fZHVuZGFfXyBjYW4gYmUgdHJhbnNsYXRl ZCDigJxnaXZlc+KAnSAodmVyYiksIOKAnGlzIGEgZ2l2ZXLigJ0gKG5vdW4pLCDigJxpcyBnaXZp bmfigJ0gKGFkamVjdGl2ZSkgYXMgd2VsbCBhcyB0byBhbiBhZHZlcmIgZm9ybS4gVGhleSBhbGwg YWN0IGFzIF9fc2VsYnJpX18sIGFuZCBhcmUgdXNlZCBpbiB0aGUgc2FtZSB3YXkuCgpBcyB3ZWxs IGFzIGEgZmV3IHdvcmRzLCB3aGljaCBjYW4gYWN0IGFzIHN1bXRpOgotIG1pIOKAnEnigJ0gb3Ig 4oCcV2XigJ0g4oCTIHRoZSBvbmUgb3IgdGhvc2Ugd2hvIGFyZSBzcGVha2luZy48YnIgLz50aSDi gJx0aGlz4oCdIOKAkyBhIGNsb3NlIHRoaW5nIG9yIGV2ZW50IG5lYXJieSB3aGljaCBjYW4gYmUg cG9pbnRlZCB0byBieSB0aGUgc3BlYWtlci48YnIgLz5kbyDigJx5b3XigJ0g4oCTIHRoZSBvbmUg b3IgdGhvc2Ugd2hvIGFyZSBiZWluZyBzcG9rZW4gdG8uCisgX19taV9fIOKAnEnigJ0gb3Ig4oCc V2XigJ0g4oCTIHRoZSBvbmUgb3IgdGhvc2Ugd2hvIGFyZSBzcGVha2luZy48YnIgLz5fX3RpX18g 4oCcdGhpc+KAnSDigJMgYSBjbG9zZSB0aGluZyBvciBldmVudCBuZWFyYnkgd2hpY2ggY2FuIGJl IHBvaW50ZWQgdG8gYnkgdGhlIHNwZWFrZXIuPGJyIC8+X19kb19fIOKAnHlvdeKAnSDigJMgdGhl IG9uZSBvciB0aG9zZSB3aG8gYXJlIGJlaW5nIHNwb2tlbiB0by4KCi0gU2VlIHRoZSBzdHJhbmdl IHRyYW5zbGF0aW9ucyBvZiB0aGUgc2VsYnJpIGFib3ZlIC0gZXNwZWNpYWxseSB0aGUgeDEsIHgy IGFuZCB4Mz8gVGhvc2UgYXJlIGNhbGxlZCBzdW10aSBwbGFjZXMuIFRoZXkgYXJlIHBsYWNlcyB3 aGVyZSBzdW10aSBjYW4gZ28gdG8gZmlsbCBhIGJyaWRpLiBGaWxsaW5nIGEgc3VtdGkgaW4gYSBw bGFjZSBzdGF0ZXMgdGhhdCB0aGUgc3VtdGkgZml0cyBpbiB0aGF0IHBsYWNlLiBUaGUgc2Vjb25k IHBsYWNlIG9mIGR1bmRhLCBmb3IgZXhhbXBsZSwgeDIsIGlzIHRoZSB0aGluZyBiZWluZyBnaXZl bi4gVGhlIHRoaXJkIGlzIHRoZSBvYmplY3Qgd2hpY2ggcmVjZWl2ZXMgdGhlIHRoaW5nLiBOb3Rp Y2UgYWxzbyB0aGF0IHRoZSB0cmFuc2xhdGlvbiBvZiBkdW5kYSBoYXMgdGhlIHdvcmQg4oCcdG/i gJ0gaW4gaXQuIFRoaXMgaXMgYmVjYXVzZSwgd2hpbGUgdGhpcyB3b3JkIGlzIG5lZWRlZCBpbiBF bmdsaXNoIHRvIHNpZ25pZnkgdGhlIHJlY2VpdmVyLCB0aGUgcmVjZWl2ZXIgaXMgaW4gdGhlIHRo aXJkIHN1bXRpIHBsYWNlIG9mIGR1bmRhLiBTbyB3aGVuIHlvdSBmaWxsIHRoZSB0aGlyZCBzdW10 aSBwbGFjZSBvZiBkdW5kYSwgdGhlIHN1bXRpIHlvdSBmaWxsIGluIGlzIGFsd2F5cyB0aGUgcmVj ZWl2ZXIsIGFuZCB5b3UgZG9u4oCZdCBuZWVkIGFuIGVxdWl2YWxlbnQgdG8gdGhlIHdvcmQg4oCc dG/igJ0hCisgU2VlIHRoZSBzdHJhbmdlIHRyYW5zbGF0aW9ucyBvZiB0aGUgX19zZWxicmlfXyBh Ym92ZSAtIGVzcGVjaWFsbHkgdGhlIHgxLCB4MiBhbmQgeDM/IFRob3NlIGFyZSBjYWxsZWQgc3Vt dGkgcGxhY2VzLiBUaGV5IGFyZSBwbGFjZXMgd2hlcmUgX19zdW10aV9fIGNhbiBnbyB0byBmaWxs IGEgX19icmlkaV9fLiBGaWxsaW5nIGEgX19zdW10aV9fIGluIGEgcGxhY2Ugc3RhdGVzIHRoYXQg dGhlIF9fc3VtdGlfXyBmaXRzIGluIHRoYXQgcGxhY2UuIFRoZSBzZWNvbmQgcGxhY2Ugb2YgX19k dW5kYV9fLCBmb3IgZXhhbXBsZSwgeDIsIGlzIHRoZSB0aGluZyBiZWluZyBnaXZlbi4gVGhlIHRo aXJkIGlzIHRoZSBvYmplY3Qgd2hpY2ggcmVjZWl2ZXMgdGhlIHRoaW5nLiBOb3RpY2UgYWxzbyB0 aGF0IHRoZSB0cmFuc2xhdGlvbiBvZiBfX2R1bmRhX18gaGFzIHRoZSB3b3JkIOKAnHRv4oCdIGlu IGl0LiBUaGlzIGlzIGJlY2F1c2UsIHdoaWxlIHRoaXMgd29yZCBpcyBuZWVkZWQgaW4gRW5nbGlz aCB0byBzaWduaWZ5IHRoZSByZWNlaXZlciwgdGhlIHJlY2VpdmVyIGlzIGluIHRoZSB0aGlyZCBz dW10aSBwbGFjZSBvZiBfX2R1bmRhX18uIFNvIHdoZW4geW91IGZpbGwgdGhlIHRoaXJkIHN1bXRp IHBsYWNlIG9mIF9fZHVuZGFfXywgdGhlIF9fc3VtdGlfXyB5b3UgZmlsbCBpbiBpcyBhbHdheXMg dGhlIHJlY2VpdmVyLCBhbmQgeW91IGRvbuKAmXQgbmVlZCBhbiBlcXVpdmFsZW50IHRvIHRoZSB3 b3JkIOKAnHRv4oCdIQoKLSBUbyBzYXkgYSBicmlkaSwgeW91IHNpbXBseSBzYXkgdGhlIHgxIHN1 bXRpIGZpcnN0LCB0aGVuIHRoZSBzZWxicmksIHRoZW4gYW55IG90aGVyIHN1bXRpLjxiciAvPlVz dWFsIGJyaWRpOiBbeDEgc3VtdGldIFtzZWxicmldIFt4MiBzdW10aV0gW3gzIHN1bXRpXSBbeDQg c3VtdGldIFt4NSBzdW10aV0gW2FuZCBzbyBvbl08YnIgLz5UaGUgb3JkZXIgY2FuIGJlIHBsYXll ZCBhcm91bmQgd2l0aCwgYnV0IGZvciBub3csIHdlIHN0aWNrIHdpdGggdGhlIHVzdWFsIGZvcm0u IFRvIHNheSDigJxJIGdpdmUgdGhpcyB0byB5b3XigJ0geW91IGp1c3Qgc2F5IG1pIGR1bmRhIHRp IGRvLCB3aXRoIHRoZSB0aHJlZSBzdW10aSBhdCB0aGUgcmlnaHQgcGxhY2VzLgorIFRvIHNheSBh IF9fYnJpZGlfXywgeW91IHNpbXBseSBzYXkgdGhlIHgxIHN1bXRpIGZpcnN0LCB0aGVuIHRoZSBz ZWxicmksIHRoZW4gYW55IG90aGVyIHN1bXRpLjxiciAvPlVzdWFsIGJyaWRpOiBbeDEgc3VtdGld IF9fW3NlbGJyaV1fXyBbeDIgc3VtdGldIFt4MyBzdW10aV0gW3g0IHN1bXRpXSBbeDUgc3VtdGld IFthbmQgc28gb25dPGJyIC8+VGhlIG9yZGVyIGNhbiBiZSBwbGF5ZWQgYXJvdW5kIHdpdGgsIGJ1 dCBmb3Igbm93LCB3ZSBzdGljayB3aXRoIHRoZSB1c3VhbCBmb3JtLiBUbyBzYXkg4oCcSSBnaXZl IHRoaXMgdG8geW914oCdIHlvdSBqdXN0IHNheSBfX21pIGR1bmRhIHRpIGRvX18sIHdpdGggdGhl IHRocmVlIF9fc3VtdGlfXyBhdCB0aGUgcmlnaHQgcGxhY2VzLgoKU28sIGhvdyB3b3VsZCB5b3Ug c2F5IOKAnFRoaXMgaXMgYSBob21lIG9mIG1l4oCdPwoKLSBBbnN3ZXI6IHRpIHpkYW5pIG1pCisg fn5ncmV5LGdyZXk6QW5zd2VyOiBfX3RpIHpkYW5pIG1pX19+fgoKVHJ5IGEgZmV3IG1vcmUgaW4g b3JkZXIgdG8gZ2V0IHRoZSBpZGVhIG9mIGEgcGxhY2Ugc3RydWN0dXJlIHNpbmsgaW4uCgorLSst Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKwpA QCAtTGluZXM6IDc5LTkzIGNoYW5nZWQgdG8gK0xpbmVzOiA3OS05MyBAQAorLSstKy0rLSstKy0r LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKwrigJxZb3UgZ2l2 ZSB0aGlzIHRvIG1l4oCdPwoKLSBBbnN3ZXI6ICBkbyBkdW5kYSB0aSBtaQorIH5+Z3JleSxncmV5 OkFuc3dlcjogIF9fZG8gZHVuZGEgdGkgbWlfX35+CgotIEFuZCB0cmFuc2xhdGUgdGkgcGVseHUK KyBBbmQgdHJhbnNsYXRlIF9fdGkgcGVseHVfXwoKLSBBbnN3ZXI6IOKAnFRoaXMgaXMgeWVsbG93 LuKAnQorIH5+Z3JleSxncmV5OkFuc3dlcjog4oCcVGhpcyBpcyB5ZWxsb3cu4oCdfn4KClF1aXRl IGVhc3kgb25jZSB5b3UgZ2V0IHRoZSBoYW5nIG9mIGl0LCByaWdodD8KCi0gTXVsdGlwbGUgYnJp ZGkgYWZ0ZXIgZWFjaCBvdGhlciBhcmUgc2VwYXJhdGVkIGJ5IC5pIFRoaXMgaXMgdGhlIExvamJh biBlcXVpdmFsZW50IG9mIGZ1bGwgc3RvcCwgYnV0IGl0IHVzdWFsbHkgZ29lcyBiZWZvcmUgYnJp ZGkgaW5zdGVhZCBvZiBhZnRlciB0aGVtLiBJdOKAmXMgb2Z0ZW4gbGVmdCBvdXQgYmVmb3JlIHRo ZSBmaXJzdCBicmlkaSwgdGhvdWdoLCBhcyBpbiBhbGwgdGhlc2UgZXhhbXBsZXM6CisgTXVsdGlw bGUgX19icmlkaV9fIGFmdGVyIGVhY2ggb3RoZXIgYXJlIHNlcGFyYXRlZCBieSBfXy5pX18gVGhp cyBpcyB0aGUgTG9qYmFuIGVxdWl2YWxlbnQgb2YgZnVsbCBzdG9wLCBidXQgaXQgdXN1YWxseSBn b2VzIGJlZm9yZSBfX2JyaWRpX18gaW5zdGVhZCBvZiBhZnRlciB0aGVtLiBJdOKAmXMgb2Z0ZW4g bGVmdCBvdXQgYmVmb3JlIHRoZSBmaXJzdCBfX2JyaWRpX18sIHRob3VnaCwgYXMgaW4gYWxsIHRo ZXNlIGV4YW1wbGVzOgoKLSB0aSB6ZGFuaSBtaSAgLmkgdGkgcGVseHUg4oCdVGhpcyBpcyBhIGhv bWUgdG8gbWUuIFRoaXMgaXMgeWVsbG93LuKAnQorIF9fdGkgemRhbmkgbWkgIC5pIHRpIHBlbHh1 X18g4oCdVGhpcyBpcyBhIGhvbWUgdG8gbWUuIFRoaXMgaXMgeWVsbG93LuKAnQoKQmVmb3JlIHlv dSBtb3ZlIG9uIHRvIHRoZSBuZXh0IGxlc3NvbiwgSSByZWNvbW1lbmQgdGhhdCB5b3UgdGFrZSBh IGJyZWFrIGZvciBhdCBsZWFzdCBzZXZlbiBtaW51dGVzIHRvIGxldCB0aGUgaW5mb3JtYXRpb24g c2luayBpbi4KCgoKCioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqClRoZSBuZXcgcGFnZSBjb250ZW50IGZvbGxvd3MgYmVsb3cuCioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCgoh TG9qYmFuIFdhdmUgTGVzc29ucyBDb250aW51ZWQ6CiEhIWJ5IGxhIGtsYWt1IHdpdGggaGVscCBm cm9tIGxhIC5rcmliYWNyLiwgbGEgeGFsYm8gYW5kIG90aGVycywgYXV0dW1uIDIwMTEuCgohIUNo YXB0ZXIgemVybzogRm9yZXdvcmQKVGhlc2UgbGVzc29ucyBhcmUgYW4gYXR0ZW1wdCB0byBleHBh bmQgb24gdGhlIEdvb2dsZSBXYXZlIExlc3NvbnMsIGFuIGV4Y2VsbGVudCBMb2piYW4gdHV0b3Jp YWwgYnkga3JpYmFjciwgeGFsYm8sIGFuZCBvdGhlcnMsIHdoaWNoIHNhZGx5IG9ubHkgY292ZXJl ZCB0aGUgZmlyc3QgZm91ciBjaGFwdGVycyBpbiB0aGlzIHR1dG9yaWFsLiBJdCBpbXBsZW1lbnRz IHRoZSBuZXdlc3QgcnVsZXMgb2YgTG9qYmFuIG5vdCBjb3ZlcmVkIGJ5IG9sZGVyIG1hdGVyaWFs cyBzdWNoIGFzIFdoYXQgaXMgTG9qYmFuPyBhbmQgTG9qYmFuIGZvciBCZWdpbm5lcnMuCgpJZiB5 b3UgYXJlIG5ldyB0byBMb2piYW4sIEkgcmVjb21tZW5kIGxpc3RlbmluZyB0byBhbnkgcmVjb3Jk aW5ncyB5b3UgY2FuIGZpbmQgb2Ygc3Bva2VuIExvamJhbiBib3RoIGJlZm9yZSBhbmQgd2hpbGUg eW91IGFyZSB0YWtpbmcgdGhpcyB0dXRvcmlhbCwgaW4gb3JkZXIgdG8gbWFrZSB5b3Vyc2VsZiBm YW1pbGlhciB3aXRoIHRoZSBzb3VuZHMgYW5kIHdvcmRzIG9mIHRoZSBsYW5ndWFnZSwgd2hpY2gg d2lsbCBub3QgYmUgZXhwbGFpbmVkIGhlcmUuIEZ1cnRoZXJtb3JlLCB0cnkgdG8gc2F5IHRoZSB0 aGluZ3MgeW91IHJlYWQgaW4gTG9qYmFuIGFjY2VudCBpZiBpdOKAmXMgcmVhc29uYWJseSBwcmFj dGljYWwuIFRoaXMgY2FuIGhlbHAgeW91ciBwcm9udW5jaWF0aW9uIGEgbG90LgoKV2hlbiB0YWtp bmcgdGhpcyB0dXRvcmlhbCwgaXTigJlzIGJlc3QgdG8gcGF1c2UgYmV0d2VlbiBsZXNzb25zIGlu IG9yZGVyIHRvIGludGVybmFsaXplIHdoYXQgeW91IGhhdmUgbGVhcm50LiBJIGhhdmUgYXR0ZW1w dGVkIHRvIGJ1aWxkIHRoZXNlIGxlc3NvbnMgZnJvbSB0aGUgYm90dG9tIHVwIGFuZCBleGNsdWRl IGFueSB3b3JkcyBvciBjb25jZXB0cyB0aGF0IGhhdmUgbm90IGJlZW4gZXhwbGFpbmVkIGluIHBy ZXZpb3VzIGxlc3NvbnMuIE9uY2UgZXhwbGFpbmVkLCB0aGV5IGFyZSB1c2VkIGZyZWVseSB0aHJv dWdob3V0IHRoZSByZW1haW5kZXIgb2YgdGhlIHR1dG9yaWFsLiBJIHVyZ2UgcmVhZGVycyBub3Qg dG8gcGFzcyBhbnkgbWlzdW5kZXJzdG9vZCBjb250ZW50OyBpZiB5b3UgaGF2ZSBxdWVzdGlvbnMg b3IgYXJlIHVuY2VydGFpbiBhYm91dCBzb21ldGhpbmcsIGZlZWwgZnJlZSB0byBhc2sgdGhlIExv amJhbiBjb21tdW5pdHksIHdoaWNoIGNhbiBiZSBmb3VuZCBpbiAjbG9qYmFuIG9uIHRoZSBGcmVl bm9kZSBJUkMgbmV0d29yay4gVGhleSB3aWxsIGJlIGhhcHB5IHRvIGhlbHAuCgpJbiB0aGlzIHR1 dG9yaWFsLCBMb2piYW4gdGV4dCBpcyB3cml0dGVuIGluIF9fYm9sZF9fIGFuZCBzb21ldGltZXMg ZW5jYXNlZCBpbiB7Y3VybHkgYnJhY2tldHN9LiBMYXRlciwgd2hlbiB1c2VkIGFzIEVuZ2xpc2gg bG9hbndvcmRzIGluIGVuZ2xpc2ggc2VudGVuY2VzLCB0aGV5IGFyZSBub3QgbWFya2VkLiBBbnN3 ZXJzIHRvIGV4ZXJjaXNlcyBhcmUgZGlzcGxheWVkIGFzIGEgZ3JleSBiYXIuIEhpZ2hsaWdodCB0 aGUgdGV4dCBpbiBvcmRlciB0byBzZWUgaXQuCgpMYXN0bHksIEkgaGF2ZSBhcyBmYXIgYXMgcG9z c2libGUgYXR0ZW1wdGVkIHRvIHVzZSB0aGUgTG9qYmFuIHdvcmRzIGZvciBncmFtbWF0aWNhbCBj b25zdHJ1Y3RzOiBfX3N1bWth4oCZaV9fIGluc3RlYWQgb2YgcHJvLXN1bXRpLCBfX3N1bXRjaXRh X18gaW5zdGVhZCBvZiBtb2RhbCBhbmQgX19qdWZyYV9fIGluc3RlYWQgb2YgdXR0ZXJhbmNlLiBU aGlzIGlzIGJlY2F1c2UgSSBmZWVsIHRoZSBFbmdsaXNoIHdvcmRzIGFyZSBvZnRlbiBlaXRoZXIg YXJiaXRyYXJ5LCBpbiB3aGljaCBjYXNlIHRoZXkgYXJlIGp1c3QgbW9yZSB3b3JkcyB0byBsZWFy biwgb3IgbWlzbGVhZGluZywgaW4gd2hpY2ggY2FzZSB0aGV5IGFyZSB3b3JzZSB0aGFuIHVzZWxl c3MuIEluIGVpdGhlciBjYXNlLCBhcyBsb25nIGFzIHRoZSB3b3JkcyBhcmUgc3BlY2lmaWMgdG8g dGhvc2Ugd2hvIGFyZSBsZWFybmluZyBMb2piYW4gYW55d2F5LCB0aGVyZSBpcyBubyByZWFzb24g Zm9yIHRoZW0gdG8gZXhpc3QgYXMgc2VwYXJhdGUgRW5nbGlzaCB3b3Jkcy4KCgohIUxvamJhbiBM ZXNzb25zIOKAkyBsZXNzb24gb25lIChicmlkaSwganVmcmEsIHN1bXRpIGFuZCBzZWxicmkpCkEg X19icmlkaV9fIGlzIHRoZSBtb3N0IGNlbnRyYWwgdW5pdCBvZiBMb2piYW4gdXR0ZXJhbmNlcy4g VGhlIGNvbmNlcHQgaXMgdmVyeSBjbG9zZSB0byB3aGF0IHdlIGNhbGwgYSBwcm9wb3NpdGlvbiBp biBFbmdsaXNoLiBBIF9fYnJpZGlfXyBpcyBhIGNsYWltIHRoYXQgc29tZSBvYmplY3RzIHN0YW5k IGluIGEgcmVsYXRpb24gdG8gZWFjaCBvdGhlciwgb3IgdGhhdCBhbiBvYmplY3QgaGFzIHNvbWUg cHJvcGVydHkuIFRoaXMgc3RhbmRzIGluIGNvbnRyYXN0IHRvIF9fanVmcmFfXywgd2hpY2ggYXJl IG1lcmVseSBMb2piYW4gdXR0ZXJhbmNlcywgd2hpY2ggY2FuIGJlIF9fYnJpZGlfXyBvciBhbnl0 aGluZyBlbHNlIGJlaW5nIHNhaWQuIFRoZSBkaWZmZXJlbmNlIGJldHdlZW4gYSBfX2JyaWRpX18g YW5kIGEgX19qdWZyYV9fIGlzIHRoYXQgYSBfX2p1ZnJhX18gZG9lcyBub3QgbmVjZXNzYXJpbHkg c3RhdGUgYW55dGhpbmcsIHdoaWxlIGEgX19icmlkaV9fIGRvZXMuIFRodXMsIGEgX19icmlkaV9f IG1pZ2h0IGJlIHRydWUgb3IgZmFsc2UsIHdoaWxlIG5vdCBhbGwgX19qdWZyYV9fIGNhbiBiZSBz YWlkIHRvIGJlIHN1Y2guClRvIGhhdmUgc29tZSBleGFtcGxlcyAoaW4gRW5nbGlzaCwgdG8gYmVn aW4gd2l0aCksIOKAnE1vemFydCB3YXMgdGhlIGdyZWF0ZXN0IG11c2ljaWFuIG9mIGFsbCB0aW1l 4oCdIGlzIGEgX19icmlkaV9fLCBiZWNhdXNlIGl0IG1ha2VzIGEgY2xhaW0gd2l0aCBhIHRydXRo IHZhbHVlLCBhbmQgaXQgaW52b2x2ZXMgYW4gb2JqZWN0LCBNb3phcnQsIGFuZCBhIHByb3BlcnR5 LCBiZWluZyB0aGUgZ3JlYXRlc3QgbXVzaWNpYW4gb2YgYWxsIHRpbWUuIE9uIHRoZSBjb250cmFy eSwg4oCcT3chIE15IHRvZSHigJ0gaXMgbm90IGEgX19icmlkaV9fLCBzaW5jZSBpdCBkb2VzIG5v dCBpbnZvbHZlIGEgcmVsYXRpb24sIGFuZCB0aHVzIGRvZXMgbm90IHN0YXRlIGFueXRoaW5nLiBC b3RoLCB0aG91Z2gsIGFyZSBfX2p1ZnJhX18uClRyeSB0byBpZGVudGlmeSB0aGUgX19icmlkaV9f IGFtb25nIHRoZXNlIEVuZ2xpc2ggX19qdWZyYV9fOgoKI+KAnEkgaGF0ZSBpdCB3aGVuIHlvdSBk byB0aGF0LuKAnQoKI+KAnFJ1bnMu4oCdCgoj4oCcV29haCwgdGhhdCBsb29rcyBkZWxpY2lvdXMh 4oCdCgoj4oCcR2Vleiwgbm90IGFnYWluLuKAnQoKI+KAnE5vLCBJIG93biB0aHJlZSBjYXJz4oCd Cgoj4oCcTmluZXRlZW4gbWludXRlcyBwYXN0IGVpZ2h0LuKAnQoKI+KAnFRoaXMgU2F0dXJkYXks IHllcy7igJ0KCn5+Z3JleSxncmV5OkFuc3dlcjogMSwgMyBhbmQgNSBhcmUgYnJpZGkuIDIgY29u dGFpbnMgbm8gb2JqZWN0cyBhbmQgdGhlIHJlc3QgY29udGFpbiBubyByZWxhdGlvbiBvciBjbGFp bSBvZiBhIHByb3BlcnR5Ln5+CgpQdXQgaW4gTG9qYmFuIHRlcm1zLCBhIF9fYnJpZGlfXyBjb25z aXN0cyBvZiBvbmUgX19zZWxicmlfXywgYW5kIG9uZSBvciBtb3JlIF9fc3VtdGlfXy4gVGhlIF9f c2VsYnJpX18gaXMgdGhlIHJlbGF0aW9uIG9yIGNsYWltIGFib3V0IHRoZSBvYmplY3QsIGFuZCB0 aGUgX19zdW10aV9fIGFyZSB0aGUgb2JqZWN0cyB3aGljaCBhcmUgaW4gYSByZWxhdGlvbi4gTm90 ZSB0aGF0IOKAnG9iamVjdOKAnSBpcyBub3QgYSBwZXJmZWN0IHRyYW5zbGF0aW9uIG9mIOKAnHN1 bXRp4oCdLCBzaW5jZSDigJxzdW10aeKAnSBjYW4gcmVmZXIgdG8gbm90IGp1c3QgcGh5c2ljYWwg b2JqZWN0cywgYnV0IGNhbiBhbHNvIHB1cmVseSBhYnN0cmFjdCB0aGluZ3MgbGlrZSDigJxUaGUg aWRlYSBvZiB3YXJmYXJl4oCdLiBBIGJldHRlciB0cmFuc2xhdGlvbiB3b3VsZCBiZSBzb21ldGhp bmcgbGlrZSDigJxzdWJqZWN0LCBkaXJlY3Qgb3IgaW5kaXJlY3Qgb2JqZWN04oCdIGZvciBzdW10 aSwgYW5kIOKAnHZlcmLigJ0gZm9yIF9fc2VsYnJpX18sIHRob3VnaCwgYXMgd2Ugd2lsbCBzZWUs IHRoaXMgaXMgbm90IG9wdGltYWwgZWl0aGVyLgpXZSBjYW4gbm93IHdyaXRlIHRoZSBmaXJzdCBp bXBvcnRhbnQgbGVzc29uIGRvd246Cl9fYnJpZGlfXyA9IF9fc2VsYnJpX18gKyBvbmUgb3IgbW9y ZSBfX3N1bXRpX18KUHV0IGFub3RoZXIgd2F5LCBhIF9fYnJpZGlfXyBzdGF0ZXMgdGhhdCBzb21l IF9fc3VtdGlfXyBkby9hcmUgc29tZXRoaW5nIGV4cGxhaW5lZCBieSBhIF9fc2VsYnJpX18uCgpJ ZGVudGlmeSB0aGUgX19zdW10aV9fIGFuZCBfX3NlbGJyaV9fIGVxdWl2YWxlbnRzIGluIHRoZXNl IEVuZ2xpc2ggX19qdWZyYV9fOgrigJxJIHdpbGwgcGljayB1cCBteSBkYXVnaHRlcnMgd2l0aCBt eSBjYXLigJ0KCn5+Z3JleSxncmV5OkFuc3dlcjogc2VsYnJpOiDigJxwaWNrIHVwICh3aXRoKeKA nS4gc3VtdGk6IOKAnEnigJ0sIOKAnG15IGRhdWdodGVyc+KAnSwg4oCcbXkgY2Fy4oCdfn4KCuKA nEhlIGJvdWdodCBzaXh0ZWVuIG5ldyBzaGlydHMgZnJvbSBMZWEmTGV2eeKAmXMgZm9yIGp1c3Qg dHdvIGh1bmRyZWQgZXVybyHigJ0KCn5+Z3JleSxncmV5OkFuc3dlcjogc2VsYnJpOiDigJxib3Vn aHQgKGZyb20pIChmb3Ip4oCdIHN1bXRpOiDigJxIZeKAnSwg4oCcc2l4dGVlbiBuZXcgc2hpcnRz 4oCdLCDigJxMZWEmTGV3aXPigJ0gYW5kIOKAnHR3byBodW5kcmVkIGV1cm9z4oCdfn4KClNpbmNl IHRoZXNlIGNvbmNlcHRzIGFyZSBzbyBmdW5kYW1lbnRhbCB0byBMb2piYW4sIGxldOKAmXMgaGF2 ZSBhIHRoaXJkIGV4YW1wbGU6IOKAnFNvIGZhciwgdGhlIEVQQSBoYXZlIGRvbmUgbm90aGluZyBh Ym91dCB0aGUgYW1vdW50IG9mIHN1bHBodXIgZGlveGlkZSBpbiB0aGUgYWlyLuKAnQoKfn5ncmV5 LGdyZXk6QW5zd2VyOiBzZWxicmk6IOKAnGhhdmUgZG9uZSAoYWJvdXQp4oCdIHN1bXRpOiDigJxU aGUgRVBB4oCdLCDigJxub3RoaW5n4oCdIGFuZCDigJx0aGUgYW1vdW50IG9mIHN1bHBob3IgZGlv eGlkZSBpbiB0aGUgYWly4oCdfn4KCk5vdyB0cnkgYmVnaW4gbWFraW5nIExvamJhbiBfX2JyaWRp X18uIEZvciB0aGlzIHlvdSB3aWxsIG5lZWQgdG8gdXNlIHNvbWUgd29yZCwgd2hpY2ggY2FuIGFj dCBhcyBfX3NlbGJyaV9fOgpfX2R1bmRhX18geDEgZ2l2ZXMgeDIgdG8geDMgKHdpdGhvdXQgcGF5 bWVudCkKX19wZWx4dV9fIHgxIGlzIHllbGxvdwpfX3pkYW5pX18geDEgaXMgYSBob21lIG9mIHgy CgpOb3RpY2UgdGhhdCB0aGVzZSB3b3JkcyBtZWFuaW5nIOKAnGdpdmXigJ0sIOKAnHllbGxvd+KA nSBhbmQg4oCcaG9tZeKAnSB3b3VsZCBiZSBjb25zaWRlcmVkIGEgdmVyYiwgYW4gYWRqZWN0aXZl IGFuZCBhIG5vdW4gaW4gRW5nbGlzaC4gSW4gTG9qYmFuLCB0aGVyZSBhcmUgbm8gc3VjaCBjYXRl Z29yaWVzIGFuZCBubyBzdWNoIGRpc3RpbmN0aW9uLiBfX2R1bmRhX18gY2FuIGJlIHRyYW5zbGF0 ZWQg4oCcZ2l2ZXPigJ0gKHZlcmIpLCDigJxpcyBhIGdpdmVy4oCdIChub3VuKSwg4oCcaXMgZ2l2 aW5n4oCdIChhZGplY3RpdmUpIGFzIHdlbGwgYXMgdG8gYW4gYWR2ZXJiIGZvcm0uIFRoZXkgYWxs IGFjdCBhcyBfX3NlbGJyaV9fLCBhbmQgYXJlIHVzZWQgaW4gdGhlIHNhbWUgd2F5LgoKQXMgd2Vs bCBhcyBhIGZldyB3b3Jkcywgd2hpY2ggY2FuIGFjdCBhcyBzdW10aToKX19taV9fIOKAnEnigJ0g b3Ig4oCcV2XigJ0g4oCTIHRoZSBvbmUgb3IgdGhvc2Ugd2hvIGFyZSBzcGVha2luZy4KX190aV9f IOKAnHRoaXPigJ0g4oCTIGEgY2xvc2UgdGhpbmcgb3IgZXZlbnQgbmVhcmJ5IHdoaWNoIGNhbiBi ZSBwb2ludGVkIHRvIGJ5IHRoZSBzcGVha2VyLgpfX2RvX18g4oCceW914oCdIOKAkyB0aGUgb25l IG9yIHRob3NlIHdobyBhcmUgYmVpbmcgc3Bva2VuIHRvLgoKU2VlIHRoZSBzdHJhbmdlIHRyYW5z bGF0aW9ucyBvZiB0aGUgX19zZWxicmlfXyBhYm92ZSAtIGVzcGVjaWFsbHkgdGhlIHgxLCB4MiBh bmQgeDM/IFRob3NlIGFyZSBjYWxsZWQgc3VtdGkgcGxhY2VzLiBUaGV5IGFyZSBwbGFjZXMgd2hl cmUgX19zdW10aV9fIGNhbiBnbyB0byBmaWxsIGEgX19icmlkaV9fLiBGaWxsaW5nIGEgX19zdW10 aV9fIGluIGEgcGxhY2Ugc3RhdGVzIHRoYXQgdGhlIF9fc3VtdGlfXyBmaXRzIGluIHRoYXQgcGxh Y2UuIFRoZSBzZWNvbmQgcGxhY2Ugb2YgX19kdW5kYV9fLCBmb3IgZXhhbXBsZSwgeDIsIGlzIHRo ZSB0aGluZyBiZWluZyBnaXZlbi4gVGhlIHRoaXJkIGlzIHRoZSBvYmplY3Qgd2hpY2ggcmVjZWl2 ZXMgdGhlIHRoaW5nLiBOb3RpY2UgYWxzbyB0aGF0IHRoZSB0cmFuc2xhdGlvbiBvZiBfX2R1bmRh X18gaGFzIHRoZSB3b3JkIOKAnHRv4oCdIGluIGl0LiBUaGlzIGlzIGJlY2F1c2UsIHdoaWxlIHRo aXMgd29yZCBpcyBuZWVkZWQgaW4gRW5nbGlzaCB0byBzaWduaWZ5IHRoZSByZWNlaXZlciwgdGhl IHJlY2VpdmVyIGlzIGluIHRoZSB0aGlyZCBzdW10aSBwbGFjZSBvZiBfX2R1bmRhX18uIFNvIHdo ZW4geW91IGZpbGwgdGhlIHRoaXJkIHN1bXRpIHBsYWNlIG9mIF9fZHVuZGFfXywgdGhlIF9fc3Vt dGlfXyB5b3UgZmlsbCBpbiBpcyBhbHdheXMgdGhlIHJlY2VpdmVyLCBhbmQgeW91IGRvbuKAmXQg bmVlZCBhbiBlcXVpdmFsZW50IHRvIHRoZSB3b3JkIOKAnHRv4oCdIQoKVG8gc2F5IGEgX19icmlk aV9fLCB5b3Ugc2ltcGx5IHNheSB0aGUgeDEgc3VtdGkgZmlyc3QsIHRoZW4gdGhlIHNlbGJyaSwg dGhlbiBhbnkgb3RoZXIgc3VtdGkuClVzdWFsIGJyaWRpOiBbeDEgc3VtdGldIF9fW3NlbGJyaV1f XyBbeDIgc3VtdGldIFt4MyBzdW10aV0gW3g0IHN1bXRpXSBbeDUgc3VtdGldIFthbmQgc28gb25d ClRoZSBvcmRlciBjYW4gYmUgcGxheWVkIGFyb3VuZCB3aXRoLCBidXQgZm9yIG5vdywgd2Ugc3Rp Y2sgd2l0aCB0aGUgdXN1YWwgZm9ybS4gVG8gc2F5IOKAnEkgZ2l2ZSB0aGlzIHRvIHlvdeKAnSB5 b3UganVzdCBzYXkgX19taSBkdW5kYSB0aSBkb19fLCB3aXRoIHRoZSB0aHJlZSBfX3N1bXRpX18g YXQgdGhlIHJpZ2h0IHBsYWNlcy4KClNvLCBob3cgd291bGQgeW91IHNheSDigJxUaGlzIGlzIGEg aG9tZSBvZiBtZeKAnT8KCn5+Z3JleSxncmV5OkFuc3dlcjogX190aSB6ZGFuaSBtaV9ffn4KClRy eSBhIGZldyBtb3JlIGluIG9yZGVyIHRvIGdldCB0aGUgaWRlYSBvZiBhIHBsYWNlIHN0cnVjdHVy ZSBzaW5rIGluLgoK4oCcWW91IGdpdmUgdGhpcyB0byBtZeKAnT8KCn5+Z3JleSxncmV5OkFuc3dl cjogIF9fZG8gZHVuZGEgdGkgbWlfX35+CgpBbmQgdHJhbnNsYXRlIF9fdGkgcGVseHVfXwoKfn5n cmV5LGdyZXk6QW5zd2VyOiDigJxUaGlzIGlzIHllbGxvdy7igJ1+fgoKUXVpdGUgZWFzeSBvbmNl IHlvdSBnZXQgdGhlIGhhbmcgb2YgaXQsIHJpZ2h0PwoKTXVsdGlwbGUgX19icmlkaV9fIGFmdGVy IGVhY2ggb3RoZXIgYXJlIHNlcGFyYXRlZCBieSBfXy5pX18gVGhpcyBpcyB0aGUgTG9qYmFuIGVx dWl2YWxlbnQgb2YgZnVsbCBzdG9wLCBidXQgaXQgdXN1YWxseSBnb2VzIGJlZm9yZSBfX2JyaWRp X18gaW5zdGVhZCBvZiBhZnRlciB0aGVtLiBJdOKAmXMgb2Z0ZW4gbGVmdCBvdXQgYmVmb3JlIHRo ZSBmaXJzdCBfX2JyaWRpX18sIHRob3VnaCwgYXMgaW4gYWxsIHRoZXNlIGV4YW1wbGVzOgoKX190 aSB6ZGFuaSBtaSAgLmkgdGkgcGVseHVfXyDigJ1UaGlzIGlzIGEgaG9tZSB0byBtZS4gVGhpcyBp cyB5ZWxsb3cu4oCdCgpCZWZvcmUgeW91IG1vdmUgb24gdG8gdGhlIG5leHQgbGVzc29uLCBJIHJl Y29tbWVuZCB0aGF0IHlvdSB0YWtlIGEgYnJlYWsgZm9yIGF0IGxlYXN0IHNldmVuIG1pbnV0ZXMg dG8gbGV0IHRoZSBpbmZvcm1hdGlvbiBzaW5rIGluLgoKCiEhTG9qYmFuIExlc3NvbnMg4oCTIGxl c3NvbiB0d28gKEZBIGFuZCB6b+KAmWUpCk1vc3Qgc2VsYnJpIGhhdmUgZnJvbSBvbmUgdG8gZml2 ZSBzdW10aSBwbGFjZXMsIGJ1dCBzb21lIGhhdmUgbW9yZS4gSGVyZSBpcyBhIHNlbGJyaSB3aXRo IGZvdXIgc3VtdGkgcGxhY2VzOgp2ZWNudSB4MSBzZWxscyB4MiB0byB4MyBmb3IgcHJpY2UgeDQK CklmIEkgd2FudCB0byBzYXkg4oCcSSBzZWxsIHRoaXPigJ0sIGl0IHdvdWxkIGJlIHVuZGVzaXJh YmxlIHRvIGZpbGwgdGhlIHN1bXRpIHBsYWNlcyB4MyBhbmQgeDQsIHdoaWNoIHNwZWNpZnkgd2hv IEkgc2VsbCB0aGUgdGhpbmcgdG8sIGFuZCBmb3Igd2hhdCBwcmljZS4gTHVja2lseSwgSSBkb27i gJl0IG5lZWQgdG8uIHN1bXRpIHBsYWNlcyBjYW4gYmUgZmlsbGVkIHdpdGggem/igJllLiB6b+KA mWUgaW5kaWNhdGVzIHRvIHVzIHRoYXQgdGhlIHZhbHVlIG9mIHRoZSBzdW10aSBwbGFjZSBpcyB1 bnNwZWNpZmllZCBiZWNhdXNlIGl04oCZcyB1bmltcG9ydGFudCBvciBjYW4gYmUgZGV0ZXJtaW5l ZCBmcm9tIGNvbnRleHQuCnpv4oCZZSDigJxzb21ldGhpbmfigJ0gRmlsbHMgYSBzdW10aSBwbGFj ZSB3aXRoIHNvbWV0aGluZywgYnV0IGRvZXMgbm90IHN0YXRlIHdoYXQuCgpTbyB0byBzYXkg4oCc SSBzZWxsIHRvIHlvdeKAnSwgSSBjb3VsZCBzYXkgbWkgdmVjbnUgem/igJllIGRvIHpv4oCZZSDi gJMgSSBzZWxsIHNvbWV0aGluZyB0byB5b3UgZm9yIHNvbWUgcHJpY2UuCkhvdyB3b3VsZCB5b3Ug c2F5OiDigJxUaGF04oCZcyBhIGhvbWUgKGZvciBzb21lYm9keSnigJ0/CgpBbnN3ZXI6IHRpIHpk YW5pIHpv4oCZZQoKSG93IGFib3V0IOKAnChzb21lb25lKSBnaXZlcyB0aGlzIHRvIChzb21lb25l KeKAnT8KCkFuc3dlcjogem/igJllIGR1bmRhIHRpIHpv4oCZZQoKU3RpbGwsIGZpbGxpbmcgb3V0 IHRocmVlIHpv4oCZZSBqdXN0IHRvIHNheSB0aGF0IGEgdGhpbmcgaXMgYmVpbmcgc29sZCB0YWtl cyB0aW1lLiBUaGVyZWZvcmUgeW91IGRvbuKAmXQgbmVlZCB0byB3cml0ZSBhbGwgdGhlIHpv4oCZ ZSBpbiBhIGJyaWRpLiBUaGUgcnVsZSBzaW1wbHkgaXMgdGhhdCBpZiB5b3UgbGVhdmUgb3V0IGFu eSBzdW10aSwgdGhleSB3aWxsIGJlIGNvbnNpZGVyZWQgYXMgaWYgdGhleSBjb250YWluZWQgem/i gJllLiBJZiB0aGUgYnJpZGkgYmVnaW5zIHdpdGggYSBzZWxicmksIHRoZSB4MSBpcyBwcmVzdW1l ZCB0byBiZSBvbWl0dGVkIGFuZCB0aGUgeDEgYmVjb21lcyB6b+KAmWUuClRyeSBpdCBvdXQuIFdo YXTigJlzIExvamJhbiBmb3Ig4oCcSSBzZWxs4oCdPwoKQW5zd2VyOiBtaSB2ZWNudQoKQW5kIHdo YXQgZG9lcyB6ZGFuaSBtaSBtZWFuPwoKQW5zd2VyOiDigJxTb21ldGhpbmcgaXMgYSBob21lIG9m IG1l4oCdIG9yIGp1c3Qg4oCcSSBoYXZlIGEgaG9tZS7igJ0KCkFzIG1lbnRpb25lZCBlYXJsaWVy LCB0aGUgZm9ybSBkb2VzbuKAmXQgaGF2ZSB0byBiZSBbeDEgc3VtdGldIFtzZWxicmldIFt4MiBz dW10aV0gW3gzIHN1bXRpXSAoZWN0LikgSW4gZmFjdCwgeW91IGNhbiBwbGFjZSB0aGUgc2VsYnJp IGFueXdoZXJlIHlvdSB3YW50LCBqdXN0IG5vdCBhdCB0aGUgYmVnaW5uaW5nIG9mIHRoZSBicmlk aS4gSWYgeW91IGRvIHRoYXQsIHRoZSB4MSBpcyBjb25zaWRlcmVkIGxlZnQgb3V0IGFuZCBmaWxs ZWQgd2l0aCB6b+KAmWUgaW5zdGVhZC4gU28gdGhlIGZvbGxvd2luZyB0aHJlZSBqdWZyYSBhcmUg YWxsIHRoZSBleGFjdGx5IHNhbWUgYnJpZGk6Cm1pIGR1bmRhIHRpIGRvCm1pIHRpIGR1bmRhIGRv Cm1pIHRpIGRvIGR1bmRhCgpTb21ldGltZXMgdGhpcyBpcyB1c2VkIGZvciBwb2V0aWMgZWZmZWN0 LiDigJxZb3Ugc2VsbCB5b3Vyc2VsZuKAnSBjb3VsZCBiZSBkbyBkbyB2ZWNudSwgd2hpY2ggc291 bmRzIGJldHRlciB0aGFuIGRvIHZlY251IGRvLiBPciBpdCBjYW4gYmUgdXNlZCBmb3IgY2xhcml0 eSBpZiB0aGUgc2VsYnJpIGlzIHZlcnkgbG9uZyBhbmQgdGhlcmVmb3JlIGJldHRlciBiZSBsZWZ0 IGF0IHRoZSBlbmQgb2YgdGhlIGJyaWRpLgoKVGhlcmUgYXJlIGFsc28gc2V2ZXJhbCB3YXlzIHRv IHBsYXkgYXJvdW5kIHdpdGggdGhlIG9yZGVyIG9mIHRoZSBzdW10aSBpbnNpZGUgdGhlIGJyaWRp LiBUaGUgbW9zdCBlYXN5IG9uZSBpcyBieSB1c2luZyB0aGUgd29yZHMgZmEsIGZlLCBmaSwgZm8g YW5kIGZ1LiBOb3RpY2UgdGhhdCB0aGUgdm93ZWxzIGFyZSB0aGUgZml2ZSB2b3dlbHMgaW4gdGhl IExvamJhbiBhbHBoYWJldCBpbiBvcmRlci4gVXNpbmcgb25lIG9mIHRoZXNlIHdvcmRzIG1hcmtz IHRoYXQgdGhlIG5leHQgc3VtdGkgd2lsbCBmaWxsIHRoZSB4MSwgeDIsIHgzLCB4NCBhbmQgeDUg cmVzcGVjdGl2ZWx5LiBUaGUgbmV4dCBzdW10aSBhZnRlciB0aGF0IHdpbGwgYmUgcHJlc3VtZWQg dG8gZmlsbCBhIHNsb3Qgb25lIGdyZWF0ZXIgdGhhbiB0aGUgcHJldmlvdXMuIFRvIHVzZSBhbiBl eGFtcGxlOgpkdW5kYSBmYSBkbyBmZSB0aSBkbyDigJMg4oCcR2l2aW5nIGJ5IHlvdSBvZiB0aGlz IHRoaW5nIHRvIHlvdeKAnS4gZmEgbWFya3MgdGhlIHgxLCB0aGUgZ2l2ZXIsIHdoaWNoIGlzIHlv dS4gZmUgbWFya3MgdGhlIHRoaW5nIGJlaW5nIGdpdmVuLCB0aGUgeDIuIFN1bXRpIGNvdW50aW5n IHRoZW4gY29udGludWVzIGZyb20gZmUsIG1lYW5pbmcgdGhhdCB0aGUgbGFzdCBzdW10aSBmaWxs cyB4MywgdGhlIG9iamVjdCByZWNlaXZpbmcuCgpBdHRlbXB0IHRvIHRyYW5zbGF0ZSB0aGUgZm9s bG93aW5nIHRocmVlIHNlbnRlbmNlczoKCm1pIHZlY251IGZvIHRpIGZlIGRvCgpBbnN3ZXI6IOKA nUkgc2VsbCwgZm9yIHRoZSBwcmljZSBvZiB0aGlzLCB5b3XigJ0uIG9yIOKAnEkgc2VsbCB5b3Ug Zm9yIHRoZSBwcmljZSBvZiB0aGlz4oCdIChwcm9iYWJseSBwb2ludGluZyB0byBhIGJ1bmNoIG9m IG1vbmV5KQoKemRhbmkgZmUgdGkKCkFuc3dlcjog4oCcVGhpcyBoYXMgYSBob21l4oCdLiBIZXJl LCB0aGUgZmUgaXMgcmVkdW5kYW50LgoKdmVjbnUgem/igJllIG1pIHRpIGZhIGRvCgpBbnN3ZXI6 IOKAnFlvdSBzZWxsIHNvbWV0aGluZyB0byBtZSBmb3IgdGhpcyBwcmljZeKAnQoKCiEhTG9qYmFu IExlc3NvbnMg4oCTIGxlc3NvbiB0aHJlZSAodGFucnUgYW5kIGxvKQpJbiB0aGlzIGNoYXB0ZXIs IHlvdSB3aWxsIGJlY29tZSBmYW1pbGlhciB3aXRoIHRoZSBjb25jZXB0IG9mIHRhbnJ1LiBBIHRh bnJ1IGlzIGZvcm1lZCB3aGVuIGEgYnJpdmxhIGlzIHB1dCBpbiBmcm9udCBvZiBhbm90aGVyIGJy aXZsYSwgbW9kaWZ5aW5nIGl04oCZcyBtZWFuaW5nLiBBIHRhbnJ1IGlzIGl0c2VsZiBhIHNlbGJy aSwgYW5kIGNhbiBjb21iaW5lIHdpdGggb3RoZXIgYnJpdmxhIG9yIHRhbnJ1IHRvIGZvcm0gbW9y ZSBjb21wbGV4IHRhbnJ1LiBUaHVzIHpkYW5pIHZlY251IGlzIGEgdGFucnUsIGFzIHdlbGwgYXMg IHBlbHh1IHpkYW5pIHZlY251LCB3aGljaCBpcyBtYWRlIGZyb20gdGhlIHRhbnJ1IHBlbHh1IHpk YW5pIGFuZCB0aGUgc2luZ2xlIGJyaXZsYSB3b3JkIHZlY251LiBUbyB1bmRlcnN0YW5kIHRoZSBj b25jZXB0IG9mIHRhbnJ1LCBjb25zaWRlciB0aGUgRW5nbGlzaCBub3VuIGNvbWJpbmF0aW9uIOKA nGxlbW9uIHRyZWXigJ0uIElmIHlvdSBkaWRu4oCZdCBrbm93IHdoYXQgYSBsZW1vbiB0cmVlIHdh cywgYnV0IGhhZCBoZWFyZCBhYm91dCBib3RoIGxlbW9ucyBhbmQgdHJlZXMsIHlvdSB3b3VsZCBu b3QgYmUgYWJsZSB0byBkZWR1Y2Ugd2hhdCBhIGxlbW9uIHRyZWUgd2FzLiBQZXJoYXBzIGEgbGVt b24tY29sb3JlZCB0cmVlLCBvciBhIHRyZWUgc2hhcGVkIGxpa2UgYSBsZW1vbiwgb3IgYSB0cmVl IHdob3NlIGJhcmsgdGFzdGVzIGxpa2UgbGVtb24uIFRoZSBvbmx5IHRoaW5ncyB5b3UgY291bGQg a25vdyBmb3Igc3VyZSB3b3VsZCBiZSB0aGF0IGl0IHdvdWxkIGJlIGEgdHJlZSwgYW5kIGl0IHdv dWxkIGJlIGxlbW9uLWxpa2UgaW4gc29tZSB3YXkuCkEgdGFucnUgaXMgY2xvc2VseSBhbmFsb2dv dXMgdG8gdGhpcy4gSXQgY2Fubm90IGJlIHNhaWQgZXhhY3RseSB3aGF0IGEgemRhbmkgdmVjbnUg aXMsIGJ1dCBpdCBjYW4gYmUgc2FpZCB0aGF0IGl0IGlzIGRlZmluaXRlbHkgYSB2ZWNudSwgYW5k IHRoYXQgaXTigJlzIHpkYW5pLWxpa2UgaW4gc29tZSB3YXkuIEFuZCBpdCBjb3VsZCBiZSB6ZGFu aS1saWtlIGluIGFueSB3YXkuIEluIHRoZW9yeSwgbm8gbWF0dGVyIGhvdyBzaWxseSBvciBhYnN1 cmQgdGhlIGNvbm5lY3Rpb24gdG8gemRhbmkgd2FzLCBpdCBjb3VsZCBzdGlsbCB0cnVseSBiZSBh IHpkYW5pIHZlY251LiBIb3dldmVyLCBpdCBtdXN0IGFjdHVhbGx5IGJlIGEgdmVjbnUgaW4gdGhl IG9yZGluYXJ5IHNlbnNlIGluIG9yZGVyIGZvciB0aGUgdGFucnUgdG8gYXBwbHkuIFlvdSBjb3Vs ZCBnbG9zcyB6ZGFuaSB2ZWNudSBhcyDigJxob3VzZSBzZWxsZXLigJ0sIG9yIGV2ZW4gYmV0dGVy IGJ1dCB3b3JzZSBzb3VuZGluZyDigJxhIGhvbWUtdHlwZS1vZiBzZWxsZXLigJ0uIFRoZSBwbGFj ZSBzdHJ1Y3R1cmUgb2YgYSB0YW5ydSBpcyBhbHdheXMgdGhhdCBvZiB0aGUgcmlnaHRtb3N0IHNl bGJyaS4gSXTigJlzIGFsc28gc2FpZCB0aGF0IHRoZSBsZWZ0IHNlbGJyaSBtb2RpZmllcyB0aGUg cmlnaHQgc2VsYnJpLgrigJxSZWFsbHk/4oCdLCB5b3UgYXNrLCBzY2VwdGljYWxseSwg4oCcSXQg ZG9lc27igJl0IG1hdHRlciBob3cgc2lsbHkgdGhlIGNvbm5lY3Rpb24gdG8gdGhlIGxlZnQgd29y ZCBpbiBhIHRhbnJ1IGlzLCBpdOKAmXMgc3RpbGwgdHJ1ZT8gU28gSSBjb3VsZCBjYWxsIGFsbCBz ZWxsZXJzIGZvciB6ZGFuaSB2ZWNudSBhbmQgdGhlbiBtYWtlIHVwIHNvbWUgc2lsbHkgZXhjdXNl IHdoeSBJIHRoaW5rIGl04oCZcyB6ZGFuaS1saWtlP+KAnQpXZWxsIHllcywgYnV0IHRoZW4geW91 4oCZZCBiZSBhIGRpY2suIE9yIGF0IGxlYXN0IHlvdeKAmWQgYmUgaW50ZW50aW9uYWxseSBtaXNs ZWFkaW5nLiBJbiBnZW5lcmFsLCB5b3Ugc2hvdWxkIHVzZSBhIHRhbnJ1IHdoZW4gaXTigJlzIG9i dmlvdXMgaG93IHRoZSBsZWZ0IHdvcmQgcmVsYXRlcyB0byB0aGUgcmlnaHQuCgpBdHRlbXB0IHRv IHRyYW5zbGF0ZSB0aGUgZm9sbG93aW5nOiB0aSBwZWx4dSB6ZGFuaSBkbwoKQW5zd2VyOiDigJxU aGF0IGlzIGEgeWVsbG93IGhvbWUgZm9yIHlvdeKAnSBBZ2Fpbiwgd2UgZG9u4oCZdCBrbm93IGlu IHdoaWNoIHdheSBpdOKAmXMgeWVsbG93LiBQcm9iYWJseSBpdOKAmXMgcGFpbnRlZCB5ZWxsb3cs IGJ1dCB3ZSBkb27igJl0IGtub3cgZm9yIHN1cmUuCgptaSB2ZWNudSBkdW5kYQoKQW5zd2VyOiDi gJxJIHNlbGwtbGlrZSBnaXZl4oCdLiBXaGF0IGNhbiB0aGF0IG1lYW4/IE5vIGlkZWEuIEl0IGNl cnRhaW5seSBkb2VzbuKAmXQgbWVhbiB0aGF0IHlvdSBzb2xkIHNvbWV0aGluZywgc2luY2UsIGJ5 IGRlZmluaXRpb24gb2YgZHVuZGEsIHRoZXJlIGNhbiBiZSBubyBwYXltZW50IGludm9sdmVkLiBJ dCBoYXMgdG8gYmUgYSBnaXZlYXdheSwgYnV0IGJlIHNlbGwtbGlrZSBpbiBzb21lIGFzcGVjdC4K CuKApiBBbmQgbm93IGZvciBzb21ldGhpbmcgY29tcGxldGVseSBkaWZmZXJlbnQuIFdoYXQgaWYg SSB3YW50ZWQgdG8gc2F5IEkgc29sZCB0byBhIEdlcm1hbj8KZG90Y28geDEgaXMgR2VybWFuL3Jl ZmxlY3RzIEdlcm1hbiBjdWx0dXJlIGluIGFzcGVjdCB4MgoKSSBjYW7igJl0IHNheSBtaSB2ZWNu dSB6b+KAmWUgZG90Y28gYmVjYXVzZSB0aGF0IHdvdWxkIGxlYXZlIHR3byBzZWxicmkgaW4gYSBi cmlkaSwgd2hpY2ggaXMgbm90IHBlcm1pdHRlZC4gSSBjb3VsZCBzYXkgbWkgZG90Y28gdmVjbnUg YnV0IHRoYXQgd291bGQgYmUgdW5uZWNlc3NhcnkgdmFndWUgLSBJIGNvdWxkIHNlbGwgaW4gYSBH ZXJtYW4gd2F5Li4gTGlrZXdpc2UsIGlmIEkgd2FudCB0byBzYXkg4oCcSSBhbSBmcmllbmRzIHdp dGggYW4gQW1lcmljYW7igJ0sIHdoYXQgc2hvdWxkIEkgc2F5PwpwZW5kbyDigJMgMXggaXMgYSBm cmllbmQgb2YgeDIKbWVya28g4oCTIHgxIGlzIEFtZXJpY2FuL3JlZmxlY3QgVVMgY3VsdHVyZSBp biBhc3BlY3QgeDIKCkFnYWluLCB0aGUgb2J2aW91cyB3b3VsZCBiZSB0byBzYXkgbWkgcGVuZG8g bWVya28sIGJ1dCB0aGF0IHdvdWxkIGZvciBhIHRhbnJ1LCBtZWFuaW5nIOKAnEkgYW0gZnJpZW5k LWxpa2UgQW1lcmljYW7igJ0sIHdoaWNoIGlzIHdyb25nLiBXaGF0IHdlIHJlYWxseSB3YW50IHRv IGlzIHRvIHRha2UgdGhlIHNlbGJyaSBtZXJrbyBhbmQgdHJhbnNmb3JtIGl0IGludG8gYSBzdW10 aSBzbyBpdCBjYW4gYmUgdXNlZCBpbiB0aGUgc2VsYnJpIHBlbmRvLiBUaGlzIGlzIGRvbmUgYnkg dGhlIHR3byB3b3JkcyBsbyBhbmQga3UuCmxvIOKAkyBnZW5lcmljIGJlZ2luIGNvbnZlcnQgc2Vs YnJpIHRvIHN1bXRpIHdvcmQuIEV4dHJhY3RzIHgxIG9mIHNlbGJyaSB0byB1c2UgYXMgc3VtdGku Cmt1IOKAkyBlbmQgY29udmVydCBzZWxicmkgdG8gc3VtdGkgcHJvY2Vzcy4KCllvdSBzaW1wbHkg cGxhY2UgYSBzZWxicmkgYmV0d2VlbiB0aGVzZSB0d28gd29yZHMsIGFuZCBpdCB0YWtlcyBhbnl0 aGluZyB0aGF0IGNhbiBmaWxsIHRoZSB4MSBvZiB0aGF0IHNlbGJyaSBhbmQgdHVybnMgaXQgaW50 byBhIHN1bXRpLgpTbyBmb3IgaW5zdGFuY2UsIHRoZSB0aGluZ3MgdGhhdCBjYW4gZmlsbCB6ZGFu aeKAmHMgeDFhcmUgb25seSB0aGluZ3Mgd2hpY2ggYXJlIGhvbWVzIG9mIHNvbWVib2R5LiBTbyBs byB6ZGFuaSBrdSBtZWFucyDigJxhIG9yIHNvbWUgaG9tZXMgZm9yIHNvbWVib2R5LuKAnSBTaW1p bGFybHksIGlmIEkgc2F5IHRoYXQgc29tZXRoaW5nIGlzIHBlbHh1LCBpdCBtZWFucyBpdOKAmXMg eWVsbG93LiBTbyBsbyBwZWx4dSBrdSByZWZlcnMgdG8gc29tZXRoaW5nIHllbGxvdy4KCk5vdyB5 b3UgZ290IHRoZSBuZWNlc3NhcnkgZ3JhbW1hciB0byBiZSBhYmxlIHRvIHNheSDigJxJIGFtIGZy aWVuZHMgd2l0aCBhbiBBbWVyaWNhbi7igJ0gSG93PwoKQW5zd2VyOiBtaSBwZW5kbyBsbyBtZXJr byBrdQoKVGhlcmUgaXMgYSBnb29kIHJlYXNvbiB3aHkgdGhlIGt1IGlzIG5lY2Vzc2FyeS4gVHJ5 IHRvIHRyYW5zbGF0ZSDigJxBIEdlcm1hbiBzZWxscyB0aGlzIHRvIG1l4oCdCgpBbnN3ZXI6IGxv IGRvdGNvIGt1IHZlY251IHRpIG1pIElmIHlvdSBsZWF2ZSBvdXQgdGhlIGt1LCB5b3UgZG8gbm90 IGdldCBhIGJyaWRpLCBidXQgc2ltcGx5IHRocmVlIHN1bXRpLiBTaW5jZSBsb+KApmt1IGNhbm5v dCBjb252ZXJ0IGJyaWRpLCB0aGUgdGkgaXMgZm9yY2VkIG91dHNpZGUgdGhlIHN1bXRpLCB0aGUg bG8tY29uc3RydWN0IGlzIGZvcmNlZCB0byBjbG9zZSBhbmQgaXQgc2ltcGx5IGJlY29tZXMgdGhl IHRocmVlIHN1bXRpIG9mIGxvIGRvdGNvIHZlY251IFtrdV0sIHRpIGFuZCBtaS4KCllvdSBhbHdh eXMgaGF2ZSB0byBiZSBjYXJlZnVsIHdpdGgganVmcmEgbGlrZSBsbyB6ZGFuaSBrdSBwZWx4dS4g SWYgdGhlIGt1IGlzIGxlZnQgb3V0IHRoZSBjb252ZXJzaW9uIHByb2Nlc3MgZG9lcyBub3QgZW5k LCBhbmQgaXQgc2ltcGx5IGJlY29tZXMgb25lIHN1bXRpLCBtYWRlIGZyb20gdGhlIHRhbnJ1IHpk YW5pIHBlbHh1IGFuZCB0aGVuIGNvbnZlcnRlZCB3aXRoIGxvLgoKCiEhTG9qYmFuIExlc3NvbnMg 4oCTIGxlc3NvbiBmb3VyIChhdHRpdHVkaW5hbHMpCkFub3RoZXIgY29uY2VwdCB3aGljaCBjYW4g YmUgdW5mYW1pbGlhciB0byBFbmdsaXNoIHNwZWFrZXIgaXMgdGhhdCBvZiBhdHRpdHVkaW5hbHMs IHdoaWNoICBhcmUgd29yZHMgd2hpY2ggZXhwcmVzcyBlbW90aW9ucyBkaXJlY3RseS4gVGhlIGlk ZWEgb2YgYXR0aXR1ZGluYWxzIG9yaWdpbmF0ZWQgaW4gdGhlIGZlbWluaXN0IGNvbnN0cnVjdGVk IGxhbmd1YWdlIEzDoWFkYW4sIHN1cHBvc2VkbHkgdG8gZW5hYmxlIHRydWUgZmVtYWxlIGVtb3Rp b25zLiBUaGUgaWRlYSB3YXMgdGhhdCBmZW1hbGUgZW1vdGlvbmFsIGV4cHJlc3Npb24gd2FzIGhp bmRlcmVkIGJ5IG1hbGUgZG9taW5hdGVkIGxhbmd1YWdlLgpJbiBMb2piYW4sIHRoZXJlIGlzIG5v IHN1Y2ggYWdlbmRhLCBhbmQgYXR0aXR1ZGluYWxzIG1vc3QgcHJvYmFibHkgaGF2ZSBiZWVuIGRl c2lnbmVkIGludG8gdGhlIGxhbmd1YWdlIGJlY2F1c2UgdGhleSB0dXJuZWQgb3V0IHRvIGJlIGlu Y3JlZGlibHkgYXdlc29tZSBhbmQgdXNlZnVsLiBUaGV5IGFsbCBoYXZlIGEgc28tY2FsbGVkIGZy ZWUgZ3JhbW1hciwgd2hpY2ggbWVhbnMgdGhhdCB0aGV5IGNhbiBhcHBlYXIgYWxtb3N0IGFueXdo ZXJlIHdpdGhpbiBicmlkaSB3aXRob3V0IGRpc3J1cHRpbmcgdGhlIGJyaWRp4oCZcyBncmFtbWFy IG9yIGFueSBncmFtbWF0aWNhbCBjb25zdHJ1Y3RzLgpJbiBMb2piYW4gZ3JhbW1hciwgYW4gYXR0 aXR1ZGluYWwgYXBwbGllcyB0byB0aGUgcHJldmlvdXMgd29yZC4gSWYgdGhhdCBwcmV2aW91cyB3 b3JkIGlzIGEgd29yZCB3aGljaCBiZWdpbnMgYSBjb25zdHJ1Y3QgKGxpa2UgLmkgb3IgbG8pLCBp dCBhcHBsaWVzIHRvIHRoZSBlbnRpcmUgY29uc3RydWN0LiBMaWtld2lzZSwgaWYgdGhlIGF0dGl0 dWRpbmFsIGZvbGxvd3MgYSB3b3JkIHdoaWNoIGVuZHMgYSBjb25zdHJ1Y3QgbGlrZSBrdSwgaXQg YXBwbGllcyB0byB0aGUgZW5kZWQgY29uc3RydWN0LgoKTGV04oCZcyBoYXZlIHR3byBhdHRpdHVk aW5hbHMgdG8gbWFrZSBzb21lIGV4YW1wbGVzOgoudWk6IGF0dGl0dWRpbmFsOiBzaW1wbGUgcHVy ZSBlbW90aW9uOiBoYXBwaW5lc3MgLSB1bmhhcHBpbmVzcwp6YeKAmWE6IGF0dGl0dWRpbmFsOiBl dmlkZW50aWFsOiBJIGRpcmVjdGx5IG9ic2VydmUKCk5vdGUgdGhhdCBpbiB0aGUgZGVmaW5pdGlv biBvZiAudWksIHRoZXJlIGFyZSBsaXN0ZWQgdHdvIGVtb3Rpb25zLCBoYXBwaW5lc3MgYW5kIHVu aGFwcGluZXNzLiBUaGlzIG1lYW5zIHRoYXQgLnVpIGlzIGRlZmluZWQgYXMgaGFwcGluZXNzLCB3 aGlsZSBpdHMg4oCcbmVnYXRpb27igJ0sIG1lYW5zIHVuaGFwcGluZXNzLiDigJxOZWdhdGlvbuKA nSBtaWdodCBiZSB0aGUgd3Jvbmcgd29yZCBoZXJlLiBUZWNobmljYWxseSwgdGhlIG90aGVyIGRl ZmluaXRpb24gb2YgLnVpIGlzIGFub3RoZXIgY29uc3RydWN0LCAudWkgbmFpLiBNb3N0IG9mIHRo ZSB0aW1lLCB0aGUgc2Vjb25kIGRlZmluaXRpb24gb2YgYXR0aXR1ZGluYWxzIC0gdGhlIG9uZXMg c3VmZml4ZWQgd2l0aCBuYWkgLSByZWFsbHkgaXMgdGhlIG5lZ2F0aW9uIG9mIHRoZSBiYXJlIGF0 dGl0dWRpbmFsLiBPdGhlciB0aW1lcywgbm90IHNvIG11Y2guCgpBbmQgc29tZSBtb3JlIHNlbGJy aSwganVzdCBmb3IgdGhlIGhlY2sgb2YgaXQ6CmNpdGthIOKAkyB4MSBlYXRzIHgyCnBsaXNlIOKA kyB4MSBpcyBhbiBhcHBsZSBvZiBzdHJhaW4vdHlwZSB4MgoKVGhlIHNlbnRlbmNlIGRvIGNpdGth IGxvIHBsaXNlIGt1IC51aSwgbWVhbnMg4oCcWW91IGVhdCBhbiBhcHBsZSwgeWF5IeKAnSAoZXhw cmVzc2luZyBlc3BlY2lhbGx5IHRoYXQgaXQgaXMgdGhlIGFwcGxlIHRoYXQgdGhlIHNwZWFrZXIg aXMgaGFwcHkgYWJvdXQsIG5vdCB0aGUgZWF0aW5nLCBvciB0aGUgZmFjdCB0aGF0IGl0IHdhcyB5 b3UuKSBJbiB0aGUgc2VudGVuY2UgZG8gemHigJlhIGNpdGthIGxvIHBsaXNlIGt1LCB0aGUgc3Bl YWtlciBkaXJlY3RseSBvYnNlcnZlcyB0aGF0IGl0IGlzIGluZGVlZCDigJx5b3XigJ0sIHdobyBl YXRzIGFuIGFwcGxlIGFzIG9wcG9zZWQgdG8gc29tZW9uZSBlbHNlLgoKSWYgYW4gYXR0aXR1ZGlu YWwgaXMgcGxhY2VkIGF0IHRoZSBiZWdpbm5pbmcgb2YgdGhlIGJyaWRpLCBpdCBpcyB1bmRlcnN0 b29kIHRvIGFwcGx5IHRvIGFuIGV4cGxpY2l0IG9yIGltcGxpY2l0IC5pLCB0aHVzIGFwcGx5aW5n IHRvIHRoZSBlbnRpcmUgYnJpZGk6Ci51aSB6YeKAmWEgZG8gZHVuZGEgbG8gcGxpc2Uga3UgbWkg 4oCTIOKAnFlheSwgSSBvYnNlcnZlIHRoYXQgeW91IGdpdmUgYW4vc29tZSBhcHBsZSB0byBtZSHi gJ0KCm1pIHZlY251IC51aSBuYWkgbG8gemRhbmkg4oCcSSBzZWxsICh3aGljaCBzdWNrcyEpIGEg aG91c2XigJ0uCgpUcnkgaXQgb3V0IHdpdGggYSBmZXcgZXhhbXBsZXMuIEZpcnN0LCB0aG91Z2gs IGhlcmUgYXJlIHNvbWUgbW9yZSBhdHRpdHVkaW5hbHM6Ci514oCZdSBhdHRpdHVkaW5hbDogc2lt cGxlIHB1cmUgZW1vdGlvbjogZ3VpbHQgLSByZW1vcnNlbGVzc25lc3MgLSBpbm5vY2VuY2UuCi5v aSBhdHRpdHVkaW5hbDogY29tcGxleCBwdXJlIGVtb3Rpb246IHBhaW4gLSBjb21wbGFjZW5jeSAt IGNvbWZvcnQuCi5pdSBhdHRpdHVkaW5hbDogbWlzY2VsbGFuZW91cyBwdXJlIGVtb3Rpb246IGxv dmUgLSBoYXRlLgoKTG9vayBhdCB0aGF0LCB0d28gd29yZHMgd2l0aCB0aHJlZSBlbW90aW9ucyBp biB0aGUgZGVmaW5pdGlvbiEgVGhlIG1pZGRsZSBvbmUgaXMgYWNjZXNzZWQgYnkgc3VmZml4aW5u ZyB3aXRoIGN14oCZaS4gSXTigJlzIGNvbnNpZGVyZWQgdGhlIG1pZHBvaW50IG9mIHRoZSBlbW90 aW9uLgoKVHJ5IHNheWluZyDigJxJIGdpdmUgc29tZXRoaW5nIHRvIGEgR2VybWFuLCB3aG8gSSBs b3Zl4oCdCgpBbnN3ZXI6IG1pIGR1bmRhIGZpIGxvIGRvdGNvIGt1IC5pdSBvciB6b+KAmWUgaW5z dGVhZCBvZiBmaQoKTm93IOKAnEFhaCwgSSBlYXQgYSB5ZWxsb3cgYXBwbGXigJ0KCkFuc3dlcjog Lm9pIG5haSBtaSBjaXRrYSBsbyBwZWx4dSBwbGlzZSBrdQoKTGV04oCZcyBoYXZlIGFub3RoZXIg YXR0aXR1ZGluYWwgb2YgYSBkaWZmZXJlbnQga2luZCB0byBpbGx1c3RyYXRlIHNvbWV0aGluZyBw ZWN1bGlhcjoKLmVpIEF0dGl0dWRpbmFsOiBjb21wbGV4IHByb3Bvc2l0aW9uYWwgZW1vdGlvbjog b2JsaWdhdGlvbiAtIGZyZWVkb20uCgpTbywgcXVpdGUgZWFzeTog4oCcSSBoYXZlIHRvIGdpdmUg dGhlIGFwcGxlIGF3YXnigJ0gaXMgbWkgZHVuZGEgLmVpIGxvIHBsaXNlIGt1LCByaWdodD8gSXQg aXMsIGFjdHVhbGx5ISBXaGVuIHlvdSB0aGluayBhYm91dCBpdCwgdGhhdOKAmXMgd2VpcmQuIFdo eSBpcyBpdCB0aGF0IGFsbCB0aGUgb3RoZXIgYXR0aXR1ZGluYWxzIHdlIGhhdmUgc2VlbiBzbyBm YXIgZXhwcmVzc2VzIHRoZSBzcGVha2VycyBmZWVsaW5nIGFib3V0IHRoZSBicmlkaSwgYnV0IHRo aXMgb25lIGFjdHVhbGx5IGNoYW5nZXMgd2hhdCB0aGUgYnJpZGkgbWVhbnM/IFN1cmVseSwgYnkg c2F5aW5nIOKAnEkgaGF2ZSB0byBnaXZlIHRoZSBhcHBsZSBhd2F54oCdLCB3ZSBzYXkgbm90aGlu ZyBhYm91dCB3aGV0aGVyIHRoZSBhcHBsZSBhY3R1YWxseSBpcyBiZWluZyBnaXZlbiBhd2F5LiBJ ZiBJIGhhZCB1c2VkIC51aSwgaG93ZXZlciwgSSB3b3VsZCBhY3R1YWxseSBoYXZlIHN0YXRlZCB0 aGF0IEkgZ2F2ZSB0aGUgYXBwbGUgYXdheSwgYW5kIHRoYXQgSSB3YXMgaGFwcHkgYWJvdXQgaXQu IFdoYXTigJlzIHRoYXQgYWxsIGFib3V0PwoKVGhpcyBpc3N1ZSwgZXhhY3RseSBob3cgYXR0aXR1 ZGluYWxzIGNoYW5nZSB0aGUgY29uZGl0aW9ucyBvbiB3aGljaCBhIGJyaWRpIGlzIHRydWUsIGlz IGEgc3ViamVjdCBvZiBhIG1pbm9yIGRlYmF0ZS4gVGhlIG9mZmljaWFsLCDigJx0ZXh0Ym9va+KA nSBydWxlcywgd2hpY2ggcHJvYmFibHkgd29u4oCZdCBiZSBjaGFuZ2VkLCBpcyB0aGF0IHRoZXJl IGlzIGEgZGlzdGluY3Rpb24gYmV0d2VlbiDigJxwdXJlIGVtb3Rpb25z4oCdIGFuZCDigJxwcm9w b3NpdGlvbmFsIGVtb3Rpb25z4oCdLiBPbmx5IHByb3Bvc3Rpb25hbCBlbW90aW9ucyBjYW4gY2hh bmdlIHRoZSB0cnV0aCBjb25kaXRpb25zLCB3aGlsZSBwdXJlIGVtb3Rpb25zIGNhbm5vdC4gSW4g b3JkZXIgdG8gZXhwcmVzcyBhIHByb3Bvc2l0aW9uYWwgZW1vdGlvbmFsIGF0dGl0dWRpbmFsIHdp dGhvdXQgY2hhbmdpbmcgdGhlIHRydXRoIHZhbHVlIG9mIHRoZSBicmlkaSwgeW91IGNhbiBqdXN0 IHNlcGFyYXRlIGl0IGZybyB0aGUgYnJpZGkgd2l0aCAuaS4gVGhlcmUgaXMgYWxzbyBhIHdvcmQg Zm9yIGV4cGxpY2l0bHkgY29uc2VydmluZyBvciBjaGFuZ2luZyB0aGUgdHJ1dGggY29uZGl0aW9u cyBvZiBhIGJyaWRpOgpkYeKAmWkgYXR0aXR1ZGluYWw6IGRpc2N1cnNpdmU6IHN1cHBvc2luZyAt IGluIGZhY3QKU2F5aW5nIGRh4oCZaSBpbiBhIGJyaWRpIGNoYW5nZXMgdGhlIHRydXRoIGNvbmRp dGlvbnMuIFNheWluZyBkYeKAmWkgbmFpIHByZXNlcnZlcyBpdCwgZXZlbiB3aXRoIGEgcHJvcG9z aXRpb25hbCBlbW90aW9uYWwgYXR0aXR1ZGluYWwuCgpTbywgd2hhdOKAmXMgdHdvIHdheXMgb2Yg c2F5aW5nIOKAnEkgZ2l2ZSB0aGUgYXBwbGUgYXdheSwgdG8gd2hpY2ggSSBmZWVsIG9ibGlnYXRp b27igJ0/CgpBbnN3ZXI6IG1pIGR1bmRhIGxvIHBsaXNlIC5pIC5laSAgYW5kIG1pIGR1bmRhIGRh 4oCZaSBuYWkgLmVpIGxvIHBsaXNlCgpUaGUgZmVlbGluZyBvZiBhbiBhdHRpdHVkaW5hbCBjYW4g YmUgc3Vic2NyaWJlZCB0byBzb21lb25lIGVsc2UgdXNpbmcgZGFpLiBVc3VhbGx5IGluIG9yZGlu YXJ5IHNwZWVjaCwgdGhlIGF0dGl0dWRpbmFsIGlzIHN1YnNjcmliZWQgdG8gdGhlIGxpc3RlbmVy LCBidXQgaXQgZG9lc27igJl0IGhhdmUgdG8gYmUgc28uIEFsc28sIGJlY2F1c2UgdGhlIHdvcmQg aXMgZ2xvc3NlZCDigJxlbXBhdGh54oCdIChmZWVsaW5nIG90aGVycyBlbW90aW9ucyksIHNvbWUg TG9qYmFuaXN0cyBtaXN0YWtlbmx5IHRoaW5rIHRoYXQgdGhlIGxpc3RlbmVyIG11c3Qgc2hhcmUg dGhlIGVtb3Rpb24gYmVpbmcgc3Vic2NyaWJlZCB0byBvdGhlcnMuCkV4YW1wbGU6IHXigJlpIC5v aSBkYWkgY2l0a2EgdGkgLSDigJxIYSBoYSwgdGhpcyB3YXMgZWF0ZW4hIFRoYXQgbXVzdCBoYXZl IGh1cnQh4oCdCgpXaGF0IG9mdGVuIHVzZWQgcGhyYXNlIGNvdWxkIC5vaSB14oCZaSBkYWkgbWVh bj8KCkFuc3dlcjog4oCcT3VjaCwgdmVyeSBmdW5ueS7igJ0KCkFuZCBhbm90aGVyIG9uZSB0byB0 ZXN0IHlvdXIga25vd2xlZGdlOiBUcnkgdG8gdHJhbnNsYXRlIOKAnEhlIHdhcyBzb3JyeSBoZSBz b2xkIGEgaG91c2XigJ0gKHJlbWVtYmVyaW5nLCB0aGF0IHRlbnNlIGlzIGltcGxpZWQgYW5kIG5l ZWQgbm90IGJlIHNwZWNpZmllZC4gQWxzbywg4oCcaGXigJ0gY291bGQgYmUgb2J2aW91cyBmcm9t IGNvbnRleHQpCgpBbnN3ZXI6IHXigJl1IGRhaSB2ZWNudSBsbyB6ZGFuaSBrdQoKTGFzdGx5LCB0 aGUgaW50ZW5zaXR5IG9mIGFuIGF0dGl0dWRpbmFsIGNhbiBiZSBzcGVjaWZpZWQgdXNpbmcgY2Vy dGFpbiB3b3Jkcy4gVGhlc2UgY2FuIGJlIHVzZWQgYWZ0ZXIgYW4gYXR0aXR1ZGluYWwsIG9yIGFu IGF0dGl0dWRpbmFsIHdpdGggbmFpIG9yIGN14oCZaSBzdWZmaXhlZC4gSXTigJlzIGxlc3MgY2xl YXIgd2hhdCBoYXBwZW5zIHdoZW4geW91IGF0dGFjaCBpdCB0byBvdGhlciB3b3JkcywgbGlrZSBh IHNlbGJyaSwgbXVzdCBpdOKAmXMgbW9zdGx5IHVuZGVyc3Rvb2QgYXMgaW50ZW5zaWZ5aW5nIG9y IHdlYWtlbmluZyB0aGUgc2VsYnJpIGluIHNvbWUgdW5zcGVjaWZpZWQgd2F5Ogp8fCBNb2RpZnlp bmcgd29yZCAgfCBJbnRlbnNpdHkgIAogY2FpfCAgIEV4dHJlbWUKIHNhaXwgICBTdHJvbmcKIChu b25lKXwgICBVbnNwZWNpZmllZCAobWVkaXVtKQogcnUnZSAgfCAgIFdlYWt8fAoKV2hhdCBlbW90 aW9uIGlzIGV4cHJlc3NlZCB1c2luZyAudeKAmWkgbmFpIHNhaSA/CgpBbnN3ZXI6IFN0cm9uZyB3 ZWFyaW5lc3MKCkFuZCBob3cgd291bGQgeW91IGV4cHJlc3MgdGhhdCB5b3UgYXJlIG1pbGRseSBy ZW1vcnNlbGVzcz8KCkFuc3dlcjogLnXigJl1IGN14oCZaSBydeKAmWUKCiEhTG9qYmFuIGxlc3Nv bnMg4oCTIGxlc3NvbiBmaXZlIChTRSkKQmVmb3JlIHdlIHZlbnR1cmUgaW50byB0aGUgdGVycml0 b3J5IG9mIG1vcmUgY29tcGxleCBjb25zdHJ1Y3RzLCB5b3Ugc2hvdWxkIGxlYXJuIGFub3RoZXIg bWVjaGFuaXNtIGZvciByZW9yZGVyaW5nIHRoZSBzdW10aSBvZiBhIHNlbGJyaS4gVGhpcywgYXMg d2Ugd2lsbCBzaG93LCBpcyB2ZXJ5IHVzZWZ1bCBmb3IgbWFraW5nIGRlc2NyaXB0aW9uLWxpa2Ug c3VtdGkgKHRoZSBraW5kIG9mIHN1bXRpIHdpdGggbG8pLgpDb25zaWRlciB0aGUgc2VudGVuY2Ug 4oCcSSBlYXQgYSBnaWZ04oCdLCB3aGljaCBtaWdodCBiZSBhcHByb3ByaWF0ZSBpZiB0aGF0IGdp ZnQgaXMgYW4gYXBwbGUuIFRvIHRyYW5zbGF0ZSB0aGlzLCBpdCB3b3VsZCBzZWVtIG5hdHVyYWwg dG8gbG9vayB1cCBhIHNlbGJyaSBtZWFuaW5nIOKAnGdpZnTigJ0gYmVmb3JlIGNvbnRpbnVpbmcu IEhvd2V2ZXIsIGlmIG9uZSBsb29rcyBjYXJlZnVsbHkgYXQgdGhlIGRlZmluaXRpb24gb2YgZHVu ZGEsIHgxIGdpdmVzIHgyIHRvIHgzLCBvbmUgcmVhbGl6ZXMgdGhhdCB0aGUgeDIgb2YgZHVuZGEg aXMgc29tZXRoaW5nIGdpdmVuIOKAkyBhIGdpZnQuClNvLCB0byBleHByZXNzIHRoYXQgc2VudGVu Y2UsIHdlIGNhbuKAmXQgc2F5IG1pIGNpdGthIGxvIGR1bmRhIGt1LCBiZWNhdXNlIGxvIGR1bmRh IGt1IHdvdWxkIGJlIHRoZSB4MSBvZiBkdW5kYSwgd2hpY2ggaXMgYSBkb25vciBvZiBhIGdpZnQu IENhbm5pYmFsaXNtIGFzaWRlLCB3ZSBkb27igJl0IHdhbnQgdG8gc2F5IHRoYXQuIFdoYXQgd2Ug d2FudCBpcyBhIHdheSB0byBleHRyYWN0IHRoZSB4MiBvZiBhIHNlbGJyaS4KVGhpcyBpcyBvbmUg ZXhhbXBsZSB3aGVyZSBpdCBpcyB1c2VmdWwgdG8gdXNlIHRoZSB3b3JkIHNlLiBXaGF0IHNlIGRv ZXMgaXMgdG8gbW9kaWZ5IGEgc2VsYnJpIHN1Y2ggdGhhdCB0aGUgeDEgYW5kIHgyIG9mIHRoYXQg c2VsYnJpIHRyYWRlIHBsYWNlcy4gVGhlIGNvbnN0cnVjdCBvZiBzZSArIHNlbGJyaSBpcyBvbiBp dHMgb3duIGNvbnNpZGVyZWQgb25lIHNlbGJyaS4gTGV04oCZcyB0cnkgd2l0aCBhbiBvcmRpbmFy eSBzZW50ZW5jZToKZmFudmEgPSDigJx4MSB0cmFuc2xhdGVzIHgyIHRvIGxhbmd1YWdlIHgzIGZy b20gbGFuZ3VhZ2UgeDQgd2l0aCByZXN1bHQgb2YgdHJhbnNsYXRpb24geDXigJ0KdGkgc2UgZmFu dmEgbWkgPSBtaSBmYW52YSB0aQpUaGlzIGlzIHRyYW5zbGF0ZWQgYnkgbWUgKD0gSSB0cmFuc2xh dGUgdGhpcykuIE9mdGVuLCBidXQgbm90IGFsd2F5cywgYnJpZGkgd2l0aCBzZS1jb25zdHJ1Y3Rz IGFyZSB0cmFuc2xhdGVkIHRvIHNlbnRlbmNlcyB3aXRoIHRoZSBwYXNzaXZlIHZvaWNlLCBzaW5j ZSB0aGUgeDEgaXMgb2Z0ZW4gdGhlIG9iamVjdCB0YWtpbmcgYWN0aW9uLgpzZSBoYXMgaXRzIG93 biBmYW1pbHkgb2Ygd29yZHMuIEFsbCBvZiB0aGVtIHN3YXAgYSBkaWZmZXJlbnQgcGxhY2Ugd2l0 aCB0aGUgeDEuCnx8c2UJfHN3YXAgeDEgYW5kIHgyCnRlCXxzd2FwIHgxIGFuZCB4Mwp2ZQl8c3dh cCB4MSBhbmQgeDQKeGUJfHN3YXAgeDEgYW5kIHg1fHwKCgpOb3RlIHRoYXQgcywgdCwgdiwgYW5k IHggYXJlIGNvbnNlY3V0aXZlIGNvbnNvbmFudHMgaW4gdGhlIGxvamJhbiBhbHBoYWJldC4KClNv OiBVc2luZyB0aGlzIGtub3dsZWRnZSwgd2hhdCB3b3VsZCB0aSB4ZSBmYW52YSB0aSBtZWFuPwoK QW5zd2VyOiDigJxUaGlzIGlzIGEgdHJhbnNsYXRpb24gb2YgdGhpc+KAnSAob3IgZmFudmEgdGkg ZnUgdGkpCgpzZSBhbmQgaXRzIGZhbWlseSBjYW4gb2YgY291cnNlIGJlIGNvbWJpbmVkIHdpdGgg ZmEgYW5kIGl0cyBmYW1pbHkuIFRoZSByZXN1bHQgY2FuIGJlIHZlcnkgY29uZnVzaW5nIGluZGVl ZCwgaWYgeW91IHdpc2ggdG8gbWFrZSBpdCBzbzoKa2xhbWEgPSDigJx4MSB0cmF2ZWxzL2dvZXMg dG8geDIgZnJvbSB4MyB2aWEgeDQgdXNpbmcgeDUgYXMgdHJhbnNwb3J0YXRpb24gZGV2aWNl4oCd CmZ1IGxvIHpkYW5pIGt1IHRlIGtsYW1hIGZlIGRvIHRpIGZhIG1pLiA9IG1pIHRlIGtsYW1hIGRv IHRpIGxvIHpkYW5pIGt1IGFuZCBzaW5jZSB0ZSBleGNoYW5nZXMgeDEgYW5kIHgzOiA9IHRpIGts YW1hIGRvIG1pIGxvIHpkYW5pIGt1CuKAnFRoaXMgdHJhdmVscyB0byB5b3UgZnJvbSBtZSB2aWEg YSBob21lLuKAnSBPZiBjb3Vyc2UsIG5vIG9uZSB3b3VsZCBtYWtlIHN1Y2ggYSBzZW50ZW5jZSBl eGNlcHQgdG8gY29uZnVzZSBwZW9wbGUsIG9yIGNydWVsbHkgdG8gdGVzdCB0aGVpciB1bmRlcnN0 YW5kaW5nIG9mIExvamJhbiBncmFtbWFyLgpBbmQgdGh1cywgd2UgaGF2ZSBjb21lIHRvIHRoZSBw b2ludCB3aGVyZSB3ZSBjYW4gc2F5IOKAnEkgZWF0IGEgZ2lmdC7igJ0uIFNpbXBseSBleGNoYW5n ZSB0aGUgc3VtdGkgcGxhY2VzIG9mIGR1bmRhIHRvIGdldCB0aGUgZ2lmdCB0byBiZSB4MSwgdGhl biBleHRyYWN0IHRoaXMgbmV3IHgxIHdpdGggbG8uLi5rdS4gU28sIGhvdyB3b3VsZCB5b3Ugc2F5 IGl0PwpPbmUgKHBvc3NpYmxlKSBhbnN3ZXI6IG1pIGNpdGthIGxvIHNlIGR1bmRhIGt1ClRoaXMg c2hvd3Mgb25lIG9mIHRoZSBtYW55IHVzZXMgZm9yIHNlIGFuZCBpdHMgZmFtaWx5LgoKCiEhTG9q YmFuIGxlc3NvbnMg4oCTIGxlc3NvbiBzaXggKE5VKQpTbyBmYXIgd2UgaGF2ZSBvbmx5IGV4cHJl c3NlZCBzaW5nbGUgc2VudGVuY2VzIG9uZSBhdCBhIHRpbWUuIFRvIGV4cHJlc3MgbW9yZSBjb21w bGV4IHRoaW5ncywgaG93ZXZlciwgeW91IG9mdGVuIG5lZWQgc3Vib3JkaW5hdGUgc2VudGVuY2Vz LiBMdWNraWx5LCB0aGVzZSBhcmUgbXVjaCBlYXNpZXIgaW4gTG9qYmFuIHRoYW4gd2hhdCBvbmUg d291bGQgZXhwZWN0LgpXZSBjYW4gYmVnaW4gd2l0aCBhbiBleGFtcGxlIHRvIGRlbW9uc3RyYXRl IHRoaXM6IOKAnEkgYW0gaGFwcHkgdGhhdCB5b3UgYXJlIG15IGZyaWVuZC7igJ0gSGVyZSwgdGhl IG1haW4gYnJpZGkgaXMg4oCcSSBhbSBoYXBweSB0aGF0IFgu4oCdLCBhbmQgdGhlIHN1Yi1icmlk aSBpcyDigJxZb3UgYXJlIG15IGZyaWVuZC7igJ0gTG9va2luZyBhdCB0aGUgZGVmaW5pdGlvbiBm b3Ig4oCcaGFwcHnigJ0sIHdoaWNoIGlzIGdsZWtpOgpnbGVraSA9IOKAnHgxIGlzIGhhcHB5IGFi b3V0IHgyIChldmVudC9zdGF0ZSnigJ0KT25lIHNlZXMgdGhhdCB0aGUgeDIgbmVlZHMgdG8gYmUg YW4gZXZlbnQgb3IgYSBzdGF0ZS4gVGhpcyBpcyBuYXR1cmFsLCBiZWNhdXNlIG9uZSBjYW5ub3Qg YmUgaGFwcHkgYWJvdXQgYW4gb2JqZWN0IGluIGl0c2VsZiwgb25seSBhYm91dCBzb21lIHN0YXRl IHRoZSBvYmplY3QgaXMgaW4uIEJ1dCBhbGFzISBPbmx5IGJyaWRpIGNhbiBleHByZXNzIGEgc3Rh dGUgb3IgYW4gZXZlbnQsIGFuZCBvbmx5IHN1bXRpIGNhbiBmaWxsIHRoZSB4MiBvZiBnbGVraSEu CkFzIHlvdSBtaWdodCBoYXZlIGd1ZXNzZWQsIHRoZXJlIGlzIGEgc29sdXRpb24uIFRoZSB3b3Jk cyBzdeKAmXUuLi5rZWkgaXMgYSBnZW5lcmljIOKAnGNvbnZlcnQgYnJpZGkgdG8gc2VsYnJp4oCd IGZ1bmN0aW9uLCBhbmQgd29ya3MganVzdCBsaWtlIGxv4oCma3UuIEV4YW1wbGU6Cm1yb2Jp4oCZ byDigJx4MSBkaWVzIHVuZGVyIGNvbmRpdGlvbiB4MuKAnQptaSBzdeKAmXUgZG8gbXJvYmnigJlv IGtlaSDigJMg4oCcSSBhbSB5b3VyIGRlYXRo4oCdLgpJdOKAmXMgaGFyZCB0byBmaW5kIGdvb2Qg dXNlcyBvZiBhIGJyaWRpIGFzIGEgc2VsYnJpLCBhbmQgdGhlIGFib3ZlIGV4YW1wbGUgc2VlbXMg YSBsaXR0bGUgdW5jb252aW5jaW5nLiBIb3dldmVyLCBzaW5jZSBzdeKAmXUgQlJJREkga2VpIGlz IGEgc2VsYnJpLCBvbmUgY2FuIGNvbnZlcnQgaXQgdG8gYSBzdW10aSB1c2luZyBsby4uLmt1LgpO b3cgd2UgaGF2ZSB0aGUgZXF1aXBtZW50IHRvIGV4cHJlc3Mg4oCcSSBhbSBoYXBweSB0aGF0IHlv dSBhcmUgbXkgZnJpZW5k4oCdLiBUcnkgaXQgb3V0IQpwZW5kbyDigJx4MSBpcyBhIGZyaWVuZCBv ZiB4MuKAnQoKQW5zd2VyOiBtaSBnbGVraSBsbyBzdeKAmXUgZG8gcGVuZG8gbWkga2VpIGt1CgpI b3dldmVyLCBzdeKAmXXigKZrZWkgZG9lcyBub3Qgc2VlIG11Y2ggdXNlLiBQZW9wbGUgcHJlZmVy IHRvIHVzZSB0aGUgbW9yZSBzcGVjaWZpYyB3b3JkcyBudeKApmtlaSBhbmQgZHXigJl14oCma2Vp LiBUaGV5IHdvcmsgdGhlIHNhbWUgd2F5LCBidXQgbWVhbiBzb21ldGhpbmcgZGlmZmVyZW50LiBu deKApmtlaSB0cmVhdHMgdGhlIGJyaWRpIGluIGJldHdlZW4gYXMgYW4gZXZlbnQgb3Igc3RhdGUs IGFuZCBkdeKAmXXigKZrZWkgdHJlYXRzIGl0IGFzIGFuIGFic3RyYWN0IGJyaWRpLCBmb3IgZXhw cmVzc2luZyB0aGluZ3MgbGlrZSBpZGVhcywgdGhvdWdodHMgb3IgdHJ1dGhzLiBBbGwgdGhlc2Ug d29yZHMgKGV4Y2VwdCBrZWkpIGFyZSBjYWxsZWQgYWJzdHJhY3RvcnMuIFRoZXJlIGFyZSBtYW55 IG9mIHRoZW0sIGFuZCBvbmx5IGZldyBhcmUgdXNlZCBtdWNoLiBzdeKAmXXigKZrZWkgaXMgYSBn ZW5lcmFsIGFic3RyYWN0b3IsIGFuZCB3aWxsIHdvcmsgaW4gYWxsIGNhc2VzLgoKVXNlIG51IHRv IHNheSDigJxJ4oCZbSBoYXBweSBhYm91dCB0YWxraW5nIHRvIHlvdS7igJ0KdGF2bGEgeDEgdGFs a3MgdG8geDIgYWJvdXQgc3ViamVjdCB4MyBpbiBsYW5ndWFnZSB4NC4KCkFuc3dlcjogbWkgZ2xl a2kgbG8gbnUgdGF2bGEgZG8gKG5vdGljZSBib3RoIHRoZSBFbmdsaXNoIGFuZCB0aGUgTG9qYmFu IGlzIHZhZ3VlIGFzIHRvIHdobyBpcyBkb2luZyB0aGUgdGFsa2luZykuCk90aGVyIGltcG9ydGFu dCBhYnN0cmFjdG9ycyBpbmNsdWRlOiBrYS4uLmtlaSAocHJvcGVydHkgYWJzdHJhY3Rpb24pLCBz aeKAmW8uLi5rZWkgKGNvbmNlcHQvaWRlYSBhYnN0cmFjdGlvbiksIG5pLi4ua2VpIChxdWFudGl0 eSBhYnN0cmFjdGlvbikgYW1vbmcgb3RoZXJzLgoKSXQgaXMgaW1wb3J0YW50IHRvIG5vdGljZSB0 aGF0IHNvbWUgYWJzdHJhY3RvcnMgaGF2ZSBzZXZlcmFsIHN1bXRpIHBsYWNlcy4gQXMgYW4gZXhh bXBsZSwgZHXigJl1IGNhbiBiZSBtZW50aW9uZWQuIGR14oCZdSBpcyBkZWZpbmVkOgpkdeKAmXUg PSDigJxhYnN0cmFjdG9yLiB4MSBpcyB0aGUgcHJlZGljYXRlL2JyaWRpIG9mIFticmlkaV0gZXhw cmVzc2VkIGluIHNlbnRlbmNlIHgy4oCdLgpUaGUgb3RoZXIgc3VtdGkgcGxhY2VzIGJlc2lkZXMg eDEgaXMgcmFyZWx5IHVzZWQsIGJ1dCBsbyBzZSBkdeKAmXUgQlJJREkga2VpIGt1IGlzIHNvbWV0 aW1lcyB1c2VkIGFzIGEgc3VtdGkgZm9yIGluZGlyZWN0IHF1b3RhdGlvbjog4oCcSSBzYWlkIHRo YXQgSSB3YXMgZ2l2ZW4gYSBkb2figJ0gY2FuIGJlIHdyaXR0ZW4gbWkgY3Vza3UgbG8gc2UgZHXi gJl1IG1pIHRlIGR1bmRhIGxvIGdlcmt1IGt1IGtlaSBrdSwgaWYgeW91IHdpbGwgcGFyZG9uIHRo ZSB3ZWlyZCBleGFtcGxlLgpjdXNrdSB4MSBleHByZXNzZXMgeDIgdG8geDMgdGhyb3VnaCBtZWRp dW0geDQKCiEhTG9qYmFuIGxlc3NvbnMg4oCTIGxlc3NvbiBzZXZlbiAoTk9JKQpXaGlsZSB3ZeKA mXJlIGF0IGl0LCB0aGVyZeKAmXMgYW5vdGhlciB0eXBlIG9mIHN1Ym9yZGluYXRlIGJyaWRpLiBU aGVzZSBhcmUgY2FsbGVkIHJlbGF0aXZlIGNsYXVzZXMuIFRoZXkgYXJlIHNlbnRlbmNlcyB3aGlj aCBhZGQgc29tZSBkZXNjcmlwdGlvbiB0byBhIHN1bXRpLiBJbmRlZWQsIHRoZSDigJx3aGljaOKA nSBpbiB0aGUgcHJldmlvdXMgc2VudGVuY2UgbWFya2VkIHRoZSBiZWdpbm5pbmcgb2YgYSByZWxh dGl2ZSBjbGF1c2UgaW4gRW5nbGlzaCBkZXNjcmliaW5nIHJlbGF0aXZlIGNsYXVzZXMuIEluIExv amJhbiwgdGhleSBjb21lIGluIHR3byBmbGF2b3JzLCBhbmQgaXQgbWlnaHQgYmUgd29ydGggZGlz dGluZ3Vpc2hpbmcgdGhlIHR3byBraW5kcyBiZWZvcmUgbGVhcm5pbmcgaG93IHRvIGV4cHJlc3Mg dGhlbS4KVGhlIHR3byBraW5kcyBhcmUgY2FsbGVkIHJlc3RyaWN0aXZlIGFuZCBub24tcmVzdHJp Y3RpdmUgKG9yIGluY2lkZW50aWFsKSByZWxhdGl2ZSBjbGF1c2VzLiBBbiBleGFtcGxlIHdvdWxk IGJlIGdvb2QgaGVyZToK4oCcTXkgYnJvdGhlciwgd2hvIGlzIHR3byBtZXRlcnMgdGFsbCwgaXMg YSBwb2xpdGljaWFuLuKAnSBUaGlzIGNhbiBiZSB1bmRlcnN0b29kIGluIHR3byB3YXlzLiBJIGNv dWxkIGhhdmUgc2V2ZXJhbCBicm90aGVycywgaW4gd2hpY2ggY2FzZSBzYXlpbmcgaGUgaXMgdHdv IG1ldGVycyB0YWxsIHdpbGwgbGV0IHlvdSBrbm93IHdoaWNoIGJyb3RoZXIgSSBhbSB0YWxraW5n IGFib3V0LiBPciBJIG1pZ2h0IGhhdmUgb25seSBvbmUgYnJvdGhlciwgaW4gd2hpY2ggY2FzZSBJ IGFtIHNpbXBseSBnaXZpbmcgeW91IGFkZGl0aW9uYWwgaW5mb3JtYXRpb24uCgpJbiBFbmdsaXNo IGFzIHdlbGwgYXMgTG9qYmFuIHdlIGRpc3Rpbmd1aXNoIGJldHdlZW4gdGhlc2UgdHdvIGtpbmRz IOKAkyB0aGUgZmlyc3QgaW50ZXJwcmV0YXRpb24gaXMgcmVzdHJpY3RpdmUgKHNpbmNlIGl0IGhl bHBzIHJlc3RyaWN0IHRoZSBwb3NzaWJsZSBicm90aGVycyBJIG1pZ2h0IGJlIHRhbGtpbmcgYWJv dXQpLCB0aGUgc2Vjb25kIG5vbi1yZXN0cmljdGl2ZS4gV2hlbiBzcGVha2luZyBFbmdsaXNoLCBj b250ZXh0IGFuZCB0b25lIG9mIHZvaWNlIChvciBpbiB3cml0dGVuIEVuZ2xpc2gsIHB1bmN0dWF0 aW9uKSBoZWxwcyB1cyBkaXN0aW5ndWlzaCBiZXR3ZWVuIHRoZXNlIHR3bywgYnV0IG5vdCBzbyBp biBMb2piYW4uIExvamJhbiB1c2UgdGhlIGNvbnN0cnVjdHMgcG9p4oCma3XigJlvIGFuZCBub2ni gKZrdeKAmW8gZm9yIHJlc3RyaWN0aXZlIGFuZCBub24tcmVzdHJpY3RpdmUgcmVsYXRpdmUgY2xh dXNlcywgcmVzcGVjdGl2ZWx5LgpMZXTigJlzIGhhdmUgYSBMb2piYW5pYyBleGFtcGxlLCB3aGlj aCBjYW4gYWxzbyBleHBsYWluIG91ciBzdHJhbmdlIGdpZnQtZWF0aW5nIGJlaGF2aW91ciBpbiB0 aGUgZXhhbXBsZSBpbiBjaGFwdGVyIDU6CgptaSBjaXRrYSBsbyBzZSBkdW5kYSBrdSBwb2kgcGxp c2Uga3XigJlvID0g4oCcSSBlYXQgYSBnaWZ0IHN1Y2ggdGhhdCAoc29tZXRoaW5nIGlzKSBhbiBh cHBsZeKAnS4gSGVyZSB0aGUgcG9p4oCma3XigJlvIGlzIHBsYWNlZCBqdXN0IGFmdGVyIGxvIHNl IGR1bmRhIGt1LCBzbyBpdCBhcHBsaWVzIHRvIHRoZSBnaWZ0LiBUbyBiZSBzdHJpY3QsIHRoZSBy ZWxhdGl2ZSBjbGF1c2UgZG9lcyBub3Qgc3BlY2lmeSB3aGF0IGlzIGFuIGFwcGxlLCBidXQgc2lu Y2UgdGhlIHJlbGF0aXZlIGNsYXVzZSBhcHBsaWVzIHRvIHRoZSBnaWZ0LCB3ZSBjYW4gc2FmZWx5 IGFzc3VtZSB0aGF0IGlzIG1lYW5zIHRoZSBnaWZ0IGlzIGFuIGFwcGxlLiBBZnRlciBhbGwsIGlu IHRoZSBjb250ZXh0IG9mIGNoYXB0ZXIgNSwgdGhpcyBzZWVtcyByZWFzb25hYmxlLiBJZiB3ZSB3 YW50IHRvIGJlIGFic29sdXRlbHkgc3VyZSB0aGF0IGl0IGluZGVlZCB3YXMgdGhlIGdpZnQgdGhh dCB3YXMgYW4gYXBwbGUsIHdlIHVzZSB0aGUgd29yZCBrZeKAmWEsIHdoaWNoIGlzIGEgcHJvLXN1 bXRpIChhIExvamJhbiBwcm9ub3VuKSByZXByZXNlbnRpbmcgdGhlIHN1bXRpIHdoaWNoIHRoZSBy ZWxhdGl2ZSBjbGF1c2UgaXMgYXR0YWNoZWQgdG8uCi51aSBtaSBjaXRrYSBsbyBzZSBkdW5kYSBr dSBwb2kga2XigJlhIHBsaXNlIGt14oCZbyA9IOKAnFlheSwgSSBlYXQgYSBnaWZ0LCB3aGljaCBp cyBhbiBhcHBsZeKAnS4KVG8gdW5kZXJsaW5lIHRoZSBkaWZmZXJlbmNlIGJldHdlZW4gcmVzdHJp Y3RpdmUgYW5kIG5vbi1yZXN0cmljdGl2ZSByZWxhdGl2ZSBjbGF1c2VzLCBoZXJl4oCZcyBhbm90 aGVyIGV4YW1wbGU6CmxvamJvID0g4oCceDEgcmVmbGVjdHMgTG9qYmFuaWMgY3VsdHVyZS9jb21t dW5pdHkgaXMgYXNwZWN0IHgyOyB4MSBpcyBMb2piYW5pYy7igJ0KbWkgbm9pIGxvamJvIGt14oCZ byBmYW52YSBmbyBsbyBsb2pibyBrdSA9IOKAnEksIHdobyBhbSBhIExvamJhbmljLCB0cmFuc2xh dGUgZnJvbSBzb21lIExvamJhbmljIGxhbmd1YWdlLuKAnSBIZXJlLCB0aGVyZSBpcyBub3QgbXVs dGlwbGUgdGhpbmdzIHdoaWNoIG1pIGNvdWxkIHJlZmVyIHRvLCBhbmQgdGhlIGZhY3QgdGhhdCBJ IGFtIGxvamJhbmljIGlzIG1lcmVseSBhZGRpdGlvbmFsIGluZm9ybWF0aW9uIG5vdCBuZWVkZWQg dG8gaWRlbnRpZnkgbWUuIFRoZXJlZm9yZSBub2nigKZrdeKAmW8gaXMgYXBwcm9wcmlhdGUuClNl ZSBpZiB5b3UgY2FuIHRyYW5zbGF0ZSB0aGlzOiDigJxJIGZsaXJ0IHdpdGggYSBtYW4gd2hvIGlz IGJlYXV0aWZ1bC9oYW5kc29tZeKAnS4KbmFubXUg4oCceDEgaXMgYSBtYW7igJ0KbWVsYmkg4oCc eDEgaXMgYmVhdXRpZnVsIHRvIHgyIGluIGFzcGVjdCAoa2EpIHgzIGJ5IHN0YW5kYXJkIHg04oCd CmNpbmppa2NhIOKAnHgxIGZsaXJ0cy9jb3VydHMgeDIsIGV4aGliaXRpbmcgc2V4dWFsaXR5IHgz IGJ5IHN0YW5kYXJkIHg04oCdCkFuc3dlcjogbWkgY2luamlrY2EgbG8gbmFubXUga3UgcG9pIChr ZeKAmWEpIG1lbGJpIGt14oCZbwoKT24gYSBtb3JlIHRlY2huaWNhbCBzaWRlIG5vdGUsIGl0IG1p Z2h0IGJlIHVzZWZ1bCB0byBrbm93IHRoYXQgbG8gU0VMQlJJIGt1IGlzIG9mZmljaWFsbHkgZGVm aW5lZCBhcyB6b+KAmWUgbm9pIGtl4oCZYSBTRUxCUkkga3XigJlvLgoKCiEhTG9qYmFuIExlc3Nv bnMg4oCTIExlc3NvbiBlaWdodCAodGVybWluYXRvciBlbGlzaW9uKQouYXUgZGHigJlpIG1pIGRq aWNhIGxvIG51IGxlIG1lcmtvIHBvaSB0dW5iYSBtaSB2YXUga3UnbyBrdSBqaW1wZSBsbyBkdSd1 IG1pIG5hIG5lbGNpIGxvIG51IHZv4oCZYSBkYXJ4aSBtaSB2YXUga2VpIGt1IHZhdSBrZWkga3Ug dmF1IGtlaSBrdSB2YXUKIC0gIOKAnEkgd2lzaCB0aGUgQW1lcmljYW4sIHdobyBpcyBteSBzaWJs aW5nLCB3b3VsZCB1bmRlcnN0YW5kIHRoYXQgSSBkb27igJl0IGxpa2UgdGhhdCBoZSBoaXRzIG1l LuKAnQpSZWdhcmRsZXNzIG9mIHdoZXRoZXIgdGhlIGFib3ZlIHNlbnRlbmNlIGlzIGJlaW5nIHVu ZGVyc3Rvb2QsIChpdCBzaG91bGRu4oCZdCwgYXMgaXQgY29udGFpbnMgd29yZHMgd2UgaGF2ZSBu b3QgY292ZXJlZCBpbiB0aGVzZSBsZXNzb25zIHlldCkgb25lIHRoaW5nIHN0YW5kcyBvdXQ6IEFz IG1vcmUgY29tcGxleCBMb2piYW4gc3RydWN0dXJlcyBhcmUgbGVhcm5lZCwgbW9yZSBhbmQgbW9y ZSBvZiB0aGUgc2VudGVuY2VzIGdldCBmaWxsZWQgd2l0aCBrdSwga2VpLCBrdeKAmW8gYW5kIG90 aGVyIG9mIHRob3NlIHdvcmRzIHdoaWNoIGJ5IHRoZW1zZWx2ZXMgY2Fycnkgbm8gbWVhbmluZy4K ClRoZSBmdW5jdGlvbiBvZiBhbGwgdGhlc2Ugd29yZHMgYXJlIHRvIHNpZ25hbCB0aGUgZW5kIG9m IGEgY2VydGFpbiBncmFtbWF0aWNhbCBjb25zdHJ1Y3QsIGxpa2UgZm9yIGluc3RhbmNlIOKAnGNv bnZlcnQgc2VsYnJpIHRvIHN1bXRp4oCdIGluIHRoZSBjYXNlIG9mIGxv4oCma3UuIFRoZSBFbmds aXNoIHdvcmQgZm9yIHRoaXMga2luZCBvZiB3b3JkIGlzIOKAnHRlcm1pbmF0b3LigJ0sIHRoZSBM b2piYW4gd29yZCBpcyBmYeKAmW9ybWHigJlvLiBUaGV5IGFyZSBjb2xvcmVkIGdyZXkgaW4gdGhl IGV4YW1wbGUgYWJvdmUuCk5vdGU6IFRoZSB2YXUgaW4gdGhlIGFib3ZlIGV4YW1wbGUgYXJlIHRo ZSB0ZXJtaW5hdG9yIGZvciDigJxlbmQgYnJpZGnigJ0uIFRoZXJlIGlzIGEgZ29vZCByZWFzb24g eW91IGhhdmUgbm90IHlldCBzZWVuIGl0LCBzdGF5IHR1bmVkLgoKSW4gbW9zdCBzcG9rZW4gYW5k IHdyaXR0ZW4gTG9qYmFuLCBtb3N0IHRlcm1pbmF0b3JzIGFyZSBza2lwcGVkIChlbGlkZWQpLiBU aGlzIGdyZWF0bHkgc2F2ZXMgc3lsbGFibGVzIGluIHNwZWVjaCBhbmQgc3BhY2UgaW4gd3JpdGlu ZywgaG93ZXZlciwgb25lIG11c3QgYWx3YXlzIGJlIGNhcmVmdWwgd2hlbiBlbGlkaW5nIHRlcm1p bmF0b3JzLiBJbiB0aGUgc2ltcGxlIGV4YW1wbGUgbG8gbWVya28ga3Uga2xhbWEsIHJlbW92aW5n IHRoZSB0ZXJtaW5hdG9yIGt1IHdvdWxkIHlpZWxkIGxvIG1lcmtvIGtsYW1hLCB3aGljaCBpcyBh IHNpbmdsZSBzdW10aSBtYWRlIGZyb20gdGhlIHRhbnJ1IG1lcmtvIGtsYW1hLiBUaHVzLCBpdCBt ZWFucyDigJxhbiBBbWVyaWNhbiB0cmF2ZWxlcuKAnSBpbnN0ZWFkIG9mIOKAnGFuIEFtZXJpY2Fu IHRyYXZlbHPigJ0uIFRlcm1pbmF0b3IgZWxpc2lvbiBjYW4gbGVhZCB0byB2ZXJ5IHdyb25nIHJl c3VsdHMgaWYgZG9uZSBpbmNvcnJlY3RseSwgd2hpY2ggaXMgd2h5IHlvdSBoYXZlbuKAmXQgbGVh cm5lZCBhYm91dCBpdCB1bnRpbCBub3cuCgpUaGUgcnVsZSBmb3Igd2hlbiB0ZXJtaW5hdG9ycyBj YW4gYmUgZWxpZGVkIGlzIHZlcnkgc2ltcGxlLCBhdCBsZWFzdCBpbiB0aGVvcnk6IOKAnFlvdSBj YW4gZWxpZGUgYSB0ZXJtaW5hdG9yLCBpZiBhbmQgb25seSBpZiBkb2luZyBzbyBkb2VzIG5vdCBj aGFuZ2UgdGhlIGdyYW1tYXRpY2FsIGNvbnN0cnVjdHMgaW4gdGhlIHNlbnRlbmNlLuKAnQpNb3N0 IHRlcm1pbmF0b3JzIGNhbiBiZSBzYWZlbHkgZWxpZGVkIGF0IHRoZSBlbmQgb2YgdGhlIGJyaWRp LiBFeGNlcHRpb25zIGFyZSB0aGUgb2J2aW91cyBvbmVzIGxpa2Ug4oCcZW5kIHF1b3Rl4oCdLXRl cm1pbmF0b3JzIGFuZCDigJxlbmQgYnJpZGkgZ3JvdXBpbmfigJ0tdGVybWluYXRvcnMuIFRoaXMg aXMgd2h5IHZhdSBpcyBhbG1vc3QgbmV2ZXIgdXNlZCDigJMgc2ltcGx5IGJlZ2lubmluZyBhIG5l dyBicmlkaSB3aXRoIC5pIHdpbGwgYWx3YXlzIHRlcm1pbmF0ZSB0aGUgcHJlY2VkaW5nIGJyaWRp IGFueXdheS4gSXQgaGFzIG9uZSBmcmVxdWVudCB1c2UsIGhvd2V2ZXIuIFNpbmNlIGF0dGl0dWRp bmFscyBhbHdheXMgYXBwbHkgdG8gdGhlIHByZWNlZGluZyB3b3JkLCBhcHBseWluZyBpdCB0byBh IHRlcm1pbmF0b3IgYXBwbGllcyBpdCB0byB0aGUgZW50aXJlIGNvbnN0cnVjdCB3aGljaCBpcyB0 ZXJtaW5hdGVkLiBVc2luZyB2YXUsIG9uZSBjYW4gdGhlbiB1c2UgYXR0aXR1ZGluYWxzIGFmdGVy dGhvdWdodCBhbmQgYXBwbHkgdGhlbSB0byB0aGUgZW50aXJlIGJyaWRpOgp6YeKAmWEgZG8gZHVu ZGEgbG8gemRhbmkgbG8gcHJlbnUuLi4gdmF1IGnigJllIC0g4oCcSSBzZWUgdGhhdCB5b3UgZ2l2 ZSBhIGhvbWUgdG8gYSBwZXJzb24uLi4gSSBhcHByb3ZlIeKAnQpwcmVudSB4MSBpcyBhIHBlcnNv bjsgeDEgaGFzIGEgcGVyc29uYWxpdHkuCgpLbm93aW5nIHRoZSBiYXNpYyBydWxlcyBmb3IgdGVy bWluYXRvciBlbGlzaW9uLCB3ZSBjYW4gdGh1cyByZXR1cm4gdG8gdGhlIG9yaWdpbmFsIHNlbnRl bmNlIGFuZCBiZWdpbiByZW1vdmluZyB0ZXJtaW5hdG9yczoKCi5hdSBkYeKAmWkgbWkgZGppY2Eg bG8gbnUgbGUgbWVya28gcG9pIHR1bmJhIG1pIHZhdSBrdSdvIGt1IGppbXBlIGxvIGR1J3UgbWkg bmEgbmVsY2kgbG8gbnUgdm/igJlhIGRhcnhpIG1pIHZhdSBrZWkga3UgdmF1IGtlaSBrdSB2YXUg a2VpIGt1IHZhdQoKUmVtb3ZpbmcgdGhlIGZpcnN0IHRocmVlIHRlcm1pbmF0b3JzIHdpbGwgbGVh dmUgYm90aCB0dW5iYSBhbmQgamltcGUgYXMgc2VsYnJpIGluc2lkZSB0aGUgcmVsYXRpdmUgY2xh dXNlLiBTaW5jZSB0aGlzIGlzIG5vdCBncmFtbWF0aWNhbCAob25seSBvbmUgYnJpZGkgY2FuIGJl IGluIGEgcmVsYXRpdmUgY2xhdXNlLCBhbmQgb25seSBvbmUgc2VsYnJpIGluIG9uZSBicmlkaSks IGVsaWRpbmcgdGhlbSB3aWxsIHN0aWxsIGxlYXZlIGppbXBlIG91dHNpZGUgdGhlIHJlbGF0aXZl IGNsYXVzZS4gTm9yIGNhbiBpdCBtYWtlIGEgdGFucnUgd2l0aCBtZXJrbywgc2luY2UgdGhhdCB3 b3JkIGFscmVhZHkgaGFkIGEgcmVsYXRpdmUgY2xhdXNlIGF0dGFjaGVkIHRvIGl0LCB3aGljaCBv bmx5IHN1bXRpIGNhbiBoYXZlLiBUaGF0IG1lYW5zIHdlIGNhbiBkZWR1Y2UgdGhhdCByZW1vdmlu ZyB0aG9zZSB0aHJlZSBhcmUgc2FmZS4gRnVydGhlcm1vcmUsIGFsbCB0aGUgdGVybWluYXRvcnMg YXQgdGhlIHZlcnkgZW5kIGNhbiBiZSBlbGlkZWQgdG9vLCBzaW5jZSBiZWdpbm5pbmcgYSBuZXcg YnJpZGkgd2lsbCB0ZXJtaW5hdGUgYWxsIG9mIHRoZXNlIGNvbnN0cnVjdHMgYW55d2F5LgpXZSB0 aGVuIGVuZCB1cCB3aXRoOgouYXUgZGHigJlpIG1pIGRqaWNhIGxvIG51IGxlIG1lcmtvIHBvaSB0 dW5iYSBtaSBqaW1wZSBsbyBkdSd1IG1pIG5hIG5lbGNpIGxvIG51IHZv4oCZYSBkYXJ4aSBtaSDi gJMgd2l0aCBubyB0ZXJtaW5hdG9ycyBhdCBhbGwhCgpXaGVuIGVsaWRpbmcgdGVybWluYXRvcnMs IGl0IGlzIGEgZ29vZCBpZGVhIHRvIGJlIGFjcXVhaW50ZWQgd2l0aCBjdS4gY3UgaXMgb25lIG9m IHRob3NlIHdvcmRzIHdoaWNoIGNhbiBtYWtlIHlvdXIgKExvamJhbmljKSBsaWZlIGEgbG90IGVh c2llci4gV2hhdCBpdCBkb2VzIGlzIHRvIHNlcGFyYXRlIGFueSBwcmV2aW91cyBzdW10aSBmcm9t IHRoZSBzZWxicmkuIE9uZSBjb3VsZCBzYXkgdGhhdCBpdCBkZWZpbmVzIHRoZSBuZXh0IHdvcmQg dG8gYmUgYSBzZWxicmksIGFuZCB0ZXJtaW5hdGVzIGV4YWN0bHkgYXMgbXVjaCBhcyBpdCBuZWVk cyB0byBpbiBvcmRlciB0byBkbyB0aGF0LgoKcHJhbWkgPSDigJx4MSBsb3ZlcyB4MuKAnQoKbG8g c3XigJl1IGRvIGN1c2t1IGxvIHNlIGR14oCZdSBkbyBwcmFtaSBtaSB2YXUga2VpIGt1IHZhdSBr ZWkga3Ugc2UgZGppY2EgbWkgPQpsbyBzdeKAmXUgZG8gY3Vza3UgbG8gc2UgZHXigJl1IGRvIHBy YW1pIG1pIGN1IHNlIGRqaWNhIG1pCuKAnFRoYXQgeW91IHNheSB0aGF0IHlvdSBsb3ZlIG1lIGlz IGRlc2lyZWQgYnkgYmXigJ0gb3Ig4oCcSSB3aXNoIHlvdSBzYWlkIHlvdSBsb3ZlZCBtZeKAnQpu b3RlOiBjdSBpcyBub3QgYSB0ZXJtaW5hdG9yLCBiZWNhdXNlIGl0IGlzIG5vdCB0aWVkIHRvIG9u ZSBzcGVjaWZpYyBjb25zdHJ1Y3QuIEJ1dCBpdCBjYW4gYmUgdXNlZCB0byBlbGlkZSBvdGhlciB0 ZXJtaW5hdG9ycy4KCk9uZSBvZiB0aGUgZ3JlYXRlc3Qgc3RyZW5ndGhzIG9mIGN1IGlzIHRoYXQg aXQgcXVpY2tseSBiZWNvbWVzIGVhc3kgdG8gaW50dWl0aXZlbHkgdW5kZXJzdGFuZC4gQnkgaXRz ZWxmIGl0IG1lYW5zIG5vdGhpbmcsIGJ1dCBpdCByZXZlYWxzIHRoZSBzdHJ1Y3R1cmUgb2YgTG9q YmFuIGV4cHJlc3Npb25zIGJ5IGlkZW50aWZ5aW5nIHRoZSBjb3JlIHNlbGJyaS4gSW4gdGhlIG9y aWdpbmFsIGV4YW1wbGUgd2l0aCB0aGUgdmlvbGVudCBBbWVyaWNhbiBicm90aGVyLCB1c2luZyBj dSBiZWZvcmUgamltcGUgZG9lcyBub3QgY2hhbmdlIHRoZSBtZWFuaW5nIG9mIHRoZSBzZW50ZW5j ZSBpbiBhbnkgd2F5LCBidXQgbWlnaHQgbWFrZSBpdCBlYXNpZXIgdG8gcmVhZC4KCkluIHRoZSBm b2xsb3dpbmcgY291cGxlIG9mIGNoYXB0ZXJzLCBjdSB3aWxsIGJlIHVzZWQgd2hlbiBuZWNlc3Nh cnksIGFuZCBhbGwgdGVybWluYXRvcnMgZWxpZGVkIGlmIHBvc3NpYmxlLiBUaGUgZWxpZGVkIHRl cm1pbmF0b3JzIHdpbGwgYmUgZW5jYXNlZCBpbiBzcXVhcmUgYnJhY2tldHMsIGFzIHNob3duIGJl bG93LiBUcnkgdG8gdHJhbnNsYXRlIGl0IQpkdSDigJx4MSBlcXVhbHMvaXMgdGhlIHNhbWUgYXMg eDIsIHgzLCB4NCwgeDUsIHg2IChhbmQgc28gb24p4oCdCnZham5pIOKAnHgxIGlzIGltcG9ydGFu dCB0byB4MiBmb3IgcmVhc29uIHgz4oCdCmppbXBlIOKAnHgxIHVuZGVyc3RhbmRzIHRoYXQgeDIg KGR14oCZdS1hYnN0cmFjdGlvbikgaXMgdHJ1ZSBhYm91dCB4M+KAnQph4oCZbyAtIEF0dGl0dWRp bmFsOiBIb3BlIC0gZGVzcGFpcgoKYeKAmW8gZG8gbm9pIGtl4oCZYSBsb2pibyAuaeKAmWUgW2t1 4oCZb10gW2t1XSBjdSBqaW1wZSBsbyBkdeKAmXUgbG8gZmHigJlvcm1h4oCZbyBba3VdIGN1IHZh am5pIFt2YXVdIFtrZWldIFtrdV0gW3ZhdV0KV2hhdCBkbyBJIHN0YXRlPwoKQW5zd2VyOiDigJxJ IGhvcGUgdGhhdCB5b3UsIGEgcHJvdWQgTG9qYmFuaXN0LCB1bmRlcnN0YW5kcyB0aGF0IHRlcm1p bmF0b3JzIGFyZSBpbXBvcnRhbnTigJ0KCkZ1biBzaWRlIG5vdGU6IE1vc3QgcGVvcGxlIHdlbGwt dmVyc2VkIGluIHRlcm1pbmF0b3IgZWxpc2lvbiBkbyBpdCBzbyBpbnN0aW5jdGl2ZWx5IHRoYXQg dGhleSBvZnRlbiBtdXN0IGJlIHJlbWluZGVkIGhvdyBpbXBvcnRhbnQgdW5kZXJzdGFuZGluZyB0 ZXJtaW5hdG9ycyBhcmUgdG8gdGhlIHVuZGVyc3RhbmRpbmcgb2YgTG9qYmFuLiBUaGVyZWZvcmUs IGVhY2ggVHVlc2RheSBoYXZlIGJlZW4gZGVzaWduYXRlZCDigJxUZXJtaW5hdG9yIERheeKAnSBv ciBmYeKAmW9ybWHigJlvIGRqZWRpIG9uIHRoZSBMb2piYW4gSVJDIGNoYXRyb29tLiBEdXJpbmcg VGVybWluYXRvciBEYXksIG1hbnkgcGVvcGxlIHRyeSAoYW5kIG9mdGVuIGZhaWwpIHRvIHJlbWVt YmVyIHdyaXRpbmcgb3V0IGFsbCB0ZXJtaW5hdG9ycyB3aXRoIHNvbWUgdmVyeSB2ZXJib3NlIGNv bnZlcnNhdGlvbnMgYXMgYSByZXN1bHQuCgoKISFMb2piYW4gTGVzc29ucyAtIExlc3NvbiBuaW5l IChzdW10Y2l0YSkKU28gZmFyIHdlIGhhdmUgYmVlbiBkb2luZyBwcmV0dHkgZ29vZCB3aXRoIHRo ZSBzZWxicmkgd2UgaGF2ZSBoYWQgYXQgaGFuZC4gSG93ZXZlciwgdGhlcmUgaXMgYSBmaW5pdGUg YW1vdW50IG9mIHNlbGJyaSBvdXQgdGhlcmUsIGFuZCBpbiBtYW55IGNhc2VzIHRoZSBzdW10aSBw bGFjZXMgYXJlIG5vdCB1c2VmdWwgZm9yIHdoYXQgd2UgaGFkIGluIG1pbmQuIFdoYXQgaWYsIHNh eSwgaSB3YW50IHRvIHNheSB0aGF0IEkgYW0gdHJhbnNsYXRpbmcgdXNpbmcgYSBjb21wdXRlcj8g VGhlcmUgaXMgbm8gcGxhY2UgaW4gdGhlIHN0cnVjdHVyZSBvZiBmYW52YSB0byBzcGVjaWZ5IHdo YXQgdG9vbCBJIHRyYW5zbGF0ZSB3aXRoLCBzaW5jZSBtb3N0IG9mIHRoZSB0aW1lLCB0aGF0IGlz IG5vdCBuZWNlc3NhcnkuIE5vdCB0byB3b3JyeSwgdGhpcyBjaGFwdGVyIGlzIG9uIGhvdyB0byBh ZGQgYWRkaXRpb25hbCBzdW10aSBwbGFjZXMgdG8gdGhlIHNlbGJyaS4KClRoZSBtb3N0IGJhc2lj IHdheSB0byBhZGQgc3VtdGkgcGxhY2VzIGFyZSB3aXRoIGZp4oCZby4uLmZl4oCZdSAoeWVzLCBh bm90aGVyIGV4YW1wbGUgb2YgYSB0ZXJtaW5hdG9yLCBmZeKAmXUuIEl04oCZcyBhbG1vc3QgbmV2 ZXIgbmVjZXNzYXJ5LCBzbyB0aGlzIG1pZ2h0IGJlIHRoZSBsYXN0IHRpbWUgeW91IGV2ZXIgc2Vl IGl0LikKSW4gYmV0d2VlbiB0aGVzZSB0d28gd29yZHMgZ29lcyBhIHNlbGJyaSwgYW5kIGxpa2Ug bG8uLi5rdSwgZmnigJlvLi4uZmXigJl1IGV4dHJhY3RzIHRoZSB4MSBvZiB0aGUgc2VsYnJpIHB1 dCBpbnRvIGl0LiBIb3dldmVyLCB3aXRoIGZp4oCZby4uLmZl4oCZdSwgdGhlIHNlbGJyaSBwbGFj ZSBpcyBjb252ZXJ0ZWQsIG5vdCB0byBhIHN1bXRpLCBidXQgdG8gYSBzdW10Y2l0YSwgbWVhbmlu ZyDigJxzdW10aS1sYWJlbOKAnSwgd2l0aCB0aGUgcGxhY2Ugc3RydWN0dXJlIG9mIHRoZSB4MSBv ZiB0aGUgc2VsYnJpIGl0IGNvbnZlcnRlZC4gVGhpcyBzdW10Y2l0YSB0aGVuIGFic29yYnMgdGhl IG5leHQgc3VtdGkuIE9uZSBjb3VsZCBzYXkgdGhhdCB1c2luZyBhIHN1bXRjaXRhLCB5b3UgaW1w b3J0IGEgc3VtdGkgcGxhY2UgZnJvbSBhbm90aGVyIHNlbGJyaSwgYW5kIGFkZCBpdCB0byB0aGUg YnJpZGkgYmVpbmcgc2FpZC4KTm90ZTogU29tZXRpbWVzLCBlc3BlY2lhbGx5IGluIG9sZGVyIHRl eHRzLCB0aGUgdGVybSDigJx0YWfigJ0gb3Ig4oCcbW9kYWzigJ0gaXMgdXNlZCBmb3Igc3VtdGNp dGEuIElnbm9yZSB0aG9zZSBwdW55IEVuZ2xpc2ggZXhwcmVzc2lvbnMuIFdlIHRlYWNoIHByb3Bl ciBMb2piYW4gaGVyZS4KCldoaWxlIGl0IGlzIGhhcmQgdG8gZ3Jhc3AgdGhlIHByb2Nlc3MgZnJv bSByZWFkaW5nIGFib3V0IGl0LCBhbiBleGFtcGxlIGNhbiBwZXJoYXBzIHNob3cgaXRzIGFjdHVh bCBzaW1wbGljaXR5Ogpza2FtaSDigJx4MSBpcyBhIGNvbXB1dGVyIGZvciBwdXJwb3NlIHgy4oCd CnBpbG5vIOKAnHgxIHVzZXMgeDIgYXMgYSB0b29sIGZvciBkb2luZyB4M+KAnQoKbWkgZmFudmEg dGkgZmnigJlvIHNlIHBpbG5vIFtmZeKAmXVdIGxvIHNrYW1pIFtrdV1bdmF1XS4tIOKAnEkgdHJh bnNsYXRlIHRoaXMgd2l0aCBhIGNvbXB1dGVy4oCdIFRoZSB4MiBvZiBwaWxubywgd2hpY2ggaXMg dGhlIHgxIG9mIHNlIHBpbG5vIGlzIGEgcGxhY2Ugc3RydWN0dXJlIGZvciBhIHRvb2wgYmVpbmcg dXNlZCBieSBzb21lb25lLiBUaGlzIHBsYWNlIHN0cnVjdHVyZSBpcyBjYXB0dXJlZCBieSBmaeKA mW8uLi5mZeKAmXUsIGFuZCB0aGVuIGZpbGxlZCBieSBsbyBza2FtaS4gVGhlIGlkZWEgb2Ygc3Vt dGNpdGEgaXMgc29tZXRpbWVzIGV4cHJlc3NlZCBpbiBFbmdsaXNoIHVzaW5nIHRoZSBmb2xsb3dp bmcgdHJhbnNsYXRpb246CuKAnEkgdHJhbnNsYXRlIHRoaXMgd2l0aC10b29sOiBhIGNvbXB1dGVy 4oCdCgpBIHN1bXRjaXRhIGNhbiBvbmx5IGFic29yYiBvbmUgc3VtdGksIHdoaWNoIGlzIGFsd2F5 cyB0aGUgZm9sbG93aW5nIG9uZS4gQWx0ZXJuYXRpdmVseSwgdGhlIHN1bXRjaXRhIGNvbnN0cnVj dCBjYW4gYmUgdGVybWluYXRlZCB3aXRoIGt1LCBpbiB3aGljaCBjYXNlIGEgem/igJllIGlzIGlt cGxpZWQgdG8gZmlsbCB0aGUgc3VtdGNpdGEuIE9yLCBvbmUgY291bGQgaW1hZ2luZSBhbiBlbGlk ZWQgc3VtdGkgYmVpbmcgdGVybWluYXRlZCB3aXRoIHRoZSBrdS4KenVrdGUg4oCceDEgaXMgYSB2 b2xpdGlvbmFsIGVudGl0eSBjYXJyeWluZyBvdXQgYWN0aW9uIHgyIGZvciBwdXJwb3NlIHgz4oCd CmZp4oCZbyB6dWt0ZSBbZmXigJl1XSBrdSBsbyBza2FtaSBba3VdIGN1IHBpbG5vIGxvIGxvamJv IFtrdV1bdmF1XSAtIOKAnFdpdGggdm9saXRpb24sIGEgY29tcHV0ZXIgdXNlZCBzb21ldGhpbmcg TG9qYmFuaWPigJ0gKHBlcmhhcHMgaW1wbHlpbmcgdGhhdCBhIExvamJhbmljIGNvbXB1dGVyIHdl bnQgc2VudGllbnQ/IFRvdWdoIGl0IGRvZXMgbm90IHNwZWNpZnkgd2hvIGhhZCB2b2xpdGlvbi4g SXQgY291bGQganVzdCBiZSB0aGUgcHJvZ3JhbW1lciB3aG8gcHJvZ3JhbW1lZCB0aGUgY29tcHV0 ZXIgLSBob3cgYm9yaW5nLikKCldoYXQgZG9lcyBtaSBqaW1wZSBmaSBsbyBsb2piYW4gW2t1XSBm aeKAmW8gc2UgdGF2bGEgW2Zl4oCZdV0gbWkgIHN0YXRlPwoKQW5zd2VyOiDigJxJIHVuZGVyc3Rh bmQgc29tZXRoaW5nIGFib3V0IExvamJhbiwgc3Bva2VuIHRvIG1l4oCdCgpQdXR0aW5nIHRoZSBz dW10Y2l0YSByaWdodCBpbiBmcm9udCBvZiB0aGUgc2VsYnJpIGFsc28gbWFrZXMgaXQgc2VsZi10 ZXJtaW5hdGUsIHNpbmNlIHN1bXRjaXRhIG9ubHkgY2FuIGFic29yYiBzdW10aSwgYW5kIG5vdCBz ZWxicmkuIFRoaXMgZmFjdCB3aWxsIGJlIG9mIGltcG9ydGFuY2UgaW4gbmV4dCBjaGFwdGVyLCBh cyB5b3Ugd2lsbCBzZWUuCgpTYWRseSwgZmnigJlvIGlzIG5vdCB1c2VkIHZlcnkgb2Z0ZW4gZGVz cGl0ZSBpdHMgZmxleGliaWxpdHkuIFdoYXQgSVMgdXNlZCB2ZXJ5IG9mdGVuLCB0aG91Z2gsIGFy ZSBCQUkuIEJBSSBhcmUgYSBjbGFzcyBvZiBMb2piYW4gd29yZHMsIHdoaWNoIGluIHRoZW1zZWx2 ZXMgYWN0IGFzIHN1bXRjaXRhLiBBbiBleGFtcGxlIG9mIHRoaXMgaXMgenXigJllLCB0aGUgQkFJ IGZvciB6dWt0ZS4gR3JhbWF0aWNhbGx5LCB6deKAmWUgaXMgdGhlIHNhbWUgYXMgZmnigJlvIHp1 a3RlIGZl4oCZdS4gVGh1cywgdGhlIGFib3ZlIGV4YW1wbGUgY291bGQgYmUgcmVkdWNlZCB0bzoK enXigJllIGt1IGxvIHNrYW1pIFtrdV0gY3UgcGlsbm8gbG8gbG9qYm8gW2t1XSBbdmF1XS4gVGhl cmUgZXhpc3Qgc29tZXRoaW5nIGxpa2UgNjAgQkFJLCBhbmQgYSBsb3Qgb2YgdGhlc2UgYXJlIHZl cnkgdXNlZnVsIGluZGVlZC4gRnVydGVybW9yZSwgQkFJIGNhbiBhbHNvIGJlIGNvbnZlcnRlZCB3 aXRoIHNlIGFuZCBmcmllbmRzLCBtZWFuaW5nIHRoYXQgc2UgenXigJllIGlzIGVxdWFsIHRvIGZp 4oCZbyBzZSB6dWt0ZSBmZeKAmXUsIHdoaWNoIHJlc3VsdHMgaW4gYSBncmVhdCBkZWFsIG1vcmUg QkFJLgoKISFMb2piYW4gTGVzc29ucyAtIExlc3NvbiB0ZW4gKFBVLCBGQWhBLCBaSSwgVkEsIFpF aEEsIFZFaEEpCkhvdyB1bmZhbWlsaWFyIHRvIHRoZSBFbmdsaXNoLXNwZWFrZXIgYSBsYW5ndWFn ZSBMb2piYW4gaXMgd2hlbiBvbmUgY2FuIHJlYWQgdGhyb3VnaCBuaW5lIGNoYXB0ZXJzIG9mIExv amJhbiBncmFtbWFyIHdpdGhvdXQgbWVldGluZyBhIHRlbnNlIG9uY2UuIFRoaXMgaXMgYmVjYXVz ZSwgdW5saWtlIG1hbnkgbmF0dXJhbCBsYW5ndWFnZXMgKG1vc3QgSW5kby1FdXJvcGVhbiBvbmVz LCBmb3IgaW5zdGFuY2UpLCBhbGwgdGVuc2VzIGluIExvamJhbiBhcmUgb3B0aW9uYWwuIFNheWlu ZyBtaSBjaXRrYSBsbyBjaXJsYSBba3VdIGNhbiBtZWFuIOKAnEkgZWF0IGNoZWVzZeKAnSBvciDi gJxJIGF0ZSB0aGUgY2hlZXNl4oCdIG9yIOKAnEkgYWx3YXlzIGVhdCBjaGVlc2XigJ0gb3Ig4oCc SW4gYSBtb21lbnQsIGkgd2lsbCBoYXZlIGp1c3QgZmluaXNoZWQgZWF0aW5nIGNoZWVzZeKAnS4g Q29udGV4dCByZXNvbHZlcyB3aGF0IGlzIGNvcnJlY3QsIGFuZCBpbiBtb3N0IGNvbnZlcnNhdGlv biwgdGVuc2VzIGFyZSBub3QgbmVlZGVkIGF0IGFsbC4gSG93ZXZlciwgd2hlbiBpdOKAmXMgbmVl ZGVkIGl04oCZcyBuZWVkZWQsIGFuZCBpdCBtdXN0IGJlIHRhdWdodC4KTGlrZSBtYW55IG90aGVy IGxhbmd1YWdlcywgdGhlIExvamJhbiB0ZW5zZSBzeXN0ZW0gaXMgcGVyaGFwcyB0aGUgbW9zdCBk aWZmaWN1bHQgcGFydCBvZiB0aGUgbGFuZ3VhZ2UuIFVubGlrZSBtYW55IG90aGVyIGxhbmd1YWdl cyB0aG91Z2gsIGl04oCZcyBwZXJmZWN0bHkgcmVndWxhciBhbmQgbWFrZXMgc2Vuc2UuIFNvIGZl YXIgbm90LCBmb3IgaXQgd2lsbCBub3QgaW52b2x2ZSBzd2VhdGluZyB0byBsZWFybiBob3cgdG8g bW9kaWZ5IHRoZSBzZWxicmkgb3IgYW55dGhpbmcgc2lsbHkgbGlrZSB0aGF0LgpGdXJ0aGVybW9y ZSwgTG9qYmFuIHRlbnNlcyBhcmUgdW51c3VhbCBiZWNhdXNlIHRoZXkgdHJlYXQgdGltZSBhbmQg c3BhY2UgZnVuZGFtZW50YWxseSB0aGUgc2FtZSAtIHNheWluZyB0aGF0IGkgd29ya2VkIGEgbG9u ZyB0aW1lIGFnbyBpcyBub3QgZ3JhbW1hdGljYWxseSBkaWZmZXJlbnQgdGhhbiBzYXlpbmcgaSB3 b3JrIGZhciBhd2F5IHRvIHRoZSBub3J0aC4KCk5vLCBpbiB0aGUgTG9qYmFuIHRlbnNlIHN5c3Rl bSwgYWxsIHRlbnNlcyBhcmUgc3VtdGNpdGEsIHdoaWNoIHdlIGhhdmUgY29udmVuaWVudGx5IGp1 c3QgbWFkZSBvdXJzZWx2ZXMgZmFtaWxpYXIgd2l0aC4gVGhlcmUgYXJlIG1hbnkgZGlmZmVyZW50 IGtpbmRzIG9mIHRlbnNlLXN1bXRjaXRhLCBzbyBsZXTigJlzIHN0YXJ0IGF0IHRoZSBvbmVzIG1v c3QgZmFtaWxpYXIgdG8gRW5nbGlzaC1zcGVha2Vycy4Ke3B1fSAtIHN1bXRjaXRhOiBiZWZvcmUg W3N1bXRpXQp7Y2F9IC0gc3VtdGNpdGE6IGF0IHRoZSBzYW1lIHRpbWUgYXMgW3N1bXRpXQp7YmF9 IC0gc3VtdGNpdGE6IGFmdGVyIFtzdW10aV0KClRoZXNlIGFyZSBsaWtlIHRoZSBFbmdsaXNoIGNv bmNlcHRzIOKAnGJlZm9yZeKAnSwg4oCcbm934oCdIGFuZCDigJxhZnRlcuKAnS4gSW4gYWN0dWFs aXR5IHRob3VnaCwgb25lIGNvdWxkIGFyZ3VlIHRoYXQgdHdvIHBvaW50LWxpa2UgZXZlbnRzIGNh biBuZXZlciBvY2N1ciBleGFjdGx5IHNpbXVsdGFuZW91c2x5LCByZW5kZXJpbmcge2NhfSB1c2Vs ZXNzLiBCdXQge2NhfSBleHRlbmRzIHNsaWdodGx5IGludG8gdGhlIHBhc3QgYW5kIHRoZSBmdXR1 cmUsIG1lYW5pbmcganVzdCDigJxhYm91dCBub3figJ0uIFRoaXMgaXMgYmVjYXVzZSBodW1hbiBi ZWluZ3MgZG9u4oCZdCBwZXJjZWl2ZSB0aW1lIGluIGEgcGVyZmVjdGx5IGxvZ2ljYWwgd2F5LCBh bmQgdGhlIExvamJhbiB0ZW5zZSBzeXN0ZW0gcmVmbGVjdHMgdGhhdC4KClNpZGUgbm90ZTogSXQg d2FzIGFjdHVhbGx5IHN1Z2dlc3RlZCBtYWtpbmcgdGhlIExvamJhbiB0ZW5zZSBzeXN0ZW0gcmVs YXRpdmlzdGljLiBUaGF0IGlkZWEsIGhvd2V2ZXIsIHdhcyBkcm9wcGVkLCBiZWNhdXNlIGl0IGlz IGNvdW50ZXItaW50dWl0aXZlLCBhbmQgd291bGQgbWVhbiB0aGF0IHRvIGxlYXJuIExvamJhbiwg b25lIHdvdWxkIGhhdmUgdG8gbGVhcm4gdGhlIHRoZW9yeSBvZiByZWxhdGl2aXR5IGZpcnN0LiAg CgpTbywgaG93IHdvdWxkIHlvdSBzYXkg4oCcSSBleHByZXNzIHRoaXMgYWZ0ZXIgSSBjYW1lIGhl cmU/4oCdIChwb2ludGluZyB0byBhIHBhcGVyKQoKQW5zd2VyOiBtaSBjdXNrdSB0aSBiYSBsbyBu dSBtaSBrbGFtYSB0aSBbdmF1XSBba2VpIFtrdV0gW3ZhdV0KClVzdWFsbHkgd2hlbiBzcGVha2lu Zywgd2UgZG8gbm90IG5lZWQgdG8gc3BlY2lmeSB3aGljaCBldmVudCB0aGlzIGFjdGlvbiBpcyBp biB0aGUgcGFzdCByZWxhdGl2ZSB0by4gSW46IOKAnEkgZ2F2ZSBhIGNvbXB1dGVyIGF3YXnigJ0s IHdlIGNhbiBhc3N1bWUgdGhhdCB0aGUgYWN0aW9uIGhhcHBlbmVkIHJlbGF0aXZlIHRvIOKAnG5v d+KAnSwgYW5kIHRodXMgd2UgY2FuIGVsaWRlIHRoZSBzdW10aSBvZiB0aGUgc3VtdGNpdGEsIGJl Y2F1c2UgaXTigJlzIG9idmlvdXM6CntwdSBrdSBtaSBkdW5kYSBsbyBza2FtaSBba3VdIFt2YXVd fSBvcgp7bWkgZHVuZGEgbG8gc2thbWkgW2t1XSBwdSBba3VdIFt2YXVdfSBvciwgbW9yZSBjb21t b25seQp7bWkgcHUgW2t1XSBkdW5kYSBsbyBza2FtaSBba3VdIFt2YXVdfS4gVGhlIHN1bXRpIHdo aWNoIGZpbGxzIHRoZSBzdW10Y2l0YSBpcyBhbiBpbXBsaWVkIHt6b+KAmWV9LCB3aGljaCBpcyBh bG1vc3QgYWx3YXlzIHVuZGVyc3Rvb2QgYXMgcmVsYXRpdmUgdG8gdGhlIHNwZWFrZXJzIHRpbWUg YW5kIHBsYWNlICh0aGlzIGlzIGVzcGVjaWFsbHkgaW1wb3J0YW50IHdoZW4gc3BlYWtpbmcgYWJv dXQgbGVmdCBhbmQgcmlnaHQpLiBJZiBzcGVha2luZyBhYm91dCBzb21lIGV2ZW50cyB0aGF0IGhh cHBlbmVkIHNvbWUgb3RoZXIgdGltZSB0aGFuIHRoZSBwcmVzZW50LCBpdCBpcyBzb21ldGltZXMg YXNzdW1lZCB0aGF0IGFsbCB0ZW5zZXMgYXJlIHJlbGF0aXZlIHRvIHRoYXQgZXZlbnQgd2hpY2gg aXMgYmVpbmcgc3Bva2VuIGFib3V0LiBJbiBvcmRlciB0byBjbGFyaWZ5IHRoYXQgYWxsIHRlbnNl cyBhcmUgcmVsYXRpdmUgdG8gdGhlIHNwZWFrZXJzIGN1cnJlbnQgcG9zaXRpb24sIHRoZSB3b3Jk IHtuYXV9IGNhbiBiZSB1c2VkIGF0IGFueSB0aW1lLiBBbm90aGVyIHdvcmQsIHtraX0gbWFya3Mg YSB0ZW5zZSB3aGljaCBpcyB0aGVuIGNvbnNpZGVyZWQgdGhlIG5ldyBzdGFuZGFyZC4gVGhhdCB3 aWxsIGJlIHRhdWdodCB3YXkgbGF0ZXIuCgp7Z3VnZGV9ID0g4oCceDEgaXMgdGhlIGNvdW50cnkg b2YgcGVvcGxlIHgyIHdpdGggbGFuZC90ZXJyaXRvcnkgeDPigJ0KCkFsc28gbm90ZSB0aGF0IHtt aSBwdSBba3VdIGtsYW1hIGxvIG1lcmtvIGd1Z2RlIFtrdV0gW3ZhdV19LCDigJxJIHdlbnQgdG8g QW1lcmljYeKAnSwgZG9lcyBub3QgaW1wbHkgdGhhdCBJ4oCZbSBub3Qgc3RpbGwgdHJhdmVsaW5n IHRvIFVTQSwgb25seSB0aGF0IGl0IHdhcyBhbHNvIHRydWUgc29tZSB0aW1lIGluIHRoZSBwYXN0 LCBmb3IgaW5zdGFuY2UgZml2ZSBtaW51dGVzIGFnby4KCkFzIG1lbnRpb25lZCwgc3BhY2lhbCBh bmQgdGVtcG9yYWwgdGltZSB0ZW5zZXMgYXJlIHZlcnkgbXVjaCBhbGlrZS4gQ29udHJhc3QgdGhl IHByZXZpb3VzIHRocmVlIHRpbWUgdGVuc2VzIHdpdGggdGhlc2UgZm91ciBzcGFjaWFsIHRlbnNl czoKe3p14oCZYX0gc3VtdGNpdGE6IGxlZnQgb2YgW3N1bXRpXQp7Y2HigJl1fSBzdW10Y2l0YTog aW4gZnJvbnQgb2YgW3N1bXRpXQp7cmnigJl1fSBzdW10Y2l0YTogcmlnaHQgb2YgW3N1bXRpXQp7 YnXigJl1fSBzdW10Y2l0YTogYXQgdGhlIHNhbWUgcGxhY2UgYXMgW3N1bXRpXSAoc3BhY2lhbCBl cXVpdmFsZW50IG9mIHtjYX0pCgp7b+KAmW99OiBhdHRpdHVkaW5hbDogcGF0aWVuY2UgLSB0b2xl cmFuY2UgLSBhbmdlcgoKV2hhdCB3b3VsZCB7Lm/igJlvbmFpIHJp4oCZdSBba3VdIG51IGxvIHBy ZW51IFtrdV0gY3UgZGFyeGkgbG8gZ2Vya3UgcHUgW2t1XSBba3VdIFt2YXVdIFtrZWldIFt2YXVd fSBtZWFuPyAobm90aWNlIHRoZSBmaXJzdCBlbGlkZWQga3UhKQoKQW5zd2VyOiDigJxbYW5nZXIh XSBUbyB0aGUgcmlnaHQgKG9mIHNvbWV0aGluZywgcHJvYmFibHkgbWUpIGFuZCBpbiB0aGUgcGFz dCAob2Ygc29tZSBldmVudCksIHNvbWV0aGluZyBpcyBhbiBldmVudCBvZiBhIHBlcnNvbiBiZWF0 aW5nIGEgZG9nLuKAnSBvciDigJxBIG1hbiBoaXQgYSBkb2cgdG8gbXkgcmlnaHQh4oCdCgpJZiB0 aGVyZSBhcmUgc2V2ZXJhbCB0ZW5zZSBzdW10Y2l0YSBpbiBvbmUgYnJpZGksIHRoZSBydWxlIGlz IHRoYXQgeW91IHJlYWQgdGhlbSBmcm9tIGxlZnQgdG8gcmlnaHQsIHRoaW5raW5nIGl0IGFzIGEg c28gY2FsbGVkIOKAnGltYWdpbmFyeSBqb3VybmV54oCdLCBXaGVyZSB5b3UgYmVnaW4gYXQgYW4g aW1wbGllZCBwb2ludCBpbiB0aW1lIGFuZCBzcGFjZSAoZGVmYXVsdDogdGhlIHNwZWFrZXLigJlz IG5vdyBhbmQgaGVyZSksIGFuZCB0aGVuIGZvbGxvdyB0aGUgc3VtdGNpdGEgb25lIGF0IGEgdGlt ZSBmcm9tIGxlZnQgdG8gcmlnaHQuCkV4YW1wbGUKe21pIHB1IFtrdV0gYmEgW2t1XSBqaW1wZSBm aSBsbyBsb2pibyBmYeKAmW9ybWHigJlvIFtrdV0gW3ZhdV19ID0g4oCcQXQgc29tZSB0aW1lIGlu IHRoZSBwYXN0LCBJIHdpbGwgYmUgYWJvdXQgdG8ga25vdyBhYm91dCB0ZXJtaW5hdG9ycy7igJ0K e21pIGJhIFtrdV0gcHUgW2t1XSBqaW1wZSBmaSBsbyBsb2pibyBmYeKAmW9ybWHigJlvIFtrdV0g W3ZhdV19IOKAnEF0IHNvbWUgcG9pbnQgaW4gdGhlIGZ1dHVyZSwgSSB3aWxsIGhhdmUgdW5kZXJz dG9vZCBhYm91dCB0ZXJtaW5hdG9ycy7igJ0KU2luY2Ugd2UgZG8gbm90IHNwZWNpZnkgdGhlIGFt b3VudCBvZiB0aW1lIHdlIG1vdmUgYmFjayBvciBmb3J0aCwgdGhlIHVuZGVyc3RhbmRpbmcgY291 bGQgaW4gYm90aCBjYXNlcyBoYXBwZW4gaW4gdGhlIGZ1dHVyZSBvciB0aGUgcGFzdCBvZiB3aGVu IHRoZSBzZW50ZW5jZSBpcyBiZWluZyBzYWlkLgoKQWxzbywgaWYgc3BhY2lhbCBhbmQgdGVtcG9y YWwgdGVuc2VzIGFyZSBtaXhlZCwgdGhlIHJ1bGUgaXMgdG8gYWx3YXlzIHB1dCB0ZW1wb3JhbCBi ZWZvcmUgc3BhY2lhbC4gSWYgdGhpcyBydWxlIGlzIHZpb2xhdGVkLCBpdCBjYW4gc29tZXRpbWVz IHJlc3VsdCBpbiBzeW50YWN0aWNhbCBhbWJpZ3VpdHksIHdoaWNoIExvamJhbiBkb2VzIG5vdCB0 b2xlcmF0ZS4KClN1cHBvc2Ugd2Ugd2FudCB0byBzcGVjaWZ5IHRoYXQgdGhlIGEgbWFuIGhpdCBh IGRvZyBqdXN0IGEgbWludXRlIGFnby4gVGhlIHdvcmRzIHt6aX0sIHt6YX0gYW5kIHt6dX0gc3Bl Y2lmaWVzIGEgc2hvcnQsIHVuc3BlY2lmaWVkIChwcmVzdW1hYmx5IG1lZGl1bSkgYW5kIGxvbmcg ZGlzdGFuY2UgaW4gdGltZS4gTm90aWNlIHRoZSB2b3dlbCBvcmRlciB7aX0sIHthfSBhbmQge3V9 LiBUaGlzIG9yZGVyIGFwcGVhcnMgYWdhaW4gYW5kIGFnYWluIGluIExvamJhbiwgYW5kIG1pZ2h0 IGJlIHdvcnRoIHRvIG1lbW9yaXplLiDigJxTaG9ydOKAnSBhbmQg4oCcbG9uZ+KAnSBpbiBhcmUg YWx3YXlzIGNvbnRleHQgZGVwZW5kZW50LCByZWxhdGl2ZSBhbmQgc3ViamVjdGl2ZS4gVHdvIGh1 bmRyZWQgeWVhcnMgaXMgYSBzaG9ydCB0aW1lIGZvciBhIHNwZWNpZXMgdG8gZXZvbHZlLCBidXQg YSBsb25nIHRpbWUgdG8gd2FpdCBmb3IgdGhlIGJ1cy4KClNpbWlsYXJseSwgc3BhY2lhbCBkaXN0 YW5jZSBpcyBtYXJrZWQgYnkge3ZpfSwge3ZhfSBhbmQge3Z1fSBmb3Igc2hvcnQsIHVuc3BlY2lm aWVkIChtZWRpdW0pIGFuZCBsb25nIGRpc3RhbmNlIGluIHNwYWNlLgp7Z3Vua2F9IOKAnHgxIHdv cmtzIGF0IHgyIHdpdGggb2JqZWN0aXZlIHgz4oCdCgpUcmFuc2xhdGU6IHtiYSBba3VdIHphIGt1 IG1pIHZ1IFtrdV0gZ3Vua2EgW3ZhdV19CgpBbnN3ZXI6IOKAnFNvbWUgdGltZSBpbiB0aGUgZnV0 dXJlLCBJIHdpbGwgd29yayBhIHBsYWNlIGxvbmcgYXdheeKAnQpOb3RlOiBQZW9wbGUgcmFyZWx5 IHVzZXMgemksIHphIG9yIHp1IHdpdGhvdXQgYSBwdSBvciBiYSBpbiBmcm9udCBvZiBpdC4gVGhp cyBpcyBiZWNhdXNlIHdlIGFsd2F5cyBuZWVkIHRvIHNwZWNpZnkgcGFzdCBvciBmdXR1cmUgaW4g RW5nbGlzaC4gV2hlbiB5b3UgdGhpbmsgYWJvdXQgaXQgTG9qYmFuaWNhbGx5LCBtb3N0IG9mIHRo ZSB0aW1lIHRoZSB0aW1lLWRpcmVjdGlvbiBpcyBvYnZpb3VzLCBhbmQgdGhlIHB1IG9yIGJhIHN1 cGVyZmx1b3VzIQoKVGhlIG9yZGVyIGluIHdoaWNoIGRpcmVjdGlvbi1zdW10Y2l0YSBhbmQgZGlz dGFuY2Utc3VtdGNpdGEgYXJlIHNhaWQgbWFrZXMgYSBkaWZmZXJlbmNlLiBSZW1lbWJlciB0aGF0 IHRoZSBtZWFuaW5nIG9mIHNldmVyYWwgdGVuc2Ugd29yZHMgYXJlIHBpY3R1cmVkIGJ5IGFuIGlt YWdpbmFyeSBqb3VybmV5IHJlYWRpbmcgZnJvbSBsZWZ0IHRvIHJpZ2h0LiBUaHVzIHtwdSB6dX0g aXMg4oCcYSBsb25nIHRpbWUgYWdv4oCdIHdoaWxlIHt6dSBwdX0gaXMg4oCcaW4gdGhlIHBhc3Qg b2Ygc29tZSBwb2ludCBpbiB0aW1lIHdoaWNoIGlzIGEgbG9uZyB0aW1lIHRvd2FyZCB0aGUgZnV0 dXJlIG9yIHRoZSBwYXN0IG9mIG5vd+KAnS4gSW4gdGhlIGZpcnN0IGV4YW1wbGUsIHB1IHNob3dz IHRoYXQgd2UgYmVnaW4gaW4gdGhlIHBhc3QsIHp1IHRoZW4gdGhhdCBpdCBpcyBhIGxvbmcgdGlt ZSBiYWNrd2FyZHMuIEluIHRoZSBzZWNvbmQgZXhhbXBsZSwgenUgc2hvd3MgdGhhdCB3ZSBiZWdp biBhdCBzb21lIHBvaW50IGZhciBhd2F5IGluIHRpbWUgZnJvbSBub3csIHB1IHRoZW4sIHRoYXQg d2UgbW92ZSBiYWNrd2FyZHMgZnJvbSB0aGF0IHBvaW50LiBUaHVzIHtwdSB6dX0gaXMgYWx3YXlz IGluIHRoZSBwYXN0LiB7enUgcHV9IGNvdWxkIGJlIGluIHRoZSBmdXR1cmUhCgpBcyBicmllZmx5 IGltcGxpZWQgZWFybGllciwgYWxsIHRoZXNlIGNvbnN0cnVjdHMgYmFzaWNhbGx5IHRyZWF0IGJy aWRpIGFzIGlmIHRoZXkgd2VyZSBwb2ludC1saWtlIGluIHRpbWUgYW5kIHNwYWNlLiBJbiBhY3R1 YWxpdHksIG1vc3QgZXZlbnRzIHBsYXlzIG91dCBvdmVyIGEgc3BhbiBvZiB0aW1lIGFuZCBzcGFj ZS4gSW4gdGhlIGZvbGxvd2luZyBmZXcgcGFyYWdyYXBocywgd2Ugd2lsbCBsZWFybiBob3cgdG8g c3BlY2lmeSBpbnRlcnZhbHMgb2YgdGltZSBhbmQgc3BhY2UuCgp7emXigJlpfSBzdW10Y2l0YTog c3Bhbm5pbmcgb3ZlciB0aGUgc2hvcnQgdGltZSBvZiBbc3VtdGldCnt6ZeKAmWF9IHN1bXRjaXRh OiBzcGFubmluZyBvdmVyIHRoZSB1bnNwZWNpZmllZCAobWVkaXVtKSB0aW1lIG9mIFtzdW10aV0K e3pl4oCZdX0gc3VtdGNpdGE6IHNwYW5uaW5nIG92ZXIgdGhlIGxvbmcgdGltZSBvZiBbc3VtdGld Cgp7dmXigJlpfSBzdW10Y2l0YTogc3Bhbm5pbmcgb3ZlciB0aGUgc2hvcnQgc3BhY2Ugb2YgW3N1 bXRpXQp7dmXigJlhfSBzdW10Y2l0YTogc3Bhbm5pbmcgb3ZlciB0aGUgdW5zcGVjaWZpZWQgKG1l ZGl1bSkgc3BhY2Ugb2YgW3N1bXRpXQp7dmXigJl1fSBzdW10Y2l0YTogc3Bhbm5pbmcgb3ZlciB0 aGUgbG9uZyBzcGFjZSBvZiBbc3VtdGldCgpTaXggd29yZHMgYXQgYSB0aW1lLCBJIGtub3csIGJ1 dCByZW1lbWJlcmluZyB0aGUgdm93ZWwgc2VxdWVuY2UgYW5kIHRoZSBzaW1pbGFyaXR5IG9mIHRo ZSBpbml0aWFsIGxldHRlciB6IGZvciB0ZW1wb3JhbCB0ZW5zZXMgYW5kIHYgZm9yIHNwYWNpYWwg dGVuc2VzIG1pZ2h0IGhlbHAgdGhlIG1lbW9yaXppbmcuCnsub2l9IC0gYXR0aXR1ZGluYWw6IHBh aW4gLSBwbGVhc3VyZQoKVHJhbnNsYXRlOiB7Lm9pIGRhaSBkbyB2ZeKAmXUgW2t1XSBrbGFtYSBs byBkb3RjbyBndWdkZSBba3VdIHpl4oCZdSBba3VdIFt2YXVdfQoKQW5zd2VyOiDigJxPdWNoLCB5 b3Ugc3BlbmQgYSBsb25nIHRpbWUgdHJhdmVsaW5nIGEgbG9uZyBzcGFjZSB0byBHZXJtYW554oCd CgpUaG91Z2ggbW9zdCBwZW9wbGUgYXJlIG5vdCBmYW1pbGlhciB3aXRoIHNwYWNpYWwgdGVuc2Vz LCB0aGVzZSBuZXcgd29yZHMgY2FuIG9wZW4gdXAgZm9yIHNvbWUgcHJldHR5IHN3ZWV0IHVzZXMu IE9uZSBjb3VsZCwgZm9yIGluc3RhbmNlLCB0cmFuc2xhdGUg4oCcVGhhdOKAmXMgYSBiaWcgZG9n 4oCdIGFzIHt0aSB2ZeKAmXUgW2t1XSBnZXJrdSBbdmF1XX0gU2F5aW5nOiDigJxUaGlzIHRoaW5n IGRvZ3MgZm9yIGEgbG9uZyBzcGFjZeKAnSBtYWtlcyB5b3Ugc291bmQgcmV0YXJkZWQgaW4gRW5n bGlzaCwgYnV0IHdlbGwgc3Bva2VuIGluIExvamJhbiEKCnt6ZeKAmXV9IGFuZCBpdHMgYnJvdGhl cnMgYWxzbyBjb21iaW5lIHdpdGggb3RoZXIgdGVuc2VzIHRvIGZvcm0gY29tcG91bmQgdGVuc2Vz LiBUaGUgcnVsZSBmb3Ige3pl4oCZdX0gYW5kIHRoZSBvdGhlcnMgYXJlIHRoYXQgYW55IHRlbnNl cyBwcmVjZWRpbmcgaXQgbWFya3MgYW4gZW5kcG9pbnQgb2YgdGhlIHByb2Nlc3MgYW5kIGFueSB0 ZW5zZXMgY29taW5nIGFmdGVyIGl0IG1hcmtzIHRoZSBvdGhlciBlbmRwb2ludCByZWxhdGl2ZSB0 byB0aGUgZmlyc3QuIFRoaXMgc2hvdWxkIGJlIGRlbW9uc3RyYXRlZCB3aXRoIGEgY291cGxlIG9m IGV4YW1wbGVzOgp7Lm/igJlvY3XigJlpIGRvIGNpdGthIHB1IFtrdV0gemXigJl1IFtrdV0gYmEg W2t1XSB6dSBba3VdIFt2YXVdfSAtIOKAnFt0b2xlcmFuY2VdIHlvdSBlYXQgYmVnaW5uaW5nIGlu IHRoZSBwYXN0IGFuZCBmb3IgYSBsb25nIHRpbWUgZW5kaW5nIGF0IHNvbWUgcG9pbnQgZmFyIGlu dG8gdGhlIGZ1dHVyZSBvZiB3aGVuIHlvdSBzdGFydGVk4oCdIG9yIOKAnEhtcGYsIHlvdSBhdGUg Zm9yIGEgbG9uZyB0aW1l4oCdLiBPbmUgY2FuIGFsc28gY29udHJhc3Qge2RvIGNhIFtrdV0gemXi gJlpIFtrdV0gcHUgW2t1XSBrbGFtYSBbdmF1XX0gd2l0aCB7ZG8gcHUgW2t1XSB6ZeKAmWkgW2t1 XSBjYSBba3VdIGtsYW1hIFt2YXVdfS4gVGhlIGZpcnN0IGV2ZW50IG9mIHRyYXZlbGluZyBoYXMg b25lIGVuZHBvaW50IGluIHRoZSBwcmVzZW50IGFuZCBleHRlbmRzIGEgbGl0dGxlIHRvd2FyZHMg dGhlIHBhc3QsIHdoaWxlIHRoZSBzZWNvbmQgZXZlbnQgaGFzIG9uZSBlbmRwb2ludCBpbiB0aGUg cGFzdCBhbmQgZXh0ZW5kcyBvbmx5IHRvIHRoZSBwcmVzZW50ICh0aGF0IGlzLCBzbGlnaHR5IGlu dG8gdGhlIHBhc3Qgb3IgZnV0dXJlKSBvZiB0aGF0IGVuZHBvaW50Lgp7am1pdmV9IOKAnHgxIGlz IGFsaXZlIGJ5IHN0YW5kYXJkIHgy4oCdCgpXaGF0IGRvZXMgey51aSBtaSBwdSBba3VdIHppIFtr dV0gemXigJl1IFtrdV0gam1pdmUgW3ZhdV19IGV4cHJlc3M/CgpBbnN3ZXI6IOKAnFtoYXBwaW5l c3MhXSBJIGxpdmUgZnJvbSBhIGxpdHRsZSBpbnRvIHRoZSBwYXN0IGFuZCBhIGxvbmcgd2F5IHRv d2FyZHMgdGhlIGZ1dHVyZSBvciBwYXN0IChvYnZpb3VzbHkgdGhlIGZ1dHVyZSwgaW4gdGhpcyBj YXNlKSBvZiB0aGF0IGV2ZW504oCdIG9yIOKAnEkgYW0geW91bmcsIGFuZCBoYXZlIG1vc3QgbXkg bGlmZSBhaGVhZCBvZiBtZSA6KeKAnQoKSnVzdCB0byB1bmRlcmxpbmUgdGhlIHNpbWlsYXJpdHkg d2l0aCBzcGFjaWFsIHRlbnNlcywgbGV04oCZcyBoYXZlIGFub3RoZXIgZXhhbXBsZSwgdGhpcyB0 aW1lIHdpdGggc3BhY2lhbCB0ZW5zZXM6CnsudeKAmWV9IGF0dGl0dWRpbmFsOiB3b25kZXIgLSBj b21tb25wbGFjZQoKey514oCZZSB6YeKAmWEgW2t1XSBideKAmXUgW2t1XSB2ZeKAmXUgW2t1XSBj YeKAmXUgW2t1XSB6ZGFuaSBbdmF1XX0gLSBXaGF0IGRvZXMgaXQgbWVhbj8KCkFuc3dlcjog4oCc W3dvbmRlcl0gW0kgb2JzZXJ2ZSFdIEV4dGVuZGluZyBhIGxvbmcgc3BhY2UgZnJvbSBoZXJlIHRv IG15IGZyb250IGlzIGEgaG9tZS7igJ0gb3Ig4oCcV293LCB0aGlzIGhvbWUgZXh0ZW5kaW5nIGFo ZWFkIGlzIGh1Z2Uh4oCdCgpCZWZvcmUgd2UgY29udGludWUgd2l0aCB0aGlzIHN5bnRheC1oZWF2 eSB0ZW5zZSBzeXN0ZW0sIGkgcmVjb21tZW5kIHNwZW5kaW5nIGF0IGxlYXN0IHRlbiBtaW51dGVz IGRvaW5nIHNvbWV0aGluZyB3aGljaCBkb2VzbuKAmXQgb2NjdXB5IHlvdXIgYnJhaW4gaW4gb3Jk ZXIgdG8gbGV0IHRoZSBpbmZvcm1hdGlvbiBzaW5rIGluLiBTaW5nIGEgc29uZyBvciBlYXQgYSBj b29raWUgdmVyeSBzbG93bHkgLSB3aGF0ZXZlciwgYXMgbG9uZyBhcyB5b3UgbGV0IHlvdXIgbWlu ZCByZXN0LgoKCiEhTG9qYmFuIExlc3NvbnMgLSBMZXNzb24gZWxldmVuIChaQWhPKQpUaG91Z2gg d2Ugd29u4oCZdCBnbyB0aHJvdWdoIGFsbCBMb2piYW4gdGVuc2UgY29uc3RydWN0cyBmb3Igbm93 LCB0aGVyZSBpcyBvbmUgb3RoZXIga2luZCBvZiB0ZW5zZSB0aGF0IEkgdGhpbmsgc2hvdWxkIGJl IHRhdWdodCBub3cuIFRoZXNlIGFyZSBjYWxsZWQg4oCcZXZlbnQgY29udG91cnPigJ0sIGFuZCBy ZXByZXNlbnQgYSB2ZXJ5IGRpZmZlcmVudCB3YXkgb2Ygdmlld2luZyB0ZW5zZXMgdGhhdCB3ZSBo YXZlIHNlZW4gc28gZmFyLiBTbyBsZXTigJlzIGdldCB0byBpdDoKClVzaW5nIHRoZSB0ZW5zZXMg d2UgaGF2ZSBsZWFybmVkIHNvIGZhciwgd2UgY2FuIGltYWdpbmUgYW4gaW5kZWZpbml0ZSB0aW1l IGxpbmUsIGFuZCB3ZSB0aGVuIHBsYWNlIGV2ZW50cyBvbiB0aGF0IGxpbmUgcmVsYXRpdmUgdG8g dGhlIOKAnG5vd+KAnS4gV2l0aCBldmVudCBjb250b3VycywgaG93ZXZlciwgd2UgdmlldyBlYWNo IGV2ZW50IGFzIGEgcHJvY2Vzcywgd2hpY2ggaGFzIGNlcnRhaW4gc3RhZ2VzOiBBIHRpbWUgYmVm b3JlIGl0IHVuZm9sZHMsIGEgdGltZSB3aGVuIGl0IGJlZ2lucywgYSB0aW1lIHdoZW4gaXQgaXMg aW4gcHJvY2VzcywgYSB0aW1lIHdoZW4gaXQgZW5kcywgYW5kIGEgdGltZSBhZnRlciBpdCBoYXMg ZW5kZWQuIEV2ZW50IGNvbnRvdXJzIHRoZW4gdGVsbHMgdXMgd2hpY2ggcGFydCBvZiB0aGUgZXZl bnTigJlzIHByb2Nlc3Mgd2FzIGhhcHBlbmluZyBkdXJpbmcgdGhlIHRpbWUgc3BlY2lmaWVkIGJ5 IHRoZSBvdGhlciB0ZW5zZXMuIFdlIG5lZWQgYSBjb3VwbGUgb2YgdGVuc2VzIGZpcnN0OgoKe3B1 4oCZb30gLSBzdW10Y2l0YTogZXZlbnQgY29udG91cjogQnJpZGkgaGFzIG5vdCB5ZXQgaGFwcGVu ZWQgZHVyaW5nIFtzdW10aV0Ke2Nh4oCZb30gLSBzdW10Y2l0YTogZXZlbnQgY29udG91cjogQnJp ZGkgaXMgaW4gcHJvY2VzcyBkdXJpbmcgW3N1bXRpXQp7YmHigJlvfSAtIHN1bXRjaXRhOiBldmVu dCBjb250b3VyOiBUaGUgcHJvY2VzcyBvZiBicmlkaSBoYXMgZW5kZWQgZHVyaW5nIFtzdW10aV0K ClRoaXMgbmVlZHMgdG8gYmUgZGVtb25zdHJhdGVkIGJ5IHNvbWUgZXhhbXBsZXMuIFdoYXTigJlz IHsudWkgbWkgcHXigJlvIFtrdV0gc2UgemRhbmkgW3ZhdV19IG1lYW4/CgpBbnN3ZXI6IOKAnFlh eSwgSeKAmWxsIGJlZ2luIHRvIGhhdmUgYSBob21l4oCdLgoKQnV0IGhleSwgeW91IGFzaywgd2h5 IG5vdCBqdXN0IHNheSB7LnVpIG1pIGJhIFtrdV0gc2UgemRhbmkgW3ZhdV19IGFuZCBldmVuIHNh dmUgYSBzeWxsYWJsZT8gQmVjYXVzZSwgcmVtZW1iZXIsIHNheWluZyB0aGF0IHlvdSB3aWxsIGhh dmUgYSBob21lIGluIHRoZSBmdXR1cmUgc2F5cyBub3RoaW5nIGFib3V0IHdoZXRoZXIgeW91IGhh dmUgYSBob21lIG5vdy4gVXNpbmcge3B14oCZb30sIHRob3VnaCwgeW91IHNheSB0aGF0IHlvdSBh cmUgbm93IGluIHRoZSBwYXN0IG9mIHRoZSBwcm9jZXNzIG9mIHlvdSBoYXZpbmcgYSBob21lLCB3 aGljaCBtZWFucyB0aGF0IHlvdSBkb27igJl0IGhhdmUgb25lIG5vdy4KTm90ZSwgYnkgdGhlIHdh eSwgdGhhdCB7bWkgYmEgW2t1XSBzZSB6ZGFuaSBbdmF1XX0gaXMgc2ltaWxhciB0byB7bWkgcHXi gJlvIFtrdV0gc2UgemRhbmkgW3ZhdV19LCBhbmQgbGlrZXdpc2Ugd2l0aCB7YmHigJlvfSBhbmQg e3B1fS4gV2h5IGRvIHRoZXkgc2VlbSByZXZlcnNlZD8gQmVjYXVzZSBldmVudCBjb250b3VycyB2 aWV3IHRoZSBwcmVzZW50IGFzIHNlZW4gZnJvbSB0aGUgdmlld3BvaW50IG9mIHRoZSBwcm9jZXNz LCB3aGVyZSBhcyB0aGUgb3RoZXIgdGVuc2VzIHZpZXcgZXZlbnRzIHNlZW4gZnJvbSB0aGUgcHJl c2VudC4KCk9mdGVuLCBldmVudCBjb250b3VycyBhcmUgbW9yZSBwcmVjaXNlIHRoYXQgb3RoZXIg a2luZCBvZiB0ZW5zZXMuIEV2ZW4gbW9yZSBjbGFyaXR5IGlzIGFjaGlldmVkIGJ5IGNvbWJpbmlu ZyBzZXZlcmFsIHRlbnNlczoge2HigJlvIG1pIGJhW2t1XSB6aSBba3VdIGJh4oCZbyBba3VdIGd1 bmthIFt2YXVdfSAtIOKAnEkgaG9wZSBJ4oCZdmUgc29vbiBmaW5pc2hlZCB3b3JraW5nLuKAnQoK SW4gTG9qYmFuLCB3ZSBhbHNvIG9wZXJhdGUgd2l0aCBhbiBldmVudOKAmXMg4oCcbmF0dXJhbCBi ZWdpbm5pbmfigJ0gYW5kIGl0cyDigJxuYXR1cmFsIGVuZOKAnS4gVGhlIHRlcm0g4oCcbmF0dXJh bOKAnSBpcyBoaWdobHkgc3ViamVjdGl2ZSBpbiB0aGlzIHNlbnNlLCBhbmQgdGhlIG5hdHVyYWwg ZW5kIHJlZmVycyB0byB0aGUgcG9pbnQgaW4gdGhlIHByb2Nlc3Mgd2hlcmUgaXQgc2hvdWxkIGVu ZC4gWW91IGNhbiBzYXkgYWJvdXQgYSBsYXRlIHRyYWluLCBmb3IgaW5zdGFuY2UsIHRoYXQgaXRz IHByb2Nlc3Mgb2YgcmVhY2hpbmcgeW91IGlzIG5vdyBleHRlbmRpbmcgYmV5b25kIGl0cyBuYXR1 cmFsIGVuZC4gQW4gdW5kZXJjb29rZWQsIGJ1dCBzZXJ2ZWQgbWVhbCwgc2ltaWxhcmx5LCBpcyBi ZWluZyBlYXRlbiBiZWZvcmUgdGhhdCBwcm9jZXNz4oCZIG5hdHVyYWwgYmVnaW5uaW5nLiBUaGUg ZXZlbnQgY29udG91cnMgdXNlZCBpbiB0aGVzZSBleGFtcGxlcyBhcmUgYXMgZm9sbG93czoKCnt6 YeKAmW99IC0gc3VtdGNpdGE6IGV2ZW50IGNvbnRvdXI6IEJyaWRpIGlzIGluIHByb2Nlc3MgYmV5 b25kIGl0cyBuYXR1cmFsIGVuZCBkdXJpbmcgW3N1bXRpXQp7eGHigJlvfSAtIHN1bXRjaXRhOiBl dmVudCBjb250b3VyOiBCcmlkaSBpcyBpbW1hdHVyZWx5IGluIHByb2Nlc3MgZHVyaW5nIFtzdW10 aV0KCntjaWRqYX06IOKAnHgxIGlzIGZvb2QsIHdoaWNoIGlzIGVkaWJsZSBmb3IgeDLigJ0KClRy YW5zbGF0ZTogey5vaSBkbyBjaXRrYSB6YeKAmW8gbG8gbnUgZG8gYmHigJlvIFtrdV0gdeKAmWUg Y2l0a2Egem/igJllIG5vaSBjaWRqYSBkbyBbdmF1XSBba3XigJlvXSBbdmF1XSBba2VpXSBba3Vd fQoKQW5zd2VyOiDigJxPeSwgeW91IGtlZXAgZWF0aW5nIHdoZW4geW91IGhhdmUgZmluaXNoZWQs IGluY3JlZGlibHksIGVhdGluZyBzb21ldGhpbmcgZWRpYmxlIeKAnQpaQWhPIHRlbnNlcyAoZXZl bnQgY29udG91cnMpLiBBbGwgdGVuc2VzIGFib3ZlIHRoZSBsaW5lIG9mIHRoZSBldmVudCBzaWdu aWZ5IHN0YWdlcyBjb3ZlcmluZyBhbiBhbW91bnQgb2YgdGltZS4gQWxsIHRlbnNlcyBiZWxvdyB0 aGUgZXZlbnQgbGluZSBzaWduaWZ5IHN0YWdlcyB3aGljaCBhcmUgcG9pbnQtbGlrZS4KCntpbWcg ZmlsZUlkPSIyIiB0aHVtYj0ieSIgcmVsPSJib3hbZ10ifQoKQWxsIG9mIHRoZXNlIHRlbnNlcyBo YXZlIGJlZW4gZGVzY3JpYmluZyBzdGFnZXMgb2YgYSBwcm9jZXNzIHdoaWNoIHRha2VzIHNvbWUg dGltZSAoYXMgc2hvd24gb24gdGhlIGdyYXBoIGFib3ZlOyB0aG9zZSB0ZW5zZXMgYWJvdmUgdGhl IGV2ZW50IGxpa2UpLiBCdXQgbWFueSBvZiB0aGUgZXZlbnQgY29udG91cnMgZGVzY3JpYmVzIHBv aW50IGxpa2Ugc3RhZ2VzIGluIHRoZSBwcm9jZXNzLCBsaWtlIGl0cyBiZWdpbm5pbmcuIEFzIGlz IHRydWUgb2Yge2NhfSBhbmQge2J14oCZdX0sIHRoZXkgYWN0dWFsbHkgZXh0ZW5kIHNsaWdodGx5 IGludG8gdGhlIHBhc3QgYW5kIGZ1dHVyZSBvZiB0aGF0IHBvaW50LCBhbmQgbmVlZCBub3QgdG8g YmUgcHJlY2lzZS4KClRoZSB0d28gbW9zdCBpbXBvcnRhbnQgcG9pbnQtbGlrZSBldmVudCBjb250 b3VycyBhcmU6Cntjb+KAmWF9IC0gc3VtdGNpdGE6IGV2ZW50IGNvbnRvdXI6IEJyaWRpIGlzIGF0 IGl0cyBiZWdpbm5pbmcgZHVyaW5nIFtzdW10aV0Ke2Nv4oCZdX0gLSBzdW10Y2l0YTogZXZlbnQg Y29udG91cjogQnJpZGkgaXMgYXQgaXRzIGVuZGluZyBkdXJpbmcgW3N1bXRpXQoKRnVydGhlcm1v cmUsIHRoZXJlIGlzIGEgcG9pbnQgd2hlcmUgdGhlIHByb2Nlc3MgaXMgbmF0dXJhbGx5IGNvbXBs ZXRlLCBidXQgbm90IG5lY2Vzc2FyaWx5IGhhcyBlbmRlZCB5ZXQ6Cnttb+KAmXV9IC0gc3VtdGNp dGE6IGV2ZW50IGNvbnRvdXI6IEJyaWRpIGlzIGF0IGl0cyBuYXR1cmFsIGVuZGluZyBkdXJpbmcg W3N1bXRpXQpNb3N0IG9mIHRoZSB0aW1lLCB0aG91Z2gsIHByb2Nlc3NlcyBhY3R1YWxseSBlbmQg YXQgdGhlaXIgbmF0dXJhbCBlbmRpbmc7IHRoaXMgaXMgd2hhdCBtYWtlcyBpdCBuYXR1cmFsLiBU cmFpbnMgYXJlIG5vdCB1c3VhbGx5IGxhdGUsIGFuZCBwZW9wbGUgdXN1YWxseSByZXRyYWluIHRo ZW1zZWx2ZXMgdG8gZWF0IG9ubHkgZWRpYmxlIGZvb2QuCgpTaW5jZSBhIHByb2Nlc3MgY2FuIGJl IGludGVycnVwdGVkIGFuZCByZXN1bWVkLCB0aGVzZSBwb2ludHMgaGF2ZSBlYXJuZWQgdGhlaXIg b3duIGV2ZW50IGNvbnRvdXIgYWxzbzoKe2Rl4oCZYX0gLSBzdW10Y2l0YTogZXZlbnQgY29udG91 cjogQnJpZGkgaXMgcGF1c2luZyBkdXJpbmcgW3N1bXRpXQp7ZGnigJlhfSAtIHN1bXRjaXRhOiBl dmVudCBjb250b3VyOiBCcmlkaSBpcyByZXN1bWluZyBkdXJpbmcgW3N1bXRpXQoKSW4gZmFjdCwg c2luY2Uge2p1bmRpfSBtZWFucyDigJx4MSBwYXlzIGF0dGVudGlvbiB0byB4MuKAnSwge2Rl4oCZ YSBqdW5kaX0gYW5kIHtkaeKAmWEganVuZGl9IGFyZSBjb21tb24gTG9qYmFuIHdheXMgb2Ygc2F5 aW5nIOKAnEJSQuKAnSBhbmQg4oCcYmFja+KAnS4gT25lIGNvdWxkIG9mIGNvdXJzZSBhbHNvIHNh eSB0aGUgZXZlbnQgY29udG91cnMgYnkgdGhlbXNlbHZlcyBhbmQgaG9wZSB0aGUgcG9pbnQgZ2V0 cyBhY3Jvc3MuCgpGaW5hbGx5LCBvbmUgY2FuIHRyZWF0IGFuIGVudGlyZSBldmVudCwgZnJvbSB0 aGUgYmVnaW5uaW5nIHRvIHRoZSBlbmQgYXMgb25lIHNpbmdsZSBwb2ludCB1c2luZyB7Y2/igJlp fToKe3Blbm1pfSDigJx4MSBtZWV0cyB4MiBhdCBsb2NhdGlvbiB4M+KAnQp7bWkgcHUgW2t1XSB6 aSBba3VdIGNv4oCZaSBba3VdIHBlbm1pIGxvIGRvdGNvIHByZW51IFtrdV0gW3ZhdV19IC0g4oCc QSBsaXR0bGUgd2hpbGUgYWdvLCBJIHdhcyBhdCB0aGUgcG9pbnQgaW4gdGltZSB3aGVyZSBpIG1l dCBhIEdlcm1hbiBwZXJzb27igJ0KCgohIUxvamJhbiBMZXNzb25zIC0gTGVzc29uIHR3ZWx2ZSAo b3JkZXJzIGFuZCBxdWVzdGlvbnMpClBoZXcsIHRob3NlIHR3byBsb25nIGNoYXB0ZXJzIHdpdGgg c3ludGF4IGhlYXZ5IExvamJhbiBnaXZlcyB0aGUgYnJhaW4gc29tZXRoaW5nIHRvIHBvbmRlciBh Ym91dC4gRXNwZWNpYWxseSBiZWNhdXNlIGl04oCZcyBzbyBkaWZmZXJlbnQgZnJvbSBFbmdsaXNo LiBTbyBsZXTigJlzIHR1cm4gdG8gc29tZXRoaW5nIGEgbGl0dGxlIGxpZ2h0ZXI6IG9yZGVycyBh bmQgcXVlc3Rpb25zLgoKV2hhdCB0aGUuLi4gc2l0IHVwIGFuZCBmb2N1cyEKClNpbmNlIHRoZSB3 YXkgdG8gZXhwcmVzcyBvcmRlcnMgaW4gRW5nbGlzaCBpcyB0byBsZWF2ZSBvdXQgdGhlIHN1Ympl Y3Qgb2YgdGhlIGNsYXVzZSwgd2h5IGRpZCB5b3UgYXNzdW1lIHRoYXQgaXQgd2FzIHlvdSBJIHdh cyBzcGVha2luZyB0bywgYW5kIG5vdCBvcmRlcmluZyBteXNlbGYsIG9yIGV4cHJlc3NpbmcgdGhl IG9ibGlnYXRpb24gc29tZW9uZSBlbHNlIGhhcz8gQmVjYXVzZSB0aGUgRW5nbGlzaCBsYW5ndWFn ZSB1bmRlcnN0YW5kcyB0aGF0IG9yZGVycywgYnkgdGhlaXIgdmVyeSBuYXR1cmUsIGFyZSBhbHdh eXMgZGlyZWN0ZWQgdG93YXJkcyB0aGUgbGlzdGVuZXIgLSB0aGUg4oCceW914oCdLCBhbmQgc28g dGhlIHN1YmplY3QgaXMgbm90IG5lY2Vzc2FyeS4KSW4gTG9qYmFuLCBlbGlkaW5nIHRoZSBzdWJq ZWN0IHlpZWxkcyB7em/igJllfSwgc28gdGhhdCBwb3NzaWJpbGl0eSBpcyBzYWRseSBub3Qgb3Bl biB0byB1cy4gSW5zdGVhZCwgd2UgdXNlIHRoZSB3b3JkIHtrb30sIHdoaWNoIGlzIHRoZSBpbXBl cmF0aXZlIGZvcm0gb2Yge2RvfS4gR3JhbW1hdGljYWxseSwgaXTigJlzIGVxdWl2YWxlbnQgdG8g e2RvfSwgYnV0IGl0IGFkZHMgYSBsYXllciBvZiBzZW1hbnRpY3MsIHNpbmNlIGl0IHR1cm5zIGV2 ZXJ5IHN0YXRlbWVudCB3aXRoIHtrb30gaW4gaXQgaW50byBhbiBvcmRlci4g4oCcRG8gc3VjaCB0 aGF0IHRoaXMgc2VudGVuY2UgaXMgdHJ1ZSBmb3IgeW91PWtvIeKAnSBGb3IgdGhlIHNhbWUgcmVh c29uIHdlIGRvbuKAmXQgbmVlZCB0aGUgc3ViamVjdCBpbiBFbmdsaXNoIHNlbnRlbmNlcywgd2Ug ZG9u4oCZdCBuZWVkIG9yZGVyLXdvcmRzIGRlcml2ZWQgZnJvbSBhbnkgb3RoZXIgc3VtdGkgdGhh biB7ZG99LgoKSG93IGNvdWxkIHlvdSBvcmRlciBvbmUgdG8gZ28gZmFyIGF3YXkgZm9yIGEgbG9u ZyB0aW1lICh1c2luZyB7a2xhbWF9IGFzIHRoZSBvbmx5IHNlbGJyaT8pCgpBbnN3ZXI6IGtvIHZl 4oCZdSB6ZeKAmXUga2xhbWEKLmkgemHigJlhIGRhaSBh4oCZbyBtaSBjYSBjb+KAmXUgY2lza2Eg bG8gZmHigJlvcm1h4oCZbyAuaSBrbyBqaW1wZSB2YXUgLnVpIC0gbG9vayB1cCBjaXNrYSBhbmQg d29yayBpdCBvdXQuCgpRdWVzdGlvbnMgaW4gTG9qYmFuIGFyZSB2ZXJ5IGVhc3kgdG8gbGVhcm4s IGFuZCB0aGV5IGNvbWUgaW4gdHdvIGtpbmRzOiBGaWxsIGluIHRoZSBibGFuaywgYW5kIHRydWUv ZmFsc2UgcXVlc3Rpb25zLiBMZXTigJlzIGJlZ2luIHdpdGggdGhlIHRydWUtZmFsc2UgcXVlc3Rp b24ga2luZCAtIHRoYXTigJlzIHByZXR0eSBvdmVyY29tZWFibGUsIHNpbmNlIGl0IG9ubHkgaW52 b2x2ZXMgb25lIHdvcmQsIHt4dX0uCnh1IHdvcmtzIGxpa2UgYW4gYXR0aXR1ZGluYWwgaW4gdGhl IHNlbnNlIHRoYXQgaXQgY2FuIGdvIGFueXdoZXJlLCBhbmQgaXQgYXBwbGllcyB0byB0aGUgcHJl Y2VkaW5nIHdvcmQgKG9yIGNvbnN0cnVjdCkuIEl0IHRoZW4gdHJhbnNmb3JtcyB0aGUgc2VudGVu Y2UgaW50byBhIHF1ZXN0aW9uLCBhc2tpbmcgd2hldGhlciBpdCBpcyB0cnVlIG9yIG5vdC4gSW4g b3JkZXIgdG8gYWZmaXJtLCB5b3Ugc2ltcGx5IHJlcGVhdCB0aGUgYnJpZGk6Cnt4dSB2ZeKAmXUg emRhbmkgZG99IHsuaSB2ZeKAmXUgemRhbmkgbWl9LCBvciB5b3UganVzdCByZXBlYXQgdGhlIHRo ZSBzZWxicmk6IHt6ZGFuaX0uClRoZXJlIGlzIGFuIGV2ZW4gZWFzaWVyIHdheSB0byBhZmZpcm0g dXNpbmcgcHJvLWJyaWRpcywgYnV0IHRob3NlIGFyZSBhIHRhbGUgZm9yIGFub3RoZXIgdGltZS4g VG8gYW5zd2VyIOKAnG5v4oCdIG9yIOKAnGZhbHNl4oCdLCB5b3Ugc2ltcGx5IGFuc3dlciB3aXRo IHRoZSBicmlkaSBuZWdhdGVkLiBUaGF0IHRvbywgd2lsbCBiZSBsZWZ0IGZvciBsYXRlciwgYnV0 IHdlIHdpbGwgcmV0dXJuIHRvIHF1ZXN0aW9uIGFuc3dlcmluZyBieSB0aGVuLgoKVGhlIG90aGVy IGtpbmQgaXMgZmlsbCBpbiB0aGUgYmxhbmsuIEhlcmUsIHlvdSBhc2sgZm9yIHRoZSBxdWVzdGlv biB3b3JkIHRvIGJlIHJlcGxhY2VkIGZvciBhIGNvbnN0cnVjdCwgd2hpY2ggbWFrZXMgdGhlIGJy aWRpIGNvcnJlY3QuIFRoZXJlIGFyZSBzZXZlcmFsIG9mIHRoZXNlIHdvcmRzLCBkZXBlbmRpbmcg b24gd2hhdCB5b3UgYXJlIGFza2luZyBhYm91dDoKbWEgLSBzdW10aSBxdWVzdGlvbgptbyAtIHNl bGJyaSBxdWVzdGlvbgp4byAtIG51bWJlciBxdWVzdGlvbgpjdeKAmWUgLSB0ZW5zZSBxdWVzdGlv bgoKQXMgd2VsbCBhcyBtYW55IG90aGVycy4gVG8gYXNrIGFib3V0IGEgc3VtdGksIHlvdSB0aGVu IGp1c3QgcGxhY2UgdGhlIHF1ZXN0aW9uIHdvcmQgd2hlcmUgeW91IHdhbnQgeW91ciBhbnN3ZXI6 IHtkbyBkdW5kYSBtYSBtaX0gLSBhc2tzIGZvciB0aGUgeDIgdG8gYmUgZmlsbGVkIHdpdGggYSBj b3JyZWN0IHN1bXRpLiDigJxZb3UgZ2l2ZSB3aGF0IHRvIG1lP+KAnSBUaGUgY29tYmluYXRpb24g b2Ygc3VtdGNpdGEgKyBtYSBpcyB2ZXJ5IHVzZWZ1bCBpbmRlZWQ6CnttdeKAmWl9IC0gc3VtdGNp dGE6IG1vdGl2YXRlZCBieSB0aGUgYWJzdHJhY3Rpb24gb2YgW3N1bXRpXQoKey5vaSBkbyBkYXJ4 aSBtaSBtdeKAmWkgbWF9IC0g4oCcT3ksIHdoeSBkbyB5b3UgaGl0IG1lPyHigJ0KTGV04oCZcyB0 cnkgYW5vdGhlciBvbmUuIFRoaXMgdGltZSwgeW91IHRyYW5zbGF0ZToKey51aSBkYWkgZG8gY2Eg emXigJl1IHB1IG1vfQoKQW5zd2VyOiDigJxZb3XigJlyZSBoYXBweSwgd2hhdCBoYXZlIHlvdSBi ZWVuIGRvaW5nIGFsbCB0aGlzIGxvbmcgdGltZSB1bnRpbCBub3c/4oCdIFRlY2huaWNhbGx5LCBp dCBjb3VsZCBhbHNvIGFzayDigJx3aGF0IGhhdmUgeW91IGJlZW4/4oCdLCBidXQgYW5zd2VyaW5n IHdpdGggey51YSBuYWkgbGnigJlhIHJlbW5hfSAoVWgsIGh1bWFuLCBvYnZpb3VzbHkpIGlzIGp1 c3QgYmVpbmcgaW5jcmVkaWJseSBhbm5veWluZyBvbiBwdXJwb3NlLgoKU2luY2UgdG9uZSBvZiB2 b2ljZSBvciBzZW50ZW5jZSBzdHJ1Y3R1cmUgZG9lcyBub3QgcmV2ZWFsIHdoZXRoZXIgYSBzZW50 ZW5jZSBpcyBhIHF1ZXN0aW9uIG9yIG5vdCwgb25lIGJldHRlciBub3QgbWlzcyB0aGUgcXVlc3Rp b24gd29yZC4gVGhlcmVmb3JlLCBzaW5jZSBwZW9wbGUgdGVuZCB0byBmb2N1cyBtb3JlIG9uIHdv cmRzIGluIHRoZSBiZWdpbm5pbmcgb3IgYXQgdGhlIGVuZCBvZiBzZW50ZW5jZXMsIGl04oCZcyB1 c3VhbGx5IHdvcnRoIHRoZSB3aGlsZSB0byByZS1vcmRlciB0aGUgc2VudGVuY2Ugc28gdGhhdCB0 aGUgcXVlc3Rpb24gd29yZHMgYXJlIGF0IHRob3NlIHBsYWNlcy4gSWYgdGhhdCBpcyBub3QgZmVh c2FibGUsIHtwYXV9IGlzIGFuIGF0dGl0dWRpbmFsIG1hcmtpbmcgdGhhdCB0aGUgc2VudGVuY2Ug aXMgYSBxdWVzdGlvbi4gQ29udHJhcnksIHtwYXUgbmFpfSBleHBsaWNpdGx5IG1hcmtzIGFueSBx dWVzdGlvbiBhcyBiZWluZyByaGV0b3JpY2FsLgoKV2hpbGUgd2UgYXJlIG9uIHRoZSB0b3BpYyBv ZiBxdWVzdGlvbnMsIGl04oCZcyBhbHNvIGFwcHJvcHJpYXRlIHRvIG1lbnRpb24gdGhlIHdvcmQg e2thdX0sIHdoaWNoIGlzIGEgbWFya2VyIGZvciDigJxpbmRpcmVjdCBxdWVzdGlvbuKAnS4gV2hh dOKAmXMgYW4gaW5kaXJlY3QgcXVlc3Rpb24sIHRoZW4/IFdlbGwsIHRha2UgYSBsb29rIGF0IHRo ZSBzZW50ZW5jZToge21pIGRqdW5vIGxvIGR14oCZdSBtYSBrYXUgemRhbmkgZG99IC0g4oCcSSBr bm93IHdoYXQgaXMgeW91ciBob21lLuKAnQp7ZGp1bm99IOKAnHgxIGtub3dzIGZhY3QocykgeDIg YXJlIHRydWUgYWJvdXQgeDMgYnkgZXBpc3RlbW9sb2d5IHg04oCdCk9uZSBjYW4gdGhpbmsgaXQg YXMgdGhlIGFuc3dlciB0byB0aGUgcXVlc3Rpb24ge21hIHpkYW5pIGRvfS4gTW9yZSByYXJlbHks IG9uZSBjYW4gbWFyayBhIG5vbi1xdWVzdGlvbiB3b3JkIHdpdGgge2thdX0sIGluIHdoaWNoIGNh c2Ugb25lIHN0aWxsIGNhbiBpbWFnaW5lIGl0IGFzIHRoZSBhbnN3ZXIgdG8gYSBxdWVzdGlvbjog e21pIGppbXBlIGxvIGR14oCZdSBkdW5kYSB0aSBrYXUgZG99IC0g4oCcSSBrbm93IHdoYXQgeW91 IGhhdmUgYmVlbiBnaXZlbiwgaXQgaXMgdGhpcy7igJ0KCgohIUxvamJhbiBMZXNzb25zIC0gTGVz c29uIHRoaXJ0ZWVuIChtb3JwaG9sb2d5IGFuZCB3b3JkIGNsYXNzZXMpCkJhY2sgdG8gbW9yZSBz eW50YXgtaGVhdnkgKGFuZCBpbnRlcmVzdGluZykgc3R1ZmYuCklmIHlvdSBoYXZlbuKAmXQgYWxy ZWFkeSwgSSBzdHJvbmdseSBzdWdnZXN0IHlvdSBmaW5kIHRoZSBMb2piYW5pYyByZWNvcmRpbmcg Y2FsbGVkIFN0b3J5IFRpbWUgd2l0aCBVbmNsZSBSb2Jpbiwgb3IgbGlzdGVuIHRvIHNvbWVvbmUg c3BlYWsgTG9qYmFuIG9uIE11bWJsZSwgYW5kIHRoZW4gcHJhY3RpY2UgeW91ciBwcm9udW5jaWF0 aW9uLiBIYXZpbmcgYW4gaW50ZXJuYWwgY29udmVyc2F0aW9uIGluIHlvdXIgaGVhZCBpbiBMb2pi YW4gaXMgb25seSBnb29kIGlmIGl0IGlzbuKAmXQgd2l0aCBhbGwgdGhlIHdyb25nIHNvdW5kcywg YW5kIGxlYXJuaW5nIHByb251bmNpYXRpb24gZnJvbSB3cml0dGVuIHRleHQgaXMgaGFyZC4gVGhl cmVmb3JlLCB0aGlzIGxlc3NvbiB3aWxsIG5vdCBiZSBvbiB0aGUgTG9qYmFuIHNvdW5kcywgaG93 ZXZlciBpbXBvcnRhbnQgdGhleSBtaWdodCBiZSwgYnV0IGEgc2hvcnQgaW50cm9kdWN0aW9uIHRv IHRoZSBMb2piYW4gbW9ycGhvbG9neS4KCldoYXQgaXMgbW9ycGhvbG9neT8gVGhlIHdvcmQgaXMg ZGVyaXZlZCBmcm9tIEdyZWVrIG1lYW5pbmcg4oCcdGhlIHN0dWR5IG9mIHNoYXBlc+KAnSwgYW5k IGluIHRoaXMgY29udGV4dCwgd2UgdGFsayBhYm91dCBob3cgd2UgbWFrZSB3b3JkcyBmcm9tIGxl dHRlcnMgYW5kIHNvdW5kcywgYXMgY29udHJhc3RlZCB3aXRoIHN5bnRheCAtIGhvdyB3ZSBtYWtl IHNlbnRlbmNlcyB3aXRoIHdvcmRzLiBMb2piYW4gb3BlcmF0ZXMgd2l0aCBkaWZmZXJlbnQgbW9y cGhvbG9naWNhbCB3b3JkIGNsYXNzZXMsIHdoaWNoIGFyZSBhbGwgZGVmaW5lZCBieSB0aGVpciBt b3JwaG9sb2d5LiBUbyBtYWtlIGl0IGFsbCBuaWNlIGFuZCBzeXN0ZW1hdGljIHRob3VnaCwgd29y ZHMgd2l0aCBjZXJ0YWluIGZ1bmN0aW9ucyB0ZW5kIHRvIGJlIGdyb3VwZWQgYnkgbW9ycGhvbG9n aWNhbCBjbGFzc2VzLCBidXQgZXhjZXB0aW9ucyBtYXkgb2NjdXIuCnx8ICAgQ2xhc3N8TWVhbmlu Z3xEZWZpbmVkIEJ5fFR5cGljYWwgRnVuY3Rpb24KICAgV29yZHM6fCAgIHwgICB8ICAgCiAgIEJy aXZsYXwgICBicmlkaS13b3JkfCAgIEFtb25nIGZpcnN0IDUgbGV0dGVycyAoZXhjbHVkaW5nIOKA nCDigJgg4oCcKSBpcyBhIGNvbnNvbmFudCBjbHVzdGVyLiBFbmRzIGluIHZvd2VsLiAgIHwgICBB Y3RzIGFzIGEgc2VsYnJpIGJ5IGRlZmF1bHQuIEFsd2F5cyBoYXMgYSBwbGFjZSBzdHJ1Y3R1cmUu CiAgIC0tR2lzbXV8ICAgUm9vdC13b3JkfCA1IGxldHRlcnMgb2YgdGhlIGZvcm0gQ1ZDQ1Ygb3Ig Q0NWQ1YgICB8ICAgT25lIHRvIGZpdmUgc3VtdGkgcGxhY2VzLiBDb3ZlcnMgYmFzaWMgY29uY2Vw dHMuCiAgIC0tTHVqdm98ICBDb21wb3VuZCB3b3JkLiBEZXJpdmVkIGZyb20gZnJvbSDigJxsdWp2 bGHigJ0sIG1lYW5pbmcg4oCcY29tcGxleCB3b3Jk4oCdIHwgICBNaW4uIDYgbGV0dGVycy4gTWFk ZSBieSBzdHJpbmdpbmcgcmFmc2kgdG9nZXRoZXIgd2l0aCBiaW5kaW5nIGxldHRlcnMgaWYgbmVj ZXNzYXJ5LnwgICBDb3ZlcnMgbW9yZSBjb21wbGV4IGNvbmNlcHRzIHRoYW4gZ2lzbXUuCiAgIC0t RnUnaXZsYXwgIENvcHktd29yZCB8IEFzIGJyaXZsYSwgYnV0IGRvIG5vdCBtZWV0IGRlZmluaW5n IGNyaXRlcmlhIG9mIGdpc211IG9yIGx1anZvLCBleDoge2FuZ2VsaX0gIHwgICBDb3ZlcnMgdW5p cXVlIGNvbmNlcHRzIGxpa2UgbmFtZXMgb2YgcGxhY2VzIG9yIG9yZ2FuaXNtcy4KICAgQ21ldmxh fCAgTmFtZS13b3JkIHwgICBCZWdpbm5pbmcgYW5kIGVuZGluZyB3aXRoIHBhdXNlIChmdWxsIHN0 b3ApLiBMYXN0IHNvdW5kL2xldHRlciBpcyBhIGNvbnNvbmFudC58ICAgQWx3YXlzIGFjdHMgYXMg YSBuYW1lIG9yIGFzIHRoZSBjb250ZW50IG9mIGEgcXVvdGUuCiAgIENtYXZvfCAgIEdyYW1tYXIt d29yZC4gRnJvbSDigJxjbWF2bGHigJ0sIG1lYW5pbmcg4oCcc21hbGwgd29yZOKAnXwgT25lIGNv bnNvbmFudCBvciB6ZXJvLCBhbHdheXMgYXQgdGhlIGJlZ2lubmluZy4gRW5kcyBpbiBhIHZvd2Vs LiAgfCAgIEdyYW1tYXRpY2FsIGZ1bmN0aW9ucy4gVmFyaWVzCiAgIFdvcmQtZnJhZ21lbnRzOnwg ICB8ICAgfHwgICAKCgpfX2NtZXZsYV9fIGFyZSB2ZXJ5IGVhc3kgdG8gaWRlbnRpZnkgYmVjYXVz ZSB0aGV5IGJlZ2luIGFuZCBlbmQgd2l0aCBhIHBhdXNlLCBzaWduYWxlZCBieSBhIGZ1bGwgc3Rv cCBpbiB3cml0aW5nLCBhbmQgdGhlIGxhc3QgbGV0dGVyIGlzIGEgY29uc29uYW50LiBjbWV2bGEg Y2Fu4oCZdCBoYXZlIGFueSBvdGhlciBmdW5jdGlvbiBiZXNpZGVzIGFjdGluZyBhcyBhIG5hbWUu IE9uIHRoZSBvdGhlciBoYW5kLCBuYW1lcyB3aGljaCBhcmUgbm90IHNlbGJyaSBjYW5ub3QgYXBw ZWFyIGluIExvamJhbiB3aXRob3V0IHRoZW0gYmVpbmcgY21ldmxhLCBvciBlbmNhc2VkIGJ5IGNl cnRhaW4gcXVvdGUgd29yZHMuIE9uZSBjYW4gbWFyayBzdHJlc3MgaW4gdGhlIG5hbWVzIGJ5IGNh cGl0YWxpemluZyB0aGUgbGV0dGVycyB3aGljaCBhcmUgc3RyZXNzZWQuIEV4YW1wbGVzIG9mIGNt ZXZsYSBhcmU6IHsuaW9oQU4ufSAoSm9oYW4sIGggaXMgY2FwaXRhbCBhcG9zdHJvcGhlKSwgey5t YXQufSAoTWF0dCkgYW5kIHsubHV0Y2kuTUlOLn0gKEx1aS1DaGkgTWluKS4gTmFtZXMgd2hpY2gg ZG9lcyBub3QgZW5kIGluIGNvbnNvbmFudHMgaGF2ZSB0byBoYXZlIG9uZSBhZGRlZDogey5pdnlu Ln0gKEV2ZSkKCl9fYnJpdmxhX18gYXJlIGNhbGxlZCDigJxicmlkaS13b3Jkc+KAnSBiZWNhdXNl IHRoZXkgYnkgZGVmYXVsdCBhcmUgc2VsYnJpLCBhbmQgdGhlcmVmb3JlIGFsbW9zdCBhbGwgTG9q YmFuIHdvcmRzIHdpdGggYSBwbGFjZSBzdHJ1Y3R1cmUgYXJlIGJyaXZsYS4gVGhpcyBoYXMgYWxz byBnaXZlbiB0aGVtIHRoZSBFbmdsaXNoIG5pY2tuYW1lIOKAnGNvbnRlbnQtd29yZHPigJ0uIEl0 4oCZcyBuZWFybHkgaW1wb3NzaWJsZSB0byBzYXkgYW55dGhpbmcgdXNlZnVsIHdpdGhvdXQgYnJp dmxhLCBhbmQgYWxtb3N0IGFsbCB3b3JkcyBmb3IgY29uY2VwdHMgb3V0c2lkZSBsb2piYW4gZ3Jh bW1hciBhcmUgY2FwdHVyZWQgYnkgYnJpdmxhLiBBcyBzaG93biBpbiB0aGUgdGFibGUsIGJyaXZs YSBoYXMgdGhyZWUgc3ViY2F0ZWdvcmllczoKX19HaXNtdV9fIGFyZSB0aGUgcm9vdCB3b3JkcyBv ZiB0aGUgbGFuZ3VhZ2UuIE9ubHkgYWJvdXQgMTQ1MCBleGlzdHMsIGFuZCB2ZXJ5IGZldyBuZXcg b25lcyBhcmUgYWRkZWQuIFRoZXkgY292ZXIgdGhlIG1vc3QgYmFzaWMgY29uY2VwdHMgbGlrZSDi gJxjaXJjbGXigJ0sIOKAnGZyaWVuZOKAnSwg4oCcdHJlZeKAnSBhbmQg4oCcZHJlYW3igJ0uIEV4 YW1wbGVzIGluY2x1ZGUge3pkYW5pfSwge3BlbHh1fSBhbmQge2R1bmRhfQpfX0x1anZvX18gYXJl IG1hZGUgYnkgY29tYmluaW5nIHJhZnNpIChzZWUgdW5kZXIgcmFmc2kpLCByZXNwcmVzZW50aW5n IGdpc211LiBCeSBjb21iaW5pbmcgcmFmc2ksIG9uZSBuYXJyb3dzIGRvd24gdGhlIG1lYW5pbmcg b2YgdGhlIHdvcmQuIGx1anZvIGFyZSBtYWRlIGJ5IGFuIGVsYWJvcmF0ZSBhbGdvcml0aG0sIHNv IG1ha2luZyB2YWxpZCBsdWp2byBvbiB0aGUgZmx5IGlzIG5lYXIgaW1wb3NzaWJsZSwgd2l0aCBm ZXcgZXhjZXB0aW9ucyBsaWtlIHtzZWxwYeKAmWl9LCBmcm9tIHtzZSBwcmFtaX0sIHdoaWNoIGNh biBvbmx5IGhhdmUgb25lIGRlZmluaXRpb24uIEluc3RlYWQsIGx1anZvIGFyZSBtYWRlIG9uY2Us IGl04oCZcyBwbGFjZSBzdHJ1Y3R1cmUgZGVmaW5lZCwgYW5kIHRoZW4gdGhhdCBkZWZpbml0aW9u IGlzIG1hZGUgb2ZmaWNpYWwgYnkgdGhlIGRpY3Rpb25hcnkuIEV4YW1wbGVzIGluY2x1ZGUge2Jy aXZsYX0gKGJyaWRpLXdvcmQpLCB7Y2luamlrY2F9IChzZXh1YWwtc29jaWFsaXppbmcgPSBmbGly dGluZykgYW5kIHtjYWtjaW5raX0gKHNoZWxsLWluc2VjdCA9IGJlZXRsZSkuCl9fZnXigJlpdmxh X18gYXJlIG1hZGUgYnkgbWFraW5nIHVwIHdvcmRzIHdoaWNoIGZpdCB0aGUgZGVmaW5pdGlvbiBm b3IgYnJpdmxhLCBidXQgbm90IGZvciBsdWp2byBvciBnaXNtdS4gVGhleSB0ZW5kIHRvIGNvdmVy IGNvbmNlcHRzIHdoaWNoIGl04oCZcyBoYXJkIHRvIGNvdmVyIGJ5IGx1anZvLCBmb3IgaW5zdGFu Y2UgbmFtZXMgb2Ygc3BlY2llcywgbmF0aW9ucyBvciB2ZXJ5IGN1bHR1cmFsIHNwZWNpZmljIGNv bmNlcHRzLiBFeGFtcGxlcyBpbmNsdWRlIHtndWdkcmdvZ3VyaW99IChLb3JlYSkge2NpZGpycGl0 c2F9IChwaXp6YSkgb3Ige2FuZ2VsaX0gKGFuZ2VsKS4KCl9fQ21hdm9fXyBhcmUgc21hbGwgd29y ZHMgd2l0aCBvbmUgb3IgemVybyBjb25zb25hbnRzLiBUaGV5IHRlbmQgdG8gbm90IHNpZ25pZnkg YW55dGhpbmcgaW4gdGhlIGV4dGVyaW9yIHdvcmxkLCBidXQgdG8gaGF2ZSBvbmx5IGdyYW1tYXRp Y2FsIGZ1bmN0aW9uLiBFeGNlcHRpb25zIG9jY3VyLCBhbmQgaXTigJlzIGRlYmF0YWJsZSBob3cg bXVjaCBhdHRpdHVkaW5hbHMgZXhpc3RzIGZvciB0aGVpciBncmFtbWF0aWNhbCBmdW5jdGlvbi4g SWYgeW91IGhhdmUgYmVlbiBwYXlpbmcgYXR0ZW50aW9uLCB5b3Ugd291bGQgYWxyZWFkeSBiZSBm YW1pbGlhciB3aXRoIHtkdX0sIG9uZSBvZiB0aGUgZmV3IGNtYXZvIHdpdGggYSBwbGFjZSBzdHJ1 Y3R1cmUuIEl0IGlzIHZhbGlkIHRvIHR5cGUgc2V2ZXJhbCBjbWF2byBpbiBhIHJvdyBhcyBvbmUg d29yZCwgYnV0IGluIHRoZXNlIGxlc3NvbnMsIHRoYXQgd29u4oCZdCBiZSBkb25lLiBCeSBncm91 cGluZyBjZXJ0YWluIGNtYXZvIGluIGZ1bmN0aW9uYWwgdW5pdHMsIHRob3VnaCwgaXQgaXMgc29t ZXRpbWVzIGVhc2llciB0byByZWFkLiBUaHVzLCB7LnVpcHV6dXZ1a3VtaSBjaXRrYX0gaXMgdmFs aWQgZm9yIHsudWkgcHUgenUgdnUga3UgbWkgY2l0a2F9LiBMaWtlIG90aGVyIExvamJhbiB3b3Jk cywgb25lIHNob3VsZCAoYnV0IG5lZWQgbm90IGFsd2F5cykgcGxhY2UgYSBmdWxsIHN0b3AgYmVm b3JlIGFueSB3b3JkcyBiZWdpbm5pbmcgd2l0aCBhIHZvd2VsLgpjbWF2byBvZiB0aGUgZm9ybSBD VuKAmVZWIG9yIFbigJlWViBhcmUgZXhwZXJpbWVudGFsLCBhbmQgYXJlIHdvcmRzIHdoaWNoIGFy ZSBub3QgaW4gdGhlIGZvcm1hbCBncmFtbWFyLCBidXQgd2hpY2ggaGF2ZSBiZWVuIGFkZGVkIGJ5 IExvamJhbiB1c2VycyB0byByZXNwb25kIHRvIGEgY2VydGFpbiBuZWVkLgoKX19SYWZzaV9fIGFy ZSBub3QgTG9qYmFuIHdvcmRzLCBhbmQgY2FuIG5ldmVyIGFwcGVhciBhbG9uZS4gSG93ZXZlciwg c2V2ZXJhbCAobW9yZSB0aGFuIG9uZSkgcmFmc2kgY29tYmluZSB0byBmb3JtIGx1anZvLiBUaGVz ZSBtdXN0IHN0aWxsIGxpdmUgdXAgdG8gdGhlIGx1anZvIGRlZmluaXRpb24sIGZvciBpbnN0YW5j ZSB7bG9qYmFufSBpcyBpbnZhbGlkIGJlY2F1c2UgaXQgZW5kcyBpbiBhIGNvbnNvbmFudCAod2hp Y2ggbWFrZXMgaXQgYSBjbWV2bGEpLCBhbmQge2Np4oCZZWtlaX0gaXMgaW52YWxpZCBiZWNhdXNl IGl0IGRvZXMgbm90IGNvbnRhaW4gYSBjb25zb25hbnQgY2x1c3RlciwgYW5kIGlzIHRodXMgcmVh ZCBhcyB0d28gY21hdm8gd3JpdHRlbiBhcyBvbmUgd29yZC4gT2Z0ZW4sIGEgMy00IGxldHRlciBz dHJpbmcgaXMgYm90aCBhIGNtYXZvIGFuZCBhIHJhZnNpLCBsaWtlIHt6deKAmWV9LCB3aGljaCBp cyBib3RoIHRoZSBCQUkgYW5kIHRoZSByYWZzaSBmb3Ige3p1a3RlfS4gTm90ZSB0aGF0IHRoZXJl IGlzIG5vd2hlcmUgdGhhdCBib3RoIGEgY21hdm8gYW5kIGEgcmFmc2kgd291bGQgYmUgZ3JhbW1h dGljYWwsIHNvIHRoZXNlIGFyZSBub3QgY29uc2lkZXJlZCBob21vcGhvbmVzLiBBbGwgZ2lzbXUg Y2FuIGRvdWJsZSBhcyByYWZzaSwgaWYgdGhleSBhcmUgcHJlZml4ZWQgd2l0aCBhbm90aGVyIHJh ZnNpLiBUaGUgZmlyc3QgZm91ciBsZXR0ZXIgb2YgYSBnaXNtdSArIHkgY2FuIGFsc28gYWN0IGFz IGEgcmFmc2ksIGlmIHRoZXkgYXJlIHN1ZmZpeGVkLiBUaGUgdm93ZWwgeSBjYW4gb25seSBhcHBl YXIgaW4gbHVqdm8gb3IgY21ldmxhLiBWYWxpZCByYWZzaSBsZXR0ZXIgY29tYmluYXRpb25zIGFy ZTogQ1ZWLCBDVuKAmVYsIENDViwgQ1ZDQ3ktIENDVkN5LSwgLUNWQ0NWIGFuZCAtQ0NWQ1YuCgpV c2luZyB3aGF0IHlvdSBrbm93IG5vdywgeW91IHNob3VsZCBiZSBhYmxlIHRvIGFuc3dlciB0aGUg dGVzdCBpIHRodXMgcHJlc2VudDoKQ2F0ZWdvcml6ZSBlYWNoIG9mIHRoZSBmb2xsb3dpbmcgd29y ZHMgYXMgY21ldmxhIChDKSwgZ2lzbXUgKGcpLCBsdWp2byAobCksIGZ14oCZaXZsYSAoZikgb3Ig Y21hdm8gKGMpOgpBKSBqYWkgICAgICAgIEcpIG11bWJsCkIpIC5pcmNpICAgICAgICBIKSAuaeKA mWkKQykgYm9zdHUgICAgICAgIEkpIGN1CkQpIHhlbG1hbiAgICAgICAgSikgcGxhanZhCkUpIHBv 4oCZZSAgICAgICAgSykgZGFuc2VrZQpGKSBkamlza3UgICAgICAgIEwpIC5lcnRzYQoKQW5zd2Vy OiBhLWMsIGItZiwgYy1nLCBkLUMsIGUtYywgZi1sLCBnLUMsIGgtYywgaS1jLCBqLWwsIGstZiwg bC1mLiBJIGxlZnQgb3V0IHRoZSBmdWxsIHN0b3BzIGJlZm9yZSBhbmQgYWZ0ZXIgbmFtZXMgc28g aXQgd291bGRu4oCZdCBiZSB0b28gZWFzeS4KTm90ZTogc29tZSBvZiB0aGVzZSB3b3JkcywgbGlr ZSBib3N0dSBkbyBub3QgZXhpc3QgaW4gdGhlIGRpY3Rpb25hcnksIGJ1dCB0aGlzIGlzIGlycmVs ZXZhbnQuIFRoZSBtb3JwaG9sb2d5IHN0aWxsIG1ha2VzIGl0IGEgZ2lzbXUsIHNvIGl04oCZcyBq dXN0IGFuIHVuZGVmaW5lZCBnaXNtdS4gU2ltaWxhcmx5IHdpdGggLmVydHNhCgoKISFMb2piYW4g TGVzc29ucyAtIExlc3NvbiBmb3VydGVlbiAodGhlIExvamJhbiBzdW10aSAxOiBMRSBhbmQgTEEp CklmIHlvdSBoYXZlIHJlYWQgYW5kIHVuZGVyc3Rvb2QgdGhlIGNvbnRlbnQgb2YgYWxsIHRoZSBj aGFwdGVycyB1bnRpbCBub3csIHlvdSBoYXZlIGFtYXNzZWQgYSBsYXJnZSBlbm91Z2gga25vd2xl ZGdlIG9mIExvamJhbiBzbyB0aGF0IGl0IGRvZXNu4oCZdCBtYXR0ZXIgaW4gd2hpY2ggb3JkZXIg eW91IGxlYXJuIHRoZSByZXN0LiBBcyBhIHJlc3VsdCwgdGhlIG9yZGVyIG9mIHRoZSBuZXh0IGNo YXB0ZXJzIHdpbGwgYmUgYSBtaXh0dXJlIG9mIHNvcnRlZCBieSBpbmNyZWFzaW5nIGRpZmZpY3Vs dHkgYW5kIHNvcnRlZCBieSBpbXBvcnRhbmNlIGluIG9yZGluYXJ5IExvamJhbiBjb252ZXJzYXRp b24uCgpPbmUgb2YgdGhlIGJpZ2dlc3QgY29uc3RyYWlucyBvbiB5b3VyIHNwZWFrIG5vdyBpcyB5 b3VyIGxpbWl0ZWQga25vd2xlZGdlIG9uIGhvdyB0byBtYWtlIHN1bXRpLiBTbyBmYXIsIHlvdSBv bmx5IGtub3cge3RpfSBhbmQge2xvIFNFTEJSSX0sIHdoaWNoIGRvZXNu4oCZdCB0YWtlIHlvdSBm YXIgY29uc2lkZXJpbmcgaG93IGltcG9ydGFudCBzdW10aSBhcmUgaW4gTG9qYmFuLiBUaGlzIGNo YXB0ZXIgYXMgd2VsbCBhcyB0aGUgZm9sbG93aW5nIHR3byB3aWxsIGJlIGFib3V0IHRoZSBMb2pi YW4gc3VtdGkuIEZvciBub3csIHdlIGZvY3VzIG9uIHRoZSBkZXNjcmlwdGl2ZS1saWtlIHN1bXRp LCB0aGUgb25lcyBtYWRlIHdpdGggYXJ0aWNsZXMgbGlrZSB7bG99CkFydGljbGVzIGFyZSBpbiBs b2piYW4gY2FsbGVkIHtnYWRyaX0sIGFuZCBhbGwgdGhlIG9uZXMgZGlzY3Vzc2VkIGluIHRoaXMg Y2hhcHRlciBhcmUgdGVybWluYXRlZCBieSB7a3V9IChleGNlcHQgdGhlIGNvbWJpbmF0aW9uIHts YSBDTUVWTEF9KS4gV2Ugd2lsbCBiZWdpbiBieSBkZXNjcmliaW5nIHRocmVlIHNpbXBsZSBraW5k cywgYW5kIHRoZW4gaW1tZWRpYXRlbHkgZmluZCB0aGF0IHRoZXkgYXJlIG5vdCBzbyBzaW1wbGUg YWZ0ZXIgYWxsOgp7bG99IC0gZ2Fkcmk6IFZlcmRpY2FsIOKAnGNvbnZlcnQgc2VsYnJpIHRvIHN1 bXRp4oCdLiBUcmVhdCByZXN1bHQgYXMgaW5kaXZpZHVhbChzKS4Ke2xlfSAtIGdhZHJpOiBEZXNj cmlwdGl2ZSDigJxjb252ZXJ0IHNlbGJyaSB0byBzdW10aeKAnS4gVHJlYXQgcmVzdWx0IGFzIGlu ZGl2aWR1YWwocykuCntsYX0gLSBnYWRyaTogTmFtaW5nIGFydGljbGU6IENvbnZlbnRpb25hbCwg 4oCcY29udmVydCBzZWxicmkgb3IgY21ldmxhIHRvIHN1bXRp4oCdLiBUcmVhdCByZXN1bHQgYXMg aW5kaXZpZHVhbChzKS4KCllvdSBhcmUgYWxyZWFkeSBmYW1pbGlhciB3aXRoIHtsb30gYW5kIHdo YXQgaXQgZG9lcy4gQnV0IHdoYXQgZG9lcyBpdCBtZWFuLCDigJxWZXJkaWNhbOKAnSBhbmQg4oCc VHJlYXQgcmVzdWx0IGFzIGluZGl2aWR1YWxz4oCdPyBUaGUgbGF0dGVyIGFib3V0IGluZGl2aWR1 YWxzLCBJ4oCZbGwgY29tZSBiYWNrIHRvIGxhdGVyIHdoZW4gc3BlYWtpbmcgYWJvdXQgbWFzc2Vz LiBGb3Igbm93LCDigJx2ZXJkaWNhbOKAnSBpbiB0aGlzIGNvbnRleHQgbWVhbnMgdGhhdCBpbiBv cmRlciBmb3IgYSB0aGluZyB0byBxdWFsaWZ5IGJlZ2luIGxhYmVsbGVkIGFzIHtsbyBrbGFtYX0s IGl0IGhhcyB0byBhY3R1YWxseSBrbGFtYS4gVGh1cywgdmVyZGljYWwgZ2FkcmkgbWFrZXMgYSBj bGFpbSB3aGljaCBtYXkgYmUgdHJ1ZSBvciBmYWxzZSAtIHRoYXQgdGhlIG9iamVjdChzKSBpbiBx dWVzdGlvbiBhcmUgYWN0dWFsbHkgdGhlIHgxIG9mIHRoZSBzZWxicmkgYWZ0ZXIge2xvfS4KClRo aXMgbWF5IGJlIGNvbnRyYXN0ZWQgd2l0aCB7bGV9LCB3aGljaCBpcyBkZXNjcmlwdGl2ZSwgYW5k IHRodXMgbm90IHZlcmRpY2FsLiBTYXlpbmcge2xlIGdlcmt1fSBzYXlzIHRoYXQgeW91IGhhdmUg b25lIG9yIG1vcmUgc3BlY2lmaWMgb2JqZWN0cyBpbiBtaW5kLCBhbmQgeW91IHVzZSB0aGUgc2Vs YnJpIHtnZXJrdX0gdG8gZGVzY3JpYmUgaXQsIHNvIHRoYXQgdGhlIGxpc3RlbmVyIG1heSBpZGVu dGlmeSB0aG9zZSBzcGVjaWZpYyBvYmplY3RzLlRoaXMgbWVhbnMgdGhhdCB7bGV9IGhhdmVzIHR3 byBpbXBvcnRhbnQgZGlmZmVyZW5jZXMgZnJvbSB7bG99OiBGaXJzdGx5LCBpdCBkb2VzIG5vdCBy ZWZlciB0byBvYmplY3RzIGluIGdlbmVyYWwsIGJ1dCB0byBzcGVjaWZpYyBvYmplY3RzLiBTZWNv bmRseSwgd2hpbGUge2xvIGdlcmt1fSBkZWZpbml0ZWx5IGlzIG9uZSBvciBtb3JlIGRvZ3MsIHts ZSBnZXJrdX0sIGJlY2F1c2UgaXTigJlzIG5vdCB2ZXJkaWNhbCwgY2FuIGJlIGFueXRoaW5nLCBh cyBsb25nIGFzIHRoZSBzcGVha2VyIHRoaW5rcyB0aGUgZGVzY3JpcHRpb24gd2lsbCBoZWxwIGlk ZW50aWZ5aW5nIHRoZSBjb3JyZWN0IG9iamVjdHMuIFBlcmhhcHMgdGhlIHNwZWFrZXIgaXMgcmVm ZXJyaW5nIHRvIGEgaHllbmEsIGJ1dCBhcmUgbm90IGZhbWlsaWFyIHdpdGggdGhlbSBhbmQgdGhp bmsg4oCcZG9n4oCdIGlzIGEgZ29vZCBlbm91Z2ggYXBwcm94aW1hdGlvbiB0byBiZSB1bmRlcnN0 b29kLiBUaGlzIG5vbi12ZXJkaWNhbGl0eSBpcyBwZXJoYXBzIG92ZXItZW1waGFzaXNlZCBpbiBt b3N0IG1hbnkgdGV4dHM7IFRoZSBiZXN0IHdheSB0byBkZXNjcmliZSBhIGRvZyBpcyB1c3VhbGx5 IHRvIGRlc2NyaWJlIGl0IGFzIGJlaW5nIGEgZG9nLCBhbmQgdW5sZXNzIHRoZXJlIGlzIGEgZ29v ZCByZWFzb24gbm90IHRvLCB7bGUgZ2Vya3V9IGlzIHVzdWFsbHkgcHJlc3VtZWQgdG8gcmVmZXIg dG8gc29tZXRoaW5nIHdoaWNoIGlzIGFsc28ge2xvIGdlcmt1fS4KSW4gdHJhbnNsYXRpb24sIHts byBnZXJrdX0gaXMgdXN1YWxseSDigJxhIGRvZ+KAnSBvciDigJxzb21lIGRvZ3PigJ0sIHdoaWxl IHtsZSBnZXJrdX0gaXMg4oCcdGhlIGRvZ+KAnSBvciDigJx0aGUgZG9nc+KAnS4gRXZlbiBiZXR0 ZXIgZm9yIHtsZSBnZXJrdX0gd291bGQgYmUg4oCcdGhlIOKAnGRvZyhzKeKAnSDigJ0KCkxhc3Qg b2YgdGhlIHRocmVlIGJhc2ljIGdhZHJpLCB0aGVyZSBpcyB7bGF9LCB0aGUgbmFtaW5nIGdhZHJp LCB3aGljaCBJIGhhdmUgdW5jb252ZW50aW9uYWxseSBjYWxsZWQg4oCcY29udmVudGlvbmFs4oCd LiBXaGF0IEkgbWVhbiBieSB0aGlzIGlzIHRoYXQgaXTigJlzIG5laXRoZXIgZGVzY3JpcHRpdmUg bm9yIHZlcmRpY2FsLCBzaW5jZSBpdCByZWZlcnMgdG8gYSBwcm9wZXIgbmFtZS4gSWYgSSBpbiBF bmdsaXNoIHJlZmVyIHRvIGEgcGVyc29uIGNhbGxlZCBJbm5vY2VudCBieSBoZXIgbmFtZSwgSSBu ZWl0aGVyIGRlc2NyaWJlIGhlciBhcyBiZWluZyBpbm5vY2VudCwgbm9yIGRvIEkgc3RhdGUgdGhh dCBzaGUgaXMuIEkgb25seSBzdGF0ZSB0aGF0IGJ5IGNvbnZlbnRpb24sIHRoYXQgb2JqZWN0IGlz IHJlZmVycmVkIHRvIGJ5IHRoYXQgc2VsYnJpIG9yIGNtZXZsYS4gTm90ZSB0aGF0IHtsYX0gYW5k IHRoZSBnYWRyaSBkZXJpdmVkIGZyb20gaXQgY2FuIGNvbnZlcnQgY21ldmxhIHRvIHN1bXRpIHVu bGlrZSBhbnkgb3RoZXIgZ2FkcmkuIEFsc286IEJlIGNhdXRpb3VzOiBPdGhlciB0ZXh0cyBkb2Vz IG5vdCBtZW50aW9uIHRoYXQgbmFtZXMgY2FuIGJlIGZvcm1lZCBmcm9tIG9yZGluYXJ5IHNlbGJy aSB1c2luZyB0aGUgZ2Fkcmkge2xhfS4gQnV0IHRob3NlIGhlcmV0aWNzIG11c3QgYnVybjsgc2Vs YnJpIG5hbWVzIGFyZSBhcyBnb29kIGFzIHRoZXkgZ2V0LCBhbmQgbWFueSBhIHByb3VkIExvamJh bmlzdCBoYXZlIHRoZW0uCgpUaGVzZSB0aHJlZSBiYXNpYyBnYWRyaSBjYW4gYmUgZXhwYW5kZWQg d2l0aCB0aHJlZSBtb3JlLCB3aGljaCBjb3JyZXNwb25kcyB0byB0aGUgcHJldmlvdXM6Cgp7bG9p fSAtIGdhZHJpOiBWZXJkaWNhbCDigJxjb252ZXJ0IHNlbGJyaSB0byBzdW10aeKAnS4gVHJlYXQg cmVzdWx0IGFzIG1hc3MoZXMpLgp7bGVpfSAtIGdhZHJpOiBEZXNjcmlwdGl2ZSDigJxjb252ZXJ0 IHNlbGJyaSB0byBzdW10aeKAnS4gVHJlYXQgcmVzdWx0IGFzIGEgbWFzcyhlcykuCntsYWl9IC0g Z2Fkcmk6IE5hbWluZyBhcnRpY2xlOiBDb252ZW50aW9uYWwsIOKAnGNvbnZlcnQgc2VsYnJpIG9y IGNtZXZsYSB0byBzdW10aeKAnS4gVHJlYXQgcmVzdWx0IGFzIG1hc3MoZXMpLgoKVGhlc2UgYXJl IHRoZSBzYW1lIGluIGFsbCBhc3BlY3RzIGV4Y2VwdCBmb3Igb25lOiBUaGV5IHRyZWF0IHRoZSBz dW10aSBhcyBtYXNzZXMgaW5zdGVhZCBvZiBpbmRpdmlkdWFscy4gSWYgdGhlcmUgaXMgb25seSBv bmUgb2JqZWN0IGluIHF1ZXN0aW9uLCB0aGVzZSB0d28gY29uY2VwdHMgYXJlIGVxdWl2YWxlbnQu IFRoZSBkaWZmZXJlbmNlIGJldHdlZW4gdGhlc2UgdHdvIGNvbmNlcHRzIGxpZSBpbiB3aGljaCBz ZWxicmkgY2FuIGJlIGFzY3JpYmVkIHRvIGEgZ3JvdXAgb2YgaW5kaXZpZHVhbHMgdmVyc3VzIGEg bWFzcy4gQSBncm91cCBvZiBpbmRpdmlkdWFscyBjYW4gYmUgc2FpZCB0byBmaXQgYSBjZXJ0YWlu IHNlbGJyaSwgaWYgYWxsIG1lbWJlcnMgb2YgdGhlIGdyb3VwIGVhY2ggZml0IHRoZSBzZWxicmku IEl0IGlzIGNvcnJlY3QgdG8gZGVzY3JpYmUgYSBwYWNrIG9mIHtsbyBnZXJrdX0sIGFzIGJlaW5n IGJsYWNrLCBpZiBmb3IgZWFjaCBvZiB0aGUgZG9ncyBpdOKAmXMgdHJ1ZSB0aGF0IHRoZXkgYXJl IGJsYWNrLiBBIG1hc3MsIG9uIHRoZSBvdGhlciBoYW5kLCBmaXRzIGFsbCB0aGUgc2VsYnJpIHdo aWNoIGFueSBvZiBpdHMgbWVtYmVycyBmaXQsIGFzIHdlbGwgYXMgdGhlIHNlbGJyaSB3aGljaCBu b25lIG9mIHRoZSBtZW1iZXJzIGZpdCwgYnV0IHdoaWNoIHRoZSBncm91cCBjb25zaWRlcmVkIGFz IGEgd2hvbGUgZG9lcy4gVGh1cywgYSBtYXNzIG9mIGRvZ3MgY2FuIGJlIGJvdGggYmxhY2sgYW5k IHdoaXRlLiBIb3dldmVyLCBhbGwgdGhlIG1lbWJlcnMgb2YgdGhlIG1hc3Mgb2YgZG9ncyBtdXN0 IGJlIGRvZ3MgaW4gb3JkZXIgZm9yIHtsb2l9IHRvIGJlIGFwcGxpY2FibGUuIEFub3RoZXIgZXhh bXBsZSBjYW4gaWxsdXN0cmF0ZSBob3cgYSBtYXNzIGNhbiBoYXZlIHByb3BlcnRpZXMgd2hpY2gg bm9uZSBvZiBpdHMgbWVtYmVycyBoYXM6CntzcnVyaX06IOKAnHgxIGZsYW5rcy9lbmNpcmNsZXMv ZW5jbG9zZXMgeDIgaW4gbGluZS9wbGFuZS9kaXJlY3Rpb25zIHgz4oCdCntsZWkgcHJlbnUgY3Ug c3J1cmkgbG8gemRhbml9IC0g4oCcVGhlIHBlb3BsZSBzdXJyb3VuZGVkIHRoZSBob21lLuKAnSBp cyBwbGF1c2libGUsIGV2ZW4gdGhvdWdoLCB5byBtb21hIGpva2VzIG5vdCBjb25zaWRlcmVkLCBp dOKAmXMgY29tcGxldGVseSBpbXBsYXVzaWJsZSB0aGF0IGl0IGNvdWxkIGJlIHRydWUgZm9yIGFu eSBvbmUgb2YgdGhlIG1lbWJlcnMgYWxvbmUuIEFuIEVuZ2xpc2ggYW5hbG9neSBjb3VsZCBiZTog 4oCcSHVtYW5zIGRlZmVhdGVkIHNtYWxscG94IGluIHRoZSAyMHRoIGNlbnR1cnnigJ0uIFN1cmVs eSBubyBodW1hbnMgZGlkIHNvLCBidXQgdGhlIG1hc3Mgb2YgaHVtYW5zIGRpZCwgYW5kIHRoYXQg bWFrZXMgdGhlIHNlbnRlbmNlIHRydWUgaW4gRW5nbGlzaCwgYXMgd2VsbCBhcyBpbiBMb2piYW4g aWYg4oCcaHVtYW5z4oCdIGFyZSBhIG1hc3MuIEp1c3QgbGlrZSB0aGUgTG9qYmFuIG1hc3MsIHRo ZSBFbmdsaXNoIG1hc3Mg4oCcaHVtYW5z4oCdIGNhbiBvbmx5IHJlZmVyIHRvIGluZGl2aWR1YWxz IGVhY2ggb2Ygd2hpY2ggYXJlIGh1bWFuLgp7bGVpIGdlcmt1fSByZWZlcnMgdG8gYSBtYXNzIGZv cm1lZCBieSBhIGdyb3VwIG9mIHNwZWNpZmljIGluZGl2aWR1YWxzLCBlYWNoIG9mIHdoaWNoIHRo ZSBzcGVha2VyIHJlZmVycyB0byBhcyB7bGUgZ2Vya3V9LgpNYXNzIG5hbWVzIGFzIGRlc2NyaWJl cyBieSB7bGFpfSBhcmUgb25seSBhcHByb3ByaWF0ZSBpZiB0aGUgZ3JvdXAgYXMgYSB3aG9sZSBp cyBuYW1lZCBzdWNoLCBhbmQgbm90IGp1c3QgaWYgYW55IG9mIHRoZSBtZW1iZXJzIGFyZS4gSXQg Y2FuLCBob3dldmVyIGJlIHVzZWQgaWYgdGhlIGJyaWRpIGlzIHRydWUgZm9yIG9ubHkgYSBmcmFj dGlvbiBvZiB0aGF0IGdyb3VwLgoKQWxzbywgdGhlcmUgYXJlIHRocmVlIHNldC1mb3JtaW5nIGdh ZHJpOgoKe2xv4oCZaX0gLSBnYWRyaTogVmVyZGljYWwg4oCcY29udmVydCBzZWxicmkgdG8gc3Vt dGnigJ0uIFRyZWF0IHJlc3VsdCBhcyBhIHNldC4Ke2xl4oCZaX0gLSBnYWRyaTogRGVzY3JpcHRp dmUg4oCcY29udmVydCBzZWxicmkgdG8gc3VtdGnigJ0uIFRyZWF0IHJlc3VsdCBhcyBhIHNldC4K e2xh4oCZaX0gLSBnYWRyaTogTmFtaW5nIGFydGljbGU6IENvbnZlbnRpb25hbCwg4oCcY29udmVy dCBzZWxicmkgb3IgY21ldmxhIHRvIHN1bXRp4oCdLiBUcmVhdCByZXN1bHQgYXMgYSBzZXQuCgpV bmxpa2UgZ3JvdXBzIG9mIGluZGl2aWR1YWxzIG9yIG1hc3Nlcywgc2V0cyBkb2VzIG5vdCB0YWtl IGFueSBvZiB0aGUgcHJvcGVydGllcyBmcm9tIHRoZSBvYmplY3RzIGZyb20gd2hpY2ggdGhlIHNl dCBpcyBmb3JtZWQuIEEgc2V0IGlzIGEgcHVyZWx5IG1hdGhlbWF0aWNhbCBvciBsb2dpY2FsIGNv bnN0cnVjdCwgYW5kIGhhcyBwcm9wZXJ0aWVzIGxpa2UgY2FyZGluYWxpdHksIG1lbWJlcnNoaXAg b3Igc2V0IGluY2x1c2lvbi4gQWdhaW4sIG5vdGUgdGhlIGRpZmZlcmVuY2UgYmV0d2VlbiBhIHNl dCBvZiB0aGluZ3MsIGFuZCB0aGUgdGhpbmdzIG9mIHdoaWNoIHRoZSBzZXQgaXMgZm9ybWVkOgp7 dGlyeHV9IOKAnHgxIGlzIGEgdGlnZXIvbGVvcGFyZC9qYWd1YXIgb2Ygc3BlY2llcy9icmVlZCB4 MiB3aXRoIGNvYXQgbWFya2luZ3MgeDPigJ0Ke2xv4oCZaSB0aXJ4dSBjdSBjbWFsdX0gc2F5cyBu b3RoaW5nIGFib3V0IHdoZXRoZXIgYmlnIGNhdHMgYXJlIHNtYWxsICh3aGljaCBpcywgYnkgdGhl IHdheSwgb2J2aW91c2x5IGZhbHNlKSwgYnV0IGluc3RlYWQgc2F5IHRoYXQgdGhlIHNldCBvZiBi aWcgY2F0cyBpcyBzbWFsbDsgdGhhdCBpcyAtIHRoZXJlIGFyZSBmZXcgb2YgdGhlbS4KCkxhc3Rs eSwgdGhlcmUgYXJlIHRoZSBnZW5lcmFsaXppbmcgZ2Fkcmk6Cntsb+KAmWV9IC0gZ2Fkcmk6IFZl cmRpY2FsIOKAnGNvbnZlcnQgc2VsYnJpIHRvIHN1bXRp4oCdLiBTdW10aSByZWZlcnMgdG8gdGhl IGFyY2hldHlwZSBvZiB7bG8gU0VMQlJJfS4Ke2xl4oCZZX0gLSBnYWRyaTogRGVzY3JpcHRpdmUg 4oCcY29udmVydCBzZWxicmkgdG8gc3VtdGnigJ0uIFN1bXRpIHJlZmVycyB0byB0aGUgZGVzY3Jp YmVkL3BlcmNlaXZlZCBhcmNoZXR5cGUgb2Yge2xlIFNFTEJSSX0uCk9mIHdoaWNoIHRoZXJlIGlz IG5vIHtsYX0tZXF1aXZhbGVudC4KClNvLCB3aGF0IGlzIGFjdHVhbGx5IG1lYW50IGJ5IHRoZSBh cmNoZXR5cGU/IEZvciB7bG/igJllIHRpcnh1fSwgaXQgaXMgYW4gaWRlYWwsIGltYWdpbmVkIGJp ZyBjYXQsIHdoaWNoIGhhcyBhbGwgdGhlIHByb3BlcnRpZXMgd2hpY2ggYmVzdCBleGVtcGxpZmll cyBiaWcgY2F0cy4gSXQgd291bGQgYmUgd3JvbmcgdG8gc2F5IHRoYXQgdGhpcyBpbmNsdWRlcyBo YXZpbmcgYSBzdHJpcGVkIGZ1ciwgc2luY2UgYSBiaWcgc3lzdGVtYXRpYyBzdWJncm91cCBvZiB0 aGUgbWVtYmVycyBvZiB0aGUgc2V0IG9mIGJpZyBjYXRzIGRvIG5vdCBoYXZlIHN0cmlwZWQgZnVy LCB0aGUgbGVvcGFyZHMgYW5kIHRoZSBqYWd1YXJzLiBMaWtld2lzZSwgdGhlIHR5cGljYWwgaHVt YW4gZG9lcyBub3QgbGl2ZSBpbiBBc2lhIGV2ZW4gdGhvdWdoIGEgbG90IG9mIGh1bWFucyBkby4g SG93ZXZlciwgaWYgc3VmZmljaWVudGx5IG1hbnkgaHVtYW5zIGhhdmUgYSB0cmFpdCwgZm9yIGlu c3RhbmNlIGJlaW5nIGFibGUgdG8gc3BlYWssIHdlIGNhbiBzYXk6CntrYWtuZX06IOKAnHgxIGlz IGNhcGFibGUgb2YgZG9pbmcvYmVpbmcgeDIgdW5kZXIgY2lyY3Vtc3RhbmNlIHgz4oCdCntsb+KA mWUgcmVtbmEgY3Uga2FrbmUgbG8gbnUgdGF2bGF9IC0g4oCcVGhlIHR5cGljYWwgaHVtYW4gYmVp bmcgY2FuIHNwZWFr4oCdLgoKe2xl4oCZZX0gdGhlbiwgaXMgdGhlIGlkZWFsIG9iamVjdCBhcyBw ZXJjZWl2ZWQgb3IgZGVzY3JpYmVkIGJ5IHRoZSBzcGVha2VyLiBUaGlzIG5lZWQgbm90IGJlIGZh Y3R1YWxseSBjb3JyZWN0LCBhbmQgaXMgb2Z0ZW4gdHJhbnNsYXRlZCBhcyB0aGUg4oCcc3RlcmVv dHlwZeKAnSwgZXZlbiB0aG91Z2ggdGhlIEVuZ2xpc2ggcGhyYXNlIGhhdmUgc29tZSB1bnBsZWFz YW50IG5lZ2F0aXZlIGNvbm5vdGF0aW9ucywgd2hpY2ggdGhlIExvamJhbiBkb2VzIG5vdC4gSW4g ZmFjdCwgZXZlcnlvbmUgaGFzIGEgc3RlcmVvdHlwaWNhbCBhcmNoZXR5cGljaGFsIGltYWdlIG9m IGFueSBjYXRlZ29yeS4gSW4gb3RoZXIgd29yZHMsIHtsb+KAmWUgcmVtbmF9IGlzIHRoZSBhcmNo ZXR5cGUgd2hpY2ggYmVzdCBleGVtcGxpZmllcyBhbGwge2xvIHJlbW5hfSwgd2hpbGUgdGhlIGFy Y2hldHlwZSB7bGXigJllIHJlbW5hfSBiZXN0IGV4ZW1wbGlmaWVzIGFsbCB7bGUgcmVtbmF9LgoK VGhlIGVsZXZlbiBnYWRyaSBjYW4gYmUgc2VlbiBpbiB0aGUgZGlhZ3JhbSBiZWxvdy4KCUdlbmVy aWMJTWFzc2VzCVNldHMJR2VuZXJhbGl6aW5nClZlcmRpY2FsCWxvCWxvaQlsb+KAmWkJbG/igJll CkRlc2NyaXB0aXZlCWxlCWxlaQlsZeKAmWkJbGXigJllCk5hbWUJbGEJbGFpCWxh4oCZaQlkb2Vz IG5vdCBleGlzdAoKTm90ZTogRWFybGllciwgdGhlcmUgd2FzIGEgd29yZCB7eG/igJllfSBmb3Ig dGhlIGdlbmVyaWMgZ2FkcmkuIEhvd2V2ZXIsIHRoZSBydWxlcyBhbmQgZGVmaW5pdGlvbnMgZm9y IGdhZHJpIHdlcmUgY2hhbmdlZCBpbiBsYXRlIDIwMDQsIGFuZCB0aGUgY3VycmVudCBzZXQgb2Yg cnVsZXMgbmlja2VkIOKAnHhvcmxv4oCdIGhhcyByZXBsYWNlZCB0aGUgb2xkIHdheS4gTm93LCB7 bG99IGlzIGdlbmVyaWMsIGFuZCB7eG/igJllfSBoYXMgbm90IHlldCBmb3VuZCBhbm90aGVyIGRl ZmluaXRpb24uCgoKISFMb2piYW4gTGVzc29ucyAtIExlc3NvbiBmaWZ0ZWVuICh0aGUgTG9qYmFu IHN1bXRpIDI6IEtPaEEzLCBLT2hBNSBhbmQgS09oQTYpClNlZSB3aGF0IGhhcHBlbnMgaWYgSSB0 cnkgdG8gdHJhbnNsYXRlIHRoZSBzZW50ZW5jZTog4oCcU3RlcmVvdHlwaWNhbCBwZW9wbGUgd2hv IGNhbiBzcGVhayBMb2piYW4gc3BlYWsgdG8gZWFjaCBvdGhlciBhYm91dCB0aGUgbGFuZ3VhZ2Vz IHRoZXkgY2FuIHNwZWFr4oCdOgp7YmFuZ3V9IOKAnHgxIGlzIGEgbGFuZ3VhZ2UgdXNlZCBieSB4 MiB0byBleHByZXNzIHgzIChhYnN0cmFjdGlvbinigJ0Ke2xl4oCZZSBwcmVudSBwb2kga2XigJlh IGtha25lIGxvIG51IHRhdmxhIGZvIGxhIC5sb2piYW4uIGN1IHRhdmxhIGxl4oCZZSBwcmVudSBw b2kga2XigJlhIGtha25lIGxvIG51IHRhdmxhIGZvIGxhIC5sb2piYW4uIGxvIGJhbmd1IHBvaSBs byBwcmVudSBwb2kga2XigJlhIHRhdmxhIGZvIGxhIC5sb2piYW4uIGN1IHNlIGJhbmd1IGtl4oCZ YX0KCldoYXQgd2Ugc2VlIGlzIHRoYXQgdGhlIExvamJhbiB2ZXJzaW9uIGlzIG11Y2ggbG9uZ2Vy IHRoYW4gdGhlIEVuZ2xpc2guIFRoaXMgaXMgcHJpbWFyaWx5IGJlY2F1c2UgdGhlIGZpcnN0LCBy aWRpY3Vsb3VzbHkgbG9uZywgc3VtdGkgaXMgYmVpbmcgcmVwZWF0ZWQgdHdvIG1vcmUgdGltZXMg aW4gdGhlIExvamJhbiB0ZXh0LCB3aGlsZSB0aGUgRW5nbGlzaCBjYW4gcmVmZXIgdG8gaXQgYnkg 4oCcZWFjaCBvdGhlcuKAnSBhbmQg4oCcdGhleeKAnSAtIG11Y2ggbW9yZSBlZmZpY2llbnRseS4g V291bGRu4oCZdCBpdCBiZSBjbGV2ZXIgaWYgTG9qYmFuIHNvbWVob3cgaGFkIG1lY2hhbmlzbXMg Zm9yIGRvaW5nIHRoZSBzYW1lPwoKSXQgdHVybnMgb3V0IGl0IGRvZXMsIHdoYXQgYSBzdXJwcmlz ZSEgTG9qYmFuIGhhcyBhIHJhbmdlIG9mIHdvcmRzIGNhbGxlZCB7c3Vta2HigJlpfSBtZWFuaW5n IOKAnHN1bXRpLXJlcHJlc2VudGF0aXZlc+KAnS4gSW4gRW5nbGlzaCwgd2UgcmVmZXIgdG8gdGhl bSBhcyBwcm8tc3VtdGksIGJlY2F1c2UgdGhleSBhcmUgZXNzZW50aWFsbHkgdGhlIHNhbWUgYXMg dGhlIEVuZ2xpc2ggcHJvbm91bnMsIGJ1dCB3aXRoIHN1bXRpIGluc3RlYWQgb2Ygbm91bnMuIElu IGZhY3QsIHlvdSBhbHJlYWR5IGtub3cge3RpfSwge2RvfSBhbmQge21pfSwgYnV0IHRoZXJlIGFy ZSBtYW55IG1vcmUsIHNvIGxldOKAmXMgZ2V0IGxlYXJuaW5nLiBGaXJzdCwgd2Ugd2FudCB0byBw dXQgaXQgaW50byBzeXN0ZW0uIFdlIGNhbiBiZWdpbiB3aXRoIHRoZSBvbmVzIG1vc3QgZmFtaWxp YXIgdG8gRW5nbGlzaCwgYW5kIHdoYXQgeW914oCZdmUgYWxyZWFkeSBsZWFybmVkOgoKe3RpfSAt IHN1bWth4oCZaTog4oCcaW1tZWRpYXRlIOKAmGl04oCZOiByZXByZXNlbnRzIGEgc3VtdGkgcGh5 c2ljYWxseSBuZWFyIHRoZSBzcGVha2Vy4oCdCnt0YX0gLSBzdW1rYeKAmWk6IOKAnG5lYXJieSDi gJhpdOKAmTogcmVwcmVzZW50cyBhIHN1bXRpIHNvbWUgcGh5c2ljYWwgZGlzdGFuY2UgZnJvbSB0 aGUgc3BlYWtlciBPUiBjbG9zZSB0byB0aGUgbGlzdGVuZXLigJ0Ke3R1fSAtIHN1bWth4oCZaTog 4oCcZGlzdGFudCDigJhpdOKAmTogcmVwcmVzZW50cyBhIHN1bXRpIHBoeXNpY2FsbHkgZmFyIGZy b20gdGhlIHNwZWFrZXIgYW5kIHRoZSBsaXN0ZW5lci7igJ0KCllvdSBjYW4gYWdhaW4gcmVjb2du aXplIHRoZSDigJxpLCBhLCB14oCdLXNlcXVlbmNlIHdoaWNoIHBvcHMgdXAgb3ZlciBhbmQgb3Zl ci4gU29tZSB0aGluZ3MgbWlnaHQgdGFrZSBzb21lIGNsZWFyaW5nIHVwLCB0aG91Z2guIEZpcnN0 bHksIHRoZXNlIHN1bXRpIGNhbiByZXByZXNlbnQgYW55dGhpbmcgd2hpY2ggY2FuIGJlIHNhaWQg dG8gb2NjdXB5IGEgcGh5c2ljYWwgc3BhY2UuIE9iamVjdHMsIGNlcnRhaW5seS4gSWRlYXMsIGNl cnRhaW5seSBub3QuIEV2ZW50cyBhcmUgYWNjZXB0ZWQsIGJ1dCBvbmx5IHRvIHRoZSBleHRlbnQg dGhleSBhcmUgcmVzdHJpY3RlZCB0byBhIHNwZWNpZmljIHBsYWNlIC0gdGhlIEphc21pbiBSZXZv bHV0aW9uIGNhbm5vdCBiZSBwb2ludGVkIGF0LCBidXQgc29tZSBiYXItZmlnaHQgb3IgYSBraXNz IG1pZ2h0LiBTZWNvbmRseSwgbm90ZSB0aGF0IHRoZSBkaXN0YW5jZSBpcyByZWxhdGl2ZSB0byBk aWZmZXJlbnQgdGhpbmdzIGZvciB0aGUgZGlmZmVyZW50IHdvcmRzOiB7dHV9IG9ubHkgYXBwbGll cyBpZiBpdOKAmXMgZGlzdGFudCBmcm9tIGJvdGggdGhlIHNwZWFrZXIgYW5kIHRoZSBsaXN0ZW5l ci4gSW4gY2FzZXMgd2hlcmUgdGhlIHNwZWFrZXIgYW5kIGxpc3RlbmVyIGlzIGZhciBhcGFydCBh bmQgdGhlIGxpc3RlbmVyIGNhbm5vdCBzZWUgdGhlIHNwZWFrZXIgdGFsa2luZywge3RhfSByZWZl cnMgdG8gc29tZXRoaW5nIGNsb3NlIHRvIHRoZSBsaXN0ZW5lci4gVGhpcmRseSwgaXTigJlzIGFs bCByZWxhdGl2ZSBhbmQgY29udGV4dCBkZXBlbmRlbnQuIFRoZXNlIHRocmVlIHdvcmRzIGFyZSBh bGwgcHJvYmxlbWF0aWMgaW4gd3JpdHRlbiB0ZXh0LCBmb3IgaW5zdGFuY2UsIGJlY2F1c2UgdGhl IHBvc2l0aW9uIG9mIHRoZSBzcGVha2VyIGFuZCBsaXN0ZW5lciBpcyB1bmtub3duIHRvIGVhY2gg b3RoZXIsIGFuZCBjaGFuZ2VzIGFzIHRpbWUgZ29lcyBieS4gRnVydGhlcm1vcmUsIHRoZSBhdXRo b3Igb2YgYSBib29rIGNhbm5vdCBwb2ludCB0byBhbiBvYmplY3QgYW5kIGV4cHJlc3MgdGhlIHBv aW50aW5nIGluIHRoZSBib29rLgoKVGhlbiB0aGVyZSBpcyBhIHNlcmllcyBjYWxsZWQgS09oQTMs IHRvIHdoaWNoIHttaX0gYW5kIHtkb30gKGFuZCBrbywgYnV0IEkgd29u4oCZdCB3cml0ZSB0aGF0 IGhlcmUpIGJlbG9uZ3M6CnttaX0gLSBzdW1rYeKAmWk6IFRoZSBzcGVha2VyKHMpLgp7bWnigJlv fSAtIHN1bWth4oCZaTogVGhlIG1hc3Mgb2YgdGhlIHNwZWFrZXIocykgYW5kIHRoZSBsaXN0ZW5l cihzKSAuCnttaeKAmWF9IC0gc3Vta2HigJlpOiBUaGUgbWFzcyBvZiB0aGUgc3BlYWtlcihzKSBh bmQgb3RoZXJzLgp7bWHigJlhfSAtIHN1bWth4oCZaTogVGhlIG1hc3Mgb2YgdGhlIHNwZWFrZXIo cyksIHRoZSBsaXN0ZW5lcihzKSBhbmQgb3RoZXJzLgp7ZG99IC0gc3Vta2HigJlpOiBUaGUgbGlz dGVuZXIocykuCntkb+KAmW99IC0gc3Vta2HigJlpOiBUaGUgbWFzcyBvZiB0aGUgbGlzdGVuZXIo cykgYW5kIG90aGVycy4KClRoZXNlIHNpeCBzdW1rYeKAmWkgYXJlIG1vcmUgZWFzaWx5IGdyYXNw ZWQgaW4gdGhlIGJlbG93IFZlbm4gZGlhZ3JhbToKCntpbWcgZmlsZUlkPSIzIiB0aHVtYj0ieSIg cmVsPSJib3hbZ10ifQpWZW5uIGRpYWdyYW0gb2YgS09oQTMuIHtsZSBkcmF0YX0gaXMgbm90IGEg S09oQTMsIGJ1dCBtZWFucyDigJx0aGUgb3RoZXIocynigJ0KCkl0IGlzIHBvc3NpYmxlIGZvciBz ZXZlcmFsIHBlb3BsZSB0byBiZSDigJx0aGUgc3BlYWtlcnPigJ0sIGlmIG9uZSBzdGF0ZW1lbnQg aXMgbWFkZSBvbiB0aGUgYmVoYWxmIG9mIGFsbCBvZiB0aGVtLiBUaGVyZWZvcmUsIHdoaWxlIOKA nHdl4oCdIGNhbiBiZSB0cmFuc2xhdGVkIGFzIGVpdGhlciB7bWl9LCB7bWnigJlvfSwge21p4oCZ YX0gb3Ige21h4oCZYX0sIHdoYXQgb25lIHF1aXRlIG9mdGVuIG1lYW5zIGlzIHJlYWxseSBqdXN0 IHttaX0uIEFsbCBvZiB0aGVzZSBzaXgsIGlmIHRoZXkgcmVmZXIgdG8gbW9yZSB0aGFuIG9uZSBp bmRpdmlkdWFsLCByZXByZXNlbnQgbWFzc2VzLiBXaXRoaW4gYnJpZGktbG9naWMsIHRoZSBicmlk aSB7bWkgZ2xla2l9IHNhaWQgYnkgc3BlYWtlciBBIGlzIGV4YWN0bHkgZXF1aXZhbGVudCB0byB7 ZG8gZ2xla2l9IHNhaWQgYnkgc3BlYWtlciBCIHRvIHNwZWFrZXIgQSwgYW5kIGFyZSBjb25zaWRl cmVkIHRoZSBzYW1lIGJyaWRpLiBXZSB3aWxsIGNvbWUgYmFjayB0byB0aGlzIGxhdGVyLCBpbiB0 aGUgYnJpa2HigJlpIChwcm8tYnJpZGkpIGxlc3Nvbi4KCkFsbCBvZiB0aGVzZSBzdW1rYeKAmWkg YXJlIHZlcnkgY29udGVudC1zcGVjaWZpYywgYW5kIGNhbiBub3QgYmUgdXNlZCwgZm9yIGluc3Rh bmNlLCB0byBoZWxwIHVzIHdpdGggdGhlIHNlbnRlbmNlIHdoaWNoIHRoaXMgbGVzc29uIGJlZ2Fu IHdpdGguIFRoZSBmb2xsb3dpbmcgc2VyaWVzIGNhbiBpbiBwcmluY2lwbGUgYmUgdXNlZCB0byBy ZWZlciB0byBhbnkgc3VtdGk6CnJpIC0gc3Vta2HigJlpOiDigJxMYXN0IHN1bXRpIG1lbnRpb25l ZOKAnQpyYSAtIHN1bWth4oCZaTog4oCcQSByZWNlbnQsIGJ1dCBub3QgdGhlIGxhc3Qgc3VtdGkg bWVudGlvbmVk4oCdCnJ1IC0gc3Vta2HigJlpOiDigJxBIHN1bXRpIG1lbnRpb25lZCBsb25nIGFn b+KAnQoKVGhlc2Ugc3VtdGkgd2lsbCByZWZlciB0byBhbnkgdGVybWluYXRlZCBzdW10aSBleGNl cHQgbW9zdCBvdGhlciBzdW1rYeKAmWkuIFRoZSByZWFzb24gdGhhdCBtb3N0IG90aGVyIHN1bWth 4oCZaSBjYW5ub3QgYmUgcmVmZXJyZWQgdG8gYnkgdGhlc2Ugc3VtdGksIGlzIHRoYXQgdGhleSBh cmUgc28gZWFzeSB0byBqdXN0IHJlcGVhdCBieSB0aGVtc2VsdmVzLiBUaGUgZXhjZXB0aW9uIHRv IHRoZSBydWxlIGFyZSB7dGl9LCB7dGF9IGFuZCB7dHV9LCBiZWNhdXNlIHlvdSBjb3VsZCBoYXZl IGNoYW5nZWQgd2hhdCB5b3UgcG9pbnQgYXQsIGFuZCB0aHVzIGNhbm5vdCBqdXN0IHJlcGVhdCB0 aGUgd29yZC4gVGhleSB3aWxsIG9ubHkgcmVmZXIgdG8gdGVybWluYXRlZCBzdW10aSwgYW5kIHRo dXMgY2Fubm90LCBmb3IgaW5zdGFuY2UsIGJlIHVzZWQgdG8gcmVmZXIgdG8gYW4gYWJzdHJhY3Rp b24gaWYgdGhlIHdvcmQgaW4gaXMgdGhhdCBhYnN0cmFjdGlvbjoge2xlIHBlbmRvIG5vaSBrZeKA mWEgcGVuZG8gbWkgY3UgZGppY2EgbG8gbnUgcmkgc2UgemRhbml9IC0gaGVyZSB7cml9IGNhbm5v dCByZWZlciB0byB0aGUgYWJzdHJhdGlvbiwgc2luY2UgaXQgaXMgbm90IHRlcm1pbmF0ZWQsIG5v ciB0byB7bWl9IG9yIHtrZeKAmWF9LCBzaW5jZSB0aGV5IGFyZSBzdW1rYeKAmWksIHNvIGl0IHJl ZmVycyB0byB7bGUgcGVuZG99Lgp7cmF9IGFuZCB7cnV9IGFyZSBjb250ZXh0LWRlcGVuZGVudCBp biB3aGF0IHRoZXkgcmVmZXIgdG8sIGJ1dCB0aGV5IGZvbGxvdyB0aGUgcnVsZXMgbWVudGlvbmVk IGFib3ZlLCBhbmQge3J1fSBhbHdheXMgcmVmZXIgdG8gYSBtb3JlIGRpc3RhbnQgc3VtdGkgdGhh biB7cmF9LCB3aGljaCBpcyBhbHdheXMgbW9yZSBkaXN0YW50IHRoYW4ge3JpfS4KCntyaX0gYW5k IGl04oCZcyBicm90aGVycyBhcmUgcHJldHR5IHdlbGwgc3VpdGVkIGZvciBkZWFsaW5nIHdpdGgg dGhlIG9yaWdpbmFsIHNlbnRlbmNlLiBUcnkgc2F5aW5nIGl0IHVzaW5nIHR3byBpbnN0YW5jZXMg b2Ygc3Vta2HigJlpIQoKQW5zd2VyOiB7bGXigJllIHByZW51IHBvaSBrZeKAmWEga2FrbmUgbG8g bnUgdGF2bGEgZm8gbGEgLmxvamJhbi4gY3UgdGF2bGEgcnUgbG8gYmFuZ3UgcG9pIHJ1IGN1IHNl IGJhbmd1IGtl4oCZYX0ge3JpfSBpcyBub3QgY29ycmVjdCwgYmVjYXVzZSBpdCByZWZlcnMgdG8g e2xhIC5sb2piYW4ufS4ge3JhfSwgY291bGQgYmUgdXNlZCwgYnV0IGNvdWxkIGJlIG1pc3Rha2Vu bHkgYmUgdGhvdWdodCB0byByZWZlciB0byB7bG8gbnUgdGF2bGEgZm8gbGEgLmxvamJhbi59LCBi dXQge3J1fSBpcyBhc3N1bWVkIHRvIHJlZmVyIHRvIHRoZSBtb3N0IGRpc3RhbnQgc3VtdGkgLSB0 aGUgbW9zdCBvdXRlciBvbmUuCgpMYXN0bHksIHRoZXJlIGEgc3VtdGNpdGEgd2hpY2ggcmVwcmVz ZW50IHV0dGVyYW5jZXM6IFNvIGNhbGxlZCB1dHRlcmFuY2UgdmFyaWFibGVzLiBUaGV5IG5lZWQg bm90IGJlIHJlc3RyaWN0ZWQgdG8gb25lIHNlbnRlbmNlIChqdWZyYSksIGJ1dCBjYW4gYmUgc2V2 ZXJhbCBzZW50ZW5jZXMsIGlmIHRoZSBjb250ZXh0IGFsbG93cyBpdDoKZGHigJl1IFV0dGVyYW5j ZSB2YXJpYWJsZTogUmVtb3RlIHBhc3Qgc2VudGVuY2UKZGXigJl1IFV0dGVyYW5jZSB2YXJpYWJs ZTogUmVjZW50IHNlbnRlbmNlCmRp4oCZdSBVdHRlcmFuY2UgdmFyaWFibGU6IFByZXZpb3VzIHNl bnRlbmNlCmRlaSBVdHRlcmFuY2UgdmFyaWFibGU6IFRoaXMgc2VudGVuY2UKZGnigJllIFV0dGVy YW5jZSB2YXJpYWJsZTogTmV4dCBzZW50ZW5jZQpkZeKAmWUgVXR0ZXJhbmNlIHZhcmlhYmxlOiBO ZWFyIGZ1dHVyZSBzZW50ZW5jZQpkYeKAmWUgVXR0ZXJhbmNlIHZhcmlhYmxlOiBSZW1vdGUgZnV0 dXJlIHNlbnRlbmNlCmRv4oCZaSBVdHRlcmFuY2UgdmFyaWFibGU6IEVsbGlwdGljYWwgdXR0ZXJh bmNlIHZhcmlhYmxlOiDigJxTb21lIHNlbnRlbmNl4oCdClRoZXNlIHJlcHJlc2VudHMgc2VudGVu Y2VzIGFzIHN1bXRpLCBhbmQgcmVmZXIgb25seSB0byB0aGUgc3Bva2VuIHdvcmRzIG9yIHRoZSBs ZXR0ZXJzLCBub3QgdG8gdGhlIG1lYW5pbmcgYmVoaW5kIHRoZW0uCgpUaGVyZSBhcmUgbW9yZSBM b2piYW4gc3Vta2HigJlpLCBidXQgZm9yIG5vdyB5b3UgcHJvYmFibHkgbmVlZCBhIGJyZWFrIGZy b20gdGhlbS4gVGhlIG5leHQgY2hhcHRlciB3aWxsIGJlIG9uIGRlcml2ZWQgc3VtdGksIHN1bXRp IG1hZGUgZnJvbSBvdGhlciBzdW10aS4KCgohIUxvamJhbiBMZXNzb25zIC0gTGVzc29uIHNpeHRl ZW4gKHRoZSBMb2piYW4gc3VtdGkgMzogZGVyaXZlZCBzdW10aSkKWW91IGNhbiBwcm9iYWJseSBz ZWUgdGhhdCB0aGUgc3VtdGkge2xlIGJhbmd1IHBvaSBtaSBzZSBiYW5ndSBrZeKAmWF9IGlzIGEg bGVzcyB0aGFuIGVsZWdhbnQgZXhwcmVzc2lvbiBmb3Ig4oCcbXkgbGFuZ3VhZ2XigJ0uIFRoaXMg aXMgYmVjYXVzZSBpdOKAmXMgcmVhbGx5IGEgd29yayBhcm91bmQuIEEgbGFuZ3VhZ2Ugd2hpY2gg SSBzcGVhayBjYW4gYmUgc2FpZCB0byBmaWxsIGludG8gdGhlIHgxIG9mIHRoZSBicmlkaSB7YmFu Z3UgbWl9LiBXZSBjYW7igJl0IGNvbnZlcnQgdGhhdCB0byBhIHN1bXRpIHVzaW5nIGEgZ2Fkcmk6 IHtsZSBiYW5ndSBba3VdIG1pfSBpcyB0d28gc3VtdGksIGJlY2F1c2Uge2Jhbmd1IG1pfSBpcyBh IGJyaWRpLCBub3QgYSBzZWxicmkuIE5laXRoZXIgY2FuIHdlIGNvbnZlcnQgaXQgdXNpbmcge2xl IHN14oCZdX0sIGJlY2F1c2UgdGhlIHN14oCZdSBnaXZlcyB0aGUgYnJpZGkgYSBuZXcgeDEsIHRo ZSBhYnN0cmFjdGlvbiwgYW5kIHRoZSB7bGV9IHRoZW4gZXh0cmFjdHMgdGhhdC4gVGhhdCBtYWtl cyBhbiBhYnN0cmFjdGlvbiBzdW10aSBtZWFuaW5nIHNvbWV0aGluZyBsaWtlIOKAnHRoYXQgc29t ZXRoaW5nIGlzIG15IGxhbmd1YWdl4oCdLgpFbnRlciB7YmV9LiB7YmV9IGlzIGEgd29yZCB3aGlj aCBiaW5kcyBjb25zdHJ1Y3RzIChzdW10aSwgc3VtdGNpdGEgYW5kIG90aGVycykgdG8gYSBzZWxi cmkuIFVzaW5nIGl0IGluIG9yZGluYXJ5IHNlbGJyaSBoYXMgbm8gZWZmZWN0OiBpbiB7bWkgbmVs Y2kgYmUgZG99LCB0aGUgYmUgZG9lcyBub3RoaW5nLiBIb3dldmVyLCB3aGVuIGEgc3VtdGkgaXMg Ym91bmQgdG8gYSBzZWxicmkgdGhpcyB3YXksIHlvdSBjYW4gdXNlIGEgZ2Fkcmkgb24gdGhlIHNl bGJyaSB3aXRob3V0IHRoZSBzdW10aSBzcGxpdHRpbmcgb2ZmOiB7bGUgYmFuZ3UgYmUgbWl9IGlz IGEgY29ycmVjdCBzb2x1dGlvbiB0byB0aGUgcHJvYmxlbSBhYm92ZS4gTGlrZXdpc2UsIHlvdSBj YW4gYXR0YWNoIGEgc3VtdGNpdGE6IHtsZSBudSBkYXJ4aSBrZWkgYmUgZ2F1IGRvfTog4oCcVGhl IGV2ZW50IG9mIGhpdHRpbmcsIHdoaWNoIGlzIGNhdXNlZCBieSB5b3XigJ0uIE5vdGUgdGhhdCB0 aGUgcHJlc2VuY2Ugb3IgYWJzZW5jZSBvZiBrZWkgbWFrZXMgaXQgcGFyc2UgZGlmZmVyZW50bHk6 IFdpdGggdGhlIHRlcm1pbmF0b3IgcHJlc2VudCwgYmUgYXR0YWNoZXMgdG8gbnUsIHdpdGhvdXQg dGhlIHRlcm1pbmF0b3IsIGl0IGF0dGFjaGVzIHRvIGRhcnhpLiBTbyBpdCBkZWNpZGVzIHdoYXQg aXMgYmVpbmcgZW1waGFzaXNlZDogSXMgdGhlIGhpdHRpbmcsIG9yIHRoZSBldmVudCBvZiBoaXR0 aW5nIGNhdXNlZCBieSB5b3U/IEx1Y2tpbHksIGluIHRoaXMgY2FzZSwgdGhhdOKAmXMganVzdCBh Ym91dCB0aGUgc2FtZSB0aGluZy4KCldoYXQgaWYgSSB3YW50IHRvIGF0dGFjaCBzZXZlcmFsIHN1 bXRpIHRvIGEgc2VsYnJpIGluc2lkZSBhIGdhZHJpPyDigJxUaGUgZ2l2ZXIgb2YgdGhlIGFwcGxl IHRvIHlvdeKAnSBpcyB7bGUgZHVuZGEgYmUgbG8gcGxpc2UgYmUgZG99LCByaWdodD8gTm9wZS4g VGhlIHNlY29uZCB7YmV9IGF0dGFjaGVzIHRvIHRoZSBhcHBsZSwgbWVhbmluZyB7bGUgcGxpc2Ug YmUgZG99IC0g4oCcVGhlIGFwcGxlIG9mIHRoZSBzdHJhaW4gb2YgeW914oCdLCB3aGljaCBtYWtl cyBzbyBzZW5zZS4gSW4gb3JkZXIgdG8gc3RyaW5nIHNldmVyYWwgc3VtdGkgdG8gYSBzZWxicmks IHRoZSBhbGwgdGhlIG9uZXMgZm9sbG93aW5nIHRoZSBmaXJzdCBtdXN0IGJlIGJvdW5kIHdpdGgg e2JlaX0uIFRoZSDigJxiaW5kaW5n4oCdIGNhbiBiZSB0ZXJtaW5hdGVkIHdpdGgge2Jl4oCZb30g LSBvbmUgaW5zdGFuY2Ugb2Yge2Jl4oCZb30gZm9yIGVhY2ggc2VsYnJpIHdoaWNoIGhhcyBzdW10 aSBib3VuZCBieSB7YmV9LgpUbyBsaXN0IHRoZW06CmJlIGJpbmRzIHN1bXRpIG9yIHN1bXRjaXRh IHRvIHNlbGJyaQpiZWkgYmluZHMgYSBzZWNvbmQsIHRoaXJkLCBmb3VydGggKGVjdCkgc3VtdGkg b3Igc3VtdGNpdGEgdG8gYSBzZWxicmkKYmXigJlvIGVuZHMgYmluZGluZyB0byBzZWxicmkKClRo ZXJlIGlzIGFsc28gd2F5cyB0byBsb29zZWx5IGFzc29jaWF0ZSBhIHN1bXRpIHdpdGggYW5vdGhl ci4ge3BlfSBhbmQge25lfSBmb3IgcmVzdHJpY3RpdmUgYW5kIG5vbi1yZXN0cmljdGl2ZSBhc3Nv Y2lhdGlvbi4gQWN0dWFsbHksIHtsZSBiYW5ndSBwZSBtaX0gaXMgYSBiZXR0ZXIgdHJhbnNsYXRp b24gb2Yg4oCcbXkgbGFuZ3VhZ2XigJ0sIHNpbmNlIHRoaXMgcGhyYXNlLCBsaWtlIHRoZSBFbmds aXNoLCBpcyB2YWd1ZSBhcyB0byBob3cgdGhlIHR3byBhcmUgYXNzb2NpYXRlZCB3aXRoIGVhY2gg b3RoZXIuCnBlIGFuZCBuZSBhcmUgdXNlZCBhcyBsb29zZSBhc3NvY2lhdGlvbiBvbmx5LCBsaWtl IHNheWluZyDigJxteSBjaGFpcuKAnSBhYm91dCBhIGNoYWlyIHdoaWNoIHlvdSBzaXQgb24uIEl0 4oCZcyBub3QgcmVhbGx5IHlvdXJzLCBidXQgaGFzIHNvbWV0aGluZyBkbyB0byB3aXRoIHlvdS4g QSBtb3JlIGludGltYXRlIGNvbm5lY3Rpb24gY2FuIGJlIGVzdGFibGlzaGVkIHdpdGggcG8sIHdo aWNoIG1ha2VzIHRoZSBhc3NvY2lhdGlvbiB1bmlxdWUgYW5kIGJpbmRpbmcgdG8gYSBwZXJzb24s IGFzIGluIOKAnG15IGNhcuKAnSBmb3IgYSBjYXIgdGhhdCB5b3UgYWN0dWFsbHkgb3duLgpBIHZl cnkgdXNlZnVsIGNvbnN0cnVjdCB0byBrbm93IGlzIHtHQURSSSBTVU1USSBTRUxCUkl9LiB0aGlz IGlzIGVxdWl2YWxlbnQgdG8ge0dBRFJJIFNFTEJSSSBwZSBTVU1USX0uIEZvciBpbnN0YW5jZSBs ZSBtaSBnZXJrdSBpcyBlcXVpdmFsZW50IHRvIGxlIGdlcmt1IHBlIG1pLiBPbmUgY291bGQgaGF2 ZSBkZXNjcmlwdGlvbiBzdW10aSBpbnNpZGUgZGVzY3JpcHRpb24gc3VtdGksIHNheWluZyBsZSBs ZSBzZSBjaW5qaWtjYSBiZSBtaSBrdSBnZXJrdSwgPSBsZSBnZXJrdSBwZSBsZSBzZSBjaW5qaWtj YSBiZSBtaSA94oCcdGhlIGRvZyBvZiB0aGUgbWFuIEnigJltIGZsaXJ0aW5nIHdpdGjigJ0sIGJ1 dCB0aGF04oCZcyBub3QgdmVyeSBlYXN5IHRvIHJlYWQgKG9yIHRvIHVuZGVyc3RhbmQgd2hlbiBz cG9rZW4pLCBhbmQgaXMgb2Z0ZW4gYmVpbmcgYXZvaWRlZC4KCk9uZSBuZWVkIGFsc28gdG8gbGVh cm4ge3R14oCZYX0sIHNpbmNlIGl0IHdpbGwgbWFrZSBhIGxvdCBvZiBzZW50ZW5jZXMgbXVjaCBl YXNpZXIuIEl0IHRha2VzIGEgc3VtdGkgYW5kIGNvbnZlcnRzIGl0IHRvIGFub3RoZXIgc3VtdGkg LSBhbiBlbGxpcHRpY2FsIGFic3RyYWN0aW9uIHdoaWNoIGhhcyBzb21ldGhpbmcgdG8gZG8gd2l0 aCB0aGUgZmlyc3Qgc3VtdGkuIEZvciBleGFtcGxlLCBJIGNvdWxkIHNheSB7bWkgZGppY2EgbG8g bnUgbWkgY2l0a2EgbG8gcGxpc2V9LCBvciBJIGNvdWxkIGxldCBpdCBiZSB1cCB0byBjb250ZXh0 IHdoYXQgYWJzdHJhY3Rpb24gYWJvdXQgdGhlIGFwcGxlIEkgZGVzaXJlIGFuZCBqdXN0IHNheSB7 bWkgZGppY2EgdHXigJlhIGxvIHBsaXNlfS4gT25lIGFsd2F5cyBoYXMgdG8gZ3Vlc3Mgd2hhdCBh YnN0cmFjdGlvbiB0aGUgc3BlYWtlciBtZWFucyBieSB7dHXigJlhIFNVTVRJfSwgc28gaXQgc2hv dWxkIG9ubHkgYmUgdXNlZCB3aGVuIGNvbnRleHQgbWFrZXMgaXQgZWFzeSB0byBndWVzcy4gQW5v dGhlciBleGFtcGxlOgp7Z2FzbnV9IOKAnHgxIGRvZXMvYnJpbmdzIGFib3V0IHgyICh2b2xpdGlv biBub3QgaW1wbGllZCnigJ0Ke3ph4oCZYSBkbyBnYXNudSB0deKAmWEgbG8gc2thbWl9IC0g4oCc SSBzZWUgdGhhdCB5b3UgbWFrZSB0aGUgY29tcHV0ZXIgZG8gc29tZXRoaW5n4oCdLiBPZmZpY2lh bGx5LCB7dHXigJlhIFNVTVRJfSBpcyBlcXVpdmFsZW50IHRvIHtsZSBzdeKAmXUgU1VNVEkgY2/i gJllfS4gVmFndWUsIGJ1dCB1c2VmdWwuIFRoZXJlIGFyZSBzaXR1YXRpb25zIHdoZXJlIHlvdSBj YW5ub3QgdXNlIHR14oCZYSwgZXZlbiB0aG91Z2ggaXQgd291bGQgc2VlbSBzdWl0YWJsZS4gVGhl c2Ugc2l0dWF0aW9ucyBhcmUgd2hlbiBJIGRvbuKAmXQgd2FudCB0aGUgcmVzdWx0aW5nIHN1bXRp IHRvIGJlIGFuIGFic3RyYWN0aW9uLCBidXQgYSBjb25jcmV0ZSBzdW10aS4gSW4gdGhpcyBjYXNl LCBvbmUgY2FuIHVzZSB6b+KAmWUgcGUuCgpGaW5hbGx5LCBpZiBvbmUgc3VtdGkgQSByZWZlcnMg dG8gYSBzdW10aSBCLCBmb3IgaW5zdGFuY2UgYmVjYXVzZSBzdW10aSBBIGlzIGEgdGl0bGUgb2Yg YSBib29rLCBvciBhIG5hbWUsIG9yIGEgc2VudGVuY2UgKHdoaWNoIGFsd2F5cyByZWZlciB0byBz b21ldGhpbmcpLCAobGHigJllIFNVTVRJIEEpIHJlZmVycyB0byBzdW10aSBCLiBGb3IgaW5zdGFu Y2UsIG1pIG5lbGNpIGxh4oCZZSBkaeKAmXUgZm9yIOKAnGkgbGlrZSB3aGF0IHlvdSBqdXN0IHNh aWTigJ0gb3IgbGHigJllIGxlIGNtYWx1IG5vbHRydSBmb3IgdGhlIGJvb2sg4oCcVGhlIExpdHRs ZSBQcmluY2XigJ0sIHNvbWUgbGl0dGxlIHByaW5jZSBoaW1zZWxmLiBUaGUgY21hdm8gbHXigJll IGRvZXMgdGhlIGV4YWN0IHJldmVyc2UgLSBsdeKAmWUgU1VNVEkgcmVmZXJzIHRvIGFuIG9iamVj dCB3aGljaCByZWZlcnMgdG8gdGhlIHN1bXRpLgpsYeKAmWUgLSDigJx0aGUgdGhpbmcgcmVmZXJy ZWQgdG8gYnnigJ0gLSBleHRyYWN0cyBhIHN1bXRpIEEgZnJvbSBhIHN1bXRpIEIgd2hpY2ggcmVm ZXJzIHRvIEEuCmx14oCZZSAtIOKAnHRoZSB0aGluZyByZWZlcnJpbmcgdG/igJ0gLSBleHRyYWN0 cyBhIHN1bXRpIEIgZnJvbSBhIHN1bXRpIEEsIHdoZW4gQiByZWZlcnMgdG8gQS4KCgohIUxvamJh biBMZXNzb25zIC0gTGVzc29uIHNldmVudGVlbiAoY3V0ZSBhc3NvcnRlZCB3b3JkcykKQW5kIHdp dGggdGhhdCwgdGhpcmQgY2hhcHRlciwgeW91IGtub3cgYSBsb3QgYWJvdXQgTG9qYmFuIHN1bXRp LiBBZnRlciBzdWNoIGEgbG9uZyB0aW1lIG9mIHJpZ29yb3VzIHN5c3RlbWF0aWMgbGVhcm5pbmcs IHdoYXQgY291bGQgYmUgbW9yZSBmaXR0aW5nIHRoYXQgdGhpcyBjaGFwdGVyIHdoZXJlIEkgc3Bl YWsgYWJvdXQgc29tZSB3b3JkcyB3aGljaCBJIGNvdWxkIG5vdCwgb3Igd2FudGVkIG5vdCB0byBm aXQgaW50byBhbnkgb3RoZXIgY2hhcHRlcnM/IFNvIGhlcmUgYXJlIGEgZmV3IHNtYWxsIGFuZCBy ZWFsbHkgdXNlZnVsIHdvcmRzOgoKVGhlIGZvbGxvd2luZyBmb3VyIGNtYXZvIGFyZSBhbGwgZWxs aXB0aWNhbCB3b3Jkcy4gWW91IHNob3VsZCBhbHJlYWR5IGJlIGZhbWlsaWFyIHdpdGggdGhlIGZp cnN0Lgp7em/igJllfSAtIGVsbGlwdGljYWwgc3VtdGkKe2Nv4oCZZX0gLSBlbGxpcHRpY2FsIHNl bGJyaQp7ZG/igJllfSAtIGVsbGlwdGljYWwgc3VtdGNpdGEKe2p14oCZYX0gLSBlbGxpcHRpY2Fs IGV2aWRlbnRpYWwKe2Rv4oCZaX0gLSBlbGxpcHRpY2FsIHV0dGVyYW5jZSB2YXJpYWJsZQp7Z2Xi gJllfSAtIGVsbGlwdGljYWwgYXR0aXR1ZGluYWwKCkFsbCBvZiB0aGVzZSBhY3QgZ3JhbW1hdGlj YWxseSBhcyBhIGNtYXZvIG9mIHRoZSBraW5kIHRoZXkgcmVwcmVzZW50LCBidXQgdGhleSBjb250 YWluIG5vIGluZm9ybWF0aW9uLCBhbmQgY2FuIGJlIHF1aXRlIGhhbmR5IHdoZW4geW914oCZcmUg bGF6eSBhbmQgZG9u4oCZdCBuZWVkIHRvIGJlIHNwZWNpZmljIGFueXdheS4gVGhlcmUgYXJlLCBo b3dldmVyLCBhIGZldyB0aGluZ3Mgd2hpY2ggbmVlZCB0byBiZSBjbGVhcmVkIHVwOgoKICAgIHt6 b+KAmWV9IGhhdmUgdG8gcmVmZXIgdG8gc29tZXRoaW5nIHdoaWNoIGlzIGNsYWltZWQgdG8gaGF2 ZSBhIHZhbHVlLiDigJx6ZXJvIGNhcnPigJ0gb3Ig4oCcbm90aGluZ+KAnSwgZm9yIGluc3RhbmNl LCBoYXMgbm8gdmFsdWUsIGFuZCB0aGVyZWZvcmUgY2Fubm90IGJlIHJlZmVycmVkIHRvIGJ5IHt6 b+KAmWV9LiBUaGlzIGlzIGJlY2F1c2UsIGlmIGl0IGNvdWxkIG1lYW4g4oCcbm90aGluZ+KAnSBi eSB6b+KAmWUsIHRoZW4gYW55IHNlbGJyaSBjb3VsZCBiZSBpZGVudGljYWwgdG8gaXRzIG5lZ2F0 aW9uLCBpZiBvbmUgb2YgdGhlIGVsaWRlZCBzdW10aSB3ZXJlIGZpbGxlZCB3aXRoIGEge3pv4oCZ ZX0gd2l0aCBubyB2YWx1ZS4KICAgIHtnZeKAmWV9IGRvZXMgbm90IG1lYW4gdGhhdCB5b3UgZmVl bCBubyBlbW90aW9uLCBqdXN0IHRoYXQgeW91IGZlZWwgbm90aGluZyBzcGVjaWFsIG9yIHdvcnRo IHRvIG1lbnRpb24gYXQgdGhlIG1vbWVudC4gSXTigJlzIHNpbWlsYXIgdG8g4oCcSeKAmW0gZmlu ZS7igJ0uIHtnZeKAmWUgcGVpfSBhc2sgYWJvdXQgYW4gZWxsaXB0aWNhbCBlbW90aW9uIGFuZCBp cyBhIGdvb2QgdHJhbnNsYXRpb24gZm9yOiDigJxIb3cgYXJlIHlvdSBmZWVsaW5nP+KAnS4KICAg IHtjb+KAmWV9IGlzIGhhbmR5IHdoZW4gbmVlZGluZyBhIHNlbGJyaSBpbiBhIGNvbnN0cnVjdCBm b3IgZ3JhbW1hdGljYWwgcmVhc29ucywgbGlrZSBpbiB0aGUgZGVmaW5pdGlvbiBvZiB7dHXigJlh fSBpbiB0aGUgcHJldmlvdXMgY2hhcHRlci4KICAgIHtqdeKAmWF9IGRvZXMgbm90IGNoYW5nZSB0 aGUgdHJ1dGggdmFsdWUgb3Igc3ViamVjdGl2ZSB1bmRlcnN0YW5kaW5nIG9mIHRoZSBicmlkaSBv ciBhbnl0aGluZyBsaWtlIHRoYXQuIEluIGZhY3QsIGl04oCZcyBtb3N0bHkgZG9lcyBub3RoaW5n LiBIb3dldmVyLCB7anXigJlhIHBlaX0sIOKAnFdoYXQgaXMgeW91ciBiYXNpcyBmb3Igc2F5aW5n IHRoYXQ/4oCdIGlzIGhhbmR5LgogICAge2Rv4oCZaX0gaXMgcmVhbGx5IHVzZWZ1bC4gQSBsb3Qg b2YgdGltZXMgd2hlbiB5b3UgcmVmZXIgdG8gdXR0ZXJhbmNlcyBvciBjb252ZXJzYXRpb25zIGJ5 IHdvcmRzIGxpa2Ug4oCcdGhpc+KAnSBvciDigJx0aGF04oCdLCB5b3Ugd2FudCB7ZG/igJlpfS4K ICAgIElmIHlvdSBmaWxsIGluIG1vcmUgc3VtdGkgdGhhbiBhIHNlbGJyaSBoYXMgcGxhY2VzIGZv ciwgdGhlIGxhc3Qgc3VtdGkgaGF2ZSBpbXBsaWVkIHtkb+KAmWV9IHN1bXRjaXRhIGluIGZyb250 IG9mIHRoZW0uCgoKCkZ1cnRoZXJtb3JlLCB0aGVyZSBpcyBhIHdvcmQsIHt6aeKAmW99LCB0aGF0 IHlvdSBjYW4gZmlsbCBhIHN1bXRpIHBsYWNlIHdpdGggdG8gZGVsZXRlIGl0IGZyb20gYW55IHNl bGJyaS4ge2xvIG1lbGJpIGJlIHpp4oCZb30sIGZvciBpbnN0YW5jZSwgaXMganVzdCDigJxTb21l dGhpbmcgYmVhdXRpZnVs4oCdLCBhbmQgZG9lcyBub3QgaW5jbHVkZSB0aGUgdXN1YWwgeDIgb2Yg bWVsYmksIHdoaWNoIGlzIHRoZSBvYnNlcnZlciB3aG8ganVkZ2VzIHNvbWV0aGluZyB0byBiZSBi ZWF1dGlmdWwuIFRodXMsIGl0IGNhbiBtZWFuIHNvbWV0aGluZyBsaWtlIOKAnE9iamVjdGl2ZWx5 IGJlYXV0aWZ1bC7igJ0gSXQgZG9lcyBub3Qgc3RhdGUgdGhhdCBub3RoaW5nIGZpbGxzIHRoZSBz dW10aSBwbGFjZSB3aGljaCBpcyBiZWluZyBkZWxldGVkLCBqdXN0IHRoYXQgdGhlIHN1bXRpIHBs YWNlIGlzIG5vdCBiZWluZyBjb25zaWRlcmVkIGluIHRoZSBzZWxicmkuIFVzaW5nIHt6aeKAmW99 IHdpdGggYSBzdW10Y2l0YSBnaXZlcyB3ZWlyZCByZXN1bHRzLiBGb3JtYWxseSwgdGhleSBzaG91 bGQgY2FuY2VsIGVhY2ggb3RoZXIgb3V0LiBQcmFjdGljYWxseSwgaXQgd291bGQgcHJvYmFibHkg YmUgdW5kZXJzdG9vZCBhcyBhbiBleHBsaWNpdCB3YXkgb2Ygc2F5aW5nIHRoYXQgdGhlIHN1bXRj aXRhIGRvZXMgbm90IGFwcGx5LCBhcyBpbjoge21pIGRhcnhpIGRvIG114oCZaSB6aeKAmW99IC0g 4oCcSSBoaXQgeW91LCB3aXRoIG9yIHdpdGhvdXQgbW90aXZhdGlvbi7igJ0KClRoZW4gdGhlcmUg aXMgdGhlIHdvcmQge2phaX0uIEl04oCZcyBvbmUgb2YgdGhvc2UgY29vbCwgc21hbGwgd29yZHMg d2hpY2ggYXJlIGhhcmQgdG8gZ3Jhc3AsIGJ1dCBlYXN5IHRvIHdvcmsgd2l0aCBvbmNlIHlvdSBr bm93IGl0LiBJdCBoYXMgdHdvIGRpc3RpbmN0LCBidXQgc2ltaWxhciBmdW5jdGlvbnMuIEJvdGgg aGF2ZSBzb21ldGhpbmcgdG8gZG8gd2l0aCBjb252ZXJ0aW5nIHRoZSBzZWxicmksIGxpa2Uge3Nl fSBkb2VzLgpUaGUgZmlyc3QgZ3JhbW1hdGljYWwgY29uc3RydWN0aW9uIGl0IGNhbiBtYWtlIGlz IHtqYWkgU1VNVENJVEEgU0VMQlJJfS4gSXQgY2hhbmdlcyB0aGUgc3VtdGkgcGxhY2VzIHN1Y2gg dGhhdCB0aGUgc3VtdGkgcGxhY2Ugb2YgdGhlIHN1bXRjaXRhIGJlY29tZXMgdGhlIHNlbGJyaeKA mXMgeDEsIGFuZCB0aGUgc2VsYnJp4oCZcyBvbGQgeDEgaXMgcmVtb3ZlZCwgYW5kIG9ubHkgYWNj ZXNzaWJsZSBieSB1c2luZyB7ZmFpfSwgd2hpY2ggd29ya3MgbGlrZSB7ZmF9LiBZb3UgY2FuIHNl ZSBpdCB3aXRoIHRoaXMgZXhhbXBsZToKe2dhdX0gLSBzdW10Y2l0YSAoZnJvbSBnYXNudSkg4oCc YnJpZGkgaGFzIGJlZW4gYnJvdWdodCBhYm91dCBieS93aXRoIGFjdGl2ZSBhZ2VudCBbc3VtdGld 4oCdCntkbyBqYWkgZ2F1IGp1bmRpIHRpIGZhaSBtaX0uIC0g4oCcWW91IGJyaW5nIGFib3V0IGF0 dGVudGlvbiB0byB0aGlzIGJ5IG1l4oCdLiBUaGUgbmV3IHNlbGJyaSwge2phaSBnYXUganVuZGl9 LCBoYXMgdGhlIHBsYWNlIHN0cnVjdHVyZSBvZiDigJx4MSBicmluZ3MgYWJvdXQgYXR0ZW50aW9u IHBhaWQgdG8geDLigJ0uIFRoZXNlIGFyZSB0aGVuIGZpbGxlZCBieSB7ZG99IGFuZCB7dGl9LiBU aGUge2ZhaX0gdGhlbiBtYXJrcyB0aGUgcGxhY2UgZm9yIHRoZSBvbGQgeDEsIHRoZSBvbmUgd2hv IHdhcyBwYXlpbmcgYXR0ZW50aW9uLCBhbmQgZmlsbCBpdCB3aXRoIHttaX0uIFRoaXMgY2FuIGJl IHZlcnkgY29udmVuaWVudCBhbmQgaGFzIHRvbnMgb2YgdXNlcy4gQSBnb29kIGV4YW1wbGUgaXMg ZGVzY3JpcHRpdmUtbGlrZSBzdW10aS4gT25lIGNhbiwgZm9yIGluc3RhbmNlLCByZWZlciB0byDi gJx0aGUgbWV0aG9kIG9mIHZvbGl0aW9uYWwgYWN0aW9u4oCdIGJ5IHtsbyBqYWkgdGHigJlpIHp1 a3RlfS4Ke3Rh4oCZaX06IHN1bXRjaXRhIChmcm9tIHRhZGppKSDigJxCcmlkaSBpcyBkb25lIHdp dGggdGhlIG1ldGhvZCBvZiBbc3VtdGld4oCdCkNhbiB5b3UgZGVkdWNlIHdoYXQgdGhlIG9yZGlu YXJ5IExvamJhbiBwaHJhc2Uge2RvIGphaSBnYXUgbW99IG1lYW5zPwoKQW5zd2VyOiDigJxXaGF0 IGFyZSB5b3UgZG9pbmc/4oCdCgpUaGUgb3RoZXIgZnVuY3Rpb24gb2Yge2phaX0gaXMgZWFzaWVy IHRvIGV4cGxhaW4uIEl0IHNpbXBseSBjb252ZXJ0cyB0aGUgc2VsYnJpIHN1Y2ggdGhhdCB0aGUg c3VtdGkgaW4gdGhlIHgxIGdldHMgYSB7dHXigJlhfSBpbiBmcm9udCBvZiBpdCAoa2/igJlhIGph aSBicm9kYSA9IHR14oCZYSBrb+KAmWEgYnJvZGEpLiBJbiBvdGhlciB3b3JkcywgaXQgY29udmVy dHMgdGhlIHNlbGJyaSBpbiBhIHdheSBzdWNoIHRoYXQgaXQgYnVpbGRzIGFuIGVsbGlwdGljYWwg YWJzdHJhY3Rpb24gZnJvbSB0aGUgc3VtdGkgaW4gdGhlIHgxLCBhbmQgdGhlbiBmaWxscyB4MSB3 aXRoIHRoZSBhYnN0cmFjdGlvbiBpbnN0ZWFkIG9mIHRoZSBhY3R1YWwgc3VtdGkuIEFnYWluLCB0 aGUgb3JpZ2luYWwgc3VtdGktcGxhY2UgaXMgYWNjZXNzaWJsZSBieSB7ZmFpfS4KQSB2ZXJ5IGFj dGl2ZSBMb2piYW4gSVJDLXVzZXIgb2Z0ZW4gc2F5cyB7bGUgZ2Vya3UgYmUgZG8gamFpIHNlIHN0 aWRpIG1pfSwgdG8gdXNlIGEgcmFuZG9tIGV4YW1wbGUgb2YgYSBzdW10aSBpbiB4MS4gV2hhdOKA mXMgaGUgc2F5Pwp7c3RpZGl9IHgxIGluc3BpcmVzL3N1Z2dlc3RzIHgyIGluL3RvIHgz4oCdCgpB bnN3ZXI6IOKAnEkgc3VnZ2VzdCAoc29tZXRoaW5nIGFib3V0KSB5b3VyIGRvZy7igJ0KClNvIGZh ciB5b3XigJl2ZSBsZWFybmVkIGhvdyB0byBjb252ZXJ0IGJyaWRpIHRvIHNlbGJyaSwgc2VsYnJp IHRvIHN1bXRpLCBhbmQgc2VsYnJpIGludG8gYnJpZGksIHNpbmNlIGFsbCBzZWxicmkgYnkgdGhl bXNlbHZlcyBhcmUgYWxzbyBicmlkaS4gWW91IG9ubHkgbmVlZCBvbmUgbGFzdCBmdW5jdGlvbjog Y29udmVydCBzdW10aSB0byBzZWxicmkuIFRoaXMgaXMgZG9uZSB3aXRoIHRoZSB3b3JkIHttZX0u IEl0IGFjY2VwdHMgYSBzdW10aSBhbmQgY29udmVydHMgaXQgaW50byBhIHNlbGJyaSB3aXRoIHRo ZSBwbGFjZSBzdHJ1Y3R1cmUg4oCceDEgaXMgc3BlY2lmaWMgdG8gU1VNVEkgaW4gcHJvcGVydHkg eDLigJ0uClRoZXJlIGFyZSBhbHNvIHdvcmRzIGZvciBjb252ZXJ0aW5nIHN1bXRpIHRvIGluZGl2 aWR1YWxzLCBtYXNzZXMgb3Igc2V0cyBpbiB0aGUgY2xhc3MgTEFoRSwgYnV0IHRoZXkgd29u4oCZ dCBiZSBjb3ZlcmVkLgoKV2hlbiBzY3Jld2luZyBhIHNlbnRlbmNlIHVwLCBrbm93aW5nIGhvdyB0 byBjb3JyZWN0IHlvdXJzZWxmIGlzIGEgZ29vZCBpZGVhLiBUaGVyZSBhcmUgdGhyZWUgd29yZHMg aW4gTG9qYmFuIHdoaWNoIHlvdSBjYW4gdXNlIHRvIGRlbGV0ZSB5b3VyIHByZXZpb3VzIHdvcmQo cykKc2kgLSBkZWxldGlvbjogRGVsZXRlcyBsYXN0IHdvcmQgb25seS4Kc2EgLSBkZWxldGlvbjog RGVsZXRlcyBiYWNrIHVudGlsIG5leHQgY21hdm8gc3Bva2VuLgpzdSAtIGRlbGV0aW9uOiBEZWxl dGVzIGVudGlyZSBkaXNjb3Vyc2UuClRoZSBmdW5jdGlvbiBvZiB0aGVzZSB3b3JkcyBhcmUgdmVy eSBvYnZpb3VzLiBUaGV5IGRlbGV0ZSB3b3JkcyBhcyBpZiB0aGV5IGhhdmUgbmV2ZXIgYmVlbiBz cG9rZW4uIFRoZXkgZG8gbm90IHdvcmsgaW5zaWRlIGNlcnRhaW4gcXVvdGVzIChhbGwgcXVvdGVz IGV4Y2VwdCBsdS4ubGnigJl1KSwgdGhvdWdoLCBhcyB0aGF0IHdvdWxkIGxlYXZlIGl0IGltcG9z c2libGUgdG8gcXVvdGUgdGhlc2Ugd29yZHMuIFNldmVyYWwgc2kgaW4gYSByb3cgZGVsZXRlcyBz ZXZlcmFsIHdvcmRzLgoKCiEhTG9qYmFuIExlc3NvbnMgLSBMZXNzb24gZWlnaHRlZW4gKHF1b3Rl cykKT25lIG9mIHRoZSBrZXkgZGVzaWduIGZlYXR1cmVzIG9mIExvamJhbiBpcyB0aGF0IGl04oCZ cyBzdXBwb3NlZCB0byBiZSBhdWRpby12aXN1YWwgaXNvbW9ycGhpYywgbWVhbmluZyB0aGF0IGV2 ZXJ5dGhpbmcgZXhwcmVzc2VkIGluIHRleHQgc2hvdWxkIGFsc28gYmUgZXhwcmVzc2VkIGluIHNw ZWVjaCBhbmQgdmljZSB2ZXJzYS4gVGhlcmVmb3JlLCB0aGVyZSBjYW5ub3QgYmUgYW55IHB1bmN0 dWF0aW9uIHdoaWNoIGlzIG5vdCBwcm9ub3VuY2VkLiBUaGlzIG1lYW5zIHRoYXQgTG9qYmFuIGhh cyBhIHdpZGUgcmFuZ2Ugb2Ygd29yZHMgdG8gcXVvdGUgb3RoZXIgd29yZHMuIEFsbCBMb2piYW4g cXVvdGVzIHRha2Ugc29tZSBpbnB1dCBvZiB0ZXh0IGFuZCBjb252ZXJ0cyBpdCB0byBhIHN1bXRp LiBMZXTigJlzIGJlZ2luIHdpdGggdGhlIG1vc3Qgc2ltcGxlOgoKbHUgUXVvdGUgd29yZDogQmVn aW4gcXVvdGUgb2YgZ3JhbW1hdGljYWwgTG9qYmFuIGNvbnRlbnQKbGnigJl1IFF1b3RlIHdvcmQ6 IEVuZCBxdW90ZSBvZiBncmFtbWF0aWNhbCBMb2piYW4gY29udGVudAoKVGhlIHRleHQgaW5zaWRl IHRoaXMgY29uc3RydWN0IG11c3QgYnkgaXRzZWxmIGJlIGdyYW1tYXRpY2FsLiBJdCBjYW4gcXVv dGUgYWxsIExvamJhbiB3b3JkcyB3aXRoIHNvbWUgZmV3IGV4Y2VwdGlvbnMsIG1vc3Qgbm90YWJs eSwgb2J2aW91c2x5LCBsaeKAmXUuCgpUcnkgdG8gdHJhbnNsYXRlIHRoZSBmb2xsb3dpbmcgc2Vu dGVuY2UuIFRha2UgeW91ciB0aW1lLgptaSBzdGlkaSBsbyBkcmF0YSBiZSB0deKAmWEgbHUga28g amFpIGdhdSBtbyBsaeKAmXUKZHJhdGEgeDEgaXMgZGlmZmVyZW50IGZyb20geDIgYnkgc3RhbmRh cmQKCkFuc3dlcjog4oCcSSBzdWdnZXN0IHNvbWV0aGluZyBkaWZmZXJlbnQgdGhhbiBzb21ldGhp bmcgYWJvdXQg4oCca28gamFpIGdhdSBtb+KAnS7igJ0KClRoZXNlIHF1b3RlIHdvcmRzIGNhbm5v dCBxdW90ZSB1bmdyYW1tYXRpY2FsIHRleHQuIFRoaXMgaXMgc29tZXRpbWVzIHVzZWZ1bCwgd2hl biB5b3Ugd2FudCB0byBvbmx5IHBpY2sgb3V0IHBhcnQgb2YgYSBzZW50ZW5jZSwgYXMgaW46IOKA nCBpcyDigJxnaeKAmWXigJ0gYSBMb2piYW4gc3VtdGNpdGE/4oCdCgpGb3IgdGhpcywgeW91IG5l ZWQgdGhlc2UgdHdvIGNtYXZvCmxv4oCZdSBRdW90ZSB3b3JkOiBCZWdpbiBxdW90ZSBvZiB1bmdy YW1tYXRpY2FsIGJ1dCBMb2piYW4gY29udGVudApsZeKAmXUgUXVvdGUgd29yZDogRW5kIHF1b3Rl IG9mIHVuZ3JhbW1hdGljYWwgYnV0IExvamJhbiBjb250ZW50CgpUaGUgdGV4dCBpbnNpZGUgbXVz dCBiZSBMb2piYW4gd29yZHMsIGJ1dCBuZWVkIG5vdCBiZSBncmFtbWF0aWNhbC4gVHJ5IHRvIHRy YW5zbGF0ZSB0aGUgYWJvdmUgZXhhbXBsZSBpbnRvIExvamJhbgoKQW5zd2VyOiB4dSBsb+KAmXUg Z2nigJllIGxl4oCZdSBsb2pibyBzdW10Y2l0YQoKVGhpcyBxdW90ZSBjYW4gYmUgdXNlZCB0byBx dW90ZSBhbGwgTG9qYmFuIHdvcmRzIGV4Y2VwdCBsZeKAmXUuIEhvd2V2ZXIsIHRoaXMgaXMgbm90 IGVub3VnaC4gSWYgd2Ugd2FudCB0byB0cmFuc2xhdGUg4oCc4oCdZG8gbW/igJ0gaXMgYSBjb3Jy ZWN0IHRyYW5zbGF0aW9uIG9mIOKAnFdoYXTigJlzIHVwP+KAneKAnSwgd2UgbWlnaHQgYmUgc2xp Z2h0bHkgd3JvbmcgYWJvdXQgd2hhdCB3ZSBoZXJlIHN0YXRlLCBzaW5jZSBkbyBtbyBhbHNvIGNh biBtZWFuIOKAnFdoYXQgYXJlIHlvdT/igJ0sIGJ1dCBsZXTigJlzIHJvbGwgd2l0aCBpdCBmb3Ig YSBzZWNvbmQuIFdoYXQgd2UgbmVlZCBoZXJlIGlzIHRoZSB3b3JkIHpvaS4KCnpvaSBOZXh0IGNt YXZvIGlzIGJlZ2luIGFsbC1wdXJwb3NlIHF1b3RlIGFuZCBjbG9zZSBhbGwtcHVycG9zZSBxdW90 ZS4KCldoZW4gdXNpbmcgem9pLCB5b3UgcGljayBhIGNtYXZvIGF0IHdpbGwsIHdoaWNoIHRoZW4g b3BlbnMgYSBxdW90ZS4gVG8gY2xvc2UgaXMsIHVzZSB0aGUgY21hdm8gYWdhaW4uIFRoaXMgd2F5 LCB5b3UgY2FuIHF1b3RlIGFueXRoaW5nIGV4Y2VwdCB0aGF0IGNtYXZvLCB3aGljaCBzaG91bGRu 4oCZdCBiZSBhIHByb2JsZW0gYmVjYXVzZSB5b3UgY2FuIHBpY2sgaXQgeW91cnNlbGYuIFVzdWFs bHksIHRoZSBjbWF2byBwaWNrZWQgaXMgZWl0aGVyIHpvaSBpdHNlbGYsIG9yIGEgbGV0dGVyIHdo aWNoIHN0YW5kcyBmb3IgdGhlIGxhbmd1YWdlIHdoaWNoIHRoZSBxdW90ZSBpcyB3cml0dGVuIGlu LiBFeGFtcGxlOiDigJxJIGxpa2VkIFRoZSBQaGFudG9tIG9mIHRoZSBPcGVyYeKAnSBpcyBtaSBw dSBuZWxjaSBsYeKAmWUgem9pIHpvaS4gVGhlIFBoYW50b20gb2YgdGhlIE9wZXJhIC56b2kgTm90 aWNlIHR3byB0aGluZ3M6IEZpcnN0bHksIEkgbmVlZCBhIGxh4oCZZSwgc2luY2UgSSBkaWRu4oCZ dCBsaWtlIHRoZSBxdW90ZSwgYnV0IHJhdGhlciB3aGF0IGl0IHJlZmVycmVkIHRvLiBTZWNvbmRs eSwgYmV0d2VlbiB0aGUgY2hvc2VuIGRlbGltaXRlciBjbWF2byBhbmQgdGhlIHF1b3RlLCB0aGVy ZSBhcmUgcGF1c2VzLCByZXByZXNlbnRlZCBieSBhIGZ1bGwgc3RvcC4gVGhpcyBpcyBuZWNlc3Nh cnkgdG8gY29ycmVjdGx5IGlkZW50aWZ5IHRoZSBkZWxpbWl0ZXIgY21hdm8uCgpUcnkgdG8gdHJh bnNsYXRlIHRoZSBhYm92ZSBzZW50ZW5jZSBjb25jZXJuaW5nIOKAnFdoYXTigJlzIHVwP+KAnQoK ZHJhbmkgeDEgaXMgY29ycmVjdC9wcm9wZXIgaW4gYXNwZWN0IHgyIGluIHNpdHVhdGlvbiB4MyBi eSBzdGFuZGFyZCB4NAoKQW5zd2VyOiBsdSBkbyBtbyBsaeKAmXUgZHJhbmkgeGUgZmFudmEgem9p IGd5LiBXaGF04oCZcyB1cD8gLmd5CgpDbG9zZWx5IGFuYWxvZ291c2x5LCB0aGVyZSBpcyBsYeKA mW8uIEl0IHdvcmtzIGV4YWN0bHkgbGlrZSB6b2ksIGJ1dCB0dXJucyB0aGUgcmVzdWx0aW5nIHF1 b3RlIGludG8gYSBuYW1lLiBJdCBpcyBuZWVkZWQgYmVjYXVzZSBub3JtYWxseSwgb25seSBzZWxi cmkgYW5kIGNtZXZsYSBjYW4gYmUgbmFtZXMsIG5vdCBxdW90ZXMuCmxh4oCZbyBOZXh0IGNtYXZv IGlzIGJlZ2luIGFsbC1wdXJwb3NlIHF1b3RlIGFuZCBjbG9zZSBhbGwtcHVycG9zZSBxdW90ZSDi gJMgdXNlIGFzIG5hbWUuCgpMYXN0IG9mIHRoZSBvZmZpY2lhbCBxdW90ZSB3b3JkcywgdGhlcmUg aXMgem8uIHpvIGFsd2F5cyBxdW90ZXMgdGhlIG5leHQgTG9qYmFuIHdvcmQsIG5vIG1hdHRlciB3 aGF0IGl0IGlzLiBJdOKAmXMgcHJldHR5IGhhbmR5Lgp6byBRdW90ZSBuZXh0IExvamJhbiB3b3Jk LCBubyBtYXR0ZXIgd2hhdC4KRXhhbXBsZTogem8gem8gem/igJlvIHBsaXhhdSDigJwg4oCcem/i gJ0gaXMgdXNlZnVsLCBoZWhl4oCdCnpv4oCZbyBhdHRpdHVkaW5hbDogZGlzY3Vyc2l2ZTogSHVt b3JvdXNseSwg4oCca2lkZGluZyB5b3XigJ0KcGxpeGF1IHgxIGlzIHVzZWZ1bCBmb3IgeDIgdG8g ZG8gcHVycG9zZSB4MwoKTG9qYmFuIHVzZXJzIGhhdmUgZm91bmQgaXQgdXNlZnVsIHRvIHN1cHBs ZW1lbnQgd2l0aCBmb3VyIGFkZGl0aW9uYWwgcXVvdGUgd29yZHMuIFRoZXkgYXJlIGFsbCBleHBl cmltZW50YWwsIGFuZCB0aGUgZm9ybWFsIGdyYW1tYXIgZG9lcyBub3Qgc3VwcG9ydCBpdC4gTm9u ZXRoZWxlc3MsIHRoZXkgYXJlIHVzZWQgb2Z0ZW4sIGFuZCBpdOKAmXMgZ29vZCB0byBiZSBhYmxl IHRvIHJlY29nbml6ZSB0aGVtLiBUaGUgbW9zdCB1c2VkIGlzOgoKem/igJlvaSBRdW90ZSBuZXh0 IHdvcmQgb25seS4gTmV4dCB3b3JkIGlzIGlkZW50aWZpZWQgYnkgcGF1c2VzIGluIHNwZWVjaCBv ciB3aGl0ZXNwYWNlIGluIHdyaXRpbmc6CgpFeGFtcGxlOiByaSBwdSBjdXNrdSB6b+KAmW9pIERv aCEgLnXigJlpIOKAnEhhIGhhLCBoZSBzYWlkIOKAnERvaCHigJ0g4oCcCi514oCZaTogYXR0aXR1 ZGluYWw6IHNpbXBsZSBwdXJlIGVtb3Rpb246IGFtdXNlbWVudCAtIHdlYXJpbmVzcwoKSXTigJlz IHZlcnkgZWFzeSB0byB1c2UuIEFnYWluLCBub3RlIHRoYXQgYWxsIGdyYW1tYXIgYm90cyB3aXRo IGNvbnNpZGVyIHRoZSBzZW50ZW5jZSBub3QgZ3JhbW1hdGljYWwsIGJlY2F1c2UgdGhlc2Ugd29y ZHMgZG8gbm90IGV4aXN0IGluIHRoZSBmb3JtYWwgZ3JhbW1hci4KCkFuYWxvZ291cyB0byB6b2kg YW5kIGxh4oCZbywgdGhlcmUgaXMgYWxzbyB0aGUgd29yZCBsYeKAmW9pLCB3aGljaCB3b3JrcyBq dXN0IGxpa2Ugem/igJlvaSwgYnV0IHRyZWF0cyB0aGUgcXVvdGUgYXMgYSBuYW1lOgpsYeKAmW9p IFF1b3RlIG5leHQgd29yZCBvbmx5LCB1c2UgYXMgbmFtZS4gTmV4dCB3b3JkIGlzIGlkZW50aWZp ZWQgYnkgcGF1c2VzIGluIHNwZWVjaCBvciB3aGl0ZXNwYWNlIGluIHdyaXRpbmc6CgpIb3cgd291 bGQgeW91IHNheTog4oCcTXkgRW5nbGlzaCBuYW1lIGlzIOKAnFNhZmnigJ3igJ0/CmdsaWNvIHgx IGlzIEVuZ2xpc2gvcGVydGFpbnMgdG8gRW5nbGlzaCBjdWx0dXJlIGluIGFzcGVjdCB4MgpjbWVu ZSB4MSBpcyB0aGUgbmFtZSBvZiB4MiBhcyB1c2VkIGJ5IHgzCgpBbnN3ZXI6IG1pIGdsaWNvIHNl IGNtZW5lIGxh4oCZb2kgU2FmaSBOb3RpY2UgdGhlIG5lY2Vzc2FyeSBzZS4gV2UgZG9u4oCZdCB3 aGF0IHRvIHNheSB0aGF0IHdl4oCZcmUgYSBuYW1lIQoKVGhpcmRseSwgcmHigJlvaSBxdW90ZXMg dGhlIG5leHQgcmFmc2kuIFNpbmNlIHJhZnNpIGFyZSBub3Qgd29yZHMsIHRoZXkgd291bGQgdXN1 YWxseSBoYXZlIHRvIGJlIHF1b3RlZCBieSB6b2kuIEZ1cnRoZXJtb3JlLCBzZXZlcmFsIHJhZnNp IGFyZSBhbHNvIGNtYXZvLiBUbyBhdm9pZCBjb25mdXNpb24gb2Ygd2hpY2ggaXMgbWVhbnQsIHJh 4oCZb2kgYWx3YXlzIHJlZmVyIHRvIGEgcmFmc2ksIGFuZCBpcyB3cm9uZyBpbiBmcm9udCBvZiBh bnkgdGV4dCBzdHJpbmcgd2hpY2ggYXJlIG5vdCByYWZzaS4KCldoYXQgZG9lcyByYeKAmW9pIHp1 4oCZZSByYWZzaSB6byB6dWt0ZSAuaWt14oCZaSB6b+KAmW9pIHp14oCZZSBzdW10Y2l0YSBtZWFu PwprdeKAmWkgYXR0aXR1ZGluYWw6IGRpc2N1cnNpdmU6IEhvd2V2ZXIgLyB0aG91Z2ggKGNvbnRy YXN0cyB0byBzb21ldGhpbmcgcHJldmlvdXNseSBzYWlkKQpyYWZzaSB4MSBhbiBhZmZpeCBmb3Ig d29yZC9jb25jZXB0IHgyIHdpdGggcHJvcGVydGllcy9vZiBmb3JtIHgzIGluIGxhbmd1YWdlIHg0 CgpBbnN3ZXI6IOKAnFRoZSByYWZzaSDigJx6deKAmWXigJ0gaXMgYSByYWZzaSBmb3Ig4oCcenVr dGXigJ0uIEJ1dCDigJx6deKAmWXigJ0gaXMgYSBzdW10Y2l0YeKAnQoKQW5kIGZpbmFsbHkgdGhl IHVzZWZ1bCB3b3JkIG1h4oCZb2kuIG1h4oCZb2kgcXVvdGVzIGFueSBjbWF2bywgYnV0IHRyZWF0 cyB0aGUgcXVvdGUgYXMgYSBuYW1lIGZvciB0aGUgd29yZCBjbGFzcyAoc2VsbWHigJlvKSB0byB3 aGljaCB0aGF0IHdvcmQgYmVsb25ncy4gU28sIGZvciBpbnN0YW5jZSwgYmHigJlvIGJlbG9uZ3Mg dG8gdGhlIHdvcmRjbGFzcyBjYWxsZWQgWkFoTywgc28gbWHigJlvaSBiYeKAmW8gaXMgdW5vZmZp Y2lhbCBMb2piYW4gZm9yIOKAnFphaE/igJ0KClRyeSBpdCBvdXQuIFNheSB0aGF0IHB1IGFuZCBi YSBhcmUgaW4gdGhlIHNhbWUgc2VsbWHigJlvIQpjbWF2byB4MSBpcyBhIGdyYW1tYXRpY2FsIHdv cmQgb2YgY2xhc3MgeDIgaW4gbGFuZ3VhZ2UgeDMKCihPbmUgcG9zc2libGUpIEFuc3dlcjogem8g cHUgY21hdm8gbWHigJlvaSBiYQoKISFMb2piYW4gTGVzc29ucyAtIExlc3NvbiBuaW5ldGVlbiAo bnVtYmVycyBhbmQgcXVhbnRpZmllcnMpCmEgZnJhY3Rpb24gb2YgbG9pIGlzIG9mIGFsbCBzZWxi cmkKCgohIUxvamJhbiBMZXNzb25zIC0gTGVzc29uIHR3ZW50eSAoYm8sIGtlLCBjbyBhbmQgbW9y ZSBjdXRlbmVzcykKU2F5IHlvdeKAmXJlIGFuIGltcG9ydGFudCBBbWVyaWNhbiBidXllciBvZiBj b21wdXRlcnMuIEhvdyBkbyB5b3UgZXhwcmVzcyB0aGlzPyBGb3IgY29uc3RydWN0cyBsaWtlIHRo ZXNlLCB0YW5ydSBhcmUgaWRlYWw6IG1pIHZham5pIG1lcmtvIHNrYW1pIHRlIHZlY251LiBObyB3 YWl0LCB0aGF04oCZcyBub3QgcmlnaHQuIFRhbnJ1IGFyZSBncm91cGVkIGZyb20gbGVmdCB0byBy aWdodCwgc28gdGhpcyB0YW5ydSBpcyB1bmRlcnN0b29kOiAoKHZham5pIG1lcmtvKSBza2FtaSkg dGUgdmVjbnUsIGEgYnV5ZXIgb2YgY29tcHV0ZXJzIGZvciBpbXBvcnRhbnQgQW1lcmljYW5zLiBZ b3UgY2Fu4oCZdCBjaGFuZ2UgdGhlIG9yZGVyIG9mIHRoZSBzZWxicmkgdG8gZ2V0IGEgdXNlZnVs IHRhbnJ1LiBOZWl0aGVyIGNhbiB0aGlzIGJlIHNvbHZlZCB3aXRoIGxvZ2ljYWwgY29ubmVjdGl2 ZXMsIHdoaWNoIHlvdSB3aWxsIGZpcnN0IGxlYXJuIGFib3V0IGxhdGVyIGFueXdheS4gVGhlIG9u bHkgd2F5IHRvIG1ha2UgYSBmaXR0aW5nIHRhbnJ1IGlzIHRvIGZvcmNlIHRoZSBzZWxicmkgdG8g Z3JvdXAgZGlmZmVyZW50bHkuCgpUbyBiaW5kIHR3byBzZWxicmkgY2xvc2UgdG9nZXRoZXIgaW4g YSB0YW5ydSwgdGhlIHdvcmQgYm8gY2FuIGJlIHBsYWNlZCBiZXR3ZWVuIHRoZW06IG1pIHZham5p IGJvIG1lcmtvIHNrYW1pIGJvIHRlIHZlY251IGlzIHJlYWQgbWkgKHZham5pIGJvIG1lcmtvKSAo c2thbWkgYm8gdGUgdmVjbnUpLCB3aGljaCBpcyB1c2VmdWwgaW4gdGhpcyBjb250ZXh0LiBJZiBi byBpcyBwbGFjZWQgYmV0d2VlbiBzZXZlcmFsIHNlbGJyaSBpbiBhIHJvdywgdGhleSBhcmUgZ3Jv dXBlZCBmcm9tIHJpZ2h0IHRvIGxlZnQgaW5zdGVhZCBvZiB0aGUgdXN1YWwgbGVmdCB0byByaWdo dDogbWkgdmFqbmkgbWVya28gYm8gc2thbWkgYm8gdGUgdmVjbnUgaXMgcmVhZCB2YWpuaSAobWVy a28gYm8gKHNrYW1pIGJvIHRlIHZlY251KSkgYW4g4oCcaW1wb3J0YW50IChBbWVyaWNhbiBjb21w dXRlci1idXllcinigJ0sIHdoaWNoIGlzIGV2ZW4gbW9yZSBhcHByb3ByaWF0ZSBpbiB0aGUgc2l0 dWF0aW9uLgpibyBCaW5kcyB0d28gc2VsYnJpIHRvZ2V0aGVyIHN0cm9uZ2x5LgoKSG93IHdvdWxk IHlvdSBzYXkg4oCcVGhhdOKAmXMgYSB0YXN0eSB5ZWxsb3cgYXBwbGXigJ0/Cmt1a3RlIHgxIGlz IHRhc3R5IGZvciB4MgoKQW5zd2VyOiB0aSBrdWt0ZSBwZWx4dSBibyBwbGlzZQoKV2hhdCBhYm91 dCDigJ1UaGF04oCZcyBhIGJpZywgdGFzdHkgeWVsbG93IGFwcGxl4oCdCgpBbnN3ZXI6IHRpIGJh cmRhIGt1a3RlIGJvIHBlbHh1IGJvIHBsaXNlCgpBbm90aGVyIGFwcHJvYWNoIHRvIHRoaXMgaXMg dG8gdXNlIHRoZSB3b3JkcyBrZeKApmtl4oCZZS4gVGhlc2UgY2FuIGJlIGNvbnNpZGVyZWQgYXMg ZXF1aXZhbGVudCB0byB0aGUgcGFyZW50aGVzaXNlcyB1c2VkIGluIHRoZSBwYXJhZ3JhcGggYWJv dmUuIGtlIGJlZ2lucyBzdHJvbmcgc2VsYnJpIGdyb3VwaW5nLCBrZeKAmWUgZW5kcyBpdC4Ka2Ug 4oCTIGJlZ2luIHN0cm9uZyBzZWxicmkgZ3JvdXBpbmcuCmtl4oCZZSDigJMgZW5kIHN0cm9uZyBz ZWxicmkgZ3JvdXBpbmcuClRoZSBzdHJlbmd0aCBvZiB0aGUgYmluZGluZyBpcyB0aGUgc2FtZSBh cyB0aGF0IG9mIGJvLiBUaGVyZWZvcmUsIG1pIHZham5pIG1lcmtvIGJvIHNrYW1pIGJvIHRlIHZl Y251IGNhbiBiZSB3cml0dGVuIG1pIHZham5pIGtlIG1lcmtvIGtlIHNrYW1pIHRlIHZlY251IFtr ZeKAmWVdIFtrZeKAmWVdLgpIb3cgY291bGQgeW91IHNheSDigJxJ4oCZbSBhIEdlcm1hbiBzZWxs ZXIgb2YgeWVsbG93IGhvbWVzP+KAnQoKQW5zd2VyOiBtaSBkb3RjbyBrZSBwZWx4dSB6ZGFuaSB2 ZWNudQoKV2hpbGUgd2XigJlyZSBhdCBtZXNzaW5nIHdpdGggdGhlIG9yZGluYXJ5IHRhbnJ1IHN0 cnVjdHVyZSwgdGhlcmUgaXMgYW5vdGhlciB3b3JkIHdvcnRoIHBheWluZyBhdHRlbnRpb24gdG8u IElmIEkgd2FudCB0byBzYXkgdGhhdCBJ4oCZbSBhIHByb2Zlc3Npb25hbCB0cmFuc2xhdG9yLCBJ IGNvdWxkIHNheSBtaSBmYW52YSBzZSBqaWJyaS4KamlicmkgeDEgaXMgYSBqb2Igb2YgeDIgdW5k ZXIgYWdyZWVtZW50IHgzCmRvY2JhdSB4MSBpcyBHZXJtYW4gdXNlZCBieSB4MiB0byBzYXkgeDMK SWYgSSB3YW50ZWQgdG8gc2F5IHRoYXQgSeKAmW0gYSBwcm9mZXNzaW9uYWwgdHJhbnNsYXRlciBm cm9tIEVuZ2xpc2ggdG8gR2VybWFuLCBJ4oCZZCBoYXZlIHRvIG1lc3MgYXJvdW5kIHdpdGggYmUg YW5kIGJlaTogbWkgZmFudmEgYmUgbGUgZG9jYmF1IGJlaSBsZSBnbGliYXUgYmXigJlvIHNlIGpp YnJpLCBhbmQgdGhlIGZhY3QgdGhhdCBpdCB3YXMgYSB0YW5ydSBjb3VsZCBxdWlja2x5IGJlIGxv c3QgaW4gc3BlZWNoIGR1ZSB0byB0aGUgY29tcGxpY2F0ZWQgc3RydWN0dXJlIG9mIHRoZSBzZW50 ZW5jZS4gSGVyZSwgd2UgY2FuIHVzZSB0aGUgd29yZCBjby4gaXQgaW52ZXJ0cyB0aGUgdGFucnUs IG1ha2luZyB0aGUgcmlnaHRtb3N0IHNlbGJyaSBtb2RpZnkgdGhlIGxlZnRtb3N0IGluc3RlYWQg b2YgdGhlIG90aGVyIHdheSBhcm91bmQ6Cm1pIHNlIGppYnJpIGNvIGZhbnZhIGxlIGRvY2JhdSBs ZSBnbGliYXUgaXMgdGhlIHNhbWUgYnJpZGkgYXMgdGhlIHByZXZpb3VzIExvamJhbiBvbmUsIGJ1 dCBtdWNoIG1vcmUgZWFzeSB0byB1bmRlcnN0YW5kLiBOb3RpY2UgdGhhdCBhbnkgc3VtdGkgYmVm b3JlIHRoZSB0YW5ydSBmaWxscyBzZSBqaWJyaSwgd2hpbGUgYW55IGZvbGxvd2luZyBpdCBvbmx5 IGZpbGxzIHRoZSBtb2RpZnlpbmcgc2VsYnJpOiBmYW52YS4KY28gSW52ZXJ0IHRhbnJ1LiBBbnkg cHJldmlvdXMgc3VtdGkgZmlsbCB0aGUgbW9kaWZpZWQsIGFueSBmb2xsb3dpbmcgZmlsbCB0aGUg bW9kaWZpZXIuCgpUaGUgc3RyZW5ndGggYnkgd2hpY2ggdHdvIHNlbGJyaSBhcmUgYm91bmQgdG9n ZXRoZXIgd2l0aCBjbyBpcyB0aGUgd2Vha2VzdCBvZiB0aGVtIGFsbCDigJMgZXZlbiB3ZWFrZXIg dGhhbiBub3JtYWwgdGFucnUgZ3JvdXBpbmcgd2l0aG91dCBhbnkgZ3JvdXBpbmcgd29yZHMuIFRo aXMgbWFrZXMgc3VyZSB0aGF0LCBpbiBhIGNvLWNvbnN0cnVjdCwgdGhlIGxlZnRtb3N0IHNlbGJy aSBpcyBhbHdheXMgdGhlIHNlbGJyaSBiZWluZyBtb2RpZmllZCwgYW5kIHRoZSByaWdodG1vc3Qg YWx3YXlzIG1vZGlmaWVzLCBldmVuIGlmIGFueSBvZiB0aG9zZSBwYXJ0cyBhcmUgdGFucnUuIFRo aXMgbWFrZXMgYSBjby1jb25zdHJ1Y3QgZWFzeSB0byBwYXJzZToKdGkgcGVseHUgcGxpc2UgY28g a3VrdGUgaXMgcmVhZCB0aSAocGVseHUgcGxpc2UpIGNvIGt1a3RlLCB3aGljaCBpcyB0aGUgc2Ft ZSBhcyB0aSBrdWt0ZSBwZWx4dSBibyBwbGlzZS4gVGhpcyBhbHNvIG1lYW5zIHRoYXQgYSBrZeKA pmtl4oCZZSBjYW5ub3QgZW5jb21wYXNzIGEgY28uCgpIb3cgY2FuIHlvdSBleHByZXNzIOKAnUkg YW0gYW4gaW1wb3J0YW50IEFtZXJpY2FuIGJ1eWVyIG9mIGNvbXB1dGVyc+KAnSB1c2luZyBhIGNv PwoKQW5zd2VyOiBtaSBza2FtaSB0ZSB2ZWNudSBjbyB2YWpuaSBtZXJrbwoKSWYgaXTigJlzIG9m IGFueSB1c2UsIHRoaXMgaXMgdGhlIGxpc3Qgb2YgZGlmZmVyZW50IGtpbmQgb2Ygc2VsYnJpIGdy b3VwZXJzIHJhbmtlZCBieSBzdHJlbmd0aDoKCjEuICAgIGJvIGFuZCBrZS4ua2XigJllCgoyLiAg ICBsb2dpY2FsIGNvbm5lY3RpdmVzIChleHBsYWluZWQgaW4gY2hhcHRlciB0d2VudHktZm91cikK CjMuICAgIG5vIGdyb3VwaW5nIHdvcmRzCgo0LiAgY28KClRoZSByZXN0IG9mIHRoaXMgY2hhcHRl ciB3aWxsIG5vdCBiZSBvbiBzZWxicmkgZ3JvdXBpbmcsIGJ1dCBtdWNoIGxpa2UgY2hhcHRlciBz ZXZlbnRlZW4gbWVudGlvbiBhc3NvcnRlZCB3b3Jkcywgd2hpY2ggY2FuIGJlIG9mIHVzZS4KCmJv IGhhcyBhbm90aGVyIHVzZSwgd2hpY2ggc2VlbXMgc2VwYXJhdGUgZnJvbSBzZWxicmkgZ3JvdXBp bmc6IEl0IGNhbiBhbHNvIGJpbmQgYSBzdW10Y2l0YSB0byBhbiBlbnRpcmUgYnJpZGksIHNvIHRo YXQgdGhlIGNvbnRlbnQgb2YgdGhlIHN1bXRjaXRhIGlzIG5vdCBhIHN1bXRpLCBidXQgdGhlIGZv bGxvd2luZyBicmlkaS4gVGhpcyBpcyBiZXN0IGV4cGxhaW5lZCB3aXRoIGFuIGV4YW1wbGUuCnhl Ym5pIHgxIGhhdGVzIHgyCm1pIGRhcnhpIGRvIC5pIG114oCZaSBibyBtaSBkbyB4ZWJuaSDigJMg 4oCcSSBoaXQgeW91LCB3aXRoIG1vdGl2YXRpb24gdGhhdCBJIGhhdGUgeW91LuKAnSBIZXJlIHRo ZSBibyBiaW5kcyBtdeKAmWkgdG8gdGhlIGZvbGxvd2luZyBicmlkaS4KClRoZSB1bm9mZmljaWFs IHdvcmQgbWXigJlvaSBpcyBlcXVpdmFsZW50IHRvIG1lIGxh4oCZZSB6b+KAmW9pLCB3aGljaCBt ZWFucyB0aGF0IGl0IGNvbnZlcnRzIHRoZSBjb250ZW50IG9mIHRoZSBuZXh0IHdvcmQgaW50byBh IHNlbGJyaS4gSXQgaXMgdXNlZCB0byBpbnZlbnQgYnJpdmxhIG9uIHRoZSBmbHk6IG1pIGNhIHpn YW5hIGxhIG1l4oCZb2kgWC1maWxlcyBmb3Ig4oCcSSBub3cgd2F0Y2ggWC1maWxlc+KAnS4gTGlr ZSBhbGwgcXVvdGUgbmV4dCB3b3JkLWNtYXZvLCBpdCBpcyBub3Qgc3VwcG9ydGVkIGJ5IHRoZSBv ZmZpY2lhbCBncmFtbWFyLCBidXQgdG8gdGhlIGxhenkgTG9qYmFuaXN0LCBpdOKAmXMgaW52YWx1 YWJsZS4KClRoZSB3b3JkIGdpIGlzIHN0cmFnZSBraW5kIG9mIGJyaWRpIHNlcGFyYXRvciwgYW5h bG9nb3VzIHRvIC5pLCBidXQgdG8gbXkga25vd2xlZGdlLCBpdCBpcyB1c2VkIGluIG9ubHkgdHdv IGRpZmZlcmVudCBraW5kcyBvZiBjb25zdHJ1Y3RzOiBNb3N0IG9mdGVuIHdpdGggbG9naWNhbCBj b25uZWN0aXZlcywgZXhwbGFpbmVkIGluIGxlc3NvbiB0d2VudHktZm91ciwgYnV0IGFsc28gd2l0 aCBzdW10Y2l0YS4gV2l0aCBzdW10Y2l0YSBpdCBjcmVhdGVzIGEgdXNlZnVsLCBidXQgaGFyZGx5 IHNlZW4sIGNvbnN0cnVjdDoKe2114oCZaSBnaSBCUklESS0xIGdpIEJSSURJLTJ9LCB3aGljaCBp cyBlcXVpdmFsZW50IHRvIHtCUklESS0yIC5pIG114oCZaSBibyBCUklESSAxfS4gVGhlcmVmb3Jl LCB0aGUgZXhhbXBsZSBhYm92ZSwgd2hpY2ggZXhwbGFpbmVkIHdoeSBJIGhpdCB5b3UsIGNhbiBi ZSB3cml0dGVuIG114oCZaSBnaSBtaSB4ZWJuaSBkbyBnaSBtaSBkYXJ4aSBkbywgb3IgdG8gcHJl c2VydmUgdGhlIHNhbWUgb3JkZXIgYXMgdGhlIG9yaWdpbmFsIHNlbnRlbmNlLCB3ZSBjYW4gY29u dmVydCBtdeKAmWkgd2l0aCBzZTogc2UgbXXigJlpIGdpIG1pIGRhcnhpIGRvIGdpIG1pIHhlYm5p IGRvLgpJdCBpcyBpbiBleGFtcGxlcyBsaWtlIHRoaXMgdGhhdCBnaSByZWFsbHkgY2FuIHNob3cg aXRzIHZlcnNhdGlsaXR5LiBJdCBkb2VzIG5vdCBqdXN0IHNlcGFyYXRlIHR3byBicmlkaSBsaWtl IC5pIGRvZXMsIGJ1dCBjYW4gYWxzbyBzZXBhcmF0ZSB0d28gY29uc3RydWN0cyB3aXRoaW4gYSBi cmlkaSwgbWFraW5nIGFsbCBjb25zdHJ1Y3RzIG91dHNpZGUgdGhlIHNjb3BlIG9mIGdpIGFwcGx5 IHRvIGJvdGggYnJpZGksIGFzIHRoaXMgZXhhbXBsZSBkZW1vbnN0cmF0ZXM6CmNpbmJhIHgxIGtp c3NlcyB4MiBhdCBsb2N1cyB4MwoKbWkgZ2kgcHJhbWkgZG8gZ2kgY2luYmEgZG8gbGVhdmVzIG1p IG91dHNpZGUgdGhlIGNvbnN0cnVjdCwgbWFraW5nIGl0IGFwcGx5IHRvIGJvdGggYnJpZGkuIFRo aXMgY2FuIGFsc28gYmUgZG9uZSB3aXRoIGRvLCB3aGljaCBpcyBhbHNvIHByZXNlbnQgaW4gYnJv dGggYnJpZGk6IG1pIGdpIHByYW1pIGdpIGNpbmJhIHZhdSBkby4gTm90ZSB0aGF0IHZhdSBpcyBu ZWVkZWQgdG8gbWFrZSBkbyBhcHBlYXIgb3V0c2lkZSB0aGUgc2Vjb25kIGJyaWRpLgoKVGh1cywg d2UgY2FuIHdyaXRlIHRoZSBvcmlnaW5hbCBzZW50ZW5jZSBzaG9ydGVyOiBtaSBtdeKAmWkgZ2kg eGVibmkgZ2kgZGFyeGkgdmF1IGRvLCBvciwgdG8gb21pdCBldmVuIHRoZSB2YXUsIHdlIGNhbiB3 cml0ZSBpdCBldmVuIHNob3J0ZXIgYW5kIG1vcmUgZWxlZ2FudGx5OiBtaSBkbyBtdeKAmWkgZ2kg eGVibmkgZ2kgZGFyeGkKCgohIUxvamJhbiBMZXNzb25zIC0gTGVzc29uIHR3ZW50eS1vbmUgKENP SSkKSW4gdGhpcyBjaGFwdGVyLCB5b3Ugd2lsbCBmYW1pbGlhcml6ZSB5b3Vyc2VsZiB3aXRoIHZv Y2F0aXZlcywgb3IgbWHigJlvaSBjb2kuIFRoZXkgZ2V0IHRoZWlyIG93biBsZXNzb24sIG5vdCBi ZWNhdXNlIHVuZGVyc3RhbmRpbmcgdGhlc2UgcHJvdmlkZXMgYSBiYXNpcyBmb3IgdW5kZXJzdGFu ZGluZyBMb2piYW4gZ3JhbW1hciBpbiBnZW5lcmFsLCBvciBiZWNhdXNlIHRoZXkgYXJlIGhhcmQg dG8gdW5kZXJzdGFuZCwgYnV0IHJhdGhlciBiZWNhdXNlIHRoZXkgYXJlIHZlcnkgb2Z0ZW4gdXNl ZCBpbiBjYXN1YWwgc3BlZWNoLCBhbmQgdGhlcmUgYXJlIGEgbG90IG9mIHRoZW0uCkEgdm9jYXRp dmUgaXMgdXNlZCBwYXJ0bHkgdG8gZGVmaW5lIHdobyBkbyByZWZlcnMgdG8uIElmIHRoZSB2b2Nh dGl2ZSBpcyBmb2xsb3dlZCBieSBhIGNtZXZsYSwgdGhlIGNtZXZsYSBnZXRzIGFuIGltcGxpZWQg bGEgaW4gZnJvbnQgb2YgaXQuIElmIGEgc2VsYnJpIGZvbGxvd3MsIGEgbGUgaXMgdXNlZCBhcyBh IGdhZHJpIGluc3RlYWQuCkluIHRoZXNlIGV4YW1wbGVzLCBJIHdpbGwgdXNlIHRoZSB2b2NhdGl2 ZSBjb2ksIHdpdGggbWVhbnMg4oCcSGnigJ0gb3Ig4oCcSGVsbG/igJ0uCklmIGEgcGVyc29uIGlz IGNhbGxlZCBsYSArIFNFTEJSSSwgdXNpbmcgYSB2b2NhdGl2ZSB3aXRoIG9ubHkgdGhlIHNlbGJy aSB0byBhZGRyZXNzIHRoYXQgcGVyc29uIHdpbGwgbWVhbiB5b3UgcmVmZXIgdG8gaGVyIGFzIGFj dHVhbGx5IGJlaW5nIHRoZSB4MSBvZiB0aGF0IHNlbGJyaSwgd2hpY2ggaXMgb2Z0ZW4gd3Jvbmcu IElmLCBmb3IgaW5zdGFuY2UsIGEgcGVyc29uIGlzIGNhbGxlZCBsYSB0c2FuaSwg4oCcU2t54oCd LCBzYXlpbmcgY29pIHRzYW5pIHJlZmVycyB0byBoZXIgYXMgYSBsZSB0c2FuaSwgbWVhbmluZyDi gJxIaSwgeW91IHNreeKAnSwgd2hpbGUgY29pIGxhIHRzYW5pIGNvcnJlY3RseSByZWZlcnMgdG8g aGVyIGFzIHNvbWVvbmUgY2FsbGVkIFNreSwgbWVhbmluZyDigJxIaSBTa3nigJ0uIFRoaXMgaXMg YSBmcmVxdWVudCBtaXN0YWtlLCBlc3BlY2lhbGx5IGFtb25nIG5ldyBMb2piYW5pc3RzLgpBbGwg dm9jYXRpdmVzIGhhdmUgYSB0ZXJtaW5hdG9yIHdoaWNoIGlzIHNvbWV0aW1lcyByZXF1aXJlZC4g VGhpcyBpcyBkb+KAmXUuIEl04oCZcyBtb3N0bHkgdXNlZCBpZiBib3RoIHRoZSBmaXJzdCB3b3Jk IGFmdGVyIHRoZSB2b2NhdGl2ZSBwaHJhc2UgYW5kIHRoZSBsYXN0IHdvcmQgb2YgdGhlIHBocmFz ZSBpcyBhIHNlbGJyaSwgc28gdGhhdCBpdCBwcmV2ZW50cyBmb3JtaW5nIGEgdGFucnU6Cgpkb+KA mXUgRW5kIHZvY2F0aXZlIHBocmFzZS4gVXN1YWxseSBlbGlkYWJsZS4Ka2xha3UgeDEgY3JpZXMg eDIgKHRlYXJzKSBmb3IgcmVhc29uIHgzCmNvaSBsYSBnbGVraSBkb+KAmXUga2xha3UgZmkgbWEg 4oCdSGVsbG8gSGFwcHkuIFdoeSBjcnk/4oCdCgpUaGUgZ2VuZXJpYyB2b2NhdGl2ZSwgZG9pLCBk b2VzIG5vdGhpbmcgZXhjZXB0IGRlZmluaW5nIHdobyBkbyBpczoKZG9pIC5lcm5zdC4geHUgZG8g ZG90Y28gbWVya28g4oCcRXJuc3Q6IEFyZSB5b3UgYSBHZXJtYW4tQW1lcmljYW4/4oCdCgpBbGwg dGhlIG90aGVyIHZvY2F0aXZlcyBoYXZlIHNvbWUgY29udGVudCBiZXNpZGUgZGVmaW5pbmcgZG8u IGNvaSwgd2hpY2ggeW91IGtub3csIGFsc28gbWVhbnMg4oCcSGVsbG/igJ0sIGZvciBleGFtcGxl LiBNYW55IG9mIHRoZSB2b2NhdGl2ZXMgaGF2ZSB0d28gb3IgdGhyZWUgZGVmaW5pdGlvbnMgbGlr ZSB0aGUgYXR0aXR1ZGluYWxzLiBMaWtlIGF0dGl0dWRpbmFscywgdGhpcyBpcyBiZWNhdXNlIHRo ZXkgY2FuIGJlIG1vZGlmaWVkIHdpdGggY3XigJlpIGFuZCBuYWksIHRob3VnaCBvbmx5IG9uZSB2 b2NhdGl2ZSBoYXMgdGhlIGN14oCZaS1mb3JtIGRlZmluZWQuClNvbWUgaW1wb3J0YW50IHZvY2F0 aXZlcyBhcmUgbGlzdGVkIGluIHRoZSB0YWJsZSBiZWxvdy4gVGhlcmUgYXJlIG90aGVycywgYnV0 IHRob3NlIGFyZSBub3QgdXNlZCBtdWNoLgp2b2NhdGl2ZQlXaXRob3V0IHN1ZmZpeAktY3XigJlp CS1uYWkKY29pCUhlbGxvCS0JLQpjb+KAmW8JR29vZGJ5ZQktCS0KamXigJllCVVuZGVyc3Rvb2Qg LyBPSwktCU5vdCB1bmRlcnN0b29kCmZp4oCZaQlXZWxjb21lCS0JTm90IHdlbGNvbWUgaGVyZQpw ZeKAmXUJUGxlYXNlCS0JLQpraeKAmWUJVGhhbmtzCS0JRGlzYXBwcmVjaWF0aW9uCnJl4oCZaQlS ZWFkeSB0byByZWNpZXZlCS0JTm90IHJlYWR5Cmp14oCZaQlIZXkhCUF0IGVhc2UJSWdub3JlIG1l CnRh4oCZYQlJbnRlcnJ1cHRpb24JLQktCnZp4oCZbwlXaWxsIGRvCS0JV2lsbCBub3QgZG8Ka2Xi gJlvCVBsZWFzZSByZXBlYXQJLQlObyByZXBlYXQgbmVlZGVkCgoKV2hhdCB3b3VsZCBjb2kgY2/i gJlvIG1lYW4/CgpBbnN3ZXI6IOKAnEdyZWV0aW5ncyBpbiBwYXNzaW5n4oCdIG9yIOKAnEhlbGxv IGFuZCBHb29kYnll4oCdCgpqZeKAmWUgaXMgdXNlZCBhcyDigJxPS+KAnSwgYnV0IGFsc28gdGhl IGFwcHJvcHJpYXRlIHJlc3BvbnNlIHdoZW4gcmVjZWl2aW5nIHByYWlzZSBvciB0aGFua3MsIGFz IGl0IGluZGljYXRlcyB0aGF0IHRoZSBwcmFpc2Ugb3IgdGhhbmtzIHdhcyBzdWNjZXNzZnVsbHkg dW5kZXJzdG9vZC4KClRyYW5zbGF0ZSBraeKAmWUgc2lkanUgYmUgbWkgYmVpIGxvIHZham5pIC5p IGpl4oCZZSAuamVuaWZ5bi4Kc2lkanUgeDEgaGVscHMgeDIgZG8geDMKCkFuc3dlcjog4oCcVGhh bmtzLCB5b3UgaGVscGVyIG9mIG1lIHRvIGRvIHNvbWV0aGluZyBpbXBvcnRhbnQu4oCdIOKAnE5v IHByb2JsZW0sIEplbm5pZmVy4oCdCgpBbmQgZmnigJlpIHRlIHZlY251IC5pIHBl4oCZdSBrbyBj aXRrYQoKQW5zd2VyOiDigJ1XZWxjb21lLCBidXllci4gUGxlYXNlIGVhdCHigJ0KCnJl4oCZaSBp cyB1c2VkIHRvIHNpZ25hbCB0aGF0IHlvdSBhcmUgcmVhZHkgdG8gYmUgc3Bva2VuIHRvLiBJdCBj YW4gYmUgdXNlZCBhcyB0aGUgTG9qYmFuIGVxdWl2YWxlbnQgb2Yg4oCcV2hhdCBjYW4gSSBkbyBm b3IgeW91P+KAnSBvciBwZXJoYXBzIHJlcGxhY2Ug4oCcSGVsbG/igJ0sIHdoZW4gc3BlYWtpbmcg b24gYSBwaG9uZS4gcmXigJlpIG5haSBjYW4gbWVhbiDigJxBRkvigJ0gb3Ig4oCcQmUgdGhlcmUg aXMgYSBzZWNvbmQu4oCdCgpUcmFuc2xhdGU6IOKAnEhlbGxvLCB3aGF0IGNhbiBJIGRvIGZvciB5 b3UsIEludGVycHJldGVyL1RyYW5zbGF0ZXI/4oCdCgpBbnN3ZXI6IGNvaSByZeKAmWkgbGEgZmFu dmEKCnRh4oCZYSBpcyB1c2VkIHdoZW4gYXR0ZW1wdGluZyB0byBwb2xpdGVseSBpbnRlcnJ1cHQg c29tZW9uZSBlbHNlLiBXaGF0IHdvdWxkIGJlIGdvb2QgcmVzcG9uc2VzIHRvIHRoaXM/CgpUcmFu c2xhdGU6IHRh4oCZYSBybyBkbyBtaSBjb+KAmWEgY2xpdmEKY2xpdmEgeDEgbGVhdmVzIHgyIHZp YSByb3V0ZSB4MwoKQW5zd2VyOiDigJxFeGN1c2UgbWUgZm9yIGludGVycnVwdGluZywgZXZlcnlv bmUuIEkgYmVnaW4gdG8gbGVhdmUgbm934oCdIE5vdGljZSB0aGF0IG5vIHRlcm1pbmF0b3Igb3Ig LmkgaXMgbmVlZGVkLgoKa2XigJlvIGlzIHVzZWQgYSBsb3Qgd2hlbiBpbmV4cGVyaWVuY2VkIExv amJhbmlzdHMgc3BlYWsgdG9nZXRoZXIgdm9jYWxseS4gSXTigJlzIHF1aXRlIGEgaGFuZHkgd29y ZApzdXRyYSB4MSBpcyBxdWljayBhdCBkb2luZyB4MgoKVHJhbnNsYXRlOiAueSBrZeKAmW8gc3V0 cmEgdGF2bGEKCkFuc3dlcjog4oCcVWgsIFBsZWFzZSByZXBlYXQsIHlvdSBxdWljayBzcGVha2Vy LuKAnQoKQW5kIOKAnE9rYXkgb2theSwgSSBnb3QgaXQgYWxyZWFkeSEgSeKAmWxsIGRvIGl0IeKA nQoKQW4gYW5zd2VyOiBrZeKAmW8gbmFpIC51aSBuYWkgdmnigJlvCgoKISFMb2piYW4gTGVzc29u cyAtIExlc3NvbiB0d2VudHktdHdvIChuZWdhdGlvbikKU29tZXRpbWVzLCBqdXN0IHNheWluZyB3 aGF04oCZcyB0aGUgdHJ1dGggaXMgbm90IGVub3VnaC4gT2Z0ZW4sIHdlIHdhbnQgdG8gc3BlY2lm eSB3aGF04oCZcyBub3QgdGhlIHRydXRoLCBhbmQgd2UgZG8gdGhpcyBieSB1c2luZyBuZWdhdGlv bi4KTmVnYXRpb24gaW4gRW5nbGlzaCBtb3N0bHkgaW52b2x2ZXMg4oCcbm904oCdLCBhbmQgaXMg Y29tcGxldGVseSBhcmJpdHJhcnkgYW5kIGFtYmlndW91cy4gV2UsIGFzIExvamJhbmlzdHMsIGNh buKAmXQgaGF2ZSB0aGF0LCBvZiBjb3Vyc2UsIHNvIExvamJhbiBjb250YWlucyBhbiBlbGVnYW50 IGFuZCB1bmFtYmlnaW91cyBzeXN0ZW0gZm9yIG5lZ2F0aW5nLgoKVGhlIGZpcnN0IHlvdSBuZWVk IHRvIGtub3cgYWJvdXQgaXMgYnJpZGkgbmVnYXRpb24sIHNvIGNhbGxlZCBiZWNhdXNlIGl0IG5l Z2F0ZXMgdGhlIGJyaWRpIGl04oCZcyBpbiwgc2F5aW5nIGl04oCZcyBub3QgdHJ1ZS4gVGhlIHdh eSB0byBuZWdhdGUgYSBicmlkaSBpcyB0byBwbGFjZSBuYSBlaXRoZXIganVzdCBiZWZvcmUgdGhl IHNlbGJyaSAoYWZ0ZXIgYW55IGN1KSwgb3IgZmlyc3QgaW4gdGhlIHNlbnRlbmNlIHdpdGggYSBr dSBhZnRlciBpdC4Kc3BlbmkgeDEgaXMgbWFycmllZCB0byB4MiB1bmRlciBjb252ZW50aW9uIHgz ClRodXM6IGxlIG1pIHNwZW5pIGN1IG5hIG5pbm11IHN0YXRlcyB0aGF0IOKAnE15IHNwb3VzZSBp cyBub3QgYSB3b21hbuKAnS4gSXQgc3RhdGVzIG5vdGhpbmcgYWJvdXQgd2hhdCBteSB3aWZlIGlz LCBvciBpZiBJIGV2ZW4gaGF2ZSBhIHdpZmUuIEl0IG9ubHkgc3RhdGVzIHRoYXQgSSBkbyBub3Qg aGF2ZSBhIHdpZmUgd2hvIGlzIGFsc28gYSB3b21hbi4gVGhpcyBoYXMgYW4gaW1wb3J0YW50IGlt cGxpY2F0aW9uOiBJZiB0aGUgbmVnYXRpb24gb2YgYSBicmlkaSBpcyBmYWxzZSwgdGhlIGJyaWRp IG11c3QgYmUgdHJ1ZTogbmEga3UgbGUgbWkgc3BlbmkgY3UgbmEgbmlubXUgbXVzdCBtZWFuIHRo YXQgSSBoYXZlIGJvdGggYSBzcG91c2UsIGFuZCB0aGF0IHNoZSBpcyBhIHNoZS4KSXQgaXMgcG9z c2libGUgdG8gdXNlIGJyaWRpIG5lZ2F0aW9ucyBpbiBhbGwgYnJpZGksIGV2ZW4gdGhlIGltcGxp Y2l0IGJyaWRpIG9mIGRlc2NyaXB0aXZlIHN1bXRpLiBsbyBuYSBwcmVudSBjYW4gcmVmZXIgdG8g YW55dGhpbmcgbm9uLWh1bWFuLCB3aGV0aGVyIGl0IGJlIGEgc3BoaW54LCBhIGJhc2ViYWxsIG9y IHRoZSBwcm9wZXJ0eSBvZiBhcHByb3ByaWF0ZW5lc3MuCgpnbGliYXUgeDEgaXMgRW5nbGlzaCB1 c2VkIGJ5IHgyIHRvIGV4cHJlc3MgeDMKYmF1IHN1bXRjaXRhLCBmcm9tIGJhbmd1OiB1c2luZyB0 aGUgbGFuZ3VhZ2Ugb2YgW3N1bXRpXQpzZSBqYeKAmWUgc3VtdGNpdGEsIGZyb20gc2UgamFsZ2U6 IGJlY2F1c2Ugb2YgW3N1bXRpXQoKT2Z0ZW4gd2hlbiB1c2luZyBuYSwgaXTigJlzIGEgcHJvYmxl bSB0aGF0IG5lZ2F0ZXMgdGhlIGVudGlyZSBicmlkaS4gSWYgSSBzYXkgbWkgbmEgc3V0cmEgdGF2 bGEgYmF1IGxlIGdsaWJhdSBzZSBqYeKAmWUgbGUgbnUgbWkgZG90Y28sIEkgZW5kIHVwIG5lZ2F0 aW5nIHRvbyBtdWNoLCBhbmQgaXQgaXMgbm90IGNsZWFyIHRoYXQgSSB3YW50ZWQgdG8gb25seSBu ZWdhdGUgdGhhdCBJIHNwZWFrIGZhc3QuIFRoZSBzZW50ZW5jZSBjb3VsZCBzdWdnZXN0IHRoYXQg SSBpbiBmYWN0IHNwZWFrIGZhc3QgYmVjYXVzZSBvZiBzb21lIG90aGVyIHJlYXNvbiwgb3IgdGhh dCBJIHNwZWFrIGZhc3QgaW4gRnJlbmNoIGJlY2F1c2UgSeKAmW0gR2VybWFuLiBUbyBleHByZXNz IHRoZSBzZW50ZW5jZSBjb3JyZWN0bHksIEkgbmVlZCB0byBvbmx5IG5lZ2F0ZSB0aGF0IEkgc3Bl YWsgZmFzdCwgYW5kIG5vdCB0aGUgb3RoZXIgdGhpbmdzLgpUbyBvbmx5IG5lZ2F0ZSBwYXJ0IG9m IGEgYnJpZGksIG5hIGt1IGNhbiBiZSBtb3ZlZCBhcm91bmQgdGhlIGJyaWRpIGFuZCBwbGFjZWQg YW55d2hlcmUgYSBzdW10aSBjYW4gZ28uIEl0IHRoZW4gbmVnYXRlcyBhbnkgc3VtdGksIHNlbGJy aSBhbmQgc3VtdGNpdGEgcGxhY2VkIGFmdGVyIGl0LgoKTW92aW5nIG5hIGt1IGZyb20gdGhlIGxl ZnQgZW5kIG9mIHRoZSBicmlkaSBhbmQgcmlnaHR3YXJkcyBlZmZlY3RzIGFueSBxdWFudGlmaWVy cyBpbiBhIGNlcnRhaW4gd2F5LCBhcyBjYW4gYmUgc2VlbiBieSB0aGlzIGV4YW1wbGU6CgpuYSBr dSBybyByZW1uYSBjdSB2ZXJiYSDigJxJdOKAmXMgbm90IHRydWUgdGhhdDogQWxsIGh1bWFucyBh cmUgY2hpbGRyZW7igJ0Kc3XigJlvIHJlbW5hIG5hIGt1IGN1IHZlcmJhIOKAnEZvciBhdCBsZWFz dCBvbmUgaHVtYW4gaXTigJlzIG5vdCB0cnVlIHRoYXQ6IEl04oCZcyBhIGNoaWxk4oCdLiBTZWUg dGhhdCB0aGUgbmEga3UgaXMgcGxhY2VkIGJlZm9yZSBjdSwgc2luY2UgYSBzdW10aSBjYW4gZ28g b25seSB0aGVyZS4gSGFkIEkgb25seSB1c2VkIG5hLCBpdCB3b3VsZCBoYXZlIHRvIGdvIGFmdGVy IGN1LgoKVGhlIHF1YW50aWZpZXIgaXMgaW52ZXJ0ZWQsIHJvIGlzIHR1cm5lZCBpbnRvIHN14oCZ by4gVGhpcyBpcywgb2YgY291cnNlLCBvbmx5IGlmIHRoZSBtZWFuaW5nIG9mIHRoZSBicmlkaSBo YXMgdG8gYmUgcHJlc2VydmVkLiBUaGlzIG1lYW5zIHRoYXQgd2hlbiB0aGUgbmEga3UgaXMgcGxh Y2VkIGF0IHRoZSBlbmQgb2YgdGhlIGJyaWRpLCBvbmx5IHRoZSBzZWxicmkgaXMgbmVnYXRlZCBi dXQgYWxsIHRoZSBzdW10aSBhbmQgc3VtdGNpdGEgYXJlIHByZXNlcnZlZCwgYXMgY2FuIGJlIHNl ZW4gYnkgdGhlc2UgdGhyZWUgaWRlbnRpY2FsIGJyaWRpOgpja3VsZSB4MSBpcyBhIHNjaG9vbCBh dCBsb2NhdGlvbiB4MiB0ZWFjaGluZyB4MyB0byBzdHVkZW50cyB4NCBhbmQgb3BlcmF0ZWQgYnkg eDUKCm5hIGt1IHJvIHZlcmJhIGN1IHZlIGNrdWxlIGZvIHN14oCZbyBja3VsZSDigJMg4oCcSXTi gJlzIG5vdCB0cnVlIHRoYXQgYWxsIGNoaWxkcmVuIGFyZSBzdHVkZW50cyBpbiBhIHNjaG9vbC7i gJ0Kc3XigJlvIHZlcmJhIGN1IHZlIGNrdWxlIG5hIGt1IGZvIHN14oCZbyBja3VsZSDigJMg4oCc U29tZSBjaGlsZHJlbiBhcmUgc3R1ZGVudHMgaW4gbm90IGEgc2luZ2xlIHNjaG9vbC7igJ0Kc3Xi gJlvIHZlcmJhIGN1IHZlIGNrdWxlIGZvIHJvIGNrdWxlIG5hIGt1IOKAkyDigJxTb21lIGNoaWxk cmVuIGFyZSBmb3IgYWxsIHNjaG9vbHMgbm90IHN0dWRlbnRzIGluIHRoZW0u4oCdCgpXaGlsZSB0 aGUgbWVjaGFuaXNtIG9mIG5hIGt1IHJlc2VtYmxlcyBuYXR1cmFsIGxhbmd1YWdlIG5lZ2F0aW9u LCBpdCBjYW4gYmUgZGlmZmljdWx0IHRvIGtlZXAgdHJhY2sgb2YgZXhhY3RseSB3aGF0IGlzIG5l Z2F0ZWQgYW5kIGhvdyB0aGF0IGFmZmVjdHMgdGhlIGJyaWRpLiBGb3IgdGhhdCByZWFzb24sIHRo ZSBjb25zdHJ1Y3QgbmEga3UgaXMgcmFyZWx5IHNlZW4gYW55d2hlcmUgb3RoZXIgdGhhbiB0aGUg YmVnaW5uaW5nIG9mIGEgYnJpZGkuIEluIG1vc3QgY2FzZXMgd2hlcmUgbW9yZSBzcGVjaWZpYyBu ZWdhdGlvbiBpcyBuZWVkZWQgcGVvcGxlIHJlc29ydCB0byBhIGRpZmZlcmVudCBtZXRob2QuIFRo aXMgbWV0aG9kLCBjYWxsZWQgc2NhbGFyIG5lZ2F0aW9uLCBpcyBhbiBlbGVnYW50IGFuZCBpbnR1 aXRpdmUgdG9vbC4gVXNpbmcgaXQsIHlvdSBlZmZlY3Qgb25seSB0aGUgc2VsYnJpLCBzaW5jZSB0 aGUgd29yZHMgdXNlZCBpbiBzY2FsYXIgbmVnYXRpb24gYmluZHMgdG8gdGhlIHNlbGJyaSBtdWNo IGxpa2UgdGhlIHdvcmQgc2UuClRoZSBuYW1lIOKAnHNjYWxhciBuZWdhdGlvbuKAnSBpcyBkZXJp dmVkIGZyb20gdGhlIGZhY3QgdGhhdCB0aGUgd29yZHMgd2hpY2ggYmluZCB0byB0aGUgc2VsYnJp IGNhbiBiZSBwbGFjZWQgYWxvbmcgYSBzY2FsZSBmcm9tIGFmZmlybWF0aW9uIG92ZXIgbmVnYXRp b24gYW5kIHRvIHN0YXRpbmcgdGhhdCB0aGUgb3Bwb3NpdGUgY2FzZSBpcyB0cnVlOgpXb3JkCU1l YW5pbmcKamXigJlhCeKAnEluZGVlZOKAnTsgc2NhbGFyIGFmZmlybWVyCm5v4oCZZQnigJxOb3Qg cmVhbGx54oCdLCBzY2FsYXIgbWlkcG9pbnQKbmHigJllCeKAnE5vbi3igJwsIHNjYWxhciBuZWdh dG9yCnRv4oCZZQnigJxJbOKAnSwg4oCcRGlzLeKAnCwg4oCcTWlz4oCdIGVjdDsgc2NhbGFyIG9w cG9zZXIKCgpUaGVzZSB3b3JkcyBhcmUgbm90IG5lZ2F0b3JzIGluIHRoZSBzYW1lIHNlbnNlIGFz IG5hLiBUaGV5IGRvIG5vdCBzdGF0ZSB0aGF0IGEgYnJpZGkgaXMgZmFsc2UsIGJ1dCBtYWtlcyBh IHBvc2l0aXZlIHN0YXRlbWVudCB0aGF0IGEgYnJpZGkgaXMgdHJ1ZSDigJMgdGhlIHNhbWUgYnJp ZGksIGJ1dCB3aXRoIGEgZGlmZmVyZW50IHNlbGJyaS4KVGhlIHdvcmRzIG5v4oCZZSBhbmQgdG/i gJllIHNob3VsZCBvbmx5IGJlIHVzZWQgd2hlbiB0aGUgc2VsYnJpIGhhcyBhbiBpbXBsaWNpdCBz Y2FsZToKbGUgbWkgc3BlbmkgY3UgdG/igJllIG1lbGJpIOKAkyDigJ1NeSBzcG91c2UgaXMgdWds eeKAnSBtYWtlcyBzZW5zZSwgc2luY2Ugd2UgaW1tZWRpYXRlbHkga25vdyB3aGF0IHRoZSBvcHBv c2l0ZSBvZiBiZWF1dGlmdWwgaXMsIHdoaWxlCm1pIGtsYW1hIGxlIG1pIHRv4oCZZSB6ZGFuaSDi gJMg4oCdSSBnbyB0byBteSBvcHBvc2l0ZSB0aGluZyBvZiBob21l4oCdLCB3aGlsZSBncmFtbWF0 aWNhbCwgbGVhdmVzIHRoZSBsaXN0ZW5lciBndWVzc2luZyB3aGF0IHRoZSBzcGVha2VycyDigJxv cHBvc2l0ZS1ob21l4oCdIGlzIGFuZCBzaG91bGQgYmUgYXZvaWRlZC4KCgpUcnkgdG8gdHJhbnNs YXRlIHRoZXNlIHNlbnRlbmNlczoK4oCcTXkgc3BvdXNlIGlzIG5vdCBhIHdvbWFu4oCdIChtZWFu aW5nIHRoYXQgaGUgaXMgYSBtYWxlKQoKQW5zd2VyOiBsZSBtaSBzcGVuaSBjdSBuYeKAmWUgLyB0 b+KAmWUgbmlubXUuIFVzaW5nIHNjYWxhciBuZWdhdGlvbiBoZXJlIGltcGxpZXMgdGhhdCBoZSBl eGlzdHMsIHdoaWNoIG5hIGRpZCBub3QuCgrigJxNeSBzcG91c2UgaXMgbm90IHJlYWxseSBhIHdv bWFu4oCdCgpBbnN3ZXI6IGxlIG1pIHNwZW5pIGN1IG5v4oCZZSBuaW5tdS4gVGhlIHNjYWxlIGhl cmUgaXMgcHJlc3VtZWQgdG8gYmUgZnJvbSB3b21hbiB0byBtYW4uCgrigJxJIGRvbuKAmXQgc3Bl YWsgZmFzdCBpbiBFbmdsaXNoIGJlY2F1c2UgSeKAmW0gR2VybWFu4oCdCgpBbnN3ZXI6IG1pIG5h 4oCZZSBzdXRyYSB0YXZsYSBiYXUgbGUgZ2xpYmF1IHNlIGph4oCZZSBsZSBudSBtaSBkb3RjbwoK QWxzbywgbm90ZSB0aGF0IHdoZW5ldmVyIHRoZXNlIHdvcmRzIGFyZSB1c2VkIHRvZ2V0aGVyIHdp dGggYSB0YW5ydSwgdGhleSBvbmx5IGFmZmVjdCB0aGUgbGVmdG1vc3Qgc2VsYnJpLiBJbiBvcmRl ciB0byBtYWtlIGl0IGJpbmQgdG8gdGhlIHdob2xlIHRhbnJ1IG9yIHBhcnRzIG9mIHRoZSB0YW5y dSwgdGhlIHVzdWFsIHRhbnJ1LWdyb3VwaW5nIHdvcmRzIGNhbiBiZSB1c2VkLgoKVHJ5IHRvIHNh eSDigJxJIHNlbGwgc29tZXRoaW5nIHdoaWNoIGlzIG5vdCB5ZWxsb3cgaG9tZXPigJ0gdXNpbmcg dGhlIHRhbnJ1IHBlbHh1IHpkYW5pIHZlY251CgpBbnN3ZXI6IG1pIG5h4oCZZSBrZSBwZWx4dSB6 ZGFuaSBrZeKAmWUgdmVjbnUgb3IgbWkgbmHigJllIHBlbHh1IGJvIHpkYW5pIHZlY251CgpXaGVu IGF0dGVtcHRpbmcgdG8gYW5zd2VyOiDigJxJcyB0aGUga2luZyBvZiB0aGUgVVNBIGZhdD/igJ0s IGFsbCBvZiB0aGVzZSBuZWdhdGlvbnMgZmFpbC4gV2hpbGUgaXTigJlzIHRlY2huaWNhbGx5IGNv cnJlY3QgdG8gbmVnYXRlIGl0IHdpdGggbmEsIHNpbmNlIGl0IG1ha2VzIG5vIGFzc3VtcHRpb25z IG9mIHRoYXQgaXMgdHJ1ZSwgaXTigJlzIG1pbGRseSBtaXNsZWFkaW5nIHNpbmNlIGl0IGNvdWxk IGxlYWQgdGhlIGxpc3RlbmVyIHRvIGJlbGlldmUgdGhlcmUgaXMgYSBraW5nIG9mIHRoZSBVU0Eu IEZvciB0aGVzZSBzY2VuYXJpb3MsIHRoZXJlIGlzIGEgbWV0YWxpbmd1aXN0aWMgbmVnYXRvciwg bmHigJlpLgpuYeKAmWkgTWV0YWxpbmd1aXN0aWMgbmVnYXRvci4gU29tZXRoaW5nIGlzIHdyb25n IHdpdGggYXNzaWduaW5nIGEgdHJ1dGggdmFsdWUgdG8gdGhlIGJyaWRpLgpCZWNhdXNlIG5h4oCZ aSBjYW4gYmUgbmVlZGVkIGFueXdoZXJlIGl0IGhhcyBiZWVuIGdpdmVuIHRoZSBncmFtbWFyIG9m IHRoZSBhdHRpdHVkaW5hbHMsIHdoaWNoIG1lYW5zIGl0IGNhbiBhcHBlYXIgYW55d2hlcmUsIGFu ZCBpdCBhdHRhY2hlcyB0byB0aGUgcHJldmlvdXMgd29yZCBvciBjb25zdHJ1Y3QuCgpwYWxjaSB4 MSBpcyBldmlsIGJ5IHN0YW5kYXJkIHgyCmxlIG5h4oCZaSBwdSB0ZSB6dWt0ZSBiZSBsZSBza2Ft aSBjdSBwYWxjaSDigJMg4oCdVGhlIHNvdWdodCBnb2FsIFttaXN0YWtlIV0gb2YgdGhlIGNvbXB1 dGVyIHdhcyBldmls4oCdLCBwcm9iYWJseSBwcm90ZXN0cyB0aGF0IGNvbXB1dGVycyBjYW4gc2Vl ayBhIGdvYWwgdm9saXRpb25hbGx5LgoKU2luY2UgdGhpcyBpcyBhIGNoYXB0ZXIgb24gbmVnYXRp b24sIEkgYmVsaWV2ZSB0aGUgd29yZCBuYWkgZGVzZXJ2ZXMgYSBzaG9ydCBtZW50aW9uLiBJdCBp cyB1c2VkIHRvIG5lZ2F0ZSBtaW5vciBncmFtbWF0aWNhbCBjb25zdHJ1Y3RzLCBhbmQgY2FuIGJl IHVzZWQgaW4gY29tYmluYXRpb24gd2l0aCBhdHRpdHVkaW5hbHMsIGFsbCBzdW10Y2l0YSBpbmNs dWRpbmcgdGVuc2VzLCB2b2NhdGl2ZXMgYW5kIGxvZ2ljYWwgY29ubmVjdGl2ZXMuIFRoZSBydWxl cyBmb3IgbmVnYXRpbmcgdXNpbmcgbmFpIGRlcGVuZCBvbiB0aGUgY29uc3RydWN0LCBhbmQgc28g dGhlIGVmZmVjdCBvZiBuYWkgaGFzIGJlZW4gZGlzY3Vzc2VkIHdoZW4gbWVudGlvbmluZyB0aGUg Y29uc3RydWN0IHRoZW1zZWx2ZXMuIFRoZSBleGNlcHRpb24gaXMgc3VtdGNpdGEsIHdoZXJlIHRo ZSBydWxlcyBmb3IgbmVnYXRpb24gYXJlIG1vcmUgY29tcGxleCwgYW5kIHdpbGwgbm90IGJlIGRp c2N1c3NlZCBoZXJlLgoKCiEhTG9qYmFuIExlc3NvbnMgLSBMZXNzb24gdHdlbnR5LXRocmVlIChi cmlrYeKAmWkvcHJvLWJyaWRpIGFuZCBrb+KAmWEpCklmIEkgc2F5IHRoYXQgSeKAmW0gY2FsbGVk IE1pa2hhaWwsIGxhIC5taWthaWwuIGNtZW5lIG1pLCBhbmQgeW91IGhhdmUgdG8gc2F5IHRoZSBl eGFjdCBzYW1lIGJyaWRpLCB3aGF0IHdvdWxkIHRoYXQgYmU/IE9uZSBvZiB0aGUgbWFueSBhbnN3 ZXJzIGlzIGRvIHNlIGNtZW5lIGxhIC5taWthaWwuLiBGb3IgdGhlIGJyaWRpIHRvIGJlIHRoZSBz YW1lLCB5b3UgaGF2ZSB0byByZXBsYWNlIG1pIHdpdGggZG8sIGFuZCBpdCBkb2VzbuKAmXQgbWF0 dGVyIHdoaWNoIGlmIHlvdSBzYXkgdGhlIGJyaWRpIHdpdGggdGhlIHNlLWNvbnZlcnRlZCBzZWxi cmkgb3Igbm90LiBUaGlzIGlzIGJlY2F1c2UgYSBicmlkaSBpcyBub3QgdGhlIHdvcmRzIHdoaWNo IGV4cHJlc3MgaXQg4oCTIGEgYnJpZGkgaXMgYW4gaWRlYSwgYW4gYWJzdHJhY3QgcHJvcG9zaXRp b24uIFRoZSB3b3JkIG1pIHdoZW4gSSBzYXkgaXQgYW5kIHRoZSB3b3JkIGRvIHdoZW4geW91IGRv IHJlZmVycyB0byB0aGUgc2FtZSBzdW10aSwgc28gdGhlIHR3byBicmlkaSBhcmUgaWRlbnRpY2Fs LgpUaGlzIGxlc3NvbiBpcyBvbiBicmlrYeKAmWksIHRoZSBicmlkaSBlcXVpdmFsZW50IG9mIHN1 bWth4oCZaS4gVGhleSBhcmUgd29yZCB3aGljaCByZXByZXNlbnQgZW50aXJlIGJyaWRpLiBIZXJl IGl0IGlzIGltcG9ydGFudCB0byByZW1lbWJlciB0aGF0IGEgYnJpZGkgY29uc2lzdHMgb25seSBv ZiBzdW10aSBhbmQgdGhlIHRoaW5ncyB3aGljaCBjb250YWluIHRoZSBzdW10aSwgc2VsYnJpIGFu ZCBzdW10Y2l0YS4gTmVpdGhlciBhdHRpdHVkaW5hbHMsIG5vciB0aGUgc2VtYW50aWMgbGF5ZXIg b2Yga28gb3IgbWEgYXJlIHBhcnQgb2YgdGhlIGJyaWRpIHByb3BlciwgYW5kIHNvIHRoZXNlIGFy ZSBub3QgcmVwcmVzZW50ZWQgYnkgYSBicmlrYeKAmWkuCgpUaGVyZSBhcmUgbXVjaCBmZXdlciBi cmlrYeKAmWkgdGhhbiB0aGVyZSBhcmUgc3Vta2HigJlpLiBXZSB3aWxsIGJlZ2luIGJ5IGdvaW5n IHRocm91Z2ggdGhlIG1vc3QgdXNlZCBzZXJpZXMsIGNhbGxlZCBHT2hBOgpXb3JkOglEZWZpbml0 aW9uOgpnb+KAmXUJUmVwZWF0cyByZW1vdGUgcGFzdCBicmlkaQpnb+KAmWEJUmVwZWF0cyBwYXN0 IGJyaWRpCmdv4oCZZQlSZXBlYXRzIG5leHQtdG8tbGFzdCBicmlkaQpnb+KAmWkJUmVwZWF0cyBs YXN0IG1lbnRpb25lZCBicmlkaQpnb+KAmW8JUmVwZWF0cyBmdXR1cmUgYnJpZGkKbmVpCVJlcGVh dHMgY3VycmVudCBicmlkaQpub+KAmWEJUmVwZWF0cyBvdXRlciBicmlkaQoKVGhlIEdPaEEgYnJp a2HigJlpLiBOb3RpY2UgdGhlIGZhbWlsaWFyIGksIGEsIHUtcGF0dGVybiBmb3IgY2xvc2UgaW4g cGFzdCwgbWVkaXVtIGluIHBhc3QgYW5kIGRpc3RhbnQgaW4gcGFzdC4KCgpUaGVzZSBhcmUgdmVy eSBtdWNoIGxpa2UgdGhlIHN1bWth4oCZaSByaSwgcmEgYW5kIHJ1LiBUaGV5IGNhbiBvbmx5IHJl ZmVyIHRvIG1haW4gYnJpZGkgb2YganVmcmEsIGFuZCBub3QgdGhvc2UgY29udGFpbmVkIGluIHJl bGF0aXZlIHBocmFzZXMgb3IgZGVzY3JpcHRpb24gc3VtdGkuIFRoZSBtYWluIGJyaWRpIGNhbiBj b250YWluIGEgcmVsYXRpdmUgcGhyYXNlLCBvZiBjb3Vyc2UsIGJ1dCBhIGJyaWth4oCZaSBjYW4g bmV2ZXIgYmUgdXNlZCB0byByZWZlciB0byBvbmx5IHRoZSByZWxhdGl2ZSBwaHJhc2UuCkEgR09o QSBhY3RzIGdyYW1tYXRpY2FsbHkgbXVjaCBsaWtlIGEgc2VsYnJpLCBhbnkgY29uc3RydWN0IHdo aWNoIGNhbiBhcHBseSB0byBzZWxicmkgY2FuIGFsc28gYXBwbHkgdG8gdGhlc2UuIFRoZSBwbGFj ZSBzdHJ1Y3R1cmUgb2YgYSBHT2hBIGlzIHRoZSBzYW1lIGFzIHRoYXQgb2YgdGhlIGJyaWRpIGl0 IHJlcHJlc2VudHMsIGFuZCB0aGUgc3VtdGkgYXJlIGJ5IGRlZmF1bHQgdGhlIHNhbWUgYXMgaW4g dGhlIGJyaWRpIGl0IHJlcHJlc2VudHMuIEZpbGxpbmcgdGhlIHN1bXRpIHBsYWNlcyBvZiBhIEdP aEEgZXhwbGljaXRseSBvdmVyd3JpdGVzIHRoZSBzdW10aSBvZiB0aGUgYnJpZGkgaXQgcmVwcmVz ZW50cy4gQ29udHJhc3Q6CkE6IG1pIGNpdGthIGxvIHBsaXNlIEI6IGdv4oCZaSDigJMg4oCcSSBl YXQgYW4gYXBwbGUu4oCdIOKAnFlvdSBkby7igJ0gd2l0aApBOiBtaSBjaXRrYSBsbyBwbGlzZSBC OiBtaSBnb+KAmWkg4oCTIOKAnEkgZWF0IGFuIGFwcGxlLuKAnSDigJxJIGRvLCB0b28u4oCdCgpU aGVzZSBicmlrYeKAmWkgYXJlIHZlcnkgdXNlZnVsIHdoZW4gYW5zd2VyaW5nIGEgcXVlc3Rpb24g d2l0aCB4dToKQTogeHUgZG8gbmVsY2kgbGUgbWkgc3BlbmkgQjogZ2/igJlpIC8gbmEgZ2/igJlp IOKAkyDigJxEbyB5b3UgbGlrZSBteSB3aWZlP+KAnSDigJxZZXMuL05vLuKAnS4gVGhlIHh1LCBi ZWluZyBhbiBhdHRpdHVkaW5hbCwgaXMgbm90IGNvcGllZC4KCm5laSBhbmQgbm/igJlhIGFyZSBu b3QgdXNlZCBtdWNoLCBleGNlcHQgZm9yIOKAnG1pbmQtYnJlYWtpbmcgcHVycG9zZXPigJ0sIHdo aWNoIGlzIG1ha2luZyB1cCBicmlkaSB3aGljaCBhcmUgaGFyZCB0byBwYXJzZSwgbGlrZSBkZWkg bmEgc2UgZHXigJl1IGxlIG5v4oCZYSBsYeKAmWUgbGUgbmVpLiBTaW5jZSBuZWkgcmVwZWF0cyB0 aGUgY3VycmVudCBvdXRlciBicmlkaSwgaG93ZXZlciwgbGUgbmVpIGNhbiBiZSB1c2VkIHRvIHJl ZmVyIHRvIHRoZSB4MSBvZiB0aGUgY3VycmVudCBvdXRlciBicmlkaSwgbGUgc2UgbmVpIHRoZSB4 MiBhbmQgc28gb24uCgpXaGVuIHVzaW5nIGJyaWth4oCZaSwgb25lIG11c3QgYWx3YXlzIGJlIHdh cnkgb2YgY29weWluZyBzZW50ZW5jZXMgd2l0aCB0aGUgcGVyc29uYWwgc3Vta2HigJlpIGxpa2Ug bWksIGRvLCBtYeKAmWEgZWN0LCBhbmQgYmUgY2FyZWZ1bCBub3QgdG8gcmVwZWF0IHRoZW0gd2hl biB0aGV5IGFyZSBpbiB0aGUgd3JvbmcgY29udGVjdCwgYXMgc2hvd24gaW4gdGhlIHR3byBleGFt cGxlcyB3aXRoIGFwcGxlIGVhdGluZyBhYm92ZS4gSW5zdGVhZCBvZiByZXBsYWNpbmcgdGhlbSBv bmUgYnkgb25lLCB0aG91Z2gsIHRoZSB3b3JkIHJh4oCZbyBhbnl3aGVyZSBpbiB0aGUgYnJpZGkg dXBkYXRlcyB0aGUgcGVyc29uYWwgc3Vta2HigJlpIHNvIHRoYXQgdGhleSBhcHBseSBmb3IgdGhl IHNwZWFrZXLigJlzIHBlcnNwZWN0aXZlOgpBOiBtaSBkbyBwcmFtaSBCOiBtaSBkbyBnb+KAmWkg aXMgZXF1aXZhbGVudCB0byBBOiBtaSBkbyBwcmFtaSBCOiBnb+KAmWkgcmHigJlvCnJh4oCZbyBV cGRhdGUgYWxsIHBlcnNvbmFsIHN1bWth4oCZaSBzbyB0aGF0IHRoZXkgbm93IGZpdCB0aGUgc3Bl YWtlcuKAmXMgcG9pbnQgb2Ygdmlldy4KClRoZSBvbmx5IG90aGVyIHNlcmllcyBvZiBicmlrYeKA mWkgYXJlIHZlcnkgZWFzeSB0byByZW1lbWJlcjoKYnJvZGEJQnJpZGkgdmFyaWFibGUgMQpicm9k ZQlCcmlkaSB2YXJpYWJsZSAyCmJyb2RpCUJyaWRpIHZhcmlhYmxlIDMKYnJvZG8JQnJpZGkgdmFy aWFibGUgNApicm9kdQlCcmlkaSB2YXJpYWJsZSA1CmNlaQlEZWZpbmUgYnJpZGkgdmFyaWFibGUK CgpUaGUgZmlyc3QgZml2ZSBhcmUganVzdCBmaXZlIGluc3RhbmNlcyBvZiB0aGUgc2FtZSB3b3Jk LiBUaGV5IGNhbiBiZSB1c2VkIGFzIHNob3J0Y3V0cyB0byBicmlkaS4gQWZ0ZXIgc2F5aW5nIGEg YnJpZGksIHNheWluZyBjZWkgYnJvZGEgZGVmaW5lcyB0aGF0IGJyaWRpIGFzIGJyb2RhLCBhbmQg YnJvZGEgY2FuIHRoZW4gYmUgdXNlZCBhcyBicmlrYeKAmWkgZm9yIHRoYXQgYnJpZGkgaW4gdGhl IGZvbGxvd2luZyBjb252ZXJzYXRpb24uCldoaWxlIHdl4oCZcmUgYXQgaXQsIHRoZXJlIGlzIGFu IGFuYWxvZ291cyBzZXJpZXMgb2Ygc3Vta2HigJlpLCB3aGljaCBwcm9iYWJseSBkb2VzIG5vdCBi ZWxvbmcgaW4gdGhpcyBjaGFwdGVyLCBidXQgaGVyZSB0aGV5IGFyZSBhbnl3YXk6Cmtv4oCZYQlT dW10aSB2YXJpYWJsZSAxCWZv4oCZYQlTdW10aSB2YXJpYWJsZSA2Cmtv4oCZZQlTdW10aSB2YXJp YWJsZSAyCWZv4oCZZQlTdW10aSB2YXJpYWJsZSA3Cmtv4oCZaQlTdW10aSB2YXJpYWJsZSAzCWZv 4oCZaQlTdW10aSB2YXJpYWJsZSA4Cmtv4oCZbwlTdW10aSB2YXJpYWJsZSA0CWZv4oCZbwlTdW10 aSB2YXJpYWJsZSA5Cmtv4oCZdQlTdW10aSB2YXJpYWJsZSA1CWZv4oCZdQlTdW10aSB2YXJpYWJs ZSAxMAoKZ29pCgkKCkRlZmluZSBzdW10aSB2YXJpYWJsZQoKClRoZXNlIGFyZSB1c2VkIGxpa2Ug dGhlIGJyaWth4oCZaS1zZXJpZXMuIEp1c3QgcGxhY2UsIGZvciBpbnN0YW5jZSwgZ29pIGtv4oCZ dSBhZnRlciBhIHN1bXRpLCBhbmQgdGhhdCBzdW10aSBjYW4gYmUgcmVmZXJyZWQgdG8gYnkga2/i gJl1LgoKU3RyYW5nZWx5LCB0aGVzZSBzZXJpZXMgYXJlIHJhcmVseSB1c2VkIGZvciB0aGVpciBp bnRlbmRlZCBwdXJwb3NlLiBUaGV5IGFyZSwgaG93ZXZlciwgdXNlZCBhcyBhcmJpdHJhcnkgc2Vs YnJpIGFuZCBzdW10aSBpbiBleGFtcGxlIHRleHRzOgrigJxTbywgaXMgaXQgdHJ1ZSB0aGF0IHRo ZSB0cnV0aCBjb25kaXRpb24gb2Yga2/igJlhIGtv4oCZZSBicm9kYSBuYSBrdSBpcyBhbHdheXMg dGhlIHNhbWUgYXMgbmEga3Uga2/igJlhIGtv4oCZZSBicm9kYT/igJ0g4oCcTm9wZSwgaXQgaXNu 4oCZdC7igJ0KCgohIUxvamJhbiBMZXNzb25zIC0gTGVzc29uIHR3ZW50eS1mb3VyIChsb2dpY2Fs IGNvbm5lY3RpdmVzKQrigJxJZiB5b3UgYXNrIGEgTG9qYmFuaXN0OiDigJxEbyB5b3Ugd2FudCBt aWxrIG9yIHN1Z2FyIGluIHlvdXIgY29mZmVlP+KAnSBzaGXigJlsbCBhbnN3ZXI6IOKAnENvcnJl Y3Qu4oCd4oCdCgpXaXR0eSBhcyB0aGlzIGpva2UgbWlnaHQgYmUsIGl0IGlsbHVzdHJhdGVzIGEg d2VpcmQgcHJvcGVydHkgb2YgdGhlIEVuZ2xpc2ggd2F5IG9mIGFza2luZyB0aGlzIHF1ZXN0aW9u LiBJdCBpcyBwaHJhc2VkIGFzIGEgdHJ1ZS9mYWxzZSBxdWVzdGlvbiwgYnV0IGl0IHJlYWxseSBp c27igJl0LiBJbiBMb2piYW4sIHdlIGNhbuKAmXQgaGF2ZSB0aGlzIGtpbmQgb2YgaW5jb25zaXN0 ZW5jeSwgYW5kIHNvIHdlIG11c3QgZmluZCBhbm90aGVyIHdheSBvZiBhc2tpbmcgdGhpcyBraW5k IG9mIHF1ZXN0aW9uLiBJZiB5b3UgdGhpbmsgYWJvdXQgaXQsIGl04oCZcyBwcmV0dHkgaGFyZCB0 byBmaW5kIGEgZ29vZCBhbmQgZWFzeSB3YXksIGFuZCBpdCBzZWVtcyBMb2piYW4gaGF2ZSBwaWNr ZWQgYSBnb29kIHdheSBpbnN0ZWFkIG9mIGFuIGVhc3kgd2F5LgoKVG8gZXhwbGFpbiBpdCwgbGV0 IHVzIHRha2UgdHdvIHNlcGFyYXRlIGJyaWRpOiBCcmlkaSAxOiDigJxJIGxpa2UgbWlsayBpbiBt eSBjb2ZmZWXigJ0gYW5kIGJyaWRpIDI6IOKAnEkgbGlrZSBzdWdhciBpbiBteSBjb2ZmZWXigJ0u IEJvdGggb2YgdGhlc2UgYnJpZGkgY2FuIGhhdmUgdGhlIHN0YXRlIHRydWUgb3IgZmFsc2UuIFRo aXMgeWllbGRzIGZvdXIgY29tYmluYXRpb25zIG9mIHdoaWNoIGJyaWRpIGlzL2FyZSB0cnVlOgpB KSAxIGFuZCAyCUIpIDEgYnV0IG5vdCAyCkMpIDIgYnV0IG5vdCAxCUQpbmVpdGhlciAxIG5vciAy CgpJLCBpbiBhY3R1YWxpdHksIGxpa2UgbWlsayBpbiBteSBjb2ZmZWUsIGFuZCBJ4oCZbSBpbmRp ZmZlcmVudCBhcyB0byB3aGV0aGVyIHRoZXJlIGlzIHN1Z2FyIGluIGl0IG9yIG5vdC4gVGhlcmVm b3JlLCBteSBwcmVmZXJlbmNlIGNhbiBiZSB3cml0dGVuIEEpIHRydWUgQikgdHJ1ZSBDKSBmYWxz ZSBEKSBmYWxzZSwgc2luY2UgYm90aCBBIGFuZCBCIHlpZWxkcyB0cnVlIGZvciBtZSwgYnV0IG5l aXRoZXIgQyBub3IgRCBkb2VzLiBBIG1vcmUgY29tcGFjdCB3YXkgb2Ygd3JpdGluZyBteSBjb2Zm ZWUgcHJlZmVyZW5jZXMgd291bGQgYmUgVFRGRiBmb3IgdHJ1ZSwgdHJ1ZSwgZmFsc2UsIGZhbHNl LiBTaW1pbGFybHksIGEgcGVyc29uIGxpa2luZyBoaXMgY29mZmVlIGJsYWNrIGFuZCBvbmx5IGJs YWNrIHdvdWxkIGhhdmUgYSBjb2ZmZWUgcHJlZmVyZW5jZSBvZiBGRkZULiBUaGlzIGlzIGNhbGxl ZCBhIOKAnHRydXRoIGZ1bmN0aW9u4oCdIGZvciB0aGUgdHdvIHN0YXRlbWVudHMg4oCcSSBsaWtl IG1pbGsgaW4gbXkgY29mZmVl4oCdIGFuZCDigJxJIGxpa2Ugc3VnYXIgaW4gbXkgY29mZmVl4oCd LiBOb3RlIHRoYXQgdGhlIG9yZGVyIG9mIHRoZSBzdGF0ZW1lbnRzIG1hdHRlcnMuCkluIExvamJh biwgd2Ugb3BlcmF0ZSB3aXRoIDQgdHJ1dGggZnVuY3Rpb25zLCB3aGljaCB3ZSBjb25zaWRlciBm dW5kYW1lbnRhbDoKQTogVFRURiAoYW5kL29yKQpPOiBURkZUIChpZiBhbmQgb25seSBpZmYpClU6 IFRURkYgKHdoZXRoZXIgb3Igbm90KQpFOiBURkZGIChhbmQpCgpJbiB0aGlzIGV4YW1wbGUsIHRo ZXkgd291bGQgdHJhbnNsYXRlIHRvIHNvbWV0aGluZyBsaWtlOiBBOuKAnUp1c3Qgbm90IGJsYWNr IGNvZmZlZeKAnSwgTzog4oCcRWl0aGVyIGJvdGggbWlsayBvciBzdWdhciwgb3Igbm90aGluZyBm b3IgbWUsIHBsZWFzZeKAnSwgVTog4oCcTWlsaywgYW5kIEkgZG9u4oCZdCBjYXJlIGFib3V0IGlm IHRoZXJl4oCZcyBzdWdhciBvciBub3TigJ0gYW5kIEU6IOKAnE1pbGsgYW5kIHN1Z2FyLCBwbGVh c2Uu4oCdLgoKSW4gTG9qYmFuLCB5b3UgcGxhY2UgdGhlIHdvcmQgZm9yIHRoZSB0cnV0aCBmdW5j dGlvbiBiZXR3ZWVuIHRoZSB0d28gYnJpZGksIHNlbGJyaSBvciBzdW10aSBpbiBxdWVzdGlvbi4g VGhhdCB3b3JkIGlzIGNhbGxlZCBhIGxvZ2ljYWwgY29ubmVjdGl2ZS4gVGhlIHdvcmRzIGZvciB0 cnV0aCBmdW5jdGlvbnMgYmV0d2VlbiBzdW10aSAoYW5kIGp1c3QgZm9yIHN1bXRpISkgYXJlICAu YSAubyAudSBhbmQgLmUuIEhvdyBuaWNlLiBGb3IgaW5zdGFuY2U6IOKAnEkgYW0gZnJpZW5kcyB3 aXRoIGFuIEFtZXJpY2FuIGFuZCBhIEdlcm1hbuKAnSB3b3VsZCBiZSBsbyBtZXJrbyAuZSBsbyBk b3RjbyBjdSBwZW5kbyBtaS4KSG93IHdvdWxkIHlvdSBzYXk6IOKAnEVpdGhlciBJIGZsaXJ0IHdp dGggeW91IG9yIHdpdGggbm9uZSBhdCBhbGw/4oCdCgpBbnN3ZXI6IG1pIGNpbmppa2NhIGRvIC5v IG5vIGRhCgpPbmUgbW9yZTog4oCcSSBsaWtlIGNoZWVzZSB3aGV0aGVyIG9yIG5vdCBJIGxpa2Ug Y29mZmVl4oCdCmNrYWZpIHgxIGlzIGEgcXVhbnRpdHkvY29udGFpbnMgY29mZmVlIGZyb20gc291 cmNlL29mIGdyYWluIHgyCgpBbnN3ZXI6IG1pIG5lbGNpIGxv4oCZZSBjaXJsYSAudSBsb+KAmWUg Y2thZmkKCllvdSBjYW4gcGVyaGFwcyBkZWR1Y2UgdGhhdCB0aGVyZSBhcmUgc2l4dGVlbiBwb3Nz aWJsZSB0cnV0aCBmdW5jdGlvbnMsIHNvIHdlIG5lZWQgdG8gbGVhcm4gMTIgbW9yZSBpbiBvcmRl ciB0byBrbm93IHRoZW0gYWxsLiA4IG1vcmUgY2FuIGJlIG9idGFpbmVkIGJ5IG5lZ2F0aW5nIGVp dGhlciB0aGUgZmlyc3Qgc2VudGVuY2Ugb3IgdGhlIHNlY29uZC4gVGhlIGZpcnN0IGlzIG5lZ2F0 ZWQgYnkgcHJlZml4aW5nIHRoZSB0cnV0aCBmdW5jdGlvbiB3b3JkIHdpdGggbmEsIHRoZSBzZWNv bmQgaXMgbmVnYXRlZCBieSBwbGFjaW5nIG5haSBhZnRlciB0aGUgd29yZC4gRm9yIGV4YW1wbGUs IHNpbmNlIC5lIHJlcHJlc2VudHMgVEZGRiwgLmUgbmFpIG11c3QgYmUg4oCcYm90aCAxIGlzIHRy dWUgYW5kIDIgaXMgZmFsc2XigJ0sIHdoaWNoIGlzIEZURkYuIFNpbWlsYXJseSwgbmEgLmEgaXMg 4oCcSnVzdCBub3Q6IDEgaXMgdHJ1ZSBhbmQgMiBpcyBmYWxzZeKAnSwgd2hpY2ggaXMgVFRGVC4g RG9pbmcgdGhpcyB0eXBlIG9mIGNvbnZlcnNpb24gaW4gdGhlIGhlYWQgcmVhbC10aW1lIGlzIHZl cnksIHZlcnkgaGFyZCwgc28gcGVyaGFwcyBvbmUgc2hvdWxkIGZvY3VzIG9uIGxlYXJuaW5nIGhv dyBsb2dpY2FsIGNvbm5lY3RpdmVzIHdvcmsgaW4gZ2VuZXJhbCwgYW5kIHRoZW4gbGVhcm4gdGhl IGxvZ2ljYWwgY29ubmVjdGl2ZXMgdGhlbXNlbHZlcyBieSBoZWFydC4KCkZvdXIgZnVuY3Rpb25z IGNhbm5vdCBiZSBtYWRlIHRoaXMgd2F5OiBUVFRULCBURlRGLCBGVEZUIGFuZCBGRkZGLiBUaGUg Zmlyc3QgYW5kIHRoZSBsYXN0IGNhbm5vdCBiZSBtYWRlIHVzaW5nIGxvZ2ljYWwgY29ubmVjdGl2 ZXMgYXQgYWxsLCBidXQgdGhleSBhcmUga2luZCBvZiB1c2VsZXNzIGFueXdheS4gVXNpbmcgYSBo eXBvdGhldGljYWwgbG9naWNhbCBjb25uZWN0aXZlIGluIHRoZSBzZW50ZW5jZSDigJxJIGxpa2Ug bWlsayBGRkZGIHN1Z2FyIGluIG15IGNvZmZlZeKAnSBpcyBlcXVpdmFsZW50IHRvIHNheWluZyDi gJxJIGRvbuKAmXQgbGlrZSBjb2ZmZWXigJ0sIGp1c3QgbW9yZSBjb21wbGljYXRlZC4gVGhlIGxh c3QgdHdvLCBURlRGIGFuZCBGVEZULCBjYW4gYmUgbWFkZSBieSBwcmVmaXhpbmcgLnUgd2l0aCBn b29kIG9s4oCZIHNlLCB3aGljaCBqdXN0IHJldmVydHMgdGhlIHR3byBzdGF0ZW1lbnRzLiBzZSAu dSAsIGZvciBpbnN0YW5jZSBpcyDigJxCIHdoZXRoZXIgb3Igbm90IEHigJ0sIHdoaWNoIGlzIFRG VEYuIFRoZSBmaW5hbCBsaXN0IG9mIGFsbCBsb2dpY2FsIGNvbm5lY3RpdmVzIGNhbiBiZSBzZWVu IGJlbG93LgoKVFRUVDogQ2Fubm90IGJlIG1hZGUKVFRURjogLmEKVFRGVDogLmEgbmFpClRURkY6 IC51ClRGVFQ6IG5hIC5hClRGVEY6IHNlIC51ClRGRlQ6IC5vClRGRkY6IC5lCkZUVFQ6IG5hIC5h IG5haQpGVFRGOiBuYSAubyBPUiAubyBuYWkKRlRGVDogc2UgLnUgbmFpCkZURkY6IC5lIG5haQpG RlRUOiBuYSAudQpGRlRGOiBuYSAuZQpGRkZUOiBuYSAuZSBuYWkKRkZGRjogQ2Fubm90IGJlIG1h ZGUKCkxvZ2ljYWxseSwgc2F5aW5nIGEgc2VudGVuY2Ugd2l0aCBhIGxvZ2ljYWwgY29ubmVjdGl2 ZSwgbGlrZSBmb3IgaW5zdGFuY2UgbWkgbmVsY2kgbG/igJllIGNpcmxhIC5lIG5haSBsb+KAmWUg Y2thZmkgaXMgZXF1aXZhbGVudCB0byBzYXlpbmcgdHdvIHNlbnRlbmNlczogbWkgbmVsY2kgbG/i gJllIGNpcmxhIC5pIG5hIGt1IG1pIG5lbGNpIGxv4oCZZSBja2FmaS4gVGhpcyBpcyBob3cgdGhl IGZ1bmN0aW9uIG9mIGxvZ2ljYWwgY29ubmVjdGl2ZXMgaXMgZGVmaW5lZC4KCkJ5IHB1dHRpbmcg YSDigJxq4oCdIGluIGZyb250IG9mIHRoZSBjb3JlIHdvcmQgb2YgYSBsb2dpY2FsIGNvbm5lY3Rp dmUsIGl0IGNvbm5lY3RzIHR3byBzZWxicmkuIEFuIGV4YW1wbGUgaXMgbWkgbmlubXUgbmEgam8g bmFubXUg4oCcSSBhbSBhIG1hbiBvciBhIHdvbWFuLCBidXQgbm90IGJvdGjigJ0KbmlubXUgeDEg aXMgYSB3b21hbgpuaW5tdSB4MSBpcyBhIHdvbWFuCgpUaGlzIGlzIOKAnHRhbnJ1LWludGVybmFs 4oCdLCBtZWFuaW5nIHRoYXQgaXQgbG9vc2VseSBiaW5kcyBzZWxicmkgdG9nZXRoZXIsIGV2ZW4g d2hlbiB0aGV5IGZvcm0gYSB0YW5ydTogbG8gZG90Y28gamEgbWVya28gcHJlbnUgbWVhbnMg4oCc YSBHZXJtYW4gb3IgQW1lcmljYW4gbWFu4oCdLCBhbmQgaXMgcGFyc2VkIGxvIChkb3RjbyBqYSBt ZXJrbykgcHJlbnUuIFRoaXMgYmluZGluZyBpcyBzbGlnaHRseSBzdHJvbmdlciB0aGF0IG5vcm1h bCB0YW5ydS1ncm91cGluZyAoc3RpbGwgd2Vha2VyIHRoYW4gc3BlY2lmaWMgZ3JvdXBpbmctd29y ZHMpLCBhbmQgYXMgc3VjaCwgbG8gZG90Y28gamEgbWVya28gbmlubXUgamEgbmFubXUgaXMgcGFy c2VkIGxvIChkb3RjbyBqYSBtZXJrbykgKG5pbm11IGphIG5hbm11KS4gVGhlIHNlbGJyaSBsb2dp Y2FsIGNvbm5lY3RpdmVzIGNhbiBhbHNvIGJlIGF0dGFjaGVkIHRvIC5pIGluIG9yZGVyIHRvIGNv bm5lY3QgdHdvIHNlbnRlbmNlcyB0b2dldGhlcjogbGEgLmtpbS4gY21lbmUgbWkgLmkganUgbWkg bmFubXUg4oCcSeKAmW0gY2FsbGVkIEtpbSwgd2hldGhlciBvciBub3QgSeKAmW0gYSBtYW7igJ0K ClVuZmFpcmx5IGhhcmQgcXVlc3Rpb246IFVzaW5nIGxvZ2ljYWwgY29ubmVjdGl2ZXMsIGhvdyB3 b3VsZCB5b3UgdHJhbnNsYXRlIOKAnElmIHlvdeKAmXJlIGNhbGxlZCBCb2IsIHlvdeKAmXJlIGEg bWFuLuKAnT8KCkFuc3dlcjogbGEgLmJhYi4gY21lbmUgZG8gLmkgbmEgamEgZG8gbmFubXUgb3Ig 4oCcRWl0aGVyIHlvdeKAmXJlIG5vdCBuYW1lZCBCb2IgYW5kIGEgbWFuLCBvciB5b3XigJlyZSBu b3QgbmFtZWQgQm9iIGFuZCBub3QgYSBtYW4sIG9yIHlvdeKAmXJlIG5hbWVkIEJvYiBhbmQgYSBt YW4uIEJ1dCB5b3UgY2Fu4oCZdCBiZSBuYW1lZCBCb2IgYW5kIG5vdCBiZSBhIG1hbi7igJ0gVGhl IG9ubHkgY29tYmluYXRpb24gbm90IHBlcm1pdHRlZCBpczog4oCcWW914oCZcmUgY2FsbGVkIEJv YiwgYnV0IG5vdCBhIG1hbi7igJ0gVGhpcyBtdXN0IG1lYW4gdGhhdCwgaWYgaXTigJlzIHRydWUg dGhhdCB5b3XigJlyZSBjYWxsZWQgQm9iLCB5b3UgbXVzdCBiZSBhIG1hbiEKCklmIHdlIHRyeSB0 byB0cmFuc2xhdGUgdGhlIHNhZCwgc2FkIGV2ZW50IG9mIOKAnEkgY3JpZWQgYW5kIGdhdmUgYXdh eSBteSBkb2figJ0sIHdlIHJ1biBpbnRvIGEgcHJvYmxlbS4KQXR0ZW1wdGluZyB0byBzYXkgdGhl IHNlbnRlbmNlIHdpdGggYSBqZSBiZXR3ZWVuIHRoZSBzZWxicmkg4oCcZ2F2ZeKAnSBhbmQg4oCc Y3JpZWTigJ0sIHdvdWxkIG1lYW4gdGhlIHNhbWUgd29yZCBmb3Igd29yZCwgYnV0IHVuZm9ydHVu YXRlbHkgbWVhbiB0aGF0IOKAnEkgY3JpZWQgdGhlIGRvZyBhbmQgZ2F2ZSBhd2F5IHRoZSBkb2fi gJ0sIGNmLiB0aGUgZGVmaW5pdGlvbiBvZiBsb2dpY2FsIGNvbm5lY3RpdmVzLiBPbmUgY2FuIGNy eSB0ZWFycyBvciBldmVuIGJsb29kLCBidXQgY3J5aW5nIGRvZ3MgaXMganVzdCBzaWxseS4KSG93 ZXZlciwgd2UgY2FuIGdldCBhcm91bmQgYnkgdXNpbmcgYnJpZGktdGFpbCBsb2dpY2FsIGNvbm5l Y3RpdmVzLiBXaGF0IHRoZXkgZG8gaXMgdGhhdCBhbnkgcHJldmlvdXMgc3VtdGNpdGEgYW5kIHN1 bXRpIGF0dGFjaGVzIHRvIGJvdGggc2VsYnJpIGJvdW5kIGJ5IHRoZSBicmlkaS10YWlsIGxvZ2lj YWwgY29ubmVjdGl2ZSwgYnV0IGFueSBmb2xsb3dpbmcgdGVybXMgb25seSBhcHBsaWVzIHRvIHRo ZSBsYXN0IG1lbnRpb25lZDogVGhlIGJyaWRpIHNwbGl0cyB1cCBmcm9tIG9uZSBoZWFkIHRvIHR3 byB0YWlscywgdG8gc3BlYWsgbWV0YXBob3JpY2FsbHkuClRoZSBmb3JtIG9mIGEgYnJpZGktdGFp bCBsb2dpY2FsIGNvbm5lY3RpdmUgaXMgZ2nigJlWLCB3aXRoIHRoZSBWIGZvciB0aGUgdm93ZWwg b2YgdGhlIHRydXRoIGZ1bmN0aW9uLgpIb3cgY291bGQgeW91IGNvcnJlY3RseSB0cmFuc2xhdGUg dGhlIEVuZ2xpc2ggc2VudGVuY2UgdG8gTG9qYmFuPwoKQW5zd2VyOiBtaSBwdSBrbGFrdSBnaeKA mWUgZHVuZGEgbGUgbWkgZ2Vya3UKCldoYXQgZG9lcyBybyByZW1uYSBwYWxjaSBnaeKAmW8genVr dGUgbG8gcGFsY2kgbWVhbj8KcGFsY2kgeDEgaXMgZXZpbCBieSBzdGFuZGFyZCB4MgoKQW5zd2Vy OiDigJxQZW9wbGUgYXJlIGV2aWwgaWYgYW5kIG9ubHkgaWYgdGhleSBkbyBldmlsIHRoaW5ncy7i gJ0KCkZ1cnRoZXJtb3JlLCB0aGVyZSBpcyBhIGZvcmV0aG91Z2h0IGFsbC1idXQgdGFucnUgaW50 ZXJuYWwgZ3JvdXAgb2YgY29ubmVjdGVycyBtYWRlIGJ5IHByZWZpeGluZyDigJxn4oCdIGluIGZy b250IG9mIHRoZSB0cnV0aCBmdW5jdGlvbiB2b3dlbC4g4oCcRm9yZXRob3VnaHTigJ0gaW4gdGhp cyBjb250ZXh0IG1lYW5zIHRoYXQgdGhleSBuZWVkIHRvIGdvIGluIGZyb250IG9mIHRoZSB0aGlu Z3MgdGhleSBjb25uZWN0LCBhbmQgdGh1cyB5b3UgbmVlZCB0byB0aGluayBhYm91dCB0aGUgZ3Jh bW1hdGljYWwgc3RydWN0dXJlIG9mIHRoZSBzZW50ZW5jZSBiZWZvcmUgc2F5aW5nIGl0LiBBbGwt YnV0IHRhbnJ1IGludGVybmFsIG1lYW5zIHRoYXQgaXQgc2VydmVzIGJvdGggYXMgYSBjb25uZWN0 aXZlIGJldHdlZW4gc3VtdGksIGJyaWRpLCBzZWxicmkgYW5kIGJyaWRpLXRhaWxzLCBidXQgbm90 IGJldHdlZW4gdHdvIHNlbGJyaSBvZiBvbmUgdGFucnUuIExldCBtZSBzaG93IHlvdSBob3cgaXQg d29ya3MsIHJld3JpdGluZyB0aGUgTG9qYmFuIHNlbnRlbmNlIGFib3ZlOgpnbyBsbyByZW1uYSBj dSBwYWxjaSBnaSBsbyByZW1uYSBjdSB6dWt0ZSBsbyBwYWxjaQpUaGUgZmlyc3QgbG9naWNhbCBj b25uZWN0aXZlIGluIHRoZXNlIGtpbmRzIG9mIGNvbnN0cnVjdHMgYXJlIHdoYXQgY2FycmllcyB0 aGUgdm93ZWwgd2hpY2ggc2lnbmFsIHdoYXQgdHJ1dGggZnVuY3Rpb24gaXMgYmVpbmcgdXNlZC4g VGhlIHNlY29uZCBsb2dpY2FsIGNvbm5lY3RpdmUgaXMgYWx3YXlzIGdpLCBhbmQgbGlrZSAuaSwg aXQgaGFzIG5vIHRydXRoIGZ1bmN0aW9uLiBJdCBzaW1wbHkgc2VydmVzIHRvIHNlcGVyYXRlIHRo ZSB0d28gdGVybXMgYmVpbmcgY29ubmVjdGVkLiBJZiB5b3Ugd2FudCB0byBuZWdhdGUgdGhlIGZp cnN0IG9yIHNlY29uZCBzZW50ZW5jZSwgYSBuYWkgaXMgc3VmZml4ZWQgdG8gZWl0aGVyIHRoZSBm aXJzdCAoZm9yIHRoZSBmaXJzdCBzZW50ZW5jZSkgb3Igc2Vjb25kIChmb3IgdGhlIHNlY29uZCBz ZW50ZW5jZSkgbG9naWNhbCBjb25uZWN0aXZlLgpQcm92aWRlZCB0aGF0IHRoZSBjb25zdHJ1Y3Rz IGFyZSB0ZXJtaW5hdGVkIHByb3Blcmx5LCBpdCBoYXMgcmVtYXJrYWJsZSBmbGV4aWJpbGl0eSwg YXMgdGhlIGZvbGxvd2luZyBmZXcgZXhhbXBsZXMgZGVtb25zdHJhdGU6Cm1pIGdvIGtsYW1hIGdp IGNhZHp1IHZhdSBsZSBtaSB6ZGFuaSDigJxJIGdvLCBpZiBhbmQgb25seSBpZiB3YWxrLCB0byBt eSBob21l4oCdIG9yIOKAnEkgY2FuIG9ubHkgZ28gdG8gbXkgaG9tZSBieSB3YWxraW5nLuKAnSBO b3RpY2UgdGhhdCB0aGUgdmF1IGlzIG5lZWRlZCB0byBtYWtlIGxlIG1pIHpkYW5pIGFwcGx5IHRv IGJvdGggY2FkenUgYW5kIGtsYW1hLgpzZSBndSBkbyBnaSBuYWkgbWkgYmFqcmEgbGUgZG8gY2t1 bGUg4oCcV2hldGhlciBvciBub3QgeW91LCB0aGVuIG5vdCBJLCBydW4gdG8geW91ciBzY2hvb2zi gJ0gb3Ig4oCcSSB3b27igJl0IHJ1biB0byB5b3VyIHNjaG9vbCBubyBtYXR0ZXIgaWYgeW91IGRv IG9yIG5vdOKAnQoKVGhlIHRhbnJ1LWludGVybmFsIGVxdWl2YWxlbnQgb2YgZ1YgaXMgZ3XigJlW LiBUaGVzZSBhcmUgZXhhY3RseSB0aGUgc2FtZSwgZXhjZXB0IHRoYXQgdGhleSBhcmUgZXhjbHVz aXZlbHkgdGFucnUtaW50ZXJuYWwsIGFuZCB0aGF0IHRoZXkgYmluZCBhIHNlbGJyaSB0byB0aGUg Z2kgdGlnaHRlciB0aGFuIG5vcm1hbCB0YW5ydS1ncm91cGluZywgYnV0IHdlYWtlciB0aGFuIGV4 cGxpY2l0IGJpbmRpbmctc3VtdGk6CmxhIGhhbnoua3J0LiBndeKAmWUgbWVya28gZ2kgZG90Y28g bmFubXUgaXMgZXF1aXZhbGVudCB0bwpsYSBoYW56LmtydC4gbWVya28gamUgZG90Y28gbmFubXUK CkFuZCBzbyB5b3XigJl2ZSByZWFkIHBhZ2UgdXAgYW5kIHBhZ2UgZG93biBqdXN0IHRvIGdldCB0 aGUgbmVjZXNzYXJ5IGtub3dsZWRnZSBpbiBvcmRlciB0byBiZSBhYmxlIHRvIGxlYXJuIGhvdyB0 byBhc2sg4oCcV291bGQgeW91IGxpa2UgbWlsayBvciBzdWdhciBpbiB5b3VyIGNvZmZlZT/igJ0g aW4gTG9qYmFuLiBTaW1wbHkgcGxhY2UgYSBxdWVzdGlvbiBsb2dpY2FsIGNvbm5lY3RpdmUgaW5z dGVhZCBvZiBhbm90aGVyIGxvZ2ljYWwgY29ubmVjdGl2ZSwgYW5kIGxpa2UgbWEsIGl0IGFza3Mg dGhlIGxpc3RlbmVyIHRvIGZpbGwgaW4gYSBjb3JyZWN0IHJlc3BvbnNlLiBVbmZvcnR1bmF0ZWx5 LCB0aGVzZSBxdWVzdGlvbi1sb2dpY2FsIGNvbm5lY3RpdmVzIGRvbuKAmXQgYWx3YXlzIG1hdGNo IHRoZSBwYXR0ZXJuIG9mIHRoZSBsb2dpY2FsIGNvbm5lY3RpdmVzIHRoZXkgYXNrIGZvcjoKamkg TG9naWNhbCBjb25uZWN0aXZlIHF1ZXN0aW9uOiBBc2tzIGZvciBhIHN1bXRpIGxvZ2ljYWwgY29u bmVjdGl2ZSAoQSkKamXigJlpIExvZ2ljYWwgY29ubmVjdGl2ZSBxdWVzdGlvbjogQXNrcyBmb3Ig YSB0YW5ydS1pbnRlcm5hbCBzZWxicmkgbG9naWNhbCBjb25uZWN0aXZlIChKQSkKZ2nigJlpIExv Z2ljYWwgY29ubmVjdGl2ZSBxdWVzdGlvbjogQXNrcyBmb3IgYSBicmlkaS10YWlsIGxvZ2ljYWwg Y29ubmVjdGl2ZSAoR0loQSkKZ2XigJlpIExvZ2ljYWwgY29ubmVjdGl2ZSBxdWVzdGlvbjogQXNr cyBmb3IgYSBmb3JldGhvdWdodCBhbGwtYnV0IHRhbnJ1IGludGVybmFsIGxvZ2ljYWwgY29ubmVj dGl2ZSAoR0EpCmd14oCZaSBMb2dpY2FsIGNvbm5lY3RpdmUgcXVlc3Rpb246IEFza3MgZm9yIGEg Zm9yZXRob3VnaHQgb25seSB0YW5ydSBpbnRlcm5hbCBsb2dpY2FsIGNvbm5lY3RpdmUgKEdVaEEp CgpTby4uLiBob3cgd291bGQgeW91IGFzayBpZiB0aGUgcGVyc29ucyB3YW50cyBtaWxrIG9yIHN1 Z2FyIGluIGhlciBjb2ZmZWU/CmxhZHJ1IHgxIGlzL2NvbnRhaW5zIG1pbGsgZnJvbSBzb3VyY2Ug eDIKc2FrdGEgeDEgaXMvY29udGFpbnMgc3VnYXIgZnJvbSBzb3VyY2UgeDIgb2YgY29tcG9zaXRp b24geDMKClBvc3NpYmxlIGFuc3dlcjogc2FrdGEgamXigJlpIGxhZHJ1IGxlIGRvIGNrYWZpIHRo b3VnaCBJIGd1ZXNzIHNvbWV0aGluZyBtb3JlIEVuZ2xpc2ggYW5kIGxlc3MgZWxlZ2FudCBjb3Vs ZCBhbHNvIHN1ZmZpY2UgbGlrZSBkbyBkamljYSBsZW51IGxvIHNha3RhIGppIGxvIGxhZHJ1IGN1 IG5lbnJpIGxlIGRvIGNrYWZpCgohIUxvamJhbiBMZXNzb25zIC0gTGVzc29uIHR3ZW50eS1maXZl IChsb2piYW4gbG9naWM6IGRhLCBideKAmWEsIHpv4oCZdSBhbmQgdGVybXMpCgohIUxvamJhbiBM ZXNzb25zIC0gTGVzc29uIHR3ZW50eS1zaXggKG5vdGVzIG9uIGFic3RyYWN0b3JzKQpUaGUgbm90 aW9uIG9mIGFic3RyYWN0aW9ucyBhbmQgYWJzdHJhY3RvcnMgaXMgcXVpdGUgZnVuZGFtZW50YWwg dG8gTG9qYmFuLCBhbmQgeW91IGhhdmUgYWxyZWFkeSBsZWFybmVkIHRoZSBtZWNoYW5pc20gdHdl bnR5IGxlc3NvbnMgYWdvLiBUaGVyZSBhcmUsIGhvd2V2ZXIsIG1hbnkgYWJzdHJhY3RvcnMgd2l0 aCBzbGlnaHRseSBkaWZmZXJlbnQgc2VtYW50aWMgbWVhbmluZyB0byBleHBsb3JlLCBhcyB3ZWxs IGFzIGEgc2luZ2xlIGltcG9ydGFudCBtZWNoYW5pc20gd2hpY2ggaGFzIG5vdCBiZWVuIGNvdmVy ZWQgeWV0LiBJbiB0aGlzIGxlc3NvbiwgYWxsIHR3ZWx2ZSBhYnN0cmFjdG9ycyB3aWxsIGJlIGVs YWJvcmF0ZWQgb24uIFRoZSB0ZXJtaW5hdG9yIGZvciBhbGwgb2YgdGhlc2UgaXMga2VpLgoKVGhl IGZpcnN0IGFuZCBtb3N0IGJhc2ljIGFic3RyYWN0b3IgaXMgc3XigJl1LCB3aGljaCB5b3UgYWxy ZWFkeSBrbm93LgpzdeKAmXUgeDEgaXMgYW4gYWJzdHJhY3QgbmF0dXJlIG9mIEJSSURJIG9mIHR5 cGUgeDIKWW91IG1pZ2h0IG5vdCBoYXZlIHNlZW4gdGhlIGRlZmluaXRpb24gb2Ygc3XigJl1LiBU aGlzIHdvdWxkIGhhdmUgbmVlZGxlc3NseSBjb25mdXNlZCBpbiBlYXJsaWVyIGNoYXB0ZXJzLiBU aGUgbmV3IGluZm9ybWF0aW9uIGlzIHRoZSB4MiBvZiB7c3XigJl1IEJSSURJfSwgd2hpY2ggY2Fu IGJlIGV4cGxhaW5lZCBhcyBmb2xsb3dzOgpUaGUgRW5nbGlzaCBwaHJhc2Ug4oCcdGhhdCBJIGxv dmUgeW914oCdIGlzIGRlZmluaXRlbHkgYSBzdW10aSwgc2luY2UgaXTigJlzIG1lYW50IHRvIGZ1 bmN0aW9uIGFzIGEgc3ViamVjdCBvciBvYmplY3QgaW4gYSBzZW50ZW5jZS4gSXTigJlzIGFsc28g Y2xlYXJseSBtYWRlIGZyb20gYW4gYWJzdHJhY3Rpb24uIEl0IGNhbiB0aGVyZWZvcmUgYmUgdHJh bnNsYXRlZCB7KGxvL2xlKSBzdeKAmXUgbWkgZG8gcHJhbWl9LiBXaXRob3V0IHRoZSBjb250ZXh0 IG9mIHRoZSBFbmdsaXNoIHNlbnRlbmNlLCB0aG91Z2gsIGl04oCZcyBoYXJkIHRvIGd1ZXNzIHdo YXQga2luZCBvZiBhYnN0cmFjdGlvbiB3YXMgbWVhbnQuIOKAnEkgd2lsbCBkaWUgaGFwcHkgYnkg dGhlIHRpbWUgdGhhdCBJIGxvdmUgeW91LuKAnSB0cmVhdHMgdGhlIGFic3RyYWN0aW9uIGxpa2Ug YW4gZXZlbnQgaGFwcGVuaW5nIGluIHRpbWUuIOKAnFRoZSB0cnV0aCBpcyB0aGF0IEkgbG92ZSB5 b3Uu4oCdIHRyZWF0cyB0aGUgYWJzdHJhY3Rpb24gbGlrZSBhIGJyaWRpLCB3aGljaCBjYW4gYmUg Y29uc2lkZXJlZCB0cnVlIG9yIGZhbHNlLiBJbiB0aGUgc2VudGVuY2Ug4oCcVGhlIG1vc3QgYmVh dXRpZnVsIHRoaW5nIGluIHRoZSB3b3JsZCBpcyB0aGUgaWRlYSB0aGF0IEkgbG92ZSB5b3XigJ0s IHRoZSBhYnN0cmFjdGlvbiBpcyBjb25zaWRlcmVkIGFuIGFic3RyYWN0IGNvbmNlcHQuIFVzaW5n IHRoZSBzZWNvbmQgc3VtdGkgcGxhY2Ugb2Ygc3XigJl1LCB0aGVzZSBjYW4gYmUgZXhwbGljaXRs eSBkaXN0aW5ndWlzaGVkIGJldHdlZW46CmxlIHN14oCZdSBtaSBkbyBwcmFtaSBrZWkgYmUgbG8g ZmFzbnUgaXMgYW4gZXZlbnQuCmxlIHN14oCZdSBtaSBkbyBwcmFtaSBrZWkgYmUgbG8gYnJpZGkg aXMgYSBicmlkaS4KbGUgc3XigJl1IG1pIGRvIHByYW1pIGtlaSBiZSBsbyBzaWRibyBpcyBhIGNv bmNlcHQuCgpVc2luZyBzdeKAmXUgdGhpcyB3YXksIHRoZSBzZW1hbnRpYywgdGhvdWdoIHBlcmhh cHMgbm90IGdyYW1tYXRpY2FsLCByYW5nZSBvZiBhbGwgYWJzdHJhY3RvcnMgY2FuIGJlIGNvdmVy ZWQuIE1vcmUgdXN1YWxseSwgdGhvdWdoLCBvdGhlciBhYnN0cmFjdG9ycyBhcmUgdXNlZC4gbnUs IHdoaWNoIHlvdSBhbHNvIGtub3csIHRyZWF0cyB0aGUgYWJzdHJhY3Rpb24gYXMgYW4gZXZlbnQu Cm51IHgxIGlzIGFuIGV2ZW50IG9mIEJSSURJCgpUaGVyZSBhcmUgbWFueSB3YXlzIHRvIHZpZXcg YW4gZXZlbnQsIGFuZCBzbyB0aGVyZSBhcmUgZm91ciBvdGhlciBhYnN0cmFjdG9ycyB3aG9zZSBz ZW1hbnRpYyBhcmUgYWxsIGNvdmVyZWQgYnkgbnUsIGJ1dCBtb3JlIHNwZWNpZmljLgptdeKAmWUg eDEgaXMgYSBwb2ludC1saWtlIGV2ZW50IG9mIEJSSURJIGhhcHBlbmluZwp6YeKAmWkgeDEgaXMg YSBzdGF0ZSBvZiBCUklESSBiZWluZyB0cnVlCnB14oCZdSB4MSBpcyBhIHByb2Nlc3Mgb2YgQlJJ REkgdW5mb2xkaW5nIHRocm91Z2ggc3RhZ2VzIHgyCnp14oCZbyB4MSBpcyBhbiBhY3Rpdml0eSBv ZiBCUklESSBjb25zaXN0aW5nIG9mIHRoZSByZXBlYXRlZCBldmVudCBvZiB4MgoKVGhlIHVuZGVy c3RhbmRpbmcgb2YgdGhlc2UgYWJzdHJhY3RvcnMgaXMgdGllZCB0byB0aGUgdW5kZXJzdGFuZGlu ZyBvZiBldmVudCBjb250b3Vycy4gbXXigJllIGlzIGFraW4gdG8gdGhlIGV2ZW50IGNvbnRvdXIg Y2/igJlpIGluIHRoZSBzZW5zZSB0aGF0IGJvdGggdHJlYXQgdGhlIGJyaWRpIGFzIHBvaW50LWxp a2UgaW4gdGltZSBhbmQgc3BhY2U6CmxlIG114oCZZSBtaSBrYW5ybyBiaW54byBjdSBzZSBkamlj YSBtaSDigJMg4oCdTWUgYmVjb21pbmcgaGVhbHRoeSBpcyBkZXNpcmVkIGJ5IG1l4oCdIGhhcyB0 aGUgc2VtYW50aWMgbWVhbmluZyB0aGF0IHRoZSBwcm9jZXNzIG9mIGJlY29taW5nIGhlYWx0aHkg aXMgbm90IGJlaW5nIGNvbnNpZGVyZWQuIElmIGl0IGNvbnNpc3RzIG9mIGNoZW1vdGhlcmFweSwg aXQgaXMgcGxhdXNpYmxlIHRoYXQgdGhpcyBwcm9jZXNzIGlzIG5vdCBkZXNpcmVkIGF0IGFsbC4g 4oCcQmVjb21pbmcgaGVhbHRoeeKAnSwgaW4gYSBwb2ludC1saWtlIHNlbnNlIGlzIGRlc2lyZWQs IGhvd2V2ZXIuCgp6YeKAmWkgaXMgbGlrZSB0aGUgZXZlbnQgY29udG91ciBjYeKAmW8gaW4gdGhl IHNlbnNlIHRoYXQgbGUgemHigJlpIGJyaWRpIGJlZ2lucyB0byBhcHBseSB3aGVuIHRoZSBicmlk aSBiZWdpbnMgYW5kIHNoYXJwbHkgZW5kcyB3aGVuIHRoZSBicmlkaSBjZWFzZXMgdG8gYmUgdHJ1 ZSwgbXVjaCBsaWtlIGNh4oCZby4KemHigJlvIHph4oCZaSBtaSBrYW5ybyBiaW54byBtZWFucyB0 aGF0IHRoZSBzdGF0ZSBvZiBtZSBiZWNvbWluZyBoZWFsdGh5IHRvb2sgdG9vIGxvbmcgdGltZTsg dGhhdCB0aGUgdGltZSBiZXR3ZWVuIG15IGhlYWx0aCBiZWdpbm5pbmcgdG8gaW1wcm92ZSBhbmQg YmUgYWN0dWFsbHkgYmVpbmcgaGVhbHRoeSB3YXMgbG9uZy13aW5kZWQuCgpUaGUgYWN0dWFsIHRy ZWF0bWVudCBpcyBwZXJoYXBzIGJldHRlciBjYXVnaHQgYnkgcHXigJl1LCB3aGljaCwgbGlrZSBl dmVudCBjb250b3VycyBpbiBnZW5lcmFsLCBwdXRzIGVtcGhhc2lzIG9uIHRoZSBlbnRpcmUgZXZl bnQgYXMgdW5mb2xkaW5nIHRocm91Z2ggdGltZS4gLmlpIGJhIHppIGNv4oCZYSBwdeKAmXUgbWkg a2Fucm8gYmlueG8gdmF1IC5vaSBleHByZXNzZXMgZmVhciB0aGF0IHRoZSBwYWluZnVsIHByb2Nl c3Mgb2YgYmVjb21pbmcgaGVhbHRoeSBpcyBhYm91dCB0byBiZWdpbi5UaGUgeDIgaXMgZmlsbGVk IGJ5IGEgc2VxdWVuY2Ugb2Ygc3RhZ2VzLCB3aGljaCBjYW4gYmUgbWFkZSBieSBpbnRlcnNwYWNp bmcgdGhlIHN0YWdlcyB3aXRoIHRoZSBub24tbG9naWNhbCBjb25uZWN0aXZlIGNl4oCZbzogemXi gJl1IHB14oCZdSBtaSBrYW5ybyBiaW54byBrZWkgbGUgbnUgbWkgZmFja2kgY2XigJlvIGxlIG51 IG1pIGphaSB0b2xzdGkgY2XigJlvIG1pIEVORFVSRSBtZWFucyDigJxzb21ldGhpbmcgaXMgYSBs b25nIHByb2Nlc3Mgb2YgbWUgYmVjb21pbmcgaGVhbHRoeSBjb25zaXN0aW5nIG9mIHRoZSBzdGFn ZXMgQSkgSSBmaW5kIG91dCBCKSBzb21ldGhpbmcgYWJvdXQgbWUgYmVnaW5zIEMpIEkgZW5kdXJl LuKAnQoKRmluYWxseSwgdGhlIHNlbWFudGljcyBvZiB6deKAmW8gdHJlYXRzIHRoZSBhYnN0cmFj dGlvbiBhcyBjb25zaXN0aW5nIG9mIHJlYXBlYXRlZCBhY3Rpb25zOiBqaWJyaSBtaSBmYSBsbyB6 deKAmW8gbWkgemJhc3UgbG8ga2FyY2Ug4oCTIOKAnFRoZSBhY3Rpdml0eSBvZiBtZSBtYWtpbmcg Y2FycyBpcyBteSBqb2LigJ0gaXMgYWNjdXJhdGUgaWYsIGZvciBpbnN0YW5jZSwgdGhlIHNwZWFr ZXIgd29ya3MgYXQgYSBjYXItcHJvZHVjaW5nIGZhY3RvcnkuIEhlcmUsIGhlciBhY3Rpdml0eSBv ZiBwcm9kdWNpbmcgY2FycyBjb25zaXN0cyBvZiB0aGUgcmVwZWF0ZWQgYWN0aW9ucyBBKSBzaGUg bG93ZXJzIGZyYW1lIDEgb250byBjYXIgMSBCKSBzaGUgd2VsZHMgZnJhbWUgMSB0byBjYXIgMSwg QykgcmVwZWF0IHdpdGggY2FyIDIuIFRoZSB4MiBoZXJlIGlzIGFsc28gYSBzZXF1ZW5jZS4KCk5v dGUgdGhlIGRpZmZlcmVuY2UgYmV0d2VlbiBtdeKAmWUgYmFqcmEsIHph4oCZaSBiYWpyYSwgcHXi gJl1IGJhanJhLCB6deKAmW8gYmFqcmEgYW5kIG51IGJhanJhLiBUaGUgcG9pbnQtbGlrZSBldmVu dCBvZiBydW5uaW5nIHB1dHMgZW1waGFzaXMgb24gdGhlIGV2ZW50IGhhcHBlbmluZywgYnV0IG5v dGhpbmcgZWxzZS4gVGhlIHN0YXRlIG9mIHJ1bm5pbmcgYmVnaW5zIHdoZW4gdGhlIHJ1bm5lciBi ZWdpbnMgYW5kIHN0b3BzIHdoZW4gdGhlIHJ1bm5lciBzdG9wcy4gVGhlIHByb2Nlc3Mgb2YgcnVu bmluZyBjb25zaXN0cyBvZiBhIHdhcm0tdXAsIGtlZXBpbmcgYSBzdGVhZHkgc3BlZWQsIGFuZCB0 aGUgZmluYWwgc3ByaW50LiBUaGUgYWN0aXZpdHkgb2YgcnVubmluZyBjb25zaXN0cyB0aGUgY3lj bGVzIG9mIGxpZnRpbmcgb25lIGZvb3QsIG1vdmluZyBpdCBmb3J3YXJkLCBkcm9wcGluZyBpdCBk b3duLCByZXBlYXQgd2l0aCB0aGUgb3RoZXIgZm9vdC4gQWxsIG9mIHRoZXNlIGFyZSBjb3ZlcmVk IGJ5IHRoZSBldmVudCBvZiBydW5uaW5nLgoKVGhlIGFic3RyYWN0b3IgZHXigJl1IGhhcyBub3Ro aW5nIHRvIGRvIHdpdGggZXZlbnRzIGFuZCBvbmx5IGNvbnNpZGVycyB0aGUgYnJpZGkgaW5zaWRl IHRoZSBhYnN0cmFjdGlvbiBhcyBhIGJyaWRpOgoudWkgc2FpIHppIGZhY2tpIGxlIGR14oCZdSB6 aSBjaXRrYSBsbyBjaWRqcnBpdHNhIOKAkyDigJxZZXMhIEkganVzdCBmb3VuZCBvdXQgdGhhdCBw aXp6YSB3aWxsIGJlIGVhdGVuIHNvb24h4oCdLiBXaGF0IGlzIGJlaW5nIGRpc2NvdmVyZWQgaXMg dGhlIHRydXRoIG9mIGFuIGFic3RyYWN0IGJyaWRpLCBub3QgYW4gZXZlbnQuIEluIGdlbmVyYWws IGFic3RyYWN0aW9ucyBsaWtlIHRydXRocywgbGllcywgdGhpbmdzIGJlaW5nIGRpc2NvdmVyZWQg b3IgYmVsaWV2ZWQgYXJlIGFsbCBwdXJlIGJyaWRpLCBzbyBkdeKAmXUgaXMgYXBwcm9wcmlhdGUu IApkdeKAmXUgeDEgaXMgdGhlIGJyaWRpIG9mIEJSSURJIGV4cHJlc3NlZCBpbiBzZW50ZW5jZSB4 MgpGb3IgYnJpZGkgdG8gZXhpc3QgKG9yIGF0IGxlYXN0IHRvIGhhdmUgYW55IHJlbGV2YW5jZSks IHRoZXkgbXVzdCBiZSBleHByZXNzZWQgaW4gc29tZSBtZWRpdW0sIHdoZXRoZXIgdGhpcyBpcyBz cGVlY2gsIHRob3VnaHQgb3Igd3JpdGluZy4gVGhlIHRlcm0g4oCcZXhwcmVzc2Vk4oCdIGlzIG1p c2xlYWRpbmcgaWYgaXQgaXMgZXhwcmVzc2VkIG9ubHkgaW4gdGhlIG1pbmQgb2Ygc29tZW9uZSBi dXQgdGhlIHRlcm0gbm9uZXRoZWxlc3MgYXBwbGllcy4gU3BlY2lmeWluZyB3aGljaCBtZWRpdW0g dGhlIGJyaWRpIGlzIGV4cHJlc3NlZCBpbiBpcyB3aGF0IHRoZSB4MiBvZiBkdeKAmXUgaXMgdXNl ZCBmb3I6ICAudWkgZmFja2kgbGUgZHXigJl1IGphaSBjaWRqcnBpdHNhIGtlaSB6b+KAmWUgcGUg bGUgbWkgbWFtdGEg4oCTIOKAnFlheSwgZGlzY292ZXJlZCB0aGF0IHNvbWV0aGluZyBhYm91dCBw aXp6YSwgZXhwcmVzc2VkIGluIHNvbWV0aGluZyB0aGF0IGhhZCB0byBkbyB3aXRoIG15IG1vdGhl ciHigJ0uIFRoZSB0cmFuc2xhdGlvbiBpcyBjbHVtc3ksIGJ1dCBwcm9iYWJseSBtZWFucyB0aGF0 IHRoZSBzcGVha2Vy4oCZcyBtb3RoZXIgdG9sZCBoaW0gdGhhdCBwaXp6YSB3YXMgY29taW5nLgoK VGhlIG5leHQgYWJzdHJhY3Rvciwgc2nigJlvLCBpcyBkZXJpdmVkIGZyb20gdGhlIGdpc211IHNp ZGJvIG1lYW5pbmcg4oCcaWRlYeKAnS4gSXTigJlzIHJlbGF0aXZlbHkgZWFzeSB0byB1bmRlcnN0 YW5kOiBsZSBzaeKAmW8gbWkgbWFtdGEgaXMgdGhlIHZlcnkgaWRlYSB0aGF0IEkgYW0gYSBtb3Ro ZXIuIFNpbWlsYXJseSwgbGUgc2nigJlvIHByYW1pIGlzIOKAnFRoZSBjb25jZXB0IHRoYXQgc29t ZW9uZSBsb3ZlcyBzb21lb25l4oCdLCB3aGljaCBjYW4gYmUgdHJhbnNsYXRlZCBhcyBtZXJlbHkg 4oCcTG92ZSBpdHNlbGYu4oCdIEFsbCBpZGVhcyBuZWVkIHNvbWVvbmUgdG8gcmVmbGVjdCBvbiB0 aGVtLCBhbmQgdGhlIHNlY29uZCBzdW10aSBwbGFjZSBvZiBzaeKAmW8gbWlycm9ycyB0aGlzOgpz aeKAmW8geDEgaXMgYW4gaWRlYSBvZiBCUklESSBhcyBpbWFnaW5lZCBieSB4MgpsZSBzaeKAmW8g bmFubXUga2VpIGJlIGRvIGN1IHhsYWxpIHZhdSBwZeKAmWkg4oCTIOKAnFlvdXIgaWRlYSBvZiBt YW5saW5lc3MgaXMgaGFybWZ1bCwgSSB0aGluayzigJ0KClRoZSBhYnN0cmFjdG9yIGplaSBpcyB2 ZXJ5IGRpZmZlcmVudCBmcm9tIHRob3NlIGNvdmVyZWQgc28gZmFyLCBiZWNhdXNlIG9mIGl0cyBw bGFjZSBzdHJ1Y3R1cmU6CmplaSB4MSBpcyB0aGUgdHJ1dGggdmFsdWUgb2YgQlJJREkgdW5kZXIg ZXBpc3RlbW9sb2d5IHgyClRoZSBmaXJzdCBzdW10aSBwbGFjZSBpcyBub3QgYW4gYWJzdHJhY3Rl ZCBicmlkaSwgYnV0IGEgdmVyZGljdCBvZiB0cnV0aCwgd2hpY2ggbGllcyBiZXR3ZWVuIDAgKGZh bHNlKSBhbmQgMSAodHJ1dGgpIGluY2x1c2l2ZS4gVGhlc2UgdHdvIG51bWJlcnMgYXJlIHVzZWQg dG8gcmVwcmVzZW50IGZhbHNlaG9vZCBvciB0cnV0aCwgbm90IG1hdGhlbWF0aWNhbCBxdWFudGl0 eSwgYW5kIHRoZXJlZm9yZSBjYW5ub3QgYmUgdXNlZCBpbiBtYXRoZW1hdGljcy4ge2xlIGplaSBC UklESX0gaXMgbm90IGEgbnVtYmVyLCBidXQgYSB0cnV0aCB2ZXJkaWN0LCB3aGljaCBtaWdodCBi ZSByZXByZXNlbnRlZCBieSBhIG51bWJlciBvciBhbnkgb3RoZXIgc3ltYm9scy4KVGhlIHgyIGlz IG9mdGVuIGxlZnQgdmFndWUuCi55IGxpIHBpIHNv4oCZdSBqZWkgZ2/igJlpIGtlaSB0deKAmWEg bWkg4oCTIOKAnFV1aCwgdGhhdOKAmXMgbm90IHZlcnkgdHJ1ZSwgYWNjb3JkaW5nIHRvIG1lLuKA nQoKU2VtYW50aWNhbGx5IGNsb3NlIHRvIGplaSBpcyBuaSwgdGhlIGFtb3VudCBhYnN0cmFjdGlv bi4KbmkgeDEgaXMgdGhlIHF1YW50aXR5IG9mIEJSSURJIGFzIG1lYXN1cmVkIGF0IHNjYWxlIHgy CiBVbmxpa2UgdGhlIHgxIG9mIGplaSwgdGhlIHgxIG9mIG5pIGlzIGEgbnVtYmVyLiBJdCBpcyB1 c2VkIHRvIHF1YW50aWZ5IHdoYXRldmVyOyBzb21lIHRleHRzIHN0cmVzcyB0aGF0IHRob3NlIHRo aW5ncyB3aGljaCBhcmUgbm90IGVhc2lseSBxdWFudGlmaWFibGUgbGlrZSBsZSBuaSBtaSB0dW5i YSBkbywgdGhlIGFtb3VudCBvZiBtZSBiZWluZyB5b3VyIHNpYmxpbmcsIG1ha2VzIG5vIHNlbnNl LiBGb3Igb3RoZXJzIHRoaXMgaXMgYSBwZXJmZWN0bHkgcmVhc29uYWJsZSB0aGluZyB0byBzYXks IGV2ZW4gdGhvdWdoIGFjdHVhbGx5IHF1YW50aWZ5aW5nIGl0IGlzIG5vdCBwcmFjdGljYWwuCgoK X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KV2lraW5ldXJv dGljIG1haWxpbmcgbGlzdApXaWtpbmV1cm90aWNAbG9qYmFuLm9yZwpodHRwOi8vbWFpbC5sb2pi YW4ub3JnL21haWxtYW4vbGlzdGluZm8vd2lraW5ldXJvdGljCg==