From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.8]) by sourceware.org (Postfix) with ESMTPS id 52E8F3858D38 for ; Fri, 12 Apr 2024 07:47:59 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 52E8F3858D38 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=intel.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=intel.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 52E8F3858D38 Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=192.198.163.8 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1712908087; cv=pass; b=g4HOLoOEPEYPgtvPZj8KsP0tEk4wp4NtcjJoSQOR8rm6nvHrDYOl+aaIXML9b1czrouYJB9SiEbRI/ob5S3RPQUn9XcC+ce03XgJOLhG52ZjZHJMkblzwDwUf6mMTb28aanvunP64G6fN/6sCRgJg6T08lcN/N6JjcNttYPtWhU= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1712908087; c=relaxed/simple; bh=ou8wFIXstGNemrJqDNMaSiGxwrqIVegLFNRJ11KmhdA=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=lNXROukaJz+XriMQDLSrgJN1UaJl4TWIre8fTNDzCXAKzVhSRE8xAtJhlAJxGN5XAdSYaXvxRekX5Sbg+K3CG6sh+HNZuJOG5prk5FWSO3W6i+zcp+I7dctcOleWpTPA8PaLIBgpMcnG7dDjO32OCDogZRossRKfK4l918Zhzm0= ARC-Authentication-Results: i=2; server2.sourceware.org DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1712908079; x=1744444079; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=ou8wFIXstGNemrJqDNMaSiGxwrqIVegLFNRJ11KmhdA=; b=JJj+iTkZKL43OrXedKQ9lsjEqRsS3Xxeqxqq66VbDsMd7Hkh1yktRWA9 /piTkDEd5arxHlqr1+pk5gqWvg4uT8F4dbx/WtlUqV9i9XpPRc/1ynql1 kMj9WO2EIINWNEaa/zRb9BbhNZdRvFK6RyMLSgIDqA04syLhgwi+MnYAq 3hd7dIvU2ip5uuqckZsxxWiT8LzDniVbN/iIMhCIAthXBY60Sh+39rFzV ydA5mIVflfyULlfY+9yWeDxf+j66CWJo3i3EQpLOcPdxRoIXvihWfd7MA RUebJHzwjAj+mXHvgZS482YpCVrBMTWVxMUdS7IJopvKKxwXH+RagP8Cf w==; X-CSE-ConnectionGUID: l2P5OXbcTZqMb4FcbwuUIQ== X-CSE-MsgGUID: slQUzFCVRZ+zxcZD1krqgQ== X-IronPort-AV: E=McAfee;i="6600,9927,11041"; a="25868374" X-IronPort-AV: E=Sophos;i="6.07,195,1708416000"; d="scan'208";a="25868374" Received: from orviesa006.jf.intel.com ([10.64.159.146]) by fmvoesa102.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 12 Apr 2024 00:47:57 -0700 X-CSE-ConnectionGUID: z6rScFcfTMmo3cupe9imZQ== X-CSE-MsgGUID: PlPHPJ8fRY2NLu4+zfvL8Q== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.07,195,1708416000"; d="scan'208";a="21588546" Received: from fmsmsx603.amr.corp.intel.com ([10.18.126.83]) by orviesa006.jf.intel.com with ESMTP/TLS/AES256-GCM-SHA384; 12 Apr 2024 00:47:58 -0700 Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) 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.2507.35; Fri, 12 Apr 2024 00:47:56 -0700 Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) by fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35 via Frontend Transport; Fri, 12 Apr 2024 00:47:56 -0700 Received: from NAM10-DM6-obe.outbound.protection.outlook.com (104.47.58.101) by edgegateway.intel.com (192.55.55.70) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.35; Fri, 12 Apr 2024 00:47:55 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=SCCT1DkEOf0XpTaxLh9nHEd1TapQimOazewNBCwVCrODDEIj+h29iPa7ERIYw6Xc/x7CsVGvEk528gG9+CK/UYlN8IZ51on7tqatjdh7omznnlFWzlSFEHqi3ZGGpHr65bcVzEWTNl1E570nspav5RaPQrrjVtAW0ZaK+nLyv5P+/yR0fDDonG+IFK+VoApLCc9NYXN/TIjPfesbbSy7HM8yk+Gh5OmmQIiwbRf+K/8+tT4v0R+kyMrbIya3CIj6fl6PCSxNap6DIbUR/VmRzwpIAeGFpBKQVDxAkyGd9qg400EQM+Y3CEKyA+1NEVWImHSDdKO4dgdZhvSvf19Byg== 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=ou8wFIXstGNemrJqDNMaSiGxwrqIVegLFNRJ11KmhdA=; b=oIT7G4S7UqDrKeGjCIAQq6y+FFYYTGoBWxc7c/+H02rIcFYq782LOBkMOs01ois5Ini6mPh+P/tMJutnim1T+wxFg8DPD9xpMVHzqDi4WqUqg1rq3k/m3CfdWtRuC4Y95SR1QapXnC4hwdo8e+wsq9mzb3hev4tz2gfP0KqK25pD464NWD2EERgOQN7EPSor3bBbnfOdo3KqVJUngZyuI9rYfGawx9Fm78iNI1kWFuRe38lljEPByT82onEWliYB4gGfgX3LxsMl8SYt434MSPT0tK5cS48dDpBLt6YvoNQsvJKBBoNYj7AGEEXYMhkZ1UPQN+wyTyt9JlfXg8h4aQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Received: from MW5PR11MB5908.namprd11.prod.outlook.com (2603:10b6:303:194::10) by SJ0PR11MB5895.namprd11.prod.outlook.com (2603:10b6:a03:42b::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7452.26; Fri, 12 Apr 2024 07:47:50 +0000 Received: from MW5PR11MB5908.namprd11.prod.outlook.com ([fe80::aaa8:bc22:5fb0:5ed0]) by MW5PR11MB5908.namprd11.prod.outlook.com ([fe80::aaa8:bc22:5fb0:5ed0%5]) with mapi id 15.20.7452.019; Fri, 12 Apr 2024 07:47:50 +0000 From: "Li, Pan2" To: Kito Cheng CC: =?utf-8?B?Q2hyaXN0b3BoIE3DvGxsbmVy?= , "gcc-patches@gcc.gnu.org" , "juzhe.zhong@rivai.ai" , "Wang, Yanzhang" Subject: RE: [PATCH v2] RISC-V: Allow RVV intrinsic for more function target Thread-Topic: [PATCH v2] RISC-V: Allow RVV intrinsic for more function target Thread-Index: AQHahQnYzTuvQQ/CXUSOqm2JMOM+TLFdnKyAgAAB/mCABoFJAIAAFphAgAAYaICAAAIt8A== Date: Fri, 12 Apr 2024 07:47:50 +0000 Message-ID: References: <20240327031603.453410-1-pan2.li@intel.com> <20240402142657.2057567-1-pan2.li@intel.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: MW5PR11MB5908:EE_|SJ0PR11MB5895:EE_ x-ms-office365-filtering-correlation-id: 88eaa14b-2f18-42c6-f4c6-08dc5ac4da66 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: Swt3hEOoQGJDQNgFGjMEsf0MKRv4iWoNseobipj1s1CzwEnjiRXeu1QHLoaUqN+jGO9cO5OxRb/OPu2xNbVwCoOuISy/uOHxyYp0gC5aae94/DKHba2zdE/JKKC0xF9bjZpGFiczMjwu6wPPQa7lmSCuon7pKiLiydGGZtkv3guOAhtjdlWfkmK5OW0vzXwgOKvlK2yZ7iwkLMAGmtOrOnjA2mDF3BSFhVdmLNoGzV2WpR/1JUeH4krCMrUFJEDqRcTq/UmkQQ1z3Of8UP2hiYxLOIi2ZHdxoL1F+9+atmpXv3VKrc/EiY2urC9/ss2epkRsKOxDxMNr2kXy+uqu4146+K2CwDZrcORoKff67L6KgvXAPwM5hEf3wsAM+ddd2i02HoogmRAl3fgxaQcZ8KS8oM6iUIPNEtwFK+c1+so8lgKV/zF+50x3DJZYROmMJqCdg7/SKeMmNSngstupfD23odQX/VwmqlfCZGTVXJVpvtvvKlruERl3P+FK14L/V3eWrEGjXBYsii0U4oOPxGrDwqk3nSHCqwpUlEdtJHh6jmmPbLWfy5ykXMAi3afffhLtVf1gV4sPUI+NWwIemEkJHRnFSL1IU4djcTXZOaeVzi6Ksr4Qwb3O++cIKqSohSQFz7TPpwjUvgCeKnqylo26F4rMvJyvv4pJv/xECco= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MW5PR11MB5908.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376005)(366007)(1800799015)(38070700009);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?TytHSWFqZXN3czlxMk5JL1RCTStpZytUVjZjbkRoS292NDVWU09WOTdwcVo4?= =?utf-8?B?dGtCekE2NUJjTWpEVndXUEFMT1lsbEh4eHlXQVhHcks0UW9ZOGxpbGhEYys2?= =?utf-8?B?aGlBRng4UFJBcm91MlIwamorV3FGQlRXdTkxalQ2UkUzNEFCMkNzSmJUamVq?= =?utf-8?B?MENrT0Z0YWJVODRCMlNGWGxoRTFwVGdxeTA5Y3p3VWF1YmRPdm5Fak44ZmZo?= =?utf-8?B?MFV0STBnU1FKbVFuemo0S2hVaFlpYmdyWHBEQTFQVTQ1NUdqS0RKcmd0K2d0?= =?utf-8?B?Vzd1L042ZWxYMlNSOGRaUEZOdlpvVUJGeDBRdjVoMXF6US9nVndjQWYyaEM2?= =?utf-8?B?R3JoTFYvdDZsQ1VJdDBKYnM0RHVOV2tOcVF4WGJGVjROMDdRdGhZVjdHSStS?= =?utf-8?B?YWpiSjlWWnE1MUhXOXJZZlJNQnh6UVlLK2VUeXlHRXBXL3o5K1dGQVJHK1dG?= =?utf-8?B?MjBMdVhWNE9jQjFFNDZDSlZGeHVuWHEzQkxFaHM0K3I0TTAzcU5iYi9nVEE3?= =?utf-8?B?UkdVNG5LUHp0V2dFMjlTWFZBY2NyZThnaXBscVhhTHAreGpaU2o4bVpQaWdl?= =?utf-8?B?eUNNencvR0VLQ0orandybm1vWnhRMEQ5UldEM2daUVFTNUpGMU9sdzVSendx?= =?utf-8?B?RW1mNGtJOGN0WjAzTTRyeG5KZmZSMWNUUWpWUU1BekpyZmRxWHI4Q250VmM4?= =?utf-8?B?ZnY1ZDQ5UnBVcm1ZZjVkd1Q5dFg3VWtVL1IwN0xpU0t3UTNmZzFoVHoyQ21P?= =?utf-8?B?NU5YbHdxeGRoMkxHaFZ3MjBNTW1MUWREMjYyZi9ZQi9ocU5yT2F2ZXF2SGo0?= =?utf-8?B?Uzd2dVo4alA1TWVKc3ZIZk95SXRYWHpGRk1OWm5lWFRzcHVZUTZNVXBWRjFl?= =?utf-8?B?SzRmaVNZSUtSRm52djZQOS9BZG10aWY0d3ZMOXpFZ2g5dzVQdG0vN2lhdy84?= =?utf-8?B?cE9vbEs3Rlp5N2lwdGkwV29QNU1NOFRGVS94aGpWRjA3UUxuSm1RbGJtbHQy?= =?utf-8?B?UFAydjE4SnliRW12Uy8wbzBiNWhiYnltNUxuL2xEVlN1TVV0c3RDN0NROVF0?= =?utf-8?B?bWhZeEtBVWF2QTdPNTFtWUFNc3U1NVdCTDNJaXd1UVg2QlhIbTMrd1EyWWhU?= =?utf-8?B?czBLUWVBNEhXNFNTVlBRUHpleTc0Nis1Z0pDMkd2MHg2Z3JWK2toczBhK2dq?= =?utf-8?B?NXF3eWN2blJkM3FEN0tzZEMxYWJwQmdXUTQ5dDNOZ1JQbHhhTVRjQnNFSFpx?= =?utf-8?B?Q1JzaG55SlFtclIyZ3JaaUxQOHlRNjVPM0NLSy81bVRZUHEvYWllVkQvdG44?= =?utf-8?B?c2VvRkxqN21ocm1jVWFpR05oSS95UkRZeEV3SkNjK3kya0xtblZKZDNLczR6?= =?utf-8?B?dkFsZjJnYUVtTzZKdVFINTBlbFRZVW54NFZBWWFhUmh6dmxUL013L3M2WWJ2?= =?utf-8?B?TW5IaHp5NEdMUEJNcExlMGtLUnZyaTdHTjJxd1hpRlJoaXkxbzM2V2pxR2xH?= =?utf-8?B?TE5GSVk2Sy84ME5FRXRXdm5YZnY4anJrb1ozSTlQUGRtR3cyT0lZdE9WZHcx?= =?utf-8?B?bWxOaHRqVUQ5UjJpNjM2MkM4TmFCS1lZUXFNTVBKRXU4U1Q0dTJxSUM5WU8y?= =?utf-8?B?anZQVTNpbkhUendValMwdGU4QktYMmNEdXJubzVrT3FBaHhlLzMvNzBHZ3lJ?= =?utf-8?B?bnRVdHY0NHZyWk95aC82VGJUSzRVTEpIR1IvVUszNmxLTE9qNjRoVVdVeE5K?= =?utf-8?B?ZHVBdE80NS9VN2tOMlhvU2RnL0V6a2R1VklwUFVBUjhodTJzeVAzZWlCckp2?= =?utf-8?B?anhoWDArdzdjdEhPYzVUZGFMWnBkN1BFZ0RGbEpJUmg2ajF0MXFhbjdTRmRk?= =?utf-8?B?MlFRbThhTlcyVFhHNUpqR085WVV3WUxUSithVENVdmY5M3Q0d2RsaTdQV2ZO?= =?utf-8?B?c0xGR1AwUDQxcGtWOE9rYmRnSEpJTDVPT3JDRENvVlVUVUhaa3RvUnYxVUJm?= =?utf-8?B?ZFN0K3VZSjZWc1YwUENOMG53aC9jNG04bUp1TStHdEtmTmF1blVBaEVuTmZn?= =?utf-8?B?Q21UL04zVENFc214Z2JYM1h2YUVwMURwMHdrR0plaGdSVkFESFdUcHN0UndT?= =?utf-8?Q?lDJ4=3D?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MW5PR11MB5908.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 88eaa14b-2f18-42c6-f4c6-08dc5ac4da66 X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Apr 2024 07:47:50.3566 (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: 93Tx3WlNCThw3GwWqEy4GlGWpaHv8BAPksteH2WGhD4Whr1+7QoRTFbUafbPx0muG4r/3P6RvlzDu6M2pJDXgA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR11MB5895 X-OriginatorOrg: intel.com X-Spam-Status: No, score=-13.6 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,GIT_PATCH_0,KAM_SHORT,RCVD_IN_DNSWL_LOW,SPF_HELO_NONE,SPF_NONE,TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: R290IGl0LCB3aWxsIGNvbW1pdCBhZnRlciBhIHJvdW5kIG9mIHRlc3QuIFRoYW5rcyBLaXRvIGZv ciBzdWdnZXN0aW9uLg0KDQpQYW4NCg0KLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCkZyb206 IEtpdG8gQ2hlbmcgPGtpdG8uY2hlbmdAZ21haWwuY29tPiANClNlbnQ6IEZyaWRheSwgQXByaWwg MTIsIDIwMjQgMzozOSBQTQ0KVG86IExpLCBQYW4yIDxwYW4yLmxpQGludGVsLmNvbT4NCkNjOiBD aHJpc3RvcGggTcO8bGxuZXIgPGNocmlzdG9waC5tdWVsbG5lckB2cnVsbC5ldT47IGdjYy1wYXRj aGVzQGdjYy5nbnUub3JnOyBqdXpoZS56aG9uZ0ByaXZhaS5haTsgV2FuZywgWWFuemhhbmcgPHlh bnpoYW5nLndhbmdAaW50ZWwuY29tPg0KU3ViamVjdDogUmU6IFtQQVRDSCB2Ml0gUklTQy1WOiBB bGxvdyBSVlYgaW50cmluc2ljIGZvciBtb3JlIGZ1bmN0aW9uIHRhcmdldA0KDQpIaSBQYW46DQoN CkZvciB0aG9zZSB0cml2aWFsIHBhdGNoZXMsIHlvdSBjYW4gY29tbWl0IGFoZWFkIGFuZCB0aGVu IHNlbmQgYSBwYXRjaA0KbWFpbCB3aXRoICJbY29tbWl0dGVkXSIgcHJlZml4IGJ5IGdpdCBzZW5k LWVtYWlsDQotLXN1YmplY3QtcHJlZml4PSJjb21taXR0ZWQiDQoNCk9uIEZyaSwgQXByIDEyLCAy MDI0IGF0IDI6MTPigK9QTSBMaSwgUGFuMiA8cGFuMi5saUBpbnRlbC5jb20+IHdyb3RlOg0KPg0K PiBUaGFua3MgQ2hyaXN0b3BoLCB3aWxsIHRha2UgY2FyZSBvZiBpdCBBU0FQLg0KPg0KPiBQYW4N Cj4NCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogQ2hyaXN0b3BoIE3DvGxs bmVyIDxjaHJpc3RvcGgubXVlbGxuZXJAdnJ1bGwuZXU+DQo+IFNlbnQ6IEZyaWRheSwgQXByaWwg MTIsIDIwMjQgMTI6NTEgUE0NCj4gVG86IExpLCBQYW4yIDxwYW4yLmxpQGludGVsLmNvbT4NCj4g Q2M6IEtpdG8gQ2hlbmcgPGtpdG8uY2hlbmdAZ21haWwuY29tPjsgZ2NjLXBhdGNoZXNAZ2NjLmdu dS5vcmc7IGp1emhlLnpob25nQHJpdmFpLmFpOyBXYW5nLCBZYW56aGFuZyA8eWFuemhhbmcud2Fu Z0BpbnRlbC5jb20+DQo+IFN1YmplY3Q6IFJlOiBbUEFUQ0ggdjJdIFJJU0MtVjogQWxsb3cgUlZW IGludHJpbnNpYyBmb3IgbW9yZSBmdW5jdGlvbiB0YXJnZXQNCj4NCj4gSGkgUGFuLA0KPg0KPiBU aGlzIHBhdGNoIHRyaWdnZXJzIHRoZSBmb2xsb3dpbmcgZXJyb3Igd2l0aCAtLWVuYWJsZS13ZXJy b3ItYWx3YXlzOg0KPg0KPiBnY2MvY29uZmlnL3Jpc2N2L3Jpc2N2LmNjOiBJbiBmdW5jdGlvbiDi gJh2b2lkDQo+IHJpc2N2X3ZhbGlkYXRlX3ZlY3Rvcl90eXBlKGNvbnN0X3RyZWUsIGNvbnN0IGNo YXIqKeKAmToNCj4gZ2NjL2NvbmZpZy9yaXNjdi9yaXNjdi5jYzo1NjE0OjIzOiBlcnJvcjogY29t cGFyaXNvbiBvZiBpbnRlZ2VyDQo+IGV4cHJlc3Npb25zIG9mIGRpZmZlcmVudCBzaWduZWRuZXNz OiDigJhpbnTigJkgYW5kIOKAmHVuc2lnbmVkIGludOKAmQ0KPiBbLVdlcnJvcj1zaWduLWNvbXBh cmVdDQo+ICA1NjE0IHwgICBpZiAoVEFSR0VUX01JTl9WTEVOIDwgcmVxdWlyZWRfbWluX3ZsZW4p DQo+DQo+IEJSDQo+IENocmlzdG9waA0KPg0KPiBPbiBNb24sIEFwciA4LCAyMDI0IGF0IDM6MzHi gK9BTSBMaSwgUGFuMiA8cGFuMi5saUBpbnRlbC5jb20+IHdyb3RlOg0KPiA+DQo+ID4gQ29tbWl0 dGVkLCB0aGFua3MgS2l0by4NCj4gPg0KPiA+IFBhbg0KPiA+DQo+ID4gLS0tLS1PcmlnaW5hbCBN ZXNzYWdlLS0tLS0NCj4gPiBGcm9tOiBLaXRvIENoZW5nIDxraXRvLmNoZW5nQGdtYWlsLmNvbT4N Cj4gPiBTZW50OiBNb25kYXksIEFwcmlsIDgsIDIwMjQgOToyNCBBTQ0KPiA+IFRvOiBMaSwgUGFu MiA8cGFuMi5saUBpbnRlbC5jb20+DQo+ID4gQ2M6IGdjYy1wYXRjaGVzQGdjYy5nbnUub3JnOyBq dXpoZS56aG9uZ0ByaXZhaS5haTsgV2FuZywgWWFuemhhbmcgPHlhbnpoYW5nLndhbmdAaW50ZWwu Y29tPg0KPiA+IFN1YmplY3Q6IFJlOiBbUEFUQ0ggdjJdIFJJU0MtVjogQWxsb3cgUlZWIGludHJp bnNpYyBmb3IgbW9yZSBmdW5jdGlvbiB0YXJnZXQNCj4gPg0KPiA+IExHVE0gOikNCj4gPg0KPiA+ IE9uIFR1ZSwgQXByIDIsIDIwMjQgYXQgMTA6MjjigK9QTSA8cGFuMi5saUBpbnRlbC5jb20+IHdy b3RlOg0KPiA+ID4NCj4gPiA+IEZyb206IFBhbiBMaSA8cGFuMi5saUBpbnRlbC5jb20+DQo+ID4g Pg0KPiA+ID4gSW4gcHJldmlvdXMsIHdlIGFsbG93ZWQgdGhlIHRhcmdldCgoImFyY2g9K3YiKSkg Zm9yIGEgZnVuY3Rpb24gd2l0aA0KPiA+ID4gcnY2NGdjIGJ1aWxkLiAgVGhpcyBwYXRjaCB3b3Vs ZCBsaWtlIHRvIHN1cHBvcnQgbW9yZSBhcmNoIG9wdGlvbnMgYXMNCj4gPiA+IGJlbG93Og0KPiA+ ID4gKiB6dmUzMngNCj4gPiA+ICogenZlMzJmDQo+ID4gPiAqIHp2ZTY0eA0KPiA+ID4gKiB6dmU2 NGYNCj4gPiA+ICogenZlNjRkDQo+ID4gPiAqIHp2ZmhtaW4NCj4gPiA+ICogenZmaA0KPiA+ID4g KiB6dmsqDQo+ID4gPiAqIHp2YmINCj4gPiA+DQo+ID4gPiBGb3IgZXhhbXBsZSwgd2UgaGF2ZSBz YW1wbGUgY29kZSBhcyBiZWxvdy4NCj4gPiA+IHZmbG9hdDMybTFfdA0KPiA+ID4gX19hdHRyaWJ1 dGVfXygodGFyZ2V0KCJhcmNoPSt6dmU2NGYiKSkpDQo+ID4gPiB0ZXN0XzkgKHZmbG9hdDMybTFf dCBhLCB2ZmxvYXQzMm0xX3QgYiwgc2l6ZV90IHZsKQ0KPiA+ID4gew0KPiA+ID4gICByZXR1cm4g X19yaXNjdl92ZmFkZF92dl9mMzJtMSAoYSwgYiwgdmwpOw0KPiA+ID4gfQ0KPiA+ID4NCj4gPiA+ IEl0IHdpbGwgZ2VuZXJhdGUgdGhlIGFzbSBjb2RlIHdoZW4gYnVpbGQgd2l0aCAtTzMgLW1hcmNo PXJ2NjRnYw0KPiA+ID4gdGVzdF85Og0KPiA+ID4gICAgICAgICB2c2V0dmxpIHplcm8sYTAsZTMy LG0xLHRhLG1hDQo+ID4gPiAgICAgICAgIHZmYWRkLnZ2ICAgICAgICB2OCx2OCx2OQ0KPiA+ID4g ICAgICAgICByZXQNCj4gPiA+DQo+ID4gPiBNZWFud2hpbGUsIHRoaXMgcGF0Y2ggaW50cm9kdWNl cyBtb3JlIGVycm9yIGhhbmRsaW5nIGZvciB0aGUgdGFyZ2V0DQo+ID4gPiBhdHRyaWJ1dGUuICBU YWtlIGFyY2g9K3p2ZTMyeCB3aXRoIHZmbG9hdDMybTFfdCB3aWxsIGhhdmUgZXJyb3IgbWVzc2Fn ZQ0KPiA+ID4gIid2ZmxvYXQzMm0xX3QnIHJlcXVpcmVzIHRoZSB6dmUzMmYsIHp2ZTY0ZiBvciB6 dmU2NGQgSVNBIGV4dGVuc2lvbiIuDQo+ID4gPiBBbmQgdGFrZSBhcmNoPSt6dmUzMmYgd2l0aCB2 ZmxvYXQxNm0xX3Qgd2lsbCBoYXZlIGVycm9yIG1lc3NhZ2UNCj4gPiA+ICIndmZsb2F0MTZtMV90 JyByZXF1aXJlcyB0aGUgenZmaG1pbiBvciB6dmZoIElTQSBleHRlbnNpb24iLg0KPiA+ID4NCj4g PiA+IEJ5IGRlZmF1bHQsIGFsbCB0aGUgUlZWIHR5cGVzIGluY2x1ZGVzIHRoZSBjbWRsaW5lIG1h cmNoIHdpbGwgYmUNCj4gPiA+IHJlZ2lzdGVyZWQgd2hlbiBpbmNsdWRlIHRoZSByaXNjdl92ZWN0 b3IuaC4gIEFuZCB3ZSBoYXZlIHNvcnRzIG9mIGNoZWNrDQo+ID4gPiBkdXJpbmcgYXJncyBhbmQg cmV0dXJuIHR5cGVzLg0KPiA+ID4NCj4gPiA+IEJlbG93IHRlc3QgYXJlIHBhc3NlZCBmb3IgdGhp cyBwYXRjaDoNCj4gPiA+ICogVGhlIHJpc2N2IGZ1bGx5IHJlZ3Jlc3Npb24gdGVzdC4NCj4gPiA+ DQo+ID4gPiBnY2MvQ2hhbmdlTG9nOg0KPiA+ID4NCj4gPiA+ICAgICAgICAgKiBjb25maWcvcmlz Y3YvcmlzY3YtYy5jYyAoc3RydWN0IHByYWdtYV9pbnRyaW5zaWNfZmxhZ3MpOiBOZXcNCj4gPiA+ ICAgICAgICAgc3RydWN0IHRvIGhvbGQgYWxsIGludHJpbmlzYyByZWxhdGVkIGZsYWdzLg0KPiA+ ID4gICAgICAgICAocmlzY3ZfcHJhZ21hX2ludHJpbnNpY19mbGFnc19wb2xsdXRlKTogTmV3IGZ1 bmMgdG8gcG9sbHV0ZQ0KPiA+ID4gICAgICAgICB0aGUgaW50cmluc2ljIGZsYWdzIGFuZCBiYWNr dXAgb3JpZ2luYWwgZmxhZ3MuDQo+ID4gPiAgICAgICAgIChyaXNjdl9wcmFnbWFfaW50cmluc2lj X2ZsYWdzX3Jlc3RvcmUpOiBOZXcgZnVuYyB0byByZXN0b3JlDQo+ID4gPiAgICAgICAgIHRoZSBm bGFncyBmcm9tIHRoZSBiYWNrdXAgaW50cmluc2ljIGZsYWdzLg0KPiA+ID4gICAgICAgICAocmlz Y3ZfcHJhZ21hX2ludHJpbnNpYyk6IFBvbGx1dGUgdGhlIGZsYWdzIGFuZCByZWdpc3RlciBhbGwN Cj4gPiA+ICAgICAgICAgcG9zc2libGUgYnVpbHRpbiB0eXBlcyBhbmQgZnVuY3Rpb25zLCB0aGVu IHJlc3RvcmUgYW5kIHJlaW5pdC4NCj4gPiA+ICAgICAgICAgKiBjb25maWcvcmlzY3YvcmlzY3Yt cHJvdG9zLmggKHJlaW5pdF9idWlsdGlucyk6IE5ldyBmdW5jDQo+ID4gPiAgICAgICAgIGRlY2wg dG8gcmVpbml0IGFmdGVyIGZsYWdzIHBvbGx1dGlvbi4NCj4gPiA+ICAgICAgICAgKHJpc2N2X29w dGlvbl9vdmVycmlkZSk6IE5ldyBleHRlcm4gZnVuYyBkZWNsLg0KPiA+ID4gICAgICAgICAqIGNv bmZpZy9yaXNjdi9yaXNjdi12ZWN0b3ItYnVpbHRpbnMuY2MgKHJlZ2lzdGVyX2J1aWx0aW5fdHlw ZXNfb25fbnVsbCk6DQo+ID4gPiAgICAgICAgIE5ldyBmdW5jIHRvIHJlZ2lzdGVyIGJ1aWx0aW4g dHlwZXMgaWYgbnVsbC4NCj4gPiA+ICAgICAgICAgKERFRl9SVlZfVFlQRSk6IERpdHRvLg0KPiA+ ID4gICAgICAgICAoREVGX1JWVl9UVVBMRV9UWVBFKTogRGl0dG8uDQo+ID4gPiAgICAgICAgIChy ZWluaXRfYnVpbHRpbnMpOiBOZXcgZnVuYyBpbXBsIHRvIHJlaW5pdCBhZnRlciBmbGFncyBwb2xs dXRpb24uDQo+ID4gPiAgICAgICAgICogY29uZmlnL3Jpc2N2L3Jpc2N2LXZlY3Rvci1idWlsdGlu cy5jYyAoZXhwYW5kX2J1aWx0aW4pOiBSZXR1cm4NCj4gPiA+ICAgICAgICAgdGFyZ2V0IHJ0eCBh ZnRlciBlcnJvcl9hdC4NCj4gPiA+ICAgICAgICAgKiBjb25maWcvcmlzY3YvcmlzY3YuY2MgKHJp c2N2X3ZlY3Rvcl9pbnRfdHlwZV9wKTogTmV3IHByZWRpY2F0ZQ0KPiA+ID4gICAgICAgICBmdW5j IHRvIHRlbGwgb25lIHRyZWUgdHlwZSBpcyBpbnRlZ2VyIG9yIG5vdC4NCj4gPiA+ICAgICAgICAg KHJpc2N2X3ZlY3Rvcl9mbG9hdF90eXBlX3ApOiBOZXcgcHJlZGljYXRlIGZ1bmMgdG8gdGVsbCBv bmUgdHJlZQ0KPiA+ID4gICAgICAgICB0eXBlIGlzIGZsb2F0IG9yIG5vdC4NCj4gPiA+ICAgICAg ICAgKHJpc2N2X3ZlY3Rvcl9lbGVtZW50X2JpdHNpemUpOiBOZXcgZnVuYyB0byBnZXQgdGhlIGVs ZW1lbnQgYml0c2l6ZQ0KPiA+ID4gICAgICAgICBvZiBhIHZlY3RvciB0cmVlIHR5cGUuDQo+ID4g PiAgICAgICAgIChyaXNjdl92ZWN0b3JfcmVxdWlyZWRfbWluX3ZsZW4pOiBOZXcgZnVuYyB0byBn ZXQgdGhlIHJlcXVpcmVkIG1pbiB2bGVuDQo+ID4gPiAgICAgICAgIG9mIGEgdmVjdG9yIHRyZWUg dHlwZS4NCj4gPiA+ICAgICAgICAgKHJpc2N2X3ZhbGlkYXRlX3ZlY3Rvcl90eXBlKTogTmV3IGZ1 bmMgdG8gdmFsaWRhdGUgdGhlIHRyZWUgdHlwZQ0KPiA+ID4gICAgICAgICBpcyB2YWxpZCBvbiBm bGFncy4NCj4gPiA+ICAgICAgICAgKHJpc2N2X3JldHVybl92YWx1ZV9pc192ZWN0b3JfdHlwZV9w KTogTGV2ZXJhZ2UgdGhlIGZ1bmMNCj4gPiA+ICAgICAgICAgcmlzY3ZfdmFsaWRhdGVfdmVjdG9y X3R5cGUgdG8gZG8gdGhlIHRyZWUgdHlwZSB2YWxpZGF0aW9uLg0KPiA+ID4gICAgICAgICAocmlz Y3ZfYXJndW1lbnRzX2lzX3ZlY3Rvcl90eXBlX3ApOiBEaXR0by4NCj4gPiA+ICAgICAgICAgKHJp c2N2X292ZXJyaWRlX29wdGlvbnNfaW50ZXJuYWwpOiBEaXR0by4NCj4gPiA+DQo+ID4gPiBnY2Mv dGVzdHN1aXRlL0NoYW5nZUxvZzoNCj4gPiA+DQo+ID4gPiAgICAgICAgICogZ2NjLnRhcmdldC9y aXNjdi9ydnYvYmFzZS9wcjEwOTQ3OS0xLmM6IEFkanVzdCB0aGUgZXhpc3RpbmcgdGVzdA0KPiA+ ID4gICAgICAgICBzY2VuYXJpb3MgYW5kIGFkZCBuZXcgZXJyb3IgY2hlY2sgdGVzdHMuDQo+ID4g PiAgICAgICAgICogZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS9wcjEwOTQ3OS0yLmM6IERpdHRv Lg0KPiA+ID4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvcHIxMDk0NzktMy5j OiBEaXR0by4NCj4gPiA+ICAgICAgICAgKiBnY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3ByMTA5 NDc5LTQuYzogRGlpdG8uDQo+ID4gPiAgICAgICAgICogZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFz ZS9wcjEwOTQ3OS01LmM6IERpaXRvLg0KPiA+ID4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3Yv cnZ2L2Jhc2UvcHIxMDk0NzktNi5jOiBEaWl0by4NCj4gPiA+ICAgICAgICAgKiBnY2MudGFyZ2V0 L3Jpc2N2L3J2di9iYXNlL3VzZXItMTAuYzogRGl0dG8uDQo+ID4gPiAgICAgICAgICogZ2NjLnRh cmdldC9yaXNjdi9ydnYvYmFzZS91c2VyLTEyLmM6IERpdHRvLg0KPiA+ID4gICAgICAgICAqIGdj Yy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdXNlci0xMy5jOiBEaXR0by4NCj4gPiA+ICAgICAgICAg KiBnY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3VzZXItMTQuYzogRGl0dG8uDQo+ID4gPiAgICAg ICAgICogZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS91c2VyLTE1LmM6IERpdHRvLg0KPiA+ID4g ICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdXNlci0yLmM6IERpdHRvLg0KPiA+ ID4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdXNlci0zLmM6IERpdHRvLg0K PiA+ID4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdXNlci01LmM6IERpdHRv Lg0KPiA+ID4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdXNlci02LmM6IERp dHRvLg0KPiA+ID4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdXNlci05LmM6 IERpdHRvLg0KPiA+ID4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0 X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTEwLmM6IE5ldyB0ZXN0Lg0KPiA+ID4gICAgICAg ICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50 cmluc2ljLTExLmM6IE5ldyB0ZXN0Lg0KPiA+ID4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3Yv cnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTEyLmM6IE5ldyB0ZXN0 Lg0KPiA+ID4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJp YnV0ZV92X3dpdGhfaW50cmluc2ljLTEzLmM6IE5ldyB0ZXN0Lg0KPiA+ID4gICAgICAgICAqIGdj Yy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2lj LTE0LmM6IE5ldyB0ZXN0Lg0KPiA+ID4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jh c2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTE1LmM6IE5ldyB0ZXN0Lg0KPiA+ ID4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92 X3dpdGhfaW50cmluc2ljLTE2LmM6IE5ldyB0ZXN0Lg0KPiA+ID4gICAgICAgICAqIGdjYy50YXJn ZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTE3LmM6 IE5ldyB0ZXN0Lg0KPiA+ID4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFy Z2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTE4LmM6IE5ldyB0ZXN0Lg0KPiA+ID4gICAg ICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhf aW50cmluc2ljLTE5LmM6IE5ldyB0ZXN0Lg0KPiA+ID4gICAgICAgICAqIGdjYy50YXJnZXQvcmlz Y3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTIwLmM6IE5ldyB0 ZXN0Lg0KPiA+ID4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0 dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTIxLmM6IE5ldyB0ZXN0Lg0KPiA+ID4gICAgICAgICAq IGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmlu c2ljLTIyLmM6IE5ldyB0ZXN0Lg0KPiA+ID4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2 L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTIzLmM6IE5ldyB0ZXN0Lg0K PiA+ID4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0 ZV92X3dpdGhfaW50cmluc2ljLTI0LmM6IE5ldyB0ZXN0Lg0KPiA+ID4gICAgICAgICAqIGdjYy50 YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTI1 LmM6IE5ldyB0ZXN0Lg0KPiA+ID4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2Uv dGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTI2LmM6IE5ldyB0ZXN0Lg0KPiA+ID4g ICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dp dGhfaW50cmluc2ljLTI3LmM6IE5ldyB0ZXN0Lg0KPiA+ID4gICAgICAgICAqIGdjYy50YXJnZXQv cmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTI4LmM6IE5l dyB0ZXN0Lg0KPiA+ID4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0 X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTI5LmM6IE5ldyB0ZXN0Lg0KPiA+ID4gICAgICAg ICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50 cmluc2ljLTMwLmM6IE5ldyB0ZXN0Lg0KPiA+ID4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3Yv cnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTMxLmM6IE5ldyB0ZXN0 Lg0KPiA+ID4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJp YnV0ZV92X3dpdGhfaW50cmluc2ljLTMyLmM6IE5ldyB0ZXN0Lg0KPiA+ID4gICAgICAgICAqIGdj Yy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2lj LTMzLmM6IE5ldyB0ZXN0Lg0KPiA+ID4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jh c2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTM0LmM6IE5ldyB0ZXN0Lg0KPiA+ ID4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92 X3dpdGhfaW50cmluc2ljLTM1LmM6IE5ldyB0ZXN0Lg0KPiA+ID4gICAgICAgICAqIGdjYy50YXJn ZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTM2LmM6 IE5ldyB0ZXN0Lg0KPiA+ID4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFy Z2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTM3LmM6IE5ldyB0ZXN0Lg0KPiA+ID4gICAg ICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhf aW50cmluc2ljLTM4LmM6IE5ldyB0ZXN0Lg0KPiA+ID4gICAgICAgICAqIGdjYy50YXJnZXQvcmlz Y3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTM5LmM6IE5ldyB0 ZXN0Lg0KPiA+ID4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0 dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTQwLmM6IE5ldyB0ZXN0Lg0KPiA+ID4gICAgICAgICAq IGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmlu c2ljLTQxLmM6IE5ldyB0ZXN0Lg0KPiA+ID4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2 L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTQyLmM6IE5ldyB0ZXN0Lg0K PiA+ID4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0 ZV92X3dpdGhfaW50cmluc2ljLTQzLmM6IE5ldyB0ZXN0Lg0KPiA+ID4gICAgICAgICAqIGdjYy50 YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTQ0 LmM6IE5ldyB0ZXN0Lg0KPiA+ID4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2Uv dGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTQ1LmM6IE5ldyB0ZXN0Lg0KPiA+ID4g ICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dp dGhfaW50cmluc2ljLTQ2LmM6IE5ldyB0ZXN0Lg0KPiA+ID4gICAgICAgICAqIGdjYy50YXJnZXQv cmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTQ3LmM6IE5l dyB0ZXN0Lg0KPiA+ID4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0 X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTQ4LmM6IE5ldyB0ZXN0Lg0KPiA+ID4gICAgICAg ICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50 cmluc2ljLTQ5LmM6IE5ldyB0ZXN0Lg0KPiA+ID4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3Yv cnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTUwLmM6IE5ldyB0ZXN0 Lg0KPiA+ID4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJp YnV0ZV92X3dpdGhfaW50cmluc2ljLTUxLmM6IE5ldyB0ZXN0Lg0KPiA+ID4gICAgICAgICAqIGdj Yy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2lj LTUyLmM6IE5ldyB0ZXN0Lg0KPiA+ID4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jh c2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTUzLmM6IE5ldyB0ZXN0Lg0KPiA+ ID4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92 X3dpdGhfaW50cmluc2ljLTkuYzogTmV3IHRlc3QuDQo+ID4gPg0KPiA+ID4gU2lnbmVkLW9mZi1i eTogUGFuIExpIDxwYW4yLmxpQGludGVsLmNvbT4NCj4gPiA+IC0tLQ0KPiA+ID4gIGdjYy9jb25m aWcvcmlzY3YvcmlzY3YtYy5jYyAgICAgICAgICAgICAgICAgICB8ICA5NCArKysrKy0NCj4gPiA+ ICBnY2MvY29uZmlnL3Jpc2N2L3Jpc2N2LXByb3Rvcy5oICAgICAgICAgICAgICAgfCAgIDIgKw0K PiA+ID4gIGdjYy9jb25maWcvcmlzY3YvcmlzY3YtdmVjdG9yLWJ1aWx0aW5zLmNjICAgICB8ICA1 MyArKystDQo+ID4gPiAgZ2NjL2NvbmZpZy9yaXNjdi9yaXNjdi5jYyAgICAgICAgICAgICAgICAg ICAgIHwgMTU3ICsrKysrKysrKy0NCj4gPiA+ICAuLi4vZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFz ZS9wcjEwOTQ3OS0xLmMgICAgfCAgMjkgKy0NCj4gPiA+ICAuLi4vZ2NjLnRhcmdldC9yaXNjdi9y dnYvYmFzZS9wcjEwOTQ3OS0yLmMgICAgfCAgMjkgKy0NCj4gPiA+ICAuLi4vZ2NjLnRhcmdldC9y aXNjdi9ydnYvYmFzZS9wcjEwOTQ3OS0zLmMgICAgfCAgNTAgKysrLQ0KPiA+ID4gIC4uLi9nY2Mu dGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3ByMTA5NDc5LTQuYyAgICB8ICA1MSArKystDQo+ID4gPiAg Li4uL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvcHIxMDk0NzktNS5jICAgIHwgIDM3ICsrLQ0K PiA+ID4gIC4uLi9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3ByMTA5NDc5LTYuYyAgICB8ICAz MyArKy0NCj4gPiA+ICAuLi4vdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTEwLmMg ICAgfCAgMTIgKw0KPiA+ID4gIC4uLi90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMt MTEuYyAgICB8ICAyNiArKw0KPiA+ID4gIC4uLi90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRy aW5zaWMtMTIuYyAgICB8ICAzMyArKysNCj4gPiA+ICAuLi4vdGFyZ2V0X2F0dHJpYnV0ZV92X3dp dGhfaW50cmluc2ljLTEzLmMgICAgfCAgMzMgKysrDQo+ID4gPiAgLi4uL3RhcmdldF9hdHRyaWJ1 dGVfdl93aXRoX2ludHJpbnNpYy0xNC5jICAgIHwgIDQwICsrKw0KPiA+ID4gIC4uLi90YXJnZXRf YXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMTUuYyAgICB8ICA0NyArKysNCj4gPiA+ICAuLi4v dGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTE2LmMgICAgfCAgMTIgKw0KPiA+ID4g IC4uLi90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMTcuYyAgICB8ICAxMyArDQo+ ID4gPiAgLi4uL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0xOC5jICAgIHwgIDEz ICsNCj4gPiA+ICAuLi4vdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTE5LmMgICAg fCAgMTMgKw0KPiA+ID4gIC4uLi90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMjAu YyAgICB8ICAxMyArDQo+ID4gPiAgLi4uL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNp Yy0yMS5jICAgIHwgIDEzICsNCj4gPiA+ICAuLi4vdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50 cmluc2ljLTIyLmMgICAgfCAgMTMgKw0KPiA+ID4gIC4uLi90YXJnZXRfYXR0cmlidXRlX3Zfd2l0 aF9pbnRyaW5zaWMtMjMuYyAgICB8ICAxMyArDQo+ID4gPiAgLi4uL3RhcmdldF9hdHRyaWJ1dGVf dl93aXRoX2ludHJpbnNpYy0yNC5jICAgIHwgIDEzICsNCj4gPiA+ICAuLi4vdGFyZ2V0X2F0dHJp YnV0ZV92X3dpdGhfaW50cmluc2ljLTI1LmMgICAgfCAgMTMgKw0KPiA+ID4gIC4uLi90YXJnZXRf YXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMjYuYyAgICB8ICAxMyArDQo+ID4gPiAgLi4uL3Rh cmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0yNy5jICAgIHwgIDEzICsNCj4gPiA+ICAu Li4vdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTI4LmMgICAgfCAgMTMgKw0KPiA+ ID4gIC4uLi90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMjkuYyAgICB8ICAxMyAr DQo+ID4gPiAgLi4uL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0zMC5jICAgIHwg IDEyICsNCj4gPiA+ICAuLi4vdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTMxLmMg ICAgfCAgMTIgKw0KPiA+ID4gIC4uLi90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMt MzIuYyAgICB8ICAxMiArDQo+ID4gPiAgLi4uL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJp bnNpYy0zMy5jICAgIHwgIDEyICsNCj4gPiA+ICAuLi4vdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhf aW50cmluc2ljLTM0LmMgICAgfCAgMTIgKw0KPiA+ID4gIC4uLi90YXJnZXRfYXR0cmlidXRlX3Zf d2l0aF9pbnRyaW5zaWMtMzUuYyAgICB8ICAxMiArDQo+ID4gPiAgLi4uL3RhcmdldF9hdHRyaWJ1 dGVfdl93aXRoX2ludHJpbnNpYy0zNi5jICAgIHwgIDEyICsNCj4gPiA+ICAuLi4vdGFyZ2V0X2F0 dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTM3LmMgICAgfCAgMTIgKw0KPiA+ID4gIC4uLi90YXJn ZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMzguYyAgICB8ICAxMiArDQo+ID4gPiAgLi4u L3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0zOS5jICAgIHwgIDEyICsNCj4gPiA+ ICAuLi4vdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTQwLmMgICAgfCAgMTIgKw0K PiA+ID4gIC4uLi90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtNDEuYyAgICB8ICAx MiArDQo+ID4gPiAgLi4uL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy00Mi5jICAg IHwgIDEyICsNCj4gPiA+ICAuLi4vdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTQz LmMgICAgfCAgMTIgKw0KPiA+ID4gIC4uLi90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5z aWMtNDQuYyAgICB8ICAxMiArDQo+ID4gPiAgLi4uL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2lu dHJpbnNpYy00NS5jICAgIHwgIDEyICsNCj4gPiA+ICAuLi4vdGFyZ2V0X2F0dHJpYnV0ZV92X3dp dGhfaW50cmluc2ljLTQ2LmMgICAgfCAgMTIgKw0KPiA+ID4gIC4uLi90YXJnZXRfYXR0cmlidXRl X3Zfd2l0aF9pbnRyaW5zaWMtNDcuYyAgICB8ICAxMiArDQo+ID4gPiAgLi4uL3RhcmdldF9hdHRy aWJ1dGVfdl93aXRoX2ludHJpbnNpYy00OC5jICAgIHwgIDEyICsNCj4gPiA+ICAuLi4vdGFyZ2V0 X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTQ5LmMgICAgfCAgMTIgKw0KPiA+ID4gIC4uLi90 YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtNTAuYyAgICB8ICAxMiArDQo+ID4gPiAg Li4uL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy01MS5jICAgIHwgIDEyICsNCj4g PiA+ICAuLi4vdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTUyLmMgICAgfCAgMTIg Kw0KPiA+ID4gIC4uLi90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtNTMuYyAgICB8 ICAxMiArDQo+ID4gPiAgLi4uL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy05LmMg ICAgIHwgIDEyICsNCj4gPiA+ICAuLi4vZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS91c2VyLTEw LmMgICAgICAgfCAgMzkgKystDQo+ID4gPiAgLi4uL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2Uv dXNlci0xMi5jICAgICAgIHwgMjc1ICsrKysrKysrKysrKy0tLS0tLQ0KPiA+ID4gIC4uLi9nY2Mu dGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3VzZXItMTMuYyAgICAgICB8IDE1NiArKysrKystLS0tDQo+ ID4gPiAgLi4uL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdXNlci0xNC5jICAgICAgIHwgMjU3 ICsrKysrKysrKystLS0tLS0NCj4gPiA+ICAuLi4vZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS91 c2VyLTE1LmMgICAgICAgfCAxMDYgKysrKy0tLQ0KPiA+ID4gIC4uLi9nY2MudGFyZ2V0L3Jpc2N2 L3J2di9iYXNlL3VzZXItMi5jICAgICAgICB8ICAzMyArKy0NCj4gPiA+ICAuLi4vZ2NjLnRhcmdl dC9yaXNjdi9ydnYvYmFzZS91c2VyLTMuYyAgICAgICAgfCAgMTggKy0NCj4gPiA+ICAuLi4vZ2Nj LnRhcmdldC9yaXNjdi9ydnYvYmFzZS91c2VyLTUuYyAgICAgICAgfCAgNzggKysrLS0NCj4gPiA+ ICAuLi4vZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS91c2VyLTYuYyAgICAgICAgfCAgNjYgKysr LS0NCj4gPiA+ICAuLi4vZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS91c2VyLTkuYyAgICAgICAg fCAgOTMgKysrKy0tDQo+ID4gPiAgNjUgZmlsZXMgY2hhbmdlZCwgMTg4NiBpbnNlcnRpb25zKCsp LCA0NDIgZGVsZXRpb25zKC0pDQo+ID4gPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGdjYy90ZXN0c3Vp dGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRy aW5zaWMtMTAuYw0KPiA+ID4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBnY2MvdGVzdHN1aXRlL2djYy50 YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTEx LmMNCj4gPiA+ICBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jp c2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0xMi5jDQo+ID4g PiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYv YmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMTMuYw0KPiA+ID4gIGNyZWF0 ZSBtb2RlIDEwMDY0NCBnY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFy Z2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTE0LmMNCj4gPiA+ICBjcmVhdGUgbW9kZSAx MDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRy aWJ1dGVfdl93aXRoX2ludHJpbnNpYy0xNS5jDQo+ID4gPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGdj Yy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zf d2l0aF9pbnRyaW5zaWMtMTYuYw0KPiA+ID4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBnY2MvdGVzdHN1 aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50 cmluc2ljLTE3LmMNCj4gPiA+ICBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nY2Mu dGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0x OC5jDQo+ID4gPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9y aXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMTkuYw0KPiA+ ID4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBnY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2 L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTIwLmMNCj4gPiA+ICBjcmVh dGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3Rh cmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0yMS5jDQo+ID4gPiAgY3JlYXRlIG1vZGUg MTAwNjQ0IGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0 cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMjIuYw0KPiA+ID4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBn Y2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92 X3dpdGhfaW50cmluc2ljLTIzLmMNCj4gPiA+ICBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3Rz dWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2lu dHJpbnNpYy0yNC5jDQo+ID4gPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGdjYy90ZXN0c3VpdGUvZ2Nj LnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMt MjUuYw0KPiA+ID4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBnY2MvdGVzdHN1aXRlL2djYy50YXJnZXQv cmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTI2LmMNCj4g PiA+ICBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2 di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0yNy5jDQo+ID4gPiAgY3Jl YXRlIG1vZGUgMTAwNjQ0IGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90 YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMjguYw0KPiA+ID4gIGNyZWF0ZSBtb2Rl IDEwMDY0NCBnY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0 dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTI5LmMNCj4gPiA+ICBjcmVhdGUgbW9kZSAxMDA2NDQg Z2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVf dl93aXRoX2ludHJpbnNpYy0zMC5jDQo+ID4gPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGdjYy90ZXN0 c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9p bnRyaW5zaWMtMzEuYw0KPiA+ID4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBnY2MvdGVzdHN1aXRlL2dj Yy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2lj LTMyLmMNCj4gPiA+ICBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0 L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0zMy5jDQo+ ID4gPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9y dnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMzQuYw0KPiA+ID4gIGNy ZWF0ZSBtb2RlIDEwMDY0NCBnY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2Uv dGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTM1LmMNCj4gPiA+ICBjcmVhdGUgbW9k ZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9h dHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0zNi5jDQo+ID4gPiAgY3JlYXRlIG1vZGUgMTAwNjQ0 IGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRl X3Zfd2l0aF9pbnRyaW5zaWMtMzcuYw0KPiA+ID4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBnY2MvdGVz dHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhf aW50cmluc2ljLTM4LmMNCj4gPiA+ICBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9n Y2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNp Yy0zOS5jDQo+ID4gPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdl dC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtNDAuYw0K PiA+ID4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBnY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3Yv cnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTQxLmMNCj4gPiA+ICBj cmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNl L3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy00Mi5jDQo+ID4gPiAgY3JlYXRlIG1v ZGUgMTAwNjQ0IGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRf YXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtNDMuYw0KPiA+ID4gIGNyZWF0ZSBtb2RlIDEwMDY0 NCBnY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0 ZV92X3dpdGhfaW50cmluc2ljLTQ0LmMNCj4gPiA+ICBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rl c3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRo X2ludHJpbnNpYy00NS5jDQo+ID4gPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGdjYy90ZXN0c3VpdGUv Z2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5z aWMtNDYuYw0KPiA+ID4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBnY2MvdGVzdHN1aXRlL2djYy50YXJn ZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTQ3LmMN Cj4gPiA+ICBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2 L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy00OC5jDQo+ID4gPiAg Y3JlYXRlIG1vZGUgMTAwNjQ0IGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFz ZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtNDkuYw0KPiA+ID4gIGNyZWF0ZSBt b2RlIDEwMDY0NCBnY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0 X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTUwLmMNCj4gPiA+ICBjcmVhdGUgbW9kZSAxMDA2 NDQgZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1 dGVfdl93aXRoX2ludHJpbnNpYy01MS5jDQo+ID4gPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGdjYy90 ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0 aF9pbnRyaW5zaWMtNTIuYw0KPiA+ID4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBnY2MvdGVzdHN1aXRl L2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmlu c2ljLTUzLmMNCj4gPiA+ICBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nY2MudGFy Z2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy05LmMN Cj4gPiA+DQo+ID4gPiBkaWZmIC0tZ2l0IGEvZ2NjL2NvbmZpZy9yaXNjdi9yaXNjdi1jLmNjIGIv Z2NjL2NvbmZpZy9yaXNjdi9yaXNjdi1jLmNjDQo+ID4gPiBpbmRleCAwMTMxNDAzNzQ2MS4uNDNj OGVlY2JiNmYgMTAwNjQ0DQo+ID4gPiAtLS0gYS9nY2MvY29uZmlnL3Jpc2N2L3Jpc2N2LWMuY2MN Cj4gPiA+ICsrKyBiL2djYy9jb25maWcvcmlzY3YvcmlzY3YtYy5jYw0KPiA+ID4gQEAgLTM0LDYg KzM0LDcyIEBAIGFsb25nIHdpdGggR0NDOyBzZWUgdGhlIGZpbGUgQ09QWUlORzMuICBJZiBub3Qg c2VlDQo+ID4gPg0KPiA+ID4gICNkZWZpbmUgYnVpbHRpbl9kZWZpbmUoVFhUKSBjcHBfZGVmaW5l IChwZmlsZSwgVFhUKQ0KPiA+ID4NCj4gPiA+ICtzdHJ1Y3QgcHJhZ21hX2ludHJpbnNpY19mbGFn cw0KPiA+ID4gK3sNCj4gPiA+ICsgIGludCBpbnRyaW5zaWNfdGFyZ2V0X2ZsYWdzOw0KPiA+ID4g Kw0KPiA+ID4gKyAgaW50IGludHJpbnNpY19yaXNjdl92ZWN0b3JfZWxlbl9mbGFnczsNCj4gPiA+ ICsgIGludCBpbnRyaW5zaWNfcmlzY3ZfenZsX2ZsYWdzOw0KPiA+ID4gKyAgaW50IGludHJpbnNp Y19yaXNjdl96dmJfc3ViZXh0Ow0KPiA+ID4gKyAgaW50IGludHJpbnNpY19yaXNjdl96dmtfc3Vi ZXh0Ow0KPiA+ID4gK307DQo+ID4gPiArDQo+ID4gPiArc3RhdGljIHZvaWQNCj4gPiA+ICtyaXNj dl9wcmFnbWFfaW50cmluc2ljX2ZsYWdzX3BvbGx1dGUgKHN0cnVjdCBwcmFnbWFfaW50cmluc2lj X2ZsYWdzICpmbGFncykNCj4gPiA+ICt7DQo+ID4gPiArICBmbGFncy0+aW50cmluc2ljX3Rhcmdl dF9mbGFncyA9IHRhcmdldF9mbGFnczsNCj4gPiA+ICsgIGZsYWdzLT5pbnRyaW5zaWNfcmlzY3Zf dmVjdG9yX2VsZW5fZmxhZ3MgPSByaXNjdl92ZWN0b3JfZWxlbl9mbGFnczsNCj4gPiA+ICsgIGZs YWdzLT5pbnRyaW5zaWNfcmlzY3ZfenZsX2ZsYWdzID0gcmlzY3ZfenZsX2ZsYWdzOw0KPiA+ID4g KyAgZmxhZ3MtPmludHJpbnNpY19yaXNjdl96dmJfc3ViZXh0ID0gcmlzY3ZfenZiX3N1YmV4dDsN Cj4gPiA+ICsgIGZsYWdzLT5pbnRyaW5zaWNfcmlzY3ZfenZrX3N1YmV4dCA9IHJpc2N2X3p2a19z dWJleHQ7DQo+ID4gPiArDQo+ID4gPiArICB0YXJnZXRfZmxhZ3MgPSB0YXJnZXRfZmxhZ3MNCj4g PiA+ICsgICAgfCBNQVNLX1ZFQ1RPUjsNCj4gPiA+ICsNCj4gPiA+ICsgIHJpc2N2X3p2bF9mbGFn cyA9IHJpc2N2X3p2bF9mbGFncw0KPiA+ID4gKyAgICB8IE1BU0tfWlZMMzJCDQo+ID4gPiArICAg IHwgTUFTS19aVkw2NEINCj4gPiA+ICsgICAgfCBNQVNLX1pWTDEyOEI7DQo+ID4gPiArDQo+ID4g PiArICByaXNjdl92ZWN0b3JfZWxlbl9mbGFncyA9IHJpc2N2X3ZlY3Rvcl9lbGVuX2ZsYWdzDQo+ ID4gPiArICAgIHwgTUFTS19WRUNUT1JfRUxFTl8zMg0KPiA+ID4gKyAgICB8IE1BU0tfVkVDVE9S X0VMRU5fNjQNCj4gPiA+ICsgICAgfCBNQVNLX1ZFQ1RPUl9FTEVOX0ZQXzE2DQo+ID4gPiArICAg IHwgTUFTS19WRUNUT1JfRUxFTl9GUF8zMg0KPiA+ID4gKyAgICB8IE1BU0tfVkVDVE9SX0VMRU5f RlBfNjQ7DQo+ID4gPiArDQo+ID4gPiArICByaXNjdl96dmJfc3ViZXh0ID0gcmlzY3ZfenZiX3N1 YmV4dA0KPiA+ID4gKyAgICB8IE1BU0tfWlZCQg0KPiA+ID4gKyAgICB8IE1BU0tfWlZCQw0KPiA+ ID4gKyAgICB8IE1BU0tfWlZLQjsNCj4gPiA+ICsNCj4gPiA+ICsgIHJpc2N2X3p2a19zdWJleHQg PSByaXNjdl96dmtfc3ViZXh0DQo+ID4gPiArICAgIHwgTUFTS19aVktHDQo+ID4gPiArICAgIHwg TUFTS19aVktORUQNCj4gPiA+ICsgICAgfCBNQVNLX1pWS05IQQ0KPiA+ID4gKyAgICB8IE1BU0tf WlZLTkhCDQo+ID4gPiArICAgIHwgTUFTS19aVktTRUQNCj4gPiA+ICsgICAgfCBNQVNLX1pWS1NI DQo+ID4gPiArICAgIHwgTUFTS19aVktODQo+ID4gPiArICAgIHwgTUFTS19aVktOQw0KPiA+ID4g KyAgICB8IE1BU0tfWlZLTkcNCj4gPiA+ICsgICAgfCBNQVNLX1pWS1MNCj4gPiA+ICsgICAgfCBN QVNLX1pWS1NDDQo+ID4gPiArICAgIHwgTUFTS19aVktTRw0KPiA+ID4gKyAgICB8IE1BU0tfWlZL VDsNCj4gPiA+ICt9DQo+ID4gPiArDQo+ID4gPiArc3RhdGljIHZvaWQNCj4gPiA+ICtyaXNjdl9w cmFnbWFfaW50cmluc2ljX2ZsYWdzX3Jlc3RvcmUgKHN0cnVjdCBwcmFnbWFfaW50cmluc2ljX2Zs YWdzICpmbGFncykNCj4gPiA+ICt7DQo+ID4gPiArICB0YXJnZXRfZmxhZ3MgPSBmbGFncy0+aW50 cmluc2ljX3RhcmdldF9mbGFnczsNCj4gPiA+ICsNCj4gPiA+ICsgIHJpc2N2X3ZlY3Rvcl9lbGVu X2ZsYWdzID0gZmxhZ3MtPmludHJpbnNpY19yaXNjdl92ZWN0b3JfZWxlbl9mbGFnczsNCj4gPiA+ ICsgIHJpc2N2X3p2bF9mbGFncyA9IGZsYWdzLT5pbnRyaW5zaWNfcmlzY3ZfenZsX2ZsYWdzOw0K PiA+ID4gKyAgcmlzY3ZfenZiX3N1YmV4dCA9IGZsYWdzLT5pbnRyaW5zaWNfcmlzY3ZfenZiX3N1 YmV4dDsNCj4gPiA+ICsgIHJpc2N2X3p2a19zdWJleHQgPSBmbGFncy0+aW50cmluc2ljX3Jpc2N2 X3p2a19zdWJleHQ7DQo+ID4gPiArfQ0KPiA+ID4gKw0KPiA+ID4gIHN0YXRpYyBpbnQNCj4gPiA+ ICByaXNjdl9leHRfdmVyc2lvbl92YWx1ZSAodW5zaWduZWQgbWFqb3IsIHVuc2lnbmVkIG1pbm9y KQ0KPiA+ID4gIHsNCj4gPiA+IEBAIC0yMDEsMjAgKzI2NywyMCBAQCByaXNjdl9wcmFnbWFfaW50 cmluc2ljIChjcHBfcmVhZGVyICopDQo+ID4gPiAgICBpZiAoc3RyY21wIChuYW1lLCAidmVjdG9y IikgPT0gMA0KPiA+ID4gICAgICAgIHx8IHN0cmNtcCAobmFtZSwgInh0aGVhZHZlY3RvciIpID09 IDApDQo+ID4gPiAgICAgIHsNCj4gPiA+IC0gICAgICBpZiAoVEFSR0VUX1ZFQ1RPUikNCj4gPiA+ IC0gICAgICAgcmlzY3ZfdmVjdG9yOjpoYW5kbGVfcHJhZ21hX3ZlY3RvciAoKTsNCj4gPiA+IC0g ICAgICBlbHNlIC8qIEluZGljYXRlcyByaXNjdl92ZWN0b3IuaCBpcyBpbmNsdWRlZCBidXQgdiBp cyBtaXNzaW5nIGluIGFyY2ggICovDQo+ID4gPiAtICAgICAgIHsNCj4gPiA+IC0gICAgICAgICAv KiBUbyBtYWtlIHRoZSB0aGUgcnZ2IHR5cGVzIGFuZCBpbnRyaW5zaWMgQVBJIGF2YWlsYWJsZSBm b3IgdGhlDQo+ID4gPiAtICAgICAgICAgICAgdGFyZ2V0KCJhcmNoPSt2IikgYXR0cmlidXRlLCAg d2UgbmVlZCB0byB0ZW1wb3JhbGx5IGVuYWJsZSB0aGUNCj4gPiA+IC0gICAgICAgICAgICBUQVJH RVRfVkVDVE9SLCBhbmQgZGlzYWJsZSBpdCBhZnRlciBhbGwgaW5pdGlhbGl6ZWQuICAqLw0KPiA+ ID4gLSAgICAgICAgIHRhcmdldF9mbGFncyB8PSBNQVNLX1ZFQ1RPUjsNCj4gPiA+IC0NCj4gPiA+ IC0gICAgICAgICByaXNjdl92ZWN0b3I6OmluaXRfYnVpbHRpbnMgKCk7DQo+ID4gPiAtICAgICAg ICAgcmlzY3ZfdmVjdG9yOjpoYW5kbGVfcHJhZ21hX3ZlY3RvciAoKTsNCj4gPiA+IC0NCj4gPiA+ IC0gICAgICAgICB0YXJnZXRfZmxhZ3MgJj0gfk1BU0tfVkVDVE9SOw0KPiA+ID4gLSAgICAgICB9 DQo+ID4gPiArICAgICAgc3RydWN0IHByYWdtYV9pbnRyaW5zaWNfZmxhZ3MgYmFja3VwX2ZsYWdz Ow0KPiA+ID4gKw0KPiA+ID4gKyAgICAgIHJpc2N2X3ByYWdtYV9pbnRyaW5zaWNfZmxhZ3NfcG9s bHV0ZSAoJmJhY2t1cF9mbGFncyk7DQo+ID4gPiArDQo+ID4gPiArICAgICAgcmlzY3Zfb3B0aW9u X292ZXJyaWRlICgpOw0KPiA+ID4gKyAgICAgIGluaXRfYWRqdXN0X21hY2hpbmVfbW9kZXMgKCk7 DQo+ID4gPiArICAgICAgcmlzY3ZfdmVjdG9yOjpyZWluaXRfYnVpbHRpbnMgKCk7DQo+ID4gPiAr ICAgICAgcmlzY3ZfdmVjdG9yOjpoYW5kbGVfcHJhZ21hX3ZlY3RvciAoKTsNCj4gPiA+ICsNCj4g PiA+ICsgICAgICByaXNjdl9wcmFnbWFfaW50cmluc2ljX2ZsYWdzX3Jlc3RvcmUgKCZiYWNrdXBf ZmxhZ3MpOw0KPiA+ID4gKw0KPiA+ID4gKyAgICAgIC8qIFJlLWluaXRpYWxpemUgYWZ0ZXIgdGhl IGZsYWdzIGFyZSByZXN0b3JlZC4gICovDQo+ID4gPiArICAgICAgcmlzY3Zfb3B0aW9uX292ZXJy aWRlICgpOw0KPiA+ID4gKyAgICAgIGluaXRfYWRqdXN0X21hY2hpbmVfbW9kZXMgKCk7DQo+ID4g PiAgICAgIH0NCj4gPiA+ICAgIGVsc2UNCj4gPiA+ICAgICAgZXJyb3IgKCJ1bmtub3duICU8I3By YWdtYSByaXNjdiBpbnRyaW5zaWMlPiBvcHRpb24gJXFzIiwgbmFtZSk7DQo+ID4gPiBkaWZmIC0t Z2l0IGEvZ2NjL2NvbmZpZy9yaXNjdi9yaXNjdi1wcm90b3MuaCBiL2djYy9jb25maWcvcmlzY3Yv cmlzY3YtcHJvdG9zLmgNCj4gPiA+IGluZGV4IGI4NzM1NTkzODA1Li40Njc3ZDljNDZjZCAxMDA2 NDQNCj4gPiA+IC0tLSBhL2djYy9jb25maWcvcmlzY3YvcmlzY3YtcHJvdG9zLmgNCj4gPiA+ICsr KyBiL2djYy9jb25maWcvcmlzY3YvcmlzY3YtcHJvdG9zLmgNCj4gPiA+IEBAIC01NDYsNiArNTQ2 LDcgQEAgZW51bSBhdmxfdHlwZQ0KPiA+ID4gIH07DQo+ID4gPiAgLyogUm91dGluZXMgaW1wbGVt ZW50ZWQgaW4gcmlzY3YtdmVjdG9yLWJ1aWx0aW5zLmNjLiAgKi8NCj4gPiA+ICB2b2lkIGluaXRf YnVpbHRpbnMgKHZvaWQpOw0KPiA+ID4gK3ZvaWQgcmVpbml0X2J1aWx0aW5zICh2b2lkKTsNCj4g PiA+ICBjb25zdCBjaGFyICptYW5nbGVfYnVpbHRpbl90eXBlIChjb25zdF90cmVlKTsNCj4gPiA+ ICB0cmVlIGxvb2t1cF92ZWN0b3JfdHlwZV9hdHRyaWJ1dGUgKGNvbnN0X3RyZWUpOw0KPiA+ID4g IGJvb2wgYnVpbHRpbl90eXBlX3AgKGNvbnN0X3RyZWUpOw0KPiA+ID4gQEAgLTc2Miw2ICs3NjMs NyBAQCBleHRlcm4gYm9vbA0KPiA+ID4gIHJpc2N2X29wdGlvbl92YWxpZF9hdHRyaWJ1dGVfcCAo dHJlZSwgdHJlZSwgdHJlZSwgaW50KTsNCj4gPiA+ICBleHRlcm4gdm9pZA0KPiA+ID4gIHJpc2N2 X292ZXJyaWRlX29wdGlvbnNfaW50ZXJuYWwgKHN0cnVjdCBnY2Nfb3B0aW9ucyAqKTsNCj4gPiA+ ICtleHRlcm4gdm9pZCByaXNjdl9vcHRpb25fb3ZlcnJpZGUgKHZvaWQpOw0KPiA+ID4NCj4gPiA+ ICBzdHJ1Y3QgcmlzY3ZfdHVuZV9wYXJhbTsNCj4gPiA+ICAvKiBJbmZvcm1hdGlvbiBhYm91dCBv bmUgbWljcm8tYXJjaCB3ZSBrbm93IGFib3V0LiAgKi8NCj4gPiA+IGRpZmYgLS1naXQgYS9nY2Mv Y29uZmlnL3Jpc2N2L3Jpc2N2LXZlY3Rvci1idWlsdGlucy5jYyBiL2djYy9jb25maWcvcmlzY3Yv cmlzY3YtdmVjdG9yLWJ1aWx0aW5zLmNjDQo+ID4gPiBpbmRleCBkYjkyNDZlZWQyZC4uNTNjY2Vh Nzg4OWUgMTAwNjQ0DQo+ID4gPiAtLS0gYS9nY2MvY29uZmlnL3Jpc2N2L3Jpc2N2LXZlY3Rvci1i dWlsdGlucy5jYw0KPiA+ID4gKysrIGIvZ2NjL2NvbmZpZy9yaXNjdi9yaXNjdi12ZWN0b3ItYnVp bHRpbnMuY2MNCj4gPiA+IEBAIC0zMTIzLDYgKzMxMjMsMzYgQEAgcmVnaXN0ZXJfYnVpbHRpbl90 eXBlcyAoKQ0KPiA+ID4gICNpbmNsdWRlICJyaXNjdi12ZWN0b3ItYnVpbHRpbnMuZGVmIg0KPiA+ ID4gIH0NCj4gPiA+DQo+ID4gPiArLyogU2ltaWxhciBhcyByZWdpc3Rlcl9idWlsdGluX3R5cGVz IGJ1dCBwZXJmb3JtIHRoZSByZWdpc3RyYXRpb24gaWYgYW5kDQo+ID4gPiArICAgb25seSBpZiB0 aGUgZWxlbWVudCBvZiBhYmlfdmVjdG9yX3R5cGUgaXMgTlVMTF9UUkVFLiAgKi8NCj4gPiA+ICtz dGF0aWMgdm9pZA0KPiA+ID4gK3JlZ2lzdGVyX2J1aWx0aW5fdHlwZXNfb25fbnVsbCAoKQ0KPiA+ ID4gK3sNCj4gPiA+ICsgIC8qIEdldCB0eXBlIG5vZGUgZnJvbSBnZXRfdHlwZW5vZGVfZnJvbV9u YW1lIHRvIHByZXZlbnQgd2UgaGF2ZSBkaWZmZXJlbnQgdHlwZQ0KPiA+ID4gKyAgICAgbm9kZSBk ZWZpbmUgaW4gZGlmZmVyZW50IHRhcmdldCBsaWJyYXJpZXMsIGUuZy4gaW50MzJfdCBkZWZpbmVk IGFzDQo+ID4gPiArICAgICBgbG9uZ2AgaW4gUlYzMi9uZXdsaWItc3RkaW50LCBidXQgYGludGAg Zm9yIFJWMzIvZ2xpYmMtc3RkaW50LmguDQo+ID4gPiArICAgICBOT1RFOiB1aW50WzE2fDMyfDY0 XV90eXBlX25vZGUgYWxyZWFkeSBkZWZpbmVkIGluIHRyZWUuaC4gICovDQo+ID4gPiArICB0cmVl IGludDhfdHlwZV9ub2RlID0gZ2V0X3R5cGVub2RlX2Zyb21fbmFtZSAoSU5UOF9UWVBFKTsNCj4g PiA+ICsgIHRyZWUgdWludDhfdHlwZV9ub2RlID0gZ2V0X3R5cGVub2RlX2Zyb21fbmFtZSAoVUlO VDhfVFlQRSk7DQo+ID4gPiArICB0cmVlIGludDE2X3R5cGVfbm9kZSA9IGdldF90eXBlbm9kZV9m cm9tX25hbWUgKElOVDE2X1RZUEUpOw0KPiA+ID4gKyAgdHJlZSBpbnQzMl90eXBlX25vZGUgPSBn ZXRfdHlwZW5vZGVfZnJvbV9uYW1lIChJTlQzMl9UWVBFKTsNCj4gPiA+ICsgIHRyZWUgaW50NjRf dHlwZV9ub2RlID0gZ2V0X3R5cGVub2RlX2Zyb21fbmFtZSAoSU5UNjRfVFlQRSk7DQo+ID4gPiAr DQo+ID4gPiArICBtYWNoaW5lX21vZGUgbW9kZTsNCj4gPiA+ICsjZGVmaW5lIERFRl9SVlZfVFlQ RShOQU1FLCBOQ0hBUlMsIEFCSV9OQU1FLCBTQ0FMQVJfVFlQRSwgVkVDVE9SX01PREUsICAgICAg ICAgXA0KPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgQVJHUy4uLikgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwNCj4gPiA+ICsgIG1vZGUgPSBWRUNU T1JfTU9ERSMjbW9kZTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgXA0KPiA+ID4gKyAgaWYgKGFiaV92ZWN0b3JfdHlwZXNbVkVDVE9SX1RZUEVfIyNO QU1FXSA9PSBOVUxMX1RSRUUpICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gPiArICAgIHJl Z2lzdGVyX2J1aWx0aW5fdHlwZSAoVkVDVE9SX1RZUEVfIyNOQU1FLCBTQ0FMQVJfVFlQRSMjX3R5 cGVfbm9kZSwgbW9kZSk7DQo+ID4gPiArDQo+ID4gPiArI2RlZmluZSBERUZfUlZWX1RVUExFX1RZ UEUoTkFNRSwgTkNIQVJTLCBBQklfTkFNRSwgU1VCUEFSVF9UWVBFLCBTQ0FMQVJfVFlQRSwgIFwN Cj4gPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgIE5GLCBWRUNUT1JfU1VGRklYKSAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gPiArICBpZiAoYWJpX3ZlY3Rvcl90 eXBlc1tWRUNUT1JfVFlQRV8jI05BTUVdID09IE5VTExfVFJFRSkgICAgICAgICAgICAgICAgICAg ICAgIFwNCj4gPiA+ICsgICAgcmVnaXN0ZXJfdHVwbGVfdHlwZSAoVkVDVE9SX1RZUEVfIyNOQU1F LCBWRUNUT1JfVFlQRV8jI1NVQlBBUlRfVFlQRSwgICAgICAgXA0KPiA+ID4gKyAgICAgICAgICAg ICAgICAgICAgICAgIFNDQUxBUl9UWVBFIyNfdHlwZV9ub2RlLCBORik7DQo+ID4gPiArI2luY2x1 ZGUgInJpc2N2LXZlY3Rvci1idWlsdGlucy5kZWYiDQo+ID4gPiArfQ0KPiA+ID4gKw0KPiA+ID4g IC8qIFJlZ2lzdGVyIHZlY3RvciB0eXBlIFRZUEUgdW5kZXIgaXRzIHJpc3ZfdmVjdG9yLmggbmFt ZS4gICovDQo+ID4gPiAgc3RhdGljIHZvaWQNCj4gPiA+ICByZWdpc3Rlcl92ZWN0b3JfdHlwZSAo dmVjdG9yX3R5cGVfaW5kZXggdHlwZSkNCj4gPiA+IEBAIC00NDE5LDYgKzQ0NDksMjIgQEAgaW5p dF9idWlsdGlucyAoKQ0KPiA+ID4gICAgICBoYW5kbGVfcHJhZ21hX3ZlY3RvciAoKTsNCj4gPiA+ ICB9DQo+ID4gPg0KPiA+ID4gKy8qIFJlaW5pdGlhbGl6ZSBidWlsdGlucyBzaW1pbGFyIHRvIGlu aXRfYnVpbHRpbnMsICBidXQgb25seSB0aGUgbnVsbA0KPiA+ID4gKyAgIGJ1aWx0aW4gdHlwZXMg d2lsbCBiZSByZWdpc3RlcmVkLiAgKi8NCj4gPiA+ICt2b2lkDQo+ID4gPiArcmVpbml0X2J1aWx0 aW5zICgpDQo+ID4gPiArew0KPiA+ID4gKyAgcnZ2X3N3aXRjaGVyIHJ2djsNCj4gPiA+ICsNCj4g PiA+ICsgIGlmICghVEFSR0VUX1ZFQ1RPUikNCj4gPiA+ICsgICAgcmV0dXJuOw0KPiA+ID4gKw0K PiA+ID4gKyAgcmVnaXN0ZXJfYnVpbHRpbl90eXBlc19vbl9udWxsICgpOw0KPiA+ID4gKw0KPiA+ ID4gKyAgaWYgKGluX2x0b19wKQ0KPiA+ID4gKyAgICBoYW5kbGVfcHJhZ21hX3ZlY3RvciAoKTsN Cj4gPiA+ICt9DQo+ID4gPiArDQo+ID4gPiAgLyogSW1wbGVtZW50IFRBUkdFVF9WRVJJRllfVFlQ RV9DT05URVhUIGZvciBSVlYgdHlwZXMuICAqLw0KPiA+ID4gIGJvb2wNCj4gPiA+ICB2ZXJpZnlf dHlwZV9jb250ZXh0IChsb2NhdGlvbl90IGxvYywgdHlwZV9jb250ZXh0X2tpbmQgY29udGV4dCwg Y29uc3RfdHJlZSB0eXBlLA0KPiA+ID4gQEAgLTQ1ODgsOCArNDYzNCwxMSBAQCBleHBhbmRfYnVp bHRpbiAodW5zaWduZWQgaW50IGNvZGUsIHRyZWUgZXhwLCBydHggdGFyZ2V0KQ0KPiA+ID4gICAg cmVnaXN0ZXJlZF9mdW5jdGlvbiAmcmZuID0gKigqcmVnaXN0ZXJlZF9mdW5jdGlvbnMpW2NvZGVd Ow0KPiA+ID4NCj4gPiA+ICAgIGlmICghVEFSR0VUX1ZFQ1RPUikNCj4gPiA+IC0gICAgZXJyb3Jf YXQgKEVYUFJfTE9DQVRJT04gKGV4cCksDQo+ID4gPiAtICAgICAgICAgICAgICJidWlsdC1pbiBm dW5jdGlvbiAlcUUgcmVxdWlyZXMgdGhlIFYgSVNBIGV4dGVuc2lvbiIsIGV4cCk7DQo+ID4gPiAr ICAgIHsNCj4gPiA+ICsgICAgICBlcnJvcl9hdCAoRVhQUl9MT0NBVElPTiAoZXhwKSwNCj4gPiA+ ICsgICAgICAgICAgICAgICAiYnVpbHQtaW4gZnVuY3Rpb24gJXFFIHJlcXVpcmVzIHRoZSBWIElT QSBleHRlbnNpb24iLCBleHApOw0KPiA+ID4gKyAgICAgIHJldHVybiB0YXJnZXQ7DQo+ID4gPiAr ICAgIH0NCj4gPiA+DQo+ID4gPiAgICByZXR1cm4gZnVuY3Rpb25fZXhwYW5kZXIgKHJmbi5pbnN0 YW5jZSwgcmZuLmRlY2wsIGV4cCwgdGFyZ2V0KS5leHBhbmQgKCk7DQo+ID4gPiAgfQ0KPiA+ID4g ZGlmZiAtLWdpdCBhL2djYy9jb25maWcvcmlzY3YvcmlzY3YuY2MgYi9nY2MvY29uZmlnL3Jpc2N2 L3Jpc2N2LmNjDQo+ID4gPiBpbmRleCBmZTk5NzZiZmZmZS4uMmE3MWJhZGZkYzkgMTAwNjQ0DQo+ ID4gPiAtLS0gYS9nY2MvY29uZmlnL3Jpc2N2L3Jpc2N2LmNjDQo+ID4gPiArKysgYi9nY2MvY29u ZmlnL3Jpc2N2L3Jpc2N2LmNjDQo+ID4gPiBAQCAtNTQ1OSw2ICs1NDU5LDE1MiBAQCByaXNjdl92 X2FiaSAoKQ0KPiA+ID4gICAgcmV0dXJuIHZfYWJpOw0KPiA+ID4gIH0NCj4gPiA+DQo+ID4gPiAr c3RhdGljIGJvb2wNCj4gPiA+ICtyaXNjdl92ZWN0b3JfaW50X3R5cGVfcCAoY29uc3RfdHJlZSB0 eXBlKQ0KPiA+ID4gK3sNCj4gPiA+ICsgIG1hY2hpbmVfbW9kZSBtb2RlID0gVFlQRV9NT0RFICh0 eXBlKTsNCj4gPiA+ICsNCj4gPiA+ICsgIGlmIChWRUNUT1JfTU9ERV9QIChtb2RlKSkNCj4gPiA+ ICsgICAgcmV0dXJuIElOVEVHUkFMX01PREVfUCAoR0VUX01PREVfSU5ORVIgKG1vZGUpKTsNCj4g PiA+ICsNCj4gPiA+ICsgIGNvbnN0IGNoYXIgKm5hbWUgPSBJREVOVElGSUVSX1BPSU5URVIgKERF Q0xfTkFNRSAoVFlQRV9OQU1FICh0eXBlKSkpOw0KPiA+ID4gKyAgcmV0dXJuIHN0cnN0ciAobmFt ZSwgImludCIpICE9IE5VTEwgfHwgc3Ryc3RyIChuYW1lLCAidWludCIpICE9IE5VTEw7DQo+ID4g PiArfQ0KPiA+ID4gKw0KPiA+ID4gK3N0YXRpYyBib29sDQo+ID4gPiArcmlzY3ZfdmVjdG9yX2Zs b2F0X3R5cGVfcCAoY29uc3RfdHJlZSB0eXBlKQ0KPiA+ID4gK3sNCj4gPiA+ICsgIG1hY2hpbmVf bW9kZSBtb2RlID0gVFlQRV9NT0RFICh0eXBlKTsNCj4gPiA+ICsNCj4gPiA+ICsgIGlmIChWRUNU T1JfTU9ERV9QIChtb2RlKSkNCj4gPiA+ICsgICAgcmV0dXJuIEZMT0FUX01PREVfUCAoR0VUX01P REVfSU5ORVIgKG1vZGUpKTsNCj4gPiA+ICsNCj4gPiA+ICsgIGNvbnN0IGNoYXIgKm5hbWUgPSBJ REVOVElGSUVSX1BPSU5URVIgKERFQ0xfTkFNRSAoVFlQRV9OQU1FICh0eXBlKSkpOw0KPiA+ID4g KyAgcmV0dXJuIHN0cnN0ciAobmFtZSwgInZmbG9hdCIpICE9IE5VTEw7DQo+ID4gPiArfQ0KPiA+ ID4gKw0KPiA+ID4gK3N0YXRpYyB1bnNpZ25lZA0KPiA+ID4gK3Jpc2N2X3ZlY3Rvcl9lbGVtZW50 X2JpdHNpemUgKGNvbnN0X3RyZWUgdHlwZSkNCj4gPiA+ICt7DQo+ID4gPiArICBtYWNoaW5lX21v ZGUgbW9kZSA9IFRZUEVfTU9ERSAodHlwZSk7DQo+ID4gPiArDQo+ID4gPiArICBpZiAoVkVDVE9S X01PREVfUCAobW9kZSkpDQo+ID4gPiArICAgIHJldHVybiBHRVRfTU9ERV9CSVRTSVpFIChHRVRf TU9ERV9JTk5FUiAobW9kZSkpOw0KPiA+ID4gKw0KPiA+ID4gKyAgY29uc3QgY2hhciAqbmFtZSA9 IElERU5USUZJRVJfUE9JTlRFUiAoREVDTF9OQU1FIChUWVBFX05BTUUgKHR5cGUpKSk7DQo+ID4g PiArDQo+ID4gPiArICBpZiAoc3Ryc3RyIChuYW1lLCAiYm9vbCIpICE9IE5VTEwpDQo+ID4gPiAr ICAgIHJldHVybiAxOw0KPiA+ID4gKyAgZWxzZSBpZiAoc3Ryc3RyIChuYW1lLCAiaW50OCIpICE9 IE5VTEwpDQo+ID4gPiArICAgIHJldHVybiA4Ow0KPiA+ID4gKyAgZWxzZSBpZiAoc3Ryc3RyIChu YW1lLCAiaW50MTYiKSAhPSBOVUxMIHx8IHN0cnN0ciAobmFtZSwgImZsb2F0MTYiKSAhPSBOVUxM KQ0KPiA+ID4gKyAgICByZXR1cm4gMTY7DQo+ID4gPiArICBlbHNlIGlmIChzdHJzdHIgKG5hbWUs ICJpbnQzMiIpICE9IE5VTEwgfHwgc3Ryc3RyIChuYW1lLCAiZmxvYXQzMiIpICE9IE5VTEwpDQo+ ID4gPiArICAgIHJldHVybiAzMjsNCj4gPiA+ICsgIGVsc2UgaWYgKHN0cnN0ciAobmFtZSwgImlu dDY0IikgIT0gTlVMTCB8fCBzdHJzdHIgKG5hbWUsICJmbG9hdDY0IikgIT0gTlVMTCkNCj4gPiA+ ICsgICAgcmV0dXJuIDY0Ow0KPiA+ID4gKw0KPiA+ID4gKyAgZ2NjX3VucmVhY2hhYmxlICgpOw0K PiA+ID4gK30NCj4gPiA+ICsNCj4gPiA+ICtzdGF0aWMgdW5zaWduZWQNCj4gPiA+ICtyaXNjdl92 ZWN0b3JfcmVxdWlyZWRfbWluX3ZsZW4gKGNvbnN0X3RyZWUgdHlwZSkNCj4gPiA+ICt7DQo+ID4g PiArICBtYWNoaW5lX21vZGUgbW9kZSA9IFRZUEVfTU9ERSAodHlwZSk7DQo+ID4gPiArDQo+ID4g PiArICBpZiAocmlzY3Zfdl9leHRfbW9kZV9wIChtb2RlKSkNCj4gPiA+ICsgICAgcmV0dXJuIFRB UkdFVF9NSU5fVkxFTjsNCj4gPiA+ICsNCj4gPiA+ICsgIHVuc2lnbmVkIGVsZW1lbnRfYml0c2l6 ZSA9IHJpc2N2X3ZlY3Rvcl9lbGVtZW50X2JpdHNpemUgKHR5cGUpOw0KPiA+ID4gKyAgY29uc3Qg Y2hhciAqbmFtZSA9IElERU5USUZJRVJfUE9JTlRFUiAoREVDTF9OQU1FIChUWVBFX05BTUUgKHR5 cGUpKSk7DQo+ID4gPiArDQo+ID4gPiArICBpZiAoc3Ryc3RyIChuYW1lLCAiYm9vbDY0IikgIT0g TlVMTCkNCj4gPiA+ICsgICAgcmV0dXJuIGVsZW1lbnRfYml0c2l6ZSAqIDY0Ow0KPiA+ID4gKyAg ZWxzZSBpZiAoc3Ryc3RyIChuYW1lLCAiYm9vbDMyIikgIT0gTlVMTCkNCj4gPiA+ICsgICAgcmV0 dXJuIGVsZW1lbnRfYml0c2l6ZSAqIDMyOw0KPiA+ID4gKyAgZWxzZSBpZiAoc3Ryc3RyIChuYW1l LCAiYm9vbDE2IikgIT0gTlVMTCkNCj4gPiA+ICsgICAgcmV0dXJuIGVsZW1lbnRfYml0c2l6ZSAq IDE2Ow0KPiA+ID4gKyAgZWxzZSBpZiAoc3Ryc3RyIChuYW1lLCAiYm9vbDgiKSAhPSBOVUxMKQ0K PiA+ID4gKyAgICByZXR1cm4gZWxlbWVudF9iaXRzaXplICogODsNCj4gPiA+ICsgIGVsc2UgaWYg KHN0cnN0ciAobmFtZSwgImJvb2w0IikgIT0gTlVMTCkNCj4gPiA+ICsgICAgcmV0dXJuIGVsZW1l bnRfYml0c2l6ZSAqIDQ7DQo+ID4gPiArICBlbHNlIGlmIChzdHJzdHIgKG5hbWUsICJib29sMiIp ICE9IE5VTEwpDQo+ID4gPiArICAgIHJldHVybiBlbGVtZW50X2JpdHNpemUgKiAyOw0KPiA+ID4g Kw0KPiA+ID4gKyAgaWYgKHN0cnN0ciAobmFtZSwgIm1mOCIpICE9IE5VTEwpDQo+ID4gPiArICAg IHJldHVybiBlbGVtZW50X2JpdHNpemUgKiA4Ow0KPiA+ID4gKyAgZWxzZSBpZiAoc3Ryc3RyIChu YW1lLCAibWY0IikgIT0gTlVMTCkNCj4gPiA+ICsgICAgcmV0dXJuIGVsZW1lbnRfYml0c2l6ZSAq IDQ7DQo+ID4gPiArICBlbHNlIGlmIChzdHJzdHIgKG5hbWUsICJtZjIiKSAhPSBOVUxMKQ0KPiA+ ID4gKyAgICByZXR1cm4gZWxlbWVudF9iaXRzaXplICogMjsNCj4gPiA+ICsNCj4gPiA+ICsgIHJl dHVybiBlbGVtZW50X2JpdHNpemU7DQo+ID4gPiArfQ0KPiA+ID4gKw0KPiA+ID4gK3N0YXRpYyB2 b2lkDQo+ID4gPiArcmlzY3ZfdmFsaWRhdGVfdmVjdG9yX3R5cGUgKGNvbnN0X3RyZWUgdHlwZSwg Y29uc3QgY2hhciAqaGludCkNCj4gPiA+ICt7DQo+ID4gPiArICBnY2NfYXNzZXJ0IChyaXNjdl92 ZWN0b3JfdHlwZV9wICh0eXBlKSk7DQo+ID4gPiArDQo+ID4gPiArICBpZiAoIVRBUkdFVF9WRUNU T1IpDQo+ID4gPiArICAgIHsNCj4gPiA+ICsgICAgICBlcnJvcl9hdCAoaW5wdXRfbG9jYXRpb24s ICIlcyAlcVQgcmVxdWlyZXMgdGhlIFYgSVNBIGV4dGVuc2lvbiIsDQo+ID4gPiArICAgICAgICAg ICAgICAgaGludCwgdHlwZSk7DQo+ID4gPiArICAgICAgcmV0dXJuOw0KPiA+ID4gKyAgICB9DQo+ ID4gPiArDQo+ID4gPiArICB1bnNpZ25lZCBlbGVtZW50X2JpdHNpemUgPSByaXNjdl92ZWN0b3Jf ZWxlbWVudF9iaXRzaXplICh0eXBlKTsNCj4gPiA+ICsgIGJvb2wgaW50X3R5cGVfcCA9IHJpc2N2 X3ZlY3Rvcl9pbnRfdHlwZV9wICh0eXBlKTsNCj4gPiA+ICsNCj4gPiA+ICsgIGlmIChpbnRfdHlw ZV9wICYmIGVsZW1lbnRfYml0c2l6ZSA9PSA2NA0KPiA+ID4gKyAgICAmJiAhVEFSR0VUX1ZFQ1RP Ul9FTEVOXzY0X1AgKHJpc2N2X3ZlY3Rvcl9lbGVuX2ZsYWdzKSkNCj4gPiA+ICsgICAgew0KPiA+ ID4gKyAgICAgIGVycm9yX2F0IChpbnB1dF9sb2NhdGlvbiwNCj4gPiA+ICsgICAgICAgICAgICAg ICAiJXMgJXFUIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4 dGVuc2lvbiIsDQo+ID4gPiArICAgICAgICAgICAgICAgaGludCwgdHlwZSk7DQo+ID4gPiArICAg ICAgcmV0dXJuOw0KPiA+ID4gKyAgICB9DQo+ID4gPiArDQo+ID4gPiArICBib29sIGZsb2F0X3R5 cGVfcCA9IHJpc2N2X3ZlY3Rvcl9mbG9hdF90eXBlX3AgKHR5cGUpOw0KPiA+ID4gKw0KPiA+ID4g KyAgaWYgKGZsb2F0X3R5cGVfcCAmJiBlbGVtZW50X2JpdHNpemUgPT0gMTYNCj4gPiA+ICsgICAg JiYgIVRBUkdFVF9WRUNUT1JfRUxFTl9GUF8xNl9QIChyaXNjdl92ZWN0b3JfZWxlbl9mbGFncykp DQo+ID4gPiArICAgIHsNCj4gPiA+ICsgICAgICBlcnJvcl9hdCAoaW5wdXRfbG9jYXRpb24sDQo+ ID4gPiArICAgICAgICAgICAgICAgIiVzICVxVCByZXF1aXJlcyB0aGUgenZmaG1pbiBvciB6dmZo IElTQSBleHRlbnNpb24iLA0KPiA+ID4gKyAgICAgICAgICAgICAgIGhpbnQsIHR5cGUpOw0KPiA+ ID4gKyAgICAgIHJldHVybjsNCj4gPiA+ICsgICAgfQ0KPiA+ID4gKw0KPiA+ID4gKyAgaWYgKGZs b2F0X3R5cGVfcCAmJiBlbGVtZW50X2JpdHNpemUgPT0gMzINCj4gPiA+ICsgICAgJiYgIVRBUkdF VF9WRUNUT1JfRUxFTl9GUF8zMl9QIChyaXNjdl92ZWN0b3JfZWxlbl9mbGFncykpDQo+ID4gPiAr ICAgIHsNCj4gPiA+ICsgICAgICBlcnJvcl9hdCAoaW5wdXRfbG9jYXRpb24sDQo+ID4gPiArICAg ICAgICAgICAgICAgIiVzICVxVCByZXF1aXJlcyB0aGUgenZlMzJmLCB6dmU2NGYsIHp2ZTY0ZCBv ciB2IElTQSBleHRlbnNpb24iLA0KPiA+ID4gKyAgICAgICAgICAgICAgIGhpbnQsIHR5cGUpOw0K PiA+ID4gKyAgICAgIHJldHVybjsNCj4gPiA+ICsgICAgfQ0KPiA+ID4gKw0KPiA+ID4gKyAgaWYg KGZsb2F0X3R5cGVfcCAmJiBlbGVtZW50X2JpdHNpemUgPT0gNjQNCj4gPiA+ICsgICAgJiYgIVRB UkdFVF9WRUNUT1JfRUxFTl9GUF82NF9QIChyaXNjdl92ZWN0b3JfZWxlbl9mbGFncykpDQo+ID4g PiArICAgIHsNCj4gPiA+ICsgICAgICBlcnJvcl9hdCAoaW5wdXRfbG9jYXRpb24sDQo+ID4gPiAr ICAgICAgICAgICAgICAgIiVzICVxVCByZXF1aXJlcyB0aGUgenZlNjRkIG9yIHYgSVNBIGV4dGVu c2lvbiIsIGhpbnQsIHR5cGUpOw0KPiA+ID4gKyAgICAgIHJldHVybjsNCj4gPiA+ICsgICAgfQ0K PiA+ID4gKw0KPiA+ID4gKyAgdW5zaWduZWQgcmVxdWlyZWRfbWluX3ZsZW4gPSByaXNjdl92ZWN0 b3JfcmVxdWlyZWRfbWluX3ZsZW4gKHR5cGUpOw0KPiA+ID4gKw0KPiA+ID4gKyAgaWYgKFRBUkdF VF9NSU5fVkxFTiA8IHJlcXVpcmVkX21pbl92bGVuKQ0KPiA+ID4gKyAgICB7DQo+ID4gPiArICAg ICAgZXJyb3JfYXQgKA0KPiA+ID4gKyAgICAgICBpbnB1dF9sb2NhdGlvbiwNCj4gPiA+ICsgICAg ICAgIiVzICVxVCByZXF1aXJlcyB0aGUgbWluaW1hbCB2ZWN0b3IgbGVuZ3RoICVxZCBidXQgJXFk IGlzIGdpdmVuIiwNCj4gPiA+ICsgICAgICAgaGludCwgdHlwZSwgcmVxdWlyZWRfbWluX3ZsZW4s IFRBUkdFVF9NSU5fVkxFTik7DQo+ID4gPiArICAgICAgcmV0dXJuOw0KPiA+ID4gKyAgICB9DQo+ ID4gPiArfQ0KPiA+ID4gKw0KPiA+ID4gIC8qIFJldHVybiB0cnVlIGlmIGEgZnVuY3Rpb24gd2l0 aCB0eXBlIEZOVFlQRSByZXR1cm5zIGl0cyB2YWx1ZSBpbg0KPiA+ID4gICAgIFJJU0MtViBWIHJl Z2lzdGVycy4gICovDQo+ID4gPg0KPiA+ID4gQEAgLTU0NjksOSArNTYxNSw3IEBAIHJpc2N2X3Jl dHVybl92YWx1ZV9pc192ZWN0b3JfdHlwZV9wIChjb25zdF90cmVlIGZudHlwZSkNCj4gPiA+DQo+ ID4gPiAgICBpZiAocmlzY3ZfdmVjdG9yX3R5cGVfcCAocmV0dXJuX3R5cGUpKQ0KPiA+ID4gICAg ICB7DQo+ID4gPiAtICAgICAgaWYgKCFUQVJHRVRfVkVDVE9SKQ0KPiA+ID4gLSAgICAgICBlcnJv cl9hdCAoaW5wdXRfbG9jYXRpb24sDQo+ID4gPiAtICAgICAgICAgICAgICAgICAicmV0dXJuIHR5 cGUgJXFUIHJlcXVpcmVzIHRoZSBWIElTQSBleHRlbnNpb24iLCByZXR1cm5fdHlwZSk7DQo+ID4g PiArICAgICAgcmlzY3ZfdmFsaWRhdGVfdmVjdG9yX3R5cGUgKHJldHVybl90eXBlLCAicmV0dXJu IHR5cGUiKTsNCj4gPiA+ICAgICAgICByZXR1cm4gdHJ1ZTsNCj4gPiA+ICAgICAgfQ0KPiA+ID4g ICAgZWxzZQ0KPiA+ID4gQEAgLTU0OTAsMTAgKzU2MzQsNyBAQCByaXNjdl9hcmd1bWVudHNfaXNf dmVjdG9yX3R5cGVfcCAoY29uc3RfdHJlZSBmbnR5cGUpDQo+ID4gPiAgICAgICAgdHJlZSBhcmdf dHlwZSA9IFRSRUVfVkFMVUUgKGNoYWluKTsNCj4gPiA+ICAgICAgICBpZiAocmlzY3ZfdmVjdG9y X3R5cGVfcCAoYXJnX3R5cGUpKQ0KPiA+ID4gICAgICAgICB7DQo+ID4gPiAtICAgICAgICAgaWYg KCFUQVJHRVRfVkVDVE9SKQ0KPiA+ID4gLSAgICAgICAgICAgZXJyb3JfYXQgKGlucHV0X2xvY2F0 aW9uLA0KPiA+ID4gLSAgICAgICAgICAgICAgICAgICAgICJhcmd1bWVudCB0eXBlICVxVCByZXF1 aXJlcyB0aGUgViBJU0EgZXh0ZW5zaW9uIiwNCj4gPiA+IC0gICAgICAgICAgICAgICAgICAgICBh cmdfdHlwZSk7DQo+ID4gPiArICAgICAgICAgcmlzY3ZfdmFsaWRhdGVfdmVjdG9yX3R5cGUgKGFy Z190eXBlLCAiYXJndW1lbnQgdHlwZSIpOw0KPiA+ID4gICAgICAgICAgIHJldHVybiB0cnVlOw0K PiA+ID4gICAgICAgICB9DQo+ID4gPiAgICAgIH0NCj4gPiA+IEBAIC05MTA3LDcgKzkyNDgsNyBA QCByaXNjdl9vdmVycmlkZV9vcHRpb25zX2ludGVybmFsIChzdHJ1Y3QgZ2NjX29wdGlvbnMgKm9w dHMpDQo+ID4gPg0KPiA+ID4gIC8qIEltcGxlbWVudCBUQVJHRVRfT1BUSU9OX09WRVJSSURFLiAg Ki8NCj4gPiA+DQo+ID4gPiAtc3RhdGljIHZvaWQNCj4gPiA+ICt2b2lkDQo+ID4gPiAgcmlzY3Zf b3B0aW9uX292ZXJyaWRlICh2b2lkKQ0KPiA+ID4gIHsNCj4gPiA+ICAjaWZkZWYgU1VCVEFSR0VU X09WRVJSSURFX09QVElPTlMNCj4gPiA+IGRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2djYy50 YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvcHIxMDk0NzktMS5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFy Z2V0L3Jpc2N2L3J2di9iYXNlL3ByMTA5NDc5LTEuYw0KPiA+ID4gaW5kZXggYTEzY2MxMmM1NDMu LjFiZDdlZmU2MWYyIDEwMDY0NA0KPiA+ID4gLS0tIGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0 L3Jpc2N2L3J2di9iYXNlL3ByMTA5NDc5LTEuYw0KPiA+ID4gKysrIGIvZ2NjL3Rlc3RzdWl0ZS9n Y2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3ByMTA5NDc5LTEuYw0KPiA+ID4gQEAgLTMsMTEgKzMs MjQgQEANCj4gPiA+DQo+ID4gPiAgI2luY2x1ZGUgInJpc2N2X3ZlY3Rvci5oIg0KPiA+ID4NCj4g PiA+IC12b2lkIGZvbzAgKCkge19fcnZ2X2ludDY0bTFfdCB0O30gLyogeyBkZy1lcnJvciB7dW5r bm93biB0eXBlIG5hbWUgJ19fcnZ2X2ludDY0bTFfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZvbzEg KCkge19fcnZ2X3VpbnQ2NG0xX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1l ICdfX3J2dl91aW50NjRtMV90J30gfSAqLw0KPiA+ID4gLXZvaWQgZm9vMiAoKSB7X19ydnZfaW50 NjRtMl90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAnX19ydnZfaW50NjRt Ml90J30gfSAqLw0KPiA+ID4gLXZvaWQgZm9vMyAoKSB7X19ydnZfdWludDY0bTJfdCB0O30gLyog eyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ19fcnZ2X3VpbnQ2NG0yX3QnfSB9ICovDQo+ ID4gPiAtdm9pZCBmb280ICgpIHtfX3J2dl9pbnQ2NG00X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vu a25vd24gdHlwZSBuYW1lICdfX3J2dl9pbnQ2NG00X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmb281 ICgpIHtfX3J2dl91aW50NjRtNF90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFt ZSAnX19ydnZfdWludDY0bTRfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZvbzYgKCkge19fcnZ2X2lu dDY0bThfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ19fcnZ2X2ludDY0 bThfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZvbzcgKCkge19fcnZ2X3VpbnQ2NG04X3QgdDt9IC8q IHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICdfX3J2dl91aW50NjRtOF90J30gfSAqLw0K PiA+ID4gKy8qIFRvIHN1cHBvcnQgdGFyZ2V0IGF0dHJpYnV0ZSwgdGhlIHZmbG9hdCptKngqX3Qg bmVlZCB0byBiZSByZWdpc3RlcmVkDQo+ID4gPiArICAgaW4gYWR2YW5jZS4gIFdlIGFkZCB0eXBl IGFuZCBhcmdzL3JldHVybiB2YWx1ZSBjaGVjayBkdXJpbmcgdGhlDQo+ID4gPiArICAgc2V0IGN1 cnJlbnQgZnVuY3Rpb24gYnV0IGNhbm5vdCBjb3ZlciBiZWxvdyBjYXNlcy4gIEl0IGlzIHRoZSBz YW1lDQo+ID4gPiArICAgYmVoYXZpb3IgY29tcGFyZWQgdG8gYWFyY2g2NCBzdmUuICAqLw0KPiA+ ID4gK3ZvaWQgZm9vMCAoKSB7X19ydnZfaW50NjRtMV90IHQ7fQ0KPiA+ID4gK3ZvaWQgZm9vMSAo KSB7X19ydnZfdWludDY0bTFfdCB0O30NCj4gPiA+ICt2b2lkIGZvbzIgKCkge19fcnZ2X2ludDY0 bTJfdCB0O30NCj4gPiA+ICt2b2lkIGZvbzMgKCkge19fcnZ2X3VpbnQ2NG0yX3QgdDt9DQo+ID4g PiArdm9pZCBmb280ICgpIHtfX3J2dl9pbnQ2NG00X3QgdDt9DQo+ID4gPiArdm9pZCBmb281ICgp IHtfX3J2dl91aW50NjRtNF90IHQ7fQ0KPiA+ID4gK3ZvaWQgZm9vNiAoKSB7X19ydnZfaW50NjRt OF90IHQ7fQ0KPiA+ID4gK3ZvaWQgZm9vNyAoKSB7X19ydnZfdWludDY0bThfdCB0O30NCj4gPiA+ ICsNCj4gPiA+ICt2b2lkIG5ld19mb28wIChfX3J2dl9pbnQ2NG0xX3QgdCkgeyB9ICAvKiB7IGRn LWVycm9yIHthcmd1bWVudCB0eXBlICdfX3J2dl9pbnQ2NG0xX3QnIHJlcXVpcmVzIHRoZSB6dmU2 NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQg bmV3X2ZvbzEgKF9fcnZ2X3VpbnQ2NG0xX3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50 IHR5cGUgJ19fcnZ2X3VpbnQ2NG0xX3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZl NjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZvbzIgKF9fcnZ2 X2ludDY0bTJfdCB0KSB7IH0gIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ19fcnZ2X2lu dDY0bTJfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0 ZW5zaW9ufSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZm9vMyAoX19ydnZfdWludDY0bTJfdCB0KSB7 IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAnX19ydnZfdWludDY0bTJfdCcgcmVxdWly ZXMgdGhlIHp2ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ ID4gPiArdm9pZCBuZXdfZm9vNCAoX19ydnZfaW50NjRtNF90IHQpIHsgfSAgLyogeyBkZy1lcnJv ciB7YXJndW1lbnQgdHlwZSAnX19ydnZfaW50NjRtNF90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6 dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19m b281IChfX3J2dl91aW50NjRtNF90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBl ICdfX3J2dl91aW50NjRtNF90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBv ciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mb282IChfX3J2dl9pbnQ2 NG04X3QgdCkgeyB9ICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICdfX3J2dl9pbnQ2NG04 X3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lv bn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZvbzcgKF9fcnZ2X3VpbnQ2NG04X3QgdCkgeyB9IC8q IHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ19fcnZ2X3VpbnQ2NG04X3QnIHJlcXVpcmVzIHRo ZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4g ZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS9wcjEw OTQ3OS0yLmMgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvcHIxMDk0 NzktMi5jDQo+ID4gPiBpbmRleCBkZDZiY2IwZjU0OC4uY2U2YTYyZDE0MDUgMTAwNjQ0DQo+ID4g PiAtLS0gYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvcHIxMDk0Nzkt Mi5jDQo+ID4gPiArKysgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2Uv cHIxMDk0NzktMi5jDQo+ID4gPiBAQCAtMywxMSArMywyNCBAQA0KPiA+ID4NCj4gPiA+ICAjaW5j bHVkZSAicmlzY3ZfdmVjdG9yLmgiDQo+ID4gPg0KPiA+ID4gLXZvaWQgZm9vMCAoKSB7dmludDY0 bTFfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQ2NG0xX3QnfSB9 ICovDQo+ID4gPiAtdm9pZCBmb28xICgpIHt2dWludDY0bTFfdCB0O30gLyogeyBkZy1lcnJvciB7 dW5rbm93biB0eXBlIG5hbWUgJ3Z1aW50NjRtMV90J30gfSAqLw0KPiA+ID4gLXZvaWQgZm9vMiAo KSB7dmludDY0bTJfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQ2 NG0yX3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmb28zICgpIHt2dWludDY0bTJfdCB0O30gLyogeyBk Zy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1aW50NjRtMl90J30gfSAqLw0KPiA+ID4gLXZv aWQgZm9vNCAoKSB7dmludDY0bTRfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5h bWUgJ3ZpbnQ2NG00X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmb281ICgpIHt2dWludDY0bTRfdCB0 O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1aW50NjRtNF90J30gfSAqLw0K PiA+ID4gLXZvaWQgZm9vNiAoKSB7dmludDY0bThfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93 biB0eXBlIG5hbWUgJ3ZpbnQ2NG04X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmb283ICgpIHt2dWlu dDY0bThfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1aW50NjRtOF90 J30gfSAqLw0KPiA+ID4gKy8qIFRvIHN1cHBvcnQgdGFyZ2V0IGF0dHJpYnV0ZSwgdGhlIHZmbG9h dCptKngqX3QgbmVlZCB0byBiZSByZWdpc3RlcmVkDQo+ID4gPiArICAgaW4gYWR2YW5jZS4gIFdl IGFkZCB0eXBlIGFuZCBhcmdzL3JldHVybiB2YWx1ZSBjaGVjayBkdXJpbmcgdGhlDQo+ID4gPiAr ICAgc2V0IGN1cnJlbnQgZnVuY3Rpb24gYnV0IGNhbm5vdCBjb3ZlciBiZWxvdyBjYXNlcy4gIEl0 IGlzIHRoZSBzYW1lDQo+ID4gPiArICAgYmVoYXZpb3IgY29tcGFyZWQgdG8gYWFyY2g2NCBzdmUu ICAqLw0KPiA+ID4gK3ZvaWQgZm9vMCAoKSB7dmludDY0bTFfdCB0O30NCj4gPiA+ICt2b2lkIGZv bzEgKCkge3Z1aW50NjRtMV90IHQ7fQ0KPiA+ID4gK3ZvaWQgZm9vMiAoKSB7dmludDY0bTJfdCB0 O30NCj4gPiA+ICt2b2lkIGZvbzMgKCkge3Z1aW50NjRtMl90IHQ7fQ0KPiA+ID4gK3ZvaWQgZm9v NCAoKSB7dmludDY0bTRfdCB0O30NCj4gPiA+ICt2b2lkIGZvbzUgKCkge3Z1aW50NjRtNF90IHQ7 fQ0KPiA+ID4gK3ZvaWQgZm9vNiAoKSB7dmludDY0bThfdCB0O30NCj4gPiA+ICt2b2lkIGZvbzcg KCkge3Z1aW50NjRtOF90IHQ7fQ0KPiA+ID4gKw0KPiA+ID4gK3ZvaWQgbmV3X2ZvbzAgKHZpbnQ2 NG0xX3QgdCkgeyB9ICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2aW50NjRtMV90JyBy ZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0g Ki8NCj4gPiA+ICt2b2lkIG5ld19mb28xICh2dWludDY0bTFfdCB0KSB7IH0gLyogeyBkZy1lcnJv ciB7YXJndW1lbnQgdHlwZSAndnVpbnQ2NG0xX3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0 ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZvbzIg KHZpbnQ2NG0yX3QgdCkgeyB9ICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2aW50NjRt Ml90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNp b259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mb28zICh2dWludDY0bTJfdCB0KSB7IH0gLyogeyBk Zy1lcnJvciB7YXJndW1lbnQgdHlwZSAndnVpbnQ2NG0yX3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgs IHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3 X2ZvbzQgKHZpbnQ2NG00X3QgdCkgeyB9ICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2 aW50NjRtNF90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBl eHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mb281ICh2dWludDY0bTRfdCB0KSB7IH0g LyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndnVpbnQ2NG00X3QnIHJlcXVpcmVzIHRoZSB6 dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3Zv aWQgbmV3X2ZvbzYgKHZpbnQ2NG04X3QgdCkgeyB9ICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0 eXBlICd2aW50NjRtOF90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2 IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mb283ICh2dWludDY0bThfdCB0 KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndnVpbnQ2NG04X3QnIHJlcXVpcmVz IHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ ID4gZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS9w cjEwOTQ3OS0zLmMgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvcHIx MDk0NzktMy5jDQo+ID4gPiBpbmRleCAwMWU4NjIyM2RhOS4uNWMwY2QxYjFmN2YgMTAwNjQ0DQo+ ID4gPiAtLS0gYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvcHIxMDk0 NzktMy5jDQo+ID4gPiArKysgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jh c2UvcHIxMDk0NzktMy5jDQo+ID4gPiBAQCAtMywxOCArMywzOCBAQA0KPiA+ID4NCj4gPiA+ICAj aW5jbHVkZSAicmlzY3ZfdmVjdG9yLmgiDQo+ID4gPg0KPiA+ID4gLXZvaWQgZm9vMCAoKSB7X19y dnZfYm9vbDY0X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICdfX3J2dl9i b29sNjRfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZvbzEgKCkge19fcnZ2X2ludDhtZjhfdCB0O30g LyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ19fcnZ2X2ludDhtZjhfdCd9IH0gKi8N Cj4gPiA+IC12b2lkIGZvbzIgKCkge19fcnZ2X3VpbnQ4bWY4X3QgdDt9IC8qIHsgZGctZXJyb3Ig e3Vua25vd24gdHlwZSBuYW1lICdfX3J2dl91aW50OG1mOF90J30gfSAqLw0KPiA+ID4gLXZvaWQg Zm9vMyAoKSB7X19ydnZfaW50MTZtZjRfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBl IG5hbWUgJ19fcnZ2X2ludDE2bWY0X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmb280ICgpIHtfX3J2 dl91aW50MTZtZjRfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ19fcnZ2 X3VpbnQxNm1mNF90J30gfSAqLw0KPiA+ID4gLXZvaWQgZm9vNSAoKSB7X19ydnZfaW50MzJtZjJf dCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ19fcnZ2X2ludDMybWYyX3Qn fSB9ICovDQo+ID4gPiAtdm9pZCBmb282ICgpIHtfX3J2dl91aW50MzJtZjJfdCB0O30gLyogeyBk Zy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ19fcnZ2X3VpbnQzMm1mMl90J30gfSAqLw0KPiA+ ID4gLXZvaWQgZm9vNyAoKSB7X19ydnZfaW50NjRtMV90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtu b3duIHR5cGUgbmFtZSAnX19ydnZfaW50NjRtMV90J30gfSAqLw0KPiA+ID4gLXZvaWQgZm9vOCAo KSB7X19ydnZfdWludDY0bTFfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUg J19fcnZ2X3VpbnQ2NG0xX3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmb285ICgpIHtfX3J2dl9pbnQ2 NG0yX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICdfX3J2dl9pbnQ2NG0y X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmb28xMCAoKSB7X19ydnZfdWludDY0bTJfdCB0O30gLyog eyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ19fcnZ2X3VpbnQ2NG0yX3QnfSB9ICovDQo+ ID4gPiAtdm9pZCBmb28xMSAoKSB7X19ydnZfaW50NjRtNF90IHQ7fSAvKiB7IGRnLWVycm9yIHt1 bmtub3duIHR5cGUgbmFtZSAnX19ydnZfaW50NjRtNF90J30gfSAqLw0KPiA+ID4gLXZvaWQgZm9v MTIgKCkge19fcnZ2X3VpbnQ2NG00X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBu YW1lICdfX3J2dl91aW50NjRtNF90J30gfSAqLw0KPiA+ID4gLXZvaWQgZm9vMTMgKCkge19fcnZ2 X2ludDY0bThfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ19fcnZ2X2lu dDY0bThfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZvbzE0ICgpIHtfX3J2dl91aW50NjRtOF90IHQ7 fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAnX19ydnZfdWludDY0bThfdCd9IH0g Ki8NCj4gPiA+ICsvKiBUbyBzdXBwb3J0IHRhcmdldCBhdHRyaWJ1dGUsIHRoZSB2ZmxvYXQqbSp4 Kl90IG5lZWQgdG8gYmUgcmVnaXN0ZXJlZA0KPiA+ID4gKyAgIGluIGFkdmFuY2UuICBXZSBhZGQg dHlwZSBhbmQgYXJncy9yZXR1cm4gdmFsdWUgY2hlY2sgZHVyaW5nIHRoZQ0KPiA+ID4gKyAgIHNl dCBjdXJyZW50IGZ1bmN0aW9uIGJ1dCBjYW5ub3QgY292ZXIgYmVsb3cgY2FzZXMuICBJdCBpcyB0 aGUgc2FtZQ0KPiA+ID4gKyAgIGJlaGF2aW9yIGNvbXBhcmVkIHRvIGFhcmNoNjQgc3ZlLiAgKi8N Cj4gPiA+ICt2b2lkIGZvbzAgKCkge19fcnZ2X2Jvb2w2NF90IHQ7fQ0KPiA+ID4gK3ZvaWQgZm9v MSAoKSB7X19ydnZfaW50OG1mOF90IHQ7fQ0KPiA+ID4gK3ZvaWQgZm9vMiAoKSB7X19ydnZfdWlu dDhtZjhfdCB0O30NCj4gPiA+ICt2b2lkIGZvbzMgKCkge19fcnZ2X2ludDE2bWY0X3QgdDt9DQo+ ID4gPiArdm9pZCBmb280ICgpIHtfX3J2dl91aW50MTZtZjRfdCB0O30NCj4gPiA+ICt2b2lkIGZv bzUgKCkge19fcnZ2X2ludDMybWYyX3QgdDt9DQo+ID4gPiArdm9pZCBmb282ICgpIHtfX3J2dl91 aW50MzJtZjJfdCB0O30NCj4gPiA+ICt2b2lkIGZvbzcgKCkge19fcnZ2X2ludDY0bTFfdCB0O30N Cj4gPiA+ICt2b2lkIGZvbzggKCkge19fcnZ2X3VpbnQ2NG0xX3QgdDt9DQo+ID4gPiArdm9pZCBm b285ICgpIHtfX3J2dl9pbnQ2NG0yX3QgdDt9DQo+ID4gPiArdm9pZCBmb28xMCAoKSB7X19ydnZf dWludDY0bTJfdCB0O30NCj4gPiA+ICt2b2lkIGZvbzExICgpIHtfX3J2dl9pbnQ2NG00X3QgdDt9 DQo+ID4gPiArdm9pZCBmb28xMiAoKSB7X19ydnZfdWludDY0bTRfdCB0O30NCj4gPiA+ICt2b2lk IGZvbzEzICgpIHtfX3J2dl9pbnQ2NG04X3QgdDt9DQo+ID4gPiArdm9pZCBmb28xNCAoKSB7X19y dnZfdWludDY0bThfdCB0O30NCj4gPiA+ICsNCj4gPiA+ICt2b2lkIG5ld19mb28wIChfX3J2dl9i b29sNjRfdCB0KSB7IH0gICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAnX19ydnZfYm9v bDY0X3QnIHJlcXVpcmVzIHRoZSBtaW5pbWFsIHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMyJyBp cyBnaXZlbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZvbzEgKF9fcnZ2X2ludDhtZjhfdCB0KSB7 IH0gICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICdfX3J2dl9pbnQ4bWY4X3QnIHJlcXVp cmVzIHRoZSBtaW5pbWFsIHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMyJyBpcyBnaXZlbn0gfSAq Lw0KPiA+ID4gK3ZvaWQgbmV3X2ZvbzIgKF9fcnZ2X3VpbnQ4bWY4X3QgdCkgeyB9ICAvKiB7IGRn LWVycm9yIHthcmd1bWVudCB0eXBlICdfX3J2dl91aW50OG1mOF90JyByZXF1aXJlcyB0aGUgbWlu aW1hbCB2ZWN0b3IgbGVuZ3RoICc2NCcgYnV0ICczMicgaXMgZ2l2ZW59IH0gKi8NCj4gPiA+ICt2 b2lkIG5ld19mb28zIChfX3J2dl9pbnQxNm1mNF90IHQpIHsgfSAgLyogeyBkZy1lcnJvciB7YXJn dW1lbnQgdHlwZSAnX19ydnZfaW50MTZtZjRfdCcgcmVxdWlyZXMgdGhlIG1pbmltYWwgdmVjdG9y IGxlbmd0aCAnNjQnIGJ1dCAnMzInIGlzIGdpdmVufSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZm9v NCAoX19ydnZfdWludDE2bWY0X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUg J19fcnZ2X3VpbnQxNm1mNF90JyByZXF1aXJlcyB0aGUgbWluaW1hbCB2ZWN0b3IgbGVuZ3RoICc2 NCcgYnV0ICczMicgaXMgZ2l2ZW59IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mb281IChfX3J2dl9p bnQzMm1mMl90IHQpIHsgfSAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAnX19ydnZfaW50 MzJtZjJfdCcgcmVxdWlyZXMgdGhlIG1pbmltYWwgdmVjdG9yIGxlbmd0aCAnNjQnIGJ1dCAnMzIn IGlzIGdpdmVufSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZm9vNiAoX19ydnZfdWludDMybWYyX3Qg dCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ19fcnZ2X3VpbnQzMm1mMl90JyBy ZXF1aXJlcyB0aGUgbWluaW1hbCB2ZWN0b3IgbGVuZ3RoICc2NCcgYnV0ICczMicgaXMgZ2l2ZW59 IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mb283IChfX3J2dl9pbnQ2NG0xX3QgdCkgeyB9ICAgLyog eyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAnX19ydnZfaW50NjRtMV90JyByZXF1aXJlcyB0aGUg enZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2 b2lkIG5ld19mb284IChfX3J2dl91aW50NjRtMV90IHQpIHsgfSAgLyogeyBkZy1lcnJvciB7YXJn dW1lbnQgdHlwZSAnX19ydnZfdWludDY0bTFfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZlNjRm LCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZm9vOSAo X19ydnZfaW50NjRtMl90IHQpIHsgfSAgIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ19f cnZ2X2ludDY0bTJfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJ U0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZm9vMTAgKF9fcnZ2X3VpbnQ2NG0y X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ19fcnZ2X3VpbnQ2NG0yX3Qn IHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0g fSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZvbzExIChfX3J2dl9pbnQ2NG00X3QgdCkgeyB9ICAvKiB7 IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICdfX3J2dl9pbnQ2NG00X3QnIHJlcXVpcmVzIHRoZSB6 dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3Zv aWQgbmV3X2ZvbzEyIChfX3J2dl91aW50NjRtNF90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1 bWVudCB0eXBlICdfX3J2dl91aW50NjRtNF90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYs IHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mb28xMyAo X19ydnZfaW50NjRtOF90IHQpIHsgfSAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAnX19y dnZfaW50NjRtOF90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElT QSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mb28xNCAoX19ydnZfdWludDY0bThf dCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAnX19ydnZfdWludDY0bThfdCcg cmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9 ICovDQo+ID4gPiBkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2 di9iYXNlL3ByMTA5NDc5LTQuYyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYv YmFzZS9wcjEwOTQ3OS00LmMNCj4gPiA+IGluZGV4IDYyMzg1YjhkY2QxLi40OGUxZjI3OGU3MCAx MDA2NDQNCj4gPiA+IC0tLSBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFz ZS9wcjEwOTQ3OS00LmMNCj4gPiA+ICsrKyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNj di9ydnYvYmFzZS9wcjEwOTQ3OS00LmMNCj4gPiA+IEBAIC0zLDE4ICszLDM5IEBADQo+ID4gPg0K PiA+ID4gICNpbmNsdWRlICJyaXNjdl92ZWN0b3IuaCINCj4gPiA+DQo+ID4gPiAtdm9pZCBmb28w ICgpIHt2Ym9vbDY0X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2Ym9v bDY0X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmb28xICgpIHt2aW50OG1mOF90IHQ7fSAvKiB7IGRn LWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmludDhtZjhfdCd9IH0gKi8NCj4gPiA+IC12b2lk IGZvbzIgKCkge3Z1aW50OG1mOF90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFt ZSAndnVpbnQ4bWY4X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmb28zICgpIHt2aW50MTZtZjRfdCB0 O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQxNm1mNF90J30gfSAqLw0K PiA+ID4gLXZvaWQgZm9vNCAoKSB7dnVpbnQxNm1mNF90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtu b3duIHR5cGUgbmFtZSAndnVpbnQxNm1mNF90J30gfSAqLw0KPiA+ID4gLXZvaWQgZm9vNSAoKSB7 dmludDMybWYyX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2aW50MzJt ZjJfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZvbzYgKCkge3Z1aW50MzJtZjJfdCB0O30gLyogeyBk Zy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1aW50MzJtZjJfdCd9IH0gKi8NCj4gPiA+IC12 b2lkIGZvbzcgKCkge3ZpbnQ2NG0xX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBu YW1lICd2aW50NjRtMV90J30gfSAqLw0KPiA+ID4gLXZvaWQgZm9vOCAoKSB7dnVpbnQ2NG0xX3Qg dDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2dWludDY0bTFfdCd9IH0gKi8N Cj4gPiA+IC12b2lkIGZvbzkgKCkge3ZpbnQ2NG0yX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25v d24gdHlwZSBuYW1lICd2aW50NjRtMl90J30gfSAqLw0KPiA+ID4gLXZvaWQgZm9vMTAgKCkge3Z1 aW50NjRtMl90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndnVpbnQ2NG0y X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmb28xMSAoKSB7dmludDY0bTRfdCB0O30gLyogeyBkZy1l cnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQ2NG00X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBm b28xMiAoKSB7dnVpbnQ2NG00X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1l ICd2dWludDY0bTRfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZvbzEzICgpIHt2aW50NjRtOF90IHQ7 fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmludDY0bThfdCd9IH0gKi8NCj4g PiA+IC12b2lkIGZvbzE0ICgpIHt2dWludDY0bThfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93 biB0eXBlIG5hbWUgJ3Z1aW50NjRtOF90J30gfSAqLw0KPiA+ID4gKy8qIFRvIHN1cHBvcnQgdGFy Z2V0IGF0dHJpYnV0ZSwgdGhlIHZmbG9hdCptKngqX3QgbmVlZCB0byBiZSByZWdpc3RlcmVkDQo+ ID4gPiArICAgaW4gYWR2YW5jZS4gIFdlIGFkZCB0eXBlIGFuZCBhcmdzL3JldHVybiB2YWx1ZSBj aGVjayBkdXJpbmcgdGhlDQo+ID4gPiArICAgc2V0IGN1cnJlbnQgZnVuY3Rpb24gYnV0IGNhbm5v dCBjb3ZlciBiZWxvdyBjYXNlcy4gIEl0IGlzIHRoZSBzYW1lDQo+ID4gPiArICAgYmVoYXZpb3Ig Y29tcGFyZWQgdG8gYWFyY2g2NCBzdmUuICAqLw0KPiA+ID4gK3ZvaWQgZm9vMCAoKSB7dmJvb2w2 NF90IHQ7fQ0KPiA+ID4gK3ZvaWQgZm9vMSAoKSB7dmludDhtZjhfdCB0O30NCj4gPiA+ICt2b2lk IGZvbzIgKCkge3Z1aW50OG1mOF90IHQ7fQ0KPiA+ID4gK3ZvaWQgZm9vMyAoKSB7dmludDE2bWY0 X3QgdDt9DQo+ID4gPiArdm9pZCBmb280ICgpIHt2dWludDE2bWY0X3QgdDt9DQo+ID4gPiArdm9p ZCBmb281ICgpIHt2aW50MzJtZjJfdCB0O30NCj4gPiA+ICt2b2lkIGZvbzYgKCkge3Z1aW50MzJt ZjJfdCB0O30NCj4gPiA+ICt2b2lkIGZvbzcgKCkge3ZpbnQ2NG0xX3QgdDt9DQo+ID4gPiArdm9p ZCBmb284ICgpIHt2dWludDY0bTFfdCB0O30NCj4gPiA+ICt2b2lkIGZvbzkgKCkge3ZpbnQ2NG0y X3QgdDt9DQo+ID4gPiArdm9pZCBmb28xMCAoKSB7dnVpbnQ2NG0yX3QgdDt9DQo+ID4gPiArdm9p ZCBmb28xMSAoKSB7dmludDY0bTRfdCB0O30NCj4gPiA+ICt2b2lkIGZvbzEyICgpIHt2dWludDY0 bTRfdCB0O30NCj4gPiA+ICt2b2lkIGZvbzEzICgpIHt2aW50NjRtOF90IHQ7fQ0KPiA+ID4gK3Zv aWQgZm9vMTQgKCkge3Z1aW50NjRtOF90IHQ7fQ0KPiA+ID4gKw0KPiA+ID4gK3ZvaWQgbmV3X2Zv bzAgKHZib29sNjRfdCB0KSB7IH0gICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmJv b2w2NF90JyByZXF1aXJlcyB0aGUgbWluaW1hbCB2ZWN0b3IgbGVuZ3RoICc2NCcgYnV0ICczMicg aXMgZ2l2ZW59IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mb28xICh2aW50OG1mOF90IHQpIHsgfSAg IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZpbnQ4bWY4X3QnIHJlcXVpcmVzIHRoZSBt aW5pbWFsIHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMyJyBpcyBnaXZlbn0gfSAqLw0KPiA+ID4g K3ZvaWQgbmV3X2ZvbzIgKHZ1aW50OG1mOF90IHQpIHsgfSAgLyogeyBkZy1lcnJvciB7YXJndW1l bnQgdHlwZSAndnVpbnQ4bWY4X3QnIHJlcXVpcmVzIHRoZSBtaW5pbWFsIHZlY3RvciBsZW5ndGgg JzY0JyBidXQgJzMyJyBpcyBnaXZlbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZvbzMgKHZpbnQx Nm1mNF90IHQpIHsgfSAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmludDE2bWY0X3Qn IHJlcXVpcmVzIHRoZSBtaW5pbWFsIHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMyJyBpcyBnaXZl bn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZvbzQgKHZ1aW50MTZtZjRfdCB0KSB7IH0gLyogeyBk Zy1lcnJvciB7YXJndW1lbnQgdHlwZSAndnVpbnQxNm1mNF90JyByZXF1aXJlcyB0aGUgbWluaW1h bCB2ZWN0b3IgbGVuZ3RoICc2NCcgYnV0ICczMicgaXMgZ2l2ZW59IH0gKi8NCj4gPiA+ICt2b2lk IG5ld19mb281ICh2aW50MzJtZjJfdCB0KSB7IH0gIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5 cGUgJ3ZpbnQzMm1mMl90JyByZXF1aXJlcyB0aGUgbWluaW1hbCB2ZWN0b3IgbGVuZ3RoICc2NCcg YnV0ICczMicgaXMgZ2l2ZW59IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mb282ICh2dWludDMybWYy X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50MzJtZjJfdCcgcmVx dWlyZXMgdGhlIG1pbmltYWwgdmVjdG9yIGxlbmd0aCAnNjQnIGJ1dCAnMzInIGlzIGdpdmVufSB9 ICovDQo+ID4gPiArDQo+ID4gPiArdm9pZCBuZXdfZm9vNyAodmludDY0bTFfdCB0KSB7IH0gICAv KiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2aW50NjRtMV90JyByZXF1aXJlcyB0aGUgenZl NjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lk IG5ld19mb284ICh2dWludDY0bTFfdCB0KSB7IH0gIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5 cGUgJ3Z1aW50NjRtMV90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2 IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mb285ICh2aW50NjRtMl90IHQp IHsgfSAgIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZpbnQ2NG0yX3QnIHJlcXVpcmVz IHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ ID4gK3ZvaWQgbmV3X2ZvbzEwICh2dWludDY0bTJfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJn dW1lbnQgdHlwZSAndnVpbnQ2NG0yX3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZl NjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZvbzExICh2aW50 NjRtNF90IHQpIHsgfSAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmludDY0bTRfdCcg cmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9 ICovDQo+ID4gPiArdm9pZCBuZXdfZm9vMTIgKHZ1aW50NjRtNF90IHQpIHsgfSAvKiB7IGRnLWVy cm9yIHthcmd1bWVudCB0eXBlICd2dWludDY0bTRfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZl NjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZm9v MTMgKHZpbnQ2NG04X3QgdCkgeyB9ICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2aW50 NjRtOF90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRl bnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mb28xNCAodnVpbnQ2NG04X3QgdCkgeyB9IC8q IHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50NjRtOF90JyByZXF1aXJlcyB0aGUgenZl NjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+IGRpZmYg LS1naXQgYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvcHIxMDk0Nzkt NS5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3ByMTA5NDc5LTUu Yw0KPiA+ID4gaW5kZXggMjZhMGE3NDI5NjUuLmFmMjM3ZjVkNzU5IDEwMDY0NA0KPiA+ID4gLS0t IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3ByMTA5NDc5LTUuYw0K PiA+ID4gKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3ByMTA5 NDc5LTUuYw0KPiA+ID4gQEAgLTMsNiArMywxMCBAQA0KPiA+ID4NCj4gPiA+ICAjaW5jbHVkZSAi cmlzY3ZfdmVjdG9yLmgiDQo+ID4gPg0KPiA+ID4gKy8qIFRvIHN1cHBvcnQgdGFyZ2V0IGF0dHJp YnV0ZSwgdGhlIHZmbG9hdCptKngqX3QgbmVlZCB0byBiZSByZWdpc3RlcmVkDQo+ID4gPiArICAg aW4gYWR2YW5jZS4gIFdlIGFkZCB0eXBlIGFuZCBhcmdzL3JldHVybiB2YWx1ZSBjaGVjayBkdXJp bmcgdGhlDQo+ID4gPiArICAgc2V0IGN1cnJlbnQgZnVuY3Rpb24gYnV0IGNhbm5vdCBjb3ZlciBi ZWxvdyBjYXNlcy4gIEl0IGlzIHRoZSBzYW1lDQo+ID4gPiArICAgYmVoYXZpb3IgY29tcGFyZWQg dG8gYWFyY2g2NCBzdmUuICAqLw0KPiA+ID4gIHZvaWQgZm9vMCAoKSB7X19ydnZfYm9vbDY0X3Qg dDt9DQo+ID4gPiAgdm9pZCBmb28xICgpIHtfX3J2dl9pbnQ4bWY4X3QgdDt9DQo+ID4gPiAgdm9p ZCBmb28yICgpIHtfX3J2dl91aW50OG1mOF90IHQ7fQ0KPiA+ID4gQEAgLTEwLDExICsxNCwyOCBA QCB2b2lkIGZvbzMgKCkge19fcnZ2X2ludDE2bWY0X3QgdDt9DQo+ID4gPiAgdm9pZCBmb280ICgp IHtfX3J2dl91aW50MTZtZjRfdCB0O30NCj4gPiA+ICB2b2lkIGZvbzUgKCkge19fcnZ2X2ludDMy bWYyX3QgdDt9DQo+ID4gPiAgdm9pZCBmb282ICgpIHtfX3J2dl91aW50MzJtZjJfdCB0O30NCj4g PiA+IC12b2lkIGZvbzcgKCkge19fcnZ2X2ludDY0bTFfdCB0O30gLyogeyBkZy1lcnJvciB7dW5r bm93biB0eXBlIG5hbWUgJ19fcnZ2X2ludDY0bTFfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZvbzgg KCkge19fcnZ2X3VpbnQ2NG0xX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1l ICdfX3J2dl91aW50NjRtMV90J30gfSAqLw0KPiA+ID4gLXZvaWQgZm9vOSAoKSB7X19ydnZfaW50 NjRtMl90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAnX19ydnZfaW50NjRt Ml90J30gfSAqLw0KPiA+ID4gLXZvaWQgZm9vMTAgKCkge19fcnZ2X3VpbnQ2NG0yX3QgdDt9IC8q IHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICdfX3J2dl91aW50NjRtMl90J30gfSAqLw0K PiA+ID4gLXZvaWQgZm9vMTEgKCkge19fcnZ2X2ludDY0bTRfdCB0O30gLyogeyBkZy1lcnJvciB7 dW5rbm93biB0eXBlIG5hbWUgJ19fcnZ2X2ludDY0bTRfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZv bzEyICgpIHtfX3J2dl91aW50NjRtNF90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUg bmFtZSAnX19ydnZfdWludDY0bTRfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZvbzEzICgpIHtfX3J2 dl9pbnQ2NG04X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICdfX3J2dl9p bnQ2NG04X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmb28xNCAoKSB7X19ydnZfdWludDY0bThfdCB0 O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ19fcnZ2X3VpbnQ2NG04X3QnfSB9 ICovDQo+ID4gPiArdm9pZCBmb283ICgpIHtfX3J2dl9pbnQ2NG0xX3QgdDt9DQo+ID4gPiArdm9p ZCBmb284ICgpIHtfX3J2dl91aW50NjRtMV90IHQ7fQ0KPiA+ID4gK3ZvaWQgZm9vOSAoKSB7X19y dnZfaW50NjRtMl90IHQ7fQ0KPiA+ID4gK3ZvaWQgZm9vMTAgKCkge19fcnZ2X3VpbnQ2NG0yX3Qg dDt9DQo+ID4gPiArdm9pZCBmb28xMSAoKSB7X19ydnZfaW50NjRtNF90IHQ7fQ0KPiA+ID4gK3Zv aWQgZm9vMTIgKCkge19fcnZ2X3VpbnQ2NG00X3QgdDt9DQo+ID4gPiArdm9pZCBmb28xMyAoKSB7 X19ydnZfaW50NjRtOF90IHQ7fQ0KPiA+ID4gK3ZvaWQgZm9vMTQgKCkge19fcnZ2X3VpbnQ2NG04 X3QgdDt9DQo+ID4gPiArDQo+ID4gPiArdm9pZCBuZXdfZm9vMCAoX19ydnZfYm9vbDY0X3QgdCkg eyB9DQo+ID4gPiArdm9pZCBuZXdfZm9vMSAoX19ydnZfaW50OG1mOF90IHQpIHsgfQ0KPiA+ID4g K3ZvaWQgbmV3X2ZvbzIgKF9fcnZ2X3VpbnQ4bWY4X3QgdCkgeyB9DQo+ID4gPiArdm9pZCBuZXdf Zm9vMyAoX19ydnZfaW50MTZtZjRfdCB0KSB7IH0NCj4gPiA+ICt2b2lkIG5ld19mb280IChfX3J2 dl91aW50MTZtZjRfdCB0KSB7IH0NCj4gPiA+ICt2b2lkIG5ld19mb281IChfX3J2dl9pbnQzMm1m Ml90IHQpIHsgfQ0KPiA+ID4gK3ZvaWQgbmV3X2ZvbzYgKF9fcnZ2X3VpbnQzMm1mMl90IHQpIHsg fQ0KPiA+ID4gKw0KPiA+ID4gK3ZvaWQgbmV3X2ZvbzcgKF9fcnZ2X2ludDY0bTFfdCB0KSB7IH0g ICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICdfX3J2dl9pbnQ2NG0xX3QnIHJlcXVpcmVz IHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ ID4gK3ZvaWQgbmV3X2ZvbzggKF9fcnZ2X3VpbnQ2NG0xX3QgdCkgeyB9ICAvKiB7IGRnLWVycm9y IHthcmd1bWVudCB0eXBlICdfX3J2dl91aW50NjRtMV90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6 dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19m b285IChfX3J2dl9pbnQ2NG0yX3QgdCkgeyB9ICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlw ZSAnX19ydnZfaW50NjRtMl90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBv ciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mb28xMCAoX19ydnZfdWlu dDY0bTJfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAnX19ydnZfdWludDY0 bTJfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5z aW9ufSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZm9vMTEgKF9fcnZ2X2ludDY0bTRfdCB0KSB7IH0g IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ19fcnZ2X2ludDY0bTRfdCcgcmVxdWlyZXMg dGhlIHp2ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4g PiArdm9pZCBuZXdfZm9vMTIgKF9fcnZ2X3VpbnQ2NG00X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ig e2FyZ3VtZW50IHR5cGUgJ19fcnZ2X3VpbnQ2NG00X3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2 ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2Zv bzEzIChfX3J2dl9pbnQ2NG04X3QgdCkgeyB9ICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBl ICdfX3J2dl9pbnQ2NG04X3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9y IHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZvbzE0IChfX3J2dl91aW50 NjRtOF90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICdfX3J2dl91aW50NjRt OF90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNp b259IH0gKi8NCj4gPiA+IGRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlz Y3YvcnZ2L2Jhc2UvcHIxMDk0NzktNi5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2 L3J2di9iYXNlL3ByMTA5NDc5LTYuYw0KPiA+ID4gaW5kZXggZWI2NmYzZWEyYmQuLjI3NzlmYmRh MDUzIDEwMDY0NA0KPiA+ID4gLS0tIGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2 di9iYXNlL3ByMTA5NDc5LTYuYw0KPiA+ID4gKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0 L3Jpc2N2L3J2di9iYXNlL3ByMTA5NDc5LTYuYw0KPiA+ID4gQEAgLTEwLDExICsxMCwyOCBAQCB2 b2lkIGZvbzMgKCkge3ZpbnQxNm1mNF90IHQ7fQ0KPiA+ID4gIHZvaWQgZm9vNCAoKSB7dnVpbnQx Nm1mNF90IHQ7fQ0KPiA+ID4gIHZvaWQgZm9vNSAoKSB7dmludDMybWYyX3QgdDt9DQo+ID4gPiAg dm9pZCBmb282ICgpIHt2dWludDMybWYyX3QgdDt9DQo+ID4gPiAtdm9pZCBmb283ICgpIHt2aW50 NjRtMV90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmludDY0bTFfdCd9 IH0gKi8NCj4gPiA+IC12b2lkIGZvbzggKCkge3Z1aW50NjRtMV90IHQ7fSAvKiB7IGRnLWVycm9y IHt1bmtub3duIHR5cGUgbmFtZSAndnVpbnQ2NG0xX3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmb285 ICgpIHt2aW50NjRtMl90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmlu dDY0bTJfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZvbzEwICgpIHt2dWludDY0bTJfdCB0O30gLyog eyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1aW50NjRtMl90J30gfSAqLw0KPiA+ID4g LXZvaWQgZm9vMTEgKCkge3ZpbnQ2NG00X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlw ZSBuYW1lICd2aW50NjRtNF90J30gfSAqLw0KPiA+ID4gLXZvaWQgZm9vMTIgKCkge3Z1aW50NjRt NF90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndnVpbnQ2NG00X3QnfSB9 ICovDQo+ID4gPiAtdm9pZCBmb28xMyAoKSB7dmludDY0bThfdCB0O30gLyogeyBkZy1lcnJvciB7 dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQ2NG04X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmb28xNCAo KSB7dnVpbnQ2NG04X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2dWlu dDY0bThfdCd9IH0gKi8NCj4gPiA+ICt2b2lkIGZvbzcgKCkge3ZpbnQ2NG0xX3QgdDt9DQo+ID4g PiArdm9pZCBmb284ICgpIHt2dWludDY0bTFfdCB0O30NCj4gPiA+ICt2b2lkIGZvbzkgKCkge3Zp bnQ2NG0yX3QgdDt9DQo+ID4gPiArdm9pZCBmb28xMCAoKSB7dnVpbnQ2NG0yX3QgdDt9DQo+ID4g PiArdm9pZCBmb28xMSAoKSB7dmludDY0bTRfdCB0O30NCj4gPiA+ICt2b2lkIGZvbzEyICgpIHt2 dWludDY0bTRfdCB0O30NCj4gPiA+ICt2b2lkIGZvbzEzICgpIHt2aW50NjRtOF90IHQ7fQ0KPiA+ ID4gK3ZvaWQgZm9vMTQgKCkge3Z1aW50NjRtOF90IHQ7fQ0KPiA+ID4gKw0KPiA+ID4gK3ZvaWQg bmV3X2ZvbzAgKHZib29sNjRfdCB0KSB7IH0NCj4gPiA+ICt2b2lkIG5ld19mb28xICh2aW50OG1m OF90IHQpIHsgfQ0KPiA+ID4gK3ZvaWQgbmV3X2ZvbzIgKHZ1aW50OG1mOF90IHQpIHsgfQ0KPiA+ ID4gK3ZvaWQgbmV3X2ZvbzMgKHZpbnQxNm1mNF90IHQpIHsgfQ0KPiA+ID4gK3ZvaWQgbmV3X2Zv bzQgKHZ1aW50MTZtZjRfdCB0KSB7IH0NCj4gPiA+ICt2b2lkIG5ld19mb281ICh2aW50MzJtZjJf dCB0KSB7IH0NCj4gPiA+ICt2b2lkIG5ld19mb282ICh2dWludDMybWYyX3QgdCkgeyB9DQo+ID4g PiArDQo+ID4gPiArdm9pZCBuZXdfZm9vNyAodmludDY0bTFfdCB0KSB7IH0gICAvKiB7IGRnLWVy cm9yIHthcmd1bWVudCB0eXBlICd2aW50NjRtMV90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2 NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mb284 ICh2dWludDY0bTFfdCB0KSB7IH0gIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50 NjRtMV90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRl bnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mb285ICh2aW50NjRtMl90IHQpIHsgfSAgIC8q IHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZpbnQ2NG0yX3QnIHJlcXVpcmVzIHRoZSB6dmU2 NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQg bmV3X2ZvbzEwICh2dWludDY0bTJfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlw ZSAndnVpbnQ2NG0yX3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYg SVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZvbzExICh2aW50NjRtNF90IHQp IHsgfSAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmludDY0bTRfdCcgcmVxdWlyZXMg dGhlIHp2ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4g PiArdm9pZCBuZXdfZm9vMTIgKHZ1aW50NjRtNF90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1 bWVudCB0eXBlICd2dWludDY0bTRfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZlNjRmLCB6dmU2 NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZm9vMTMgKHZpbnQ2 NG04X3QgdCkgeyB9ICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2aW50NjRtOF90JyBy ZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0g Ki8NCj4gPiA+ICt2b2lkIG5ld19mb28xNCAodnVpbnQ2NG04X3QgdCkgeyB9IC8qIHsgZGctZXJy b3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50NjRtOF90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2 NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+IGRpZmYgLS1naXQgYS9n Y2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92 X3dpdGhfaW50cmluc2ljLTEwLmMgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2 L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTEwLmMNCj4gPiA+IG5ldyBm aWxlIG1vZGUgMTAwNjQ0DQo+ID4gPiBpbmRleCAwMDAwMDAwMDAwMC4uM2U2ODQ0NDc1ZDUNCj4g PiA+IC0tLSAvZGV2L251bGwNCj4gPiA+ICsrKyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9y aXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMTAuYw0KPiA+ ID4gQEAgLTAsMCArMSwxMiBAQA0KPiA+ID4gKy8qIFRlc3QgdGhhdCB3ZSBkbyBub3QgaGF2ZSBl cnJvciB3aGVuIGNvbXBpbGUgKi8NCj4gPiA+ICsvKiB7IGRnLWRvIGNvbXBpbGUgfSAqLw0KPiA+ ID4gKy8qIHsgZGctb3B0aW9ucyAiLW1hcmNoPXJ2NjRnYyAtbWFiaT1scDY0ZCAtTzMiIH0gKi8N Cj4gPiA+ICsNCj4gPiA+ICsjaW5jbHVkZSAicmlzY3ZfdmVjdG9yLmgiDQo+ID4gPiArDQo+ID4g PiArdmZsb2F0MTZtMV90DQo+ID4gPiArX19hdHRyaWJ1dGVfXygodGFyZ2V0KCJhcmNoPSt2LCt6 dmZoIikpKQ0KPiA+ID4gK3Rlc3RfMSAodmZsb2F0MTZtMV90IGEsIHZmbG9hdDE2bTFfdCBiLCBz aXplX3QgdmwpDQo+ID4gPiArew0KPiA+ID4gKyAgcmV0dXJuIF9fcmlzY3ZfdmZhZGRfdnZfZjE2 bTEgKGEsIGIsIHZsKTsNCj4gPiA+ICt9DQo+ID4gPiBkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0 ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJp bnNpYy0xMS5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3Rhcmdl dF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0xMS5jDQo+ID4gPiBuZXcgZmlsZSBtb2RlIDEw MDY0NA0KPiA+ID4gaW5kZXggMDAwMDAwMDAwMDAuLmRmMDUzMDczYmM4DQo+ID4gPiAtLS0gL2Rl di9udWxsDQo+ID4gPiArKysgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jh c2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTExLmMNCj4gPiA+IEBAIC0wLDAg KzEsMjYgQEANCj4gPiA+ICsvKiBUZXN0IHRoYXQgd2UgZG8gbm90IGhhdmUgZXJyb3Igd2hlbiBj b21waWxlICovDQo+ID4gPiArLyogeyBkZy1kbyBjb21waWxlIH0gKi8NCj4gPiA+ICsvKiB7IGRn LW9wdGlvbnMgIi1tYXJjaD1ydjY0Z2MgLW1hYmk9bHA2NGQgLU8zIiB9ICovDQo+ID4gPiArDQo+ ID4gPiArI2luY2x1ZGUgInJpc2N2X3ZlY3Rvci5oIg0KPiA+ID4gKw0KPiA+ID4gK3ZpbnQ4bTFf dA0KPiA+ID4gK19fYXR0cmlidXRlX18oKHRhcmdldCgiYXJjaD0renZlMzJ4IikpKQ0KPiA+ID4g K3Rlc3RfMSAodmludDhtMV90IGEsIHZpbnQ4bTFfdCBiLCBzaXplX3QgdmwpDQo+ID4gPiArew0K PiA+ID4gKyAgcmV0dXJuIF9fcmlzY3ZfdmFkZF92dl9pOG0xIChhLCBiLCB2bCk7DQo+ID4gPiAr fQ0KPiA+ID4gKw0KPiA+ID4gK3ZpbnQxNm0xX3QNCj4gPiA+ICtfX2F0dHJpYnV0ZV9fKCh0YXJn ZXQoImFyY2g9K3p2ZTMyeCIpKSkNCj4gPiA+ICt0ZXN0XzIgKHZpbnQxNm0xX3QgYSwgdmludDE2 bTFfdCBiLCBzaXplX3QgdmwpDQo+ID4gPiArew0KPiA+ID4gKyAgcmV0dXJuIF9fcmlzY3ZfdmFk ZF92dl9pMTZtMSAoYSwgYiwgdmwpOw0KPiA+ID4gK30NCj4gPiA+ICsNCj4gPiA+ICt2aW50MzJt MV90DQo+ID4gPiArX19hdHRyaWJ1dGVfXygodGFyZ2V0KCJhcmNoPSt6dmUzMngiKSkpDQo+ID4g PiArdGVzdF8zICh2aW50MzJtMV90IGEsIHZpbnQzMm0xX3QgYiwgc2l6ZV90IHZsKQ0KPiA+ID4g K3sNCj4gPiA+ICsgIHJldHVybiBfX3Jpc2N2X3ZhZGRfdnZfaTMybTEgKGEsIGIsIHZsKTsNCj4g PiA+ICt9DQo+ID4gPiBkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2 L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0xMi5jIGIvZ2NjL3Rl c3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRo X2ludHJpbnNpYy0xMi5jDQo+ID4gPiBuZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiA+ID4gaW5kZXgg MDAwMDAwMDAwMDAuLjUxYTkxODg2ZjUyDQo+ID4gPiAtLS0gL2Rldi9udWxsDQo+ID4gPiArKysg Yi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0 ZV92X3dpdGhfaW50cmluc2ljLTEyLmMNCj4gPiA+IEBAIC0wLDAgKzEsMzMgQEANCj4gPiA+ICsv KiBUZXN0IHRoYXQgd2UgZG8gbm90IGhhdmUgZXJyb3Igd2hlbiBjb21waWxlICovDQo+ID4gPiAr LyogeyBkZy1kbyBjb21waWxlIH0gKi8NCj4gPiA+ICsvKiB7IGRnLW9wdGlvbnMgIi1tYXJjaD1y djY0Z2MgLW1hYmk9bHA2NGQgLU8zIiB9ICovDQo+ID4gPiArDQo+ID4gPiArI2luY2x1ZGUgInJp c2N2X3ZlY3Rvci5oIg0KPiA+ID4gKw0KPiA+ID4gK3ZpbnQ4bTFfdA0KPiA+ID4gK19fYXR0cmli dXRlX18oKHRhcmdldCgiYXJjaD0renZlMzJmIikpKQ0KPiA+ID4gK3Rlc3RfMSAodmludDhtMV90 IGEsIHZpbnQ4bTFfdCBiLCBzaXplX3QgdmwpDQo+ID4gPiArew0KPiA+ID4gKyAgcmV0dXJuIF9f cmlzY3ZfdmFkZF92dl9pOG0xIChhLCBiLCB2bCk7DQo+ID4gPiArfQ0KPiA+ID4gKw0KPiA+ID4g K3ZpbnQxNm0xX3QNCj4gPiA+ICtfX2F0dHJpYnV0ZV9fKCh0YXJnZXQoImFyY2g9K3p2ZTMyZiIp KSkNCj4gPiA+ICt0ZXN0XzIgKHZpbnQxNm0xX3QgYSwgdmludDE2bTFfdCBiLCBzaXplX3Qgdmwp DQo+ID4gPiArew0KPiA+ID4gKyAgcmV0dXJuIF9fcmlzY3ZfdmFkZF92dl9pMTZtMSAoYSwgYiwg dmwpOw0KPiA+ID4gK30NCj4gPiA+ICsNCj4gPiA+ICt2aW50MzJtMV90DQo+ID4gPiArX19hdHRy aWJ1dGVfXygodGFyZ2V0KCJhcmNoPSt6dmUzMmYiKSkpDQo+ID4gPiArdGVzdF8zICh2aW50MzJt MV90IGEsIHZpbnQzMm0xX3QgYiwgc2l6ZV90IHZsKQ0KPiA+ID4gK3sNCj4gPiA+ICsgIHJldHVy biBfX3Jpc2N2X3ZhZGRfdnZfaTMybTEgKGEsIGIsIHZsKTsNCj4gPiA+ICt9DQo+ID4gPiArDQo+ ID4gPiArdmZsb2F0MzJtMV90DQo+ID4gPiArX19hdHRyaWJ1dGVfXygodGFyZ2V0KCJhcmNoPSt6 dmUzMmYiKSkpDQo+ID4gPiArdGVzdF80ICh2ZmxvYXQzMm0xX3QgYSwgdmZsb2F0MzJtMV90IGIs IHNpemVfdCB2bCkNCj4gPiA+ICt7DQo+ID4gPiArICByZXR1cm4gX19yaXNjdl92ZmFkZF92dl9m MzJtMSAoYSwgYiwgdmwpOw0KPiA+ID4gK30NCj4gPiA+IGRpZmYgLS1naXQgYS9nY2MvdGVzdHN1 aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50 cmluc2ljLTEzLmMgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFy Z2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTEzLmMNCj4gPiA+IG5ldyBmaWxlIG1vZGUg MTAwNjQ0DQo+ID4gPiBpbmRleCAwMDAwMDAwMDAwMC4uOTk0YjFjMGE1ZGINCj4gPiA+IC0tLSAv ZGV2L251bGwNCj4gPiA+ICsrKyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYv YmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMTMuYw0KPiA+ID4gQEAgLTAs MCArMSwzMyBAQA0KPiA+ID4gKy8qIFRlc3QgdGhhdCB3ZSBkbyBub3QgaGF2ZSBlcnJvciB3aGVu IGNvbXBpbGUgKi8NCj4gPiA+ICsvKiB7IGRnLWRvIGNvbXBpbGUgfSAqLw0KPiA+ID4gKy8qIHsg ZGctb3B0aW9ucyAiLW1hcmNoPXJ2NjRnYyAtbWFiaT1scDY0ZCAtTzMiIH0gKi8NCj4gPiA+ICsN Cj4gPiA+ICsjaW5jbHVkZSAicmlzY3ZfdmVjdG9yLmgiDQo+ID4gPiArDQo+ID4gPiArdmludDht MV90DQo+ID4gPiArX19hdHRyaWJ1dGVfXygodGFyZ2V0KCJhcmNoPSt6dmU2NHgiKSkpDQo+ID4g PiArdGVzdF8xICh2aW50OG0xX3QgYSwgdmludDhtMV90IGIsIHNpemVfdCB2bCkNCj4gPiA+ICt7 DQo+ID4gPiArICByZXR1cm4gX19yaXNjdl92YWRkX3Z2X2k4bTEgKGEsIGIsIHZsKTsNCj4gPiA+ ICt9DQo+ID4gPiArDQo+ID4gPiArdmludDE2bTFfdA0KPiA+ID4gK19fYXR0cmlidXRlX18oKHRh cmdldCgiYXJjaD0renZlNjR4IikpKQ0KPiA+ID4gK3Rlc3RfMiAodmludDE2bTFfdCBhLCB2aW50 MTZtMV90IGIsIHNpemVfdCB2bCkNCj4gPiA+ICt7DQo+ID4gPiArICByZXR1cm4gX19yaXNjdl92 YWRkX3Z2X2kxNm0xIChhLCBiLCB2bCk7DQo+ID4gPiArfQ0KPiA+ID4gKw0KPiA+ID4gK3ZpbnQz Mm0xX3QNCj4gPiA+ICtfX2F0dHJpYnV0ZV9fKCh0YXJnZXQoImFyY2g9K3p2ZTY0eCIpKSkNCj4g PiA+ICt0ZXN0XzMgKHZpbnQzMm0xX3QgYSwgdmludDMybTFfdCBiLCBzaXplX3QgdmwpDQo+ID4g PiArew0KPiA+ID4gKyAgcmV0dXJuIF9fcmlzY3ZfdmFkZF92dl9pMzJtMSAoYSwgYiwgdmwpOw0K PiA+ID4gK30NCj4gPiA+ICsNCj4gPiA+ICt2aW50NjRtMV90DQo+ID4gPiArX19hdHRyaWJ1dGVf XygodGFyZ2V0KCJhcmNoPSt6dmU2NHgiKSkpDQo+ID4gPiArdGVzdF80ICh2aW50NjRtMV90IGEs IHZpbnQ2NG0xX3QgYiwgc2l6ZV90IHZsKQ0KPiA+ID4gK3sNCj4gPiA+ICsgIHJldHVybiBfX3Jp c2N2X3ZhZGRfdnZfaTY0bTEgKGEsIGIsIHZsKTsNCj4gPiA+ICt9DQo+ID4gPiBkaWZmIC0tZ2l0 IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1 dGVfdl93aXRoX2ludHJpbnNpYy0xNC5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2 L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0xNC5jDQo+ID4gPiBu ZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiA+ID4gaW5kZXggMDAwMDAwMDAwMDAuLmNhYTJhMTBlOTQz DQo+ID4gPiAtLS0gL2Rldi9udWxsDQo+ID4gPiArKysgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJn ZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTE0LmMN Cj4gPiA+IEBAIC0wLDAgKzEsNDAgQEANCj4gPiA+ICsvKiBUZXN0IHRoYXQgd2UgZG8gbm90IGhh dmUgZXJyb3Igd2hlbiBjb21waWxlICovDQo+ID4gPiArLyogeyBkZy1kbyBjb21waWxlIH0gKi8N Cj4gPiA+ICsvKiB7IGRnLW9wdGlvbnMgIi1tYXJjaD1ydjY0Z2MgLW1hYmk9bHA2NGQgLU8zIiB9 ICovDQo+ID4gPiArDQo+ID4gPiArI2luY2x1ZGUgInJpc2N2X3ZlY3Rvci5oIg0KPiA+ID4gKw0K PiA+ID4gK3ZpbnQ4bTFfdA0KPiA+ID4gK19fYXR0cmlidXRlX18oKHRhcmdldCgiYXJjaD0renZl NjRmIikpKQ0KPiA+ID4gK3Rlc3RfMSAodmludDhtMV90IGEsIHZpbnQ4bTFfdCBiLCBzaXplX3Qg dmwpDQo+ID4gPiArew0KPiA+ID4gKyAgcmV0dXJuIF9fcmlzY3ZfdmFkZF92dl9pOG0xIChhLCBi LCB2bCk7DQo+ID4gPiArfQ0KPiA+ID4gKw0KPiA+ID4gK3ZpbnQxNm0xX3QNCj4gPiA+ICtfX2F0 dHJpYnV0ZV9fKCh0YXJnZXQoImFyY2g9K3p2ZTY0ZiIpKSkNCj4gPiA+ICt0ZXN0XzIgKHZpbnQx Nm0xX3QgYSwgdmludDE2bTFfdCBiLCBzaXplX3QgdmwpDQo+ID4gPiArew0KPiA+ID4gKyAgcmV0 dXJuIF9fcmlzY3ZfdmFkZF92dl9pMTZtMSAoYSwgYiwgdmwpOw0KPiA+ID4gK30NCj4gPiA+ICsN Cj4gPiA+ICt2aW50MzJtMV90DQo+ID4gPiArX19hdHRyaWJ1dGVfXygodGFyZ2V0KCJhcmNoPSt6 dmU2NGYiKSkpDQo+ID4gPiArdGVzdF8zICh2aW50MzJtMV90IGEsIHZpbnQzMm0xX3QgYiwgc2l6 ZV90IHZsKQ0KPiA+ID4gK3sNCj4gPiA+ICsgIHJldHVybiBfX3Jpc2N2X3ZhZGRfdnZfaTMybTEg KGEsIGIsIHZsKTsNCj4gPiA+ICt9DQo+ID4gPiArDQo+ID4gPiArdmludDY0bTFfdA0KPiA+ID4g K19fYXR0cmlidXRlX18oKHRhcmdldCgiYXJjaD0renZlNjRmIikpKQ0KPiA+ID4gK3Rlc3RfNCAo dmludDY0bTFfdCBhLCB2aW50NjRtMV90IGIsIHNpemVfdCB2bCkNCj4gPiA+ICt7DQo+ID4gPiAr ICByZXR1cm4gX19yaXNjdl92YWRkX3Z2X2k2NG0xIChhLCBiLCB2bCk7DQo+ID4gPiArfQ0KPiA+ ID4gKw0KPiA+ID4gK3ZmbG9hdDMybTFfdA0KPiA+ID4gK19fYXR0cmlidXRlX18oKHRhcmdldCgi YXJjaD0renZlNjRmIikpKQ0KPiA+ID4gK3Rlc3RfNSAodmZsb2F0MzJtMV90IGEsIHZmbG9hdDMy bTFfdCBiLCBzaXplX3QgdmwpDQo+ID4gPiArew0KPiA+ID4gKyAgcmV0dXJuIF9fcmlzY3ZfdmZh ZGRfdnZfZjMybTEgKGEsIGIsIHZsKTsNCj4gPiA+ICt9DQo+ID4gPiBkaWZmIC0tZ2l0IGEvZ2Nj L3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93 aXRoX2ludHJpbnNpYy0xNS5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9i YXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0xNS5jDQo+ID4gPiBuZXcgZmls ZSBtb2RlIDEwMDY0NA0KPiA+ID4gaW5kZXggMDAwMDAwMDAwMDAuLjcyYTJiZTZlNTYwDQo+ID4g PiAtLS0gL2Rldi9udWxsDQo+ID4gPiArKysgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlz Y3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTE1LmMNCj4gPiA+ IEBAIC0wLDAgKzEsNDcgQEANCj4gPiA+ICsvKiBUZXN0IHRoYXQgd2UgZG8gbm90IGhhdmUgZXJy b3Igd2hlbiBjb21waWxlICovDQo+ID4gPiArLyogeyBkZy1kbyBjb21waWxlIH0gKi8NCj4gPiA+ ICsvKiB7IGRnLW9wdGlvbnMgIi1tYXJjaD1ydjY0Z2MgLW1hYmk9bHA2NGQgLU8zIiB9ICovDQo+ ID4gPiArDQo+ID4gPiArI2luY2x1ZGUgInJpc2N2X3ZlY3Rvci5oIg0KPiA+ID4gKw0KPiA+ID4g K3ZpbnQ4bTFfdA0KPiA+ID4gK19fYXR0cmlidXRlX18oKHRhcmdldCgiYXJjaD0renZlNjRkIikp KQ0KPiA+ID4gK3Rlc3RfMSAodmludDhtMV90IGEsIHZpbnQ4bTFfdCBiLCBzaXplX3QgdmwpDQo+ ID4gPiArew0KPiA+ID4gKyAgcmV0dXJuIF9fcmlzY3ZfdmFkZF92dl9pOG0xIChhLCBiLCB2bCk7 DQo+ID4gPiArfQ0KPiA+ID4gKw0KPiA+ID4gK3ZpbnQxNm0xX3QNCj4gPiA+ICtfX2F0dHJpYnV0 ZV9fKCh0YXJnZXQoImFyY2g9K3p2ZTY0ZCIpKSkNCj4gPiA+ICt0ZXN0XzIgKHZpbnQxNm0xX3Qg YSwgdmludDE2bTFfdCBiLCBzaXplX3QgdmwpDQo+ID4gPiArew0KPiA+ID4gKyAgcmV0dXJuIF9f cmlzY3ZfdmFkZF92dl9pMTZtMSAoYSwgYiwgdmwpOw0KPiA+ID4gK30NCj4gPiA+ICsNCj4gPiA+ ICt2aW50MzJtMV90DQo+ID4gPiArX19hdHRyaWJ1dGVfXygodGFyZ2V0KCJhcmNoPSt6dmU2NGQi KSkpDQo+ID4gPiArdGVzdF8zICh2aW50MzJtMV90IGEsIHZpbnQzMm0xX3QgYiwgc2l6ZV90IHZs KQ0KPiA+ID4gK3sNCj4gPiA+ICsgIHJldHVybiBfX3Jpc2N2X3ZhZGRfdnZfaTMybTEgKGEsIGIs IHZsKTsNCj4gPiA+ICt9DQo+ID4gPiArDQo+ID4gPiArdmludDY0bTFfdA0KPiA+ID4gK19fYXR0 cmlidXRlX18oKHRhcmdldCgiYXJjaD0renZlNjRkIikpKQ0KPiA+ID4gK3Rlc3RfNCAodmludDY0 bTFfdCBhLCB2aW50NjRtMV90IGIsIHNpemVfdCB2bCkNCj4gPiA+ICt7DQo+ID4gPiArICByZXR1 cm4gX19yaXNjdl92YWRkX3Z2X2k2NG0xIChhLCBiLCB2bCk7DQo+ID4gPiArfQ0KPiA+ID4gKw0K PiA+ID4gK3ZmbG9hdDMybTFfdA0KPiA+ID4gK19fYXR0cmlidXRlX18oKHRhcmdldCgiYXJjaD0r enZlNjRkIikpKQ0KPiA+ID4gK3Rlc3RfNSAodmZsb2F0MzJtMV90IGEsIHZmbG9hdDMybTFfdCBi LCBzaXplX3QgdmwpDQo+ID4gPiArew0KPiA+ID4gKyAgcmV0dXJuIF9fcmlzY3ZfdmZhZGRfdnZf ZjMybTEgKGEsIGIsIHZsKTsNCj4gPiA+ICt9DQo+ID4gPiArDQo+ID4gPiArdmZsb2F0NjRtMV90 DQo+ID4gPiArX19hdHRyaWJ1dGVfXygodGFyZ2V0KCJhcmNoPSt6dmU2NGQiKSkpDQo+ID4gPiAr dGVzdF82ICh2ZmxvYXQ2NG0xX3QgYSwgdmZsb2F0NjRtMV90IGIsIHNpemVfdCB2bCkNCj4gPiA+ ICt7DQo+ID4gPiArICByZXR1cm4gX19yaXNjdl92ZmFkZF92dl9mNjRtMSAoYSwgYiwgdmwpOw0K PiA+ID4gK30NCj4gPiA+IGRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlz Y3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTE2LmMgYi9nY2Mv dGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dp dGhfaW50cmluc2ljLTE2LmMNCj4gPiA+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0DQo+ID4gPiBpbmRl eCAwMDAwMDAwMDAwMC4uZGFiZGNmOGZmMjENCj4gPiA+IC0tLSAvZGV2L251bGwNCj4gPiA+ICsr KyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmli dXRlX3Zfd2l0aF9pbnRyaW5zaWMtMTYuYw0KPiA+ID4gQEAgLTAsMCArMSwxMiBAQA0KPiA+ID4g Ky8qIFRlc3QgdGhhdCB3ZSBkbyBub3QgaGF2ZSBlcnJvciB3aGVuIGNvbXBpbGUgKi8NCj4gPiA+ ICsvKiB7IGRnLWRvIGNvbXBpbGUgfSAqLw0KPiA+ID4gKy8qIHsgZGctb3B0aW9ucyAiLW1hcmNo PXJ2NjRnYyAtbWFiaT1scDY0ZCAtTzMiIH0gKi8NCj4gPiA+ICsNCj4gPiA+ICsjaW5jbHVkZSAi cmlzY3ZfdmVjdG9yLmgiDQo+ID4gPiArDQo+ID4gPiArdmZsb2F0MzJtMV90DQo+ID4gPiArX19h dHRyaWJ1dGVfXygodGFyZ2V0KCJhcmNoPSt2LCt6dmZobWluIikpKQ0KPiA+ID4gK3Rlc3RfMSAo dmZsb2F0MTZtZjJfdCBhLCBzaXplX3QgdmwpDQo+ID4gPiArew0KPiA+ID4gKyAgcmV0dXJuIF9f cmlzY3ZfdmZ3Y3Z0X2ZfZl92X2YzMm0xIChhLCB2bCk7DQo+ID4gPiArfQ0KPiA+ID4gZGlmZiAt LWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0 cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMTcuYyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9y aXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMTcuYw0KPiA+ ID4gbmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4gPiA+IGluZGV4IDAwMDAwMDAwMDAwLi5hMDY0NDE3 MTY5ZA0KPiA+ID4gLS0tIC9kZXYvbnVsbA0KPiA+ID4gKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2Mu dGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0x Ny5jDQo+ID4gPiBAQCAtMCwwICsxLDEzIEBADQo+ID4gPiArLyogeyBkZy1kbyBjb21waWxlIH0g Ki8NCj4gPiA+ICsvKiB7IGRnLW9wdGlvbnMgIi1tYXJjaD1ydjY0Z2MgLW1hYmk9bHA2NGQgLU8z IiB9ICovDQo+ID4gPiArDQo+ID4gPiArI2luY2x1ZGUgInJpc2N2X3ZlY3Rvci5oIg0KPiA+ID4g Kw0KPiA+ID4gK3ZpbnQ2NG0xX3QNCj4gPiA+ICtfX2F0dHJpYnV0ZV9fKCh0YXJnZXQoImFyY2g9 K3p2ZTMyeCIpKSkNCj4gPiA+ICt0ZXN0XzEgKHZpbnQ2NG0xX3QgYSwgdmludDY0bTFfdCBiLCBz aXplX3QgdmwpDQo+ID4gPiArew0KPiA+ID4gKyAgcmV0dXJuIF9fcmlzY3ZfdmFkZF92dl9pNjRt MSAoYSwgYiwgdmwpOw0KPiA+ID4gK30NCj4gPiA+ICsNCj4gPiA+ICsvKiB7IGRnLWVycm9yICJy ZXR1cm4gdHlwZSAndmludDY0bTFfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZlNjRmLCB6dmU2 NGQgb3IgdiBJU0EgZXh0ZW5zaW9uIiAiIiB7IHRhcmdldCB7ICJyaXNjdiotKi0qIiB9IH0gMCB9 ICovDQo+ID4gPiBkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2 di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0xOC5jIGIvZ2NjL3Rlc3Rz dWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2lu dHJpbnNpYy0xOC5jDQo+ID4gPiBuZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiA+ID4gaW5kZXggMDAw MDAwMDAwMDAuLjYxZDNmYjI1ZGMyDQo+ID4gPiAtLS0gL2Rldi9udWxsDQo+ID4gPiArKysgYi9n Y2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92 X3dpdGhfaW50cmluc2ljLTE4LmMNCj4gPiA+IEBAIC0wLDAgKzEsMTMgQEANCj4gPiA+ICsvKiB7 IGRnLWRvIGNvbXBpbGUgfSAqLw0KPiA+ID4gKy8qIHsgZGctb3B0aW9ucyAiLW1hcmNoPXJ2NjRn YyAtbWFiaT1scDY0ZCAtTzMiIH0gKi8NCj4gPiA+ICsNCj4gPiA+ICsjaW5jbHVkZSAicmlzY3Zf dmVjdG9yLmgiDQo+ID4gPiArDQo+ID4gPiArdmZsb2F0MzJtMV90DQo+ID4gPiArX19hdHRyaWJ1 dGVfXygodGFyZ2V0KCJhcmNoPSt6dmUzMngiKSkpDQo+ID4gPiArdGVzdF8xICh2ZmxvYXQzMm0x X3QgYSwgdmZsb2F0MzJtMV90IGIsIHNpemVfdCB2bCkNCj4gPiA+ICt7DQo+ID4gPiArICByZXR1 cm4gX19yaXNjdl92ZmFkZF92dl9mMzJtMSAoYSwgYiwgdmwpOw0KPiA+ID4gK30NCj4gPiA+ICsN Cj4gPiA+ICsvKiB7IGRnLWVycm9yICJyZXR1cm4gdHlwZSAndmZsb2F0MzJtMV90JyByZXF1aXJl cyB0aGUgenZlMzJmLCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb24iICIiIHsgdGFy Z2V0IHsgInJpc2N2Ki0qLSoiIH0gfSAwIH0gKi8NCj4gPiA+IGRpZmYgLS1naXQgYS9nY2MvdGVz dHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhf aW50cmluc2ljLTE5LmMgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2Uv dGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTE5LmMNCj4gPiA+IG5ldyBmaWxlIG1v ZGUgMTAwNjQ0DQo+ID4gPiBpbmRleCAwMDAwMDAwMDAwMC4uYmZjMjZmODIxMGENCj4gPiA+IC0t LSAvZGV2L251bGwNCj4gPiA+ICsrKyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9y dnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMTkuYw0KPiA+ID4gQEAg LTAsMCArMSwxMyBAQA0KPiA+ID4gKy8qIHsgZGctZG8gY29tcGlsZSB9ICovDQo+ID4gPiArLyog eyBkZy1vcHRpb25zICItbWFyY2g9cnY2NGdjIC1tYWJpPWxwNjRkIC1PMyIgfSAqLw0KPiA+ID4g Kw0KPiA+ID4gKyNpbmNsdWRlICJyaXNjdl92ZWN0b3IuaCINCj4gPiA+ICsNCj4gPiA+ICt2Zmxv YXQxNm0xX3QNCj4gPiA+ICtfX2F0dHJpYnV0ZV9fKCh0YXJnZXQoImFyY2g9K3p2ZTMyeCIpKSkN Cj4gPiA+ICt0ZXN0XzEgKHZmbG9hdDE2bTFfdCBhLCB2ZmxvYXQxNm0xX3QgYiwgc2l6ZV90IHZs KQ0KPiA+ID4gK3sNCj4gPiA+ICsgIHJldHVybiBfX3Jpc2N2X3ZmYWRkX3Z2X2YxNm0xIChhLCBi LCB2bCk7DQo+ID4gPiArfQ0KPiA+ID4gKw0KPiA+ID4gKy8qIHsgZGctZXJyb3IgInJldHVybiB0 eXBlICd2ZmxvYXQxNm0xX3QnIHJlcXVpcmVzIHRoZSB6dmZobWluIG9yIHp2ZmggSVNBIGV4dGVu c2lvbiIgIiIgeyB0YXJnZXQgeyAicmlzY3YqLSotKiIgfSB9IDAgfSAqLw0KPiA+ID4gZGlmZiAt LWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0 cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMjAuYyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9y aXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMjAuYw0KPiA+ ID4gbmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4gPiA+IGluZGV4IDAwMDAwMDAwMDAwLi4zNWEyOTI0 MjM0Zg0KPiA+ID4gLS0tIC9kZXYvbnVsbA0KPiA+ID4gKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2Mu dGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0y MC5jDQo+ID4gPiBAQCAtMCwwICsxLDEzIEBADQo+ID4gPiArLyogeyBkZy1kbyBjb21waWxlIH0g Ki8NCj4gPiA+ICsvKiB7IGRnLW9wdGlvbnMgIi1tYXJjaD1ydjY0Z2MgLW1hYmk9bHA2NGQgLU8z IiB9ICovDQo+ID4gPiArDQo+ID4gPiArI2luY2x1ZGUgInJpc2N2X3ZlY3Rvci5oIg0KPiA+ID4g Kw0KPiA+ID4gK3ZmbG9hdDY0bTFfdA0KPiA+ID4gK19fYXR0cmlidXRlX18oKHRhcmdldCgiYXJj aD0renZlMzJ4IikpKQ0KPiA+ID4gK3Rlc3RfMSAodmZsb2F0NjRtMV90IGEsIHZmbG9hdDY0bTFf dCBiLCBzaXplX3QgdmwpDQo+ID4gPiArew0KPiA+ID4gKyAgcmV0dXJuIF9fcmlzY3ZfdmZhZGRf dnZfZjY0bTEgKGEsIGIsIHZsKTsNCj4gPiA+ICt9DQo+ID4gPiArDQo+ID4gPiArLyogeyBkZy1l cnJvciAicmV0dXJuIHR5cGUgJ3ZmbG9hdDY0bTFfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0ZCBvciB2 IElTQSBleHRlbnNpb24iICIiIHsgdGFyZ2V0IHsgInJpc2N2Ki0qLSoiIH0gfSAwIH0gKi8NCj4g PiA+IGRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2Uv dGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTIxLmMgYi9nY2MvdGVzdHN1aXRlL2dj Yy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2lj LTIxLmMNCj4gPiA+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0DQo+ID4gPiBpbmRleCAwMDAwMDAwMDAw MC4uZTNhZWYzMzlkNjgNCj4gPiA+IC0tLSAvZGV2L251bGwNCj4gPiA+ICsrKyBiL2djYy90ZXN0 c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9p bnRyaW5zaWMtMjEuYw0KPiA+ID4gQEAgLTAsMCArMSwxMyBAQA0KPiA+ID4gKy8qIHsgZGctZG8g Y29tcGlsZSB9ICovDQo+ID4gPiArLyogeyBkZy1vcHRpb25zICItbWFyY2g9cnY2NGdjIC1tYWJp PWxwNjRkIC1PMyIgfSAqLw0KPiA+ID4gKw0KPiA+ID4gKyNpbmNsdWRlICJyaXNjdl92ZWN0b3Iu aCINCj4gPiA+ICsNCj4gPiA+ICt2aW50NjRtMV90DQo+ID4gPiArX19hdHRyaWJ1dGVfXygodGFy Z2V0KCJhcmNoPSt6dmUzMmYiKSkpDQo+ID4gPiArdGVzdF8xICh2aW50NjRtMV90IGEsIHZpbnQ2 NG0xX3QgYiwgc2l6ZV90IHZsKQ0KPiA+ID4gK3sNCj4gPiA+ICsgIHJldHVybiBfX3Jpc2N2X3Zh ZGRfdnZfaTY0bTEgKGEsIGIsIHZsKTsNCj4gPiA+ICt9DQo+ID4gPiArDQo+ID4gPiArLyogeyBk Zy1lcnJvciAicmV0dXJuIHR5cGUgJ3ZpbnQ2NG0xX3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2 ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbiIgIiIgeyB0YXJnZXQgeyAicmlzY3YqLSot KiIgfSB9IDAgfSAqLw0KPiA+ID4gZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdl dC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMjIuYyBi L2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRl X3Zfd2l0aF9pbnRyaW5zaWMtMjIuYw0KPiA+ID4gbmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4gPiA+ IGluZGV4IDAwMDAwMDAwMDAwLi5iNWE4OTRlY2FkNA0KPiA+ID4gLS0tIC9kZXYvbnVsbA0KPiA+ ID4gKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9h dHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0yMi5jDQo+ID4gPiBAQCAtMCwwICsxLDEzIEBADQo+ ID4gPiArLyogeyBkZy1kbyBjb21waWxlIH0gKi8NCj4gPiA+ICsvKiB7IGRnLW9wdGlvbnMgIi1t YXJjaD1ydjY0Z2MgLW1hYmk9bHA2NGQgLU8zIiB9ICovDQo+ID4gPiArDQo+ID4gPiArI2luY2x1 ZGUgInJpc2N2X3ZlY3Rvci5oIg0KPiA+ID4gKw0KPiA+ID4gK3ZmbG9hdDE2bTFfdA0KPiA+ID4g K19fYXR0cmlidXRlX18oKHRhcmdldCgiYXJjaD0renZlMzJmIikpKQ0KPiA+ID4gK3Rlc3RfMSAo dmZsb2F0MTZtMV90IGEsIHZmbG9hdDE2bTFfdCBiLCBzaXplX3QgdmwpDQo+ID4gPiArew0KPiA+ ID4gKyAgcmV0dXJuIF9fcmlzY3ZfdmZhZGRfdnZfZjE2bTEgKGEsIGIsIHZsKTsNCj4gPiA+ICt9 DQo+ID4gPiArDQo+ID4gPiArLyogeyBkZy1lcnJvciAicmV0dXJuIHR5cGUgJ3ZmbG9hdDE2bTFf dCcgcmVxdWlyZXMgdGhlIHp2ZmhtaW4gb3IgenZmaCBJU0EgZXh0ZW5zaW9uIiAiIiB7IHRhcmdl dCB7ICJyaXNjdiotKi0qIiB9IH0gMCB9ICovDQo+ID4gPiBkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3Rz dWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2lu dHJpbnNpYy0yMy5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3Rh cmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0yMy5jDQo+ID4gPiBuZXcgZmlsZSBtb2Rl IDEwMDY0NA0KPiA+ID4gaW5kZXggMDAwMDAwMDAwMDAuLjcyNjdmYTMzMDRiDQo+ID4gPiAtLS0g L2Rldi9udWxsDQo+ID4gPiArKysgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2 L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTIzLmMNCj4gPiA+IEBAIC0w LDAgKzEsMTMgQEANCj4gPiA+ICsvKiB7IGRnLWRvIGNvbXBpbGUgfSAqLw0KPiA+ID4gKy8qIHsg ZGctb3B0aW9ucyAiLW1hcmNoPXJ2NjRnYyAtbWFiaT1scDY0ZCAtTzMiIH0gKi8NCj4gPiA+ICsN Cj4gPiA+ICsjaW5jbHVkZSAicmlzY3ZfdmVjdG9yLmgiDQo+ID4gPiArDQo+ID4gPiArdmZsb2F0 NjRtMV90DQo+ID4gPiArX19hdHRyaWJ1dGVfXygodGFyZ2V0KCJhcmNoPSt6dmUzMmYiKSkpDQo+ ID4gPiArdGVzdF8xICh2ZmxvYXQ2NG0xX3QgYSwgdmZsb2F0NjRtMV90IGIsIHNpemVfdCB2bCkN Cj4gPiA+ICt7DQo+ID4gPiArICByZXR1cm4gX19yaXNjdl92ZmFkZF92dl9mNjRtMSAoYSwgYiwg dmwpOw0KPiA+ID4gK30NCj4gPiA+ICsNCj4gPiA+ICsvKiB7IGRnLWVycm9yICJyZXR1cm4gdHlw ZSAndmZsb2F0NjRtMV90JyByZXF1aXJlcyB0aGUgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbiIg IiIgeyB0YXJnZXQgeyAicmlzY3YqLSotKiIgfSB9IDAgfSAqLw0KPiA+ID4gZGlmZiAtLWdpdCBh L2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRl X3Zfd2l0aF9pbnRyaW5zaWMtMjQuYyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9y dnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMjQuYw0KPiA+ID4gbmV3 IGZpbGUgbW9kZSAxMDA2NDQNCj4gPiA+IGluZGV4IDAwMDAwMDAwMDAwLi41YTdjNDQ4MWE1YQ0K PiA+ID4gLS0tIC9kZXYvbnVsbA0KPiA+ID4gKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0 L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0yNC5jDQo+ ID4gPiBAQCAtMCwwICsxLDEzIEBADQo+ID4gPiArLyogeyBkZy1kbyBjb21waWxlIH0gKi8NCj4g PiA+ICsvKiB7IGRnLW9wdGlvbnMgIi1tYXJjaD1ydjY0Z2MgLW1hYmk9bHA2NGQgLU8zIiB9ICov DQo+ID4gPiArDQo+ID4gPiArI2luY2x1ZGUgInJpc2N2X3ZlY3Rvci5oIg0KPiA+ID4gKw0KPiA+ ID4gK3ZmbG9hdDMybTFfdA0KPiA+ID4gK19fYXR0cmlidXRlX18oKHRhcmdldCgiYXJjaD0renZl NjR4IikpKQ0KPiA+ID4gK3Rlc3RfMSAodmZsb2F0MzJtMV90IGEsIHZmbG9hdDMybTFfdCBiLCBz aXplX3QgdmwpDQo+ID4gPiArew0KPiA+ID4gKyAgcmV0dXJuIF9fcmlzY3ZfdmZhZGRfdnZfZjMy bTEgKGEsIGIsIHZsKTsNCj4gPiA+ICt9DQo+ID4gPiArDQo+ID4gPiArLyogeyBkZy1lcnJvciAi cmV0dXJuIHR5cGUgJ3ZmbG9hdDMybTFfdCcgcmVxdWlyZXMgdGhlIHp2ZTMyZiwgenZlNjRmLCB6 dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9uIiAiIiB7IHRhcmdldCB7ICJyaXNjdiotKi0qIiB9IH0g MCB9ICovDQo+ID4gPiBkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2 L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0yNS5jIGIvZ2NjL3Rl c3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRo X2ludHJpbnNpYy0yNS5jDQo+ID4gPiBuZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiA+ID4gaW5kZXgg MDAwMDAwMDAwMDAuLmYxMjQxY2IxNzcxDQo+ID4gPiAtLS0gL2Rldi9udWxsDQo+ID4gPiArKysg Yi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0 ZV92X3dpdGhfaW50cmluc2ljLTI1LmMNCj4gPiA+IEBAIC0wLDAgKzEsMTMgQEANCj4gPiA+ICsv KiB7IGRnLWRvIGNvbXBpbGUgfSAqLw0KPiA+ID4gKy8qIHsgZGctb3B0aW9ucyAiLW1hcmNoPXJ2 NjRnYyAtbWFiaT1scDY0ZCAtTzMiIH0gKi8NCj4gPiA+ICsNCj4gPiA+ICsjaW5jbHVkZSAicmlz Y3ZfdmVjdG9yLmgiDQo+ID4gPiArDQo+ID4gPiArdmZsb2F0MTZtMV90DQo+ID4gPiArX19hdHRy aWJ1dGVfXygodGFyZ2V0KCJhcmNoPSt6dmU2NHgiKSkpDQo+ID4gPiArdGVzdF8xICh2ZmxvYXQx Nm0xX3QgYSwgdmZsb2F0MTZtMV90IGIsIHNpemVfdCB2bCkNCj4gPiA+ICt7DQo+ID4gPiArICBy ZXR1cm4gX19yaXNjdl92ZmFkZF92dl9mMTZtMSAoYSwgYiwgdmwpOw0KPiA+ID4gK30NCj4gPiA+ ICsNCj4gPiA+ICsvKiB7IGRnLWVycm9yICJyZXR1cm4gdHlwZSAndmZsb2F0MTZtMV90JyByZXF1 aXJlcyB0aGUgenZmaG1pbiBvciB6dmZoIElTQSBleHRlbnNpb24iICIiIHsgdGFyZ2V0IHsgInJp c2N2Ki0qLSoiIH0gfSAwIH0gKi8NCj4gPiA+IGRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2dj Yy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2lj LTI2LmMgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0 dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTI2LmMNCj4gPiA+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0 DQo+ID4gPiBpbmRleCAwMDAwMDAwMDAwMC4uMjczOGEyOWQ2NzMNCj4gPiA+IC0tLSAvZGV2L251 bGwNCj4gPiA+ICsrKyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90 YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMjYuYw0KPiA+ID4gQEAgLTAsMCArMSwx MyBAQA0KPiA+ID4gKy8qIHsgZGctZG8gY29tcGlsZSB9ICovDQo+ID4gPiArLyogeyBkZy1vcHRp b25zICItbWFyY2g9cnY2NGdjIC1tYWJpPWxwNjRkIC1PMyIgfSAqLw0KPiA+ID4gKw0KPiA+ID4g KyNpbmNsdWRlICJyaXNjdl92ZWN0b3IuaCINCj4gPiA+ICsNCj4gPiA+ICt2ZmxvYXQ2NG0xX3QN Cj4gPiA+ICtfX2F0dHJpYnV0ZV9fKCh0YXJnZXQoImFyY2g9K3p2ZTY0eCIpKSkNCj4gPiA+ICt0 ZXN0XzEgKHZmbG9hdDY0bTFfdCBhLCB2ZmxvYXQ2NG0xX3QgYiwgc2l6ZV90IHZsKQ0KPiA+ID4g K3sNCj4gPiA+ICsgIHJldHVybiBfX3Jpc2N2X3ZmYWRkX3Z2X2Y2NG0xIChhLCBiLCB2bCk7DQo+ ID4gPiArfQ0KPiA+ID4gKw0KPiA+ID4gKy8qIHsgZGctZXJyb3IgInJldHVybiB0eXBlICd2Zmxv YXQ2NG0xX3QnIHJlcXVpcmVzIHRoZSB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9uIiAiIiB7IHRh cmdldCB7ICJyaXNjdiotKi0qIiB9IH0gMCB9ICovDQo+ID4gPiBkaWZmIC0tZ2l0IGEvZ2NjL3Rl c3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRo X2ludHJpbnNpYy0yNy5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNl L3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0yNy5jDQo+ID4gPiBuZXcgZmlsZSBt b2RlIDEwMDY0NA0KPiA+ID4gaW5kZXggMDAwMDAwMDAwMDAuLjg2MTAwMDBiNDc0DQo+ID4gPiAt LS0gL2Rldi9udWxsDQo+ID4gPiArKysgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3Yv cnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTI3LmMNCj4gPiA+IEBA IC0wLDAgKzEsMTMgQEANCj4gPiA+ICsvKiB7IGRnLWRvIGNvbXBpbGUgfSAqLw0KPiA+ID4gKy8q IHsgZGctb3B0aW9ucyAiLW1hcmNoPXJ2NjRnYyAtbWFiaT1scDY0ZCAtTzMiIH0gKi8NCj4gPiA+ ICsNCj4gPiA+ICsjaW5jbHVkZSAicmlzY3ZfdmVjdG9yLmgiDQo+ID4gPiArDQo+ID4gPiArdmZs b2F0NjRtMV90DQo+ID4gPiArX19hdHRyaWJ1dGVfXygodGFyZ2V0KCJhcmNoPSt6dmU2NGYiKSkp DQo+ID4gPiArdGVzdF8xICh2ZmxvYXQ2NG0xX3QgYSwgdmZsb2F0NjRtMV90IGIsIHNpemVfdCB2 bCkNCj4gPiA+ICt7DQo+ID4gPiArICByZXR1cm4gX19yaXNjdl92ZmFkZF92dl9mNjRtMSAoYSwg YiwgdmwpOw0KPiA+ID4gK30NCj4gPiA+ICsNCj4gPiA+ICsvKiB7IGRnLWVycm9yICJyZXR1cm4g dHlwZSAndmZsb2F0NjRtMV90JyByZXF1aXJlcyB0aGUgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lv biIgIiIgeyB0YXJnZXQgeyAicmlzY3YqLSotKiIgfSB9IDAgfSAqLw0KPiA+ID4gZGlmZiAtLWdp dCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmli dXRlX3Zfd2l0aF9pbnRyaW5zaWMtMjguYyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNj di9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMjguYw0KPiA+ID4g bmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4gPiA+IGluZGV4IDAwMDAwMDAwMDAwLi43ZWFhNmFkYWI4 Mg0KPiA+ID4gLS0tIC9kZXYvbnVsbA0KPiA+ID4gKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFy Z2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0yOC5j DQo+ID4gPiBAQCAtMCwwICsxLDEzIEBADQo+ID4gPiArLyogeyBkZy1kbyBjb21waWxlIH0gKi8N Cj4gPiA+ICsvKiB7IGRnLW9wdGlvbnMgIi1tYXJjaD1ydjY0Z2MgLW1hYmk9bHA2NGQgLU8zIiB9 ICovDQo+ID4gPiArDQo+ID4gPiArI2luY2x1ZGUgInJpc2N2X3ZlY3Rvci5oIg0KPiA+ID4gKw0K PiA+ID4gK3ZmbG9hdDE2bTFfdA0KPiA+ID4gK19fYXR0cmlidXRlX18oKHRhcmdldCgiYXJjaD0r enZlNjRmIikpKQ0KPiA+ID4gK3Rlc3RfMSAodmZsb2F0MTZtMV90IGEsIHZmbG9hdDE2bTFfdCBi LCBzaXplX3QgdmwpDQo+ID4gPiArew0KPiA+ID4gKyAgcmV0dXJuIF9fcmlzY3ZfdmZhZGRfdnZf ZjE2bTEgKGEsIGIsIHZsKTsNCj4gPiA+ICt9DQo+ID4gPiArDQo+ID4gPiArLyogeyBkZy1lcnJv ciAicmV0dXJuIHR5cGUgJ3ZmbG9hdDE2bTFfdCcgcmVxdWlyZXMgdGhlIHp2ZmhtaW4gb3IgenZm aCBJU0EgZXh0ZW5zaW9uIiAiIiB7IHRhcmdldCB7ICJyaXNjdiotKi0qIiB9IH0gMCB9ICovDQo+ ID4gPiBkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNl L3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0yOS5jIGIvZ2NjL3Rlc3RzdWl0ZS9n Y2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNp Yy0yOS5jDQo+ID4gPiBuZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiA+ID4gaW5kZXggMDAwMDAwMDAw MDAuLmViNzRlMzMyOTlmDQo+ID4gPiAtLS0gL2Rldi9udWxsDQo+ID4gPiArKysgYi9nY2MvdGVz dHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhf aW50cmluc2ljLTI5LmMNCj4gPiA+IEBAIC0wLDAgKzEsMTMgQEANCj4gPiA+ICsvKiB7IGRnLWRv IGNvbXBpbGUgfSAqLw0KPiA+ID4gKy8qIHsgZGctb3B0aW9ucyAiLW1hcmNoPXJ2NjRnYyAtbWFi aT1scDY0ZCAtTzMiIH0gKi8NCj4gPiA+ICsNCj4gPiA+ICsjaW5jbHVkZSAicmlzY3ZfdmVjdG9y LmgiDQo+ID4gPiArDQo+ID4gPiArdmZsb2F0MTZtMV90DQo+ID4gPiArX19hdHRyaWJ1dGVfXygo dGFyZ2V0KCJhcmNoPSt6dmU2NGQiKSkpDQo+ID4gPiArdGVzdF8xICh2ZmxvYXQxNm0xX3QgYSwg dmZsb2F0MTZtMV90IGIsIHNpemVfdCB2bCkNCj4gPiA+ICt7DQo+ID4gPiArICByZXR1cm4gX19y aXNjdl92ZmFkZF92dl9mMTZtMSAoYSwgYiwgdmwpOw0KPiA+ID4gK30NCj4gPiA+ICsNCj4gPiA+ ICsvKiB7IGRnLWVycm9yICJyZXR1cm4gdHlwZSAndmZsb2F0MTZtMV90JyByZXF1aXJlcyB0aGUg enZmaG1pbiBvciB6dmZoIElTQSBleHRlbnNpb24iICIiIHsgdGFyZ2V0IHsgInJpc2N2Ki0qLSoi IH0gfSAwIH0gKi8NCj4gPiA+IGRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQv cmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTMwLmMgYi9n Y2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92 X3dpdGhfaW50cmluc2ljLTMwLmMNCj4gPiA+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0DQo+ID4gPiBp bmRleCAwMDAwMDAwMDAwMC4uZjY4YjQ2MjJlZTcNCj4gPiA+IC0tLSAvZGV2L251bGwNCj4gPiA+ ICsrKyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0 cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMzAuYw0KPiA+ID4gQEAgLTAsMCArMSwxMiBAQA0KPiA+ ID4gKy8qIFRlc3QgdGhhdCB3ZSBkbyBub3QgaGF2ZSBlcnJvciB3aGVuIGNvbXBpbGUgKi8NCj4g PiA+ICsvKiB7IGRnLWRvIGNvbXBpbGUgfSAqLw0KPiA+ID4gKy8qIHsgZGctb3B0aW9ucyAiLW1h cmNoPXJ2NjRnY196dmUzMnggLW1hYmk9bHA2NGQgLU8zIiB9ICovDQo+ID4gPiArDQo+ID4gPiAr I2luY2x1ZGUgInJpc2N2X3ZlY3Rvci5oIg0KPiA+ID4gKw0KPiA+ID4gK3ZmbG9hdDMybTFfdA0K PiA+ID4gK19fYXR0cmlidXRlX18oKHRhcmdldCgiYXJjaD0rdiIpKSkNCj4gPiA+ICt0ZXN0XzEg KHZmbG9hdDMybTFfdCBhLCB2ZmxvYXQzMm0xX3QgYiwgc2l6ZV90IHZsKQ0KPiA+ID4gK3sNCj4g PiA+ICsgIHJldHVybiBfX3Jpc2N2X3ZmYWRkX3Z2X2YzMm0xIChhLCBiLCB2bCk7DQo+ID4gPiAr fQ0KPiA+ID4gZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYv YmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMzEuYyBiL2djYy90ZXN0c3Vp dGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRy aW5zaWMtMzEuYw0KPiA+ID4gbmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4gPiA+IGluZGV4IDAwMDAw MDAwMDAwLi4yZjE0NmNkYTJkZA0KPiA+ID4gLS0tIC9kZXYvbnVsbA0KPiA+ID4gKysrIGIvZ2Nj L3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93 aXRoX2ludHJpbnNpYy0zMS5jDQo+ID4gPiBAQCAtMCwwICsxLDEyIEBADQo+ID4gPiArLyogVGVz dCB0aGF0IHdlIGRvIG5vdCBoYXZlIGVycm9yIHdoZW4gY29tcGlsZSAqLw0KPiA+ID4gKy8qIHsg ZGctZG8gY29tcGlsZSB9ICovDQo+ID4gPiArLyogeyBkZy1vcHRpb25zICItbWFyY2g9cnY2NGdj X3p2ZTMyeCAtbWFiaT1scDY0ZCAtTzMiIH0gKi8NCj4gPiA+ICsNCj4gPiA+ICsjaW5jbHVkZSAi cmlzY3ZfdmVjdG9yLmgiDQo+ID4gPiArDQo+ID4gPiArdmludDY0bTFfdA0KPiA+ID4gK19fYXR0 cmlidXRlX18oKHRhcmdldCgiYXJjaD0rdiIpKSkNCj4gPiA+ICt0ZXN0XzEgKHZpbnQ2NG0xX3Qg YSwgdmludDY0bTFfdCBiLCBzaXplX3QgdmwpDQo+ID4gPiArew0KPiA+ID4gKyAgcmV0dXJuIF9f cmlzY3ZfdmFkZF92dl9pNjRtMSAoYSwgYiwgdmwpOw0KPiA+ID4gK30NCj4gPiA+IGRpZmYgLS1n aXQgYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJp YnV0ZV92X3dpdGhfaW50cmluc2ljLTMyLmMgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlz Y3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTMyLmMNCj4gPiA+ IG5ldyBmaWxlIG1vZGUgMTAwNjQ0DQo+ID4gPiBpbmRleCAwMDAwMDAwMDAwMC4uNzM3YjViMDBk NzMNCj4gPiA+IC0tLSAvZGV2L251bGwNCj4gPiA+ICsrKyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRh cmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMzIu Yw0KPiA+ID4gQEAgLTAsMCArMSwxMiBAQA0KPiA+ID4gKy8qIFRlc3QgdGhhdCB3ZSBkbyBub3Qg aGF2ZSBlcnJvciB3aGVuIGNvbXBpbGUgKi8NCj4gPiA+ICsvKiB7IGRnLWRvIGNvbXBpbGUgfSAq Lw0KPiA+ID4gKy8qIHsgZGctb3B0aW9ucyAiLW1hcmNoPXJ2NjRnY196dmUzMnggLW1hYmk9bHA2 NGQgLU8zIiB9ICovDQo+ID4gPiArDQo+ID4gPiArI2luY2x1ZGUgInJpc2N2X3ZlY3Rvci5oIg0K PiA+ID4gKw0KPiA+ID4gK3ZmbG9hdDY0bTFfdA0KPiA+ID4gK19fYXR0cmlidXRlX18oKHRhcmdl dCgiYXJjaD0rdiIpKSkNCj4gPiA+ICt0ZXN0XzEgKHZmbG9hdDY0bTFfdCBhLCB2ZmxvYXQ2NG0x X3QgYiwgc2l6ZV90IHZsKQ0KPiA+ID4gK3sNCj4gPiA+ICsgIHJldHVybiBfX3Jpc2N2X3ZmYWRk X3Z2X2Y2NG0xIChhLCBiLCB2bCk7DQo+ID4gPiArfQ0KPiA+ID4gZGlmZiAtLWdpdCBhL2djYy90 ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0 aF9pbnRyaW5zaWMtMzMuYyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFz ZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMzMuYw0KPiA+ID4gbmV3IGZpbGUg bW9kZSAxMDA2NDQNCj4gPiA+IGluZGV4IDAwMDAwMDAwMDAwLi41NTllOTBlODdmNA0KPiA+ID4g LS0tIC9kZXYvbnVsbA0KPiA+ID4gKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2 L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0zMy5jDQo+ID4gPiBA QCAtMCwwICsxLDEyIEBADQo+ID4gPiArLyogVGVzdCB0aGF0IHdlIGRvIG5vdCBoYXZlIGVycm9y IHdoZW4gY29tcGlsZSAqLw0KPiA+ID4gKy8qIHsgZGctZG8gY29tcGlsZSB9ICovDQo+ID4gPiAr LyogeyBkZy1vcHRpb25zICItbWFyY2g9cnY2NGdjX3p2ZTMyeCAtbWFiaT1scDY0ZCAtTzMiIH0g Ki8NCj4gPiA+ICsNCj4gPiA+ICsjaW5jbHVkZSAicmlzY3ZfdmVjdG9yLmgiDQo+ID4gPiArDQo+ ID4gPiArdmZsb2F0MTZtMV90DQo+ID4gPiArX19hdHRyaWJ1dGVfXygodGFyZ2V0KCJhcmNoPSt6 dmZoIikpKQ0KPiA+ID4gK3Rlc3RfMSAodmZsb2F0MTZtMV90IGEsIHZmbG9hdDE2bTFfdCBiLCBz aXplX3QgdmwpDQo+ID4gPiArew0KPiA+ID4gKyAgcmV0dXJuIF9fcmlzY3ZfdmZhZGRfdnZfZjE2 bTEgKGEsIGIsIHZsKTsNCj4gPiA+ICt9DQo+ID4gPiBkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0 ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJp bnNpYy0zNC5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3Rhcmdl dF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0zNC5jDQo+ID4gPiBuZXcgZmlsZSBtb2RlIDEw MDY0NA0KPiA+ID4gaW5kZXggMDAwMDAwMDAwMDAuLjkxZWU1MTBjNzdiDQo+ID4gPiAtLS0gL2Rl di9udWxsDQo+ID4gPiArKysgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jh c2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTM0LmMNCj4gPiA+IEBAIC0wLDAg KzEsMTIgQEANCj4gPiA+ICsvKiBUZXN0IHRoYXQgd2UgZG8gbm90IGhhdmUgZXJyb3Igd2hlbiBj b21waWxlICovDQo+ID4gPiArLyogeyBkZy1kbyBjb21waWxlIH0gKi8NCj4gPiA+ICsvKiB7IGRn LW9wdGlvbnMgIi1tYXJjaD1ydjY0Z2NfenZlMzJmIC1tYWJpPWxwNjRkIC1PMyIgfSAqLw0KPiA+ ID4gKw0KPiA+ID4gKyNpbmNsdWRlICJyaXNjdl92ZWN0b3IuaCINCj4gPiA+ICsNCj4gPiA+ICt2 aW50NjRtMV90DQo+ID4gPiArX19hdHRyaWJ1dGVfXygodGFyZ2V0KCJhcmNoPSt2IikpKQ0KPiA+ ID4gK3Rlc3RfMSAodmludDY0bTFfdCBhLCB2aW50NjRtMV90IGIsIHNpemVfdCB2bCkNCj4gPiA+ ICt7DQo+ID4gPiArICByZXR1cm4gX19yaXNjdl92YWRkX3Z2X2k2NG0xIChhLCBiLCB2bCk7DQo+ ID4gPiArfQ0KPiA+ID4gZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNj di9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMzUuYyBiL2djYy90 ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0 aF9pbnRyaW5zaWMtMzUuYw0KPiA+ID4gbmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4gPiA+IGluZGV4 IDAwMDAwMDAwMDAwLi5lYzE4NGNmZjVkYw0KPiA+ID4gLS0tIC9kZXYvbnVsbA0KPiA+ID4gKysr IGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1 dGVfdl93aXRoX2ludHJpbnNpYy0zNS5jDQo+ID4gPiBAQCAtMCwwICsxLDEyIEBADQo+ID4gPiAr LyogVGVzdCB0aGF0IHdlIGRvIG5vdCBoYXZlIGVycm9yIHdoZW4gY29tcGlsZSAqLw0KPiA+ID4g Ky8qIHsgZGctZG8gY29tcGlsZSB9ICovDQo+ID4gPiArLyogeyBkZy1vcHRpb25zICItbWFyY2g9 cnY2NGdjX3p2ZTMyZiAtbWFiaT1scDY0ZCAtTzMiIH0gKi8NCj4gPiA+ICsNCj4gPiA+ICsjaW5j bHVkZSAicmlzY3ZfdmVjdG9yLmgiDQo+ID4gPiArDQo+ID4gPiArdmludDY0bTFfdA0KPiA+ID4g K19fYXR0cmlidXRlX18oKHRhcmdldCgiYXJjaD0renZlNjR4IikpKQ0KPiA+ID4gK3Rlc3RfMSAo dmludDY0bTFfdCBhLCB2aW50NjRtMV90IGIsIHNpemVfdCB2bCkNCj4gPiA+ICt7DQo+ID4gPiAr ICByZXR1cm4gX19yaXNjdl92YWRkX3Z2X2k2NG0xIChhLCBiLCB2bCk7DQo+ID4gPiArfQ0KPiA+ ID4gZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90 YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMzYuYyBiL2djYy90ZXN0c3VpdGUvZ2Nj LnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMt MzYuYw0KPiA+ID4gbmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4gPiA+IGluZGV4IDAwMDAwMDAwMDAw Li5hMzdmNjdjNTMyMA0KPiA+ID4gLS0tIC9kZXYvbnVsbA0KPiA+ID4gKysrIGIvZ2NjL3Rlc3Rz dWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2lu dHJpbnNpYy0zNi5jDQo+ID4gPiBAQCAtMCwwICsxLDEyIEBADQo+ID4gPiArLyogVGVzdCB0aGF0 IHdlIGRvIG5vdCBoYXZlIGVycm9yIHdoZW4gY29tcGlsZSAqLw0KPiA+ID4gKy8qIHsgZGctZG8g Y29tcGlsZSB9ICovDQo+ID4gPiArLyogeyBkZy1vcHRpb25zICItbWFyY2g9cnY2NGdjX3p2ZTMy ZiAtbWFiaT1scDY0ZCAtTzMiIH0gKi8NCj4gPiA+ICsNCj4gPiA+ICsjaW5jbHVkZSAicmlzY3Zf dmVjdG9yLmgiDQo+ID4gPiArDQo+ID4gPiArdmZsb2F0NjRtMV90DQo+ID4gPiArX19hdHRyaWJ1 dGVfXygodGFyZ2V0KCJhcmNoPSt6dmU2NGQiKSkpDQo+ID4gPiArdGVzdF8xICh2ZmxvYXQ2NG0x X3QgYSwgdmZsb2F0NjRtMV90IGIsIHNpemVfdCB2bCkNCj4gPiA+ICt7DQo+ID4gPiArICByZXR1 cm4gX19yaXNjdl92ZmFkZF92dl9mNjRtMSAoYSwgYiwgdmwpOw0KPiA+ID4gK30NCj4gPiA+IGRp ZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0 X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTM3LmMgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJn ZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTM3LmMN Cj4gPiA+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0DQo+ID4gPiBpbmRleCAwMDAwMDAwMDAwMC4uM2Q2 MjAyNzg0OGUNCj4gPiA+IC0tLSAvZGV2L251bGwNCj4gPiA+ICsrKyBiL2djYy90ZXN0c3VpdGUv Z2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5z aWMtMzcuYw0KPiA+ID4gQEAgLTAsMCArMSwxMiBAQA0KPiA+ID4gKy8qIFRlc3QgdGhhdCB3ZSBk byBub3QgaGF2ZSBlcnJvciB3aGVuIGNvbXBpbGUgKi8NCj4gPiA+ICsvKiB7IGRnLWRvIGNvbXBp bGUgfSAqLw0KPiA+ID4gKy8qIHsgZGctb3B0aW9ucyAiLW1hcmNoPXJ2NjRnY196dmUzMmYgLW1h Ymk9bHA2NGQgLU8zIiB9ICovDQo+ID4gPiArDQo+ID4gPiArI2luY2x1ZGUgInJpc2N2X3ZlY3Rv ci5oIg0KPiA+ID4gKw0KPiA+ID4gK3ZmbG9hdDE2bTFfdA0KPiA+ID4gK19fYXR0cmlidXRlX18o KHRhcmdldCgiYXJjaD0renZmaCIpKSkNCj4gPiA+ICt0ZXN0XzEgKHZmbG9hdDE2bTFfdCBhLCB2 ZmxvYXQxNm0xX3QgYiwgc2l6ZV90IHZsKQ0KPiA+ID4gK3sNCj4gPiA+ICsgIHJldHVybiBfX3Jp c2N2X3ZmYWRkX3Z2X2YxNm0xIChhLCBiLCB2bCk7DQo+ID4gPiArfQ0KPiA+ID4gZGlmZiAtLWdp dCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmli dXRlX3Zfd2l0aF9pbnRyaW5zaWMtMzguYyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNj di9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMzguYw0KPiA+ID4g bmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4gPiA+IGluZGV4IDAwMDAwMDAwMDAwLi45YjhhOWNiYWZj Yg0KPiA+ID4gLS0tIC9kZXYvbnVsbA0KPiA+ID4gKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFy Z2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0zOC5j DQo+ID4gPiBAQCAtMCwwICsxLDEyIEBADQo+ID4gPiArLyogVGVzdCB0aGF0IHdlIGRvIG5vdCBo YXZlIGVycm9yIHdoZW4gY29tcGlsZSAqLw0KPiA+ID4gKy8qIHsgZGctZG8gY29tcGlsZSB9ICov DQo+ID4gPiArLyogeyBkZy1vcHRpb25zICItbWFyY2g9cnY2NGdjX3p2ZTY0ZCAtbWFiaT1scDY0 ZCAtTzMiIH0gKi8NCj4gPiA+ICsNCj4gPiA+ICsjaW5jbHVkZSAicmlzY3ZfdmVjdG9yLmgiDQo+ ID4gPiArDQo+ID4gPiArdmZsb2F0MzJtMV90DQo+ID4gPiArX19hdHRyaWJ1dGVfXygodGFyZ2V0 KCJhcmNoPSt2IikpKQ0KPiA+ID4gK3Rlc3RfMSAodmZsb2F0MzJtMV90IGEsIHZmbG9hdDMybTFf dCBiLCBzaXplX3QgdmwpDQo+ID4gPiArew0KPiA+ID4gKyAgcmV0dXJuIF9fcmlzY3ZfdmZhZGRf dnZfZjMybTEgKGEsIGIsIHZsKTsNCj4gPiA+ICt9DQo+ID4gPiBkaWZmIC0tZ2l0IGEvZ2NjL3Rl c3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRo X2ludHJpbnNpYy0zOS5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNl L3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0zOS5jDQo+ID4gPiBuZXcgZmlsZSBt b2RlIDEwMDY0NA0KPiA+ID4gaW5kZXggMDAwMDAwMDAwMDAuLjY3NDY5YTE4Y2Q5DQo+ID4gPiAt LS0gL2Rldi9udWxsDQo+ID4gPiArKysgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3Yv cnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTM5LmMNCj4gPiA+IEBA IC0wLDAgKzEsMTIgQEANCj4gPiA+ICsvKiBUZXN0IHRoYXQgd2UgZG8gbm90IGhhdmUgZXJyb3Ig d2hlbiBjb21waWxlICovDQo+ID4gPiArLyogeyBkZy1kbyBjb21waWxlIH0gKi8NCj4gPiA+ICsv KiB7IGRnLW9wdGlvbnMgIi1tYXJjaD1ydjY0Z2NfenZlNjRkIC1tYWJpPWxwNjRkIC1PMyIgfSAq Lw0KPiA+ID4gKw0KPiA+ID4gKyNpbmNsdWRlICJyaXNjdl92ZWN0b3IuaCINCj4gPiA+ICsNCj4g PiA+ICt2ZmxvYXQzMm0xX3QNCj4gPiA+ICtfX2F0dHJpYnV0ZV9fKCh0YXJnZXQoImFyY2g9K3p2 ZTY0ZiIpKSkNCj4gPiA+ICt0ZXN0XzEgKHZmbG9hdDMybTFfdCBhLCB2ZmxvYXQzMm0xX3QgYiwg c2l6ZV90IHZsKQ0KPiA+ID4gK3sNCj4gPiA+ICsgIHJldHVybiBfX3Jpc2N2X3ZmYWRkX3Z2X2Yz Mm0xIChhLCBiLCB2bCk7DQo+ID4gPiArfQ0KPiA+ID4gZGlmZiAtLWdpdCBhL2djYy90ZXN0c3Vp dGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRy aW5zaWMtNDAuYyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJn ZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtNDAuYw0KPiA+ID4gbmV3IGZpbGUgbW9kZSAx MDA2NDQNCj4gPiA+IGluZGV4IDAwMDAwMDAwMDAwLi5jZTg5MzkxZTRlNw0KPiA+ID4gLS0tIC9k ZXYvbnVsbA0KPiA+ID4gKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9i YXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy00MC5jDQo+ID4gPiBAQCAtMCww ICsxLDEyIEBADQo+ID4gPiArLyogVGVzdCB0aGF0IHdlIGRvIG5vdCBoYXZlIGVycm9yIHdoZW4g Y29tcGlsZSAqLw0KPiA+ID4gKy8qIHsgZGctZG8gY29tcGlsZSB9ICovDQo+ID4gPiArLyogeyBk Zy1vcHRpb25zICItbWFyY2g9cnY2NGdjX3p2ZTY0ZCAtbWFiaT1scDY0ZCAtTzMiIH0gKi8NCj4g PiA+ICsNCj4gPiA+ICsjaW5jbHVkZSAicmlzY3ZfdmVjdG9yLmgiDQo+ID4gPiArDQo+ID4gPiAr dmZsb2F0NjRtMV90DQo+ID4gPiArX19hdHRyaWJ1dGVfXygodGFyZ2V0KCJhcmNoPSt2IikpKQ0K PiA+ID4gK3Rlc3RfMSAodmZsb2F0NjRtMV90IGEsIHZmbG9hdDY0bTFfdCBiLCBzaXplX3Qgdmwp DQo+ID4gPiArew0KPiA+ID4gKyAgcmV0dXJuIF9fcmlzY3ZfdmZhZGRfdnZfZjY0bTEgKGEsIGIs IHZsKTsNCj4gPiA+ICt9DQo+ID4gPiBkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFy Z2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy00MS5j IGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1 dGVfdl93aXRoX2ludHJpbnNpYy00MS5jDQo+ID4gPiBuZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiA+ ID4gaW5kZXggMDAwMDAwMDAwMDAuLjg4MzZjYjE0NzAzDQo+ID4gPiAtLS0gL2Rldi9udWxsDQo+ ID4gPiArKysgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0 X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTQxLmMNCj4gPiA+IEBAIC0wLDAgKzEsMTIgQEAN Cj4gPiA+ICsvKiBUZXN0IHRoYXQgd2UgZG8gbm90IGhhdmUgZXJyb3Igd2hlbiBjb21waWxlICov DQo+ID4gPiArLyogeyBkZy1kbyBjb21waWxlIH0gKi8NCj4gPiA+ICsvKiB7IGRnLW9wdGlvbnMg Ii1tYXJjaD1ydjY0Z2NfenZlNjRkIC1tYWJpPWxwNjRkIC1PMyIgfSAqLw0KPiA+ID4gKw0KPiA+ ID4gKyNpbmNsdWRlICJyaXNjdl92ZWN0b3IuaCINCj4gPiA+ICsNCj4gPiA+ICt2ZmxvYXQxNm0x X3QNCj4gPiA+ICtfX2F0dHJpYnV0ZV9fKCh0YXJnZXQoImFyY2g9K3p2ZmgiKSkpDQo+ID4gPiAr dGVzdF8xICh2ZmxvYXQxNm0xX3QgYSwgdmZsb2F0MTZtMV90IGIsIHNpemVfdCB2bCkNCj4gPiA+ ICt7DQo+ID4gPiArICByZXR1cm4gX19yaXNjdl92ZmFkZF92dl9mMTZtMSAoYSwgYiwgdmwpOw0K PiA+ID4gK30NCj4gPiA+IGRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlz Y3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTQyLmMgYi9nY2Mv dGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dp dGhfaW50cmluc2ljLTQyLmMNCj4gPiA+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0DQo+ID4gPiBpbmRl eCAwMDAwMDAwMDAwMC4uNTdlNTQyZGExYjgNCj4gPiA+IC0tLSAvZGV2L251bGwNCj4gPiA+ICsr KyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmli dXRlX3Zfd2l0aF9pbnRyaW5zaWMtNDIuYw0KPiA+ID4gQEAgLTAsMCArMSwxMiBAQA0KPiA+ID4g Ky8qIFRlc3QgdGhhdCB3ZSBkbyBub3QgaGF2ZSBlcnJvciB3aGVuIGNvbXBpbGUgKi8NCj4gPiA+ ICsvKiB7IGRnLWRvIGNvbXBpbGUgfSAqLw0KPiA+ID4gKy8qIHsgZGctb3B0aW9ucyAiLW1hcmNo PXJ2NjRnY3ZfenZmaCAtbWFiaT1scDY0ZCAtTzMiIH0gKi8NCj4gPiA+ICsNCj4gPiA+ICsjaW5j bHVkZSAicmlzY3ZfdmVjdG9yLmgiDQo+ID4gPiArDQo+ID4gPiArdmZsb2F0MTZtMV90DQo+ID4g PiArX19hdHRyaWJ1dGVfXygodGFyZ2V0KCJhcmNoPSt6dmUzMngiKSkpDQo+ID4gPiArdGVzdF8x ICh2ZmxvYXQxNm0xX3QgYSwgdmZsb2F0MTZtMV90IGIsIHNpemVfdCB2bCkNCj4gPiA+ICt7DQo+ ID4gPiArICByZXR1cm4gX19yaXNjdl92ZmFkZF92dl9mMTZtMSAoYSwgYiwgdmwpOw0KPiA+ID4g K30NCj4gPiA+IGRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2 L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTQzLmMgYi9nY2MvdGVzdHN1 aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50 cmluc2ljLTQzLmMNCj4gPiA+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0DQo+ID4gPiBpbmRleCAwMDAw MDAwMDAwMC4uN2ZiNmIyMGEzMmUNCj4gPiA+IC0tLSAvZGV2L251bGwNCj4gPiA+ICsrKyBiL2dj Yy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zf d2l0aF9pbnRyaW5zaWMtNDMuYw0KPiA+ID4gQEAgLTAsMCArMSwxMiBAQA0KPiA+ID4gKy8qIFRl c3QgdGhhdCB3ZSBkbyBub3QgaGF2ZSBlcnJvciB3aGVuIGNvbXBpbGUgKi8NCj4gPiA+ICsvKiB7 IGRnLWRvIGNvbXBpbGUgfSAqLw0KPiA+ID4gKy8qIHsgZGctb3B0aW9ucyAiLW1hcmNoPXJ2NjRn Y3YgLW1hYmk9bHA2NGQgLU8zIiB9ICovDQo+ID4gPiArDQo+ID4gPiArI2luY2x1ZGUgInJpc2N2 X3ZlY3Rvci5oIg0KPiA+ID4gKw0KPiA+ID4gK3ZmbG9hdDMybTFfdA0KPiA+ID4gK19fYXR0cmli dXRlX18oKHRhcmdldCgiYXJjaD0renZlMzJ4IikpKQ0KPiA+ID4gK3Rlc3RfMSAodmZsb2F0MzJt MV90IGEsIHZmbG9hdDMybTFfdCBiLCBzaXplX3QgdmwpDQo+ID4gPiArew0KPiA+ID4gKyAgcmV0 dXJuIF9fcmlzY3ZfdmZhZGRfdnZfZjMybTEgKGEsIGIsIHZsKTsNCj4gPiA+ICt9DQo+ID4gPiBk aWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3Rhcmdl dF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy00NC5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFy Z2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy00NC5j DQo+ID4gPiBuZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiA+ID4gaW5kZXggMDAwMDAwMDAwMDAuLmNl NmY5N2Q4NTg0DQo+ID4gPiAtLS0gL2Rldi9udWxsDQo+ID4gPiArKysgYi9nY2MvdGVzdHN1aXRl L2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmlu c2ljLTQ0LmMNCj4gPiA+IEBAIC0wLDAgKzEsMTIgQEANCj4gPiA+ICsvKiBUZXN0IHRoYXQgd2Ug ZG8gbm90IGhhdmUgZXJyb3Igd2hlbiBjb21waWxlICovDQo+ID4gPiArLyogeyBkZy1kbyBjb21w aWxlIH0gKi8NCj4gPiA+ICsvKiB7IGRnLW9wdGlvbnMgIi1tYXJjaD1ydjY0Z2N2IC1tYWJpPWxw NjRkIC1PMyIgfSAqLw0KPiA+ID4gKw0KPiA+ID4gKyNpbmNsdWRlICJyaXNjdl92ZWN0b3IuaCIN Cj4gPiA+ICsNCj4gPiA+ICt2ZmxvYXQ2NG0xX3QNCj4gPiA+ICtfX2F0dHJpYnV0ZV9fKCh0YXJn ZXQoImFyY2g9K3p2ZTMyeCIpKSkNCj4gPiA+ICt0ZXN0XzEgKHZmbG9hdDY0bTFfdCBhLCB2Zmxv YXQ2NG0xX3QgYiwgc2l6ZV90IHZsKQ0KPiA+ID4gK3sNCj4gPiA+ICsgIHJldHVybiBfX3Jpc2N2 X3ZmYWRkX3Z2X2Y2NG0xIChhLCBiLCB2bCk7DQo+ID4gPiArfQ0KPiA+ID4gZGlmZiAtLWdpdCBh L2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRl X3Zfd2l0aF9pbnRyaW5zaWMtNDUuYyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9y dnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtNDUuYw0KPiA+ID4gbmV3 IGZpbGUgbW9kZSAxMDA2NDQNCj4gPiA+IGluZGV4IDAwMDAwMDAwMDAwLi5kYmY5MmEzZGYyNA0K PiA+ID4gLS0tIC9kZXYvbnVsbA0KPiA+ID4gKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0 L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy00NS5jDQo+ ID4gPiBAQCAtMCwwICsxLDEyIEBADQo+ID4gPiArLyogVGVzdCB0aGF0IHdlIGRvIG5vdCBoYXZl IGVycm9yIHdoZW4gY29tcGlsZSAqLw0KPiA+ID4gKy8qIHsgZGctZG8gY29tcGlsZSB9ICovDQo+ ID4gPiArLyogeyBkZy1vcHRpb25zICItbWFyY2g9cnY2NGdjdiAtbWFiaT1scDY0ZCAtTzMiIH0g Ki8NCj4gPiA+ICsNCj4gPiA+ICsjaW5jbHVkZSAicmlzY3ZfdmVjdG9yLmgiDQo+ID4gPiArDQo+ ID4gPiArdmZsb2F0NjRtMV90DQo+ID4gPiArX19hdHRyaWJ1dGVfXygodGFyZ2V0KCJhcmNoPSt6 dmU2NHgiKSkpDQo+ID4gPiArdGVzdF8xICh2ZmxvYXQ2NG0xX3QgYSwgdmZsb2F0NjRtMV90IGIs IHNpemVfdCB2bCkNCj4gPiA+ICt7DQo+ID4gPiArICByZXR1cm4gX19yaXNjdl92ZmFkZF92dl9m NjRtMSAoYSwgYiwgdmwpOw0KPiA+ID4gK30NCj4gPiA+IGRpZmYgLS1naXQgYS9nY2MvdGVzdHN1 aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50 cmluc2ljLTQ2LmMgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFy Z2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTQ2LmMNCj4gPiA+IG5ldyBmaWxlIG1vZGUg MTAwNjQ0DQo+ID4gPiBpbmRleCAwMDAwMDAwMDAwMC4uNmQyZTRlMjdiZjQNCj4gPiA+IC0tLSAv ZGV2L251bGwNCj4gPiA+ICsrKyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYv YmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtNDYuYw0KPiA+ID4gQEAgLTAs MCArMSwxMiBAQA0KPiA+ID4gKy8qIFRlc3QgdGhhdCB3ZSBkbyBub3QgaGF2ZSBlcnJvciB3aGVu IGNvbXBpbGUgKi8NCj4gPiA+ICsvKiB7IGRnLWRvIGNvbXBpbGUgfSAqLw0KPiA+ID4gKy8qIHsg ZGctb3B0aW9ucyAiLW1hcmNoPXJ2NjRnY3YgLW1hYmk9bHA2NGQgLU8zIiB9ICovDQo+ID4gPiAr DQo+ID4gPiArI2luY2x1ZGUgInJpc2N2X3ZlY3Rvci5oIg0KPiA+ID4gKw0KPiA+ID4gK3ZmbG9h dDMybTFfdA0KPiA+ID4gK19fYXR0cmlidXRlX18oKHRhcmdldCgiYXJjaD0renZlNjR4IikpKQ0K PiA+ID4gK3Rlc3RfMSAodmZsb2F0MzJtMV90IGEsIHZmbG9hdDMybTFfdCBiLCBzaXplX3Qgdmwp DQo+ID4gPiArew0KPiA+ID4gKyAgcmV0dXJuIF9fcmlzY3ZfdmZhZGRfdnZfZjMybTEgKGEsIGIs IHZsKTsNCj4gPiA+ICt9DQo+ID4gPiBkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFy Z2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy00Ny5j IGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1 dGVfdl93aXRoX2ludHJpbnNpYy00Ny5jDQo+ID4gPiBuZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiA+ ID4gaW5kZXggMDAwMDAwMDAwMDAuLjk0YmJjYjA1ZTRkDQo+ID4gPiAtLS0gL2Rldi9udWxsDQo+ ID4gPiArKysgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0 X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTQ3LmMNCj4gPiA+IEBAIC0wLDAgKzEsMTIgQEAN Cj4gPiA+ICsvKiBUZXN0IHRoYXQgd2UgZG8gbm90IGhhdmUgZXJyb3Igd2hlbiBjb21waWxlICov DQo+ID4gPiArLyogeyBkZy1kbyBjb21waWxlIH0gKi8NCj4gPiA+ICsvKiB7IGRnLW9wdGlvbnMg Ii1tYXJjaD1ydjY0Z2MgLW1hYmk9bHA2NGQgLU8zIiB9ICovDQo+ID4gPiArDQo+ID4gPiArI2lu Y2x1ZGUgInJpc2N2X3ZlY3Rvci5oIg0KPiA+ID4gKw0KPiA+ID4gK3Z1aW50MzJtMV90DQo+ID4g PiArX19hdHRyaWJ1dGVfXygodGFyZ2V0KCJhcmNoPSt6dmJiIikpKQ0KPiA+ID4gK3Rlc3RfMSAo dnVpbnQzMm0xX3QgYSwgdnVpbnQzMm0xX3QgYiwgc2l6ZV90IHZsKQ0KPiA+ID4gK3sNCj4gPiA+ ICsgIHJldHVybiBfX3Jpc2N2X3ZhbmRuX3Z2X3UzMm0xIChhLCBiLCB2bCk7DQo+ID4gPiArfQ0K PiA+ID4gZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFz ZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtNDguYyBiL2djYy90ZXN0c3VpdGUv Z2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5z aWMtNDguYw0KPiA+ID4gbmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4gPiA+IGluZGV4IDAwMDAwMDAw MDAwLi4wNTRiNzYzMGZhOQ0KPiA+ID4gLS0tIC9kZXYvbnVsbA0KPiA+ID4gKysrIGIvZ2NjL3Rl c3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRo X2ludHJpbnNpYy00OC5jDQo+ID4gPiBAQCAtMCwwICsxLDEyIEBADQo+ID4gPiArLyogVGVzdCB0 aGF0IHdlIGRvIG5vdCBoYXZlIGVycm9yIHdoZW4gY29tcGlsZSAqLw0KPiA+ID4gKy8qIHsgZGct ZG8gY29tcGlsZSB9ICovDQo+ID4gPiArLyogeyBkZy1vcHRpb25zICItbWFyY2g9cnY2NGdjIC1t YWJpPWxwNjRkIC1PMyIgfSAqLw0KPiA+ID4gKw0KPiA+ID4gKyNpbmNsdWRlICJyaXNjdl92ZWN0 b3IuaCINCj4gPiA+ICsNCj4gPiA+ICt2dWludDMybTFfdA0KPiA+ID4gK19fYXR0cmlidXRlX18o KHRhcmdldCgiYXJjaD0renZrbmhhIikpKQ0KPiA+ID4gK3Rlc3RfMSAodnVpbnQzMm0xX3QgYSwg dnVpbnQzMm0xX3QgYiwgdnVpbnQzMm0xX3QgYywgc2l6ZV90IHZsKQ0KPiA+ID4gK3sNCj4gPiA+ ICsgIHJldHVybiBfX3Jpc2N2X3ZzaGEyY2hfdnZfdTMybTEgKGEsIGIsIGMsIHZsKTsNCj4gPiA+ ICt9DQo+ID4gPiBkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2 di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy00OS5jIGIvZ2NjL3Rlc3Rz dWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2lu dHJpbnNpYy00OS5jDQo+ID4gPiBuZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiA+ID4gaW5kZXggMDAw MDAwMDAwMDAuLmIyZTY2NThmNGQzDQo+ID4gPiAtLS0gL2Rldi9udWxsDQo+ID4gPiArKysgYi9n Y2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92 X3dpdGhfaW50cmluc2ljLTQ5LmMNCj4gPiA+IEBAIC0wLDAgKzEsMTIgQEANCj4gPiA+ICsvKiBU ZXN0IHRoYXQgd2UgZG8gbm90IGhhdmUgZXJyb3Igd2hlbiBjb21waWxlICovDQo+ID4gPiArLyog eyBkZy1kbyBjb21waWxlIH0gKi8NCj4gPiA+ICsvKiB7IGRnLW9wdGlvbnMgIi1tYXJjaD1ydjY0 Z2MgLW1hYmk9bHA2NGQgLU8zIiB9ICovDQo+ID4gPiArDQo+ID4gPiArI2luY2x1ZGUgInJpc2N2 X3ZlY3Rvci5oIg0KPiA+ID4gKw0KPiA+ID4gK3Z1aW50MzJtMl90DQo+ID4gPiArX19hdHRyaWJ1 dGVfXygodGFyZ2V0KCJhcmNoPSt6dmtzaCIpKSkNCj4gPiA+ICt0ZXN0XzEgKHZ1aW50MzJtMl90 IGEsIHZ1aW50MzJtMl90IGIsIHNpemVfdCB2bCkNCj4gPiA+ICt7DQo+ID4gPiArICByZXR1cm4g X19yaXNjdl92c20zbWVfdnZfdTMybTIgKGEsIGIsIHZsKTsNCj4gPiA+ICt9DQo+ID4gPiBkaWZm IC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9h dHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy01MC5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0 L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy01MC5jDQo+ ID4gPiBuZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiA+ID4gaW5kZXggMDAwMDAwMDAwMDAuLjg1NzRj ZDA0OWNmDQo+ID4gPiAtLS0gL2Rldi9udWxsDQo+ID4gPiArKysgYi9nY2MvdGVzdHN1aXRlL2dj Yy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2lj LTUwLmMNCj4gPiA+IEBAIC0wLDAgKzEsMTIgQEANCj4gPiA+ICsvKiBUZXN0IHRoYXQgd2UgZG8g bm90IGhhdmUgZXJyb3Igd2hlbiBjb21waWxlICovDQo+ID4gPiArLyogeyBkZy1kbyBjb21waWxl IH0gKi8NCj4gPiA+ICsvKiB7IGRnLW9wdGlvbnMgIi1tYXJjaD1ydjY0Z2MgLW1hYmk9bHA2NGQg LU8zIiB9ICovDQo+ID4gPiArDQo+ID4gPiArI2luY2x1ZGUgInJpc2N2X3ZlY3Rvci5oIg0KPiA+ ID4gKw0KPiA+ID4gK3Z1aW50MzJtMV90DQo+ID4gPiArX19hdHRyaWJ1dGVfXygodGFyZ2V0KCJh cmNoPSt6dmtuZWQiKSkpDQo+ID4gPiArdGVzdF8xICh2dWludDMybTFfdCBhLCB2dWludDMybTFf dCBiLCBzaXplX3QgdmwpDQo+ID4gPiArew0KPiA+ID4gKyAgcmV0dXJuIF9fcmlzY3ZfdmFlc2Rt X3Z2X3UzMm0xIChhLCBiLCB2bCk7DQo+ID4gPiArfQ0KPiA+ID4gZGlmZiAtLWdpdCBhL2djYy90 ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0 aF9pbnRyaW5zaWMtNTEuYyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFz ZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtNTEuYw0KPiA+ID4gbmV3IGZpbGUg bW9kZSAxMDA2NDQNCj4gPiA+IGluZGV4IDAwMDAwMDAwMDAwLi5lMjdiNGQ1ZmJiMw0KPiA+ID4g LS0tIC9kZXYvbnVsbA0KPiA+ID4gKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2 L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy01MS5jDQo+ID4gPiBA QCAtMCwwICsxLDEyIEBADQo+ID4gPiArLyogVGVzdCB0aGF0IHdlIGRvIG5vdCBoYXZlIGVycm9y IHdoZW4gY29tcGlsZSAqLw0KPiA+ID4gKy8qIHsgZGctZG8gY29tcGlsZSB9ICovDQo+ID4gPiAr LyogeyBkZy1vcHRpb25zICItbWFyY2g9cnY2NGdjIC1tYWJpPWxwNjRkIC1PMyIgfSAqLw0KPiA+ ID4gKw0KPiA+ID4gKyNpbmNsdWRlICJyaXNjdl92ZWN0b3IuaCINCj4gPiA+ICsNCj4gPiA+ICt2 dWludDMybTFfdA0KPiA+ID4gK19fYXR0cmlidXRlX18oKHRhcmdldCgiYXJjaD0renZrZyIpKSkN Cj4gPiA+ICt0ZXN0XzEgKHZ1aW50MzJtMV90IGEsIHZ1aW50MzJtMV90IGIsIHNpemVfdCB2bCkN Cj4gPiA+ICt7DQo+ID4gPiArICByZXR1cm4gX19yaXNjdl92Z211bF92dl91MzJtMSAoYSwgYiwg dmwpOw0KPiA+ID4gK30NCj4gPiA+IGRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2djYy50YXJn ZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTUyLmMg Yi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0 ZV92X3dpdGhfaW50cmluc2ljLTUyLmMNCj4gPiA+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0DQo+ID4g PiBpbmRleCAwMDAwMDAwMDAwMC4uMjIxM2M2ZmUzNWQNCj4gPiA+IC0tLSAvZGV2L251bGwNCj4g PiA+ICsrKyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRf YXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtNTIuYw0KPiA+ID4gQEAgLTAsMCArMSwxMiBAQA0K PiA+ID4gKy8qIFRlc3QgdGhhdCB3ZSBkbyBub3QgaGF2ZSBlcnJvciB3aGVuIGNvbXBpbGUgKi8N Cj4gPiA+ICsvKiB7IGRnLWRvIGNvbXBpbGUgfSAqLw0KPiA+ID4gKy8qIHsgZGctb3B0aW9ucyAi LW1hcmNoPXJ2NjRnYyAtbWFiaT1scDY0ZCAtTzMiIH0gKi8NCj4gPiA+ICsNCj4gPiA+ICsjaW5j bHVkZSAicmlzY3ZfdmVjdG9yLmgiDQo+ID4gPiArDQo+ID4gPiArdnVpbnQzMm0yX3QNCj4gPiA+ ICtfX2F0dHJpYnV0ZV9fKCh0YXJnZXQoImFyY2g9K3p2a3NlZCIpKSkNCj4gPiA+ICt0ZXN0XzEg KHZ1aW50MzJtMl90IGEsIHZ1aW50MzJtMl90IGIsIHNpemVfdCB2bCkNCj4gPiA+ICt7DQo+ID4g PiArICByZXR1cm4gX19yaXNjdl92c200cl92dl91MzJtMiAoYSwgYiwgdmwpOw0KPiA+ID4gK30N Cj4gPiA+IGRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jh c2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTUzLmMgYi9nY2MvdGVzdHN1aXRl L2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmlu c2ljLTUzLmMNCj4gPiA+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0DQo+ID4gPiBpbmRleCAwMDAwMDAw MDAwMC4uNjY5MDFjYzcyYWQNCj4gPiA+IC0tLSAvZGV2L251bGwNCj4gPiA+ICsrKyBiL2djYy90 ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0 aF9pbnRyaW5zaWMtNTMuYw0KPiA+ID4gQEAgLTAsMCArMSwxMiBAQA0KPiA+ID4gKy8qIFRlc3Qg dGhhdCB3ZSBkbyBub3QgaGF2ZSBlcnJvciB3aGVuIGNvbXBpbGUgKi8NCj4gPiA+ICsvKiB7IGRn LWRvIGNvbXBpbGUgfSAqLw0KPiA+ID4gKy8qIHsgZGctb3B0aW9ucyAiLW1hcmNoPXJ2NjRnYyAt bWFiaT1scDY0ZCAtTzMiIH0gKi8NCj4gPiA+ICsNCj4gPiA+ICsjaW5jbHVkZSAicmlzY3ZfdmVj dG9yLmgiDQo+ID4gPiArDQo+ID4gPiArdnVpbnQzMm0xX3QNCj4gPiA+ICtfX2F0dHJpYnV0ZV9f KCh0YXJnZXQoImFyY2g9K3p2a25oYiIpKSkNCj4gPiA+ICt0ZXN0XzEgKHZ1aW50MzJtMV90IGEs IHZ1aW50MzJtMV90IGIsIHZ1aW50MzJtMV90IGMsIHNpemVfdCB2bCkNCj4gPiA+ICt7DQo+ID4g PiArICByZXR1cm4gX19yaXNjdl92c2hhMmNoX3Z2X3UzMm0xIChhLCBiLCBjLCB2bCk7DQo+ID4g PiArfQ0KPiA+ID4gZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9y dnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtOS5jIGIvZ2NjL3Rlc3Rz dWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2lu dHJpbnNpYy05LmMNCj4gPiA+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0DQo+ID4gPiBpbmRleCAwMDAw MDAwMDAwMC4uMDc2NGY0MDNiODkNCj4gPiA+IC0tLSAvZGV2L251bGwNCj4gPiA+ICsrKyBiL2dj Yy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zf d2l0aF9pbnRyaW5zaWMtOS5jDQo+ID4gPiBAQCAtMCwwICsxLDEyIEBADQo+ID4gPiArLyogVGVz dCB0aGF0IHdlIGRvIG5vdCBoYXZlIGVycm9yIHdoZW4gY29tcGlsZSAqLw0KPiA+ID4gKy8qIHsg ZGctZG8gY29tcGlsZSB9ICovDQo+ID4gPiArLyogeyBkZy1vcHRpb25zICItbWFyY2g9cnY2NGdj IC1tYWJpPWxwNjRkIC1PMyIgfSAqLw0KPiA+ID4gKw0KPiA+ID4gKyNpbmNsdWRlICJyaXNjdl92 ZWN0b3IuaCINCj4gPiA+ICsNCj4gPiA+ICt2ZmxvYXQzMm0xX3QNCj4gPiA+ICtfX2F0dHJpYnV0 ZV9fKCh0YXJnZXQoImFyY2g9K3YiKSkpDQo+ID4gPiArdGVzdF8xICh2ZmxvYXQzMm0xX3QgYSwg dmZsb2F0MzJtMV90IGIsIHNpemVfdCB2bCkNCj4gPiA+ICt7DQo+ID4gPiArICByZXR1cm4gX19y aXNjdl92ZmFkZF92dl9mMzJtMSAoYSwgYiwgdmwpOw0KPiA+ID4gK30NCj4gPiA+IGRpZmYgLS1n aXQgYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdXNlci0xMC5jIGIv Z2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3VzZXItMTAuYw0KPiA+ID4g aW5kZXggZmRjMjhjNzc0MjYuLjZiYjk0NjBkNmQyIDEwMDY0NA0KPiA+ID4gLS0tIGEvZ2NjL3Rl c3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3VzZXItMTAuYw0KPiA+ID4gKysrIGIv Z2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3VzZXItMTAuYw0KPiA+ID4g QEAgLTE5MywxNCArMTkzLDMxIEBAIHZvaWQgZl92ZmxvYXQzMm0yeDJfdCAoKSB7dmZsb2F0MzJt MngyX3QgdDt9DQo+ID4gPiAgdm9pZCBmX3ZmbG9hdDMybTJ4M190ICgpIHt2ZmxvYXQzMm0yeDNf dCB0O30NCj4gPiA+ICB2b2lkIGZfdmZsb2F0MzJtMng0X3QgKCkge3ZmbG9hdDMybTJ4NF90IHQ7 fQ0KPiA+ID4gIHZvaWQgZl92ZmxvYXQzMm00eDJfdCAoKSB7dmZsb2F0MzJtNHgyX3QgdDt9DQo+ ID4gPiAtdm9pZCBmX3ZmbG9hdDY0bTF4Ml90ICgpIHt2ZmxvYXQ2NG0xeDJfdCB0O30gLyogeyBk Zy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDY0bTF4Ml90J30gfSAqLw0KPiA+ID4g LXZvaWQgZl92ZmxvYXQ2NG0xeDNfdCAoKSB7dmZsb2F0NjRtMXgzX3QgdDt9IC8qIHsgZGctZXJy b3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQ2NG0xeDNfdCd9IH0gKi8NCj4gPiA+IC12b2lk IGZfdmZsb2F0NjRtMXg0X3QgKCkge3ZmbG9hdDY0bTF4NF90IHQ7fSAvKiB7IGRnLWVycm9yIHt1 bmtub3duIHR5cGUgbmFtZSAndmZsb2F0NjRtMXg0X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3Zm bG9hdDY0bTF4NV90ICgpIHt2ZmxvYXQ2NG0xeDVfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93 biB0eXBlIG5hbWUgJ3ZmbG9hdDY0bTF4NV90J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92ZmxvYXQ2 NG0xeDZfdCAoKSB7dmZsb2F0NjRtMXg2X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlw ZSBuYW1lICd2ZmxvYXQ2NG0xeDZfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdmZsb2F0NjRtMXg3 X3QgKCkge3ZmbG9hdDY0bTF4N190IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFt ZSAndmZsb2F0NjRtMXg3X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3ZmbG9hdDY0bTF4OF90ICgp IHt2ZmxvYXQ2NG0xeDhfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Zm bG9hdDY0bTF4OF90J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92ZmxvYXQ2NG0yeDJfdCAoKSB7dmZs b2F0NjRtMngyX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQ2 NG0yeDJfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdmZsb2F0NjRtMngzX3QgKCkge3ZmbG9hdDY0 bTJ4M190IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0NjRtMngz X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3ZmbG9hdDY0bTJ4NF90ICgpIHt2ZmxvYXQ2NG0yeDRf dCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDY0bTJ4NF90J30g fSAqLw0KPiA+ID4gLXZvaWQgZl92ZmxvYXQ2NG00eDJfdCAoKSB7dmZsb2F0NjRtNHgyX3QgdDt9 IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQ2NG00eDJfdCd9IH0gKi8N Cj4gPiA+ICsNCj4gPiA+ICsvKiBUbyBzdXBwb3J0IHRhcmdldCBhdHRyaWJ1dGUsIHRoZSB2Zmxv YXQqbSp4Kl90IG5lZWQgdG8gYmUgcmVnaXN0ZXJlZA0KPiA+ID4gKyAgIGluIGFkdmFuY2UuICBX ZSBhZGQgdHlwZSBhbmQgYXJncy9yZXR1cm4gdmFsdWUgY2hlY2sgZHVyaW5nIHRoZQ0KPiA+ID4g KyAgIHNldCBjdXJyZW50IGZ1bmN0aW9uIGJ1dCBjYW5ub3QgY292ZXIgYmVsb3cgY2FzZXMuICBJ dCBpcyB0aGUgc2FtZQ0KPiA+ID4gKyAgIGJlaGF2aW9yIGNvbXBhcmVkIHRvIGFhcmNoNjQgc3Zl LiAgKi8NCj4gPiA+ICt2b2lkIGZfdmZsb2F0NjRtMXgyX3QgKCkge3ZmbG9hdDY0bTF4Ml90IHQ7 fQ0KPiA+ID4gK3ZvaWQgZl92ZmxvYXQ2NG0xeDNfdCAoKSB7dmZsb2F0NjRtMXgzX3QgdDt9DQo+ ID4gPiArdm9pZCBmX3ZmbG9hdDY0bTF4NF90ICgpIHt2ZmxvYXQ2NG0xeDRfdCB0O30NCj4gPiA+ ICt2b2lkIGZfdmZsb2F0NjRtMXg1X3QgKCkge3ZmbG9hdDY0bTF4NV90IHQ7fQ0KPiA+ID4gK3Zv aWQgZl92ZmxvYXQ2NG0xeDZfdCAoKSB7dmZsb2F0NjRtMXg2X3QgdDt9DQo+ID4gPiArdm9pZCBm X3ZmbG9hdDY0bTF4N190ICgpIHt2ZmxvYXQ2NG0xeDdfdCB0O30NCj4gPiA+ICt2b2lkIGZfdmZs b2F0NjRtMXg4X3QgKCkge3ZmbG9hdDY0bTF4OF90IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92ZmxvYXQ2 NG0yeDJfdCAoKSB7dmZsb2F0NjRtMngyX3QgdDt9DQo+ID4gPiArdm9pZCBmX3ZmbG9hdDY0bTJ4 M190ICgpIHt2ZmxvYXQ2NG0yeDNfdCB0O30NCj4gPiA+ICt2b2lkIGZfdmZsb2F0NjRtMng0X3Qg KCkge3ZmbG9hdDY0bTJ4NF90IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92ZmxvYXQ2NG00eDJfdCAoKSB7 dmZsb2F0NjRtNHgyX3QgdDt9DQo+ID4gPiArDQo+ID4gPiArdm9pZCBuZXdfZl92ZmxvYXQ2NG0x eDJfdCAodmZsb2F0NjRtMXgyX3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUg J3ZmbG9hdDY0bTF4Ml90JyByZXF1aXJlcyB0aGUgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0g fSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdmZsb2F0NjRtMXgzX3QgKHZmbG9hdDY0bTF4M190IHQp IHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQ2NG0xeDNfdCcgcmVxdWly ZXMgdGhlIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19m X3ZmbG9hdDY0bTF4NF90ICh2ZmxvYXQ2NG0xeDRfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJn dW1lbnQgdHlwZSAndmZsb2F0NjRtMXg0X3QnIHJlcXVpcmVzIHRoZSB6dmU2NGQgb3IgdiBJU0Eg ZXh0ZW5zaW9ufSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZl92ZmxvYXQ2NG0xeDVfdCAodmZsb2F0 NjRtMXg1X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDY0bTF4 NV90JyByZXF1aXJlcyB0aGUgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4g K3ZvaWQgbmV3X2ZfdmZsb2F0NjRtMXg2X3QgKHZmbG9hdDY0bTF4Nl90IHQpIHsgfSAvKiB7IGRn LWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQ2NG0xeDZfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0 ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mX3ZmbG9hdDY0bTF4 N190ICh2ZmxvYXQ2NG0xeDdfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAn dmZsb2F0NjRtMXg3X3QnIHJlcXVpcmVzIHRoZSB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9 ICovDQo+ID4gPiArdm9pZCBuZXdfZl92ZmxvYXQ2NG0xeDhfdCAodmZsb2F0NjRtMXg4X3QgdCkg eyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDY0bTF4OF90JyByZXF1aXJl cyB0aGUgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2Zf dmZsb2F0NjRtMngyX3QgKHZmbG9hdDY0bTJ4Ml90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1 bWVudCB0eXBlICd2ZmxvYXQ2NG0yeDJfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0ZCBvciB2IElTQSBl eHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mX3ZmbG9hdDY0bTJ4M190ICh2ZmxvYXQ2 NG0yeDNfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0NjRtMngz X3QnIHJlcXVpcmVzIHRoZSB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gPiAr dm9pZCBuZXdfZl92ZmxvYXQ2NG0yeDRfdCAodmZsb2F0NjRtMng0X3QgdCkgeyB9IC8qIHsgZGct ZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDY0bTJ4NF90JyByZXF1aXJlcyB0aGUgenZlNjRk IG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdmZsb2F0NjRtNHgy X3QgKHZmbG9hdDY0bTR4Ml90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2 ZmxvYXQ2NG00eDJfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0g Ki8NCj4gPiA+IGRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2 L2Jhc2UvdXNlci0xMi5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNl L3VzZXItMTIuYw0KPiA+ID4gaW5kZXggMzMyZmY3NjI3YjYuLjJmMmMxNTBlZWIwIDEwMDY0NA0K PiA+ID4gLS0tIGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3VzZXIt MTIuYw0KPiA+ID4gKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNl L3VzZXItMTIuYw0KPiA+ID4gQEAgLTMsMjAgKzMsMjAgQEANCj4gPiA+DQo+ID4gPiAgI2luY2x1 ZGUgInJpc2N2X3ZlY3Rvci5oIg0KPiA+ID4NCj4gPiA+IC12b2lkIGZfdmludDhtZjh4Ml90ICgp IHt2aW50OG1mOHgyX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2aW50 OG1mOHgyX3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3Z1aW50OG1mOHgyX3QgKCkge3Z1aW50OG1m OHgyX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2dWludDhtZjh4Ml90 J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92aW50OG1mOHgzX3QgKCkge3ZpbnQ4bWY4eDNfdCB0O30g LyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQ4bWY4eDNfdCd9IH0gKi8NCj4g PiA+IC12b2lkIGZfdnVpbnQ4bWY4eDNfdCAoKSB7dnVpbnQ4bWY4eDNfdCB0O30gLyogeyBkZy1l cnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1aW50OG1mOHgzX3QnfSB9ICovDQo+ID4gPiAtdm9p ZCBmX3ZpbnQ4bWY4eDRfdCAoKSB7dmludDhtZjh4NF90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtu b3duIHR5cGUgbmFtZSAndmludDhtZjh4NF90J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92dWludDht Zjh4NF90ICgpIHt2dWludDhtZjh4NF90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUg bmFtZSAndnVpbnQ4bWY4eDRfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdmludDhtZjh4NV90ICgp IHt2aW50OG1mOHg1X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2aW50 OG1mOHg1X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3Z1aW50OG1mOHg1X3QgKCkge3Z1aW50OG1m OHg1X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2dWludDhtZjh4NV90 J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92aW50OG1mOHg2X3QgKCkge3ZpbnQ4bWY4eDZfdCB0O30g LyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQ4bWY4eDZfdCd9IH0gKi8NCj4g PiA+IC12b2lkIGZfdnVpbnQ4bWY4eDZfdCAoKSB7dnVpbnQ4bWY4eDZfdCB0O30gLyogeyBkZy1l cnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1aW50OG1mOHg2X3QnfSB9ICovDQo+ID4gPiAtdm9p ZCBmX3ZpbnQ4bWY4eDdfdCAoKSB7dmludDhtZjh4N190IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtu b3duIHR5cGUgbmFtZSAndmludDhtZjh4N190J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92dWludDht Zjh4N190ICgpIHt2dWludDhtZjh4N190IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUg bmFtZSAndnVpbnQ4bWY4eDdfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdmludDhtZjh4OF90ICgp IHt2aW50OG1mOHg4X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2aW50 OG1mOHg4X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3Z1aW50OG1mOHg4X3QgKCkge3Z1aW50OG1m OHg4X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2dWludDhtZjh4OF90 J30gfSAqLw0KPiA+ID4gK3ZvaWQgZl92aW50OG1mOHgyX3QgKCkge3ZpbnQ4bWY4eDJfdCB0O30N Cj4gPiA+ICt2b2lkIGZfdnVpbnQ4bWY4eDJfdCAoKSB7dnVpbnQ4bWY4eDJfdCB0O30NCj4gPiA+ ICt2b2lkIGZfdmludDhtZjh4M190ICgpIHt2aW50OG1mOHgzX3QgdDt9DQo+ID4gPiArdm9pZCBm X3Z1aW50OG1mOHgzX3QgKCkge3Z1aW50OG1mOHgzX3QgdDt9DQo+ID4gPiArdm9pZCBmX3ZpbnQ4 bWY4eDRfdCAoKSB7dmludDhtZjh4NF90IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92dWludDhtZjh4NF90 ICgpIHt2dWludDhtZjh4NF90IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92aW50OG1mOHg1X3QgKCkge3Zp bnQ4bWY4eDVfdCB0O30NCj4gPiA+ICt2b2lkIGZfdnVpbnQ4bWY4eDVfdCAoKSB7dnVpbnQ4bWY4 eDVfdCB0O30NCj4gPiA+ICt2b2lkIGZfdmludDhtZjh4Nl90ICgpIHt2aW50OG1mOHg2X3QgdDt9 DQo+ID4gPiArdm9pZCBmX3Z1aW50OG1mOHg2X3QgKCkge3Z1aW50OG1mOHg2X3QgdDt9DQo+ID4g PiArdm9pZCBmX3ZpbnQ4bWY4eDdfdCAoKSB7dmludDhtZjh4N190IHQ7fQ0KPiA+ID4gK3ZvaWQg Zl92dWludDhtZjh4N190ICgpIHt2dWludDhtZjh4N190IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92aW50 OG1mOHg4X3QgKCkge3ZpbnQ4bWY4eDhfdCB0O30NCj4gPiA+ICt2b2lkIGZfdnVpbnQ4bWY4eDhf dCAoKSB7dnVpbnQ4bWY4eDhfdCB0O30NCj4gPiA+ICB2b2lkIGZfdmludDhtZjR4Ml90ICgpIHt2 aW50OG1mNHgyX3QgdDt9DQo+ID4gPiAgdm9pZCBmX3Z1aW50OG1mNHgyX3QgKCkge3Z1aW50OG1m NHgyX3QgdDt9DQo+ID4gPiAgdm9pZCBmX3ZpbnQ4bWY0eDNfdCAoKSB7dmludDhtZjR4M190IHQ7 fQ0KPiA+ID4gQEAgLTY3LDIwICs2NywyMCBAQCB2b2lkIGZfdmludDhtMng0X3QgKCkge3ZpbnQ4 bTJ4NF90IHQ7fQ0KPiA+ID4gIHZvaWQgZl92dWludDhtMng0X3QgKCkge3Z1aW50OG0yeDRfdCB0 O30NCj4gPiA+ICB2b2lkIGZfdmludDhtNHgyX3QgKCkge3ZpbnQ4bTR4Ml90IHQ7fQ0KPiA+ID4g IHZvaWQgZl92dWludDhtNHgyX3QgKCkge3Z1aW50OG00eDJfdCB0O30NCj4gPiA+IC12b2lkIGZf dmludDE2bWY0eDJfdCAoKSB7dmludDE2bWY0eDJfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93 biB0eXBlIG5hbWUgJ3ZpbnQxNm1mNHgyX3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3Z1aW50MTZt ZjR4Ml90ICgpIHt2dWludDE2bWY0eDJfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBl IG5hbWUgJ3Z1aW50MTZtZjR4Ml90J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92aW50MTZtZjR4M190 ICgpIHt2aW50MTZtZjR4M190IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAn dmludDE2bWY0eDNfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdnVpbnQxNm1mNHgzX3QgKCkge3Z1 aW50MTZtZjR4M190IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndnVpbnQx Nm1mNHgzX3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3ZpbnQxNm1mNHg0X3QgKCkge3ZpbnQxNm1m NHg0X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2aW50MTZtZjR4NF90 J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92dWludDE2bWY0eDRfdCAoKSB7dnVpbnQxNm1mNHg0X3Qg dDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2dWludDE2bWY0eDRfdCd9IH0g Ki8NCj4gPiA+IC12b2lkIGZfdmludDE2bWY0eDVfdCAoKSB7dmludDE2bWY0eDVfdCB0O30gLyog eyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQxNm1mNHg1X3QnfSB9ICovDQo+ID4g PiAtdm9pZCBmX3Z1aW50MTZtZjR4NV90ICgpIHt2dWludDE2bWY0eDVfdCB0O30gLyogeyBkZy1l cnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1aW50MTZtZjR4NV90J30gfSAqLw0KPiA+ID4gLXZv aWQgZl92aW50MTZtZjR4Nl90ICgpIHt2aW50MTZtZjR4Nl90IHQ7fSAvKiB7IGRnLWVycm9yIHt1 bmtub3duIHR5cGUgbmFtZSAndmludDE2bWY0eDZfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdnVp bnQxNm1mNHg2X3QgKCkge3Z1aW50MTZtZjR4Nl90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3du IHR5cGUgbmFtZSAndnVpbnQxNm1mNHg2X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3ZpbnQxNm1m NHg3X3QgKCkge3ZpbnQxNm1mNHg3X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBu YW1lICd2aW50MTZtZjR4N190J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92dWludDE2bWY0eDdfdCAo KSB7dnVpbnQxNm1mNHg3X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2 dWludDE2bWY0eDdfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdmludDE2bWY0eDhfdCAoKSB7dmlu dDE2bWY0eDhfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQxNm1m NHg4X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3Z1aW50MTZtZjR4OF90ICgpIHt2dWludDE2bWY0 eDhfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1aW50MTZtZjR4OF90 J30gfSAqLw0KPiA+ID4gK3ZvaWQgZl92aW50MTZtZjR4Ml90ICgpIHt2aW50MTZtZjR4Ml90IHQ7 fQ0KPiA+ID4gK3ZvaWQgZl92dWludDE2bWY0eDJfdCAoKSB7dnVpbnQxNm1mNHgyX3QgdDt9DQo+ ID4gPiArdm9pZCBmX3ZpbnQxNm1mNHgzX3QgKCkge3ZpbnQxNm1mNHgzX3QgdDt9DQo+ID4gPiAr dm9pZCBmX3Z1aW50MTZtZjR4M190ICgpIHt2dWludDE2bWY0eDNfdCB0O30NCj4gPiA+ICt2b2lk IGZfdmludDE2bWY0eDRfdCAoKSB7dmludDE2bWY0eDRfdCB0O30NCj4gPiA+ICt2b2lkIGZfdnVp bnQxNm1mNHg0X3QgKCkge3Z1aW50MTZtZjR4NF90IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92aW50MTZt ZjR4NV90ICgpIHt2aW50MTZtZjR4NV90IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92dWludDE2bWY0eDVf dCAoKSB7dnVpbnQxNm1mNHg1X3QgdDt9DQo+ID4gPiArdm9pZCBmX3ZpbnQxNm1mNHg2X3QgKCkg e3ZpbnQxNm1mNHg2X3QgdDt9DQo+ID4gPiArdm9pZCBmX3Z1aW50MTZtZjR4Nl90ICgpIHt2dWlu dDE2bWY0eDZfdCB0O30NCj4gPiA+ICt2b2lkIGZfdmludDE2bWY0eDdfdCAoKSB7dmludDE2bWY0 eDdfdCB0O30NCj4gPiA+ICt2b2lkIGZfdnVpbnQxNm1mNHg3X3QgKCkge3Z1aW50MTZtZjR4N190 IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92aW50MTZtZjR4OF90ICgpIHt2aW50MTZtZjR4OF90IHQ7fQ0K PiA+ID4gK3ZvaWQgZl92dWludDE2bWY0eDhfdCAoKSB7dnVpbnQxNm1mNHg4X3QgdDt9DQo+ID4g PiAgdm9pZCBmX3ZpbnQxNm1mMngyX3QgKCkge3ZpbnQxNm1mMngyX3QgdDt9DQo+ID4gPiAgdm9p ZCBmX3Z1aW50MTZtZjJ4Ml90ICgpIHt2dWludDE2bWYyeDJfdCB0O30NCj4gPiA+ICB2b2lkIGZf dmludDE2bWYyeDNfdCAoKSB7dmludDE2bWYyeDNfdCB0O30NCj4gPiA+IEBAIC0xMTcsMjAgKzEx NywyMCBAQCB2b2lkIGZfdmludDE2bTJ4NF90ICgpIHt2aW50MTZtMng0X3QgdDt9DQo+ID4gPiAg dm9pZCBmX3Z1aW50MTZtMng0X3QgKCkge3Z1aW50MTZtMng0X3QgdDt9DQo+ID4gPiAgdm9pZCBm X3ZpbnQxNm00eDJfdCAoKSB7dmludDE2bTR4Ml90IHQ7fQ0KPiA+ID4gIHZvaWQgZl92dWludDE2 bTR4Ml90ICgpIHt2dWludDE2bTR4Ml90IHQ7fQ0KPiA+ID4gLXZvaWQgZl92aW50MzJtZjJ4Ml90 ICgpIHt2aW50MzJtZjJ4Ml90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAn dmludDMybWYyeDJfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdnVpbnQzMm1mMngyX3QgKCkge3Z1 aW50MzJtZjJ4Ml90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndnVpbnQz Mm1mMngyX3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3ZpbnQzMm1mMngzX3QgKCkge3ZpbnQzMm1m MngzX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2aW50MzJtZjJ4M190 J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92dWludDMybWYyeDNfdCAoKSB7dnVpbnQzMm1mMngzX3Qg dDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2dWludDMybWYyeDNfdCd9IH0g Ki8NCj4gPiA+IC12b2lkIGZfdmludDMybWYyeDRfdCAoKSB7dmludDMybWYyeDRfdCB0O30gLyog eyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQzMm1mMng0X3QnfSB9ICovDQo+ID4g PiAtdm9pZCBmX3Z1aW50MzJtZjJ4NF90ICgpIHt2dWludDMybWYyeDRfdCB0O30gLyogeyBkZy1l cnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1aW50MzJtZjJ4NF90J30gfSAqLw0KPiA+ID4gLXZv aWQgZl92aW50MzJtZjJ4NV90ICgpIHt2aW50MzJtZjJ4NV90IHQ7fSAvKiB7IGRnLWVycm9yIHt1 bmtub3duIHR5cGUgbmFtZSAndmludDMybWYyeDVfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdnVp bnQzMm1mMng1X3QgKCkge3Z1aW50MzJtZjJ4NV90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3du IHR5cGUgbmFtZSAndnVpbnQzMm1mMng1X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3ZpbnQzMm1m Mng2X3QgKCkge3ZpbnQzMm1mMng2X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBu YW1lICd2aW50MzJtZjJ4Nl90J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92dWludDMybWYyeDZfdCAo KSB7dnVpbnQzMm1mMng2X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2 dWludDMybWYyeDZfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdmludDMybWYyeDdfdCAoKSB7dmlu dDMybWYyeDdfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQzMm1m Mng3X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3Z1aW50MzJtZjJ4N190ICgpIHt2dWludDMybWYy eDdfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1aW50MzJtZjJ4N190 J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92aW50MzJtZjJ4OF90ICgpIHt2aW50MzJtZjJ4OF90IHQ7 fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmludDMybWYyeDhfdCd9IH0gKi8N Cj4gPiA+IC12b2lkIGZfdnVpbnQzMm1mMng4X3QgKCkge3Z1aW50MzJtZjJ4OF90IHQ7fSAvKiB7 IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndnVpbnQzMm1mMng4X3QnfSB9ICovDQo+ID4g PiArdm9pZCBmX3ZpbnQzMm1mMngyX3QgKCkge3ZpbnQzMm1mMngyX3QgdDt9DQo+ID4gPiArdm9p ZCBmX3Z1aW50MzJtZjJ4Ml90ICgpIHt2dWludDMybWYyeDJfdCB0O30NCj4gPiA+ICt2b2lkIGZf dmludDMybWYyeDNfdCAoKSB7dmludDMybWYyeDNfdCB0O30NCj4gPiA+ICt2b2lkIGZfdnVpbnQz Mm1mMngzX3QgKCkge3Z1aW50MzJtZjJ4M190IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92aW50MzJtZjJ4 NF90ICgpIHt2aW50MzJtZjJ4NF90IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92dWludDMybWYyeDRfdCAo KSB7dnVpbnQzMm1mMng0X3QgdDt9DQo+ID4gPiArdm9pZCBmX3ZpbnQzMm1mMng1X3QgKCkge3Zp bnQzMm1mMng1X3QgdDt9DQo+ID4gPiArdm9pZCBmX3Z1aW50MzJtZjJ4NV90ICgpIHt2dWludDMy bWYyeDVfdCB0O30NCj4gPiA+ICt2b2lkIGZfdmludDMybWYyeDZfdCAoKSB7dmludDMybWYyeDZf dCB0O30NCj4gPiA+ICt2b2lkIGZfdnVpbnQzMm1mMng2X3QgKCkge3Z1aW50MzJtZjJ4Nl90IHQ7 fQ0KPiA+ID4gK3ZvaWQgZl92aW50MzJtZjJ4N190ICgpIHt2aW50MzJtZjJ4N190IHQ7fQ0KPiA+ ID4gK3ZvaWQgZl92dWludDMybWYyeDdfdCAoKSB7dnVpbnQzMm1mMng3X3QgdDt9DQo+ID4gPiAr dm9pZCBmX3ZpbnQzMm1mMng4X3QgKCkge3ZpbnQzMm1mMng4X3QgdDt9DQo+ID4gPiArdm9pZCBm X3Z1aW50MzJtZjJ4OF90ICgpIHt2dWludDMybWYyeDhfdCB0O30NCj4gPiA+ICB2b2lkIGZfdmlu dDMybTF4Ml90ICgpIHt2aW50MzJtMXgyX3QgdDt9DQo+ID4gPiAgdm9pZCBmX3Z1aW50MzJtMXgy X3QgKCkge3Z1aW50MzJtMXgyX3QgdDt9DQo+ID4gPiAgdm9pZCBmX3ZpbnQzMm0xeDNfdCAoKSB7 dmludDMybTF4M190IHQ7fQ0KPiA+ID4gQEAgLTE1Myw1NCArMTUzLDE0MyBAQCB2b2lkIGZfdmlu dDMybTJ4NF90ICgpIHt2aW50MzJtMng0X3QgdDt9DQo+ID4gPiAgdm9pZCBmX3Z1aW50MzJtMng0 X3QgKCkge3Z1aW50MzJtMng0X3QgdDt9DQo+ID4gPiAgdm9pZCBmX3ZpbnQzMm00eDJfdCAoKSB7 dmludDMybTR4Ml90IHQ7fQ0KPiA+ID4gIHZvaWQgZl92dWludDMybTR4Ml90ICgpIHt2dWludDMy bTR4Ml90IHQ7fQ0KPiA+ID4gLXZvaWQgZl92aW50NjRtMXgyX3QgKCkge3ZpbnQ2NG0xeDJfdCB0 O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQ2NG0xeDJfdCd9IH0gKi8N Cj4gPiA+IC12b2lkIGZfdnVpbnQ2NG0xeDJfdCAoKSB7dnVpbnQ2NG0xeDJfdCB0O30gLyogeyBk Zy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1aW50NjRtMXgyX3QnfSB9ICovDQo+ID4gPiAt dm9pZCBmX3ZpbnQ2NG0xeDNfdCAoKSB7dmludDY0bTF4M190IHQ7fSAvKiB7IGRnLWVycm9yIHt1 bmtub3duIHR5cGUgbmFtZSAndmludDY0bTF4M190J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92dWlu dDY0bTF4M190ICgpIHt2dWludDY0bTF4M190IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5 cGUgbmFtZSAndnVpbnQ2NG0xeDNfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdmludDY0bTF4NF90 ICgpIHt2aW50NjRtMXg0X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2 aW50NjRtMXg0X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3Z1aW50NjRtMXg0X3QgKCkge3Z1aW50 NjRtMXg0X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2dWludDY0bTF4 NF90J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92aW50NjRtMXg1X3QgKCkge3ZpbnQ2NG0xeDVfdCB0 O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQ2NG0xeDVfdCd9IH0gKi8N Cj4gPiA+IC12b2lkIGZfdnVpbnQ2NG0xeDVfdCAoKSB7dnVpbnQ2NG0xeDVfdCB0O30gLyogeyBk Zy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1aW50NjRtMXg1X3QnfSB9ICovDQo+ID4gPiAt dm9pZCBmX3ZpbnQ2NG0xeDZfdCAoKSB7dmludDY0bTF4Nl90IHQ7fSAvKiB7IGRnLWVycm9yIHt1 bmtub3duIHR5cGUgbmFtZSAndmludDY0bTF4Nl90J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92dWlu dDY0bTF4Nl90ICgpIHt2dWludDY0bTF4Nl90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5 cGUgbmFtZSAndnVpbnQ2NG0xeDZfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdmludDY0bTF4N190 ICgpIHt2aW50NjRtMXg3X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2 aW50NjRtMXg3X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3Z1aW50NjRtMXg3X3QgKCkge3Z1aW50 NjRtMXg3X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2dWludDY0bTF4 N190J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92aW50NjRtMXg4X3QgKCkge3ZpbnQ2NG0xeDhfdCB0 O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQ2NG0xeDhfdCd9IH0gKi8N Cj4gPiA+IC12b2lkIGZfdnVpbnQ2NG0xeDhfdCAoKSB7dnVpbnQ2NG0xeDhfdCB0O30gLyogeyBk Zy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1aW50NjRtMXg4X3QnfSB9ICovDQo+ID4gPiAt dm9pZCBmX3ZpbnQ2NG0yeDJfdCAoKSB7dmludDY0bTJ4Ml90IHQ7fSAvKiB7IGRnLWVycm9yIHt1 bmtub3duIHR5cGUgbmFtZSAndmludDY0bTJ4Ml90J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92dWlu dDY0bTJ4Ml90ICgpIHt2dWludDY0bTJ4Ml90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5 cGUgbmFtZSAndnVpbnQ2NG0yeDJfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdmludDY0bTJ4M190 ICgpIHt2aW50NjRtMngzX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2 aW50NjRtMngzX3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3Z1aW50NjRtMngzX3QgKCkge3Z1aW50 NjRtMngzX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2dWludDY0bTJ4 M190J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92aW50NjRtMng0X3QgKCkge3ZpbnQ2NG0yeDRfdCB0 O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQ2NG0yeDRfdCd9IH0gKi8N Cj4gPiA+IC12b2lkIGZfdnVpbnQ2NG0yeDRfdCAoKSB7dnVpbnQ2NG0yeDRfdCB0O30gLyogeyBk Zy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1aW50NjRtMng0X3QnfSB9ICovDQo+ID4gPiAt dm9pZCBmX3ZpbnQ2NG00eDJfdCAoKSB7dmludDY0bTR4Ml90IHQ7fSAvKiB7IGRnLWVycm9yIHt1 bmtub3duIHR5cGUgbmFtZSAndmludDY0bTR4Ml90J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92dWlu dDY0bTR4Ml90ICgpIHt2dWludDY0bTR4Ml90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5 cGUgbmFtZSAndnVpbnQ2NG00eDJfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdmZsb2F0MzJtZjJ4 Ml90ICgpIHt2ZmxvYXQzMm1mMngyX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBu YW1lICd2ZmxvYXQzMm1mMngyX3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3ZmbG9hdDMybWYyeDNf dCAoKSB7dmZsb2F0MzJtZjJ4M190IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFt ZSAndmZsb2F0MzJtZjJ4M190J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92ZmxvYXQzMm1mMng0X3Qg KCkge3ZmbG9hdDMybWYyeDRfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUg J3ZmbG9hdDMybWYyeDRfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdmZsb2F0MzJtZjJ4NV90ICgp IHt2ZmxvYXQzMm1mMng1X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2 ZmxvYXQzMm1mMng1X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3ZmbG9hdDMybWYyeDZfdCAoKSB7 dmZsb2F0MzJtZjJ4Nl90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZs b2F0MzJtZjJ4Nl90J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92ZmxvYXQzMm1mMng3X3QgKCkge3Zm bG9hdDMybWYyeDdfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9h dDMybWYyeDdfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdmZsb2F0MzJtZjJ4OF90ICgpIHt2Zmxv YXQzMm1mMng4X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQz Mm1mMng4X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3ZmbG9hdDMybTF4Ml90ICgpIHt2ZmxvYXQz Mm0xeDJfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDMybTF4 Ml90J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92ZmxvYXQzMm0xeDNfdCAoKSB7dmZsb2F0MzJtMXgz X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQzMm0xeDNfdCd9 IH0gKi8NCj4gPiA+IC12b2lkIGZfdmZsb2F0MzJtMXg0X3QgKCkge3ZmbG9hdDMybTF4NF90IHQ7 fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0MzJtMXg0X3QnfSB9ICov DQo+ID4gPiAtdm9pZCBmX3ZmbG9hdDMybTF4NV90ICgpIHt2ZmxvYXQzMm0xeDVfdCB0O30gLyog eyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDMybTF4NV90J30gfSAqLw0KPiA+ ID4gLXZvaWQgZl92ZmxvYXQzMm0xeDZfdCAoKSB7dmZsb2F0MzJtMXg2X3QgdDt9IC8qIHsgZGct ZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQzMm0xeDZfdCd9IH0gKi8NCj4gPiA+IC12 b2lkIGZfdmZsb2F0MzJtMXg3X3QgKCkge3ZmbG9hdDMybTF4N190IHQ7fSAvKiB7IGRnLWVycm9y IHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0MzJtMXg3X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBm X3ZmbG9hdDMybTF4OF90ICgpIHt2ZmxvYXQzMm0xeDhfdCB0O30gLyogeyBkZy1lcnJvciB7dW5r bm93biB0eXBlIG5hbWUgJ3ZmbG9hdDMybTF4OF90J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92Zmxv YXQzMm0yeDJfdCAoKSB7dmZsb2F0MzJtMngyX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24g dHlwZSBuYW1lICd2ZmxvYXQzMm0yeDJfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdmZsb2F0MzJt MngzX3QgKCkge3ZmbG9hdDMybTJ4M190IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUg bmFtZSAndmZsb2F0MzJtMngzX3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3ZmbG9hdDMybTJ4NF90 ICgpIHt2ZmxvYXQzMm0yeDRfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUg J3ZmbG9hdDMybTJ4NF90J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92ZmxvYXQzMm00eDJfdCAoKSB7 dmZsb2F0MzJtNHgyX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2Zmxv YXQzMm00eDJfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdmZsb2F0NjRtMXgyX3QgKCkge3ZmbG9h dDY0bTF4Ml90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0NjRt MXgyX3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3ZmbG9hdDY0bTF4M190ICgpIHt2ZmxvYXQ2NG0x eDNfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDY0bTF4M190 J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92ZmxvYXQ2NG0xeDRfdCAoKSB7dmZsb2F0NjRtMXg0X3Qg dDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQ2NG0xeDRfdCd9IH0g Ki8NCj4gPiA+IC12b2lkIGZfdmZsb2F0NjRtMXg1X3QgKCkge3ZmbG9hdDY0bTF4NV90IHQ7fSAv KiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0NjRtMXg1X3QnfSB9ICovDQo+ ID4gPiAtdm9pZCBmX3ZmbG9hdDY0bTF4Nl90ICgpIHt2ZmxvYXQ2NG0xeDZfdCB0O30gLyogeyBk Zy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDY0bTF4Nl90J30gfSAqLw0KPiA+ID4g LXZvaWQgZl92ZmxvYXQ2NG0xeDdfdCAoKSB7dmZsb2F0NjRtMXg3X3QgdDt9IC8qIHsgZGctZXJy b3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQ2NG0xeDdfdCd9IH0gKi8NCj4gPiA+IC12b2lk IGZfdmZsb2F0NjRtMXg4X3QgKCkge3ZmbG9hdDY0bTF4OF90IHQ7fSAvKiB7IGRnLWVycm9yIHt1 bmtub3duIHR5cGUgbmFtZSAndmZsb2F0NjRtMXg4X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3Zm bG9hdDY0bTJ4Ml90ICgpIHt2ZmxvYXQ2NG0yeDJfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93 biB0eXBlIG5hbWUgJ3ZmbG9hdDY0bTJ4Ml90J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92ZmxvYXQ2 NG0yeDNfdCAoKSB7dmZsb2F0NjRtMngzX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlw ZSBuYW1lICd2ZmxvYXQ2NG0yeDNfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdmZsb2F0NjRtMng0 X3QgKCkge3ZmbG9hdDY0bTJ4NF90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFt ZSAndmZsb2F0NjRtMng0X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3ZmbG9hdDY0bTR4Ml90ICgp IHt2ZmxvYXQ2NG00eDJfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Zm bG9hdDY0bTR4Ml90J30gfSAqLw0KPiA+ID4gKw0KPiA+ID4gKy8qIFRvIHN1cHBvcnQgdGFyZ2V0 IGF0dHJpYnV0ZSwgdGhlIHZmbG9hdCptKngqX3QgbmVlZCB0byBiZSByZWdpc3RlcmVkDQo+ID4g PiArICAgaW4gYWR2YW5jZS4gIFdlIGFkZCB0eXBlIGFuZCBhcmdzL3JldHVybiB2YWx1ZSBjaGVj ayBkdXJpbmcgdGhlDQo+ID4gPiArICAgc2V0IGN1cnJlbnQgZnVuY3Rpb24gYnV0IGNhbm5vdCBj b3ZlciBiZWxvdyBjYXNlcy4gIEl0IGlzIHRoZSBzYW1lDQo+ID4gPiArICAgYmVoYXZpb3IgY29t cGFyZWQgdG8gYWFyY2g2NCBzdmUuICAqLw0KPiA+ID4gK3ZvaWQgZl92aW50NjRtMXgyX3QgKCkg e3ZpbnQ2NG0xeDJfdCB0O30NCj4gPiA+ICt2b2lkIGZfdnVpbnQ2NG0xeDJfdCAoKSB7dnVpbnQ2 NG0xeDJfdCB0O30NCj4gPiA+ICt2b2lkIGZfdmludDY0bTF4M190ICgpIHt2aW50NjRtMXgzX3Qg dDt9DQo+ID4gPiArdm9pZCBmX3Z1aW50NjRtMXgzX3QgKCkge3Z1aW50NjRtMXgzX3QgdDt9DQo+ ID4gPiArdm9pZCBmX3ZpbnQ2NG0xeDRfdCAoKSB7dmludDY0bTF4NF90IHQ7fQ0KPiA+ID4gK3Zv aWQgZl92dWludDY0bTF4NF90ICgpIHt2dWludDY0bTF4NF90IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92 aW50NjRtMXg1X3QgKCkge3ZpbnQ2NG0xeDVfdCB0O30NCj4gPiA+ICt2b2lkIGZfdnVpbnQ2NG0x eDVfdCAoKSB7dnVpbnQ2NG0xeDVfdCB0O30NCj4gPiA+ICt2b2lkIGZfdmludDY0bTF4Nl90ICgp IHt2aW50NjRtMXg2X3QgdDt9DQo+ID4gPiArdm9pZCBmX3Z1aW50NjRtMXg2X3QgKCkge3Z1aW50 NjRtMXg2X3QgdDt9DQo+ID4gPiArdm9pZCBmX3ZpbnQ2NG0xeDdfdCAoKSB7dmludDY0bTF4N190 IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92dWludDY0bTF4N190ICgpIHt2dWludDY0bTF4N190IHQ7fQ0K PiA+ID4gK3ZvaWQgZl92aW50NjRtMXg4X3QgKCkge3ZpbnQ2NG0xeDhfdCB0O30NCj4gPiA+ICt2 b2lkIGZfdnVpbnQ2NG0xeDhfdCAoKSB7dnVpbnQ2NG0xeDhfdCB0O30NCj4gPiA+ICt2b2lkIGZf dmludDY0bTJ4Ml90ICgpIHt2aW50NjRtMngyX3QgdDt9DQo+ID4gPiArdm9pZCBmX3Z1aW50NjRt MngyX3QgKCkge3Z1aW50NjRtMngyX3QgdDt9DQo+ID4gPiArdm9pZCBmX3ZpbnQ2NG0yeDNfdCAo KSB7dmludDY0bTJ4M190IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92dWludDY0bTJ4M190ICgpIHt2dWlu dDY0bTJ4M190IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92aW50NjRtMng0X3QgKCkge3ZpbnQ2NG0yeDRf dCB0O30NCj4gPiA+ICt2b2lkIGZfdnVpbnQ2NG0yeDRfdCAoKSB7dnVpbnQ2NG0yeDRfdCB0O30N Cj4gPiA+ICt2b2lkIGZfdmludDY0bTR4Ml90ICgpIHt2aW50NjRtNHgyX3QgdDt9DQo+ID4gPiAr dm9pZCBmX3Z1aW50NjRtNHgyX3QgKCkge3Z1aW50NjRtNHgyX3QgdDt9DQo+ID4gPiArdm9pZCBm X3ZmbG9hdDMybWYyeDJfdCAoKSB7dmZsb2F0MzJtZjJ4Ml90IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92 ZmxvYXQzMm1mMngzX3QgKCkge3ZmbG9hdDMybWYyeDNfdCB0O30NCj4gPiA+ICt2b2lkIGZfdmZs b2F0MzJtZjJ4NF90ICgpIHt2ZmxvYXQzMm1mMng0X3QgdDt9DQo+ID4gPiArdm9pZCBmX3ZmbG9h dDMybWYyeDVfdCAoKSB7dmZsb2F0MzJtZjJ4NV90IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92ZmxvYXQz Mm1mMng2X3QgKCkge3ZmbG9hdDMybWYyeDZfdCB0O30NCj4gPiA+ICt2b2lkIGZfdmZsb2F0MzJt ZjJ4N190ICgpIHt2ZmxvYXQzMm1mMng3X3QgdDt9DQo+ID4gPiArdm9pZCBmX3ZmbG9hdDMybWYy eDhfdCAoKSB7dmZsb2F0MzJtZjJ4OF90IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92ZmxvYXQzMm0xeDJf dCAoKSB7dmZsb2F0MzJtMXgyX3QgdDt9DQo+ID4gPiArdm9pZCBmX3ZmbG9hdDMybTF4M190ICgp IHt2ZmxvYXQzMm0xeDNfdCB0O30NCj4gPiA+ICt2b2lkIGZfdmZsb2F0MzJtMXg0X3QgKCkge3Zm bG9hdDMybTF4NF90IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92ZmxvYXQzMm0xeDVfdCAoKSB7dmZsb2F0 MzJtMXg1X3QgdDt9DQo+ID4gPiArdm9pZCBmX3ZmbG9hdDMybTF4Nl90ICgpIHt2ZmxvYXQzMm0x eDZfdCB0O30NCj4gPiA+ICt2b2lkIGZfdmZsb2F0MzJtMXg3X3QgKCkge3ZmbG9hdDMybTF4N190 IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92ZmxvYXQzMm0xeDhfdCAoKSB7dmZsb2F0MzJtMXg4X3QgdDt9 DQo+ID4gPiArdm9pZCBmX3ZmbG9hdDMybTJ4Ml90ICgpIHt2ZmxvYXQzMm0yeDJfdCB0O30NCj4g PiA+ICt2b2lkIGZfdmZsb2F0MzJtMngzX3QgKCkge3ZmbG9hdDMybTJ4M190IHQ7fQ0KPiA+ID4g K3ZvaWQgZl92ZmxvYXQzMm0yeDRfdCAoKSB7dmZsb2F0MzJtMng0X3QgdDt9DQo+ID4gPiArdm9p ZCBmX3ZmbG9hdDMybTR4Ml90ICgpIHt2ZmxvYXQzMm00eDJfdCB0O30NCj4gPiA+ICt2b2lkIGZf dmZsb2F0NjRtMXgyX3QgKCkge3ZmbG9hdDY0bTF4Ml90IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92Zmxv YXQ2NG0xeDNfdCAoKSB7dmZsb2F0NjRtMXgzX3QgdDt9DQo+ID4gPiArdm9pZCBmX3ZmbG9hdDY0 bTF4NF90ICgpIHt2ZmxvYXQ2NG0xeDRfdCB0O30NCj4gPiA+ICt2b2lkIGZfdmZsb2F0NjRtMXg1 X3QgKCkge3ZmbG9hdDY0bTF4NV90IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92ZmxvYXQ2NG0xeDZfdCAo KSB7dmZsb2F0NjRtMXg2X3QgdDt9DQo+ID4gPiArdm9pZCBmX3ZmbG9hdDY0bTF4N190ICgpIHt2 ZmxvYXQ2NG0xeDdfdCB0O30NCj4gPiA+ICt2b2lkIGZfdmZsb2F0NjRtMXg4X3QgKCkge3ZmbG9h dDY0bTF4OF90IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92ZmxvYXQ2NG0yeDJfdCAoKSB7dmZsb2F0NjRt MngyX3QgdDt9DQo+ID4gPiArdm9pZCBmX3ZmbG9hdDY0bTJ4M190ICgpIHt2ZmxvYXQ2NG0yeDNf dCB0O30NCj4gPiA+ICt2b2lkIGZfdmZsb2F0NjRtMng0X3QgKCkge3ZmbG9hdDY0bTJ4NF90IHQ7 fQ0KPiA+ID4gK3ZvaWQgZl92ZmxvYXQ2NG00eDJfdCAoKSB7dmZsb2F0NjRtNHgyX3QgdDt9DQo+ ID4gPiArDQo+ID4gPiArdm9pZCBuZXdfZl92aW50OG1mOHgyX3QgKHZpbnQ4bWY4eDJfdCB0KSB7 IH0gICAgIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZpbnQ4bWY4eDJfdCcgcmVxdWly ZXMgdGhlIG1pbmltYWwgdmVjdG9yIGxlbmd0aCAnNjQnIGJ1dCAnMzInIGlzIGdpdmVufSB9ICov DQo+ID4gPiArdm9pZCBuZXdfZl92dWludDhtZjh4Ml90ICh2dWludDhtZjh4Ml90IHQpIHsgfSAg IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50OG1mOHgyX3QnIHJlcXVpcmVzIHRo ZSBtaW5pbWFsIHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMyJyBpcyBnaXZlbn0gfSAqLw0KPiA+ ID4gK3ZvaWQgbmV3X2ZfdmludDhtZjh4M190ICh2aW50OG1mOHgzX3QgdCkgeyB9ICAgICAvKiB7 IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2aW50OG1mOHgzX3QnIHJlcXVpcmVzIHRoZSBtaW5p bWFsIHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMyJyBpcyBnaXZlbn0gfSAqLw0KPiA+ID4gK3Zv aWQgbmV3X2ZfdnVpbnQ4bWY4eDNfdCAodnVpbnQ4bWY4eDNfdCB0KSB7IH0gICAvKiB7IGRnLWVy cm9yIHthcmd1bWVudCB0eXBlICd2dWludDhtZjh4M190JyByZXF1aXJlcyB0aGUgbWluaW1hbCB2 ZWN0b3IgbGVuZ3RoICc2NCcgYnV0ICczMicgaXMgZ2l2ZW59IH0gKi8NCj4gPiA+ICt2b2lkIG5l d19mX3ZpbnQ4bWY4eDRfdCAodmludDhtZjh4NF90IHQpIHsgfSAgICAgLyogeyBkZy1lcnJvciB7 YXJndW1lbnQgdHlwZSAndmludDhtZjh4NF90JyByZXF1aXJlcyB0aGUgbWluaW1hbCB2ZWN0b3Ig bGVuZ3RoICc2NCcgYnV0ICczMicgaXMgZ2l2ZW59IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mX3Z1 aW50OG1mOHg0X3QgKHZ1aW50OG1mOHg0X3QgdCkgeyB9ICAgLyogeyBkZy1lcnJvciB7YXJndW1l bnQgdHlwZSAndnVpbnQ4bWY4eDRfdCcgcmVxdWlyZXMgdGhlIG1pbmltYWwgdmVjdG9yIGxlbmd0 aCAnNjQnIGJ1dCAnMzInIGlzIGdpdmVufSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZl92aW50OG1m OHg1X3QgKHZpbnQ4bWY4eDVfdCB0KSB7IH0gICAgIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5 cGUgJ3ZpbnQ4bWY4eDVfdCcgcmVxdWlyZXMgdGhlIG1pbmltYWwgdmVjdG9yIGxlbmd0aCAnNjQn IGJ1dCAnMzInIGlzIGdpdmVufSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZl92dWludDhtZjh4NV90 ICh2dWludDhtZjh4NV90IHQpIHsgfSAgIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1 aW50OG1mOHg1X3QnIHJlcXVpcmVzIHRoZSBtaW5pbWFsIHZlY3RvciBsZW5ndGggJzY0JyBidXQg JzMyJyBpcyBnaXZlbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdmludDhtZjh4Nl90ICh2aW50 OG1mOHg2X3QgdCkgeyB9ICAgICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2aW50OG1m OHg2X3QnIHJlcXVpcmVzIHRoZSBtaW5pbWFsIHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMyJyBp cyBnaXZlbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdnVpbnQ4bWY4eDZfdCAodnVpbnQ4bWY4 eDZfdCB0KSB7IH0gICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2dWludDhtZjh4Nl90 JyByZXF1aXJlcyB0aGUgbWluaW1hbCB2ZWN0b3IgbGVuZ3RoICc2NCcgYnV0ICczMicgaXMgZ2l2 ZW59IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mX3ZpbnQ4bWY4eDdfdCAodmludDhtZjh4N190IHQp IHsgfSAgICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmludDhtZjh4N190JyByZXF1 aXJlcyB0aGUgbWluaW1hbCB2ZWN0b3IgbGVuZ3RoICc2NCcgYnV0ICczMicgaXMgZ2l2ZW59IH0g Ki8NCj4gPiA+ICt2b2lkIG5ld19mX3Z1aW50OG1mOHg3X3QgKHZ1aW50OG1mOHg3X3QgdCkgeyB9 ICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndnVpbnQ4bWY4eDdfdCcgcmVxdWlyZXMg dGhlIG1pbmltYWwgdmVjdG9yIGxlbmd0aCAnNjQnIGJ1dCAnMzInIGlzIGdpdmVufSB9ICovDQo+ ID4gPiArdm9pZCBuZXdfZl92aW50OG1mOHg4X3QgKHZpbnQ4bWY4eDhfdCB0KSB7IH0gICAgIC8q IHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZpbnQ4bWY4eDhfdCcgcmVxdWlyZXMgdGhlIG1p bmltYWwgdmVjdG9yIGxlbmd0aCAnNjQnIGJ1dCAnMzInIGlzIGdpdmVufSB9ICovDQo+ID4gPiAr dm9pZCBuZXdfZl92dWludDhtZjh4OF90ICh2dWludDhtZjh4OF90IHQpIHsgfSAgIC8qIHsgZGct ZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50OG1mOHg4X3QnIHJlcXVpcmVzIHRoZSBtaW5pbWFs IHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMyJyBpcyBnaXZlbn0gfSAqLw0KPiA+ID4gK3ZvaWQg bmV3X2ZfdmludDMybWYyeDJfdCAodmludDMybWYyeDJfdCB0KSB7IH0gICAvKiB7IGRnLWVycm9y IHthcmd1bWVudCB0eXBlICd2aW50MzJtZjJ4Ml90JyByZXF1aXJlcyB0aGUgbWluaW1hbCB2ZWN0 b3IgbGVuZ3RoICc2NCcgYnV0ICczMicgaXMgZ2l2ZW59IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19m X3Z1aW50MzJtZjJ4Ml90ICh2dWludDMybWYyeDJfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJn dW1lbnQgdHlwZSAndnVpbnQzMm1mMngyX3QnIHJlcXVpcmVzIHRoZSBtaW5pbWFsIHZlY3RvciBs ZW5ndGggJzY0JyBidXQgJzMyJyBpcyBnaXZlbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2Zfdmlu dDMybWYyeDNfdCAodmludDMybWYyeDNfdCB0KSB7IH0gICAvKiB7IGRnLWVycm9yIHthcmd1bWVu dCB0eXBlICd2aW50MzJtZjJ4M190JyByZXF1aXJlcyB0aGUgbWluaW1hbCB2ZWN0b3IgbGVuZ3Ro ICc2NCcgYnV0ICczMicgaXMgZ2l2ZW59IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mX3Z1aW50MzJt ZjJ4M190ICh2dWludDMybWYyeDNfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlw ZSAndnVpbnQzMm1mMngzX3QnIHJlcXVpcmVzIHRoZSBtaW5pbWFsIHZlY3RvciBsZW5ndGggJzY0 JyBidXQgJzMyJyBpcyBnaXZlbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdmludDMybWYyeDRf dCAodmludDMybWYyeDRfdCB0KSB7IH0gICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2 aW50MzJtZjJ4NF90JyByZXF1aXJlcyB0aGUgbWluaW1hbCB2ZWN0b3IgbGVuZ3RoICc2NCcgYnV0 ICczMicgaXMgZ2l2ZW59IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mX3Z1aW50MzJtZjJ4NF90ICh2 dWludDMybWYyeDRfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndnVpbnQz Mm1mMng0X3QnIHJlcXVpcmVzIHRoZSBtaW5pbWFsIHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMy JyBpcyBnaXZlbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdmludDMybWYyeDVfdCAodmludDMy bWYyeDVfdCB0KSB7IH0gICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2aW50MzJtZjJ4 NV90JyByZXF1aXJlcyB0aGUgbWluaW1hbCB2ZWN0b3IgbGVuZ3RoICc2NCcgYnV0ICczMicgaXMg Z2l2ZW59IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mX3Z1aW50MzJtZjJ4NV90ICh2dWludDMybWYy eDVfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndnVpbnQzMm1mMng1X3Qn IHJlcXVpcmVzIHRoZSBtaW5pbWFsIHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMyJyBpcyBnaXZl bn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdmludDMybWYyeDZfdCAodmludDMybWYyeDZfdCB0 KSB7IH0gICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2aW50MzJtZjJ4Nl90JyByZXF1 aXJlcyB0aGUgbWluaW1hbCB2ZWN0b3IgbGVuZ3RoICc2NCcgYnV0ICczMicgaXMgZ2l2ZW59IH0g Ki8NCj4gPiA+ICt2b2lkIG5ld19mX3Z1aW50MzJtZjJ4Nl90ICh2dWludDMybWYyeDZfdCB0KSB7 IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndnVpbnQzMm1mMng2X3QnIHJlcXVpcmVz IHRoZSBtaW5pbWFsIHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMyJyBpcyBnaXZlbn0gfSAqLw0K PiA+ID4gK3ZvaWQgbmV3X2ZfdmludDMybWYyeDdfdCAodmludDMybWYyeDdfdCB0KSB7IH0gICAv KiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2aW50MzJtZjJ4N190JyByZXF1aXJlcyB0aGUg bWluaW1hbCB2ZWN0b3IgbGVuZ3RoICc2NCcgYnV0ICczMicgaXMgZ2l2ZW59IH0gKi8NCj4gPiA+ ICt2b2lkIG5ld19mX3Z1aW50MzJtZjJ4N190ICh2dWludDMybWYyeDdfdCB0KSB7IH0gLyogeyBk Zy1lcnJvciB7YXJndW1lbnQgdHlwZSAndnVpbnQzMm1mMng3X3QnIHJlcXVpcmVzIHRoZSBtaW5p bWFsIHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMyJyBpcyBnaXZlbn0gfSAqLw0KPiA+ID4gK3Zv aWQgbmV3X2ZfdmludDMybWYyeDhfdCAodmludDMybWYyeDhfdCB0KSB7IH0gICAvKiB7IGRnLWVy cm9yIHthcmd1bWVudCB0eXBlICd2aW50MzJtZjJ4OF90JyByZXF1aXJlcyB0aGUgbWluaW1hbCB2 ZWN0b3IgbGVuZ3RoICc2NCcgYnV0ICczMicgaXMgZ2l2ZW59IH0gKi8NCj4gPiA+ICt2b2lkIG5l d19mX3Z1aW50MzJtZjJ4OF90ICh2dWludDMybWYyeDhfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7 YXJndW1lbnQgdHlwZSAndnVpbnQzMm1mMng4X3QnIHJlcXVpcmVzIHRoZSBtaW5pbWFsIHZlY3Rv ciBsZW5ndGggJzY0JyBidXQgJzMyJyBpcyBnaXZlbn0gfSAqLw0KPiA+ID4gKw0KPiA+ID4gK3Zv aWQgbmV3X2ZfdmludDY0bTF4Ml90ICh2aW50NjRtMXgyX3QgdCkgeyB9ICAgLyogeyBkZy1lcnJv ciB7YXJndW1lbnQgdHlwZSAndmludDY0bTF4Ml90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2 NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mX3Z1 aW50NjRtMXgyX3QgKHZ1aW50NjRtMXgyX3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50 IHR5cGUgJ3Z1aW50NjRtMXgyX3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRk IG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdmludDY0bTF4M190 ICh2aW50NjRtMXgzX3QgdCkgeyB9ICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmlu dDY0bTF4M190JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBl eHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mX3Z1aW50NjRtMXgzX3QgKHZ1aW50NjRt MXgzX3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50NjRtMXgzX3Qn IHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0g fSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdmludDY0bTF4NF90ICh2aW50NjRtMXg0X3QgdCkgeyB9 ICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmludDY0bTF4NF90JyByZXF1aXJlcyB0 aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ ICt2b2lkIG5ld19mX3Z1aW50NjRtMXg0X3QgKHZ1aW50NjRtMXg0X3QgdCkgeyB9IC8qIHsgZGct ZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50NjRtMXg0X3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgs IHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3 X2ZfdmludDY0bTF4NV90ICh2aW50NjRtMXg1X3QgdCkgeyB9ICAgLyogeyBkZy1lcnJvciB7YXJn dW1lbnQgdHlwZSAndmludDY0bTF4NV90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2 ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mX3Z1aW50NjRt MXg1X3QgKHZ1aW50NjRtMXg1X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUg J3Z1aW50NjRtMXg1X3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYg SVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdmludDY0bTF4Nl90ICh2aW50 NjRtMXg2X3QgdCkgeyB9ICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmludDY0bTF4 Nl90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNp b259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mX3Z1aW50NjRtMXg2X3QgKHZ1aW50NjRtMXg2X3Qg dCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50NjRtMXg2X3QnIHJlcXVp cmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0K PiA+ID4gK3ZvaWQgbmV3X2ZfdmludDY0bTF4N190ICh2aW50NjRtMXg3X3QgdCkgeyB9ICAgLyog eyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmludDY0bTF4N190JyByZXF1aXJlcyB0aGUgenZl NjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lk IG5ld19mX3Z1aW50NjRtMXg3X3QgKHZ1aW50NjRtMXg3X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ig e2FyZ3VtZW50IHR5cGUgJ3Z1aW50NjRtMXg3X3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0 ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2Zfdmlu dDY0bTF4OF90ICh2aW50NjRtMXg4X3QgdCkgeyB9ICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQg dHlwZSAndmludDY0bTF4OF90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBv ciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mX3Z1aW50NjRtMXg4X3Qg KHZ1aW50NjRtMXg4X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50 NjRtMXg4X3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4 dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdmludDY0bTJ4Ml90ICh2aW50NjRtMngy X3QgdCkgeyB9ICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmludDY0bTJ4Ml90JyBy ZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0g Ki8NCj4gPiA+ICt2b2lkIG5ld19mX3Z1aW50NjRtMngyX3QgKHZ1aW50NjRtMngyX3QgdCkgeyB9 IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50NjRtMngyX3QnIHJlcXVpcmVzIHRo ZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4g K3ZvaWQgbmV3X2ZfdmludDY0bTJ4M190ICh2aW50NjRtMngzX3QgdCkgeyB9ICAgLyogeyBkZy1l cnJvciB7YXJndW1lbnQgdHlwZSAndmludDY0bTJ4M190JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6 dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19m X3Z1aW50NjRtMngzX3QgKHZ1aW50NjRtMngzX3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3Vt ZW50IHR5cGUgJ3Z1aW50NjRtMngzX3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZl NjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdmludDY0bTJ4 NF90ICh2aW50NjRtMng0X3QgdCkgeyB9ICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAn dmludDY0bTJ4NF90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElT QSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mX3Z1aW50NjRtMng0X3QgKHZ1aW50 NjRtMng0X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50NjRtMng0 X3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lv bn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdmludDY0bTR4Ml90ICh2aW50NjRtNHgyX3QgdCkg eyB9ICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmludDY0bTR4Ml90JyByZXF1aXJl cyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4g PiA+ICt2b2lkIG5ld19mX3Z1aW50NjRtNHgyX3QgKHZ1aW50NjRtNHgyX3QgdCkgeyB9IC8qIHsg ZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50NjRtNHgyX3QnIHJlcXVpcmVzIHRoZSB6dmU2 NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gKw0KPiA+ ID4gK3ZvaWQgbmV3X2ZfdmZsb2F0MzJtZjJ4Ml90ICh2ZmxvYXQzMm1mMngyX3QgdCkgeyB9IC8q IHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDMybWYyeDJfdCcgcmVxdWlyZXMgdGhl IHp2ZTMyZiwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gPiAr dm9pZCBuZXdfZl92ZmxvYXQzMm1mMngzX3QgKHZmbG9hdDMybWYyeDNfdCB0KSB7IH0gLyogeyBk Zy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0MzJtZjJ4M190JyByZXF1aXJlcyB0aGUgenZl MzJmLCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lk IG5ld19mX3ZmbG9hdDMybWYyeDRfdCAodmZsb2F0MzJtZjJ4NF90IHQpIHsgfSAvKiB7IGRnLWVy cm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQzMm1mMng0X3QnIHJlcXVpcmVzIHRoZSB6dmUzMmYs IHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3 X2ZfdmZsb2F0MzJtZjJ4NV90ICh2ZmxvYXQzMm1mMng1X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ig e2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDMybWYyeDVfdCcgcmVxdWlyZXMgdGhlIHp2ZTMyZiwgenZl NjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZl92 ZmxvYXQzMm1mMng2X3QgKHZmbG9hdDMybWYyeDZfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJn dW1lbnQgdHlwZSAndmZsb2F0MzJtZjJ4Nl90JyByZXF1aXJlcyB0aGUgenZlMzJmLCB6dmU2NGYs IHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mX3ZmbG9h dDMybWYyeDdfdCAodmZsb2F0MzJtZjJ4N190IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVu dCB0eXBlICd2ZmxvYXQzMm1mMng3X3QnIHJlcXVpcmVzIHRoZSB6dmUzMmYsIHp2ZTY0ZiwgenZl NjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdmZsb2F0MzJt ZjJ4OF90ICh2ZmxvYXQzMm1mMng4X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5 cGUgJ3ZmbG9hdDMybWYyeDhfdCcgcmVxdWlyZXMgdGhlIHp2ZTMyZiwgenZlNjRmLCB6dmU2NGQg b3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gPiArDQo+ID4gPiArdm9pZCBuZXdfZl92Zmxv YXQzMm0xeDJfdCAodmZsb2F0MzJtMXgyX3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50 IHR5cGUgJ3ZmbG9hdDMybTF4Ml90JyByZXF1aXJlcyB0aGUgenZlMzJmLCB6dmU2NGYsIHp2ZTY0 ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mX3ZmbG9hdDMybTF4 M190ICh2ZmxvYXQzMm0xeDNfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAn dmZsb2F0MzJtMXgzX3QnIHJlcXVpcmVzIHRoZSB6dmUzMmYsIHp2ZTY0ZiwgenZlNjRkIG9yIHYg SVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdmZsb2F0MzJtMXg0X3QgKHZm bG9hdDMybTF4NF90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQz Mm0xeDRfdCcgcmVxdWlyZXMgdGhlIHp2ZTMyZiwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0 ZW5zaW9ufSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZl92ZmxvYXQzMm0xeDVfdCAodmZsb2F0MzJt MXg1X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDMybTF4NV90 JyByZXF1aXJlcyB0aGUgenZlMzJmLCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259 IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mX3ZmbG9hdDMybTF4Nl90ICh2ZmxvYXQzMm0xeDZfdCB0 KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0MzJtMXg2X3QnIHJlcXVp cmVzIHRoZSB6dmUzMmYsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0K PiA+ID4gK3ZvaWQgbmV3X2ZfdmZsb2F0MzJtMXg3X3QgKHZmbG9hdDMybTF4N190IHQpIHsgfSAv KiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQzMm0xeDdfdCcgcmVxdWlyZXMgdGhl IHp2ZTMyZiwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gPiAr dm9pZCBuZXdfZl92ZmxvYXQzMm0xeDhfdCAodmZsb2F0MzJtMXg4X3QgdCkgeyB9IC8qIHsgZGct ZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDMybTF4OF90JyByZXF1aXJlcyB0aGUgenZlMzJm LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5l d19mX3ZmbG9hdDMybTJ4Ml90ICh2ZmxvYXQzMm0yeDJfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7 YXJndW1lbnQgdHlwZSAndmZsb2F0MzJtMngyX3QnIHJlcXVpcmVzIHRoZSB6dmUzMmYsIHp2ZTY0 ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdmZs b2F0MzJtMngzX3QgKHZmbG9hdDMybTJ4M190IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVu dCB0eXBlICd2ZmxvYXQzMm0yeDNfdCcgcmVxdWlyZXMgdGhlIHp2ZTMyZiwgenZlNjRmLCB6dmU2 NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZl92ZmxvYXQzMm0y eDRfdCAodmZsb2F0MzJtMng0X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUg J3ZmbG9hdDMybTJ4NF90JyByZXF1aXJlcyB0aGUgenZlMzJmLCB6dmU2NGYsIHp2ZTY0ZCBvciB2 IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mX3ZmbG9hdDMybTR4Ml90ICh2 ZmxvYXQzMm00eDJfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0 MzJtNHgyX3QnIHJlcXVpcmVzIHRoZSB6dmUzMmYsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4 dGVuc2lvbn0gfSAqLw0KPiA+ID4gKw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdmZsb2F0NjRtMXgyX3Qg KHZmbG9hdDY0bTF4Ml90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2Zmxv YXQ2NG0xeDJfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8N Cj4gPiA+ICt2b2lkIG5ld19mX3ZmbG9hdDY0bTF4M190ICh2ZmxvYXQ2NG0xeDNfdCB0KSB7IH0g LyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0NjRtMXgzX3QnIHJlcXVpcmVzIHRo ZSB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZl92Zmxv YXQ2NG0xeDRfdCAodmZsb2F0NjRtMXg0X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50 IHR5cGUgJ3ZmbG9hdDY0bTF4NF90JyByZXF1aXJlcyB0aGUgenZlNjRkIG9yIHYgSVNBIGV4dGVu c2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdmZsb2F0NjRtMXg1X3QgKHZmbG9hdDY0bTF4 NV90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQ2NG0xeDVfdCcg cmVxdWlyZXMgdGhlIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lk IG5ld19mX3ZmbG9hdDY0bTF4Nl90ICh2ZmxvYXQ2NG0xeDZfdCB0KSB7IH0gLyogeyBkZy1lcnJv ciB7YXJndW1lbnQgdHlwZSAndmZsb2F0NjRtMXg2X3QnIHJlcXVpcmVzIHRoZSB6dmU2NGQgb3Ig diBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZl92ZmxvYXQ2NG0xeDdfdCAo dmZsb2F0NjRtMXg3X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9h dDY0bTF4N190JyByZXF1aXJlcyB0aGUgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0K PiA+ID4gK3ZvaWQgbmV3X2ZfdmZsb2F0NjRtMXg4X3QgKHZmbG9hdDY0bTF4OF90IHQpIHsgfSAv KiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQ2NG0xeDhfdCcgcmVxdWlyZXMgdGhl IHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mX3ZmbG9h dDY0bTJ4Ml90ICh2ZmxvYXQ2NG0yeDJfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQg dHlwZSAndmZsb2F0NjRtMngyX3QnIHJlcXVpcmVzIHRoZSB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5z aW9ufSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZl92ZmxvYXQ2NG0yeDNfdCAodmZsb2F0NjRtMngz X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDY0bTJ4M190JyBy ZXF1aXJlcyB0aGUgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQg bmV3X2ZfdmZsb2F0NjRtMng0X3QgKHZmbG9hdDY0bTJ4NF90IHQpIHsgfSAvKiB7IGRnLWVycm9y IHthcmd1bWVudCB0eXBlICd2ZmxvYXQ2NG0yeDRfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0ZCBvciB2 IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mX3ZmbG9hdDY0bTR4Ml90ICh2 ZmxvYXQ2NG00eDJfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0 NjRtNHgyX3QnIHJlcXVpcmVzIHRoZSB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ ID4gPiBkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNl L3VzZXItMTMuYyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS91c2Vy LTEzLmMNCj4gPiA+IGluZGV4IGVkMTgwNzQ5Y2I2Li45NjdlZWVjZTI3NCAxMDA2NDQNCj4gPiA+ IC0tLSBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS91c2VyLTEzLmMN Cj4gPiA+ICsrKyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS91c2Vy LTEzLmMNCj4gPiA+IEBAIC0xNTMsNTQgKzE1MywxMDggQEAgdm9pZCBmX3ZpbnQzMm0yeDRfdCAo KSB7dmludDMybTJ4NF90IHQ7fQ0KPiA+ID4gIHZvaWQgZl92dWludDMybTJ4NF90ICgpIHt2dWlu dDMybTJ4NF90IHQ7fQ0KPiA+ID4gIHZvaWQgZl92aW50MzJtNHgyX3QgKCkge3ZpbnQzMm00eDJf dCB0O30NCj4gPiA+ICB2b2lkIGZfdnVpbnQzMm00eDJfdCAoKSB7dnVpbnQzMm00eDJfdCB0O30N Cj4gPiA+IC12b2lkIGZfdmludDY0bTF4Ml90ICgpIHt2aW50NjRtMXgyX3QgdDt9IC8qIHsgZGct ZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2aW50NjRtMXgyX3QnfSB9ICovDQo+ID4gPiAtdm9p ZCBmX3Z1aW50NjRtMXgyX3QgKCkge3Z1aW50NjRtMXgyX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vu a25vd24gdHlwZSBuYW1lICd2dWludDY0bTF4Ml90J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92aW50 NjRtMXgzX3QgKCkge3ZpbnQ2NG0xeDNfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBl IG5hbWUgJ3ZpbnQ2NG0xeDNfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdnVpbnQ2NG0xeDNfdCAo KSB7dnVpbnQ2NG0xeDNfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1 aW50NjRtMXgzX3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3ZpbnQ2NG0xeDRfdCAoKSB7dmludDY0 bTF4NF90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmludDY0bTF4NF90 J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92dWludDY0bTF4NF90ICgpIHt2dWludDY0bTF4NF90IHQ7 fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndnVpbnQ2NG0xeDRfdCd9IH0gKi8N Cj4gPiA+IC12b2lkIGZfdmludDY0bTF4NV90ICgpIHt2aW50NjRtMXg1X3QgdDt9IC8qIHsgZGct ZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2aW50NjRtMXg1X3QnfSB9ICovDQo+ID4gPiAtdm9p ZCBmX3Z1aW50NjRtMXg1X3QgKCkge3Z1aW50NjRtMXg1X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vu a25vd24gdHlwZSBuYW1lICd2dWludDY0bTF4NV90J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92aW50 NjRtMXg2X3QgKCkge3ZpbnQ2NG0xeDZfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBl IG5hbWUgJ3ZpbnQ2NG0xeDZfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdnVpbnQ2NG0xeDZfdCAo KSB7dnVpbnQ2NG0xeDZfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1 aW50NjRtMXg2X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3ZpbnQ2NG0xeDdfdCAoKSB7dmludDY0 bTF4N190IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmludDY0bTF4N190 J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92dWludDY0bTF4N190ICgpIHt2dWludDY0bTF4N190IHQ7 fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndnVpbnQ2NG0xeDdfdCd9IH0gKi8N Cj4gPiA+IC12b2lkIGZfdmludDY0bTF4OF90ICgpIHt2aW50NjRtMXg4X3QgdDt9IC8qIHsgZGct ZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2aW50NjRtMXg4X3QnfSB9ICovDQo+ID4gPiAtdm9p ZCBmX3Z1aW50NjRtMXg4X3QgKCkge3Z1aW50NjRtMXg4X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vu a25vd24gdHlwZSBuYW1lICd2dWludDY0bTF4OF90J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92aW50 NjRtMngyX3QgKCkge3ZpbnQ2NG0yeDJfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBl IG5hbWUgJ3ZpbnQ2NG0yeDJfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdnVpbnQ2NG0yeDJfdCAo KSB7dnVpbnQ2NG0yeDJfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1 aW50NjRtMngyX3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3ZpbnQ2NG0yeDNfdCAoKSB7dmludDY0 bTJ4M190IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmludDY0bTJ4M190 J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92dWludDY0bTJ4M190ICgpIHt2dWludDY0bTJ4M190IHQ7 fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndnVpbnQ2NG0yeDNfdCd9IH0gKi8N Cj4gPiA+IC12b2lkIGZfdmludDY0bTJ4NF90ICgpIHt2aW50NjRtMng0X3QgdDt9IC8qIHsgZGct ZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2aW50NjRtMng0X3QnfSB9ICovDQo+ID4gPiAtdm9p ZCBmX3Z1aW50NjRtMng0X3QgKCkge3Z1aW50NjRtMng0X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vu a25vd24gdHlwZSBuYW1lICd2dWludDY0bTJ4NF90J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92aW50 NjRtNHgyX3QgKCkge3ZpbnQ2NG00eDJfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBl IG5hbWUgJ3ZpbnQ2NG00eDJfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdnVpbnQ2NG00eDJfdCAo KSB7dnVpbnQ2NG00eDJfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1 aW50NjRtNHgyX3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3ZmbG9hdDMybWYyeDJfdCAoKSB7dmZs b2F0MzJtZjJ4Ml90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0 MzJtZjJ4Ml90J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92ZmxvYXQzMm1mMngzX3QgKCkge3ZmbG9h dDMybWYyeDNfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDMy bWYyeDNfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdmZsb2F0MzJtZjJ4NF90ICgpIHt2ZmxvYXQz Mm1mMng0X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQzMm1m Mng0X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3ZmbG9hdDMybWYyeDVfdCAoKSB7dmZsb2F0MzJt ZjJ4NV90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0MzJtZjJ4 NV90J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92ZmxvYXQzMm1mMng2X3QgKCkge3ZmbG9hdDMybWYy eDZfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDMybWYyeDZf dCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdmZsb2F0MzJtZjJ4N190ICgpIHt2ZmxvYXQzMm1mMng3 X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQzMm1mMng3X3Qn fSB9ICovDQo+ID4gPiAtdm9pZCBmX3ZmbG9hdDMybWYyeDhfdCAoKSB7dmZsb2F0MzJtZjJ4OF90 IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0MzJtZjJ4OF90J30g fSAqLw0KPiA+ID4gLXZvaWQgZl92ZmxvYXQzMm0xeDJfdCAoKSB7dmZsb2F0MzJtMXgyX3QgdDt9 IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQzMm0xeDJfdCd9IH0gKi8N Cj4gPiA+IC12b2lkIGZfdmZsb2F0MzJtMXgzX3QgKCkge3ZmbG9hdDMybTF4M190IHQ7fSAvKiB7 IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0MzJtMXgzX3QnfSB9ICovDQo+ID4g PiAtdm9pZCBmX3ZmbG9hdDMybTF4NF90ICgpIHt2ZmxvYXQzMm0xeDRfdCB0O30gLyogeyBkZy1l cnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDMybTF4NF90J30gfSAqLw0KPiA+ID4gLXZv aWQgZl92ZmxvYXQzMm0xeDVfdCAoKSB7dmZsb2F0MzJtMXg1X3QgdDt9IC8qIHsgZGctZXJyb3Ig e3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQzMm0xeDVfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZf dmZsb2F0MzJtMXg2X3QgKCkge3ZmbG9hdDMybTF4Nl90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtu b3duIHR5cGUgbmFtZSAndmZsb2F0MzJtMXg2X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3ZmbG9h dDMybTF4N190ICgpIHt2ZmxvYXQzMm0xeDdfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0 eXBlIG5hbWUgJ3ZmbG9hdDMybTF4N190J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92ZmxvYXQzMm0x eDhfdCAoKSB7dmZsb2F0MzJtMXg4X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBu YW1lICd2ZmxvYXQzMm0xeDhfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdmZsb2F0MzJtMngyX3Qg KCkge3ZmbG9hdDMybTJ4Ml90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAn dmZsb2F0MzJtMngyX3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3ZmbG9hdDMybTJ4M190ICgpIHt2 ZmxvYXQzMm0yeDNfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9h dDMybTJ4M190J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92ZmxvYXQzMm0yeDRfdCAoKSB7dmZsb2F0 MzJtMng0X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQzMm0y eDRfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdmZsb2F0MzJtNHgyX3QgKCkge3ZmbG9hdDMybTR4 Ml90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0MzJtNHgyX3Qn fSB9ICovDQo+ID4gPiAtdm9pZCBmX3ZmbG9hdDY0bTF4Ml90ICgpIHt2ZmxvYXQ2NG0xeDJfdCB0 O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDY0bTF4Ml90J30gfSAq Lw0KPiA+ID4gLXZvaWQgZl92ZmxvYXQ2NG0xeDNfdCAoKSB7dmZsb2F0NjRtMXgzX3QgdDt9IC8q IHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQ2NG0xeDNfdCd9IH0gKi8NCj4g PiA+IC12b2lkIGZfdmZsb2F0NjRtMXg0X3QgKCkge3ZmbG9hdDY0bTF4NF90IHQ7fSAvKiB7IGRn LWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0NjRtMXg0X3QnfSB9ICovDQo+ID4gPiAt dm9pZCBmX3ZmbG9hdDY0bTF4NV90ICgpIHt2ZmxvYXQ2NG0xeDVfdCB0O30gLyogeyBkZy1lcnJv ciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDY0bTF4NV90J30gfSAqLw0KPiA+ID4gLXZvaWQg Zl92ZmxvYXQ2NG0xeDZfdCAoKSB7dmZsb2F0NjRtMXg2X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vu a25vd24gdHlwZSBuYW1lICd2ZmxvYXQ2NG0xeDZfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdmZs b2F0NjRtMXg3X3QgKCkge3ZmbG9hdDY0bTF4N190IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3du IHR5cGUgbmFtZSAndmZsb2F0NjRtMXg3X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3ZmbG9hdDY0 bTF4OF90ICgpIHt2ZmxvYXQ2NG0xeDhfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBl IG5hbWUgJ3ZmbG9hdDY0bTF4OF90J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92ZmxvYXQ2NG0yeDJf dCAoKSB7dmZsb2F0NjRtMngyX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1l ICd2ZmxvYXQ2NG0yeDJfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdmZsb2F0NjRtMngzX3QgKCkg e3ZmbG9hdDY0bTJ4M190IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZs b2F0NjRtMngzX3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3ZmbG9hdDY0bTJ4NF90ICgpIHt2Zmxv YXQ2NG0yeDRfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDY0 bTJ4NF90J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92ZmxvYXQ2NG00eDJfdCAoKSB7dmZsb2F0NjRt NHgyX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQ2NG00eDJf dCd9IH0gKi8NCj4gPiA+ICt2b2lkIGZfdmludDY0bTF4Ml90ICgpIHt2aW50NjRtMXgyX3QgdDt9 DQo+ID4gPiArdm9pZCBmX3Z1aW50NjRtMXgyX3QgKCkge3Z1aW50NjRtMXgyX3QgdDt9DQo+ID4g PiArdm9pZCBmX3ZpbnQ2NG0xeDNfdCAoKSB7dmludDY0bTF4M190IHQ7fQ0KPiA+ID4gK3ZvaWQg Zl92dWludDY0bTF4M190ICgpIHt2dWludDY0bTF4M190IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92aW50 NjRtMXg0X3QgKCkge3ZpbnQ2NG0xeDRfdCB0O30NCj4gPiA+ICt2b2lkIGZfdnVpbnQ2NG0xeDRf dCAoKSB7dnVpbnQ2NG0xeDRfdCB0O30NCj4gPiA+ICt2b2lkIGZfdmludDY0bTF4NV90ICgpIHt2 aW50NjRtMXg1X3QgdDt9DQo+ID4gPiArdm9pZCBmX3Z1aW50NjRtMXg1X3QgKCkge3Z1aW50NjRt MXg1X3QgdDt9DQo+ID4gPiArdm9pZCBmX3ZpbnQ2NG0xeDZfdCAoKSB7dmludDY0bTF4Nl90IHQ7 fQ0KPiA+ID4gK3ZvaWQgZl92dWludDY0bTF4Nl90ICgpIHt2dWludDY0bTF4Nl90IHQ7fQ0KPiA+ ID4gK3ZvaWQgZl92aW50NjRtMXg3X3QgKCkge3ZpbnQ2NG0xeDdfdCB0O30NCj4gPiA+ICt2b2lk IGZfdnVpbnQ2NG0xeDdfdCAoKSB7dnVpbnQ2NG0xeDdfdCB0O30NCj4gPiA+ICt2b2lkIGZfdmlu dDY0bTF4OF90ICgpIHt2aW50NjRtMXg4X3QgdDt9DQo+ID4gPiArdm9pZCBmX3Z1aW50NjRtMXg4 X3QgKCkge3Z1aW50NjRtMXg4X3QgdDt9DQo+ID4gPiArdm9pZCBmX3ZpbnQ2NG0yeDJfdCAoKSB7 dmludDY0bTJ4Ml90IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92dWludDY0bTJ4Ml90ICgpIHt2dWludDY0 bTJ4Ml90IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92aW50NjRtMngzX3QgKCkge3ZpbnQ2NG0yeDNfdCB0 O30NCj4gPiA+ICt2b2lkIGZfdnVpbnQ2NG0yeDNfdCAoKSB7dnVpbnQ2NG0yeDNfdCB0O30NCj4g PiA+ICt2b2lkIGZfdmludDY0bTJ4NF90ICgpIHt2aW50NjRtMng0X3QgdDt9DQo+ID4gPiArdm9p ZCBmX3Z1aW50NjRtMng0X3QgKCkge3Z1aW50NjRtMng0X3QgdDt9DQo+ID4gPiArdm9pZCBmX3Zp bnQ2NG00eDJfdCAoKSB7dmludDY0bTR4Ml90IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92dWludDY0bTR4 Ml90ICgpIHt2dWludDY0bTR4Ml90IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92ZmxvYXQzMm1mMngyX3Qg KCkge3ZmbG9hdDMybWYyeDJfdCB0O30NCj4gPiA+ICt2b2lkIGZfdmZsb2F0MzJtZjJ4M190ICgp IHt2ZmxvYXQzMm1mMngzX3QgdDt9DQo+ID4gPiArdm9pZCBmX3ZmbG9hdDMybWYyeDRfdCAoKSB7 dmZsb2F0MzJtZjJ4NF90IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92ZmxvYXQzMm1mMng1X3QgKCkge3Zm bG9hdDMybWYyeDVfdCB0O30NCj4gPiA+ICt2b2lkIGZfdmZsb2F0MzJtZjJ4Nl90ICgpIHt2Zmxv YXQzMm1mMng2X3QgdDt9DQo+ID4gPiArdm9pZCBmX3ZmbG9hdDMybWYyeDdfdCAoKSB7dmZsb2F0 MzJtZjJ4N190IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92ZmxvYXQzMm1mMng4X3QgKCkge3ZmbG9hdDMy bWYyeDhfdCB0O30NCj4gPiA+ICt2b2lkIGZfdmZsb2F0MzJtMXgyX3QgKCkge3ZmbG9hdDMybTF4 Ml90IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92ZmxvYXQzMm0xeDNfdCAoKSB7dmZsb2F0MzJtMXgzX3Qg dDt9DQo+ID4gPiArdm9pZCBmX3ZmbG9hdDMybTF4NF90ICgpIHt2ZmxvYXQzMm0xeDRfdCB0O30N Cj4gPiA+ICt2b2lkIGZfdmZsb2F0MzJtMXg1X3QgKCkge3ZmbG9hdDMybTF4NV90IHQ7fQ0KPiA+ ID4gK3ZvaWQgZl92ZmxvYXQzMm0xeDZfdCAoKSB7dmZsb2F0MzJtMXg2X3QgdDt9DQo+ID4gPiAr dm9pZCBmX3ZmbG9hdDMybTF4N190ICgpIHt2ZmxvYXQzMm0xeDdfdCB0O30NCj4gPiA+ICt2b2lk IGZfdmZsb2F0MzJtMXg4X3QgKCkge3ZmbG9hdDMybTF4OF90IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92 ZmxvYXQzMm0yeDJfdCAoKSB7dmZsb2F0MzJtMngyX3QgdDt9DQo+ID4gPiArdm9pZCBmX3ZmbG9h dDMybTJ4M190ICgpIHt2ZmxvYXQzMm0yeDNfdCB0O30NCj4gPiA+ICt2b2lkIGZfdmZsb2F0MzJt Mng0X3QgKCkge3ZmbG9hdDMybTJ4NF90IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92ZmxvYXQzMm00eDJf dCAoKSB7dmZsb2F0MzJtNHgyX3QgdDt9DQo+ID4gPiArdm9pZCBmX3ZmbG9hdDY0bTF4Ml90ICgp IHt2ZmxvYXQ2NG0xeDJfdCB0O30NCj4gPiA+ICt2b2lkIGZfdmZsb2F0NjRtMXgzX3QgKCkge3Zm bG9hdDY0bTF4M190IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92ZmxvYXQ2NG0xeDRfdCAoKSB7dmZsb2F0 NjRtMXg0X3QgdDt9DQo+ID4gPiArdm9pZCBmX3ZmbG9hdDY0bTF4NV90ICgpIHt2ZmxvYXQ2NG0x eDVfdCB0O30NCj4gPiA+ICt2b2lkIGZfdmZsb2F0NjRtMXg2X3QgKCkge3ZmbG9hdDY0bTF4Nl90 IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92ZmxvYXQ2NG0xeDdfdCAoKSB7dmZsb2F0NjRtMXg3X3QgdDt9 DQo+ID4gPiArdm9pZCBmX3ZmbG9hdDY0bTF4OF90ICgpIHt2ZmxvYXQ2NG0xeDhfdCB0O30NCj4g PiA+ICt2b2lkIGZfdmZsb2F0NjRtMngyX3QgKCkge3ZmbG9hdDY0bTJ4Ml90IHQ7fQ0KPiA+ID4g K3ZvaWQgZl92ZmxvYXQ2NG0yeDNfdCAoKSB7dmZsb2F0NjRtMngzX3QgdDt9DQo+ID4gPiArdm9p ZCBmX3ZmbG9hdDY0bTJ4NF90ICgpIHt2ZmxvYXQ2NG0yeDRfdCB0O30NCj4gPiA+ICt2b2lkIGZf dmZsb2F0NjRtNHgyX3QgKCkge3ZmbG9hdDY0bTR4Ml90IHQ7fQ0KPiA+ID4gKw0KPiA+ID4gK3Zv aWQgbmV3X2ZfdmludDY0bTF4Ml90ICh2aW50NjRtMXgyX3QgdCkgeyB9ICAgLyogeyBkZy1lcnJv ciB7YXJndW1lbnQgdHlwZSAndmludDY0bTF4Ml90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2 NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mX3Z1 aW50NjRtMXgyX3QgKHZ1aW50NjRtMXgyX3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50 IHR5cGUgJ3Z1aW50NjRtMXgyX3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRk IG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdmludDY0bTF4M190 ICh2aW50NjRtMXgzX3QgdCkgeyB9ICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmlu dDY0bTF4M190JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBl eHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mX3Z1aW50NjRtMXgzX3QgKHZ1aW50NjRt MXgzX3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50NjRtMXgzX3Qn IHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0g fSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdmludDY0bTF4NF90ICh2aW50NjRtMXg0X3QgdCkgeyB9 ICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmludDY0bTF4NF90JyByZXF1aXJlcyB0 aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ ICt2b2lkIG5ld19mX3Z1aW50NjRtMXg0X3QgKHZ1aW50NjRtMXg0X3QgdCkgeyB9IC8qIHsgZGct ZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50NjRtMXg0X3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgs IHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3 X2ZfdmludDY0bTF4NV90ICh2aW50NjRtMXg1X3QgdCkgeyB9ICAgLyogeyBkZy1lcnJvciB7YXJn dW1lbnQgdHlwZSAndmludDY0bTF4NV90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2 ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mX3Z1aW50NjRt MXg1X3QgKHZ1aW50NjRtMXg1X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUg J3Z1aW50NjRtMXg1X3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYg SVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdmludDY0bTF4Nl90ICh2aW50 NjRtMXg2X3QgdCkgeyB9ICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmludDY0bTF4 Nl90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNp b259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mX3Z1aW50NjRtMXg2X3QgKHZ1aW50NjRtMXg2X3Qg dCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50NjRtMXg2X3QnIHJlcXVp cmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0K PiA+ID4gK3ZvaWQgbmV3X2ZfdmludDY0bTF4N190ICh2aW50NjRtMXg3X3QgdCkgeyB9ICAgLyog eyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmludDY0bTF4N190JyByZXF1aXJlcyB0aGUgenZl NjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lk IG5ld19mX3Z1aW50NjRtMXg3X3QgKHZ1aW50NjRtMXg3X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ig e2FyZ3VtZW50IHR5cGUgJ3Z1aW50NjRtMXg3X3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0 ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2Zfdmlu dDY0bTF4OF90ICh2aW50NjRtMXg4X3QgdCkgeyB9ICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQg dHlwZSAndmludDY0bTF4OF90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBv ciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mX3Z1aW50NjRtMXg4X3Qg KHZ1aW50NjRtMXg4X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50 NjRtMXg4X3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4 dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdmludDY0bTJ4Ml90ICh2aW50NjRtMngy X3QgdCkgeyB9ICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmludDY0bTJ4Ml90JyBy ZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0g Ki8NCj4gPiA+ICt2b2lkIG5ld19mX3Z1aW50NjRtMngyX3QgKHZ1aW50NjRtMngyX3QgdCkgeyB9 IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50NjRtMngyX3QnIHJlcXVpcmVzIHRo ZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4g K3ZvaWQgbmV3X2ZfdmludDY0bTJ4M190ICh2aW50NjRtMngzX3QgdCkgeyB9ICAgLyogeyBkZy1l cnJvciB7YXJndW1lbnQgdHlwZSAndmludDY0bTJ4M190JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6 dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19m X3Z1aW50NjRtMngzX3QgKHZ1aW50NjRtMngzX3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3Vt ZW50IHR5cGUgJ3Z1aW50NjRtMngzX3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZl NjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdmludDY0bTJ4 NF90ICh2aW50NjRtMng0X3QgdCkgeyB9ICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAn dmludDY0bTJ4NF90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElT QSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mX3Z1aW50NjRtMng0X3QgKHZ1aW50 NjRtMng0X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50NjRtMng0 X3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lv bn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdmludDY0bTR4Ml90ICh2aW50NjRtNHgyX3QgdCkg eyB9ICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmludDY0bTR4Ml90JyByZXF1aXJl cyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4g PiA+ICt2b2lkIG5ld19mX3Z1aW50NjRtNHgyX3QgKHZ1aW50NjRtNHgyX3QgdCkgeyB9IC8qIHsg ZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50NjRtNHgyX3QnIHJlcXVpcmVzIHRoZSB6dmU2 NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gKw0KPiA+ ID4gK3ZvaWQgbmV3X2ZfdmZsb2F0MzJtZjJ4Ml90ICh2ZmxvYXQzMm1mMngyX3QgdCkgeyB9IC8q IHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDMybWYyeDJfdCcgcmVxdWlyZXMgdGhl IHp2ZTMyZiwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gPiAr dm9pZCBuZXdfZl92ZmxvYXQzMm1mMngzX3QgKHZmbG9hdDMybWYyeDNfdCB0KSB7IH0gLyogeyBk Zy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0MzJtZjJ4M190JyByZXF1aXJlcyB0aGUgenZl MzJmLCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lk IG5ld19mX3ZmbG9hdDMybWYyeDRfdCAodmZsb2F0MzJtZjJ4NF90IHQpIHsgfSAvKiB7IGRnLWVy cm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQzMm1mMng0X3QnIHJlcXVpcmVzIHRoZSB6dmUzMmYs IHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3 X2ZfdmZsb2F0MzJtZjJ4NV90ICh2ZmxvYXQzMm1mMng1X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ig e2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDMybWYyeDVfdCcgcmVxdWlyZXMgdGhlIHp2ZTMyZiwgenZl NjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZl92 ZmxvYXQzMm1mMng2X3QgKHZmbG9hdDMybWYyeDZfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJn dW1lbnQgdHlwZSAndmZsb2F0MzJtZjJ4Nl90JyByZXF1aXJlcyB0aGUgenZlMzJmLCB6dmU2NGYs IHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mX3ZmbG9h dDMybWYyeDdfdCAodmZsb2F0MzJtZjJ4N190IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVu dCB0eXBlICd2ZmxvYXQzMm1mMng3X3QnIHJlcXVpcmVzIHRoZSB6dmUzMmYsIHp2ZTY0ZiwgenZl NjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdmZsb2F0MzJt ZjJ4OF90ICh2ZmxvYXQzMm1mMng4X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5 cGUgJ3ZmbG9hdDMybWYyeDhfdCcgcmVxdWlyZXMgdGhlIHp2ZTMyZiwgenZlNjRmLCB6dmU2NGQg b3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gPiArDQo+ID4gPiArdm9pZCBuZXdfZl92Zmxv YXQzMm0xeDJfdCAodmZsb2F0MzJtMXgyX3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50 IHR5cGUgJ3ZmbG9hdDMybTF4Ml90JyByZXF1aXJlcyB0aGUgenZlMzJmLCB6dmU2NGYsIHp2ZTY0 ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mX3ZmbG9hdDMybTF4 M190ICh2ZmxvYXQzMm0xeDNfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAn dmZsb2F0MzJtMXgzX3QnIHJlcXVpcmVzIHRoZSB6dmUzMmYsIHp2ZTY0ZiwgenZlNjRkIG9yIHYg SVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdmZsb2F0MzJtMXg0X3QgKHZm bG9hdDMybTF4NF90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQz Mm0xeDRfdCcgcmVxdWlyZXMgdGhlIHp2ZTMyZiwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0 ZW5zaW9ufSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZl92ZmxvYXQzMm0xeDVfdCAodmZsb2F0MzJt MXg1X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDMybTF4NV90 JyByZXF1aXJlcyB0aGUgenZlMzJmLCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259 IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mX3ZmbG9hdDMybTF4Nl90ICh2ZmxvYXQzMm0xeDZfdCB0 KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0MzJtMXg2X3QnIHJlcXVp cmVzIHRoZSB6dmUzMmYsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0K PiA+ID4gK3ZvaWQgbmV3X2ZfdmZsb2F0MzJtMXg3X3QgKHZmbG9hdDMybTF4N190IHQpIHsgfSAv KiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQzMm0xeDdfdCcgcmVxdWlyZXMgdGhl IHp2ZTMyZiwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gPiAr dm9pZCBuZXdfZl92ZmxvYXQzMm0xeDhfdCAodmZsb2F0MzJtMXg4X3QgdCkgeyB9IC8qIHsgZGct ZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDMybTF4OF90JyByZXF1aXJlcyB0aGUgenZlMzJm LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5l d19mX3ZmbG9hdDMybTJ4Ml90ICh2ZmxvYXQzMm0yeDJfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7 YXJndW1lbnQgdHlwZSAndmZsb2F0MzJtMngyX3QnIHJlcXVpcmVzIHRoZSB6dmUzMmYsIHp2ZTY0 ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdmZs b2F0MzJtMngzX3QgKHZmbG9hdDMybTJ4M190IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVu dCB0eXBlICd2ZmxvYXQzMm0yeDNfdCcgcmVxdWlyZXMgdGhlIHp2ZTMyZiwgenZlNjRmLCB6dmU2 NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZl92ZmxvYXQzMm0y eDRfdCAodmZsb2F0MzJtMng0X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUg J3ZmbG9hdDMybTJ4NF90JyByZXF1aXJlcyB0aGUgenZlMzJmLCB6dmU2NGYsIHp2ZTY0ZCBvciB2 IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mX3ZmbG9hdDMybTR4Ml90ICh2 ZmxvYXQzMm00eDJfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0 MzJtNHgyX3QnIHJlcXVpcmVzIHRoZSB6dmUzMmYsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4 dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdmZsb2F0NjRtMXgyX3QgKHZmbG9hdDY0 bTF4Ml90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQ2NG0xeDJf dCcgcmVxdWlyZXMgdGhlIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2 b2lkIG5ld19mX3ZmbG9hdDY0bTF4M190ICh2ZmxvYXQ2NG0xeDNfdCB0KSB7IH0gLyogeyBkZy1l cnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0NjRtMXgzX3QnIHJlcXVpcmVzIHRoZSB6dmU2NGQg b3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZl92ZmxvYXQ2NG0xeDRf dCAodmZsb2F0NjRtMXg0X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Zm bG9hdDY0bTF4NF90JyByZXF1aXJlcyB0aGUgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAq Lw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdmZsb2F0NjRtMXg1X3QgKHZmbG9hdDY0bTF4NV90IHQpIHsg fSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQ2NG0xeDVfdCcgcmVxdWlyZXMg dGhlIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mX3Zm bG9hdDY0bTF4Nl90ICh2ZmxvYXQ2NG0xeDZfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1l bnQgdHlwZSAndmZsb2F0NjRtMXg2X3QnIHJlcXVpcmVzIHRoZSB6dmU2NGQgb3IgdiBJU0EgZXh0 ZW5zaW9ufSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZl92ZmxvYXQ2NG0xeDdfdCAodmZsb2F0NjRt MXg3X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDY0bTF4N190 JyByZXF1aXJlcyB0aGUgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3Zv aWQgbmV3X2ZfdmZsb2F0NjRtMXg4X3QgKHZmbG9hdDY0bTF4OF90IHQpIHsgfSAvKiB7IGRnLWVy cm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQ2NG0xeDhfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0ZCBv ciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mX3ZmbG9hdDY0bTJ4Ml90 ICh2ZmxvYXQ2NG0yeDJfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZs b2F0NjRtMngyX3QnIHJlcXVpcmVzIHRoZSB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICov DQo+ID4gPiArdm9pZCBuZXdfZl92ZmxvYXQ2NG0yeDNfdCAodmZsb2F0NjRtMngzX3QgdCkgeyB9 IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDY0bTJ4M190JyByZXF1aXJlcyB0 aGUgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdmZs b2F0NjRtMng0X3QgKHZmbG9hdDY0bTJ4NF90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVu dCB0eXBlICd2ZmxvYXQ2NG0yeDRfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0ZCBvciB2IElTQSBleHRl bnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mX3ZmbG9hdDY0bTR4Ml90ICh2ZmxvYXQ2NG00 eDJfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0NjRtNHgyX3Qn IHJlcXVpcmVzIHRoZSB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gPiBkaWZm IC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3VzZXItMTQu YyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS91c2VyLTE0LmMNCj4g PiA+IGluZGV4IDcwZTA5ODliNmUxLi5iODY4ZjMxNDE2MyAxMDA2NDQNCj4gPiA+IC0tLSBhL2dj Yy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS91c2VyLTE0LmMNCj4gPiA+ICsr KyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS91c2VyLTE0LmMNCj4g PiA+IEBAIC0zLDIwICszLDIwIEBADQo+ID4gPg0KPiA+ID4gICNpbmNsdWRlICJyaXNjdl92ZWN0 b3IuaCINCj4gPiA+DQo+ID4gPiAtdm9pZCBmX3ZpbnQ4bWY4eDJfdCAoKSB7dmludDhtZjh4Ml90 IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmludDhtZjh4Ml90J30gfSAq Lw0KPiA+ID4gLXZvaWQgZl92dWludDhtZjh4Ml90ICgpIHt2dWludDhtZjh4Ml90IHQ7fSAvKiB7 IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndnVpbnQ4bWY4eDJfdCd9IH0gKi8NCj4gPiA+ IC12b2lkIGZfdmludDhtZjh4M190ICgpIHt2aW50OG1mOHgzX3QgdDt9IC8qIHsgZGctZXJyb3Ig e3Vua25vd24gdHlwZSBuYW1lICd2aW50OG1mOHgzX3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3Z1 aW50OG1mOHgzX3QgKCkge3Z1aW50OG1mOHgzX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24g dHlwZSBuYW1lICd2dWludDhtZjh4M190J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92aW50OG1mOHg0 X3QgKCkge3ZpbnQ4bWY4eDRfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUg J3ZpbnQ4bWY4eDRfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdnVpbnQ4bWY4eDRfdCAoKSB7dnVp bnQ4bWY4eDRfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1aW50OG1m OHg0X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3ZpbnQ4bWY4eDVfdCAoKSB7dmludDhtZjh4NV90 IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmludDhtZjh4NV90J30gfSAq Lw0KPiA+ID4gLXZvaWQgZl92dWludDhtZjh4NV90ICgpIHt2dWludDhtZjh4NV90IHQ7fSAvKiB7 IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndnVpbnQ4bWY4eDVfdCd9IH0gKi8NCj4gPiA+ IC12b2lkIGZfdmludDhtZjh4Nl90ICgpIHt2aW50OG1mOHg2X3QgdDt9IC8qIHsgZGctZXJyb3Ig e3Vua25vd24gdHlwZSBuYW1lICd2aW50OG1mOHg2X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3Z1 aW50OG1mOHg2X3QgKCkge3Z1aW50OG1mOHg2X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24g dHlwZSBuYW1lICd2dWludDhtZjh4Nl90J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92aW50OG1mOHg3 X3QgKCkge3ZpbnQ4bWY4eDdfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUg J3ZpbnQ4bWY4eDdfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdnVpbnQ4bWY4eDdfdCAoKSB7dnVp bnQ4bWY4eDdfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1aW50OG1m OHg3X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3ZpbnQ4bWY4eDhfdCAoKSB7dmludDhtZjh4OF90 IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmludDhtZjh4OF90J30gfSAq Lw0KPiA+ID4gLXZvaWQgZl92dWludDhtZjh4OF90ICgpIHt2dWludDhtZjh4OF90IHQ7fSAvKiB7 IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndnVpbnQ4bWY4eDhfdCd9IH0gKi8NCj4gPiA+ ICt2b2lkIGZfdmludDhtZjh4Ml90ICgpIHt2aW50OG1mOHgyX3QgdDt9DQo+ID4gPiArdm9pZCBm X3Z1aW50OG1mOHgyX3QgKCkge3Z1aW50OG1mOHgyX3QgdDt9DQo+ID4gPiArdm9pZCBmX3ZpbnQ4 bWY4eDNfdCAoKSB7dmludDhtZjh4M190IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92dWludDhtZjh4M190 ICgpIHt2dWludDhtZjh4M190IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92aW50OG1mOHg0X3QgKCkge3Zp bnQ4bWY4eDRfdCB0O30NCj4gPiA+ICt2b2lkIGZfdnVpbnQ4bWY4eDRfdCAoKSB7dnVpbnQ4bWY4 eDRfdCB0O30NCj4gPiA+ICt2b2lkIGZfdmludDhtZjh4NV90ICgpIHt2aW50OG1mOHg1X3QgdDt9 DQo+ID4gPiArdm9pZCBmX3Z1aW50OG1mOHg1X3QgKCkge3Z1aW50OG1mOHg1X3QgdDt9DQo+ID4g PiArdm9pZCBmX3ZpbnQ4bWY4eDZfdCAoKSB7dmludDhtZjh4Nl90IHQ7fQ0KPiA+ID4gK3ZvaWQg Zl92dWludDhtZjh4Nl90ICgpIHt2dWludDhtZjh4Nl90IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92aW50 OG1mOHg3X3QgKCkge3ZpbnQ4bWY4eDdfdCB0O30NCj4gPiA+ICt2b2lkIGZfdnVpbnQ4bWY4eDdf dCAoKSB7dnVpbnQ4bWY4eDdfdCB0O30NCj4gPiA+ICt2b2lkIGZfdmludDhtZjh4OF90ICgpIHt2 aW50OG1mOHg4X3QgdDt9DQo+ID4gPiArdm9pZCBmX3Z1aW50OG1mOHg4X3QgKCkge3Z1aW50OG1m OHg4X3QgdDt9DQo+ID4gPiAgdm9pZCBmX3ZpbnQ4bWY0eDJfdCAoKSB7dmludDhtZjR4Ml90IHQ7 fQ0KPiA+ID4gIHZvaWQgZl92dWludDhtZjR4Ml90ICgpIHt2dWludDhtZjR4Ml90IHQ7fQ0KPiA+ ID4gIHZvaWQgZl92aW50OG1mNHgzX3QgKCkge3ZpbnQ4bWY0eDNfdCB0O30NCj4gPiA+IEBAIC02 NywyMCArNjcsMjAgQEAgdm9pZCBmX3ZpbnQ4bTJ4NF90ICgpIHt2aW50OG0yeDRfdCB0O30NCj4g PiA+ICB2b2lkIGZfdnVpbnQ4bTJ4NF90ICgpIHt2dWludDhtMng0X3QgdDt9DQo+ID4gPiAgdm9p ZCBmX3ZpbnQ4bTR4Ml90ICgpIHt2aW50OG00eDJfdCB0O30NCj4gPiA+ICB2b2lkIGZfdnVpbnQ4 bTR4Ml90ICgpIHt2dWludDhtNHgyX3QgdDt9DQo+ID4gPiAtdm9pZCBmX3ZpbnQxNm1mNHgyX3Qg KCkge3ZpbnQxNm1mNHgyX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2 aW50MTZtZjR4Ml90J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92dWludDE2bWY0eDJfdCAoKSB7dnVp bnQxNm1mNHgyX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2dWludDE2 bWY0eDJfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdmludDE2bWY0eDNfdCAoKSB7dmludDE2bWY0 eDNfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQxNm1mNHgzX3Qn fSB9ICovDQo+ID4gPiAtdm9pZCBmX3Z1aW50MTZtZjR4M190ICgpIHt2dWludDE2bWY0eDNfdCB0 O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1aW50MTZtZjR4M190J30gfSAq Lw0KPiA+ID4gLXZvaWQgZl92aW50MTZtZjR4NF90ICgpIHt2aW50MTZtZjR4NF90IHQ7fSAvKiB7 IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmludDE2bWY0eDRfdCd9IH0gKi8NCj4gPiA+ IC12b2lkIGZfdnVpbnQxNm1mNHg0X3QgKCkge3Z1aW50MTZtZjR4NF90IHQ7fSAvKiB7IGRnLWVy cm9yIHt1bmtub3duIHR5cGUgbmFtZSAndnVpbnQxNm1mNHg0X3QnfSB9ICovDQo+ID4gPiAtdm9p ZCBmX3ZpbnQxNm1mNHg1X3QgKCkge3ZpbnQxNm1mNHg1X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vu a25vd24gdHlwZSBuYW1lICd2aW50MTZtZjR4NV90J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92dWlu dDE2bWY0eDVfdCAoKSB7dnVpbnQxNm1mNHg1X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24g dHlwZSBuYW1lICd2dWludDE2bWY0eDVfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdmludDE2bWY0 eDZfdCAoKSB7dmludDE2bWY0eDZfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5h bWUgJ3ZpbnQxNm1mNHg2X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3Z1aW50MTZtZjR4Nl90ICgp IHt2dWludDE2bWY0eDZfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1 aW50MTZtZjR4Nl90J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92aW50MTZtZjR4N190ICgpIHt2aW50 MTZtZjR4N190IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmludDE2bWY0 eDdfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdnVpbnQxNm1mNHg3X3QgKCkge3Z1aW50MTZtZjR4 N190IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndnVpbnQxNm1mNHg3X3Qn fSB9ICovDQo+ID4gPiAtdm9pZCBmX3ZpbnQxNm1mNHg4X3QgKCkge3ZpbnQxNm1mNHg4X3QgdDt9 IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2aW50MTZtZjR4OF90J30gfSAqLw0K PiA+ID4gLXZvaWQgZl92dWludDE2bWY0eDhfdCAoKSB7dnVpbnQxNm1mNHg4X3QgdDt9IC8qIHsg ZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2dWludDE2bWY0eDhfdCd9IH0gKi8NCj4gPiA+ ICt2b2lkIGZfdmludDE2bWY0eDJfdCAoKSB7dmludDE2bWY0eDJfdCB0O30NCj4gPiA+ICt2b2lk IGZfdnVpbnQxNm1mNHgyX3QgKCkge3Z1aW50MTZtZjR4Ml90IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92 aW50MTZtZjR4M190ICgpIHt2aW50MTZtZjR4M190IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92dWludDE2 bWY0eDNfdCAoKSB7dnVpbnQxNm1mNHgzX3QgdDt9DQo+ID4gPiArdm9pZCBmX3ZpbnQxNm1mNHg0 X3QgKCkge3ZpbnQxNm1mNHg0X3QgdDt9DQo+ID4gPiArdm9pZCBmX3Z1aW50MTZtZjR4NF90ICgp IHt2dWludDE2bWY0eDRfdCB0O30NCj4gPiA+ICt2b2lkIGZfdmludDE2bWY0eDVfdCAoKSB7dmlu dDE2bWY0eDVfdCB0O30NCj4gPiA+ICt2b2lkIGZfdnVpbnQxNm1mNHg1X3QgKCkge3Z1aW50MTZt ZjR4NV90IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92aW50MTZtZjR4Nl90ICgpIHt2aW50MTZtZjR4Nl90 IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92dWludDE2bWY0eDZfdCAoKSB7dnVpbnQxNm1mNHg2X3QgdDt9 DQo+ID4gPiArdm9pZCBmX3ZpbnQxNm1mNHg3X3QgKCkge3ZpbnQxNm1mNHg3X3QgdDt9DQo+ID4g PiArdm9pZCBmX3Z1aW50MTZtZjR4N190ICgpIHt2dWludDE2bWY0eDdfdCB0O30NCj4gPiA+ICt2 b2lkIGZfdmludDE2bWY0eDhfdCAoKSB7dmludDE2bWY0eDhfdCB0O30NCj4gPiA+ICt2b2lkIGZf dnVpbnQxNm1mNHg4X3QgKCkge3Z1aW50MTZtZjR4OF90IHQ7fQ0KPiA+ID4gIHZvaWQgZl92aW50 MTZtZjJ4Ml90ICgpIHt2aW50MTZtZjJ4Ml90IHQ7fQ0KPiA+ID4gIHZvaWQgZl92dWludDE2bWYy eDJfdCAoKSB7dnVpbnQxNm1mMngyX3QgdDt9DQo+ID4gPiAgdm9pZCBmX3ZpbnQxNm1mMngzX3Qg KCkge3ZpbnQxNm1mMngzX3QgdDt9DQo+ID4gPiBAQCAtMTE3LDIwICsxMTcsMjAgQEAgdm9pZCBm X3ZpbnQxNm0yeDRfdCAoKSB7dmludDE2bTJ4NF90IHQ7fQ0KPiA+ID4gIHZvaWQgZl92dWludDE2 bTJ4NF90ICgpIHt2dWludDE2bTJ4NF90IHQ7fQ0KPiA+ID4gIHZvaWQgZl92aW50MTZtNHgyX3Qg KCkge3ZpbnQxNm00eDJfdCB0O30NCj4gPiA+ICB2b2lkIGZfdnVpbnQxNm00eDJfdCAoKSB7dnVp bnQxNm00eDJfdCB0O30NCj4gPiA+IC12b2lkIGZfdmludDMybWYyeDJfdCAoKSB7dmludDMybWYy eDJfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQzMm1mMngyX3Qn fSB9ICovDQo+ID4gPiAtdm9pZCBmX3Z1aW50MzJtZjJ4Ml90ICgpIHt2dWludDMybWYyeDJfdCB0 O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1aW50MzJtZjJ4Ml90J30gfSAq Lw0KPiA+ID4gLXZvaWQgZl92aW50MzJtZjJ4M190ICgpIHt2aW50MzJtZjJ4M190IHQ7fSAvKiB7 IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmludDMybWYyeDNfdCd9IH0gKi8NCj4gPiA+ IC12b2lkIGZfdnVpbnQzMm1mMngzX3QgKCkge3Z1aW50MzJtZjJ4M190IHQ7fSAvKiB7IGRnLWVy cm9yIHt1bmtub3duIHR5cGUgbmFtZSAndnVpbnQzMm1mMngzX3QnfSB9ICovDQo+ID4gPiAtdm9p ZCBmX3ZpbnQzMm1mMng0X3QgKCkge3ZpbnQzMm1mMng0X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vu a25vd24gdHlwZSBuYW1lICd2aW50MzJtZjJ4NF90J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92dWlu dDMybWYyeDRfdCAoKSB7dnVpbnQzMm1mMng0X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24g dHlwZSBuYW1lICd2dWludDMybWYyeDRfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdmludDMybWYy eDVfdCAoKSB7dmludDMybWYyeDVfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5h bWUgJ3ZpbnQzMm1mMng1X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3Z1aW50MzJtZjJ4NV90ICgp IHt2dWludDMybWYyeDVfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1 aW50MzJtZjJ4NV90J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92aW50MzJtZjJ4Nl90ICgpIHt2aW50 MzJtZjJ4Nl90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmludDMybWYy eDZfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdnVpbnQzMm1mMng2X3QgKCkge3Z1aW50MzJtZjJ4 Nl90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndnVpbnQzMm1mMng2X3Qn fSB9ICovDQo+ID4gPiAtdm9pZCBmX3ZpbnQzMm1mMng3X3QgKCkge3ZpbnQzMm1mMng3X3QgdDt9 IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2aW50MzJtZjJ4N190J30gfSAqLw0K PiA+ID4gLXZvaWQgZl92dWludDMybWYyeDdfdCAoKSB7dnVpbnQzMm1mMng3X3QgdDt9IC8qIHsg ZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2dWludDMybWYyeDdfdCd9IH0gKi8NCj4gPiA+ IC12b2lkIGZfdmludDMybWYyeDhfdCAoKSB7dmludDMybWYyeDhfdCB0O30gLyogeyBkZy1lcnJv ciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQzMm1mMng4X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBm X3Z1aW50MzJtZjJ4OF90ICgpIHt2dWludDMybWYyeDhfdCB0O30gLyogeyBkZy1lcnJvciB7dW5r bm93biB0eXBlIG5hbWUgJ3Z1aW50MzJtZjJ4OF90J30gfSAqLw0KPiA+ID4gK3ZvaWQgZl92aW50 MzJtZjJ4Ml90ICgpIHt2aW50MzJtZjJ4Ml90IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92dWludDMybWYy eDJfdCAoKSB7dnVpbnQzMm1mMngyX3QgdDt9DQo+ID4gPiArdm9pZCBmX3ZpbnQzMm1mMngzX3Qg KCkge3ZpbnQzMm1mMngzX3QgdDt9DQo+ID4gPiArdm9pZCBmX3Z1aW50MzJtZjJ4M190ICgpIHt2 dWludDMybWYyeDNfdCB0O30NCj4gPiA+ICt2b2lkIGZfdmludDMybWYyeDRfdCAoKSB7dmludDMy bWYyeDRfdCB0O30NCj4gPiA+ICt2b2lkIGZfdnVpbnQzMm1mMng0X3QgKCkge3Z1aW50MzJtZjJ4 NF90IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92aW50MzJtZjJ4NV90ICgpIHt2aW50MzJtZjJ4NV90IHQ7 fQ0KPiA+ID4gK3ZvaWQgZl92dWludDMybWYyeDVfdCAoKSB7dnVpbnQzMm1mMng1X3QgdDt9DQo+ ID4gPiArdm9pZCBmX3ZpbnQzMm1mMng2X3QgKCkge3ZpbnQzMm1mMng2X3QgdDt9DQo+ID4gPiAr dm9pZCBmX3Z1aW50MzJtZjJ4Nl90ICgpIHt2dWludDMybWYyeDZfdCB0O30NCj4gPiA+ICt2b2lk IGZfdmludDMybWYyeDdfdCAoKSB7dmludDMybWYyeDdfdCB0O30NCj4gPiA+ICt2b2lkIGZfdnVp bnQzMm1mMng3X3QgKCkge3Z1aW50MzJtZjJ4N190IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92aW50MzJt ZjJ4OF90ICgpIHt2aW50MzJtZjJ4OF90IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92dWludDMybWYyeDhf dCAoKSB7dnVpbnQzMm1mMng4X3QgdDt9DQo+ID4gPiAgdm9pZCBmX3ZpbnQzMm0xeDJfdCAoKSB7 dmludDMybTF4Ml90IHQ7fQ0KPiA+ID4gIHZvaWQgZl92dWludDMybTF4Ml90ICgpIHt2dWludDMy bTF4Ml90IHQ7fQ0KPiA+ID4gIHZvaWQgZl92aW50MzJtMXgzX3QgKCkge3ZpbnQzMm0xeDNfdCB0 O30NCj4gPiA+IEBAIC0xNTMsMzUgKzE1MywzNSBAQCB2b2lkIGZfdmludDMybTJ4NF90ICgpIHt2 aW50MzJtMng0X3QgdDt9DQo+ID4gPiAgdm9pZCBmX3Z1aW50MzJtMng0X3QgKCkge3Z1aW50MzJt Mng0X3QgdDt9DQo+ID4gPiAgdm9pZCBmX3ZpbnQzMm00eDJfdCAoKSB7dmludDMybTR4Ml90IHQ7 fQ0KPiA+ID4gIHZvaWQgZl92dWludDMybTR4Ml90ICgpIHt2dWludDMybTR4Ml90IHQ7fQ0KPiA+ ID4gLXZvaWQgZl92aW50NjRtMXgyX3QgKCkge3ZpbnQ2NG0xeDJfdCB0O30gLyogeyBkZy1lcnJv ciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQ2NG0xeDJfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZf dnVpbnQ2NG0xeDJfdCAoKSB7dnVpbnQ2NG0xeDJfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93 biB0eXBlIG5hbWUgJ3Z1aW50NjRtMXgyX3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3ZpbnQ2NG0x eDNfdCAoKSB7dmludDY0bTF4M190IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFt ZSAndmludDY0bTF4M190J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92dWludDY0bTF4M190ICgpIHt2 dWludDY0bTF4M190IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndnVpbnQ2 NG0xeDNfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdmludDY0bTF4NF90ICgpIHt2aW50NjRtMXg0 X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2aW50NjRtMXg0X3QnfSB9 ICovDQo+ID4gPiAtdm9pZCBmX3Z1aW50NjRtMXg0X3QgKCkge3Z1aW50NjRtMXg0X3QgdDt9IC8q IHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2dWludDY0bTF4NF90J30gfSAqLw0KPiA+ ID4gLXZvaWQgZl92aW50NjRtMXg1X3QgKCkge3ZpbnQ2NG0xeDVfdCB0O30gLyogeyBkZy1lcnJv ciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQ2NG0xeDVfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZf dnVpbnQ2NG0xeDVfdCAoKSB7dnVpbnQ2NG0xeDVfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93 biB0eXBlIG5hbWUgJ3Z1aW50NjRtMXg1X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3ZpbnQ2NG0x eDZfdCAoKSB7dmludDY0bTF4Nl90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFt ZSAndmludDY0bTF4Nl90J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92dWludDY0bTF4Nl90ICgpIHt2 dWludDY0bTF4Nl90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndnVpbnQ2 NG0xeDZfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdmludDY0bTF4N190ICgpIHt2aW50NjRtMXg3 X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2aW50NjRtMXg3X3QnfSB9 ICovDQo+ID4gPiAtdm9pZCBmX3Z1aW50NjRtMXg3X3QgKCkge3Z1aW50NjRtMXg3X3QgdDt9IC8q IHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2dWludDY0bTF4N190J30gfSAqLw0KPiA+ ID4gLXZvaWQgZl92aW50NjRtMXg4X3QgKCkge3ZpbnQ2NG0xeDhfdCB0O30gLyogeyBkZy1lcnJv ciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQ2NG0xeDhfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZf dnVpbnQ2NG0xeDhfdCAoKSB7dnVpbnQ2NG0xeDhfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93 biB0eXBlIG5hbWUgJ3Z1aW50NjRtMXg4X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3ZpbnQ2NG0y eDJfdCAoKSB7dmludDY0bTJ4Ml90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFt ZSAndmludDY0bTJ4Ml90J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92dWludDY0bTJ4Ml90ICgpIHt2 dWludDY0bTJ4Ml90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndnVpbnQ2 NG0yeDJfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdmludDY0bTJ4M190ICgpIHt2aW50NjRtMngz X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2aW50NjRtMngzX3QnfSB9 ICovDQo+ID4gPiAtdm9pZCBmX3Z1aW50NjRtMngzX3QgKCkge3Z1aW50NjRtMngzX3QgdDt9IC8q IHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2dWludDY0bTJ4M190J30gfSAqLw0KPiA+ ID4gLXZvaWQgZl92aW50NjRtMng0X3QgKCkge3ZpbnQ2NG0yeDRfdCB0O30gLyogeyBkZy1lcnJv ciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQ2NG0yeDRfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZf dnVpbnQ2NG0yeDRfdCAoKSB7dnVpbnQ2NG0yeDRfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93 biB0eXBlIG5hbWUgJ3Z1aW50NjRtMng0X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3ZpbnQ2NG00 eDJfdCAoKSB7dmludDY0bTR4Ml90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFt ZSAndmludDY0bTR4Ml90J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92dWludDY0bTR4Ml90ICgpIHt2 dWludDY0bTR4Ml90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndnVpbnQ2 NG00eDJfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdmZsb2F0MzJtZjJ4Ml90ICgpIHt2ZmxvYXQz Mm1mMngyX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQzMm1m MngyX3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3ZmbG9hdDMybWYyeDNfdCAoKSB7dmZsb2F0MzJt ZjJ4M190IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0MzJtZjJ4 M190J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92ZmxvYXQzMm1mMng0X3QgKCkge3ZmbG9hdDMybWYy eDRfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDMybWYyeDRf dCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdmZsb2F0MzJtZjJ4NV90ICgpIHt2ZmxvYXQzMm1mMng1 X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQzMm1mMng1X3Qn fSB9ICovDQo+ID4gPiAtdm9pZCBmX3ZmbG9hdDMybWYyeDZfdCAoKSB7dmZsb2F0MzJtZjJ4Nl90 IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0MzJtZjJ4Nl90J30g fSAqLw0KPiA+ID4gLXZvaWQgZl92ZmxvYXQzMm1mMng3X3QgKCkge3ZmbG9hdDMybWYyeDdfdCB0 O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDMybWYyeDdfdCd9IH0g Ki8NCj4gPiA+IC12b2lkIGZfdmZsb2F0MzJtZjJ4OF90ICgpIHt2ZmxvYXQzMm1mMng4X3QgdDt9 IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQzMm1mMng4X3QnfSB9ICov DQo+ID4gPiArdm9pZCBmX3ZpbnQ2NG0xeDJfdCAoKSB7dmludDY0bTF4Ml90IHQ7fQ0KPiA+ID4g K3ZvaWQgZl92dWludDY0bTF4Ml90ICgpIHt2dWludDY0bTF4Ml90IHQ7fQ0KPiA+ID4gK3ZvaWQg Zl92aW50NjRtMXgzX3QgKCkge3ZpbnQ2NG0xeDNfdCB0O30NCj4gPiA+ICt2b2lkIGZfdnVpbnQ2 NG0xeDNfdCAoKSB7dnVpbnQ2NG0xeDNfdCB0O30NCj4gPiA+ICt2b2lkIGZfdmludDY0bTF4NF90 ICgpIHt2aW50NjRtMXg0X3QgdDt9DQo+ID4gPiArdm9pZCBmX3Z1aW50NjRtMXg0X3QgKCkge3Z1 aW50NjRtMXg0X3QgdDt9DQo+ID4gPiArdm9pZCBmX3ZpbnQ2NG0xeDVfdCAoKSB7dmludDY0bTF4 NV90IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92dWludDY0bTF4NV90ICgpIHt2dWludDY0bTF4NV90IHQ7 fQ0KPiA+ID4gK3ZvaWQgZl92aW50NjRtMXg2X3QgKCkge3ZpbnQ2NG0xeDZfdCB0O30NCj4gPiA+ ICt2b2lkIGZfdnVpbnQ2NG0xeDZfdCAoKSB7dnVpbnQ2NG0xeDZfdCB0O30NCj4gPiA+ICt2b2lk IGZfdmludDY0bTF4N190ICgpIHt2aW50NjRtMXg3X3QgdDt9DQo+ID4gPiArdm9pZCBmX3Z1aW50 NjRtMXg3X3QgKCkge3Z1aW50NjRtMXg3X3QgdDt9DQo+ID4gPiArdm9pZCBmX3ZpbnQ2NG0xeDhf dCAoKSB7dmludDY0bTF4OF90IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92dWludDY0bTF4OF90ICgpIHt2 dWludDY0bTF4OF90IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92aW50NjRtMngyX3QgKCkge3ZpbnQ2NG0y eDJfdCB0O30NCj4gPiA+ICt2b2lkIGZfdnVpbnQ2NG0yeDJfdCAoKSB7dnVpbnQ2NG0yeDJfdCB0 O30NCj4gPiA+ICt2b2lkIGZfdmludDY0bTJ4M190ICgpIHt2aW50NjRtMngzX3QgdDt9DQo+ID4g PiArdm9pZCBmX3Z1aW50NjRtMngzX3QgKCkge3Z1aW50NjRtMngzX3QgdDt9DQo+ID4gPiArdm9p ZCBmX3ZpbnQ2NG0yeDRfdCAoKSB7dmludDY0bTJ4NF90IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92dWlu dDY0bTJ4NF90ICgpIHt2dWludDY0bTJ4NF90IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92aW50NjRtNHgy X3QgKCkge3ZpbnQ2NG00eDJfdCB0O30NCj4gPiA+ICt2b2lkIGZfdnVpbnQ2NG00eDJfdCAoKSB7 dnVpbnQ2NG00eDJfdCB0O30NCj4gPiA+ICt2b2lkIGZfdmZsb2F0MzJtZjJ4Ml90ICgpIHt2Zmxv YXQzMm1mMngyX3QgdDt9DQo+ID4gPiArdm9pZCBmX3ZmbG9hdDMybWYyeDNfdCAoKSB7dmZsb2F0 MzJtZjJ4M190IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92ZmxvYXQzMm1mMng0X3QgKCkge3ZmbG9hdDMy bWYyeDRfdCB0O30NCj4gPiA+ICt2b2lkIGZfdmZsb2F0MzJtZjJ4NV90ICgpIHt2ZmxvYXQzMm1m Mng1X3QgdDt9DQo+ID4gPiArdm9pZCBmX3ZmbG9hdDMybWYyeDZfdCAoKSB7dmZsb2F0MzJtZjJ4 Nl90IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92ZmxvYXQzMm1mMng3X3QgKCkge3ZmbG9hdDMybWYyeDdf dCB0O30NCj4gPiA+ICt2b2lkIGZfdmZsb2F0MzJtZjJ4OF90ICgpIHt2ZmxvYXQzMm1mMng4X3Qg dDt9DQo+ID4gPiAgdm9pZCBmX3ZmbG9hdDMybTF4Ml90ICgpIHt2ZmxvYXQzMm0xeDJfdCB0O30N Cj4gPiA+ICB2b2lkIGZfdmZsb2F0MzJtMXgzX3QgKCkge3ZmbG9hdDMybTF4M190IHQ7fQ0KPiA+ ID4gIHZvaWQgZl92ZmxvYXQzMm0xeDRfdCAoKSB7dmZsb2F0MzJtMXg0X3QgdDt9DQo+ID4gPiBA QCAtMTkzLDE0ICsxOTMsMTA3IEBAIHZvaWQgZl92ZmxvYXQzMm0yeDJfdCAoKSB7dmZsb2F0MzJt MngyX3QgdDt9DQo+ID4gPiAgdm9pZCBmX3ZmbG9hdDMybTJ4M190ICgpIHt2ZmxvYXQzMm0yeDNf dCB0O30NCj4gPiA+ICB2b2lkIGZfdmZsb2F0MzJtMng0X3QgKCkge3ZmbG9hdDMybTJ4NF90IHQ7 fQ0KPiA+ID4gIHZvaWQgZl92ZmxvYXQzMm00eDJfdCAoKSB7dmZsb2F0MzJtNHgyX3QgdDt9DQo+ ID4gPiAtdm9pZCBmX3ZmbG9hdDY0bTF4Ml90ICgpIHt2ZmxvYXQ2NG0xeDJfdCB0O30gLyogeyBk Zy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDY0bTF4Ml90J30gfSAqLw0KPiA+ID4g LXZvaWQgZl92ZmxvYXQ2NG0xeDNfdCAoKSB7dmZsb2F0NjRtMXgzX3QgdDt9IC8qIHsgZGctZXJy b3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQ2NG0xeDNfdCd9IH0gKi8NCj4gPiA+IC12b2lk IGZfdmZsb2F0NjRtMXg0X3QgKCkge3ZmbG9hdDY0bTF4NF90IHQ7fSAvKiB7IGRnLWVycm9yIHt1 bmtub3duIHR5cGUgbmFtZSAndmZsb2F0NjRtMXg0X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3Zm bG9hdDY0bTF4NV90ICgpIHt2ZmxvYXQ2NG0xeDVfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93 biB0eXBlIG5hbWUgJ3ZmbG9hdDY0bTF4NV90J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92ZmxvYXQ2 NG0xeDZfdCAoKSB7dmZsb2F0NjRtMXg2X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlw ZSBuYW1lICd2ZmxvYXQ2NG0xeDZfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdmZsb2F0NjRtMXg3 X3QgKCkge3ZmbG9hdDY0bTF4N190IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFt ZSAndmZsb2F0NjRtMXg3X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3ZmbG9hdDY0bTF4OF90ICgp IHt2ZmxvYXQ2NG0xeDhfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Zm bG9hdDY0bTF4OF90J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92ZmxvYXQ2NG0yeDJfdCAoKSB7dmZs b2F0NjRtMngyX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQ2 NG0yeDJfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdmZsb2F0NjRtMngzX3QgKCkge3ZmbG9hdDY0 bTJ4M190IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0NjRtMngz X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3ZmbG9hdDY0bTJ4NF90ICgpIHt2ZmxvYXQ2NG0yeDRf dCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDY0bTJ4NF90J30g fSAqLw0KPiA+ID4gLXZvaWQgZl92ZmxvYXQ2NG00eDJfdCAoKSB7dmZsb2F0NjRtNHgyX3QgdDt9 IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQ2NG00eDJfdCd9IH0gKi8N Cj4gPiA+ICsNCj4gPiA+ICsvKiBUbyBzdXBwb3J0IHRhcmdldCBhdHRyaWJ1dGUsIHRoZSB2Zmxv YXQqbSp4Kl90IG5lZWQgdG8gYmUgcmVnaXN0ZXJlZA0KPiA+ID4gKyAgIGluIGFkdmFuY2UuICBX ZSBhZGQgdHlwZSBhbmQgYXJncy9yZXR1cm4gdmFsdWUgY2hlY2sgZHVyaW5nIHRoZQ0KPiA+ID4g KyAgIHNldCBjdXJyZW50IGZ1bmN0aW9uIGJ1dCBjYW5ub3QgY292ZXIgYmVsb3cgY2FzZXMuICBJ dCBpcyB0aGUgc2FtZQ0KPiA+ID4gKyAgIGJlaGF2aW9yIGNvbXBhcmVkIHRvIGFhcmNoNjQgc3Zl LiAgKi8NCj4gPiA+ICt2b2lkIGZfdmZsb2F0NjRtMXgyX3QgKCkge3ZmbG9hdDY0bTF4Ml90IHQ7 fQ0KPiA+ID4gK3ZvaWQgZl92ZmxvYXQ2NG0xeDNfdCAoKSB7dmZsb2F0NjRtMXgzX3QgdDt9DQo+ ID4gPiArdm9pZCBmX3ZmbG9hdDY0bTF4NF90ICgpIHt2ZmxvYXQ2NG0xeDRfdCB0O30NCj4gPiA+ ICt2b2lkIGZfdmZsb2F0NjRtMXg1X3QgKCkge3ZmbG9hdDY0bTF4NV90IHQ7fQ0KPiA+ID4gK3Zv aWQgZl92ZmxvYXQ2NG0xeDZfdCAoKSB7dmZsb2F0NjRtMXg2X3QgdDt9DQo+ID4gPiArdm9pZCBm X3ZmbG9hdDY0bTF4N190ICgpIHt2ZmxvYXQ2NG0xeDdfdCB0O30NCj4gPiA+ICt2b2lkIGZfdmZs b2F0NjRtMXg4X3QgKCkge3ZmbG9hdDY0bTF4OF90IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92ZmxvYXQ2 NG0yeDJfdCAoKSB7dmZsb2F0NjRtMngyX3QgdDt9DQo+ID4gPiArdm9pZCBmX3ZmbG9hdDY0bTJ4 M190ICgpIHt2ZmxvYXQ2NG0yeDNfdCB0O30NCj4gPiA+ICt2b2lkIGZfdmZsb2F0NjRtMng0X3Qg KCkge3ZmbG9hdDY0bTJ4NF90IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92ZmxvYXQ2NG00eDJfdCAoKSB7 dmZsb2F0NjRtNHgyX3QgdDt9DQo+ID4gPiArDQo+ID4gPiArdm9pZCBuZXdfZl92aW50OG1mOHgy X3QgKHZpbnQ4bWY4eDJfdCB0KSB7IH0gICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2 aW50OG1mOHgyX3QnIHJlcXVpcmVzIHRoZSBtaW5pbWFsIHZlY3RvciBsZW5ndGggJzY0JyBidXQg JzMyJyBpcyBnaXZlbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdnVpbnQ4bWY4eDJfdCAodnVp bnQ4bWY4eDJfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndnVpbnQ4bWY4 eDJfdCcgcmVxdWlyZXMgdGhlIG1pbmltYWwgdmVjdG9yIGxlbmd0aCAnNjQnIGJ1dCAnMzInIGlz IGdpdmVufSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZl92aW50OG1mOHgzX3QgKHZpbnQ4bWY4eDNf dCB0KSB7IH0gICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2aW50OG1mOHgzX3QnIHJl cXVpcmVzIHRoZSBtaW5pbWFsIHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMyJyBpcyBnaXZlbn0g fSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdnVpbnQ4bWY4eDNfdCAodnVpbnQ4bWY4eDNfdCB0KSB7 IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndnVpbnQ4bWY4eDNfdCcgcmVxdWlyZXMg dGhlIG1pbmltYWwgdmVjdG9yIGxlbmd0aCAnNjQnIGJ1dCAnMzInIGlzIGdpdmVufSB9ICovDQo+ ID4gPiArdm9pZCBuZXdfZl92aW50OG1mOHg0X3QgKHZpbnQ4bWY4eDRfdCB0KSB7IH0gICAvKiB7 IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2aW50OG1mOHg0X3QnIHJlcXVpcmVzIHRoZSBtaW5p bWFsIHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMyJyBpcyBnaXZlbn0gfSAqLw0KPiA+ID4gK3Zv aWQgbmV3X2ZfdnVpbnQ4bWY4eDRfdCAodnVpbnQ4bWY4eDRfdCB0KSB7IH0gLyogeyBkZy1lcnJv ciB7YXJndW1lbnQgdHlwZSAndnVpbnQ4bWY4eDRfdCcgcmVxdWlyZXMgdGhlIG1pbmltYWwgdmVj dG9yIGxlbmd0aCAnNjQnIGJ1dCAnMzInIGlzIGdpdmVufSB9ICovDQo+ID4gPiArdm9pZCBuZXdf Zl92aW50OG1mOHg1X3QgKHZpbnQ4bWY4eDVfdCB0KSB7IH0gICAvKiB7IGRnLWVycm9yIHthcmd1 bWVudCB0eXBlICd2aW50OG1mOHg1X3QnIHJlcXVpcmVzIHRoZSBtaW5pbWFsIHZlY3RvciBsZW5n dGggJzY0JyBidXQgJzMyJyBpcyBnaXZlbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdnVpbnQ4 bWY4eDVfdCAodnVpbnQ4bWY4eDVfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlw ZSAndnVpbnQ4bWY4eDVfdCcgcmVxdWlyZXMgdGhlIG1pbmltYWwgdmVjdG9yIGxlbmd0aCAnNjQn IGJ1dCAnMzInIGlzIGdpdmVufSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZl92aW50OG1mOHg2X3Qg KHZpbnQ4bWY4eDZfdCB0KSB7IH0gICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2aW50 OG1mOHg2X3QnIHJlcXVpcmVzIHRoZSBtaW5pbWFsIHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMy JyBpcyBnaXZlbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdnVpbnQ4bWY4eDZfdCAodnVpbnQ4 bWY4eDZfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndnVpbnQ4bWY4eDZf dCcgcmVxdWlyZXMgdGhlIG1pbmltYWwgdmVjdG9yIGxlbmd0aCAnNjQnIGJ1dCAnMzInIGlzIGdp dmVufSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZl92aW50OG1mOHg3X3QgKHZpbnQ4bWY4eDdfdCB0 KSB7IH0gICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2aW50OG1mOHg3X3QnIHJlcXVp cmVzIHRoZSBtaW5pbWFsIHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMyJyBpcyBnaXZlbn0gfSAq Lw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdnVpbnQ4bWY4eDdfdCAodnVpbnQ4bWY4eDdfdCB0KSB7IH0g LyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndnVpbnQ4bWY4eDdfdCcgcmVxdWlyZXMgdGhl IG1pbmltYWwgdmVjdG9yIGxlbmd0aCAnNjQnIGJ1dCAnMzInIGlzIGdpdmVufSB9ICovDQo+ID4g PiArdm9pZCBuZXdfZl92aW50OG1mOHg4X3QgKHZpbnQ4bWY4eDhfdCB0KSB7IH0gICAvKiB7IGRn LWVycm9yIHthcmd1bWVudCB0eXBlICd2aW50OG1mOHg4X3QnIHJlcXVpcmVzIHRoZSBtaW5pbWFs IHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMyJyBpcyBnaXZlbn0gfSAqLw0KPiA+ID4gK3ZvaWQg bmV3X2ZfdnVpbnQ4bWY4eDhfdCAodnVpbnQ4bWY4eDhfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7 YXJndW1lbnQgdHlwZSAndnVpbnQ4bWY4eDhfdCcgcmVxdWlyZXMgdGhlIG1pbmltYWwgdmVjdG9y IGxlbmd0aCAnNjQnIGJ1dCAnMzInIGlzIGdpdmVufSB9ICovDQo+ID4gPiArDQo+ID4gPiArdm9p ZCBuZXdfZl92aW50MTZtZjR4Ml90ICh2aW50MTZtZjR4Ml90IHQpIHsgfSAgIC8qIHsgZGctZXJy b3Ige2FyZ3VtZW50IHR5cGUgJ3ZpbnQxNm1mNHgyX3QnIHJlcXVpcmVzIHRoZSBtaW5pbWFsIHZl Y3RvciBsZW5ndGggJzY0JyBidXQgJzMyJyBpcyBnaXZlbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3 X2ZfdnVpbnQxNm1mNHgyX3QgKHZ1aW50MTZtZjR4Ml90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHth cmd1bWVudCB0eXBlICd2dWludDE2bWY0eDJfdCcgcmVxdWlyZXMgdGhlIG1pbmltYWwgdmVjdG9y IGxlbmd0aCAnNjQnIGJ1dCAnMzInIGlzIGdpdmVufSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZl92 aW50MTZtZjR4M190ICh2aW50MTZtZjR4M190IHQpIHsgfSAgIC8qIHsgZGctZXJyb3Ige2FyZ3Vt ZW50IHR5cGUgJ3ZpbnQxNm1mNHgzX3QnIHJlcXVpcmVzIHRoZSBtaW5pbWFsIHZlY3RvciBsZW5n dGggJzY0JyBidXQgJzMyJyBpcyBnaXZlbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdnVpbnQx Nm1mNHgzX3QgKHZ1aW50MTZtZjR4M190IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0 eXBlICd2dWludDE2bWY0eDNfdCcgcmVxdWlyZXMgdGhlIG1pbmltYWwgdmVjdG9yIGxlbmd0aCAn NjQnIGJ1dCAnMzInIGlzIGdpdmVufSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZl92aW50MTZtZjR4 NF90ICh2aW50MTZtZjR4NF90IHQpIHsgfSAgIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUg J3ZpbnQxNm1mNHg0X3QnIHJlcXVpcmVzIHRoZSBtaW5pbWFsIHZlY3RvciBsZW5ndGggJzY0JyBi dXQgJzMyJyBpcyBnaXZlbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdnVpbnQxNm1mNHg0X3Qg KHZ1aW50MTZtZjR4NF90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2dWlu dDE2bWY0eDRfdCcgcmVxdWlyZXMgdGhlIG1pbmltYWwgdmVjdG9yIGxlbmd0aCAnNjQnIGJ1dCAn MzInIGlzIGdpdmVufSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZl92aW50MTZtZjR4NV90ICh2aW50 MTZtZjR4NV90IHQpIHsgfSAgIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZpbnQxNm1m NHg1X3QnIHJlcXVpcmVzIHRoZSBtaW5pbWFsIHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMyJyBp cyBnaXZlbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdnVpbnQxNm1mNHg1X3QgKHZ1aW50MTZt ZjR4NV90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2dWludDE2bWY0eDVf dCcgcmVxdWlyZXMgdGhlIG1pbmltYWwgdmVjdG9yIGxlbmd0aCAnNjQnIGJ1dCAnMzInIGlzIGdp dmVufSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZl92aW50MTZtZjR4Nl90ICh2aW50MTZtZjR4Nl90 IHQpIHsgfSAgIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZpbnQxNm1mNHg2X3QnIHJl cXVpcmVzIHRoZSBtaW5pbWFsIHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMyJyBpcyBnaXZlbn0g fSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdnVpbnQxNm1mNHg2X3QgKHZ1aW50MTZtZjR4Nl90IHQp IHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2dWludDE2bWY0eDZfdCcgcmVxdWly ZXMgdGhlIG1pbmltYWwgdmVjdG9yIGxlbmd0aCAnNjQnIGJ1dCAnMzInIGlzIGdpdmVufSB9ICov DQo+ID4gPiArdm9pZCBuZXdfZl92aW50MTZtZjR4N190ICh2aW50MTZtZjR4N190IHQpIHsgfSAg IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZpbnQxNm1mNHg3X3QnIHJlcXVpcmVzIHRo ZSBtaW5pbWFsIHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMyJyBpcyBnaXZlbn0gfSAqLw0KPiA+ ID4gK3ZvaWQgbmV3X2ZfdnVpbnQxNm1mNHg3X3QgKHZ1aW50MTZtZjR4N190IHQpIHsgfSAvKiB7 IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2dWludDE2bWY0eDdfdCcgcmVxdWlyZXMgdGhlIG1p bmltYWwgdmVjdG9yIGxlbmd0aCAnNjQnIGJ1dCAnMzInIGlzIGdpdmVufSB9ICovDQo+ID4gPiAr dm9pZCBuZXdfZl92aW50MTZtZjR4OF90ICh2aW50MTZtZjR4OF90IHQpIHsgfSAgIC8qIHsgZGct ZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZpbnQxNm1mNHg4X3QnIHJlcXVpcmVzIHRoZSBtaW5pbWFs IHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMyJyBpcyBnaXZlbn0gfSAqLw0KPiA+ID4gK3ZvaWQg bmV3X2ZfdnVpbnQxNm1mNHg4X3QgKHZ1aW50MTZtZjR4OF90IHQpIHsgfSAvKiB7IGRnLWVycm9y IHthcmd1bWVudCB0eXBlICd2dWludDE2bWY0eDhfdCcgcmVxdWlyZXMgdGhlIG1pbmltYWwgdmVj dG9yIGxlbmd0aCAnNjQnIGJ1dCAnMzInIGlzIGdpdmVufSB9ICovDQo+ID4gPiArDQo+ID4gPiAr dm9pZCBuZXdfZl92aW50MzJtZjJ4Ml90ICh2aW50MzJtZjJ4Ml90IHQpIHsgfSAgIC8qIHsgZGct ZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZpbnQzMm1mMngyX3QnIHJlcXVpcmVzIHRoZSBtaW5pbWFs IHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMyJyBpcyBnaXZlbn0gfSAqLw0KPiA+ID4gK3ZvaWQg bmV3X2ZfdnVpbnQzMm1mMngyX3QgKHZ1aW50MzJtZjJ4Ml90IHQpIHsgfSAvKiB7IGRnLWVycm9y IHthcmd1bWVudCB0eXBlICd2dWludDMybWYyeDJfdCcgcmVxdWlyZXMgdGhlIG1pbmltYWwgdmVj dG9yIGxlbmd0aCAnNjQnIGJ1dCAnMzInIGlzIGdpdmVufSB9ICovDQo+ID4gPiArdm9pZCBuZXdf Zl92aW50MzJtZjJ4M190ICh2aW50MzJtZjJ4M190IHQpIHsgfSAgIC8qIHsgZGctZXJyb3Ige2Fy Z3VtZW50IHR5cGUgJ3ZpbnQzMm1mMngzX3QnIHJlcXVpcmVzIHRoZSBtaW5pbWFsIHZlY3RvciBs ZW5ndGggJzY0JyBidXQgJzMyJyBpcyBnaXZlbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdnVp bnQzMm1mMngzX3QgKHZ1aW50MzJtZjJ4M190IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVu dCB0eXBlICd2dWludDMybWYyeDNfdCcgcmVxdWlyZXMgdGhlIG1pbmltYWwgdmVjdG9yIGxlbmd0 aCAnNjQnIGJ1dCAnMzInIGlzIGdpdmVufSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZl92aW50MzJt ZjJ4NF90ICh2aW50MzJtZjJ4NF90IHQpIHsgfSAgIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5 cGUgJ3ZpbnQzMm1mMng0X3QnIHJlcXVpcmVzIHRoZSBtaW5pbWFsIHZlY3RvciBsZW5ndGggJzY0 JyBidXQgJzMyJyBpcyBnaXZlbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdnVpbnQzMm1mMng0 X3QgKHZ1aW50MzJtZjJ4NF90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2 dWludDMybWYyeDRfdCcgcmVxdWlyZXMgdGhlIG1pbmltYWwgdmVjdG9yIGxlbmd0aCAnNjQnIGJ1 dCAnMzInIGlzIGdpdmVufSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZl92aW50MzJtZjJ4NV90ICh2 aW50MzJtZjJ4NV90IHQpIHsgfSAgIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZpbnQz Mm1mMng1X3QnIHJlcXVpcmVzIHRoZSBtaW5pbWFsIHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMy JyBpcyBnaXZlbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdnVpbnQzMm1mMng1X3QgKHZ1aW50 MzJtZjJ4NV90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2dWludDMybWYy eDVfdCcgcmVxdWlyZXMgdGhlIG1pbmltYWwgdmVjdG9yIGxlbmd0aCAnNjQnIGJ1dCAnMzInIGlz IGdpdmVufSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZl92aW50MzJtZjJ4Nl90ICh2aW50MzJtZjJ4 Nl90IHQpIHsgfSAgIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZpbnQzMm1mMng2X3Qn IHJlcXVpcmVzIHRoZSBtaW5pbWFsIHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMyJyBpcyBnaXZl bn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdnVpbnQzMm1mMng2X3QgKHZ1aW50MzJtZjJ4Nl90 IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2dWludDMybWYyeDZfdCcgcmVx dWlyZXMgdGhlIG1pbmltYWwgdmVjdG9yIGxlbmd0aCAnNjQnIGJ1dCAnMzInIGlzIGdpdmVufSB9 ICovDQo+ID4gPiArdm9pZCBuZXdfZl92aW50MzJtZjJ4N190ICh2aW50MzJtZjJ4N190IHQpIHsg fSAgIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZpbnQzMm1mMng3X3QnIHJlcXVpcmVz IHRoZSBtaW5pbWFsIHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMyJyBpcyBnaXZlbn0gfSAqLw0K PiA+ID4gK3ZvaWQgbmV3X2ZfdnVpbnQzMm1mMng3X3QgKHZ1aW50MzJtZjJ4N190IHQpIHsgfSAv KiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2dWludDMybWYyeDdfdCcgcmVxdWlyZXMgdGhl IG1pbmltYWwgdmVjdG9yIGxlbmd0aCAnNjQnIGJ1dCAnMzInIGlzIGdpdmVufSB9ICovDQo+ID4g PiArdm9pZCBuZXdfZl92aW50MzJtZjJ4OF90ICh2aW50MzJtZjJ4OF90IHQpIHsgfSAgIC8qIHsg ZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZpbnQzMm1mMng4X3QnIHJlcXVpcmVzIHRoZSBtaW5p bWFsIHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMyJyBpcyBnaXZlbn0gfSAqLw0KPiA+ID4gK3Zv aWQgbmV3X2ZfdnVpbnQzMm1mMng4X3QgKHZ1aW50MzJtZjJ4OF90IHQpIHsgfSAvKiB7IGRnLWVy cm9yIHthcmd1bWVudCB0eXBlICd2dWludDMybWYyeDhfdCcgcmVxdWlyZXMgdGhlIG1pbmltYWwg dmVjdG9yIGxlbmd0aCAnNjQnIGJ1dCAnMzInIGlzIGdpdmVufSB9ICovDQo+ID4gPiArDQo+ID4g PiArdm9pZCBuZXdfZl92aW50NjRtMXgyX3QgKHZpbnQ2NG0xeDJfdCB0KSB7IH0gICAvKiB7IGRn LWVycm9yIHthcmd1bWVudCB0eXBlICd2aW50NjRtMXgyX3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgs IHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3 X2ZfdnVpbnQ2NG0xeDJfdCAodnVpbnQ2NG0xeDJfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJn dW1lbnQgdHlwZSAndnVpbnQ2NG0xeDJfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZlNjRmLCB6 dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZl92aW50NjRt MXgzX3QgKHZpbnQ2NG0xeDNfdCB0KSB7IH0gICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBl ICd2aW50NjRtMXgzX3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYg SVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdnVpbnQ2NG0xeDNfdCAodnVp bnQ2NG0xeDNfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndnVpbnQ2NG0x eDNfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5z aW9ufSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZl92aW50NjRtMXg0X3QgKHZpbnQ2NG0xeDRfdCB0 KSB7IH0gICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2aW50NjRtMXg0X3QnIHJlcXVp cmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0K PiA+ID4gK3ZvaWQgbmV3X2ZfdnVpbnQ2NG0xeDRfdCAodnVpbnQ2NG0xeDRfdCB0KSB7IH0gLyog eyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndnVpbnQ2NG0xeDRfdCcgcmVxdWlyZXMgdGhlIHp2 ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gPiArdm9p ZCBuZXdfZl92aW50NjRtMXg1X3QgKHZpbnQ2NG0xeDVfdCB0KSB7IH0gICAvKiB7IGRnLWVycm9y IHthcmd1bWVudCB0eXBlICd2aW50NjRtMXg1X3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0 ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdnVp bnQ2NG0xeDVfdCAodnVpbnQ2NG0xeDVfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQg dHlwZSAndnVpbnQ2NG0xeDVfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZlNjRmLCB6dmU2NGQg b3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZl92aW50NjRtMXg2X3Qg KHZpbnQ2NG0xeDZfdCB0KSB7IH0gICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2aW50 NjRtMXg2X3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4 dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdnVpbnQ2NG0xeDZfdCAodnVpbnQ2NG0x eDZfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndnVpbnQ2NG0xeDZfdCcg cmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9 ICovDQo+ID4gPiArdm9pZCBuZXdfZl92aW50NjRtMXg3X3QgKHZpbnQ2NG0xeDdfdCB0KSB7IH0g ICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2aW50NjRtMXg3X3QnIHJlcXVpcmVzIHRo ZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4g K3ZvaWQgbmV3X2ZfdnVpbnQ2NG0xeDdfdCAodnVpbnQ2NG0xeDdfdCB0KSB7IH0gLyogeyBkZy1l cnJvciB7YXJndW1lbnQgdHlwZSAndnVpbnQ2NG0xeDdfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwg enZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gPiArdm9pZCBuZXdf Zl92aW50NjRtMXg4X3QgKHZpbnQ2NG0xeDhfdCB0KSB7IH0gICAvKiB7IGRnLWVycm9yIHthcmd1 bWVudCB0eXBlICd2aW50NjRtMXg4X3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZl NjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdnVpbnQ2NG0x eDhfdCAodnVpbnQ2NG0xeDhfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAn dnVpbnQ2NG0xeDhfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJ U0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZl92aW50NjRtMngyX3QgKHZpbnQ2 NG0yeDJfdCB0KSB7IH0gICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2aW50NjRtMngy X3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lv bn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdnVpbnQ2NG0yeDJfdCAodnVpbnQ2NG0yeDJfdCB0 KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndnVpbnQ2NG0yeDJfdCcgcmVxdWly ZXMgdGhlIHp2ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ ID4gPiArdm9pZCBuZXdfZl92aW50NjRtMngzX3QgKHZpbnQ2NG0yeDNfdCB0KSB7IH0gICAvKiB7 IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2aW50NjRtMngzX3QnIHJlcXVpcmVzIHRoZSB6dmU2 NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQg bmV3X2ZfdnVpbnQ2NG0yeDNfdCAodnVpbnQ2NG0yeDNfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7 YXJndW1lbnQgdHlwZSAndnVpbnQ2NG0yeDNfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZlNjRm LCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZl92aW50 NjRtMng0X3QgKHZpbnQ2NG0yeDRfdCB0KSB7IH0gICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0 eXBlICd2aW50NjRtMng0X3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9y IHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdnVpbnQ2NG0yeDRfdCAo dnVpbnQ2NG0yeDRfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndnVpbnQ2 NG0yeDRfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0 ZW5zaW9ufSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZl92aW50NjRtNHgyX3QgKHZpbnQ2NG00eDJf dCB0KSB7IH0gICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2aW50NjRtNHgyX3QnIHJl cXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAq Lw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdnVpbnQ2NG00eDJfdCAodnVpbnQ2NG00eDJfdCB0KSB7IH0g LyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndnVpbnQ2NG00eDJfdCcgcmVxdWlyZXMgdGhl IHp2ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gPiAr DQo+ID4gPiArdm9pZCBuZXdfZl92ZmxvYXQzMm1mMngyX3QgKHZmbG9hdDMybWYyeDJfdCB0KSB7 IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0MzJtZjJ4Ml90JyByZXF1aXJl cyB0aGUgbWluaW1hbCB2ZWN0b3IgbGVuZ3RoICc2NCcgYnV0ICczMicgaXMgZ2l2ZW59IH0gKi8N Cj4gPiA+ICt2b2lkIG5ld19mX3ZmbG9hdDMybWYyeDNfdCAodmZsb2F0MzJtZjJ4M190IHQpIHsg fSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQzMm1mMngzX3QnIHJlcXVpcmVz IHRoZSBtaW5pbWFsIHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMyJyBpcyBnaXZlbn0gfSAqLw0K PiA+ID4gK3ZvaWQgbmV3X2ZfdmZsb2F0MzJtZjJ4NF90ICh2ZmxvYXQzMm1mMng0X3QgdCkgeyB9 IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDMybWYyeDRfdCcgcmVxdWlyZXMg dGhlIG1pbmltYWwgdmVjdG9yIGxlbmd0aCAnNjQnIGJ1dCAnMzInIGlzIGdpdmVufSB9ICovDQo+ ID4gPiArdm9pZCBuZXdfZl92ZmxvYXQzMm1mMng1X3QgKHZmbG9hdDMybWYyeDVfdCB0KSB7IH0g LyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0MzJtZjJ4NV90JyByZXF1aXJlcyB0 aGUgbWluaW1hbCB2ZWN0b3IgbGVuZ3RoICc2NCcgYnV0ICczMicgaXMgZ2l2ZW59IH0gKi8NCj4g PiA+ICt2b2lkIG5ld19mX3ZmbG9hdDMybWYyeDZfdCAodmZsb2F0MzJtZjJ4Nl90IHQpIHsgfSAv KiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQzMm1mMng2X3QnIHJlcXVpcmVzIHRo ZSBtaW5pbWFsIHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMyJyBpcyBnaXZlbn0gfSAqLw0KPiA+ ID4gK3ZvaWQgbmV3X2ZfdmZsb2F0MzJtZjJ4N190ICh2ZmxvYXQzMm1mMng3X3QgdCkgeyB9IC8q IHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDMybWYyeDdfdCcgcmVxdWlyZXMgdGhl IG1pbmltYWwgdmVjdG9yIGxlbmd0aCAnNjQnIGJ1dCAnMzInIGlzIGdpdmVufSB9ICovDQo+ID4g PiArdm9pZCBuZXdfZl92ZmxvYXQzMm1mMng4X3QgKHZmbG9hdDMybWYyeDhfdCB0KSB7IH0gLyog eyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0MzJtZjJ4OF90JyByZXF1aXJlcyB0aGUg bWluaW1hbCB2ZWN0b3IgbGVuZ3RoICc2NCcgYnV0ICczMicgaXMgZ2l2ZW59IH0gKi8NCj4gPiA+ ICsNCj4gPiA+ICt2b2lkIG5ld19mX3ZmbG9hdDY0bTF4Ml90ICh2ZmxvYXQ2NG0xeDJfdCB0KSB7 IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0NjRtMXgyX3QnIHJlcXVpcmVz IHRoZSB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZl92 ZmxvYXQ2NG0xeDNfdCAodmZsb2F0NjRtMXgzX3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3Vt ZW50IHR5cGUgJ3ZmbG9hdDY0bTF4M190JyByZXF1aXJlcyB0aGUgenZlNjRkIG9yIHYgSVNBIGV4 dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdmZsb2F0NjRtMXg0X3QgKHZmbG9hdDY0 bTF4NF90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQ2NG0xeDRf dCcgcmVxdWlyZXMgdGhlIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2 b2lkIG5ld19mX3ZmbG9hdDY0bTF4NV90ICh2ZmxvYXQ2NG0xeDVfdCB0KSB7IH0gLyogeyBkZy1l cnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0NjRtMXg1X3QnIHJlcXVpcmVzIHRoZSB6dmU2NGQg b3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZl92ZmxvYXQ2NG0xeDZf dCAodmZsb2F0NjRtMXg2X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Zm bG9hdDY0bTF4Nl90JyByZXF1aXJlcyB0aGUgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAq Lw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdmZsb2F0NjRtMXg3X3QgKHZmbG9hdDY0bTF4N190IHQpIHsg fSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQ2NG0xeDdfdCcgcmVxdWlyZXMg dGhlIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mX3Zm bG9hdDY0bTF4OF90ICh2ZmxvYXQ2NG0xeDhfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1l bnQgdHlwZSAndmZsb2F0NjRtMXg4X3QnIHJlcXVpcmVzIHRoZSB6dmU2NGQgb3IgdiBJU0EgZXh0 ZW5zaW9ufSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZl92ZmxvYXQ2NG0yeDJfdCAodmZsb2F0NjRt MngyX3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDY0bTJ4Ml90 JyByZXF1aXJlcyB0aGUgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3Zv aWQgbmV3X2ZfdmZsb2F0NjRtMngzX3QgKHZmbG9hdDY0bTJ4M190IHQpIHsgfSAvKiB7IGRnLWVy cm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQ2NG0yeDNfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0ZCBv ciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mX3ZmbG9hdDY0bTJ4NF90 ICh2ZmxvYXQ2NG0yeDRfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZs b2F0NjRtMng0X3QnIHJlcXVpcmVzIHRoZSB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICov DQo+ID4gPiArdm9pZCBuZXdfZl92ZmxvYXQ2NG00eDJfdCAodmZsb2F0NjRtNHgyX3QgdCkgeyB9 IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDY0bTR4Ml90JyByZXF1aXJlcyB0 aGUgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gZGlmZiAtLWdpdCBhL2dj Yy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS91c2VyLTE1LmMgYi9nY2MvdGVz dHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdXNlci0xNS5jDQo+ID4gPiBpbmRleCAy YTYxNWY4MDgxNi4uMDk0YjdlZmRlZjQgMTAwNjQ0DQo+ID4gPiAtLS0gYS9nY2MvdGVzdHN1aXRl L2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdXNlci0xNS5jDQo+ID4gPiArKysgYi9nY2MvdGVz dHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdXNlci0xNS5jDQo+ID4gPiBAQCAtMTUz LDI4ICsxNTMsMjggQEAgdm9pZCBmX3ZpbnQzMm0yeDRfdCAoKSB7dmludDMybTJ4NF90IHQ7fQ0K PiA+ID4gIHZvaWQgZl92dWludDMybTJ4NF90ICgpIHt2dWludDMybTJ4NF90IHQ7fQ0KPiA+ID4g IHZvaWQgZl92aW50MzJtNHgyX3QgKCkge3ZpbnQzMm00eDJfdCB0O30NCj4gPiA+ICB2b2lkIGZf dnVpbnQzMm00eDJfdCAoKSB7dnVpbnQzMm00eDJfdCB0O30NCj4gPiA+IC12b2lkIGZfdmludDY0 bTF4Ml90ICgpIHt2aW50NjRtMXgyX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBu YW1lICd2aW50NjRtMXgyX3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3Z1aW50NjRtMXgyX3QgKCkg e3Z1aW50NjRtMXgyX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2dWlu dDY0bTF4Ml90J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92aW50NjRtMXgzX3QgKCkge3ZpbnQ2NG0x eDNfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQ2NG0xeDNfdCd9 IH0gKi8NCj4gPiA+IC12b2lkIGZfdnVpbnQ2NG0xeDNfdCAoKSB7dnVpbnQ2NG0xeDNfdCB0O30g LyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1aW50NjRtMXgzX3QnfSB9ICovDQo+ ID4gPiAtdm9pZCBmX3ZpbnQ2NG0xeDRfdCAoKSB7dmludDY0bTF4NF90IHQ7fSAvKiB7IGRnLWVy cm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmludDY0bTF4NF90J30gfSAqLw0KPiA+ID4gLXZvaWQg Zl92dWludDY0bTF4NF90ICgpIHt2dWludDY0bTF4NF90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtu b3duIHR5cGUgbmFtZSAndnVpbnQ2NG0xeDRfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdmludDY0 bTF4NV90ICgpIHt2aW50NjRtMXg1X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBu YW1lICd2aW50NjRtMXg1X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3Z1aW50NjRtMXg1X3QgKCkg e3Z1aW50NjRtMXg1X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2dWlu dDY0bTF4NV90J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92aW50NjRtMXg2X3QgKCkge3ZpbnQ2NG0x eDZfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQ2NG0xeDZfdCd9 IH0gKi8NCj4gPiA+IC12b2lkIGZfdnVpbnQ2NG0xeDZfdCAoKSB7dnVpbnQ2NG0xeDZfdCB0O30g LyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1aW50NjRtMXg2X3QnfSB9ICovDQo+ ID4gPiAtdm9pZCBmX3ZpbnQ2NG0xeDdfdCAoKSB7dmludDY0bTF4N190IHQ7fSAvKiB7IGRnLWVy cm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmludDY0bTF4N190J30gfSAqLw0KPiA+ID4gLXZvaWQg Zl92dWludDY0bTF4N190ICgpIHt2dWludDY0bTF4N190IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtu b3duIHR5cGUgbmFtZSAndnVpbnQ2NG0xeDdfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdmludDY0 bTF4OF90ICgpIHt2aW50NjRtMXg4X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBu YW1lICd2aW50NjRtMXg4X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3Z1aW50NjRtMXg4X3QgKCkg e3Z1aW50NjRtMXg4X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2dWlu dDY0bTF4OF90J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92aW50NjRtMngyX3QgKCkge3ZpbnQ2NG0y eDJfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQ2NG0yeDJfdCd9 IH0gKi8NCj4gPiA+IC12b2lkIGZfdnVpbnQ2NG0yeDJfdCAoKSB7dnVpbnQ2NG0yeDJfdCB0O30g LyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1aW50NjRtMngyX3QnfSB9ICovDQo+ ID4gPiAtdm9pZCBmX3ZpbnQ2NG0yeDNfdCAoKSB7dmludDY0bTJ4M190IHQ7fSAvKiB7IGRnLWVy cm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmludDY0bTJ4M190J30gfSAqLw0KPiA+ID4gLXZvaWQg Zl92dWludDY0bTJ4M190ICgpIHt2dWludDY0bTJ4M190IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtu b3duIHR5cGUgbmFtZSAndnVpbnQ2NG0yeDNfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdmludDY0 bTJ4NF90ICgpIHt2aW50NjRtMng0X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBu YW1lICd2aW50NjRtMng0X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3Z1aW50NjRtMng0X3QgKCkg e3Z1aW50NjRtMng0X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2dWlu dDY0bTJ4NF90J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92aW50NjRtNHgyX3QgKCkge3ZpbnQ2NG00 eDJfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQ2NG00eDJfdCd9 IH0gKi8NCj4gPiA+IC12b2lkIGZfdnVpbnQ2NG00eDJfdCAoKSB7dnVpbnQ2NG00eDJfdCB0O30g LyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1aW50NjRtNHgyX3QnfSB9ICovDQo+ ID4gPiArdm9pZCBmX3ZpbnQ2NG0xeDJfdCAoKSB7dmludDY0bTF4Ml90IHQ7fQ0KPiA+ID4gK3Zv aWQgZl92dWludDY0bTF4Ml90ICgpIHt2dWludDY0bTF4Ml90IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92 aW50NjRtMXgzX3QgKCkge3ZpbnQ2NG0xeDNfdCB0O30NCj4gPiA+ICt2b2lkIGZfdnVpbnQ2NG0x eDNfdCAoKSB7dnVpbnQ2NG0xeDNfdCB0O30NCj4gPiA+ICt2b2lkIGZfdmludDY0bTF4NF90ICgp IHt2aW50NjRtMXg0X3QgdDt9DQo+ID4gPiArdm9pZCBmX3Z1aW50NjRtMXg0X3QgKCkge3Z1aW50 NjRtMXg0X3QgdDt9DQo+ID4gPiArdm9pZCBmX3ZpbnQ2NG0xeDVfdCAoKSB7dmludDY0bTF4NV90 IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92dWludDY0bTF4NV90ICgpIHt2dWludDY0bTF4NV90IHQ7fQ0K PiA+ID4gK3ZvaWQgZl92aW50NjRtMXg2X3QgKCkge3ZpbnQ2NG0xeDZfdCB0O30NCj4gPiA+ICt2 b2lkIGZfdnVpbnQ2NG0xeDZfdCAoKSB7dnVpbnQ2NG0xeDZfdCB0O30NCj4gPiA+ICt2b2lkIGZf dmludDY0bTF4N190ICgpIHt2aW50NjRtMXg3X3QgdDt9DQo+ID4gPiArdm9pZCBmX3Z1aW50NjRt MXg3X3QgKCkge3Z1aW50NjRtMXg3X3QgdDt9DQo+ID4gPiArdm9pZCBmX3ZpbnQ2NG0xeDhfdCAo KSB7dmludDY0bTF4OF90IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92dWludDY0bTF4OF90ICgpIHt2dWlu dDY0bTF4OF90IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92aW50NjRtMngyX3QgKCkge3ZpbnQ2NG0yeDJf dCB0O30NCj4gPiA+ICt2b2lkIGZfdnVpbnQ2NG0yeDJfdCAoKSB7dnVpbnQ2NG0yeDJfdCB0O30N Cj4gPiA+ICt2b2lkIGZfdmludDY0bTJ4M190ICgpIHt2aW50NjRtMngzX3QgdDt9DQo+ID4gPiAr dm9pZCBmX3Z1aW50NjRtMngzX3QgKCkge3Z1aW50NjRtMngzX3QgdDt9DQo+ID4gPiArdm9pZCBm X3ZpbnQ2NG0yeDRfdCAoKSB7dmludDY0bTJ4NF90IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92dWludDY0 bTJ4NF90ICgpIHt2dWludDY0bTJ4NF90IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92aW50NjRtNHgyX3Qg KCkge3ZpbnQ2NG00eDJfdCB0O30NCj4gPiA+ICt2b2lkIGZfdnVpbnQ2NG00eDJfdCAoKSB7dnVp bnQ2NG00eDJfdCB0O30NCj4gPiA+ICB2b2lkIGZfdmZsb2F0MzJtZjJ4Ml90ICgpIHt2ZmxvYXQz Mm1mMngyX3QgdDt9DQo+ID4gPiAgdm9pZCBmX3ZmbG9hdDMybWYyeDNfdCAoKSB7dmZsb2F0MzJt ZjJ4M190IHQ7fQ0KPiA+ID4gIHZvaWQgZl92ZmxvYXQzMm1mMng0X3QgKCkge3ZmbG9hdDMybWYy eDRfdCB0O30NCj4gPiA+IEBAIC0xOTMsMTQgKzE5Myw1NCBAQCB2b2lkIGZfdmZsb2F0MzJtMngy X3QgKCkge3ZmbG9hdDMybTJ4Ml90IHQ7fQ0KPiA+ID4gIHZvaWQgZl92ZmxvYXQzMm0yeDNfdCAo KSB7dmZsb2F0MzJtMngzX3QgdDt9DQo+ID4gPiAgdm9pZCBmX3ZmbG9hdDMybTJ4NF90ICgpIHt2 ZmxvYXQzMm0yeDRfdCB0O30NCj4gPiA+ICB2b2lkIGZfdmZsb2F0MzJtNHgyX3QgKCkge3ZmbG9h dDMybTR4Ml90IHQ7fQ0KPiA+ID4gLXZvaWQgZl92ZmxvYXQ2NG0xeDJfdCAoKSB7dmZsb2F0NjRt MXgyX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQ2NG0xeDJf dCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdmZsb2F0NjRtMXgzX3QgKCkge3ZmbG9hdDY0bTF4M190 IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0NjRtMXgzX3QnfSB9 ICovDQo+ID4gPiAtdm9pZCBmX3ZmbG9hdDY0bTF4NF90ICgpIHt2ZmxvYXQ2NG0xeDRfdCB0O30g LyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDY0bTF4NF90J30gfSAqLw0K PiA+ID4gLXZvaWQgZl92ZmxvYXQ2NG0xeDVfdCAoKSB7dmZsb2F0NjRtMXg1X3QgdDt9IC8qIHsg ZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQ2NG0xeDVfdCd9IH0gKi8NCj4gPiA+ IC12b2lkIGZfdmZsb2F0NjRtMXg2X3QgKCkge3ZmbG9hdDY0bTF4Nl90IHQ7fSAvKiB7IGRnLWVy cm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0NjRtMXg2X3QnfSB9ICovDQo+ID4gPiAtdm9p ZCBmX3ZmbG9hdDY0bTF4N190ICgpIHt2ZmxvYXQ2NG0xeDdfdCB0O30gLyogeyBkZy1lcnJvciB7 dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDY0bTF4N190J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92 ZmxvYXQ2NG0xeDhfdCAoKSB7dmZsb2F0NjRtMXg4X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25v d24gdHlwZSBuYW1lICd2ZmxvYXQ2NG0xeDhfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdmZsb2F0 NjRtMngyX3QgKCkge3ZmbG9hdDY0bTJ4Ml90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5 cGUgbmFtZSAndmZsb2F0NjRtMngyX3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3ZmbG9hdDY0bTJ4 M190ICgpIHt2ZmxvYXQ2NG0yeDNfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5h bWUgJ3ZmbG9hdDY0bTJ4M190J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92ZmxvYXQ2NG0yeDRfdCAo KSB7dmZsb2F0NjRtMng0X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2 ZmxvYXQ2NG0yeDRfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdmZsb2F0NjRtNHgyX3QgKCkge3Zm bG9hdDY0bTR4Ml90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0 NjRtNHgyX3QnfSB9ICovDQo+ID4gPiArDQo+ID4gPiArLyogVG8gc3VwcG9ydCB0YXJnZXQgYXR0 cmlidXRlLCB0aGUgdmZsb2F0Km0qeCpfdCBuZWVkIHRvIGJlIHJlZ2lzdGVyZWQNCj4gPiA+ICsg ICBpbiBhZHZhbmNlLiAgV2UgYWRkIHR5cGUgYW5kIGFyZ3MvcmV0dXJuIHZhbHVlIGNoZWNrIGR1 cmluZyB0aGUNCj4gPiA+ICsgICBzZXQgY3VycmVudCBmdW5jdGlvbiBidXQgY2Fubm90IGNvdmVy IGJlbG93IGNhc2VzLiAgSXQgaXMgdGhlIHNhbWUNCj4gPiA+ICsgICBiZWhhdmlvciBjb21wYXJl ZCB0byBhYXJjaDY0IHN2ZS4gICovDQo+ID4gPiArdm9pZCBmX3ZmbG9hdDY0bTF4Ml90ICgpIHt2 ZmxvYXQ2NG0xeDJfdCB0O30NCj4gPiA+ICt2b2lkIGZfdmZsb2F0NjRtMXgzX3QgKCkge3ZmbG9h dDY0bTF4M190IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92ZmxvYXQ2NG0xeDRfdCAoKSB7dmZsb2F0NjRt MXg0X3QgdDt9DQo+ID4gPiArdm9pZCBmX3ZmbG9hdDY0bTF4NV90ICgpIHt2ZmxvYXQ2NG0xeDVf dCB0O30NCj4gPiA+ICt2b2lkIGZfdmZsb2F0NjRtMXg2X3QgKCkge3ZmbG9hdDY0bTF4Nl90IHQ7 fQ0KPiA+ID4gK3ZvaWQgZl92ZmxvYXQ2NG0xeDdfdCAoKSB7dmZsb2F0NjRtMXg3X3QgdDt9DQo+ ID4gPiArdm9pZCBmX3ZmbG9hdDY0bTF4OF90ICgpIHt2ZmxvYXQ2NG0xeDhfdCB0O30NCj4gPiA+ ICt2b2lkIGZfdmZsb2F0NjRtMngyX3QgKCkge3ZmbG9hdDY0bTJ4Ml90IHQ7fQ0KPiA+ID4gK3Zv aWQgZl92ZmxvYXQ2NG0yeDNfdCAoKSB7dmZsb2F0NjRtMngzX3QgdDt9DQo+ID4gPiArdm9pZCBm X3ZmbG9hdDY0bTJ4NF90ICgpIHt2ZmxvYXQ2NG0yeDRfdCB0O30NCj4gPiA+ICt2b2lkIGZfdmZs b2F0NjRtNHgyX3QgKCkge3ZmbG9hdDY0bTR4Ml90IHQ7fQ0KPiA+ID4gKw0KPiA+ID4gK3ZvaWQg bmV3X2ZfdmludDY0bTF4Ml90ICh2aW50NjRtMXgyX3QgdCkgeyB9ICAgLyogeyBkZy1lcnJvciB7 YXJndW1lbnQgdHlwZSAndmludDY0bTF4Ml90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYs IHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mX3Z1aW50 NjRtMXgyX3QgKHZ1aW50NjRtMXgyX3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5 cGUgJ3Z1aW50NjRtMXgyX3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9y IHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdmludDY0bTF4M190ICh2 aW50NjRtMXgzX3QgdCkgeyB9ICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmludDY0 bTF4M190JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRl bnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mX3Z1aW50NjRtMXgzX3QgKHZ1aW50NjRtMXgz X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50NjRtMXgzX3QnIHJl cXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAq Lw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdmludDY0bTF4NF90ICh2aW50NjRtMXg0X3QgdCkgeyB9ICAg LyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmludDY0bTF4NF90JyByZXF1aXJlcyB0aGUg enZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2 b2lkIG5ld19mX3Z1aW50NjRtMXg0X3QgKHZ1aW50NjRtMXg0X3QgdCkgeyB9IC8qIHsgZGctZXJy b3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50NjRtMXg0X3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2 ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2Zf dmludDY0bTF4NV90ICh2aW50NjRtMXg1X3QgdCkgeyB9ICAgLyogeyBkZy1lcnJvciB7YXJndW1l bnQgdHlwZSAndmludDY0bTF4NV90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0 ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mX3Z1aW50NjRtMXg1 X3QgKHZ1aW50NjRtMXg1X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1 aW50NjRtMXg1X3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNB IGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdmludDY0bTF4Nl90ICh2aW50NjRt MXg2X3QgdCkgeyB9ICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmludDY0bTF4Nl90 JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259 IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mX3Z1aW50NjRtMXg2X3QgKHZ1aW50NjRtMXg2X3QgdCkg eyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50NjRtMXg2X3QnIHJlcXVpcmVz IHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ ID4gK3ZvaWQgbmV3X2ZfdmludDY0bTF4N190ICh2aW50NjRtMXg3X3QgdCkgeyB9ICAgLyogeyBk Zy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmludDY0bTF4N190JyByZXF1aXJlcyB0aGUgenZlNjR4 LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5l d19mX3Z1aW50NjRtMXg3X3QgKHZ1aW50NjRtMXg3X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2Fy Z3VtZW50IHR5cGUgJ3Z1aW50NjRtMXg3X3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0Ziwg enZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdmludDY0 bTF4OF90ICh2aW50NjRtMXg4X3QgdCkgeyB9ICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlw ZSAndmludDY0bTF4OF90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2 IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mX3Z1aW50NjRtMXg4X3QgKHZ1 aW50NjRtMXg4X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50NjRt MXg4X3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVu c2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdmludDY0bTJ4Ml90ICh2aW50NjRtMngyX3Qg dCkgeyB9ICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmludDY0bTJ4Ml90JyByZXF1 aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8N Cj4gPiA+ICt2b2lkIG5ld19mX3Z1aW50NjRtMngyX3QgKHZ1aW50NjRtMngyX3QgdCkgeyB9IC8q IHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50NjRtMngyX3QnIHJlcXVpcmVzIHRoZSB6 dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3Zv aWQgbmV3X2ZfdmludDY0bTJ4M190ICh2aW50NjRtMngzX3QgdCkgeyB9ICAgLyogeyBkZy1lcnJv ciB7YXJndW1lbnQgdHlwZSAndmludDY0bTJ4M190JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2 NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mX3Z1 aW50NjRtMngzX3QgKHZ1aW50NjRtMngzX3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50 IHR5cGUgJ3Z1aW50NjRtMngzX3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRk IG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdmludDY0bTJ4NF90 ICh2aW50NjRtMng0X3QgdCkgeyB9ICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmlu dDY0bTJ4NF90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBl eHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mX3Z1aW50NjRtMng0X3QgKHZ1aW50NjRt Mng0X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50NjRtMng0X3Qn IHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0g fSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdmludDY0bTR4Ml90ICh2aW50NjRtNHgyX3QgdCkgeyB9 ICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmludDY0bTR4Ml90JyByZXF1aXJlcyB0 aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ ICt2b2lkIG5ld19mX3Z1aW50NjRtNHgyX3QgKHZ1aW50NjRtNHgyX3QgdCkgeyB9IC8qIHsgZGct ZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50NjRtNHgyX3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgs IHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gKw0KPiA+ID4g K3ZvaWQgbmV3X2ZfdmZsb2F0NjRtMXgyX3QgKHZmbG9hdDY0bTF4Ml90IHQpIHsgfSAvKiB7IGRn LWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQ2NG0xeDJfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0 ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mX3ZmbG9hdDY0bTF4 M190ICh2ZmxvYXQ2NG0xeDNfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAn dmZsb2F0NjRtMXgzX3QnIHJlcXVpcmVzIHRoZSB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9 ICovDQo+ID4gPiArdm9pZCBuZXdfZl92ZmxvYXQ2NG0xeDRfdCAodmZsb2F0NjRtMXg0X3QgdCkg eyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDY0bTF4NF90JyByZXF1aXJl cyB0aGUgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2Zf dmZsb2F0NjRtMXg1X3QgKHZmbG9hdDY0bTF4NV90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1 bWVudCB0eXBlICd2ZmxvYXQ2NG0xeDVfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0ZCBvciB2IElTQSBl eHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mX3ZmbG9hdDY0bTF4Nl90ICh2ZmxvYXQ2 NG0xeDZfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0NjRtMXg2 X3QnIHJlcXVpcmVzIHRoZSB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gPiAr dm9pZCBuZXdfZl92ZmxvYXQ2NG0xeDdfdCAodmZsb2F0NjRtMXg3X3QgdCkgeyB9IC8qIHsgZGct ZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDY0bTF4N190JyByZXF1aXJlcyB0aGUgenZlNjRk IG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdmZsb2F0NjRtMXg4 X3QgKHZmbG9hdDY0bTF4OF90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2 ZmxvYXQ2NG0xeDhfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0g Ki8NCj4gPiA+ICt2b2lkIG5ld19mX3ZmbG9hdDY0bTJ4Ml90ICh2ZmxvYXQ2NG0yeDJfdCB0KSB7 IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0NjRtMngyX3QnIHJlcXVpcmVz IHRoZSB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZl92 ZmxvYXQ2NG0yeDNfdCAodmZsb2F0NjRtMngzX3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3Vt ZW50IHR5cGUgJ3ZmbG9hdDY0bTJ4M190JyByZXF1aXJlcyB0aGUgenZlNjRkIG9yIHYgSVNBIGV4 dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZfdmZsb2F0NjRtMng0X3QgKHZmbG9hdDY0 bTJ4NF90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQ2NG0yeDRf dCcgcmVxdWlyZXMgdGhlIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2 b2lkIG5ld19mX3ZmbG9hdDY0bTR4Ml90ICh2ZmxvYXQ2NG00eDJfdCB0KSB7IH0gLyogeyBkZy1l cnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0NjRtNHgyX3QnIHJlcXVpcmVzIHRoZSB6dmU2NGQg b3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gPiBkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0 ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3VzZXItMi5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2Mu dGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3VzZXItMi5jDQo+ID4gPiBpbmRleCA5MmY0ZWUwMmQyMC4u NmUwOGY1MjJkOWYgMTAwNjQ0DQo+ID4gPiAtLS0gYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQv cmlzY3YvcnZ2L2Jhc2UvdXNlci0yLmMNCj4gPiA+ICsrKyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRh cmdldC9yaXNjdi9ydnYvYmFzZS91c2VyLTIuYw0KPiA+ID4gQEAgLTU0LDEyICs1NCwyNyBAQCB2 b2lkIGZvbzQ3ICgpIHt2aW50NjRtNF90IHQ7fQ0KPiA+ID4gIHZvaWQgZm9vNDggKCkge3Z1aW50 NjRtNF90IHQ7fQ0KPiA+ID4gIHZvaWQgZm9vNDkgKCkge3ZpbnQ2NG04X3QgdDt9DQo+ID4gPiAg dm9pZCBmb281MCAoKSB7dnVpbnQ2NG04X3QgdDt9DQo+ID4gPiAtdm9pZCBmb281NyAoKSB7dmZs b2F0MzJtZjJfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDMy bWYyX3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmb281OCAoKSB7dmZsb2F0MzJtMV90IHQ7fSAvKiB7 IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0MzJtMV90J30gfSAqLw0KPiA+ID4g LXZvaWQgZm9vNTkgKCkge3ZmbG9hdDMybTJfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0 eXBlIG5hbWUgJ3ZmbG9hdDMybTJfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZvbzYwICgpIHt2Zmxv YXQzMm00X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQzMm00 X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmb282MSAoKSB7dmZsb2F0MzJtOF90IHQ7fSAvKiB7IGRn LWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0MzJtOF90J30gfSAqLw0KPiA+ID4gLXZv aWQgZm9vNjIgKCkge3ZmbG9hdDY0bTFfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBl IG5hbWUgJ3ZmbG9hdDY0bTFfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZvbzYzICgpIHt2ZmxvYXQ2 NG0yX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQ2NG0yX3Qn fSB9ICovDQo+ID4gPiAtdm9pZCBmb282NCAoKSB7dmZsb2F0NjRtNF90IHQ7fSAvKiB7IGRnLWVy cm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0NjRtNF90J30gfSAqLw0KPiA+ID4gLXZvaWQg Zm9vNjUgKCkge3ZmbG9hdDY0bThfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5h bWUgJ3ZmbG9hdDY0bThfdCd9IH0gKi8NCj4gPiA+ICsNCj4gPiA+ICsvKiBUbyBzdXBwb3J0IHRh cmdldCBhdHRyaWJ1dGUsIHRoZSB2ZmxvYXQqbSp4Kl90IG5lZWQgdG8gYmUgcmVnaXN0ZXJlZA0K PiA+ID4gKyAgIGluIGFkdmFuY2UuICBXZSBhZGQgdHlwZSBhbmQgYXJncy9yZXR1cm4gdmFsdWUg Y2hlY2sgZHVyaW5nIHRoZQ0KPiA+ID4gKyAgIHNldCBjdXJyZW50IGZ1bmN0aW9uIGJ1dCBjYW5u b3QgY292ZXIgYmVsb3cgY2FzZXMuICBJdCBpcyB0aGUgc2FtZQ0KPiA+ID4gKyAgIGJlaGF2aW9y IGNvbXBhcmVkIHRvIGFhcmNoNjQgc3ZlLiAgKi8NCj4gPiA+ICt2b2lkIGZvbzU3ICgpIHt2Zmxv YXQzMm1mMl90IHQ7fQ0KPiA+ID4gK3ZvaWQgZm9vNTggKCkge3ZmbG9hdDMybTFfdCB0O30NCj4g PiA+ICt2b2lkIGZvbzU5ICgpIHt2ZmxvYXQzMm0yX3QgdDt9DQo+ID4gPiArdm9pZCBmb282MCAo KSB7dmZsb2F0MzJtNF90IHQ7fQ0KPiA+ID4gK3ZvaWQgZm9vNjEgKCkge3ZmbG9hdDMybThfdCB0 O30NCj4gPiA+ICt2b2lkIGZvbzYyICgpIHt2ZmxvYXQ2NG0xX3QgdDt9DQo+ID4gPiArdm9pZCBm b282MyAoKSB7dmZsb2F0NjRtMl90IHQ7fQ0KPiA+ID4gK3ZvaWQgZm9vNjQgKCkge3ZmbG9hdDY0 bTRfdCB0O30NCj4gPiA+ICt2b2lkIGZvbzY1ICgpIHt2ZmxvYXQ2NG04X3QgdDt9DQo+ID4gPiAr DQo+ID4gPiArdm9pZCBuZXdfZm9vNTcgKHZmbG9hdDMybWYyX3QgdCkgeyB9IC8qIHsgZGctZXJy b3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDMybWYyX3QnIHJlcXVpcmVzIHRoZSB6dmUzMmYsIHp2 ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2Zv bzU4ICh2ZmxvYXQzMm0xX3QgdCkgeyB9ICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2 ZmxvYXQzMm0xX3QnIHJlcXVpcmVzIHRoZSB6dmUzMmYsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNB IGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZvbzU5ICh2ZmxvYXQzMm0yX3QgdCkg eyB9ICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQzMm0yX3QnIHJlcXVpcmVz IHRoZSB6dmUzMmYsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ ID4gK3ZvaWQgbmV3X2ZvbzYwICh2ZmxvYXQzMm00X3QgdCkgeyB9ICAvKiB7IGRnLWVycm9yIHth cmd1bWVudCB0eXBlICd2ZmxvYXQzMm00X3QnIHJlcXVpcmVzIHRoZSB6dmUzMmYsIHp2ZTY0Ziwg enZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZvbzYxICh2 ZmxvYXQzMm04X3QgdCkgeyB9ICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQz Mm04X3QnIHJlcXVpcmVzIHRoZSB6dmUzMmYsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVu c2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZvbzYyICh2ZmxvYXQ2NG0xX3QgdCkgeyB9ICAv KiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQ2NG0xX3QnIHJlcXVpcmVzIHRoZSB6 dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZm9vNjMgKHZm bG9hdDY0bTJfdCB0KSB7IH0gIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDY0 bTJfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ ICt2b2lkIG5ld19mb282NCAodmZsb2F0NjRtNF90IHQpIHsgfSAgLyogeyBkZy1lcnJvciB7YXJn dW1lbnQgdHlwZSAndmZsb2F0NjRtNF90JyByZXF1aXJlcyB0aGUgenZlNjRkIG9yIHYgSVNBIGV4 dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZvbzY1ICh2ZmxvYXQ2NG04X3QgdCkgeyB9 ICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQ2NG04X3QnIHJlcXVpcmVzIHRo ZSB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gPiBkaWZmIC0tZ2l0IGEvZ2Nj L3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3VzZXItMy5jIGIvZ2NjL3Rlc3Rz dWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3VzZXItMy5jDQo+ID4gPiBpbmRleCAzYTQy NTcyMTg2My4uNGZiNDAyMzM1MDkgMTAwNjQ0DQo+ID4gPiAtLS0gYS9nY2MvdGVzdHN1aXRlL2dj Yy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdXNlci0zLmMNCj4gPiA+ICsrKyBiL2djYy90ZXN0c3Vp dGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS91c2VyLTMuYw0KPiA+ID4gQEAgLTU5LDcgKzU5 LDE3IEBAIHZvaWQgZm9vNTggKCkge3ZmbG9hdDMybTFfdCB0O30NCj4gPiA+ICB2b2lkIGZvbzU5 ICgpIHt2ZmxvYXQzMm0yX3QgdDt9DQo+ID4gPiAgdm9pZCBmb282MCAoKSB7dmZsb2F0MzJtNF90 IHQ7fQ0KPiA+ID4gIHZvaWQgZm9vNjEgKCkge3ZmbG9hdDMybThfdCB0O30NCj4gPiA+IC12b2lk IGZvbzYyICgpIHt2ZmxvYXQ2NG0xX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBu YW1lICd2ZmxvYXQ2NG0xX3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmb282MyAoKSB7dmZsb2F0NjRt Ml90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0NjRtMl90J30g fSAqLw0KPiA+ID4gLXZvaWQgZm9vNjQgKCkge3ZmbG9hdDY0bTRfdCB0O30gLyogeyBkZy1lcnJv ciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDY0bTRfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZv bzY1ICgpIHt2ZmxvYXQ2NG04X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1l ICd2ZmxvYXQ2NG04X3QnfSB9ICovDQo+ID4gPiArDQo+ID4gPiArLyogVG8gc3VwcG9ydCB0YXJn ZXQgYXR0cmlidXRlLCB0aGUgdmZsb2F0Km0qeCpfdCBuZWVkIHRvIGJlIHJlZ2lzdGVyZWQNCj4g PiA+ICsgICBpbiBhZHZhbmNlLiAgV2UgYWRkIHR5cGUgYW5kIGFyZ3MvcmV0dXJuIHZhbHVlIGNo ZWNrIGR1cmluZyB0aGUNCj4gPiA+ICsgICBzZXQgY3VycmVudCBmdW5jdGlvbiBidXQgY2Fubm90 IGNvdmVyIGJlbG93IGNhc2VzLiAgSXQgaXMgdGhlIHNhbWUNCj4gPiA+ICsgICBiZWhhdmlvciBj b21wYXJlZCB0byBhYXJjaDY0IHN2ZS4gICovDQo+ID4gPiArdm9pZCBmb282MiAoKSB7dmZsb2F0 NjRtMV90IHQ7fQ0KPiA+ID4gK3ZvaWQgZm9vNjMgKCkge3ZmbG9hdDY0bTJfdCB0O30NCj4gPiA+ ICt2b2lkIGZvbzY0ICgpIHt2ZmxvYXQ2NG00X3QgdDt9DQo+ID4gPiArdm9pZCBmb282NSAoKSB7 dmZsb2F0NjRtOF90IHQ7fQ0KPiA+ID4gKw0KPiA+ID4gK3ZvaWQgbmV3X2ZvbzYyICh2ZmxvYXQ2 NG0xX3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDY0bTFfdCcg cmVxdWlyZXMgdGhlIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lk IG5ld19mb282MyAodmZsb2F0NjRtMl90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0 eXBlICd2ZmxvYXQ2NG0yX3QnIHJlcXVpcmVzIHRoZSB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9u fSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZm9vNjQgKHZmbG9hdDY0bTRfdCB0KSB7IH0gLyogeyBk Zy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0NjRtNF90JyByZXF1aXJlcyB0aGUgenZlNjRk IG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZvbzY1ICh2ZmxvYXQ2 NG04X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDY0bThfdCcg cmVxdWlyZXMgdGhlIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+IGRpZmYg LS1naXQgYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdXNlci01LmMg Yi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdXNlci01LmMNCj4gPiA+ IGluZGV4IGRlODUwZTVlMTBkLi4yOGIzYWU3MDhmNSAxMDA2NDQNCj4gPiA+IC0tLSBhL2djYy90 ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS91c2VyLTUuYw0KPiA+ID4gKysrIGIv Z2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3VzZXItNS5jDQo+ID4gPiBA QCAtMywxNSArMywxNSBAQA0KPiA+ID4NCj4gPiA+ICAjaW5jbHVkZSAicmlzY3ZfdmVjdG9yLmgi DQo+ID4gPg0KPiA+ID4gLXZvaWQgZm9vMCAoKSB7dmJvb2w2NF90IHQ7fSAvKiB7IGRnLWVycm9y IHt1bmtub3duIHR5cGUgbmFtZSAndmJvb2w2NF90J30gfSAqLw0KPiA+ID4gK3ZvaWQgZm9vMCAo KSB7dmJvb2w2NF90IHQ7fQ0KPiA+ID4gIHZvaWQgZm9vMSAoKSB7dmJvb2wzMl90IHQ7fQ0KPiA+ ID4gIHZvaWQgZm9vMiAoKSB7dmJvb2wxNl90IHQ7fQ0KPiA+ID4gIHZvaWQgZm9vMyAoKSB7dmJv b2w4X3QgdDt9DQo+ID4gPiAgdm9pZCBmb280ICgpIHt2Ym9vbDRfdCB0O30NCj4gPiA+ICB2b2lk IGZvbzUgKCkge3Zib29sMl90IHQ7fQ0KPiA+ID4gIHZvaWQgZm9vNiAoKSB7dmJvb2wxX3QgdDt9 DQo+ID4gPiAtdm9pZCBmb283ICgpIHt2aW50OG1mOF90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtu b3duIHR5cGUgbmFtZSAndmludDhtZjhfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZvbzggKCkge3Z1 aW50OG1mOF90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndnVpbnQ4bWY4 X3QnfSB9ICovDQo+ID4gPiArdm9pZCBmb283ICgpIHt2aW50OG1mOF90IHQ7fQ0KPiA+ID4gK3Zv aWQgZm9vOCAoKSB7dnVpbnQ4bWY4X3QgdDt9DQo+ID4gPiAgdm9pZCBmb285ICgpIHt2aW50OG1m NF90IHQ7fQ0KPiA+ID4gIHZvaWQgZm9vMTAgKCkge3Z1aW50OG1mNF90IHQ7fQ0KPiA+ID4gIHZv aWQgZm9vMTEgKCkge3ZpbnQ4bWYyX3QgdDt9DQo+ID4gPiBAQCAtMjQsOCArMjQsOCBAQCB2b2lk IGZvbzE3ICgpIHt2aW50OG00X3QgdDt9DQo+ID4gPiAgdm9pZCBmb28xOCAoKSB7dnVpbnQ4bTRf dCB0O30NCj4gPiA+ICB2b2lkIGZvbzE5ICgpIHt2aW50OG04X3QgdDt9DQo+ID4gPiAgdm9pZCBm b28yMCAoKSB7dnVpbnQ4bThfdCB0O30NCj4gPiA+IC12b2lkIGZvbzIxICgpIHt2aW50MTZtZjRf dCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQxNm1mNF90J30gfSAq Lw0KPiA+ID4gLXZvaWQgZm9vMjIgKCkge3Z1aW50MTZtZjRfdCB0O30gLyogeyBkZy1lcnJvciB7 dW5rbm93biB0eXBlIG5hbWUgJ3Z1aW50MTZtZjRfdCd9IH0gKi8NCj4gPiA+ICt2b2lkIGZvbzIx ICgpIHt2aW50MTZtZjRfdCB0O30NCj4gPiA+ICt2b2lkIGZvbzIyICgpIHt2dWludDE2bWY0X3Qg dDt9DQo+ID4gPiAgdm9pZCBmb28yMyAoKSB7dmludDE2bWYyX3QgdDt9DQo+ID4gPiAgdm9pZCBm b28yNCAoKSB7dnVpbnQxNm1mMl90IHQ7fQ0KPiA+ID4gIHZvaWQgZm9vMjUgKCkge3ZpbnQxNm0x X3QgdDt9DQo+ID4gPiBAQCAtMzYsOCArMzYsOCBAQCB2b2lkIGZvbzI5ICgpIHt2aW50MTZtNF90 IHQ7fQ0KPiA+ID4gIHZvaWQgZm9vMzAgKCkge3Z1aW50MTZtNF90IHQ7fQ0KPiA+ID4gIHZvaWQg Zm9vMzEgKCkge3ZpbnQxNm04X3QgdDt9DQo+ID4gPiAgdm9pZCBmb28zMiAoKSB7dnVpbnQxNm04 X3QgdDt9DQo+ID4gPiAtdm9pZCBmb28zMyAoKSB7dmludDMybWYyX3QgdDt9IC8qIHsgZGctZXJy b3Ige3Vua25vd24gdHlwZSBuYW1lICd2aW50MzJtZjJfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZv bzM0ICgpIHt2dWludDMybWYyX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1l ICd2dWludDMybWYyX3QnfSB9ICovDQo+ID4gPiArdm9pZCBmb28zMyAoKSB7dmludDMybWYyX3Qg dDt9DQo+ID4gPiArdm9pZCBmb28zNCAoKSB7dnVpbnQzMm1mMl90IHQ7fQ0KPiA+ID4gIHZvaWQg Zm9vMzUgKCkge3ZpbnQzMm0xX3QgdDt9DQo+ID4gPiAgdm9pZCBmb28zNiAoKSB7dnVpbnQzMm0x X3QgdDt9DQo+ID4gPiAgdm9pZCBmb28zNyAoKSB7dmludDMybTJfdCB0O30NCj4gPiA+IEBAIC00 NiwyMCArNDYsNTAgQEAgdm9pZCBmb28zOSAoKSB7dmludDMybTRfdCB0O30NCj4gPiA+ICB2b2lk IGZvbzQwICgpIHt2dWludDMybTRfdCB0O30NCj4gPiA+ICB2b2lkIGZvbzQxICgpIHt2aW50MzJt OF90IHQ7fQ0KPiA+ID4gIHZvaWQgZm9vNDIgKCkge3Z1aW50MzJtOF90IHQ7fQ0KPiA+ID4gLXZv aWQgZm9vNDMgKCkge3ZpbnQ2NG0xX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBu YW1lICd2aW50NjRtMV90J30gfSAqLw0KPiA+ID4gLXZvaWQgZm9vNDQgKCkge3Z1aW50NjRtMV90 IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndnVpbnQ2NG0xX3QnfSB9ICov DQo+ID4gPiAtdm9pZCBmb280NSAoKSB7dmludDY0bTJfdCB0O30gLyogeyBkZy1lcnJvciB7dW5r bm93biB0eXBlIG5hbWUgJ3ZpbnQ2NG0yX3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmb280NiAoKSB7 dnVpbnQ2NG0yX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2dWludDY0 bTJfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZvbzQ3ICgpIHt2aW50NjRtNF90IHQ7fSAvKiB7IGRn LWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmludDY0bTRfdCd9IH0gKi8NCj4gPiA+IC12b2lk IGZvbzQ4ICgpIHt2dWludDY0bTRfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5h bWUgJ3Z1aW50NjRtNF90J30gfSAqLw0KPiA+ID4gLXZvaWQgZm9vNDkgKCkge3ZpbnQ2NG04X3Qg dDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2aW50NjRtOF90J30gfSAqLw0K PiA+ID4gLXZvaWQgZm9vNTAgKCkge3Z1aW50NjRtOF90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtu b3duIHR5cGUgbmFtZSAndnVpbnQ2NG04X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmb281NyAoKSB7 dmZsb2F0MzJtZjJfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9h dDMybWYyX3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmb281OCAoKSB7dmZsb2F0MzJtMV90IHQ7fSAv KiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0MzJtMV90J30gfSAqLw0KPiA+ ID4gLXZvaWQgZm9vNTkgKCkge3ZmbG9hdDMybTJfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93 biB0eXBlIG5hbWUgJ3ZmbG9hdDMybTJfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZvbzYwICgpIHt2 ZmxvYXQzMm00X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQz Mm00X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmb282MSAoKSB7dmZsb2F0MzJtOF90IHQ7fSAvKiB7 IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0MzJtOF90J30gfSAqLw0KPiA+ID4g LXZvaWQgZm9vNjIgKCkge3ZmbG9hdDY0bTFfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0 eXBlIG5hbWUgJ3ZmbG9hdDY0bTFfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZvbzYzICgpIHt2Zmxv YXQ2NG0yX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQ2NG0y X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmb282NCAoKSB7dmZsb2F0NjRtNF90IHQ7fSAvKiB7IGRn LWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0NjRtNF90J30gfSAqLw0KPiA+ID4gLXZv aWQgZm9vNjUgKCkge3ZmbG9hdDY0bThfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBl IG5hbWUgJ3ZmbG9hdDY0bThfdCd9IH0gKi8NCj4gPiA+ICt2b2lkIGZvbzQzICgpIHt2aW50NjRt MV90IHQ7fQ0KPiA+ID4gK3ZvaWQgZm9vNDQgKCkge3Z1aW50NjRtMV90IHQ7fQ0KPiA+ID4gK3Zv aWQgZm9vNDUgKCkge3ZpbnQ2NG0yX3QgdDt9DQo+ID4gPiArdm9pZCBmb280NiAoKSB7dnVpbnQ2 NG0yX3QgdDt9DQo+ID4gPiArdm9pZCBmb280NyAoKSB7dmludDY0bTRfdCB0O30NCj4gPiA+ICt2 b2lkIGZvbzQ4ICgpIHt2dWludDY0bTRfdCB0O30NCj4gPiA+ICt2b2lkIGZvbzQ5ICgpIHt2aW50 NjRtOF90IHQ7fQ0KPiA+ID4gK3ZvaWQgZm9vNTAgKCkge3Z1aW50NjRtOF90IHQ7fQ0KPiA+ID4g Kw0KPiA+ID4gKy8qIFRvIHN1cHBvcnQgdGFyZ2V0IGF0dHJpYnV0ZSwgdGhlIHZmbG9hdCptKngq X3QgbmVlZCB0byBiZSByZWdpc3RlcmVkDQo+ID4gPiArICAgaW4gYWR2YW5jZS4gIFdlIGFkZCB0 eXBlIGFuZCBhcmdzL3JldHVybiB2YWx1ZSBjaGVjayBkdXJpbmcgdGhlDQo+ID4gPiArICAgc2V0 IGN1cnJlbnQgZnVuY3Rpb24gYnV0IGNhbm5vdCBjb3ZlciBiZWxvdyBjYXNlcy4gIEl0IGlzIHRo ZSBzYW1lDQo+ID4gPiArICAgYmVoYXZpb3IgY29tcGFyZWQgdG8gYWFyY2g2NCBzdmUuICAqLw0K PiA+ID4gK3ZvaWQgZm9vNTcgKCkge3ZmbG9hdDMybWYyX3QgdDt9DQo+ID4gPiArdm9pZCBmb281 OCAoKSB7dmZsb2F0MzJtMV90IHQ7fQ0KPiA+ID4gK3ZvaWQgZm9vNTkgKCkge3ZmbG9hdDMybTJf dCB0O30NCj4gPiA+ICt2b2lkIGZvbzYwICgpIHt2ZmxvYXQzMm00X3QgdDt9DQo+ID4gPiArdm9p ZCBmb282MSAoKSB7dmZsb2F0MzJtOF90IHQ7fQ0KPiA+ID4gK3ZvaWQgZm9vNjIgKCkge3ZmbG9h dDY0bTFfdCB0O30NCj4gPiA+ICt2b2lkIGZvbzYzICgpIHt2ZmxvYXQ2NG0yX3QgdDt9DQo+ID4g PiArdm9pZCBmb282NCAoKSB7dmZsb2F0NjRtNF90IHQ7fQ0KPiA+ID4gK3ZvaWQgZm9vNjUgKCkg e3ZmbG9hdDY0bThfdCB0O30NCj4gPiA+ICsNCj4gPiA+ICt2b2lkIG5ld19mb28wICh2Ym9vbDY0 X3QgdCkgIHsgfSAgICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmJvb2w2NF90JyBy ZXF1aXJlcyB0aGUgbWluaW1hbCB2ZWN0b3IgbGVuZ3RoICc2NCcgYnV0ICczMicgaXMgZ2l2ZW59 IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mb283ICh2aW50OG1mOF90IHQpICB7IH0gICAgLyogeyBk Zy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmludDhtZjhfdCcgcmVxdWlyZXMgdGhlIG1pbmltYWwg dmVjdG9yIGxlbmd0aCAnNjQnIGJ1dCAnMzInIGlzIGdpdmVufSB9ICovDQo+ID4gPiArdm9pZCBu ZXdfZm9vOCAodnVpbnQ4bWY4X3QgdCkgIHsgfSAgIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5 cGUgJ3Z1aW50OG1mOF90JyByZXF1aXJlcyB0aGUgbWluaW1hbCB2ZWN0b3IgbGVuZ3RoICc2NCcg YnV0ICczMicgaXMgZ2l2ZW59IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mb28yMSAodmludDE2bWY0 X3QgdCkgeyB9ICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmludDE2bWY0X3QnIHJl cXVpcmVzIHRoZSBtaW5pbWFsIHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMyJyBpcyBnaXZlbn0g fSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZvbzIyICh2dWludDE2bWY0X3QgdCkgeyB9ICAvKiB7IGRn LWVycm9yIHthcmd1bWVudCB0eXBlICd2dWludDE2bWY0X3QnIHJlcXVpcmVzIHRoZSBtaW5pbWFs IHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMyJyBpcyBnaXZlbn0gfSAqLw0KPiA+ID4gK3ZvaWQg bmV3X2ZvbzMzICh2aW50MzJtZjJfdCB0KSB7IH0gICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0 eXBlICd2aW50MzJtZjJfdCcgcmVxdWlyZXMgdGhlIG1pbmltYWwgdmVjdG9yIGxlbmd0aCAnNjQn IGJ1dCAnMzInIGlzIGdpdmVufSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZm9vMzQgKHZ1aW50MzJt ZjJfdCB0KSB7IH0gIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50MzJtZjJfdCcg cmVxdWlyZXMgdGhlIG1pbmltYWwgdmVjdG9yIGxlbmd0aCAnNjQnIGJ1dCAnMzInIGlzIGdpdmVu fSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZm9vNDMgKHZpbnQ2NG0xX3QgdCkgeyB9ICAgIC8qIHsg ZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZpbnQ2NG0xX3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgs IHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3 X2ZvbzQ0ICh2dWludDY0bTFfdCB0KSB7IH0gICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBl ICd2dWludDY0bTFfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJ U0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZm9vNDUgKHZpbnQ2NG0yX3QgdCkg eyB9ICAgIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZpbnQ2NG0yX3QnIHJlcXVpcmVz IHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ ID4gK3ZvaWQgbmV3X2ZvbzQ2ICh2dWludDY0bTJfdCB0KSB7IH0gICAvKiB7IGRnLWVycm9yIHth cmd1bWVudCB0eXBlICd2dWludDY0bTJfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZlNjRmLCB6 dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZm9vNDcgKHZp bnQ2NG00X3QgdCkgeyB9ICAgIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZpbnQ2NG00 X3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lv bn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZvbzQ4ICh2dWludDY0bTRfdCB0KSB7IH0gICAvKiB7 IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2dWludDY0bTRfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0 eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gPiArdm9pZCBu ZXdfZm9vNDkgKHZpbnQ2NG04X3QgdCkgeyB9ICAgIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5 cGUgJ3ZpbnQ2NG04X3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYg SVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZvbzUwICh2dWludDY0bThfdCB0 KSB7IH0gICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2dWludDY0bThfdCcgcmVxdWly ZXMgdGhlIHp2ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ ID4gPiArdm9pZCBuZXdfZm9vNTcgKHZmbG9hdDMybWYyX3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ig e2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDMybWYyX3QnIHJlcXVpcmVzIHRoZSB6dmUzMmYsIHp2ZTY0 ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZvbzU4 ICh2ZmxvYXQzMm0xX3QgdCkgeyB9ICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2Zmxv YXQzMm0xX3QnIHJlcXVpcmVzIHRoZSB6dmUzMmYsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4 dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZvbzU5ICh2ZmxvYXQzMm0yX3QgdCkgeyB9 ICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQzMm0yX3QnIHJlcXVpcmVzIHRo ZSB6dmUzMmYsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4g K3ZvaWQgbmV3X2ZvbzYwICh2ZmxvYXQzMm00X3QgdCkgeyB9ICAvKiB7IGRnLWVycm9yIHthcmd1 bWVudCB0eXBlICd2ZmxvYXQzMm00X3QnIHJlcXVpcmVzIHRoZSB6dmUzMmYsIHp2ZTY0ZiwgenZl NjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZvbzYxICh2Zmxv YXQzMm04X3QgdCkgeyB9ICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQzMm04 X3QnIHJlcXVpcmVzIHRoZSB6dmUzMmYsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lv bn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZvbzYyICh2ZmxvYXQ2NG0xX3QgdCkgeyB9ICAvKiB7 IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQ2NG0xX3QnIHJlcXVpcmVzIHRoZSB6dmU2 NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZm9vNjMgKHZmbG9h dDY0bTJfdCB0KSB7IH0gIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDY0bTJf dCcgcmVxdWlyZXMgdGhlIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2 b2lkIG5ld19mb282NCAodmZsb2F0NjRtNF90IHQpIHsgfSAgLyogeyBkZy1lcnJvciB7YXJndW1l bnQgdHlwZSAndmZsb2F0NjRtNF90JyByZXF1aXJlcyB0aGUgenZlNjRkIG9yIHYgSVNBIGV4dGVu c2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZvbzY1ICh2ZmxvYXQ2NG04X3QgdCkgeyB9ICAv KiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQ2NG04X3QnIHJlcXVpcmVzIHRoZSB6 dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gPiBkaWZmIC0tZ2l0IGEvZ2NjL3Rl c3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3VzZXItNi5jIGIvZ2NjL3Rlc3RzdWl0 ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3VzZXItNi5jDQo+ID4gPiBpbmRleCAxZDc5YjZi OGVhYy4uZTQ4ZWUzOTE5OTIgMTAwNjQ0DQo+ID4gPiAtLS0gYS9nY2MvdGVzdHN1aXRlL2djYy50 YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdXNlci02LmMNCj4gPiA+ICsrKyBiL2djYy90ZXN0c3VpdGUv Z2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS91c2VyLTYuYw0KPiA+ID4gQEAgLTMsMTUgKzMsMTUg QEANCj4gPiA+DQo+ID4gPiAgI2luY2x1ZGUgInJpc2N2X3ZlY3Rvci5oIg0KPiA+ID4NCj4gPiA+ IC12b2lkIGZvbzAgKCkge3Zib29sNjRfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBl IG5hbWUgJ3Zib29sNjRfdCd9IH0gKi8NCj4gPiA+ICt2b2lkIGZvbzAgKCkge3Zib29sNjRfdCB0 O30NCj4gPiA+ICB2b2lkIGZvbzEgKCkge3Zib29sMzJfdCB0O30NCj4gPiA+ICB2b2lkIGZvbzIg KCkge3Zib29sMTZfdCB0O30NCj4gPiA+ICB2b2lkIGZvbzMgKCkge3Zib29sOF90IHQ7fQ0KPiA+ ID4gIHZvaWQgZm9vNCAoKSB7dmJvb2w0X3QgdDt9DQo+ID4gPiAgdm9pZCBmb281ICgpIHt2Ym9v bDJfdCB0O30NCj4gPiA+ICB2b2lkIGZvbzYgKCkge3Zib29sMV90IHQ7fQ0KPiA+ID4gLXZvaWQg Zm9vNyAoKSB7dmludDhtZjhfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUg J3ZpbnQ4bWY4X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmb284ICgpIHt2dWludDhtZjhfdCB0O30g LyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1aW50OG1mOF90J30gfSAqLw0KPiA+ ID4gK3ZvaWQgZm9vNyAoKSB7dmludDhtZjhfdCB0O30NCj4gPiA+ICt2b2lkIGZvbzggKCkge3Z1 aW50OG1mOF90IHQ7fQ0KPiA+ID4gIHZvaWQgZm9vOSAoKSB7dmludDhtZjRfdCB0O30NCj4gPiA+ ICB2b2lkIGZvbzEwICgpIHt2dWludDhtZjRfdCB0O30NCj4gPiA+ICB2b2lkIGZvbzExICgpIHt2 aW50OG1mMl90IHQ7fQ0KPiA+ID4gQEAgLTI0LDggKzI0LDggQEAgdm9pZCBmb28xNyAoKSB7dmlu dDhtNF90IHQ7fQ0KPiA+ID4gIHZvaWQgZm9vMTggKCkge3Z1aW50OG00X3QgdDt9DQo+ID4gPiAg dm9pZCBmb28xOSAoKSB7dmludDhtOF90IHQ7fQ0KPiA+ID4gIHZvaWQgZm9vMjAgKCkge3Z1aW50 OG04X3QgdDt9DQo+ID4gPiAtdm9pZCBmb28yMSAoKSB7dmludDE2bWY0X3QgdDt9IC8qIHsgZGct ZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2aW50MTZtZjRfdCd9IH0gKi8NCj4gPiA+IC12b2lk IGZvbzIyICgpIHt2dWludDE2bWY0X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBu YW1lICd2dWludDE2bWY0X3QnfSB9ICovDQo+ID4gPiArdm9pZCBmb28yMSAoKSB7dmludDE2bWY0 X3QgdDt9DQo+ID4gPiArdm9pZCBmb28yMiAoKSB7dnVpbnQxNm1mNF90IHQ7fQ0KPiA+ID4gIHZv aWQgZm9vMjMgKCkge3ZpbnQxNm1mMl90IHQ7fQ0KPiA+ID4gIHZvaWQgZm9vMjQgKCkge3Z1aW50 MTZtZjJfdCB0O30NCj4gPiA+ICB2b2lkIGZvbzI1ICgpIHt2aW50MTZtMV90IHQ7fQ0KPiA+ID4g QEAgLTM2LDggKzM2LDEzIEBAIHZvaWQgZm9vMjkgKCkge3ZpbnQxNm00X3QgdDt9DQo+ID4gPiAg dm9pZCBmb28zMCAoKSB7dnVpbnQxNm00X3QgdDt9DQo+ID4gPiAgdm9pZCBmb28zMSAoKSB7dmlu dDE2bThfdCB0O30NCj4gPiA+ICB2b2lkIGZvbzMyICgpIHt2dWludDE2bThfdCB0O30NCj4gPiA+ IC12b2lkIGZvbzMzICgpIHt2aW50MzJtZjJfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0 eXBlIG5hbWUgJ3ZpbnQzMm1mMl90J30gfSAqLw0KPiA+ID4gLXZvaWQgZm9vMzQgKCkge3Z1aW50 MzJtZjJfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1aW50MzJtZjJf dCd9IH0gKi8NCj4gPiA+ICsNCj4gPiA+ICsvKiBUbyBzdXBwb3J0IHRhcmdldCBhdHRyaWJ1dGUs IHRoZSB2ZmxvYXQqbSp4Kl90IG5lZWQgdG8gYmUgcmVnaXN0ZXJlZA0KPiA+ID4gKyAgIGluIGFk dmFuY2UuICBXZSBhZGQgdHlwZSBhbmQgYXJncy9yZXR1cm4gdmFsdWUgY2hlY2sgZHVyaW5nIHRo ZQ0KPiA+ID4gKyAgIHNldCBjdXJyZW50IGZ1bmN0aW9uIGJ1dCBjYW5ub3QgY292ZXIgYmVsb3cg Y2FzZXMuICBJdCBpcyB0aGUgc2FtZQ0KPiA+ID4gKyAgIGJlaGF2aW9yIGNvbXBhcmVkIHRvIGFh cmNoNjQgc3ZlLiAgKi8NCj4gPiA+ICt2b2lkIGZvbzMzICgpIHt2aW50MzJtZjJfdCB0O30NCj4g PiA+ICt2b2lkIGZvbzM0ICgpIHt2dWludDMybWYyX3QgdDt9DQo+ID4gPiAgdm9pZCBmb28zNSAo KSB7dmludDMybTFfdCB0O30NCj4gPiA+ICB2b2lkIGZvbzM2ICgpIHt2dWludDMybTFfdCB0O30N Cj4gPiA+ICB2b2lkIGZvbzM3ICgpIHt2aW50MzJtMl90IHQ7fQ0KPiA+ID4gQEAgLTQ2LDIwICs1 MSw0MSBAQCB2b2lkIGZvbzM5ICgpIHt2aW50MzJtNF90IHQ7fQ0KPiA+ID4gIHZvaWQgZm9vNDAg KCkge3Z1aW50MzJtNF90IHQ7fQ0KPiA+ID4gIHZvaWQgZm9vNDEgKCkge3ZpbnQzMm04X3QgdDt9 DQo+ID4gPiAgdm9pZCBmb280MiAoKSB7dnVpbnQzMm04X3QgdDt9DQo+ID4gPiAtdm9pZCBmb280 MyAoKSB7dmludDY0bTFfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Zp bnQ2NG0xX3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmb280NCAoKSB7dnVpbnQ2NG0xX3QgdDt9IC8q IHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2dWludDY0bTFfdCd9IH0gKi8NCj4gPiA+ IC12b2lkIGZvbzQ1ICgpIHt2aW50NjRtMl90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5 cGUgbmFtZSAndmludDY0bTJfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZvbzQ2ICgpIHt2dWludDY0 bTJfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1aW50NjRtMl90J30g fSAqLw0KPiA+ID4gLXZvaWQgZm9vNDcgKCkge3ZpbnQ2NG00X3QgdDt9IC8qIHsgZGctZXJyb3Ig e3Vua25vd24gdHlwZSBuYW1lICd2aW50NjRtNF90J30gfSAqLw0KPiA+ID4gLXZvaWQgZm9vNDgg KCkge3Z1aW50NjRtNF90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndnVp bnQ2NG00X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmb280OSAoKSB7dmludDY0bThfdCB0O30gLyog eyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQ2NG04X3QnfSB9ICovDQo+ID4gPiAt dm9pZCBmb281MCAoKSB7dnVpbnQ2NG04X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlw ZSBuYW1lICd2dWludDY0bThfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZvbzU3ICgpIHt2ZmxvYXQz Mm1mMl90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0MzJtZjJf dCd9IH0gKi8NCj4gPiA+ICt2b2lkIGZvbzQzICgpIHt2aW50NjRtMV90IHQ7fQ0KPiA+ID4gK3Zv aWQgZm9vNDQgKCkge3Z1aW50NjRtMV90IHQ7fQ0KPiA+ID4gK3ZvaWQgZm9vNDUgKCkge3ZpbnQ2 NG0yX3QgdDt9DQo+ID4gPiArdm9pZCBmb280NiAoKSB7dnVpbnQ2NG0yX3QgdDt9DQo+ID4gPiAr dm9pZCBmb280NyAoKSB7dmludDY0bTRfdCB0O30NCj4gPiA+ICt2b2lkIGZvbzQ4ICgpIHt2dWlu dDY0bTRfdCB0O30NCj4gPiA+ICt2b2lkIGZvbzQ5ICgpIHt2aW50NjRtOF90IHQ7fQ0KPiA+ID4g K3ZvaWQgZm9vNTAgKCkge3Z1aW50NjRtOF90IHQ7fQ0KPiA+ID4gK3ZvaWQgZm9vNTcgKCkge3Zm bG9hdDMybWYyX3QgdDt9DQo+ID4gPiAgdm9pZCBmb281OCAoKSB7dmZsb2F0MzJtMV90IHQ7fQ0K PiA+ID4gIHZvaWQgZm9vNTkgKCkge3ZmbG9hdDMybTJfdCB0O30NCj4gPiA+ICB2b2lkIGZvbzYw ICgpIHt2ZmxvYXQzMm00X3QgdDt9DQo+ID4gPiAgdm9pZCBmb282MSAoKSB7dmZsb2F0MzJtOF90 IHQ7fQ0KPiA+ID4gLXZvaWQgZm9vNjIgKCkge3ZmbG9hdDY0bTFfdCB0O30gLyogeyBkZy1lcnJv ciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDY0bTFfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZv bzYzICgpIHt2ZmxvYXQ2NG0yX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1l ICd2ZmxvYXQ2NG0yX3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmb282NCAoKSB7dmZsb2F0NjRtNF90 IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0NjRtNF90J30gfSAq Lw0KPiA+ID4gLXZvaWQgZm9vNjUgKCkge3ZmbG9hdDY0bThfdCB0O30gLyogeyBkZy1lcnJvciB7 dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDY0bThfdCd9IH0gKi8NCj4gPiA+ICt2b2lkIGZvbzYy ICgpIHt2ZmxvYXQ2NG0xX3QgdDt9DQo+ID4gPiArdm9pZCBmb282MyAoKSB7dmZsb2F0NjRtMl90 IHQ7fQ0KPiA+ID4gK3ZvaWQgZm9vNjQgKCkge3ZmbG9hdDY0bTRfdCB0O30NCj4gPiA+ICt2b2lk IGZvbzY1ICgpIHt2ZmxvYXQ2NG04X3QgdDt9DQo+ID4gPiArDQo+ID4gPiArdm9pZCBuZXdfZm9v MCAodmJvb2w2NF90IHQpIHsgfSAgICAgIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Zi b29sNjRfdCcgcmVxdWlyZXMgdGhlIG1pbmltYWwgdmVjdG9yIGxlbmd0aCAnNjQnIGJ1dCAnMzIn IGlzIGdpdmVufSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZm9vNyAodmludDhtZjhfdCB0KSB7IH0g ICAgIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZpbnQ4bWY4X3QnIHJlcXVpcmVzIHRo ZSBtaW5pbWFsIHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMyJyBpcyBnaXZlbn0gfSAqLw0KPiA+ ID4gK3ZvaWQgbmV3X2ZvbzggKHZ1aW50OG1mOF90IHQpIHsgfSAgICAvKiB7IGRnLWVycm9yIHth cmd1bWVudCB0eXBlICd2dWludDhtZjhfdCcgcmVxdWlyZXMgdGhlIG1pbmltYWwgdmVjdG9yIGxl bmd0aCAnNjQnIGJ1dCAnMzInfSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZm9vMjEgKHZpbnQxNm1m NF90IHQpIHsgfSAgIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZpbnQxNm1mNF90JyBy ZXF1aXJlcyB0aGUgbWluaW1hbCB2ZWN0b3IgbGVuZ3RoICc2NCcgYnV0ICczMicgaXMgZ2l2ZW59 IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mb28yMiAodnVpbnQxNm1mNF90IHQpIHsgfSAgLyogeyBk Zy1lcnJvciB7YXJndW1lbnQgdHlwZSAndnVpbnQxNm1mNF90JyByZXF1aXJlcyB0aGUgbWluaW1h bCB2ZWN0b3IgbGVuZ3RoICc2NCcgYnV0ICczMicgaXMgZ2l2ZW59IH0gKi8NCj4gPiA+ICt2b2lk IG5ld19mb28zMyAodmludDMybWYyX3QgdCkge30gICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQg dHlwZSAndmludDMybWYyX3QnIHJlcXVpcmVzIHRoZSBtaW5pbWFsIHZlY3RvciBsZW5ndGggJzY0 JyBidXQgJzMyJyBpcyBnaXZlbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZvbzM0ICh2dWludDMy bWYyX3QgdCkgeyB9ICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2dWludDMybWYyX3Qn IHJlcXVpcmVzIHRoZSBtaW5pbWFsIHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMyJyBpcyBnaXZl bn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZvbzQzICh2aW50NjRtMV90IHQpIHsgfSAgICAvKiB7 IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2aW50NjRtMV90JyByZXF1aXJlcyB0aGUgenZlNjR4 LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5l d19mb280NCAodnVpbnQ2NG0xX3QgdCkgeyB9ICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlw ZSAndnVpbnQ2NG0xX3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYg SVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZvbzQ1ICh2aW50NjRtMl90IHQp IHsgfSAgICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2aW50NjRtMl90JyByZXF1aXJl cyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4g PiA+ICt2b2lkIG5ld19mb280NiAodnVpbnQ2NG0yX3QgdCkgeyB9ICAgLyogeyBkZy1lcnJvciB7 YXJndW1lbnQgdHlwZSAndnVpbnQ2NG0yX3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0Ziwg enZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgbmV3X2ZvbzQ3ICh2 aW50NjRtNF90IHQpIHsgfSAgICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2aW50NjRt NF90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNp b259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mb280OCAodnVpbnQ2NG00X3QgdCkgeyB9ICAgLyog eyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndnVpbnQ2NG00X3QnIHJlcXVpcmVzIHRoZSB6dmU2 NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQg bmV3X2ZvbzQ5ICh2aW50NjRtOF90IHQpIHsgfSAgICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0 eXBlICd2aW50NjRtOF90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2 IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19mb281MCAodnVpbnQ2NG04X3Qg dCkgeyB9ICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndnVpbnQ2NG04X3QnIHJlcXVp cmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0K PiA+ID4gK3ZvaWQgbmV3X2ZvbzU3ICh2ZmxvYXQzMm1mMl90IHQpIHsgfSAvKiB7IGRnLWVycm9y IHthcmd1bWVudCB0eXBlICd2ZmxvYXQzMm1mMl90JyByZXF1aXJlcyB0aGUgbWluaW1hbCB2ZWN0 b3IgbGVuZ3RoICc2NCcgYnV0ICczMicgaXMgZ2l2ZW59IH0gKi8NCj4gPiA+ICt2b2lkIG5ld19m b282MiAodmZsb2F0NjRtMV90IHQpIHsgfSAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAn dmZsb2F0NjRtMV90JyByZXF1aXJlcyB0aGUgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAq Lw0KPiA+ID4gK3ZvaWQgbmV3X2ZvbzYzICh2ZmxvYXQ2NG0yX3QgdCkgeyB9ICAvKiB7IGRnLWVy cm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQ2NG0yX3QnIHJlcXVpcmVzIHRoZSB6dmU2NGQgb3Ig diBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gPiArdm9pZCBuZXdfZm9vNjQgKHZmbG9hdDY0bTRf dCB0KSB7IH0gIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDY0bTRfdCcgcmVx dWlyZXMgdGhlIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIG5l d19mb282NSAodmZsb2F0NjRtOF90IHQpIHsgfSAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlw ZSAndmZsb2F0NjRtOF90JyByZXF1aXJlcyB0aGUgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0g fSAqLw0KPiA+ID4gZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9y dnYvYmFzZS91c2VyLTkuYyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFz ZS91c2VyLTkuYw0KPiA+ID4gaW5kZXggOThhN2QzOTFkNGUuLjU3ZWRlMzJhNDAwIDEwMDY0NA0K PiA+ID4gLS0tIGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3VzZXIt OS5jDQo+ID4gPiArKysgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2Uv dXNlci05LmMNCj4gPiA+IEBAIC0xNzUsMzIgKzE3NSw2NyBAQCB2b2lkIGZfdmludDY0bTJ4NF90 ICgpIHt2aW50NjRtMng0X3QgdDt9DQo+ID4gPiAgdm9pZCBmX3Z1aW50NjRtMng0X3QgKCkge3Z1 aW50NjRtMng0X3QgdDt9DQo+ID4gPiAgdm9pZCBmX3ZpbnQ2NG00eDJfdCAoKSB7dmludDY0bTR4 Ml90IHQ7fQ0KPiA+ID4gIHZvaWQgZl92dWludDY0bTR4Ml90ICgpIHt2dWludDY0bTR4Ml90IHQ7 fQ0KPiA+ID4gLXZvaWQgZl92ZmxvYXQzMm1mMngyX3QgKCkge3ZmbG9hdDMybWYyeDJfdCB0O30g LyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDMybWYyeDJfdCd9IH0gKi8N Cj4gPiA+IC12b2lkIGZfdmZsb2F0MzJtZjJ4M190ICgpIHt2ZmxvYXQzMm1mMngzX3QgdDt9IC8q IHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQzMm1mMngzX3QnfSB9ICovDQo+ ID4gPiAtdm9pZCBmX3ZmbG9hdDMybWYyeDRfdCAoKSB7dmZsb2F0MzJtZjJ4NF90IHQ7fSAvKiB7 IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0MzJtZjJ4NF90J30gfSAqLw0KPiA+ ID4gLXZvaWQgZl92ZmxvYXQzMm1mMng1X3QgKCkge3ZmbG9hdDMybWYyeDVfdCB0O30gLyogeyBk Zy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDMybWYyeDVfdCd9IH0gKi8NCj4gPiA+ IC12b2lkIGZfdmZsb2F0MzJtZjJ4Nl90ICgpIHt2ZmxvYXQzMm1mMng2X3QgdDt9IC8qIHsgZGct ZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQzMm1mMng2X3QnfSB9ICovDQo+ID4gPiAt dm9pZCBmX3ZmbG9hdDMybWYyeDdfdCAoKSB7dmZsb2F0MzJtZjJ4N190IHQ7fSAvKiB7IGRnLWVy cm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0MzJtZjJ4N190J30gfSAqLw0KPiA+ID4gLXZv aWQgZl92ZmxvYXQzMm1mMng4X3QgKCkge3ZmbG9hdDMybWYyeDhfdCB0O30gLyogeyBkZy1lcnJv ciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDMybWYyeDhfdCd9IH0gKi8NCj4gPiA+IC12b2lk IGZfdmZsb2F0MzJtMXgyX3QgKCkge3ZmbG9hdDMybTF4Ml90IHQ7fSAvKiB7IGRnLWVycm9yIHt1 bmtub3duIHR5cGUgbmFtZSAndmZsb2F0MzJtMXgyX3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3Zm bG9hdDMybTF4M190ICgpIHt2ZmxvYXQzMm0xeDNfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93 biB0eXBlIG5hbWUgJ3ZmbG9hdDMybTF4M190J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92ZmxvYXQz Mm0xeDRfdCAoKSB7dmZsb2F0MzJtMXg0X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlw ZSBuYW1lICd2ZmxvYXQzMm0xeDRfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdmZsb2F0MzJtMXg1 X3QgKCkge3ZmbG9hdDMybTF4NV90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFt ZSAndmZsb2F0MzJtMXg1X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3ZmbG9hdDMybTF4Nl90ICgp IHt2ZmxvYXQzMm0xeDZfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Zm bG9hdDMybTF4Nl90J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92ZmxvYXQzMm0xeDdfdCAoKSB7dmZs b2F0MzJtMXg3X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQz Mm0xeDdfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdmZsb2F0MzJtMXg4X3QgKCkge3ZmbG9hdDMy bTF4OF90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0MzJtMXg4 X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3ZmbG9hdDMybTJ4Ml90ICgpIHt2ZmxvYXQzMm0yeDJf dCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDMybTJ4Ml90J30g fSAqLw0KPiA+ID4gLXZvaWQgZl92ZmxvYXQzMm0yeDNfdCAoKSB7dmZsb2F0MzJtMngzX3QgdDt9 IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQzMm0yeDNfdCd9IH0gKi8N Cj4gPiA+IC12b2lkIGZfdmZsb2F0MzJtMng0X3QgKCkge3ZmbG9hdDMybTJ4NF90IHQ7fSAvKiB7 IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0MzJtMng0X3QnfSB9ICovDQo+ID4g PiAtdm9pZCBmX3ZmbG9hdDMybTR4Ml90ICgpIHt2ZmxvYXQzMm00eDJfdCB0O30gLyogeyBkZy1l cnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDMybTR4Ml90J30gfSAqLw0KPiA+ID4gLXZv aWQgZl92ZmxvYXQ2NG0xeDJfdCAoKSB7dmZsb2F0NjRtMXgyX3QgdDt9IC8qIHsgZGctZXJyb3Ig e3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQ2NG0xeDJfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZf dmZsb2F0NjRtMXgzX3QgKCkge3ZmbG9hdDY0bTF4M190IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtu b3duIHR5cGUgbmFtZSAndmZsb2F0NjRtMXgzX3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3ZmbG9h dDY0bTF4NF90ICgpIHt2ZmxvYXQ2NG0xeDRfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0 eXBlIG5hbWUgJ3ZmbG9hdDY0bTF4NF90J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92ZmxvYXQ2NG0x eDVfdCAoKSB7dmZsb2F0NjRtMXg1X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBu YW1lICd2ZmxvYXQ2NG0xeDVfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdmZsb2F0NjRtMXg2X3Qg KCkge3ZmbG9hdDY0bTF4Nl90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAn dmZsb2F0NjRtMXg2X3QnfSB9ICovDQo+ID4gPiAtdm9pZCBmX3ZmbG9hdDY0bTF4N190ICgpIHt2 ZmxvYXQ2NG0xeDdfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9h dDY0bTF4N190J30gfSAqLw0KPiA+ID4gLXZvaWQgZl92ZmxvYXQ2NG0xeDhfdCAoKSB7dmZsb2F0 NjRtMXg4X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQ2NG0x eDhfdCd9IH0gKi8NCj4gPiA+IC12b2lkIGZfdmZsb2F0NjRtMngyX3QgKCkge3ZmbG9hdDY0bTJ4 Ml90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0NjRtMngyX3Qn fSB9ICovDQo+ID4gPiAtdm9pZCBmX3ZmbG9hdDY0bTJ4M190ICgpIHt2ZmxvYXQ2NG0yeDNfdCB0 O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDY0bTJ4M190J30gfSAq Lw0KPiA+ID4gLXZvaWQgZl92ZmxvYXQ2NG0yeDRfdCAoKSB7dmZsb2F0NjRtMng0X3QgdDt9IC8q IHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQ2NG0yeDRfdCd9IH0gKi8NCj4g PiA+IC12b2lkIGZfdmZsb2F0NjRtNHgyX3QgKCkge3ZmbG9hdDY0bTR4Ml90IHQ7fSAvKiB7IGRn LWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0NjRtNHgyX3QnfSB9ICovDQo+ID4gPiAr DQo+ID4gPiArLyogVG8gc3VwcG9ydCB0YXJnZXQgYXR0cmlidXRlLCB0aGUgdmZsb2F0Km0qeCpf dCBuZWVkIHRvIGJlIHJlZ2lzdGVyZWQNCj4gPiA+ICsgICBpbiBhZHZhbmNlLiAgV2UgYWRkIHR5 cGUgYW5kIGFyZ3MvcmV0dXJuIHZhbHVlIGNoZWNrIGR1cmluZyB0aGUNCj4gPiA+ICsgICBzZXQg Y3VycmVudCBmdW5jdGlvbiBidXQgY2Fubm90IGNvdmVyIGJlbG93IGNhc2VzLiAgSXQgaXMgdGhl IHNhbWUNCj4gPiA+ICsgICBiZWhhdmlvciBjb21wYXJlZCB0byBhYXJjaDY0IHN2ZS4gICovDQo+ ID4gPiArdm9pZCBmX3ZmbG9hdDMybWYyeDJfdCAoKSB7dmZsb2F0MzJtZjJ4Ml90IHQ7fQ0KPiA+ ID4gK3ZvaWQgZl92ZmxvYXQzMm1mMngzX3QgKCkge3ZmbG9hdDMybWYyeDNfdCB0O30NCj4gPiA+ ICt2b2lkIGZfdmZsb2F0MzJtZjJ4NF90ICgpIHt2ZmxvYXQzMm1mMng0X3QgdDt9DQo+ID4gPiAr dm9pZCBmX3ZmbG9hdDMybWYyeDVfdCAoKSB7dmZsb2F0MzJtZjJ4NV90IHQ7fQ0KPiA+ID4gK3Zv aWQgZl92ZmxvYXQzMm1mMng2X3QgKCkge3ZmbG9hdDMybWYyeDZfdCB0O30NCj4gPiA+ICt2b2lk IGZfdmZsb2F0MzJtZjJ4N190ICgpIHt2ZmxvYXQzMm1mMng3X3QgdDt9DQo+ID4gPiArdm9pZCBm X3ZmbG9hdDMybWYyeDhfdCAoKSB7dmZsb2F0MzJtZjJ4OF90IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92 ZmxvYXQzMm0xeDJfdCAoKSB7dmZsb2F0MzJtMXgyX3QgdDt9DQo+ID4gPiArdm9pZCBmX3ZmbG9h dDMybTF4M190ICgpIHt2ZmxvYXQzMm0xeDNfdCB0O30NCj4gPiA+ICt2b2lkIGZfdmZsb2F0MzJt MXg0X3QgKCkge3ZmbG9hdDMybTF4NF90IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92ZmxvYXQzMm0xeDVf dCAoKSB7dmZsb2F0MzJtMXg1X3QgdDt9DQo+ID4gPiArdm9pZCBmX3ZmbG9hdDMybTF4Nl90ICgp IHt2ZmxvYXQzMm0xeDZfdCB0O30NCj4gPiA+ICt2b2lkIGZfdmZsb2F0MzJtMXg3X3QgKCkge3Zm bG9hdDMybTF4N190IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92ZmxvYXQzMm0xeDhfdCAoKSB7dmZsb2F0 MzJtMXg4X3QgdDt9DQo+ID4gPiArdm9pZCBmX3ZmbG9hdDMybTJ4Ml90ICgpIHt2ZmxvYXQzMm0y eDJfdCB0O30NCj4gPiA+ICt2b2lkIGZfdmZsb2F0MzJtMngzX3QgKCkge3ZmbG9hdDMybTJ4M190 IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92ZmxvYXQzMm0yeDRfdCAoKSB7dmZsb2F0MzJtMng0X3QgdDt9 DQo+ID4gPiArdm9pZCBmX3ZmbG9hdDMybTR4Ml90ICgpIHt2ZmxvYXQzMm00eDJfdCB0O30NCj4g PiA+ICt2b2lkIGZfdmZsb2F0NjRtMXgyX3QgKCkge3ZmbG9hdDY0bTF4Ml90IHQ7fQ0KPiA+ID4g K3ZvaWQgZl92ZmxvYXQ2NG0xeDNfdCAoKSB7dmZsb2F0NjRtMXgzX3QgdDt9DQo+ID4gPiArdm9p ZCBmX3ZmbG9hdDY0bTF4NF90ICgpIHt2ZmxvYXQ2NG0xeDRfdCB0O30NCj4gPiA+ICt2b2lkIGZf dmZsb2F0NjRtMXg1X3QgKCkge3ZmbG9hdDY0bTF4NV90IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92Zmxv YXQ2NG0xeDZfdCAoKSB7dmZsb2F0NjRtMXg2X3QgdDt9DQo+ID4gPiArdm9pZCBmX3ZmbG9hdDY0 bTF4N190ICgpIHt2ZmxvYXQ2NG0xeDdfdCB0O30NCj4gPiA+ICt2b2lkIGZfdmZsb2F0NjRtMXg4 X3QgKCkge3ZmbG9hdDY0bTF4OF90IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92ZmxvYXQ2NG0yeDJfdCAo KSB7dmZsb2F0NjRtMngyX3QgdDt9DQo+ID4gPiArdm9pZCBmX3ZmbG9hdDY0bTJ4M190ICgpIHt2 ZmxvYXQ2NG0yeDNfdCB0O30NCj4gPiA+ICt2b2lkIGZfdmZsb2F0NjRtMng0X3QgKCkge3ZmbG9h dDY0bTJ4NF90IHQ7fQ0KPiA+ID4gK3ZvaWQgZl92ZmxvYXQ2NG00eDJfdCAoKSB7dmZsb2F0NjRt NHgyX3QgdDt9DQo+ID4gPiArDQo+ID4gPiArdm9pZCBmX2FyZ192ZmxvYXQzMm1mMngyX3QgKHZm bG9hdDMybWYyeDJfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0 MzJtZjJ4Ml90JyByZXF1aXJlcyB0aGUgenZlMzJmLCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBl eHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIGZfYXJnX3ZmbG9hdDMybWYyeDNfdCAodmZsb2F0 MzJtZjJ4M190IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQzMm1m MngzX3QnIHJlcXVpcmVzIHRoZSB6dmUzMmYsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVu c2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgZl9hcmdfdmZsb2F0MzJtZjJ4NF90ICh2ZmxvYXQzMm1m Mng0X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDMybWYyeDRf dCcgcmVxdWlyZXMgdGhlIHp2ZTMyZiwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9u fSB9ICovDQo+ID4gPiArdm9pZCBmX2FyZ192ZmxvYXQzMm1mMng1X3QgKHZmbG9hdDMybWYyeDVf dCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0MzJtZjJ4NV90JyBy ZXF1aXJlcyB0aGUgenZlMzJmLCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0g Ki8NCj4gPiA+ICt2b2lkIGZfYXJnX3ZmbG9hdDMybWYyeDZfdCAodmZsb2F0MzJtZjJ4Nl90IHQp IHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQzMm1mMng2X3QnIHJlcXVp cmVzIHRoZSB6dmUzMmYsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0K PiA+ID4gK3ZvaWQgZl9hcmdfdmZsb2F0MzJtZjJ4N190ICh2ZmxvYXQzMm1mMng3X3QgdCkgeyB9 IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDMybWYyeDdfdCcgcmVxdWlyZXMg dGhlIHp2ZTMyZiwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4g PiArdm9pZCBmX2FyZ192ZmxvYXQzMm1mMng4X3QgKHZmbG9hdDMybWYyeDhfdCB0KSB7IH0gLyog eyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0MzJtZjJ4OF90JyByZXF1aXJlcyB0aGUg enZlMzJmLCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2 b2lkIGZfYXJnX3ZmbG9hdDMybTF4Ml90ICh2ZmxvYXQzMm0xeDJfdCB0KSB7IH0gLyogeyBkZy1l cnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0MzJtMXgyX3QnIHJlcXVpcmVzIHRoZSB6dmUzMmYs IHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgZl9h cmdfdmZsb2F0MzJtMXgzX3QgKHZmbG9hdDMybTF4M190IHQpIHsgfSAvKiB7IGRnLWVycm9yIHth cmd1bWVudCB0eXBlICd2ZmxvYXQzMm0xeDNfdCcgcmVxdWlyZXMgdGhlIHp2ZTMyZiwgenZlNjRm LCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gPiArdm9pZCBmX2FyZ192Zmxv YXQzMm0xeDRfdCAodmZsb2F0MzJtMXg0X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50 IHR5cGUgJ3ZmbG9hdDMybTF4NF90JyByZXF1aXJlcyB0aGUgenZlMzJmLCB6dmU2NGYsIHp2ZTY0 ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIGZfYXJnX3ZmbG9hdDMybTF4 NV90ICh2ZmxvYXQzMm0xeDVfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAn dmZsb2F0MzJtMXg1X3QnIHJlcXVpcmVzIHRoZSB6dmUzMmYsIHp2ZTY0ZiwgenZlNjRkIG9yIHYg SVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgZl9hcmdfdmZsb2F0MzJtMXg2X3QgKHZm bG9hdDMybTF4Nl90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQz Mm0xeDZfdCcgcmVxdWlyZXMgdGhlIHp2ZTMyZiwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0 ZW5zaW9ufSB9ICovDQo+ID4gPiArdm9pZCBmX2FyZ192ZmxvYXQzMm0xeDdfdCAodmZsb2F0MzJt MXg3X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDMybTF4N190 JyByZXF1aXJlcyB0aGUgenZlMzJmLCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259 IH0gKi8NCj4gPiA+ICt2b2lkIGZfYXJnX3ZmbG9hdDMybTF4OF90ICh2ZmxvYXQzMm0xeDhfdCB0 KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0MzJtMXg4X3QnIHJlcXVp cmVzIHRoZSB6dmUzMmYsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0K PiA+ID4gK3ZvaWQgZl9hcmdfdmZsb2F0MzJtMngyX3QgKHZmbG9hdDMybTJ4Ml90IHQpIHsgfSAv KiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQzMm0yeDJfdCcgcmVxdWlyZXMgdGhl IHp2ZTMyZiwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gPiAr dm9pZCBmX2FyZ192ZmxvYXQzMm0yeDNfdCAodmZsb2F0MzJtMngzX3QgdCkgeyB9IC8qIHsgZGct ZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDMybTJ4M190JyByZXF1aXJlcyB0aGUgenZlMzJm LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIGZf YXJnX3ZmbG9hdDMybTJ4NF90ICh2ZmxvYXQzMm0yeDRfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7 YXJndW1lbnQgdHlwZSAndmZsb2F0MzJtMng0X3QnIHJlcXVpcmVzIHRoZSB6dmUzMmYsIHp2ZTY0 ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgZl9hcmdfdmZs b2F0MzJtNHgyX3QgKHZmbG9hdDMybTR4Ml90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVu dCB0eXBlICd2ZmxvYXQzMm00eDJfdCcgcmVxdWlyZXMgdGhlIHp2ZTMyZiwgenZlNjRmLCB6dmU2 NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gPiArdm9pZCBmX2FyZ192ZmxvYXQ2NG0x eDJfdCAodmZsb2F0NjRtMXgyX3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUg J3ZmbG9hdDY0bTF4Ml90JyByZXF1aXJlcyB0aGUgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0g fSAqLw0KPiA+ID4gK3ZvaWQgZl9hcmdfdmZsb2F0NjRtMXgzX3QgKHZmbG9hdDY0bTF4M190IHQp IHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQ2NG0xeDNfdCcgcmVxdWly ZXMgdGhlIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIGZfYXJn X3ZmbG9hdDY0bTF4NF90ICh2ZmxvYXQ2NG0xeDRfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJn dW1lbnQgdHlwZSAndmZsb2F0NjRtMXg0X3QnIHJlcXVpcmVzIHRoZSB6dmU2NGQgb3IgdiBJU0Eg ZXh0ZW5zaW9ufSB9ICovDQo+ID4gPiArdm9pZCBmX2FyZ192ZmxvYXQ2NG0xeDVfdCAodmZsb2F0 NjRtMXg1X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDY0bTF4 NV90JyByZXF1aXJlcyB0aGUgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4g K3ZvaWQgZl9hcmdfdmZsb2F0NjRtMXg2X3QgKHZmbG9hdDY0bTF4Nl90IHQpIHsgfSAvKiB7IGRn LWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQ2NG0xeDZfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0 ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIGZfYXJnX3ZmbG9hdDY0bTF4 N190ICh2ZmxvYXQ2NG0xeDdfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAn dmZsb2F0NjRtMXg3X3QnIHJlcXVpcmVzIHRoZSB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9 ICovDQo+ID4gPiArdm9pZCBmX2FyZ192ZmxvYXQ2NG0xeDhfdCAodmZsb2F0NjRtMXg4X3QgdCkg eyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDY0bTF4OF90JyByZXF1aXJl cyB0aGUgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgZl9hcmdf dmZsb2F0NjRtMngyX3QgKHZmbG9hdDY0bTJ4Ml90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1 bWVudCB0eXBlICd2ZmxvYXQ2NG0yeDJfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0ZCBvciB2IElTQSBl eHRlbnNpb259IH0gKi8NCj4gPiA+ICt2b2lkIGZfYXJnX3ZmbG9hdDY0bTJ4M190ICh2ZmxvYXQ2 NG0yeDNfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0NjRtMngz X3QnIHJlcXVpcmVzIHRoZSB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gPiAr dm9pZCBmX2FyZ192ZmxvYXQ2NG0yeDRfdCAodmZsb2F0NjRtMng0X3QgdCkgeyB9IC8qIHsgZGct ZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDY0bTJ4NF90JyByZXF1aXJlcyB0aGUgenZlNjRk IG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ID4gK3ZvaWQgZl9hcmdfdmZsb2F0NjRtNHgy X3QgKHZmbG9hdDY0bTR4Ml90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2 ZmxvYXQ2NG00eDJfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0g Ki8NCj4gPiA+IC0tDQo+ID4gPiAyLjM0LjENCj4gPiA+DQo=