Received: from localhost ([::1]:36141 helo=stodi.digitalkingdom.org) by stodi.digitalkingdom.org with esmtp (Exim 4.76) (envelope-from ) id 1Sr86p-0004Kg-SD; Tue, 17 Jul 2012 06:46:40 -0700 Received: from 173-13-139-235-sfba.hfc.comcastbusiness.net ([173.13.139.235]:51903 helo=digitalkingdom.org) by stodi.digitalkingdom.org with smtp (Exim 4.76) (envelope-from ) id 1Sr86c-0004JX-Iu for wikineurotic@lojban.org; Tue, 17 Jul 2012 06:46:32 -0700 Received: by digitalkingdom.org (sSMTP sendmail emulation); Tue, 17 Jul 2012 06:46:26 -0700 From: "Apache" Date: Tue, 17 Jul 2012 06:46:26 -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 selpa'i at 13:45 UTC Comment: Translated entries for Mew, Kokuna and Drowzee 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 selpa'i 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 Content-Length: 55980 VGhlIHBhZ2Ugc2VsY2knYSBzZXJhJ2EgbGFpIHBva2Vtb24uIHdhcyBjaGFuZ2VkIGJ5IHNlbHBh J2kgYXQgMTM6NDUgVVRDCkNvbW1lbnQ6IFRyYW5zbGF0ZWQgZW50cmllcyBmb3IgTWV3LCBLb2t1 bmEgYW5kIERyb3d6ZWUKCllvdSBjYW4gdmlldyB0aGUgcGFnZSBieSBmb2xsb3dpbmcgdGhpcyBs aW5rOgogCmh0dHA6Ly93d3cubG9qYmFuLm9yZy90aWtpL3NlbGNpJTI3YSUyMHNlcmElMjdhJTIw bGFpJTIwcG9rZW1vbi4KCllvdSBjYW4gdmlldyBhIGRpZmYgYmFjayB0byB0aGUgcHJldmlvdXMg dmVyc2lvbiBieSBmb2xsb3dpbmcgdGhpcyBsaW5rOiAKaHR0cDovL3d3dy5sb2piYW4ub3JnL3Rp a2kvdGlraS1wYWdlaGlzdG9yeS5waHA/cGFnZT1zZWxjaSUyN2ElMjBzZXJhJTI3YSUyMGxhaSUy MHBva2Vtb24uJmNvbXBhcmU9MSZvbGR2ZXI9NDImbmV3dmVyPTQzCgoKKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKVGhlIGNoYW5nZXMg aW4gdGhpcyB2ZXJzaW9uIGZvbGxvdyBiZWxvdywgZm9sbG93ZWQgYWZ0ZXIgYnkgdGhlIGN1cnJl bnQgZnVsbCBwYWdlIHRleHQuCioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqCgoKKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKQEAgLUxpbmVzOiAzMTAtMzE0IGNoYW5nZWQgdG8g K0xpbmVzOiAzMTAtMzE0IEBACistKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst Ky0rLSstKy0rLSstKy0rLSstKy0rCkxhcHJhcyB8IEEgI01PTiB0aGF0IGhhcyBiZWVuIG92ZXIt IGh1bnRlZCBhbG1vc3QgdG8gZXh0aW5jdGlvbi4gSXQgY2FuIGZlcnJ5IHBlb3BsZSBhY3Jvc3Mg dGhlIHdhdGVyCkFyY2FuaW5lIHwgQSAjTU9OIHRoYXQgaGFzIGJlZW4gYWRtaXJlZCBzaW5jZSB0 aGUgcGFzdCBmb3IgaXRzIGJlYXV0eS4gSXQgcnVucyBhZ2lsZWx5IGFzIGlmIG9uIHdpbmdzCi0g TWV3IHwgU28gcmFyZSB0aGF0IGl0IGlzIHN0aWxsIHNhaWQgdG8gYmUgYSBtaXJhZ2UgYnkgbWFu eSBleHBlcnRzLiBPbmx5IGEgZmV3IHBlb3BsZSBoYXZlIHNlZW4gaXQgd29ybGR3aWRlCisgTWV3 IHwgU28gcmFyZSB0aGF0IGl0IGlzIHN0aWxsIHNhaWQgdG8gYmUgYSBtaXJhZ2UgYnkgbWFueSBl eHBlcnRzLiBPbmx5IGEgZmV3IHBlb3BsZSBoYXZlIHNlZW4gaXQgd29ybGR3aWRlIHwgdGFpIHJp cmNpIGphJ2UgbG8gbnUgc28naSBjZXJ0dSB6YSdvIGppbnZpIGxvIGR1J3UgamFpIGdhc3RjaWNh IC5pIHNvJ3UgcG8nbyBwcmVudSBiYSdvIHZpc2thIGJ1J3UgbG8gbXVsbm8gdGVyZGkKR3lhcmFk b3MgfCBSYXJlbHkgc2VlbiBpbiB0aGUgd2lsZC4gSHVnZSBhbmQgdmljaW91cywgaXQgaXMgY2Fw YWJsZSBvZiBkZXN0cm95aW5nIGVudGlyZSBjaXRpZXMgaW4gYSByYWdlClNoZWxsZGVyIHwgSXRz IGhhcmQgc2hlbGwgcmVwZWxzIGFueSBraW5kIG9mIGF0dGFjay4gSXQgaXMgdnVsbmVyYWJsZSBv bmx5IHdoZW4gaXRzIHNoZWxsIGlzIG9wZW4KCistKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCkBAIC1MaW5lczogMzM1LTMzOSBjaGFuZ2Vk IHRvICtMaW5lczogMzM1LTMzOSBAQAorLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKwpQYXJhc2VjdCB8IEEgaG9zdC1wYXJhc2l0ZSBwYWly IGluIHdoaWNoIHRoZSBwYXJhc2l0ZSBtdXNocm9vbSBoYXMgdGFrZW4gb3ZlciB0aGUgaG9zdCBi dWcuIFByZWZlcnMgZGFtcCBwbGFjZXMKUHN5ZHVjayB8IFdoaWxlIGx1bGxpbmcgaXRzIGVuZW1p ZXMgd2l0aCBpdHMgdmFjYW50IGxvb2ssIHRoaXMgd2lseSAjTU9OIHdpbGwgdXNlIHBzeWNob2tp bmV0aWMgcG93ZXJzCi0gRHJvd3plZSB8IFB1dHMgZW5lbWllcyB0byBzbGVlcCB0aGVuIGVhdHMg dGhlaXIgZHJlYW1zLiBPY2Nhc2lvbmFsbHkgZ2V0cyBzaWNrIGZyb20gZWF0aW5nIGJhZCBkcmVh bXMKKyBEcm93emVlIHwgUHV0cyBlbmVtaWVzIHRvIHNsZWVwIHRoZW4gZWF0cyB0aGVpciBkcmVh bXMuIE9jY2FzaW9uYWxseSBnZXRzIHNpY2sgZnJvbSBlYXRpbmcgYmFkIGRyZWFtcyB8IHNpcGdh dSBsbyBicmFkaSBnaSdlIGJhIGJvIGNpdGthIGxvIGJ5LiBzZWxzbmUgLmkgc3UnbyByb2kgYmlu eG8gbG8gYmlsbWEgcmknYSBsbyBudSBjaXRrYSBsbyBtYWxzZWxzbmUKR29sZW0gfCBJdHMgYm91 bGRlci1saWtlIGJvZHkgaXMgZXh0cmVtZWx5IGhhcmQuIEl0IGNhbiBlYXNpbHkgd2l0aHN0YW5k IGR5bmFtaXRlIGJsYXN0cyB3aXRob3V0IGRhbWFnZQpNYWdtYXIgfCBJdHMgYm9keSBhbHdheXMg YnVybnMgd2l0aCBhbiBvcmFuZ2UgZ2xvdyB0aGF0IGVuYWJsZXMgaXQgdG8gaGlkZSBwZXJmZWN0 bHkgYW1vbmcgZmxhbWVzCgorLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst Ky0rLSstKy0rLSstKy0rLSstKwpAQCAtTGluZXM6IDM4NC0zODggY2hhbmdlZCB0byArTGluZXM6 IDM4NC0zODggQEAKKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r LSstKy0rLSstKy0rLSsKUG9saXdyYXRoIHwgQW4gYWRlcHQgc3dpbW1lciBhdCBib3RoIHRoZSBm cm9udCBjcmF3bCBhbmQgYnJlYXN0IHN0cm9rZS4gRWFzaWx5IG92ZXJ0YWtlcyB0aGUgYmVzdCBo dW1hbiBzd2ltbWVycwpXZWVkbGUgfCBPZnRlbiBmb3VuZCBpbiBmb3Jlc3RzLCBlYXRpbmcgbGVh dmVzLiBJdCBoYXMgYSBzaGFycCB2ZW5vbW91cyBzdGluZ2VyIG9uIGl0cyBoZWFkCi0gS2FrdW5h IHwgQWxtb3N0IGluY2FwYWJsZSBvZiBtb3ZpbmcsIHRoaXMgI01PTiBjYW4gb25seSBoYXJkZW4g aXRzIHNoZWxsIHRvIHByb3RlY3QgaXRzZWxmIGZyb20gcHJlZGF0b3JzCisgS2FrdW5hIHwgQWxt b3N0IGluY2FwYWJsZSBvZiBtb3ZpbmcsIHRoaXMgI01PTiBjYW4gb25seSBoYXJkZW4gaXRzIHNo ZWxsIHRvIHByb3RlY3QgaXRzZWxmIGZyb20gcHJlZGF0b3JzIHwgbmEgcnUnZSBuYSBrYWtuZSBs byBudSBtdXZkdSAuaSBsbyBkZWkgcG9rbWEgY3Uga2FrbmUgbm8gbmEnZSBibyBsbyBrYSBqYXJn YXUgbG8gcmkgY2Fsa3UgdGUgenUnZSBsbyBudSBqYWkgYmFuZHUgbG8gc2V6dmkgdHUnYSBsbyBr YWx0ZQpCZWVkcmlsbCB8IEZsaWVzIGF0IGhpZ2ggc3BlZWQgYW5kIGF0dGFja3MgdXNpbmcgaXRz IGxhcmdlIHZlbm9tb3VzIHN0aW5nZXJzIG9uIGl0cyBmb3JlbGVncyBhbmQgdGFpbApEb2RyaW8g fCBVc2VzIGl0cyB0aHJlZSBicmFpbnMgdG8gZXhlY3V0ZSBjb21wbGV4IHBsYW5zLiBXaGlsZSB0 d28gaGVhZHMgc2xlZXAsIG9uZSBoZWFkIHN0YXlzIGF3YWtlCgoKCgoqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgpUaGUgbmV3IHBhZ2Ug Y29udGVudCBmb2xsb3dzIGJlbG93LgoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKgoKVGhpcyBwYWdlIGlzIGEgY29sbGFib3JhdGlvbiBh dHRlbXB0IGF0IGNvbnNpc3RlbnRseSB0cmFuc2xhdGluZyBpbXBvcnRhbnQgdGVybXMgYW5kIGxp bmVzIGZyb20gdGhlIFBva2Vtb24gZ2FtZXMuIFRoZSBkaXNjdXNzaW9uIHBhZ2UgaXMgW2h0dHBz Oi8vZ3JvdXBzLmdvb2dsZS5jb20vZC90b3BpYy9sb2piYW4vczQ0SDd6LTR2emcvZGlzY3Vzc2lv bnxoZXJlXQoKCgp7bWFrZXRvY30KCgoKIUdlbiAxIChSZWQvQmx1ZS9ZZWxsb3cpCgoKCihpbiBw cm9ncmVzcyAtLSB2YXJ5aW5nIHZlcnNpb25zIG9mIHJvbXMgKHNvcnRlZCBieSBVVEMgZGF0ZXRp bWUpIGNhbiBiZSBmb3VuZCBbaHR0cDovL2phbmRldy5lcnNvZnQub3JnL2Rvd25sb2FkL2xvamJh bi9wb2tlcmVkL3xoZXJlXSAtLSBbaHR0cDovL3ZiYS5uZ2VtdS5jb20vfFZpc3VhbCBCb3kgQWR2 YW5jZV0gaXMgYSBnb29kIHdheSB0byBydW4gdGhlbSkKCgoKVGhpcyBpcyBhIGRpcmVjdCByaXAg 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 IG1hbnkgZXhwZXJ0cy4gT25seSBhIGZldyBwZW9wbGUgaGF2ZSBzZWVuIGl0IHdvcmxkd2lkZSB8 IHRhaSByaXJjaSBqYSdlIGxvIG51IHNvJ2kgY2VydHUgemEnbyBqaW52aSBsbyBkdSd1IGphaSBn YXN0Y2ljYSAuaSBzbyd1IHBvJ28gcHJlbnUgYmEnbyB2aXNrYSBidSd1IGxvIG11bG5vIHRlcmRp CgpHeWFyYWRvcyB8IFJhcmVseSBzZWVuIGluIHRoZSB3aWxkLiBIdWdlIGFuZCB2aWNpb3VzLCBp dCBpcyBjYXBhYmxlIG9mIGRlc3Ryb3lpbmcgZW50aXJlIGNpdGllcyBpbiBhIHJhZ2UKClNoZWxs ZGVyIHwgSXRzIGhhcmQgc2hlbGwgcmVwZWxzIGFueSBraW5kIG9mIGF0dGFjay4gSXQgaXMgdnVs bmVyYWJsZSBvbmx5IHdoZW4gaXRzIHNoZWxsIGlzIG9wZW4KClRlbnRhY29vbCB8IERyaWZ0cyBp biBzaGFsbG93IHNlYXMuIEFuZ2xlcnMgd2hvIGhvb2sgdGhlbSBieSBhY2NpZGVudCBhcmUgb2Z0 ZW4gcHVuaXNoZWQgYnkgaXRzIHN0aW5naW5nIGFjaWQKCkdhc3RseSB8IEFsbW9zdCBpbnZpc2li bGUsIHRoaXMgZ2FzZW91cyAjTU9OIGNsb2FrcyB0aGUgdGFyZ2V0IGFuZCBwdXRzIGl0IHRvIHNs ZWVwIHdpdGhvdXQgbm90aWNlCgpTY3l0aGVyIHwgV2l0aCBuaW5qYS1saWtlIGFnaWxpdHkgYW5k IHNwZWVkLCBpdCBjYW4gY3JlYXRlIHRoZSBpbGx1c2lvbiB0aGF0IHRoZXJlIGlzIG1vcmUgdGhh biBvbmUKClN0YXJ5dSB8IEFuIGVuaWdtYXRpYyAjTU9OIHRoYXQgY2FuIGVmZm9ydGxlc3NseSBy ZWdlbmVyYXRlIGFueSBhcHBlbmRhZ2UgaXQgbG9zZXMgaW4gYmF0dGxlCgpCbGFzdG9pc2UgfCBB IGJydXRhbCAjTU9OIHdpdGggcHJlc3N1cml6ZWQgd2F0ZXIgamV0cyBvbiBpdHMgc2hlbGwuIFRo ZXkgYXJlIHVzZWQgZm9yIGhpZ2ggc3BlZWQgdGFja2xlcwoKUGluc2lyIHwgSWYgaXQgZmFpbHMg dG8gY3J1c2ggdGhlIHZpY3RpbSBpbiBpdHMgcGluY2VycywgaXQgd2lsbCBzd2luZyBpdCBhcm91 bmQgYW5kIHRvc3MgaXQgaGFyZAoKVGFuZ2VsYSB8IFRoZSB3aG9sZSBib2R5IGlzIHN3YXRoZWQg d2l0aCB3aWRlIHZpbmVzIHRoYXQgYXJlIHNpbWlsYXIgdG8gc2VhLSB3ZWVkLiBJdHMgdmluZXMg c2hha2UgYXMgaXQgd2Fsa3MKCkdyb3dsaXRoZSB8IFZlcnkgcHJvdGVjdGl2ZSBvZiBpdHMgdGVy cml0b3J5LiBJdCB3aWxsIGJhcmsgYW5kIGJpdGUgdG8gcmVwZWwgaW50cnVkZXJzIGZyb20gaXRz IHNwYWNlCgpPbml4IHwgQXMgaXQgZ3Jvd3MsIHRoZSBzdG9uZSBwb3J0aW9ucyBvZiBpdHMgYm9k eSBoYXJkZW4gdG8gYmVjb21lIHNpbWlsYXIgdG8gYSBkaWFtb25kLCBidXQgY29sb3JlZCBibGFj awoKRmVhcm93IHwgV2l0aCBpdHMgaHVnZSBhbmQgbWFnbmlmaWNlbnQgd2luZ3MsIGl0IGNhbiBr ZWVwIGFsb2Z0IHdpdGhvdXQgZXZlciBoYXZpbmcgdG8gbGFuZCBmb3IgcmVzdAoKUGlkZ2V5IHwg QSBjb21tb24gc2lnaHQgaW4gZm9yZXN0cyBhbmQgd29vZHMuIEl0IGZsYXBzIGl0cyB3aW5ncyBh dCBncm91bmQgbGV2ZWwgdG8ga2ljayB1cCBibGluZGluZyBzYW5kCgpTbG93cG9rZSB8IEluY3Jl ZGlibHkgc2xvdyBhbmQgZG9wZXkuIEl0IHRha2VzIDUgc2Vjb25kcyBmb3IgaXQgdG8gZmVlbCBw YWluIHdoZW4gdW5kZXIgYXR0YWNrCgpLYWRhYnJhIHwgSXQgZW1pdHMgc3BlY2lhbCBhbHBoYSB3 YXZlcyBmcm9tIGl0cyBib2R5IHRoYXQgaW5kdWNlIGhlYWRhY2hlcyBqdXN0IGJ5IGJlaW5nIGNs b3NlIGJ5CgpHcmF2ZWxlciB8IFJvbGxzIGRvd24gc2xvcGVzIHRvIG1vdmUuIEl0IHJvbGxzIG92 ZXIgYW55IG9ic3RhY2xlIHdpdGhvdXQgc2xvd2luZyBvciBjaGFuZ2luZyBpdHMgZGlyZWN0aW9u CgpDaGFuc2V5IHwgQSByYXJlIGFuZCBlbHVzaXZlICNNT04gdGhhdCBpcyBzYWlkIHRvIGJyaW5n IGhhcHBpbmVzcyB0byB0aG9zZSB3aG8gbWFuYWdlIHRvIGdldCBpdAoKTWFjaG9rZSB8IEl0cyBt dXNjdWxhciBib2R5IGlzIHNvIHBvd2VyZnVsLCBpdCBtdXN0IHdlYXIgYSBwb3dlciBzYXZlIGJl bHQgdG8gYmUgYWJsZSB0byByZWd1bGF0ZSBpdHMgbW90aW9ucwoKTXJNaW1lIHwgSWYgaW50ZXJy dXB0ZWQgd2hpbGUgaXQgaXMgbWltaW5nLCBpdCB3aWxsIHNsYXAgYXJvdW5kIHRoZSBvZmZlbmRl ciB3aXRoIGl0cyBicm9hZCBoYW5kcwoKSGl0bW9ubGVlIHwgV2hlbiBpbiBhIGh1cnJ5LCBpdHMg bGVncyBsZW5ndGhlbiBwcm9ncmVzc2l2ZWx5LiBJdCBydW5zIHNtb290aGx5IHdpdGggZXh0cmEg bG9uZywgbG9waW5nIHN0cmlkZXMKCkhpdG1vbmNoYW4gfCBXaGlsZSBhcHBhcmVudGx5IGRvaW5n IG5vdGhpbmcsIGl0IGZpcmVzIHB1bmNoZXMgaW4gbGlnaHRuaW5nIGZhc3Qgdm9sbGV5cyB0aGF0 IGFyZSBpbXBvc3NpYmxlIHRvIHNlZQoKQXJib2sgfCBJdCBpcyBydW1vcmVkIHRoYXQgdGhlIGZl cm9jaW91cyB3YXJuaW5nIG1hcmtpbmdzIG9uIGl0cyBiZWxseSBkaWZmZXIgZnJvbSBhcmVhIHRv IGFyZWEKClBhcmFzZWN0IHwgQSBob3N0LXBhcmFzaXRlIHBhaXIgaW4gd2hpY2ggdGhlIHBhcmFz aXRlIG11c2hyb29tIGhhcyB0YWtlbiBvdmVyIHRoZSBob3N0IGJ1Zy4gUHJlZmVycyBkYW1wIHBs YWNlcwoKUHN5ZHVjayB8IFdoaWxlIGx1bGxpbmcgaXRzIGVuZW1pZXMgd2l0aCBpdHMgdmFjYW50 IGxvb2ssIHRoaXMgd2lseSAjTU9OIHdpbGwgdXNlIHBzeWNob2tpbmV0aWMgcG93ZXJzCgpEcm93 emVlIHwgUHV0cyBlbmVtaWVzIHRvIHNsZWVwIHRoZW4gZWF0cyB0aGVpciBkcmVhbXMuIE9jY2Fz aW9uYWxseSBnZXRzIHNpY2sgZnJvbSBlYXRpbmcgYmFkIGRyZWFtcyB8IHNpcGdhdSBsbyBicmFk aSBnaSdlIGJhIGJvIGNpdGthIGxvIGJ5LiBzZWxzbmUgLmkgc3UnbyByb2kgYmlueG8gbG8gYmls bWEgcmknYSBsbyBudSBjaXRrYSBsbyBtYWxzZWxzbmUKCkdvbGVtIHwgSXRzIGJvdWxkZXItbGlr ZSBib2R5IGlzIGV4dHJlbWVseSBoYXJkLiBJdCBjYW4gZWFzaWx5IHdpdGhzdGFuZCBkeW5hbWl0 ZSBibGFzdHMgd2l0aG91dCBkYW1hZ2UKCk1hZ21hciB8IEl0cyBib2R5IGFsd2F5cyBidXJucyB3 aXRoIGFuIG9yYW5nZSBnbG93IHRoYXQgZW5hYmxlcyBpdCB0byBoaWRlIHBlcmZlY3RseSBhbW9u ZyBmbGFtZXMKCkVsZWN0YWJ1enogfCBOb3JtYWxseSBmb3VuZCBuZWFyIHBvd2VyIHBsYW50cywg dGhleSBjYW4gd2FuZGVyIGF3YXkgYW5kIGNhdXNlIG1ham9yIGJsYWNrb3V0cyBpbiBjaXRpZXMK Ck1hZ25ldG9uIHwgRm9ybWVkIGJ5IHNldmVyYWwgTUFHTkVNSVRFcyBsaW5rZWQgdG9nZXRoZXIu IFRoZXkgZnJlcXVlbnRseSBhcHBlYXIgd2hlbiBzdW5zcG90cyBmbGFyZSB1cAoKS29mZmluZyB8 IEJlY2F1c2UgaXQgc3RvcmVzIHNldmVyYWwga2luZHMgb2YgdG94aWMgZ2FzZXMgaW4gaXRzIGJv ZHksIGl0IGlzIHByb25lIHRvIGV4cGxvZGluZyB3aXRob3V0IHdhcm5pbmcKCk1hbmtleSB8IEV4 dHJlbWVseSBxdWljayB0byBhbmdlci4gSXQgY291bGQgYmUgZG9jaWxlIG9uZSBtb21lbnQgdGhl biB0aHJhc2hpbmcgYXdheSB0aGUgbmV4dCBpbnN0YW50CgpTZWVsIHwgVGhlIHByb3RydWRpbmcg aG9ybiBvbiBpdHMgaGVhZCBpcyB2ZXJ5IGhhcmQuIEl0IGlzIHVzZWQgZm9yIGJhc2hpbmcgdGhy b3VnaCB0aGljayBpY2UKCkRpZ2xldHQgfCBMaXZlcyBhYm91dCBvbmUgeWFyZCB1bmRlcmdyb3Vu ZCB3aGVyZSBpdCBmZWVkcyBvbiBwbGFudCByb290cy4gSXQgc29tZXRpbWVzIGFwcGVhcnMgYWJv dmUgZ3JvdW5kCgpUYXVyb3MgfCBXaGVuIGl0IHRhcmdldHMgYW4gZW5lbXksIGl0IGNoYXJnZXMg ZnVyaW91c2x5IHdoaWxlIHdoaXBwaW5nIGl0cyBib2R5IHdpdGggaXRzIGxvbmcgdGFpbHMKCkZh cmZldGNoZCB8IFRoZSBzcHJpZyBvZiBncmVlbiBvbmlvbnMgaXQgaG9sZHMgaXMgaXRzIHdlYXBv bi4gSXQgaXMgdXNlZCBtdWNoIGxpa2UgYSBtZXRhbCBzd29yZAoKVmVub25hdCB8IExpdmVzIGlu IHRoZSBzaGFkb3dzIG9mIHRhbGwgdHJlZXMgd2hlcmUgaXQgZWF0cyBpbnNlY3RzLiBJdCBpcyBh dHRyYWN0ZWQgYnkgbGlnaHQgYXQgbmlnaHQKCkRyYWdvbml0ZSB8IEFuIGV4dHJlbWVseSByYXJl bHkgc2VlbiBtYXJpbmUgI01PTi4gSXRzIGludGVsbGlnZW5jZSBpcyBzYWlkIHRvIG1hdGNoIHRo YXQgb2YgaHVtYW5zCgpEb2R1byB8IEEgYmlyZCB0aGF0IG1ha2VzIHVwIGZvciBpdHMgcG9vciBm bHlpbmcgd2l0aCBpdHMgZmFzdCBmb290IHNwZWVkLiBMZWF2ZXMgZ2lhbnQgZm9vdHByaW50cwoK UG9saXdhZyB8IEl0cyBuZXdseSBncm93biBsZWdzIHByZXZlbnQgaXQgZnJvbSBydW5uaW5nLiBJ dCBhcHBlYXJzIHRvIHByZWZlciBzd2ltbWluZyB0aGFuIHRyeWluZyB0byBzdGFuZAoKSnlueCB8 IEl0IHNlZHVjdGl2ZWx5IHdpZ2dsZXMgaXRzIGhpcHMgYXMgaXQgd2Fsa3MuIEl0IGNhbiBjYXVz ZSBwZW9wbGUgdG8gZGFuY2UgaW4gdW5pc29uIHdpdGggaXQKCk1vbHRyZXMgfCBLbm93biBhcyB0 aGUgbGVnZW5kYXJ5IGJpcmQgb2YgZmlyZS4gRXZlcnkgZmxhcCBvZiBpdHMgd2luZ3MgY3JlYXRl cyBhIGRhenpsaW5nIGZsYXNoIG9mIGZsYW1lcwoKQXJ0aWN1bm8gfCBBIGxlZ2VuZGFyeSBiaXJk ICNNT04gdGhhdCBpcyBzYWlkIHRvIGFwcGVhciB0byBkb29tZWQgcGVvcGxlIHdobyBhcmUgbG9z dCBpbiBpY3kgbW91bnRhaW5zCgpaYXBkb3MgfCBBIGxlZ2VuZGFyeSBiaXJkICNNT04gdGhhdCBp cyBzYWlkIHRvIGFwcGVhciBmcm9tIGNsb3VkcyB3aGlsZSBkcm9wcGluZyBlbm9ybW91cyBsaWdo dG5pbmcgYm9sdHMKCkRpdHRvIHwgQ2FwYWJsZSBvZiBjb3B5aW5nIGFuIGVuZW15J3MgZ2VuZXRp YyBjb2RlIHRvIGluc3RhbnRseSB0cmFuc2Zvcm0gaXRzZWxmIGludG8gYSBkdXBsaWNhdGUgb2Yg dGhlIGVuZW15CgpNZW93dGggfCBBZG9yZXMgY2lyY3VsYXIgb2JqZWN0cy4gV2FuZGVycyB0aGUg c3RyZWV0cyBvbiBhIG5pZ2h0bHkgYmFzaXMgdG8gbG9vayBmb3IgZHJvcHBlZCBsb29zZSBjaGFu Z2UKCktyYWJieSB8IEl0cyBwaW5jZXJzIGFyZSBub3Qgb25seSBwb3dlcmZ1bCB3ZWFwb25zLCB0 aGV5IGFyZSB1c2VkIGZvciBiYWxhbmNlIHdoZW4gd2Fsa2luZyBzaWRld2F5cwoKVnVscGl4IHwg QXQgdGhlIHRpbWUgb2YgYmlydGgsIGl0IGhhcyBqdXN0IG9uZSB0YWlsLiBUaGUgdGFpbCBzcGxp dHMgZnJvbSBpdHMgdGlwIGFzIGl0IGdyb3dzIG9sZGVyCgpOaW5ldGFsZXMgfCBWZXJ5IHNtYXJ0 IGFuZCB2ZXJ5IHZlbmdlZnVsLiBHcmFiYmluZyBvbmUgb2YgaXRzIG1hbnkgdGFpbHMgY291bGQg cmVzdWx0IGluIGEgMTAwMC15ZWFyIGN1cnNlCgpQaWthY2h1IHwgV2hlbiBzZXZlcmFsIG9mIHRo ZXNlICNNT04gZ2F0aGVyLCB0aGVpciBlbGVjdHJpY2l0eSBjb3VsZCBidWlsZCBhbmQgY2F1c2Ug bGlnaHRuaW5nIHN0b3JtcwoKUmFpY2h1IHwgSXRzIGxvbmcgdGFpbCBzZXJ2ZXMgYXMgYSBncm91 bmQgdG8gcHJvdGVjdCBpdHNlbGYgZnJvbSBpdHMgb3duIGhpZ2ggdm9sdGFnZSBwb3dlcgoKRHJh dGluaSB8IExvbmcgY29uc2lkZXJlZCBhIG15dGhpY2FsICNNT04gdW50aWwgcmVjZW50bHkgd2hl biBhIHNtYWxsIGNvbG9ueSB3YXMgZm91bmQgbGl2aW5nIHVuZGVyd2F0ZXIKCkRyYWdvbmFpciB8 IEEgbXlzdGljYWwgI01PTiB0aGF0IGV4dWRlcyBhIGdlbnRsZSBhdXJhLiBIYXMgdGhlIGFiaWxp dHkgdG8gY2hhbmdlIGNsaW1hdGUgY29uZGl0aW9ucwoKS2FidXRvIHwgQSAjTU9OIHRoYXQgd2Fz IHJlc3VycmVjdGVkIGZyb20gYSBmb3NzaWwgZm91bmQgaW4gd2hhdCB3YXMgb25jZSB0aGUgb2Nl YW4gZmxvb3IgZW9ucyBhZ28KCkthYnV0b3BzIHwgSXRzIHNsZWVrIHNoYXBlIGlzIHBlcmZlY3Qg Zm9yIHN3aW0tIG1pbmcuIEl0IHNsYXNoZXMgcHJleSB3aXRoIGl0cyBjbGF3cyBhbmQgZHJhaW5z IHRoZSBib2R5IGZsdWlkcwoKSG9yc2VhIHwgS25vd24gdG8gc2hvb3QgZG93biBmbHlpbmcgYnVn cyB3aXRoIHByZWNpc2lvbiBibGFzdHMgb2YgaW5rIGZyb20gdGhlIHN1cmZhY2Ugb2YgdGhlIHdh dGVyCgpTZWFkcmEgfCBDYXBhYmxlIG9mIHN3aW0tIG1pbmcgYmFja3dhcmRzIGJ5IHJhcGlkbHkg ZmxhcHBpbmcgaXRzIHdpbmctbGlrZSBwZWN0b3JhbCBmaW5zIGFuZCBzdG91dCB0YWlsCgpTYW5k c2hyZXcgfCBCdXJyb3dzIGRlZXAgdW5kZXJncm91bmQgaW4gYXJpZCBsb2NhdGlvbnMgZmFyIGZy b20gd2F0ZXIuIEl0IG9ubHkgZW1lcmdlcyB0byBodW50IGZvciBmb29kCgpTYW5kc2xhc2ggfCBD dXJscyB1cCBpbnRvIGEgc3BpbnkgYmFsbCB3aGVuIHRocmVhdGVuZWQuIEl0IGNhbiByb2xsIHdo aWxlIGN1cmxlZCB1cCB0byBhdHRhY2sgb3IgZXNjYXBlCgpPbWFueXRlIHwgQWx0aG91Z2ggbG9u ZyBleHRpbmN0LCBpbiByYXJlIGNhc2VzLCBpdCBjYW4gYmUgZ2VuZXRpY2FsbHkgcmVzdXJyZWN0 ZWQgZnJvbSBmb3NzaWxzCgpPbWFzdGFyIHwgQSBwcmVoaXN0b3JpYyAjTU9OIHRoYXQgZGllZCBv dXQgd2hlbiBpdHMgaGVhdnkgc2hlbGwgbWFkZSBpdCBpbXBvc3NpYmxlIHRvIGNhdGNoIHByZXkK CkppZ2dseXB1ZmYgfCBXaGVuIGl0cyBodWdlIGV5ZXMgbGlnaHQgdXAsIGl0IHNpbmdzIGEgbXlz dGVyaW91c2x5IHNvb3RoaW5nIG1lbG9keSB0aGF0IGx1bGxzIGl0cyBlbmVtaWVzIHRvIHNsZWVw CgpXaWdnbHl0dWZmIHwgVGhlIGJvZHkgaXMgc29mdCBhbmQgcnViYmVyeS4gV2hlbiBhbmdlcmVk LCBpdCB3aWxsIHN1Y2sgaW4gYWlyIGFuZCBpbmZsYXRlIGl0c2VsZiB0byBhbiBlbm9ybW91cyBz aXplCgpFZXZlZSB8IEl0cyBnZW5ldGljIGNvZGUgaXMgaXJyZWd1bGFyLiBJdCBtYXkgbXV0YXRl IGlmIGl0IGlzIGV4cG9zZWQgdG8gcmFkaWF0aW9uIGZyb20gZWxlbWVudCBTVE9ORXMKCkZsYXJl b24gfCBXaGVuIHN0b3JpbmcgdGhlcm1hbCBlbmVyZ3kgaW4gaXRzIGJvZHksIGl0cyB0ZW1wZXJh dHVyZSBjb3VsZCBzb2FyIHRvIG92ZXIgMTYwMCBkZWdyZWVzCgpKb2x0ZW9uIHwgSXQgYWNjdW11 bGF0ZXMgbmVnYXRpdmUgaW9ucyBpbiB0aGUgYXRtb3NwaGVyZSB0byBibGFzdCBvdXQgMTAwMDAt IHZvbHQgbGlnaHRuaW5nIGJvbHRzCgpWYXBvcmVvbiB8IExpdmVzIGNsb3NlIHRvIHdhdGVyLiBJ dHMgbG9uZyB0YWlsIGlzIHJpZGdlZCB3aXRoIGEgZmluIHdoaWNoIGlzIG9mdGVuIG1pc3Rha2Vu IGZvciBhIG1lcm1haWQncwoKTWFjaG9wIHwgTG92ZXMgdG8gYnVpbGQgaXRzIG11c2NsZXMuIEl0 IHRyYWlucyBpbiBhbGwgc3R5bGVzIG9mIG1hcnRpYWwgYXJ0cyB0byBiZWNvbWUgZXZlbiBzdHJv bmdlcgoKWnViYXQgfCBGb3JtcyBjb2xvbmllcyBpbiBwZXJwZXR1YWxseSBkYXJrIHBsYWNlcy4g VXNlcyB1bHRyYXNvbmljIHdhdmVzIHRvIGlkZW50aWZ5IGFuZCBhcHByb2FjaCB0YXJnZXRzCgpF a2FucyB8IE1vdmVzIHNpbGVudGx5IGFuZCBzdGVhbHRoaWx5LiBFYXRzIHRoZSBlZ2dzIG9mIGJp cmRzLCBzdWNoIGFzIFBJREdFWSBhbmQgU1BFQVJPVywgd2hvbGUKClBhcmFzIHwgQnVycm93cyB0 byBzdWNrIHRyZWUgcm9vdHMuIFRoZSBtdXNocm9vbXMgb24gaXRzIGJhY2sgZ3JvdyBieSBkcmF3 LSBpbmcgbnV0cmllbnRzIGZyb20gdGhlIGJ1ZyBob3N0CgpQb2xpd2hpcmwgfCBDYXBhYmxlIG9m IGxpdmluZyBpbiBvciBvdXQgb2Ygd2F0ZXIuIFdoZW4gb3V0IG9mIHdhdGVyLCBpdCBzd2VhdHMg dG8ga2VlcCBpdHMgYm9keSBzbGlteQoKUG9saXdyYXRoIHwgQW4gYWRlcHQgc3dpbW1lciBhdCBi b3RoIHRoZSBmcm9udCBjcmF3bCBhbmQgYnJlYXN0IHN0cm9rZS4gRWFzaWx5IG92ZXJ0YWtlcyB0 aGUgYmVzdCBodW1hbiBzd2ltbWVycwoKV2VlZGxlIHwgT2Z0ZW4gZm91bmQgaW4gZm9yZXN0cywg ZWF0aW5nIGxlYXZlcy4gSXQgaGFzIGEgc2hhcnAgdmVub21vdXMgc3RpbmdlciBvbiBpdHMgaGVh ZAoKS2FrdW5hIHwgQWxtb3N0IGluY2FwYWJsZSBvZiBtb3ZpbmcsIHRoaXMgI01PTiBjYW4gb25s eSBoYXJkZW4gaXRzIHNoZWxsIHRvIHByb3RlY3QgaXRzZWxmIGZyb20gcHJlZGF0b3JzIHwgbmEg cnUnZSBuYSBrYWtuZSBsbyBudSBtdXZkdSAuaSBsbyBkZWkgcG9rbWEgY3Uga2FrbmUgbm8gbmEn ZSBibyBsbyBrYSBqYXJnYXUgbG8gcmkgY2Fsa3UgdGUgenUnZSBsbyBudSBqYWkgYmFuZHUgbG8g c2V6dmkgdHUnYSBsbyBrYWx0ZQoKQmVlZHJpbGwgfCBGbGllcyBhdCBoaWdoIHNwZWVkIGFuZCBh dHRhY2tzIHVzaW5nIGl0cyBsYXJnZSB2ZW5vbW91cyBzdGluZ2VycyBvbiBpdHMgZm9yZWxlZ3Mg YW5kIHRhaWwKCkRvZHJpbyB8IFVzZXMgaXRzIHRocmVlIGJyYWlucyB0byBleGVjdXRlIGNvbXBs ZXggcGxhbnMuIFdoaWxlIHR3byBoZWFkcyBzbGVlcCwgb25lIGhlYWQgc3RheXMgYXdha2UKClBy aW1lYXBlIHwgQWx3YXlzIGZ1cmlvdXMgYW5kIHRlbmFjaW91cyB0byBib290LiBJdCB3aWxsIG5v dCBhYmFuZG9uIGNoYXNpbmcgaXRzIHF1YXJyeSB1bnRpbCBpdCBpcyBjYXVnaHQKCkR1Z3RyaW8g fCBBIHRlYW0gb2YgRElHTEVUVCB0cmlwbGV0cy4gSXQgdHJpZ2dlcnMgaHVnZSBlYXJ0aHF1YWtl cyBieSBidXJyb3dpbmcgNjAgbWlsZXMgdW5kZXJncm91bmQKClZlbm9tb3RoIHwgVGhlIGR1c3Qt bGlrZSBzY2FsZXMgY292ZXJpbmcgaXRzIHdpbmdzIGFyZSBjb2xvciBjb2RlZCB0byBpbmRpY2F0 ZSB0aGUga2luZHMgb2YgcG9pc29uIGl0IGhhcwoKRGV3Z29uZyB8IFN0b3JlcyB0aGVybWFsIGVu ZXJneSBpbiBpdHMgYm9keS4gU3dpbXMgYXQgYSBzdGVhZHkgOCBrbm90cyBldmVuIGluIGludGVu c2VseSBjb2xkIHdhdGVycwoKQ2F0ZXJwaWUgfCBJdHMgc2hvcnQgZmVldCBhcmUgdGlwcGVkIHdp dGggc3VjdGlvbiBwYWRzIHRoYXQgZW5hYmxlIGl0IHRvIHRpcmVsZXNzbHkgY2xpbWIgc2xvcGVz IGFuZCB3YWxscwoKTWV0YXBvZCB8IFRoaXMgI01PTiBpcyB2dWxuZXJhYmxlIHRvIGF0dGFjayB3 aGlsZSBpdHMgc2hlbGwgaXMgc29mdCwgZXhwb3NpbmcgaXRzIHdlYWsgYW5kIHRlbmRlciBib2R5 CgpCdXR0ZXJmcmVlIHwgSW4gYmF0dGxlLCBpdCBmbGFwcyBpdHMgd2luZ3MgYXQgaGlnaCBzcGVl ZCB0byByZWxlYXNlIGhpZ2hseSB0b3hpYyBkdXN0IGludG8gdGhlIGFpcgoKTWFjaGFtcCB8IFVz aW5nIGl0cyBoZWF2eSBtdXNjbGVzLCBpdCB0aHJvd3MgcG93ZXJmdWwgcHVuY2hlcyB0aGF0IGNh biBzZW5kIHRoZSB2aWN0aW0gY2xlYXIgb3ZlciB0aGUgaG9yaXpvbgoKR29sZHVjayB8IE9mdGVu IHNlZW4gc3dpbS0gbWluZyBlbGVnYW50bHkgYnkgbGFrZSBzaG9yZXMuIEl0IGlzIG9mdGVuIG1p c3Rha2VuIGZvciB0aGUgSmFwYW5lc2UgbW9uc3RlciwgS2FwcGEKCkh5cG5vIHwgV2hlbiBpdCBs b2NrcyBleWVzIHdpdGggYW4gZW5lbXksIGl0IHdpbGwgdXNlIGEgbWl4IG9mIFBTSSBtb3ZlcyBz dWNoIGFzIEhZUE5PU0lTIGFuZCBDT05GVVNJT04KCkdvbGJhdCB8IE9uY2UgaXQgc3RyaWtlcywg aXQgd2lsbCBub3Qgc3RvcCBkcmFpbmluZyBlbmVyZ3kgZnJvbSB0aGUgdmljdGltIGV2ZW4gaWYg aXQgZ2V0cyB0b28gaGVhdnkgdG8gZmx5CgpNZXd0d28gfCBJdCB3YXMgY3JlYXRlZCBieSBhIHNj aWVudGlzdCBhZnRlciB5ZWFycyBvZiBob3JyaWZpYyBnZW5lIHNwbGljaW5nIGFuZCBETkEgZW5n aW5lZXJpbmcgZXhwZXJpbWVudHMKClNub3JsYXggfCBWZXJ5IGxhenkuIEp1c3QgZWF0cyBhbmQg c2xlZXBzLiBBcyBpdHMgcm90dW5kIGJ1bGsgYnVpbGRzLCBpdCBiZWNvbWVzIHN0ZWFkaWx5IG1v cmUgc2xvdGhmdWwKCk1hZ2lrYXJwIHwgSW4gdGhlIGRpc3RhbnQgcGFzdCwgaXQgd2FzIHNvbWV3 aGF0IHN0cm9uZ2VyIHRoYW4gdGhlIGhvcnJpYmx5IHdlYWsgZGVzY2VuZGFudHMgdGhhdCBleGlz dCB0b2RheQoKTXVrIHwgVGhpY2tseSBjb3ZlcmVkIHdpdGggYSBmaWx0aHksIHZpbGUgc2x1ZGdl LiBJdCBpcyBzbyB0b3hpYywgZXZlbiBpdHMgZm9vdHByaW50cyBjb250YWluIHBvaXNvbgoKS2lu Z2xlciB8IFRoZSBsYXJnZSBwaW5jZXIgaGFzIDEwMDAwIGhwIG9mIGNydXNoaW5nIHBvd2VyLiBI b3dldmVyLCBpdHMgaHVnZSBzaXplIG1ha2VzIGl0IHVud2llbGR5IHRvIHVzZQoKQ2xveXN0ZXIg fCBXaGVuIGF0dGFja2VkLCBpdCBsYXVuY2hlcyBpdHMgaG9ybnMgaW4gcXVpY2sgdm9sbGV5cy4g SXRzIGlubmFyZHMgaGF2ZSBuZXZlciBiZWVuIHNlZW4KCkVsZWN0cm9kZSB8IEl0IHN0b3JlcyBl bGVjdHJpYyBlbmVyZ3kgdW5kZXIgdmVyeSBoaWdoIHByZXNzdXJlLiBJdCBvZnRlbiBleHBsb2Rl cyB3aXRoIGxpdHRsZSBvciBubyBwcm92b2NhdGlvbgoKQ2xlZmFibGUgfCBBIHRpbWlkIGZhaXJ5 ICNNT04gdGhhdCBpcyByYXJlbHkgc2Vlbi4gSXQgd2lsbCBydW4gYW5kIGhpZGUgdGhlIG1vbWVu dCBpdCBzZW5zZXMgcGVvcGxlCgpXZWV6aW5nIHwgV2hlcmUgdHdvIGtpbmRzIG9mIHBvaXNvbiBn YXNlcyBtZWV0LCAyIEtPRkZJTkdzIGNhbiBmdXNlIGludG8gYSBXRUVaSU5HIG92ZXIgbWFueSB5 ZWFycwoKUGVyc2lhbiB8IEFsdGhvdWdoIGl0cyBmdXIgaGFzIG1hbnkgYWRtaXJlcnMsIGl0IGlz IHRvdWdoIHRvIHJhaXNlIGFzIGEgcGV0IGJlY2F1c2Ugb2YgaXRzIGZpY2tsZSBtZWFubmVzcwoK TWFyb3dhayB8IFRoZSBib25lIGl0IGhvbGRzIGlzIGl0cyBrZXkgd2VhcG9uLiBJdCB0aHJvd3Mg dGhlIGJvbmUgc2tpbGxmdWxseSBsaWtlIGEgYm9vbWVyYW5nIHRvIEtPIHRhcmdldHMKCkhhdW50 ZXIgfCBCZWNhdXNlIG9mIGl0cyBhYmlsaXR5IHRvIHNsaXAgdGhyb3VnaCBibG9jayB3YWxscywg aXQgaXMgc2FpZCB0byBiZSBmcm9tIGFuLSBvdGhlciBkaW1lbnNpb24KCkFicmEgfCBVc2luZyBp dHMgYWJpbGl0eSB0byByZWFkIG1pbmRzLCBpdCB3aWxsIGlkZW50aWZ5IGltcGVuZGluZyBkYW5n ZXIgYW5kIFRFTEVQT1JUIHRvIHNhZmV0eQoKQWxha2F6YW0gfCBJdHMgYnJhaW4gY2FuIG91dC0g cGVyZm9ybSBhIHN1cGVyLSBjb21wdXRlci4gSXRzIGludGVsbGlnZW5jZSBxdW90aWVudCBpcyBz YWlkIHRvIGJlIDUsMDAwCgpQaWRnZW90dG8gfCBWZXJ5IHByb3RlY3RpdmUgb2YgaXRzIHNwcmF3 bGluZyB0ZXJyaXRvcmlhbCBhcmVhLCB0aGlzICNNT04gd2lsbCBmaWVyY2VseSBwZWNrIGF0IGFu eSBpbnRydWRlcgoKUGlkZ2VvdCB8IFdoZW4gaHVudGluZywgaXQgc2tpbXMgdGhlIHN1cmZhY2Ug b2Ygd2F0ZXIgYXQgaGlnaCBzcGVlZCB0byBwaWNrIG9mZiB1bndhcnkgcHJleSBzdWNoIGFzIE1B R0lLQVJQCgpTdGFybWllIHwgSXRzIGNlbnRyYWwgY29yZSBnbG93cyB3aXRoIHRoZSBzZXZlbiBj b2xvcnMgb2YgdGhlIHJhaW5ib3cuIFNvbWUgcGVvcGxlIHZhbHVlIHRoZSBjb3JlIGFzIGEgZ2Vt CgpCdWxiYXNhdXIgfCBBIHN0cmFuZ2Ugc2VlZCB3YXMgcGxhbnRlZCBvbiBpdHMgYmFjayBhdCBi aXJ0aC4gVGhlIHBsYW50IHNwcm91dHMgYW5kIGdyb3dzIHdpdGggdGhpcyAjTU9OCgpWZW51c2F1 ciB8IFRoZSBwbGFudCBibG9vbXMgd2hlbiBpdCBpcyBhYnNvcmJpbmcgc29sYXIgZW5lcmd5LiBJ dCBzdGF5cyBvbiB0aGUgbW92ZSB0byBzZWVrIHN1bmxpZ2h0CgpUZW50YWNydWVsIHwgVGhlIHRl bnRhY2xlcyBhcmUgbm9ybWFsbHkga2VwdCBzaG9ydC4gT24gaHVudHMsIHRoZXkgYXJlIGV4dGVu ZGVkIHRvIGVuc25hcmUgYW5kIGltbW9iaWxpemUgcHJleQoKR29sZGVlbiB8IEl0cyB0YWlsIGZp biBiaWxsb3dzIGxpa2UgYW4gZWxlZ2FudCBiYWxscm9vbSBkcmVzcywgZ2l2aW5nIGl0IHRoZSBu aWNrbmFtZSBvZiB0aGUgV2F0ZXIgUXVlZW4KClNlYWtpbmcgfCBJbiB0aGUgYXV0dW1uIHNwYXdu aW5nIHNlYXNvbiwgdGhleSBjYW4gYmUgc2VlbiBzd2ltbWluZyBwb3dlci0gZnVsbHkgdXAgcml2 ZXJzIGFuZCBjcmVla3MKClBvbnl0YSB8IEl0cyBob292ZXMgYXJlIDEwIHRpbWVzIGhhcmRlciB0 aGFuIGRpYW1vbmRzLiBJdCBjYW4gdHJhbXBsZSBhbnl0aGluZyBjb21wbGV0ZWx5IGZsYXQgaW4g bGl0dGxlIHRpbWUKClJhcGlkYXNoIHwgVmVyeSBjb21wZXRpdGl2ZSwgdGhpcyAjTU9OIHdpbGwg Y2hhc2UgYW55dGhpbmcgdGhhdCBtb3ZlcyBmYXN0IGluIHRoZSBob3BlcyBvZiByYWNpbmcgaXQK ClJhdHRhdGEgfCBCaXRlcyBhbnl0aGluZyB3aGVuIGl0IGF0dGFja3MuIFNtYWxsIGFuZCB2ZXJ5 IHF1aWNrLCBpdCBpcyBhIGNvbW1vbiBzaWdodCBpbiBtYW55IHBsYWNlcwoKUmF0aWNhdGUgfCBJ dCB1c2VzIGl0cyB3aGlzLSBrZXJzIHRvIG1haW50YWluIGl0cyBiYWxhbmNlLiBJdCBhcHBhcmVu dGx5IHNsb3dzIGRvd24gaWYgdGhleSBhcmUgY3V0IG9mZgoKTmlkb3Jpbm8gfCBBbiBhZ2dyZXNz aXZlICNNT04gdGhhdCBpcyBxdWljayB0byBhdHRhY2suIFRoZSBob3JuIG9uIGl0cyBoZWFkIHNl Y3JldGVzIGEgcG93ZXJmdWwgdmVub20KCk5pZG9yaW5hIHwgVGhlIGZlbWFsZSdzIGhvcm4gZGV2 ZWxvcHMgc2xvd2x5LiBQcmVmZXJzIHBoeXNpY2FsIGF0dGFja3Mgc3VjaCBhcyBjbGF3aW5nIGFu ZCBiaXRpbmcKCkdlb2R1ZGUgfCBGb3VuZCBpbiBmaWVsZHMgYW5kIG1vdW50YWlucy4gTWlzdGFr aW5nIHRoZW0gZm9yIGJvdWxkZXJzLCBwZW9wbGUgb2Z0ZW4gc3RlcCBvciB0cmlwIG9uIHRoZW0K ClBvcnlnb24gfCBBICNNT04gdGhhdCBjb25zaXN0cyBlbnRpcmVseSBvZiBwcm9ncmFtbWluZyBj b2RlLiBDYXBhYmxlIG9mIG1vdmluZyBmcmVlbHkgaW4gY3liZXJzcGFjZQoKQWVyb2RhY3R5bCB8 IEEgZmVyb2Npb3VzLCBwcmUtIGhpc3RvcmljICNNT04gdGhhdCBnb2VzIGZvciB0aGUgZW5lbXkn cyB0aHJvYXQgd2l0aCBpdHMgc2VycmF0ZWQgc2F3LWxpa2UgZmFuZ3MKCk1hZ25lbWl0ZSB8IFVz ZXMgYW50aS1ncmF2aXR5IHRvIHN0YXkgc3VzcGVuZGVkLiBBcHBlYXJzIHdpdGhvdXQgd2Fybmlu ZyBhbmQgdXNlcyBUSFVOREVSIFdBVkUgYW5kIHNpbWlsYXIgbW92ZXMKCkNoYXJtYW5kZXIgfCBP YnZpb3VzbHkgcHJlZmVycyBob3QgcGxhY2VzLiBXaGVuIGl0IHJhaW5zLCBzdGVhbSBpcyBzYWlk IHRvIHNwb3V0IGZyb20gdGhlIHRpcCBvZiBpdHMgdGFpbAoKU3F1aXJ0bGUgfCBBZnRlciBiaXJ0 aCwgaXRzIGJhY2sgc3dlbGxzIGFuZCBoYXJkZW5zIGludG8gYSBzaGVsbC4gUG93ZXJmdWxseSBz cHJheXMgZm9hbSBmcm9tIGl0cyBtb3V0aAoKQ2hhcm1lbGVvbiB8IFdoZW4gaXQgc3dpbmdzIGl0 cyBidXJuaW5nIHRhaWwsIGl0IGVsZXZhdGVzIHRoZSB0ZW1wZXJhdHVyZSB0byB1bmJlYXJhYmx5 IGhpZ2ggbGV2ZWxzCgpXYXJ0b3J0bGUgfCBPZnRlbiBoaWRlcyBpbiB3YXRlciB0byBzdGFsayB1 bndhcnkgcHJleS4gRm9yIHN3aW1taW5nIGZhc3QsIGl0IG1vdmVzIGl0cyBlYXJzIHRvIG1haW50 YWluIGJhbGFuY2UKCkNoYXJpemFyZCB8IFNwaXRzIGZpcmUgdGhhdCBpcyBob3QgZW5vdWdoIHRv IG1lbHQgYm91bGRlcnMuIEtub3duIHRvIGNhdXNlIGZvcmVzdCBmaXJlcyB1bmludGVudGlvbmFs bHkKCk9kZGlzaCB8IER1cmluZyB0aGUgZGF5LCBpdCBrZWVwcyBpdHMgZmFjZSBidXJpZWQgaW4g dGhlIGdyb3VuZC4gQXQgbmlnaHQsIGl0IHdhbmRlcnMgYXJvdW5kIHNvd2luZyBpdHMgc2VlZHMK Ckdsb29tIHwgVGhlIGZsdWlkIHRoYXQgb296ZXMgZnJvbSBpdHMgbW91dGggaXNuJ3QgZHJvb2wu IEl0IGlzIGEgbmVjdGFyIHRoYXQgaXMgdXNlZCB0byBhdHRyYWN0IHByZXkKClZpbGVwbHVtZSB8 IFRoZSBsYXJnZXIgaXRzIHBldGFscywgdGhlIG1vcmUgdG94aWMgcG9sbGVuIGl0IGNvbnRhaW5z LiBJdHMgYmlnIGhlYWQgaXMgaGVhdnkgYW5kIGhhcmQgdG8gaG9sZCB1cAoKQmVsbHNwcm91dCB8 IEEgY2Fybml2b3JvdXMgI01PTiB0aGF0IHRyYXBzIGFuZCBlYXRzIGJ1Z3MuIEl0IHVzZXMgaXRz IHJvb3QgZmVldCB0byBzb2FrIHVwIG5lZWRlZCBtb2lzdHVyZQoKV2VlcGluYmVsbCB8IEl0IHNw aXRzIG91dCBQT0lTT05QT1dERVIgdG8gaW1tb2JpbGl6ZSB0aGUgZW5lbXkgYW5kIHRoZW4gZmlu aXNoZXMgaXQgd2l0aCBhIHNwcmF5IG9mIEFDSUQKClZpY3RyZWViZWwgfCBTYWlkIHRvIGxpdmUg aW4gaHVnZSBjb2xvbmllcyBkZWVwIGluIGp1bmdsZXMsIGFsdGhvdWdoIG5vIG9uZSBoYXMgZXZl ciByZXR1cm5lZCBmcm9tIHRoZXJlCgp8fAoKCgohISEgUHJvZmVzc29yIE9hayBUZXh0CgooVGhp cyBpcyBhbGwgb2YgdGhlIGludHJvIHRleHQgdGhhdCdzIGFscmVhZHkgaW1wbGVtZW50ZWQgaW4g dGhlIGdhbWUsIHNvIGlmIHlvdSBtYWtlIGNoYW5nZXMsIG9ubHkgZWRpdCB0aGlzIHNlY3Rpb24g YnkgaXRzZWxmIHRvIG1ha2UgdGhlIGNoYW5nZWxvZyBlbWFpbCBvYnZpb3VzLikKCgoKfHxfX0Vu Z2xpc2hfX3xfX0xvamJhbl9fCgpIZWxsbyB0aGVyZSEgV2VsY29tZSB0byB0aGUgd29ybGQgb2Yg UG9rw6ltb24hIE15IG5hbWUgaXMgT0FLISBQZW9wbGUgY2FsbCBtZSB0aGUgUG9rw6ltb24gUFJP RiEgfCBjb2kgZmknaSBkbyd1IHRpIHRlcmRpIGxvIHBva21hIC5pIG1pJ2UgbGEgY2luZHUgLmkg bG8gZHJhdGEgbWkgdGUgY21lbmUgem8gcG9rY3R1CgpUaGlzIHdvcmxkIGlzIGluaGFiaXRlZCBi eSBjcmVhdHVyZXMgY2FsbGVkIFBva8OpbW9uISB8IC5pIGxvIHZpIHRlcmRpIGt1IHNlIHhhYmp1 IGxvIHBva21hCgpGb3Igc29tZSBwZW9wbGUsIFBva8OpbW9uIGFyZSBwZXRzLiBPdGhlcnMgdXNl IHRoZW0gZm9yIGZpZ2h0cy4gTXlzZWxmLi4uIEkgc3R1ZHkgUG9rw6ltb24gYXMgYSBwcm9mZXNz aW9uLiB8IHN1J28gcHJlbnUgem8ndSBsbyBwb2ttYSBjdSBkYWxwZSdvIC5pIHN1J28gZHJhdGEg cHkgcGlsbm8gbG8gbnUgZGFtYmEgLmkgbWkgLnkgLmkgbWkgdGFkbmkgYmUgcHkgY28gY3Jlamli cmkKCkZpcnN0LCB3aGF0IGlzIHlvdXIgbmFtZT8gfCAuaSBwYSBtYWkgbWEgZG8gY21lbmUKClJp Z2h0ISBTbyB5b3VyIG5hbWUgaXMgPFBsYXllcj4gfCBqZSdlIC5pIHpvIDxwbGF5ZXI+IGNtZW5l IGRvCgpUaGlzIGlzIG15IGdyYW5kc29uLiBIZSdzIGJlZW4geW91ciByaXZhbCBzaW5jZSB5b3Ug d2VyZSBhIGJhYnkuIC4uLkVybSwgd2hhdCBpcyBoaXMgbmFtZSBhZ2Fpbj8gfCAuaSB0aSBiZXN5 YmVyc2EgLmkgdGkgZG8gaml2bmEgY28nYSBsbyBudSBkbyBjaWZudSAuaSAueSAub2kgcm8nYSBt YSB0aSBjbWVuZQoKVGhhdCdzIHJpZ2h0ISBJIHJlbWVtYmVyIG5vdyEgSGlzIG5hbWUgaXMgPFJp dmFsPiEgfCBpZSBkcmFuaSAuaSBtaSBjYSBtb3JqaSAuaSB6byA8Uml2YWw+IGNtZW5lCgo8UGxh eWVyPiEgWW91ciB2ZXJ5IG93biBQb2vDqW1vbiBsZWdlbmQgaXMgYWJvdXQgdG8gdW5mb2xkISBB IHdvcmxkIG9mIGRyZWFtcyBhbmQgYWR2ZW50dXJlcyB3aXRoIFBva8OpbW9uIGF3YWl0cyEgTGV0 J3MgZ28hIHwgCWRvaSBsYSA8UGxheWVyPiBsbyBkbyBzZXZ6aSBrZSBwb2ttYSByYW5taSBwdSdv IGNmYXJpIC5pIGxvIG11bmplIGJlIGxvIHNlbHNuZSBqbyd1IGxvIHphbmNhcGxpJ3UgY3UgZGVu cGEgdHUnYSBkbyAuaSAuZSd1IHRvbHN0aQoKfHwKCgoKISEhIE5vdGlmaWNhdGlvbnMvVW5zb3J0 ZWQKCgoKfHxfX0VuZ2xpc2hfX3xfX0xvamJhbl9fCgpJdCBkb2RnZWQgdGhlIHRocm93biBiYWxs ISBUaGlzIHBva2Vtb24gY2FuJ3QgYmUgY2F1Z2h0IHwgdGEgcml2YmkgdHUnYSBsbyBib2xjaSAu aSB0b2xjdSdpIGZhIGxvIG51IGthdmJ1IHRhCgpZb3UgbWlzc2VkIHRoZSBwb2tlbW9uISAgICAg ICAgfCBkbyBmbGliYSBjbyByZW5ybyBmaSBsbyBwb2ttYQoKRGFybiEgVGhlIHBva2Vtb24gYnJv a2UgZnJlZSEgIHwgLm9pIGxvIHBva21hIGt1IHBvcnB5Z2F1CgpBd3chIEl0IGFwcGVhcmVkIHRv IGJlIGNhdWdodCEgfCAub2kgcHUgc2ltbHUgbG8ga2Egc2Uga2F2YnUKClNob290ISBJdCB3YXMg c28gY2xvc2UgdG9vISAgICB8IG1hYmxhIC5pIGt1J2kgbXV0Y2UgamlibmkKCkFsbCByaWdodCEg PD4gd2FzIGNhdWdodCEgfCAudWlzYWkgbG8gPD4gYmEnbyBzZSBrYXZidQoKPD4gd2FzIHRyYW5z ZmVycmVkIHRvIEJpbGwncyBQQyAgICAgfCBiZW5qaSBsYSA8PiBsbyBza2FtaSBwZSBsYSAuYmls LgoKPD4gd2FzIHRyYW5zZmVycmVkIHRvIHNvbWVvbmUncyBQQyAgfCBiZW5qaSBsYSA8PiBsbyBz a2FtaSBwZSB6bydlCgpOZXcgREVYIGRhdGEgd2lsbCBiZSBhZGRlZC4uLiAgfCBsbyBjbmlubyBr ZSBwb2tzdGUgZGF0bmkgY3Ugc2Ugam1pbmEKCllvdSBkb24ndCBoYXZlIGFueSBwb2tlbW9uISAg ICB8IGRvIGNsYXh1IGxvIChzYW5qaSkgcG9rbWUKCi0tLS0KCkl0IGNyZWF0ZWQgYSBzdWJzdGl0 dXRlICAgICAgICB8IGZpbnRpIGxvIGJhc3RpIAoKPD4gaGFzIGEgc3Vic3RpdHV0ZSAgICAgICAg ICAgIHwgPD4gc2UgYmFzdGkKCnRvbyB3ZWFrIHRvIG1ha2Ugc3Vic3RpdHV0ZSAgICB8IGR1a3Nl IGxvIGthIHJ1YmxlIGtlaSBsbyBudSBmaW50aSBsbyBiYXN0aQoKLS0tLQoKTm90IGV2ZW4gYSBu aWJibGUhICAgICAgICAgICAgICAgIHwgbmEgY28nZSBsbyBkbydhbmFpIGNtYWx1IHNwaXNhCgpM b29rcyBsaWtlIHRoZXJlJ3Mgbm90aGluZyBoZXJlLiAgfCBzaW1sdSBsbyBrYSBubyBkYSB6dmF0 aQoKT2ghIEl0J3MgYSBiaXRlISEgICAgICAgICAgICAgICAgIHwgdWUgZGEgYmF0Y2kKCkdyb3Vu ZCByb3NlIHVwIHNvbWV3aGVyZSEgICAgICAgICB8IGJ1J3UgZGEgbG8gbG9sZGkgY3UgCgpUaGlz IHJlcXVpcmVzIFNUUkVOR1RIIHRvIG1vdmUhICAgfCBkbyBuaXRjdSBsbyBrYSB0c2FsaSBrZWkg bG8gbnUgbXV2Z2F1CgpBbGwgeW91ciBpdGVtIG5lZWRzIGZ1bGZpbGxlZCEgICAgfCBsbyBkbyBk YWtsaSBjdSBjdWxubwoKLS0tLQoKSE0gdGVjaG5pcXVlcyBjYW4ndCBiZSBkZWxldGVkIQoKV2Vs Y29tZSB0byBvdXIgI01PTiBDRU5URVIhIFdlIGhlYWwgeW91ciAjTU9OIGJhY2sgdG8gcGVyZmVj dCBoZWFsdGghIFNoYWxsIHdlIGhlYWwgeW91ciAjTU9OPwoKT0suIFdlJ2xsIG5lZWR5b3VyICNN T04uCgpUaGFuayB5b3UhIFlvdXIgI01PTiBhcmUgZmlnaHRpbmcgZml0IQoKV2UgaG9wZSB0byBz ZWUgeW91IGFnYWluIQoKLS0tLQoKVGhpcyBhcmVhIGlzIHJlc2VydmVkIGZvciAyIGZyaWVuZHMg d2hvIGFyZSBsaW5rZWQgYnkgY2FibGUuCgpXZWxjb21lIHRvIHRoZSBDYWJsZSBDbHViISBQbGVh c2UgYXBwbHkgaGVyZS4gQmVmb3JlIG9wZW5pbmcgdGhlIGxpbmssIHdlIGhhdmUgdG8gc2F2ZSB0 aGUgZ2FtZS4gUGxlYXNlIHdhaXQuCgpUaGUgbGluayBoYXMgYmVlbiBjbG9zZWQgYmVjYXVzZSBv ZiBpbmFjdGl2aXR5LgoKUGxlYXNlIGNvbnRhY3QgeW91ciBmcmllbmQgYW5kIGNvbWUgYWdhaW4h CgpQbGVhc2UgY29tZSBhZ2FpbiEKCldlJ3JlIG1ha2luZyBwcmVwYXJhdGlvbnMuIFBsZWFzZSB3 YWl0LgoKLS0tLQoKPD4gdXNlZFNUUkVOR1RILgoKPD4gY2FuIG1vdmUgYm91bGRlcnMuCgpUaGUg Y3VycmVudCBpcyBtdWNoIHRvbyBmYXN0IQoKQ3ljbGluZyBpcyBmdW4hIEZvcmdldCBTVVJGaW5n IQoKQSBibGluZGluZyBGTEFTSCBsaWdodHMgdGhlIGFyZWEhCgpXYXJwIHRvIHRoZSBsYXN0ICNN T04gQ0VOVEVSLgoKPD4gY2FuJ3QgdXNlIFRFTEVQT1JUIG5vdy4KCjw+IGNhbid0IEZMWSBoZXJl LgoKTm90IGhlYWx0aHkgZW5vdWdoLgoKTm8hIEEgbmV3IEJBREdFIGlzIHJlcXVpcmVkLgoKWW91 IGNhbid0IHVzZSBpdGVtcyBoZXJlLgoKWW91IGNhbid0IGdldCBvZmYgaGVyZS4KCi0tLS0KCjw+ IGdvdCA8PiEKClRoZXJlJ3Mgbm8gbW9yZXJvb20gZm9yICNNT04hCgo8PiB3YXMgc2VudCB0byAj TU9OQk9YIDw+IG9uIFBDIQoKVGhlcmUncyBubyBtb3JlIHJvb20gZm9yICNNT04hCgpUaGUgI01P TiBCT1ggaXMgZnVsbCBhbmQgY2FuJ3QgYWNjZXB0IGFueSBtb3JlIQoKQ2hhbmdlIHRoZSBCT1gg YXQgYSAjTU9OIENFTlRFUiEKClRob3NlICMgQkFMTCBzYXQgeW91ciB3YWlzdCEKCllvdSBoYXZl ICNNT04hCgpJdCdzIGdyZWF0IHRoYXQgeW91IGNhbiBjYXJyeSBhbmQgdXNlICNNT04gYW55dGlt ZSwgYW55d2hlcmUhCgpUaGlzICNNT04gR1lNIGlzIGFsd2F5cyBjbG9zZWQuCgpJIHdvbmRlciB3 aG8gdGhlIExFQURFUiBpcz8KClZJUklESUFOIEdZTSdzIExFQURFUiByZXR1cm5lZCEKCllvdSB3 YW50IHRvIGtub3cgYWJvdXQgdGhlIDIga2luZHMgb2YgY2F0ZXJwaWxsYXIgI01PTj8KCk9oLCBP SyB0aGVuISBDQVRFUlBJRSBoYXMgbm8gcG9pc29uLCBidXQgV0VFRExFIGRvZXMuCgpXYXRjaCBv dXQgZm9yIGl0cyBQT0lTT04gU1RJTkchCgpPaCBHcmFuZHBhISBEb24ndCBiZSBzbyBtZWFuISBI ZSBoYXNuJ3QgaGFkIGhpcyBjb2ZmZWUgeWV0LgoKV2hlbiBJIGdvIHNob3AgaW4gUEVXVEVSIENJ VFksIEkgaGF2ZSB0byB0YWtlIHRoZSB3aW5kaW5nIHRyYWlsIGluIFZJUklESUFOIEZPUkVTVC4K CllvdSBjYW4ndCBnbyB0aHJvdWdoIGhlcmUhIFRoaXMgaXMgcHJpdmF0ZSBwcm9wZXJ0eSEKCllh d24hIEkgbXVzdCBoYXZlIGRvemVkIG9mZiBpbiB0aGUgc3VuLgoKSSBoYWQgdGhpcyBkcmVhbSBh Ym91dCBhIERST1daRUUgZWF0aW5nIG15IGRyZWFtLgoKV2hhdCdzIHRoaXM/IFdoZXJlIGRpZCB0 aGlzIFRNIGNvbWUgZnJvbT8gVGhpcyBpcyBzcG9va3khIEhlcmUsIHlvdSBjYW4gaGF2ZSB0aGlz IFRNLiByZWNlaXZlZCBUTTQyIQoKVE00MiBjb250YWlucyBEUkVBTSBFQVRFUi4uLi4uLlNub3Jl Li4uCgpZb3UgaGF2ZSB0b28gbXVjaCBzdHVmZiBhbHJlYWR5LgoKQWhoLCBJJ3ZlIGhhZCBteSBj b2ZmZWUgbm93IGFuZCBJIGZlZWwgZ3JlYXQhIFN1cmUgeW91IGNhbiBnbyB0aHJvdWdoISBBcmUg eW91IGluIGEgaHVycnk/CgpJIHNlZSB5b3UncmUgdXNpbmcgYSAjREVYLiBXaGVuIHlvdSBjYXRj aCBhICNNT04sICNERVggaXMgYXV0b21hdGljYWxseSB1cGRhdGVkLgoKV2hhdD8gRG9uJ3QgeW91 IGtub3cgaG93IHRvIGNhdGNoICNNT04/CgpJJ2xsIHNob3cgeW91IGhvdyB0byB0aGVuLgoKVGlt ZSBpcyBtb25leS4uLkdvIGFsb25nIHRoZW4uCgpGaXJzdCwgeW91IG5lZWQgdG8gd2Vha2VuIHRo ZSB0YXJnZXQgI01PTi4KClZJUklESUFOIENJVFkgVGhlIEV0ZXJuYWxseSBHcmVlbiBQYXJhZGlz ZQoKVFJBSU5FUiBUSVBTIENhdGNoICNNT04gYW5kIGV4cGFuZCB5b3VyIGNvbGxlY3Rpb24hIFRo ZSBtb3JlIHlvdSBoYXZlLCB0aGUgZWFzaWVyIGl0IGlzIHRvIGZpZ2h0IQoKVFJBSU5FUiBUSVBT IFRoZSBiYXR0bGUgbW92ZXMgb2YgI01PTiBhcmUgbGltaXRlZCBieSB0aGVpciBQT1dFUiBQT0lO VHMsIFBQLiBUbyByZXBsZW5pc2ggUFAsIHJlc3QgeW91ciB0aXJlZCAjTU9OIGF0IGEgI01PTiBD RU5URVIhCgpWSVJJRElBTiBDSVRZICNNT04gR1lNCgpUaGUgR1lNJ3MgZG9vcnMgYXJlIGxvY2tl ZC4uLgoKSXQncyBydW1vcmVkIHRoYXQgQ0xFRkFJUllzIGNhbWUgZnJvbSB0aGUgbW9vbiEKClRo ZXkgYXBwZWFyZWQgYWZ0ZXIgTU9PTiBTVE9ORSBmZWxsIG9uIE1ULk1PT04uCgpUaGVyZSBhcmVu J3QgbWFueSBzZXJpb3VzICNNT050cmFpbmVycyBoZXJlIVRoZXkncmUgYWxsIGxpa2VCVUcgQ0FU Q0hFUnMsYnV0IFBFV1RFUiBHWU0nc0JST0NLIGlzIHRvdGFsbHlpbnRvIGl0IURpZCB5b3UgY2hl Y2sgb3V0dGhlIE1VU0VVTT9XZXJlbid0IHRob3NlZm9zc2lscyBmcm9tIE1ULk1PT04gYW1hemlu Zz9SZWFsbHk/WW91IGFic29sdXRlbHloYXZlIHRvIGdvIUl0J3MgcmlnaHQgaGVyZSFZb3UgaGF2 ZSB0byBwYXl0byBnZXQgaW4sIGJ1dGl0J3Mgd29ydGggaXQhU2VlIHlvdSBhcm91bmQhUHNzc3N0 IURvIHlvdSBrbm93IHdoYXRJJ20gZG9pbmc/VGhhdCdzIHJpZ2h0IUl0J3MgaGFyZCB3b3JrIUkn bSBzcHJheWluZyBSRVBFTHRvIGtlZXAgI01PTm91dCBvZiBteSBnYXJkZW4hWW91J3JlIGEgdHJh aW5lcnJpZ2h0PyBCUk9DSydzbG9va2luZyBmb3IgbmV3Y2hhbGxlbmdlcnMhRm9sbG93IG1lIUlm IHlvdSBoYXZlIHRoZXJpZ2h0IHN0dWZmLCBnb3Rha2Ugb24gQlJPQ0shVFJBSU5FUiBUSVBTQW55 ICNNT04gdGhhdHRha2VzIHBhcnQgaW5iYXR0bGUsIGhvd2V2ZXJzaG9ydCwgZWFybnMgRVhQIU5P VElDRSFUaGlldmVzIGhhdmUgYmVlbnN0ZWFsaW5nICNNT05mb3NzaWxzIGF0IE1ULk1PT04hIFBs ZWFzZSBjYWxsUEVXVEVSIFBPTElDRXdpdGggYW55IGluZm8hUEVXVEVSIE1VU0VVTU9GIFNDSUVO Q0VQRVdURVIgQ0lUWSNNT04gR1lNTEVBREVSOiBCUk9DS1RoZSBSb2NrIFNvbGlkI01PTiBUcmFp bmVyIVBFV1RFUiBDSVRZQSBTdG9uZSBHcmF5Q2l0eTogWW8hIVlvdSdyZSBzdGlsbHN0cnVnZ2xp bmcgYWxvbmdiYWNrIGhlcmU/SSdtIGRvaW5nIGdyZWF0IUkgY2F1Z2h0IGEgYnVuY2hvZiBzdHJv bmcgYW5kc21hcnQgI01PTiFIZXJlLCBsZXQgbWUgc2Vld2hhdCB5b3UgY2F1Z2h0LCFIZXkhVGFr ZSBpdCBlYXN5IVlvdSB3b24gYWxyZWFkeSFIZWghWW91J3JlIG5vIG1hdGNoZm9yIG15IGdlbml1 cyE6IEhleSxndWVzcyB3aGF0P0kgd2VudCB0byBCSUxMJ3NhbmQgZ290IGhpbSB0b3Nob3cgbWUg aGlzIHJhcmUjTU9OIVRoYXQgYWRkZWQgYSBsb3RvZiBwYWdlcyB0byBteSNERVghQWZ0ZXIgYWxs LCBCSUxMJ3N3b3JsZCBmYW1vdXMgYXMgYSNNQU5JQUMhSGUgaW52ZW50ZWQgdGhlI01PTiBTdG9y YWdlU3lzdGVtIG9uIFBDIVNpbmNlIHlvdSdyZSB1c2luZ2hpcyBzeXN0ZW0sIGdvdGhhbmsgaGlt IVdlbGwsIEkgYmV0dGVyZ2V0IHJvbGxpbmchU21lbGwgeWEgbGF0ZXIhSGV5ISBTdGF5IG91dCFJ dCdzIG5vdCB5b3VyeWFyZCEgSHVoPyBNZT9JJ20gYW4gaW5ub2NlbnQgYnlzdGFuZGVyISBEb24n dCB5b3UgYmVsaWV2ZSBtZT8gcmVjb3ZlcmVkVE0yOCEKCkkgYmV0dGVyIGdldG1vdmluZyEgQnll IQoKTWFrZSByb29tIGZvcnRoaXMhSSBjYW4ndCBydW4gdW50aWxJIGdpdmUgaXQgdG8geW91IVN0 b3AhSSBnaXZlIHVwISBJJ2xsbGVhdmUgcXVpZXRseSFPSyEgSSdsbCByZXR1cm50aGUgVE0gSSBz dG9sZSFZb3UncmUgYSB0cmFpbmVydG9vPyBDb2xsZWN0aW5nLGZpZ2h0aW5nLCBpdCdzIGF0b3Vn aCBsaWZlLlRoYXQgYnVzaCBpbmZyb250IG9mIHRoZSBzaG9waXMgaW4gdGhlIHdheS5UaGVyZSBt aWdodCBiZSBhd2F5IGFyb3VuZC5Zb3UncmUgbWFraW5nIGFuZW5jeWNsb3BlZGlhIG9uI01PTj8g VGhhdHNvdW5kcyBhbXVzaW5nLlRoZSBwZW9wbGUgaGVyZXdlcmUgcm9iYmVkLkl0J3Mgb2J2aW91 cyB0aGF0VEVBTSBST0NLRVQgaXNiZWhpbmQgdGhpcyBtb3N0aGVpbm91cyBjcmltZSFFdmVuIG91 ciBQT0xJQ0Vmb3JjZSBoYXMgdHJvdWJsZXdpdGggdGhlIFJPQ0tFVHMhT0shIFNMT1dCUk8hVXNl IFNPTklDQk9PTSFDb21lIG9uLCBTTE9XQlJPcGF5IGF0dGVudGlvbiFTTE9XQlJPIHB1bmNoIU5v ISBZb3UgYmxldyBpdGFnYWluIVNMT1dCUk8sIFdJVEhEUkFXIU5vISBUaGF0J3Mgd3JvbmchSXQn cyBzbyBoYXJkIHRvY29udHJvbCAjTU9OIVlvdXIgI01PTidzb2JlZGllbmNlIGRlcGVuZHNvbiB5 b3VyIGFiaWxpdGllc2FzIGEgdHJhaW5lciFTTE9XQlJPIHRvb2sgYXNub296ZS4uLlNMT1dCUk8g aXNsb2FmaW5nIGFyb3VuZC4uLlNMT1dCUk8gdHVybmVkYXdheS4uLlNMT1dCUk9pZ25vcmVkIG9y ZGVycy4uLkkgd2FudCBhIGJyaWdodHJlZCBCSUNZQ0xFIUknbGwga2VlcCBpdCBhdGhvbWUsIHNv IGl0IHdvbid0Z2V0IGRpcnR5IVRoaXMgaXMgQ0VSVUxFQU5DQVZFISBIb3JyaWJseXN0cm9uZyAj TU9ObGl2ZSBpbiB0aGVyZSFUaGUgI01PTiBMRUFHVUVjaGFtcGlvbiBpcyB0aGVvbmx5IHBlcnNv biB3aG9pcyBhbGxvd2VkIGluIUNFUlVMRUFOIENJVFlBIE15c3RlcmlvdXMsQmx1ZSBBdXJhU3Vy cm91bmRzIEl0VFJBSU5FUiBUSVBTUHJlc3NpbmcgQiBCdXR0b25kdXJpbmcgZXZvbHV0aW9uY2Fu Y2VscyB0aGUgd2hvbGVwcm9jZXNzLkdyYXNzIGFuZCBjYXZlc2hhbmRsZWQgZWFzaWx5IUJJS0Ug U0hPUENFUlVMRUFOIENJVFkjTU9OIEdZTUxFQURFUjogTUlTVFlUaGUgVG9tYm95aXNoTWVybWFp ZCFEbyB5b3UgYmVsaWV2ZSBpbkdIT1NUcz9SZWFsbHk/IFNvIHRoZXJlYXJlIGJlbGlldmVycy4u LkhhaGFoYSwgSSBndWVzc25vdC5UaGF0IHdoaXRlIGhhbmRvbiB5b3VyIHNob3VsZGVyLGl0J3Mg bm90IHJlYWwuVGhpcyB0b3duIGlzIGtub3duYXMgdGhlIGdyYXZlIHNpdGVvZiAjTU9OLk1lbW9y aWFsIHNlcnZpY2VzYXJlIGhlbGQgaW4jTU9OIFRPV0VSLkdIT1NUcyBhcHBlYXJlZGluICNNT04g VE9XRVIuSSB0aGluayB0aGV5J3JldGhlIHNwaXJpdHMgb2YjTU9OIHRoYXQgdGhlUk9DS0VUcyBr aWxsZWQuTEFWRU5ERVIgVE9XTlRoZSBOb2JsZSBQdXJwbGVUb3duTmV3IFNJTFBIIFNDT1BFIU1h a2UgdGhlIEludmlzaWJsZVBsYWluIHRvIFNlZSFTSUxQSCBDTy5MQVZFTkRFUiBWT0xVTlRFRVIj TU9OIEhPVVNFTWF5IHRoZSBTb3VscyBvZiNNT04gUmVzdCBFYXN5I01PTiBUT1dFUldlJ3JlIGNh cmVmdWxhYm91dCBwb2xsdXRpb24hV2UndmUgaGVhcmQgR1JJTUVSbXVsdGlwbGllcyBpbnRveGlj IHNsdWRnZSFEaWQgeW91IHNlZSBTLlMuQU5ORSBtb29yZWQgaW50aGUgaGFyYm9yP1NvLCBTLlMu QU5ORSBoYXNkZXBhcnRlZCFTaGUnbGwgYmUgYmFjayBpbmFib3V0IGEgeWVhci5XZWxjb21lIHRv IFMuUy5BTk5FIVdlbGNvbWUgdG8gUy5TLkFOTkUhRXhjdXNlIG1lLCBkbyB5b3VoYXZlIGEgdGlj a2V0PyBmbGFzaGVkdGhlIFMuUy5USUNLRVQhR3JlYXQhIFdlbGNvbWUgdG9TLlMuQU5ORSEgZG9l c24ndGhhdmUgdGhlIG5lZWRlZFMuUy5USUNLRVQuU29ycnkhWW91IG5lZWQgYSB0aWNrZXR0byBn ZXQgYWJvYXJkLlRoZSBzaGlwIHNldCBzYWlsLkknbSBwdXR0aW5nIHVwIGFidWlsZGluZyBvbiB0 aGlzcGxvdCBvZiBsYW5kLk15ICNNT04gaXN0YW1waW5nIHRoZSBsYW5kLk1BQ0hPUDogR3VvaCEA R29nb2dvaCEKCkEgTUFDSE9QIGlzc3RvbXBpbmcgdGhlIGxhbmRmbGF0LlMuUy5BTk5FIGlzIGFm YW1vdXMgbHV4dXJ5Y3J1aXNlIHNoaXAuV2UgdmlzaXQgVkVSTUlMSU9Ob25jZSBhIHllYXIuVkVS TUlMSU9OIENJVFlUaGUgUG9ydCBvZkV4cXVpc2l0ZSBTdW5zZXRzTk9USUNFIVJPVVRFIDEyIG1h eSBiZWJsb2NrZWQgb2ZmIGJ5IGFzbGVlcGluZyAjTU9OLkRldG91ciB0aHJvdWdoUk9DSyBUVU5O RUwgdG9MQVZFTkRFUiBUT1dOLlZFUk1JTElPTiBQT0xJQ0UjTU9OIEZBTiBDTFVCQWxsICNNT04g ZmFuc3dlbGNvbWUhVkVSTUlMSU9OIENJVFkjTU9OIEdZTUxFQURFUjogTFQuU1VSR0VUaGUgTGln aHRuaW5nIEFtZXJpY2FuIVZFUk1JTElPTiBIQVJCT1JJIGdvdCBteSBLT0ZGSU5HaW4gQ0lOTkFC QVIhSXQncyBuaWNlLCBidXQgaXRicmVhdGhlcyBwb2lzb253aGVuIGl0J3MgYW5ncnkhSGVoZWgh IFRoaXMgR1lNaXMgZ3JlYXQhIEl0J3NmdWxsIG9mIHdvbWVuIVRoZSBHQU1FIENPUk5FUmlzIGJh ZCBmb3Igb3VyY2l0eSdzIGltYWdlIU1vYW4hIEkgYmxldyBpdGFsbCBhdCB0aGUgc2xvdHMhSSBr bmV3IEkgc2hvdWxkaGF2ZSBjYXNoZWQgaW4gbXljb2lucyBmb3IgcHJpemVzIUhlbGxvLCB0aGVy ZSFJJ3ZlIHNlZW4geW91LGJ1dCBJIG5ldmVyIGhhZCBhY2hhbmNlIHRvIHRhbGshSGVyZSdzIGEg Z2lmdCBmb3Jkcm9wcGluZyBieSEKClRNNDEgdGVhY2hlc1NPRlRCT0lMRUQhT25seSBvbmUgI01P TmNhbiB1c2UgaXQhVGhhdCAjTU9OIGlzQ0hBTlNFWSFPaCwgeW91ciBwYWNrIGlzZnVsbCBvZiBp dGVtcyFUaGlzIGlzIG15IHRydXN0ZWRwYWwsIFBPTElXUkFUSCFJdCBldm9sdmVkIGZyb21QT0xJ V0hJUkwgd2hlbiBJdXNlZCBXQVRFUiBTVE9ORSFQT0xJV1JBVEg6IFJpYmlyaWJpdCEKCldoYXQg YXJlIHlvdXN0YXJpbmcgYXQ/S2VlcCBvdXQgb2YgVEVBTVJPQ0tFVCdzIHdheSFUUkFJTkVSIFRJ UFNYIEFDQ1VSQUNZIGJvb3N0c3RoZSBhY2N1cmFjeSBvZnRlY2huaXF1ZXMhRElSRSBISVQgamFj a3MgdXB0aGUgbGlrZWxpaG9vZCBvZmNyaXRpY2FsIGhpdHMhR2V0IHlvdXIgaXRlbXMgYXRDRUxB RE9OIERFUFQuU1RPUkUhQ0VMQURPTiBDSVRZVGhlIENpdHkgb2ZSYWluYm93IERyZWFtc0NFTEFE T04gQ0lUWSNNT04gR1lNTEVBREVSOiBFUklLQVRoZSBOYXR1cmUgTG92aW5nUHJpbmNlc3MhQ0VM QURPTiBNQU5TSU9ORmluZCB3aGF0IHlvdW5lZWQgYXQgQ0VMQURPTkRFUFQuIFNUT1JFIVRSQUlO RVIgVElQU0dVQVJEIFNQRUMucHJvdGVjdHMgI01PTmFnYWluc3QgU1BFQ0lBTGF0dGFja3Mgc3Vj aCBhc2ZpcmUgYW5kIHdhdGVyIUdldCB5b3VyIGl0ZW1zIGF0Q0VMQURPTiBERVBULlNUT1JFIUNv aW5zIGV4Y2hhbmdlZGZvciBwcml6ZXMhUFJJWkUgRVhDSEFOR0VST0NLRVQgR0FNRSBDT1JORVJU aGUgcGxheWdyb3VuZGZvciBncm93bi11cHMhRGlkIHlvdSB0cnkgdGhlU0FGQVJJIEdBTUU/IFNv bWUjTU9OIGNhbiBvbmx5YmUgY2F1Z2h0IHRoZXJlLlNBRkFSSSBaT05FIGhhcyBhem9vIGluIGZy b250IG9mdGhlIGVudHJhbmNlLk91dCBiYWNrIGlzIHRoZVNBRkFSSSBHQU1FIGZvcmNhdGNoaW5n ICNNT04uRVJJSzogV2hlcmUnc1NBUkE/IEkgc2FpZCBJJ2RtZWV0IGhlciBoZXJlLlRoYXQgaXRl bSBiYWxsIGludGhlcmUgaXMgcmVhbGx5IGEjTU9OLiFGVUNIU0lBIENJVFlCZWhvbGQhIEl0J3NQ YXNzaW9uIFBpbmshU0FGQVJJIEdBTUUjTU9OLVUtQ0FUQ0ghU0FGQVJJIFpPTkVXQVJERU4ncyBI T01FI01PTiBQQVJBRElTRVNBRkFSSSBaT05FRlVDSFNJQSBDSVRZI01PTiBHWU1MRUFERVI6IEtP R0FUaGUgUG9pc29ub3VzTmluamEgTWFzdGVyTmFtZTogQ0hBTlNFWUNhdGNoaW5nIG9uZSBpc2Fs bCB1cCB0byBjaGFuY2UuTmFtZTogVk9MVE9SQlRoZSB2ZXJ5IGltYWdlIG9mYSAjIEJBTEwuTmFt ZTogS0FOR0FTS0hBTkEgbWF0ZXJuYWwgI01PTnRoYXQgcmFpc2VzIGl0c3lvdW5nIGluIGEgcG91 Y2hvbiBpdHMgYmVsbHkuTmFtZTogU0xPV1BPS0VGcmllbmRseSBhbmQgdmVyeXNsb3cgbW92aW5n Lk5hbWU6IExBUFJBU0EuSy5BLiB0aGUga2luZ29mIHRoZSBzZWFzLk5hbWU6IE9NQU5ZVEVBICNN T04gdGhhdHdhcyByZXN1cnJlY3RlZGZyb20gYSBmb3NzaWwuTmFtZTogS0FCVVRPQSAjTU9OIHRo YXR3YXMgcmVzdXJyZWN0ZWRmcm9tIGEgZm9zc2lsLi4uLlRoZSBkb29yIGlzbG9ja2VkLi4uQ0lO TkFCQVIgR1lNJ3NCTEFJTkUgaXMgYW4gb2RkbWFuIHdobyBoYXMgbGl2ZWRoZXJlIGZvciBkZWNh ZGVzLlNjaWVudGlzdHMgY29uZHVjdGV4cGVyaW1lbnRzIGludGhlIGJ1cm5lZCBvdXRidWlsZGlu Zy5DSU5OQUJBUiBJU0xBTkRUaGUgRmllcnkgVG93biBvZkJ1cm5pbmcgRGVzaXJlI01PTiBMQUJD SU5OQUJBUiBJU0xBTkQjTU9OIEdZTUxFQURFUjogQkxBSU5FVGhlIEhvdC1IZWFkZWRRdWl6IE1h c3RlciFXaGF0IGRvIHlvdSB3YW50P0dldCBsb3N0IUJPU1Mgc2FpZCBoZSdsbHRha2UgdGhpcyB0 b3duIUdldCBvdXQgb2YgdGhld2F5IVNBRkZST04gYmVsb25nc3RvIFRFQU0gUk9DS0VUIUJlaW5n IGV2aWwgbWFrZXNtZSBmZWVsIHNvIGFsaXZlIU93ISBXYXRjaCB3aGVyZXlvdSdyZSB3YWxraW5n IVdpdGggU0lMUEggdW5kZXJjb250cm9sLCB3ZSBjYW5leHBsb2l0ICNNT05hcm91bmQgdGhlIHdv cmxkIVlvdSBiZWF0IFRFQU1ST0NLRVQgYWxsIGFsb25lP1RoYXQncyBhbWF6aW5nIVllYWghIFRF QU0gUk9DS0VUaXMgZ29uZSFJdCdzIHNhZmUgdG8gZ29vdXQgYWdhaW4hUGVvcGxlIHNob3VsZCBi ZWZsb2NraW5nIGJhY2sgdG9TQUZGUk9OIG5vdy5JIGZsZXcgaGVyZSBvbiBteVBJREdFT1Qgd2hl biBJcmVhZCBhYm91dCBTSUxQSC5JdCdzIGFscmVhZHkgb3Zlcj9JIG1pc3NlZCB0aGVtZWRpYSBh Y3Rpb24uUElER0VPVDogQmkgYmliaWkhCgotLS0tCgpJIHNhdyBST0NLRVRCT1NTIGVzY2FwaW5n IFNJTFBIJ3MgYnVpbGRpbmcuCgpJJ20gYSBzZWN1cml0eSBndWFyZC4gU3VzcGljaW91cyBraWRz IEkgZG9uJ3QgYWxsb3cgaW4hCgouLi5Tbm9yZS4uLkhhaCEgSGUncyB0YWtpbmcgYSBzbm9vemUh CgpTQUZGUk9OIENJVFkgU2hpbmluZywgR29sZGVuIExhbmQgb2YgQ29tbWVyY2UKCkZJR0hUSU5H IERPSk8KClNBRkZST04gQ0lUWQoKI01PTiBHWU0gTEVBREVSOiBTQUJSSU5BIFRoZSBNYXN0ZXIg b2YgUHN5Y2hpYyAjTU9OIQoKVFJBSU5FUiBUSVBTIEZVTEwgSEVBTCBjdXJlcyBhbGwgYWlsbWVu dHMgbGlrZSBzbGVlcCBhbmQgYnVybnMuIEl0IGNvc3RzIGEgYml0IG1vcmUsIGJ1dCBpdCdzIG1v cmUgY29udmVuaWVudC4KClRSQUlORVIgVElQUyBOZXcgR1JFQVQgQkFMTCBvZmZlcnMgaW1wcm92 ZWQgY2FwdHVyZSByYXRlcy4gVHJ5IGl0IG9uIHRob3NlIGhhcmQtdG8tY2F0Y2ggI01PTi4KClNJ TFBIIENPLiBPRkZJQ0UgQlVJTERJTkcKCk1SLlBTWUNISUMncyBIT1VTRSAKClNJTFBIJ3MgbGF0 ZXN0IHByb2R1Y3QhIFJlbGVhc2UgdG8gYmUgZGV0ZXJtaW5lZC4uLgoKLS0tLQoKSXQgZG9kZ2Vk IHRoZSB0aHJvd24gQkFMTCEKClRoaXMgI01PTiBjYW4ndCBiZSBjYXVnaHQhCgpZb3UgbWlzc2Vk IHRoZSAjTU9OIQoKRGFybiEgVGhlICNNT04gYnJva2UgZnJlZSEKCkF3dyEgSXQgYXBwZWFyZWQg dG8gYmUgY2F1Z2h0IQoKU2hvb3QhIEl0IHdhcyBzbyBjbG9zZSB0b28hCgpBbGwgcmlnaHQhIDw+ IHdhcyBjYXVnaHQhCgo8PiB3YXMgdHJhbnNmZXJyZWQgdG8gQklMTCdzIFBDIQoKPD4gd2FzIHRy YW5zZmVycmVkIHRvIHNvbWVvbmUncyBQQyEKCk5ldyAjREVYIGRhdGEgd2lsbCBiZSBhZGRlZCBm b3IgPD4hCgotLS0tCgpUaGVyZSdzIG5vIHBsYWNldG8gZ2V0IG9mZiEKCjw+J3MgPD4gcm9zZS4K Ckl0IHdvbid0IGhhdmUgYW55IGVmZmVjdC4KCjw+IHRocmV3IHNvbWUgQkFJVC4KCjw+IHRocmV3 IGEgUk9DSy4KClBsYXllZCB0aGUgI0ZMVVRFLgoKTm93LCB0aGF0J3MgYSBjYXRjaHkgdHVuZSEK CkFsbCBzbGVlcGluZyAjTU9OIHdva2UgdXAuCgo8PiBwbGF5ZWQgdGhlIyBGTFVURS4KCi0tLS0K ClllcyEgSVRFTUZJTkRFUiBpbmRpY2F0ZXMgdGhlcmUncyBhbiBpdGVtIG5lYXJieS4KCk5vcGUh IElURU1GSU5ERVIgaXNuJ3QgcmVzcG9uZGluZy4KClJhaXNlIFBQIG9mIHdoaWNoIHRlY2huaXF1 ZT8KClJlc3RvcmUgUFAgb2Ygd2hpY2ggdGVjaG5pcXVlPwoKPD4ncyBQUCBpcyBtYXhlZCBvdXQu Cgo8PidzIFBQIGluY3JlYXNlZC4KClBQIHdhcyByZXN0b3JlZC4KCkJvb3RlZCB1cCBhIFRNIQoK Qm9vdGVkIHVwIGFuIEhNIQoKSXQgY29udGFpbmVkIDw+IQoKVGVhY2ggPD4gdG8gYSAjTU9OPwoK PD4gaXMgbm90IGNvbXBhdGlibGUgd2l0aCA8Pi4KCkl0IGNhbid0IGxlYXJuIDw+LgoKT0FLOiA8 PiAhIFRoaXMgaXNuJ3QgdGhlIHRpbWUgdG8gdXNlIHRoYXQhCgpUaGlzIGlzbid0IHlvdXJzIHRv IHVzZSEKCkl0IHdvbid0IGhhdmUgYW55IGVmZmVjdC4KClRoZSB0cmFpbmVyIGJsb2NrZWQgdGhl IEJBTEwhCgpEb24ndCBiZSBhIHRoaWVmIQoKTm8gY3ljbGluZyBhbGxvd2VkIGhlcmUuCgpObyBT VVJGaW5nIG9uIDw+IGhlcmUhCgpUaGUgI01PTiBCT1ggaXMgZnVsbCEKCkNhbid0IHVzZSB0aGF0 IGl0ZW0hCgotLS0tCgpJJ20gbG9va2luZyBmb3IgPD4hCgpXYW5uYSB0cmFkZSBvbmUgZm9yIDw+ PwoKQXd3dyEgT2ggd2VsbC4uLgoKV2hhdD8gVGhhdCdzIG5vdCA8PiEKCklmIHlvdSBnZXQgb25l LCBjb21lIGJhY2sgaGVyZSEKCkhleSB0aGFua3MhCgpJc24ndCBteSBvbGQgPD4gZ3JlYXQ/CgpI ZWxsbyB0aGVyZSEgRG8geW91IHdhbnQgdG8gdHJhZGUgeW91ciA8PiBmb3IgPD4/CgpXZWxsLCBp ZiB5b3UgZG9uJ3Qgd2FudCB0by4uLgoKSG1tbT8gVGhpcyBpc24ndCA8Pi4KClRoaW5rIG9mIG1l IHdoZW4geW91IGdldCBvbmUuCgpUaGFua3MhIFRoZSA8PiB5b3UgdHJhZGVkIHRvIG1lIHdlbnQg YW5kIGV2b2x2ZWQhCgpIaSEgRG8geW91IGhhdmUgPD4/CgpXYW50IHRvIHRyYWRlIGl0IGZvciA8 Pj8KClRoYXQncyB0b28gYmFkLi4uLgoKVGhpcyBpcyBubyA8Pi4KCklmIHlvdSBnZXQgb25lLCB0 cmFkZSBpdCB3aXRoIG1lIQoKVGhhbmtzIHBhbCEKCkhvdyBpcyBteSBvbGQgPD4gPwoKTXkgPD4g aXMgZG9pbmcgZ3JlYXQhCgpUaGVyZSBpc24ndCBhbnl0aGluZyB0byBDVVQhCgpoYWNrZWQgYXdh eSB3aXRoIENVVCEKCnx8CgoKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fXwpXaWtpbmV1cm90aWMgbWFpbGluZyBsaXN0Cldpa2luZXVyb3RpY0Bsb2piYW4u b3JnCmh0dHA6Ly9tYWlsLmxvamJhbi5vcmcvbWFpbG1hbi9saXN0aW5mby93aWtpbmV1cm90aWMK