From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by mx.groups.io with SMTP id smtpd.web11.4089.1627525375373919739 for ; Wed, 28 Jul 2021 19:22:55 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=rji2b9zV; spf=pass (domain: intel.com, ip: 192.55.52.115, mailfrom: jiewen.yao@intel.com) X-IronPort-AV: E=McAfee;i="6200,9189,10059"; a="212514102" X-IronPort-AV: E=Sophos;i="5.84,276,1620716400"; d="scan'208";a="212514102" Received: from orsmga004.jf.intel.com ([10.7.209.38]) by fmsmga103.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 28 Jul 2021 19:22:52 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.84,276,1620716400"; d="scan'208";a="567076725" Received: from orsmsx604.amr.corp.intel.com ([10.22.229.17]) by orsmga004.jf.intel.com with ESMTP; 28 Jul 2021 19:22:52 -0700 Received: from orsmsx601.amr.corp.intel.com (10.22.229.14) by ORSMSX604.amr.corp.intel.com (10.22.229.17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.10; Wed, 28 Jul 2021 19:22:52 -0700 Received: from ORSEDG601.ED.cps.intel.com (10.7.248.6) by orsmsx601.amr.corp.intel.com (10.22.229.14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.10 via Frontend Transport; Wed, 28 Jul 2021 19:22:52 -0700 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (104.47.58.169) by edgegateway.intel.com (134.134.137.102) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2242.10; Wed, 28 Jul 2021 19:22:51 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=TjdEOUe51Q2KCDEUnJCnMUmElCW162xmxdCf0hIzLCYrIBVfYHg3+LxRpHKBSdv0+Y3cp2nS75yXhKvN37znDjEd++SOG0I+bvLmi9OmOFouliNWF5tjyDBu5HJF6X33VO+iIB4oNLk8jH5TXFzre6jFJEiXJeq9GfivR6rnEfzzVuSCsmBb7xLnLdIkB/OqaeT3DaexIVK2ue+YBJmfMOvDFUCy14Yk7gyUf3hUfxWP+xvZx3OuaUlDeHG/I3JLluoSV81wS6X7lFWFqUIawU/llRyRoBhP0mArH4Ro2HAo3GJ0F6pSTJ5s524es7tMH6/sW8GhTL5hivrPnuk+OQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=g9gnPZxxVMiRgfY+EAOa60Yzug+Ytb9tV+U0C64aZb0=; b=WUtP62WU+0CX9X/cnXtOrxI31tO1gmXejsgonUA7ZDwSpsOunTUx/p1UCQvWQWM7/51RKTwmzA2hEHe9xtuS+2XZve7MVmxdAtTvdo4SiyrJope7IhxyubGWAmt64GOBcsuyjSYop/GfQzDoTAuC9QBExh8qDgjivZEYjb8VB1CwWWnerZOKfYcJ8Fz0+YH6JZttlgUycLKkREzpPCZWGnq4frYHqi34prkHOcqokuU1XdzDxCg6TcnvZ7AFFXGbU6xND95HeLQk9PB/U4B3XeO3gWHj8Ezc1M04nw8sgvwymUrWHYPi22maa9PP9kuPQlFurU4rYxyBfvdD8RBfMg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel.onmicrosoft.com; s=selector2-intel-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=g9gnPZxxVMiRgfY+EAOa60Yzug+Ytb9tV+U0C64aZb0=; b=rji2b9zVP9LXqkSHGvBN0CqzI7oPHBTXrmij5B9ZGYHP6lJbK6b73xXD1t7hNsoQpH1JymZib6NQrUBzD4/DCVo3TuyyJMIiSI4eEhZo/U7Rplm5VsDp0IovjGcOQ9SZXMS9kFid/4hRjqden+rbUfy/aDr6MLi6zWYmoxom4yY= Received: from PH0PR11MB4885.namprd11.prod.outlook.com (2603:10b6:510:35::14) by PH0PR11MB5173.namprd11.prod.outlook.com (2603:10b6:510:39::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4352.26; Thu, 29 Jul 2021 02:22:47 +0000 Received: from PH0PR11MB4885.namprd11.prod.outlook.com ([fe80::6c99:8170:1c3c:9121]) by PH0PR11MB4885.namprd11.prod.outlook.com ([fe80::6c99:8170:1c3c:9121%3]) with mapi id 15.20.4352.031; Thu, 29 Jul 2021 02:22:47 +0000 From: "Yao, Jiewen" To: "devel@edk2.groups.io" , "brijesh.singh@amd.com" CC: James Bottomley , "Xu, Min M" , Tom Lendacky , "Justen, Jordan L" , Ard Biesheuvel , Laszlo Ersek , Erdem Aktas , "Dong, Eric" , "Ni, Ray" , "Kumar, Rahul1" , "Kinney, Michael D" , Liming Gao , "Liu, Zhiguang" , Michael Roth Subject: Re: [edk2-devel] [RFC PATCH v4 00/27] Add AMD Secure Nested Paging (SEV-SNP) support Thread-Topic: [edk2-devel] [RFC PATCH v4 00/27] Add AMD Secure Nested Paging (SEV-SNP) support Thread-Index: AQHXbEUe0OJdKZm7ykimI2AJrn8auKtYNNJwgAB7WgCAABThwIAAkDWg Date: Thu, 29 Jul 2021 02:22:46 +0000 Message-ID: References: <20210628174223.1302-1-brijesh.singh@amd.com> <39b6b63f-4632-d654-a29a-80fc8a75e311@amd.com> In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-version: 11.5.1.3 dlp-product: dlpe-windows dlp-reaction: no-action authentication-results: edk2.groups.io; dkim=none (message not signed) header.d=none;edk2.groups.io; dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 8cf49df4-e9f2-4d84-0e11-08d95237c178 x-ms-traffictypediagnostic: PH0PR11MB5173: x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:10000; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: O2/ReqK8eSM5DdQIe0lXCORGM7dZfWi0Fvdt5bkOXPlkGiltvW7A6gK59GR0yjCop7p351adf4ehysF2P75LxznsR524zzV4Jzc/ZKx0PTTH3o0yjUwQY3TMDyKppUjYOiGJhIc4gWFrx14+Ihd2burUFgNxojYxKM6quumYBe+t4oTfcrEAcetYO00bg24uhQ1ZpSa3Niac8dIAdsq0foLKoD1BHzV9we96l9VqUOfLOodKc5AFvBmFnZVTKPKkdgawRuHtYcmPWdg1nM8C3nPCSu7YugyuKamJ+q+u3J7/sbMM2b9p4au6JWsxM8ARel+IeNXCEBlkiuM5X68lY7knBcjEv8prsXsjZj6ANi1dcM9C240KUG0pnHVkQgojM9CY57++6SNW/L+GIF+S0OmUE45FSQ1q+MUMN8s1tJScE8OQJkp7A6qCzbsea/PN4FDKCmU6FSJGHo7f57c7HdoLqus5UaIxYBhXNYCURAilb9IcQIozOs/icN5IjsMchq1rJBaep8XMgYfBR64d89P8L+ATSkfUveDUF83op9cPPZfNEEXanBLF/RX7a8gt3aS5o/olql4eCYmB6KD7MBd06pwoJMeA6LODxRCGw0QoxQkd/+lVh89WAm5VTtxCHIenMLIrWScWbu9yioa+U2xDCo88O+giIrKjlO2X5h3dahGBt1PPaOnq8mulkf5afCRvMveKURhv8SzDQU6VPcJoK1gPJC0QbU8L45ynQmS6vchdCN+tVQa3I4Y0PWzux9ZA1J75hKdoEhQz+FYn8Dy3j226Op76OQplhuKzpoS3MAJMRBkxQ3uxTJyl0yuCbE81xj2F5ZXnSNwwp/gAng== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PH0PR11MB4885.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(39860400002)(346002)(136003)(396003)(376002)(366004)(76116006)(6506007)(66446008)(7696005)(966005)(64756008)(53546011)(9686003)(26005)(30864003)(186003)(8676002)(5660300002)(52536014)(54906003)(8936002)(110136005)(71200400001)(66556008)(66946007)(33656002)(66476007)(316002)(4326008)(45080400002)(2906002)(19627235002)(478600001)(55016002)(86362001)(83380400001)(122000001)(38100700002)(38070700005)(579004);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?VzJLQlcwWW1GMitNTkdoSFlVbW83VUVzQkM2cmFVdWJEdzZkUFVSMy92SjhW?= =?utf-8?B?ZCtsREdpc0c1RzU5VUhNT1Nzb0FnK1JqVkZkRlpCTFFLejlnNHNET0Z5UEpZ?= =?utf-8?B?SkNDMWdPWHhCU05YenR0bEliUFBEMnZUa2xCeWNQOVUrZVU0L2xFNkQ3UG1D?= =?utf-8?B?aHczMmRud2h0UXhJcW5KL0ZYcHVTQ3U5cEpTdFJJcjNYVjBMOCtqMmwrcmc3?= =?utf-8?B?VXc3U1FZcVB4eEExSERIclNwaFhpcWVudnZJZEI2WExLWUN0TTBqb0VFMjRM?= =?utf-8?B?d2orVlJ0S2NuUkh0ODAxMEZ0cUVNaHFHeGpSYmFzWThuVFdxOVRoT1RUd29O?= =?utf-8?B?RlhzalBhRG1ZQjdmQ0M4T2FNVC9SQUdmWjRBbk1mZWFhUEZIbHJCUkZLQjE1?= =?utf-8?B?em1NSlpabGpzcFJUTkZTK0ZWTkE2Rko2NGkyelRMQitaeFNUVWRFa0xHUytP?= =?utf-8?B?b2JHT3ZqdTI4c1ZEbE1BSHpzU0oxc1pmWlRpUUNWK21yVE9wWjFkclFBYW5C?= =?utf-8?B?aGtVRUc2ZHZLQ1lvdjZwU00rSVJRNmE5TmhEQzZxS0FORjAwY091RVJGdy9t?= =?utf-8?B?K0x5djBMcW1qbkxadWZJcTU5YTY2QThFbnNwcG9VVlVsamZHS2Q4UUdYWEdn?= =?utf-8?B?WkVCVVYvS0NFMWI1c3VrWG5oaktzbXRNZnNEMjBjYnV3VDRkTUdENk9YNXho?= =?utf-8?B?NzlJc0tSbDk5bjc2bGFWanVkZ0pJVllQK0ZZd1oxUG80Mjhrb1lxT3RyQTBW?= =?utf-8?B?ZWYwRTlwYTJ1SHVJZVdrKzZlTjBYUnhTV2xRUDZtaE9GL1N5MXY5ZVdJRHVE?= =?utf-8?B?bG8wNU1HanlldklRZDlVRHRFTGlGM3Vmby9oZ3dKNWRHK0ZwcFZpMHRKandR?= =?utf-8?B?MGxRc2ZMVkNnTGdhTDlnZzlqSFF5Nk56MXBDUUpBZmIxejNHRHIvZFZtbjBy?= =?utf-8?B?Rzd0MXlUczF1RTBWOS9iU1hLMGdDUTNrak9mcFNFRGFRVDYwOVAzMFlIeHRm?= =?utf-8?B?MHo2U05TVGxDQnY3NVZXQXpUcUs2Q244MXJBRk9oQmhjWk54VWhZOCsvcFRE?= =?utf-8?B?dFlBMFdPcTRZeDJuTjRhZkNsWmg3ZUNqOUZCMlRFVVN5UnpUNE9STlJ5M3dJ?= =?utf-8?B?dnFlZnpjbm90MlpoR0h0cnRIa0FhK2ZuNEFLb2pRb2tYMFJSMFc1d0hvdVRK?= =?utf-8?B?elRndXlpbnYwalR0RWptUnc1NHlCVzhKTE9GMllkeXNweXBLWFhzZUlmclFn?= =?utf-8?B?MjBqdGowTDZieTNvcGZZNS9adm1GbDRVeUpBR0lCRE5KTm0zMVArMU1GVzJ4?= =?utf-8?B?eUJkQXpxeVA4SGszTTZ4dktraE9QaHJEK2FndlNEdmVuZURQbDR4Vm1QVGhT?= =?utf-8?B?cnFOZGpsKy94QzdQWlBPcm0vYjFNa0pFWFhkWHpMSmk2YjV2YVJyVXN4eDFt?= =?utf-8?B?Y2F3SWZDZ2xKV2xLU2JSRkdGbkVYb2Z2Mk1ERVNjZkQ4MjVqZUVpY2lCSjlV?= =?utf-8?B?Q3E3R2s4akJWdE9oOFpSbE0yUzRiTXBKRlhGYjd1bnVWb1lRWmFPbkd1Y2dS?= =?utf-8?B?ZU90dUZOYk5XVitwMjAvY2hZWldmaHczcFkzdWVuZ2dQc1JYdHd6ZDlkcUVS?= =?utf-8?B?NmF2T1pZRXo1MGJiZk5CUmVtbHd2QzhUMFJ1TmtKK1AvOFh5cWNFdGlUNTNG?= =?utf-8?B?MDlkaUY2OWN4NVMwRXNvZXdKbVhZZlBoQTVsd3ZrN3ltVVFCaGZhcC9FNC94?= =?utf-8?Q?+g1B5n2c49q0X1WJR+IbtjIKvfTSmv3Yj0enage?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: PH0PR11MB4885.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8cf49df4-e9f2-4d84-0e11-08d95237c178 X-MS-Exchange-CrossTenant-originalarrivaltime: 29 Jul 2021 02:22:47.0064 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: IdRqD7zF/PMIqDBvWiI7TKOtuu6g7FSfzYaHGaz7KiVjePwEspFnymaWQdQXm40BKymVgg687UXVLobJmcLO8Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR11MB5173 Return-Path: jiewen.yao@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 SGkgQnJpamVzaA0KVGhhbmtzIGZvciB0aGUgcGF0aWVudC4NCk1vc3Qgb2YgbXkgY29tbWVudCBm b2N1cyBvbiB0aGUgKmNvbW1vbiogcGFydCwgYW5kICppbnRlcmZhY2UqIGJldHdlZW4gU0VWIGFu ZCBjb21tb24gY29kZS4NCkkgd2lsbCBsZWF2ZSB5b3UgdG8gZGVjaWRlIHRoZSBkZXRhaWxlZCBT RVYgc3BlY2lmaWMgaW1wbGVtZW50YXRpb24uDQoNCg0KUGF0Y2gtMDQ6DQpDYW4gd2UgdXNlIGNv bnNpc3RlbnQgbmFtaW5nIGNvbnZlcnNpb24/DQpXZSBoYXZlIFBjZE92bWZTZWNHaGNiUGFnZVRh YmxlQmFzZSwgUGNkT3ZtZlNlY0doY2JCYXNlLCBQY2RTZXZMYXVuY2hTZWNyZXRCYXNlLiBOb3cg d2UgYXJlIGFkZGluZyBQY2RPdm1mU25wU2VjcmV0c0Jhc2UuDQpDYW4gd2UgY2hhbmdlIFBjZE92 bWZTbnBTZWNyZXRzQmFzZSB0byBQY2RTZXZTbnBTZWNyZXRzQmFzZT8NCk9yIHdlIGNoYW5nZSBQ Y2RTZXZMYXVuY2hTZWNyZXRCYXNlIHRvIFBjZE92bWZTZXZMYXVuY2hTZWNyZXRCYXNlPw0KDQpQ YXRjaC0wNToNCkRpdHRvLiBOYW1pbmcgY29udmVudGlvbi4NCg0KUGF0Y2gtMDY6DQpJIGhhdmUg cmVjb21tZW5kYXRpb24gdG8gTWluLCB0byBzZXBhcmF0ZSBTRVYgc3R1ZmYgdG8gYSBzdGFuZGFs b25lIGZpbGUgZnJvbSBSZXNldFZlY3RvclZ0ZjAuYXNtLg0KSW50ZWwgY2FuIGFkZCBURFggc3R1 ZmYgdG8gYSBzdGFuZGFsb25lIGZpbGUsIGFuZCBtYWtlIGl0IGluY2x1ZGVkIGJ5IFJlc2V0VmVj dG9yVnRmMC5hc20uDQoNCkkgYW0gbm90IHN1cmUgaWYgeW91IHdhbnQgdG8gZG8gaXQsIG9yIHlv dSBsZWF2ZSBNaW4gdG8gZG8gaXQuDQoNClBhdGNoLTA3Og0KU2FtZSBuYW1pbmcgY29udmVudGlv biBpc3N1ZS4gU2VlICMwNCBhbmQgIzA1Lg0KDQpQYXRjaC0wODoNCkkgaG9wZSB3ZSBjYW4gbW92 ZSBhbGwgYmVsb3cgY29kZSB0byBBbWRTZXYuYXNtLCBzdWNoIGFzIFBvc3RQYWdlVGFibGVIb29r U2V2KCkuDQpUaGVuIHRoZSBQYWdlVGFibGU2NC5hc20gY2FuIGJlIFNFVi9URFggYWdub3N0aWMu DQoNCkkgYW0gbm90IHN1cmUgaWYgeW91IHdhbnQgdG8gZG8gaXQsIG9yIHlvdSBsZWF2ZSBNaW4g dG8gZG8gaXQuDQoNCj09PT09PT09PT09PT09DQogICAgOw0KICAgIDsgQ2xlYXIgdGhlIGVuY3J5 cHRpb24gYml0IGZyb20gdGhlIEdIQ0IgZW50cnkNCiAgICA7DQogICAgbW92ICAgICBlY3gsIChH SENCX0JBU0UgJiAweDFGX0ZGRkYpID4+IDEyDQogICAgbW92ICAgICBbZWN4ICogOCArIEdIQ0Jf UFRfQUREUiArIDRdLCBzdHJpY3QgZHdvcmQgMA0KDQogICAgbW92ICAgICBlY3gsIEdIQ0JfU0la RSAvIDQNCiAgICB4b3IgICAgIGVheCwgZWF4DQpjbGVhckdoY2JNZW1vcnlMb29wOg0KICAgIG1v diAgICAgZHdvcmRbZWN4ICogNCArIEdIQ0JfQkFTRSAtIDRdLCBlYXgNCiAgICBsb29wICAgIGNs ZWFyR2hjYk1lbW9yeUxvb3ANCg0KICAgIDsNCiAgICA7IFRoZSBwYWdlIHRhYmxlIGJ1aWx0IGFi b3ZlIGNsZWFyZWQgdGhlIG1lbW9yeSBlbmNyeXB0aW9uIG1hc2sgZnJvbSB0aGUNCiAgICA7IEdI Q0JfQkFTRSAoYWthIG1hZGUgaXQgc2hhcmVkKS4gV2hlbiBTRVYtU05QIGlzIGVuYWJsZWQsIHRv IG1haW50YWluDQogICAgOyB0aGUgc2VjdXJpdHkgZ3VhcmFudGVlcywgdGhlIHBhZ2Ugc3RhdGUg dHJhbnNpdGlvbiBmcm9tIHByaXZhdGUgdG8NCiAgICA7IHNoYXJlZCBtdXN0IGdvIHRocm91Z2gg dGhlIHBhZ2UgaW52YWxpZGF0aW9uIHN0ZXBzLiBJbnZhbGlkYXRlIHRoZQ0KICAgIDsgbWVtb3J5 IHJhbmdlIGJlZm9yZSBsb2FkaW5nIHRoZSBwYWdlIHRhYmxlIGJlbG93Lg0KICAgIDsNCiAgICA7 IE5PVEU6IHRoZSBpbnZhbGlkYXRpb24gbXVzdCBoYXBwZW4gYWZ0ZXIgemVyb2luZyB0aGUgR0hD QiBtZW1vcnkuIFRoaXMNCiAgICA7ICAgICAgIGlzIGJlY2F1c2UsIGluIHRoZSAzMi1iaXQgbW9k ZSBhbGwgdGhlIGFjY2VzcyBhcmUgY29uc2lkZXJlZCBwcml2YXRlLg0KICAgIDsgICAgICAgVGhl IGludmFsaWRhdGlvbiBiZWZvcmUgdGhlIHplcm8naW5nIHdpbGwgY2F1c2UgYSAjVkMuDQogICAg Ow0KICAgIE9uZVRpbWVDYWxsICBJbnZhbGlkYXRlR0hDQlBhZ2UNCj09PT09PT09PT09PT09DQoN ClBhdGNoLTEwOg0KSSBhbSBub3QgVUVGSSBDUFUgcGFja2FnZSBtYWludGFpbmVyLiBCdXQgSSBk byBoYXZlIGEgbGl0dGxlIGNvbmNlcm4gdG8gYWRkIG1vcmUgUGNkWHh4SXNFbmFibGUgc3R5bGUg UENELCBlc3BlY2lhbGx5IHdoZW4gdGhleSBhcmUgbXV0dWFsIGV4Y2x1c2l2ZSAobGlrZSBURFgg di5zIFNFVikuDQpJZiB3ZSBmb2xsb3cgdGhpcyBwYXR0ZXJuLCB3ZSB3aWxsIGhhdmUgUGNkU2V2 RXNJc0VuYWJsZWQsIFBjZFNldlNucElzRW5hYmxlZCwgUGNkU2V2RnV0dXJlSXNFbmFibGVkLCBQ Y2RUZHhJc0VuYWJsZWQsIFBjZFRkeEZ1dHVyZUlzRW5hYmxlZCwgLi4uIHRoYXQgd2lsbCBiZSBh biBlbmRsZXNzIGxpc3QuDQoNCklmIHBvc3NpYmxlLCBJIHN1Z2dlc3QgZGVmaW5lIG9uZSBQY2RD b25maWRlbnRpYWxDb21wdXRpbmdUeXBlIC0gaW5kaWNhdGUgTGVnYWN5LCBTRVYsIFREWC4NCg0K UGF0Y2gtMTI6DQpDYW4gd2UgbW92ZSBhbGwgU0VWIHN0dWZmIHRvIGEgc3RhbmRhbG9uZSBmaWxl LCBzdWNoIGFzIEFtZFNldi5jPw0KDQpJIGFtIG5vdCBzdXJlIGlmIHlvdSB3YW50IHRvIGRvIGl0 LCBvciB5b3UgbGVhdmUgTWluIHRvIGRvIGl0Lg0KDQpQYXRjaC0xODoNCklmIHdlIGhhdmUgYSBz dGFuZGFsb25lIEFtZFNldi5jICgjMTIpLCB0aGVuIHdlIGNhbiBtb3ZlIHRoZSBmdW5jdGlvbiB0 byB0aGF0IGZpbGUsIGFuZCBvbmx5IGxlYXZlIGEgaG9vayBjYWxsIHRvIFNFVi4NCg0KUGF0Y2gt MjM6DQpUaGlzIGlzIFVFRkkgQ1BVIHBhY2thZ2UgdXBkYXRlLiBJIGFtIHRoaW5raW5nIGlmIHdl IGNhbiBmb2xsb3cgc2FtZSBwYXR0ZXIgdG8gbW92ZSBhbGwgU0VWIHN0dWZmIHRvIGEgc3RhbmRh bG9uZSBmaWxlLCBzdWNoIGFzIEFtZFNldi5jLCBBbWRTZXYuYXNtLg0KSW4gdGhlIGZ1dHVyZSwg d2UgbWF5IGFkZCBURFggc3R1ZmYgYXMgd2VsbC4NCg0KUGF0Y2gtMjY6DQpTYW1lIGNvbW1lbnQg YXMgIzIzLiANCg0KUGF0Y2gtMjc6DQpDYW4gd2UgbW92ZSB0aGF0IGZ1bmN0aW9uIHRvIGEgc3Rh bmRhbG9uZSBBbWRTZXYuYyA/DQoNClBhdGNoLTI4Og0KV291bGQgeW91IHBsZWFzZSBkZXNjcmli ZSBtb3JlIG9uIHdoYXQgaXMgQ29uZmlkZW50aWFsQ29tcHV0aW5nQmxvYiA/DQpJcyB0aGF0IGdl bmVyaWMgY29uY2VwdD8gT3IgU0VWIHNwZWNpZmljIHRoaW5nPw0KV2hvIGlzIGNvbnN1bWVyPw0K V2hhdCBpcyBkaWZmZXJlbmNlIGJldHdlZW4gQ29uZmlkZW50aWFsQ29tcHV0aW5nU2VjcmV0IGFu ZCBDb25maWRlbnRpYWxDb21wdXRpbmdCbG9iID8gV2hlbiB0byB1c2Ugd2hpY2g/DQoNCkkgY2Fu IHVuZGVyc3RhbmQgaG93IFREWCB1c2UgQ29uZmlkZW50aWFsQ29tcHV0aW5nU2VjcmV0LCBidXQg aG93IGRvIHlvdSBleHBlY3QgVERYIHVzZSBDb25maWRlbnRpYWxDb21wdXRpbmdCbG9iIChpZiBp dCBpcyBhIGdlbmVyaWMgY29uY2VwdCkgPw0KDQpUaGFuayB5b3UNCllhbyBKaWV3ZW4NCg0KDQoN Cj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogWWFvLCBKaWV3ZW4NCj4gU2Vu dDogVGh1cnNkYXksIEp1bHkgMjksIDIwMjEgMTI6MzggQU0NCj4gVG86IGRldmVsQGVkazIuZ3Jv dXBzLmlvOyBicmlqZXNoLnNpbmdoQGFtZC5jb20NCj4gQ2M6IEphbWVzIEJvdHRvbWxleSA8amVq YkBsaW51eC5pYm0uY29tPjsgWHUsIE1pbiBNIDxtaW4ubS54dUBpbnRlbC5jb20+Ow0KPiBUb20g TGVuZGFja3kgPHRob21hcy5sZW5kYWNreUBhbWQuY29tPjsgSnVzdGVuLCBKb3JkYW4gTA0KPiA8 am9yZGFuLmwuanVzdGVuQGludGVsLmNvbT47IEFyZCBCaWVzaGV1dmVsIDxhcmRiK3RpYW5vY29y ZUBrZXJuZWwub3JnPjsNCj4gTGFzemxvIEVyc2VrIDxsZXJzZWtAcmVkaGF0LmNvbT47IEVyZGVt IEFrdGFzIDxlcmRlbWFrdGFzQGdvb2dsZS5jb20+Ow0KPiBEb25nLCBFcmljIDxlcmljLmRvbmdA aW50ZWwuY29tPjsgTmksIFJheSA8cmF5Lm5pQGludGVsLmNvbT47IEt1bWFyLCBSYWh1bDENCj4g PFJhaHVsMS5LdW1hckBpbnRlbC5jb20+OyBLaW5uZXksIE1pY2hhZWwgRCA8bWljaGFlbC5kLmtp bm5leUBpbnRlbC5jb20+Ow0KPiBMaW1pbmcgR2FvIDxnYW9saW1pbmdAYnlvc29mdC5jb20uY24+ OyBMaXUsIFpoaWd1YW5nDQo+IDxaaGlndWFuZy5MaXVAaW50ZWwuY29tPjsgTWljaGFlbCBSb3Ro IDxNaWNoYWVsLlJvdGhAYW1kLmNvbT4NCj4gU3ViamVjdDogUkU6IFtlZGsyLWRldmVsXSBbUkZD IFBBVENIIHY0IDAwLzI3XSBBZGQgQU1EIFNlY3VyZSBOZXN0ZWQgUGFnaW5nDQo+IChTRVYtU05Q KSBzdXBwb3J0DQo+IA0KPiBTb3VuZHMgZ29vZC4gVGhhbmsgeW91IHRvIGNvbmZpcm0gdGhhdC4N Cj4gDQo+IEkgd2lsbCBzZW5kIG15IGZlZWRiYWNrLg0KPiANCj4gDQo+IA0KPiA+IC0tLS0tT3Jp Z2luYWwgTWVzc2FnZS0tLS0tDQo+ID4gRnJvbTogZGV2ZWxAZWRrMi5ncm91cHMuaW8gPGRldmVs QGVkazIuZ3JvdXBzLmlvPiBPbiBCZWhhbGYgT2YgQnJpamVzaA0KPiA+IFNpbmdoIHZpYSBncm91 cHMuaW8NCj4gPiBTZW50OiBXZWRuZXNkYXksIEp1bHkgMjgsIDIwMjEgMTE6MjIgUE0NCj4gPiBU bzogWWFvLCBKaWV3ZW4gPGppZXdlbi55YW9AaW50ZWwuY29tPjsgZGV2ZWxAZWRrMi5ncm91cHMu aW8NCj4gPiBDYzogYnJpamVzaC5zaW5naEBhbWQuY29tOyBKYW1lcyBCb3R0b21sZXkgPGplamJA bGludXguaWJtLmNvbT47IFh1LCBNaW4NCj4gTQ0KPiA+IDxtaW4ubS54dUBpbnRlbC5jb20+OyBU b20gTGVuZGFja3kgPHRob21hcy5sZW5kYWNreUBhbWQuY29tPjsgSnVzdGVuLA0KPiA+IEpvcmRh biBMIDxqb3JkYW4ubC5qdXN0ZW5AaW50ZWwuY29tPjsgQXJkIEJpZXNoZXV2ZWwNCj4gPiA8YXJk Yit0aWFub2NvcmVAa2VybmVsLm9yZz47IExhc3psbyBFcnNlayA8bGVyc2VrQHJlZGhhdC5jb20+ OyBFcmRlbQ0KPiBBa3Rhcw0KPiA+IDxlcmRlbWFrdGFzQGdvb2dsZS5jb20+OyBEb25nLCBFcmlj IDxlcmljLmRvbmdAaW50ZWwuY29tPjsgTmksIFJheQ0KPiA+IDxyYXkubmlAaW50ZWwuY29tPjsg S3VtYXIsIFJhaHVsMSA8cmFodWwxLmt1bWFyQGludGVsLmNvbT47IEtpbm5leSwNCj4gTWljaGFl bA0KPiA+IEQgPG1pY2hhZWwuZC5raW5uZXlAaW50ZWwuY29tPjsgTGltaW5nIEdhbyA8Z2FvbGlt aW5nQGJ5b3NvZnQuY29tLmNuPjsNCj4gTGl1LA0KPiA+IFpoaWd1YW5nIDx6aGlndWFuZy5saXVA aW50ZWwuY29tPjsgTWljaGFlbCBSb3RoIDxNaWNoYWVsLlJvdGhAYW1kLmNvbT4NCj4gPiBTdWJq ZWN0OiBSZTogW2VkazItZGV2ZWxdIFtSRkMgUEFUQ0ggdjQgMDAvMjddIEFkZCBBTUQgU2VjdXJl IE5lc3RlZA0KPiBQYWdpbmcNCj4gPiAoU0VWLVNOUCkgc3VwcG9ydA0KPiA+DQo+ID4gSGkgWWFv IEppZXdlbiwNCj4gPg0KPiA+IE9uIDcvMjgvMjEgMzoxNiBBTSwgWWFvLCBKaWV3ZW4gd3JvdGU6 DQo+ID4gPiBIaSBCcmlqZXNoDQo+ID4gPiBJIHJldmlld2VkIHRoZSBwYXRjaCBzZXQuIEkgaGF2 ZSBzb21lIGJhc2ljIHF1ZXN0aW9ucy4NCj4gPiA+IFBsZWFzZSBoZWxwIG1lIHVuZGVyc3RhbmQg YmVmb3JlIEkgcG9zdCBteSBjb21tZW50DQo+ID4gPg0KPiA+ID4gSWYgYSBwbGF0Zm9ybSBzdXBw b3J0cyBTRVYtU05QLCBjYW4gd2UgYXNzdW1lIFNFVi1FUyBpcyBzdXBwb3J0ZWQ/DQo+ID4NCj4g PiBUaGUgU0VWLVNOUCBkZXBlbmRzIG9uIFNFViBhbmQgU0VWLUVTIHN1cHBvcnQuDQo+ID4NCj4g PiBUaGUgU0VWLUVTIGRlcGVuZHMgb24gdGhlIFNFViBzdXBwb3J0Lg0KPiA+DQo+ID4NCj4gPiA+ IE9yIGlzIGl0IGEgdmFsaWQgY2FzZSB0aGF0IFNlY1NucD09WUVTLCBTZXZFcz09Tk8/DQo+ID4g Tm9wZS4NCj4gPg0KPiA+ID4NCj4gPiA+IEkgYW0gdHJ5aW5nIHRvIHVuZGVyc3RhbmQgaG93IG1h bnkgY2FzZXMgd2UgbmVlZCBzdXBwb3J0Lg0KPiA+ID4gSSB0aGluayB3ZSB3YW50IHRvIHN1cHBv cnQgYmVsb3c6DQo+ID4gPiArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKw0KPiA+ID4gfCBTRVYg fCBTRVZfRVMgfCBTRVZfU05QIHwNCj4gPiA+ICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rDQo+ ID4gPiB8ICAwICB8ICAgMCAgICB8ICAgIDAgICAgfA0KPiA+ID4gfCAgMSAgfCAgIDAgICAgfCAg ICAwICAgIHwNCj4gPiA+IHwgIDEgIHwgICAxICAgIHwgICAgMCAgICB8DQo+ID4gPiB8ICAxICB8 ICAgMSAgICB8ICAgIDEgICAgfA0KPiA+ID4gKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsNCj4g PiA+DQo+ID4NCj4gPiBZZXMsIHRoZSBhYm92ZSBsb29rcyBjb3JyZWN0Lg0KPiA+DQo+ID4gPg0K PiA+ID4gQW55IG90aGVyIGNvbWJpbmF0aW9uIHdlIG5lZWQgc3VwcG9ydD8gU3VjaCBhcyBiZWxv dzoNCj4gPg0KPiA+IFRoZSBiZWxvdyBjYXNlcyBhcmUgbm90IGFwcGxpY2FibGUuDQo+ID4NCj4g PiA+ICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rDQo+ID4gPiB8IFNFViB8IFNFVl9FUyB8IFNF Vl9TTlAgfA0KPiA+ID4gKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsNCj4gPiA+IHwgIDAgIHwg ICAxICAgIHwgICAgMCAgICB8DQo+ID4gPiB8ICAwICB8ICAgMCAgICB8ICAgIDEgICAgfA0KPiA+ ID4gfCAgMCAgfCAgIDEgICAgfCAgICAxICAgIHwNCj4gPiA+IHwgIDEgIHwgICAwICAgIHwgICAg MSAgICB8DQo+ID4gPiArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKw0KPiA+ID4NCj4gPiA+DQo+ ID4gPiBUaGFuayB5b3UNCj4gPiA+IFlhbyBKaWV3ZW4NCj4gPiA+DQo+ID4gPj4gLS0tLS1Pcmln aW5hbCBNZXNzYWdlLS0tLS0NCj4gPiA+PiBGcm9tOiBCcmlqZXNoIFNpbmdoIDxicmlqZXNoLnNp bmdoQGFtZC5jb20+DQo+ID4gPj4gU2VudDogVHVlc2RheSwgSnVuZSAyOSwgMjAyMSAxOjQyIEFN DQo+ID4gPj4gVG86IGRldmVsQGVkazIuZ3JvdXBzLmlvDQo+ID4gPj4gQ2M6IEphbWVzIEJvdHRv bWxleSA8amVqYkBsaW51eC5pYm0uY29tPjsgWHUsIE1pbiBNDQo+ID4gPG1pbi5tLnh1QGludGVs LmNvbT47DQo+ID4gPj4gWWFvLCBKaWV3ZW4gPGppZXdlbi55YW9AaW50ZWwuY29tPjsgVG9tIExl bmRhY2t5DQo+ID4gPj4gPHRob21hcy5sZW5kYWNreUBhbWQuY29tPjsgSnVzdGVuLCBKb3JkYW4g TA0KPiA8am9yZGFuLmwuanVzdGVuQGludGVsLmNvbT47DQo+ID4gPj4gQXJkIEJpZXNoZXV2ZWwg PGFyZGIrdGlhbm9jb3JlQGtlcm5lbC5vcmc+OyBMYXN6bG8gRXJzZWsNCj4gPiA+PiA8bGVyc2Vr QHJlZGhhdC5jb20+OyBFcmRlbSBBa3RhcyA8ZXJkZW1ha3Rhc0Bnb29nbGUuY29tPjsgRG9uZywN Cj4gRXJpYw0KPiA+ID4+IDxlcmljLmRvbmdAaW50ZWwuY29tPjsgTmksIFJheSA8cmF5Lm5pQGlu dGVsLmNvbT47IEt1bWFyLCBSYWh1bDENCj4gPiA+PiA8cmFodWwxLmt1bWFyQGludGVsLmNvbT47 IEtpbm5leSwgTWljaGFlbCBEDQo+ID4gPG1pY2hhZWwuZC5raW5uZXlAaW50ZWwuY29tPjsNCj4g PiA+PiBMaW1pbmcgR2FvIDxnYW9saW1pbmdAYnlvc29mdC5jb20uY24+OyBMaXUsIFpoaWd1YW5n DQo+ID4gPj4gPHpoaWd1YW5nLmxpdUBpbnRlbC5jb20+OyBNaWNoYWVsIFJvdGggPE1pY2hhZWwu Um90aEBhbWQuY29tPjsNCj4gQnJpamVzaA0KPiA+ID4+IFNpbmdoIDxicmlqZXNoLnNpbmdoQGFt ZC5jb20+DQo+ID4gPj4gU3ViamVjdDogW1JGQyBQQVRDSCB2NCAwMC8yN10gQWRkIEFNRCBTZWN1 cmUgTmVzdGVkIFBhZ2luZyAoU0VWLVNOUCkNCj4gPiA+PiBzdXBwb3J0DQo+ID4gPj4NCj4gPiA+ PiBCWjoNCj4gPg0KPiBodHRwczovL25hbTExLnNhZmVsaW5rcy5wcm90ZWN0aW9uLm91dGxvb2su Y29tLz91cmw9aHR0cHMlM0ElMkYlMkZidWd6aWxsYS4NCj4gPg0KPiB0aWFub2NvcmUub3JnJTJG c2hvd19idWcuY2dpJTNGaWQlM0QzMjc1JmFtcDtkYXRhPTA0JTdDMDElN0NicmlqZXNoLg0KPiA+ DQo+IHNpbmdoJTQwYW1kLmNvbSU3QzZiYmRiZGJiMGFjODQwMGI1M2E4MDhkOTUxYTAwZTEwJTdD M2RkODk2MWZlNDgNCj4gPiA4NGU2MDhlMTFhODJkOTk0ZTE4M2QlN0MwJTdDMCU3QzYzNzYzMDU3 MTA2OTg5MzM2NyU3Q1Vua25vd24lDQo+ID4NCj4gN0NUV0ZwYkdac2IzZDhleUpXSWpvaU1DNHdM akF3TURBaUxDSlFJam9pVjJsdU16SWlMQ0pCVGlJNklrMWhhV3dpTA0KPiA+DQo+IENKWFZDSTZN bjAlM0QlN0MxMDAwJmFtcDtzZGF0YT1CcUtCUFRtNFJRRlhzZWtIVEgya3RjMlltWk13YXpuDQo+ ID4gOWJaeThHOCUyQldTVEElM0QmYW1wO3Jlc2VydmVkPTANCj4gPiA+Pg0KPiA+ID4+IFNFVi1T TlAgYnVpbGRzIHVwb24gZXhpc3RpbmcgU0VWIGFuZCBTRVYtRVMgZnVuY3Rpb25hbGl0eSB3aGls ZSBhZGRpbmcNCj4gPiA+PiBuZXcgaGFyZHdhcmUtYmFzZWQgbWVtb3J5IHByb3RlY3Rpb25zLiBT RVYtU05QIGFkZHMgc3Ryb25nIG1lbW9yeQ0KPiA+ID4+IGludGVncml0eQ0KPiA+ID4+IHByb3Rl Y3Rpb24gdG8gaGVscCBwcmV2ZW50IG1hbGljaW91cyBoeXBlcnZpc29yLWJhc2VkIGF0dGFja3Mg bGlrZSBkYXRhDQo+ID4gPj4gcmVwbGF5LCBtZW1vcnkgcmUtbWFwcGluZyBhbmQgbW9yZSBpbiBv cmRlciB0byBjcmVhdGUgYW4gaXNvbGF0ZWQNCj4gbWVtb3J5DQo+ID4gPj4gZW5jcnlwdGlvbiBl bnZpcm9ubWVudC4NCj4gPiA+Pg0KPiA+ID4+IFRoaXMgc2VyaWVzIHByb3ZpZGVzIHRoZSBiYXNp YyBidWlsZGluZyBibG9ja3MgdG8gc3VwcG9ydCBib290aW5nIHRoZSBTRVYtDQo+IFNOUA0KPiA+ ID4+IFZNcywgaXQgZG9lcyBub3QgY292ZXIgYWxsIHRoZSBzZWN1cml0eSBlbmhhbmNlbWVudCBp bnRyb2R1Y2VkIGJ5IHRoZSBTRVYtDQo+ID4gU05QDQo+ID4gPj4gc3VjaCBhcyBpbnRlcnJ1cHQg cHJvdGVjdGlvbi4NCj4gPiA+Pg0KPiA+ID4+IE1hbnkgb2YgdGhlIGludGVncml0eSBndWFyYW50 ZWVzIG9mIFNFVi1TTlAgYXJlIGVuZm9yY2VkIHRocm91Z2ggYSBuZXcNCj4gPiA+PiBzdHJ1Y3R1 cmUgY2FsbGVkIHRoZSBSZXZlcnNlIE1hcCBUYWJsZSAoUk1QKS4gQWRkaW5nIGEgbmV3IHBhZ2Ug dG8gU0VWLQ0KPiBTTlANCj4gPiA+PiBWTSByZXF1aXJlcyBhIDItc3RlcCBwcm9jZXNzLiBGaXJz dCwgdGhlIGh5cGVydmlzb3IgYXNzaWducyBhIHBhZ2UgdG8gdGhlDQo+ID4gPj4gZ3Vlc3QgdXNp bmcgdGhlIG5ldyBSTVBVUERBVEUgaW5zdHJ1Y3Rpb24uIFRoaXMgdHJhbnNpdGlvbnMgdGhlIHBh Z2UgdG8NCj4gPiA+PiBndWVzdC1pbnZhbGlkLiBTZWNvbmQsIHRoZSBndWVzdCB2YWxpZGF0ZXMg dGhlIHBhZ2UgdXNpbmcgdGhlIG5ldw0KPiBQVkFMSURBVEUNCj4gPiA+PiBpbnN0cnVjdGlvbi4g VGhlIFNFVi1TTlAgVk1zIGNhbiB1c2UgdGhlIG5ldyAiUGFnZSBTdGF0ZSBDaGFuZ2UgUmVxdWVz dA0KPiA+ID4+IE5BRSINCj4gPiA+PiBkZWZpbmVkIGluIHRoZSBHSENCIHNwZWNpZmljYXRpb24g dG8gYXNrIGh5cGVydmlzb3IgdG8gYWRkIG9yIHJlbW92ZSBwYWdlDQo+ID4gPj4gZnJvbSB0aGUg Uk1QIHRhYmxlLg0KPiA+ID4+DQo+ID4gPj4gRWFjaCBwYWdlIGFzc2lnbmVkIHRvIHRoZSBTRVYt U05QIFZNIGNhbiBlaXRoZXIgYmUgdmFsaWRhdGVkIG9yDQo+IHVudmFsaWRhdGVkLA0KPiA+ID4+ IGFzIGluZGljYXRlZCBieSB0aGUgVmFsaWRhdGVkIGZsYWcgaW4gdGhlIHBhZ2UncyBSTVAgZW50 cnkuIFRoZXJlIGFyZSB0d28NCj4gPiA+PiBhcHByb2FjaGVzIHRoYXQgY2FuIGJlIHRha2VuIGZv ciB0aGUgcGFnZSB2YWxpZGF0aW9uOiBQcmUtdmFsaWRhdGlvbiBhbmQNCj4gPiA+PiBMYXp5IFZh bGlkYXRpb24uDQo+ID4gPj4NCj4gPiA+PiBVbmRlciBwcmUtdmFsaWRhdGlvbiwgdGhlIHBhZ2Vz IGFyZSB2YWxpZGF0ZWQgcHJpb3IgdG8gZmlyc3QgdXNlLiBBbmQgdW5kZXINCj4gPiA+PiBsYXp5 IHZhbGlkYXRpb24sIHBhZ2VzIGFyZSB2YWxpZGF0ZWQgd2hlbiBmaXJzdCBhY2Nlc3NlZC4gQW4g YWNjZXNzIHRvIGENCj4gPiA+PiB1bnZhbGlkYXRlZCBwYWdlIHJlc3VsdHMgaW4gYSAjVkMgZXhj ZXB0aW9uLCBhdCB3aGljaCB0aW1lIHRoZSBleGNlcHRpb24NCj4gPiA+PiBoYW5kbGVyIG1heSB2 YWxpZGF0ZSB0aGUgcGFnZS4gTGF6eSB2YWxpZGF0aW9uIHJlcXVpcmVzIGNhcmVmdWwgdHJhY2tp bmcgb2YNCj4gPiA+PiB0aGUgdmFsaWRhdGVkIHBhZ2VzIHRvIGF2b2lkIHZhbGlkYXRpbmcgdGhl IHNhbWUgR1BBIG1vcmUgdGhhbiBvbmNlLiBUaGUNCj4gPiA+PiByZWNlbnRseSBpbnRyb2R1Y2Vk ICJVbmFjY2VwdGVkIiBtZW1vcnkgdHlwZSBjYW4gYmUgdXNlZCB0bw0KPiBjb21tdW5pY2F0ZQ0K PiA+ID4+IHRoZQ0KPiA+ID4+IHVudmFsaWRhdGVkIG1lbW9yeSByYW5nZXMgdG8gdGhlIEd1ZXN0 IE9TLg0KPiA+ID4+DQo+ID4gPj4gQXQgdGhpcyB0aW1lIHdlIG9ubHkgc3VwcG9ydCB0aGUgcHJl LXZhbGlkYXRpb24uIE9WTUYgZGV0ZWN0cyBhbGwgdGhlDQo+ID4gYXZhaWxhYmxlDQo+ID4gPj4g c3lzdGVtIFJBTSBpbiB0aGUgUEVJIHBoYXNlLiBXaGVuIFNFVi1TTlAgaXMgZW5hYmxlZCwgdGhl IG1lbW9yeSBpcw0KPiA+IHZhbGlkYXRlZA0KPiA+ID4+IGJlZm9yZSBpdCBpcyBtYWRlIGF2YWls YWJsZSB0byB0aGUgRURLMiBjb3JlLg0KPiA+ID4+DQo+ID4gPj4gVGhpcyBzZXJpZXMgZG9lcyBu b3QgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIFNFVi1TTlAgZmVhdHVyZXMgeWV0Og0KPiA+ID4+ DQo+ID4gPj4gKiBDUFVJRCBmaWx0ZXJpbmcNCj4gPiA+PiAqIExhenkgdmFsaWRhdGlvbg0KPiA+ ID4+ICogSW50ZXJydXB0IHNlY3VyaXR5DQo+ID4gPj4NCj4gPiA+PiBBZGRpdGlvbmFsIHJlc291 cmNlcw0KPiA+ID4+IC0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiA+ID4+IFNFVi1TTlAgd2hpdGVw YXBlcg0KPiA+ID4+DQo+ID4NCj4gaHR0cHM6Ly9uYW0xMS5zYWZlbGlua3MucHJvdGVjdGlvbi5v dXRsb29rLmNvbS8/dXJsPWh0dHBzJTNBJTJGJTJGd3d3LmENCj4gPiBtZC5jb20lMkZzeXN0ZW0l MkZmaWxlcyUyRlRlY2hEb2NzJTJGU0VWLVNOUC1zdHJlbmd0aGVuaW5nLXZtLQ0KPiA+DQo+ICZh bXA7ZGF0YT0wNCU3QzAxJTdDYnJpamVzaC5zaW5naCU0MGFtZC5jb20lN0M2YmJkYmRiYjBhYzg0 MDBiNTNhDQo+ID4NCj4gODA4ZDk1MWEwMGUxMCU3QzNkZDg5NjFmZTQ4ODRlNjA4ZTExYTgyZDk5 NGUxODNkJTdDMCU3QzAlN0M2Mzc2DQo+ID4NCj4gMzA1NzEwNjk4OTMzNjclN0NVbmtub3duJTdD VFdGcGJHWnNiM2Q4ZXlKV0lqb2lNQzR3TGpBd01EQWlMQ0oNCj4gPg0KPiBRSWpvaVYybHVNeklp TENKQlRpSTZJazFoYVd3aUxDSlhWQ0k2TW4wJTNEJTdDMTAwMCZhbXA7c2RhdGE9N3A1QXANCj4g PiAlMkZITWlTWGd4eE1JMzVTWVdjWmFVY3g1VmpOdDF3bnBWOWtiVDZjJTNEJmFtcDtyZXNlcnZl ZD0wDQo+ID4gPj4gaXNvbGF0aW9uLXdpdGgtaW50ZWdyaXR5LXByb3RlY3Rpb24tYW5kLW1vcmUu cGRmDQo+ID4gPj4NCj4gPiA+PiBBUE0gMjoNCj4gPg0KPiBodHRwczovL25hbTExLnNhZmVsaW5r cy5wcm90ZWN0aW9uLm91dGxvb2suY29tLz91cmw9aHR0cHMlM0ElMkYlMkZ3d3cuYQ0KPiA+DQo+ IG1kLmNvbSUyRnN5c3RlbSUyRmZpbGVzJTJGVGVjaERvY3MlMkYyNDU5My5wZGYmYW1wO2RhdGE9 MDQlN0MwMSU3DQo+ID4NCj4gQ2JyaWplc2guc2luZ2glNDBhbWQuY29tJTdDNmJiZGJkYmIwYWM4 NDAwYjUzYTgwOGQ5NTFhMDBlMTAlN0MzZGQ4DQo+ID4NCj4gOTYxZmU0ODg0ZTYwOGUxMWE4MmQ5 OTRlMTgzZCU3QzAlN0MwJTdDNjM3NjMwNTcxMDY5ODkzMzY3JTdDVW5rDQo+ID4NCj4gbm93biU3 Q1RXRnBiR1pzYjNkOGV5SldJam9pTUM0d0xqQXdNREFpTENKUUlqb2lWMmx1TXpJaUxDSkJUaUk2 SWsxaA0KPiA+DQo+IGFXd2lMQ0pYVkNJNk1uMCUzRCU3QzEwMDAmYW1wO3NkYXRhPWg1WnJwVFN3 akJWaHc5QmRoJTJGdmNaVkdLDQo+ID4gJTJCYXhnSHJlNDJCOGV2WnVUa0tRJTNEJmFtcDtyZXNl cnZlZD0wIChzZWN0aW9uIDE1LjM2KQ0KPiA+ID4+DQo+ID4gPj4gVGhlIGNvbXBsZXRlIHNvdXJj ZSBpcyBhdmFpbGFibGUgYXQNCj4gPiA+Pg0KPiA+DQo+IGh0dHBzOi8vbmFtMTEuc2FmZWxpbmtz LnByb3RlY3Rpb24ub3V0bG9vay5jb20vP3VybD1odHRwcyUzQSUyRiUyRmdpdGh1Yi5jDQo+ID4g b20lMkZBTURFU0UlMkZvdm1mJTJGdHJlZSUyRnNldi1zbnAtcmZjLQ0KPiA+DQo+IDQmYW1wO2Rh dGE9MDQlN0MwMSU3Q2JyaWplc2guc2luZ2glNDBhbWQuY29tJTdDNmJiZGJkYmIwYWM4NDAwYjUz DQo+ID4NCj4gYTgwOGQ5NTFhMDBlMTAlN0MzZGQ4OTYxZmU0ODg0ZTYwOGUxMWE4MmQ5OTRlMTgz ZCU3QzAlN0MwJTdDNjM3DQo+ID4NCj4gNjMwNTcxMDY5ODkzMzY3JTdDVW5rbm93biU3Q1RXRnBi R1pzYjNkOGV5SldJam9pTUM0d0xqQXdNREFpTEMNCj4gPg0KPiBKUUlqb2lWMmx1TXpJaUxDSkJU aUk2SWsxaGFXd2lMQ0pYVkNJNk1uMCUzRCU3QzEwMDAmYW1wO3NkYXRhPU13WHoNCj4gPiBneWtS UmpUMFFDcCUyQjc3ekpHMW5INDQ0NzhPekg0SHRDUUpicEhMYyUzRCZhbXA7cmVzZXJ2ZWQ9MA0K PiA+ID4+DQo+ID4gPj4gR0hDQiBzcGVjOg0KPiA+ID4+DQo+ID4NCj4gaHR0cHM6Ly9uYW0xMS5z YWZlbGlua3MucHJvdGVjdGlvbi5vdXRsb29rLmNvbS8/dXJsPWh0dHBzJTNBJTJGJTJGZGV2ZWxv cA0KPiA+IGVyLmFtZC5jb20lMkZ3cC0NCj4gPg0KPiBjb250ZW50JTJGcmVzb3VyY2VzJTJGNTY0 MjEucGRmJmFtcDtkYXRhPTA0JTdDMDElN0NicmlqZXNoLnNpbmdoJTQwYQ0KPiA+DQo+IG1kLmNv bSU3QzZiYmRiZGJiMGFjODQwMGI1M2E4MDhkOTUxYTAwZTEwJTdDM2RkODk2MWZlNDg4NGU2MDhl MTENCj4gPg0KPiBhODJkOTk0ZTE4M2QlN0MwJTdDMCU3QzYzNzYzMDU3MTA2OTg5MzM2NyU3Q1Vu a25vd24lN0NUV0ZwYkdaDQo+ID4NCj4gc2IzZDhleUpXSWpvaU1DNHdMakF3TURBaUxDSlFJam9p VjJsdU16SWlMQ0pCVGlJNklrMWhhV3dpTENKWFZDSTZNbjANCj4gPiAlM0QlN0MxMDAwJmFtcDtz ZGF0YT1qVTJMUG9uSzlyUVVqS1FzUmlqQk5VNnVrMWVOJTJCN3V1cVlpWEt2ejcNCj4gcjQNCj4g PiB3JTNEJmFtcDtyZXNlcnZlZD0wDQo+ID4gPj4NCj4gPiA+PiBTRVYtU05QIGZpcm13YXJlIHNw ZWNpZmljYXRpb246DQo+ID4gPj4NCj4gPg0KPiBodHRwczovL25hbTExLnNhZmVsaW5rcy5wcm90 ZWN0aW9uLm91dGxvb2suY29tLz91cmw9aHR0cHMlM0ElMkYlMkZ3d3cuYQ0KPiA+DQo+IG1kLmNv bSUyRnN5c3RlbSUyRmZpbGVzJTJGVGVjaERvY3MlMkY1Njg2MC5wZGYmYW1wO2RhdGE9MDQlN0Mw MSU3DQo+ID4NCj4gQ2JyaWplc2guc2luZ2glNDBhbWQuY29tJTdDNmJiZGJkYmIwYWM4NDAwYjUz YTgwOGQ5NTFhMDBlMTAlN0MzZGQ4DQo+ID4NCj4gOTYxZmU0ODg0ZTYwOGUxMWE4MmQ5OTRlMTgz ZCU3QzAlN0MwJTdDNjM3NjMwNTcxMDY5ODkzMzY3JTdDVW5rDQo+ID4NCj4gbm93biU3Q1RXRnBi R1pzYjNkOGV5SldJam9pTUM0d0xqQXdNREFpTENKUUlqb2lWMmx1TXpJaUxDSkJUaUk2SWsxaA0K PiA+DQo+IGFXd2lMQ0pYVkNJNk1uMCUzRCU3QzEwMDAmYW1wO3NkYXRhPTZ4aVBIbkFNS3lKeTZi JTJCOXRyVWx1a3hLWUENCj4gPiBwSCUyRm5jWU04UWcwcjklMkJXbEElM0QmYW1wO3Jlc2VydmVk PTANCj4gPiA+Pg0KPiA+ID4+IEJyaWplc2ggU2luZ2ggKDI2KToNCj4gPiA+PiAgICBPdm1mUGtn L1Jlc2V0VmVjdG9yOiBtb3ZlIFNFViBzcGVjaWZpYyBjb2RlIGluIGEgc2VwYXJhdGUgZmlsZQ0K PiA+ID4+ICAgIE92bWZQa2cvUmVzZXRWZWN0b3I6IGFkZCB0aGUgbWFjcm8gdG8gaW52b2tlIE1T UiBwcm90b2NvbCBiYXNlZA0KPiA+ID4+ICAgICAgVk1HRVhJVA0KPiA+ID4+ICAgIE92bWZQa2cv UmVzZXRWZWN0b3I6IGFkZCB0aGUgbWFjcm8gdG8gcmVxdWVzdCBndWVzdCB0ZXJtaW5hdGlvbg0K PiA+ID4+ICAgIE92bWZQa2c6IHJlc2VydmUgU05QIHNlY3JldHMgcGFnZQ0KPiA+ID4+ICAgIE92 bWZQa2c6IHJlc2VydmUgQ1BVSUQgcGFnZSBmb3IgU0VWLVNOUA0KPiA+ID4+ICAgIE92bWZQa2cv UmVzZXRWZWN0b3I6IGludHJvZHVjZSBTRVYtU05QIGJvb3QgYmxvY2sgR1VJRA0KPiA+ID4+ICAg IE92bWZQa2cvUmVzZXRWZWN0b3I6IHByZS12YWxpZGF0ZSB0aGUgZGF0YSBwYWdlcyB1c2VkIGlu IFNFQyBwaGFzZQ0KPiA+ID4+ICAgIE92bWZQa2cvUmVzZXRWZWN0b3I6IGludmFsaWRhdGUgdGhl IEdIQ0IgcGFnZQ0KPiA+ID4+ICAgIFVlZmlDcHVQa2c6IERlZmluZSB0aGUgU0VWLVNOUCBzcGVj aWZpYyBkeW5hbWljIFBDRHMNCj4gPiA+PiAgICBPdm1mUGtnL01lbUVuY3J5cHRTZXZMaWI6IGFk ZCBNZW1FbmNyeXB0U2V2U25wRW5hYmxlZCgpDQo+ID4gPj4gICAgT3ZtZlBrZy9TZWNNYWluOiBy ZWdpc3RlciBHSENCIGdwYSBmb3IgdGhlIFNFVi1TTlAgZ3Vlc3QNCj4gPiA+PiAgICBPdm1mUGtn L1BsYXRmb3JtUGVpOiByZWdpc3RlciBHSENCIGdwYSBmb3IgdGhlIFNFVi1TTlAgZ3Vlc3QNCj4g PiA+PiAgICBPdm1mUGtnL0FtZFNldkR4ZTogZG8gbm90IHVzZSBleHRlbmRlZCBQQ0kgY29uZmln IHNwYWNlDQo+ID4gPj4gICAgT3ZtZlBrZy9NZW1FbmNyeXB0U2V2TGliOiBhZGQgc3VwcG9ydCB0 byB2YWxpZGF0ZSBzeXN0ZW0gUkFNDQo+ID4gPj4gICAgT3ZtZlBrZy9CYXNlTWVtRW5jcnlwdFNl dkxpYjogc2tpcCB0aGUgcHJlLXZhbGlkYXRlZCBzeXN0ZW0gUkFNDQo+ID4gPj4gICAgT3ZtZlBr Zy9NZW1FbmNyeXB0U2V2TGliOiBhZGQgc3VwcG9ydCB0byB2YWxpZGF0ZSA+IDRHQiBtZW1vcnkg aW4NCj4gUEVJDQo+ID4gPj4gICAgICBwaGFzZQ0KPiA+ID4+ICAgIE92bWZQa2cvU2VjTWFpbjog cHJlLXZhbGlkYXRlIHRoZSBtZW1vcnkgdXNlZCBmb3IgZGVjb21wcmVzc2luZyBGdg0KPiA+ID4+ ICAgIE92bWZQa2cvUGxhdGZvcm1QZWk6IHZhbGlkYXRlIHRoZSBzeXN0ZW0gUkFNIHdoZW4gU05Q IGlzIGFjdGl2ZQ0KPiA+ID4+ICAgIE92bWZQa2cvUGxhdGZvcm1QZWk6IHNldCB0aGUgU0VWLVNO UCBlbmFibGVkIFBDRA0KPiA+ID4+ICAgIE92bWZQa2cvUGxhdGZvcm1QZWk6IHNldCB0aGUgSHlw ZXJ2aXNvciBGZWF0dXJlcyBQQ0QNCj4gPiA+PiAgICBNZGVQa2cvR0hDQjogaW5jcmVhc2UgdGhl IEdIQ0IgcHJvdG9jb2wgbWF4IHZlcnNpb24NCj4gPiA+PiAgICBVZWZpQ3B1UGtnL01wTGliOiBh ZGQgc3VwcG9ydCB0byByZWdpc3RlciBHSENCIEdQQSB3aGVuIFNFVi1TTlAgaXMNCj4gPiA+PiAg ICAgIGVuYWJsZWQNCj4gPiA+PiAgICBPdm1mUGtnL01lbUVuY3J5cHRTZXZMaWI6IGNoYW5nZSB0 aGUgcGFnZSBzdGF0ZSBpbiB0aGUgUk1QIHRhYmxlDQo+ID4gPj4gICAgT3ZtZlBrZy9NZW1FbmNy eXB0U2V2TGliOiBza2lwIHBhZ2Ugc3RhdGUgY2hhbmdlIGZvciBNbWlvIGFkZHJlc3MNCj4gPiA+ PiAgICBPdm1mUGtnL1BsYXRmb3JtUGVpOiBtYXJrIGNwdWlkIGFuZCBzZWNyZXRzIG1lbW9yeSBy ZXNlcnZlZCBpbiBFRkkNCj4gbWFwDQo+ID4gPj4gICAgT3ZtZlBrZy9BbWRTZXY6IGV4cG9zZSB0 aGUgU05QIHJlc2VydmVkIHBhZ2VzIHRocm91Z2ggY29uZmlndXJhdGlvbg0KPiA+ID4+ICAgICAg dGFibGUNCj4gPiA+Pg0KPiA+ID4+IFRvbSBMZW5kYWNreSAoMSk6DQo+ID4gPj4gICAgVWVmaUNw dVBrZy9NcEluaXRMaWI6IFVzZSBTRVYtU05QIEFQIENyZWF0aW9uIE5BRSBldmVudCB0byBsYXVu Y2ggQVBzDQo+ID4gPj4NCj4gPiA+PiAgIE92bWZQa2cvT3ZtZlBrZy5kZWMgICAgICAgICAgICAg ICAgICAgICAgICAgICB8ICAyNCArDQo+ID4gPj4gICBVZWZpQ3B1UGtnL1VlZmlDcHVQa2cuZGVj ICAgICAgICAgICAgICAgICAgICAgfCAgMTEgKw0KPiA+ID4+ICAgT3ZtZlBrZy9BbWRTZXYvQW1k U2V2WDY0LmRzYyAgICAgICAgICAgICAgICAgIHwgICA1ICstDQo+ID4gPj4gICBPdm1mUGtnL0Jo eXZlL0JoeXZlWDY0LmRzYyAgICAgICAgICAgICAgICAgICAgfCAgIDUgKy0NCj4gPiA+PiAgIE92 bWZQa2cvT3ZtZlBrZ0lhMzIuZHNjICAgICAgICAgICAgICAgICAgICAgICB8ICAgMSArDQo+ID4g Pj4gICBPdm1mUGtnL092bWZQa2dJYTMyWDY0LmRzYyAgICAgICAgICAgICAgICAgICAgfCAgIDYg Ky0NCj4gPiA+PiAgIE92bWZQa2cvT3ZtZlBrZ1g2NC5kc2MgICAgICAgICAgICAgICAgICAgICAg ICB8ICAgNSArLQ0KPiA+ID4+ICAgT3ZtZlBrZy9Pdm1mWGVuLmRzYyAgICAgICAgICAgICAgICAg ICAgICAgICAgIHwgICA1ICstDQo+ID4gPj4gICBPdm1mUGtnL092bWZQa2dYNjQuZmRmICAgICAg ICAgICAgICAgICAgICAgICAgfCAgMTQgKy0NCj4gPiA+PiAgIE92bWZQa2cvQW1kU2V2RHhlL0Ft ZFNldkR4ZS5pbmYgICAgICAgICAgICAgICB8ICAgNyArDQo+ID4gPj4gICAuLi4vRHhlTWVtRW5j cnlwdFNldkxpYi5pbmYgICAgICAgICAgICAgICAgICAgfCAgIDMgKw0KPiA+ID4+ICAgLi4uL1Bl aU1lbUVuY3J5cHRTZXZMaWIuaW5mICAgICAgICAgICAgICAgICAgIHwgICA3ICsNCj4gPiA+PiAg IC4uLi9TZWNNZW1FbmNyeXB0U2V2TGliLmluZiAgICAgICAgICAgICAgICAgICB8ICAgMyArDQo+ ID4gPj4gICBPdm1mUGtnL1BsYXRmb3JtUGVpL1BsYXRmb3JtUGVpLmluZiAgICAgICAgICAgfCAg IDggKw0KPiA+ID4+ICAgT3ZtZlBrZy9SZXNldFZlY3Rvci9SZXNldFZlY3Rvci5pbmYgICAgICAg ICAgIHwgICA2ICsNCj4gPiA+PiAgIE92bWZQa2cvU2VjL1NlY01haW4uaW5mICAgICAgICAgICAg ICAgICAgICAgICB8ICAgMyArDQo+ID4gPj4gICBVZWZpQ3B1UGtnL0xpYnJhcnkvTXBJbml0TGli L0R4ZU1wSW5pdExpYi5pbmYgfCAgIDQgKw0KPiA+ID4+ICAgVWVmaUNwdVBrZy9MaWJyYXJ5L01w SW5pdExpYi9QZWlNcEluaXRMaWIuaW5mIHwgICA0ICsNCj4gPiA+PiAgIE1kZVBrZy9JbmNsdWRl L1JlZ2lzdGVyL0FtZC9HaGNiLmggICAgICAgICAgICB8ICAgMiArLQ0KPiA+ID4+ICAgLi4uL0d1 aWQvQ29uZmlkZW50aWFsQ29tcHV0aW5nU2VjcmV0LmggICAgICAgIHwgIDE4ICsNCj4gPiA+PiAg IE92bWZQa2cvSW5jbHVkZS9MaWJyYXJ5L01lbUVuY3J5cHRTZXZMaWIuaCAgICB8ICAyNiArKw0K PiA+ID4+ICAgLi4uL1g2NC9TbnBQYWdlU3RhdGVDaGFuZ2UuaCAgICAgICAgICAgICAgICAgIHwg IDMxICsrDQo+ID4gPj4gICAuLi4vQmFzZU1lbUVuY3J5cHRTZXZMaWIvWDY0L1ZpcnR1YWxNZW1v cnkuaCAgfCAgMTkgKw0KPiA+ID4+ICAgVWVmaUNwdVBrZy9MaWJyYXJ5L01wSW5pdExpYi9NcExp Yi5oICAgICAgICAgIHwgIDE5ICsNCj4gPiA+PiAgIE92bWZQa2cvQW1kU2V2RHhlL0FtZFNldkR4 ZS5jICAgICAgICAgICAgICAgICB8ICAyMyArDQo+ID4gPj4gICAuLi4vRHhlTWVtRW5jcnlwdFNl dkxpYkludGVybmFsLmMgICAgICAgICAgICAgfCAgMjcgKysNCj4gPiA+PiAgIC4uLi9JYTMyL01l bUVuY3J5cHRTZXZMaWIuYyAgICAgICAgICAgICAgICAgICB8ICAxNyArDQo+ID4gPj4gICAuLi4v UGVpTWVtRW5jcnlwdFNldkxpYkludGVybmFsLmMgICAgICAgICAgICAgfCAgMjcgKysNCj4gPiA+ PiAgIC4uLi9TZWNNZW1FbmNyeXB0U2V2TGliSW50ZXJuYWwuYyAgICAgICAgICAgICB8ICAxOSAr DQo+ID4gPj4gICAuLi4vWDY0L0R4ZVNucFN5c3RlbVJhbVZhbGlkYXRlLmMgICAgICAgICAgICAg fCAgNDAgKysNCj4gPiA+PiAgIC4uLi9YNjQvUGVpRHhlVmlydHVhbE1lbW9yeS5jICAgICAgICAg ICAgICAgICB8IDE2NyArKysrKystDQo+ID4gPj4gICAuLi4vWDY0L1BlaVNucFN5c3RlbVJhbVZh bGlkYXRlLmMgICAgICAgICAgICAgfCAxMjYgKysrKysrDQo+ID4gPj4gICAuLi4vWDY0L1NlY1Nu cFN5c3RlbVJhbVZhbGlkYXRlLmMgICAgICAgICAgICAgfCAgMzYgKysNCj4gPiA+PiAgIC4uLi9Y NjQvU25wUGFnZVN0YXRlQ2hhbmdlSW50ZXJuYWwuYyAgICAgICAgICB8IDI5NSArKysrKysrKysr KysrDQo+ID4gPj4gICBPdm1mUGtnL1BsYXRmb3JtUGVpL0FtZFNldi5jICAgICAgICAgICAgICAg ICAgfCAxOTIgKysrKysrKysNCj4gPiA+PiAgIE92bWZQa2cvUGxhdGZvcm1QZWkvTWVtRGV0ZWN0 LmMgICAgICAgICAgICAgICB8ICAyMSArDQo+ID4gPj4gICBPdm1mUGtnL1NlYy9TZWNNYWluLmMg ICAgICAgICAgICAgICAgICAgICAgICAgfCAxMTEgKysrKysNCj4gPiA+PiAgIFVlZmlDcHVQa2cv TGlicmFyeS9NcEluaXRMaWIvRHhlTXBMaWIuYyAgICAgICB8ICAxMSArLQ0KPiA+ID4+ICAgLi4u L01wSW5pdExpYi9JYTMyL1NldlNucFJtcEFkanVzdEludGVybmFsLmMgIHwgIDMxICsrDQo+ID4g Pj4gICBVZWZpQ3B1UGtnL0xpYnJhcnkvTXBJbml0TGliL01wTGliLmMgICAgICAgICAgfCAyNzUg KysrKysrKysrKystDQo+ID4gPj4gICAuLi4vTXBJbml0TGliL1g2NC9TZXZTbnBSbXBBZGp1c3RJ bnRlcm5hbC5jICAgfCAgNDQgKysNCj4gPiA+PiAgIE92bWZQa2cvRnZtYWluQ29tcGFjdFNjcmF0 Y2hFbmQuZmRmLmluYyAgICAgICB8ICAgNSArDQo+ID4gPj4gICBPdm1mUGtnL1Jlc2V0VmVjdG9y L0lhMTYvUmVzZXRWZWN0b3JWdGYwLmFzbSAgfCAgMjcgKysNCj4gPiA+PiAgIC4uLi9JYTMyL3tQ YWdlVGFibGVzNjQuYXNtID0+IEFtZFNldi5hc219ICAgICB8IDQxNSArKysrKysrKystLS0tLS0t LS0NCj4gPiA+PiAgIE92bWZQa2cvUmVzZXRWZWN0b3IvSWEzMi9QYWdlVGFibGVzNjQuYXNtICAg ICB8IDQwNCArLS0tLS0tLS0tLS0tLS0tLQ0KPiA+ID4+ICAgT3ZtZlBrZy9SZXNldFZlY3Rvci9S ZXNldFZlY3Rvci5uYXNtYiAgICAgICAgIHwgICA3ICsNCj4gPiA+PiAgIFVlZmlDcHVQa2cvTGli cmFyeS9NcEluaXRMaWIvTXBFcXUuaW5jICAgICAgICB8ICAgMSArDQo+ID4gPj4gICBVZWZpQ3B1 UGtnL0xpYnJhcnkvTXBJbml0TGliL1g2NC9NcEZ1bmNzLm5hc20gfCAgNTEgKysrDQo+ID4gPj4g ICA0OCBmaWxlcyBjaGFuZ2VkLCAxOTc4IGluc2VydGlvbnMoKyksIDYzMCBkZWxldGlvbnMoLSkN Cj4gPiA+PiAgIGNyZWF0ZSBtb2RlIDEwMDY0NA0KPiA+ID4+IE92bWZQa2cvTGlicmFyeS9CYXNl TWVtRW5jcnlwdFNldkxpYi9YNjQvU25wUGFnZVN0YXRlQ2hhbmdlLmgNCj4gPiA+PiAgIGNyZWF0 ZSBtb2RlIDEwMDY0NA0KPiA+ID4+DQo+IE92bWZQa2cvTGlicmFyeS9CYXNlTWVtRW5jcnlwdFNl dkxpYi9YNjQvRHhlU25wU3lzdGVtUmFtVmFsaWRhdGUuYw0KPiA+ID4+ICAgY3JlYXRlIG1vZGUg MTAwNjQ0DQo+ID4gPj4gT3ZtZlBrZy9MaWJyYXJ5L0Jhc2VNZW1FbmNyeXB0U2V2TGliL1g2NC9Q ZWlTbnBTeXN0ZW1SYW1WYWxpZGF0ZS5jDQo+ID4gPj4gICBjcmVhdGUgbW9kZSAxMDA2NDQNCj4g PiA+Pg0KPiBPdm1mUGtnL0xpYnJhcnkvQmFzZU1lbUVuY3J5cHRTZXZMaWIvWDY0L1NlY1NucFN5 c3RlbVJhbVZhbGlkYXRlLmMNCj4gPiA+PiAgIGNyZWF0ZSBtb2RlIDEwMDY0NA0KPiA+ID4+DQo+ ID4gT3ZtZlBrZy9MaWJyYXJ5L0Jhc2VNZW1FbmNyeXB0U2V2TGliL1g2NC9TbnBQYWdlU3RhdGVD aGFuZ2VJbnRlcm5hbC5jDQo+ID4gPj4gICBjcmVhdGUgbW9kZSAxMDA2NDQNCj4gPiA+PiBVZWZp Q3B1UGtnL0xpYnJhcnkvTXBJbml0TGliL0lhMzIvU2V2U25wUm1wQWRqdXN0SW50ZXJuYWwuYw0K PiA+ID4+ICAgY3JlYXRlIG1vZGUgMTAwNjQ0DQo+ID4gPj4gVWVmaUNwdVBrZy9MaWJyYXJ5L01w SW5pdExpYi9YNjQvU2V2U25wUm1wQWRqdXN0SW50ZXJuYWwuYw0KPiA+ID4+ICAgY29weSBPdm1m UGtnL1Jlc2V0VmVjdG9yL0lhMzIve1BhZ2VUYWJsZXM2NC5hc20gPT4gQW1kU2V2LmFzbX0NCj4g KDY3JSkNCj4gPiA+Pg0KPiA+ID4+IC0tDQo+ID4gPj4gMi4xNy4xDQo+ID4gPg0KPiA+DQo+ID4N Cj4gPiANCj4gPg0KDQo=