Received: from localhost ([::1]:58285 helo=stodi.digitalkingdom.org) by stodi.digitalkingdom.org with esmtp (Exim 4.76) (envelope-from ) id 1Sqm9a-0002I2-PA; Mon, 16 Jul 2012 07:20:02 -0700 Received: from 173-13-139-235-sfba.hfc.comcastbusiness.net ([173.13.139.235]:34229 helo=digitalkingdom.org) by stodi.digitalkingdom.org with smtp (Exim 4.76) (envelope-from ) id 1Sqm9T-0002Hq-E5 for wikineurotic@lojban.org; Mon, 16 Jul 2012 07:20:00 -0700 Received: by digitalkingdom.org (sSMTP sendmail emulation); Mon, 16 Jul 2012 07:19:52 -0700 From: "Apache" Date: Mon, 16 Jul 2012 07:19:52 -0700 To: wikineurotic@lojban.org X-PHP-Originating-Script: 48:htmlMimeMail.php MIME-Version: 1.0 Message-ID: X-Spam-Score: 2.5 (++) X-Spam_score: 2.5 X-Spam_score_int: 25 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 selci'a sera'a lai pokemon. was changed by jandew at 09:19 CDT Comment: Added a bunch of text. Started formatting it. You can view the page by following this link: http://www.lojban.org/tiki/selci%27a%20sera%27a%20lai%20pokemon. [...] Content analysis details: (2.5 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 1.6 RCVD_IN_BRBL_LASTEXT RBL: RCVD_IN_BRBL_LASTEXT [173.13.139.235 listed in bb.barracudacentral.org] 0.0 T_FRT_PROFIT1 BODY: ReplaceTags: Profit (1) 0.5 NULL_IN_BODY FULL: Message has NUL (ASCII 0) byte in message 0.4 RDNS_DYNAMIC Delivered to internal network by host with dynamic-looking rDNS Subject: [Wikineurotic] Wiki page selci'a sera'a lai pokemon. changed by jandew 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 VGhlIHBhZ2Ugc2VsY2knYSBzZXJhJ2EgbGFpIHBva2Vtb24uIHdhcyBjaGFuZ2VkIGJ5IGphbmRl dyBhdCAwOToxOSBDRFQKQ29tbWVudDogQWRkZWQgYSBidW5jaCBvZiB0ZXh0LiBTdGFydGVkIGZv cm1hdHRpbmcgaXQuCgpZb3UgY2FuIHZpZXcgdGhlIHBhZ2UgYnkgZm9sbG93aW5nIHRoaXMgbGlu azoKIApodHRwOi8vd3d3LmxvamJhbi5vcmcvdGlraS9zZWxjaSUyN2ElMjBzZXJhJTI3YSUyMGxh aSUyMHBva2Vtb24uCgpZb3UgY2FuIHZpZXcgYSBkaWZmIGJhY2sgdG8gdGhlIHByZXZpb3VzIHZl cnNpb24gYnkgZm9sbG93aW5nIHRoaXMgbGluazogCmh0dHA6Ly93d3cubG9qYmFuLm9yZy90aWtp L3Rpa2ktcGFnZWhpc3RvcnkucGhwP3BhZ2U9c2VsY2klMjdhJTIwc2VyYSUyN2ElMjBsYWklMjBw b2tlbW9uLiZjb21wYXJlPTEmb2xkdmVyPTM0Jm5ld3Zlcj0zNQoKCioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqClRoZSBjaGFuZ2VzIGlu IHRoaXMgdmVyc2lvbiBmb2xsb3cgYmVsb3csIGZvbGxvd2VkIGFmdGVyIGJ5IHRoZSBjdXJyZW50 IGZ1bGwgcGFnZSB0ZXh0LgoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKgoKCistKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r LSstKy0rLSstKy0rLSstKy0rLSstKy0rCkBAIC1MaW5lczogNDU2LTQ2MyBjaGFuZ2VkIHRvICtM aW5lczogNDU2LTQ2MyBAQAorLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst Ky0rLSstKy0rLSstKy0rLSstKwp8fAoKLSAhISEgTm90aWZpY2F0aW9uczxiciAvPihEb24ndCBl eHBlY3QgdG9vIG11Y2ggZnJvbSB0aGlzIHNlY3Rpb24pCisgISEhIE5vdGlmaWNhdGlvbnMvVW5z b3J0ZWQKCi0gfHxJdCBkb2RnZWQgdGhlIHRocm93biBiYWxsISBUaGlzIHBva2Vtb24gY2FuJ3Qg YmUgY2F1Z2h0IHwgbG8gcG9rbWUgY3Ugcml2YmkgdHUnYSBsbyBzZSByZW5ybyBib2xjaSAuaSBs byB2YSBwb2ttZSBuYSBrYSdlIHNlIGthdmJ1CisgfHxfX0VuZ2xpc2hfX3xfX0xvamJhbl9fPGJy IC8+SXQgZG9kZ2VkIHRoZSB0aHJvd24gYmFsbCEgVGhpcyBwb2tlbW9uIGNhbid0IGJlIGNhdWdo dCB8IGxvIHBva21lIGN1IHJpdmJpIHR1J2EgbG8gc2UgcmVucm8gYm9sY2kgLmkgbG8gdmEgcG9r bWUgbmEga2EnZSBzZSBrYXZidQpZb3UgbWlzc2VkIHRoZSBwb2tlbW9uISAgICAgICAgfCBkbyBt YXRyZXJmbGkgbG8gcG9rbWUKRGFybiEgVGhlIHBva2Vtb24gYnJva2UgZnJlZSEgIHwgLm9pIGxv IHBva21lIGN1IHRvbHBpZnliaSdvCgorLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKwpAQCAtTGluZXM6IDQ4MC00ODIgY2hhbmdlZCB0byAr TGluZXM6IDQ4MC02MDYgQEAKKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r LSstKy0rLSstKy0rLSstKy0rLSsKVGhpcyByZXF1aXJlcyBTVFJFTkdUSCB0byBtb3ZlISAgIHwg ZG8gbml0Y3UgbG8ga2EgdHNhbGkga2VpIGxvIG51IG11dmdhdQpBbGwgeW91ciBpdGVtIG5lZWRz IGZ1bGZpbGxlZCEgICAgfCBsbyBkbyBkYWtsaSBjdSBjdWxubyB8fAorIC0tLS0KKyBITSB0ZWNo bmlxdWVzIGNhbid0IGJlIGRlbGV0ZWQhCisgV2VsY29tZSB0byBvdXIgI01PTiBDRU5URVIhIFdl IGhlYWwgeW91ciAjTU9OIGJhY2sgdG8gcGVyZmVjdCBoZWFsdGghIFNoYWxsIHdlIGhlYWwgeW91 ciAjTU9OPworIE9LLiBXZSdsbCBuZWVkeW91ciAjTU9OLgorIFRoYW5rIHlvdSEgWW91ciAjTU9O IGFyZSBmaWdodGluZyBmaXQhCisgV2UgaG9wZSB0byBzZWUgeW91IGFnYWluIQorIC0tLS0KKyBU aGlzIGFyZWEgaXMgcmVzZXJ2ZWQgZm9yIDIgZnJpZW5kcyB3aG8gYXJlIGxpbmtlZCBieSBjYWJs ZS4KKyBXZWxjb21lIHRvIHRoZSBDYWJsZSBDbHViISBQbGVhc2UgYXBwbHkgaGVyZS4gQmVmb3Jl IG9wZW5pbmcgdGhlIGxpbmssIHdlIGhhdmUgdG8gc2F2ZSB0aGUgZ2FtZS4gUGxlYXNlIHdhaXQu CisgVGhlIGxpbmsgaGFzIGJlZW4gY2xvc2VkIGJlY2F1c2Ugb2YgaW5hY3Rpdml0eS4KKyBQbGVh c2UgY29udGFjdCB5b3VyIGZyaWVuZCBhbmQgY29tZSBhZ2FpbiEKKyBQbGVhc2UgY29tZSBhZ2Fp biEKKyBXZSdyZSBtYWtpbmcgcHJlcGFyYXRpb25zLiBQbGVhc2Ugd2FpdC4KKyAtLS0tCisgPD4g dXNlZFNUUkVOR1RILgorIDw+IGNhbiBtb3ZlIGJvdWxkZXJzLgorIFRoZSBjdXJyZW50IGlzIG11 Y2ggdG9vIGZhc3QhCisgQ3ljbGluZyBpcyBmdW4hIEZvcmdldCBTVVJGaW5nIQorIEEgYmxpbmRp bmcgRkxBU0ggbGlnaHRzIHRoZSBhcmVhIQorIFdhcnAgdG8gdGhlIGxhc3QgI01PTiBDRU5URVIu CisgPD4gY2FuJ3QgdXNlIFRFTEVQT1JUIG5vdy4KKyA8PiBjYW4ndCBGTFkgaGVyZS4KKyBOb3Qg aGVhbHRoeSBlbm91Z2guCisgTm8hIEEgbmV3IEJBREdFIGlzIHJlcXVpcmVkLgorIFlvdSBjYW4n dCB1c2UgaXRlbXMgaGVyZS4KKyBZb3UgY2FuJ3QgZ2V0IG9mZiBoZXJlLgorIC0tLS0KKyA8PiBn b3QgPD4hCisgVGhlcmUncyBubyBtb3Jlcm9vbSBmb3IgI01PTiEKKyAgd2Fzc2VudCB0byAjTU9O Qk9YIAorICBvbiBQQyFUaGVyZSdzIG5vIG1vcmVyb29tIGZvciAjTU9OIVRoZSAjTU9OIEJPWGlz IGZ1bGwgYW5kIGNhbid0YWNjZXB0IGFueSBtb3JlIUNoYW5nZSB0aGUgQk9YIGF0YSAjTU9OIENF TlRFUiF0ZXh0L21hcFBhbGxldFRvd24udHhUaG9zZSAjIEJBTExzYXQgeW91ciB3YWlzdCFZb3Ug aGF2ZSAjTU9OIUl0J3MgZ3JlYXQgdGhhdHlvdSBjYW4gY2FycnkgYW5kdXNlICNNT04gYW55dGlt ZSwgYW55d2hlcmUhVGhpcyAjTU9OIEdZTWlzIGFsd2F5cyBjbG9zZWQuSSB3b25kZXIgd2hvIHRo ZUxFQURFUiBpcz9WSVJJRElBTiBHWU0nc0xFQURFUiByZXR1cm5lZCFZb3Ugd2FudCB0byBrbm93 YWJvdXQgdGhlIDIga2luZHNvZiBjYXRlcnBpbGxhciNNT04/T2gsIE9LIHRoZW4hQ0FURVJQSUUg aGFzIG5vcG9pc29uLCBidXRXRUVETEUgZG9lcy5XYXRjaCBvdXQgZm9yIGl0c1BPSVNPTiBTVElO RyFPaCBHcmFuZHBhISBEb24ndGJlIHNvIG1lYW4hSGUgaGFzbid0IGhhZCBoaXNjb2ZmZWUgeWV0 LldoZW4gSSBnbyBzaG9wIGluUEVXVEVSIENJVFksIEloYXZlIHRvIHRha2UgdGhld2luZGluZyB0 cmFpbCBpblZJUklESUFOIEZPUkVTVC5Zb3UgY2FuJ3QgZ290aHJvdWdoIGhlcmUhVGhpcyBpcyBw cml2YXRlcHJvcGVydHkhWWF3biFJIG11c3QgaGF2ZSBkb3plZG9mZiBpbiB0aGUgc3VuLkkgaGFk IHRoaXMgZHJlYW1hYm91dCBhIERST1daRUVlYXRpbmcgbXkgZHJlYW0uV2hhdCdzIHRoaXM/V2hl cmUgZGlkIHRoaXMgVE1jb21lIGZyb20/VGhpcyBpcyBzcG9va3khSGVyZSwgeW91IGNhbmhhdmUg dGhpcyBUTS4gcmVjZWl2ZWRUTTQyIQorIAorIFRNNDIgY29udGFpbnNEUkVBTSBFQVRFUi4uLi4u LlNub3JlLi4uWW91IGhhdmUgdG9vIG11Y2hzdHVmZiBhbHJlYWR5LkFoaCwgSSd2ZSBoYWQgbXlj b2ZmZWUgbm93IGFuZCBJZmVlbCBncmVhdCFTdXJlIHlvdSBjYW4gZ290aHJvdWdoIUFyZSB5b3Ug aW4gYWh1cnJ5P0kgc2VlIHlvdSdyZSB1c2luZ2EgI0RFWC5XaGVuIHlvdSBjYXRjaCBhI01PTiwg I0RFWGlzIGF1dG9tYXRpY2FsbHl1cGRhdGVkLldoYXQ/IERvbid0IHlvdWtub3cgaG93IHRvIGNh dGNoI01PTj9JJ2xsIHNob3cgeW91aG93IHRvIHRoZW4uVGltZSBpcyBtb25leS4uLkdvIGFsb25n IHRoZW4uRmlyc3QsIHlvdSBuZWVkdG8gd2Vha2VuIHRoZXRhcmdldCAjTU9OLlZJUklESUFOIENJ VFkgVGhlIEV0ZXJuYWxseUdyZWVuIFBhcmFkaXNlVFJBSU5FUiBUSVBTQ2F0Y2ggI01PTmFuZCBl eHBhbmQgeW91cmNvbGxlY3Rpb24hVGhlIG1vcmUgeW91IGhhdmUsdGhlIGVhc2llciBpdCBpc3Rv IGZpZ2h0IVRSQUlORVIgVElQU1RoZSBiYXR0bGUgbW92ZXNvZiAjTU9OIGFyZWxpbWl0ZWQgYnkg dGhlaXJQT1dFUiBQT0lOVHMsIFBQLlRvIHJlcGxlbmlzaCBQUCxyZXN0IHlvdXIgdGlyZWQjTU9O IGF0IGEjTU9OIENFTlRFUiFWSVJJRElBTiBDSVRZI01PTiBHWU1UaGUgR1lNJ3MgZG9vcnNhcmUg bG9ja2VkLi4uSXQncyBydW1vcmVkIHRoYXRDTEVGQUlSWXMgY2FtZWZyb20gdGhlIG1vb24hVGhl eSBhcHBlYXJlZCBhZnRlciBNT09OIFNUT05FZmVsbCBvbiBNVC5NT09OLlRoZXJlIGFyZW4ndCBt YW55c2VyaW91cyAjTU9OdHJhaW5lcnMgaGVyZSFUaGV5J3JlIGFsbCBsaWtlQlVHIENBVENIRVJz LGJ1dCBQRVdURVIgR1lNJ3NCUk9DSyBpcyB0b3RhbGx5aW50byBpdCFEaWQgeW91IGNoZWNrIG91 dHRoZSBNVVNFVU0/V2VyZW4ndCB0aG9zZWZvc3NpbHMgZnJvbSBNVC5NT09OIGFtYXppbmc/UmVh bGx5P1lvdSBhYnNvbHV0ZWx5aGF2ZSB0byBnbyFJdCdzIHJpZ2h0IGhlcmUhWW91IGhhdmUgdG8g cGF5dG8gZ2V0IGluLCBidXRpdCdzIHdvcnRoIGl0IVNlZSB5b3UgYXJvdW5kIVBzc3NzdCFEbyB5 b3Uga25vdyB3aGF0SSdtIGRvaW5nP1RoYXQncyByaWdodCFJdCdzIGhhcmQgd29yayFJJ20gc3By YXlpbmcgUkVQRUx0byBrZWVwICNNT05vdXQgb2YgbXkgZ2FyZGVuIVlvdSdyZSBhIHRyYWluZXJy aWdodD8gQlJPQ0snc2xvb2tpbmcgZm9yIG5ld2NoYWxsZW5nZXJzIUZvbGxvdyBtZSFJZiB5b3Ug aGF2ZSB0aGVyaWdodCBzdHVmZiwgZ290YWtlIG9uIEJST0NLIVRSQUlORVIgVElQU0FueSAjTU9O IHRoYXR0YWtlcyBwYXJ0IGluYmF0dGxlLCBob3dldmVyc2hvcnQsIGVhcm5zIEVYUCFOT1RJQ0Uh VGhpZXZlcyBoYXZlIGJlZW5zdGVhbGluZyAjTU9OZm9zc2lscyBhdCBNVC5NT09OISBQbGVhc2Ug Y2FsbFBFV1RFUiBQT0xJQ0V3aXRoIGFueSBpbmZvIVBFV1RFUiBNVVNFVU1PRiBTQ0lFTkNFUEVX VEVSIENJVFkjTU9OIEdZTUxFQURFUjogQlJPQ0tUaGUgUm9jayBTb2xpZCNNT04gVHJhaW5lciFQ RVdURVIgQ0lUWUEgU3RvbmUgR3JheUNpdHk6IFlvISFZb3UncmUgc3RpbGxzdHJ1Z2dsaW5nIGFs b25nYmFjayBoZXJlP0knbSBkb2luZyBncmVhdCFJIGNhdWdodCBhIGJ1bmNob2Ygc3Ryb25nIGFu ZHNtYXJ0ICNNT04hSGVyZSwgbGV0IG1lIHNlZXdoYXQgeW91IGNhdWdodCwhSGV5IVRha2UgaXQg ZWFzeSFZb3Ugd29uIGFscmVhZHkhSGVoIVlvdSdyZSBubyBtYXRjaGZvciBteSBnZW5pdXMhOiBI ZXksZ3Vlc3Mgd2hhdD9JIHdlbnQgdG8gQklMTCdzYW5kIGdvdCBoaW0gdG9zaG93IG1lIGhpcyBy YXJlI01PTiFUaGF0IGFkZGVkIGEgbG90b2YgcGFnZXMgdG8gbXkjREVYIUFmdGVyIGFsbCwgQklM TCdzd29ybGQgZmFtb3VzIGFzIGEjTUFOSUFDIUhlIGludmVudGVkIHRoZSNNT04gU3RvcmFnZVN5 c3RlbSBvbiBQQyFTaW5jZSB5b3UncmUgdXNpbmdoaXMgc3lzdGVtLCBnb3RoYW5rIGhpbSFXZWxs LCBJIGJldHRlcmdldCByb2xsaW5nIVNtZWxsIHlhIGxhdGVyIUhleSEgU3RheSBvdXQhSXQncyBu b3QgeW91cnlhcmQhIEh1aD8gTWU/SQAnbSBhbiBpbm5vY2VudGJ5c3RhbmRlciEgRG9uJ3R5b3Ug YmVsaWV2ZSBtZT8gcmVjb3ZlcmVkVE0yOCEKKyAKKyBJIGJldHRlciBnZXRtb3ZpbmchIEJ5ZSEK KyAKKyBNYWtlIHJvb20gZm9ydGhpcyFJIGNhbid0IHJ1biB1bnRpbEkgZ2l2ZSBpdCB0byB5b3Uh U3RvcCFJIGdpdmUgdXAhIEknbGxsZWF2ZSBxdWlldGx5IU9LISBJJ2xsIHJldHVybnRoZSBUTSBJ IHN0b2xlIVlvdSdyZSBhIHRyYWluZXJ0b28/IENvbGxlY3RpbmcsZmlnaHRpbmcsIGl0J3MgYXRv dWdoIGxpZmUuVGhhdCBidXNoIGluZnJvbnQgb2YgdGhlIHNob3BpcyBpbiB0aGUgd2F5LlRoZXJl IG1pZ2h0IGJlIGF3YXkgYXJvdW5kLllvdSdyZSBtYWtpbmcgYW5lbmN5Y2xvcGVkaWEgb24jTU9O PyBUaGF0c291bmRzIGFtdXNpbmcuVGhlIHBlb3BsZSBoZXJld2VyZSByb2JiZWQuSXQncyBvYnZp b3VzIHRoYXRURUFNIFJPQ0tFVCBpc2JlaGluZCB0aGlzIG1vc3RoZWlub3VzIGNyaW1lIUV2ZW4g b3VyIFBPTElDRWZvcmNlIGhhcyB0cm91Ymxld2l0aCB0aGUgUk9DS0VUcyFPSyEgU0xPV0JSTyFV c2UgU09OSUNCT09NIUNvbWUgb24sIFNMT1dCUk9wYXkgYXR0ZW50aW9uIVNMT1dCUk8gcHVuY2gh Tm8hIFlvdSBibGV3IGl0YWdhaW4hU0xPV0JSTywgV0lUSERSQVchTm8hIFRoYXQncyB3cm9uZyFJ dCdzIHNvIGhhcmQgdG9jb250cm9sICNNT04hWW91ciAjTU9OJ3NvYmVkaWVuY2UgZGVwZW5kc29u IHlvdXIgYWJpbGl0aWVzYXMgYSB0cmFpbmVyIVNMT1dCUk8gdG9vayBhc25vb3plLi4uU0xPV0JS TyBpc2xvYWZpbmcgYXJvdW5kLi4uU0xPV0JSTyB0dXJuZWRhd2F5Li4uU0xPV0JST2lnbm9yZWQg b3JkZXJzLi4uSSB3YW50IGEgYnJpZ2h0cmVkIEJJQ1lDTEUhSSdsbCBrZWVwIGl0IGF0aG9tZSwg c28gaXQgd29uJ3RnZXQgZGlydHkhVGhpcyBpcyBDRVJVTEVBTkNBVkUhIEhvcnJpYmx5c3Ryb25n ICNNT05saXZlIGluIHRoZXJlIVRoZSAjTU9OIExFQUdVRWNoYW1waW9uIGlzIHRoZW9ubHkgcGVy c29uIHdob2lzIGFsbG93ZWQgaW4hQ0VSVUxFQU4gQ0lUWUEgTXlzdGVyaW91cyxCbHVlIEF1cmFT dXJyb3VuZHMgSXRUUkFJTkVSIFRJUFNQcmVzc2luZyBCIEJ1dHRvbmR1cmluZyBldm9sdXRpb25j YW5jZWxzIHRoZSB3aG9sZXByb2Nlc3MuR3Jhc3MgYW5kIGNhdmVzaGFuZGxlZCBlYXNpbHkhQklL RSBTSE9QQ0VSVUxFQU4gQ0lUWSNNT04gR1lNTEVBREVSOiBNSVNUWVRoZSBUb21ib3lpc2hNZXJt YWlkIURvIHlvdSBiZWxpZXZlIGluR0hPU1RzP1JlYWxseT8gU28gdGhlcmVhcmUgYmVsaWV2ZXJz Li4uSGFoYWhhLCBJIGd1ZXNzbm90LlRoYXQgd2hpdGUgaGFuZG9uIHlvdXIgc2hvdWxkZXIsaXQn cyBub3QgcmVhbC5UaGlzIHRvd24gaXMga25vd25hcyB0aGUgZ3JhdmUgc2l0ZW9mICNNT04uTWVt b3JpYWwgc2VydmljZXNhcmUgaGVsZCBpbiNNT04gVE9XRVIuR0hPU1RzIGFwcGVhcmVkaW4gI01P TiBUT1dFUi5JIHRoaW5rIHRoZXkncmV0aGUgc3Bpcml0cyBvZiNNT04gdGhhdCB0aGVST0NLRVRz IGtpbGxlZC5MQVZFTkRFUiBUT1dOVGhlIE5vYmxlIFB1cnBsZVRvd25OZXcgU0lMUEggU0NPUEUh TWFrZSB0aGUgSW52aXNpYmxlUGxhaW4gdG8gU2VlIVNJTFBIIENPLkxBVkVOREVSIFZPTFVOVEVF UiNNT04gSE9VU0VNYXkgdGhlIFNvdWxzIG9mI01PTiBSZXN0IEVhc3kjTU9OIFRPV0VSV2UncmUg Y2FyZWZ1bGFib3V0IHBvbGx1dGlvbiFXZSd2ZSBoZWFyZCBHUklNRVJtdWx0aXBsaWVzIGludG94 aWMgc2x1ZGdlIURpZCB5b3Ugc2VlIFMuUy5BTk5FIG1vb3JlZCBpbnRoZSBoYXJib3I/U28sIFMu Uy5BTk5FIGhhc2RlcGFydGVkIVNoZSdsbCBiZSBiYWNrIGluYWJvdXQgYSB5ZWFyLldlbGNvbWUg dG8gUy5TLkFOTkUhV2VsY29tZSB0byBTLlMuQU5ORSFFeGN1c2UgbWUsIGRvIHlvdWhhdmUgYSB0 aWNrZXQ/IGZsYXNoZWR0aGUgUy5TLlRJQ0tFVCFHcmVhdCEgV2VsY29tZSB0b1MuUy5BTk5FISBk b2Vzbid0aGF2ZSB0aGUgbmVlZGVkUy5TLlRJQ0tFVC5Tb3JyeSFZb3UgbmVlZCBhIHRpY2tldHRv IGdldCBhYm9hcmQuVGhlIHNoaXAgc2V0IHNhaWwuSSdtIHB1dHRpbmcgdXAgYWJ1aWxkaW5nIG9u IHRoaXNwbG90IG9mIGxhbmQuTXkgI01PTiBpc3RhbXBpbmcgdGhlIGxhbmQuTUFDSE9QOiBHdW8A aCFHb2dvZ29oIQorIAorIEEgTUFDSE9QIGlzc3RvbXBpbmcgdGhlIGxhbmRmbGF0LlMuUy5BTk5F IGlzIGFmYW1vdXMgbHV4dXJ5Y3J1aXNlIHNoaXAuV2UgdmlzaXQgVkVSTUlMSU9Ob25jZSBhIHll YXIuVkVSTUlMSU9OIENJVFlUaGUgUG9ydCBvZkV4cXVpc2l0ZSBTdW5zZXRzTk9USUNFIVJPVVRF IDEyIG1heSBiZWJsb2NrZWQgb2ZmIGJ5IGFzbGVlcGluZyAjTU9OLkRldG91ciB0aHJvdWdoUk9D SyBUVU5ORUwgdG9MQVZFTkRFUiBUT1dOLlZFUk1JTElPTiBQT0xJQ0UjTU9OIEZBTiBDTFVCQWxs ICNNT04gZmFuc3dlbGNvbWUhVkVSTUlMSU9OIENJVFkjTU9OIEdZTUxFQURFUjogTFQuU1VSR0VU aGUgTGlnaHRuaW5nIEFtZXJpY2FuIVZFUk1JTElPTiBIQVJCT1JJIGdvdCBteSBLT0ZGSU5HaW4g Q0lOTkFCQVIhSXQncyBuaWNlLCBidXQgaXRicmVhdGhlcyBwb2lzb253aGVuIGl0J3MgYW5ncnkh SGVoZWghIFRoaXMgR1lNaXMgZ3JlYXQhIEl0J3NmdWxsIG9mIHdvbWVuIVRoZSBHQU1FIENPUk5F UmlzIGJhZCBmb3Igb3VyY2l0eSdzIGltYWdlIU1vYW4hIEkgYmxldyBpdGFsbCBhdCB0aGUgc2xv dHMhSSBrbmV3IEkgc2hvdWxkaGF2ZSBjYXNoZWQgaW4gbXljb2lucyBmb3IgcHJpemVzIUhlbGxv LCB0aGVyZSFJJ3ZlIHNlZW4geW91LGJ1dCBJIG5ldmVyIGhhZCBhY2hhbmNlIHRvIHRhbGshSGVy ZSdzIGEgZ2lmdCBmb3Jkcm9wcGluZyBieSEgcmVjZWl2ZWQKKyAhCisgCisgVE00MSB0ZWFjaGVz U09GVEJPSUxFRCFPbmx5IG9uZSAjTU9OY2FuIHVzZSBpdCFUaGF0ICNNT04gaXNDSEFOU0VZIU9o LCB5b3VyIHBhY2sgaXNmdWxsIG9mIGl0ZW1zIVRoaXMgaXMgbXkgdHJ1c3RlZHBhbCwgUE9MSVdS QVRIIUl0IGV2b2x2ZWQgZnJvbVBPTElXSElSTCB3aGVuIEl1c2VkIFdBVEVSIFNUT05FIVBPTElX UkFUSDogUmliaXJpYml0IQorIAorIFdoYXQgYXJlIHlvdXN0YXJpbmcgYXQ/S2VlcCBvdXQgb2Yg VEVBTVJPQ0tFVCdzIHdheSFUUkFJTkVSIFRJUFNYIEFDQ1VSQUNZIGJvb3N0c3RoZSBhY2N1cmFj eSBvZnRlY2huaXF1ZXMhRElSRSBISVQgamFja3MgdXB0aGUgbGlrZWxpaG9vZCBvZmNyaXRpY2Fs IGhpdHMhR2V0IHlvdXIgaXRlbXMgYXRDRUxBRE9OIERFUFQuU1RPUkUhQ0VMQURPTiBDSVRZVGhl IENpdHkgb2ZSYWluYm93IERyZWFtc0NFTEFET04gQ0lUWSNNT04gR1lNTEVBREVSOiBFUklLQVRo ZSBOYXR1cmUgTG92aW5nUHJpbmNlc3MhQ0VMQURPTiBNQU5TSU9ORmluZCB3aGF0IHlvdW5lZWQg YXQgQ0VMQURPTkRFUFQuIFNUT1JFIVRSQUlORVIgVElQU0dVQVJEIFNQRUMucHJvdGVjdHMgI01P TmFnYWluc3QgU1BFQ0lBTGF0dGFja3Mgc3VjaCBhc2ZpcmUgYW5kIHdhdGVyIUdldCB5b3VyIGl0 ZW1zIGF0Q0VMQURPTiBERVBULlNUT1JFIUNvaW5zIGV4Y2hhbmdlZGZvciBwcml6ZXMhUFJJWkUg RVhDSEFOR0VST0NLRVQgR0FNRSBDT1JORVJUaGUgcGxheWdyb3VuZGZvciBncm93bi11cHMhRGlk IHlvdSB0cnkgdGhlU0FGQVJJIEdBTUU/IFNvbWUjTU9OIGNhbiBvbmx5YmUgY2F1Z2h0IHRoZXJl LlNBRkFSSSBaT05FIGhhcyBhem9vIGluIGZyb250IG9mdGhlIGVudHJhbmNlLk91dCBiYWNrIGlz IHRoZVNBRkFSSSBHQU1FIGZvcmNhdGNoaW5nICNNT04uRVJJSzogV2hlcmUnc1NBUkE/IEkgc2Fp ZCBJJ2RtZWV0IGhlciBoZXJlLlRoYXQgaXRlbSBiYWxsIGludGhlcmUgaXMgcmVhbGx5IGEjTU9O LiFGVUNIU0lBIENJVFlCZWhvbGQhIEl0J3NQYXNzaW9uIFBpbmshU0FGQVJJIEdBTUUjTU9OLVUt Q0FUQ0ghU0FGQVJJIFpPTkVXQVJERU4ncyBIT01FI01PTiBQQVJBRElTRVNBRkFSSSBaT05FRlVD SFNJQSBDSVRZI01PTiBHWU1MRUFERVI6IEtPR0FUaGUgUG9pc29ub3VzTmluamEgTWFzdGVyTmFt ZTogQ0hBTlNFWUNhdGNoaW5nIG9uZSBpc2FsbCB1cCB0byBjaGFuY2UuTmFtZTogVk9MVE9SQlRo ZSB2ZXJ5IGltYWdlIG9mYSAjIEJBTEwuTmFtZTogS0FOR0FTS0hBTkEgbWF0ZXJuYWwgI01PTnRo YXQgcmFpc2VzIGl0c3lvdW5nIGluIGEgcG91Y2hvbiBpdHMgYmVsbHkuTmFtZTogU0xPV1BPS0VG cmllbmRseSBhbmQgdmVyeXNsb3cgbW92aW5nLk5hbWU6IExBUFJBU0EuSy5BLiB0aGUga2luZ29m IHRoZSBzZWFzLk5hbWU6IE9NQU5ZVEVBICNNT04gdGhhdHdhcyByZXN1cnJlY3RlZGZyb20gYSBm b3NzaWwuTmFtZTogS0FCVVRPQSAjTU9OIHRoYXR3YXMgcmVzdXJyZWN0ZWRmcm9tIGEgZm9zc2ls Li4uLlRoZSBkb29yIGlzbG9ja2VkLi4uQ0lOTkFCQVIgR1lNJ3NCTEFJTkUgaXMgYW4gb2RkbWFu IHdobyBoYXMgbGl2ZWRoZXJlIGZvciBkZWNhZGVzLlNjaWVudGlzdHMgY29uZHVjdGV4cGVyaW1l bnRzIGludGhlIGJ1cm5lZCBvdXRidWlsZGluZy5DSU5OQUJBUiBJU0xBTkRUaGUgRmllcnkgVG93 biBvZkJ1cm5pbmcgRGVzaXJlI01PTiBMQUJDSU5OQUJBUiBJU0xBTkQjTU9OIEdZTUxFQURFUjog QkxBSU5FVGhlIEhvdC1IZWFkZWRRdWl6IE1hc3RlciFXaGF0IGRvIHlvdSB3YW50P0dldCBsb3N0 IUJPU1Mgc2FpZCBoZSdsbHRha2UgdGhpcyB0b3duIUdldCBvdXQgb2YgdGhld2F5IVNBRkZST04g YmVsb25nc3RvIFRFQU0gUk9DS0VUIUJlaW5nIGV2aWwgbWFrZXNtZSBmZWVsIHNvIGFsaXZlIU93 ISBXYXRjaCB3aGVyZXlvdSdyZSB3YWxraW5nIVdpdGggU0lMUEggdW5kZXJjb250cm9sLCB3ZSBj YW5leHBsb2l0ICNNT05hcm91bmQgdGhlIHdvcmxkIVlvdSBiZWF0IFRFQU1ST0NLRVQgYWxsIGFs b25lP1RoYXQncyBhbWF6aW5nIVllYWghIFRFQU0gUk9DS0VUaXMgZ29uZSFJdCdzIHNhZmUgdG8g Z29vdXQgYWdhaW4hUGVvcGxlIHNob3VsZCBiZWZsb2NraW5nIGJhY2sgdG9TQUZGUk9OIG5vdy5J IGZsZXcgaGVyZSBvbiBteVBJREdFT1Qgd2hlbiBJcmVhZCBhYm91dCBTSUxQSC5JdCdzIGFscmVh ZHkgb3Zlcj9JIG1pc3NlZCB0aGVtZWRpYSBhY3Rpb24uUElER0VPVDogQmkgYmliaWkhCisgLS0t LQorIEkgc2F3IFJPQ0tFVEJPU1MgZXNjYXBpbmcgU0lMUEgncyBidWlsZGluZy4KKyBJJ20gYSBz ZWN1cml0eSBndWFyZC4gU3VzcGljaW91cyBraWRzIEkgZG9uJ3QgYWxsb3cgaW4hCisgLi4uU25v cmUuLi5IYWghIEhlJ3MgdGFraW5nIGEgc25vb3plIQorIFNBRkZST04gQ0lUWSBTaGluaW5nLCBH b2xkZW4gTGFuZCBvZiBDb21tZXJjZQorIEZJR0hUSU5HIERPSk8KKyBTQUZGUk9OIENJVFkKKyAj TU9OIEdZTSBMRUFERVI6IFNBQlJJTkEgVGhlIE1hc3RlciBvZiBQc3ljaGljICNNT04hCisgVFJB SU5FUiBUSVBTIEZVTEwgSEVBTCBjdXJlcyBhbGwgYWlsbWVudHMgbGlrZSBzbGVlcCBhbmQgYnVy bnMuIEl0IGNvc3RzIGEgYml0IG1vcmUsIGJ1dCBpdCdzIG1vcmUgY29udmVuaWVudC4KKyBUUkFJ TkVSIFRJUFMgTmV3IEdSRUFUIEJBTEwgb2ZmZXJzIGltcHJvdmVkIGNhcHR1cmUgcmF0ZXMuIFRy eSBpdCBvbiB0aG9zZSBoYXJkLXRvLWNhdGNoICNNT04uCisgU0lMUEggQ08uIE9GRklDRSBCVUlM RElORworIE1SLlBTWUNISUMncyBIT1VTRSAKKyBTSUxQSCdzIGxhdGVzdCBwcm9kdWN0ISBSZWxl YXNlIHRvIGJlIGRldGVybWluZWQuLi4KKyAtLS0tCisgSXQgZG9kZ2VkIHRoZSB0aHJvd24gQkFM TCEKKyBUaGlzICNNT04gY2FuJ3QgYmUgY2F1Z2h0IQorIFlvdSBtaXNzZWQgdGhlICNNT04hCisg RGFybiEgVGhlICNNT04gYnJva2UgZnJlZSEKKyBBd3chIEl0IGFwcGVhcmVkIHRvIGJlIGNhdWdo dCEKKyBTaG9vdCEgSXQgd2FzIHNvIGNsb3NlIHRvbyEKKyBBbGwgcmlnaHQhIDw+IHdhcyBjYXVn aHQhCisgPD4gd2FzIHRyYW5zZmVycmVkIHRvIEJJTEwncyBQQyEKKyA8PiB3YXMgdHJhbnNmZXJy ZWQgdG8gc29tZW9uZSdzIFBDIQorIE5ldyAjREVYIGRhdGEgd2lsbCBiZSBhZGRlZCBmb3IgPD4h CisgLS0tLQorIFRoZXJlJ3Mgbm8gcGxhY2V0byBnZXQgb2ZmIQorIDw+J3MgPD4gcm9zZS4KKyBJ dCB3b24ndCBoYXZlIGFueSBlZmZlY3QuCisgPD4gdGhyZXcgc29tZSBCQUlULgorIDw+IHRocmV3 IGEgUk9DSy4KKyBQbGF5ZWQgdGhlICNGTFVURS4KKyBOb3csIHRoYXQncyBhIGNhdGNoeSB0dW5l IQorIEFsbCBzbGVlcGluZyAjTU9OIHdva2UgdXAuCisgPD4gcGxheWVkIHRoZSMgRkxVVEUuCisg LS0tLQorIFllcyEgSVRFTUZJTkRFUiBpbmRpY2F0ZXMgdGhlcmUncyBhbiBpdGVtIG5lYXJieS4K KyBOb3BlISBJVEVNRklOREVSIGlzbid0IHJlc3BvbmRpbmcuCisgUmFpc2UgUFAgb2Ygd2hpY2gg dGVjaG5pcXVlPworIFJlc3RvcmUgUFAgb2Ygd2hpY2ggdGVjaG5pcXVlPworIDw+J3MgUFAgaXMg bWF4ZWQgb3V0LgorIDw+J3MgUFAgaW5jcmVhc2VkLgorIFBQIHdhcyByZXN0b3JlZC4KKyBCb290 ZWQgdXAgYSBUTSEKKyBCb290ZWQgdXAgYW4gSE0hCisgSXQgY29udGFpbmVkIDw+IQorIFRlYWNo IDw+IHRvIGEgI01PTj8KKyA8PiBpcyBub3QgY29tcGF0aWJsZSB3aXRoIDw+LgorIEl0IGNhbid0 IGxlYXJuIDw+LgorIE9BSzogPD4gISBUaGlzIGlzbid0IHRoZSB0aW1lIHRvIHVzZSB0aGF0IQor IFRoaXMgaXNuJ3QgeW91cnMgdG8gdXNlIQorIEl0IHdvbid0IGhhdmUgYW55IGVmZmVjdC4KKyBU aGUgdHJhaW5lciBibG9ja2VkIHRoZSBCQUxMIQorIERvbid0IGJlIGEgdGhpZWYhCisgTm8gY3lj bGluZyBhbGxvd2VkIGhlcmUuCisgTm8gU1VSRmluZyBvbiA8PiBoZXJlIQorIFRoZSAjTU9OIEJP WCBpcyBmdWxsIQorIENhbid0IHVzZSB0aGF0IGl0ZW0hCisgLS0tLQorIEknbSBsb29raW5nIGZv ciA8PiEKKyBXYW5uYSB0cmFkZSBvbmUgZm9yIDw+PworIEF3d3chIE9oIHdlbGwuLi4KKyBXaGF0 PyBUaGF0J3Mgbm90IDw+IQorIElmIHlvdSBnZXQgb25lLCBjb21lIGJhY2sgaGVyZSEKKyBIZXkg dGhhbmtzIQorIElzbid0IG15IG9sZCA8PiBncmVhdD8KKyBIZWxsbyB0aGVyZSEgRG8geW91IHdh bnQgdG8gdHJhZGUgeW91ciA8PiBmb3IgPD4/CisgV2VsbCwgaWYgeW91IGRvbid0IHdhbnQgdG8u Li4KKyBIbW1tPyBUaGlzIGlzbid0IDw+LgorIFRoaW5rIG9mIG1lIHdoZW4geW91IGdldCBvbmUu CisgVGhhbmtzISBUaGUgPD4geW91IHRyYWRlZCB0byBtZSB3ZW50IGFuZCBldm9sdmVkIQorIEhp ISBEbyB5b3UgaGF2ZSA8Pj8KKyBXYW50IHRvIHRyYWRlIGl0IGZvciA8Pj8KKyBUaGF0J3MgdG9v IGJhZC4uLi4KKyBUaGlzIGlzIG5vIDw+LgorIElmIHlvdSBnZXQgb25lLCB0cmFkZSBpdCB3aXRo IG1lIQorIFRoYW5rcyBwYWwhCisgSG93IGlzIG15IG9sZCA8PiA/CisgTXkgPD4gaXMgZG9pbmcg Z3JlYXQhCisgVGhlcmUgaXNuJ3QgYW55dGhpbmcgdG8gQ1VUIQorIGhhY2tlZCBhd2F5IHdpdGgg Q1VUIQoKCgoKCioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqClRoZSBuZXcgcGFnZSBjb250ZW50IGZvbGxvd3MgYmVsb3cuCioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCgpUaGlz IHBhZ2UgaXMgYSBjb2xsYWJvcmF0aW9uIGF0dGVtcHQgYXQgY29uc2lzdGVudGx5IHRyYW5zbGF0 aW5nIGltcG9ydGFudCB0ZXJtcyBhbmQgbGluZXMgZnJvbSB0aGUgUG9rZW1vbiBnYW1lcy4gVGhl IGRpc2N1c3Npb24gcGFnZSBpcyBbaHR0cHM6Ly9ncm91cHMuZ29vZ2xlLmNvbS9kL3RvcGljL2xv amJhbi9zNDRIN3otNHZ6Zy9kaXNjdXNzaW9ufGhlcmVdCgoKCnttYWtldG9jfQoKCgohR2VuIDEg KFJlZC9CbHVlL1llbGxvdykKCgoKKGluIHByb2dyZXNzKQoKVGhpcyBpcyBhIGRpcmVjdCByaXAg b2YgdGVybXMgZnJvbSB0aGUgUG9rw6ltb24gUmVkIHZpZGVvIGdhbWUsIHRvIGJlIHRyYW5zbGF0 ZWQgaW50byBMb2piYW4uIEluc3BpcmVkIGJ5ICgobGFpIHBva2Vtb24uKSksIEkgKG1pJ2UgKChK b2UgQW5kZXJzb24pKSkgaGF2ZSBnb3R0ZW4gYSBST00gZWRpdGluZyBlbnZpcm9ubWVudCBzZXQg dXAgdG8gYWN0dWFsbHkgY3JlYXRlIHRoZSBnYW1lLCB0cmFuc2xhdGVkLiBBcyBhIHByb29mIG9m IGNvbmNlcHQsIEkgaGF2ZSBhbHJlYWR5IHRyYW5zbGF0ZWQgbW9zdCBvZiB0aGUgW2h0dHBzOi8v ZG9jcy5nb29nbGUuY29tL29wZW4/aWQ9MEI5XzhEc0VyNW9zZ1EzUmZPVlZET1RkTGNXTXxvcHRp b25zIG1lbnVdLiBUaGlzIHdhcyBub250cml2aWFsLCBhcyBJIGNvbnN0cnVjdGVkIG15IG93biBj b21iaW5hdGlvbiBjaGFyYWN0ZXJzIGZvciBhcG9zdHJvcGhlK3Zvd2VsLiBBbHNvLCBJIGhhdmUg dGhlIGNhcGFiaWxpdHkgdG8gbW9kaWZ5IHRoZSBzdHJpbmdzIGFuZCByZWFzc2VtYmxlIHRoZSBS T00sIHNvIHRoZSBsZW5ndGhzIG9mIGRpYWxvZ3VlIHN0cmluZ3MgYXJlIG5vdCBsaW1pdGVkLgoK CgpJJ20gcHV0dGluZyB0aGlzIGhlcmUgaW4gY2FzZSBhbnlvbmUgd291bGQgbGlrZSB0byBhaWQg aW4gdGhlIHRyYW5zbGF0aW9uLCBhbmQgc28gdGhhdCBJIG1heSBmb2N1cyBvbiB0cmFuc2xhdGlu ZyBkaWFsb2d1ZS4gSSdtIG5vdCBjb3B5aW5nIG92ZXIgdGhlIHBva8OpbW9uIG5hbWVzIGZyb20g KChsYWkgcG9rZW1vbi4pKSBpbnRvIHRoaXMgcGFnZSB0byBhdm9pZCBkdXBsaWNhdGlvbiBvZiBl ZmZvcnQsIGJ1dCBmb3IgSXRlbXMgYW5kIHN1Y2ggSSBhbSByZXN0YXRpbmcgdGhlbSBoZXJlIGlu IGZ1bGwuIEkgZXhwZWN0ICgobGFpIHBva2Vtb24uKSkgdG8gcmVtYWluIHVzZWZ1bCBhcyBhIGd1 aWRlIGZvciB0YWxraW5nIGFib3V0IHBva8OpbW9uLCB3aGVyZWFzIHRoaXMgaXMgbWVyZWx5IGEg cmVwb3NpdG9yeSBvZiB0ZXJtcyBmb3IgdGhlIGdhbWUgdHJhbnNsYXRpb24uIE5hbWluZyBydWxl cyB2YXJ5IGZvciBlYWNoIHRvcGljLgoKCgpIaSwgSSBsaWtlIHRoaXMgcHJvamVjdCBhbmQgSSdk IGxpa2UgdG8gaGVscCBvdXQuIFRoZSB0aG91Z2h0IG9mIG9uZSBkYXkgYmVpbmcgYWJsZSB0byBw bGF5IHRoaXMgZ2FtZSBmdWxseSBpbiBMb2piYW4gaXMgdmVyeSBtb3RpdmF0aW5nLiBJIGNhbiBt YXJrIGFsbCBteSBjb250cmlidXRpb25zIGlmIHlvdSBsaWtlLiAtLSgoc2VscGEnaSkpCgoqIFRo YW5rcyEgSXQncyBiZWVuIHJhdGhlciBtb3RpdmF0aW5nIGZvciBtZSwgYXMgd2VsbC4gTW9zdCBv ZiB0aGUgdHJhbnNsYXRpb25zIHlvdSBzZWUgaGVyZSB3ZXJlIHVucGxhbm5lZDsgSSBqdXN0IGNv dWxkbid0IGhlbHAgbXlzZWxmISBBbnl3YXksIG5vIG5lZWQgdG8gbWFyayBjb250cmlidXRpb25z OyBJJ20gZW1haWwtd2F0Y2hpbmcgdGhlIHBhZ2UgOikKCgoKISFJdGVtcwoKCgpfX0NvbmRpdGlv bnMgZm9yIGl0ZW0gd29yZHNfXwoKKiBzZWxicmksIDEyLWNoYXJhY3RlciBsaW1pdCAoeydhfSBh bmQgb3RoZXIgYXBvc3Ryb3BoZS12b3dlbCBjb21iaW5hdGlvbnMgYXJlIG9uZSBjaGFyYWN0ZXIg ZWFjaC4pCgoqIHBhcmFsbGVsIG5hbWUgZW5kaW5nIGZvciBwYXJhbGxlbCBpdGVtcywgc3VjaCBh cyBwb3Rpb25zLCBiYWxscywgaGVhbHMsIGV0Yy4KCiogZm9yIHNob3J0IG9uZXMsIGZ1bGwgZ2lz bXUgYW5kIHRhbnJ1IGFyZSBwcmVmZXJyZWQgdG8gcmFmc2kgdW5sZXNzIGl0IHdvdWxkIHJ1aW4g YWZvcmVtZW50aW9uZWQgcGFyYWxsZWxpc20uCgoqIEluLWdhbWUsIHRoZXJlIGV4aXN0cyB0aGUg Z2lzbXUge3Bva21hfSB3aXRoIHJhZnNpIC1wb2stIGZvciBwb2tlbW9uLiBJdCBpcyBkZWZpbmVk IHRoZSBzYW1lIGFzIHRoZSByZWFsIHdvcmRzIHBva21vbmUgLyBkYXNreWRhJ3UuCgoKCnx8X19F bmdsaXNoX198X19zZWxicmlfXwoKTUFTVEVSIEJBTEwgIHwgcm9scG9reWJvaSAgKHNlbG1hY3li b2kpCgpVTFRSQSBCQUxMICAgfCBjaWJ5cG9reWJvaSAoYmFsY2FpYm9pPykKCkdSRUFUIEJBTEwg ICB8IHJlbHBva3lib2kgIChiYWxib2kvYmFscG9reWJvaSkKClBPS8OpIEJBTEwgICAgfCBwYXZ5 cG9reWJvaSAocG9reWJvaSkKClRPV04gTUFQICAgICB8IHRjYWNhcnR1CgpCSUNZQ0xFICAgICAg fCByZWxzZWx4aSd1CgpTQUZBUkkgQkFMTCAgfCBrbG9wb2t5Ym9pICAobGkndXJwb2t5Ym9pKQoK UE9Lw6lERVggICAgICB8IHBva3ljYWJyYSAgIChwb2tzdGV0Y2kpCgpNT09OIFNUT05FICAgfCBs dW5yYSByb2tjaQoKQU5USURPVEUgICAgIHwgdmlkdmVsbWlrY2UKCkJVUk4gSEVBTCAgICB8IGZh Z3ZlbG1pa2NlCgpJQ0UgSEVBTCAgICAgfCBiaXN5dmVsbWlrY2UKCkFXQUtFTklORyAgICB8IHNp cHl2ZWxtaWtjZQoKUEFSTFlaIEhFQUwgIHwgZnJhdmVsbWlrY2UKCkZVTEwgUkVTVE9SRSB8IHJv bGthJ29kamEKCk1BWCBQT1RJT04gICB8IGNsdWthJ29kamEKCkhZUEVSIFBPVElPTiB8IGNpYnlr YSdvZGphCgpTVVBFUiBQT1RJT04gfCByZWxrYSdvZGphCgpQT1RJT04gICAgICAgfCBwYXZ5a2En b2RqYQoKQk9VTERFUkJBREdFIHwgcm9rc25pCgpDQVNDQURFQkFER0UgfCBqYXVzbmkKClRIVU5E RVJCQURHRSB8IGxpZHlzbmkKClJBSU5CT1dCQURHRSB8IAoKU09VTEJBREdFICAgIHwKCk1BUlNI QkFER0UgICB8CgpWT0xDQU5PQkFER0UgfAoKRUFSVEhCQURHRSAgIHwKCkVTQ0FQRSBST1BFICAK ClJFUEVMCgpPTEQgQU1CRVIKCkZJUkUgU1RPTkUgICB8IGZhZ3JpIHJva2NpCgpUSFVOREVSU1RP TkUgfCBsaW5kaSByb2tjaQoKV0FURVIgU1RPTkUgIHwgZGphY3Ugcm9rY2kKCkhQIFVQCgpQUk9U RUlOCgpJUk9OCgpDQVJCT1MKCkNBTENJVU0KClJBUkUgQ0FORFkKCkRPTUUgRk9TU0lMCgpIRUxJ WCBGT1NTSUwKClNFQ1JFVCBLRVkgICB8IHNlIG1pcHJpIGNraWt1CgpCSUtFIFZPVUNIRVIKClgg QUNDVVJBQ1kKCkxFQUYgU1RPTkUgICB8IHBlemxpIHJva2NpCgpDQVJEIEtFWQoKTlVHR0VUCgpQ UCBVUAoKUE9Lw6kgRE9MTCAgICB8IHBva3lmdWtwaQoKRlVMTCBIRUFMICAgIHwgcm9sdmVsbWlr Y2UKClJFVklWRSAgICAgICB8IGppJ2V4cnUKCk1BWCBSRVZJVkUgICB8IHRjZWppJ2V4cnUKCkdV QVJEIFNQRUMuCgpTVVBFUiBSRVBFTAoKTUFYIFJFUEVMCgpESVJFIEhJVAoKQ09JTiAgICAgICAg IHwgc2ljbmkKCkZSRVNIIFdBVEVSICB8IHZpZm5lIGRqYWN1CgpTT0RBIFBPUAoKTEVNT05BREUg ICAgIHwgc29kdmEKClMuUy5USUNLRVQgICB8IGJsb3RpIHBpa3RhCgpHT0xEIFRFRVRIICAKClgg QVRUQUNLCgpYIERFRkVORAoKWCBTUEVFRAoKWCBTUEVDSUFMCgpDT0lOIENBU0UgICAgfCBzaSdp cnZhdSAvIHNpY25pIHZhc3J1CgpPQUsncyBQQVJDRUwKCklURU1GSU5ERVIKClNJTFBIIFNDT1BF CgpQT0vDqSBGTFVURSAgIHwgcG9rbWUgZmxhbmkKCkxJRlQgS0VZCgpFWFAuQUxMCgpPTEQgUk9E CgpHT09EIFJPRAoKU1VQRVIgUk9ECgpQUCBVUAoKRVRIRVIgICAgICAgIHwgZ3V0eWRqYQoKTUFY IEVUSEVSICAgIHwgY2x1Z3V0eWRqYQoKRUxJWEVSICAgICAgIHwga2EnZWd1dHlkamEKCk1BWCBF TElYRVIgICB8IGtheHlndXR5ZGphfHwKCiEhIEF0dGFja3MKCgoKX19Db25kaXRpb25zIGZvciBh dHRhY2sgd29yZHNfXwoKKiBzZWxicmksIDEyLWNoYXJhY3RlciBsaW1pdCAoeydhfSBhbmQgb3Ro ZXIgYXBvc3Ryb3BoZS12b3dlbCBjb21iaW5hdGlvbnMgYXJlIG9uZSBjaGFyYWN0ZXIgZWFjaC4p CgoqIHBhcmFsbGVsIG5hbWUgZW5kaW5ncyBmb3IgcGFyYWxsZWwgYWN0aW9ucywgc3VjaCBhcyBw dW5jaGVzLCBraWNrcywgZXRjLgoKKiBmb3Igc2hvcnQgbmFtZXMsIGZ1bGwgZ2lzbXUgYXJlIHBy ZWZlcnJlZCB0byByYWZzaSB1bmxlc3MgaXQgd291bGQgcnVpbiBhZm9yZW1lbnRpb25lZCBwYXJh bGxlbGlzbQoKKiBJJ20gcGxhbm5pbmcgb24gdXNpbmcgImtvJ2Egem8ndSBicm9kYSIgZm9yICJb W3Bva2Vtb25dIHVzZWQgW1thdHRhY2tdISIgVGhpcyBnaXZlcyBhIGxvdCBvZiBmcmVlZG9tIGlu IHRyYW5zbGF0aW9uLiBUZWNobmljYWxseSwgdGhpcyBldmVuIG1lYW5zIHdlIGNhbiB1c2UgYnJp ZGk7IGhvd2V2ZXIsIGR1ZSB0byBjaGFyYWN0ZXIgbGltaXRhdGlvbnMgYW5kIHRoZSB2ZXJzYXRp bGl0eSBvZiB1c2luZyBzZWxicmksIHVzZSBzZWxicmkuCgoqIFNvbWV0aW1lcyB0aGUgc2VsYnJp IG11c3QgYmUgbW9yZSBkZXNjcmlwdGl2ZSB0aGFuIHdoYXQgaXQncyB0cmFuc2xhdGluZy4gU2Vl ICJNRVRST05PTUUiIGFuZCBbaHR0cDovL2J1bGJhcGVkaWEuYnVsYmFnYXJkZW4ubmV0L3dpa2kv TWV0cm9ub21lXyhtb3ZlKSNEZXNjcmlwdGlvbnxCdWxiYXBlZGlhXS4KCgoKfHxfX0VuZ2xpc2hf X3xfX3NlbGJyaV9fCgpQT1VORCAgICAgICAgfCB0aWxqdSBkYXJ4aQoKS0FSQVRFIENIT1AgIHwg ZGEnaXJrYXJhdGkKCkRPVUJMRVNMQVAgICB8IHJlbHBpdHlkYSdpCgpDT01FVCBQVU5DSCAgfCBj bWFwbGlueWRhJ2kKCk1FR0EgUFVOQ0ggICB8IGJyYWJyYWRhJ2kKClBBWSBEQVkgICAgICB8IHBs ZWppIGRldHJpCgpGSVJFIFBVTkNIICAgfCBmYWdyaSB4YW5kYSdpCgpJQ0UgUFVOQ0ggICAgfCBi aXNsaSB4YW5kYSdpCgpUSFVOREVSUFVOQ0ggfCBsaW5kaSB4YW5kYSdpCgpTQ1JBVENIICAgICAg fCBzcmFrdQoKVklDRUdSSVAKCkdVSUxMT1RJTkUKClJBWk9SIFdJTkQKClNXT1JEUyBEQU5DRQoK Q1VUIHwga2F0bmEKCkdVU1QKCldJTkcgQVRUQUNLIHwgbmFsY2kgZ3VudGEKCldISVJMV0lORAoK RkxZIHwgdm9mbGkKCkJJTkQKClNMQU0gfCBtYXJ4YQoKVklORSBXSElQCgpTVE9NUCB8IGxvbGRp IGptYWRhJ2kKCkRPVUJMRSBLSUNLIHwgcmVsam1hZGEnaQoKTUVHQSBLSUNLIHwgYnJhYnJham1h ZGEnaQoKSlVNUCBLSUNLIHwgcGxpcGUgam1hZGEnaQoKUk9MTElORyBLSUNLIHwgZ3Vucm8gam1h ZGEnaQoKU0FORC1BVFRBQ0sKCkhFQURCVVRUIHwgc3RlZHUgZGFyeGkKCkhPUk4gQVRUQUNLIHwg amlybmEgZ3VudGEKCkZVUlkgQVRUQUNLIHwgZmVuZ3UgZ3VudGEKCkhPUk4gRFJJTEwKClRBQ0tM RSB8IHhhZG5pIGRhcnhpCgpCT0RZIFNMQU0gfCB4YWRuaSBtYXJ4YQoKV1JBUAoKVEFLRSBET1dO CgpUSFJBU0gKCkRPVUJMRS1FREdFCgpUQUlMIFdISVAgICB8IHJlYmxhIGJpa3lkYSdpCgpQT0lT T04gU1RJTkcKClRXSU5FRURMRQoKUElOIE1JU1NJTEUKCkxFRVIKCkJJVEUKCkdST1dMICAgICAg IHwgY21vbmkKClJPQVIgICAgICAgIHwgbGF1Y21vCgpTSU5HICAgICAgICB8IHNhbmdhCgpTVVBF UlNPTklDCgpTT05JQ0JPT00KCkRJU0FCTEUKCkFDSUQKCkVNQkVSCgpGTEFNRVRIUk9XRVIKCk1J U1QgICAgICAgICB8IGphdXJidW1ydQoKV0FURVIgR1VOCgpIWURSTyBQVU1QCgpTVVJGICAgICAg ICAgfCBqYWN0YSdvIHBpbG5vCgpJQ0UgQkVBTQoKQkxJWlpBUkQKClBTWUJFQU0KCkJVQkJMRUJF QU0KCkFVUk9SQSBCRUFNCgpIWVBFUiBCRUFNCgpQRUNLICAgICAgICAgfCAKCkRSSUxMIFBFQ0sK ClNVQk1JU1NJT04KCkxPVyBLSUNLCgpDT1VOVEVSCgpTRUlTTUlDIFRPU1MKClNUUkVOR1RIICAg ICB8IGthbXRzYQoKQUJTT1JCCgpNRUdBIERSQUlOCgpMRUVDSCBTRUVECgpHUk9XVEggICAgICAg fCBiYW5ybwoKUkFaT1IgTEVBRgoKU09MQVJCRUFNCgpQT0lTT05QT1dERVIKClNUVU4gU1BPUkUK ClNMRUVQIFBPV0RFUgoKUEVUQUwgREFOQ0UKClNUUklORyBTSE9UCgpEUkFHT04gUkFHRSAgfCBk cmFrb25vIGZlbmd1CgpGSVJFIFNQSU4KClRIVU5ERVJTSE9DSwoKVEhVTkRFUkJPTFQKClRIVU5E RVIgV0FWRQoKVEhVTkRFUgoKUk9DSyBUSFJPVyAgIHwgcm9rY2kgcmVucm8KCkVBUlRIUVVBS0UK CkZJU1NVUkUKCkRJRyAgICAgICAgICB8IGtha3BhCgpUT1hJQyAgICAgICAgfCB2aW5kdQoKQ09O RlVTSU9OCgpQU1lDSElDCgpIWVBOT1NJUwoKTUVESVRBVEUKCkFHSUxJVFkKClFVSUNLIEFUVEFD SwoKUkFHRQoKVEVMRVBPUlQKCk5JR0hUIFNIQURFCgpNSU1JQwoKU0NSRUVDSAoKRE9VQkxFIFRF QU0KClJFQ09WRVIKCkhBUkRFTgoKTUlOSU1JWkUKClNNT0tFU0NSRUVOCgpDT05GVVNFIFJBWQoK V0lUSERSQVcKCkRFRkVOU0UgQ1VSTAoKQkFSUklFUgoKTElHSFQgU0NSRUVOCgpIQVpFCgpSRUZM RUNUCgpGT0NVUyBFTkVSR1kKCkJJREUKCk1FVFJPTk9NRSAgICB8IGRlZ2ppIHNsaWx1CgpNSVJS T1IgTU9WRQoKU0VMRkRFU1RSVUNUCgpFR0cgQk9NQgoKTElDSwoKU01PRwoKU0xVREdFCgpCT05F IENMVUIKCkZJUkUgQkxBU1QKCldBVEVSRkFMTAoKQ0xBTVAKClNXSUZUCgpTS1VMTCBCQVNICgpT UElLRSBDQU5OT04KCkNPTlNUUklDVAoKQU1ORVNJQQoKS0lORVNJUwoKU09GVEJPSUxFRAoKSEkg SlVNUCBLSUNLCgpHTEFSRQoKRFJFQU0gRUFURVIKClBPSVNPTiBHQVMKCkJBUlJBR0UKCkxFRUNI IExJRkUKCkxPVkVMWSBLSVNTCgpTS1kgQVRUQUNLICB8IHRzYW5pIGd1bnRhCgpUUkFOU0ZPUk0g ICB8IGNlbmJhIAoKQlVCQkxFCgpESVpaWSBQVU5DSAoKU1BPUkUKCkZMQVNICgpQU1lXQVZFCgpT UExBU0ggICAgICB8IGphdXJrYXN5Z2F1CgpBQ0lEIEFSTU9SCgpDUkFCSEFNTUVSCgpFWFBMT1NJ T04gICB8IHNwb2phCgpGVVJZIFNXSVBFUwoKQk9ORU1FUkFORwoKUkVTVCAgICAgICAgfCBzdXJs YQoKUk9DSyBTTElERQoKSFlQRVIgRkFORwoKU0hBUlBFTgoKQ09OVkVSU0lPTgoKVFJJIEFUVEFD SwoKU1VQRVIgRkFORwoKU0xBU0gKClNVQlNUSVRVVEUgIHwgYmFzeWdhdQoKU1RSVUdHTEV8fAoK CgohISBEaWFsb2d1ZQoKCgpfX0NvbmRpdGlvbnMgZm9yIERpYWxvZ3VlX18KCiogZnVsbCBicmlk aSwgbm8gY2hhcmFjdGVyIGxpbWl0LCBzaG91bGQgYmUgc3RyYWlnaHRmb3J3YXJkCgoqIEknbGwg d29ycnkgYWJvdXQgbGluZSBicmVha3MgZm9yIHlvdSA6KSBQbGVhc2UgcHV0IHsuaX0gaW4sIGhv d2V2ZXIuIERvbid0IGFkZCBpdCBpZiB0aGVyZSdzIG9ubHkgb25lIGJyaWRpLiAtKChKb2UgQW5k ZXJzb24pCgoqIHJlcGxhY2UgIiNNT04iIHdpdGgge3Bva21hfQoKCgohISEgUG9rZWRleCBFbnRy aWVzCgoKCnx8X19Qb2tlbW9uX198X19FbmdsaXNoX198X19Mb2piYW5fXwoKUmh5ZG9uIHwgUHJv dGVjdGVkIGJ5IGFuIGFybW9yLWxpa2UgaGlkZSwgaXQgaXMgY2FwYWJsZSBvZiBsaXZpbmcgaW4g bW9sdGVuIGxhdmEgb2YgMyw2MDAgZGVncmVlcwoKS2FuZ2Fza2hhbiB8IFRoZSBpbmZhbnQgcmFy ZWx5IHZlbnR1cmVzIG91dCBvZiBpdHMgbW90aGVyJ3MgcHJvdGVjdGl2ZSBwb3VjaCB1bnRpbCBp dCBpcyAzIHllYXJzIG9sZAoKTmlkb3Jhbk0gfCBTdGlmZmVucyBpdHMgZWFycyB0byBzZW5zZSBk YW5nZXIuIFRoZSBsYXJnZXIgaXRzIGhvcm5zLCB0aGUgbW9yZSBwb3dlcmZ1bCBpdHMgc2VjcmV0 ZWQgdmVub20KCkNsZWZhaXJ5IHwgSXRzIG1hZ2ljYWwgYW5kIGN1dGUgYXBwZWFsIGhhcyBtYW55 IGFkbWlyZXJzLiBJdCBpcyByYXJlIGFuZCBmb3VuZCBvbmx5IGluIGNlcnRhaW4gYXJlYXMKClNw ZWFyb3cgfCBFYXRzIGJ1Z3MgaW4gZ3Jhc3N5IGFyZWFzLiBJdCBoYXMgdG8gZmxhcCBpdHMgc2hv cnQgd2luZ3MgYXQgaGlnaCBzcGVlZCB0byBzdGF5IGFpcmJvcm5lCgpWb2x0b3JiIHwgVXN1YWxs eSBmb3VuZCBpbiBwb3dlciBwbGFudHMuIEVhc2lseSBtaXN0YWtlbiBmb3IgYSAjIEJBTEwsIHRo ZXkgaGF2ZSB6YXBwZWQgbWFueSBwZW9wbGUKCk5pZG9raW5nIHwgSXQgdXNlcyBpdHMgcG93ZXJm dWwgdGFpbCBpbiBiYXR0bGUgdG8gc21hc2gsIGNvbnN0cmljdCwgdGhlbiBicmVhayB0aGUgcHJl eSdzIGJvbmVzCgpTbG93YnJvIHwgVGhlIFNIRUxMREVSIHRoYXQgaXMgbGF0Y2hlZCBvbnRvIFNM T1dQT0tFJ3MgdGFpbCBpcyBzYWlkIHRvIGZlZWQgb24gdGhlIGhvc3QncyBsZWZ0IG92ZXIgc2Ny YXBzCgpJdnlzYXVyIHwgV2hlbiB0aGUgYnVsYiBvbiBpdHMgYmFjayBncm93cyBsYXJnZSwgaXQg YXBwZWFycyB0byBsb3NlIHRoZSBhYmlsaXR5IHRvIHN0YW5kIG9uIGl0cyBoaW5kIGxlZ3MKCkV4 ZWdndXRvciB8IExlZ2VuZCBoYXMgaXQgdGhhdCBvbiByYXJlIG9jY2FzaW9ucywgb25lIG9mIGl0 cyBoZWFkcyB3aWxsIGRyb3Agb2ZmIGFuZCBjb250aW51ZSBvbiBhcyBhbiBFWEVHR0NVVEUKCkxp Y2tpdHVuZyB8IEl0cyB0b25ndWUgY2FuIGJlIGV4dGVuZGVkIGxpa2UgYSBjaGFtZWxlb24ncy4g SXQgbGVhdmVzIGEgdGluZ2xpbmcgc2Vuc2F0aW9uIHdoZW4gaXQgbGlja3MgZW5lbWllcwoKRXhl Z2djdXRlIHwgT2Z0ZW4gbWlzdGFrZW4gZm9yIGVnZ3MuIFdoZW4gZGlzdHVyYmVkLCB0aGV5IHF1 aWNrbHkgZ2F0aGVyIGFuZCBhdHRhY2sgaW4gc3dhcm1zCgpHcmltZXIgfCBBcHBlYXJzIGluIGZp bHRoeSBhcmVhcy4gVGhyaXZlcyBieSBzdWNraW5nIHVwIHBvbGx1dGVkIHNsdWRnZSB0aGF0IGlz IHB1bXBlZCBvdXQgb2YgZmFjdG9yaWVzCgpHZW5nYXIgfCBVbmRlciBhIGZ1bGwgbW9vbiwgdGhp cyAjTU9OIGxpa2VzIHRvIG1pbWljIHRoZSBzaGFkb3dzIG9mIHBlb3BsZSBhbmQgbGF1Z2ggYXQg dGhlaXIgZnJpZ2h0CgpOaWRvcmFuRiB8IEFsdGhvdWdoIHNtYWxsLCBpdHMgdmVub21vdXMgYmFy YnMgcmVuZGVyIHRoaXMgI01PTiBkYW5nZXJvdXMuIFRoZSBmZW1hbGUgaGFzIHNtYWxsZXIgaG9y bnMKCk5pZG9xdWVlbiB8IEl0cyBoYXJkIHNjYWxlcyBwcm92aWRlIHN0cm9uZyBwcm90ZWN0aW9u LiBJdCB1c2VzIGl0cyBoZWZ0eSBidWxrIHRvIGV4ZWN1dGUgcG93ZXJmdWwgbW92ZXMKCkN1Ym9u ZSB8IEJlY2F1c2UgaXQgbmV2ZXIgcmVtb3ZlcyBpdHMgc2t1bGwgaGVsbWV0LCBubyBvbmUgaGFz IGV2ZXIgc2VlbiB0aGlzICNNT04ncyByZWFsIGZhY2UKClJoeWhvcm4gfCBJdHMgbWFzc2l2ZSBi b25lcyBhcmUgMTAwMCB0aW1lcyBoYXJkZXIgdGhhbiBodW1hbiBib25lcy4gSXQgY2FuIGVhc2ls eSBrbm9jayBhIHRyYWlsZXIgZmx5aW5nCgpMYXByYXMgfCBBICNNT04gdGhhdCBoYXMgYmVlbiBv dmVyLSBodW50ZWQgYWxtb3N0IHRvIGV4dGluY3Rpb24uIEl0IGNhbiBmZXJyeSBwZW9wbGUgYWNy b3NzIHRoZSB3YXRlcgoKQXJjYW5pbmUgfCBBICNNT04gdGhhdCBoYXMgYmVlbiBhZG1pcmVkIHNp bmNlIHRoZSBwYXN0IGZvciBpdHMgYmVhdXR5LiBJdCBydW5zIGFnaWxlbHkgYXMgaWYgb24gd2lu Z3MKCk1ldyB8IFNvIHJhcmUgdGhhdCBpdCBpcyBzdGlsbCBzYWlkIHRvIGJlIGEgbWlyYWdlIGJ5 IG1hbnkgZXhwZXJ0cy4gT25seSBhIGZldyBwZW9wbGUgaGF2ZSBzZWVuIGl0IHdvcmxkd2lkZQoK R3lhcmFkb3MgfCBSYXJlbHkgc2VlbiBpbiB0aGUgd2lsZC4gSHVnZSBhbmQgdmljaW91cywgaXQg aXMgY2FwYWJsZSBvZiBkZXN0cm95aW5nIGVudGlyZSBjaXRpZXMgaW4gYSByYWdlCgpTaGVsbGRl ciB8IEl0cyBoYXJkIHNoZWxsIHJlcGVscyBhbnkga2luZCBvZiBhdHRhY2suIEl0IGlzIHZ1bG5l cmFibGUgb25seSB3aGVuIGl0cyBzaGVsbCBpcyBvcGVuCgpUZW50YWNvb2wgfCBEcmlmdHMgaW4g c2hhbGxvdyBzZWFzLiBBbmdsZXJzIHdobyBob29rIHRoZW0gYnkgYWNjaWRlbnQgYXJlIG9mdGVu IHB1bmlzaGVkIGJ5IGl0cyBzdGluZ2luZyBhY2lkCgpHYXN0bHkgfCBBbG1vc3QgaW52aXNpYmxl LCB0aGlzIGdhc2VvdXMgI01PTiBjbG9ha3MgdGhlIHRhcmdldCBhbmQgcHV0cyBpdCB0byBzbGVl cCB3aXRob3V0IG5vdGljZQoKU2N5dGhlciB8IFdpdGggbmluamEtbGlrZSBhZ2lsaXR5IGFuZCBz cGVlZCwgaXQgY2FuIGNyZWF0ZSB0aGUgaWxsdXNpb24gdGhhdCB0aGVyZSBpcyBtb3JlIHRoYW4g b25lCgpTdGFyeXUgfCBBbiBlbmlnbWF0aWMgI01PTiB0aGF0IGNhbiBlZmZvcnRsZXNzbHkgcmVn ZW5lcmF0ZSBhbnkgYXBwZW5kYWdlIGl0IGxvc2VzIGluIGJhdHRsZQoKQmxhc3RvaXNlIHwgQSBi cnV0YWwgI01PTiB3aXRoIHByZXNzdXJpemVkIHdhdGVyIGpldHMgb24gaXRzIHNoZWxsLiBUaGV5 IGFyZSB1c2VkIGZvciBoaWdoIHNwZWVkIHRhY2tsZXMKClBpbnNpciB8IElmIGl0IGZhaWxzIHRv IGNydXNoIHRoZSB2aWN0aW0gaW4gaXRzIHBpbmNlcnMsIGl0IHdpbGwgc3dpbmcgaXQgYXJvdW5k IGFuZCB0b3NzIGl0IGhhcmQKClRhbmdlbGEgfCBUaGUgd2hvbGUgYm9keSBpcyBzd2F0aGVkIHdp dGggd2lkZSB2aW5lcyB0aGF0IGFyZSBzaW1pbGFyIHRvIHNlYS0gd2VlZC4gSXRzIHZpbmVzIHNo YWtlIGFzIGl0IHdhbGtzCgpHcm93bGl0aGUgfCBWZXJ5IHByb3RlY3RpdmUgb2YgaXRzIHRlcnJp dG9yeS4gSXQgd2lsbCBiYXJrIGFuZCBiaXRlIHRvIHJlcGVsIGludHJ1ZGVycyBmcm9tIGl0cyBz cGFjZQoKT25peCB8IEFzIGl0IGdyb3dzLCB0aGUgc3RvbmUgcG9ydGlvbnMgb2YgaXRzIGJvZHkg aGFyZGVuIHRvIGJlY29tZSBzaW1pbGFyIHRvIGEgZGlhbW9uZCwgYnV0IGNvbG9yZWQgYmxhY2sK CkZlYXJvdyB8IFdpdGggaXRzIGh1Z2UgYW5kIG1hZ25pZmljZW50IHdpbmdzLCBpdCBjYW4ga2Vl cCBhbG9mdCB3aXRob3V0IGV2ZXIgaGF2aW5nIHRvIGxhbmQgZm9yIHJlc3QKClBpZGdleSB8IEEg Y29tbW9uIHNpZ2h0IGluIGZvcmVzdHMgYW5kIHdvb2RzLiBJdCBmbGFwcyBpdHMgd2luZ3MgYXQg Z3JvdW5kIGxldmVsIHRvIGtpY2sgdXAgYmxpbmRpbmcgc2FuZAoKU2xvd3Bva2UgfCBJbmNyZWRp Ymx5IHNsb3cgYW5kIGRvcGV5LiBJdCB0YWtlcyA1IHNlY29uZHMgZm9yIGl0IHRvIGZlZWwgcGFp biB3aGVuIHVuZGVyIGF0dGFjawoKS2FkYWJyYSB8IEl0IGVtaXRzIHNwZWNpYWwgYWxwaGEgd2F2 ZXMgZnJvbSBpdHMgYm9keSB0aGF0IGluZHVjZSBoZWFkYWNoZXMganVzdCBieSBiZWluZyBjbG9z ZSBieQoKR3JhdmVsZXIgfCBSb2xscyBkb3duIHNsb3BlcyB0byBtb3ZlLiBJdCByb2xscyBvdmVy IGFueSBvYnN0YWNsZSB3aXRob3V0IHNsb3dpbmcgb3IgY2hhbmdpbmcgaXRzIGRpcmVjdGlvbgoK Q2hhbnNleSB8IEEgcmFyZSBhbmQgZWx1c2l2ZSAjTU9OIHRoYXQgaXMgc2FpZCB0byBicmluZyBo YXBwaW5lc3MgdG8gdGhvc2Ugd2hvIG1hbmFnZSB0byBnZXQgaXQKCk1hY2hva2UgfCBJdHMgbXVz Y3VsYXIgYm9keSBpcyBzbyBwb3dlcmZ1bCwgaXQgbXVzdCB3ZWFyIGEgcG93ZXIgc2F2ZSBiZWx0 IHRvIGJlIGFibGUgdG8gcmVndWxhdGUgaXRzIG1vdGlvbnMKCk1yTWltZSB8IElmIGludGVycnVw dGVkIHdoaWxlIGl0IGlzIG1pbWluZywgaXQgd2lsbCBzbGFwIGFyb3VuZCB0aGUgb2ZmZW5kZXIg d2l0aCBpdHMgYnJvYWQgaGFuZHMKCkhpdG1vbmxlZSB8IFdoZW4gaW4gYSBodXJyeSwgaXRzIGxl Z3MgbGVuZ3RoZW4gcHJvZ3Jlc3NpdmVseS4gSXQgcnVucyBzbW9vdGhseSB3aXRoIGV4dHJhIGxv bmcsIGxvcGluZyBzdHJpZGVzCgpIaXRtb25jaGFuIHwgV2hpbGUgYXBwYXJlbnRseSBkb2luZyBu b3RoaW5nLCBpdCBmaXJlcyBwdW5jaGVzIGluIGxpZ2h0bmluZyBmYXN0IHZvbGxleXMgdGhhdCBh cmUgaW1wb3NzaWJsZSB0byBzZWUKCkFyYm9rIHwgSXQgaXMgcnVtb3JlZCB0aGF0IHRoZSBmZXJv Y2lvdXMgd2FybmluZyBtYXJraW5ncyBvbiBpdHMgYmVsbHkgZGlmZmVyIGZyb20gYXJlYSB0byBh cmVhCgpQYXJhc2VjdCB8IEEgaG9zdC1wYXJhc2l0ZSBwYWlyIGluIHdoaWNoIHRoZSBwYXJhc2l0 ZSBtdXNocm9vbSBoYXMgdGFrZW4gb3ZlciB0aGUgaG9zdCBidWcuIFByZWZlcnMgZGFtcCBwbGFj ZXMKClBzeWR1Y2sgfCBXaGlsZSBsdWxsaW5nIGl0cyBlbmVtaWVzIHdpdGggaXRzIHZhY2FudCBs b29rLCB0aGlzIHdpbHkgI01PTiB3aWxsIHVzZSBwc3ljaG9raW5ldGljIHBvd2VycwoKRHJvd3pl ZSB8IFB1dHMgZW5lbWllcyB0byBzbGVlcCB0aGVuIGVhdHMgdGhlaXIgZHJlYW1zLiBPY2Nhc2lv bmFsbHkgZ2V0cyBzaWNrIGZyb20gZWF0aW5nIGJhZCBkcmVhbXMKCkdvbGVtIHwgSXRzIGJvdWxk ZXItbGlrZSBib2R5IGlzIGV4dHJlbWVseSBoYXJkLiBJdCBjYW4gZWFzaWx5IHdpdGhzdGFuZCBk eW5hbWl0ZSBibGFzdHMgd2l0aG91dCBkYW1hZ2UKCk1hZ21hciB8IEl0cyBib2R5IGFsd2F5cyBi dXJucyB3aXRoIGFuIG9yYW5nZSBnbG93IHRoYXQgZW5hYmxlcyBpdCB0byBoaWRlIHBlcmZlY3Rs eSBhbW9uZyBmbGFtZXMKCkVsZWN0YWJ1enogfCBOb3JtYWxseSBmb3VuZCBuZWFyIHBvd2VyIHBs YW50cywgdGhleSBjYW4gd2FuZGVyIGF3YXkgYW5kIGNhdXNlIG1ham9yIGJsYWNrb3V0cyBpbiBj aXRpZXMKCk1hZ25ldG9uIHwgRm9ybWVkIGJ5IHNldmVyYWwgTUFHTkVNSVRFcyBsaW5rZWQgdG9n ZXRoZXIuIFRoZXkgZnJlcXVlbnRseSBhcHBlYXIgd2hlbiBzdW5zcG90cyBmbGFyZSB1cAoKS29m ZmluZyB8IEJlY2F1c2UgaXQgc3RvcmVzIHNldmVyYWwga2luZHMgb2YgdG94aWMgZ2FzZXMgaW4g aXRzIGJvZHksIGl0IGlzIHByb25lIHRvIGV4cGxvZGluZyB3aXRob3V0IHdhcm5pbmcKCk1hbmtl eSB8IEV4dHJlbWVseSBxdWljayB0byBhbmdlci4gSXQgY291bGQgYmUgZG9jaWxlIG9uZSBtb21l bnQgdGhlbiB0aHJhc2hpbmcgYXdheSB0aGUgbmV4dCBpbnN0YW50CgpTZWVsIHwgVGhlIHByb3Ry dWRpbmcgaG9ybiBvbiBpdHMgaGVhZCBpcyB2ZXJ5IGhhcmQuIEl0IGlzIHVzZWQgZm9yIGJhc2hp bmcgdGhyb3VnaCB0aGljayBpY2UKCkRpZ2xldHQgfCBMaXZlcyBhYm91dCBvbmUgeWFyZCB1bmRl cmdyb3VuZCB3aGVyZSBpdCBmZWVkcyBvbiBwbGFudCByb290cy4gSXQgc29tZXRpbWVzIGFwcGVh cnMgYWJvdmUgZ3JvdW5kCgpUYXVyb3MgfCBXaGVuIGl0IHRhcmdldHMgYW4gZW5lbXksIGl0IGNo YXJnZXMgZnVyaW91c2x5IHdoaWxlIHdoaXBwaW5nIGl0cyBib2R5IHdpdGggaXRzIGxvbmcgdGFp bHMKCkZhcmZldGNoZCB8IFRoZSBzcHJpZyBvZiBncmVlbiBvbmlvbnMgaXQgaG9sZHMgaXMgaXRz IHdlYXBvbi4gSXQgaXMgdXNlZCBtdWNoIGxpa2UgYSBtZXRhbCBzd29yZAoKVmVub25hdCB8IExp dmVzIGluIHRoZSBzaGFkb3dzIG9mIHRhbGwgdHJlZXMgd2hlcmUgaXQgZWF0cyBpbnNlY3RzLiBJ dCBpcyBhdHRyYWN0ZWQgYnkgbGlnaHQgYXQgbmlnaHQKCkRyYWdvbml0ZSB8IEFuIGV4dHJlbWVs eSByYXJlbHkgc2VlbiBtYXJpbmUgI01PTi4gSXRzIGludGVsbGlnZW5jZSBpcyBzYWlkIHRvIG1h dGNoIHRoYXQgb2YgaHVtYW5zCgpEb2R1byB8IEEgYmlyZCB0aGF0IG1ha2VzIHVwIGZvciBpdHMg cG9vciBmbHlpbmcgd2l0aCBpdHMgZmFzdCBmb290IHNwZWVkLiBMZWF2ZXMgZ2lhbnQgZm9vdHBy aW50cwoKUG9saXdhZyB8IEl0cyBuZXdseSBncm93biBsZWdzIHByZXZlbnQgaXQgZnJvbSBydW5u aW5nLiBJdCBhcHBlYXJzIHRvIHByZWZlciBzd2ltbWluZyB0aGFuIHRyeWluZyB0byBzdGFuZAoK SnlueCB8IEl0IHNlZHVjdGl2ZWx5IHdpZ2dsZXMgaXRzIGhpcHMgYXMgaXQgd2Fsa3MuIEl0IGNh biBjYXVzZSBwZW9wbGUgdG8gZGFuY2UgaW4gdW5pc29uIHdpdGggaXQKCk1vbHRyZXMgfCBLbm93 biBhcyB0aGUgbGVnZW5kYXJ5IGJpcmQgb2YgZmlyZS4gRXZlcnkgZmxhcCBvZiBpdHMgd2luZ3Mg Y3JlYXRlcyBhIGRhenpsaW5nIGZsYXNoIG9mIGZsYW1lcwoKQXJ0aWN1bm8gfCBBIGxlZ2VuZGFy eSBiaXJkICNNT04gdGhhdCBpcyBzYWlkIHRvIGFwcGVhciB0byBkb29tZWQgcGVvcGxlIHdobyBh cmUgbG9zdCBpbiBpY3kgbW91bnRhaW5zCgpaYXBkb3MgfCBBIGxlZ2VuZGFyeSBiaXJkICNNT04g dGhhdCBpcyBzYWlkIHRvIGFwcGVhciBmcm9tIGNsb3VkcyB3aGlsZSBkcm9wcGluZyBlbm9ybW91 cyBsaWdodG5pbmcgYm9sdHMKCkRpdHRvIHwgQ2FwYWJsZSBvZiBjb3B5aW5nIGFuIGVuZW15J3Mg Z2VuZXRpYyBjb2RlIHRvIGluc3RhbnRseSB0cmFuc2Zvcm0gaXRzZWxmIGludG8gYSBkdXBsaWNh dGUgb2YgdGhlIGVuZW15CgpNZW93dGggfCBBZG9yZXMgY2lyY3VsYXIgb2JqZWN0cy4gV2FuZGVy cyB0aGUgc3RyZWV0cyBvbiBhIG5pZ2h0bHkgYmFzaXMgdG8gbG9vayBmb3IgZHJvcHBlZCBsb29z ZSBjaGFuZ2UKCktyYWJieSB8IEl0cyBwaW5jZXJzIGFyZSBub3Qgb25seSBwb3dlcmZ1bCB3ZWFw b25zLCB0aGV5IGFyZSB1c2VkIGZvciBiYWxhbmNlIHdoZW4gd2Fsa2luZyBzaWRld2F5cwoKVnVs cGl4IHwgQXQgdGhlIHRpbWUgb2YgYmlydGgsIGl0IGhhcyBqdXN0IG9uZSB0YWlsLiBUaGUgdGFp bCBzcGxpdHMgZnJvbSBpdHMgdGlwIGFzIGl0IGdyb3dzIG9sZGVyCgpOaW5ldGFsZXMgfCBWZXJ5 IHNtYXJ0IGFuZCB2ZXJ5IHZlbmdlZnVsLiBHcmFiYmluZyBvbmUgb2YgaXRzIG1hbnkgdGFpbHMg Y291bGQgcmVzdWx0IGluIGEgMTAwMC15ZWFyIGN1cnNlCgpQaWthY2h1IHwgV2hlbiBzZXZlcmFs IG9mIHRoZXNlICNNT04gZ2F0aGVyLCB0aGVpciBlbGVjdHJpY2l0eSBjb3VsZCBidWlsZCBhbmQg Y2F1c2UgbGlnaHRuaW5nIHN0b3JtcwoKUmFpY2h1IHwgSXRzIGxvbmcgdGFpbCBzZXJ2ZXMgYXMg YSBncm91bmQgdG8gcHJvdGVjdCBpdHNlbGYgZnJvbSBpdHMgb3duIGhpZ2ggdm9sdGFnZSBwb3dl cgoKRHJhdGluaSB8IExvbmcgY29uc2lkZXJlZCBhIG15dGhpY2FsICNNT04gdW50aWwgcmVjZW50 bHkgd2hlbiBhIHNtYWxsIGNvbG9ueSB3YXMgZm91bmQgbGl2aW5nIHVuZGVyd2F0ZXIKCkRyYWdv bmFpciB8IEEgbXlzdGljYWwgI01PTiB0aGF0IGV4dWRlcyBhIGdlbnRsZSBhdXJhLiBIYXMgdGhl IGFiaWxpdHkgdG8gY2hhbmdlIGNsaW1hdGUgY29uZGl0aW9ucwoKS2FidXRvIHwgQSAjTU9OIHRo YXQgd2FzIHJlc3VycmVjdGVkIGZyb20gYSBmb3NzaWwgZm91bmQgaW4gd2hhdCB3YXMgb25jZSB0 aGUgb2NlYW4gZmxvb3IgZW9ucyBhZ28KCkthYnV0b3BzIHwgSXRzIHNsZWVrIHNoYXBlIGlzIHBl cmZlY3QgZm9yIHN3aW0tIG1pbmcuIEl0IHNsYXNoZXMgcHJleSB3aXRoIGl0cyBjbGF3cyBhbmQg ZHJhaW5zIHRoZSBib2R5IGZsdWlkcwoKSG9yc2VhIHwgS25vd24gdG8gc2hvb3QgZG93biBmbHlp bmcgYnVncyB3aXRoIHByZWNpc2lvbiBibGFzdHMgb2YgaW5rIGZyb20gdGhlIHN1cmZhY2Ugb2Yg dGhlIHdhdGVyCgpTZWFkcmEgfCBDYXBhYmxlIG9mIHN3aW0tIG1pbmcgYmFja3dhcmRzIGJ5IHJh cGlkbHkgZmxhcHBpbmcgaXRzIHdpbmctbGlrZSBwZWN0b3JhbCBmaW5zIGFuZCBzdG91dCB0YWls CgpTYW5kc2hyZXcgfCBCdXJyb3dzIGRlZXAgdW5kZXJncm91bmQgaW4gYXJpZCBsb2NhdGlvbnMg ZmFyIGZyb20gd2F0ZXIuIEl0IG9ubHkgZW1lcmdlcyB0byBodW50IGZvciBmb29kCgpTYW5kc2xh c2ggfCBDdXJscyB1cCBpbnRvIGEgc3BpbnkgYmFsbCB3aGVuIHRocmVhdGVuZWQuIEl0IGNhbiBy b2xsIHdoaWxlIGN1cmxlZCB1cCB0byBhdHRhY2sgb3IgZXNjYXBlCgpPbWFueXRlIHwgQWx0aG91 Z2ggbG9uZyBleHRpbmN0LCBpbiByYXJlIGNhc2VzLCBpdCBjYW4gYmUgZ2VuZXRpY2FsbHkgcmVz dXJyZWN0ZWQgZnJvbSBmb3NzaWxzCgpPbWFzdGFyIHwgQSBwcmVoaXN0b3JpYyAjTU9OIHRoYXQg ZGllZCBvdXQgd2hlbiBpdHMgaGVhdnkgc2hlbGwgbWFkZSBpdCBpbXBvc3NpYmxlIHRvIGNhdGNo IHByZXkKCkppZ2dseXB1ZmYgfCBXaGVuIGl0cyBodWdlIGV5ZXMgbGlnaHQgdXAsIGl0IHNpbmdz IGEgbXlzdGVyaW91c2x5IHNvb3RoaW5nIG1lbG9keSB0aGF0IGx1bGxzIGl0cyBlbmVtaWVzIHRv IHNsZWVwCgpXaWdnbHl0dWZmIHwgVGhlIGJvZHkgaXMgc29mdCBhbmQgcnViYmVyeS4gV2hlbiBh bmdlcmVkLCBpdCB3aWxsIHN1Y2sgaW4gYWlyIGFuZCBpbmZsYXRlIGl0c2VsZiB0byBhbiBlbm9y bW91cyBzaXplCgpFZXZlZSB8IEl0cyBnZW5ldGljIGNvZGUgaXMgaXJyZWd1bGFyLiBJdCBtYXkg bXV0YXRlIGlmIGl0IGlzIGV4cG9zZWQgdG8gcmFkaWF0aW9uIGZyb20gZWxlbWVudCBTVE9ORXMK CkZsYXJlb24gfCBXaGVuIHN0b3JpbmcgdGhlcm1hbCBlbmVyZ3kgaW4gaXRzIGJvZHksIGl0cyB0 ZW1wZXJhdHVyZSBjb3VsZCBzb2FyIHRvIG92ZXIgMTYwMCBkZWdyZWVzCgpKb2x0ZW9uIHwgSXQg YWNjdW11bGF0ZXMgbmVnYXRpdmUgaW9ucyBpbiB0aGUgYXRtb3NwaGVyZSB0byBibGFzdCBvdXQg MTAwMDAtIHZvbHQgbGlnaHRuaW5nIGJvbHRzCgpWYXBvcmVvbiB8IExpdmVzIGNsb3NlIHRvIHdh dGVyLiBJdHMgbG9uZyB0YWlsIGlzIHJpZGdlZCB3aXRoIGEgZmluIHdoaWNoIGlzIG9mdGVuIG1p c3Rha2VuIGZvciBhIG1lcm1haWQncwoKTWFjaG9wIHwgTG92ZXMgdG8gYnVpbGQgaXRzIG11c2Ns ZXMuIEl0IHRyYWlucyBpbiBhbGwgc3R5bGVzIG9mIG1hcnRpYWwgYXJ0cyB0byBiZWNvbWUgZXZl biBzdHJvbmdlcgoKWnViYXQgfCBGb3JtcyBjb2xvbmllcyBpbiBwZXJwZXR1YWxseSBkYXJrIHBs YWNlcy4gVXNlcyB1bHRyYXNvbmljIHdhdmVzIHRvIGlkZW50aWZ5IGFuZCBhcHByb2FjaCB0YXJn ZXRzCgpFa2FucyB8IE1vdmVzIHNpbGVudGx5IGFuZCBzdGVhbHRoaWx5LiBFYXRzIHRoZSBlZ2dz IG9mIGJpcmRzLCBzdWNoIGFzIFBJREdFWSBhbmQgU1BFQVJPVywgd2hvbGUKClBhcmFzIHwgQnVy cm93cyB0byBzdWNrIHRyZWUgcm9vdHMuIFRoZSBtdXNocm9vbXMgb24gaXRzIGJhY2sgZ3JvdyBi eSBkcmF3LSBpbmcgbnV0cmllbnRzIGZyb20gdGhlIGJ1ZyBob3N0CgpQb2xpd2hpcmwgfCBDYXBh YmxlIG9mIGxpdmluZyBpbiBvciBvdXQgb2Ygd2F0ZXIuIFdoZW4gb3V0IG9mIHdhdGVyLCBpdCBz d2VhdHMgdG8ga2VlcCBpdHMgYm9keSBzbGlteQoKUG9saXdyYXRoIHwgQW4gYWRlcHQgc3dpbW1l ciBhdCBib3RoIHRoZSBmcm9udCBjcmF3bCBhbmQgYnJlYXN0IHN0cm9rZS4gRWFzaWx5IG92ZXJ0 YWtlcyB0aGUgYmVzdCBodW1hbiBzd2ltbWVycwoKV2VlZGxlIHwgT2Z0ZW4gZm91bmQgaW4gZm9y ZXN0cywgZWF0aW5nIGxlYXZlcy4gSXQgaGFzIGEgc2hhcnAgdmVub21vdXMgc3RpbmdlciBvbiBp dHMgaGVhZAoKS2FrdW5hIHwgQWxtb3N0IGluY2FwYWJsZSBvZiBtb3ZpbmcsIHRoaXMgI01PTiBj YW4gb25seSBoYXJkZW4gaXRzIHNoZWxsIHRvIHByb3RlY3QgaXRzZWxmIGZyb20gcHJlZGF0b3Jz CgpCZWVkcmlsbCB8IEZsaWVzIGF0IGhpZ2ggc3BlZWQgYW5kIGF0dGFja3MgdXNpbmcgaXRzIGxh cmdlIHZlbm9tb3VzIHN0aW5nZXJzIG9uIGl0cyBmb3JlbGVncyBhbmQgdGFpbAoKRG9kcmlvIHwg VXNlcyBpdHMgdGhyZWUgYnJhaW5zIHRvIGV4ZWN1dGUgY29tcGxleCBwbGFucy4gV2hpbGUgdHdv IGhlYWRzIHNsZWVwLCBvbmUgaGVhZCBzdGF5cyBhd2FrZQoKUHJpbWVhcGUgfCBBbHdheXMgZnVy aW91cyBhbmQgdGVuYWNpb3VzIHRvIGJvb3QuIEl0IHdpbGwgbm90IGFiYW5kb24gY2hhc2luZyBp dHMgcXVhcnJ5IHVudGlsIGl0IGlzIGNhdWdodAoKRHVndHJpbyB8IEEgdGVhbSBvZiBESUdMRVRU IHRyaXBsZXRzLiBJdCB0cmlnZ2VycyBodWdlIGVhcnRocXVha2VzIGJ5IGJ1cnJvd2luZyA2MCBt aWxlcyB1bmRlcmdyb3VuZAoKVmVub21vdGggfCBUaGUgZHVzdC1saWtlIHNjYWxlcyBjb3Zlcmlu ZyBpdHMgd2luZ3MgYXJlIGNvbG9yIGNvZGVkIHRvIGluZGljYXRlIHRoZSBraW5kcyBvZiBwb2lz b24gaXQgaGFzCgpEZXdnb25nIHwgU3RvcmVzIHRoZXJtYWwgZW5lcmd5IGluIGl0cyBib2R5LiBT d2ltcyBhdCBhIHN0ZWFkeSA4IGtub3RzIGV2ZW4gaW4gaW50ZW5zZWx5IGNvbGQgd2F0ZXJzCgpD YXRlcnBpZSB8IEl0cyBzaG9ydCBmZWV0IGFyZSB0aXBwZWQgd2l0aCBzdWN0aW9uIHBhZHMgdGhh dCBlbmFibGUgaXQgdG8gdGlyZWxlc3NseSBjbGltYiBzbG9wZXMgYW5kIHdhbGxzCgpNZXRhcG9k IHwgVGhpcyAjTU9OIGlzIHZ1bG5lcmFibGUgdG8gYXR0YWNrIHdoaWxlIGl0cyBzaGVsbCBpcyBz b2Z0LCBleHBvc2luZyBpdHMgd2VhayBhbmQgdGVuZGVyIGJvZHkKCkJ1dHRlcmZyZWUgfCBJbiBi YXR0bGUsIGl0IGZsYXBzIGl0cyB3aW5ncyBhdCBoaWdoIHNwZWVkIHRvIHJlbGVhc2UgaGlnaGx5 IHRveGljIGR1c3QgaW50byB0aGUgYWlyCgpNYWNoYW1wIHwgVXNpbmcgaXRzIGhlYXZ5IG11c2Ns ZXMsIGl0IHRocm93cyBwb3dlcmZ1bCBwdW5jaGVzIHRoYXQgY2FuIHNlbmQgdGhlIHZpY3RpbSBj bGVhciBvdmVyIHRoZSBob3Jpem9uCgpHb2xkdWNrIHwgT2Z0ZW4gc2VlbiBzd2ltLSBtaW5nIGVs ZWdhbnRseSBieSBsYWtlIHNob3Jlcy4gSXQgaXMgb2Z0ZW4gbWlzdGFrZW4gZm9yIHRoZSBKYXBh bmVzZSBtb25zdGVyLCBLYXBwYQoKSHlwbm8gfCBXaGVuIGl0IGxvY2tzIGV5ZXMgd2l0aCBhbiBl bmVteSwgaXQgd2lsbCB1c2UgYSBtaXggb2YgUFNJIG1vdmVzIHN1Y2ggYXMgSFlQTk9TSVMgYW5k IENPTkZVU0lPTgoKR29sYmF0IHwgT25jZSBpdCBzdHJpa2VzLCBpdCB3aWxsIG5vdCBzdG9wIGRy YWluaW5nIGVuZXJneSBmcm9tIHRoZSB2aWN0aW0gZXZlbiBpZiBpdCBnZXRzIHRvbyBoZWF2eSB0 byBmbHkKCk1ld3R3byB8IEl0IHdhcyBjcmVhdGVkIGJ5IGEgc2NpZW50aXN0IGFmdGVyIHllYXJz IG9mIGhvcnJpZmljIGdlbmUgc3BsaWNpbmcgYW5kIEROQSBlbmdpbmVlcmluZyBleHBlcmltZW50 cwoKU25vcmxheCB8IFZlcnkgbGF6eS4gSnVzdCBlYXRzIGFuZCBzbGVlcHMuIEFzIGl0cyByb3R1 bmQgYnVsayBidWlsZHMsIGl0IGJlY29tZXMgc3RlYWRpbHkgbW9yZSBzbG90aGZ1bAoKTWFnaWth cnAgfCBJbiB0aGUgZGlzdGFudCBwYXN0LCBpdCB3YXMgc29tZXdoYXQgc3Ryb25nZXIgdGhhbiB0 aGUgaG9ycmlibHkgd2VhayBkZXNjZW5kYW50cyB0aGF0IGV4aXN0IHRvZGF5CgpNdWsgfCBUaGlj a2x5IGNvdmVyZWQgd2l0aCBhIGZpbHRoeSwgdmlsZSBzbHVkZ2UuIEl0IGlzIHNvIHRveGljLCBl dmVuIGl0cyBmb290cHJpbnRzIGNvbnRhaW4gcG9pc29uCgpLaW5nbGVyIHwgVGhlIGxhcmdlIHBp bmNlciBoYXMgMTAwMDAgaHAgb2YgY3J1c2hpbmcgcG93ZXIuIEhvd2V2ZXIsIGl0cyBodWdlIHNp emUgbWFrZXMgaXQgdW53aWVsZHkgdG8gdXNlCgpDbG95c3RlciB8IFdoZW4gYXR0YWNrZWQsIGl0 IGxhdW5jaGVzIGl0cyBob3JucyBpbiBxdWljayB2b2xsZXlzLiBJdHMgaW5uYXJkcyBoYXZlIG5l dmVyIGJlZW4gc2VlbgoKRWxlY3Ryb2RlIHwgSXQgc3RvcmVzIGVsZWN0cmljIGVuZXJneSB1bmRl ciB2ZXJ5IGhpZ2ggcHJlc3N1cmUuIEl0IG9mdGVuIGV4cGxvZGVzIHdpdGggbGl0dGxlIG9yIG5v IHByb3ZvY2F0aW9uCgpDbGVmYWJsZSB8IEEgdGltaWQgZmFpcnkgI01PTiB0aGF0IGlzIHJhcmVs eSBzZWVuLiBJdCB3aWxsIHJ1biBhbmQgaGlkZSB0aGUgbW9tZW50IGl0IHNlbnNlcyBwZW9wbGUK CldlZXppbmcgfCBXaGVyZSB0d28ga2luZHMgb2YgcG9pc29uIGdhc2VzIG1lZXQsIDIgS09GRklO R3MgY2FuIGZ1c2UgaW50byBhIFdFRVpJTkcgb3ZlciBtYW55IHllYXJzCgpQZXJzaWFuIHwgQWx0 aG91Z2ggaXRzIGZ1ciBoYXMgbWFueSBhZG1pcmVycywgaXQgaXMgdG91Z2ggdG8gcmFpc2UgYXMg YSBwZXQgYmVjYXVzZSBvZiBpdHMgZmlja2xlIG1lYW5uZXNzCgpNYXJvd2FrIHwgVGhlIGJvbmUg aXQgaG9sZHMgaXMgaXRzIGtleSB3ZWFwb24uIEl0IHRocm93cyB0aGUgYm9uZSBza2lsbGZ1bGx5 IGxpa2UgYSBib29tZXJhbmcgdG8gS08gdGFyZ2V0cwoKSGF1bnRlciB8IEJlY2F1c2Ugb2YgaXRz IGFiaWxpdHkgdG8gc2xpcCB0aHJvdWdoIGJsb2NrIHdhbGxzLCBpdCBpcyBzYWlkIHRvIGJlIGZy b20gYW4tIG90aGVyIGRpbWVuc2lvbgoKQWJyYSB8IFVzaW5nIGl0cyBhYmlsaXR5IHRvIHJlYWQg bWluZHMsIGl0IHdpbGwgaWRlbnRpZnkgaW1wZW5kaW5nIGRhbmdlciBhbmQgVEVMRVBPUlQgdG8g c2FmZXR5CgpBbGFrYXphbSB8IEl0cyBicmFpbiBjYW4gb3V0LSBwZXJmb3JtIGEgc3VwZXItIGNv bXB1dGVyLiBJdHMgaW50ZWxsaWdlbmNlIHF1b3RpZW50IGlzIHNhaWQgdG8gYmUgNSwwMDAKClBp ZGdlb3R0byB8IFZlcnkgcHJvdGVjdGl2ZSBvZiBpdHMgc3ByYXdsaW5nIHRlcnJpdG9yaWFsIGFy ZWEsIHRoaXMgI01PTiB3aWxsIGZpZXJjZWx5IHBlY2sgYXQgYW55IGludHJ1ZGVyCgpQaWRnZW90 IHwgV2hlbiBodW50aW5nLCBpdCBza2ltcyB0aGUgc3VyZmFjZSBvZiB3YXRlciBhdCBoaWdoIHNw ZWVkIHRvIHBpY2sgb2ZmIHVud2FyeSBwcmV5IHN1Y2ggYXMgTUFHSUtBUlAKClN0YXJtaWUgfCBJ dHMgY2VudHJhbCBjb3JlIGdsb3dzIHdpdGggdGhlIHNldmVuIGNvbG9ycyBvZiB0aGUgcmFpbmJv dy4gU29tZSBwZW9wbGUgdmFsdWUgdGhlIGNvcmUgYXMgYSBnZW0KCkJ1bGJhc2F1ciB8IEEgc3Ry YW5nZSBzZWVkIHdhcyBwbGFudGVkIG9uIGl0cyBiYWNrIGF0IGJpcnRoLiBUaGUgcGxhbnQgc3By b3V0cyBhbmQgZ3Jvd3Mgd2l0aCB0aGlzICNNT04KClZlbnVzYXVyIHwgVGhlIHBsYW50IGJsb29t cyB3aGVuIGl0IGlzIGFic29yYmluZyBzb2xhciBlbmVyZ3kuIEl0IHN0YXlzIG9uIHRoZSBtb3Zl IHRvIHNlZWsgc3VubGlnaHQKClRlbnRhY3J1ZWwgfCBUaGUgdGVudGFjbGVzIGFyZSBub3JtYWxs eSBrZXB0IHNob3J0LiBPbiBodW50cywgdGhleSBhcmUgZXh0ZW5kZWQgdG8gZW5zbmFyZSBhbmQg aW1tb2JpbGl6ZSBwcmV5CgpHb2xkZWVuIHwgSXRzIHRhaWwgZmluIGJpbGxvd3MgbGlrZSBhbiBl bGVnYW50IGJhbGxyb29tIGRyZXNzLCBnaXZpbmcgaXQgdGhlIG5pY2tuYW1lIG9mIHRoZSBXYXRl ciBRdWVlbgoKU2Vha2luZyB8IEluIHRoZSBhdXR1bW4gc3Bhd25pbmcgc2Vhc29uLCB0aGV5IGNh biBiZSBzZWVuIHN3aW1taW5nIHBvd2VyLSBmdWxseSB1cCByaXZlcnMgYW5kIGNyZWVrcwoKUG9u eXRhIHwgSXRzIGhvb3ZlcyBhcmUgMTAgdGltZXMgaGFyZGVyIHRoYW4gZGlhbW9uZHMuIEl0IGNh biB0cmFtcGxlIGFueXRoaW5nIGNvbXBsZXRlbHkgZmxhdCBpbiBsaXR0bGUgdGltZQoKUmFwaWRh c2ggfCBWZXJ5IGNvbXBldGl0aXZlLCB0aGlzICNNT04gd2lsbCBjaGFzZSBhbnl0aGluZyB0aGF0 IG1vdmVzIGZhc3QgaW4gdGhlIGhvcGVzIG9mIHJhY2luZyBpdAoKUmF0dGF0YSB8IEJpdGVzIGFu eXRoaW5nIHdoZW4gaXQgYXR0YWNrcy4gU21hbGwgYW5kIHZlcnkgcXVpY2ssIGl0IGlzIGEgY29t bW9uIHNpZ2h0IGluIG1hbnkgcGxhY2VzCgpSYXRpY2F0ZSB8IEl0IHVzZXMgaXRzIHdoaXMtIGtl cnMgdG8gbWFpbnRhaW4gaXRzIGJhbGFuY2UuIEl0IGFwcGFyZW50bHkgc2xvd3MgZG93biBpZiB0 aGV5IGFyZSBjdXQgb2ZmCgpOaWRvcmlubyB8IEFuIGFnZ3Jlc3NpdmUgI01PTiB0aGF0IGlzIHF1 aWNrIHRvIGF0dGFjay4gVGhlIGhvcm4gb24gaXRzIGhlYWQgc2VjcmV0ZXMgYSBwb3dlcmZ1bCB2 ZW5vbQoKTmlkb3JpbmEgfCBUaGUgZmVtYWxlJ3MgaG9ybiBkZXZlbG9wcyBzbG93bHkuIFByZWZl cnMgcGh5c2ljYWwgYXR0YWNrcyBzdWNoIGFzIGNsYXdpbmcgYW5kIGJpdGluZwoKR2VvZHVkZSB8 IEZvdW5kIGluIGZpZWxkcyBhbmQgbW91bnRhaW5zLiBNaXN0YWtpbmcgdGhlbSBmb3IgYm91bGRl cnMsIHBlb3BsZSBvZnRlbiBzdGVwIG9yIHRyaXAgb24gdGhlbQoKUG9yeWdvbiB8IEEgI01PTiB0 aGF0IGNvbnNpc3RzIGVudGlyZWx5IG9mIHByb2dyYW1taW5nIGNvZGUuIENhcGFibGUgb2YgbW92 aW5nIGZyZWVseSBpbiBjeWJlcnNwYWNlCgpBZXJvZGFjdHlsIHwgQSBmZXJvY2lvdXMsIHByZS0g aGlzdG9yaWMgI01PTiB0aGF0IGdvZXMgZm9yIHRoZSBlbmVteSdzIHRocm9hdCB3aXRoIGl0cyBz ZXJyYXRlZCBzYXctbGlrZSBmYW5ncwoKTWFnbmVtaXRlIHwgVXNlcyBhbnRpLWdyYXZpdHkgdG8g c3RheSBzdXNwZW5kZWQuIEFwcGVhcnMgd2l0aG91dCB3YXJuaW5nIGFuZCB1c2VzIFRIVU5ERVIg V0FWRSBhbmQgc2ltaWxhciBtb3ZlcwoKQ2hhcm1hbmRlciB8IE9idmlvdXNseSBwcmVmZXJzIGhv dCBwbGFjZXMuIFdoZW4gaXQgcmFpbnMsIHN0ZWFtIGlzIHNhaWQgdG8gc3BvdXQgZnJvbSB0aGUg dGlwIG9mIGl0cyB0YWlsCgpTcXVpcnRsZSB8IEFmdGVyIGJpcnRoLCBpdHMgYmFjayBzd2VsbHMg YW5kIGhhcmRlbnMgaW50byBhIHNoZWxsLiBQb3dlcmZ1bGx5IHNwcmF5cyBmb2FtIGZyb20gaXRz IG1vdXRoCgpDaGFybWVsZW9uIHwgV2hlbiBpdCBzd2luZ3MgaXRzIGJ1cm5pbmcgdGFpbCwgaXQg ZWxldmF0ZXMgdGhlIHRlbXBlcmF0dXJlIHRvIHVuYmVhcmFibHkgaGlnaCBsZXZlbHMKCldhcnRv cnRsZSB8IE9mdGVuIGhpZGVzIGluIHdhdGVyIHRvIHN0YWxrIHVud2FyeSBwcmV5LiBGb3Igc3dp bW1pbmcgZmFzdCwgaXQgbW92ZXMgaXRzIGVhcnMgdG8gbWFpbnRhaW4gYmFsYW5jZQoKQ2hhcml6 YXJkIHwgU3BpdHMgZmlyZSB0aGF0IGlzIGhvdCBlbm91Z2ggdG8gbWVsdCBib3VsZGVycy4gS25v d24gdG8gY2F1c2UgZm9yZXN0IGZpcmVzIHVuaW50ZW50aW9uYWxseQoKT2RkaXNoIHwgRHVyaW5n IHRoZSBkYXksIGl0IGtlZXBzIGl0cyBmYWNlIGJ1cmllZCBpbiB0aGUgZ3JvdW5kLiBBdCBuaWdo dCwgaXQgd2FuZGVycyBhcm91bmQgc293aW5nIGl0cyBzZWVkcwoKR2xvb20gfCBUaGUgZmx1aWQg dGhhdCBvb3plcyBmcm9tIGl0cyBtb3V0aCBpc24ndCBkcm9vbC4gSXQgaXMgYSBuZWN0YXIgdGhh dCBpcyB1c2VkIHRvIGF0dHJhY3QgcHJleQoKVmlsZXBsdW1lIHwgVGhlIGxhcmdlciBpdHMgcGV0 YWxzLCB0aGUgbW9yZSB0b3hpYyBwb2xsZW4gaXQgY29udGFpbnMuIEl0cyBiaWcgaGVhZCBpcyBo ZWF2eSBhbmQgaGFyZCB0byBob2xkIHVwCgpCZWxsc3Byb3V0IHwgQSBjYXJuaXZvcm91cyAjTU9O IHRoYXQgdHJhcHMgYW5kIGVhdHMgYnVncy4gSXQgdXNlcyBpdHMgcm9vdCBmZWV0IHRvIHNvYWsg dXAgbmVlZGVkIG1vaXN0dXJlCgpXZWVwaW5iZWxsIHwgSXQgc3BpdHMgb3V0IFBPSVNPTlBPV0RF UiB0byBpbW1vYmlsaXplIHRoZSBlbmVteSBhbmQgdGhlbiBmaW5pc2hlcyBpdCB3aXRoIGEgc3By YXkgb2YgQUNJRAoKVmljdHJlZWJlbCB8IFNhaWQgdG8gbGl2ZSBpbiBodWdlIGNvbG9uaWVzIGRl ZXAgaW4ganVuZ2xlcywgYWx0aG91Z2ggbm8gb25lIGhhcyBldmVyIHJldHVybmVkIGZyb20gdGhl cmUKCnx8CgoKCiEhISBQcm9mZXNzb3IgT2FrIFRleHQKCihUaGlzIGlzIGFsbCBvZiB0aGUgaW50 cm8gdGV4dCB0aGF0J3MgYWxyZWFkeSBpbXBsZW1lbnRlZCBpbiB0aGUgZ2FtZSwgc28gaWYgeW91 IG1ha2UgY2hhbmdlcywgb25seSBlZGl0IHRoaXMgc2VjdGlvbiBieSBpdHNlbGYgdG8gbWFrZSB0 aGUgY2hhbmdlbG9nIGVtYWlsIG9idmlvdXMuKQoKCgp8fF9fRW5nbGlzaF9ffF9fTG9qYmFuX18K CkhlbGxvIHRoZXJlISBXZWxjb21lIHRvIHRoZSB3b3JsZCBvZiBQb2vDqW1vbiEgTXkgbmFtZSBp cyBPQUshIFBlb3BsZSBjYWxsIG1lIHRoZSBQb2vDqW1vbiBQUk9GISB8IGNvaSAuaSBmaSdpIHRl cmRpIGxvIHBva21hIC5pIG1pJ2UgY2luZHUgLmkgbmEnZSBibyBtaSBtaSB0ZSBjbWVuZSB6byBw b2tjdHUKClRoaXMgd29ybGQgaXMgaW5oYWJpdGVkIGJ5IGNyZWF0dXJlcyBjYWxsZWQgUG9rw6lt b24hIHwgLmkgbG8gdmkgdGVyZGkga3Ugc2UgeGFianUgbG8gcG9rbWEKCkZvciBzb21lIHBlb3Bs ZSwgUG9rw6ltb24gYXJlIHBldHMuIE90aGVycyB1c2UgdGhlbSBmb3IgZmlnaHRzLiBNeXNlbGYu Li4gSSBzdHVkeSBQb2vDqW1vbiBhcyBhIHByb2Zlc3Npb24uIHwgLmkgcHkuIGRhbHBlJ28gc28n byBwcmVudSAuaSBzbydvIGRyYXRhIHB5LiBwaWxubyBsbyBudSBkYW1iYSAuaSBtaSAueSAuaSBt aSB0YWRuaSBiZSBweS4gY28gY3JlamlicmkKCkZpcnN0LCB3aGF0IGlzIHlvdXIgbmFtZT8gfCAu aSBwYW1haSBtYSBkbyBjbWVuZQoKUmlnaHQhIFNvIHlvdXIgbmFtZSBpcyA8UGxheWVyPiB8IGpl J2UgLmkgem8gPHBsYXllcj4gY21lbmUgZG8KClRoaXMgaXMgbXkgZ3JhbmRzb24uIEhlJ3MgYmVl biB5b3VyIHJpdmFsIHNpbmNlIHlvdSB3ZXJlIGEgYmFieS4gLi4uRXJtLCB3aGF0IGlzIGhpcyBu YW1lIGFnYWluPyB8IC5pIHRpIGJlc3liZXJzYSAuaSB0aSBkbyBqaXZuYSBiYSdvIGxvIG51IGRv IGNmaXB1IC5pIC55IC5vaXJvJ2EgbWEgdGkgY21lbmUgLmkKClRoYXQncyByaWdodCEgSSByZW1l bWJlciBub3chIEhpcyBuYW1lIGlzIDxSaXZhbD4hIHwgLmllIG1pIGNhIHJlbW5hIC5pIDxSaXZh bD4gdGkgY21lbmUKCjxQbGF5ZXI+ISBZb3VyIHZlcnkgb3duIFBva8OpbW9uIGxlZ2VuZCBpcyBh Ym91dCB0byB1bmZvbGQhIEEgd29ybGQgb2YgZHJlYW1zIGFuZCBhZHZlbnR1cmVzIHdpdGggUG9r w6ltb24gYXdhaXRzISBMZXQncyBnbyEgfCAJLmkganUnaSA8cGxheWVyPiAuaSBmZSBsbyBwb2tt YSByYW5taSBiZSBkbyAuYSdvIGJhemkgcHUnbyBmaW50aSAuaSBsZSB0ZXJkaSBwZSdhIHBvaSBz ZWxzbmUgamUgbnUgY2FwbGkndSBwZSBsbyBwb2ttYSBkZW5wYSAuaSAuZSdvIGNmYWdhdQoKfHwK CgoKISEhIE5vdGlmaWNhdGlvbnMvVW5zb3J0ZWQKCgoKfHxfX0VuZ2xpc2hfX3xfX0xvamJhbl9f CgpJdCBkb2RnZWQgdGhlIHRocm93biBiYWxsISBUaGlzIHBva2Vtb24gY2FuJ3QgYmUgY2F1Z2h0 IHwgbG8gcG9rbWUgY3Ugcml2YmkgdHUnYSBsbyBzZSByZW5ybyBib2xjaSAuaSBsbyB2YSBwb2tt ZSBuYSBrYSdlIHNlIGthdmJ1CgpZb3UgbWlzc2VkIHRoZSBwb2tlbW9uISAgICAgICAgfCBkbyBt YXRyZXJmbGkgbG8gcG9rbWUKCkRhcm4hIFRoZSBwb2tlbW9uIGJyb2tlIGZyZWUhICB8IC5vaSBs byBwb2ttZSBjdSB0b2xwaWZ5YmknbwoKQXd3ISBJdCBhcHBlYXJlZCB0byBiZSBjYXVnaHQhIHwg Lm9pIHB1IHNpbWx1IGxvIGthIHNlIGthdmJ1CgpTaG9vdCEgSXQgd2FzIHNvIGNsb3NlIHRvbyEg ICAgfCBtYWJsYSAuaSBrdSdpIG11dGNlIGppYm5pIGxvIHNlIHNuYWRhID8gbWFibGEgLmkgcHUg dGFpIGppYm5pID8gbWFibGEgLmkga3UnaSBwdSBqaWJuaSBtdXRjZQoKQWxsIHJpZ2h0ISBbW2tv J2FdIHdhcyBjYXVnaHQhIHwgdWkgZGFpIFtba28nYV1dIGJhJ28gc2Uga2F2YnUKCltba28nYV0g d2FzIHRyYW5zZmVycmVkIHRvIEJpbGwncyBQQyAgICAgfCBbW2tvJ2FdXSBiYSdvIHNlIGJlbmpp IGZpIGxvIHNrYW1pIHBlIGxhIC5iaWwuCgpbW2tvJ2FdIHdhcyB0cmFuc2ZlcnJlZCB0byBzb21l b25lJ3MgUEMgIHwgW1trbydhXV0gYmEnZSBzZSBiZW5qaSBmaSBsbyBza2FtaSBwZSB6bydlCgpO ZXcgREVYIGRhdGEgd2lsbCBiZSBhZGRlZC4uLiAgfCBsbyBjbmlubyBrZSBwb2tzdGUgZGF0bmkg Y3Ugc2Ugam1pbmEKCllvdSBkb24ndCBoYXZlIGFueSBwb2tlbW9uISAgICB8IGRvIGNsYXh1IGxv IChzYW5qaSkgcG9rbWUKCi0tLS0KCkl0IGNyZWF0ZWQgYSBzdWJzdGl0dXRlICAgICAgICB8IGZp bnRpIGxvIGJhc3RpIAoKW1trbydhXSBoYXMgYSBzdWJzdGl0dXRlICAgICAgIHwgW1trbydhXV0g c2UgYmFzdGkKCnRvbyB3ZWFrIHRvIG1ha2Ugc3Vic3RpdHV0ZSAgICB8IGR1a3NlIGxvIGthIHJ1 YmxlIGtlaSBsbyBudSBmaW50aSBsbyBiYXN0aQoKLS0tLQoKTm90IGV2ZW4gYSBuaWJibGUhICAg ICAgICAgICAgICAgIHwgbmEgY28nZSBsbyBkbydhIG5haSBjbWFsdSBzcGlzYQoKTG9va3MgbGlr ZSB0aGVyZSdzIG5vdGhpbmcgaGVyZS4gIHwgc2ltbHUgbG8ga2Egbm8gZGEgenZhdGkKCk9oISBJ dCdzIGEgYml0ZSEhICAgICAgICAgICAgICAgICB8IHVlIGRhIGJhdGNpCgpHcm91bmQgcm9zZSB1 cCBzb21ld2hlcmUhICAgICAgICAgfCBidSd1IGRhIGxvIGxvbGRpIGN1IAoKVGhpcyByZXF1aXJl cyBTVFJFTkdUSCB0byBtb3ZlISAgIHwgZG8gbml0Y3UgbG8ga2EgdHNhbGkga2VpIGxvIG51IG11 dmdhdQoKQWxsIHlvdXIgaXRlbSBuZWVkcyBmdWxmaWxsZWQhICAgIHwgbG8gZG8gZGFrbGkgY3Ug Y3Vsbm8gfHwKCi0tLS0KCkhNIHRlY2huaXF1ZXMgY2FuJ3QgYmUgZGVsZXRlZCEKCldlbGNvbWUg dG8gb3VyICNNT04gQ0VOVEVSISBXZSBoZWFsIHlvdXIgI01PTiBiYWNrIHRvIHBlcmZlY3QgaGVh bHRoISBTaGFsbCB3ZSBoZWFsIHlvdXIgI01PTj8KCk9LLiBXZSdsbCBuZWVkeW91ciAjTU9OLgoK VGhhbmsgeW91ISBZb3VyICNNT04gYXJlIGZpZ2h0aW5nIGZpdCEKCldlIGhvcGUgdG8gc2VlIHlv dSBhZ2FpbiEKCi0tLS0KClRoaXMgYXJlYSBpcyByZXNlcnZlZCBmb3IgMiBmcmllbmRzIHdobyBh cmUgbGlua2VkIGJ5IGNhYmxlLgoKV2VsY29tZSB0byB0aGUgQ2FibGUgQ2x1YiEgUGxlYXNlIGFw cGx5IGhlcmUuIEJlZm9yZSBvcGVuaW5nIHRoZSBsaW5rLCB3ZSBoYXZlIHRvIHNhdmUgdGhlIGdh bWUuIFBsZWFzZSB3YWl0LgoKVGhlIGxpbmsgaGFzIGJlZW4gY2xvc2VkIGJlY2F1c2Ugb2YgaW5h Y3Rpdml0eS4KClBsZWFzZSBjb250YWN0IHlvdXIgZnJpZW5kIGFuZCBjb21lIGFnYWluIQoKUGxl YXNlIGNvbWUgYWdhaW4hCgpXZSdyZSBtYWtpbmcgcHJlcGFyYXRpb25zLiBQbGVhc2Ugd2FpdC4K Ci0tLS0KCjw+IHVzZWRTVFJFTkdUSC4KCjw+IGNhbiBtb3ZlIGJvdWxkZXJzLgoKVGhlIGN1cnJl bnQgaXMgbXVjaCB0b28gZmFzdCEKCkN5Y2xpbmcgaXMgZnVuISBGb3JnZXQgU1VSRmluZyEKCkEg YmxpbmRpbmcgRkxBU0ggbGlnaHRzIHRoZSBhcmVhIQoKV2FycCB0byB0aGUgbGFzdCAjTU9OIENF TlRFUi4KCjw+IGNhbid0IHVzZSBURUxFUE9SVCBub3cuCgo8PiBjYW4ndCBGTFkgaGVyZS4KCk5v dCBoZWFsdGh5IGVub3VnaC4KCk5vISBBIG5ldyBCQURHRSBpcyByZXF1aXJlZC4KCllvdSBjYW4n dCB1c2UgaXRlbXMgaGVyZS4KCllvdSBjYW4ndCBnZXQgb2ZmIGhlcmUuCgotLS0tCgo8PiBnb3Qg PD4hCgpUaGVyZSdzIG5vIG1vcmVyb29tIGZvciAjTU9OIQoKIHdhc3NlbnQgdG8gI01PTkJPWCAK CiBvbiBQQyFUaGVyZSdzIG5vIG1vcmVyb29tIGZvciAjTU9OIVRoZSAjTU9OIEJPWGlzIGZ1bGwg YW5kIGNhbid0YWNjZXB0IGFueSBtb3JlIUNoYW5nZSB0aGUgQk9YIGF0YSAjTU9OIENFTlRFUiF0 ZXh0L21hcFBhbGxldFRvd24udHhUaG9zZSAjIEJBTExzYXQgeW91ciB3YWlzdCFZb3UgaGF2ZSAj TU9OIUl0J3MgZ3JlYXQgdGhhdHlvdSBjYW4gY2FycnkgYW5kdXNlICNNT04gYW55dGltZSwgYW55 d2hlcmUhVGhpcyAjTU9OIEdZTWlzIGFsd2F5cyBjbG9zZWQuSSB3b25kZXIgd2hvIHRoZUxFQURF UiBpcz9WSVJJRElBTiBHWU0nc0xFQURFUiByZXR1cm5lZCFZb3Ugd2FudCB0byBrbm93YWJvdXQg dGhlIDIga2luZHNvZiBjYXRlcnBpbGxhciNNT04/T2gsIE9LIHRoZW4hQ0FURVJQSUUgaGFzIG5v cG9pc29uLCBidXRXRUVETEUgZG9lcy5XYXRjaCBvdXQgZm9yIGl0c1BPSVNPTiBTVElORyFPaCBH cmFuZHBhISBEb24ndGJlIHNvIG1lYW4hSGUgaGFzbid0IGhhZCBoaXNjb2ZmZWUgeWV0LldoZW4g SSBnbyBzaG9wIGluUEVXVEVSIENJVFksIEloYXZlIHRvIHRha2UgdGhld2luZGluZyB0cmFpbCBp blZJUklESUFOIEZPUkVTVC5Zb3UgY2FuJ3QgZ290aHJvdWdoIGhlcmUhVGhpcyBpcyBwcml2YXRl cHJvcGVydHkhWWF3biFJIG11c3QgaGF2ZSBkb3plZG9mZiBpbiB0aGUgc3VuLkkgaGFkIHRoaXMg ZHJlYW1hYm91dCBhIERST1daRUVlYXRpbmcgbXkgZHJlYW0uV2hhdCdzIHRoaXM/V2hlcmUgZGlk IHRoaXMgVE1jb21lIGZyb20/VGhpcyBpcyBzcG9va3khSGVyZSwgeW91IGNhbmhhdmUgdGhpcyBU TS4gcmVjZWl2ZWRUTTQyIQoKCgpUTTQyIGNvbnRhaW5zRFJFQU0gRUFURVIuLi4uLi5Tbm9yZS4u LllvdSBoYXZlIHRvbyBtdWNoc3R1ZmYgYWxyZWFkeS5BaGgsIEkndmUgaGFkIG15Y29mZmVlIG5v dyBhbmQgSWZlZWwgZ3JlYXQhU3VyZSB5b3UgY2FuIGdvdGhyb3VnaCFBcmUgeW91IGluIGFodXJy eT9JIHNlZSB5b3UncmUgdXNpbmdhICNERVguV2hlbiB5b3UgY2F0Y2ggYSNNT04sICNERVhpcyBh dXRvbWF0aWNhbGx5dXBkYXRlZC5XaGF0PyBEb24ndCB5b3Vrbm93IGhvdyB0byBjYXRjaCNNT04/ SSdsbCBzaG93IHlvdWhvdyB0byB0aGVuLlRpbWUgaXMgbW9uZXkuLi5HbyBhbG9uZyB0aGVuLkZp cnN0LCB5b3UgbmVlZHRvIHdlYWtlbiB0aGV0YXJnZXQgI01PTi5WSVJJRElBTiBDSVRZIFRoZSBF dGVybmFsbHlHcmVlbiBQYXJhZGlzZVRSQUlORVIgVElQU0NhdGNoICNNT05hbmQgZXhwYW5kIHlv dXJjb2xsZWN0aW9uIVRoZSBtb3JlIHlvdSBoYXZlLHRoZSBlYXNpZXIgaXQgaXN0byBmaWdodCFU UkFJTkVSIFRJUFNUaGUgYmF0dGxlIG1vdmVzb2YgI01PTiBhcmVsaW1pdGVkIGJ5IHRoZWlyUE9X RVIgUE9JTlRzLCBQUC5UbyByZXBsZW5pc2ggUFAscmVzdCB5b3VyIHRpcmVkI01PTiBhdCBhI01P TiBDRU5URVIhVklSSURJQU4gQ0lUWSNNT04gR1lNVGhlIEdZTSdzIGRvb3JzYXJlIGxvY2tlZC4u Lkl0J3MgcnVtb3JlZCB0aGF0Q0xFRkFJUllzIGNhbWVmcm9tIHRoZSBtb29uIVRoZXkgYXBwZWFy ZWQgYWZ0ZXIgTU9PTiBTVE9ORWZlbGwgb24gTVQuTU9PTi5UaGVyZSBhcmVuJ3QgbWFueXNlcmlv dXMgI01PTnRyYWluZXJzIGhlcmUhVGhleSdyZSBhbGwgbGlrZUJVRyBDQVRDSEVScyxidXQgUEVX VEVSIEdZTSdzQlJPQ0sgaXMgdG90YWxseWludG8gaXQhRGlkIHlvdSBjaGVjayBvdXR0aGUgTVVT RVVNP1dlcmVuJ3QgdGhvc2Vmb3NzaWxzIGZyb20gTVQuTU9PTiBhbWF6aW5nP1JlYWxseT9Zb3Ug YWJzb2x1dGVseWhhdmUgdG8gZ28hSXQncyByaWdodCBoZXJlIVlvdSBoYXZlIHRvIHBheXRvIGdl dCBpbiwgYnV0aXQncyB3b3J0aCBpdCFTZWUgeW91IGFyb3VuZCFQc3Nzc3QhRG8geW91IGtub3cg d2hhdEknbSBkb2luZz9UaGF0J3MgcmlnaHQhSXQncyBoYXJkIHdvcmshSSdtIHNwcmF5aW5nIFJF UEVMdG8ga2VlcCAjTU9Ob3V0IG9mIG15IGdhcmRlbiFZb3UncmUgYSB0cmFpbmVycmlnaHQ/IEJS T0NLJ3Nsb29raW5nIGZvciBuZXdjaGFsbGVuZ2VycyFGb2xsb3cgbWUhSWYgeW91IGhhdmUgdGhl cmlnaHQgc3R1ZmYsIGdvdGFrZSBvbiBCUk9DSyFUUkFJTkVSIFRJUFNBbnkgI01PTiB0aGF0dGFr ZXMgcGFydCBpbmJhdHRsZSwgaG93ZXZlcnNob3J0LCBlYXJucyBFWFAhTk9USUNFIVRoaWV2ZXMg aGF2ZSBiZWVuc3RlYWxpbmcgI01PTmZvc3NpbHMgYXQgTVQuTU9PTiEgUGxlYXNlIGNhbGxQRVdU RVIgUE9MSUNFd2l0aCBhbnkgaW5mbyFQRVdURVIgTVVTRVVNT0YgU0NJRU5DRVBFV1RFUiBDSVRZ I01PTiBHWU1MRUFERVI6IEJST0NLVGhlIFJvY2sgU29saWQjTU9OIFRyYWluZXIhUEVXVEVSIENJ VFlBIFN0b25lIEdyYXlDaXR5OiBZbyEhWW91J3JlIHN0aWxsc3RydWdnbGluZyBhbG9uZ2JhY2sg aGVyZT9JJ20gZG9pbmcgZ3JlYXQhSSBjYXVnaHQgYSBidW5jaG9mIHN0cm9uZyBhbmRzbWFydCAj TU9OIUhlcmUsIGxldCBtZSBzZWV3aGF0IHlvdSBjYXVnaHQsIUhleSFUYWtlIGl0IGVhc3khWW91 IHdvbiBhbHJlYWR5IUhlaCFZb3UncmUgbm8gbWF0Y2hmb3IgbXkgZ2VuaXVzITogSGV5LGd1ZXNz IHdoYXQ/SSB3ZW50IHRvIEJJTEwnc2FuZCBnb3QgaGltIHRvc2hvdyBtZSBoaXMgcmFyZSNNT04h VGhhdCBhZGRlZCBhIGxvdG9mIHBhZ2VzIHRvIG15I0RFWCFBZnRlciBhbGwsIEJJTEwnc3dvcmxk IGZhbW91cyBhcyBhI01BTklBQyFIZSBpbnZlbnRlZCB0aGUjTU9OIFN0b3JhZ2VTeXN0ZW0gb24g UEMhU2luY2UgeW91J3JlIHVzaW5naGlzIHN5c3RlbSwgZ290aGFuayBoaW0hV2VsbCwgSSBiZXR0 ZXJnZXQgcm9sbGluZyFTbWVsbCB5YSBsYXRlciFIZXkhIFN0YXkgb3V0IUl0J3Mgbm90IHlvdXJ5 YXJkISBIdWg/IE1lP0knbQAgYW4gaW5ub2NlbnRieXN0YW5kZXIhIERvbid0eW91IGJlbGlldmUg bWU/IHJlY292ZXJlZFRNMjghCgoKCkkgYmV0dGVyIGdldG1vdmluZyEgQnllIQoKCgpNYWtlIHJv b20gZm9ydGhpcyFJIGNhbid0IHJ1biB1bnRpbEkgZ2l2ZSBpdCB0byB5b3UhU3RvcCFJIGdpdmUg dXAhIEknbGxsZWF2ZSBxdWlldGx5IU9LISBJJ2xsIHJldHVybnRoZSBUTSBJIHN0b2xlIVlvdSdy ZSBhIHRyYWluZXJ0b28/IENvbGxlY3RpbmcsZmlnaHRpbmcsIGl0J3MgYXRvdWdoIGxpZmUuVGhh dCBidXNoIGluZnJvbnQgb2YgdGhlIHNob3BpcyBpbiB0aGUgd2F5LlRoZXJlIG1pZ2h0IGJlIGF3 YXkgYXJvdW5kLllvdSdyZSBtYWtpbmcgYW5lbmN5Y2xvcGVkaWEgb24jTU9OPyBUaGF0c291bmRz IGFtdXNpbmcuVGhlIHBlb3BsZSBoZXJld2VyZSByb2JiZWQuSXQncyBvYnZpb3VzIHRoYXRURUFN IFJPQ0tFVCBpc2JlaGluZCB0aGlzIG1vc3RoZWlub3VzIGNyaW1lIUV2ZW4gb3VyIFBPTElDRWZv cmNlIGhhcyB0cm91Ymxld2l0aCB0aGUgUk9DS0VUcyFPSyEgU0xPV0JSTyFVc2UgU09OSUNCT09N IUNvbWUgb24sIFNMT1dCUk9wYXkgYXR0ZW50aW9uIVNMT1dCUk8gcHVuY2ghTm8hIFlvdSBibGV3 IGl0YWdhaW4hU0xPV0JSTywgV0lUSERSQVchTm8hIFRoYXQncyB3cm9uZyFJdCdzIHNvIGhhcmQg dG9jb250cm9sICNNT04hWW91ciAjTU9OJ3NvYmVkaWVuY2UgZGVwZW5kc29uIHlvdXIgYWJpbGl0 aWVzYXMgYSB0cmFpbmVyIVNMT1dCUk8gdG9vayBhc25vb3plLi4uU0xPV0JSTyBpc2xvYWZpbmcg YXJvdW5kLi4uU0xPV0JSTyB0dXJuZWRhd2F5Li4uU0xPV0JST2lnbm9yZWQgb3JkZXJzLi4uSSB3 YW50IGEgYnJpZ2h0cmVkIEJJQ1lDTEUhSSdsbCBrZWVwIGl0IGF0aG9tZSwgc28gaXQgd29uJ3Rn ZXQgZGlydHkhVGhpcyBpcyBDRVJVTEVBTkNBVkUhIEhvcnJpYmx5c3Ryb25nICNNT05saXZlIGlu IHRoZXJlIVRoZSAjTU9OIExFQUdVRWNoYW1waW9uIGlzIHRoZW9ubHkgcGVyc29uIHdob2lzIGFs bG93ZWQgaW4hQ0VSVUxFQU4gQ0lUWUEgTXlzdGVyaW91cyxCbHVlIEF1cmFTdXJyb3VuZHMgSXRU UkFJTkVSIFRJUFNQcmVzc2luZyBCIEJ1dHRvbmR1cmluZyBldm9sdXRpb25jYW5jZWxzIHRoZSB3 aG9sZXByb2Nlc3MuR3Jhc3MgYW5kIGNhdmVzaGFuZGxlZCBlYXNpbHkhQklLRSBTSE9QQ0VSVUxF QU4gQ0lUWSNNT04gR1lNTEVBREVSOiBNSVNUWVRoZSBUb21ib3lpc2hNZXJtYWlkIURvIHlvdSBi ZWxpZXZlIGluR0hPU1RzP1JlYWxseT8gU28gdGhlcmVhcmUgYmVsaWV2ZXJzLi4uSGFoYWhhLCBJ IGd1ZXNzbm90LlRoYXQgd2hpdGUgaGFuZG9uIHlvdXIgc2hvdWxkZXIsaXQncyBub3QgcmVhbC5U aGlzIHRvd24gaXMga25vd25hcyB0aGUgZ3JhdmUgc2l0ZW9mICNNT04uTWVtb3JpYWwgc2Vydmlj ZXNhcmUgaGVsZCBpbiNNT04gVE9XRVIuR0hPU1RzIGFwcGVhcmVkaW4gI01PTiBUT1dFUi5JIHRo aW5rIHRoZXkncmV0aGUgc3Bpcml0cyBvZiNNT04gdGhhdCB0aGVST0NLRVRzIGtpbGxlZC5MQVZF TkRFUiBUT1dOVGhlIE5vYmxlIFB1cnBsZVRvd25OZXcgU0lMUEggU0NPUEUhTWFrZSB0aGUgSW52 aXNpYmxlUGxhaW4gdG8gU2VlIVNJTFBIIENPLkxBVkVOREVSIFZPTFVOVEVFUiNNT04gSE9VU0VN YXkgdGhlIFNvdWxzIG9mI01PTiBSZXN0IEVhc3kjTU9OIFRPV0VSV2UncmUgY2FyZWZ1bGFib3V0 IHBvbGx1dGlvbiFXZSd2ZSBoZWFyZCBHUklNRVJtdWx0aXBsaWVzIGludG94aWMgc2x1ZGdlIURp ZCB5b3Ugc2VlIFMuUy5BTk5FIG1vb3JlZCBpbnRoZSBoYXJib3I/U28sIFMuUy5BTk5FIGhhc2Rl cGFydGVkIVNoZSdsbCBiZSBiYWNrIGluYWJvdXQgYSB5ZWFyLldlbGNvbWUgdG8gUy5TLkFOTkUh V2VsY29tZSB0byBTLlMuQU5ORSFFeGN1c2UgbWUsIGRvIHlvdWhhdmUgYSB0aWNrZXQ/IGZsYXNo ZWR0aGUgUy5TLlRJQ0tFVCFHcmVhdCEgV2VsY29tZSB0b1MuUy5BTk5FISBkb2Vzbid0aGF2ZSB0 aGUgbmVlZGVkUy5TLlRJQ0tFVC5Tb3JyeSFZb3UgbmVlZCBhIHRpY2tldHRvIGdldCBhYm9hcmQu VGhlIHNoaXAgc2V0IHNhaWwuSSdtIHB1dHRpbmcgdXAgYWJ1aWxkaW5nIG9uIHRoaXNwbG90IG9m IGxhbmQuTXkgI01PTiBpc3RhbXBpbmcgdGhlIGxhbmQuTUFDSE9QOiBHdW9oIQBHb2dvZ29oIQoK CgpBIE1BQ0hPUCBpc3N0b21waW5nIHRoZSBsYW5kZmxhdC5TLlMuQU5ORSBpcyBhZmFtb3VzIGx1 eHVyeWNydWlzZSBzaGlwLldlIHZpc2l0IFZFUk1JTElPTm9uY2UgYSB5ZWFyLlZFUk1JTElPTiBD SVRZVGhlIFBvcnQgb2ZFeHF1aXNpdGUgU3Vuc2V0c05PVElDRSFST1VURSAxMiBtYXkgYmVibG9j a2VkIG9mZiBieSBhc2xlZXBpbmcgI01PTi5EZXRvdXIgdGhyb3VnaFJPQ0sgVFVOTkVMIHRvTEFW RU5ERVIgVE9XTi5WRVJNSUxJT04gUE9MSUNFI01PTiBGQU4gQ0xVQkFsbCAjTU9OIGZhbnN3ZWxj b21lIVZFUk1JTElPTiBDSVRZI01PTiBHWU1MRUFERVI6IExULlNVUkdFVGhlIExpZ2h0bmluZyBB bWVyaWNhbiFWRVJNSUxJT04gSEFSQk9SSSBnb3QgbXkgS09GRklOR2luIENJTk5BQkFSIUl0J3Mg bmljZSwgYnV0IGl0YnJlYXRoZXMgcG9pc29ud2hlbiBpdCdzIGFuZ3J5IUhlaGVoISBUaGlzIEdZ TWlzIGdyZWF0ISBJdCdzZnVsbCBvZiB3b21lbiFUaGUgR0FNRSBDT1JORVJpcyBiYWQgZm9yIG91 cmNpdHkncyBpbWFnZSFNb2FuISBJIGJsZXcgaXRhbGwgYXQgdGhlIHNsb3RzIUkga25ldyBJIHNo b3VsZGhhdmUgY2FzaGVkIGluIG15Y29pbnMgZm9yIHByaXplcyFIZWxsbywgdGhlcmUhSSd2ZSBz ZWVuIHlvdSxidXQgSSBuZXZlciBoYWQgYWNoYW5jZSB0byB0YWxrIUhlcmUncyBhIGdpZnQgZm9y ZHJvcHBpbmcgYnkhIHJlY2VpdmVkCgohCgoKClRNNDEgdGVhY2hlc1NPRlRCT0lMRUQhT25seSBv bmUgI01PTmNhbiB1c2UgaXQhVGhhdCAjTU9OIGlzQ0hBTlNFWSFPaCwgeW91ciBwYWNrIGlzZnVs bCBvZiBpdGVtcyFUaGlzIGlzIG15IHRydXN0ZWRwYWwsIFBPTElXUkFUSCFJdCBldm9sdmVkIGZy b21QT0xJV0hJUkwgd2hlbiBJdXNlZCBXQVRFUiBTVE9ORSFQT0xJV1JBVEg6IFJpYmlyaWJpdCEK CgoKV2hhdCBhcmUgeW91c3RhcmluZyBhdD9LZWVwIG91dCBvZiBURUFNUk9DS0VUJ3Mgd2F5IVRS QUlORVIgVElQU1ggQUNDVVJBQ1kgYm9vc3RzdGhlIGFjY3VyYWN5IG9mdGVjaG5pcXVlcyFESVJF IEhJVCBqYWNrcyB1cHRoZSBsaWtlbGlob29kIG9mY3JpdGljYWwgaGl0cyFHZXQgeW91ciBpdGVt cyBhdENFTEFET04gREVQVC5TVE9SRSFDRUxBRE9OIENJVFlUaGUgQ2l0eSBvZlJhaW5ib3cgRHJl YW1zQ0VMQURPTiBDSVRZI01PTiBHWU1MRUFERVI6IEVSSUtBVGhlIE5hdHVyZSBMb3ZpbmdQcmlu Y2VzcyFDRUxBRE9OIE1BTlNJT05GaW5kIHdoYXQgeW91bmVlZCBhdCBDRUxBRE9OREVQVC4gU1RP UkUhVFJBSU5FUiBUSVBTR1VBUkQgU1BFQy5wcm90ZWN0cyAjTU9OYWdhaW5zdCBTUEVDSUFMYXR0 YWNrcyBzdWNoIGFzZmlyZSBhbmQgd2F0ZXIhR2V0IHlvdXIgaXRlbXMgYXRDRUxBRE9OIERFUFQu U1RPUkUhQ29pbnMgZXhjaGFuZ2VkZm9yIHByaXplcyFQUklaRSBFWENIQU5HRVJPQ0tFVCBHQU1F IENPUk5FUlRoZSBwbGF5Z3JvdW5kZm9yIGdyb3duLXVwcyFEaWQgeW91IHRyeSB0aGVTQUZBUkkg R0FNRT8gU29tZSNNT04gY2FuIG9ubHliZSBjYXVnaHQgdGhlcmUuU0FGQVJJIFpPTkUgaGFzIGF6 b28gaW4gZnJvbnQgb2Z0aGUgZW50cmFuY2UuT3V0IGJhY2sgaXMgdGhlU0FGQVJJIEdBTUUgZm9y Y2F0Y2hpbmcgI01PTi5FUklLOiBXaGVyZSdzU0FSQT8gSSBzYWlkIEknZG1lZXQgaGVyIGhlcmUu VGhhdCBpdGVtIGJhbGwgaW50aGVyZSBpcyByZWFsbHkgYSNNT04uIUZVQ0hTSUEgQ0lUWUJlaG9s ZCEgSXQnc1Bhc3Npb24gUGluayFTQUZBUkkgR0FNRSNNT04tVS1DQVRDSCFTQUZBUkkgWk9ORVdB UkRFTidzIEhPTUUjTU9OIFBBUkFESVNFU0FGQVJJIFpPTkVGVUNIU0lBIENJVFkjTU9OIEdZTUxF QURFUjogS09HQVRoZSBQb2lzb25vdXNOaW5qYSBNYXN0ZXJOYW1lOiBDSEFOU0VZQ2F0Y2hpbmcg b25lIGlzYWxsIHVwIHRvIGNoYW5jZS5OYW1lOiBWT0xUT1JCVGhlIHZlcnkgaW1hZ2Ugb2ZhICMg QkFMTC5OYW1lOiBLQU5HQVNLSEFOQSBtYXRlcm5hbCAjTU9OdGhhdCByYWlzZXMgaXRzeW91bmcg aW4gYSBwb3VjaG9uIGl0cyBiZWxseS5OYW1lOiBTTE9XUE9LRUZyaWVuZGx5IGFuZCB2ZXJ5c2xv dyBtb3ZpbmcuTmFtZTogTEFQUkFTQS5LLkEuIHRoZSBraW5nb2YgdGhlIHNlYXMuTmFtZTogT01B TllURUEgI01PTiB0aGF0d2FzIHJlc3VycmVjdGVkZnJvbSBhIGZvc3NpbC5OYW1lOiBLQUJVVE9B ICNNT04gdGhhdHdhcyByZXN1cnJlY3RlZGZyb20gYSBmb3NzaWwuLi4uVGhlIGRvb3IgaXNsb2Nr ZWQuLi5DSU5OQUJBUiBHWU0nc0JMQUlORSBpcyBhbiBvZGRtYW4gd2hvIGhhcyBsaXZlZGhlcmUg Zm9yIGRlY2FkZXMuU2NpZW50aXN0cyBjb25kdWN0ZXhwZXJpbWVudHMgaW50aGUgYnVybmVkIG91 dGJ1aWxkaW5nLkNJTk5BQkFSIElTTEFORFRoZSBGaWVyeSBUb3duIG9mQnVybmluZyBEZXNpcmUj TU9OIExBQkNJTk5BQkFSIElTTEFORCNNT04gR1lNTEVBREVSOiBCTEFJTkVUaGUgSG90LUhlYWRl ZFF1aXogTWFzdGVyIVdoYXQgZG8geW91IHdhbnQ/R2V0IGxvc3QhQk9TUyBzYWlkIGhlJ2xsdGFr ZSB0aGlzIHRvd24hR2V0IG91dCBvZiB0aGV3YXkhU0FGRlJPTiBiZWxvbmdzdG8gVEVBTSBST0NL RVQhQmVpbmcgZXZpbCBtYWtlc21lIGZlZWwgc28gYWxpdmUhT3chIFdhdGNoIHdoZXJleW91J3Jl IHdhbGtpbmchV2l0aCBTSUxQSCB1bmRlcmNvbnRyb2wsIHdlIGNhbmV4cGxvaXQgI01PTmFyb3Vu ZCB0aGUgd29ybGQhWW91IGJlYXQgVEVBTVJPQ0tFVCBhbGwgYWxvbmU/VGhhdCdzIGFtYXppbmch WWVhaCEgVEVBTSBST0NLRVRpcyBnb25lIUl0J3Mgc2FmZSB0byBnb291dCBhZ2FpbiFQZW9wbGUg c2hvdWxkIGJlZmxvY2tpbmcgYmFjayB0b1NBRkZST04gbm93LkkgZmxldyBoZXJlIG9uIG15UElE R0VPVCB3aGVuIElyZWFkIGFib3V0IFNJTFBILkl0J3MgYWxyZWFkeSBvdmVyP0kgbWlzc2VkIHRo ZW1lZGlhIGFjdGlvbi5QSURHRU9UOiBCaSBiaWJpaSEKCi0tLS0KCkkgc2F3IFJPQ0tFVEJPU1Mg ZXNjYXBpbmcgU0lMUEgncyBidWlsZGluZy4KCkknbSBhIHNlY3VyaXR5IGd1YXJkLiBTdXNwaWNp b3VzIGtpZHMgSSBkb24ndCBhbGxvdyBpbiEKCi4uLlNub3JlLi4uSGFoISBIZSdzIHRha2luZyBh IHNub296ZSEKClNBRkZST04gQ0lUWSBTaGluaW5nLCBHb2xkZW4gTGFuZCBvZiBDb21tZXJjZQoK RklHSFRJTkcgRE9KTwoKU0FGRlJPTiBDSVRZCgojTU9OIEdZTSBMRUFERVI6IFNBQlJJTkEgVGhl IE1hc3RlciBvZiBQc3ljaGljICNNT04hCgpUUkFJTkVSIFRJUFMgRlVMTCBIRUFMIGN1cmVzIGFs bCBhaWxtZW50cyBsaWtlIHNsZWVwIGFuZCBidXJucy4gSXQgY29zdHMgYSBiaXQgbW9yZSwgYnV0 IGl0J3MgbW9yZSBjb252ZW5pZW50LgoKVFJBSU5FUiBUSVBTIE5ldyBHUkVBVCBCQUxMIG9mZmVy cyBpbXByb3ZlZCBjYXB0dXJlIHJhdGVzLiBUcnkgaXQgb24gdGhvc2UgaGFyZC10by1jYXRjaCAj TU9OLgoKU0lMUEggQ08uIE9GRklDRSBCVUlMRElORwoKTVIuUFNZQ0hJQydzIEhPVVNFIAoKU0lM UEgncyBsYXRlc3QgcHJvZHVjdCEgUmVsZWFzZSB0byBiZSBkZXRlcm1pbmVkLi4uCgotLS0tCgpJ dCBkb2RnZWQgdGhlIHRocm93biBCQUxMIQoKVGhpcyAjTU9OIGNhbid0IGJlIGNhdWdodCEKCllv dSBtaXNzZWQgdGhlICNNT04hCgpEYXJuISBUaGUgI01PTiBicm9rZSBmcmVlIQoKQXd3ISBJdCBh cHBlYXJlZCB0byBiZSBjYXVnaHQhCgpTaG9vdCEgSXQgd2FzIHNvIGNsb3NlIHRvbyEKCkFsbCBy aWdodCEgPD4gd2FzIGNhdWdodCEKCjw+IHdhcyB0cmFuc2ZlcnJlZCB0byBCSUxMJ3MgUEMhCgo8 PiB3YXMgdHJhbnNmZXJyZWQgdG8gc29tZW9uZSdzIFBDIQoKTmV3ICNERVggZGF0YSB3aWxsIGJl IGFkZGVkIGZvciA8PiEKCi0tLS0KClRoZXJlJ3Mgbm8gcGxhY2V0byBnZXQgb2ZmIQoKPD4ncyA8 PiByb3NlLgoKSXQgd29uJ3QgaGF2ZSBhbnkgZWZmZWN0LgoKPD4gdGhyZXcgc29tZSBCQUlULgoK PD4gdGhyZXcgYSBST0NLLgoKUGxheWVkIHRoZSAjRkxVVEUuCgpOb3csIHRoYXQncyBhIGNhdGNo eSB0dW5lIQoKQWxsIHNsZWVwaW5nICNNT04gd29rZSB1cC4KCjw+IHBsYXllZCB0aGUjIEZMVVRF LgoKLS0tLQoKWWVzISBJVEVNRklOREVSIGluZGljYXRlcyB0aGVyZSdzIGFuIGl0ZW0gbmVhcmJ5 LgoKTm9wZSEgSVRFTUZJTkRFUiBpc24ndCByZXNwb25kaW5nLgoKUmFpc2UgUFAgb2Ygd2hpY2gg dGVjaG5pcXVlPwoKUmVzdG9yZSBQUCBvZiB3aGljaCB0ZWNobmlxdWU/Cgo8PidzIFBQIGlzIG1h eGVkIG91dC4KCjw+J3MgUFAgaW5jcmVhc2VkLgoKUFAgd2FzIHJlc3RvcmVkLgoKQm9vdGVkIHVw IGEgVE0hCgpCb290ZWQgdXAgYW4gSE0hCgpJdCBjb250YWluZWQgPD4hCgpUZWFjaCA8PiB0byBh ICNNT04/Cgo8PiBpcyBub3QgY29tcGF0aWJsZSB3aXRoIDw+LgoKSXQgY2FuJ3QgbGVhcm4gPD4u CgpPQUs6IDw+ICEgVGhpcyBpc24ndCB0aGUgdGltZSB0byB1c2UgdGhhdCEKClRoaXMgaXNuJ3Qg eW91cnMgdG8gdXNlIQoKSXQgd29uJ3QgaGF2ZSBhbnkgZWZmZWN0LgoKVGhlIHRyYWluZXIgYmxv Y2tlZCB0aGUgQkFMTCEKCkRvbid0IGJlIGEgdGhpZWYhCgpObyBjeWNsaW5nIGFsbG93ZWQgaGVy ZS4KCk5vIFNVUkZpbmcgb24gPD4gaGVyZSEKClRoZSAjTU9OIEJPWCBpcyBmdWxsIQoKQ2FuJ3Qg dXNlIHRoYXQgaXRlbSEKCi0tLS0KCkknbSBsb29raW5nIGZvciA8PiEKCldhbm5hIHRyYWRlIG9u ZSBmb3IgPD4/CgpBd3d3ISBPaCB3ZWxsLi4uCgpXaGF0PyBUaGF0J3Mgbm90IDw+IQoKSWYgeW91 IGdldCBvbmUsIGNvbWUgYmFjayBoZXJlIQoKSGV5IHRoYW5rcyEKCklzbid0IG15IG9sZCA8PiBn cmVhdD8KCkhlbGxvIHRoZXJlISBEbyB5b3Ugd2FudCB0byB0cmFkZSB5b3VyIDw+IGZvciA8Pj8K CldlbGwsIGlmIHlvdSBkb24ndCB3YW50IHRvLi4uCgpIbW1tPyBUaGlzIGlzbid0IDw+LgoKVGhp bmsgb2YgbWUgd2hlbiB5b3UgZ2V0IG9uZS4KClRoYW5rcyEgVGhlIDw+IHlvdSB0cmFkZWQgdG8g bWUgd2VudCBhbmQgZXZvbHZlZCEKCkhpISBEbyB5b3UgaGF2ZSA8Pj8KCldhbnQgdG8gdHJhZGUg aXQgZm9yIDw+PwoKVGhhdCdzIHRvbyBiYWQuLi4uCgpUaGlzIGlzIG5vIDw+LgoKSWYgeW91IGdl dCBvbmUsIHRyYWRlIGl0IHdpdGggbWUhCgpUaGFua3MgcGFsIQoKSG93IGlzIG15IG9sZCA8PiA/ CgpNeSA8PiBpcyBkb2luZyBncmVhdCEKClRoZXJlIGlzbid0IGFueXRoaW5nIHRvIENVVCEKCmhh Y2tlZCBhd2F5IHdpdGggQ1VUIQoKCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX18KV2lraW5ldXJvdGljIG1haWxpbmcgbGlzdApXaWtpbmV1cm90aWNAbG9q YmFuLm9yZwpodHRwOi8vbWFpbC5sb2piYW4ub3JnL21haWxtYW4vbGlzdGluZm8vd2lraW5ldXJv dGljCg==