From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by sourceware.org (Postfix) with ESMTPS id 619D43858D20 for ; Mon, 12 Jun 2023 14:09:52 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 619D43858D20 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=intel.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=intel.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1686578993; x=1718114993; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=B+MgcwVuau7pWbdvzLjptNlurLP9AniId3g0S5qif5s=; b=QpgKQmDhYRnPi36LZmgT5O5sbPSKtUr6fVPH7zAYI06el0qmni2/3WOy JpIuMC/q9M7QUFltiLmnB5vqY+jHOuj1MD+YNvokcGEFxYxcCWE/MrbUL zhQsIaq4TfMyWaySzxSvXVWgcTp3qa8CikT8C+t8lvDRjNYzmj62ATWc5 moo7jjbv+v/kXCOS/tlEdcr8/J3ostzQsEZJTAg5hpegud8t0tYOdIJQ5 Ia4Yy7BDebSiQO01a/YkbA424XslqrptnW/hv0oVWAMSw3EKg4xEGWiSm RN247K0gst02YKQngX91IBLBH3zkBozdE7d9zCqEMi5yLx27aHF10+aXR Q==; X-IronPort-AV: E=McAfee;i="6600,9927,10739"; a="361408606" X-IronPort-AV: E=Sophos;i="6.00,236,1681196400"; d="scan'208";a="361408606" Received: from orsmga002.jf.intel.com ([10.7.209.21]) by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 12 Jun 2023 07:08:52 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10739"; a="711208453" X-IronPort-AV: E=Sophos;i="6.00,236,1681196400"; d="scan'208";a="711208453" Received: from fmsmsx602.amr.corp.intel.com ([10.18.126.82]) by orsmga002.jf.intel.com with ESMTP; 12 Jun 2023 07:08:52 -0700 Received: from fmsmsx611.amr.corp.intel.com (10.18.126.91) by fmsmsx602.amr.corp.intel.com (10.18.126.82) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Mon, 12 Jun 2023 07:08:51 -0700 Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) by fmsmsx611.amr.corp.intel.com (10.18.126.91) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23 via Frontend Transport; Mon, 12 Jun 2023 07:08:51 -0700 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (104.47.59.172) 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.23; Mon, 12 Jun 2023 07:08:51 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=BT2+e/Ka0jJbnqE4uiD22DXamP4yT5bCqlbG6AGlI1lC9fSl2cAXKVy4Iuv0NTYNQkCiadaGzJdjFv4RKUS3K+4qkMwy019jfnmETaAGv/VC3iak1zSk9H8ewVHgMMK54FkzN3HLpCQ3yVA0c11hwT2yL0crxx/gnAn4ucCjDszvyZMXnnRcOh9I+3Xwieev0sbdcfJAnsFwUh8Bz8+lM3I/3QXItDHT+fyAupEf7cDVkWddxstTm2zKIsttdS7Io4DE5MnM5svGh/Qi7rpSROtSNIqvDHIgJZH+s/d+JTievV9nAxt+v0BNe+px1LGUn4Eo/rrTLoqtcfCNcanX2Q== 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=B+MgcwVuau7pWbdvzLjptNlurLP9AniId3g0S5qif5s=; b=odQw/wQJMNtnWzd2F3M1NKp/+wrBjUWJT81+BmjHG1HftV6XmU/g1x/xsdcKVyRbWadJgAgtjpggyRYffbSlYi0Qx9zJQFPqT3sZV4z4yi6icN81h3XrEcO/t5h229owtgJNNfiI1vkzzJs/2nbtcJd8Zv8zPaRKb0AoTIUrcaoewoh+5j2wKQKPr1UVh+ZwnTg35XKtgFGLr4vzOMCNY0vAQYxbKanH0O2DnK/sDJ2OO2kCuffUPQu+3pqcvyhxN62QTSHrPrFlGsKNlmHkF4o/u9ylGmPXI74jR2a+hHs+svodxIqaC9HpShg6Jz4UozJC6lu3RCnySIyGQpEYAA== 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 SJ0PR11MB5631.namprd11.prod.outlook.com (2603:10b6:a03:3ae::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.29; Mon, 12 Jun 2023 14:08:49 +0000 Received: from MW5PR11MB5908.namprd11.prod.outlook.com ([fe80::127c:f4cc:e699:8f73]) by MW5PR11MB5908.namprd11.prod.outlook.com ([fe80::127c:f4cc:e699:8f73%6]) with mapi id 15.20.6455.030; Mon, 12 Jun 2023 14:08:49 +0000 From: "Li, Pan2" To: Kito Cheng , "juzhe.zhong@rivai.ai" CC: kito.cheng , gcc-patches , palmer , palmer , jeffreyalaw , Robin Dapp Subject: RE: Re: [PATCH] RISC-V: Add RVV narrow shift right lowering auto-vectorization Thread-Topic: Re: [PATCH] RISC-V: Add RVV narrow shift right lowering auto-vectorization Thread-Index: AQHZnNdqup6Cm47ALUSemjq4t39Fba+HGMnTgAACtACAAAFQlYAAAN2AgAAXRkA= Date: Mon, 12 Jun 2023 14:08:48 +0000 Message-ID: References: <20230612024102.580504-1-juzhe.zhong@rivai.ai> <318C0A4819375A25+2023061220253167608810@rivai.ai> <7D90E46E5972B6F6+2023061220405541634311@rivai.ai> 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_|SJ0PR11MB5631:EE_ x-ms-office365-filtering-correlation-id: b0edfbaf-fafa-4ce6-7cf3-08db6b4e8b32 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: Yif5ktKvpJA0jDt1Y7oWl4sJZjxuu4ZGkHPMw8oszZnM974avBgfpVTp5Z2DAmOqhDP33qGFUgJABjKVCCliRQWWqbExzrzG+90tKPZS0z4+K3uljFET8OGDI5PB23/Z5izx38F1AUvV69kEHpnkWegR9ISyMZkKVwZ46VEao1R9sG0beT1ENdHYCulKpK9Zr4koACufe/PSMygn3ig52XR4QQNMf8xrer86ed26PwFcqegswVpXu+6uOTDYm17NjwW3uK6f3mVUnfrtXuvqRHcZD9oXuvMYfxLt/4v8t4W2WCuE2UfscFyo8yb9d+E+k1PkWTDjzFC3Br+5VKWeBU5PSS/JqMVqErJIW04POFFoegcY60U2Mpc23y84aN7jTY8g5TfBLxuTCg6UVF6PLloX0sx7Y3dOtlGDIb9EhD4n0ytwgYYCcXaKwn9Urf6la95N4qbNhnZOtSIDD/a2+jy+dLdOXyvLJGZahYlzHWY7FRBtCKBsdZKUaaKaBHsFUbFn9j2fBX326BMhqOTwVn3qZjBEmK4QLZRYOyqCT2KX8VaxCleMm96xzBMyA9E542JTi3bZCpB+kL1+f6E2N5+jOMtojxKQbMD3GkTrTz0= 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:(13230028)(366004)(396003)(39860400002)(346002)(136003)(376002)(451199021)(8936002)(8676002)(52536014)(5660300002)(66556008)(76116006)(66946007)(64756008)(4326008)(66446008)(66476007)(84970400001)(316002)(110136005)(54906003)(2906002)(41300700001)(30864003)(71200400001)(478600001)(7696005)(122000001)(55016003)(9686003)(53546011)(6506007)(26005)(83380400001)(186003)(33656002)(82960400001)(86362001)(38070700005)(38100700002)(559001)(579004);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?dGVTeHRIRWxjeTNoSTNldzYrS0lING5MQXhqdEhHQ1NrMDJkNTExVWhCQk53?= =?utf-8?B?UXpaRGp4SlR3ZUhRWnZ1SjlsREJHbDVvb2E1bE0zZG1SakQ3RkYwaitPaU9j?= =?utf-8?B?ckNmOGlDZkFuNW4yeENDOTA3TkN4WUlCbjdrRkdYVFdkNyt1dVpydGFqdzd6?= =?utf-8?B?bFhqRCtoTW14Rm1seVZ2S3hlaVhhcm5oSUlzcE9NMm01L0NtUVpnczdod0Zw?= =?utf-8?B?bm8wVDNwcnV5UW1SOEpRaDhIMzRmbWYwbE5mRGZMMjloWjkwSXNRZjYyQjBl?= =?utf-8?B?T1VJcDZJNTBTV29tcVFyMUFFUXFkZmZwaEJUUmZqeXRLMEZhQzNmbUw5c1pF?= =?utf-8?B?dFJOSGtYbWYrbkpWZ290VmNFR2FZcm9FUkxFOW5uSXM3bFdzMGpnMnlQLzhk?= =?utf-8?B?dVNpZ1U0L1UwcEY5V0grK0taNExwZDNJaXFXZFhZYlFQRWZPczlvYUF1TUUz?= =?utf-8?B?TEd1ZHVHdDhDVTF3R2NrK2w2Z1QyUHVnME15KzJCWklGQUVDc2dwdml0b3VV?= =?utf-8?B?MHJjem5vSkJzbjBoN0VIaVEzWGhDTkZacWI5NEJxM25sNWUzSWdmMTdpcHl1?= =?utf-8?B?OEg3aThMRTZnSmZLcFNEUVFBRHZQQkh6MjdYR2JHV09ua2dpcURFU2lic2N2?= =?utf-8?B?QytsYjhQZG84SFpSQzZYSjMxZ21pVmk1eDhlRnplempwUGZydUdrUWdYYzBI?= =?utf-8?B?bnFrbzZDL0RzWXpvN0pnV0d1ZUNBU21WWTBSNnF4THVtTHVCanhrcmdLRXBG?= =?utf-8?B?M2srYWtkWXJYVXJBYjd4K3hXOVdTMGtxeHJ5TzJZdWJWQ2cyTHltMnVVdHg0?= =?utf-8?B?S3o3ZC9PbFhQY095ZUVuQWEranRzeTB4ZmZseXoxWEpxVlJ4R2tpbjJvaWs2?= =?utf-8?B?N3JSeC9kMmtsb3RzNVM2ZmtPbFRLSlprZnFFSElKN0RzKzVkYlBXNHdYc2V0?= =?utf-8?B?RGhhNy82Q2hQZWh4UlJ4V1YwU2F0Y3EwdGZ6a2l6SEUrendvNzJmUE9RckdR?= =?utf-8?B?djJXOW5lYjFVanVaOWZlUTY0bzZWTDdSMDcyQkw3UkVhVnJRZGF3RlVaejUr?= =?utf-8?B?RkhPVXdqaHlzNDhnOUFnSzg2Z3hTdUpJaVh5OGg4N3MzakZ3VjN0QjB3T284?= =?utf-8?B?Nll0ZGVyUS8wRE5qWVZOZGFNbUdJZXRpQ3RVYy9sUS9pMVloWUIyZ2JLeTZq?= =?utf-8?B?ZFNWaGJWNm1iNkpNeGlVVzU2TnV0QUo4YWVrY09HbVdOZUZrQWtaeS9VTVVs?= =?utf-8?B?OTJvdWJBdmp2aUxGOUF4ZUJBUUxGb0VDNnNoWkwvQjhDRGZXeHJqcTQxOGhz?= =?utf-8?B?L055bHRIVnk0a1BCc2t6R2VRMTBHbmtPVmYvSlFpOHFPK1dseTRhZW52Zzlk?= =?utf-8?B?bGRyTnVDRHZXQUhPTnRJUzBwOXlyMVlZQm1FUkEyeXVKaW1ZemZnVlFLSDBZ?= =?utf-8?B?QlFUc3FjU2p1ejI0TFp3SmtzOEVoTVNpWVBMMC9NZU9WUWNHeXN1MHJKOWJh?= =?utf-8?B?aDJmOUxhazlKL2R0RVp0ZExOV2VtN2U4dUR2TnNrNDdmYU5NeU5XSFZwRXQ3?= =?utf-8?B?bEhzMFk3cXlsZ0tpcUp4cW8zZER4SnVmU0hLT2lLWmZ3aHIyMXE3YjQ0RzFq?= =?utf-8?B?SFA0SERZbFB2N1h0czc5bWgvZ0lPVFdyaXk0MFRTdGRWUjdVMjNZUURpa2lD?= =?utf-8?B?c0ZOd2xYdDUxQWpJSlR4QVRzNjhyaEgvb29ralFWU1BQM3UvcFdxUVhzdUhl?= =?utf-8?B?SXBHeGJPdHN1aG0vMDFtUTNRVjVFRXFPbXJwVk56a21IbGYwcXN1dEJDRURN?= =?utf-8?B?NElQL2pCaVFmMXMzR1QrVFRaQXYxS01wb3ZOelVrWEkvU0dLem0zYzVJY0M1?= =?utf-8?B?NFRGLzJ2aU9xR2k5TmZKTDdwQSswbks0YnhLOGdidkVlS0ZnSDRaVkorU1Zy?= =?utf-8?B?S2svSWtnaS8rYjlIM1RIdmhlUHpjdzArY2FpVXN3QkpqNXgvWnhKT2c3eWps?= =?utf-8?B?MVNWNjBhRHdadGJtN0hBUHdSNGFGY3RxY1VCWFZMVGNEclFOWWdiK1BTcTJt?= =?utf-8?B?b1BLV3RJbG5Na0k3aXcya1B0dy9EM1ZONzRmS3U5WitMS0dDY21TRU9MSnRo?= =?utf-8?Q?KNxw=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: b0edfbaf-fafa-4ce6-7cf3-08db6b4e8b32 X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Jun 2023 14:08:48.9474 (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: sUiWULd9vQx/FQDly3/gqWWAWhAxt3Gse3euKHBNPSXxS3zXa0NqmkYXByO6EvpnL4pLmcx7CUd0oGrCOkezQA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR11MB5631 X-OriginatorOrg: intel.com X-Spam-Status: No, score=-11.8 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,GIT_PATCH_0,KAM_ASCII_DIVIDERS,KAM_SHORT,SPF_HELO_NONE,SPF_NONE,TXREP,T_SCC_BODY_TEXT_LINE 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: Q29tbWl0dGVkLCB0aGFua3MgS2l0byBhbmQgd2lsbCB0YWtlIGNhcmUgb2YgdGhlIGRlZmluZV9p bnNuX2FuZF9zcGxpdCBwYXJ0IGluIGFub3RoZXIgUEFUQ0guDQoNClBhbg0KDQotLS0tLU9yaWdp bmFsIE1lc3NhZ2UtLS0tLQ0KRnJvbTogR2NjLXBhdGNoZXMgPGdjYy1wYXRjaGVzLWJvdW5jZXMr cGFuMi5saT1pbnRlbC5jb21AZ2NjLmdudS5vcmc+IE9uIEJlaGFsZiBPZiBLaXRvIENoZW5nIHZp YSBHY2MtcGF0Y2hlcw0KU2VudDogTW9uZGF5LCBKdW5lIDEyLCAyMDIzIDg6NDUgUE0NClRvOiBq dXpoZS56aG9uZ0ByaXZhaS5haQ0KQ2M6IGtpdG8uY2hlbmcgPGtpdG8uY2hlbmdAZ21haWwuY29t PjsgZ2NjLXBhdGNoZXMgPGdjYy1wYXRjaGVzQGdjYy5nbnUub3JnPjsgcGFsbWVyIDxwYWxtZXJA ZGFiYmVsdC5jb20+OyBwYWxtZXIgPHBhbG1lckByaXZvc2luYy5jb20+OyBqZWZmcmV5YWxhdyA8 amVmZnJleWFsYXdAZ21haWwuY29tPjsgUm9iaW4gRGFwcCA8cmRhcHAuZ2NjQGdtYWlsLmNvbT4N ClN1YmplY3Q6IFJlOiBSZTogW1BBVENIXSBSSVNDLVY6IEFkZCBSVlYgbmFycm93IHNoaWZ0IHJp Z2h0IGxvd2VyaW5nIGF1dG8tdmVjdG9yaXphdGlvbg0KDQpZZXMsIGNoYW5nZSBhbGwgZGVmaW5l X2luc25fYW5kX3NwbGl0IHRvIHRoYXQgc3R5bGUsICJUQVJHRVRfVkVDVE9SICYmIGNhbl9jcmVh dGVfcHNldWRvX3AgKCkiLyAgIiYmIDEiLCBteSB1bmRlcnN0YW5kaW5nIGlzIGFsbCB0aG9zZSBw YXR0ZXJucyBzaG91bGQgb25seSB3b3JrIGJlZm9yZSBSQSwgc28gYWxsIHVzaW5nICJUQVJHRVRf VkVDVE9SICYmIGNhbl9jcmVhdGVfcHNldWRvX3AgKCkiIGlzIG1vcmUgcmVhc29uYWJsZS4NCg0K T24gTW9uLCBKdW4gMTIsIDIwMjMgYXQgODo0MeKAr1BNIGp1emhlLnpob25nQHJpdmFpLmFpIDxq dXpoZS56aG9uZ0ByaXZhaS5haT4gd3JvdGU6DQo+DQo+IFlvdSBtZWFuIGNoYW5nZSBhbGwgc3Bs aXQgcGF0dGVybiBsaWtlIHRoaXMgPw0KPiA7OyBUaGlzIGhlbHBzIHRvIG1hdGNoIHplcm9fZXh0 ZW5kICsgc2lnbl9leHRlbmQgKyBmbWEuDQo+IChkZWZpbmVfaW5zbl9hbmRfc3BsaXQgIip6ZXJv X3NpZ25fZXh0ZW5kX2ZtYSINCj4gICBbKHNldCAobWF0Y2hfb3BlcmFuZDpWV0VYVEkgMCAicmVn aXN0ZXJfb3BlcmFuZCIpDQo+ICAgKHBsdXM6VldFWFRJDQo+ICAgICAobXVsdDpWV0VYVEkNCj4g ICAgICAgKHplcm9fZXh0ZW5kOlZXRVhUSQ0KPiAgICAgICAgIChtYXRjaF9vcGVyYW5kOjxWX0RP VUJMRV9UUlVOQz4gMiAicmVnaXN0ZXJfb3BlcmFuZCIpKQ0KPiAgICAgICAoc2lnbl9leHRlbmQ6 VldFWFRJDQo+ICAgICAgICAgKG1hdGNoX29wZXJhbmQ6PFZfRE9VQkxFX1RSVU5DPiAzICJyZWdp c3Rlcl9vcGVyYW5kIikpKQ0KPiAgICAgKG1hdGNoX29wZXJhbmQ6VldFWFRJIDEgInJlZ2lzdGVy X29wZXJhbmQiKSkpXQ0KPiAgICJUQVJHRVRfVkVDVE9SICYmIGNhbl9jcmVhdGVfcHNldWRvX3Ag KCkiDQo+ICAgIiMiDQo+ICAgIiYmIDEiDQo+ICAgWyhjb25zdF9pbnQgMCldDQo+DQo+IF9fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fDQo+IGp1emhlLnpob25nQHJpdmFpLmFpDQo+DQo+ DQo+IEZyb206IEtpdG8gQ2hlbmcNCj4gRGF0ZTogMjAyMy0wNi0xMiAyMDozNw0KPiBUbzoganV6 aGUuemhvbmdAcml2YWkuYWkNCj4gQ0M6IGdjYy1wYXRjaGVzOyBLaXRvLmNoZW5nOyBwYWxtZXI7 IHBhbG1lcjsgamVmZnJleWFsYXc7IFJvYmluIERhcHANCj4gU3ViamVjdDogUmU6IFtQQVRDSF0g UklTQy1WOiBBZGQgUlZWIG5hcnJvdyBzaGlmdCByaWdodCBsb3dlcmluZyANCj4gYXV0by12ZWN0 b3JpemF0aW9uIFdlIGhhdmUgdHdvIHN0eWxlIHByZWRpY3RvciBmb3IgdGhvc2UgDQo+IGRlZmlu ZV9pbnNuX2FuZF9zcGxpdCBwYXR0ZXJucywgIlRBUkdFVF9WRUNUT1IiLyImJiANCj4gY2FuX2Ny ZWF0ZV9wc2V1ZG9fcCAoKSIgYW5kICJUQVJHRVRfVkVDVE9SICYmIGNhbl9jcmVhdGVfcHNldWRv X3AgDQo+ICgpIi8iJiYgMSIsIGNvdWxkIHlvdSB1bmlmeSBhbGwgdG8gbGF0ZXIgZm9ybT8gSSBm ZWVsIHRoYXQgd291bGQgYmUgDQo+IHNhZmVyIHNpbmNlIHRob3NlIHBhdHRlcm5zIGFyZSByZWFs bHkgb25seSB2YWxpZCBiZWZvcmUgDQo+IFJBKGNhbl9jcmVhdGVfcHNldWRvX3AoKSA9PSB0cnVl KSwgYWx0aG91Z2ggaXQncyBtb3N0bHkgdXNlZCBieSANCj4gY29tYmluZSBwYXNzIHNvIGl0J3Mg bW9zdGx5IHNhZmUsIGJ1dCBJTU8gd2Ugc2hvdWxkIGZpeCB0aGlzIHNvb24gcmF0aGVyIHRoYW4g Zml4IHRoYXQgdW50aWwgd2UgaGl0IHRoaXMgbGF0ZXIuDQo+DQo+IE9LIGZvciB0aGlzIHBhdGNo IGFzIGl0IGlzLCBhbmQgSSB3b3VsZCBsaWtlIHRvIGhhdmUgYSBzZXBhcmF0ZWQgcGF0Y2ggDQo+ IHRvIGZpeCBhbGwgdGhvc2UgaXNzdWVzLg0KPg0KPiBPbiBNb24sIEp1biAxMiwgMjAyMyBhdCA4 OjI34oCvUE0ganV6aGUuemhvbmdAcml2YWkuYWkgDQo+IDxqdXpoZS56aG9uZ0ByaXZhaS5haT4g d3JvdGU6DQo+ID4NCj4gPiBJcyB0aGlzIHBhdGNoIG9rIGZvciB0cnVuaz8NCj4gPg0KPiA+DQo+ ID4NCj4gPiBqdXpoZS56aG9uZ0ByaXZhaS5haQ0KPiA+DQo+ID4gRnJvbToganV6aGUuemhvbmcN Cj4gPiBEYXRlOiAyMDIzLTA2LTEyIDEwOjQxDQo+ID4gVG86IGdjYy1wYXRjaGVzDQo+ID4gQ0M6 IGtpdG8uY2hlbmc7IGtpdG8uY2hlbmc7IHBhbG1lcjsgcGFsbWVyOyBqZWZmcmV5YWxhdzsgcmRh cHAuZ2NjOyANCj4gPiBKdXpoZS1aaG9uZw0KPiA+IFN1YmplY3Q6IFtQQVRDSF0gUklTQy1WOiBB ZGQgUlZWIG5hcnJvdyBzaGlmdCByaWdodCBsb3dlcmluZyANCj4gPiBhdXRvLXZlY3Rvcml6YXRp b24NCj4gPiBGcm9tOiBKdXpoZS1aaG9uZyA8anV6aGUuemhvbmdAcml2YWkuYWk+DQo+ID4NCj4g PiBPcHRpbWl6ZSB0aGUgZm9sbG93aW5nIGF1dG8tdmVjdG9yaXphdGlvbiBjb2RlczoNCj4gPiB2 b2lkIGZvbyAoaW50MTZfdCAqIF9fcmVzdHJpY3QgYSwgaW50MzJfdCAqIF9fcmVzdHJpY3QgYiwg aW50MzJfdCBjLCANCj4gPiBpbnQgbikgew0KPiA+ICAgICBmb3IgKGludCBpID0gMDsgaSA8IG47 IGkrKykNCj4gPiAgICAgICBhW2ldID0gYltpXSA+PiBjOw0KPiA+IH0NCj4gPg0KPiA+IEJlZm9y ZSB0aGlzIHBhdGNoOg0KPiA+IGZvbzoNCj4gPiAgICAgICAgIGJsZSAgICAgYTMsemVybywuTDUN Cj4gPiAuTDM6DQo+ID4gICAgICAgICB2c2V0dmxpIGE1LGEzLGUzMixtMSx0YSxtYQ0KPiA+ICAg ICAgICAgdmxlMzIudiB2MSwwKGExKQ0KPiA+ICAgICAgICAgdnNldHZsaSBhNCx6ZXJvLGUzMixt MSx0YSxtYQ0KPiA+ICAgICAgICAgdnNyYS52eCB2MSx2MSxhMg0KPiA+ICAgICAgICAgdnNldHZs aSB6ZXJvLHplcm8sZTE2LG1mMix0YSxtYQ0KPiA+ICAgICAgICAgc2xsaSAgICBhNyxhNSwyDQo+ ID4gICAgICAgICB2bmN2dC54LngudyAgICAgdjEsdjENCj4gPiAgICAgICAgIHNsbGkgICAgYTYs YTUsMQ0KPiA+ICAgICAgICAgdnNldHZsaSB6ZXJvLGE1LGUxNixtZjIsdGEsbWENCj4gPiAgICAg ICAgIHN1YiAgICAgYTMsYTMsYTUNCj4gPiAgICAgICAgIHZzZTE2LnYgdjEsMChhMCkNCj4gPiAg ICAgICAgIGFkZCAgICAgYTEsYTEsYTcNCj4gPiAgICAgICAgIGFkZCAgICAgYTAsYTAsYTYNCj4g PiAgICAgICAgIGJuZSAgICAgYTMsemVybywuTDMNCj4gPiAuTDU6DQo+ID4gICAgICAgICByZXQN Cj4gPg0KPiA+IEFmdGVyIHRoaXMgcGF0Y2g6DQo+ID4gZm9vOg0KPiA+IGJsZSBhMyx6ZXJvLC5M NQ0KPiA+IC5MMzoNCj4gPiB2c2V0dmxpIGE1LGEzLGUzMixtMSx0YSxtYQ0KPiA+IHZsZTMyLnYg djEsMChhMSkNCj4gPiB2c2V0dmxpIGE3LHplcm8sZTE2LG1mMix0YSxtYQ0KPiA+IHNsbGkgYTYs YTUsMg0KPiA+IHZuc3JhLnd4IHYxLHYxLGEyDQo+ID4gc2xsaSBhNCxhNSwxDQo+ID4gdnNldHZs aSB6ZXJvLGE1LGUxNixtZjIsdGEsbWENCj4gPiBzdWIgYTMsYTMsYTUNCj4gPiB2c2UxNi52IHYx LDAoYTApDQo+ID4gYWRkIGExLGExLGE2DQo+ID4gYWRkIGEwLGEwLGE0DQo+ID4gYm5lIGEzLHpl cm8sLkwzDQo+ID4gLkw1Og0KPiA+IHJldA0KPiA+DQo+ID4gZ2NjL0NoYW5nZUxvZzoNCj4gPg0K PiA+ICAgICAgICAgKiBjb25maWcvcmlzY3YvYXV0b3ZlYy1vcHQubWQgKCp2PGFueV9zaGlmdHJ0 Om9wdGFiPjxhbnlfZXh0ZW5kOm9wdGFiPnRydW5jPG1vZGU+KTogTmV3IHBhdHRlcm4uDQo+ID4g ICAgICAgICAoKjxhbnlfc2hpZnRydDpvcHRhYj50cnVuYzxtb2RlPik6IERpdHRvLg0KPiA+ICAg ICAgICAgKiBjb25maWcvcmlzY3YvYXV0b3ZlYy5tZCAoPG9wdGFiPjxtb2RlPjMpOiBDaGFuZ2Ug dG8gZGVmaW5lX2luc25fYW5kX3NwbGl0Lg0KPiA+ICAgICAgICAgKHY8b3B0YWI+PG1vZGU+Myk6 IERpdHRvLg0KPiA+ICAgICAgICAgKHRydW5jPG1vZGU+PHZfZG91YmxlX3RydW5jPjIpOiBEaXR0 by4NCj4gPg0KPiA+IGdjYy90ZXN0c3VpdGUvQ2hhbmdlTG9nOg0KPiA+DQo+ID4gICAgICAgICAq IGdjYy50YXJnZXQvcmlzY3YvcnZ2L2F1dG92ZWMvYmlub3AvbmFycm93LTEuYzogTmV3IHRlc3Qu DQo+ID4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2F1dG92ZWMvYmlub3AvbmFycm93 LTIuYzogTmV3IHRlc3QuDQo+ID4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2F1dG92 ZWMvYmlub3AvbmFycm93LTMuYzogTmV3IHRlc3QuDQo+ID4gICAgICAgICAqIGdjYy50YXJnZXQv cmlzY3YvcnZ2L2F1dG92ZWMvYmlub3AvbmFycm93X3J1bi0xLmM6IE5ldyB0ZXN0Lg0KPiA+ICAg ICAgICAgKiBnY2MudGFyZ2V0L3Jpc2N2L3J2di9hdXRvdmVjL2Jpbm9wL25hcnJvd19ydW4tMi5j OiBOZXcgdGVzdC4NCj4gPiAgICAgICAgICogZ2NjLnRhcmdldC9yaXNjdi9ydnYvYXV0b3ZlYy9i aW5vcC9uYXJyb3dfcnVuLTMuYzogTmV3IHRlc3QuDQo+ID4NCj4gPiAtLS0NCj4gPiBnY2MvY29u ZmlnL3Jpc2N2L2F1dG92ZWMtb3B0Lm1kICAgICAgICAgICAgICAgfCA0NiArKysrKysrKysrKysr KysrKw0KPiA+IGdjYy9jb25maWcvcmlzY3YvYXV0b3ZlYy5tZCAgICAgICAgICAgICAgICAgICB8 IDQzICsrKysrKysrKystLS0tLS0NCj4gPiAuLi4vcmlzY3YvcnZ2L2F1dG92ZWMvYmlub3AvbmFy cm93LTEuYyAgICAgICAgfCAzMSArKysrKysrKysrKysNCj4gPiAuLi4vcmlzY3YvcnZ2L2F1dG92 ZWMvYmlub3AvbmFycm93LTIuYyAgICAgICAgfCAzMiArKysrKysrKysrKysNCj4gPiAuLi4vcmlz Y3YvcnZ2L2F1dG92ZWMvYmlub3AvbmFycm93LTMuYyAgICAgICAgfCAzMSArKysrKysrKysrKysN Cj4gPiAuLi4vcmlzY3YvcnZ2L2F1dG92ZWMvYmlub3AvbmFycm93X3J1bi0xLmMgICAgfCA1MCAr KysrKysrKysrKysrKysrKysrDQo+ID4gLi4uL3Jpc2N2L3J2di9hdXRvdmVjL2Jpbm9wL25hcnJv d19ydW4tMi5jICAgIHwgNDYgKysrKysrKysrKysrKysrKysNCj4gPiAuLi4vcmlzY3YvcnZ2L2F1 dG92ZWMvYmlub3AvbmFycm93X3J1bi0zLmMgICAgfCA0NiArKysrKysrKysrKysrKysrKw0KPiA+ IDggZmlsZXMgY2hhbmdlZCwgMzExIGluc2VydGlvbnMoKyksIDE0IGRlbGV0aW9ucygtKSBjcmVh dGUgbW9kZSANCj4gPiAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9h dXRvdmVjL2Jpbm9wL25hcnJvdy0xLmMNCj4gPiBjcmVhdGUgbW9kZSAxMDA2NDQgDQo+ID4gZ2Nj L3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9hdXRvdmVjL2Jpbm9wL25hcnJvdy0yLmMN Cj4gPiBjcmVhdGUgbW9kZSAxMDA2NDQgDQo+ID4gZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jp c2N2L3J2di9hdXRvdmVjL2Jpbm9wL25hcnJvdy0zLmMNCj4gPiBjcmVhdGUgbW9kZSAxMDA2NDQg DQo+ID4gZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9hdXRvdmVjL2Jpbm9wL25h cnJvd19ydW4tMS5jDQo+ID4gY3JlYXRlIG1vZGUgMTAwNjQ0IA0KPiA+IGdjYy90ZXN0c3VpdGUv Z2NjLnRhcmdldC9yaXNjdi9ydnYvYXV0b3ZlYy9iaW5vcC9uYXJyb3dfcnVuLTIuYw0KPiA+IGNy ZWF0ZSBtb2RlIDEwMDY0NCANCj4gPiBnY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2 L2F1dG92ZWMvYmlub3AvbmFycm93X3J1bi0zLmMNCj4gPg0KPiA+IGRpZmYgLS1naXQgYS9nY2Mv Y29uZmlnL3Jpc2N2L2F1dG92ZWMtb3B0Lm1kIA0KPiA+IGIvZ2NjL2NvbmZpZy9yaXNjdi9hdXRv dmVjLW9wdC5tZCBpbmRleCA3YmI5M2VlZDIyMC4uYWVmMjhlNDQ1ZTEgDQo+ID4gMTAwNjQ0DQo+ ID4gLS0tIGEvZ2NjL2NvbmZpZy9yaXNjdi9hdXRvdmVjLW9wdC5tZA0KPiA+ICsrKyBiL2djYy9j b25maWcvcmlzY3YvYXV0b3ZlYy1vcHQubWQNCj4gPiBAQCAtMzMwLDMgKzMzMCw0OSBAQA0KPiA+ ICAgIH0NCj4gPiAgICBbKHNldF9hdHRyICJ0eXBlIiAidml3bXVsYWRkIikNCj4gPiAgICAgKHNl dF9hdHRyICJtb2RlIiAiPFZfRE9VQkxFX1RSVU5DPiIpXSkNCj4gPiArDQo+ID4gKzs7IA0KPiA+ ICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tDQo+ID4gKy0tLS0tLSA7OyAtLS0tIFtJTlRdIEJpbmFyeSBuYXJyb3cgc2hp ZnRzLg0KPiA+ICs7OyANCj4gPiArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiA+ICstLS0tLS0NCj4gPiArOzsgSW5j bHVkZXM6DQo+ID4gKzs7IC0gdm5zcmwud3Yvdm5zcmwud3gvdm5zcmwud2kNCj4gPiArOzsgLSB2 bnNyYS53di92bnNyYS53eC92bnNyYS53aQ0KPiA+ICs7OyANCj4gPiArLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiA+ ICstLS0tLS0NCj4gPiArDQo+ID4gKyhkZWZpbmVfaW5zbl9hbmRfc3BsaXQgIip2PGFueV9zaGlm dHJ0Om9wdGFiPjxhbnlfZXh0ZW5kOm9wdGFiPnRydW5jPG1vZGU+Ig0KPiA+ICsgIFsoc2V0ICht YXRjaF9vcGVyYW5kOjxWX0RPVUJMRV9UUlVOQz4gMCAicmVnaXN0ZXJfb3BlcmFuZCIgICAgICAg Ij12cix2ciIpDQo+ID4gKyAgICAodHJ1bmNhdGU6PFZfRE9VQkxFX1RSVU5DPg0KPiA+ICsgICAg ICAoYW55X3NoaWZ0cnQ6VldFWFRJDQo+ID4gKyAgICAgICAgKG1hdGNoX29wZXJhbmQ6VldFWFRJ IDEgInJlZ2lzdGVyX29wZXJhbmQiICAgICAgICAgICAgICAgICAiIHZyLHZyIikNCj4gPiArIChh bnlfZXh0ZW5kOlZXRVhUSQ0KPiA+ICsgICAgICAgICAgKG1hdGNoX29wZXJhbmQ6PFZfRE9VQkxF X1RSVU5DPiAyICJ2ZWN0b3Jfc2hpZnRfb3BlcmFuZCIgDQo+ID4gKyIgdnIsdmsiKSkpKSldDQo+ ID4gKyAgIlRBUkdFVF9WRUNUT1IiDQo+ID4gKyAgIiMiDQo+ID4gKyAgIiYmIGNhbl9jcmVhdGVf cHNldWRvX3AgKCkiDQo+ID4gKyAgWyhjb25zdF9pbnQgMCldDQo+ID4gK3sNCj4gPiArICBpbnNu X2NvZGUgaWNvZGUgPSBjb2RlX2Zvcl9wcmVkX25hcnJvdyAoPGFueV9zaGlmdHJ0OkNPREU+LCAN Cj4gPiArPE1PREU+bW9kZSk7DQo+ID4gKyAgcmlzY3ZfdmVjdG9yOjplbWl0X3ZsbWF4X2luc24g KGljb2RlLCByaXNjdl92ZWN0b3I6OlJWVl9CSU5PUCwgDQo+ID4gK29wZXJhbmRzKTsNCj4gPiAr ICBET05FOw0KPiA+ICt9DQo+ID4gKyBbKHNldF9hdHRyICJ0eXBlIiAidm5zaGlmdCIpDQo+ID4g KyAgKHNldF9hdHRyICJtb2RlIiAiPFZfRE9VQkxFX1RSVU5DPiIpXSkNCj4gPiArDQo+ID4gKyhk ZWZpbmVfaW5zbl9hbmRfc3BsaXQgIio8YW55X3NoaWZ0cnQ6b3B0YWI+dHJ1bmM8bW9kZT4iDQo+ ID4gKyAgWyhzZXQgKG1hdGNoX29wZXJhbmQ6PFZfRE9VQkxFX1RSVU5DPiAwICJyZWdpc3Rlcl9v cGVyYW5kIiAiPXZyIikNCj4gPiArICAgICh0cnVuY2F0ZTo8Vl9ET1VCTEVfVFJVTkM+DQo+ID4g KyAgICAgIChhbnlfc2hpZnRydDpWV0VYVEkNCj4gPiArICAgICAgICAobWF0Y2hfb3BlcmFuZDpW V0VYVEkgMSAicmVnaXN0ZXJfb3BlcmFuZCIgICAgICAgICAgICIgdnIiKQ0KPiA+ICsgKG1hdGNo X29wZXJhbmQ6PFZFTD4gMiAiY3NyX29wZXJhbmQiICAgICAgICAgICAgICAgICAiIHJLIikpKSld DQo+ID4gKyAgIlRBUkdFVF9WRUNUT1IiDQo+ID4gKyAgIiMiDQo+ID4gKyAgIiYmIGNhbl9jcmVh dGVfcHNldWRvX3AgKCkiDQo+ID4gKyAgWyhjb25zdF9pbnQgMCldDQo+ID4gK3sNCj4gPiArICBv cGVyYW5kc1syXSA9IGdlbl9sb3dwYXJ0IChQbW9kZSwgb3BlcmFuZHNbMl0pOw0KPiA+ICsgIGlu c25fY29kZSBpY29kZSA9IGNvZGVfZm9yX3ByZWRfbmFycm93X3NjYWxhciANCj4gPiArKDxhbnlf c2hpZnRydDpDT0RFPiwgPE1PREU+bW9kZSk7DQo+ID4gKyAgcmlzY3ZfdmVjdG9yOjplbWl0X3Zs bWF4X2luc24gKGljb2RlLCByaXNjdl92ZWN0b3I6OlJWVl9CSU5PUCwgDQo+ID4gK29wZXJhbmRz KTsNCj4gPiArICBET05FOw0KPiA+ICt9DQo+ID4gKyBbKHNldF9hdHRyICJ0eXBlIiAidm5zaGlm dCIpDQo+ID4gKyAgKHNldF9hdHRyICJtb2RlIiAiPFZfRE9VQkxFX1RSVU5DPiIpXSkNCj4gPiBk aWZmIC0tZ2l0IGEvZ2NjL2NvbmZpZy9yaXNjdi9hdXRvdmVjLm1kIA0KPiA+IGIvZ2NjL2NvbmZp Zy9yaXNjdi9hdXRvdmVjLm1kIGluZGV4IGI3MDcwMDk5ZjI5Li5lYWRjMmM1YjU5NSAxMDA2NDQN Cj4gPiAtLS0gYS9nY2MvY29uZmlnL3Jpc2N2L2F1dG92ZWMubWQNCj4gPiArKysgYi9nY2MvY29u ZmlnL3Jpc2N2L2F1dG92ZWMubWQNCj4gPiBAQCAtMTUwLDE4ICsxNTAsMjMgQEANCj4gPiA7OyAt IHZzbGwudmkvdnNyYS52aS92c3JsLnZpDQo+ID4gOzsgDQo+ID4gLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4gPiAt LS0tLQ0KPiA+IC0oZGVmaW5lX2V4cGFuZCAiPG9wdGFiPjxtb2RlPjMiDQo+ID4gLSAgWyhzZXQg KG1hdGNoX29wZXJhbmQ6VkkgMCAicmVnaXN0ZXJfb3BlcmFuZCIpDQo+ID4gKyhkZWZpbmVfaW5z bl9hbmRfc3BsaXQgIjxvcHRhYj48bW9kZT4zIg0KPiA+ICsgIFsoc2V0IChtYXRjaF9vcGVyYW5k OlZJIDAgInJlZ2lzdGVyX29wZXJhbmQiICI9dnIiKQ0KPiA+ICAgICAgKGFueV9zaGlmdDpWSQ0K PiA+IC0gICAgIChtYXRjaF9vcGVyYW5kOlZJIDEgInJlZ2lzdGVyX29wZXJhbmQiKQ0KPiA+IC0g ICAgIChtYXRjaF9vcGVyYW5kOjxWRUw+IDIgImNzcl9vcGVyYW5kIikpKV0NCj4gPiArICAgICAo bWF0Y2hfb3BlcmFuZDpWSSAxICJyZWdpc3Rlcl9vcGVyYW5kIiAgICAiIHZyIikNCj4gPiArICAg ICAobWF0Y2hfb3BlcmFuZDo8VkVMPiAyICJjc3Jfb3BlcmFuZCIgICAgICAiIHJLIikpKV0NCj4g PiAgICAiVEFSR0VUX1ZFQ1RPUiINCj4gPiArICAiIyINCj4gPiArICAiJiYgY2FuX2NyZWF0ZV9w c2V1ZG9fcCAoKSINCj4gPiArICBbKGNvbnN0X2ludCAwKV0NCj4gPiB7DQo+ID4gICAgb3BlcmFu ZHNbMl0gPSBnZW5fbG93cGFydCAoUG1vZGUsIG9wZXJhbmRzWzJdKTsNCj4gPiAgICByaXNjdl92 ZWN0b3I6OmVtaXRfdmxtYXhfaW5zbiAoY29kZV9mb3JfcHJlZF9zY2FsYXIgKDxDT0RFPiwgDQo+ ID4gPE1PREU+bW9kZSksIHJpc2N2X3ZlY3Rvcjo6UlZWX0JJTk9QLCBvcGVyYW5kcyk7DQo+ID4g ICAgRE9ORTsNCj4gPiAtfSkNCj4gPiArfQ0KPiA+ICsgWyhzZXRfYXR0ciAidHlwZSIgInZzaGlm dCIpDQo+ID4gKyAgKHNldF9hdHRyICJtb2RlIiAiPE1PREU+IildKQ0KPiA+IDs7IA0KPiA+IC0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tDQo+ID4gLS0tLS0gOzsgLS0tLSBbSU5UXSBCaW5hcnkgc2hpZnRzIGJ5IHNjYWxh ci4NCj4gPiBAQCAtMTcwLDE3ICsxNzUsMjIgQEANCj4gPiA7OyAtIHZzbGwudnYvdnNyYS52di92 c3JsLnZ2DQo+ID4gOzsgDQo+ID4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4gPiAtLS0tLQ0KPiA+IC0oZGVmaW5l X2V4cGFuZCAidjxvcHRhYj48bW9kZT4zIg0KPiA+IC0gIFsoc2V0IChtYXRjaF9vcGVyYW5kOlZJ IDAgInJlZ2lzdGVyX29wZXJhbmQiKQ0KPiA+ICsoZGVmaW5lX2luc25fYW5kX3NwbGl0ICJ2PG9w dGFiPjxtb2RlPjMiDQo+ID4gKyAgWyhzZXQgKG1hdGNoX29wZXJhbmQ6VkkgMCAicmVnaXN0ZXJf b3BlcmFuZCIgICI9dnIsdnIiKQ0KPiA+ICAgICAgKGFueV9zaGlmdDpWSQ0KPiA+IC0gICAgICht YXRjaF9vcGVyYW5kOlZJIDEgInJlZ2lzdGVyX29wZXJhbmQiKQ0KPiA+IC0gICAgIChtYXRjaF9v cGVyYW5kOlZJIDIgInZlY3Rvcl9zaGlmdF9vcGVyYW5kIikpKV0NCj4gPiArICAgICAobWF0Y2hf b3BlcmFuZDpWSSAxICJyZWdpc3Rlcl9vcGVyYW5kIiAgICAgIiB2cix2ciIpDQo+ID4gKyAgICAg KG1hdGNoX29wZXJhbmQ6VkkgMiAidmVjdG9yX3NoaWZ0X29wZXJhbmQiICIgdnIsdmsiKSkpXQ0K PiA+ICAgICJUQVJHRVRfVkVDVE9SIg0KPiA+ICsgICIjIg0KPiA+ICsgICImJiBjYW5fY3JlYXRl X3BzZXVkb19wICgpIg0KPiA+ICsgIFsoY29uc3RfaW50IDApXQ0KPiA+IHsNCj4gPiAgICByaXNj dl92ZWN0b3I6OmVtaXRfdmxtYXhfaW5zbiAoY29kZV9mb3JfcHJlZCAoPENPREU+LCANCj4gPiA8 TU9ERT5tb2RlKSwgcmlzY3ZfdmVjdG9yOjpSVlZfQklOT1AsIG9wZXJhbmRzKTsNCj4gPiAgICBE T05FOw0KPiA+IC19KQ0KPiA+ICt9DQo+ID4gKyBbKHNldF9hdHRyICJ0eXBlIiAidnNoaWZ0IikN Cj4gPiArICAoc2V0X2F0dHIgIm1vZGUiICI8TU9ERT4iKV0pDQo+ID4gOzsgDQo+ID4gLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0NCj4gPiAtLS0tLSA7OyAtLS0tIFtCT09MXSBCaW5hcnkgbG9naWNhbCBvcGVyYXRpb25z IEBAIC0zOTUsMTYgKzQwNSwyMSBAQCANCj4gPiA7OyANCj4gPiAtLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiA+IC0t LS0tDQo+ID4gOzsgLSB2bmN2dC54Lngudw0KPiA+IDs7IA0KPiA+IC0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQo+ID4g LS0tLS0gLShkZWZpbmVfZXhwYW5kICJ0cnVuYzxtb2RlPjx2X2RvdWJsZV90cnVuYz4yIg0KPiA+ IC0gIFsoc2V0IChtYXRjaF9vcGVyYW5kOjxWX0RPVUJMRV9UUlVOQz4gMCAicmVnaXN0ZXJfb3Bl cmFuZCIpDQo+ID4gKyhkZWZpbmVfaW5zbl9hbmRfc3BsaXQgInRydW5jPG1vZGU+PHZfZG91Ymxl X3RydW5jPjIiDQo+ID4gKyAgWyhzZXQgKG1hdGNoX29wZXJhbmQ6PFZfRE9VQkxFX1RSVU5DPiAw ICJyZWdpc3Rlcl9vcGVyYW5kIiAiPXZyIikNCj4gPiAgICAgICh0cnVuY2F0ZTo8Vl9ET1VCTEVf VFJVTkM+DQo+ID4gLSAgICAgKG1hdGNoX29wZXJhbmQ6VldFWFRJIDEgInJlZ2lzdGVyX29wZXJh bmQiKSkpXQ0KPiA+ICsgICAgIChtYXRjaF9vcGVyYW5kOlZXRVhUSSAxICJyZWdpc3Rlcl9vcGVy YW5kIiAgICAgICAgICAgICAgIiB2ciIpKSldDQo+ID4gICAgIlRBUkdFVF9WRUNUT1IiDQo+ID4g KyAgIiMiDQo+ID4gKyAgIiYmIGNhbl9jcmVhdGVfcHNldWRvX3AgKCkiDQo+ID4gKyAgWyhjb25z dF9pbnQgMCldDQo+ID4gew0KPiA+ICAgIGluc25fY29kZSBpY29kZSA9IGNvZGVfZm9yX3ByZWRf dHJ1bmMgKDxNT0RFPm1vZGUpOw0KPiA+ICAgIHJpc2N2X3ZlY3Rvcjo6ZW1pdF92bG1heF9pbnNu IChpY29kZSwgcmlzY3ZfdmVjdG9yOjpSVlZfVU5PUCwgb3BlcmFuZHMpOw0KPiA+ICAgIERPTkU7 DQo+ID4gLX0pDQo+ID4gK30NCj4gPiArICBbKHNldF9hdHRyICJ0eXBlIiAidnNoaWZ0IikNCj4g PiArICAgKHNldF9hdHRyICJtb2RlIiAiPE1PREU+IildKQ0KPiA+IDs7IA0KPiA+IC0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tDQo+ID4gLS0tLS0gOzsgVHJ1bmNhdGlvbiB0byBhIG1vZGUgd2hvc2UgaW5uZXIgbW9kZSBz aXplIGlzIGEgcXVhcnRlciBvZiANCj4gPiBtb2RlJ3MuDQo+ID4gZGlmZiAtLWdpdCANCj4gPiBh L2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYXV0b3ZlYy9iaW5vcC9uYXJyb3ct MS5jIA0KPiA+IGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9hdXRvdmVjL2Jp bm9wL25hcnJvdy0xLmMNCj4gPiBuZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiA+IGluZGV4IDAwMDAw MDAwMDAwLi4zZGU4ZDg1YjUyZA0KPiA+IC0tLSAvZGV2L251bGwNCj4gPiArKysgYi9nY2MvdGVz dHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2F1dG92ZWMvYmlub3AvbmFycm93LTEuYw0KPiA+ IEBAIC0wLDAgKzEsMzEgQEANCj4gPiArLyogeyBkZy1kbyBjb21waWxlIH0gKi8NCj4gPiArLyog eyBkZy1hZGRpdGlvbmFsLW9wdGlvbnMgIi1tYXJjaD1ydjMyZ2N2IC1tYWJpPWlscDMyZCANCj4g PiArLS1wYXJhbT1yaXNjdi1hdXRvdmVjLXByZWZlcmVuY2U9c2NhbGFibGUiIH0gKi8NCj4gPiAr DQo+ID4gKyNpbmNsdWRlIDxzdGRpbnQtZ2NjLmg+DQo+ID4gKw0KPiA+ICsjZGVmaW5lIFRFU1Rf VFlQRShUWVBFMSwgVFlQRTIpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgXA0KPiA+ICsgIF9fYXR0cmlidXRlX18gKChub2lwYSkpIHZvaWQgdm5zaGlmdF8j I1RZUEUxIyNfIyNUWVBFMiAoICAgICAgICAgICAgICAgICAgICAgXA0KPiA+ICsgICAgVFlQRTIg Kl9fcmVzdHJpY3QgZHN0LCBUWVBFMSAqX19yZXN0cmljdCBhLCBUWVBFMiAqX19yZXN0cmljdCBi LCBpbnQgbikgICAgXA0KPiA+ICsgIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXA0KPiA+ICsgICAgZm9y IChpbnQgaSA9IDA7IGkgPCBuOyBpKyspICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgXA0KPiA+ICsgICAgICBkc3RbaV0gPSBhW2ldID4+IGJbaV07ICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXA0KPiA+ICsgIH0N Cj4gPiArDQo+ID4gKyNkZWZpbmUgVEVTVF9BTEwoKSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgVEVTVF9UWVBFIChp bnQxNl90LCBpbnQ4X3QpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBcDQo+ID4gKyAgVEVTVF9UWVBFIChpbnQxNl90LCB1aW50OF90KSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgVEVTVF9UWVBF ICh1aW50MTZfdCwgaW50OF90KSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBcDQo+ID4gKyAgVEVTVF9UWVBFICh1aW50MTZfdCwgdWludDhfdCkgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgVEVTVF9U WVBFIChpbnQzMl90LCBpbnQxNl90KSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBcDQo+ID4gKyAgVEVTVF9UWVBFIChpbnQzMl90LCB1aW50MTZfdCkgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgVEVT VF9UWVBFICh1aW50MzJfdCwgaW50MTZfdCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgVEVTVF9UWVBFICh1aW50MzJfdCwgdWludDE2X3Qp ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAg VEVTVF9UWVBFIChpbnQ2NF90LCBpbnQzMl90KSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgVEVTVF9UWVBFIChpbnQ2NF90LCB1aW50MzJf dCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4g KyAgVEVTVF9UWVBFICh1aW50NjRfdCwgaW50MzJfdCkgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgVEVTVF9UWVBFICh1aW50NjRfdCwgdWlu dDMyX3QpDQo+ID4gKw0KPiA+ICtURVNUX0FMTCAoKQ0KPiA+ICsNCj4gPiArLyogeyBkZy1maW5h bCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVzIHtcdHZuc3JhXC53dn0gNiB9IH0gKi8NCj4gPiArLyog eyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVzIHtcdHZuc3JsXC53dn0gNSB9IH0gKi8N Cj4gPiBkaWZmIC0tZ2l0IA0KPiA+IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2 di9hdXRvdmVjL2Jpbm9wL25hcnJvdy0yLmMgDQo+ID4gYi9nY2MvdGVzdHN1aXRlL2djYy50YXJn ZXQvcmlzY3YvcnZ2L2F1dG92ZWMvYmlub3AvbmFycm93LTIuYw0KPiA+IG5ldyBmaWxlIG1vZGUg MTAwNjQ0DQo+ID4gaW5kZXggMDAwMDAwMDAwMDAuLmU1YzJlMzdmNWZhDQo+ID4gLS0tIC9kZXYv bnVsbA0KPiA+ICsrKyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYXV0b3Zl Yy9iaW5vcC9uYXJyb3ctMi5jDQo+ID4gQEAgLTAsMCArMSwzMiBAQA0KPiA+ICsvKiB7IGRnLWRv IGNvbXBpbGUgfSAqLw0KPiA+ICsvKiB7IGRnLWFkZGl0aW9uYWwtb3B0aW9ucyAiLW1hcmNoPXJ2 MzJnY3YgLW1hYmk9aWxwMzJkIA0KPiA+ICstLXBhcmFtPXJpc2N2LWF1dG92ZWMtcHJlZmVyZW5j ZT1zY2FsYWJsZSIgfSAqLw0KPiA+ICsNCj4gPiArI2luY2x1ZGUgPHN0ZGludC1nY2MuaD4NCj4g PiArDQo+ID4gKyNkZWZpbmUgVEVTVF9UWVBFKFRZUEUxLCBUWVBFMikgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgX19hdHRyaWJ1dGVfXyAo KCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBcDQo+ID4gKyAgICBub2lwYSkpIHZvaWQgdm5zaGlmdF8jI1RZUEUxIyNfIyNUWVBFMiAo VFlQRTIgKl9fcmVzdHJpY3QgZHN0LCAgICAgICAgICAgICBcDQo+ID4gKyAgICAgVFlQRTEgKl9f cmVzdHJpY3QgYSwgaW50IG4pICAgICAgICBcDQo+ID4gKyAgeyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBc DQo+ID4gKyAgICBmb3IgKGludCBpID0gMDsgaSA8IG47IGkrKykgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgICAgIGRzdFtpXSA9IGFbaV0g Pj4gNzsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBcDQo+ID4gKyAgfQ0KPiA+ICsNCj4gPiArI2RlZmluZSBURVNUX0FMTCgpICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwNCj4gPiAr ICBURVNUX1RZUEUgKGludDE2X3QsIGludDhfdCkgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIFwNCj4gPiArICBURVNUX1RZUEUgKGludDE2X3QsIHVpbnQ4 X3QpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwNCj4g PiArICBURVNUX1RZUEUgKHVpbnQxNl90LCBpbnQ4X3QpICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIFwNCj4gPiArICBURVNUX1RZUEUgKHVpbnQxNl90LCB1 aW50OF90KSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwN Cj4gPiArICBURVNUX1RZUEUgKGludDMyX3QsIGludDE2X3QpICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwNCj4gPiArICBURVNUX1RZUEUgKGludDMyX3Qs IHVpbnQxNl90KSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IFwNCj4gPiArICBURVNUX1RZUEUgKHVpbnQzMl90LCBpbnQxNl90KSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwNCj4gPiArICBURVNUX1RZUEUgKHVpbnQz Ml90LCB1aW50MTZfdCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFwNCj4gPiArICBURVNUX1RZUEUgKGludDY0X3QsIGludDMyX3QpICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwNCj4gPiArICBURVNUX1RZUEUgKGlu dDY0X3QsIHVpbnQzMl90KSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIFwNCj4gPiArICBURVNUX1RZUEUgKHVpbnQ2NF90LCBpbnQzMl90KSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwNCj4gPiArICBURVNUX1RZUEUg KHVpbnQ2NF90LCB1aW50MzJfdCkNCj4gPiArDQo+ID4gK1RFU1RfQUxMICgpDQo+ID4gKw0KPiA+ ICsvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge1x0dm5zcmFcLndpfSA2IH0g fSAqLw0KPiA+ICsvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge1x0dm5zcmxc LndpfSA2IH0gfSAqLw0KPiA+IGRpZmYgLS1naXQgDQo+ID4gYS9nY2MvdGVzdHN1aXRlL2djYy50 YXJnZXQvcmlzY3YvcnZ2L2F1dG92ZWMvYmlub3AvbmFycm93LTMuYyANCj4gPiBiL2djYy90ZXN0 c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYXV0b3ZlYy9iaW5vcC9uYXJyb3ctMy5jDQo+ID4g bmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4gPiBpbmRleCAwMDAwMDAwMDAwMC4uM2IyODg0NjYzOTQN Cj4gPiAtLS0gL2Rldi9udWxsDQo+ID4gKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jp c2N2L3J2di9hdXRvdmVjL2Jpbm9wL25hcnJvdy0zLmMNCj4gPiBAQCAtMCwwICsxLDMxIEBADQo+ ID4gKy8qIHsgZGctZG8gY29tcGlsZSB9ICovDQo+ID4gKy8qIHsgZGctYWRkaXRpb25hbC1vcHRp b25zICItbWFyY2g9cnY2NGdjdiAtbWFiaT1scDY0ZCANCj4gPiArLS1wYXJhbT1yaXNjdi1hdXRv dmVjLXByZWZlcmVuY2U9c2NhbGFibGUiIH0gKi8NCj4gPiArDQo+ID4gKyNpbmNsdWRlIDxzdGRp bnQtZ2NjLmg+DQo+ID4gKw0KPiA+ICsjZGVmaW5lIFRFU1RfVFlQRShUWVBFMSwgVFlQRTIpICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXA0KPiA+ICsgIF9f YXR0cmlidXRlX18gKChub2lwYSkpIHZvaWQgdm5zaGlmdF8jI1RZUEUxIyNfIyNUWVBFMiAoICAg ICAgICAgICAgICAgICAgICAgXA0KPiA+ICsgICAgVFlQRTIgKl9fcmVzdHJpY3QgZHN0LCBUWVBF MSAqX19yZXN0cmljdCBhLCBUWVBFMiBiLCBpbnQgbikgICAgICAgICAgICAgICAgXA0KPiA+ICsg IHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgXA0KPiA+ICsgICAgZm9yIChpbnQgaSA9IDA7IGkgPCBuOyBp KyspICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXA0KPiA+ ICsgICAgICBkc3RbaV0gPSBhW2ldID4+IGI7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgXA0KPiA+ICsgIH0NCj4gPiArDQo+ID4gKyNkZWZpbmUg VEVTVF9BTEwoKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBcDQo+ID4gKyAgVEVTVF9UWVBFIChpbnQxNl90LCBpbnQ4X3QpICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgVEVT VF9UWVBFIChpbnQxNl90LCB1aW50OF90KSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgVEVTVF9UWVBFICh1aW50MTZfdCwgaW50OF90KSAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAg VEVTVF9UWVBFICh1aW50MTZfdCwgdWludDhfdCkgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgVEVTVF9UWVBFIChpbnQzMl90LCBpbnQxNl90 KSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4g KyAgVEVTVF9UWVBFIChpbnQzMl90LCB1aW50MTZfdCkgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgVEVTVF9UWVBFICh1aW50MzJfdCwgaW50 MTZfdCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ ID4gKyAgVEVTVF9UWVBFICh1aW50MzJfdCwgdWludDE2X3QpICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgVEVTVF9UWVBFIChpbnQ2NF90LCBp bnQzMl90KSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBc DQo+ID4gKyAgVEVTVF9UWVBFIChpbnQ2NF90LCB1aW50MzJfdCkgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgVEVTVF9UWVBFICh1aW50NjRf dCwgaW50MzJfdCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBcDQo+ID4gKyAgVEVTVF9UWVBFICh1aW50NjRfdCwgdWludDMyX3QpDQo+ID4gKw0KPiA+ICtU RVNUX0FMTCAoKQ0KPiA+ICsNCj4gPiArLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRp bWVzIHtcdHZuc3JhXC53eH0gNCB9IH0gKi8NCj4gPiArLyogeyBkZy1maW5hbCB7IHNjYW4tYXNz ZW1ibGVyLXRpbWVzIHtcdHZuc3JsXC53eH0gNCB9IH0gKi8NCj4gPiBkaWZmIC0tZ2l0IA0KPiA+ IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9hdXRvdmVjL2Jpbm9wL25hcnJv d19ydW4tMS5jIA0KPiA+IGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9hdXRv dmVjL2Jpbm9wL25hcnJvd19ydW4tMS5jDQo+ID4gbmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4gPiBp bmRleCAwMDAwMDAwMDAwMC4uMmE4OTgxMDRmYTgNCj4gPiAtLS0gL2Rldi9udWxsDQo+ID4gKysr IGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9hdXRvdmVjL2Jpbm9wL25hcnJv d19ydW4tMS4NCj4gPiArKysgYw0KPiA+IEBAIC0wLDAgKzEsNTAgQEANCj4gPiArLyogeyBkZy1k byBydW4geyB0YXJnZXQgeyByaXNjdl92ZWN0b3IgfSB9IH0gKi8NCj4gPiArLyogeyBkZy1hZGRp dGlvbmFsLW9wdGlvbnMgDQo+ID4gKyItLXBhcmFtPXJpc2N2LWF1dG92ZWMtcHJlZmVyZW5jZT1z Y2FsYWJsZSIgfSAqLw0KPiA+ICsNCj4gPiArI2luY2x1ZGUgPGFzc2VydC5oPg0KPiA+ICsjaW5j bHVkZSAibmFycm93LTEuYyINCj4gPiArDQo+ID4gKyNkZWZpbmUgUlVOKFRZUEUxLCBUWVBFMiwg U1opICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ ID4gKyAgVFlQRTEgYSMjVFlQRTEjI18jI1RZUEUyIyNfIyNTWltTWl07ICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgVFlQRTIgYiMjVFlQRTEjI18jI1RZ UEUyIyNfIyNTWltTWl07ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBc DQo+ID4gKyAgVFlQRTIgZHN0IyNUWVBFMSMjXyMjVFlQRTIjI18jI1NaW1NaXTsgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgZm9yIChpbnQgaSA9IDA7IGkg PCBTWjsgaSsrKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBcDQo+ID4gKyAgICB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgICAgIGEjI1RZUEUxIyNf IyNUWVBFMiMjXyMjU1pbaV0gPSBpICUgODcyMzsgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBcDQo+ID4gKyAgICAgIGIjI1RZUEUxIyNfIyNUWVBFMiMjXyMjU1pbaV0gPSBpICUgKHNp emVvZiAoVFlQRTIpICogMyk7ICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgICB9ICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBcDQo+ID4gKyAgdm5zaGlmdF8jI1RZUEUxIyNfIyNUWVBFMiAoZHN0IyNUWVBFMSMj XyMjVFlQRTIjI18jI1NaLCAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgICAgIGEjI1RZ UEUxIyNfIyNUWVBFMiMjXyMjU1osICAgICAgICAgICAgICAgICAgICAgICAgXA0KPiA+ICsgICAg ICBiIyNUWVBFMSMjXyMjVFlQRTIjI18jI1NaLCBTWik7ICAgICAgICAgICAgICAgICAgIFwNCj4g PiArICBmb3IgKGludCBpID0gMDsgaSA8IFNaOyBpKyspICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIFwNCj4gPiArICAgIHsgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwN Cj4gPiArICAgICAgYXNzZXJ0IChkc3QjI1RZUEUxIyNfIyNUWVBFMiMjXyMjU1pbaV0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwNCj4gPiArICAgICAgID09IChUWVBFMikgKGEj I1RZUEUxIyNfIyNUWVBFMiMjXyMjU1pbaV0gICAgICAgICAgICAgICAgICAgICAgICAgXA0KPiA+ ICsgICA+PiBiIyNUWVBFMSMjXyMjVFlQRTIjI18jI1NaW2ldKSk7ICAgICAgICAgICAgICAgICAg IFwNCj4gPiArICAgIH0NCj4gPiArDQo+ID4gKyNkZWZpbmUgUlVOX0FMTChTWikgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4g KyAgUlVOIChpbnQxNl90LCBpbnQ4X3QsIFNaKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgUlVOIChpbnQxNl90LCB1aW50OF90LCBTWikgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgUlVOICh1 aW50MTZfdCwgaW50OF90LCBTWikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBcDQo+ID4gKyAgUlVOICh1aW50MTZfdCwgdWludDhfdCwgU1opICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgUlVOIChpbnQzMl90LCBp bnQxNl90LCBTWikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBc DQo+ID4gKyAgUlVOIChpbnQzMl90LCB1aW50MTZfdCwgU1opICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgUlVOICh1aW50MzJfdCwgaW50MTZfdCwg U1opICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAg UlVOICh1aW50MzJfdCwgdWludDE2X3QsIFNaKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBcDQo+ID4gKyAgUlVOIChpbnQ2NF90LCBpbnQzMl90LCBTWikgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgUlVOIChpbnQ2 NF90LCB1aW50MzJfdCwgU1opICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBcDQo+ID4gKyAgUlVOICh1aW50NjRfdCwgaW50MzJfdCwgU1opICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgUlVOICh1aW50NjRfdCwgdWlu dDMyX3QsIFNaKQ0KPiA+ICsNCj4gPiAraW50DQo+ID4gK21haW4gKCkNCj4gPiArew0KPiA+ICsg IFJVTl9BTEwgKDE1KQ0KPiA+ICsgIFJVTl9BTEwgKDE2KQ0KPiA+ICsgIFJVTl9BTEwgKDE3KQ0K PiA+ICsgIFJVTl9BTEwgKDEyNykNCj4gPiArICBSVU5fQUxMICgxMjgpDQo+ID4gKyAgUlVOX0FM TCAoMTI5KQ0KPiA+ICsgIFJVTl9BTEwgKDUxMikNCj4gPiArfQ0KPiA+IGRpZmYgLS1naXQgDQo+ ID4gYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2F1dG92ZWMvYmlub3AvbmFy cm93X3J1bi0yLmMgDQo+ID4gYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2F1 dG92ZWMvYmlub3AvbmFycm93X3J1bi0yLmMNCj4gPiBuZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiA+ IGluZGV4IDAwMDAwMDAwMDAwLi4xNjMwYmExYTVmOA0KPiA+IC0tLSAvZGV2L251bGwNCj4gPiAr KysgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2F1dG92ZWMvYmlub3AvbmFy cm93X3J1bi0yLg0KPiA+ICsrKyBjDQo+ID4gQEAgLTAsMCArMSw0NiBAQA0KPiA+ICsvKiB7IGRn LWRvIHJ1biB7IHRhcmdldCB7IHJpc2N2X3ZlY3RvciB9IH0gfSAqLw0KPiA+ICsvKiB7IGRnLWFk ZGl0aW9uYWwtb3B0aW9ucyANCj4gPiArIi0tcGFyYW09cmlzY3YtYXV0b3ZlYy1wcmVmZXJlbmNl PXNjYWxhYmxlIiB9ICovDQo+ID4gKw0KPiA+ICsjaW5jbHVkZSA8YXNzZXJ0Lmg+DQo+ID4gKyNp bmNsdWRlICJuYXJyb3ctMi5jIg0KPiA+ICsNCj4gPiArI2RlZmluZSBSVU4oVFlQRTEsIFRZUEUy LCBTWikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwN Cj4gPiArICBUWVBFMSBhIyNUWVBFMSMjXyMjVFlQRTIjI18jI1NaW1NaXTsgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwNCj4gPiArICBUWVBFMiBkc3QjI1RZUEUxIyNf IyNUWVBFMiMjXyMjU1pbU1pdOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IFwNCj4gPiArICBmb3IgKGludCBpID0gMDsgaSA8IFNaOyBpKyspICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwNCj4gPiArICAgIHsgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFwNCj4gPiArICAgICAgYSMjVFlQRTEjI18jI1RZUEUyIyNfIyNTWltpXSA9IGkgJSA4NzIz OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwNCj4gPiArICAgIH0gICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIFwNCj4gPiArICB2bnNoaWZ0XyMjVFlQRTEjI18jI1RZUEUyIChkc3QjI1RZUEUxIyNf IyNUWVBFMiMjXyMjU1osICAgICAgICAgICAgICAgICAgICAgIFwNCj4gPiArICAgICAgYSMjVFlQ RTEjI18jI1RZUEUyIyNfIyNTWiwgU1opOyAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgZm9y IChpbnQgaSA9IDA7IGkgPCBTWjsgaSsrKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgICB7ICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAg ICAgIGFzc2VydCAoZHN0IyNUWVBFMSMjXyMjVFlQRTIjI18jI1NaW2ldICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgICAgICA9PSAoVFlQRTIpIChhIyNUWVBFMSMj XyMjVFlQRTIjI18jI1NaW2ldID4+IDcpKTsgICAgICAgICAgICAgICAgIFwNCj4gPiArICAgIH0N Cj4gPiArDQo+ID4gKyNkZWZpbmUgUlVOX0FMTChTWikgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgUlVOIChpbnQxNl90 LCBpbnQ4X3QsIFNaKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBcDQo+ID4gKyAgUlVOIChpbnQxNl90LCB1aW50OF90LCBTWikgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgUlVOICh1aW50 MTZfdCwgaW50OF90LCBTWikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBcDQo+ID4gKyAgUlVOICh1aW50MTZfdCwgdWludDhfdCwgU1opICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgUlVOIChp bnQzMl90LCBpbnQxNl90LCBTWikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBcDQo+ID4gKyAgUlVOIChpbnQzMl90LCB1aW50MTZfdCwgU1opICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgUlVO ICh1aW50MzJfdCwgaW50MTZfdCwgU1opICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgUlVOICh1aW50MzJfdCwgdWludDE2X3QsIFNaKSAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAg UlVOIChpbnQ2NF90LCBpbnQzMl90LCBTWikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgUlVOIChpbnQ2NF90LCB1aW50MzJfdCwgU1op ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4g KyAgUlVOICh1aW50NjRfdCwgaW50MzJfdCwgU1opICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgUlVOICh1aW50NjRfdCwgdWludDMyX3Qs IFNaKQ0KPiA+ICsNCj4gPiAraW50DQo+ID4gK21haW4gKCkNCj4gPiArew0KPiA+ICsgIFJVTl9B TEwgKDE1KQ0KPiA+ICsgIFJVTl9BTEwgKDE2KQ0KPiA+ICsgIFJVTl9BTEwgKDE3KQ0KPiA+ICsg IFJVTl9BTEwgKDEyNykNCj4gPiArICBSVU5fQUxMICgxMjgpDQo+ID4gKyAgUlVOX0FMTCAoMTI5 KQ0KPiA+ICsgIFJVTl9BTEwgKDUxMikNCj4gPiArfQ0KPiA+IGRpZmYgLS1naXQgDQo+ID4gYS9n Y2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2F1dG92ZWMvYmlub3AvbmFycm93X3J1 bi0zLmMgDQo+ID4gYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2F1dG92ZWMv Ymlub3AvbmFycm93X3J1bi0zLmMNCj4gPiBuZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiA+IGluZGV4 IDAwMDAwMDAwMDAwLi43NjM4ODUxZTRmYQ0KPiA+IC0tLSAvZGV2L251bGwNCj4gPiArKysgYi9n Y2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2F1dG92ZWMvYmlub3AvbmFycm93X3J1 bi0zLg0KPiA+ICsrKyBjDQo+ID4gQEAgLTAsMCArMSw0NiBAQA0KPiA+ICsvKiB7IGRnLWRvIHJ1 biB7IHRhcmdldCB7IHJpc2N2X3ZlY3RvciB9IH0gfSAqLw0KPiA+ICsvKiB7IGRnLWFkZGl0aW9u YWwtb3B0aW9ucyANCj4gPiArIi0tcGFyYW09cmlzY3YtYXV0b3ZlYy1wcmVmZXJlbmNlPXNjYWxh YmxlIiB9ICovDQo+ID4gKw0KPiA+ICsjaW5jbHVkZSA8YXNzZXJ0Lmg+DQo+ID4gKyNpbmNsdWRl ICJuYXJyb3ctMy5jIg0KPiA+ICsNCj4gPiArI2RlZmluZSBSVU4oVFlQRTEsIFRZUEUyLCBTWikg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwNCj4gPiAr ICBUWVBFMSBhIyNUWVBFMSMjXyMjVFlQRTIjI18jI1NaW1NaXTsgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIFwNCj4gPiArICBUWVBFMiBkc3QjI1RZUEUxIyNfIyNUWVBF MiMjXyMjU1pbU1pdOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwNCj4g PiArICBmb3IgKGludCBpID0gMDsgaSA8IFNaOyBpKyspICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIFwNCj4gPiArICAgIHsgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwN Cj4gPiArICAgICAgYSMjVFlQRTEjI18jI1RZUEUyIyNfIyNTWltpXSA9IGkgJSA4NzIzOyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwNCj4gPiArICAgIH0gICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IFwNCj4gPiArICB2bnNoaWZ0XyMjVFlQRTEjI18jI1RZUEUyIChkc3QjI1RZUEUxIyNfIyNUWVBF MiMjXyMjU1osICAgICAgICAgICAgICAgICAgICAgIFwNCj4gPiArICAgICAgYSMjVFlQRTEjI18j I1RZUEUyIyNfIyNTWiwgOSwgU1opOyAgICAgICAgICAgICAgICBcDQo+ID4gKyAgZm9yIChpbnQg aSA9IDA7IGkgPCBTWjsgaSsrKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBcDQo+ID4gKyAgICB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgICAgIGFz c2VydCAoZHN0IyNUWVBFMSMjXyMjVFlQRTIjI18jI1NaW2ldICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBcDQo+ID4gKyAgICAgICA9PSAoVFlQRTIpIChhIyNUWVBFMSMjXyMjVFlQ RTIjI18jI1NaW2ldID4+IDkpKTsgICAgICAgICAgICAgICAgIFwNCj4gPiArICAgIH0NCj4gPiAr DQo+ID4gKyNkZWZpbmUgUlVOX0FMTChTWikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgUlVOIChpbnQxNl90LCBpbnQ4 X3QsIFNaKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBcDQo+ID4gKyAgUlVOIChpbnQxNl90LCB1aW50OF90LCBTWikgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgUlVOICh1aW50MTZfdCwg aW50OF90LCBTWikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBcDQo+ID4gKyAgUlVOICh1aW50MTZfdCwgdWludDhfdCwgU1opICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgUlVOIChpbnQzMl90 LCBpbnQxNl90LCBTWikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBcDQo+ID4gKyAgUlVOIChpbnQzMl90LCB1aW50MTZfdCwgU1opICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgUlVOICh1aW50 MzJfdCwgaW50MTZfdCwgU1opICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBcDQo+ID4gKyAgUlVOICh1aW50MzJfdCwgdWludDE2X3QsIFNaKSAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgUlVOIChp bnQ2NF90LCBpbnQzMl90LCBTWikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBcDQo+ID4gKyAgUlVOIChpbnQ2NF90LCB1aW50MzJfdCwgU1opICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgUlVO ICh1aW50NjRfdCwgaW50MzJfdCwgU1opICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgUlVOICh1aW50NjRfdCwgdWludDMyX3QsIFNaKQ0K PiA+ICsNCj4gPiAraW50DQo+ID4gK21haW4gKCkNCj4gPiArew0KPiA+ICsgIFJVTl9BTEwgKDE1 KQ0KPiA+ICsgIFJVTl9BTEwgKDE2KQ0KPiA+ICsgIFJVTl9BTEwgKDE3KQ0KPiA+ICsgIFJVTl9B TEwgKDEyNykNCj4gPiArICBSVU5fQUxMICgxMjgpDQo+ID4gKyAgUlVOX0FMTCAoMTI5KQ0KPiA+ ICsgIFJVTl9BTEwgKDUxMikNCj4gPiArfQ0KPiA+IC0tDQo+ID4gMi4zNi4zDQo+ID4NCj4gPg0K Pg0K