From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smarthost1.atos.net (smtppost.atos.net [193.56.114.176]) by sourceware.org (Postfix) with ESMTPS id 208E73857809 for ; Mon, 17 May 2021 09:17:15 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 208E73857809 X-IronPort-AV: E=Sophos;i="5.82,307,1613430000"; d="scan'208,223";a="241035243" X-MGA-submission: =?us-ascii?q?MDF/Rc/sneQkQmBA6ggs8FQQv2weAIVpaVWLIl?= =?us-ascii?q?iDOTsnjGEebTINiI96jHKj88KFGllRlcrACw1Tp3bvoGMZwHmto/foPu?= =?us-ascii?q?Vrj12YC4fzVbYosItqn+bVLka6HABO8b7O4eciyWsubmVhhWeITerj74?= =?us-ascii?q?q8?= Received: from mail.sis.atos.net (HELO GITEXCPRDMB22.ww931.my-it-solutions.net) ([10.89.29.132]) by smarthost1.atos.net with ESMTP/TLS/AES256-GCM-SHA384; 17 May 2021 11:17:09 +0200 Received: from GITEXCPRDMB21.ww931.my-it-solutions.net (10.89.29.131) by GITEXCPRDMB22.ww931.my-it-solutions.net (10.89.29.132) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2176.2; Mon, 17 May 2021 11:17:09 +0200 Received: from EUR03-DB5-obe.outbound.protection.outlook.com (172.16.214.169) by GITEXCPRDMB21.ww931.my-it-solutions.net (10.89.29.131) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2176.2 via Frontend Transport; Mon, 17 May 2021 11:17:08 +0200 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=E3Hm1rOy5JI/ARnQN860WXiPMlRAjuRhatIVRE0OtmYIvHum9zAMro1JRDz81BgI3PA+6GEj5hCSYJBw4IjN5wi0R8qF+Rbq+UnYXQONRZ6deXzxPBiFDtVXEPARJf/5jPR8kYMkDj17lz8mHSEif30IXVTSPQUf5S1xoZ7QzI/Y/iBcrSQEoYqd45sxzxamMEY+6ncIFnAf5Nlk0Nn+PMX/Ak8XdqXxDjq9tJMM7EHotP2gh9gWYRAPern9BZreW8rYGYh/q9UyewgPxBvIq9sVvjmm2F6psompjVU8go9YCK1DC4XTtd8mVz93kqjp9udlWjNbAFAbIajvBZt6qg== 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-SenderADCheck; bh=8HfE+22tWFd2c1nP8Hd7PR7EeTUJQcoktvNg74t4HTM=; b=aTQTTPG5sf6+XnoVSUCz8ZypV8BLqrjAlvgtMT5W5nwGfWMJtvbazKCsRi2TeryQS5nhVQBLhb3N92h5GJOjazCBqLAB3auP8QvDkJfYjHlV4jOq86lJeW3djt5jCEjNHJzqkAFQ2VqFX1Erk7QSdok2Hhq4ycT45If6ISVlsikZdHFiKEuYgUVpLMr9/PqK3TJsHTxdetbA3+ZofZ8Z4/tlAB+lATDLQ9DxcA+jIxrXxLgQZlDyfRSoMYNb+7poI+HA1F6VkuALm/G0uRRWcSmEA2diG5epg9IsIkn/Ud3VVvu8aidaeCFm+FZTsgCWZIazTIhVXwYJY/HVMk1a9Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=atos.net; dmarc=pass action=none header.from=atos.net; dkim=pass header.d=atos.net; arc=none Received: from PA4PR02MB6686.eurprd02.prod.outlook.com (2603:10a6:102:ff::14) by PA4PR02MB6512.eurprd02.prod.outlook.com (2603:10a6:102:f5::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4129.25; Mon, 17 May 2021 09:17:07 +0000 Received: from PA4PR02MB6686.eurprd02.prod.outlook.com ([fe80::14fe:9b97:49c1:895d]) by PA4PR02MB6686.eurprd02.prod.outlook.com ([fe80::14fe:9b97:49c1:895d%7]) with mapi id 15.20.4129.031; Mon, 17 May 2021 09:17:07 +0000 From: "CHIGOT, CLEMENT" To: libstdc++ CC: Jonathan Wakely , David Edelsohn , Rainer Orth Subject: Re: [PATCH] libstdc++: implement locale support for AIX Thread-Topic: [PATCH] libstdc++: implement locale support for AIX Thread-Index: AQHW5/cse5cUzOlFpUGzG3vP4ZkwbKoiheqAgAAI90CAAAGAAIAAAJC4gABu9YCAARiZb4AABceAgAAHyTOAAB5/x4AAALUAgAAlmBiAAQvegIAAApjfgAAHBSmAAAEXtYAAA1Z+gAyHwmCAAErKJoABGGUwgAAdWFOAAAagAIAAB0GOgAADaO+AB+TWnYAAHarZgAADjDKAAURpDoCQbGWj Date: Mon, 17 May 2021 09:17:07 +0000 Message-ID: References: <20210122112910.GI541588@redhat.com> , , , In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: yes X-MS-TNEF-Correlator: msip_labels: MSIP_Label_e463cba9-5f6c-478d-9329-7b2295e4e8ed_Enabled=True; MSIP_Label_e463cba9-5f6c-478d-9329-7b2295e4e8ed_SiteId=33440fc6-b7c7-412c-bb73-0e70b0198d5a; MSIP_Label_e463cba9-5f6c-478d-9329-7b2295e4e8ed_SetDate=2021-05-17T09:17:06.988Z; MSIP_Label_e463cba9-5f6c-478d-9329-7b2295e4e8ed_Name=Atos For Internal Use - All Employees; MSIP_Label_e463cba9-5f6c-478d-9329-7b2295e4e8ed_ContentBits=0; MSIP_Label_e463cba9-5f6c-478d-9329-7b2295e4e8ed_Method=Standard; x-originating-ip: [165.225.21.39] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 8954f86e-4ae5-44c5-a23e-08d919148b61 x-ms-traffictypediagnostic: PA4PR02MB6512: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:1728; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: VheK+d2iCHKT2gs7NWrL9rcs3CvhLE1MZHQQB5OVZUIQuhmhKo5115Y9J/y7KVjPaBUgxAMpIRUl9w1Km0q44CJ+hZdcRoj2WMqqPSjg42XTbYNc4+bQ78IDLmWeW5KjNy4klVQX+s0vuL5Jfyr5hAx33Ef7GTAC6CAk1uI3XRubL0jOgCeJb5yqKpVvXj5UOy6WAYCrOefUVwNspTV0nMAnv6duyCYsiUvu0eHKBeJ1FSTfh6sLV4KiPuNvrZ82ZsFXulTHSZw08PXSK8p/D+74Je1rmFEjNUYtFjlh42fMG5zUn2+9wxoiafP1rT6SuOABNn3ANEhIvcdl4ECh9ujXyNIbg2Bz5gUrRCZXI9ijkPfqlq+BvN/sxSTBMGuCMa/ZsD1M8X1KzabWeas9VPbq87rnHDZn1NAQcyIo0srGMvS84GEh6nALmy6YZEK2GEzg8UzWWwvrQThyqYDmyVf/XZ3rEuACo82A/1DgjGnHgM7mj1Da0Ylk2BQjsG7QmnNTLHcYSWXsIupP59IlNn40Qou5Qa+kD6BTsvmKQqwKIT1DnODFfRE9d9XGpJRaFeK4+gcyVEseBHKi7fqvSFk0GmLOjxWhZMlWMvkVB6A= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:PA4PR02MB6686.eurprd02.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(136003)(346002)(39860400002)(376002)(396003)(366004)(4326008)(54906003)(9686003)(55016002)(66556008)(122000001)(99936003)(66476007)(66446008)(66946007)(64756008)(558084003)(91956017)(33656002)(76116006)(8936002)(38100700002)(6506007)(26005)(66616009)(7696005)(8676002)(478600001)(5660300002)(52536014)(186003)(2906002)(316002)(86362001)(71200400001)(55236004); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?GbRydtLPr2F9YTGhxehBfia7bMradbwUEzitVBT8XZc/Wu0B3skoLhFAGe?= =?iso-8859-1?Q?TChjnR60ieiX692iKJba8FowAvROv7Z2mYL0IbzVgop+5r9LgLPCZ8k5Vs?= =?iso-8859-1?Q?EDyFwWvhRsCBUCKGDMO2zuUFIG/unwhY6igaCt5zSvUfwfPGhPtoRq8QN2?= =?iso-8859-1?Q?aQUn294iRQdNEBVTIW9Qq4Py+kBDVwa2SOdD37t62plDq9NcAhovpwOEhX?= =?iso-8859-1?Q?lcPj3CB+WRn5JUF8SVuXBoe8p2eoRbi0E79Y8Ke127HxcVfsVCI9kxnzIY?= =?iso-8859-1?Q?/SCw+sJOBGfw3f18ommVFub9u4H9bSAHAM9g6XjE4XrjlhBydOdvLayMBV?= =?iso-8859-1?Q?9MEEf+k6AGJysarpt0TF/JTBfTsIvOPVO2/sK3SM9IG0o4X92j8MTe7iAr?= =?iso-8859-1?Q?3H7DszV4Y2RBG8NBPyJfi/fsxA8K7dqfzvNs9t8kTYi9VDz0UwwtdGQSbP?= =?iso-8859-1?Q?i3k5wa2DbqRbw9rkVgeuB69BzZ4EzP2XPPBLPUbvGJnouA00cA1S68ALld?= =?iso-8859-1?Q?wyPZb8Qn+LwMbhs8ZOgqcDkak1IgvqFSbrnnmdlx21V3tq+SVVi0CFf9Uk?= =?iso-8859-1?Q?au597WCmMjP2/wJ80V+xk+k6PiSWeIIWdlsTeYQTFlEY/Cw2mNWNxoWUTj?= =?iso-8859-1?Q?53Q2ZqIREUIFPlXuz/nvaBxmkj+L2jJRePQE6bne6rO+4mncruKdNAT6VJ?= =?iso-8859-1?Q?TGW7ghIy375KymFeyNaQPB4bAsL7eG2tlZzRz7M1oS7pbQEsvcHdJH2aug?= =?iso-8859-1?Q?gxv0LqKEliISSeFHUwz5ps8bhTP80yorMMpDotEwAOtD/N3GayY+Le2cUR?= =?iso-8859-1?Q?A0PJmY1tZYXM1J5qa5mOluK3wc6ObvXoFDHz9kVOUEGtQ7RKayxgHH4YRB?= =?iso-8859-1?Q?BIdcC2kDbOYfXfcXAr53iBocsXzMU35ZyS9yZD5gfKBv/q46lI+c4iKN33?= =?iso-8859-1?Q?4NWG4uhy1R+ZJkxr1t7UXmFWijipFmit3FHShYm0Zl/5Dos/w+VCZfPsWm?= =?iso-8859-1?Q?/t37rnOgdytFTg+YIrv1zzcalv8GAJ34gIMEWhgrqlxMOcVlJE6qB6PR2Q?= =?iso-8859-1?Q?kxHzDBPIykvxp1tUdDWRnrGu3L4NgbJwTXmxm0a1znTmc2PdpTzfZcZsl8?= =?iso-8859-1?Q?PD11XtIzEG6Hroj2csBvo05dPNFihx3YRT9YXANJj62f7z0ktcX46CAnKF?= =?iso-8859-1?Q?ngAGF5rPmzCJRVM0mGNpBGjqyRZk5tkBs0BQ3GYU4cndyB8Ps1BuVU3qNy?= =?iso-8859-1?Q?IRwtDS6vbH3dxgq8DFaJk74ogRrdebaQZ3SlgPKViXionE3V9gcOhA0hV0?= =?iso-8859-1?Q?0D2Lzb8YEjolNryOdJU8HpWT4gSYyrqsbQoiQTOt9E+/0KI=3D?= x-ms-exchange-transport-forked: True Content-Type: multipart/mixed; boundary="_002_PA4PR02MB66864CD06A19711FB664A47FEA5E9PA4PR02MB6686eurp_" MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: PA4PR02MB6686.eurprd02.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8954f86e-4ae5-44c5-a23e-08d919148b61 X-MS-Exchange-CrossTenant-originalarrivaltime: 17 May 2021 09:17:07.6584 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 33440fc6-b7c7-412c-bb73-0e70b0198d5a X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: xsg+2a4NBF4IoUQszPhvvFzIEZaDVyxbBqE6J3y7HYM2+iqy6vsCjxP64hnewwcDsyIF5c02kNNc4MXi7lq+NA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR02MB6512 X-OriginatorOrg: atos.net X-Spam-Status: No, score=-1.8 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL, SPF_HELO_PASS, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: libstdc++@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Libstdc++ mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 May 2021 09:17:18 -0000 --_002_PA4PR02MB66864CD06A19711FB664A47FEA5E9PA4PR02MB6686eurp_ Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Hi everyone,=A0=0A= =0A= Now that GCC11 is out, I've rebased my patch and improve a bit =0A= the ctype_configure_char.cc for AIX. =A0=0A= If some people can take a look other OSes especially BSD-like one,=A0=0A= it would help me to know if everything is good.=A0=0A= =0A= Thanks, =0A= Cl=E9ment= --_002_PA4PR02MB66864CD06A19711FB664A47FEA5E9PA4PR02MB6686eurp_ Content-Type: application/octet-stream; name="0001-libstdc-implement-locale-support-for-XPG7.patch" Content-Description: 0001-libstdc-implement-locale-support-for-XPG7.patch Content-Disposition: attachment; filename="0001-libstdc-implement-locale-support-for-XPG7.patch"; size=50220; creation-date="Mon, 17 May 2021 09:14:37 GMT"; modification-date="Mon, 17 May 2021 09:14:37 GMT" Content-Transfer-Encoding: base64 RnJvbSBmNzkxMTk2MmVmZmE3ZWNkMDljY2I4ZmQxYTQ2ZDk3ZTI3MzM2MDkzIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/Q2w9QzM9QTltZW50PTIwQ2hpZ290Pz0gPGNs ZW1lbnQuY2hpZ290QGF0b3MubmV0PgpEYXRlOiBUdWUsIDI5IERlYyAyMDIwIDExOjA4OjMzICsw MTAwClN1YmplY3Q6IFtQQVRDSF0gbGlic3RkYysrOiBpbXBsZW1lbnQgbG9jYWxlIHN1cHBvcnQg Zm9yIFhQRzcKTUlNRS1WZXJzaW9uOiAxLjAKQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFy c2V0PVVURi04CkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXQKCkNyZWF0ZSBhIG5ldyBs b2NhbGUgbW9kZWwgZm9yIFBPU0lYIG9wZXJhdGluZyBzeXN0ZW1zLgpUaGUgaW1wbGVtZW50YXRp b24gaXMgYmFzZWQgb24gZHJhZ29uZmx5IG9uZS4KClRoZXJlIGFyZSBmZXcga25vd24gbGltaXRh dGlvbnMuCnN0ZDo6bWVzc2FnZXMgaXNuJ3QgaW1wbGVtZW50ZWQuCkNyZWF0aW9uIHN0ZDo6bG9j YWxlIHdpdGggYSBzdHJpbmcgZGVzY3JpYmluZyBlYWNoIExDXyogY2F0ZWdvcnkKaXNuJ3QgcG9z c2libGUgKGVnIHN0ZDo6bG9jYWxlKCJMQ19DVFlQRT1lbl9VUy5VVEYtODtMQ19OVU1FUklDPUM7 Li4uIikKCmxpYnN0ZGMrKy12My9DaGFuZ2VMb2c6CjIwMjAtMDEtMjUgIENsw6ltZW50IENoaWdv dCAgPGNsZW1lbnQuY2hpZ290QGF0b3MubmV0PgoKCSogYWNpbmNsdWRlLm00OiBBZGQgWFBHNyBt b2RlbC4KCSogY29uZmlnLmguaW46IFJlZ2VuZXJhdGUuCgkqIGNvbmZpZ3VyZTogUmVnZW5lcmF0 ZS4KCSogY29uZmlnL2xvY2FsZS9kcmFnb25mbHkvY19sb2NhbGUuY2M6IFJlbmFtZSB0byAuLi4K CSogY29uZmlnL2xvY2FsZS94cGc3L2NfbG9jYWxlLmNjOiAuLi4gaGVyZS4KCSogY29uZmlnL2xv Y2FsZS9kcmFnb25mbHkvY19sb2NhbGUuaDogUmVuYW1lIHRvIC4uLgoJKiBjb25maWcvbG9jYWxl L3hwZzcvY19sb2NhbGUuaDogLi4uIGhlcmUuCgkoX0dMSUJDWFhfQ19MT0NBTEVfWFBHNyk6IE5l dyBkZWZpbmUuCgkoc3RydG9mX2wpOiBOZXcgZnVuY3Rpb24gaWYgbm90IHByb3ZpZGVkIGJ5IHRo ZSBzeXN0ZW0uCgkoc3RydG9kX2wpOiBMaWtld2lzZS4KCShzdHJ0b2xkX2wpOiBMaWtld2lzZS4K CSogY29uZmlnL2xvY2FsZS9kcmFnb25mbHkvY3R5cGVfbWVtYmVycy5jYzogUmVuYW1lIHRvIC4u LgoJKiBjb25maWcvbG9jYWxlL3hwZzcvY3R5cGVfbWVtYmVycy5jYzogLi4uIGhlcmUuCgkqIGNv bmZpZy9sb2NhbGUvZHJhZ29uZmx5L21vbmV0YXJ5X21lbWJlcnMuY2M6IFJlbmFtZSB0byAuLi4K CSogY29uZmlnL2xvY2FsZS94cGc3L21vbmV0YXJ5X21lbWJlcnMuY2M6IC4uLiBoZXJlLgoJKiBj b25maWcvbG9jYWxlL2RyYWdvbmZseS9udW1lcmljX21lbWJlcnMuY2M6IFJlbmFtZSB0byAuLi4K CSogY29uZmlnL2xvY2FsZS94cGc3L251bWVyaWNfbWVtYmVycy5jYzogLi4uIGhlcmUuCgkqIGNv bmZpZy9sb2NhbGUvZHJhZ29uZmx5L3RpbWVfbWVtYmVycy5jYzogUmVuYW1lIHRvIC4uLgoJKiBj b25maWcvbG9jYWxlL3hwZzcvdGltZV9tZW1iZXJzLmNjOiAuLi4gaGVyZS4KCSogY29uZmlnL29z L2FpeC9jdHlwZV9jb25maWd1cmVfY2hhci5jYyAoY3R5cGU8Y2hhcj46OmN0eXBlKToKCUFkZCBz dXBwb3J0IGZvciBYUEc3IG1vZGVsLgoJKiBjb25maWcvb3MvZ251LWxpbnV4L2N0eXBlX2NvbmZp Z3VyZV9jaGFyLmNjOiBMaWtld2lzZS4KCSogc3JjL2MrKzk4L2xvY2FsZV9pbml0LmNjIChsb2Nh bGU6Omdsb2JhbCk6IENhbGwgc2V0bG9jYWxlCglmb3IgZWFjaCBjYXRlZ29yeSBpbnN0ZWFkIG9m IG9uY2Ugd2hlbiBub3QgdXNpbmcgZ251IG1vZGVsLgoJKiB0ZXN0c3VpdGUvMjJfbG9jYWxlL2Nv ZGVjdnQvaW4vd2NoYXJfdC8yLmNjOiBBZGQgeGZhaWwgZm9yCgl3Y2hhcl90IG9uIDE2Yml0LgoJ KiB0ZXN0c3VpdGUvMjJfbG9jYWxlL2NvZGVjdnQvaW4vd2NoYXJfdC8zLmNjOiBMaWtld2lzZS4K CSogdGVzdHN1aXRlLzIyX2xvY2FsZS9jb2RlY3Z0L2luL3djaGFyX3QvNC5jYzogTGlrZXdpc2Uu CgkqIHRlc3RzdWl0ZS8yMl9sb2NhbGUvY29kZWN2dC9pbi93Y2hhcl90LzcuY2M6IExpa2V3aXNl LgoJKiB0ZXN0c3VpdGUvMjJfbG9jYWxlL2NvZGVjdnQvaW4vd2NoYXJfdC84LmNjOiBMaWtld2lz ZS4KCSogdGVzdHN1aXRlLzIyX2xvY2FsZS9jb2RlY3Z0L2luL3djaGFyX3QvOS5jYzogTGlrZXdp c2UuCgkqIHRlc3RzdWl0ZS8yMl9sb2NhbGUvY29kZWN2dC9sZW5ndGgvd2NoYXJfdC80LmNjOiBM aWtld2lzZS4KCSogdGVzdHN1aXRlLzIyX2xvY2FsZS9jb2RlY3Z0L291dC93Y2hhcl90LzQuY2M6 IExpa2V3aXNlLgoJKiB0ZXN0c3VpdGUvMjJfbG9jYWxlL2NvZGVjdnQvdW5zaGlmdC93Y2hhcl90 LzQuY2M6IExpa2V3aXNlLgoJKiB0ZXN0c3VpdGUvMjdfaW8vYmFzaWNfZmlsZWJ1Zi9vdmVyZmxv dy93Y2hhcl90LzExMzA1LTEuY2M6CglMaWtld2lzZS4KCSogdGVzdHN1aXRlLzI3X2lvL2Jhc2lj X2ZpbGVidWYvb3ZlcmZsb3cvd2NoYXJfdC8xMTMwNS0yLmNjOgoJTGlrZXdpc2UuCgkqIHRlc3Rz dWl0ZS8yN19pby9iYXNpY19maWxlYnVmL292ZXJmbG93L3djaGFyX3QvMTEzMDUtMy5jYzoKCUxp a2V3aXNlLgoJKiB0ZXN0c3VpdGUvMjdfaW8vYmFzaWNfZmlsZWJ1Zi9vdmVyZmxvdy93Y2hhcl90 LzExMzA1LTQuY2M6CglMaWtld2lzZS4KCSogdGVzdHN1aXRlLzIyX2xvY2FsZS9jdHlwZS9pcy93 Y2hhcl90LzIuY2M6IFJlbW92ZSB4ZmFpbAoJd2l0aCB4cGc3IG1vZGVsLgoJKiB0ZXN0c3VpdGUv MjJfbG9jYWxlL2xvY2FsZS9jb25zLzI5MjE3LmNjOiBBZGQgc2tpcCB3aGVuIG5vdAoJdXNpbmcg Z251IG1vZGVsLgoJKiB0ZXN0c3VpdGUvMjJfbG9jYWxlL2xvY2FsZS9jb25zLzM4MzY4LmNjOiBM aWtld2lzZS4KCSogdGVzdHN1aXRlLzIyX2xvY2FsZS9sb2NhbGUvY29ucy80MDE4NC5jYzogTGlr ZXdpc2UuCgkqIHRlc3RzdWl0ZS8yMl9sb2NhbGUvbG9jYWxlL2NvbnMvNS5jYzogTGlrZXdpc2Uu CgkqIHRlc3RzdWl0ZS8yMl9sb2NhbGUvbG9jYWxlL2dsb2JhbF9sb2NhbGVfb2JqZWN0cy8xNDA3 MS5jYzoKCUxpa2V3aXNlLgoJKiB0ZXN0c3VpdGUvMjJfbG9jYWxlL21lc3NhZ2VzLzEzNjMxLmNj OiBMaWtld2lzZS4KCSogdGVzdHN1aXRlLzIyX2xvY2FsZS9tZXNzYWdlcy9tZW1iZXJzL2NoYXIv MS5jYzogTGlrZXdpc2UuCgkqIHRlc3RzdWl0ZS8yMl9sb2NhbGUvbWVzc2FnZXMvbWVtYmVycy9j aGFyLzIuY2M6IExpa2V3aXNlLgoJKiB0ZXN0c3VpdGUvMjJfbG9jYWxlL21lc3NhZ2VzL21lbWJl cnMvY2hhci8zLmNjOiBMaWtld2lzZS4KCSogdGVzdHN1aXRlLzIyX2xvY2FsZS9tZXNzYWdlcy9t ZW1iZXJzL2NoYXIvd3JhcHBlZF9lbnYuY2M6CglMaWtld2lzZS4KCSogdGVzdHN1aXRlLzIyX2xv Y2FsZS9tZXNzYWdlcy9tZW1iZXJzL2NoYXIvd3JhcHBlZF9sb2NhbGUuY2M6CglMaWtld2lzZS4K CSogdGVzdHN1aXRlLzIyX2xvY2FsZS9tZXNzYWdlc19ieW5hbWUvbmFtZWRfZXF1aXZhbGVuY2Uu Y2M6CglMaWtld2lzZS4KCSogdGVzdHN1aXRlL2xpYi9kZy1vcHRpb25zLmV4cCAoZGctcmVxdWly ZS1sb2NhbGVtb2RlbCk6IE5ldy4KCSogdGVzdHN1aXRlL2xpYi9saWJzdGRjKysuZXhwIChjaGVj a192M190YXJnZXRfbmFtZWRsb2NhbGUpOiBBZGQKCUFJWCBzdXBwb3J0LgoJKGNoZWNrX3YzX3Rh cmdldF9sb2NhbGVtb2RlbCk6IE5ldy4KCSogdGVzdHN1aXRlL3V0aWwvdGVzdHN1aXRlX2hvb2tz LmggKElTT184ODU5KTogQWRkIEFJWCBzdXBwb3J0LgotLS0KIGxpYnN0ZGMrKy12My9hY2luY2x1 ZGUubTQgICAgICAgICAgICAgICAgICAgICB8IDQ3ICsrKysrKystLS0tLS0KIGxpYnN0ZGMrKy12 My9jb25maWcuaC5pbiAgICAgICAgICAgICAgICAgICAgICB8IDE1ICsrKysKIC4uLi9sb2NhbGUv e2RyYWdvbmZseSA9PiB4cGc3fS9jX2xvY2FsZS5jYyAgICB8ICA2ICstCiAuLi4vbG9jYWxlL3tk cmFnb25mbHkgPT4geHBnN30vY19sb2NhbGUuaCAgICAgfCA0NiArKysrKysrKysrKystCiAuLi4v e2RyYWdvbmZseSA9PiB4cGc3fS9jb2RlY3Z0X21lbWJlcnMuY2MgICAgfCAgMiArLQogLi4uL3tk cmFnb25mbHkgPT4geHBnN30vY29sbGF0ZV9tZW1iZXJzLmNjICAgIHwgIDIgKy0KIC4uLi97ZHJh Z29uZmx5ID0+IHhwZzd9L2N0eXBlX21lbWJlcnMuY2MgICAgICB8IDY5ICsrKysrKysrKysrKysr KysrLS0KIC4uLi97ZHJhZ29uZmx5ID0+IHhwZzd9L21vbmV0YXJ5X21lbWJlcnMuY2MgICB8IDQ1 ICsrKysrKysrKysrLQogLi4uL3tkcmFnb25mbHkgPT4geHBnN30vbnVtZXJpY19tZW1iZXJzLmNj ICAgIHwgMjggKysrKysrKy0KIC4uLi97ZHJhZ29uZmx5ID0+IHhwZzd9L3RpbWVfbWVtYmVycy5j YyAgICAgICB8IDM0ICsrKysrKysrLQogLi4uL2xvY2FsZS97ZHJhZ29uZmx5ID0+IHhwZzd9L3Rp bWVfbWVtYmVycy5oIHwgIDIgKy0KIC4uLi9jb25maWcvb3MvYWl4L2N0eXBlX2NvbmZpZ3VyZV9j aGFyLmNjICAgICB8IDM4ICsrKysrLS0tLS0KIC4uLi9vcy9nbnUtbGludXgvY3R5cGVfY29uZmln dXJlX2NoYXIuY2MgICAgICB8ICA2ICstCiBsaWJzdGRjKystdjMvc3JjL2MrKzk4L2xvY2FsZV9p bml0LmNjICAgICAgICAgfCAxMiArKysrCiAuLi4vMjJfbG9jYWxlL2NvZGVjdnQvaW4vd2NoYXJf dC8yLmNjICAgICAgICAgfCAgMSArCiAuLi4vMjJfbG9jYWxlL2NvZGVjdnQvaW4vd2NoYXJfdC8z LmNjICAgICAgICAgfCAgMSArCiAuLi4vMjJfbG9jYWxlL2NvZGVjdnQvaW4vd2NoYXJfdC80LmNj ICAgICAgICAgfCAgMSArCiAuLi4vMjJfbG9jYWxlL2NvZGVjdnQvaW4vd2NoYXJfdC83LmNjICAg ICAgICAgfCAgMSArCiAuLi4vMjJfbG9jYWxlL2NvZGVjdnQvaW4vd2NoYXJfdC84LmNjICAgICAg ICAgfCAgMSArCiAuLi4vMjJfbG9jYWxlL2NvZGVjdnQvaW4vd2NoYXJfdC85LmNjICAgICAgICAg fCAgMSArCiAuLi4vMjJfbG9jYWxlL2NvZGVjdnQvbGVuZ3RoL3djaGFyX3QvNC5jYyAgICAgfCAg MSArCiAuLi4vMjJfbG9jYWxlL2NvZGVjdnQvb3V0L3djaGFyX3QvNC5jYyAgICAgICAgfCAgMSAr CiAuLi4vMjJfbG9jYWxlL2NvZGVjdnQvdW5zaGlmdC93Y2hhcl90LzQuY2MgICAgfCAgMSArCiAu Li4vdGVzdHN1aXRlLzIyX2xvY2FsZS9jdHlwZS9pcy93Y2hhcl90LzIuY2MgfCAgMiArLQogLi4u L3Rlc3RzdWl0ZS8yMl9sb2NhbGUvbG9jYWxlL2NvbnMvMjkyMTcuY2MgIHwgIDEgKwogLi4uL3Rl c3RzdWl0ZS8yMl9sb2NhbGUvbG9jYWxlL2NvbnMvMzgzNjguY2MgIHwgIDEgKwogLi4uL3Rlc3Rz dWl0ZS8yMl9sb2NhbGUvbG9jYWxlL2NvbnMvNDAxODQuY2MgIHwgIDEgKwogLi4uL3Rlc3RzdWl0 ZS8yMl9sb2NhbGUvbG9jYWxlL2NvbnMvNS5jYyAgICAgIHwgIDEgKwogLi4uL2xvY2FsZS9nbG9i YWxfbG9jYWxlX29iamVjdHMvMTQwNzEuY2MgICAgIHwgIDEgKwogLi4uL3Rlc3RzdWl0ZS8yMl9s b2NhbGUvbWVzc2FnZXMvMTM2MzEuY2MgICAgIHwgIDEgKwogLi4uLzIyX2xvY2FsZS9tZXNzYWdl cy9tZW1iZXJzL2NoYXIvMS5jYyAgICAgIHwgIDEgKwogLi4uLzIyX2xvY2FsZS9tZXNzYWdlcy9t ZW1iZXJzL2NoYXIvMi5jYyAgICAgIHwgIDEgKwogLi4uLzIyX2xvY2FsZS9tZXNzYWdlcy9tZW1i ZXJzL2NoYXIvMy5jYyAgICAgIHwgIDEgKwogLi4uL21lc3NhZ2VzL21lbWJlcnMvY2hhci93cmFw cGVkX2Vudi5jYyAgICAgIHwgIDEgKwogLi4uL21lc3NhZ2VzL21lbWJlcnMvY2hhci93cmFwcGVk X2xvY2FsZS5jYyAgIHwgIDEgKwogLi4uL21lc3NhZ2VzX2J5bmFtZS9uYW1lZF9lcXVpdmFsZW5j ZS5jYyAgICAgIHwgIDEgKwogLi4uL2Jhc2ljX2ZpbGVidWYvb3ZlcmZsb3cvd2NoYXJfdC8xMTMw NS0xLmNjIHwgIDEgKwogLi4uL2Jhc2ljX2ZpbGVidWYvb3ZlcmZsb3cvd2NoYXJfdC8xMTMwNS0y LmNjIHwgIDEgKwogLi4uL2Jhc2ljX2ZpbGVidWYvb3ZlcmZsb3cvd2NoYXJfdC8xMTMwNS0zLmNj IHwgIDEgKwogLi4uL2Jhc2ljX2ZpbGVidWYvb3ZlcmZsb3cvd2NoYXJfdC8xMTMwNS00LmNjIHwg IDEgKwogbGlic3RkYysrLXYzL3Rlc3RzdWl0ZS9saWIvZGctb3B0aW9ucy5leHAgICAgIHwgIDkg KysrCiBsaWJzdGRjKystdjMvdGVzdHN1aXRlL2xpYi9saWJzdGRjKysuZXhwICAgICAgfCAzMSAr KysrKysrKysKIGxpYnN0ZGMrKy12My90ZXN0c3VpdGUvdXRpbC90ZXN0c3VpdGVfaG9va3MuaCB8 ICAzICsKIDQzIGZpbGVzIGNoYW5nZWQsIDM2MiBpbnNlcnRpb25zKCspLCA2MCBkZWxldGlvbnMo LSkKIHJlbmFtZSBsaWJzdGRjKystdjMvY29uZmlnL2xvY2FsZS97ZHJhZ29uZmx5ID0+IHhwZzd9 L2NfbG9jYWxlLmNjICg5NyUpCiByZW5hbWUgbGlic3RkYysrLXYzL2NvbmZpZy9sb2NhbGUve2Ry YWdvbmZseSA9PiB4cGc3fS9jX2xvY2FsZS5oICg2OSUpCiByZW5hbWUgbGlic3RkYysrLXYzL2Nv bmZpZy9sb2NhbGUve2RyYWdvbmZseSA9PiB4cGc3fS9jb2RlY3Z0X21lbWJlcnMuY2MgKDk5JSkK IHJlbmFtZSBsaWJzdGRjKystdjMvY29uZmlnL2xvY2FsZS97ZHJhZ29uZmx5ID0+IHhwZzd9L2Nv bGxhdGVfbWVtYmVycy5jYyAoOTclKQogcmVuYW1lIGxpYnN0ZGMrKy12My9jb25maWcvbG9jYWxl L3tkcmFnb25mbHkgPT4geHBnN30vY3R5cGVfbWVtYmVycy5jYyAoNzglKQogcmVuYW1lIGxpYnN0 ZGMrKy12My9jb25maWcvbG9jYWxlL3tkcmFnb25mbHkgPT4geHBnN30vbW9uZXRhcnlfbWVtYmVy cy5jYyAoOTUlKQogcmVuYW1lIGxpYnN0ZGMrKy12My9jb25maWcvbG9jYWxlL3tkcmFnb25mbHkg PT4geHBnN30vbnVtZXJpY19tZW1iZXJzLmNjICg5MCUpCiByZW5hbWUgbGlic3RkYysrLXYzL2Nv bmZpZy9sb2NhbGUve2RyYWdvbmZseSA9PiB4cGc3fS90aW1lX21lbWJlcnMuY2MgKDkyJSkKIHJl bmFtZSBsaWJzdGRjKystdjMvY29uZmlnL2xvY2FsZS97ZHJhZ29uZmx5ID0+IHhwZzd9L3RpbWVf bWVtYmVycy5oICg5NyUpCgpkaWZmIC0tZ2l0IGEvbGlic3RkYysrLXYzL2FjaW5jbHVkZS5tNCBi L2xpYnN0ZGMrKy12My9hY2luY2x1ZGUubTQKaW5kZXggMWMwYTRjMTMwNTIuLmJiMTY1ZDE4ZjAw IDEwMDY0NAotLS0gYS9saWJzdGRjKystdjMvYWNpbmNsdWRlLm00CisrKyBiL2xpYnN0ZGMrKy12 My9hY2luY2x1ZGUubTQKQEAgLTI0MjEsNyArMjQyMSw3IEBAIGRubAogQUNfREVGVU4oW0dMSUJD WFhfRU5BQkxFX0NMT0NBTEVdLCBbCiAgIEdMSUJDWFhfRU5BQkxFKGNsb2NhbGUsYXV0byxbW1s9 TU9ERUxdXV0sCiAgICAgW3VzZSBNT0RFTCBmb3IgdGFyZ2V0IGxvY2FsZSBwYWNrYWdlXSwKLSAg ICBbcGVybWl0IGdlbmVyaWN8Z251fGllZWVfMTAwMy4xLTIwMDF8bmV3bGlifHllc3xub3xhdXRv XSkKKyAgICBbcGVybWl0IGdlbmVyaWN8Z251fGllZWVfMTAwMy4xLTIwMDF8bmV3bGlifHhwZzd8 eWVzfG5vfGF1dG9dKQogCiAgICMgRGVhbCB3aXRoIGdldHRleHQgaXNzdWVzLiAgRGVmYXVsdCB0 byBub3QgdXNpbmcgaXQgKD1ubykgdW50aWwgd2UgZGV0ZWN0CiAgICMgc3VwcG9ydCBmb3IgaXQg bGF0ZXIuICBMZXQgdGhlIHVzZXIgdHVybiBpdCBvZmYgdmlhIC0tZS9kLCBidXQgbGV0IHRoYXQK QEAgLTI0NDgsOCArMjQ0OCw4IEBAIEFDX0RFRlVOKFtHTElCQ1hYX0VOQUJMRV9DTE9DQUxFXSwg WwogICAgICAgZGFyd2luKikKIAllbmFibGVfY2xvY2FsZV9mbGFnPWRhcndpbgogCTs7Ci0gICAg ICBkcmFnb25mbHkqIHwgZnJlZWJzZCopCi0JZW5hYmxlX2Nsb2NhbGVfZmxhZz1kcmFnb25mbHkK KyAgICAgIGFpeCogfCBkcmFnb25mbHkqIHwgZnJlZWJzZCopCisJZW5hYmxlX2Nsb2NhbGVfZmxh Zz14cGc3CiAJOzsKICAgICAgIG9wZW5ic2QqKQogCWVuYWJsZV9jbG9jYWxlX2ZsYWc9bmV3bGli CkBAIC0yNTQzLDIzICsyNTQzLDYgQEAgQUNfREVGVU4oW0dMSUJDWFhfRU5BQkxFX0NMT0NBTEVd LCBbCiAgICAgICBDTE9DQUxFX0lOVEVSTkFMX0g9Y29uZmlnL2xvY2FsZS9nZW5lcmljL2MrK2xv Y2FsZV9pbnRlcm5hbC5oCiAgICAgICA7OwogCi0gICAgZHJhZ29uZmx5KQotICAgICAgQUNfTVNH X1JFU1VMVChkcmFnb25mbHkgb3IgZnJlZWJzZCkKLQotICAgICAgQ0xPQ0FMRV9IPWNvbmZpZy9s b2NhbGUvZHJhZ29uZmx5L2NfbG9jYWxlLmgKLSAgICAgIENMT0NBTEVfQ0M9Y29uZmlnL2xvY2Fs ZS9kcmFnb25mbHkvY19sb2NhbGUuY2MKLSAgICAgIENDT0RFQ1ZUX0NDPWNvbmZpZy9sb2NhbGUv ZHJhZ29uZmx5L2NvZGVjdnRfbWVtYmVycy5jYwotICAgICAgQ0NPTExBVEVfQ0M9Y29uZmlnL2xv Y2FsZS9kcmFnb25mbHkvY29sbGF0ZV9tZW1iZXJzLmNjCi0gICAgICBDQ1RZUEVfQ0M9Y29uZmln L2xvY2FsZS9kcmFnb25mbHkvY3R5cGVfbWVtYmVycy5jYwotICAgICAgQ01FU1NBR0VTX0g9Y29u ZmlnL2xvY2FsZS9nZW5lcmljL21lc3NhZ2VzX21lbWJlcnMuaAotICAgICAgQ01FU1NBR0VTX0ND PWNvbmZpZy9sb2NhbGUvZ2VuZXJpYy9tZXNzYWdlc19tZW1iZXJzLmNjCi0gICAgICBDTU9ORVlf Q0M9Y29uZmlnL2xvY2FsZS9kcmFnb25mbHkvbW9uZXRhcnlfbWVtYmVycy5jYwotICAgICAgQ05V TUVSSUNfQ0M9Y29uZmlnL2xvY2FsZS9kcmFnb25mbHkvbnVtZXJpY19tZW1iZXJzLmNjCi0gICAg ICBDVElNRV9IPWNvbmZpZy9sb2NhbGUvZHJhZ29uZmx5L3RpbWVfbWVtYmVycy5oCi0gICAgICBD VElNRV9DQz1jb25maWcvbG9jYWxlL2RyYWdvbmZseS90aW1lX21lbWJlcnMuY2MKLSAgICAgIENM T0NBTEVfSU5URVJOQUxfSD1jb25maWcvbG9jYWxlL2dlbmVyaWMvYysrbG9jYWxlX2ludGVybmFs LmgKLSAgICAgIDs7Ci0KICAgICBnbnUpCiAgICAgICBBQ19NU0dfUkVTVUxUKGdudSkKIApAQCAt MjYxMCw2ICsyNTkzLDI0IEBAIEFDX0RFRlVOKFtHTElCQ1hYX0VOQUJMRV9DTE9DQUxFXSwgWwog ICAgICAgQ1RJTUVfQ0M9Y29uZmlnL2xvY2FsZS9nZW5lcmljL3RpbWVfbWVtYmVycy5jYwogICAg ICAgQ0xPQ0FMRV9JTlRFUk5BTF9IPWNvbmZpZy9sb2NhbGUvZ2VuZXJpYy9jKytsb2NhbGVfaW50 ZXJuYWwuaAogICAgICAgOzsKKworICAgIHhwZzcpCisgICAgICBBQ19NU0dfUkVTVUxUKHhwZzcp CisKKyAgICAgIENMT0NBTEVfSD1jb25maWcvbG9jYWxlL3hwZzcvY19sb2NhbGUuaAorICAgICAg Q0xPQ0FMRV9DQz1jb25maWcvbG9jYWxlL3hwZzcvY19sb2NhbGUuY2MKKyAgICAgIENDT0RFQ1ZU X0NDPWNvbmZpZy9sb2NhbGUveHBnNy9jb2RlY3Z0X21lbWJlcnMuY2MKKyAgICAgIENDT0xMQVRF X0NDPWNvbmZpZy9sb2NhbGUveHBnNy9jb2xsYXRlX21lbWJlcnMuY2MKKyAgICAgIENDVFlQRV9D Qz1jb25maWcvbG9jYWxlL3hwZzcvY3R5cGVfbWVtYmVycy5jYworICAgICAgQ01FU1NBR0VTX0g9 Y29uZmlnL2xvY2FsZS9nZW5lcmljL21lc3NhZ2VzX21lbWJlcnMuaAorICAgICAgQ01FU1NBR0VT X0NDPWNvbmZpZy9sb2NhbGUvZ2VuZXJpYy9tZXNzYWdlc19tZW1iZXJzLmNjCisgICAgICBDTU9O RVlfQ0M9Y29uZmlnL2xvY2FsZS94cGc3L21vbmV0YXJ5X21lbWJlcnMuY2MKKyAgICAgIENOVU1F UklDX0NDPWNvbmZpZy9sb2NhbGUveHBnNy9udW1lcmljX21lbWJlcnMuY2MKKyAgICAgIENUSU1F X0g9Y29uZmlnL2xvY2FsZS94cGc3L3RpbWVfbWVtYmVycy5oCisgICAgICBDVElNRV9DQz1jb25m aWcvbG9jYWxlL3hwZzcvdGltZV9tZW1iZXJzLmNjCisgICAgICBDTE9DQUxFX0lOVEVSTkFMX0g9 Y29uZmlnL2xvY2FsZS9nZW5lcmljL2MrK2xvY2FsZV9pbnRlcm5hbC5oCisgICAgICA7OworCiAg ICAgbmV3bGliKQogICAgICAgQUNfTVNHX1JFU1VMVChuZXdsaWIpCiAKQEAgLTI2NTYsNiArMjY1 NywxMiBAQCBBQ19ERUZVTihbR0xJQkNYWF9FTkFCTEVfQ0xPQ0FMRV0sIFsKICAgQUNfU1VCU1Qo Q1RJTUVfQ0MpCiAgIEFDX1NVQlNUKENMT0NBTEVfQ0MpCiAgIEFDX1NVQlNUKENMT0NBTEVfSU5U RVJOQUxfSCkKKworICBpZiB0ZXN0ICRlbmFibGVfY2xvY2FsZV9mbGFnID0geHBnNzsgdGhlbgor ICAgICBBQ19DSEVDS19IRUFERVJTKHhsb2NhbGUuaCkKKworICAgICBBQ19DSEVDS19GVU5DUyhb c3RydG9mX2wgbG9jYWxlY29udl9sIG1ic3Rvd2NzX2wgd2NzZnRpbWVfbCBzdHJmdGltZV9sXSkK KyAgZmkKIF0pCiAKIApkaWZmIC0tZ2l0IGEvbGlic3RkYysrLXYzL2NvbmZpZy5oLmluIGIvbGli c3RkYysrLXYzL2NvbmZpZy5oLmluCmluZGV4IDM3YjU2YjgyYjBlLi4yNTk4YTJhNzYzNCAxMDA2 NDQKLS0tIGEvbGlic3RkYysrLXYzL2NvbmZpZy5oLmluCisrKyBiL2xpYnN0ZGMrKy12My9jb25m aWcuaC5pbgpAQCAtMjI1LDYgKzIyNSw5IEBACiAvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0 aGUgPGxpbnV4L3R5cGVzLmg+IGhlYWRlciBmaWxlLiAqLwogI3VuZGVmIEhBVkVfTElOVVhfVFlQ RVNfSAogCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGxvY2FsZWNvbnZfbCcgZnVu Y3Rpb24uICovCisjdW5kZWYgSEFWRV9MT0NBTEVDT05WX0wKKwogLyogRGVmaW5lIHRvIDEgaWYg eW91IGhhdmUgdGhlIDxsb2NhbGUuaD4gaGVhZGVyIGZpbGUuICovCiAjdW5kZWYgSEFWRV9MT0NB TEVfSAogCkBAIC0yNDksNiArMjUyLDkgQEAKIC8qIERlZmluZSBpZiBtYnN0YXRlX3QgZXhpc3Rz IGluIHdjaGFyLmguICovCiAjdW5kZWYgSEFWRV9NQlNUQVRFX1QKIAorLyogRGVmaW5lIHRvIDEg aWYgeW91IGhhdmUgdGhlIGBtYnN0b3djc19sJyBmdW5jdGlvbi4gKi8KKyN1bmRlZiBIQVZFX01C U1RPV0NTX0wKKwogLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBtZW1hbGlnbicgZnVu Y3Rpb24uICovCiAjdW5kZWYgSEFWRV9NRU1BTElHTgogCkBAIC0zNjQsNiArMzcwLDkgQEAKIC8q IERlZmluZSBpZiBzdHJlcnJvcl9yIGlzIGF2YWlsYWJsZSBpbiA8c3RyaW5nLmg+LiAqLwogI3Vu ZGVmIEhBVkVfU1RSRVJST1JfUgogCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHN0 cmZ0aW1lX2wnIGZ1bmN0aW9uLiAqLworI3VuZGVmIEhBVkVfU1RSRlRJTUVfTAorCiAvKiBEZWZp bmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPHN0cmluZ3MuaD4gaGVhZGVyIGZpbGUuICovCiAjdW5k ZWYgSEFWRV9TVFJJTkdTX0gKIApAQCAtMzczLDYgKzM4Miw5IEBACiAvKiBEZWZpbmUgdG8gMSBp ZiB5b3UgaGF2ZSB0aGUgYHN0cnRvZicgZnVuY3Rpb24uICovCiAjdW5kZWYgSEFWRV9TVFJUT0YK IAorLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBzdHJ0b2ZfbCcgZnVuY3Rpb24uICov CisjdW5kZWYgSEFWRV9TVFJUT0ZfTAorCiAvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUg YHN0cnRvbGQnIGZ1bmN0aW9uLiAqLwogI3VuZGVmIEhBVkVfU1RSVE9MRAogCkBAIC00OTQsNiAr NTA2LDkgQEAKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8d2NoYXIuaD4gaGVhZGVy IGZpbGUuICovCiAjdW5kZWYgSEFWRV9XQ0hBUl9ICiAKKy8qIERlZmluZSB0byAxIGlmIHlvdSBo YXZlIHRoZSBgd2NzZnRpbWVfbCcgZnVuY3Rpb24uICovCisjdW5kZWYgSEFWRV9XQ1NGVElNRV9M CisKIC8qIERlZmluZWQgaWYgd2NzdG9mIGV4aXN0cy4gKi8KICN1bmRlZiBIQVZFX1dDU1RPRgog CmRpZmYgLS1naXQgYS9saWJzdGRjKystdjMvY29uZmlnL2xvY2FsZS9kcmFnb25mbHkvY19sb2Nh bGUuY2MgYi9saWJzdGRjKystdjMvY29uZmlnL2xvY2FsZS94cGc3L2NfbG9jYWxlLmNjCnNpbWls YXJpdHkgaW5kZXggOTclCnJlbmFtZSBmcm9tIGxpYnN0ZGMrKy12My9jb25maWcvbG9jYWxlL2Ry YWdvbmZseS9jX2xvY2FsZS5jYwpyZW5hbWUgdG8gbGlic3RkYysrLXYzL2NvbmZpZy9sb2NhbGUv eHBnNy9jX2xvY2FsZS5jYwppbmRleCAwMmRmNDYwNWJiNS4uMzllZjU4ZWEwYTkgMTAwNjQ0Ci0t LSBhL2xpYnN0ZGMrKy12My9jb25maWcvbG9jYWxlL2RyYWdvbmZseS9jX2xvY2FsZS5jYworKysg Yi9saWJzdGRjKystdjMvY29uZmlnL2xvY2FsZS94cGc3L2NfbG9jYWxlLmNjCkBAIC0xLDQgKzEs NCBAQAotLy8gbG9jYWxpemF0aW9uIGltcGxlbWVudGF0aW9uIGRldGFpbHMsIERyYWdvbkZseSB2 ZXJzaW9uIC0qLSBDKysgLSotCisvLyBsb2NhbGl6YXRpb24gaW1wbGVtZW50YXRpb24gZGV0YWls cywgWFBHNyB2ZXJzaW9uIC0qLSBDKysgLSotCiAKIC8vIENvcHlyaWdodCAoQykgMjAxNC0yMDIx IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgogLy8KQEAgLTI4LDEzICsyOCwxNyBAQAog CiAvLyBXcml0dGVuIGJ5IEJlbmphbWluIEtvc25payA8YmtvekByZWRoYXQuY29tPgogLy8gTW9k aWZpZWQgZm9yIERyYWdvbkZseSBieSBKb2huIE1hcmlubyA8Z251Z2NjQG1hcmluby5zdD4KKy8v IE1vZGlmaWVkIGZvciBYUEc3IGJ5IENsw6ltZW50IENoaWdvdCA8Y2xlbWVudC5jaGlnb3RAYXRv cy5uZXQ+CiAKICNpbmNsdWRlIDxjc3RkbGliPgogI2luY2x1ZGUgPGxvY2FsZT4KICNpbmNsdWRl IDxzdGRleGNlcHQ+CiAjaW5jbHVkZSA8bGltaXRzPgorCiAjaW5jbHVkZSA8bGFuZ2luZm8uaD4K KyNpZmRlZiBfR0xJQkNYWF9IQVZFX1hMT0NBTEVfSAogI2luY2x1ZGUgPHhsb2NhbGUuaD4KKyNl bmRpZgogCiBuYW1lc3BhY2Ugc3RkIF9HTElCQ1hYX1ZJU0lCSUxJVFkoZGVmYXVsdCkKIHsKZGlm ZiAtLWdpdCBhL2xpYnN0ZGMrKy12My9jb25maWcvbG9jYWxlL2RyYWdvbmZseS9jX2xvY2FsZS5o IGIvbGlic3RkYysrLXYzL2NvbmZpZy9sb2NhbGUveHBnNy9jX2xvY2FsZS5oCnNpbWlsYXJpdHkg aW5kZXggNjklCnJlbmFtZSBmcm9tIGxpYnN0ZGMrKy12My9jb25maWcvbG9jYWxlL2RyYWdvbmZs eS9jX2xvY2FsZS5oCnJlbmFtZSB0byBsaWJzdGRjKystdjMvY29uZmlnL2xvY2FsZS94cGc3L2Nf bG9jYWxlLmgKaW5kZXggY2Y0MjgxY2ViYmYuLmUwMzBhMzM2OGQxIDEwMDY0NAotLS0gYS9saWJz dGRjKystdjMvY29uZmlnL2xvY2FsZS9kcmFnb25mbHkvY19sb2NhbGUuaAorKysgYi9saWJzdGRj KystdjMvY29uZmlnL2xvY2FsZS94cGc3L2NfbG9jYWxlLmgKQEAgLTEsNCArMSw0IEBACi0vLyBs b2NhbGl6YXRpb24gaW1wbGVtZW50YXRpb24gZGV0YWlscywgRHJhZ29uRmx5IHZlcnNpb24gLSot IEMrKyAtKi0KKy8vIGxvY2FsaXphdGlvbiBpbXBsZW1lbnRhdGlvbiBkZXRhaWxzLCBYUEc3IHZl cnNpb24gLSotIEMrKyAtKi0KIAogLy8gQ29weXJpZ2h0IChDKSAyMDAxLTIwMjEgRnJlZSBTb2Z0 d2FyZSBGb3VuZGF0aW9uLCBJbmMuCiAvLwpAQCAtMzMsNiArMzMsNyBAQAogCiAvLyBXcml0dGVu IGJ5IEJlbmphbWluIEtvc25payA8YmtvekByZWRoYXQuY29tPgogLy8gTW9kaWZpZWQgZm9yIERy YWdvbkZseSBieSBKb2huIE1hcmlubyA8Z251Z2NjQG1hcmluby5zdD4KKy8vIE1vZGlmaWVkIGZv ciBYUEc3IGJ5IENsw6ltZW50IENoaWdvdCA8Y2xlbWVudC5jaGlnb3RAYXRvcy5uZXQ+CiAKICNp Zm5kZWYgX0dMSUJDWFhfQ1hYX0xPQ0FMRV9ICiAjZGVmaW5lIF9HTElCQ1hYX0NYWF9MT0NBTEVf SCAxCkBAIC00MCw3ICs0MSw0NiBAQAogI3ByYWdtYSBHQ0Mgc3lzdGVtX2hlYWRlcgogCiAjaW5j bHVkZSA8Y2xvY2FsZT4KKyNpbmNsdWRlIDxjc3RkbGliPgorI2lmZGVmIF9HTElCQ1hYX0hBVkVf WExPQ0FMRV9ICiAjaW5jbHVkZSA8eGxvY2FsZS5oPgorI2VuZGlmCisKKyNkZWZpbmUgX0dMSUJD WFhfQ19MT0NBTEVfWFBHNyAxCisKKy8vIEFzc3VtZSB0aGF0IGlmIHN0cnRvZl9sIGlzIG1pc3Np bmcgdGhlbiBzdHJ0b2RfbCBhbmQgc3Ryb2xkX2wKKy8vIGFyZSBtaXNzaW5nIHRvby4KKyNpZm5k ZWYgX0dMSUJDWFhfSEFWRV9TVFJUT0ZfTAorZXh0ZXJuICJDIiBpbmxpbmUKK2Zsb2F0IHN0cnRv Zl9sIChjb25zdCBjaGFyICpfX25wdHIsIGNoYXIgKipfX2VuZHB0ciwKKwkJbG9jYWxlX3QgbG9j YWxlKQoreworICBsb2NhbGVfdCBfX29sZCA9IHVzZWxvY2FsZShsb2NhbGUpOworICBmbG9hdCBf X3JlcyA9IHN0cnRvZihfX25wdHIsIF9fZW5kcHRyKTsKKyAgdXNlbG9jYWxlKF9fb2xkKTsKKyAg cmV0dXJuIF9fcmVzOworfQorCitleHRlcm4gIkMiIGlubGluZQorZG91YmxlIHN0cnRvZF9sIChj b25zdCBjaGFyICpfX25wdHIsIGNoYXIgKipfX2VuZHB0ciwKKwkJIGxvY2FsZV90IGxvY2FsZSkK K3sKKyAgbG9jYWxlX3QgX19vbGQgPSB1c2Vsb2NhbGUobG9jYWxlKTsKKyAgZG91YmxlIF9fcmVz ID0gc3RydG9kKF9fbnB0ciwgX19lbmRwdHIpOworICB1c2Vsb2NhbGUoX19vbGQpOworICByZXR1 cm4gX19yZXM7Cit9CisKK2V4dGVybiAiQyIgaW5saW5lCitsb25nIGRvdWJsZSBzdHJ0b2xkX2wg KGNvbnN0IGNoYXIgKl9fbnB0ciwgY2hhciAqKl9fZW5kcHRyLAorCQkgICAgICAgbG9jYWxlX3Qg bG9jYWxlKQoreworICBsb2NhbGVfdCBfX29sZCA9IHVzZWxvY2FsZShsb2NhbGUpOworICBsb25n IGRvdWJsZSBfX3JlcyA9IHN0cnRvbGQoX19ucHRyLCBfX2VuZHB0cik7CisgIHVzZWxvY2FsZShf X29sZCk7CisgIHJldHVybiBfX3JlczsKK30KKyNlbmRpZgogCiAjZGVmaW5lIF9HTElCQ1hYX05V TV9DQVRFR09SSUVTIDAKIApAQCAtNDgsNyArODgsMTEgQEAgbmFtZXNwYWNlIHN0ZCBfR0xJQkNY WF9WSVNJQklMSVRZKGRlZmF1bHQpCiB7CiBfR0xJQkNYWF9CRUdJTl9OQU1FU1BBQ0VfVkVSU0lP TgogCisjaWYgZGVmaW5lZChfX0RyYWdvbkZseV9fKSB8fCBkZWZpbmVkKF9fRnJlZUJTRF9fKQog ICB0eXBlZGVmIGludCoJCQlfX2NfbG9jYWxlOworI2Vsc2UKKyAgdHlwZWRlZiBsb2NhbGVfdAkJ CV9fY19sb2NhbGU7CisjZW5kaWYKIAogICAvLyBDb252ZXJ0IG51bWVyaWMgdmFsdWUgb2YgdHlw ZSBkb3VibGUgYW5kIGxvbmcgZG91YmxlIHRvIHN0cmluZyBhbmQKICAgLy8gcmV0dXJuIGxlbmd0 aCBvZiBzdHJpbmcuICBJZiB2c25wcmludGYgaXMgYXZhaWxhYmxlIHVzZSBpdCwgb3RoZXJ3aXNl CmRpZmYgLS1naXQgYS9saWJzdGRjKystdjMvY29uZmlnL2xvY2FsZS9kcmFnb25mbHkvY29kZWN2 dF9tZW1iZXJzLmNjIGIvbGlic3RkYysrLXYzL2NvbmZpZy9sb2NhbGUveHBnNy9jb2RlY3Z0X21l bWJlcnMuY2MKc2ltaWxhcml0eSBpbmRleCA5OSUKcmVuYW1lIGZyb20gbGlic3RkYysrLXYzL2Nv bmZpZy9sb2NhbGUvZHJhZ29uZmx5L2NvZGVjdnRfbWVtYmVycy5jYwpyZW5hbWUgdG8gbGlic3Rk YysrLXYzL2NvbmZpZy9sb2NhbGUveHBnNy9jb2RlY3Z0X21lbWJlcnMuY2MKaW5kZXggMTFjYmNk YWU1OWYuLjNjZTA0N2EwODUxIDEwMDY0NAotLS0gYS9saWJzdGRjKystdjMvY29uZmlnL2xvY2Fs ZS9kcmFnb25mbHkvY29kZWN2dF9tZW1iZXJzLmNjCisrKyBiL2xpYnN0ZGMrKy12My9jb25maWcv bG9jYWxlL3hwZzcvY29kZWN2dF9tZW1iZXJzLmNjCkBAIC0xLDQgKzEsNCBAQAotLy8gc3RkOjpj b2RlY3Z0IGltcGxlbWVudGF0aW9uIGRldGFpbHMsIERyYWdvbkZseSB2ZXJzaW9uIC0qLSBDKysg LSotCisvLyBzdGQ6OmNvZGVjdnQgaW1wbGVtZW50YXRpb24gZGV0YWlscywgWFBHNyB2ZXJzaW9u IC0qLSBDKysgLSotCiAKIC8vIENvcHlyaWdodCAoQykgMjAxNS0yMDIxIEZyZWUgU29mdHdhcmUg Rm91bmRhdGlvbiwgSW5jLgogLy8KZGlmZiAtLWdpdCBhL2xpYnN0ZGMrKy12My9jb25maWcvbG9j YWxlL2RyYWdvbmZseS9jb2xsYXRlX21lbWJlcnMuY2MgYi9saWJzdGRjKystdjMvY29uZmlnL2xv Y2FsZS94cGc3L2NvbGxhdGVfbWVtYmVycy5jYwpzaW1pbGFyaXR5IGluZGV4IDk3JQpyZW5hbWUg ZnJvbSBsaWJzdGRjKystdjMvY29uZmlnL2xvY2FsZS9kcmFnb25mbHkvY29sbGF0ZV9tZW1iZXJz LmNjCnJlbmFtZSB0byBsaWJzdGRjKystdjMvY29uZmlnL2xvY2FsZS94cGc3L2NvbGxhdGVfbWVt YmVycy5jYwppbmRleCA2NGM3ZDg2NGE2MS4uOWE1ODZjZTc1OTkgMTAwNjQ0Ci0tLSBhL2xpYnN0 ZGMrKy12My9jb25maWcvbG9jYWxlL2RyYWdvbmZseS9jb2xsYXRlX21lbWJlcnMuY2MKKysrIGIv bGlic3RkYysrLXYzL2NvbmZpZy9sb2NhbGUveHBnNy9jb2xsYXRlX21lbWJlcnMuY2MKQEAgLTEs NCArMSw0IEBACi0vLyBzdGQ6OmNvbGxhdGUgaW1wbGVtZW50YXRpb24gZGV0YWlscywgRHJhZ29u Rmx5IHZlcnNpb24gLSotIEMrKyAtKi0KKy8vIHN0ZDo6Y29sbGF0ZSBpbXBsZW1lbnRhdGlvbiBk ZXRhaWxzLCBYUEc3IHZlcnNpb24gLSotIEMrKyAtKi0KIAogLy8gQ29weXJpZ2h0IChDKSAyMDE1 LTIwMjEgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCiAvLwpkaWZmIC0tZ2l0IGEvbGli c3RkYysrLXYzL2NvbmZpZy9sb2NhbGUvZHJhZ29uZmx5L2N0eXBlX21lbWJlcnMuY2MgYi9saWJz dGRjKystdjMvY29uZmlnL2xvY2FsZS94cGc3L2N0eXBlX21lbWJlcnMuY2MKc2ltaWxhcml0eSBp bmRleCA3OCUKcmVuYW1lIGZyb20gbGlic3RkYysrLXYzL2NvbmZpZy9sb2NhbGUvZHJhZ29uZmx5 L2N0eXBlX21lbWJlcnMuY2MKcmVuYW1lIHRvIGxpYnN0ZGMrKy12My9jb25maWcvbG9jYWxlL3hw ZzcvY3R5cGVfbWVtYmVycy5jYwppbmRleCA0MjBjYjUxZTA3YS4uYTg3YTYwM2ZhMjcgMTAwNjQ0 Ci0tLSBhL2xpYnN0ZGMrKy12My9jb25maWcvbG9jYWxlL2RyYWdvbmZseS9jdHlwZV9tZW1iZXJz LmNjCisrKyBiL2xpYnN0ZGMrKy12My9jb25maWcvbG9jYWxlL3hwZzcvY3R5cGVfbWVtYmVycy5j YwpAQCAtMSw0ICsxLDQgQEAKLS8vIHN0ZDo6Y3R5cGUgaW1wbGVtZW50YXRpb24gZGV0YWlscywg RHJhZ29uRmx5IHZlcnNpb24gLSotIEMrKyAtKi0KKy8vIHN0ZDo6Y3R5cGUgaW1wbGVtZW50YXRp b24gZGV0YWlscywgWFBHNyB2ZXJzaW9uIC0qLSBDKysgLSotCiAKIC8vIENvcHlyaWdodCAoQykg MjAxNC0yMDIxIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgogLy8KQEAgLTI4LDEzICsy OCwxOCBAQAogCiAvLyBXcml0dGVuIGJ5IEJlbmphbWluIEtvc25payA8YmtvekByZWRoYXQuY29t PgogLy8gTW9kaWZpZWQgZm9yIERyYWdvbkZseSBieSBKb2huIE1hcmlubyA8Z251Z2NjQG1hcmlu by5zdD4KKy8vIE1vZGlmaWVkIGZvciBYUEc3IGJ5IENsw6ltZW50IENoaWdvdCA8Y2xlbWVudC5j aGlnb3RAYXRvcy5uZXQ+CiAKICNpbmNsdWRlIDxsb2NhbGU+CiAjaW5jbHVkZSA8Y3N0cmluZz4K ICNpbmNsdWRlIDxjc3RkaW8+CiAKICNpZm5kZWYgX0lTYml0CisjaWYgX19CWVRFX09SREVSX18g PT0gX19PUkRFUl9MSVRUTEVfRU5ESUFOX18KICNkZWZpbmUgX0lTYml0KGJpdCkgKChiaXQpIDwg OCA/ICgoMSA8PCAoYml0KSkgPDwgOCkgOiAoKDEgPDwgKGJpdCkpID4+IDgpKQorI2Vsc2UKKyNk ZWZpbmUgX0lTYml0KGJpdCkgKDEgPDwgYml0KQorI2VuZGlmCiAjZW5kaWYKIAogbmFtZXNwYWNl IHN0ZCBfR0xJQkNYWF9WSVNJQklMSVRZKGRlZmF1bHQpCkBAIC0xMTQsOCArMTE5LDggQEAgX0dM SUJDWFhfQkVHSU5fTkFNRVNQQUNFX1ZFUlNJT04KICAgewogICAgIHdoaWxlIChfX2xvIDwgX19o aSkKICAgICAgIHsKLSAgICAgICAgKl9fbG8gPSB0b3d1cHBlcl9sKCpfX2xvLCAobG9jYWxlX3Qp X01fY19sb2NhbGVfY3R5cGUpOwotICAgICAgICArK19fbG87CisJKl9fbG8gPSB0b3d1cHBlcl9s KCpfX2xvLCAobG9jYWxlX3QpX01fY19sb2NhbGVfY3R5cGUpOworCSsrX19sbzsKICAgICAgIH0K ICAgICByZXR1cm4gX19oaTsKICAgfQpAQCAtMTI5LDEyICsxMzQsNjQgQEAgX0dMSUJDWFhfQkVH SU5fTkFNRVNQQUNFX1ZFUlNJT04KICAgewogICAgIHdoaWxlIChfX2xvIDwgX19oaSkKICAgICAg IHsKLSAgICAgICAgKl9fbG8gPSB0b3dsb3dlcl9sKCpfX2xvLCAobG9jYWxlX3QpX01fY19sb2Nh bGVfY3R5cGUpOwotICAgICAgICArK19fbG87CisJKl9fbG8gPSB0b3dsb3dlcl9sKCpfX2xvLCAo bG9jYWxlX3QpX01fY19sb2NhbGVfY3R5cGUpOworCSsrX19sbzsKKyAgICAgIH0KKyAgICByZXR1 cm4gX19oaTsKKyAgfQorCisjaWYgIWRlZmluZWQoX19EcmFnb25GbHlfXykgJiYgIWRlZmluZWQo X19GcmVlQlNEX18pCisgIGJvb2wKKyAgY3R5cGU8d2NoYXJfdD46OgorICBkb19pcyhtYXNrIF9f bSwgY2hhcl90eXBlIF9fYykgY29uc3QKKyAgeworICAgIGJvb2wgX19yZXQgPSBmYWxzZTsKKyAg ICBjb25zdCBzaXplX3QgX19iaXRtYXNrc2l6ZSA9IDE1OworICAgIGZvciAoc2l6ZV90IF9fYml0 Y3VyID0gMDsgX19iaXRjdXIgPD0gX19iaXRtYXNrc2l6ZTsgKytfX2JpdGN1cikKKyAgICAgIGlm IChfX20gJiBfTV9iaXRbX19iaXRjdXJdCisJICAmJiBpc3djdHlwZV9sKF9fYywgX01fd21hc2tb X19iaXRjdXJdLCAobG9jYWxlX3QpX01fY19sb2NhbGVfY3R5cGUpKQorCXsKKwkgIF9fcmV0ID0g dHJ1ZTsKKwkgIGJyZWFrOworCX0KKyAgICByZXR1cm4gX19yZXQ7CisgIH0KKworICBjb25zdCB3 Y2hhcl90KgorICBjdHlwZTx3Y2hhcl90Pjo6CisgIGRvX2lzKGNvbnN0IHdjaGFyX3QqIF9fbG8s IGNvbnN0IHdjaGFyX3QqIF9faGksIG1hc2sqIF9fdmVjKSBjb25zdAorICB7CisgICAgZm9yICg7 X19sbyA8IF9faGk7ICsrX192ZWMsICsrX19sbykKKyAgICAgIHsKKwljb25zdCBzaXplX3QgX19i aXRtYXNrc2l6ZSA9IDE1OworCW1hc2sgX19tID0gMDsKKwlmb3IgKHNpemVfdCBfX2JpdGN1ciA9 IDA7IF9fYml0Y3VyIDw9IF9fYml0bWFza3NpemU7ICsrX19iaXRjdXIpCisJICBpZiAoaXN3Y3R5 cGVfbCgqX19sbywgX01fd21hc2tbX19iaXRjdXJdLCAobG9jYWxlX3QpX01fY19sb2NhbGVfY3R5 cGUpKQorCSAgICBfX20gfD0gX01fYml0W19fYml0Y3VyXTsKKwkqX192ZWMgPSBfX207CiAgICAg ICB9CiAgICAgcmV0dXJuIF9faGk7CiAgIH0KIAorICBjb25zdCB3Y2hhcl90KgorICBjdHlwZTx3 Y2hhcl90Pjo6CisgIGRvX3NjYW5faXMobWFzayBfX20sIGNvbnN0IHdjaGFyX3QqIF9fbG8sIGNv bnN0IHdjaGFyX3QqIF9faGkpIGNvbnN0CisgIHsKKyAgICB3aGlsZSAoX19sbyA8IF9faGkgJiYg IXRoaXMtPmRvX2lzKF9fbSwgKl9fbG8pKQorICAgICAgKytfX2xvOworICAgIHJldHVybiBfX2xv OworICB9CisKKyAgY29uc3Qgd2NoYXJfdCoKKyAgY3R5cGU8d2NoYXJfdD46OgorICBkb19zY2Fu X25vdChtYXNrIF9fbSwgY29uc3QgY2hhcl90eXBlKiBfX2xvLCBjb25zdCBjaGFyX3R5cGUqIF9f aGkpIGNvbnN0CisgIHsKKyAgICB3aGlsZSAoX19sbyA8IF9faGkgJiYgdGhpcy0+ZG9faXMoX19t LCAqX19sbykgIT0gMCkKKyAgICAgICsrX19sbzsKKyAgICByZXR1cm4gX19sbzsKKyAgfQorI2Vu ZGlmCisKICAgd2NoYXJfdAogICBjdHlwZTx3Y2hhcl90Pjo6CiAgIGRvX3dpZGVuKGNoYXIgX19j KSBjb25zdApAQCAtMjE3LDcgKzI3NCw3IEBAIF9HTElCQ1hYX0JFR0lOX05BTUVTUEFDRV9WRVJT SU9OCiAJIF9faiA8IHNpemVvZihfTV93aWRlbikgLyBzaXplb2Yod2ludF90KTsgKytfX2opCiAg ICAgICBfTV93aWRlbltfX2pdID0gYnRvd2MoX19qKTsKIAotICAgIGZvciAoc2l6ZV90IF9fayA9 IDA7IF9fayA8PSAxMTsgKytfX2spCisgICAgZm9yIChzaXplX3QgX19rID0gMDsgX19rIDw9IDE1 OyArK19faykKICAgICAgIHsKIAlfTV9iaXRbX19rXSA9IHN0YXRpY19jYXN0PG1hc2s+KF9JU2Jp dChfX2spKTsKIAlfTV93bWFza1tfX2tdID0gX01fY29udmVydF90b193bWFzayhfTV9iaXRbX19r XSk7CmRpZmYgLS1naXQgYS9saWJzdGRjKystdjMvY29uZmlnL2xvY2FsZS9kcmFnb25mbHkvbW9u ZXRhcnlfbWVtYmVycy5jYyBiL2xpYnN0ZGMrKy12My9jb25maWcvbG9jYWxlL3hwZzcvbW9uZXRh cnlfbWVtYmVycy5jYwpzaW1pbGFyaXR5IGluZGV4IDk1JQpyZW5hbWUgZnJvbSBsaWJzdGRjKyst djMvY29uZmlnL2xvY2FsZS9kcmFnb25mbHkvbW9uZXRhcnlfbWVtYmVycy5jYwpyZW5hbWUgdG8g bGlic3RkYysrLXYzL2NvbmZpZy9sb2NhbGUveHBnNy9tb25ldGFyeV9tZW1iZXJzLmNjCmluZGV4 IGUxZGVjYzYxY2JmLi40ZGMzNTYzM2ZkMiAxMDA2NDQKLS0tIGEvbGlic3RkYysrLXYzL2NvbmZp Zy9sb2NhbGUvZHJhZ29uZmx5L21vbmV0YXJ5X21lbWJlcnMuY2MKKysrIGIvbGlic3RkYysrLXYz L2NvbmZpZy9sb2NhbGUveHBnNy9tb25ldGFyeV9tZW1iZXJzLmNjCkBAIC0xLDQgKzEsNCBAQAot Ly8gc3RkOjptb25leXB1bmN0IGltcGxlbWVudGF0aW9uIGRldGFpbHMsIERyYWdvbkZseSB2ZXJz aW9uIC0qLSBDKysgLSotCisvLyBzdGQ6Om1vbmV5cHVuY3QgaW1wbGVtZW50YXRpb24gZGV0YWls cywgWFBHNyB2ZXJzaW9uIC0qLSBDKysgLSotCiAKIC8vIENvcHlyaWdodCAoQykgMjAxNS0yMDIx IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgogLy8KQEAgLTI4LDEwICsyOCwxNyBAQAog CiAvLyBXcml0dGVuIGJ5IEJlbmphbWluIEtvc25payA8YmtvekByZWRoYXQuY29tPgogLy8gTW9k aWZpZWQgZm9yIERyYWdvbkZseSBieSBKb2huIE1hcmlubyA8Z251Z2NjQG1hcmluby5zdD4KKy8v IE1vZGlmaWVkIGZvciBYUEc3IGJ5IENsw6ltZW50IENoaWdvdCA8Y2xlbWVudC5jaGlnb3RAYXRv cy5uZXQ+CiAKKy8vIFNvbGFyaXMgMTEuNCBkb2Vzbid0IG1ha2UgQzk5IG1lbWJlcnMgb2Ygc3Ry dWN0IGxjb252IHZpc2libGUgZm9yIEMrKzExCisvLyB3aXRob3V0IHRoaXMuCisjZGVmaW5lIF9M Q09OVl9DOTkKICNpbmNsdWRlIDxsb2NhbGU+CiAjaW5jbHVkZSA8Y3N0cmluZz4KKworI2lmZGVm IF9HTElCQ1hYX0hBVkVfWExPQ0FMRV9ICiAjaW5jbHVkZSA8eGxvY2FsZS5oPgorI2VuZGlmCiAK IG5hbWVzcGFjZSBzdGQgX0dMSUJDWFhfVklTSUJJTElUWShkZWZhdWx0KQogewpAQCAtMjQxLDcg KzI0OCwxMiBAQCBfR0xJQkNYWF9CRUdJTl9OQU1FU1BBQ0VfVkVSU0lPTgogICAgICAgZWxzZQog CXsKIAkgIC8vIE5hbWVkIGxvY2FsZS4KKyNpZmRlZiBfR0xJQkNYWF9IQVZFX0xPQ0FMRUNPTlZf TAogCSAgbGNvbnYqIGxjID0gbG9jYWxlY29udl9sKChsb2NhbGVfdCkgX19jbG9jKTsKKyNlbHNl CisJICBfX2NfbG9jYWxlIF9fb2xkID0gdXNlbG9jYWxlKF9fY2xvYyk7CisJICBsY29udiogbGMg PSBsb2NhbGVjb252KCk7CisjZW5kaWYKIAogCSAgLy8gQ2hlY2sgZm9yIE5VTEwsIHdoaWNoIGlt cGxpZXMgbm8gZnJhY3Rpb25hbCBkaWdpdHMuCiAJICBpZiAobGMtPm1vbl9kZWNpbWFsX3BvaW50 ID09IE5VTEwgfHwKQEAgLTM0OCw2ICszNjAsOSBAQCBfR0xJQkNYWF9CRUdJTl9OQU1FU1BBQ0Vf VkVSU0lPTgogCSAgICAgIGRlbGV0ZSBbXSBfX2dyb3VwOwogCSAgICAgIGRlbGV0ZSBbXSBfX3Bz OwogCSAgICAgIGRlbGV0ZSBbXSBfX25zOworI2lmbmRlZiBfR0xJQkNYWF9IQVZFX0xPQ0FMRUNP TlZfTAorCSAgICAgIHVzZWxvY2FsZShfX29sZCk7CisjZW5kaWYKIAkgICAgICBfX3Rocm93X2V4 Y2VwdGlvbl9hZ2FpbjsKIAkgICAgfQogCkBAIC0zNjAsNiArMzc1LDkgQEAgX0dMSUJDWFhfQkVH SU5fTkFNRVNQQUNFX1ZFUlNJT04KIAkgIGNoYXIgX19uc3BhY2UgPSBsYy0+aW50X25fc2VwX2J5 X3NwYWNlOwogCSAgX01fZGF0YS0+X01fbmVnX2Zvcm1hdCA9IF9TX2NvbnN0cnVjdF9wYXR0ZXJu KF9fbnByZWNlZGVzLCBfX25zcGFjZSwKIAkJCQkJCQlfX25wb3NuKTsKKyNpZm5kZWYgX0dMSUJD WFhfSEFWRV9MT0NBTEVDT05WX0wKKwkgIHVzZWxvY2FsZShfX29sZCk7CisjZW5kaWYKIAl9CiAg ICAgfQogCkBAIC0zOTUsNyArNDEzLDEyIEBAIF9HTElCQ1hYX0JFR0lOX05BTUVTUEFDRV9WRVJT SU9OCiAgICAgICBlbHNlCiAJewogCSAgLy8gTmFtZWQgbG9jYWxlLgorI2lmZGVmIF9HTElCQ1hY X0hBVkVfTE9DQUxFQ09OVl9MCiAJICBsY29udiogbGMgPSBsb2NhbGVjb252X2woKGxvY2FsZV90 KSBfX2Nsb2MpOworI2Vsc2UKKwkgIF9fY19sb2NhbGUgX19vbGQgPSB1c2Vsb2NhbGUoX19jbG9j KTsKKwkgIGxjb252KiBsYyA9IGxvY2FsZWNvbnYoKTsKKyNlbmRpZgogCiAJICAvLyBDaGVjayBm b3IgTlVMTCwgd2hpY2ggaW1wbGllcyBubyBmcmFjdGlvbmFsIGRpZ2l0cy4KIAkgIGlmIChsYy0+ bW9uX2RlY2ltYWxfcG9pbnQgPT0gTlVMTCB8fApAQCAtNTAyLDYgKzUyNSw5IEBAIF9HTElCQ1hY X0JFR0lOX05BTUVTUEFDRV9WRVJTSU9OCiAJICAgICAgZGVsZXRlIFtdIF9fZ3JvdXA7CiAJICAg ICAgZGVsZXRlIFtdIF9fcHM7CiAJICAgICAgZGVsZXRlIFtdIF9fbnM7CisjaWZuZGVmIF9HTElC Q1hYX0hBVkVfTE9DQUxFQ09OVl9MCisJICAgICAgdXNlbG9jYWxlKF9fb2xkKTsKKyNlbmRpZgog CSAgICAgIF9fdGhyb3dfZXhjZXB0aW9uX2FnYWluOwogCSAgICB9CiAKQEAgLTUxNCw2ICs1NDAs OSBAQCBfR0xJQkNYWF9CRUdJTl9OQU1FU1BBQ0VfVkVSU0lPTgogCSAgY2hhciBfX25zcGFjZSA9 IGxjLT5uX3NlcF9ieV9zcGFjZTsKIAkgIF9NX2RhdGEtPl9NX25lZ19mb3JtYXQgPSBfU19jb25z dHJ1Y3RfcGF0dGVybihfX25wcmVjZWRlcywgX19uc3BhY2UsCiAJCQkJCQkJX19ucG9zbik7Cisj aWZuZGVmIF9HTElCQ1hYX0hBVkVfTE9DQUxFQ09OVl9MCisJICB1c2Vsb2NhbGUoX19vbGQpOwor I2VuZGlmCiAJfQogICAgIH0KIApAQCAtNTgxLDkgKzYxMCwxNCBAQCBfR0xJQkNYWF9CRUdJTl9O QU1FU1BBQ0VfVkVSU0lPTgogCX0KICAgICAgIGVsc2UKIAl7Ci0JICBfX2NfbG9jYWxlIF9fb2xk ID0gKF9fY19sb2NhbGUpdXNlbG9jYWxlKChsb2NhbGVfdClfX2Nsb2MpOwogCSAgLy8gTmFtZWQg bG9jYWxlLgorCSAgLy8gdXNlbG9jYWxlIGlzIG5lZWRlZCBmb3IgbWJzcnRvd2NzLgorCSAgX19j X2xvY2FsZSBfX29sZCA9IChfX2NfbG9jYWxlKXVzZWxvY2FsZSgobG9jYWxlX3QpX19jbG9jKTsK KyNpZmRlZiBfR0xJQkNYWF9IQVZFX0xPQ0FMRUNPTlZfTAogCSAgbGNvbnYqIGxjID0gbG9jYWxl Y29udl9sKChsb2NhbGVfdCkgX19jbG9jKTsKKyNlbHNlCisJICBsY29udiogbGMgPSBsb2NhbGVj b252KCk7CisjZW5kaWYKIAogCSAgLy8gQ2hlY2sgZm9yIE5VTEwsIHdoaWNoIGltcGxpZXMgbm8g ZnJhY3Rpb25hbCBkaWdpdHMuCiAJICBpZiAobGMtPm1vbl9kZWNpbWFsX3BvaW50ID09IE5VTEwg fHwKQEAgLTc0MSw5ICs3NzUsMTQgQEAgX0dMSUJDWFhfQkVHSU5fTkFNRVNQQUNFX1ZFUlNJT04K IAl9CiAgICAgICBlbHNlCiAJewotCSAgX19jX2xvY2FsZSBfX29sZCA9IChfX2NfbG9jYWxlKXVz ZWxvY2FsZSgobG9jYWxlX3QpX19jbG9jKTsKIAkgIC8vIE5hbWVkIGxvY2FsZS4KKwkgIC8vIHVz ZWxvY2FsZSBpcyBuZWVkZWQgZm9yIG1ic3J0b3djcy4KKwkgIF9fY19sb2NhbGUgX19vbGQgPSAo X19jX2xvY2FsZSl1c2Vsb2NhbGUoKGxvY2FsZV90KV9fY2xvYyk7CisjaWZkZWYgX0dMSUJDWFhf SEFWRV9MT0NBTEVDT05WX0wKIAkgIGxjb252KiBsYyA9IGxvY2FsZWNvbnZfbCgobG9jYWxlX3Qp IF9fY2xvYyk7CisjZWxzZQorCSAgbGNvbnYqIGxjID0gbG9jYWxlY29udigpOworI2VuZGlmCiAK IAkgIC8vIENoZWNrIGZvciBOVUxMLCB3aGljaCBpbXBsaWVzIG5vIGZyYWN0aW9uYWwgZGlnaXRz LgogCSAgaWYgKGxjLT5tb25fZGVjaW1hbF9wb2ludCA9PSBOVUxMIHx8CmRpZmYgLS1naXQgYS9s aWJzdGRjKystdjMvY29uZmlnL2xvY2FsZS9kcmFnb25mbHkvbnVtZXJpY19tZW1iZXJzLmNjIGIv bGlic3RkYysrLXYzL2NvbmZpZy9sb2NhbGUveHBnNy9udW1lcmljX21lbWJlcnMuY2MKc2ltaWxh cml0eSBpbmRleCA5MCUKcmVuYW1lIGZyb20gbGlic3RkYysrLXYzL2NvbmZpZy9sb2NhbGUvZHJh Z29uZmx5L251bWVyaWNfbWVtYmVycy5jYwpyZW5hbWUgdG8gbGlic3RkYysrLXYzL2NvbmZpZy9s b2NhbGUveHBnNy9udW1lcmljX21lbWJlcnMuY2MKaW5kZXggY2FjNmZlOGM3MTAuLjVlZTYxZjBm YmI0IDEwMDY0NAotLS0gYS9saWJzdGRjKystdjMvY29uZmlnL2xvY2FsZS9kcmFnb25mbHkvbnVt ZXJpY19tZW1iZXJzLmNjCisrKyBiL2xpYnN0ZGMrKy12My9jb25maWcvbG9jYWxlL3hwZzcvbnVt ZXJpY19tZW1iZXJzLmNjCkBAIC0xLDQgKzEsNCBAQAotLy8gc3RkOjpudW1wdW5jdCBpbXBsZW1l bnRhdGlvbiBkZXRhaWxzLCBEcmFnb25GbHkgdmVyc2lvbiAtKi0gQysrIC0qLQorLy8gc3RkOjpu dW1wdW5jdCBpbXBsZW1lbnRhdGlvbiBkZXRhaWxzLCBYUEc3IHZlcnNpb24gLSotIEMrKyAtKi0K IAogLy8gQ29weXJpZ2h0IChDKSAyMDE1LTIwMjEgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJ bmMuCiAvLwpAQCAtMjgsMTAgKzI4LDE0IEBACiAKIC8vIFdyaXR0ZW4gYnkgQmVuamFtaW4gS29z bmlrIDxia296QHJlZGhhdC5jb20+CiAvLyBNb2RpZmllZCBmb3IgRHJhZ29uRmx5IGJ5IEpvaG4g TWFyaW5vIDxnbnVnY2NAbWFyaW5vLnN0PgorLy8gTW9kaWZpZWQgZm9yIFhQRzcgYnkgQ2zDqW1l bnQgQ2hpZ290IDxjbGVtZW50LmNoaWdvdEBhdG9zLm5ldD4KIAogI2luY2x1ZGUgPGxvY2FsZT4K ICNpbmNsdWRlIDxjc3RyaW5nPgorCisjaWZkZWYgX0dMSUJDWFhfSEFWRV9YTE9DQUxFX0gKICNp bmNsdWRlIDx4bG9jYWxlLmg+CisjZW5kaWYKIAogbmFtZXNwYWNlIHN0ZCBfR0xJQkNYWF9WSVNJ QklMSVRZKGRlZmF1bHQpCiB7CkBAIC02Myw3ICs2NywxMiBAQCBfR0xJQkNYWF9CRUdJTl9OQU1F U1BBQ0VfVkVSU0lPTgogICAgICAgZWxzZQogCXsKIAkgIC8vIE5hbWVkIGxvY2FsZS4KKyNpZmRl ZiBfR0xJQkNYWF9IQVZFX0xPQ0FMRUNPTlZfTAogCSAgbGNvbnYqIGxjID0gbG9jYWxlY29udl9s KChsb2NhbGVfdCkgX19jbG9jKTsKKyNlbHNlCisJICBfX2NfbG9jYWxlIF9fb2xkID0gdXNlbG9j YWxlKF9fY2xvYyk7CisJICBsY29udiogbGMgPSBsb2NhbGVjb252KCk7CisjZW5kaWYKIAogCSAg Ly8gRGVjaW1hbCBwb2ludCBzaG91bGQgYWx3YXlzIGJlIGRlZmluZWQsIGJ1dCBjaGVjayBudWxs IGFueXdheQogCSAgaWYgKGxjLT5kZWNpbWFsX3BvaW50ID09IE5VTEwpCkBAIC0xMDMsNiArMTEy LDkgQEAgX0dMSUJDWFhfQkVHSU5fTkFNRVNQQUNFX1ZFUlNJT04KIAkJICAgIHsKIAkJICAgICAg ZGVsZXRlIF9NX2RhdGE7CiAJCSAgICAgIF9NX2RhdGEgPSAwOworI2lmbmRlZiBfR0xJQkNYWF9I QVZFX0xPQ0FMRUNPTlZfTAorCQkgICAgICB1c2Vsb2NhbGUoX19vbGQpOworI2VuZGlmCiAJCSAg ICAgIF9fdGhyb3dfZXhjZXB0aW9uX2FnYWluOwogCQkgICAgfQogCQl9CkBAIC0xMTMsNiArMTI1 LDkgQEAgX0dMSUJDWFhfQkVHSU5fTkFNRVNQQUNFX1ZFUlNJT04KIAkJfQogCSAgICAgIF9NX2Rh dGEtPl9NX2dyb3VwaW5nX3NpemUgPSBfX2xlbjsKIAkgICAgfQorI2lmbmRlZiBfR0xJQkNYWF9I QVZFX0xPQ0FMRUNPTlZfTAorCSAgdXNlbG9jYWxlKF9fb2xkKTsKKyNlbmRpZgogCX0KIAogICAg ICAgLy8gTkI6IFRoZXJlIGlzIG5vIHdheSB0byBleHRhY3QgdGhpcyBpbmZvIGZyb20gcG9zaXgg bG9jYWxlcy4KQEAgLTE2Miw3ICsxNzcsMTIgQEAgX0dMSUJDWFhfQkVHSU5fTkFNRVNQQUNFX1ZF UlNJT04KICAgICAgIGVsc2UKIAl7CiAJICAvLyBOYW1lZCBsb2NhbGUuCisjaWZkZWYgX0dMSUJD WFhfSEFWRV9MT0NBTEVDT05WX0wKIAkgIGxjb252KiBsYyA9IGxvY2FsZWNvbnZfbCgobG9jYWxl X3QpIF9fY2xvYyk7CisjZWxzZQorCSAgX19jX2xvY2FsZSBfX29sZCA9IHVzZWxvY2FsZShfX2Ns b2MpOworCSAgbGNvbnYqIGxjID0gbG9jYWxlY29udigpOworI2VuZGlmCiAKIAkgIC8vIERlY2lt YWwgcG9pbnQgc2hvdWxkIGFsd2F5cyBiZSBkZWZpbmVkLCBidXQgY2hlY2sgbnVsbCBhbnl3YXkK IAkgIGlmIChsYy0+ZGVjaW1hbF9wb2ludCA9PSBOVUxMKQpAQCAtMjAxLDYgKzIyMSw5IEBAIF9H TElCQ1hYX0JFR0lOX05BTUVTUEFDRV9WRVJTSU9OCiAJCSAgICB7CiAJCSAgICAgIGRlbGV0ZSBf TV9kYXRhOwogCQkgICAgICBfTV9kYXRhID0gMDsKKyNpZm5kZWYgX0dMSUJDWFhfSEFWRV9MT0NB TEVDT05WX0wKKwkJICAgICAgdXNlbG9jYWxlKF9fb2xkKTsKKyNlbmRpZgogCQkgICAgICBfX3Ro cm93X2V4Y2VwdGlvbl9hZ2FpbjsKIAkJICAgIH0KIAkJfQpAQCAtMjExLDYgKzIzNCw5IEBAIF9H TElCQ1hYX0JFR0lOX05BTUVTUEFDRV9WRVJTSU9OCiAJCX0KIAkgICAgICBfTV9kYXRhLT5fTV9n cm91cGluZ19zaXplID0gX19sZW47CiAJICAgIH0KKyNpZm5kZWYgX0dMSUJDWFhfSEFWRV9MT0NB TEVDT05WX0wKKwkgIHVzZWxvY2FsZShfX29sZCk7CisjZW5kaWYKIAl9CiAKICAgICAgIC8vIE5C OiBUaGVyZSBpcyBubyB3YXkgdG8gZXh0YWN0IHRoaXMgaW5mbyBmcm9tIHBvc2l4IGxvY2FsZXMu CmRpZmYgLS1naXQgYS9saWJzdGRjKystdjMvY29uZmlnL2xvY2FsZS9kcmFnb25mbHkvdGltZV9t ZW1iZXJzLmNjIGIvbGlic3RkYysrLXYzL2NvbmZpZy9sb2NhbGUveHBnNy90aW1lX21lbWJlcnMu Y2MKc2ltaWxhcml0eSBpbmRleCA5MiUKcmVuYW1lIGZyb20gbGlic3RkYysrLXYzL2NvbmZpZy9s b2NhbGUvZHJhZ29uZmx5L3RpbWVfbWVtYmVycy5jYwpyZW5hbWUgdG8gbGlic3RkYysrLXYzL2Nv bmZpZy9sb2NhbGUveHBnNy90aW1lX21lbWJlcnMuY2MKaW5kZXggYzhiNjIxYTMyM2YuLmZiMjg3 MzMyYzQ0IDEwMDY0NAotLS0gYS9saWJzdGRjKystdjMvY29uZmlnL2xvY2FsZS9kcmFnb25mbHkv dGltZV9tZW1iZXJzLmNjCisrKyBiL2xpYnN0ZGMrKy12My9jb25maWcvbG9jYWxlL3hwZzcvdGlt ZV9tZW1iZXJzLmNjCkBAIC0xLDQgKzEsNCBAQAotLy8gc3RkOjp0aW1lX2dldCwgc3RkOjp0aW1l X3B1dCBpbXBsZW1lbnRhdGlvbiwgRHJhZ29uRmx5IHZlcnNpb24gLSotIEMrKyAtKi0KKy8vIHN0 ZDo6dGltZV9nZXQsIHN0ZDo6dGltZV9wdXQgaW1wbGVtZW50YXRpb24sIFhQRzcgdmVyc2lvbiAt Ki0gQysrIC0qLQogCiAvLyBDb3B5cmlnaHQgKEMpIDIwMDEtMjAyMSBGcmVlIFNvZnR3YXJlIEZv dW5kYXRpb24sIEluYy4KIC8vCkBAIC0yOSwxMyArMjksMTcgQEAKIAogLy8gV3JpdHRlbiBieSBC ZW5qYW1pbiBLb3NuaWsgPGJrb3pAcmVkaGF0LmNvbT4KIC8vIE1vZGlmaWVkIGZvciBEcmFnb25G bHkgYnkgSm9obiBNYXJpbm8gPGdudWdjY0BtYXJpbm8uc3Q+CisvLyBNb2RpZmllZCBmb3IgWFBH NyBieSBDbMOpbWVudCBDaGlnb3QgPGNsZW1lbnQuY2hpZ290QGF0b3MubmV0PgogCiAjaW5jbHVk ZSA8bG9jYWxlPgogI2luY2x1ZGUgPGN0aW1lPgogI2luY2x1ZGUgPGN3Y2hhcj4KICNpbmNsdWRl IDxzdGRsaWIuaD4KICNpbmNsdWRlIDxsYW5naW5mby5oPgorCisjaWZkZWYgX0dMSUJDWFhfSEFW RV9YTE9DQUxFX0gKICNpbmNsdWRlIDx4bG9jYWxlLmg+CisjZW5kaWYKIAogbmFtZXNwYWNlIHN0 ZCBfR0xJQkNYWF9WSVNJQklMSVRZKGRlZmF1bHQpCiB7CkBAIC00Nyw4ICs1MSwxNCBAQCBfR0xJ QkNYWF9CRUdJTl9OQU1FU1BBQ0VfVkVSU0lPTgogICAgIF9NX3B1dChjaGFyKiBfX3MsIHNpemVf dCBfX21heGxlbiwgY29uc3QgY2hhciogX19mb3JtYXQsCiAJICAgY29uc3QgdG0qIF9fdG0pIGNv bnN0IHRocm93KCkKICAgICB7CisjaWZkZWYgX0dMSUJDWFhfSEFWRV9TVFJGVElNRV9MCiAgICAg ICBjb25zdCBzaXplX3QgX19sZW4gPSBzdHJmdGltZV9sKF9fcywgX19tYXhsZW4sIF9fZm9ybWF0 LCBfX3RtLAogCQkJCSAgICAgIChsb2NhbGVfdClfTV9jX2xvY2FsZV90aW1lcHVuY3QpOworI2Vs c2UKKyAgICAgIF9fY19sb2NhbGUgX19vbGQgPSB1c2Vsb2NhbGUoX01fY19sb2NhbGVfdGltZXB1 bmN0KTsKKyAgICAgIGNvbnN0IHNpemVfdCBfX2xlbiA9IHN0cmZ0aW1lKF9fcywgX19tYXhsZW4s IF9fZm9ybWF0LCBfX3RtKTsKKyAgICAgIHVzZWxvY2FsZShfX29sZCk7CisjZW5kaWYKICAgICAg IC8vIE1ha2Ugc3VyZSBfX3MgaXMgbnVsbCB0ZXJtaW5hdGVkLgogICAgICAgaWYgKF9fbGVuID09 IDApCiAJX19zWzBdID0gJ1wwJzsKQEAgLTE5NiwxNSArMjA2LDI5IEBAIF9HTElCQ1hYX0JFR0lO X05BTUVTUEFDRV9WRVJTSU9OCiAgICAgX01fcHV0KHdjaGFyX3QqIF9fcywgc2l6ZV90IF9fbWF4 bGVuLCBjb25zdCB3Y2hhcl90KiBfX2Zvcm1hdCwKIAkgICBjb25zdCB0bSogX190bSkgY29uc3Qg dGhyb3coKQogICAgIHsKKyNpZmRlZiBfR0xJQkNYWF9IQVZFX1dDU0ZUSU1FX0wKICAgICAgIGNv bnN0IHNpemVfdCBfX2xlbiA9IHdjc2Z0aW1lX2woX19zLCBfX21heGxlbiwgX19mb3JtYXQsIF9f dG0sCiAJCQkJICAgICAgKGxvY2FsZV90KV9NX2NfbG9jYWxlX3RpbWVwdW5jdCk7CisjZWxzZQor ICAgICAgX19jX2xvY2FsZSBfX29sZCA9IHVzZWxvY2FsZShfTV9jX2xvY2FsZV90aW1lcHVuY3Qp OworICAgICAgY29uc3Qgc2l6ZV90IF9fbGVuID0gd2NzZnRpbWUoX19zLCBfX21heGxlbiwgX19m b3JtYXQsIF9fdG0pOworICAgICAgdXNlbG9jYWxlKF9fb2xkKTsKKyNlbmRpZgogICAgICAgLy8g TWFrZSBzdXJlIF9fcyBpcyBudWxsIHRlcm1pbmF0ZWQuCiAgICAgICBpZiAoX19sZW4gPT0gMCkK IAlfX3NbMF0gPSBMJ1wwJzsKICAgICB9CiAKKyNpZmRlZiBfR0xJQkNYWF9IQVZFX01CU1RPV0NT X0wKKyNkZWZpbmUgTUJTVE9XQ1NfTChXQ1NUUklORywgU1RSSU5HLCBOVU1CRVIsIExPQ0FMRSkJ XAorICBtYnN0b3djc19sIChXQ1NUUklORywgU1RSSU5HLCBOVU1CRVIsIExPQ0FMRSk7CisjZWxz ZQorICAvLyAidXNlbG9jYWxlIiBtdXN0IGJlIGNhbGxlZCBiZWZvcmUgdXNpbmcgdGhpcyBtYWNy by4KKyNkZWZpbmUgTUJTVE9XQ1NfTChXQ1NUUklORywgU1RSSU5HLCBOVU1CRVIsIExPQ0FMRSkJ XAorICBtYnN0b3djcyAoV0NTVFJJTkcsIFNUUklORywgTlVNQkVSKTsKKyNlbmRpZgogI2RlZmlu ZSBXSURFX0xBTkdJTkZPKE0sRk1UKSBcCi0JZm10bGVuID0gbWJzdG93Y3NfbCAoaG9sZGVyLCBu bF9sYW5naW5mb19sKEZNVCwgKGxvY2FsZV90KV9fY2xvYyksIFwKKwlmbXRsZW4gPSBNQlNUT1dD U19MIChob2xkZXIsIG5sX2xhbmdpbmZvX2woRk1ULCAobG9jYWxlX3QpX19jbG9jKSwgXAogCQkx MjgsIChsb2NhbGVfdClfX2Nsb2MpOyBcCiAJbGFuZ3N0cmluZyA9IG5ldyB3Y2hhcl90W2ZtdGxl biArIDFdOyBcCiAJd2NzbmNweSAobGFuZ3N0cmluZywgaG9sZGVyLCBmbXRsZW4pOyBcCkBAIC0y ODEsNiArMzA1LDkgQEAgX0dMSUJDWFhfQkVHSU5fTkFNRVNQQUNFX1ZFUlNJT04KIAl9CiAgICAg ICBlbHNlCiAJeworI2lmbmRlZiBfR0xJQkNYWF9IQVZFX01CU1RPV0NTX0wKKwkgIF9fY19sb2Nh bGUgX19vbGQgPSB1c2Vsb2NhbGUoX19jbG9jKTsKKyNlbmRpZgogCSAgd2NoYXJfdCAqbGFuZ3N0 cmluZyA9IDA7CiAJICB3Y2hhcl90IGhvbGRlclsxMjhdOwogCSAgc2l6ZV90IGZtdGxlbjsKQEAg LTM0Miw2ICszNjksOSBAQCBfR0xJQkNYWF9CRUdJTl9OQU1FU1BBQ0VfVkVSU0lPTgogCSAgV0lE RV9MQU5HSU5GTyhfTV9hbW9udGgxMCwgQUJNT05fMTApCiAJICBXSURFX0xBTkdJTkZPKF9NX2Ft b250aDExLCBBQk1PTl8xMSkKIAkgIFdJREVfTEFOR0lORk8oX01fYW1vbnRoMTIsIEFCTU9OXzEy KQorI2lmbmRlZiBfR0xJQkNYWF9IQVZFX01CU1RPV0NTX0wKKwkgIHVzZWxvY2FsZShfX29sZCk7 CisjZW5kaWYKIAl9CiAgICAgfQogCmRpZmYgLS1naXQgYS9saWJzdGRjKystdjMvY29uZmlnL2xv Y2FsZS9kcmFnb25mbHkvdGltZV9tZW1iZXJzLmggYi9saWJzdGRjKystdjMvY29uZmlnL2xvY2Fs ZS94cGc3L3RpbWVfbWVtYmVycy5oCnNpbWlsYXJpdHkgaW5kZXggOTclCnJlbmFtZSBmcm9tIGxp YnN0ZGMrKy12My9jb25maWcvbG9jYWxlL2RyYWdvbmZseS90aW1lX21lbWJlcnMuaApyZW5hbWUg dG8gbGlic3RkYysrLXYzL2NvbmZpZy9sb2NhbGUveHBnNy90aW1lX21lbWJlcnMuaAppbmRleCAw NGI3ZTk5NWQ2Zi4uMTQ1N2Q0Y2NlMzIgMTAwNjQ0Ci0tLSBhL2xpYnN0ZGMrKy12My9jb25maWcv bG9jYWxlL2RyYWdvbmZseS90aW1lX21lbWJlcnMuaAorKysgYi9saWJzdGRjKystdjMvY29uZmln L2xvY2FsZS94cGc3L3RpbWVfbWVtYmVycy5oCkBAIC0xLDQgKzEsNCBAQAotLy8gc3RkOjp0aW1l X2dldCwgc3RkOjp0aW1lX3B1dCBpbXBsZW1lbnRhdGlvbiwgRHJhZ29uRmx5IHZlcnNpb24gLSot IEMrKyAtKi0KKy8vIHN0ZDo6dGltZV9nZXQsIHN0ZDo6dGltZV9wdXQgaW1wbGVtZW50YXRpb24s IFhQRzcgdmVyc2lvbiAtKi0gQysrIC0qLQogCiAvLyBDb3B5cmlnaHQgKEMpIDIwMTUtMjAyMSBG cmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KIC8vCmRpZmYgLS1naXQgYS9saWJzdGRjKyst djMvY29uZmlnL29zL2FpeC9jdHlwZV9jb25maWd1cmVfY2hhci5jYyBiL2xpYnN0ZGMrKy12My9j b25maWcvb3MvYWl4L2N0eXBlX2NvbmZpZ3VyZV9jaGFyLmNjCmluZGV4IGIxMmMwYmQ0MzVjLi45 Y2JmZDAzMTdiNSAxMDA2NDQKLS0tIGEvbGlic3RkYysrLXYzL2NvbmZpZy9vcy9haXgvY3R5cGVf Y29uZmlndXJlX2NoYXIuY2MKKysrIGIvbGlic3RkYysrLXYzL2NvbmZpZy9vcy9haXgvY3R5cGVf Y29uZmlndXJlX2NoYXIuY2MKQEAgLTQyLDI4ICs0MiwyOCBAQCBfR0xJQkNYWF9CRUdJTl9OQU1F U1BBQ0VfVkVSU0lPTgogICBjdHlwZTxjaGFyPjo6Y2xhc3NpY190YWJsZSgpIHRocm93KCkKICAg eyByZXR1cm4gMDsgfQogCi0gIGN0eXBlPGNoYXI+OjpjdHlwZShfX2NfbG9jYWxlLCBjb25zdCBt YXNrKiBfX3RhYmxlLCBib29sIF9fZGVsLAorICBjdHlwZTxjaGFyPjo6Y3R5cGUoX19jX2xvY2Fs ZSBfX2Nsb2MsIGNvbnN0IG1hc2sqIF9fdGFibGUsIGJvb2wgX19kZWwsCiAJCSAgICAgc2l6ZV90 IF9fcmVmcykKLSAgOiBmYWNldChfX3JlZnMpLCBfTV9kZWwoX190YWJsZSAhPSAwICYmIF9fZGVs KSwKLSAgX01fdG91cHBlcihOVUxMKSwgX01fdG9sb3dlcihOVUxMKSwKLSAgX01fdGFibGUoX190 YWJsZSA/IF9fdGFibGUgOiBjbGFzc2ljX3RhYmxlKCkpCi0gIHsKLSAgICBtZW1zZXQoX01fd2lk ZW4sIDAsIHNpemVvZihfTV93aWRlbikpOwotICAgIF9NX3dpZGVuX29rID0gMDsKLSAgICBtZW1z ZXQoX01fbmFycm93LCAwLCBzaXplb2YoX01fbmFycm93KSk7Ci0gICAgX01fbmFycm93X29rID0g MDsKLSAgfQorICAgIDogZmFjZXQoX19yZWZzKSwgX01fY19sb2NhbGVfY3R5cGUoX1NfY2xvbmVf Y19sb2NhbGUoX19jbG9jKSksCisgICAgX01fZGVsKF9fdGFibGUgIT0gMCAmJiBfX2RlbCksCisg ICAgX01fdG91cHBlcihOVUxMKSwgX01fdG9sb3dlcihOVUxMKSwKKyAgICBfTV90YWJsZShfX3Rh YmxlID8gX190YWJsZSA6IGNsYXNzaWNfdGFibGUoKSksCisgICAgX01fd2lkZW5fb2soMCksIF9N X25hcnJvd19vaygwKQorICAgIHsKKyAgICAgIG1lbXNldChfTV93aWRlbiwgMCwgc2l6ZW9mKF9N X3dpZGVuKSk7CisgICAgICBtZW1zZXQoX01fbmFycm93LCAwLCBzaXplb2YoX01fbmFycm93KSk7 CisgICAgfQogCiAgIGN0eXBlPGNoYXI+OjpjdHlwZShjb25zdCBtYXNrKiBfX3RhYmxlLCBib29s IF9fZGVsLCBzaXplX3QgX19yZWZzKQotICA6IGZhY2V0KF9fcmVmcyksIF9NX2RlbChfX3RhYmxl ICE9IDAgJiYgX19kZWwpLAotICBfTV90b3VwcGVyKE5VTEwpLCBfTV90b2xvd2VyKE5VTEwpLAot ICBfTV90YWJsZShfX3RhYmxlID8gX190YWJsZSA6IGNsYXNzaWNfdGFibGUoKSkKLSAgewotICAg IG1lbXNldChfTV93aWRlbiwgMCwgc2l6ZW9mKF9NX3dpZGVuKSk7Ci0gICAgX01fd2lkZW5fb2sg PSAwOwotICAgIG1lbXNldChfTV9uYXJyb3csIDAsIHNpemVvZihfTV9uYXJyb3cpKTsKLSAgICBf TV9uYXJyb3dfb2sgPSAwOwotICB9CisgICAgOiBmYWNldChfX3JlZnMpLCBfTV9jX2xvY2FsZV9j dHlwZShfU19nZXRfY19sb2NhbGUoKSksCisgICAgX01fZGVsKF9fdGFibGUgIT0gMCAmJiBfX2Rl bCksCisgICAgX01fdG91cHBlcihOVUxMKSwgX01fdG9sb3dlcihOVUxMKSwKKyAgICBfTV90YWJs ZShfX3RhYmxlID8gX190YWJsZSA6IGNsYXNzaWNfdGFibGUoKSksCisgICAgX01fd2lkZW5fb2so MCksIF9NX25hcnJvd19vaygwKQorICAgIHsKKyAgICAgIG1lbXNldChfTV93aWRlbiwgMCwgc2l6 ZW9mKF9NX3dpZGVuKSk7CisgICAgICBtZW1zZXQoX01fbmFycm93LCAwLCBzaXplb2YoX01fbmFy cm93KSk7CisgICAgfQogCiAgIGNoYXIKICAgY3R5cGU8Y2hhcj46OmRvX3RvdXBwZXIoY2hhciBf X2MpIGNvbnN0CmRpZmYgLS1naXQgYS9saWJzdGRjKystdjMvY29uZmlnL29zL2dudS1saW51eC9j dHlwZV9jb25maWd1cmVfY2hhci5jYyBiL2xpYnN0ZGMrKy12My9jb25maWcvb3MvZ251LWxpbnV4 L2N0eXBlX2NvbmZpZ3VyZV9jaGFyLmNjCmluZGV4IGQ2YWI3MzE3NWI4Li5kOTA5ZmVlZmNhMyAx MDA2NDQKLS0tIGEvbGlic3RkYysrLXYzL2NvbmZpZy9vcy9nbnUtbGludXgvY3R5cGVfY29uZmln dXJlX2NoYXIuY2MKKysrIGIvbGlic3RkYysrLXYzL2NvbmZpZy9vcy9nbnUtbGludXgvY3R5cGVf Y29uZmlndXJlX2NoYXIuY2MKQEAgLTM4LDcgKzM4LDcgQEAgX0dMSUJDWFhfQkVHSU5fTkFNRVNQ QUNFX1ZFUlNJT04KIAogLy8gSW5mb3JtYXRpb24gYXMgZ2xlYW5lZCBmcm9tIC91c3IvaW5jbHVk ZS9jdHlwZS5oCiAKLSNpZiBfR0xJQkNYWF9DX0xPQ0FMRV9HTlUKKyNpZiBfR0xJQkNYWF9DX0xP Q0FMRV9HTlUgfHwgX0dMSUJDWFhfQ19MT0NBTEVfWFBHNwogICBjb25zdCBjdHlwZV9iYXNlOjpt YXNrKgogICBjdHlwZTxjaGFyPjo6Y2xhc3NpY190YWJsZSgpIHRocm93KCkKICAgeyByZXR1cm4g X1NfZ2V0X2NfbG9jYWxlKCktPl9fY3R5cGVfYjsgfQpAQCAtNzAsNyArNzAsNyBAQCBfR0xJQkNY WF9CRUdJTl9OQU1FU1BBQ0VfVkVSU0lPTgogICB9CiAjZW5kaWYKIAotI2lmIF9HTElCQ1hYX0Nf TE9DQUxFX0dOVQorI2lmIF9HTElCQ1hYX0NfTE9DQUxFX0dOVSB8fCBfR0xJQkNYWF9DX0xPQ0FM RV9YUEc3CiAgIGN0eXBlPGNoYXI+OjpjdHlwZShfX2NfbG9jYWxlIF9fY2xvYywgY29uc3QgbWFz ayogX190YWJsZSwgYm9vbCBfX2RlbCwKIAkJICAgICBzaXplX3QgX19yZWZzKQogICA6IGZhY2V0 KF9fcmVmcyksIF9NX2NfbG9jYWxlX2N0eXBlKF9TX2Nsb25lX2NfbG9jYWxlKF9fY2xvYykpLApA QCAtMTE3LDcgKzExNyw3IEBAIF9HTElCQ1hYX0JFR0lOX05BTUVTUEFDRV9WRVJTSU9OCiAgIH0K ICNlbmRpZgogCi0jaWYgX0dMSUJDWFhfQ19MT0NBTEVfR05VCisjaWYgX0dMSUJDWFhfQ19MT0NB TEVfR05VIHx8IF9HTElCQ1hYX0NfTE9DQUxFX1hQRzcKICAgY3R5cGU8Y2hhcj46OmN0eXBlKGNv bnN0IG1hc2sqIF9fdGFibGUsIGJvb2wgX19kZWwsIHNpemVfdCBfX3JlZnMpCiAgIDogZmFjZXQo X19yZWZzKSwgX01fY19sb2NhbGVfY3R5cGUoX1NfZ2V0X2NfbG9jYWxlKCkpLAogICBfTV9kZWwo X190YWJsZSAhPSAwICYmIF9fZGVsKSwKZGlmZiAtLWdpdCBhL2xpYnN0ZGMrKy12My9zcmMvYysr OTgvbG9jYWxlX2luaXQuY2MgYi9saWJzdGRjKystdjMvc3JjL2MrKzk4L2xvY2FsZV9pbml0LmNj CmluZGV4IDRiZWM1MGJmNTk1Li5kY2VhNzk5YWVhZiAxMDA2NDQKLS0tIGEvbGlic3RkYysrLXYz L3NyYy9jKys5OC9sb2NhbGVfaW5pdC5jYworKysgYi9saWJzdGRjKystdjMvc3JjL2MrKzk4L2xv Y2FsZV9pbml0LmNjCkBAIC0yOTYsNyArMjk2LDE5IEBAIF9HTElCQ1hYX0JFR0lOX05BTUVTUEFD RV9WRVJTSU9OCiAgICAgICBfU19nbG9iYWwgPSBfX290aGVyLl9NX2ltcGw7CiAgICAgICBjb25z dCBzdHJpbmcgX19vdGhlcl9uYW1lID0gX19vdGhlci5uYW1lKCk7CiAgICAgICBpZiAoX19vdGhl cl9uYW1lICE9ICIqIikKKyNpZmRlZiBfR0xJQkNYWF9DX0xPQ0FMRV9HTlUKIAlzZXRsb2NhbGUo TENfQUxMLCBfX290aGVyX25hbWUuY19zdHIoKSk7CisjZWxzZQorICAgICAgICB7CisJICAvLyBJ biBnZW5lcmFsLCBwYXNzaW5nICJMQ19DVFlQRT1DO0xDX05VTUVSSVFVRT1DOy4uLiIgYXMKKwkg IC8vIGFyZ3VtZW50IHRvIHNldGxvY2FsZSBpc24ndCBhbGxvd2VkLgorCSAgaWYgKF9fb3RoZXIu X01faW1wbC0+X01fY2hlY2tfc2FtZV9uYW1lKCkpCisJICAgIHNldGxvY2FsZShMQ19BTEwsIF9f b3RoZXJfbmFtZS5jX3N0cigpKTsKKwkgIGVsc2UKKwkgICAgZm9yIChzaXplX3QgX19pID0gMDsg X19pIDwgX19vdGhlci5fU19jYXRlZ29yaWVzX3NpemU7ICsrX19pKQorCSAgICAgIHNldGxvY2Fs ZShfX2ksIF9fb3RoZXIuX01faW1wbC0+X01fbmFtZXNbX19pXSk7CisJfQorI2VuZGlmCiAgICAg fQogCiAgICAgLy8gUmVmZXJlbmNlIGNvdW50IHNhbml0eSBjaGVjazogb25lIHJlZmVyZW5jZSBy ZW1vdmVkIGZvciB0aGUKZGlmZiAtLWdpdCBhL2xpYnN0ZGMrKy12My90ZXN0c3VpdGUvMjJfbG9j YWxlL2NvZGVjdnQvaW4vd2NoYXJfdC8yLmNjIGIvbGlic3RkYysrLXYzL3Rlc3RzdWl0ZS8yMl9s b2NhbGUvY29kZWN2dC9pbi93Y2hhcl90LzIuY2MKaW5kZXggZWEwYzQzYTIwZmMuLjcxZTE5ODg0 M2QyIDEwMDY0NAotLS0gYS9saWJzdGRjKystdjMvdGVzdHN1aXRlLzIyX2xvY2FsZS9jb2RlY3Z0 L2luL3djaGFyX3QvMi5jYworKysgYi9saWJzdGRjKystdjMvdGVzdHN1aXRlLzIyX2xvY2FsZS9j b2RlY3Z0L2luL3djaGFyX3QvMi5jYwpAQCAtMSw0ICsxLDUgQEAKIC8vIHsgZGctcmVxdWlyZS1u YW1lZGxvY2FsZSAiZW5fVVMuSVNPODg1OS0xIiB9CisvLyB7IGRnLWV4Y2Vzcy1lcnJvcnMgIndj aGFyX3Qgb3ZlcmZsb3ciIHsgeGZhaWwgeyB3Y2hhcl90X2NoYXIxNl90X2NvbXBhdGlibGUgfSB9 IH0KIAogLy8gMjAwMy0wMi0wNiAgUGV0dXIgUnVub2xmc3NvbiAgPHBldHVycjAyQHJ1LmlzPgog CmRpZmYgLS1naXQgYS9saWJzdGRjKystdjMvdGVzdHN1aXRlLzIyX2xvY2FsZS9jb2RlY3Z0L2lu L3djaGFyX3QvMy5jYyBiL2xpYnN0ZGMrKy12My90ZXN0c3VpdGUvMjJfbG9jYWxlL2NvZGVjdnQv aW4vd2NoYXJfdC8zLmNjCmluZGV4IDU0MjA2ZjgwMDBhLi5mZmRlOTQxMDhhMSAxMDA2NDQKLS0t IGEvbGlic3RkYysrLXYzL3Rlc3RzdWl0ZS8yMl9sb2NhbGUvY29kZWN2dC9pbi93Y2hhcl90LzMu Y2MKKysrIGIvbGlic3RkYysrLXYzL3Rlc3RzdWl0ZS8yMl9sb2NhbGUvY29kZWN2dC9pbi93Y2hh cl90LzMuY2MKQEAgLTEsNCArMSw1IEBACiAvLyB7IGRnLXJlcXVpcmUtbmFtZWRsb2NhbGUgImVu X1VTLklTTy04ODU5LTE1IiB9CisvLyB7IGRnLWV4Y2Vzcy1lcnJvcnMgIndjaGFyX3Qgb3ZlcmZs b3ciIHsgeGZhaWwgeyB3Y2hhcl90X2NoYXIxNl90X2NvbXBhdGlibGUgfSB9IH0KIAogLy8gMjAw My0wMi0wNiAgUGV0dXIgUnVub2xmc3NvbiAgPHBldHVycjAyQHJ1LmlzPgogCmRpZmYgLS1naXQg YS9saWJzdGRjKystdjMvdGVzdHN1aXRlLzIyX2xvY2FsZS9jb2RlY3Z0L2luL3djaGFyX3QvNC5j YyBiL2xpYnN0ZGMrKy12My90ZXN0c3VpdGUvMjJfbG9jYWxlL2NvZGVjdnQvaW4vd2NoYXJfdC80 LmNjCmluZGV4IGYyN2Q2NjdkYWY1Li45MTkzYjU5ODE2MiAxMDA2NDQKLS0tIGEvbGlic3RkYysr LXYzL3Rlc3RzdWl0ZS8yMl9sb2NhbGUvY29kZWN2dC9pbi93Y2hhcl90LzQuY2MKKysrIGIvbGli c3RkYysrLXYzL3Rlc3RzdWl0ZS8yMl9sb2NhbGUvY29kZWN2dC9pbi93Y2hhcl90LzQuY2MKQEAg LTEsNCArMSw1IEBACiAvLyB7IGRnLXJlcXVpcmUtbmFtZWRsb2NhbGUgImVuX1VTLlVURi04IiB9 CisvLyB7IGRnLWV4Y2Vzcy1lcnJvcnMgIndjaGFyX3Qgb3ZlcmZsb3ciIHsgeGZhaWwgeyB3Y2hh cl90X2NoYXIxNl90X2NvbXBhdGlibGUgfSB9IH0KIAogLy8gMjAwMy0wMi0wNiAgUGV0dXIgUnVu b2xmc3NvbiAgPHBldHVycjAyQHJ1LmlzPgogCmRpZmYgLS1naXQgYS9saWJzdGRjKystdjMvdGVz dHN1aXRlLzIyX2xvY2FsZS9jb2RlY3Z0L2luL3djaGFyX3QvNy5jYyBiL2xpYnN0ZGMrKy12My90 ZXN0c3VpdGUvMjJfbG9jYWxlL2NvZGVjdnQvaW4vd2NoYXJfdC83LmNjCmluZGV4IGI1MzgzYWY2 NTdjLi5lNGI0MjhjOWZjNiAxMDA2NDQKLS0tIGEvbGlic3RkYysrLXYzL3Rlc3RzdWl0ZS8yMl9s b2NhbGUvY29kZWN2dC9pbi93Y2hhcl90LzcuY2MKKysrIGIvbGlic3RkYysrLXYzL3Rlc3RzdWl0 ZS8yMl9sb2NhbGUvY29kZWN2dC9pbi93Y2hhcl90LzcuY2MKQEAgLTEsNCArMSw1IEBACiAvLyB7 IGRnLXJlcXVpcmUtbmFtZWRsb2NhbGUgImVuX1VTLlVURi04IiB9CisvLyB7IGRnLWV4Y2Vzcy1l cnJvcnMgIndjaGFyX3Qgb3ZlcmZsb3ciIHsgeGZhaWwgeyB3Y2hhcl90X2NoYXIxNl90X2NvbXBh dGlibGUgfSB9IH0KIAogLy8gMjAwMy0wMi0wNiAgUGV0dXIgUnVub2xmc3NvbiAgPHBldHVycjAy QHJ1LmlzPgogCmRpZmYgLS1naXQgYS9saWJzdGRjKystdjMvdGVzdHN1aXRlLzIyX2xvY2FsZS9j b2RlY3Z0L2luL3djaGFyX3QvOC5jYyBiL2xpYnN0ZGMrKy12My90ZXN0c3VpdGUvMjJfbG9jYWxl L2NvZGVjdnQvaW4vd2NoYXJfdC84LmNjCmluZGV4IDFkNDBhMTcyM2E0Li5mZmJkODU2NjQwYiAx MDA2NDQKLS0tIGEvbGlic3RkYysrLXYzL3Rlc3RzdWl0ZS8yMl9sb2NhbGUvY29kZWN2dC9pbi93 Y2hhcl90LzguY2MKKysrIGIvbGlic3RkYysrLXYzL3Rlc3RzdWl0ZS8yMl9sb2NhbGUvY29kZWN2 dC9pbi93Y2hhcl90LzguY2MKQEAgLTEsNCArMSw1IEBACiAvLyB7IGRnLXJlcXVpcmUtbmFtZWRs b2NhbGUgImVuX1VTLlVURi04IiB9CisvLyB7IGRnLWV4Y2Vzcy1lcnJvcnMgIndjaGFyX3Qgb3Zl cmZsb3ciIHsgeGZhaWwgeyB3Y2hhcl90X2NoYXIxNl90X2NvbXBhdGlibGUgfSB9IH0KIAogLy8g MjAwMy0wMi0wNiAgUGV0dXIgUnVub2xmc3NvbiAgPHBldHVycjAyQHJ1LmlzPgogCmRpZmYgLS1n aXQgYS9saWJzdGRjKystdjMvdGVzdHN1aXRlLzIyX2xvY2FsZS9jb2RlY3Z0L2luL3djaGFyX3Qv OS5jYyBiL2xpYnN0ZGMrKy12My90ZXN0c3VpdGUvMjJfbG9jYWxlL2NvZGVjdnQvaW4vd2NoYXJf dC85LmNjCmluZGV4IDk4MDFlMDg1NjgzLi41ZTQyYTM3MzU0NyAxMDA2NDQKLS0tIGEvbGlic3Rk YysrLXYzL3Rlc3RzdWl0ZS8yMl9sb2NhbGUvY29kZWN2dC9pbi93Y2hhcl90LzkuY2MKKysrIGIv bGlic3RkYysrLXYzL3Rlc3RzdWl0ZS8yMl9sb2NhbGUvY29kZWN2dC9pbi93Y2hhcl90LzkuY2MK QEAgLTEsNCArMSw1IEBACiAvLyB7IGRnLXJlcXVpcmUtbmFtZWRsb2NhbGUgImVuX1VTLlVURi04 IiB9CisvLyB7IGRnLWV4Y2Vzcy1lcnJvcnMgIndjaGFyX3Qgb3ZlcmZsb3ciIHsgeGZhaWwgeyB3 Y2hhcl90X2NoYXIxNl90X2NvbXBhdGlibGUgfSB9IH0KIAogLy8gMjAwMy0wMi0wNiAgUGV0dXIg UnVub2xmc3NvbiAgPHBldHVycjAyQHJ1LmlzPgogCmRpZmYgLS1naXQgYS9saWJzdGRjKystdjMv dGVzdHN1aXRlLzIyX2xvY2FsZS9jb2RlY3Z0L2xlbmd0aC93Y2hhcl90LzQuY2MgYi9saWJzdGRj KystdjMvdGVzdHN1aXRlLzIyX2xvY2FsZS9jb2RlY3Z0L2xlbmd0aC93Y2hhcl90LzQuY2MKaW5k ZXggZjcwZDBmYzZjNTguLjAxYmYxYTU3OTE3IDEwMDY0NAotLS0gYS9saWJzdGRjKystdjMvdGVz dHN1aXRlLzIyX2xvY2FsZS9jb2RlY3Z0L2xlbmd0aC93Y2hhcl90LzQuY2MKKysrIGIvbGlic3Rk YysrLXYzL3Rlc3RzdWl0ZS8yMl9sb2NhbGUvY29kZWN2dC9sZW5ndGgvd2NoYXJfdC80LmNjCkBA IC0xLDQgKzEsNSBAQAogLy8geyBkZy1yZXF1aXJlLW5hbWVkbG9jYWxlICJlbl9VUy5VVEYtOCIg fQorLy8geyBkZy1leGNlc3MtZXJyb3JzICJ3Y2hhcl90IG92ZXJmbG93IiB7IHhmYWlsIHsgd2No YXJfdF9jaGFyMTZfdF9jb21wYXRpYmxlIH0gfSB9CiAKIC8vIDIwMDMtMDItMDYgIFBldHVyIFJ1 bm9sZnNzb24gIDxwZXR1cnIwMkBydS5pcz4KIApkaWZmIC0tZ2l0IGEvbGlic3RkYysrLXYzL3Rl c3RzdWl0ZS8yMl9sb2NhbGUvY29kZWN2dC9vdXQvd2NoYXJfdC80LmNjIGIvbGlic3RkYysrLXYz L3Rlc3RzdWl0ZS8yMl9sb2NhbGUvY29kZWN2dC9vdXQvd2NoYXJfdC80LmNjCmluZGV4IDVjZGUw YjY2MzMxLi4yNWRmYTAyYjk5ZCAxMDA2NDQKLS0tIGEvbGlic3RkYysrLXYzL3Rlc3RzdWl0ZS8y Ml9sb2NhbGUvY29kZWN2dC9vdXQvd2NoYXJfdC80LmNjCisrKyBiL2xpYnN0ZGMrKy12My90ZXN0 c3VpdGUvMjJfbG9jYWxlL2NvZGVjdnQvb3V0L3djaGFyX3QvNC5jYwpAQCAtMSw0ICsxLDUgQEAK IC8vIHsgZGctcmVxdWlyZS1uYW1lZGxvY2FsZSAiZW5fVVMuVVRGLTgiIH0KKy8vIHsgZGctZXhj ZXNzLWVycm9ycyAid2NoYXJfdCBvdmVyZmxvdyIgeyB4ZmFpbCB7IHdjaGFyX3RfY2hhcjE2X3Rf Y29tcGF0aWJsZSB9IH0gfQogCiAvLyAyMDAzLTAyLTA2ICBQZXR1ciBSdW5vbGZzc29uICA8cGV0 dXJyMDJAcnUuaXM+CiAKZGlmZiAtLWdpdCBhL2xpYnN0ZGMrKy12My90ZXN0c3VpdGUvMjJfbG9j YWxlL2NvZGVjdnQvdW5zaGlmdC93Y2hhcl90LzQuY2MgYi9saWJzdGRjKystdjMvdGVzdHN1aXRl LzIyX2xvY2FsZS9jb2RlY3Z0L3Vuc2hpZnQvd2NoYXJfdC80LmNjCmluZGV4IDFlNGNlNWE4ZTNl Li41ZDAwYTYyYzlhOSAxMDA2NDQKLS0tIGEvbGlic3RkYysrLXYzL3Rlc3RzdWl0ZS8yMl9sb2Nh bGUvY29kZWN2dC91bnNoaWZ0L3djaGFyX3QvNC5jYworKysgYi9saWJzdGRjKystdjMvdGVzdHN1 aXRlLzIyX2xvY2FsZS9jb2RlY3Z0L3Vuc2hpZnQvd2NoYXJfdC80LmNjCkBAIC0xLDQgKzEsNSBA QAogLy8geyBkZy1yZXF1aXJlLW5hbWVkbG9jYWxlICJlbl9VUy5VVEYtOCIgfQorLy8geyBkZy1l eGNlc3MtZXJyb3JzICJ3Y2hhcl90IG92ZXJmbG93IiB7IHhmYWlsIHsgd2NoYXJfdF9jaGFyMTZf dF9jb21wYXRpYmxlIH0gfSB9CiAKIC8vIDIwMDMtMDItMDYgIFBldHVyIFJ1bm9sZnNzb24gIDxw ZXR1cnIwMkBydS5pcz4KIApkaWZmIC0tZ2l0IGEvbGlic3RkYysrLXYzL3Rlc3RzdWl0ZS8yMl9s b2NhbGUvY3R5cGUvaXMvd2NoYXJfdC8yLmNjIGIvbGlic3RkYysrLXYzL3Rlc3RzdWl0ZS8yMl9s b2NhbGUvY3R5cGUvaXMvd2NoYXJfdC8yLmNjCmluZGV4IDUyNTRjOTY3MDE4Li4xZjI4NjllNDNm NiAxMDA2NDQKLS0tIGEvbGlic3RkYysrLXYzL3Rlc3RzdWl0ZS8yMl9sb2NhbGUvY3R5cGUvaXMv d2NoYXJfdC8yLmNjCisrKyBiL2xpYnN0ZGMrKy12My90ZXN0c3VpdGUvMjJfbG9jYWxlL2N0eXBl L2lzL3djaGFyX3QvMi5jYwpAQCAtMSw1ICsxLDUgQEAKLS8vIHsgZGctZG8gcnVuIHsgeGZhaWwg eyAhIHsgKi0qLWxpbnV4KiAqLSotZ251KiB9IH0gfSB9CiAvLyB7IGRnLXJlcXVpcmUtbmFtZWRs b2NhbGUgImRlX0RFLklTTzg4NTktMTUiIH0KKy8vIHsgZGctcmVxdWlyZS1sb2NhbGVtb2RlbCAi Z251IHhwZzciIH0KIAogLy8gQ29weXJpZ2h0IChDKSAyMDAwLTIwMjEgRnJlZSBTb2Z0d2FyZSBG b3VuZGF0aW9uLCBJbmMuCiAvLwpkaWZmIC0tZ2l0IGEvbGlic3RkYysrLXYzL3Rlc3RzdWl0ZS8y Ml9sb2NhbGUvbG9jYWxlL2NvbnMvMjkyMTcuY2MgYi9saWJzdGRjKystdjMvdGVzdHN1aXRlLzIy X2xvY2FsZS9sb2NhbGUvY29ucy8yOTIxNy5jYwppbmRleCBhNjBlOThlZWU3Ni4uMGNmY2MwNDJi MWMgMTAwNjQ0Ci0tLSBhL2xpYnN0ZGMrKy12My90ZXN0c3VpdGUvMjJfbG9jYWxlL2xvY2FsZS9j b25zLzI5MjE3LmNjCisrKyBiL2xpYnN0ZGMrKy12My90ZXN0c3VpdGUvMjJfbG9jYWxlL2xvY2Fs ZS9jb25zLzI5MjE3LmNjCkBAIC0xLDQgKzEsNSBAQAogLy8geyBkZy1yZXF1aXJlLW5hbWVkbG9j YWxlICJlbl9VUy5VVEYtOCIgfQorLy8geyBkZy1yZXF1aXJlLWxvY2FsZW1vZGVsICJnbnUiIH0K IAogLy8gQ29weXJpZ2h0IChDKSAyMDA2LTIwMjEgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJ bmMuCiAvLwpkaWZmIC0tZ2l0IGEvbGlic3RkYysrLXYzL3Rlc3RzdWl0ZS8yMl9sb2NhbGUvbG9j YWxlL2NvbnMvMzgzNjguY2MgYi9saWJzdGRjKystdjMvdGVzdHN1aXRlLzIyX2xvY2FsZS9sb2Nh bGUvY29ucy8zODM2OC5jYwppbmRleCA4ZDhmMDdmMDFjYy4uOTRmY2ZlM2FjOGIgMTAwNjQ0Ci0t LSBhL2xpYnN0ZGMrKy12My90ZXN0c3VpdGUvMjJfbG9jYWxlL2xvY2FsZS9jb25zLzM4MzY4LmNj CisrKyBiL2xpYnN0ZGMrKy12My90ZXN0c3VpdGUvMjJfbG9jYWxlL2xvY2FsZS9jb25zLzM4MzY4 LmNjCkBAIC0xLDQgKzEsNSBAQAogLy8geyBkZy1yZXF1aXJlLW5hbWVkbG9jYWxlICJlbl9VUy5J U084ODU5LTEiIH0KKy8vIHsgZGctcmVxdWlyZS1sb2NhbGVtb2RlbCAiZ251IiB9CiAKIC8vIENv cHlyaWdodCAoQykgMjAwOC0yMDIxIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgogLy8K ZGlmZiAtLWdpdCBhL2xpYnN0ZGMrKy12My90ZXN0c3VpdGUvMjJfbG9jYWxlL2xvY2FsZS9jb25z LzQwMTg0LmNjIGIvbGlic3RkYysrLXYzL3Rlc3RzdWl0ZS8yMl9sb2NhbGUvbG9jYWxlL2NvbnMv NDAxODQuY2MKaW5kZXggNmE4ZWZmODczN2IuLmQ0MWVlMTI2MDNiIDEwMDY0NAotLS0gYS9saWJz dGRjKystdjMvdGVzdHN1aXRlLzIyX2xvY2FsZS9sb2NhbGUvY29ucy80MDE4NC5jYworKysgYi9s aWJzdGRjKystdjMvdGVzdHN1aXRlLzIyX2xvY2FsZS9sb2NhbGUvY29ucy80MDE4NC5jYwpAQCAt MSw0ICsxLDUgQEAKIC8vIHsgZGctcmVxdWlyZS1uYW1lZGxvY2FsZSAiamFfSlAuZXVjSlAiIH0K Ky8vIHsgZGctcmVxdWlyZS1sb2NhbGVtb2RlbCAiZ251IiB9CiAKIC8vIENvcHlyaWdodCAoQykg MjAwOS0yMDIxIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgogLy8KZGlmZiAtLWdpdCBh L2xpYnN0ZGMrKy12My90ZXN0c3VpdGUvMjJfbG9jYWxlL2xvY2FsZS9jb25zLzUuY2MgYi9saWJz dGRjKystdjMvdGVzdHN1aXRlLzIyX2xvY2FsZS9sb2NhbGUvY29ucy81LmNjCmluZGV4IDY2Yjkz OWUyMjI4Li45OWFiZjU2NmI4MSAxMDA2NDQKLS0tIGEvbGlic3RkYysrLXYzL3Rlc3RzdWl0ZS8y Ml9sb2NhbGUvbG9jYWxlL2NvbnMvNS5jYworKysgYi9saWJzdGRjKystdjMvdGVzdHN1aXRlLzIy X2xvY2FsZS9sb2NhbGUvY29ucy81LmNjCkBAIC0zLDYgKzMsNyBAQAogLy8geyBkZy1yZXF1aXJl LW5hbWVkbG9jYWxlICJlc19NWCIgfQogLy8geyBkZy1yZXF1aXJlLW5hbWVkbG9jYWxlICJmcl9G UiIgfQogLy8geyBkZy1yZXF1aXJlLW5hbWVkbG9jYWxlICJpdF9JVCIgfQorLy8geyBkZy1yZXF1 aXJlLWxvY2FsZW1vZGVsICJnbnUiIH0KIAogLy8gMjAwMC0wOS0xMyBCZW5qYW1pbiBLb3NuaWsg PGJrb3pAcmVkaGF0LmNvbT4KIApkaWZmIC0tZ2l0IGEvbGlic3RkYysrLXYzL3Rlc3RzdWl0ZS8y Ml9sb2NhbGUvbG9jYWxlL2dsb2JhbF9sb2NhbGVfb2JqZWN0cy8xNDA3MS5jYyBiL2xpYnN0ZGMr Ky12My90ZXN0c3VpdGUvMjJfbG9jYWxlL2xvY2FsZS9nbG9iYWxfbG9jYWxlX29iamVjdHMvMTQw NzEuY2MKaW5kZXggZWEzOTkyYjAzZjYuLjMwZDRhMzFhNjRjIDEwMDY0NAotLS0gYS9saWJzdGRj KystdjMvdGVzdHN1aXRlLzIyX2xvY2FsZS9sb2NhbGUvZ2xvYmFsX2xvY2FsZV9vYmplY3RzLzE0 MDcxLmNjCisrKyBiL2xpYnN0ZGMrKy12My90ZXN0c3VpdGUvMjJfbG9jYWxlL2xvY2FsZS9nbG9i YWxfbG9jYWxlX29iamVjdHMvMTQwNzEuY2MKQEAgLTEsNSArMSw2IEBACiAvLyB7IGRnLXJlcXVp cmUtbmFtZWRsb2NhbGUgImlzX0lTLklTTzg4NTktMSIgfQogLy8geyBkZy1yZXF1aXJlLW5hbWVk bG9jYWxlICJlbl9VUy5JU084ODU5LTEiIH0KKy8vIHsgZGctcmVxdWlyZS1sb2NhbGVtb2RlbCAi Z251IiB9CiAKIC8vIDIwMDQtMDItMDkgIFBldHVyIFJ1bm9sZnNzb24gIDxwZXR1cnIwMkBydS5p cz4KIApkaWZmIC0tZ2l0IGEvbGlic3RkYysrLXYzL3Rlc3RzdWl0ZS8yMl9sb2NhbGUvbWVzc2Fn ZXMvMTM2MzEuY2MgYi9saWJzdGRjKystdjMvdGVzdHN1aXRlLzIyX2xvY2FsZS9tZXNzYWdlcy8x MzYzMS5jYwppbmRleCBiOGFlM2Q0ZjE0MC4uMjUwOWJiYTA4NDUgMTAwNjQ0Ci0tLSBhL2xpYnN0 ZGMrKy12My90ZXN0c3VpdGUvMjJfbG9jYWxlL21lc3NhZ2VzLzEzNjMxLmNjCisrKyBiL2xpYnN0 ZGMrKy12My90ZXN0c3VpdGUvMjJfbG9jYWxlL21lc3NhZ2VzLzEzNjMxLmNjCkBAIC0xLDQgKzEs NSBAQAogLy8geyBkZy1yZXF1aXJlLW5hbWVkbG9jYWxlICJmcl9GUi5JU084ODU5LTE1IiB9Cisv LyB7IGRnLXJlcXVpcmUtbG9jYWxlbW9kZWwgImdudSIgfQogCiAvLyBDb3B5cmlnaHQgKEMpIDIw MTQtMjAyMSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KIC8vCmRpZmYgLS1naXQgYS9s aWJzdGRjKystdjMvdGVzdHN1aXRlLzIyX2xvY2FsZS9tZXNzYWdlcy9tZW1iZXJzL2NoYXIvMS5j YyBiL2xpYnN0ZGMrKy12My90ZXN0c3VpdGUvMjJfbG9jYWxlL21lc3NhZ2VzL21lbWJlcnMvY2hh ci8xLmNjCmluZGV4IGM0ZDk3MjEyNGYwLi5mZGY0YTBhZjAxOCAxMDA2NDQKLS0tIGEvbGlic3Rk YysrLXYzL3Rlc3RzdWl0ZS8yMl9sb2NhbGUvbWVzc2FnZXMvbWVtYmVycy9jaGFyLzEuY2MKKysr IGIvbGlic3RkYysrLXYzL3Rlc3RzdWl0ZS8yMl9sb2NhbGUvbWVzc2FnZXMvbWVtYmVycy9jaGFy LzEuY2MKQEAgLTEsNCArMSw1IEBACiAvLyB7IGRnLXJlcXVpcmUtbmFtZWRsb2NhbGUgImRlX0RF LklTTzg4NTktMTUiIH0KKy8vIHsgZGctcmVxdWlyZS1sb2NhbGVtb2RlbCAiZ251IiB9CiAKIC8v IDIwMDEtMDctMTcgQmVuamFtaW4gS29zbmlrICA8YmtvekByZWRoYXQuY29tPgogCmRpZmYgLS1n aXQgYS9saWJzdGRjKystdjMvdGVzdHN1aXRlLzIyX2xvY2FsZS9tZXNzYWdlcy9tZW1iZXJzL2No YXIvMi5jYyBiL2xpYnN0ZGMrKy12My90ZXN0c3VpdGUvMjJfbG9jYWxlL21lc3NhZ2VzL21lbWJl cnMvY2hhci8yLmNjCmluZGV4IDgxZDkxNGY1YzM3Li4zMzQ1ZjQzYjM0MiAxMDA2NDQKLS0tIGEv bGlic3RkYysrLXYzL3Rlc3RzdWl0ZS8yMl9sb2NhbGUvbWVzc2FnZXMvbWVtYmVycy9jaGFyLzIu Y2MKKysrIGIvbGlic3RkYysrLXYzL3Rlc3RzdWl0ZS8yMl9sb2NhbGUvbWVzc2FnZXMvbWVtYmVy cy9jaGFyLzIuY2MKQEAgLTEsNCArMSw1IEBACiAvLyB7IGRnLXJlcXVpcmUtbmFtZWRsb2NhbGUg ImZyX0ZSLklTTzg4NTktMTUiIH0KKy8vIHsgZGctcmVxdWlyZS1sb2NhbGVtb2RlbCAiZ251IiB9 CiAKIC8vIDIwMDEtMDctMTcgQmVuamFtaW4gS29zbmlrICA8YmtvekByZWRoYXQuY29tPgogCmRp ZmYgLS1naXQgYS9saWJzdGRjKystdjMvdGVzdHN1aXRlLzIyX2xvY2FsZS9tZXNzYWdlcy9tZW1i ZXJzL2NoYXIvMy5jYyBiL2xpYnN0ZGMrKy12My90ZXN0c3VpdGUvMjJfbG9jYWxlL21lc3NhZ2Vz L21lbWJlcnMvY2hhci8zLmNjCmluZGV4IDVhNTAzZWYyYzQ5Li4xZDJmN2FkMzE2MiAxMDA2NDQK LS0tIGEvbGlic3RkYysrLXYzL3Rlc3RzdWl0ZS8yMl9sb2NhbGUvbWVzc2FnZXMvbWVtYmVycy9j aGFyLzMuY2MKKysrIGIvbGlic3RkYysrLXYzL3Rlc3RzdWl0ZS8yMl9sb2NhbGUvbWVzc2FnZXMv bWVtYmVycy9jaGFyLzMuY2MKQEAgLTEsNSArMSw2IEBACiAvLyB7IGRnLXJlcXVpcmUtbmFtZWRs b2NhbGUgImVuX1VTLklTTzg4NTktMSIgfQogLy8geyBkZy1yZXF1aXJlLW5hbWVkbG9jYWxlICJm cl9GUi5JU084ODU5LTE1IiB9CisvLyB7IGRnLXJlcXVpcmUtbG9jYWxlbW9kZWwgImdudSIgfQog CiAvLyAyMDAxLTA3LTE3IEJlbmphbWluIEtvc25payAgPGJrb3pAcmVkaGF0LmNvbT4KIApkaWZm IC0tZ2l0IGEvbGlic3RkYysrLXYzL3Rlc3RzdWl0ZS8yMl9sb2NhbGUvbWVzc2FnZXMvbWVtYmVy cy9jaGFyL3dyYXBwZWRfZW52LmNjIGIvbGlic3RkYysrLXYzL3Rlc3RzdWl0ZS8yMl9sb2NhbGUv bWVzc2FnZXMvbWVtYmVycy9jaGFyL3dyYXBwZWRfZW52LmNjCmluZGV4IDM1ZTdmNmM3NDBjLi45 NzZiNGQ5ZmJmNiAxMDA2NDQKLS0tIGEvbGlic3RkYysrLXYzL3Rlc3RzdWl0ZS8yMl9sb2NhbGUv bWVzc2FnZXMvbWVtYmVycy9jaGFyL3dyYXBwZWRfZW52LmNjCisrKyBiL2xpYnN0ZGMrKy12My90 ZXN0c3VpdGUvMjJfbG9jYWxlL21lc3NhZ2VzL21lbWJlcnMvY2hhci93cmFwcGVkX2Vudi5jYwpA QCAtMSw2ICsxLDcgQEAKIC8vIHsgZGctcmVxdWlyZS1uYW1lZGxvY2FsZSAiZGVfREUuSVNPODg1 OS0xNSIgfQogLy8geyBkZy1yZXF1aXJlLW5hbWVkbG9jYWxlICJmcl9GUi5JU084ODU5LTE1IiB9 CiAvLyB7IGRnLXJlcXVpcmUtbmFtZWRsb2NhbGUgImVuX1VTLklTTzg4NTktMSIgfQorLy8geyBk Zy1yZXF1aXJlLWxvY2FsZW1vZGVsICJnbnUiIH0KIAogLy8gMjAwMS0wOC0xNSBCZW5qYW1pbiBL b3NuaWsgIDxia296QHJlZGhhdC5jb20+CiAKZGlmZiAtLWdpdCBhL2xpYnN0ZGMrKy12My90ZXN0 c3VpdGUvMjJfbG9jYWxlL21lc3NhZ2VzL21lbWJlcnMvY2hhci93cmFwcGVkX2xvY2FsZS5jYyBi L2xpYnN0ZGMrKy12My90ZXN0c3VpdGUvMjJfbG9jYWxlL21lc3NhZ2VzL21lbWJlcnMvY2hhci93 cmFwcGVkX2xvY2FsZS5jYwppbmRleCBhNDRiZjE0NzZiMi4uYjE0M2QzM2E0Y2MgMTAwNjQ0Ci0t LSBhL2xpYnN0ZGMrKy12My90ZXN0c3VpdGUvMjJfbG9jYWxlL21lc3NhZ2VzL21lbWJlcnMvY2hh ci93cmFwcGVkX2xvY2FsZS5jYworKysgYi9saWJzdGRjKystdjMvdGVzdHN1aXRlLzIyX2xvY2Fs ZS9tZXNzYWdlcy9tZW1iZXJzL2NoYXIvd3JhcHBlZF9sb2NhbGUuY2MKQEAgLTIsNiArMiw3IEBA CiAvLyB7IGRnLXJlcXVpcmUtbmFtZWRsb2NhbGUgImRlX0RFLklTTzg4NTktMTUiIH0KIC8vIHsg ZGctcmVxdWlyZS1uYW1lZGxvY2FsZSAiZnJfRlIuSVNPODg1OS0xNSIgfQogLy8geyBkZy1yZXF1 aXJlLW5hbWVkbG9jYWxlICJlbl9VUy5JU084ODU5LTEiIH0KKy8vIHsgZGctcmVxdWlyZS1sb2Nh bGVtb2RlbCAiZ251IiB9CiAKIC8vIDIwMDEtMDgtMTUgQmVuamFtaW4gS29zbmlrICA8YmtvekBy ZWRoYXQuY29tPgogCmRpZmYgLS1naXQgYS9saWJzdGRjKystdjMvdGVzdHN1aXRlLzIyX2xvY2Fs ZS9tZXNzYWdlc19ieW5hbWUvbmFtZWRfZXF1aXZhbGVuY2UuY2MgYi9saWJzdGRjKystdjMvdGVz dHN1aXRlLzIyX2xvY2FsZS9tZXNzYWdlc19ieW5hbWUvbmFtZWRfZXF1aXZhbGVuY2UuY2MKaW5k ZXggMTAwNmYyMGM5OTYuLmZhYmYyODFkM2U2IDEwMDY0NAotLS0gYS9saWJzdGRjKystdjMvdGVz dHN1aXRlLzIyX2xvY2FsZS9tZXNzYWdlc19ieW5hbWUvbmFtZWRfZXF1aXZhbGVuY2UuY2MKKysr IGIvbGlic3RkYysrLXYzL3Rlc3RzdWl0ZS8yMl9sb2NhbGUvbWVzc2FnZXNfYnluYW1lL25hbWVk X2VxdWl2YWxlbmNlLmNjCkBAIC0xLDQgKzEsNSBAQAogLy8geyBkZy1yZXF1aXJlLW5hbWVkbG9j YWxlICJkZV9ERS5JU084ODU5LTE1IiB9CisvLyB7IGRnLXJlcXVpcmUtbG9jYWxlbW9kZWwgImdu dSIgfQogCiAvLyAyMDAxLTA3LTE3IEJlbmphbWluIEtvc25payAgPGJrb3pAcmVkaGF0LmNvbT4K IApkaWZmIC0tZ2l0IGEvbGlic3RkYysrLXYzL3Rlc3RzdWl0ZS8yN19pby9iYXNpY19maWxlYnVm L292ZXJmbG93L3djaGFyX3QvMTEzMDUtMS5jYyBiL2xpYnN0ZGMrKy12My90ZXN0c3VpdGUvMjdf aW8vYmFzaWNfZmlsZWJ1Zi9vdmVyZmxvdy93Y2hhcl90LzExMzA1LTEuY2MKaW5kZXggYzc0N2Y3 YmZiMDIuLjQ2NzEzY2NhMTE4IDEwMDY0NAotLS0gYS9saWJzdGRjKystdjMvdGVzdHN1aXRlLzI3 X2lvL2Jhc2ljX2ZpbGVidWYvb3ZlcmZsb3cvd2NoYXJfdC8xMTMwNS0xLmNjCisrKyBiL2xpYnN0 ZGMrKy12My90ZXN0c3VpdGUvMjdfaW8vYmFzaWNfZmlsZWJ1Zi9vdmVyZmxvdy93Y2hhcl90LzEx MzA1LTEuY2MKQEAgLTEsNCArMSw1IEBACiAvLyB7IGRnLXJlcXVpcmUtbmFtZWRsb2NhbGUgImVu X1VTLlVURi04IiB9CisvLyB7IGRnLWV4Y2Vzcy1lcnJvcnMgIndjaGFyX3Qgb3ZlcmZsb3ciIHsg eGZhaWwgeyB3Y2hhcl90X2NoYXIxNl90X2NvbXBhdGlibGUgfSB9IH0KIAogLy8gQ29weXJpZ2h0 IChDKSAyMDAzLTIwMjEgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCiAvLwpkaWZmIC0t Z2l0IGEvbGlic3RkYysrLXYzL3Rlc3RzdWl0ZS8yN19pby9iYXNpY19maWxlYnVmL292ZXJmbG93 L3djaGFyX3QvMTEzMDUtMi5jYyBiL2xpYnN0ZGMrKy12My90ZXN0c3VpdGUvMjdfaW8vYmFzaWNf ZmlsZWJ1Zi9vdmVyZmxvdy93Y2hhcl90LzExMzA1LTIuY2MKaW5kZXggNzZhMzg3NzY4ZmUuLmEz YTRiYmY1ODMzIDEwMDY0NAotLS0gYS9saWJzdGRjKystdjMvdGVzdHN1aXRlLzI3X2lvL2Jhc2lj X2ZpbGVidWYvb3ZlcmZsb3cvd2NoYXJfdC8xMTMwNS0yLmNjCisrKyBiL2xpYnN0ZGMrKy12My90 ZXN0c3VpdGUvMjdfaW8vYmFzaWNfZmlsZWJ1Zi9vdmVyZmxvdy93Y2hhcl90LzExMzA1LTIuY2MK QEAgLTEsNCArMSw1IEBACiAvLyB7IGRnLXJlcXVpcmUtbmFtZWRsb2NhbGUgImVuX1VTLlVURi04 IiB9CisvLyB7IGRnLWV4Y2Vzcy1lcnJvcnMgIndjaGFyX3Qgb3ZlcmZsb3ciIHsgeGZhaWwgeyB3 Y2hhcl90X2NoYXIxNl90X2NvbXBhdGlibGUgfSB9IH0KIAogLy8gQ29weXJpZ2h0IChDKSAyMDAz LTIwMjEgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCiAvLwpkaWZmIC0tZ2l0IGEvbGli c3RkYysrLXYzL3Rlc3RzdWl0ZS8yN19pby9iYXNpY19maWxlYnVmL292ZXJmbG93L3djaGFyX3Qv MTEzMDUtMy5jYyBiL2xpYnN0ZGMrKy12My90ZXN0c3VpdGUvMjdfaW8vYmFzaWNfZmlsZWJ1Zi9v dmVyZmxvdy93Y2hhcl90LzExMzA1LTMuY2MKaW5kZXggMjRkMTkyOTIxY2IuLjJhMzE0NTg5NzE0 IDEwMDY0NAotLS0gYS9saWJzdGRjKystdjMvdGVzdHN1aXRlLzI3X2lvL2Jhc2ljX2ZpbGVidWYv b3ZlcmZsb3cvd2NoYXJfdC8xMTMwNS0zLmNjCisrKyBiL2xpYnN0ZGMrKy12My90ZXN0c3VpdGUv MjdfaW8vYmFzaWNfZmlsZWJ1Zi9vdmVyZmxvdy93Y2hhcl90LzExMzA1LTMuY2MKQEAgLTEsNCAr MSw1IEBACiAvLyB7IGRnLXJlcXVpcmUtbmFtZWRsb2NhbGUgImVuX1VTLlVURi04IiB9CisvLyB7 IGRnLWV4Y2Vzcy1lcnJvcnMgIndjaGFyX3Qgb3ZlcmZsb3ciIHsgeGZhaWwgeyB3Y2hhcl90X2No YXIxNl90X2NvbXBhdGlibGUgfSB9IH0KIAogLy8gQ29weXJpZ2h0IChDKSAyMDAzLTIwMjEgRnJl ZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCiAvLwpkaWZmIC0tZ2l0IGEvbGlic3RkYysrLXYz L3Rlc3RzdWl0ZS8yN19pby9iYXNpY19maWxlYnVmL292ZXJmbG93L3djaGFyX3QvMTEzMDUtNC5j YyBiL2xpYnN0ZGMrKy12My90ZXN0c3VpdGUvMjdfaW8vYmFzaWNfZmlsZWJ1Zi9vdmVyZmxvdy93 Y2hhcl90LzExMzA1LTQuY2MKaW5kZXggMmMwYTJhYjYxZGIuLjcxMzkzYmJkMjU1IDEwMDY0NAot LS0gYS9saWJzdGRjKystdjMvdGVzdHN1aXRlLzI3X2lvL2Jhc2ljX2ZpbGVidWYvb3ZlcmZsb3cv d2NoYXJfdC8xMTMwNS00LmNjCisrKyBiL2xpYnN0ZGMrKy12My90ZXN0c3VpdGUvMjdfaW8vYmFz aWNfZmlsZWJ1Zi9vdmVyZmxvdy93Y2hhcl90LzExMzA1LTQuY2MKQEAgLTEsNCArMSw1IEBACiAv LyB7IGRnLXJlcXVpcmUtbmFtZWRsb2NhbGUgImVuX1VTLlVURi04IiB9CisvLyB7IGRnLWV4Y2Vz cy1lcnJvcnMgIndjaGFyX3Qgb3ZlcmZsb3ciIHsgeGZhaWwgeyB3Y2hhcl90X2NoYXIxNl90X2Nv bXBhdGlibGUgfSB9IH0KIAogLy8gQ29weXJpZ2h0IChDKSAyMDAzLTIwMjEgRnJlZSBTb2Z0d2Fy ZSBGb3VuZGF0aW9uLCBJbmMuCiAvLwpkaWZmIC0tZ2l0IGEvbGlic3RkYysrLXYzL3Rlc3RzdWl0 ZS9saWIvZGctb3B0aW9ucy5leHAgYi9saWJzdGRjKystdjMvdGVzdHN1aXRlL2xpYi9kZy1vcHRp b25zLmV4cAppbmRleCA4NzI3NjhmMjYyMC4uODQ3NGU4ZGYxNGIgMTAwNjQ0Ci0tLSBhL2xpYnN0 ZGMrKy12My90ZXN0c3VpdGUvbGliL2RnLW9wdGlvbnMuZXhwCisrKyBiL2xpYnN0ZGMrKy12My90 ZXN0c3VpdGUvbGliL2RnLW9wdGlvbnMuZXhwCkBAIC04OCw2ICs4OCwxNSBAQCBwcm9jIGRnLXJl cXVpcmUtbmFtZWRsb2NhbGUgeyBhcmdzIH0gewogICAgIHJldHVybgogfQogCitwcm9jIGRnLXJl cXVpcmUtbG9jYWxlbW9kZWwgeyBhcmdzIH0geworICAgIGlmIHsgIVsgY2hlY2tfdjNfdGFyZ2V0 X2xvY2FsZW1vZGVsIFtsaW5kZXggJGFyZ3MgMV0gXSB9IHsKKwl1cHZhciBkZy1kby13aGF0IGRn LWRvLXdoYXQKKwlzZXQgZGctZG8td2hhdCBbbGlzdCBbbGluZGV4ICR7ZGctZG8td2hhdH0gMF0g Ik4iICJQIl0KKwlyZXR1cm4KKyAgICB9CisgICAgcmV0dXJuCit9CisKIHByb2MgZGctcmVxdWly ZS1zaGFyZWRsaWIgeyBhcmdzIH0gewogICAgIGlmIHsgIVsgY2hlY2tfdjNfdGFyZ2V0X3NoYXJl ZGxpYiBdIH0gewogCXVwdmFyIGRnLWRvLXdoYXQgZGctZG8td2hhdApkaWZmIC0tZ2l0IGEvbGli c3RkYysrLXYzL3Rlc3RzdWl0ZS9saWIvbGlic3RkYysrLmV4cCBiL2xpYnN0ZGMrKy12My90ZXN0 c3VpdGUvbGliL2xpYnN0ZGMrKy5leHAKaW5kZXggN2Y5NTgwZGI4ZWQuLmQzNTc0ODYyZDdhIDEw MDY0NAotLS0gYS9saWJzdGRjKystdjMvdGVzdHN1aXRlL2xpYi9saWJzdGRjKysuZXhwCisrKyBi L2xpYnN0ZGMrKy12My90ZXN0c3VpdGUvbGliL2xpYnN0ZGMrKy5leHAKQEAgLTg5NSw2ICs4OTUs MTEgQEAgcHJvYyBjaGVja192M190YXJnZXRfbmFtZWRsb2NhbGUgeyBhcmdzIH0gewogCXB1dHMg JGYgIiAgICBzdHJjcHkocmVzdWx0LCBuYW1lKTsiCiAJcHV0cyAkZiAiI2lmIGRlZmluZWQgX19G cmVlQlNEX18gfHwgZGVmaW5lZCBfX0RyYWdvbkZseV9fIHx8IGRlZmluZWQgX19OZXRCU0RfXyIK IAlwdXRzICRmICIgICAgLyogZmFsbC10aHJvdWdoICovIgorCXB1dHMgJGYgIiNlbGlmIGRlZmlu ZWQgX0FJWCIKKwlwdXRzICRmICIgICAgY2hhciAqcCA9IHN0cnN0cihyZXN1bHQsIFwiSVNPODg1 OS0xNVwiKTsiCisJcHV0cyAkZiAiICAgIGlmIChwKSB7IgorCXB1dHMgJGYgIiAgICAgICBzdHJj cHkocCwgXCI4ODU5LTE1XCIpOyIKKwlwdXRzICRmICIgICAgfSIKIAlwdXRzICRmICIjZWxzZSIK IAlwdXRzICRmICIgICAgaWYgKHN0cnN0cihyZXN1bHQsIFwiSVNPODg1OS0xNVwiKSkgeyIKIAlw dXRzICRmICIgICAgICAgIHN0cmNhdChyZXN1bHQsIFwiQGV1cm9cIik7IgpAQCAtOTQ1LDYgKzk1 MCwzMiBAQCBwcm9jIGNoZWNrX3YzX3RhcmdldF9uYW1lZGxvY2FsZSB7IGFyZ3MgfSB7CiAgICAg fV0KIH0KIAorIyBSZXR1cm4gMSBpZiB0aGUgbG9jYWxlIG1vZGVsIGlzIGltcGxlbWVudGVkLgor cHJvYyBjaGVja192M190YXJnZXRfbG9jYWxlbW9kZWwgeyBhcmdzIH0geworICAgIHNldCBrZXkg ImV0X2xvY2FsZSAkYXJncyIKKyAgICByZXR1cm4gW2NoZWNrX3YzX3RhcmdldF9wcm9wX2NhY2hl ZCAka2V5IHsKKwlnbG9iYWwgY3h4ZmxhZ3MKKwlnbG9iYWwgREVGQVVMVF9DWFhGTEFHUworCisJ c2V0IGNvbmQgIjAiCisJaWYgW3N0cmluZyBtYXRjaCAiKmdudSoiICRhcmdzXSB7CisJICAgIHNl dCBjb25kICIgJGNvbmQgfHwgZGVmaW5lZCBfR0xJQkNYWF9DX0xPQ0FMRV9HTlUiCisJfQorCWlm IFtzdHJpbmcgbWF0Y2ggIip4cGc3KiIgJGFyZ3NdIHsKKwkgICAgc2V0IGNvbmQgIiAkY29uZCB8 fCBkZWZpbmVkIF9HTElCQ1hYX0NfTE9DQUxFX1hQRzciCisJfQorCisJc2V0IGNvZGUgIgorCSNp bmNsdWRlIDxiaXRzL2MrK2xvY2FsZS5oPgorCSNpZiAhICgkY29uZCkKKwkjZXJyb3IgJyRjb25k JyBpcyBmYWxzZQorCSNlbmRpZgorCSIKKwlzZXQgZmxhZ3MgIiRjeHhmbGFncyAkREVGQVVMVF9D WFhGTEFHUyAtV2Vycm9yIgorCXJldHVybiBbdjNfdHJ5X3ByZXByb2Nlc3MgbmFtZSAkY29kZSAk ZmxhZ3NdCisgICAgfV0KK30KKwogIyBSZXR1cm5zIDEgaWYgdGhlIHRva2VucyBpbiBDT0RFIGNh biBiZSBwcmVwcm9jZXNzZWQgc3VjY2Vzc2Z1bGx5IHVzaW5nIEZMQUdTLAogIyByZXR1cm5zIDAg b3RoZXJ3aXNlLgogcHJvYyB2M190cnlfcHJlcHJvY2VzcyB7IG5hbWUgY29kZSBmbGFncyB9IHsK ZGlmZiAtLWdpdCBhL2xpYnN0ZGMrKy12My90ZXN0c3VpdGUvdXRpbC90ZXN0c3VpdGVfaG9va3Mu aCBiL2xpYnN0ZGMrKy12My90ZXN0c3VpdGUvdXRpbC90ZXN0c3VpdGVfaG9va3MuaAppbmRleCBi NWUwNzY3MjExYS4uYTYzMmY1ZjMxZjggMTAwNjQ0Ci0tLSBhL2xpYnN0ZGMrKy12My90ZXN0c3Vp dGUvdXRpbC90ZXN0c3VpdGVfaG9va3MuaAorKysgYi9saWJzdGRjKystdjMvdGVzdHN1aXRlL3V0 aWwvdGVzdHN1aXRlX2hvb2tzLmgKQEAgLTc3LDYgKzc3LDkgQEAKIAogI2lmIGRlZmluZWQgX19G cmVlQlNEX18gfHwgZGVmaW5lZCBfX0RyYWdvbkZseV9fIHx8IGRlZmluZWQgX19OZXRCU0RfXwog IyBkZWZpbmUgSVNPXzg4NTkocGFydCxsYW5nVEVSUikgI2xhbmdURVJSICIuSVNPODg1OS0iICNw YXJ0CisjZWxpZiBkZWZpbmVkIF9BSVgKKyMgZGVmaW5lIElTT184ODU5KHBhcnQsbGFuZ1RFUlIp ICgocGFydCkgPT0gMTUgP1wKKyAgICAgICAgICNsYW5nVEVSUiAiLjg4NTktIiAjcGFydCA6ICNs YW5nVEVSUiAiLklTTzg4NTktIiAjcGFydCkKICNlbHNlCiAjIGRlZmluZSBJU09fODg1OShwYXJ0 LGxhbmdURVJSKSAoKHBhcnQpID09IDE1ID9cCiAgICAgICAgICAjbGFuZ1RFUlIgIi5JU084ODU5 LSIgI3BhcnQgIkBldXJvIiA6ICNsYW5nVEVSUiAiLklTTzg4NTktIiAjcGFydCkKLS0gCjIuMzEu MQoK --_002_PA4PR02MB66864CD06A19711FB664A47FEA5E9PA4PR02MB6686eurp_--