Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1sJwjs-007V1D-NA for pgsql-hackers@arkaria.postgresql.org; Wed, 19 Jun 2024 14:56:45 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.94.2) (envelope-from ) id 1sJwjp-000Ev4-V6 for pgsql-hackers@arkaria.postgresql.org; Wed, 19 Jun 2024 14:56:42 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1sJwjp-000EsZ-5E for pgsql-hackers@lists.postgresql.org; Wed, 19 Jun 2024 14:56:42 +0000 Received: from mx0a-001b2d01.pphosted.com ([148.163.156.1]) by magus.postgresql.org with esmtps (TLS1.2) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1sJwji-002UGQ-BJ for pgsql-hackers@postgresql.org; Wed, 19 Jun 2024 14:56:41 +0000 Received: from pps.filterd (m0353728.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 45JDwgjB004604; Wed, 19 Jun 2024 14:56:17 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=from :to:cc:date:message-id:references:in-reply-to:content-type :mime-version:subject; s=pp1; bh=3EiHsL9MorUUjH+v2aC56JJEq1q3wFe FvRYhf3/7m1g=; b=EIJhPgIWoUfdcvs3ToMoWHN6kUdnjB3ikol78ePjweEsOTG DKbUSaTat2UcNQ/RekGLFlyQKYVBAXkA0o9W2tTvcVyPMkuR9oEX3ycXO6UH/YQi PBV/gPqi+SchorHh7xnoxoDgKoJfrAjvNzm7DguCKy5fzjFKfjPCkbG2gIfEYsq7 uKc2LL3InVy4h32E/umCN9vEon8rGLow+zGm4uyH3Z13kQ5BDZrK9c+T/e2VS16d wXVJPd0yW//L1R2wxl6pYzszBbClHlYyzr9POVUZpBSGWE4rDO/Lx9hE/9NSb2+G wPqJnnvpibNOHRiKXcJaPDJR/pd2V9Ni7SLpVRA== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3yv0p9g5cu-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 19 Jun 2024 14:56:16 +0000 (GMT) Received: from m0353728.ppops.net (m0353728.ppops.net [127.0.0.1]) by pps.reinject (8.18.0.8/8.18.0.8) with ESMTP id 45JEuFjM029013; Wed, 19 Jun 2024 14:56:16 GMT Received: from nam12-dm6-obe.outbound.protection.outlook.com (mail-dm6nam12lp2169.outbound.protection.outlook.com [104.47.59.169]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3yv0p9g5cn-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 19 Jun 2024 14:56:15 +0000 (GMT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=CUDlulzuCNlGrqfEuV9sfwDhuZiFgQ7qJtowzD5R9l5JZQZTOjZ6O2zowSbopp2d+qkRlOC9SOdd4lMKq4oiP9czfc3s21EJ4lX/ioRjKNK7o4tRduRQY+9tYuHhrpSJp56RUBD222iUhrdKc8dBexHE+MhbNMs9uNQTHeK/wIsia/cc7kVDhYkLIUzFTcEC1Ngm4PG/+tDUHsIsnk7MWdq8DeqpED76VqQZbaFB/HW2QKeNBs/T4GQLBPmwNNE2IznYptTFHq4HNYKfRPn+zvTVzQdO/ox0bJkCmiIjefYwsAsckBKB7siPc0r3GXjK6Xjv1wjAL9y925VLtvlbsA== 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=3EiHsL9MorUUjH+v2aC56JJEq1q3wFeFvRYhf3/7m1g=; b=GhR9SXMF9yfSLre5iKCAkEKeolw+gqHpR1o2dJmEy1rx61QFObSWggZbhKFX9KsYXAcbsidL1lEJahkqcc2+E0dzTZlUiwCr18OdPJMeipFoALYgRukMUt1yUVXLDRXcCRz5V0C5aKF51n80DYoG4LMFxJfKgsjNBNmfZdM3SxJZ9qSTViuMm2jE32JLCSeBOtH1WstiGEN7ooyfTYXLQhtxdE9ZSRrfcrNFD0jFRRGKS3ZcgN3F3nJzRU/GI0llCe8bYrQicv63owbIx057LJMs2yep0jzYi0Xos/cxrPl0xBO3FQxR/ushgDBHH2qWCwjaqNd1MZtuY/wXkR+hTQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=in.ibm.com; dmarc=pass action=none header.from=in.ibm.com; dkim=pass header.d=in.ibm.com; arc=none Received: from CY8PR15MB5602.namprd15.prod.outlook.com (2603:10b6:930:9a::21) by PH7PR15MB5319.namprd15.prod.outlook.com (2603:10b6:510:1e2::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7677.32; Wed, 19 Jun 2024 14:56:10 +0000 Received: from CY8PR15MB5602.namprd15.prod.outlook.com ([fe80::e975:185c:340f:70ae]) by CY8PR15MB5602.namprd15.prod.outlook.com ([fe80::e975:185c:340f:70ae%4]) with mapi id 15.20.7698.017; Wed, 19 Jun 2024 14:56:10 +0000 From: Srirama Kucherlapati To: Laurenz Albe , Bruce Momjian , Heikki Linnakangas CC: Peter Eisentraut , Alvaro Herrera , "pgsql-hackers@postgresql.org" , Noah Misch , Michael Paquier , Andres Freund , Tom Lane , Thomas Munro , "tvk1271@gmail.com" , "postgres-ibm-aix@wwpdl.vnet.ibm.com" Thread-Topic: [EXTERNAL] Re: AIX support Thread-Index: AQHae4rr5/ageaPz8EuxaB+VNKiBu7FCOGKAgAArgSaACn9l2IABLM4AgAADTgCAAAP8gIAABU6AgAvJNWiAAB/ogIATySEqgACu3ACAARripYAB4tSAgAAMOICABwWYgIAAB3wAgAAD0oCAAAcGgIACYnHWgAxC+/6AAz5ikoAC7ZKggAAzhgCAAAZWgIALF3TtgAAGbYCAAAc8toABabZigAAKZACACX4wBIAA83CAgAA8Eh6AAGyZAIAD7Q2AgBOpYxWABEWoAIABtJbFgAm10OE= Date: Wed, 19 Jun 2024 14:55:47 +0000 Message-ID: References: <202405161430.ukr5bwspmfdp@alvherre.pgsql> <698dd3efec644b5c0dd6220d73033f8153ae2fde.camel@cybertec.at> In-Reply-To: Accept-Language: en-US Content-Language: en-IN X-MS-Has-Attach: yes X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: CY8PR15MB5602:EE_|PH7PR15MB5319:EE_ x-ms-office365-filtering-correlation-id: 62aed85f-8ee7-458b-ff60-08dc906ff520 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0;ARA:13230037|1800799021|7416011|376011|366013|38070700015; x-microsoft-antispam-message-info: =?us-ascii?Q?LfnOJgDCPiVOPzvVzaojLYK3ihDu8w3HJhq7quH8m7ZYPiG3S+JJZ6+WOeT0?= =?us-ascii?Q?kJ+hylFjWvwjwmX9WOcPA2nc0vOzZHOvgzaYtAs3sxHyyH9e9dhEa7FPjyBj?= =?us-ascii?Q?b68tAO3ZfY7ffL97UHDqUtOsRU2py7apISy/JeLN9cFJqpuSELAxGB9T7OMA?= =?us-ascii?Q?WbFqFwFMyxeZ0iNlb0vi6E1dpPVhpakc88ePVTmZvGYywMgkSCc1aiVEXBXf?= =?us-ascii?Q?/M5CrGHP2a26SD7XomxN2df5iuRKc1JruXDQD8OQ8Tt2d8Ji20r7FrsLpYk7?= =?us-ascii?Q?zKSUVkyyZdgVpOER2FwBxIdRDKVxIzk+rjI+Zxmpabxm4qnEGFpA4iXjUytE?= =?us-ascii?Q?2z+1bSuo1yKd6dNGAj4O0tizWflXa5WZghIQKJf/yrJM5t2V5jcu0g0ASyf6?= =?us-ascii?Q?YjY/aY8puw85CK+0WFPsPUDScCNKK3rXwjm/H7YzmgEFL2OYcZVVguWqwog7?= =?us-ascii?Q?lKX3XKSZvOIB6UJIXF1eXIQ2pkVtR6mo4hwdBTmQgAInJyv3emlFmW0Xnv1u?= =?us-ascii?Q?cbhHTSaVbBCJO0Os8dSMt2LJ/GXxZQWTeZtlvA1vUtIXIXzxB1e+dwKkM6mK?= =?us-ascii?Q?3lTfInKhZlybUCySusvABDnZS3+4AZBPyeVvFP84z62nnpBls7TAX4aDKqSC?= =?us-ascii?Q?/r83m+nli4FZRF6R0dIG5HvcsTgSfEjiwXIbjEtysqHH/KeiUT8u+vt+IdD4?= =?us-ascii?Q?zPEusmK6C2UmjnCmrsJstWRALACi+8MCa83nL6MwS2uKorxRgDYbOZYRrX2G?= =?us-ascii?Q?FSiNq0noTdAOfE2+9Xdv4hN9JySRd/ynf7ku11TIgvpT6s+Nd3OcYAhXi69A?= =?us-ascii?Q?LDOaKcEgYhMjBjPfNAOUZjO6c1+Js5bqJP0XeEo3Yuw1sPL1nRMJDvnc3q5A?= =?us-ascii?Q?dDif72v7wUOBMJfsuFyEHxMaYpys9rR9D8xYLqJzUsbqjDmNZiUPhl0Rh0fp?= =?us-ascii?Q?Ua8H0eOoKTIrGyR65f1Hjkfwd7J0mGKEPYrAtOqLHehxlUvrQMNJsTGqjqP9?= =?us-ascii?Q?5qcLD6uKqge6onTe9UA1u7Ir8w7xZBwT4QM8h3W8Zvi5oU3cpRfMo4k5QvPK?= =?us-ascii?Q?dLBtXnFKto3DI7PAACI3m4DxmHSgylFaZEysGLJgmwFRaXmlNi/GMiZZ8GgH?= =?us-ascii?Q?9mmRHDJ3k1K0oPROyXIlZZen2w1y1ZaNLBVM+br0byPBdk6ph6mORxEzAZE2?= =?us-ascii?Q?EAeHeuO93rgxLOo0jRayB6awO6dUZoaWZV3jNcrTcWB6cu0qLTpP5wGLXXVE?= =?us-ascii?Q?ZLyrhQXRZA+GzY+APeen137o6uubNlupGCqWNOlm1oTmwH4xlfV5wfLvbqs+?= =?us-ascii?Q?SUVW5H/9BROxx/shL6RjwVjKtg+QMP4HQgEJ6/riugRmQnG98vyty6p50RFN?= =?us-ascii?Q?rxKWrM6TY0RrqcQvtVEmGBhJENrk?= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CY8PR15MB5602.namprd15.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230037)(1800799021)(7416011)(376011)(366013)(38070700015);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?inw37+miWftVVU+53I84HkXPxWPbopFJ349w1NB7BHrPVJaHTi3lOXXITWVe?= =?us-ascii?Q?Yp/DT4eNUpyWEaUlKyMrNCskMClVYx9IMGtWyZZW1+ak2kokrOXogM3ZvVoQ?= =?us-ascii?Q?AqS/8zHYV8Y6fpthGJARUAQ/oRcLiQPqkcyc0R4OpMvT98XHbQTdrwngCIbF?= =?us-ascii?Q?sPpN37XtNPnCmfUR9U7tDllIrVZkWsnBRicGQ472MgxyZAOjLQZfYqyniycf?= =?us-ascii?Q?GuSUcCncuTVAZCrOtPb1B7AgOIi5/6cfHjdD5+q3crva0o/MLy6l61syUUs+?= =?us-ascii?Q?XPTFOXyetZLuctKeRxlxn3CgfqxKXArM2Ma2AOyYpFSF9FozGm/D4xjRy7v/?= =?us-ascii?Q?2JmO++tJZRj/nOjOqzIbN0zt0eyRWUY2S/EHUGO7nt+Mjdcx39v4FktoxWgo?= =?us-ascii?Q?6wYZfO2P93WcdFmEfYH2yHtxWVHxIsPgZyTKsPb2n3VzHkP88wjjSQmppkpK?= =?us-ascii?Q?j3jvoUe5IuXcd07CLgYJFuPLkOEDfS1g3zN7oER4ihlmcVfamCJEyLmua0zG?= =?us-ascii?Q?LycmN9kHR5YQ6zVZ17eBc5uL6TMKxv1f0xMMZSNXQ6GJHxGcMgvHGSuEmuf5?= =?us-ascii?Q?xMi/TplmyWqOMJRRGNi5MyM+QHcCNYleMK+t0sLQYkMqMNH711s+CRrhyWFM?= =?us-ascii?Q?xb/qWRGLo1TsXVCRX9pVEEtqp6nnxQm/QLwHQrNHEuuEn98padPHjNwTdxCE?= =?us-ascii?Q?oNaONmbwNnf5is0Xiy7x/sWTAdvy/UWVOpJVgRXEwqalh/IN2jNcLjX79bPM?= =?us-ascii?Q?ZeRpt0ijb49WeLWuLfkWWugmjaAnLzvm3smRkZ1j5ZHEWi2MpMFORA5UaCF+?= =?us-ascii?Q?CohXnAXgXutAM+JOLf/+KawGhG4CTHZRTRqNYIXNyG33bJIa8R7HhYfarULo?= =?us-ascii?Q?yLr9rq/EwI+i6AP1wR99vIfH3Nk8ygoC66Rftc68Dep/6qQVOgyoWgf4F9Fu?= =?us-ascii?Q?r8zLkRRV1dDiumeok3fkE+A7J1/BQ5Ci4n2M2wKHACTc9ow3ADtQ2OwvqoWg?= =?us-ascii?Q?szoGF46tvD5a4OgHfhI7/v9hrssfjYI9aa8BgGAPIlifTxnHgAtydGCQhSWl?= =?us-ascii?Q?4Et3cVz4qO8hWOoXUHlwfPNzCNOVlN7ZmVx3KkAtTehwZWhzLUC3ZpgUO5LL?= =?us-ascii?Q?XVyj8Q0jkPZNJsWv/tDWIKFbVZuHlA3CIu1sGfDbyf0bvUGSZhoA0oFoKBFw?= =?us-ascii?Q?KsoEkov8+JM4PEpjoYa8CLLexqP0MtvN/JPPk9BiPn/cHcOYhi4OMMraJ5TP?= =?us-ascii?Q?EkNzcneXxI3DyTjKTQEq1esyTi/MxSomJgIAm/58hLmDJL9sFg/Erf8y+/dn?= =?us-ascii?Q?hEqHbtarRoRSyPQcwTYrUzqhZyzTycKlNLZlK9+WoPxk1nRpqwshQi8VSGpS?= =?us-ascii?Q?J1lz0XadhUtKUq8i7Bd+9JhIO0npbSJ+LPgTBARfbqVIY64JY0x0bWcHAvMA?= =?us-ascii?Q?cCU53GndMjwcawX/JX+9UKCMcDW06MiNNCfD+ZTUJACtRS/m9SJwbpQryKD6?= =?us-ascii?Q?EbmtJiTt5DJbY6l2N4jYfkkTi/M5zxoWP8EII1teEOekTqKVYC0EdxiVExl8?= =?us-ascii?Q?CIVs3TKCoNJ+P1EktQafq163brwgZp41ZZIu87LnDwzuGs+zC3X8S/QIvNxX?= =?us-ascii?Q?Pz3BEZ2ubGClbn/SyXfH7Zn3vSlbBbVVz0grO9hZ0Pqx?= Content-Type: multipart/mixed; boundary="_004_CY8PR15MB5602CAFFE00371049D68CD25DBCD2CY8PR15MB5602namp_" MIME-Version: 1.0 X-OriginatorOrg: in.ibm.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CY8PR15MB5602.namprd15.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 62aed85f-8ee7-458b-ff60-08dc906ff520 X-MS-Exchange-CrossTenant-originalarrivaltime: 19 Jun 2024 14:56:10.7659 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: fcf67057-50c9-4ad4-98f3-ffca64add9e9 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: BJ4CzYAUzxn9/ErsiRG+xW5ZxkvbA2RJE75xW9rqov/7nR5R7UO+SYPaZqwDmSG32qvIAusduKbW+teg7IgfCw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR15MB5319 X-Proofpoint-ORIG-GUID: 3trpdTSiswb7taLn_kV6-Yr_1NJ3NzZz X-Proofpoint-GUID: Cg1QaMrJj24BvrAXkYxMhGXEFkkpFL0Z Subject: RE: AIX support X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.680,FMLib:17.12.28.16 definitions=2024-06-19_02,2024-06-19_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 impostorscore=0 mlxlogscore=658 clxscore=1015 mlxscore=0 spamscore=0 malwarescore=0 adultscore=0 priorityscore=1501 lowpriorityscore=0 phishscore=0 suspectscore=0 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.19.0-2405170001 definitions=main-2406190112 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --_004_CY8PR15MB5602CAFFE00371049D68CD25DBCD2CY8PR15MB5602namp_ Content-Type: multipart/alternative; boundary="_000_CY8PR15MB5602CAFFE00371049D68CD25DBCD2CY8PR15MB5602namp_" --_000_CY8PR15MB5602CAFFE00371049D68CD25DBCD2CY8PR15MB5602namp_ Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Hi Team, Please find the attached patch, which resumes the AIX support with gcc alon= e. We have removed changes wrt to XLC on AIX. We are also continuing to work on the XLC and IBM-clang(openXLC) specific p= atch as well. Once we get an approval for the above patch we can submit a subsequent patc= h to support XLC/IBM-clang changes. Kindly let us know your inputs/feedback. Warm regards, Sriram. --_000_CY8PR15MB5602CAFFE00371049D68CD25DBCD2CY8PR15MB5602namp_ Content-Type: text/html; charset="us-ascii" Content-Transfer-Encoding: quoted-printable

Hi Team,

Please find the attached patch, which resumes the AIX support with = gcc alone. We have

removed changes wrt to XLC on AIX.

 

We are also continuing to work on the XLC and IBM-clang(openXLC) sp= ecific patch as well.

Once we get an approval for the above patch we can submit a subsequ= ent patch to support

XLC/IBM-clang changes.

 

Kindly let us know your inputs/feedback.

 

Warm regards= ,

Sriram.=

--_000_CY8PR15MB5602CAFFE00371049D68CD25DBCD2CY8PR15MB5602namp_-- --_004_CY8PR15MB5602CAFFE00371049D68CD25DBCD2CY8PR15MB5602namp_ Content-Type: application/octet-stream; name="0001-AIX-support-revert-the-changes-from-0b16bb8776bb8-v2.patch" Content-Description: 0001-AIX-support-revert-the-changes-from-0b16bb8776bb8-v2.patch Content-Disposition: attachment; filename="0001-AIX-support-revert-the-changes-from-0b16bb8776bb8-v2.patch"; size=47291; creation-date="Wed, 19 Jun 2024 14:54:28 GMT"; modification-date="Wed, 19 Jun 2024 14:54:28 GMT" Content-Transfer-Encoding: base64 RnJvbSBiODhmMmE4Y2FkMTRjMDliZDg3MmYzMDNhMjdhNjBlOTNhOTE2ZmVhIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBTcmlyYW0gUksgPHNyaXJhbS5ya0Bpbi5pYm0uY29tPgpEYXRl OiBNb24sIDIwIE1heSAyMDI0IDAxOjM4OjU5IC0wNTAwClN1YmplY3Q6IFtQQVRDSCAxLzFdIEFJ WCBzdXBwb3J0LCByZXZlcnQgdGhlIGNoYW5nZXMgZnJvbSAwYjE2YmI4Nzc2YmI4LiBUcmltCiBB SVgvWExDIGNoYW5nZXMgdG8gc3VwcG9ydCBnY2Mgb25seS4KCi0tLQogTWFrZWZpbGUgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAyIC0KIGNvbmZpZ3VyZSAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICA1MiArKysrLS0tLQogY29uZmlndXJlLmFj ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDMxICsrLS0tCiBkb2Mvc3JjL3Nn bWwvZGZ1bmMuc2dtbCAgICAgICAgICAgICAgICAgICAgICAgfCAgMTkgKysrCiBkb2Mvc3JjL3Nn bWwvaW5zdGFsbGF0aW9uLnNnbWwgICAgICAgICAgICAgICAgfCAxMTggKysrKysrKysrKysrKysr KystCiBkb2Mvc3JjL3NnbWwvcnVudGltZS5zZ21sICAgICAgICAgICAgICAgICAgICAgfCAgMjMg KysrKwogbWVzb24uYnVpbGQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDU3 ICsrKysrLS0tLQogc3JjL01ha2VmaWxlLnNobGliICAgICAgICAgICAgICAgICAgICAgICAgICAg IHwgIDI5ICsrKysrCiBzcmMvYmFja2VuZC9NYWtlZmlsZSAgICAgICAgICAgICAgICAgICAgICAg ICAgfCAgMjAgKysrCiBzcmMvYmFja2VuZC9tZXNvbi5idWlsZCAgICAgICAgICAgICAgICAgICAg ICAgfCAgMTUgKysrCiBzcmMvYmFja2VuZC9wb3J0L2FpeC9ta2xkZXhwb3J0LnNoICAgICAgICAg ICAgfCAgNjEgKysrKysrKysrCiBzcmMvYmFja2VuZC91dGlscy9lcnJvci9lbG9nLmMgICAgICAg ICAgICAgICAgfCAgIDIgKwogc3JjL2JhY2tlbmQvdXRpbHMvbWlzYy9wc19zdGF0dXMuYyAgICAg ICAgICAgIHwgICA0ICstCiBzcmMvYmluL3BnX2Jhc2ViYWNrdXAvdC8wMTBfcGdfYmFzZWJhY2t1 cC5wbCAgfCAgIDMgKy0KIHNyYy9iaW4vcGdfdmVyaWZ5YmFja3VwL3QvMDA4X3VudGFyLnBsICAg ICAgICB8ICAgMyArLQogc3JjL2Jpbi9wZ192ZXJpZnliYWNrdXAvdC8wMTBfY2xpZW50X3VudGFy LnBsIHwgICAzICstCiBzcmMvaW5jbHVkZS9jLmggICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgfCAgIDQgKy0KIHNyYy9pbmNsdWRlL3BvcnQvYWl4LmggICAgICAgICAgICAgICAgICAgICAg ICB8ICAxNCArKysKIHNyYy9pbmNsdWRlL3N0b3JhZ2Uvc19sb2NrLmggICAgICAgICAgICAgICAg ICB8ICAzMSArKysrLQogc3JjL2ludGVyZmFjZXMvbGlicHEvTWFrZWZpbGUgICAgICAgICAgICAg ICAgIHwgICAyICstCiBzcmMvaW50ZXJmYWNlcy9saWJwcS9tZXNvbi5idWlsZCAgICAgICAgICAg ICAgfCAgIDUgKy0KIHNyYy9tYWtlZmlsZXMvTWFrZWZpbGUuYWl4ICAgICAgICAgICAgICAgICAg ICB8ICAzOSArKysrKysKIHNyYy9wb3J0L1JFQURNRSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICB8ICAgMiArLQogc3JjL3BvcnQvc3RyZXJyb3IuYyAgICAgICAgICAgICAgICAgICAgICAg ICAgIHwgICAyICsKIHNyYy90ZW1wbGF0ZS9haXggICAgICAgICAgICAgICAgICAgICAgICAgICAg ICB8ICAyNiArKysrCiBzcmMvdGVzdC9yZWdyZXNzL01ha2VmaWxlICAgICAgICAgICAgICAgICAg ICAgfCAgIDUgKwogc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9zYW5pdHlfY2hlY2sub3V0ICAg IHwgIDI5ICsrKysrCiBzcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3Rlc3Rfc2V0dXAub3V0ICAg ICAgfCAgIDQgKwogc3JjL3Rlc3QvcmVncmVzcy9yZWdyZXNzLmMgICAgICAgICAgICAgICAgICAg IHwgIDQwICsrKysrKwogc3JjL3Rlc3QvcmVncmVzcy9zcWwvc2FuaXR5X2NoZWNrLnNxbCAgICAg ICAgIHwgIDI2ICsrKysKIHNyYy90ZXN0L3JlZ3Jlc3Mvc3FsL3Rlc3Rfc2V0dXAuc3FsICAgICAg ICAgICB8ICAgNSArCiBzcmMvdG9vbHMvZ2VuX2V4cG9ydC5wbCAgICAgICAgICAgICAgICAgICAg ICAgfCAgMTEgKy0KIHNyYy90b29scy9wZ2luY2x1ZGUvaGVhZGVyc2NoZWNrICAgICAgICAgICAg ICB8ICAgMSArCiAzMyBmaWxlcyBjaGFuZ2VkLCA1OTggaW5zZXJ0aW9ucygrKSwgOTAgZGVsZXRp b25zKC0pCiBjcmVhdGUgbW9kZSAxMDA3NTUgc3JjL2JhY2tlbmQvcG9ydC9haXgvbWtsZGV4cG9y dC5zaAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyYy9pbmNsdWRlL3BvcnQvYWl4LmgKIGNyZWF0ZSBt b2RlIDEwMDY0NCBzcmMvbWFrZWZpbGVzL01ha2VmaWxlLmFpeAogY3JlYXRlIG1vZGUgMTAwNjQ0 IHNyYy90ZW1wbGF0ZS9haXgKCmRpZmYgLS1naXQgYS9NYWtlZmlsZSBiL01ha2VmaWxlCmluZGV4 IDhhMmVjOTM5NmIuLjliYzFhNGVjMTcgMTAwNjQ0Ci0tLSBhL01ha2VmaWxlCisrKyBiL01ha2Vm aWxlCkBAIC0xMyw4ICsxMyw2IEBACiAKICMgQUlYIG1ha2UgZGVmYXVsdHMgdG8gYnVpbGRpbmcg KmV2ZXJ5KiB0YXJnZXQgb2YgdGhlIGZpcnN0IHJ1bGUuICBTdGFydCB3aXRoCiAjIGEgc2luZ2xl LXRhcmdldCwgZW1wdHkgcnVsZSB0byBtYWtlIHRoZSBvdGhlciB0YXJnZXRzIG5vbi1kZWZhdWx0 LgotIyAoV2UgZG9uJ3Qgc3VwcG9ydCBBSVggYW55bW9yZSwgYnV0IGlmIHNvbWVvbmUgdHJpZXMg dG8gYnVpbGQgb24gQUlYIGFueXdheSwKLSMgYXQgbGVhc3QgdGhleSdsbCBnZXQgdGhlIGluc3Ry dWN0aW9ucyB0byBydW4gJ2NvbmZpZ3VyZScgZmlyc3QuKQogYWxsOgogCiBhbGwgY2hlY2sgaW5z dGFsbCBpbnN0YWxsZGlycyBpbnN0YWxsY2hlY2sgaW5zdGFsbGNoZWNrLXBhcmFsbGVsIHVuaW5z dGFsbCBjbGVhbiBkaXN0Y2xlYW4gbWFpbnRhaW5lci1jbGVhbiBkaXN0IGRpc3RjaGVjayB3b3Js ZCBjaGVjay13b3JsZCBpbnN0YWxsLXdvcmxkIGluc3RhbGxjaGVjay13b3JsZDoKZGlmZiAtLWdp dCBhL2NvbmZpZ3VyZSBiL2NvbmZpZ3VyZQppbmRleCA4OTY0NGYyMjQ5Li4wMzI3MWYxODYxIDEw MDc1NQotLS0gYS9jb25maWd1cmUKKysrIGIvY29uZmlndXJlCkBAIC0yOTg4LDYgKzI5ODgsNyBA QCBlbHNlCiAjIC0td2l0aC10ZW1wbGF0ZSBub3QgZ2l2ZW4KIAogY2FzZSAkaG9zdF9vcyBpbgor ICAgICBhaXgqKSB0ZW1wbGF0ZT1haXggOzsKICAgY3lnd2luKnxtc3lzKikgdGVtcGxhdGU9Y3ln d2luIDs7CiAgIGRhcndpbiopIHRlbXBsYXRlPWRhcndpbiA7OwogZHJhZ29uZmx5KikgdGVtcGxh dGU9bmV0YnNkIDs7CkBAIC02ODQ5LDYgKzY4NTAsMTEgQEAgaWYgdGVzdCB4IiRwZ2FjX2N2X3By b2dfQ1hYX2N4eGZsYWdzX19mbm9fc3RyaWN0X2FsaWFzaW5nIiA9IHgieWVzIjsgdGhlbgogZmkK IAogCitlbGlmIHRlc3QgIiRQT1JUTkFNRSIgPSAiYWl4IjsgdGhlbgorICAjIEFJWCdzIHhsYyBo YXMgdG8gaGF2ZSBzdHJpY3QgYWxpYXNpbmcgdHVybmVkIG9mZiB0b28KKyAgIyBJZ29ub3Jpbmcg dGhlIFhMQyBmYWxncyAtcW5vYW5zaWFsaWFzLCAtcWxvbmdsb25nCit7ICRhc19lY2hvX24gIlJ1 bm5pbmcgQUlYIGdjYyBmb3Igbm93Li4uICIgPiY2OyB9CisKIGZpCiAKICMgSWYgdGhlIGNvbXBp bGVyIGtub3dzIGhvdyB0byBoaWRlIHN5bWJvbHMsIGFkZCB0aGUgc3dpdGNoIG5lZWRlZCBmb3Ig dGhhdCB0bwpAQCAtNzAwMyw2ICs3MDA5LDkgQEAgaWYgdGVzdCB4IiRwZ2FjX2N2X3Byb2dfQ1hY X2N4eGZsYWdzX19mdmlzaWJpbGl0eV9pbmxpbmVzX2hpZGRlbiIgPSB4InllcyI7IHRoZW4KIGZp CiAKICAgaGF2ZV92aXNpYmlsaXR5X2F0dHJpYnV0ZT0kcGdhY19jdl9wcm9nX0NDX2NmbGFnc19f ZnZpc2liaWxpdHlfaGlkZGVuCitlbGlmIHRlc3QgIiRQT1JUTkFNRSIgPSAiYWl4IjsgdGhlbgor ICAjIE5vdGUgdGhhdCB4bGMgYWNjZXB0cyAtZnZpc2liaWxpdHk9aGlkZGVuIGFzIGEgZmlsZS4K KyAgeyAkYXNfZWNob19uICJSdW5uaW5nIEFJWCBnY2MgZm9yIG5vdy4uLiAiID4mNjsgfQogZmkK IAogaWYgdGVzdCAiJGhhdmVfdmlzaWJpbGl0eV9hdHRyaWJ1dGUiID0gInllcyI7IHRoZW4KQEAg LTEyODYwLDcgKzEyODY5LDggQEAgZmkKIAogZmkKIAotIyBOb3RlOiBXZSBjYW4gdGVzdCBmb3Ig bGlibGRhcF9yIG9ubHkgYWZ0ZXIgd2Uga25vdyBQVEhSRUFEX0xJQlMKKyMgTm90ZTogV2UgY2Fu IHRlc3QgZm9yIGxpYmxkYXBfciBvbmx5IGFmdGVyIHdlIGtub3cgUFRIUkVBRF9MSUJTOworIyBh bHNvLCBvbiBBSVgsIHdlIG1heSBuZWVkIHRvIGhhdmUgb3BlbnNzbCBpbiBMSUJTIGZvciB0aGlz IHN0ZXAuCiBpZiB0ZXN0ICIkd2l0aF9sZGFwIiA9IHllcyA7IHRoZW4KICAgX0xJQlM9IiRMSUJT IgogICBpZiB0ZXN0ICIkUE9SVE5BTUUiICE9ICJ3aW4zMiI7IHRoZW4KQEAgLTE0NzE4LDYgKzE0 NzI4LDEwIEBAIGZpCiAjIHNwZWxsaW5nIGl0IHVuZGVyc3RhbmRzLCBiZWNhdXNlIGl0IGNvbmZs aWN0cyB3aXRoCiAjIF9fZGVjbHNwZWMocmVzdHJpY3QpLiBUaGVyZWZvcmUgd2UgZGVmaW5lIHBn X3Jlc3RyaWN0IHRvIHRoZQogIyBhcHByb3ByaWF0ZSBkZWZpbml0aW9uLCB3aGljaCBwcmVzdW1h Ymx5IHdvbid0IGNvbmZsaWN0LgorIworIyBBbGxvdyBwbGF0Zm9ybXMgd2l0aCBidWdneSBjb21w aWxlcnMgdG8gZm9yY2UgcmVzdHJpY3QgdG8gbm90IGJlCisjIHVzZWQgYnkgc2V0dGluZyAkRk9S Q0VfRElTQUJMRV9SRVNUUklDVD15ZXMgaW4gdGhlIHJlbGV2YW50CisjIHRlbXBsYXRlLgogeyAk YXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjaGVja2luZyBmb3IgQy9DKysg cmVzdHJpY3Qga2V5d29yZCIgPiY1CiAkYXNfZWNob19uICJjaGVja2luZyBmb3IgQy9DKysgcmVz dHJpY3Qga2V5d29yZC4uLiAiID4mNjsgfQogaWYgJHthY19jdl9jX3Jlc3RyaWN0Kzp9IGZhbHNl OyB0aGVuIDoKQEAgLTE0NzY0LDcgKzE0Nzc4LDcgQEAgX0FDRU9GCiAgOzsKICBlc2FjCiAKLWlm IHRlc3QgIiRhY19jdl9jX3Jlc3RyaWN0IiA9ICJubyI7IHRoZW4KK2lmIHRlc3QgIiRhY19jdl9j X3Jlc3RyaWN0IiA9ICJubyIgLW8gIngkRk9SQ0VfRElTQUJMRV9SRVNUUklDVCIgPSAieHllcyI7 IHRoZW4KICAgcGdfcmVzdHJpY3Q9IiIKIGVsc2UKICAgcGdfcmVzdHJpY3Q9IiRhY19jdl9jX3Jl c3RyaWN0IgpAQCAtMTY5NTEsMjggKzE2OTY1LDE4IEBAIF9BQ0VPRgogCiAKICMgQ29tcHV0ZSBt YXhpbXVtIGFsaWdubWVudCBvZiBhbnkgYmFzaWMgdHlwZS4KLSMKLSMgV2UgcmVxdWlyZSAnZG91 YmxlJyB0byBoYXZlIHRoZSBzdHJpY3Rlc3QgYWxpZ25tZW50IGFtb25nIHRoZSBiYXNpYyB0eXBl cywKLSMgYmVjYXVzZSBvdGhlcndpc2UgdGhlIEMgQUJJIG1pZ2h0IGltcG9zZSA4LWJ5dGUgYWxp Z25tZW50IG9uIHNvbWUgb2YgdGhlCi0jIG90aGVyIEMgdHlwZXMgdGhhdCBjb3JyZXNwb25kIHRv IFRZUEFMSUdOX0RPVUJMRSBTUUwgdHlwZXMuICBUaGF0IGNvdWxkCi0jIGNhdXNlIGEgbWlzbWF0 Y2ggYmV0d2VlbiB0aGUgdHVwbGUgbGF5b3V0IGFuZCB0aGUgQyBzdHJ1Y3QgbGF5b3V0IG9mIGEK LSMgY2F0YWxvZyB0dXBsZS4gIFdlIHVzZWQgdG8gY2FyZWZ1bGx5IG9yZGVyIGNhdGFsb2cgY29s dW1ucyBzdWNoIHRoYXQgYW55Ci0jIGZpeGVkLXdpZHRoLCBhdHRhbGlnbj00IGNvbHVtbnMgd2Vy ZSBhdCBvZmZzZXRzIGRpdmlzaWJsZSBieSA4IHJlZ2FyZGxlc3MKLSMgb2YgTUFYSU1VTV9BTElH Tk9GIHRvIGF2b2lkIHRoYXQsIGJ1dCB3ZSBubyBsb25nZXIgc3VwcG9ydCBhbnkgcGxhdGZvcm1z Ci0jIHdoZXJlIFRZUEFMSUdOX0RPVUJMRSAhPSBNQVhJTVVNX0FMSUdOT0YuCi0jCi0jIFdlIGFz c3VtZSB3aXRob3V0IGNoZWNraW5nIHRoYXQgbG9uZydzIGFsaWdubWVudCBpcyBhdCBsZWFzdCBh cyBzdHJvbmcgYXMKLSMgY2hhciwgc2hvcnQsIG9yIGludC4gIE5vdGUgdGhhdCB3ZSBpbnRlbnRp b25hbGx5IGRvIG5vdCBjb25zaWRlciBhbnkgdHlwZXMKLSMgd2lkZXIgdGhhbiA2NCBiaXRzLCBh cyBhbGxvd2luZyBNQVhJTVVNX0FMSUdOT0YgdG8gZXhjZWVkIDggd291bGQgYmUgdG9vCi0jIG11 Y2ggb2YgYSBwZW5hbHR5IGZvciBkaXNrIGFuZCBtZW1vcnkgc3BhY2UuCi0KLU1BWF9BTElHTk9G PSRhY19jdl9hbGlnbm9mX2RvdWJsZQotCi1pZiB0ZXN0ICRhY19jdl9hbGlnbm9mX2xvbmcgLWd0 ICRNQVhfQUxJR05PRiA7IHRoZW4KLSAgYXNfZm5fZXJyb3IgJD8gImFsaWdubWVudCBvZiAnbG9u ZycgaXMgZ3JlYXRlciB0aGFuIHRoZSBhbGlnbm1lbnQgb2YgJ2RvdWJsZSciICIkTElORU5PIiA1 Ci1maQotaWYgdGVzdCB4IiRIQVZFX0xPTkdfTE9OR19JTlRfNjQiID0geHllcyAmJiB0ZXN0ICRh Y19jdl9hbGlnbm9mX2xvbmdfbG9uZ19pbnQgLWd0ICRNQVhfQUxJR05PRiA7IHRoZW4KLSAgYXNf Zm5fZXJyb3IgJD8gImFsaWdubWVudCBvZiAnbG9uZyBsb25nIGludCcgaXMgZ3JlYXRlciB0aGFu IHRoZSBhbGlnbm1lbnQgb2YgJ2RvdWJsZSciICIkTElORU5PIiA1CisjIFdlIGFzc3VtZSBsb25n J3MgYWxpZ25tZW50IGlzIGF0IGxlYXN0IGFzIHN0cm9uZyBhcyBjaGFyLCBzaG9ydCwgb3IgaW50 OworIyBidXQgd2UgbXVzdCBjaGVjayBsb25nIGxvbmcgKGlmIGl0IGlzIGJlaW5nIHVzZWQgZm9y IGludDY0KSBhbmQgZG91YmxlLgorIyBOb3RlIHRoYXQgd2UgaW50ZW50aW9uYWxseSBkbyBub3Qg Y29uc2lkZXIgYW55IHR5cGVzIHdpZGVyIHRoYW4gNjQgYml0cywKKyMgYXMgYWxsb3dpbmcgTUFY SU1VTV9BTElHTk9GIHRvIGV4Y2VlZCA4IHdvdWxkIGJlIHRvbyBtdWNoIG9mIGEgcGVuYWx0eQor IyBmb3IgZGlzayBhbmQgbWVtb3J5IHNwYWNlLgorCitNQVhfQUxJR05PRj0kYWNfY3ZfYWxpZ25v Zl9sb25nCitpZiB0ZXN0ICRNQVhfQUxJR05PRiAtbHQgJGFjX2N2X2FsaWdub2ZfZG91YmxlIDsg dGhlbgorICBNQVhfQUxJR05PRj0kYWNfY3ZfYWxpZ25vZl9kb3VibGUKK2ZpCitpZiB0ZXN0IHgi JEhBVkVfTE9OR19MT05HX0lOVF82NCIgPSB4eWVzICYmIHRlc3QgJE1BWF9BTElHTk9GIC1sdCAk YWNfY3ZfYWxpZ25vZl9sb25nX2xvbmdfaW50IDsgdGhlbgorICBNQVhfQUxJR05PRj0iJGFjX2N2 X2FsaWdub2ZfbG9uZ19sb25nX2ludCIKIGZpCiAKIGNhdCA+PmNvbmZkZWZzLmggPDxfQUNFT0YK ZGlmZiAtLWdpdCBhL2NvbmZpZ3VyZS5hYyBiL2NvbmZpZ3VyZS5hYwppbmRleCBjNzMyMmUyOTJj Li4yMjA2OTM5NWE2IDEwMDY0NAotLS0gYS9jb25maWd1cmUuYWMKKysrIGIvY29uZmlndXJlLmFj CkBAIC02Miw2ICs2Miw3IEBAIFBHQUNfQVJHX1JFUSh3aXRoLCB0ZW1wbGF0ZSwgW05BTUVdLCBb b3ZlcnJpZGUgb3BlcmF0aW5nIHN5c3RlbSB0ZW1wbGF0ZV0sCiAjIC0td2l0aC10ZW1wbGF0ZSBu b3QgZ2l2ZW4KIAogY2FzZSAkaG9zdF9vcyBpbgorICAgICBhaXgqKSB0ZW1wbGF0ZT1haXggOzsK ICAgY3lnd2luKnxtc3lzKikgdGVtcGxhdGU9Y3lnd2luIDs7CiAgIGRhcndpbiopIHRlbXBsYXRl PWRhcndpbiA7OwogZHJhZ29uZmx5KikgdGVtcGxhdGU9bmV0YnNkIDs7CkBAIC0xMzg1LDcgKzEz ODYsOCBAQCBpZiB0ZXN0ICIkd2l0aF96c3RkIiA9IHllcyA7IHRoZW4KICAgQUNfQ0hFQ0tfTElC KHpzdGQsIFpTVERfY29tcHJlc3MsIFtdLCBbQUNfTVNHX0VSUk9SKFtsaWJyYXJ5ICd6c3RkJyBp cyByZXF1aXJlZCBmb3IgWlNURCBzdXBwb3J0XSldKQogZmkKIAotIyBOb3RlOiBXZSBjYW4gdGVz dCBmb3IgbGlibGRhcF9yIG9ubHkgYWZ0ZXIgd2Uga25vdyBQVEhSRUFEX0xJQlMKKyMgTm90ZTog V2UgY2FuIHRlc3QgZm9yIGxpYmxkYXBfciBvbmx5IGFmdGVyIHdlIGtub3cgUFRIUkVBRF9MSUJT OworIyBhbHNvLCBvbiBBSVgsIHdlIG1heSBuZWVkIHRvIGhhdmUgb3BlbnNzbCBpbiBMSUJTIGZv ciB0aGlzIHN0ZXAuCiBpZiB0ZXN0ICIkd2l0aF9sZGFwIiA9IHllcyA7IHRoZW4KICAgX0xJQlM9 IiRMSUJTIgogICBpZiB0ZXN0ICIkUE9SVE5BTUUiICE9ICJ3aW4zMiI7IHRoZW4KQEAgLTE2NDMs OCArMTY0NSwxMiBAQCBQR0FDX1RZUEVfTE9DQUxFX1QKICMgc3BlbGxpbmcgaXQgdW5kZXJzdGFu ZHMsIGJlY2F1c2UgaXQgY29uZmxpY3RzIHdpdGgKICMgX19kZWNsc3BlYyhyZXN0cmljdCkuIFRo ZXJlZm9yZSB3ZSBkZWZpbmUgcGdfcmVzdHJpY3QgdG8gdGhlCiAjIGFwcHJvcHJpYXRlIGRlZmlu aXRpb24sIHdoaWNoIHByZXN1bWFibHkgd29uJ3QgY29uZmxpY3QuCisjCisjIEFsbG93IHBsYXRm b3JtcyB3aXRoIGJ1Z2d5IGNvbXBpbGVycyB0byBmb3JjZSByZXN0cmljdCB0byBub3QgYmUKKyMg dXNlZCBieSBzZXR0aW5nICRGT1JDRV9ESVNBQkxFX1JFU1RSSUNUPXllcyBpbiB0aGUgcmVsZXZh bnQKKyMgdGVtcGxhdGUuCiBBQ19DX1JFU1RSSUNUCi1pZiB0ZXN0ICIkYWNfY3ZfY19yZXN0cmlj dCIgPSAibm8iOyB0aGVuCitpZiB0ZXN0ICIkYWNfY3ZfY19yZXN0cmljdCIgPSAibm8iIC1vICJ4 JEZPUkNFX0RJU0FCTEVfUkVTVFJJQ1QiID0gInh5ZXMiOyB0aGVuCiAgIHBnX3Jlc3RyaWN0PSIi CiBlbHNlCiAgIHBnX3Jlc3RyaWN0PSIkYWNfY3ZfY19yZXN0cmljdCIKQEAgLTE5OTYsMjIgKzIw MDIsMTEgQEAgZmkKIEFDX0NIRUNLX0FMSUdOT0YoZG91YmxlKQogCiAjIENvbXB1dGUgbWF4aW11 bSBhbGlnbm1lbnQgb2YgYW55IGJhc2ljIHR5cGUuCi0jCi0jIFdlIHJlcXVpcmUgJ2RvdWJsZScg dG8gaGF2ZSB0aGUgc3RyaWN0ZXN0IGFsaWdubWVudCBhbW9uZyB0aGUgYmFzaWMgdHlwZXMsCi0j IGJlY2F1c2Ugb3RoZXJ3aXNlIHRoZSBDIEFCSSBtaWdodCBpbXBvc2UgOC1ieXRlIGFsaWdubWVu dCBvbiBzb21lIG9mIHRoZQotIyBvdGhlciBDIHR5cGVzIHRoYXQgY29ycmVzcG9uZCB0byBUWVBB TElHTl9ET1VCTEUgU1FMIHR5cGVzLiAgVGhhdCBjb3VsZAotIyBjYXVzZSBhIG1pc21hdGNoIGJl dHdlZW4gdGhlIHR1cGxlIGxheW91dCBhbmQgdGhlIEMgc3RydWN0IGxheW91dCBvZiBhCi0jIGNh dGFsb2cgdHVwbGUuICBXZSB1c2VkIHRvIGNhcmVmdWxseSBvcmRlciBjYXRhbG9nIGNvbHVtbnMg c3VjaCB0aGF0IGFueQotIyBmaXhlZC13aWR0aCwgYXR0YWxpZ249NCBjb2x1bW5zIHdlcmUgYXQg b2Zmc2V0cyBkaXZpc2libGUgYnkgOCByZWdhcmRsZXNzCi0jIG9mIE1BWElNVU1fQUxJR05PRiB0 byBhdm9pZCB0aGF0LCBidXQgd2Ugbm8gbG9uZ2VyIHN1cHBvcnQgYW55IHBsYXRmb3JtcwotIyB3 aGVyZSBUWVBBTElHTl9ET1VCTEUgIT0gTUFYSU1VTV9BTElHTk9GLgotIwotIyBXZSBhc3N1bWUg d2l0aG91dCBjaGVja2luZyB0aGF0IGxvbmcncyBhbGlnbm1lbnQgaXMgYXQgbGVhc3QgYXMgc3Ry b25nIGFzCi0jIGNoYXIsIHNob3J0LCBvciBpbnQuICBOb3RlIHRoYXQgd2UgaW50ZW50aW9uYWxs eSBkbyBub3QgY29uc2lkZXIgYW55IHR5cGVzCi0jIHdpZGVyIHRoYW4gNjQgYml0cywgYXMgYWxs b3dpbmcgTUFYSU1VTV9BTElHTk9GIHRvIGV4Y2VlZCA4IHdvdWxkIGJlIHRvbwotIyBtdWNoIG9m IGEgcGVuYWx0eSBmb3IgZGlzayBhbmQgbWVtb3J5IHNwYWNlLgotCi1NQVhfQUxJR05PRj0kYWNf Y3ZfYWxpZ25vZl9kb3VibGUKKyMgV2UgYXNzdW1lIGxvbmcncyBhbGlnbm1lbnQgaXMgYXQgbGVh c3QgYXMgc3Ryb25nIGFzIGNoYXIsIHNob3J0LCBvciBpbnQ7CisjIGJ1dCB3ZSBtdXN0IGNoZWNr IGxvbmcgbG9uZyAoaWYgaXQgaXMgYmVpbmcgdXNlZCBmb3IgaW50NjQpIGFuZCBkb3VibGUuCisj IE5vdGUgdGhhdCB3ZSBpbnRlbnRpb25hbGx5IGRvIG5vdCBjb25zaWRlciBhbnkgdHlwZXMgd2lk ZXIgdGhhbiA2NCBiaXRzLAorIyBhcyBhbGxvd2luZyBNQVhJTVVNX0FMSUdOT0YgdG8gZXhjZWVk IDggd291bGQgYmUgdG9vIG11Y2ggb2YgYSBwZW5hbHR5CisjIGZvciBkaXNrIGFuZCBtZW1vcnkg c3BhY2UuCiAKIGlmIHRlc3QgJGFjX2N2X2FsaWdub2ZfbG9uZyAtZ3QgJE1BWF9BTElHTk9GIDsg dGhlbgogICBBQ19NU0dfRVJST1IoW2FsaWdubWVudCBvZiAnbG9uZycgaXMgZ3JlYXRlciB0aGFu IHRoZSBhbGlnbm1lbnQgb2YgJ2RvdWJsZSddKQpkaWZmIC0tZ2l0IGEvZG9jL3NyYy9zZ21sL2Rm dW5jLnNnbWwgYi9kb2Mvc3JjL3NnbWwvZGZ1bmMuc2dtbAppbmRleCBiOTRhZWZjZDBjLi41NTRm OWZhYzRjIDEwMDY0NAotLS0gYS9kb2Mvc3JjL3NnbWwvZGZ1bmMuc2dtbAorKysgYi9kb2Mvc3Jj L3NnbWwvZGZ1bmMuc2dtbApAQCAtMjAyLDQgKzIwMiwyMyBAQCBnY2MgLUcgLW8gZm9vLnNvIGZv by5vCiAgIHNlcnZlciBleHBlY3RzIHRvIGZpbmQgdGhlIHNoYXJlZCBsaWJyYXJ5IGZpbGVzLgog IDwvcGFyYT4KIAorPCEtLQorVW5kZXIgQUlYLCBvYmplY3QgZmlsZXMgYXJlIGNvbXBpbGVkIG5v cm1hbGx5IGJ1dCBidWlsZGluZyB0aGUgc2hhcmVkCitsaWJyYXJ5IHJlcXVpcmVzIGEgY291cGxl IG9mIHN0ZXBzLiAgRmlyc3QsIGNyZWF0ZSB0aGUgb2JqZWN0IGZpbGU6CisubmYKK2NjIDxvdGhl ciBmbGFncz4gLWMgZm9vLmMKKy5maQorWW91IG11c3QgdGhlbiBjcmVhdGUgYSBzeW1ib2wgXCoo bHFleHBvcnRzXCoocnEgZmlsZSBmb3IgdGhlIG9iamVjdAorZmlsZToKKy5uZgorbWtsZGV4cG9y dCBmb28ubyBgcHdkYCAmZ3Q7IGZvby5leHAKKy5maQorRmluYWxseSwgeW91IGNhbiBjcmVhdGUg dGhlIHNoYXJlZCBsaWJyYXJ5OgorLm5mCitsZCA8b3RoZXIgZmxhZ3M+IC1INTEyIC1UNTEyIC1v IGZvby5zbyAtZSBfbm9zdGFydCBcZQorICAgLWJJOi4uLi9saWIvcG9zdGdyZXMuZXhwIC1iRTpm b28uZXhwIGZvby5vIFxlCisgICAtbG0gLWxjIDI+L2Rldi9udWxsCisuZmkKKyAgLS0+CisKIDwv c2VjdDI+CmRpZmYgLS1naXQgYS9kb2Mvc3JjL3NnbWwvaW5zdGFsbGF0aW9uLnNnbWwgYi9kb2Mv c3JjL3NnbWwvaW5zdGFsbGF0aW9uLnNnbWwKaW5kZXggMWIzMmQ1Y2E2Mi4uNjBlOWEzNGEwMyAx MDA2NDQKLS0tIGEvZG9jL3NyYy9zZ21sL2luc3RhbGxhdGlvbi5zZ21sCisrKyBiL2RvYy9zcmMv c2dtbC9pbnN0YWxsYXRpb24uc2dtbApAQCAtMzQwMSw3ICszNDAxLDcgQEAgZXhwb3J0IE1BTlBB VEgKICAgPHBhcmE+CiAgICA8cHJvZHVjdG5hbWU+UG9zdGdyZVNRTDwvcHJvZHVjdG5hbWU+IGNh biBiZSBleHBlY3RlZCB0byB3b3JrIG9uIGN1cnJlbnQKICAgIHZlcnNpb25zIG9mIHRoZXNlIG9w ZXJhdGluZyBzeXN0ZW1zOiBMaW51eCwgV2luZG93cywKLSAgIEZyZWVCU0QsIE9wZW5CU0QsIE5l dEJTRCwgRHJhZ29uRmx5QlNELCBtYWNPUywgU29sYXJpcywgYW5kIGlsbHVtb3MuCisgICBGcmVl QlNELCBPcGVuQlNELCBOZXRCU0QsIERyYWdvbkZseUJTRCwgbWFjT1MsIEFJWCwgU29sYXJpcywg YW5kIGlsbHVtb3MuCiAgICBPdGhlciBVbml4LWxpa2Ugc3lzdGVtcyBtYXkgYWxzbyB3b3JrIGJ1 dCBhcmUgbm90IGN1cnJlbnRseQogICAgYmVpbmcgdGVzdGVkLiAgSW4gbW9zdCBjYXNlcywgYWxs IENQVSBhcmNoaXRlY3R1cmVzIHN1cHBvcnRlZCBieQogICAgYSBnaXZlbiBvcGVyYXRpbmcgc3lz dGVtIHdpbGwgd29yay4gIExvb2sgaW4KQEAgLTM0NDUsNiArMzQ0NSwxMjIgQEAgZXhwb3J0IE1B TlBBVEgKICAgIGluc3RhbGxhdGlvbiBpc3N1ZXMuCiAgIDwvcGFyYT4KIAorICA8c2VjdDIgaWQ9 Imluc3RhbGxhdGlvbi1ub3Rlcy1haXgiPgorICAgPHRpdGxlPkFJWDwvdGl0bGU+CisKKyAgIDxp bmRleHRlcm0gem9uZT0iaW5zdGFsbGF0aW9uLW5vdGVzLWFpeCI+CisgICAgPHByaW1hcnk+QUlY PC9wcmltYXJ5PgorICAgIDxzZWNvbmRhcnk+aW5zdGFsbGF0aW9uIG9uPC9zZWNvbmRhcnk+Cisg ICA8L2luZGV4dGVybT4KKworICAgPHBhcmE+CisgICAgWW91IGNhbiB1c2UgR0NDIHRvIGJ1aWxk IDxwcm9kdWN0bmFtZT5Qb3N0Z3JlU1FMPC9wcm9kdWN0bmFtZT4KKyAgICBvbiA8cHJvZHVjdG5h bWU+QUlYPC9wcm9kdWN0bmFtZT4uCisgICA8L3BhcmE+CisKKyAgIDxwYXJhPgorICAgIDxwcm9k dWN0bmFtZT5BSVg8L3Byb2R1Y3RuYW1lPiB2ZXJzaW9ucyBiZWZvcmUgNy4xIGFyZSBubyBsb25n ZXIKKyAgICB0ZXN0ZWQgbm9yIHN1cHBvcnRlZCBieSB0aGUgPHByb2R1Y3RuYW1lPlBvc3RncmVT UUw8L3Byb2R1Y3RuYW1lPgorICAgIGNvbW11bml0eS4KKyAgIDwvcGFyYT4KKworICAgPHNlY3Qz IGlkPSJpbnN0YWxsYXRpb24tbm90ZXMtYWl4LW1lbS1tYW5hZ2VtZW50Ij4KKyAgICA8dGl0bGU+ TWVtb3J5IE1hbmFnZW1lbnQ8L3RpdGxlPgorICAgIDwhLS0gaHR0cHM6Ly9hcmNoaXZlcy5wb3N0 Z3Jlc3FsLm9yZy9tZXNzYWdlLWlkLzYwM2JncW1wbDkuZnNmQGRiYTIuaW50LmxpYmVydHlybXMu Y29tIC0tPgorCisgICAgPHBhcmE+CisgICAgIEFJWCBjYW4gYmUgc29tZXdoYXQgcGVjdWxpYXIg d2l0aCByZWdhcmRzIHRvIHRoZSB3YXkgaXQgZG9lcworICAgICBtZW1vcnkgbWFuYWdlbWVudC4g IFlvdSBjYW4gaGF2ZSBhIHNlcnZlciB3aXRoIG1hbnkgbXVsdGlwbGVzIG9mCisgICAgIGdpZ2Fi eXRlcyBvZiBSQU0gZnJlZSwgYnV0IHN0aWxsIGdldCBvdXQgb2YgbWVtb3J5IG9yIGFkZHJlc3MK KyAgICAgc3BhY2UgZXJyb3JzIHdoZW4gcnVubmluZyBhcHBsaWNhdGlvbnMuICBPbmUgZXhhbXBs ZQorICAgICBpcyBsb2FkaW5nIG9mIGV4dGVuc2lvbnMgZmFpbGluZyB3aXRoIHVudXN1YWwgZXJy b3JzLgorICAgICBGb3IgZXhhbXBsZSwgcnVubmluZyBhcyB0aGUgb3duZXIgb2YgdGhlIFBvc3Rn cmVTUUwgaW5zdGFsbGF0aW9uOgorPHNjcmVlbj4KKz0jIENSRUFURSBFWFRFTlNJT04gcGxwZXJs OworRVJST1I6ICBjb3VsZCBub3QgbG9hZCBsaWJyYXJ5ICIvb3B0L2Ricy9wZ3NxbC9saWIvcGxw ZXJsLnNvIjogQSBtZW1vcnkgYWRkcmVzcyBpcyBub3QgaW4gdGhlIGFkZHJlc3Mgc3BhY2UgZm9y IHRoZSBwcm9jZXNzLgorPC9zY3JlZW4+CisgICAgUnVubmluZyBhcyBhIG5vbi1vd25lciBpbiB0 aGUgZ3JvdXAgcG9zc2Vzc2luZyB0aGUgUG9zdGdyZVNRTAorICAgIGluc3RhbGxhdGlvbjoKKzxz Y3JlZW4+Cis9IyBDUkVBVEUgRVhURU5TSU9OIHBscGVybDsKK0VSUk9SOiAgY291bGQgbm90IGxv YWQgbGlicmFyeSAiL29wdC9kYnMvcGdzcWwvbGliL3BscGVybC5zbyI6IEJhZCBhZGRyZXNzCis8 L3NjcmVlbj4KKyAgICAgQW5vdGhlciBleGFtcGxlIGlzIG91dCBvZiBtZW1vcnkgZXJyb3JzIGlu IHRoZSBQb3N0Z3JlU1FMIHNlcnZlcgorICAgICBsb2dzLCB3aXRoIGV2ZXJ5IG1lbW9yeSBhbGxv Y2F0aW9uIG5lYXIgb3IgZ3JlYXRlciB0aGFuIDI1NiBNQgorICAgICBmYWlsaW5nLgorICAgIDwv cGFyYT4KKworICAgIDxwYXJhPgorICAgICBUaGUgb3ZlcmFsbCBjYXVzZSBvZiBhbGwgdGhlc2Ug cHJvYmxlbXMgaXMgdGhlIGRlZmF1bHQgYml0dGVkbmVzcworICAgICBhbmQgbWVtb3J5IG1vZGVs IHVzZWQgYnkgdGhlIHNlcnZlciBwcm9jZXNzLiAgQnkgZGVmYXVsdCwgYWxsCisgICAgIGJpbmFy aWVzIGJ1aWx0IG9uIEFJWCBhcmUgMzItYml0LiAgVGhpcyBkb2VzIG5vdCBkZXBlbmQgdXBvbgor ICAgICBoYXJkd2FyZSB0eXBlIG9yIGtlcm5lbCBpbiB1c2UuICBUaGVzZSAzMi1iaXQgcHJvY2Vz c2VzIGFyZQorICAgICBsaW1pdGVkIHRvIDQgR0Igb2YgbWVtb3J5IGxhaWQgb3V0IGluIDI1NiBN QiBzZWdtZW50cyB1c2luZyBvbmUKKyAgICAgb2YgYSBmZXcgbW9kZWxzLiAgVGhlIGRlZmF1bHQg YWxsb3dzIGZvciBsZXNzIHRoYW4gMjU2IE1CIGluIHRoZQorICAgICBoZWFwIGFzIGl0IHNoYXJl cyBhIHNpbmdsZSBzZWdtZW50IHdpdGggdGhlIHN0YWNrLgorICAgIDwvcGFyYT4KKworICAgIDxw YXJhPgorICAgICBJbiB0aGUgY2FzZSBvZiB0aGUgPGxpdGVyYWw+cGxwZXJsPC9saXRlcmFsPiBl eGFtcGxlLCBhYm92ZSwKKyAgICAgY2hlY2sgeW91ciB1bWFzayBhbmQgdGhlIHBlcm1pc3Npb25z IG9mIHRoZSBiaW5hcmllcyBpbiB5b3VyCisgICAgIFBvc3RncmVTUUwgaW5zdGFsbGF0aW9uLiAg VGhlIGJpbmFyaWVzIGludm9sdmVkIGluIHRoYXQgZXhhbXBsZQorICAgICB3ZXJlIDMyLWJpdCBh bmQgaW5zdGFsbGVkIGFzIG1vZGUgNzUwIGluc3RlYWQgb2YgNzU1LiAgRHVlIHRvIHRoZQorICAg ICBwZXJtaXNzaW9ucyBiZWluZyBzZXQgaW4gdGhpcyBmYXNoaW9uLCBvbmx5IHRoZSBvd25lciBv ciBhIG1lbWJlcgorICAgICBvZiB0aGUgcG9zc2Vzc2luZyBncm91cCBjYW4gbG9hZCB0aGUgbGli cmFyeS4gIFNpbmNlIGl0IGlzbid0CisgICAgIHdvcmxkLXJlYWRhYmxlLCB0aGUgbG9hZGVyIHBs YWNlcyB0aGUgb2JqZWN0IGludG8gdGhlIHByb2Nlc3MnCisgICAgIGhlYXAgaW5zdGVhZCBvZiB0 aGUgc2hhcmVkIGxpYnJhcnkgc2VnbWVudHMgd2hlcmUgaXQgd291bGQKKyAgICAgb3RoZXJ3aXNl IGJlIHBsYWNlZC4KKyAgICA8L3BhcmE+CisKKyAgICA8cGFyYT4KKyAgICAgVGhlIDxxdW90ZT5p ZGVhbDwvcXVvdGU+IHNvbHV0aW9uIGZvciB0aGlzIGlzIHRvIHVzZSBhIDY0LWJpdAorICAgICBi dWlsZCBvZiBQb3N0Z3JlU1FMLCBidXQgdGhhdCBpcyBub3QgYWx3YXlzIHByYWN0aWNhbCwgYmVj YXVzZQorICAgICBzeXN0ZW1zIHdpdGggMzItYml0IHByb2Nlc3NvcnMgY2FuIGJ1aWxkLCBidXQg bm90IHJ1biwgNjQtYml0CisgICAgIGJpbmFyaWVzLgorICAgIDwvcGFyYT4KKworICAgIDxwYXJh PgorICAgICBJZiBhIDMyLWJpdCBiaW5hcnkgaXMgZGVzaXJlZCwgc2V0IDxzeW1ib2w+TERSX0NO VFJMPC9zeW1ib2w+IHRvCisgICAgIDxsaXRlcmFsPk1BWERBVEE9MHg8cmVwbGFjZWFibGU+bjwv cmVwbGFjZWFibGU+MDAwMDAwMDwvbGl0ZXJhbD4sCisgICAgIHdoZXJlIDEgJmx0Oz0gbiAmbHQ7 PSA4LCBiZWZvcmUgc3RhcnRpbmcgdGhlIFBvc3RncmVTUUwgc2VydmVyLAorICAgICBhbmQgdHJ5 IGRpZmZlcmVudCB2YWx1ZXMgYW5kIDxmaWxlbmFtZT5wb3N0Z3Jlc3FsLmNvbmY8L2ZpbGVuYW1l PgorICAgICBzZXR0aW5ncyB0byBmaW5kIGEgY29uZmlndXJhdGlvbiB0aGF0IHdvcmtzIHNhdGlz ZmFjdG9yaWx5LiAgVGhpcworICAgICB1c2Ugb2YgPHN5bWJvbD5MRFJfQ05UUkw8L3N5bWJvbD4g dGVsbHMgQUlYIHRoYXQgeW91IHdhbnQgdGhlCisgICAgIHNlcnZlciB0byBoYXZlIDxzeW1ib2w+ TUFYREFUQTwvc3ltYm9sPiBieXRlcyBzZXQgYXNpZGUgZm9yIHRoZQorICAgICBoZWFwLCBhbGxv Y2F0ZWQgaW4gMjU2IE1CIHNlZ21lbnRzLiAgV2hlbiB5b3UgZmluZCBhIHdvcmthYmxlCisgICAg IGNvbmZpZ3VyYXRpb24sCisgICAgIDxjb21tYW5kPmxkZWRpdDwvY29tbWFuZD4gY2FuIGJlIHVz ZWQgdG8gbW9kaWZ5IHRoZSBiaW5hcmllcyBzbworICAgICB0aGF0IHRoZXkgZGVmYXVsdCB0byB1 c2luZyB0aGUgZGVzaXJlZCBoZWFwIHNpemUuICBQb3N0Z3JlU1FMIGNhbgorICAgICBhbHNvIGJl IHJlYnVpbHQsIHBhc3NpbmcgPGxpdGVyYWw+Y29uZmlndXJlCisgICAgIExERkxBR1M9Ii1XbCwt Ym1heGRhdGE6MHg8cmVwbGFjZWFibGU+bjwvcmVwbGFjZWFibGU+MDAwMDAwMCI8L2xpdGVyYWw+ CisgICAgIHRvIGFjaGlldmUgdGhlIHNhbWUgZWZmZWN0LgorICAgIDwvcGFyYT4KKworICAgIDxw YXJhPgorICAgICBGb3IgYSA2NC1iaXQgYnVpbGQsIHNldCA8ZW52YXI+T0JKRUNUX01PREU8L2Vu dmFyPiB0byA2NCBhbmQKKyAgICAgcGFzcyA8bGl0ZXJhbD5DQz0iZ2NjIC1tYWl4NjQiPC9saXRl cmFsPgorICAgICBhbmQgPGxpdGVyYWw+TERGTEFHUz0iLVdsLC1iYmlndG9jIjwvbGl0ZXJhbD4K KyAgICAgdG8gPGNvbW1hbmQ+Y29uZmlndXJlPC9jb21tYW5kPi4gCisgICAgIElmIHlvdSBvbWl0 IHRoZSBleHBvcnQgb2YKKyAgICA8ZW52YXI+T0JKRUNUX01PREU8L2VudmFyPiwgeW91ciBidWls ZCBtYXkgZmFpbCB3aXRoIGxpbmtlciBlcnJvcnMuICBXaGVuCisgICAgPGVudmFyPk9CSkVDVF9N T0RFPC9lbnZhcj4gaXMgc2V0LCBpdCB0ZWxscyBBSVgncyBidWlsZCB1dGlsaXRpZXMKKyAgICBz dWNoIGFzIDxjb21tYW5kPmFyPC9jb21tYW5kPiwgPGNvbW1hbmQ+YXM8L2NvbW1hbmQ+LCBhbmQg PGNvbW1hbmQ+bGQ8L2NvbW1hbmQ+IHdoYXQKKyAgICB0eXBlIG9mIG9iamVjdHMgdG8gZGVmYXVs dCB0byBoYW5kbGluZy4KKyAgICA8L3BhcmE+CisKKyAgICA8cGFyYT4KKyAgICAgQnkgZGVmYXVs dCwgb3ZlcmNvbW1pdCBvZiBwYWdpbmcgc3BhY2UgY2FuIGhhcHBlbi4gIFdoaWxlIHdlIGhhdmUK KyAgICAgbm90IHNlZW4gdGhpcyBvY2N1ciwgQUlYIHdpbGwga2lsbCBwcm9jZXNzZXMgd2hlbiBp dCBydW5zIG91dCBvZgorICAgICBtZW1vcnkgYW5kIHRoZSBvdmVyY29tbWl0IGlzIGFjY2Vzc2Vk LiAgVGhlIGNsb3Nlc3QgdG8gdGhpcyB0aGF0CisgICAgIHdlIGhhdmUgc2VlbiBpcyBmb3JrIGZh aWxpbmcgYmVjYXVzZSB0aGUgc3lzdGVtIGRlY2lkZWQgdGhhdAorICAgICB0aGVyZSB3YXMgbm90 IGVub3VnaCBtZW1vcnkgZm9yIGFub3RoZXIgcHJvY2Vzcy4gIExpa2UgbWFueSBvdGhlcgorICAg ICBwYXJ0cyBvZiBBSVgsIHRoZSBwYWdpbmcgc3BhY2UgYWxsb2NhdGlvbiBtZXRob2QgYW5kCisg ICAgIG91dC1vZi1tZW1vcnkga2lsbCBpcyBjb25maWd1cmFibGUgb24gYSBzeXN0ZW0tIG9yIHBy b2Nlc3Mtd2lkZQorICAgICBiYXNpcyBpZiB0aGlzIGJlY29tZXMgYSBwcm9ibGVtLgorICAgIDwv cGFyYT4KKyAgIDwvc2VjdDM+CisgIDwvc2VjdDI+CisKICAgPHNlY3QyIGlkPSJpbnN0YWxsYXRp b24tbm90ZXMtY3lnd2luIj4KICAgIDx0aXRsZT5DeWd3aW48L3RpdGxlPgogCmRpZmYgLS1naXQg YS9kb2Mvc3JjL3NnbWwvcnVudGltZS5zZ21sIGIvZG9jL3NyYy9zZ21sL3J1bnRpbWUuc2dtbApp bmRleCA2MDQ3YjgxNzFkLi42NDc1M2Q5YzAxIDEwMDY0NAotLS0gYS9kb2Mvc3JjL3NnbWwvcnVu dGltZS5zZ21sCisrKyBiL2RvYy9zcmMvc2dtbC9ydW50aW1lLnNnbWwKQEAgLTg5MSw2ICs4OTEs MjkgQEAgcHNxbDogZXJyb3I6IGNvbm5lY3Rpb24gdG8gc2VydmVyIG9uIHNvY2tldCAiL3RtcC8u cy5QR1NRTC41NDMyIiBmYWlsZWQ6IE5vIHN1Y2gKIAogCiAgICAgPHZhcmlhYmxlbGlzdD4KKyAg ICAgPHZhcmxpc3RlbnRyeT4KKyAgICAgIDx0ZXJtPjxzeXN0ZW1pdGVtIGNsYXNzPSJvc25hbWUi PkFJWDwvc3lzdGVtaXRlbT4KKyAgICAgIDxpbmRleHRlcm0+PHByaW1hcnk+QUlYPC9wcmltYXJ5 PjxzZWNvbmRhcnk+SVBDIGNvbmZpZ3VyYXRpb248L3NlY29uZGFyeT48L2luZGV4dGVybT4KKyAg ICAgIDwvdGVybT4KKyAgICAgIDxsaXN0aXRlbT4KKyAgICAgICA8cGFyYT4KKyAgICAgICAgSXQg c2hvdWxkIG5vdCBiZSBuZWNlc3NhcnkgdG8gZG8KKyAgICAgICAgYW55IHNwZWNpYWwgY29uZmln dXJhdGlvbiBmb3Igc3VjaCBwYXJhbWV0ZXJzIGFzCisgICAgICAgIDx2YXJuYW1lPlNITU1BWDwv dmFybmFtZT4sIGFzIGl0IGFwcGVhcnMgdGhpcyBpcyBjb25maWd1cmVkIHRvCisgICAgICAgIGFs bG93IGFsbCBtZW1vcnkgdG8gYmUgdXNlZCBhcyBzaGFyZWQgbWVtb3J5LiAgVGhhdCBpcyB0aGUK KyAgICAgICAgc29ydCBvZiBjb25maWd1cmF0aW9uIGNvbW1vbmx5IHVzZWQgZm9yIG90aGVyIGRh dGFiYXNlcyBzdWNoCisgICAgICAgIGFzIDxhcHBsaWNhdGlvbj5EQi8yPC9hcHBsaWNhdGlvbj4u PC9wYXJhPgorCisgICAgICAgPHBhcmE+IEl0IG1pZ2h0LCBob3dldmVyLCBiZSBuZWNlc3Nhcnkg dG8gbW9kaWZ5IHRoZSBnbG9iYWwKKyAgICAgICA8Y29tbWFuZD51bGltaXQ8L2NvbW1hbmQ+IGlu Zm9ybWF0aW9uIGluCisgICAgICAgPGZpbGVuYW1lPi9ldGMvc2VjdXJpdHkvbGltaXRzPC9maWxl bmFtZT4sIGFzIHRoZSBkZWZhdWx0IGhhcmQKKyAgICAgICBsaW1pdHMgZm9yIGZpbGUgc2l6ZXMg KDx2YXJuYW1lPmZzaXplPC92YXJuYW1lPikgYW5kIG51bWJlcnMgb2YKKyAgICAgICBmaWxlcyAo PHZhcm5hbWU+bm9maWxlczwvdmFybmFtZT4pIG1pZ2h0IGJlIHRvbyBsb3cuCisgICAgICAgPC9w YXJhPgorICAgICAgPC9saXN0aXRlbT4KKyAgICAgPC92YXJsaXN0ZW50cnk+CisKKwogICAgICA8 dmFybGlzdGVudHJ5PgogICAgICAgPHRlcm0+PHN5c3RlbWl0ZW0gY2xhc3M9Im9zbmFtZSI+RnJl ZUJTRDwvc3lzdGVtaXRlbT4KICAgICAgIDxpbmRleHRlcm0+PHByaW1hcnk+RnJlZUJTRDwvcHJp bWFyeT48c2Vjb25kYXJ5PklQQyBjb25maWd1cmF0aW9uPC9zZWNvbmRhcnk+PC9pbmRleHRlcm0+ CmRpZmYgLS1naXQgYS9tZXNvbi5idWlsZCBiL21lc29uLmJ1aWxkCmluZGV4IDFjMDU3OWQ1YTYu LmYxYWMxNTRjZGMgMTAwNjQ0Ci0tLSBhL21lc29uLmJ1aWxkCisrKyBiL21lc29uLmJ1aWxkCkBA IC0xOTYsNyArMTk2LDI2IEBAIGVuZGlmCiAjIHRoYXQgcHVycG9zZS4KIHBvcnRuYW1lID0gaG9z dF9zeXN0ZW0KIAotaWYgaG9zdF9zeXN0ZW0gPT0gJ2N5Z3dpbicKK2lmIGhvc3Rfc3lzdGVtID09 ICdhaXgnCisgIGxpYnJhcnlfcGF0aF92YXIgPSAnTElCUEFUSCcKKworICBleHBvcnRfZmlsZV9m b3JtYXQgPSAnYWl4JworICBleHBvcnRfZm10ID0gJy1XbCwtYkU6QDBAJworICBtb2RfbGlua19h cmdzX2ZtdCA9IFsnLVdsLC1iSTpAMEAnXQorICBtb2RfbGlua193aXRoX2RpciA9ICdsaWJkaXIn CisgIG1vZF9saW5rX3dpdGhfbmFtZSA9ICdAMEAuaW1wJworCisgICMgTTpTUkUgc2V0cyBhIGZs YWcgaW5kaWNhdGluZyB0aGF0IGFuIG9iamVjdCBpcyBhIHNoYXJlZCBsaWJyYXJ5LiBTZWVtcyB0 bworICAjIHdvcmsgaW4gc29tZSBjaXJjdW1zdGFuY2VzIHdpdGhvdXQsIGJ1dCByZXF1aXJlZCBp biBvdGhlcnMuCisgIGxkZmxhZ3Nfc2wgKz0gJy1XbCwtYk06U1JFJworICBsZGZsYWdzX2JlICs9 ICctV2wsLWJydGxsaWInCisKKyAgIyBOYXRpdmUgbWVtc2V0KCkgaXMgZmFzdGVyLCB0ZXN0ZWQg b246CisgICMgLSBBSVggNS4xIGFuZCA1LjIsIFhMQyA2LjAgKElCTSdzIGNjKQorICAjIC0gQUlY IDUuMyBNTDMsIGdjYyA0LjAuMQorICBtZW1zZXRfbG9vcF9saW1pdCA9IDAKKworZWxpZiBob3N0 X3N5c3RlbSA9PSAnY3lnd2luJwogICBzZW1hX2tpbmQgPSAndW5uYW1lZF9wb3NpeCcKICAgY3Bw ZmxhZ3MgKz0gJy1EX0dOVV9TT1VSQ0UnCiAgIGRsc3VmZml4ID0gJy5kbGwnCkBAIC0xNDkwLDEx ICsxNTA5LDExIEBAIHNpemVvZl9sb25nID0gY2Muc2l6ZW9mKCdsb25nJywgYXJnczogdGVzdF9j X2FyZ3MpCiBjZGF0YS5zZXQoJ1NJWkVPRl9MT05HJywgc2l6ZW9mX2xvbmcpCiBpZiBzaXplb2Zf bG9uZyA9PSA4CiAgIGNkYXRhLnNldCgnSEFWRV9MT05HX0lOVF82NCcsIDEpCi0gIHBnX2ludDY0 X3R5cGUgPSAnbG9uZyBpbnQnCisgIGNkYXRhLnNldCgnUEdfSU5UNjRfVFlQRScsICdsb25nIGlu dCcpCiAgIGNkYXRhLnNldF9xdW90ZWQoJ0lOVDY0X01PRElGSUVSJywgJ2wnKQogZWxpZiBzaXpl b2ZfbG9uZyA9PSA0IGFuZCBjYy5zaXplb2YoJ2xvbmcgbG9uZycsIGFyZ3M6IHRlc3RfY19hcmdz KSA9PSA4CiAgIGNkYXRhLnNldCgnSEFWRV9MT05HX0xPTkdfSU5UXzY0JywgMSkKLSAgcGdfaW50 NjRfdHlwZSA9ICdsb25nIGxvbmcgaW50JworICBjZGF0YS5zZXQoJ1BHX0lOVDY0X1RZUEUnLCAn bG9uZyBsb25nIGludCcpCiAgIGNkYXRhLnNldF9xdW90ZWQoJ0lOVDY0X01PRElGSUVSJywgJ2xs JykKIGVsc2UKICAgZXJyb3IoJ2RvIG5vdCBrbm93IGhvdyB0byBnZXQgYSA2NGJpdCBpbnQnKQpA QCAtMTUwOCwzMSArMTUyNywxNSBAQCBlbmRpZgogIyBEZXRlcm1pbmUgbWVtb3J5IGFsaWdubWVu dCByZXF1aXJlbWVudHMgZm9yIHRoZSBiYXNpYyBDIGRhdGEgdHlwZXMuCiAKIGFsaWdub2ZfdHlw ZXMgPSBbJ3Nob3J0JywgJ2ludCcsICdsb25nJywgJ2RvdWJsZSddCittYXhhbGlnbiA9IDAKIGZv cmVhY2ggdCA6IGFsaWdub2ZfdHlwZXMKICAgYWxpZ24gPSBjYy5hbGlnbm1lbnQodCwgYXJnczog dGVzdF9jX2FyZ3MpCisgIGlmIG1heGFsaWduIDwgYWxpZ24KKyAgICBtYXhhbGlnbiA9IGFsaWdu CisgIGVuZGlmCiAgIGNkYXRhLnNldCgnQUxJR05PRl9AMEAnLmZvcm1hdCh0LnRvX3VwcGVyKCkp LCBhbGlnbikKIGVuZGZvcmVhY2gKLQotIyBDb21wdXRlIG1heGltdW0gYWxpZ25tZW50IG9mIGFu eSBiYXNpYyB0eXBlLgotIwotIyBXZSByZXF1aXJlICdkb3VibGUnIHRvIGhhdmUgdGhlIHN0cmlj dGVzdCBhbGlnbm1lbnQgYW1vbmcgdGhlIGJhc2ljIHR5cGVzLAotIyBiZWNhdXNlIG90aGVyd2lz ZSB0aGUgQyBBQkkgbWlnaHQgaW1wb3NlIDgtYnl0ZSBhbGlnbm1lbnQgb24gc29tZSBvZiB0aGUK LSMgb3RoZXIgQyB0eXBlcyB0aGF0IGNvcnJlc3BvbmQgdG8gVFlQQUxJR05fRE9VQkxFIFNRTCB0 eXBlcy4gIFRoYXQgY291bGQKLSMgY2F1c2UgYSBtaXNtYXRjaCBiZXR3ZWVuIHRoZSB0dXBsZSBs YXlvdXQgYW5kIHRoZSBDIHN0cnVjdCBsYXlvdXQgb2YgYQotIyBjYXRhbG9nIHR1cGxlLiAgV2Ug dXNlZCB0byBjYXJlZnVsbHkgb3JkZXIgY2F0YWxvZyBjb2x1bW5zIHN1Y2ggdGhhdCBhbnkKLSMg Zml4ZWQtd2lkdGgsIGF0dGFsaWduPTQgY29sdW1ucyB3ZXJlIGF0IG9mZnNldHMgZGl2aXNpYmxl IGJ5IDggcmVnYXJkbGVzcwotIyBvZiBNQVhJTVVNX0FMSUdOT0YgdG8gYXZvaWQgdGhhdCwgYnV0 IHdlIG5vIGxvbmdlciBzdXBwb3J0IGFueSBwbGF0Zm9ybXMKLSMgd2hlcmUgVFlQQUxJR05fRE9V QkxFICE9IE1BWElNVU1fQUxJR05PRi4KLSMKLSMgV2UgYXNzdW1lIHdpdGhvdXQgY2hlY2tpbmcg dGhhdCBpbnQ2NCdzIGFsaWdubWVudCBpcyBhdCBsZWFzdCBhcyBzdHJvbmcKLSMgYXMgbG9uZywg Y2hhciwgc2hvcnQsIG9yIGludC4gIE5vdGUgdGhhdCB3ZSBpbnRlbnRpb25hbGx5IGRvIG5vdCBj b25zaWRlcgotIyBhbnkgdHlwZXMgd2lkZXIgdGhhbiA2NCBiaXRzLCBhcyBhbGxvd2luZyBNQVhJ TVVNX0FMSUdOT0YgdG8gZXhjZWVkIDgKLSMgd291bGQgYmUgdG9vIG11Y2ggb2YgYSBwZW5hbHR5 IGZvciBkaXNrIGFuZCBtZW1vcnkgc3BhY2UuCi1hbGlnbm9mX2RvdWJsZSA9IGNkYXRhLmdldCgn QUxJR05PRl9ET1VCTEUnKQotaWYgY2MuYWxpZ25tZW50KHBnX2ludDY0X3R5cGUsIGFyZ3M6IHRl c3RfY19hcmdzKSA+IGFsaWdub2ZfZG91YmxlCi0gIGVycm9yKCdhbGlnbm1lbnQgb2YgaW50NjQg aXMgZ3JlYXRlciB0aGFuIHRoZSBhbGlnbm1lbnQgb2YgZG91YmxlJykKLWVuZGlmCi1jZGF0YS5z ZXQoJ01BWElNVU1fQUxJR05PRicsIGFsaWdub2ZfZG91YmxlKQorY2RhdGEuc2V0KCdNQVhJTVVN X0FMSUdOT0YnLCBtYXhhbGlnbikKIAogY2RhdGEuc2V0KCdTSVpFT0ZfVk9JRF9QJywgY2Muc2l6 ZW9mKCd2b2lkIConLCBhcmdzOiB0ZXN0X2NfYXJncykpCiBjZGF0YS5zZXQoJ1NJWkVPRl9TSVpF X1QnLCBjYy5zaXplb2YoJ3NpemVfdCcsIGFyZ3M6IHRlc3RfY19hcmdzKSkKQEAgLTE1ODEsNyAr MTU4NCw3IEBAIGlmIGNjLmxpbmtzKCcnJwogICBpZiBub3QgbWVzb24uaXNfY3Jvc3NfYnVpbGQo KQogICAgIHIgPSBjYy5ydW4oJycnCiAgICAgLyogVGhpcyBtdXN0IG1hdGNoIHRoZSBjb3JyZXNw b25kaW5nIGNvZGUgaW4gYy5oOiAqLwotICAgICNpZiBkZWZpbmVkKF9fR05VQ19fKSB8fCBkZWZp bmVkKF9fU1VOUFJPX0MpCisgICAgI2lmIGRlZmluZWQoX19HTlVDX18pIHx8IGRlZmluZWQoX19T VU5QUk9fQykgfHwgZGVmaW5lZChfX0lCTUNfXykKICAgICAjZGVmaW5lIHBnX2F0dHJpYnV0ZV9h bGlnbmVkKGEpIF9fYXR0cmlidXRlX18oKGFsaWduZWQoYSkpKQogICAgICNlbGlmIGRlZmluZWQo X01TQ19WRVIpCiAgICAgI2RlZmluZSBwZ19hdHRyaWJ1dGVfYWxpZ25lZChhKSBfX2RlY2xzcGVj KGFsaWduKGEpKQpAQCAtMjQ3Niw2ICsyNDc5LDEwIEBAIGVuZGlmCiAjIGNvbmZsaWN0LgogIwog IyBXZSBhc3N1bWUgQzk5IHN1cHBvcnQsIHNvIHdlIGRvbid0IG5lZWQgdG8gbWFrZSB0aGlzIGNv bmRpdGlvbmFsLgorIworIyBYWFg6IEhpc3RvcmljYWxseSB3ZSBhbGxvd2VkIHBsYXRmb3JtcyB0 byBkaXNhYmxlIHJlc3RyaWN0IGluIHRlbXBsYXRlCisjIGZpbGVzLCBidXQgdGhhdCB3YXMgb25s eSBhZGRlZCBmb3IgQUlYIHdoZW4gYnVpbGRpbmcgd2l0aCBYTEMsIHdoaWNoIHdlCisjIGRvbid0 IHN1cHBvcnQgeWV0LgogY2RhdGEuc2V0KCdwZ19yZXN0cmljdCcsICdfX3Jlc3RyaWN0JykKIAog CmRpZmYgLS1naXQgYS9zcmMvTWFrZWZpbGUuc2hsaWIgYi9zcmMvTWFrZWZpbGUuc2hsaWIKaW5k ZXggZmE4MWY2ZmZkZC4uOGNhNTFjYTAzZiAxMDA2NDQKLS0tIGEvc3JjL01ha2VmaWxlLnNobGli CisrKyBiL3NyYy9NYWtlZmlsZS5zaGxpYgpAQCAtMTA2LDYgKzEwNiwyMCBAQCBpZmRlZiBTT19N QUpPUl9WRVJTSU9OCiBvdmVycmlkZSBDUFBGTEFHUyArPSAtRFNPX01BSk9SX1ZFUlNJT049JChT T19NQUpPUl9WRVJTSU9OKQogZW5kaWYKIAoraWZlcSAoJChQT1JUTkFNRSksIGFpeCkKKyAgTElO Sy5zaGFyZWQJCT0gJChDT01QSUxFUikKKyAgaWZkZWYgU09fTUFKT1JfVkVSU0lPTgorICAgIHNo bGliCQk9IGxpYiQoTkFNRSkkKERMU1VGRklYKS4kKFNPX01BSk9SX1ZFUlNJT04pCisgIGVuZGlm CisgIGhhc2xpYmFydWxlICAgPSB5ZXMKKyAgIyAkKGV4cG9ydHNfZmlsZSkgaXMgYWxzbyB1c2Fi bGUgYXMgYW4gaW1wb3J0IGZpbGUKKyAgZXhwb3J0c19maWxlCQk9IGxpYiQoTkFNRSkuZXhwCisg IEJVSUxELmV4cG9ydHMJCT0gKCBlY2hvICdcIyEgJChzaGxpYiknOyAkKEFXSykgJy9eW15cI10v IHtwcmludGYgIiVzXG4iLCQkMX0nICQ8ICkgPiAkQAorICBpZm5lcSAoLCQoU0hMSUJfRVhQT1JU UykpCisgICAgTElOSy5zaGFyZWQJCSs9IC1XbCwtYkU6JChleHBvcnRzX2ZpbGUpCisgIGVuZGlm CitlbmRpZgorCiBpZmVxICgkKFBPUlROQU1FKSwgZGFyd2luKQogICBpZmRlZiBzb25hbWUKICAg ICAjIGxpbmthYmxlIGxpYnJhcnkKQEAgLTI1NCw2ICsyNjgsMTQgQEAgJChzdGxpYik6ICQoT0JK UykgfCAkKFNITElCX1BSRVJFUVMpCiAJdG91Y2ggJEAKIGVuZGlmICNoYXNsaWJhcnVsZQogCisj IEFJWCB3cmFwcyBzaGFyZWQgbGlicmFyaWVzIGluc2lkZSBhIHN0YXRpYyBsaWJyYXJ5LCBjYW4g YmUgdXNlZCBib3RoCisjIGZvciBzdGF0aWMgYW5kIHNoYXJlZCBsaW5raW5nCitpZmVxICgkKFBP UlROQU1FKSwgYWl4KQorJChzdGxpYik6ICQoc2hsaWIpCisJcm0gLWYgJChzdGxpYikKKwkkKEFS KSAkKEFST1BUKSAkKHN0bGliKSAkKHNobGliKQorZW5kaWYgIyBhaXgKKwogaWZlcSAoLCQoZmls dGVyIGN5Z3dpbiB3aW4zMiwkKFBPUlROQU1FKSkpCiAKICMgTm9ybWFsIGNhc2UKQEAgLTI2Nyw4 ICsyODksMTEgQEAgaWZuZXEgKCQoc2hsaWIpLCAkKHNobGliX21ham9yKSkKIGVuZGlmCiAjIE1h a2Ugc3VyZSB3ZSBoYXZlIGEgbGluayB0byBhIG5hbWUgd2l0aG91dCBhbnkgdmVyc2lvbiBudW1i ZXJzCiBpZm5lcSAoJChzaGxpYiksICQoc2hsaWJfYmFyZSkpCisjIGV4Y2VwdCBvbiBBSVgsIHdo ZXJlIHRoYXQncyBub3QgYSB0aGluZworaWZuZXEgKCQoUE9SVE5BTUUpLCBhaXgpCiAJcm0gLWYg JChzaGxpYl9iYXJlKQogCSQoTE5fUykgJChzaGxpYikgJChzaGxpYl9iYXJlKQorZW5kaWYgIyBh aXgKIGVuZGlmICMgc2hsaWJfYmFyZQogZW5kaWYgIyBzaGxpYl9tYWpvcgogCkBAIC0zNzYsNiAr NDAxLDkgQEAgaW5zdGFsbC1saWItc3RhdGljOiAkKHN0bGliKSBpbnN0YWxsZGlycy1saWIKIAog aW5zdGFsbC1saWItc2hhcmVkOiAkKHNobGliKSBpbnN0YWxsZGlycy1saWIKIGlmZGVmIHNvbmFt ZQorIyB3ZSBkb24ndCBpbnN0YWxsICQoc2hsaWIpIG9uIEFJWAorIyAoc2VlIGh0dHA6Ly9hcmNo aXZlcy5wb3N0Z3Jlc3FsLm9yZy9tZXNzYWdlLWlkLzUyRUYyMEIyRTMyMDk0NDNCQzM3NzM2RDAw QzNDMTM4MEE2RTc5RkVARVhBRFYxLmhvc3QubWFnd2llbi5ndi5hdCkKK2lmbmVxICgkKFBPUlRO QU1FKSwgYWl4KQogCSQoSU5TVEFMTF9TSExJQikgJDwgJyQoREVTVERJUikkKGxpYmRpcikvJChz aGxpYiknCiBpZm5lcSAoJChQT1JUTkFNRSksIGN5Z3dpbikKIGlmbmVxICgkKFBPUlROQU1FKSwg d2luMzIpCkBAIC0zOTEsNiArNDE5LDcgQEAgaWZuZXEgKCQoc2hsaWIpLCAkKHNobGliX2JhcmUp KQogZW5kaWYKIGVuZGlmICMgbm90IHdpbjMyCiBlbmRpZiAjIG5vdCBjeWd3aW4KK2VuZGlmICMg bm90IGFpeAogaWZuZXEgKCwkKGZpbmRzdHJpbmcgJChQT1JUTkFNRSksd2luMzIgY3lnd2luKSkK IAkkKElOU1RBTExfU0hMSUIpICQ8ICckKERFU1RESVIpJChiaW5kaXIpLyQoc2hsaWIpJwogZW5k aWYKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL01ha2VmaWxlIGIvc3JjL2JhY2tlbmQvTWFrZWZp bGUKaW5kZXggNjcwMGFlYzAzOS4uOTU0YjE0OTYyZiAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQv TWFrZWZpbGUKKysrIGIvc3JjL2JhY2tlbmQvTWFrZWZpbGUKQEAgLTYyLDEyICs2MiwxNCBAQCBh bGw6IHN1Ym1ha2UtbGlicGdwb3J0IHN1Ym1ha2UtY2F0YWxvZy1oZWFkZXJzIHN1Ym1ha2UtdXRp bHMtaGVhZGVycyBwb3N0Z3JlcyAkKAogCiBpZm5lcSAoJChQT1JUTkFNRSksIGN5Z3dpbikKIGlm bmVxICgkKFBPUlROQU1FKSwgd2luMzIpCitpZm5lcSAoJChQT1JUTkFNRSksIGFpeCkKIAogcG9z dGdyZXM6ICQoT0JKUykKIAkkKENDKSAkKENGTEFHUykgJChjYWxsIGV4cGFuZF9zdWJzeXMsJF4p ICQoTERGTEFHUykgJChMSUJTKSAtbyAkQAogCiBlbmRpZgogZW5kaWYKK2VuZGlmCiAKIGlmZXEg KCQoUE9SVE5BTUUpLCBjeWd3aW4pCiAKQEAgLTk0LDYgKzk2LDI0IEBAIGxpYnBvc3RncmVzLmE6 IHBvc3RncmVzCiAKIGVuZGlmICMgd2luMzIKIAoraWZlcSAoJChQT1JUTkFNRSksIGFpeCkKKwor cG9zdGdyZXM6ICQoUE9TVEdSRVNfSU1QKQorCSQoQ0MpICQoQ0ZMQUdTKSAkKGNhbGwgZXhwYW5k X3N1YnN5cywkKE9CSlMpKSAkKExERkxBR1MpIC1XbCwtYkU6JCh0b3BfYnVpbGRkaXIpL3NyYy9i YWNrZW5kLyQoUE9TVEdSRVNfSU1QKSAkKExJQlMpIC1XbCwtYnJ0bGxpYiAtbyAkQAorCisjIExp bmtpbmcgdG8gYSBzaW5nbGUgLm8gd2l0aCAtciBpcyBhIGxvdCBmYXN0ZXIgdGhhbiBidWlsZGlu ZyBhIC5hIG9yIHBhc3NpbmcKKyMgYWxsIG9iamVjdHMgdG8gTUtMREVYUE9SVC4KKyMKKyMgSXQg bG9va3MgYWxsdXJpbmcgdG8gdXNlICQoQ0MpIC1yIGluc3RlYWQgb2YgbGQgLXIsIGJ1dCB0aGF0 IGRvZXNuJ3QKKyMgdHJpdmlhbGx5IHdvcmsgd2l0aCBnY2MsIGR1ZSB0byBnY2Mgc3BlY2lmaWMg c3RhdGljIGxpYnJhcmllcyBsaW5rZWQgaW4gd2l0aAorIyAtci4KKyQoUE9TVEdSRVNfSU1QKTog JChPQkpTKQorCWxkIC1yIC1vIFNVQlNZUy5vICQoY2FsbCBleHBhbmRfc3Vic3lzLCReKQorCSQo TUtMREVYUE9SVCkgU1VCU1lTLm8gLiA+ICRACisJQHJtIC1mIFNVQlNZUy5vCisKK2VuZGlmICMg YWl4CisKICQodG9wX2J1aWxkZGlyKS9zcmMvcG9ydC9saWJwZ3BvcnRfc3J2LmE6IHwgc3VibWFr ZS1saWJwZ3BvcnQKIAogCmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9tZXNvbi5idWlsZCBiL3Ny Yy9iYWNrZW5kL21lc29uLmJ1aWxkCmluZGV4IDQzNmMwNGFmMDguLjg3NjdhYWJhNjcgMTAwNjQ0 Ci0tLSBhL3NyYy9iYWNrZW5kL21lc29uLmJ1aWxkCisrKyBiL3NyYy9iYWNrZW5kL21lc29uLmJ1 aWxkCkBAIC05MSw2ICs5MSwyMSBAQCBpZiBjYy5nZXRfaWQoKSA9PSAnbXN2YycKICAgIyBiZSBy ZXN0cmljdGVkIHRvIGJfcGNoPXRydWUuCiAgIGJhY2tlbmRfbGlua193aXRoICs9IHBvc3RncmVz X2xpYgogCitlbGlmIGhvc3Rfc3lzdGVtID09ICdhaXgnCisgICMgVGhlICcuJyBhcmd1bWVudCBs ZWFkcyBta2xkZXhwb3J0LnNoIHRvIGVtaXQgIiMhIC4iLCB3aGljaCByZWZlcnMgdG8gdGhlCisg ICMgbWFpbiBleGVjdXRhYmxlLCBhbGxvd2luZyBleHRlbnNpb24gbGlicmFyaWVzIHRvIHJlc29s dmUgdGhlaXIgdW5kZWZpbmVkCisgICMgc3ltYm9scyB0byBzeW1ib2xzIGluIHRoZSBwb3N0Z3Jl cyBiaW5hcnkuCisgIHBvc3RncmVzX2ltcCA9IGN1c3RvbV90YXJnZXQoJ3Bvc3RncmVzLmltcCcs CisgICAgY29tbWFuZDogW2ZpbGVzKCdwb3J0L2FpeC9ta2xkZXhwb3J0LnNoJyksICdASU5QVVRA JywgJy4nXSwKKyAgICBpbnB1dDogcG9zdGdyZXNfbGliLAorICAgIG91dHB1dDogJ3Bvc3RncmVz LmltcCcsCisgICAgY2FwdHVyZTogdHJ1ZSwKKyAgICBpbnN0YWxsOiB0cnVlLAorICAgIGluc3Rh bGxfZGlyOiBkaXJfbGliLAorICAgIGJ1aWxkX2J5X2RlZmF1bHQ6IGZhbHNlLAorICApCisgIGJh Y2tlbmRfbGlua19hcmdzICs9ICctV2wsLWJFOkAwQCcuZm9ybWF0KHBvc3RncmVzX2ltcC5mdWxs X3BhdGgoKSkKKyAgYmFja2VuZF9saW5rX2RlcGVuZHMgKz0gcG9zdGdyZXNfaW1wCiBlbmRpZgog CiBiYWNrZW5kX2lucHV0ID0gW10KZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL3BvcnQvYWl4L21r bGRleHBvcnQuc2ggYi9zcmMvYmFja2VuZC9wb3J0L2FpeC9ta2xkZXhwb3J0LnNoCm5ldyBmaWxl IG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAwMDAuLmFkZjM3OTNlODYKLS0tIC9kZXYvbnVsbAor KysgYi9zcmMvYmFja2VuZC9wb3J0L2FpeC9ta2xkZXhwb3J0LnNoCkBAIC0wLDAgKzEsNjEgQEAK KyMhL2Jpbi9zaAorIworIyBta2xkZXhwb3J0CisjCWNyZWF0ZSBhbiBBSVggZXhwb3J0cyBmaWxl IGZyb20gYW4gb2JqZWN0IGZpbGUKKyMKKyMgc3JjL2JhY2tlbmQvcG9ydC9haXgvbWtsZGV4cG9y dC5zaAorIworIyBVc2FnZToKKyMJbWtsZGV4cG9ydCBvYmplY3RmaWxlIFtsb2NhdGlvbl0KKyMg d2hlcmUKKyMJb2JqZWN0ZmlsZSBpcyB0aGUgY3VycmVudCBsb2NhdGlvbiBvZiB0aGUgb2JqZWN0 IGZpbGUuCisjCWxvY2F0aW9uIGlzIHRoZSBldmVudHVhbCAoaW5zdGFsbGVkKSBsb2NhdGlvbiBv ZiB0aGUKKyMJCW9iamVjdCBmaWxlIChpZiBkaWZmZXJlbnQgZnJvbSB0aGUgY3VycmVudAorIwkJ d29ya2luZyBkaXJlY3RvcnkpLgorIworIyBbVGhpcyBmaWxlIGNvbWVzIGZyb20gdGhlIFBvc3Rn cmVzIDQuMiBkaXN0cmlidXRpb24uIC0gYXkgNy85NV0KKyMKKyMgSGVhZGVyOiAvdXNyL2xvY2Fs L2RldmVsL3Bvc3RncmVzL3NyYy90b29scy9ta2xkZXhwb3J0L1JDUy9ta2xkZXhwb3J0LnNoLHYg MS4yIDE5OTQvMDMvMTMgMDQ6NTk6MTIgYW9raSBFeHAKKyMKKworIyBzZXR0aW5nIHRoaXMgdG8g bm0gLUIgbWlnaHQgYmUgYmV0dGVyCisjIC4uLiBkdWUgdG8gY2hhbmdlcyBpbiBBSVggNC54IC4u LgorIyAuLi4gbGV0IHVzIHNlYXJjaCBpbiBkaWZmZXJlbnQgZGlyZWN0b3JpZXMgLSBHZXJoYXJk IFJlaXRob2ZlcgoraWYgWyAteCAvdXNyL3VjYi9ubSBdCit0aGVuIE5NPS91c3IvdWNiL25tCitl bGlmIFsgLXggL3Vzci9iaW4vbm0gXQordGhlbiBOTT0vdXNyL2Jpbi9ubQorZWxpZiBbIC14IC91 c3IvY2NzL2Jpbi9ubSBdCit0aGVuIE5NPS91c3IvY2NzL2Jpbi9ubQorZWxpZiBbIC14IC91c3Iv dXNnL2Jpbi9ubSBdCit0aGVuIE5NPS91c3IvdXNnL2Jpbi9ubQorZWxzZSBlY2hvICJGYXRhbCBl cnJvcjogY2Fubm90IGZpbmQgYG5tJyAuLi4gcGxlYXNlIGNoZWNrIHlvdXIgaW5zdGFsbGF0aW9u LiIKKyAgICAgZXhpdCAxCitmaQorCitDTUROQU1FPWBiYXNlbmFtZSAkMGAKK2lmIFsgLXogIiQx IiBdOyB0aGVuCisJZWNobyAiVXNhZ2U6ICRDTUROQU1FIG9iamVjdCBbbG9jYXRpb25dIgorCWV4 aXQgMQorZmkKK09CSk5BTUU9YGJhc2VuYW1lICQxYAoraWYgWyAiYGJhc2VuYW1lICRPQkpOQU1F YCIgIT0gImBiYXNlbmFtZSAkT0JKTkFNRSAub2AiIF07IHRoZW4KKwlPQkpOQU1FPWBiYXNlbmFt ZSAkT0JKTkFNRSAub2Auc28KK2ZpCitpZiBbIC16ICIkMiIgXTsgdGhlbgorCWVjaG8gJyMhJwor ZWxzZQorCWlmIFsgIiQyIiA9ICIuIiBdOyB0aGVuCisJCSMgZm9yIHRoZSBiYXNlIGV4ZWN1dGFi bGUgKEFJWCA0LjIgYW5kIHVwKQorCQllY2hvICcjISAuJworCWVsc2UKKwkJZWNobyAnIyEnICQy CisJZmkKK2ZpCiskTk0gLUJDZyAkMSB8IFwKKwllZ3JlcCAnIFtUREJdICcgfCBcCisJc2VkIC1l ICdzLy4qIC8vJyB8IFwKKwllZ3JlcCAtdiAnXCQnIHwgXAorCXNlZCAtZSAncy9eWy5dLy8nIHwg XAorCXNvcnQgfCBcCisJdW5pcQpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvdXRpbHMvZXJyb3Iv ZWxvZy5jIGIvc3JjL2JhY2tlbmQvdXRpbHMvZXJyb3IvZWxvZy5jCmluZGV4IGQ5MWE4NWNiMmQu LjdiNTFlOTRmNGEgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL3V0aWxzL2Vycm9yL2Vsb2cuYwor KysgYi9zcmMvYmFja2VuZC91dGlscy9lcnJvci9lbG9nLmMKQEAgLTkwOCw3ICs5MDgsOSBAQCBl cnJjb2RlX2Zvcl9maWxlX2FjY2Vzcyh2b2lkKQogCQkJLyogV3Jvbmcgb2JqZWN0IHR5cGUgb3Ig c3RhdGUgKi8KIAkJY2FzZSBFTk9URElSOgkJCS8qIE5vdCBhIGRpcmVjdG9yeSAqLwogCQljYXNl IEVJU0RJUjoJCQkvKiBJcyBhIGRpcmVjdG9yeSAqLworI2lmIGRlZmluZWQoRU5PVEVNUFRZKSAm JiAoRU5PVEVNUFRZICE9IEVFWElTVCkgLyogc2FtZSBjb2RlIG9uIEFJWCAqLwogCQljYXNlIEVO T1RFTVBUWToJCQkvKiBEaXJlY3Rvcnkgbm90IGVtcHR5ICovCisjZW5kaWYKIAkJCWVkYXRhLT5z cWxlcnJjb2RlID0gRVJSQ09ERV9XUk9OR19PQkpFQ1RfVFlQRTsKIAkJCWJyZWFrOwogCmRpZmYg LS1naXQgYS9zcmMvYmFja2VuZC91dGlscy9taXNjL3BzX3N0YXR1cy5jIGIvc3JjL2JhY2tlbmQv dXRpbHMvbWlzYy9wc19zdGF0dXMuYwppbmRleCA5ZGE2Mzc3NDAyLi41MzJlYWMzMWI0IDEwMDY0 NAotLS0gYS9zcmMvYmFja2VuZC91dGlscy9taXNjL3BzX3N0YXR1cy5jCisrKyBiL3NyYy9iYWNr ZW5kL3V0aWxzL21pc2MvcHNfc3RhdHVzLmMKQEAgLTUwLDcgKzUwLDcgQEAgYm9vbAkJdXBkYXRl X3Byb2Nlc3NfdGl0bGUgPSBERUZBVUxUX1VQREFURV9QUk9DRVNTX1RJVExFOwogI2RlZmluZSBQ U19VU0VfU0VUUFJPQ1RJVExFX0ZBU1QKICNlbGlmIGRlZmluZWQoSEFWRV9TRVRQUk9DVElUTEUp CiAjZGVmaW5lIFBTX1VTRV9TRVRQUk9DVElUTEUKLSNlbGlmIGRlZmluZWQoX19saW51eF9fKSB8 fCBkZWZpbmVkKF9fc3VuKSB8fCBkZWZpbmVkKF9fZGFyd2luX18pCisjZWxpZiBkZWZpbmVkKF9f bGludXhfXykgfHwgZGVmaW5lZChfQUlYKSB8fCBkZWZpbmVkKF9fc3VuKSB8fCBkZWZpbmVkKF9f ZGFyd2luX18pCiAjZGVmaW5lIFBTX1VTRV9DTE9CQkVSX0FSR1YKICNlbGlmIGRlZmluZWQoV0lO MzIpCiAjZGVmaW5lIFBTX1VTRV9XSU4zMgpAQCAtNjAsNyArNjAsNyBAQCBib29sCQl1cGRhdGVf cHJvY2Vzc190aXRsZSA9IERFRkFVTFRfVVBEQVRFX1BST0NFU1NfVElUTEU7CiAKIAogLyogRGlm ZmVyZW50IHN5c3RlbXMgd2FudCB0aGUgYnVmZmVyIHBhZGRlZCBkaWZmZXJlbnRseSAqLwotI2lm IGRlZmluZWQoX19saW51eF9fKSB8fCBkZWZpbmVkKF9fZGFyd2luX18pCisjaWYgZGVmaW5lZChf QUlYKSB8fCBkZWZpbmVkKF9fbGludXhfXykgfHwgZGVmaW5lZChfX2Rhcndpbl9fKQogI2RlZmlu ZSBQU19QQURESU5HICdcMCcKICNlbHNlCiAjZGVmaW5lIFBTX1BBRERJTkcgJyAnCmRpZmYgLS1n aXQgYS9zcmMvYmluL3BnX2Jhc2ViYWNrdXAvdC8wMTBfcGdfYmFzZWJhY2t1cC5wbCBiL3NyYy9i aW4vcGdfYmFzZWJhY2t1cC90LzAxMF9wZ19iYXNlYmFja3VwLnBsCmluZGV4IDJkNGI3NWE2ZmUu LmNlOTM2OTU5YzEgMTAwNjQ0Ci0tLSBhL3NyYy9iaW4vcGdfYmFzZWJhY2t1cC90LzAxMF9wZ19i YXNlYmFja3VwLnBsCisrKyBiL3NyYy9iaW4vcGdfYmFzZWJhY2t1cC90LzAxMF9wZ19iYXNlYmFj a3VwLnBsCkBAIC00MDEsNyArNDAxLDggQEAgU0tJUDoKIHsKIAlteSAkdGFyID0gJEVOVntUQVJ9 OwogCSMgZG9uJ3QgY2hlY2sgZm9yIGEgd29ya2luZyB0YXIgaGVyZSwgdG8gYWNjb21tb2RhdGUg dmFyaW91cyBvZGQKLQkjIGNhc2VzLiBJZiB0YXIgZG9lc24ndCB3b3JrIHRoZSBpbml0X2Zyb21f YmFja3VwIGJlbG93IHdpbGwgZmFpbC4KKwkjIGNhc2VzIHN1Y2ggYXMgQUlYLiBJZiB0YXIgZG9l c24ndCB3b3JrIHRoZSBpbml0X2Zyb21fYmFja3VwIGJlbG93CisJIyB3aWxsIGZhaWwuCiAJc2tp cCAibm8gdGFyIHByb2dyYW0gYXZhaWxhYmxlIiwgMQogCSAgaWYgKCFkZWZpbmVkICR0YXIgfHwg JHRhciBlcSAnJyk7CiAKZGlmZiAtLWdpdCBhL3NyYy9iaW4vcGdfdmVyaWZ5YmFja3VwL3QvMDA4 X3VudGFyLnBsIGIvc3JjL2Jpbi9wZ192ZXJpZnliYWNrdXAvdC8wMDhfdW50YXIucGwKaW5kZXgg N2EwOWYzYjc1Yi4uMzBkOWYzZjdmMCAxMDA2NDQKLS0tIGEvc3JjL2Jpbi9wZ192ZXJpZnliYWNr dXAvdC8wMDhfdW50YXIucGwKKysrIGIvc3JjL2Jpbi9wZ192ZXJpZnliYWNrdXAvdC8wMDhfdW50 YXIucGwKQEAgLTEwNCw3ICsxMDQsOCBAQCBmb3IgbXkgJHRjIChAdGVzdF9jb25maWd1cmF0aW9u KQogCQl7CiAJCQlteSAkdGFyID0gJEVOVntUQVJ9OwogCQkJIyBkb24ndCBjaGVjayBmb3IgYSB3 b3JraW5nIHRhciBoZXJlLCB0byBhY2NvbW1vZGF0ZSB2YXJpb3VzIG9kZAotCQkJIyBjYXNlcy4g SWYgdGFyIGRvZXNuJ3Qgd29yayB0aGUgaW5pdF9mcm9tX2JhY2t1cCBiZWxvdyB3aWxsIGZhaWwu CisJCQkjIGNhc2VzIHN1Y2ggYXMgQUlYLiBJZiB0YXIgZG9lc24ndCB3b3JrIHRoZSBpbml0X2Zy b21fYmFja3VwIGJlbG93CisJCQkjIHdpbGwgZmFpbC4KIAkJCXNraXAgIm5vIHRhciBwcm9ncmFt IGF2YWlsYWJsZSIsIDEKIAkJCSAgaWYgKCFkZWZpbmVkICR0YXIgfHwgJHRhciBlcSAnJyk7CiAK ZGlmZiAtLWdpdCBhL3NyYy9iaW4vcGdfdmVyaWZ5YmFja3VwL3QvMDEwX2NsaWVudF91bnRhci5w bCBiL3NyYy9iaW4vcGdfdmVyaWZ5YmFja3VwL3QvMDEwX2NsaWVudF91bnRhci5wbAppbmRleCA4 YzA3NmQ0NmRlLi40NTAxMGQ3OWFjIDEwMDY0NAotLS0gYS9zcmMvYmluL3BnX3ZlcmlmeWJhY2t1 cC90LzAxMF9jbGllbnRfdW50YXIucGwKKysrIGIvc3JjL2Jpbi9wZ192ZXJpZnliYWNrdXAvdC8w MTBfY2xpZW50X3VudGFyLnBsCkBAIC0xMzQsNyArMTM0LDggQEAgZm9yIG15ICR0YyAoQHRlc3Rf Y29uZmlndXJhdGlvbikKIAkJewogCQkJbXkgJHRhciA9ICRFTlZ7VEFSfTsKIAkJCSMgZG9uJ3Qg Y2hlY2sgZm9yIGEgd29ya2luZyB0YXIgaGVyZSwgdG8gYWNjb21tb2RhdGUgdmFyaW91cyBvZGQK LQkJCSMgY2FzZXMuIElmIHRhciBkb2Vzbid0IHdvcmsgdGhlIGluaXRfZnJvbV9iYWNrdXAgYmVs b3cgd2lsbCBmYWlsLgorCQkJIyBjYXNlcyBzdWNoIGFzIEFJWC4gSWYgdGFyIGRvZXNuJ3Qgd29y ayB0aGUgaW5pdF9mcm9tX2JhY2t1cCBiZWxvdworCQkJIyB3aWxsIGZhaWwuCiAJCQlza2lwICJu byB0YXIgcHJvZ3JhbSBhdmFpbGFibGUiLCAxCiAJCQkgIGlmICghZGVmaW5lZCAkdGFyIHx8ICR0 YXIgZXEgJycpOwogCmRpZmYgLS1naXQgYS9zcmMvaW5jbHVkZS9jLmggYi9zcmMvaW5jbHVkZS9j LmgKaW5kZXggZGMxODQxMzQ2Yy4uNjQxY2Q5YmRmMSAxMDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUv Yy5oCisrKyBiL3NyYy9pbmNsdWRlL2MuaApAQCAtMTgyLDcgKzE4Miw3IEBACiAjZGVmaW5lIFBH X1VTRURfRk9SX0FTU0VSVFNfT05MWSBwZ19hdHRyaWJ1dGVfdW51c2VkKCkKICNlbmRpZgogCi0v KiBHQ0Mgc3VwcG9ydHMgZm9ybWF0IGF0dHJpYnV0ZXMgKi8KKy8qIEdDQyBzdXBwb3J0IGZvcm1h dCBhdHRyaWJ1dGVzICovCiAjaWYgZGVmaW5lZChfX0dOVUNfXykKICNkZWZpbmUgcGdfYXR0cmli dXRlX2Zvcm1hdF9hcmcoYSkgX19hdHRyaWJ1dGVfXygoZm9ybWF0X2FyZyhhKSkpCiAjZGVmaW5l IHBnX2F0dHJpYnV0ZV9wcmludGYoZixhKSBfX2F0dHJpYnV0ZV9fKChmb3JtYXQoUEdfUFJJTlRG X0FUVFJJQlVURSwgZiwgYSkpKQpAQCAtMTkyLDcgKzE5Miw3IEBACiAjZW5kaWYKIAogLyogR0ND IGFuZCBTdW5wcm8gc3VwcG9ydCBhbGlnbmVkLCBwYWNrZWQgYW5kIG5vcmV0dXJuICovCi0jaWYg ZGVmaW5lZChfX0dOVUNfXykgfHwgZGVmaW5lZChfX1NVTlBST19DKQorI2lmIGRlZmluZWQoX19H TlVDX18pIHx8IGRlZmluZWQoX19TVU5QUk9fQykgCiAjZGVmaW5lIHBnX2F0dHJpYnV0ZV9hbGln bmVkKGEpIF9fYXR0cmlidXRlX18oKGFsaWduZWQoYSkpKQogI2RlZmluZSBwZ19hdHRyaWJ1dGVf bm9yZXR1cm4oKSBfX2F0dHJpYnV0ZV9fKChub3JldHVybikpCiAjZGVmaW5lIHBnX2F0dHJpYnV0 ZV9wYWNrZWQoKSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKQpkaWZmIC0tZ2l0IGEvc3JjL2luY2x1 ZGUvcG9ydC9haXguaCBiL3NyYy9pbmNsdWRlL3BvcnQvYWl4LmgKbmV3IGZpbGUgbW9kZSAxMDA2 NDQKaW5kZXggMDAwMDAwMDAwMC4uYzU0Yzk1ZDRhNQotLS0gL2Rldi9udWxsCisrKyBiL3NyYy9p bmNsdWRlL3BvcnQvYWl4LmgKQEAgLTAsMCArMSwxNCBAQAorLyoKKyAqIHNyYy9pbmNsdWRlL3Bv cnQvYWl4LmgKKyAqLworI2RlZmluZSBDTEFTU19DT05GTElDVAorI2RlZmluZSBESVNBQkxFX1hP UEVOX05MUworCisvKiBDb21tZW50aW5nIGZvciBYTEMKKyAqICJJQk0gWEwgQy9DKysgZm9yIEFJ WCwgVjEyLjEiIG1pc2NvbXBpbGVzLCBmb3IgMzItYml0LCBzb21lIGlubGluZQorICogZXhwYW5z aW9ucyBvZiBnaW5Db21wYXJlSXRlbVBvaW50ZXJzKCkgImxvbmcgbG9uZyIgYXJpdGhtZXRpYy4g IFRvIHRha2UKKyAqIGFkdmFudGFnZSBvZiBpbmxpbmluZywgYnVpbGQgYSA2NC1iaXQgUG9zdGdy ZVNRTC4KKyNpZiBkZWZpbmVkKF9fSUxQMzJfXykgJiYgZGVmaW5lZChfX0lCTUNfXykKKyNkZWZp bmUgUEdfRk9SQ0VfRElTQUJMRV9JTkxJTkUKKyNlbmRpZgorICovCmRpZmYgLS1naXQgYS9zcmMv aW5jbHVkZS9zdG9yYWdlL3NfbG9jay5oIGIvc3JjL2luY2x1ZGUvc3RvcmFnZS9zX2xvY2suaApp bmRleCAyOWFjNmNkY2Q5Li42OTU4MmY0YWU3IDEwMDY0NAotLS0gYS9zcmMvaW5jbHVkZS9zdG9y YWdlL3NfbG9jay5oCisrKyBiL3NyYy9pbmNsdWRlL3N0b3JhZ2Uvc19sb2NrLmgKQEAgLTQxNCw2 ICs0MTQsMTIgQEAgdHlwZWRlZiB1bnNpZ25lZCBpbnQgc2xvY2tfdDsKICAqIGFuIGlzeW5jIGlz IGEgc3VmZmljaWVudCBzeW5jaHJvbml6YXRpb24gYmFycmllciBhZnRlciBhIGx3YXJ4L3N0d2N4 IGxvb3AuCiAgKiBCdXQgaWYgdGhlIHNwaW5sb2NrIGlzIGluIG9yZGluYXJ5IG1lbW9yeSwgd2Ug Y2FuIHVzZSBsd3N5bmMgaW5zdGVhZCBmb3IKICAqIGJldHRlciBwZXJmb3JtYW5jZS4KKyAqCisg KiBPcmRpbmFyaWx5LCB3ZSdkIGNvZGUgdGhlIGJyYW5jaGVzIGhlcmUgdXNpbmcgR05VLXN0eWxl IGxvY2FsIHN5bWJvbHMsIHRoYXQKKyAqIGlzICIxZiIgcmVmZXJlbmNpbmcgIjE6IiBhbmQgc28g b24uICBCdXQgc29tZSBwZW9wbGUgcnVuIGdjYyBvbiBBSVggd2l0aAorICogSUJNJ3MgYXNzZW1i bGVyIGFzIGJhY2tlbmQsIGFuZCBJQk0ncyBhc3NlbWJsZXIgZG9lc24ndCBkbyBsb2NhbCBzeW1i b2xzLgorICogU28gaGFuZC1jb2RlIHRoZSBicmFuY2ggb2Zmc2V0czsgZm9ydHVuYXRlbHksIGFs bCBQUEMgaW5zdHJ1Y3Rpb25zIGFyZQorICogZXhhY3RseSA0IGJ5dGVzIGVhY2gsIHNvIGl0J3Mg bm90IHRvbyBoYXJkIHRvIGNvdW50LgogICovCiBzdGF0aWMgX19pbmxpbmVfXyBpbnQKIHRhcyh2 b2xhdGlsZSBzbG9ja190ICpsb2NrKQpAQCAtNDI0LDE3ICs0MzAsMTUgQEAgdGFzKHZvbGF0aWxl IHNsb2NrX3QgKmxvY2spCiAJX19hc21fXyBfX3ZvbGF0aWxlX18oCiAiCWx3YXJ4ICAgJTAsMCwl MywxCVxuIgogIgljbXB3aSAgICUwLDAJCVxuIgotIglibmUgICAgIDFmCQkJXG4iCisiCWJuZSAg ICAgJCsxNgkJXG4iCQkvKiBicmFuY2ggdG8gbGkgJTEsMSAqLwogIglhZGRpICAgICUwLCUwLDEJ CVxuIgogIglzdHdjeC4gICUwLDAsJTMJCVxuIgotIgliZXEgICAgIDJmCQkJXG4iCi0iMTogXG4i CisiCWJlcSAgICAgJCsxMgkJXG4iCQkvKiBicmFuY2ggdG8gbHdzeW5jICovCiAiCWxpICAgICAg JTEsMQkJXG4iCi0iCWIgICAgICAgM2YJCQlcbiIKLSIyOiBcbiIKKyIJYiAgICAgICAkKzEyCQlc biIJCS8qIGJyYW5jaCB0byBlbmQgb2YgYXNtIHNlcXVlbmNlICovCiAiCWx3c3luYwkJCQlcbiIK ICIJbGkgICAgICAlMSwwCQlcbiIKLSIzOiBcbiIKKwogOgkiPSZiIihfdCksICI9ciIoX3Jlcyks ICIrbSIoKmxvY2spCiA6CSJyIihsb2NrKQogOgkibWVtb3J5IiwgImNjIik7CkBAIC02NjIsNiAr NjY2LDIxIEBAIHRhcyh2b2xhdGlsZSBzbG9ja190ICpsb2NrKQogCiAjaWYgIWRlZmluZWQoSEFT X1RFU1RfQU5EX1NFVCkJLyogV2UgZGlkbid0IHRyaWdnZXIgYWJvdmUsIGxldCdzIHRyeSBoZXJl ICovCiAKKyNpZiBkZWZpbmVkKF9BSVgpCS8qIEFJWCAqLworLyoKKyAqIEFJWCAoUE9XRVIpCisg Ki8KKyNkZWZpbmUgSEFTX1RFU1RfQU5EX1NFVAorCisjaW5jbHVkZSA8c3lzL2F0b21pY19vcC5o PgorCit0eXBlZGVmIGludCBzbG9ja190OworCisjZGVmaW5lIFRBUyhsb2NrKQkJCV9jaGVja19s b2NrKChzbG9ja190ICopIChsb2NrKSwgMCwgMSkKKyNkZWZpbmUgU19VTkxPQ0sobG9jaykJCV9j bGVhcl9sb2NrKChzbG9ja190ICopIChsb2NrKSwgMCkKKyNlbmRpZgkgLyogX0FJWCAqLworCisK IC8qIFRoZXNlIGFyZSBpbiBzdW5zdHVkaW9fKHNwYXJjfHg4NikucyAqLwogCiAjaWYgZGVmaW5l ZChfX1NVTlBST19DKSAmJiAoZGVmaW5lZChfX2kzODYpIHx8IGRlZmluZWQoX194ODZfNjRfXykg fHwgZGVmaW5lZChfX3NwYXJjX18pIHx8IGRlZmluZWQoX19zcGFyYykpCmRpZmYgLS1naXQgYS9z cmMvaW50ZXJmYWNlcy9saWJwcS9NYWtlZmlsZSBiL3NyYy9pbnRlcmZhY2VzL2xpYnBxL01ha2Vm aWxlCmluZGV4IGIzNmE3NjU3NjQuLjE1NDQyOWQ0ZDEgMTAwNjQ0Ci0tLSBhL3NyYy9pbnRlcmZh Y2VzL2xpYnBxL01ha2VmaWxlCisrKyBiL3NyYy9pbnRlcmZhY2VzL2xpYnBxL01ha2VmaWxlCkBA IC0xMTQsNyArMTE0LDcgQEAgYmFja2VuZF9zcmMgPSAkKHRvcF9zcmNkaXIpL3NyYy9iYWNrZW5k CiAjIGNvZGluZyBydWxlLgogbGlicHEtcmVmcy1zdGFtcDogJChzaGxpYikKIGlmbmVxICgkKGVu YWJsZV9jb3ZlcmFnZSksIHllcykKLWlmZXEgKCwkKGZpbHRlciBzb2xhcmlzLCQoUE9SVE5BTUUp KSkKK2lmZXEgKCwkKGZpbHRlciBhaXggc29sYXJpcywkKFBPUlROQU1FKSkpCiAJQGlmIG5tIC1B IC11ICQ8IDI+L2Rldi9udWxsIHwgZ3JlcCAtdiAtZSBfX2N4YV9hdGV4aXQgLWUgX190c2FuX2Z1 bmNfZXhpdCB8IGdyZXAgZXhpdDsgdGhlbiBcCiAJCWVjaG8gJ2xpYnBxIG11c3Qgbm90IGJlIGNh bGxpbmcgYW55IGZ1bmN0aW9uIHdoaWNoIGludm9rZXMgZXhpdCc7IGV4aXQgMTsgXAogCWZpCmRp ZmYgLS1naXQgYS9zcmMvaW50ZXJmYWNlcy9saWJwcS9tZXNvbi5idWlsZCBiL3NyYy9pbnRlcmZh Y2VzL2xpYnBxL21lc29uLmJ1aWxkCmluZGV4IGVkMmE0MDQ4ZDEuLjdlMjAxN2RhZjAgMTAwNjQ0 Ci0tLSBhL3NyYy9pbnRlcmZhY2VzL2xpYnBxL21lc29uLmJ1aWxkCisrKyBiL3NyYy9pbnRlcmZh Y2VzL2xpYnBxL21lc29uLmJ1aWxkCkBAIC01NCw4ICs1NCw5IEBAIGxpYnBxX2NfYXJncyA9IFsn LURTT19NQUpPUl9WRVJTSU9OPTUnXQogIyAgICBsaWJwcV9zdCwgYW5kIHtwZ3BvcnQsY29tbW9u fV9zaGxpYiBmb3IgbGlicHFfc2gKICMKICMgV2UgY291bGQgdHJ5IHRvIGF2b2lkIGJ1aWxkaW5n IHRoZSBzb3VyY2UgZmlsZXMgdHdpY2UsIGJ1dCBpdCBwcm9iYWJseSBhZGRzCi0jIG1vcmUgY29t cGxleGl0eSB0aGFuIGl0cyB3b3J0aCAocmV1c2luZyBvYmplY3QgZmlsZXMgcmVxdWlyZXMgYWxz byBsaW5raW5nCi0jIHRvIHRoZSBsaWJyYXJ5IG9uIHdpbmRvd3Mgb3IgYnJlYWtzIHByZWNvbXBp bGVkIGhlYWRlcnMpLgorIyBtb3JlIGNvbXBsZXhpdHkgdGhhbiBpdHMgd29ydGggKEFJWCBkb2Vz bid0IHN1cHBvcnQgbGlua193aG9sZSB5ZXQsIHJldXNpbmcKKyMgb2JqZWN0IGZpbGVzIHJlcXVp cmVzIGFsc28gbGlua2luZyB0byB0aGUgbGlicmFyeSBvbiB3aW5kb3dzIG9yIGJyZWFrcworIyBw cmVjb21waWxlZCBoZWFkZXJzKS4KIGxpYnBxX3N0ID0gc3RhdGljX2xpYnJhcnkoJ2xpYnBxJywK ICAgbGlicHFfc291cmNlcywKICAgaW5jbHVkZV9kaXJlY3RvcmllczogW2xpYnBxX2luY10sCmRp ZmYgLS1naXQgYS9zcmMvbWFrZWZpbGVzL01ha2VmaWxlLmFpeCBiL3NyYy9tYWtlZmlsZXMvTWFr ZWZpbGUuYWl4Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAuLmRkMTZhN2Ew MzcKLS0tIC9kZXYvbnVsbAorKysgYi9zcmMvbWFrZWZpbGVzL01ha2VmaWxlLmFpeApAQCAtMCww ICsxLDM5IEBACisjIE1BS0VfRVhQT1JUUyBpcyByZXF1aXJlZCBmb3Igc3ZyNCBsb2FkZXJzIHRo YXQgd2FudCBhIGZpbGUgb2YKKyMgc3ltYm9sIG5hbWVzIHRvIHRlbGwgdGhlbSB3aGF0IHRvIGV4 cG9ydC9pbXBvcnQuCitNQUtFX0VYUE9SVFM9IHRydWUKKworIyAtYmxpYnBhdGggbXVzdCBjb250 YWluIEFMTCBkaXJlY3RvcmllcyB3aGVyZSB3ZSBzaG91bGQgbG9vayBmb3IgbGlicmFyaWVzCits aWJwYXRoIDo9ICQoc2hlbGwgZWNobyAkKHN1YnN0IC1MLDosJChmaWx0ZXIgLUwvJSwkKExERkxB R1MpKSkgfCBzZWQgLWUncy8gLy9nJyk6L3Vzci9saWI6L2xpYgorCisjIHdoZW4gYnVpbGRpbmcg d2l0aCBnY2MsIG5lZWQgdG8gbWFrZSBzdXJlIHRoYXQgbGliZ2NjIGNhbiBiZSBmb3VuZAoraWZl cSAoJChHQ0MpLCB5ZXMpCitsaWJwYXRoIDo9ICQobGlicGF0aCk6JChkaXIgJChzaGVsbCBnY2Mg LXByaW50LWxpYmdjYy1maWxlLW5hbWUpKQorZW5kaWYKKworcnBhdGggPSAtV2wsLWJsaWJwYXRo OickKHJwYXRoZGlyKSQobGlicGF0aCknCisKK0xERkxBR1NfU0wgKz0gLVdsLC1ibm9lbnRyeSAt V2wsLUg1MTIgLVdsLC1iTTpTUkUKKworIyBnY2MgbmVlZHMgdG8ga25vdyBpdCdzIGJ1aWxkaW5n IGEgc2hhcmVkIGxpYiwgb3RoZXJ3aXNlIGl0J2xsIG5vdCBlbWl0CisjIGNvcnJlY3QgY29kZSAv IGxpbmsgdG8gdGhlIHJpZ2h0IHN1cHBvcnQgbGlicmFyaWVzCitpZmVxICgkKEdDQyksIHllcykK K0xERkxBR1NfU0wgKz0gLXNoYXJlZAorZW5kaWYKKworIyBlbnYgdmFyIG5hbWUgdG8gdXNlIGlu IHBsYWNlIG9mIExEX0xJQlJBUllfUEFUSAorbGRfbGlicmFyeV9wYXRoX3ZhciA9IExJQlBBVEgK KworCitQT1NUR1JFU19JTVA9IHBvc3RncmVzLmltcAorCitpZmRlZiBQR1hTCitCRV9ETExMSUJT PSAtV2wsLWJJOiQocGtnbGliZGlyKS8kKFBPU1RHUkVTX0lNUCkKK2Vsc2UKK0JFX0RMTExJQlM9 IC1XbCwtYkk6JCh0b3BfYnVpbGRkaXIpL3NyYy9iYWNrZW5kLyQoUE9TVEdSRVNfSU1QKQorZW5k aWYKKworTUtMREVYUE9SVF9ESVI9c3JjL2JhY2tlbmQvcG9ydC9haXgKK01LTERFWFBPUlQ9JCh0 b3Bfc3JjZGlyKS8kKE1LTERFWFBPUlRfRElSKS9ta2xkZXhwb3J0LnNoCisKKyUkKERMU1VGRklY KTogJS5vCisJJChDQykgJChDRkxBR1MpICQqLm8gJChMREZMQUdTKSAkKExERkxBR1NfU0wpIC1v ICRAICQoQkVfRExMTElCUykKZGlmZiAtLWdpdCBhL3NyYy9wb3J0L1JFQURNRSBiL3NyYy9wb3J0 L1JFQURNRQppbmRleCBlZDVjNTRhNzJmLi45N2YxOGE2MjMzIDEwMDY0NAotLS0gYS9zcmMvcG9y dC9SRUFETUUKKysrIGIvc3JjL3BvcnQvUkVBRE1FCkBAIC0yOCw1ICsyOCw1IEBAIGFwcGxpY2F0 aW9ucy4KIGZyb20gbGlicGdwb3J0IGFyZSBsaW5rZWQgZmlyc3QuICBUaGlzIGF2b2lkcyBoYXZp bmcgYXBwbGljYXRpb25zCiBkZXBlbmRlbnQgb24gc3ltYm9scyB0aGF0IGFyZSBfdXNlZF8gYnkg bGlicHEsIGJ1dCBub3QgaW50ZW5kZWQgdG8gYmUKIGV4cG9ydGVkIGJ5IGxpYnBxLiAgbGlicHEn cyBsaWJwZ3BvcnQgdXNhZ2UgY2hhbmdlcyBvdmVyIHRpbWUsIHNvIHN1Y2ggYQotZGVwZW5kZW5j eSBpcyBhIHByb2JsZW0uICBXaW5kb3dzLCBMaW51eCwgYW5kIG1hY09TIHVzZSBhbiBleHBvcnQK K2RlcGVuZGVuY3kgaXMgYSBwcm9ibGVtLiAgV2luZG93cywgTGludXgsIEFJWCwgYW5kIG1hY09T IHVzZSBhbiBleHBvcnQKIGxpc3QgdG8gY29udHJvbCB0aGUgc3ltYm9scyBleHBvcnRlZCBieSBs aWJwcS4KZGlmZiAtLWdpdCBhL3NyYy9wb3J0L3N0cmVycm9yLmMgYi9zcmMvcG9ydC9zdHJlcnJv ci5jCmluZGV4IDQ5MThiYTgyMWMuLjEwNzBhNDk4MDIgMTAwNjQ0Ci0tLSBhL3NyYy9wb3J0L3N0 cmVycm9yLmMKKysrIGIvc3JjL3BvcnQvc3RyZXJyb3IuYwpAQCAtMjE0LDggKzIxNCwxMCBAQCBn ZXRfZXJybm9fc3ltYm9sKGludCBlcnJudW0pCiAJCQlyZXR1cm4gIkVOT1RDT05OIjsKIAkJY2Fz ZSBFTk9URElSOgogCQkJcmV0dXJuICJFTk9URElSIjsKKyNpZiBkZWZpbmVkKEVOT1RFTVBUWSkg JiYgKEVOT1RFTVBUWSAhPSBFRVhJU1QpIC8qIHNhbWUgY29kZSBvbiBBSVggKi8KIAkJY2FzZSBF Tk9URU1QVFk6CiAJCQlyZXR1cm4gIkVOT1RFTVBUWSI7CisjZW5kaWYKIAkJY2FzZSBFTk9UU09D SzoKIAkJCXJldHVybiAiRU5PVFNPQ0siOwogI2lmZGVmIEVOT1RTVVAKZGlmZiAtLWdpdCBhL3Ny Yy90ZW1wbGF0ZS9haXggYi9zcmMvdGVtcGxhdGUvYWl4Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu ZGV4IDAwMDAwMDAwMDAuLjkwM2Y4YThmOGEKLS0tIC9kZXYvbnVsbAorKysgYi9zcmMvdGVtcGxh dGUvYWl4CkBAIC0wLDAgKzEsMjYgQEAKKyMgc3JjL3RlbXBsYXRlL2FpeAorCisjIENvbW1lbnRp bmcgZm9yIFhMQworIyBTZXQgZGVmYXVsdCBvcHRpb25zIGlmIHVzaW5nIHhsYy4gIFRoaXMgZm9y bWVybHkgaW5jbHVkZWQgLXFzcmNtc2csIGJ1dCB0aGF0CisjIG9wdGlvbiBlbGljaXRzIGludGVy bmFsIGNvbXBpbGVyIGVycm9ycyBmcm9tIHhsYyB2MTYuMS4wLiAgTm90ZTogY29uZmlndXJlCisj IHdpbGwgYWRkIC1xbm9hbnNpYWxpYXMgaWYgdGhlIGNvbXBpbGVyIGFjY2VwdHMgaXQsIGV2ZW4g aWYgdXNlciBzcGVjaWZpZXMgYQorIyBub24tZGVmYXVsdCBDRkxBR1Mgc2V0dGluZy4KKyNpZiB0 ZXN0ICIkR0NDIiAhPSB5ZXMgOyB0aGVuCisjICBjYXNlICRob3N0X29zIGluCisjICAgICopCisj ICAgICAgQ0ZMQUdTPSItTzIgLXFtYXhtZW09MTYzODQiCisjICAgICAgOzsKKyMgIGVzYWMKKwor ICAjIER1ZSB0byBhIGNvbXBpbGVyIGJ1Zywgc2VlIDIwMTcxMDEzMDIzNTM2LkdBNDkyMTQ2QHJm ZC5sZWFkYm9hdC5jb20gZm9yIGRldGFpbHMsCisgICMgZm9yY2UgcmVzdHJpY3Qgbm90IHRvIGJl IHVzZWQgd2hlbiBjb21waWxpbmcgd2l0aCB4bGMuCisjICBGT1JDRV9ESVNBQkxFX1JFU1RSSUNU PXllcworI2ZpCisKKyMgRXh0cmEgQ0ZMQUdTIGZvciBjb2RlIHRoYXQgd2lsbCBnbyBpbnRvIGEg c2hhcmVkIGxpYnJhcnkKK0NGTEFHU19TTD0iIgorCisjIE5hdGl2ZSBtZW1zZXQoKSBpcyBmYXN0 ZXIsIHRlc3RlZCBvbjoKKyMgCUFJWCA1LjEgYW5kIDUuMiwgWExDIDYuMCAoSUJNJ3MgY2MpCisj IAlBSVggNS4zIE1MMywgZ2NjIDQuMC4xCitNRU1TRVRfTE9PUF9MSU1JVD0wCmRpZmYgLS1naXQg YS9zcmMvdGVzdC9yZWdyZXNzL01ha2VmaWxlIGIvc3JjL3Rlc3QvcmVncmVzcy9NYWtlZmlsZQpp bmRleCA2NDA5YTQ4NWU4Li43YzY2NWZmODkyIDEwMDY0NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNz L01ha2VmaWxlCisrKyBiL3NyYy90ZXN0L3JlZ3Jlc3MvTWFrZWZpbGUKQEAgLTcsNiArNywxMSBA QAogIyBHTlUgbWFrZSB1c2VzIGEgbWFrZSBmaWxlIG5hbWVkICJHTlVtYWtlZmlsZSIgaW4gcHJl ZmVyZW5jZSB0byAiTWFrZWZpbGUiCiAjIGlmIGl0IGV4aXN0cy4gIFBvc3RncmVzIGlzIHNoaXBw ZWQgd2l0aCBhICJHTlVtYWtlZmlsZSIuCiAKKworIyBBSVggbWFrZSBkZWZhdWx0cyB0byBidWls ZGluZyAqZXZlcnkqIHRhcmdldCBvZiB0aGUgZmlyc3QgcnVsZS4gIFN0YXJ0IHdpdGgKKyMgYSBz aW5nbGUtdGFyZ2V0LCBlbXB0eSBydWxlIHRvIG1ha2UgdGhlIG90aGVyIHRhcmdldHMgbm9uLWRl ZmF1bHQuCithbGw6CisKIGFsbCBpbnN0YWxsIGNsZWFuIGNoZWNrIGluc3RhbGxjaGVjazoKIAlA ZWNobyAiWW91IG11c3QgdXNlIEdOVSBtYWtlIHRvIHVzZSBQb3N0Z3Jlcy4gIEl0IG1heSBiZSBp bnN0YWxsZWQiCiAJQGVjaG8gIm9uIHlvdXIgc3lzdGVtIHdpdGggdGhlIG5hbWUgJ2dtYWtlJy4i CmRpZmYgLS1naXQgYS9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3Nhbml0eV9jaGVjay5vdXQg Yi9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3Nhbml0eV9jaGVjay5vdXQKaW5kZXggODM3MGMx NTYxYy4uYzVjNjc1Yjc1MCAxMDA2NDQKLS0tIGEvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9z YW5pdHlfY2hlY2sub3V0CisrKyBiL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvc2FuaXR5X2No ZWNrLm91dApAQCAtMjUsMyArMjUsMzIgQEAgU0VMRUNUIHJlbG5hbWUsIHJlbGtpbmQKIC0tLS0t LS0tLSstLS0tLS0tLS0KICgwIHJvd3MpCiAKKy0tCistLSBXaGVuIEFMSUdOT0ZfRE9VQkxFPT00 IChlLmcuIEFJWCksIHRoZSBDIEFCSSBtYXkgaW1wb3NlIDgtYnl0ZSBhbGlnbm1lbnQgb24KKy0t IHNvbWUgb2YgdGhlIEMgdHlwZXMgdGhhdCBjb3JyZXNwb25kIHRvIFRZUEFMSUdOX0RPVUJMRSBT UUwgdHlwZXMuICBUbyBlbnN1cmUKKy0tIGNhdGFsb2cgQyBzdHJ1Y3QgbGF5b3V0IG1hdGNoZXMg Y2F0YWxvZyB0dXBsZSBsYXlvdXQsIGFycmFuZ2UgZm9yIHRoZSB0dXBsZQorLS0gb2Zmc2V0IG9m IGVhY2ggZml4ZWQtd2lkdGgsIGF0dGFsaWduPSdkJyBjYXRhbG9nIGNvbHVtbiB0byBiZSBkaXZp c2libGUgYnkgOAorLS0gdW5jb25kaXRpb25hbGx5LiAgS2VlcCBzdWNoIGNvbHVtbnMgYmVmb3Jl IHRoZSBmaXJzdCBOYW1lRGF0YSBjb2x1bW4gb2YgdGhlCistLSBjYXRhbG9nLCBzaW5jZSBwYWNr YWdlcnMgY2FuIG92ZXJyaWRlIE5BTUVEQVRBTEVOIHRvIGFuIG9kZCBudW1iZXIuCistLQorV0lU SCBjaGVja19jb2x1bW5zIEFTICgKKyBTRUxFQ1QgcmVsbmFtZSwgYXR0bmFtZSwKKyAgYXJyYXko CisgICBTRUxFQ1QgdC5vaWQKKyAgICBGUk9NIHBnX3R5cGUgdCBKT0lOIHBnX2F0dHJpYnV0ZSBw YSBPTiB0Lm9pZCA9IHBhLmF0dHR5cGlkCisgICAgV0hFUkUgcGEuYXR0cmVsaWQgPSBhLmF0dHJl bGlkIEFORAorICAgICAgICAgIHBhLmF0dG51bSA+IDAgQU5EIHBhLmF0dG51bSA8IGEuYXR0bnVt CisgICAgT1JERVIgQlkgcGEuYXR0bnVtKSBBUyBjb2x0eXBlcworIEZST00gcGdfYXR0cmlidXRl IGEgSk9JTiBwZ19jbGFzcyBjIE9OIGMub2lkID0gYXR0cmVsaWQKKyAgSk9JTiBwZ19uYW1lc3Bh Y2UgbiBPTiBjLnJlbG5hbWVzcGFjZSA9IG4ub2lkCisgV0hFUkUgYXR0YWxpZ24gPSAnZCcgQU5E IHJlbGtpbmQgPSAncicgQU5ECisgIGF0dG5vdG51bGwgQU5EIGF0dGxlbiA8PiAtMSBBTkQgbi5u c3BuYW1lID0gJ3BnX2NhdGFsb2cnCispCitTRUxFQ1QgcmVsbmFtZSwgYXR0bmFtZSwgY29sdHlw ZXMsIGdldF9jb2x1bW5zX2xlbmd0aChjb2x0eXBlcykKKyBGUk9NIGNoZWNrX2NvbHVtbnMKKyBX SEVSRSBnZXRfY29sdW1uc19sZW5ndGgoY29sdHlwZXMpICUgOCAhPSAwIE9SCisgICAgICAgJ25h bWUnOjpyZWd0eXBlOjpvaWQgPSBBTlkoY29sdHlwZXMpOworIHJlbG5hbWUgfCBhdHRuYW1lIHwg Y29sdHlwZXMgfCBnZXRfY29sdW1uc19sZW5ndGggCistLS0tLS0tLS0rLS0tLS0tLS0tKy0tLS0t LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0KKygwIHJvd3MpCisKZGlmZiAtLWdpdCBhL3NyYy90 ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvdGVzdF9zZXR1cC5vdXQgYi9zcmMvdGVzdC9yZWdyZXNzL2V4 cGVjdGVkL3Rlc3Rfc2V0dXAub3V0CmluZGV4IDNkMGVlZWM5OTYuLjVkOWU2YmYxMmIgMTAwNjQ0 Ci0tLSBhL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvdGVzdF9zZXR1cC5vdXQKKysrIGIvc3Jj L3Rlc3QvcmVncmVzcy9leHBlY3RlZC90ZXN0X3NldHVwLm91dApAQCAtMjA5LDYgKzIwOSwxMCBA QCBDUkVBVEUgRlVOQ1RJT04gdHRkdW1teSAoKQogICAgIFJFVFVSTlMgdHJpZ2dlcgogICAgIEFT IDoncmVncmVzc2xpYicKICAgICBMQU5HVUFHRSBDOworQ1JFQVRFIEZVTkNUSU9OIGdldF9jb2x1 bW5zX2xlbmd0aChvaWRbXSkKKyAgICBSRVRVUk5TIGludAorICAgIEFTIDoncmVncmVzc2xpYicK KyAgICBMQU5HVUFHRSBDIFNUUklDVCBTVEFCTEUgUEFSQUxMRUwgU0FGRTsKIC0tIFVzZSBoYW5k LXJvbGxlZCBoYXNoIGZ1bmN0aW9ucyBhbmQgb3BlcmF0b3IgY2xhc3NlcyB0byBnZXQgcHJlZGlj dGFibGUKIC0tIHJlc3VsdCBvbiBkaWZmZXJlbnQgbWFjaGluZXMuICBUaGUgaGFzaCBmdW5jdGlv biBmb3IgaW50NCBzaW1wbHkgcmV0dXJucwogLS0gdGhlIHN1bSBvZiB0aGUgdmFsdWVzIHBhc3Nl ZCB0byBpdCBhbmQgdGhlIG9uZSBmb3IgdGV4dCByZXR1cm5zIHRoZSBsZW5ndGgKZGlmZiAtLWdp dCBhL3NyYy90ZXN0L3JlZ3Jlc3MvcmVncmVzcy5jIGIvc3JjL3Rlc3QvcmVncmVzcy9yZWdyZXNz LmMKaW5kZXggZGVmZmFlYTU3OC4uY2M2MzM4NjRkNyAxMDA2NDQKLS0tIGEvc3JjL3Rlc3QvcmVn cmVzcy9yZWdyZXNzLmMKKysrIGIvc3JjL3Rlc3QvcmVncmVzcy9yZWdyZXNzLmMKQEAgLTEyMjEs MyArMTIyMSw0MyBAQCBiaW5hcnlfY29lcmNpYmxlKFBHX0ZVTkNUSU9OX0FSR1MpCiAKIAlQR19S RVRVUk5fQk9PTChJc0JpbmFyeUNvZXJjaWJsZShzcmN0eXBlLCB0YXJnZXR0eXBlKSk7CiB9CisK Ky8qCisgKiBSZXR1cm4gdGhlIGxlbmd0aCBvZiB0aGUgcG9ydGlvbiBvZiBhIHR1cGxlIGNvbnNp c3Rpbmcgb2YgdGhlIGdpdmVuIGFycmF5CisgKiBvZiBkYXRhIHR5cGVzLiAgVGhlIGlucHV0IGRh dGEgdHlwZXMgbXVzdCBiZSBmaXhlZC1sZW5ndGggZGF0YSB0eXBlcy4KKyAqLworUEdfRlVOQ1RJ T05fSU5GT19WMShnZXRfY29sdW1uc19sZW5ndGgpOworRGF0dW0KK2dldF9jb2x1bW5zX2xlbmd0 aChQR19GVU5DVElPTl9BUkdTKQoreworCUFycmF5VHlwZSAgKnRhID0gUEdfR0VUQVJHX0FSUkFZ VFlQRV9QKDApOworCU9pZAkJICAgKnR5cGVfb2lkczsKKwlpbnQJCQludHlwZXM7CisJaW50CQkJ Y29sdW1uX29mZnNldCA9IDA7CisKKwlpZiAoQVJSX0hBU05VTEwodGEpICYmIGFycmF5X2NvbnRh aW5zX251bGxzKHRhKSkKKwkJZWxvZyhFUlJPUiwgImFyZ3VtZW50IG11c3Qgbm90IGNvbnRhaW4g bnVsbHMiKTsKKworCWlmIChBUlJfTkRJTSh0YSkgPiAxKQorCQllbG9nKEVSUk9SLCAiYXJndW1l bnQgbXVzdCBiZSBlbXB0eSBvciBvbmUtZGltZW5zaW9uYWwgYXJyYXkiKTsKKworCXR5cGVfb2lk cyA9IChPaWQgKikgQVJSX0RBVEFfUFRSKHRhKTsKKwludHlwZXMgPSBBcnJheUdldE5JdGVtcyhB UlJfTkRJTSh0YSksIEFSUl9ESU1TKHRhKSk7CisJZm9yIChpbnQgaSA9IDA7IGkgPCBudHlwZXM7 IGkrKykKKwl7CisJCU9pZAkJCXR5cGVvaWQgPSB0eXBlX29pZHNbaV07CisJCWludDE2CQl0eXBs ZW47CisJCWJvb2wJCXR5cGJ5dmFsOworCQljaGFyCQl0eXBhbGlnbjsKKworCQlnZXRfdHlwbGVu Ynl2YWxhbGlnbih0eXBlb2lkLCAmdHlwbGVuLCAmdHlwYnl2YWwsICZ0eXBhbGlnbik7CisKKwkJ LyogdGhlIGRhdGEgdHlwZSBtdXN0IGJlIGZpeGVkLWxlbmd0aCAqLworCQlpZiAodHlwbGVuIDwg MCkKKwkJCWVsb2coRVJST1IsICJ0eXBlICV1IGlzIG5vdCBmaXhlZC1sZW5ndGggZGF0YSB0eXBl IiwgdHlwZW9pZCk7CisKKwkJY29sdW1uX29mZnNldCA9IGF0dF9hbGlnbl9ub21pbmFsKGNvbHVt bl9vZmZzZXQgKyB0eXBsZW4sIHR5cGFsaWduKTsKKwl9CisKKwlQR19SRVRVUk5fSU5UMzIoY29s dW1uX29mZnNldCk7Cit9CmRpZmYgLS1naXQgYS9zcmMvdGVzdC9yZWdyZXNzL3NxbC9zYW5pdHlf Y2hlY2suc3FsIGIvc3JjL3Rlc3QvcmVncmVzcy9zcWwvc2FuaXR5X2NoZWNrLnNxbAppbmRleCAx NjJlNTMyNGI1Li43ZjMzOGQxOTFjIDEwMDY0NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL3NxbC9z YW5pdHlfY2hlY2suc3FsCisrKyBiL3NyYy90ZXN0L3JlZ3Jlc3Mvc3FsL3Nhbml0eV9jaGVjay5z cWwKQEAgLTE5LDMgKzE5LDI5IEBAIFNFTEVDVCByZWxuYW1lLCByZWxraW5kCiAgIEZST00gcGdf Y2xhc3MKICBXSEVSRSByZWxraW5kIElOICgndicsICdjJywgJ2YnLCAncCcsICdJJykKICAgICAg ICBBTkQgcmVsZmlsZW5vZGUgPD4gMDsKKworLS0KKy0tIFdoZW4gQUxJR05PRl9ET1VCTEU9PTQg KGUuZy4gQUlYKSwgdGhlIEMgQUJJIG1heSBpbXBvc2UgOC1ieXRlIGFsaWdubWVudCBvbgorLS0g c29tZSBvZiB0aGUgQyB0eXBlcyB0aGF0IGNvcnJlc3BvbmQgdG8gVFlQQUxJR05fRE9VQkxFIFNR TCB0eXBlcy4gIFRvIGVuc3VyZQorLS0gY2F0YWxvZyBDIHN0cnVjdCBsYXlvdXQgbWF0Y2hlcyBj YXRhbG9nIHR1cGxlIGxheW91dCwgYXJyYW5nZSBmb3IgdGhlIHR1cGxlCistLSBvZmZzZXQgb2Yg ZWFjaCBmaXhlZC13aWR0aCwgYXR0YWxpZ249J2QnIGNhdGFsb2cgY29sdW1uIHRvIGJlIGRpdmlz aWJsZSBieSA4CistLSB1bmNvbmRpdGlvbmFsbHkuICBLZWVwIHN1Y2ggY29sdW1ucyBiZWZvcmUg dGhlIGZpcnN0IE5hbWVEYXRhIGNvbHVtbiBvZiB0aGUKKy0tIGNhdGFsb2csIHNpbmNlIHBhY2th Z2VycyBjYW4gb3ZlcnJpZGUgTkFNRURBVEFMRU4gdG8gYW4gb2RkIG51bWJlci4KKy0tCitXSVRI IGNoZWNrX2NvbHVtbnMgQVMgKAorIFNFTEVDVCByZWxuYW1lLCBhdHRuYW1lLAorICBhcnJheSgK KyAgIFNFTEVDVCB0Lm9pZAorICAgIEZST00gcGdfdHlwZSB0IEpPSU4gcGdfYXR0cmlidXRlIHBh IE9OIHQub2lkID0gcGEuYXR0dHlwaWQKKyAgICBXSEVSRSBwYS5hdHRyZWxpZCA9IGEuYXR0cmVs aWQgQU5ECisgICAgICAgICAgcGEuYXR0bnVtID4gMCBBTkQgcGEuYXR0bnVtIDwgYS5hdHRudW0K KyAgICBPUkRFUiBCWSBwYS5hdHRudW0pIEFTIGNvbHR5cGVzCisgRlJPTSBwZ19hdHRyaWJ1dGUg YSBKT0lOIHBnX2NsYXNzIGMgT04gYy5vaWQgPSBhdHRyZWxpZAorICBKT0lOIHBnX25hbWVzcGFj ZSBuIE9OIGMucmVsbmFtZXNwYWNlID0gbi5vaWQKKyBXSEVSRSBhdHRhbGlnbiA9ICdkJyBBTkQg cmVsa2luZCA9ICdyJyBBTkQKKyAgYXR0bm90bnVsbCBBTkQgYXR0bGVuIDw+IC0xIEFORCBuLm5z cG5hbWUgPSAncGdfY2F0YWxvZycKKykKK1NFTEVDVCByZWxuYW1lLCBhdHRuYW1lLCBjb2x0eXBl cywgZ2V0X2NvbHVtbnNfbGVuZ3RoKGNvbHR5cGVzKQorIEZST00gY2hlY2tfY29sdW1ucworIFdI RVJFIGdldF9jb2x1bW5zX2xlbmd0aChjb2x0eXBlcykgJSA4ICE9IDAgT1IKKyAgICAgICAnbmFt ZSc6OnJlZ3R5cGU6Om9pZCA9IEFOWShjb2x0eXBlcyk7CmRpZmYgLS1naXQgYS9zcmMvdGVzdC9y ZWdyZXNzL3NxbC90ZXN0X3NldHVwLnNxbCBiL3NyYy90ZXN0L3JlZ3Jlc3Mvc3FsL3Rlc3Rfc2V0 dXAuc3FsCmluZGV4IDA2YjBlMjEyMWYuLjFiMmQ0MzQ2ODMgMTAwNjQ0Ci0tLSBhL3NyYy90ZXN0 L3JlZ3Jlc3Mvc3FsL3Rlc3Rfc2V0dXAuc3FsCisrKyBiL3NyYy90ZXN0L3JlZ3Jlc3Mvc3FsL3Rl c3Rfc2V0dXAuc3FsCkBAIC0yNTcsNiArMjU3LDExIEBAIENSRUFURSBGVU5DVElPTiB0dGR1bW15 ICgpCiAgICAgQVMgOidyZWdyZXNzbGliJwogICAgIExBTkdVQUdFIEM7CiAKK0NSRUFURSBGVU5D VElPTiBnZXRfY29sdW1uc19sZW5ndGgob2lkW10pCisgICAgUkVUVVJOUyBpbnQKKyAgICBBUyA6 J3JlZ3Jlc3NsaWInCisgICAgTEFOR1VBR0UgQyBTVFJJQ1QgU1RBQkxFIFBBUkFMTEVMIFNBRkU7 CisKIC0tIFVzZSBoYW5kLXJvbGxlZCBoYXNoIGZ1bmN0aW9ucyBhbmQgb3BlcmF0b3IgY2xhc3Nl cyB0byBnZXQgcHJlZGljdGFibGUKIC0tIHJlc3VsdCBvbiBkaWZmZXJlbnQgbWFjaGluZXMuICBU aGUgaGFzaCBmdW5jdGlvbiBmb3IgaW50NCBzaW1wbHkgcmV0dXJucwogLS0gdGhlIHN1bSBvZiB0 aGUgdmFsdWVzIHBhc3NlZCB0byBpdCBhbmQgdGhlIG9uZSBmb3IgdGV4dCByZXR1cm5zIHRoZSBs ZW5ndGgKZGlmZiAtLWdpdCBhL3NyYy90b29scy9nZW5fZXhwb3J0LnBsIGIvc3JjL3Rvb2xzL2dl bl9leHBvcnQucGwKaW5kZXggZDlmZGFhYWY2ZC4uODg4YzhhMTk3YSAxMDA2NDQKLS0tIGEvc3Jj L3Rvb2xzL2dlbl9leHBvcnQucGwKKysrIGIvc3JjL3Rvb2xzL2dlbl9leHBvcnQucGwKQEAgLTE2 LDExICsxNiwxMiBAQCBHZXRPcHRpb25zKAogCSdpbnB1dDpzJyA9PiBcJGlucHV0LAogCSdvdXRw dXQ6cycgPT4gXCRvdXRwdXQpIG9yIGRpZSAid3JvbmcgYXJndW1lbnRzIjsKIAotaWYgKG5vdCgg ICAkZm9ybWF0IGVxICdkYXJ3aW4nCitpZiAobm90KCAgICRmb3JtYXQgZXEgJ2FpeCcKKwkJb3Ig JGZvcm1hdCBlcSAnZGFyd2luJwogCQlvciAkZm9ybWF0IGVxICdnbnUnCiAJCW9yICRmb3JtYXQg ZXEgJ3dpbicpKQogewotCWRpZSAiJDA6ICRmb3JtYXQgaXMgbm90IHlldCBoYW5kbGVkIChvbmx5 IGRhcndpbiwgZ251LCB3aW4gYXJlKVxuIjsKKwlkaWUgIiQwOiAkZm9ybWF0IGlzIG5vdCB5ZXQg aGFuZGxlZCAob25seSBhaXgsIGRhcndpbiwgZ251LCB3aW4gYXJlKVxuIjsKIH0KIAogb3Blbiht eSAkaW5wdXRfaGFuZGxlLCAnPCcsICRpbnB1dCkKQEAgLTU1LDcgKzU2LDExIEBAIHdoaWxlICg8 JGlucHV0X2hhbmRsZT4pCiAJfQogCWVsc2lmICgvXihcUyspXHMrKFxTKykvKQogCXsKLQkJaWYg KCRmb3JtYXQgZXEgJ2RhcndpbicpCisJCWlmICgkZm9ybWF0IGVxICdhaXgnKQorCQl7CisJCQlw cmludCAkb3V0cHV0X2hhbmRsZSAiJDFcbiI7CisJCX0KKwkJZWxzaWYgKCRmb3JtYXQgZXEgJ2Rh cndpbicpCiAJCXsKIAkJCXByaW50ICRvdXRwdXRfaGFuZGxlICJfJDFcbiI7CiAJCX0KZGlmZiAt LWdpdCBhL3NyYy90b29scy9wZ2luY2x1ZGUvaGVhZGVyc2NoZWNrIGIvc3JjL3Rvb2xzL3BnaW5j bHVkZS9oZWFkZXJzY2hlY2sKaW5kZXggNGExNTdkMGE1Zi4uY2ZkOGM2ODk2YyAxMDA3NTUKLS0t IGEvc3JjL3Rvb2xzL3BnaW5jbHVkZS9oZWFkZXJzY2hlY2sKKysrIGIvc3JjL3Rvb2xzL3BnaW5j bHVkZS9oZWFkZXJzY2hlY2sKQEAgLTg1LDYgKzg1LDcgQEAgZG8KIAogCSMgVGhlc2UgZmlsZXMg YXJlIHBsYXRmb3JtLXNwZWNpZmljLCBhbmQgYy5oIHdpbGwgaW5jbHVkZSB0aGUKIAkjIG9uZSB0 aGF0J3MgcmVsZXZhbnQgZm9yIG91ciBjdXJyZW50IHBsYXRmb3JtIGFueXdheS4KKwl0ZXN0ICIk ZiIgPSBzcmMvaW5jbHVkZS9wb3J0L2FpeC5oICYmIGNvbnRpbnVlCiAJdGVzdCAiJGYiID0gc3Jj L2luY2x1ZGUvcG9ydC9jeWd3aW4uaCAmJiBjb250aW51ZQogCXRlc3QgIiRmIiA9IHNyYy9pbmNs dWRlL3BvcnQvZGFyd2luLmggJiYgY29udGludWUKIAl0ZXN0ICIkZiIgPSBzcmMvaW5jbHVkZS9w b3J0L2ZyZWVic2QuaCAmJiBjb250aW51ZQotLSAKMi40MS4wCgo= --_004_CY8PR15MB5602CAFFE00371049D68CD25DBCD2CY8PR15MB5602namp_--