From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by mx.groups.io with SMTP id smtpd.web08.61238.1638840414826490403 for ; Mon, 06 Dec 2021 17:26:55 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=Q0AIO9zL; spf=pass (domain: intel.com, ip: 192.55.52.151, mailfrom: jiewen.yao@intel.com) X-IronPort-AV: E=McAfee;i="6200,9189,10190"; a="218136923" X-IronPort-AV: E=Sophos;i="5.87,293,1631602800"; d="scan'208";a="218136923" Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 06 Dec 2021 17:26:54 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.87,293,1631602800"; d="scan'208";a="657496526" Received: from fmsmsx602.amr.corp.intel.com ([10.18.126.82]) by fmsmga001.fm.intel.com with ESMTP; 06 Dec 2021 17:26:54 -0800 Received: from fmsmsx604.amr.corp.intel.com (10.18.126.84) by fmsmsx602.amr.corp.intel.com (10.18.126.82) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.20; Mon, 6 Dec 2021 17:26:53 -0800 Received: from FMSEDG603.ED.cps.intel.com (10.1.192.133) by fmsmsx604.amr.corp.intel.com (10.18.126.84) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.20 via Frontend Transport; Mon, 6 Dec 2021 17:26:53 -0800 Received: from NAM12-BN8-obe.outbound.protection.outlook.com (104.47.55.172) by edgegateway.intel.com (192.55.55.68) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2308.20; Mon, 6 Dec 2021 17:26:53 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YGuc0jep0Vo20WgsUPg7OMLqWGWkO7EewT2rQAZpYmB+UIPws3x6A9E592aOVpB0TXSwmXY/CFUd/LYgdZFd0DffdGgUv31VL2J1mYY/ztAr4tdXUZ15cQqA7baBd/RmOXudZrOPansy3b4PedbijP5N9VvOzp4yCAeBvHW1Td9xSFVjsReJn3+V1xBwf+yN/ikxQ48pxEf87XdtY7hQeZhZiZ9xPJjsCgHqUsDlV0CUu1v4/54z/2MNiYq1euGNtxTyHGu3NM6RO7jyJEUddTHXtDStxeVNmTE+Y2bcqEA0UFgepXEEbdw8JC+0hy0fvazoDkxUED1e05JjATSw0Q== 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=QloPOqY7cxjN1qw+vDSZnD7G/RExawbBOYaaKUTAWTE=; b=mHFQzKOSxuTPihh01k2M9ydfMO3I9++BpBf49nEHbL66AQmlzPeaSpz6h/twFXcXlbpsgIqhcfOO8DPzYNDSl63rl2QOqS9Yiu48P7QiEymIrEJHmUytxIlAtWjf8o69PIPVjunc72zlzStb5y8YVPyfJKoFa4Ev9uo/yLCoLIEAjKHanFR5+vQs3tPpd9z92SMPkICm8sWYjEAWn2PZYHVJDljPt3nuMEQ7HRbg9I+fsq7bUE4USPbRss8s0klLfJEsWgxsai02bGJHRQBKEJ4qxWvUgC83eQYkqILJ71QsUkSsgM5oHFg6tUKfYdVJMOaCecLYhKS+luClQfZv9w== 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=QloPOqY7cxjN1qw+vDSZnD7G/RExawbBOYaaKUTAWTE=; b=Q0AIO9zLTmMXE0ACdenvWhee3riWi3Z9JlGw2ng2Qctkqfm483NRyIq4G6kywHNr4nbFCdBA1e9ey2mNd5ZBgKfc7R7jp+CpMJz9neoOb/2tyoqe0X71sXfLz4+/jCi5DpNaHITlJXkccSj4o2VF7FCHrWoDLGxUucMJVPjfFZ0= Received: from MW4PR11MB5872.namprd11.prod.outlook.com (2603:10b6:303:169::14) by MWHPR11MB1997.namprd11.prod.outlook.com (2603:10b6:300:2a::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4755.20; Tue, 7 Dec 2021 01:26:51 +0000 Received: from MW4PR11MB5872.namprd11.prod.outlook.com ([fe80::1d07:d296:b2c7:7114]) by MW4PR11MB5872.namprd11.prod.outlook.com ([fe80::1d07:d296:b2c7:7114%6]) with mapi id 15.20.4755.019; Tue, 7 Dec 2021 01:26:51 +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 , Erdem Aktas , Michael Roth , Gerd Hoffmann , "Kinney, Michael D" , Liming Gao , "Liu, Zhiguang" , "Ni, Ray" , "Kumar, Rahul1" , "Dong, Eric" Subject: Re: [edk2-devel] [PATCH v13 00/32] Add AMD Secure Nested Paging (SEV-SNP) support Thread-Topic: [edk2-devel] [PATCH v13 00/32] Add AMD Secure Nested Paging (SEV-SNP) support Thread-Index: AQHX6rOpS+CqDKUWKkKvwbavWqKUQqwmPVOQ Date: Tue, 7 Dec 2021 01:26:50 +0000 Message-ID: References: <16B6DD4A324C7B17.2393@groups.io> In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-version: 11.6.200.16 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: b5ae126c-e6a7-4d52-d5b8-08d9b920a550 x-ms-traffictypediagnostic: MWHPR11MB1997:EE_ x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:8882; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: ehd212lZ0zo7WvJWZaioUbW12WtlhCalK38ArZmDElctCaWjk7QJYMSGbv/YYXNzXBWl/CLxeu6G43ZuDltLdb61BL2tVdKDqRaubpjfaNDmcnrWsVY5pFyNsiYmeN/kEk0IzeOJ3Bt4LrvKeOd7bPNLgQnl27pERsv95A49i29+SJ7OkBUaBnrpOxqktWcb8JjZNkqtf6s4Rb7Wd486j/ouZAw7QbfYLwOI9+KsMGSQHJFhr7etLCYjuhTDOJ0SXOiKznYDRyFL4u+uUucr4PAqsxn/aIox2LKmpRMKU6S+4UcE4I/o+gvXZMqmJCrUO314niGmG0sTXpSLjACkthUmWPOHzLJ/m0hNm1XN7ia2iUPxe0uYKD1Eug4Hz2LpePtoX0cFMd1PgKB+DDO7A5mBM2c1tLJCGygUyOK/R7sYN1vxnJgBvRBYDcmKOdza8/kgXbHlrlT5oRrm8aYZnLg21WHvoSC0kVtXosNPJPSEtEdbwDZMVGyIxJc2KDYrZL41oXm/4dGekWz7AAr+XV3VXPZefKx/BxCqipl4pSrZivc4LosaFYJeb5rSi5XTgXbY/SrA+u61Xq+03dOPqD/FP0afo4BcU79KqDxhLRQnLXEjAtWKtsHRFAMr4RZ7oNzk2+ins0GdlXrlQWMSDZsRvuYn/3K0tlhJUl/hQ/YYbkDVDCB9cggNZpUQxoHQEoNK4gM9CKmMJhUN1ev9pZKuYG6fbSmvRqax4QHJCiffIJ5OIwxFdOh+OgEvyMgrLfhYlW2yOsHDVjWM8CMgAIkmmf4A/mP4lYgnxXVpz38PmEXLh3uSGJ+5IHFvrXbv8c3vMULgZI+PgbhPUHgtaw== 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:(366004)(5660300002)(508600001)(55016003)(186003)(52536014)(66446008)(2906002)(8676002)(64756008)(33656002)(8936002)(71200400001)(76116006)(83380400001)(53546011)(66556008)(66476007)(6506007)(30864003)(26005)(66946007)(316002)(7696005)(966005)(122000001)(4326008)(107886003)(54906003)(19627235002)(38100700002)(110136005)(9686003)(82960400001)(38070700005)(86362001);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?clo2U0dhdmFpVkZXL0tFMWhra2dOM0MvTnlJclhLVkxMRFNqc0NFcUJjTXo0?= =?utf-8?B?bkdKbDlFS3ZFQjNjQ0Jhc1lEQ3E0L2tpd0ZkSU4wYVNhV2JPd0RLclpEb0I3?= =?utf-8?B?dE13ZVQvOU92Z2xxTk5mQ0NLelIyL1pkZGtQRzRPL01kdFdPaUVlaHR3L013?= =?utf-8?B?TUVnbjZxUkVIQXBZeWNlU2tDTXQ0MW9OVUczQmZlbnRkNHBqaUxrVHlUVGJX?= =?utf-8?B?SS95SE5WR2Z4L2YyRGRUdWNHTTVMYjkwYWFBZFZIRUZxV0xCZVNadHJWSW5K?= =?utf-8?B?Qld3QWVMeVo0VmxNVUdWYnVheFVwL2wwakg0ekVXc1cxQUVkWHVTM0VzS2Jx?= =?utf-8?B?aTdMb1MxcldqNUY5aEZYYjZmczNRSlhsMG40QlRIOG9rT2lKWkQ0R1ZXZ0s1?= =?utf-8?B?eU45L0w0RG5hby9aU0ZsMEtXbFpUTG4vaTVqNVRqdHoxS093OEpEK0R0T2NO?= =?utf-8?B?U1pqelNQUmRYVkVxQ3FLVm5mT1RqbEhsa0w2TDAvWVlnUVhzTnRkMWFDYlpK?= =?utf-8?B?b0pjYjB6czlHdjJFTWlGZ3NBc0ZiV1Z0d3lNTWFSMW1OODZTY05yYVdHV3Bv?= =?utf-8?B?djY1NlFPZDJ1M3duVHpFY29keXFTTUpjSGpCRHBUYUtnSC83UnVUK3VFSDZV?= =?utf-8?B?YkdydnBaNnEydk9xU3BQc1JPNnVzUmpUbFIvTVZNTEtlb24rRHdQaU1zeHZ4?= =?utf-8?B?VXpRNFRMZGc2ZFp3N0YwQWlkYXgvamxkTlZIb1RVN0Z1cXIveG5aQ1FDSGVo?= =?utf-8?B?aStIejJBYVN3U2kxRDRVdWlhTUVSSzJ5dENhMDg0dDA2ZEhyUFVRYnlCWVh3?= =?utf-8?B?amR0SThMS2F2THlQSlRLQkJkRlZCNmtKVzlIaG52YXBYVjhUeFBWSWdReGl0?= =?utf-8?B?VWNocFI3MTNDd1NQWFZRRXVQUFp4OUZiK29vSHdyNmlIQTBISUdnNHdKVFZC?= =?utf-8?B?WEhhYWllZ2JTODY0SWtHMVcweElIc0M5V1R4a2dZZ0lxeUp2RHl1L2lWSCt0?= =?utf-8?B?MmNpQXBVZml6NURVd0RCS1NDbDUzeU5iTER6OEF1NzgwMTRXZkROUkF0ekI4?= =?utf-8?B?dHQzTlUzcGRRcnN4NHI4Z0RkY1VkaHJIRE5IbjlndXZKOWU1azFuM0pIT2M4?= =?utf-8?B?QkRXV3BGeWRlKzBOQ0pVcGdyeFQzNWtoblBmZGxmb0lKd3hXQm9nVTFiVFFk?= =?utf-8?B?WEhoTUJldDkwNTdtWStGRWxJZlVCYTB1MzdIOTJFa1lWRWl4cm5ISmpWQk1h?= =?utf-8?B?aWhWWFRtQ0RRVktYODhjUW1rN1phSVRBa2V2OFNpNFJvK2NHc1lRR0s2aWVW?= =?utf-8?B?NVFvUkNFaks3eG1lR0QrKzM5dm5hTTJDN1hpZW8yQzk1cEc2ZHFZbU9ZQlBE?= =?utf-8?B?M1dIOFF4SDNwLzJUbEpYcVdsYkxOTDZUMXcvL1g4b2JreWh0SjZGNjhVbWhJ?= =?utf-8?B?YWVwVnBQano0SnFJNzN6VkdsQ0pueklhWTloNi9kSm9xQUNCcjFkT3hXdnZk?= =?utf-8?B?dnVXakJobGxhODlOUVowWk1kRXRhMm1GNGM5SGM5d25rcWYzbkJ2N3dIZS9o?= =?utf-8?B?UGlHTnJJejdKRGlSZnFCbXB0aVNPVVBmMnhtUDJhajZ5U0pycERINjRWRGNG?= =?utf-8?B?UExSV0NKS1UxS0o5SnEzVzVPZ2gyYzhHckZSUmJNSDlJa3h3TjFvMG5La3cv?= =?utf-8?B?VkQ3THpjUVJCN2xZdmlIK0tQWTJYMGUraXE2STVvbzIzNGlUSzQ4UkNteHh0?= =?utf-8?B?TnZWQ3VSR3FEaHNhT0piM1prMGM0aWxFdVZwVzB3L0hPeVZBUWwwTVU0cC9N?= =?utf-8?B?RlY4TklwZ1JWQWNpWSswSHV4Y25jbUVqRWZvY24wMFowTUdEQVpPRng1dlha?= =?utf-8?B?M2Y4R3BWT3p0VEpFSEhJa2toVHhxa1JWblh6K2U1YnF3VkVHT2djSHYxUHFr?= =?utf-8?B?YVNnV0wvKzQ3OHN2eTdGVk16d0MyQmVmcDNRTzdHZ1FYUkYrL1JTa09OMU1S?= =?utf-8?B?SEVyUVh2RUw0Z00yM3VvMm10OC8zYnNxSGQ0N3YrTVA3UzFiS0RYK25wZCtS?= =?utf-8?B?TmdGMStIY05NTGU4YnJiSWs4QUxDMTNYaEtqOHN2VDZpVmpjTW5vbVltcWIz?= =?utf-8?B?ZDYxenMxQ1k1c3lIZlVuQ3p2Nm83ZVRiN3dCdWZiQlhlU3BQSTRIK3ZUcjY1?= =?utf-8?Q?MpdgQP1sInWgxrdv8cSNgNk=3D?= 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: b5ae126c-e6a7-4d52-d5b8-08d9b920a550 X-MS-Exchange-CrossTenant-originalarrivaltime: 07 Dec 2021 01:26:51.1503 (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: G9X801v+F7dnt/tNJekI1sQ6+feFd5QLVkKYnzCbrauW5QB+xB1H9Hc8fgB1n8PqecyBK7aCkQAf19sNZwRZQA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR11MB1997 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 VGhhbmtzIHRvIHJlbWluZCBtZS4NCg0KWWVzLCBJIGFtIHdhaXRpbmcgZm9yIGhhcmQgZnJlZXpl IGV4dGVuZCBmaW5pc2ggbGFzdCB3ZWVrLg0KDQpJIHdpbGwgbWVyZ2Ugc29vbi4NCg0KDQoNCj4g LS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogZGV2ZWxAZWRrMi5ncm91cHMuaW8g PGRldmVsQGVkazIuZ3JvdXBzLmlvPiBPbiBCZWhhbGYgT2YgQnJpamVzaA0KPiBTaW5naCB2aWEg Z3JvdXBzLmlvDQo+IFNlbnQ6IE1vbmRheSwgRGVjZW1iZXIgNiwgMjAyMSAxMToxMiBQTQ0KPiBU bzogZGV2ZWxAZWRrMi5ncm91cHMuaW8NCj4gQ2M6IGJyaWplc2guc2luZ2hAYW1kLmNvbTsgSmFt ZXMgQm90dG9tbGV5IDxqZWpiQGxpbnV4LmlibS5jb20+OyBYdSwgTWluIE0NCj4gPG1pbi5tLnh1 QGludGVsLmNvbT47IFlhbywgSmlld2VuIDxqaWV3ZW4ueWFvQGludGVsLmNvbT47IFRvbSBMZW5k YWNreQ0KPiA8dGhvbWFzLmxlbmRhY2t5QGFtZC5jb20+OyBKdXN0ZW4sIEpvcmRhbiBMIDxqb3Jk YW4ubC5qdXN0ZW5AaW50ZWwuY29tPjsNCj4gQXJkIEJpZXNoZXV2ZWwgPGFyZGIrdGlhbm9jb3Jl QGtlcm5lbC5vcmc+OyBFcmRlbSBBa3Rhcw0KPiA8ZXJkZW1ha3Rhc0Bnb29nbGUuY29tPjsgTWlj aGFlbCBSb3RoIDxNaWNoYWVsLlJvdGhAYW1kLmNvbT47IEdlcmQNCj4gSG9mZm1hbm4gPGtyYXhl bEByZWRoYXQuY29tPjsgS2lubmV5LCBNaWNoYWVsIEQNCj4gPG1pY2hhZWwuZC5raW5uZXlAaW50 ZWwuY29tPjsgTGltaW5nIEdhbyA8Z2FvbGltaW5nQGJ5b3NvZnQuY29tLmNuPjsgTGl1LA0KPiBa aGlndWFuZyA8emhpZ3VhbmcubGl1QGludGVsLmNvbT47IE5pLCBSYXkgPHJheS5uaUBpbnRlbC5j b20+OyBLdW1hciwgUmFodWwxDQo+IDxyYWh1bDEua3VtYXJAaW50ZWwuY29tPjsgRG9uZywgRXJp YyA8ZXJpYy5kb25nQGludGVsLmNvbT4NCj4gU3ViamVjdDogUmU6IFtlZGsyLWRldmVsXSBbUEFU Q0ggdjEzIDAwLzMyXSBBZGQgQU1EIFNlY3VyZSBOZXN0ZWQgUGFnaW5nDQo+IChTRVYtU05QKSBz dXBwb3J0DQo+IA0KPiBIaSBHZXJkIGFuZCBKaWV3ZW4sDQo+IA0KPiBOb3cgdGhhdCBhbGwgdGhl IHBhdGNoZXMgYXJlIGFjaydlZCBieSBSYXksIGNhbiB3ZSBwbGFuIHRvIG1lcmdlIHRoaXMNCj4g c2VyaWVzID8NCj4gDQo+IC1CcmlqZXNoDQo+IA0KPiANCj4gT24gMTEvMTIvMjEgMTE6MzkgQU0s IEJyaWplc2ggU2luZ2ggdmlhIGdyb3Vwcy5pbyB3cm90ZToNCj4gPiAtLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0NCj4gPiBIaSBSYXksDQo+ID4NCj4gPiBUaGFua3MgZm9yIHlvdXIgcmV2aWV3cyBhbmQgY29u dGludW91cyBzdXBwb3J0OyBJIGhhdmUgdXBkYXRlZCBhIGNvdXBsZSBvZg0KPiBwYXRjaGVzDQo+ ID4gdG8gYWRkcmVzcyB5b3VyIGNvbW1lbnQuIEFzIEkgc2FpZCBpbiBteSBwcmV2aW91cyByZXBs eSwgSSB3aWxsIHdvcmtpbmcgb24gYQ0KPiA+IGZvbGxvdy11cCBzZXJpZXMgdG8gZ3JvdXAgc29t ZSBvZiB0aG9zZSBTZXYgc3BlY2lmaWMgdmFyaWFibGVzIGluIENwdURhdGEuDQo+ID4NCj4gPiBJ IGhvcGUgdGhhdCBpcyBva2F5IHdpdGggeW91Lg0KPiA+DQo+ID4gdGhhbmtzDQo+ID4gLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLQ0KPiA+DQo+ID4gQlo6IGh0dHBzOi8vYnVnemlsbGEudGlhbm9jb3JlLm9y Zy9zaG93X2J1Zy5jZ2k/aWQ9MzI3NQ0KPiA+DQo+ID4gU0VWLVNOUCBidWlsZHMgdXBvbiBleGlz dGluZyBTRVYgYW5kIFNFVi1FUyBmdW5jdGlvbmFsaXR5IHdoaWxlIGFkZGluZw0KPiA+IG5ldyBo YXJkd2FyZS1iYXNlZCBtZW1vcnkgcHJvdGVjdGlvbnMuIFNFVi1TTlAgYWRkcyBzdHJvbmcgbWVt b3J5DQo+IGludGVncml0eQ0KPiA+IHByb3RlY3Rpb24gdG8gaGVscCBwcmV2ZW50IG1hbGljaW91 cyBoeXBlcnZpc29yLWJhc2VkIGF0dGFja3MgbGlrZSBkYXRhDQo+ID4gcmVwbGF5LCBtZW1vcnkg cmUtbWFwcGluZyBhbmQgbW9yZSBpbiBvcmRlciB0byBjcmVhdGUgYW4gaXNvbGF0ZWQgbWVtb3J5 DQo+ID4gZW5jcnlwdGlvbiBlbnZpcm9ubWVudC4NCj4gPg0KPiA+IFRoaXMgc2VyaWVzIHByb3Zp ZGVzIHRoZSBiYXNpYyBidWlsZGluZyBibG9ja3MgdG8gc3VwcG9ydCBib290aW5nIHRoZSBTRVYt U05QDQo+ID4gVk1zLCBpdCBkb2VzIG5vdCBjb3ZlciBhbGwgdGhlIHNlY3VyaXR5IGVuaGFuY2Vt ZW50IGludHJvZHVjZWQgYnkgdGhlIFNFVi0NCj4gU05QDQo+ID4gc3VjaCBhcyBpbnRlcnJ1cHQg cHJvdGVjdGlvbi4NCj4gPg0KPiA+IE1hbnkgb2YgdGhlIGludGVncml0eSBndWFyYW50ZWVzIG9m IFNFVi1TTlAgYXJlIGVuZm9yY2VkIHRocm91Z2ggYSBuZXcNCj4gPiBzdHJ1Y3R1cmUgY2FsbGVk IHRoZSBSZXZlcnNlIE1hcCBUYWJsZSAoUk1QKS4gQWRkaW5nIGEgbmV3IHBhZ2UgdG8gU0VWLVNO UA0KPiA+IFZNIHJlcXVpcmVzIGEgMi1zdGVwIHByb2Nlc3MuIEZpcnN0LCB0aGUgaHlwZXJ2aXNv ciBhc3NpZ25zIGEgcGFnZSB0byB0aGUNCj4gPiBndWVzdCB1c2luZyB0aGUgbmV3IFJNUFVQREFU RSBpbnN0cnVjdGlvbi4gVGhpcyB0cmFuc2l0aW9ucyB0aGUgcGFnZSB0bw0KPiA+IGd1ZXN0LWlu dmFsaWQuIFNlY29uZCwgdGhlIGd1ZXN0IHZhbGlkYXRlcyB0aGUgcGFnZSB1c2luZyB0aGUgbmV3 IFBWQUxJREFURQ0KPiA+IGluc3RydWN0aW9uLiBUaGUgU0VWLVNOUCBWTXMgY2FuIHVzZSB0aGUg bmV3ICJQYWdlIFN0YXRlIENoYW5nZSBSZXF1ZXN0DQo+IE5BRSINCj4gPiBkZWZpbmVkIGluIHRo ZSBHSENCIHNwZWNpZmljYXRpb24gdG8gYXNrIGh5cGVydmlzb3IgdG8gYWRkIG9yIHJlbW92ZSBw YWdlDQo+ID4gZnJvbSB0aGUgUk1QIHRhYmxlLg0KPiA+DQo+ID4gRWFjaCBwYWdlIGFzc2lnbmVk IHRvIHRoZSBTRVYtU05QIFZNIGNhbiBlaXRoZXIgYmUgdmFsaWRhdGVkIG9yIHVudmFsaWRhdGVk LA0KPiA+IGFzIGluZGljYXRlZCBieSB0aGUgVmFsaWRhdGVkIGZsYWcgaW4gdGhlIHBhZ2UncyBS TVAgZW50cnkuIFRoZXJlIGFyZSB0d28NCj4gPiBhcHByb2FjaGVzIHRoYXQgY2FuIGJlIHRha2Vu IGZvciB0aGUgcGFnZSB2YWxpZGF0aW9uOiBQcmUtdmFsaWRhdGlvbiBhbmQNCj4gPiBMYXp5IFZh bGlkYXRpb24uDQo+ID4NCj4gPiBVbmRlciBwcmUtdmFsaWRhdGlvbiwgdGhlIHBhZ2VzIGFyZSB2 YWxpZGF0ZWQgcHJpb3IgdG8gZmlyc3QgdXNlLiBBbmQgdW5kZXINCj4gPiBsYXp5IHZhbGlkYXRp b24sIHBhZ2VzIGFyZSB2YWxpZGF0ZWQgd2hlbiBmaXJzdCBhY2Nlc3NlZC4gQW4gYWNjZXNzIHRv IGENCj4gPiB1bnZhbGlkYXRlZCBwYWdlIHJlc3VsdHMgaW4gYSAjVkMgZXhjZXB0aW9uLCBhdCB3 aGljaCB0aW1lIHRoZSBleGNlcHRpb24NCj4gPiBoYW5kbGVyIG1heSB2YWxpZGF0ZSB0aGUgcGFn ZS4gTGF6eSB2YWxpZGF0aW9uIHJlcXVpcmVzIGNhcmVmdWwgdHJhY2tpbmcgb2YNCj4gPiB0aGUg dmFsaWRhdGVkIHBhZ2VzIHRvIGF2b2lkIHZhbGlkYXRpbmcgdGhlIHNhbWUgR1BBIG1vcmUgdGhh biBvbmNlLiBUaGUNCj4gPiByZWNlbnRseSBpbnRyb2R1Y2VkICJVbmFjY2VwdGVkIiBtZW1vcnkg dHlwZSBjYW4gYmUgdXNlZCB0byBjb21tdW5pY2F0ZQ0KPiB0aGUNCj4gPiB1bnZhbGlkYXRlZCBt ZW1vcnkgcmFuZ2VzIHRvIHRoZSBHdWVzdCBPUy4NCj4gPg0KPiA+IEF0IHRoaXMgdGltZSB3ZSBv bmx5IHN1cHBvcnQgdGhlIHByZS12YWxpZGF0aW9uLiBPVk1GIGRldGVjdHMgYWxsIHRoZSBhdmFp bGFibGUNCj4gPiBzeXN0ZW0gUkFNIGluIHRoZSBQRUkgcGhhc2UuIFdoZW4gU0VWLVNOUCBpcyBl bmFibGVkLCB0aGUgbWVtb3J5IGlzDQo+IHZhbGlkYXRlZA0KPiA+IGJlZm9yZSBpdCBpcyBtYWRl IGF2YWlsYWJsZSB0byB0aGUgRURLMiBjb3JlLg0KPiA+DQo+ID4gTm93IHRoYXQgc2VyaWVzIGNv bnRhaW5zIGFsbCB0aGUgYmFzaWMgc3VwcG9ydCByZXF1aXJlZCB0byBsYXVuY2ggU0VWLVNOUA0K PiA+IGd1ZXN0LiBXZSBhcmUgc3RpbGwgbWlzc2luZyB0aGUgSW50ZXJydXB0IHNlY3VyaXR5IGZl YXR1cmUgcHJvdmlkZWQgYnkgdGhlDQo+ID4gU05QLiBUaGUgZmVhdHVyZSB3aWxsIGJlIGFkZGVk IGFmdGVyIHRoZSBiYXNlIHN1cHBvcnQgaXMgYWNjZXB0ZWQuDQo+ID4NCj4gPiBBZGRpdGlvbmFs IHJlc291cmNlcw0KPiA+IC0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiA+IFNFVi1TTlAgd2hpdGVw YXBlcg0KPiA+IGh0dHBzOi8vd3d3LmFtZC5jb20vc3lzdGVtL2ZpbGVzL1RlY2hEb2NzL1NFVi1T TlAtc3RyZW5ndGhlbmluZy12bS0NCj4gaXNvbGF0aW9uLXdpdGgtaW50ZWdyaXR5LXByb3RlY3Rp b24tYW5kLW1vcmUucGRmDQo+ID4NCj4gPiBBUE0gMjogaHR0cHM6Ly93d3cuYW1kLmNvbS9zeXN0 ZW0vZmlsZXMvVGVjaERvY3MvMjQ1OTMucGRmIChzZWN0aW9uDQo+IDE1LjM2KQ0KPiA+DQo+ID4g VGhlIGNvbXBsZXRlIHNvdXJjZSBpcyBhdmFpbGFibGUgYXQNCj4gPiBodHRwczovL2dpdGh1Yi5j b20vQU1ERVNFL292bWYvdHJlZS9zbnAtdjEzDQo+ID4NCj4gPiBHSENCIHNwZWM6DQo+ID4gaHR0 cHM6Ly9kZXZlbG9wZXIuYW1kLmNvbS93cC1jb250ZW50L3Jlc291cmNlcy81NjQyMS5wZGYNCj4g Pg0KPiA+IFNFVi1TTlAgZmlybXdhcmUgc3BlY2lmaWNhdGlvbjoNCj4gPiBodHRwczovL3d3dy5h bWQuY29tL3N5c3RlbS9maWxlcy9UZWNoRG9jcy81Njg2MC5wZGYNCj4gPg0KPiA+IENoYW5nZSBz aW5jZSB2MTI6DQo+ID4gICAqIE1wTGliOiBBZGQgY29tbWVudCB0byBjbGFyaWZ5IHRoYXQgU0VW LVNOUCBlbmFibGVkIGltcGxpY2l0bHkgbWVhbnMgU0VWDQo+IGFuZCBTRVYtRVMgYXJlIGFjdGl2 ZS4NCj4gPiAgICogTXBMaWI6IE1vdmUgdGhlIGV4dGVuZGVkIHRvcG9sb2d5IGluaXRpYWxpemF0 aW9uIGluIEFtZFNldi5jDQo+ID4NCj4gPiBDaGFuZ2Ugc2luY2UgdjExOg0KPiA+ICAgKiByZWJh c2UgdG8gdGhlIGxhdGVzdA0KPiA+ICAgKiBmaXggdGhlIFVlZmlDcHVQa2cgUENEIGRlZmluaXRp b24gcGF0Y2ggaGVhZGVyLg0KPiA+DQo+ID4gQ2hhbmdlIHNpbmNlIHYxMDoNCj4gPiAgICogZml4 ICd1bnJlc29sdmVkIGV4dGVybmFsIHN5bWJvbCBfX2FsbHNobCcgbGluayBlcnJvciB3aGVuIGJ1 aWxkaW5nIEkzMiBmb3INCj4gVlMyMDE3Lg0KPiA+DQo+ID4gQ2hhbmdlcyBzaW5jZSB2OToNCj4g PiAgICogTW92ZSBDQ0F0dHJzIFBjZCBkZWZpbmUgaW4gTWRlUGtnDQo+ID4gICAqIEFkZCBjb21t ZW50IHRvIGluZGljYXRlIHRoYXQgYWxsb2NhdGluZyB0aGUgaWRlbnRpdHkgbWFwIFBUIGlzIHRl bXBvcmFyeQ0KPiB1bnRpbCB3ZSBnZXQgbGF6eSB2YWxpZGF0aW9uDQo+ID4NCj4gPiBDaGFuZ2Vz IHNpbmNlIHY4Og0KPiA+ICAgKiBkcm9wIHRoZSBnZW5lcmljIG1ldGFkYXRhIGFuZCBtYWtlIGl0 IHNwZWNpZmljIHRvIFNFVi4NCj4gPg0KPiA+IENoYW5nZXMgc2luY2Ugdjc6DQo+ID4gICAqIE1v dmUgU0VWIHNwZWNpZmljIGNoYW5nZXMgaW4gTXBMaWIgaW4gQW1kU2V2IGZpbGUNCj4gPiAgICog VXBkYXRlIHRoZSBHSENCIHJlZ2lzdGVyIGZ1bmN0aW9uIHRvIG5vdCByZXN0b3JlIHRoZSBHSENC IE1TUiBiZWNhdXNlDQo+ID4gICAgIHdlIHdlcmUgYWxyZWFkeSBpbiB0aGUgTVNSIHByb3RvY29s IG1vZGUuDQo+ID4gICAqIERyb3AgdGhlIFNOUCBuYW1lIGZyb20gUGNkU25wU2VjUHJlVmFsaWRh dGUuDQo+ID4gICAqIEFkZCBuZXcgc2VjdGlvbiBmb3IgR0hDQiBtZW1vcnkgaW4gdGhlIE9WTUYg bWV0YWRhdGEuDQo+ID4NCj4gPiBDaGFuZ2Ugc2luY2UgdjY6DQo+ID4gICAqIERyb3AgdGhlIFNO UCBib290IGJsb2NrIEdVSUQgYW5kIHN3aXRjaCB0byB1c2luZyB0aGUgTWV0YWRhdGEgZ3VpZGVk DQo+IHN0cnVjdHVyZQ0KPiA+ICAgICBwcm9wb3NlZCBieSBNaW4gaW4gVERYIHNlcmllcy4NCj4g PiAgICogRXhjbHVkZSB0aGUgR0hDQiBwYWdlIGZyb20gdGhlIHByZS12YWxpZGF0ZWQgcmVnaW9u LiBJdCBzaW1wbGlmaWVzIHRoZSByZXNldA0KPiA+ICAgICB2ZWN0b3IgY29kZSB3aGVyZSB3ZSBk byBub3QgbmVlZCB0byB1bnZhbGlkYXRlIHRoZSBHSENCIHBhZ2UuDQo+ID4gICAqIE5vdyB0aGF0 IEdIQ0IgcGFnZSBpcyBub3QgdmFsaWRhdGVkIHNvIG1vdmUgdGhlIFZNUEwgY2hlY2sgZnJvbSBy ZXNldA0KPiB2ZWN0b3INCj4gPiAgICAgY29kZSB0byB0aGUgTWVtRW5jcnlwdFNldkxpYiBvbiB0 aGUgZmlyc3QgcGFnZSB2YWxpZGF0aW9uLg0KPiA+ICAgKiBJbnRyb2R1Y2UgdGhlIENvbmZpZGVu dGlhbENvbXB1dGluZ0d1ZXN0QXR0ciBQQ0QgdG8gY29tbXVuaWNhdGUgd2hpY2gNCj4gPiAgICAg bWVtb3J5IGVuY3J5cHRpb24gaXMgYWN0aXZlIHNvIHRoYXQgTXBJbml0TGliIGNhbiBtYWtlIHVz ZSBvZiBpdC4NCj4gPiAgICogRHJvcCB0aGUgU0VWRVMgc3BlY2lmaWMgUENEIGFzIHRoZSBpbmZv cm1hdGlvbiBjYW4gYmUgY29tbXVuaWNhdGVkIHZpYQ0KPiA+ICAgICB0aGUgQ29uZmlkZW50aWFs Q29tcHV0aW5nR3Vlc3RBdHRyLg0KPiA+ICAgKiBNb3ZlIHRoZSBTTlAgc3BlY2lmaWMgQVAgY3Jl YXRpb24gZnVuY3Rpb24gaW4gQW1kU2V2LmMuDQo+ID4gICAqIERlZmluZSB0aGUgU05QIEJsb2Ig R1VJRCBpbiBhIG5ldyBmaWxlLg0KPiA+DQo+ID4gQ2hhbmdlIHNpbmNlIHY1Og0KPiA+ICAgKiBX aGVuIHBvc3NpYmxlIHVzZSB0aGUgQ1BVSUQgdmFsdWUgZnJvbSBDUFVJRCBwYWdlDQo+ID4gICAq IE1vdmUgdGhlIFNFViBzcGVjaWZpYyBmdW5jdGlvbnMgZnJvbSBTZWNNYWluLmMgaW4gQW1kU2V2 LmMNCj4gPiAgICogUmViYXNlIHRvIHRoZSBsYXRlc3QgY29kZQ0KPiA+ICAgKiBBZGQgdGhlIHJl dmlldyBmZWVkYmFjayBmcm9tIFlhby4NCj4gPg0KPiA+IENoYW5nZSBzaW5jZSB2NDoNCj4gPiAg ICogVXNlIHRoZSBjb3JyZWN0IE1TUiBmb3IgdGhlIFNFVl9TVEFUVVMNCj4gPiAgICogQWRkIFZN UEwtMCBjaGVjaw0KPiA+DQo+ID4gQ2hhbmdlIHNpbmNlIHYzOg0KPiA+ICAgKiBSZXNldFZlY3Rv cjogbW92ZSBhbGwgU0VWIHNwZWNpZmljIGNvZGUgaW4gQW1kU2V2LmFzbSBhbmQgYWRkIG1hY3Jv cyB0bw0KPiBrZWVwDQo+ID4gICAgIHRoZSBjb2RlIHJlYWRhYmxlLg0KPiA+ICAgKiBEcm9wIGV4 dGVuZGluZyB0aGUgRXNXb3JrQXJlYSB0byBjb250YWluIFNOUCBzcGVjaWZpYyBzdGF0ZS4NCj4g PiAgICogRHJvcCB0aGUgR2hjYkdwYSBsaWJyYXJ5IGFuZCBjYWxsIHRoZSBWbWdFeGl0IGRpcmVj dGx5IHRvIHJlZ2lzdGVyIEdIQ0IgR1BBLg0KPiA+ICAgKiBJbnN0YWxsIHRoZSBDQyBibG9iIGNv bmZpZyB0YWJsZSBmcm9tIEFtZFNldkR4ZSBpbnN0ZWFkIG9mIGV4dGVuZGluZyB0aGUNCj4gPiAg ICAgQW1kU2V2L1NlY3JldHNEeGUgZm9yIGl0Lg0KPiA+ICAgKiBBZGQgdGhlIHNlcGFyYXRlIFBD RHMgZm9yIHRoZSBTTlAgU2VjcmV0cy4NCj4gPg0KPiA+IENoYW5nZXMgc2luY2UgdjI6DQo+ID4g ICAqIEFkZCBzdXBwb3J0IGZvciB0aGUgQVAgY3JlYXRpb24uDQo+ID4gICAqIFVzZSB0aGUgbW9k dWxlLXNjb3Bpbmcgb3ZlcnJpZGUgdG8gbWFrZSBBbWRTZXZEeGUgdXNlIHRoZSBJTyBwb3J0IGZv cg0KPiBQQ0kgcmVhZHMuDQo+ID4gICAqIFVzZSB0aGUgcmVzZXJ2ZWQgbWVtb3J5IHR5cGUgZm9y IENQVUlEIGFuZCBTZWNyZXRzIHBhZ2UuDQo+ID4gICAqDQo+ID4gQ2hhbmdlcyBzaW5jZSB2MToN Cj4gPiAgICogRHJvcCB0aGUgaW50ZXJ2YWwgdHJlZSBzdXBwb3J0IHRvIGRldGVjdCB0aGUgcHJl LXZhbGlkYXRlZCBvdmVybGFwIHJlZ2lvbi4NCj4gPiAgICogVXNlIGFuIGFycmF5IHRvIGtlZXAg dHJhY2sgb2YgcHJlLXZhbGlkYXRlZCByZWdpb25zLg0KPiA+ICAgKiBBZGQgc3VwcG9ydCB0byBx dWVyeSB0aGUgSHlwZXJ2aXNvciBmZWF0dXJlIGFuZCB2ZXJpZnkgdGhhdCBTTlAgZmVhdHVyZSBp cw0KPiBzdXBwb3J0ZWQuDQo+ID4gICAqIEludHJvZHVjZSBNZW1FbmNyeXB0U2V2Q2xlYXJNbWlv UGFnZUVuY01hc2soKSB0byBjbGVhciB0aGUgQy1iaXQgZnJvbQ0KPiBNTUlPIHJhbmdlcy4NCj4g PiAgICogUHVsbCB0aGUgU2V2U2VjcmV0RHhlIGFuZCBTZXZTZWNyZXRQZWkgaW50byBPVk1GIHBh Y2thZ2UgYnVpbGQuDQo+ID4gICAqIEV4dGVuZCB0aGUgU2V2U2VjcmV0RHhlIHRvIGV4cG9zZSBj b25maWRlbnRpYWwgY29tcHV0aW5nIGJsb2IgbG9jYXRpb24NCj4gdGhyb3VnaA0KPiA+ICAgICBF RkkgY29uZmlndXJhdGlvbiB0YWJsZS4NCj4gPg0KPiA+IEJyaWplc2ggU2luZ2ggKDI4KToNCj4g PiAgICBPdm1mUGtnL1NlY01haW46IG1vdmUgU0VWIHNwZWNpZmljIHJvdXRpbmVzIGluIEFtZFNl di5jDQo+ID4gICAgVWVmaUNwdVBrZy9NcEluaXRMaWI6IG1vdmUgU0VWIHNwZWNpZmljIHJvdXRp bmVzIGluIEFtZFNldi5jDQo+ID4gICAgT3ZtZlBrZy9SZXNldFZlY3RvcjogbW92ZSBjbGVhcmlu ZyBHSENCIGluIFNlY01haW4NCj4gPiAgICBPdm1mUGtnL1Jlc2V0VmVjdG9yOiBpbnRyb2R1Y2Ug U0VWIG1ldGFkYXRhIGRlc2NyaXB0b3IgZm9yIFZNTSB1c2UNCj4gPiAgICBPdm1mUGtnOiByZXNl cnZlIFNOUCBzZWNyZXRzIHBhZ2UNCj4gPiAgICBPdm1mUGtnOiByZXNlcnZlIENQVUlEIHBhZ2UN Cj4gPiAgICBPdm1mUGtnL1Jlc2V0VmVjdG9yOiBwcmUtdmFsaWRhdGUgdGhlIGRhdGEgcGFnZXMg dXNlZCBpbiBTRUMgcGhhc2UNCj4gPiAgICBPdm1mUGtnL01lbUVuY3J5cHRTZXZMaWI6IGFkZCBN ZW1FbmNyeXB0U2V2U25wRW5hYmxlZCgpDQo+ID4gICAgT3ZtZlBrZy9TZWNNYWluOiByZWdpc3Rl ciBHSENCIGdwYSBmb3IgdGhlIFNFVi1TTlAgZ3Vlc3QNCj4gPiAgICBPdm1mUGtnL1BsYXRmb3Jt UGVpOiByZWdpc3RlciBHSENCIGdwYSBmb3IgdGhlIFNFVi1TTlAgZ3Vlc3QNCj4gPiAgICBPdm1m UGtnL0FtZFNldkR4ZTogZG8gbm90IHVzZSBleHRlbmRlZCBQQ0kgY29uZmlnIHNwYWNlDQo+ID4g ICAgT3ZtZlBrZy9NZW1FbmNyeXB0U2V2TGliOiBhZGQgc3VwcG9ydCB0byB2YWxpZGF0ZSBzeXN0 ZW0gUkFNDQo+ID4gICAgT3ZtZlBrZy9NZW1FbmNyeXB0U2V2TGliOiBhZGQgZnVuY3Rpb24gdG8g Y2hlY2sgdGhlIFZNUEwwDQo+ID4gICAgT3ZtZlBrZy9CYXNlTWVtRW5jcnlwdFNldkxpYjogc2tp cCB0aGUgcHJlLXZhbGlkYXRlZCBzeXN0ZW0gUkFNDQo+ID4gICAgT3ZtZlBrZy9NZW1FbmNyeXB0 U2V2TGliOiBhZGQgc3VwcG9ydCB0byB2YWxpZGF0ZSA+IDRHQiBtZW1vcnkgaW4gUEVJDQo+ID4g ICAgICBwaGFzZQ0KPiA+ICAgIE92bWZQa2cvU2VjTWFpbjogdmFsaWRhdGUgdGhlIG1lbW9yeSB1 c2VkIGZvciBkZWNvbXByZXNzaW5nIEZ2DQo+ID4gICAgT3ZtZlBrZy9QbGF0Zm9ybVBlaTogdmFs aWRhdGUgdGhlIHN5c3RlbSBSQU0gd2hlbiBTTlAgaXMgYWN0aXZlDQo+ID4gICAgTWRlUGtnOiBE ZWZpbmUgQ29uZmlkZW50aWFsQ29tcHV0aW5nR3Vlc3RBdHRyDQo+ID4gICAgT3ZtZlBrZy9QbGF0 Zm9ybVBlaTogc2V0IFBjZENvbmZpZGVudGlhbENvbXB1dGluZ0F0dHIgd2hlbiBTRVYgaXMNCj4g PiAgICAgIGFjdGl2ZQ0KPiA+ICAgIFVlZmlDcHVQa2cvTXBJbml0TGliOiB1c2UgUGNkQ29uZmlk ZW50aWFsQ29tcHV0aW5nQXR0ciB0byBjaGVjayBTRVYNCj4gPiAgICAgIHN0YXR1cw0KPiA+ICAg IFVlZmlDcHVQa2c6IGFkZCBQY2RHaGNiSHlwZXJ2aXNvckZlYXR1cmVzDQo+ID4gICAgT3ZtZlBr Zy9QbGF0Zm9ybVBlaTogc2V0IHRoZSBIeXBlcnZpc29yIEZlYXR1cmVzIFBDRA0KPiA+ICAgIE1k ZVBrZy9HSENCOiBpbmNyZWFzZSB0aGUgR0hDQiBwcm90b2NvbCBtYXggdmVyc2lvbg0KPiA+ICAg IFVlZmlDcHVQa2cvTXBMaWI6IGFkZCBzdXBwb3J0IHRvIHJlZ2lzdGVyIEdIQ0IgR1BBIHdoZW4g U0VWLVNOUCBpcw0KPiA+ICAgICAgZW5hYmxlZA0KPiA+ICAgIE92bWZQa2cvTWVtRW5jcnlwdFNl dkxpYjogY2hhbmdlIHRoZSBwYWdlIHN0YXRlIGluIHRoZSBSTVAgdGFibGUNCj4gPiAgICBPdm1m UGtnL01lbUVuY3J5cHRTZXZMaWI6IHNraXAgcGFnZSBzdGF0ZSBjaGFuZ2UgZm9yIE1taW8gYWRk cmVzcw0KPiA+ICAgIE92bWZQa2cvUGxhdGZvcm1QZWk6IG1hcmsgY3B1aWQgYW5kIHNlY3JldHMg bWVtb3J5IHJlc2VydmVkIGluIEVGSSBtYXANCj4gPiAgICBPdm1mUGtnL0FtZFNldjogZXhwb3Nl IHRoZSBTTlAgcmVzZXJ2ZWQgcGFnZXMgdGhyb3VnaCBjb25maWd1cmF0aW9uDQo+ID4gICAgICB0 YWJsZQ0KPiA+DQo+ID4gTWljaGFlbCBSb3RoICgzKToNCj4gPiAgICBPdm1mUGtnL1Jlc2V0VmVj dG9yOiB1c2UgU0VWLVNOUC12YWxpZGF0ZWQgQ1BVSUQgdmFsdWVzDQo+ID4gICAgT3ZtZlBrZy9W bWdFeGl0TGliOiB1c2UgU0VWLVNOUC12YWxpZGF0ZWQgQ1BVSUQgdmFsdWVzDQo+ID4gICAgVWVm aUNwdVBrZy9NcEluaXRMaWI6IHVzZSBCU1AgdG8gZG8gZXh0ZW5kZWQgdG9wb2xvZ3kgY2hlY2sN Cj4gPg0KPiA+IFRvbSBMZW5kYWNreSAoMSk6DQo+ID4gICAgVWVmaUNwdVBrZy9NcEluaXRMaWI6 IFVzZSBTRVYtU05QIEFQIENyZWF0aW9uIE5BRSBldmVudCB0byBsYXVuY2ggQVBzDQo+ID4NCj4g PiAgIE1kZVBrZy9NZGVQa2cuZGVjICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgNCAr DQo+ID4gICBPdm1mUGtnL092bWZQa2cuZGVjICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAg MTkgKw0KPiA+ICAgVWVmaUNwdVBrZy9VZWZpQ3B1UGtnLmRlYyAgICAgICAgICAgICAgICAgICAg IHwgICA1ICsNCj4gPiAgIE92bWZQa2cvQW1kU2V2L0FtZFNldlg2NC5kc2MgICAgICAgICAgICAg ICAgICB8ICAgOCArLQ0KPiA+ICAgT3ZtZlBrZy9CaHl2ZS9CaHl2ZVg2NC5kc2MgICAgICAgICAg ICAgICAgICAgIHwgICA1ICstDQo+ID4gICBPdm1mUGtnL092bWZQa2dJYTMyLmRzYyAgICAgICAg ICAgICAgICAgICAgICAgfCAgIDQgKw0KPiA+ICAgT3ZtZlBrZy9Pdm1mUGtnSWEzMlg2NC5kc2Mg ICAgICAgICAgICAgICAgICAgIHwgICA5ICstDQo+ID4gICBPdm1mUGtnL092bWZQa2dYNjQuZHNj ICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDggKy0NCj4gPiAgIE92bWZQa2cvT3ZtZlhlbi5k c2MgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgNSArLQ0KPiA+ICAgT3ZtZlBrZy9Pdm1m UGtnWDY0LmZkZiAgICAgICAgICAgICAgICAgICAgICAgIHwgICA2ICsNCj4gPiAgIE92bWZQa2cv QW1kU2V2RHhlL0FtZFNldkR4ZS5pbmYgICAgICAgICAgICAgICB8ICAgNyArDQo+ID4gICAuLi4v RHhlTWVtRW5jcnlwdFNldkxpYi5pbmYgICAgICAgICAgICAgICAgICAgfCAgIDMgKw0KPiA+ICAg Li4uL1BlaU1lbUVuY3J5cHRTZXZMaWIuaW5mICAgICAgICAgICAgICAgICAgIHwgICA3ICsNCj4g PiAgIC4uLi9TZWNNZW1FbmNyeXB0U2V2TGliLmluZiAgICAgICAgICAgICAgICAgICB8ICAgMyAr DQo+ID4gICBPdm1mUGtnL0xpYnJhcnkvVm1nRXhpdExpYi9TZWNWbWdFeGl0TGliLmluZiAgfCAg IDIgKw0KPiA+ICAgT3ZtZlBrZy9MaWJyYXJ5L1ZtZ0V4aXRMaWIvVm1nRXhpdExpYi5pbmYgICAg IHwgICAzICsNCj4gPiAgIE92bWZQa2cvUGxhdGZvcm1QZWkvUGxhdGZvcm1QZWkuaW5mICAgICAg ICAgICB8ICAgNyArDQo+ID4gICBPdm1mUGtnL1Jlc2V0VmVjdG9yL1Jlc2V0VmVjdG9yLmluZiAg ICAgICAgICAgfCAgIDUgKw0KPiA+ICAgT3ZtZlBrZy9TZWMvU2VjTWFpbi5pbmYgICAgICAgICAg ICAgICAgICAgICAgIHwgICA0ICsNCj4gPiAgIFVlZmlDcHVQa2cvTGlicmFyeS9NcEluaXRMaWIv RHhlTXBJbml0TGliLmluZiB8ICAgNiArLQ0KPiA+ICAgVWVmaUNwdVBrZy9MaWJyYXJ5L01wSW5p dExpYi9QZWlNcEluaXRMaWIuaW5mIHwgICA2ICstDQo+ID4gICAuLi4vSW5jbHVkZS9Db25maWRl bnRpYWxDb21wdXRpbmdHdWVzdEF0dHIuaCAgfCAgMjUgKw0KPiA+ICAgTWRlUGtnL0luY2x1ZGUv UmVnaXN0ZXIvQW1kL0doY2IuaCAgICAgICAgICAgIHwgICAyICstDQo+ID4gICAuLi4vR3VpZC9D b25maWRlbnRpYWxDb21wdXRpbmdTZXZTbnBCbG9iLmggICAgfCAgMzMgKysNCj4gPiAgIE92bWZQ a2cvSW5jbHVkZS9MaWJyYXJ5L01lbUVuY3J5cHRTZXZMaWIuaCAgICB8ICAyNiArDQo+ID4gICAu Li4vWDY0L1NucFBhZ2VTdGF0ZUNoYW5nZS5oICAgICAgICAgICAgICAgICAgfCAgMzYgKysNCj4g PiAgIC4uLi9CYXNlTWVtRW5jcnlwdFNldkxpYi9YNjQvVmlydHVhbE1lbW9yeS5oICB8ICAyNCAr DQo+ID4gICBPdm1mUGtnL1BsYXRmb3JtUGVpL1BsYXRmb3JtLmggICAgICAgICAgICAgICAgfCAg IDUgKw0KPiA+ICAgT3ZtZlBrZy9TZWMvQW1kU2V2LmggICAgICAgICAgICAgICAgICAgICAgICAg IHwgIDk1ICsrKysNCj4gPiAgIFVlZmlDcHVQa2cvTGlicmFyeS9NcEluaXRMaWIvTXBMaWIuaCAg ICAgICAgICB8IDEwMyArKysrDQo+ID4gICBPdm1mUGtnL0FtZFNldkR4ZS9BbWRTZXZEeGUuYyAg ICAgICAgICAgICAgICAgfCAgMjMgKw0KPiA+ICAgLi4uL0R4ZU1lbUVuY3J5cHRTZXZMaWJJbnRl cm5hbC5jICAgICAgICAgICAgIHwgIDI3ICsrDQo+ID4gICAuLi4vSWEzMi9NZW1FbmNyeXB0U2V2 TGliLmMgICAgICAgICAgICAgICAgICAgfCAgMTcgKw0KPiA+ICAgLi4uL1BlaU1lbUVuY3J5cHRT ZXZMaWJJbnRlcm5hbC5jICAgICAgICAgICAgIHwgIDI3ICsrDQo+ID4gICAuLi4vU2VjTWVtRW5j cnlwdFNldkxpYkludGVybmFsLmMgICAgICAgICAgICAgfCAgMTkgKw0KPiA+ICAgLi4uL1g2NC9E eGVTbnBTeXN0ZW1SYW1WYWxpZGF0ZS5jICAgICAgICAgICAgIHwgIDQwICsrDQo+ID4gICAuLi4v WDY0L1BlaUR4ZVZpcnR1YWxNZW1vcnkuYyAgICAgICAgICAgICAgICAgfCAxNjcgKysrKysrLQ0K PiA+ICAgLi4uL1g2NC9QZWlTbnBTeXN0ZW1SYW1WYWxpZGF0ZS5jICAgICAgICAgICAgIHwgMTI3 ICsrKysrDQo+ID4gICAuLi4vWDY0L1NlY1NucFN5c3RlbVJhbVZhbGlkYXRlLmMgICAgICAgICAg ICAgfCAgODIgKysrKw0KPiA+ICAgLi4uL1g2NC9TbnBQYWdlU3RhdGVDaGFuZ2VJbnRlcm5hbC5j ICAgICAgICAgIHwgMjk0ICsrKysrKysrKysrKw0KPiA+ICAgT3ZtZlBrZy9MaWJyYXJ5L1ZtZ0V4 aXRMaWIvVm1nRXhpdFZjSGFuZGxlci5jIHwgNDQ0ICsrKysrKysrKysrKysrKystDQo+IC0NCj4g PiAgIE92bWZQa2cvUGxhdGZvcm1QZWkvQW1kU2V2LmMgICAgICAgICAgICAgICAgICB8IDIzMSAr KysrKysrKysNCj4gPiAgIE92bWZQa2cvUGxhdGZvcm1QZWkvTWVtRGV0ZWN0LmMgICAgICAgICAg ICAgICB8ICAgMiArDQo+ID4gICBPdm1mUGtnL1NlYy9BbWRTZXYuYyAgICAgICAgICAgICAgICAg ICAgICAgICAgfCAyOTggKysrKysrKysrKysrDQo+ID4gICBPdm1mUGtnL1NlYy9TZWNNYWluLmMg ICAgICAgICAgICAgICAgICAgICAgICAgfCAxNTggKy0tLS0tLQ0KPiA+ICAgVWVmaUNwdVBrZy9M aWJyYXJ5L01wSW5pdExpYi9BbWRTZXYuYyAgICAgICAgIHwgMjYwICsrKysrKysrKysNCj4gPiAg IFVlZmlDcHVQa2cvTGlicmFyeS9NcEluaXRMaWIvRHhlTXBMaWIuYyAgICAgICB8ICAxNiArLQ0K PiA+ICAgVWVmaUNwdVBrZy9MaWJyYXJ5L01wSW5pdExpYi9JYTMyL0FtZFNldi5jICAgIHwgIDcw ICsrKw0KPiA+ICAgVWVmaUNwdVBrZy9MaWJyYXJ5L01wSW5pdExpYi9NcExpYi5jICAgICAgICAg IHwgMzQ3ICsrKysrLS0tLS0tLS0tDQo+ID4gICBVZWZpQ3B1UGtnL0xpYnJhcnkvTXBJbml0TGli L1BlaU1wTGliLmMgICAgICAgfCAgIDQgKy0NCj4gPiAgIFVlZmlDcHVQa2cvTGlicmFyeS9NcElu aXRMaWIvWDY0L0FtZFNldi5jICAgICB8IDI2MSArKysrKysrKysrDQo+ID4gICBPdm1mUGtnL0Z2 bWFpbkNvbXBhY3RTY3JhdGNoRW5kLmZkZi5pbmMgICAgICAgfCAgIDUgKw0KPiA+ICAgT3ZtZlBr Zy9SZXNldFZlY3Rvci9JYTE2L1Jlc2V0VmVjdG9yVnRmMC5hc20gIHwgIDE0ICsNCj4gPiAgIE92 bWZQa2cvUmVzZXRWZWN0b3IvSWEzMi9BbWRTZXYuYXNtICAgICAgICAgICB8ICA4NiArKystDQo+ ID4gICBPdm1mUGtnL1Jlc2V0VmVjdG9yL1Jlc2V0VmVjdG9yLm5hc21iICAgICAgICAgfCAgMTgg Kw0KPiA+ICAgT3ZtZlBrZy9SZXNldFZlY3Rvci9YNjQvT3ZtZlNldk1ldGFkYXRhLmFzbSAgIHwg IDc0ICsrKw0KPiA+ICAgVWVmaUNwdVBrZy9MaWJyYXJ5L01wSW5pdExpYi9NcEVxdS5pbmMgICAg ICAgIHwgICAyICsNCj4gPiAgIFVlZmlDcHVQa2cvTGlicmFyeS9NcEluaXRMaWIvWDY0L0FtZFNl di5uYXNtICB8IDIwMCArKysrKysrKw0KPiA+ICAgVWVmaUNwdVBrZy9MaWJyYXJ5L01wSW5pdExp Yi9YNjQvTXBGdW5jcy5uYXNtIHwgMTAwICstLS0NCj4gPiAgIDU5IGZpbGVzIGNoYW5nZWQsIDMz NjAgaW5zZXJ0aW9ucygrKSwgNTI4IGRlbGV0aW9ucygtKQ0KPiA+ICAgY3JlYXRlIG1vZGUgMTAw NjQ0IE1kZVBrZy9JbmNsdWRlL0NvbmZpZGVudGlhbENvbXB1dGluZ0d1ZXN0QXR0ci5oDQo+ID4g ICBjcmVhdGUgbW9kZSAxMDA2NDQNCj4gT3ZtZlBrZy9JbmNsdWRlL0d1aWQvQ29uZmlkZW50aWFs Q29tcHV0aW5nU2V2U25wQmxvYi5oDQo+ID4gICBjcmVhdGUgbW9kZSAxMDA2NDQNCj4gT3ZtZlBr Zy9MaWJyYXJ5L0Jhc2VNZW1FbmNyeXB0U2V2TGliL1g2NC9TbnBQYWdlU3RhdGVDaGFuZ2UuaA0K PiA+ICAgY3JlYXRlIG1vZGUgMTAwNjQ0IE92bWZQa2cvU2VjL0FtZFNldi5oDQo+ID4gICBjcmVh dGUgbW9kZSAxMDA2NDQNCj4gT3ZtZlBrZy9MaWJyYXJ5L0Jhc2VNZW1FbmNyeXB0U2V2TGliL1g2 NC9EeGVTbnBTeXN0ZW1SYW1WYWxpZGF0ZS5jDQo+ID4gICBjcmVhdGUgbW9kZSAxMDA2NDQNCj4g T3ZtZlBrZy9MaWJyYXJ5L0Jhc2VNZW1FbmNyeXB0U2V2TGliL1g2NC9QZWlTbnBTeXN0ZW1SYW1W YWxpZGF0ZS5jDQo+ID4gICBjcmVhdGUgbW9kZSAxMDA2NDQNCj4gT3ZtZlBrZy9MaWJyYXJ5L0Jh c2VNZW1FbmNyeXB0U2V2TGliL1g2NC9TZWNTbnBTeXN0ZW1SYW1WYWxpZGF0ZS5jDQo+ID4gICBj cmVhdGUgbW9kZSAxMDA2NDQNCj4gT3ZtZlBrZy9MaWJyYXJ5L0Jhc2VNZW1FbmNyeXB0U2V2TGli L1g2NC9TbnBQYWdlU3RhdGVDaGFuZ2VJbnRlcm5hbC5jDQo+ID4gICBjcmVhdGUgbW9kZSAxMDA2 NDQgT3ZtZlBrZy9TZWMvQW1kU2V2LmMNCj4gPiAgIGNyZWF0ZSBtb2RlIDEwMDY0NCBVZWZpQ3B1 UGtnL0xpYnJhcnkvTXBJbml0TGliL0FtZFNldi5jDQo+ID4gICBjcmVhdGUgbW9kZSAxMDA2NDQg VWVmaUNwdVBrZy9MaWJyYXJ5L01wSW5pdExpYi9JYTMyL0FtZFNldi5jDQo+ID4gICBjcmVhdGUg bW9kZSAxMDA2NDQgVWVmaUNwdVBrZy9MaWJyYXJ5L01wSW5pdExpYi9YNjQvQW1kU2V2LmMNCj4g PiAgIGNyZWF0ZSBtb2RlIDEwMDY0NCBPdm1mUGtnL1Jlc2V0VmVjdG9yL1g2NC9Pdm1mU2V2TWV0 YWRhdGEuYXNtDQo+ID4gICBjcmVhdGUgbW9kZSAxMDA2NDQgVWVmaUNwdVBrZy9MaWJyYXJ5L01w SW5pdExpYi9YNjQvQW1kU2V2Lm5hc20NCj4gPg0KPiANCj4gDQo+IA0KPiANCg0K