From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by mx.groups.io with SMTP id smtpd.web10.47739.1656743124128399358 for ; Fri, 01 Jul 2022 23:25:24 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=nbc9CIg5; spf=pass (domain: intel.com, ip: 192.55.52.120, mailfrom: jiewen.yao@intel.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1656743124; x=1688279124; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=erLIrHZhdto6ZYkYcOOZx7TKuQbP/u1VYMh70uImMic=; b=nbc9CIg5ap/lMOf5pCdAEjq4sM/TKAtCJzVPaB/dU2KwQV2JyrAEeJYv ySK6c0TZQPcyxvh5uT6pA19hQasL6MuDNp2VkB57iDV3rvGdAC4nQYAx5 E7u7eCeTI/mwQKz1rBgfhbyGNw92E6BAqpupzR5SmK1cR0nKVG4JhkrTA c70EgO100JBn4mqNAvItYFB1YBujOgv+XxvskA3Qr1hYyHfrodXKhD1nG mrCAGsKJevVHyzxolgj4wTeVhW3pa9jP2gSfB7tpAZksZerdCFcQFYHy1 DeQwdKsX5OBLY+PmOoER6ZyjghjAUcjXJw026KQ9nOhGcm4IFcRPrDpAs g==; X-IronPort-AV: E=McAfee;i="6400,9594,10395"; a="281561501" X-IronPort-AV: E=Sophos;i="5.92,239,1650956400"; d="scan'208";a="281561501" Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 01 Jul 2022 23:25:23 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.92,239,1650956400"; d="scan'208";a="681632513" Received: from orsmsx606.amr.corp.intel.com ([10.22.229.19]) by FMSMGA003.fm.intel.com with ESMTP; 01 Jul 2022 23:25:23 -0700 Received: from orsmsx608.amr.corp.intel.com (10.22.229.21) by ORSMSX606.amr.corp.intel.com (10.22.229.19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.27; Fri, 1 Jul 2022 23:25:23 -0700 Received: from ORSEDG602.ED.cps.intel.com (10.7.248.7) by orsmsx608.amr.corp.intel.com (10.22.229.21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.27 via Frontend Transport; Fri, 1 Jul 2022 23:25:23 -0700 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (104.47.57.170) by edgegateway.intel.com (134.134.137.103) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2308.27; Fri, 1 Jul 2022 23:25:22 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=UaMzoW2zCqgAHiyNUbnNnnXgqH3FJZ0LrcXzjL0Es1gJeSfGP0zKfqoi0mOP6HZYoM0V2QHYc9em2e7YKXHeENlQjxd2ql/FhS9kmrUkDuy+8nHaEiOqrU7BmmLXAjSDU4tnZnViGO9QvyW8UHCwJ+Jmo89i45SnErW+6WcMm8AB4tOePWZuyd5DGLX/qXsX2MjwTiNQ4HqKDawDsaOzU1hKRkfCrqq19yXZ5c5fGfrdz6b0L2F/VEvyBVLeKxHPrn6zqaL9t17Mjxfg9iifsQ+yTgjHtGAgN6TMXLmCACqqxCkUKRW54T7gyujNQNXU77Em5JpPtn4uhLMbDca4kQ== 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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=erLIrHZhdto6ZYkYcOOZx7TKuQbP/u1VYMh70uImMic=; b=Xgo50Ws+Th+gfwgvfmGL2KRh7eRykhV3UOvJiRFpsPtj4e70vlIdrjQqveDemOgiM03rMsIrADEon2VSOscpF2uRt5hymIuZ04WlTwL4ETJ0mqXm3ek9TsPbZ+LBdhTpcByMFv4a00yfP1dYgL4XicL4XpUKveH+Mbaqu/P7B8ntaLQKilOHNSRKzNhPRE7ihFx4/1sWGDzzi4fxAwFv8O4opO+L3TbpISK1SFLWkU7hOiMsw+euvDGjiECH65o/9TJ6HmmYXWCxQNko/ohBl1Qa/c6Y3B7rQL/bHuiZqScynxbyB55GJNmOfBlEAQy0XEKocQcmSwz9dZBRPfB00A== 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 Received: from MW4PR11MB5872.namprd11.prod.outlook.com (2603:10b6:303:169::14) by CH2PR11MB4246.namprd11.prod.outlook.com (2603:10b6:610:40::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5395.17; Sat, 2 Jul 2022 06:25:15 +0000 Received: from MW4PR11MB5872.namprd11.prod.outlook.com ([fe80::21c8:d7ec:9943:9d06]) by MW4PR11MB5872.namprd11.prod.outlook.com ([fe80::21c8:d7ec:9943:9d06%5]) with mapi id 15.20.5395.015; Sat, 2 Jul 2022 06:25:15 +0000 From: "Yao, Jiewen" To: Pierre Gondois , "Kinney, Michael D" , "devel@edk2.groups.io" CC: Sami Mujawar , Leif Lindholm , Ard Biesheuvel , Rebecca Cran , "Gao, Liming" , "Wang, Jian J" Subject: Re: [edk2-devel] [PATCH RESEND v1 0/9] Add DrbgLib Thread-Topic: [edk2-devel] [PATCH RESEND v1 0/9] Add DrbgLib Thread-Index: AQHYi/ArWEpsjSmYG0KpzscQrS1oQa1nFTEAgAAQviCAAiIHAIABUOVQ Date: Sat, 2 Jul 2022 06:25:15 +0000 Message-ID: References: <20220629191848.2619317-1-Pierre.Gondois@arm.com> <64f6d993-84b2-2250-8495-4ee5849eff5a@arm.com> In-Reply-To: <64f6d993-84b2-2250-8495-4ee5849eff5a@arm.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-version: 11.6.500.17 dlp-product: dlpe-windows dlp-reaction: no-action authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: c2fb0ca7-601e-48e8-6767-08da5bf3a08c x-ms-traffictypediagnostic: CH2PR11MB4246:EE_ x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 2+Io+TijVgqJC2Ih/LGDpRr/dmC9uWBIA3tYWbThjxpUF0l+53wBRzOrZmCOLiDOcS1yRSw2LZGIfkdNS4u25NhmGgpG1JTZMz2ifu/Wq3D4F+8sY/5lVY3s01rmUjAyuZ0A6IDb5H4gV5h9UnYJNyoDy8fDeGRAzejWjSjawY2CHp/VargQzWsmSNdojU3r6bBy+4TDjEcF9doqP9CcdKBtug4kAPdqzqu62kvRuwTSFmM5+BQ/5P4WCJAZlWuFo3lJFLLiTwYOZzoHSlc5Zjka34q69olasWir0/A9FOBLaKDsD4EduHHoz12KQsH77lMGCN7OsBrJRZVewwImp2k1vVCr7p1txbgefMdjnPtK+gTZVUhCyskYYpMui+W79J+jcpzI38YcwJo/UWwgaCuNq4k2D/z86+3kzQV//DqnAwQw64L4VIK0QbrGWmjdlsZEbmwg3vS3/UCIznH67J6UhnoKw9fPRFfMRSjhaIbTXGAVo77mPgeznmewyhmhFyVphyjJJOEM3F6TcFGVo1GkvZbAw5+KcrtSvqfTP5tMYr/FoithK6SU0PboirQ9VuMU9DNdwIXeM1WRYczwhlC5aJxNPfziqA9ndfLEQVH/cfYXfMYH0bRWD3d9cgcaKthUwnzbqaRFhqiQpKG9HySH6yvy1S4EgwP87KHcw5FbXZrqspo/fCATDEd8hp1wBsCMr0fuKI+4NJDGr/t6nP4fUkSMv3QAMQSeJeH6Hu1y2znw5Abm57aW+S1wvnBpETz7f4ynuu4kzobfbxbbHVscYfr193Gc+JgEwzmcQypZXUjoiI21a7pmwMqT8Q+uSvxfh+dJKRGK49MrItUIQahGw6QSdQ2FZDMLfCBYIvfgkcAOaBxfhJHJg8zlDpFc x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MW4PR11MB5872.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230016)(346002)(136003)(366004)(396003)(39860400002)(376002)(966005)(71200400001)(54906003)(478600001)(316002)(2906002)(26005)(7696005)(6506007)(53546011)(110136005)(9686003)(8936002)(52536014)(86362001)(5660300002)(33656002)(66476007)(66446008)(107886003)(8676002)(76116006)(66946007)(66556008)(64756008)(4326008)(186003)(83380400001)(38100700002)(41300700001)(55016003)(82960400001)(38070700005)(122000001);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?RDF4S2RTSksxWlR0VWF2cktXZjY3VVZUOVF6TlVOSGtBMGpLdGQyc3lWcTBT?= =?utf-8?B?dDZycjZkYUwxNjNBSm12MTV5WXRVNW5BUzV6ejRGSUdUVkpZckVqV2NYdDll?= =?utf-8?B?Y3ZML0ZKdzFIL2gwdHF1aUNOS3BpSjhUY2Ivb05yZHdFL3gzZjZadDFDRUpy?= =?utf-8?B?cUVSUDRQbFhaYWdxR1BUQWIvVnBlOGIwaE55WTdycmlGL1lLZFlYTDVNc0Nv?= =?utf-8?B?V2srZ3lUQzIwWE5paE1ZdngvbHVRb3hxMjcrcVVOWm1SN05BYlFTUzZTbk4w?= =?utf-8?B?WVViOXlqTXVuUGpmSGVUbHBMcmlFV0hUS1VOcWRxUW5tRjd2WVhwVmVob2s3?= =?utf-8?B?QW9SL1M0ZGpOdXNYb29mWWZXaW5IS0JONmhOeEV4WHgzVkdtbExXUkNIMkwv?= =?utf-8?B?KzVsN1loOGs2aTlQYmNqcUtMQTJVeGowcEovM2Z2ZlRIR0RiQXJrOFhQTkFB?= =?utf-8?B?VGJ6Qm1jNDRIa2s0cVNvTGxVTEJqbE9pYmVUTG9tU1RhSEhrWWMzWHgraFc5?= =?utf-8?B?a0NTRHdQOWJ1L01hTktMQVJ0Q1NRUVg1RVBRdkxZZVJtckJqWVFKUnFzbUYx?= =?utf-8?B?ekEraFNYWVJuZkczeUlkR0p0Tk1QTDhNOXVSeGc1SW9DUStRZ3RDS2lsb0hZ?= =?utf-8?B?NmdVMkNLbzJCcTRYSE9BY3dtVnpLTWpMenNHV0tFMytJQ3k1RFJ4cDRwQVFh?= =?utf-8?B?Nk5hZi8vdU5OTEVhTnJBdmtQbGxhOGF4N2dUN3FnVnB1ajRKT3hhc2d0MzNr?= =?utf-8?B?MHdZZGdXbkRBa3djNSs4dVoxRmNwSG9tYitjQnJieEM1Y2xMdTRPQnRvWUxw?= =?utf-8?B?T3g3VC9BK1VXQ01PbkRCdDhzM3U2MjV5R1Z4dkgyKzA0RitqdTRpSUo4WDIx?= =?utf-8?B?bFp6MUNMangyYkZLZUFKM3plOVJHUkQvSGFJZm1DenU5a3h5WUdTbGN5Q0ZC?= =?utf-8?B?ck1pKzZXd25NVFExT2pvV0ZBeG9tTkhML1NXN3ZRdFpEMlRNcit3ZlJGZUVl?= =?utf-8?B?TitydFZzb2VDV3dobG9vYzI5SHRwUXBJOE9YMUV6SlBaVUtJdDh2RGZrUnJu?= =?utf-8?B?MHUzVnhMekdJWXdBTVN6cGhTYk1nc2Y1RzhUY2FIZ3ZrYWg5NUxrZGlRZHRM?= =?utf-8?B?eW5zYm9yR2c4UVgyYXpTQ2NuenE0T3V4R0s3N293Z29qVjFBQiswdysxUUZR?= =?utf-8?B?b0FsNm5GbWozejh3YWJFNnJlelAwTHljSjRMSnpDYVJnVWdwODR6MzZwdncw?= =?utf-8?B?Z3B4UkVBdGJscFRGQiswb2w4SmtqNTBCNk03UWttNllsN1NpN05LSG5uMnlh?= =?utf-8?B?UC9Sa2MxTWZhRkNpcXhuSm40S3d5alZSTXBhMVA4NU5lamFvazFiNjdRdmNo?= =?utf-8?B?dTM4aktCZkxvVEZmWDQ1R3BOclBXRGhSUSt6N0VDVm4vajNaUTNyQkF6V25V?= =?utf-8?B?eU1BaVE5RTNPSGxEdThyVCtRanhDdFcyTFg3a3FEZmhTUXJOZWtzQkUwS3Zt?= =?utf-8?B?N3N1Z3RKU2NpTDYvdGxHR1U2eUltVGhEWUE5R2V1a1BZVm16THp1eW5zTzFs?= =?utf-8?B?aHhCRGF0aWpRVVdzaElqcUJWUEdXZDRxMHE4am1qVVFCN05lc3pEM3hJWW1z?= =?utf-8?B?WllkNUs1UFI5Q2EzdmdTdTBPOGlTaGhDVGVTdnhNNlhDbzZNWEJ3dlVjVDN4?= =?utf-8?B?ZWtVdGc1QWlkbTBVc2xsd05pNlhCSDN5VVI2THNHMDRtd2E5cURMSGVGRWV0?= =?utf-8?B?ZHdVSnFVdUNld2pEZ1ZydE5MM1RQYk9YOXFHVDNRODliSnlJMVFFcEcydnRK?= =?utf-8?B?NXpwWnRxdDUzNDQxU0dSb3o0dlVSQ04yV1YxYTNCU0ZERWRWcjZ0OUpSWXZE?= =?utf-8?B?NlpKWkpoZW1xeTJ6OUp5VXFxYmZIbURJNjJqOVZOdXM3UGtzTEhtbTFIS3VX?= =?utf-8?B?Mjk1VHRuMFFicGEvQlBRSzVndnk0KytWRHhka3FQZmo2bFJlTVFEOHZ4UFBJ?= =?utf-8?B?OEVOMjBKL1VWQVhvdk9mdnFIb3J5L0IwcU9LWVZhdjNnU1I1MkZHdmd6Q3Mz?= =?utf-8?B?aHZFWTl4dThnUk14YmlnbC9senFqcnlwSytjT0JZOUgzMGY1T2ZIYWtXbG1n?= =?utf-8?Q?cw5iKbWalciyiGGFi4AbCFw9P?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MW4PR11MB5872.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: c2fb0ca7-601e-48e8-6767-08da5bf3a08c X-MS-Exchange-CrossTenant-originalarrivaltime: 02 Jul 2022 06:25:15.4926 (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: FI4iviZjlT9Gd6iqfYInSYqv0LwziFnnxiZ4gTNSmXXF1ctC8cu9svrnP6m4o0iULyOlNQ9mXFhc2f7+mofmvQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH2PR11MB4246 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 VGhhbmtzIGZvciB0aGUgUFBULg0KDQpJdCBpcyBoZWxwZnVsIGZvciBtZSB0byB1bmRlcnN0YW5k IHRoZSBiYWNrZ3JvdW5kLiBTb21lIHF1ZXN0aW9ucyBhbmQgc3VnZ2VzdGlvbnM6DQoNCjEpIFRo ZSBQUFQganVtcHMgZnJvbSBjdXJyZW50IHN0YXR1cyAocGFnZSA3fjkpIHRvIHByb3Bvc2VkIHVw ZGF0ZXMgKHBhZ2UgMTB+MTIpIGRpcmVjdGx5Lg0KSSBhbSBub3Qgc3VyZSB3aGF0IGlzIHRoZSBw cm9ibGVtIHN0YXRlbWVudC4gV2h5IHdlIG5lZWQgZG8gdGhlIG5ldyBwcm9wb3NhbD8NCg0KMikg UGFnZSAxMSBzaG93cyBBZXNMaWJ8QWVzTmlJbnN0cnVjdGlvbkxpYiAoeDY0KS4NCklzIHRoYXQg c29tZXRoaW5nIHlvdSB3YW50IHRvIGRvPw0KU2luY2UgWDY0IGFscmVhZHkgaGF2ZSBSRFNFRUQg YW5kIFJEUkFORCBpbnN0cnVjdGlvbiwgd2h5IHRoaXMgaXMgbmVlZGVkIGZvciBYNjQ/IA0KDQoz KSBQYWdlIDExIHNob3dzIEFlc0xpYnxTb2Z0QWVzTGliLg0KTWFueSBBRVMgc29mdHdhcmUgaW1w bGVtZW50YXRpb24gaXMgdnVsbmVyYWJsZSB0byBzaWRlIGNoYW5uZWwgYXR0YWNrLiANCldpbGwg c2lkZSBjaGFubmVsIGF0dGFjayBiZSB1bmRlciBjb25zaWRlcmF0aW9uPw0KV2hhdCBpcyBzZWN1 cml0eSBwcm9wZXJ0eSB5b3Ugd2FudCB0byBtYWludGFpbiB3aXRoIHRoZSBBZXNMaWIgQVBJIGFu ZCBTb2Z0QWVzTGliIGltcGxlbWVudGF0aW9uPw0KT3IgdGhpcyBBZXNMaWIgaW50ZXJmYWNlIGlz IG9ubHkgZm9yIERyYmdMaWI/DQpXaGF0IGlzIHRoZSBBUEkgZGVzaWduIGdvYWw/DQoNCjQpIFBh Z2UgMTEgc2hvd3MgdGhhdCBSbmdMaWIgaXMgc3RpbGwgdGhlIG9ubHkgcHVibGljIGludGVyZmFj ZS4NCk15IGNvbmNlcm4gaXMgdGhhdCB0byBpbnRyb2R1Y2UgbW9yZSBSbmdMaWIgcmVsYXRlZCBs aWIganVzdCBjb25mdXNlcyB0aGUgY29uc3VtZXIuDQoNCkkgYWxyZWFkeSBnb3QgbG90cyBvZiBx dWVzdGlvbnMgLSAiV2UgaGF2ZSBSbmdMaWIgYW5kIENyeXRwb0xpYi9SYW5kb21CeXRlcygpLCB3 aGljaCBvbmUgSSBzaG91bGQgdXNlIHRvIGdlbmVyYXRlIDggYnl0ZXMgcmFuZG9tIGRhdGE/Ig0K DQpJbnRyb2R1Y2luZyBtb3JlIGxpYiBpbnN0YW5jZSBtZWFucyB3ZSB3aWxsIGhhdmUgbW9yZSBx dWVzdGlvbnMgZnJvbSBjb25zdW1lcnMgaW4gdGhlIGZ1dHVyZSwgc3VjaCBhcw0KQSkgV2UgaGF2 ZSBSbmdMaWIsIFRybmdMaWIsIERyYmdMaWIsIHdoaWNoIG9uZSBJIHNob3VsZCB1c2UgdG8gZ2V0 IHJhbmRvbSBkYXRhPw0KQikgV2UgaGF2ZSBBZXNMaWIgYW5kIENyeXB0b0xpYi9BZXNYWFgoKSBm dW5jdGlvbiwgd2hpY2ggb25lIEkgc2hvdWxkIHVzZSB0byBlbmNyeXB0IG15IGRhdGE/DQoNClNv IGZhciwgSSBkb27igJl0IHNlZSB0aGUgaW1tZWRpYXRlIG5lZWQgZm9yIFg2NCBwbGF0Zm9ybSwg SSB3b3VsZCBsaWtlIHRvIHJlY29tbWVuZCBwdXQgdGhlbSB0byBBcm1Qa2cgb25seS4NCkFzIHN1 Y2gsIHRoZSBnZW5lcmljIGNvbnN1bWVyIG9ubHkga25vd3MgdGhlIFJuZ0xpYiBpbnRlcmZhY2Uu DQoNClRoYW5rIHlvdQ0KWWFvIEppZXdlbg0KDQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0t LS0NCj4gRnJvbTogUGllcnJlIEdvbmRvaXMgPHBpZXJyZS5nb25kb2lzQGFybS5jb20+DQo+IFNl bnQ6IEZyaWRheSwgSnVseSAxLCAyMDIyIDU6NTAgUE0NCj4gVG86IFlhbywgSmlld2VuIDxqaWV3 ZW4ueWFvQGludGVsLmNvbT47IEtpbm5leSwgTWljaGFlbCBEDQo+IDxtaWNoYWVsLmQua2lubmV5 QGludGVsLmNvbT47IGRldmVsQGVkazIuZ3JvdXBzLmlvDQo+IENjOiBTYW1pIE11amF3YXIgPHNh bWkubXVqYXdhckBhcm0uY29tPjsgTGVpZiBMaW5kaG9sbQ0KPiA8cXVpY19sbGluZGhvbEBxdWlj aW5jLmNvbT47IEFyZCBCaWVzaGV1dmVsIDxhcmRiK3RpYW5vY29yZUBrZXJuZWwub3JnPjsNCj4g UmViZWNjYSBDcmFuIDxyZWJlY2NhQGJzZGlvLmNvbT47IEdhbywgTGltaW5nDQo+IDxnYW9saW1p bmdAYnlvc29mdC5jb20uY24+OyBXYW5nLCBKaWFuIEogPGppYW4uai53YW5nQGludGVsLmNvbT4N Cj4gU3ViamVjdDogUmU6IFtlZGsyLWRldmVsXSBbUEFUQ0ggUkVTRU5EIHYxIDAvOV0gQWRkIERy YmdMaWINCj4gDQo+IEhlbGxvIFlhbywNCj4gT24gNi8zMC8yMiAwMzoxNiwgWWFvLCBKaWV3ZW4g d3JvdGU6DQo+ID4gTW9yZSBxdWVzdGlvbjoNCj4gPiBQbGVhc2UgZWR1Y2F0ZSBtZSBob3cgeW91 IHBsYW4gdG8gaW5jbHVkZSBEcmJnTGliIHRvIG9wZW5zc2w/DQo+ID4gQ3VycmVudGx5LCBpdCBp cyB1c2luZyBSbmdMaWIuDQo+ID4NCj4gaHR0cHM6Ly9naXRodWIuY29tL3RpYW5vY29yZS9lZGsy L2Jsb2IvbWFzdGVyL0NyeXB0b1BrZy9MaWJyYXJ5L09wZW5zc2xMaWIvDQo+IE9wZW5zc2xMaWIu aW5mI0w2MzQ/DQo+IA0KPiBUaGVyZSB3YXMgYSBkaXNjdXNzaW9uIGFib3V0IHRoZSBEcmJnTGli IGluIGxhdGUgMjAyMCBhdDoNCj4gaHR0cHM6Ly9lZGsyLmdyb3Vwcy5pby9nL2RldmVsL3RvcGlj Lzc4ODIzMDA5IzcxNjE5DQo+IA0KPiBUaGUgaW50ZXJyYWN0aW9uIGJldHdlZW4gYmV0d2VlbiBh bGwgdGhlIGxpYnJhcmllcyBpcyBkZXNjcmliZWQgaW4gc2xpZGUgMTEgb2Y6DQo+IGh0dHBzOi8v ZWRrMi5ncm91cHMuaW8vZy9kZXZlbC9maWxlcy9EZXNpZ25zLzIwMjEvMDExNi9FREtJSSUyMC0N Cj4gJTIwUHJvcG9zZWQlMjB1cGRhdGUlMjB0byUyMFJORyUyMGltcGxlbWVudGF0aW9uLnBkZg0K PiANCj4gVGhlIE9wZW5zc2xMaWIgcmVsaWVzIG9uIHRoZSBSbmdMaWIgYmVjYXVzZSBvZiB0aGlz IGZ1bmN0aW9uIGNhbGw6DQo+IGh0dHBzOi8vZ2l0aHViLmNvbS90aWFub2NvcmUvZWRrMi9ibG9i L21hc3Rlci9DcnlwdG9Qa2cvTGlicmFyeS9PcGVuc3NsTGliLw0KPiByYW5kX3Bvb2wuYyNMNDkN Cj4gQmFzZWQgb24gdGhlIHNsaWRlIDExLCBpdCBpcyBwb3NzaWJsZSB0byBoYXZlIGEgUm5nTGli IGltcGxlbWVudGF0aW9uDQo+IHVzaW5nIHRoZSBEcmJnTGliIGVpdGhlciB0aHJvdWdoIFJuZ0R4 ZUxpYiBvciB0aHJvdWdoIGEgbmV3DQo+IFJuZ0xpYnxSbmdEcmJnTGliLg0KPiANCj4gUmVnYXJk cywNCj4gUGllcnJlDQo+IA0KPiA+DQo+ID4gVGhhbmsgeW91DQo+ID4gWWFvIEppZXdlbg0KPiA+ DQo+ID4+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4+IEZyb206IEtpbm5leSwgTWlj aGFlbCBEIDxtaWNoYWVsLmQua2lubmV5QGludGVsLmNvbT4NCj4gPj4gU2VudDogVGh1cnNkYXks IEp1bmUgMzAsIDIwMjIgODoxNiBBTQ0KPiA+PiBUbzogZGV2ZWxAZWRrMi5ncm91cHMuaW87IHBp ZXJyZS5nb25kb2lzQGFybS5jb207IEtpbm5leSwgTWljaGFlbCBEDQo+ID4+IDxtaWNoYWVsLmQu a2lubmV5QGludGVsLmNvbT4NCj4gPj4gQ2M6IFNhbWkgTXVqYXdhciA8c2FtaS5tdWphd2FyQGFy bS5jb20+OyBMZWlmIExpbmRob2xtDQo+ID4+IDxxdWljX2xsaW5kaG9sQHF1aWNpbmMuY29tPjsg QXJkIEJpZXNoZXV2ZWwgPGFyZGIrdGlhbm9jb3JlQGtlcm5lbC5vcmc+Ow0KPiA+PiBSZWJlY2Nh IENyYW4gPHJlYmVjY2FAYnNkaW8uY29tPjsgR2FvLCBMaW1pbmcNCj4gPj4gPGdhb2xpbWluZ0Bi eW9zb2Z0LmNvbS5jbj47IFlhbywgSmlld2VuIDxqaWV3ZW4ueWFvQGludGVsLmNvbT47IFdhbmcs DQo+ID4+IEppYW4gSiA8amlhbi5qLndhbmdAaW50ZWwuY29tPg0KPiA+PiBTdWJqZWN0OiBSRTog W2VkazItZGV2ZWxdIFtQQVRDSCBSRVNFTkQgdjEgMC85XSBBZGQgRHJiZ0xpYg0KPiA+Pg0KPiA+ PiBIaSBQaWVycmUsDQo+ID4+DQo+ID4+IENhbiB5b3UgYWRkIHRvIHRoZSBQYXRjaCAjMCBTdW1t YXJ5IGFuZCB0aGUgQlogdGhlIGRpZmZlcmVuY2UNCj4gPj4gYmV0d2VlbiB0aGUgZXhpc3Rpbmcg Um5nTGliIGFuZCB0aGlzIG5ldyBEcmJnTGliPw0KPiA+Pg0KPiA+PiBXb3VsZCB5b3UgcmVjb21t ZW5kIG9uZSBiZSBpbXBsZW1lbnQgb24gdG9wIG9mIHRoZSBvdGhlcj8NCj4gPj4NCj4gPj4gUmVh bGx5IGdsYWQgdG8gc2VlIHRlc3QgdmVjdG9ycyB3ZXJlIHVzZWQgdG8gdmVyaWZ5IGNvcnJlY3Ru ZXNzLg0KPiA+PiBDYW4geW91IGNvbnNpZGVyIGFkZGluZyBmb3JtYWwgdW5pdCB0ZXN0cyB1c2lu ZyB0aGUgVW5pdFRlc3RGcmFtZXdvcmtQa2cNCj4gPj4gd2l0aCB0aG9zZSB0ZXN0IHZlY3RvcnMg c28gYSB1bml0IHRlc3QgZmFpbHVyZSB3b3VsZCBiZSBnZW5lcmF0ZWQgaWYNCj4gPj4gbWFpbnRl bmFuY2UgaXMgcGVyZm9ybWVkIGluIHRoZSBmdXR1cmUgdGhhdCBjaGFuZ2VzIHRoZSBiZWhhdmlv cj8NCj4gPj4NCj4gPj4gVGhhbmtzLA0KPiA+Pg0KPiA+PiBNaWtlDQo+ID4+DQo+ID4+PiAtLS0t LU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+Pj4gRnJvbTogZGV2ZWxAZWRrMi5ncm91cHMuaW8g PGRldmVsQGVkazIuZ3JvdXBzLmlvPiBPbiBCZWhhbGYgT2YNCj4gPj4gUGllcnJlR29uZG9pcw0K PiA+Pj4gU2VudDogV2VkbmVzZGF5LCBKdW5lIDI5LCAyMDIyIDEyOjE5IFBNDQo+ID4+PiBUbzog ZGV2ZWxAZWRrMi5ncm91cHMuaW8NCj4gPj4+IENjOiBTYW1pIE11amF3YXIgPHNhbWkubXVqYXdh ckBhcm0uY29tPjsgTGVpZiBMaW5kaG9sbQ0KPiA+PiA8cXVpY19sbGluZGhvbEBxdWljaW5jLmNv bT47IEFyZCBCaWVzaGV1dmVsIDxhcmRiK3RpYW5vY29yZUBrZXJuZWwub3JnPjsNCj4gPj4+IFJl YmVjY2EgQ3JhbiA8cmViZWNjYUBic2Rpby5jb20+OyBLaW5uZXksIE1pY2hhZWwgRA0KPiA+PiA8 bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20+OyBHYW8sIExpbWluZyA8Z2FvbGltaW5nQGJ5b3Nv ZnQuY29tLmNuPjsNCj4gWWFvLA0KPiA+Pj4gSmlld2VuIDxqaWV3ZW4ueWFvQGludGVsLmNvbT47 IFdhbmcsIEppYW4gSiA8amlhbi5qLndhbmdAaW50ZWwuY29tPg0KPiA+Pj4gU3ViamVjdDogW2Vk azItZGV2ZWxdIFtQQVRDSCBSRVNFTkQgdjEgMC85XSBBZGQgRHJiZ0xpYg0KPiA+Pj4NCj4gPj4+ IEZyb206IFBpZXJyZSBHb25kb2lzIDxwaWVycmUuZ29uZG9pc0Bhcm0uY29tPg0KPiA+Pj4NCj4g Pj4+IEJ1Z3ppbGxhOiBCdWcgMzk3MSAoaHR0cHM6Ly9idWd6aWxsYS50aWFub2NvcmUub3JnL3No b3dfYnVnLmNnaT9pZD0zOTcxKQ0KPiA+Pj4NCj4gPj4+IEFkZCBzdXBwb3J0IGZvciBhIERldGVy bWluaXN0aWMgUmFuZG9tIEJpdHMgR2VuZXJhdG9yIChEcmJnKS4gVGhlDQo+ID4+PiBzcGVjaWZp Y2F0aW9ucyB1c2VkIGFyZSB0aGUgZm9sbG93aW5nOg0KPiA+Pj4NCj4gPj4+IC0gWzFdIE5JU1Qg U3BlY2lhbCBQdWJsaWNhdGlvbiA4MDAtOTBBIFJldmlzaW9uIDEsIEp1bmUgMjAxNSwNCj4gUmVj b21tZW5kYXRpb24NCj4gPj4+IAkgIGZvciBSYW5kb20gTnVtYmVyIEdlbmVyYXRpb24gVXNpbmcg RGV0ZXJtaW5pc3RpYyBSYW5kb20gQml0DQo+ID4+IEdlbmVyYXRvcnMuDQo+ID4+PiAJICAoaHR0 cHM6Ly9jc3JjLm5pc3QuZ292L3B1YmxpY2F0aW9ucy9kZXRhaWwvc3AvODAwLTkwYS9yZXYtMS9m aW5hbCkNCj4gPj4+IC0gWzJdIE5JU1QgU3BlY2lhbCBQdWJsaWNhdGlvbiA4MDAtOTBCLCBSZWNv bW1lbmRhdGlvbiBmb3IgdGhlIEVudHJvcHkNCj4gPj4+IAkgIFNvdXJjZXMgVXNlZCBmb3IgUmFu ZG9tIEJpdCBHZW5lcmF0aW9uLg0KPiA+Pj4gCSAgKGh0dHBzOi8vY3NyYy5uaXN0Lmdvdi9wdWJs aWNhdGlvbnMvZGV0YWlsL3NwLzgwMC05MGIvZmluYWwpDQo+ID4+PiAtIFszXSAoU2Vjb25kIERy YWZ0KSBOSVNUIFNwZWNpYWwgUHVibGljYXRpb24gODAwLTkwQywgUmVjb21tZW5kYXRpb24gZm9y DQo+ID4+PiAJICBSYW5kb20gQml0IEdlbmVyYXRvciAoUkJHKSBDb25zdHJ1Y3Rpb25zLg0KPiA+ Pj4gCSAgKGh0dHBzOi8vY3NyYy5uaXN0Lmdvdi9wdWJsaWNhdGlvbnMvZGV0YWlsL3NwLzgwMC05 MGMvZHJhZnQpDQo+ID4+PiAtIFs0XSBOSVNUIFNwZWNpYWwgUHVibGljYXRpb24gODAwLTU3IFBh cnQgMSBSZXZpc2lvbiA1LCBNYXkgMjAyMCwNCj4gPj4+IAkgIFJlY29tbWVuZGF0aW9uIGZvciBL ZXkgTWFuYWdlbWVudDpQYXJ0IDEgLSBHZW5lcmFsLg0KPiA+Pj4NCj4gPj4+IFRoZSB0ZXN0IHZl Y3RvcnMgYXZhaWxhYmxlIGluIHRoZSBDVFJfRFJCR19BRVMyNTYgc2VjdGlvbnMgb2YNCj4gPj4+ IGh0dHBzOi8vY3NyYy5uaXN0Lmdvdi9DU1JDL21lZGlhL1Byb2plY3RzL0NyeXB0b2dyYXBoaWMt U3RhbmRhcmRzLWFuZC0NCj4gPj4gR3VpZGVsaW5lcy9kb2N1bWVudHMvZXhhbXBsZXMvQ1RSX0RS Qkdfbm9ERi5wZGYNCj4gPj4+IHdlcmUgdXNlZCBmb3IgdmFsaWRhdGlvbi4NCj4gPj4+DQo+ID4+ PiBUaGlzIHBhdGNoLXNldCBjYW4gc2VlbiBhdDoNCj4gPj4+IGh0dHBzOi8vZ2l0aHViLmNvbS9Q aWVycmVBUk0vZWRrMi90cmVlL0FybV9EcmJnX3YxDQo+ID4+Pg0KPiA+Pj4gVGhpcyBwYXRjaCBo YXMgdGhlIGZvbGxvd2luZyBkZXBlbmRlbmN5Og0KPiA+Pj4gLSBbUEFUQ0ggdjMgMDAvMjJdIEFk ZCBSYXcgYWxnb3JpdGhtIHN1cHBvcnQgdXNpbmcgQXJtIEZXLVRSTkcNCj4gaW50ZXJmYWNlDQo+ ID4+PiAgICBodHRwczovL2VkazIuZ3JvdXBzLmlvL2cvZGV2ZWwvbWVzc2FnZS85MDg0NQ0KPiA+ Pj4gLSBbUEFUQ0ggdjEgMC83XSBBZGQgQWVzTGliIGFuZCBBcm1BZXNMaWINCj4gPj4+ICAgIGh0 dHBzOi8vZWRrMi5ncm91cHMuaW8vZy9kZXZlbC9tZXNzYWdlLzkwODc4DQo+ID4+Pg0KPiA+Pj4g UGllcnJlIEdvbmRvaXMgKDkpOg0KPiA+Pj4gICAgTWRlUGtnL0RyYmdMaWI6IERyYmcgbGlicmFy eSBpbnRlcmZhY2UgZGVmaW5pdGlvbg0KPiA+Pj4gICAgTWRlUGtnL0RyYmdMaWI6IEFkZCBOVUxM IGluc3RhbmNlIG9mIERyYmcgTGlicmFyeQ0KPiA+Pj4gICAgTWRlUGtnL0RyYmdMaWI6IEFkZCBC aXRTdHJlYW0gaW1wbGVtZW50YXRpb24NCj4gPj4+ICAgIE1kZVBrZy9EcmJnTGliOiBBZGQgR2V0 X2VudHJvcHlfaW5wdXQoKSBpbXBsZW1lbnRhdGlvbg0KPiA+Pj4gICAgTWRlUGtnL0RyYmdMaWI6 IEFkZCBjb21tb24gd3JhcHBlcnMNCj4gPj4+ICAgIE1kZVBrZy9EcmJnTGliOiBBZGQgQ3RyIERy YmcgbWVjaGFuaXNtIGZ1bmN0aW9ucw0KPiA+Pj4gICAgTWRlUGtnL0RyYmdMaWI6IEFkZCBEcmJn IG1lY2hhbmlzbSBmdW5jdGlvbnMgYW5kIG1vZHVsZQ0KPiA+Pj4gICAgQXJtVmlydFBrZzogS3Zt dG9vbDogQWRkIEFlc0xpYi9EcmJnTGliIGZvciBSbmdEeGUNCj4gPj4+ICAgIFNlY3VyaXR5UGtn L1JuZ0R4ZTogVXNlIERyYmdMaWIgaW4gUm5nRHhlIGZvciBBcm0NCj4gPj4+DQo+ID4+PiAgIEFy bVZpcnRQa2cvQXJtVmlydEt2bVRvb2wuZHNjICAgICAgICAgICAgICAgICB8ICAgIDIgKw0KPiA+ Pj4gICBNZGVQa2cvSW5jbHVkZS9MaWJyYXJ5L0RyYmdMaWIuaCAgICAgICAgICAgICAgfCAgMTcy ICsrKw0KPiA+Pj4gICBNZGVQa2cvTGlicmFyeS9EcmJnTGliL0JpdFN0cmVhbS5jICAgICAgICAg ICAgfCAxMTE0ICsrKysrKysrKysrKysrKysrDQo+ID4+PiAgIE1kZVBrZy9MaWJyYXJ5L0RyYmdM aWIvQml0U3RyZWFtLmggICAgICAgICAgICB8ICAzNjYgKysrKysrDQo+ID4+PiAgIE1kZVBrZy9M aWJyYXJ5L0RyYmdMaWIvQ29tbW9uLmMgICAgICAgICAgICAgICB8ICAyNDkgKysrKw0KPiA+Pj4g ICBNZGVQa2cvTGlicmFyeS9EcmJnTGliL0NvbW1vbi5oICAgICAgICAgICAgICAgfCAgIDc0ICsr DQo+ID4+PiAgIE1kZVBrZy9MaWJyYXJ5L0RyYmdMaWIvQ3RyRHJiZy5jICAgICAgICAgICAgICB8 ICA4OTkgKysrKysrKysrKysrKw0KPiA+Pj4gICBNZGVQa2cvTGlicmFyeS9EcmJnTGliL0N0ckRy YmcuaCAgICAgICAgICAgICAgfCAgMTAwICsrDQo+ID4+PiAgIE1kZVBrZy9MaWJyYXJ5L0RyYmdM aWIvRHJiZ0xpYi5jICAgICAgICAgICAgICB8ICA2MjggKysrKysrKysrKw0KPiA+Pj4gICBNZGVQ a2cvTGlicmFyeS9EcmJnTGliL0RyYmdMaWIuaW5mICAgICAgICAgICAgfCAgIDM5ICsNCj4gPj4+ ICAgTWRlUGtnL0xpYnJhcnkvRHJiZ0xpYi9EcmJnTGliSW50ZXJuYWwuaCAgICAgIHwgIDMxMCAr KysrKw0KPiA+Pj4gICBNZGVQa2cvTGlicmFyeS9EcmJnTGliL0dldEVudHJvcHlJbnB1dC5jICAg ICAgfCAgIDcyICsrDQo+ID4+PiAgIE1kZVBrZy9MaWJyYXJ5L0RyYmdMaWIvR2V0RW50cm9weUlu cHV0LmggICAgICB8ICAgNDggKw0KPiA+Pj4gICBNZGVQa2cvTGlicmFyeS9EcmJnTGliTnVsbC9E cmJnTGliLmMgICAgICAgICAgfCAgMTY1ICsrKw0KPiA+Pj4gICBNZGVQa2cvTGlicmFyeS9EcmJn TGliTnVsbC9EcmJnTGliTnVsbC5pbmYgICAgfCAgIDIxICsNCj4gPj4+ICAgTWRlUGtnL01kZVBr Zy5kZWMgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNCArDQo+ID4+PiAgIE1kZVBr Zy9NZGVQa2cuZHNjICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDIgKw0KPiA+Pj4g ICAuLi4vUmFuZG9tTnVtYmVyR2VuZXJhdG9yL1JuZ0R4ZS9Bcm1SbmdEeGUuYyAgfCAgIDc1ICst DQo+ID4+PiAgIC4uLi9SYW5kb21OdW1iZXJHZW5lcmF0b3IvUm5nRHhlL1JuZ0R4ZS5pbmYgICB8 ICAgIDEgKw0KPiA+Pj4gICBTZWN1cml0eVBrZy9TZWN1cml0eVBrZy5kc2MgICAgICAgICAgICAg ICAgICAgfCAgICAyICsNCj4gPj4+ICAgMjAgZmlsZXMgY2hhbmdlZCwgNDM0MiBpbnNlcnRpb25z KCspLCAxIGRlbGV0aW9uKC0pDQo+ID4+PiAgIGNyZWF0ZSBtb2RlIDEwMDY0NCBNZGVQa2cvSW5j bHVkZS9MaWJyYXJ5L0RyYmdMaWIuaA0KPiA+Pj4gICBjcmVhdGUgbW9kZSAxMDA2NDQgTWRlUGtn L0xpYnJhcnkvRHJiZ0xpYi9CaXRTdHJlYW0uYw0KPiA+Pj4gICBjcmVhdGUgbW9kZSAxMDA2NDQg TWRlUGtnL0xpYnJhcnkvRHJiZ0xpYi9CaXRTdHJlYW0uaA0KPiA+Pj4gICBjcmVhdGUgbW9kZSAx MDA2NDQgTWRlUGtnL0xpYnJhcnkvRHJiZ0xpYi9Db21tb24uYw0KPiA+Pj4gICBjcmVhdGUgbW9k ZSAxMDA2NDQgTWRlUGtnL0xpYnJhcnkvRHJiZ0xpYi9Db21tb24uaA0KPiA+Pj4gICBjcmVhdGUg bW9kZSAxMDA2NDQgTWRlUGtnL0xpYnJhcnkvRHJiZ0xpYi9DdHJEcmJnLmMNCj4gPj4+ICAgY3Jl YXRlIG1vZGUgMTAwNjQ0IE1kZVBrZy9MaWJyYXJ5L0RyYmdMaWIvQ3RyRHJiZy5oDQo+ID4+PiAg IGNyZWF0ZSBtb2RlIDEwMDY0NCBNZGVQa2cvTGlicmFyeS9EcmJnTGliL0RyYmdMaWIuYw0KPiA+ Pj4gICBjcmVhdGUgbW9kZSAxMDA2NDQgTWRlUGtnL0xpYnJhcnkvRHJiZ0xpYi9EcmJnTGliLmlu Zg0KPiA+Pj4gICBjcmVhdGUgbW9kZSAxMDA2NDQgTWRlUGtnL0xpYnJhcnkvRHJiZ0xpYi9EcmJn TGliSW50ZXJuYWwuaA0KPiA+Pj4gICBjcmVhdGUgbW9kZSAxMDA2NDQgTWRlUGtnL0xpYnJhcnkv RHJiZ0xpYi9HZXRFbnRyb3B5SW5wdXQuYw0KPiA+Pj4gICBjcmVhdGUgbW9kZSAxMDA2NDQgTWRl UGtnL0xpYnJhcnkvRHJiZ0xpYi9HZXRFbnRyb3B5SW5wdXQuaA0KPiA+Pj4gICBjcmVhdGUgbW9k ZSAxMDA2NDQgTWRlUGtnL0xpYnJhcnkvRHJiZ0xpYk51bGwvRHJiZ0xpYi5jDQo+ID4+PiAgIGNy ZWF0ZSBtb2RlIDEwMDY0NCBNZGVQa2cvTGlicmFyeS9EcmJnTGliTnVsbC9EcmJnTGliTnVsbC5p bmYNCj4gPj4+DQo+ID4+PiAtLQ0KPiA+Pj4gMi4yNS4xDQo+ID4+Pg0KPiA+Pj4NCj4gPj4+DQo+ ID4+PiAtPS09LT0tPS09LT0NCj4gPj4+IEdyb3Vwcy5pbyBMaW5rczogWW91IHJlY2VpdmUgYWxs IG1lc3NhZ2VzIHNlbnQgdG8gdGhpcyBncm91cC4NCj4gPj4+IFZpZXcvUmVwbHkgT25saW5lICgj OTA4OTgpOg0KPiBodHRwczovL2VkazIuZ3JvdXBzLmlvL2cvZGV2ZWwvbWVzc2FnZS85MDg5OA0K PiA+Pj4gTXV0ZSBUaGlzIFRvcGljOiBodHRwczovL2dyb3Vwcy5pby9tdC85MjA3MjI4My8xNjQz NDk2DQo+ID4+PiBHcm91cCBPd25lcjogZGV2ZWwrb3duZXJAZWRrMi5ncm91cHMuaW8NCj4gPj4+ IFVuc3Vic2NyaWJlOiBodHRwczovL2VkazIuZ3JvdXBzLmlvL2cvZGV2ZWwvdW5zdWINCj4gPj4g W21pY2hhZWwuZC5raW5uZXlAaW50ZWwuY29tXQ0KPiA+Pj4gLT0tPS09LT0tPS09DQo+ID4+Pg0K PiA+DQo=