From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by mx.groups.io with SMTP id smtpd.web10.186843.1673921571233224752 for ; Mon, 16 Jan 2023 18:12:52 -0800 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=IAbvlH3J; spf=pass (domain: intel.com, ip: 192.55.52.88, mailfrom: jiewen.yao@intel.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1673921571; x=1705457571; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=/XX/d0qFBdkhIP4JO6I6CUoquCecJVJ8R32iQ7zF/lg=; b=IAbvlH3JQ+p83k7vce72E7e6qHYwT9xLsVHOzChLI/NDNPhdNEn16Bgh 6naEbiAOmjERqDospVT1r1Ab2DnIl0hFnFtTtTVwak6xcaP6MCjHU7wfB uzKDelHDZ2pPVWR3qCdnBCLo6sEM2iIinf2/zeM1uH0PifOeiHgEOdDMS SANpWN+ZjyCGyEEybBjbuHkTDmKB9HzjIizK/zrEOqqri3eayG3U5NSPK RqP1CNCIMUyFo61mr0OV1pfa5LTzkTZ2nPEhwcsdDgrYebej4M2lIxYn4 yQIKrpE+qBF0BUGiMABh07w9Hc50ACfElAuJlgPNplXGgrnB9igXOss84 w==; X-IronPort-AV: E=McAfee;i="6500,9779,10592"; a="351839341" X-IronPort-AV: E=Sophos;i="5.97,222,1669104000"; d="scan'208";a="351839341" Received: from orsmga008.jf.intel.com ([10.7.209.65]) by fmsmga101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 16 Jan 2023 18:12:50 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10592"; a="689641921" X-IronPort-AV: E=Sophos;i="5.97,222,1669104000"; d="scan'208";a="689641921" Received: from fmsmsx602.amr.corp.intel.com ([10.18.126.82]) by orsmga008.jf.intel.com with ESMTP; 16 Jan 2023 18:12:50 -0800 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.2507.16; Mon, 16 Jan 2023 18:12:49 -0800 Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) 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.2507.16; Mon, 16 Jan 2023 18:12:48 -0800 Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) 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.2507.16 via Frontend Transport; Mon, 16 Jan 2023 18:12:48 -0800 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (104.47.58.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.2507.16; Mon, 16 Jan 2023 18:12:48 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Oj6UBjgjhZD+u64/Dq2brupH0hLP9qupzHniGeYuZacGGMGDoMv61t4yM4w3goQH5dhslBuCjbX/QW3hX1TI6xUY1oZONYcNGiE+319GZtIW2iyZ4CNxDvsgnfLg6f+CsjTt6P5HLIJ3Wv9gyARW7/Pr/ygrSZYwFVtEu2A8c9lwfcnMDIspkJZ7JqKz+eqJRYc2cCrn00p12CbwS5kvL3VBvxt5upuyi7/fH5lfHiV6pWfsQfd/wwzPKj2PI3NQ0NryXAUjg4aIDXuCHtuF6GkexP0lZYEh/+oEqjocSr4MQt7IacpROMR4nI0iahuYO+iHOW8LdX8/+b+gHXIOIg== 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=/XX/d0qFBdkhIP4JO6I6CUoquCecJVJ8R32iQ7zF/lg=; b=Uk/okpqPgWDu7NRYLnuuIj41hb5Yk4Do/a/gEFgLcpwF53Kqj4RfE3gNg4U6whR16bKIXVB4N4hS5kK/Y7pM769m+wiYnS57daXgSleQAQPu7NX7ifcc7jBTvbQy6DWQ6xVJnmr4HoWsPq1V3KOzAvkQGXzi8SNb759J4lmEVS1fTh2HhvdtWP7zj2r+Fj2UIyt1cMQD6mQ0aSfn5enYjOvEKczLGS4kyjubtwFLWsnQCDc4VlfhwVNbTNdFITAXduqZbQY9M+KieElmAmQOqBTEJsaHXKRYm/8IJUlakzitTQmN6OfJp1BM7NNINHnL6vLTBg4ZFQW8gvPQbmPkbQ== 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 MW4PR11MB5872.namprd11.prod.outlook.com (2603:10b6:303:169::14) by PH7PR11MB5818.namprd11.prod.outlook.com (2603:10b6:510:132::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5986.18; Tue, 17 Jan 2023 02:12:39 +0000 Received: from MW4PR11MB5872.namprd11.prod.outlook.com ([fe80::5f56:1bdc:2eae:c041]) by MW4PR11MB5872.namprd11.prod.outlook.com ([fe80::5f56:1bdc:2eae:c041%7]) with mapi id 15.20.6002.013; Tue, 17 Jan 2023 02:12:39 +0000 From: "Yao, Jiewen" To: "Xu, Min M" , "devel@edk2.groups.io" , "ardb@kernel.org" CC: "Aktas, Erdem" , James Bottomley , Gerd Hoffmann , Tom Lendacky , Michael Roth Subject: Re: [edk2-devel] [PATCH V1 1/1] OvmfPkg/AcpiPlatformDxe: Measure ACPI table from QEMU in TDVF Thread-Topic: [edk2-devel] [PATCH V1 1/1] OvmfPkg/AcpiPlatformDxe: Measure ACPI table from QEMU in TDVF Thread-Index: AQHZKU3eGyGpegw6rEOjkv3NNLPyJ66gVKNAgACGAACAADapUIAABdOAgAABw7CAAKlHgIAAAn8AgAAaF2A= Date: Tue, 17 Jan 2023 02:12:39 +0000 Message-ID: References: <20230116015658.194-1-min.m.xu@intel.com> <173AD0557CFDE0A2.23170@groups.io> In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: MW4PR11MB5872:EE_|PH7PR11MB5818:EE_ x-ms-office365-filtering-correlation-id: 8e057c73-e0f7-43e5-52c0-08daf8304efa 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: L+I3OMimf4/AS/WmCMERrISxmwJjdXhIF+g0xUVnibgz8X1A/qYGsJcxE8ogsuwEdh0U54JhEJqJqHnNAKxtRNTVgaKWDeSUDoXI/yfGAP7zjpd2N5sgRaQFbo1s3u3N4IImidJ0gIz3rYY+QjeeTiPHmOsymbZyggB6VQDqe8LHBMY5XE27CdqaKCiKiJ36zMuJ1L0Nsk4wp+2njsnN64I8G7ilpd9832/hJfy66p+s+vZzubay+vFU/fjeMSJOgFn7k72hNfJl0z+wO9PeMq5YBto9igjEhzoT48m2fJr5vQ27tQ171Cpy7UVQV3vtKavjA87jChgFAqLKWcj6BqV/4Wf3xTz9A+dA98S0o+kgidUNulJoTx7z9vzBcgC7CmtbqhTqvzjCFTDxP4+8prYAJ/HLOIqtnbljLK+GJhUqgWk+r9KMGzs+tv+qVTja94HLBxnDyj8IgawhCKzrrxFKdIohBfEr58kHv5UrvDPkTsZB5l3vbMG8bZWs6uiUiYTLPXxN/0CakVQOakedHL8H8Cd9LqTvjPJXPzMrF5gGIcqX0pweYWbviHocSz9KA+ry+8enhLgD6ViX2rDgItmnsfjEn5NGQkprG4G0hpfNH0u1U93KPbhI1d8T383bUUmGvhyW0c0Kjn5m+vqgoesBAKCfed22OwW1v3zrYBOHr4vGqlz125/7bLsffT77Ku6muk3iWqv5cH/7HOFfABQPTS3vDXELIQ3A7tMlo7BYabZr7dIGhsWIzyijM6yVPvtm13IU1n0m8lff5OSiCA== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MW4PR11MB5872.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230022)(366004)(346002)(39860400002)(376002)(396003)(136003)(451199015)(66899015)(38070700005)(66476007)(76116006)(4326008)(66556008)(5660300002)(52536014)(38100700002)(30864003)(2906002)(83380400001)(64756008)(122000001)(33656002)(86362001)(8676002)(71200400001)(478600001)(110136005)(316002)(8936002)(966005)(66446008)(66946007)(54906003)(7696005)(82960400001)(26005)(41300700001)(53546011)(6506007)(186003)(55016003)(9686003);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?UWk2MmZJQVBwQ0xUY2tpbDVPSERsSnUzRjR0TjJ6M0tMeGJPcmJMY2M4Z2Qz?= =?utf-8?B?TzdoaVFERlUzUmgwdENCRVhnZHltOXNub0tueG5JU0hXNnVPZ3R1eFdwaXhk?= =?utf-8?B?Z0V3ZjNBQThKN0RHcG9wNGI4U1lDcGJjRUtjMTAraGl0eEsyZkQycFd0bVZz?= =?utf-8?B?K2VhUmV1by9TbzRSb2NwbStiYkp6Q3BmVDVGN1phMzBYRmdXSG5EeWI2OE5S?= =?utf-8?B?NERyOVFxZXc4WlJNWGY0anBZc1pWUGJuRnZsdUYvUXhVZ2JhUDcwRm1nK05m?= =?utf-8?B?djRLc2FWMDBwNGZlbmpneWpNczhlSWVoWlQ1dkFpVUFLb1pzRUNKVE05L2p0?= =?utf-8?B?ZE5RL3hRQy91eHRTOHNhQm5wdFNZcDVudUdNcTdBUUNCQVlKQmN6RzM5cjlB?= =?utf-8?B?R2F2NFdWeGdOd01RdWdJczEzVzhmK01xK1ptVVBjZUx0cDlrcnp4VHNmdTFT?= =?utf-8?B?UWppQlY4Z0gxSjNaTHcwYTY0a1dwL2FkWG51cFNpREU5ZGg3ankvaXZTZlVh?= =?utf-8?B?QThrSHdLMHRscThwajBiRE1RaVFWMTZ1djJmQktYajEvcElKb0ZaaVRlN0c4?= =?utf-8?B?aE9GWXExU3BZUC9PMUxFVFRsL05UcmJPTDNVbk9Nb3pPOHVtcUVTQU53cVFs?= =?utf-8?B?MFYza0NJUHdkQmIrS285R3RpbjRqZ0dPMTVFT2M1Z244REhONWx3Y21KOUgw?= =?utf-8?B?SzF2QkRXZnBReEpVYWZzZE1BM2RtVzNTY05JOE5QRmRFQ09XanhqVVZaWGt6?= =?utf-8?B?OWpBUmt5Q3VWVmw3bi9kZ09TSHlkZjR6SW1MNDVLUVgxbmV6MUZtOVlaK0hu?= =?utf-8?B?c29JRytjVnZ1eFUzN2JJY0RBQjkvdWtHUjlveDVHbnVDSUY2VHhVTzZ1eW5s?= =?utf-8?B?bDBoK09RekFTMDhsbEVKN3YrQ2VocDVWTnpyNWZhQTZKemdNWUNTeWN2UFpI?= =?utf-8?B?T2ZYWC9qR3AzMVJOSjFiVk8wR2hWUjFwSlhnRmhCRVFkVHhNTTIxWnlDcmV0?= =?utf-8?B?a1kxNzZxRFQraUlTQUNQQVBLa3RMa2R4SkZmbDF2NUhsbXJTbVdtcHprTnN4?= =?utf-8?B?ZENWSllNZHRiNWI3UG9rbzJQMnN6Rm45cHRNY1Y0OWxGcXNvQVJyRFdhZjVD?= =?utf-8?B?YTZxZ0ExZ0N4Z0NUN2dod29pUkdTclZ3a1RtSGdVd3c3L3k3SDlabEFwZmJp?= =?utf-8?B?czZQU2hFckZkRkRRRXk0cmd2bTN0cWo5cFFjeVVyQldWbHhHZDJVV3RJSUdv?= =?utf-8?B?Zm8rODUrMjBGMXc5UUJuY1ArNFMrbXFJVGgydnFXdm5rMGdNSCt1OFBQLytO?= =?utf-8?B?OC95cHFBc0pBRkExZlBSam44TFFJRmpoaG5BRUIyYTcySGo3Z0NnYldCVlBt?= =?utf-8?B?Um9sTW4vaUFZNXVwVWhZa2ovYy9lSExmZmErSlU4d2lWNkJpc0J4eXltZkEv?= =?utf-8?B?WnEySzkyVU1BRUk0RkxqTnV5Q3E3QUl4YkV6QjRCanhZank5djhkTk5CSEJR?= =?utf-8?B?NGxxL2lob1o4NXh1T0l0cWRCREprdmczV2RDSlNJaERlUDB4WlJYVUQvMUpt?= =?utf-8?B?MVB2aTNiOEU3N1ltQ3NTVi9NbkgwcFRtZVZxaFVUbjBoODVRUXI3WWkzY25Z?= =?utf-8?B?ZnB2OVRTeHg5dEFtZUxFaUFvR2c3c1puNDFiVFArVjNRTHJZRGNQanBZcmdT?= =?utf-8?B?dWRtNXRzeUQrNS84VFpWUFpXeUx6YXNpYzA3UHp3VGlEejhnYXVlcFIwaFdz?= =?utf-8?B?aUh4eFU5RUVBbEluN2JWOGt2d0VsQi8wVTRNclMwUTdDL1VBdWhTMjlXamZz?= =?utf-8?B?akxSc3V4OFNQK1JhN1M4MERmUUVQVXVaNG1iNmtjS2VEcjM5aWRSUjBMRXNI?= =?utf-8?B?dHZ2SUxab2RCN1E1ejZCOXJzWTFEbkdacndaclVKTWp3WmxVaHdKTS9HYitk?= =?utf-8?B?c05LeDVPWFptK3RJZjRqRWc4QXlGbHd2N3JlSDl5aFBzZmNmUHhYTnpuM1FC?= =?utf-8?B?SjVPcnhhNDZTbWZzbWx5eDYwQWw1dmw4QVRyU1RBN2JRdU9UekJ3WCtZZEJ3?= =?utf-8?B?bUFQTWN0RzRqRE1jN3lpTFFCZGc4WURvYkdjSnFNaU1uOTl4VFlKSTRYMnpO?= =?utf-8?Q?E/VHWRE8lyNvf6grbHp2Awjd3?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MW4PR11MB5872.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8e057c73-e0f7-43e5-52c0-08daf8304efa X-MS-Exchange-CrossTenant-originalarrivaltime: 17 Jan 2023 02:12:39.2868 (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: Ls5nFNU6/ufUwsfcV4L7ZN+NTonLym8OyDUhb442muf8Hf6DXsHmL20RER7fRQoNemloP5J+SeJsfzS4Z5EpfA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR11MB5818 Return-Path: jiewen.yao@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 U29ycnksIEkgd291bGQgbGlrZSB0byB3aXRoZHJhdyBteSBjb21tZW50IG9uIEFDUEkgdGFibGUg ZXZlbnQgYW5kIGV2ZW50IHR5cGUuDQoNClBGUCBzcGVjIGRlZmluZXMgdGhlIEFDUEkgdGFibGUg b24gZmxhc2ggYmUgbWVhc3VyZWQgdG8gUENSWzBdIGFzIHBhcnQgb2YgUE9TVF9DT0RFLg0KDQpC dXQgaGVyZSBBQ1BJIHRhYmxlIGlzIGNvbmZpZ3VyYXRpb24gZnJvbSBWTU0uIEkgZmVlbCBpdCBp cyBtb3JlIHN1aXRhYmxlIHRvIGV4dGVuZCB0byBQQ1JbMV0gYXMgcGFydCBvZiBjb25maWd1cmF0 aW9uIGRhdGEuDQoNCkkgYXBvbG9naXplIGZvciB0aGUgY29uZnVzaW5nLg0KDQpUaGFuayB5b3UN CllhbywgSmlld2VuDQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogWHUs IE1pbiBNIDxtaW4ubS54dUBpbnRlbC5jb20+DQo+IFNlbnQ6IFR1ZXNkYXksIEphbnVhcnkgMTcs IDIwMjMgODozNiBBTQ0KPiBUbzogWWFvLCBKaWV3ZW4gPGppZXdlbi55YW9AaW50ZWwuY29tPjsg ZGV2ZWxAZWRrMi5ncm91cHMuaW87DQo+IGFyZGJAa2VybmVsLm9yZw0KPiBDYzogQWt0YXMsIEVy ZGVtIDxlcmRlbWFrdGFzQGdvb2dsZS5jb20+OyBKYW1lcyBCb3R0b21sZXkNCj4gPGplamJAbGlu dXguaWJtLmNvbT47IEdlcmQgSG9mZm1hbm4gPGtyYXhlbEByZWRoYXQuY29tPjsgVG9tDQo+IExl bmRhY2t5IDx0aG9tYXMubGVuZGFja3lAYW1kLmNvbT47IE1pY2hhZWwgUm90aA0KPiA8bWljaGFl bC5yb3RoQGFtZC5jb20+DQo+IFN1YmplY3Q6IFJFOiBbZWRrMi1kZXZlbF0gW1BBVENIIFYxIDEv MV0gT3ZtZlBrZy9BY3BpUGxhdGZvcm1EeGU6DQo+IE1lYXN1cmUgQUNQSSB0YWJsZSBmcm9tIFFF TVUgaW4gVERWRg0KPiANCj4gVGhhbmtzIEppZXdlbi4gSXQgd2lsbCBiZSB1cGRhdGVkIGluIHRo ZSBuZXh0IHZlcnNpb24uDQo+IA0KPiA+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4g RnJvbTogWWFvLCBKaWV3ZW4gPGppZXdlbi55YW9AaW50ZWwuY29tPg0KPiA+IFNlbnQ6IFR1ZXNk YXksIEphbnVhcnkgMTcsIDIwMjMgODozMCBBTQ0KPiA+IFRvOiBkZXZlbEBlZGsyLmdyb3Vwcy5p bzsgWWFvLCBKaWV3ZW4gPGppZXdlbi55YW9AaW50ZWwuY29tPjsNCj4gPiBhcmRiQGtlcm5lbC5v cmcNCj4gPiBDYzogWHUsIE1pbiBNIDxtaW4ubS54dUBpbnRlbC5jb20+OyBBa3RhcywgRXJkZW0N Cj4gPiA8ZXJkZW1ha3Rhc0Bnb29nbGUuY29tPjsgSmFtZXMgQm90dG9tbGV5IDxqZWpiQGxpbnV4 LmlibS5jb20+OyBHZXJkDQo+ID4gSG9mZm1hbm4gPGtyYXhlbEByZWRoYXQuY29tPjsgVG9tIExl bmRhY2t5DQo+ID4gPHRob21hcy5sZW5kYWNreUBhbWQuY29tPjsgTWljaGFlbCBSb3RoIDxtaWNo YWVsLnJvdGhAYW1kLmNvbT4NCj4gPiBTdWJqZWN0OiBSRTogW2VkazItZGV2ZWxdIFtQQVRDSCBW MSAxLzFdIE92bWZQa2cvQWNwaVBsYXRmb3JtRHhlOg0KPiBNZWFzdXJlDQo+ID4gQUNQSSB0YWJs ZSBmcm9tIFFFTVUgaW4gVERWRg0KPiA+DQo+ID4gSGkgTWluDQo+ID4gT25lIG1vcmUgdGhpbmc6 IFRoaXMgaXMgdG8gbWVhc3VyZSBBQ1BJIHRhYmxlLg0KPiA+DQo+ID4gQWNjb3JkaW5nIHRvIGh0 dHBzOi8vdHJ1c3RlZGNvbXB1dGluZ2dyb3VwLm9yZy9yZXNvdXJjZS9wYy1jbGllbnQtDQo+IHNw ZWNpZmljLQ0KPiA+IHBsYXRmb3JtLWZpcm13YXJlLXByb2ZpbGUtc3BlY2lmaWNhdGlvbi8sIHRo ZSBldmVudCB0eXBlIHNob3VsZCBiZQ0KPiA+IEVWX1BPU1RfQ09ERSwgYW5kIGV2ZW50IGRhdGEg c2hvdWxkIGJlICJBQ1BJIERBVEEiIGluIGFsbCBjYXBzLiBZb3UgY2FuDQo+ID4gdXNlIGJlbG93 IHBhdHRlcm46DQo+ID4gPT09PT09PT09PT09PT09PT0NCj4gPiAgIFRwbU1lYXN1cmVBbmRMb2dE YXRhICgNCj4gPiAgICAgMCwNCj4gPiAgICAgRVZfUE9TVF9DT0RFLA0KPiA+ICAgICBFVl9QT1NU Q09ERV9JTkZPX0FDUElfREFUQSwNCj4gPiAgICAgQUNQSV9EQVRBX0xFTiwNCj4gPiAgICAgVGFi bGUsDQo+ID4gICAgIFRhYmxlU2l6ZQ0KPiA+ICAgICApOw0KPiA+ID09PT09PT09PT09PT09PT09 DQo+ID4NCj4gPiA+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4gPiBGcm9tOiBkZXZl bEBlZGsyLmdyb3Vwcy5pbyA8ZGV2ZWxAZWRrMi5ncm91cHMuaW8+IE9uIEJlaGFsZiBPZiBZYW8s DQo+ID4gPiBKaWV3ZW4NCj4gPiA+IFNlbnQ6IE1vbmRheSwgSmFudWFyeSAxNiwgMjAyMyAxMDoy OCBQTQ0KPiA+ID4gVG86IGRldmVsQGVkazIuZ3JvdXBzLmlvOyBhcmRiQGtlcm5lbC5vcmcNCj4g PiA+IENjOiBYdSwgTWluIE0gPG1pbi5tLnh1QGludGVsLmNvbT47IEFrdGFzLCBFcmRlbQ0KPiA+ ID4gPGVyZGVtYWt0YXNAZ29vZ2xlLmNvbT47IEphbWVzIEJvdHRvbWxleSA8amVqYkBsaW51eC5p Ym0uY29tPjsNCj4gR2VyZA0KPiA+ID4gSG9mZm1hbm4gPGtyYXhlbEByZWRoYXQuY29tPjsgVG9t IExlbmRhY2t5DQo+ID4gPHRob21hcy5sZW5kYWNreUBhbWQuY29tPjsNCj4gPiA+IE1pY2hhZWwg Um90aCA8bWljaGFlbC5yb3RoQGFtZC5jb20+DQo+ID4gPiBTdWJqZWN0OiBSZTogW2VkazItZGV2 ZWxdIFtQQVRDSCBWMSAxLzFdIE92bWZQa2cvQWNwaVBsYXRmb3JtRHhlOg0KPiA+ID4gTWVhc3Vy ZSBBQ1BJIHRhYmxlIGZyb20gUUVNVSBpbiBURFZGDQo+ID4gPg0KPiA+ID4gRWFjaCBtb2R1bGUs IHdoaWNoIHdhbnRzIHRvIGxvYWQgQUNQSSB0YWJsZS4NCj4gPiA+DQo+ID4gPiBNb3N0IGNvZGVz IGFyZSBmcm9tIGNsb3NlIHNvdXJjZSBwbGF0Zm9ybS4NCj4gPiA+DQo+ID4gPiBPbmUgZXhhbXBs ZSBpbiBFREtJSSBTZWN1cml0eVBrZyBpcyBUUE0yLg0KPiA+ID4NCj4gaHR0cHM6Ly9naXRodWIu Y29tL3RpYW5vY29yZS9lZGsyL2Jsb2IvbWFzdGVyL1NlY3VyaXR5UGtnL1RjZy9UY2cyQWNwaQ0K PiA+ID4gLw0KPiA+ID4gVGNnMkFjcGkuYyNMNjkwDQo+ID4gPg0KPiA+ID4NCj4gaHR0cHM6Ly9n aXRodWIuY29tL3RpYW5vY29yZS9lZGsyL2Jsb2IvbWFzdGVyL1NlY3VyaXR5UGtnL1RjZy9UY2cy QWNwaQ0KPiA+ID4gLw0KPiA+ID4gVGNnMkFjcGkuYyNMNzk0DQo+ID4gPg0KPiA+ID4gSnVzdCBz ZWFyY2ggIlRwbU1lYXN1cmVBbmRMb2dEYXRhIiAuLi4NCj4gPiA+DQo+ID4gPg0KPiA+ID4gPiAt LS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+ID4gPiBGcm9tOiBkZXZlbEBlZGsyLmdyb3Vw cy5pbyA8ZGV2ZWxAZWRrMi5ncm91cHMuaW8+IE9uIEJlaGFsZiBPZiBBcmQNCj4gPiA+ID4gQmll c2hldXZlbA0KPiA+ID4gPiBTZW50OiBNb25kYXksIEphbnVhcnkgMTYsIDIwMjMgMTA6MTUgUE0N Cj4gPiA+ID4gVG86IGRldmVsQGVkazIuZ3JvdXBzLmlvOyBZYW8sIEppZXdlbiA8amlld2VuLnlh b0BpbnRlbC5jb20+DQo+ID4gPiA+IENjOiBYdSwgTWluIE0gPG1pbi5tLnh1QGludGVsLmNvbT47 IEFrdGFzLCBFcmRlbQ0KPiA+ID4gPiA8ZXJkZW1ha3Rhc0Bnb29nbGUuY29tPjsgSmFtZXMgQm90 dG9tbGV5IDxqZWpiQGxpbnV4LmlibS5jb20+Ow0KPiA+IEdlcmQNCj4gPiA+ID4gSG9mZm1hbm4g PGtyYXhlbEByZWRoYXQuY29tPjsgVG9tIExlbmRhY2t5DQo+ID4gPiA+IDx0aG9tYXMubGVuZGFj a3lAYW1kLmNvbT47IE1pY2hhZWwgUm90aCA8bWljaGFlbC5yb3RoQGFtZC5jb20+DQo+ID4gPiA+ IFN1YmplY3Q6IFJlOiBbZWRrMi1kZXZlbF0gW1BBVENIIFYxIDEvMV0gT3ZtZlBrZy9BY3BpUGxh dGZvcm1EeGU6DQo+ID4gPiA+IE1lYXN1cmUgQUNQSSB0YWJsZSBmcm9tIFFFTVUgaW4gVERWRg0K PiA+ID4gPg0KPiA+ID4gPiBPbiBNb24sIDE2IEphbiAyMDIzIGF0IDE0OjU3LCBZYW8sIEppZXdl biA8amlld2VuLnlhb0BpbnRlbC5jb20+DQo+ID4gd3JvdGU6DQo+ID4gPiA+ID4NCj4gPiA+ID4g PiBEbyB5b3UgbWVhbiByZWFsIHBsYXRmb3JtIEJJT1M/DQo+ID4gPiA+ID4NCj4gPiA+ID4NCj4g PiA+ID4gWWVzDQo+ID4gPiA+DQo+ID4gPiA+ID4gVGhlIHJ1bGVzIGFyZToNCj4gPiA+ID4gPiAx KSBUaGUgQUNQSSB0YWJsZSBvbiB0aGUgZmxhc2ggbG9hZGVkIGJ5IHRoZSBCSU9TIGlzIG1lYXN1 cmVkDQo+ID4gPiA+ID4gKmJlZm9yZSoNCj4gPiA+IGFueQ0KPiA+ID4gPiBtb2RpZmljYXRpb24g YW5kICpiZWZvcmUqIGluc3RhbGxhdGlvbi4gRm9yIGV4YW1wbGUsIERTRFQsIFNTRFQuDQo+ID4g PiA+ID4gMikgVGhlIEFDUEkgdGFibGUgY29uc3RydWN0ZWQgYnkgdGhlIEJJT1MgZHluYW1pY2Fs bHkgZG9lcyBub3QNCj4gPiA+ID4gPiBuZWVkIHRvDQo+ID4gPiBiZQ0KPiA+ID4gPiBtZWFzdXJl ZC4gRm9yIGV4YW1wbGUgTUFEVC4NCj4gPiA+ID4gPg0KPiA+ID4gPg0KPiA+ID4gPiBPSyBzbyB3 aGljaCBFREsyIGNvbXBvbmVudCBpcyBub3JtYWxseSBpbiBjaGFyZ2Ugb2YgdGhpcz8NCj4gPiA+ ID4NCj4gPiA+ID4NCj4gPiA+ID4NCj4gPiA+ID4gPiA+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0t LS0tDQo+ID4gPiA+ID4gPiBGcm9tOiBBcmQgQmllc2hldXZlbCA8YXJkYkBrZXJuZWwub3JnPg0K PiA+ID4gPiA+ID4gU2VudDogTW9uZGF5LCBKYW51YXJ5IDE2LCAyMDIzIDY6MzggUE0NCj4gPiA+ ID4gPiA+IFRvOiBkZXZlbEBlZGsyLmdyb3Vwcy5pbzsgWWFvLCBKaWV3ZW4gPGppZXdlbi55YW9A aW50ZWwuY29tPg0KPiA+ID4gPiA+ID4gQ2M6IFh1LCBNaW4gTSA8bWluLm0ueHVAaW50ZWwuY29t PjsgQWt0YXMsIEVyZGVtDQo+ID4gPiA+ID4gPiA8ZXJkZW1ha3Rhc0Bnb29nbGUuY29tPjsgSmFt ZXMgQm90dG9tbGV5DQo+IDxqZWpiQGxpbnV4LmlibS5jb20+Ow0KPiA+ID4gPiBHZXJkDQo+ID4g PiA+ID4gPiBIb2ZmbWFubiA8a3JheGVsQHJlZGhhdC5jb20+OyBUb20gTGVuZGFja3kNCj4gPiA+ ID4gPiA+IDx0aG9tYXMubGVuZGFja3lAYW1kLmNvbT47IE1pY2hhZWwgUm90aA0KPiA+IDxtaWNo YWVsLnJvdGhAYW1kLmNvbT4NCj4gPiA+ID4gPiA+IFN1YmplY3Q6IFJlOiBbZWRrMi1kZXZlbF0g W1BBVENIIFYxIDEvMV0gT3ZtZlBrZy9BY3BpUGxhdGZvcm1EeGU6DQo+ID4gPiA+ID4gPiBNZWFz dXJlIEFDUEkgdGFibGUgZnJvbSBRRU1VIGluIFREVkYNCj4gPiA+ID4gPiA+DQo+ID4gPiA+ID4g PiBBbm90aGVyIHF1ZXN0aW9uOiBob3cgZG9lcyB0aGlzIGRldmlhdGUgZnJvbSBvcmRpbmFyeSBt ZWFzdXJlZA0KPiBib290Pw0KPiA+ID4gPiA+ID4gSG93IGFuZCB3aGVuIGFyZSBBQ1BJIHRhYmxl cyBtZWFzdXJlZCBvbiBzdWNoIHN5c3RlbXM/DQo+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4NCj4g PiA+ID4gPiA+IE9uIE1vbiwgMTYgSmFuIDIwMjMgYXQgMDM6NDIsIFlhbywgSmlld2VuIDxqaWV3 ZW4ueWFvQGludGVsLmNvbT4NCj4gPiA+ID4gd3JvdGU6DQo+ID4gPiA+ID4gPiA+DQo+ID4gPiA+ ID4gPiA+IEhpDQo+ID4gPiA+ID4gPiA+IEkgaGF2ZSB0d28gZmVlZGJhY2s6DQo+ID4gPiA+ID4g PiA+DQo+ID4gPiA+ID4gPiA+IDEpIFdoYXQgd2UgbmVlZCBtZWFzdXJlIGlzIHRoZSBpbnB1dCBm cm9tIFZNTSAqYmVmb3JlKiBhbnkNCj4gPiA+ID4gPiA+IG1vZGlmaWNhdGlvbiBhbmQgKmJlZm9y ZSogaW5zdGFsbGF0aW9uLg0KPiA+ID4gPiA+ID4gPiBQbGVhc2UgZG9uJ3QgdXNlIEFDUEkgU0RU IHByb3RvY29sIHRvIGdldCB0aGUgdGFibGUgKmFmdGVyKg0KPiA+ID4gbW9kaWZpY2F0aW9uLg0K PiA+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gPiAyKSBXaHkgbm90IHVzZSBUcG1NZWFzdXJlQW5k TG9nRGF0YSgpIGluDQo+ID4gPiA+ID4gPg0KPiA+ID4gPg0KPiA+ID4NCj4gPg0KPiBodHRwczov L2dpdGh1Yi5jb20vdGlhbm9jb3JlL2VkazIvYmxvYi9tYXN0ZXIvTWRlTW9kdWxlUGtnL0luY2x1 ZGUvTGkNCj4gPiA+ID4gPiA+IGJyYXJ5L1RwbU1lYXN1cmVtZW50TGliLmggPw0KPiA+ID4gPiA+ ID4gPiBQbGVhc2UgZG9uJ3QgdXNlIGxvY2F0ZSBwcm90b2NvbC4NCj4gPiA+ID4gPiA+ID4NCj4g PiA+ID4gPiA+ID4gVGhhbmsgeW91DQo+ID4gPiA+ID4gPiA+IFlhbywgSmlld2VuDQo+ID4gPiA+ ID4gPiA+DQo+ID4gPiA+ID4gPiA+ID4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPiA+ ID4gPiA+ID4gPiBGcm9tOiBYdSwgTWluIE0gPG1pbi5tLnh1QGludGVsLmNvbT4NCj4gPiA+ID4g PiA+ID4gPiBTZW50OiBNb25kYXksIEphbnVhcnkgMTYsIDIwMjMgOTo1NyBBTQ0KPiA+ID4gPiA+ ID4gPiA+IFRvOiBkZXZlbEBlZGsyLmdyb3Vwcy5pbw0KPiA+ID4gPiA+ID4gPiA+IENjOiBYdSwg TWluIE0gPG1pbi5tLnh1QGludGVsLmNvbT47IEFrdGFzLCBFcmRlbQ0KPiA+ID4gPiA+ID4gPiA+ IDxlcmRlbWFrdGFzQGdvb2dsZS5jb20+OyBKYW1lcyBCb3R0b21sZXkNCj4gPiA+IDxqZWpiQGxp bnV4LmlibS5jb20+Ow0KPiA+ID4gPiA+ID4gWWFvLA0KPiA+ID4gPiA+ID4gPiA+IEppZXdlbiA8 amlld2VuLnlhb0BpbnRlbC5jb20+OyBHZXJkIEhvZmZtYW5uDQo+ID4gPiA+IDxrcmF4ZWxAcmVk aGF0LmNvbT47DQo+ID4gPiA+ID4gPiA+ID4gVG9tIExlbmRhY2t5IDx0aG9tYXMubGVuZGFja3lA YW1kLmNvbT47IE1pY2hhZWwgUm90aA0KPiA+ID4gPiA+ID4gPiA+IDxtaWNoYWVsLnJvdGhAYW1k LmNvbT4NCj4gPiA+ID4gPiA+ID4gPiBTdWJqZWN0OiBbUEFUQ0ggVjEgMS8xXSBPdm1mUGtnL0Fj cGlQbGF0Zm9ybUR4ZTogTWVhc3VyZQ0KPiA+ID4gPiA+ID4gPiA+IEFDUEkNCj4gPiA+ID4gdGFi bGUNCj4gPiA+ID4gPiA+IGZyb20NCj4gPiA+ID4gPiA+ID4gPiBRRU1VIGluIFREVkYNCj4gPiA+ ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gPiA+IEZyb206IE1pbiBNIFh1IDxtaW4ubS54dUBpbnRl bC5jb20+DQo+ID4gPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+ID4gPiBodHRwczovL2J1Z3ppbGxh LnRpYW5vY29yZS5vcmcvc2hvd19idWcuY2dpP2lkPTQyNDUNCj4gPiA+ID4gPiA+ID4gPg0KPiA+ ID4gPiA+ID4gPiA+IFRoZSBBQ1BJIHRhYmxlcyBhcmUgZG93bmxvYWRlZCBmcm9tIFFFTVUuIFFF TVUvVk1NIGlzDQo+ID4gPiB0cmVhdGVkDQo+ID4gPiA+IGFzDQo+ID4gPiA+ID4gPiA+ID4gdW4t dHJ1c3RlZCBpbiBhIHRkLWd1ZXN0LiBGcm9tIHRoZSBzZWN1cml0eSBwZXJzcGVjdGl2ZSB0aGV5 DQo+ID4gPiA+ID4gPiA+ID4gc2hvdWxkIGJlIG1lYXN1cmVkIGFuZCBleHRlbmRlZCBpZiBwb3Nz aWJsZS4gU28gdGhhdCB0aGV5DQo+ID4gPiA+ID4gPiA+ID4gY2FuIGJlIGF1ZGl0ZWQgbGF0ZXIu IFRoZSBtZWFzdXJlbWVudCBwcm90b2NvbCBtYXkgYmUgbm90DQo+ID4gPiA+ID4gPiA+ID4gaW5z dGFsbGVkLiBJbiB0aGlzIGNhc2UgaXQgc3RpbGwgcmV0dXJucyBFRklfU1VDQ0VTUy4NCj4gPiA+ ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gPiA+IENjOiBFcmRlbSBBa3RhcyA8ZXJkZW1ha3Rhc0Bn b29nbGUuY29tPg0KPiA+ID4gPiA+ID4gPiA+IENjOiBKYW1lcyBCb3R0b21sZXkgPGplamJAbGlu dXguaWJtLmNvbT4NCj4gPiA+ID4gPiA+ID4gPiBDYzogSmlld2VuIFlhbyA8amlld2VuLnlhb0Bp bnRlbC5jb20+DQo+ID4gPiA+ID4gPiA+ID4gQ2M6IEdlcmQgSG9mZm1hbm4gPGtyYXhlbEByZWRo YXQuY29tPg0KPiA+ID4gPiA+ID4gPiA+IENjOiBUb20gTGVuZGFja3kgPHRob21hcy5sZW5kYWNr eUBhbWQuY29tPg0KPiA+ID4gPiA+ID4gPiA+IENjOiBNaWNoYWVsIFJvdGggPG1pY2hhZWwucm90 aEBhbWQuY29tPg0KPiA+ID4gPiA+ID4gPiA+IFNpZ25lZC1vZmYtYnk6IE1pbiBYdSA8bWluLm0u eHVAaW50ZWwuY29tPg0KPiA+ID4gPiA+ID4gPiA+IC0tLQ0KPiA+ID4gPiA+ID4gPiA+ICBPdm1m UGtnL0FjcGlQbGF0Zm9ybUR4ZS9BY3BpUGxhdGZvcm1EeGUuaW5mIHwgICAyICsNCj4gPiA+ID4g PiA+ID4gPiAgT3ZtZlBrZy9BY3BpUGxhdGZvcm1EeGUvUWVtdUZ3Q2ZnQWNwaS5jICAgICB8IDE2 OA0KPiA+ID4gPiA+ID4gPiA+ICsrKysrKysrKysrKysrKysrKysrDQo+ID4gPiA+ID4gPiA+ID4g IDIgZmlsZXMgY2hhbmdlZCwgMTcwIGluc2VydGlvbnMoKykNCj4gPiA+ID4gPiA+ID4gPg0KPiA+ ID4gPiA+ID4gPiA+IGRpZmYgLS1naXQgYS9Pdm1mUGtnL0FjcGlQbGF0Zm9ybUR4ZS9BY3BpUGxh dGZvcm1EeGUuaW5mDQo+ID4gPiA+ID4gPiA+ID4gYi9Pdm1mUGtnL0FjcGlQbGF0Zm9ybUR4ZS9B Y3BpUGxhdGZvcm1EeGUuaW5mDQo+ID4gPiA+ID4gPiA+ID4gaW5kZXggODkzOWRkZTQyNTQ5Li5h ZTIyYmFiMzhjZjkgMTAwNjQ0DQo+ID4gPiA+ID4gPiA+ID4gLS0tIGEvT3ZtZlBrZy9BY3BpUGxh dGZvcm1EeGUvQWNwaVBsYXRmb3JtRHhlLmluZg0KPiA+ID4gPiA+ID4gPiA+ICsrKyBiL092bWZQ a2cvQWNwaVBsYXRmb3JtRHhlL0FjcGlQbGF0Zm9ybUR4ZS5pbmYNCj4gPiA+ID4gPiA+ID4gPiBA QCAtNTEsNiArNTEsOCBAQA0KPiA+ID4gPiA+ID4gPiA+ICAgIGdFZmlBY3BpVGFibGVQcm90b2Nv bEd1aWQgICAgICAgICAgICAgICAgICAgICAjIFBST1RPQ09MDQo+ID4gPiA+ID4gPiBBTFdBWVNf Q09OU1VNRUQNCj4gPiA+ID4gPiA+ID4gPiAgICBnRWZpUGNpSW9Qcm90b2NvbEd1aWQgICAgICAg ICAgICAgICAgICAgICAgICAgIyBQUk9UT0NPTA0KPiA+ID4gPiA+ID4gU09NRVRJTUVTX0NPTlNV TUVEDQo+ID4gPiA+ID4gPiA+ID4gICAgZ1FlbXVBY3BpVGFibGVOb3RpZnlQcm90b2NvbEd1aWQg ICAgICAgICAgICAgICMgUFJPVE9DT0wNCj4gPiA+IFBST0RVQ0VTDQo+ID4gPiA+ID4gPiA+ID4g KyAgZ0VmaUNjTWVhc3VyZW1lbnRQcm90b2NvbEd1aWQgICAgICAgICAgICAgICAgICMgUFJPVE9D T0wNCj4gPiA+ID4gPiA+ID4gPiBTT01FVElNRVNfQ09OU1VNRUQNCj4gPiA+ID4gPiA+ID4gPiAr ICBnRWZpQWNwaVNkdFByb3RvY29sR3VpZCAgICAgICAgICAgICAgICAgICAgICAgIyBQUk9UT0NP TA0KPiA+ID4gPiA+ID4gPiA+IFNPTUVUSU1FU19DT05TVU1FRA0KPiA+ID4gPiA+ID4gPiA+DQo+ ID4gPiA+ID4gPiA+ID4gIFtHdWlkc10NCj4gPiA+ID4gPiA+ID4gPiAgICBnUm9vdEJyaWRnZXND b25uZWN0ZWRFdmVudEdyb3VwR3VpZA0KPiA+ID4gPiA+ID4gPiA+IGRpZmYgLS1naXQgYS9Pdm1m UGtnL0FjcGlQbGF0Zm9ybUR4ZS9RZW11RndDZmdBY3BpLmMNCj4gPiA+ID4gPiA+ID4gPiBiL092 bWZQa2cvQWNwaVBsYXRmb3JtRHhlL1FlbXVGd0NmZ0FjcGkuYw0KPiA+ID4gPiA+ID4gPiA+IGlu ZGV4IGYwZDgxZDZmZDczZC4uZjQ0Mjg1MGMyZTAwIDEwMDY0NA0KPiA+ID4gPiA+ID4gPiA+IC0t LSBhL092bWZQa2cvQWNwaVBsYXRmb3JtRHhlL1FlbXVGd0NmZ0FjcGkuYw0KPiA+ID4gPiA+ID4g PiA+ICsrKyBiL092bWZQa2cvQWNwaVBsYXRmb3JtRHhlL1FlbXVGd0NmZ0FjcGkuYw0KPiA+ID4g PiA+ID4gPiA+IEBAIC0xOCw2ICsxOCw4IEBADQo+ID4gPiA+ID4gPiA+ID4gICNpbmNsdWRlIDxM aWJyYXJ5L1FlbXVGd0NmZ0xpYi5oPiAgICAgICAgICAgICAvLw0KPiBRZW11RndDZmdGaW5kRmls ZSgpDQo+ID4gPiA+ID4gPiA+ID4gICNpbmNsdWRlIDxMaWJyYXJ5L1FlbXVGd0NmZ1MzTGliLmg+ ICAgICAgICAgICAvLw0KPiA+ID4gPiBRZW11RndDZmdTM0VuYWJsZWQoKQ0KPiA+ID4gPiA+ID4g PiA+ICAjaW5jbHVkZSA8TGlicmFyeS9VZWZpQm9vdFNlcnZpY2VzVGFibGVMaWIuaD4gLy8gZ0JT DQo+ID4gPiA+ID4gPiA+ID4gKyNpbmNsdWRlIDxQcm90b2NvbC9BY3BpU3lzdGVtRGVzY3JpcHRp b25UYWJsZS5oPg0KPiA+ID4gPiA+ID4gPiA+ICsjaW5jbHVkZSA8UHJvdG9jb2wvQ2NNZWFzdXJl bWVudC5oPg0KPiA+ID4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiA+ID4gICNpbmNsdWRlICJBY3Bp UGxhdGZvcm0uaCINCj4gPiA+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gPiA+IEBAIC04MTIsMTIg KzgxNCwxNjggQEAgVW5kb0NtZFdyaXRlUG9pbnRlciAoDQo+ID4gPiA+ID4gPiA+ID4gICAgICAp KTsNCj4gPiA+ID4gPiA+ID4gPiAgfQ0KPiA+ID4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiA+ID4g Ky8qKg0KPiA+ID4gPiA+ID4gPiA+ICsgIE1lc3VyZSBmaXJtd2FyZSBBQ1BJIHRhYmxlIHdpdGgg Q2NNZWFzdXJlbWVudCBQcm90b2NvbA0KPiA+ID4gPiA+ID4gPiA+ICsNCj4gPiA+ID4gPiA+ID4g PiArICBAcGFyYW1baW5dIENjUHJvdG9jb2wgICBQb2ludGVyIHRvIHRoZSBDY01lYXN1cm1lbnQN Cj4gUHJvdG9jb2wNCj4gPiA+ID4gPiA+ID4gPiArICBAcGFyYW1baW5dIEV2ZW50RGF0YSAgICBQ b2ludGVyIHRvIHRoZSBldmVudCBkYXRhLg0KPiA+ID4gPiA+ID4gPiA+ICsgIEBwYXJhbVtpbl0g RXZlbnRTaXplICAgIFNpemUgb2YgZXZlbnQgZGF0YS4NCj4gPiA+ID4gPiA+ID4gPiArICBAcGFy YW1baW5dIENmZ0RhdGFCYXNlICBDb25maWd1cmF0aW9uIGRhdGEgYmFzZSBhZGRyZXNzLg0KPiA+ ID4gPiA+ID4gPiA+ICsgIEBwYXJhbVtpbl0gRXZlbnRTaXplICAgIFNpemUgb2YgY29uZmlndXJh dGlvbiBkYXRhIC4NCj4gPiA+ID4gPiA+ID4gPiArICBAcmV0dmFsICBFRklfTk9UX0ZPVU5EICAg ICAgICAgICBDYW5ub3QgbG9jYXRlIHByb3RvY29sLg0KPiA+ID4gPiA+ID4gPiA+ICsgIEByZXR2 YWwgIEVGSV9PVVRfT0ZfUkVTT1VSQ0VTICAgIEFsbG9jYXRlIHplcm8gcG9vbCBmYWlsdXJlLg0K PiA+ID4gPiA+ID4gPiA+ICsgIEByZXR1cm4gICAgICAgICAgICAgICAgICAgICAgICAgIFN0YXR1 cyBjb2RlcyByZXR1cm5lZCBieQ0KPiA+ID4gPiA+ID4gPiA+ICsgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIG1UY2cyUHJvdG9jb2wtPkhhc2hMb2dFeHRlbmRFdmVudC4NCj4gPiA+ ID4gPiA+ID4gPiArKiovDQo+ID4gPiA+ID4gPiA+ID4gK1NUQVRJQw0KPiA+ID4gPiA+ID4gPiA+ ICtFRklfU1RBVFVTDQo+ID4gPiA+ID4gPiA+ID4gK0VGSUFQSQ0KPiA+ID4gPiA+ID4gPiA+ICtD Y01lYXN1cmVBY3BpVGFibGUgKA0KPiA+ID4gPiA+ID4gPiA+ICsgIElOIEVGSV9DQ19NRUFTVVJF TUVOVF9QUk9UT0NPTCAgKkNjUHJvdG9jb2wsDQo+ID4gPiA+ID4gPiA+ID4gKyAgSU4gQ0hBUjgg ICAgICAgICAgICAgICAgICAgICAgICAqRXZlbnREYXRhLA0KPiA+ID4gPiA+ID4gPiA+ICsgIElO IFVJTlQzMiAgICAgICAgICAgICAgICAgICAgICAgRXZlbnRTaXplLA0KPiA+ID4gPiA+ID4gPiA+ ICsgIElOIEVGSV9QSFlTSUNBTF9BRERSRVNTICAgICAgICAgQ2ZnRGF0YUJhc2UsDQo+ID4gPiA+ ID4gPiA+ID4gKyAgSU4gVUlOVE4gICAgICAgICAgICAgICAgICAgICAgICBDZmdEYXRhTGVuZ3Ro DQo+ID4gPiA+ID4gPiA+ID4gKyAgKQ0KPiA+ID4gPiA+ID4gPiA+ICt7DQo+ID4gPiA+ID4gPiA+ ID4gKyAgRUZJX1NUQVRVUyAgICBTdGF0dXM7DQo+ID4gPiA+ID4gPiA+ID4gKyAgRUZJX0NDX0VW RU5UICAqQ2NFdmVudDsNCj4gPiA+ID4gPiA+ID4gPiArICBVSU5UMzIgICAgICAgIE1ySW5kZXg7 DQo+ID4gPiA+ID4gPiA+ID4gKw0KPiA+ID4gPiA+ID4gPiA+ICsgIGlmIChDY1Byb3RvY29sID09 IE5VTEwpIHsNCj4gPiA+ID4gPiA+ID4gPiArICAgIHJldHVybiBFRklfSU5WQUxJRF9QQVJBTUVU RVI7ICB9DQo+ID4gPiA+ID4gPiA+ID4gKw0KPiA+ID4gPiA+ID4gPiA+ICsgIFN0YXR1cyA9IENj UHJvdG9jb2wtPk1hcFBjclRvTXJJbmRleCAoQ2NQcm90b2NvbCwgMSwNCj4gPiA+ICZNckluZGV4 KTsNCj4gPiA+ID4gPiA+ID4gPiArICBpZiAoRUZJX0VSUk9SIChTdGF0dXMpKSB7DQo+ID4gPiA+ ID4gPiA+ID4gKyAgICByZXR1cm4gRUZJX0lOVkFMSURfUEFSQU1FVEVSOyAgfQ0KPiA+ID4gPiA+ ID4gPiA+ICsNCj4gPiA+ID4gPiA+ID4gPiArICBDY0V2ZW50ID0gQWxsb2NhdGVaZXJvUG9vbCAo RXZlbnRTaXplICsgc2l6ZW9mDQo+ID4gPiA+ID4gPiA+ID4gKyAoRUZJX0NDX0VWRU5UKSAtDQo+ ID4gPiA+IHNpemVvZg0KPiA+ID4gPiA+ID4gPiA+IChDY0V2ZW50LT5FdmVudCkpOw0KPiA+ID4g PiA+ID4gPiA+ICsgIGlmIChDY0V2ZW50ID09IE5VTEwpIHsNCj4gPiA+ID4gPiA+ID4gPiArICAg IHJldHVybiBFRklfT1VUX09GX1JFU09VUkNFUzsgIH0NCj4gPiA+ID4gPiA+ID4gPiArDQo+ID4g PiA+ID4gPiA+ID4gKyAgQ2NFdmVudC0+U2l6ZSAgICAgICAgICAgICAgICAgPSBFdmVudFNpemUg KyBzaXplb2YgKEVGSV9DQ19FVkVOVCkgLQ0KPiA+ID4gc2l6ZW9mDQo+ID4gPiA+ID4gPiA+ID4g KENjRXZlbnQtPkV2ZW50KTsNCj4gPiA+ID4gPiA+ID4gPiArICBDY0V2ZW50LT5IZWFkZXIuRXZl bnRUeXBlICAgICA9DQo+IEVWX1BMQVRGT1JNX0NPTkZJR19GTEFHUzsNCj4gPiA+ID4gPiA+ID4g PiArICBDY0V2ZW50LT5IZWFkZXIuTXJJbmRleCAgICAgICA9IE1ySW5kZXg7DQo+ID4gPiA+ID4g PiA+ID4gKyAgQ2NFdmVudC0+SGVhZGVyLkhlYWRlclNpemUgICAgPSBzaXplb2YNCj4gKEVGSV9D Q19FVkVOVF9IRUFERVIpOw0KPiA+ID4gPiA+ID4gPiA+ICsgIENjRXZlbnQtPkhlYWRlci5IZWFk ZXJWZXJzaW9uID0NCj4gPiA+ID4gRUZJX0NDX0VWRU5UX0hFQURFUl9WRVJTSU9OOw0KPiA+ID4g PiA+ID4gPiA+ICsgIENvcHlNZW0gKCZDY0V2ZW50LT5FdmVudFswXSwgRXZlbnREYXRhLCBFdmVu dFNpemUpOw0KPiA+ID4gPiA+ID4gPiA+ICsNCj4gPiA+ID4gPiA+ID4gPiArICBTdGF0dXMgPSBD Y1Byb3RvY29sLT5IYXNoTG9nRXh0ZW5kRXZlbnQgKA0KPiA+ID4gPiA+ID4gPiA+ICsgICAgICAg ICAgICAgICAgICAgICAgICAgQ2NQcm90b2NvbCwNCj4gPiA+ID4gPiA+ID4gPiArICAgICAgICAg ICAgICAgICAgICAgICAgIDAsDQo+ID4gPiA+ID4gPiA+ID4gKyAgICAgICAgICAgICAgICAgICAg ICAgICBDZmdEYXRhQmFzZSwNCj4gPiA+ID4gPiA+ID4gPiArICAgICAgICAgICAgICAgICAgICAg ICAgIENmZ0RhdGFMZW5ndGgsDQo+ID4gPiA+ID4gPiA+ID4gKyAgICAgICAgICAgICAgICAgICAg ICAgICBDY0V2ZW50DQo+ID4gPiA+ID4gPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAp Ow0KPiA+ID4gPiA+ID4gPiA+ICsNCj4gPiA+ID4gPiA+ID4gPiArICBGcmVlUG9vbCAoQ2NFdmVu dCk7DQo+ID4gPiA+ID4gPiA+ID4gKw0KPiA+ID4gPiA+ID4gPiA+ICsgIHJldHVybiBTdGF0dXM7 DQo+ID4gPiA+ID4gPiA+ID4gK30NCj4gPiA+ID4gPiA+ID4gPiArDQo+ID4gPiA+ID4gPiA+ID4g IC8vDQo+ID4gPiA+ID4gPiA+ID4gIC8vIFdlJ2xsIGJlIHNhdmluZyB0aGUga2V5cyBvZiBpbnN0 YWxsZWQgdGFibGVzIHNvIHRoYXQgd2UNCj4gPiA+ID4gPiA+ID4gPiBjYW4gcm9sbA0KPiA+ID4g dGhlbQ0KPiA+ID4gPiA+ID4gYmFjaw0KPiA+ID4gPiA+ID4gPiA+ICAvLyBpbiBjYXNlIG9mIGZh aWx1cmUuIDEyOCB0YWJsZXMgc2hvdWxkIGJlIGVub3VnaCBmb3IgYW55b25lDQo+IChUTSkuDQo+ ID4gPiA+ID4gPiA+ID4gIC8vDQo+ID4gPiA+ID4gPiA+ID4gICNkZWZpbmUgSU5TVEFMTEVEX1RB QkxFU19NQVggIDEyOA0KPiA+ID4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiA+ID4gKy8qKg0KPiA+ ID4gPiA+ID4gPiA+ICsgKiBUaGUgQUNQSSB0YWJsZXMgYXJlIGRvd25sb2FkZWQgZnJvbSBRRU1V LiBGcm9tIHRoZQ0KPiA+ID4gPiA+ID4gPiA+ICtzZWN1cml0eQ0KPiA+ID4gPiA+ID4gPiA+IHBl cnNwZWN0aXZlIHRoZXNlIGFyZQ0KPiA+ID4gPiA+ID4gPiA+ICsgKiBleHRlcm5hbCBpbnB1dHMg YW5kIHNob3VsZCBiZSBtZWFzdXJlZCBhbmQgZXh0ZW5kZWQgaWYNCj4gPiA+IHBvc3NpYmxlLg0K PiA+ID4gPiBTbw0KPiA+ID4gPiA+ID4gdGhhdA0KPiA+ID4gPiA+ID4gPiA+IHRoZXkgY2FuDQo+ ID4gPiA+ID4gPiA+ID4gKyAqIGJlIGF1ZGl0ZWQgbGF0ZXIuIFRoZSBtZWFzdXJlbWVudCBwcm90 b2NvbCBtYXkgYmUgbm90DQo+ID4gPiBpbnN0YWxsZWQuDQo+ID4gPiA+IEluDQo+ID4gPiA+ID4g PiB0aGlzDQo+ID4gPiA+ID4gPiA+ID4gY2FzZSBpdA0KPiA+ID4gPiA+ID4gPiA+ICsgKiBzdGls bCByZXR1cm5zIEVGSV9TVUNDRVNTLg0KPiA+ID4gPiA+ID4gPiA+ICsgKg0KPiA+ID4gPiA+ID4g PiA+ICsgKiBAcGFyYW0gSW5zdGFsbGVkS2V5IFBvaW50ZXIgdG8gYW4gYXJyYXkgd2hpY2ggY29u dGFpbnMNCj4gPiA+ID4gPiA+ID4gPiArIHRoZSBrZXlzDQo+ID4gPiA+IG9mDQo+ID4gPiA+ID4g PiB0aGUNCj4gPiA+ID4gPiA+ID4gPiBpbnN0YWxsZWQgQUNQSSB0YWJsZXMNCj4gPiA+ID4gPiA+ ID4gPiArICogQHBhcmFtIExlbmd0aCAgICAgICBMZW5ndGggb2YgdGhlIGFycmF5DQo+ID4gPiA+ ID4gPiA+ID4gKyAqIEByZXR2YWwgRUZJX1NVQ0NFU1MgU3VjY2Vzc2Z1bGx5IG1lYXN1cmUgdGhl IEFDUEkgdGFibGVzDQo+ID4gPiA+ID4gPiA+ID4gKyAqIEByZXR2YWwgT3RoZXJzICAgICAgT3Ro ZXIgZXJyb3JzIGFzIGluZGljYXRlZA0KPiA+ID4gPiA+ID4gPiA+ICsgKi8NCj4gPiA+ID4gPiA+ ID4gPiArU1RBVElDDQo+ID4gPiA+ID4gPiA+ID4gK0VGSV9TVEFUVVMNCj4gPiA+ID4gPiA+ID4g PiArTWVhc3VyZUluc3RhbGxlZFRhYmxlc0Zyb21RZW11ICgNCj4gPiA+ID4gPiA+ID4gPiArICBJ TiBVSU5UTiAgKkluc3RhbGxlZEtleSwNCj4gPiA+ID4gPiA+ID4gPiArICBJTiBJTlQzMiAgTGVu Z3RoDQo+ID4gPiA+ID4gPiA+ID4gKyAgKQ0KPiA+ID4gPiA+ID4gPiA+ICt7DQo+ID4gPiA+ID4g PiA+ID4gKyAgRUZJX1NUQVRVUyAgICAgICAgICAgICAgICAgICBTdGF0dXM7DQo+ID4gPiA+ID4g PiA+ID4gKyAgVUlOVE4gICAgICAgICAgICAgICAgICAgICAgICBJbmRleDE7DQo+ID4gPiA+ID4g PiA+ID4gKyAgSU5UMzIgICAgICAgICAgICAgICAgICAgICAgICBJbmRleDI7DQo+ID4gPiA+ID4g PiA+ID4gKyAgRUZJX0FDUElfU0RUX0hFQURFUiAgICAgICAgICAqVGFibGU7DQo+ID4gPiA+ID4g PiA+ID4gKyAgRUZJX0FDUElfVEFCTEVfVkVSU0lPTiAgICAgICBWZXJzaW9uOw0KPiA+ID4gPiA+ ID4gPiA+ICsgIFVJTlROICAgICAgICAgICAgICAgICAgICAgICAgVGFibGVLZXk7DQo+ID4gPiA+ ID4gPiA+ID4gKyAgRUZJX0FDUElfU0RUX1BST1RPQ09MICAgICAgICAqQWNwaVNkdFByb3RvY29s Ow0KPiA+ID4gPiA+ID4gPiA+ICsgIEVGSV9DQ19NRUFTVVJFTUVOVF9QUk9UT0NPTCAgKkNjUHJv dG9jb2wgPSBOVUxMOw0KPiA+ID4gPiA+ID4gPiA+ICsNCj4gPiA+ID4gPiA+ID4gPiArICBTdGF0 dXMgPSBnQlMtPkxvY2F0ZVByb3RvY29sDQo+ID4gPiA+ID4gPiA+ID4gKyAoJmdFZmlDY01lYXN1 cmVtZW50UHJvdG9jb2xHdWlkLA0KPiA+ID4gPiBOVUxMLA0KPiA+ID4gPiA+ID4gPiA+IChWT0lE ICoqKSZDY1Byb3RvY29sKTsNCj4gPiA+ID4gPiA+ID4gPiArICBpZiAoRUZJX0VSUk9SIChTdGF0 dXMpKSB7DQo+ID4gPiA+ID4gPiA+ID4gKyAgICAvLw0KPiA+ID4gPiA+ID4gPiA+ICsgICAgLy8g Q2NNZWFzdXJlbWVudCBwcm90b2NvbCBpcyBub3QgaW5zdGFsbGVkLg0KPiA+ID4gPiA+ID4gPiA+ ICsgICAgLy8NCj4gPiA+ID4gPiA+ID4gPiArICAgIHJldHVybiBFRklfU1VDQ0VTUzsNCj4gPiA+ ID4gPiA+ID4gPiArICB9DQo+ID4gPiA+ID4gPiA+ID4gKw0KPiA+ID4gPiA+ID4gPiA+ICsgIFN0 YXR1cyA9IGdCUy0+TG9jYXRlUHJvdG9jb2wgKCZnRWZpQWNwaVNkdFByb3RvY29sR3VpZCwNCj4g PiA+ID4gPiA+ID4gPiArIE5VTEwsDQo+ID4gPiA+ICh2b2lkDQo+ID4gPiA+ID4gPiA+ID4gKiop JkFjcGlTZHRQcm90b2NvbCk7DQo+ID4gPiA+ID4gPiA+ID4gKyAgaWYgKEVGSV9FUlJPUiAoU3Rh dHVzKSkgew0KPiA+ID4gPiA+ID4gPiA+ICsgICAgREVCVUcgKChERUJVR19FUlJPUiwgIlVuYWJs ZSB0byBsb2NhdGUgQUNQSSBTRFQNCj4gPiA+IHByb3RvY29sLlxuIikpOw0KPiA+ID4gPiA+ID4g PiA+ICsgICAgcmV0dXJuIFN0YXR1czsNCj4gPiA+ID4gPiA+ID4gPiArICB9DQo+ID4gPiA+ID4g PiA+ID4gKw0KPiA+ID4gPiA+ID4gPiA+ICsgIEluZGV4MSA9IDA7DQo+ID4gPiA+ID4gPiA+ID4g KyAgZG8gew0KPiA+ID4gPiA+ID4gPiA+ICsgICAgU3RhdHVzID0gQWNwaVNkdFByb3RvY29sLT5H ZXRBY3BpVGFibGUgKEluZGV4MSwgJlRhYmxlLA0KPiA+ID4gJlZlcnNpb24sDQo+ID4gPiA+ID4g PiA+ID4gJlRhYmxlS2V5KTsNCj4gPiA+ID4gPiA+ID4gPiArICAgIGlmIChFRklfRVJST1IgKFN0 YXR1cykpIHsNCj4gPiA+ID4gPiA+ID4gPiArICAgICAgaWYgKFN0YXR1cyA9PSBFRklfTk9UX0ZP VU5EKSB7DQo+ID4gPiA+ID4gPiA+ID4gKyAgICAgICAgLy8NCj4gPiA+ID4gPiA+ID4gPiArICAg ICAgICAvLyBUaGVyZSBpcyBubyBtb3JlIEFDUEkgdGFibGVzIGZvdW5kLiBTbyB3ZSByZXR1cm4N Cj4gPiA+ID4gPiA+ID4gPiArIHdpdGgNCj4gPiA+ID4gPiA+IEVGSV9TVUNDRVNTLg0KPiA+ID4g PiA+ID4gPiA+ICsgICAgICAgIC8vDQo+ID4gPiA+ID4gPiA+ID4gKyAgICAgICAgU3RhdHVzID0g RUZJX1NVQ0NFU1M7DQo+ID4gPiA+ID4gPiA+ID4gKyAgICAgIH0NCj4gPiA+ID4gPiA+ID4gPiAr DQo+ID4gPiA+ID4gPiA+ID4gKyAgICAgIGJyZWFrOw0KPiA+ID4gPiA+ID4gPiA+ICsgICAgfQ0K PiA+ID4gPiA+ID4gPiA+ICsNCj4gPiA+ID4gPiA+ID4gPiArICAgIGZvciAoSW5kZXgyID0gMDsg SW5kZXgyIDwgTGVuZ3RoOyBJbmRleDIrKykgew0KPiA+ID4gPiA+ID4gPiA+ICsgICAgICBpZiAo VGFibGVLZXkgPT0gSW5zdGFsbGVkS2V5W0luZGV4Ml0pIHsNCj4gPiA+ID4gPiA+ID4gPiArICAg ICAgICBicmVhazsNCj4gPiA+ID4gPiA+ID4gPiArICAgICAgfQ0KPiA+ID4gPiA+ID4gPiA+ICsg ICAgfQ0KPiA+ID4gPiA+ID4gPiA+ICsNCj4gPiA+ID4gPiA+ID4gPiArICAgIGlmIChJbmRleDIg PCBMZW5ndGgpIHsNCj4gPiA+ID4gPiA+ID4gPiArICAgICAgU3RhdHVzID0gQ2NNZWFzdXJlQWNw aVRhYmxlICgNCj4gPiA+ID4gPiA+ID4gPiArICAgICAgICAgICAgICAgICBDY1Byb3RvY29sLA0K PiA+ID4gPiA+ID4gPiA+ICsgICAgICAgICAgICAgICAgIChDSEFSOCAqKSZUYWJsZS0+U2lnbmF0 dXJlLA0KPiA+ID4gPiA+ID4gPiA+ICsgICAgICAgICAgICAgICAgIHNpemVvZiAoVGFibGUtPlNp Z25hdHVyZSksDQo+ID4gPiA+ID4gPiA+ID4gKyAgICAgICAgICAgICAgICAgKEVGSV9QSFlTSUNB TF9BRERSRVNTKShVSU5UTilUYWJsZSwNCj4gPiA+ID4gPiA+ID4gPiArICAgICAgICAgICAgICAg ICBUYWJsZS0+TGVuZ3RoDQo+ID4gPiA+ID4gPiA+ID4gKyAgICAgICAgICAgICAgICAgKTsNCj4g PiA+ID4gPiA+ID4gPiArICAgICAgaWYgKEVGSV9FUlJPUiAoU3RhdHVzKSkgew0KPiA+ID4gPiA+ ID4gPiA+ICsgICAgICAgIERFQlVHICgoDQo+ID4gPiA+ID4gPiA+ID4gKyAgICAgICAgICBERUJV R19FUlJPUiwNCj4gPiA+ID4gPiA+ID4gPiArICAgICAgICAgICJNZWFzdXJlIEFDUEkgdGFibGUg WyUtNC40YV0gd2l0aCBTaXplID0gMHgleA0KPiA+ID4gPiA+ID4gPiA+ICsgZmFpbGVkISBTdGF0 dXMNCj4gPiA+ID4gPiA+ID0gJXJcbiIsDQo+ID4gPiA+ID4gPiA+ID4gKyAgICAgICAgICAoQ09O U1QgQ0hBUjggKikmVGFibGUtPlNpZ25hdHVyZSwNCj4gPiA+ID4gPiA+ID4gPiArICAgICAgICAg IFRhYmxlLT5MZW5ndGgsDQo+ID4gPiA+ID4gPiA+ID4gKyAgICAgICAgICBTdGF0dXMNCj4gPiA+ ID4gPiA+ID4gPiArICAgICAgICAgICkpOw0KPiA+ID4gPiA+ID4gPiA+ICsgICAgICAgIGJyZWFr Ow0KPiA+ID4gPiA+ID4gPiA+ICsgICAgICB9IGVsc2Ugew0KPiA+ID4gPiA+ID4gPiA+ICsgICAg ICAgIERFQlVHICgoDQo+ID4gPiA+ID4gPiA+ID4gKyAgICAgICAgICBERUJVR19JTkZPLA0KPiA+ ID4gPiA+ID4gPiA+ICsgICAgICAgICAgIk1lYXN1cmUgQUNQSSB0YWJsZSBbJS00LjRhXSB3aXRo IFNpemUgPSAweCV4XG4iLA0KPiA+ID4gPiA+ID4gPiA+ICsgICAgICAgICAgKENPTlNUIENIQVI4 ICopJlRhYmxlLT5TaWduYXR1cmUsDQo+ID4gPiA+ID4gPiA+ID4gKyAgICAgICAgICBUYWJsZS0+ TGVuZ3RoDQo+ID4gPiA+ID4gPiA+ID4gKyAgICAgICAgICApKTsNCj4gPiA+ID4gPiA+ID4gPiAr ICAgICAgfQ0KPiA+ID4gPiA+ID4gPiA+ICsgICAgfQ0KPiA+ID4gPiA+ID4gPiA+ICsNCj4gPiA+ ID4gPiA+ID4gPiArICAgIEluZGV4MSsrOw0KPiA+ID4gPiA+ID4gPiA+ICsgIH0gd2hpbGUgKFRS VUUpOw0KPiA+ID4gPiA+ID4gPiA+ICsNCj4gPiA+ID4gPiA+ID4gPiArICByZXR1cm4gU3RhdHVz Ow0KPiA+ID4gPiA+ID4gPiA+ICt9DQo+ID4gPiA+ID4gPiA+ID4gKw0KPiA+ID4gPiA+ID4gPiA+ ICAvKioNCj4gPiA+ID4gPiA+ID4gPiAgICBQcm9jZXNzIGEgUUVNVV9MT0FERVJfQUREX1BPSU5U RVIgY29tbWFuZCBpbiBvcmRlciB0bw0KPiA+ID4gc2VlDQo+ID4gPiA+IGlmIGl0cw0KPiA+ID4g PiA+ID4gPiA+IHRhcmdldCBieXRlDQo+ID4gPiA+ID4gPiA+ID4gICAgYXJyYXkgaXMgYW4gQUNQ SSB0YWJsZSwgYW5kIGlmIHNvLCBpbnN0YWxsIGl0Lg0KPiA+ID4gPiA+ID4gPiA+IEBAIC0xMjQ3 LDYgKzE0MDUsMTYgQEAgSW5zdGFsbFFlbXVGd0NmZ1RhYmxlcyAoDQo+ID4gPiA+ID4gPiA+ID4g ICAgICB9DQo+ID4gPiA+ID4gPiA+ID4gICAgfQ0KPiA+ID4gPiA+ID4gPiA+DQo+ID4gPiA+ID4g PiA+ID4gKyAgLy8NCj4gPiA+ID4gPiA+ID4gPiArICAvLyBNZWFzdXJlIHRoZSBBQ1BJIHRhYmxl cyB3aGljaCBhcmUgZG93bmxvYWRlZCBmcm9tDQo+IFFFTVUNCj4gPiA+ID4gPiA+ID4gPiArIC8v ICBpZiAoSW5zdGFsbGVkID4gMCkgew0KPiA+ID4gPiA+ID4gPiA+ICsgICAgU3RhdHVzID0gTWVh c3VyZUluc3RhbGxlZFRhYmxlc0Zyb21RZW11IChJbnN0YWxsZWRLZXksDQo+ID4gPiA+IEluc3Rh bGxlZCk7DQo+ID4gPiA+ID4gPiA+ID4gKyAgICBpZiAoRUZJX0VSUk9SIChTdGF0dXMpKSB7DQo+ ID4gPiA+ID4gPiA+ID4gKyAgICAgIGdvdG8gVW5pbnN0YWxsQWNwaVRhYmxlczsNCj4gPiA+ID4g PiA+ID4gPiArICAgIH0NCj4gPiA+ID4gPiA+ID4gPiArICB9DQo+ID4gPiA+ID4gPiA+ID4gKw0K PiA+ID4gPiA+ID4gPiA+ICAgIC8vDQo+ID4gPiA+ID4gPiA+ID4gICAgLy8gSW5zdGFsbCBhIHBy b3RvY29sIHRvIG5vdGlmeSB0aGF0IHRoZSBBQ1BJIHRhYmxlDQo+ID4gPiA+ID4gPiA+ID4gcHJv dmlkZWQgYnkgUWVtdQ0KPiA+ID4gPiBpcw0KPiA+ID4gPiA+ID4gPiA+ICAgIC8vIHJlYWR5Lg0K PiA+ID4gPiA+ID4gPiA+IC0tDQo+ID4gPiA+ID4gPiA+ID4gMi4yOS4yLndpbmRvd3MuMg0KPiA+ ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gPg0K PiA+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gPg0KPiA+ID4gPiA+DQo+ID4gPiA+ID4NCj4gPiA+ ID4gPg0KPiA+ID4gPiA+DQo+ID4gPiA+ID4NCj4gPiA+ID4NCj4gPiA+ID4NCj4gPiA+ID4NCj4g PiA+ID4NCj4gPiA+DQo+ID4gPg0KPiA+ID4NCj4gPiA+IA0KPiA+ID4NCg0K