From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mx0b-00238a01.pphosted.com (mx0b-00238a01.pphosted.com [205.220.178.82]) by sourceware.org (Postfix) with ESMTPS id 90085385780D for ; Wed, 23 Jun 2021 12:10:26 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 90085385780D Received: from pps.filterd (m0232046.ppops.net [127.0.0.1]) by mx0b-00238a01.pphosted.com (8.16.1.2/8.16.1.2) with SMTP id 15NA8sUw014745 for ; Wed, 23 Jun 2021 07:10:26 -0500 Received: from nam12-mw2-obe.outbound.protection.outlook.com (mail-mw2nam12lp2042.outbound.protection.outlook.com [104.47.66.42]) by mx0b-00238a01.pphosted.com with ESMTP id 39bqw58baw-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Wed, 23 Jun 2021 07:10:25 -0500 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=IemIFKf0ihwnvzp/yLPQtQpPawQZ/YkJxiOLjxE9sVZhDFFy38qceCogBt11HIRnyuCnZ4NvdcP5ABaMnD1bxAq4S4J3CVszm/JMTqEdLjlJi5bnhSFDeGyLrTg1p+hDL1Y6dFiX7LhvyWTBcjtBxtGZVPxsUkqqqeJgdmjTHJKVTO35c2RNG+TO3GT6/CGOun5t4RQkaxWUG6CJvUU02n7gXjI/tVIvmCrgkdit5exPvhkJmLh8M931xI7ik0OKQA3vtSyNlTt1oWHnDr34roKtHM592tUybmtdThBP8yG/aDuPaj05+cmBSGB3IHrileDjOjxBidvxjnap07ad6A== 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=Rkw73T/sK5az0/egBiHNig355FiE6/AWTfa5QEDz6OQ=; b=UfpE2eIAGLzE0aL00dRnhMQaVVRdoWAafS9XsOpsWw/np373v66dhnmFfCxqiZiZilqoxJwTzmYdxycFWomcIAXkkQgVl0idz6iwTEbNii/EwWIH8ykyGYpCr9HNiLRr2QjNrOwXpV9QmMmKcsCkN7RiYtzv0bRP/yIH2298rIqc8YN5V8mFYxVupbfnkLiZPHhu2EFDqR6Gnslu/h3y5QiLhKc/ypYqmj7CVc5Hv54hRRW/JEo1RNgwbqtsDK9WsgkINIXTMNcEZex3UXdDKJITpwIFkBekvIBuAHqeTUuAz48WlPbuvp4zQU2HjNEerfVd4ZmZFHjit5A9d6zvRw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=progressrail.com; dmarc=pass action=none header.from=progressrail.com; dkim=pass header.d=progressrail.com; arc=none Received: from BN6PR22MB0019.namprd22.prod.outlook.com (2603:10b6:404:2c::22) by BN6PR2201MB1252.namprd22.prod.outlook.com (2603:10b6:405:25::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.21; Wed, 23 Jun 2021 12:10:23 +0000 Received: from BN6PR22MB0019.namprd22.prod.outlook.com ([fe80::d0d3:d825:42af:e7b6]) by BN6PR22MB0019.namprd22.prod.outlook.com ([fe80::d0d3:d825:42af:e7b6%8]) with mapi id 15.20.4264.018; Wed, 23 Jun 2021 12:10:23 +0000 From: Mateus da Silva To: "libc-alpha@sourceware.org" Subject: Help error directive: "This file must be written based on the data type sizes of the target" Thread-Topic: Help error directive: "This file must be written based on the data type sizes of the target" Thread-Index: AddoKLlU6JYYkJKZQe6Trp60B5HTpw== Date: Wed, 23 Jun 2021 12:10:23 +0000 Message-ID: Accept-Language: en-US Content-Language: pt-BR X-MS-Has-Attach: yes X-MS-TNEF-Correlator: msip_labels: MSIP_Label_e2bb7444-f3bf-4f73-baaa-9cd766f59399_ActionId=c6e50f5d-beb2-42b2-9906-2680d40aaf88; MSIP_Label_e2bb7444-f3bf-4f73-baaa-9cd766f59399_ContentBits=0; MSIP_Label_e2bb7444-f3bf-4f73-baaa-9cd766f59399_Enabled=true; MSIP_Label_e2bb7444-f3bf-4f73-baaa-9cd766f59399_Method=Standard; MSIP_Label_e2bb7444-f3bf-4f73-baaa-9cd766f59399_Name=Green; MSIP_Label_e2bb7444-f3bf-4f73-baaa-9cd766f59399_SetDate=2021-06-23T12:03:34Z; MSIP_Label_e2bb7444-f3bf-4f73-baaa-9cd766f59399_SiteId=101cd863-1595-4117-93ca-a67e8f71bb40; x-originating-ip: [12.144.64.196] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 849e8777-640b-4bcd-5ec3-08d9363fe0d0 x-ms-traffictypediagnostic: BN6PR2201MB1252: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:57; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 5/z8cCjT2iyxcgIeCynzEhVH509Z47JzrJJh1pTDtjheTHdVxF00vgrGuHkmcxxJNoD9MUjoplQIzCB8zRlLiZZl9JOdbSuzc/hrVK5DhGG+k1M1UcMday1BoORW1ZiniduKiWEmCypHB12gVwe+KvgqMN2Ld5yH3A9sp0rQIWV/2RGgJx0fF3k2cX2DeClkGbBFFTtk06T++EchY42BHOFEYAUQ3Fe0ipbXLeLap1ph6BntMyYnFr0cN1PJKMCJV+SnjTxXYeXl5+nSsGEB0zVYUosD/RqHxqloM2WeI71K/rDFiO9VNF0jIqEUmS9YR2DGFgpTwpT/tVcZz9KGrlXbsaz5NwfTw0rRmTxVLKUoR9QRGQ4U1zE9M95MfK3cLjJb41JtC0xWtgh9f9K1ulAuYyNGnIQ/AH0pss8mdz7aczWPvabXBpbetpFijt+W4uediMeY4E0IN0fBDlLTy7YpSRg9XECqLWG+0TFfIc1nUbxwNnP+8BDfWNNMQijjshA6urAAI/AoxFYAUUjVNknj+xqZU+2xGQQeZd7MpeYPFk/OJAWKK907cQqEYS95/qpdjbSdGXEzzAijIprH6Z5j3zpDj+LEK7nH/cMjrENG0OB9rGhocmOz9Vw/ITUsqtnrfpFej8r2LTeL62jO9w== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:BN6PR22MB0019.namprd22.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(396003)(136003)(39850400004)(376002)(346002)(83380400001)(19627235002)(99936003)(2906002)(6916009)(71200400001)(66574015)(8936002)(8676002)(33656002)(38100700002)(86362001)(478600001)(55016002)(9686003)(66556008)(316002)(66446008)(66616009)(64756008)(66476007)(186003)(26005)(6506007)(52536014)(76116006)(4744005)(7696005)(66946007)(122000001)(5660300002); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?XKMSOyf5CJB5fjVBiYa1FIVM+o0LT4QMjtuUV5tVEI6uzl+P6u1wW3OQv8?= =?iso-8859-1?Q?jKGYsBPlL46ekUfIAxKTjUR90DKYOeWFvBk/A4kxUviYTBjZE4SVt3gkM/?= =?iso-8859-1?Q?3w5p98w3JhCobWRPWVVCvCfSq14K8e9mSI+wKaj8/IpQqX4qGZwbuTWijn?= =?iso-8859-1?Q?l91geY9sugSrBmmcGtPwyfjCvh/yfpFLGzL0s4qI48lDEI1VDDqTttWp9W?= =?iso-8859-1?Q?BNJCzUe9BZ/Hig17IO6A4U0UyU2dtsL8mfO6619kOlN5keYBrlBjQcI4CA?= =?iso-8859-1?Q?S6mjHfnsiHD5BmvrEQ/Zfexz3bLtYp5v6tNzgnhLeNL1g8tOj0paqdUzWJ?= =?iso-8859-1?Q?R5REAmunfJlsEDjKF/WKFZ5mqARMc9JaVtt1st1iJqVZ0hA7R9b3F+KRBe?= =?iso-8859-1?Q?rEYc5sPMmNFrR7OOydMS/+W0X7BXKOBGls5wHdk54EEgRkSFU0feU1e7Cp?= =?iso-8859-1?Q?313PzWVr2buoxHNy6UvoaiDKLPm4YxxRnuzYHC/5km92mkJHiUAZok3oxK?= =?iso-8859-1?Q?1mcmyVWaUMPW4b1i4hx59ikVZzKOsyzZKLjQxKKuSoy01s58tMmwJ4M3Xk?= =?iso-8859-1?Q?snwXf5TcNzWo/ilTrQd/2i8yfDItIX2e6TZk4KY57umGddC1bMolW5vfBJ?= =?iso-8859-1?Q?vo4zR7arLO3DgGl10ov2YDuJy/SgKg/cZNOgeQ1YI4T3N1QLAW8w0IwEU3?= =?iso-8859-1?Q?DDgzvuqQ7A/PNOt+O3RWCbzTMaW4COyG3/mbaGK6U2Svzt6nk4guIfrdQa?= =?iso-8859-1?Q?cuGQM5E3h5HJxzjkcqI6MiuF3HE5VEQKgWXdEAviRiMhLj6bJNH4Hm/ytg?= =?iso-8859-1?Q?3z/icUVkAHAkzku3Bb/lL+/dSI3vmQrt8s1qX7l/BBMagVAxdq3Uio4B7h?= =?iso-8859-1?Q?GUXtwlVXaOPZQX/K6ElhVqh4Qg0otK8YwqCkzkSW7/LzgDROIcrGQP+hx8?= =?iso-8859-1?Q?8odYRHSuP9Ssr5OE+rwGXSxntsN7RHwO0KHRbPxgnBTl98BNbHV0B+ZLFW?= =?iso-8859-1?Q?r1EbMA1BtMZAxkRdV3B9cnU65eEr/aOwce7SpTcTMlo2FkKu2EdhSawktv?= =?iso-8859-1?Q?FWJH7LUMmPe53OqMHSpRkw604IJ82pdfVxel/0DCmYgr1uOHVfVLZPpO8G?= =?iso-8859-1?Q?FESo8x9Rfjs3Jbg4FLaMvq6rZZSEANFV1K+YmNXp09DVeMvzWoORHrGCym?= =?iso-8859-1?Q?AkZ183IPMPy4gZsb6415slGcdmY/cndnUSNLuLwNI7XafDIBfXNtIMOHig?= =?iso-8859-1?Q?ZmoGRPJxxbkZatTccsC236FokxiLQ9BfgOt4qBH2oL0wvK9JAEUhxawaqG?= =?iso-8859-1?Q?DT96cTGzbANA8KNq9K6T216ewR6anTKtCuybM5l9wAOZJKLaGXpmq8tzr3?= =?iso-8859-1?Q?Ow3uwK5ncR?= x-ms-exchange-transport-forked: True Content-Type: multipart/mixed; boundary="_004_BN6PR22MB0019E203C9C202F2ABA56A7D91089BN6PR22MB0019namp_" MIME-Version: 1.0 X-OriginatorOrg: progressrail.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BN6PR22MB0019.namprd22.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 849e8777-640b-4bcd-5ec3-08d9363fe0d0 X-MS-Exchange-CrossTenant-originalarrivaltime: 23 Jun 2021 12:10:23.1607 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 101cd863-1595-4117-93ca-a67e8f71bb40 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: YIi9LMGRqCPAE5gS6UoU6t7EttJ06ZD3jL12KSFhyAShs9+q3m30ACWojoLVBfgEu0mD9ypztZnso7Ka5wgZL8qAQLiyVu49qVstFIQ2J2g= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN6PR2201MB1252 X-Proofpoint-ORIG-GUID: PthtfuA0C46aHeAzH9nwghDKpLsHEhBr X-Proofpoint-GUID: PthtfuA0C46aHeAzH9nwghDKpLsHEhBr X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.182.1,Aquarius:18.0.790,Hydra:6.0.391,FMLib:17.0.607.475 definitions=2021-06-23_06,2021-06-23_01,2020-04-07_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 impostorscore=0 suspectscore=0 spamscore=0 priorityscore=1501 lowpriorityscore=0 bulkscore=0 mlxscore=0 clxscore=1011 adultscore=0 phishscore=0 mlxlogscore=999 malwarescore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2104190000 definitions=main-2106230071 X-Spam-Status: No, score=-2.8 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, HTML_MESSAGE, RCVD_IN_DNSWL_LOW, SPF_HELO_NONE, SPF_PASS 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-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Jun 2021 12:10:29 -0000 --_004_BN6PR22MB0019E203C9C202F2ABA56A7D91089BN6PR22MB0019namp_ Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Hello, I tried to include the library in my project but I received this message er= ror in attached. ..\..\..\glibc\bits/wordsize.h(1): error: #35: #error directive: "This fil= e must be written based on the data type sizes of the target" #error "This file must be written based on the data type sizes of the tar= get" comunicar_serial.c: 0 warnings, 1 error I use Keil uVision v5 as compiler and my host processor is a NXP LPC1766, = and my Operational System is Windows 10. Atc., Mateus Gon=E7alves da Silva Programmer - TESS Engineering TESS Projetos Via Veneto, 1781 Curitiba | Paran=E1 | BR | 82400-020 e-mail: mgsilva-ext@progressrail.com Caterpillar: Confidential Green --_004_BN6PR22MB0019E203C9C202F2ABA56A7D91089BN6PR22MB0019namp_ Content-Type: text/plain; name="Message Error.txt" Content-Description: Message Error.txt Content-Disposition: attachment; filename="Message Error.txt"; size=22589; creation-date="Wed, 23 Jun 2021 12:06:28 GMT"; modification-date="Wed, 23 Jun 2021 12:06:29 GMT" Content-Transfer-Encoding: base64 UmVidWlsZCBzdGFydGVkOiBQcm9qZWN0OiBDb252ZXJzb3JMb24NCioqKiBVc2luZyBDb21waWxl ciAnVjUuMDYgdXBkYXRlIDcgKGJ1aWxkIDk2MCknLCBmb2xkZXI6ICdDOlxLZWlsX3Y1XEFSTVxB Uk1DQ1xCaW4nDQpSZWJ1aWxkIHRhcmdldCAnQ29udmVyc29yTE9OJw0KQmVmb3JlIEJ1aWxkIC0g VXNlciBjb21tYW5kICMxOiBDOlxVc2Vyc1xtZ3NpbHZhLWV4dFxEb2N1bWVudHNcUHJvamV0b19J bnRlcmZhY2VfTG9uX1NlcmlhbFxGV1xwbTAwNTU2X2NvbnZlcnNvcl9sb25caWlpLmV4ZSAtLXRh cmdldCBzaG9ydHN0YWNrLWNsYXNzaWMgbWFpbi5jDQpBZGVzdG8gSXpvVCBJbnRlcmZhY2UgSW50 ZXJwcmV0ZXIgMS4zMC4wOQ0KQ29weXJpZ2h0IChjKSAyMDE0LTIwMTkgQWRlc3RvIFRlY2hub2xv Z2llcyBDb3Jwb3JhdGlvbi4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuDQowIGVycm9yKHMpLCAwIHdh cm5pbmcocykNCmFzc2VtYmxpbmcgc3RhcnR1cF9MUEMxN3h4LnMuLi4NCmNvbXBpbGluZyBtYWlu LmMuLi4NCi4uXC4uXC4uXGdsaWJjXGJpdHMvd29yZHNpemUuaCgxKTogZXJyb3I6ICAjMzU6ICNl cnJvciBkaXJlY3RpdmU6ICJUaGlzIGZpbGUgbXVzdCBiZSB3cml0dGVuIGJhc2VkIG9uIHRoZSBk YXRhIHR5cGUgc2l6ZXMgb2YgdGhlIHRhcmdldCINCiAgI2Vycm9yICJUaGlzIGZpbGUgbXVzdCBi ZSB3cml0dGVuIGJhc2VkIG9uIHRoZSBkYXRhIHR5cGUgc2l6ZXMgb2YgdGhlIHRhcmdldCINCm1h aW4uYzogMCB3YXJuaW5ncywgMSBlcnJvcg0KY29tcGlsaW5nIGNvbXVuaWNhcl9zZXJpYWwuYy4u Lg0KLi5cLi5cLi5cZ2xpYmNcYml0cy93b3Jkc2l6ZS5oKDEpOiBlcnJvcjogICMzNTogI2Vycm9y IGRpcmVjdGl2ZTogIlRoaXMgZmlsZSBtdXN0IGJlIHdyaXR0ZW4gYmFzZWQgb24gdGhlIGRhdGEg dHlwZSBzaXplcyBvZiB0aGUgdGFyZ2V0Ig0KICAjZXJyb3IgIlRoaXMgZmlsZSBtdXN0IGJlIHdy aXR0ZW4gYmFzZWQgb24gdGhlIGRhdGEgdHlwZSBzaXplcyBvZiB0aGUgdGFyZ2V0Ig0KY29tdW5p Y2FyX3NlcmlhbC5jOiAwIHdhcm5pbmdzLCAxIGVycm9yDQpjb21waWxpbmcgc3lzdGVtX0xQQzE3 eHguYy4uLg0KY29tcGlsaW5nIGludGVyZmFjZV9uZXVyb25jaGlwLmMuLi4NCmludGVyZmFjZV9u ZXVyb25jaGlwLmMoMTQwKTogd2FybmluZzogICMxLUQ6IGxhc3QgbGluZSBvZiBmaWxlIGVuZHMg d2l0aG91dCBhIG5ld2xpbmUNCiAgfQ0KaW50ZXJmYWNlX25ldXJvbmNoaXAuYzogMSB3YXJuaW5n LCAwIGVycm9ycw0KY29tcGlsaW5nIGludGVycnVwY29lcy5jLi4uDQppbnRlcnJ1cGNvZXMuYygx MjkpOiB3YXJuaW5nOiAgIzEtRDogbGFzdCBsaW5lIG9mIGZpbGUgZW5kcyB3aXRob3V0IGEgbmV3 bGluZQ0KICAJfQkNCmludGVycnVwY29lcy5jOiAxIHdhcm5pbmcsIDAgZXJyb3JzDQpjb21waWxp bmcgaV9vLmMuLi4NCmNvbXBpbGluZyBzeXN0aWNrX3YyLmMuLi4NCmNvbXBpbGluZyBkZWxheS5j Li4uDQpjb21waWxpbmcgY3JjMTYuYy4uLg0KY29tcGlsaW5nIHRpbWVyLmMuLi4NCmNvbXBpbGlu ZyBzZXJpYWwuYy4uLg0KY29tcGlsaW5nIHByb3RvY29sb3MuYy4uLg0KY29tcGlsaW5nIFNob3J0 U3RhY2tEZXYuYy4uLg0KLi5cc2hvcnRzdGFja1xhcGlcU2hvcnRTdGFja0FwaS5oKDcyKTogd2Fy bmluZzogICM4MTUtRDogdHlwZSBxdWFsaWZpZXIgb24gcmV0dXJuIHR5cGUgaXMgbWVhbmluZ2xl c3MNCiAgZXh0ZXJuIGNvbnN0IExvbkFwaUVycm9yIExvbkluaXQoTGR2Q3RybCogY3RybCk7DQou LlxzaG9ydHN0YWNrXGFwaVxTaG9ydFN0YWNrQXBpLmgoODcpOiB3YXJuaW5nOiAgIzgxNS1EOiB0 eXBlIHF1YWxpZmllciBvbiByZXR1cm4gdHlwZSBpcyBtZWFuaW5nbGVzcw0KICBleHRlcm4gY29u c3QgTG9uQXBpRXJyb3IgTG9uUmVpbml0KHZvaWQpOw0KLi5cc2hvcnRzdGFja1xhcGlcU2hvcnRT dGFja0FwaS5oKDk1KTogd2FybmluZzogICM4MTUtRDogdHlwZSBxdWFsaWZpZXIgb24gcmV0dXJu IHR5cGUgaXMgbWVhbmluZ2xlc3MNCiAgZXh0ZXJuIGNvbnN0IExvbkFwaUVycm9yIExvbkV4aXQo dm9pZCk7DQouLlxzaG9ydHN0YWNrXGFwaVxTaG9ydFN0YWNrQXBpLmgoMTU5KTogd2FybmluZzog ICM4MTUtRDogdHlwZSBxdWFsaWZpZXIgb24gcmV0dXJuIHR5cGUgaXMgbWVhbmluZ2xlc3MNCiAg ZXh0ZXJuIGNvbnN0IExvbkFwaUVycm9yIExvblBvbGxOdihjb25zdCB1bnNpZ25lZCBpbmRleCk7 DQouLlxzaG9ydHN0YWNrXGFwaVxTaG9ydFN0YWNrQXBpLmgoMTc2KTogd2FybmluZzogICM4MTUt RDogdHlwZSBxdWFsaWZpZXIgb24gcmV0dXJuIHR5cGUgaXMgbWVhbmluZ2xlc3MNCiAgZXh0ZXJu IGNvbnN0IExvbkFwaUVycm9yIExvblByb3BhZ2F0ZU52KGNvbnN0IHVuc2lnbmVkIGluZGV4KTsN Ci4uXHNob3J0c3RhY2tcYXBpXFNob3J0U3RhY2tBcGkuaCgxOTMpOiB3YXJuaW5nOiAgIzgxNS1E OiB0eXBlIHF1YWxpZmllciBvbiByZXR1cm4gdHlwZSBpcyBtZWFuaW5nbGVzcw0KICBleHRlcm4g Y29uc3QgdW5zaWduZWQgTG9uR2V0RGVjbGFyZWROdlNpemUoY29uc3QgdW5zaWduZWQgaW5kZXgp Ow0KLi5cc2hvcnRzdGFja1xhcGlcU2hvcnRTdGFja0FwaS5oKDIxMik6IHdhcm5pbmc6ICAjODE1 LUQ6IHR5cGUgcXVhbGlmaWVyIG9uIHJldHVybiB0eXBlIGlzIG1lYW5pbmdsZXNzDQogIGV4dGVy biB2b2xhdGlsZSB2b2lkKiBjb25zdCBMb25HZXROdlZhbHVlKGNvbnN0IHVuc2lnbmVkIGluZGV4 KTsNCi4uXHNob3J0c3RhY2tcYXBpXFNob3J0U3RhY2tBcGkuaCgyMzMpOiB3YXJuaW5nOiAgIzgx NS1EOiB0eXBlIHF1YWxpZmllciBvbiByZXR1cm4gdHlwZSBpcyBtZWFuaW5nbGVzcw0KICBleHRl cm4gY29uc3QgTG9uQXBpRXJyb3IgTG9uU2VuZFJlc3BvbnNlKGNvbnN0IExvbkNvcnJlbGF0b3Ig Y29ycmVsYXRvciwNCi4uXHNob3J0c3RhY2tcYXBpXFNob3J0U3RhY2tBcGkuaCgyNjApOiB3YXJu aW5nOiAgIzgxNS1EOiB0eXBlIHF1YWxpZmllciBvbiByZXR1cm4gdHlwZSBpcyBtZWFuaW5nbGVz cw0KICBleHRlcm4gY29uc3QgTG9uQXBpRXJyb3IgTG9uR2V0VW5pcXVlSWQoTG9uVW5pcXVlSWQq IGNvbnN0IHBJZCk7DQouLlxzaG9ydHN0YWNrXGFwaVxTaG9ydFN0YWNrQXBpLmgoMjgyKTogd2Fy bmluZzogICM4MTUtRDogdHlwZSBxdWFsaWZpZXIgb24gcmV0dXJuIHR5cGUgaXMgbWVhbmluZ2xl c3MNCiAgZXh0ZXJuIGNvbnN0IExvbkFwaUVycm9yIExvbkdldFZlcnNpb24oTG9uQnl0ZSogY29u c3QgcFZlcnNpb24pOw0KLi5cc2hvcnRzdGFja1xhcGlcU2hvcnRTdGFja0FwaS5oKDI5NSk6IHdh cm5pbmc6ICAjODE1LUQ6IHR5cGUgcXVhbGlmaWVyIG9uIHJldHVybiB0eXBlIGlzIG1lYW5pbmds ZXNzDQogIGV4dGVybiBjb25zdCBMb25BcGlFcnJvciBMb25TZW5kU2VydmljZVBpbih2b2lkKTsN Ci4uXHNob3J0c3RhY2tcYXBpXFNob3J0U3RhY2tBcGkuaCgzMDgpOiB3YXJuaW5nOiAgIzgxNS1E OiB0eXBlIHF1YWxpZmllciBvbiByZXR1cm4gdHlwZSBpcyBtZWFuaW5nbGVzcw0KICBleHRlcm4g Y29uc3QgTG9uQXBpRXJyb3IgTG9uU2VuZFJlc2V0KHZvaWQpOw0KLi5cc2hvcnRzdGFja1xhcGlc U2hvcnRTdGFja0FwaS5oKDMyNik6IHdhcm5pbmc6ICAjODE1LUQ6IHR5cGUgcXVhbGlmaWVyIG9u IHJldHVybiB0eXBlIGlzIG1lYW5pbmdsZXNzDQogIGV4dGVybiBjb25zdCB2b2xhdGlsZSBMb25S ZXNldE5vdGlmaWNhdGlvbiogY29uc3QgTG9uR2V0TGFzdFJlc2V0Tm90aWZpY2F0aW9uKHZvaWQp Ow0KLi5cc2hvcnRzdGFja1xhcGlcU2hvcnRTdGFja0FwaS5oKDEwMzYpOiB3YXJuaW5nOiAgIzgx NS1EOiB0eXBlIHF1YWxpZmllciBvbiByZXR1cm4gdHlwZSBpcyBtZWFuaW5nbGVzcw0KICBleHRl cm4gY29uc3QgdW5zaWduZWQgTG9uR2V0Q3VycmVudE52U2l6ZShjb25zdCB1bnNpZ25lZCBpbmRl eCk7DQouLlxzaG9ydHN0YWNrXGFwaVxTaG9ydFN0YWNrQXBpLmgoMTA1MSk6IHdhcm5pbmc6ICAj ODE1LUQ6IHR5cGUgcXVhbGlmaWVyIG9uIHJldHVybiB0eXBlIGlzIG1lYW5pbmdsZXNzDQogIGV4 dGVybiBjb25zdCBMb25BcGlFcnJvciBMb25OdmREZXNlcmlhbGl6ZU52cyh2b2lkKTsNCi4uXHNo b3J0c3RhY2tcYXBpXFNob3J0U3RhY2tBcGkuaCgxMDcwKTogd2FybmluZzogICM4MTUtRDogdHlw ZSBxdWFsaWZpZXIgb24gcmV0dXJuIHR5cGUgaXMgbWVhbmluZ2xlc3MNCiAgZXh0ZXJuIGNvbnN0 IExvbkFwaUVycm9yIExvbk52ZFNlcmlhbGl6ZU52cyh2b2lkKTsNCi4uXHNob3J0c3RhY2tcYXBp XFNob3J0U3RhY2tBcGkuaCgxNTcwKTogd2FybmluZzogICM4MTUtRDogdHlwZSBxdWFsaWZpZXIg b24gcmV0dXJuIHR5cGUgaXMgbWVhbmluZ2xlc3MNCiAgZXh0ZXJuIGNvbnN0IExvbkFwaUVycm9y IExvblJlc3VtZSgpOw0KLi5cc2hvcnRzdGFja1xhcGlcU2hvcnRTdGFja0FwaS5oKDE1NzApOiB3 YXJuaW5nOiAgIzEyOTUtRDogRGVwcmVjYXRlZCBkZWNsYXJhdGlvbiBMb25SZXN1bWUgLSBnaXZl IGFyZyB0eXBlcw0KICBleHRlcm4gY29uc3QgTG9uQXBpRXJyb3IgTG9uUmVzdW1lKCk7DQouLlxz aG9ydHN0YWNrXGFwaVxTaG9ydFN0YWNrQXBpLmgoMTU4Nik6IHdhcm5pbmc6ICAjODE1LUQ6IHR5 cGUgcXVhbGlmaWVyIG9uIHJldHVybiB0eXBlIGlzIG1lYW5pbmdsZXNzDQogIGV4dGVybiBjb25z dCBMb25BcGlFcnJvciBMb25TdXNwZW5kKHVuc2lnbmVkIG1vZGUsIHVuc2lnbmVkIHRpbWVvdXQp Ow0KU2hvcnRTdGFja0Rldi5jKDk3KTogd2FybmluZzogICMxOTEtRDogdHlwZSBxdWFsaWZpZXIg aXMgbWVhbmluZ2xlc3Mgb24gY2FzdCB0eXBlDQogICAgIHtEVlBUUihub2RlT2JqZWN0Lm52aVJl cXVlc3QpLCAzLCAweDAwfSwNClNob3J0U3RhY2tEZXYuYyg5OCk6IHdhcm5pbmc6ICAjMTkxLUQ6 IHR5cGUgcXVhbGlmaWVyIGlzIG1lYW5pbmdsZXNzIG9uIGNhc3QgdHlwZQ0KICAgICB7RFZQVFIo bm9kZU9iamVjdC5udm9TdGF0dXMpLCA2LCAweDgwfSwNClNob3J0U3RhY2tEZXYuYyg5OSk6IHdh cm5pbmc6ICAjMTkxLUQ6IHR5cGUgcXVhbGlmaWVyIGlzIG1lYW5pbmdsZXNzIG9uIGNhc3QgdHlw ZQ0KICAgICB7UFZQVFIobm9kZU9iamVjdF9fbmNpRGV2TWFqVmVyKSwgMSwgMHg0MH0sDQpTaG9y dFN0YWNrRGV2LmMoMTAwKTogd2FybmluZzogICMxOTEtRDogdHlwZSBxdWFsaWZpZXIgaXMgbWVh bmluZ2xlc3Mgb24gY2FzdCB0eXBlDQogICAgIHtQVlBUUihub2RlT2JqZWN0X19uY2lEZXZNaW5W ZXIpLCAxLCAweDQwfSwNClNob3J0U3RhY2tEZXYuYygxMDEpOiB3YXJuaW5nOiAgIzE5MS1EOiB0 eXBlIHF1YWxpZmllciBpcyBtZWFuaW5nbGVzcyBvbiBjYXN0IHR5cGUNCiAgICAge0RWUFRSKGRy aXZlclswXS5udmlWYWx1ZSksIDIsIDB4MDB9LA0KU2hvcnRTdGFja0Rldi5jKDEwMik6IHdhcm5p bmc6ICAjMTkxLUQ6IHR5cGUgcXVhbGlmaWVyIGlzIG1lYW5pbmdsZXNzIG9uIGNhc3QgdHlwZQ0K ICAgICB7RFZQVFIoZHJpdmVyWzBdLm52b1ZhbHVlRmIpLCAyLCAweDgwfSwNClNob3J0U3RhY2tE ZXYuYygxMDMpOiB3YXJuaW5nOiAgIzE5MS1EOiB0eXBlIHF1YWxpZmllciBpcyBtZWFuaW5nbGVz cyBvbiBjYXN0IHR5cGUNCiAgICAge1BWUFRSKGRyaXZlcl9fMF9fbmNpTG9jYXRpb24pLCAzMSwg MHg0MH0sDQpTaG9ydFN0YWNrRGV2LmMoMTA0KTogd2FybmluZzogICMxOTEtRDogdHlwZSBxdWFs aWZpZXIgaXMgbWVhbmluZ2xlc3Mgb24gY2FzdCB0eXBlDQogICAgIHtEVlBUUihkcml2ZXJbMV0u bnZpVmFsdWUpLCAyLCAweDAwfSwNClNob3J0U3RhY2tEZXYuYygxMDUpOiB3YXJuaW5nOiAgIzE5 MS1EOiB0eXBlIHF1YWxpZmllciBpcyBtZWFuaW5nbGVzcyBvbiBjYXN0IHR5cGUNCiAgICAge0RW UFRSKGRyaXZlclsxXS5udm9WYWx1ZUZiKSwgMiwgMHg4MH0sDQpTaG9ydFN0YWNrRGV2LmMoMTA2 KTogd2FybmluZzogICMxOTEtRDogdHlwZSBxdWFsaWZpZXIgaXMgbWVhbmluZ2xlc3Mgb24gY2Fz dCB0eXBlDQogICAgIHtQVlBUUihkcml2ZXJfXzFfX25jaUxvY2F0aW9uKSwgMzEsIDB4NDB9LA0K U2hvcnRTdGFja0Rldi5jKDIxNik6IHdhcm5pbmc6ICAjODE1LUQ6IHR5cGUgcXVhbGlmaWVyIG9u IHJldHVybiB0eXBlIGlzIG1lYW5pbmdsZXNzDQogIGNvbnN0IHVuc2lnbmVkIExvbkdldEN1cnJl bnROdlNpemUoY29uc3QgdW5zaWduZWQgaW5kZXgpIHsNClNob3J0U3RhY2tEZXYuYzogMzAgd2Fy bmluZ3MsIDAgZXJyb3JzDQpjb21waWxpbmcgc3dfdGltZXIuYy4uLg0KY29tcGlsaW5nIGZsYXNo X2lhcC5jLi4uDQpjb21waWxpbmcgdG9vbHMuYy4uLg0KY29tcGlsaW5nIFNob3J0U3RhY2tIYW5k bGVycy5jLi4uDQouLlxzaG9ydHN0YWNrXGFwaVxTaG9ydFN0YWNrQXBpLmgoNzIpOiB3YXJuaW5n OiAgIzgxNS1EOiB0eXBlIHF1YWxpZmllciBvbiByZXR1cm4gdHlwZSBpcyBtZWFuaW5nbGVzcw0K ICBleHRlcm4gY29uc3QgTG9uQXBpRXJyb3IgTG9uSW5pdChMZHZDdHJsKiBjdHJsKTsNCi4uXHNo b3J0c3RhY2tcYXBpXFNob3J0U3RhY2tBcGkuaCg4Nyk6IHdhcm5pbmc6ICAjODE1LUQ6IHR5cGUg cXVhbGlmaWVyIG9uIHJldHVybiB0eXBlIGlzIG1lYW5pbmdsZXNzDQogIGV4dGVybiBjb25zdCBM b25BcGlFcnJvciBMb25SZWluaXQodm9pZCk7DQouLlxzaG9ydHN0YWNrXGFwaVxTaG9ydFN0YWNr QXBpLmgoOTUpOiB3YXJuaW5nOiAgIzgxNS1EOiB0eXBlIHF1YWxpZmllciBvbiByZXR1cm4gdHlw ZSBpcyBtZWFuaW5nbGVzcw0KICBleHRlcm4gY29uc3QgTG9uQXBpRXJyb3IgTG9uRXhpdCh2b2lk KTsNCi4uXHNob3J0c3RhY2tcYXBpXFNob3J0U3RhY2tBcGkuaCgxNTkpOiB3YXJuaW5nOiAgIzgx NS1EOiB0eXBlIHF1YWxpZmllciBvbiByZXR1cm4gdHlwZSBpcyBtZWFuaW5nbGVzcw0KICBleHRl cm4gY29uc3QgTG9uQXBpRXJyb3IgTG9uUG9sbE52KGNvbnN0IHVuc2lnbmVkIGluZGV4KTsNCi4u XHNob3J0c3RhY2tcYXBpXFNob3J0U3RhY2tBcGkuaCgxNzYpOiB3YXJuaW5nOiAgIzgxNS1EOiB0 eXBlIHF1YWxpZmllciBvbiByZXR1cm4gdHlwZSBpcyBtZWFuaW5nbGVzcw0KICBleHRlcm4gY29u c3QgTG9uQXBpRXJyb3IgTG9uUHJvcGFnYXRlTnYoY29uc3QgdW5zaWduZWQgaW5kZXgpOw0KLi5c c2hvcnRzdGFja1xhcGlcU2hvcnRTdGFja0FwaS5oKDE5Myk6IHdhcm5pbmc6ICAjODE1LUQ6IHR5 cGUgcXVhbGlmaWVyIG9uIHJldHVybiB0eXBlIGlzIG1lYW5pbmdsZXNzDQogIGV4dGVybiBjb25z dCB1bnNpZ25lZCBMb25HZXREZWNsYXJlZE52U2l6ZShjb25zdCB1bnNpZ25lZCBpbmRleCk7DQou LlxzaG9ydHN0YWNrXGFwaVxTaG9ydFN0YWNrQXBpLmgoMjEyKTogd2FybmluZzogICM4MTUtRDog dHlwZSBxdWFsaWZpZXIgb24gcmV0dXJuIHR5cGUgaXMgbWVhbmluZ2xlc3MNCiAgZXh0ZXJuIHZv bGF0aWxlIHZvaWQqIGNvbnN0IExvbkdldE52VmFsdWUoY29uc3QgdW5zaWduZWQgaW5kZXgpOw0K Li5cc2hvcnRzdGFja1xhcGlcU2hvcnRTdGFja0FwaS5oKDIzMyk6IHdhcm5pbmc6ICAjODE1LUQ6 IHR5cGUgcXVhbGlmaWVyIG9uIHJldHVybiB0eXBlIGlzIG1lYW5pbmdsZXNzDQogIGV4dGVybiBj b25zdCBMb25BcGlFcnJvciBMb25TZW5kUmVzcG9uc2UoY29uc3QgTG9uQ29ycmVsYXRvciBjb3Jy ZWxhdG9yLA0KLi5cc2hvcnRzdGFja1xhcGlcU2hvcnRTdGFja0FwaS5oKDI2MCk6IHdhcm5pbmc6 ICAjODE1LUQ6IHR5cGUgcXVhbGlmaWVyIG9uIHJldHVybiB0eXBlIGlzIG1lYW5pbmdsZXNzDQog IGV4dGVybiBjb25zdCBMb25BcGlFcnJvciBMb25HZXRVbmlxdWVJZChMb25VbmlxdWVJZCogY29u c3QgcElkKTsNCi4uXHNob3J0c3RhY2tcYXBpXFNob3J0U3RhY2tBcGkuaCgyODIpOiB3YXJuaW5n OiAgIzgxNS1EOiB0eXBlIHF1YWxpZmllciBvbiByZXR1cm4gdHlwZSBpcyBtZWFuaW5nbGVzcw0K ICBleHRlcm4gY29uc3QgTG9uQXBpRXJyb3IgTG9uR2V0VmVyc2lvbihMb25CeXRlKiBjb25zdCBw VmVyc2lvbik7DQouLlxzaG9ydHN0YWNrXGFwaVxTaG9ydFN0YWNrQXBpLmgoMjk1KTogd2Fybmlu ZzogICM4MTUtRDogdHlwZSBxdWFsaWZpZXIgb24gcmV0dXJuIHR5cGUgaXMgbWVhbmluZ2xlc3MN CiAgZXh0ZXJuIGNvbnN0IExvbkFwaUVycm9yIExvblNlbmRTZXJ2aWNlUGluKHZvaWQpOw0KLi5c c2hvcnRzdGFja1xhcGlcU2hvcnRTdGFja0FwaS5oKDMwOCk6IHdhcm5pbmc6ICAjODE1LUQ6IHR5 cGUgcXVhbGlmaWVyIG9uIHJldHVybiB0eXBlIGlzIG1lYW5pbmdsZXNzDQogIGV4dGVybiBjb25z dCBMb25BcGlFcnJvciBMb25TZW5kUmVzZXQodm9pZCk7DQouLlxzaG9ydHN0YWNrXGFwaVxTaG9y dFN0YWNrQXBpLmgoMzI2KTogd2FybmluZzogICM4MTUtRDogdHlwZSBxdWFsaWZpZXIgb24gcmV0 dXJuIHR5cGUgaXMgbWVhbmluZ2xlc3MNCiAgZXh0ZXJuIGNvbnN0IHZvbGF0aWxlIExvblJlc2V0 Tm90aWZpY2F0aW9uKiBjb25zdCBMb25HZXRMYXN0UmVzZXROb3RpZmljYXRpb24odm9pZCk7DQou LlxzaG9ydHN0YWNrXGFwaVxTaG9ydFN0YWNrQXBpLmgoMTAzNik6IHdhcm5pbmc6ICAjODE1LUQ6 IHR5cGUgcXVhbGlmaWVyIG9uIHJldHVybiB0eXBlIGlzIG1lYW5pbmdsZXNzDQogIGV4dGVybiBj b25zdCB1bnNpZ25lZCBMb25HZXRDdXJyZW50TnZTaXplKGNvbnN0IHVuc2lnbmVkIGluZGV4KTsN Ci4uXHNob3J0c3RhY2tcYXBpXFNob3J0U3RhY2tBcGkuaCgxMDUxKTogd2FybmluZzogICM4MTUt RDogdHlwZSBxdWFsaWZpZXIgb24gcmV0dXJuIHR5cGUgaXMgbWVhbmluZ2xlc3MNCiAgZXh0ZXJu IGNvbnN0IExvbkFwaUVycm9yIExvbk52ZERlc2VyaWFsaXplTnZzKHZvaWQpOw0KLi5cc2hvcnRz dGFja1xhcGlcU2hvcnRTdGFja0FwaS5oKDEwNzApOiB3YXJuaW5nOiAgIzgxNS1EOiB0eXBlIHF1 YWxpZmllciBvbiByZXR1cm4gdHlwZSBpcyBtZWFuaW5nbGVzcw0KICBleHRlcm4gY29uc3QgTG9u QXBpRXJyb3IgTG9uTnZkU2VyaWFsaXplTnZzKHZvaWQpOw0KLi5cc2hvcnRzdGFja1xhcGlcU2hv cnRTdGFja0FwaS5oKDE1NzApOiB3YXJuaW5nOiAgIzgxNS1EOiB0eXBlIHF1YWxpZmllciBvbiBy ZXR1cm4gdHlwZSBpcyBtZWFuaW5nbGVzcw0KICBleHRlcm4gY29uc3QgTG9uQXBpRXJyb3IgTG9u UmVzdW1lKCk7DQouLlxzaG9ydHN0YWNrXGFwaVxTaG9ydFN0YWNrQXBpLmgoMTU3MCk6IHdhcm5p bmc6ICAjMTI5NS1EOiBEZXByZWNhdGVkIGRlY2xhcmF0aW9uIExvblJlc3VtZSAtIGdpdmUgYXJn IHR5cGVzDQogIGV4dGVybiBjb25zdCBMb25BcGlFcnJvciBMb25SZXN1bWUoKTsNCi4uXHNob3J0 c3RhY2tcYXBpXFNob3J0U3RhY2tBcGkuaCgxNTg2KTogd2FybmluZzogICM4MTUtRDogdHlwZSBx dWFsaWZpZXIgb24gcmV0dXJuIHR5cGUgaXMgbWVhbmluZ2xlc3MNCiAgZXh0ZXJuIGNvbnN0IExv bkFwaUVycm9yIExvblN1c3BlbmQodW5zaWduZWQgbW9kZSwgdW5zaWduZWQgdGltZW91dCk7DQou LlwuLlwuLlxnbGliY1xiaXRzL3dvcmRzaXplLmgoMSk6IGVycm9yOiAgIzM1OiAjZXJyb3IgZGly ZWN0aXZlOiAiVGhpcyBmaWxlIG11c3QgYmUgd3JpdHRlbiBiYXNlZCBvbiB0aGUgZGF0YSB0eXBl IHNpemVzIG9mIHRoZSB0YXJnZXQiDQogICNlcnJvciAiVGhpcyBmaWxlIG11c3QgYmUgd3JpdHRl biBiYXNlZCBvbiB0aGUgZGF0YSB0eXBlIHNpemVzIG9mIHRoZSB0YXJnZXQiDQouLlxzaG9ydHN0 YWNrXGFwaVxTaG9ydFN0YWNrSGFuZGxlcnMuYzogMTkgd2FybmluZ3MsIDEgZXJyb3INCmNvbXBp bGluZyBzZXJpYWxfdHJhdGFtZW50by5jLi4uDQouLlxiaWJsaW90ZWNhczJcR2VuZXJpY2FzXHNl cmlhbF90cmF0YW1lbnRvLmMoNzQ3KTogd2FybmluZzogICMxMjE1LUQ6ICN3YXJuaW5nIGRpcmVj dGl2ZTogVUFSVCAwID09IFVBUlQwIDE/DQogICN3YXJuaW5nIFVBUlQgMCA9PSBVQVJUMCAxPw0K Li5cYmlibGlvdGVjYXMyXEdlbmVyaWNhc1xzZXJpYWxfdHJhdGFtZW50by5jOiAxIHdhcm5pbmcs IDAgZXJyb3JzDQpjb21waWxpbmcgU2hvcnRTdGFja0FwaS5jLi4uDQouLlxzaG9ydHN0YWNrXGFw aVxTaG9ydFN0YWNrQXBpLmgoNzIpOiB3YXJuaW5nOiAgIzgxNS1EOiB0eXBlIHF1YWxpZmllciBv biByZXR1cm4gdHlwZSBpcyBtZWFuaW5nbGVzcw0KICBleHRlcm4gY29uc3QgTG9uQXBpRXJyb3Ig TG9uSW5pdChMZHZDdHJsKiBjdHJsKTsNCi4uXHNob3J0c3RhY2tcYXBpXFNob3J0U3RhY2tBcGku aCg4Nyk6IHdhcm5pbmc6ICAjODE1LUQ6IHR5cGUgcXVhbGlmaWVyIG9uIHJldHVybiB0eXBlIGlz IG1lYW5pbmdsZXNzDQogIGV4dGVybiBjb25zdCBMb25BcGlFcnJvciBMb25SZWluaXQodm9pZCk7 DQouLlxzaG9ydHN0YWNrXGFwaVxTaG9ydFN0YWNrQXBpLmgoOTUpOiB3YXJuaW5nOiAgIzgxNS1E OiB0eXBlIHF1YWxpZmllciBvbiByZXR1cm4gdHlwZSBpcyBtZWFuaW5nbGVzcw0KICBleHRlcm4g Y29uc3QgTG9uQXBpRXJyb3IgTG9uRXhpdCh2b2lkKTsNCi4uXHNob3J0c3RhY2tcYXBpXFNob3J0 U3RhY2tBcGkuaCgxNTkpOiB3YXJuaW5nOiAgIzgxNS1EOiB0eXBlIHF1YWxpZmllciBvbiByZXR1 cm4gdHlwZSBpcyBtZWFuaW5nbGVzcw0KICBleHRlcm4gY29uc3QgTG9uQXBpRXJyb3IgTG9uUG9s bE52KGNvbnN0IHVuc2lnbmVkIGluZGV4KTsNCi4uXHNob3J0c3RhY2tcYXBpXFNob3J0U3RhY2tB cGkuaCgxNzYpOiB3YXJuaW5nOiAgIzgxNS1EOiB0eXBlIHF1YWxpZmllciBvbiByZXR1cm4gdHlw ZSBpcyBtZWFuaW5nbGVzcw0KICBleHRlcm4gY29uc3QgTG9uQXBpRXJyb3IgTG9uUHJvcGFnYXRl TnYoY29uc3QgdW5zaWduZWQgaW5kZXgpOw0KLi5cc2hvcnRzdGFja1xhcGlcU2hvcnRTdGFja0Fw aS5oKDE5Myk6IHdhcm5pbmc6ICAjODE1LUQ6IHR5cGUgcXVhbGlmaWVyIG9uIHJldHVybiB0eXBl IGlzIG1lYW5pbmdsZXNzDQogIGV4dGVybiBjb25zdCB1bnNpZ25lZCBMb25HZXREZWNsYXJlZE52 U2l6ZShjb25zdCB1bnNpZ25lZCBpbmRleCk7DQouLlxzaG9ydHN0YWNrXGFwaVxTaG9ydFN0YWNr QXBpLmgoMjEyKTogd2FybmluZzogICM4MTUtRDogdHlwZSBxdWFsaWZpZXIgb24gcmV0dXJuIHR5 cGUgaXMgbWVhbmluZ2xlc3MNCiAgZXh0ZXJuIHZvbGF0aWxlIHZvaWQqIGNvbnN0IExvbkdldE52 VmFsdWUoY29uc3QgdW5zaWduZWQgaW5kZXgpOw0KLi5cc2hvcnRzdGFja1xhcGlcU2hvcnRTdGFj a0FwaS5oKDIzMyk6IHdhcm5pbmc6ICAjODE1LUQ6IHR5cGUgcXVhbGlmaWVyIG9uIHJldHVybiB0 eXBlIGlzIG1lYW5pbmdsZXNzDQogIGV4dGVybiBjb25zdCBMb25BcGlFcnJvciBMb25TZW5kUmVz cG9uc2UoY29uc3QgTG9uQ29ycmVsYXRvciBjb3JyZWxhdG9yLA0KLi5cc2hvcnRzdGFja1xhcGlc U2hvcnRTdGFja0FwaS5oKDI2MCk6IHdhcm5pbmc6ICAjODE1LUQ6IHR5cGUgcXVhbGlmaWVyIG9u IHJldHVybiB0eXBlIGlzIG1lYW5pbmdsZXNzDQogIGV4dGVybiBjb25zdCBMb25BcGlFcnJvciBM b25HZXRVbmlxdWVJZChMb25VbmlxdWVJZCogY29uc3QgcElkKTsNCi4uXHNob3J0c3RhY2tcYXBp XFNob3J0U3RhY2tBcGkuaCgyODIpOiB3YXJuaW5nOiAgIzgxNS1EOiB0eXBlIHF1YWxpZmllciBv biByZXR1cm4gdHlwZSBpcyBtZWFuaW5nbGVzcw0KICBleHRlcm4gY29uc3QgTG9uQXBpRXJyb3Ig TG9uR2V0VmVyc2lvbihMb25CeXRlKiBjb25zdCBwVmVyc2lvbik7DQouLlxzaG9ydHN0YWNrXGFw aVxTaG9ydFN0YWNrQXBpLmgoMjk1KTogd2FybmluZzogICM4MTUtRDogdHlwZSBxdWFsaWZpZXIg b24gcmV0dXJuIHR5cGUgaXMgbWVhbmluZ2xlc3MNCiAgZXh0ZXJuIGNvbnN0IExvbkFwaUVycm9y IExvblNlbmRTZXJ2aWNlUGluKHZvaWQpOw0KLi5cc2hvcnRzdGFja1xhcGlcU2hvcnRTdGFja0Fw aS5oKDMwOCk6IHdhcm5pbmc6ICAjODE1LUQ6IHR5cGUgcXVhbGlmaWVyIG9uIHJldHVybiB0eXBl IGlzIG1lYW5pbmdsZXNzDQogIGV4dGVybiBjb25zdCBMb25BcGlFcnJvciBMb25TZW5kUmVzZXQo dm9pZCk7DQouLlxzaG9ydHN0YWNrXGFwaVxTaG9ydFN0YWNrQXBpLmgoMzI2KTogd2FybmluZzog ICM4MTUtRDogdHlwZSBxdWFsaWZpZXIgb24gcmV0dXJuIHR5cGUgaXMgbWVhbmluZ2xlc3MNCiAg ZXh0ZXJuIGNvbnN0IHZvbGF0aWxlIExvblJlc2V0Tm90aWZpY2F0aW9uKiBjb25zdCBMb25HZXRM YXN0UmVzZXROb3RpZmljYXRpb24odm9pZCk7DQouLlxzaG9ydHN0YWNrXGFwaVxTaG9ydFN0YWNr QXBpLmgoMTAzNik6IHdhcm5pbmc6ICAjODE1LUQ6IHR5cGUgcXVhbGlmaWVyIG9uIHJldHVybiB0 eXBlIGlzIG1lYW5pbmdsZXNzDQogIGV4dGVybiBjb25zdCB1bnNpZ25lZCBMb25HZXRDdXJyZW50 TnZTaXplKGNvbnN0IHVuc2lnbmVkIGluZGV4KTsNCi4uXHNob3J0c3RhY2tcYXBpXFNob3J0U3Rh Y2tBcGkuaCgxMDUxKTogd2FybmluZzogICM4MTUtRDogdHlwZSBxdWFsaWZpZXIgb24gcmV0dXJu IHR5cGUgaXMgbWVhbmluZ2xlc3MNCiAgZXh0ZXJuIGNvbnN0IExvbkFwaUVycm9yIExvbk52ZERl c2VyaWFsaXplTnZzKHZvaWQpOw0KLi5cc2hvcnRzdGFja1xhcGlcU2hvcnRTdGFja0FwaS5oKDEw NzApOiB3YXJuaW5nOiAgIzgxNS1EOiB0eXBlIHF1YWxpZmllciBvbiByZXR1cm4gdHlwZSBpcyBt ZWFuaW5nbGVzcw0KICBleHRlcm4gY29uc3QgTG9uQXBpRXJyb3IgTG9uTnZkU2VyaWFsaXplTnZz KHZvaWQpOw0KLi5cc2hvcnRzdGFja1xhcGlcU2hvcnRTdGFja0FwaS5oKDE1NzApOiB3YXJuaW5n OiAgIzgxNS1EOiB0eXBlIHF1YWxpZmllciBvbiByZXR1cm4gdHlwZSBpcyBtZWFuaW5nbGVzcw0K ICBleHRlcm4gY29uc3QgTG9uQXBpRXJyb3IgTG9uUmVzdW1lKCk7DQouLlxzaG9ydHN0YWNrXGFw aVxTaG9ydFN0YWNrQXBpLmgoMTU3MCk6IHdhcm5pbmc6ICAjMTI5NS1EOiBEZXByZWNhdGVkIGRl Y2xhcmF0aW9uIExvblJlc3VtZSAtIGdpdmUgYXJnIHR5cGVzDQogIGV4dGVybiBjb25zdCBMb25B cGlFcnJvciBMb25SZXN1bWUoKTsNCi4uXHNob3J0c3RhY2tcYXBpXFNob3J0U3RhY2tBcGkuaCgx NTg2KTogd2FybmluZzogICM4MTUtRDogdHlwZSBxdWFsaWZpZXIgb24gcmV0dXJuIHR5cGUgaXMg bWVhbmluZ2xlc3MNCiAgZXh0ZXJuIGNvbnN0IExvbkFwaUVycm9yIExvblN1c3BlbmQodW5zaWdu ZWQgbW9kZSwgdW5zaWduZWQgdGltZW91dCk7DQouLlxzaG9ydHN0YWNrXGFwaVxTaG9ydFN0YWNr QXBpLmMoODcpOiB3YXJuaW5nOiAgIzgxNS1EOiB0eXBlIHF1YWxpZmllciBvbiByZXR1cm4gdHlw ZSBpcyBtZWFuaW5nbGVzcw0KICBleHRlcm4gY29uc3QgTG9uQXBpRXJyb3IgVmVyaWZ5TnZJbmRl eChjb25zdCB1bnNpZ25lZCBudkluZGV4KTsNCi4uXHNob3J0c3RhY2tcYXBpXFNob3J0U3RhY2tB cGkuYyg4OSk6IHdhcm5pbmc6ICAjODE1LUQ6IHR5cGUgcXVhbGlmaWVyIG9uIHJldHVybiB0eXBl IGlzIG1lYW5pbmdsZXNzDQogIGV4dGVybiBjb25zdCBMb25OdkRlc2NyaXB0aW9uKiBjb25zdCBM b25HZXROdkRlc2NyaXB0aW9uKGNvbnN0IHVuc2lnbmVkIGluZGV4KTsNCi4uXHNob3J0c3RhY2tc YXBpXFNob3J0U3RhY2tBcGkuYyg5MSk6IHdhcm5pbmc6ICAjODE1LUQ6IHR5cGUgcXVhbGlmaWVy IG9uIHJldHVybiB0eXBlIGlzIG1lYW5pbmdsZXNzDQogIGV4dGVybiBjb25zdCBMb25BcGlFcnJv ciBTZW5kTnYoY29uc3QgTG9uQnl0ZSBudkluZGV4KTsNCi4uXHNob3J0c3RhY2tcYXBpXFNob3J0 U3RhY2tBcGkuYyg5Mik6IHdhcm5pbmc6ICAjODE1LUQ6IHR5cGUgcXVhbGlmaWVyIG9uIHJldHVy biB0eXBlIGlzIG1lYW5pbmdsZXNzDQogIGV4dGVybiBjb25zdCBMb25BcGlFcnJvciBTZW5kTnZQ b2xsUmVzcG9uc2UoY29uc3QgTG9uU21pcE1zZyogcFNtaXBNc2cpOw0KLi5cc2hvcnRzdGFja1xh cGlcU2hvcnRTdGFja0FwaS5jKDkzKTogd2FybmluZzogICM4MTUtRDogdHlwZSBxdWFsaWZpZXIg b24gcmV0dXJuIHR5cGUgaXMgbWVhbmluZ2xlc3MNCiAgZXh0ZXJuIGNvbnN0IExvbkFwaUVycm9y IFNlbmRMb2NhbChjb25zdCBMb25TbWlwQ21kIGNvbW1hbmQsIGNvbnN0IHZvaWQqIGNvbnN0IHBE YXRhLCBjb25zdCBMb25CeXRlIGxlbmd0aCk7DQouLlxzaG9ydHN0YWNrXGFwaVxTaG9ydFN0YWNr QXBpLmMoOTQpOiB3YXJuaW5nOiAgIzgxNS1EOiB0eXBlIHF1YWxpZmllciBvbiByZXR1cm4gdHlw ZSBpcyBtZWFuaW5nbGVzcw0KICBleHRlcm4gY29uc3QgTG9uQXBpRXJyb3IgV3JpdGVOdkxvY2Fs KGNvbnN0IExvbkJ5dGUgaW5kZXgsIGNvbnN0IHZvaWQqIGNvbnN0IHBEYXRhLCBjb25zdCBMb25C eXRlIGxlbmd0aCk7DQouLlxzaG9ydHN0YWNrXGFwaVxTaG9ydFN0YWNrQXBpLmMoMjE5KTogd2Fy bmluZzogICM4MTUtRDogdHlwZSBxdWFsaWZpZXIgb24gcmV0dXJuIHR5cGUgaXMgbWVhbmluZ2xl c3MNCiAgY29uc3QgTG9uQXBpRXJyb3IgTG9uSW5pdChMZHZDdHJsKiBjdHJsKQ0KLi5cc2hvcnRz dGFja1xhcGlcU2hvcnRTdGFja0FwaS5jKDI0Nyk6IHdhcm5pbmc6ICAjODE1LUQ6IHR5cGUgcXVh bGlmaWVyIG9uIHJldHVybiB0eXBlIGlzIG1lYW5pbmdsZXNzDQogIGNvbnN0IExvbkFwaUVycm9y IExvblJlaW5pdCh2b2lkKQ0KLi5cc2hvcnRzdGFja1xhcGlcU2hvcnRTdGFja0FwaS5jKDI3MCk6 IHdhcm5pbmc6ICAjODE1LUQ6IHR5cGUgcXVhbGlmaWVyIG9uIHJldHVybiB0eXBlIGlzIG1lYW5p bmdsZXNzDQogIGNvbnN0IExvbkFwaUVycm9yIExvbkV4aXQodm9pZCkNCi4uXHNob3J0c3RhY2tc YXBpXFNob3J0U3RhY2tBcGkuYyg4OTQpOiB3YXJuaW5nOiAgIzgxNS1EOiB0eXBlIHF1YWxpZmll ciBvbiByZXR1cm4gdHlwZSBpcyBtZWFuaW5nbGVzcw0KICBjb25zdCBMb25BcGlFcnJvciBMb25Q b2xsTnYoY29uc3QgdW5zaWduZWQgbnZJbmRleCkNCi4uXHNob3J0c3RhY2tcYXBpXFNob3J0U3Rh Y2tBcGkuYyg5MzgpOiB3YXJuaW5nOiAgIzgxNS1EOiB0eXBlIHF1YWxpZmllciBvbiByZXR1cm4g dHlwZSBpcyBtZWFuaW5nbGVzcw0KICBjb25zdCBMb25BcGlFcnJvciBMb25Qcm9wYWdhdGVOdihj b25zdCB1bnNpZ25lZCBudkluZGV4KQ0KLi5cc2hvcnRzdGFja1xhcGlcU2hvcnRTdGFja0FwaS5j KDk3MSk6IHdhcm5pbmc6ICAjODE1LUQ6IHR5cGUgcXVhbGlmaWVyIG9uIHJldHVybiB0eXBlIGlz IG1lYW5pbmdsZXNzDQogIGNvbnN0IHVuc2lnbmVkIExvbkdldERlY2xhcmVkTnZTaXplKGNvbnN0 IHVuc2lnbmVkIG52SW5kZXgpDQouLlxzaG9ydHN0YWNrXGFwaVxTaG9ydFN0YWNrQXBpLmMoMTAw MSk6IHdhcm5pbmc6ICAjODE1LUQ6IHR5cGUgcXVhbGlmaWVyIG9uIHJldHVybiB0eXBlIGlzIG1l YW5pbmdsZXNzDQogIHZvbGF0aWxlIHZvaWQqIGNvbnN0IExvbkdldE52VmFsdWUoY29uc3QgdW5z aWduZWQgbnZJbmRleCkNCi4uXHNob3J0c3RhY2tcYXBpXFNob3J0U3RhY2tBcGkuYygxMDMzKTog d2FybmluZzogICM4MTUtRDogdHlwZSBxdWFsaWZpZXIgb24gcmV0dXJuIHR5cGUgaXMgbWVhbmlu Z2xlc3MNCiAgY29uc3QgTG9uQXBpRXJyb3IgTG9uU2VuZFJlc3BvbnNlKA0KLi5cc2hvcnRzdGFj a1xhcGlcU2hvcnRTdGFja0FwaS5jKDExMDIpOiB3YXJuaW5nOiAgIzgxNS1EOiB0eXBlIHF1YWxp ZmllciBvbiByZXR1cm4gdHlwZSBpcyBtZWFuaW5nbGVzcw0KICBjb25zdCBMb25BcGlFcnJvciBM b25HZXRVbmlxdWVJZChMb25VbmlxdWVJZCogY29uc3QgcE5pZCkNCi4uXHNob3J0c3RhY2tcYXBp XFNob3J0U3RhY2tBcGkuYygxMTM0KTogd2FybmluZzogICM4MTUtRDogdHlwZSBxdWFsaWZpZXIg b24gcmV0dXJuIHR5cGUgaXMgbWVhbmluZ2xlc3MNCiAgY29uc3QgTG9uQXBpRXJyb3IgTG9uR2V0 VmVyc2lvbihMb25CeXRlKiBjb25zdCBwVmVyc2lvbikNCi4uXHNob3J0c3RhY2tcYXBpXFNob3J0 U3RhY2tBcGkuYygxMTU3KTogd2FybmluZzogICM4MTUtRDogdHlwZSBxdWFsaWZpZXIgb24gcmV0 dXJuIHR5cGUgaXMgbWVhbmluZ2xlc3MNCiAgY29uc3QgTG9uQXBpRXJyb3IgTG9uU2VuZFNlcnZp Y2VQaW4odm9pZCkNCi4uXHNob3J0c3RhY2tcYXBpXFNob3J0U3RhY2tBcGkuYygxMTczKTogd2Fy bmluZzogICM4MTUtRDogdHlwZSBxdWFsaWZpZXIgb24gcmV0dXJuIHR5cGUgaXMgbWVhbmluZ2xl c3MNCiAgY29uc3QgTG9uQXBpRXJyb3IgTG9uU2VuZFJlc2V0KHZvaWQpDQouLlxzaG9ydHN0YWNr XGFwaVxTaG9ydFN0YWNrQXBpLmMoMTE5NCk6IHdhcm5pbmc6ICAjODE1LUQ6IHR5cGUgcXVhbGlm aWVyIG9uIHJldHVybiB0eXBlIGlzIG1lYW5pbmdsZXNzDQogIGNvbnN0IHZvbGF0aWxlIExvblJl c2V0Tm90aWZpY2F0aW9uKiBjb25zdCBMb25HZXRMYXN0UmVzZXROb3RpZmljYXRpb24odm9pZCkN Ci4uXHNob3J0c3RhY2tcYXBpXFNob3J0U3RhY2tBcGkuYygyNDE1KTogd2FybmluZzogICM4MTUt RDogdHlwZSBxdWFsaWZpZXIgb24gcmV0dXJuIHR5cGUgaXMgbWVhbmluZ2xlc3MNCiAgY29uc3Qg TG9uQXBpRXJyb3IgTG9uUmVzdW1lKCkNCi4uXHNob3J0c3RhY2tcYXBpXFNob3J0U3RhY2tBcGku YygyNDIwKTogd2FybmluZzogICM4MTUtRDogdHlwZSBxdWFsaWZpZXIgb24gcmV0dXJuIHR5cGUg aXMgbWVhbmluZ2xlc3MNCiAgY29uc3QgTG9uQXBpRXJyb3IgTG9uU3VzcGVuZCh1bnNpZ25lZCBt b2RlLCB1bnNpZ25lZCB0aW1lb3V0KQ0KLi5cc2hvcnRzdGFja1xhcGlcU2hvcnRTdGFja0FwaS5j OiA0MCB3YXJuaW5ncywgMCBlcnJvcnMNCmNvbXBpbGluZyBTaG9ydFN0YWNrSW50ZXJuYWwuYy4u Lg0KLi5cc2hvcnRzdGFja1xhcGlcU2hvcnRTdGFja0FwaS5oKDcyKTogd2FybmluZzogICM4MTUt RDogdHlwZSBxdWFsaWZpZXIgb24gcmV0dXJuIHR5cGUgaXMgbWVhbmluZ2xlc3MNCiAgZXh0ZXJu IGNvbnN0IExvbkFwaUVycm9yIExvbkluaXQoTGR2Q3RybCogY3RybCk7DQouLlxzaG9ydHN0YWNr XGFwaVxTaG9ydFN0YWNrQXBpLmgoODcpOiB3YXJuaW5nOiAgIzgxNS1EOiB0eXBlIHF1YWxpZmll ciBvbiByZXR1cm4gdHlwZSBpcyBtZWFuaW5nbGVzcw0KICBleHRlcm4gY29uc3QgTG9uQXBpRXJy b3IgTG9uUmVpbml0KHZvaWQpOw0KLi5cc2hvcnRzdGFja1xhcGlcU2hvcnRTdGFja0FwaS5oKDk1 KTogd2FybmluZzogICM4MTUtRDogdHlwZSBxdWFsaWZpZXIgb24gcmV0dXJuIHR5cGUgaXMgbWVh bmluZ2xlc3MNCiAgZXh0ZXJuIGNvbnN0IExvbkFwaUVycm9yIExvbkV4aXQodm9pZCk7DQouLlxz aG9ydHN0YWNrXGFwaVxTaG9ydFN0YWNrQXBpLmgoMTU5KTogd2FybmluZzogICM4MTUtRDogdHlw ZSBxdWFsaWZpZXIgb24gcmV0dXJuIHR5cGUgaXMgbWVhbmluZ2xlc3MNCiAgZXh0ZXJuIGNvbnN0 IExvbkFwaUVycm9yIExvblBvbGxOdihjb25zdCB1bnNpZ25lZCBpbmRleCk7DQouLlxzaG9ydHN0 YWNrXGFwaVxTaG9ydFN0YWNrQXBpLmgoMTc2KTogd2FybmluZzogICM4MTUtRDogdHlwZSBxdWFs aWZpZXIgb24gcmV0dXJuIHR5cGUgaXMgbWVhbmluZ2xlc3MNCiAgZXh0ZXJuIGNvbnN0IExvbkFw aUVycm9yIExvblByb3BhZ2F0ZU52KGNvbnN0IHVuc2lnbmVkIGluZGV4KTsNCi4uXHNob3J0c3Rh Y2tcYXBpXFNob3J0U3RhY2tBcGkuaCgxOTMpOiB3YXJuaW5nOiAgIzgxNS1EOiB0eXBlIHF1YWxp ZmllciBvbiByZXR1cm4gdHlwZSBpcyBtZWFuaW5nbGVzcw0KICBleHRlcm4gY29uc3QgdW5zaWdu ZWQgTG9uR2V0RGVjbGFyZWROdlNpemUoY29uc3QgdW5zaWduZWQgaW5kZXgpOw0KLi5cc2hvcnRz dGFja1xhcGlcU2hvcnRTdGFja0FwaS5oKDIxMik6IHdhcm5pbmc6ICAjODE1LUQ6IHR5cGUgcXVh bGlmaWVyIG9uIHJldHVybiB0eXBlIGlzIG1lYW5pbmdsZXNzDQogIGV4dGVybiB2b2xhdGlsZSB2 b2lkKiBjb25zdCBMb25HZXROdlZhbHVlKGNvbnN0IHVuc2lnbmVkIGluZGV4KTsNCi4uXHNob3J0 c3RhY2tcYXBpXFNob3J0U3RhY2tBcGkuaCgyMzMpOiB3YXJuaW5nOiAgIzgxNS1EOiB0eXBlIHF1 YWxpZmllciBvbiByZXR1cm4gdHlwZSBpcyBtZWFuaW5nbGVzcw0KICBleHRlcm4gY29uc3QgTG9u QXBpRXJyb3IgTG9uU2VuZFJlc3BvbnNlKGNvbnN0IExvbkNvcnJlbGF0b3IgY29ycmVsYXRvciwN Ci4uXHNob3J0c3RhY2tcYXBpXFNob3J0U3RhY2tBcGkuaCgyNjApOiB3YXJuaW5nOiAgIzgxNS1E OiB0eXBlIHF1YWxpZmllciBvbiByZXR1cm4gdHlwZSBpcyBtZWFuaW5nbGVzcw0KICBleHRlcm4g Y29uc3QgTG9uQXBpRXJyb3IgTG9uR2V0VW5pcXVlSWQoTG9uVW5pcXVlSWQqIGNvbnN0IHBJZCk7 DQouLlxzaG9ydHN0YWNrXGFwaVxTaG9ydFN0YWNrQXBpLmgoMjgyKTogd2FybmluZzogICM4MTUt RDogdHlwZSBxdWFsaWZpZXIgb24gcmV0dXJuIHR5cGUgaXMgbWVhbmluZ2xlc3MNCiAgZXh0ZXJu IGNvbnN0IExvbkFwaUVycm9yIExvbkdldFZlcnNpb24oTG9uQnl0ZSogY29uc3QgcFZlcnNpb24p Ow0KLi5cc2hvcnRzdGFja1xhcGlcU2hvcnRTdGFja0FwaS5oKDI5NSk6IHdhcm5pbmc6ICAjODE1 LUQ6IHR5cGUgcXVhbGlmaWVyIG9uIHJldHVybiB0eXBlIGlzIG1lYW5pbmdsZXNzDQogIGV4dGVy biBjb25zdCBMb25BcGlFcnJvciBMb25TZW5kU2VydmljZVBpbih2b2lkKTsNCi4uXHNob3J0c3Rh Y2tcYXBpXFNob3J0U3RhY2tBcGkuaCgzMDgpOiB3YXJuaW5nOiAgIzgxNS1EOiB0eXBlIHF1YWxp ZmllciBvbiByZXR1cm4gdHlwZSBpcyBtZWFuaW5nbGVzcw0KICBleHRlcm4gY29uc3QgTG9uQXBp RXJyb3IgTG9uU2VuZFJlc2V0KHZvaWQpOw0KLi5cc2hvcnRzdGFja1xhcGlcU2hvcnRTdGFja0Fw aS5oKDMyNik6IHdhcm5pbmc6ICAjODE1LUQ6IHR5cGUgcXVhbGlmaWVyIG9uIHJldHVybiB0eXBl IGlzIG1lYW5pbmdsZXNzDQogIGV4dGVybiBjb25zdCB2b2xhdGlsZSBMb25SZXNldE5vdGlmaWNh dGlvbiogY29uc3QgTG9uR2V0TGFzdFJlc2V0Tm90aWZpY2F0aW9uKHZvaWQpOw0KLi5cc2hvcnRz dGFja1xhcGlcU2hvcnRTdGFja0FwaS5oKDEwMzYpOiB3YXJuaW5nOiAgIzgxNS1EOiB0eXBlIHF1 YWxpZmllciBvbiByZXR1cm4gdHlwZSBpcyBtZWFuaW5nbGVzcw0KICBleHRlcm4gY29uc3QgdW5z aWduZWQgTG9uR2V0Q3VycmVudE52U2l6ZShjb25zdCB1bnNpZ25lZCBpbmRleCk7DQouLlxzaG9y dHN0YWNrXGFwaVxTaG9ydFN0YWNrQXBpLmgoMTA1MSk6IHdhcm5pbmc6ICAjODE1LUQ6IHR5cGUg cXVhbGlmaWVyIG9uIHJldHVybiB0eXBlIGlzIG1lYW5pbmdsZXNzDQogIGV4dGVybiBjb25zdCBM b25BcGlFcnJvciBMb25OdmREZXNlcmlhbGl6ZU52cyh2b2lkKTsNCi4uXHNob3J0c3RhY2tcYXBp XFNob3J0U3RhY2tBcGkuaCgxMDcwKTogd2FybmluZzogICM4MTUtRDogdHlwZSBxdWFsaWZpZXIg b24gcmV0dXJuIHR5cGUgaXMgbWVhbmluZ2xlc3MNCiAgZXh0ZXJuIGNvbnN0IExvbkFwaUVycm9y IExvbk52ZFNlcmlhbGl6ZU52cyh2b2lkKTsNCi4uXHNob3J0c3RhY2tcYXBpXFNob3J0U3RhY2tB cGkuaCgxNTcwKTogd2FybmluZzogICM4MTUtRDogdHlwZSBxdWFsaWZpZXIgb24gcmV0dXJuIHR5 cGUgaXMgbWVhbmluZ2xlc3MNCiAgZXh0ZXJuIGNvbnN0IExvbkFwaUVycm9yIExvblJlc3VtZSgp Ow0KLi5cc2hvcnRzdGFja1xhcGlcU2hvcnRTdGFja0FwaS5oKDE1NzApOiB3YXJuaW5nOiAgIzEy OTUtRDogRGVwcmVjYXRlZCBkZWNsYXJhdGlvbiBMb25SZXN1bWUgLSBnaXZlIGFyZyB0eXBlcw0K ICBleHRlcm4gY29uc3QgTG9uQXBpRXJyb3IgTG9uUmVzdW1lKCk7DQouLlxzaG9ydHN0YWNrXGFw aVxTaG9ydFN0YWNrQXBpLmgoMTU4Nik6IHdhcm5pbmc6ICAjODE1LUQ6IHR5cGUgcXVhbGlmaWVy IG9uIHJldHVybiB0eXBlIGlzIG1lYW5pbmdsZXNzDQogIGV4dGVybiBjb25zdCBMb25BcGlFcnJv ciBMb25TdXNwZW5kKHVuc2lnbmVkIG1vZGUsIHVuc2lnbmVkIHRpbWVvdXQpOw0KLi5cc2hvcnRz dGFja1xhcGlcU2hvcnRTdGFja0ludGVybmFsLmMoMzEpOiB3YXJuaW5nOiAgIzgxNS1EOiB0eXBl IHF1YWxpZmllciBvbiByZXR1cm4gdHlwZSBpcyBtZWFuaW5nbGVzcw0KICBjb25zdCBMb25BcGlF cnJvciBWZXJpZnlOdkluZGV4KGNvbnN0IHVuc2lnbmVkIGluZGV4KTsNCi4uXHNob3J0c3RhY2tc YXBpXFNob3J0U3RhY2tJbnRlcm5hbC5jKDMzKTogd2FybmluZzogICM4MTUtRDogdHlwZSBxdWFs aWZpZXIgb24gcmV0dXJuIHR5cGUgaXMgbWVhbmluZ2xlc3MNCiAgY29uc3QgTG9uTnZEZXNjcmlw dGlvbiogY29uc3QgTG9uR2V0TnZEZXNjcmlwdGlvbihjb25zdCB1bnNpZ25lZCBpbmRleCk7DQou LlxzaG9ydHN0YWNrXGFwaVxTaG9ydFN0YWNrSW50ZXJuYWwuYygzNSk6IHdhcm5pbmc6ICAjODE1 LUQ6IHR5cGUgcXVhbGlmaWVyIG9uIHJldHVybiB0eXBlIGlzIG1lYW5pbmdsZXNzDQogIGNvbnN0 IExvbkFwaUVycm9yIFNlbmROdihjb25zdCBMb25CeXRlIG52SW5kZXgpOw0KLi5cc2hvcnRzdGFj a1xhcGlcU2hvcnRTdGFja0ludGVybmFsLmMoMzYpOiB3YXJuaW5nOiAgIzgxNS1EOiB0eXBlIHF1 YWxpZmllciBvbiByZXR1cm4gdHlwZSBpcyBtZWFuaW5nbGVzcw0KICBjb25zdCBMb25BcGlFcnJv ciBTZW5kTnZQb2xsUmVzcG9uc2UoY29uc3QgTG9uU21pcE1zZyogcFNtaXBNc2cpOw0KLi5cc2hv cnRzdGFja1xhcGlcU2hvcnRTdGFja0ludGVybmFsLmMoMzcpOiB3YXJuaW5nOiAgIzgxNS1EOiB0 eXBlIHF1YWxpZmllciBvbiByZXR1cm4gdHlwZSBpcyBtZWFuaW5nbGVzcw0KICBjb25zdCBMb25B cGlFcnJvciBTZW5kTG9jYWwoY29uc3QgTG9uU21pcENtZCBjb21tYW5kLCBjb25zdCB2b2lkKiBj b25zdCBwRGF0YSwgY29uc3QgTG9uQnl0ZSBsZW5ndGgpOw0KLi5cc2hvcnRzdGFja1xhcGlcU2hv cnRTdGFja0ludGVybmFsLmMoMzgpOiB3YXJuaW5nOiAgIzgxNS1EOiB0eXBlIHF1YWxpZmllciBv biByZXR1cm4gdHlwZSBpcyBtZWFuaW5nbGVzcw0KICBjb25zdCBMb25BcGlFcnJvciBXcml0ZU52 TG9jYWwoY29uc3QgTG9uQnl0ZSBpbmRleCwgY29uc3Qgdm9pZCogY29uc3QgcERhdGEsIGNvbnN0 IExvbkJ5dGUgbGVuZ3RoKTsNCi4uXHNob3J0c3RhY2tcYXBpXFNob3J0U3RhY2tJbnRlcm5hbC5j KDUyKTogd2FybmluZzogICM4MTUtRDogdHlwZSBxdWFsaWZpZXIgb24gcmV0dXJuIHR5cGUgaXMg bWVhbmluZ2xlc3MNCiAgY29uc3QgTG9uQXBpRXJyb3IgVmVyaWZ5TnZJbmRleChjb25zdCB1bnNp Z25lZCBudkluZGV4KQ0KLi5cc2hvcnRzdGFja1xhcGlcU2hvcnRTdGFja0ludGVybmFsLmMoMTEx KTogd2FybmluZzogICM4MTUtRDogdHlwZSBxdWFsaWZpZXIgb24gcmV0dXJuIHR5cGUgaXMgbWVh bmluZ2xlc3MNCiAgY29uc3QgTG9uQXBpRXJyb3IgU2VuZE52KGNvbnN0IExvbkJ5dGUgbnZJbmRl eCkNCi4uXHNob3J0c3RhY2tcYXBpXFNob3J0U3RhY2tJbnRlcm5hbC5jKDE1OCk6IHdhcm5pbmc6 ICAjODE1LUQ6IHR5cGUgcXVhbGlmaWVyIG9uIHJldHVybiB0eXBlIGlzIG1lYW5pbmdsZXNzDQog IGNvbnN0IExvbkFwaUVycm9yIFNlbmROdlBvbGxSZXNwb25zZShjb25zdCBMb25TbWlwTXNnKiBw U21pcE1zZykNCi4uXHNob3J0c3RhY2tcYXBpXFNob3J0U3RhY2tJbnRlcm5hbC5jKDE3Mik6IHdh cm5pbmc6ICAjMTkxLUQ6IHR5cGUgcXVhbGlmaWVyIGlzIG1lYW5pbmdsZXNzIG9uIGNhc3QgdHlw ZQ0KICAgICAgICAgICAgICBMb25Odk1lc3NhZ2UqIGNvbnN0IHBOdlJlc3BvbnNlID0gKExvbk52 TWVzc2FnZSAqIGNvbnN0KXBTbWlwUmVzcG9uc2UtPlBheWxvYWQ7DQouLlxzaG9ydHN0YWNrXGFw aVxTaG9ydFN0YWNrSW50ZXJuYWwuYygyMjQpOiB3YXJuaW5nOiAgIzgxNS1EOiB0eXBlIHF1YWxp ZmllciBvbiByZXR1cm4gdHlwZSBpcyBtZWFuaW5nbGVzcw0KICBjb25zdCBMb25BcGlFcnJvciBT ZW5kTG9jYWwoY29uc3QgTG9uU21pcENtZCBjb21tYW5kLCBjb25zdCB2b2lkKiBjb25zdCBwRGF0 YSwgY29uc3QgTG9uQnl0ZSBsZW5ndGgpDQouLlxzaG9ydHN0YWNrXGFwaVxTaG9ydFN0YWNrSW50 ZXJuYWwuYygyNTYpOiB3YXJuaW5nOiAgIzgxNS1EOiB0eXBlIHF1YWxpZmllciBvbiByZXR1cm4g dHlwZSBpcyBtZWFuaW5nbGVzcw0KICBjb25zdCBMb25BcGlFcnJvciBXcml0ZU52TG9jYWwoY29u c3QgTG9uQnl0ZSBpbmRleCwgY29uc3Qgdm9pZCogY29uc3QgcERhdGEsIGNvbnN0IExvbkJ5dGUg bGVuZ3RoKQ0KLi5cc2hvcnRzdGFja1xhcGlcU2hvcnRTdGFja0ludGVybmFsLmMoMzY1KTogd2Fy bmluZzogICM4MTUtRDogdHlwZSBxdWFsaWZpZXIgb24gcmV0dXJuIHR5cGUgaXMgbWVhbmluZ2xl c3MNCiAgY29uc3QgTG9uTnZEZXNjcmlwdGlvbiogY29uc3QgTG9uR2V0TnZEZXNjcmlwdGlvbihj b25zdCB1bnNpZ25lZCBpbmRleCkNCi4uXHNob3J0c3RhY2tcYXBpXFNob3J0U3RhY2tJbnRlcm5h bC5jKDM2OCk6IHdhcm5pbmc6ICAjMTkxLUQ6IHR5cGUgcXVhbGlmaWVyIGlzIG1lYW5pbmdsZXNz IG9uIGNhc3QgdHlwZQ0KICAgICAgCQkoY29uc3QgTG9uTnZEZXNjcmlwdGlvbiogY29uc3QpTG9u R2V0TnZUYWJsZSgpOw0KLi5cc2hvcnRzdGFja1xhcGlcU2hvcnRTdGFja0ludGVybmFsLmM6IDMz IHdhcm5pbmdzLCAwIGVycm9ycw0KIi5cT2JqZWN0c1xDb252ZXJzb3JMb24uYXhmIiAtIDMgRXJy b3IocyksIDEyNSBXYXJuaW5nKHMpLg0KVGFyZ2V0IG5vdCBjcmVhdGVkLg0KQnVpbGQgVGltZSBF bGFwc2VkOiAgMDA6MDA6MDM= --_004_BN6PR22MB0019E203C9C202F2ABA56A7D91089BN6PR22MB0019namp_--