From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp2.osuosl.org (smtp2.osuosl.org [140.211.166.133]) by lists.linuxfoundation.org (Postfix) with ESMTP id 57E2CC000B for ; Sat, 5 Feb 2022 13:22:14 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp2.osuosl.org (Postfix) with ESMTP id 351FE40549 for ; Sat, 5 Feb 2022 13:22:14 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org X-Spam-Flag: NO X-Spam-Score: -2.1 X-Spam-Level: X-Spam-Status: No, score=-2.1 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no Authentication-Results: smtp2.osuosl.org (amavisd-new); dkim=pass (2048-bit key) header.d=protonmail.com Received: from smtp2.osuosl.org ([127.0.0.1]) by localhost (smtp2.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id yp72xYyEczit for ; Sat, 5 Feb 2022 13:22:09 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.8.0 Received: from mail-4316.protonmail.ch (mail-4316.protonmail.ch [185.70.43.16]) by smtp2.osuosl.org (Postfix) with ESMTPS id 397AF400C9 for ; Sat, 5 Feb 2022 13:22:09 +0000 (UTC) Date: Sat, 05 Feb 2022 13:21:57 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=protonmail.com; s=protonmail2; t=1644067318; bh=a3EEYOqxQ7sXFKKru5zQ1yVHu1bGsdsD7wjIROfaaMA=; h=Date:To:From:Cc:Reply-To:Subject:Message-ID:In-Reply-To: References:From:To:Cc; b=bez+r7gCmmvh3Y39UDPqmFGm0JrKOnW3q5jEnTCvVXOz1UmOO1VicNqJ4ZBCJR/Mm xSxilrUUTfF4zXuWQRGWs7qod3E2dfxU/i8S2iWP5+65lC4KbX6HAarxHjMXz9TOaS nUkZ4PhdtVkQIvgb7jBzQBKo76b1CFPmWjIj990jAS/oGhHrUx39lunO0WhrB43aIM jLZ4X72A0ZyvBKNHF+sWm/P9Ots2cZD0qX5BxCcZZgnzICupt0m1mHBKcSmXIwizcK rW1YRw2ioA6fCrvD3I9icb5Vr75pp85QM4DnBqy5erIroPKrQCgpl/sEVGWkr4RYwn VoONK6Ld/PusA== To: Bastien TEINTURIER , Bitcoin Protocol Discussion From: Michael Folkson Reply-To: Michael Folkson Message-ID: In-Reply-To: References: MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="b1_3KcaiQW7MNc93pI2ouIhpNK1om9NYuhEw3pXGqeFs" X-Mailman-Approved-At: Sat, 05 Feb 2022 13:45:53 +0000 Subject: Re: [bitcoin-dev] Improving RBF Policy X-BeenThere: bitcoin-dev@lists.linuxfoundation.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: Bitcoin Protocol Discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 05 Feb 2022 13:22:14 -0000 This is a multi-part message in MIME format. --b1_3KcaiQW7MNc93pI2ouIhpNK1om9NYuhEw3pXGqeFs Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: base64 VGhhbmtzIGZvciB0aGlzIEJhc3RpZW4gKGFuZCBHbG9yaWEgZm9yIGluaXRpYWxseSBwb3N0aW5n IGFib3V0IHRoaXMpLgoKSSBzeW1wYXRoZXRpY2FsbHkgc2tpbW1lZCB0aGUgZWNsYWlyIFBSICho dHRwczovL2dpdGh1Yi5jb20vQUNJTlEvZWNsYWlyL3B1bGwvMjExMykgZGVhbGluZyB3aXRoIHJl cGxhY2VhYmxlIHRyYW5zYWN0aW9ucyBmZWUgYnVtcGluZy4KClRoZXJlIHdpbGwgY29udGludWUg dG8gYmUgYSAoaG9wZWZ1bGx5KSBmcmllbmRseSB0dWcgb2Ygd2FyIG9uIHRoaXMgcHJvYmFibHkg Zm9yIHRoZSByZXN0IG9mIEJpdGNvaW4ncyBleGlzdGVuY2UuIEkgYW0gc3VyZSBwZW9wbGUgbGlr ZSBMdWtlLCBQcmF5YW5rIGV0YyB3aWxsIChyaWdodGZ1bGx5KSBjb250aW51ZSB0byByYWlzZSB0 aGF0IExpZ2h0bmluZyBhbmQgb3RoZXIgc2Vjb25kIGxheWVyIHByb3RvY29scyBzaG91bGRuJ3Qg ZGVtYW5kIHRoYXQgcG9saWN5IHJ1bGVzIGJlIGNoYW5nZWQgaWYgdGhlcmUgaXMgYSByZWFzb24g KGUuZy4gRG9TIHZlY3RvcikgZm9yIHRob3NlIHJ1bGVzIG9uIHRoZSBiYXNlIG5ldHdvcmsuIEJ1 dCBpZiB0aGVyZSBhcmUgcnVsZXMgdGhhdCBoYXZlIG5vIHVwc2lkZSwgaW50cm9kdWNlIHVubmVj ZXNzYXJ5IGNvbXBsZXhpdHkgZm9yIG5vIHJlYXNvbiBhbmQgbWFrZSBMaWdodG5pbmcgaW1wbGVt ZW50ZXJzIGxpa2UgQmFzdGllbidzIGxpZmUgbWlzZXJhYmxlIGF0dGVtcHRpbmcgdG8gZGVhbCB3 aXRoIHRoZW0gSSByZWFsbHkgaG9wZSB3ZSBjYW4gbWFrZSBwcm9ncmVzcyBvbiByZW1vdmluZyBv ciBzaW1wbGlmeWluZyB0aGVtLgoKVGhpcyBpcyB3aHkgSSB0aGluayBpdCBpcyBpbXBvcnRhbnQg dG8gdW5kZXJzdGFuZCB0aGUgcmF0aW9uYWxlcyBmb3IgaW50cm9kdWNpbmcgdGhlIHJ1bGVzIGlu IHRoZSBmaXJzdCBwbGFjZSAoYW5kIHdoeSBpdCBpcyBzYWZlIHRvIHJlbW92ZSB0aGVtIGlmIGlu ZGVlZCBpdCBpcykgYW5kIGJlaW5nIGFzIHJpZ29yb3VzIGFzIHBvc3NpYmxlIG9uIHRoZSByYXRp b25hbGVzIGZvciBpbnRyb2R1Y2luZyBhZGRpdGlvbmFsIHJ1bGVzLiBJdCBzb3VuZHMgbGlrZSBm cm9tIEdsb3JpYSdzIGluaXRpYWwgcG9zdCB3ZSBhcmUgc3RpbGwgYXQgYSBicmFpbnN0b3JtaW5n IHBoYXNlICh3aGljaCBpcyBmaW5lKSBidXQga25vd2luZyB3aGF0IHdlIGtub3cgdG9kYXkgSSBy ZWFsbHkgaG9wZSB3ZSBjYW4gbGVhcm4gZnJvbSB0aGUgbWlzdGFrZXMgb2YgdGhlIG9yaWdpbmFs IEJJUCAxMjUsIG5hbWVseSB0aGUgQ29yZSBpbXBsZW1lbnRhdGlvbiBub3QgbWF0Y2hpbmcgdGhl IEJJUCBhbmQgdGhlIHNwYXJzZSByYXRpb25hbGVzIGZvciB0aGUgcnVsZXMuIEFzIEJhc3RpZW4g c2F5cyB0aGlzIGlzIG5vdCBjcml0aWNpemluZyB0aGUgb3JpZ2luYWwgQklQIDEyNSBhdXRob3Jz LCA3IHllYXJzIGlzIGEgbG9uZyB0aW1lIGVzcGVjaWFsbHkgaW4gQml0Y29pbiB3b3JsZCBhbmQg dGhleSBwcm9iYWJseSB3ZXJlbid0IHRoaW5raW5nIGFib3V0IEJhc3RpZW4gc2l0dGluZyBkb3du IHRvIHdyaXRlIGFuIGVjbGFpciBQUiBpbiBsYXRlIDIwMjEgKGFuZCByZXZpZXdlcnMgb2YgdGhh dCBQUikgd2hlbiB0aGV5IHdyb3RlIHRoZSBCSVAgaW4gMjAxNS4KCi0tCk1pY2hhZWwgRm9sa3Nv bgpFbWFpbDogbWljaGFlbGZvbGtzb24gYXQgW3Byb3Rvbm1haWwuY29tXShodHRwOi8vcHJvdG9u bWFpbC5jb20vKQpLZXliYXNlOiBtaWNoYWVsZm9sa3NvbgpQR1A6IDQzRUQgQzk5OSA5Rjg1IDFE NDAgRUFGNCA5ODM1IDkyRDYgMDE1OSAyMTRDIEZFRTMKCi0tLS0tLS0gT3JpZ2luYWwgTWVzc2Fn ZSAtLS0tLS0tCk9uIE1vbmRheSwgSmFudWFyeSAzMXN0LCAyMDIyIGF0IDM6NTcgUE0sIEJhc3Rp ZW4gVEVJTlRVUklFUiB2aWEgYml0Y29pbi1kZXYgPGJpdGNvaW4tZGV2QGxpc3RzLmxpbnV4Zm91 bmRhdGlvbi5vcmc+IHdyb3RlOgoKPiBIaSBHbG9yaWEsCj4KPiBNYW55IHRoYW5rcyBmb3IgcmFp c2luZyBhd2FyZW5lc3Mgb24gdGhlc2UgaXNzdWVzIGFuZCBjb25zdGFudGx5IHB1c2hpbmcKPiB0 b3dhcmRzIGZpbmRpbmcgYSBiZXR0ZXIgbW9kZWwuIFRoaXMgd29yayB3aWxsIGhpZ2hseSBpbXBy b3ZlIHRoZQo+IHNlY3VyaXR5IG9mIGFueSBtdWx0aS1wYXJ0eSBjb250cmFjdCB0cnlpbmcgdG8g YnVpbGQgb24gdG9wIG9mIGJpdGNvaW4KPiAoYmVjYXVzZSBtb3N0IG11bHRpLXBhcnR5IGNvbnRy YWN0cyB3aWxsIG5lZWQgdG8gaGF2ZSB0aW1lb3V0IGNvbmRpdGlvbnMKPiBhbmQgcGFydGljaXBh bnRzIHdpbGwgbmVlZCB0byBtYWtlIHNvbWUgdHJhbnNhY3Rpb25zIGNvbmZpcm0gYmVmb3JlIGEK PiB0aW1lb3V0IGhhcHBlbnMgLSBvdGhlcndpc2UgdGhleSBtYXkgbG9zZSBmdW5kcykuCj4KPiBG b3Igc3RhcnRlcnMsIGxldCBtZSBxdWlja2x5IGV4cGxhaW4gd2h5IHRoZSBjdXJyZW50IHJ1bGVz IGFyZSBoYXJkIHRvCj4gd29yayB3aXRoIGluIHRoZSBjb250ZXh0IG9mIGxpZ2h0bmluZyAoYnV0 IEkgYmVsaWV2ZSBtb3N0IEwyIHByb3RvY29scwo+IHdpbGwgaGF2ZSB0aGUgc2FtZSBpc3N1ZXMp LiBGZWVsIGZyZWUgdG8gc2tpcCB0aGlzIHBhcnQgaWYgeW91IGFyZQo+IGFscmVhZHkgY29udmlu Y2VkLgo+Cj4gIyMgTW90aXZhdGlvbgo+Cj4gVGhlIGJpZ2dlc3QgcGFpbiBwb2ludCBpcyBCSVAg MTI1IHJ1bGUgMi4KPiBJZiBJIG5lZWQgdG8gaW5jcmVhc2UgdGhlIGZlZXMgb2YgYSB0aW1lLXNl bnNpdGl2ZSB0cmFuc2FjdGlvbiBiZWNhdXNlCj4gdGhlIGZlZXJhdGUgaGFzIGJlZW4gcmlzaW5n IHNpbmNlIEkgYnJvYWRjYXN0IGl0LCBJIG1heSBuZWVkIHRvIGFsc28gcGF5Cj4gaGlnaCBmZWVz IGp1c3QgdG8gcHJvZHVjZSBhIGNvbmZpcm1lZCB1dHhvIHRoYXQgSSBjYW4gdXNlLiBJJ20gYWN0 dWFsbHkKPiBwYXlpbmcgYSBoaWdoIGZlZSB0d2ljZSBpbnN0ZWFkIG9mIG9uY2UgKGFuZCBuZWVk bGVzc2x5IHVzaW5nIG9uLWNoYWluCj4gc3BhY2UsIG91ciBzY2FyY2VzdCBhc3NldCwgYmVjYXVz ZSB3ZSBjb3VsZCBoYXZlIGF2b2lkZWQgdGhhdCBhZGRpdGlvbmFsCj4gdHJhbnNhY3Rpb24hKS4K Pgo+IEl0IGFsc28gaGFzIHNvbWUgYW5ub3lpbmcgIm5vbi1kZXRlcm1pbmlzbSIuCj4gSW1hZ2lu ZSB0aGF0IG15IHRyYW5zYWN0aW9uIGhhcyBiZWVuIGV2aWN0ZWQgZnJvbSBteSBtZW1wb29sIGJl Y2F1c2UgaXRzCj4gZmVlcmF0ZSB3YXMgdG9vIGxvdy4gSSBjb3VsZCB0aGluayAiR3JlYXQsIHRo YXQgbWVhbnMgSSBkb24ndCBoYXZlIHRvCj4gYXBwbHkgQklQIDEyNSByZXN0cmljdGlvbnMsIEkg Y2FuIGp1c3QgZnVuZCB0aGlzIHRyYW5zYWN0aW9uIGFzIGlmIGl0Cj4gd2VyZSBhIG5ldyBvbmUh Ii4gQnV0IGFjdHVhbGx5IEkgZG8sIGJlY2F1c2UgbXkgdHJhbnNhY3Rpb24gY291bGQgc3RpbGwK PiBiZSBpbiBtaW5lcidzIG1lbXBvb2xzIGFuZCBJIGhhdmUgbm8gd2F5IG9mIGtub3dpbmcgaXQu Li50aGlzIG1lYW5zIHRoYXQKPiB3aGVuZXZlciBJIGhhdmUgYnJvYWRjYXN0IGEgdHJhbnNhY3Rp b24sIEkgbXVzdCBhc3N1bWUgdGhhdCBJIHdpbGwKPiBhbHdheXMgbmVlZCB0byBhYmlkZSBieSB3 aGF0ZXZlciByZXBsYWNlbWVudCBydWxlcyB0aGUgbmV0d29yayBhcHBsaWVzLgo+Cj4gRm9ydHVu YXRlbHksIGFzIGZhciBhcyBJIHVuZGVyc3RhbmQgaXQsIHRoaXMgcnVsZSBvbmx5IGV4aXN0cyBi ZWNhdXNlIG9mCj4gYSBwcmV2aW91cyBpbXBsZW1lbnRhdGlvbiBkZXRhaWwgb2YgYml0Y29pbiBj b3JlLCBzbyB0aGVyZSdzIHNpbXBseSBubwo+IGdvb2QgcmVhc29uIHRvIGtlZXAgaXQuCj4KPiBU aGUgc2Vjb25kIGJpZ2dlc3QgcGFpbiBwb2ludCBpcyBydWxlIDMuIEl0IHByZXZlbnRzIG1lIGZy b20gZWZmaWNpZW50bHkKPiB1c2luZyBteSBjYXBpdGFsIHdoaWxlIGl0J3MgdW5jb25maXJtZWQu IFdoZW5ldmVyIEknbSB1c2luZyBhIGJpZyB1dHhvCj4gdG8gZnVuZCBhIHRyYW5zYWN0aW9uLCBJ IHdpbGwgZ2V0IGEgYmlnIGNoYW5nZSBvdXRwdXQsIGFuZCBpdCB3b3VsZAo+IHJlYWxseSBiZSBh IHdhc3RlIHRvIGJlIHVuYWJsZSB0byB1c2UgdGhhdCBjaGFuZ2Ugb3V0cHV0IHRvIGZ1bmQgb3Ro ZXIKPiB0cmFuc2FjdGlvbnMuIEluIG9yZGVyIHRvIGJlIGNhcGl0YWwtZWZmaWNpZW50LCBJIHdp bGwgZW5kIHVwIGNyZWF0aW5nCj4gZGVzY2VuZGFudCB0cmVlcyBmb3IgbXkgdGltZS1zZW5zaXRp dmUgdHJhbnNhY3Rpb25zLiBCdXQgYXMgR2xvcmlhCj4gZXhwbGFpbmVkLCByZXBsYWNpbmcgYWxs IG15IGNoaWxkcmVuIHdpbGwgY29zdCBtZSBhbiBhYnN1cmRseSBsYXJnZQo+IGFtb3VudCBvZiBm ZWVzLiBTbyB3aGF0IEknbSBhY3R1YWxseSBwbGFubmluZyB0byBkbyBpbnN0ZWFkIGlzIHRvIFJC Rgo+IG9uZSBvZiB0aGUgZGVzY2VuZGFudHMgaGlnaCBlbm91Z2ggdG8gZ2V0IHRoZSB3aG9sZSB0 cmVlIGNvbmZpcm1lZC4KPiBCdXQgaWYgdGhvc2UgZGVzY2VuZGFudHMnIHRpbWVvdXRzIHdlcmUg ZmFyIGluIHRoZSBmdXR1cmUsIHRoYXQncyBhCj4gd2FzdGUsIEkgcGFpZCBhIGxvdCBtb3JlIGZl ZXMgZm9yIHRoZW0gdGhhbiBJIHNob3VsZCBoYXZlLiBJJ2QgbGlrZSB0bwo+IGp1c3QgcmVwbGFj ZSBteSB0cmFuc2FjdGlvbiBhbmQgcmVwdWJsaXNoIHRoZSBpbnZhbGlkYXRlZCBjaGlsZHJlbgo+ IGluZGVwZW5kZW50bHkuCj4KPiBSdWxlIDQgZG9lc24ndCBodXJ0IGFzIG11Y2ggYXMgdGhlIHR3 byBwcmV2aW91cyBvbmVzLCBJIGRvbid0IGhhdmUgdG9vCj4gbXVjaCB0byBzYXkgYWJvdXQgaXQu Cj4KPiBUbyBiZSBmYWlyIHRvIHRoZSBCSVAgMTI1IGF1dGhvcnMsIGFsbCBvZiB0aGVzZSBzY2Vu YXJpb3Mgd2VyZSB2ZXJ5IGhhcmQKPiB0byBmb3JlY2FzdCBhdCB0aGUgdGltZSB0aGlzIEJJUCB3 YXMgY3JlYXRlZC4gV2UgbmVlZGVkIHllYXJzIHRvIGJ1aWxkCj4gb24gdGhvc2UgcnVsZXMgdG8g Z2V0IGEgYmV0dGVyIHVuZGVyc3RhbmRpbmcgb2YgdGhlaXIgbGltaXRhdGlvbnMgYW5kIGlmCj4g dGhlIHJhdGlvbmFsZSBiZWhpbmQgdGhlbSBtYWRlIHNlbnNlIGluIHRoZSBsb25nIHRlcm0uCj4K PiAjIyBQcm9wb3NhbHMKPgo+IEkgYmVsaWV2ZSB0aGF0IG5vdyBpcyBhIGdvb2QgdGltZSB0byBy ZS10aGluayB0aG9zZSwgYW5kIEkgcmVhbGx5IGxpa2UKPiBHbG9yaWEncyBjYXRlZ29yaXphdGlv biBvZiB0aGUgZGVzaWduIGNvbnN0cmFpbnRzLgo+Cj4gSSdkIGxpa2UgdG8gcHJvcG9zZSBhIGRp ZmZlcmVudCB3YXkgb2YgbG9va2luZyBhdCBkZXNjZW5kYW50cyB0aGF0IG1ha2VzCj4gaXQgZWFz aWVyIHRvIGRlc2lnbiB0aGUgbmV3IHJ1bGVzLiBUaGUgd2F5IEkgdW5kZXJzdGFuZCBpdCwgbGlt aXRpbmcgdGhlCj4gaW1wYWN0IG9uIGRlc2NlbmRhbnQgdHJhbnNhY3Rpb25zIGlzIG9ubHkgaW1w b3J0YW50IGZvciBEb1MgcHJvdGVjdGlvbiwKPiBub3QgZm9yIGluY2VudGl2ZSBjb21wYXRpYmls aXR5LiBJIHdvdWxkIGFyZ3VlIHRoYXQgYWZ0ZXIgZXZpY3Rpb25zLAo+IGRlc2NlbmRhbnQgdHJh bnNhY3Rpb25zIHdpbGwgYmUgc3VibWl0dGVkIGFnYWluIChiZWNhdXNlIHRoZXkgcmVwcmVzZW50 Cj4gdHJhbnNhY3Rpb25zIHRoYXQgcGVvcGxlIGFjdHVhbGx5IHdhbnQgdG8gbWFrZSksIHNvIGV2 aWN0aW5nIHRoZW0gZG9lcwo+IG5vdCBoYXZlIGEgbmVnYXRpdmUgaW1wYWN0IG9uIG1pbmluZyBp bmNlbnRpdmVzIChpbiBhIHdvcmxkIHdoZXJlIGJsb2Nrcwo+IGFyZSBmdWxsIG1vc3Qgb2YgdGhl IHRpbWUpLgo+Cj4gSSdtIGN1cmlvdXMgdG8gaGVhciBvdGhlciBwZW9wbGUncyB0aG91Z2h0cyBv biB0aGF0LiBJZiBpdCBtYWtlcyBzZW5zZSwKPiBJIHdvdWxkIHByb3Bvc2UgdGhlIGZvbGxvd2lu ZyB2ZXJ5IHNpbXBsZSBydWxlczoKPgo+IDEuIFRoZSB0cmFuc2FjdGlvbidzIGFuY2VzdG9yIGFi c29sdXRlIGZlZXMgbXVzdCBiZSBYJSBoaWdoZXIgdGhhbiB0aGUKPiBwcmV2aW91cyB0cmFuc2Fj dGlvbidzIGFuY2VzdG9yIGZlZXMKPiAyLiBUaGUgdHJhbnNhY3Rpb24ncyBhbmNlc3RvciBmZWVy YXRlIG11c3QgYmUgWSUgaGlnaGVyIHRoYW4gdGhlCj4gcHJldmlvdXMgdHJhbnNhY3Rpb24ncyBh bmNlc3RvciBmZWVyYXRlCj4KPiBJIGJlbGlldmUgaXQncyBjb21wbGV0ZWx5IG9rIHRvIHJlcXVp cmUgaW5jcmVhc2luZyBib3RoIHRoZSBmZWVzIGFuZAo+IGZlZXJhdGUgaWYgd2UgZG9uJ3QgdGFr ZSBkZXNjZW5kYW50cyBpbnRvIGFjY291bnQsIGJlY2F1c2UgeW91IGNvbnRyb2wKPiB5b3VyIGFu Y2VzdG9yIHNldCAtIHdoZXJlYXMgdGhlIGRlc2NlbmRhbnQgc2V0IG1heSBiZSBjb21wbGV0ZWx5 IG91dCBvZgo+IHlvdXIgY29udHJvbC4KPgo+IFRoaXMgaXMgdmVyeSBlYXN5IHRvIHVzZSBieSB3 YWxsZXRzLCBiZWNhdXNlIHRoZSBhbmNlc3RvciBzZXQgaXMgZWFzeSB0bwo+IG9idGFpbi4gQW5k IGFuIGltcG9ydGFudCBwb2ludCBpcyB0aGF0IHRoZSBhbmNlc3RvciBzZXQgaXMgdGhlIHNhbWUg aW4KPiBldmVyeSBtZW1wb29sLCB3aGVyZWFzIHRoZSBkZXNjZW5kYW50IHNldCBpcyBub3QgKHlv dXIgbWVtcG9vbCBtYXkgaGF2ZQo+IHJlamVjdGVkIHRoZSBsYXN0IGRlc2NlbmRhbnRzLCB3aGls ZSBvdGhlciBwZW9wbGUncyBtZW1wb29scyBtYXkgc3RpbGwKPiBjb250YWluIHRoZW0pLgo+Cj4g QmVjYXVzZSBvZiB0aGF0IHJlYXNvbiwgSSdkIGxpa2UgdG8gYXZvaWQgaGF2aW5nIGEgcnVsZSB0 aGF0IHJlbGllcyBvbgo+IHNvbWUgc2l6ZSBvZiB0aGUgcmVwbGFjZWQgZGVzY2VuZGFudCBzZXQ6 IGl0IG1heSBiZSB2YWxpZCBpbiB5b3VyCj4gbWVtcG9vbCBidXQgaW52YWxpZCBpbiBzb21lb25l IGVsc2Uncywgd2hpY2ggbWFrZXMgaXQgZXhwbG9pdGFibGUgZm9yCj4gcGlubmluZyBhdHRhY2tz Lgo+Cj4gSSBiZWxpZXZlIHRoZXNlIHJ1bGVzIGFyZSBpbmNlbnRpdmUgY29tcGF0aWJsZSAoYWdh aW4sIGlmIHlvdSBhY2NlcHQKPiB0aGUgZmFjdCB0aGF0IHRoZSBkZXNjZW5kYW50cyB3aWxsIGJl IHJlLXN1Ym1pdHRlZCBhbmQgbWluZWQgYXMgd2VsbCwKPiBzbyB0aGVpciBmZWVzIGFyZW4ndCBs b3N0KS4KPgo+IENhbiB3ZSBjaG9vc2UgWCBhbmQgWSBzbyB0aGF0IHRoZXNlIHR3byBydWxlcyBh cmUgYWxzbyBEb1MtcmVzaXN0YW50Pwo+IFVuZm9ydHVuYXRlbHkgSSdtIG5vdCBzdXJlLCBzbyBt YXliZSB3ZSdsbCBuZWVkIHRvIGFkZCBhIHRoaXJkIHJ1bGUgdG8KPiBhZGRyZXNzIHRoYXQuIEJ1 dCBiZWZvcmUgd2UgZG8sIGNhbiBzb21lb25lIGRldGFpbCB3aGF0IGl0IGNvc3RzIGZvciBhCj4g bm9kZSB0byBldmljdCBhIGRlc2NlbmRhbnQgdHJlZT8gR2l2ZW4gdGhhdCBiaXRjb2luIGNvcmUg ZG9lc24ndCBhbGxvdwo+IGNoYWlucyBvZiBtb3JlIHRoYW4gMjUgdHJhbnNhY3Rpb25zLCB0aGUg bWF4aW11bSBudW1iZXIgb2YgdHJhbnNhY3Rpb25zCj4gYmVpbmcgcmVwbGFjZWQgd2lsbCBiZSBi b3VuZGVkIGJ5IDI1ICogTiAod2hlcmUgTiBpcyB0aGUgbnVtYmVyIG9mCj4gb3V0cHV0cyBvZiB0 aGUgdHJhbnNhY3Rpb24gYmVpbmcgcmVwbGFjZWQpLiBJZiBpdCdzIGp1c3QgTyhuKSBwcnVuaW5n IG9mCj4gYSBncmFwaCwgbWF5YmUgdGhhdCdzIG9rPyBPciBtYXliZSB3ZSBtYWtlIFggb3IgWSBk ZXBlbmQgb24gdGhlIG51bWJlcgo+IG9mIG91dHB1dHMgb2YgdGhlIHRyYW5zYWN0aW9uIGJlaW5n IHJlcGxhY2VkICh0aGlzIHdvdWxkIG5lZWQgdmVyeQo+IGNhcmVmdWwgdGhvdWdodHMpPwo+Cj4g SWYgeW91IG1hZGUgaXQgdGhpcyBmYXIsIHRoYW5rcyBmb3IgcmVhZGluZyEKPiBBIGNvdXBsZSBv ZiBjb21tZW50cyBvbiB0aGUgcHJldmlvdXMgbWVzc2FnZXM6Cj4KPj4gQ3VycmVudGx5LCBpZiB3 ZSBzZWUgYSB0cmFuc2FjdGlvbgo+PiB0aGF0IGhhcyB0aGUgc2FtZSB0eGlkIGFzIG9uZSBpbiB0 aGUgbWVtcG9vbCwgd2UgcmVqZWN0IGl0IGFzIGEKPj4gZHVwbGljYXRlLCBldmVuIGlmIHRoZSBm ZWVyYXRlIGlzIG11Y2ggaGlnaGVyLiBJdCdzIHVuY2xlYXIgdG8gbWUgaWYKPj4gd2UgaGF2ZSBh IHZlcnkgc3Ryb25nIHJlYXNvbiB0byBjaGFuZ2UgdGhpcywgYnV0IG5vdGluZyBpdCBhcyBhCj4+ IGxpbWl0YXRpb24gb2Ygb3VyIGN1cnJlbnQgcmVwbGFjZW1lbnQgcG9saWN5Lgo+Cj4gSSBkb24n dCBzZWUgYSBzdHJvbmcgcmVhc29uIGZyb20gYW4gTDIgcHJvdG9jb2wncyBwb2ludCBvZiB2aWV3 IHlldCwgYnV0Cj4gdGhlcmUgYXJlIG1hbnkgdW5rb3duIHVua25vd25zLiBCdXQgZnJvbSBhIG1p bmVyIGluY2VudGl2ZSdzIHBvaW50IG9mCj4gdmlldywgd2Ugc2hvdWxkIGtlZXAgdGhlIHRyYW5z YWN0aW9uIHdpdGggdGhlIGhpZ2hlciBmZWVyYXRlLCBzaG91bGRuJ3QKPiB3ZT8gSW4gdGhhdCBj YXNlIGl0J3MgYWxzbyBhIG1vcmUgZWZmaWNpZW50IHVzZSBvZiBvbi1jaGFpbiBzcGFjZSwgd2hp Y2gKPiBpcyBhIHdpbiwgcmlnaHQ/Cj4KPj4gV2UgbWlnaHQgaGF2ZSBhIG1vcmUtb3ItbGVzcyBs b25nIHRyYW5zaXRpb24gcGVyaW9kIGR1cmluZyB3aGljaCB3ZSBzdXBwb3J0IGJvdGguLi4KPgo+ IFllcywgdGhpcyBpcyBhIGxvbmcgdGVybSB0aGluZy4KPiBFdmVuIGlmIGJpdGNvaW4gY29yZSBy ZWxlYXNlcyBhIG5ldyB2ZXJzaW9uIHdpdGggdXBkYXRlZCBSQkYgcnVsZXMsIGFzIGEKPiB3YWxs ZXQgeW91J2xsIG5lZWQgdG8ga2VlcCB1c2luZyB0aGUgb2xkIHJ1bGVzIGZvciBhIGxvbmcgdGlt ZSBpZiB5b3UKPiB3YW50IHRvIGJlIHNhZmUuCj4KPiBCdXQgaXQncyBhbGwgdGhlIG1vcmUgcmVh c29uIHRvIHRyeSB0byBzaGlwIHRoaXMgYXMgc29vbiBhcyBwb3NzaWJsZSwKPiB0aGlzIHdheSBt YXliZSBvdXIgZ3JhbmQtY2hpbGRyZW4gd2lsbCBiZSBhYmxlIHRvIGJlbmVmaXQgZnJvbSBpdCA7 KQo+IChqdXN0IGtpZGRpbmcgb24gdGhlIHRpbWVzcGFuIG9idmlvdXNseSkuCj4KPiBDaGVlcnMs Cj4gQmFzdGllbgo+Cj4gTGUgbHVuLiAzMSBqYW52LiAyMDIyIMOgIDAwOjExLCBBbnRvaW5lIFJp YXJkIHZpYSBiaXRjb2luLWRldiA8Yml0Y29pbi1kZXZAbGlzdHMubGludXhmb3VuZGF0aW9uLm9y Zz4gYSDDqWNyaXQgOgo+Cj4+IEhpIEdsb3JpYSwKPj4KPj4gVGhhbmtzIGZvciB0aGlzIFJCRiBz dW0gdXAuIEZldyB0aG91Z2h0cyBhbmQgbW9yZSBjb250ZXh0IGNvbW1lbnRzIGlmIGl0IGNhbiBo ZWxwIG90aGVyIHJlYWRlcnMuCj4+Cj4+PiBGb3Igc3RhcnRlcnMsIHRoZSBhYnNvbHV0ZSBmZWUg cGlubmluZyBhdHRhY2sgaXMgZXNwZWNpYWxseQo+Pj4gcHJvYmxlbWF0aWMgaWYgd2UgYXBwbHkg dGhlIHNhbWUgcnVsZXMgKGkuZS4gUnVsZSAjMyBhbmQgIzQpIGluCj4+PiBQYWNrYWdlIFJCRi4g SW1hZ2luZSB0aGF0IEFsaWNlIChob25lc3QpIGFuZCBCb2IgKGFkdmVyc2FyeSkgc2hhcmUgYQo+ Pj4gTE4gY2hhbm5lbC4gVGhlIG1lbXBvb2wgaXMgcmF0aGVyIGZ1bGwsIHNvIHRoZWlyIHByZS1u ZWdvdGlhdGVkCj4+PiBjb21taXRtZW50IHRyYW5zYWN0aW9ucycgZmVlcmF0ZXMgd291bGQgbm90 IGJlIGNvbnNpZGVyZWQgaGlnaAo+Pj4gcHJpb3JpdHkgYnkgbWluZXJzLiBCb2IgYnJvYWRjYXN0 cyBoaXMgY29tbWl0bWVudCB0cmFuc2FjdGlvbiBhbmQKPj4+IGF0dGFjaGVzIGEgdmVyeSBsYXJn ZSBjaGlsZCAoMTAwS3ZCIHdpdGggMTAwLDAwMHNhdCBpbiBmZWVzKSB0byBoaXMKPj4+IGFuY2hv ciBvdXRwdXQuIEFsaWNlIGJyb2FkY2FzdHMgaGVyIGNvbW1pdG1lbnQgdHJhbnNhY3Rpb24gd2l0 aCBhCj4+PiBmZWUtYnVtcGluZyBjaGlsZCAoMjAwdkIgd2l0aCA1MCwwMDBzYXQgZmVlcyB3aGlj aCBpcyBhIGdlbmVyb3VzCj4+PiAyNTBzYXQvdkIpLCBidXQgdGhpcyBkb2VzIG5vdCBtZWV0IHRo ZSBhYnNvbHV0ZSBmZWUgcmVxdWlyZW1lbnQuIFNoZQo+Pj4gd291bGQgbmVlZCB0byBhZGQgYW5v dGhlciA1MCwwMDBzYXQgdG8gcmVwbGFjZSBCb2IncyBjb21taXRtZW50Cj4+PiB0cmFuc2FjdGlv bi4KPj4KPj4gU29sdmluZyBMTiBwaW5uaW5nIGF0dGFja3MsIHdoYXQgd2UncmUgYWltaW5nIGZv ciBpcyBlbmFibGluZyBhIGZhaXIgZmVlcmF0ZSBiaWQgYmV0d2VlbiB0aGUgY291bnRlcnBhcnRp ZXMsIHRodXMgZWl0aGVyIGZvcmNpbmcgdGhlIGFkdmVyc2FyeSB0byBvdmVyYmlkIG9yIHRvIGRp c2VuZ2FnZSBmcm9tIHRoZSBjb25maXJtYXRpb24gY29tcGV0aXRpb24uIElmIHRoZSByZXBsYWNl LWJ5LWZlZXJhdGUgcnVsZSBpcyBhZG9wdGVkLCB0aGVyZSBzaG91bGRuJ3QgYmUgYW4gaW5jZW50 aXZlIGZvciBCb2IgdG8KPj4gcGljayB1cCB0aGUgZmlyc3Qgb3B0aW9uLiBUaG91Z2ggaWYgaGUg ZG9lcywgdGhhdCdzIGEgd2lubmluZyBvdXRjb21lIGZvciBBbGljZSwgYXMgb25lIG9mIHRoZSBj b21taXRtZW50IHRyYW5zYWN0aW9ucyBjb25maXJtcyBhbmQgaGVyIHRpbWUtc2Vuc2l0aXZlIHNl Y29uZC1zdGFnZSBIVExDIGNhbiBiZSBzdWJzZXF1ZW50bHkgY29uZmlybWVkLgo+Pgo+Pj4gSXQn cyB1bmNsZWFyIHRvIG1lIGlmCj4+PiB3ZSBoYXZlIGEgdmVyeSBzdHJvbmcgcmVhc29uIHRvIGNo YW5nZSB0aGlzLCBidXQgbm90aW5nIGl0IGFzIGEKPj4+IGxpbWl0YXRpb24gb2Ygb3VyIGN1cnJl bnQgcmVwbGFjZW1lbnQgcG9saWN5LiBTZWUgWyMyNDAwN11bMTJdLgo+Pgo+PiBEZXBsb3ltZW50 IG9mIFRhcHJvb3Qgb3BlbnMgaW50ZXJlc3RpbmcgcG9zc2liaWxpdGllcyBpbiB0aGUgdmF1bHRz L3BheW1lbnQgY2hhbm5lbHMgZGVzaWduIHNwYWNlLCB3aGVyZSB0aGUgdGFwc2NyaXB0cyBjYW4g Y29tbWl0IHRvIGRpZmZlcmVudCBzZXQgb2YgdGltZWxvY2tzL3F1b3J1bSBvZiBrZXlzLiBFdmVu IGlmIHRoZSBwcmUtc2lnbmVkIHN0YXRlcyBzdGF5IHN5bW1ldHJpYywgd2hvZXZlciBpcyB0aGUg cHVibGlzaGVyLCB0aGUgZmVlcmF0ZSBjb3N0IHRvIHNwZW5kIGNhbiBmbHVjdHVhdGUuCj4+Cj4+ PiBXaGlsZSB0aGlzIGlzbid0IGNvbXBsZXRlbHkgYnJva2VuLCBhbmQgdGhlIHVzZXIgaW50ZXJm YWNlIGlzCj4+PiBzZWNvbmRhcnkgdG8gdGhlIHNhZmV0eSBvZiB0aGUgbWVtcG9vbCBwb2xpY3kK Pj4KPj4gSSB0aGluayB3aXRoIEwycyB0cmFuc2FjdGlvbiBicm9hZGNhc3QgYmFja2VuZCwgdGhl IHN0YWJpbGl0eSBhbmQgY2xhcml0eSBvZiB0aGUgUkJGIHVzZXIgaW50ZXJmYWNlIGlzIHByaW1h cnkuIFdoYXQgd2UgY291bGQgYmUgd29ycmllZCBhYm91dCBpcyBhIHRvby1tdWNoIGNvbXBsZXgg aW50ZXJmYWNlIGVhc2luZyB0aGUgd2F5IGZvciBhbiBhdHRhY2tlciB0byB0cmlnZ2VyIHlvdXIg TDIgbm9kZSB0byBpc3N1ZSBwb2xpY3ktaW52YWxpZCBjaGFpbiBvZiB0cmFuc2FjdGlvbnMuIEVz cGVjaWFsbHksIHdoZW4gd2UgY29uc2lkZXIgdGhhdCBhbiBhdHRhY2tlciBtaWdodCBoYXZlIGxl dmVyYWdlIG9uIGNoYWluIG9mIHRyYW5zYWN0aW9ucyBjb21wb3NpdGlvbiAoImZvcmNlIGJyb2Fk Y2FzdCBvZiBjb21taXRtZW50IEEgdGhlbiBjb21taXRtZW50IEIsIGtub3dpbmcgdGhleSB3aWxs IHNoYXJlIGEgQ1BGUCIpIG9yIGV2ZW4gdHJhbnNhY3Rpb25zIHNpemUgKCJvdmVybG9hZCBjb21t aXRtZW50IEEgd2l0aCBIVExDcyIpLgo+Pgo+Pj4gKiBJZiB0aGUgb3JpZ2luYWwgdHJhbnNhY3Rp b24gaXMgaW4gdGhlIHRvcCB7MC43NU12QiwgMU12Qn0gb2YgdGhlCj4+PiBtZW1wb29sLCBhcHBs eSB0aGUgY3VycmVudCBydWxlcyAoYWJzb2x1dGUgZmVlcyBtdXN0IGluY3JlYXNlIGFuZAo+Pj4g cGF5IGZvciB0aGUgcmVwbGFjZW1lbnQgdHJhbnNhY3Rpb24ncyBuZXcgYmFuZHdpZHRoKS4gT3Ro ZXJ3aXNlLCB1c2UgYQo+Pj4gZmVlcmF0ZS1vbmx5IHJ1bGUuCj4+Cj4+IEhvdyB0aGlzIG5ldyBy ZXBsYWNlbWVudCBydWxlIHdvdWxkIGJlaGF2ZSBpZiB5b3UgaGF2ZSBhIHBhcmVudCBpbiB0aGUg InJlcGxhY2UtYnktZmVlcmF0ZSIgaGFsZiBidXQgdGhlIGNoaWxkIGlzIGluIHRoZSAicmVwbGFj ZS1ieS1mZWUiIG9uZSA/Cj4+Cj4+IElmIHdlIGFsbG93IHRoZSByZXBsYWNlbWVudCBvZiB0aGUg cGFyZW50IGJhc2VkIG9uIHRoZSBmZWVyYXRlLCB3ZSBtaWdodCBkZWNyZWFzZSB0aGUgdG9wIGJs b2NrIGFic29sdXRlIGZlZXMuCj4+Cj4+IElmIHdlIGJsb2NrIHRoZSByZXBsYWNlbWVudCBvZiB0 aGUgcGFyZW50IGJhc2VkIG9uIHRoZSBmZWVyYXRlIGJlY2F1c2UgdGhlIHJlcGxhY2VtZW50IGFi c29sdXRlIGZlZXMgYXJlbid0IGFib3ZlIHRoZSByZXBsYWNlZCBwYWNrYWdlLCB3ZSBzdGlsbCBw cmVjbHVkZSBhIHBpbm5pbmcgdmVjdG9yLiBUaGUgY2hpbGQgbWlnaHQgYmUgbG93LWZlZXJhdGUg anVuayBhbmQgZXZlbiBhdHRhY2hlZCB0byBhIGxvdyBhbmNlc3Rvci1zY29yZSBicmFuY2guCj4+ Cj4+IElmIEknbSBjb3JyZWN0IG9uIHRoaXMgbGltaXRhdGlvbiwgbWF5YmUgd2UgY291bGQgdHVy biBvZmYgdGhlICJyZXBsYWNlLWJ5LWZlZSIgYmVoYXZpb3IgYXMgc29vbiBhcyB0aGUgbWVtcG9v bCBpcyBmdWxmaWxsZWQgd2l0aCBhIGZldyBibG9ja3MgPwo+Pgo+Pj4gKiBSYXRlLWxpbWl0IGhv dyBtYW55IHJlcGxhY2VtZW50cyB3ZSBhbGxvdyBwZXIgcHJldm91dC4KPj4KPj4gRGVwZW5kaW5n IG9uIGhvdyBpdCBpcyBpbXBsZW1lbnRlZCwgdGhvdWdoIEkgd291bGQgYmUgY29uY2VybmVkIGl0 IGludHJvZHVjZXMgYSBuZXcgcGlubmluZyB2ZWN0b3IgaW4gdGhlIGNvbnRleHQgb2Ygc2hhcmVk LXV0eG8uIElmIGl0J3MgYSBoYXJkY29kZWQgY29uc3RhbnQsIGl0IGNvdWxkIGJlIGV4aGF1c3Rl ZCBieSBhbiBhZHZlcnNhcnkgc3RhcnRpbmcgYXQgdGhlIGxvd2VzdCBhY2NlcHRhYmxlIGZlZXJh dGUgdGhlbiBzbG93bHkgaW5jcmVhc2luZyB3aGlsZSBzdGlsbCBub3QgcmVhY2hpbmcKPj4gdGhl IHRvcCBvZiB0aGUgbWVtcG9vbC4gU2FtZSBpZiBpdCdzIHRpbWUtYmFzZWQgb3IgYmxvY2stYmFz ZWQsIG5vIGd1YXJhbnRlZSB0aGUgcmVwbGFjZW1lbnQgc2xvdCBpcyBob25lc3RseSB1c2VkIGJ5 IHlvdXIgY291bnRlcnBhcnR5Lgo+Pgo+PiBGdXJ0aGVyLCBhbiBhYm92ZS10aGUtYXZlcmFnZSBy ZXBsYWNlbWVudCBmcmVxdWVuY3kgbWlnaHQganVzdCBiZSB0aGUgcmVmbGVjdGlvbiBvZiB5b3Vy IGNvbmZpcm1hdGlvbiBzdHJhdGVneSByZWFjdGluZyB0byBibG9jayBzY2hlZHVsZSBvciBtZW1w b29scyBoaXN0b3JpY2FsIGRhdGEuIEFzIGxvbmcgYXMgdGhlIGZlZXJhdGUgcGVuYWx0eSBpcyBw YWlkLCBJIGxlYW4gdG8gYWxsb3cgcmVwbGFjZW1lbnQuCj4+IChPbmUgc29sdXRpb24gY291bGQg YmUgdG8gYXNzb2NpYXRlIHBlci11c2VyICJ0YWciIHRvIHRoZSBMTiB0cmFuc2FjdGlvbnMsIHdo ZXJlIGVhY2ggInRhZyIgd291bGQgaGF2ZSBpdHMgb3duIHJlcGxhY2VtZW50IHNsb3RzLCBidXQg cHJpdmFjeT8pCj4+Cj4+PiAqIFJhdGUtbGltaXQgdHJhbnNhY3Rpb24gdmFsaWRhdGlvbiBpbiBn ZW5lcmFsLCBwZXIgcGVlci4KPj4KPj4gSSB0aGluayB3ZSBjb3VsZCBpbXByb3ZlIG9uIHRoZSBD b3JlJ3MgbmV3IHRyYW5zYWN0aW9uIHJlcXVlc3RlciBsb2dpYy4gTWF5YmUgd2UgY291bGQgYmlu ZCB0aGUgcGVlciBhbm5vdW5jZWQgZmxvdyBiYXNlZCBvbiB0aGUgZmVlcmF0ZSBzY29yZSAobW9k dWxvIHZhbGlkYXRpb24gdGltZSkgb2YgdGhlIHByZXZpb3VzbHkgdmFsaWRhdGVkIHRyYW5zYWN0 aW9ucyBmcm9tIHRoYXQgcGVlciA/IFRoYXQgc2FpZCwgd2hpbGUgcmVsYXRlZCB0byBSQkYsIGl0 IHNvdW5kcyB0byBtZSB0aGF0IGVuaGFuY2luZyBDb3JlJ3MgcmF0ZS1saW1pdGluZyB0cmFuc2Fj dGlvbiBzdHJhdGVneSBpcyBhIHdob2xlIGRpc2N1c3Npb24gaW4gaXRzZWxmIFswXS4gRXNwZWNp YWxseSBlbnN1cmluZyBpdCdzIHRvbGVyYW50IHRvIHRoZSBzcGVjaWZpYyByZXF1aXJlbWVudHMg b2YgTE4gJiBjb25zb3J0cy4KPj4KPj4+IFdoYXQgc2hvdWxkIHRoZXkgYmU/IFdlIGNhbiBkbyBz b21lIGFyaXRobWV0aWMgdG8gc2VlIHdoYXQgaGFwcGVucyBpZgo+Pj4geW91IHN0YXJ0IHdpdGgg dGhlIGJpZ2dlc3QvbG93ZXN0IGZlZXJhdGUgdHJhbnNhY3Rpb24gYW5kIGRvIGEgYnVuY2gKPj4+ IG9mIHJlcGxhY2VtZW50cy4gTWF5YmUgd2UgZW5kIHVwIHdpdGggdmFsdWVzIHRoYXQgYXJlIGhp Z2ggZW5vdWdoIHRvCj4+PiBwcmV2ZW50IGFidXNlIGFuZCBtYWtlIHNlbnNlIGZvciBhcHBsaWNh dGlvbnMvdXNlcnMgdGhhdCBkbyBSQkYuCj4+Cj4+IFRoYXQncyBhIGdvb2QgcXVlc3Rpb24uCj4+ Cj4+IE9uZSBvYnNlcnZhdGlvbiBpcyB0aGF0IHRoZSBhdHRhY2tlciBjYW4gYWx3YXlzIHJlbmV3 IHRoZSBzZXQgb2YgRG9TeSB1dHhvcyB0byBwdXJzdWUgdGhlIGF0dGFjay4gU28gbWF5YmUgd2Ug Y291bGQgcGljayB1cCBjb25zdGFudHMgc2NhbGVkIG9uIHRoZSBibG9jayBzaXplID8gVGhhdCB3 YXkgYW4gYXR0YWNrZXIgd291bGQgaGF2ZSB0byBidXJuIGZlZXMsIHRodXMgZGV0ZXJyaW5nIHRo ZW0gZnJvbSBsYXVuY2hpbmcgYW4gYXR0YWNrLiBFdmVuIGlmIHRoZSBhdHRhY2tlcnMgYXJlIG1p bmVycywgdGhleSBoYXZlIHRvIHJlbm91bmNlIHRoZWlyIGluY29tZSB0byBhY3F1aXJlIG5ldyBE b1N5IHV0eG9zLiBJZiBhIGxvdy1mZWUgcGVyaW9kLCB3ZSBjb3VsZCBzY2FsZSB1cCB0aGUgY29u c3RhbnRzID8KPj4KPj4gT3ZlcmFsbCwgSSB0aGluayB0aGVyZSBpcyB0aGUgZGVwbG95bWVudCBp c3N1ZSB0byB3YXJuIG9mLiBNb3ZpbmcgdG8gYSBuZXcgc2V0IG9mIFJCRiBydWxlcyBpbXBsaWVz IGZvciBhIGxvdCBvZiBCaXRjb2luIGFwcGxpY2F0aW9ucyB0byByZXdyaXRlIHRoZWlyIFJCRiBs b2dpY3MuIFdlIG1pZ2h0IGhhdmUgYSBtb3JlLW9yLWxlc3MgbG9uZyB0cmFuc2l0aW9uIHBlcmlv ZCBkdXJpbmcgd2hpY2ggd2Ugc3VwcG9ydCBib3RoLi4uCj4+Cj4+IENoZWVycywKPj4gQW50b2lu ZQo+Pgo+PiBbMF0gaHR0cHM6Ly9naXRodWIuY29tL2JpdGNvaW4vYml0Y29pbi9wdWxsLzIxMjI0 Cj4+Cj4+IExlIGpldS4gMjcgamFudi4gMjAyMiDDoCAwOToxMCwgR2xvcmlhIFpoYW8gdmlhIGJp dGNvaW4tZGV2IDxiaXRjb2luLWRldkBsaXN0cy5saW51eGZvdW5kYXRpb24ub3JnPiBhIMOpY3Jp dCA6Cj4+Cj4+PiBIaSBldmVyeW9uZSwKPj4+Cj4+PiBUaGlzIHBvc3QgZGlzY3Vzc2VzIGxpbWl0 YXRpb25zIG9mIGN1cnJlbnQgQml0Y29pbiBDb3JlIFJCRiBwb2xpY3kgYW5kCj4+PiBhdHRlbXB0 cyB0byBzdGFydCBhIGNvbnZlcnNhdGlvbiBhYm91dCBob3cgd2UgY2FuIGltcHJvdmUgaXQsCj4+ PiBzdW1tYXJpemluZyBzb21lIGlkZWFzIHRoYXQgaGF2ZSBiZWVuIGRpc2N1c3NlZC4gUGxlYXNl IHJlcGx5IGlmIHlvdQo+Pj4gaGF2ZSBhbnkgbmV3IGlucHV0IG9uIGlzc3VlcyB0byBiZSBzb2x2 ZWQgYW5kIGlkZWFzIGZvciBpbXByb3ZlbWVudCEKPj4+Cj4+PiBKdXN0IGluIGNhc2UgSSd2ZSBz Y3Jld2VkIHVwIHRoZSB0ZXh0IHdyYXBwaW5nIGFnYWluLCBhbm90aGVyIGNvcHkgY2FuIGJlCj4+ PiBmb3VuZCBoZXJlOiBodHRwczovL2dpc3QuZ2l0aHViLmNvbS9nbG96b3cvMjVkOTY2MmM1MjQ1 M2JkMDhiNGI0YjFkMzc4M2I5ZmYKPj4+Cj4+PiAjIyBCYWNrZ3JvdW5kCj4+Pgo+Pj4gUGxlYXNl IGZlZWwgZnJlZSB0byBza2lwIHRoaXMgc2VjdGlvbiBpZiB5b3UgYXJlIGFscmVhZHkgZmFtaWxp YXIKPj4+IHdpdGggUkJGLgo+Pj4KPj4+IE5vZGVzIG1heSByZWNlaXZlICpjb25mbGljdGluZyog dW5jb25maXJtZWQgdHJhbnNhY3Rpb25zLCBha2EKPj4+ICJkb3VibGUgc3BlbmRzIiBvZiB0aGUg c2FtZSBpbnB1dHMuIEluc3RlYWQgb2YgYWx3YXlzIGtlZXBpbmcgdGhlCj4+PiBmaXJzdCB0cmFu c2FjdGlvbiwgc2luY2UgdjAuMTIsIEJpdGNvaW4gQ29yZSBtZW1wb29sIHBvbGljeSBoYXMKPj4+ IGluY2x1ZGVkIGEgc2V0IG9mIFJlcGxhY2UtYnktRmVlIChSQkYpIGNyaXRlcmlhIHRoYXQgYWxs b3dzIHRoZSBzZWNvbmQKPj4+IHRyYW5zYWN0aW9uIHRvIHJlcGxhY2UgdGhlIGZpcnN0IG9uZSBh bmQgYW55IGRlc2NlbmRhbnRzIGl0IG1heSBoYXZlLgo+Pj4KPj4+IEJpdGNvaW4gQ29yZSBSQkYg cG9saWN5IHdhcyBwcmV2aW91c2x5IGRvY3VtZW50ZWQgYXMgQklQIDEyNS4KPj4+IFRoZSBjdXJy ZW50IFJCRiBwb2xpY3kgaXMgZG9jdW1lbnRlZCBbaGVyZV1bMV0uIEluIHN1bW1hcnk6Cj4+Pgo+ Pj4gMS4gVGhlIGRpcmVjdGx5IGNvbmZsaWN0aW5nIHRyYW5zYWN0aW9ucyBhbGwgc2lnbmFsIHJl cGxhY2VhYmlsaXR5Cj4+PiBleHBsaWNpdGx5Lgo+Pj4KPj4+IDIuIFRoZSByZXBsYWNlbWVudCB0 cmFuc2FjdGlvbiBvbmx5IGluY2x1ZGVzIGFuIHVuY29uZmlybWVkIGlucHV0IGlmCj4+PiB0aGF0 IGlucHV0IHdhcyBpbmNsdWRlZCBpbiBvbmUgb2YgdGhlIGRpcmVjdGx5IGNvbmZsaWN0aW5nCj4+ PiB0cmFuc2FjdGlvbnMuCj4+Pgo+Pj4gMy4gVGhlIHJlcGxhY2VtZW50IHRyYW5zYWN0aW9uIHBh eXMgYW4gYWJzb2x1dGUgZmVlIG9mIGF0IGxlYXN0IHRoZQo+Pj4gc3VtIHBhaWQgYnkgdGhlIG9y aWdpbmFsIHRyYW5zYWN0aW9ucy4KPj4+Cj4+PiA0LiBUaGUgYWRkaXRpb25hbCBmZWVzIHBheXMg Zm9yIHRoZSByZXBsYWNlbWVudCB0cmFuc2FjdGlvbidzCj4+PiBiYW5kd2lkdGggYXQgb3IgYWJv dmUgdGhlIHJhdGUgc2V0IGJ5IHRoZSBub2RlJ3MgKmluY3JlbWVudGFsIHJlbGF5Cj4+PiBmZWVy YXRlKi4KPj4+Cj4+PiA1LiBUaGUgc3VtIG9mIGFsbCBkaXJlY3RseSBjb25mbGljdGluZyB0cmFu c2FjdGlvbnMnIGRlc2NlbmRhbnQgY291bnRzCj4+PiAobnVtYmVyIG9mIHRyYW5zYWN0aW9ucyBp bmNsdXNpdmUgb2YgaXRzZWxmIGFuZCBpdHMgZGVzY2VuZGFudHMpCj4+PiBkb2VzIG5vdCBleGNl ZWQgMTAwLgo+Pj4KPj4+IFdlIGNhbiBzcGxpdCB0aGVzZSBydWxlcyBpbnRvIDMgY2F0ZWdvcmll cy9nb2FsczoKPj4+Cj4+PiAtICoqQWxsb3cgT3B0aW5nIE91dCoqOiBTb21lIGFwcGxpY2F0aW9u cy9idXNpbmVzc2VzIGFyZSB1bmFibGUgdG8KPj4+IGhhbmRsZSB0cmFuc2FjdGlvbnMgdGhhdCBh cmUgcmVwbGFjZWFibGUgKGUuZy4gbWVyY2hhbnRzIHRoYXQgdXNlCj4+PiB6ZXJvLWNvbmZpcm1h dGlvbiB0cmFuc2FjdGlvbnMpLiBXZSAodHJ5IHRvKSBoZWxwIHRoZXNlIGJ1c2luZXNzZXMgYnkK Pj4+IGhvbm9yaW5nIEJJUDEyNSBzaWduYWxpbmc7IHdlIHdvbid0IHJlcGxhY2UgdHJhbnNhY3Rp b25zIHRoYXQgaGF2ZSBub3QKPj4+IG9wdGVkIGluLgo+Pj4KPj4+IC0gKipJbmNlbnRpdmUgQ29t cGF0aWJpbGl0eSoqOiBFbnN1cmUgdGhhdCBvdXIgUkJGIHBvbGljeSB3b3VsZCBub3QKPj4+IGFj Y2VwdCByZXBsYWNlbWVudCB0cmFuc2FjdGlvbnMgd2hpY2ggd291bGQgZGVjcmVhc2UgZmVlIHBy b2ZpdHMKPj4+IG9mIGEgbWluZXIuIEluIGdlbmVyYWwsIGlmIG91ciBtZW1wb29sIHBvbGljeSBk ZXZpYXRlcyBmcm9tIHdoYXQgaXMKPj4+IGVjb25vbWljYWxseSByYXRpb25hbCwgaXQncyBsaWtl bHkgdGhhdCB0aGUgdHJhbnNhY3Rpb25zIGluIG91cgo+Pj4gbWVtcG9vbCB3aWxsIG5vdCBtYXRj aCB0aGUgb25lcyBpbiBtaW5lcnMnIG1lbXBvb2xzLCBtYWtpbmcgb3VyCj4+PiBmZWUgZXN0aW1h dGlvbiwgY29tcGFjdCBibG9jayByZWxheSwgYW5kIG90aGVyIG1lbXBvb2wtZGVwZW5kZW50Cj4+ PiBmdW5jdGlvbnMgdW5yZWxpYWJsZS4gSW5jZW50aXZlLWluY29tcGF0aWJsZSBwb2xpY3kgbWF5 IGFsc28KPj4+IGVuY291cmFnZSB0cmFuc2FjdGlvbiBzdWJtaXNzaW9uIHRocm91Z2ggcm91dGVz IG90aGVyIHRoYW4gdGhlIHAycAo+Pj4gbmV0d29yaywgaGFybWluZyBjZW5zb3JzaGlwLXJlc2lz dGFuY2UgYW5kIHByaXZhY3kgb2YgQml0Y29pbiBwYXltZW50cy4KPj4+Cj4+PiAtICoqRG9TIFBy b3RlY3Rpb24qKjogTGltaXQgdHdvIHR5cGVzIG9mIERvUyBhdHRhY2tzIG9uIHRoZSBub2RlJ3MK Pj4+IG1lbXBvb2w6ICgxKSB0aGUgbnVtYmVyIG9mIHRpbWVzIGEgdHJhbnNhY3Rpb24gY2FuIGJl IHJlcGxhY2VkIGFuZAo+Pj4gKDIpIHRoZSB2b2x1bWUgb2YgdHJhbnNhY3Rpb25zIHRoYXQgY2Fu IGJlIGV2aWN0ZWQgZHVyaW5nIGEKPj4+IHJlcGxhY2VtZW50Lgo+Pj4KPj4+IEV2ZW4gbW9yZSBh YnN0cmFjdDogb3VyIGdvYWwgaXMgdG8gbWFrZSBhIHJlcGxhY2VtZW50IHBvbGljeSB0aGF0Cj4+ PiByZXN1bHRzIGluIGEgdXNlZnVsIGludGVyZmFjZSBmb3IgdXNlcnMgYW5kIHNhZmUgcG9saWN5 IGZvcgo+Pj4gbm9kZSBvcGVyYXRvcnMuCj4+Pgo+Pj4gIyMgTW90aXZhdGlvbgo+Pj4KPj4+IFRo ZXJlIGFyZSBhIG51bWJlciBvZiBrbm93biBwcm9ibGVtcyB3aXRoIHRoZSBjdXJyZW50IFJCRiBw b2xpY3kuCj4+PiBNYW55IG9mIHRoZXNlIHNob3J0Y29taW5ncyBleGlzdCBkdWUgdG8gbWVtcG9v bCBsaW1pdGF0aW9ucyBhdCB0aGUKPj4+IHRpbWUgUkJGIHdhcyBpbXBsZW1lbnRlZCBvciByZXN1 bHQgZnJvbSBuZXcgdHlwZXMgb2YgQml0Y29pbiB1c2FnZTsKPj4+IHRoZXkgYXJlIG5vdCBjcml0 aWNpc21zIG9mIHRoZSBvcmlnaW5hbCBkZXNpZ24uCj4+Pgo+Pj4gIyMjIFBpbm5pbmcgQXR0YWNr cwo+Pj4KPj4+IFRoZSBtb3N0IHByZXNzaW5nIGNvbmNlcm4gaXMgdGhhdCBhdHRhY2tlcnMgbWF5 IHRha2UgYWR2YW50YWdlIG9mCj4+PiBsaW1pdGF0aW9ucyBpbiBSQkYgcG9saWN5IHRvIHByZXZl bnQgb3RoZXIgdXNlcnMnIHRyYW5zYWN0aW9ucyBmcm9tCj4+PiBiZWluZyBtaW5lZCBvciBnZXR0 aW5nIGFjY2VwdGVkIGFzIGEgcmVwbGFjZW1lbnQuCj4+Pgo+Pj4gIyMjIyBTSUdIQVNIX0FOWU9O RUNBTlBBWSBQaW5uaW5nCj4+Pgo+Pj4gQklQMTI1IzIgY2FuIGJlIGJ5cGFzc2VkIGJ5IGNyZWF0 aW5nIGludGVybWVkaWFyeSB0cmFuc2FjdGlvbnMgdG8gYmUKPj4+IHJlcGxhY2VkIHRvZ2V0aGVy LiBBbnlvbmUgY2FuIHNpbXBseSBzcGxpdCBhIDEtaW5wdXQgMS1vdXRwdXQKPj4+IHRyYW5zYWN0 aW9uIG9mZiBmcm9tIHRoZSByZXBsYWNlbWVudCB0cmFuc2FjdGlvbiwgdGhlbiBicm9hZGNhc3Qg dGhlCj4+PiB0cmFuc2FjdGlvbiBhcyBpcy4gVGhpcyBjYW4gYWx3YXlzIGJlIGRvbmUsIGFuZCBx dWl0ZSBjaGVhcGx5LiBNb3JlCj4+PiBkZXRhaWxzIGluIFt0aGlzIGNvbW1lbnRdWzJdLgo+Pj4K Pj4+IEluIGdlbmVyYWwsIGlmIGEgdHJhbnNhY3Rpb24gaXMgc2lnbmVkIHdpdGggU0lHSEFTSFxf QU5ZT05FQ0FOUEFZLAo+Pj4gYW55Ym9keSBjYW4ganVzdCBhdHRhY2ggYSBsb3cgZmVlcmF0ZSBw YXJlbnQgdG8gdGhpcyB0cmFuc2FjdGlvbiBhbmQKPj4+IGxvd2VyIGl0cyBhbmNlc3RvciBmZWVy YXRlLiBFdmVuIGlmIHlvdSByZXF1aXJlIFNJR0hBU0hcX0FMTCB3aGljaAo+Pj4gcHJldmVudHMg YW4gYXR0YWNrZXIgZnJvbSBjaGFuZ2luZyBhbnkgb3V0cHV0cywgdGhlIGlucHV0IGNhbiBiZSBh Cj4+PiB2ZXJ5IGxvdyBhbW91bnQgKGUuZy4ganVzdCBhYm92ZSB0aGUgZHVzdCBsaW1pdCkgZnJv bSBhIGxvdy1mZWUKPj4+IGFuY2VzdG9yIGFuZCBzdGlsbCBicmluZyBkb3duIHRoZSBhbmNlc3Rv ciBmZWVyYXRlIG9mIHRoZSB0cmFuc2FjdGlvbi4KPj4+Cj4+PiBUTERSOiBpZiB5b3VyIHRyYW5z YWN0aW9uIGlzIHNpZ25lZCB3aXRoIFNJR0hBU0hcX0FOWU9ORUNBTlBBWSBhbmQKPj4+IHNpZ25h bHMgcmVwbGFjZWFiaWxpdHksIHJlZ2FyZGxlc3Mgb2YgdGhlIGZlZXJhdGUgeW91IGJyb2FkY2Fz dCBhdCwgYW4KPj4+IGF0dGFja2VyIGNhbiBsb3dlciBpdHMgbWluaW5nIHByaW9yaXR5IGJ5IGFk ZGluZyBhbiBhbmNlc3Rvci4KPj4+Cj4+PiAjIyMjIEFic29sdXRlIEZlZQo+Pj4KPj4+IFRoZSBy ZXN0cmljdGlvbiBvZiByZXF1aXJpbmcgcmVwbGFjZW1lbnQgdHJhbnNhY3Rpb25zIHRvIGluY3Jl YXNlIHRoZQo+Pj4gYWJzb2x1dGUgZmVlIG9mIHRoZSBtZW1wb29sIGhhcyBiZWVuIGRlc2NyaWJl ZCBhcyAiYm9ua2Vycy4iIElmIHRoZQo+Pj4gb3JpZ2luYWwgdHJhbnNhY3Rpb24gaGFzIGEgdmVy eSBsYXJnZSBkZXNjZW5kYW50IHRoYXQgcGF5cyBhIGxhcmdlCj4+PiBhbW91bnQgb2YgZmVlcywg ZXZlbiBpZiBpdCBoYXMgYSBsb3cgZmVlcmF0ZSwgdGhlIHJlcGxhY2VtZW50Cj4+PiB0cmFuc2Fj dGlvbiBtdXN0IG5vdyBwYXkgdGhvc2UgZmVlcyBpbiBvcmRlciB0byBtZWV0IFJ1bGUgIzMuCj4+ Pgo+Pj4gIyMjIyBQYWNrYWdlIFJCRgo+Pj4KPj4+IFRoZXJlIGFyZSBhIG51bWJlciBvZiByZWFz b25zIHdoeSwgaW4gb3JkZXIgdG8gZW5hYmxlIFBhY2thZ2UgUkJGLCB3ZQo+Pj4gY2Fubm90IHVz ZSB0aGUgc2FtZSBjcml0ZXJpYS4KPj4+Cj4+PiBGb3Igc3RhcnRlcnMsIHRoZSBhYnNvbHV0ZSBm ZWUgcGlubmluZyBhdHRhY2sgaXMgZXNwZWNpYWxseQo+Pj4gcHJvYmxlbWF0aWMgaWYgd2UgYXBw bHkgdGhlIHNhbWUgcnVsZXMgKGkuZS4gUnVsZSAjMyBhbmQgIzQpIGluCj4+PiBQYWNrYWdlIFJC Ri4gSW1hZ2luZSB0aGF0IEFsaWNlIChob25lc3QpIGFuZCBCb2IgKGFkdmVyc2FyeSkgc2hhcmUg YQo+Pj4gTE4gY2hhbm5lbC4gVGhlIG1lbXBvb2wgaXMgcmF0aGVyIGZ1bGwsIHNvIHRoZWlyIHBy ZS1uZWdvdGlhdGVkCj4+PiBjb21taXRtZW50IHRyYW5zYWN0aW9ucycgZmVlcmF0ZXMgd291bGQg bm90IGJlIGNvbnNpZGVyZWQgaGlnaAo+Pj4gcHJpb3JpdHkgYnkgbWluZXJzLiBCb2IgYnJvYWRj YXN0cyBoaXMgY29tbWl0bWVudCB0cmFuc2FjdGlvbiBhbmQKPj4+IGF0dGFjaGVzIGEgdmVyeSBs YXJnZSBjaGlsZCAoMTAwS3ZCIHdpdGggMTAwLDAwMHNhdCBpbiBmZWVzKSB0byBoaXMKPj4+IGFu Y2hvciBvdXRwdXQuIEFsaWNlIGJyb2FkY2FzdHMgaGVyIGNvbW1pdG1lbnQgdHJhbnNhY3Rpb24g d2l0aCBhCj4+PiBmZWUtYnVtcGluZyBjaGlsZCAoMjAwdkIgd2l0aCA1MCwwMDBzYXQgZmVlcyB3 aGljaCBpcyBhIGdlbmVyb3VzCj4+PiAyNTBzYXQvdkIpLCBidXQgdGhpcyBkb2VzIG5vdCBtZWV0 IHRoZSBhYnNvbHV0ZSBmZWUgcmVxdWlyZW1lbnQuIFNoZQo+Pj4gd291bGQgbmVlZCB0byBhZGQg YW5vdGhlciA1MCwwMDBzYXQgdG8gcmVwbGFjZSBCb2IncyBjb21taXRtZW50Cj4+PiB0cmFuc2Fj dGlvbi4KPj4+Cj4+PiBEaXNhbGxvd2luZyBuZXcgdW5jb25maXJtZWQgaW5wdXRzIChSdWxlICMy KSBpbiBQYWNrYWdlIFJCRiB3b3VsZCBiZQo+Pj4gYnJva2VuIGZvciBwYWNrYWdlcyBjb250YWlu aW5nIHRyYW5zYWN0aW9ucyBhbHJlYWR5IGluIHRoZSBtZW1wb29sLAo+Pj4gZXhwbGFpbmVkIFto ZXJlXVs3XS4KPj4+Cj4+PiBOb3RlOiBJIG9yaWdpbmFsbHkgW3Byb3Bvc2VkXVs2XSBQYWNrYWdl IFJCRiB1c2luZyB0aGUgc2FtZSBSdWxlICMzCj4+PiBhbmQgIzQgYmVmb3JlIEkgcmVhbGl6ZWQg aG93IHNpZ25pZmljYW50IHRoaXMgcGlubmluZyBhdHRhY2sgaXMuIEknbQo+Pj4gcmV0cmFjdGlu ZyB0aGF0IHByb3Bvc2FsLCBhbmQgYSBuZXcgc2V0IG9mIFBhY2thZ2UgUkJGIHJ1bGVzIHdvdWxk Cj4+PiBmb2xsb3cgZnJvbSB3aGF0ZXZlciB0aGUgbmV3IGluZGl2aWR1YWwgUkJGIHJ1bGVzIGVu ZCB1cCBiZWluZy4KPj4+Cj4+PiAjIyMjIFNhbWUgVHhpZCBEaWZmZXJlbnQgV2l0bmVzcwo+Pj4K Pj4+IFR3byB0cmFuc2FjdGlvbnMgd2l0aCB0aGUgc2FtZSBub24td2l0bmVzcyBkYXRhIGJ1dCBk aWZmZXJlbnQKPj4+IHdpdG5lc3NlcyBoYXZlIHRoZSBzYW1lIHR4aWQgYnV0IGRpZmZlcmVudCB3 dHhpZCwgYW5kIHRoZSBzYW1lIGZlZSBidXQKPj4+IG5vdCBuZWNlc3NhcmlseSB0aGUgc2FtZSBm ZWVyYXRlLiBDdXJyZW50bHksIGlmIHdlIHNlZSBhIHRyYW5zYWN0aW9uCj4+PiB0aGF0IGhhcyB0 aGUgc2FtZSB0eGlkIGFzIG9uZSBpbiB0aGUgbWVtcG9vbCwgd2UgcmVqZWN0IGl0IGFzIGEKPj4+ IGR1cGxpY2F0ZSwgZXZlbiBpZiB0aGUgZmVlcmF0ZSBpcyBtdWNoIGhpZ2hlci4gSXQncyB1bmNs ZWFyIHRvIG1lIGlmCj4+PiB3ZSBoYXZlIGEgdmVyeSBzdHJvbmcgcmVhc29uIHRvIGNoYW5nZSB0 aGlzLCBidXQgbm90aW5nIGl0IGFzIGEKPj4+IGxpbWl0YXRpb24gb2Ygb3VyIGN1cnJlbnQgcmVw bGFjZW1lbnQgcG9saWN5LiBTZWUgWyMyNDAwN11bMTJdLgo+Pj4KPj4+ICMjIyBVc2VyIEludGVy ZmFjZQo+Pj4KPj4+ICMjIyMgVXNpbmcgVW5jb25maXJtZWQgVVRYT3MgdG8gRnVuZCBSZXBsYWNl bWVudHMKPj4+Cj4+PiBUaGUgcmVzdHJpY3Rpb24gb2Ygb25seSBhbGxvd2luZyBjb25maXJtZWQg VVRYT3MgZm9yIGZ1bmRpbmcgYQo+Pj4gZmVlLWJ1bXAgKFJ1bGUgIzIpIGNhbiBodXJ0IHVzZXJz IHRyeWluZyB0byBmZWUtYnVtcCB0aGVpcgo+Pj4gdHJhbnNhY3Rpb25zIGFuZCBjb21wbGljYXRl IHdhbGxldCBpbXBsZW1lbnRhdGlvbnMuIElmIHRoZSBvcmlnaW5hbAo+Pj4gdHJhbnNhY3Rpb24n cyBvdXRwdXQgdmFsdWUgaXNuJ3Qgc3VmZmljaWVudCB0byBmdW5kIGEgZmVlLWJ1bXAgYW5kL29y Cj4+PiBhbGwgb2YgdGhlIHVzZXIncyBvdGhlciBVVFhPcyBhcmUgdW5jb25maXJtZWQsIHRoZXkg bWlnaHQgbm90IGJlIGFibGUKPj4+IHRvIGZ1bmQgYSByZXBsYWNlbWVudCB0cmFuc2FjdGlvbi4g V2FsbGV0IGRldmVsb3BlcnMgYWxzbyBuZWVkIHRvCj4+PiB0cmVhdCBzZWxmLW93bmVkIHVuY29u ZmlybWVkIFVUWE9zIGFzIHVudXNhYmxlIGZvciBmZWUtYnVtcGluZywgd2hpY2gKPj4+IGFkZHMg Y29tcGxleGl0eSB0byB3YWxsZXQgbG9naWMuIEZvciBleGFtcGxlLCBzZWUgQkRLIGlzc3VlcyBb IzE0NF1bNF0KPj4+IGFuZCBbIzQxNF1bNV0uCj4+Pgo+Pj4gIyMjIyBJbnRlcmZhY2UgTm90IFN1 aXRhYmxlIGZvciBDb2luIFNlbGVjdGlvbgo+Pj4KPj4+IEN1cnJlbnRseSwgYSB1c2VyIGNhbm5v dCBzaW1wbHkgY3JlYXRlIGEgcmVwbGFjZW1lbnQgdHJhbnNhY3Rpb24KPj4+IHRhcmdldGluZyBh IHNwZWNpZmljIGZlZXJhdGUgb3IgbWVldGluZyBhIG1pbmltdW0gZmVlIGFtb3VudCBhbmQKPj4+ IGV4cGVjdCB0byBtZWV0IHRoZSBSQkYgY3JpdGVyaWEuIFRoZSBmZWUgYW1vdW50IGRlcGVuZHMg b24gdGhlIHNpemUgb2YKPj4+IHRoZSByZXBsYWNlbWVudCB0cmFuc2FjdGlvbiwgYW5kIGZlZXJh dGUgaXMgYWxtb3N0IGlycmVsZXZhbnQuCj4+Pgo+Pj4gQml0Y29pbiBDb3JlJ3MgYGJ1bXBmZWVg IGRvZXNuJ3QgdXNlIHRoZSBSQkYgcnVsZXMgd2hlbiBmdW5kaW5nIHRoZQo+Pj4gcmVwbGFjZW1l bnQuIEl0IFtlc3RpbWF0ZXNdWzEzXSBhIGZlZXJhdGUgd2hpY2ggaXMgIndhbGxldCBpbmNyZW1l bnRhbAo+Pj4gcmVsYXkgZmVlIiAoYSBjb25zZXJ2YXRpdmUgb3ZlcmVzdGltYXRpb24gb2YgdGhl IG5vZGUncyBpbmNyZW1lbnRhbAo+Pj4gcmVsYXkgZmVlKSBoaWdoZXIgdGhhbiB0aGUgb3JpZ2lu YWwgdHJhbnNhY3Rpb24sIHNlbGVjdHMgY29pbnMgZm9yCj4+PiB0aGF0IGZlZXJhdGUsIGFuZCBo b3BlcyB0aGF0IGl0IG1lZXRzIHRoZSBSQkYgcnVsZXMuIEl0IG5ldmVyIGZhaWxzCj4+PiBSdWxl ICMzIGFuZCAjNCBiZWNhdXNlIGl0IHVzZXMgYWxsIG9yaWdpbmFsIGlucHV0cyBhbmQgcmVmdXNl cyB0bwo+Pj4gYnVtcCBhIHRyYW5zYWN0aW9uIHdpdGggbWVtcG9vbCBkZXNjZW5kYW50cy4KPj4+ Cj4+PiBUaGlzIGlzIHN1Ym9wdGltYWwsIGJ1dCBpcyBkZXNpZ25lZCB0byB3b3JrIHdpdGggdGhl IGNvaW4gc2VsZWN0aW9uCj4+PiBlbmdpbmU6IHNlbGVjdCBhIGZlZXJhdGUgZmlyc3QsIGFuZCB0 aGVuIGFkZCBmZWVzIHRvIGNvdmVyIGl0Lgo+Pj4gRm9sbG93aW5nIHRoZSBleGFjdCBSQkYgcnVs ZXMgd291bGQgcmVxdWlyZSB3b3JraW5nIHRoZSBvdGhlciB3YXkKPj4+IGFyb3VuZDogYmFzZWQg b24gaG93IG11Y2ggZmVlcyB3ZSd2ZSBhZGRlZCB0byB0aGUgdHJhbnNhY3Rpb24gYW5kIGl0cwo+ Pj4gY3VycmVudCBzaXplLCBjYWxjdWxhdGUgdGhlIGZlZXJhdGUgdG8gc2VlIGlmIHdlIG1lZXQg UnVsZSAjNC4KPj4+Cj4+PiBXaGlsZSB0aGlzIGlzbid0IGNvbXBsZXRlbHkgYnJva2VuLCBhbmQg dGhlIHVzZXIgaW50ZXJmYWNlIGlzCj4+PiBzZWNvbmRhcnkgdG8gdGhlIHNhZmV0eSBvZiB0aGUg bWVtcG9vbCBwb2xpY3ksIHdlIGNhbiBkbyBtdWNoIGJldHRlci4KPj4+IEEgbXVjaCBtb3JlIHVz ZXItZnJpZW5kbHkgaW50ZXJmYWNlIHdvdWxkIGRlcGVuZCAqb25seSogb24gdGhlCj4+PiBmZWUg YW5kIHNpemUgb2YgdGhlIG9yaWdpbmFsIHRyYW5zYWN0aW9ucy4KPj4+Cj4+PiAjIyMgVXBkYXRl cyB0byBNZW1wb29sIGFuZCBNaW5pbmcKPj4+Cj4+PiBTaW5jZSBSQkYgd2FzIGZpcnN0IGltcGxl bWVudGVkLCBhIG51bWJlciBvZiBpbXByb3ZlbWVudHMgaGF2ZSBiZWVuCj4+PiBtYWRlIHRvIG1l bXBvb2wgYW5kIG1pbmluZyBsb2dpYy4gRm9yIGV4YW1wbGUsIHdlIG5vdyB1c2UgYW5jZXN0b3IK Pj4+IGZlZXJhdGVzIGluIG1pbmluZyAoYWxsb3dpbmcgQ1BGUCksIGFuZCBrZWVwIHRyYWNrIG9m IGFuY2VzdG9yCj4+PiBwYWNrYWdlcyBpbiB0aGUgbWVtcG9vbC4KPj4+Cj4+PiAjIyBJZGVhcyBm b3IgSW1wcm92ZW1lbnRzCj4+Pgo+Pj4gIyMjIEdvYWxzCj4+Pgo+Pj4gVG8gc3VtbWFyaXplLCB0 aGVzZSBzZWVtIHRvIGJlIGRlc2lyZWQgY2hhbmdlcywgaW4gb3JkZXIgb2YgcHJpb3JpdHk6Cj4+ Pgo+Pj4gMS4gUmVtb3ZlIFJ1bGUgIzMuIFRoZSByZXBsYWNlbWVudCBzaG91bGQgbm90IGJlICpy ZXF1aXJlZCogdG8gcGF5Cj4+PiBoaWdoZXIgYWJzb2x1dGUgZmVlcy4KPj4+Cj4+PiAyLiBNYWtl IGl0IGltcG9zc2libGUgZm9yIGEgcmVwbGFjZW1lbnQgdHJhbnNhY3Rpb24gdG8gaGF2ZSBhIGxv d2VyCj4+PiBtaW5pbmcgc2NvcmUgdGhhbiB0aGUgb3JpZ2luYWwgdHJhbnNhY3Rpb24ocykuIFRo aXMgd291bGQgZWxpbWluYXRlCj4+PiB0aGUgYFNJR0hBU0hcX0FOWU9ORUNBTlBBWWAgcGlubmlu ZyBhdHRhY2suCj4+Pgo+Pj4gMy4gUmVtb3ZlIFJ1bGUgIzIuIEFkZGluZyBuZXcgdW5jb25maXJt ZWQgaW5wdXRzIHNob3VsZCBiZSBhbGxvd2VkLgo+Pj4KPj4+IDQuIENyZWF0ZSBhIG1vcmUgaGVs cGZ1bCBpbnRlcmZhY2UgdGhhdCBoZWxwcyB3YWxsZXQgZnVuZCByZXBsYWNlbWVudAo+Pj4gdHJh bnNhY3Rpb25zIHRoYXQgYWltIGZvciBhIGZlZXJhdGUgYW5kIGZlZS4KPj4+Cj4+PiAjIyMgQSBE aWZmZXJlbnQgTW9kZWwgZm9yIEZlZXMKPj4+Cj4+PiBGb3IgaW5jZW50aXZlIGNvbXBhdGliaWxp dHksIEkgYmVsaWV2ZSB0aGVyZSBhcmUgZGlmZmVyZW50Cj4+PiBmb3JtdWxhdGlvbnMgd2Ugc2hv dWxkIGNvbnNpZGVyLiBNb3N0IGltcG9ydGFudGx5LCBpZiB3ZSB3YW50IHRvIGdldAo+Pj4gcmlk IG9mIHRoZSBhYnNvbHV0ZSBmZWUgcnVsZSwgd2UgY2FuIG5vIGxvbmdlciB0aGluayBvZiBpdCBh cyAidGhlCj4+PiB0cmFuc2FjdGlvbiBuZWVkcyB0byBwYXkgZm9yIGl0cyBvd24gYmFuZHdpZHRo LCIgc2luY2Ugd2Ugd29uJ3QgYWx3YXlzCj4+PiBiZSBnZXR0aW5nIGFkZGl0aW9uYWwgZmVlcy4g VGhhdCBtZWFucyB3ZSBuZWVkIGEgbmV3IG1ldGhvZCBvZgo+Pj4gcmF0ZS1saW1pdGluZyByZXBs YWNlbWVudHMgdGhhdCBkb2Vzbid0IHJlcXVpcmUgYWRkaXRpb25hbCBmZWVzIGV2ZXJ5Cj4+PiB0 aW1lLgo+Pj4KPj4+IFdoaWxlIGl0IG1ha2VzIHNlbnNlIHRvIHRoaW5rIGFib3V0IG1vbmV0YXJ5 IGNvc3RzIHdoZW4gbGF1bmNoaW5nIGEKPj4+IHNwZWNpZmljIHR5cGUgb2YgYXR0YWNrLCBnaXZl biB0aGF0IHRoZSBmZWVzIGFyZSBwYWlkIHRvIHRoZSBtaW5lciBhbmQKPj4+IG5vdCB0byB0aGUg bWVtcG9vbCBvcGVyYXRvcnMsIG1heWJlIGl0IGRvZXNuJ3QgbWFrZSBtdWNoIHNlbnNlIHRvCj4+ PiB0aGluayBhYm91dCAicGF5aW5nIGZvciBiYW5kd2lkdGgiLiBNYXliZSB3ZSBzaG91bGQgaW1w bGVtZW50Cj4+PiB0cmFuc2FjdGlvbiB2YWxpZGF0aW9uIHJhdGUtbGltaXRpbmcgZGlmZmVyZW50 bHksIGUuZy4gYnVpbGRpbmcgaXQKPj4+IGludG8gdGhlIFAyUCBsYXllciBpbnN0ZWFkIG9mIHRo ZSBtZW1wb29sIHBvbGljeSBsYXllci4KPj4+Cj4+PiBSZWNlbnRseSwgU3VoYXMgZ2F2ZSBhIFtm b3JtdWxhdGlvbl1bOF0gZm9yIGluY2VudGl2ZSBjb21wYXRpYmlsaXR5Cj4+PiB0aGF0IG1hZGUg c2Vuc2UgdG8gbWU6ICJhcmUgdGhlIGZlZXMgZXhwZWN0ZWQgdG8gYmUgcGFpZCBpbiB0aGUgbmV4 dAo+Pj4gKE4/KSBibG9ja3MgaGlnaGVyIG9yIGxvd2VyIGlmIHdlIHByb2Nlc3MgdGhpcyB0cmFu c2FjdGlvbj8iCj4+Pgo+Pj4gSSBzdGFydGVkIGJ5IHRoaW5raW5nIGFib3V0IHRoaXMgd2hlcmUg Tj0xIG9yIGAxICsgcGAuCj4+PiBIZXJlLCBhIHJhdGlvbmFsIG1pbmVyIGlzIGxvb2tpbmcgYXQg d2hhdCBmZWVzIHRoZXkgd291bGQKPj4+IGNvbGxlY3QgaW4gdGhlIG5leHQgYmxvY2ssIGFuZCB0 aGVuIHNvbWUgcHJvcG9ydGlvbiBgcGAgb2YgdGhlIHJlc3Qgb2YKPj4+IHRoZSBibG9ja3MgYmFz ZWQgb24gdGhlaXIgaGFzaHJhdGUuIFdlJ3JlIGFzc3VtaW5nIGBwYCBpc24ndCAqc28gaGlnaCoK Pj4+IHRoYXQgdGhleSB3b3VsZCBiZSBva2F5IHdpdGggbG93ZXIgYWJzb2x1dGUgZmVlcyBpbiB0 aGUgbmV4dCAxIGJsb2NrLgo+Pj4gV2UncmUgYWxzbyBhc3N1bWluZyBgcGAgaXNuJ3QgKnNvIGxv dyogdGhhdCB0aGUgbWluZXIgZG9lc24ndCBjYXJlCj4+PiBhYm91dCB3aGF0J3MgbGVmdCBvZiB0 aGUgbWVtcG9vbCBhZnRlciB0aGlzIGJsb2NrLgo+Pj4KPj4+IEEgdHdlYWsgdG8gdGhpcyBmb3Jt dWxhdGlvbiBpcyAiaWYgd2UgcHJvY2VzcyB0aGlzIHRyYW5zYWN0aW9uLCB3b3VsZAo+Pj4gdGhl IGZlZXMgaW4gdGhlIG5leHQgMSBibG9jayBoaWdoZXIgb3IgbG93ZXIsIGFuZCBpcyB0aGUgZmVl cmF0ZQo+Pj4gZGVuc2l0eSBvZiB0aGUgcmVzdCBvZiB0aGUgbWVtcG9vbCBoaWdoZXIgb3IgbG93 ZXI/IiBUaGlzIGlzIHByZXR0eQo+Pj4gc2ltaWxhciwgd2hlcmUgTj0xLCBidXQgd2UgY29uc2lk ZXIgdGhlIHJlc3Qgb2YgdGhlIG1lbXBvb2wgYnkgZmVlcmF0ZQo+Pj4gcmF0aGVyIHRoYW4gZmVl cy4KPj4+Cj4+PiAjIyMgTWluaW5nIFNjb3JlIG9mIGEgTWVtcG9vbCBUcmFuc2FjdGlvbgo+Pj4K Pj4+IFdlIGFyZSBvZnRlbiBpbnRlcmVzdGVkIGluIGZpbmRpbmcgb3V0IHdoYXQKPj4+IHRoZSAi bWluaW5nIHNjb3JlIiBvZiBhIHRyYW5zYWN0aW9uIGluIHRoZSBtZW1wb29sIGlzLiBUaGF0IGlz LCB3aGVuCj4+PiB0aGUgdHJhbnNhY3Rpb24gaXMgY29uc2lkZXJlZCBpbiBibG9jayB0ZW1wbGF0 ZSBidWlsZGluZywgd2hhdCBpcyB0aGUKPj4+IGZlZXJhdGUgaXQgaXMgY29uc2lkZXJlZCBhdD8K Pj4+Cj4+PiBPYnZpb3VzbHksIGl0J3Mgbm90IHRoZSB0cmFuc2FjdGlvbidzIGluZGl2aWR1YWwg ZmVlcmF0ZS4gQml0Y29pbiBDb3JlCj4+PiBbbWluaW5nIGNvZGUgc29ydHNdWzE0XSB0cmFuc2Fj dGlvbnMgYnkgdGhlaXIgYW5jZXN0b3IgZmVlcmF0ZSBhbmQKPj4+IGluY2x1ZGVzIHRoZW0gcGFj a2FnZXMgYXQgYSB0aW1lLCBrZWVwaW5nIHRyYWNrIG9mIGhvdyB0aGlzIGFmZmVjdHMgdGhlCj4+ PiBwYWNrYWdlIGZlZXJhdGVzIG9mIHJlbWFpbmluZyB0cmFuc2FjdGlvbnMgaW4gdGhlIG1lbXBv b2wuCj4+Pgo+Pj4gKmFuY2VzdG9yIGZlZXJhdGUqOiBBbmNlc3RvciBmZWVyYXRlIGlzIGVhc2ls eSBhY2Nlc3NpYmxlIGluZm9ybWF0aW9uLAo+Pj4gYnV0IGl0J3Mgbm90IGFjY3VyYXRlIGVpdGhl ciwgYmVjYXVzZSBpdCBkb2Vzbid0IHRha2UgaW50byBhY2NvdW50IHRoZQo+Pj4gZmFjdCB0aGF0 IHN1YnNldHMgb2YgYSB0cmFuc2FjdGlvbidzIGFuY2VzdG9yIHNldCBjYW4gYmUgaW5jbHVkZWQK Pj4+IHdpdGhvdXQgaXQuIEZvciBleGFtcGxlLCBhbmNlc3RvcnMgbWF5IGhhdmUgaGlnaCBmZWVy YXRlcyBvbiB0aGVpciBvd24KPj4+IG9yIHdlIG1heSBoYXZlIFtoaWdoIGZlZXJhdGUgc2libGlu Z3NdWzhdLgo+Pj4KPj4+IFRMRFI6ICpMb29raW5nIGF0IHRoZSBjdXJyZW50IGFuY2VzdG9yIGZl ZXJhdGUgb2YgYSB0cmFuc2FjdGlvbiBpcwo+Pj4gaW5zdWZmaWNpZW50IHRvIHRlbGwgdXMgd2hh dCBmZWVyYXRlIGl0IHdpbGwgYmUgY29uc2lkZXJlZCBhdCB3aGVuCj4+PiBidWlsZGluZyBhIGJs b2NrIHRlbXBsYXRlIGluIHRoZSBmdXR1cmUuKgo+Pj4KPj4+ICptaW4oaW5kaXZpZHVhbCBmZWVy YXRlLCBhbmNlc3RvciBmZWVyYXRlKSo6IEFub3RoZXIKPj4+IGhldXJpc3RpYyB0aGF0IGlzIHNp bXBsZSB0byBjYWxjdWxhdGUgYmFzZWQgb24gY3VycmVudCBtZW1wb29sIHRvb2xpbmcKPj4+IGlz IHRvIHVzZSB0aGUgW21pbmltdW0gb2YgYSB0cmFuc2FjdGlvbidzIGluZGl2aWR1YWwgc2NvcmUg YW5kIGl0cwo+Pj4gYW5jZXN0b3Igc2NvcmVdWzEwXSBhcyBhIGNvbnNlcnZhdGl2ZSBtZWFzdXJl LiBCdXQgdGhpcyBjYW4KPj4+IG92ZXJlc3RpbWF0ZSBhcyB3ZWxsIChzZWUgdGhlIGV4YW1wbGUg YmVsb3cpLgo+Pj4KPj4+ICptaW4gYW5jZXN0b3IgZmVlcmF0ZSh0eCArIHBvc3NpYmxlIGFuY2Vz dG9yIHN1YnNldHMpKiBXZSBjYW4gYWxzbwo+Pj4gdGFrZSB0aGUgbWluaW11bSBvZiBldmVyeSBw b3NzaWJsZSBhbmNlc3RvciBzdWJzZXQsIGJ1dCB0aGlzIGNhbiBiZQo+Pj4gY29tcHV0YXRpb25h bGx5IGV4cGVuc2l2ZSBzaW5jZSB0aGVyZSBjYW4gYmUgbG90cyBhbmQgbG90cyBvZiBhbmNlc3Rv cgo+Pj4gc3Vic2V0cy4KPj4+Cj4+PiAqbWF4IGFuY2VzdG9yIGZlZXJhdGUodHggKyBwb3NzaWJs ZSBkZXNjZW5kYW50IHN1YnNldHMpKjogQW5vdGhlciBpZGVhCj4+PiBpcyB0byB1c2UgdGhlIFtt YXhpbXVtIGFuY2VzdG9yIHNjb3JlIG9mIHRoZSB0cmFuc2FjdGlvbiArIGVhY2ggb2YgaXRzCj4+ PiBkZXNjZW5kYW50c11bOV0uIFRoaXMgZG9lc24ndCB3b3JrIGVpdGhlcjsgaXQgaGFzIHRoZSBz YW1lIGJsaW5kc3BvdAo+Pj4gb2YgYW5jZXN0b3Igc3Vic2V0cyBiZWluZyBtaW5lZCBvbiB0aGVp ciBvd24uCj4+Pgo+Pj4gIyMjIyBNaW5pbmcgU2NvcmUgRXhhbXBsZQo+Pj4KPj4+IEhlcmUncyBh biBleGFtcGxlIGlsbHVzdHJhdGluZyB3aHkgbWluaW5nIHNjb3JlIGlzIHRyaWNreSB0bwo+Pj4g ZWZmaWNpZW50bHkgY2FsY3VsYXRlIGZvciBtZW1wb29sIHRyYW5zYWN0aW9uczoKPj4+Cj4+PiBM ZXQncyBzYXkgeW91IGhhdmUgc2FtZS1zaXplIHRyYW5zYWN0aW9ucyBBICgyMXNhdC92QiksIEIg KDFzYXQvdkIpLAo+Pj4gQyg5c2F0L3ZCKSwgRCg1c2F0L3ZCKS4KPj4+IFRoZSBsYXlvdXQgaXM6 IGdyYW5kcGFyZW50IEEsIHBhcmVudCBCLCBhbmQgdHdvIGNoaWxkcmVuIEMgYW5kIEQuCj4+Pgo+ Pj4gYGBgCj4+PiBBCj4+PiBeCj4+PiBCCj4+PiBeIF4KPj4+IEMgRAo+Pj4gYGBgCj4+Pgo+Pj4g QSBtaW5lciB1c2luZyBhbmNlc3RvciBwYWNrYWdlcyB0byBidWlsZCBibG9jayB0ZW1wbGF0ZXMg d2lsbCBmaXJzdAo+Pj4gaW5jbHVkZSBBIHdpdGggYSBtaW5pbmcgc2NvcmUgb2YgMjEuIE5leHQs IHRoZSBtaW5lciB3aWxsIGluY2x1ZGUgQiBhbmQKPj4+IEMgd2l0aCBhIG1pbmluZyBzY29yZSBv ZiA2LiBUaGlzIGxlYXZlcyBELCB3aXRoIGEgbWluaW5nIHNjb3JlIG9mIDUuCj4+Pgo+Pj4gTm90 ZTogaW4gdGhpcyBjYXNlLCBtaW5pbmcgYnkgYW5jZXN0b3IgZmVlcmF0ZSByZXN1bHRzIGluIHRo ZSBtb3N0Cj4+PiByYXRpb25hbCBkZWNpc2lvbnMsIGJ1dCBbYSBjYW5kaWRhdGUgc2V0LWJhc2Vk IGFwcHJvYWNoXVsxMF0gd2hpY2gKPj4+IG1ha2VzIGFuY2VzdG9yIGZlZXJhdGUgbXVjaCBsZXNz IHJlbGV2YW50IGNvdWxkCj4+PiBiZSBtb3JlIGFkdmFudGFnZW91cyBpbiBvdGhlciBzaXR1YXRp b25zLgo+Pj4KPj4+IEhlcmUgaXMgYSBjaGFydCBzaG93aW5nIHRoZSAidHJ1ZSIgbWluaW5nIHNj b3JlIGFsb25nc2lkZSB0aGUgdmFsdWVzCj4+PiBjYWxjdWxhdGluZyB1c2luZyBpbXBlcmZlY3Qg aGV1cmlzdGljcyBkZXNjcmliZWQgYWJvdmUuIEFsbCBvZiB0aGVtCj4+PiBjYW4gb3ZlcmVzdGlt YXRlIG9yIHVuZGVyZXN0aW1hdGUuCj4+Pgo+Pj4gYGBgCj4+PiBBIEIgQyBECj4+PiBtaW5pbmcg c2NvcmUgfCAyMSB8IDYgfCA2IHwgNSB8Cj4+PiBhbmNlc3RvciBmZWVyYXRlIHwgMjEgfCAxMSB8 IDEwLjMgfCA5IHwKPj4+IG1pbihpbmRpdmlkdWFsLCBhbmNlc3RvcikgfCAyMSB8IDEgfCA5IHwg NSB8Cj4+PiBtaW4odHggKyBhbmNlc3RvciBzdWJzZXRzKSB8IDIxIHwgMSB8IDUgfCAzIHwKPj4+ IG1heCh0eCArIGRlc2NlbmRhbnRzIHN1YnNldHMpIHwgMjEgfCA5IHwgOSB8IDUgfAo+Pj4KPj4+ IGBgYAo+Pj4KPj4+IFBvc3NpYmx5IHRoZSBiZXN0IHNvbHV0aW9uIGZvciBmaW5kaW5nIHRoZSAi bWluaW5nIHNjb3JlIiBvZiBhCj4+PiB0cmFuc2FjdGlvbiBpcyB0byBidWlsZCBhIGJsb2NrIHRl bXBsYXRlLCBzZWUgd2hhdCBmZWVyYXRlIGVhY2gKPj4+IHBhY2thZ2UgaXMgaW5jbHVkZWQgYXQu IFBlcmhhcHMgYXQgc29tZSBjdXRvZmYsIHJlbWFpbmluZyBtZW1wb29sCj4+PiB0cmFuc2FjdGlv bnMgY2FuIGJlIGVzdGltYXRlZCB1c2luZyBzb21lIGhldXJpc3RpYyB0aGF0IGxlYW5zCj4+PiB7 b3ZlcmVzdGltYXRpbmcsIHVuZGVyZXN0aW1hdGluZ30gZGVwZW5kaW5nIG9uIHRoZSBzaXR1YXRp b24uCj4+Pgo+Pj4gTWluaW5nIHNjb3JlIHNlZW1zIHRvIGJlIHJlbGV2YW50IGluIG11bHRpcGxl IHBsYWNlczogTXVyY2ggYW5kIEkKPj4+IHJlY2VudGx5IFtmb3VuZF1bM10gdGhhdCBpdCB3b3Vs ZCBiZSB2ZXJ5IGltcG9ydGFudCBpbgo+Pj4gImFuY2VzdG9yLWF3YXJlIiBmdW5kaW5nIG9mIHRy YW5zYWN0aW9ucyAodGhlIHdhbGxldCBkb2Vzbid0Cj4+PiBpbmNvcnBvcmF0ZSBhbmNlc3RvciBm ZWVzIHdoZW4gdXNpbmcgdW5jb25maXJtZWQgdHJhbnNhY3Rpb25zIGluIGNvaW4KPj4+IHNlbGVj dGlvbiwgd2hpY2ggaXMgYSBidWcgd2Ugd2FudCB0byBmaXgpLgo+Pj4KPj4+IEluIGdlbmVyYWws IGl0IHdvdWxkIGJlIG5pY2UgdG8ga25vdyB0aGUgZXhhY3QgbWluaW5nIHByaW9yaXR5IG9mCj4+ PiBvbmUncyB1bmNvbmZpcm1lZCB0cmFuc2FjdGlvbiBpcy4gSSBjYW4gdGhpbmsgb2YgYSBmZXcg YmxvY2svbWVtcG9vbAo+Pj4gZXhwbG9yZXJzIHdobyBtaWdodCB3YW50IHRvIGRpc3BsYXkgdGhp cyBpbmZvcm1hdGlvbiBmb3IgdXNlcnMuCj4+Pgo+Pj4gIyMjIFJCRiBJbXByb3ZlbWVudCBQcm9w b3NhbHMKPj4+Cj4+PiBBZnRlciBzcGVha2luZyB0byBxdWl0ZSBhIGZldyBwZW9wbGUsIGhlcmUg YXJlIHNvbWUgc3VnZ2VzdGlvbnMKPj4+IGZvciBpbXByb3ZlbWVudHMgdGhhdCBJIGhhdmUgaGVh cmQ6Cj4+Pgo+Pj4gKiBUaGUgYW5jZXN0b3Igc2NvcmUgb2YgdGhlIHJlcGxhY2VtZW50IG11c3Qg YmUgezUsIDEwLCBOfSUgaGlnaGVyCj4+PiB0aGFuIHRoYXQgb2YgZXZlcnkgb3JpZ2luYWwgdHJh bnNhY3Rpb24uCj4+Pgo+Pj4gKiBUaGUgYW5jZXN0b3Igc2NvcmUgb2YgdGhlIHJlcGxhY2VtZW50 IG11c3QgYmUgMXNhdC92QiBoaWdoZXIgdGhhbgo+Pj4gdGhhdCBvZiBldmVyeSBvcmlnaW5hbCB0 cmFuc2FjdGlvbi4KPj4+Cj4+PiAqIElmIHRoZSBvcmlnaW5hbCB0cmFuc2FjdGlvbiBpcyBpbiB0 aGUgdG9wIHswLjc1TXZCLCAxTXZCfSBvZiB0aGUKPj4+IG1lbXBvb2wsIGFwcGx5IHRoZSBjdXJy ZW50IHJ1bGVzIChhYnNvbHV0ZSBmZWVzIG11c3QgaW5jcmVhc2UgYW5kCj4+PiBwYXkgZm9yIHRo ZSByZXBsYWNlbWVudCB0cmFuc2FjdGlvbidzIG5ldyBiYW5kd2lkdGgpLiBPdGhlcndpc2UsIHVz ZSBhCj4+PiBmZWVyYXRlLW9ubHkgcnVsZS4KPj4+Cj4+PiAqIElmIGZlZXMgZG9uJ3QgaW5jcmVh c2UsIHRoZSBzaXplIG9mIHRoZSByZXBsYWNlbWVudCB0cmFuc2FjdGlvbiBtdXN0Cj4+PiBkZWNy ZWFzZSBieSBhdCBsZWFzdCBOJS4KPj4+Cj4+PiAqIFJhdGUtbGltaXQgaG93IG1hbnkgcmVwbGFj ZW1lbnRzIHdlIGFsbG93IHBlciBwcmV2b3V0Lgo+Pj4KPj4+ICogUmF0ZS1saW1pdCB0cmFuc2Fj dGlvbiB2YWxpZGF0aW9uIGluIGdlbmVyYWwsIHBlciBwZWVyLgo+Pj4KPj4+IFBlcmhhcHMgc29t ZSBvdGhlcnMgb24gdGhlIG1haWxpbmcgbGlzdCBjYW4gY2hpbWUgaW4gdG8gdGhyb3cgb3RoZXIK Pj4+IGlkZWFzIGludG8gdGhlIHJpbmcgYW5kL29yIGNvbWJpbmUgc29tZSBvZiB0aGVzZSBydWxl cyBpbnRvIGEgc2Vuc2libGUKPj4+IHBvbGljeS4KPj4+Cj4+PiAjIyMjIFJlcGxhY2UgYnkgRmVl cmF0ZSBPbmx5Cj4+Pgo+Pj4gSSBkb24ndCB0aGluayB0aGVyZSdzIGdvaW5nIHRvIGJlIGEgc2lu Z2xlLWxpbmUgZmVlcmF0ZS1iYXNlZAo+Pj4gcnVsZSB0aGF0IGNhbiBpbmNvcnBvcmF0ZSBldmVy eXRoaW5nIHdlIG5lZWQuCj4+PiBPbiBvbmUgaGFuZCwgYSBmZWVyYXRlLW9ubHkgYXBwcm9hY2gg aGVscHMgZWxpbWluYXRlIHRoZSBpc3N1ZXMKPj4+IGFzc29jaWF0ZWQgd2l0aCBSdWxlICMzLiBP biB0aGUgb3RoZXIgaGFuZCwgSSBiZWxpZXZlIHRoZSBtYWluIGNvbmNlcm4KPj4+IHdpdGggYSBm ZWVyYXRlLW9ubHkgYXBwcm9hY2ggaXMgaG93IHRvIHJhdGUgbGltaXQgcmVwbGFjZW1lbnRzLiBX ZQo+Pj4gZG9uJ3Qgd2FudCB0byBlbmFibGUgYW4gYXR0YWNrIHN1Y2ggYXM6Cj4+Pgo+Pj4gMS4g QXR0YWNrZXIgYnJvYWRjYXN0cyBsYXJnZSwgbG93LWZlZXJhdGUgdHJhbnNhY3Rpb24sIGFuZCBh dHRhY2hlcyBhCj4+PiBjaGFpbiBvZiBkZXNjZW5kYW50cy4KPj4+Cj4+PiAyLiBUaGUgYXR0YWNr ZXIgcmVwbGFjZXMgdGhlIHRyYW5zYWN0aW9uIHdpdGggYSBzbWFsbGVyIGJ1dCBoaWdoZXIKPj4+ IGZlZXJhdGUgdHJhbnNhY3Rpb24sIGF0dGFjaGluZyBhIG5ldyBjaGFpbiBvZiBkZXNjZW5kYW50 cy4KPj4+Cj4+PiAzLiBSZXBlYXQgMTAwMCB0aW1lcy4KPj4+Cj4+PiAjIyMjIEZlZXMgaW4gTmV4 dCBCbG9jayBhbmQgRmVlcmF0ZSBmb3IgdGhlIFJlc3Qgb2YgdGhlIE1lbXBvb2wKPj4+Cj4+PiBQ ZXJoYXBzIHdlIGNhbiBsb29rIGF0IHJlcGxhY2VtZW50cyBsaWtlIHRoaXM6Cj4+Pgo+Pj4gMS4g Q2FsY3VsYXRlIHRoZSBkaXJlY3RseSBjb25mbGljdGluZyB0cmFuc2FjdGlvbnMgYW5kLCB3aXRo IHRoZWlyCj4+PiBkZXNjZW5kYW50cywgdGhlIG9yaWdpbmFsIHRyYW5zYWN0aW9ucy4gQ2hlY2sg c2lnbmFsaW5nLiBMaW1pdCB0aGUKPj4+IHRvdGFsIHZvbHVtZSAoZS5nLiBjYW4ndCBiZSBtb3Jl IHRoYW4gMTAwIHRvdGFsIG9yIDFNdkIgb3Igc29tZXRoaW5nKS4KPj4+Cj4+PiAyLiBGaW5kIHdo aWNoIG9yaWdpbmFsIHRyYW5zYWN0aW9ucyB3b3VsZCBiZSBpbiB0aGUgbmV4dCB+MSBibG9jay4g VGhlCj4+PiByZXBsYWNlbWVudCBtdXN0IHBheSBhdCBsZWFzdCB0aGlzIGFtb3VudCArIFglIGlu IGFic29sdXRlIGZlZXMuIFRoaXMKPj4+IGd1YXJhbnRlZXMgdGhhdCB0aGUgZmVlcyBvZiB0aGUg bmV4dCBibG9jayBkb2Vzbid0IGRlY3JlYXNlLgo+Pj4KPj4+IDMuIEZpbmQgd2hpY2ggdHJhbnNh Y3Rpb25zIHdvdWxkIGJlIGxlZnQgaW4gdGhlIG1lbXBvb2wgYWZ0ZXIgdGhhdCB+MQo+Pj4gYmxv Y2suIFRoZSByZXBsYWNlbWVudCdzIGZlZXJhdGUgbXVzdCBiZSBZJSBoaWdoZXIgdGhhbiB0aGUg bWF4aW11bQo+Pj4gbWluaW5nIHNjb3JlIG9mIHRoZXNlIHRyYW5zYWN0aW9ucy4gVGhpcyBndWFy YW50ZWVzIHRoYXQgeW91IG5vdyBoYXZlCj4+PiBvbmx5ICpiZXR0ZXIqIGNhbmRpZGF0ZXMgaW4g eW91ciBhZnRlci10aGlzLWJsb2NrIG1lbXBvb2wgdGhhbiB5b3UgZGlkCj4+PiBiZWZvcmUsIGV2 ZW4gaWYgdGhlIHNpemUgYW5kIGZlZXMgdGhlIHRyYW5zYWN0aW9ucyBkZWNyZWFzZS4KPj4+Cj4+ PiA0LiBOb3cgeW91IGhhdmUgdHdvIG51bWJlcnM6IGEgbWluaW11bSBhYnNvbHV0ZSBmZWUgYW1v dW50IGFuZCBhCj4+PiBtaW5pbXVtIGZlZXJhdGUuIENoZWNrIHRvIHNlZSBpZiB0aGUgcmVwbGFj ZW1lbnQocykgbWVldCB0aGVzZQo+Pj4gbWluaW11bXMuIEFsc28sIGEgd2FsbGV0IHdvdWxkIGJl IGFibGUgdG8gYXNrIHRoZSBub2RlICJXaGF0IGZlZSBhbmQKPj4+IGZlZXJhdGUgd291bGQgSSBu ZWVkIHRvIHB1dCBvbiBhIHRyYW5zYWN0aW9uIHJlcGxhY2luZyB0aGlzPyIgYW5kIHVzZQo+Pj4g dGhpcyBpbmZvcm1hdGlvbiB0byBmdW5kIGEgcmVwbGFjZW1lbnQgdHJhbnNhY3Rpb24sIHdpdGhv dXQgbmVlZGluZyB0bwo+Pj4gZ3Vlc3Mgb3Igb3ZlcnNob290Lgo+Pj4KPj4+IE9idmlvdXNseSwg dGhlcmUgYXJlIHNvbWUgbWFnaWMgbnVtYmVycyBtaXNzaW5nIGhlcmUuIFggYW5kIFkgYXJlCj4+ PiBUQkQgY29uc3RhbnRzIHRvIGVuc3VyZSB3ZSBoYXZlIHNvbWUga2luZCBvZiByYXRlIGxpbWl0 aW5nIGZvciB0aGUKPj4+IG51bWJlciBvZiByZXBsYWNlbWVudHMgYWxsb3dlZCB1c2luZyBzb21l IHNldCBvZiBmZWVzLgo+Pj4KPj4+IFdoYXQgc2hvdWxkIHRoZXkgYmU/IFdlIGNhbiBkbyBzb21l IGFyaXRobWV0aWMgdG8gc2VlIHdoYXQgaGFwcGVucyBpZgo+Pj4geW91IHN0YXJ0IHdpdGggdGhl IGJpZ2dlc3QvbG93ZXN0IGZlZXJhdGUgdHJhbnNhY3Rpb24gYW5kIGRvIGEgYnVuY2gKPj4+IG9m IHJlcGxhY2VtZW50cy4gTWF5YmUgd2UgZW5kIHVwIHdpdGggdmFsdWVzIHRoYXQgYXJlIGhpZ2gg ZW5vdWdoIHRvCj4+PiBwcmV2ZW50IGFidXNlIGFuZCBtYWtlIHNlbnNlIGZvciBhcHBsaWNhdGlv bnMvdXNlcnMgdGhhdCBkbyBSQkYuCj4+Pgo+Pj4gIyMjIE1lbXBvb2wgQ2hhbmdlcyBOZWVkIGZv ciBJbXBsZW1lbnRhdGlvbgo+Pj4KPj4+IEFzIGRlc2NyaWJlZCBpbiB0aGUgbWluaW5nIHNjb3Jl IHNlY3Rpb24gYWJvdmUsCj4+PiB3ZSBtYXkgd2FudCBhZGRpdGlvbmFsIHRvb2xpbmcgdG8gbW9y ZSBhY2N1cmF0ZWx5IGFzc2Vzcwo+Pj4gdGhlIGVjb25vbWljIGdhaW4gb2YgcmVwbGFjaW5nIHRy YW5zYWN0aW9ucyBpbiBvdXIgbWVtcG9vbC4KPj4+Cj4+PiBBIGZldyBvcHRpb25zIGhhdmUgYmVl biBkaXNjdXNzZWQ6Cj4+Pgo+Pj4gKiBDYWxjdWxhdGUgYmxvY2sgdGVtcGxhdGVzIG9uIHRoZSBm bHkgd2hlbiB3ZSBuZWVkIHRvIGNvbnNpZGVyIGEKPj4+IHJlcGxhY2VtZW50LiBIb3dldmVyLCBz aW5jZSByZXBsYWNlbWVudHMgYXJlIFtxdWl0ZSBjb21tb25dWzExXQo+Pj4gYW5kIHRoZSBpbmZv cm1hdGlvbiBtaWdodCBiZSB1c2VmdWwgZm9yIG90aGVyIHRoaW5ncyBhcyB3ZWxsLAo+Pj4gaXQg bWF5IGJlIHdvcnRoIGl0IHRvIGNhY2hlIGEgYmxvY2sgdGVtcGxhdGUuCj4+Pgo+Pj4gKiBLZWVw IGEgcGVyc2lzdGVudCBibG9jayB0ZW1wbGF0ZSBzbyB0aGF0IHdlIGtub3cgd2hhdCB0cmFuc2Fj dGlvbnMKPj4+IHdlIHdvdWxkIHB1dCBpbiB0aGUgbmV4dCBibG9jay4gV2UgbmVlZCB0byByZW1l bWJlciB0aGUgZmVlcmF0ZQo+Pj4gYXQgd2hpY2ggZWFjaCB0cmFuc2FjdGlvbiB3YXMgaW5jbHVk ZWQgaW4gdGhlIHRlbXBsYXRlLCBiZWNhdXNlIGFuCj4+PiBhbmNlc3RvciBwYWNrYWdlIG1heSBi ZSBpbmNsdWRlZCBpbiB0aGUgc2FtZSBibG9jayB0ZW1wbGF0ZSBpbgo+Pj4gbXVsdGlwbGUgc3Vi c2V0cy4gVHJhbnNhY3Rpb25zIGluY2x1ZGVkIGVhcmxpZXIgYWx0ZXIgdGhlIGFuY2VzdG9yCj4+ PiBmZWVyYXRlIG9mIHRoZSByZW1haW5pbmcgdHJhbnNhY3Rpb25zIGluIHRoZSBwYWNrYWdlLiBX ZSBhbHNvIG5lZWQKPj4+IHRvIGtlZXAgdHJhY2sgb2YgdGhlIG5ldyBmZWVyYXRlcyBvZiB0cmFu c2FjdGlvbnMgbGVmdCBvdmVyLgo+Pj4KPj4+ICogRGl2aWRlIHRoZSBtZW1wb29sIGludG8gdHdv IGxheWVycywgImhpZ2ggZmVlcmF0ZSIgYW5kICJsb3cKPj4+IGZlZXJhdGUuIiBUaGUgaGlnaCBm ZWVyYXRlIGxheWVyIGNvbnRhaW5zIH4xIGJsb2NrIG9mIHBhY2thZ2VzIHdpdGgKPj4+IHRoZSBo aWdoZXN0IGFuY2VzdG9yIGZlZXJhdGVzLCBhbmQgdGhlIGxvdyBmZWVyYXRlIGxheWVyIGNvbnRh aW5zCj4+PiBldmVyeXRoaW5nIGVsc2UuIEF0IHRoZSBlZGdlIG9mIGEgYmxvY2ssIHdlIGhhdmUg YSBLbmFwc2Fja3kgcHJvYmxlbQo+Pj4gd2hlcmUgdGhlIG5leHQgaGlnaGVzdCBhbmNlc3RvciBm ZWVyYXRlIHBhY2thZ2UgbWlnaHQgbm90IGZpdCwgc28gd2UKPj4+IHdvdWxkIHByb2JhYmx5IHdh bnQgdGhlIGhpZ2ggZmVlcmF0ZSBsYXllciB+Mk12QiBvciBzb21ldGhpbmcgdG8gYXZvaWQKPj4+ IHVuZGVyZXN0aW1hdGluZyB0aGUgZmVlcy4KPj4+Cj4+PiAjIyBBY2tub3dsZWRnZW1lbnRzCj4+ Pgo+Pj4gVGhhbmsgeW91IHRvIGV2ZXJ5b25lIHdob3NlIFJCRi1yZWxhdGVkIHN1Z2dlc3Rpb25z LCBncmlldmFuY2VzLAo+Pj4gY3JpdGljaXNtcyBhbmQgaWRlYXMgd2VyZSBpbmNvcnBvcmF0ZWQg aW4gdGhpcyBkb2N1bWVudDoKPj4+IEFuZHJldyBDaG93LCBNYXR0IENvcmFsbG8sIFN1aGFzIERh ZnR1YXIsIENocmlzdGlhbiBEZWNrZXIsCj4+PiBNYXJrIEVyaGFyZHQsIExsb3lkIEZvdXJuaWVy LCBMaXNhIE5laWd1dCwgSm9obiBOZXdiZXJ5LAo+Pj4gQW50b2luZSBQb2luc290LCBBbnRvaW5l IFJpYXJkLCBMYXJyeSBSdWFuZSwKPj4+Cj4+PiBTM1JLIGFuZCBCYXN0aWVuIFRlaW50dXJpZXIu Cj4+Pgo+Pj4gVGhhbmtzIGZvciByZWFkaW5nIQo+Pj4KPj4+IEJlc3QsCj4+PiBHbG9yaWEKPj4+ IFsxXTogaHR0cHM6Ly9naXRodWIuY29tL2JpdGNvaW4vYml0Y29pbi9ibG9iL21hc3Rlci9kb2Mv cG9saWN5L21lbXBvb2wtcmVwbGFjZW1lbnRzLm1kCj4+PiBbMl06IGh0dHBzOi8vZ2l0aHViLmNv bS9iaXRjb2luL2JpdGNvaW4vcHVsbC8yMzEyMSNpc3N1ZWNvbW1lbnQtOTI5NDc1OTk5Cj4+PiBb M106IGh0dHBzOi8vZ2l0aHViLmNvbS9YZWt5by9iaXRjb2luL2NvbW1pdC9kNzU0YjAyNDJlYzY5 ZDQyYzU3MDQxOGFlYmY5YzEzMzVhZjBiOGVhCj4+PiBbNF06IGh0dHBzOi8vZ2l0aHViLmNvbS9i aXRjb2luZGV2a2l0L2Jkay9pc3N1ZXMvMTQ0Cj4+PiBbNV06IGh0dHBzOi8vZ2l0aHViLmNvbS9i aXRjb2luZGV2a2l0L2Jkay9pc3N1ZXMvNDE0Cj4+PiBbNl06IGh0dHBzOi8vbGlzdHMubGludXhm b3VuZGF0aW9uLm9yZy9waXBlcm1haWwvYml0Y29pbi1kZXYvMjAyMS1TZXB0ZW1iZXIvMDE5NDY0 Lmh0bWwKPj4+IFs3XTogaHR0cHM6Ly9naXN0LmdpdGh1Yi5jb20vZ2xvem93L2RjNGU5ZDVjNWIx NGFkZTdjZGZhYzQwZjQzYWRiMThhI25ldy11bmNvbmZpcm1lZC1pbnB1dHMtcnVsZS0yCj4+PiBb OF06IGh0dHBzOi8vZ2l0aHViLmNvbS9iaXRjb2luL2JpdGNvaW4vcHVsbC8yMzEyMSNkaXNjdXNz aW9uX3I3NzcxMzEzNjYKPj4+IFs5XTogaHR0cHM6Ly9naXRodWIuY29tL2JpdGNvaW4vYml0Y29p bi9wdWxsLzIyMjkwI2lzc3VlY29tbWVudC04NjU4ODc5MjIKPj4+IFsxMF06IGh0dHBzOi8vZ2lz dC5naXRodWIuY29tL1hla3lvLzVjYjQxM2ZlOWYyNmRiY2U1N2FiZmQzNDRlYmJmYWYyI2ZpbGUt Y2FuZGlkYXRlLXNldC1iYXNlZC1ibG9jay1idWlsZGluZy1tZAo+Pj4gWzExXTogaHR0cHM6Ly9n aXRodWIuY29tL2JpdGNvaW4vYml0Y29pbi9wdWxsLzIyNTM5I2lzc3VlY29tbWVudC04ODU3NjM2 NzAKPj4+IFsxMl06IGh0dHBzOi8vZ2l0aHViLmNvbS9iaXRjb2luL2JpdGNvaW4vcHVsbC8yNDAw Nwo+Pj4gWzEzXTogaHR0cHM6Ly9naXRodWIuY29tL2JpdGNvaW4vYml0Y29pbi9ibG9iLzFhMzY5 ZjAwNmZkMGJlYzM3M2I5NTAwMWVkODRiNDgwZTg1MmYxOTEvc3JjL3dhbGxldC9mZWVidW1wZXIu Y3BwI0wxMTQKPj4+Cj4+PiBbMTRdOiBodHRwczovL2dpdGh1Yi5jb20vYml0Y29pbi9iaXRjb2lu L2Jsb2IvY2Y1YmIwNDhlODBkNGNkZTg4Mjg3ODdiMjY2YjdmNWYyZTNiNmQ3Yi9zcmMvbm9kZS9t aW5lci5jcHAjTDMxMC1MMzIwCj4+PiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fXwo+Pj4gYml0Y29pbi1kZXYgbWFpbGluZyBsaXN0Cj4+PiBiaXRjb2luLWRl dkBsaXN0cy5saW51eGZvdW5kYXRpb24ub3JnCj4+PiBodHRwczovL2xpc3RzLmxpbnV4Zm91bmRh dGlvbi5vcmcvbWFpbG1hbi9saXN0aW5mby9iaXRjb2luLWRldgo+Pgo+PiBfX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwo+PiBiaXRjb2luLWRldiBtYWlsaW5n IGxpc3QKPj4gYml0Y29pbi1kZXZAbGlzdHMubGludXhmb3VuZGF0aW9uLm9yZwo+PiBodHRwczov L2xpc3RzLmxpbnV4Zm91bmRhdGlvbi5vcmcvbWFpbG1hbi9saXN0aW5mby9iaXRjb2luLWRldg== --b1_3KcaiQW7MNc93pI2ouIhpNK1om9NYuhEw3pXGqeFs Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: base64 PGRpdiBzdHlsZT0iZm9udC1mYW1pbHk6IGFyaWFsOyBmb250LXNpemU6IDE0cHg7Ij48ZGl2IHN0 eWxlPSJmb250LWZhbWlseTogYXJpYWw7IGZvbnQtc2l6ZTogMTRweDsiPlRoYW5rcyBmb3IgdGhp cyBCYXN0aWVuIChhbmQgR2xvcmlhIGZvciBpbml0aWFsbHkgcG9zdGluZyBhYm91dCB0aGlzKS48 YnI+PC9kaXY+PGRpdiBzdHlsZT0iZm9udC1mYW1pbHk6IGFyaWFsOyBmb250LXNpemU6IDE0cHg7 Ij48YnI+PC9kaXY+PGRpdiBzdHlsZT0iZm9udC1mYW1pbHk6IGFyaWFsOyBmb250LXNpemU6IDE0 cHg7Ij5JIHN5bXBhdGhldGljYWxseSBza2ltbWVkIHRoZSBlY2xhaXIgUFIgKDxhIGhyZWY9Imh0 dHBzOi8vZ2l0aHViLmNvbS9BQ0lOUS9lY2xhaXIvcHVsbC8yMTEzIj5odHRwczovL2dpdGh1Yi5j b20vQUNJTlEvZWNsYWlyL3B1bGwvMjExMzwvYT4pIGRlYWxpbmcgd2l0aCByZXBsYWNlYWJsZSB0 cmFuc2FjdGlvbnMgZmVlIGJ1bXBpbmcuPGJyPjwvZGl2PjxkaXYgc3R5bGU9ImZvbnQtZmFtaWx5 OiBhcmlhbDsgZm9udC1zaXplOiAxNHB4OyI+PGJyPjwvZGl2PjxkaXYgc3R5bGU9ImZvbnQtZmFt aWx5OiBhcmlhbDsgZm9udC1zaXplOiAxNHB4OyI+VGhlcmUgd2lsbCBjb250aW51ZSB0byBiZSBh IChob3BlZnVsbHkpIGZyaWVuZGx5IHR1ZyBvZiB3YXIgb24gdGhpcyBwcm9iYWJseSBmb3IgdGhl IHJlc3Qgb2YgQml0Y29pbidzIGV4aXN0ZW5jZS4gSSBhbSBzdXJlIHBlb3BsZSBsaWtlIEx1a2Us IFByYXlhbmsgZXRjIHdpbGwgKHJpZ2h0ZnVsbHkpIGNvbnRpbnVlIHRvIHJhaXNlIHRoYXQgTGln aHRuaW5nIGFuZCBvdGhlciBzZWNvbmQgbGF5ZXIgcHJvdG9jb2xzIHNob3VsZG4ndCBkZW1hbmQg dGhhdCBwb2xpY3kgcnVsZXMgYmUgY2hhbmdlZCBpZiB0aGVyZSBpcyBhIHJlYXNvbiAoZS5nLiBE b1MgdmVjdG9yKSBmb3IgdGhvc2UgcnVsZXMgb24gdGhlIGJhc2UgbmV0d29yay4gQnV0IGlmIHRo ZXJlIGFyZSBydWxlcyB0aGF0IGhhdmUgbm8gdXBzaWRlLCBpbnRyb2R1Y2UgdW5uZWNlc3Nhcnkg Y29tcGxleGl0eSBmb3Igbm8gcmVhc29uIGFuZCBtYWtlIExpZ2h0bmluZyBpbXBsZW1lbnRlcnMg bGlrZSBCYXN0aWVuJ3MgbGlmZSBtaXNlcmFibGUgYXR0ZW1wdGluZyB0byBkZWFsIHdpdGggdGhl bSBJIHJlYWxseSBob3BlIHdlIGNhbiBtYWtlIHByb2dyZXNzIG9uIHJlbW92aW5nIG9yIHNpbXBs aWZ5aW5nIHRoZW0uJm5ic3A7PGJyPjwvZGl2PjxkaXYgc3R5bGU9ImZvbnQtZmFtaWx5OiBhcmlh bDsgZm9udC1zaXplOiAxNHB4OyI+PGJyPjwvZGl2PjxkaXYgc3R5bGU9ImZvbnQtZmFtaWx5OiBh cmlhbDsgZm9udC1zaXplOiAxNHB4OyI+VGhpcyBpcyB3aHkgSSB0aGluayBpdCBpcyBpbXBvcnRh bnQgdG8gdW5kZXJzdGFuZCB0aGUgcmF0aW9uYWxlcyBmb3IgaW50cm9kdWNpbmcgdGhlIHJ1bGVz IGluIHRoZSBmaXJzdCBwbGFjZSAoYW5kIHdoeSBpdCBpcyBzYWZlIHRvIHJlbW92ZSB0aGVtIGlm IGluZGVlZCBpdCBpcykgYW5kIGJlaW5nIGFzIHJpZ29yb3VzIGFzIHBvc3NpYmxlIG9uIHRoZSBy YXRpb25hbGVzIGZvciBpbnRyb2R1Y2luZyBhZGRpdGlvbmFsIHJ1bGVzLiBJdCBzb3VuZHMgbGlr ZSBmcm9tIEdsb3JpYSdzIGluaXRpYWwgcG9zdCB3ZSBhcmUgc3RpbGwgYXQgYSBicmFpbnN0b3Jt aW5nIHBoYXNlICh3aGljaCBpcyBmaW5lKSBidXQga25vd2luZyB3aGF0IHdlIGtub3cgdG9kYXkg SSByZWFsbHkgaG9wZSB3ZSBjYW4gbGVhcm4gZnJvbSB0aGUgbWlzdGFrZXMgb2YgdGhlIG9yaWdp bmFsIEJJUCAxMjUsIG5hbWVseSB0aGUgQ29yZSBpbXBsZW1lbnRhdGlvbiBub3QgbWF0Y2hpbmcg dGhlIEJJUCBhbmQgdGhlIHNwYXJzZSByYXRpb25hbGVzIGZvciB0aGUgcnVsZXMuIEFzIEJhc3Rp ZW4gc2F5cyB0aGlzIGlzIG5vdCBjcml0aWNpemluZyB0aGUgb3JpZ2luYWwgQklQIDEyNSBhdXRo b3JzLCA3IHllYXJzIGlzIGEgbG9uZyB0aW1lIGVzcGVjaWFsbHkgaW4gQml0Y29pbiB3b3JsZCBh bmQgdGhleSBwcm9iYWJseSB3ZXJlbid0IHRoaW5raW5nIGFib3V0IEJhc3RpZW4gc2l0dGluZyBk b3duIHRvIHdyaXRlIGFuIGVjbGFpciBQUiBpbiBsYXRlIDIwMjEgKGFuZCByZXZpZXdlcnMgb2Yg dGhhdCBQUikgd2hlbiB0aGV5IHdyb3RlIHRoZSBCSVAgaW4gMjAxNS48YnI+PC9kaXY+PGRpdiBz dHlsZT0iZm9udC1mYW1pbHk6IGFyaWFsOyBmb250LXNpemU6IDE0cHg7Ij48YnI+PC9kaXY+PGRp diBzdHlsZT0iZm9udC1mYW1pbHk6IGFyaWFsOyBmb250LXNpemU6IDE0cHg7IiBjbGFzcz0icHJv dG9ubWFpbF9zaWduYXR1cmVfYmxvY2siPjxkaXYgY2xhc3M9InByb3Rvbm1haWxfc2lnbmF0dXJl X2Jsb2NrLXVzZXIiPjxkaXYgc3R5bGU9ImZvbnQtZmFtaWx5OmFyaWFsO2ZvbnQtc2l6ZToxNHB4 OyI+PHNwYW4gc3R5bGU9ImNvbG9yOnJnYigzOCw0Miw1MSk7Zm9udC1zdHlsZTpub3JtYWw7Zm9u dC13ZWlnaHQ6NDAwO2xldHRlci1zcGFjaW5nOm5vcm1hbDt0ZXh0LWluZGVudDowcHg7dGV4dC10 cmFuc2Zvcm06bm9uZTt3aGl0ZS1zcGFjZTpwcmUtd3JhcDt3b3JkLXNwYWNpbmc6MHB4O2JhY2tn cm91bmQtY29sb3I6cmdiKDI1NSwyNTUsMjU1KTtmbG9hdDpub25lO2Rpc3BsYXk6aW5saW5lOyI+ PHNwYW4gY2xhc3M9ImZvbnQiIHN0eWxlPSJmb250LWZhbWlseTonU0ZNb25vLVJlZ3VsYXInLCBD b25zb2xhcywgJ0xpYmVyYXRpb24gTW9ubycsIE1lbmxvLCBtb25vc3BhY2UsIG1vbm9zcGFjZTsi PjxzcGFuIGNsYXNzPSJzaXplIiBzdHlsZT0iZm9udC1zaXplOjE0cHg7Ij4tLTxicj5NaWNoYWVs IEZvbGtzb248YnI+RW1haWw6IG1pY2hhZWxmb2xrc29uIGF0IDwvc3Bhbj48L3NwYW4+PC9zcGFu PjxhIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vb3BlbmVyIG5vcmVmZXJyZXIiIHN0eWxlPSJsaW5l LWhlaWdodDpub3JtYWw7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTtmb250LWZhbWlseTonU0ZN b25vLVJlZ3VsYXInLCBDb25zb2xhcywgJ0xpYmVyYXRpb24gTW9ubycsIE1lbmxvLCBtb25vc3Bh Y2UsIG1vbm9zcGFjZTtmb250LXNpemU6MTRweDtmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdo dDo0MDA7bGV0dGVyLXNwYWNpbmc6bm9ybWFsO3RleHQtaW5kZW50OjBweDt0ZXh0LXRyYW5zZm9y bTpub25lO3doaXRlLXNwYWNlOnByZS13cmFwO3dvcmQtc3BhY2luZzowcHg7IiBocmVmPSJodHRw Oi8vcHJvdG9ubWFpbC5jb20vIj5wcm90b25tYWlsLmNvbTwvYT48c3BhbiBzdHlsZT0iY29sb3I6 cmdiKDM4LDQyLDUxKTtmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo0MDA7bGV0dGVyLXNw YWNpbmc6bm9ybWFsO3RleHQtaW5kZW50OjBweDt0ZXh0LXRyYW5zZm9ybTpub25lO3doaXRlLXNw YWNlOnByZS13cmFwO3dvcmQtc3BhY2luZzowcHg7YmFja2dyb3VuZC1jb2xvcjpyZ2IoMjU1LDI1 NSwyNTUpO2Zsb2F0Om5vbmU7ZGlzcGxheTppbmxpbmU7Ij48c3BhbiBjbGFzcz0iZm9udCIgc3R5 bGU9ImZvbnQtZmFtaWx5OidTRk1vbm8tUmVndWxhcicsIENvbnNvbGFzLCAnTGliZXJhdGlvbiBN b25vJywgTWVubG8sIG1vbm9zcGFjZSwgbW9ub3NwYWNlOyI+PHNwYW4gY2xhc3M9InNpemUiIHN0 eWxlPSJmb250LXNpemU6MTRweDsiPiA8L3NwYW4+PC9zcGFuPjwvc3Bhbj48L2Rpdj48ZGl2IHN0 eWxlPSJmb250LWZhbWlseTphcmlhbDtmb250LXNpemU6MTRweDsiPjxzcGFuIHN0eWxlPSJjb2xv cjpyZ2IoMzgsNDIsNTEpO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjQwMDtsZXR0ZXIt c3BhY2luZzpub3JtYWw7dGV4dC1pbmRlbnQ6MHB4O3RleHQtdHJhbnNmb3JtOm5vbmU7d2hpdGUt c3BhY2U6cHJlLXdyYXA7d29yZC1zcGFjaW5nOjBweDtiYWNrZ3JvdW5kLWNvbG9yOnJnYigyNTUs MjU1LDI1NSk7ZmxvYXQ6bm9uZTtkaXNwbGF5OmlubGluZTsiPjxzcGFuIGNsYXNzPSJmb250IiBz dHlsZT0iZm9udC1mYW1pbHk6J1NGTW9uby1SZWd1bGFyJywgQ29uc29sYXMsICdMaWJlcmF0aW9u IE1vbm8nLCBNZW5sbywgbW9ub3NwYWNlLCBtb25vc3BhY2U7Ij48c3BhbiBjbGFzcz0ic2l6ZSIg c3R5bGU9ImZvbnQtc2l6ZToxNHB4OyI+S2V5YmFzZTogbWljaGFlbGZvbGtzb248YnI+UEdQOiA0 M0VEIEM5OTkgOUY4NSAxRDQwIEVBRjQgOTgzNSA5MkQ2IDAxNTkgMjE0QyBGRUUzPC9zcGFuPjwv c3Bhbj48L3NwYW4+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0icHJvdG9ubWFpbF9zaWduYXR1cmVf YmxvY2stcHJvdG9uIHByb3Rvbm1haWxfc2lnbmF0dXJlX2Jsb2NrLWVtcHR5Ij48YnI+PC9kaXY+ PC9kaXY+PGRpdj48YnI+PC9kaXY+PC9kaXY+PGRpdiBzdHlsZT0iZm9udC1mYW1pbHk6IGFyaWFs OyBmb250LXNpemU6IDE0cHg7Ij48YnI+PC9kaXY+PGRpdiBjbGFzcz0icHJvdG9ubWFpbF9xdW90 ZSI+DQogICAgICAgIC0tLS0tLS0gT3JpZ2luYWwgTWVzc2FnZSAtLS0tLS0tPGJyPg0KICAgICAg ICBPbiBNb25kYXksIEphbnVhcnkgMzFzdCwgMjAyMiBhdCAzOjU3IFBNLCBCYXN0aWVuIFRFSU5U VVJJRVIgdmlhIGJpdGNvaW4tZGV2ICZsdDtiaXRjb2luLWRldkBsaXN0cy5saW51eGZvdW5kYXRp b24ub3JnJmd0OyB3cm90ZTo8YnI+DQogICAgICAgIDxibG9ja3F1b3RlIGNsYXNzPSJwcm90b25t YWlsX3F1b3RlIiB0eXBlPSJjaXRlIj4NCiAgICAgICAgICAgIDxkaXYgZGlyPSJsdHIiPkhpIEds b3JpYSw8YnI+PGJyPk1hbnkgdGhhbmtzIGZvciByYWlzaW5nIGF3YXJlbmVzcyBvbiB0aGVzZSBp c3N1ZXMgYW5kIGNvbnN0YW50bHkgcHVzaGluZzxicj50b3dhcmRzIGZpbmRpbmcgYSBiZXR0ZXIg bW9kZWwuIFRoaXMgd29yayB3aWxsIGhpZ2hseSBpbXByb3ZlIHRoZTxicj5zZWN1cml0eSBvZiBh bnkgbXVsdGktcGFydHkgY29udHJhY3QgdHJ5aW5nIHRvIGJ1aWxkIG9uIHRvcCBvZiBiaXRjb2lu PGJyPihiZWNhdXNlIG1vc3QgbXVsdGktcGFydHkgY29udHJhY3RzIHdpbGwgbmVlZCB0byBoYXZl IHRpbWVvdXQgY29uZGl0aW9uczxicj5hbmQgcGFydGljaXBhbnRzIHdpbGwgbmVlZCB0byBtYWtl IHNvbWUgdHJhbnNhY3Rpb25zIGNvbmZpcm0gYmVmb3JlIGE8YnI+dGltZW91dCBoYXBwZW5zIC0g b3RoZXJ3aXNlIHRoZXkgbWF5IGxvc2UgZnVuZHMpLjxicj48YnI+Rm9yIHN0YXJ0ZXJzLCBsZXQg bWUgcXVpY2tseSBleHBsYWluIHdoeSB0aGUgY3VycmVudCBydWxlcyBhcmUgaGFyZCB0bzxicj53 b3JrIHdpdGggaW4gdGhlIGNvbnRleHQgb2YgbGlnaHRuaW5nIChidXQgSSBiZWxpZXZlIG1vc3Qg TDIgcHJvdG9jb2xzPGJyPndpbGwgaGF2ZSB0aGUgc2FtZSBpc3N1ZXMpLiBGZWVsIGZyZWUgdG8g c2tpcCB0aGlzIHBhcnQgaWYgeW91IGFyZTxicj5hbHJlYWR5IGNvbnZpbmNlZC48YnI+PGJyPiMj IE1vdGl2YXRpb248YnI+PGJyPlRoZSBiaWdnZXN0IHBhaW4gcG9pbnQgaXMgQklQIDEyNSBydWxl IDIuPGJyPklmIEkgbmVlZCB0byBpbmNyZWFzZSB0aGUgZmVlcyBvZiBhIHRpbWUtc2Vuc2l0aXZl IHRyYW5zYWN0aW9uIGJlY2F1c2U8YnI+dGhlIGZlZXJhdGUgaGFzIGJlZW4gcmlzaW5nIHNpbmNl IEkgYnJvYWRjYXN0IGl0LCBJIG1heSBuZWVkIHRvIGFsc28gcGF5PGJyPmhpZ2ggZmVlcyBqdXN0 IHRvIHByb2R1Y2UgYSBjb25maXJtZWQgdXR4byB0aGF0IEkgY2FuIHVzZS4gSSdtIGFjdHVhbGx5 PGJyPnBheWluZyBhIGhpZ2ggZmVlIHR3aWNlIGluc3RlYWQgb2Ygb25jZSAoYW5kIG5lZWRsZXNz bHkgdXNpbmcgb24tY2hhaW48YnI+c3BhY2UsIG91ciBzY2FyY2VzdCBhc3NldCwgYmVjYXVzZSB3 ZSBjb3VsZCBoYXZlIGF2b2lkZWQgdGhhdCBhZGRpdGlvbmFsPGJyPnRyYW5zYWN0aW9uISkuPGJy Pjxicj5JdCBhbHNvIGhhcyBzb21lIGFubm95aW5nICJub24tZGV0ZXJtaW5pc20iLjxicj5JbWFn aW5lIHRoYXQgbXkgdHJhbnNhY3Rpb24gaGFzIGJlZW4gZXZpY3RlZCBmcm9tIG15IG1lbXBvb2wg YmVjYXVzZSBpdHM8YnI+ZmVlcmF0ZSB3YXMgdG9vIGxvdy4gSSBjb3VsZCB0aGluayAiR3JlYXQs IHRoYXQgbWVhbnMgSSBkb24ndCBoYXZlIHRvPGJyPmFwcGx5IEJJUCAxMjUgcmVzdHJpY3Rpb25z LCBJIGNhbiBqdXN0IGZ1bmQgdGhpcyB0cmFuc2FjdGlvbiBhcyBpZiBpdDxicj53ZXJlIGEgbmV3 IG9uZSEiLiBCdXQgYWN0dWFsbHkgSSBkbywgYmVjYXVzZSBteSB0cmFuc2FjdGlvbiBjb3VsZCBz dGlsbDxicj5iZSBpbiBtaW5lcidzIG1lbXBvb2xzIGFuZCBJIGhhdmUgbm8gd2F5IG9mIGtub3dp bmcgaXQuLi50aGlzIG1lYW5zIHRoYXQ8YnI+d2hlbmV2ZXIgSSBoYXZlIGJyb2FkY2FzdCBhIHRy YW5zYWN0aW9uLCBJIG11c3QgYXNzdW1lIHRoYXQgSSB3aWxsPGJyPmFsd2F5cyBuZWVkIHRvIGFi aWRlIGJ5IHdoYXRldmVyIHJlcGxhY2VtZW50IHJ1bGVzIHRoZSBuZXR3b3JrIGFwcGxpZXMuPGJy Pjxicj5Gb3J0dW5hdGVseSwgYXMgZmFyIGFzIEkgdW5kZXJzdGFuZCBpdCwgdGhpcyBydWxlIG9u bHkgZXhpc3RzIGJlY2F1c2Ugb2Y8YnI+YSBwcmV2aW91cyBpbXBsZW1lbnRhdGlvbiBkZXRhaWwg b2YgYml0Y29pbiBjb3JlLCBzbyB0aGVyZSdzIHNpbXBseSBubzxicj5nb29kIHJlYXNvbiB0byBr ZWVwIGl0Ljxicj48YnI+VGhlIHNlY29uZCBiaWdnZXN0IHBhaW4gcG9pbnQgaXMgcnVsZSAzLiBJ dCBwcmV2ZW50cyBtZSBmcm9tIGVmZmljaWVudGx5PGJyPnVzaW5nIG15IGNhcGl0YWwgd2hpbGUg aXQncyB1bmNvbmZpcm1lZC4gV2hlbmV2ZXIgSSdtIHVzaW5nIGEgYmlnIHV0eG88YnI+dG8gZnVu ZCBhIHRyYW5zYWN0aW9uLCBJIHdpbGwgZ2V0IGEgYmlnIGNoYW5nZSBvdXRwdXQsIGFuZCBpdCB3 b3VsZDxicj5yZWFsbHkgYmUgYSB3YXN0ZSB0byBiZSB1bmFibGUgdG8gdXNlIHRoYXQgY2hhbmdl IG91dHB1dCB0byBmdW5kIG90aGVyPGJyPnRyYW5zYWN0aW9ucy4gSW4gb3JkZXIgdG8gYmUgY2Fw aXRhbC1lZmZpY2llbnQsIEkgd2lsbCBlbmQgdXAgY3JlYXRpbmc8YnI+ZGVzY2VuZGFudCB0cmVl cyBmb3IgbXkgdGltZS1zZW5zaXRpdmUgdHJhbnNhY3Rpb25zLiBCdXQgYXMgR2xvcmlhPGJyPmV4 cGxhaW5lZCwgcmVwbGFjaW5nIGFsbCBteSBjaGlsZHJlbiB3aWxsIGNvc3QgbWUgYW4gYWJzdXJk bHkgbGFyZ2U8YnI+YW1vdW50IG9mIGZlZXMuIFNvIHdoYXQgSSdtIGFjdHVhbGx5IHBsYW5uaW5n IHRvIGRvIGluc3RlYWQgaXMgdG8gUkJGPGJyPm9uZSBvZiB0aGUgZGVzY2VuZGFudHMgaGlnaCBl bm91Z2ggdG8gZ2V0IHRoZSB3aG9sZSB0cmVlIGNvbmZpcm1lZC48YnI+QnV0IGlmIHRob3NlIGRl c2NlbmRhbnRzJyB0aW1lb3V0cyB3ZXJlIGZhciBpbiB0aGUgZnV0dXJlLCB0aGF0J3MgYTxicj53 YXN0ZSwgSSBwYWlkIGEgbG90IG1vcmUgZmVlcyBmb3IgdGhlbSB0aGFuIEkgc2hvdWxkIGhhdmUu IEknZCBsaWtlIHRvPGJyPmp1c3QgcmVwbGFjZSBteSB0cmFuc2FjdGlvbiBhbmQgcmVwdWJsaXNo IHRoZSBpbnZhbGlkYXRlZCBjaGlsZHJlbjxicj5pbmRlcGVuZGVudGx5Ljxicj48YnI+UnVsZSA0 IGRvZXNuJ3QgaHVydCBhcyBtdWNoIGFzIHRoZSB0d28gcHJldmlvdXMgb25lcywgSSBkb24ndCBo YXZlIHRvbzxicj5tdWNoIHRvIHNheSBhYm91dCBpdC48YnI+PGJyPlRvIGJlIGZhaXIgdG8gdGhl IEJJUCAxMjUgYXV0aG9ycywgYWxsIG9mIHRoZXNlIHNjZW5hcmlvcyB3ZXJlIHZlcnkgaGFyZDxi cj50byBmb3JlY2FzdCBhdCB0aGUgdGltZSB0aGlzIEJJUCB3YXMgY3JlYXRlZC4gV2UgbmVlZGVk IHllYXJzIHRvIGJ1aWxkPGJyPm9uIHRob3NlIHJ1bGVzIHRvIGdldCBhIGJldHRlciB1bmRlcnN0 YW5kaW5nIG9mIHRoZWlyIGxpbWl0YXRpb25zIGFuZCBpZjxicj50aGUgcmF0aW9uYWxlIGJlaGlu ZCB0aGVtIG1hZGUgc2Vuc2UgaW4gdGhlIGxvbmcgdGVybS48YnI+PGJyPiMjIFByb3Bvc2Fsczxi cj48YnI+SSBiZWxpZXZlIHRoYXQgbm93IGlzIGEgZ29vZCB0aW1lIHRvIHJlLXRoaW5rIHRob3Nl LCBhbmQgSSByZWFsbHkgbGlrZTxicj5HbG9yaWEncyBjYXRlZ29yaXphdGlvbiBvZiB0aGUgZGVz aWduIGNvbnN0cmFpbnRzLjxicj48YnI+SSdkIGxpa2UgdG8gcHJvcG9zZSBhIGRpZmZlcmVudCB3 YXkgb2YgbG9va2luZyBhdCBkZXNjZW5kYW50cyB0aGF0IG1ha2VzPGJyPml0IGVhc2llciB0byBk ZXNpZ24gdGhlIG5ldyBydWxlcy4gVGhlIHdheSBJIHVuZGVyc3RhbmQgaXQsIGxpbWl0aW5nIHRo ZTxicj5pbXBhY3Qgb24gZGVzY2VuZGFudCB0cmFuc2FjdGlvbnMgaXMgb25seSBpbXBvcnRhbnQg Zm9yIERvUyBwcm90ZWN0aW9uLDxicj5ub3QgZm9yIGluY2VudGl2ZSBjb21wYXRpYmlsaXR5LiBJ IHdvdWxkIGFyZ3VlIHRoYXQgYWZ0ZXIgZXZpY3Rpb25zLDxicj5kZXNjZW5kYW50IHRyYW5zYWN0 aW9ucyB3aWxsIGJlIHN1Ym1pdHRlZCBhZ2FpbiAoYmVjYXVzZSB0aGV5IHJlcHJlc2VudDxicj50 cmFuc2FjdGlvbnMgdGhhdCBwZW9wbGUgYWN0dWFsbHkgd2FudCB0byBtYWtlKSwgc28gZXZpY3Rp bmcgdGhlbSBkb2VzPGJyPm5vdCBoYXZlIGEgbmVnYXRpdmUgaW1wYWN0IG9uIG1pbmluZyBpbmNl bnRpdmVzIChpbiBhIHdvcmxkIHdoZXJlIGJsb2Nrczxicj5hcmUgZnVsbCBtb3N0IG9mIHRoZSB0 aW1lKS48YnI+PGJyPkknbSBjdXJpb3VzIHRvIGhlYXIgb3RoZXIgcGVvcGxlJ3MgdGhvdWdodHMg b24gdGhhdC4gSWYgaXQgbWFrZXMgc2Vuc2UsPGJyPkkgd291bGQgcHJvcG9zZSB0aGUgZm9sbG93 aW5nIHZlcnkgc2ltcGxlIHJ1bGVzOjxicj48YnI+MS4gVGhlIHRyYW5zYWN0aW9uJ3MgYW5jZXN0 b3IgYWJzb2x1dGUgZmVlcyBtdXN0IGJlIFglIGhpZ2hlciB0aGFuIHRoZTxicj5wcmV2aW91cyB0 cmFuc2FjdGlvbidzIGFuY2VzdG9yIGZlZXM8YnI+Mi4gVGhlIHRyYW5zYWN0aW9uJ3MgYW5jZXN0 b3IgZmVlcmF0ZSBtdXN0IGJlIFklIGhpZ2hlciB0aGFuIHRoZTxicj5wcmV2aW91cyB0cmFuc2Fj dGlvbidzIGFuY2VzdG9yIGZlZXJhdGU8YnI+PGJyPkkgYmVsaWV2ZSBpdCdzIGNvbXBsZXRlbHkg b2sgdG8gcmVxdWlyZSBpbmNyZWFzaW5nIGJvdGggdGhlIGZlZXMgYW5kPGJyPmZlZXJhdGUgaWYg d2UgZG9uJ3QgdGFrZSBkZXNjZW5kYW50cyBpbnRvIGFjY291bnQsIGJlY2F1c2UgeW91IGNvbnRy b2w8YnI+eW91ciBhbmNlc3RvciBzZXQgLSB3aGVyZWFzIHRoZSBkZXNjZW5kYW50IHNldCBtYXkg YmUgY29tcGxldGVseSBvdXQgb2Y8YnI+eW91ciBjb250cm9sLjxicj48YnI+VGhpcyBpcyB2ZXJ5 IGVhc3kgdG8gdXNlIGJ5IHdhbGxldHMsIGJlY2F1c2UgdGhlIGFuY2VzdG9yIHNldCBpcyBlYXN5 IHRvPGJyPm9idGFpbi4gQW5kIGFuIGltcG9ydGFudCBwb2ludCBpcyB0aGF0IHRoZSBhbmNlc3Rv ciBzZXQgaXMgdGhlIHNhbWUgaW48YnI+ZXZlcnkgbWVtcG9vbCwgd2hlcmVhcyB0aGUgZGVzY2Vu ZGFudCBzZXQgaXMgbm90ICh5b3VyIG1lbXBvb2wgbWF5IGhhdmU8YnI+cmVqZWN0ZWQgdGhlIGxh c3QgZGVzY2VuZGFudHMsIHdoaWxlIG90aGVyIHBlb3BsZSdzIG1lbXBvb2xzIG1heSBzdGlsbDxi cj5jb250YWluIHRoZW0pLjxicj48YnI+QmVjYXVzZSBvZiB0aGF0IHJlYXNvbiwgSSdkIGxpa2Ug dG8gYXZvaWQgaGF2aW5nIGEgcnVsZSB0aGF0IHJlbGllcyBvbjxicj5zb21lIHNpemUgb2YgdGhl IHJlcGxhY2VkIGRlc2NlbmRhbnQgc2V0OiBpdCBtYXkgYmUgdmFsaWQgaW4geW91cjxicj5tZW1w b29sIGJ1dCBpbnZhbGlkIGluIHNvbWVvbmUgZWxzZSdzLCB3aGljaCBtYWtlcyBpdCBleHBsb2l0 YWJsZSBmb3I8YnI+cGlubmluZyBhdHRhY2tzLjxicj48YnI+SSBiZWxpZXZlIHRoZXNlIHJ1bGVz IGFyZSBpbmNlbnRpdmUgY29tcGF0aWJsZSAoYWdhaW4sIGlmIHlvdSBhY2NlcHQ8YnI+dGhlIGZh Y3QgdGhhdCB0aGUgZGVzY2VuZGFudHMgd2lsbCBiZSByZS1zdWJtaXR0ZWQgYW5kIG1pbmVkIGFz IHdlbGwsPGJyPnNvIHRoZWlyIGZlZXMgYXJlbid0IGxvc3QpLjxicj48YnI+Q2FuIHdlIGNob29z ZSBYIGFuZCBZIHNvIHRoYXQgdGhlc2UgdHdvIHJ1bGVzIGFyZSBhbHNvIERvUy1yZXNpc3RhbnQ/ PGJyPlVuZm9ydHVuYXRlbHkgSSdtIG5vdCBzdXJlLCBzbyBtYXliZSB3ZSdsbCBuZWVkIHRvIGFk ZCBhIHRoaXJkIHJ1bGUgdG88YnI+YWRkcmVzcyB0aGF0LiBCdXQgYmVmb3JlIHdlIGRvLCBjYW4g c29tZW9uZSBkZXRhaWwgd2hhdCBpdCBjb3N0cyBmb3IgYTxicj5ub2RlIHRvIGV2aWN0IGEgZGVz Y2VuZGFudCB0cmVlPyBHaXZlbiB0aGF0IGJpdGNvaW4gY29yZSBkb2Vzbid0IGFsbG93PGJyPmNo YWlucyBvZiBtb3JlIHRoYW4gMjUgdHJhbnNhY3Rpb25zLCB0aGUgbWF4aW11bSBudW1iZXIgb2Yg dHJhbnNhY3Rpb25zPGJyPmJlaW5nIHJlcGxhY2VkIHdpbGwgYmUgYm91bmRlZCBieSAyNSAqIE4g KHdoZXJlIE4gaXMgdGhlIG51bWJlciBvZjxicj5vdXRwdXRzIG9mIHRoZSB0cmFuc2FjdGlvbiBi ZWluZyByZXBsYWNlZCkuIElmIGl0J3MganVzdCBPKG4pIHBydW5pbmcgb2Y8YnI+YSBncmFwaCwg bWF5YmUgdGhhdCdzIG9rPyBPciBtYXliZSB3ZSBtYWtlIFggb3IgWSBkZXBlbmQgb24gdGhlIG51 bWJlcjxicj5vZiBvdXRwdXRzIG9mIHRoZSB0cmFuc2FjdGlvbiBiZWluZyByZXBsYWNlZCAodGhp cyB3b3VsZCBuZWVkIHZlcnk8YnI+Y2FyZWZ1bCB0aG91Z2h0cyk/PGJyPjxicj5JZiB5b3UgbWFk ZSBpdCB0aGlzIGZhciwgdGhhbmtzIGZvciByZWFkaW5nITxicj5BIGNvdXBsZSBvZiBjb21tZW50 cyBvbiB0aGUgcHJldmlvdXMgbWVzc2FnZXM6PGJyPjxicj4mZ3Q7IEN1cnJlbnRseSwgaWYgd2Ug c2VlIGEgdHJhbnNhY3Rpb248YnI+Jmd0OyB0aGF0IGhhcyB0aGUgc2FtZSB0eGlkIGFzIG9uZSBp biB0aGUgbWVtcG9vbCwgd2UgcmVqZWN0IGl0IGFzIGE8YnI+Jmd0OyBkdXBsaWNhdGUsIGV2ZW4g aWYgdGhlIGZlZXJhdGUgaXMgbXVjaCBoaWdoZXIuIEl0J3MgdW5jbGVhciB0byBtZSBpZjxicj4m Z3Q7IHdlIGhhdmUgYSB2ZXJ5IHN0cm9uZyByZWFzb24gdG8gY2hhbmdlIHRoaXMsIGJ1dCBub3Rp bmcgaXQgYXMgYTxicj4mZ3Q7IGxpbWl0YXRpb24gb2Ygb3VyIGN1cnJlbnQgcmVwbGFjZW1lbnQg cG9saWN5Ljxicj48YnI+SSBkb24ndCBzZWUgYSBzdHJvbmcgcmVhc29uIGZyb20gYW4gTDIgcHJv dG9jb2wncyBwb2ludCBvZiB2aWV3IHlldCwgYnV0PGJyPnRoZXJlIGFyZSBtYW55IHVua293biB1 bmtub3ducy4gQnV0IGZyb20gYSBtaW5lciBpbmNlbnRpdmUncyBwb2ludCBvZjxicj52aWV3LCB3 ZSBzaG91bGQga2VlcCB0aGUgdHJhbnNhY3Rpb24gd2l0aCB0aGUgaGlnaGVyIGZlZXJhdGUsIHNo b3VsZG4ndDxicj53ZT8gSW4gdGhhdCBjYXNlIGl0J3MgYWxzbyBhIG1vcmUgZWZmaWNpZW50IHVz ZSBvZiBvbi1jaGFpbiBzcGFjZSwgd2hpY2g8YnI+aXMgYSB3aW4sIHJpZ2h0Pzxicj48YnI+Jmd0 OyBXZSBtaWdodCBoYXZlIGEgbW9yZS1vci1sZXNzIGxvbmcgdHJhbnNpdGlvbiBwZXJpb2QgZHVy aW5nIHdoaWNoIHdlIHN1cHBvcnQgYm90aC4uLjxicj48YnI+WWVzLCB0aGlzIGlzIGEgbG9uZyB0 ZXJtIHRoaW5nLjxicj5FdmVuIGlmIGJpdGNvaW4gY29yZSByZWxlYXNlcyBhIG5ldyB2ZXJzaW9u IHdpdGggdXBkYXRlZCBSQkYgcnVsZXMsIGFzIGE8YnI+d2FsbGV0IHlvdSdsbCBuZWVkIHRvIGtl ZXAgdXNpbmcgdGhlIG9sZCBydWxlcyBmb3IgYSBsb25nIHRpbWUgaWYgeW91PGRpdj53YW50IHRv IGJlIHNhZmUuPGRpdj48YnI+QnV0IGl0J3MgYWxsIHRoZSBtb3JlIHJlYXNvbiB0byB0cnkgdG8g c2hpcCB0aGlzIGFzIHNvb24gYXMgcG9zc2libGUsPGJyPnRoaXMgd2F5IG1heWJlIG91ciBncmFu ZC1jaGlsZHJlbiB3aWxsIGJlIGFibGUgdG8gYmVuZWZpdCBmcm9tIGl0IDspPGJyPihqdXN0IGtp ZGRpbmcgb24gdGhlIHRpbWVzcGFuIG9idmlvdXNseSkuPGJyPjxicj5DaGVlcnMsPGJyPkJhc3Rp ZW48L2Rpdj48L2Rpdj48L2Rpdj48YnI+PGRpdiBjbGFzcz0iZ21haWxfcXVvdGUiPjxkaXYgY2xh c3M9ImdtYWlsX2F0dHIiIGRpcj0ibHRyIj5MZSBsdW4uIDMxIGphbnYuIDIwMjIgw6AgMDA6MTEs IEFudG9pbmUgUmlhcmQgdmlhIGJpdGNvaW4tZGV2ICZsdDs8YSBocmVmPSJtYWlsdG86Yml0Y29p bi1kZXZAbGlzdHMubGludXhmb3VuZGF0aW9uLm9yZyIgcmVsPSJub3JlZmVycmVyIG5vZm9sbG93 IG5vb3BlbmVyIiB0YXJnZXQ9Il9ibGFuayI+Yml0Y29pbi1kZXZAbGlzdHMubGludXhmb3VuZGF0 aW9uLm9yZzwvYT4mZ3Q7IGEgw6ljcml0IDo8YnI+PC9kaXY+PGJsb2NrcXVvdGUgc3R5bGU9Im1h cmdpbjowcHggMHB4IDBweCAwLjhleDtib3JkZXItbGVmdDoxcHggc29saWQgcmdiKDIwNCwyMDQs MjA0KTtwYWRkaW5nLWxlZnQ6MWV4IiBjbGFzcz0iZ21haWxfcXVvdGUiPjxkaXYgZGlyPSJsdHIi PjxkaXY+SGkgR2xvcmlhLDxicj48YnI+VGhhbmtzIGZvciB0aGlzIFJCRiBzdW0gdXAuIEZldyB0 aG91Z2h0cyBhbmQgbW9yZSBjb250ZXh0IGNvbW1lbnRzIGlmIGl0IGNhbiBoZWxwIG90aGVyIHJl YWRlcnMuPGJyPjxicj4mZ3Q7IEZvciBzdGFydGVycywgdGhlIGFic29sdXRlIGZlZSBwaW5uaW5n IGF0dGFjayBpcyBlc3BlY2lhbGx5PGJyPiZndDsgcHJvYmxlbWF0aWMgaWYgd2UgYXBwbHkgdGhl IHNhbWUgcnVsZXMgKGkuZS4gUnVsZSAjMyBhbmQgIzQpIGluPGJyPiZndDsgUGFja2FnZSBSQkYu IEltYWdpbmUgdGhhdCBBbGljZSAoaG9uZXN0KSBhbmQgQm9iIChhZHZlcnNhcnkpIHNoYXJlIGE8 YnI+Jmd0OyBMTiBjaGFubmVsLiBUaGUgbWVtcG9vbCBpcyByYXRoZXIgZnVsbCwgc28gdGhlaXIg cHJlLW5lZ290aWF0ZWQ8YnI+Jmd0OyBjb21taXRtZW50IHRyYW5zYWN0aW9ucycgZmVlcmF0ZXMg d291bGQgbm90IGJlIGNvbnNpZGVyZWQgaGlnaDxicj4mZ3Q7IHByaW9yaXR5IGJ5IG1pbmVycy4g IEJvYiBicm9hZGNhc3RzIGhpcyBjb21taXRtZW50IHRyYW5zYWN0aW9uIGFuZDxicj4mZ3Q7IGF0 dGFjaGVzIGEgdmVyeSBsYXJnZSBjaGlsZCAoMTAwS3ZCIHdpdGggMTAwLDAwMHNhdCBpbiBmZWVz KSB0byBoaXM8YnI+Jmd0OyBhbmNob3Igb3V0cHV0LiBBbGljZSBicm9hZGNhc3RzIGhlciBjb21t aXRtZW50IHRyYW5zYWN0aW9uIHdpdGggYTxicj4mZ3Q7IGZlZS1idW1waW5nIGNoaWxkICgyMDB2 QiB3aXRoIDUwLDAwMHNhdCBmZWVzIHdoaWNoIGlzIGEgZ2VuZXJvdXM8YnI+Jmd0OyAyNTBzYXQv dkIpLCBidXQgdGhpcyBkb2VzIG5vdCBtZWV0IHRoZSBhYnNvbHV0ZSBmZWUgcmVxdWlyZW1lbnQu IFNoZTxicj4mZ3Q7IHdvdWxkIG5lZWQgdG8gYWRkIGFub3RoZXIgNTAsMDAwc2F0IHRvIHJlcGxh Y2UgQm9iJ3MgY29tbWl0bWVudDxicj4mZ3Q7IHRyYW5zYWN0aW9uLjxicj48YnI+U29sdmluZyBM TiBwaW5uaW5nIGF0dGFja3MsIHdoYXQgd2UncmUgYWltaW5nIGZvciBpcyBlbmFibGluZyBhIGZh aXIgZmVlcmF0ZSBiaWQgYmV0d2VlbiB0aGUgIGNvdW50ZXJwYXJ0aWVzLCB0aHVzIGVpdGhlciBm b3JjaW5nIHRoZSBhZHZlcnNhcnkgdG8gb3ZlcmJpZCBvciB0byBkaXNlbmdhZ2UgZnJvbSB0aGUg Y29uZmlybWF0aW9uIGNvbXBldGl0aW9uLiBJZiB0aGUgcmVwbGFjZS1ieS1mZWVyYXRlIHJ1bGUg aXMgYWRvcHRlZCwgdGhlcmUgc2hvdWxkbid0IGJlIGFuIGluY2VudGl2ZSBmb3IgQm9iIHRvPGJy PnBpY2sgdXAgdGhlIGZpcnN0IG9wdGlvbi4gVGhvdWdoIGlmIGhlIGRvZXMsIHRoYXQncyBhIHdp bm5pbmcgb3V0Y29tZSBmb3IgQWxpY2UsIGFzIG9uZSBvZiB0aGUgY29tbWl0bWVudCB0cmFuc2Fj dGlvbnMgY29uZmlybXMgYW5kIGhlciB0aW1lLXNlbnNpdGl2ZSBzZWNvbmQtc3RhZ2UgSFRMQyBj YW4gYmUgc3Vic2VxdWVudGx5IGNvbmZpcm1lZC48YnI+PGJyPiZndDsgSXQncyB1bmNsZWFyIHRv IG1lIGlmPGJyPiZndDsgd2UgaGF2ZSBhIHZlcnkgc3Ryb25nIHJlYXNvbiB0byBjaGFuZ2UgdGhp cywgYnV0IG5vdGluZyBpdCBhcyBhPGJyPiZndDsgbGltaXRhdGlvbiBvZiBvdXIgY3VycmVudCBy ZXBsYWNlbWVudCBwb2xpY3kuIFNlZSBbIzI0MDA3XVsxMl0uPGJyPjxicj5EZXBsb3ltZW50IG9m IFRhcHJvb3Qgb3BlbnMgaW50ZXJlc3RpbmcgcG9zc2liaWxpdGllcyBpbiB0aGUgdmF1bHRzL3Bh eW1lbnQgY2hhbm5lbHMgZGVzaWduIHNwYWNlLCB3aGVyZSB0aGUgdGFwc2NyaXB0cyBjYW4gY29t bWl0IHRvIGRpZmZlcmVudCBzZXQgb2YgdGltZWxvY2tzL3F1b3J1bSBvZiBrZXlzLiBFdmVuIGlm IHRoZSBwcmUtc2lnbmVkIHN0YXRlcyBzdGF5IHN5bW1ldHJpYywgd2hvZXZlciBpcyB0aGUgcHVi bGlzaGVyLCB0aGUgZmVlcmF0ZSBjb3N0IHRvIHNwZW5kIGNhbiBmbHVjdHVhdGUuPGJyPjxicj4m Z3Q7IFdoaWxlIHRoaXMgaXNuJ3QgY29tcGxldGVseSBicm9rZW4sIGFuZCB0aGUgdXNlciBpbnRl cmZhY2UgaXM8YnI+Jmd0OyBzZWNvbmRhcnkgdG8gdGhlIHNhZmV0eSBvZiB0aGUgbWVtcG9vbCBw b2xpY3k8YnI+PGJyPkkgdGhpbmsgd2l0aCBMMnMgdHJhbnNhY3Rpb24gYnJvYWRjYXN0IGJhY2tl bmQsIHRoZSBzdGFiaWxpdHkgYW5kIGNsYXJpdHkgb2YgdGhlIFJCRiB1c2VyIGludGVyZmFjZSBp cyBwcmltYXJ5LiBXaGF0IHdlIGNvdWxkIGJlIHdvcnJpZWQgYWJvdXQgaXMgYSB0b28tbXVjaCBj b21wbGV4IGludGVyZmFjZSBlYXNpbmcgdGhlIHdheSBmb3IgYW4gYXR0YWNrZXIgdG8gdHJpZ2dl ciB5b3VyIEwyIG5vZGUgdG8gaXNzdWUgcG9saWN5LWludmFsaWQgY2hhaW4gb2YgdHJhbnNhY3Rp b25zLiBFc3BlY2lhbGx5LCB3aGVuIHdlIGNvbnNpZGVyIHRoYXQgYW4gYXR0YWNrZXIgbWlnaHQg aGF2ZSBsZXZlcmFnZSBvbiBjaGFpbiBvZiB0cmFuc2FjdGlvbnMgY29tcG9zaXRpb24gKCJmb3Jj ZSBicm9hZGNhc3Qgb2YgY29tbWl0bWVudCBBIHRoZW4gY29tbWl0bWVudCBCLCBrbm93aW5nIHRo ZXkgd2lsbCBzaGFyZSBhIENQRlAiKSBvciBldmVuIHRyYW5zYWN0aW9ucyBzaXplICgib3Zlcmxv YWQgY29tbWl0bWVudCBBIHdpdGggSFRMQ3MiKS48YnI+PGJyPiZndDsgKiBJZiB0aGUgb3JpZ2lu YWwgdHJhbnNhY3Rpb24gaXMgaW4gdGhlIHRvcCB7MC43NU12QiwgMU12Qn0gb2YgdGhlPGJyPiZn dDsgICBtZW1wb29sLCBhcHBseSB0aGUgY3VycmVudCBydWxlcyAoYWJzb2x1dGUgZmVlcyBtdXN0 IGluY3JlYXNlIGFuZDxicj4mZ3Q7IHBheSBmb3IgdGhlIHJlcGxhY2VtZW50IHRyYW5zYWN0aW9u J3MgbmV3IGJhbmR3aWR0aCkuIE90aGVyd2lzZSwgdXNlIGE8YnI+Jmd0OyBmZWVyYXRlLW9ubHkg cnVsZS48YnI+PGJyPkhvdyB0aGlzIG5ldyByZXBsYWNlbWVudCBydWxlIHdvdWxkIGJlaGF2ZSBp ZiB5b3UgaGF2ZSBhIHBhcmVudCBpbiB0aGUgInJlcGxhY2UtYnktZmVlcmF0ZSIgaGFsZiBidXQg dGhlIGNoaWxkIGlzIGluIHRoZSAicmVwbGFjZS1ieS1mZWUiIG9uZSA/PGJyPjxicj5JZiB3ZSBh bGxvdyB0aGUgcmVwbGFjZW1lbnQgb2YgdGhlIHBhcmVudCBiYXNlZCBvbiB0aGUgZmVlcmF0ZSwg d2UgbWlnaHQgZGVjcmVhc2UgdGhlIHRvcCBibG9jayBhYnNvbHV0ZSBmZWVzLjxicj48YnI+SWYg d2UgYmxvY2sgdGhlIHJlcGxhY2VtZW50IG9mIHRoZSBwYXJlbnQgYmFzZWQgb24gdGhlIGZlZXJh dGUgYmVjYXVzZSB0aGUgcmVwbGFjZW1lbnQgYWJzb2x1dGUgZmVlcyBhcmVuJ3QgYWJvdmUgdGhl IHJlcGxhY2VkIHBhY2thZ2UsIHdlIHN0aWxsIHByZWNsdWRlIGEgcGlubmluZyB2ZWN0b3IuIFRo ZSBjaGlsZCBtaWdodCBiZSBsb3ctZmVlcmF0ZSBqdW5rIGFuZCBldmVuIGF0dGFjaGVkIHRvIGEg bG93IGFuY2VzdG9yLXNjb3JlIGJyYW5jaC48YnI+PGJyPklmIEknbSBjb3JyZWN0IG9uIHRoaXMg bGltaXRhdGlvbiwgbWF5YmUgd2UgY291bGQgdHVybiBvZmYgdGhlICJyZXBsYWNlLWJ5LWZlZSIg YmVoYXZpb3IgYXMgc29vbiBhcyB0aGUgbWVtcG9vbCBpcyBmdWxmaWxsZWQgd2l0aCBhIGZldyBi bG9ja3MgPzxicj48YnI+Jmd0OyAqIFJhdGUtbGltaXQgaG93IG1hbnkgcmVwbGFjZW1lbnRzIHdl IGFsbG93IHBlciBwcmV2b3V0Ljxicj48YnI+RGVwZW5kaW5nIG9uIGhvdyBpdCBpcyBpbXBsZW1l bnRlZCwgdGhvdWdoIEkgd291bGQgYmUgY29uY2VybmVkIGl0IGludHJvZHVjZXMgYSBuZXcgcGlu bmluZyB2ZWN0b3IgaW4gdGhlIGNvbnRleHQgb2Ygc2hhcmVkLXV0eG8uIElmIGl0J3MgYSBoYXJk Y29kZWQgY29uc3RhbnQsIGl0IGNvdWxkIGJlIGV4aGF1c3RlZCBieSBhbiBhZHZlcnNhcnkgc3Rh cnRpbmcgYXQgdGhlIGxvd2VzdCBhY2NlcHRhYmxlIGZlZXJhdGUgdGhlbiBzbG93bHkgaW5jcmVh c2luZyB3aGlsZSBzdGlsbCBub3QgcmVhY2hpbmc8YnI+dGhlIHRvcCBvZiB0aGUgbWVtcG9vbC4g U2FtZSBpZiBpdCdzIHRpbWUtYmFzZWQgb3IgYmxvY2stYmFzZWQsIG5vIGd1YXJhbnRlZSB0aGUg cmVwbGFjZW1lbnQgc2xvdCBpcyBob25lc3RseSB1c2VkIGJ5IHlvdXIgY291bnRlcnBhcnR5Ljxi cj48YnI+RnVydGhlciwgYW4gYWJvdmUtdGhlLWF2ZXJhZ2UgcmVwbGFjZW1lbnQgZnJlcXVlbmN5 IG1pZ2h0IGp1c3QgYmUgdGhlIHJlZmxlY3Rpb24gb2YgeW91ciBjb25maXJtYXRpb24gc3RyYXRl Z3kgcmVhY3RpbmcgdG8gYmxvY2sgc2NoZWR1bGUgb3IgbWVtcG9vbHMgaGlzdG9yaWNhbCBkYXRh LiBBcyBsb25nIGFzIHRoZSBmZWVyYXRlIHBlbmFsdHkgaXMgcGFpZCwgSSBsZWFuIHRvIGFsbG93 IHJlcGxhY2VtZW50Ljxicj48YnI+PC9kaXY+KE9uZSBzb2x1dGlvbiBjb3VsZCBiZSB0byBhc3Nv Y2lhdGUgcGVyLXVzZXIgInRhZyIgdG8gdGhlIExOIHRyYW5zYWN0aW9ucywgd2hlcmUgZWFjaCAi dGFnIiB3b3VsZCBoYXZlIGl0cyBvd24gcmVwbGFjZW1lbnQgc2xvdHMsIGJ1dCBwcml2YWN5Pyk8 YnI+PGRpdj48YnI+Jmd0OyAqIFJhdGUtbGltaXQgdHJhbnNhY3Rpb24gdmFsaWRhdGlvbiBpbiBn ZW5lcmFsLCBwZXIgcGVlci48YnI+PGJyPkkgdGhpbmsgd2UgY291bGQgaW1wcm92ZSBvbiB0aGUg Q29yZSdzIG5ldyB0cmFuc2FjdGlvbiByZXF1ZXN0ZXIgbG9naWMuIE1heWJlIHdlIGNvdWxkIGJp bmQgdGhlIHBlZXIgYW5ub3VuY2VkIGZsb3cgYmFzZWQgb24gdGhlIGZlZXJhdGUgc2NvcmUgKG1v ZHVsbyB2YWxpZGF0aW9uIHRpbWUpIG9mIHRoZSBwcmV2aW91c2x5IHZhbGlkYXRlZCB0cmFuc2Fj dGlvbnMgZnJvbSB0aGF0IHBlZXIgPyBUaGF0IHNhaWQsIHdoaWxlIHJlbGF0ZWQgdG8gUkJGLCBp dCBzb3VuZHMgdG8gbWUgdGhhdCBlbmhhbmNpbmcgQ29yZSdzIHJhdGUtbGltaXRpbmcgdHJhbnNh Y3Rpb24gc3RyYXRlZ3kgaXMgYSB3aG9sZSBkaXNjdXNzaW9uIGluIGl0c2VsZiBbMF0uIEVzcGVj aWFsbHkgZW5zdXJpbmcgaXQncyB0b2xlcmFudCB0byB0aGUgc3BlY2lmaWMgcmVxdWlyZW1lbnRz IG9mIExOICZhbXA7IGNvbnNvcnRzLjxicj48YnI+Jmd0OyBXaGF0IHNob3VsZCB0aGV5IGJlPyBX ZSBjYW4gZG8gc29tZSBhcml0aG1ldGljIHRvIHNlZSB3aGF0IGhhcHBlbnMgaWY8YnI+Jmd0OyB5 b3Ugc3RhcnQgd2l0aCB0aGUgYmlnZ2VzdC9sb3dlc3QgZmVlcmF0ZSB0cmFuc2FjdGlvbiBhbmQg ZG8gYSBidW5jaDxicj4mZ3Q7IG9mIHJlcGxhY2VtZW50cy4gTWF5YmUgd2UgZW5kIHVwIHdpdGgg dmFsdWVzIHRoYXQgYXJlIGhpZ2ggZW5vdWdoIHRvPGJyPiZndDsgcHJldmVudCBhYnVzZSBhbmQg bWFrZSBzZW5zZSBmb3IgYXBwbGljYXRpb25zL3VzZXJzIHRoYXQgZG8gUkJGLjxicj48YnI+VGhh dCdzIGEgZ29vZCBxdWVzdGlvbi4gPGJyPjxicj5PbmUgb2JzZXJ2YXRpb24gaXMgdGhhdCB0aGUg YXR0YWNrZXIgY2FuIGFsd2F5cyByZW5ldyB0aGUgc2V0IG9mIERvU3kgdXR4b3MgdG8gcHVyc3Vl IHRoZSBhdHRhY2suIFNvIG1heWJlIHdlIGNvdWxkIHBpY2sgdXAgY29uc3RhbnRzIHNjYWxlZCBv biB0aGUgYmxvY2sgc2l6ZSA/IFRoYXQgd2F5IGFuIGF0dGFja2VyIHdvdWxkIGhhdmUgdG8gYnVy biBmZWVzLCB0aHVzIGRldGVycmluZyB0aGVtIGZyb20gbGF1bmNoaW5nIGFuIGF0dGFjay4gRXZl biBpZiB0aGUgYXR0YWNrZXJzIGFyZSBtaW5lcnMsIHRoZXkgaGF2ZSB0byByZW5vdW5jZSB0aGVp ciBpbmNvbWUgdG8gYWNxdWlyZSBuZXcgRG9TeSB1dHhvcy4gSWYgYSBsb3ctZmVlIHBlcmlvZCwg d2UgY291bGQgc2NhbGUgdXAgdGhlIGNvbnN0YW50cyA/PGJyPjxicj48YnI+T3ZlcmFsbCwgSSB0 aGluayB0aGVyZSBpcyB0aGUgZGVwbG95bWVudCBpc3N1ZSB0byB3YXJuIG9mLiBNb3ZpbmcgdG8g YSBuZXcgc2V0IG9mIFJCRiBydWxlcyBpbXBsaWVzIGZvciBhIGxvdCBvZiBCaXRjb2luIGFwcGxp Y2F0aW9ucyB0byByZXdyaXRlIHRoZWlyIFJCRiBsb2dpY3MuIFdlIG1pZ2h0IGhhdmUgYSBtb3Jl LW9yLWxlc3MgbG9uZyB0cmFuc2l0aW9uIHBlcmlvZCBkdXJpbmcgd2hpY2ggd2Ugc3VwcG9ydCBi b3RoLi4uPGJyPjxicj5DaGVlcnMsPGJyPkFudG9pbmU8YnI+PGJyPlswXSA8YSB0YXJnZXQ9Il9i bGFuayIgaHJlZj0iaHR0cHM6Ly9naXRodWIuY29tL2JpdGNvaW4vYml0Y29pbi9wdWxsLzIxMjI0 IiByZWw9Im5vcmVmZXJyZXIgbm9mb2xsb3cgbm9vcGVuZXIiPmh0dHBzOi8vZ2l0aHViLmNvbS9i aXRjb2luL2JpdGNvaW4vcHVsbC8yMTIyNDwvYT48YnI+PC9kaXY+PC9kaXY+PGJyPjxkaXYgY2xh c3M9ImdtYWlsX3F1b3RlIj48ZGl2IGNsYXNzPSJnbWFpbF9hdHRyIiBkaXI9Imx0ciI+TGUgamV1 LiAyNyBqYW52LiAyMDIyIMOgIDA5OjEwLCBHbG9yaWEgWmhhbyB2aWEgYml0Y29pbi1kZXYgJmx0 OzxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSJtYWlsdG86Yml0Y29pbi1kZXZAbGlzdHMubGludXhm b3VuZGF0aW9uLm9yZyIgcmVsPSJub3JlZmVycmVyIG5vZm9sbG93IG5vb3BlbmVyIj5iaXRjb2lu LWRldkBsaXN0cy5saW51eGZvdW5kYXRpb24ub3JnPC9hPiZndDsgYSDDqWNyaXQgOjxicj48L2Rp dj48YmxvY2txdW90ZSBzdHlsZT0ibWFyZ2luOjBweCAwcHggMHB4IDAuOGV4O2JvcmRlci1sZWZ0 OjFweCBzb2xpZCByZ2IoMjA0LDIwNCwyMDQpO3BhZGRpbmctbGVmdDoxZXgiIGNsYXNzPSJnbWFp bF9xdW90ZSI+PGRpdiBkaXI9Imx0ciI+SGkgZXZlcnlvbmUsPGJyPjxicj5UaGlzIHBvc3QgZGlz Y3Vzc2VzIGxpbWl0YXRpb25zIG9mIGN1cnJlbnQgQml0Y29pbiBDb3JlIFJCRiBwb2xpY3kgYW5k PGJyPmF0dGVtcHRzIHRvIHN0YXJ0IGEgY29udmVyc2F0aW9uIGFib3V0IGhvdyB3ZSBjYW4gaW1w cm92ZSBpdCw8YnI+c3VtbWFyaXppbmcgc29tZSBpZGVhcyB0aGF0IGhhdmUgYmVlbiBkaXNjdXNz ZWQuIFBsZWFzZSByZXBseSBpZiB5b3U8YnI+aGF2ZSBhbnkgbmV3IGlucHV0IG9uIGlzc3VlcyB0 byBiZSBzb2x2ZWQgYW5kIGlkZWFzIGZvciBpbXByb3ZlbWVudCE8YnI+PGJyPkp1c3QgaW4gY2Fz ZSBJJ3ZlIHNjcmV3ZWQgdXAgdGhlIHRleHQgd3JhcHBpbmcgYWdhaW4sIGFub3RoZXIgY29weSBj YW4gYmU8YnI+Zm91bmQgaGVyZTogPGEgdGFyZ2V0PSJfYmxhbmsiIGhyZWY9Imh0dHBzOi8vZ2lz dC5naXRodWIuY29tL2dsb3pvdy8yNWQ5NjYyYzUyNDUzYmQwOGI0YjRiMWQzNzgzYjlmZiIgcmVs PSJub3JlZmVycmVyIG5vZm9sbG93IG5vb3BlbmVyIj5odHRwczovL2dpc3QuZ2l0aHViLmNvbS9n bG96b3cvMjVkOTY2MmM1MjQ1M2JkMDhiNGI0YjFkMzc4M2I5ZmY8L2E+PGJyPjxicj4jIyBCYWNr Z3JvdW5kPGJyPjxicj5QbGVhc2UgZmVlbCBmcmVlIHRvIHNraXAgdGhpcyBzZWN0aW9uIGlmIHlv dSBhcmUgYWxyZWFkeSBmYW1pbGlhcjxicj53aXRoIFJCRi48YnI+PGJyPk5vZGVzIG1heSByZWNl aXZlICpjb25mbGljdGluZyogdW5jb25maXJtZWQgdHJhbnNhY3Rpb25zLCBha2E8YnI+ImRvdWJs ZSBzcGVuZHMiIG9mIHRoZSBzYW1lIGlucHV0cy4gSW5zdGVhZCBvZiBhbHdheXMga2VlcGluZyB0 aGU8YnI+Zmlyc3QgdHJhbnNhY3Rpb24sIHNpbmNlIHYwLjEyLCBCaXRjb2luIENvcmUgbWVtcG9v bCBwb2xpY3kgaGFzPGJyPmluY2x1ZGVkIGEgc2V0IG9mIFJlcGxhY2UtYnktRmVlIChSQkYpIGNy aXRlcmlhIHRoYXQgYWxsb3dzIHRoZSBzZWNvbmQ8YnI+dHJhbnNhY3Rpb24gdG8gcmVwbGFjZSB0 aGUgZmlyc3Qgb25lIGFuZCBhbnkgZGVzY2VuZGFudHMgaXQgbWF5IGhhdmUuPGJyPjxicj5CaXRj b2luIENvcmUgUkJGIHBvbGljeSB3YXMgcHJldmlvdXNseSBkb2N1bWVudGVkIGFzIEJJUCAxMjUu PGJyPlRoZSBjdXJyZW50IFJCRiBwb2xpY3kgaXMgZG9jdW1lbnRlZCBbaGVyZV1bMV0uIEluIHN1 bW1hcnk6PGJyPjxicj4xLiBUaGUgZGlyZWN0bHkgY29uZmxpY3RpbmcgdHJhbnNhY3Rpb25zIGFs bCBzaWduYWwgcmVwbGFjZWFiaWxpdHk8YnI+ICAgZXhwbGljaXRseS48YnI+PGJyPjIuIFRoZSBy ZXBsYWNlbWVudCB0cmFuc2FjdGlvbiBvbmx5IGluY2x1ZGVzIGFuIHVuY29uZmlybWVkIGlucHV0 IGlmPGJyPiAgIHRoYXQgaW5wdXQgd2FzIGluY2x1ZGVkIGluIG9uZSBvZiB0aGUgZGlyZWN0bHkg Y29uZmxpY3Rpbmc8YnI+dHJhbnNhY3Rpb25zLjxicj48YnI+My4gVGhlIHJlcGxhY2VtZW50IHRy YW5zYWN0aW9uIHBheXMgYW4gYWJzb2x1dGUgZmVlIG9mIGF0IGxlYXN0IHRoZTxicj4gICBzdW0g cGFpZCBieSB0aGUgb3JpZ2luYWwgdHJhbnNhY3Rpb25zLjxicj48YnI+NC4gVGhlIGFkZGl0aW9u YWwgZmVlcyBwYXlzIGZvciB0aGUgcmVwbGFjZW1lbnQgdHJhbnNhY3Rpb24nczxicj4gICBiYW5k d2lkdGggYXQgb3IgYWJvdmUgdGhlIHJhdGUgc2V0IGJ5IHRoZSBub2RlJ3MgKmluY3JlbWVudGFs IHJlbGF5PGJyPmZlZXJhdGUqLjxicj48YnI+NS4gVGhlIHN1bSBvZiBhbGwgZGlyZWN0bHkgY29u ZmxpY3RpbmcgdHJhbnNhY3Rpb25zJyBkZXNjZW5kYW50IGNvdW50czxicj4gICAobnVtYmVyIG9m IHRyYW5zYWN0aW9ucyBpbmNsdXNpdmUgb2YgaXRzZWxmIGFuZCBpdHMgZGVzY2VuZGFudHMpPGJy PmRvZXMgbm90IGV4Y2VlZCAxMDAuPGJyPjxicj5XZSBjYW4gc3BsaXQgdGhlc2UgcnVsZXMgaW50 byAzIGNhdGVnb3JpZXMvZ29hbHM6PGJyPjxicj4tICoqQWxsb3cgT3B0aW5nIE91dCoqOiBTb21l IGFwcGxpY2F0aW9ucy9idXNpbmVzc2VzIGFyZSB1bmFibGUgdG88YnI+ICBoYW5kbGUgdHJhbnNh Y3Rpb25zIHRoYXQgYXJlIHJlcGxhY2VhYmxlIChlLmcuIG1lcmNoYW50cyB0aGF0IHVzZTxicj56 ZXJvLWNvbmZpcm1hdGlvbiB0cmFuc2FjdGlvbnMpLiBXZSAodHJ5IHRvKSBoZWxwIHRoZXNlIGJ1 c2luZXNzZXMgYnk8YnI+aG9ub3JpbmcgQklQMTI1IHNpZ25hbGluZzsgd2Ugd29uJ3QgcmVwbGFj ZSB0cmFuc2FjdGlvbnMgdGhhdCBoYXZlIG5vdDxicj5vcHRlZCBpbi48YnI+PGJyPi0gKipJbmNl bnRpdmUgQ29tcGF0aWJpbGl0eSoqOiBFbnN1cmUgdGhhdCBvdXIgUkJGIHBvbGljeSB3b3VsZCBu b3Q8YnI+ICBhY2NlcHQgcmVwbGFjZW1lbnQgdHJhbnNhY3Rpb25zIHdoaWNoIHdvdWxkIGRlY3Jl YXNlIGZlZSBwcm9maXRzPGJyPiAgb2YgYSBtaW5lci4gSW4gZ2VuZXJhbCwgaWYgb3VyIG1lbXBv b2wgcG9saWN5IGRldmlhdGVzIGZyb20gd2hhdCBpczxicj5lY29ub21pY2FsbHkgcmF0aW9uYWws IGl0J3MgbGlrZWx5IHRoYXQgdGhlIHRyYW5zYWN0aW9ucyBpbiBvdXI8YnI+bWVtcG9vbCB3aWxs IG5vdCBtYXRjaCB0aGUgb25lcyBpbiBtaW5lcnMnIG1lbXBvb2xzLCBtYWtpbmcgb3VyPGJyPmZl ZSBlc3RpbWF0aW9uLCBjb21wYWN0IGJsb2NrIHJlbGF5LCBhbmQgb3RoZXIgbWVtcG9vbC1kZXBl bmRlbnQ8YnI+ZnVuY3Rpb25zIHVucmVsaWFibGUuIEluY2VudGl2ZS1pbmNvbXBhdGlibGUgcG9s aWN5IG1heSBhbHNvPGJyPmVuY291cmFnZSB0cmFuc2FjdGlvbiBzdWJtaXNzaW9uIHRocm91Z2gg cm91dGVzIG90aGVyIHRoYW4gdGhlIHAycDxicj5uZXR3b3JrLCBoYXJtaW5nIGNlbnNvcnNoaXAt cmVzaXN0YW5jZSBhbmQgcHJpdmFjeSBvZiBCaXRjb2luIHBheW1lbnRzLjxicj48YnI+LSAqKkRv UyBQcm90ZWN0aW9uKio6IExpbWl0IHR3byB0eXBlcyBvZiBEb1MgYXR0YWNrcyBvbiB0aGUgbm9k ZSdzPGJyPiAgbWVtcG9vbDogKDEpIHRoZSBudW1iZXIgb2YgdGltZXMgYSB0cmFuc2FjdGlvbiBj YW4gYmUgcmVwbGFjZWQgYW5kPGJyPigyKSB0aGUgdm9sdW1lIG9mIHRyYW5zYWN0aW9ucyB0aGF0 IGNhbiBiZSBldmljdGVkIGR1cmluZyBhPGJyPnJlcGxhY2VtZW50Ljxicj48YnI+RXZlbiBtb3Jl IGFic3RyYWN0OiBvdXIgZ29hbCBpcyB0byBtYWtlIGEgcmVwbGFjZW1lbnQgcG9saWN5IHRoYXQ8 YnI+cmVzdWx0cyBpbiBhIHVzZWZ1bCBpbnRlcmZhY2UgZm9yIHVzZXJzIGFuZCBzYWZlIHBvbGlj eSBmb3I8YnI+bm9kZSBvcGVyYXRvcnMuPGJyPjxicj4jIyBNb3RpdmF0aW9uPGJyPjxicj5UaGVy ZSBhcmUgYSBudW1iZXIgb2Yga25vd24gcHJvYmxlbXMgd2l0aCB0aGUgY3VycmVudCBSQkYgcG9s aWN5Ljxicj5NYW55IG9mIHRoZXNlIHNob3J0Y29taW5ncyBleGlzdCBkdWUgdG8gbWVtcG9vbCBs aW1pdGF0aW9ucyBhdCB0aGU8YnI+dGltZSBSQkYgd2FzIGltcGxlbWVudGVkIG9yIHJlc3VsdCBm cm9tIG5ldyB0eXBlcyBvZiBCaXRjb2luIHVzYWdlOzxicj50aGV5IGFyZSBub3QgY3JpdGljaXNt cyBvZiB0aGUgb3JpZ2luYWwgZGVzaWduLjxicj48YnI+IyMjIFBpbm5pbmcgQXR0YWNrczxicj48 YnI+VGhlIG1vc3QgcHJlc3NpbmcgY29uY2VybiBpcyB0aGF0IGF0dGFja2VycyBtYXkgdGFrZSBh ZHZhbnRhZ2Ugb2Y8YnI+bGltaXRhdGlvbnMgaW4gUkJGIHBvbGljeSB0byBwcmV2ZW50IG90aGVy IHVzZXJzJyB0cmFuc2FjdGlvbnMgZnJvbTxicj5iZWluZyBtaW5lZCBvciBnZXR0aW5nIGFjY2Vw dGVkIGFzIGEgcmVwbGFjZW1lbnQuPGJyPjxicj4jIyMjIFNJR0hBU0hfQU5ZT05FQ0FOUEFZIFBp bm5pbmc8YnI+PGJyPkJJUDEyNSMyIGNhbiBiZSBieXBhc3NlZCBieSBjcmVhdGluZyBpbnRlcm1l ZGlhcnkgdHJhbnNhY3Rpb25zIHRvIGJlPGJyPnJlcGxhY2VkIHRvZ2V0aGVyLiBBbnlvbmUgY2Fu IHNpbXBseSBzcGxpdCBhIDEtaW5wdXQgMS1vdXRwdXQ8YnI+dHJhbnNhY3Rpb24gb2ZmIGZyb20g dGhlIHJlcGxhY2VtZW50IHRyYW5zYWN0aW9uLCB0aGVuIGJyb2FkY2FzdCB0aGU8YnI+dHJhbnNh Y3Rpb24gYXMgaXMuIFRoaXMgY2FuIGFsd2F5cyBiZSBkb25lLCBhbmQgcXVpdGUgY2hlYXBseS4g TW9yZTxicj5kZXRhaWxzIGluIFt0aGlzIGNvbW1lbnRdWzJdLjxicj48YnI+SW4gZ2VuZXJhbCwg aWYgYSB0cmFuc2FjdGlvbiBpcyBzaWduZWQgd2l0aCBTSUdIQVNIXF9BTllPTkVDQU5QQVksPGJy PmFueWJvZHkgY2FuIGp1c3QgYXR0YWNoIGEgbG93IGZlZXJhdGUgcGFyZW50IHRvIHRoaXMgdHJh bnNhY3Rpb24gYW5kPGJyPmxvd2VyIGl0cyBhbmNlc3RvciBmZWVyYXRlLiAgRXZlbiBpZiB5b3Ug cmVxdWlyZSBTSUdIQVNIXF9BTEwgd2hpY2g8YnI+cHJldmVudHMgYW4gYXR0YWNrZXIgZnJvbSBj aGFuZ2luZyBhbnkgb3V0cHV0cywgdGhlIGlucHV0IGNhbiBiZSBhPGJyPnZlcnkgbG93IGFtb3Vu dCAoZS5nLiBqdXN0IGFib3ZlIHRoZSBkdXN0IGxpbWl0KSBmcm9tIGEgbG93LWZlZTxicj5hbmNl c3RvciBhbmQgc3RpbGwgYnJpbmcgZG93biB0aGUgYW5jZXN0b3IgZmVlcmF0ZSBvZiB0aGUgdHJh bnNhY3Rpb24uPGJyPjxicj5UTERSOiBpZiB5b3VyIHRyYW5zYWN0aW9uIGlzIHNpZ25lZCB3aXRo IFNJR0hBU0hcX0FOWU9ORUNBTlBBWSBhbmQ8YnI+c2lnbmFscyByZXBsYWNlYWJpbGl0eSwgcmVn YXJkbGVzcyBvZiB0aGUgZmVlcmF0ZSB5b3UgYnJvYWRjYXN0IGF0LCBhbjxicj5hdHRhY2tlciBj YW4gbG93ZXIgaXRzIG1pbmluZyBwcmlvcml0eSBieSBhZGRpbmcgYW4gYW5jZXN0b3IuPGJyPjxi cj4jIyMjIEFic29sdXRlIEZlZTxicj48YnI+VGhlIHJlc3RyaWN0aW9uIG9mIHJlcXVpcmluZyBy ZXBsYWNlbWVudCB0cmFuc2FjdGlvbnMgdG8gaW5jcmVhc2UgdGhlPGJyPmFic29sdXRlIGZlZSBv ZiB0aGUgbWVtcG9vbCBoYXMgYmVlbiBkZXNjcmliZWQgYXMgImJvbmtlcnMuIiBJZiB0aGU8YnI+ b3JpZ2luYWwgdHJhbnNhY3Rpb24gaGFzIGEgdmVyeSBsYXJnZSBkZXNjZW5kYW50IHRoYXQgcGF5 cyBhIGxhcmdlPGJyPmFtb3VudCBvZiBmZWVzLCBldmVuIGlmIGl0IGhhcyBhIGxvdyBmZWVyYXRl LCB0aGUgcmVwbGFjZW1lbnQ8YnI+dHJhbnNhY3Rpb24gbXVzdCBub3cgcGF5IHRob3NlIGZlZXMg aW4gb3JkZXIgdG8gbWVldCBSdWxlICMzLjxicj48YnI+IyMjIyBQYWNrYWdlIFJCRjxicj48YnI+ VGhlcmUgYXJlIGEgbnVtYmVyIG9mIHJlYXNvbnMgd2h5LCBpbiBvcmRlciB0byBlbmFibGUgUGFj a2FnZSBSQkYsIHdlPGJyPmNhbm5vdCB1c2UgdGhlIHNhbWUgY3JpdGVyaWEuPGJyPjxicj5Gb3Ig c3RhcnRlcnMsIHRoZSBhYnNvbHV0ZSBmZWUgcGlubmluZyBhdHRhY2sgaXMgZXNwZWNpYWxseTxi cj5wcm9ibGVtYXRpYyBpZiB3ZSBhcHBseSB0aGUgc2FtZSBydWxlcyAoaS5lLiBSdWxlICMzIGFu ZCAjNCkgaW48YnI+UGFja2FnZSBSQkYuIEltYWdpbmUgdGhhdCBBbGljZSAoaG9uZXN0KSBhbmQg Qm9iIChhZHZlcnNhcnkpIHNoYXJlIGE8YnI+TE4gY2hhbm5lbC4gVGhlIG1lbXBvb2wgaXMgcmF0 aGVyIGZ1bGwsIHNvIHRoZWlyIHByZS1uZWdvdGlhdGVkPGJyPmNvbW1pdG1lbnQgdHJhbnNhY3Rp b25zJyBmZWVyYXRlcyB3b3VsZCBub3QgYmUgY29uc2lkZXJlZCBoaWdoPGJyPnByaW9yaXR5IGJ5 IG1pbmVycy4gIEJvYiBicm9hZGNhc3RzIGhpcyBjb21taXRtZW50IHRyYW5zYWN0aW9uIGFuZDxi cj5hdHRhY2hlcyBhIHZlcnkgbGFyZ2UgY2hpbGQgKDEwMEt2QiB3aXRoIDEwMCwwMDBzYXQgaW4g ZmVlcykgdG8gaGlzPGJyPmFuY2hvciBvdXRwdXQuIEFsaWNlIGJyb2FkY2FzdHMgaGVyIGNvbW1p dG1lbnQgdHJhbnNhY3Rpb24gd2l0aCBhPGJyPmZlZS1idW1waW5nIGNoaWxkICgyMDB2QiB3aXRo IDUwLDAwMHNhdCBmZWVzIHdoaWNoIGlzIGEgZ2VuZXJvdXM8YnI+MjUwc2F0L3ZCKSwgYnV0IHRo aXMgZG9lcyBub3QgbWVldCB0aGUgYWJzb2x1dGUgZmVlIHJlcXVpcmVtZW50LiBTaGU8YnI+d291 bGQgbmVlZCB0byBhZGQgYW5vdGhlciA1MCwwMDBzYXQgdG8gcmVwbGFjZSBCb2IncyBjb21taXRt ZW50PGJyPnRyYW5zYWN0aW9uLjxicj48YnI+RGlzYWxsb3dpbmcgbmV3IHVuY29uZmlybWVkIGlu cHV0cyAoUnVsZSAjMikgaW4gUGFja2FnZSBSQkYgd291bGQgYmU8YnI+YnJva2VuIGZvciBwYWNr YWdlcyBjb250YWluaW5nIHRyYW5zYWN0aW9ucyBhbHJlYWR5IGluIHRoZSBtZW1wb29sLDxicj5l eHBsYWluZWQgW2hlcmVdWzddLjxicj48YnI+Tm90ZTogSSBvcmlnaW5hbGx5IFtwcm9wb3NlZF1b Nl0gUGFja2FnZSBSQkYgdXNpbmcgdGhlIHNhbWUgUnVsZSAjMzxicj5hbmQgIzQgYmVmb3JlIEkg cmVhbGl6ZWQgaG93IHNpZ25pZmljYW50IHRoaXMgcGlubmluZyBhdHRhY2sgaXMuIEknbTxicj5y ZXRyYWN0aW5nIHRoYXQgcHJvcG9zYWwsIGFuZCBhIG5ldyBzZXQgb2YgUGFja2FnZSBSQkYgcnVs ZXMgd291bGQ8YnI+Zm9sbG93IGZyb20gd2hhdGV2ZXIgdGhlIG5ldyBpbmRpdmlkdWFsIFJCRiBy dWxlcyBlbmQgdXAgYmVpbmcuPGJyPjxicj4jIyMjIFNhbWUgVHhpZCBEaWZmZXJlbnQgV2l0bmVz czxicj48YnI+VHdvIHRyYW5zYWN0aW9ucyB3aXRoIHRoZSBzYW1lIG5vbi13aXRuZXNzIGRhdGEg YnV0IGRpZmZlcmVudDxicj53aXRuZXNzZXMgaGF2ZSB0aGUgc2FtZSB0eGlkIGJ1dCBkaWZmZXJl bnQgd3R4aWQsIGFuZCB0aGUgc2FtZSBmZWUgYnV0PGJyPm5vdCBuZWNlc3NhcmlseSB0aGUgc2Ft ZSBmZWVyYXRlLiBDdXJyZW50bHksIGlmIHdlIHNlZSBhIHRyYW5zYWN0aW9uPGJyPnRoYXQgaGFz IHRoZSBzYW1lIHR4aWQgYXMgb25lIGluIHRoZSBtZW1wb29sLCB3ZSByZWplY3QgaXQgYXMgYTxi cj5kdXBsaWNhdGUsIGV2ZW4gaWYgdGhlIGZlZXJhdGUgaXMgbXVjaCBoaWdoZXIuIEl0J3MgdW5j bGVhciB0byBtZSBpZjxicj53ZSBoYXZlIGEgdmVyeSBzdHJvbmcgcmVhc29uIHRvIGNoYW5nZSB0 aGlzLCBidXQgbm90aW5nIGl0IGFzIGE8YnI+bGltaXRhdGlvbiBvZiBvdXIgY3VycmVudCByZXBs YWNlbWVudCBwb2xpY3kuIFNlZSBbIzI0MDA3XVsxMl0uPGJyPjxicj4jIyMgVXNlciBJbnRlcmZh Y2U8YnI+PGJyPiMjIyMgVXNpbmcgVW5jb25maXJtZWQgVVRYT3MgdG8gRnVuZCBSZXBsYWNlbWVu dHM8YnI+PGJyPlRoZSByZXN0cmljdGlvbiBvZiBvbmx5IGFsbG93aW5nIGNvbmZpcm1lZCBVVFhP cyBmb3IgZnVuZGluZyBhPGJyPmZlZS1idW1wIChSdWxlICMyKSBjYW4gaHVydCB1c2VycyB0cnlp bmcgdG8gZmVlLWJ1bXAgdGhlaXI8YnI+dHJhbnNhY3Rpb25zIGFuZCBjb21wbGljYXRlIHdhbGxl dCBpbXBsZW1lbnRhdGlvbnMuIElmIHRoZSBvcmlnaW5hbDxicj50cmFuc2FjdGlvbidzIG91dHB1 dCB2YWx1ZSBpc24ndCBzdWZmaWNpZW50IHRvIGZ1bmQgYSBmZWUtYnVtcCBhbmQvb3I8YnI+YWxs IG9mIHRoZSB1c2VyJ3Mgb3RoZXIgVVRYT3MgYXJlIHVuY29uZmlybWVkLCB0aGV5IG1pZ2h0IG5v dCBiZSBhYmxlPGJyPnRvIGZ1bmQgYSByZXBsYWNlbWVudCB0cmFuc2FjdGlvbi4gV2FsbGV0IGRl dmVsb3BlcnMgYWxzbyBuZWVkIHRvPGJyPnRyZWF0IHNlbGYtb3duZWQgdW5jb25maXJtZWQgVVRY T3MgYXMgdW51c2FibGUgZm9yIGZlZS1idW1waW5nLCB3aGljaDxicj5hZGRzIGNvbXBsZXhpdHkg dG8gd2FsbGV0IGxvZ2ljLiBGb3IgZXhhbXBsZSwgc2VlIEJESyBpc3N1ZXMgWyMxNDRdWzRdPGJy PmFuZCBbIzQxNF1bNV0uPGJyPjxicj4jIyMjIEludGVyZmFjZSBOb3QgU3VpdGFibGUgZm9yIENv aW4gU2VsZWN0aW9uPGJyPjxicj5DdXJyZW50bHksIGEgdXNlciBjYW5ub3Qgc2ltcGx5IGNyZWF0 ZSBhIHJlcGxhY2VtZW50IHRyYW5zYWN0aW9uPGJyPnRhcmdldGluZyBhIHNwZWNpZmljIGZlZXJh dGUgb3IgbWVldGluZyBhIG1pbmltdW0gZmVlIGFtb3VudCBhbmQ8YnI+ZXhwZWN0IHRvIG1lZXQg dGhlIFJCRiBjcml0ZXJpYS4gVGhlIGZlZSBhbW91bnQgZGVwZW5kcyBvbiB0aGUgc2l6ZSBvZjxi cj50aGUgcmVwbGFjZW1lbnQgdHJhbnNhY3Rpb24sIGFuZCBmZWVyYXRlIGlzIGFsbW9zdCBpcnJl bGV2YW50Ljxicj48YnI+Qml0Y29pbiBDb3JlJ3MgYGJ1bXBmZWVgIGRvZXNuJ3QgdXNlIHRoZSBS QkYgcnVsZXMgd2hlbiBmdW5kaW5nIHRoZTxicj5yZXBsYWNlbWVudC4gSXQgW2VzdGltYXRlc11b MTNdIGEgZmVlcmF0ZSB3aGljaCBpcyAid2FsbGV0IGluY3JlbWVudGFsPGJyPnJlbGF5IGZlZSIg KGEgY29uc2VydmF0aXZlIG92ZXJlc3RpbWF0aW9uIG9mIHRoZSBub2RlJ3MgaW5jcmVtZW50YWw8 YnI+cmVsYXkgZmVlKSBoaWdoZXIgdGhhbiB0aGUgb3JpZ2luYWwgdHJhbnNhY3Rpb24sIHNlbGVj dHMgY29pbnMgZm9yPGJyPnRoYXQgZmVlcmF0ZSwgYW5kIGhvcGVzIHRoYXQgaXQgbWVldHMgdGhl IFJCRiBydWxlcy4gSXQgbmV2ZXIgZmFpbHM8YnI+UnVsZSAjMyBhbmQgIzQgYmVjYXVzZSBpdCB1 c2VzIGFsbCBvcmlnaW5hbCBpbnB1dHMgYW5kIHJlZnVzZXMgdG88YnI+YnVtcCBhIHRyYW5zYWN0 aW9uIHdpdGggbWVtcG9vbCBkZXNjZW5kYW50cy48YnI+PGJyPlRoaXMgaXMgc3Vib3B0aW1hbCwg YnV0IGlzIGRlc2lnbmVkIHRvIHdvcmsgd2l0aCB0aGUgY29pbiBzZWxlY3Rpb248YnI+ZW5naW5l OiBzZWxlY3QgYSBmZWVyYXRlIGZpcnN0LCBhbmQgdGhlbiBhZGQgZmVlcyB0byBjb3ZlciBpdC48 YnI+Rm9sbG93aW5nIHRoZSBleGFjdCBSQkYgcnVsZXMgd291bGQgcmVxdWlyZSB3b3JraW5nIHRo ZSBvdGhlciB3YXk8YnI+YXJvdW5kOiBiYXNlZCBvbiBob3cgbXVjaCBmZWVzIHdlJ3ZlIGFkZGVk IHRvIHRoZSB0cmFuc2FjdGlvbiBhbmQgaXRzPGJyPmN1cnJlbnQgc2l6ZSwgY2FsY3VsYXRlIHRo ZSBmZWVyYXRlIHRvIHNlZSBpZiB3ZSBtZWV0IFJ1bGUgIzQuPGJyPjxicj5XaGlsZSB0aGlzIGlz bid0IGNvbXBsZXRlbHkgYnJva2VuLCBhbmQgdGhlIHVzZXIgaW50ZXJmYWNlIGlzPGJyPnNlY29u ZGFyeSB0byB0aGUgc2FmZXR5IG9mIHRoZSBtZW1wb29sIHBvbGljeSwgd2UgY2FuIGRvIG11Y2gg YmV0dGVyLjxicj5BIG11Y2ggbW9yZSB1c2VyLWZyaWVuZGx5IGludGVyZmFjZSB3b3VsZCBkZXBl bmQgKm9ubHkqIG9uIHRoZTxicj5mZWUgYW5kIHNpemUgb2YgdGhlIG9yaWdpbmFsIHRyYW5zYWN0 aW9ucy48YnI+PGJyPiMjIyBVcGRhdGVzIHRvIE1lbXBvb2wgYW5kIE1pbmluZzxicj48YnI+U2lu Y2UgUkJGIHdhcyBmaXJzdCBpbXBsZW1lbnRlZCwgYSBudW1iZXIgb2YgaW1wcm92ZW1lbnRzIGhh dmUgYmVlbjxicj5tYWRlIHRvIG1lbXBvb2wgYW5kIG1pbmluZyBsb2dpYy4gRm9yIGV4YW1wbGUs IHdlIG5vdyB1c2UgYW5jZXN0b3I8YnI+ZmVlcmF0ZXMgaW4gbWluaW5nIChhbGxvd2luZyBDUEZQ KSwgYW5kIGtlZXAgdHJhY2sgb2YgYW5jZXN0b3I8YnI+cGFja2FnZXMgaW4gdGhlIG1lbXBvb2wu PGJyPjxicj4jIyBJZGVhcyBmb3IgSW1wcm92ZW1lbnRzPGJyPjxicj4jIyMgR29hbHM8YnI+PGJy PlRvIHN1bW1hcml6ZSwgdGhlc2Ugc2VlbSB0byBiZSBkZXNpcmVkIGNoYW5nZXMsIGluIG9yZGVy IG9mIHByaW9yaXR5Ojxicj48YnI+MS4gUmVtb3ZlIFJ1bGUgIzMuIFRoZSByZXBsYWNlbWVudCBz aG91bGQgbm90IGJlICpyZXF1aXJlZCogdG8gcGF5PGJyPmhpZ2hlciBhYnNvbHV0ZSBmZWVzLjxi cj48YnI+Mi4gTWFrZSBpdCBpbXBvc3NpYmxlIGZvciBhIHJlcGxhY2VtZW50IHRyYW5zYWN0aW9u IHRvIGhhdmUgYSBsb3dlcjxicj5taW5pbmcgc2NvcmUgdGhhbiB0aGUgb3JpZ2luYWwgdHJhbnNh Y3Rpb24ocykuIFRoaXMgd291bGQgZWxpbWluYXRlPGJyPnRoZSBgU0lHSEFTSFxfQU5ZT05FQ0FO UEFZYCBwaW5uaW5nIGF0dGFjay48YnI+PGJyPjMuIFJlbW92ZSBSdWxlICMyLiBBZGRpbmcgbmV3 IHVuY29uZmlybWVkIGlucHV0cyBzaG91bGQgYmUgYWxsb3dlZC48YnI+PGJyPjQuIENyZWF0ZSBh IG1vcmUgaGVscGZ1bCBpbnRlcmZhY2UgdGhhdCBoZWxwcyB3YWxsZXQgZnVuZCByZXBsYWNlbWVu dDxicj50cmFuc2FjdGlvbnMgdGhhdCBhaW0gZm9yIGEgZmVlcmF0ZSBhbmQgZmVlLjxicj48YnI+ IyMjIEEgRGlmZmVyZW50IE1vZGVsIGZvciBGZWVzPGJyPjxicj5Gb3IgaW5jZW50aXZlIGNvbXBh dGliaWxpdHksIEkgYmVsaWV2ZSB0aGVyZSBhcmUgZGlmZmVyZW50PGJyPmZvcm11bGF0aW9ucyB3 ZSBzaG91bGQgY29uc2lkZXIuICBNb3N0IGltcG9ydGFudGx5LCBpZiB3ZSB3YW50IHRvIGdldDxi cj5yaWQgb2YgdGhlIGFic29sdXRlIGZlZSBydWxlLCB3ZSBjYW4gbm8gbG9uZ2VyIHRoaW5rIG9m IGl0IGFzICJ0aGU8YnI+dHJhbnNhY3Rpb24gbmVlZHMgdG8gcGF5IGZvciBpdHMgb3duIGJhbmR3 aWR0aCwiIHNpbmNlIHdlIHdvbid0IGFsd2F5czxicj5iZSBnZXR0aW5nIGFkZGl0aW9uYWwgZmVl cy4gVGhhdCBtZWFucyB3ZSBuZWVkIGEgbmV3IG1ldGhvZCBvZjxicj5yYXRlLWxpbWl0aW5nIHJl cGxhY2VtZW50cyB0aGF0IGRvZXNuJ3QgcmVxdWlyZSBhZGRpdGlvbmFsIGZlZXMgZXZlcnk8YnI+ dGltZS48YnI+PGJyPldoaWxlIGl0IG1ha2VzIHNlbnNlIHRvIHRoaW5rIGFib3V0IG1vbmV0YXJ5 IGNvc3RzIHdoZW4gbGF1bmNoaW5nIGE8YnI+c3BlY2lmaWMgdHlwZSBvZiBhdHRhY2ssIGdpdmVu IHRoYXQgdGhlIGZlZXMgYXJlIHBhaWQgdG8gdGhlIG1pbmVyIGFuZDxicj5ub3QgdG8gdGhlIG1l bXBvb2wgb3BlcmF0b3JzLCBtYXliZSBpdCBkb2Vzbid0IG1ha2UgbXVjaCBzZW5zZSB0bzxicj50 aGluayBhYm91dCAicGF5aW5nIGZvciBiYW5kd2lkdGgiLiBNYXliZSB3ZSBzaG91bGQgaW1wbGVt ZW50PGJyPnRyYW5zYWN0aW9uIHZhbGlkYXRpb24gcmF0ZS1saW1pdGluZyBkaWZmZXJlbnRseSwg ZS5nLiBidWlsZGluZyBpdDxicj5pbnRvIHRoZSBQMlAgbGF5ZXIgaW5zdGVhZCBvZiB0aGUgbWVt cG9vbCBwb2xpY3kgbGF5ZXIuPGJyPjxicj5SZWNlbnRseSwgU3VoYXMgZ2F2ZSBhIFtmb3JtdWxh dGlvbl1bOF0gZm9yIGluY2VudGl2ZSBjb21wYXRpYmlsaXR5PGJyPnRoYXQgbWFkZSBzZW5zZSB0 byBtZTogImFyZSB0aGUgZmVlcyBleHBlY3RlZCB0byBiZSBwYWlkIGluIHRoZSBuZXh0PGJyPihO PykgYmxvY2tzIGhpZ2hlciBvciBsb3dlciBpZiB3ZSBwcm9jZXNzIHRoaXMgdHJhbnNhY3Rpb24/ Ijxicj48YnI+SSBzdGFydGVkIGJ5IHRoaW5raW5nIGFib3V0IHRoaXMgd2hlcmUgTj0xIG9yIGAx ICsgcGAuPGJyPkhlcmUsIGEgcmF0aW9uYWwgbWluZXIgaXMgbG9va2luZyBhdCB3aGF0IGZlZXMg dGhleSB3b3VsZDxicj5jb2xsZWN0IGluIHRoZSBuZXh0IGJsb2NrLCBhbmQgdGhlbiBzb21lIHBy b3BvcnRpb24gYHBgIG9mIHRoZSByZXN0IG9mPGJyPnRoZSBibG9ja3MgYmFzZWQgb24gdGhlaXIg aGFzaHJhdGUuIFdlJ3JlIGFzc3VtaW5nIGBwYCBpc24ndCAqc28gaGlnaCo8YnI+dGhhdCB0aGV5 IHdvdWxkIGJlIG9rYXkgd2l0aCBsb3dlciBhYnNvbHV0ZSBmZWVzIGluIHRoZSBuZXh0IDEgYmxv Y2suPGJyPldlJ3JlIGFsc28gYXNzdW1pbmcgYHBgIGlzbid0ICpzbyBsb3cqIHRoYXQgdGhlIG1p bmVyIGRvZXNuJ3QgY2FyZTxicj5hYm91dCB3aGF0J3MgbGVmdCBvZiB0aGUgbWVtcG9vbCBhZnRl ciB0aGlzIGJsb2NrLjxicj48YnI+QSB0d2VhayB0byB0aGlzIGZvcm11bGF0aW9uIGlzICJpZiB3 ZSBwcm9jZXNzIHRoaXMgdHJhbnNhY3Rpb24sIHdvdWxkPGJyPnRoZSBmZWVzIGluIHRoZSBuZXh0 IDEgYmxvY2sgaGlnaGVyIG9yIGxvd2VyLCBhbmQgaXMgdGhlIGZlZXJhdGU8YnI+ZGVuc2l0eSBv ZiB0aGUgcmVzdCBvZiB0aGUgbWVtcG9vbCBoaWdoZXIgb3IgbG93ZXI/IiBUaGlzIGlzIHByZXR0 eTxicj5zaW1pbGFyLCB3aGVyZSBOPTEsIGJ1dCB3ZSBjb25zaWRlciB0aGUgcmVzdCBvZiB0aGUg bWVtcG9vbCBieSBmZWVyYXRlPGJyPnJhdGhlciB0aGFuIGZlZXMuPGJyPjxicj4jIyMgTWluaW5n IFNjb3JlIG9mIGEgTWVtcG9vbCBUcmFuc2FjdGlvbjxicj48YnI+V2UgYXJlIG9mdGVuIGludGVy ZXN0ZWQgaW4gZmluZGluZyBvdXQgd2hhdDxicj50aGUgIm1pbmluZyBzY29yZSIgb2YgYSB0cmFu c2FjdGlvbiBpbiB0aGUgbWVtcG9vbCBpcy4gVGhhdCBpcywgd2hlbjxicj50aGUgdHJhbnNhY3Rp b24gaXMgY29uc2lkZXJlZCBpbiBibG9jayB0ZW1wbGF0ZSBidWlsZGluZywgd2hhdCBpcyB0aGU8 YnI+ZmVlcmF0ZSBpdCBpcyBjb25zaWRlcmVkIGF0Pzxicj48YnI+T2J2aW91c2x5LCBpdCdzIG5v dCB0aGUgdHJhbnNhY3Rpb24ncyBpbmRpdmlkdWFsIGZlZXJhdGUuIEJpdGNvaW4gQ29yZTxicj5b bWluaW5nIGNvZGUgc29ydHNdWzE0XSB0cmFuc2FjdGlvbnMgYnkgdGhlaXIgYW5jZXN0b3IgZmVl cmF0ZSBhbmQ8YnI+aW5jbHVkZXMgdGhlbSBwYWNrYWdlcyBhdCBhIHRpbWUsIGtlZXBpbmcgdHJh Y2sgb2YgaG93IHRoaXMgYWZmZWN0cyB0aGU8YnI+cGFja2FnZSBmZWVyYXRlcyBvZiByZW1haW5p bmcgdHJhbnNhY3Rpb25zIGluIHRoZSBtZW1wb29sLjxicj48YnI+KmFuY2VzdG9yIGZlZXJhdGUq OiBBbmNlc3RvciBmZWVyYXRlIGlzIGVhc2lseSBhY2Nlc3NpYmxlIGluZm9ybWF0aW9uLDxicj5i dXQgaXQncyBub3QgYWNjdXJhdGUgZWl0aGVyLCBiZWNhdXNlIGl0IGRvZXNuJ3QgdGFrZSBpbnRv IGFjY291bnQgdGhlPGJyPmZhY3QgdGhhdCBzdWJzZXRzIG9mIGEgdHJhbnNhY3Rpb24ncyBhbmNl c3RvciBzZXQgY2FuIGJlIGluY2x1ZGVkPGJyPndpdGhvdXQgaXQuIEZvciBleGFtcGxlLCBhbmNl c3RvcnMgbWF5IGhhdmUgaGlnaCBmZWVyYXRlcyBvbiB0aGVpciBvd248YnI+b3Igd2UgbWF5IGhh dmUgW2hpZ2ggZmVlcmF0ZSBzaWJsaW5nc11bOF0uPGJyPjxicj5UTERSOiAqTG9va2luZyBhdCB0 aGUgY3VycmVudCBhbmNlc3RvciBmZWVyYXRlIG9mIGEgdHJhbnNhY3Rpb24gaXM8YnI+aW5zdWZm aWNpZW50IHRvIHRlbGwgdXMgd2hhdCBmZWVyYXRlIGl0IHdpbGwgYmUgY29uc2lkZXJlZCBhdCB3 aGVuPGJyPmJ1aWxkaW5nIGEgYmxvY2sgdGVtcGxhdGUgaW4gdGhlIGZ1dHVyZS4qPGJyPjxicj4q bWluKGluZGl2aWR1YWwgZmVlcmF0ZSwgYW5jZXN0b3IgZmVlcmF0ZSkqOiBBbm90aGVyPGJyPmhl dXJpc3RpYyB0aGF0IGlzIHNpbXBsZSB0byBjYWxjdWxhdGUgYmFzZWQgb24gY3VycmVudCBtZW1w b29sIHRvb2xpbmc8YnI+aXMgdG8gdXNlIHRoZSBbbWluaW11bSBvZiBhIHRyYW5zYWN0aW9uJ3Mg aW5kaXZpZHVhbCBzY29yZSBhbmQgaXRzPGJyPmFuY2VzdG9yIHNjb3JlXVsxMF0gYXMgYSBjb25z ZXJ2YXRpdmUgbWVhc3VyZS4gIEJ1dCB0aGlzIGNhbjxicj5vdmVyZXN0aW1hdGUgYXMgd2VsbCAo c2VlIHRoZSBleGFtcGxlIGJlbG93KS4gPGJyPjxicj4qbWluIGFuY2VzdG9yIGZlZXJhdGUodHgg KyBwb3NzaWJsZSBhbmNlc3RvciBzdWJzZXRzKSogV2UgY2FuIGFsc288YnI+dGFrZSB0aGUgbWlu aW11bSBvZiBldmVyeSBwb3NzaWJsZSBhbmNlc3RvciBzdWJzZXQsIGJ1dCB0aGlzIGNhbiBiZTxi cj5jb21wdXRhdGlvbmFsbHkgZXhwZW5zaXZlIHNpbmNlIHRoZXJlIGNhbiBiZSBsb3RzIGFuZCBs b3RzIG9mIGFuY2VzdG9yPGJyPnN1YnNldHMuPGJyPjxicj4qbWF4IGFuY2VzdG9yIGZlZXJhdGUo dHggKyBwb3NzaWJsZSBkZXNjZW5kYW50IHN1YnNldHMpKjogQW5vdGhlciBpZGVhPGJyPmlzIHRv IHVzZSB0aGUgW21heGltdW0gYW5jZXN0b3Igc2NvcmUgb2YgdGhlIHRyYW5zYWN0aW9uICsgZWFj aCBvZiBpdHM8YnI+ZGVzY2VuZGFudHNdWzldLiBUaGlzIGRvZXNuJ3Qgd29yayBlaXRoZXI7IGl0 IGhhcyB0aGUgc2FtZSBibGluZHNwb3Q8YnI+b2YgYW5jZXN0b3Igc3Vic2V0cyBiZWluZyBtaW5l ZCBvbiB0aGVpciBvd24uPGJyPjxicj4jIyMjIE1pbmluZyBTY29yZSBFeGFtcGxlPGJyPjxicj5I ZXJlJ3MgYW4gZXhhbXBsZSBpbGx1c3RyYXRpbmcgd2h5IG1pbmluZyBzY29yZSBpcyB0cmlja3kg dG88YnI+ZWZmaWNpZW50bHkgY2FsY3VsYXRlIGZvciBtZW1wb29sIHRyYW5zYWN0aW9uczo8YnI+ PGJyPkxldCdzIHNheSB5b3UgaGF2ZSBzYW1lLXNpemUgdHJhbnNhY3Rpb25zIEEgKDIxc2F0L3ZC KSwgQiAoMXNhdC92QiksPGJyPkMoOXNhdC92QiksIEQoNXNhdC92QikuPGJyPlRoZSBsYXlvdXQg aXM6IGdyYW5kcGFyZW50IEEsIHBhcmVudCBCLCBhbmQgdHdvIGNoaWxkcmVuIEMgYW5kIEQuPGJy Pjxicj5gYGA8YnI+ICAgIEE8YnI+ICAgIF48YnI+ICAgIEI8YnI+ICAgXiBePGJyPiAgIEMgRDxi cj5gYGA8YnI+PGJyPkEgbWluZXIgdXNpbmcgYW5jZXN0b3IgcGFja2FnZXMgdG8gYnVpbGQgYmxv Y2sgdGVtcGxhdGVzIHdpbGwgZmlyc3Q8YnI+aW5jbHVkZSBBIHdpdGggYSBtaW5pbmcgc2NvcmUg b2YgMjEuIE5leHQsIHRoZSBtaW5lciB3aWxsIGluY2x1ZGUgQiBhbmQ8YnI+QyB3aXRoIGEgbWlu aW5nIHNjb3JlIG9mIDYuIFRoaXMgbGVhdmVzIEQsIHdpdGggYSBtaW5pbmcgc2NvcmUgb2YgNS48 YnI+PGJyPk5vdGU6IGluIHRoaXMgY2FzZSwgbWluaW5nIGJ5IGFuY2VzdG9yIGZlZXJhdGUgcmVz dWx0cyBpbiB0aGUgbW9zdDxicj5yYXRpb25hbCBkZWNpc2lvbnMsIGJ1dCBbYSBjYW5kaWRhdGUg c2V0LWJhc2VkIGFwcHJvYWNoXVsxMF0gd2hpY2g8YnI+bWFrZXMgYW5jZXN0b3IgZmVlcmF0ZSBt dWNoIGxlc3MgcmVsZXZhbnQgY291bGQ8YnI+YmUgbW9yZSBhZHZhbnRhZ2VvdXMgaW4gb3RoZXIg c2l0dWF0aW9ucy48YnI+PGJyPkhlcmUgaXMgYSBjaGFydCBzaG93aW5nIHRoZSAidHJ1ZSIgbWlu aW5nIHNjb3JlIGFsb25nc2lkZSB0aGUgdmFsdWVzPGJyPmNhbGN1bGF0aW5nIHVzaW5nIGltcGVy ZmVjdCBoZXVyaXN0aWNzIGRlc2NyaWJlZCBhYm92ZS4gQWxsIG9mIHRoZW08YnI+Y2FuIG92ZXJl c3RpbWF0ZSBvciB1bmRlcmVzdGltYXRlLjxicj48YnI+YGBgPGJyPgkJCQkgICAgQQkgICAgIEIg ICAgICAgQwkgICAgIEQ8YnI+bWluaW5nIHNjb3JlCQkJfCAgIDIxICAgfCAgIDYgICB8ICAgNiAg IHwgICA1ICAgfDxicj5hbmNlc3RvciBmZWVyYXRlCSAgCXwgICAyMSAgIHwgIDExICAgfCAxMC4z ICB8ICAgOSAgIHw8YnI+bWluKGluZGl2aWR1YWwsIGFuY2VzdG9yKQl8ICAgMjEgICB8ICAgMSAg IHwgICA5ICAgfCAgIDUgICB8PGJyPm1pbih0eCArIGFuY2VzdG9yIHN1YnNldHMpICAgICAgfCAg IDIxICAgfCAgIDEgICB8ICAgNSAgIHwgICAzICAgfDxicj5tYXgodHggKyBkZXNjZW5kYW50cyBz dWJzZXRzKQl8ICAgMjEgICB8ICAgOSAgIHwgICA5ICAgfCAgIDUgICB8PGJyPjxicj5gYGA8YnI+ PGJyPlBvc3NpYmx5IHRoZSBiZXN0IHNvbHV0aW9uIGZvciBmaW5kaW5nIHRoZSAibWluaW5nIHNj b3JlIiBvZiBhPGJyPnRyYW5zYWN0aW9uIGlzIHRvIGJ1aWxkIGEgYmxvY2sgdGVtcGxhdGUsIHNl ZSB3aGF0IGZlZXJhdGUgZWFjaDxicj5wYWNrYWdlIGlzIGluY2x1ZGVkIGF0LiBQZXJoYXBzIGF0 IHNvbWUgY3V0b2ZmLCByZW1haW5pbmcgbWVtcG9vbDxicj50cmFuc2FjdGlvbnMgY2FuIGJlIGVz dGltYXRlZCB1c2luZyBzb21lIGhldXJpc3RpYyB0aGF0IGxlYW5zPGJyPntvdmVyZXN0aW1hdGlu ZywgdW5kZXJlc3RpbWF0aW5nfSBkZXBlbmRpbmcgb24gdGhlIHNpdHVhdGlvbi48YnI+PGJyPk1p bmluZyBzY29yZSBzZWVtcyB0byBiZSByZWxldmFudCBpbiBtdWx0aXBsZSBwbGFjZXM6IE11cmNo IGFuZCBJPGJyPnJlY2VudGx5IFtmb3VuZF1bM10gdGhhdCBpdCB3b3VsZCBiZSB2ZXJ5IGltcG9y dGFudCBpbjxicj4iYW5jZXN0b3ItYXdhcmUiIGZ1bmRpbmcgb2YgdHJhbnNhY3Rpb25zICh0aGUg d2FsbGV0IGRvZXNuJ3Q8YnI+aW5jb3Jwb3JhdGUgYW5jZXN0b3IgZmVlcyB3aGVuIHVzaW5nIHVu Y29uZmlybWVkIHRyYW5zYWN0aW9ucyBpbiBjb2luPGJyPnNlbGVjdGlvbiwgd2hpY2ggaXMgYSBi dWcgd2Ugd2FudCB0byBmaXgpLjxicj48YnI+SW4gZ2VuZXJhbCwgaXQgd291bGQgYmUgbmljZSB0 byBrbm93IHRoZSBleGFjdCBtaW5pbmcgcHJpb3JpdHkgb2Y8YnI+b25lJ3MgdW5jb25maXJtZWQg dHJhbnNhY3Rpb24gaXMuICBJIGNhbiB0aGluayBvZiBhIGZldyBibG9jay9tZW1wb29sPGJyPmV4 cGxvcmVycyB3aG8gbWlnaHQgd2FudCB0byBkaXNwbGF5IHRoaXMgaW5mb3JtYXRpb24gZm9yIHVz ZXJzLjxicj48YnI+IyMjIFJCRiBJbXByb3ZlbWVudCBQcm9wb3NhbHM8YnI+PGJyPkFmdGVyIHNw ZWFraW5nIHRvIHF1aXRlIGEgZmV3IHBlb3BsZSwgaGVyZSBhcmUgc29tZSBzdWdnZXN0aW9uczxi cj5mb3IgaW1wcm92ZW1lbnRzIHRoYXQgSSBoYXZlIGhlYXJkOjxicj48YnI+KiBUaGUgYW5jZXN0 b3Igc2NvcmUgb2YgdGhlIHJlcGxhY2VtZW50IG11c3QgYmUgezUsIDEwLCBOfSUgaGlnaGVyPGJy PiAgdGhhbiB0aGF0IG9mIGV2ZXJ5IG9yaWdpbmFsIHRyYW5zYWN0aW9uLjxicj48YnI+KiBUaGUg YW5jZXN0b3Igc2NvcmUgb2YgdGhlIHJlcGxhY2VtZW50IG11c3QgYmUgMXNhdC92QiBoaWdoZXIg dGhhbjxicj4gIHRoYXQgb2YgZXZlcnkgb3JpZ2luYWwgdHJhbnNhY3Rpb24uPGJyPjxicj4qIElm IHRoZSBvcmlnaW5hbCB0cmFuc2FjdGlvbiBpcyBpbiB0aGUgdG9wIHswLjc1TXZCLCAxTXZCfSBv ZiB0aGU8YnI+ICBtZW1wb29sLCBhcHBseSB0aGUgY3VycmVudCBydWxlcyAoYWJzb2x1dGUgZmVl cyBtdXN0IGluY3JlYXNlIGFuZDxicj5wYXkgZm9yIHRoZSByZXBsYWNlbWVudCB0cmFuc2FjdGlv bidzIG5ldyBiYW5kd2lkdGgpLiBPdGhlcndpc2UsIHVzZSBhPGJyPmZlZXJhdGUtb25seSBydWxl Ljxicj48YnI+KiBJZiBmZWVzIGRvbid0IGluY3JlYXNlLCB0aGUgc2l6ZSBvZiB0aGUgcmVwbGFj ZW1lbnQgdHJhbnNhY3Rpb24gbXVzdDxicj4gIGRlY3JlYXNlIGJ5IGF0IGxlYXN0IE4lLjxicj48 YnI+KiBSYXRlLWxpbWl0IGhvdyBtYW55IHJlcGxhY2VtZW50cyB3ZSBhbGxvdyBwZXIgcHJldm91 dC48YnI+PGJyPiogUmF0ZS1saW1pdCB0cmFuc2FjdGlvbiB2YWxpZGF0aW9uIGluIGdlbmVyYWws IHBlciBwZWVyLjxicj48YnI+UGVyaGFwcyBzb21lIG90aGVycyBvbiB0aGUgbWFpbGluZyBsaXN0 IGNhbiBjaGltZSBpbiB0byB0aHJvdyBvdGhlcjxicj5pZGVhcyBpbnRvIHRoZSByaW5nIGFuZC9v ciBjb21iaW5lIHNvbWUgb2YgdGhlc2UgcnVsZXMgaW50byBhIHNlbnNpYmxlPGJyPnBvbGljeS48 YnI+PGJyPiMjIyMgUmVwbGFjZSBieSBGZWVyYXRlIE9ubHk8YnI+PGJyPkkgZG9uJ3QgdGhpbmsg dGhlcmUncyBnb2luZyB0byBiZSBhIHNpbmdsZS1saW5lIGZlZXJhdGUtYmFzZWQ8YnI+cnVsZSB0 aGF0IGNhbiBpbmNvcnBvcmF0ZSBldmVyeXRoaW5nIHdlIG5lZWQuPGJyPk9uIG9uZSBoYW5kLCBh IGZlZXJhdGUtb25seSBhcHByb2FjaCBoZWxwcyBlbGltaW5hdGUgdGhlIGlzc3Vlczxicj5hc3Nv Y2lhdGVkIHdpdGggUnVsZSAjMy4gT24gdGhlIG90aGVyIGhhbmQsIEkgYmVsaWV2ZSB0aGUgbWFp biBjb25jZXJuPGJyPndpdGggYSBmZWVyYXRlLW9ubHkgYXBwcm9hY2ggaXMgaG93IHRvIHJhdGUg bGltaXQgcmVwbGFjZW1lbnRzLiBXZTxicj5kb24ndCB3YW50IHRvIGVuYWJsZSBhbiBhdHRhY2sg c3VjaCBhczo8YnI+PGJyPjEuIEF0dGFja2VyIGJyb2FkY2FzdHMgbGFyZ2UsIGxvdy1mZWVyYXRl IHRyYW5zYWN0aW9uLCBhbmQgYXR0YWNoZXMgYTxicj5jaGFpbiBvZiBkZXNjZW5kYW50cy48YnI+ PGJyPjIuIFRoZSBhdHRhY2tlciByZXBsYWNlcyB0aGUgdHJhbnNhY3Rpb24gd2l0aCBhIHNtYWxs ZXIgYnV0IGhpZ2hlcjxicj5mZWVyYXRlIHRyYW5zYWN0aW9uLCBhdHRhY2hpbmcgYSBuZXcgY2hh aW4gb2YgZGVzY2VuZGFudHMuPGJyPjxicj4zLiBSZXBlYXQgMTAwMCB0aW1lcy48YnI+PGJyPiMj IyMgRmVlcyBpbiBOZXh0IEJsb2NrIGFuZCBGZWVyYXRlIGZvciB0aGUgUmVzdCBvZiB0aGUgTWVt cG9vbDxicj48YnI+UGVyaGFwcyB3ZSBjYW4gbG9vayBhdCByZXBsYWNlbWVudHMgbGlrZSB0aGlz Ojxicj48YnI+MS4gQ2FsY3VsYXRlIHRoZSBkaXJlY3RseSBjb25mbGljdGluZyB0cmFuc2FjdGlv bnMgYW5kLCB3aXRoIHRoZWlyPGJyPmRlc2NlbmRhbnRzLCB0aGUgb3JpZ2luYWwgdHJhbnNhY3Rp b25zLiBDaGVjayBzaWduYWxpbmcuIExpbWl0IHRoZTxicj50b3RhbCB2b2x1bWUgKGUuZy4gY2Fu J3QgYmUgbW9yZSB0aGFuIDEwMCB0b3RhbCBvciAxTXZCIG9yIHNvbWV0aGluZykuPGJyPjxicj4y LiBGaW5kIHdoaWNoIG9yaWdpbmFsIHRyYW5zYWN0aW9ucyB3b3VsZCBiZSBpbiB0aGUgbmV4dCB+ MSBibG9jay4gVGhlPGJyPnJlcGxhY2VtZW50IG11c3QgcGF5IGF0IGxlYXN0IHRoaXMgYW1vdW50 ICsgWCUgaW4gYWJzb2x1dGUgZmVlcy4gVGhpczxicj5ndWFyYW50ZWVzIHRoYXQgdGhlIGZlZXMg b2YgdGhlIG5leHQgYmxvY2sgZG9lc24ndCBkZWNyZWFzZS48YnI+PGJyPjMuIEZpbmQgd2hpY2gg dHJhbnNhY3Rpb25zIHdvdWxkIGJlIGxlZnQgaW4gdGhlIG1lbXBvb2wgYWZ0ZXIgdGhhdCB+MTxi cj5ibG9jay4gVGhlIHJlcGxhY2VtZW50J3MgZmVlcmF0ZSBtdXN0IGJlIFklIGhpZ2hlciB0aGFu IHRoZSBtYXhpbXVtPGJyPm1pbmluZyBzY29yZSBvZiB0aGVzZSB0cmFuc2FjdGlvbnMuIFRoaXMg Z3VhcmFudGVlcyB0aGF0IHlvdSBub3cgaGF2ZTxicj5vbmx5ICpiZXR0ZXIqIGNhbmRpZGF0ZXMg aW4geW91ciBhZnRlci10aGlzLWJsb2NrIG1lbXBvb2wgdGhhbiB5b3UgZGlkPGJyPmJlZm9yZSwg ZXZlbiBpZiB0aGUgc2l6ZSBhbmQgZmVlcyB0aGUgdHJhbnNhY3Rpb25zIGRlY3JlYXNlLjxicj48 YnI+NC4gTm93IHlvdSBoYXZlIHR3byBudW1iZXJzOiBhIG1pbmltdW0gYWJzb2x1dGUgZmVlIGFt b3VudCBhbmQgYTxicj5taW5pbXVtIGZlZXJhdGUuIENoZWNrIHRvIHNlZSBpZiB0aGUgcmVwbGFj ZW1lbnQocykgbWVldCB0aGVzZTxicj5taW5pbXVtcy4gQWxzbywgYSB3YWxsZXQgd291bGQgYmUg YWJsZSB0byBhc2sgdGhlIG5vZGUgIldoYXQgZmVlIGFuZDxicj5mZWVyYXRlIHdvdWxkIEkgbmVl ZCB0byBwdXQgb24gYSB0cmFuc2FjdGlvbiByZXBsYWNpbmcgdGhpcz8iIGFuZCB1c2U8YnI+dGhp cyBpbmZvcm1hdGlvbiB0byBmdW5kIGEgcmVwbGFjZW1lbnQgdHJhbnNhY3Rpb24sIHdpdGhvdXQg bmVlZGluZyB0bzxicj5ndWVzcyBvciBvdmVyc2hvb3QuPGJyPjxicj5PYnZpb3VzbHksIHRoZXJl IGFyZSBzb21lIG1hZ2ljIG51bWJlcnMgbWlzc2luZyBoZXJlLiBYIGFuZCBZIGFyZTxicj5UQkQg Y29uc3RhbnRzIHRvIGVuc3VyZSB3ZSBoYXZlIHNvbWUga2luZCBvZiByYXRlIGxpbWl0aW5nIGZv ciB0aGU8YnI+bnVtYmVyIG9mIHJlcGxhY2VtZW50cyBhbGxvd2VkIHVzaW5nIHNvbWUgc2V0IG9m IGZlZXMuPGJyPjxicj5XaGF0IHNob3VsZCB0aGV5IGJlPyBXZSBjYW4gZG8gc29tZSBhcml0aG1l dGljIHRvIHNlZSB3aGF0IGhhcHBlbnMgaWY8YnI+eW91IHN0YXJ0IHdpdGggdGhlIGJpZ2dlc3Qv bG93ZXN0IGZlZXJhdGUgdHJhbnNhY3Rpb24gYW5kIGRvIGEgYnVuY2g8YnI+b2YgcmVwbGFjZW1l bnRzLiBNYXliZSB3ZSBlbmQgdXAgd2l0aCB2YWx1ZXMgdGhhdCBhcmUgaGlnaCBlbm91Z2ggdG88 YnI+cHJldmVudCBhYnVzZSBhbmQgbWFrZSBzZW5zZSBmb3IgYXBwbGljYXRpb25zL3VzZXJzIHRo YXQgZG8gUkJGLjxicj48YnI+IyMjIE1lbXBvb2wgQ2hhbmdlcyBOZWVkIGZvciBJbXBsZW1lbnRh dGlvbjxicj48YnI+QXMgZGVzY3JpYmVkIGluIHRoZSBtaW5pbmcgc2NvcmUgc2VjdGlvbiBhYm92 ZSw8YnI+d2UgbWF5IHdhbnQgYWRkaXRpb25hbCB0b29saW5nIHRvIG1vcmUgYWNjdXJhdGVseSBh c3Nlc3M8YnI+dGhlIGVjb25vbWljIGdhaW4gb2YgcmVwbGFjaW5nIHRyYW5zYWN0aW9ucyBpbiBv dXIgbWVtcG9vbC48YnI+PGJyPkEgZmV3IG9wdGlvbnMgaGF2ZSBiZWVuIGRpc2N1c3NlZDo8YnI+ PGJyPiogQ2FsY3VsYXRlIGJsb2NrIHRlbXBsYXRlcyBvbiB0aGUgZmx5IHdoZW4gd2UgbmVlZCB0 byBjb25zaWRlciBhPGJyPiAgcmVwbGFjZW1lbnQuIEhvd2V2ZXIsIHNpbmNlIHJlcGxhY2VtZW50 cyBhcmUgW3F1aXRlIGNvbW1vbl1bMTFdPGJyPiAgYW5kIHRoZSBpbmZvcm1hdGlvbiBtaWdodCBi ZSB1c2VmdWwgZm9yIG90aGVyIHRoaW5ncyBhcyB3ZWxsLCA8YnI+ICBpdCBtYXkgYmUgd29ydGgg aXQgdG8gY2FjaGUgYSBibG9jayB0ZW1wbGF0ZS48YnI+PGJyPiogS2VlcCBhIHBlcnNpc3RlbnQg YmxvY2sgdGVtcGxhdGUgc28gdGhhdCB3ZSBrbm93IHdoYXQgdHJhbnNhY3Rpb25zPGJyPiAgd2Ug d291bGQgcHV0IGluIHRoZSBuZXh0IGJsb2NrLiBXZSBuZWVkIHRvIHJlbWVtYmVyIHRoZSBmZWVy YXRlPGJyPmF0IHdoaWNoIGVhY2ggdHJhbnNhY3Rpb24gd2FzIGluY2x1ZGVkIGluIHRoZSB0ZW1w bGF0ZSwgYmVjYXVzZSBhbjxicj5hbmNlc3RvciBwYWNrYWdlIG1heSBiZSBpbmNsdWRlZCBpbiB0 aGUgc2FtZSBibG9jayB0ZW1wbGF0ZSBpbjxicj5tdWx0aXBsZSBzdWJzZXRzLiBUcmFuc2FjdGlv bnMgaW5jbHVkZWQgZWFybGllciBhbHRlciB0aGUgYW5jZXN0b3I8YnI+ZmVlcmF0ZSBvZiB0aGUg cmVtYWluaW5nIHRyYW5zYWN0aW9ucyBpbiB0aGUgcGFja2FnZS4gV2UgYWxzbyBuZWVkPGJyPnRv IGtlZXAgdHJhY2sgb2YgdGhlIG5ldyBmZWVyYXRlcyBvZiB0cmFuc2FjdGlvbnMgbGVmdCBvdmVy LiA8YnI+PGJyPiogRGl2aWRlIHRoZSBtZW1wb29sIGludG8gdHdvIGxheWVycywgImhpZ2ggZmVl cmF0ZSIgYW5kICJsb3c8YnI+ICBmZWVyYXRlLiIgVGhlIGhpZ2ggZmVlcmF0ZSBsYXllciBjb250 YWlucyB+MSBibG9jayBvZiBwYWNrYWdlcyB3aXRoPGJyPnRoZSBoaWdoZXN0IGFuY2VzdG9yIGZl ZXJhdGVzLCBhbmQgdGhlIGxvdyBmZWVyYXRlIGxheWVyIGNvbnRhaW5zPGJyPmV2ZXJ5dGhpbmcg ZWxzZS4gQXQgdGhlIGVkZ2Ugb2YgYSBibG9jaywgd2UgaGF2ZSBhIEtuYXBzYWNreSBwcm9ibGVt PGJyPndoZXJlIHRoZSBuZXh0IGhpZ2hlc3QgYW5jZXN0b3IgZmVlcmF0ZSBwYWNrYWdlIG1pZ2h0 IG5vdCBmaXQsIHNvIHdlPGJyPndvdWxkIHByb2JhYmx5IHdhbnQgdGhlIGhpZ2ggZmVlcmF0ZSBs YXllciB+Mk12QiBvciBzb21ldGhpbmcgdG8gYXZvaWQ8YnI+dW5kZXJlc3RpbWF0aW5nIHRoZSBm ZWVzLjxicj48YnI+IyMgQWNrbm93bGVkZ2VtZW50czxicj48YnI+VGhhbmsgeW91IHRvIGV2ZXJ5 b25lIHdob3NlIFJCRi1yZWxhdGVkIHN1Z2dlc3Rpb25zLCBncmlldmFuY2VzLDxicj5jcml0aWNp c21zIGFuZCBpZGVhcyB3ZXJlIGluY29ycG9yYXRlZCBpbiB0aGlzIGRvY3VtZW50Ojxicj5BbmRy ZXcgQ2hvdywgTWF0dCBDb3JhbGxvLCBTdWhhcyBEYWZ0dWFyLCBDaHJpc3RpYW4gRGVja2VyLDxi cj5NYXJrIEVyaGFyZHQsIExsb3lkIEZvdXJuaWVyLCBMaXNhIE5laWd1dCwgSm9obiBOZXdiZXJ5 LDxicj5BbnRvaW5lIFBvaW5zb3QsIEFudG9pbmUgUmlhcmQsIExhcnJ5IFJ1YW5lLDxicj48ZGl2 PlMzUksgYW5kIEJhc3RpZW4gVGVpbnR1cmllci48L2Rpdj48ZGl2Pjxicj48L2Rpdj48ZGl2PlRo YW5rcyBmb3IgcmVhZGluZyE8L2Rpdj48ZGl2Pjxicj48L2Rpdj48ZGl2PkJlc3QsPGJyPjwvZGl2 PjxkaXY+R2xvcmlhPGJyPjwvZGl2Pjxicj5bMV06IDxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSJo dHRwczovL2dpdGh1Yi5jb20vYml0Y29pbi9iaXRjb2luL2Jsb2IvbWFzdGVyL2RvYy9wb2xpY3kv bWVtcG9vbC1yZXBsYWNlbWVudHMubWQiIHJlbD0ibm9yZWZlcnJlciBub2ZvbGxvdyBub29wZW5l ciI+aHR0cHM6Ly9naXRodWIuY29tL2JpdGNvaW4vYml0Y29pbi9ibG9iL21hc3Rlci9kb2MvcG9s aWN5L21lbXBvb2wtcmVwbGFjZW1lbnRzLm1kPC9hPjxicj5bMl06IDxhIHRhcmdldD0iX2JsYW5r IiBocmVmPSJodHRwczovL2dpdGh1Yi5jb20vYml0Y29pbi9iaXRjb2luL3B1bGwvMjMxMjEjaXNz dWVjb21tZW50LTkyOTQ3NTk5OSIgcmVsPSJub3JlZmVycmVyIG5vZm9sbG93IG5vb3BlbmVyIj5o dHRwczovL2dpdGh1Yi5jb20vYml0Y29pbi9iaXRjb2luL3B1bGwvMjMxMjEjaXNzdWVjb21tZW50 LTkyOTQ3NTk5OTwvYT48YnI+WzNdOiA8YSB0YXJnZXQ9Il9ibGFuayIgaHJlZj0iaHR0cHM6Ly9n aXRodWIuY29tL1hla3lvL2JpdGNvaW4vY29tbWl0L2Q3NTRiMDI0MmVjNjlkNDJjNTcwNDE4YWVi ZjljMTMzNWFmMGI4ZWEiIHJlbD0ibm9yZWZlcnJlciBub2ZvbGxvdyBub29wZW5lciI+aHR0cHM6 Ly9naXRodWIuY29tL1hla3lvL2JpdGNvaW4vY29tbWl0L2Q3NTRiMDI0MmVjNjlkNDJjNTcwNDE4 YWViZjljMTMzNWFmMGI4ZWE8L2E+PGJyPls0XTogPGEgdGFyZ2V0PSJfYmxhbmsiIGhyZWY9Imh0 dHBzOi8vZ2l0aHViLmNvbS9iaXRjb2luZGV2a2l0L2Jkay9pc3N1ZXMvMTQ0IiByZWw9Im5vcmVm ZXJyZXIgbm9mb2xsb3cgbm9vcGVuZXIiPmh0dHBzOi8vZ2l0aHViLmNvbS9iaXRjb2luZGV2a2l0 L2Jkay9pc3N1ZXMvMTQ0PC9hPjxicj5bNV06IDxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSJodHRw czovL2dpdGh1Yi5jb20vYml0Y29pbmRldmtpdC9iZGsvaXNzdWVzLzQxNCIgcmVsPSJub3JlZmVy cmVyIG5vZm9sbG93IG5vb3BlbmVyIj5odHRwczovL2dpdGh1Yi5jb20vYml0Y29pbmRldmtpdC9i ZGsvaXNzdWVzLzQxNDwvYT48YnI+WzZdOiA8YSB0YXJnZXQ9Il9ibGFuayIgaHJlZj0iaHR0cHM6 Ly9saXN0cy5saW51eGZvdW5kYXRpb24ub3JnL3BpcGVybWFpbC9iaXRjb2luLWRldi8yMDIxLVNl cHRlbWJlci8wMTk0NjQuaHRtbCIgcmVsPSJub3JlZmVycmVyIG5vZm9sbG93IG5vb3BlbmVyIj5o dHRwczovL2xpc3RzLmxpbnV4Zm91bmRhdGlvbi5vcmcvcGlwZXJtYWlsL2JpdGNvaW4tZGV2LzIw MjEtU2VwdGVtYmVyLzAxOTQ2NC5odG1sPC9hPjxicj5bN106IDxhIHRhcmdldD0iX2JsYW5rIiBo cmVmPSJodHRwczovL2dpc3QuZ2l0aHViLmNvbS9nbG96b3cvZGM0ZTlkNWM1YjE0YWRlN2NkZmFj NDBmNDNhZGIxOGEjbmV3LXVuY29uZmlybWVkLWlucHV0cy1ydWxlLTIiIHJlbD0ibm9yZWZlcnJl ciBub2ZvbGxvdyBub29wZW5lciI+aHR0cHM6Ly9naXN0LmdpdGh1Yi5jb20vZ2xvem93L2RjNGU5 ZDVjNWIxNGFkZTdjZGZhYzQwZjQzYWRiMThhI25ldy11bmNvbmZpcm1lZC1pbnB1dHMtcnVsZS0y PC9hPjxicj5bOF06IDxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSJodHRwczovL2dpdGh1Yi5jb20v Yml0Y29pbi9iaXRjb2luL3B1bGwvMjMxMjEjZGlzY3Vzc2lvbl9yNzc3MTMxMzY2IiByZWw9Im5v cmVmZXJyZXIgbm9mb2xsb3cgbm9vcGVuZXIiPmh0dHBzOi8vZ2l0aHViLmNvbS9iaXRjb2luL2Jp dGNvaW4vcHVsbC8yMzEyMSNkaXNjdXNzaW9uX3I3NzcxMzEzNjY8L2E+PGJyPls5XTogPGEgdGFy Z2V0PSJfYmxhbmsiIGhyZWY9Imh0dHBzOi8vZ2l0aHViLmNvbS9iaXRjb2luL2JpdGNvaW4vcHVs bC8yMjI5MCNpc3N1ZWNvbW1lbnQtODY1ODg3OTIyIiByZWw9Im5vcmVmZXJyZXIgbm9mb2xsb3cg bm9vcGVuZXIiPmh0dHBzOi8vZ2l0aHViLmNvbS9iaXRjb2luL2JpdGNvaW4vcHVsbC8yMjI5MCNp c3N1ZWNvbW1lbnQtODY1ODg3OTIyPC9hPjxicj5bMTBdOiA8YSB0YXJnZXQ9Il9ibGFuayIgaHJl Zj0iaHR0cHM6Ly9naXN0LmdpdGh1Yi5jb20vWGVreW8vNWNiNDEzZmU5ZjI2ZGJjZTU3YWJmZDM0 NGViYmZhZjIjZmlsZS1jYW5kaWRhdGUtc2V0LWJhc2VkLWJsb2NrLWJ1aWxkaW5nLW1kIiByZWw9 Im5vcmVmZXJyZXIgbm9mb2xsb3cgbm9vcGVuZXIiPmh0dHBzOi8vZ2lzdC5naXRodWIuY29tL1hl a3lvLzVjYjQxM2ZlOWYyNmRiY2U1N2FiZmQzNDRlYmJmYWYyI2ZpbGUtY2FuZGlkYXRlLXNldC1i YXNlZC1ibG9jay1idWlsZGluZy1tZDwvYT48YnI+WzExXTogPGEgdGFyZ2V0PSJfYmxhbmsiIGhy ZWY9Imh0dHBzOi8vZ2l0aHViLmNvbS9iaXRjb2luL2JpdGNvaW4vcHVsbC8yMjUzOSNpc3N1ZWNv bW1lbnQtODg1NzYzNjcwIiByZWw9Im5vcmVmZXJyZXIgbm9mb2xsb3cgbm9vcGVuZXIiPmh0dHBz Oi8vZ2l0aHViLmNvbS9iaXRjb2luL2JpdGNvaW4vcHVsbC8yMjUzOSNpc3N1ZWNvbW1lbnQtODg1 NzYzNjcwPC9hPjxicj5bMTJdOiA8YSB0YXJnZXQ9Il9ibGFuayIgaHJlZj0iaHR0cHM6Ly9naXRo dWIuY29tL2JpdGNvaW4vYml0Y29pbi9wdWxsLzI0MDA3IiByZWw9Im5vcmVmZXJyZXIgbm9mb2xs b3cgbm9vcGVuZXIiPmh0dHBzOi8vZ2l0aHViLmNvbS9iaXRjb2luL2JpdGNvaW4vcHVsbC8yNDAw NzwvYT48YnI+WzEzXTogPGEgdGFyZ2V0PSJfYmxhbmsiIGhyZWY9Imh0dHBzOi8vZ2l0aHViLmNv bS9iaXRjb2luL2JpdGNvaW4vYmxvYi8xYTM2OWYwMDZmZDBiZWMzNzNiOTUwMDFlZDg0YjQ4MGU4 NTJmMTkxL3NyYy93YWxsZXQvZmVlYnVtcGVyLmNwcCNMMTE0IiByZWw9Im5vcmVmZXJyZXIgbm9m b2xsb3cgbm9vcGVuZXIiPmh0dHBzOi8vZ2l0aHViLmNvbS9iaXRjb2luL2JpdGNvaW4vYmxvYi8x YTM2OWYwMDZmZDBiZWMzNzNiOTUwMDFlZDg0YjQ4MGU4NTJmMTkxL3NyYy93YWxsZXQvZmVlYnVt cGVyLmNwcCNMMTE0PC9hPjxicj48ZGl2PlsxNF06IDxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSJo dHRwczovL2dpdGh1Yi5jb20vYml0Y29pbi9iaXRjb2luL2Jsb2IvY2Y1YmIwNDhlODBkNGNkZTg4 Mjg3ODdiMjY2YjdmNWYyZTNiNmQ3Yi9zcmMvbm9kZS9taW5lci5jcHAjTDMxMC1MMzIwIiByZWw9 Im5vcmVmZXJyZXIgbm9mb2xsb3cgbm9vcGVuZXIiPmh0dHBzOi8vZ2l0aHViLmNvbS9iaXRjb2lu L2JpdGNvaW4vYmxvYi9jZjViYjA0OGU4MGQ0Y2RlODgyODc4N2IyNjZiN2Y1ZjJlM2I2ZDdiL3Ny Yy9ub2RlL21pbmVyLmNwcCNMMzEwLUwzMjA8L2E+PC9kaXY+PC9kaXY+DQpfX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXzxicj4NCmJpdGNvaW4tZGV2IG1haWxp bmcgbGlzdDxicj4NCjxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSJtYWlsdG86Yml0Y29pbi1kZXZA bGlzdHMubGludXhmb3VuZGF0aW9uLm9yZyIgcmVsPSJub3JlZmVycmVyIG5vZm9sbG93IG5vb3Bl bmVyIj5iaXRjb2luLWRldkBsaXN0cy5saW51eGZvdW5kYXRpb24ub3JnPC9hPjxicj4NCjxhIHRh cmdldD0iX2JsYW5rIiByZWw9Im5vcmVmZXJyZXIgbm9mb2xsb3cgbm9vcGVuZXIiIGhyZWY9Imh0 dHBzOi8vbGlzdHMubGludXhmb3VuZGF0aW9uLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2JpdGNvaW4t ZGV2Ij5odHRwczovL2xpc3RzLmxpbnV4Zm91bmRhdGlvbi5vcmcvbWFpbG1hbi9saXN0aW5mby9i aXRjb2luLWRldjwvYT48YnI+DQo8L2Jsb2NrcXVvdGU+PC9kaXY+DQpfX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXzxicj4NCmJpdGNvaW4tZGV2IG1haWxpbmcg bGlzdDxicj4NCjxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSJtYWlsdG86Yml0Y29pbi1kZXZAbGlz dHMubGludXhmb3VuZGF0aW9uLm9yZyIgcmVsPSJub3JlZmVycmVyIG5vZm9sbG93IG5vb3BlbmVy Ij5iaXRjb2luLWRldkBsaXN0cy5saW51eGZvdW5kYXRpb24ub3JnPC9hPjxicj4NCjxhIHRhcmdl dD0iX2JsYW5rIiByZWw9Im5vcmVmZXJyZXIgbm9mb2xsb3cgbm9vcGVuZXIiIGhyZWY9Imh0dHBz Oi8vbGlzdHMubGludXhmb3VuZGF0aW9uLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2JpdGNvaW4tZGV2 Ij5odHRwczovL2xpc3RzLmxpbnV4Zm91bmRhdGlvbi5vcmcvbWFpbG1hbi9saXN0aW5mby9iaXRj b2luLWRldjwvYT48YnI+DQo8L2Jsb2NrcXVvdGU+PC9kaXY+DQoNCiAgICAgICAgPC9ibG9ja3F1 b3RlPjxicj4NCiAgICA8L2Rpdj4= --b1_3KcaiQW7MNc93pI2ouIhpNK1om9NYuhEw3pXGqeFs--