From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by mx.groups.io with SMTP id smtpd.web12.1186.1654041418665057696 for ; Tue, 31 May 2022 16:56:59 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=Wo+Pjnvr; spf=pass (domain: intel.com, ip: 134.134.136.20, mailfrom: michael.d.kinney@intel.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1654041418; x=1685577418; h=from:to:subject:date:message-id:references:in-reply-to: content-transfer-encoding:mime-version; bh=XRBEvhaaglRwX7YL7LF/O78Cmxjzuq+4LM5DvhMN/LQ=; b=Wo+Pjnvr/1iJf4oMEF32by1VayZZYG0J1kbiXF2rsBtBl8GShH8izS/k wD2IhVH32nxTfnIfwwR590yFBjRHO25xGjiBBGph1mztu+d3oV0V2fWIs dSqD5NnWMwi06oixBCjUhlXz1Dtr/sAr87yTOfSa7Xp/ovvndWRMGAYR4 Cxqsza4NEnAhZKQKbl2cqrjqXrUG+bvDjtYSEoY2Qjyyi1dj+7xqJhq1M p7Mhtv1ZQ4AsCQkFKucESouYItFN6DmCqXfb87O/r8ZyaWU+H5rtcZeBg uh9VyVwrJsV+oYDDVlOLda+iLwpEwPz7ifBmUP1QKuZaFDPSIQWGWjjWR A==; X-IronPort-AV: E=McAfee;i="6400,9594,10364"; a="263057034" X-IronPort-AV: E=Sophos;i="5.91,266,1647327600"; d="scan'208";a="263057034" Received: from fmsmga007.fm.intel.com ([10.253.24.52]) by orsmga101.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 31 May 2022 16:56:57 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.91,266,1647327600"; d="scan'208";a="581322286" Received: from orsmsx603.amr.corp.intel.com ([10.22.229.16]) by fmsmga007.fm.intel.com with ESMTP; 31 May 2022 16:56:57 -0700 Received: from orsmsx612.amr.corp.intel.com (10.22.229.25) 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.2308.27; Tue, 31 May 2022 16:56:56 -0700 Received: from orsmsx608.amr.corp.intel.com (10.22.229.21) by ORSMSX612.amr.corp.intel.com (10.22.229.25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.27; Tue, 31 May 2022 16:56:55 -0700 Received: from ORSEDG601.ED.cps.intel.com (10.7.248.6) 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; Tue, 31 May 2022 16:56:55 -0700 Received: from NAM11-CO1-obe.outbound.protection.outlook.com (104.47.56.176) 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.2308.27; Tue, 31 May 2022 16:56:55 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=OA0TTVw0jtR0afCuAEa3z7Ce0dAcHiPjwKUCnyMaSDrwx+Cf7tH2WTGjpyEdyC+PQXtNZH1ojAlMxT03MkE6h5Q5JINekS87sovksm26KlU9xR5RkwIMOzCYxpeH3cPt4SyC5btHozacupw9F00iryUU03AeA/NmeNngmyisnnndYndXeckSNzRrXIXCMLU9sbiUgDKhHUCl15WtB3lgubLxKKAxyDg9scTIyqRhcC7dJHxzKvPF2dY1CQWul/BzAylddzcoed7qCwAlzDyKha9/L/gy3OzQwAeIQIk56SshU+uI5mHLu1LML1Y8Y1/C87eQLEXGWB65p2L5cuDvgQ== 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=XRBEvhaaglRwX7YL7LF/O78Cmxjzuq+4LM5DvhMN/LQ=; b=XU+GbIDoQsPa2ZPScb9T8q+e6zSFBKxItWD9g8hrd3rRvcBR23n8waZzOqj0TdgpZg2perYUPZyv2fpELSPgjwx45+T7/qjT+o3Poux024IF6DtbPjzUFMMSQRl+XrOCs/Ko2lxCbmVAv2KuXwD5tsvfhZX6lOe60FWNHIVwiLlLzH2YihGeKfqDkcyCbbc69YQntCgtwMEnINfk1H4KQTggql0eF4PPcK0IJQgIyz3Z7pjCyiY+28Pp/rh02oZgRI6bQ1IgFeOdU52rXOO0+DIHMP/0xd6ZELdpoRFjVlsPJW9RD9Tzcy4SLiwz3U1zNTKljs+FRZv1oDM7yFOtLQ== 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 CO1PR11MB4929.namprd11.prod.outlook.com (2603:10b6:303:6d::19) by CY5PR11MB6186.namprd11.prod.outlook.com (2603:10b6:930:26::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5314.12; Tue, 31 May 2022 23:56:54 +0000 Received: from CO1PR11MB4929.namprd11.prod.outlook.com ([fe80::f49d:422c:8c13:1c5f]) by CO1PR11MB4929.namprd11.prod.outlook.com ([fe80::f49d:422c:8c13:1c5f%5]) with mapi id 15.20.5314.012; Tue, 31 May 2022 23:56:54 +0000 From: "Michael D Kinney" To: "devel@edk2.groups.io" , "Jayaprakash, N" , "Kinney, Michael D" Subject: Re: [edk2-devel] [edk2-libc Patch 1/1] AppPkg\Applications\Python\Python-3.6.8: GCC tool chain support Thread-Topic: [edk2-devel] [edk2-libc Patch 1/1] AppPkg\Applications\Python\Python-3.6.8: GCC tool chain support Thread-Index: AQHYaudohfgWX8r7bUCc4A6XBNyUQa05ubcAgAAEXgA= Date: Tue, 31 May 2022 23:56:54 +0000 Message-ID: References: <20220518184222.2153-1-n.jayaprakash@intel.com> <20220518184222.2153-2-n.jayaprakash@intel.com> In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-reaction: no-action dlp-version: 11.6.500.17 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: 35b2625a-c161-4f1b-84d4-08da43613d0e x-ms-traffictypediagnostic: CY5PR11MB6186:EE_ x-microsoft-antispam-prvs: x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: zomXbMAiIfqj8QAPbLmWzl19mjafbhPYe5pbq3Am5womL4JWJObPJW76Zft9lVerAbIXjeAl/KBxFXc3xBUWypxniPHP8YnqADL+goNa/4Wpef5bWqadxmiZdnVAKeQ/mUd1F5L2ijUQWgrCK1lAWuc1M28foLnk3evd0KRe1oFiyLJ8Snx52tjl/Y4nCJVZNQTDFWZkcux2N55OsM2WjYvJF43ttF4qIEeE47SModb/2+lURi911bCKGxliGUX5t7KYRS7VpXz0ww6RtHTuHkjhSvYmivpkwgSoQxnLUMLa8ccFK8KOQHq+MsO1HdWhxjXgaKETAtDehB21LqfdanI0agnL0Nm9g2ER+Xm8KuFkUvh2cppKD1gVM1/jCSCx/3jAqX8ECfK1ysraFNB9mWaf1w+4GsyqXFcOjDfXSWANQpDyb6dNo7zxopkuwKiBKSfvvdufStQFSm6qgClZeo26JPyXZ45zDRZ3okRwbmLVVjLMnKmY4Db+8ZkoaOfPgSMIDq4ZCJFdF+/iGlmrVjp0QQw8w+lejuF5qfhGyknUI6V5JDie9L+/EmCyCXjobTE7GdXwFIoqbs9y6CZFrfytpDUlz5k7Zx2EPuhWRAZ6WkzSk3M3zbU5K8SAJpTsdjIvM+8bC6NpmHHuRxCA0mJcfLfplpI0u7BctY4mNuY4lPio43ksSrBO6BGABho7BNAY8LZcNKUUq+mUfu0qGvNeswuZRTFiy3o56cfyWm5eVsIZkVs+cu8Rb4cA3e8oovGC75yZJAl97hgvs+QfMutWMDcojy7Hu7Nd9I8DWDh3mhgxT1Dkj36OLaJa7131dF45tZ3QT1uEoUbqVvwztqZTB9YZv0JuljKqW8I+xCk= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO1PR11MB4929.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230001)(366004)(53546011)(7696005)(6506007)(86362001)(26005)(38070700005)(2906002)(66556008)(110136005)(19627235002)(8676002)(38100700002)(64756008)(76116006)(66476007)(66946007)(316002)(66446008)(71200400001)(55016003)(30864003)(83380400001)(186003)(9686003)(2940100002)(966005)(33656002)(5660300002)(82960400001)(122000001)(8936002)(508600001)(52536014)(545624005)(579004);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?eFR2ZHVUMUEyRFFNOXI3bXlYQUUrZ1R3aTY4aGFwYzlJWUpSa1ZxbmVSYXJl?= =?utf-8?B?UWZrMjdSMFFoMXdZaWxDV1BqTE5wRmQrRHVuTGVUd3pqNEdlQ2hMUWhlRDMw?= =?utf-8?B?TDN0ZDlKVDZXQlFCcERnbHJUSTJIS1NUQkx2cU4xbmFxaldtOU52bkpHNzhT?= =?utf-8?B?SzYrOG9UdjEway96dWlneGErSXpvYmU3aXVGV3ozTUt4Uml6dkIzeDIyN01q?= =?utf-8?B?T2s0THFZajFtY1UrZnNHdytmbm9hK2ppa3A0dExrcUc0TFVPWHBJUUIzKzdn?= =?utf-8?B?dU85N1UxSnc0VUZqVUN0TjVScnBiSVRtL2F3YWV6VVRkUDB1Nitoa0crWVQ0?= =?utf-8?B?L1VxN2dsREJtNEVwR3N0ZEhKaXgwRFVWYVpoSjVYcC9nU2NhVENyWEUrQWJn?= =?utf-8?B?M0FYK25ha1ZQeUtGVDZ4M0l5SENqNWdQVmVGcHVpUC9VbGs1cDdKSVYvSU42?= =?utf-8?B?ZGE4d01sMzYweFlHVmhVd1NQZnhyOEJxV1QvQ2pCSW1ibENDS1pZMEJjQ0VO?= =?utf-8?B?aE1DdWphNk5Nc0FLbWtYcmlSRFNWem9RU2VnVHpRQUtEaHhQaHJsSkVxeWVq?= =?utf-8?B?enM4NnVYL1BmRUh4cGp3ZURIYzE2Tm5RbVJadVEyNFplY0tIcFBRcGd4WjhS?= =?utf-8?B?QTBlQjltam5LaWdnZk41QmdVR2ExYUdsWHYvclY3Z1MwRUVzZ09ZbEp0Y2V0?= =?utf-8?B?WjhSbm91ME5wazNianZCM3E2ZlpRaVNhQXVFcmk5cloyTVZGVHZ3cmJZaDZL?= =?utf-8?B?eTZoZlNabTg2WEdHMmRHUlB2cWN6RGhMZllzZkg1dkp2TnFnL2VjblN2ZjIv?= =?utf-8?B?eHVoUWJrNzhseCtYSkxkZnZOdkFDNHMrZElQclhOeVhTa1VJM2tSMmg4S2FV?= =?utf-8?B?SExYZHhJM3Z4TENOeDdEaVo2ZGdUendtVWtVQzFmTnY2RmlvQ1ZDSmN0aUtJ?= =?utf-8?B?MGxaa1dMdkJwcWpQaDBXV21aY0lGSnkxY2Z2Q3JsQXhpa25pUHlTK2lBeGpn?= =?utf-8?B?T0lyZlRwT01lZ3JnK21abE5VdFBhcUJYUkFFWWkvZTFjeS9aU0xsUzZMbENU?= =?utf-8?B?SW9VT2FuUlYyOW9laUxPMXpjdCtRQnkzNTNCNlVzVnJVOWxkVlVmWWk5cVJy?= =?utf-8?B?TzZNT3B0Z1FtYXhyWDc2TSt5VnR5QmswL0FHV3FhalhjRldqeGJ1UUxhM2tt?= =?utf-8?B?Z1kxa0cyYkloYU5CYnNjaWRYWU9lQk5NU1RGRU1oUkpGYTE1ZklzQ1FRN0JN?= =?utf-8?B?bGdHSllqeFFPdmVuWGlDZ0RuK2lTUm1vUHpkcWhBTUVUVUk4ejRHNWF2VFNz?= =?utf-8?B?WGxlekdHZEpCb3RncW9hL3ZSQjBMajRaekkvb0dyRHIvT1JwMExaKzE2MzFU?= =?utf-8?B?SHJvdnJ5bEhteHBteGs0S283RGxlZjQ3U0ZUTm1BRVp1WG5qVVdqeDBHcjFG?= =?utf-8?B?WEh3UnB6akEzbnNPeURxWjdpTHA0d1VSNGF4Q3ZKVFBmTWRqcHNkaGxEdEp1?= =?utf-8?B?TWl6K3VoRHZrUTlOOUc0QnBSL3ZnaE9abyt0ckxHWjkyRnBOeTZRYnVrNkpZ?= =?utf-8?B?QWxSSElucWlkczZBNG9RelR0VExjWkhuM3QvZGFNSWkzOHVjT2RpNVFJeUUr?= =?utf-8?B?Wmg2Yi8rYUU3Rkt1QWNkbUpmNXZkZUlyWms4SW81U3NjeWpzdjB2Q0tlYUxS?= =?utf-8?B?dk1HNmcwYnlpR1NJRXlZaHVxdWE1OU0xRjZBQlp5NmZwYXJjaEZKVlRTNW90?= =?utf-8?B?MlVBVG1KZzladGc3YmdwTWVOWFR1OGk5YnU1djl6aW9lQ1pvcHpVQ3ZtVS80?= =?utf-8?B?dVVRMXZkdERvdXJHM3dzQzZNK05CLzM1Y0ROd2haQ2RMOFlnVWpjbkJ6WWdn?= =?utf-8?B?OGlMM1RaV0ZFMnJsVGIvVHhjZFJ5WFRxVXRkRXVnb01SK1h5L1VTOVF5ZytS?= =?utf-8?B?alZPREMvbkZiK3NRVFBUZWFmYzNvRzJZUFpQejRWcXpEM3FJS2d6eXJwWmFW?= =?utf-8?B?TGtQbndWenVVa3JXZjJLU3Niejk2bnVqTk1kUlNLMjcyRVhZNnVvUXczZkdt?= =?utf-8?B?YkVsaWJkSEp2ZXVDZDZxVWlCeHFXdXB2MURqNG1laXc4RmtmbmZxclZGUjVB?= =?utf-8?B?b3UwZ3BrWnZLdWp5UGlvQ2s2ckxsMFdLZHJLZkFxV3RqRnUvVzYrVnhZOGFn?= =?utf-8?B?ano3RkY2cDdzTEpkb2tlaGxzQ3dKTWt2Mlh5TEdjRmlQRXVObTlDNlR2REZW?= =?utf-8?B?dE54eDJ2d2dMcHpqbk5TSVZCdnF1Qkp0VWxlQjNBZHFFZ25rcGp4WGNMMGpn?= =?utf-8?B?b08xWVVRdzNiT2toNEVQQXBjUDJ3UnZJSmxIdnJmc1k0M1RLTHNWNWFZQjNM?= =?utf-8?Q?+L8Q/BDBS1PGYOLQ=3D?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CO1PR11MB4929.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 35b2625a-c161-4f1b-84d4-08da43613d0e X-MS-Exchange-CrossTenant-originalarrivaltime: 31 May 2022 23:56:54.1285 (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: lE1CUcEQqTQcI9DmDfmpFmxgmbJ3oP6g8AZikzTxU+scJIrqjZU9jTY+fsk+VU35WEKN8SlsyNEuzf7YoudSV1XypN3SFkmqiiEV9jvIEWY= X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY5PR11MB6186 Return-Path: michael.d.kinney@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 cHVzaGVkIGFzIDcxZGFiNGIwZWFhNDIxNDU4NmI5ZTAzYzFjNDJjNzU2MjA5NTM1M2MNCg0KTWlr ZQ0KDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IEtpbm5leSwgTWljaGFl bCBEIDxtaWNoYWVsLmQua2lubmV5QGludGVsLmNvbT4NCj4gU2VudDogVHVlc2RheSwgTWF5IDMx LCAyMDIyIDQ6NDUgUE0NCj4gVG86IGRldmVsQGVkazIuZ3JvdXBzLmlvOyBKYXlhcHJha2FzaCwg TiA8bi5qYXlhcHJha2FzaEBpbnRlbC5jb20+OyBLaW5uZXksIE1pY2hhZWwgRCA8bWljaGFlbC5k Lmtpbm5leUBpbnRlbC5jb20+DQo+IFN1YmplY3Q6IFJFOiBbZWRrMi1kZXZlbF0gW2VkazItbGli YyBQYXRjaCAxLzFdIEFwcFBrZ1xBcHBsaWNhdGlvbnNcUHl0aG9uXFB5dGhvbi0zLjYuODogR0ND IHRvb2wgY2hhaW4gc3VwcG9ydA0KPiANCj4gUmV2aWV3ZWQtYnk6IE1pY2hhZWwgRCBLaW5uZXkg PG1pY2hhZWwuZC5raW5uZXlAaW50ZWwuY29tPg0KPiANCj4gSSBkbyBzZWUgdGhhdCB0aGVyZSBh cmUgMyBkb2N1bWVudGF0aW9uIGZpbGVzIGluIFB5dGhvbi0zLjYuOC4NCj4gDQo+IE9uZSBpcyBm cm9tIHRoZSBQeXRob24gcHJvamVjdC4gIFRoZSBvdGhlciAyIGxvb2sgbGlrZSB0aGV5IGJvdGgN Cj4gY29udGFpbiBFREsgSUkgYnVpbGQgaW5zdHJ1Y3Rpb25zLiAgUGVyaGFwcyB0aGVzZSBzaG91 bGQgYmUgY29tYmluZWQgaW50bw0KPiBhIHNpbmdsZSBmaWxlIGZvciBFREsgSUkgYnVpbGRzIGZv ciBhbGwgc3VwcG9ydGVkIHRvb2wgY2hhaW5zIGFuZCBhcmNocy4NCj4gDQo+IE1pa2UNCj4gDQo+ ID4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPiBGcm9tOiBkZXZlbEBlZGsyLmdyb3Vw cy5pbyA8ZGV2ZWxAZWRrMi5ncm91cHMuaW8+IE9uIEJlaGFsZiBPZiBKYXlhcHJha2FzaCwgTg0K PiA+IFNlbnQ6IFdlZG5lc2RheSwgTWF5IDE4LCAyMDIyIDExOjQyIEFNDQo+ID4gVG86IGRldmVs QGVkazIuZ3JvdXBzLmlvDQo+ID4gU3ViamVjdDogW2VkazItZGV2ZWxdIFtlZGsyLWxpYmMgUGF0 Y2ggMS8xXSBBcHBQa2dcQXBwbGljYXRpb25zXFB5dGhvblxQeXRob24tMy42Ljg6IEdDQyB0b29s IGNoYWluIHN1cHBvcnQNCj4gPg0KPiA+ICAgIFJFRjogaHR0cHM6Ly9idWd6aWxsYS50aWFub2Nv cmUub3JnL3Nob3dfYnVnLmNnaT9pZD0zNzc5DQo+ID4NCj4gPiAgICBUaGlzIGNvbW1pdCBjb250 YWlucyB0aGUgY2hhbmdlcyBtYWRlIHRvIFB5dGhvbiBpbnRlcnByZXRlcg0KPiA+ICAgIDMuNi44 IHRvIGNyb3NzIGNvbXBpbGUgdXNpbmcgdGhlIEdDQyB0b29sIGNoYWluIG9uIFVidW50dSAyMC4w NCBMVFMNCj4gPiAgICBzeXN0ZW0gZm9yIFVFRkkuIFRoZSBjdHlwZXMgbW9kdWxlIGhhcyBiZWVu IGV4Y2x1ZGVkIGZyb20gR0NDIGNvbXBpbGF0aW9uIGFzIGl0IHJlcXVpcmVzDQo+ID4gICAgYWRk aXRpb25hbCBwb3J0aW5nIHdvcmsgdG8gdXNlIEdDQyB0b29sIGNoYWluIHN1cHBvcnQgZm9yIFVF RkkgZW52aXJvbm1lbnQuDQo+ID4gICAgQWRkZWQgR0NDIENvbXBpbGF0aW9uIHN0ZXBzIGFzIEJL TSBkb2N1bWVudCB0byBmYWNpbGl0YXRlIHRoZSBlbnZpcm9ubWVudCBzZXR1cCBhbmQNCj4gPiAg ICBjb21waWxhdGlvbiBvbiBMaW51eCB1c2luZyBHQ0MgdG9vbCBjaGFpbi4gQmVzaWRlcyB0aGlz IHByb3ZpZGVkIGEgc2hlbGwgc2NyaXB0IHRvDQo+ID4gICAgZ2VuZXJhdGUgdGhlIHVzYWJsZSBQ eXRob24gVUVGSSBwYWNrYWdlIHdpdGggYWxsIHRoZSBkZXBlbmRlbmNpZXMgdGFrZW4gZnJvbSB0 aGUNCj4gPiAgICBidWlsZCBlbnZpcm9ubWVudC4NCj4gPg0KPiA+ICAgIENjOiBSZWJlY2NhIENy YW4gPHJlYmVjY2FAbnV2aWFpbmMuY29tPg0KPiA+ICAgIENjOiBNaWNoYWVsIEQgS2lubmV5IDxt aWNoYWVsLmQua2lubmV5QGludGVsLmNvbT4NCj4gPiAgICBTaWduZWQtb2ZmLWJ5OiBKYXlhcHJh a2FzaCBOIDxuLmpheWFwcmFrYXNoQGludGVsLmNvbT4NCj4gPiAtLS0NCj4gPiAgLi4uL1B5dGhv bi0zLjYuOC9HQ0NDb21waWxhdGlvbkJLTXMucnN0ICAgICAgIHwgMTkzICsrKysrKysrKysrKysr KysrKw0KPiA+ICAuLi4vUHlNb2QtMy42LjgvSW5jbHVkZS9weWNvbmZpZy5oICAgICAgICAgICAg fCAgIDIgKy0NCj4gPiAgLi4uL1B5dGhvbi0zLjYuOC9QeU1vZC0zLjYuOC9Nb2R1bGVzL2NvbmZp Zy5jIHwgICA3ICstDQo+ID4gIC4uLi9QeU1vZC0zLjYuOC9Nb2R1bGVzL2dldHBhdGguYyAgICAg ICAgICAgICB8ICAgMiArLQ0KPiA+ICAuLi4vUHl0aG9uL1B5dGhvbi0zLjYuOC9QeXRob24zNjgu aW5mICAgICAgICAgfCAgMjEgKy0NCj4gPiAgLi4uL1B5dGhvbi0zLjYuOC9jcmVhdGVfcHl0aG9u MzY4X3BrZy5zaCAgICAgIHwgMTAwICsrKysrKysrKw0KPiA+ICA2IGZpbGVzIGNoYW5nZWQsIDMx MiBpbnNlcnRpb25zKCspLCAxMyBkZWxldGlvbnMoLSkNCj4gPiAgY3JlYXRlIG1vZGUgMTAwNjQ0 IEFwcFBrZy9BcHBsaWNhdGlvbnMvUHl0aG9uL1B5dGhvbi0zLjYuOC9HQ0NDb21waWxhdGlvbkJL TXMucnN0DQo+ID4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBBcHBQa2cvQXBwbGljYXRpb25zL1B5dGhv bi9QeXRob24tMy42LjgvY3JlYXRlX3B5dGhvbjM2OF9wa2cuc2gNCj4gPg0KPiA+IGRpZmYgLS1n aXQgYS9BcHBQa2cvQXBwbGljYXRpb25zL1B5dGhvbi9QeXRob24tMy42LjgvR0NDQ29tcGlsYXRp b25CS01zLnJzdCBiL0FwcFBrZy9BcHBsaWNhdGlvbnMvUHl0aG9uL1B5dGhvbi0NCj4gPiAzLjYu OC9HQ0NDb21waWxhdGlvbkJLTXMucnN0DQo+ID4gbmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4gPiBp bmRleCAwMDAwMDAwLi5lZDVmY2JlDQo+ID4gLS0tIC9kZXYvbnVsbA0KPiA+ICsrKyBiL0FwcFBr Zy9BcHBsaWNhdGlvbnMvUHl0aG9uL1B5dGhvbi0zLjYuOC9HQ0NDb21waWxhdGlvbkJLTXMucnN0 DQo+ID4gQEAgLTAsMCArMSwxOTMgQEANCj4gPiArMS4gSW50cm9kdWN0aW9uDQo+ID4gKy0tLS0t LS0tLS0tLS0tLQ0KPiA+ICtUaGlzIGlzIGEgQmVzdC1Lbm93biBNZXRob2RzIGRvY3VtZW50IGNh cHR1cmluZyB0aGUgZGV0YWlscyBvZiBidWlsZCBlbnZpcm9ubWVudCBzZXR1cCBmb3IgY29tcGls aW5nIHRoZSBQeXRob24gVUVGSQ0KPiA+ICtpbnRlcnByZXRlciB2ZXJzaW9uIDMuNi44IHVzaW5n IEdDQyB0b29sIGNoYWluIG9uIExpbnV4IGJhc2VkIG9wZXJhdGluZyBzeXN0ZW1zLiBUaGVzZSBC S01zIGhhdmUgYmVlbiB0ZXN0ZWQgd2l0aCBXU0wyDQo+ID4gKyhXaW5kb3dzIFN1YnN5c3RlbSBm b3IgTGludXggMikgYmFzZWQgVWJ1bnR1IDIwLjA0IExUUyBlbnZpcm9ubWVudCBvbiBXaW5kb3dz IDEwLiBPbmx5IDY0LWJpdCBidWlsZHMgYXJlIHBvc3NpYmxlIGR1ZQ0KPiA+ICt0byBhIGxpbWl0 YXRpb24gaW4gdGhlIExpYkMgc3VwcG9ydCBmb3IgR0NDIGNvbXBpbGVyIHRvb2wgY2hhaW4gb24g VUVGSS4gSWYgeW91IGFyZSB3b3JraW5nIG9uIGEgVWJ1bnR1IDIwLjA0IExUUyBzeXN0ZW0NCj4g PiAreW91IG1heSBza2lwIHRoZSBzZWN0aW9ucyAxLjEgYW5kIDEuMg0KPiA+ICsNCj4gPiArDQo+ ID4gKzEuMS4gIFdTTDIgSW5zdGFsbGF0aW9uIG9uIFdpbmRvd3MgMTAgT1MNCj4gPiArLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiA+ICsNCj4gPiArVGhlIFdTTDIg ZW52aXJvbm1lbnQgY2FuIGJlIHNldHVwIGJ5IGZvbGxvd2luZyB0aGUgaW5zdHJ1Y3Rpb25zIGdp dmVuIGluIHRoZSBiZWxvdyB3ZWJwYWdlDQo+ID4gK2h0dHBzOi8vcHVyZWluZm90ZWNoLmNvbS9p bnN0YWxsLXdpbmRvd3Mtc3Vic3lzdGVtLWxpbnV4LTItd2luZG93cy0xMC8NCj4gPiArDQo+ID4g KzEuMi4gIEluc3RhbGxpbmcgVWJ1bnR1IDIwLjA0IExUUyBvbiBXU0wyIG9uIFdpbmRvd3MgMTAg T1MNCj4gPiArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLQ0KPiA+ICsNCj4gPiArVGhlIGluc3RydWN0aW9ucyBwcm92aWRlZCBpbiB0aGUg YmVsb3cgd2VicGFnZSB3aWxsIGhlbHAgaW4gaW5zdGFsbGluZyB0aGUgVWJ1bnR1IDIwLjA0IExU UyBPUyBlbnZpcm9ubWVudCBvbiBXU0wyIG9uIFdpbmRvd3MNCj4gMTANCj4gPiBPUy4NCj4gPiAr aHR0cHM6Ly93d3cuYWx0aXNjb25zdWx0aW5nLmNvbS9hdS9pbnNpZ2h0cy9pbnN0YWxsaW5nLXVi dW50dS1iYXNoLWZvci13aW5kb3dzLTEwLXdzbDItc2V0dXAvDQo+ID4gKw0KPiA+ICsyLiBFREsy IGJ1aWxkIGVudmlyb25tZW50IHNldHVwDQo+ID4gKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0NCj4gPiArDQo+ID4gK1lvdSBtYXkgZm9sbG93IHRoZSBpbnN0cnVjdGlvbnMgcHJvdmlk ZWQgaW4gdGhlIGJlbG93IHdlYnBhZ2UgdG8gc2V0dXAgdGhlIGVkazIgYnVpbGQgZW52aXJvbm1l bnQuDQo+ID4gKw0KPiA+ICtodHRwczovL2dpdGh1Yi5jb20vdGlhbm9jb3JlL3RpYW5vY29yZS5n aXRodWIuaW8vd2lraS9Vc2luZy1FREstSUktd2l0aC1OYXRpdmUtR0NDDQo+ID4gKw0KPiA+ICtG b3IgdGhlIHB1cnBvc2VzIG9mIGRlc2NyaWJpbmcgdGhlIEJLTXMsIHdlIHdpbGwgYmUgdXNpbmcg dGhlIGZvbGxvd2luZyBwYXRocy4NCj4gPiArRWRrMiBzb3VyY2UgdHJlZToJJEhPTUUvc3JjL2Vk azINCj4gPiArTmF0aXZlIEdDQyB2ZXJzaW9uID49NC54IGNvbXBpbGVyIGluc3RhbGxhdGlvbjoJ L3Vzci9iaW4vZ2NjDQo+ID4gK0ludGVsIEFTTCBDb21waWxlciBpbnN0YWxsYXRpb246CS91c3Iv YmluL2lhc2wNCj4gPiArDQo+ID4gKw0KPiA+ICsyLjEuICBJbnN0YWxsaW5nIGVzc2VudGlhbCBw YWNrYWdlcyBmb3IgR0NDIGNvbXBpbGVyDQo+ID4gKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4gPiArDQo+ID4gK0luc3RhbGwgdGhlIGJlbG93 IHJlcXVpcmVkIGVzc2VudGlhbCBwYWNrYWdlcyB0byBmYWNpbGl0YXRlIGNvbXBpbGF0aW9uIG9m IHRoZSBlZGsyIHJlcG8gdXNpbmcgR0NDIGNvbXBpbGVyIHRvb2wgY2hhaW4uDQo+ID4gK1NldmVy YWwgVWJ1bnR1IHBhY2thZ2VzIHdpbGwgYmUgbmVlZGVkIHRvIHNldCB1cCB0aGUgYnVpbGQgZW52 aXJvbm1lbnQgZm9yIEVESyBJSS4NCj4gPiArDQo+ID4gK1RoZSBmb2xsb3dpbmcgY29tbWFuZCB3 aWxsIGluc3RhbGwgYWxsIHJlcXVpcmVkIHBhY2thZ2VzOjoNCj4gPiArDQo+ID4gKyAgICAgICAg YmFzaCQgc3VkbyBhcHQtZ2V0IHVwZGF0ZQ0KPiA+ICsgICAgICAgIGJhc2gkIHN1ZG8gYXB0IGlu c3RhbGwgYnVpbGQtZXNzZW50aWFsDQo+ID4gKyAgICAgICAgYmFzaCQgc3VkbyBhcHQgaW5zdGFs bCB1dWlkLWRldiBpYXNsIGdpdCAgbmFzbSAgcHl0aG9uLWlzLXB5dGhvbjMNCj4gPiArDQo+ID4g K1BhY2thZ2UgLSBEZXNjcmlwdGlvbg0KPiA+ICsgICAgKiBidWlsZC1lc3NlbnRpYWwgOiBJbmZv cm1hdGlvbmFsIGxpc3Qgb2YgYnVpbGQtZXNzZW50aWFsIHBhY2thZ2VzDQo+ID4gKyAgICAqIHV1 aWQtZGV2IDogVW5pdmVyc2FsbHkgVW5pcXVlIElEIGxpYnJhcnkgKGhlYWRlcnMgYW5kIHN0YXRp YyBsaWJyYXJpZXMpDQo+ID4gKyAgICAqIGlhc2wgOiBJbnRlbCBBU0wgY29tcGlsZXIvZGVjb21w aWxlciAoYWxzbyBwcm92aWRlZCBieSBhY3BpY2EtdG9vbHMpDQo+ID4gKyAgICAqIGdpdCA6IFN1 cHBvcnQgZm9yIGdpdCByZXZpc2lvbiBjb250cm9sIHN5c3RlbQ0KPiA+ICsgICAgKiBuYXNtIDog R2VuZXJhbC1wdXJwb3NlIHg4NiBhc3NlbWJsZXINCj4gPiArICAgICogcHl0aG9uLWlzLXB5dGhv bjMJOiBVYnVudHUgMjAuMDQgcHl0aG9uIGNvbW1hbmQgaXMgJ3B5dGhvbjMnIGJ1dCBlZGsyIHRv b2xzIHVzZSAncHl0aG9uJw0KPiA+ICsNCj4gPiArT25jZSB0aGUgYWJvdmUgcGFja2FnZXMgYXJl IGluc3RhbGxlZCwgdGhlbiBmb2xsb3cgdGhlIGluc3RydWN0aW9ucyBpbiB0aGUgd2VicGFnZSB0 byBzZXR1cCB0aGUgcmVzdCBvZiB0aGUgYnVpbGQNCj4gPiArZW52aXJvbm1lbnQNCj4gPiAraHR0 cHM6Ly9naXRodWIuY29tL3RpYW5vY29yZS90aWFub2NvcmUuZ2l0aHViLmlvL3dpa2kvQ29tbW9u LWluc3RydWN0aW9ucw0KPiA+ICsNCj4gPiArDQo+ID4gKzIuMi4gIENsb25pbmcgZWRrMiBnaXQg cmVwbw0KPiA+ICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4gPiArDQo+ID4gK0dldCB0 aGUgZWRrMiBzb3VyY2UgdHJlZSB1c2luZyBHaXQgY29tbWFuZHMuDQo+ID4gK0V4ZWN1dGUgdGhl IGJlbG93IGNvbW1hbmRzIHRvIGNsb25lIHRoZSBlZGsyIGdpdCByZXBvOjoNCj4gPiArICAgICAg ICBiYXNoJCBta2RpciB+L3NyYw0KPiA+ICsgICAgICAgIGJhc2gkIGNkIH4vc3JjDQo+ID4gKyAg ICAgICAgYmFzaCQgZ2l0IGNsb25lIGh0dHBzOi8vZ2l0aHViLmNvbS90aWFub2NvcmUvZWRrMg0K PiA+ICsNCj4gPiArVGhpcyB3aWxsIGNyZWF0ZSBhIGZvbGRlciBuYW1lZCBlZGsyIGFzIGEgY2xv bmUgb2YgdGhlIGVkazIgZ2l0IHJlcG8uDQo+ID4gK0V4ZWN1dGUgdGhlIGJlbG93IGNvbW1hbmRz IHRvIGNoZWNrb3V0IC8gaW5pdGlhbGl6ZSBhbGwgdGhlIGdpdCBzdWJtb2R1bGVzOjoNCj4gPiAr ICAgICAgICBiYXNoJCBjZCB+L3NyYy9lZGsyDQo+ID4gKyAgICAgICAgYmFzaCQgZ2l0IHN1Ym1v ZHVsZSB1cGRhdGUgLS1pbml0DQo+ID4gKw0KPiA+ICtUaGUgYWJvdmUgY29tbWFuZCBpbml0aWFs aXplcyBhbGwgdGhlIHN1Ym1vZHVsZXMgaW4gdGhlIGdpdCByZXBvDQo+ID4gK1RoZSBiZWxvdyBj b21tYW5kcyBoZWxwIHRvIHNldHVwIHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZXMgcmVxdWlyZWQg Zm9yIGJ1aWxkaW5nIHRoZSBlZGsyIHJlcG86Og0KPiA+ICsNCj4gPiArICAgICAgICBiYXNoJCBt YWtlIC1DIEJhc2VUb29scw0KPiA+ICsgICAgICAgIGJhc2gkIC4gZWRrc2V0dXAuc2gNCj4gPiAr DQo+ID4gK1J1biB0aGUgYmVsb3cgbWFrZSBjb21tYW5kIGZyb20gfi9zcmMgZm9sZGVyIGkuZSBj aGFuZ2Ugd29ya2luZyBkaXJlY3RvcnkgdG8gfi9zcmMgYW5kIHJ1biB0aGUgbWFrZSBjb21tYW5k IGFzIGdpdmVuIGJlbG93IDo6DQo+ID4gKw0KPiA+ICsgICAgICAgIGJhc2gkIGNkIH4vc3JjDQo+ ID4gKyAgICAgICAgYmFzaCQgbWFrZSAtQyBlZGsyL0Jhc2VUb29scw0KPiA+ICsNCj4gPiArU2V0 dXAgYnVpbGQgc2hlbGwgZW52aXJvbm1lbnQgOjoNCj4gPiArDQo+ID4gKyAgICAgICAgYmFzaCQg Y2Qgfi9zcmMvZWRrMg0KPiA+ICsgICAgICAgIGJhc2gkIGV4cG9ydCBFREtfVE9PTFNfUEFUSD0k SE9NRS9zcmMvZWRrMi9CYXNlVG9vbHMNCj4gPiArICAgICAgICBiYXNoJCAuIGVka3NldHVwLnNo IEJhc2VUb29scw0KPiA+ICsNCj4gPiArDQo+ID4gK1NldCBCdWlsZCBUYXJnZXQgSW5mb3JtYXRp b24NCj4gPiArRm9yIHRoZSBDb25mL3RhcmdldC50eHQgZmlsZSwgZmluZCB0aGUgZm9sbG93aW5n IGxpbmVzOg0KPiA+ICtBQ1RJVkVfUExBVEZPUk0gICAgICAgPSBOdDMyUGtnL050MzJQa2cuZHNj DQo+ID4gKw0KPiA+ICtUT09MX0NIQUlOX1RBRyAgICAgICAgPSBNWVRPT0xTDQo+ID4gKw0KPiA+ ICtBbmQgY2hhbmdlIHRoZSBjb3JyZXNwb25kaW5nIGxpbmVzIHRvIG1hdGNoIHRoZXNlOg0KPiA+ ICsNCj4gPiArQUNUSVZFX1BMQVRGT1JNICAgICAgID0gTWRlTW9kdWxlUGtnL01kZU1vZHVsZVBr Zy5kc2MNCj4gPiArDQo+ID4gK1RPT0xfQ0hBSU5fVEFHICAgICAgICA9IEdDQzUNCj4gPiArDQo+ ID4gK0luc3RhbGwgR0NDNSBvbiBVYnVudHUgMjAuMDQgTFRTIGJ5IGRvd25sb2FkaW5nIGl0IGZy b20NCj4gPiAraHR0cHM6Ly9hc2t1YnVudHUuY29tL3F1ZXN0aW9ucy8xMjM1ODE5L3VidW50dS0y MC0wNC1nY2MtdmVyc2lvbi1sb3dlci10aGFuLWdjYy03DQo+ID4gKw0KPiA+ICtUaGlzIHJlcXVp cmVzIGxhdGVzdCB2ZXJzaW9uIG9mIHRoZSBuYXNtIHRvb2wgdG8gYmUgaW5zdGFsbGVkLg0KPiA+ ICtUaGUgbmFzbSBsYXRlc3QgdmVyc2lvbiA+PSAyLjE1LjA1DQo+ID4gKw0KPiA+ICtEZWJpYW4g cGFja2FnZSBmb3IgbmFzbSAyLjE1LjA1IGlzIGF2YWlsYWJsZSBhdA0KPiA+ICsNCj4gPiAraHR0 cHM6Ly91YnVudHUucGtncy5vcmcvMjEuMTAvdWJ1bnR1LXVuaXZlcnNlLWFtZDY0L25hc21fMi4x NS4wNS0xX2FtZDY0LmRlYi5odG1sDQo+ID4gKw0KPiA+ICtEb3dubG9hZCBpdCB1c2luZyB0aGUg d2dldCBjb21tYW5kIGFzIGdpdmVuIGJlbG93OjoNCj4gPiArDQo+ID4gKyAgICAgICAgYmFzaCQg c3VkbyB3Z2V0IGh0dHA6Ly9hcmNoaXZlLnVidW50dS5jb20vdWJ1bnR1L3Bvb2wvdW5pdmVyc2Uv bi9uYXNtL25hc21fMi4xNS4wNS0xX2FtZDY0LmRlYg0KPiA+ICsNCj4gPiArDQo+ID4gK0luc3Rh bGwgdGhlIHRoZSBhYm92ZSBkb3dubG9hZGVkIG5hc20gZGViaWFuIHBhY2thZ2UgdXNpbmcgdGhl IGZvbGxvd2luZyBjb21tYW5kOjoNCj4gPiArDQo+ID4gKyAgICAgICAgYmFzaCQgc3VkbyBkcGtn IC1pICBuYXNtXzIuMTUuMDUtMV9hbWQ2NC5kZWINCj4gPiArDQo+ID4gKzIuMy4gIEluc3RhbGwg YWRkaXRpb25hbCBwYWNrYWdlcyByZXF1aXJlZCBmb3IgYnVpbGRpbmcgZWRrMiB3aXRoIEdDQw0K PiA+ICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0NCj4gPiArDQo+ID4gK0luc3RhbGwgYWRkaXRpb25hbCBwYWNrYWdl IHJlcXVpcmVkIGZvciBidWlsZGluZyBlZGsyIHJlcG86Og0KPiA+ICsNCj4gPiArICAgICAgICBi YXNoJCBzdWRvIGFwdCBpbnN0YWxsIGxpYngxMS1kZXYNCj4gPiArICAgICAgICBiYXNoJCBzdWRv IGFwdCBpbnN0YWxsIGxpYnhleHQtZGV2DQo+ID4gKw0KPiA+ICsNCj4gPiArMi40ICBDbG9uZSBl ZGsyLWxpYmMgYW5kIGNvcHkgdGhlIGNvbnRlbnRzIHRvIGVkazINCj4gPiArLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4gPiArDQo+ID4gK05vdyBj bG9uZSB0aGUgZWRrMi1saWJjIGdpdCByZXBvIGJ5IGZvbGxvd2luZyAvIGV4ZWN1dGluZyB0aGUg YmVsb3cgY29tbWFuZHM6Og0KPiA+ICsNCj4gPiArICAgICAgICBiYXNoJCBjZCB+L3NyYw0KPiA+ ICsgICAgICAgIGJhc2gkIGdpdCBjbG9uZSBodHRwczovL2dpdGh1Yi5jb20vdGlhbm9jb3JlL2Vk azItbGliYy5naXQNCj4gPiArICAgICAgICBiYXNoJCBleHBvcnQgUEFDS0FHRVNfUEFUSD0kSE9N RS9zcmMvZWRrMjokSE9NRS9zcmMvZWRrMi1saWJjDQo+ID4gKw0KPiA+ICsNCj4gPiArVmVyaWZ5 IHRoYXQgeW91IGNhbiBidWlsZCB0aGUgaGVsbG8gd29ybGQgYXBwbGljYXRpb24gZnJvbSBBcHBQ a2cgdW5kZXIgZWRrMi1saWJjIGJ5IHJ1bm5pbmcgdGhlIGZvbGxvd2luZyBjb21tYW5kcw0KPiA+ ICtCdWlsZCBoZWxsby5pbmYgZnJvbSBlZGsyLWxpYmMgYXBwbGljYXRpb25zOjoNCj4gPiArDQo+ ID4gKyAgICAgICAgJGJhc2ggYnVpbGQgLXAgQXBwUGtnL0FwcFBrZy5kc2MgLW0gQXBwUGtnL0Fw cGxpY2F0aW9ucy9IZWxsby9IZWxsby5pbmYNCj4gPiArDQo+ID4gK0NvcHkgdGhlIGNvbnRlbnRz IG9mIGVkazItbGliYyB0byBlZGsyIGZvbGRlcjo6DQo+ID4gKw0KPiA+ICsgICAgICAgIGJhc2gk IGNwIC1yZiB+L3NyYy9lZGsyLWxpYmMvKiB+L3NyYy9lZGsyLw0KPiA+ICsNCj4gPiArMi41LiAg QnVpbGQgUHl0aG9uIEludGVycHJldGVyIHVzaW5nIEdDQw0KPiA+ICstLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQo+ID4gK1VuY29tbWVudCB0aGUgbGluZSBjb250YWlu aW5nIGZvbGxvd2luZyBpbmYgZmlsZSBuYW1lIGluIEFwcFBrZy9BcHBQa2cuZHNjIGZpbGUNCj4g PiArQXBwUGtnL0FwcGxpY2F0aW9ucy9QeXRob24vUHl0aG9uLTMuNi44L1B5dGhvbjM2OC5pbmYN Cj4gPiArDQo+ID4gK0V4ZWN1dGUgdGhlIGJlbG93IGNvbW1hbmQgdG8gYnVpbGQgdGhlIFg2NCB2 ZXJzaW9uIG9mIHRoZSBQeXRob24gMy42LjggaW50ZXJwcmV0ZXIgdXNpbmcgR0NDIHRvb2wgY2hh aW46Og0KPiA+ICsNCj4gPiArICAgICAgICBiYXNoJCBjZCBBcHBQa2cvQXBwbGljYXRpb25zL1B5 dGhvbi9QeXRob24tMy42LjgvDQo+ID4gKyAgICAgICAgYmFzaCQgcHl0aG9uIHNyY3ByZXAucHkN Cj4gPiArICAgICAgICBiYXNoJCBjZCB+L3NyYy9lZGsyDQo+ID4gKyAgICAgICAgYmFzaCQgYnVp bGQgLWEgWDY0IC1iIFJFTEVBU0UgLXAgQXBwUGtnL0FwcFBrZy5kc2MgLW0gQXBwUGtnL0FwcGxp Y2F0aW9ucy9QeXRob24vUHl0aG9uLTMuNi44L1B5dGhvbjM2OC5pbmYNCj4gPiArICAgICAgICAg ICAgIG9yDQo+ID4gKyAgICAgICAgYmFzaCQgYnVpbGQgLWEgWDY0IC1iIFJFTEVBU0UgLXAgQXBw UGtnL0FwcFBrZy5kc2MNCj4gPiArDQo+ID4gKw0KPiA+ICsyLjUgIENyZWF0ZSBQeXRob24gVUVG SSBwYWNrYWdlIHdpdGggYWxsIGRlcGVuZGVuY2llcw0KPiA+ICstLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiA+ICsNCj4gPiArVG8gY3JlYXRl IGFuIHVzYWJsZSBQeXRob24gVUVGSSBwYWNrYWdlIHdpdGggYWxsIHRoZSBkZXBlbmRlbmNpZXMg ZnJvbSB0aGUgYnVpbGQgZW52aXJvbm1lbnQsDQo+ID4gK3lvdSBjYW4gdXNlIHRoZSBiYXNoIHNo ZWxsIHNjcmlwdCBjcmVhdGVfcHl0aG9uMzY4X3BrZy5zaCBhdmFpbGFibGUgdW5kZXIgL0FwcFBr Zy9BcHBsaWNhdGlvbnMvUHl0aG9uL1B5dGhvbi0zLjYuOA0KPiA+ICtmb2xkZXIuDQo+ID4gKw0K PiA+ICtVc2UgdGhlIGZvbGxvd2luZyBjb21tYW5kcyB0byBjcmVhdGUgUHl0aG9uIFVFRkkgcGFj a2FnZTo6DQo+ID4gKw0KPiA+ICsgICAgICAgIGJhc2gkIGNkIH4vc3JjL2VkazIvQXBwUGtnL0Fw cGxpY2F0aW9ucy9QeXRob24vUHl0aG9uLTMuNi44Lw0KPiA+ICsgICAgICAgIGJhc2gkIGNobW9k IDc3NyBjcmVhdGVfcHl0aG9uMzY4X3BrZy5zaA0KPiA+ICsgICAgICAgIC4vY3JlYXRlX3B5dGhv bjM2OF9wa2cuc2ggR0NDNSBSRUxFQVNFIFg2NCBteVB5VUVGSQ0KPiA+ICsNCj4gPiArd2hlcmUg R0NDNSByZWZlcnMgdG8gdGhlIHRvb2wgY2hhaW4sIFJFTEVBU0UgcmVmZXJzIHRvIHRoZSBidWls ZCB0eXBlLCBYNjQgcmVmZXJzIHRvIHRoZSBhcmNoaXRlY3R1cmUNCj4gPiArbXlQeVVFRkkgcmVm ZXJzIHRvIHRoZSBuYW1lIG9mIHRoZSBmb2xkZXIgd2hlcmUgdGhlIFB5dGhvbiBVRUZJIHBhY2th Z2UgbmVlZHMgdG8gYmUgY3JlYXRlZC4NCj4gPiArDQo+ID4gK1doZW4geW91IHJ1biB0aGUgY3Jl YXRlX3B5dGhvbjM2OF9wa2cuc2ggd2l0aG91dCBhbnkgcGFyYW1ldGVycyBpdCBsaXN0cyB0aGUg aGVscA0KPiA+ICtpbmZvcm1hdGlvbiBhcyBzaG93biBiZWxvdzoNCj4gPiArDQo+ID4gK1NoZWxs IFNjcmlwdCB0byBjcmVhdGUgUHl0aG9uIEVGSSBQYWNrYWdlLg0KPiA+ICsNCj4gPiArVXNhZ2U6 IC4vY3JlYXRlX3B5dGhvbjM2OF9wa2cuc2ggPFRvb2xDaGFpbj4gPFRhcmdldD4gPEFyY2hpdGVj dHVyZT4gPE91dEZvbGRlcj4NCj4gPiArDQo+ID4gK1doZXJlDQo+ID4gKyAgICAqIFRvb2xDaGFp biAgICAgOiAgbmFtZSBvZiB0aGUgdG9vbCBjaGFpbiBzdWNoIGFzIEdDQzUNCj4gPiArICAgICog VGFyZ2V0ICAgICAgICA6ICBidWlsZCB0eXBlIHN1Y2ggYXMgUkVMRUFTRSwgREVCVUcNCj4gPiAr ICAgICogQXJjaGl0ZWN0dXJlICA6ICBBcmNoaXRlY3R1cmUgc3VjaCBhcyBYNjQNCj4gPiArICAg ICogT3V0Rm9sZGVyICAgICA6ICBPdXRwdXQgZGlyZWN0b3J5IGZvciBjcmVhdGluZyB0aGUgcGFj a2FnZQ0KPiA+IGRpZmYgLS1naXQgYS9BcHBQa2cvQXBwbGljYXRpb25zL1B5dGhvbi9QeXRob24t My42LjgvUHlNb2QtMy42LjgvSW5jbHVkZS9weWNvbmZpZy5oIGIvQXBwUGtnL0FwcGxpY2F0aW9u cy9QeXRob24vUHl0aG9uLQ0KPiA+IDMuNi44L1B5TW9kLTMuNi44L0luY2x1ZGUvcHljb25maWcu aA0KPiA+IGluZGV4IGQ0Njg1ZGEuLjlkMDg5ODIgMTAwNjQ0DQo+ID4gLS0tIGEvQXBwUGtnL0Fw cGxpY2F0aW9ucy9QeXRob24vUHl0aG9uLTMuNi44L1B5TW9kLTMuNi44L0luY2x1ZGUvcHljb25m aWcuaA0KPiA+ICsrKyBiL0FwcFBrZy9BcHBsaWNhdGlvbnMvUHl0aG9uL1B5dGhvbi0zLjYuOC9Q eU1vZC0zLjYuOC9JbmNsdWRlL3B5Y29uZmlnLmgNCj4gPiBAQCAtODcwLDcgKzg3MCw3IEBADQo+ ID4gICN1bmRlZiBIQVZFX1RIUkVBRF9IDQo+ID4NCj4gPiAgLyogRGVmaW5lIHRvIDEgaWYgeW91 IGhhdmUgdGhlICd0aW1lZ20nIGZ1bmN0aW9uLiAqLw0KPiA+IC0jdW5kZWYgSEFWRV9USU1FR00N Cj4gPiArI2RlZmluZSBIQVZFX1RJTUVHTSAxDQo+ID4NCj4gPiAgLyogRGVmaW5lIHRvIDEgaWYg eW91IGhhdmUgdGhlICd0aW1lcycgZnVuY3Rpb24uICovDQo+ID4gICN1bmRlZiBIQVZFX1RJTUVT DQo+ID4gZGlmZiAtLWdpdCBhL0FwcFBrZy9BcHBsaWNhdGlvbnMvUHl0aG9uL1B5dGhvbi0zLjYu OC9QeU1vZC0zLjYuOC9Nb2R1bGVzL2NvbmZpZy5jIGIvQXBwUGtnL0FwcGxpY2F0aW9ucy9QeXRo b24vUHl0aG9uLQ0KPiA+IDMuNi44L1B5TW9kLTMuNi44L01vZHVsZXMvY29uZmlnLmMNCj4gPiBp bmRleCAwZTdmNjVlLi43MjE3YTgwIDEwMDY0NA0KPiA+IC0tLSBhL0FwcFBrZy9BcHBsaWNhdGlv bnMvUHl0aG9uL1B5dGhvbi0zLjYuOC9QeU1vZC0zLjYuOC9Nb2R1bGVzL2NvbmZpZy5jDQo+ID4g KysrIGIvQXBwUGtnL0FwcGxpY2F0aW9ucy9QeXRob24vUHl0aG9uLTMuNi44L1B5TW9kLTMuNi44 L01vZHVsZXMvY29uZmlnLmMNCj4gPiBAQCAtODMsNyArODMsMTAgQEAgZXh0ZXJuIFB5T2JqZWN0 KiBQeUluaXRfX3N0YXQodm9pZCk7DQo+ID4gIGV4dGVybiBQeU9iamVjdCogUHlJbml0X19vcGNv ZGUodm9pZCk7DQo+ID4gIGV4dGVybiBQeU9iamVjdCogUHlJbml0X2ZhdWx0aGFuZGxlcih2b2lk KTsNCj4gPiAgLy8gX2N0eXBlcw0KPiA+ICsjaWYgZGVmaW5lZChVRUZJX01TVkNfMzIpIHx8IGRl ZmluZWQoVUVGSV9NU1ZDXzY0KQ0KPiA+ICBleHRlcm4gUHlPYmplY3QqIFB5SW5pdF9fY3R5cGVz KHZvaWQpOw0KPiA+ICsjZW5kaWYNCj4gPiArDQo+ID4gIGV4dGVybiBQeU9iamVjdCogaW5pdF9z cWxpdGUzKHZvaWQpOw0KPiA+DQo+ID4gIC8vIEVmaVB5DQo+ID4gQEAgLTE1NSw3ICsxNTgsOSBA QCBzdHJ1Y3QgX2luaXR0YWIgX1B5SW1wb3J0X0luaXR0YWJbXSA9IHsNCj4gPiAgICAgIHsiX3N0 cmluZyIsIFB5SW5pdF9fc3RyaW5nfSwNCj4gPiAgICAgIHsiX3N0YXQiLCBQeUluaXRfX3N0YXR9 LA0KPiA+ICAgICAgeyJfb3Bjb2RlIiwgUHlJbml0X19vcGNvZGV9LA0KPiA+IC0JeyAiX2N0eXBl cyIsIFB5SW5pdF9fY3R5cGVzIH0sDQo+ID4gKyNpZiBkZWZpbmVkKFVFRklfTVNWQ18zMikgfHwg ZGVmaW5lZChVRUZJX01TVkNfNjQpDQo+ID4gKyAgICB7ICJfY3R5cGVzIiwgUHlJbml0X19jdHlw ZXMgfSwNCj4gPiArI2VuZGlmDQo+ID4gICAgICAvKiBTZW50aW5lbCAqLw0KPiA+ICAgICAgezAs IDB9DQo+ID4gIH07DQo+ID4gZGlmZiAtLWdpdCBhL0FwcFBrZy9BcHBsaWNhdGlvbnMvUHl0aG9u L1B5dGhvbi0zLjYuOC9QeU1vZC0zLjYuOC9Nb2R1bGVzL2dldHBhdGguYyBiL0FwcFBrZy9BcHBs aWNhdGlvbnMvUHl0aG9uL1B5dGhvbi0NCj4gPiAzLjYuOC9QeU1vZC0zLjYuOC9Nb2R1bGVzL2dl dHBhdGguYw0KPiA+IGluZGV4IGFkMTA3ODQuLjdlZTRkNWUgMTAwNjQ0DQo+ID4gLS0tIGEvQXBw UGtnL0FwcGxpY2F0aW9ucy9QeXRob24vUHl0aG9uLTMuNi44L1B5TW9kLTMuNi44L01vZHVsZXMv Z2V0cGF0aC5jDQo+ID4gKysrIGIvQXBwUGtnL0FwcGxpY2F0aW9ucy9QeXRob24vUHl0aG9uLTMu Ni44L1B5TW9kLTMuNi44L01vZHVsZXMvZ2V0cGF0aC5jDQo+ID4gQEAgLTExMiw3ICsxMTIsNyBA QA0KPiA+ICAjZW5kaWYNCj4gPg0KPiA+DQo+ID4gLSNkZWZpbmUgU0lGWV9JKCB4ICkgTCN4DQo+ ID4gKyNkZWZpbmUgU0lGWV9JKCB4ICkgTCIiICN4DQo+ID4gICNkZWZpbmUgU0lGWSggeSApICAg U0lGWV9JKCB5ICkNCj4gPg0KPiA+ICAjaWZuZGVmIFBSRUZJWA0KPiA+IGRpZmYgLS1naXQgYS9B cHBQa2cvQXBwbGljYXRpb25zL1B5dGhvbi9QeXRob24tMy42LjgvUHl0aG9uMzY4LmluZiBiL0Fw cFBrZy9BcHBsaWNhdGlvbnMvUHl0aG9uL1B5dGhvbi0zLjYuOC9QeXRob24zNjguaW5mDQo+ID4g aW5kZXggNGFiMGNkMy4uMjA3YjkwNyAxMDA2NDQNCj4gPiAtLS0gYS9BcHBQa2cvQXBwbGljYXRp b25zL1B5dGhvbi9QeXRob24tMy42LjgvUHl0aG9uMzY4LmluZg0KPiA+ICsrKyBiL0FwcFBrZy9B cHBsaWNhdGlvbnMvUHl0aG9uL1B5dGhvbi0zLjYuOC9QeXRob24zNjguaW5mDQo+ID4gQEAgLTI1 MSwyMyArMjUxLDI0IEBAIE1vZHVsZXMvemxpYg0KPiA+ICAgIE1vZHVsZXMvemxpYi96dXRpbC5j ICAgICAgICAgICAgICAgICAjDQo+ID4NCj4gPiAgI01vZHVsZXMvY3R5cGVzDQo+ID4gLSAgUHlN b2QtJChQWVRIT05fVkVSU0lPTikvTW9kdWxlcy9fY3R5cGVzL19jdHlwZXMuYyAgICAgICAgICAg ICAgIw0KPiA+IC0gIE1vZHVsZXMvX2N0eXBlcy9zdGdkaWN0LmMgICAgICAgICAgICAgICMNCj4g PiAtICBNb2R1bGVzL19jdHlwZXMvbGliZmZpX21zdmMvcHJlcF9jaWYuYyAjDQo+ID4gLSAgUHlN b2QtJChQWVRIT05fVkVSU0lPTikvTW9kdWxlcy9fY3R5cGVzL21hbGxvY19jbG9zdXJlLmMgICAg ICAgIw0KPiA+IC0gIFB5TW9kLSQoUFlUSE9OX1ZFUlNJT04pL01vZHVsZXMvX2N0eXBlcy9saWJm ZmlfbXN2Yy9mZmkuYyAgICAgICMNCj4gPiAtICBNb2R1bGVzL19jdHlwZXMvY2ZpZWxkLmMgICAg ICAgICAgICAgICAjDQo+ID4gLSAgUHlNb2QtJChQWVRIT05fVkVSU0lPTikvTW9kdWxlcy9fY3R5 cGVzL2NhbGxwcm9jLmMgICAgICAgICAgICAgIw0KPiA+IC0gIE1vZHVsZXMvX2N0eXBlcy9jYWxs YmFja3MuYyAgICAgICAgICAgICMNCj4gPiArICBQeU1vZC0kKFBZVEhPTl9WRVJTSU9OKS9Nb2R1 bGVzL19jdHlwZXMvX2N0eXBlcy5jICAgIHwgTVNGVCAgICAgICAgICAjDQo+ID4gKyAgTW9kdWxl cy9fY3R5cGVzL3N0Z2RpY3QuYyAgICAgICAgICAgfCBNU0ZUICAgIw0KPiA+ICsgIE1vZHVsZXMv X2N0eXBlcy9saWJmZmlfbXN2Yy9wcmVwX2NpZi5jICB8IE1TRlQjDQo+ID4gKyAgUHlNb2QtJChQ WVRIT05fVkVSU0lPTikvTW9kdWxlcy9fY3R5cGVzL21hbGxvY19jbG9zdXJlLmMgICB8IE1TRlQg ICAgIw0KPiA+ICsgIFB5TW9kLSQoUFlUSE9OX1ZFUlNJT04pL01vZHVsZXMvX2N0eXBlcy9saWJm ZmlfbXN2Yy9mZmkuYyAgfCBNU0ZUICAgICAjDQo+ID4gKyAgTW9kdWxlcy9fY3R5cGVzL2NmaWVs ZC5jICAgIHwgTVNGVCAgICAgICAgICAgIw0KPiA+ICsgIFB5TW9kLSQoUFlUSE9OX1ZFUlNJT04p L01vZHVsZXMvX2N0eXBlcy9jYWxscHJvYy5jICB8IE1TRlQgICAgICAgICAgICMNCj4gPiArICBN b2R1bGVzL19jdHlwZXMvY2FsbGJhY2tzLmMgICAgICAgIHwgTVNGVCAgICAjDQo+ID4NCj4gPiAg W1NvdXJjZXMuSUEzMl0NCj4gPiAtICBNb2R1bGVzL19jdHlwZXMvbGliZmZpX21zdmMvd2luMzIu YyAgICMNCj4gPiArICBNb2R1bGVzL19jdHlwZXMvbGliZmZpX21zdmMvd2luMzIuYyAgfCBNU0ZU ICMNCj4gPg0KPiA+ICBbU291cmNlcy5YNjRdDQo+ID4gLSAgTW9kdWxlcy9fY3R5cGVzL2xpYmZm aV9tc3ZjL3dpbjY0LmFzbSAgICMNCj4gPiArICBNb2R1bGVzL19jdHlwZXMvbGliZmZpX21zdmMv d2luNjQuYXNtICB8IE1TRlQgIw0KPiA+DQo+ID4gIFtCdWlsZE9wdGlvbnNdDQo+ID4gICAgTVNG VDoqXypfKl9DQ19GTEFHUyA9IC9HTC0gL09pLSAvd2Q0MDE4IC93ZDQwNTQgL3dkNDA1NSAvd2Q0 MTAxIC93ZDQxMzEgL3dkNDE1MiAvd2Q0MjA0IC93ZDQyMTAgL3dkNDI0NCAvd2Q0MjY3IC93ZDQz MDUNCj4gPiAvd2Q0MzEwIC93ZDQzODkgL3dkNDcwMSAvd2Q0NzAyIC93ZDQ3MDYgL3dkNDQ1NiAv d2Q0MzEyIC93ZDQ0NTcgL3dkNDQ1OSAvd2Q0NDc0IC93ZDQ0NzYNCj4gPiAvSSQoV09SS1NQQUNF KVxBcHBQa2dcQXBwbGljYXRpb25zXFB5dGhvblxQeXRob24tMy42LjhcSW5jbHVkZSAvREhBVkVf TUVNTU9WRSAvRFVTRV9QWUVYUEFUX0NBUEkgL0RYTUxfU1RBVElDIC1EIFVFRkkgL1dYLQ0KPiA+ IC9EWE1MX1BPT1JfRU5UUk9QWSAvRFVFRklfQ19TT1VSQ0UNCj4gPiArICBHQ0M6Kl8qXypfQ0Nf RkxBR1MgPSAtV25vLXVudXNlZC1mdW5jdGlvbiAtV25vLWZvcm1hdCAtV25vLWVycm9yIC1mbm8t c3RyaWN0LWFsaWFzaW5nIC0NCj4gPiBJJChXT1JLU1BBQ0UpL0FwcFBrZy9BcHBsaWNhdGlvbnMv UHl0aG9uL1B5dGhvbi0zLjYuOC9JbmNsdWRlIC1ESEFWRV9NRU1NT1ZFIC1EVVNFX1BZRVhQQVRf Q0FQSSAtRFhNTF9TVEFUSUMgLURYTUxfUE9PUl9FTlRST1BZDQo+ID4NCj4gPiAgW0J1aWxkT3B0 aW9ucy5JQTMyXQ0KPiA+ICAgIE1TRlQ6Kl8qXypfQ0NfRkxBR1MgPSAvRFVFRklfTVNWQ18zMg0K PiA+IGRpZmYgLS1naXQgYS9BcHBQa2cvQXBwbGljYXRpb25zL1B5dGhvbi9QeXRob24tMy42Ljgv Y3JlYXRlX3B5dGhvbjM2OF9wa2cuc2ggYi9BcHBQa2cvQXBwbGljYXRpb25zL1B5dGhvbi9QeXRo b24tDQo+ID4gMy42LjgvY3JlYXRlX3B5dGhvbjM2OF9wa2cuc2gNCj4gPiBuZXcgZmlsZSBtb2Rl IDEwMDY0NA0KPiA+IGluZGV4IDAwMDAwMDAuLmY1MjlmYTQNCj4gPiAtLS0gL2Rldi9udWxsDQo+ ID4gKysrIGIvQXBwUGtnL0FwcGxpY2F0aW9ucy9QeXRob24vUHl0aG9uLTMuNi44L2NyZWF0ZV9w eXRob24zNjhfcGtnLnNoDQo+ID4gQEAgLTAsMCArMSwxMDAgQEANCj4gPiArIyEvYmluL2Jhc2gN Cj4gPiArDQo+ID4gK1RPT0xfQ0hBSU5fVEFHPSQxDQo+ID4gK1RBUkdFVD0kMg0KPiA+ICtBUkNI PSQzDQo+ID4gK09VVF9GT0xERVI9JDQNCj4gPiArDQo+ID4gK2Z1bmN0aW9uIHVzYWdlIHsNCj4g PiArICAgIGVjaG8NCj4gPiArICAgIGVjaG8gU2hlbGwgU2NyaXB0IHRvIGNyZWF0ZSBQeXRob24g RUZJIFBhY2thZ2UuDQo+ID4gKyAgICBlY2hvDQo+ID4gKyAgICBlY2hvDQo+ID4gKyAgICBlY2hv ICJVc2FnZTogJDAgPFRvb2xDaGFpbj4gPFRhcmdldD4gPEFyY2hpdGVjdHVyZT4gPE91dEZvbGRl cj4iDQo+ID4gKyAgICBlY2hvICJXaGVyZSAiDQo+ID4gKyAgICBlY2hvICIgICAgVG9vbENoYWlu ICAgICA6ICBuYW1lIG9mIHRoZSB0b29sIGNoYWluIHN1Y2ggYXMgR0NDNSINCj4gPiArICAgIGVj aG8gIiAgICBUYXJnZXQgICAgICAgIDogIGJ1aWxkIHR5cGUgc3VjaCBhcyBSRUxFQVNFLCBERUJV RyINCj4gPiArICAgIGVjaG8gIiAgICBBcmNoaXRlY3R1cmUgIDogIEFyY2hpdGVjdHVyZSBzdWNo IGFzIFg2NCINCj4gPiArICAgIGVjaG8gIiAgICBPdXRGb2xkZXIgICAgIDogIE91dHB1dCBkaXJl Y3RvcnkgZm9yIGNyZWF0aW5nIHRoZSBwYWNrYWdlIg0KPiA+ICsgICAgZWNobw0KPiA+ICt9DQo+ ID4gKw0KPiA+ICtmdW5jdGlvbiBlcnJvciB7DQo+ID4gKyAgICBlY2hvIEZhaWxlZCB0byBDcmVh dGUgUHl0aG9uIEVGSSBQYWNrYWdlDQo+ID4gKyAgICBlY2hvIFB5dGhvbjM2OC5lZmkgYXBwbGlj YXRpb24gaXMgbm90IGF2YWlsYWJsZSBhdCAiQnVpbGQvQXBwUGtnLyRUQVJHRVQiXyIkVE9PTF9D SEFJTl9UQUcvJEFSQ0gvIg0KPiA+ICsgICAgZWNobyBGb2xsb3cgdGhlIGluc3RydWN0aW9ucyBp biBQeTM2OFJlYWRNZS50eHQgdG8gYnVpbGQgUHl0aG9uIGludGVycHJldGVyDQo+ID4gKyAgICBl Y2hvIFRoZW4gdXNlIHRoaXMgc2NyaXB0IHRvIGNyZWF0ZSBhIFB5dGhvbiBFRkkgcGFja2FnZQ0K PiA+ICt9DQo+ID4gKw0KPiA+ICsNCj4gPiArIyBWYWxpZGF0ZSB0aGUgVG9vbENoYWluIGlucHV0 DQo+ID4gK2lmIFsgLXogJFRPT0xfQ0hBSU5fVEFHIF0NCj4gPiArdGhlbg0KPiA+ICsgICAgZWNo byBJbnZhbGlkIGNvbW1hbmQgbGluZSBhcmd1bWVudHMgcGFzc2VkLCBwbGVhc2Ugc2VlIHRoZSBi ZWxvdyB1c2FnZSBpbnN0cnVjdGlvbnMNCj4gPiArICAgIHVzYWdlDQo+ID4gKyAgICBleGl0DQo+ ID4gK2ZpDQo+ID4gKw0KPiA+ICsjIFZhbGlkYXRlIHRoZSBUYXJnZXQgaW5wdXQNCj4gPiAraWYg WyAteiAkVEFSR0VUIF0NCj4gPiArdGhlbg0KPiA+ICsgICAgZWNobyBJbnZhbGlkIGNvbW1hbmQg bGluZSBhcmd1bWVudHMgcGFzc2VkLCBwbGVhc2Ugc2VlIHRoZSBiZWxvdyB1c2FnZSBpbnN0cnVj dGlvbnMNCj4gPiArICAgdXNhZ2UNCj4gPiArICAgZXhpdA0KPiA+ICtmaQ0KPiA+ICsNCj4gPiAr IyBWYWxpZGF0ZSB0aGUgQXJjaGl0ZWN0dXJlIGlucHV0DQo+ID4gK2lmIFsgLXogJEFSQ0ggXQ0K PiA+ICt0aGVuDQo+ID4gKyAgICBlY2hvIEludmFsaWQgY29tbWFuZCBsaW5lIGFyZ3VtZW50cyBw YXNzZWQsIHBsZWFzZSBzZWUgdGhlIGJlbG93IHVzYWdlIGluc3RydWN0aW9ucw0KPiA+ICsgICAg dXNhZ2UNCj4gPiArICAgIGV4aXQNCj4gPiArZmkNCj4gPiArDQo+ID4gKyMgVmFsaWRhdGUgdGhl IE91dEZvbGRlciBpbnB1dA0KPiA+ICtpZiBbIC16ICRPVVRfRk9MREVSIF0NCj4gPiArdGhlbg0K PiA+ICsgICAgZWNobyBJbnZhbGlkIGNvbW1hbmQgbGluZSBhcmd1bWVudHMgcGFzc2VkLCBwbGVh c2Ugc2VlIHRoZSBiZWxvdyB1c2FnZSBpbnN0cnVjdGlvbnMNCj4gPiArICAgdXNhZ2UNCj4gPiAr ICAgZXhpdA0KPiA+ICtmaQ0KPiA+ICsNCj4gPiArY2QgLi4vLi4vLi4vLi4vDQo+ID4gK1BZVEhP Tl9CSU49IkJ1aWxkL0FwcFBrZy8kVEFSR0VUIl8iJFRPT0xfQ0hBSU5fVEFHLyRBUkNIL1B5dGhv bjM2OC5lZmkiDQo+ID4gK2lmIFsgISAtZiAkUFlUSE9OX0JJTiBdDQo+ID4gK3RoZW4NCj4gPiAr ICAgIGVycm9yDQo+ID4gKyAgICBleGl0DQo+ID4gK2ZpDQo+ID4gKw0KPiA+ICsNCj4gPiArIyBj cmVhdGUgL0VGSS9Ub29scyBmb2xkZXIgaW4gdGhlIE91dHB1dCBmb2xkZXIgaWYgaXQgZG9lc24n dCBleGlzdHMNCj4gPiAraWYgWyAhIC1kICRPVVRfRk9MREVSL0VGSS9Ub29scyBdDQo+ID4gK3Ro ZW4NCj4gPiArICAgIG1rZGlyIC1wICRPVVRfRk9MREVSL0VGSS9Ub29scw0KPiA+ICtmaQ0KPiA+ ICsNCj4gPiArY3AgLWYgJFBZVEhPTl9CSU4gJE9VVF9GT0xERVIvRUZJL1Rvb2xzLw0KPiA+ICsN Cj4gPiAraWYgWyAhIC1kICRPVVRfRk9MREVSL0VGSS9TdGRMaWIvbGliL3B5dGhvbjM2LjggXQ0K PiA+ICt0aGVuDQo+ID4gKyAgICBta2RpciAtcCAkT1VUX0ZPTERFUi9FRkkvU3RkTGliL2xpYi9w eXRob24zNi44DQo+ID4gK2ZpDQo+ID4gKw0KPiA+ICtpZiBbICEgLWQgJE9VVF9GT0xERVIvRUZJ L1N0ZExpYi9ldGMgXQ0KPiA+ICt0aGVuDQo+ID4gKyAgICBta2RpciAtcCAkT1VUX0ZPTERFUi9F RkkvU3RkTGliL2V0Yw0KPiA+ICtmaQ0KPiA+ICsNCj4gPiArY3AgLXJmIEFwcFBrZy9BcHBsaWNh dGlvbnMvUHl0aG9uL1B5dGhvbi0zLjYuOC9MaWIvKiAgJE9VVF9GT0xERVIvRUZJL1N0ZExpYi9s aWIvcHl0aG9uMzYuOC8NCj4gPiArY3AgLXJmIFN0ZExpYi9FZmkvU3RkTGliL2V0Yy8qICAkT1VU X0ZPTERFUi9FRkkvU3RkTGliL2V0Yy8NCj4gPiArDQo+ID4gK2lmIFsgJHtPVVRfRk9MREVSOjA6 MX0gPT0gIi8iIF0NCj4gPiArdGhlbg0KPiA+ICsgICAgZWNobyBQeXRob24gRUZJIHBhY2thZ2Ug YXZhaWxhYmxlIGF0ICRPVVRfRk9MREVSDQo+ID4gK2Vsc2UNCj4gPiArICAgIGVjaG8gUHl0aG9u IEVGSSBwYWNrYWdlIGF2YWlsYWJsZSBhdCBgcHdkYC8kT1VUX0ZPTERFUg0KPiA+ICtmaQ0KPiA+ ICsNCj4gPiArDQo+ID4gKw0KPiA+IC0tDQo+ID4gMi4zMy4wLndpbmRvd3MuMQ0KPiA+DQo+ID4N Cj4gPg0KPiA+IA0KPiA+DQoNCg==