From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by mx.groups.io with SMTP id smtpd.web11.7009.1637805951355458897 for ; Wed, 24 Nov 2021 18:05:51 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=zDravWpF; spf=pass (domain: intel.com, ip: 134.134.136.20, mailfrom: michael.d.kinney@intel.com) X-IronPort-AV: E=McAfee;i="6200,9189,10178"; a="222645817" X-IronPort-AV: E=Sophos;i="5.87,261,1631602800"; d="scan'208";a="222645817" Received: from orsmga003.jf.intel.com ([10.7.209.27]) by orsmga101.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 24 Nov 2021 18:05:50 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.87,261,1631602800"; d="scan'208";a="457231288" Received: from fmsmsx603.amr.corp.intel.com ([10.18.126.83]) by orsmga003.jf.intel.com with ESMTP; 24 Nov 2021 18:05:50 -0800 Received: from fmsmsx601.amr.corp.intel.com (10.18.126.81) by fmsmsx603.amr.corp.intel.com (10.18.126.83) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.12; Wed, 24 Nov 2021 18:05:49 -0800 Received: from FMSEDG603.ED.cps.intel.com (10.1.192.133) by fmsmsx601.amr.corp.intel.com (10.18.126.81) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.12 via Frontend Transport; Wed, 24 Nov 2021 18:05:49 -0800 Received: from NAM02-SN1-obe.outbound.protection.outlook.com (104.47.57.41) by edgegateway.intel.com (192.55.55.68) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2242.12; Wed, 24 Nov 2021 18:05:49 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ETOXS02MhOduCqhQBS/xYTTOmlrf6HemP7kiUh4WrUi/7dAtBeqr/pwblDOESDmEqEf+SM4hgUjMGX9hNoBYWvN6pEew712pJMrgE3opu0jI1Hesy72u0+RCRM8p4YlEOXOMVj2hB5nOT70UssHzWtBI3bI5z/RYSoUj75F9x+ZGu/MfakhlBsRuQnUeaTLAXOLXSEVHG6vXYiEXT1bBLadLLdt/WJ+zGuhSD4on5y626Mh4hXz3QGyI3aHNr5lx47akEITRxS0OP6t0qqNQ/+EFqZNzK1VIGe2aGyUJ/H8q2w3X+ymMXY0KDYK0bNTWqm0RsZR2ZjxmB+2lOlFN3g== 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=nHY1eJ5cM3vKcd0CfvkV4ehrmc8yKeyP0Z7eLpBLUzY=; b=WpjFsDr2YXKn2wc436E/PXsE77Jb1mMAu8Mm99aSYIr0vgqHOGm/TwJoINnZEjrTq0DN+OftOb0PSlDC2OhEgIVjoSmFH+/xGj2vyKj/g7wVy18HPgBm3dNLsCw1AJdjOzdbFzQ99LPYG/npNHKv16/ePyohylBf6o1u3ihP+FxVpyjg4xVwJXN6QhYj0EgOZiyRBB+IJdzONLBZ1dzURGART5ie+WGhAwCsbKdtZ/kD6rzjX/NmUd71wmPTWKJ/wofhf/U7JeMnDy9A5iKHivf9mtRbNrdvoIfIBfsGgmpqw64c9FDM79t0spS8YBhpneKizrawNxt9GYaYwtcQEQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel.onmicrosoft.com; s=selector2-intel-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=nHY1eJ5cM3vKcd0CfvkV4ehrmc8yKeyP0Z7eLpBLUzY=; b=zDravWpFMCTx1BiJjOgopnu72EEPQ0pPoaJjyFvtyLu0iXl4sorG3I7or1iO9qt/3smm5M1nyHQvrXMSytJ1mcFlvcusa5s+um8FdaK804ux/wUD15z4p+v10ze74AglOJ39V32gZbj1f1Tuv28VXyLkBTugnRkl+fcSz5bJKRg= Received: from CO1PR11MB4929.namprd11.prod.outlook.com (2603:10b6:303:6d::19) by CO1PR11MB5188.namprd11.prod.outlook.com (2603:10b6:303:95::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4713.21; Thu, 25 Nov 2021 02:05:46 +0000 Received: from CO1PR11MB4929.namprd11.prod.outlook.com ([fe80::68cc:6227:db69:d81a]) by CO1PR11MB4929.namprd11.prod.outlook.com ([fe80::68cc:6227:db69:d81a%6]) with mapi id 15.20.4713.025; Thu, 25 Nov 2021 02:05:46 +0000 From: "Michael D Kinney" To: "devel@edk2.groups.io" , "mikuback@linux.microsoft.com" , "Kinney, Michael D" CC: Liming Gao , Sean Brogan , Bret Barkelew Subject: Re: [edk2-devel] [PATCH v4 1/1] .pytool/Plugin/UncrustifyCheck: Add Uncrustify CI plugin Thread-Topic: [edk2-devel] [PATCH v4 1/1] .pytool/Plugin/UncrustifyCheck: Add Uncrustify CI plugin Thread-Index: AQHX4XwmMYDqp0mP/kqm0Cd+X+x24qwTRrIggAAC8oCAAALaYIAAD06QgAAECxCAABP0UIAACvvg Date: Thu, 25 Nov 2021 02:05:46 +0000 Message-ID: References: <20211124214131.2705-1-mikuback@linux.microsoft.com> <87b4f4bb-8d19-abdc-85f9-6b7bffa1b12e@linux.microsoft.com> <16BAA253C971EED8.15594@groups.io> <8dbc6f60-dcb7-6a1f-c19e-3eb696c1afa3@linux.microsoft.com> In-Reply-To: <8dbc6f60-dcb7-6a1f-c19e-3eb696c1afa3@linux.microsoft.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-reaction: no-action dlp-version: 11.6.200.16 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: 4941d5f9-e572-485d-7329-08d9afb8185f x-ms-traffictypediagnostic: CO1PR11MB5188: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:10000; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: +nJMgw6YUHqAfJphjFwt/PV+nR4o86SzF5L97HV6ikbGqiLKPpQqIHcVEbKorRyuIDyhfpOKouRSqB10eNOX6h0zj9QxnO90C9g0By9pWzM0hXtadxuVu7Y634O9R+aSdKzHjV6+N5E6S5TSNQzc9bhffPo1CJEC93Y28d+IXCSdvpQCSEWQsSHq5bIh6lezcoSFTKaTGaUnf2aifBDkYNch1tnjSqqtAQio2u4adorrpV1fOghkh7+OKM5a2Wq8eCi2j3TXYUp6QKChAXmMhxnbWQh2MQqqqGSstihF2YCtodbtUcAT+1bPLL4kejpb+udW6PXhvjQo5fYJ7o6F4FV36p7+8H9suQ97Vp9u0cq7PtCTAPS5SJXFWHCxcjuozGfyC7A3g0UFABGB7Sh9w4/njMGQZ2sAMhe8/747vqY1lihAG4BMtcCzXQW0g7RWUm6lyY2ZOWdEiriKKPUQSWl/gptwsaux7W5JulJiD7fRgekX41SN/siqiBTLeFzCB+5g8GGb+9fPmYs4H3XdFdWyHnqJSNICd7QFeJyFixSg/iKxrCrzYjP9u1EsnLMNoLNpFxvwZztWCi2Xez7Z0harV5PNyZLMbNysgH4WaHxPCKHIbHqZmbz0zdrrGgTAtReR0mHVD67tLIKVNGkdgGBiVYN/dPnfx19Dd7EOhfQlOXORvl2heO0IROntsK7oY4FBZgjP68nIT8eHnVyyRiMHKu8Y4+U8023hgvR7UMCnVsQTqFfT92jszloJG+OQPjihIkZcnX+UKVK5DSEDgTvnWhf2uOGg0YWDzqwfStPfgTWcAeZJBg3JUuhUNkEb73R94cnUHRFsar5H5BIDCw== 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:(366004)(122000001)(186003)(83380400001)(7696005)(54906003)(9686003)(66946007)(8936002)(55016003)(5660300002)(66476007)(26005)(8676002)(53546011)(6506007)(316002)(66556008)(110136005)(33656002)(66446008)(30864003)(38070700005)(76116006)(52536014)(38100700002)(19627235002)(508600001)(2906002)(86362001)(45080400002)(4326008)(64756008)(71200400001)(82960400001)(966005)(559001)(579004);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?WnVGaEkrdWZKN0J0Ui90RmxkK1crVXBtNU11cVBqeDc0NjhodDBwaWtkbG9T?= =?utf-8?B?OVk3OFd2MUc5RndIb0UxdkVjdE5sNmUwYTZneEovZGREdUhHSDBlUHhRU2di?= =?utf-8?B?dXk3ZzhGN1AyOGprdWROUEVaOFBzQi9RNDUxUEt2czRNdy82MnBwekpUaUJ5?= =?utf-8?B?U2pZM1hYZnc2SkQzNEJ0MkpoVVpQUFY4UHYvbDZqdzk1YWVkQjlnMHVnWXMy?= =?utf-8?B?Z1A0ZFZaVmdYNGpmNkxjOC9ZcjQwQ2xOWWo4c1BCVjZnQ0hIVS9aVUNUSjBr?= =?utf-8?B?N1lpbllxakpyekpGWGFhbitxS3ZsSXJBamJmNVdPWCtmeVRCU3pURVFKdVhV?= =?utf-8?B?U0RXUkpScTFiNFFUR2pTOWhrUTZvN2ZnZjM1RUVTT3pERVNUd21lZG9TK2RC?= =?utf-8?B?cEZEd01VaVNCSVRVcldpb21qd2hrTnpzNkpuNkM2RkFUOVhvWmVtSjkxZVlV?= =?utf-8?B?L0NqOTNSKytvNlpJOEREWTFMRnU1QkFPWHdSZEV0V21LRlM3SzFxbGljeXJR?= =?utf-8?B?T1BtblZaT2tmVTJTaE90YmpNc2VHUXk5QVpOSFZ6NEk1aThDbUJBWVhpais5?= =?utf-8?B?NTNoZ2U5bkY3SzVpQ1pPN1FrS2xVZThVdjJmSlEzamtwYTlPdHd0VmhpSElr?= =?utf-8?B?UEt6M3NIOE1CWXluMTlFSVZTWStKaFRMRnUxdWdaQ0ttdUVwaTVzbmdyWkcw?= =?utf-8?B?Zk93VUVxbk9KcDh5NWdFRVc3ZGdtcUt3R0VWQVlwS1lVYjhNcFF3cS85R1FJ?= =?utf-8?B?MmhHWklPR0RBNXpYbmtMMkNXN2lNd0lsU0N5bVlVMVVCeFpwVlZKY2RPQ0FG?= =?utf-8?B?VVZLdlZXeGlnUzk2ZDBPTFlrTExlN2JjdFl4Q2dmVHZiZ0x3Q3F0M3FqbDNY?= =?utf-8?B?cnQxOGFudmV6cHp5dmRJZlNpb2VWNnRWVnRaNW5VTHhvcVc1dEtsREg5eEZF?= =?utf-8?B?R1M4aEx6MjNLL2RzRDdxSmxqY3QwUDhOYitTU2w5OHE4ZGc1ZGdtTCt5aUZ1?= =?utf-8?B?dllaME92bVpsK1I1dUdmM3dScmE5SHk5eUwxOVhzQTU0YzBidVNWOG9UNUdO?= =?utf-8?B?R21SYlBPdDBFakhQVmRCckdtVlR0Rkg0ellJMnhsbDNKeEVUdGZ1TEgvTVRq?= =?utf-8?B?cWFtSERxcmJFNE9KazFhZVBHa1ZRUnVxd2pXR1VUMXM2R2d6Q1ZYREV1OEhS?= =?utf-8?B?LzRndE96ampraWlCQzR0R1JEbXB1Y3dYbFdqdlkrU1VDQjhPcHl1Tkl2Q1N3?= =?utf-8?B?MEx5M2s0cVRac0Q1aU1GUnNjbXZiZ1JXOWJKUURvRmY0c3JkQmZqMkwwR3E1?= =?utf-8?B?b29nK3kxckFkOWhFWCswZkxFdjJkOCt0MlVwTjlRbVhMTlVUN0o4aUl0TWJT?= =?utf-8?B?bGVkdGQ5dytRdm5JeUIwdmtSckViTEx0K25PVkIwNzB1dmRUT2s5a1d0aVZv?= =?utf-8?B?dzBDNDNUQnJ4bWU3MlgyekVRc2ZGMHR5YW94SElNWTdHUHQ1bk10d0FvYTMz?= =?utf-8?B?dDVhWEI1Y0pxTnhIWG92RlBJNU1WV2VMM1NzblRVSWFQaWJocHFNWGFYKzVx?= =?utf-8?B?QnM0VkduVUt5aHlMUk84K0lLNTViUGJseEp5dkY2bXBiNTB5dGgrNEN5K1dE?= =?utf-8?B?WEN4K0pKdStUT254aHRHaVcxQW9iaUM5NnF3dy8xSXByWnI0dTQ0TUxGdXN6?= =?utf-8?B?K1B3SXpCMEdDaXZvOTVUNFF3QzdjVDh0RUpJb3ZyWVJZMGUydmloL3pCTm5E?= =?utf-8?B?Nit4QzduWjEzM01McVZXbC90MWZpdkI1eGQ5K0FRUXR0bnBuY1EzY1VWb0ZB?= =?utf-8?B?MllsbVFWREl1QnVBeEVVVnhycFJ2RnByVVFwT0VmL0creDlveWNTUXFpblJn?= =?utf-8?B?SC9TOFhZSmxub3dpR05uRG11YkpIOXFoUEdNMERuK1Y4TWEydEM1WnZBaDRm?= =?utf-8?B?L0xHMWtDd3ZuMUUyU2QyY2lNUXJ4MHVPMXV1UzNDMXJqbUJTSHZnTXZvSUVH?= =?utf-8?B?NzAwQTBJNnZLNEl2Sm81elJNRWpIbzRFbjY0a3lrVFJyMVpKVlgrTFBiUVI5?= =?utf-8?B?TE12aGtjVnRNaGRBanFYdkhaVWhjMVBXQ0NQSmNuck9WanNvSGlzNHlDOHMr?= =?utf-8?B?eTl3UXA3QzRBWHo1N2VVY2s0YWRBT1gwN0lXU09TUWgwaFJkbzIxa0FhbUxj?= =?utf-8?B?SGd3Y3hRUTNXU3BlUCs4S2ZMblZ0M1JtaldtRWFuaFpmOXQwcWp2bEJ6eEdP?= =?utf-8?B?R1JoNExsZ2pMdXpNRGxjT2hOSDB3PT0=?= 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: 4941d5f9-e572-485d-7329-08d9afb8185f X-MS-Exchange-CrossTenant-originalarrivaltime: 25 Nov 2021 02:05:46.6640 (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: 9Hx+EOrt87IEa2tlY0H4JutxsT5hltehUDD7AGCaj8r4LiI64/RzuIfHb/KA0Z6zbWzo3RAt8QYP7Bc8+GmM5SHEyCmX9mVJ7yzHgzklGxU= X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO1PR11MB5188 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 SGkgTWljaGFlbCwNCg0KSSBhZ3JlZSB3aXRoIHRoZXNlIHVwZGF0ZXMuDQoNClRoYW5rIHlvdSBm b3IgcG9zdGluZyB0aGUgYnJhbmNoZXMuDQoNCk1pa2UNCg0KPiAtLS0tLU9yaWdpbmFsIE1lc3Nh Z2UtLS0tLQ0KPiBGcm9tOiBNaWNoYWVsIEt1YmFja2kgPG1pa3ViYWNrQGxpbnV4Lm1pY3Jvc29m dC5jb20+DQo+IFNlbnQ6IFdlZG5lc2RheSwgTm92ZW1iZXIgMjQsIDIwMjEgNToyNSBQTQ0KPiBU bzogZGV2ZWxAZWRrMi5ncm91cHMuaW87IEtpbm5leSwgTWljaGFlbCBEIDxtaWNoYWVsLmQua2lu bmV5QGludGVsLmNvbT4NCj4gQ2M6IExpbWluZyBHYW8gPGdhb2xpbWluZ0BieW9zb2Z0LmNvbS5j bj47IFNlYW4gQnJvZ2FuIDxzZWFuLmJyb2dhbkBtaWNyb3NvZnQuY29tPjsgQnJldCBCYXJrZWxl dw0KPiA8QnJldC5CYXJrZWxld0BtaWNyb3NvZnQuY29tPg0KPiBTdWJqZWN0OiBSZTogW2VkazIt ZGV2ZWxdIFtQQVRDSCB2NCAxLzFdIC5weXRvb2wvUGx1Z2luL1VuY3J1c3RpZnlDaGVjazogQWRk IFVuY3J1c3RpZnkgQ0kgcGx1Z2luDQo+IA0KPiBJIHNlbnQgdGhlIHY1IHBhdGNoIHdpdGggdGhl IHRlbXBsYXRlcyBkaXNhYmxlZDoNCj4gaHR0cHM6Ly9lZGsyLmdyb3Vwcy5pby9nL2RldmVsL21l c3NhZ2UvODQwNjgNCj4gDQo+IEkgYWxzbyBwb3N0ZWQgdGhhdCBwYXRjaCBvbiB0aGlzIGJyYW5j aDoNCj4gaHR0cHM6Ly9naXRodWIuY29tL21ha3ViYWNraS9lZGsyL3RyZWUvYWRkX3VuY3J1c3Rp ZnlfY2lfcGx1Z2luX3Y1DQo+IA0KPiBJIHBvc3RlZCBhbm90aGVyIGJyYW5jaCB0aGF0IGFsc28g aGFzIHRoZSBjb21taXQgdG8gZW5hYmxlIHRoZSB0ZW1wbGF0ZXMNCj4gaGVyZToNCj4gaHR0cHM6 Ly9naXRodWIuY29tL21ha3ViYWNraS9lZGsyL2NvbW1pdHMvYWRkX3VuY3J1c3RpZnlfY2lfcGx1 Z2luX3Y1X3dfdGVtcGxhdGVfZW5hYmxlX2NvbW1pdA0KPiANCj4gSSB3aWxsIGJlIG91dCBvZiBv ZmZpY2UgdW50aWwgTW9uIE5vdi4gMjl0aCBmb3IgdGhlIFVTIGhvbGlkYXkuDQo+IA0KPiBUaGFu a3MsDQo+IE1pY2hhZWwNCj4gDQo+IE9uIDExLzI0LzIwMjEgNzoyNCBQTSwgTWljaGFlbCBLdWJh Y2tpIHdyb3RlOg0KPiA+IEhpIE1pa2UsDQo+ID4NCj4gPiBIb3cgYWJvdXQgSSBxdWlja2x5IHNl bmQgYSB2NSB3aXRoIHRoZSBsaW5lcyBjb21tZW50ZWQgb3V0IGFuZCBmb2xsb3cgdXANCj4gPiB3 aXRoIGEgcGF0Y2ggdG8gdW5jb21tZW50IHRoZW0gdGhhdCB3ZSBjYW4gcmV2aWV3IGJ1dCBtZXJn ZSB3aGVuIHJlYWR5Pw0KPiA+DQo+ID4gVGhhbmtzLA0KPiA+IE1pY2hhZWwNCj4gPg0KPiA+IE9u IDExLzI0LzIwMjEgNzoxNiBQTSwgTWljaGFlbCBEIEtpbm5leSB3cm90ZToNCj4gPj4gVGhlIDJu ZCBvcHRpb24gSSBsaXN0ZWQgd29uJ3Qgd29yay7CoCBUaGF0IHdpbGwgZmFpbCBVbmNydXN0aWZ5 Q2hlY2sgYXMNCj4gPj4gd2VsbCBiZWNhdXNlIEVESyBJSSBDSQ0KPiA+PiB3aWxsIGluc2VydCBt aXNzaW5nIGZpbGUvZnVuY3Rpb24gaGVhZGVycyBhbmQgdGhlIGZpbGVzIHdpbGwgbm90IG1hdGNo Lg0KPiA+Pg0KPiA+PiBXZSB3aWxsIG5lZWQgdG8gY29tbWVudCBvdXQgdGhlc2UgMiBsaW5lcyBh bmQgc3VibWl0IGFuIGV4dHJhIGNvbW1pdA0KPiA+PiB0byByZS1lbmFibGUuDQo+ID4+DQo+ID4+ IE1pa2UNCj4gPj4NCj4gPj4+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4+PiBGcm9t OiBLaW5uZXksIE1pY2hhZWwgRCA8bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20+DQo+ID4+PiBT ZW50OiBXZWRuZXNkYXksIE5vdmVtYmVyIDI0LCAyMDIxIDQ6MDggUE0NCj4gPj4+IFRvOiBkZXZl bEBlZGsyLmdyb3Vwcy5pbzsgbWlrdWJhY2tAbGludXgubWljcm9zb2Z0LmNvbTsgS2lubmV5LA0K PiA+Pj4gTWljaGFlbCBEIDxtaWNoYWVsLmQua2lubmV5QGludGVsLmNvbT4NCj4gPj4+IENjOiBM aW1pbmcgR2FvIDxnYW9saW1pbmdAYnlvc29mdC5jb20uY24+OyBTZWFuIEJyb2dhbg0KPiA+Pj4g PHNlYW4uYnJvZ2FuQG1pY3Jvc29mdC5jb20+OyBCcmV0IEJhcmtlbGV3DQo+ID4+PiA8QnJldC5C YXJrZWxld0BtaWNyb3NvZnQuY29tPg0KPiA+Pj4gU3ViamVjdDogUkU6IFtlZGsyLWRldmVsXSBb UEFUQ0ggdjQgMS8xXQ0KPiA+Pj4gLnB5dG9vbC9QbHVnaW4vVW5jcnVzdGlmeUNoZWNrOiBBZGQg VW5jcnVzdGlmeSBDSSBwbHVnaW4NCj4gPj4+DQo+ID4+PiBIaSBNaWNoYWVsLA0KPiA+Pj4NCj4g Pj4+IFVuZm9ydHVuYXRlbHksIGVuYWJsaW5nIHRoZSB0ZW1wbGF0ZXMgaW4gdGhlIHVuY3J1c3Rp ZnkuY2ZnIGZpbGVzDQo+ID4+PiBtb2RpZmllcyAzNDAgZmlsZXMgd2l0aCBtaXNzaW5nDQo+ID4+ PiBmaWxlL2Z1bmN0aW9uIGhlYWRlcnMgdGhhdCB3aWxsIG5vdyBmYWlsIFVuY3J1c3RpZnlDaGVj ay4NCj4gPj4+DQo+ID4+PiDCoMKgwqDCoCBjbXRfaW5zZXJ0X2ZpbGVfaGVhZGVywqDCoMKgwqDC oMKgwqDCoMKgID0gZGVmYXVsdF9maWxlX2hlYWRlci50eHQNCj4gPj4+IMKgwqDCoMKgIGNtdF9p bnNlcnRfZnVuY19oZWFkZXLCoMKgwqDCoMKgwqDCoMKgwqAgPSBkZWZhdWx0X2Z1bmN0aW9uX2hl YWRlci50eHQNCj4gPj4+DQo+ID4+PiBQZXJoYXBzIHdlIHNob3VsZCBsZWF2ZSB0aGlzIGZlYXR1 cmUgb2ZmIHRvIGdldCB0aGUgdW5jcnVzdGlmeSBmb3JtYXQNCj4gPj4+IGNoYW5nZXMgY29tbWl0 dGVkIGFuZA0KPiA+Pj4gZW5hYmxlIHRoaXMgZmVhdHVyZSBpbW1lZGlhdGVseSBhZnRlciBzbyBw YXRjaCByZXZpZXdzIGFmdGVyIHRoYXQNCj4gPj4+IHdpbGwgc2xvd2x5IGZpeCB0aGVzZSBtaXNz aW5nDQo+ID4+PiBmaWxlL2Z1bmN0aW9uIGhlYWRlcnMuDQo+ID4+Pg0KPiA+Pj4gT3IgSSBjYW4g Y29tbWVudCB0aGVzZSB0d28gbGluZXMgb3V0IHdoZW4gSSBnZW5lcmF0ZSB0aGUgZmluYWwNCj4g Pj4+IHZlcnNpb24gb2YgdGhlIHBhdGNoIHNlcmllcyBzbw0KPiA+Pj4gd2UgZG9u4oCZdCBoYXZl IHRvIGRvIGFuIGV4dHJhIGNvbW1pdCB0byByZS1lbmFibGUuDQo+ID4+Pg0KPiA+Pj4gTWlrZQ0K PiA+Pj4NCj4gPj4+PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+Pj4+IEZyb206IEtp bm5leSwgTWljaGFlbCBEIDxtaWNoYWVsLmQua2lubmV5QGludGVsLmNvbT4NCj4gPj4+PiBTZW50 OiBXZWRuZXNkYXksIE5vdmVtYmVyIDI0LCAyMDIxIDM6MDYgUE0NCj4gPj4+PiBUbzogZGV2ZWxA ZWRrMi5ncm91cHMuaW87IG1pa3ViYWNrQGxpbnV4Lm1pY3Jvc29mdC5jb207IEtpbm5leSwNCj4g Pj4+PiBNaWNoYWVsIEQgPG1pY2hhZWwuZC5raW5uZXlAaW50ZWwuY29tPg0KPiA+Pj4+IENjOiBM aW1pbmcgR2FvIDxnYW9saW1pbmdAYnlvc29mdC5jb20uY24+OyBTZWFuIEJyb2dhbg0KPiA+Pj4+ IDxzZWFuLmJyb2dhbkBtaWNyb3NvZnQuY29tPjsgQnJldCBCYXJrZWxldw0KPiA+Pj4+IDxCcmV0 LkJhcmtlbGV3QG1pY3Jvc29mdC5jb20+DQo+ID4+Pj4gU3ViamVjdDogUkU6IFtlZGsyLWRldmVs XSBbUEFUQ0ggdjQgMS8xXQ0KPiA+Pj4+IC5weXRvb2wvUGx1Z2luL1VuY3J1c3RpZnlDaGVjazog QWRkIFVuY3J1c3RpZnkgQ0kgcGx1Z2luDQo+ID4+Pj4NCj4gPj4+PiBUaGFua3MuwqAgVGhhdCBt YWtlcyBzZW5zZS4NCj4gPj4+Pg0KPiA+Pj4+IE1pa2UNCj4gPj4+Pg0KPiA+Pj4+PiAtLS0tLU9y aWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+Pj4+PiBGcm9tOiBkZXZlbEBlZGsyLmdyb3Vwcy5pbyA8 ZGV2ZWxAZWRrMi5ncm91cHMuaW8+IE9uIEJlaGFsZiBPZg0KPiA+Pj4+PiBNaWNoYWVsIEt1YmFj a2kNCj4gPj4+Pj4gU2VudDogV2VkbmVzZGF5LCBOb3ZlbWJlciAyNCwgMjAyMSAyOjU1IFBNDQo+ ID4+Pj4+IFRvOiBkZXZlbEBlZGsyLmdyb3Vwcy5pbzsgS2lubmV5LCBNaWNoYWVsIEQNCj4gPj4+ Pj4gPG1pY2hhZWwuZC5raW5uZXlAaW50ZWwuY29tPg0KPiA+Pj4+PiBDYzogTGltaW5nIEdhbyA8 Z2FvbGltaW5nQGJ5b3NvZnQuY29tLmNuPjsgU2VhbiBCcm9nYW4NCj4gPj4+Pj4gPHNlYW4uYnJv Z2FuQG1pY3Jvc29mdC5jb20+OyBCcmV0IEJhcmtlbGV3DQo+ID4+Pj4+IDxCcmV0LkJhcmtlbGV3 QG1pY3Jvc29mdC5jb20+DQo+ID4+Pj4+IFN1YmplY3Q6IFJlOiBbZWRrMi1kZXZlbF0gW1BBVENI IHY0IDEvMV0NCj4gPj4+Pj4gLnB5dG9vbC9QbHVnaW4vVW5jcnVzdGlmeUNoZWNrOiBBZGQgVW5j cnVzdGlmeSBDSSBwbHVnaW4NCj4gPj4+Pj4NCj4gPj4+Pj4gWWVzLiBUaG9zZSB3ZXJlIHJlZHVu ZGFudCBhbmQgZGV0ZWN0ZWQgYnkgdGhlIFB5dGhvbiBjb25maWdwYXJzZXINCj4gPj4+Pj4gbW9k dWxlDQo+ID4+Pj4+IHdoZW4gSSB1c2VkIGl0IHRvIHBhcnNlIHRoZSBjb25maWcgZmlsZS4NCj4g Pj4+Pj4NCj4gPj4+Pj4gVGhhbmtzLA0KPiA+Pj4+PiBNaWNoYWVsDQo+ID4+Pj4+DQo+ID4+Pj4+ IE9uIDExLzI0LzIwMjEgNTo0NSBQTSwgTWljaGFlbCBEIEtpbm5leSB3cm90ZToNCj4gPj4+Pj4+ IEhpIE1pY2hhZWwsDQo+ID4+Pj4+Pg0KPiA+Pj4+Pj4gSSBzZWUgYSBjb3VwbGUgc2V0dGluZ3Mg ZGVsZXRlZCBmcm9tIHRoZSB1bmNydXN0aWZ5LmNmZy7CoCBXYXMgdGhhdA0KPiA+Pj4+Pj4gaW4g cHVycG9zZT/CoCBEb2VzIGl0IGNoYW5nZSB0aGUgZm9ybWF0Pw0KPiA+Pj4+Pj4NCj4gPj4+Pj4+ DQo+ID4+Pj4+PiAtbmxfZnVuY19jYWxsX3N0YXJ0X211bHRpX2xpbmXCoMKgID0gdHJ1ZcKgwqDC oMKgwqAgIyBXaGV0aGVyIHRvIGFkZCBhDQo+ID4+Pj4+PiBuZXdsaW5lIGFmdGVyICcoJyBpbiBh IGZ1bmN0aW9uIGNhbGwgaWYgJygnIGFuZCAnKScNCj4gPj4+PiBhcmUNCj4gPj4+Pj4+IC3CoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjIGluIGRpZmZlcmVudCBsaW5lcy4NCj4gPj4+Pj4+ DQo+ID4+Pj4+Pg0KPiA+Pj4+Pj4gLW5sX2Z1bmNfY2FsbF9hcmdzX211bHRpX2xpbmXCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IHRydWUNCj4gPj4+Pj4+IC1ubF9mdW5jX2NhbGxf YXJnc19tdWx0aV9saW5lX2lnbm9yZV9jbG9zdXJlcyA9IGZhbHNlDQo+ID4+Pj4+Pg0KPiA+Pj4+ Pj4NCj4gPj4+Pj4+IFRoYW5rcywNCj4gPj4+Pj4+DQo+ID4+Pj4+PiBNaWtlDQo+ID4+Pj4+Pg0K PiA+Pj4+Pj4+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4+Pj4+Pj4gRnJvbTogbWlr dWJhY2tAbGludXgubWljcm9zb2Z0LmNvbSA8bWlrdWJhY2tAbGludXgubWljcm9zb2Z0LmNvbT4N Cj4gPj4+Pj4+PiBTZW50OiBXZWRuZXNkYXksIE5vdmVtYmVyIDI0LCAyMDIxIDE6NDIgUE0NCj4g Pj4+Pj4+PiBUbzogZGV2ZWxAZWRrMi5ncm91cHMuaW8NCj4gPj4+Pj4+PiBDYzogS2lubmV5LCBN aWNoYWVsIEQgPG1pY2hhZWwuZC5raW5uZXlAaW50ZWwuY29tPjsgTGltaW5nIEdhbw0KPiA+Pj4+ Pj4+IDxnYW9saW1pbmdAYnlvc29mdC5jb20uY24+OyBTZWFuIEJyb2dhbg0KPiA+Pj4+Pj4+IDxz ZWFuLmJyb2dhbkBtaWNyb3NvZnQuY29tPjsgQnJldCBCYXJrZWxldw0KPiA+Pj4+Pj4+IDxCcmV0 LkJhcmtlbGV3QG1pY3Jvc29mdC5jb20+DQo+ID4+Pj4+Pj4gU3ViamVjdDogW1BBVENIIHY0IDEv MV0gLnB5dG9vbC9QbHVnaW4vVW5jcnVzdGlmeUNoZWNrOiBBZGQNCj4gPj4+Pj4+PiBVbmNydXN0 aWZ5IENJIHBsdWdpbg0KPiA+Pj4+Pj4+DQo+ID4+Pj4+Pj4gRnJvbTogTWljaGFlbCBLdWJhY2tp IDxtaWNoYWVsLmt1YmFja2lAbWljcm9zb2Z0LmNvbT4NCj4gPj4+Pj4+Pg0KPiA+Pj4+Pj4+IFJF RjpodHRwczovL2J1Z3ppbGxhLnRpYW5vY29yZS5vcmcvc2hvd19idWcuY2dpP2lkPTM3NDgNCj4g Pj4+Pj4+Pg0KPiA+Pj4+Pj4+IEFkZHMgYSBuZXcgQ0kgcGx1Z2luIGZvciBVbmNydXN0aWZ5LiBU aGlzIGlzIHVzZWQgdG8gY2hlY2sNCj4gPj4+Pj4+PiBjb2Rpbmcgc3RhbmRhcmQgY29tcGxpYW5j ZSBvZiBzb3VyY2UgY29kZSB0byB0aGUgRURLIElJIEMgQ29kaW5nDQo+ID4+Pj4+Pj4gU3RhbmRh cmRzIFNwZWNpZmljYXRpb24uDQo+ID4+Pj4+Pj4NCj4gPj4+Pj4+PiBBbiBleHRlcm5hbCBkZXBl bmRlbmN5IGlzIGFkZGVkIGluIHRoZSBwbHVnaW4gZGlyZWN0b3J5IHRvIHJldHJpZXZlDQo+ID4+ Pj4+Pj4gdGhlIFVuY3J1c3RpZnkgZXhlY3V0YWJsZS4gQ3VycmVudGx5LCB0aGUgZXhlY3V0YWJs ZSBpcyBmcm9tIGFuIGVkazINCj4gPj4+Pj4+PiBmb3JrIG9mIHRoZSBhcHBsaWNhdGlvbiBob3N0 IGluIHRoaXMgcmVwb3NpdG9yeToNCj4gPj4+Pj4+Pg0KPiA+Pj4+Pj4+IGh0dHBzOi8vZGV2LmF6 dXJlLmNvbS9wcm9qZWN0bXUvVW5jcnVzdGlmeS8NCj4gPj4+Pj4+Pg0KPiA+Pj4+Pj4+IE5vdGUg dGhhdCB0aGUgVW5jcnVzdGlmeSBhcHBsaWNhdGlvbiBvdXRwdXRzIHRoZSBjb21taXQgSUQgdGhh dCB0aGUNCj4gPj4+Pj4+PiBhcHBsaWNhdGlvbiB3YXMgYnVpbHQgZnJvbSB3aGVuIGdpdmVuIHRo ZSAtLXZlcnNpb24gcGFyYW1ldGVyLg0KPiA+Pj4+Pj4+DQo+ID4+Pj4+Pj4gVGhpcyBJRCBjYW4g YmUgbWFwcGVkIHRvIHRoZSB2ZXJzaW9uIHNwZWNpZmllZCBpbiB0aGUgVW5jcnVzdGlmeSBDSQ0K PiA+Pj4+Pj4+IHBsdWdpbiBleHRlcm5hbCBkZXBlbmRlbmN5IGZpbGUgKHVuY3J1c3RpZnlfZXh0 X2RlcC55YW1sKSBzdWNoIGFzDQo+ID4+Pj4+Pj4gNzMuMC4zIGJ5IHZpc2l0aW5nIHRoZSBVbmNy dXN0aWZ5IGVkazIgZm9yayByZWxlYXNlIHBpcGVsaW5lIHBhZ2UNCj4gPj4+Pj4+PiB3aGljaCBh c3NvY2lhdGVzIHRoZSBOdUdldCBwYWNrYWdlIHZlcnNpb24gd2l0aCB0aGUgY29tbWl0IElEIGl0 IHdhcw0KPiA+Pj4+Pj4+IGJ1aWx0IGZyb206DQo+ID4+Pj4+Pj4NCj4gPj4+Pj4+PiBodHRwczov L2Rldi5henVyZS5jb20vcHJvamVjdG11L1VuY3J1c3RpZnkvX2J1aWxkDQo+ID4+Pj4+Pj4NCj4g Pj4+Pj4+PiBUaGUgZGVmYXVsdCBVbmNydXN0aWZ5IGNvbmZpZ3VyYXRpb24gZmlsZXMgYXJlIGFk ZGVkIGluIHRoZSBwbHVnaW4NCj4gPj4+Pj4+PiBkaXJlY3RvcnkuIEFkZGl0aW9uYWwgZGV0YWls cyBhcmUgaW4gdGhlIFJlYWRtZS5tZCBmaWxlIGFkZGVkIGluDQo+ID4+Pj4+Pj4gdGhlIFVuY3J1 c3RpZnkgcGx1Z2luIGRpcmVjdG9yeS4NCj4gPj4+Pj4+Pg0KPiA+Pj4+Pj4+IENjOiBNaWNoYWVs IEQgS2lubmV5IDxtaWNoYWVsLmQua2lubmV5QGludGVsLmNvbT4NCj4gPj4+Pj4+PiBDYzogTGlt aW5nIEdhbyA8Z2FvbGltaW5nQGJ5b3NvZnQuY29tLmNuPg0KPiA+Pj4+Pj4+IENjOiBTZWFuIEJy b2dhbiA8c2Vhbi5icm9nYW5AbWljcm9zb2Z0LmNvbT4NCj4gPj4+Pj4+PiBDYzogQnJldCBCYXJr ZWxldyA8QnJldC5CYXJrZWxld0BtaWNyb3NvZnQuY29tPg0KPiA+Pj4+Pj4+IFNpZ25lZC1vZmYt Ynk6IE1pY2hhZWwgS3ViYWNraSA8bWljaGFlbC5rdWJhY2tpQG1pY3Jvc29mdC5jb20+DQo+ID4+ Pj4+Pj4gLS0tDQo+ID4+Pj4+Pj4NCj4gPj4+Pj4+PiBOb3RlczoNCj4gPj4+Pj4+PiDCoMKgwqDC oMKgIFY0IGNoYW5nZXM6DQo+ID4+Pj4+Pj4NCj4gPj4+Pj4+PiDCoMKgwqDCoMKgIDEuIFVwZGF0 ZWQgY29tbWl0IHN1YmplY3QgdG8gdXNlIHRoZSBuZXcgcGx1Z2luIG5hbWUuDQo+ID4+Pj4+Pj4g wqDCoMKgwqDCoCAyLiBFbmFibGVkIGZpbGUgYW5kIGZ1bmN0aW9uIGhlYWRlciB0ZW1wbGF0ZXMg dG8gYmUgcGxhY2VkIGluDQo+ID4+Pj4+Pj4gwqDCoMKgwqDCoMKgwqDCoCBmaWxlcyBtaXNzaW5n IGEgZmlsZSBvciBmdW5jdGlvbiBoZWFkZXIgKGNvbW1lbnQgYmxvY2spLg0KPiA+Pj4+Pj4+IMKg wqDCoMKgwqAgMy4gQWRkZWQgc3VwcG9ydCB0byBkZXRlY3Qgd2hldGhlciBhIGZpbGUgaGVhZGVy IG9yIGZ1bmN0aW9uDQo+ID4+Pj4+Pj4gwqDCoMKgwqDCoMKgwqDCoCBoZWFkZXIgaXMgbWlzc2lu ZyBpbiBhIGZpbGUgYnkgc2VhcmNoaW5nIGZpbGVzIG1vZGlmaWVkIGJ5DQo+ID4+Pj4+Pj4gwqDC oMKgwqDCoMKgwqDCoCBVbmNydXN0aWZ5IGZvciB0aGUgdGVtcGxhdGUgZmlsZSB0ZXh0Lg0KPiA+ Pj4+Pj4+IMKgwqDCoMKgwqAgNC4gVXBkYXRlZCB0aGUgcGx1Z2luIG5hbWUgZGlzcGxheWVkIGlu IHNvbWUgbG9nIG91dHB1dA0KPiA+Pj4+Pj4+IG1lc3NhZ2VzLg0KPiA+Pj4+Pj4+DQo+ID4+Pj4+ Pj4gwqDCoMKgwqDCoCBWMyBjaGFuZ2VzOg0KPiA+Pj4+Pj4+DQo+ID4+Pj4+Pj4gwqDCoMKgwqDC oCAxLiBSZW5hbWVkIHRoZSBDSSBwbHVnaW4gdG8gIlVuY3J1c3RpZnlDaGVjayIgZnJvbQ0KPiA+ Pj4+Pj4+ICJVbmNydXN0aWZ5Ig0KPiA+Pj4+Pj4+IMKgwqDCoMKgwqDCoMKgwqAgdG8gZm9sbG93 IHNpbWlsYXIgbmFtaW5nIGNvbnZlbnRpb25zIHVzZWQgaW4gb3RoZXIgcGx1Z2lucw0KPiA+Pj4+ Pj4+IMKgwqDCoMKgwqDCoMKgwqAgdGhhdCBjaGVjayBmaWxlcw0KPiA+Pj4+Pj4+IMKgwqDCoMKg wqAgMi4gQWRkZWQgYSBjbGFyaWZ5aW5nIHBhcmFncmFwaCB0byB0aGUgYmVnaW5uaW5nIG9mIHRo ZQ0KPiA+Pj4+Pj4+IFVuY3J1c3RpZnkNCj4gPj4+Pj4+PiDCoMKgwqDCoMKgwqDCoMKgIENJIHBs dWdpbiBSZWFkbWUubWQgZmlsZSB0aGF0IHRoZSBwbHVnaW4gaXMgZW5hYmxlZCBieQ0KPiA+Pj4+ Pj4+IGRlZmF1bHQNCj4gPj4+Pj4+PiDCoMKgwqDCoMKgwqDCoMKgIGFuZCB0ZXN0IHJlc3VsdHMg Y2FuIGJlIGlnbm9yZWQgYnkgZW5hYmxpbmcgIkF1ZGl0T25seSINCj4gPj4+Pj4+PiBtb2RlLg0K PiA+Pj4+Pj4+IMKgwqDCoMKgwqAgMy4gQWRkZWQgaW5zdHJ1Y3Rpb25zIGluIHRoZSBjb21taXQg bWVzc2FnZSBvbiBob3cgdG8gbWFwIHRoZQ0KPiA+Pj4+Pj4+IMKgwqDCoMKgwqDCoMKgwqAgdmVy c2lvbiByZXBvcnRlZCBieSB0aGUgVW5jcnVzdGlmeSBhcHBsaWNhdGlvbg0KPiA+Pj4+Pj4+ICgt LXZlcnNpb24pIHRvDQo+ID4+Pj4+Pj4gwqDCoMKgwqDCoMKgwqDCoCB0aGUgdmVyc2lvbiBzcGVj aWZpZWQgaW4gdGhlIENJIHBsdWdpbiBleHRlcm5hbCBkZXBlbmRlbmN5DQo+ID4+Pj4+Pj4gwqDC oMKgwqDCoMKgwqDCoCBZQU1MIGZpbGUuDQo+ID4+Pj4+Pj4NCj4gPj4+Pj4+PiDCoMKgwqDCoMKg IFYyIGNoYW5nZXM6DQo+ID4+Pj4+Pj4NCj4gPj4+Pj4+PiDCoMKgwqDCoMKgIDEuIENoYW5nZWQg cGx1Z2luIHRlbXAgZGlyZWN0b3J5IHRvDQo+ID4+Pj4+Pj4gQnVpbGQvLnB5dG9vbC9QbHVnaW4v VW5jcnVzdGlmeQ0KPiA+Pj4+Pj4+IMKgwqDCoMKgwqAgMi4gQWRkZWQgVENCWiBSRUYgaW4gcGF0 Y2ggY29tbWl0IG1lc3NhZ2UNCj4gPj4+Pj4+Pg0KPiA+Pj4+Pj4+IMKgwqAgLnB5dG9vbC9QbHVn aW4vVW5jcnVzdGlmeUNoZWNrL1JlYWRtZS5tZMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCB8DQo+ID4+Pj4+Pj4gMTIwICsrKysNCj4gPj4+Pj4+PiDCoMKgIC5weXRvb2wvUGx1 Z2luL1VuY3J1c3RpZnlDaGVjay9VbmNydXN0aWZ5Q2hlY2sucHnCoMKgwqDCoMKgwqDCoMKgwqAg fA0KPiA+Pj4+Pj4+IDYxNyArKysrKysrKysrKysrKysrKysrKw0KPiA+Pj4+Pj4+IMKgwqAgLnB5 dG9vbC9QbHVnaW4vVW5jcnVzdGlmeUNoZWNrL2RlZmF1bHRfZmlsZV9oZWFkZXIudHh0wqDCoMKg wqAgfA0KPiA+Pj4+Pj4+IDkgKw0KPiA+Pj4+Pj4+IMKgwqAgLnB5dG9vbC9QbHVnaW4vVW5jcnVz dGlmeUNoZWNrL2RlZmF1bHRfZnVuY3Rpb25faGVhZGVyLnR4dCB8DQo+ID4+Pj4+Pj4gMTUgKw0K PiA+Pj4+Pj4+IMKgwqAgLnB5dG9vbC9QbHVnaW4vVW5jcnVzdGlmeUNoZWNrL3VuY3J1c3RpZnku Y2ZnwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgfA0KPiA+Pj4+Pj4+IDQ2MiArKysrKysrKysr KysrKysNCj4gPj4+Pj4+PiDCoMKgIC5weXRvb2wvUGx1Z2luL1VuY3J1c3RpZnlDaGVjay91bmNy dXN0aWZ5X2V4dF9kZXAueWFtbMKgwqDCoMKgIHwNCj4gPj4+Pj4+PiAxNiArDQo+ID4+Pj4+Pj4g wqDCoCAucHl0b29sL1BsdWdpbi9VbmNydXN0aWZ5Q2hlY2svdW5jcnVzdGlmeV9wbHVnX2luLnlh bWzCoMKgwqDCoCB8DQo+ID4+Pj4+Pj4gMTEgKw0KPiA+Pj4+Pj4+IMKgwqAgLnB5dG9vbC9SZWFk bWUubWTCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHwNCj4gPj4+Pj4+PiA0ICsNCj4gPj4+Pj4+ PiDCoMKgIDggZmlsZXMgY2hhbmdlZCwgMTI1NCBpbnNlcnRpb25zKCspDQo+ID4+Pj4+Pj4NCj4g Pj4+Pj4+PiBkaWZmIC0tZ2l0IGEvLnB5dG9vbC9QbHVnaW4vVW5jcnVzdGlmeUNoZWNrL1JlYWRt ZS5tZA0KPiA+Pj4+Pj4+IGIvLnB5dG9vbC9QbHVnaW4vVW5jcnVzdGlmeUNoZWNrL1JlYWRtZS5t ZA0KPiA+Pj4+Pj4+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0DQo+ID4+Pj4+Pj4gaW5kZXggMDAwMDAw MDAwMDAwLi5iYjI2M2JjYzg3ZDcNCj4gPj4+Pj4+PiAtLS0gL2Rldi9udWxsDQo+ID4+Pj4+Pj4g KysrIGIvLnB5dG9vbC9QbHVnaW4vVW5jcnVzdGlmeUNoZWNrL1JlYWRtZS5tZA0KPiA+Pj4+Pj4+ IEBAIC0wLDAgKzEsMTIwIEBADQo+ID4+Pj4+Pj4gKyMgVW5jcnVzdGlmeUNoZWNrIFBsdWdpbg0K PiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArVGhpcyBDaUJ1aWxkUGx1Z2luIHNjYW5zIGFsbCB0aGUg ZmlsZXMgaW4gYSBnaXZlbiBwYWNrYWdlIGFuZA0KPiA+Pj4+Pj4+IGNoZWNrcyBmb3IgY29kaW5n IHN0YW5kYXJkIGNvbXBsaWFuY2UgaXNzdWVzLg0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArVGhp cyBwbHVnaW4gaXMgZW5hYmxlZCBieSBkZWZhdWx0LiBJZiBhIHBhY2thZ2Ugd291bGQgbGlrZSB0 bw0KPiA+Pj4+Pj4+IHByZXZlbnQgdGhlIHBsdWdpbiBmcm9tIHJlcG9ydGluZyBlcnJvcnMsIGl0 IGNhbiBkbw0KPiA+Pj4+Pj4+ICtzbyBieSBlbmFibGluZyBbYEF1ZGl0T25seWBdKCNhdWRpdG9u bHkpIG1vZGUuDQo+ID4+Pj4+Pj4gKw0KPiA+Pj4+Pj4+ICtUaGlzIHBsdWdpbiByZXF1aXJlcyB0 aGUgZGlyZWN0b3J5IGNvbnRhaW5pbmcgdGhlIFVuY3J1c3RpZnkNCj4gPj4+Pj4+PiBleGVjdXRh YmxlIHRoYXQgc2hvdWxkIGJlIHVzZWQgZm9yIHRoaXMgcGx1Z2luIHRvDQo+ID4+Pj4+Pj4gK2Jl IHNwZWNpZmllZCBpbiBhbiBlbnZpcm9ubWVudCB2YXJpYWJsZSBuYW1lZA0KPiA+Pj4+Pj4+IGBV TkNSVVNUSUZZX0NJX1BBVEhgLiBUaGlzIHVuaXF1ZSB2YXJpYWJsZSBuYW1lIGlzIHVzZWQgdG8g YXZvaWQNCj4gPj4+Pj4gY29uZnVzaW9uDQo+ID4+Pj4+Pj4gK3dpdGggb3RoZXIgcGF0aHMgdG8g VW5jcnVzdGlmeSB3aGljaCBtaWdodCBub3QgYmUgdGhlIGV4cGVjdGVkDQo+ID4+Pj4+Pj4gYnVp bGQgZm9yIHVzZSBieSB0aGlzIHBsdWdpbi4NCj4gPj4+Pj4+PiArDQo+ID4+Pj4+Pj4gK0J5IGRl ZmF1bHQsIGFuIFVuY3J1c3RpZnkgY29uZmlndXJhdGlvbiBmaWxlIG5hbWVkDQo+ID4+Pj4+Pj4g InVuY3J1c3RpZnkuY2ZnIiBsb2NhdGVkIGluIHRoZSBzYW1lIGRpcmVjdG9yeSBhcyB0aGUgcGx1 Z2luIGlzDQo+ID4+Pj4+Pj4gK3VzZWQuIFRoZSB2YWx1ZSBjYW4gYmUgb3ZlcnJpZGRlbiB0byBh IHBhY2thZ2Utc3BlY2lmaWMgcGF0aA0KPiA+Pj4+Pj4+IHdpdGggdGhlIGBDb25maWdGaWxlUGF0 aGAgY29uZmlndXJhdGlvbiBmaWxlIG9wdGlvbi4NCj4gPj4+Pj4+PiArDQo+ID4+Pj4+Pj4gKyog VW5jcnVzdGlmeSBzb3VyY2UgY29kZSBhbmQgZG9jdW1lbnRhdGlvbjoNCj4gPj4+Pj4+PiBodHRw czovL2dpdGh1Yi5jb20vdW5jcnVzdGlmeS91bmNydXN0aWZ5DQo+ID4+Pj4+Pj4gKyogUHJvamVj dCBNdSBVbmNydXN0aWZ5IGZvcmsgc291cmNlIGNvZGUgYW5kIGRvY3VtZW50YXRpb246DQo+ID4+ Pj4+Pj4gaHR0cHM6Ly9kZXYuYXp1cmUuY29tL3Byb2plY3RtdS9VbmNydXN0aWZ5DQo+ID4+Pj4+ Pj4gKw0KPiA+Pj4+Pj4+ICsjIyBGaWxlcyBDaGVja2VkIGluIGEgUGFja2FnZQ0KPiA+Pj4+Pj4+ ICsNCj4gPj4+Pj4+PiArQnkgZGVmYXVsdCwgdGhpcyBwbHVnaW4gd2lsbCBkaXNjb3ZlciBhbGwg ZmlsZXMgaW4gdGhlIHBhY2thZ2UNCj4gPj4+Pj4+PiB3aXRoIHRoZSBmb2xsb3dpbmcgZGVmYXVs dCBwYXRoczoNCj4gPj4+Pj4+PiArDQo+ID4+Pj4+Pj4gK2BgYHB5dGhvbg0KPiA+Pj4+Pj4+ICtb DQo+ID4+Pj4+Pj4gKyMgQyBzb3VyY2UNCj4gPj4+Pj4+PiArIiouYyIsDQo+ID4+Pj4+Pj4gKyIq LmgiDQo+ID4+Pj4+Pj4gK10NCj4gPj4+Pj4+PiArYGBgDQo+ID4+Pj4+Pj4gKw0KPiA+Pj4+Pj4+ ICtGcm9tIHRoaXMgbGlzdCBvZiBmaWxlcywgYW55IGZpbGVzIGlnbm9yZWQgYnkgR2l0IG9yIHJl c2lkaW5nIGluDQo+ID4+Pj4+Pj4gYSBHaXQgc3VibW9kdWxlIHdpbGwgYmUgcmVtb3ZlZC4gSWYg R2l0IGlzIG5vdA0KPiA+Pj4+Pj4+ICtmb3VuZCwgc3VibW9kdWxlcyBhcmUgbm90IGZvdW5kLCBv ciBpZ25vcmVkIGZpbGVzIGFyZSBub3QgZm91bmQNCj4gPj4+Pj4+PiBubyBjaGFuZ2VzIGFyZSBt YWRlIHRvIHRoZSBsaXN0IG9mIGRpc2NvdmVyZWQNCj4gPj4+IGZpbGVzLg0KPiA+Pj4+Pj4+ICsN Cj4gPj4+Pj4+PiArVG8gY29udHJvbCB0aGUgcGF0aHMgY2hlY2tlZCBpbiBhIGdpdmVuIHBhY2th Z2UsIHJldmlldyB0aGUNCj4gPj4+Pj4+PiBjb25maWd1cmF0aW9uIG9wdGlvbnMgZGVzY3JpYmVk IGluIHRoaXMgZmlsZS4NCj4gPj4+Pj4+PiArDQo+ID4+Pj4+Pj4gKyMjIENvbmZpZ3VyYXRpb24N Cj4gPj4+Pj4+PiArDQo+ID4+Pj4+Pj4gK1RoZSBwbHVnaW4gY2FuIGJlIGNvbmZpZ3VyZWQgd2l0 aCBhIGZldyBvcHRpb25hbCBjb25maWd1cmF0aW9uDQo+ID4+Pj4+Pj4gb3B0aW9ucy4NCj4gPj4+ Pj4+PiArDQo+ID4+Pj4+Pj4gK2BgYCB5YW1sDQo+ID4+Pj4+Pj4gK8KgICJVbmNydXN0aWZ5Q2hl Y2siOiB7DQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqAgIkFkZGl0aW9uYWxJbmNsdWRlUGF0aHMiOiBb XSwgIyBBZGRpdGlvbmFsIHBhdGhzIHRvIGNoZWNrDQo+ID4+Pj4+Pj4gZm9ybWF0dGluZyAod2ls ZGNhcmRzIHN1cHBvcnRlZCkuDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqAgIkF1ZGl0T25seSI6IEZh bHNlLMKgwqDCoMKgwqDCoMKgwqDCoMKgICMgRG9uJ3QgZmFpbCB0aGUgYnVpbGQgaWYNCj4gPj4+ Pj4+PiB0aGVyZSBhcmUgZXJyb3JzLsKgIEp1c3QgbG9nIHRoZW0uDQo+ID4+Pj4+Pj4gK8KgwqDC oMKgwqAgIkNvbmZpZ0ZpbGVQYXRoIjogIiIswqDCoMKgwqDCoMKgwqDCoCAjIEN1c3RvbSBwYXRo IHRvIGFuDQo+ID4+Pj4+Pj4gVW5jcnVzdGlmeSBjb25maWcgZmlsZS4NCj4gPj4+Pj4+PiArwqDC oMKgwqDCoCAiSWdub3JlU3RhbmRhcmRQYXRocyI6IFtdLMKgwqDCoCAjIFN0YW5kYXJkIFBsdWdp biBkZWZpbmVkDQo+ID4+Pj4+Pj4gcGF0aHMgdGhhdCBzaG91bGQgYmUgaWdub3JlZC4NCj4gPj4+ Pj4+PiArwqDCoMKgwqDCoCAiT3V0cHV0RmlsZURpZmZzIjogRmFsc2UswqDCoMKgwqAgIyBPdXRw dXQgY2h1bmtzIG9mDQo+ID4+Pj4+Pj4gZm9ybWF0dGluZyBkaWZmcyBpbiB0aGUgdGVzdCBjYXNl IGxvZy4NCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjIFRoaXMgY2FuIHNpZ25pZmljYW50bHkN Cj4gPj4+Pj4+PiBzbG93IGRvd24gdGhlIHBsdWdpbiBvbiB2ZXJ5IGxhcmdlIHBhY2thZ2VzLg0K PiA+Pj4+Pj4+ICvCoMKgwqDCoMKgICJTa2lwR2l0RXhjbHVzaW9ucyI6IEZhbHNlwqDCoMKgICMg RG9uJ3QgZXhjbHVkZSBnaXQgaWdub3JlZA0KPiA+Pj4+Pj4+IGZpbGVzIGFuZCBmaWxlcyBpbiBn aXQgc3VibW9kdWxlcy4NCj4gPj4+Pj4+PiArwqAgfQ0KPiA+Pj4+Pj4+ICtgYGANCj4gPj4+Pj4+ PiArDQo+ID4+Pj4+Pj4gKyMjIyBgQWRkaXRpb25hbEluY2x1ZGVQYXRoc2ANCj4gPj4+Pj4+PiAr DQo+ID4+Pj4+Pj4gK0EgcGFja2FnZSBjb25maWd1cmF0aW9uIGZpbGUgY2FuIHNwZWNpZnkgYW55 IGFkZGl0aW9uYWwgcGF0aHMgdG8NCj4gPj4+Pj4+PiBiZSBpbmNsdWRlZCB3aXRoIHRoaXMgb3B0 aW9uLg0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArQXQgdGhpcyB0aW1lLCBpdCBpcyByZWNvbW1l bmRlZCBhbGwgZmlsZXMgcnVuIGFnYWluc3QgdGhlIHBsdWdpbg0KPiA+Pj4+Pj4+IGJlIHdyaXR0 ZW4gaW4gdGhlIEMgb3IgQysrIGxhbmd1YWdlLg0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArIyMj IGBBdWRpdE9ubHlgDQo+ID4+Pj4+Pj4gKw0KPiA+Pj4+Pj4+ICtgQm9vbGVhbmAgLSBEZWZhdWx0 IGlzIGBGYWxzZWAuDQo+ID4+Pj4+Pj4gKw0KPiA+Pj4+Pj4+ICtJZiBgVHJ1ZWAsIHJ1biB0aGUg dGVzdCBpbiBhbiAiYXVkaXQgb25seSBtb2RlIiB3aGljaCB3aWxsIGxvZw0KPiA+Pj4+Pj4+IGFs bCBlcnJvcnMgYnV0IGluc3RlYWQgb2YgZmFpbGluZyB0aGUgYnVpbGQsIGl0DQo+ID4+PiB3aWxs DQo+ID4+Pj4+IHNldA0KPiA+Pj4+Pj4+ICt0aGUgdGVzdCBhcyBza2lwcGVkLiBUaGlzIGFsbG93 cyB2aXNpYmlsaXR5IGludG8gdGhlIGZhaWx1cmVzDQo+ID4+Pj4+Pj4gd2l0aG91dCBicmVha2lu ZyB0aGUgYnVpbGQuDQo+ID4+Pj4+Pj4gKw0KPiA+Pj4+Pj4+ICsjIyMgYENvbmZpZ0ZpbGVQYXRo YA0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArYFN0cmluZ2AgLSBEZWZhdWx0IGlzIGAidW5jcnVz dGlmeS5jZmciYA0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArV2hlbiBzcGVjaWZpZWQgaW4gdGhl IGNvbmZpZyBmaWxlLCB0aGlzIGlzIGEgcGFja2FnZSByZWxhdGl2ZQ0KPiA+Pj4+Pj4+IHBhdGgg dG8gdGhlIFVuY3J1c3RpZnkgY29uZmlndXJhdGlvbiBmaWxlLg0KPiA+Pj4+Pj4+ICsNCj4gPj4+ Pj4+PiArIyMjIGBJZ25vcmVTdGFuZGFyZFBhdGhzYA0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiAr VGhpcyBwbHVnaW4gYnkgZGVmYXVsdCB3aWxsIGNoZWNrIHRoZSBiZWxvdyBzdGFuZGFyZCBwYXRo cy4gQQ0KPiA+Pj4+Pj4+IHBhY2thZ2UgY29uZmlndXJhdGlvbiBmaWxlIGNhbiBzcGVjaWZ5IGFu eSBvZiB0aGVzZQ0KPiA+Pj4+PiBwYXRocw0KPiA+Pj4+Pj4+ICt0byBiZSBpZ25vcmVkLg0KPiA+ Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArYGBgcHl0aG9uDQo+ID4+Pj4+Pj4gK1sNCj4gPj4+Pj4+PiAr IyBDIHNvdXJjZQ0KPiA+Pj4+Pj4+ICsiKi5jIiwNCj4gPj4+Pj4+PiArIiouaCINCj4gPj4+Pj4+ PiArXQ0KPiA+Pj4+Pj4+ICtgYGANCj4gPj4+Pj4+PiArDQo+ID4+Pj4+Pj4gKyMjIyBgT3V0cHV0 RmlsZURpZmZzYA0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArYEJvb2xlYW5gIC0gRGVmYXVsdCBp cyBgRmFsc2VgLg0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArSWYgYFRydWVgLCBvdXRwdXQgZGlm ZnMgb2YgZm9ybWF0dGluZyBjaGFuZ2VzIGludG8gdGhlIHRlc3QgY2FzZQ0KPiA+Pj4+Pj4+IGxv Zy4gVGhpcyBpcyBoZWxwZnVsIHRvIGV4YWN0bHkgdW5kZXJzdGFuZCB3aGF0DQo+ID4+Pj4+IGNo YW5nZXMNCj4gPj4+Pj4+PiArbmVlZCB0byBiZSBtYWRlIHRvIHRoZSBzb3VyY2UgY29kZSBpbiBv cmRlciB0byBmaXggYSBjb2RpbmcNCj4gPj4+Pj4+PiBzdGFuZGFyZCBjb21wbGlhbmNlIGlzc3Vl Lg0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArTm90ZSB0aGF0IGNhbGN1bGF0aW5nIHRoZSBmaWxl IGRpZmZzIG9uIGEgdmVyeSBsYXJnZSBzZXQgb2Ygb2YNCj4gPj4+Pj4+PiByZXN1bHRzIChlLmcu ID4xMDAgZmlsZXMpIGNhbiBzaWduaWZpY2FudGx5IHNsb3cNCj4gPj4+IGRvd24NCj4gPj4+Pj4+ PiArcGx1Z2luIGV4ZWN1dGlvbi4NCj4gPj4+Pj4+PiArDQo+ID4+Pj4+Pj4gKyMjIyBgU2tpcEdp dEV4Y2x1c2lvbnNgDQo+ID4+Pj4+Pj4gKw0KPiA+Pj4+Pj4+ICtgQm9vbGVhbmAgLSBEZWZhdWx0 IGlzIGBGYWxzZWAuDQo+ID4+Pj4+Pj4gKw0KPiA+Pj4+Pj4+ICtCeSBkZWZhdWx0LCBmaWxlcyBp biBwYXRocyBtYXRjaGVkIGluIGEgLmdpdGlnbm9yZSBmaWxlIG9yIGENCj4gPj4+Pj4+PiByZWNv Z25pemVkIGdpdCBzdWJtb2R1bGUgYXJlIGV4Y2x1ZGVkLiBJZiB0aGlzIG9wdGlvbg0KPiA+Pj4+ Pj4+ICtpcyBgVHJ1ZWAsIHRoZSBwbHVnaW4gd2lsbCBub3QgYXR0ZW1wdCB0byByZWNvZ25pemUg dGhlc2UgZmlsZXMNCj4gPj4+Pj4+PiBhbmQgZXhjbHVkZSB0aGVtLg0KPiA+Pj4+Pj4+ICsNCj4g Pj4+Pj4+PiArIyMgSGlnaC1MZXZlbCBQbHVnaW4gT3BlcmF0aW9uDQo+ID4+Pj4+Pj4gKw0KPiA+ Pj4+Pj4+ICtUaGlzIHBsdWdpbiBnZW5lcmF0ZXMgdHdvIG1haW4gc2V0cyBvZiB0ZW1wb3Jhcnkg ZmlsZXM6DQo+ID4+Pj4+Pj4gKw0KPiA+Pj4+Pj4+ICvCoCAxLiBBIHdvcmtpbmcgZGlyZWN0b3J5 IGluIHRoZSBkaXJlY3RvcnkNCj4gPj4+Pj4+PiBgQnVpbGQvLnB5dG9vbC9QbHVnaW4vVW5jcnVz dGlmeWANCj4gPj4+Pj4+PiArwqAgMi4gRm9yIGVhY2ggc291cmNlIGZpbGUgd2l0aCBmb3JtYXR0 aW5nIGVycm9ycywgYSBzaWJsaW5nIGZpbGUNCj4gPj4+Pj4+PiB3aXRoIHRoZSBgLnVuY3J1c3Rp ZnlfcGx1Z2luYCBleHRlbnNpb24NCj4gPj4+Pj4+PiArDQo+ID4+Pj4+Pj4gK1RoZSB3b3JraW5n IGRpcmVjdG9yeSBjb250YWlucyB0ZW1wb3JhcnkgZmlsZXMgdW5pcXVlIHRvDQo+ID4+Pj4+Pj4g b3BlcmF0aW9uIG9mIHRoZSBwbHVnaW4uIEFsbCBvZiB0aGVzZSBmaWxlcyBhcmUgcmVtb3ZlZA0K PiA+Pj4gb24NCj4gPj4+Pj4+PiArZXhpdCBvZiB0aGUgcGx1Z2luIGluY2x1ZGluZyBzdWNjZXNz ZnVsIG9yIHVuc3VjY2Vzc2Z1bA0KPiA+Pj4+Pj4+IGV4ZWN1dGlvbiAoc3VjaCBhcyBhIFB5dGhv biBleGNlcHRpb24gb2NjdXJyaW5nKS4gSWYgZm9yDQo+ID4+PiBhbnkNCj4gPj4+Pj4+PiArcmVh c29uLCBhbnkgZmlsZXMgaW4gdGhlIHBhY2thZ2UgZXhpc3QgcHJpb3IgdG8gcnVubmluZyB0aGUN Cj4gPj4+Pj4+PiBwbHVnaW4gd2l0aCB0aGUgYC51bmNydXN0aWZ5X3BsdWdpbmAgZXh0ZW5zaW9u LCB0aGUNCj4gPj4+PiBwbHVnaW4NCj4gPj4+Pj4+PiArd2lsbCBpbmZvcm0gdGhlIHVzZXIgdG8g cmVtb3ZlIHRoZXNlIGZpbGVzIGFuZCBleGl0IGJlZm9yZQ0KPiA+Pj4+Pj4+IHJ1bm5pbmcgVW5j cnVzdGlmeS4gVGhpcyBpcyB0byBlbnN1cmUgdGhlIGFjY3VyYWN5IG9mDQo+ID4+PiB0aGUNCj4g Pj4+Pj4+PiArcmVzdWx0cyByZXBvcnRlZCBmcm9tIGVhY2ggZXhlY3V0aW9uIGluc3RhbmNlIG9m IHRoZSBwbHVnaW4uDQo+ID4+Pj4+Pj4gKw0KPiA+Pj4+Pj4+ICtUaGUgcGx1Z2luIGRldGVybWlu ZXMgdGhlIGxpc3Qgb2YgcmVsZXZhbnQgZmlsZXMgdG8gY2hlY2sgd2l0aA0KPiA+Pj4+Pj4+IFVu Y3J1c3RpZnkgYW5kIHRoZW4gaW52b2tlcyBVbmNydXN0aWZ5IHdpdGggdGhhdA0KPiA+Pj4gZmls ZQ0KPiA+Pj4+Pj4+ICtsaXN0LiBGb3IgYW55IGZpbGVzIG5vdCBjb21wbGlhbnQgdG8gdGhlIGNv bmZpZ3VyYXRpb24gZmlsZQ0KPiA+Pj4+Pj4+IHByb3ZpZGVkLCBVbmNydXN0aWZ5IHdpbGwgZ2Vu ZXJhdGUgYSBjb3JyZXNwb25kaW5nDQo+ID4+PiBmaWxlDQo+ID4+Pj4+Pj4gK3dpdGggdGhlIGAu dW5jcnVzdGlmeV9wbHVnaW5gIGV4dGVuc2lvbi4gVGhlIHBsdWdpbiBkaXNjb3ZlcnMNCj4gPj4+ Pj4+PiBhbGwgb2YgdGhlc2UgZmlsZXMuIElmIGFueSBzdWNoIGZpbGVzIGFyZSBwcmVzZW50LA0K PiA+Pj4+IHRoaXMNCj4gPj4+Pj4+PiAraW5kaWNhdGVzIGEgZm9ybWF0dGluZyBpc3N1ZSB3YXMg Zm91bmQgYW5kIHRoZSB0ZXN0IGlzIG1hcmtlZA0KPiA+Pj4+Pj4+IGZhaWxlZCAodW5sZXNzIGBB dWRpdE9ubHlgIG1vZGUgaXMgZW5hYmxlZCkuDQo+ID4+Pj4+Pj4gKw0KPiA+Pj4+Pj4+ICtUaGUg dGVzdCBjYXNlIGxvZyB3aWxsIGNvbnRhaW4gYSByZXBvcnQgb2Ygd2hpY2ggZmlsZXMgZmFpbGVk IHRvDQo+ID4+Pj4+Pj4gZm9ybWF0IHByb3Blcmx5LCBhbGxvd2luZyB0aGUgdXNlciB0byBydW4N Cj4gPj4+PiBVbmNydXN0aWZ5DQo+ID4+Pj4+Pj4gK2FnYWluc3QgdGhlIGZpbGUgbG9jYWxseSB0 byBmaXggdGhlIGlzc3VlLiBJZiB0aGUNCj4gPj4+Pj4+PiBgT3V0cHV0RmlsZURpZmZzYCBjb25m aWd1cmF0aW9uIG9wdGlvbiBpcyBzZXQgdG8gYFRydWVgLCB0aGUNCj4gPj4+PiBwbHVnaW4NCj4g Pj4+Pj4+PiArd2lsbCBvdXRwdXQgZGlmZiBjaHVua3MgZm9yIGFsbCBjb2RlIGZvcm1hdHRpbmcg aXNzdWVzIGluIHRoZQ0KPiA+Pj4+Pj4+IHRlc3QgY2FzZSBsb2cuDQo+ID4+Pj4+Pj4gZGlmZiAt LWdpdCBhLy5weXRvb2wvUGx1Z2luL1VuY3J1c3RpZnlDaGVjay9VbmNydXN0aWZ5Q2hlY2sucHkN Cj4gPj4+Pj4+PiBiLy5weXRvb2wvUGx1Z2luL1VuY3J1c3RpZnlDaGVjay9VbmNydXN0aWZ5Q2hl Y2sucHkNCj4gPj4+Pj4+PiBuZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiA+Pj4+Pj4+IGluZGV4IDAw MDAwMDAwMDAwMC4uNTk1MzQ0NjlhMmQzDQo+ID4+Pj4+Pj4gLS0tIC9kZXYvbnVsbA0KPiA+Pj4+ Pj4+ICsrKyBiLy5weXRvb2wvUGx1Z2luL1VuY3J1c3RpZnlDaGVjay9VbmNydXN0aWZ5Q2hlY2su cHkNCj4gPj4+Pj4+PiBAQCAtMCwwICsxLDYxNyBAQA0KPiA+Pj4+Pj4+ICsjIEBmaWxlIFVuY3J1 c3RpZnlDaGVjay5weQ0KPiA+Pj4+Pj4+ICsjDQo+ID4+Pj4+Pj4gKyMgQW4gZWRrMi1weXRvb2wg YmFzZWQgcGx1Z2luIHdyYXBwZXIgZm9yIFVuY3J1c3RpZnkNCj4gPj4+Pj4+PiArIw0KPiA+Pj4+ Pj4+ICsjIENvcHlyaWdodCAoYykgTWljcm9zb2Z0IENvcnBvcmF0aW9uLg0KPiA+Pj4+Pj4+ICsj IFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMi1DbGF1c2UtUGF0ZW50DQo+ID4+Pj4+Pj4g KyMjDQo+ID4+Pj4+Pj4gK2ltcG9ydCBjb25maWdwYXJzZXINCj4gPj4+Pj4+PiAraW1wb3J0IGRp ZmZsaWINCj4gPj4+Pj4+PiAraW1wb3J0IGVycm5vDQo+ID4+Pj4+Pj4gK2ltcG9ydCBsb2dnaW5n DQo+ID4+Pj4+Pj4gK2ltcG9ydCBvcw0KPiA+Pj4+Pj4+ICtpbXBvcnQgcGF0aGxpYg0KPiA+Pj4+ Pj4+ICtpbXBvcnQgc2h1dGlsDQo+ID4+Pj4+Pj4gK2ltcG9ydCB0aW1laXQNCj4gPj4+Pj4+PiAr ZnJvbSBlZGsydG9vbGV4dC5lbnZpcm9ubWVudCBpbXBvcnQgdmVyc2lvbl9hZ2dyZWdhdG9yDQo+ ID4+Pj4+Pj4gK2Zyb20gZWRrMnRvb2xleHQuZW52aXJvbm1lbnQucGx1Z2luX21hbmFnZXIgaW1w b3J0IFBsdWdpbk1hbmFnZXINCj4gPj4+Pj4+PiArZnJvbSBlZGsydG9vbGV4dC5lbnZpcm9ubWVu dC5wbHVnaW50eXBlcy5jaV9idWlsZF9wbHVnaW4gaW1wb3J0DQo+ID4+Pj4+Pj4gSUNpQnVpbGRQ bHVnaW4NCj4gPj4+Pj4+PiArZnJvbSBlZGsydG9vbGV4dC5lbnZpcm9ubWVudC5wbHVnaW50eXBl cy51ZWZpX2hlbHBlcl9wbHVnaW4NCj4gPj4+Pj4+PiBpbXBvcnQgSGVscGVyRnVuY3Rpb25zDQo+ ID4+Pj4+Pj4gK2Zyb20gZWRrMnRvb2xleHQuZW52aXJvbm1lbnQudmFyX2RpY3QgaW1wb3J0IFZh ckRpY3QNCj4gPj4+Pj4+PiArZnJvbSBlZGsydG9vbGxpYi5sb2cuanVuaXRfcmVwb3J0X2Zvcm1h dCBpbXBvcnQgSnVuaXRSZXBvcnRUZXN0Q2FzZQ0KPiA+Pj4+Pj4+ICtmcm9tIGVkazJ0b29sbGli LnVlZmkuZWRrMi5wYXRoX3V0aWxpdGllcyBpbXBvcnQgRWRrMlBhdGgNCj4gPj4+Pj4+PiArZnJv bSBlZGsydG9vbGxpYi51dGlsaXR5X2Z1bmN0aW9ucyBpbXBvcnTCoCBSdW5DbWQNCj4gPj4+Pj4+ PiArZnJvbSBpbyBpbXBvcnQgU3RyaW5nSU8NCj4gPj4+Pj4+PiArZnJvbSB0eXBpbmcgaW1wb3J0 IEFueSwgRGljdCwgTGlzdCwgVHVwbGUNCj4gPj4+Pj4+PiArDQo+ID4+Pj4+Pj4gKyMNCj4gPj4+ Pj4+PiArIyBQcm92aWRlIG1vcmUgdXNlciBmcmllbmRseSBtZXNzYWdlcyBmb3IgY2VydGFpbiBz Y2VuYXJpb3MNCj4gPj4+Pj4+PiArIw0KPiA+Pj4+Pj4+ICtjbGFzcyBVbmNydXN0aWZ5RXhjZXB0 aW9uKEV4Y2VwdGlvbik6DQo+ID4+Pj4+Pj4gK8KgwqDCoCBkZWYgX19pbml0X18oc2VsZiwgbWVz c2FnZSwgZXhpdF9jb2RlKToNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAgc3VwZXIoKS5fX2lu aXRfXyhtZXNzYWdlKQ0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoCBzZWxmLmV4aXRfY29kZSA9 IGV4aXRfY29kZQ0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArDQo+ID4+Pj4+Pj4gK2NsYXNzIFVu Y3J1c3RpZnlBcHBFbnZWYXJOb3RGb3VuZEV4Y2VwdGlvbihVbmNydXN0aWZ5RXhjZXB0aW9uKToN Cj4gPj4+Pj4+PiArwqDCoMKgIGRlZiBfX2luaXRfXyhzZWxmLCBtZXNzYWdlKToNCj4gPj4+Pj4+ PiArwqDCoMKgwqDCoMKgwqAgc3VwZXIoKS5fX2luaXRfXyhtZXNzYWdlLCAtMTAxKQ0KPiA+Pj4+ Pj4+ICsNCj4gPj4+Pj4+PiArDQo+ID4+Pj4+Pj4gK2NsYXNzIFVuY3J1c3RpZnlBcHBWZXJzaW9u RXJyb3JFeGNlcHRpb24oVW5jcnVzdGlmeUV4Y2VwdGlvbik6DQo+ID4+Pj4+Pj4gK8KgwqDCoCBk ZWYgX19pbml0X18oc2VsZiwgbWVzc2FnZSk6DQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgIHN1 cGVyKCkuX19pbml0X18obWVzc2FnZSwgLTEwMikNCj4gPj4+Pj4+PiArDQo+ID4+Pj4+Pj4gKw0K PiA+Pj4+Pj4+ICtjbGFzcyBVbmNydXN0aWZ5QXBwRXhlY3V0aW9uRXhjZXB0aW9uKFVuY3J1c3Rp ZnlFeGNlcHRpb24pOg0KPiA+Pj4+Pj4+ICvCoMKgwqAgZGVmIF9faW5pdF9fKHNlbGYsIG1lc3Nh Z2UpOg0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoCBzdXBlcigpLl9faW5pdF9fKG1lc3NhZ2Us IC0xMDMpDQo+ID4+Pj4+Pj4gKw0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArY2xhc3MNCj4gPj4+ Pj4+PiBVbmNydXN0aWZ5U3RhbGVQbHVnaW5Gb3JtYXR0ZWRGaWxlc0V4Y2VwdGlvbihVbmNydXN0 aWZ5RXhjZXB0aW9uKToNCj4gPj4+Pj4+PiArwqDCoMKgIGRlZiBfX2luaXRfXyhzZWxmLCBtZXNz YWdlKToNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAgc3VwZXIoKS5fX2luaXRfXyhtZXNzYWdl LCAtMTIwKQ0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArDQo+ID4+Pj4+Pj4gK2NsYXNzDQo+ID4+ Pj4+Pj4gVW5jcnVzdGlmeUlucHV0RmlsZUNyZWF0aW9uRXJyb3JFeGNlcHRpb24oVW5jcnVzdGlm eUV4Y2VwdGlvbik6DQo+ID4+Pj4+Pj4gK8KgwqDCoCBkZWYgX19pbml0X18oc2VsZiwgbWVzc2Fn ZSk6DQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgIHN1cGVyKCkuX19pbml0X18obWVzc2FnZSwg LTEyMSkNCj4gPj4+Pj4+PiArDQo+ID4+Pj4+Pj4gK2NsYXNzDQo+ID4+Pj4+Pj4gVW5jcnVzdGlm eUludmFsaWRJZ25vcmVTdGFuZGFyZFBhdGhzRXhjZXB0aW9uKFVuY3J1c3RpZnlFeGNlcHRpb24p Og0KPiA+Pj4+Pj4+ICvCoMKgwqAgZGVmIF9faW5pdF9fKHNlbGYsIG1lc3NhZ2UpOg0KPiA+Pj4+ Pj4+ICvCoMKgwqDCoMKgwqDCoCBzdXBlcigpLl9faW5pdF9fKG1lc3NhZ2UsIC0xMjIpDQo+ID4+ Pj4+Pj4gKw0KPiA+Pj4+Pj4+ICtjbGFzcyBVbmNydXN0aWZ5R2l0SWdub3JlRmlsZUV4Y2VwdGlv bihVbmNydXN0aWZ5RXhjZXB0aW9uKToNCj4gPj4+Pj4+PiArwqDCoMKgIGRlZiBfX2luaXRfXyhz ZWxmLCBtZXNzYWdlKToNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAgc3VwZXIoKS5fX2luaXRf XyhtZXNzYWdlLCAtMTQwKQ0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArDQo+ID4+Pj4+Pj4gK2Ns YXNzIFVuY3J1c3RpZnlHaXRTdWJtb2R1bGVFeGNlcHRpb24oVW5jcnVzdGlmeUV4Y2VwdGlvbik6 DQo+ID4+Pj4+Pj4gK8KgwqDCoCBkZWYgX19pbml0X18oc2VsZiwgbWVzc2FnZSk6DQo+ID4+Pj4+ Pj4gK8KgwqDCoMKgwqDCoMKgIHN1cGVyKCkuX19pbml0X18obWVzc2FnZSwgLTE0MSkNCj4gPj4+ Pj4+PiArDQo+ID4+Pj4+Pj4gKw0KPiA+Pj4+Pj4+ICtjbGFzcyBVbmNydXN0aWZ5Q2hlY2soSUNp QnVpbGRQbHVnaW4pOg0KPiA+Pj4+Pj4+ICvCoMKgwqAgIiIiDQo+ID4+Pj4+Pj4gK8KgwqDCoCBB IENpQnVpbGRQbHVnaW4gdGhhdCB1c2VzIFVuY3J1c3RpZnkgdG8gY2hlY2sgdGhlIHNvdXJjZQ0K PiA+Pj4+Pj4+IGZpbGVzIGluIHRoZQ0KPiA+Pj4+Pj4+ICvCoMKgwqAgcGFja2FnZSBiZWluZyB0 ZXN0ZWQgZm9yIGNvZGluZyBzdGFuZGFyZCBpc3N1ZXMuDQo+ID4+Pj4+Pj4gKw0KPiA+Pj4+Pj4+ ICvCoMKgwqAgQnkgZGVmYXVsdCwgdGhlIHBsdWdpbiBydW5zIGFnYWluc3Qgc3RhbmRhcmQgQyBz b3VyY2UgZmlsZQ0KPiA+Pj4+Pj4+IGV4dGVuc2lvbnMgYnV0DQo+ID4+Pj4+Pj4gK8KgwqDCoCBp dHMgY29uZmlndXJhdGlvbiBjYW4gYmUgbW9kaWZpZWQgdGhyb3VnaCBpdHMgY29uZmlndXJhdGlv bg0KPiA+Pj4+Pj4+IGZpbGUuDQo+ID4+Pj4+Pj4gKw0KPiA+Pj4+Pj4+ICvCoMKgwqAgQ29uZmln dXJhdGlvbiBvcHRpb25zOg0KPiA+Pj4+Pj4+ICvCoMKgwqAgIlVuY3J1c3RpZnlDaGVjayI6IHsN Cj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAgIkFkZGl0aW9uYWxJbmNsdWRlUGF0aHMiOiBbXSwg IyBBZGRpdGlvbmFsIHBhdGhzIHRvDQo+ID4+Pj4+Pj4gY2hlY2sgZm9ybWF0dGluZyAod2lsZGNh cmRzIHN1cHBvcnRlZCkuDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgICJBdWRpdE9ubHkiOiBG YWxzZSzCoMKgwqDCoMKgwqDCoMKgwqDCoCAjIERvbid0IGZhaWwgdGhlIGJ1aWxkIGlmDQo+ID4+ Pj4+Pj4gdGhlcmUgYXJlIGVycm9ycy7CoCBKdXN0IGxvZyB0aGVtLg0KPiA+Pj4+Pj4+ICvCoMKg wqDCoMKgwqDCoCAiQ29uZmlnRmlsZVBhdGgiOiAiIizCoMKgwqDCoMKgwqDCoMKgICMgQ3VzdG9t IHBhdGggdG8gYW4NCj4gPj4+Pj4+PiBVbmNydXN0aWZ5IGNvbmZpZyBmaWxlLg0KPiA+Pj4+Pj4+ ICvCoMKgwqDCoMKgwqDCoCAiSWdub3JlU3RhbmRhcmRQYXRocyI6IFtdLMKgwqDCoCAjIFN0YW5k YXJkIFBsdWdpbiBkZWZpbmVkDQo+ID4+Pj4+Pj4gcGF0aHMgdGhhdCBzaG91bGQgYmUgaWdub3Jl ZC4NCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAgIk91dHB1dEZpbGVEaWZmcyI6IEZhbHNlLMKg wqDCoMKgICMgT3V0cHV0IGNodW5rcyBvZg0KPiA+Pj4+Pj4+IGZvcm1hdHRpbmcgZGlmZnMgaW4g dGhlIHRlc3QgY2FzZSBsb2cuDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICMgVGhpcyBj YW4gc2lnbmlmaWNhbnRseQ0KPiA+Pj4+Pj4+IHNsb3cgZG93biB0aGUgcGx1Z2luIG9uIHZlcnkg bGFyZ2UgcGFja2FnZXMuDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgICJTa2lwR2l0RXhjbHVz aW9ucyI6IEZhbHNlwqDCoMKgICMgRG9uJ3QgZXhjbHVkZSBnaXQNCj4gPj4+Pj4+PiBpZ25vcmVk IGZpbGVzIGFuZCBmaWxlcyBpbiBnaXQgc3VibW9kdWxlcy4NCj4gPj4+Pj4+PiArwqDCoMKgIH0N Cj4gPj4+Pj4+PiArwqDCoMKgICIiIg0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArwqDCoMKgICMN Cj4gPj4+Pj4+PiArwqDCoMKgICMgQnkgZGVmYXVsdCwgdXNlIGFuICJ1bmNydXN0aWZ5LmNmZyIg Y29uZmlnIGZpbGUgaW4gdGhlDQo+ID4+Pj4+Pj4gcGx1Z2luIGRpcmVjdG9yeQ0KPiA+Pj4+Pj4+ ICvCoMKgwqAgIyBBIHBhY2thZ2UgY2FuIG92ZXJyaWRlIHRoaXMgcGF0aCB2aWEgIkNvbmZpZ0Zp bGVQYXRoIg0KPiA+Pj4+Pj4+ICvCoMKgwqAgIw0KPiA+Pj4+Pj4+ICvCoMKgwqAgIyBOb3RlOiBW YWx1ZXMgc3BlY2lmaWVkIHZpYSAiQ29uZmlnRmlsZVBhdGgiIGFyZSByZWxhdGl2ZQ0KPiA+Pj4+ Pj4+IHRvIHRoZSBwYWNrYWdlDQo+ID4+Pj4+Pj4gK8KgwqDCoCAjDQo+ID4+Pj4+Pj4gK8KgwqDC oCBERUZBVUxUX0NPTkZJR19GSUxFX1BBVEggPSBvcy5wYXRoLmpvaW4oDQo+ID4+Pj4+Pj4gK8Kg wqDCoMKgwqDCoMKgIHBhdGhsaWIuUGF0aChfX2ZpbGVfXykucGFyZW50LnJlc29sdmUoKSwgInVu Y3J1c3RpZnkuY2ZnIikNCj4gPj4+Pj4+PiArDQo+ID4+Pj4+Pj4gK8KgwqDCoCAjDQo+ID4+Pj4+ Pj4gK8KgwqDCoCAjIFRoZSBleHRlbnNpb24gdXNlZCBmb3IgZm9ybWF0dGVkIGZpbGVzIHByb2R1 Y2VkIGJ5IHRoaXMNCj4gPj4+Pj4+PiBwbHVnaW4NCj4gPj4+Pj4+PiArwqDCoMKgICMNCj4gPj4+ Pj4+PiArwqDCoMKgIEZPUk1BVFRFRF9GSUxFX0VYVEVOU0lPTiA9ICIudW5jcnVzdGlmeV9wbHVn aW4iDQo+ID4+Pj4+Pj4gKw0KPiA+Pj4+Pj4+ICvCoMKgwqAgIw0KPiA+Pj4+Pj4+ICvCoMKgwqAg IyBBIHBhY2thZ2UgY2FuIGFkZCBhbnkgYWRkaXRpb25hbCBwYXRocyB3aXRoDQo+ID4+Pj4+Pj4g IkFkZGl0aW9uYWxJbmNsdWRlUGF0aHMiDQo+ID4+Pj4+Pj4gK8KgwqDCoCAjIEEgcGFja2FnZSBj YW4gcmVtb3ZlIGFueSBvZiB0aGVzZSBwYXRocyB3aXRoDQo+ID4+Pj4+Pj4gIklnbm9yZVN0YW5k YXJkUGF0aHMiDQo+ID4+Pj4+Pj4gK8KgwqDCoCAjDQo+ID4+Pj4+Pj4gK8KgwqDCoCBTVEFOREFS RF9QTFVHSU5fREVGSU5FRF9QQVRIUyA9ICgiKi5jIiwgIiouaCIpDQo+ID4+Pj4+Pj4gKw0KPiA+ Pj4+Pj4+ICvCoMKgwqAgIw0KPiA+Pj4+Pj4+ICvCoMKgwqAgIyBUaGUgVW5jcnVzdGlmeSBhcHBs aWNhdGlvbiBwYXRoIHNob3VsZCBzZXQgaW4gdGhpcw0KPiA+Pj4+Pj4+IGVudmlyb25tZW50IHZh cmlhYmxlDQo+ID4+Pj4+Pj4gK8KgwqDCoCAjDQo+ID4+Pj4+Pj4gK8KgwqDCoCBVTkNSVVNUSUZZ X1BBVEhfRU5WX0tFWSA9ICJVTkNSVVNUSUZZX0NJX1BBVEgiDQo+ID4+Pj4+Pj4gKw0KPiA+Pj4+ Pj4+ICvCoMKgwqAgZGVmIEdldFRlc3ROYW1lKHNlbGYsIHBhY2thZ2VuYW1lOiBzdHIsIGVudmly b25tZW50Og0KPiA+Pj4+Pj4+IFZhckRpY3QpIC0+IFR1cGxlOg0KPiA+Pj4+Pj4+ICvCoMKgwqDC oMKgwqDCoCAiIiIgUHJvdmlkZSB0aGUgdGVzdGNhc2UgbmFtZSBhbmQgY2xhc3NuYW1lIGZvciB1 c2UgaW4NCj4gPj4+Pj4+PiByZXBvcnRpbmcNCj4gPj4+Pj4+PiArDQo+ID4+Pj4+Pj4gK8KgwqDC oMKgwqDCoMKgwqDCoMKgwqAgQXJnczoNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgcGFja2FnZW5hbWU6IHN0cmluZyBjb250YWluaW5nIG5hbWUgb2YgcGFja2FnZSB0bw0K PiA+Pj4+Pj4+IGJ1aWxkDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGVu dmlyb25tZW50OiBUaGUgVmFyRGljdCBmb3IgdGhlIHRlc3QgdG8gcnVuIGluDQo+ID4+Pj4+Pj4g K8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgUmV0dXJuczoNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgIEEgdHVwbGUgY29udGFpbmluZyB0aGUgdGVzdGNhc2UgbmFtZSBh bmQgdGhlDQo+ID4+Pj4+Pj4gY2xhc3NuYW1lDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCAodGVzdGNhc2VuYW1lLCBjbGFzc25hbWUpDQo+ID4+Pj4+Pj4gK8KgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB0ZXN0Y2xhc3NuYW1lOiBhIGRlc2NyaXB0aXZlIHN0 cmluZyBmb3IgdGhlDQo+ID4+Pj4+Pj4gdGVzdGNhc2UgY2FuIGluY2x1ZGUgd2hpdGVzcGFjZQ0K PiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgY2xhc3NuYW1lOiBzaG91 bGQgYmUgcGF0dGVybmVkDQo+ID4+Pj4+Pj4gPHBhY2thZ2VuYW1lPi48cGx1Z2luPi48b3B0aW9u YWxseSBhbnkgdW5pcXVlIGNvbmRpdGlvbj4NCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAgIiIi DQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgIHJldHVybiAoIkNoZWNrIGZpbGUgY29kaW5nIHN0 YW5kYXJkIGNvbXBsaWFuY2UgaW4gIiArDQo+ID4+Pj4+Pj4gcGFja2FnZW5hbWUsIHBhY2thZ2Vu YW1lICsgIi5VbmNydXN0aWZ5Q2hlY2siKQ0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArwqDCoMKg IGRlZiBSdW5CdWlsZFBsdWdpbihzZWxmLCBwYWNrYWdlX3JlbF9wYXRoOiBzdHIsIGVkazJfcGF0 aDoNCj4gPj4+Pj4+PiBFZGsyUGF0aCwgcGFja2FnZV9jb25maWc6IERpY3Rbc3RyLCBMaXN0W3N0 cl1dLA0KPiA+Pj4+Pj4+IGVudmlyb25tZW50X2NvbmZpZzogQW55LCBwbHVnaW5fbWFuYWdlcjog UGx1Z2luTWFuYWdlciwNCj4gPj4+Pj4+PiBwbHVnaW5fbWFuYWdlcl9oZWxwZXI6IEhlbHBlckZ1 bmN0aW9ucywgdGM6DQo+ID4+Pj4+IEp1bml0UmVwb3J0VGVzdENhc2UsDQo+ID4+Pj4+Pj4gb3V0 cHV0X3N0cmVhbT1Ob25lKSAtPiBpbnQ6DQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgICIiIg0K PiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoCBFeHRlcm5hbCBmdW5jdGlvbiBvZiBwbHVnaW4uIFRo aXMgZnVuY3Rpb24gaXMgdXNlZCB0bw0KPiA+Pj4+Pj4+IHBlcmZvcm0gdGhlIHRhc2sgb2YgdGhl IENpQnVpbGQgUGx1Z2luLg0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAg QXJnczoNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgIC0gcGFja2FnZV9yZWxfcGF0aDog ZWRrMiB3b3Jrc3BhY2UgcmVsYXRpdmUgcGF0aCB0bw0KPiA+Pj4+Pj4+IHRoZSBwYWNrYWdlDQo+ ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoCAtIGVkazJfcGF0aDogRWRrMlBhdGggb2JqZWN0 IHdpdGggd29ya3NwYWNlIGFuZA0KPiA+Pj4+Pj4+IHBhY2thZ2VzIHBhdGhzDQo+ID4+Pj4+Pj4g K8KgwqDCoMKgwqDCoMKgwqDCoCAtIHBhY2thZ2VfY29uZmlnOiBEaWN0aW9uYXJ5IHdpdGggdGhl IHBhY2thZ2UNCj4gPj4+Pj4+PiBjb25maWd1cmF0aW9uDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDC oMKgwqDCoCAtIGVudmlyb25tZW50X2NvbmZpZzogRW52aXJvbm1lbnQgY29uZmlndXJhdGlvbg0K PiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqAgLSBwbHVnaW5fbWFuYWdlcjogUGx1Z2luIE1h bmFnZXIgSW5zdGFuY2UNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgIC0gcGx1Z2luX21h bmFnZXJfaGVscGVyOiBQbHVnaW4gTWFuYWdlciBIZWxwZXIgSW5zdGFuY2UNCj4gPj4+Pj4+PiAr wqDCoMKgwqDCoMKgwqDCoMKgIC0gdGM6IEpVbml0IHRlc3QgY2FzZQ0KPiA+Pj4+Pj4+ICvCoMKg wqDCoMKgwqDCoMKgwqAgLSBvdXRwdXRfc3RyZWFtOiBUaGUgU3RyaW5nSU8gb3V0cHV0IHN0cmVh bSBmcm9tIHRoaXMNCj4gPj4+Pj4+PiBwbHVnaW4gKGxvZ2dpbmcpDQo+ID4+Pj4+Pj4gKw0KPiA+ Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoCBSZXR1cm5zDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKg wqDCoCA+MCA6IE51bWJlciBvZiBlcnJvcnMgZm91bmQNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKg wqDCoMKgIDDCoCA6IFBhc3NlZCBzdWNjZXNzZnVsbHkNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKg wqDCoMKgIC0xIDogU2tpcHBlZCBmb3IgbWlzc2luZyBwcmVyZXENCj4gPj4+Pj4+PiArwqDCoMKg wqDCoMKgwqAgIiIiDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgIHRyeToNCj4gPj4+Pj4+PiAr wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjIEluaXRpYWxpemUgcGx1Z2luIGFuZCBjaGVjayBwcmUt cmVxdWlzaXRlcy4NCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBzZWxmLl9pbml0 aWFsaXplX2Vudmlyb25tZW50X2luZm8oDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoCBwYWNrYWdlX3JlbF9wYXRoLCBlZGsyX3BhdGgsIHBhY2thZ2VfY29uZmlnLCB0 YykNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBzZWxmLl9pbml0aWFsaXplX2Nv bmZpZ3VyYXRpb24oKQ0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHNlbGYuX2No ZWNrX2Zvcl9wcmVleGlzdGluZ19mb3JtYXR0ZWRfZmlsZXMoKQ0KPiA+Pj4+Pj4+ICsNCj4gPj4+ Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjIExvZyBpbXBvcnRhbnQgY29udGV4dCBpbmZv cm1hdGlvbi4NCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBzZWxmLl9sb2dfdW5j cnVzdGlmeV9hcHBfaW5mbygpDQo+ID4+Pj4+Pj4gKw0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDC oMKgwqDCoMKgICMgR2V0IHRlbXBsYXRlIGZpbGUgY29udGVudHMgaWYgc3BlY2lmaWVkDQo+ID4+ Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgc2VsZi5fZ2V0X3RlbXBsYXRlX2ZpbGVfY29u dGVudHMoKQ0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAj IENyZWF0ZSBtZXRhIGlucHV0IGZpbGVzICYgZGlyZWN0b3JpZXMNCj4gPj4+Pj4+PiArwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCBzZWxmLl9jcmVhdGVfdGVtcF93b3JraW5nX2RpcmVjdG9yeSgpDQo+ ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgc2VsZi5fY3JlYXRlX3VuY3J1c3RpZnlf ZmlsZV9saXN0X2ZpbGUoKQ0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCBzZWxmLl9ydW5fdW5jcnVzdGlmeSgpDQo+ID4+Pj4+Pj4gKw0KPiA+Pj4+Pj4+ICvC oMKgwqDCoMKgwqDCoMKgwqDCoMKgICMgUG9zdC1leGVjdXRpb24gYWN0aW9ucy4NCj4gPj4+Pj4+ PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBzZWxmLl9wcm9jZXNzX3VuY3J1c3RpZnlfcmVzdWx0 cygpDQo+ID4+Pj4+Pj4gKw0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoCBleGNlcHQgVW5jcnVz dGlmeUV4Y2VwdGlvbiBhcyBlOg0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHNl bGYuX3RjLkxvZ1N0ZEVycm9yKA0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgZiJVbmNydXN0aWZ5IGVycm9yIHtlLmV4aXRfY29kZX0uDQo+ID4+Pj4+Pj4gRGV0YWls czpcblxue3N0cihlKX0iKQ0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGxvZ2dp bmcud2FybmluZygNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGYi VW5jcnVzdGlmeSBlcnJvciB7ZS5leGl0X2NvZGV9Lg0KPiA+Pj4+Pj4+IERldGFpbHM6XG5cbntz dHIoZSl9IikNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCByZXR1cm4gLTENCj4g Pj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAgZWxzZToNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCBpZiBzZWxmLl9mb3JtYXR0ZWRfZmlsZV9lcnJvcl9jb3VudCA+IDA6DQo+ID4+Pj4+ Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBpZiBzZWxmLl9hdWRpdF9vbmx5X21v ZGU6DQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGxv Z2dpbmcuaW5mbygNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCAiU2V0dGluZyB0ZXN0IGFzIHNraXBwZWQgc2luY2UgQXVkaXRPbmx5DQo+ ID4+Pj4+Pj4gaXMgZW5hYmxlZCIpDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgIHNlbGYuX3RjLlNldFNraXBwZWQoKQ0KPiA+Pj4+Pj4+ICvCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCByZXR1cm4gLTENCj4gPj4+Pj4+PiArwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGVsc2U6DQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHNlbGYuX3RjLlNldEZhaWxlZCgNCj4gPj4+Pj4+ PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBmIntzZWxm Ll9wbHVnaW5fbmFtZX0gZmFpbGVkIGR1ZSB0bw0KPiA+Pj4+Pj4+IHtzZWxmLl9mb3JtYXR0ZWRf ZmlsZV9lcnJvcl9jb3VudH0gaW5jb3JyZWN0bHkNCj4gPj4+IGZvcm1hdHRlZA0KPiA+Pj4+Pj4+ IGZpbGVzLiIsICJDSEVDS19GQUlMRUQiKQ0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDC oMKgIGVsc2U6DQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBzZWxm Ll90Yy5TZXRTdWNjZXNzKCkNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCByZXR1 cm4gc2VsZi5fZm9ybWF0dGVkX2ZpbGVfZXJyb3JfY291bnQNCj4gPj4+Pj4+PiArwqDCoMKgwqDC oMKgwqAgZmluYWxseToNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBzZWxmLl9j bGVhbnVwX3RlbXBvcmFyeV9mb3JtYXR0ZWRfZmlsZXMoKQ0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgIHNlbGYuX2NsZWFudXBfdGVtcG9yYXJ5X2RpcmVjdG9yeSgpDQo+ID4+Pj4+ Pj4gKw0KPiA+Pj4+Pj4+ICvCoMKgwqAgZGVmIF9pbml0aWFsaXplX2NvbmZpZ3VyYXRpb24oc2Vs ZikgLT4gTm9uZToNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAgIiIiDQo+ID4+Pj4+Pj4gK8Kg wqDCoMKgwqDCoMKgIEluaXRpYWxpemVzIHBsdWdpbiBjb25maWd1cmF0aW9uLg0KPiA+Pj4+Pj4+ ICvCoMKgwqDCoMKgwqDCoCAiIiINCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAgc2VsZi5faW5p dGlhbGl6ZV9hcHBfaW5mbygpDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgIHNlbGYuX2luaXRp YWxpemVfY29uZmlnX2ZpbGVfaW5mbygpDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgIHNlbGYu X2luaXRpYWxpemVfZmlsZV90b19mb3JtYXRfaW5mbygpDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDC oMKgIHNlbGYuX2luaXRpYWxpemVfdGVzdF9jYXNlX291dHB1dF9vcHRpb25zKCkNCj4gPj4+Pj4+ PiArDQo+ID4+Pj4+Pj4gK8KgwqDCoCBkZWYgX2NoZWNrX2Zvcl9wcmVleGlzdGluZ19mb3JtYXR0 ZWRfZmlsZXMoc2VsZikgLT4gTm9uZToNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAgIiIiDQo+ ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgIENoZWNrcyBpZiBhbnkgZm9ybWF0dGVkIGZpbGVzIGZy b20gcHJpb3IgZXhlY3V0aW9uIGFyZQ0KPiA+Pj4+Pj4+IHByZXNlbnQuDQo+ID4+Pj4+Pj4gKw0K PiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoCBFeGlzdGVuY2Ugb2Ygc3VjaCBmaWxlcyBpcyBhbiB1 bmV4cGVjdGVkIGNvbmRpdGlvbi4gVGhpcw0KPiA+Pj4+Pj4+IG1pZ2h0IHJlc3VsdA0KPiA+Pj4+ Pj4+ICvCoMKgwqDCoMKgwqDCoCBmcm9tIGFuIGVycm9yIHRoYXQgb2NjdXJyZWQgZHVyaW5nIGEg cHJldmlvdXMgcnVuIG9yIGENCj4gPj4+Pj4+PiBwcmVtYXR1cmUgZXhpdCBmcm9tIGEgZGVidWcg c2NlbmFyaW8uIEluIGFueSBjYXNlLA0KPiA+Pj4+IHRoZQ0KPiA+Pj4+Pj4+IHBhY2thZ2Ugc2hv dWxkIGJlIGNsZWFuIGJlZm9yZSBzdGFydGluZyBhIG5ldyBydW4uDQo+ID4+Pj4+Pj4gK8KgwqDC oMKgwqDCoMKgICIiIg0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoCBwcmVfZXhpc3RpbmdfZm9y bWF0dGVkX2ZpbGVfY291bnQgPSBsZW4oDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKg wqAgW3N0cihwYXRoLnJlc29sdmUoKSkgZm9yIHBhdGggaW4NCj4gPj4+Pj4+PiBwYXRobGliLlBh dGgoc2VsZi5fYWJzX3BhY2thZ2VfcGF0aCkucmdsb2IoZicqe1VuY3J1c3RpZnlDaGVjay5GT1JN QVRURURfRklMRV9FWFRFTlNJT059JyldKQ0KPiA+Pj4+Pj4+DQo+ID4+Pj4+Pj4gKw0KPiA+Pj4+ Pj4+ICvCoMKgwqDCoMKgwqDCoCBpZiBwcmVfZXhpc3RpbmdfZm9ybWF0dGVkX2ZpbGVfY291bnQg PiAwOg0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHJhaXNlIFVuY3J1c3RpZnlT dGFsZVBsdWdpbkZvcm1hdHRlZEZpbGVzRXhjZXB0aW9uKA0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqAgZiJ7cHJlX2V4aXN0aW5nX2Zvcm1hdHRlZF9maWxlX2NvdW50 fSBmb3JtYXR0ZWQNCj4gPj4+Pj4+PiBmaWxlcyBhbHJlYWR5IGV4aXN0LiBUbyBwcmV2ZW50IG92 ZXJ3cml0aW5nIHRoZXNlDQo+ID4+Pj4+IGZpbGVzLA0KPiA+Pj4+Pj4+IHBsZWFzZSByZW1vdmUg dGhlbSBiZWZvcmUgcnVubmluZyB0aGlzIHBsdWdpbi4iKQ0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+ PiArwqDCoMKgIGRlZiBfY2xlYW51cF90ZW1wb3JhcnlfZGlyZWN0b3J5KHNlbGYpIC0+IE5vbmU6 DQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgICIiIg0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDC oCBDbGVhbnMgdXAgdGhlIHRlbXBvcmFyeSBkaXJlY3RvcnkgdXNlZCBmb3IgdGhpcw0KPiA+Pj4+ Pj4+IGV4ZWN1dGlvbiBpbnN0YW5jZS4NCj4gPj4+Pj4+PiArDQo+ID4+Pj4+Pj4gK8KgwqDCoMKg wqDCoMKgIFRoaXMgcmVtb3ZlcyB0aGUgZGlyZWN0b3J5IGFuZCBhbGwgZmlsZXMgY3JlYXRlZCBk dXJpbmcNCj4gPj4+Pj4+PiB0aGlzIGluc3RhbmNlLg0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDC oCAiIiINCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAgaWYgaGFzYXR0cihzZWxmLCAnX3dvcmtp bmdfZGlyJyk6DQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgc2VsZi5fcmVtb3Zl X3RyZWUoc2VsZi5fd29ya2luZ19kaXIpDQo+ID4+Pj4+Pj4gKw0KPiA+Pj4+Pj4+ICvCoMKgwqAg ZGVmIF9jbGVhbnVwX3RlbXBvcmFyeV9mb3JtYXR0ZWRfZmlsZXMoc2VsZikgLT4gTm9uZToNCj4g Pj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAgIiIiDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgIENs ZWFucyB1cCB0aGUgdGVtcG9yYXJ5IGZvcm1tYXR0ZWQgZmlsZXMgcHJvZHVjZWQgYnkNCj4gPj4+ Pj4+PiBVbmNydXN0aWZ5Lg0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAg VGhpcyB3aWxsIHJlY3Vyc2l2ZWx5IHJlbW92ZSBhbGwgZm9ybWF0dGVkIGZpbGVzDQo+ID4+Pj4+ Pj4gZ2VuZXJhdGVkIGJ5IFVuY3J1c3RpZnkNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAgZHVy aW5nIHRoaXMgZXhlY3V0aW9uIGluc3RhbmNlLg0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoCAi IiINCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAgaWYgaGFzYXR0cihzZWxmLCAnX2Fic19wYWNr YWdlX3BhdGgnKToNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBmb3JtYXR0ZWRf ZmlsZXMgPSBbc3RyKHBhdGgucmVzb2x2ZSgpKSBmb3IgcGF0aCBpbg0KPiA+Pj4+Pj4+IHBhdGhs aWIuUGF0aCgNCj4gPj4+Pj4+PiArDQo+ID4+Pj4+Pj4gc2VsZi5fYWJzX3BhY2thZ2VfcGF0aCku cmdsb2IoZicqe1VuY3J1c3RpZnlDaGVjay5GT1JNQVRURURfRklMRV9FWFRFTlNJT059JyldDQo+ ID4+Pj4+Pj4NCj4gPj4+Pj4+PiArDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAg Zm9yIGZvcm1hdHRlZF9maWxlIGluIGZvcm1hdHRlZF9maWxlczoNCj4gPj4+Pj4+PiArwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIG9zLnJlbW92ZShmb3JtYXR0ZWRfZmlsZSkNCj4gPj4+ Pj4+PiArDQo+ID4+Pj4+Pj4gK8KgwqDCoCBkZWYgX2NyZWF0ZV90ZW1wX3dvcmtpbmdfZGlyZWN0 b3J5KHNlbGYpIC0+IE5vbmU6DQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgICIiIg0KPiA+Pj4+ Pj4+ICvCoMKgwqDCoMKgwqDCoCBDcmVhdGVzIHRoZSB0ZW1wb3JhcnkgZGlyZWN0b3J5IHVzZWQg Zm9yIHRoaXMgZXhlY3V0aW9uDQo+ID4+Pj4+Pj4gaW5zdGFuY2UuDQo+ID4+Pj4+Pj4gK8KgwqDC oMKgwqDCoMKgICIiIg0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoCBzZWxmLl93b3JraW5nX2Rp ciA9IG9zLnBhdGguam9pbigNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBzZWxm Ll9hYnNfd29ya3NwYWNlX3BhdGgsICJCdWlsZCIsICIucHl0b29sIiwNCj4gPj4+Pj4+PiAiUGx1 Z2luIiwgZiJ7c2VsZi5fcGx1Z2luX25hbWV9IikNCj4gPj4+Pj4+PiArDQo+ID4+Pj4+Pj4gK8Kg wqDCoMKgwqDCoMKgIHRyeToNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBwYXRo bGliLlBhdGgoc2VsZi5fd29ya2luZ19kaXIpLm1rZGlyKHBhcmVudHM9VHJ1ZSwNCj4gPj4+Pj4+ PiBleGlzdF9vaz1UcnVlKQ0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoCBleGNlcHQgT1NFcnJv ciBhcyBlOg0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHJhaXNlIFVuY3J1c3Rp ZnlJbnB1dEZpbGVDcmVhdGlvbkVycm9yRXhjZXB0aW9uKA0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqAgZiJFcnJvciBjcmVhdGluZyBwbHVnaW4gZGlyZWN0b3J5DQo+ ID4+Pj4+Pj4ge3NlbGYuX3dvcmtpbmdfZGlyfS5cblxue3JlcHIoZSl9LiIpDQo+ID4+Pj4+Pj4g Kw0KPiA+Pj4+Pj4+ICvCoMKgwqAgZGVmIF9jcmVhdGVfdW5jcnVzdGlmeV9maWxlX2xpc3RfZmls ZShzZWxmKSAtPiBOb25lOg0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoCAiIiINCj4gPj4+Pj4+ PiArwqDCoMKgwqDCoMKgwqAgQ3JlYXRlcyB0aGUgZmlsZSB3aXRoIHRoZSBsaXN0IG9mIHNvdXJj ZSBmaWxlcyBmb3INCj4gPj4+Pj4+PiBVbmNydXN0aWZ5IHRvIHByb2Nlc3MuDQo+ID4+Pj4+Pj4g K8KgwqDCoMKgwqDCoMKgICIiIg0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoCBzZWxmLl9hcHBf aW5wdXRfZmlsZV9wYXRoID0gb3MucGF0aC5qb2luKA0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDC oMKgwqDCoMKgIHNlbGYuX3dvcmtpbmdfZGlyLCAidW5jcnVzdGlmeV9maWxlX2xpc3QudHh0IikN Cj4gPj4+Pj4+PiArDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgIHdpdGggb3BlbihzZWxmLl9h cHBfaW5wdXRfZmlsZV9wYXRoLCAndycsDQo+ID4+Pj4+Pj4gZW5jb2Rpbmc9J3V0ZjgnKSBhcyBm Og0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiBmLndyaXRlbGluZXMoZiJcbiIuam9pbihzZWxmLl9h YnNfZmlsZV9wYXRoc190b19mb3JtYXQpKQ0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArwqDCoMKg IGRlZiBfZXhlY3V0ZV91bmNydXN0aWZ5KHNlbGYpIC0+IE5vbmU6DQo+ID4+Pj4+Pj4gK8KgwqDC oMKgwqDCoMKgICIiIg0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoCBFeGVjdXRlcyBVbmNydXN0 aWZ5IHdpdGggdGhlIGluaXRpYWxpemVkIGNvbmZpZ3VyYXRpb24uDQo+ID4+Pj4+Pj4gK8KgwqDC oMKgwqDCoMKgICIiIg0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoCBvdXRwdXQgPSBTdHJpbmdJ TygpDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgIHNlbGYuX2FwcF9leGl0X2NvZGUgPSBSdW5D bWQoDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgc2VsZi5fYXBwX3BhdGgsDQo+ ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgZiItYyB7c2VsZi5fYXBwX2NvbmZpZ19m aWxlfSAtRg0KPiA+Pj4+Pj4+IHtzZWxmLl9hcHBfaW5wdXRfZmlsZV9wYXRofSAtLWlmLWNoYW5n ZWQgLS1zdWZmaXgNCj4gPj4+Pj4+PiB7VW5jcnVzdGlmeUNoZWNrLkZPUk1BVFRFRF9GSUxFX0VY VEVOU0lPTn0iLCBvdXRzdHJlYW09b3V0cHV0KQ0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoCBz ZWxmLl9hcHBfb3V0cHV0ID0gb3V0cHV0LmdldHZhbHVlKCkuc3RyaXAoKS5zcGxpdGxpbmVzKCkN Cj4gPj4+Pj4+PiArDQo+ID4+Pj4+Pj4gK8KgwqDCoCBkZWYgX2dldF9naXRfaWdub3JlZF9wYXRo cyhzZWxmKSAtPiBMaXN0W3N0cl06DQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgICIiIiINCj4g Pj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAgUmV0dXJucyBhIGxpc3Qgb2YgZmlsZSBhYnNvbHV0ZSBw YXRoIHN0cmluZ3MgdG8gYWxsDQo+ID4+Pj4+Pj4gZmlsZXMgaWdub3JlZCBpbiB0aGlzIGdpdCBy ZXBvc2l0b3J5Lg0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAgSWYgZ2l0 IGlzIG5vdCBmb3VuZCwgYW4gZW1wdHkgbGlzdCB3aWxsIGJlIHJldHVybmVkLg0KPiA+Pj4+Pj4+ ICvCoMKgwqDCoMKgwqDCoCAiIiINCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAgaWYgbm90IHNo dXRpbC53aGljaCgiZ2l0Iik6DQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgbG9n Z2luZy53YXJuKA0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgIkdp dCBpcyBub3QgZm91bmQgb24gdGhpcyBzeXN0ZW0uIEdpdCBzdWJtb2R1bGUNCj4gPj4+Pj4+PiBw YXRocyB3aWxsIG5vdCBiZSBjb25zaWRlcmVkLiIpDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKg wqDCoMKgwqAgcmV0dXJuIFtdDQo+ID4+Pj4+Pj4gKw0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDC oCBvdXRzdHJlYW1fYnVmZmVyID0gU3RyaW5nSU8oKQ0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDC oCBleGl0X2NvZGUgPSBSdW5DbWQoImdpdCIsICJscy1maWxlcyAtLW90aGVyIiwNCj4gPj4+Pj4+ PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB3 b3JraW5nZGlyPXNlbGYuX2Fic193b3Jrc3BhY2VfcGF0aCwNCj4gPj4+Pj4+PiBvdXRzdHJlYW09 b3V0c3RyZWFtX2J1ZmZlciwNCj4gPj4+Pj4gbG9nZ2luZ19sZXZlbD1sb2dnaW5nLk5PVFNFVCkN Cj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAgaWYgKGV4aXRfY29kZSAhPSAwKToNCj4gPj4+Pj4+ PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCByYWlzZSBVbmNydXN0aWZ5R2l0SWdub3JlRmlsZUV4 Y2VwdGlvbigNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGYiQW4g ZXJyb3Igb2NjdXJyZWQgcmVhZGluZyBnaXQgaWdub3JlIHNldHRpbmdzLg0KPiA+Pj4+Pj4+IFRo aXMgd2lsbCBwcmV2ZW50IFVuY3J1c3RpZnkgZnJvbSBydW5uaW5nIGFnYWluc3QNCj4gPj4+PiB0 aGUNCj4gPj4+Pj4+PiBleHBlY3RlZCBzZXQgb2YgZmlsZXMuIikNCj4gPj4+Pj4+PiArDQo+ID4+ Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgICMgTm90ZTogVGhpcyB3aWxsIHBvdGVudGlhbGx5IGJlIGEg bGFyZ2UgbGlzdCwgYnV0IGF0DQo+ID4+Pj4+Pj4gbGVhc3Qgc29ydGVkDQo+ID4+Pj4+Pj4gK8Kg wqDCoMKgwqDCoMKgIHJldHVybiBvdXRzdHJlYW1fYnVmZmVyLmdldHZhbHVlKCkuc3RyaXAoKS5z cGxpdGxpbmVzKCkNCj4gPj4+Pj4+PiArDQo+ID4+Pj4+Pj4gK8KgwqDCoCBkZWYgX2dldF9naXRf c3VibW9kdWxlX3BhdGhzKHNlbGYpIC0+IExpc3Rbc3RyXToNCj4gPj4+Pj4+PiArwqDCoMKgwqDC oMKgwqAgIiIiDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgIFJldHVybnMgYSBsaXN0IG9mIGRp cmVjdG9yeSBhYnNvbHV0ZSBwYXRoIHN0cmluZ3MgdG8gdGhlDQo+ID4+Pj4+Pj4gcm9vdCBvZiBl YWNoIHN1Ym1vZHVsZSBpbiB0aGUgd29ya3NwYWNlDQo+ID4+PiByZXBvc2l0b3J5Lg0KPiA+Pj4+ Pj4+ICsNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAgSWYgZ2l0IGlzIG5vdCBmb3VuZCwgYW4g ZW1wdHkgbGlzdCB3aWxsIGJlIHJldHVybmVkLg0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoCAi IiINCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAgaWYgbm90IHNodXRpbC53aGljaCgiZ2l0Iik6 DQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgbG9nZ2luZy53YXJuKA0KPiA+Pj4+ Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgIkdpdCBpcyBub3QgZm91bmQgb24g dGhpcyBzeXN0ZW0uIEdpdCBzdWJtb2R1bGUNCj4gPj4+Pj4+PiBwYXRocyB3aWxsIG5vdCBiZSBj b25zaWRlcmVkLiIpDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgcmV0dXJuIFtd DQo+ID4+Pj4+Pj4gKw0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoCBpZiBvcy5wYXRoLmlzZmls ZShvcy5wYXRoLmpvaW4oc2VsZi5fYWJzX3dvcmtzcGFjZV9wYXRoLA0KPiA+Pj4+Pj4+ICIuZ2l0 bW9kdWxlcyIpKToNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBsb2dnaW5nLmlu Zm8oDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBmIi5naXRtb2R1 bGVzIGZpbGUgZm91bmQuIEV4Y2x1ZGluZyBzdWJtb2R1bGVzDQo+ID4+Pj4+Pj4gaW4ge3NlbGYu X3BhY2thZ2VfbmFtZX0uIikNCj4gPj4+Pj4+PiArDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKg wqDCoMKgwqAgb3V0c3RyZWFtX2J1ZmZlciA9IFN0cmluZ0lPKCkNCj4gPj4+Pj4+PiArwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCBleGl0X2NvZGUgPSBSdW5DbWQoImdpdCIsICJjb25maWcgLS1maWxl IC5naXRtb2R1bGVzDQo+ID4+Pj4+Pj4gLS1nZXQtcmVnZXhwIHBhdGgiLA0KPiA+Pj4+PiB3b3Jr aW5nZGlyPXNlbGYuX2Fic193b3Jrc3BhY2VfcGF0aCwNCj4gPj4+Pj4+PiBvdXRzdHJlYW09b3V0 c3RyZWFtX2J1ZmZlciwgbG9nZ2luZ19sZXZlbD1sb2dnaW5nLk5PVFNFVCkNCj4gPj4+Pj4+PiAr wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBpZiAoZXhpdF9jb2RlICE9IDApOg0KPiA+Pj4+Pj4+ICvC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgcmFpc2UgVW5jcnVzdGlmeUdpdFN1Ym1vZHVs ZUV4Y2VwdGlvbigNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgZiIuZ2l0bW9kdWxlIGZpbGUgZGV0ZWN0ZWQgYnV0IGFuIGVycm9yDQo+ID4+Pj4+Pj4g b2NjdXJyZWQgcmVhZGluZyB0aGUgZmlsZS4gQ2Fubm90IHByb2NlZWQgd2l0aCB1bmtub3duDQo+ ID4+Pj4+Pj4gc3VibW9kdWxlIHBhdGhzLiIpDQo+ID4+Pj4+Pj4gKw0KPiA+Pj4+Pj4+ICvCoMKg wqDCoMKgwqDCoMKgwqDCoMKgIHN1Ym1vZHVsZV9wYXRocyA9IFtdDQo+ID4+Pj4+Pj4gK8KgwqDC oMKgwqDCoMKgwqDCoMKgwqAgZm9yIGxpbmUgaW4NCj4gPj4+Pj4+PiBvdXRzdHJlYW1fYnVmZmVy LmdldHZhbHVlKCkuc3RyaXAoKS5zcGxpdGxpbmVzKCk6DQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoCBzdWJtb2R1bGVfcGF0aHMuYXBwZW5kKA0KPiA+Pj4+Pj4+ICsN Cj4gPj4+Pj4+PiBvcy5wYXRoLm5vcm1wYXRoKG9zLnBhdGguam9pbihzZWxmLl9hYnNfd29ya3Nw YWNlX3BhdGgsDQo+ID4+Pj4+Pj4gbGluZS5zcGxpdCgpWzFdKSkpDQo+ID4+Pj4+Pj4gKw0KPiA+ Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHJldHVybiBzdWJtb2R1bGVfcGF0aHMNCj4g Pj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAgZWxzZToNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCByZXR1cm4gW10NCj4gPj4+Pj4+PiArDQo+ID4+Pj4+Pj4gK8KgwqDCoCBkZWYgX2dl dF90ZW1wbGF0ZV9maWxlX2NvbnRlbnRzKHNlbGYpIC0+IE5vbmU6DQo+ID4+Pj4+Pj4gK8KgwqDC oMKgwqDCoMKgICIiIg0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoCBHZXRzIHRoZSBjb250ZW50 cyBvZiBVbmNydXN0aWZ5IHRlbXBsYXRlIGZpbGVzIGlmIHRoZXkNCj4gPj4+Pj4+PiBhcmUgc3Bl Y2lmaWVkDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgIGluIHRoZSBVbmNydXN0aWZ5IGNvbmZp Z3VyYXRpb24gZmlsZS4NCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAgIiIiDQo+ID4+Pj4+Pj4g Kw0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoCBzZWxmLl9maWxlX3RlbXBsYXRlX2NvbnRlbnRz ID0gTm9uZQ0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoCBzZWxmLl9mdW5jX3RlbXBsYXRlX2Nv bnRlbnRzID0gTm9uZQ0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAgIyBB bGxvdyBubyB2YWx1ZSB0byBhbGxvdyAic2V0IiBzdGF0ZW1lbnRzIGluIHRoZSBjb25maWcNCj4g Pj4+Pj4+PiBmaWxlIHdoaWNoIGRvDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgICMgbm90IHNw ZWNpZnkgdmFsdWUgYXNzaWdubWVudA0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoCBwYXJzZXIg PSBjb25maWdwYXJzZXIuQ29uZmlnUGFyc2VyKGFsbG93X25vX3ZhbHVlPVRydWUpDQo+ID4+Pj4+ Pj4gK8KgwqDCoMKgwqDCoMKgIHdpdGggb3BlbihzZWxmLl9hcHBfY29uZmlnX2ZpbGUsICdyJykg YXMgY2Y6DQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgcGFyc2VyLnJlYWRfc3Ry aW5nKCJbZHVtbXlfc2VjdGlvbl1cbiIgKyBjZi5yZWFkKCkpDQo+ID4+Pj4+Pj4gKw0KPiA+Pj4+ Pj4+ICvCoMKgwqDCoMKgwqDCoCB0cnk6DQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKg wqAgZmlsZV90ZW1wbGF0ZV9uYW1lID0NCj4gPj4+Pj4+PiBwYXJzZXJbImR1bW15X3NlY3Rpb24i XVsiY210X2luc2VydF9maWxlX2hlYWRlciJdDQo+ID4+Pj4+Pj4gKw0KPiA+Pj4+Pj4+ICvCoMKg wqDCoMKgwqDCoMKgwqDCoMKgIGZpbGVfdGVtcGxhdGVfcGF0aCA9IHBhdGhsaWIuUGF0aChmaWxl X3RlbXBsYXRlX25hbWUpDQo+ID4+Pj4+Pj4gKw0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKg wqDCoMKgIGlmIG5vdCBmaWxlX3RlbXBsYXRlX3BhdGguaXNfZmlsZSgpOg0KPiA+Pj4+Pj4+ICvC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgZmlsZV90ZW1wbGF0ZV9wYXRoID0NCj4gPj4+ Pj4+PiBwYXRobGliLlBhdGgob3MucGF0aC5qb2luKHNlbGYuX3BsdWdpbl9wYXRoLCBmaWxlX3Rl bXBsYXRlX25hbWUpKQ0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg c2VsZi5fZmlsZV90ZW1wbGF0ZV9jb250ZW50cyA9DQo+ID4+Pj4+Pj4gZmlsZV90ZW1wbGF0ZV9w YXRoLnJlYWRfdGV4dCgpDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgIGV4Y2VwdCBLZXlFcnJv cjoNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBsb2dnaW5nLndhcm4oIkEgZmls ZSBoZWFkZXIgdGVtcGxhdGUgaXMgbm90DQo+ID4+Pj4+Pj4gc3BlY2lmaWVkIGluIHRoZSBjb25m aWcgZmlsZS4iKQ0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoCBleGNlcHQgRmlsZU5vdEZvdW5k RXJyb3I6DQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgbG9nZ2luZy53YXJuKCJU aGUgc3BlY2lmaWVkIGZpbGUgaGVhZGVyIHRlbXBsYXRlDQo+ID4+Pj4+Pj4gZmlsZSB3YXMgbm90 IGZvdW5kLiIpDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgIHRyeToNCj4gPj4+Pj4+PiArwqDC oMKgwqDCoMKgwqDCoMKgwqDCoCBmdW5jX3RlbXBsYXRlX25hbWUgPQ0KPiA+Pj4+Pj4+IHBhcnNl clsiZHVtbXlfc2VjdGlvbiJdWyJjbXRfaW5zZXJ0X2Z1bmNfaGVhZGVyIl0NCj4gPj4+Pj4+PiAr DQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgZnVuY190ZW1wbGF0ZV9wYXRoID0g cGF0aGxpYi5QYXRoKGZ1bmNfdGVtcGxhdGVfbmFtZSkNCj4gPj4+Pj4+PiArDQo+ID4+Pj4+Pj4g K8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgaWYgbm90IGZ1bmNfdGVtcGxhdGVfcGF0aC5pc19maWxl KCk6DQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBmdW5jX3RlbXBs YXRlX3BhdGggPQ0KPiA+Pj4+Pj4+IHBhdGhsaWIuUGF0aChvcy5wYXRoLmpvaW4oc2VsZi5fcGx1 Z2luX3BhdGgsIGZ1bmNfdGVtcGxhdGVfbmFtZSkpDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCBzZWxmLl9mdW5jX3RlbXBsYXRlX2NvbnRlbnRzID0NCj4gPj4+Pj4+ PiBmdW5jX3RlbXBsYXRlX3BhdGgucmVhZF90ZXh0KCkNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKg wqAgZXhjZXB0IEtleUVycm9yOg0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGxv Z2dpbmcud2FybigiQSBmdW5jdGlvbiBoZWFkZXIgdGVtcGxhdGUgaXMgbm90DQo+ID4+Pj4+Pj4g c3BlY2lmaWVkIGluIHRoZSBjb25maWcgZmlsZS4iKQ0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDC oCBleGNlcHQgRmlsZU5vdEZvdW5kRXJyb3I6DQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDC oMKgwqAgbG9nZ2luZy53YXJuKCJUaGUgc3BlY2lmaWVkIGZ1bmN0aW9uIGhlYWRlciB0ZW1wbGF0 ZQ0KPiA+Pj4+Pj4+IGZpbGUgd2FzIG5vdCBmb3VuZC4iKQ0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+ PiArwqDCoMKgIGRlZiBfaW5pdGlhbGl6ZV9hcHBfaW5mbyhzZWxmKSAtPiBOb25lOg0KPiA+Pj4+ Pj4+ICvCoMKgwqDCoMKgwqDCoCAiIiINCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAgSW5pdGlh bGl6ZSBVbmNydXN0aWZ5IGFwcGxpY2F0aW9uIGluZm9ybWF0aW9uLg0KPiA+Pj4+Pj4+ICsNCj4g Pj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAgVGhpcyBmdW5jdGlvbiB3aWxsIGRldGVybWluZSB0aGUg YXBwbGljYXRpb24gcGF0aCBhbmQNCj4gPj4+Pj4+PiB2ZXJzaW9uLg0KPiA+Pj4+Pj4+ICvCoMKg wqDCoMKgwqDCoCAiIiINCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAgIyBWZXJpZnkgVW5jcnVz dGlmeSBpcyBzcGVjaWZpZWQgaW4gdGhlIGVudmlyb25tZW50Lg0KPiA+Pj4+Pj4+ICvCoMKgwqDC oMKgwqDCoCBpZiBVbmNydXN0aWZ5Q2hlY2suVU5DUlVTVElGWV9QQVRIX0VOVl9LRVkgbm90IGlu DQo+ID4+Pj4+Pj4gb3MuZW52aXJvbjoNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCByYWlzZSBVbmNydXN0aWZ5QXBwRW52VmFyTm90Rm91bmRFeGNlcHRpb24oDQo+ID4+Pj4+Pj4g K8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBmIlVuY3J1c3RpZnkgZW52aXJvbm1lbnQg dmFyaWFibGUNCj4gPj4+Pj4+PiB7VW5jcnVzdGlmeUNoZWNrLlVOQ1JVU1RJRllfUEFUSF9FTlZf S0VZfSBpcyBub3QgcHJlc2VudC4iKQ0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArwqDCoMKgwqDC oMKgwqAgc2VsZi5fYXBwX3BhdGggPSBzaHV0aWwud2hpY2goJ3VuY3J1c3RpZnknLA0KPiA+Pj4+ Pj4+IHBhdGg9b3MuZW52aXJvbltVbmNydXN0aWZ5Q2hlY2suVU5DUlVTVElGWV9QQVRIX0VOVl9L RVldKQ0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAgaWYgc2VsZi5fYXBw X3BhdGggaXMgTm9uZToNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCByYWlzZSBG aWxlTm90Rm91bmRFcnJvcigNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgIGVycm5vLkVOT0VOVCwgb3Muc3RyZXJyb3IoZXJybm8uRU5PRU5UKSwNCj4gPj4+Pj4+PiBz ZWxmLl9hcHBfcGF0aCkNCj4gPj4+Pj4+PiArDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgIHNl bGYuX2FwcF9wYXRoID0NCj4gPj4+Pj4+PiBvcy5wYXRoLm5vcm1jYXNlKG9zLnBhdGgubm9ybXBh dGgoc2VsZi5fYXBwX3BhdGgpKQ0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKg wqAgaWYgbm90IG9zLnBhdGguaXNmaWxlKHNlbGYuX2FwcF9wYXRoKToNCj4gPj4+Pj4+PiArwqDC oMKgwqDCoMKgwqDCoMKgwqDCoCByYWlzZSBGaWxlTm90Rm91bmRFcnJvcigNCj4gPj4+Pj4+PiAr wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGVycm5vLkVOT0VOVCwgb3Muc3RyZXJyb3Io ZXJybm8uRU5PRU5UKSwNCj4gPj4+Pj4+PiBzZWxmLl9hcHBfcGF0aCkNCj4gPj4+Pj4+PiArDQo+ ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgICMgVmVyaWZ5IFVuY3J1c3RpZnkgaXMgcHJlc2VudCBh dCB0aGUgZXhwZWN0ZWQgcGF0aC4NCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAgcmV0dXJuX2J1 ZmZlciA9IFN0cmluZ0lPKCkNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAgcmV0ID0gUnVuQ21k KHNlbGYuX2FwcF9wYXRoLCAiLS12ZXJzaW9uIiwNCj4gPj4+Pj4+PiBvdXRzdHJlYW09cmV0dXJu X2J1ZmZlcikNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAgaWYgKHJldCAhPSAwKToNCj4gPj4+ Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCByYWlzZSBVbmNydXN0aWZ5QXBwVmVyc2lvbkVy cm9yRXhjZXB0aW9uKA0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg ZiJFcnJvciBvY2N1cnJlZCBleGVjdXRpbmcgLS12ZXJzaW9uOiB7cmV0fS4iKQ0KPiA+Pj4+Pj4+ ICsNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAgIyBMb2cgVW5jcnVzdGlmeSB2ZXJzaW9uIGlu Zm9ybWF0aW9uLg0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoCBzZWxmLl9hcHBfdmVyc2lvbiA9 IHJldHVybl9idWZmZXIuZ2V0dmFsdWUoKS5zdHJpcCgpDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDC oMKgIHNlbGYuX3RjLkxvZ1N0ZE91dChmIlVuY3J1c3RpZnkgdmVyc2lvbjoNCj4gPj4+Pj4+PiB7 c2VsZi5fYXBwX3ZlcnNpb259IikNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAgdmVyc2lvbl9h Z2dyZWdhdG9yLkdldFZlcnNpb25BZ2dyZWdhdG9yKCkuUmVwb3J0VmVyc2lvbigNCj4gPj4+Pj4+ PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAiVW5jcnVzdGlmeSIsIHNlbGYuX2FwcF92ZXJzaW9u LA0KPiA+Pj4+Pj4+IHZlcnNpb25fYWdncmVnYXRvci5WZXJzaW9uVHlwZXMuSU5GTykNCj4gPj4+ Pj4+PiArDQo+ID4+Pj4+Pj4gK8KgwqDCoCBkZWYgX2luaXRpYWxpemVfY29uZmlnX2ZpbGVfaW5m byhzZWxmKSAtPiBOb25lOg0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoCAiIiINCj4gPj4+Pj4+ PiArwqDCoMKgwqDCoMKgwqAgSW5pdGlhbGl6ZSBVbmNydXN0aWZ5IGNvbmZpZ3VyYXRpb24gZmls ZSBpbmZvLg0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAgVGhlIGNvbmZp ZyBmaWxlIHBhdGggaXMgcmVsYXRpdmUgdG8gdGhlIHBhY2thZ2Ugcm9vdC4NCj4gPj4+Pj4+PiAr wqDCoMKgwqDCoMKgwqAgIiIiDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgIHNlbGYuX2FwcF9j b25maWdfZmlsZSA9DQo+ID4+Pj4+Pj4gVW5jcnVzdGlmeUNoZWNrLkRFRkFVTFRfQ09ORklHX0ZJ TEVfUEFUSA0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoCBpZiAiQ29uZmlnRmlsZVBhdGgiIGlu IHNlbGYuX3BhY2thZ2VfY29uZmlnOg0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKg IHNlbGYuX2FwcF9jb25maWdfZmlsZSA9DQo+ID4+Pj4+Pj4gc2VsZi5fcGFja2FnZV9jb25maWdb IkNvbmZpZ0ZpbGVQYXRoIl0uc3RyaXAoKQ0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCBzZWxmLl9hcHBfY29uZmlnX2ZpbGUgPSBvcy5wYXRoLm5vcm1wYXRo KA0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgb3MucGF0aC5qb2lu KHNlbGYuX2Fic19wYWNrYWdlX3BhdGgsDQo+ID4+Pj4+Pj4gc2VsZi5fYXBwX2NvbmZpZ19maWxl KSkNCj4gPj4+Pj4+PiArDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgIGlmIG5vdCBvcy5wYXRo LmlzZmlsZShzZWxmLl9hcHBfY29uZmlnX2ZpbGUpOg0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDC oMKgwqDCoMKgIHJhaXNlIEZpbGVOb3RGb3VuZEVycm9yKA0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqAgZXJybm8uRU5PRU5ULCBvcy5zdHJlcnJvcihlcnJuby5FTk9F TlQpLA0KPiA+Pj4+Pj4+IHNlbGYuX2FwcF9jb25maWdfZmlsZSkNCj4gPj4+Pj4+PiArDQo+ID4+ Pj4+Pj4gK8KgwqDCoCBkZWYgX2luaXRpYWxpemVfZW52aXJvbm1lbnRfaW5mbyhzZWxmLCBwYWNr YWdlX3JlbF9wYXRoOg0KPiA+Pj4+Pj4+IHN0ciwgZWRrMl9wYXRoOiBFZGsyUGF0aCwgcGFja2Fn ZV9jb25maWc6IERpY3Rbc3RyLA0KPiA+Pj4+Pj4+IExpc3Rbc3RyXV0sIHRjOiBKdW5pdFJlcG9y dFRlc3RDYXNlKSAtPiBOb25lOg0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoCAiIiINCj4gPj4+ Pj4+PiArwqDCoMKgwqDCoMKgwqAgSW5pdGlhbGl6ZXMgcGx1Z2luIGVudmlyb25tZW50IGluZm9y bWF0aW9uLg0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoCAiIiINCj4gPj4+Pj4+PiArwqDCoMKg wqDCoMKgwqAgc2VsZi5fYWJzX3BhY2thZ2VfcGF0aCA9DQo+ID4+Pj4+Pj4gZWRrMl9wYXRoLkdl dEFic29sdXRlUGF0aE9uVGhpc1N5dGVtRnJvbUVkazJSZWxhdGl2ZVBhdGgoDQo+ID4+Pj4+Pj4g K8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgcGFja2FnZV9yZWxfcGF0aCkNCj4gPj4+Pj4+PiArwqDC oMKgwqDCoMKgwqAgc2VsZi5fYWJzX3dvcmtzcGFjZV9wYXRoID0gZWRrMl9wYXRoLldvcmtzcGFj ZVBhdGgNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAgc2VsZi5fcGFja2FnZV9jb25maWcgPSBw YWNrYWdlX2NvbmZpZw0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoCBzZWxmLl9wYWNrYWdlX25h bWUgPSBvcy5wYXRoLmJhc2VuYW1lKA0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKg IG9zLnBhdGgubm9ybXBhdGgocGFja2FnZV9yZWxfcGF0aCkpDQo+ID4+Pj4+Pj4gK8KgwqDCoMKg wqDCoMKgIHNlbGYuX3BsdWdpbl9uYW1lID0gc2VsZi5fX2NsYXNzX18uX19uYW1lX18NCj4gPj4+ Pj4+PiArwqDCoMKgwqDCoMKgwqAgc2VsZi5fcGx1Z2luX3BhdGggPQ0KPiA+Pj4+Pj4+IG9zLnBh dGguZGlybmFtZShvcy5wYXRoLnJlYWxwYXRoKF9fZmlsZV9fKSkNCj4gPj4+Pj4+PiArwqDCoMKg wqDCoMKgwqAgc2VsZi5fcmVsX3BhY2thZ2VfcGF0aCA9IHBhY2thZ2VfcmVsX3BhdGgNCj4gPj4+ Pj4+PiArwqDCoMKgwqDCoMKgwqAgc2VsZi5fdGMgPSB0Yw0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+ PiArwqDCoMKgIGRlZiBfaW5pdGlhbGl6ZV9maWxlX3RvX2Zvcm1hdF9pbmZvKHNlbGYpIC0+IE5v bmU6DQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgICIiIg0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKg wqDCoCBGb3JtcyB0aGUgbGlzdCBvZiBzb3VyY2UgZmlsZXMgZm9yIFVuY3J1c3RpZnkgdG8gcHJv Y2Vzcy4NCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAgIiIiDQo+ID4+Pj4+Pj4gK8KgwqDCoMKg wqDCoMKgICMgQ3JlYXRlIGEgbGlzdCBvZiBhbGwgdGhlIHBhY2thZ2UgcmVsYXRpdmUgZmlsZSBw YXRocw0KPiA+Pj4+Pj4+IGluIHRoZSBwYWNrYWdlIHRvIHJ1biBhZ2FpbnN0IFVuY3J1c3RpZnku DQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgIHJlbF9maWxlX3BhdGhzX3RvX2Zvcm1hdCA9IGxp c3QoDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgVW5jcnVzdGlmeUNoZWNrLlNU QU5EQVJEX1BMVUdJTl9ERUZJTkVEX1BBVEhTKQ0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArwqDC oMKgwqDCoMKgwqAgIyBBbGxvdyB0aGUgY2kueWFtbCB0byByZW1vdmUgYW55IG9mIHRoZSBwcmUt ZGVmaW5lZA0KPiA+Pj4+Pj4+IHN0YW5kYXJkIHBhdGhzDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDC oMKgIGlmICJJZ25vcmVTdGFuZGFyZFBhdGhzIiBpbiBzZWxmLl9wYWNrYWdlX2NvbmZpZzoNCj4g Pj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBmb3IgYSBpbiBzZWxmLl9wYWNrYWdlX2Nv bmZpZ1siSWdub3JlU3RhbmRhcmRQYXRocyJdOg0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgaWYgYS5zdHJpcCgpIGluIHJlbF9maWxlX3BhdGhzX3RvX2Zvcm1hdDoN Cj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgc2VsZi5f dGMuTG9nU3RkT3V0KA0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgIGYiSWdub3Jpbmcgc3RhbmRhcmQgcGF0aCBkdWUgdG8gY2kueWFtbA0K PiA+Pj4+Pj4+IGlnbm9yZToge2F9IikNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgcmVsX2ZpbGVfcGF0aHNfdG9fZm9ybWF0LnJlbW92ZShhLnN0cmlw KCkpDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBlbHNlOg0KPiA+ Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCByYWlzZQ0KPiA+ Pj4+Pj4+IFVuY3J1c3RpZnlJbnZhbGlkSWdub3JlU3RhbmRhcmRQYXRoc0V4Y2VwdGlvbihmIklu dmFsaWQNCj4gPj4+Pj4+PiBJZ25vcmVTdGFuZGFyZFBhdGhzIHZhbHVlOiB7YX0iKQ0KPiA+Pj4+ Pj4+ICsNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAgIyBBbGxvdyB0aGUgY2kueWFtbCB0byBz cGVjaWZ5IGFkZGl0aW9uYWwgaW5jbHVkZSBwYXRocw0KPiA+Pj4+Pj4+IGZvciB0aGlzIHBhY2th Z2UNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAgaWYgIkFkZGl0aW9uYWxJbmNsdWRlUGF0aHMi IGluIHNlbGYuX3BhY2thZ2VfY29uZmlnOg0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDC oMKgIHJlbF9maWxlX3BhdGhzX3RvX2Zvcm1hdC5leHRlbmQoDQo+ID4+Pj4+Pj4gK8KgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBzZWxmLl9wYWNrYWdlX2NvbmZpZ1siQWRkaXRpb25hbElu Y2x1ZGVQYXRocyJdKQ0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAgc2Vs Zi5fYWJzX2ZpbGVfcGF0aHNfdG9fZm9ybWF0ID0gW10NCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKg wqAgZm9yIHBhdGggaW4gcmVsX2ZpbGVfcGF0aHNfdG9fZm9ybWF0Og0KPiA+Pj4+Pj4+ICvCoMKg wqDCoMKgwqDCoMKgwqDCoMKgIHNlbGYuX2Fic19maWxlX3BhdGhzX3RvX2Zvcm1hdC5leHRlbmQo DQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBbc3RyKHBhdGgucmVz b2x2ZSgpKSBmb3IgcGF0aCBpbg0KPiA+Pj4+Pj4+IHBhdGhsaWIuUGF0aChzZWxmLl9hYnNfcGFj a2FnZV9wYXRoKS5yZ2xvYihwYXRoKV0pDQo+ID4+Pj4+Pj4gKw0KPiA+Pj4+Pj4+ICvCoMKgwqDC oMKgwqDCoCBpZiBub3QgIlNraXBHaXRFeGNsdXNpb25zIiBpbiBzZWxmLl9wYWNrYWdlX2NvbmZp ZyBvcg0KPiA+Pj4+Pj4+IG5vdCBzZWxmLl9wYWNrYWdlX2NvbmZpZ1siU2tpcEdpdEV4Y2x1c2lv bnMiXToNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjIFJlbW92ZSBmaWxlcyBp Z25vcmVkIGJ5IGdpdA0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGxvZ2dpbmcu aW5mbygNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGYie3NlbGYu X3BhY2thZ2VfbmFtZX0gZmlsZSBjb3VudCBiZWZvcmUgZ2l0DQo+ID4+Pj4+Pj4gaWdub3JlIGZp bGUgZXhjbHVzaW9uOg0KPiA+Pj4+Pj4+IHtsZW4oc2VsZi5fYWJzX2ZpbGVfcGF0aHNfdG9fZm9y bWF0KX0iKQ0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBp Z25vcmVkX3BhdGhzID0gc2VsZi5fZ2V0X2dpdF9pZ25vcmVkX3BhdGhzKCkNCj4gPj4+Pj4+PiAr wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBzZWxmLl9hYnNfZmlsZV9wYXRoc190b19mb3JtYXQgPSBs aXN0KA0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiBzZXQoc2VsZi5fYWJzX2ZpbGVfcGF0aHNfdG9f Zm9ybWF0KS5kaWZmZXJlbmNlKGlnbm9yZWRfcGF0aHMpKQ0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+ PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBsb2dnaW5nLmluZm8oDQo+ID4+Pj4+Pj4gK8KgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBmIntzZWxmLl9wYWNrYWdlX25hbWV9IGZpbGUgY291 bnQgYWZ0ZXIgZ2l0DQo+ID4+Pj4+Pj4gaWdub3JlIGZpbGUgZXhjbHVzaW9uOg0KPiA+Pj4+Pj4+ IHtsZW4oc2VsZi5fYWJzX2ZpbGVfcGF0aHNfdG9fZm9ybWF0KX0iKQ0KPiA+Pj4+Pj4+ICsNCj4g Pj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjIFJlbW92ZSBmaWxlcyBpbiBzdWJtb2R1 bGVzDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgbG9nZ2luZy5pbmZvKA0KPiA+ Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgZiJ7c2VsZi5fcGFja2FnZV9u YW1lfSBmaWxlIGNvdW50IGJlZm9yZQ0KPiA+Pj4+Pj4+IHN1Ym1vZHVsZSBleGNsdXNpb246DQo+ ID4+Pj4ge2xlbihzZWxmLl9hYnNfZmlsZV9wYXRoc190b19mb3JtYXQpfSIpDQo+ID4+Pj4+Pj4g Kw0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHN1Ym1vZHVsZV9wYXRocyA9DQo+ ID4+Pj4+Pj4gdHVwbGUoc2VsZi5fZ2V0X2dpdF9zdWJtb2R1bGVfcGF0aHMoKSkNCj4gPj4+Pj4+ PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBmb3IgcGF0aCBpbiBzdWJtb2R1bGVfcGF0aHM6DQo+ ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBsb2dnaW5nLmluZm8oZiLC oCBzdWJtb2R1bGUgcGF0aDoge3BhdGh9IikNCj4gPj4+Pj4+PiArDQo+ID4+Pj4+Pj4gK8KgwqDC oMKgwqDCoMKgwqDCoMKgwqAgc2VsZi5fYWJzX2ZpbGVfcGF0aHNfdG9fZm9ybWF0ID0gWw0KPiA+ Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgZiBmb3IgZiBpbiBzZWxmLl9h YnNfZmlsZV9wYXRoc190b19mb3JtYXQgaWYgbm90DQo+ID4+Pj4+Pj4gZi5zdGFydHN3aXRoKHN1 Ym1vZHVsZV9wYXRocyldDQo+ID4+Pj4+Pj4gKw0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKg wqDCoMKgIGxvZ2dpbmcuaW5mbygNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgIGYie3NlbGYuX3BhY2thZ2VfbmFtZX0gZmlsZSBjb3VudCBhZnRlcg0KPiA+Pj4+Pj4+ IHN1Ym1vZHVsZSBleGNsdXNpb246DQo+ID4+PiB7bGVuKHNlbGYuX2Fic19maWxlX3BhdGhzX3Rv X2Zvcm1hdCl9IikNCj4gPj4+Pj4+PiArDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgICMgU29y dCB0aGUgZmlsZXMgZm9yIG1vcmUgY29uc2lzdGVudCByZXN1bHRzDQo+ID4+Pj4+Pj4gK8KgwqDC oMKgwqDCoMKgIHNlbGYuX2Fic19maWxlX3BhdGhzX3RvX2Zvcm1hdC5zb3J0KCkNCj4gPj4+Pj4+ PiArDQo+ID4+Pj4+Pj4gK8KgwqDCoCBkZWYgX2luaXRpYWxpemVfdGVzdF9jYXNlX291dHB1dF9v cHRpb25zKHNlbGYpIC0+IE5vbmU6DQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgICIiIg0KPiA+ Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoCBJbml0aWFsaXplcyBvcHRpb25zIHRoYXQgaW5mbHVlbmNl IHRlc3QgY2FzZSBvdXRwdXQuDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgICIiIg0KPiA+Pj4+ Pj4+ICvCoMKgwqDCoMKgwqDCoCBzZWxmLl9hdWRpdF9vbmx5X21vZGUgPSBGYWxzZQ0KPiA+Pj4+ Pj4+ICvCoMKgwqDCoMKgwqDCoCBzZWxmLl9vdXRwdXRfZmlsZV9kaWZmcyA9IEZhbHNlDQo+ID4+ Pj4+Pj4gKw0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoCBpZiAiQXVkaXRPbmx5IiBpbiBzZWxm Ll9wYWNrYWdlX2NvbmZpZyBhbmQNCj4gPj4+Pj4+PiBzZWxmLl9wYWNrYWdlX2NvbmZpZ1siQXVk aXRPbmx5Il06DQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgc2VsZi5fYXVkaXRf b25seV9tb2RlID0gVHJ1ZQ0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAg aWYgIk91dHB1dEZpbGVEaWZmcyIgaW4gc2VsZi5fcGFja2FnZV9jb25maWcgYW5kDQo+ID4+Pj4+ Pj4gc2VsZi5fcGFja2FnZV9jb25maWdbIk91dHB1dEZpbGVEaWZmcyJdOg0KPiA+Pj4+Pj4+ICvC oMKgwqDCoMKgwqDCoMKgwqDCoMKgIHNlbGYuX291dHB1dF9maWxlX2RpZmZzID0gVHJ1ZQ0KPiA+ Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArwqDCoMKgIGRlZiBfbG9nX3VuY3J1c3RpZnlfYXBwX2luZm8o c2VsZikgLT4gTm9uZToNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAgIiIiDQo+ID4+Pj4+Pj4g K8KgwqDCoMKgwqDCoMKgIExvZ3MgVW5jcnVzdGlmeSBhcHBsaWNhdGlvbiBpbmZvcm1hdGlvbi4N Cj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAgIiIiDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKg IHNlbGYuX3RjLkxvZ1N0ZE91dChmIkZvdW5kIFVuY3J1c3RpZnkgYXQge3NlbGYuX2FwcF9wYXRo fSIpDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgIHNlbGYuX3RjLkxvZ1N0ZE91dChmIlVuY3J1 c3RpZnkgdmVyc2lvbjoNCj4gPj4+Pj4+PiB7c2VsZi5fYXBwX3ZlcnNpb259IikNCj4gPj4+Pj4+ PiArwqDCoMKgwqDCoMKgwqAgc2VsZi5fdGMuTG9nU3RkT3V0KCdcbicpDQo+ID4+Pj4+Pj4gK8Kg wqDCoMKgwqDCoMKgIGxvZ2dpbmcuaW5mbyhmIkZvdW5kIFVuY3J1c3RpZnkgYXQge3NlbGYuX2Fw cF9wYXRofSIpDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgIGxvZ2dpbmcuaW5mbyhmIlVuY3J1 c3RpZnkgdmVyc2lvbjoge3NlbGYuX2FwcF92ZXJzaW9ufSIpDQo+ID4+Pj4+Pj4gK8KgwqDCoMKg wqDCoMKgIGxvZ2dpbmcuaW5mbygnXG4nKQ0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArwqDCoMKg IGRlZiBfcHJvY2Vzc191bmNydXN0aWZ5X3Jlc3VsdHMoc2VsZikgLT4gTm9uZToNCj4gPj4+Pj4+ PiArwqDCoMKgwqDCoMKgwqAgIiIiDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgIFByb2Nlc3Mg dGhlIHJlc3VsdHMgZnJvbSBVbmNydXN0aWZ5Lg0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArwqDC oMKgwqDCoMKgwqAgRGV0ZXJtaW5lcyB3aGV0aGVyIGZvcm1hdHRpbmcgZXJyb3JzIGFyZSBwcmVz ZW50IGFuZA0KPiA+Pj4+Pj4+IGxvZ3MgZmFpbHVyZXMuDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDC oMKgICIiIg0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoCBmb3JtYXR0ZWRfZmlsZXMgPSBbc3Ry KHBhdGgucmVzb2x2ZSgpKSBmb3IgcGF0aCBpbg0KPiA+Pj4+Pj4+IHBhdGhsaWIuUGF0aCgNCj4g Pj4+Pj4+PiArDQo+ID4+Pj4+Pj4gc2VsZi5fYWJzX3BhY2thZ2VfcGF0aCkucmdsb2IoZicqe1Vu Y3J1c3RpZnlDaGVjay5GT1JNQVRURURfRklMRV9FWFRFTlNJT059JyldDQo+ID4+Pj4+Pj4NCj4g Pj4+Pj4+PiArDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgIHNlbGYuX2Zvcm1hdHRlZF9maWxl X2Vycm9yX2NvdW50ID0gbGVuKGZvcm1hdHRlZF9maWxlcykNCj4gPj4+Pj4+PiArDQo+ID4+Pj4+ Pj4gK8KgwqDCoMKgwqDCoMKgIGlmIHNlbGYuX2Zvcm1hdHRlZF9maWxlX2Vycm9yX2NvdW50ID4g MDoNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBzZWxmLl90Yy5Mb2dTdGRFcnJv cigiRmlsZXMgd2l0aCBmb3JtYXR0aW5nIGVycm9yczpcbiIpDQo+ID4+Pj4+Pj4gKw0KPiA+Pj4+ Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGlmIHNlbGYuX291dHB1dF9maWxlX2RpZmZzOg0K PiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgbG9nZ2luZy5pbmZvKCJD YWxjdWxhdGluZyBmaWxlIGRpZmZzLiBUaGlzIG1pZ2h0DQo+ID4+Pj4+Pj4gdGFrZSBhIHdoaWxl Li4uIikNCj4gPj4+Pj4+PiArDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgIGZvciBmb3JtYXR0 ZWRfZmlsZSBpbiBmb3JtYXR0ZWRfZmlsZXM6DQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDC oMKgwqAgcHJlX2Zvcm1hdHRlZF9maWxlID0gZm9ybWF0dGVkX2ZpbGVbOi0NCj4gPj4+Pj4+PiAr DQo+ID4+Pj4+Pj4gbGVuKFVuY3J1c3RpZnlDaGVjay5GT1JNQVRURURfRklMRV9FWFRFTlNJT04p XQ0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBpZiAoc2Vs Zi5fb3V0cHV0X2ZpbGVfZGlmZnMgb3INCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgc2VsZi5fZmlsZV90ZW1wbGF0ZV9jb250ZW50cyBpcyBub3QgTm9u ZSBvcg0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBz ZWxmLl9mdW5jX3RlbXBsYXRlX2NvbnRlbnRzIGlzIG5vdCBOb25lKToNCj4gPj4+Pj4+PiArwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHNlbGYuX3RjLkxvZ1N0ZEVycm9yKA0KPiA+Pj4+ Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBmIkZvcm1hdHRpbmcg ZXJyb3JzIGluDQo+ID4+Pj4+Pj4ge29zLnBhdGgucmVscGF0aChwcmVfZm9ybWF0dGVkX2ZpbGUs IHNlbGYuX2Fic19wYWNrYWdlX3BhdGgpfVxuIikNCj4gPj4+Pj4+PiArDQo+ID4+Pj4+Pj4gK8Kg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB3aXRoIG9wZW4oZm9ybWF0dGVkX2ZpbGUpIGFz IGZmOg0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBm b3JtYXR0ZWRfZmlsZV90ZXh0ID0gZmYucmVhZCgpDQo+ID4+Pj4+Pj4gKw0KPiA+Pj4+Pj4+ICvC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBpZiAoc2VsZi5fZmlsZV90ZW1w bGF0ZV9jb250ZW50cyBpcyBub3QgTm9uZQ0KPiA+Pj4+Pj4+IGFuZA0KPiA+Pj4+Pj4+ICvCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgc2VsZi5f ZmlsZV90ZW1wbGF0ZV9jb250ZW50cyBpbg0KPiA+Pj4+Pj4+IGZvcm1hdHRlZF9maWxlX3RleHQp Og0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgIHNlbGYuX3RjLkxvZ1N0ZEVycm9yKGYiRmlsZSBoZWFkZXIgaXMNCj4gPj4+Pj4+PiBtaXNz aW5nIGluIHtvcy5wYXRoLnJlbHBhdGgocHJlX2Zvcm1hdHRlZF9maWxlLA0KPiA+Pj4+Pj4+IHNl bGYuX2Fic19wYWNrYWdlX3BhdGgpfVxuIikNCj4gPj4+Pj4+PiArDQo+ID4+Pj4+Pj4gK8KgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGlmIChzZWxmLl9mdW5jX3RlbXBsYXRl X2NvbnRlbnRzIGlzIG5vdCBOb25lDQo+ID4+Pj4+Pj4gYW5kDQo+ID4+Pj4+Pj4gK8KgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBzZWxmLl9mdW5j X3RlbXBsYXRlX2NvbnRlbnRzIGluDQo+ID4+Pj4+Pj4gZm9ybWF0dGVkX2ZpbGVfdGV4dCk6DQo+ ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg c2VsZi5fdGMuTG9nU3RkRXJyb3IoZiJBIGZ1bmN0aW9uIGhlYWRlcg0KPiA+Pj4+Pj4+IGlzIG1p c3NpbmcgaW4NCj4gPj4+IHtvcy5wYXRoLnJlbHBhdGgocHJlX2Zvcm1hdHRlZF9maWxlLA0KPiA+ Pj4+Pj4+IHNlbGYuX2Fic19wYWNrYWdlX3BhdGgpfVxuIikNCj4gPj4+Pj4+PiArDQo+ID4+Pj4+ Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGlmIHNlbGYuX291dHB1 dF9maWxlX2RpZmZzOg0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgIHdpdGggb3BlbihwcmVfZm9ybWF0dGVkX2ZpbGUpIGFzIHBmOg0KPiA+ Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgcHJlX2Zvcm1hdHRlZF9maWxlX3RleHQgPSBwZi5yZWFkKCkNCj4gPj4+Pj4+PiArDQo+ ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg Zm9yIGxpbmUgaW4NCj4gPj4+Pj4+PiBkaWZmbGliLnVuaWZpZWRfZGlmZihwcmVfZm9ybWF0dGVk X2ZpbGVfdGV4dC5zcGxpdCgnXG4nKSwNCj4gPj4+Pj4+PiBmb3JtYXR0ZWRfZmlsZV90ZXh0LnNw bGl0KCdcbicpLCBmcm9tZmlsZT1wcmVfZm9ybWF0dGVkX2ZpbGUsDQo+ID4+Pj4+Pj4gdG9maWxl PWZvcm1hdHRlZF9maWxlLCBuPTMpOg0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgc2VsZi5fdGMuTG9nU3RkRXJyb3IobGlu ZSkNCj4gPj4+Pj4+PiArDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgc2VsZi5fdGMuTG9nU3RkRXJyb3IoJ1xuJykNCj4gPj4+Pj4+PiAr wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBlbHNlOg0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgc2VsZi5fdGMuTG9nU3RkRXJyb3IocHJlX2Zvcm1hdHRlZF9maWxlKQ0K PiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArwqDCoMKgIGRlZiBfcmVtb3ZlX3RyZWUoc2VsZiwgZGly X3BhdGg6IHN0ciwgaWdub3JlX2Vycm9yczogYm9vbCA9DQo+ID4+Pj4+Pj4gRmFsc2UpIC0+IE5v bmU6DQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgICIiIg0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKg wqDCoCBIZWxwZXIgZm9yIHJlbW92aW5nIGEgZGlyZWN0b3J5LiBPdmVyIHRpbWUgdGhlcmUgaGF2 ZSBiZWVuDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgIG1hbnkgcHJpdmF0ZSBpbXBsZW1lbnRh dGlvbnMgb2YgdGhpcyBkdWUgdG8gcmVsaWFiaWxpdHkNCj4gPj4+Pj4+PiBpc3N1ZXMgaW4gdGhl DQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgIHNodXRpbCBpbXBsZW1lbnRhdGlvbnMuIFRvIGNv bnNvbGlkYXRlIG9uIGEgc2luZ2xlDQo+ID4+Pj4+Pj4gZnVuY3Rpb24gdGhpcyBoZWxwZXIgaXMg YWRkZWQuDQo+ID4+Pj4+Pj4gKw0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoCBPbiBlcnJvciB0 cnkgdG8gY2hhbmdlIGZpbGUgYXR0cmlidXRlcy4gQWxzbyBhZGQgcmV0cnkNCj4gPj4+Pj4+PiBs b2dpYy4NCj4gPj4+Pj4+PiArDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgIFRoaXMgZnVuY3Rp b24gaXMgdGVtcG9yYXJpbHkgYm9ycm93ZWQgZnJvbQ0KPiA+Pj4+Pj4+IGVkazJ0b29sbGliLnV0 aWxpdHlfZnVuY3Rpb25zDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgIHNpbmNlIHRoZSB2ZXJz aW9uIHVzZWQgaW4gZWRrMiBpcyBub3QgcmVjZW50IGVub3VnaCB0bw0KPiA+Pj4+Pj4+IGluY2x1 ZGUgdGhlDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgIGZ1bmN0aW9uLg0KPiA+Pj4+Pj4+ICsN Cj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAgVGhpcyBmdW5jdGlvbiBzaG91bGQgYmUgcmVwbGFj ZWQgYnkgIlJlbW92ZVRyZWUiIHdoZW4gaXQNCj4gPj4+Pj4+PiBpcyBhdmFpbGFibGUuDQo+ID4+ Pj4+Pj4gKw0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoCBBcmdzOg0KPiA+Pj4+Pj4+ICvCoMKg wqDCoMKgwqDCoMKgwqAgLSBkaXJfcGF0aDogUGF0aCB0byBkaXJlY3RvcnkgdG8gcmVtb3ZlLg0K PiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqAgLSBpZ25vcmVfZXJyb3JzOiBXaGV0aGVyIHRv IGlnbm9yZSBlcnJvcnMgZHVyaW5nIHJlbW92YWwNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAg IiIiDQo+ID4+Pj4+Pj4gKw0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoCBkZWYgX3JlbW92ZV9y ZWFkb25seShmdW5jLCBwYXRoLCBfKToNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCAiIiINCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBQcml2YXRlIGZ1bmN0aW9u IHRvIGF0dGVtcHQgdG8gY2hhbmdlIHBlcm1pc3Npb25zIG9uDQo+ID4+Pj4+Pj4gZmlsZS9mb2xk ZXIgYmVpbmcgZGVsZXRlZC4NCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAiIiIN Cj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBvcy5jaG1vZChwYXRoLCBvcy5zdGF0 LlNfSVdSSVRFKQ0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGZ1bmMocGF0aCkN Cj4gPj4+Pj4+PiArDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgIGZvciBfIGluIHJhbmdlKDMp OsKgICMgcmV0cnkgdXAgdG8gMyB0aW1lcw0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDC oMKgIHRyeToNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHNodXRp bC5ybXRyZWUoZGlyX3BhdGgsDQo+ID4+Pj4+Pj4gaWdub3JlX2Vycm9ycz1pZ25vcmVfZXJyb3Jz LCBvbmVycm9yPV9yZW1vdmVfcmVhZG9ubHkpDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDC oMKgwqAgZXhjZXB0IE9TRXJyb3IgYXMgZXJyOg0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgbG9nZ2luZy53YXJuaW5nKGYiRmFpbGVkIHRvIGZ1bGx5IHJlbW92ZQ0K PiA+Pj4+Pj4+IHtkaXJfcGF0aH06IHtlcnJ9IikNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCBlbHNlOg0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg YnJlYWsNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAgZWxzZToNCj4gPj4+Pj4+PiArwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCByYWlzZSBSdW50aW1lRXJyb3IoZiJGYWlsZWQgdG8gcmVtb3ZlIHtk aXJfcGF0aH0iKQ0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArwqDCoMKgIGRlZiBfcnVuX3VuY3J1 c3RpZnkoc2VsZikgLT4gTm9uZToNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAgIiIiDQo+ID4+ Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgIFJ1bnMgVW5jcnVzdGlmeSBmb3IgdGhpcyBpbnN0YW5jZSBv ZiBwbHVnaW4gZXhlY3V0aW9uLg0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoCAiIiINCj4gPj4+ Pj4+PiArwqDCoMKgwqDCoMKgwqAgbG9nZ2luZy5pbmZvKCJFeGVjdXRpbmcgVW5jcnVzdGlmeS4g VGhpcyBtaWdodCB0YWtlIGENCj4gPj4+Pj4+PiB3aGlsZS4uLiIpDQo+ID4+Pj4+Pj4gK8KgwqDC oMKgwqDCoMKgIHN0YXJ0X3RpbWUgPSB0aW1laXQuZGVmYXVsdF90aW1lcigpDQo+ID4+Pj4+Pj4g K8KgwqDCoMKgwqDCoMKgIHNlbGYuX2V4ZWN1dGVfdW5jcnVzdGlmeSgpDQo+ID4+Pj4+Pj4gK8Kg wqDCoMKgwqDCoMKgIGVuZF90aW1lID0gdGltZWl0LmRlZmF1bHRfdGltZXIoKSAtIHN0YXJ0X3Rp bWUNCj4gPj4+Pj4+PiArDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgIGV4ZWN1dGlvbl9zdW1t YXJ5ID0gZiJVbmNydXN0aWZ5IGV4ZWN1dGVkIGFnYWluc3QNCj4gPj4+Pj4+PiB7bGVuKHNlbGYu X2Fic19maWxlX3BhdGhzX3RvX2Zvcm1hdCl9IGZpbGVzIGluDQo+ID4+Pj4+Pj4ge3NlbGYuX3Bh Y2thZ2VfbmFtZX0gaW4ge2VuZF90aW1lOi4yZn0gc2Vjb25kcy5cbiINCj4gPj4+Pj4+PiArDQo+ ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgIHNlbGYuX3RjLkxvZ1N0ZE91dChleGVjdXRpb25fc3Vt bWFyeSkNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAgbG9nZ2luZy5pbmZvKGV4ZWN1dGlvbl9z dW1tYXJ5KQ0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAgaWYgc2VsZi5f YXBwX2V4aXRfY29kZSAhPSAwIGFuZCBzZWxmLl9hcHBfZXhpdF9jb2RlICE9IDE6DQo+ID4+Pj4+ Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgcmFpc2UgVW5jcnVzdGlmeUFwcEV4ZWN1dGlvbkV4 Y2VwdGlvbigNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGYiRXJy b3Ige3N0cihzZWxmLl9hcHBfZXhpdF9jb2RlKX0gcmV0dXJuZWQgZnJvbQ0KPiA+Pj4+Pj4+IFVu Y3J1c3RpZnk6XG5cbntzdHIoc2VsZi5fYXBwX291dHB1dCl9IikNCj4gPj4+Pj4+PiBkaWZmIC0t Z2l0IGEvLnB5dG9vbC9QbHVnaW4vVW5jcnVzdGlmeUNoZWNrL2RlZmF1bHRfZmlsZV9oZWFkZXIu dHh0DQo+ID4+Pj4+Pj4gYi8ucHl0b29sL1BsdWdpbi9VbmNydXN0aWZ5Q2hlY2svZGVmYXVsdF9m aWxlX2hlYWRlci50eHQNCj4gPj4+Pj4+PiBuZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiA+Pj4+Pj4+ IGluZGV4IDAwMDAwMDAwMDAwMC4uMjk1NWE3MzRkZmUxDQo+ID4+Pj4+Pj4gLS0tIC9kZXYvbnVs bA0KPiA+Pj4+Pj4+ICsrKyBiLy5weXRvb2wvUGx1Z2luL1VuY3J1c3RpZnlDaGVjay9kZWZhdWx0 X2ZpbGVfaGVhZGVyLnR4dA0KPiA+Pj4+Pj4+IEBAIC0wLDAgKzEsOSBAQA0KPiA+Pj4+Pj4+ICsv KiogQGZpbGUNCj4gPj4+Pj4+PiArwqAgQnJpZWYgZGVzY3JpcHRpb24gb2YgdGhlIGZpbGUncyBw dXJwb3NlLg0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArwqAgRGV0YWlsZWQgZGVzY3JpcHRpb24g b2YgdGhlIGZpbGUncyBjb250ZW50cyBhbmQgb3RoZXIgdXNlZnVsDQo+ID4+Pj4+Pj4gK8KgIGlu Zm9ybWF0aW9uIGZvciBhIHBlcnNvbiB2aWV3aW5nIHRoZSBmaWxlIGZvciB0aGUgZmlyc3QgdGlt ZS4NCj4gPj4+Pj4+PiArDQo+ID4+Pj4+Pj4gK8KgIDw8Q29weXJpZ2h0Pj4NCj4gPj4+Pj4+PiAr wqAgU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0yLUNsYXVzZS1QYXRlbnQNCj4gPj4+Pj4+ PiArKiovDQo+ID4+Pj4+Pj4gZGlmZiAtLWdpdA0KPiA+Pj4+Pj4+IGEvLnB5dG9vbC9QbHVnaW4v VW5jcnVzdGlmeUNoZWNrL2RlZmF1bHRfZnVuY3Rpb25faGVhZGVyLnR4dA0KPiA+Pj4+Pj4+IGIv LnB5dG9vbC9QbHVnaW4vVW5jcnVzdGlmeUNoZWNrL2RlZmF1bHRfZnVuY3Rpb25faGVhZGVyLnR4 dA0KPiA+Pj4+Pj4+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0DQo+ID4+Pj4+Pj4gaW5kZXggMDAwMDAw MDAwMDAwLi42NmVkYzcyZTY3MzENCj4gPj4+Pj4+PiAtLS0gL2Rldi9udWxsDQo+ID4+Pj4+Pj4g KysrIGIvLnB5dG9vbC9QbHVnaW4vVW5jcnVzdGlmeUNoZWNrL2RlZmF1bHRfZnVuY3Rpb25faGVh ZGVyLnR4dA0KPiA+Pj4+Pj4+IEBAIC0wLDAgKzEsMTUgQEANCj4gPj4+Pj4+PiArLyoqDQo+ID4+ Pj4+Pj4gK8KgIEJyaWVmIGRlc2NyaXB0aW9uIG9mIHRoaXMgZnVuY3Rpb24ncyBwdXJwb3NlLg0K PiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArwqAgRm9sbG93IGl0IGltbWVkaWF0ZWx5IHdpdGggdGhl IGRldGFpbGVkIGRlc2NyaXB0aW9uLg0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArwqAgQHBhcmFt W2luXcKgwqDCoMKgwqAgQXJnMcKgIERlc2NyaXB0aW9uIG9mIEFyZzEuDQo+ID4+Pj4+Pj4gK8Kg IEBwYXJhbVtpbl3CoMKgwqDCoMKgIEFyZzLCoCBEZXNjcmlwdGlvbiBvZiBBcmcyIFRoaXMgaXMg Y29tcGxpY2F0ZWQNCj4gPj4+Pj4+PiBhbmQgcmVxdWlyZXMNCj4gPj4+Pj4+PiArwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBtdWx0aXBsZSBsaW5lcyB0byBk ZXNjcmliZS4NCj4gPj4+Pj4+PiArwqAgQHBhcmFtW291dF3CoMKgwqDCoCBBcmczwqAgRGVzY3Jp cHRpb24gb2YgQXJnMy4NCj4gPj4+Pj4+PiArwqAgQHBhcmFtW2luLCBvdXRdIEFyZzTCoCBEZXNj cmlwdGlvbiBvZiBBcmc0Lg0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArwqAgQHJldHZhbCBWQUxf T05FwqAgRGVzY3JpcHRpb24gb2Ygd2hhdCBWQUxfT05FIHNpZ25pZmllcy4NCj4gPj4+Pj4+PiAr wqAgQHJldHZhbCBPVEhFUsKgwqDCoCBUaGlzIGlzIHRoZSBvbmx5IG90aGVyIHJldHVybiB2YWx1 ZS4gSWYgdGhlcmUNCj4gPj4+Pj4+PiB3ZXJlIG90aGVyDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCByZXR1cm4gdmFsdWVzLCB0aGV5IHdvdWxkIGJlIGxp c3RlZC4NCj4gPj4+Pj4+PiArKiovDQo+ID4+Pj4+Pj4gZGlmZiAtLWdpdCBhLy5weXRvb2wvUGx1 Z2luL1VuY3J1c3RpZnlDaGVjay91bmNydXN0aWZ5LmNmZw0KPiA+Pj4+Pj4+IGIvLnB5dG9vbC9Q bHVnaW4vVW5jcnVzdGlmeUNoZWNrL3VuY3J1c3RpZnkuY2ZnDQo+ID4+Pj4+Pj4gbmV3IGZpbGUg bW9kZSAxMDA2NDQNCj4gPj4+Pj4+PiBpbmRleCAwMDAwMDAwMDAwMDAuLjFhODcyOTVlYzlmOQ0K PiA+Pj4+Pj4+IC0tLSAvZGV2L251bGwNCj4gPj4+Pj4+PiArKysgYi8ucHl0b29sL1BsdWdpbi9V bmNydXN0aWZ5Q2hlY2svdW5jcnVzdGlmeS5jZmcNCj4gPj4+Pj4+PiBAQCAtMCwwICsxLDQ2MiBA QA0KPiA+Pj4+Pj4+ICsjIyBAZmlsZQ0KPiA+Pj4+Pj4+ICsjIFVuY3J1c3RpZnkgQ29uZmlndXJh dGlvbiBGaWxlIGZvciBFREsgSUkgQyBDb2RlDQo+ID4+Pj4+Pj4gKyMNCj4gPj4+Pj4+PiArIyBD b2RpbmcgU3RhbmRhcmQ6DQo+ID4+Pj4+Pj4gaHR0cHM6Ly9lZGsyLWRvY3MuZ2l0Ym9vay5pby9l ZGstaWktYy1jb2Rpbmctc3RhbmRhcmRzLXNwZWNpZmljYXRpb24vDQo+ID4+Pj4+Pj4NCj4gPj4+ Pj4+PiArIw0KPiA+Pj4+Pj4+ICsjIFRoaXMgY29uZmlndXJhdGlvbiBmaWxlIGlzIG1lYW50IHRv IGJlIGEgImJlc3QgYXR0ZW1wdCIgdG8NCj4gPj4+Pj4+PiBhbGlnbiB3aXRoIHRoZQ0KPiA+Pj4+ Pj4+ICsjIGRlZmluaXRpb25zIGluIHRoZSBFREsgSUkgQyBDb2RpbmcgU3RhbmRhcmRzIFNwZWNp ZmljYXRpb24uDQo+ID4+Pj4+Pj4gKyMNCj4gPj4+Pj4+PiArIyBDb3B5cmlnaHQgKGMpIE1pY3Jv c29mdCBDb3Jwb3JhdGlvbi4NCj4gPj4+Pj4+PiArIyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjog QlNELTItQ2xhdXNlLVBhdGVudA0KPiA+Pj4+Pj4+ICsjIw0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+ PiArIyBGb3JjZSBVVEYtOCBlbmNvZGluZyAobm8gVVRGLTE2KQ0KPiA+Pj4+Pj4+ICtlbmFibGVf ZGlncmFwaHPCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IGZhbHNlDQo+ID4+Pj4+ Pj4gK3V0ZjhfYnl0ZcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg ID0gZmFsc2UNCj4gPj4+Pj4+PiArdXRmOF9mb3JjZcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCA9IHRydWUNCj4gPj4+Pj4+PiArDQo+ID4+Pj4+Pj4gKyMgQ29kZSB3 aWR0aCAvIGxpbmUgc3BsaXR0aW5nDQo+ID4+Pj4+Pj4gKyNjb2RlX3dpZHRowqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0xMjDCoMKgwqDCoCAjIFRPRE86IFRoaXMg Y2F1c2VzDQo+ID4+Pj4+Pj4gbm9uLWRldGVybWluaXN0aWMgYmVoYXZpb3VyIGluIHNvbWUgY2Fz ZXMgd2hlbiBjb2RlDQo+ID4+Pj4+IHdyYXBzDQo+ID4+Pj4+Pj4gK2xzX2NvZGVfd2lkdGjCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPWZhbHNlDQo+ID4+Pj4+Pj4gK2xzX2Zv cl9zcGxpdF9mdWxswqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9dHJ1ZQ0KPiA+Pj4+Pj4+ ICtsc19mdW5jX3NwbGl0X2Z1bGzCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9dHJ1ZQ0KPiA+ Pj4+Pj4+ICtwb3NfY29tbWHCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCA9dHJhaWwNCj4gPj4+Pj4+PiArDQo+ID4+Pj4+Pj4gKyMgNS4xLjfCoCBBbGwgZmlsZXMg bXVzdCBlbmQgd2l0aCBDUkxGDQo+ID4+Pj4+Pj4gK25ld2xpbmVzwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IGNybGYNCj4gPj4+Pj4+PiArDQo+ID4+Pj4+ Pj4gKyMgNS4xLjIgRG8gbm90IHVzZSB0YWIgY2hhcmFjdGVycw0KPiA+Pj4+Pj4+ICsNCj4gPj4+ Pj4+PiArY210X2NvbnZlcnRfdGFiX3RvX3NwYWNlc8KgwqDCoMKgwqDCoCA9IHRydWXCoMKgwqDC oMKgICMgV2hldGhlciB0byBjb252ZXJ0DQo+ID4+Pj4+Pj4gYWxsIHRhYnMgdG8gc3BhY2VzIGlu IGNvbW1lbnRzLiBJZiBmYWxzZSwgdGFicyBpbg0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCAjIGNvbW1lbnRzIGFyZSBsZWZ0DQo+ID4+Pj4+Pj4gYWxvbmUsIHVubGVz cyB1c2VkIGZvciBpbmRlbnRpbmcuDQo+ID4+Pj4+Pj4gK2luZGVudF9jb2x1bW5zwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IDLCoMKgwqDCoMKgwqDCoMKgICMgTnVtYmVyIG9m IHNwYWNlcw0KPiA+Pj4+Pj4+IGZvciBpbmRlbnRhdGlvbg0KPiA+Pj4+Pj4+ICtpbmRlbnRfd2l0 aF90YWJzwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gMMKgwqDCoMKgwqDCoMKgwqAg IyBEbyBub3QgdXNlIFRBQg0KPiA+Pj4+Pj4+IGNoYXJhY3RlcnMNCj4gPj4+Pj4+PiArc3RyaW5n X3JlcGxhY2VfdGFiX2NoYXJzwqDCoMKgwqDCoMKgwqAgPSB0cnVlwqDCoMKgwqDCoCAjIFJlcGxh Y2UgVEFCIHdpdGgNCj4gPj4+Pj4+PiBTUEFDRQ0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCAjIE5vdGU6IFRoaXMgd2lsbA0KPiA+Pj4+Pj4+IGJyZWFrIC5yb2JvdCBm aWxlcyBidXQgaXMgbmVlZGVkIGZvciBlZGsyIHN0eWxlDQo+ID4+Pj4+Pj4gKw0KPiA+Pj4+Pj4+ ICsjIDUuMi4xLjEgVGhlcmUgc2hhbGwgYmUgb25seSBvbmUgc3RhdGVtZW50IG9uIGEgbGluZSAo c3RhdGVtZW50DQo+ID4+Pj4+Pj4gZW5kcyB3aXRoIDspDQo+ID4+Pj4+Pj4gK25sX211bHRpX2xp bmVfY29uZMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gdHJ1ZcKgwqDCoMKgwqAgIyBBZGQg YSBuZXdsaW5lDQo+ID4+Pj4+Pj4gYmV0d2VlbiAnKScgYW5kICd7JyBpZiB0aGUgJyknIGlzIG9u IGEgZGlmZmVyZW50IGxpbmUNCj4gPj4+PiB0aGFuDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgICMgdGhlIGlmL2Zvci9ldGMuDQo+ID4+Pj4+Pj4gK25sX2FmdGVyX3Nl bWljb2xvbsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gdHJ1ZcKgwqDCoMKgwqAgIyBXaGV0 aGVyIHRvIGFkZCBhDQo+ID4+Pj4+Pj4gbmV3bGluZSBhZnRlciBzZW1pY29sb25zLCBleGNlcHQg aW4gJ2ZvcicNCj4gPj4+IHN0YXRlbWVudHMuDQo+ID4+Pj4+Pj4gKw0KPiA+Pj4+Pj4+ICsjIDUu Mi4xLjMgQW4gb3BlbiBicmFjZSAneycgZ29lcyBvbiB0aGUgc2FtZSBsaW5lIGFzIHRoZSBjbG9z aW5nDQo+ID4+Pj4+Pj4gcGFyZW50aGVzaXMgJyknIG9mIHNpbXBsZSBwcmVkaWNhdGUgZXhwcmVz c2lvbnMNCj4gPj4+Pj4+PiArbW9kX2Z1bGxfYnJhY2VfZG/CoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgID0gYWRkwqDCoMKgwqDCoMKgICMgQWRkIG9yIHJlbW92ZQ0KPiA+Pj4+Pj4+IGJyYWNl cyBvbiBhIHNpbmdsZS1saW5lICdkbycgc3RhdGVtZW50Lg0KPiA+Pj4+Pj4+ICttb2RfZnVsbF9i cmFjZV9mb3LCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IGFkZA0KPiA+Pj4+Pj4+ICttb2Rf ZnVsbF9icmFjZV9mdW5jdGlvbsKgwqDCoMKgwqDCoMKgwqAgPSBhZGTCoMKgwqDCoMKgwqAgIyBB ZGQgb3IgcmVtb3ZlDQo+ID4+Pj4+Pj4gYnJhY2VzIG9uIGEgc2luZ2xlLWxpbmUgZnVuY3Rpb24g ZGVmaW5pdGlvbi4NCj4gPj4+Pj4+PiArbW9kX2Z1bGxfYnJhY2VfaWbCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgID0gYWRkwqDCoMKgwqDCoMKgICMgQWRkIG9yIHJlbW92ZQ0KPiA+Pj4+Pj4+ IGJyYWNlcyBvbiBhIHNpbmdsZS1saW5lICdpZicgc3RhdGVtZW50LiBCcmFjZXMgd2lsbA0KPiA+ Pj4gbm90DQo+ID4+Pj4gYmUNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqAgIyByZW1vdmVkIGlmIHRoZQ0KPiA+Pj4+Pj4+IGJyYWNlZCBzdGF0ZW1lbnQgY29udGFpbnMg YW4gJ2Vsc2UnLg0KPiA+Pj4+Pj4+ICttb2RfZnVsbF9icmFjZV9pZl9jaGFpbsKgwqDCoMKgwqDC oMKgwqAgPSBmYWxzZQ0KPiA+Pj4+Pj4+ICttb2RfZnVsbF9icmFjZV93aGlsZcKgwqDCoMKgwqDC oMKgwqDCoMKgwqAgPSBhZGQNCj4gPj4+Pj4+PiArDQo+ID4+Pj4+Pj4gKyMgNS4yLjEuNCBBIGNs b3NlIGJyYWNlICd9JyBhbHdheXMgZ29lcyBhdCB0aGUgYmVnaW5uaW5nIG9mIHRoZQ0KPiA+Pj4+ Pj4+IGxhc3QgbGluZSBvZiB0aGUgYm9keQ0KPiA+Pj4+Pj4+ICtlYXRfYmxhbmtzX2FmdGVyX29w ZW5fYnJhY2XCoMKgwqDCoCA9IHRydWUNCj4gPj4+Pj4+PiArZWF0X2JsYW5rc19iZWZvcmVfY2xv c2VfYnJhY2XCoMKgID0gdHJ1ZcKgwqDCoMKgwqAgIyBXaGV0aGVyIHRvIHJlbW92ZQ0KPiA+Pj4+ Pj4+IGJsYW5rIGxpbmVzIGJlZm9yZSAnfScuDQo+ID4+Pj4+Pj4gKw0KPiA+Pj4+Pj4+ICsjIDUu Mi4yLjIgQWx3YXlzIHB1dCBzcGFjZSBiZWZvcmUgYW5kIGFmdGVyIGJpbmFyeSBvcGVyYXRvcnMu DQo+ID4+Pj4+Pj4gK3NwX2Fzc2lnbsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgID0gYWRkwqDCoMKgwqDCoMKgICMgQWRkIG9yIHJlbW92ZQ0KPiA+Pj4+Pj4+IHNw YWNlIGFyb3VuZCBhc3NpZ25tZW50IG9wZXJhdG9yICc9JywgJys9JywgZXRjLg0KPiA+Pj4+Pj4+ ICtzcF9hc3NpZ25fZGVmYXVsdMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSBhZGQNCj4g Pj4+Pj4+PiArc3BfYm9vbMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCA9IGFkZMKgwqDCoMKgwqDCoCAjIEFkZCBvciByZW1vdmUNCj4gPj4+Pj4+PiBzcGFj ZSBhcm91bmQgYm9vbGVhbiBvcGVyYXRvcnMgJyYmJyBhbmQgJ3x8Jy4NCj4gPj4+Pj4+PiArc3Bf Y29tcGFyZcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IGFkZMKg wqDCoMKgwqDCoCAjIEFkZCBvciByZW1vdmUNCj4gPj4+Pj4+PiBzcGFjZSBhcm91bmQgY29tcGFy ZSBvcGVyYXRvciAnPCcsICc+JywgJz09JywgZXRjLg0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiAr IyA1LjIuMi4zIERvIG5vdCBwdXQgc3BhY2UgYmV0d2VlbiB1bmFyeSBvcGVyYXRvcnMgYW5kIHRo ZWlyIG9iamVjdA0KPiA+Pj4+Pj4+ICtzcF9hZGRywqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gcmVtb3ZlwqDCoMKgICMgQSBvciByZW1vdmUgc3BhY2UN Cj4gPj4+Pj4+PiBhZnRlciB0aGUgJyYnIChhZGRyZXNzLW9mKSB1bmFyeSBvcGVyYXRvci4NCj4g Pj4+Pj4+PiArc3BfaW5jZGVjwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgPSByZW1vdmXCoMKgwqAgIyBBZGQgb3IgcmVtb3ZlDQo+ID4+Pj4+Pj4gc3BhY2UgYmV0 d2VlbiAnKysnIGFuZCAnLS0nIHRoZSB3b3JkIHRvIHdoaWNoIGl0IGlzDQo+ID4+Pj4gYmVpbmcN Cj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgIyBhcHBsaWVkLCBhcyBp bg0KPiA+Pj4+Pj4+ICcoLS14KScgb3IgJ3krKzsnLg0KPiA+Pj4+Pj4+ICtzcF9pbnbCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IHJlbW92ZcKgwqDC oCAjIEFkZCBvciByZW1vdmUNCj4gPj4+Pj4+PiBzcGFjZSBhZnRlciB0aGUgJ34nIChpbnZlcnQp IHVuYXJ5IG9wZXJhdG9yLg0KPiA+Pj4+Pj4+ICtzcF9ub3TCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IHJlbW92ZcKgwqDCoCAjIEFkZCBvciByZW1v dmUNCj4gPj4+Pj4+PiBzcGFjZSBhZnRlciB0aGUgJyEnIChub3QpIHVuYXJ5IG9wZXJhdG9yLg0K PiA+Pj4+Pj4+ICtzcF9zaWduwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgID0gcmVtb3ZlwqDCoMKgICMgQWRkIG9yIHJlbW92ZQ0KPiA+Pj4+Pj4+IHNwYWNl IGFmdGVyICcrJyBvciAnLScsIGFzIGluICd4ID0gLTUnIG9yICd5ID0gKzcnLg0KPiA+Pj4+Pj4+ ICsNCj4gPj4+Pj4+PiArIyA1LjIuMi40IFN1YnNlcXVlbnQgbGluZXMgb2YgbXVsdGktbGluZSBm dW5jdGlvbiBjYWxscyBzaG91bGQNCj4gPj4+Pj4+PiBsaW5lIHVwIHR3byBzcGFjZXMgZnJvbSB0 aGUgYmVnaW5uaW5nIG9mIHRoZQ0KPiA+Pj4gZnVuY3Rpb24NCj4gPj4+Pj4+PiArI8KgwqDCoMKg wqDCoMKgwqAgbmFtZQ0KPiA+Pj4+Pj4+ICtubF9mdW5jX2NhbGxfYXJnc19tdWx0aV9saW5lwqDC oMKgID0gdHJ1ZcKgwqDCoMKgwqAgIyBXaGV0aGVyIHRvIGFkZCBhDQo+ID4+Pj4+Pj4gbmV3bGlu ZSBhZnRlciBlYWNoICcsJyBpbiBhIGZ1bmN0aW9uIGNhbGwgaWYgJygnDQo+ID4+PiBhbmQNCj4g Pj4+Pj4gJyknDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICMgYXJl IGluIGRpZmZlcmVudA0KPiA+Pj4+Pj4+IGxpbmVzLg0KPiA+Pj4+Pj4+ICtubF9mdW5jX2NhbGxf YXJnc19tdWx0aV9saW5lX2lnbm9yZV9jbG9zdXJlcyA9IGZhbHNlDQo+ID4+Pj4+Pj4gKw0KPiA+ Pj4+Pj4+ICsjIC0gSW5kZW50IGVhY2ggYXJndW1lbnQgMiBzcGFjZXMgZnJvbSB0aGUgc3RhcnQg b2YgdGhlIGZ1bmN0aW9uDQo+ID4+Pj4+Pj4gbmFtZS4gSWYgYQ0KPiA+Pj4+Pj4+ICsjwqDCoCBm dW5jdGlvbiBpcyBjYWxsZWQgdGhyb3VnaCBhIHN0cnVjdHVyZSBvciB1bmlvbiBtZW1iZXIsIG9m IHR5cGUNCj4gPj4+Pj4+PiArI8KgwqAgcG9pbnRlci10by1mdW5jdGlvbiwgdGhlbiBpbmRlbnQg ZWFjaCBhcmd1bWVudCAyIHNwYWNlcyBmcm9tDQo+ID4+Pj4+Pj4gdGhlIHN0YXJ0IG9mIHRoZQ0K PiA+Pj4+Pj4+ICsjwqDCoCBtZW1iZXIgbmFtZS4NCj4gPj4+Pj4+PiAraW5kZW50X2Z1bmNfY2Fs bF9lZGsyX3N0eWxlwqDCoMKgwqAgPSB0cnVlwqDCoMKgwqDCoCAjIFVzZSBFREsyDQo+ID4+Pj4+ Pj4gaW5kZW50YXRpb24gc3R5bGUgZm9yIGZ1bmN0aW9uIGNhbGxzwqAgKCoqQ1VTVE9NIFNFVFRJ TkcqKikNCj4gPj4+Pj4+PiAraW5kZW50X3BhcmVuX2FmdGVyX2Z1bmNfY2FsbMKgwqDCoCA9IHRy dWXCoMKgwqDCoMKgICMgV2hldGhlciB0byBpbmRlbnQNCj4gPj4+Pj4+PiB0aGUgb3BlbiBwYXJl bnRoZXNpcyBvZiBhIGZ1bmN0aW9uIGNhbGwsIGlmIHRoZQ0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoCAjIHBhcmVudGhlc2lzIGlzIG9uDQo+ID4+Pj4+Pj4gaXRzIG93 biBsaW5lLg0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArIyAtIEFsaWduIHRoZSBjbG9zZSBwYXJl bnRoZXNpcyB3aXRoIHRoZSBzdGFydCBvZiB0aGUgbGFzdCBhcmd1bWVudA0KPiA+Pj4+Pj4+ICtp bmRlbnRfcGFyZW5fY2xvc2XCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IDDCoMKgwqDCoMKg wqDCoMKgICMgSG93IHRvIGluZGVudCBhDQo+ID4+Pj4+Pj4gY2xvc2UgcGFyZW50aGVzaXMgYWZ0 ZXIgYSBuZXdsaW5lLg0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAj ICgwOiBCb2R5LCAxOg0KPiA+Pj4+Pj4+IE9wZW5wYXJlbnRoZXNpcywgMjogQnJhY2UgbGV2ZWwp DQo+ID4+Pj4+Pj4gKw0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArIyA1LjIuMi41IEFsd2F5cyBw dXQgc3BhY2UgYWZ0ZXIgY29tbWFzIG9yIHNlbWljb2xvbnMgdGhhdA0KPiA+Pj4+Pj4+IHNlcGFy YXRlIGl0ZW1zDQo+ID4+Pj4+Pj4gK3NwX2FmdGVyX2NvbW1hwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCA9IGZvcmNlwqDCoMKgwqAgIyBBZGQgb3IgcmVtb3ZlDQo+ID4+Pj4+Pj4g c3BhY2UgYWZ0ZXIgJywnLCBpLmUuICdhLGInIHZzLiAnYSwgYicuDQo+ID4+Pj4+Pj4gK3NwX2Jl Zm9yZV9jb21tYcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gcmVtb3ZlwqDCoMKg ICMgQWRkIG9yIHJlbW92ZQ0KPiA+Pj4+Pj4+IHNwYWNlIGJlZm9yZSAnLCcuDQo+ID4+Pj4+Pj4g Kw0KPiA+Pj4+Pj4+ICsjIDUuMi4yLjYgQWx3YXlzIHB1dCBzcGFjZSBiZWZvcmUgYW4gb3BlbiBw YXJlbnRoZXNpcw0KPiA+Pj4+Pj4+ICtzcF9hZnRlcl9zcGFyZW7CoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCA9IGFkZMKgwqDCoMKgwqDCoCAjIEFkZCBvciByZW1vdmUNCj4gPj4+Pj4+ PiBzcGFjZSBhZnRlciAnKScgb2YgY29udHJvbCBzdGF0ZW1lbnRzLg0KPiA+Pj4+Pj4+ICtzcF9h dHRyaWJ1dGVfcGFyZW7CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IGFkZMKgwqDCoMKgwqDC oCAjIEFkZCBvciByZW1vdmUNCj4gPj4+Pj4+PiBzcGFjZSBiZXR3ZWVuICdfX2F0dHJpYnV0ZV9f JyBhbmQgJygnLg0KPiA+Pj4+Pj4+ICtzcF9iZWZvcmVfc3BhcmVuwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgID0gZm9yY2XCoMKgwqDCoCAjIEFkZCBvciByZW1vdmUNCj4gPj4+Pj4+PiBz cGFjZSBiZWZvcmUgJygnIG9mIGNvbnRyb2wgc3RhdGVtZW50cw0KPiA+Pj4+Pj4+ICvCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjICgnaWYnLCAnZm9yJywNCj4gPj4+Pj4+PiAnc3dpdGNo JywgJ3doaWxlJywgZXRjLikuDQo+ID4+Pj4+Pj4gK3NwX2RlZmluZWRfcGFyZW7CoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqAgPSBmb3JjZcKgwqDCoMKgICMgQWRkIG9yIHJlbW92ZQ0KPiA+ Pj4+Pj4+IHNwYWNlIGJldHdlZW4gJ2RlZmluZWQnIGFuZCAnKCcgaW4gJyNpZiBkZWZpbmVkDQo+ ID4+PiAoRk9PKScuDQo+ID4+Pj4+Pj4gK3NwX2Z1bmNfY2FsbF9wYXJlbsKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgID0gZm9yY2XCoMKgwqDCoCAjIEFkZCBvciByZW1vdmUNCj4gPj4+Pj4+PiBz cGFjZSBiZXR3ZWVuIGZ1bmN0aW9uIG5hbWUgYW5kICcoJyBvbiBmdW5jdGlvbiBjYWxscy4NCj4g Pj4+Pj4+PiArc3BfZnVuY19jYWxsX3BhcmVuX2VtcHR5wqDCoMKgwqDCoMKgwqAgPSBmb3JjZcKg wqDCoMKgICMgQWRkIG9yIHJlbW92ZQ0KPiA+Pj4+Pj4+IHNwYWNlIGJldHdlZW4gZnVuY3Rpb24g bmFtZSBhbmQgJygpJyBvbiBmdW5jdGlvbiBjYWxscw0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCAjIHdpdGhvdXQNCj4gPj4+Pj4+PiBwYXJhbWV0ZXJzLiBJZiBzZXQg dG8gaWdub3JlICh0aGUgZGVmYXVsdCksDQo+ID4+PiBzcF9mdW5jX2NhbGxfcGFyZW4NCj4gPj4+ Pj4gaXMNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgIyB1c2VkLg0K PiA+Pj4+Pj4+ICtzcF9mdW5jX2RlZl9wYXJlbsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg PSBhZGTCoMKgwqDCoMKgwqAgIyBBZGQgb3IgcmVtb3ZlDQo+ID4+Pj4+Pj4gc3BhY2UgYmV0d2Vl biBhbGlhcyBuYW1lIGFuZCAnKCcgb2YgYSBub24tcG9pbnRlcg0KPiA+Pj4+IGZ1bmN0aW9uDQo+ ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICMgdHlwZSB0eXBlZGVmLg0K PiA+Pj4+Pj4+ICtzcF9mdW5jX3Byb3RvX3BhcmVuwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0g YWRkwqDCoMKgwqDCoMKgICMgQWRkIG9yIHJlbW92ZQ0KPiA+Pj4+Pj4+IHNwYWNlIGJldHdlZW4g ZnVuY3Rpb24gbmFtZSBhbmQgJygpJyBvbiBmdW5jdGlvbg0KPiA+Pj4+PiBkZWNsYXJhdGlvbg0K PiA+Pj4+Pj4+ICtzcF9zaXplb2ZfcGFyZW7CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCA9IGZvcmNlwqDCoMKgwqAgIyBBZGQgb3IgcmVtb3ZlDQo+ID4+Pj4+Pj4gc3BhY2UgYmV0d2Vl biAnc2l6ZW9mJyBhbmQgJygnLg0KPiA+Pj4+Pj4+ICtzcF90eXBlX2Z1bmPCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IGFkZMKgwqDCoMKgwqDCoCAjIEFkZCBvciByZW1v dmUNCj4gPj4+Pj4+PiBzcGFjZSBiZXR3ZWVuIHJldHVybiB0eXBlIGFuZCBmdW5jdGlvbiBuYW1l LiBBIG1pbmltdW0NCj4gPj4+PiBvZg0KPiA+Pj4+PiAxDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgICMgaXMgZm9yY2VkIGV4Y2VwdA0KPiA+Pj4+Pj4+IGZvciBwb2lu dGVyIHJldHVybiB0eXBlcy4NCj4gPj4+Pj4+PiArDQo+ID4+Pj4+Pj4gKyMgTm90IHNwZWNpZmll ZCwgYnV0IGFsc28gZ29vZCBzdHlsZSB0byByZW1vdmUgc3BhY2VzIGluc2lkZQ0KPiA+Pj4+Pj4+ IHBhcmVudGhlc2VzIChPcHRpb25hbCkNCj4gPj4+Pj4+PiArc3BfY3BhcmVuX29wYXJlbsKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IHJlbW92ZcKgwqDCoCAjIEFkZCBvciByZW1vdmUN Cj4gPj4+Pj4+PiBzcGFjZSBiZXR3ZWVuIGJhY2stdG8tYmFjayBwYXJlbnRoZXNlcywgaS5lLiAn KSgnIHZzLg0KPiA+Pj4gJykNCj4gPj4+Pj4gKCcuDQo+ID4+Pj4+Pj4gK3NwX2luc2lkZV9mcGFy ZW7CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSByZW1vdmXCoMKgwqAgIyBBZGQgb3Ig cmVtb3ZlDQo+ID4+Pj4+Pj4gc3BhY2UgaW5zaWRlIGZ1bmN0aW9uICcoJyBhbmQgJyknLg0KPiA+ Pj4+Pj4+ICtzcF9pbnNpZGVfZnBhcmVuc8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSBy ZW1vdmXCoMKgwqAgIyBBZGQgb3IgcmVtb3ZlDQo+ID4+Pj4+Pj4gc3BhY2UgaW5zaWRlIGVtcHR5 IGZ1bmN0aW9uICcoKScuDQo+ID4+Pj4+Pj4gK3NwX2luc2lkZV9wYXJlbsKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgID0gcmVtb3ZlwqDCoMKgICMgQWRkIG9yIHJlbW92ZQ0KPiA+Pj4+ Pj4+IHNwYWNlIGluc2lkZSAnKCcgYW5kICcpJy4NCj4gPj4+Pj4+PiArc3BfaW5zaWRlX3BhcmVu X2Nhc3TCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gcmVtb3ZlwqDCoMKgICMgQWRkIG9yIHJlbW92 ZQ0KPiA+Pj4+Pj4+IHNwYWNlcyBpbnNpZGUgY2FzdCBwYXJlbnRoZXNlcy4gJyhpbnQpeCcNCj4g Pj4+Pj4+PiArc3BfaW5zaWRlX3NxdWFyZcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9 IHJlbW92ZcKgwqDCoCAjIEFkZCBvciByZW1vdmUNCj4gPj4+Pj4+PiBzcGFjZSBpbnNpZGUgYSBu b24tZW1wdHkgJ1snIGFuZCAnXScuDQo+ID4+Pj4+Pj4gK3NwX3BhcmVuX3BhcmVuwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IHJlbW92ZcKgwqDCoCAjIEFkZCBvciByZW1vdmUN Cj4gPj4+Pj4+PiBzcGFjZSBiZXR3ZWVuIG5lc3RlZCBwYXJlbnRoZXNlcywgaS5lLiAnKCgnIHZz LiAnKSApJy4NCj4gPj4+Pj4+PiArc3Bfc3F1YXJlX2ZwYXJlbsKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoCA9IHJlbW92ZcKgwqDCoCAjIEFkZCBvciByZW1vdmUNCj4gPj4+Pj4+PiBzcGFj ZSBiZXR3ZWVuICddJyBhbmQgJygnIHdoZW4gcGFydCBvZiBhIGZ1bmN0aW9uDQo+ID4+PiBjYWxs Lg0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArIyA1LjIuMi43IFB1dCBhIHNwYWNlIGJlZm9yZSBh biBvcGVuIGJyYWNlIGlmIGl0IGlzIG5vdCBvbiBpdHMNCj4gPj4+Pj4+PiBvd24gbGluZQ0KPiA+ Pj4+Pj4+ICtzcF9kb19icmFjZV9vcGVuwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0g Zm9yY2XCoMKgwqDCoCAjIEFkZCBvciByZW1vdmUNCj4gPj4+Pj4+PiBzcGFjZSBiZXR3ZWVuICdk bycgYW5kICd7Jy4NCj4gPj4+Pj4+PiArc3BfcGFyZW5fYnJhY2XCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgID0gZm9yY2XCoMKgwqDCoCAjIEFkZCBvciByZW1vdmUNCj4gPj4+Pj4+ PiBzcGFjZSBiZXR3ZWVuICcpJyBhbmQgJ3snLg0KPiA+Pj4+Pj4+ICtzcF9zcGFyZW5fYnJhY2XC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IGZvcmNlwqDCoMKgwqAgIyBBZGQgb3Ig cmVtb3ZlDQo+ID4+Pj4+Pj4gc3BhY2UgYmV0d2VlbiAnKScgYW5kICd7JyBvZiBvZiBjb250cm9s IHN0YXRlbWVudHMuDQo+ID4+Pj4+Pj4gKw0KPiA+Pj4+Pj4+ICsjIDUuMi4yLjggRG8gbm90IHB1 dCBzcGFjZXMgYXJvdW5kIHN0cnVjdHVyZSBtZW1iZXIgYW5kIHBvaW50ZXINCj4gPj4+Pj4+PiBv cGVyYXRvcnMNCj4gPj4+Pj4+PiArc3BfYWZ0ZXJfYnlyZWbCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgID0gcmVtb3ZlwqDCoMKgICMgQWRkIG9yIHJlbW92ZQ0KPiA+Pj4+Pj4+IHNw YWNlIGFmdGVyIHJlZmVyZW5jZSBzaWduICcmJywgaWYgZm9sbG93ZWQgYnkgYSB3b3JkLg0KPiA+ Pj4+Pj4+ICtzcF9iZWZvcmVfYnlyZWbCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9 IGFkZMKgwqDCoMKgwqDCoCAjIEFkZCBvciByZW1vdmUNCj4gPj4+Pj4+PiBzcGFjZSBiZWZvcmUg YSByZWZlcmVuY2Ugc2lnbiAnJicuDQo+ID4+Pj4+Pj4gK3NwX2RlcmVmwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IHJlbW92ZcKgwqDCoCAjIEFkZCBvciBy ZW1vdmUNCj4gPj4+Pj4+PiBzcGFjZSBhZnRlciB0aGUgJyonIChkZXJlZmVyZW5jZSkgdW5hcnkg b3BlcmF0b3IuIFRoaXMNCj4gPj4+Pj4gZG9lcw0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCAjIG5vdCBhZmZlY3QgdGhlDQo+ID4+Pj4+Pj4gc3BhY2luZyBhZnRlciBh ICcqJyB0aGF0IGlzIHBhcnQgb2YgYSB0eXBlLg0KPiA+Pj4+Pj4+ICtzcF9tZW1iZXLCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IHJlbW92ZcKgwqDCoCAjIEFk ZCBvciByZW1vdmUNCj4gPj4+Pj4+PiBzcGFjZSBhcm91bmQgdGhlICcuJyBvciAnLT4nIG9wZXJh dG9ycy4NCj4gPj4+Pj4+PiArDQo+ID4+Pj4+Pj4gKyMgNS4yLjIuOSBEbyBub3QgcHV0IHNwYWNl cyBiZWZvcmUgb3BlbiBicmFja2V0cyBvZiBhcnJheQ0KPiA+Pj4+Pj4+IHN1YnNjcmlwdHMNCj4g Pj4+Pj4+PiArc3BfYmVmb3JlX3NxdWFyZcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9 IHJlbW92ZcKgwqDCoCAjIEFkZCBvciByZW1vdmUNCj4gPj4+Pj4+PiBzcGFjZSBiZWZvcmUgJ1sn IChleGNlcHQgJ1tdJykuDQo+ID4+Pj4+Pj4gK3NwX2JlZm9yZV9zcXVhcmVzwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCA9IHJlbW92ZcKgwqDCoCAjIEFkZCBvciByZW1vdmUNCj4gPj4+Pj4+ PiBzcGFjZSBiZWZvcmUgJ1tdJy4NCj4gPj4+Pj4+PiArc3BfYmVmb3JlX3ZhcmRlZl9zcXVhcmXC oMKgwqDCoMKgwqDCoMKgID0gcmVtb3ZlwqDCoMKgICMgQWRkIG9yIHJlbW92ZQ0KPiA+Pj4+Pj4+ IHNwYWNlIGJlZm9yZSAnWycgZm9yIGEgdmFyaWFibGUgZGVmaW5pdGlvbi4NCj4gPj4+Pj4+PiAr DQo+ID4+Pj4+Pj4gKyMgNS4yLjIuMTAgVXNlIGV4dHJhIHBhcmVudGhlc2VzIHJhdGhlciB0aGFu IGRlcGVuZGluZyBvbg0KPiA+Pj4+Pj4+IGluLWRlcHRoIGtub3dsZWRnZSBvZiB0aGUgb3JkZXIg b2YgcHJlY2VkZW5jZSBvZiBDDQo+ID4+Pj4+Pj4gK21vZF9mdWxsX3BhcmVuX2lmX2Jvb2zCoMKg wqDCoMKgwqDCoMKgwqAgPSB0cnVlwqDCoMKgwqDCoCAjIFdoZXRoZXIgdG8gZnVsbHkNCj4gPj4+ Pj4+PiBwYXJlbnRoZXNpemUgQm9vbGVhbiBleHByZXNzaW9ucyBpbiAnd2hpbGUnIGFuZA0KPiA+ Pj4gJ2lmJw0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjIHN0YXRl bWVudCwgYXMgaW4NCj4gPj4+Pj4+PiAnaWYgKGEgJiYgYiA+IGMpJyA9PiAnaWYgKGEgJiYgKGIg PiBjKSknLg0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArIyA1LjIuMi4xMSBBbGlnbiBhIGNvbnRp bnVhdGlvbiBsaW5lIHdpdGggdGhlIHBhcnQgb2YgdGhlIGxpbmUNCj4gPj4+Pj4+PiB0aGF0IGl0 IGNvbnRpbnVlcy4NCj4gPj4+Pj4+PiArdXNlX2luZGVudF9jb250aW51ZV9vbmx5X29uY2XCoMKg ID0gdHJ1ZQ0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArIyBBZGRpdGlvbmFsICd7fScgYnJhY2lu ZyBydWxlcyAoT3B0aW9uYWwpDQo+ID4+Pj4+Pj4gKyMgTk9URSAtIFRoZSBzdHlsZSBndWlkZSBz cGVjaWZpZXMgdHdvIGRpZmZlcmVudCBzdHlsZXMgZm9yIGJyYWNlcywNCj4gPj4+Pj4+PiArIyBz byB0aGVzZSBhcmUgaWdub3JlZCBmb3Igbm93IHRvIGFsbG93IGRldmVsb3BlcnMgc29tZQ0KPiA+ Pj4+Pj4+IGZsZXhpYmlsaXR5Lg0KPiA+Pj4+Pj4+ICtubF9hZnRlcl9icmFjZV9jbG9zZcKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgPSB0cnVlwqDCoMKgwqDCoCAjIFdoZXRoZXIgdG8gYWRkIGENCj4g Pj4+Pj4+PiBuZXdsaW5lIGFmdGVyICd9Jy4gRG9lcyBub3QgYXBwbHkgaWYgZm9sbG93ZWQgYnkg YQ0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjIG5lY2Vzc2FyeSAn OycuDQo+ID4+Pj4+Pj4gK25sX2JyYWNlX2Vsc2XCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqAgPSByZW1vdmXCoMKgwqAgIyBBZGQgb3IgcmVtb3ZlDQo+ID4+Pj4+Pj4gbmV3bGlu ZSBiZXR3ZWVuICd9JyBhbmQgJ2Vsc2UnLg0KPiA+Pj4+Pj4+ICtubF9icmFjZV93aGlsZcKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSByZW1vdmXCoMKgwqAgIyBBZGQgb3IgcmVt b3ZlDQo+ID4+Pj4+Pj4gbmV3bGluZSBiZXR3ZWVuICd9JyBhbmQgJ3doaWxlJyBvZiAnZG8nIHN0 YXRlbWVudC4NCj4gPj4+Pj4+PiArbmxfZG9fYnJhY2XCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgID0gcmVtb3ZlwqDCoMKgICMgQWRkIG9yIHJlbW92ZQ0KPiA+Pj4+Pj4+ IG5ld2xpbmUgYmV0d2VlbiAnZG8nIGFuZCAneycuDQo+ID4+Pj4+Pj4gK25sX2Vsc2VfYnJhY2XC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSByZW1vdmXCoMKgwqAgIyBBZGQg b3IgcmVtb3ZlDQo+ID4+Pj4+Pj4gbmV3bGluZSBiZXR3ZWVuICdlbHNlJyBhbmQgJ3snLg0KPiA+ Pj4+Pj4+ICtubF9lbHNlX2lmwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgID0gcmVtb3ZlwqDCoMKgICMgQWRkIG9yIHJlbW92ZQ0KPiA+Pj4+Pj4+IG5ld2xpbmUgYmV0 d2VlbiAnZWxzZScgYW5kICdpZicuDQo+ID4+Pj4+Pj4gK25sX2Vsc2VpZl9icmFjZcKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gcmVtb3ZlwqDCoMKgICMgQWRkIG9yIHJlbW92ZQ0K PiA+Pj4+Pj4+IG5ld2xpbmUgYmV0d2VlbiAnZWxzZSBpZicgYW5kICd7Jy4NCj4gPj4+Pj4+PiAr bmxfZW51bV9icmFjZcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IHJlbW92 ZcKgwqDCoCAjIEFkZCBvciByZW1vdmUNCj4gPj4+Pj4+PiBuZXdsaW5lIGJldHdlZW4gJ2VudW0n IGFuZCAneycuDQo+ID4+Pj4+Pj4gK25sX2ZjYWxsX2JyYWNlwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCA9IHJlbW92ZcKgwqDCoCAjIEFkZCBvciByZW1vdmUNCj4gPj4+Pj4+PiBu ZXdsaW5lIGJldHdlZW4gYSBmdW5jdGlvbiBjYWxsJ3MgJyknIGFuZCAneycsDQo+ID4+Pj4+Pj4g K8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICMgYXMgaW4NCj4gPj4+Pj4+PiAnbGlzdF9m b3JfZWFjaChpdGVtLCAmbGlzdCkgeyB9Jy4NCj4gPj4+Pj4+PiArbmxfZm9yX2JyYWNlwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSByZW1vdmXCoMKgwqAgIyBBZGQgb3Ig cmVtb3ZlDQo+ID4+Pj4+Pj4gbmV3bGluZSBiZXR3ZWVuICdmb3InIGFuZCAneycuDQo+ID4+Pj4+ Pj4gK25sX2lmX2JyYWNlwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9 IHJlbW92ZcKgwqDCoCAjIEFkZCBvciByZW1vdmUNCj4gPj4+Pj4+PiBuZXdsaW5lIGJldHdlZW4g J2lmJyBhbmQgJ3snLg0KPiA+Pj4+Pj4+ICtubF9zdHJ1Y3RfYnJhY2XCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCA9IHJlbW92ZcKgwqDCoCAjIEFkZCBvciByZW1vdmUNCj4gPj4+Pj4+ PiBuZXdsaW5lIGJldHdlZW4gJ3N0cnVjdCBhbmQgJ3snLg0KPiA+Pj4+Pj4+ICtubF9zd2l0Y2hf YnJhY2XCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IHJlbW92ZcKgwqDCoCAjIEFk ZCBvciByZW1vdmUNCj4gPj4+Pj4+PiBuZXdsaW5lIGJldHdlZW4gJ3N3aXRjaCcgYW5kICd7Jy4N Cj4gPj4+Pj4+PiArbmxfdW5pb25fYnJhY2XCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgID0gcmVtb3ZlwqDCoMKgICMgQWRkIG9yIHJlbW92ZQ0KPiA+Pj4+Pj4+IG5ld2xpbmUgYmV0 d2VlbiAndW5pb24nIGFuZCAneycuDQo+ID4+Pj4+Pj4gK25sX3doaWxlX2JyYWNlwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IHJlbW92ZcKgwqDCoCAjIEFkZCBvciByZW1vdmUN Cj4gPj4+Pj4+PiBuZXdsaW5lIGJldHdlZW4gJ3doaWxlJyBhbmQgJ3snLg0KPiA+Pj4+Pj4+ICsN Cj4gPj4+Pj4+PiArIyBBZGRpdGlvbmFsIHdoaXRlc3BhY2UgcnVsZXMgKE9wdGlvbmFsKQ0KPiA+ Pj4+Pj4+ICtzcF9hZnRlcl9wdHJfc3RhcsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSBy ZW1vdmXCoMKgwqAgIyBBZGQgb3IgcmVtb3ZlDQo+ID4+Pj4+Pj4gc3BhY2UgYWZ0ZXIgcG9pbnRl ciBzdGFyICcqJywgaWYgZm9sbG93ZWQgYnkgYSB3b3JkLg0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoCAjIFVzZWZ1bCB3aGVuIHBhaXJlZA0KPiA+Pj4+Pj4+IHdpdGgg YWxpZ25fdmFyX2RlZl9zdGFyX3N0eWxlPT0yDQo+ID4+Pj4+Pj4gK3NwX2FmdGVyX3B0cl9zdGFy X2Z1bmPCoMKgwqDCoMKgwqDCoMKgwqAgPSByZW1vdmXCoMKgwqAgIyBBZGQgb3IgcmVtb3ZlDQo+ ID4+Pj4+Pj4gc3BhY2UgYWZ0ZXIgYSBwb2ludGVyIHN0YXIgJyonLCBpZiBmb2xsb3dlZCBieSBh DQo+ID4+Pj4gZnVuY3Rpb24NCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqAgIyBwcm90b3R5cGUgb3INCj4gPj4+Pj4+PiBmdW5jdGlvbiBkZWZpbml0aW9uLg0KPiA+Pj4+ Pj4+ICtzcF9hZnRlcl9zZW1pwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0g cmVtb3ZlwqDCoMKgICMgQWRkIG9yIHJlbW92ZQ0KPiA+Pj4+Pj4+IHNwYWNlIGFmdGVyICc7Jywg ZXhjZXB0IHdoZW4gZm9sbG93ZWQgYnkgYSBjb21tZW50Lg0KPiA+Pj4+Pj4+ICtzcF9iZWZvcmVf Y2FzZV9jb2xvbsKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSByZW1vdmXCoMKgwqAgIyBBZGQgb3Ig cmVtb3ZlDQo+ID4+Pj4+Pj4gc3BhY2UgYmVmb3JlIGNhc2UgJzonLg0KPiA+Pj4+Pj4+ICtzcF9i ZWZvcmVfcHRyX3N0YXLCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IGFkZMKgwqDCoMKgwqDC oCAjIEFkZCBvciByZW1vdmUNCj4gPj4+Pj4+PiBzcGFjZSBiZWZvcmUgcG9pbnRlciBzdGFyICcq Jy4NCj4gPj4+Pj4+PiArc3BfYmVmb3JlX3B0cl9zdGFyX2Z1bmPCoMKgwqDCoMKgwqDCoMKgID0g YWRkwqDCoMKgwqDCoMKgICMgQWRkIG9yIHJlbW92ZQ0KPiA+Pj4+Pj4+IHNwYWNlIGJlZm9yZSBh IHBvaW50ZXIgc3RhciAnKicsIGlmIGZvbGxvd2VkIGJ5IGENCj4gPj4+PiBmdW5jdGlvbg0KPiA+ Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjIHByb3RvdHlwZSBvcg0KPiA+ Pj4+Pj4+IGZ1bmN0aW9uIGRlZmluaXRpb24uDQo+ID4+Pj4+Pj4gK3NwX2JlZm9yZV9zZW1pwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IHJlbW92ZcKgwqDCoCAjIEFkZCBvciBy ZW1vdmUNCj4gPj4+Pj4+PiBzcGFjZSBiZWZvcmUgJzsnDQo+ID4+Pj4+Pj4gK3NwX2JlZm9yZV9z ZW1pX2ZvcsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gcmVtb3ZlwqDCoMKgICMgQWRkIG9y IHJlbW92ZQ0KPiA+Pj4+Pj4+IHNwYWNlIGJlZm9yZSAnOycgaW4gbm9uLWVtcHR5ICdmb3InIHN0 YXRlbWVudHMuDQo+ID4+Pj4+Pj4gK3NwX2JlZm9yZV9zZW1pX2Zvcl9lbXB0ecKgwqDCoMKgwqDC oMKgID0gYWRkwqDCoMKgwqDCoMKgICMgQWRkIG9yIHJlbW92ZQ0KPiA+Pj4+Pj4+IHNwYWNlIGJl Zm9yZSBhIHNlbWljb2xvbiBvZiBhbiBlbXB0eSBwYXJ0IG9mIGEgZm9yDQo+ID4+Pj4+IHN0YXRl bWVudA0KPiA+Pj4+Pj4+ICtzcF9iZXR3ZWVuX3B0cl9zdGFywqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgID0gcmVtb3ZlwqDCoMKgICMgQWRkIG9yIHJlbW92ZQ0KPiA+Pj4+Pj4+IHNwYWNlIGJldHdl ZW4gcG9pbnRlciBzdGFycyAnKicuIChpZSwgJ1ZPSUQgKionKQ0KPiA+Pj4+Pj4+ICtzcF9icmFj ZV9jbG9zZV93aGlsZcKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSBmb3JjZcKgwqDCoMKgICMgQWRk IG9yIHJlbW92ZQ0KPiA+Pj4+Pj4+IHNwYWNlIGJldHdlZW4gJ30nIGFuZCAnd2hpbGUnLg0KPiA+ Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArc3BfYWZ0ZXJfY2FzdMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCA9IHJlbW92ZQ0KPiA+Pj4+Pj4+ICtzcF9hZnRlcl90eXBlwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gYWRkDQo+ID4+Pj4+Pj4gK3NwX2JhbGFuY2Vf bmVzdGVkX3BhcmVuc8KgwqDCoMKgwqDCoMKgID0gZmFsc2UNCj4gPj4+Pj4+PiArc3BfYmVmb3Jl X25sX2NvbnTCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gYWRkDQo+ID4+Pj4+Pj4gK3Nw X2JlZm9yZV9zcXVhcmVfYXNtX2Jsb2NrwqDCoMKgwqDCoCA9IGlnbm9yZQ0KPiA+Pj4+Pj4+ICtz cF9iZWZvcmVfdW5uYW1lZF9ieXJlZsKgwqDCoMKgwqDCoMKgwqAgPSBhZGQNCj4gPj4+Pj4+PiAr c3BfYnJhY2VfYnJhY2XCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gaWdub3Jl DQo+ID4+Pj4+Pj4gK3NwX2JyYWNlX2Vsc2XCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgPSBmb3JjZQ0KPiA+Pj4+Pj4+ICtzcF9icmFjZV90eXBlZGVmwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgID0gYWRkDQo+ID4+Pj4+Pj4gK3NwX2Nhc2VfbGFiZWzCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSBmb3JjZQ0KPiA+Pj4+Pj4+ICtzcF9jbXRfY3Bw X2RveHlnZW7CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IHRydWUNCj4gPj4+Pj4+PiArc3Bf Y29uZF9jb2xvbsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IGFkZA0KPiA+ Pj4+Pj4+ICtzcF9jb25kX3F1ZXN0aW9uwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0g YWRkDQo+ID4+Pj4+Pj4gK3NwX2NwcF9jYXN0X3BhcmVuwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCA9IGZvcmNlDQo+ID4+Pj4+Pj4gK3NwX2Vsc2VfYnJhY2XCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgPSBmb3JjZQ0KPiA+Pj4+Pj4+ICtzcF9lbmRpZl9jbXTCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IGZvcmNlDQo+ID4+Pj4+Pj4gK3NwX2Vu dW1fYXNzaWduwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IGFkZA0KPiA+Pj4+ Pj4+ICtzcF9pbnNpZGVfYnJhY2VzwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gZm9y Y2UNCj4gPj4+Pj4+PiArc3BfaW5zaWRlX2JyYWNlc19lbXB0ecKgwqDCoMKgwqDCoMKgwqDCoCA9 IGZvcmNlDQo+ID4+Pj4+Pj4gK3NwX2luc2lkZV9icmFjZXNfZW51bcKgwqDCoMKgwqDCoMKgwqDC oMKgID0gZm9yY2UNCj4gPj4+Pj4+PiArc3BfaW5zaWRlX2JyYWNlc19zdHJ1Y3TCoMKgwqDCoMKg wqDCoMKgID0gZm9yY2UNCj4gPj4+Pj4+PiArc3BfcHBfY29uY2F0wqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqAgPSBhZGQNCj4gPj4+Pj4+PiArc3BfcHBfc3RyaW5naWZ5wqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSBhZGQNCj4gPj4+Pj4+PiArc3BfcmV0dXJu X3BhcmVuwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSBhZGQNCj4gPj4+Pj4+PiAr c3Bfc3BlY2lhbF9zZW1pwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSBmb3JjZQ0K PiA+Pj4+Pj4+ICtzcF93aGlsZV9wYXJlbl9vcGVuwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0g Zm9yY2UNCj4gPj4+Pj4+PiArDQo+ID4+Pj4+Pj4gKyMgQWRkaXRpb25hbCBJbmRlbnRhdGlvbiBS dWxlcw0KPiA+Pj4+Pj4+ICtpbmRlbnRfYWNjZXNzX3NwZWPCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCA9IDENCj4gPj4+Pj4+PiAraW5kZW50X2FjY2Vzc19zcGVjX2JvZHnCoMKgwqDCoMKgwqDC oMKgID0gZmFsc2UNCj4gPj4+Pj4+PiAraW5kZW50X2FsaWduX2Fzc2lnbsKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoCA9IHRydWUNCj4gPj4+Pj4+PiAraW5kZW50X2FsaWduX3N0cmluZ8KgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCA9IHRydWUNCj4gPj4+Pj4+PiAraW5kZW50X2Jvb2xfcGFyZW7CoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gdHJ1ZQ0KPiA+Pj4+Pj4+ICtpbmRlbnRfYnJhY2Vf cGFyZW50wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gZmFsc2UNCj4gPj4+Pj4+PiAraW5kZW50 X2JyYWNlc8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IGZhbHNlDQo+ID4+ Pj4+Pj4gK2luZGVudF9icmFjZXNfbm9fY2xhc3PCoMKgwqDCoMKgwqDCoMKgwqAgPSBmYWxzZQ0K PiA+Pj4+Pj4+ICtpbmRlbnRfYnJhY2VzX25vX2Z1bmPCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IHRy dWUNCj4gPj4+Pj4+PiAraW5kZW50X2JyYWNlc19ub19zdHJ1Y3TCoMKgwqDCoMKgwqDCoMKgID0g ZmFsc2UNCj4gPj4+Pj4+PiAraW5kZW50X2NsYXNzwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqAgPSBmYWxzZQ0KPiA+Pj4+Pj4+ICtpbmRlbnRfY2xhc3NfY29sb27CoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoCA9IGZhbHNlDQo+ID4+Pj4+Pj4gK2luZGVudF9jbXRfd2l0aF90 YWJzwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IGZhbHNlwqDCoMKgwqDCoMKgwqDCoCAjIFdoZXRo ZXIgdG8NCj4gPj4+Pj4+PiBpbmRlbnQgY29tbWVudHMgdGhhdCBhcmUgbm90IGF0IGEgYnJhY2Ug bGV2ZWwgd2l0aA0KPiA+Pj4gdGFicw0KPiA+Pj4+PiBvbg0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICMgYSB0YWJzdG9wLg0KPiA+Pj4+Pj4+IFJlcXVp cmVzIGluZGVudF93aXRoX3RhYnM9Mi4gSWYgZmFsc2UsIHdpbGwgdXNlDQo+ID4+PiBzcGFjZXMu DQo+ID4+Pj4+Pj4gK2luZGVudF9jb2wxX2NvbW1lbnTCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg PSB0cnVlDQo+ID4+Pj4+Pj4gK2luZGVudF9jb2wxX211bHRpX3N0cmluZ19saXRlcmFsPSB0cnVl DQo+ID4+Pj4+Pj4gK2luZGVudF9jb21tYV9wYXJlbsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg ID0gdHJ1ZQ0KPiA+Pj4+Pj4+ICtpbmRlbnRfZWxzZV9pZsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqAgPSB0cnVlDQo+ID4+Pj4+Pj4gK2luZGVudF9leHRlcm7CoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSBmYWxzZQ0KPiA+Pj4+Pj4+ICtpbmRlbnRfZmlyc3Rf Ym9vbF9leHBywqDCoMKgwqDCoMKgwqDCoMKgID0gdHJ1ZQ0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+ PiAraW5kZW50X2Z1bmNfZGVmX3BhcmFtX3BhcmVuX3Bvc190aHJlc2hvbGQgPSAwDQo+ID4+Pj4+ Pj4gK2luZGVudF9mdW5jX3BhcmFtX2RvdWJsZcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgPSBmYWxzZQ0KPiA+Pj4+Pj4+ICtpbmRlbnRfZnVuY19wcm90b19wYXJhbcKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IHRydWUNCj4gPj4+Pj4+PiAraW5kZW50X2ln bm9yZV9hc21fYmxvY2vCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSB0cnVl DQo+ID4+Pj4+Pj4gK2luZGVudF9sYWJlbMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSAxDQo+ID4+Pj4+Pj4gK2luZGVudF9tZW1iZXLC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9 IDINCj4gPj4+Pj4+PiAraW5kZW50X25hbWVzcGFjZcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gZmFsc2UNCj4gPj4+Pj4+PiAraW5kZW50X3BhcmFt wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCA9IDINCj4gPj4+Pj4+PiAraW5kZW50X3BhcmVuX25swqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IGZhbHNlDQo+ID4+Pj4+Pj4gK2luZGVudF9w YXJlbl9vcGVuX2JyYWNlwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gZmFs c2UNCj4gPj4+Pj4+PiAraW5kZW50X3ByZXNlcnZlX3NxbMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gZmFsc2UNCj4gPj4+Pj4+PiAraW5kZW50X3JlbGF0aXZl X3NpbmdsZV9saW5lX2NvbW1lbnRzwqDCoMKgwqDCoCA9IGZhbHNlDQo+ID4+Pj4+Pj4gK2luZGVu dF9zaW5nX2xpbmVfY29tbWVudHPCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IDAN Cj4gPj4+Pj4+PiAraW5kZW50X3NpbmdsZV9uZXdsaW5lc8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgID0gZmFsc2UNCj4gPj4+Pj4+PiAraW5kZW50X3NxdWFyZV9ubMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gZmFsc2UNCj4g Pj4+Pj4+PiAraW5kZW50X3N3aXRjaF9jYXNlwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCA9IDINCj4gPj4+Pj4+PiAraW5kZW50X3RlbXBsYXRlX3BhcmFtwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IHRydWUNCj4gPj4+Pj4+PiAr aW5kZW50X3Zhcl9kZWZfYmxrwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCA9IDANCj4gPj4+Pj4+PiAraW5kZW50X3Zhcl9kZWZfY29udMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gZmFsc2UNCj4gPj4+Pj4+PiArDQo+ID4+ Pj4+Pj4gKyMgVGlkeS11cCBydWxlcyAoT3B0aW9uYWwpDQo+ID4+Pj4+Pj4gK21vZF9tb3ZlX2Nh c2VfYnJlYWvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSB0cnVlwqDCoMKgwqDCoCAjIFdoZXRo ZXIgdG8gbW92ZSBhDQo+ID4+Pj4+Pj4gJ2JyZWFrJyB0aGF0IGFwcGVhcnMgYWZ0ZXIgYSBmdWxs eSBicmFjZWQgJ2Nhc2UnDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg ICMgYmVmb3JlIHRoZSBjbG9zZQ0KPiA+Pj4+Pj4+IGJyYWNlLCBhcyBpbiAnY2FzZSBYOiB7IC4u LiB9IGJyZWFrOycgPT4NCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg IyAnY2FzZSBYOiB7IC4uLg0KPiA+Pj4+Pj4+IGJyZWFrOyB9Jy4NCj4gPj4+Pj4+PiArbW9kX3Bh d25fc2VtaWNvbG9uwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSBmYWxzZQ0KPiA+Pj4+Pj4+ ICttb2RfcmVtb3ZlX2VtcHR5X3JldHVybsKgwqDCoMKgwqDCoMKgwqAgPSBmYWxzZcKgwqDCoMKg ICMgV2hldGhlciB0byByZW1vdmUNCj4gPj4+Pj4+PiBhIHZvaWQgJ3JldHVybjsnIHRoYXQgYXBw ZWFycyBhcyB0aGUgbGFzdA0KPiA+Pj4gc3RhdGVtZW50DQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgICMgaW4gYSBmdW5jdGlvbi4NCj4gPj4+Pj4+PiArbW9kX3JlbW92 ZV9leHRyYV9zZW1pY29sb27CoMKgwqDCoMKgID0gdHJ1ZQ0KPiA+Pj4+Pj4+ICttb2Rfc29ydF9p bXBvcnTCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IGZhbHNlDQo+ID4+Pj4+Pj4g K21vZF9zb3J0X2luY2x1ZGXCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSBmYWxzZQ0K PiA+Pj4+Pj4+ICttb2Rfc29ydF91c2luZ8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqAgPSBmYWxzZQ0KPiA+Pj4+Pj4+ICtubF9hZnRlcl9jYXNlwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgID0gZmFsc2XCoMKgwqDCoCAjIFdoZXRoZXIgdG8gYWRkIGENCj4gPj4+ Pj4+PiBuZXdsaW5lIGFmdGVyIGEgJ2Nhc2UnIHN0YXRlbWVudC4NCj4gPj4+Pj4+PiArbmxfZW5k X29mX2ZpbGXCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gZm9yY2XCoMKgwqDC oCAjIEFkZCBvciByZW1vdmUNCj4gPj4+Pj4+PiBuZXdsaW5lIGF0IHRoZSBlbmQgb2YgdGhlIGZp bGUuDQo+ID4+Pj4+Pj4gK25sX2VuZF9vZl9maWxlX21pbsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgID0gMcKgwqDCoMKgwqDCoMKgwqAgIyBUaGUgbWluaW11bSBudW1iZXINCj4gPj4+Pj4+PiBv ZiBuZXdsaW5lcyBhdCB0aGUgZW5kIG9mIHRoZSBmaWxlDQo+ID4+Pj4+Pj4gK25sX21heMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gMsKgwqDCoMKg wqDCoMKgwqAgIyBUaGUgbWF4aW11bSBudW1iZXINCj4gPj4+Pj4+PiBvZiBjb25zZWN1dGl2ZSBu ZXdsaW5lcyAoMyA9IDIgYmxhbmsgbGluZXMpLg0KPiA+Pj4+Pj4+ICtubF9zdGFydF9vZl9maWxl wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gcmVtb3ZlwqDCoMKgICMgQWRkIG9yIHJl bW92ZQ0KPiA+Pj4+Pj4+IG5ld2xpbmVzIGF0IHRoZSBzdGFydCBvZiB0aGUgZmlsZS4NCj4gPj4+ Pj4+PiArDQo+ID4+Pj4+Pj4gKyMgQ29kZSBhbGlnbm1lbnQgcnVsZXMgKE9wdGlvbmFsKQ0KPiA+ Pj4+Pj4+ICthbGlnbl9hc21fY29sb27CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9 IGZhbHNlDQo+ID4+Pj4+Pj4gK2FsaWduX2Fzc2lnbl9zcGFuwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCA9IDHCoMKgwqDCoMKgwqDCoMKgICMgVGhlIHNwYW4gZm9yDQo+ID4+Pj4+Pj4gYWxp Z25pbmcgb24gJz0nIGluIGFzc2lnbm1lbnRzLg0KPiA+Pj4+Pj4+ICthbGlnbl9hc3NpZ25fdGhy ZXNowqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gNA0KPiA+Pj4+Pj4+ICthbGlnbl9lZGsyX3N0 eWxlwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gdHJ1ZcKgwqDCoMKgwqAgIyBXaGV0 aGVyIHRvIGFwcGx5DQo+ID4+Pj4+Pj4gZWRrMi1zcGVjaWZpYyBhbGlnbm1lbnQgZm9ybWF0dGlu Zw0KPiA+Pj4+Pj4+ICthbGlnbl9lbnVtX2VxdV9zcGFuwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg ID0gMcKgwqDCoMKgwqDCoMKgwqAgIyBUaGUgc3BhbiBmb3INCj4gPj4+Pj4+PiBhbGlnbmluZyBv biAnPScgaW4gZW51bXMuDQo+ID4+Pj4+Pj4gK2FsaWduX2Z1bmNfcGFyYW1zwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCA9IHRydWXCoMKgwqDCoMKgICMgV2hldGhlciB0byBhbGlnbg0KPiA+ Pj4+Pj4+IHZhcmlhYmxlIGRlZmluaXRpb25zIGluIHByb3RvdHlwZXMgYW5kIGZ1bmN0aW9ucy4N Cj4gPj4+Pj4+PiArYWxpZ25fZnVuY19wYXJhbXNfZ2FwwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSAy DQo+ID4+Pj4+Pj4gK2FsaWduX2Z1bmNfcGFyYW1zX3NwYW7CoMKgwqDCoMKgwqDCoMKgwqAgPSAy wqDCoMKgwqDCoMKgwqDCoCAjIFRoZSBzcGFuIGZvcg0KPiA+Pj4+Pj4+IGFsaWduaW5nIHBhcmFt ZXRlciBkZWZpbml0aW9ucyBpbiBmdW5jdGlvbiBvbiBwYXJhbWV0ZXINCj4gPj4+Pj4gbmFtZS4N Cj4gPj4+Pj4+PiArYWxpZ25fZnVuY19wYXJhbXNfdGhyZXNowqDCoMKgwqDCoMKgwqAgPSAwDQo+ ID4+Pj4+Pj4gK2FsaWduX2Z1bmNfcHJvdG9fc3BhbsKgwqDCoMKgwqDCoMKgwqDCoMKgID0gMA0K PiA+Pj4+Pj4+ICthbGlnbl9rZWVwX3RhYnPCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCA9IGZhbHNlDQo+ID4+Pj4+Pj4gK2FsaWduX2xlZnRfc2hpZnTCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqAgPSBmYWxzZQ0KPiA+Pj4+Pj4+ICthbGlnbl9taXhfdmFyX3Byb3RvwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgID0gZmFsc2UNCj4gPj4+Pj4+PiArYWxpZ25fbmxfY29udMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IGZhbHNlDQo+ID4+Pj4+Pj4gK2FsaWdu X29jX2RlY2xfY29sb27CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSBmYWxzZQ0KPiA+Pj4+Pj4+ ICthbGlnbl9vbl9vcGVyYXRvcsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSBmYWxzZQ0K PiA+Pj4+Pj4+ICthbGlnbl9vbl90YWJzdG9wwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg ID0gZmFsc2UNCj4gPj4+Pj4+PiArYWxpZ25fcHBfZGVmaW5lX2dhcMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCA9IDINCj4gPj4+Pj4+PiArYWxpZ25fcHBfZGVmaW5lX3NwYW7CoMKgwqDCoMKgwqDC oMKgwqDCoMKgID0gMQ0KPiA+Pj4+Pj4+ICthbGlnbl9yaWdodF9jbXRfYXRfY29swqDCoMKgwqDC oMKgwqDCoMKgID0gMMKgwqDCoMKgwqDCoMKgwqAgIyBBbGlnbiB0cmFpbGluZw0KPiA+Pj4+Pj4+ IGNvbW1lbnQgYXQgb3IgYmV5b25kIGNvbHVtbiBOOyAncHVsbHMgaW4nIGNvbW1lbnRzIGFzDQo+ ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICMgYSBib251cyBzaWRlDQo+ ID4+Pj4+Pj4gZWZmZWN0ICgwPWlnbm9yZSkNCj4gPj4+Pj4+PiArYWxpZ25fcmlnaHRfY210X2dh cMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IDDCoMKgwqDCoMKgwqDCoMKgICMgSWYgYSB0cmFp bGluZw0KPiA+Pj4+Pj4+IGNvbW1lbnQgaXMgbW9yZSB0aGFuIHRoaXMgbnVtYmVyIG9mIGNvbHVt bnMgYXdheSBmcm9tDQo+ID4+Pj4gdGhlDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgICMgdGV4dCBpdCBmb2xsb3dzLA0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCAjIGl0IHdpbGwgcXVhbGlmeQ0KPiA+Pj4+Pj4+IGZvciBiZWluZyBhbGln bmVkLiBUaGlzIGhhcyB0byBiZSA+IDAgdG8gZG8NCj4gPj4+IGFueXRoaW5nLg0KPiA+Pj4+Pj4+ ICthbGlnbl9yaWdodF9jbXRfbWl4wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gZmFsc2XCoMKg wqDCoCAjIElmIGFsaWduaW5nDQo+ID4+Pj4+Pj4gY29tbWVudHMsIG1peCB3aXRoIGNvbW1lbnRz IGFmdGVyICd9JyBhbmQgI2VuZGlmIHdpdGgNCj4gPj4+IGxlc3MNCj4gPj4+Pj4+PiArwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgIyB0aGFuIDMgc3BhY2VzDQo+ID4+Pj4+Pj4gYmVmb3Jl IHRoZSBjb21tZW50DQo+ID4+Pj4+Pj4gK2FsaWduX3JpZ2h0X2NtdF9zYW1lX2xldmVswqDCoMKg wqDCoCA9IHRydWXCoMKgwqDCoMKgICMgV2hldGhlciB0byBvbmx5DQo+ID4+Pj4+Pj4gYWxpZ24g dHJhaWxpbmcgY29tbWVudHMgdGhhdCBhcmUgYXQgdGhlIHNhbWUgYnJhY2UNCj4gPj4+Pj4gbGV2 ZWwuDQo+ID4+Pj4+Pj4gK2FsaWduX3JpZ2h0X2NtdF9zcGFuwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCA9IDLCoMKgwqDCoMKgwqDCoMKgICMgVGhlIHNwYW4gZm9yDQo+ID4+Pj4+Pj4gYWxpZ25pbmcg Y29tbWVudHMgdGhhdCBlbmQgbGluZXMuDQo+ID4+Pj4+Pj4gK2FsaWduX3NhbWVfZnVuY19jYWxs X3BhcmFtc8KgwqDCoMKgID0gZmFsc2UNCj4gPj4+Pj4+PiArYWxpZ25fc2luZ2xlX2xpbmVfYnJh Y2XCoMKgwqDCoMKgwqDCoMKgID0gdHJ1ZQ0KPiA+Pj4+Pj4+ICthbGlnbl9zaW5nbGVfbGluZV9m dW5jwqDCoMKgwqDCoMKgwqDCoMKgID0gdHJ1ZQ0KPiA+Pj4+Pj4+ICthbGlnbl9zdHJ1Y3RfaW5p dF9zcGFuwqDCoMKgwqDCoMKgwqDCoMKgID0gMcKgwqDCoMKgwqDCoMKgwqAgIyBUaGUgc3BhbiBm b3INCj4gPj4+Pj4+PiBhbGlnbmluZyBzdHJ1Y3QgaW5pdGlhbGl6ZXIgdmFsdWVzLg0KPiA+Pj4+ Pj4+ICthbGlnbl90eXBlZGVmX2FtcF9zdHlsZcKgwqDCoMKgwqDCoMKgwqAgPSAxDQo+ID4+Pj4+ Pj4gK2FsaWduX3R5cGVkZWZfZnVuY8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gMcKgwqDC oMKgwqDCoMKgwqAgIyBIb3cgdG8gYWxpZ24NCj4gPj4+Pj4+PiB0eXBlZGVmJ2QgZnVuY3Rpb25z IHdpdGggb3RoZXIgdHlwZWRlZnMuDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgICMgKDA6IE5vIGFsaWduLCAxOg0KPiA+Pj4+Pj4+IEFsaWduIG9wZW4gcGFyYW50aGVz aXMsIDI6IEFsaWduIGZ1bmN0aW9uIHR5cGUNCj4gPj4+IG5hbWUpDQo+ID4+Pj4+Pj4gK2FsaWdu X3R5cGVkZWZfZ2FwwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IDINCj4gPj4+Pj4+PiAr YWxpZ25fdHlwZWRlZl9zcGFuwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSAxwqDCoMKgwqDC oMKgwqDCoCAjIFRoZSBzcGFuIGZvcg0KPiA+Pj4+Pj4+IGFsaWduaW5nIHNpbmdsZS1saW5lIHR5 cGVkZWZzLg0KPiA+Pj4+Pj4+ICthbGlnbl90eXBlZGVmX3N0YXJfc3R5bGXCoMKgwqDCoMKgwqDC oCA9IDENCj4gPj4+Pj4+PiArYWxpZ25fdmFyX2RlZl9hbXBfc3R5bGXCoMKgwqDCoMKgwqDCoMKg ID0gMQ0KPiA+Pj4+Pj4+ICthbGlnbl92YXJfZGVmX2F0dHJpYnV0ZcKgwqDCoMKgwqDCoMKgwqAg PSB0cnVlDQo+ID4+Pj4+Pj4gK2FsaWduX3Zhcl9kZWZfY29sb27CoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgPSB0cnVlwqDCoMKgwqDCoCAjIFdoZXRoZXIgdG8gYWxpZ24NCj4gPj4+Pj4+PiB0aGUg Y29sb24gaW4gc3RydWN0IGJpdCBmaWVsZHMuDQo+ID4+Pj4+Pj4gK2FsaWduX3Zhcl9kZWZfZ2Fw wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IDLCoMKgwqDCoMKgwqDCoMKgICMgVGhlIGdh cCAobWluaW11bQ0KPiA+Pj4+Pj4+IHNwYWNpbmcgZm9yIGFsaWduZWQgaXRlbXMpIGZvciB2YXJp YWJsZQ0KPiA+Pj4gZGVmaW5pdGlvbnMuDQo+ID4+Pj4+Pj4gK2FsaWduX3Zhcl9kZWZfaW5saW5l wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IGZhbHNlDQo+ID4+Pj4+Pj4gK2FsaWduX3Zhcl9kZWZf c3BhbsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gMcKgwqDCoMKgwqDCoMKgwqAgIyBUaGUg c3BhbiAobGluZXMNCj4gPj4+Pj4+PiBuZWVkZWQgdG8gYWxpZ24pIGZvciBhbGlnbmluZyB2YXJp YWJsZSBkZWZpbml0aW9ucy4NCj4gPj4+Pj4+PiArYWxpZ25fdmFyX2RlZl9zdGFyX3N0eWxlwqDC oMKgwqDCoMKgwqAgPSAxwqDCoMKgwqDCoMKgwqDCoCAjIEhvdyB0byBjb25zaWRlcg0KPiA+Pj4+ Pj4+IChvciB0cmVhdCkgdGhlICcqJyBpbiB0aGUgYWxpZ25tZW50IG9mIHZhcmlhYmxlDQo+ID4+ Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICMgZGVmaW5pdGlvbnMuDQo+ID4+ Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICMgMDogUGFydCBvZiB0aGUNCj4g Pj4+Pj4+PiB0eXBlwqDCoMKgwqAgJ3ZvaWQgKsKgwqAgZm9vOycgKGRlZmF1bHQpDQo+ID4+Pj4+ Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICMgMTogUGFydCBvZiB0aGUNCj4gPj4+ Pj4+PiB2YXJpYWJsZSAndm9pZMKgwqDCoMKgICpmb287Jw0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoCAjIDI6DQo+ID4+Pj4+Pj4gRGFuZ2xpbmfCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqAgJ3ZvaWTCoMKgwqAgKmZvbzsnDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgICMgKE5vdGUgLSBzaG91bGQNCj4gPj4+Pj4+PiBhbHNvIHNldCBzcF9h ZnRlcl9wdHJfc3Rhcj1yZW1vdmUpDQo+ID4+Pj4+Pj4gK2FsaWduX3Zhcl9zdHJ1Y3RfZ2FwwqDC oMKgwqDCoMKgwqDCoMKgwqDCoCA9IDQNCj4gPj4+Pj4+PiArYWxpZ25fdmFyX3N0cnVjdF9zcGFu wqDCoMKgwqDCoMKgwqDCoMKgwqAgPSA4wqDCoMKgwqDCoMKgwqDCoCAjIFRoZSBzcGFuIGZvcg0K PiA+Pj4+Pj4+IGFsaWduaW5nIHN0cnVjdC91bmlvbiBtZW1iZXIgZGVmaW5pdGlvbnMuDQo+ID4+ Pj4+Pj4gK2FsaWduX3Zhcl9zdHJ1Y3RfdGhyZXNowqDCoMKgwqDCoMKgwqDCoCA9IDANCj4gPj4+ Pj4+PiArYWxpZ25fd2l0aF90YWJzwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSBm YWxzZQ0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArIyBDb21tZW50IGZvcm1hdHRpbmcNCj4gPj4+ Pj4+PiArY210X2FsaWduX2RveHlnZW5famF2YWRvY190YWdzwqAgPSB0cnVlwqDCoMKgwqDCoCAj IFdoZXRoZXIgdG8gYWxpZ24NCj4gPj4+Pj4+PiBkb3h5Z2VuIGphdmFkb2Mtc3R5bGUgdGFncyAo J0BwYXJhbScsICdAcmV0dXJuJywNCj4gPj4+PiBldGMuKQ0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoCAjIFRPRE86IEVhdHMgJ1snIGluDQo+ID4+Pj4+Pj4gJ1tpbl0n DQo+ID4+Pj4+Pj4gK2NtdF9jX2dyb3VwwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCA9IGZhbHNlDQo+ID4+Pj4+Pj4gK2NtdF9jX25sX2VuZMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gdHJ1ZcKgwqDCoMKgwqAgIyBXaGV0aGVyIHRvIGFkZCBh DQo+ID4+Pj4+Pj4gbmV3bGluZSBiZWZvcmUgdGhlIGNsb3NpbmcgJyovJyBvZiB0aGUgY29tYmlu ZWQgYy0NCj4gPj4+Pj4gY29tbWVudC4NCj4gPj4+Pj4+PiArY210X2Nfbmxfc3RhcnTCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gdHJ1ZQ0KPiA+Pj4+Pj4+ICtjbXRfY3BwX2dy b3VwwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gZmFsc2UNCj4gPj4+Pj4+ PiArY210X2NwcF9ubF9lbmTCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gdHJ1 ZQ0KPiA+Pj4+Pj4+ICtjbXRfY3BwX25sX3N0YXJ0wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgID0gdHJ1ZQ0KPiA+Pj4+Pj4+ICtjbXRfY3BwX3RvX2PCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCA9IGZhbHNlDQo+ID4+Pj4+Pj4gK2NtdF9pbmRlbnRfbXVsdGnCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSBmYWxzZcKgwqDCoMKgICMgV2hldGhlciB0byBh cHBseQ0KPiA+Pj4+Pj4+IGNoYW5nZXMgdG8gbXVsdGktbGluZSBjb21tZW50cywgaW5jbHVkaW5n DQo+ID4+PiBjbXRfd2lkdGgsDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgICMga2V5d29yZA0KPiA+Pj4+Pj4+IHN1YnN0aXR1dGlvbiBhbmQgbGVhZGluZyBjaGFycy4N Cj4gPj4+Pj4+PiArY210X2luc2VydF9iZWZvcmVfcHJlcHJvY8KgwqDCoMKgwqDCoCA9IGZhbHNl DQo+ID4+Pj4+Pj4gK2NtdF9pbnNlcnRfZmlsZV9oZWFkZXLCoMKgwqDCoMKgwqDCoMKgwqAgPSBk ZWZhdWx0X2ZpbGVfaGVhZGVyLnR4dA0KPiA+Pj4+Pj4+ICtjbXRfaW5zZXJ0X2Z1bmNfaGVhZGVy wqDCoMKgwqDCoMKgwqDCoMKgID0gZGVmYXVsdF9mdW5jdGlvbl9oZWFkZXIudHh0DQo+ID4+Pj4+ Pj4gK2NtdF9tdWx0aV9jaGVja19sYXN0wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IGZhbHNlDQo+ ID4+Pj4+Pj4gK2NtdF9tdWx0aV9maXJzdF9sZW5fbWluaW11bcKgwqDCoMKgID0gMg0KPiA+Pj4+ Pj4+ICtjbXRfcmVmbG93X21vZGXCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IDHC oMKgwqDCoMKgwqDCoMKgICMgSG93IHRvIHJlZmxvdw0KPiA+Pj4+Pj4+IGNvbW1lbnRzLg0KPiA+ Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjICgwOk5vIHJlZmxvdywgMTpO bw0KPiA+Pj4+Pj4+IHRvdWNoaW5nIGF0IGFsbCwgMjogRnVsbCByZWZsb3cpDQo+ID4+Pj4+Pj4g K2NtdF9zcF9hZnRlcl9zdGFyX2NvbnTCoMKgwqDCoMKgwqDCoMKgwqAgPSAwwqDCoMKgwqDCoMKg wqDCoCAjIFRoZSBudW1iZXIgb2YNCj4gPj4+Pj4+PiBzcGFjZXMgdG8gaW5zZXJ0IGFmdGVyIHRo ZSBzdGFyIG9uIHN1YnNlcXVlbnQgY29tbWVudA0KPiA+Pj4+PiBsaW5lcy4NCj4gPj4+Pj4+PiAr Y210X3NwX2JlZm9yZV9zdGFyX2NvbnTCoMKgwqDCoMKgwqDCoMKgID0gMMKgwqDCoMKgwqDCoMKg wqAgIyBUaGUgbnVtYmVyIG9mDQo+ID4+Pj4+Pj4gc3BhY2VzIHRvIGluc2VydCBhdCB0aGUgc3Rh cnQgb2Ygc3Vic2VxdWVudCBjb21tZW50DQo+ID4+Pj4gbGluZXMuDQo+ID4+Pj4+Pj4gK2NtdF9z dGFyX2NvbnTCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSBmYWxzZcKgwqDC oMKgICMgV2hldGhlciB0byBwdXQgYQ0KPiA+Pj4+Pj4+IHN0YXIgb24gc3Vic2VxdWVudCBjb21t ZW50IGxpbmVzLg0KPiA+Pj4+Pj4+ICtjbXRfd2lkdGjCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoCA9IDEyMMKgwqDCoMKgwqDCoCAjIFRyeSB0byB3cmFwDQo+ID4+ Pj4+Pj4gY29tbWVudHMgYXQgTiBjb2x1bW5zLg0KPiA+Pj4+Pj4+ICtzcF9jbXRfY3BwX3N0YXJ0 wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gYWRkwqDCoMKgwqDCoMKgICMgQWRkIG9y IHJlbW92ZQ0KPiA+Pj4+Pj4+IHNwYWNlIGFmdGVyIHRoZSBvcGVuaW5nIG9mIGEgQysrIGNvbW1l bnQsIGFzIGluDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICMgJy8v IDxoZXJlPiBBJy4NCj4gPj4+Pj4+PiBOT1RFOiBCcmVha3MgaW5kZW50YXRpb24gd2l0aGluIGNv bW1lbnRzLg0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArIyBGdW5jdGlvbiBkZWZpbml0aW9ucyAv IGRlY2xhcmF0aW9ucw0KPiA+Pj4+Pj4+ICtpbmRlbnRfZnVuY19jYWxsX3BhcmFtwqDCoMKgwqDC oMKgwqDCoMKgID0gZmFsc2XCoMKgwqDCoCAjIFdoZXRoZXIgdG8gaW5kZW50DQo+ID4+Pj4+Pj4g Y29udGludWVkIGZ1bmN0aW9uIGNhbGwgcGFyYW1ldGVycyBvbmUgaW5kZW50DQo+ID4+PiBsZXZl bCwNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgIyByYXRoZXIgdGhh bg0KPiA+Pj4+Pj4+IGFsaWduaW5nIHBhcmFtZXRlcnMgdW5kZXIgdGhlIG9wZW4gcGFyZW50aGVz aXMuDQo+ID4+Pj4+Pj4gK2luZGVudF9mdW5jX2NsYXNzX3BhcmFtwqDCoMKgwqDCoMKgwqDCoCA9 IGZhbHNlwqDCoMKgwqAgIyBXaGV0aGVyIHRvIGluZGVudA0KPiA+Pj4+Pj4+IGNvbnRpbnVlZCBm dW5jdGlvbiBjYWxsIGRlY2xhcmF0aW9uIG9uZSBpbmRlbnQNCj4gPj4+PiBsZXZlbCwNCj4gPj4+ Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgIyByYXRoZXIgdGhhbg0KPiA+Pj4+ Pj4+IGFsaWduaW5nIHBhcmFtZXRlcnMgdW5kZXIgdGhlIG9wZW4gcGFyZW50aGVzaXMuDQo+ID4+ Pj4+Pj4gK2luZGVudF9mdW5jX2N0b3JfdmFyX3BhcmFtwqDCoMKgwqDCoCA9IGZhbHNlwqDCoMKg wqAgIyBXaGV0aGVyIHRvIGluZGVudA0KPiA+Pj4+Pj4+IGNvbnRpbnVlZCBjbGFzcyB2YXJpYWJs ZSBjb25zdHJ1Y3RvcnMgb25lIGluZGVudA0KPiA+Pj4+PiBsZXZlbCwNCj4gPj4+Pj4+PiArwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgIyByYXRoZXIgdGhhbg0KPiA+Pj4+Pj4+IGFsaWdu aW5nIHBhcmFtZXRlcnMgdW5kZXIgdGhlIG9wZW4gcGFyZW50aGVzaXMuDQo+ID4+Pj4+Pj4gK2lu ZGVudF9mdW5jX2RlZl9wYXJhbcKgwqDCoMKgwqDCoMKgwqDCoMKgID0gdHJ1ZcKgwqDCoMKgwqAg IyBXaGV0aGVyIHRvIGluZGVudA0KPiA+Pj4+Pj4+IGNvbnRpbnVlZCBmdW5jdGlvbiBkZWZpbml0 aW9uIHBhcmFtZXRlcnMgb25lDQo+ID4+PiBpbmRlbnQNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgIyBsZXZlbCwgcmF0aGVyIHRoYW4NCj4gPj4+Pj4+PiBhbGlnbmlu ZyBwYXJhbWV0ZXJzIHVuZGVyIHRoZSBvcGVuIHBhcmVudGhlc2lzLg0KPiA+Pj4+Pj4+ICtubF9m ZGVmX2JyYWNlwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gYWRkwqDCoMKg wqDCoMKgICMgQWRkIG9yIHJlbW92ZQ0KPiA+Pj4+Pj4+IG5ld2xpbmUgYmV0d2VlbiBmdW5jdGlv biBzaWduYXR1cmUgYW5kICd7Jy4NCj4gPj4+Pj4+PiArbmxfZnVuY19jYWxsX2VuZF9tdWx0aV9s aW5lwqDCoMKgwqAgPSB0cnVlwqDCoMKgwqDCoCAjIFdoZXRoZXIgdG8gYWRkIGENCj4gPj4+Pj4+ PiBuZXdsaW5lIGJlZm9yZSAnKScgaW4gYSBmdW5jdGlvbiBjYWxsIGlmICcoJyBhbmQNCj4gPj4+ ICcpJw0KPiA+Pj4+PiBhcmUNCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqAgIyBpbiBkaWZmZXJlbnQgbGluZXMuDQo+ID4+Pj4+Pj4gK25sX2Z1bmNfY2FsbF9wYXJlbsKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gcmVtb3ZlwqDCoMKgICMgQWRkIG9yIHJlbW92ZQ0K PiA+Pj4+Pj4+IG5ld2xpbmUgYmV0d2VlbiBhIGZ1bmN0aW9uIG5hbWUgYW5kIHRoZSBvcGVuaW5n ICcoJyBpbg0KPiA+Pj4+IHRoZQ0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCAjIGNhbGwuDQo+ID4+Pj4+Pj4gK25sX2Z1bmNfY2FsbF9zdGFydF9tdWx0aV9saW5lwqDC oCA9IHRydWXCoMKgwqDCoMKgICMgV2hldGhlciB0byBhZGQgYQ0KPiA+Pj4+Pj4+IG5ld2xpbmUg YWZ0ZXIgJygnIGluIGEgZnVuY3Rpb24gY2FsbCBpZiAnKCcgYW5kICcpJw0KPiA+Pj4+IGFyZQ0K PiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjIGluIGRpZmZlcmVudCBs aW5lcy4NCj4gPj4+Pj4+PiArbmxfZnVuY19kZWNsX2FyZ3PCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgID0gZm9yY2XCoMKgwqDCoCAjIEFkZCBvciByZW1vdmUNCj4gPj4+Pj4+PiBuZXdsaW5l IGFmdGVyIGVhY2ggJywnIGluIGEgZnVuY3Rpb24gZGVjbGFyYXRpb24uDQo+ID4+Pj4+Pj4gK25s X2Z1bmNfZGVjbF9lbXB0ecKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gYWRkwqDCoMKgwqDC oMKgICMgQWRkIG9yIHJlbW92ZQ0KPiA+Pj4+Pj4+IG5ld2xpbmUgYmV0d2VlbiAnKCknIGluIGEg ZnVuY3Rpb24gZGVjbGFyYXRpb24uDQo+ID4+Pj4+Pj4gK25sX2Z1bmNfZGVmX2FyZ3PCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSBmb3JjZcKgwqDCoMKgICMgQWRkIG9yIHJlbW92ZQ0K PiA+Pj4+Pj4+IG5ld2xpbmUgYWZ0ZXIgZWFjaCAnLCcgaW4gYSBmdW5jdGlvbiBkZWZpbml0aW9u Lg0KPiA+Pj4+Pj4+ICtubF9mdW5jX2RlZl9lbXB0ecKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqAgPSBhZGTCoMKgwqDCoMKgwqAgIyBBZGQgb3IgcmVtb3ZlDQo+ID4+Pj4+Pj4gbmV3bGluZSBi ZXR3ZWVuICcoKScgaW4gYSBmdW5jdGlvbiBkZWZpbml0aW9uLg0KPiA+Pj4+Pj4+ICtubF9mdW5j X2RlZl9wYXJlbsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSByZW1vdmXCoMKgwqAgIyBB ZGQgb3IgcmVtb3ZlDQo+ID4+Pj4+Pj4gbmV3bGluZSBiZXR3ZWVuIGEgZnVuY3Rpb24gbmFtZSBh bmQgdGhlIG9wZW5pbmcgJygnDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgICMgaW4gdGhlIGRlZmluaXRpb24uDQo+ID4+Pj4+Pj4gK25sX2Z1bmNfcGFyZW7CoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSByZW1vdmXCoMKgwqAgIyBBZGQgb3IgcmVt b3ZlDQo+ID4+Pj4+Pj4gbmV3bGluZSBiZXR3ZWVuIGEgZnVuY3Rpb24gbmFtZSBhbmQgdGhlIG9w ZW5pbmcgJygnIGluDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICMg dGhlIGRlY2xhcmF0aW9uLg0KPiA+Pj4+Pj4+ICtubF9mdW5jX3R5cGVfbmFtZcKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgPSBhZGTCoMKgwqDCoMKgwqAgIyBBZGQgb3IgcmVtb3ZlDQo+ID4+ Pj4+Pj4gbmV3bGluZSBiZXR3ZWVuIHJldHVybiB0eXBlIGFuZCBmdW5jdGlvbiBuYW1lIGluIGEN Cj4gPj4+Pj4gZnVuY3Rpb24NCj4gPj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqAgIyBkZWZpbml0aW9uLg0KPiA+Pj4+Pj4+ICtzcF9mcGFyZW5fYnJhY2XCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoCA9IGZvcmNlwqDCoMKgwqAgIyBBZGQgb3IgcmVtb3ZlDQo+ID4+ Pj4+Pj4gc3BhY2UgYmV0d2VlbiAnKScgYW5kICd7JyBvZiBmdW5jdGlvbi4NCj4gPj4+Pj4+PiAr dXNlX2luZGVudF9mdW5jX2NhbGxfcGFyYW3CoMKgwqDCoMKgID0gdHJ1ZcKgwqDCoMKgwqAgIw0K PiA+Pj4+Pj4+IGluZGVudF9mdW5jX2NhbGxfcGFyYW0gd2lsbCBiZSB1c2VkDQo+ID4+Pj4+Pj4g Kw0KPiA+Pj4+Pj4+ICsjIEFkZGl0aW9uYWwgTmV3bGluZSBSdWxlcw0KPiA+Pj4+Pj4+ICtubF9h ZnRlcl9icmFjZV9vcGVuwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqAgPSB0cnVlwqDCoMKgwqAgIw0KPiA+Pj4+Pj4+IFdoZXRoZXIgdG8gYWRkIGEgbmV3 bGluZSBhZnRlciAneycuIFRoaXMgYWxzbyBhZGRzIGENCj4gPj4+PiBuZXdsaW5lDQo+ID4+Pj4+ Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg ICMgYmVmb3JlDQo+ID4+Pj4+Pj4gdGhlIG1hdGNoaW5nICd9Jy4NCj4gPj4+Pj4+PiArbmxfYWZ0 ZXJfYnJhY2Vfb3Blbl9jbXTCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqAgPSB0cnVlwqDCoMKgwqAgIw0KPiA+Pj4+Pj4+IFdoZXRoZXIgdG8gYWRkIGEgbmV3bGluZSBi ZXR3ZWVuIHRoZSBvcGVuIGJyYWNlIGFuZCBhDQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICMNCj4gPj4+Pj4+PiB0cmFpbGlu ZyBzaW5nbGUtbGluZSBjb21tZW50Lg0KPiA+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjDQo+ID4+Pj4+Pj4gUmVxdWlyZXMgbmxf YWZ0ZXJfYnJhY2Vfb3BlbiA9IHRydWUuDQo+ID4+Pj4+Pj4gK25sX2FmdGVyX2RvwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg ID0gYWRkwqDCoMKgwqDCoCAjIEFkZCBvcg0KPiA+Pj4+Pj4+IHJlbW92ZSBibGFuayBsaW5lIGFm dGVyICdkby93aGlsZScgc3RhdGVtZW50Lg0KPiA+Pj4+Pj4+ICtubF9hZnRlcl9mb3LCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg ID0gYWRkwqDCoMKgwqDCoCAjIEFkZCBvcg0KPiA+Pj4+Pj4+IHJlbW92ZSBibGFuayBsaW5lIGFm dGVyICdmb3InIHN0YXRlbWVudC4NCj4gPj4+Pj4+PiArbmxfYWZ0ZXJfZnVuY19ib2R5wqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IDLCoMKgwqDC oMKgwqDCoCAjIFRoZQ0KPiA+Pj4+Pj4+IG51bWJlciBvZiBuZXdsaW5lcyBhZnRlciAnfScgb2Yg YSBtdWx0aS1saW5lDQo+ID4+PiBmdW5jdGlvbg0KPiA+Pj4+PiBib2R5DQo+ID4+Pj4+Pj4gK25s X2FmdGVyX2Z1bmNfYm9keV9vbmVfbGluZXLCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCA9IDINCj4gPj4+Pj4+PiArbmxfYWZ0ZXJfZnVuY19wcm90b8KgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gMg0KPiA+Pj4+Pj4+ICtubF9hZnRlcl9m dW5jX3Byb3RvX2dyb3VwwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSAy DQo+ID4+Pj4+Pj4gK25sX2FmdGVyX2lmwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gYWRkDQo+ID4+Pj4+Pj4gK25sX2Fm dGVyX211bHRpbGluZV9jb21tZW50wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg ID0gZmFsc2UNCj4gPj4+Pj4+PiArbmxfYWZ0ZXJfcmV0dXJuwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IGZhbHNlDQo+ID4+Pj4+Pj4g K25sX2FmdGVyX3N0cnVjdMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgPSAyDQo+ID4+Pj4+Pj4gK25sX2FmdGVyX3N3aXRjaMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSBhZGQN Cj4gPj4+Pj4+PiArbmxfYWZ0ZXJfdmJyYWNlX2Nsb3NlwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IHRydWUNCj4gPj4+Pj4+PiArbmxfYWZ0ZXJfdmJyYWNl X29wZW7CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSB0 cnVlDQo+ID4+Pj4+Pj4gK25sX2FmdGVyX3ZicmFjZV9vcGVuX2VtcHR5wqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gdHJ1ZQ0KPiA+Pj4+Pj4+ICtubF9hZnRlcl93aGlsZcKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCA9IGFkZA0KPiA+Pj4+Pj4+ICtubF9hc3NpZ25fbGVhdmVfb25lX2xpbmVyc8KgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IHRydWUNCj4gPj4+Pj4+PiArbmxfYmVmb3JlX2Js b2NrX2NvbW1lbnTCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSAy DQo+ID4+Pj4+Pj4gK25sX2JlZm9yZV9jYXNlwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gZmFsc2UNCj4gPj4+Pj4+PiArbmxfYmVm b3JlX2RvwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCA9IGlnbm9yZQ0KPiA+Pj4+Pj4+ICtubF9iZWZvcmVfZm9ywqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSBp Z25vcmUNCj4gPj4+Pj4+PiArbmxfYmVmb3JlX2lmwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IGlnbm9yZQ0KPiA+Pj4+Pj4+ ICtubF9iZWZvcmVfc3dpdGNowqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgPSBpZ25vcmUNCj4gPj4+Pj4+PiArbmxfYmVmb3JlX3doaWxlwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9 IGlnbm9yZQ0KPiA+Pj4+Pj4+ICtubF9iZWZvcmVfd2hvbGVfZmlsZV9pZmRlZsKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IDINCj4gPj4+Pj4+PiArbmxfYnJhY2VfYnJhY2XC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqAgPSBmb3JjZQ0KPiA+Pj4+Pj4+ICtubF9icmFjZV9zdHJ1Y3RfdmFywqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSByZW1vdmUNCj4gPj4+Pj4+PiAr bmxfY2FzZV9jb2xvbl9icmFjZcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgID0gYWRkDQo+ID4+Pj4+Pj4gK25sX2NsYXNzX2xlYXZlX29uZV9saW5lcnPC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IGZhbHNlDQo+ID4+Pj4+Pj4g K25sX2NvbGxhcHNlX2VtcHR5X2JvZHnCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoCA9IGZhbHNlDQo+ID4+Pj4+Pj4gK25sX2NvbW1lbnRfZnVuY19kZWbCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IDENCj4gPj4+Pj4+ PiArbmxfY3JlYXRlX2Zvcl9vbmVfbGluZXLCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqAgPSBmYWxzZQ0KPiA+Pj4+Pj4+ICtubF9jcmVhdGVfaWZfb25lX2xpbmVywqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSBmYWxzZQ0KPiA+Pj4+ Pj4+ICtubF9jcmVhdGVfd2hpbGVfb25lX2xpbmVywqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqAgPSBmYWxzZQ0KPiA+Pj4+Pj4+ICtubF9kZWZpbmVfbWFjcm/CoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gZmFsc2UN Cj4gPj4+Pj4+PiArbmxfZHNfc3RydWN0X2VudW1fY2xvc2VfYnJhY2XCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgPSB0cnVlDQo+ID4+Pj4+Pj4gK25sX2RzX3N0cnVjdF9lbnVtX2NtdMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSBmYWxzZQ0KPiA+ Pj4+Pj4+ICtubF9lbnVtX2xlYXZlX29uZV9saW5lcnPCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgID0gZmFsc2UNCj4gPj4+Pj4+PiArbmxfZnVuY19kZWNsX2VuZMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gYWRk DQo+ID4+Pj4+Pj4gK25sX2Z1bmNfZGVjbF9zdGFydMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSBhZGQNCj4gPj4+Pj4+PiArbmxfZnVuY19kZWZf ZW5kwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCA9IGFkZA0KPiA+Pj4+Pj4+ICtubF9mdW5jX2RlZl9zdGFydMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IGFkZA0KPiA+Pj4+Pj4+ICtu bF9mdW5jX2xlYXZlX29uZV9saW5lcnPCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgID0gZmFsc2UNCj4gPj4+Pj4+PiArbmxfZnVuY19wcm90b190eXBlX25hbWXCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSBhZGQNCj4gPj4+Pj4+PiArbmxf ZnVuY192YXJfZGVmX2Jsa8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgID0gMQ0KPiA+Pj4+Pj4+ICtubF9nZXRzZXRfbGVhdmVfb25lX2xpbmVyc8KgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IGZhbHNlDQo+ID4+Pj4+Pj4gK25sX2lm X2xlYXZlX29uZV9saW5lcnPCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCA9IGZhbHNlDQo+ID4+Pj4+Pj4gK25sX211bHRpX2xpbmVfZGVmaW5lwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gZmFsc2UNCj4gPj4+Pj4+PiAr bmxfc3F1ZWV6ZV9pZmRlZsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgID0gZmFsc2UNCj4gPj4+Pj4+PiArbmxfdmFyX2RlZl9ibGtfZW5kwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IDANCj4g Pj4+Pj4+PiArbmxfdmFyX2RlZl9ibGtfc3RhcnTCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqAgPSAwDQo+ID4+Pj4+Pj4gKw0KPiA+Pj4+Pj4+ICsjIFByZXBy b2Nlc3NvciBSdWxlcw0KPiA+Pj4+Pj4+ICtwcF9kZWZpbmVfYXRfbGV2ZWzCoMKgwqDCoMKgID0g dHJ1ZQ0KPiA+Pj4+Pj4+ICtwcF9pZl9pbmRlbnRfY29kZcKgwqDCoMKgwqDCoCA9IGZhbHNlDQo+ ID4+Pj4+Pj4gK3BwX2luZGVudF9mdW5jX2RlZsKgwqDCoMKgwqAgPSBmYWxzZQ0KPiA+Pj4+Pj4+ ICtwcF9pbmRlbnRfZXh0ZXJuwqDCoMKgwqDCoMKgwqAgPSBmYWxzZQ0KPiA+Pj4+Pj4+ICtwcF9p Z25vcmVfZGVmaW5lX2JvZHnCoMKgID0gdHJ1ZcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCAjIFdvcmthcm91bmQ6IFR1cm4NCj4gPj4+Pj4+PiBvZmYgcHJvY2Vzc2luZyBmb3IgI2RlZmlu ZSBib2R5DQo+ID4+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjIChj dXJyZW50IHJ1bGVzDQo+ID4+Pj4+Pj4gZG8gbm90IHdvcmsgZm9yIHNvbWUgZGVmaW5lcykNCj4g Pj4+Pj4+PiArcHBfaW5kZW50wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IGFkZA0KPiA+ Pj4+Pj4+ICtwcF9pbmRlbnRfYXRfbGV2ZWzCoMKgwqDCoMKgID0gdHJ1ZQ0KPiA+Pj4+Pj4+ICtw cF9pbmRlbnRfY291bnTCoMKgwqDCoMKgwqDCoMKgID0gMg0KPiA+Pj4+Pj4+ICtwcF9pbmRlbnRf aWbCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gMg0KPiA+Pj4+Pj4+ICtwcF9pbmRlbnRfcmVnaW9u wqDCoMKgwqDCoMKgwqAgPSAyDQo+ID4+Pj4+Pj4gK3BwX3JlZ2lvbl9pbmRlbnRfY29kZcKgwqAg PSBmYWxzZQ0KPiA+Pj4+Pj4+ICtwcF9zcGFjZcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCA9IHJlbW92ZQ0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiArIw0KPiA+Pj4+Pj4+ICsjIFRoZSB0 b2tlbnMgYmVsb3cgYXJlIGFzc2lnbmVkIHNwZWNpZmljIHR5cGVzIHNvIHRoZXkgYXJlDQo+ID4+ Pj4+Pj4gYWx3YXlzIHJlY29nbml6ZWQgcHJvcGVybHkuDQo+ID4+Pj4+Pj4gKyMNCj4gPj4+Pj4+ PiArDQo+ID4+Pj4+Pj4gKyMgRXhwbGljaXRseSBkZWZpbmUgRURLIElJIHF1YWxpZmllcnMNCj4g Pj4+Pj4+PiArc2V0IFFVQUxJRklFUiBDT05TVA0KPiA+Pj4+Pj4+ICtzZXQgUVVBTElGSUVSIEVG SUFQSQ0KPiA+Pj4+Pj4+ICtzZXQgUVVBTElGSUVSIElODQo+ID4+Pj4+Pj4gK3NldCBRVUFMSUZJ RVIgT1BUSU9OQUwNCj4gPj4+Pj4+PiArc2V0IFFVQUxJRklFUiBPVVQNCj4gPj4+Pj4+PiArDQo+ ID4+Pj4+Pj4gKyMgRXhwbGljaXRseSBkZWZpbmUgRURLIElJIHR5cGVzDQo+ID4+Pj4+Pj4gK3Nl dCBUWVBFIEVGSV9TVEFUVVMNCj4gPj4+Pj4+PiArc2V0IFRZUEUgVk9JRA0KPiA+Pj4+Pj4+IGRp ZmYgLS1naXQgYS8ucHl0b29sL1BsdWdpbi9VbmNydXN0aWZ5Q2hlY2svdW5jcnVzdGlmeV9leHRf ZGVwLnlhbWwNCj4gPj4+Pj4+PiBiLy5weXRvb2wvUGx1Z2luL1VuY3J1c3RpZnlDaGVjay91bmNy dXN0aWZ5X2V4dF9kZXAueWFtbA0KPiA+Pj4+Pj4+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0DQo+ID4+ Pj4+Pj4gaW5kZXggMDAwMDAwMDAwMDAwLi5kOGMyMjQwM2I0YjENCj4gPj4+Pj4+PiAtLS0gL2Rl di9udWxsDQo+ID4+Pj4+Pj4gKysrIGIvLnB5dG9vbC9QbHVnaW4vVW5jcnVzdGlmeUNoZWNrL3Vu Y3J1c3RpZnlfZXh0X2RlcC55YW1sDQo+ID4+Pj4+Pj4gQEAgLTAsMCArMSwxNiBAQA0KPiA+Pj4+ Pj4+ICsjIyBAZmlsZQ0KPiA+Pj4+Pj4+ICsjIERvd25sb2FkcyB0aGUgVW5jcnVzdGlmeSBhcHBs aWNhdGlvbiBmcm9tIGEgUHJvamVjdCBNdSBOdUdldA0KPiA+Pj4+Pj4+IHBhY2thZ2UuDQo+ID4+ Pj4+Pj4gKyMNCj4gPj4+Pj4+PiArIyBDb3B5cmlnaHQgKGMpIE1pY3Jvc29mdCBDb3Jwb3JhdGlv bi4NCj4gPj4+Pj4+PiArIyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTItQ2xhdXNlLVBh dGVudA0KPiA+Pj4+Pj4+ICsjIw0KPiA+Pj4+Pj4+ICt7DQo+ID4+Pj4+Pj4gK8KgICJpZCI6ICJ1 bmNydXN0aWZ5LWNpLTEiLA0KPiA+Pj4+Pj4+ICvCoCAic2NvcGUiOiAiY2lidWlsZCIsDQo+ID4+ Pj4+Pj4gK8KgICJ0eXBlIjogIm51Z2V0IiwNCj4gPj4+Pj4+PiArwqAgIm5hbWUiOiAibXUtdW5j cnVzdGlmeS1yZWxlYXNlIiwNCj4gPj4+Pj4+PiArwqAgInNvdXJjZSI6DQo+ID4+Pj4+Pj4gImh0 dHBzOi8vcGtncy5kZXYuYXp1cmUuY29tL3Byb2plY3RtdS9VbmNydXN0aWZ5L19wYWNrYWdpbmcv bXVfdW5jcnVzdGlmeS9udWdldC92My9pbmRleC5qc29uIiwNCj4gPj4+Pj4+Pg0KPiA+Pj4+Pj4+ ICvCoCAidmVyc2lvbiI6ICI3My4wLjMiLA0KPiA+Pj4+Pj4+ICvCoCAiZmxhZ3MiOiBbInNldF9z aGVsbF92YXIiLCAiaG9zdF9zcGVjaWZpYyJdLA0KPiA+Pj4+Pj4+ICvCoCAidmFyX25hbWUiOiAi VU5DUlVTVElGWV9DSV9QQVRIIg0KPiA+Pj4+Pj4+ICt9DQo+ID4+Pj4+Pj4gZGlmZiAtLWdpdCBh Ly5weXRvb2wvUGx1Z2luL1VuY3J1c3RpZnlDaGVjay91bmNydXN0aWZ5X3BsdWdfaW4ueWFtbA0K PiA+Pj4+Pj4+IGIvLnB5dG9vbC9QbHVnaW4vVW5jcnVzdGlmeUNoZWNrL3VuY3J1c3RpZnlfcGx1 Z19pbi55YW1sDQo+ID4+Pj4+Pj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4gPj4+Pj4+PiBpbmRl eCAwMDAwMDAwMDAwMDAuLjA2Yzc2YWYwMjc1OQ0KPiA+Pj4+Pj4+IC0tLSAvZGV2L251bGwNCj4g Pj4+Pj4+PiArKysgYi8ucHl0b29sL1BsdWdpbi9VbmNydXN0aWZ5Q2hlY2svdW5jcnVzdGlmeV9w bHVnX2luLnlhbWwNCj4gPj4+Pj4+PiBAQCAtMCwwICsxLDExIEBADQo+ID4+Pj4+Pj4gKyMjIEBm aWxlDQo+ID4+Pj4+Pj4gKyMgQ2lCdWlsZFBsdWdpbiB1c2VkIHRvIGNoZWNrIGNvZGluZyBzdGFu ZGFyZCBjb21wbGlhbmNlIG9mIEVESw0KPiA+Pj4+Pj4+IElJIHN0eWxlIEMgc291cmNlIGNvZGUN Cj4gPj4+Pj4+PiArIw0KPiA+Pj4+Pj4+ICsjIENvcHlyaWdodCAoYykgTWljcm9zb2Z0IENvcnBv cmF0aW9uLg0KPiA+Pj4+Pj4+ICsjIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMi1DbGF1 c2UtUGF0ZW50DQo+ID4+Pj4+Pj4gKyMjDQo+ID4+Pj4+Pj4gK3sNCj4gPj4+Pj4+PiArwqAgInNj b3BlIjogImNpYnVpbGQiLA0KPiA+Pj4+Pj4+ICvCoCAibmFtZSI6ICJVbmNydXN0aWZ5IENvZGlu ZyBTdGFuZGFyZCBUZXN0IiwNCj4gPj4+Pj4+PiArwqAgIm1vZHVsZSI6ICJVbmNydXN0aWZ5Q2hl Y2siDQo+ID4+Pj4+Pj4gK30NCj4gPj4+Pj4+PiBkaWZmIC0tZ2l0IGEvLnB5dG9vbC9SZWFkbWUu bWQgYi8ucHl0b29sL1JlYWRtZS5tZA0KPiA+Pj4+Pj4+IGluZGV4IGY2NTA1NTA3OTY2YS4uZTBk MDdmMzE3MDQ5IDEwMDY0NA0KPiA+Pj4+Pj4+IC0tLSBhLy5weXRvb2wvUmVhZG1lLm1kDQo+ID4+ Pj4+Pj4gKysrIGIvLnB5dG9vbC9SZWFkbWUubWQNCj4gPj4+Pj4+PiBAQCAtMjY0LDYgKzI2NCwx MCBAQCBCU0QtMi1DbGF1c2UtUGF0ZW50Lg0KPiA+Pj4+Pj4+IMKgwqAgUnVuIHRoZSBFY2MgdG9v bCBvbiB0aGUgcGFja2FnZS4gVGhlIEVjYyB0b29sIGlzIGF2YWlsYWJsZSBpbg0KPiA+Pj4+Pj4+ IHRoZSBCYXNlVG9vbHMNCj4gPj4+Pj4+PiDCoMKgIHBhY2thZ2UuIEl0IGNoZWNrcyB0aGF0IHRo ZSBjb2RlIGNvbXBsaWVzIHRvIHRoZSBFREtJSSBjb2RpbmcNCj4gPj4+Pj4+PiBzdGFuZGFyZC4N Cj4gPj4+Pj4+Pg0KPiA+Pj4+Pj4+ICsjIyMgQ29kaW5nIFN0YW5kYXJkIENvbXBsaWFuY2UgLSBV bmNydXN0aWZ5Q2hlY2sNCj4gPj4+Pj4+PiArDQo+ID4+Pj4+Pj4gK1J1bnMgdGhlIFVuY3J1c3Rp ZnkgYXBwbGljYXRpb24gdG8gY2hlY2sgZm9yIGNvZGluZyBzdGFuZGFyZA0KPiA+Pj4+Pj4+IGNv bXBsaWFuY2UgaXNzdWVzLg0KPiA+Pj4+Pj4+ICsNCj4gPj4+Pj4+PiDCoMKgICMjIFB5VG9vbCBT Y29wZXMNCj4gPj4+Pj4+Pg0KPiA+Pj4+Pj4+IMKgwqAgU2NvcGVzIGFyZSBob3cgdGhlIFB5VG9v bCBleHRfZGVwLCBwYXRoX2VudiwgYW5kIHBsdWdpbnMgYXJlDQo+ID4+Pj4+Pj4gYWN0aXZhdGVk LsKgIE1lYW5pbmcNCj4gPj4+Pj4+PiAtLQ0KPiA+Pj4+Pj4+IDIuMjguMC53aW5kb3dzLjENCj4g Pj4+Pj4+DQo+ID4+Pj4+Pg0KPiA+Pj4+Pj4NCj4gPj4+Pj4+DQo+ID4+Pj4+Pg0KPiA+Pj4+Pj4N Cj4gPj4+Pj4NCj4gPj4+Pj4NCj4gPj4+Pj4NCj4gPj4+Pj4NCj4gPj4NCj4gPj4NCj4gPj4NCj4g Pj4NCj4gPj4NCj4gPj4NCj4gPg0KPiA+DQo+ID4gDQo+ID4NCg==