Return-Path: Received: from smtp1.linuxfoundation.org (smtp1.linux-foundation.org [172.17.192.35]) by mail.linuxfoundation.org (Postfix) with ESMTPS id 2C461279 for ; Mon, 24 Apr 2017 04:29:29 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mail4.protonmail.ch (mail4.protonmail.ch [185.70.40.27]) by smtp1.linuxfoundation.org (Postfix) with ESMTPS id A6232A7 for ; Mon, 24 Apr 2017 04:29:27 +0000 (UTC) Date: Mon, 24 Apr 2017 00:29:19 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=protonmail.com; s=default; t=1493008163; bh=1EvUyhx4WStoz6yFfA0ho7Rmc93GrdXY3+KZOsR7LYg=; h=To:From:Reply-To:Subject:Feedback-ID:From; b=xR9R0Y/SIsIqCYyG6WJ48hYpc0j3nmUaW47DBsBYnXID8bqiVQdnwI3PRGYYTmTG/ FhZhOJT8GiQwGJjuO7+sK+5eo47wMTIZ7cU7tNuPS3RsKBJ75DuyPrllxkh2rd8lhA XTD7ne76K2bOFlCKID3krXUUhCOI5dmPOOUoxyBU= To: Bitcoin Protocol Discussion From: praxeology_guy Reply-To: praxeology_guy Message-ID: Feedback-ID: QNIhwEyXoeVc3U4MfcUYYZvMnUQl3-PbHr6DzMyDyTNHjRI1PsDP75XnKblbXk3lrG73CSsTOH1kyRSbuPf8Gw==:Ext:ProtonMail MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="b1_436f535650c96f14d81fffa2860a4a6e" X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, FREEMAIL_FROM, HTML_MESSAGE, MIME_BASE64_BLANKS, RCVD_IN_DNSWL_LOW autolearn=ham version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on smtp1.linux-foundation.org X-Mailman-Approved-At: Mon, 24 Apr 2017 11:25:02 +0000 Subject: [bitcoin-dev] Wallet: A User Friendly Data Structure X-BeenThere: bitcoin-dev@lists.linuxfoundation.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: Bitcoin Protocol Discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 24 Apr 2017 04:29:29 -0000 This is a multi-part message in MIME format. --b1_436f535650c96f14d81fffa2860a4a6e Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: base64 QmVsb3cgaXMgYSBwcm9wb3NhbCBmb3IgYSB3YWxsZXQgZGF0YSBzdHJ1Y3R1cmUgdGhhdCBjYW4g ZW5hYmxlIGEgd2FsbGV0IHRvIGJlIHVzZXIgZnJpZW5kbHkuCgpUaGlzIGlzIGEgcHJvcG9zZWQg cGFydGlhbCBzb2x1dGlvbiB0byAiUHJ1bmVkIHdhbGxldCBzdXBwb3J0ICM5NDA5IjogaHR0cHM6 Ly9naXRodWIuY29tL2JpdGNvaW4vYml0Y29pbi9pc3N1ZXMvOTQwOQpJdCBpcyBlbnZpc2lvbmVk IHRvIHdvcmsgd2l0aCAiQ29tcGxldGUgaHlicmlkIGZ1bGwgYmxvY2sgU1BWIG1vZGUgIzk0ODMi OiBodHRwczovL2dpdGh1Yi5jb20vYml0Y29pbi9iaXRjb2luL3B1bGwvOTQ4MwoKVGhlIGRhdGEg c3RydWN0dXJlIGltcGxpZXMgdGhhdCB0aGUgd2FsbGV0IHdvdWxkL2NvdWxkIHJ1biBpbiBhIGRp ZmZlcmVudCBwcm9jZXNzIHRoYW4gYSBCaXRjb2luIG5vZGUuIEZ1cnRoZXJtb3JlLCB0aGUgd2Fs bGV0IHdvdWxkIGhhdmUgYSBzZXQgb2Ygd2hpdGVsaXN0ZWQvdHJ1c3RlZCBub2Rlcywgd2hpY2gg bWF5IG9ubHkgYmUgdGhlIHVzZXIncyBub2Rlcy4KCkNoZWVycywKUHJheGVvbG9neSBHdXkKClRo ZSBwcmltYXJ5IHB1cnBvc2Ugb2YgdGhpcyBkYXRhIHN0cnVjdHVyZSBpcyB0byBlbmFibGUgdGhl IGNyZWF0aW9uIG9mIGEgcmVzcG9uc2l2ZSBhbmQgaW5mb3JtYXRpdmUgb3Blbi1hbmQtZ28gd2Fs bGV0LiBTb21lIG9mIG15IGRlc2lnbiBnb2FscyBpbmNsdWRlOgotIEluc3RhbnQgb24uIENhbiBi ZSBwdXQgaW4gY29sZCBzdG9yYWdlLCBhbmQgeWVhcnMgbGF0ZXIgYmUgaW1tZWRpYXRlbHkgb3Bl cmF0aW9uYWwuCi0gU2NhbnMgb3B0aW9uYWwvaGFwcGVuIGluIGJhY2tncm91bmQuIFN1cHBvcnRz IHBhcnRpYWwgc2NhbnMgb2YgdGhlIGJsb2NrIGhlaWdodCByYW5nZS4KLSBGdW5jdGlvbmFsIGV2 ZW4gd2l0aCBvbmx5IHV0eG8gc2V0IGRhdGEKLSBGYXN0IGxvYWRpbmcgb2YgZXh0ZXJuYWwgcHJp dmF0ZSBrZXlzIGFuZCBvdGhlciB3YXRjaGVkIGlkZW50aWZpZXJzLgotIFN1cHBvcnRzIHdhbGxl dCBtZXJnaW5nCi0gU3VwcG9ydHMgY29ubmVjdGlvbiB3aXRoIGRpZmZlcmVudCBraW5kcyBvZiBu b2Rlcy9wcm92aWRlcnMgb2YgdHJhbnNhY3Rpb24gZXZpZGVuY2UKLSBDb21tdW5pY2F0ZXMgdGhl IHJlbGlhYmlsaXR5IG9mIHRoZSBldmlkZW5jZSB3aXRoIHRoZSB1c2VyCi0gU3VwcG9ydHMgdHJh bnNhY3Rpb24gZGVwcmVjYXRpb24gYW5kIGRvdWJsZSBzcGVuZGluZwotIENhbiB3b3JrIGluIGEg ZGlmZmVyZW50IHByb2Nlc3MgdGhhbiBhIEJpdGNvaW4gcmVsYXkgbm9kZS4KLSBXb3JrcyBpbW1l ZGlhdGVseS9xdWlja2x5IGV2ZW4gd2l0aCBhIG5vZGUgdGhhdCBoYXMgb25seSBwcmVmZXRjaGVk IGhlYWRlcnMgYW5kIG9ubHkgYmVndW4gdmFsaWRhdGluZyBibG9ja3MuCi0gUG90ZW50aWFsbHkg YWxsb3dzIGEgd2FsbGV0IHRvIGRpc3BsYXkgdW5jb25maXJtZWQgdHJhbnNhY3Rpb25zIHRvIHRo ZSB1c2VyIGV2ZW4gaWYgaXQgb25seSBoYXMgYW4gU1BWIGV2aWRlbmNlIHNvdXJjZS4KCj09PSBX YWxsZXQgPT09Ci0gTGlzdDogU3BlbmQgVGVybQotIExpc3Q6IFdhbGxldCBDb2luCi0gTGlzdDog U3BlbmQgQXR0ZW1wdAotIExpc3Q6IFRyYW5zYWN0aW9uIEV2aWRlbmNlCi0gTGlzdDogQ29pbiBT Y2FuCi0gTGlzdDogRXZpZGVuY2UgU291cmNlCgovLyBUaGUgd2FsbGV0IHdvdWxkIGFsc28gbmVl ZCBvdGhlciBkYXRhIHRoYXQgZXhpc3Rpbmcgd2FsbGV0cyBoYXZlIHN1Y2ggYXMgaW5mb3JtYXRp b24gYWJvdXQgZGV0ZXJtaW5pc3RpYyBrZXlzIGFuZCBwcmUtYWxsb2NhdGVkIGtleXMgZXRjLiBG b3IgdGhlIHdhbGxldCB0byB3b3JrIHdpdGggU1BWIHNlY3VyaXR5LCBpdCB3b3VsZCBhbHNvIG5l ZWQgYmxvY2sgaGVhZGVycy4KCj09PSBTcGVuZCBUZXJtID09PQotIEdVSUQKLSBOYW1lIChIdW1h biByZWFkYWJsZSkKLSBUeXBlOiBbcHJpdmF0ZSBrZXkvcHVibGljIGtleS9hZGRyZXNzL291dCBz Y3JpcHRdCi0gVGVybSBWYWx1ZQotIENyZWF0aW9uIGRhdGUKLSBMaXN0OiBXYWxsZXQgQ29pbgoK Ly8gQSBzcGVuZCB0ZXJtIGlzIGFueXRoaW5nIHRoYXQgY2FuIGJlIHVzZWQgdG8gaWRlbnRpZnkg YSBjb2luIHRoYXQgc2hvdWxkIGJlIHRyYWNrZWQgYnkgdGhpcyB3YWxsZXQuIEdVSUQgc2hvdWxk IHByb2JhYmx5IGJlIHRoZSBhZGRyZXNzIG9yIGEgaGFzaCBvZiB0aGUgb3V0IHNjcmlwdC4KCj09 PSBFdmlkZW5jZSBTb3VyY2UgPT09Ci0gR1VJRAotIE9wZXJhdG9yIE5hbWUKLSBEZXZpY2UgTmFt ZQotIFNvZnR3YXJlIE5hbWUKLSBTb2Z0d2FyZSBWZXJzaW9uCi0gUHVibGljIEtleQotIE9wZXJh dG9yIFRydXN0OiBTZWxmLCBSZWxpYWJsZSBGcmllbmQsIFN0cmFuZ2VyCi0gRGV2aWNlIFNlY3Vy aXR5OiBBaXIgR2FwLCBTaW5nbGUgUHVycG9zZSBOZXR3b3JrZWQsIE11bHRpcHVycG9zZSBOZXR3 b3JrZWQsIERlZGljYXRlZCBSZW1vdGUgSG9zdGVkLCBWUFMgUmVtb3RlIEhvc3RlZAoKLy8gQW4g RXZpZGVuY2UgU291cmNlIGlzIGEge29wZXJhdG9yLCBkZXZpY2UsIHNvZnR3YXJlfSB0aGF0IGZ1 bGx5IHZhbGlkYXRlcyBibG9ja3MuIEl0IHByb3ZpZGVzIGV2aWRlbmNlIG9mIGNvaW4gY29uZmly bWF0aW9ucyBhbmQgc3BlbmRzLiBNYXliZSBHVUlEIHNob3VsZCBiZSBhIGhhc2ggb2YgdGhlIHB1 YmxpYyBrZXkuCgo9PT0gV2FsbGV0IENvaW4gPT09ClJlcXVpcmVkOgotIFNwZW5kIFRlcm0gR1VJ RAotIFRYSUQKLSB2b3V0Lml4Ci0gYW1vdW50Ci0gb3V0cHV0IHNjcmlwdApPcHRpb25hbDoKLSBX YWxsZXQgZmlyc3QgZGlzY292ZXJ5IGRhdGUKLSBmdWxsIFRYIGRhdGEKLSBMaXN0OiBUcmFuc2Fj dGlvbiBFdmlkZW5jZQotIExpc3Q6IFNwZW5kIEF0dGVtcHQKLSBUWElEIFNwZW50CgovLyBBIHdh bGxldCBjb2luIGlzIGEgYml0Y29pbiB0eG8gd2l0aCBzb21lIGV4dHJhIGRhdGEgcmVsZXZhbnQg dG8gdGhlIHdhbGxldC4gQSB3YWxsZXQgY29pbidzIElEIGlzIHtUWElELCB2b3V0Lml4fS4KCj09 PSBTcGVuZCBBdHRlbXB0ID09PQotIFdhbGxldCBDb2lucyBMaXN0OiB7VFhJRCwgdm91dC5peH0K LSBUWElECi0gQ3JlYXRpb24gZGF0ZQotIFJlbGF5IGRhdGUocykKLSBJcyBEZXByZWNhdGVkPwot IERlcHJlY2F0ZWQgZGF0ZQotIFJlcGxhY2UgQnkgRmVlIChSQkYpIGVuYWJsZWQ/Ci0gTGlzdDog VHJhbnNhY3Rpb24gRXZpZGVuY2UKCi8vIGRlcHJlY2F0aW5nIGEgc3BlbmQgYXR0ZW1wdCB3aWxs IGNsZWFyIHRoZSAiVFhJRCBTcGVudCIgaW4gV2FsbGV0IENvaW4sIGFuZCBzZXQgIklzIERlcHJl Y2F0ZWQ/IiBhbmQgIkRlcHJlY2F0ZWQgZGF0ZSIuCgo9PT0gRXZpZGVuY2UgPT09ClJlcXVpcmVk OgotIHRpcCBoYXNoCi0gdGlwIGhlaWdodAotIGRhdGUKLSBFdmlkZW5jZSBTb3VyY2UgR1VJRAot IEV2aWRlbmNlIFNvdXJjZSBTaWduYXR1cmUKCj09PSBUcmFuc2FjdGlvbiBFdmlkZW5jZSA6IEV2 aWRlbmNlID09PQpSZXF1aXJlZDoKLSBUWElECk9wdGlvbmFsOgotIGRpc2NvdmVyIGRhdGUKCi8v IEV2aWRlbmNlIG9mIHRoZSBjcmVhdGlvbiBvciBzcGVuZCBvZiBhIGNvaW4uIFRoZXJlIGFyZSBk aWZmZXJlbnQga2luZHMgb2YgZXZpZGVuY2UgZnJvbSBkaWZmZXJlbnQgc291cmNlcy4gVGhlIGtp bmQgYW5kIHNvdXJjZSBpbXBhY3QgdGhlIHVzZXIncyBjb25maWRlbmNlIGluIHRoZSB2YWxpZGl0 eSBhbmQgZmluYWxpdHkgb2YgYSB0cmFuc2FjdGlvbi4KCj09PSBDb25maXJtZWQgVVRYTyBTZXQg UHJlc2VuY2UgOiBUcmFuc2FjdGlvbiBFdmlkZW5jZSA9PT0KUmVxdWlyZWQ6Ci0gSXMgaW4gVVRY TyBzZXQ/Ck9wdGlvbmFsOgotIGJsb2NrIGhlaWdodAotIGJsb2NrIGhhc2gKLSBibG9jayB0aW1l c3RhbXAKLSBGdXR1cmU6IHV0eG8gc2V0IHNuYXBob3QgbWVya2xlIHByb29mCi0gY29uZmlybSBk YXRlCgovLyBFdmlkZW5jZSAoZnJvbSBhIHRydXN0d29ydGh5IHNvdXJjZSBuZWVkZWQpIHRoYXQg YSBjb2luIGlzIG9yIGlzIG5vdCBpbiB0aGUgY29uZmlybWVkIHV0eG8gc2V0LiBXaXRoIHRoZSBm dXR1cmUgcG9zc2liaWxpdHkgb2YgdXR4byBzZXQgc25hcHNob3QgbWVya2xlIHByb29mLCB0aGUg dHJ1c3R3b3J0aGluZXNzIG9mIHRoZSBzb3VyY2UgaXMgbm90IGFzIGltcG9ydGFudC4gVGhpcyBl dmlkZW5jZSB0eXBlIGlzIG9ubHkgdXNlZCBmb3IgV2FsbGV0IENvaW5zLiBJdCBpcyBub3QgdXNl ZCBmb3IgU3BlbmQgQXR0ZW1wdHMuCgo9PT0gQ29uZmlybWF0aW9uIDogVHJhbnNhY3Rpb24gRXZp ZGVuY2UgPT09ClJlcXVpcmVkOgotIGJsb2NrIGhlaWdodAotIGJsb2NrIGhhc2gKLSBibG9jayB0 aW1lc3RhbXAKLSB0eCBtZXJrbGUgcHJvb2YKLSB3dHggbWVya2xlIHByb29mCi0gaXMgaW4gZ3Jl YXRlc3QgUG9XIGNoYWluPwpPcHRpb25hbDoKLSBjb25maXJtIGRhdGUKLSA1MSUgYXR0YWNrIGNv c3QgdG8gZG91YmxlIHNwZW5kCi0gRnV0dXJlOiBBcmUvd2hpY2ggcmVsaWFibGUgbWluZXJzIHN0 aWxsIGNyZWF0aW5nIGJsb2NrcyBpbiB0aGUgZ3JlYXRlc3QgUG9XIGNoYWluIChuZXR3b3JrIHNw bGl0IHJpc2spCgovLyBFdmlkZW5jZSB0aGF0IGEgdHJhbnNhY3Rpb24gd2FzIGNvbmZpcm1lZC4K Cj09PSBEaXNjb3ZlcnkgKFVuY29uZmlybWVkIFRYKSA6IFRyYW5zYWN0aW9uIEV2aWRlbmNlID09 PQpPcHRpb25hbDoKLSBDb25maXJtYWJsZSBFdmlkZW5jZTogdHJlZSBvZiBzb3VyY2UgaW5wdXQg dHJhbnNhY3Rpb25zIHRoYXQgbGVhZCBiYWNrIHRvIHV0eG8gb3V0cHV0cy4gVW5jb25maXJtZWQg cGFyZW50czogZGlzY292ZXIgZGF0ZSwgc2l6ZSwgZmVlLgoKLy8gRXZpZGVuY2UgbWVyZWx5IHRo YXQgYSB0cmFuc2FjdGlvbiB3YXMgZGlzY292ZXJlZC4gVGhlcmUgaXMgbm8gZ3VhcmFudGVlIHRo YXQgdGhlIHRyYW5zYWN0aW9uIHdpbGwgYmUgY29uZmlybWVkLiBQcmVmZXJhYmx5IHRoZSBTb3Vy Y2UgdGhhdCBpcyBwcm92aWRpbmcgdGhlIHdhbGxldCB3aXRoIHRoZSBkaXNjb3ZlcnkgZXZpZGVu Y2Ugd2lsbCBhbHNvIHByb3ZpZGUgZXZpZGVuY2UgdGhhdCB0aGUgdHJhbnNhY3Rpb24gY291bGQg YmUgY29uZmlybWVkLi4uIGVzcGVjaWFsbHkgaWYgdGhlIFNvdXJjZSBpcyBub3QgdHJ1c3RlZC4g VGhlIHdhbGxldCBjb3VsZCBhc2sgb3RoZXIgU291cmNlcyB3aGV0aGVyIHRoZSBjb25maXJtZWQg aW5wdXRzIGFyZSBwcmVzZW50IGluIHRoZSBDb25maXJtZWQgVVRYTyBTZXQuCgo9PT0gU3BlbmQg VGVybSBTY2FuIDogRXZpZGVuY2UgPT09Ci0gVGVybSBMaXN0OiBTcGVuZCBUZXJtIEdVSUQKLSBU YXJnZXQ6IFtibG9ja3MsIGNvbmZpcm1lZCB1dHhvIHNldF0KLSBSYW5nZSBTdGFydAotIFJhbmdl IEVuZAoKLy8gVGhlIHdhbGxldCB3b3VsZCByZXF1ZXN0IGEgc2NhbiBmcm9tIHRoZSBTb3VyY2Uu IEl0IHdvdWxkIHByb3ZpZGUgdGhlIHNwZW5kIHRlcm1zLCB0YXJnZXQsIGFuZCByYW5nZS4gVGhl IFNvdXJjZSB3b3VsZCByZXNwb25kIHdpdGggdGhlIHJhbmdlIGFjdHVhbGx5IHNjYW5uZWQsIGlu IGFkZGl0aW9uIHRvIGFueSBUcmFuc2FjdGlvbiBFdmlkZW5jZSBkaXNjb3ZlcmVkLg== --b1_436f535650c96f14d81fffa2860a4a6e Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: base64 PGRpdj5CZWxvdyBpcyBhIHByb3Bvc2FsIGZvciBhIHdhbGxldCBkYXRhIHN0cnVjdHVyZSB0aGF0 IGNhbiBlbmFibGUgYSB3YWxsZXQgdG8gYmUgdXNlciBmcmllbmRseS48YnI+PC9kaXY+PGRpdj48 YnI+PC9kaXY+PGRpdj5UaGlzIGlzIGEgcHJvcG9zZWQgcGFydGlhbCBzb2x1dGlvbiB0byAiUHJ1 bmVkIHdhbGxldCBzdXBwb3J0ICM5NDA5IjogPGEgaHJlZj0iaHR0cHM6Ly9naXRodWIuY29tL2Jp dGNvaW4vYml0Y29pbi9pc3N1ZXMvOTQwOSI+aHR0cHM6Ly9naXRodWIuY29tL2JpdGNvaW4vYml0 Y29pbi9pc3N1ZXMvOTQwOTwvYT48YnI+PC9kaXY+PGRpdj5JdCBpcyBlbnZpc2lvbmVkIHRvIHdv cmsgd2l0aCAiQ29tcGxldGUgaHlicmlkIGZ1bGwgYmxvY2sgU1BWIG1vZGUgIzk0ODMiOiA8YSBo cmVmPSJodHRwczovL2dpdGh1Yi5jb20vYml0Y29pbi9iaXRjb2luL3B1bGwvOTQ4MyI+aHR0cHM6 Ly9naXRodWIuY29tL2JpdGNvaW4vYml0Y29pbi9wdWxsLzk0ODM8L2E+PGJyPjwvZGl2PjxkaXY+ PGJyPjwvZGl2PjxkaXY+VGhlIGRhdGEgc3RydWN0dXJlIGltcGxpZXMgdGhhdCB0aGUgd2FsbGV0 IHdvdWxkL2NvdWxkIHJ1biBpbiBhIGRpZmZlcmVudCBwcm9jZXNzIHRoYW4gYSBCaXRjb2luIG5v ZGUuJm5ic3A7IEZ1cnRoZXJtb3JlLCB0aGUgd2FsbGV0IHdvdWxkIGhhdmUgYSBzZXQgb2Ygd2hp dGVsaXN0ZWQvdHJ1c3RlZCBub2Rlcywgd2hpY2ggbWF5IG9ubHkgYmUgdGhlIHVzZXIncyBub2Rl cy48YnI+PC9kaXY+PGRpdj48YnI+PC9kaXY+PGRpdj5DaGVlcnMsPGJyPjwvZGl2PjxkaXY+UHJh eGVvbG9neSBHdXk8YnI+PC9kaXY+PGRpdj48YnI+PC9kaXY+PGRpdj5UaGUgcHJpbWFyeSBwdXJw b3NlIG9mIHRoaXMgZGF0YSBzdHJ1Y3R1cmUgaXMgdG8gZW5hYmxlIHRoZSBjcmVhdGlvbiBvZiBh IHJlc3BvbnNpdmUgYW5kIGluZm9ybWF0aXZlIG9wZW4tYW5kLWdvIHdhbGxldC4mbmJzcDsgU29t ZSBvZiBteSBkZXNpZ24gZ29hbHMgaW5jbHVkZTo8YnI+PC9kaXY+PGRpdj4tIEluc3RhbnQgb24u Jm5ic3A7IENhbiBiZSBwdXQgaW4gY29sZCBzdG9yYWdlLCBhbmQgeWVhcnMgbGF0ZXIgYmUgaW1t ZWRpYXRlbHkgb3BlcmF0aW9uYWwuPGJyPjwvZGl2PjxkaXY+LSBTY2FucyBvcHRpb25hbC9oYXBw ZW4gaW4gYmFja2dyb3VuZC4gU3VwcG9ydHMgcGFydGlhbCBzY2FucyBvZiB0aGUgYmxvY2sgaGVp Z2h0IHJhbmdlLjxicj48L2Rpdj48ZGl2Pi0gRnVuY3Rpb25hbCBldmVuIHdpdGggb25seSB1dHhv IHNldCBkYXRhPGJyPjwvZGl2PjxkaXY+LSBGYXN0IGxvYWRpbmcgb2YgZXh0ZXJuYWwgcHJpdmF0 ZSBrZXlzIGFuZCBvdGhlciB3YXRjaGVkIGlkZW50aWZpZXJzLjxicj48L2Rpdj48ZGl2Pi0gU3Vw cG9ydHMgd2FsbGV0IG1lcmdpbmc8YnI+PC9kaXY+PGRpdj4tIFN1cHBvcnRzIGNvbm5lY3Rpb24g d2l0aCBkaWZmZXJlbnQga2luZHMgb2Ygbm9kZXMvcHJvdmlkZXJzIG9mIHRyYW5zYWN0aW9uIGV2 aWRlbmNlPGJyPjwvZGl2PjxkaXY+LSBDb21tdW5pY2F0ZXMgdGhlIHJlbGlhYmlsaXR5IG9mIHRo ZSBldmlkZW5jZSB3aXRoIHRoZSB1c2VyPGJyPjwvZGl2PjxkaXY+LSBTdXBwb3J0cyB0cmFuc2Fj dGlvbiBkZXByZWNhdGlvbiBhbmQgZG91YmxlIHNwZW5kaW5nPGJyPjwvZGl2PjxkaXY+LSBDYW4g d29yayBpbiBhIGRpZmZlcmVudCBwcm9jZXNzIHRoYW4gYSBCaXRjb2luIHJlbGF5IG5vZGUuPGJy PjwvZGl2PjxkaXY+LSBXb3JrcyBpbW1lZGlhdGVseS9xdWlja2x5IGV2ZW4gd2l0aCBhIG5vZGUg dGhhdCBoYXMgb25seSBwcmVmZXRjaGVkIGhlYWRlcnMgYW5kIG9ubHkgYmVndW4gdmFsaWRhdGlu ZyBibG9ja3MuPGJyPjwvZGl2PjxkaXY+LSBQb3RlbnRpYWxseSBhbGxvd3MgYSB3YWxsZXQgdG8g ZGlzcGxheSB1bmNvbmZpcm1lZCB0cmFuc2FjdGlvbnMgdG8gdGhlIHVzZXIgZXZlbiBpZiBpdCBv bmx5IGhhcyBhbiBTUFYgZXZpZGVuY2Ugc291cmNlLjxicj48L2Rpdj48ZGl2Pjxicj48L2Rpdj48 ZGl2Pj09PSBXYWxsZXQgPT09PGJyPjwvZGl2PjxkaXY+LSBMaXN0OiBTcGVuZCBUZXJtPGJyPjwv ZGl2PjxkaXY+LSBMaXN0OiBXYWxsZXQgQ29pbjxicj48L2Rpdj48ZGl2Pi0gTGlzdDogU3BlbmQg QXR0ZW1wdDxicj48L2Rpdj48ZGl2Pi0gTGlzdDogVHJhbnNhY3Rpb24gRXZpZGVuY2U8YnI+PC9k aXY+PGRpdj4tIExpc3Q6IENvaW4gU2Nhbjxicj48L2Rpdj48ZGl2Pi0gTGlzdDogRXZpZGVuY2Ug U291cmNlPGJyPjwvZGl2PjxkaXY+PGJyPjwvZGl2PjxkaXY+Ly8gVGhlIHdhbGxldCB3b3VsZCBh bHNvIG5lZWQgb3RoZXIgZGF0YSB0aGF0IGV4aXN0aW5nIHdhbGxldHMgaGF2ZSBzdWNoIGFzIGlu Zm9ybWF0aW9uIGFib3V0IGRldGVybWluaXN0aWMga2V5cyBhbmQgcHJlLWFsbG9jYXRlZCBrZXlz IGV0Yy4mbmJzcDsgRm9yIHRoZSB3YWxsZXQgdG8gd29yayB3aXRoIFNQViBzZWN1cml0eSwgaXQg d291bGQgYWxzbyBuZWVkIGJsb2NrIGhlYWRlcnMuPGJyPjwvZGl2PjxkaXY+PGJyPjwvZGl2Pjxk aXY+PT09IFNwZW5kIFRlcm0gPT09PGJyPjwvZGl2PjxkaXY+LSBHVUlEPGJyPjwvZGl2PjxkaXY+ LSBOYW1lIChIdW1hbiByZWFkYWJsZSk8YnI+PC9kaXY+PGRpdj4tIFR5cGU6IFtwcml2YXRlIGtl eS9wdWJsaWMga2V5L2FkZHJlc3Mvb3V0IHNjcmlwdF08YnI+PC9kaXY+PGRpdj4tIFRlcm0gVmFs dWU8YnI+PC9kaXY+PGRpdj4tIENyZWF0aW9uIGRhdGU8YnI+PC9kaXY+PGRpdj4tIExpc3Q6IFdh bGxldCBDb2luPGJyPjwvZGl2PjxkaXY+PGJyPjwvZGl2PjxkaXY+Ly8gQSBzcGVuZCB0ZXJtIGlz IGFueXRoaW5nIHRoYXQgY2FuIGJlIHVzZWQgdG8gaWRlbnRpZnkgYSBjb2luIHRoYXQgc2hvdWxk IGJlIHRyYWNrZWQgYnkgdGhpcyB3YWxsZXQuJm5ic3A7IEdVSUQgc2hvdWxkIHByb2JhYmx5IGJl IHRoZSBhZGRyZXNzIG9yIGEgaGFzaCBvZiB0aGUgb3V0IHNjcmlwdC48YnI+PC9kaXY+PGRpdj48 YnI+PC9kaXY+PGRpdj49PT0gRXZpZGVuY2UgU291cmNlID09PTxicj48L2Rpdj48ZGl2Pi0gR1VJ RDxicj48L2Rpdj48ZGl2Pi0gT3BlcmF0b3IgTmFtZTxicj48L2Rpdj48ZGl2Pi0gRGV2aWNlIE5h bWU8YnI+PC9kaXY+PGRpdj4tIFNvZnR3YXJlIE5hbWU8YnI+PC9kaXY+PGRpdj4tIFNvZnR3YXJl IFZlcnNpb248YnI+PC9kaXY+PGRpdj4tIFB1YmxpYyBLZXk8YnI+PC9kaXY+PGRpdj4tIE9wZXJh dG9yIFRydXN0OiBTZWxmLCBSZWxpYWJsZSBGcmllbmQsIFN0cmFuZ2VyPGJyPjwvZGl2PjxkaXY+ LSBEZXZpY2UgU2VjdXJpdHk6IEFpciBHYXAsIFNpbmdsZSBQdXJwb3NlIE5ldHdvcmtlZCwgTXVs dGlwdXJwb3NlIE5ldHdvcmtlZCwgRGVkaWNhdGVkIFJlbW90ZSBIb3N0ZWQsIFZQUyBSZW1vdGUg SG9zdGVkPGJyPjwvZGl2PjxkaXY+PGJyPjwvZGl2PjxkaXY+Ly8gQW4gRXZpZGVuY2UgU291cmNl IGlzIGEge29wZXJhdG9yLCBkZXZpY2UsIHNvZnR3YXJlfSB0aGF0IGZ1bGx5IHZhbGlkYXRlcyBi bG9ja3MuJm5ic3A7IEl0IHByb3ZpZGVzIGV2aWRlbmNlIG9mIGNvaW4gY29uZmlybWF0aW9ucyBh bmQgc3BlbmRzLiZuYnNwOyBNYXliZSBHVUlEIHNob3VsZCBiZSBhIGhhc2ggb2YgdGhlIHB1Ymxp YyBrZXkuPGJyPjwvZGl2PjxkaXY+PGJyPjwvZGl2PjxkaXY+PT09IFdhbGxldCBDb2luID09PTxi cj48L2Rpdj48ZGl2PlJlcXVpcmVkOjxicj48L2Rpdj48ZGl2Pi0gU3BlbmQgVGVybSBHVUlEPGJy PjwvZGl2PjxkaXY+LSBUWElEPGJyPjwvZGl2PjxkaXY+LSB2b3V0Lml4PGJyPjwvZGl2PjxkaXY+ LSBhbW91bnQ8YnI+PC9kaXY+PGRpdj4tIG91dHB1dCBzY3JpcHQ8YnI+PC9kaXY+PGRpdj5PcHRp b25hbDo8YnI+PC9kaXY+PGRpdj4tIFdhbGxldCBmaXJzdCBkaXNjb3ZlcnkgZGF0ZTxicj48L2Rp dj48ZGl2Pi0gZnVsbCBUWCBkYXRhPGJyPjwvZGl2PjxkaXY+LSBMaXN0OiBUcmFuc2FjdGlvbiBF dmlkZW5jZTxicj48L2Rpdj48ZGl2Pi0gTGlzdDogU3BlbmQgQXR0ZW1wdDxicj48L2Rpdj48ZGl2 Pi0gVFhJRCBTcGVudDxicj48L2Rpdj48ZGl2Pjxicj48L2Rpdj48ZGl2Pi8vIEEgd2FsbGV0IGNv aW4gaXMgYSBiaXRjb2luIHR4byB3aXRoIHNvbWUgZXh0cmEgZGF0YSByZWxldmFudCB0byB0aGUg d2FsbGV0LiZuYnNwOyBBIHdhbGxldCBjb2luJ3MgSUQgaXMge1RYSUQsIHZvdXQuaXh9Ljxicj48 L2Rpdj48ZGl2Pjxicj48L2Rpdj48ZGl2Pj09PSBTcGVuZCBBdHRlbXB0ID09PTxicj48L2Rpdj48 ZGl2Pi0gV2FsbGV0IENvaW5zIExpc3Q6IHtUWElELCB2b3V0Lml4fTxicj48L2Rpdj48ZGl2Pi0g VFhJRDxicj48L2Rpdj48ZGl2Pi0gQ3JlYXRpb24gZGF0ZTxicj48L2Rpdj48ZGl2Pi0gUmVsYXkg ZGF0ZShzKTxicj48L2Rpdj48ZGl2Pi0gSXMgRGVwcmVjYXRlZD88YnI+PC9kaXY+PGRpdj4tIERl cHJlY2F0ZWQgZGF0ZTxicj48L2Rpdj48ZGl2Pi0gUmVwbGFjZSBCeSBGZWUgKFJCRikgZW5hYmxl ZD88YnI+PC9kaXY+PGRpdj4tIExpc3Q6IFRyYW5zYWN0aW9uIEV2aWRlbmNlPGJyPjwvZGl2Pjxk aXY+PGJyPjwvZGl2PjxkaXY+Ly8gZGVwcmVjYXRpbmcgYSBzcGVuZCBhdHRlbXB0IHdpbGwgY2xl YXIgdGhlICJUWElEIFNwZW50IiBpbiBXYWxsZXQgQ29pbiwgYW5kIHNldCAiSXMgRGVwcmVjYXRl ZD8iIGFuZCAiRGVwcmVjYXRlZCBkYXRlIi48YnI+PC9kaXY+PGRpdj48YnI+PC9kaXY+PGRpdj49 PT0gRXZpZGVuY2UgPT09PGJyPjwvZGl2PjxkaXY+UmVxdWlyZWQ6PGJyPjwvZGl2PjxkaXY+LSB0 aXAgaGFzaDxicj48L2Rpdj48ZGl2Pi0gdGlwIGhlaWdodDxicj48L2Rpdj48ZGl2Pi0gZGF0ZTxi cj48L2Rpdj48ZGl2Pi0gRXZpZGVuY2UgU291cmNlIEdVSUQ8YnI+PC9kaXY+PGRpdj4tIEV2aWRl bmNlIFNvdXJjZSBTaWduYXR1cmU8YnI+PC9kaXY+PGRpdj48YnI+PC9kaXY+PGRpdj49PT0gVHJh bnNhY3Rpb24gRXZpZGVuY2UgOiBFdmlkZW5jZSA9PT08YnI+PC9kaXY+PGRpdj5SZXF1aXJlZDo8 YnI+PC9kaXY+PGRpdj4tIFRYSUQ8YnI+PC9kaXY+PGRpdj5PcHRpb25hbDo8YnI+PC9kaXY+PGRp dj4tIGRpc2NvdmVyIGRhdGU8YnI+PC9kaXY+PGRpdj48YnI+PC9kaXY+PGRpdj4vLyBFdmlkZW5j ZSBvZiB0aGUgY3JlYXRpb24gb3Igc3BlbmQgb2YgYSBjb2luLiZuYnNwOyBUaGVyZSBhcmUgZGlm ZmVyZW50IGtpbmRzIG9mIGV2aWRlbmNlIGZyb20gZGlmZmVyZW50IHNvdXJjZXMuJm5ic3A7IFRo ZSBraW5kIGFuZCBzb3VyY2UgaW1wYWN0IHRoZSB1c2VyJ3MgY29uZmlkZW5jZSBpbiB0aGUgdmFs aWRpdHkgYW5kIGZpbmFsaXR5IG9mIGEgdHJhbnNhY3Rpb24uPGJyPjwvZGl2PjxkaXY+PGJyPjwv ZGl2PjxkaXY+PT09IENvbmZpcm1lZCBVVFhPIFNldCBQcmVzZW5jZSA6IFRyYW5zYWN0aW9uIEV2 aWRlbmNlID09PTxicj48L2Rpdj48ZGl2PlJlcXVpcmVkOjxicj48L2Rpdj48ZGl2Pi0gSXMgaW4g VVRYTyBzZXQ/PGJyPjwvZGl2PjxkaXY+T3B0aW9uYWw6PGJyPjwvZGl2PjxkaXY+LSBibG9jayBo ZWlnaHQ8YnI+PC9kaXY+PGRpdj4tIGJsb2NrIGhhc2g8YnI+PC9kaXY+PGRpdj4tIGJsb2NrIHRp bWVzdGFtcDxicj48L2Rpdj48ZGl2Pi0gRnV0dXJlOiB1dHhvIHNldCBzbmFwaG90IG1lcmtsZSBw cm9vZjxicj48L2Rpdj48ZGl2Pi0gY29uZmlybSBkYXRlPGJyPjwvZGl2PjxkaXY+PGJyPjwvZGl2 PjxkaXY+Ly8gRXZpZGVuY2UgKGZyb20gYSB0cnVzdHdvcnRoeSBzb3VyY2UgbmVlZGVkKSB0aGF0 IGEgY29pbiBpcyBvciBpcyBub3QgaW4gdGhlIGNvbmZpcm1lZCB1dHhvIHNldC4mbmJzcDsgV2l0 aCB0aGUgZnV0dXJlIHBvc3NpYmlsaXR5IG9mIHV0eG8gc2V0IHNuYXBzaG90IG1lcmtsZSBwcm9v ZiwgdGhlIHRydXN0d29ydGhpbmVzcyBvZiB0aGUgc291cmNlIGlzIG5vdCBhcyBpbXBvcnRhbnQu Jm5ic3A7IFRoaXMgZXZpZGVuY2UgdHlwZSBpcyBvbmx5IHVzZWQgZm9yIFdhbGxldCBDb2lucy4m bmJzcDsgSXQgaXMgbm90IHVzZWQgZm9yIFNwZW5kIEF0dGVtcHRzLjxicj48L2Rpdj48ZGl2Pjxi cj48L2Rpdj48ZGl2Pj09PSBDb25maXJtYXRpb24gOiBUcmFuc2FjdGlvbiBFdmlkZW5jZSA9PT08 YnI+PC9kaXY+PGRpdj5SZXF1aXJlZDo8YnI+PC9kaXY+PGRpdj4tIGJsb2NrIGhlaWdodDxicj48 L2Rpdj48ZGl2Pi0gYmxvY2sgaGFzaDxicj48L2Rpdj48ZGl2Pi0gYmxvY2sgdGltZXN0YW1wPGJy PjwvZGl2PjxkaXY+LSB0eCBtZXJrbGUgcHJvb2Y8YnI+PC9kaXY+PGRpdj4tIHd0eCBtZXJrbGUg cHJvb2Y8YnI+PC9kaXY+PGRpdj4tIGlzIGluIGdyZWF0ZXN0IFBvVyBjaGFpbj88YnI+PC9kaXY+ PGRpdj5PcHRpb25hbDo8YnI+PC9kaXY+PGRpdj4tIGNvbmZpcm0gZGF0ZTxicj48L2Rpdj48ZGl2 Pi0gNTElIGF0dGFjayBjb3N0IHRvIGRvdWJsZSBzcGVuZDxicj48L2Rpdj48ZGl2Pi0gRnV0dXJl OiBBcmUvd2hpY2ggcmVsaWFibGUgbWluZXJzIHN0aWxsIGNyZWF0aW5nIGJsb2NrcyBpbiB0aGUg Z3JlYXRlc3QgUG9XIGNoYWluIChuZXR3b3JrIHNwbGl0IHJpc2spPGJyPjwvZGl2PjxkaXY+PGJy PjwvZGl2PjxkaXY+Ly8gRXZpZGVuY2UgdGhhdCBhIHRyYW5zYWN0aW9uIHdhcyBjb25maXJtZWQu PGJyPjwvZGl2PjxkaXY+PGJyPjwvZGl2PjxkaXY+PT09IERpc2NvdmVyeSAoVW5jb25maXJtZWQg VFgpIDogVHJhbnNhY3Rpb24gRXZpZGVuY2UgPT09PGJyPjwvZGl2PjxkaXY+T3B0aW9uYWw6PGJy PjwvZGl2PjxkaXY+LSBDb25maXJtYWJsZSBFdmlkZW5jZTogdHJlZSBvZiBzb3VyY2UgaW5wdXQg dHJhbnNhY3Rpb25zIHRoYXQgbGVhZCBiYWNrIHRvIHV0eG8gb3V0cHV0cy4mbmJzcDsgVW5jb25m aXJtZWQgcGFyZW50czogZGlzY292ZXIgZGF0ZSwgc2l6ZSwgZmVlLjxicj48L2Rpdj48ZGl2Pjxi cj48L2Rpdj48ZGl2Pi8vIEV2aWRlbmNlIG1lcmVseSB0aGF0IGEgdHJhbnNhY3Rpb24gd2FzIGRp c2NvdmVyZWQuJm5ic3A7IFRoZXJlIGlzIG5vIGd1YXJhbnRlZSB0aGF0IHRoZSB0cmFuc2FjdGlv biB3aWxsIGJlIGNvbmZpcm1lZC4mbmJzcDsgUHJlZmVyYWJseSB0aGUgU291cmNlIHRoYXQgaXMg cHJvdmlkaW5nIHRoZSB3YWxsZXQgd2l0aCB0aGUgZGlzY292ZXJ5IGV2aWRlbmNlIHdpbGwgYWxz byBwcm92aWRlIGV2aWRlbmNlIHRoYXQgdGhlIHRyYW5zYWN0aW9uIGNvdWxkIGJlIGNvbmZpcm1l ZC4uLiBlc3BlY2lhbGx5IGlmIHRoZSBTb3VyY2UgaXMgbm90IHRydXN0ZWQuJm5ic3A7IFRoZSB3 YWxsZXQgY291bGQgYXNrIG90aGVyIFNvdXJjZXMgd2hldGhlciB0aGUgY29uZmlybWVkIGlucHV0 cyBhcmUgcHJlc2VudCBpbiB0aGUgQ29uZmlybWVkIFVUWE8gU2V0Ljxicj48L2Rpdj48ZGl2Pjxi cj48L2Rpdj48ZGl2Pj09PSBTcGVuZCBUZXJtIFNjYW4gOiBFdmlkZW5jZSA9PT08YnI+PC9kaXY+ PGRpdj4tIFRlcm0gTGlzdDogU3BlbmQgVGVybSBHVUlEPGJyPjwvZGl2PjxkaXY+LSBUYXJnZXQ6 IFtibG9ja3MsIGNvbmZpcm1lZCB1dHhvIHNldF08YnI+PC9kaXY+PGRpdj4tIFJhbmdlIFN0YXJ0 PGJyPjwvZGl2PjxkaXY+LSBSYW5nZSBFbmQ8YnI+PC9kaXY+PGRpdj48YnI+PC9kaXY+PGRpdj4v LyBUaGUgd2FsbGV0IHdvdWxkIHJlcXVlc3QgYSBzY2FuIGZyb20gdGhlIFNvdXJjZS4mbmJzcDsg SXQgd291bGQgcHJvdmlkZSB0aGUgc3BlbmQgdGVybXMsIHRhcmdldCwgYW5kIHJhbmdlLiBUaGUg U291cmNlIHdvdWxkIHJlc3BvbmQgd2l0aCB0aGUgcmFuZ2UgYWN0dWFsbHkgc2Nhbm5lZCwgaW4g YWRkaXRpb24gdG8gYW55IFRyYW5zYWN0aW9uIEV2aWRlbmNlIGRpc2NvdmVyZWQuPGJyPjwvZGl2 Pg== --b1_436f535650c96f14d81fffa2860a4a6e--