From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by mx.groups.io with SMTP id smtpd.web10.43000.1684301197884458849 for ; Tue, 16 May 2023 22:26:37 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=n6xuU85W; spf=pass (domain: intel.com, ip: 192.55.52.88, mailfrom: andrei.warkentin@intel.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1684301197; x=1715837197; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=DQBQCFldnrljgPxjXQ5hPExAv8iA4XmlbRmvpJGdF4g=; b=n6xuU85WXQiuYBo5oQVYVEXKJ7m9nMVnzN9+yZV/TCKoRptnEliKIXAZ A8wVjRkM7sBEBXZ1qOja8gv3bFbmAj3oXt6dNfUClfUT5T2WTEZ06244v TTjgAEf6WwoUyaLVs+oDhUcR07RInmsfLBAh+1yS5KbQ/1B70eWrXk3WZ kGxii+/WClhJ55z0IFtEUOtocke3dyfL+FUgrjoxcl0vVRf87bhQc+4dG XobLj19ITnAFD5DvVh4rXfMa1QyDb1RD01eUli7nD9/bDhh2vz/PGeVVe MXAqVDSr30llL4HekUoINqy9HAYG3GMFPEok9KWAMFM/gWRfkONjeP8mx g==; X-IronPort-AV: E=McAfee;i="6600,9927,10712"; a="379856557" X-IronPort-AV: E=Sophos;i="5.99,281,1677571200"; d="scan'208";a="379856557" Received: from orsmga005.jf.intel.com ([10.7.209.41]) by fmsmga101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 16 May 2023 22:26:37 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10712"; a="875907266" X-IronPort-AV: E=Sophos;i="5.99,281,1677571200"; d="scan'208";a="875907266" Received: from orsmsx603.amr.corp.intel.com ([10.22.229.16]) by orsmga005.jf.intel.com with ESMTP; 16 May 2023 22:26:37 -0700 Received: from orsmsx610.amr.corp.intel.com (10.22.229.23) by ORSMSX603.amr.corp.intel.com (10.22.229.16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Tue, 16 May 2023 22:26:37 -0700 Received: from ORSEDG601.ED.cps.intel.com (10.7.248.6) by orsmsx610.amr.corp.intel.com (10.22.229.23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23 via Frontend Transport; Tue, 16 May 2023 22:26:37 -0700 Received: from NAM10-BN7-obe.outbound.protection.outlook.com (104.47.70.104) 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.2507.23; Tue, 16 May 2023 22:26:36 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=fQI2xH1dnzVX7LXsxU8K75tlsEMVJnLux9P8d/292HPqpSWne5GPMpIl6mllNMrzQwKJdv5GpelWPLmeBTbPIjqEJKuGMshM4u3aDWIgS7pJRlr1XE2jD1eVl2e44M3ovNHn+qpS8MCf3crhwQPc2bIoeHRpu8DhullWRf01Pc3bUTtecCzLxtywToGy1s0mwYUJOZunLXuwY9qsSSHvuLRDvq19J25H2qS1L7G5dyw43nEwUxJXNIWVLSnSTZvAO1Fql96QcDUNsPoYQBreZaTnb2Q5ZIwA27LE+n9Mr1hVar+jlPXbOKTg/+CaxOLyep5E4QJOL1ZfrEMMTU3LtQ== 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=DQBQCFldnrljgPxjXQ5hPExAv8iA4XmlbRmvpJGdF4g=; b=XnrSQesBs/QK625521Lf2E1j5zhNStfpBk3C8IXSK3QNL1Iunjo+0L7vutxj/IGfXeltDd2Rqk5uuM3/GuMDSSXfr4c6boD834ntnFzQLwPa7HhIsfhX+IxQDoUnEhANklcD2GUgxU/b9naIM1G2teMuQH5vQI3D+OrUsKNhLrNrQDGCCXInbsZYx2TZriE0a9o87wj7USK6+TXkoqicCWh/VpAwBZMc5X8l0MSwQrvoSda8MUZwMjt/vL3bC5RwJqFRwA64bxBvDKO03O5yJWZgs0xc4jlfTJdjBsBNnoTc7uMXX32SLkX0QeOeH57xsMJcJ6LEhP9HSbqofbInCA== 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 PH8PR11MB6856.namprd11.prod.outlook.com (2603:10b6:510:22b::7) by PH0PR11MB4936.namprd11.prod.outlook.com (2603:10b6:510:42::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6387.33; Wed, 17 May 2023 05:26:34 +0000 Received: from PH8PR11MB6856.namprd11.prod.outlook.com ([fe80::f794:46bc:90a:c3a3]) by PH8PR11MB6856.namprd11.prod.outlook.com ([fe80::f794:46bc:90a:c3a3%3]) with mapi id 15.20.6387.030; Wed, 17 May 2023 05:26:33 +0000 From: "Andrei Warkentin" To: "Kinney, Michael D" , "devel@edk2.groups.io" , "Gao, Liming" CC: Sunil V L Subject: Re: [edk2-devel] [PATCH v7 0/3] RISC-V SBI-backed SerialLib Thread-Topic: [edk2-devel] [PATCH v7 0/3] RISC-V SBI-backed SerialLib Thread-Index: AQHZaZolC/HNRoSSQkCAcfzkOJXitK8gZ+UAgBwcR8CAGTWv8IAIathQgAACyoCAAAUygA== Date: Wed, 17 May 2023 05:26:33 +0000 Message-ID: References: <20230407214425.4360-1-andrei.warkentin@intel.com> <1759444C5DA596CB.10313@groups.io> <175E309BD5A0B986.27409@groups.io> In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: PH8PR11MB6856:EE_|PH0PR11MB4936:EE_ x-ms-office365-filtering-correlation-id: b59d9a82-6df1-41a7-5207-08db56974735 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: twYJ0KjRlGRJq5X6D0UTLya7zfRVn/PbXNsbhcKBOqzeUUWMw8qDp6nozsipEwjct+MHxGCCBijXFdutVgmYFWbSETj3U3oGuxNAGPcmG/77x/OYS9vfeHOtsle0Y0AqU5b6oBfp5gUMIGzppDKaOnQC4UfrYqbWtHUj1YGLLZ0Yl9elYUTzDTeisev3eZDabbgKcmYs5CwmsNIyDiZdaG0lKEBFArFi8zjk6dUReo83jjBgZp7xVGnhhWB/G3ENlxOQvyGuwB8PGIy1+YrkgPIkoQnI+sVn4lvu4JF8CIhTVmHRv1M6V7lsrKly2NxGnL3corics+06Tm91cxwWeEyDg96UOqDsXyD61X9avxvWKBEKv0x7TmBJMM1W0kIxQSO3Hr+utCPRA+snu6cvGdXk/bSN47Vr5ozY1L/5bN2k8QZDnPZYAl4ESYOwCPjPEWWAdLWeooixXMoji5tXKLRxWUsdwGBC4olEacPhkaQmW04mc5ow49HmR8oavGTrlMsod/Hmp/FrLDAo4snuEePoy+Ua38KBCB3Au4/fULHVwJ3sEXnHJHX2ABTJ7Rb7KoOPxWPjvzfTXVCPZunyrwHXITqlTyhrgS5d26tXYmF6UGLLkNqvG5dJ07qytNNLrrZc7dryGAIPFmTRjq4jFw== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PH8PR11MB6856.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39860400002)(366004)(346002)(136003)(376002)(396003)(451199021)(2906002)(71200400001)(38100700002)(55016003)(122000001)(53546011)(9686003)(186003)(26005)(86362001)(8936002)(6506007)(8676002)(33656002)(41300700001)(83380400001)(52536014)(82960400001)(66946007)(966005)(478600001)(7696005)(38070700005)(76116006)(4326008)(316002)(66446008)(66476007)(66556008)(5660300002)(110136005)(64756008)(66899021);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?SnBUbkp5OUlYdjlLQ1VSRkgrTmJjdjV4RU11UzJLalRDaXpsV2w3c1RyTTJp?= =?utf-8?B?emZ1dUNNQ0RydWhBTEYxVUw2YjZKZlFuMk5aUk1JSEdLZHh4L0JiSDRodTVU?= =?utf-8?B?aERjR2xsUGRMU0IycEtHUUZVRHVFeSs3MUprUEdjU0tLTllKR0pSc3plMkZK?= =?utf-8?B?TmRmUTNiRVh5a0dWTTQ3Q3l1WENkQXlVZ1owQTdleEtXcU9UdjdQc3l3WjJi?= =?utf-8?B?SXc5MWo3RHg1bnB4SWtqUCtCR1g0THdZd1JlZ0JMYTJLdHl2Y0tvSFNXanBn?= =?utf-8?B?Tlk2VjhQUmtNTDZFT3J4UTBUSWpJaUxvS3V1RGlCdlJsQjczVGZMcHlXWmU5?= =?utf-8?B?dE03QlFiMDhtZnVKamQ2V2c2dk5xMnhGcGF3UjBNclBxK3BHNmpnUHZSdWJV?= =?utf-8?B?YzBaOGNVUGY1dy9NVG14MGVVNkNPaFhnaHg5NkFmcjVjdVpTZEhKUy90elRC?= =?utf-8?B?STlNMVJlTFZmWjhkRWo2Tk5paU1Oc0JWckdHS2xUZVY1ZkNJZW1XMzVXVXBR?= =?utf-8?B?S2poNjVIN01iUDZ3NFRDQ3o5SFNWMU51WTJzVU1DWitXYjhJNEpBYUJLMEt0?= =?utf-8?B?T3JsaGJQYnVEK3JaTllKSTkyeXVmcldlWjVvMlduR1ZqV0xHZkhtTkQ4MWh2?= =?utf-8?B?Z1RoLy9jdDdFdUlQNGxxVjNoaEVobXpGMC9KSk00U1Z3RDQvWVFTZWZlQzFr?= =?utf-8?B?Vit5QS81YnYxdmNnWFdLdVRjb1RSdVlXUVhBVWZwaTdNbUNhRnU4WlN1T29E?= =?utf-8?B?dmJwMHBDSlpQM1BhWEM2d2V5Wm14VklBcDJtQWE0ZVNmaE0rc002UHphTUlr?= =?utf-8?B?bEd3RWIvSlhSVURUODByYXI4ZGRST051bmVsREZIcDdORXV6N3lXa3VpRnRZ?= =?utf-8?B?dEx1dVVlVE11T2hWdVFjMjIveFdIK053L3JUdE4rcGg0YjJQVHQ1YTJLeG1t?= =?utf-8?B?YzhRbnB2c3puU0U2RnZzOEp5WlpCdHc0RmpzK2lZL2k1VXN3clg1YW10NzFU?= =?utf-8?B?ZG8xZm5sUXExb1hmZisvR01iQys4MzJMeTAwZnBPVEVleVpOLzQxZkFBNXZN?= =?utf-8?B?NlNRRG1QMzVtVjNtYXA3WkNaald0S0J1UWtKRzR1a3JDV0NpdnN3NjFLSWZx?= =?utf-8?B?K0lTWTYxcjArUFVjT3FhSHVtRXpYdzk4cnk3VjdzRnlvYTk5VFN1bnIwbk9w?= =?utf-8?B?UE4ySXFGcW5qbWZzSkRTUkpUOFJVb0dxaFBtVGJyVXR4MFhCY0dBYTh5Q1VY?= =?utf-8?B?TVBvRG1FODZqTnFuaStEZ3Ribk15U0svc055U3ZKZzFzZndReVp1RzN5aU84?= =?utf-8?B?TWJIUzJJT3M0b3N6MXYwWFd6S3ZkeUFOVkVmbExHTmhvbXptNVA1OHBhM0hJ?= =?utf-8?B?QnY0L0ViZG05MFVxa3ZNaDc1a2NZS01TQUdIRHJFZHVXS3laUDBKVWlEaDla?= =?utf-8?B?bEZVK1VreEp4K3p5NEdicnk4T3FmaWZuZjdRbFhMWHVnN3NadERmOXhMVUVa?= =?utf-8?B?eGJMVjVPcHFVT0h5Y1Y1Nm9pOGoyT2loM1RQRDMzSno5YnJqQnhuNDgreVJr?= =?utf-8?B?UUhFcUgzNlVrdzVxaHU3VW1jQ1BkNmN0a2ZEajBLc1BUZ3JYRUlQajg5bEl6?= =?utf-8?B?b3Q0OFlqUHNDNjQ2TElEZHF4YTFvZXZWZDk4RElwQ1NyWVlnVWsyczhIcm1s?= =?utf-8?B?aXVYcjNDSGVGbEdwV1JyM3VtZjVUMmYybFIvbTN1ejMvd2lEQlMwK2dIbFEr?= =?utf-8?B?cjVRVStZVnZEamY1eldvMCtaZ1NGb1l0MXA3WDF6UkFQclY1ckd6c00yclcv?= =?utf-8?B?S1FxaENVMWl0K2l0VVlIOS9CYjRlZkFscXZyckFuT2cvTFZCRW42RUFsbUto?= =?utf-8?B?WGFmMmF3azJ6NG9qWkQxcGcyalhHTHJ2bnFjdzc5STZTNWZrQ1E1c0xWRWo1?= =?utf-8?B?RSt6bFBTSzJnK0pWM0ZvM3hWNXlRcE1nOHVzaHNIeGVVNFRaVWFWbHpJYmQ2?= =?utf-8?B?YXA0QTI3VEQ3Ym9ITHFZTnNJUWpnQmhmUEdkNHFXb0tJbEJBbE1VRmlHRVg5?= =?utf-8?B?Y2dLNEFKSHBsMnE2dWN6bGNqTEZTY1ZIbVVCZFRMMU4vT29JTW1yVFpEQnB1?= =?utf-8?B?V3oreEJsZ2daZ3ZpM1o0TnJZMXJRck1aMEovcXAwYlpzK3JpUVd0M1gvdW0r?= =?utf-8?B?VWc9PQ==?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: PH8PR11MB6856.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: b59d9a82-6df1-41a7-5207-08db56974735 X-MS-Exchange-CrossTenant-originalarrivaltime: 17 May 2023 05:26:33.7708 (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: SQpIjFdx3wyU8ZbvWZCm4tMQUa3aADFByC005UvQlRbSnsBkZ9P/ZJHCyV9Obx1IkisISBAfTcx020VSjQ8CS3bMb7B+cJTW6W4koqT9GjE= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR11MB4936 Return-Path: andrei.warkentin@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 U2F2ZSBmb3IgdGhlIGxhc3Qgb25lIGZyb20geW91IC0geWVzIChhcyB0aGF0IHJldmlld2VkLWJ5 IGNhbWUgYWZ0ZXIgSSByZXNlbnQgdGhlIHBhdGNoIHNldCwgYWZ0ZXIgdGhlIHN1Y2Nlc3NmdWwg Q0kgcnVuKQ0KDQpBDQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogS2lu bmV5LCBNaWNoYWVsIEQgPG1pY2hhZWwuZC5raW5uZXlAaW50ZWwuY29tPg0KPiBTZW50OiBXZWRu ZXNkYXksIE1heSAxNywgMjAyMyAxMjowNyBBTQ0KPiBUbzogV2Fya2VudGluLCBBbmRyZWkgPGFu ZHJlaS53YXJrZW50aW5AaW50ZWwuY29tPjsNCj4gZGV2ZWxAZWRrMi5ncm91cHMuaW87IEdhbywg TGltaW5nIDxnYW9saW1pbmdAYnlvc29mdC5jb20uY24+DQo+IENjOiBTdW5pbCBWIEwgPHN1bmls dmxAdmVudGFuYW1pY3JvLmNvbT47IEtpbm5leSwgTWljaGFlbCBEDQo+IDxtaWNoYWVsLmQua2lu bmV5QGludGVsLmNvbT4NCj4gU3ViamVjdDogUkU6IFtlZGsyLWRldmVsXSBbUEFUQ0ggdjcgMC8z XSBSSVNDLVYgU0JJLWJhY2tlZCBTZXJpYWxMaWINCj4gDQo+IEFyZSB0aGUgY29tbWl0IG1lc3Nh Z2VzIGFsbCB1cCB0byBkYXRlIGluIHRoZSBQUiB3aXRoIGFsbCBSYnM/ICBBbmQgaXMgdGhlDQo+ IGNvcnJlY3QgUFINCj4gDQo+IAlodHRwczovL2dpdGh1Yi5jb20vdGlhbm9jb3JlL2VkazIvcHVs bC80MjUyDQo+IA0KPiBMaW1pbmcsIHRoaXMgd2FzIGNvbXBsZXRlZCB3ZWxsIGJlZm9yZSBzb2Z0 IGZyZWV6ZSBhbmQgbG9va3MgbGlrZSBsb3cgcmlzay4gIEl0DQo+IHNob3VsZCBiZSBtZXJnZWQg Zm9yIHN0YWJsZSB0YWcuDQo+IA0KPiBNaWtlDQo+IA0KPiA+IC0tLS0tT3JpZ2luYWwgTWVzc2Fn ZS0tLS0tDQo+ID4gRnJvbTogV2Fya2VudGluLCBBbmRyZWkgPGFuZHJlaS53YXJrZW50aW5AaW50 ZWwuY29tPg0KPiA+IFNlbnQ6IFR1ZXNkYXksIE1heSAxNiwgMjAyMyA5OjU4IFBNDQo+ID4gVG86 IGRldmVsQGVkazIuZ3JvdXBzLmlvOyBXYXJrZW50aW4sIEFuZHJlaQ0KPiA+IDxhbmRyZWkud2Fy a2VudGluQGludGVsLmNvbT47IEtpbm5leSwgTWljaGFlbCBEDQo+ID4gPG1pY2hhZWwuZC5raW5u ZXlAaW50ZWwuY29tPg0KPiA+IENjOiBTdW5pbCBWIEwgPHN1bmlsdmxAdmVudGFuYW1pY3JvLmNv bT4NCj4gPiBTdWJqZWN0OiBSRTogW2VkazItZGV2ZWxdIFtQQVRDSCB2NyAwLzNdIFJJU0MtViBT QkktYmFja2VkIFNlcmlhbExpYg0KPiA+DQo+ID4gSGkgZm9sa3MsDQo+ID4NCj4gPiBJcyB0aGVy ZSBhIHBhcnRpY3VsYXIgcHJvY2VzcyB0aGF0IEknbSBub3QgZm9sbG93aW5nIHRvIGdldCBhIHBh dGNoDQo+ID4gc2V0IG1lcmdlZCBhZnRlciBhbGwgdGhlIHJldmlld3MgYW5kIHNpZ24tb2ZmcyBo YXZlIGJlZW4gY29tcGxldGVkPw0KPiA+DQo+ID4gVGhlIFNCSSBTZXJpYWxMaWIgcGF0Y2hlcyB3 ZXJlIGxhc3QgdXBkYXRlZCBBcHJpbCA3dGguDQo+ID4NCj4gPiBBDQo+ID4NCj4gPiA+IC0tLS0t T3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4gPiBGcm9tOiBkZXZlbEBlZGsyLmdyb3Vwcy5pbyA8 ZGV2ZWxAZWRrMi5ncm91cHMuaW8+IE9uIEJlaGFsZiBPZg0KPiA+ID4gQW5kcmVpIFdhcmtlbnRp bg0KPiA+ID4gU2VudDogVGh1cnNkYXksIE1heSAxMSwgMjAyMyAzOjI2IFBNDQo+ID4gPiBUbzog ZGV2ZWxAZWRrMi5ncm91cHMuaW87IFdhcmtlbnRpbiwgQW5kcmVpDQo+ID4gPiA8YW5kcmVpLndh cmtlbnRpbkBpbnRlbC5jb20+OyBLaW5uZXksIE1pY2hhZWwgRA0KPiA+ID4gPG1pY2hhZWwuZC5r aW5uZXlAaW50ZWwuY29tPg0KPiA+ID4gQ2M6IFN1bmlsIFYgTCA8c3VuaWx2bEB2ZW50YW5hbWlj cm8uY29tPg0KPiA+ID4gU3ViamVjdDogUmU6IFtlZGsyLWRldmVsXSBbUEFUQ0ggdjcgMC8zXSBS SVNDLVYgU0JJLWJhY2tlZCBTZXJpYWxMaWINCj4gPiA+DQo+ID4gPiBIaSBNaWNoYWVsLA0KPiA+ ID4NCj4gPiA+IFdoZW4gY2FuIHlvdSBvciBvbmUgb2YgdGhlIE1kZVBrZyBtYWludGFpbmVycyBt ZXJnZSB0aGUgU0JJDQo+ID4gPiBTZXJpYWxMaWIgcGF0Y2ggc2V0Pw0KPiA+ID4NCj4gPiA+IEEN Cj4gPiA+DQo+ID4gPiA+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4gPiA+IEZyb206 IGRldmVsQGVkazIuZ3JvdXBzLmlvIDxkZXZlbEBlZGsyLmdyb3Vwcy5pbz4gT24gQmVoYWxmIE9m DQo+ID4gPiA+IEFuZHJlaSBXYXJrZW50aW4NCj4gPiA+ID4gU2VudDogVHVlc2RheSwgQXByaWwg MjUsIDIwMjMgMjoyNyBQTQ0KPiA+ID4gPiBUbzogS2lubmV5LCBNaWNoYWVsIEQgPG1pY2hhZWwu ZC5raW5uZXlAaW50ZWwuY29tPjsNCj4gPiA+ID4gZGV2ZWxAZWRrMi5ncm91cHMuaW8NCj4gPiA+ ID4gQ2M6IFN1bmlsIFYgTCA8c3VuaWx2bEB2ZW50YW5hbWljcm8uY29tPg0KPiA+ID4gPiBTdWJq ZWN0OiBSZTogW2VkazItZGV2ZWxdIFtQQVRDSCB2NyAwLzNdIFJJU0MtViBTQkktYmFja2VkDQo+ ID4gPiA+IFNlcmlhbExpYg0KPiA+ID4gPg0KPiA+ID4gPiBUaGFua3MgZm9yIHRoZSByZXZpZXcu IEkgYmVsaWV2ZSB0aGlzIHBhdGNoIHNldCBpcyByZWFkeSBmb3IgbWVyZ2luZy4NCj4gPiA+ID4g U3VuaWwgaGFkIG9uZSBjb21tZW50IG9uIHRoZSBjb250ZW50cyBvZiB0aGUgVU5JIGZpbGUsIHdo aWNoIEkNCj4gPiA+ID4gY2xhcmlmaWVkLiBTdW5pbCwgYW55dGhpbmcgZWxzZSB5b3Ugd2FudGVk IGZyb20gdGhpcyBwYXRjaCBzZXQgb3INCj4gPiA+ID4gaXMgaXQgZ29vZA0KPiA+ID4gdG8gZ28/ DQo+ID4gPiA+DQo+ID4gPiA+IEENCj4gPiA+ID4NCj4gPiA+ID4gPiAtLS0tLU9yaWdpbmFsIE1l c3NhZ2UtLS0tLQ0KPiA+ID4gPiA+IEZyb206IEtpbm5leSwgTWljaGFlbCBEIDxtaWNoYWVsLmQu a2lubmV5QGludGVsLmNvbT4NCj4gPiA+ID4gPiBTZW50OiBGcmlkYXksIEFwcmlsIDcsIDIwMjMg NTowOSBQTQ0KPiA+ID4gPiA+IFRvOiBkZXZlbEBlZGsyLmdyb3Vwcy5pbzsgV2Fya2VudGluLCBB bmRyZWkNCj4gPiA+ID4gPiA8YW5kcmVpLndhcmtlbnRpbkBpbnRlbC5jb20+DQo+ID4gPiA+ID4g Q2M6IEtpbm5leSwgTWljaGFlbCBEIDxtaWNoYWVsLmQua2lubmV5QGludGVsLmNvbT4NCj4gPiA+ ID4gPiBTdWJqZWN0OiBSRTogW2VkazItZGV2ZWxdIFtQQVRDSCB2NyAwLzNdIFJJU0MtViBTQkkt YmFja2VkDQo+ID4gPiA+ID4gU2VyaWFsTGliDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiBSZXZpZXdl ZC1ieTogTWljaGFlbCBEIEtpbm5leSA8bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20+DQo+ID4g PiA+ID4NCj4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0N Cj4gPiA+ID4gPiA+IEZyb206IGRldmVsQGVkazIuZ3JvdXBzLmlvIDxkZXZlbEBlZGsyLmdyb3Vw cy5pbz4gT24gQmVoYWxmIE9mDQo+ID4gPiA+ID4gPiBBbmRyZWkgV2Fya2VudGluDQo+ID4gPiA+ ID4gPiBTZW50OiBGcmlkYXksIEFwcmlsIDcsIDIwMjMgMjo0NCBQTQ0KPiA+ID4gPiA+ID4gVG86 IGRldmVsQGVkazIuZ3JvdXBzLmlvDQo+ID4gPiA+ID4gPiBDYzogV2Fya2VudGluLCBBbmRyZWkg PGFuZHJlaS53YXJrZW50aW5AaW50ZWwuY29tPg0KPiA+ID4gPiA+ID4gU3ViamVjdDogW2VkazIt ZGV2ZWxdIFtQQVRDSCB2NyAwLzNdIFJJU0MtViBTQkktYmFja2VkDQo+ID4gPiA+ID4gPiBTZXJp YWxMaWINCj4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiBIZWxsbywNCj4gPiA+ID4gPiA+DQo+ID4g PiA+ID4gPiBIZXJlIGFyZSB0aHJlZSBwYXRjaGVzIHRoYXQgcHJvdmlkZSBhIFNlcmlhbExpYiBi YWNrZWQgYnkgU0JJDQo+IGNvbnNvbGUuDQo+ID4gPiA+ID4gPiBCb3RoIGxlZ2FjeSBhbmQgREJD TiBtZWNoYW5pc21zIGFyZSBzdXBwb3J0ZWQgaW4gdmFyaW91cw0KPiA+ID4gPiA+ID4gZXhlY3V0 aW9uIGVudmlyb25tZW50cyBhbmQgaGF2ZSBiZWVuIHRlc3RlZCB3aXRoIFVBUlQgYW5kIEhUSUYN Cj4gY29uc29sZXMuDQo+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gTWRlUGtnIHJldmlld2Vyczog cGxlYXNlIHJldmlldyBNZGVQa2cuZHNjIGNoYW5nZXMuDQo+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ ID4gVGhpcyBpcyBhbHNvIGF2YWlsYWJsZSBhdA0KPiA+ID4gPiA+ID4gaHR0cHM6Ly9naXRodWIu Y29tL2FuZHJlaXcvZWRrMi1ydi13aXAvdHJlZS9wYXRjaHNldC0yDQo+ID4gPiA+ID4gPg0KPiA+ ID4gPiA+ID4gQSBDSSBydW4gaXMgYXQgaHR0cHM6Ly9naXRodWIuY29tL3RpYW5vY29yZS9lZGsy L3B1bGwvNDI1Mg0KPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+IENvbXBhcmVkIHRvIHY2Og0KPiA+ ID4gPiA+ID4NCj4gPiA+ID4gPiA+IC0gVW5pZnkgdGhlIHR3byBTZXJpYWxMaWIgaW1wbGVtZW50 YXRpb25zIHVuZGVyIG9uZSBkaXJlY3RvcnkgYW5kDQo+ID4gPiA+ID4gPiAgIGZhY3RvciBvdXQg dGhlIGNvZGUgc29tZXdoYXQuDQo+ID4gPiA+ID4gPiAtIFN1bmlsJ3MgZmVlZGJhY2sgb24gY29y cmVjdG5lc3MuDQo+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gQ29tcGFyZWQgdG8gdjU6DQo+ID4g PiA+ID4gPg0KPiA+ID4gPiA+ID4gUmVuYW1lIGNvbXBvbmVudHMgYXMgcGVyIE1pY2hhZWwgS2lu bmV5J3Mgc3VnZ2VzdGlvbnMuDQo+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gQ29tcGFyZWQgdG8g djQ6DQo+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gKG5vdCBzZW50IG91dCkuIENDIE1kZVBrZyBt YWludGFpbmVycywgZml4IGNvcHlyaWdodCBkYXRlIGluDQo+IFNlY01haW4uYy4NCj4gPiA+ID4g PiA+DQo+ID4gPiA+ID4gPiBDb21wYXJlZCB0byB2Mw0KPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+ IEVjY0NoZWNrIGZpeGVzLiBBZGQgTWRlUGtnIGluZnMgdG8gRFNDLg0KPiA+ID4gPiA+ID4NCj4g PiA+ID4gPiA+IENvbXBhcmVkIHRvIHYyOg0KPiA+ID4gPiA+ID4gLSBQcm9iZXMgbGVnYWN5IGV4 dGVuc2lvbiBhcyB3ZWxsLg0KPiA+ID4gPiA+ID4gLSBFbmNvZGUgc3VwcG9ydGVkIG1vZHVsZSB0 eXBlcyBpbiB0aGUgSU5GIGZpbGUuIFRoaXMgaXMgZG9uZQ0KPiA+ID4gPiA+ID4gdXNpbmcNCj4g PiA+ID4gPiBMSUJSQVJZX0NMQVNTLA0KPiA+ID4gPiA+ID4gICBhcyBNT0RVTEVfVFlQRSBjYW5u b3QgZW5jb2RlIG11bHRpcGxlIHR5cGVzLCBzbw0KPiBNT0RVTEVfVFlQRQ0KPiA+ID4gPiA+ID4g aXMNCj4gPiA+ID4gPiByZXRhaW5lZCBhcyBCQVNFLg0KPiA+ID4gPiA+ID4gLSBVcGRhdGUgSU5G IHZlcnNpb24gYW5kIGdlbmVyYXRlIGJyYW5kIG5ldyBHVUlEcyBpbnN0ZWFkIG9mDQo+ID4gPiA+ ID4gPiBlZGl0aW5nDQo+ID4gPiA+ID4gdGhlbS4NCj4gPiA+ID4gPiA+IC0gQ2hlY2tlZCB0aGF0 IGFsbCBwYXRjaGVzIHJldGFpbiBeTSBlbmRpbmdzLg0KPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+ IEFuZHJlaSBXYXJrZW50aW4gKDMpOg0KPiA+ID4gPiA+ID4gICBNZGVQa2c6IEJhc2VSaXNjVlNi aUxpYjogbWFrZSBtb3JlIHVzZWZ1bCB0byBjb25zdW1lcnMNCj4gPiA+ID4gPiA+ICAgTWRlUGtn OiBhZGQgU0JJLWJhc2VkIFNlcmlhbFBvcnRMaWIgZm9yIFJJU0MtVg0KPiA+ID4gPiA+ID4gICBP dm1mUGtnOiBSaXNjVlZpcnQ6IEFkZCBtaXNzaW5nIFNlcmlhbFBvcnRJbml0aWFsaXplIHRvIFNl Yw0KPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+ICBNZGVQa2cvTWRlUGtnLmRzYyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAy ICsNCj4gPiA+ID4gPiA+DQo+ID4gPiA+ID4NCj4gPiA+ID4gTWRlUGtnL0xpYnJhcnkvQmFzZVNl cmlhbFBvcnRMaWJSaXNjVlNiaUxpYi9CYXNlU2VyaWFsUG9ydExpYlJpc2NWDQo+ID4gPiA+IFNi aUwNCj4gPiA+ID4gaWIuaW4NCj4gPiA+ID4gPiBmICAgIHwgIDQwICsrKw0KPiA+ID4gPiA+ID4N Cj4gPiA+ID4gPiBNZGVQa2cvTGlicmFyeS9CYXNlU2VyaWFsUG9ydExpYlJpc2NWU2JpTGliL0Jh c2VTZXJpYWxQb3J0TGliUmlzDQo+ID4gPiA+ID4gY1ZTYg0KPiA+ID4gPiA+IGlMDQo+ID4gPiA+ ID4gaWJSYQ0KPiA+ID4gPiA+IG0uaW5mIHwgIDM3ICsrKw0KPiA+ID4gPiA+ID4gIE92bWZQa2cv UmlzY1ZWaXJ0L1NlYy9TZWNNYWluLmluZiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgfCAgIDENCj4gKw0KPiA+ID4gPiA+ID4gIE1kZVBrZy9JbmNsdWRlL0xp YnJhcnkvQmFzZVJpc2NWU2JpTGliLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgfA0KPiA+IDQwDQo+ID4gPiA+ICsrLQ0KPiA+ID4gPiA+ID4gIE1kZVBrZy9MaWJyYXJ5 L0Jhc2VTZXJpYWxQb3J0TGliUmlzY1ZTYmlMaWIvQ29tbW9uLmgNCj4gPiA+ID4gfA0KPiA+ID4g PiA+IDQxICsrKw0KPiA+ID4gPiA+ID4gIE92bWZQa2cvUmlzY1ZWaXJ0L1NlYy9TZWNNYWluLmgg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDENCj4g Kw0KPiA+ID4gPiA+ID4gIE1kZVBrZy9MaWJyYXJ5L0Jhc2VSaXNjVlNiaUxpYi9CYXNlUmlzY1ZT YmlMaWIuYw0KPiB8DQo+ID4gPiAzDQo+ID4gPiA+ID4gKy0NCj4gPiA+ID4gPiA+DQo+ID4gPiA+ ID4gTWRlUGtnL0xpYnJhcnkvQmFzZVNlcmlhbFBvcnRMaWJSaXNjVlNiaUxpYi9CYXNlU2VyaWFs UG9ydExpYlJpcw0KPiA+ID4gPiA+IGNWU2INCj4gPiA+ID4gPiBpTA0KPiA+ID4gPiA+IGliLmMN Cj4gPiA+ID4gPiB8IDIwOCArKysrKysrKysrKysrKw0KPiA+ID4gPiA+ID4NCj4gPiA+ID4gPg0K PiA+ID4gPiBNZGVQa2cvTGlicmFyeS9CYXNlU2VyaWFsUG9ydExpYlJpc2NWU2JpTGliL0Jhc2VT ZXJpYWxQb3J0TGliUmlzY1YNCj4gPiA+ID4gU2JpTA0KPiA+ID4gPiBpYlJhDQo+ID4gPiA+ID4g bS5jICAgfCAyODkgKysrKysrKysrKysrKysrKysrKysNCj4gPiA+ID4gPiA+ICBNZGVQa2cvTGli cmFyeS9CYXNlU2VyaWFsUG9ydExpYlJpc2NWU2JpTGliL0NvbW1vbi5jDQo+ID4gPiA+IHwNCj4g PiA+ID4gPiAxMzIgKysrKysrKysrDQo+ID4gPiA+ID4gPiAgT3ZtZlBrZy9SaXNjVlZpcnQvU2Vj L1NlY01haW4uYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICB8ICAgNA0KPiArLQ0KPiA+ID4gPiA+ID4NCj4gPiA+ID4gPg0KPiA+ID4gPiBNZGVQa2cvTGli cmFyeS9CYXNlU2VyaWFsUG9ydExpYlJpc2NWU2JpTGliL0Jhc2VTZXJpYWxQb3J0TGliUmlzY1YN Cj4gPiA+ID4gU2JpTA0KPiA+ID4gPiBpYi51DQo+ID4gPiA+ID4gbmkgICAgfCAgMTYgKysNCj4g PiA+ID4gPiA+ICAxMyBmaWxlcyBjaGFuZ2VkLCA4MDggaW5zZXJ0aW9ucygrKSwgNiBkZWxldGlv bnMoLSkgIGNyZWF0ZQ0KPiA+ID4gPiA+ID4gbW9kZQ0KPiA+ID4gPiA+ID4gMTAwNjQ0DQo+ID4g PiA+ID4gPiBNZGVQa2cvTGlicmFyeS9CYXNlU2VyaWFsUG9ydExpYlJpc2NWU2JpTGliL0Jhc2VT ZXJpYWxQb3J0TGliUg0KPiA+ID4gPiA+ID4gaXNjVg0KPiA+ID4gPiA+ID4gU2INCj4gPiA+ID4g PiA+IGlMDQo+ID4gPiA+ID4gPiBpYi5pbmYgIGNyZWF0ZSBtb2RlIDEwMDY0NA0KPiA+ID4gPiA+ ID4gTWRlUGtnL0xpYnJhcnkvQmFzZVNlcmlhbFBvcnRMaWJSaXNjVlNiaUxpYi9CYXNlU2VyaWFs UG9ydExpYlINCj4gPiA+ID4gPiA+IGlzY1YNCj4gPiA+ID4gPiA+IFNiDQo+ID4gPiA+ID4gPiBp TA0KPiA+ID4gPiA+ID4gaWJSYW0uaW5mICBjcmVhdGUgbW9kZSAxMDA2NDQNCj4gPiA+ID4gPiA+ IE1kZVBrZy9MaWJyYXJ5L0Jhc2VTZXJpYWxQb3J0TGliUmlzY1ZTYmlMaWIvQ29tbW9uLmgNCj4g PiA+ID4gPiA+ICBjcmVhdGUgbW9kZSAxMDA2NDQNCj4gPiA+ID4gPiA+IE1kZVBrZy9MaWJyYXJ5 L0Jhc2VTZXJpYWxQb3J0TGliUmlzY1ZTYmlMaWIvQmFzZVNlcmlhbFBvcnRMaWJSDQo+ID4gPiA+ ID4gPiBpc2NWDQo+ID4gPiA+ID4gPiBTYg0KPiA+ID4gPiA+ID4gaUwNCj4gPiA+ID4gPiA+IGli LmMgIGNyZWF0ZSBtb2RlIDEwMDY0NA0KPiA+ID4gPiA+ID4gTWRlUGtnL0xpYnJhcnkvQmFzZVNl cmlhbFBvcnRMaWJSaXNjVlNiaUxpYi9CYXNlU2VyaWFsUG9ydExpYlINCj4gPiA+ID4gPiA+IGlz Y1YNCj4gPiA+ID4gPiA+IFNiDQo+ID4gPiA+ID4gPiBpTA0KPiA+ID4gPiA+ID4gaWJSYW0uYyAg Y3JlYXRlIG1vZGUgMTAwNjQ0DQo+ID4gPiA+ID4gPiBNZGVQa2cvTGlicmFyeS9CYXNlU2VyaWFs UG9ydExpYlJpc2NWU2JpTGliL0NvbW1vbi5jDQo+ID4gPiA+ID4gPiAgY3JlYXRlIG1vZGUgMTAw NjQ0DQo+ID4gPiA+ID4gPiBNZGVQa2cvTGlicmFyeS9CYXNlU2VyaWFsUG9ydExpYlJpc2NWU2Jp TGliL0Jhc2VTZXJpYWxQb3J0TGliUg0KPiA+ID4gPiA+ID4gaXNjVg0KPiA+ID4gPiA+ID4gU2IN Cj4gPiA+ID4gPiA+IGlMDQo+ID4gPiA+ID4gPiBpYi51bmkNCj4gPiA+ID4gPiA+DQo+ID4gPiA+ ID4gPiAtLQ0KPiA+ID4gPiA+ID4gMi4yNS4xDQo+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4NCj4g PiA+ID4gPiA+DQo+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4NCj4gPiA+ID4NCj4gPiA+ID4NCj4g PiA+ID4NCj4gPiA+ID4NCj4gPiA+ID4NCj4gPiA+DQo+ID4gPg0KPiA+ID4NCj4gPiA+IA0KPiA+ ID4NCg0K