From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by mx.groups.io with SMTP id smtpd.web10.33013.1661484495380408050 for ; Thu, 25 Aug 2022 20:28:15 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=ZtVJFHFn; spf=pass (domain: intel.com, ip: 134.134.136.65, mailfrom: long1.huang@intel.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1661484495; x=1693020495; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=op7aZ8bXFRdaqroTTbFUTQCtEjZrgKv/kahMPeoKU1I=; b=ZtVJFHFnHLj/e89asWpF39ksL7VnTrAjvum3rlCKQ+U68h5ppmY1WoGt 9PwvvVclcAKXDnUs0QAQ/Sz3EFLFz9kSxmibYlfmZh8XhZq+6syx/4XSs xHNs+jK6tMmLu7UVRKN2Nb30jXVubqc8R+OxasVoeNc4yytDXK5rsEADV LyuxpoOkH8a0Yz1ttGFubl9QRpNVNj3yfWSRWz6i82nYzSUxErpTCZVwj W2P63nb7/+yixLQ0jVcMv7CbfrxE1kzDZtWiHVh/QwHmnWB5NMLOWwYBn UwM9R+x7czTCYJ0JjQ6EkyZA/yJUuA9RHyFXh/bm4JBeVHU6kui7l6GJa g==; X-IronPort-AV: E=McAfee;i="6500,9779,10450"; a="295686402" X-IronPort-AV: E=Sophos;i="5.93,264,1654585200"; d="scan'208";a="295686402" Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 25 Aug 2022 20:28:07 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.93,264,1654585200"; d="scan'208";a="671286039" Received: from fmsmsx602.amr.corp.intel.com ([10.18.126.82]) by fmsmga008.fm.intel.com with ESMTP; 25 Aug 2022 20:28:07 -0700 Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) 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.2375.31; Thu, 25 Aug 2022 20:28:06 -0700 Received: from fmsmsx611.amr.corp.intel.com (10.18.126.91) by fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Thu, 25 Aug 2022 20:28:06 -0700 Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) by fmsmsx611.amr.corp.intel.com (10.18.126.91) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31 via Frontend Transport; Thu, 25 Aug 2022 20:28:06 -0700 Received: from NAM11-CO1-obe.outbound.protection.outlook.com (104.47.56.168) by edgegateway.intel.com (192.55.55.70) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2375.31; Thu, 25 Aug 2022 20:28:04 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=JhL2d1KxbR7BvNUgPNyyGMsl9U7Lb8XofnlC7Lm9QgmYvrOnoOwyJ98qeD90t2bKi6nk66/oXP9b6kDISQBLNnvzvRxQ1UBc9eQjeTQK8otVGhSE185WDJ7ig3+Eq1KFHRRiX/8LITd+P0hl+pKoL4PkP4CPVGTQ629rSsH7ZKa0S7PWLsOcrcj7hm4Pppb/MVYY5irkN5DQ7nQQJlIqmt7/CD6Jfa7lu59DeaY8IGyXEPEQFrGfS/6bzWSdm+v0akeGGm2fuARJktsCkY9l0yA1oezF898ShKkjDR641tXA4VNC3n21SaBdQ7wVg9KfDnltCa6QfYTB6EEgMyC3wg== 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=op7aZ8bXFRdaqroTTbFUTQCtEjZrgKv/kahMPeoKU1I=; b=XSGDG8NnjHJgmBiAOK6vs8onP6C2+8S3IztKVAL/nVQ09l2h9ws9vtUS8jyFc+SmvqkFXh7MxlZofrst5s5QBhte4vEPq/iP+Xo3gWkPQvruFpD0ltkiN+FEA+t+9f66Ys8XskBeaEezmjeh30iTApQOwSDN75Jo2QdIz2F3fH6o8y76+Q159/xFquq0+Q7i+NnAvuh641dTbV2MICcENOn9y8a3t9d+oQNeepHIG5lhnWQ9SpL6sdkvYm38lE7/LB0tcTEYf1U2Q19OPm5slcBjUWgWsnq80oXw89J2TxHk2/ZZQrbNx76y5amHazimKQX9UiBTxLktta8sm6Nf5w== 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 CY4PR11MB0024.namprd11.prod.outlook.com (2603:10b6:910:76::31) by PH7PR11MB5959.namprd11.prod.outlook.com (2603:10b6:510:1e2::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5566.15; Fri, 26 Aug 2022 03:28:02 +0000 Received: from CY4PR11MB0024.namprd11.prod.outlook.com ([fe80::3493:8a42:712b:3109]) by CY4PR11MB0024.namprd11.prod.outlook.com ([fe80::3493:8a42:712b:3109%3]) with mapi id 15.20.5546.016; Fri, 26 Aug 2022 03:28:01 +0000 From: "Long1 Huang" To: "Feng, Bob C" , "Kinney, Michael D" , "devel@edk2.groups.io" , "quic_llindhol@quicinc.com" , "Gao, Liming" , 'Ard Biesheuvel' , "rebecca@bsdio.com" , "Chen, Christine" CC: 'Andrew Fish' , "Wang, Jian J" Subject: Re: [edk2-devel] MdeModulePkg build fails for AARCH64 on Ubuntu 22.04 Thread-Topic: [edk2-devel] MdeModulePkg build fails for AARCH64 on Ubuntu 22.04 Thread-Index: AQLbakymnymHua7oxeEsIFbF2fUIsa26pDOAgAAFRACAAAEagIABEfGAgABALTCAAav1AIAAoJkwgAELiYCAAHPtAIAAlzAA/fqgtkA= Date: Fri, 26 Aug 2022 03:28:01 +0000 Message-ID: References: <41a26d57-4fae-f53f-29ae-d6c7b258eaee@bsdio.com> <000a01d8b693$58d87c60$0a897520$@byosoft.com.cn> <010801d8b789$6a19ade0$3e4d09a0$@byosoft.com.cn> <6fb68a04-df82-d32f-bb46-0a7969c0275b@quicinc.com> In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-version: 11.6.500.17 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: 2dc9724b-0d36-4fd9-ab2e-08da8712fb22 x-ms-traffictypediagnostic: PH7PR11MB5959: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: dkjZm2B6nYilLrJCmNZO6e71FvS9crNtH8IiC5YWLyD6htSl+C8jVXtO5yVL+gPfp7gp1EfVOgsSmLH4GQkgVF+GlTrCXzXD6ZjyowrO3fjJ0scFEyg0s9L1nxom5JO4oCkGv4bgnSlWqpalW/cldN8MYvlxVdbQNm8I9qvWBlDi/iP3vePm7MB5dkohAPDOJLq9/ndV80eaWDRZWIsa/zQ2QEXdlYhUr38NMuA+0elwJcdw8snFDrTHUAlQ+ku/hpnfD+1ia+RUNI1Jnxh4n3aW5kSVJkeDyE9SWjWDpZqcNFxTh/m7TGQdgolGaz/9Y5SxNgaThw+v2gv2W31NEQL+pkeKYFYaHPlI085RwsQkxG98GDFGtRtWLSiwqnOZCQRmPe8KAiSpY3AU3ZPnj3Kv/RFd0QQ9uAzs9A1nlzJjGbEKI+3G+9KTO5GgoaP8kU2UfXzxFKc8ArMGF7vtomOCMp9McYhHYinT/Pn90AJbZC7E0AUA33Bca2SWebH+YqjlrgvL2fgK164IliZGT4TIHJo+neYKaB11tqm5NVjBAfg4b0f3Chdaf2vHQ0H0QAy6hca8dPtt4P3q83m40fKLDyZCFaJiSnwh+BY8vLkveQJYOKnqzDpPEFrvZ3pCSTpyoCA34cSuLmMqNOv58Z6MDJJkHECw64pFEEQsSYo+SkBFOvV/hHroASNagD2aJL8LJ+slWvpD5TKrfOdrEWyeXyH2H6Ynvp0biIi0Da3Ny8JT9iVJPH7BLFt2iBJ6J/rO0QhqJukurSziKolVu0rp6y2Yk/xzP+hXHg+u+VlIeqOorDnlHQiYdsjtf4aqU8XiVnNxfpddyUWugBS15nG35biJ+IJnPhgdEZY6VuA= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CY4PR11MB0024.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230016)(366004)(39860400002)(396003)(376002)(136003)(346002)(107886003)(66946007)(6636002)(6506007)(66446008)(66556008)(66476007)(86362001)(4326008)(64756008)(38100700002)(82960400001)(76116006)(54906003)(71200400001)(316002)(19627235002)(38070700005)(921005)(7696005)(966005)(478600001)(41300700001)(8676002)(33656002)(110136005)(55016003)(83380400001)(186003)(26005)(9686003)(5660300002)(30864003)(52536014)(53546011)(2906002)(122000001)(8936002);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?bk1ORHhTYVVJRG5pMlR2SVNwTEs3clJFdTA5M3JwV0dMK0xJVWgra25iSi81?= =?utf-8?B?Y1Q5U01RaXFMUGMrTElCeTAzczZHUVhDMjdBbTcwRForYWVKTmFGOXhGay93?= =?utf-8?B?VzY5N1VXb3haUEJZNzlTM0tuNEZrYnA4ZkVRcTV5K25JTEZaRk9lNmd6aWlL?= =?utf-8?B?OG9yd2NqOGs4aFVEUGhUUXpBYnl1MStuZXhkY0xSeEhKL1dCYXdxMC9SOERm?= =?utf-8?B?WDQvT0FQQjNTbUFrV01NbWIwSjNuQnlicEg2d1RPNUFabXJnTWlrd3MzM3pk?= =?utf-8?B?QUtTQm5NYy9abTRWSzFTaE5Oay9raTFGdDZGNzFiZmxBbHdrU3pTZ0JGQ080?= =?utf-8?B?NkU2aGtvazd3VkJtSkxHeXhZMHFJSGlCYXkxOVZ6Qm9rWEl0YzlPMDN5WElO?= =?utf-8?B?Q2pvckhKdkVUd2VlOVlsZ2xxT3JDeDFoTWJkcG9Qc3FYb2FEajNmWEt1bE9E?= =?utf-8?B?UjJncVJJZjcxV1VtenlqcDdCaGhDOVFlN2tFT1hpeU5xWkVSaW5YVjU2QkpZ?= =?utf-8?B?MnhBamdyeWtsMHpvN2syS1VlcXBHak5mRkFmNE9NcTlwSjcxblNaQ1IzVExT?= =?utf-8?B?bzg1eTV2aWh3Sm1INWt6cUhYMUppcDBHYzVCaThMMVRnMGMwVGJBLzNGaU5x?= =?utf-8?B?SzROMDNmTEcyakxKRzRKRUUvb2lLRXhySmdtaU1Db3RKUWFCS0JCRG5pRW1J?= =?utf-8?B?YXpzQmpFK2JEdjBINmJQVGpLdHloSUNJVGZjY3pjRy9kVHpIRWdWcGZGVm5X?= =?utf-8?B?MU9nenh1TTc3Z2lpMGx6alRqdFU2RXUyVFMrc2R4Y2llTUkzVXVjYUhvekNw?= =?utf-8?B?ZHU5Z2I5Y2R0YU1USXlCRDA4dytSUG9zcGdORVpNQTdiL1BWcHZoRmpjUlAz?= =?utf-8?B?bHozakpabWdLZm9POS9aeUVBeGFuL2lpQ0hVRmhtcnBjZHlZQ0tFUjZjSU9s?= =?utf-8?B?VnhMTWdZdE5md1RsNkxmb0MrVG96SDc3ZzFjOGZCS0xCK3NpSDRBTDk5Vmtt?= =?utf-8?B?N01wVTNvNkFXVnJieGNFM3A5ZHA4MTFUV1ZwZ0pnSFZ2MlZ6Qm9BWTJ6VVdE?= =?utf-8?B?UUV5aDlkalkwRjE4Z09oMUlXeTgvVDg4eDFKeEVyYUo1dGJiMko4Tk4zNk5G?= =?utf-8?B?SU5EQzBpVThoKzU5aWsyMWJrSVNabWt5aE5TczlldVVsajl4d2g3bVJ1UTNN?= =?utf-8?B?MEVwTXFLODl5dU5KZGNLQUlTRHo2aWdWV0FlckxVQnRKU3NaZHlvUWpBOWRq?= =?utf-8?B?eVRneW9nMHpDVlRWN1ZCTllEZVpsamRoM3FEMnROcWsyclFaZDh5U2E1Rzhp?= =?utf-8?B?eDBPMitFU1BWUHBwcDhLVFlYcVpZZ3hYNW1EWUlJUVNXSm96cmw2bWlYRXp0?= =?utf-8?B?a1ZhU3BKaWRnL1lLTjlNS3BxQ01iemg4ZkRjcGQ1RnZRVDlZcHFWM2srZWc3?= =?utf-8?B?TDk4UjExZjk2ZFJXeGkxVU9mR1R0NldqU04yb2hKdTJzc0MyOVBzRFBIVmln?= =?utf-8?B?UUJDZjJuRDJndTdvUHk2ZWEvblliT0J0bGVrSkZubmFsNmJIdUFHMWNHcStD?= =?utf-8?B?SXRsYnRaaDFCME4raG51U1Q1TEI4cTJBTHFMWmJkSEhkVlFIRk9vNEZFeEVL?= =?utf-8?B?Qmg5RmVsWFMrcWkyUEw3Y3JZTjlDWHRJczFCZG5PUjIyZkdLeU15aUVrT0c1?= =?utf-8?B?WmIra09FcWRCS2tzcW02cUhuMXUyZTl6UzAxRkJtSzBKdmRHTmFldVVqa2p5?= =?utf-8?B?NWc1Y2RkeWp2S2Nod1gyeGlPSDV6WlFkLy84enF0SkNMd1VMR21PVnRjdEUv?= =?utf-8?B?YUVyaFFXWnZlcDN2cnFjSUFkU2EwSUR0NU1kNDllNWJKV0Z3bmpUb3U2UFcz?= =?utf-8?B?ZFhqc25qdE5zTjMvN0x0VURsbU5KendyZVZwQktpQ3BCb1piSllLcWEvdEVo?= =?utf-8?B?UHZDYWpYV29TekRGdG9QN2ZyY0wxZVhkVUpWU3hoTkl3OFBLQy9tbk9TTVFN?= =?utf-8?B?T1ZWZHVNaVMrRmp3OTd3Y2RVWkRkdzd5VGhmSVhGVFhVT0FaSWJ3SFNTMnN4?= =?utf-8?B?U2luMm51YmgzekNOeFpBakVBa1ZaemUwSzRLR01IMWFNUk12dE9PSGh4ckRt?= =?utf-8?Q?rav1WOUCoR7nJxPbLH9XJbVZ4?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CY4PR11MB0024.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 2dc9724b-0d36-4fd9-ab2e-08da8712fb22 X-MS-Exchange-CrossTenant-originalarrivaltime: 26 Aug 2022 03:28:01.8392 (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: LA599GslbmgMjZURS/n1hjRkQEEoIBQUCiKPr3TeiphLK30O3ECeo8zln4LXgbCLPR5tJP69K0borXs0jC+KZg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR11MB5959 Return-Path: long1.huang@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 SGkgQWxsLA0KDQpJJ20gdGhlIHN1Ym1pdHRlci4gDQoNCj09PT09PT09PT09PT09PT09PUhlcmUn cyB0aGUgRFNDIHByZWNlZGVuY2UgcnVsZSBmcm9tIERTQyBTcGVjPT09PT09PT09PT09PT09PT09 PQ0KVGhlIExpYnJhcnkgSW5zdGFuY2VzIHdpbGwgYmUgc2VsZWN0ZWQgdXNpbmcgdGhlIGZvbGxv d2luZyBydWxlcyB0byBzYXRpc2Z5IGEgbGlicmFyeSBjbGFzcyBmb3INCmVhY2ggbW9kdWxlIGxp c3RlZCBpbiB0aGUgW0NvbXBvbmVudHNdIHNlY3Rpb24gKGluIG9yZGVyIG9mIGhpZ2hlc3QgcHJl Y2VkZW5jZSk6DQoxLiA8TGlicmFyeUNsYXNzZXM+IGFzc29jaWF0ZWQgd2l0aCB0aGUgSU5GIGZp bGUgaW4gdGhlIFtDb21wb25lbnRzXSBzZWN0aW9uDQoyLiBbTGlicmFyeUNsYXNzZXMuJChBcmNo KS4kKE1PRFVMRV9UWVBFKSwgTGlicmFyeUNsYXNzZXMuJChBcmNoKS4kKE1PRFVMRV9UWVBFKV0N CjMuIFtMaWJyYXJ5Q2xhc3Nlcy4kKEFyY2gpLiQoTU9EVUxFX1RZUEUpXQ0KNC4gW0xpYnJhcnlD bGFzc2VzLmNvbW1vbi4kKE1PRFVMRV9UWVBFKV0NCjUuIFtMaWJyYXJ5Q2xhc3Nlcy4kKEFyY2gp XQ0KNi4gW0xpYnJhcnlDbGFzc2VzLmNvbW1vbl0gb3IgW0xpYnJhcnlDbGFzc2VzXQ0KPT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09DQoNCkJhY2tncm91bmQ6DQpPdXIgc3lzdGVtIHRha2VzIERYRSBhbmQgbGF0 ZXIgc3RhZ2VzIGFzIDY0LWJpdCBieSBkZWZhdWx0LCB1c2luZyBbTGlicmFyeUNsYXNzZXMuWDY0 XSBvciBhcHBlbmRpbmcgYSBtb3JlIGRldGFpbGVkIHNlY3Rpb24gIk1PRFVMRV9UWVBFIihlLmcu IFtMaWJyYXJ5Q2xhc3Nlcy5YNjQuRFhFX0NPUkVdLCBbTGlicmFyeUNsYXNzZXMuWDY0LkRYRV9T TU1fRFJJVkVSXSkuIEZvciBTRUMgb3IgUEVJLCAgdXNlIFtMaWJyYXJ5Q2xhc3Nlcy5JQTMyXSBv ciBbTGlicmFyeUNsYXNzZXMuSUEzMi5TRUNdLCBbTGlicmFyeUNsYXNzZXMuSUEzMi5QRUlNXSwg ZXRjLiBJdCB3b3JrcyBmaW5lIGZvciB0cmFkaXRpb25hbC4NCg0KV2l0aCB0aGUgYXJyaXZhbCBv ZiBwdXJlIFg2NCwgdGhlcmUgd2lsbCBiZSBzb21lIGxpbmtpbmcgaXNzdWVzIGluIHRoaXMgd2F5 LiBCZWNhdXNlIHdoaWNoIGxpYnJhcnkgdG8gbGluayBhZ2FpbnN0IGNhbm5vdCBiZSBkZXRlcm1p bmVkIHNpbXBseSB1c2luZyBBUkNILiANCkR1cmluZyB0aGUgZGV2ZWxvcG1lbnQgb2YgWDY0IFBF SSwgd2UgZm91bmQgdGhhdCB0aGUgYWN0dWFsIGJlaGF2aW9yIG9mIEJhc2VUb29scyBmb3IgRFND IHByZWNlZGVuY2U6DQpbTGlicmFyeUNsYXNzZXMuY29tbW9uLlBFSU1dICAgPCAgIFtMaWJyYXJ5 Q2xhc3Nlcy5YNjRdDQpbTGlicmFyeUNsYXNzZXMuSUEzMi5QRUlNXSAgICAgICAgICAgPiAgIFtM aWJyYXJ5Q2xhc3Nlcy5YNjRdDQpbTGlicmFyeUNsYXNzZXMuWDY0LlBFSU1dICAgICAgICAgICAg PiAgIFtMaWJyYXJ5Q2xhc3Nlcy5YNjRdDQoNCldlIGNhbiBzZWUgdGhhdCB0aGlzIGRvZXMgbm90 IG1hdGNoIHRoZSBvcmRlciBvZiA0IGFuZCA1IGluIHRoZSBzcGVjLg0KDQpTbyB3aGVuIHdlIHRy aWVkIHRvIHVzZSAiW0xpYnJhcnlDbGFzc2VzLmNvbW1vbi5NT0RVTEVfVFlQRV0iIHN1Y2ggdGhl IGNvbW1vbiB3YXlzIHRvIHN1cHBvcnQgYm90aCBYNjQgYW5kIElBMzIgU0VDICYgUEVJIGFuZCBh dm9pZCBkdXBsaWNhdGlvbiwgYmVmb3JlIHRoZSBmaXhlZCBwYXRjaCwgbW9kdWxlcyBpbiB0aGUg UEVJIHN0YWdlIHdpbGwgbGlua2luZyBEWEUgYW5kIGxhdGVyIHN0YWdlJ3MgbGlicmFyaWVzIGZp cnN0KHVuZGVyIFtMaWJyYXJ5Q2xhc3Nlcy5YNjRdKSwgaXQgd2lsbCBjYXVzZSBtYW55IHB1enps aW5nIGxpbmtpbmcgaXNzdWVzLiBBZnRlciB0aGUgZml4ZWQgcGF0Y2ggZG93bnN0cmVhbSwgd2Ug c2V0dXAgdGhlIFg2NCBQRUkgYnVpbGQgdGFyZ2V0LCBhbmQgd29ya3Mgd2VsbCBmb3Igc2V2ZXJh bCBkYXlzKGJvdGggZm9yIElBMzIgYW5kIFg2NCBTRUMgJiBQRUkgYnVpbGQpLg0KDQpGb3IgQXJk IEJpZXNoZXV2ZWwncyBxdWVzdGlvbjoNCkkgdGhpbmsgaXQgbWF5IGJlIHRoZSBMb2NrQm94TGli IHVuZGVyIFtMaWJyYXJ5Q2xhc3Nlcy5BUk0sIExpYnJhcnlDbGFzc2VzLkFBUkNINjRdIGRvZXNu J3QgcHJvdmlkZSB0aGUgTU9EVUxFX1RZUEUgc2VjdGlvbiwgaXQgY2FuIHdvcmsgYmVmb3JlIHRo aXMgcGF0Y2ggYXMgSSBzYWlkIGFib3ZlLiBCdXQgbm93IGl0IHNob3VsZCBiZSByZXBsYWNlZCB3 aXRoIFtMaWJyYXJ5Q2xhc3Nlcy5BUk0uTU9EVUxFX1RZUEUsIExpYnJhcnlDbGFzc2VzLkFBUkNI NjQuTU9EVUxFX1RZUEVdIHRvIGdldCBoaWdoZXIgcHJpb3JpdHkgdGhhbiBMb2NrQm94TGliIHVu ZGVyIFtMaWJyYXJ5Q2xhc3Nlcy5jb21vbi5NT0RVTEVfVFlQRV0uDQoNCkNvbmNsdXNpb246DQpG cm9tIG15IHBvaW50IG9mIHZpZXcsIEkgdGhpbmsgdGhlIERTQyBwcmVjZWRlbmNlIHJ1bGUgZGVm aW5lZCBieSBzcGVjIGlzIHJlYXNvbmFibGUgYW5kIG1ha2Ugc2Vuc2UuIE1pblBsYXRmb3JtIGdp dmVzIHVzIGEgZ29vZCBleGFtcGxlLCB1c2luZyB0aGUgbWV0aG9kIG9mIFtMaWJyYXJ5Q2xhc3Nl cy5jb21tb24uTU9EVUxFX1RZUEVdLiBEbyBub3QgYXNzdW1lIHRoZSBjdXJyZW50IGFyY2gsIHVz ZSAiY29tbW9uIiBpbnN0ZWFkLCB0aGVuIGFsd2F5cyBhcHBlbmQgIk1PRFVMRV9UWVBFIiBzZWN0 aW9uLiBJdCdzIGNsZWFyLCBjb21wYXRpYmxlIGFuZCB1bmFtYmlndW91cy4gU28gd2Ugc3Ryb25n bHkgc3VwcG9ydCB0aGUgaWRlYSBvZiB0aGUgRFNDIHNwZWM6IFVubGVzcyBzcGVjaWZpZWQgdW5k ZXIgW0NvbXBvbmVudHNdLCB0aGVuIG1vcmUgZGV0YWlsZWQgc2VjdGlvbnMsIGhpZ2hlciBwcmlv cml0eS4gSSB0aGluayBpdCB3aWxsIGJlbmVmaXQgZnV0dXJlIGRldmVsb3BtZW50Lg0KDQpTaG9y dCB0ZXJtIHNvbHV0aW9uOg0Kd2UgY2FuIGFncmVlIHRvIHRlbXBvcmFyaWx5IHJldmVydCB0aGlz IHBhdGNoIGZvciBzdGFibGUgdGFnIGlmIHdlIGNhbid0IGZpeCB0aGUgTWRlTW9kdWxlUGtnIGJ1 aWxkIGlzc3VlcyBvciBvdGhlciBwb3RlbnRpYWwgcHJvYmxlbXMgaW1tZWRpYXRlbHkuIEZvciB1 cywgd2Ugd2lsbCBkb3duc3RyZWFtIG92ZXJ3cml0ZSBpdCB0byBrZWVwIHRoaXMgY2hhbmdlIHRv IHN1cHBvcnQgdGhlIFg2NCBidWlsZCB0YXJnZXQuDQoNCkxvbmcgdGVybSBzb2x1dGlvbjoNCldl IHN1Z2dlc3QgdGhhdCB3ZSBjYW4gZGlzY3VzcyB0aGUgcmF0aW9uYWxlIG9mIHRoaXMgcnVsZSBh bmQgZXZhbHVhdGUgaWYgdGhpcyBwYXRjaCBzaG91bGQgYmUgcmVpbnRyb2R1Y2VkIGFmdGVyIHRo ZSBzdGFibGUgdGFnLg0KDQpUaGFua3MsDQpIdWFuZywgTG9uZw0KDQotLS0tLU9yaWdpbmFsIE1l c3NhZ2UtLS0tLQ0KRnJvbTogRmVuZywgQm9iIEMgPGJvYi5jLmZlbmdAaW50ZWwuY29tPiANClNl bnQ6IEZyaWRheSwgQXVndXN0IDI2LCAyMDIyIDg6NTYgQU0NClRvOiBLaW5uZXksIE1pY2hhZWwg RCA8bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20+OyBkZXZlbEBlZGsyLmdyb3Vwcy5pbzsgcXVp Y19sbGluZGhvbEBxdWljaW5jLmNvbTsgR2FvLCBMaW1pbmcgPGdhb2xpbWluZ0BieW9zb2Z0LmNv bS5jbj47ICdBcmQgQmllc2hldXZlbCcgPGFyZGJAa2VybmVsLm9yZz47IHJlYmVjY2FAYnNkaW8u Y29tOyBDaGVuLCBDaHJpc3RpbmUgPFl1d2VpLkNoZW5AaW50ZWwuY29tPg0KQ2M6ICdBbmRyZXcg RmlzaCcgPGFmaXNoQGFwcGxlLmNvbT47IFdhbmcsIEppYW4gSiA8amlhbi5qLndhbmdAaW50ZWwu Y29tPjsgSHVhbmcsIExvbmcxIDxsb25nMS5odWFuZ0BpbnRlbC5jb20+DQpTdWJqZWN0OiBSRTog W2VkazItZGV2ZWxdIE1kZU1vZHVsZVBrZyBidWlsZCBmYWlscyBmb3IgQUFSQ0g2NCBvbiBVYnVu dHUgMjIuMDQNCg0KKyBIdWFuZyBMb25nLCB0aGUgYnVnIHN1Ym1pdHRlci4NCg0KSSBhbSBPSyB0 byByZXZlcnQgdGhpcyBwYXRjaCBmb3IgdGhpcyBzdGFibGUgdGFnLg0KDQpTaW5jZSB0aGlzIHBh dGNoIGJyZWFrIHRoZSBNZGVNb2R1bGVQa2cgYnVpbGQsIGFsc28gc3VnZ2VzdCB0byBhZGQgdGhp cyBjYXNlIGluIGVkazIgQ0kuDQoNClRoYW5rcywNCkJvYg0KDQotLS0tLU9yaWdpbmFsIE1lc3Nh Z2UtLS0tLQ0KRnJvbTogS2lubmV5LCBNaWNoYWVsIEQgPG1pY2hhZWwuZC5raW5uZXlAaW50ZWwu Y29tPg0KU2VudDogVGh1cnNkYXksIEF1Z3VzdCAyNSwgMjAyMiAxMTo0NCBQTQ0KVG86IGRldmVs QGVkazIuZ3JvdXBzLmlvOyBxdWljX2xsaW5kaG9sQHF1aWNpbmMuY29tOyBGZW5nLCBCb2IgQyA8 Ym9iLmMuZmVuZ0BpbnRlbC5jb20+OyBHYW8sIExpbWluZyA8Z2FvbGltaW5nQGJ5b3NvZnQuY29t LmNuPjsgJ0FyZCBCaWVzaGV1dmVsJyA8YXJkYkBrZXJuZWwub3JnPjsgcmViZWNjYUBic2Rpby5j b207IENoZW4sIENocmlzdGluZSA8eXV3ZWkuY2hlbkBpbnRlbC5jb20+OyBLaW5uZXksIE1pY2hh ZWwgRCA8bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20+DQpDYzogJ0FuZHJldyBGaXNoJyA8YWZp c2hAYXBwbGUuY29tPjsgV2FuZywgSmlhbiBKIDxqaWFuLmoud2FuZ0BpbnRlbC5jb20+DQpTdWJq ZWN0OiBSRTogW2VkazItZGV2ZWxdIE1kZU1vZHVsZVBrZyBidWlsZCBmYWlscyBmb3IgQUFSQ0g2 NCBvbiBVYnVudHUgMjIuMDQNCg0KSGkgQm9iLA0KDQpUaGVyZSB3YXMgZmVlZGJhY2sgaW4gdGhl IEJ1Z3ppbGxhIG9uIEp1bHkgNSBhc2tpbmcgaWYgdGhpcyBpcyBhIERTQyBzcGVjIGlzc3VlIG9y IGEgQmFzZVRvb2xzIGltcGxlbWVudGF0aW9uIGlzc3VlLiAgVGhlcmUgd2FzIG5vIHJlc3BvbnNl IHRvIHRoYXQgcXVlc3Rpb24uDQoNCldoeSB3YXMgYSBzcGVjIGNoYW5nZSBub3QgY29uc2lkZXJl ZCBmb3IgdGhpcyBjYXNlIHRvIG1hdGNoIHRoZSBCYXNlVG9vbHMgYmVoYXZpb3I/DQoNCldoeSB3 ZXJlIG5vIGFkZGl0aW9uYWwgZGV0YWlscyBhZGRlZCB0byB0aGUgQlo/DQoNCkkgYWdyZWUgd2l0 aCBMZWlmLiAgSWYgdGhpcyBjaGFuZ2UgaW50cm9kdWNlZCByZWdyZXNzaW9ucywgd2Ugc2hvdWxk IGNvbnNpZGVyIGEgcmV2ZXJ0IGFuZCBldmFsdWF0ZSBhZ2FpbiBhZnRlciB0aGUgcmVsZWFzZS4N Cg0KVGhhbmtzLA0KDQpNaWtlDQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJv bTogZGV2ZWxAZWRrMi5ncm91cHMuaW8gPGRldmVsQGVkazIuZ3JvdXBzLmlvPiBPbiBCZWhhbGYg T2YgTGVpZiANCj4gTGluZGhvbG0NCj4gU2VudDogVGh1cnNkYXksIEF1Z3VzdCAyNSwgMjAyMiAx OjQ5IEFNDQo+IFRvOiBGZW5nLCBCb2IgQyA8Ym9iLmMuZmVuZ0BpbnRlbC5jb20+OyBkZXZlbEBl ZGsyLmdyb3Vwcy5pbzsgR2FvLCBMaW1pbmcgPGdhb2xpbWluZ0BieW9zb2Z0LmNvbS5jbj47ICdB cmQgQmllc2hldXZlbCcNCj4gPGFyZGJAa2VybmVsLm9yZz47IHJlYmVjY2FAYnNkaW8uY29tOyBD aGVuLCBDaHJpc3RpbmUgDQo+IDx5dXdlaS5jaGVuQGludGVsLmNvbT4NCj4gQ2M6ICdBbmRyZXcg RmlzaCcgPGFmaXNoQGFwcGxlLmNvbT47IEtpbm5leSwgTWljaGFlbCBEIA0KPiA8bWljaGFlbC5k Lmtpbm5leUBpbnRlbC5jb20+OyBXYW5nLCBKaWFuIEogPGppYW4uai53YW5nQGludGVsLmNvbT4N Cj4gU3ViamVjdDogUmU6IFtlZGsyLWRldmVsXSBNZGVNb2R1bGVQa2cgYnVpbGQgZmFpbHMgZm9y IEFBUkNINjQgb24gDQo+IFVidW50dSAyMi4wNA0KPiANCj4gSGkgQm9iLA0KPiANCj4gWW91IGFy ZSBzdWdnZXN0aW5nIHRvIGtub3dpbmdseSBicmVhayBidWlsZHMgYmV0d2VlbiBvbmUgc3RhYmxl IHRhZyANCj4gYW5kIGFub3RoZXIgb24gYSB0ZWNobmljYWxpdHksIGZvciBvbmUgb2YgdGhlIG1v c3QgY29tbW9uIChhbmQgdXAgdG8NCj4gZGF0ZSkgYnVpbGQgb3BlcmF0aW5nIHN5c3RlbXMuDQo+ IA0KPiBUaGUgcHVycG9zZSBvZiB0aGUgc3RhYmxlIHRhZyBpcyB0byBhdm9pZCB1bnBsYW5uZWQg YnJlYWthZ2VzLiANCj4gQ2F0Y2hpbmcgdGhpcyBzb3J0IG9mIHNpdHVhdGlvbiBpcyBsaXRlcmFs bHkgd2hhdCBpdCBpcyBmb3IuDQo+IA0KPiAvDQo+ICAgICAgTGVpZg0KPiANCj4gT24gMjAyMi0w OC0yNCAxODoxNywgRmVuZywgQm9iIEMgd3JvdGU6DQo+ID4gSGkgTGltaW5nLA0KPiA+DQo+ID4g VGhpcyBjb21taXQgMDM5YmRiNGQzZTk2ZjljOTI2NGFiZjEzNWI4YTBlZWYyZTJiNDg2MCB3YXMg dG8gZml4IHRoZSANCj4gPiBidWcgdGhhdCB0aGUgYmFzZXRvb2xzIGltcGxlbWVudGF0aW9uIGRv c2Ugbm90IGZvbGxvdyB0aGUNCj4gZHNjIHNwZWMgYW5kIHBhc3MgdGhlIGVkazIgQ0kuDQo+ID4g VGhlIHBhdGNoIHdhcyBzZW5kIG9uIEp1bmUgMzAsIHJldmlld2VkIG9uIEp1bHkgMTEgYW5kIHB1 c2hlZCBvbiANCj4gPiBKdWx5IDE3LiBJIHRoaW5rIHRoZXJlIHdhcyBlbm91Z2ggdGltZSB0byBn aXZlIGZlZWRiYWNrIHRvDQo+IHRoaXMgY2hhbmdlLg0KPiA+DQo+ID4gV2h5IG5vdCBjb25zaWRl ciB0byBmaXggdGhlIERTQyBmaWxlPw0KPiA+DQo+ID4gVGhhbmtzLA0KPiA+IEJvYg0KPiA+DQo+ ID4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPiBGcm9tOiBkZXZlbEBlZGsyLmdyb3Vw cy5pbyA8ZGV2ZWxAZWRrMi5ncm91cHMuaW8+IE9uIEJlaGFsZiBPZiANCj4gPiBnYW9saW1pbmcg dmlhIGdyb3Vwcy5pbw0KPiA+IFNlbnQ6IFdlZG5lc2RheSwgQXVndXN0IDI0LCAyMDIyIDM6MTYg UE0NCj4gPiBUbzogRmVuZywgQm9iIEMgPGJvYi5jLmZlbmdAaW50ZWwuY29tPjsgZGV2ZWxAZWRr Mi5ncm91cHMuaW87ICdBcmQgDQo+ID4gQmllc2hldXZlbCcgPGFyZGJAa2VybmVsLm9yZz47IHJl YmVjY2FAYnNkaW8uY29tOyBDaGVuLA0KPiBDaHJpc3RpbmUgPHl1d2VpLmNoZW5AaW50ZWwuY29t Pg0KPiA+IENjOiAnQW5kcmV3IEZpc2gnIDxhZmlzaEBhcHBsZS5jb20+OyAnTGVpZiBMaW5kaG9s bScgDQo+ID4gPHF1aWNfbGxpbmRob2xAcXVpY2luYy5jb20+OyBLaW5uZXksIE1pY2hhZWwgRA0K PiA8bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20+OyBXYW5nLCBKaWFuIEogPGppYW4uai53YW5n QGludGVsLmNvbT4NCj4gPiBTdWJqZWN0OiDlm57lpI06IFtlZGsyLWRldmVsXSBNZGVNb2R1bGVQ a2cgYnVpbGQgZmFpbHMgZm9yIEFBUkNINjQgb24gDQo+ID4gVWJ1bnR1IDIyLjA0DQo+ID4NCj4g PiBCb2I6DQo+ID4gICBUaGUgY29tbWl0IDAzOWJkYjRkM2U5NmY5YzkyNjRhYmYxMzViOGEwZWVm MmUyYjQ4NjAgd2FzIG1lcmdlZCANCj4gPiBpbnRvIEVkazIgb24gTGFzdCBtb250aCAoMjAyMiBK dWx5IDE3dGgpLiBUaGlzIGlzIHZlcnkgbmV3DQo+IGNoYW5nZS4gSXQgYnJpbmdzIHRoZSBiZWhh dmlvciBjaGFuZ2UuIEJ1dCwgaXQgZG9lc24ndCBoaWdobGlnaHQgaXRzIGltcGFjdCB0byBjb2xs ZWN0IGZlZWRiYWNrLg0KPiA+DQo+ID4gICBJIHN1Z2dlc3QgdG8gcmV2ZXJ0IGl0LCBiZWNhdXNl IEkgdGhpbmsgd2UgbmVlZCBtb3JlIHRpbWUgdG8gDQo+ID4gZGlzY3VzcyB0aGlzIGJlaGF2aW9y IGNoYW5nZS4gRXZlbiBpZiB3ZSBkZWNpZGUgdG8gbWFrZSB0aGlzDQo+IGNoYW5nZSwgd2UgYWxz byBuZWVkIHRvIGdpdmUgb3RoZXIgcGVvcGxlIGVub3VnaCB0aW1lIHRvIHVwZGF0ZSBEU0MgZmls ZS4NCj4gPg0KPiA+IFRoYW5rcw0KPiA+IExpbWluZw0KPiA+PiAtLS0tLemCruS7tuWOn+S7ti0t LS0tDQo+ID4+IOWPkeS7tuS6ujogRmVuZywgQm9iIEMgPGJvYi5jLmZlbmdAaW50ZWwuY29tPg0K PiA+PiDlj5HpgIHml7bpl7Q6IDIwMjLlubQ45pyIMjPml6UgMTU6NDANCj4gPj4g5pS25Lu25Lq6 OiBkZXZlbEBlZGsyLmdyb3Vwcy5pbzsgR2FvLCBMaW1pbmcgPGdhb2xpbWluZ0BieW9zb2Z0LmNv bS5jbj47IA0KPiA+PiAnQXJkIEJpZXNoZXV2ZWwnIDxhcmRiQGtlcm5lbC5vcmc+OyByZWJlY2Nh QGJzZGlvLmNvbTsgQ2hlbiwgDQo+ID4+IENocmlzdGluZSA8eXV3ZWkuY2hlbkBpbnRlbC5jb20+ DQo+ID4+IOaKhOmAgTogJ0FuZHJldyBGaXNoJyA8YWZpc2hAYXBwbGUuY29tPjsgJ0xlaWYgTGlu ZGhvbG0nDQo+ID4+IDxxdWljX2xsaW5kaG9sQHF1aWNpbmMuY29tPjsgS2lubmV5LCBNaWNoYWVs IEQgDQo+ID4+IDxtaWNoYWVsLmQua2lubmV5QGludGVsLmNvbT47IFdhbmcsIEppYW4gSiA8amlh bi5qLndhbmdAaW50ZWwuY29tPg0KPiA+PiDkuLvpopg6IFJFOiBbZWRrMi1kZXZlbF0gTWRlTW9k dWxlUGtnIGJ1aWxkIGZhaWxzIGZvciBBQVJDSDY0IG9uIFVidW50dQ0KPiA+PiAyMi4wNA0KPiA+ Pg0KPiA+PiBIaSBMaW1pbmcsDQo+ID4+DQo+ID4+IFJldmVydGluZyBwYXRjaCBtYXkgbm90IGEg Z29vZCBpZGVhLCBzb21lIHBsYXRmb3JtcyBoYXZlIGRvbmUgdGhlIA0KPiA+PiBpbXBsZW1lbnRh dGlvbiBiYXNlZCBvbiB0aGUgRFNDIHNwZWMsIGlmIHJldmVydCwgdGhvc2UgcGxhdGZvcm1zIA0K PiA+PiBidWlsZCB3aWxsIGJyZWFrLg0KPiA+PiBUaGlzIGNvbW1pdCAwMzliZGI0ZDNlOTZmOWM5 MjY0YWJmMTM1YjhhMGVlZjJlMmI0ODYwIG1ha2UgdGhlIA0KPiA+PiBCYXNldG9vbHMgYmVoYXZp b3IgYmUgY29uc2lzdGVudCB3aXRoIERTQyBzcGVjIHNvIEkgZG9uJ3QgdGhpbmsgDQo+ID4+IGl0 J3MgYSByZWdyZXNzaW9uIGJ1Zy4NCj4gPj4NCj4gPj4gVGhhbmtzLA0KPiA+PiBCb2INCj4gPj4N Cj4gPj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPj4gRnJvbTogZGV2ZWxAZWRrMi5n cm91cHMuaW8gPGRldmVsQGVkazIuZ3JvdXBzLmlvPiBPbiBCZWhhbGYgT2YgDQo+ID4+IGdhb2xp bWluZyB2aWEgZ3JvdXBzLmlvDQo+ID4+IFNlbnQ6IFR1ZXNkYXksIEF1Z3VzdCAyMywgMjAyMiA5 OjU1IEFNDQo+ID4+IFRvOiAnQXJkIEJpZXNoZXV2ZWwnIDxhcmRiQGtlcm5lbC5vcmc+OyBkZXZl bEBlZGsyLmdyb3Vwcy5pbzsgDQo+ID4+IHJlYmVjY2FAYnNkaW8uY29tOyBGZW5nLCBCb2IgQyA8 Ym9iLmMuZmVuZ0BpbnRlbC5jb20+OyBDaGVuLCANCj4gPj4gQ2hyaXN0aW5lIDx5dXdlaS5jaGVu QGludGVsLmNvbT4NCj4gPj4gQ2M6ICdBbmRyZXcgRmlzaCcgPGFmaXNoQGFwcGxlLmNvbT47ICdM ZWlmIExpbmRob2xtJw0KPiA+PiA8cXVpY19sbGluZGhvbEBxdWljaW5jLmNvbT47IEtpbm5leSwg TWljaGFlbCBEIA0KPiA+PiA8bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20+OyBXYW5nLCBKaWFu IEogPGppYW4uai53YW5nQGludGVsLmNvbT4NCj4gPj4gU3ViamVjdDog5Zue5aSNOiBbZWRrMi1k ZXZlbF0gTWRlTW9kdWxlUGtnIGJ1aWxkIGZhaWxzIGZvciBBQVJDSDY0IG9uIA0KPiA+PiBVYnVu dHUgMjIuMDQNCj4gPj4gSW1wb3J0YW5jZTogSGlnaA0KPiA+Pg0KPiA+PiBZdXdlaToNCj4gPj4g ICAgVGhlIGNvbW1pdCAwMzliZGI0ZDNlOTZmOWM5MjY0YWJmMTM1YjhhMGVlZjJlMmI0ODYwIChC YXNlVG9vbHM6DQo+ID4+IEZpeCBEU0MgTGlicmFyeUNsYXNzIHByZWNlZGVuY2UgcnVsZSkgaW50 cm9kdWNlcyB0aGlzIGlzc3VlLiBJIA0KPiA+PiBhZ3JlZSB3aXRoIEFyZCBzdWdnZXN0aW9uIHRv IHJldmVydCB0aGlzIGNoYW5nZSBmaXJzdCBmb3IgdGhpcyANCj4gPj4gc3RhYmxlIHRhZyAyMDIy MDguIFRoZW4sIHdlIGNhbiBkaXNjdXNzIHRoaXMgY2hhbmdlIGluIHRoZSBkZXRhaWwuDQo+ID4+ DQo+ID4+IFRoYW5rcw0KPiA+PiBMaW1pbmcNCj4gPj4+IC0tLS0t6YKu5Lu25Y6f5Lu2LS0tLS0N Cj4gPj4+IOWPkeS7tuS6ujogQXJkIEJpZXNoZXV2ZWwgPGFyZGJAa2VybmVsLm9yZz4NCj4gPj4+ IOWPkemAgeaXtumXtDogMjAyMuW5tDjmnIgyMuaXpSAxNzozNA0KPiA+Pj4g5pS25Lu25Lq6OiBk ZXZlbEBlZGsyLmdyb3Vwcy5pbzsgcmViZWNjYUBic2Rpby5jb207IEZlbmcsIEJvYiBDIA0KPiA+ Pj4gPGJvYi5jLmZlbmdAaW50ZWwuY29tPjsgTGltaW5nIEdhbyA8Z2FvbGltaW5nQGJ5b3NvZnQu Y29tLmNuPg0KPiA+Pj4g5oqE6YCBOiBBbmRyZXcgRmlzaCA8YWZpc2hAYXBwbGUuY29tPjsgTGVp ZiBMaW5kaG9sbSANCj4gPj4+IDxxdWljX2xsaW5kaG9sQHF1aWNpbmMuY29tPjsgTWljaGFlbCBE IEtpbm5leSANCj4gPj4+IDxtaWNoYWVsLmQua2lubmV5QGludGVsLmNvbT47IEppYW4gSiBXYW5n IDxqaWFuLmoud2FuZ0BpbnRlbC5jb20+DQo+ID4+PiDkuLvpopg6IFJlOiBbZWRrMi1kZXZlbF0g TWRlTW9kdWxlUGtnIGJ1aWxkIGZhaWxzIGZvciBBQVJDSDY0IG9uIA0KPiA+Pj4gVWJ1bnR1DQo+ ID4+PiAyMi4wNA0KPiA+Pj4NCj4gPj4+IE9uIE1vbiwgMjIgQXVnIDIwMjIgYXQgMTE6MzAsIEFy ZCBCaWVzaGV1dmVsIDxhcmRiQGtlcm5lbC5vcmc+IHdyb3RlOg0KPiA+Pj4+DQo+ID4+Pj4gT24g TW9uLCAyMiBBdWcgMjAyMiBhdCAxMToxMSwgQXJkIEJpZXNoZXV2ZWwgPGFyZGJAa2VybmVsLm9y Zz4gd3JvdGU6DQo+ID4+Pj4+DQo+ID4+Pj4+IChjYyBCb2IpDQo+ID4+Pj4+DQo+ID4+Pj4+IE5P VEUgdGhpcyBhZmZlY3RzIHRoZSBzdGFibGUgdGFnIC0gcGxlYXNlIHNlZSBiZWxvdw0KPiA+Pj4+ Pg0KPiA+Pj4+Pg0KPiA+Pj4+PiBPbiBTdW4sIDIxIEF1ZyAyMDIyIGF0IDA2OjM0LCBSZWJlY2Nh IENyYW4gPHJlYmVjY2FAYnNkaW8uY29tPg0KPiA+Pj4gd3JvdGU6DQo+ID4+Pj4+Pg0KPiA+Pj4+ Pj4gSSBub3RpY2VkIHRoYXQgTWRlTW9kdWxlUGtnIGZhaWxzIHRvIGJ1aWxkIG9uIG15IFVidW50 dSAyMi4wNCANCj4gPj4+Pj4+IHN5c3RlbSAoYW5kIHByZXZpb3VzbHkgb24gdGhlIFVidW50dSAy MC4wNCBpbnN0YWxsYXRpb24pLiBJcyANCj4gPj4+Pj4+IHRoaXMgYQ0KPiA+PiBrbm93biBidWc/ DQo+ID4+Pj4+Pg0KPiA+Pj4+Pj4gSXQgc2hvdWxkbid0IGJlIHJlbGV2YW50LCBidXQgSSdtIHVz aW5nIGdjYyB2ZXJzaW9uIDExLjIuMCANCj4gPj4+Pj4+IChVYnVudHUgMTEuMi4wLTE3dWJ1bnR1 MSkuIEJ1dCBwZXJoYXBzIG1vcmUgcmVsZXZhbnQsIEknbSB1c2luZw0KPiA+PiBQeXRob24gMy4x MC40Lg0KPiA+Pj4+Pj4NCj4gPj4+Pj4+IEknbSB0cnlpbmcgdG8gYnVpbGQgY29tbWl0DQo+ID4+ PiBlMmFjNjhhMjNiNDk1NGQ1YzAzOTk5MTNhMWRmM2RkOWZkOTAzMTVkLg0KPiA+Pj4+Pj4NCj4g Pj4+Pj4+DQo+ID4+Pj4+PiBiY3JhbkBwaG90b246fi9zcmMvdG1wL2VkazIkIGJ1aWxkIC1wDQo+ ID4+PiBNZGVNb2R1bGVQa2cvTWRlTW9kdWxlUGtnLmRzYyAtYQ0KPiA+Pj4+Pj4gQUFSQ0g2NCAt dCBHQ0M1IC1iIFJFTEVBU0UNCj4gPj4+Pj4+IEJ1aWxkIGVudmlyb25tZW50Og0KPiA+Pj4+Pj4g TGludXgtNS4xNS4wLTQ2LWdlbmVyaWMteDg2XzY0LXdpdGgtZ2xpYmMyLjM1DQo+ID4+Pj4+PiBC dWlsZCBzdGFydCB0aW1lOiAyMjoyOToxOCwgQXVnLjIwIDIwMjINCj4gPj4+Pj4+DQo+ID4+Pj4+ PiBXT1JLU1BBQ0UgICAgICAgID0gL2hvbWUvYmNyYW4vc3JjL3RtcC9lZGsyDQo+ID4+Pj4+PiBF REtfVE9PTFNfUEFUSCAgID0gL2hvbWUvYmNyYW4vc3JjL3RtcC9lZGsyL0Jhc2VUb29scw0KPiA+ Pj4+Pj4gQ09ORl9QQVRIICAgICAgICA9IC9ob21lL2JjcmFuL3NyYy90bXAvZWRrMi9Db25mDQo+ ID4+Pj4+PiBQWVRIT05fQ09NTUFORCAgID0gL3Vzci9iaW4vcHl0aG9uMw0KPiA+Pj4+Pj4NCj4g Pj4+Pj4+DQo+ID4+Pj4+PiBQcm9jZXNzaW5nIG1ldGEtZGF0YQ0KPiA+Pj4+Pj4gLkFyY2hpdGVj dHVyZShzKSAgPSBBQVJDSDY0DQo+ID4+Pj4+PiBCdWlsZCB0YXJnZXQgICAgID0gUkVMRUFTRQ0K PiA+Pj4+Pj4gVG9vbGNoYWluICAgICAgICA9IEdDQzUNCj4gPj4+Pj4+DQo+ID4+Pj4+PiBBY3Rp dmUgUGxhdGZvcm0gICAgICAgICAgPQ0KPiA+Pj4+Pj4gL2hvbWUvYmNyYW4vc3JjL3RtcC9lZGsy L01kZU1vZHVsZVBrZy9NZGVNb2R1bGVQa2cuZHNjDQo+ID4+Pj4+Pg0KPiA+Pj4+Pj4NCj4gPj4+ Pj4+IGJ1aWxkLnB5Li4uDQo+ID4+Pj4+Pg0KPiA+Pj4NCj4gPj4gL2hvbWUvYmNyYW4vc3JjL3Rt cC9lZGsyL01kZU1vZHVsZVBrZy9MaWJyYXJ5L1NtbUxvY2tCb3hMaWIvU21tTA0KPiA+Pj4gb2Nr Qm94UGVpTGliLmluZig0Mik6DQo+ID4+Pj4+PiBlcnJvciAzMDAwOiBQQ0QNCj4gPj4+Pj4+IFtn RWZpTWRlTW9kdWxlUGtnVG9rZW5TcGFjZUd1aWQuUGNkRHhlSXBsU3dpdGNoVG9Mb25nTW9kZV0g aW4NCj4gPj4+Pj4+DQo+ID4+Pg0KPiA+PiBbL2hvbWUvYmNyYW4vc3JjL3RtcC9lZGsyL01kZU1v ZHVsZVBrZy9MaWJyYXJ5L1NtbUxvY2tCb3hMaWIvU21tTA0KPiA+Pj4gb2NrQm94UGVpTGliLmlu Zl0NCj4gPj4+Pj4+IGlzIG5vdCBmb3VuZCBpbiBkZXBlbmRlbnQgcGFja2FnZXM6DQo+ID4+Pj4+ Pg0KPiA+PiAvaG9tZS9iY3Jhbi9zcmMvdG1wL2VkazIvTWRlUGtnL01kZVBrZy5kZWMNCj4gPj4+ Pj4+DQo+ID4+PiAvaG9tZS9iY3Jhbi9zcmMvdG1wL2VkazIvTWRlTW9kdWxlUGtnL01kZU1vZHVs ZVBrZy5kZWMNCj4gPj4+Pj4+DQo+ID4+Pj4+Pg0KPiA+Pj4+Pg0KPiA+Pj4+PiBUaGlzIGxvb2tz IGxpa2UgYSBCYXNlVG9vbHMgcmVncmVzc2lvbiB0byBtZSAtIGFmYWlrLCB0aGVzZSANCj4gPj4+ Pj4gcGFja2FnZXMgYWxsIHVzZWQgdG8gYnVpbGQgZm9yIEFBUkNINjQgaW4gdGhlIHBhc3QuDQo+ ID4+Pj4+DQo+ID4+Pj4+IFRoZSBmb2xsb3dpbmcgTG9ja0JveExpYiByZXNvbHV0aW9ucyBhcHBl YXIgaW4gTWRlTW9kdWxlUGtnLmRzYyANCj4gPj4+Pj4gKHdpdGggbGluZSBudW1iZXJzKQ0KPiA+ Pj4+Pg0KPiA+Pj4+PiAxMTUtW0xpYnJhcnlDbGFzc2VzLmNvbW1vbi5QRUlNXQ0KPiA+Pj4+PiAx MTk6DQo+ID4+Pg0KPiA+PiBMb2NrQm94TGlifE1kZU1vZHVsZVBrZy9MaWJyYXJ5L1NtbUxvY2tC b3hMaWIvU21tTG9ja0JveFBlaUxpYi5pbmYNCj4gPj4+Pj4NCj4gPj4+Pj4gMTc4LVtMaWJyYXJ5 Q2xhc3Nlcy5BUk0sIExpYnJhcnlDbGFzc2VzLkFBUkNINjRdDQo+ID4+Pj4+IDE4MToNCj4gPj4+ IExvY2tCb3hMaWJ8TWRlTW9kdWxlUGtnL0xpYnJhcnkvTG9ja0JveE51bGxMaWIvTG9ja0JveE51 bGxMaWIuaW5mDQo+ID4+Pj4+DQo+ID4+Pj4+IE5vIG90aGVyIFtMbGlicmFyeUNsYXNzZXNdIHJl ZmVyZW5jZXMgdG8gU21tTG9ja0JveFBlaUxpYi5pbmYgDQo+ID4+Pj4+IGV4aXN0IGluIHRoYXQg ZmlsZSwgYW5kIHRoZSBbQ29tcG9uZW50c10gcmVmZXJlbmNlIGRvZXMgbm90IA0KPiA+Pj4+PiBh cHBseSB0bw0KPiA+PiBBQVJDSDY0Lg0KPiA+Pj4+Pg0KPiA+Pj4+PiBUaGlzIG1lYW5zIHRoZSBE U0MgcGFyc2VyIGVuZHMgdXAgdXNpbmcgdGhlIGVhcmxpZXIgZGVmaW5pdGlvbiwgDQo+ID4+Pj4+ IHdoaWNoIEkgdGhpbmsgaXMgYSBidWcsIG9yIGF0IGxlYXN0IGEgY2hhbmdlIGluIGJlaGF2aW9y LiBOb3RlIA0KPiA+Pj4+PiB0aGF0IGRvaW5nIHRoaXMgc2lsZW50bHkgY291bGQgcG90ZW50aWFs bHkgYnJlYWsgbWFueSBwbGF0Zm9ybXMgDQo+ID4+Pj4+IGluIHN1YnRsZSB3YXlzIHNvIEkgdGhp bmsgdGhpcyBzaG91bGQgYmUgcm9vdCBjYXVzZWQgYW5kIA0KPiA+Pj4+PiBwcmVmZXJhYmx5IGZp eGVkIGJlZm9yZSBjcmVhdGluZyB0aGUgc3RhYmxlIHRhZy4NCj4gPj4+Pg0KPiA+Pj4+IFNlZW1z IHRvIGJlIGRlbGliZXJhdGU6DQo+ID4+Pj4NCj4gPj4+PiBjb21taXQgMDM5YmRiNGQzZTk2Zjlj OTI2NGFiZjEzNWI4YTBlZWYyZTJiNDg2MA0KPiA+Pj4+IEF1dGhvcjogQ2hlbiwgQ2hyaXN0aW5l IDxZdXdlaS5DaGVuQGludGVsLmNvbT4NCj4gPj4+PiBEYXRlOiAgIFRodSBKdW4gMzAgMTc6MDQ6 MDUgMjAyMiArMDgwMA0KPiA+Pj4+DQo+ID4+Pj4gICAgICBCYXNlVG9vbHM6IEZpeCBEU0MgTGli cmFyeUNsYXNzIHByZWNlZGVuY2UgcnVsZQ0KPiA+Pj4+DQo+ID4+Pj4gYnV0IEkgZG9uJ3QgdGhp bmsgdGhlIGltcGFjdCBvbiBvdGhlciBwbGF0Zm9ybXMgYW5kIGRyaXZlcnMgaGFzIA0KPiA+Pj4+ IGJlZW4gdGFrZW4gaW50byBhY2NvdW50IGhlcmUuIEFsc28sIHRoZSBkb2N1bWVudCBbMF0gc2Vl bXMgYW1iaWd1b3VzIHRvIG1lOg0KPiA+Pj4+DQo+ID4+Pj4gIiIiDQo+ID4+Pj4gVGhlIGZpcnN0 IGdsb2JhbGx5IGRlZmluZWQgbGlicmFyeSBpbnN0YW5jZSwgZGVmaW5lZCBpbiBhIERTQyANCj4g Pj4+PiBmaWxlLCB0aGF0IHNhdGlzZmllcyBhIG1vZHVsZSdzIHJlcXVpcmVtZW50IGZvciBhIExp YnJhcnkgQ2xhc3MsIA0KPiA+Pj4+IHVubGVzcyBzcGVjaWZpY2FsbHkgb3ZlcnJpZGRlbiBieSB0 aGUgbW9kdWxlIGluIHRoZSBbQ29tcG9uZW50c10gDQo+ID4+Pj4gc2VjdGlvbiwgd2lsbCBiZSB1 c2VkLg0KPiA+Pj4+ICIiIg0KPiA+Pj4+DQo+ID4+Pj4gVGhpcyBzYXlzIHRoYXQgdGhlIGZpcnN0 IG9jY3VycmVuY2Ugb2YgYSBsaWJyYXJ5IGluc3RhbmNlIA0KPiA+Pj4+IGRlZmluaXRpb24gdGhh dCBzYXRpc2ZpZXMgYSBJTkYgZGVwZW5kZW5jeSB3aWxsIGJlIHNlbGVjdGVkLg0KPiA+Pj4+IFRo ZW4sIHRoZXJlIGlzDQo+ID4+Pj4NCj4gPj4+PiAiIiINCj4gPj4+PiBUaGUgTGlicmFyeSBJbnN0 YW5jZXMgd2lsbCBiZSBzZWxlY3RlZCB1c2luZyB0aGUgZm9sbG93aW5nIHJ1bGVzIA0KPiA+Pj4+ IHRvIHNhdGlzZnkgYSBsaWJyYXJ5IGNsYXNzIGZvciBlYWNoIG1vZHVsZSBsaXN0ZWQgaW4gdGhl IA0KPiA+Pj4+IFtDb21wb25lbnRzXSBzZWN0aW9uIChpbiBvcmRlciBvZiBoaWdoZXN0IHByZWNl ZGVuY2UpOg0KPiA+Pj4+ICIiIg0KPiA+Pj4+DQo+ID4+Pj4gd2hpY2ggc2F5cyB0aGF0IG5vdCB0 aGUgKmZpcnN0KiBvY2N1cnJlbmNlLCBidXQgdGhlIG9jY3VycmVuY2UgDQo+ID4+Pj4gKndpdGgg dGhlIGhpZ2hlc3QgcHJlY2VkZW5jZSogd2lsbCBiZSBzZWxlY3RlZC4NCj4gPj4+Pg0KPiA+Pj4+ IFRoZW4sIHRoZSBwcmVjZWRlbmNlIGxpc3QgaGFzIHRoZXNlIGl0ZW1zOg0KPiA+Pj4+DQo+ID4+ Pj4gIiIiDQo+ID4+Pj4gMi4gW0xpYnJhcnlDbGFzc2VzLiQoQXJjaCkuJChNT0RVTEVfVFlQRSks DQo+ID4+Pj4gTGlicmFyeUNsYXNzZXMuJChBcmNoKS4kKE1PRFVMRV9UWVBFKV0NCj4gPj4+PiAz LiBbTGlicmFyeUNsYXNzZXMuJChBcmNoKS4kKE1PRFVMRV9UWVBFKV0NCj4gPj4+PiAiIiINCj4g Pj4+Pg0KPiA+Pj4+IHdoaWNoIHNlZW0gdG8gc3VnZ2VzdCB0aGF0IGEgZGVmaW5pdGlvbiB0aGF0 IGFwcGxpZXMgdG8gbXVsdGlwbGUgDQo+ID4+Pj4gYXJjaC9tb2R1bGVfdHlwZSBjb21iaW5hdGlv bnMgYXV0b21hdGljYWxseSB0YWtlcyBwcmVjZWRlbmNlIG92ZXIgDQo+ID4+Pj4gb25lIHRoYXQg dGFyZ2V0cyBhIHNpbmdsZSBhcmNoL21vZHVsZV90eXBlIGNvbWJpbmF0aW9uLCB3aGljaCANCj4g Pj4+PiBtYWtlcyBubyBzZW5zZSBhdCBhbGwuDQo+ID4+Pj4NCj4gPj4+PiBTbyBJIHN0cm9uZ2x5 IHN1Z2dlc3Qgd2UgcmV2ZXJ0IHRoZSBwYXRjaCwgZml4IHRoZSBkb2N1bWVudCBzbyBpdCANCj4g Pj4+PiBpcyBjbGVhciBhbmQgYW1iaWd1b3VzLCBhbmQgcHJlZmVyYWJseSwgYWxpZ24gaXQgd2l0 aCBob3cgaXQgdXNlZCANCj4gPj4+PiB0bw0KPiA+Pj4NCj4gPj4+ICp1biphbWJpZ3VvdXMgLi4u Lg0KPiA+Pj4NCj4gPj4+IHNpZ2gNCj4gPj4NCj4gPj4NCj4gPj4NCj4gPj4NCj4gPj4NCj4gPj4N Cj4gPg0KPiA+DQo+ID4NCj4gPg0KPiA+DQo+ID4NCj4gPg0KPiA+DQo+IA0KPiANCj4gDQo+IA0K PiANCg0K