From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by mx.groups.io with SMTP id smtpd.web11.15.1680898730308647037 for ; Fri, 07 Apr 2023 13:18:50 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=bKyuapaP; spf=pass (domain: intel.com, ip: 192.55.52.120, 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=1680898730; x=1712434730; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=dbDDuepdG/eNuDiZmqlKxCWN0Q2q69Qno9318lcrtto=; b=bKyuapaPvDVfJPFBEAmMp7+GV6O2ZH1KQJdu47osCB6mheGgimUXexLZ vKYZKJ8UXoZJ97nuF4k0EuD4UghI/qnsR6d2aj5zhepRwXxirTnQ7McC4 1v39/2ZNyI5Ro2CyhprEyEhl8Oah0BKUGzCbZY5kqOFOeBuYQVNbarllR UJPjeJ6WSvJanyG9XTacXfr2+Dn9ld/gizlk8Z4OWbTkrk/8q/u3sCNui mc0QhwltcrGhTvF/MZAbnpdNdEFzMGuB6+9lPOceu6mrJDECZH96j9QFd C256X9jyT7LZ4/CwfQcD/wTFrztiZkcmkmxdExKdQ1qnKDtjt3VJsi56l Q==; X-IronPort-AV: E=McAfee;i="6600,9927,10673"; a="341812113" X-IronPort-AV: E=Sophos;i="5.98,327,1673942400"; d="scan'208";a="341812113" Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 07 Apr 2023 13:18:41 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10673"; a="776939106" X-IronPort-AV: E=Sophos;i="5.98,327,1673942400"; d="scan'208";a="776939106" Received: from fmsmsx602.amr.corp.intel.com ([10.18.126.82]) by FMSMGA003.fm.intel.com with ESMTP; 07 Apr 2023 13:18:41 -0700 Received: from fmsmsx611.amr.corp.intel.com (10.18.126.91) 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.2507.21; Fri, 7 Apr 2023 13:18:40 -0700 Received: from fmsmsx602.amr.corp.intel.com (10.18.126.82) 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.2507.21; Fri, 7 Apr 2023 13:18:40 -0700 Received: from fmsedg602.ED.cps.intel.com (10.1.192.136) 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.2507.21 via Frontend Transport; Fri, 7 Apr 2023 13:18:40 -0700 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (104.47.57.172) by edgegateway.intel.com (192.55.55.71) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.21; Fri, 7 Apr 2023 13:18:40 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=I7YWIt13jPJyEY5AsM1c5b2LYEPbDwzRbhrwyaGc9cK3kM+gbLwRZ7VlXXAGqRRM//gKCLGILGFWqItMEYAJHN9V2D3QxntZBFfFxio/SuKb1PIfkYQcirsnYuSiW7xbm3qfg++vrZZmr76uJ1I/4bqMDqOnS/XwajQgEJTmj3/XkC0jnTBYoNfht4NT7/HbslFcwlXBGVhdKWkwAUv7vOkeJOvrfa0UyF7XrFgfLEOFa/x4nVoM7Nluwegl1E0yYC2azDn28hchVhwxwSyY+AtIzHioecJReSqmJxJokIXhgcNonOi9uM1Ryh9vhzFskXiaxG31Z5acl9+srYNhfA== 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=dbDDuepdG/eNuDiZmqlKxCWN0Q2q69Qno9318lcrtto=; b=iNb+H4rjWyMrTXK3qbnQNA3x+pbBs0nKmyE/hHxB8KFhAZ9uHJ6m4sK3XgRb7OUyZR1c3lmVwPrr0xS/XBa9lu9+MV7U3spHAXoh/vfrxp5ua9zCbC/raLU+HjqBhUiiw0Cmextta1ND2Hqgrf1dJuHWQQJtxXBqJ2MVESdj0W+hdn13G9b/GNLL/vETcZ73H1pQVsu1SQNaNaxpGWzRqpZJFkeck8NcN3FAfx8/Ot3Bk9YvRIsNBnkDta7xGPMg/bFASGeEqjRZmCqdmwmTRysK30IK2xWt+wCBaSe1HbzONWC95kDHQB9f7acuXrb3//2qdB1REpBxqfxwYoDaXQ== 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 SA1PR11MB6918.namprd11.prod.outlook.com (2603:10b6:806:2bf::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6254.34; Fri, 7 Apr 2023 20:18:30 +0000 Received: from CO1PR11MB4929.namprd11.prod.outlook.com ([fe80::76be:1164:2c1f:90a5]) by CO1PR11MB4929.namprd11.prod.outlook.com ([fe80::76be:1164:2c1f:90a5%6]) with mapi id 15.20.6277.033; Fri, 7 Apr 2023 20:18:30 +0000 From: "Michael D Kinney" To: "devel@edk2.groups.io" , "rebecca@bsdio.com" , "Gao, Liming" , "Jiang, Guomin" , "Xu, Wei6" , "Dong, Guo" , "Ni, Ray" , "Rhodes, Sean" , "Lu, James" , "Guo, Gua" , Andrew Fish , "Wu, Hao A" , Maciej Rabeda , "Siyuan Fu" , "Yao, Jiewen" , "Wang, Jian J" , "Lu, Xiaoyu1" , "Ard Biesheuvel" , Sami Mujawar , Supreeth Venkatesh , Michael Kubacki , "Desimone, Nathaniel L" , Sean Brogan CC: Leif Lindholm , Abner Chang , Nickle Wang , Igor Kulchytskyy , Daniel Schaefer , "Xu, Min M" , "Justen, Jordan L" , "Gerd Hoffmann" , Peter Grehan , "Aktas, Erdem" , James Bottomley , "Tom Lendacky" , Michael Roth , Sunil V L , "Warkentin, Andrei" , "Kinney, Michael D" Subject: Re: [edk2-devel] [PATCH 01/18] ArmPkg: Update code to be more C11 compliant by using __func__ Thread-Topic: [edk2-devel] [PATCH 01/18] ArmPkg: Update code to be more C11 compliant by using __func__ Thread-Index: AQHZaNZ/SlYvukP4pE+Gq8LJrqvr+K8gSmtg Date: Fri, 7 Apr 2023 20:18:30 +0000 Message-ID: References: <20230406222319.2281263-1-rebecca@bsdio.com> <20230406222319.2281263-2-rebecca@bsdio.com> In-Reply-To: <20230406222319.2281263-2-rebecca@bsdio.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: CO1PR11MB4929:EE_|SA1PR11MB6918:EE_ x-ms-office365-filtering-correlation-id: ead33845-6fd6-4303-2a2f-08db37a540fb 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: U/2vRJXP8a36RYVRlhI/kH6DNm+7Z5jqKumfVLrMqNByKwZg52yl581/nrdvTCsHNdNk9tFwuulL8pmNJ0Q83dg01BCoW4DHByvDNwPlOprdUtNTRCkWjFMe83T5LNoyURH2YpJVHiT816iOTXYHNdvD6MAnvvtT9KT3PNGS3HhgcekXWWxRFG36ugnKmN5NrOKAsHvW/mqG8AkOlEjeaSxLgio5stj+Ya2v59gZ0Ws/x8mkP6qYZAVCU1N01YZnnlsmf8IIi5BfKA7oT4l3awyZRwUPNB1yWylx96o4JQsP6ZmQrd8PTdqcfrrwAUdBCEE7if1mjF5d9G16+8TKLlLCdPzebSexbftb+KThnNVcuVkntNvXnut4+GKoSo/qUqEAlURz53qvgIQNjLy6TlsNT+GkjN/Om8bpY6j/g5AHdTDgt1cx5YuuDD+VlwiMHCVm5sMx7Ge45+qjCS3dswposD15q2SJhFNW7CaPbwqp9cGKaH+3t4lVtGSH12rBAQGHsKFnqAYFTrCSfsbtL28RzH2zmr6ZoJ+bXLAdgamvCp697G3Btw0adz5JbgYS3AHNohXHP+DFujnp/EHOS0p+ikeD5SjlpIHmg8ggNz0oBvCwOBcD8eM8ANwf+Q5YZ0BGBXSP8VpWjRjlgfZMd1EnjWEUCZkCHhkxfKbrpFI= 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:(13230028)(39860400002)(396003)(366004)(346002)(136003)(376002)(451199021)(4326008)(66556008)(83380400001)(66946007)(186003)(66476007)(316002)(966005)(66446008)(8676002)(110136005)(7696005)(8936002)(64756008)(921005)(71200400001)(19627235002)(76116006)(38100700002)(122000001)(41300700001)(82960400001)(52536014)(45954011)(38070700005)(15650500001)(2906002)(30864003)(5660300002)(7416002)(6506007)(26005)(53546011)(9686003)(478600001)(86362001)(66899021)(54906003)(33656002)(55016003);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?Vm8reVd4S2krS2xuSmxxOUplQXBpOTFKTVZqdlZhUFhIUUN5ZUt1NjZ1TnJP?= =?utf-8?B?Vm0rWnkyVmdZck9ydHo4L0VzMVBKYWt2ZHg4aDhvWW1RU1Jkbm5lQlpyS1RS?= =?utf-8?B?cCtHSFZKRTFPclRyMzBtcm5wOGF4cDh0TFZvQjdRTjJ0Y0NaQVJXQ2hsaUN0?= =?utf-8?B?bUVIUDl2cjk5dzhYMzVWYjJUTGtTZ1h3cXFRV1F0UC9GYWVWNVh6V2Y1dHVj?= =?utf-8?B?ekpzdi9CQlhSVU1TOUkxWTVFdWVLTThLNGJlakxpenpGY21EZ2JSazMreHM2?= =?utf-8?B?OVo4VkFvQmI5bEtJMmdtM0k0ZHplUm5DYjVOUnRmTnd6ejIzcTZUT2xlQTJB?= =?utf-8?B?Qjk1aHdUMmt2SlhYV0FVeVNMNnpsRm5mZDl6QW5OcUk1ZFNjckd0Skx4eGZG?= =?utf-8?B?ZCtiUmZiZk1mdUlrS2VoKzMvWUJMY0NMYmdEMTh3cVNRYU1RNzhKR3JyZ1Jo?= =?utf-8?B?czFNM3JKbzZPZkVpSVp2Y3VtdGlZeUZtNjUvMUZSZTN2NmRoejc3alRUR2pO?= =?utf-8?B?bXNMVWFuZDJ4bWlQaUJLR2J6WURhbFZlcGNIdlZXWmhCQUVybnFtM0lSaEd0?= =?utf-8?B?RGtsVXFtbnN1TDdCYjUvZDhQbGVPdkI4ZlR2SitzV0ltYUVmY0UzdW9Dc01K?= =?utf-8?B?YUR4YWltWkEwSVZkN09reDE2WEY3OXNPOG9DN0Y1QmpOQ3R4ckZiT2p1VVFw?= =?utf-8?B?Skx1VmlCRWdhWS93OG45Y2I4aDEyYnhZMVY1djU4RmM4bGtRL2ZTZDlnbFJB?= =?utf-8?B?RExUL3Nvbk5vQlYveVFxTWdnSEVpODV1UWtkWXZIbXRNaThMb2hSNStpR1lt?= =?utf-8?B?WS9ibXh5M2hzRnpTY243V0lyZG84L0oyazA0WkJyNHgvME1WSGV0cXJyNVMv?= =?utf-8?B?SXEvYUFQZXpNZ0hPV3JpR3RzdmZrYjNpTW1GeEEyeitOQlArZkVLU0luK0Fi?= =?utf-8?B?VDl5cHROMWNvOGFaN0h2cE56WmcxL0V5U3ZCT0R5RTFWTDJiTW8vMWFPcTNE?= =?utf-8?B?NVgvQW9YZWY1WW5samsyeXVwaDFaV1pOZFp0VkIzVmhZa3BBZjI2N1RrNGp5?= =?utf-8?B?V0hRR1RLamcxUWxXUmJsb0NDQ0dLWTRneGdjK3F3OTZQckhVblBkcTl1UGpL?= =?utf-8?B?d1JMdEh4d0xWZzRFemh1UTdHeUMzSHZJOW5FaTkyd3BxeTEzbzU5VW9uRjJm?= =?utf-8?B?S1FRdnJLTnNJbmlYci9PdnE0cHhOVE1KSDlyMHVvalgxakxRWnpRVHZqSlRu?= =?utf-8?B?OWU5T1owUmpoMWJoZDJRVXRXVnlUSlA4NXNpY0wzV29sQmlTQWIxSytWVjVQ?= =?utf-8?B?dFFNeFhJWkE4RGwzNzdyaUdhUW5EazdwWmFLZHUzMVlVSEl5TUoweTNTemE4?= =?utf-8?B?SVFmN0UvQm9MWkdmU0tKVjF2Y3hZTDJOUUtmM0tEWWZYMDdtS2xzUm12azBo?= =?utf-8?B?UThOQkFDY1hBa2xYVDNTYU43dEovUFN5a2dSc0tMcjQrZHA1Ti9CN0IvMDZV?= =?utf-8?B?NFk3bXFoRm51QkxidEcyMU8vNUtjN2JFTzRic2FzSVFpdFA5ZTE3V1huY2w4?= =?utf-8?B?ZmxJSWZRcmRXN095S0ZSdHNoNzFKYkI4VHpNNkhieFdvMGU5ajJtU1JWMmNq?= =?utf-8?B?TGNnajZHbW8ycGY3WVFrZG5ySkx0NVNsdTVqQnZ1Y3Joam9ZTFpEUGlzeHpo?= =?utf-8?B?T1dOS2t4RGNLMjhYcWQyRU5SdE52VXBmQWxmZEJSS1BBd3h1bmluUU15Mzly?= =?utf-8?B?WmN1UzhyQ0thbis3eityMHlCa0Q2YU9SQ3BGSHZWUUxCMUpKcWx1Z2xBMVhy?= =?utf-8?B?WmEzZ1VwS3VQUU5taWk2M05wY0FJSllSSk8wVWovNjNtNURhcGFDeVhLOEs4?= =?utf-8?B?M3ZiT2g4Nll6Z1owKzlQWUUrY1JUVjhKVWYzNjNXS3ppZUhuU3pacElEOVZj?= =?utf-8?B?QnZ1WFNMVXdEb0Z3cXhCNGVsYStOdGFYbjdMSGNTZkwwNnIvL1g4UWZYSGVl?= =?utf-8?B?amxWV082c1JJREZjMk5xSlhybmNaV3pwSzZ5Y2VkVUpEWHV6WWw3SkpSYlcz?= =?utf-8?B?SXBoUGp2OXYzUzJVTjArSXhWbXZ6ekFYc2hmZ1BqWGQrMGw1eDA3RC8vbXlX?= =?utf-8?Q?7Io9QvLNlxZrWx0P5ged/uOWg?= 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: ead33845-6fd6-4303-2a2f-08db37a540fb X-MS-Exchange-CrossTenant-originalarrivaltime: 07 Apr 2023 20:18:30.1458 (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: 46oGCUFELvL3nCbg77tcTC/r57i9cu+667iyvFNOVIp51LtgW63z+YFH0UGUoxeY3D6zn/cHM3vRtltL3RM+DUpB7UKyW682eJeSdIq/2K0= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR11MB6918 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 U2VyaWVzIFJldmlld2VkLWJ5OiBNaWNoYWVsIEQgS2lubmV5IDxtaWNoYWVsLmQua2lubmV5QGlu dGVsLmNvbT4NCg0KDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IGRldmVs QGVkazIuZ3JvdXBzLmlvIDxkZXZlbEBlZGsyLmdyb3Vwcy5pbz4gT24gQmVoYWxmIE9mIFJlYmVj Y2EgQ3Jhbg0KPiBTZW50OiBUaHVyc2RheSwgQXByaWwgNiwgMjAyMyAzOjIzIFBNDQo+IFRvOiBk ZXZlbEBlZGsyLmdyb3Vwcy5pbzsgR2FvLCBMaW1pbmcgPGdhb2xpbWluZ0BieW9zb2Z0LmNvbS5j bj47IEtpbm5leSwgTWljaGFlbCBEIDxtaWNoYWVsLmQua2lubmV5QGludGVsLmNvbT47IEppYW5n LCBHdW9taW4NCj4gPGd1b21pbi5qaWFuZ0BpbnRlbC5jb20+OyBYdSwgV2VpNiA8d2VpNi54dUBp bnRlbC5jb20+OyBEb25nLCBHdW8gPGd1by5kb25nQGludGVsLmNvbT47IE5pLCBSYXkgPHJheS5u aUBpbnRlbC5jb20+OyBSaG9kZXMsIFNlYW4NCj4gPHNlYW5Ac3RhcmxhYnMuc3lzdGVtcz47IEx1 LCBKYW1lcyA8amFtZXMubHVAaW50ZWwuY29tPjsgR3VvLCBHdWEgPGd1YS5ndW9AaW50ZWwuY29t PjsgQW5kcmV3IEZpc2ggPGFmaXNoQGFwcGxlLmNvbT47IFd1LCBIYW8gQQ0KPiA8aGFvLmEud3VA aW50ZWwuY29tPjsgTWFjaWVqIFJhYmVkYSA8bWFjaWVqLnJhYmVkYUBsaW51eC5pbnRlbC5jb20+ OyBTaXl1YW4gRnUgPHNpeXVhbi5mdUBpbnRlbC5jb20+OyBZYW8sIEppZXdlbg0KPiA8amlld2Vu Lnlhb0BpbnRlbC5jb20+OyBXYW5nLCBKaWFuIEogPGppYW4uai53YW5nQGludGVsLmNvbT47IEx1 LCBYaWFveXUxIDx4aWFveXUxLmx1QGludGVsLmNvbT47IEFyZCBCaWVzaGV1dmVsDQo+IDxhcmRi K3RpYW5vY29yZUBrZXJuZWwub3JnPjsgU2FtaSBNdWphd2FyIDxzYW1pLm11amF3YXJAYXJtLmNv bT47IFN1cHJlZXRoIFZlbmthdGVzaCA8c3VwcmVldGgudmVua2F0ZXNoQGFybS5jb20+OyBNaWNo YWVsDQo+IEt1YmFja2kgPG1pa3ViYWNrQGxpbnV4Lm1pY3Jvc29mdC5jb20+OyBEZXNpbW9uZSwg TmF0aGFuaWVsIEwgPG5hdGhhbmllbC5sLmRlc2ltb25lQGludGVsLmNvbT47IFNlYW4gQnJvZ2Fu DQo+IDxzZWFuLmJyb2dhbkBtaWNyb3NvZnQuY29tPg0KPiBDYzogUmViZWNjYSBDcmFuIDxyZWJl Y2NhQGJzZGlvLmNvbT47IExlaWYgTGluZGhvbG0gPHF1aWNfbGxpbmRob2xAcXVpY2luYy5jb20+ OyBBYm5lciBDaGFuZyA8YWJuZXIuY2hhbmdAYW1kLmNvbT47IE5pY2tsZSBXYW5nDQo+IDxuaWNr bGV3QG52aWRpYS5jb20+OyBJZ29yIEt1bGNoeXRza3l5IDxpZ29ya0BhbWkuY29tPjsgRGFuaWVs IFNjaGFlZmVyIDxnaXRAZGFuaWVsc2NoYWVmZXIubWU+OyBYdSwgTWluIE0gPG1pbi5tLnh1QGlu dGVsLmNvbT47DQo+IEp1c3RlbiwgSm9yZGFuIEwgPGpvcmRhbi5sLmp1c3RlbkBpbnRlbC5jb20+ OyBHZXJkIEhvZmZtYW5uIDxrcmF4ZWxAcmVkaGF0LmNvbT47IFBldGVyIEdyZWhhbiA8Z3JlaGFu QGZyZWVic2Qub3JnPjsgQWt0YXMsIEVyZGVtDQo+IDxlcmRlbWFrdGFzQGdvb2dsZS5jb20+OyBK YW1lcyBCb3R0b21sZXkgPGplamJAbGludXguaWJtLmNvbT47IFRvbSBMZW5kYWNreSA8dGhvbWFz LmxlbmRhY2t5QGFtZC5jb20+OyBNaWNoYWVsIFJvdGgNCj4gPG1pY2hhZWwucm90aEBhbWQuY29t PjsgU3VuaWwgViBMIDxzdW5pbHZsQHZlbnRhbmFtaWNyby5jb20+OyBXYXJrZW50aW4sIEFuZHJl aSA8YW5kcmVpLndhcmtlbnRpbkBpbnRlbC5jb20+DQo+IFN1YmplY3Q6IFtlZGsyLWRldmVsXSBb UEFUQ0ggMDEvMThdIEFybVBrZzogVXBkYXRlIGNvZGUgdG8gYmUgbW9yZSBDMTEgY29tcGxpYW50 IGJ5IHVzaW5nIF9fZnVuY19fDQo+IA0KPiBfX0ZVTkNUSU9OX18gaXMgYSBwcmUtc3RhbmRhcmQg ZXh0ZW5zaW9uIHRoYXQgZ2NjIGFuZCBWaXN1YWwgQysrIGFtb25nDQo+IG90aGVycyBzdXBwb3J0 LCB3aGlsZSBfX2Z1bmNfXyB3YXMgc3RhbmRhcmRpemVkIGluIEM5OS4NCj4gDQo+IFNpbmNlIGl0 J3MgbW9yZSBzdGFuZGFyZCwgcmVwbGFjZSBfX0ZVTkNUSU9OX18gd2l0aCBfX2Z1bmNfXyB0aHJv dWdob3V0DQo+IEFybVBrZy4NCj4gDQo+IFZpc3VhbCBTdHVkaW8gdmVyc2lvbnMgYmVmb3JlIFZT IDIwMTUgZG9uJ3Qgc3VwcG9ydCBfX2Z1bmNfXyBhbmQgc28NCj4gd2lsbCBmYWlsIHRvIGNvbXBp bGUuIEEgd29ya2Fyb3VuZCBpcyB0byBkZWZpbmUgX19mdW5jX18gYXMNCj4gX19GVU5DVElPTl9f IDoNCj4gDQo+ICAgI2RlZmluZSBfX2Z1bmNfXyBfX0ZVTkNUSU9OX18NCj4gDQo+IFNpZ25lZC1v ZmYtYnk6IFJlYmVjY2EgQ3JhbiA8cmViZWNjYUBic2Rpby5jb20+DQo+IC0tLQ0KPiAgQXJtUGtn L0RyaXZlcnMvQXJtR2ljL0FybUdpY0NvbW1vbkR4ZS5jICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDQgKy0tDQo+ICBBcm1Qa2cvRHJpdmVycy9DcHVE eGUvTWVtb3J5QXR0cmlidXRlLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgfCAxMCArKystLS0NCj4gIEFybVBrZy9MaWJyYXJ5L0FybU1tdUxpYi9BQXJj aDY0L0FybU1tdUxpYkNvcmUuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICB8ICA0ICstLQ0KPiAgQXJtUGtnL0xpYnJhcnkvQXJtUHNjaVJlc2V0U3lzdGVtTGliL0FybVBz Y2lSZXNldFN5c3RlbUxpYi5jICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDIgKy0NCj4g IEFybVBrZy9MaWJyYXJ5L0xpbnV4Qm9vdEJvb3RNYW5hZ2VyTGliL0xpbnV4Qm9vdEJtLmMgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAyICstDQo+ICBBcm1Qa2cvTGlicmFy eS9QbGF0Zm9ybUJvb3RNYW5hZ2VyTGliL1BsYXRmb3JtQm0uYyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgfCAzMiArKysrKysrKysrLS0tLS0tLS0tLQ0KPiAgQXJtUGtnL1Vu aXZlcnNhbC9TbWJpb3MvUHJvY2Vzc29yU3ViQ2xhc3NEeGUvUHJvY2Vzc29yU3ViQ2xhc3MuYyAg ICAgICAgICAgICAgICAgICAgICAgIHwgIDIgKy0NCj4gIEFybVBrZy9Vbml2ZXJzYWwvU21iaW9z L1NtYmlvc01pc2NEeGUvVHlwZTAwL01pc2NCaW9zVmVuZG9yRnVuY3Rpb24uYyAgICAgICAgICAg ICAgICAgICB8ICAyICstDQo+ICBBcm1Qa2cvVW5pdmVyc2FsL1NtYmlvcy9TbWJpb3NNaXNjRHhl L1R5cGUwMS9NaXNjU3lzdGVtTWFudWZhY3R1cmVyRnVuY3Rpb24uYyAgICAgICAgICAgfCAgMiAr LQ0KPiAgQXJtUGtnL1VuaXZlcnNhbC9TbWJpb3MvU21iaW9zTWlzY0R4ZS9UeXBlMDIvTWlzY0Jh c2VCb2FyZE1hbnVmYWN0dXJlckZ1bmN0aW9uLmMgICAgICAgIHwgIDIgKy0NCj4gIEFybVBrZy9V bml2ZXJzYWwvU21iaW9zL1NtYmlvc01pc2NEeGUvVHlwZTAzL01pc2NDaGFzc2lzTWFudWZhY3R1 cmVyRnVuY3Rpb24uYyAgICAgICAgICB8ICAyICstDQo+ICBBcm1Qa2cvVW5pdmVyc2FsL1NtYmlv cy9TbWJpb3NNaXNjRHhlL1R5cGUxMy9NaXNjTnVtYmVyT2ZJbnN0YWxsYWJsZUxhbmd1YWdlc0Z1 bmN0aW9uLmMgfCAgMiArLQ0KPiAgQXJtUGtnL1VuaXZlcnNhbC9TbWJpb3MvU21iaW9zTWlzY0R4 ZS9UeXBlMzIvTWlzY0Jvb3RJbmZvcm1hdGlvbkZ1bmN0aW9uLmMgICAgICAgICAgICAgIHwgIDIg Ky0NCj4gIDEzIGZpbGVzIGNoYW5nZWQsIDM0IGluc2VydGlvbnMoKyksIDM0IGRlbGV0aW9ucygt KQ0KPiANCj4gZGlmZiAtLWdpdCBhL0FybVBrZy9Ecml2ZXJzL0FybUdpYy9Bcm1HaWNDb21tb25E eGUuYyBiL0FybVBrZy9Ecml2ZXJzL0FybUdpYy9Bcm1HaWNDb21tb25EeGUuYw0KPiBpbmRleCBj ZDEyZmNkYTI3ZTkuLmQ1NjBjNDJmYzlmMyAxMDA2NDQNCj4gLS0tIGEvQXJtUGtnL0RyaXZlcnMv QXJtR2ljL0FybUdpY0NvbW1vbkR4ZS5jDQo+ICsrKyBiL0FybVBrZy9Ecml2ZXJzL0FybUdpYy9B cm1HaWNDb21tb25EeGUuYw0KPiBAQCAtMTM3LDcgKzEzNyw3IEBAIENwdUFyY2hFdmVudFByb3Rv Y29sTm90aWZ5ICgNCj4gICAgICBERUJVRyAoKA0KPiAgICAgICAgREVCVUdfRVJST1IsDQo+ICAg ICAgICAiJWE6IENwdS0+UmVnaXN0ZXJJbnRlcnJ1cHRIYW5kbGVyKCkgLSAlclxuIiwNCj4gLSAg ICAgIF9fRlVOQ1RJT05fXywNCj4gKyAgICAgIF9fZnVuY19fLA0KPiAgICAgICAgU3RhdHVzDQo+ ICAgICAgICApKTsNCj4gICAgICByZXR1cm47DQo+IEBAIC0xNTMsNyArMTUzLDcgQEAgQ3B1QXJj aEV2ZW50UHJvdG9jb2xOb3RpZnkgKA0KPiAgICAgIERFQlVHICgoDQo+ICAgICAgICBERUJVR19F UlJPUiwNCj4gICAgICAgICIlYTogQ3B1LT5SZWdpc3RlckludGVycnVwdEhhbmRsZXIoKSAtICVy XG4iLA0KPiAtICAgICAgX19GVU5DVElPTl9fLA0KPiArICAgICAgX19mdW5jX18sDQo+ICAgICAg ICBTdGF0dXMNCj4gICAgICAgICkpOw0KPiAgICB9DQo+IGRpZmYgLS1naXQgYS9Bcm1Qa2cvRHJp dmVycy9DcHVEeGUvTWVtb3J5QXR0cmlidXRlLmMgYi9Bcm1Qa2cvRHJpdmVycy9DcHVEeGUvTWVt b3J5QXR0cmlidXRlLmMNCj4gaW5kZXggY2JjODI2MWE2OGI3Li42MWJhOGZiYmFlNGUgMTAwNjQ0 DQo+IC0tLSBhL0FybVBrZy9Ecml2ZXJzL0NwdUR4ZS9NZW1vcnlBdHRyaWJ1dGUuYw0KPiArKysg Yi9Bcm1Qa2cvRHJpdmVycy9DcHVEeGUvTWVtb3J5QXR0cmlidXRlLmMNCj4gQEAgLTkyLDcgKzky LDcgQEAgR2V0TWVtb3J5QXR0cmlidXRlcyAoDQo+ICAgIERFQlVHICgoDQo+ICAgICAgREVCVUdf VkVSQk9TRSwNCj4gICAgICAiJWE6IEJhc2VBZGRyZXNzID09IDB4JWx4LCBMZW5ndGggPT0gMHgl bHhcbiIsDQo+IC0gICAgX19GVU5DVElPTl9fLA0KPiArICAgIF9fZnVuY19fLA0KPiAgICAgIEJh c2VBZGRyZXNzLA0KPiAgICAgIExlbmd0aA0KPiAgICAgICkpOw0KPiBAQCAtMTEzLDcgKzExMyw3 IEBAIEdldE1lbW9yeUF0dHJpYnV0ZXMgKA0KPiAgICAgIERFQlVHICgoDQo+ICAgICAgICBERUJV R19WRVJCT1NFLA0KPiAgICAgICAgIiVhOiBSZWdpb25BZGRyZXNzID09IDB4JWx4LCBSZWdpb25M ZW5ndGggPT0gMHglbHgsIFJlZ2lvbkF0dHJpYnV0ZXMgPT0gMHglbHhcbiIsDQo+IC0gICAgICBf X0ZVTkNUSU9OX18sDQo+ICsgICAgICBfX2Z1bmNfXywNCj4gICAgICAgIChVSU5UNjQpUmVnaW9u QWRkcmVzcywNCj4gICAgICAgIChVSU5UNjQpUmVnaW9uTGVuZ3RoLA0KPiAgICAgICAgKFVJTlQ2 NClSZWdpb25BdHRyaWJ1dGVzDQo+IEBAIC0xMzAsNyArMTMwLDcgQEAgR2V0TWVtb3J5QXR0cmli dXRlcyAoDQo+ICAgIERFQlVHICgoDQo+ICAgICAgREVCVUdfVkVSQk9TRSwNCj4gICAgICAiJWE6 IFVuaW9uID09ICVseCwgSW50ZXJzZWN0aW9uID09ICVseFxuIiwNCj4gLSAgICBfX0ZVTkNUSU9O X18sDQo+ICsgICAgX19mdW5jX18sDQo+ICAgICAgKFVJTlQ2NClVbmlvbiwNCj4gICAgICAoVUlO VDY0KUludGVyc2VjdGlvbg0KPiAgICAgICkpOw0KPiBAQCAtMTg4LDcgKzE4OCw3IEBAIFNldE1l bW9yeUF0dHJpYnV0ZXMgKA0KPiAgICBERUJVRyAoKA0KPiAgICAgIERFQlVHX0lORk8sDQo+ICAg ICAgIiVhOiBCYXNlQWRkcmVzcyA9PSAweCVseCwgTGVuZ3RoID09IDB4JWx4LCBBdHRyaWJ1dGVz ID09IDB4JWx4XG4iLA0KPiAtICAgIF9fRlVOQ1RJT05fXywNCj4gKyAgICBfX2Z1bmNfXywNCj4g ICAgICAoVUlOVE4pQmFzZUFkZHJlc3MsDQo+ICAgICAgKFVJTlROKUxlbmd0aCwNCj4gICAgICAo VUlOVE4pQXR0cmlidXRlcw0KPiBAQCAtMjcyLDcgKzI3Miw3IEBAIENsZWFyTWVtb3J5QXR0cmli dXRlcyAoDQo+ICAgIERFQlVHICgoDQo+ICAgICAgREVCVUdfSU5GTywNCj4gICAgICAiJWE6IEJh c2VBZGRyZXNzID09IDB4JWx4LCBMZW5ndGggPT0gMHglbHgsIEF0dHJpYnV0ZXMgPT0gMHglbHhc biIsDQo+IC0gICAgX19GVU5DVElPTl9fLA0KPiArICAgIF9fZnVuY19fLA0KPiAgICAgIChVSU5U TilCYXNlQWRkcmVzcywNCj4gICAgICAoVUlOVE4pTGVuZ3RoLA0KPiAgICAgIChVSU5UTilBdHRy aWJ1dGVzDQo+IGRpZmYgLS1naXQgYS9Bcm1Qa2cvTGlicmFyeS9Bcm1NbXVMaWIvQUFyY2g2NC9B cm1NbXVMaWJDb3JlLmMgYi9Bcm1Qa2cvTGlicmFyeS9Bcm1NbXVMaWIvQUFyY2g2NC9Bcm1NbXVM aWJDb3JlLmMNCj4gaW5kZXggN2FjZmQyZTg5YTkyLi43ZWQ3NThmYmJjNjkgMTAwNjQ0DQo+IC0t LSBhL0FybVBrZy9MaWJyYXJ5L0FybU1tdUxpYi9BQXJjaDY0L0FybU1tdUxpYkNvcmUuYw0KPiAr KysgYi9Bcm1Qa2cvTGlicmFyeS9Bcm1NbXVMaWIvQUFyY2g2NC9Bcm1NbXVMaWJDb3JlLmMNCj4g QEAgLTEzOSw3ICsxMzksNyBAQCBSZXBsYWNlVGFibGVFbnRyeSAoDQo+ICAgICAgICAgICgoKFJl Z2lvblN0YXJ0IF4gKFVJTlROKUVudHJ5KSAmIH5CbG9ja01hc2spID09IDApKQ0KPiAgICAgIHsN Cj4gICAgICAgIERpc2FibGVNbXUgPSBUUlVFOw0KPiAtICAgICAgREVCVUcgKChERUJVR19XQVJO LCAiJWE6IHNwbGl0dGluZyBibG9jayBlbnRyeSB3aXRoIE1NVSBkaXNhYmxlZFxuIiwgX19GVU5D VElPTl9fKSk7DQo+ICsgICAgICBERUJVRyAoKERFQlVHX1dBUk4sICIlYTogc3BsaXR0aW5nIGJs b2NrIGVudHJ5IHdpdGggTU1VIGRpc2FibGVkXG4iLCBfX2Z1bmNfXykpOw0KPiAgICAgIH0NCj4g DQo+ICAgICAgbVJlcGxhY2VMaXZlRW50cnlGdW5jIChFbnRyeSwgVmFsdWUsIFJlZ2lvblN0YXJ0 LCBEaXNhYmxlTW11KTsNCj4gQEAgLTIzMyw3ICsyMzMsNyBAQCBVcGRhdGVSZWdpb25NYXBwaW5n UmVjdXJzaXZlICgNCj4gICAgREVCVUcgKCgNCj4gICAgICBERUJVR19WRVJCT1NFLA0KPiAgICAg ICIlYSglZCk6ICVsbHggLSAlbGx4IHNldCAlbHggY2xyICVseFxuIiwNCj4gLSAgICBfX0ZVTkNU SU9OX18sDQo+ICsgICAgX19mdW5jX18sDQo+ICAgICAgTGV2ZWwsDQo+ICAgICAgUmVnaW9uU3Rh cnQsDQo+ICAgICAgUmVnaW9uRW5kLA0KPiBkaWZmIC0tZ2l0IGEvQXJtUGtnL0xpYnJhcnkvQXJt UHNjaVJlc2V0U3lzdGVtTGliL0FybVBzY2lSZXNldFN5c3RlbUxpYi5jDQo+IGIvQXJtUGtnL0xp YnJhcnkvQXJtUHNjaVJlc2V0U3lzdGVtTGliL0FybVBzY2lSZXNldFN5c3RlbUxpYi5jDQo+IGlu ZGV4IDdiY2QzNDg0OTUwNy4uMDJiMGMyN2U0ZGYzIDEwMDY0NA0KPiAtLS0gYS9Bcm1Qa2cvTGli cmFyeS9Bcm1Qc2NpUmVzZXRTeXN0ZW1MaWIvQXJtUHNjaVJlc2V0U3lzdGVtTGliLmMNCj4gKysr IGIvQXJtUGtnL0xpYnJhcnkvQXJtUHNjaVJlc2V0U3lzdGVtTGliL0FybVBzY2lSZXNldFN5c3Rl bUxpYi5jDQo+IEBAIC02NSw3ICs2NSw3IEBAIExpYlJlc2V0U3lzdGVtICgNCj4gICAgQXJtQ2Fs bFNtYyAoJkFybVNtY0FyZ3MpOw0KPiANCj4gICAgLy8gV2Ugc2hvdWxkIG5ldmVyIGJlIGhlcmUN Cj4gLSAgREVCVUcgKChERUJVR19FUlJPUiwgIiVhOiBQU0NJIFJlc2V0IGZhaWxlZFxuIiwgX19G VU5DVElPTl9fKSk7DQo+ICsgIERFQlVHICgoREVCVUdfRVJST1IsICIlYTogUFNDSSBSZXNldCBm YWlsZWRcbiIsIF9fZnVuY19fKSk7DQo+ICAgIENwdURlYWRMb29wICgpOw0KPiAgICByZXR1cm4g RUZJX1VOU1VQUE9SVEVEOw0KPiAgfQ0KPiBkaWZmIC0tZ2l0IGEvQXJtUGtnL0xpYnJhcnkvTGlu dXhCb290Qm9vdE1hbmFnZXJMaWIvTGludXhCb290Qm0uYyBiL0FybVBrZy9MaWJyYXJ5L0xpbnV4 Qm9vdEJvb3RNYW5hZ2VyTGliL0xpbnV4Qm9vdEJtLmMNCj4gaW5kZXggNWE0NGFmNWE3NTVkLi43 NTk5OGVhYmIxYzYgMTAwNjQ0DQo+IC0tLSBhL0FybVBrZy9MaWJyYXJ5L0xpbnV4Qm9vdEJvb3RN YW5hZ2VyTGliL0xpbnV4Qm9vdEJtLmMNCj4gKysrIGIvQXJtUGtnL0xpYnJhcnkvTGludXhCb290 Qm9vdE1hbmFnZXJMaWIvTGludXhCb290Qm0uYw0KPiBAQCAtMTUxLDcgKzE1MSw3IEBAIFBsYXRm b3JtQm9vdE1hbmFnZXJBZnRlckNvbnNvbGUgKA0KPiAgICAgICAgTE9BRF9PUFRJT05fQUNUSVZF DQo+ICAgICAgICApOw0KPiAgICB9IGVsc2Ugew0KPiAtICAgIERFQlVHICgoREVCVUdfRVJST1Is ICIlYTogUGNkTGludXhCb290RmlsZUd1aWQgd2FzIG5vdCBzZXQhXG4iLCBfX0ZVTkNUSU9OX18p KTsNCj4gKyAgICBERUJVRyAoKERFQlVHX0VSUk9SLCAiJWE6IFBjZExpbnV4Qm9vdEZpbGVHdWlk IHdhcyBub3Qgc2V0IVxuIiwgX19mdW5jX18pKTsNCj4gICAgfQ0KPiAgfQ0KPiANCj4gZGlmZiAt LWdpdCBhL0FybVBrZy9MaWJyYXJ5L1BsYXRmb3JtQm9vdE1hbmFnZXJMaWIvUGxhdGZvcm1CbS5j IGIvQXJtUGtnL0xpYnJhcnkvUGxhdGZvcm1Cb290TWFuYWdlckxpYi9QbGF0Zm9ybUJtLmMNCj4g aW5kZXggMmZiMWE0YWE0ZmI4Li4wODk5OGZmZTRkMTcgMTAwNjQ0DQo+IC0tLSBhL0FybVBrZy9M aWJyYXJ5L1BsYXRmb3JtQm9vdE1hbmFnZXJMaWIvUGxhdGZvcm1CbS5jDQo+ICsrKyBiL0FybVBr Zy9MaWJyYXJ5L1BsYXRmb3JtQm9vdE1hbmFnZXJMaWIvUGxhdGZvcm1CbS5jDQo+IEBAIC0xOTUs NyArMTk1LDcgQEAgRmlsdGVyQW5kUHJvY2VzcyAoDQo+ICAgICAgREVCVUcgKCgNCj4gICAgICAg IERFQlVHX1ZFUkJPU0UsDQo+ICAgICAgICAiJWE6ICVnOiAlclxuIiwNCj4gLSAgICAgIF9fRlVO Q1RJT05fXywNCj4gKyAgICAgIF9fZnVuY19fLA0KPiAgICAgICAgUHJvdG9jb2xHdWlkLA0KPiAg ICAgICAgU3RhdHVzDQo+ICAgICAgICApKTsNCj4gQEAgLTI2Niw3ICsyNjYsNyBAQCBJc1BjaURp c3BsYXkgKA0KPiAgICAgICAgICAgICAgICAgICAgICAgICAgJlBjaQ0KPiAgICAgICAgICAgICAg ICAgICAgICAgICAgKTsNCj4gICAgaWYgKEVGSV9FUlJPUiAoU3RhdHVzKSkgew0KPiAtICAgIERF QlVHICgoREVCVUdfRVJST1IsICIlYTogJXM6ICVyXG4iLCBfX0ZVTkNUSU9OX18sIFJlcG9ydFRl eHQsIFN0YXR1cykpOw0KPiArICAgIERFQlVHICgoREVCVUdfRVJST1IsICIlYTogJXM6ICVyXG4i LCBfX2Z1bmNfXywgUmVwb3J0VGV4dCwgU3RhdHVzKSk7DQo+ICAgICAgcmV0dXJuIEZBTFNFOw0K PiAgICB9DQo+IA0KPiBAQCAtMzMwLDcgKzMzMCw3IEBAIENvbm5lY3QgKA0KPiAgICBERUJVRyAo KA0KPiAgICAgIEVGSV9FUlJPUiAoU3RhdHVzKSA/IERFQlVHX0VSUk9SIDogREVCVUdfVkVSQk9T RSwNCj4gICAgICAiJWE6ICVzOiAlclxuIiwNCj4gLSAgICBfX0ZVTkNUSU9OX18sDQo+ICsgICAg X19mdW5jX18sDQo+ICAgICAgUmVwb3J0VGV4dCwNCj4gICAgICBTdGF0dXMNCj4gICAgICApKTsN Cj4gQEAgLTM1Niw3ICszNTYsNyBAQCBBZGRPdXRwdXQgKA0KPiAgICAgIERFQlVHICgoDQo+ICAg ICAgICBERUJVR19FUlJPUiwNCj4gICAgICAgICIlYTogJXM6IGhhbmRsZSAlcDogZGV2aWNlIHBh dGggbm90IGZvdW5kXG4iLA0KPiAtICAgICAgX19GVU5DVElPTl9fLA0KPiArICAgICAgX19mdW5j X18sDQo+ICAgICAgICBSZXBvcnRUZXh0LA0KPiAgICAgICAgSGFuZGxlDQo+ICAgICAgICApKTsN Cj4gQEAgLTM2OCw3ICszNjgsNyBAQCBBZGRPdXRwdXQgKA0KPiAgICAgIERFQlVHICgoDQo+ICAg ICAgICBERUJVR19FUlJPUiwNCj4gICAgICAgICIlYTogJXM6IGFkZGluZyB0byBDb25PdXQ6ICVy XG4iLA0KPiAtICAgICAgX19GVU5DVElPTl9fLA0KPiArICAgICAgX19mdW5jX18sDQo+ICAgICAg ICBSZXBvcnRUZXh0LA0KPiAgICAgICAgU3RhdHVzDQo+ICAgICAgICApKTsNCj4gQEAgLTM4MCw3 ICszODAsNyBAQCBBZGRPdXRwdXQgKA0KPiAgICAgIERFQlVHICgoDQo+ICAgICAgICBERUJVR19F UlJPUiwNCj4gICAgICAgICIlYTogJXM6IGFkZGluZyB0byBFcnJPdXQ6ICVyXG4iLA0KPiAtICAg ICAgX19GVU5DVElPTl9fLA0KPiArICAgICAgX19mdW5jX18sDQo+ICAgICAgICBSZXBvcnRUZXh0 LA0KPiAgICAgICAgU3RhdHVzDQo+ICAgICAgICApKTsNCj4gQEAgLTM5MCw3ICszOTAsNyBAQCBB ZGRPdXRwdXQgKA0KPiAgICBERUJVRyAoKA0KPiAgICAgIERFQlVHX1ZFUkJPU0UsDQo+ICAgICAg IiVhOiAlczogYWRkZWQgdG8gQ29uT3V0IGFuZCBFcnJPdXRcbiIsDQo+IC0gICAgX19GVU5DVElP Tl9fLA0KPiArICAgIF9fZnVuY19fLA0KPiAgICAgIFJlcG9ydFRleHQNCj4gICAgICApKTsNCj4g IH0NCj4gQEAgLTU0Nyw3ICs1NDcsNyBAQCBHZXRQbGF0Zm9ybU9wdGlvbnMgKA0KPiAgICAgICAg ICBERUJVRyAoKA0KPiAgICAgICAgICAgIERFQlVHX0VSUk9SLA0KPiAgICAgICAgICAgICIlYTog ZmFpbGVkIHRvIHJlZ2lzdGVyIFwiJXNcIjogJXJcbiIsDQo+IC0gICAgICAgICAgX19GVU5DVElP Tl9fLA0KPiArICAgICAgICAgIF9fZnVuY19fLA0KPiAgICAgICAgICAgIEJvb3RPcHRpb25zW0lu ZGV4XS5EZXNjcmlwdGlvbiwNCj4gICAgICAgICAgICBTdGF0dXMNCj4gICAgICAgICAgICApKTsN Cj4gQEAgLTU3NSw3ICs1NzUsNyBAQCBHZXRQbGF0Zm9ybU9wdGlvbnMgKA0KPiAgICAgICAgREVC VUcgKCgNCj4gICAgICAgICAgREVCVUdfRVJST1IsDQo+ICAgICAgICAgICIlYTogZmFpbGVkIHRv IHJlZ2lzdGVyIGhvdGtleSBmb3IgXCIlc1wiOiAlclxuIiwNCj4gLSAgICAgICAgX19GVU5DVElP Tl9fLA0KPiArICAgICAgICBfX2Z1bmNfXywNCj4gICAgICAgICAgQm9vdE9wdGlvbnNbSW5kZXhd LkRlc2NyaXB0aW9uLA0KPiAgICAgICAgICBTdGF0dXMNCj4gICAgICAgICAgKSk7DQo+IEBAIC03 NTcsNyArNzU3LDcgQEAgSGFuZGxlQ2Fwc3VsZXMgKA0KPiAgICBCT09MRUFOICAgICAgICAgICAg ICAgICAgIE5lZWRSZXNldDsNCj4gICAgRUZJX1NUQVRVUyAgICAgICAgICAgICAgICBTdGF0dXM7 DQo+IA0KPiAtICBERUJVRyAoKERFQlVHX0lORk8sICIlYTogcHJvY2Vzc2luZyBjYXBzdWxlcyAu Li5cbiIsIF9fRlVOQ1RJT05fXykpOw0KPiArICBERUJVRyAoKERFQlVHX0lORk8sICIlYTogcHJv Y2Vzc2luZyBjYXBzdWxlcyAuLi5cbiIsIF9fZnVuY19fKSk7DQo+IA0KPiAgICBTdGF0dXMgPSBn QlMtPkxvY2F0ZVByb3RvY29sICgNCj4gICAgICAgICAgICAgICAgICAgICZnRXNydE1hbmFnZW1l bnRQcm90b2NvbEd1aWQsDQo+IEBAIC03ODUsNyArNzg1LDcgQEAgSGFuZGxlQ2Fwc3VsZXMgKA0K PiAgICAgICAgREVCVUcgKCgNCj4gICAgICAgICAgREVCVUdfRVJST1IsDQo+ICAgICAgICAgICIl YTogZmFpbGVkIHRvIHByb2Nlc3MgY2Fwc3VsZSAlcCAtICVyXG4iLA0KPiAtICAgICAgICBfX0ZV TkNUSU9OX18sDQo+ICsgICAgICAgIF9fZnVuY19fLA0KPiAgICAgICAgICBDYXBzdWxlSGVhZGVy LA0KPiAgICAgICAgICBTdGF0dXMNCj4gICAgICAgICAgKSk7DQo+IEBAIC04MDAsNyArODAwLDcg QEAgSGFuZGxlQ2Fwc3VsZXMgKA0KPiAgICAgIERFQlVHICgoDQo+ICAgICAgICBERUJVR19XQVJO LA0KPiAgICAgICAgIiVhOiBjYXBzdWxlIHVwZGF0ZSBzdWNjZXNzZnVsLCByZXNldHRpbmcgLi4u XG4iLA0KPiAtICAgICAgX19GVU5DVElPTl9fDQo+ICsgICAgICBfX2Z1bmNfXw0KPiAgICAgICAg KSk7DQo+IA0KPiAgICAgIGdSVC0+UmVzZXRTeXN0ZW0gKEVmaVJlc2V0Q29sZCwgRUZJX1NVQ0NF U1MsIDAsIE5VTEwpOw0KPiBAQCAtODY4LDcgKzg2OCw3IEBAIEJvb3REaXNjb3ZlcnlQb2xpY3lI YW5kbGVyICgNCj4gICAgICAgIERFQlVHICgoDQo+ICAgICAgICAgIERFQlVHX0lORk8sDQo+ICAg ICAgICAgICIlYSAtIFVuZXhwZWN0ZWQgRGlzY292ZXJ5UG9saWN5ICgweCV4KS4gUnVuIE1pbmlt YWwgRGlzY292ZXJ5IFBvbGljeVxuIiwNCj4gLSAgICAgICAgX19GVU5DVElPTl9fLA0KPiArICAg ICAgICBfX2Z1bmNfXywNCj4gICAgICAgICAgRGlzY292ZXJ5UG9saWN5DQo+ICAgICAgICAgICkp Ow0KPiAgICAgICAgcmV0dXJuIEVGSV9TVUNDRVNTOw0KPiBAQCAtODg0LDE0ICs4ODQsMTQgQEAg Qm9vdERpc2NvdmVyeVBvbGljeUhhbmRsZXIgKA0KPiAgICAgICAgREVCVUdfSU5GTywNCj4gICAg ICAgICIlYSAtIEZhaWxlZCB0byBsb2NhdGUgZ0VmaUJvb3RNYW5hZ2VyUG9saWN5UHJvdG9jb2xH dWlkLiINCj4gICAgICAgICJEcml2ZXIgY29ubmVjdCB3aWxsIGJlIHNraXBwZWQuXG4iLA0KPiAt ICAgICAgX19GVU5DVElPTl9fDQo+ICsgICAgICBfX2Z1bmNfXw0KPiAgICAgICAgKSk7DQo+ICAg ICAgcmV0dXJuIFN0YXR1czsNCj4gICAgfQ0KPiANCj4gICAgU3RhdHVzID0gQk1Qb2xpY3ktPkNv bm5lY3REZXZpY2VDbGFzcyAoQk1Qb2xpY3ksIENsYXNzKTsNCj4gICAgaWYgKEVGSV9FUlJPUiAo U3RhdHVzKSkgew0KPiAtICAgIERFQlVHICgoREVCVUdfRVJST1IsICIlYSAtIENvbm5lY3REZXZp Y2VDbGFzcyByZXR1cm5zIC0gJXJcbiIsIF9fRlVOQ1RJT05fXywgU3RhdHVzKSk7DQo+ICsgICAg REVCVUcgKChERUJVR19FUlJPUiwgIiVhIC0gQ29ubmVjdERldmljZUNsYXNzIHJldHVybnMgLSAl clxuIiwgX19mdW5jX18sIFN0YXR1cykpOw0KPiAgICAgIHJldHVybiBTdGF0dXM7DQo+ICAgIH0N Cj4gDQo+IEBAIC0xMDk2LDcgKzEwOTYsNyBAQCBQbGF0Zm9ybUJvb3RNYW5hZ2VyVW5hYmxlVG9C b290ICgNCj4gICAgICAgIERFQlVHICgoDQo+ICAgICAgICAgIERFQlVHX1dBUk4sDQo+ICAgICAg ICAgICIlYTogcmVib290aW5nIGFmdGVyIHJlZnJlc2hpbmcgYWxsIGJvb3Qgb3B0aW9uc1xuIiwN Cj4gLSAgICAgICAgX19GVU5DVElPTl9fDQo+ICsgICAgICAgIF9fZnVuY19fDQo+ICAgICAgICAg ICkpOw0KPiAgICAgICAgZ1JULT5SZXNldFN5c3RlbSAoRWZpUmVzZXRDb2xkLCBFRklfU1VDQ0VT UywgMCwgTlVMTCk7DQo+ICAgICAgfQ0KPiBkaWZmIC0tZ2l0IGEvQXJtUGtnL1VuaXZlcnNhbC9T bWJpb3MvUHJvY2Vzc29yU3ViQ2xhc3NEeGUvUHJvY2Vzc29yU3ViQ2xhc3MuYw0KPiBiL0FybVBr Zy9Vbml2ZXJzYWwvU21iaW9zL1Byb2Nlc3NvclN1YkNsYXNzRHhlL1Byb2Nlc3NvclN1YkNsYXNz LmMNCj4gaW5kZXggM2IxMmUyNmFiZjZlLi45MDUwNTg4NTAwNTYgMTAwNjQ0DQo+IC0tLSBhL0Fy bVBrZy9Vbml2ZXJzYWwvU21iaW9zL1Byb2Nlc3NvclN1YkNsYXNzRHhlL1Byb2Nlc3NvclN1YkNs YXNzLmMNCj4gKysrIGIvQXJtUGtnL1VuaXZlcnNhbC9TbWJpb3MvUHJvY2Vzc29yU3ViQ2xhc3NE eGUvUHJvY2Vzc29yU3ViQ2xhc3MuYw0KPiBAQCAtNzQxLDcgKzc0MSw3IEBAIEFkZFNtYmlvc1By b2Nlc3NvclR5cGVUYWJsZSAoDQo+ICAgICAgREVCVUcgKCgNCj4gICAgICAgIERFQlVHX0VSUk9S LA0KPiAgICAgICAgIlslYV06WyVkTF0gU21iaW9zIFR5cGUwNCBUYWJsZSBMb2cgRmFpbGVkISAl ciBcbiIsDQo+IC0gICAgICBfX0ZVTkNUSU9OX18sDQo+ICsgICAgICBfX2Z1bmNfXywNCj4gICAg ICAgIERFQlVHX0xJTkVfTlVNQkVSLA0KPiAgICAgICAgU3RhdHVzDQo+ICAgICAgICApKTsNCj4g ZGlmZiAtLWdpdCBhL0FybVBrZy9Vbml2ZXJzYWwvU21iaW9zL1NtYmlvc01pc2NEeGUvVHlwZTAw L01pc2NCaW9zVmVuZG9yRnVuY3Rpb24uYw0KPiBiL0FybVBrZy9Vbml2ZXJzYWwvU21iaW9zL1Nt Ymlvc01pc2NEeGUvVHlwZTAwL01pc2NCaW9zVmVuZG9yRnVuY3Rpb24uYw0KPiBpbmRleCBjOWYy NWI3NTAyNTQuLjM4ZjM4NjRiMTYwZSAxMDA2NDQNCj4gLS0tIGEvQXJtUGtnL1VuaXZlcnNhbC9T bWJpb3MvU21iaW9zTWlzY0R4ZS9UeXBlMDAvTWlzY0Jpb3NWZW5kb3JGdW5jdGlvbi5jDQo+ICsr KyBiL0FybVBrZy9Vbml2ZXJzYWwvU21iaW9zL1NtYmlvc01pc2NEeGUvVHlwZTAwL01pc2NCaW9z VmVuZG9yRnVuY3Rpb24uYw0KPiBAQCAtMjg3LDcgKzI4Nyw3IEBAIFNNQklPU19NSVNDX1RBQkxF X0ZVTkNUSU9OIChNaXNjQmlvc1ZlbmRvcikgew0KPiAgICAgIERFQlVHICgoDQo+ICAgICAgICBE RUJVR19FUlJPUiwNCj4gICAgICAgICJbJWFdOlslZExdIFNtYmlvcyBUeXBlMDAgVGFibGUgTG9n IEZhaWxlZCEgJXIgXG4iLA0KPiAtICAgICAgX19GVU5DVElPTl9fLA0KPiArICAgICAgX19mdW5j X18sDQo+ICAgICAgICBERUJVR19MSU5FX05VTUJFUiwNCj4gICAgICAgIFN0YXR1cw0KPiAgICAg ICAgKSk7DQo+IGRpZmYgLS1naXQgYS9Bcm1Qa2cvVW5pdmVyc2FsL1NtYmlvcy9TbWJpb3NNaXNj RHhlL1R5cGUwMS9NaXNjU3lzdGVtTWFudWZhY3R1cmVyRnVuY3Rpb24uYw0KPiBiL0FybVBrZy9V bml2ZXJzYWwvU21iaW9zL1NtYmlvc01pc2NEeGUvVHlwZTAxL01pc2NTeXN0ZW1NYW51ZmFjdHVy ZXJGdW5jdGlvbi5jDQo+IGluZGV4IDIyZmI1ZWNjYWE2My4uODg2N2RlNDgxNWEyIDEwMDY0NA0K PiAtLS0gYS9Bcm1Qa2cvVW5pdmVyc2FsL1NtYmlvcy9TbWJpb3NNaXNjRHhlL1R5cGUwMS9NaXNj U3lzdGVtTWFudWZhY3R1cmVyRnVuY3Rpb24uYw0KPiArKysgYi9Bcm1Qa2cvVW5pdmVyc2FsL1Nt Ymlvcy9TbWJpb3NNaXNjRHhlL1R5cGUwMS9NaXNjU3lzdGVtTWFudWZhY3R1cmVyRnVuY3Rpb24u Yw0KPiBAQCAtMTg0LDcgKzE4NCw3IEBAIFNNQklPU19NSVNDX1RBQkxFX0ZVTkNUSU9OIChNaXNj U3lzdGVtTWFudWZhY3R1cmVyKSB7DQo+ICAgICAgREVCVUcgKCgNCj4gICAgICAgIERFQlVHX0VS Uk9SLA0KPiAgICAgICAgIlslYV06WyVkTF0gU21iaW9zIFR5cGUwMSBUYWJsZSBMb2cgRmFpbGVk ISAlciBcbiIsDQo+IC0gICAgICBfX0ZVTkNUSU9OX18sDQo+ICsgICAgICBfX2Z1bmNfXywNCj4g ICAgICAgIERFQlVHX0xJTkVfTlVNQkVSLA0KPiAgICAgICAgU3RhdHVzDQo+ICAgICAgICApKTsN Cj4gZGlmZiAtLWdpdCBhL0FybVBrZy9Vbml2ZXJzYWwvU21iaW9zL1NtYmlvc01pc2NEeGUvVHlw ZTAyL01pc2NCYXNlQm9hcmRNYW51ZmFjdHVyZXJGdW5jdGlvbi5jDQo+IGIvQXJtUGtnL1VuaXZl cnNhbC9TbWJpb3MvU21iaW9zTWlzY0R4ZS9UeXBlMDIvTWlzY0Jhc2VCb2FyZE1hbnVmYWN0dXJl ckZ1bmN0aW9uLmMNCj4gaW5kZXggMzQ0MWU3Nzk4ODYwLi5mZWI0MmU2ZjVkZWUgMTAwNjQ0DQo+ IC0tLSBhL0FybVBrZy9Vbml2ZXJzYWwvU21iaW9zL1NtYmlvc01pc2NEeGUvVHlwZTAyL01pc2NC YXNlQm9hcmRNYW51ZmFjdHVyZXJGdW5jdGlvbi5jDQo+ICsrKyBiL0FybVBrZy9Vbml2ZXJzYWwv U21iaW9zL1NtYmlvc01pc2NEeGUvVHlwZTAyL01pc2NCYXNlQm9hcmRNYW51ZmFjdHVyZXJGdW5j dGlvbi5jDQo+IEBAIC0yMTQsNyArMjE0LDcgQEAgU01CSU9TX01JU0NfVEFCTEVfRlVOQ1RJT04g KE1pc2NCYXNlQm9hcmRNYW51ZmFjdHVyZXIpIHsNCj4gICAgICBERUJVRyAoKA0KPiAgICAgICAg REVCVUdfRVJST1IsDQo+ICAgICAgICAiWyVhXTpbJWRMXSBTbWJpb3MgVHlwZTAyIFRhYmxlIExv ZyBGYWlsZWQhICVyIFxuIiwNCj4gLSAgICAgIF9fRlVOQ1RJT05fXywNCj4gKyAgICAgIF9fZnVu Y19fLA0KPiAgICAgICAgREVCVUdfTElORV9OVU1CRVIsDQo+ICAgICAgICBTdGF0dXMNCj4gICAg ICAgICkpOw0KPiBkaWZmIC0tZ2l0IGEvQXJtUGtnL1VuaXZlcnNhbC9TbWJpb3MvU21iaW9zTWlz Y0R4ZS9UeXBlMDMvTWlzY0NoYXNzaXNNYW51ZmFjdHVyZXJGdW5jdGlvbi5jDQo+IGIvQXJtUGtn L1VuaXZlcnNhbC9TbWJpb3MvU21iaW9zTWlzY0R4ZS9UeXBlMDMvTWlzY0NoYXNzaXNNYW51ZmFj dHVyZXJGdW5jdGlvbi5jDQo+IGluZGV4IGQxNjE5NzBjMDIzZS4uNmIzYjYzYjBlOGQ1IDEwMDY0 NA0KPiAtLS0gYS9Bcm1Qa2cvVW5pdmVyc2FsL1NtYmlvcy9TbWJpb3NNaXNjRHhlL1R5cGUwMy9N aXNjQ2hhc3Npc01hbnVmYWN0dXJlckZ1bmN0aW9uLmMNCj4gKysrIGIvQXJtUGtnL1VuaXZlcnNh bC9TbWJpb3MvU21iaW9zTWlzY0R4ZS9UeXBlMDMvTWlzY0NoYXNzaXNNYW51ZmFjdHVyZXJGdW5j dGlvbi5jDQo+IEBAIC0xNzksNyArMTc5LDcgQEAgU01CSU9TX01JU0NfVEFCTEVfRlVOQ1RJT04g KE1pc2NDaGFzc2lzTWFudWZhY3R1cmVyKSB7DQo+ICAgICAgREVCVUcgKCgNCj4gICAgICAgIERF QlVHX0VSUk9SLA0KPiAgICAgICAgIlslYV06WyVkTF0gU21iaW9zIFR5cGUwMyBUYWJsZSBMb2cg RmFpbGVkISAlciBcbiIsDQo+IC0gICAgICBfX0ZVTkNUSU9OX18sDQo+ICsgICAgICBfX2Z1bmNf XywNCj4gICAgICAgIERFQlVHX0xJTkVfTlVNQkVSLA0KPiAgICAgICAgU3RhdHVzDQo+ICAgICAg ICApKTsNCj4gZGlmZiAtLWdpdCBhL0FybVBrZy9Vbml2ZXJzYWwvU21iaW9zL1NtYmlvc01pc2NE eGUvVHlwZTEzL01pc2NOdW1iZXJPZkluc3RhbGxhYmxlTGFuZ3VhZ2VzRnVuY3Rpb24uYw0KPiBi L0FybVBrZy9Vbml2ZXJzYWwvU21iaW9zL1NtYmlvc01pc2NEeGUvVHlwZTEzL01pc2NOdW1iZXJP Zkluc3RhbGxhYmxlTGFuZ3VhZ2VzRnVuY3Rpb24uYw0KPiBpbmRleCAzODZiODgwMGUyOWIuLjk1 MWFjMmE5MDViNiAxMDA2NDQNCj4gLS0tIGEvQXJtUGtnL1VuaXZlcnNhbC9TbWJpb3MvU21iaW9z TWlzY0R4ZS9UeXBlMTMvTWlzY051bWJlck9mSW5zdGFsbGFibGVMYW5ndWFnZXNGdW5jdGlvbi5j DQo+ICsrKyBiL0FybVBrZy9Vbml2ZXJzYWwvU21iaW9zL1NtYmlvc01pc2NEeGUvVHlwZTEzL01p c2NOdW1iZXJPZkluc3RhbGxhYmxlTGFuZ3VhZ2VzRnVuY3Rpb24uYw0KPiBAQCAtMTYxLDcgKzE2 MSw3IEBAIFNNQklPU19NSVNDX1RBQkxFX0ZVTkNUSU9OIChNaXNjTnVtYmVyT2ZJbnN0YWxsYWJs ZUxhbmd1YWdlcykgew0KPiAgICAgIERFQlVHICgoDQo+ICAgICAgICBERUJVR19FUlJPUiwNCj4g ICAgICAgICJbJWFdOlslZExdIFNtYmlvcyBUeXBlMTMgVGFibGUgTG9nIEZhaWxlZCEgJXIgXG4i LA0KPiAtICAgICAgX19GVU5DVElPTl9fLA0KPiArICAgICAgX19mdW5jX18sDQo+ICAgICAgICBE RUJVR19MSU5FX05VTUJFUiwNCj4gICAgICAgIFN0YXR1cw0KPiAgICAgICAgKSk7DQo+IGRpZmYg LS1naXQgYS9Bcm1Qa2cvVW5pdmVyc2FsL1NtYmlvcy9TbWJpb3NNaXNjRHhlL1R5cGUzMi9NaXNj Qm9vdEluZm9ybWF0aW9uRnVuY3Rpb24uYw0KPiBiL0FybVBrZy9Vbml2ZXJzYWwvU21iaW9zL1Nt Ymlvc01pc2NEeGUvVHlwZTMyL01pc2NCb290SW5mb3JtYXRpb25GdW5jdGlvbi5jDQo+IGluZGV4 IGZkZjYyNjJhYTdmNS4uZmExZWE5NWYyYmMzIDEwMDY0NA0KPiAtLS0gYS9Bcm1Qa2cvVW5pdmVy c2FsL1NtYmlvcy9TbWJpb3NNaXNjRHhlL1R5cGUzMi9NaXNjQm9vdEluZm9ybWF0aW9uRnVuY3Rp b24uYw0KPiArKysgYi9Bcm1Qa2cvVW5pdmVyc2FsL1NtYmlvcy9TbWJpb3NNaXNjRHhlL1R5cGUz Mi9NaXNjQm9vdEluZm9ybWF0aW9uRnVuY3Rpb24uYw0KPiBAQCAtNjksNyArNjksNyBAQCBTTUJJ T1NfTUlTQ19UQUJMRV9GVU5DVElPTiAoTWlzY0Jvb3RJbmZvcm1hdGlvbikgew0KPiAgICAgIERF QlVHICgoDQo+ICAgICAgICBERUJVR19FUlJPUiwNCj4gICAgICAgICJbJWFdOlslZExdIFNtYmlv cyBUeXBlMzIgVGFibGUgTG9nIEZhaWxlZCEgJXIgXG4iLA0KPiAtICAgICAgX19GVU5DVElPTl9f LA0KPiArICAgICAgX19mdW5jX18sDQo+ICAgICAgICBERUJVR19MSU5FX05VTUJFUiwNCj4gICAg ICAgIFN0YXR1cw0KPiAgICAgICAgKSk7DQo+IC0tDQo+IDIuMzQuMQ0KPiANCj4gDQo+IA0KPiAN Cj4gDQoNCg==