From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from APC01-SG2-obe.outbound.protection.outlook.com (mail-sgaapc01on2093.outbound.protection.outlook.com [40.107.215.93]) by sourceware.org (Postfix) with ESMTPS id 475B83854153 for ; Wed, 9 Aug 2023 20:04:47 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 475B83854153 Authentication-Results: sourceware.org; dmarc=pass (p=quarantine dis=none) header.from=espressif.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=espressif.com ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=SmzYGo/b83VFsQXB+OpuQb0nmqNylVoxOJCiiGTDwkKVTprTFcLSoiJI1RlOl9UgtfCa8uYQSsSN6vfWKheDkndefwKuPXub72kjJvG7tp38ILCNovfArqTsuWKGjhjroc0oFOrTlZRWjEkPxXVw3wh1cwzE51IpS3/OaNh/dSYw0sJCMZEF78PsDpVr9wBhkTDNAjAFNx2Dr2l1uk8sJDd6Z6yu/RJOq8xgUa4dleYsGTHNIs6k+0/dvCu885ZYWbxlGG2/5I4/TOQ+ICJvrTBVhVpyI5asxKbnOtNCMpDqnU0KEM0bbIpJnfuB+xDlSCENeZ/6CoLDHkNOkt+ckA== 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=mMmYij0P5TMlGvx2BFSTSNWR+urAWxNANvf79H3gkAo=; b=WqvXH4eeDk/zeTe0rbDJMuvTz1E4brJUoV1g/Fje4CIeTS6toatp/uC1JApk27+Y7vUbbMmOjKsBhqqKzYu+CeUlcFEJryoh5AQQMZRBiSOo5BShvMOWYibvvE4VPLDotNs/eqkbPoKK9aZhSsWjAvrOy51W38zZj+JVssit+HzmEhl48rjia5jzwMnaw4bbBoTlJoQOWopklOkSFEc8EhSUW7IayJILbQEAjw4XCR8n/HTb8mxEooIJwle30yroISSoiBzPD9HuC7RPOOkHKU/Ro9DpSepdKm3eWp+90nBe171f+Pjcg3eLv3bgvxI7apef9sOYWxM+UhU2RSzKxw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=espressif.com; dmarc=pass action=none header.from=espressif.com; dkim=pass header.d=espressif.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=espressifsystems.onmicrosoft.com; s=selector1-espressifsystems-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=mMmYij0P5TMlGvx2BFSTSNWR+urAWxNANvf79H3gkAo=; b=iM00T99UJTgvfvHuC+5276S8P7LcqptHwh1NinyxdaoQPDUUjOl7mTKI5Q68Fl4j9ABAMojlmor4Frwvo+xz0IecNusuYUXXi7+JUuA9XWbOZ+e0vkCqTTPOZg+VGf36E8njgVBTfXZs3pOukxhIK4YaaLxkXIrLVipTnR06ccg= Received: from TYZPR04MB5736.apcprd04.prod.outlook.com (2603:1096:400:1fa::7) by SEYPR04MB7382.apcprd04.prod.outlook.com (2603:1096:101:1a6::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6652.28; Wed, 9 Aug 2023 20:04:20 +0000 Received: from TYZPR04MB5736.apcprd04.prod.outlook.com ([fe80::cb3d:7677:ae5b:c6a9]) by TYZPR04MB5736.apcprd04.prod.outlook.com ([fe80::cb3d:7677:ae5b:c6a9%5]) with mapi id 15.20.6652.026; Wed, 9 Aug 2023 20:04:20 +0000 From: Alexey Lapshin To: "newlib@sourceware.org" CC: Alexey Gerenkov , "jcmvbkbc@gmail.com" , Ivan Grokhotkov Subject: [PATCH, RFC v3 3/3] libgloss: add Xtensa port Thread-Topic: [PATCH, RFC v3 3/3] libgloss: add Xtensa port Thread-Index: AQHZyvyvjyah7TE380CjUkQgCfB0hw== Date: Wed, 9 Aug 2023 20:04:20 +0000 Message-ID: <271e6383bfed069d19ca980b7572d0e7f3ce3c02.camel@espressif.com> References: <1cb9e9f8c8e4e1df52b439184333d628b3532f65.camel@espressif.com> <15cedffa7c98bea187abe6041c7542db03dbe834.camel@espressif.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=espressif.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: TYZPR04MB5736:EE_|SEYPR04MB7382:EE_ x-ms-office365-filtering-correlation-id: 99a1a614-0fca-4897-bcf9-08db9913d19e x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: r7VymDAX3zLHNwmPlZKo/m/mWTqpPSg7IaxvcNV3lcT+aw7/k9s0oEoj1q2crBEhun20De3uXO8DJQLol6RnQUqyL/4C2J28CJbXkIGWb2SCXu9JdzhDRwxQ8yUtD6lT5FGFRZIkv7wnODaW4MFGxJOQJnOsiZafItKfr7jdau1ciWNLkKqHt2BzKYi96/n5mfGfWSfNRTrhh6ZqfS/HBZDnvtvSw6l38koWTeCqUdGaIpCgg8euAeCv+a/B916vBCOO7calj92l0MG7KrVc0RhRLqnpsc66UZcwt2oDouiJj7fW/tSl4aNkaL9gdR52SbwaJdyugPT7fxwk+bD6bDpUDP4Xi47aZhzRUl4k2Cw0YLhy+W/l8EDxk/rdp+rk6LFPIiSiHwuXT2ojDV9RTgxBHNxQ8yYNluNt2oIJsnMgOYe6hATyvx0TgUL38daVc7+bM/Y1o4++C9mZUpUvhK8lhsYKo/I67B5kLHKRGkhdR1CeD612308JdKnOpL3CXY0K1wrvhrbU94ampp30EllTzRzkZKNSlPr7SZQSO2Y67mclya3BOZOsw22/SEWO7nkevdftJGmBBVtvowujBvjiFB/1QJCx4dzu5IL4c9kHa3UbIGdQsWgzYY1ZvadG x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:TYZPR04MB5736.apcprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(136003)(396003)(366004)(39850400004)(376002)(346002)(1800799006)(186006)(451199021)(8676002)(478600001)(8936002)(4326008)(64756008)(36756003)(66476007)(6916009)(91956017)(66556008)(66446008)(86362001)(66946007)(76116006)(5660300002)(66899021)(44832011)(41300700001)(316002)(30864003)(54906003)(2906002)(38070700005)(122000001)(71200400001)(6486002)(6512007)(966005)(2616005)(83380400001)(107886003)(26005)(38100700002)(6506007)(579004)(559001)(460985005);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?eXlmU3htaXBTb1VtRitTRUNPWDRtZXgxR2F0enhpT3NBY3RRZ1czTldVajYr?= =?utf-8?B?WTgzRXhITm5SeG41YmdWdTJsVWZSNFFoSGlSK1NGcVBFci9MRkdHdlhYNUls?= =?utf-8?B?eXQreS9zNVcvNHp3eGFMbFV2L2hFWkFUT3RQbTlxc2xiTWM1eHFSbkxuMHI5?= =?utf-8?B?Z2xRK2dWUytOSC9ubkE1aG5RSWlzMzBaY1B5MCtkcklyVW16czkwRUFqRHJu?= =?utf-8?B?c3hvVDN3VWZzNHpsY3VzV2syd0N2elRQMTU5eGVFdC9LWElQQldGMjgvVXVC?= =?utf-8?B?SUdTKytkTWNFdXZsMXdaa2hpVmE2YlJLMzRDTmUwanlVdWFMbnBTamdleDdE?= =?utf-8?B?OHdmcmhkakV4L1NMWEU2MTUyVit5Y1BjeXczdmtuSnd4SmQ4MTVmM0ZUSy9K?= =?utf-8?B?UmlFWm01Rm1WZnBLTkpsZVNmU3JMaDJ0M3BVVXN1cldTMHMvN0U3RWxpR0o4?= =?utf-8?B?cU1Hb3VmL1hwK0U2UEpGOWpQUlZxa01ldVFNaCtVWFkrOUNkV0ZPQ2JNRTVB?= =?utf-8?B?Y3FJcWNMeWd1VzdsNDdiNkQvcUFvc204cHBPZUY0Tjh0N24yejBCcWMzQkZt?= =?utf-8?B?ZDRMSDFSemlWeDE1Z2U4UEsxQy82N2tTSGNpRm5BWFVCSTZqYXM5eERyN0sr?= =?utf-8?B?b1UvMkg0S1dPYzJoaGZDVmZ5Y0VzSGxRMUNnMWRWSFlpdTc2RkZtZzFmckUr?= =?utf-8?B?b3krQXlFQ1FlYTFiWTMyWmNPYWNQdFFKd3ZzRkhrSHdNanZNMjVJYW1LOStX?= =?utf-8?B?N3RCZ0pFSUtwM1ZNQ2NRSCtXd3ovUG1PRkV1dG85bmgySmYxTm4velF6bUU3?= =?utf-8?B?Tk9NSCtqU2pyT2d5UHZmMCtEMy9lOSsyRzJQb3dqZ2t4R3QxZmhPdVV4Qjlv?= =?utf-8?B?VFhIeXJzclEyYnRRUkJGampLMUl5OElRTStmenpnV3pPVktGSFhoSnlHUzJR?= =?utf-8?B?WVgzd092YlpVeGNBN2hqY0NBY0x2LzZrMDhTcC9uWXhlZjdVdzZtNnNrTlk1?= =?utf-8?B?Um1YVm9GcG1PZUp1KzYrT1FkcTZDc1hLeTkyQnpaeGZuL2oxMVE0K2w3STk4?= =?utf-8?B?VXdsci8rVUloRHBiRGhqQXFGY1F1WmRHZkd6U1FpRjVwTjV5SlFSQ3hZTmQr?= =?utf-8?B?djY2blNYRXBXNVhCalhkajd2aSs4a2VZQTVtVkQyZTk4REdKS01JNTFCcE9U?= =?utf-8?B?YUJBbmJjL2U0SUtIQUsrSnJ6LzJZakZZOVBoS1dsczV5TDVudXpTQThIYWNI?= =?utf-8?B?OWlxV3RlYVpRM3A5cTVMR0tQSGtBVXk3b2oxWGJoZ0FjMHNJamUzSitRSkdt?= =?utf-8?B?bnV6bUxrUDlQd1NOVHc1WDluaEVaRFl4Vk84QVV1YmVLK1B3Y3hYV3RlWVds?= =?utf-8?B?Z1kyYWtvTjkwclBjRU5uYVlFTDIyTTZSc0Qxd0VhTkh2d2RDanlTc0VHeG1I?= =?utf-8?B?aGtWLytuSExPOS9mME5PQmc0QkxoYXhRYmZmN2M5RzhUNnQxRzVZWDJubHRM?= =?utf-8?B?eUdYcmNRS1hLMk1oWUl3QjM4UVd6RXIxa0NoRG85MUV0ZlVzNDFuWk5Sd1Js?= =?utf-8?B?MXorcStNclhTd2sxc1J5Z1gxeVoyeUF4cGN5bERYaEI5OTNYS2pLQjlGcHpV?= =?utf-8?B?c1NQODZSbXltN3hFblhwWWxyWm1EbjM2T1JQakNpK3JHU0pSMzN2YjVwRjZt?= =?utf-8?B?NmlncEFoenBDdE9Fa1lYSDd6TTFIcVczU1NxakdkSGlhazBraytsei81V0lZ?= =?utf-8?B?KzNhT0gxZVZvM3lyeWJQVGQ2dGpqN0JHRUcvWXQrcUVRK09xMk4wZW9JTW1C?= =?utf-8?B?a0U5N0d1ZTB1eFk3c1Q0dXF2N25DNzMyR1NleXhzMFM1LzQzSGJsdkYzeFJo?= =?utf-8?B?RzJ2d0R4ZExnY0V1Tis5M1lvVXZJdCs3T3RQUTZWQjU1Z2J3M0Z2dklQQWVV?= =?utf-8?B?Mm95cWFScDRLQ2M1a2FuL29MRVpWbkR1eXV2azc4YmlQS1I0bHlpQ1lCeS8r?= =?utf-8?B?Rnk0K1hUQXhWRTMxVEN0cmcwSzhhNVZFUk1zQ3M0NGdNdUhCM0l4Z3p2Tldo?= =?utf-8?B?Syt4NUJndEI0akgwV3dkSVBRdkJZa1dMSmorOEZ3bzZFSnBCTkY4K1FHSEwv?= =?utf-8?B?TXY5SDRPNC9LenNpM0d0Q1BHUzFkU2QyNHFKS0JSYUVTRC9GY08wVVVmUzYr?= =?utf-8?Q?uN4qQVO2KzLcTl4rTMKgj+c=3D?= Content-Type: text/plain; charset="utf-8" Content-ID: <306A18857221F04EB387FC274BEF30EB@apcprd04.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: espressif.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: TYZPR04MB5736.apcprd04.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 99a1a614-0fca-4897-bcf9-08db9913d19e X-MS-Exchange-CrossTenant-originalarrivaltime: 09 Aug 2023 20:04:20.3262 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 5faf27fd-3557-4294-9545-8ea74a409f39 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: 6NDLzmWreUGUg3xkOYaRxkVEidDIrzy5U+5pI7TNaFHYgSlJO/YR1em2LdueNkbBZL1ShRAl856UTgnSw8gUYVIIcPcPYg+iIwxONOnisbE= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SEYPR04MB7382 X-Spam-Status: No, score=-11.8 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,GIT_PATCH_0,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS,SPF_PASS,TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: U3VwcG9ydGVkIGVzcDMyIGFuZCBlc3AzMnMyIGJvYXJkczoNCmh0dHBzOi8vZ2l0aHViLmNvbS9l c3ByZXNzaWYvZXNwLXRvb2xjaGFpbi1kb2NzL2Jsb2IvbWFpbi9nY2MvYnVpbGQtYW5kLXJ1bi1u YXRpdmUtYXBwLm1kDQoNCi0tLQ0KIGxpYmdsb3NzL01ha2VmaWxlLmFtICAgICAgICAgICAgICAg ICAgICAgICAgICB8ICAgMyArDQogbGliZ2xvc3MvTWFrZWZpbGUuaW4gICAgICAgICAgICAgICAg ICAgICAgICAgIHwgMjkyICsrKysrKysrKysrKysrKysrLQ0KIGxpYmdsb3NzL2NvbmZpZ3VyZSAg ICAgICAgICAgICAgICAgICAgICAgICAgICB8ICA2NCArKysrDQogbGliZ2xvc3MvY29uZmlndXJl LmFjICAgICAgICAgICAgICAgICAgICAgICAgIHwgICA2ICstDQogbGliZ2xvc3MvbGlibm9zeXMv YWNpbmNsdWRlLm00ICAgICAgICAgICAgICAgIHwgICAxICsNCiBsaWJnbG9zcy94dGVuc2EvTWFr ZWZpbGUuaW5jICAgICAgICAgICAgICAgICAgfCAgNTUgKysrKw0KIGxpYmdsb3NzL3h0ZW5zYS9h Y2luY2x1ZGUubTQgICAgICAgICAgICAgICAgICB8ICAgNSArDQogbGliZ2xvc3MveHRlbnNhL2Fw cC5lbGYubGQgICAgICAgICAgICAgICAgICAgIHwgMTkwICsrKysrKysrKysrKw0KIGxpYmdsb3Nz L3h0ZW5zYS9ib2FyZC5lbGYuc3BlY3MgICAgICAgICAgICAgICB8ICAgNSArDQogbGliZ2xvc3Mv eHRlbnNhL2JvYXJkcy9lc3AzMi9ib2FyZC5jICAgICAgICAgIHwgIDE5ICsrDQogLi4uL3h0ZW5z YS9ib2FyZHMvZXNwMzIvaW5jbHVkZS9zb2MvY3B1LmggICAgIHwgIDExICsNCiAuLi4veHRlbnNh L2JvYXJkcy9lc3AzMi9pbmNsdWRlL3NvYy91YXJ0LmggICAgfCAgMTkgKysNCiBsaWJnbG9zcy94 dGVuc2EvYm9hcmRzL2VzcDMyL21lbW9yeS5lbGYubGQgICAgfCAgMjYgKysNCiBsaWJnbG9zcy94 dGVuc2EvYm9hcmRzL2VzcDMyczMvYm9hcmQuYyAgICAgICAgfCAgMTkgKysNCiAuLi4veHRlbnNh L2JvYXJkcy9lc3AzMnMzL2luY2x1ZGUvc29jL2NwdS5oICAgfCAgMTEgKw0KIC4uLi94dGVuc2Ev Ym9hcmRzL2VzcDMyczMvaW5jbHVkZS9zb2MvdWFydC5oICB8ICAxOSArKw0KIGxpYmdsb3NzL3h0 ZW5zYS9ib2FyZHMvZXNwMzJzMy9tZW1vcnkuZWxmLmxkICB8ICAyMSArKw0KIGxpYmdsb3NzL3h0 ZW5zYS9jcnQwLlMgICAgICAgICAgICAgICAgICAgICAgICB8ICAxNCArDQogbGliZ2xvc3MveHRl bnNhL2NydDEtYm9hcmRzLlMgICAgICAgICAgICAgICAgIHwgMjI2ICsrKysrKysrKysrKysrDQog bGliZ2xvc3MveHRlbnNhL2NydDEtc2ltLlMgICAgICAgICAgICAgICAgICAgIHwgMjA0ICsrKysr KysrKysrKw0KIGxpYmdsb3NzL3h0ZW5zYS9kZWZhdWx0LnNwZWNzICAgICAgICAgICAgICAgICB8 ICAgMiArDQogbGliZ2xvc3MveHRlbnNhL2luY2x1ZGUvcmVnaXN0ZXJfYWNjZXNzLmggICAgIHwg ICA3ICsNCiBsaWJnbG9zcy94dGVuc2EvaW5jbHVkZS9zeXNjYWxscy5oICAgICAgICAgICAgfCAg NTkgKysrKw0KIGxpYmdsb3NzL3h0ZW5zYS9pbmNsdWRlL3h0ZW5zYS9jb3JlYml0cy5oICAgICB8 IDE4NiArKysrKysrKysrKw0KIGxpYmdsb3NzL3h0ZW5zYS9uYW5vLnNwZWNzICAgICAgICAgICAg ICAgICAgICB8ICAxOCArKw0KIGxpYmdsb3NzL3h0ZW5zYS9zaW0tY2FsbC5TICAgICAgICAgICAg ICAgICAgICB8ICAgOCArDQogbGliZ2xvc3MveHRlbnNhL3NpbS12ZWN0b3JzLlMgICAgICAgICAg ICAgICAgIHwgMTYzICsrKysrKysrKysNCiBsaWJnbG9zcy94dGVuc2Evc2ltLmVsZi5zcGVjcyAg ICAgICAgICAgICAgICAgfCAgIDUgKw0KIGxpYmdsb3NzL3h0ZW5zYS9zbGVlcC5TICAgICAgICAg ICAgICAgICAgICAgICB8ICA2NCArKysrDQogbGliZ2xvc3MveHRlbnNhL3N5cy5vcGVub2NkLnNw ZWNzICAgICAgICAgICAgIHwgICA4ICsNCiBsaWJnbG9zcy94dGVuc2Evc3lzLnFlbXUuc3BlY3Mg ICAgICAgICAgICAgICAgfCAgIDggKw0KIGxpYmdsb3NzL3h0ZW5zYS9zeXNjYWxscy5jICAgICAg ICAgICAgICAgICAgICB8IDIxMCArKysrKysrKysrKysrDQogbGliZ2xvc3MveHRlbnNhL3dpbmRv dy12ZWN0b3JzLlMgICAgICAgICAgICAgIHwgMjUyICsrKysrKysrKysrKysrKw0KIDMzIGZpbGVz IGNoYW5nZWQsIDIxOTAgaW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25zKC0pDQogY3JlYXRlIG1v ZGUgMTAwNjQ0IGxpYmdsb3NzL3h0ZW5zYS9NYWtlZmlsZS5pbmMNCiBjcmVhdGUgbW9kZSAxMDA2 NDQgbGliZ2xvc3MveHRlbnNhL2FjaW5jbHVkZS5tNA0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBsaWJn bG9zcy94dGVuc2EvYXBwLmVsZi5sZA0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBsaWJnbG9zcy94dGVu c2EvYm9hcmQuZWxmLnNwZWNzDQogY3JlYXRlIG1vZGUgMTAwNjQ0IGxpYmdsb3NzL3h0ZW5zYS9i b2FyZHMvZXNwMzIvYm9hcmQuYw0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBsaWJnbG9zcy94dGVuc2Ev Ym9hcmRzL2VzcDMyL2luY2x1ZGUvc29jL2NwdS5oDQogY3JlYXRlIG1vZGUgMTAwNjQ0IGxpYmds b3NzL3h0ZW5zYS9ib2FyZHMvZXNwMzIvaW5jbHVkZS9zb2MvdWFydC5oDQogY3JlYXRlIG1vZGUg MTAwNjQ0IGxpYmdsb3NzL3h0ZW5zYS9ib2FyZHMvZXNwMzIvbWVtb3J5LmVsZi5sZA0KIGNyZWF0 ZSBtb2RlIDEwMDY0NCBsaWJnbG9zcy94dGVuc2EvYm9hcmRzL2VzcDMyczMvYm9hcmQuYw0KIGNy ZWF0ZSBtb2RlIDEwMDY0NCBsaWJnbG9zcy94dGVuc2EvYm9hcmRzL2VzcDMyczMvaW5jbHVkZS9z b2MvY3B1LmgNCiBjcmVhdGUgbW9kZSAxMDA2NDQgbGliZ2xvc3MveHRlbnNhL2JvYXJkcy9lc3Az MnMzL2luY2x1ZGUvc29jL3VhcnQuaA0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBsaWJnbG9zcy94dGVu c2EvYm9hcmRzL2VzcDMyczMvbWVtb3J5LmVsZi5sZA0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBsaWJn bG9zcy94dGVuc2EvY3J0MC5TDQogY3JlYXRlIG1vZGUgMTAwNjQ0IGxpYmdsb3NzL3h0ZW5zYS9j cnQxLWJvYXJkcy5TDQogY3JlYXRlIG1vZGUgMTAwNjQ0IGxpYmdsb3NzL3h0ZW5zYS9jcnQxLXNp bS5TDQogY3JlYXRlIG1vZGUgMTAwNjQ0IGxpYmdsb3NzL3h0ZW5zYS9kZWZhdWx0LnNwZWNzDQog Y3JlYXRlIG1vZGUgMTAwNjQ0IGxpYmdsb3NzL3h0ZW5zYS9pbmNsdWRlL3JlZ2lzdGVyX2FjY2Vz cy5oDQogY3JlYXRlIG1vZGUgMTAwNjQ0IGxpYmdsb3NzL3h0ZW5zYS9pbmNsdWRlL3N5c2NhbGxz LmgNCiBjcmVhdGUgbW9kZSAxMDA2NDQgbGliZ2xvc3MveHRlbnNhL2luY2x1ZGUveHRlbnNhL2Nv cmViaXRzLmgNCiBjcmVhdGUgbW9kZSAxMDA2NDQgbGliZ2xvc3MveHRlbnNhL25hbm8uc3BlY3MN CiBjcmVhdGUgbW9kZSAxMDA2NDQgbGliZ2xvc3MveHRlbnNhL3NpbS1jYWxsLlMNCiBjcmVhdGUg bW9kZSAxMDA2NDQgbGliZ2xvc3MveHRlbnNhL3NpbS12ZWN0b3JzLlMNCiBjcmVhdGUgbW9kZSAx MDA2NDQgbGliZ2xvc3MveHRlbnNhL3NpbS5lbGYuc3BlY3MNCiBjcmVhdGUgbW9kZSAxMDA2NDQg bGliZ2xvc3MveHRlbnNhL3NsZWVwLlMNCiBjcmVhdGUgbW9kZSAxMDA2NDQgbGliZ2xvc3MveHRl bnNhL3N5cy5vcGVub2NkLnNwZWNzDQogY3JlYXRlIG1vZGUgMTAwNjQ0IGxpYmdsb3NzL3h0ZW5z YS9zeXMucWVtdS5zcGVjcw0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBsaWJnbG9zcy94dGVuc2Evc3lz Y2FsbHMuYw0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBsaWJnbG9zcy94dGVuc2Evd2luZG93LXZlY3Rv cnMuUw0KDQpkaWZmIC0tZ2l0IGEvbGliZ2xvc3MvTWFrZWZpbGUuYW0gYi9saWJnbG9zcy9NYWtl ZmlsZS5hbQ0KaW5kZXggZDRiN2Q0MDc3Li5mNDQwYWQyM2EgMTAwNjQ0DQotLS0gYS9saWJnbG9z cy9NYWtlZmlsZS5hbQ0KKysrIGIvbGliZ2xvc3MvTWFrZWZpbGUuYW0NCkBAIC0xMDMsMyArMTAz LDYgQEAgZW5kaWYNCiBpZiBDT05GSUdfV0lOQ0UNCiBpbmNsdWRlIHdpbmNlL01ha2VmaWxlLmlu Yw0KIGVuZGlmDQoraWYgQ09ORklHX1hURU5TQQ0KK2luY2x1ZGUgeHRlbnNhL01ha2VmaWxlLmlu Yw0KK2VuZGlmDQpkaWZmIC0tZ2l0IGEvbGliZ2xvc3MvTWFrZWZpbGUuaW4gYi9saWJnbG9zcy9N YWtlZmlsZS5pbg0KaW5kZXggN2Y0NjM3NWMwLi5lMjBmMWViOTAgMTAwNjQ0DQotLS0gYS9saWJn bG9zcy9NYWtlZmlsZS5pbg0KKysrIGIvbGliZ2xvc3MvTWFrZWZpbGUuaW4NCkBAIC0xOTAsNiAr MTkwLDMyIEBAIGNoZWNrX1BST0dSQU1TID0gJChhbV9fRVhFRVhUXzIpICQoYW1fX0VYRUVYVF8z KQ0KIEBDT05GSUdfUklTQ1ZfVFJVRUAJcmlzY3YvbGlic2VtaWhvc3QuYQ0KIEBDT05GSUdfV0lO Q0VfVFJVRUBhbV9fYXBwZW5kXzM2ID0gJChnZGJkaXIpDQogQENPTkZJR19XSU5DRV9UUlVFQGFt X19hcHBlbmRfMzcgPSB3aW5jZS9zdHViLmV4ZQ0KK0BDT05GSUdfWFRFTlNBX1RSVUVAYW1fX2Fw cGVuZF8zOCA9IC1EX0xJQkdMT1NTIC1JJChzcmNkaXIpL3h0ZW5zYS9pbmNsdWRlDQorQENPTkZJ R19YVEVOU0FfVFJVRUBhbV9fYXBwZW5kXzM5ID0gXA0KK0BDT05GSUdfWFRFTlNBX1RSVUVACXh0 ZW5zYS9kZWZhdWx0LnNwZWNzIFwNCitAQ09ORklHX1hURU5TQV9UUlVFQAl4dGVuc2EvbmFuby5z cGVjcyBcDQorQENPTkZJR19YVEVOU0FfVFJVRUAJeHRlbnNhL2NydDAubw0KKw0KK0BDT05GSUdf WFRFTlNBX1RSVUVAYW1fX2FwcGVuZF80MCA9IHh0ZW5zYS9saWJnbG9zcy5hDQorQENPTkZJR19Y VEVOU0FfVFJVRUBASEFWRV9YVEVOU0FfQk9BUkRfRVNQX1RSVUVAYW1fX2FwcGVuZF80MSA9IFwN CitAQ09ORklHX1hURU5TQV9UUlVFQEBIQVZFX1hURU5TQV9CT0FSRF9FU1BfVFJVRUAJeHRlbnNh L3NpbS5lbGYuc3BlY3MgXA0KK0BDT05GSUdfWFRFTlNBX1RSVUVAQEhBVkVfWFRFTlNBX0JPQVJE X0VTUF9UUlVFQAl4dGVuc2EvYm9hcmQuZWxmLnNwZWNzIFwNCitAQ09ORklHX1hURU5TQV9UUlVF QEBIQVZFX1hURU5TQV9CT0FSRF9FU1BfVFJVRUAJeHRlbnNhL3N5cy5xZW11LnNwZWNzIFwNCitA Q09ORklHX1hURU5TQV9UUlVFQEBIQVZFX1hURU5TQV9CT0FSRF9FU1BfVFJVRUAJeHRlbnNhL3N5 cy5vcGVub2NkLnNwZWNzIFwNCitAQ09ORklHX1hURU5TQV9UUlVFQEBIQVZFX1hURU5TQV9CT0FS RF9FU1BfVFJVRUAJeHRlbnNhL2FwcC5lbGYubGQgXA0KK0BDT05GSUdfWFRFTlNBX1RSVUVAQEhB VkVfWFRFTlNBX0JPQVJEX0VTUF9UUlVFQAl4dGVuc2EvY3J0MS1zaW0ubyBcDQorQENPTkZJR19Y VEVOU0FfVFJVRUBASEFWRV9YVEVOU0FfQk9BUkRfRVNQX1RSVUVACXh0ZW5zYS9jcnQxLWJvYXJk cy5vDQorDQorQENPTkZJR19YVEVOU0FfVFJVRUBASEFWRV9YVEVOU0FfQk9BUkRfRVNQX1RSVUVA YW1fX2FwcGVuZF80MiA9IHh0ZW5zYS9saWJzeXNfcWVtdS5hIFwNCitAQ09ORklHX1hURU5TQV9U UlVFQEBIQVZFX1hURU5TQV9CT0FSRF9FU1BfVFJVRUAJeHRlbnNhL2xpYnN5c19vcGVub2NkLmEN CitAQ09ORklHX1hURU5TQV9UUlVFQEBIQVZFX1hURU5TQV9CT0FSRF9FU1AzMl9UUlVFQEBIQVZF X1hURU5TQV9CT0FSRF9FU1BfVFJVRUBhbV9fYXBwZW5kXzQzID0geHRlbnNhL2JvYXJkcy9lc3Az Mi9tZW1vcnkuZWxmLmxkDQorQENPTkZJR19YVEVOU0FfVFJVRUBASEFWRV9YVEVOU0FfQk9BUkRf RVNQMzJfVFJVRUBASEFWRV9YVEVOU0FfQk9BUkRfRVNQX1RSVUVAYW1fX2FwcGVuZF80NCA9IHh0 ZW5zYS9ib2FyZHMvZXNwMzIvYm9hcmQuYw0KK0BDT05GSUdfWFRFTlNBX1RSVUVAQEhBVkVfWFRF TlNBX0JPQVJEX0VTUDMyX1RSVUVAQEhBVkVfWFRFTlNBX0JPQVJEX0VTUF9UUlVFQGFtX19hcHBl bmRfNDUgPSAtSSQoc3JjZGlyKS94dGVuc2EvYm9hcmRzL2VzcDMyL2luY2x1ZGUNCitAQ09ORklH X1hURU5TQV9UUlVFQEBIQVZFX1hURU5TQV9CT0FSRF9FU1AzMl9UUlVFQEBIQVZFX1hURU5TQV9C T0FSRF9FU1BfVFJVRUBhbV9fYXBwZW5kXzQ2ID0gLUkkKHNyY2RpcikveHRlbnNhL2JvYXJkcy9l c3AzMi9pbmNsdWRlDQorQENPTkZJR19YVEVOU0FfVFJVRUBASEFWRV9YVEVOU0FfQk9BUkRfRVNQ MzJTM19UUlVFQEBIQVZFX1hURU5TQV9CT0FSRF9FU1BfVFJVRUBhbV9fYXBwZW5kXzQ3ID0geHRl bnNhL2JvYXJkcy9lc3AzMnMzL21lbW9yeS5lbGYubGQNCitAQ09ORklHX1hURU5TQV9UUlVFQEBI QVZFX1hURU5TQV9CT0FSRF9FU1AzMlMzX1RSVUVAQEhBVkVfWFRFTlNBX0JPQVJEX0VTUF9UUlVF QGFtX19hcHBlbmRfNDggPSB4dGVuc2EvYm9hcmRzL2VzcDMyczMvYm9hcmQuYw0KK0BDT05GSUdf WFRFTlNBX1RSVUVAQEhBVkVfWFRFTlNBX0JPQVJEX0VTUDMyUzNfVFJVRUBASEFWRV9YVEVOU0Ff Qk9BUkRfRVNQX1RSVUVAYW1fX2FwcGVuZF80OSA9IC1JJChzcmNkaXIpL3h0ZW5zYS9ib2FyZHMv ZXNwMzJzMy9pbmNsdWRlDQorQENPTkZJR19YVEVOU0FfVFJVRUBASEFWRV9YVEVOU0FfQk9BUkRf RVNQMzJTM19UUlVFQEBIQVZFX1hURU5TQV9CT0FSRF9FU1BfVFJVRUBhbV9fYXBwZW5kXzUwID0g LUkkKHNyY2RpcikveHRlbnNhL2JvYXJkcy9lc3AzMnMzL2luY2x1ZGUNCiBzdWJkaXIgPSAuDQog QUNMT0NBTF9NNCA9ICQodG9wX3NyY2RpcikvYWNsb2NhbC5tNA0KIGFtX19hY2xvY2FsX200X2Rl cHMgPSAkKHRvcF9zcmNkaXIpLy4uL2NvbmZpZy9kZXBzdGFuZC5tNCBcDQpAQCAtMjAzLDcgKzIy OSw4IEBAIGFtX19hY2xvY2FsX200X2RlcHMgPSAkKHRvcF9zcmNkaXIpLy4uL2NvbmZpZy9kZXBz dGFuZC5tNCBcDQogCSQodG9wX3NyY2RpcikvbWNvcmUvYWNpbmNsdWRlLm00IFwNCiAJJCh0b3Bf c3JjZGlyKS9taXBzL2FjaW5jbHVkZS5tNCBcDQogCSQodG9wX3NyY2RpcikvbW4xMDMwMC9hY2lu Y2x1ZGUubTQgXA0KLQkkKHRvcF9zcmNkaXIpL21veGllL2FjaW5jbHVkZS5tNCAkKHRvcF9zcmNk aXIpL2NvbmZpZ3VyZS5hYw0KKwkkKHRvcF9zcmNkaXIpL21veGllL2FjaW5jbHVkZS5tNCBcDQor CSQodG9wX3NyY2RpcikveHRlbnNhL2FjaW5jbHVkZS5tNCAkKHRvcF9zcmNkaXIpL2NvbmZpZ3Vy ZS5hYw0KIGFtX19jb25maWd1cmVfZGVwcyA9ICQoYW1fX2FjbG9jYWxfbTRfZGVwcykgJChDT05G SUdVUkVfREVQRU5ERU5DSUVTKSBcDQogCSQoQUNMT0NBTF9NNCkNCiBESVNUX0NPTU1PTiA9ICQo c3JjZGlyKS9NYWtlZmlsZS5hbSAkKHRvcF9zcmNkaXIpL2NvbmZpZ3VyZSBcDQpAQCAtNTE1LDYg KzU0MiwyNyBAQCByaXNjdl9saWJzZW1paG9zdF9hX0xJQkFERCA9DQogQENPTkZJR19SSVNDVl9U UlVFQAlyaXNjdi9yaXNjdl9saWJzZW1paG9zdF9hLXNlbWlob3N0LXN5c191bmxpbmsuJChPQkpF WFQpIFwNCiBAQ09ORklHX1JJU0NWX1RSVUVACXJpc2N2L3Jpc2N2X2xpYnNlbWlob3N0X2Etc2Vt aWhvc3Qtc3lzX3dyaXRlLiQoT0JKRVhUKQ0KIHJpc2N2X2xpYnNlbWlob3N0X2FfT0JKRUNUUyA9 ICQoYW1fcmlzY3ZfbGlic2VtaWhvc3RfYV9PQkpFQ1RTKQ0KK3h0ZW5zYV9saWJnbG9zc19hX0FS ID0gJChBUikgJChBUkZMQUdTKQ0KK3h0ZW5zYV9saWJnbG9zc19hX0xJQkFERCA9DQorQENPTkZJ R19YVEVOU0FfVFJVRUBASEFWRV9YVEVOU0FfQk9BUkRfRVNQMzJfVFJVRUBASEFWRV9YVEVOU0Ff Qk9BUkRfRVNQX1RSVUVAYW1fX29iamVjdHNfNyA9IHh0ZW5zYS9ib2FyZHMvZXNwMzIveHRlbnNh X2xpYmdsb3NzX2EtYm9hcmQuJChPQkpFWFQpDQorQENPTkZJR19YVEVOU0FfVFJVRUBASEFWRV9Y VEVOU0FfQk9BUkRfRVNQMzJTM19UUlVFQEBIQVZFX1hURU5TQV9CT0FSRF9FU1BfVFJVRUBhbV9f b2JqZWN0c184ID0geHRlbnNhL2JvYXJkcy9lc3AzMnMzL3h0ZW5zYV9saWJnbG9zc19hLWJvYXJk LiQoT0JKRVhUKQ0KK0BDT05GSUdfWFRFTlNBX1RSVUVAQEhBVkVfWFRFTlNBX0JPQVJEX0VTUF9U UlVFQGFtX3h0ZW5zYV9saWJnbG9zc19hX09CSkVDVFMgPSB4dGVuc2EveHRlbnNhX2xpYmdsb3Nz X2Etc2xlZXAuJChPQkpFWFQpIFwNCitAQ09ORklHX1hURU5TQV9UUlVFQEBIQVZFX1hURU5TQV9C T0FSRF9FU1BfVFJVRUAJeHRlbnNhL3h0ZW5zYV9saWJnbG9zc19hLXN5c2NhbGxzLiQoT0JKRVhU KSBcDQorQENPTkZJR19YVEVOU0FfVFJVRUBASEFWRV9YVEVOU0FfQk9BUkRfRVNQX1RSVUVACXh0 ZW5zYS94dGVuc2FfbGliZ2xvc3NfYS13aW5kb3ctdmVjdG9ycy4kKE9CSkVYVCkgXA0KK0BDT05G SUdfWFRFTlNBX1RSVUVAQEhBVkVfWFRFTlNBX0JPQVJEX0VTUF9UUlVFQAkkKGFtX19vYmplY3Rz XzcpIFwNCitAQ09ORklHX1hURU5TQV9UUlVFQEBIQVZFX1hURU5TQV9CT0FSRF9FU1BfVFJVRUAJ JChhbV9fb2JqZWN0c184KQ0KK3h0ZW5zYV9saWJnbG9zc19hX09CSkVDVFMgPSAkKGFtX3h0ZW5z YV9saWJnbG9zc19hX09CSkVDVFMpDQoreHRlbnNhX2xpYnN5c19vcGVub2NkX2FfQVIgPSAkKEFS KSAkKEFSRkxBR1MpDQoreHRlbnNhX2xpYnN5c19vcGVub2NkX2FfTElCQUREID0NCitAQ09ORklH X1hURU5TQV9UUlVFQEBIQVZFX1hURU5TQV9CT0FSRF9FU1BfVFJVRUBhbV94dGVuc2FfbGlic3lz X29wZW5vY2RfYV9PQkpFQ1RTID0geHRlbnNhL3h0ZW5zYV9saWJzeXNfb3Blbm9jZF9hLXN5c2Nh bGxzLiQoT0JKRVhUKQ0KK3h0ZW5zYV9saWJzeXNfb3Blbm9jZF9hX09CSkVDVFMgPSAgXA0KKwkk KGFtX3h0ZW5zYV9saWJzeXNfb3Blbm9jZF9hX09CSkVDVFMpDQoreHRlbnNhX2xpYnN5c19xZW11 X2FfQVIgPSAkKEFSKSAkKEFSRkxBR1MpDQoreHRlbnNhX2xpYnN5c19xZW11X2FfTElCQUREID0N CitAQ09ORklHX1hURU5TQV9UUlVFQEBIQVZFX1hURU5TQV9CT0FSRF9FU1BfVFJVRUBhbV94dGVu c2FfbGlic3lzX3FlbXVfYV9PQkpFQ1RTID0geHRlbnNhL3h0ZW5zYV9saWJzeXNfcWVtdV9hLXNp bS12ZWN0b3JzLiQoT0JKRVhUKSBcDQorQENPTkZJR19YVEVOU0FfVFJVRUBASEFWRV9YVEVOU0Ff Qk9BUkRfRVNQX1RSVUVACXh0ZW5zYS94dGVuc2FfbGlic3lzX3FlbXVfYS1zaW0tY2FsbC4kKE9C SkVYVCkgXA0KK0BDT05GSUdfWFRFTlNBX1RSVUVAQEhBVkVfWFRFTlNBX0JPQVJEX0VTUF9UUlVF QAl4dGVuc2EveHRlbnNhX2xpYnN5c19xZW11X2Etc3lzY2FsbHMuJChPQkpFWFQpDQoreHRlbnNh X2xpYnN5c19xZW11X2FfT0JKRUNUUyA9ICQoYW1feHRlbnNhX2xpYnN5c19xZW11X2FfT0JKRUNU UykNCiBAQ09ORklHX1dJTkNFX1RSVUVAYW1fX0VYRUVYVF8xID0gd2luY2Uvc3R1Yi5leGUkKEVY RUVYVCkNCiBAQ09ORklHX0JGSU5fVFJVRUBhbV9fRVhFRVhUXzIgPSBiZmluL3NpbS10ZXN0JChF WEVFWFQpDQogQENPTkZJR19JUTIwMDBfVFJVRUBhbV9fRVhFRVhUXzMgPSBpcTIwMDAvdGVzdCQo RVhFRVhUKQ0KQEAgLTU3NSw3ICs2MjMsOSBAQCBTT1VSQ0VTID0gJChhYXJjaDY0X2xpYnJkaW1v bl9hX1NPVVJDRVMpICQoYXJjX2xpYm5zaW1fYV9TT1VSQ0VTKSBcDQogCSQoaXEyMDAwX2xpYmV2 YWxfYV9TT1VSQ0VTKSAkKGxpYm5vc3lzX2xpYm5vc3lzX2FfU09VUkNFUykgXA0KIAkkKGxpYm9i anNfYV9TT1VSQ0VTKSAkKGxtMzJfbGliZ2xvc3NfYV9TT1VSQ0VTKSBcDQogCSQobmlvczJfbGli bmlvczJfYV9TT1VSQ0VTKSAkKHJpc2N2X2xpYmdsb3NzX2FfU09VUkNFUykgXA0KLQkkKHJpc2N2 X2xpYnNlbWlob3N0X2FfU09VUkNFUykgYmZpbi9zaW0tdGVzdC5jIGlxMjAwMC90ZXN0LmMgXA0K KwkkKHJpc2N2X2xpYnNlbWlob3N0X2FfU09VUkNFUykgJCh4dGVuc2FfbGliZ2xvc3NfYV9TT1VS Q0VTKSBcDQorCSQoeHRlbnNhX2xpYnN5c19vcGVub2NkX2FfU09VUkNFUykgXA0KKwkkKHh0ZW5z YV9saWJzeXNfcWVtdV9hX1NPVVJDRVMpIGJmaW4vc2ltLXRlc3QuYyBpcTIwMDAvdGVzdC5jIFwN CiAJJCh3aW5jZV9zdHViX2V4ZV9TT1VSQ0VTKQ0KIEFNX1ZfRFZJUFMgPSAkKGFtX192X0RWSVBT X0BBTV9WQCkNCiBhbV9fdl9EVklQU18gPSAkKGFtX192X0RWSVBTX0BBTV9ERUZBVUxUX1ZAKQ0K QEAgLTY4MSw3ICs3MzEsNyBAQCBDQ0FTRkxBR1MgPSBAQ0NBU0ZMQUdTQA0KIENDREVQTU9ERSA9 IEBDQ0RFUE1PREVADQogQ0ZMQUdTID0gQENGTEFHU0ANCiBDUFAgPSBAQ1BQQA0KLUNQUEZMQUdT ID0gQENQUEZMQUdTQA0KK0NQUEZMQUdTID0gQENQUEZMQUdTQCAkKGFtX19hcHBlbmRfMzgpDQog Q1lHUEFUSF9XID0gQENZR1BBVEhfV0ANCiBERUZTID0gQERFRlNADQogREVQRElSID0gQERFUERJ UkANCkBAIC03MjgsNiArNzc4LDcgQEAgU0VUX01BS0UgPSBAU0VUX01BS0VADQogU0hFTEwgPSBA U0hFTExADQogU1RSSVAgPSBAU1RSSVBADQogVkVSU0lPTiA9IEBWRVJTSU9OQA0KK1hURU5TQV9C T0FSRF9FU1AgPSBAWFRFTlNBX0JPQVJEX0VTUEANCiBhYnNfYnVpbGRkaXIgPSBAYWJzX2J1aWxk ZGlyQA0KIGFic19zcmNkaXIgPSBAYWJzX3NyY2RpckANCiBhYnNfdG9wX2J1aWxkZGlyID0gQGFi c190b3BfYnVpbGRkaXJADQpAQCAtNzk5LDExICs4NTAsMTMgQEAgbXVsdGlsaWJ0b29sX0RBVEEg PSAkKGFtX19hcHBlbmRfMykgJChhbV9fYXBwZW5kXzYpICQoYW1fX2FwcGVuZF83KSBcDQogCSQo YW1fX2FwcGVuZF84KSAkKGFtX19hcHBlbmRfMTMpICQoYW1fX2FwcGVuZF8xNSkgXA0KIAkkKGFt X19hcHBlbmRfMTgpICQoYW1fX2FwcGVuZF8yMikgJChhbV9fYXBwZW5kXzIzKSBcDQogCSQoYW1f X2FwcGVuZF8yNykgJChhbV9fYXBwZW5kXzI5KSAkKGFtX19hcHBlbmRfMzIpIFwNCi0JJChhbV9f YXBwZW5kXzM0KQ0KKwkkKGFtX19hcHBlbmRfMzQpICQoYW1fX2FwcGVuZF8zOSkgJChhbV9fYXBw ZW5kXzQxKSBcDQorCSQoYW1fX2FwcGVuZF80MykgJChhbV9fYXBwZW5kXzQ3KQ0KIG11bHRpbGli dG9vbF9MSUJSQVJJRVMgPSAkKGFtX19hcHBlbmRfMikgJChhbV9fYXBwZW5kXzUpIFwNCiAJJChh bV9fYXBwZW5kXzkpICQoYW1fX2FwcGVuZF8xMSkgJChhbV9fYXBwZW5kXzIwKSBcDQogCSQoYW1f X2FwcGVuZF8yMSkgJChhbV9fYXBwZW5kXzI0KSAkKGFtX19hcHBlbmRfMjgpIFwNCi0JJChhbV9f YXBwZW5kXzMwKSAkKGFtX19hcHBlbmRfMzMpICQoYW1fX2FwcGVuZF8zNSkNCisJJChhbV9fYXBw ZW5kXzMwKSAkKGFtX19hcHBlbmRfMzMpICQoYW1fX2FwcGVuZF8zNSkgXA0KKwkkKGFtX19hcHBl bmRfNDApICQoYW1fX2FwcGVuZF80MikNCiBpbmNsdWRldG9vbGRpciA9ICQodG9vbGRpcikvaW5j bHVkZQ0KIGluY2x1ZGV0b29sX0RBVEEgPSAkKGFtX19hcHBlbmRfMTYpDQogaW5jbHVkZXN5c3Rv b2xkaXIgPSAkKHRvb2xkaXIpL2luY2x1ZGUvc3lzDQpAQCAtMTA5NSw2ICsxMTQ4LDI3IEBAIFRF WElORk9fVEVYID0gLi4vdGV4aW5mby90ZXhpbmZvLnRleA0KIEBDT05GSUdfV0lOQ0VfVFJVRUB3 aW5jZV9zdHViX2V4ZV9TT1VSQ0VTID0gd2luY2Utc3R1Yi5jDQogQENPTkZJR19XSU5DRV9UUlVF QHdpbmNlX3N0dWJfZXhlX0NQUEZMQUdTID0gJChBTV9DUFBGTEFHUykgLUkkKGdkYmRpcikNCiBA Q09ORklHX1dJTkNFX1RSVUVAd2luY2Vfc3R1Yl9leGVfTERBREQgPSAtbHdpbnNvY2sgJChXSU5D RV9TVFVCX0xJQlMpDQorQENPTkZJR19YVEVOU0FfVFJVRUBASEFWRV9YVEVOU0FfQk9BUkRfRVNQ X1RSVUVAeHRlbnNhX2xpYmdsb3NzX2FfU09VUkNFUyA9IHh0ZW5zYS9zbGVlcC5TIFwNCitAQ09O RklHX1hURU5TQV9UUlVFQEBIQVZFX1hURU5TQV9CT0FSRF9FU1BfVFJVRUAJeHRlbnNhL3N5c2Nh bGxzLmMgXA0KK0BDT05GSUdfWFRFTlNBX1RSVUVAQEhBVkVfWFRFTlNBX0JPQVJEX0VTUF9UUlVF QAl4dGVuc2Evd2luZG93LXZlY3RvcnMuUyBcDQorQENPTkZJR19YVEVOU0FfVFJVRUBASEFWRV9Y VEVOU0FfQk9BUkRfRVNQX1RSVUVACSQoYW1fX2FwcGVuZF80NCkgXA0KK0BDT05GSUdfWFRFTlNB X1RSVUVAQEhBVkVfWFRFTlNBX0JPQVJEX0VTUF9UUlVFQAkkKGFtX19hcHBlbmRfNDgpDQorQENP TkZJR19YVEVOU0FfVFJVRUBASEFWRV9YVEVOU0FfQk9BUkRfRVNQX1RSVUVAeHRlbnNhX2xpYnN5 c19xZW11X2FfQ1BQRkxBR1MgPSAtRFFFTVVfU0VNSUhPU1RJTkcgXA0KK0BDT05GSUdfWFRFTlNB X1RSVUVAQEhBVkVfWFRFTlNBX0JPQVJEX0VTUF9UUlVFQAkkKGFtX19hcHBlbmRfNDUpIFwNCitA Q09ORklHX1hURU5TQV9UUlVFQEBIQVZFX1hURU5TQV9CT0FSRF9FU1BfVFJVRUAJJChhbV9fYXBw ZW5kXzQ5KQ0KK0BDT05GSUdfWFRFTlNBX1RSVUVAQEhBVkVfWFRFTlNBX0JPQVJEX0VTUF9UUlVF QHh0ZW5zYV9saWJzeXNfcWVtdV9hX1NPVVJDRVMgPSBcDQorQENPTkZJR19YVEVOU0FfVFJVRUBA SEFWRV9YVEVOU0FfQk9BUkRfRVNQX1RSVUVACXh0ZW5zYS9zaW0tdmVjdG9ycy5TIFwNCitAQ09O RklHX1hURU5TQV9UUlVFQEBIQVZFX1hURU5TQV9CT0FSRF9FU1BfVFJVRUAJeHRlbnNhL3NpbS1j YWxsLlMgXA0KK0BDT05GSUdfWFRFTlNBX1RSVUVAQEhBVkVfWFRFTlNBX0JPQVJEX0VTUF9UUlVF QAl4dGVuc2Evc3lzY2FsbHMuYw0KKw0KK0BDT05GSUdfWFRFTlNBX1RSVUVAQEhBVkVfWFRFTlNB X0JPQVJEX0VTUF9UUlVFQHh0ZW5zYV9saWJzeXNfb3Blbm9jZF9hX0NQUEZMQUdTID0gLURPUEVO T0NEX1NFTUlIT1NUSU5HIFwNCitAQ09ORklHX1hURU5TQV9UUlVFQEBIQVZFX1hURU5TQV9CT0FS RF9FU1BfVFJVRUAJJChhbV9fYXBwZW5kXzQ2KSBcDQorQENPTkZJR19YVEVOU0FfVFJVRUBASEFW RV9YVEVOU0FfQk9BUkRfRVNQX1RSVUVACSQoYW1fX2FwcGVuZF81MCkNCitAQ09ORklHX1hURU5T QV9UUlVFQEBIQVZFX1hURU5TQV9CT0FSRF9FU1BfVFJVRUB4dGVuc2FfbGlic3lzX29wZW5vY2Rf YV9TT1VSQ0VTID0gXA0KK0BDT05GSUdfWFRFTlNBX1RSVUVAQEhBVkVfWFRFTlNBX0JPQVJEX0VT UF9UUlVFQAl4dGVuc2Evc3lzY2FsbHMuYw0KKw0KK0BDT05GSUdfWFRFTlNBX1RSVUVAQEhBVkVf WFRFTlNBX0JPQVJEX0VTUDMyUzNfVFJVRUBASEFWRV9YVEVOU0FfQk9BUkRfRVNQX1RSVUVAeHRl bnNhX2xpYmdsb3NzX2FfQ1BQRkxBR1MgPSAtSSQoc3JjZGlyKS94dGVuc2EvYm9hcmRzL2VzcDMy czMvaW5jbHVkZQ0KK0BDT05GSUdfWFRFTlNBX1RSVUVAQEhBVkVfWFRFTlNBX0JPQVJEX0VTUDMy X1RSVUVAQEhBVkVfWFRFTlNBX0JPQVJEX0VTUF9UUlVFQHh0ZW5zYV9saWJnbG9zc19hX0NQUEZM QUdTID0gLUkkKHNyY2RpcikveHRlbnNhL2JvYXJkcy9lc3AzMi9pbmNsdWRlDQogYWxsOiBjb25m aWcuaA0KIAkkKE1BS0UpICQoQU1fTUFLRUZMQUdTKSBhbGwtcmVjdXJzaXZlDQogDQpAQCAtMTEw Miw3ICsxMTc2LDcgQEAgYWxsOiBjb25maWcuaA0KIC5TVUZGSVhFUzogLlMgLmMgLmR2aSAubyAu b2JqIC5wcw0KIGFtLS1yZWZyZXNoOiBNYWtlZmlsZQ0KIAlAOg0KLSQoc3JjZGlyKS9NYWtlZmls ZS5pbjogQE1BSU5UQUlORVJfTU9ERV9UUlVFQCAkKHNyY2RpcikvTWFrZWZpbGUuYW0gJCh0b3Bf c3JjZGlyKS8uLi9tdWx0aWxpYi5hbSAkKHNyY2RpcikvZG9jL01ha2VmaWxlLmluYyAkKHNyY2Rp cikvYWFyY2g2NC9NYWtlZmlsZS5pbmMgJChzcmNkaXIpL2FhcmNoNjQvY3B1LWluaXQvTWFrZWZp bGUuaW5jICQoc3JjZGlyKS9hcmMvTWFrZWZpbGUuaW5jICQoc3JjZGlyKS9hcm0vTWFrZWZpbGUu aW5jICQoc3JjZGlyKS9hcm0vY3B1LWluaXQvTWFrZWZpbGUuaW5jICQoc3JjZGlyKS9iZmluL01h a2VmaWxlLmluYyAkKHNyY2RpcikvY3NreS9NYWtlZmlsZS5pbmMgJChzcmNkaXIpL2QzMHYvTWFr ZWZpbGUuaW5jICQoc3JjZGlyKS9pcTIwMDAvTWFrZWZpbGUuaW5jICQoc3JjZGlyKS9saWJub3N5 cy9NYWtlZmlsZS5pbmMgJChzcmNkaXIpL2xtMzIvTWFrZWZpbGUuaW5jICQoc3JjZGlyKS9uaW9z Mi9NYWtlZmlsZS5pbmMgJChzcmNkaXIpL3Jpc2N2L01ha2VmaWxlLmluYyAkKHNyY2Rpcikvd2lu Y2UvTWFrZWZpbGUuaW5jICQoYW1fX2NvbmZpZ3VyZV9kZXBzKQ0KKyQoc3JjZGlyKS9NYWtlZmls ZS5pbjogQE1BSU5UQUlORVJfTU9ERV9UUlVFQCAkKHNyY2RpcikvTWFrZWZpbGUuYW0gJCh0b3Bf c3JjZGlyKS8uLi9tdWx0aWxpYi5hbSAkKHNyY2RpcikvZG9jL01ha2VmaWxlLmluYyAkKHNyY2Rp cikvYWFyY2g2NC9NYWtlZmlsZS5pbmMgJChzcmNkaXIpL2FhcmNoNjQvY3B1LWluaXQvTWFrZWZp bGUuaW5jICQoc3JjZGlyKS9hcmMvTWFrZWZpbGUuaW5jICQoc3JjZGlyKS9hcm0vTWFrZWZpbGUu aW5jICQoc3JjZGlyKS9hcm0vY3B1LWluaXQvTWFrZWZpbGUuaW5jICQoc3JjZGlyKS9iZmluL01h a2VmaWxlLmluYyAkKHNyY2RpcikvY3NreS9NYWtlZmlsZS5pbmMgJChzcmNkaXIpL2QzMHYvTWFr ZWZpbGUuaW5jICQoc3JjZGlyKS9pcTIwMDAvTWFrZWZpbGUuaW5jICQoc3JjZGlyKS9saWJub3N5 cy9NYWtlZmlsZS5pbmMgJChzcmNkaXIpL2xtMzIvTWFrZWZpbGUuaW5jICQoc3JjZGlyKS9uaW9z Mi9NYWtlZmlsZS5pbmMgJChzcmNkaXIpL3Jpc2N2L01ha2VmaWxlLmluYyAkKHNyY2Rpcikvd2lu Y2UvTWFrZWZpbGUuaW5jICQoc3JjZGlyKS94dGVuc2EvTWFrZWZpbGUuaW5jICQoYW1fX2NvbmZp Z3VyZV9kZXBzKQ0KIAlAZm9yIGRlcCBpbiAkPzsgZG8gXA0KIAkgIGNhc2UgJyQoYW1fX2NvbmZp Z3VyZV9kZXBzKScgaW4gXA0KIAkgICAgKiQkZGVwKikgXA0KQEAgLTExMjQsNyArMTE5OCw3IEBA IE1ha2VmaWxlOiAkKHNyY2RpcikvTWFrZWZpbGUuaW4gJCh0b3BfYnVpbGRkaXIpL2NvbmZpZy5z dGF0dXMNCiAJICAgIGVjaG8gJyBjZCAkKHRvcF9idWlsZGRpcikgJiYgJChTSEVMTCkgLi9jb25m aWcuc3RhdHVzICRAICQoYW1fX2RlcGZpbGVzX21heWJlKSc7IFwNCiAJICAgIGNkICQodG9wX2J1 aWxkZGlyKSAmJiAkKFNIRUxMKSAuL2NvbmZpZy5zdGF0dXMgJEAgJChhbV9fZGVwZmlsZXNfbWF5 YmUpOzsgXA0KIAllc2FjOw0KLSQodG9wX3NyY2RpcikvLi4vbXVsdGlsaWIuYW0gJChzcmNkaXIp L2RvYy9NYWtlZmlsZS5pbmMgJChzcmNkaXIpL2FhcmNoNjQvTWFrZWZpbGUuaW5jICQoc3JjZGly KS9hYXJjaDY0L2NwdS1pbml0L01ha2VmaWxlLmluYyAkKHNyY2RpcikvYXJjL01ha2VmaWxlLmlu YyAkKHNyY2RpcikvYXJtL01ha2VmaWxlLmluYyAkKHNyY2RpcikvYXJtL2NwdS1pbml0L01ha2Vm aWxlLmluYyAkKHNyY2RpcikvYmZpbi9NYWtlZmlsZS5pbmMgJChzcmNkaXIpL2Nza3kvTWFrZWZp bGUuaW5jICQoc3JjZGlyKS9kMzB2L01ha2VmaWxlLmluYyAkKHNyY2RpcikvaXEyMDAwL01ha2Vm aWxlLmluYyAkKHNyY2RpcikvbGlibm9zeXMvTWFrZWZpbGUuaW5jICQoc3JjZGlyKS9sbTMyL01h a2VmaWxlLmluYyAkKHNyY2RpcikvbmlvczIvTWFrZWZpbGUuaW5jICQoc3JjZGlyKS9yaXNjdi9N YWtlZmlsZS5pbmMgJChzcmNkaXIpL3dpbmNlL01ha2VmaWxlLmluYyAkKGFtX19lbXB0eSk6DQor JCh0b3Bfc3JjZGlyKS8uLi9tdWx0aWxpYi5hbSAkKHNyY2RpcikvZG9jL01ha2VmaWxlLmluYyAk KHNyY2RpcikvYWFyY2g2NC9NYWtlZmlsZS5pbmMgJChzcmNkaXIpL2FhcmNoNjQvY3B1LWluaXQv TWFrZWZpbGUuaW5jICQoc3JjZGlyKS9hcmMvTWFrZWZpbGUuaW5jICQoc3JjZGlyKS9hcm0vTWFr ZWZpbGUuaW5jICQoc3JjZGlyKS9hcm0vY3B1LWluaXQvTWFrZWZpbGUuaW5jICQoc3JjZGlyKS9i ZmluL01ha2VmaWxlLmluYyAkKHNyY2RpcikvY3NreS9NYWtlZmlsZS5pbmMgJChzcmNkaXIpL2Qz MHYvTWFrZWZpbGUuaW5jICQoc3JjZGlyKS9pcTIwMDAvTWFrZWZpbGUuaW5jICQoc3JjZGlyKS9s aWJub3N5cy9NYWtlZmlsZS5pbmMgJChzcmNkaXIpL2xtMzIvTWFrZWZpbGUuaW5jICQoc3JjZGly KS9uaW9zMi9NYWtlZmlsZS5pbmMgJChzcmNkaXIpL3Jpc2N2L01ha2VmaWxlLmluYyAkKHNyY2Rp cikvd2luY2UvTWFrZWZpbGUuaW5jICQoc3JjZGlyKS94dGVuc2EvTWFrZWZpbGUuaW5jICQoYW1f X2VtcHR5KToNCiANCiAkKHRvcF9idWlsZGRpcikvY29uZmlnLnN0YXR1czogJCh0b3Bfc3JjZGly KS9jb25maWd1cmUgJChDT05GSUdfU1RBVFVTX0RFUEVOREVOQ0lFUykNCiAJJChTSEVMTCkgLi9j b25maWcuc3RhdHVzIC0tcmVjaGVjaw0KQEAgLTE3ODIsNiArMTg1Niw1OSBAQCByaXNjdi9saWJz ZW1paG9zdC5hOiAkKHJpc2N2X2xpYnNlbWlob3N0X2FfT0JKRUNUUykgJChyaXNjdl9saWJzZW1p aG9zdF9hX0RFUEVORA0KIAkkKEFNX1ZfYXQpLXJtIC1mIHJpc2N2L2xpYnNlbWlob3N0LmENCiAJ JChBTV9WX0FSKSQocmlzY3ZfbGlic2VtaWhvc3RfYV9BUikgcmlzY3YvbGlic2VtaWhvc3QuYSAk KHJpc2N2X2xpYnNlbWlob3N0X2FfT0JKRUNUUykgJChyaXNjdl9saWJzZW1paG9zdF9hX0xJQkFE RCkNCiAJJChBTV9WX2F0KSQoUkFOTElCKSByaXNjdi9saWJzZW1paG9zdC5hDQoreHRlbnNhLyQo YW1fX2RpcnN0YW1wKToNCisJQCQoTUtESVJfUCkgeHRlbnNhDQorCUA6ID4geHRlbnNhLyQoYW1f X2RpcnN0YW1wKQ0KK3h0ZW5zYS8kKERFUERJUikvJChhbV9fZGlyc3RhbXApOg0KKwlAJChNS0RJ Ul9QKSB4dGVuc2EvJChERVBESVIpDQorCUA6ID4geHRlbnNhLyQoREVQRElSKS8kKGFtX19kaXJz dGFtcCkNCit4dGVuc2EveHRlbnNhX2xpYmdsb3NzX2Etc2xlZXAuJChPQkpFWFQpOiB4dGVuc2Ev JChhbV9fZGlyc3RhbXApIFwNCisJeHRlbnNhLyQoREVQRElSKS8kKGFtX19kaXJzdGFtcCkNCit4 dGVuc2EveHRlbnNhX2xpYmdsb3NzX2Etc3lzY2FsbHMuJChPQkpFWFQpOiB4dGVuc2EvJChhbV9f ZGlyc3RhbXApIFwNCisJeHRlbnNhLyQoREVQRElSKS8kKGFtX19kaXJzdGFtcCkNCit4dGVuc2Ev eHRlbnNhX2xpYmdsb3NzX2Etd2luZG93LXZlY3RvcnMuJChPQkpFWFQpOiAgXA0KKwl4dGVuc2Ev JChhbV9fZGlyc3RhbXApIHh0ZW5zYS8kKERFUERJUikvJChhbV9fZGlyc3RhbXApDQoreHRlbnNh L2JvYXJkcy9lc3AzMi8kKGFtX19kaXJzdGFtcCk6DQorCUAkKE1LRElSX1ApIHh0ZW5zYS9ib2Fy ZHMvZXNwMzINCisJQDogPiB4dGVuc2EvYm9hcmRzL2VzcDMyLyQoYW1fX2RpcnN0YW1wKQ0KK3h0 ZW5zYS9ib2FyZHMvZXNwMzIvJChERVBESVIpLyQoYW1fX2RpcnN0YW1wKToNCisJQCQoTUtESVJf UCkgeHRlbnNhL2JvYXJkcy9lc3AzMi8kKERFUERJUikNCisJQDogPiB4dGVuc2EvYm9hcmRzL2Vz cDMyLyQoREVQRElSKS8kKGFtX19kaXJzdGFtcCkNCit4dGVuc2EvYm9hcmRzL2VzcDMyL3h0ZW5z YV9saWJnbG9zc19hLWJvYXJkLiQoT0JKRVhUKTogIFwNCisJeHRlbnNhL2JvYXJkcy9lc3AzMi8k KGFtX19kaXJzdGFtcCkgXA0KKwl4dGVuc2EvYm9hcmRzL2VzcDMyLyQoREVQRElSKS8kKGFtX19k aXJzdGFtcCkNCit4dGVuc2EvYm9hcmRzL2VzcDMyczMvJChhbV9fZGlyc3RhbXApOg0KKwlAJChN S0RJUl9QKSB4dGVuc2EvYm9hcmRzL2VzcDMyczMNCisJQDogPiB4dGVuc2EvYm9hcmRzL2VzcDMy czMvJChhbV9fZGlyc3RhbXApDQoreHRlbnNhL2JvYXJkcy9lc3AzMnMzLyQoREVQRElSKS8kKGFt X19kaXJzdGFtcCk6DQorCUAkKE1LRElSX1ApIHh0ZW5zYS9ib2FyZHMvZXNwMzJzMy8kKERFUERJ UikNCisJQDogPiB4dGVuc2EvYm9hcmRzL2VzcDMyczMvJChERVBESVIpLyQoYW1fX2RpcnN0YW1w KQ0KK3h0ZW5zYS9ib2FyZHMvZXNwMzJzMy94dGVuc2FfbGliZ2xvc3NfYS1ib2FyZC4kKE9CSkVY VCk6ICBcDQorCXh0ZW5zYS9ib2FyZHMvZXNwMzJzMy8kKGFtX19kaXJzdGFtcCkgXA0KKwl4dGVu c2EvYm9hcmRzL2VzcDMyczMvJChERVBESVIpLyQoYW1fX2RpcnN0YW1wKQ0KKw0KK3h0ZW5zYS9s aWJnbG9zcy5hOiAkKHh0ZW5zYV9saWJnbG9zc19hX09CSkVDVFMpICQoeHRlbnNhX2xpYmdsb3Nz X2FfREVQRU5ERU5DSUVTKSAkKEVYVFJBX3h0ZW5zYV9saWJnbG9zc19hX0RFUEVOREVOQ0lFUykg eHRlbnNhLyQoYW1fX2RpcnN0YW1wKQ0KKwkkKEFNX1ZfYXQpLXJtIC1mIHh0ZW5zYS9saWJnbG9z cy5hDQorCSQoQU1fVl9BUikkKHh0ZW5zYV9saWJnbG9zc19hX0FSKSB4dGVuc2EvbGliZ2xvc3Mu YSAkKHh0ZW5zYV9saWJnbG9zc19hX09CSkVDVFMpICQoeHRlbnNhX2xpYmdsb3NzX2FfTElCQURE KQ0KKwkkKEFNX1ZfYXQpJChSQU5MSUIpIHh0ZW5zYS9saWJnbG9zcy5hDQoreHRlbnNhL3h0ZW5z YV9saWJzeXNfb3Blbm9jZF9hLXN5c2NhbGxzLiQoT0JKRVhUKTogIFwNCisJeHRlbnNhLyQoYW1f X2RpcnN0YW1wKSB4dGVuc2EvJChERVBESVIpLyQoYW1fX2RpcnN0YW1wKQ0KKw0KK3h0ZW5zYS9s aWJzeXNfb3Blbm9jZC5hOiAkKHh0ZW5zYV9saWJzeXNfb3Blbm9jZF9hX09CSkVDVFMpICQoeHRl bnNhX2xpYnN5c19vcGVub2NkX2FfREVQRU5ERU5DSUVTKSAkKEVYVFJBX3h0ZW5zYV9saWJzeXNf b3Blbm9jZF9hX0RFUEVOREVOQ0lFUykgeHRlbnNhLyQoYW1fX2RpcnN0YW1wKQ0KKwkkKEFNX1Zf YXQpLXJtIC1mIHh0ZW5zYS9saWJzeXNfb3Blbm9jZC5hDQorCSQoQU1fVl9BUikkKHh0ZW5zYV9s aWJzeXNfb3Blbm9jZF9hX0FSKSB4dGVuc2EvbGlic3lzX29wZW5vY2QuYSAkKHh0ZW5zYV9saWJz eXNfb3Blbm9jZF9hX09CSkVDVFMpICQoeHRlbnNhX2xpYnN5c19vcGVub2NkX2FfTElCQUREKQ0K KwkkKEFNX1ZfYXQpJChSQU5MSUIpIHh0ZW5zYS9saWJzeXNfb3Blbm9jZC5hDQoreHRlbnNhL3h0 ZW5zYV9saWJzeXNfcWVtdV9hLXNpbS12ZWN0b3JzLiQoT0JKRVhUKTogIFwNCisJeHRlbnNhLyQo YW1fX2RpcnN0YW1wKSB4dGVuc2EvJChERVBESVIpLyQoYW1fX2RpcnN0YW1wKQ0KK3h0ZW5zYS94 dGVuc2FfbGlic3lzX3FlbXVfYS1zaW0tY2FsbC4kKE9CSkVYVCk6ICBcDQorCXh0ZW5zYS8kKGFt X19kaXJzdGFtcCkgeHRlbnNhLyQoREVQRElSKS8kKGFtX19kaXJzdGFtcCkNCit4dGVuc2EveHRl bnNhX2xpYnN5c19xZW11X2Etc3lzY2FsbHMuJChPQkpFWFQpOiAgXA0KKwl4dGVuc2EvJChhbV9f ZGlyc3RhbXApIHh0ZW5zYS8kKERFUERJUikvJChhbV9fZGlyc3RhbXApDQorDQoreHRlbnNhL2xp YnN5c19xZW11LmE6ICQoeHRlbnNhX2xpYnN5c19xZW11X2FfT0JKRUNUUykgJCh4dGVuc2FfbGli c3lzX3FlbXVfYV9ERVBFTkRFTkNJRVMpICQoRVhUUkFfeHRlbnNhX2xpYnN5c19xZW11X2FfREVQ RU5ERU5DSUVTKSB4dGVuc2EvJChhbV9fZGlyc3RhbXApDQorCSQoQU1fVl9hdCktcm0gLWYgeHRl bnNhL2xpYnN5c19xZW11LmENCisJJChBTV9WX0FSKSQoeHRlbnNhX2xpYnN5c19xZW11X2FfQVIp IHh0ZW5zYS9saWJzeXNfcWVtdS5hICQoeHRlbnNhX2xpYnN5c19xZW11X2FfT0JKRUNUUykgJCh4 dGVuc2FfbGlic3lzX3FlbXVfYV9MSUJBREQpDQorCSQoQU1fVl9hdCkkKFJBTkxJQikgeHRlbnNh L2xpYnN5c19xZW11LmENCiBpbnN0YWxsLWJpblBST0dSQU1TOiAkKGJpbl9QUk9HUkFNUykNCiAJ QCQoTk9STUFMX0lOU1RBTEwpDQogCUBsaXN0PSckKGJpbl9QUk9HUkFNUyknOyB0ZXN0IC1uICIk KGJpbmRpcikiIHx8IGxpc3Q9OyBcDQpAQCAtMTg2MCw2ICsxOTg3LDkgQEAgbW9zdGx5Y2xlYW4t Y29tcGlsZToNCiAJLXJtIC1mIGxtMzIvKi4kKE9CSkVYVCkNCiAJLXJtIC1mIG5pb3MyLyouJChP QkpFWFQpDQogCS1ybSAtZiByaXNjdi8qLiQoT0JKRVhUKQ0KKwktcm0gLWYgeHRlbnNhLyouJChP QkpFWFQpDQorCS1ybSAtZiB4dGVuc2EvYm9hcmRzL2VzcDMyLyouJChPQkpFWFQpDQorCS1ybSAt ZiB4dGVuc2EvYm9hcmRzL2VzcDMyczMvKi4kKE9CSkVYVCkNCiANCiBkaXN0Y2xlYW4tY29tcGls ZToNCiAJLXJtIC1mICoudGFiLmMNCkBAIC0yMDYwLDYgKzIxOTAsMTUgQEAgZGlzdGNsZWFuLWNv bXBpbGU6DQogQEFNREVQX1RSVUVAQGFtX19pbmNsdWRlQCBAYW1fX3F1b3RlQHJpc2N2LyQoREVQ RElSKS9yaXNjdl9saWJzZW1paG9zdF9hLXN5c19raWxsLlBvQGFtX19xdW90ZUANCiBAQU1ERVBf VFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVAcmlzY3YvJChERVBESVIpL3Jpc2N2X2xpYnNl bWlob3N0X2Etc3lzX3V0aW1lLlBvQGFtX19xdW90ZUANCiBAQU1ERVBfVFJVRUBAYW1fX2luY2x1 ZGVAIEBhbV9fcXVvdGVAcmlzY3YvJChERVBESVIpL3Jpc2N2X2xpYnNlbWlob3N0X2Etc3lzX3dh aXQuUG9AYW1fX3F1b3RlQA0KK0BBTURFUF9UUlVFQEBhbV9faW5jbHVkZUAgQGFtX19xdW90ZUB4 dGVuc2EvJChERVBESVIpL3h0ZW5zYV9saWJnbG9zc19hLXNsZWVwLlBvQGFtX19xdW90ZUANCitA QU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVAeHRlbnNhLyQoREVQRElSKS94dGVu c2FfbGliZ2xvc3NfYS1zeXNjYWxscy5Qb0BhbV9fcXVvdGVADQorQEFNREVQX1RSVUVAQGFtX19p bmNsdWRlQCBAYW1fX3F1b3RlQHh0ZW5zYS8kKERFUERJUikveHRlbnNhX2xpYmdsb3NzX2Etd2lu ZG93LXZlY3RvcnMuUG9AYW1fX3F1b3RlQA0KK0BBTURFUF9UUlVFQEBhbV9faW5jbHVkZUAgQGFt X19xdW90ZUB4dGVuc2EvJChERVBESVIpL3h0ZW5zYV9saWJzeXNfb3Blbm9jZF9hLXN5c2NhbGxz LlBvQGFtX19xdW90ZUANCitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVAeHRl bnNhLyQoREVQRElSKS94dGVuc2FfbGlic3lzX3FlbXVfYS1zaW0tY2FsbC5Qb0BhbV9fcXVvdGVA DQorQEFNREVQX1RSVUVAQGFtX19pbmNsdWRlQCBAYW1fX3F1b3RlQHh0ZW5zYS8kKERFUERJUikv eHRlbnNhX2xpYnN5c19xZW11X2Etc2ltLXZlY3RvcnMuUG9AYW1fX3F1b3RlQA0KK0BBTURFUF9U UlVFQEBhbV9faW5jbHVkZUAgQGFtX19xdW90ZUB4dGVuc2EvJChERVBESVIpL3h0ZW5zYV9saWJz eXNfcWVtdV9hLXN5c2NhbGxzLlBvQGFtX19xdW90ZUANCitAQU1ERVBfVFJVRUBAYW1fX2luY2x1 ZGVAIEBhbV9fcXVvdGVAeHRlbnNhL2JvYXJkcy9lc3AzMi8kKERFUERJUikveHRlbnNhX2xpYmds b3NzX2EtYm9hcmQuUG9AYW1fX3F1b3RlQA0KK0BBTURFUF9UUlVFQEBhbV9faW5jbHVkZUAgQGFt X19xdW90ZUB4dGVuc2EvYm9hcmRzL2VzcDMyczMvJChERVBESVIpL3h0ZW5zYV9saWJnbG9zc19h LWJvYXJkLlBvQGFtX19xdW90ZUANCiANCiAuUy5vOg0KIEBhbV9fZmFzdGRlcENDQVNfVFJVRUAJ JChBTV9WX0NQUEFTKWRlcGJhc2U9YGVjaG8gJEAgfCBzZWQgJ3N8W14vXSokJHwkKERFUERJUikv Jnw7c3xcLm8kJHx8J2A7XA0KQEAgLTIxNDcsNiArMjI4Niw2MiBAQCBuaW9zMi9uaW9zMl9saWJu aW9zMl9hLWlvLW5pb3MyLm9iajogbmlvczIvaW8tbmlvczIuUw0KIEBBTURFUF9UUlVFQEBhbV9f ZmFzdGRlcENDQVNfRkFMU0VACURFUERJUj0kKERFUERJUikgJChDQ0FTREVQTU9ERSkgJChkZXBj b21wKSBAQU1ERVBCQUNLU0xBU0hADQogQGFtX19mYXN0ZGVwQ0NBU19GQUxTRUAJJChBTV9WX0NQ UEFTQGFtX19ub2RlcEApJChDQ0FTKSAkKERFRlMpICQoREVGQVVMVF9JTkNMVURFUykgJChJTkNM VURFUykgJChuaW9zMl9saWJuaW9zMl9hX0NQUEZMQUdTKSAkKENQUEZMQUdTKSAkKEFNX0NDQVNG TEFHUykgJChDQ0FTRkxBR1MpIC1jIC1vIG5pb3MyL25pb3MyX2xpYm5pb3MyX2EtaW8tbmlvczIu b2JqIGBpZiB0ZXN0IC1mICduaW9zMi9pby1uaW9zMi5TJzsgdGhlbiAkKENZR1BBVEhfVykgJ25p b3MyL2lvLW5pb3MyLlMnOyBlbHNlICQoQ1lHUEFUSF9XKSAnJChzcmNkaXIpL25pb3MyL2lvLW5p b3MyLlMnOyBmaWANCiANCit4dGVuc2EveHRlbnNhX2xpYmdsb3NzX2Etc2xlZXAubzogeHRlbnNh L3NsZWVwLlMNCitAYW1fX2Zhc3RkZXBDQ0FTX1RSVUVACSQoQU1fVl9DUFBBUykkKENDQVMpICQo REVGUykgJChERUZBVUxUX0lOQ0xVREVTKSAkKElOQ0xVREVTKSAkKHh0ZW5zYV9saWJnbG9zc19h X0NQUEZMQUdTKSAkKENQUEZMQUdTKSAkKEFNX0NDQVNGTEFHUykgJChDQ0FTRkxBR1MpIC1NVCB4 dGVuc2EveHRlbnNhX2xpYmdsb3NzX2Etc2xlZXAubyAtTUQgLU1QIC1NRiB4dGVuc2EvJChERVBE SVIpL3h0ZW5zYV9saWJnbG9zc19hLXNsZWVwLlRwbyAtYyAtbyB4dGVuc2EveHRlbnNhX2xpYmds b3NzX2Etc2xlZXAubyBgdGVzdCAtZiAneHRlbnNhL3NsZWVwLlMnIHx8IGVjaG8gJyQoc3JjZGly KS8nYHh0ZW5zYS9zbGVlcC5TDQorQGFtX19mYXN0ZGVwQ0NBU19UUlVFQAkkKEFNX1ZfYXQpJChh bV9fbXYpIHh0ZW5zYS8kKERFUERJUikveHRlbnNhX2xpYmdsb3NzX2Etc2xlZXAuVHBvIHh0ZW5z YS8kKERFUERJUikveHRlbnNhX2xpYmdsb3NzX2Etc2xlZXAuUG8NCitAQU1ERVBfVFJVRUBAYW1f X2Zhc3RkZXBDQ0FTX0ZBTFNFQAkkKEFNX1ZfQ1BQQVMpc291cmNlPSd4dGVuc2Evc2xlZXAuUycg b2JqZWN0PSd4dGVuc2EveHRlbnNhX2xpYmdsb3NzX2Etc2xlZXAubycgbGlidG9vbD1ubyBAQU1E RVBCQUNLU0xBU0hADQorQEFNREVQX1RSVUVAQGFtX19mYXN0ZGVwQ0NBU19GQUxTRUAJREVQRElS PSQoREVQRElSKSAkKENDQVNERVBNT0RFKSAkKGRlcGNvbXApIEBBTURFUEJBQ0tTTEFTSEANCitA YW1fX2Zhc3RkZXBDQ0FTX0ZBTFNFQAkkKEFNX1ZfQ1BQQVNAYW1fX25vZGVwQCkkKENDQVMpICQo REVGUykgJChERUZBVUxUX0lOQ0xVREVTKSAkKElOQ0xVREVTKSAkKHh0ZW5zYV9saWJnbG9zc19h X0NQUEZMQUdTKSAkKENQUEZMQUdTKSAkKEFNX0NDQVNGTEFHUykgJChDQ0FTRkxBR1MpIC1jIC1v IHh0ZW5zYS94dGVuc2FfbGliZ2xvc3NfYS1zbGVlcC5vIGB0ZXN0IC1mICd4dGVuc2Evc2xlZXAu UycgfHwgZWNobyAnJChzcmNkaXIpLydgeHRlbnNhL3NsZWVwLlMNCisNCit4dGVuc2EveHRlbnNh X2xpYmdsb3NzX2Etc2xlZXAub2JqOiB4dGVuc2Evc2xlZXAuUw0KK0BhbV9fZmFzdGRlcENDQVNf VFJVRUAJJChBTV9WX0NQUEFTKSQoQ0NBUykgJChERUZTKSAkKERFRkFVTFRfSU5DTFVERVMpICQo SU5DTFVERVMpICQoeHRlbnNhX2xpYmdsb3NzX2FfQ1BQRkxBR1MpICQoQ1BQRkxBR1MpICQoQU1f Q0NBU0ZMQUdTKSAkKENDQVNGTEFHUykgLU1UIHh0ZW5zYS94dGVuc2FfbGliZ2xvc3NfYS1zbGVl cC5vYmogLU1EIC1NUCAtTUYgeHRlbnNhLyQoREVQRElSKS94dGVuc2FfbGliZ2xvc3NfYS1zbGVl cC5UcG8gLWMgLW8geHRlbnNhL3h0ZW5zYV9saWJnbG9zc19hLXNsZWVwLm9iaiBgaWYgdGVzdCAt ZiAneHRlbnNhL3NsZWVwLlMnOyB0aGVuICQoQ1lHUEFUSF9XKSAneHRlbnNhL3NsZWVwLlMnOyBl bHNlICQoQ1lHUEFUSF9XKSAnJChzcmNkaXIpL3h0ZW5zYS9zbGVlcC5TJzsgZmlgDQorQGFtX19m YXN0ZGVwQ0NBU19UUlVFQAkkKEFNX1ZfYXQpJChhbV9fbXYpIHh0ZW5zYS8kKERFUERJUikveHRl bnNhX2xpYmdsb3NzX2Etc2xlZXAuVHBvIHh0ZW5zYS8kKERFUERJUikveHRlbnNhX2xpYmdsb3Nz X2Etc2xlZXAuUG8NCitAQU1ERVBfVFJVRUBAYW1fX2Zhc3RkZXBDQ0FTX0ZBTFNFQAkkKEFNX1Zf Q1BQQVMpc291cmNlPSd4dGVuc2Evc2xlZXAuUycgb2JqZWN0PSd4dGVuc2EveHRlbnNhX2xpYmds b3NzX2Etc2xlZXAub2JqJyBsaWJ0b29sPW5vIEBBTURFUEJBQ0tTTEFTSEANCitAQU1ERVBfVFJV RUBAYW1fX2Zhc3RkZXBDQ0FTX0ZBTFNFQAlERVBESVI9JChERVBESVIpICQoQ0NBU0RFUE1PREUp ICQoZGVwY29tcCkgQEFNREVQQkFDS1NMQVNIQA0KK0BhbV9fZmFzdGRlcENDQVNfRkFMU0VACSQo QU1fVl9DUFBBU0BhbV9fbm9kZXBAKSQoQ0NBUykgJChERUZTKSAkKERFRkFVTFRfSU5DTFVERVMp ICQoSU5DTFVERVMpICQoeHRlbnNhX2xpYmdsb3NzX2FfQ1BQRkxBR1MpICQoQ1BQRkxBR1MpICQo QU1fQ0NBU0ZMQUdTKSAkKENDQVNGTEFHUykgLWMgLW8geHRlbnNhL3h0ZW5zYV9saWJnbG9zc19h LXNsZWVwLm9iaiBgaWYgdGVzdCAtZiAneHRlbnNhL3NsZWVwLlMnOyB0aGVuICQoQ1lHUEFUSF9X KSAneHRlbnNhL3NsZWVwLlMnOyBlbHNlICQoQ1lHUEFUSF9XKSAnJChzcmNkaXIpL3h0ZW5zYS9z bGVlcC5TJzsgZmlgDQorDQoreHRlbnNhL3h0ZW5zYV9saWJnbG9zc19hLXdpbmRvdy12ZWN0b3Jz Lm86IHh0ZW5zYS93aW5kb3ctdmVjdG9ycy5TDQorQGFtX19mYXN0ZGVwQ0NBU19UUlVFQAkkKEFN X1ZfQ1BQQVMpJChDQ0FTKSAkKERFRlMpICQoREVGQVVMVF9JTkNMVURFUykgJChJTkNMVURFUykg JCh4dGVuc2FfbGliZ2xvc3NfYV9DUFBGTEFHUykgJChDUFBGTEFHUykgJChBTV9DQ0FTRkxBR1Mp ICQoQ0NBU0ZMQUdTKSAtTVQgeHRlbnNhL3h0ZW5zYV9saWJnbG9zc19hLXdpbmRvdy12ZWN0b3Jz Lm8gLU1EIC1NUCAtTUYgeHRlbnNhLyQoREVQRElSKS94dGVuc2FfbGliZ2xvc3NfYS13aW5kb3ct dmVjdG9ycy5UcG8gLWMgLW8geHRlbnNhL3h0ZW5zYV9saWJnbG9zc19hLXdpbmRvdy12ZWN0b3Jz Lm8gYHRlc3QgLWYgJ3h0ZW5zYS93aW5kb3ctdmVjdG9ycy5TJyB8fCBlY2hvICckKHNyY2Rpcikv J2B4dGVuc2Evd2luZG93LXZlY3RvcnMuUw0KK0BhbV9fZmFzdGRlcENDQVNfVFJVRUAJJChBTV9W X2F0KSQoYW1fX212KSB4dGVuc2EvJChERVBESVIpL3h0ZW5zYV9saWJnbG9zc19hLXdpbmRvdy12 ZWN0b3JzLlRwbyB4dGVuc2EvJChERVBESVIpL3h0ZW5zYV9saWJnbG9zc19hLXdpbmRvdy12ZWN0 b3JzLlBvDQorQEFNREVQX1RSVUVAQGFtX19mYXN0ZGVwQ0NBU19GQUxTRUAJJChBTV9WX0NQUEFT KXNvdXJjZT0neHRlbnNhL3dpbmRvdy12ZWN0b3JzLlMnIG9iamVjdD0neHRlbnNhL3h0ZW5zYV9s aWJnbG9zc19hLXdpbmRvdy12ZWN0b3JzLm8nIGxpYnRvb2w9bm8gQEFNREVQQkFDS1NMQVNIQA0K K0BBTURFUF9UUlVFQEBhbV9fZmFzdGRlcENDQVNfRkFMU0VACURFUERJUj0kKERFUERJUikgJChD Q0FTREVQTU9ERSkgJChkZXBjb21wKSBAQU1ERVBCQUNLU0xBU0hADQorQGFtX19mYXN0ZGVwQ0NB U19GQUxTRUAJJChBTV9WX0NQUEFTQGFtX19ub2RlcEApJChDQ0FTKSAkKERFRlMpICQoREVGQVVM VF9JTkNMVURFUykgJChJTkNMVURFUykgJCh4dGVuc2FfbGliZ2xvc3NfYV9DUFBGTEFHUykgJChD UFBGTEFHUykgJChBTV9DQ0FTRkxBR1MpICQoQ0NBU0ZMQUdTKSAtYyAtbyB4dGVuc2EveHRlbnNh X2xpYmdsb3NzX2Etd2luZG93LXZlY3RvcnMubyBgdGVzdCAtZiAneHRlbnNhL3dpbmRvdy12ZWN0 b3JzLlMnIHx8IGVjaG8gJyQoc3JjZGlyKS8nYHh0ZW5zYS93aW5kb3ctdmVjdG9ycy5TDQorDQor eHRlbnNhL3h0ZW5zYV9saWJnbG9zc19hLXdpbmRvdy12ZWN0b3JzLm9iajogeHRlbnNhL3dpbmRv dy12ZWN0b3JzLlMNCitAYW1fX2Zhc3RkZXBDQ0FTX1RSVUVACSQoQU1fVl9DUFBBUykkKENDQVMp ICQoREVGUykgJChERUZBVUxUX0lOQ0xVREVTKSAkKElOQ0xVREVTKSAkKHh0ZW5zYV9saWJnbG9z c19hX0NQUEZMQUdTKSAkKENQUEZMQUdTKSAkKEFNX0NDQVNGTEFHUykgJChDQ0FTRkxBR1MpIC1N VCB4dGVuc2EveHRlbnNhX2xpYmdsb3NzX2Etd2luZG93LXZlY3RvcnMub2JqIC1NRCAtTVAgLU1G IHh0ZW5zYS8kKERFUERJUikveHRlbnNhX2xpYmdsb3NzX2Etd2luZG93LXZlY3RvcnMuVHBvIC1j IC1vIHh0ZW5zYS94dGVuc2FfbGliZ2xvc3NfYS13aW5kb3ctdmVjdG9ycy5vYmogYGlmIHRlc3Qg LWYgJ3h0ZW5zYS93aW5kb3ctdmVjdG9ycy5TJzsgdGhlbiAkKENZR1BBVEhfVykgJ3h0ZW5zYS93 aW5kb3ctdmVjdG9ycy5TJzsgZWxzZSAkKENZR1BBVEhfVykgJyQoc3JjZGlyKS94dGVuc2Evd2lu ZG93LXZlY3RvcnMuUyc7IGZpYA0KK0BhbV9fZmFzdGRlcENDQVNfVFJVRUAJJChBTV9WX2F0KSQo YW1fX212KSB4dGVuc2EvJChERVBESVIpL3h0ZW5zYV9saWJnbG9zc19hLXdpbmRvdy12ZWN0b3Jz LlRwbyB4dGVuc2EvJChERVBESVIpL3h0ZW5zYV9saWJnbG9zc19hLXdpbmRvdy12ZWN0b3JzLlBv DQorQEFNREVQX1RSVUVAQGFtX19mYXN0ZGVwQ0NBU19GQUxTRUAJJChBTV9WX0NQUEFTKXNvdXJj ZT0neHRlbnNhL3dpbmRvdy12ZWN0b3JzLlMnIG9iamVjdD0neHRlbnNhL3h0ZW5zYV9saWJnbG9z c19hLXdpbmRvdy12ZWN0b3JzLm9iaicgbGlidG9vbD1ubyBAQU1ERVBCQUNLU0xBU0hADQorQEFN REVQX1RSVUVAQGFtX19mYXN0ZGVwQ0NBU19GQUxTRUAJREVQRElSPSQoREVQRElSKSAkKENDQVNE RVBNT0RFKSAkKGRlcGNvbXApIEBBTURFUEJBQ0tTTEFTSEANCitAYW1fX2Zhc3RkZXBDQ0FTX0ZB TFNFQAkkKEFNX1ZfQ1BQQVNAYW1fX25vZGVwQCkkKENDQVMpICQoREVGUykgJChERUZBVUxUX0lO Q0xVREVTKSAkKElOQ0xVREVTKSAkKHh0ZW5zYV9saWJnbG9zc19hX0NQUEZMQUdTKSAkKENQUEZM QUdTKSAkKEFNX0NDQVNGTEFHUykgJChDQ0FTRkxBR1MpIC1jIC1vIHh0ZW5zYS94dGVuc2FfbGli Z2xvc3NfYS13aW5kb3ctdmVjdG9ycy5vYmogYGlmIHRlc3QgLWYgJ3h0ZW5zYS93aW5kb3ctdmVj dG9ycy5TJzsgdGhlbiAkKENZR1BBVEhfVykgJ3h0ZW5zYS93aW5kb3ctdmVjdG9ycy5TJzsgZWxz ZSAkKENZR1BBVEhfVykgJyQoc3JjZGlyKS94dGVuc2Evd2luZG93LXZlY3RvcnMuUyc7IGZpYA0K Kw0KK3h0ZW5zYS94dGVuc2FfbGlic3lzX3FlbXVfYS1zaW0tdmVjdG9ycy5vOiB4dGVuc2Evc2lt LXZlY3RvcnMuUw0KK0BhbV9fZmFzdGRlcENDQVNfVFJVRUAJJChBTV9WX0NQUEFTKSQoQ0NBUykg JChERUZTKSAkKERFRkFVTFRfSU5DTFVERVMpICQoSU5DTFVERVMpICQoeHRlbnNhX2xpYnN5c19x ZW11X2FfQ1BQRkxBR1MpICQoQ1BQRkxBR1MpICQoQU1fQ0NBU0ZMQUdTKSAkKENDQVNGTEFHUykg LU1UIHh0ZW5zYS94dGVuc2FfbGlic3lzX3FlbXVfYS1zaW0tdmVjdG9ycy5vIC1NRCAtTVAgLU1G IHh0ZW5zYS8kKERFUERJUikveHRlbnNhX2xpYnN5c19xZW11X2Etc2ltLXZlY3RvcnMuVHBvIC1j IC1vIHh0ZW5zYS94dGVuc2FfbGlic3lzX3FlbXVfYS1zaW0tdmVjdG9ycy5vIGB0ZXN0IC1mICd4 dGVuc2Evc2ltLXZlY3RvcnMuUycgfHwgZWNobyAnJChzcmNkaXIpLydgeHRlbnNhL3NpbS12ZWN0 b3JzLlMNCitAYW1fX2Zhc3RkZXBDQ0FTX1RSVUVACSQoQU1fVl9hdCkkKGFtX19tdikgeHRlbnNh LyQoREVQRElSKS94dGVuc2FfbGlic3lzX3FlbXVfYS1zaW0tdmVjdG9ycy5UcG8geHRlbnNhLyQo REVQRElSKS94dGVuc2FfbGlic3lzX3FlbXVfYS1zaW0tdmVjdG9ycy5Qbw0KK0BBTURFUF9UUlVF QEBhbV9fZmFzdGRlcENDQVNfRkFMU0VACSQoQU1fVl9DUFBBUylzb3VyY2U9J3h0ZW5zYS9zaW0t dmVjdG9ycy5TJyBvYmplY3Q9J3h0ZW5zYS94dGVuc2FfbGlic3lzX3FlbXVfYS1zaW0tdmVjdG9y cy5vJyBsaWJ0b29sPW5vIEBBTURFUEJBQ0tTTEFTSEANCitAQU1ERVBfVFJVRUBAYW1fX2Zhc3Rk ZXBDQ0FTX0ZBTFNFQAlERVBESVI9JChERVBESVIpICQoQ0NBU0RFUE1PREUpICQoZGVwY29tcCkg QEFNREVQQkFDS1NMQVNIQA0KK0BhbV9fZmFzdGRlcENDQVNfRkFMU0VACSQoQU1fVl9DUFBBU0Bh bV9fbm9kZXBAKSQoQ0NBUykgJChERUZTKSAkKERFRkFVTFRfSU5DTFVERVMpICQoSU5DTFVERVMp ICQoeHRlbnNhX2xpYnN5c19xZW11X2FfQ1BQRkxBR1MpICQoQ1BQRkxBR1MpICQoQU1fQ0NBU0ZM QUdTKSAkKENDQVNGTEFHUykgLWMgLW8geHRlbnNhL3h0ZW5zYV9saWJzeXNfcWVtdV9hLXNpbS12 ZWN0b3JzLm8gYHRlc3QgLWYgJ3h0ZW5zYS9zaW0tdmVjdG9ycy5TJyB8fCBlY2hvICckKHNyY2Rp cikvJ2B4dGVuc2Evc2ltLXZlY3RvcnMuUw0KKw0KK3h0ZW5zYS94dGVuc2FfbGlic3lzX3FlbXVf YS1zaW0tdmVjdG9ycy5vYmo6IHh0ZW5zYS9zaW0tdmVjdG9ycy5TDQorQGFtX19mYXN0ZGVwQ0NB U19UUlVFQAkkKEFNX1ZfQ1BQQVMpJChDQ0FTKSAkKERFRlMpICQoREVGQVVMVF9JTkNMVURFUykg JChJTkNMVURFUykgJCh4dGVuc2FfbGlic3lzX3FlbXVfYV9DUFBGTEFHUykgJChDUFBGTEFHUykg JChBTV9DQ0FTRkxBR1MpICQoQ0NBU0ZMQUdTKSAtTVQgeHRlbnNhL3h0ZW5zYV9saWJzeXNfcWVt dV9hLXNpbS12ZWN0b3JzLm9iaiAtTUQgLU1QIC1NRiB4dGVuc2EvJChERVBESVIpL3h0ZW5zYV9s aWJzeXNfcWVtdV9hLXNpbS12ZWN0b3JzLlRwbyAtYyAtbyB4dGVuc2EveHRlbnNhX2xpYnN5c19x ZW11X2Etc2ltLXZlY3RvcnMub2JqIGBpZiB0ZXN0IC1mICd4dGVuc2Evc2ltLXZlY3RvcnMuUyc7 IHRoZW4gJChDWUdQQVRIX1cpICd4dGVuc2Evc2ltLXZlY3RvcnMuUyc7IGVsc2UgJChDWUdQQVRI X1cpICckKHNyY2RpcikveHRlbnNhL3NpbS12ZWN0b3JzLlMnOyBmaWANCitAYW1fX2Zhc3RkZXBD Q0FTX1RSVUVACSQoQU1fVl9hdCkkKGFtX19tdikgeHRlbnNhLyQoREVQRElSKS94dGVuc2FfbGli c3lzX3FlbXVfYS1zaW0tdmVjdG9ycy5UcG8geHRlbnNhLyQoREVQRElSKS94dGVuc2FfbGlic3lz X3FlbXVfYS1zaW0tdmVjdG9ycy5Qbw0KK0BBTURFUF9UUlVFQEBhbV9fZmFzdGRlcENDQVNfRkFM U0VACSQoQU1fVl9DUFBBUylzb3VyY2U9J3h0ZW5zYS9zaW0tdmVjdG9ycy5TJyBvYmplY3Q9J3h0 ZW5zYS94dGVuc2FfbGlic3lzX3FlbXVfYS1zaW0tdmVjdG9ycy5vYmonIGxpYnRvb2w9bm8gQEFN REVQQkFDS1NMQVNIQA0KK0BBTURFUF9UUlVFQEBhbV9fZmFzdGRlcENDQVNfRkFMU0VACURFUERJ Uj0kKERFUERJUikgJChDQ0FTREVQTU9ERSkgJChkZXBjb21wKSBAQU1ERVBCQUNLU0xBU0hADQor QGFtX19mYXN0ZGVwQ0NBU19GQUxTRUAJJChBTV9WX0NQUEFTQGFtX19ub2RlcEApJChDQ0FTKSAk KERFRlMpICQoREVGQVVMVF9JTkNMVURFUykgJChJTkNMVURFUykgJCh4dGVuc2FfbGlic3lzX3Fl bXVfYV9DUFBGTEFHUykgJChDUFBGTEFHUykgJChBTV9DQ0FTRkxBR1MpICQoQ0NBU0ZMQUdTKSAt YyAtbyB4dGVuc2EveHRlbnNhX2xpYnN5c19xZW11X2Etc2ltLXZlY3RvcnMub2JqIGBpZiB0ZXN0 IC1mICd4dGVuc2Evc2ltLXZlY3RvcnMuUyc7IHRoZW4gJChDWUdQQVRIX1cpICd4dGVuc2Evc2lt LXZlY3RvcnMuUyc7IGVsc2UgJChDWUdQQVRIX1cpICckKHNyY2RpcikveHRlbnNhL3NpbS12ZWN0 b3JzLlMnOyBmaWANCisNCit4dGVuc2EveHRlbnNhX2xpYnN5c19xZW11X2Etc2ltLWNhbGwubzog eHRlbnNhL3NpbS1jYWxsLlMNCitAYW1fX2Zhc3RkZXBDQ0FTX1RSVUVACSQoQU1fVl9DUFBBUykk KENDQVMpICQoREVGUykgJChERUZBVUxUX0lOQ0xVREVTKSAkKElOQ0xVREVTKSAkKHh0ZW5zYV9s aWJzeXNfcWVtdV9hX0NQUEZMQUdTKSAkKENQUEZMQUdTKSAkKEFNX0NDQVNGTEFHUykgJChDQ0FT RkxBR1MpIC1NVCB4dGVuc2EveHRlbnNhX2xpYnN5c19xZW11X2Etc2ltLWNhbGwubyAtTUQgLU1Q IC1NRiB4dGVuc2EvJChERVBESVIpL3h0ZW5zYV9saWJzeXNfcWVtdV9hLXNpbS1jYWxsLlRwbyAt YyAtbyB4dGVuc2EveHRlbnNhX2xpYnN5c19xZW11X2Etc2ltLWNhbGwubyBgdGVzdCAtZiAneHRl bnNhL3NpbS1jYWxsLlMnIHx8IGVjaG8gJyQoc3JjZGlyKS8nYHh0ZW5zYS9zaW0tY2FsbC5TDQor QGFtX19mYXN0ZGVwQ0NBU19UUlVFQAkkKEFNX1ZfYXQpJChhbV9fbXYpIHh0ZW5zYS8kKERFUERJ UikveHRlbnNhX2xpYnN5c19xZW11X2Etc2ltLWNhbGwuVHBvIHh0ZW5zYS8kKERFUERJUikveHRl bnNhX2xpYnN5c19xZW11X2Etc2ltLWNhbGwuUG8NCitAQU1ERVBfVFJVRUBAYW1fX2Zhc3RkZXBD Q0FTX0ZBTFNFQAkkKEFNX1ZfQ1BQQVMpc291cmNlPSd4dGVuc2Evc2ltLWNhbGwuUycgb2JqZWN0 PSd4dGVuc2EveHRlbnNhX2xpYnN5c19xZW11X2Etc2ltLWNhbGwubycgbGlidG9vbD1ubyBAQU1E RVBCQUNLU0xBU0hADQorQEFNREVQX1RSVUVAQGFtX19mYXN0ZGVwQ0NBU19GQUxTRUAJREVQRElS PSQoREVQRElSKSAkKENDQVNERVBNT0RFKSAkKGRlcGNvbXApIEBBTURFUEJBQ0tTTEFTSEANCitA YW1fX2Zhc3RkZXBDQ0FTX0ZBTFNFQAkkKEFNX1ZfQ1BQQVNAYW1fX25vZGVwQCkkKENDQVMpICQo REVGUykgJChERUZBVUxUX0lOQ0xVREVTKSAkKElOQ0xVREVTKSAkKHh0ZW5zYV9saWJzeXNfcWVt dV9hX0NQUEZMQUdTKSAkKENQUEZMQUdTKSAkKEFNX0NDQVNGTEFHUykgJChDQ0FTRkxBR1MpIC1j IC1vIHh0ZW5zYS94dGVuc2FfbGlic3lzX3FlbXVfYS1zaW0tY2FsbC5vIGB0ZXN0IC1mICd4dGVu c2Evc2ltLWNhbGwuUycgfHwgZWNobyAnJChzcmNkaXIpLydgeHRlbnNhL3NpbS1jYWxsLlMNCisN Cit4dGVuc2EveHRlbnNhX2xpYnN5c19xZW11X2Etc2ltLWNhbGwub2JqOiB4dGVuc2Evc2ltLWNh bGwuUw0KK0BhbV9fZmFzdGRlcENDQVNfVFJVRUAJJChBTV9WX0NQUEFTKSQoQ0NBUykgJChERUZT KSAkKERFRkFVTFRfSU5DTFVERVMpICQoSU5DTFVERVMpICQoeHRlbnNhX2xpYnN5c19xZW11X2Ff Q1BQRkxBR1MpICQoQ1BQRkxBR1MpICQoQU1fQ0NBU0ZMQUdTKSAkKENDQVNGTEFHUykgLU1UIHh0 ZW5zYS94dGVuc2FfbGlic3lzX3FlbXVfYS1zaW0tY2FsbC5vYmogLU1EIC1NUCAtTUYgeHRlbnNh LyQoREVQRElSKS94dGVuc2FfbGlic3lzX3FlbXVfYS1zaW0tY2FsbC5UcG8gLWMgLW8geHRlbnNh L3h0ZW5zYV9saWJzeXNfcWVtdV9hLXNpbS1jYWxsLm9iaiBgaWYgdGVzdCAtZiAneHRlbnNhL3Np bS1jYWxsLlMnOyB0aGVuICQoQ1lHUEFUSF9XKSAneHRlbnNhL3NpbS1jYWxsLlMnOyBlbHNlICQo Q1lHUEFUSF9XKSAnJChzcmNkaXIpL3h0ZW5zYS9zaW0tY2FsbC5TJzsgZmlgDQorQGFtX19mYXN0 ZGVwQ0NBU19UUlVFQAkkKEFNX1ZfYXQpJChhbV9fbXYpIHh0ZW5zYS8kKERFUERJUikveHRlbnNh X2xpYnN5c19xZW11X2Etc2ltLWNhbGwuVHBvIHh0ZW5zYS8kKERFUERJUikveHRlbnNhX2xpYnN5 c19xZW11X2Etc2ltLWNhbGwuUG8NCitAQU1ERVBfVFJVRUBAYW1fX2Zhc3RkZXBDQ0FTX0ZBTFNF QAkkKEFNX1ZfQ1BQQVMpc291cmNlPSd4dGVuc2Evc2ltLWNhbGwuUycgb2JqZWN0PSd4dGVuc2Ev eHRlbnNhX2xpYnN5c19xZW11X2Etc2ltLWNhbGwub2JqJyBsaWJ0b29sPW5vIEBBTURFUEJBQ0tT TEFTSEANCitAQU1ERVBfVFJVRUBAYW1fX2Zhc3RkZXBDQ0FTX0ZBTFNFQAlERVBESVI9JChERVBE SVIpICQoQ0NBU0RFUE1PREUpICQoZGVwY29tcCkgQEFNREVQQkFDS1NMQVNIQA0KK0BhbV9fZmFz dGRlcENDQVNfRkFMU0VACSQoQU1fVl9DUFBBU0BhbV9fbm9kZXBAKSQoQ0NBUykgJChERUZTKSAk KERFRkFVTFRfSU5DTFVERVMpICQoSU5DTFVERVMpICQoeHRlbnNhX2xpYnN5c19xZW11X2FfQ1BQ RkxBR1MpICQoQ1BQRkxBR1MpICQoQU1fQ0NBU0ZMQUdTKSAkKENDQVNGTEFHUykgLWMgLW8geHRl bnNhL3h0ZW5zYV9saWJzeXNfcWVtdV9hLXNpbS1jYWxsLm9iaiBgaWYgdGVzdCAtZiAneHRlbnNh L3NpbS1jYWxsLlMnOyB0aGVuICQoQ1lHUEFUSF9XKSAneHRlbnNhL3NpbS1jYWxsLlMnOyBlbHNl ICQoQ1lHUEFUSF9XKSAnJChzcmNkaXIpL3h0ZW5zYS9zaW0tY2FsbC5TJzsgZmlgDQorDQogLmMu bzoNCiBAYW1fX2Zhc3RkZXBDQ19UUlVFQAkkKEFNX1ZfQ0MpZGVwYmFzZT1gZWNobyAkQCB8IHNl ZCAnc3xbXi9dKiQkfCQoREVQRElSKS8mfDtzfFwubyQkfHwnYDtcDQogQGFtX19mYXN0ZGVwQ0Nf VFJVRUAJJChDT01QSUxFKSAtTVQgJEAgLU1EIC1NUCAtTUYgJCRkZXBiYXNlLlRwbyAtYyAtbyAk QCAkPCAmJlwNCkBAIC0zNzg3LDYgKzM5ODIsNzYgQEAgcmlzY3YvcmlzY3ZfbGlic2VtaWhvc3Rf YS1zZW1paG9zdC1zeXNfd3JpdGUub2JqOiByaXNjdi9zZW1paG9zdC1zeXNfd3JpdGUuYw0KIEBB TURFUF9UUlVFQEBhbV9fZmFzdGRlcENDX0ZBTFNFQAlERVBESVI9JChERVBESVIpICQoQ0NERVBN T0RFKSAkKGRlcGNvbXApIEBBTURFUEJBQ0tTTEFTSEANCiBAYW1fX2Zhc3RkZXBDQ19GQUxTRUAJ JChBTV9WX0NDQGFtX19ub2RlcEApJChDQykgJChERUZTKSAkKERFRkFVTFRfSU5DTFVERVMpICQo SU5DTFVERVMpICQocmlzY3ZfbGlic2VtaWhvc3RfYV9DUFBGTEFHUykgJChDUFBGTEFHUykgJChB TV9DRkxBR1MpICQoQ0ZMQUdTKSAtYyAtbyByaXNjdi9yaXNjdl9saWJzZW1paG9zdF9hLXNlbWlo b3N0LXN5c193cml0ZS5vYmogYGlmIHRlc3QgLWYgJ3Jpc2N2L3NlbWlob3N0LXN5c193cml0ZS5j JzsgdGhlbiAkKENZR1BBVEhfVykgJ3Jpc2N2L3NlbWlob3N0LXN5c193cml0ZS5jJzsgZWxzZSAk KENZR1BBVEhfVykgJyQoc3JjZGlyKS9yaXNjdi9zZW1paG9zdC1zeXNfd3JpdGUuYyc7IGZpYA0K IA0KK3h0ZW5zYS94dGVuc2FfbGliZ2xvc3NfYS1zeXNjYWxscy5vOiB4dGVuc2Evc3lzY2FsbHMu Yw0KK0BhbV9fZmFzdGRlcENDX1RSVUVACSQoQU1fVl9DQykkKENDKSAkKERFRlMpICQoREVGQVVM VF9JTkNMVURFUykgJChJTkNMVURFUykgJCh4dGVuc2FfbGliZ2xvc3NfYV9DUFBGTEFHUykgJChD UFBGTEFHUykgJChBTV9DRkxBR1MpICQoQ0ZMQUdTKSAtTVQgeHRlbnNhL3h0ZW5zYV9saWJnbG9z c19hLXN5c2NhbGxzLm8gLU1EIC1NUCAtTUYgeHRlbnNhLyQoREVQRElSKS94dGVuc2FfbGliZ2xv c3NfYS1zeXNjYWxscy5UcG8gLWMgLW8geHRlbnNhL3h0ZW5zYV9saWJnbG9zc19hLXN5c2NhbGxz Lm8gYHRlc3QgLWYgJ3h0ZW5zYS9zeXNjYWxscy5jJyB8fCBlY2hvICckKHNyY2RpcikvJ2B4dGVu c2Evc3lzY2FsbHMuYw0KK0BhbV9fZmFzdGRlcENDX1RSVUVACSQoQU1fVl9hdCkkKGFtX19tdikg eHRlbnNhLyQoREVQRElSKS94dGVuc2FfbGliZ2xvc3NfYS1zeXNjYWxscy5UcG8geHRlbnNhLyQo REVQRElSKS94dGVuc2FfbGliZ2xvc3NfYS1zeXNjYWxscy5Qbw0KK0BBTURFUF9UUlVFQEBhbV9f ZmFzdGRlcENDX0ZBTFNFQAkkKEFNX1ZfQ0Mpc291cmNlPSd4dGVuc2Evc3lzY2FsbHMuYycgb2Jq ZWN0PSd4dGVuc2EveHRlbnNhX2xpYmdsb3NzX2Etc3lzY2FsbHMubycgbGlidG9vbD1ubyBAQU1E RVBCQUNLU0xBU0hADQorQEFNREVQX1RSVUVAQGFtX19mYXN0ZGVwQ0NfRkFMU0VACURFUERJUj0k KERFUERJUikgJChDQ0RFUE1PREUpICQoZGVwY29tcCkgQEFNREVQQkFDS1NMQVNIQA0KK0BhbV9f ZmFzdGRlcENDX0ZBTFNFQAkkKEFNX1ZfQ0NAYW1fX25vZGVwQCkkKENDKSAkKERFRlMpICQoREVG QVVMVF9JTkNMVURFUykgJChJTkNMVURFUykgJCh4dGVuc2FfbGliZ2xvc3NfYV9DUFBGTEFHUykg JChDUFBGTEFHUykgJChBTV9DRkxBR1MpICQoQ0ZMQUdTKSAtYyAtbyB4dGVuc2EveHRlbnNhX2xp Ymdsb3NzX2Etc3lzY2FsbHMubyBgdGVzdCAtZiAneHRlbnNhL3N5c2NhbGxzLmMnIHx8IGVjaG8g JyQoc3JjZGlyKS8nYHh0ZW5zYS9zeXNjYWxscy5jDQorDQoreHRlbnNhL3h0ZW5zYV9saWJnbG9z c19hLXN5c2NhbGxzLm9iajogeHRlbnNhL3N5c2NhbGxzLmMNCitAYW1fX2Zhc3RkZXBDQ19UUlVF QAkkKEFNX1ZfQ0MpJChDQykgJChERUZTKSAkKERFRkFVTFRfSU5DTFVERVMpICQoSU5DTFVERVMp ICQoeHRlbnNhX2xpYmdsb3NzX2FfQ1BQRkxBR1MpICQoQ1BQRkxBR1MpICQoQU1fQ0ZMQUdTKSAk KENGTEFHUykgLU1UIHh0ZW5zYS94dGVuc2FfbGliZ2xvc3NfYS1zeXNjYWxscy5vYmogLU1EIC1N UCAtTUYgeHRlbnNhLyQoREVQRElSKS94dGVuc2FfbGliZ2xvc3NfYS1zeXNjYWxscy5UcG8gLWMg LW8geHRlbnNhL3h0ZW5zYV9saWJnbG9zc19hLXN5c2NhbGxzLm9iaiBgaWYgdGVzdCAtZiAneHRl bnNhL3N5c2NhbGxzLmMnOyB0aGVuICQoQ1lHUEFUSF9XKSAneHRlbnNhL3N5c2NhbGxzLmMnOyBl bHNlICQoQ1lHUEFUSF9XKSAnJChzcmNkaXIpL3h0ZW5zYS9zeXNjYWxscy5jJzsgZmlgDQorQGFt X19mYXN0ZGVwQ0NfVFJVRUAJJChBTV9WX2F0KSQoYW1fX212KSB4dGVuc2EvJChERVBESVIpL3h0 ZW5zYV9saWJnbG9zc19hLXN5c2NhbGxzLlRwbyB4dGVuc2EvJChERVBESVIpL3h0ZW5zYV9saWJn bG9zc19hLXN5c2NhbGxzLlBvDQorQEFNREVQX1RSVUVAQGFtX19mYXN0ZGVwQ0NfRkFMU0VACSQo QU1fVl9DQylzb3VyY2U9J3h0ZW5zYS9zeXNjYWxscy5jJyBvYmplY3Q9J3h0ZW5zYS94dGVuc2Ff bGliZ2xvc3NfYS1zeXNjYWxscy5vYmonIGxpYnRvb2w9bm8gQEFNREVQQkFDS1NMQVNIQA0KK0BB TURFUF9UUlVFQEBhbV9fZmFzdGRlcENDX0ZBTFNFQAlERVBESVI9JChERVBESVIpICQoQ0NERVBN T0RFKSAkKGRlcGNvbXApIEBBTURFUEJBQ0tTTEFTSEANCitAYW1fX2Zhc3RkZXBDQ19GQUxTRUAJ JChBTV9WX0NDQGFtX19ub2RlcEApJChDQykgJChERUZTKSAkKERFRkFVTFRfSU5DTFVERVMpICQo SU5DTFVERVMpICQoeHRlbnNhX2xpYmdsb3NzX2FfQ1BQRkxBR1MpICQoQ1BQRkxBR1MpICQoQU1f Q0ZMQUdTKSAkKENGTEFHUykgLWMgLW8geHRlbnNhL3h0ZW5zYV9saWJnbG9zc19hLXN5c2NhbGxz Lm9iaiBgaWYgdGVzdCAtZiAneHRlbnNhL3N5c2NhbGxzLmMnOyB0aGVuICQoQ1lHUEFUSF9XKSAn eHRlbnNhL3N5c2NhbGxzLmMnOyBlbHNlICQoQ1lHUEFUSF9XKSAnJChzcmNkaXIpL3h0ZW5zYS9z eXNjYWxscy5jJzsgZmlgDQorDQoreHRlbnNhL2JvYXJkcy9lc3AzMi94dGVuc2FfbGliZ2xvc3Nf YS1ib2FyZC5vOiB4dGVuc2EvYm9hcmRzL2VzcDMyL2JvYXJkLmMNCitAYW1fX2Zhc3RkZXBDQ19U UlVFQAkkKEFNX1ZfQ0MpJChDQykgJChERUZTKSAkKERFRkFVTFRfSU5DTFVERVMpICQoSU5DTFVE RVMpICQoeHRlbnNhX2xpYmdsb3NzX2FfQ1BQRkxBR1MpICQoQ1BQRkxBR1MpICQoQU1fQ0ZMQUdT KSAkKENGTEFHUykgLU1UIHh0ZW5zYS9ib2FyZHMvZXNwMzIveHRlbnNhX2xpYmdsb3NzX2EtYm9h cmQubyAtTUQgLU1QIC1NRiB4dGVuc2EvYm9hcmRzL2VzcDMyLyQoREVQRElSKS94dGVuc2FfbGli Z2xvc3NfYS1ib2FyZC5UcG8gLWMgLW8geHRlbnNhL2JvYXJkcy9lc3AzMi94dGVuc2FfbGliZ2xv c3NfYS1ib2FyZC5vIGB0ZXN0IC1mICd4dGVuc2EvYm9hcmRzL2VzcDMyL2JvYXJkLmMnIHx8IGVj aG8gJyQoc3JjZGlyKS8nYHh0ZW5zYS9ib2FyZHMvZXNwMzIvYm9hcmQuYw0KK0BhbV9fZmFzdGRl cENDX1RSVUVACSQoQU1fVl9hdCkkKGFtX19tdikgeHRlbnNhL2JvYXJkcy9lc3AzMi8kKERFUERJ UikveHRlbnNhX2xpYmdsb3NzX2EtYm9hcmQuVHBvIHh0ZW5zYS9ib2FyZHMvZXNwMzIvJChERVBE SVIpL3h0ZW5zYV9saWJnbG9zc19hLWJvYXJkLlBvDQorQEFNREVQX1RSVUVAQGFtX19mYXN0ZGVw Q0NfRkFMU0VACSQoQU1fVl9DQylzb3VyY2U9J3h0ZW5zYS9ib2FyZHMvZXNwMzIvYm9hcmQuYycg b2JqZWN0PSd4dGVuc2EvYm9hcmRzL2VzcDMyL3h0ZW5zYV9saWJnbG9zc19hLWJvYXJkLm8nIGxp YnRvb2w9bm8gQEFNREVQQkFDS1NMQVNIQA0KK0BBTURFUF9UUlVFQEBhbV9fZmFzdGRlcENDX0ZB TFNFQAlERVBESVI9JChERVBESVIpICQoQ0NERVBNT0RFKSAkKGRlcGNvbXApIEBBTURFUEJBQ0tT TEFTSEANCitAYW1fX2Zhc3RkZXBDQ19GQUxTRUAJJChBTV9WX0NDQGFtX19ub2RlcEApJChDQykg JChERUZTKSAkKERFRkFVTFRfSU5DTFVERVMpICQoSU5DTFVERVMpICQoeHRlbnNhX2xpYmdsb3Nz X2FfQ1BQRkxBR1MpICQoQ1BQRkxBR1MpICQoQU1fQ0ZMQUdTKSAkKENGTEFHUykgLWMgLW8geHRl bnNhL2JvYXJkcy9lc3AzMi94dGVuc2FfbGliZ2xvc3NfYS1ib2FyZC5vIGB0ZXN0IC1mICd4dGVu c2EvYm9hcmRzL2VzcDMyL2JvYXJkLmMnIHx8IGVjaG8gJyQoc3JjZGlyKS8nYHh0ZW5zYS9ib2Fy ZHMvZXNwMzIvYm9hcmQuYw0KKw0KK3h0ZW5zYS9ib2FyZHMvZXNwMzIveHRlbnNhX2xpYmdsb3Nz X2EtYm9hcmQub2JqOiB4dGVuc2EvYm9hcmRzL2VzcDMyL2JvYXJkLmMNCitAYW1fX2Zhc3RkZXBD Q19UUlVFQAkkKEFNX1ZfQ0MpJChDQykgJChERUZTKSAkKERFRkFVTFRfSU5DTFVERVMpICQoSU5D TFVERVMpICQoeHRlbnNhX2xpYmdsb3NzX2FfQ1BQRkxBR1MpICQoQ1BQRkxBR1MpICQoQU1fQ0ZM QUdTKSAkKENGTEFHUykgLU1UIHh0ZW5zYS9ib2FyZHMvZXNwMzIveHRlbnNhX2xpYmdsb3NzX2Et Ym9hcmQub2JqIC1NRCAtTVAgLU1GIHh0ZW5zYS9ib2FyZHMvZXNwMzIvJChERVBESVIpL3h0ZW5z YV9saWJnbG9zc19hLWJvYXJkLlRwbyAtYyAtbyB4dGVuc2EvYm9hcmRzL2VzcDMyL3h0ZW5zYV9s aWJnbG9zc19hLWJvYXJkLm9iaiBgaWYgdGVzdCAtZiAneHRlbnNhL2JvYXJkcy9lc3AzMi9ib2Fy ZC5jJzsgdGhlbiAkKENZR1BBVEhfVykgJ3h0ZW5zYS9ib2FyZHMvZXNwMzIvYm9hcmQuYyc7IGVs c2UgJChDWUdQQVRIX1cpICckKHNyY2RpcikveHRlbnNhL2JvYXJkcy9lc3AzMi9ib2FyZC5jJzsg ZmlgDQorQGFtX19mYXN0ZGVwQ0NfVFJVRUAJJChBTV9WX2F0KSQoYW1fX212KSB4dGVuc2EvYm9h cmRzL2VzcDMyLyQoREVQRElSKS94dGVuc2FfbGliZ2xvc3NfYS1ib2FyZC5UcG8geHRlbnNhL2Jv YXJkcy9lc3AzMi8kKERFUERJUikveHRlbnNhX2xpYmdsb3NzX2EtYm9hcmQuUG8NCitAQU1ERVBf VFJVRUBAYW1fX2Zhc3RkZXBDQ19GQUxTRUAJJChBTV9WX0NDKXNvdXJjZT0neHRlbnNhL2JvYXJk cy9lc3AzMi9ib2FyZC5jJyBvYmplY3Q9J3h0ZW5zYS9ib2FyZHMvZXNwMzIveHRlbnNhX2xpYmds b3NzX2EtYm9hcmQub2JqJyBsaWJ0b29sPW5vIEBBTURFUEJBQ0tTTEFTSEANCitAQU1ERVBfVFJV RUBAYW1fX2Zhc3RkZXBDQ19GQUxTRUAJREVQRElSPSQoREVQRElSKSAkKENDREVQTU9ERSkgJChk ZXBjb21wKSBAQU1ERVBCQUNLU0xBU0hADQorQGFtX19mYXN0ZGVwQ0NfRkFMU0VACSQoQU1fVl9D Q0BhbV9fbm9kZXBAKSQoQ0MpICQoREVGUykgJChERUZBVUxUX0lOQ0xVREVTKSAkKElOQ0xVREVT KSAkKHh0ZW5zYV9saWJnbG9zc19hX0NQUEZMQUdTKSAkKENQUEZMQUdTKSAkKEFNX0NGTEFHUykg JChDRkxBR1MpIC1jIC1vIHh0ZW5zYS9ib2FyZHMvZXNwMzIveHRlbnNhX2xpYmdsb3NzX2EtYm9h cmQub2JqIGBpZiB0ZXN0IC1mICd4dGVuc2EvYm9hcmRzL2VzcDMyL2JvYXJkLmMnOyB0aGVuICQo Q1lHUEFUSF9XKSAneHRlbnNhL2JvYXJkcy9lc3AzMi9ib2FyZC5jJzsgZWxzZSAkKENZR1BBVEhf VykgJyQoc3JjZGlyKS94dGVuc2EvYm9hcmRzL2VzcDMyL2JvYXJkLmMnOyBmaWANCisNCit4dGVu c2EvYm9hcmRzL2VzcDMyczMveHRlbnNhX2xpYmdsb3NzX2EtYm9hcmQubzogeHRlbnNhL2JvYXJk cy9lc3AzMnMzL2JvYXJkLmMNCitAYW1fX2Zhc3RkZXBDQ19UUlVFQAkkKEFNX1ZfQ0MpJChDQykg JChERUZTKSAkKERFRkFVTFRfSU5DTFVERVMpICQoSU5DTFVERVMpICQoeHRlbnNhX2xpYmdsb3Nz X2FfQ1BQRkxBR1MpICQoQ1BQRkxBR1MpICQoQU1fQ0ZMQUdTKSAkKENGTEFHUykgLU1UIHh0ZW5z YS9ib2FyZHMvZXNwMzJzMy94dGVuc2FfbGliZ2xvc3NfYS1ib2FyZC5vIC1NRCAtTVAgLU1GIHh0 ZW5zYS9ib2FyZHMvZXNwMzJzMy8kKERFUERJUikveHRlbnNhX2xpYmdsb3NzX2EtYm9hcmQuVHBv IC1jIC1vIHh0ZW5zYS9ib2FyZHMvZXNwMzJzMy94dGVuc2FfbGliZ2xvc3NfYS1ib2FyZC5vIGB0 ZXN0IC1mICd4dGVuc2EvYm9hcmRzL2VzcDMyczMvYm9hcmQuYycgfHwgZWNobyAnJChzcmNkaXIp LydgeHRlbnNhL2JvYXJkcy9lc3AzMnMzL2JvYXJkLmMNCitAYW1fX2Zhc3RkZXBDQ19UUlVFQAkk KEFNX1ZfYXQpJChhbV9fbXYpIHh0ZW5zYS9ib2FyZHMvZXNwMzJzMy8kKERFUERJUikveHRlbnNh X2xpYmdsb3NzX2EtYm9hcmQuVHBvIHh0ZW5zYS9ib2FyZHMvZXNwMzJzMy8kKERFUERJUikveHRl bnNhX2xpYmdsb3NzX2EtYm9hcmQuUG8NCitAQU1ERVBfVFJVRUBAYW1fX2Zhc3RkZXBDQ19GQUxT RUAJJChBTV9WX0NDKXNvdXJjZT0neHRlbnNhL2JvYXJkcy9lc3AzMnMzL2JvYXJkLmMnIG9iamVj dD0neHRlbnNhL2JvYXJkcy9lc3AzMnMzL3h0ZW5zYV9saWJnbG9zc19hLWJvYXJkLm8nIGxpYnRv b2w9bm8gQEFNREVQQkFDS1NMQVNIQA0KK0BBTURFUF9UUlVFQEBhbV9fZmFzdGRlcENDX0ZBTFNF QAlERVBESVI9JChERVBESVIpICQoQ0NERVBNT0RFKSAkKGRlcGNvbXApIEBBTURFUEJBQ0tTTEFT SEANCitAYW1fX2Zhc3RkZXBDQ19GQUxTRUAJJChBTV9WX0NDQGFtX19ub2RlcEApJChDQykgJChE RUZTKSAkKERFRkFVTFRfSU5DTFVERVMpICQoSU5DTFVERVMpICQoeHRlbnNhX2xpYmdsb3NzX2Ff Q1BQRkxBR1MpICQoQ1BQRkxBR1MpICQoQU1fQ0ZMQUdTKSAkKENGTEFHUykgLWMgLW8geHRlbnNh L2JvYXJkcy9lc3AzMnMzL3h0ZW5zYV9saWJnbG9zc19hLWJvYXJkLm8gYHRlc3QgLWYgJ3h0ZW5z YS9ib2FyZHMvZXNwMzJzMy9ib2FyZC5jJyB8fCBlY2hvICckKHNyY2RpcikvJ2B4dGVuc2EvYm9h cmRzL2VzcDMyczMvYm9hcmQuYw0KKw0KK3h0ZW5zYS9ib2FyZHMvZXNwMzJzMy94dGVuc2FfbGli Z2xvc3NfYS1ib2FyZC5vYmo6IHh0ZW5zYS9ib2FyZHMvZXNwMzJzMy9ib2FyZC5jDQorQGFtX19m YXN0ZGVwQ0NfVFJVRUAJJChBTV9WX0NDKSQoQ0MpICQoREVGUykgJChERUZBVUxUX0lOQ0xVREVT KSAkKElOQ0xVREVTKSAkKHh0ZW5zYV9saWJnbG9zc19hX0NQUEZMQUdTKSAkKENQUEZMQUdTKSAk KEFNX0NGTEFHUykgJChDRkxBR1MpIC1NVCB4dGVuc2EvYm9hcmRzL2VzcDMyczMveHRlbnNhX2xp Ymdsb3NzX2EtYm9hcmQub2JqIC1NRCAtTVAgLU1GIHh0ZW5zYS9ib2FyZHMvZXNwMzJzMy8kKERF UERJUikveHRlbnNhX2xpYmdsb3NzX2EtYm9hcmQuVHBvIC1jIC1vIHh0ZW5zYS9ib2FyZHMvZXNw MzJzMy94dGVuc2FfbGliZ2xvc3NfYS1ib2FyZC5vYmogYGlmIHRlc3QgLWYgJ3h0ZW5zYS9ib2Fy ZHMvZXNwMzJzMy9ib2FyZC5jJzsgdGhlbiAkKENZR1BBVEhfVykgJ3h0ZW5zYS9ib2FyZHMvZXNw MzJzMy9ib2FyZC5jJzsgZWxzZSAkKENZR1BBVEhfVykgJyQoc3JjZGlyKS94dGVuc2EvYm9hcmRz L2VzcDMyczMvYm9hcmQuYyc7IGZpYA0KK0BhbV9fZmFzdGRlcENDX1RSVUVACSQoQU1fVl9hdCkk KGFtX19tdikgeHRlbnNhL2JvYXJkcy9lc3AzMnMzLyQoREVQRElSKS94dGVuc2FfbGliZ2xvc3Nf YS1ib2FyZC5UcG8geHRlbnNhL2JvYXJkcy9lc3AzMnMzLyQoREVQRElSKS94dGVuc2FfbGliZ2xv c3NfYS1ib2FyZC5Qbw0KK0BBTURFUF9UUlVFQEBhbV9fZmFzdGRlcENDX0ZBTFNFQAkkKEFNX1Zf Q0Mpc291cmNlPSd4dGVuc2EvYm9hcmRzL2VzcDMyczMvYm9hcmQuYycgb2JqZWN0PSd4dGVuc2Ev Ym9hcmRzL2VzcDMyczMveHRlbnNhX2xpYmdsb3NzX2EtYm9hcmQub2JqJyBsaWJ0b29sPW5vIEBB TURFUEJBQ0tTTEFTSEANCitAQU1ERVBfVFJVRUBAYW1fX2Zhc3RkZXBDQ19GQUxTRUAJREVQRElS PSQoREVQRElSKSAkKENDREVQTU9ERSkgJChkZXBjb21wKSBAQU1ERVBCQUNLU0xBU0hADQorQGFt X19mYXN0ZGVwQ0NfRkFMU0VACSQoQU1fVl9DQ0BhbV9fbm9kZXBAKSQoQ0MpICQoREVGUykgJChE RUZBVUxUX0lOQ0xVREVTKSAkKElOQ0xVREVTKSAkKHh0ZW5zYV9saWJnbG9zc19hX0NQUEZMQUdT KSAkKENQUEZMQUdTKSAkKEFNX0NGTEFHUykgJChDRkxBR1MpIC1jIC1vIHh0ZW5zYS9ib2FyZHMv ZXNwMzJzMy94dGVuc2FfbGliZ2xvc3NfYS1ib2FyZC5vYmogYGlmIHRlc3QgLWYgJ3h0ZW5zYS9i b2FyZHMvZXNwMzJzMy9ib2FyZC5jJzsgdGhlbiAkKENZR1BBVEhfVykgJ3h0ZW5zYS9ib2FyZHMv ZXNwMzJzMy9ib2FyZC5jJzsgZWxzZSAkKENZR1BBVEhfVykgJyQoc3JjZGlyKS94dGVuc2EvYm9h cmRzL2VzcDMyczMvYm9hcmQuYyc7IGZpYA0KKw0KK3h0ZW5zYS94dGVuc2FfbGlic3lzX29wZW5v Y2RfYS1zeXNjYWxscy5vOiB4dGVuc2Evc3lzY2FsbHMuYw0KK0BhbV9fZmFzdGRlcENDX1RSVUVA CSQoQU1fVl9DQykkKENDKSAkKERFRlMpICQoREVGQVVMVF9JTkNMVURFUykgJChJTkNMVURFUykg JCh4dGVuc2FfbGlic3lzX29wZW5vY2RfYV9DUFBGTEFHUykgJChDUFBGTEFHUykgJChBTV9DRkxB R1MpICQoQ0ZMQUdTKSAtTVQgeHRlbnNhL3h0ZW5zYV9saWJzeXNfb3Blbm9jZF9hLXN5c2NhbGxz Lm8gLU1EIC1NUCAtTUYgeHRlbnNhLyQoREVQRElSKS94dGVuc2FfbGlic3lzX29wZW5vY2RfYS1z eXNjYWxscy5UcG8gLWMgLW8geHRlbnNhL3h0ZW5zYV9saWJzeXNfb3Blbm9jZF9hLXN5c2NhbGxz Lm8gYHRlc3QgLWYgJ3h0ZW5zYS9zeXNjYWxscy5jJyB8fCBlY2hvICckKHNyY2RpcikvJ2B4dGVu c2Evc3lzY2FsbHMuYw0KK0BhbV9fZmFzdGRlcENDX1RSVUVACSQoQU1fVl9hdCkkKGFtX19tdikg eHRlbnNhLyQoREVQRElSKS94dGVuc2FfbGlic3lzX29wZW5vY2RfYS1zeXNjYWxscy5UcG8geHRl bnNhLyQoREVQRElSKS94dGVuc2FfbGlic3lzX29wZW5vY2RfYS1zeXNjYWxscy5Qbw0KK0BBTURF UF9UUlVFQEBhbV9fZmFzdGRlcENDX0ZBTFNFQAkkKEFNX1ZfQ0Mpc291cmNlPSd4dGVuc2Evc3lz Y2FsbHMuYycgb2JqZWN0PSd4dGVuc2EveHRlbnNhX2xpYnN5c19vcGVub2NkX2Etc3lzY2FsbHMu bycgbGlidG9vbD1ubyBAQU1ERVBCQUNLU0xBU0hADQorQEFNREVQX1RSVUVAQGFtX19mYXN0ZGVw Q0NfRkFMU0VACURFUERJUj0kKERFUERJUikgJChDQ0RFUE1PREUpICQoZGVwY29tcCkgQEFNREVQ QkFDS1NMQVNIQA0KK0BhbV9fZmFzdGRlcENDX0ZBTFNFQAkkKEFNX1ZfQ0NAYW1fX25vZGVwQCkk KENDKSAkKERFRlMpICQoREVGQVVMVF9JTkNMVURFUykgJChJTkNMVURFUykgJCh4dGVuc2FfbGli c3lzX29wZW5vY2RfYV9DUFBGTEFHUykgJChDUFBGTEFHUykgJChBTV9DRkxBR1MpICQoQ0ZMQUdT KSAtYyAtbyB4dGVuc2EveHRlbnNhX2xpYnN5c19vcGVub2NkX2Etc3lzY2FsbHMubyBgdGVzdCAt ZiAneHRlbnNhL3N5c2NhbGxzLmMnIHx8IGVjaG8gJyQoc3JjZGlyKS8nYHh0ZW5zYS9zeXNjYWxs cy5jDQorDQoreHRlbnNhL3h0ZW5zYV9saWJzeXNfb3Blbm9jZF9hLXN5c2NhbGxzLm9iajogeHRl bnNhL3N5c2NhbGxzLmMNCitAYW1fX2Zhc3RkZXBDQ19UUlVFQAkkKEFNX1ZfQ0MpJChDQykgJChE RUZTKSAkKERFRkFVTFRfSU5DTFVERVMpICQoSU5DTFVERVMpICQoeHRlbnNhX2xpYnN5c19vcGVu b2NkX2FfQ1BQRkxBR1MpICQoQ1BQRkxBR1MpICQoQU1fQ0ZMQUdTKSAkKENGTEFHUykgLU1UIHh0 ZW5zYS94dGVuc2FfbGlic3lzX29wZW5vY2RfYS1zeXNjYWxscy5vYmogLU1EIC1NUCAtTUYgeHRl bnNhLyQoREVQRElSKS94dGVuc2FfbGlic3lzX29wZW5vY2RfYS1zeXNjYWxscy5UcG8gLWMgLW8g eHRlbnNhL3h0ZW5zYV9saWJzeXNfb3Blbm9jZF9hLXN5c2NhbGxzLm9iaiBgaWYgdGVzdCAtZiAn eHRlbnNhL3N5c2NhbGxzLmMnOyB0aGVuICQoQ1lHUEFUSF9XKSAneHRlbnNhL3N5c2NhbGxzLmMn OyBlbHNlICQoQ1lHUEFUSF9XKSAnJChzcmNkaXIpL3h0ZW5zYS9zeXNjYWxscy5jJzsgZmlgDQor QGFtX19mYXN0ZGVwQ0NfVFJVRUAJJChBTV9WX2F0KSQoYW1fX212KSB4dGVuc2EvJChERVBESVIp L3h0ZW5zYV9saWJzeXNfb3Blbm9jZF9hLXN5c2NhbGxzLlRwbyB4dGVuc2EvJChERVBESVIpL3h0 ZW5zYV9saWJzeXNfb3Blbm9jZF9hLXN5c2NhbGxzLlBvDQorQEFNREVQX1RSVUVAQGFtX19mYXN0 ZGVwQ0NfRkFMU0VACSQoQU1fVl9DQylzb3VyY2U9J3h0ZW5zYS9zeXNjYWxscy5jJyBvYmplY3Q9 J3h0ZW5zYS94dGVuc2FfbGlic3lzX29wZW5vY2RfYS1zeXNjYWxscy5vYmonIGxpYnRvb2w9bm8g QEFNREVQQkFDS1NMQVNIQA0KK0BBTURFUF9UUlVFQEBhbV9fZmFzdGRlcENDX0ZBTFNFQAlERVBE SVI9JChERVBESVIpICQoQ0NERVBNT0RFKSAkKGRlcGNvbXApIEBBTURFUEJBQ0tTTEFTSEANCitA YW1fX2Zhc3RkZXBDQ19GQUxTRUAJJChBTV9WX0NDQGFtX19ub2RlcEApJChDQykgJChERUZTKSAk KERFRkFVTFRfSU5DTFVERVMpICQoSU5DTFVERVMpICQoeHRlbnNhX2xpYnN5c19vcGVub2NkX2Ff Q1BQRkxBR1MpICQoQ1BQRkxBR1MpICQoQU1fQ0ZMQUdTKSAkKENGTEFHUykgLWMgLW8geHRlbnNh L3h0ZW5zYV9saWJzeXNfb3Blbm9jZF9hLXN5c2NhbGxzLm9iaiBgaWYgdGVzdCAtZiAneHRlbnNh L3N5c2NhbGxzLmMnOyB0aGVuICQoQ1lHUEFUSF9XKSAneHRlbnNhL3N5c2NhbGxzLmMnOyBlbHNl ICQoQ1lHUEFUSF9XKSAnJChzcmNkaXIpL3h0ZW5zYS9zeXNjYWxscy5jJzsgZmlgDQorDQoreHRl bnNhL3h0ZW5zYV9saWJzeXNfcWVtdV9hLXN5c2NhbGxzLm86IHh0ZW5zYS9zeXNjYWxscy5jDQor QGFtX19mYXN0ZGVwQ0NfVFJVRUAJJChBTV9WX0NDKSQoQ0MpICQoREVGUykgJChERUZBVUxUX0lO Q0xVREVTKSAkKElOQ0xVREVTKSAkKHh0ZW5zYV9saWJzeXNfcWVtdV9hX0NQUEZMQUdTKSAkKENQ UEZMQUdTKSAkKEFNX0NGTEFHUykgJChDRkxBR1MpIC1NVCB4dGVuc2EveHRlbnNhX2xpYnN5c19x ZW11X2Etc3lzY2FsbHMubyAtTUQgLU1QIC1NRiB4dGVuc2EvJChERVBESVIpL3h0ZW5zYV9saWJz eXNfcWVtdV9hLXN5c2NhbGxzLlRwbyAtYyAtbyB4dGVuc2EveHRlbnNhX2xpYnN5c19xZW11X2Et c3lzY2FsbHMubyBgdGVzdCAtZiAneHRlbnNhL3N5c2NhbGxzLmMnIHx8IGVjaG8gJyQoc3JjZGly KS8nYHh0ZW5zYS9zeXNjYWxscy5jDQorQGFtX19mYXN0ZGVwQ0NfVFJVRUAJJChBTV9WX2F0KSQo YW1fX212KSB4dGVuc2EvJChERVBESVIpL3h0ZW5zYV9saWJzeXNfcWVtdV9hLXN5c2NhbGxzLlRw byB4dGVuc2EvJChERVBESVIpL3h0ZW5zYV9saWJzeXNfcWVtdV9hLXN5c2NhbGxzLlBvDQorQEFN REVQX1RSVUVAQGFtX19mYXN0ZGVwQ0NfRkFMU0VACSQoQU1fVl9DQylzb3VyY2U9J3h0ZW5zYS9z eXNjYWxscy5jJyBvYmplY3Q9J3h0ZW5zYS94dGVuc2FfbGlic3lzX3FlbXVfYS1zeXNjYWxscy5v JyBsaWJ0b29sPW5vIEBBTURFUEJBQ0tTTEFTSEANCitAQU1ERVBfVFJVRUBAYW1fX2Zhc3RkZXBD Q19GQUxTRUAJREVQRElSPSQoREVQRElSKSAkKENDREVQTU9ERSkgJChkZXBjb21wKSBAQU1ERVBC QUNLU0xBU0hADQorQGFtX19mYXN0ZGVwQ0NfRkFMU0VACSQoQU1fVl9DQ0BhbV9fbm9kZXBAKSQo Q0MpICQoREVGUykgJChERUZBVUxUX0lOQ0xVREVTKSAkKElOQ0xVREVTKSAkKHh0ZW5zYV9saWJz eXNfcWVtdV9hX0NQUEZMQUdTKSAkKENQUEZMQUdTKSAkKEFNX0NGTEFHUykgJChDRkxBR1MpIC1j IC1vIHh0ZW5zYS94dGVuc2FfbGlic3lzX3FlbXVfYS1zeXNjYWxscy5vIGB0ZXN0IC1mICd4dGVu c2Evc3lzY2FsbHMuYycgfHwgZWNobyAnJChzcmNkaXIpLydgeHRlbnNhL3N5c2NhbGxzLmMNCisN Cit4dGVuc2EveHRlbnNhX2xpYnN5c19xZW11X2Etc3lzY2FsbHMub2JqOiB4dGVuc2Evc3lzY2Fs bHMuYw0KK0BhbV9fZmFzdGRlcENDX1RSVUVACSQoQU1fVl9DQykkKENDKSAkKERFRlMpICQoREVG QVVMVF9JTkNMVURFUykgJChJTkNMVURFUykgJCh4dGVuc2FfbGlic3lzX3FlbXVfYV9DUFBGTEFH UykgJChDUFBGTEFHUykgJChBTV9DRkxBR1MpICQoQ0ZMQUdTKSAtTVQgeHRlbnNhL3h0ZW5zYV9s aWJzeXNfcWVtdV9hLXN5c2NhbGxzLm9iaiAtTUQgLU1QIC1NRiB4dGVuc2EvJChERVBESVIpL3h0 ZW5zYV9saWJzeXNfcWVtdV9hLXN5c2NhbGxzLlRwbyAtYyAtbyB4dGVuc2EveHRlbnNhX2xpYnN5 c19xZW11X2Etc3lzY2FsbHMub2JqIGBpZiB0ZXN0IC1mICd4dGVuc2Evc3lzY2FsbHMuYyc7IHRo ZW4gJChDWUdQQVRIX1cpICd4dGVuc2Evc3lzY2FsbHMuYyc7IGVsc2UgJChDWUdQQVRIX1cpICck KHNyY2RpcikveHRlbnNhL3N5c2NhbGxzLmMnOyBmaWANCitAYW1fX2Zhc3RkZXBDQ19UUlVFQAkk KEFNX1ZfYXQpJChhbV9fbXYpIHh0ZW5zYS8kKERFUERJUikveHRlbnNhX2xpYnN5c19xZW11X2Et c3lzY2FsbHMuVHBvIHh0ZW5zYS8kKERFUERJUikveHRlbnNhX2xpYnN5c19xZW11X2Etc3lzY2Fs bHMuUG8NCitAQU1ERVBfVFJVRUBAYW1fX2Zhc3RkZXBDQ19GQUxTRUAJJChBTV9WX0NDKXNvdXJj ZT0neHRlbnNhL3N5c2NhbGxzLmMnIG9iamVjdD0neHRlbnNhL3h0ZW5zYV9saWJzeXNfcWVtdV9h LXN5c2NhbGxzLm9iaicgbGlidG9vbD1ubyBAQU1ERVBCQUNLU0xBU0hADQorQEFNREVQX1RSVUVA QGFtX19mYXN0ZGVwQ0NfRkFMU0VACURFUERJUj0kKERFUERJUikgJChDQ0RFUE1PREUpICQoZGVw Y29tcCkgQEFNREVQQkFDS1NMQVNIQA0KK0BhbV9fZmFzdGRlcENDX0ZBTFNFQAkkKEFNX1ZfQ0NA YW1fX25vZGVwQCkkKENDKSAkKERFRlMpICQoREVGQVVMVF9JTkNMVURFUykgJChJTkNMVURFUykg JCh4dGVuc2FfbGlic3lzX3FlbXVfYV9DUFBGTEFHUykgJChDUFBGTEFHUykgJChBTV9DRkxBR1Mp ICQoQ0ZMQUdTKSAtYyAtbyB4dGVuc2EveHRlbnNhX2xpYnN5c19xZW11X2Etc3lzY2FsbHMub2Jq IGBpZiB0ZXN0IC1mICd4dGVuc2Evc3lzY2FsbHMuYyc7IHRoZW4gJChDWUdQQVRIX1cpICd4dGVu c2Evc3lzY2FsbHMuYyc7IGVsc2UgJChDWUdQQVRIX1cpICckKHNyY2RpcikveHRlbnNhL3N5c2Nh bGxzLmMnOyBmaWANCisNCiB3aW5jZV9zdHViX2V4ZS13aW5jZS1zdHViLm86IHdpbmNlLXN0dWIu Yw0KIEBhbV9fZmFzdGRlcENDX1RSVUVACSQoQU1fVl9DQykkKENDKSAkKERFRlMpICQoREVGQVVM VF9JTkNMVURFUykgJChJTkNMVURFUykgJCh3aW5jZV9zdHViX2V4ZV9DUFBGTEFHUykgJChDUFBG TEFHUykgJChBTV9DRkxBR1MpICQoQ0ZMQUdTKSAtTVQgd2luY2Vfc3R1Yl9leGUtd2luY2Utc3R1 Yi5vIC1NRCAtTVAgLU1GICQoREVQRElSKS93aW5jZV9zdHViX2V4ZS13aW5jZS1zdHViLlRwbyAt YyAtbyB3aW5jZV9zdHViX2V4ZS13aW5jZS1zdHViLm8gYHRlc3QgLWYgJ3dpbmNlLXN0dWIuYycg fHwgZWNobyAnJChzcmNkaXIpLydgd2luY2Utc3R1Yi5jDQogQGFtX19mYXN0ZGVwQ0NfVFJVRUAJ JChBTV9WX2F0KSQoYW1fX212KSAkKERFUERJUikvd2luY2Vfc3R1Yl9leGUtd2luY2Utc3R1Yi5U cG8gJChERVBESVIpL3dpbmNlX3N0dWJfZXhlLXdpbmNlLXN0dWIuUG8NCkBAIC00MjMzLDYgKzQ0 OTgsMTIgQEAgZGlzdGNsZWFuLWdlbmVyaWM6DQogCS1ybSAtZiByaXNjdi8kKERFUERJUikvJChh bV9fZGlyc3RhbXApDQogCS1ybSAtZiByaXNjdi8kKGFtX19kaXJzdGFtcCkNCiAJLXJtIC1mIHdp bmNlLyQoYW1fX2RpcnN0YW1wKQ0KKwktcm0gLWYgeHRlbnNhLyQoREVQRElSKS8kKGFtX19kaXJz dGFtcCkNCisJLXJtIC1mIHh0ZW5zYS8kKGFtX19kaXJzdGFtcCkNCisJLXJtIC1mIHh0ZW5zYS9i b2FyZHMvZXNwMzIvJChERVBESVIpLyQoYW1fX2RpcnN0YW1wKQ0KKwktcm0gLWYgeHRlbnNhL2Jv YXJkcy9lc3AzMi8kKGFtX19kaXJzdGFtcCkNCisJLXJtIC1mIHh0ZW5zYS9ib2FyZHMvZXNwMzJz My8kKERFUERJUikvJChhbV9fZGlyc3RhbXApDQorCS1ybSAtZiB4dGVuc2EvYm9hcmRzL2VzcDMy czMvJChhbV9fZGlyc3RhbXApDQogDQogbWFpbnRhaW5lci1jbGVhbi1nZW5lcmljOg0KIAlAZWNo byAiVGhpcyBjb21tYW5kIGlzIGludGVuZGVkIGZvciBtYWludGFpbmVycyB0byB1c2UiDQpAQCAt NDI0NSw3ICs0NTE2LDcgQEAgY2xlYW4tYW06IGNsZWFuLWFtaW5mbyBjbGVhbi1iaW5QUk9HUkFN UyBjbGVhbi1jaGVja1BST0dSQU1TIFwNCiANCiBkaXN0Y2xlYW46IGRpc3RjbGVhbi1yZWN1cnNp dmUNCiAJLXJtIC1mICQoYW1fX0NPTkZJR19ESVNUQ0xFQU5fRklMRVMpDQotCS1ybSAtcmYgLi8k KERFUERJUikgYWFyY2g2NC8kKERFUERJUikgYXJjLyQoREVQRElSKSBhcm0vJChERVBESVIpIGJm aW4vJChERVBESVIpIGNza3kvJChERVBESVIpIGQzMHYvJChERVBESVIpIGlxMjAwMC8kKERFUERJ UikgbGlibm9zeXMvJChERVBESVIpIGxtMzIvJChERVBESVIpIG5pb3MyLyQoREVQRElSKSByaXNj di8kKERFUERJUikNCisJLXJtIC1yZiAuLyQoREVQRElSKSBhYXJjaDY0LyQoREVQRElSKSBhcmMv JChERVBESVIpIGFybS8kKERFUERJUikgYmZpbi8kKERFUERJUikgY3NreS8kKERFUERJUikgZDMw di8kKERFUERJUikgaXEyMDAwLyQoREVQRElSKSBsaWJub3N5cy8kKERFUERJUikgbG0zMi8kKERF UERJUikgbmlvczIvJChERVBESVIpIHJpc2N2LyQoREVQRElSKSB4dGVuc2EvJChERVBESVIpIHh0 ZW5zYS9ib2FyZHMvZXNwMzIvJChERVBESVIpIHh0ZW5zYS9ib2FyZHMvZXNwMzJzMy8kKERFUERJ UikNCiAJLXJtIC1mIE1ha2VmaWxlDQogZGlzdGNsZWFuLWFtOiBjbGVhbi1hbSBkaXN0Y2xlYW4t Y29tcGlsZSBkaXN0Y2xlYW4tZ2VuZXJpYyBcDQogCWRpc3RjbGVhbi1oZHIgZGlzdGNsZWFuLWxv Y2FsIGRpc3RjbGVhbi10YWdzDQpAQCAtNDM4OCw3ICs0NjU5LDcgQEAgaW5zdGFsbGNoZWNrLWFt Og0KIG1haW50YWluZXItY2xlYW46IG1haW50YWluZXItY2xlYW4tcmVjdXJzaXZlDQogCS1ybSAt ZiAkKGFtX19DT05GSUdfRElTVENMRUFOX0ZJTEVTKQ0KIAktcm0gLXJmICQodG9wX3NyY2Rpcikv YXV0b200dGUuY2FjaGUNCi0JLXJtIC1yZiAuLyQoREVQRElSKSBhYXJjaDY0LyQoREVQRElSKSBh cmMvJChERVBESVIpIGFybS8kKERFUERJUikgYmZpbi8kKERFUERJUikgY3NreS8kKERFUERJUikg ZDMwdi8kKERFUERJUikgaXEyMDAwLyQoREVQRElSKSBsaWJub3N5cy8kKERFUERJUikgbG0zMi8k KERFUERJUikgbmlvczIvJChERVBESVIpIHJpc2N2LyQoREVQRElSKQ0KKwktcm0gLXJmIC4vJChE RVBESVIpIGFhcmNoNjQvJChERVBESVIpIGFyYy8kKERFUERJUikgYXJtLyQoREVQRElSKSBiZmlu LyQoREVQRElSKSBjc2t5LyQoREVQRElSKSBkMzB2LyQoREVQRElSKSBpcTIwMDAvJChERVBESVIp IGxpYm5vc3lzLyQoREVQRElSKSBsbTMyLyQoREVQRElSKSBuaW9zMi8kKERFUERJUikgcmlzY3Yv JChERVBESVIpIHh0ZW5zYS8kKERFUERJUikgeHRlbnNhL2JvYXJkcy9lc3AzMi8kKERFUERJUikg eHRlbnNhL2JvYXJkcy9lc3AzMnMzLyQoREVQRElSKQ0KIAktcm0gLWYgTWFrZWZpbGUNCiBtYWlu dGFpbmVyLWNsZWFuLWFtOiBkaXN0Y2xlYW4tYW0gbWFpbnRhaW5lci1jbGVhbi1hbWluZm8gXA0K IAltYWludGFpbmVyLWNsZWFuLWdlbmVyaWMgbWFpbnRhaW5lci1jbGVhbi1sb2NhbA0KQEAgLTQ1 MzcsNiArNDgwOCw5IEBAIG1haW50YWluZXItY2xlYW4tbG9jYWw6IG1haW50YWluZXItY2xlYW4t bXVsdGkNCiBAQ09ORklHX0JGSU5fVFJVRUBiZmluL2Jhc2ljY3J0NjB4YzEuJChPQkpFWFQpOiBi ZmluL2Jhc2ljY3J0LlMNCiBAQ09ORklHX0JGSU5fVFJVRUAJJChBTV9WX0NQUEFTKSQoQ1BQQVND T01QSUxFKSAkKGJmaW5fQ1BQRkxBR1MpIC1vICRAIC1jICQ8ICQoaWYgJChmaW5kc3RyaW5nIG1j cHU9LCQoQ0ZMQUdTKSksLW1jcHU9YmY2MDgtYW55LC1tY3B1PWJmNjA4LW5vbmUpIC1EX19BRFNQ QkY2MHhfQ09SRTFfXw0KIA0KK0BDT05GSUdfWFRFTlNBX1RSVUVAeHRlbnNhL2NydDAuJChPQkpF WFQpOiB4dGVuc2EvY3J0MC5TDQorQENPTkZJR19YVEVOU0FfVFJVRUAJJChBTV9WX0NQUEFTKSQo Q1BQQVNDT01QSUxFKSAkKENQUEZMQUdTKSAtbyAkQCAtYyAkPA0KKw0KICMgVGVsbCB2ZXJzaW9u cyBbMy41OSwzLjYzKSBvZiBHTlUgbWFrZSB0byBub3QgZXhwb3J0IGFsbCB2YXJpYWJsZXMuDQog IyBPdGhlcndpc2UgYSBzeXN0ZW0gbGltaXQgKGZvciBTeXNWIGF0IGxlYXN0KSBtYXkgYmUgZXhj ZWVkZWQuDQogLk5PRVhQT1JUOg0KZGlmZiAtLWdpdCBhL2xpYmdsb3NzL2NvbmZpZ3VyZSBiL2xp Ymdsb3NzL2NvbmZpZ3VyZQ0KaW5kZXggYzA3NjEwNDExLi4zYzBkYjgxMjEgMTAwNzU1DQotLS0g YS9saWJnbG9zcy9jb25maWd1cmUNCisrKyBiL2xpYmdsb3NzL2NvbmZpZ3VyZQ0KQEAgLTU4OSw2 ICs1ODksMTMgQEAgTElCT0JKUw0KIG11bHRpX2Jhc2VkaXINCiB0YXJnZXRfbWFrZWZpbGVfZnJh Z19wYXRoDQogaG9zdF9tYWtlZmlsZV9mcmFnX3BhdGgNCitIQVZFX1hURU5TQV9CT0FSRF9FU1Bf RkFMU0UNCitIQVZFX1hURU5TQV9CT0FSRF9FU1BfVFJVRQ0KK0hBVkVfWFRFTlNBX0JPQVJEX0VT UDMyUzNfRkFMU0UNCitIQVZFX1hURU5TQV9CT0FSRF9FU1AzMlMzX1RSVUUNCitIQVZFX1hURU5T QV9CT0FSRF9FU1AzMl9GQUxTRQ0KK0hBVkVfWFRFTlNBX0JPQVJEX0VTUDMyX1RSVUUNCitYVEVO U0FfQk9BUkRfRVNQDQogTU9YSUVfQlVJTERfQ1JUMF9GQUxTRQ0KIE1PWElFX0JVSUxEX0NSVDBf VFJVRQ0KIE1OMTAzMDBfQlNQX0xJU1QNCkBAIC02MzIsNiArNjM5LDggQEAgQ0ZMQUdTDQogQ0MN CiBORUVEX1RPUF9JTkNMVURFX0RJUl9GQUxTRQ0KIE5FRURfVE9QX0lOQ0xVREVfRElSX1RSVUUN CitDT05GSUdfWFRFTlNBX0ZBTFNFDQorQ09ORklHX1hURU5TQV9UUlVFDQogQ09ORklHX1dJTkNF X0ZBTFNFDQogQ09ORklHX1dJTkNFX1RSVUUNCiBDT05GSUdfUklTQ1ZfRkFMU0UNCkBAIC0yOTI4 LDYgKzI5MzcsOSBAQCBjYXNlICIke3RhcmdldH0iIGluDQogDQogCXN1YmRpcnM9IiRzdWJkaXJz IHhzdG9ybXkxNiINCiAJOzsNCisgIHh0ZW5zYS0qLSopDQorCWNvbmZpZ194dGVuc2E9dHJ1ZQ0K Kwk7Ow0KICAgbTMyYy0qLSopDQogCWFjX2NvbmZpZ19maWxlcz0iJGFjX2NvbmZpZ19maWxlcyBt MzJjL01ha2VmaWxlIg0KIA0KQEAgLTMwODIsNiArMzA5NCwxNCBAQCBlbHNlDQogICBDT05GSUdf V0lOQ0VfRkFMU0U9DQogZmkNCiANCisgICBpZiB0ZXN0IHgkY29uZmlnX3h0ZW5zYSA9IHh0cnVl OyB0aGVuDQorICBDT05GSUdfWFRFTlNBX1RSVUU9DQorICBDT05GSUdfWFRFTlNBX0ZBTFNFPScj Jw0KK2Vsc2UNCisgIENPTkZJR19YVEVOU0FfVFJVRT0nIycNCisgIENPTkZJR19YVEVOU0FfRkFM U0U9DQorZmkNCisNCiANCiANCiAgaWYgdGVzdCB4JGNvbmZpZ19hcm0gPSB4dHJ1ZTsgdGhlbg0K QEAgLTQ5NTksNiArNDk3OSw3IEBAIGNhc2UgIiR7dGFyZ2V0fSIgaW4NCiAgIHY4NTAqLSotKikg OzsNCiAgIHc2NS0qLSopIDs7DQogICB4c3Rvcm15MTYtKi0qKSA7Ow0KKyAgeHRlbnNhLSotKikg OzsNCiAgIHo4ay0qLSopIDs7DQogICAqKQ0KICRhc19lY2hvICIjZGVmaW5lIE1JU1NJTkdfU1lT Q0FMTF9OQU1FUyAxIiA+PmNvbmZkZWZzLmgNCkBAIC01MDk5LDYgKzUxMjAsMzMgQEAgZXNhYw0K IA0KIA0KIA0KK1hURU5TQV9CT0FSRF9FU1A9YGVjaG8gJENDIHwgc2VkICdzLy4qLW1keW5jb25m aWc9eHRlbnNhX1woLipcKVwuc28uKi9cMS87cy8uKi1tY3B1PVwoXiAqXCkuKi9cMS87cy8uKiAu Ki91bmtub3duLydgDQorDQorIGlmIHRlc3QgeCRYVEVOU0FfQk9BUkRfRVNQID0geGVzcDMyOyB0 aGVuDQorICBIQVZFX1hURU5TQV9CT0FSRF9FU1AzMl9UUlVFPQ0KKyAgSEFWRV9YVEVOU0FfQk9B UkRfRVNQMzJfRkFMU0U9JyMnDQorZWxzZQ0KKyAgSEFWRV9YVEVOU0FfQk9BUkRfRVNQMzJfVFJV RT0nIycNCisgIEhBVkVfWFRFTlNBX0JPQVJEX0VTUDMyX0ZBTFNFPQ0KK2ZpDQorDQorIGlmIHRl c3QgeCRYVEVOU0FfQk9BUkRfRVNQID0geGVzcDMyczM7IHRoZW4NCisgIEhBVkVfWFRFTlNBX0JP QVJEX0VTUDMyUzNfVFJVRT0NCisgIEhBVkVfWFRFTlNBX0JPQVJEX0VTUDMyUzNfRkFMU0U9JyMn DQorZWxzZQ0KKyAgSEFWRV9YVEVOU0FfQk9BUkRfRVNQMzJTM19UUlVFPScjJw0KKyAgSEFWRV9Y VEVOU0FfQk9BUkRfRVNQMzJTM19GQUxTRT0NCitmaQ0KKw0KKyBpZiBlY2hvICRYVEVOU0FfQk9B UkRfRVNQIHwgZ3JlcCAtdyAtZSBlc3AzMiAtZSBlc3AzMnMzID4vZGV2L251bGwgMj4mMTsgdGhl bg0KKyAgSEFWRV9YVEVOU0FfQk9BUkRfRVNQX1RSVUU9DQorICBIQVZFX1hURU5TQV9CT0FSRF9F U1BfRkFMU0U9JyMnDQorZWxzZQ0KKyAgSEFWRV9YVEVOU0FfQk9BUkRfRVNQX1RSVUU9JyMnDQor ICBIQVZFX1hURU5TQV9CT0FSRF9FU1BfRkFMU0U9DQorZmkNCisNCisNCiANCiB7ICRhc19lY2hv ICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciBjb21waWxlciBzZWFy Y2ggc2V0dGluZ3MiID4mNQ0KICRhc19lY2hvX24gImNoZWNraW5nIGZvciBjb21waWxlciBzZWFy Y2ggc2V0dGluZ3MuLi4gIiA+JjY7IH0NCkBAIC01MzU5LDYgKzU0MDcsMTAgQEAgaWYgdGVzdCAt eiAiJHtDT05GSUdfV0lOQ0VfVFJVRX0iICYmIHRlc3QgLXogIiR7Q09ORklHX1dJTkNFX0ZBTFNF fSI7IHRoZW4NCiAgIGFzX2ZuX2Vycm9yICQ/ICJjb25kaXRpb25hbCBcIkNPTkZJR19XSU5DRVwi IHdhcyBuZXZlciBkZWZpbmVkLg0KIFVzdWFsbHkgdGhpcyBtZWFucyB0aGUgbWFjcm8gd2FzIG9u bHkgaW52b2tlZCBjb25kaXRpb25hbGx5LiIgIiRMSU5FTk8iIDUNCiBmaQ0KK2lmIHRlc3QgLXog IiR7Q09ORklHX1hURU5TQV9UUlVFfSIgJiYgdGVzdCAteiAiJHtDT05GSUdfWFRFTlNBX0ZBTFNF fSI7IHRoZW4NCisgIGFzX2ZuX2Vycm9yICQ/ICJjb25kaXRpb25hbCBcIkNPTkZJR19YVEVOU0Fc IiB3YXMgbmV2ZXIgZGVmaW5lZC4NCitVc3VhbGx5IHRoaXMgbWVhbnMgdGhlIG1hY3JvIHdhcyBv bmx5IGludm9rZWQgY29uZGl0aW9uYWxseS4iICIkTElORU5PIiA1DQorZmkNCiBpZiB0ZXN0IC16 ICIke05FRURfVE9QX0lOQ0xVREVfRElSX1RSVUV9IiAmJiB0ZXN0IC16ICIke05FRURfVE9QX0lO Q0xVREVfRElSX0ZBTFNFfSI7IHRoZW4NCiAgIGFzX2ZuX2Vycm9yICQ/ICJjb25kaXRpb25hbCBc Ik5FRURfVE9QX0lOQ0xVREVfRElSXCIgd2FzIG5ldmVyIGRlZmluZWQuDQogVXN1YWxseSB0aGlz IG1lYW5zIHRoZSBtYWNybyB3YXMgb25seSBpbnZva2VkIGNvbmRpdGlvbmFsbHkuIiAiJExJTkVO TyIgNQ0KQEAgLTUzNzUsNiArNTQyNywxOCBAQCBpZiB0ZXN0IC16ICIke2FtX19mYXN0ZGVwQ0NB U19UUlVFfSIgJiYgdGVzdCAteiAiJHthbV9fZmFzdGRlcENDQVNfRkFMU0V9IjsgdGhlbg0KICAg YXNfZm5fZXJyb3IgJD8gImNvbmRpdGlvbmFsIFwiYW1fX2Zhc3RkZXBDQ0FTXCIgd2FzIG5ldmVy IGRlZmluZWQuDQogVXN1YWxseSB0aGlzIG1lYW5zIHRoZSBtYWNybyB3YXMgb25seSBpbnZva2Vk IGNvbmRpdGlvbmFsbHkuIiAiJExJTkVOTyIgNQ0KIGZpDQoraWYgdGVzdCAteiAiJHtIQVZFX1hU RU5TQV9CT0FSRF9FU1AzMl9UUlVFfSIgJiYgdGVzdCAteiAiJHtIQVZFX1hURU5TQV9CT0FSRF9F U1AzMl9GQUxTRX0iOyB0aGVuDQorICBhc19mbl9lcnJvciAkPyAiY29uZGl0aW9uYWwgXCJIQVZF X1hURU5TQV9CT0FSRF9FU1AzMlwiIHdhcyBuZXZlciBkZWZpbmVkLg0KK1VzdWFsbHkgdGhpcyBt ZWFucyB0aGUgbWFjcm8gd2FzIG9ubHkgaW52b2tlZCBjb25kaXRpb25hbGx5LiIgIiRMSU5FTk8i IDUNCitmaQ0KK2lmIHRlc3QgLXogIiR7SEFWRV9YVEVOU0FfQk9BUkRfRVNQMzJTM19UUlVFfSIg JiYgdGVzdCAteiAiJHtIQVZFX1hURU5TQV9CT0FSRF9FU1AzMlMzX0ZBTFNFfSI7IHRoZW4NCisg IGFzX2ZuX2Vycm9yICQ/ICJjb25kaXRpb25hbCBcIkhBVkVfWFRFTlNBX0JPQVJEX0VTUDMyUzNc IiB3YXMgbmV2ZXIgZGVmaW5lZC4NCitVc3VhbGx5IHRoaXMgbWVhbnMgdGhlIG1hY3JvIHdhcyBv bmx5IGludm9rZWQgY29uZGl0aW9uYWxseS4iICIkTElORU5PIiA1DQorZmkNCitpZiB0ZXN0IC16 ICIke0hBVkVfWFRFTlNBX0JPQVJEX0VTUF9UUlVFfSIgJiYgdGVzdCAteiAiJHtIQVZFX1hURU5T QV9CT0FSRF9FU1BfRkFMU0V9IjsgdGhlbg0KKyAgYXNfZm5fZXJyb3IgJD8gImNvbmRpdGlvbmFs IFwiSEFWRV9YVEVOU0FfQk9BUkRfRVNQXCIgd2FzIG5ldmVyIGRlZmluZWQuDQorVXN1YWxseSB0 aGlzIG1lYW5zIHRoZSBtYWNybyB3YXMgb25seSBpbnZva2VkIGNvbmRpdGlvbmFsbHkuIiAiJExJ TkVOTyIgNQ0KK2ZpDQogDQogOiAiJHtDT05GSUdfU1RBVFVTPS4vY29uZmlnLnN0YXR1c30iDQog YWNfd3JpdGVfZmFpbD0wDQpkaWZmIC0tZ2l0IGEvbGliZ2xvc3MvY29uZmlndXJlLmFjIGIvbGli Z2xvc3MvY29uZmlndXJlLmFjDQppbmRleCBhMzMyMTkzY2UuLjQ3ODU0ZWFiMyAxMDA2NDQNCi0t LSBhL2xpYmdsb3NzL2NvbmZpZ3VyZS5hYw0KKysrIGIvbGliZ2xvc3MvY29uZmlndXJlLmFjDQpA QCAtMTk1LDYgKzE5NSw5IEBAIGNhc2UgIiR7dGFyZ2V0fSIgaW4NCiAJQUNfQ09ORklHX0ZJTEVT KFt4c3Rvcm15MTYvTWFrZWZpbGVdKQ0KIAlzdWJkaXJzPSIkc3ViZGlycyB4c3Rvcm15MTYiDQog CTs7DQorICB4dGVuc2EtKi0qKQ0KKwljb25maWdfeHRlbnNhPXRydWUNCisJOzsNCiAgIG0zMmMt Ki0qKQ0KIAlBQ19DT05GSUdfRklMRVMoW20zMmMvTWFrZWZpbGVdKQ0KIAlzdWJkaXJzPSIkc3Vi ZGlycyBtMzJjIg0KQEAgLTI0OCw3ICsyNTEsNyBAQCBBQ19TVUJTVChzdWJkaXJzKQ0KIGRubCBU aGVzZSBzdWJkaXJzIGhhdmUgY29udmVydGVkIHRvIG5vbi1yZWN1cnNpdmUgbWFrZS4gIEhvcGVm dWxseSBzb21lZGF5IGFsbA0KIGRubCB0aGUgcG9ydHMgYWJvdmUgd2lsbCB0b28hDQogbTRfZm9y ZWFjaF93KFtTVUJESVJdLCBbDQotICBhYXJjaDY0IGFyYyBhcm0gYmZpbiBjc2t5IGQzMHYgaXEy MDAwIGxpYm5vc3lzIGxtMzIgbmlvczIgcmlzY3Ygd2luY2UNCisgIGFhcmNoNjQgYXJjIGFybSBi ZmluIGNza3kgZDMwdiBpcTIwMDAgbGlibm9zeXMgbG0zMiBuaW9zMiByaXNjdiB3aW5jZSB4dGVu c2ENCiBdLCBbZG5sDQogICBBTV9DT05ESVRJT05BTChbQ09ORklHX11tNF90b3VwcGVyKFNVQkRJ UiksIFt0ZXN0IHgkY29uZmlnX11TVUJESVIgPSB4dHJ1ZSkNCiBdKQ0KQEAgLTM1Miw2ICszNTUs NyBAQCBtNF9pbmNsdWRlKFttY29yZS9hY2luY2x1ZGUubTRdKQ0KIG00X2luY2x1ZGUoW21pcHMv YWNpbmNsdWRlLm00XSkNCiBtNF9pbmNsdWRlKFttbjEwMzAwL2FjaW5jbHVkZS5tNF0pDQogbTRf aW5jbHVkZShbbW94aWUvYWNpbmNsdWRlLm00XSkNCittNF9pbmNsdWRlKFt4dGVuc2EvYWNpbmNs dWRlLm00XSkNCiANCiBBQ19DQUNIRV9DSEVDSyhbZm9yIGNvbXBpbGVyIHNlYXJjaCBzZXR0aW5n c10sIGxpYmNfY3ZfY29tcGlsZXJfaXN5c3RlbSwgW2RubA0KICAgZm9yIHN1YmRpciBpbiBpbmNs dWRlIGluY2x1ZGUtZml4ZWQ7IGRvDQpkaWZmIC0tZ2l0IGEvbGliZ2xvc3MvbGlibm9zeXMvYWNp bmNsdWRlLm00IGIvbGliZ2xvc3MvbGlibm9zeXMvYWNpbmNsdWRlLm00DQppbmRleCA3YjBkN2I0 ZDYuLmJhMjkzZjA4YSAxMDA2NDQNCi0tLSBhL2xpYmdsb3NzL2xpYm5vc3lzL2FjaW5jbHVkZS5t NA0KKysrIGIvbGliZ2xvc3MvbGlibm9zeXMvYWNpbmNsdWRlLm00DQpAQCAtMjIsNiArMjIsNyBA QCBjYXNlICIke3RhcmdldH0iIGluDQogICB2ODUwKi0qLSopIDs7DQogICB3NjUtKi0qKSA7Ow0K ICAgeHN0b3JteTE2LSotKikgOzsNCisgIHh0ZW5zYS0qLSopIDs7DQogICB6OGstKi0qKSA7Ow0K ICAgKikgQUNfREVGSU5FKE1JU1NJTkdfU1lTQ0FMTF9OQU1FUywgMSwgW01pc3Npbmcgc3lzY2Fs bCBuYW1lc10pIDs7DQogZXNhYw0KZGlmZiAtLWdpdCBhL2xpYmdsb3NzL3h0ZW5zYS9NYWtlZmls ZS5pbmMgYi9saWJnbG9zcy94dGVuc2EvTWFrZWZpbGUuaW5jDQpuZXcgZmlsZSBtb2RlIDEwMDY0 NA0KaW5kZXggMDAwMDAwMDAwLi44NzYxZjNlYjANCi0tLSAvZGV2L251bGwNCisrKyBiL2xpYmds b3NzL3h0ZW5zYS9NYWtlZmlsZS5pbmMNCkBAIC0wLDAgKzEsNTUgQEANCitDUFBGTEFHUyArPSAt RF9MSUJHTE9TUyAtSSQoc3JjZGlyKS8lRCUvaW5jbHVkZQ0KKw0KK211bHRpbGlidG9vbF9EQVRB ICs9IFwNCisJJUQlL2RlZmF1bHQuc3BlY3MgXA0KKwklRCUvbmFuby5zcGVjcyBcDQorCSVEJS9j cnQwLm8NCisNCittdWx0aWxpYnRvb2xfTElCUkFSSUVTICs9ICVEJS9saWJnbG9zcy5hDQorDQor aWYgSEFWRV9YVEVOU0FfQk9BUkRfRVNQDQorbXVsdGlsaWJ0b29sX0RBVEEgKz0gXA0KKwklRCUv c2ltLmVsZi5zcGVjcyBcDQorCSVEJS9ib2FyZC5lbGYuc3BlY3MgXA0KKwklRCUvc3lzLnFlbXUu c3BlY3MgXA0KKwklRCUvc3lzLm9wZW5vY2Quc3BlY3MgXA0KKwklRCUvYXBwLmVsZi5sZCBcDQor CSVEJS9jcnQxLXNpbS5vIFwNCisJJUQlL2NydDEtYm9hcmRzLm8NCisNCislQyVfbGliZ2xvc3Nf YV9TT1VSQ0VTID0gXA0KKwklRCUvc2xlZXAuUyBcDQorCSVEJS9zeXNjYWxscy5jIFwNCisJJUQl L3dpbmRvdy12ZWN0b3JzLlMNCisNCittdWx0aWxpYnRvb2xfTElCUkFSSUVTICs9ICVEJS9saWJz eXNfcWVtdS5hDQorJUMlX2xpYnN5c19xZW11X2FfQ1BQRkxBR1MgPSAtRFFFTVVfU0VNSUhPU1RJ TkcNCislQyVfbGlic3lzX3FlbXVfYV9TT1VSQ0VTID0gXA0KKwklRCUvc2ltLXZlY3RvcnMuUyBc DQorCSVEJS9zaW0tY2FsbC5TIFwNCisJJUQlL3N5c2NhbGxzLmMNCisNCittdWx0aWxpYnRvb2xf TElCUkFSSUVTICs9ICVEJS9saWJzeXNfb3Blbm9jZC5hDQorJUMlX2xpYnN5c19vcGVub2NkX2Ff Q1BQRkxBR1MgPSAtRE9QRU5PQ0RfU0VNSUhPU1RJTkcNCislQyVfbGlic3lzX29wZW5vY2RfYV9T T1VSQ0VTID0gXA0KKwklRCUvc3lzY2FsbHMuYw0KKw0KK2lmIEhBVkVfWFRFTlNBX0JPQVJEX0VT UDMyDQorbXVsdGlsaWJ0b29sX0RBVEEgKz0gJUQlL2JvYXJkcy9lc3AzMi9tZW1vcnkuZWxmLmxk DQorJUMlX2xpYmdsb3NzX2FfU09VUkNFUyArPSAlRCUvYm9hcmRzL2VzcDMyL2JvYXJkLmMNCisl QyVfbGliZ2xvc3NfYV9DUFBGTEFHUyA9IC1JJChzcmNkaXIpLyVEJS9ib2FyZHMvZXNwMzIvaW5j bHVkZQ0KKyVDJV9saWJzeXNfcWVtdV9hX0NQUEZMQUdTICs9IC1JJChzcmNkaXIpLyVEJS9ib2Fy ZHMvZXNwMzIvaW5jbHVkZQ0KKyVDJV9saWJzeXNfb3Blbm9jZF9hX0NQUEZMQUdTICs9IC1JJChz cmNkaXIpLyVEJS9ib2FyZHMvZXNwMzIvaW5jbHVkZQ0KK2VuZGlmDQorDQoraWYgSEFWRV9YVEVO U0FfQk9BUkRfRVNQMzJTMw0KK211bHRpbGlidG9vbF9EQVRBICs9ICVEJS9ib2FyZHMvZXNwMzJz My9tZW1vcnkuZWxmLmxkDQorJUMlX2xpYmdsb3NzX2FfU09VUkNFUyArPSAlRCUvYm9hcmRzL2Vz cDMyczMvYm9hcmQuYw0KKyVDJV9saWJnbG9zc19hX0NQUEZMQUdTID0gLUkkKHNyY2RpcikvJUQl L2JvYXJkcy9lc3AzMnMzL2luY2x1ZGUNCislQyVfbGlic3lzX3FlbXVfYV9DUFBGTEFHUyArPSAt SSQoc3JjZGlyKS8lRCUvYm9hcmRzL2VzcDMyczMvaW5jbHVkZQ0KKyVDJV9saWJzeXNfb3Blbm9j ZF9hX0NQUEZMQUdTICs9IC1JJChzcmNkaXIpLyVEJS9ib2FyZHMvZXNwMzJzMy9pbmNsdWRlDQor ZW5kaWYNCitlbmRpZg0KKw0KKyVEJS9jcnQwLiQoT0JKRVhUKTogJUQlL2NydDAuUw0KKwkkKEFN X1ZfQ1BQQVMpJChDUFBBU0NPTVBJTEUpICQoQ1BQRkxBR1MpIC1vICRAIC1jICQ8DQpkaWZmIC0t Z2l0IGEvbGliZ2xvc3MveHRlbnNhL2FjaW5jbHVkZS5tNCBiL2xpYmdsb3NzL3h0ZW5zYS9hY2lu Y2x1ZGUubTQNCm5ldyBmaWxlIG1vZGUgMTAwNjQ0DQppbmRleCAwMDAwMDAwMDAuLmZjOThmOGEz ZA0KLS0tIC9kZXYvbnVsbA0KKysrIGIvbGliZ2xvc3MveHRlbnNhL2FjaW5jbHVkZS5tNA0KQEAg LTAsMCArMSw1IEBADQorWFRFTlNBX0JPQVJEX0VTUD1gZWNobyAkQ0MgfCBzZWQgJ3MvLiotbWR5 bmNvbmZpZz14dGVuc2FfXCguKlwpXC5zby4qL1wxLztzLy4qLW1jcHU9XCheICpcKS4qL1wxLztz Ly4qIC4qL3Vua25vd24vJ2ANCitBQ19TVUJTVChbWFRFTlNBX0JPQVJEX0VTUF0pDQorQU1fQ09O RElUSU9OQUwoW0hBVkVfWFRFTlNBX0JPQVJEX0VTUDMyXSwgW3Rlc3QgeCRYVEVOU0FfQk9BUkRf RVNQID0geGVzcDMyXSkNCitBTV9DT05ESVRJT05BTChbSEFWRV9YVEVOU0FfQk9BUkRfRVNQMzJT M10sIFt0ZXN0IHgkWFRFTlNBX0JPQVJEX0VTUCA9IHhlc3AzMnMzXSkNCitBTV9DT05ESVRJT05B TChbSEFWRV9YVEVOU0FfQk9BUkRfRVNQXSwgW2VjaG8gJFhURU5TQV9CT0FSRF9FU1AgfCBncmVw IC13IC1lIGVzcDMyIC1lIGVzcDMyczMgPi9kZXYvbnVsbCAyPiYxXSkNCmRpZmYgLS1naXQgYS9s aWJnbG9zcy94dGVuc2EvYXBwLmVsZi5sZCBiL2xpYmdsb3NzL3h0ZW5zYS9hcHAuZWxmLmxkDQpu ZXcgZmlsZSBtb2RlIDEwMDY0NA0KaW5kZXggMDAwMDAwMDAwLi4xMmM3ZWI4YWINCi0tLSAvZGV2 L251bGwNCisrKyBiL2xpYmdsb3NzL3h0ZW5zYS9hcHAuZWxmLmxkDQpAQCAtMCwwICsxLDE5MCBA QA0KK19fc3RhY2sgPSBPUklHSU4oZHJhbV9zZWcpICsgTEVOR1RIKGRyYW1fc2VnKTsNCitfX01J Tl9TVEFDS19TSVpFID0gMHgxMDAwOw0KKw0KK0VOVFJZKF9zdGFydCkNCitTRUNUSU9OUw0KK3sN CisgIC4gPSBTRUdNRU5UX1NUQVJUKCJpcmFtX3NlZyIsIDApOw0KKyAgLnZlY3RvcnMgICAgOg0K KyAgew0KKyAgICBfdmVjdG9yX3RhYmxlID0gQUJTT0xVVEUoLik7DQorICAgIC4gPSAweDA7DQor ICAgIEtFRVAoKiguV2luZG93VmVjdG9ycy50ZXh0KSk7DQorICAgIC4gPSAweDE4MDsNCisgICAg S0VFUCgqKC5MZXZlbDJJbnRlcnJ1cHRWZWN0b3IudGV4dCkpOw0KKyAgICAuID0gMHgxYzA7DQor ICAgIEtFRVAoKiguTGV2ZWwzSW50ZXJydXB0VmVjdG9yLnRleHQpKTsNCisgICAgLiA9IDB4MjAw Ow0KKyAgICBLRUVQKCooLkxldmVsNEludGVycnVwdFZlY3Rvci50ZXh0KSk7DQorICAgIC4gPSAw eDI0MDsNCisgICAgS0VFUCgqKC5MZXZlbDVJbnRlcnJ1cHRWZWN0b3IudGV4dCkpOw0KKyAgICAu ID0gMHgyODA7DQorICAgIEtFRVAoKiguRGVidWdFeGNlcHRpb25WZWN0b3IudGV4dCkpOw0KKyAg ICAuID0gMHgyYzA7DQorICAgIEtFRVAoKiguTk1JRXhjZXB0aW9uVmVjdG9yLnRleHQpKTsNCisg ICAgLiA9IDB4MzAwOw0KKyAgICBLRUVQKCooLktlcm5lbEV4Y2VwdGlvblZlY3Rvci50ZXh0KSk7 DQorICAgIC4gPSAweDM0MDsNCisgICAgS0VFUCgqKC5Vc2VyRXhjZXB0aW9uVmVjdG9yLnRleHQp KTsNCisgICAgLiA9IDB4M0MwOw0KKyAgICBLRUVQKCooLkRvdWJsZUV4Y2VwdGlvblZlY3Rvci50 ZXh0KSk7DQorICAgIC4gPSAweDQwMDsNCisgICAgS0VFUCgqKC5SZXNldFZlY3Rvci50ZXh0KSk7 DQorICAgICooLipWZWN0b3IubGl0ZXJhbCkNCisgICAgLiA9IEFMSUdOICgxNik7DQorICB9ID4g aXJhbV9zZWcNCisNCisgIHRleHQgICAgOg0KKyAgew0KKyAgICBLRUVQICgqKC5pbml0LmxpdGVy YWwpKQ0KKyAgICBLRUVQICgqKFNPUlRfTk9ORSguaW5pdCkpKQ0KKyAgICAqKC5saXRlcmFsIC50 ZXh0IC5zdHViIC5saXRlcmFsLiogLnRleHQuKiAuZ251LmxpbmtvbmNlLmxpdGVyYWwuKiAuZ251 LmxpbmtvbmNlLnQuKi5saXRlcmFsIC5nbnUubGlua29uY2UudC4qKQ0KKyAgICAvKiAuZ251Lndh cm5pbmcgc2VjdGlvbnMgYXJlIGhhbmRsZWQgc3BlY2lhbGx5IGJ5IGVsZjMyLmVtLiAgKi8NCisg ICAgKiguZ251Lndhcm5pbmcpDQorICAgIEtFRVAgKCooLmZpbmkubGl0ZXJhbCkpDQorICAgIEtF RVAgKCooU09SVF9OT05FKC5maW5pKSkpDQorICB9ID4gaXJhbV9zZWcNCisNCisgIFBST1ZJREUg KF9fZXRleHQgPSAuKTsNCisgIFBST1ZJREUgKF9ldGV4dCA9IC4pOw0KKyAgUFJPVklERSAoZXRl eHQgPSAuKTsNCisNCisgIC8qIEFkanVzdCB0aGUgYWRkcmVzcyBmb3IgdGhlIGRhdGEgc2VnbWVu dC4gIFdlIHdhbnQgdG8gYWRqdXN0IHVwIHRvDQorICAgICB0aGUgc2FtZSBhZGRyZXNzIHdpdGhp biB0aGUgcGFnZSBvbiB0aGUgbmV4dCBwYWdlIHVwLiAgKi8NCisgIC4gPSBBTElHTiAoQ09OU1RB TlQgKE1BWFBBR0VTSVpFKSkgLSAoKENPTlNUQU5UIChNQVhQQUdFU0laRSkgLSAuKSAmIChDT05T VEFOVCAoTUFYUEFHRVNJWkUpIC0gMSkpOyAuID0gREFUQV9TRUdNRU5UX0FMSUdOIChDT05TVEFO VCAoTUFYUEFHRVNJWkUpLCBDT05TVEFOVCAoQ09NTU9OUEFHRVNJWkUpKTsNCisNCisgIC5yb2Rh dGEgICAgOg0KKyAgew0KKyAgICAqKC5yb2RhdGEgLnJvZGF0YS4qIC5nbnUubGlua29uY2Uuci4q KQ0KKyAgICAqKC5yb2RhdGExKQ0KKyAgICAqKC5zZGF0YTIgLnNkYXRhMi4qIC5nbnUubGlua29u Y2UuczIuKikNCisgICAgKiguc2JzczIgLnNic3MyLiogLmdudS5saW5rb25jZS5zYjIuKikNCisg IH0NCisNCisgIC5wcmVpbml0X2FycmF5ICAgIDoNCisgIHsNCisgICAgUFJPVklERV9ISURERU4g KF9fcHJlaW5pdF9hcnJheV9zdGFydCA9IC4pOw0KKyAgICBLRUVQICgqKC5wcmVpbml0X2FycmF5 KSkNCisgICAgUFJPVklERV9ISURERU4gKF9fcHJlaW5pdF9hcnJheV9lbmQgPSAuKTsNCisgIH0N CisgIC5pbml0X2FycmF5ICAgIDoNCisgIHsNCisgICAgUFJPVklERV9ISURERU4gKF9faW5pdF9h cnJheV9zdGFydCA9IC4pOw0KKyAgICBLRUVQICgqKFNPUlRfQllfSU5JVF9QUklPUklUWSguaW5p dF9hcnJheS4qKSBTT1JUX0JZX0lOSVRfUFJJT1JJVFkoLmN0b3JzLiopKSkNCisgICAgS0VFUCAo KiguaW5pdF9hcnJheSBFWENMVURFX0ZJTEUgKCpjcnRiZWdpbi5vICpjcnRiZWdpbj8ubyAqY3J0 ZW5kLm8gKmNydGVuZD8ubyApIC5jdG9ycykpDQorICAgIFBST1ZJREVfSElEREVOIChfX2luaXRf YXJyYXlfZW5kID0gLik7DQorICB9DQorICAuZmluaV9hcnJheSAgICA6DQorICB7DQorICAgIFBS T1ZJREVfSElEREVOIChfX2ZpbmlfYXJyYXlfc3RhcnQgPSAuKTsNCisgICAgS0VFUCAoKihTT1JU X0JZX0lOSVRfUFJJT1JJVFkoLmZpbmlfYXJyYXkuKikgU09SVF9CWV9JTklUX1BSSU9SSVRZKC5k dG9ycy4qKSkpDQorICAgIEtFRVAgKCooLmZpbmlfYXJyYXkgRVhDTFVERV9GSUxFICgqY3J0YmVn aW4ubyAqY3J0YmVnaW4/Lm8gKmNydGVuZC5vICpjcnRlbmQ/Lm8gKSAuZHRvcnMpKQ0KKyAgICBQ Uk9WSURFX0hJRERFTiAoX19maW5pX2FycmF5X2VuZCA9IC4pOw0KKyAgfQ0KKyAgLmN0b3JzICAg ICAgICAgIDoNCisgIHsNCisgICAgLyogZ2NjIHVzZXMgY3J0YmVnaW4ubyB0byBmaW5kIHRoZSBz dGFydCBvZg0KKyAgICAgICB0aGUgY29uc3RydWN0b3JzLCBzbyB3ZSBtYWtlIHN1cmUgaXQgaXMN CisgICAgICAgZmlyc3QuICBCZWNhdXNlIHRoaXMgaXMgYSB3aWxkY2FyZCwgaXQNCisgICAgICAg ZG9lc24ndCBtYXR0ZXIgaWYgdGhlIHVzZXIgZG9lcyBub3QNCisgICAgICAgYWN0dWFsbHkgbGlu ayBhZ2FpbnN0IGNydGJlZ2luLm87IHRoZQ0KKyAgICAgICBsaW5rZXIgd29uJ3QgbG9vayBmb3Ig YSBmaWxlIHRvIG1hdGNoIGENCisgICAgICAgd2lsZGNhcmQuICBUaGUgd2lsZGNhcmQgYWxzbyBt ZWFucyB0aGF0IGl0DQorICAgICAgIGRvZXNuJ3QgbWF0dGVyIHdoaWNoIGRpcmVjdG9yeSBjcnRi ZWdpbi5vDQorICAgICAgIGlzIGluLiAgKi8NCisgICAgS0VFUCAoKmNydGJlZ2luLm8oLmN0b3Jz KSkNCisgICAgS0VFUCAoKmNydGJlZ2luPy5vKC5jdG9ycykpDQorICAgIC8qIFdlIGRvbid0IHdh bnQgdG8gaW5jbHVkZSB0aGUgLmN0b3Igc2VjdGlvbiBmcm9tDQorICAgICAgIHRoZSBjcnRlbmQu byBmaWxlIHVudGlsIGFmdGVyIHRoZSBzb3J0ZWQgY3RvcnMuDQorICAgICAgIFRoZSAuY3RvciBz ZWN0aW9uIGZyb20gdGhlIGNydGVuZCBmaWxlIGNvbnRhaW5zIHRoZQ0KKyAgICAgICBlbmQgb2Yg Y3RvcnMgbWFya2VyIGFuZCBpdCBtdXN0IGJlIGxhc3QgKi8NCisgICAgS0VFUCAoKihFWENMVURF X0ZJTEUgKCpjcnRlbmQubyAqY3J0ZW5kPy5vICkgLmN0b3JzKSkNCisgICAgS0VFUCAoKihTT1JU KC5jdG9ycy4qKSkpDQorICAgIEtFRVAgKCooLmN0b3JzKSkNCisgIH0NCisgIC5kdG9ycyAgICAg ICAgICA6DQorICB7DQorICAgIEtFRVAgKCpjcnRiZWdpbi5vKC5kdG9ycykpDQorICAgIEtFRVAg KCpjcnRiZWdpbj8ubyguZHRvcnMpKQ0KKyAgICBLRUVQICgqKEVYQ0xVREVfRklMRSAoKmNydGVu ZC5vICpjcnRlbmQ/Lm8gKSAuZHRvcnMpKQ0KKyAgICBLRUVQICgqKFNPUlQoLmR0b3JzLiopKSkN CisgICAgS0VFUCAoKiguZHRvcnMpKQ0KKyAgfQ0KKw0KKyAgX2RhdGFfc3RhcnQgPSAuOw0KKyAg LmRhdGEgICAgICAgICAgOg0KKyAgew0KKyAgICAqKC5kYXRhIC5kYXRhLiogLmdudS5saW5rb25j ZS5kLiopDQorICAgIFNPUlQoQ09OU1RSVUNUT1JTKQ0KKyAgICAqKC5kYXRhMSkNCisgIH0NCisg IF9lZGF0YSA9IC47IFBST1ZJREUgKGVkYXRhID0gLik7DQorICAuID0gLjsNCisgIF9fYnNzX3N0 YXJ0ID0gLjsNCisgIC5ic3MgICAgICAgICAgICA6DQorICB7DQorICAgICooLmR5bnNic3MpDQor ICAgICooLnNic3MgLnNic3MuKiAuZ251LmxpbmtvbmNlLnNiLiopDQorICAgICooLnNjb21tb24p DQorICAgICooLmR5bmJzcykNCisgICAgKiguYnNzIC5ic3MuKiAuZ251LmxpbmtvbmNlLmIuKikN CisgICAgKihDT01NT04pDQorICAgIC8qIEFsaWduIGhlcmUgdG8gZW5zdXJlIHRoYXQgdGhlIC5i c3Mgc2VjdGlvbiBvY2N1cGllcyBzcGFjZSB1cCB0bw0KKyAgICAgIF9lbmQuICBBbGlnbiBhZnRl ciAuYnNzIHRvIGVuc3VyZSBjb3JyZWN0IGFsaWdubWVudCBldmVuIGlmIHRoZQ0KKyAgICAgIC5i c3Mgc2VjdGlvbiBkaXNhcHBlYXJzIGJlY2F1c2UgdGhlcmUgYXJlIG5vIGlucHV0IHNlY3Rpb25z Lg0KKyAgICAgIEZJWE1FOiBXaHkgZG8gd2UgbmVlZCBpdD8gV2hlbiB0aGVyZSBpcyBubyAuYnNz IHNlY3Rpb24sIHdlIGRvIG5vdA0KKyAgICAgIHBhZCB0aGUgLmRhdGEgc2VjdGlvbi4gICovDQor ICAgIC4gPSBBTElHTiguICE9IDAgPyAzMiAvIDggOiAxKTsNCisgIH0NCisgIC4gPSBBTElHTigz MiAvIDgpOw0KKyAgLiA9IEFMSUdOKDMyIC8gOCk7DQorICBfZW5kID0gLjsgUFJPVklERSAoZW5k ID0gLik7DQorICAuID0gREFUQV9TRUdNRU5UX0VORCAoLik7DQorDQorICAvKiBDaGVjayBpZiBk YXRhICsgaGVhcCArIHN0YWNrIGV4Y2VlZHMgUkFNIGxpbWl0ICovDQorICBBU1NFUlQoLiA8PSBf X3N0YWNrIC0gX19NSU5fU1RBQ0tfU0laRSwgInJlZ2lvbiBEUkFNIG92ZXJmbG93ZWQgYnkgLmRh dGEgYW5kIC5ic3Mgc2VjdGlvbnMiKQ0KKw0KKyAgLyogU3RhYnMgZGVidWdnaW5nIHNlY3Rpb25z LiAgKi8NCisgIC5zdGFiICAgICAgICAgIDAgOiB7ICooLnN0YWIpIH0NCisgIC5zdGFic3RyICAg ICAgIDAgOiB7ICooLnN0YWJzdHIpIH0NCisgIC5zdGFiLmV4Y2wgICAgIDAgOiB7ICooLnN0YWIu ZXhjbCkgfQ0KKyAgLnN0YWIuZXhjbHN0ciAgMCA6IHsgKiguc3RhYi5leGNsc3RyKSB9DQorICAu c3RhYi5pbmRleCAgICAwIDogeyAqKC5zdGFiLmluZGV4KSB9DQorICAuc3RhYi5pbmRleHN0ciAw IDogeyAqKC5zdGFiLmluZGV4c3RyKSB9DQorICAuY29tbWVudCAgICAgICAwIDogeyAqKC5jb21t ZW50KSB9DQorICAuZ251LmJ1aWxkLmF0dHJpYnV0ZXMgOiB7ICooLmdudS5idWlsZC5hdHRyaWJ1 dGVzIC5nbnUuYnVpbGQuYXR0cmlidXRlcy4qKSB9DQorICAvKiBEV0FSRiBkZWJ1ZyBzZWN0aW9u cy4NCisgICAgIFN5bWJvbHMgaW4gdGhlIERXQVJGIGRlYnVnZ2luZyBzZWN0aW9ucyBhcmUgcmVs YXRpdmUgdG8gdGhlIGJlZ2lubmluZw0KKyAgICAgb2YgdGhlIHNlY3Rpb24gc28gd2UgYmVnaW4g dGhlbSBhdCAwLiAgKi8NCisgIC8qIERXQVJGIDEgKi8NCisgIC5kZWJ1ZyAgICAgICAgICAwIDog eyAqKC5kZWJ1ZykgfQ0KKyAgLmxpbmUgICAgICAgICAgIDAgOiB7ICooLmxpbmUpIH0NCisgIC8q IEdOVSBEV0FSRiAxIGV4dGVuc2lvbnMgKi8NCisgIC5kZWJ1Z19zcmNpbmZvICAwIDogeyAqKC5k ZWJ1Z19zcmNpbmZvKSB9DQorICAuZGVidWdfc2ZuYW1lcyAgMCA6IHsgKiguZGVidWdfc2ZuYW1l cykgfQ0KKyAgLyogRFdBUkYgMS4xIGFuZCBEV0FSRiAyICovDQorICAuZGVidWdfYXJhbmdlcyAg MCA6IHsgKiguZGVidWdfYXJhbmdlcykgfQ0KKyAgLmRlYnVnX3B1Ym5hbWVzIDAgOiB7ICooLmRl YnVnX3B1Ym5hbWVzKSB9DQorICAvKiBEV0FSRiAyICovDQorICAuZGVidWdfaW5mbyAgICAgMCA6 IHsgKiguZGVidWdfaW5mbyAuZ251LmxpbmtvbmNlLndpLiopIH0NCisgIC5kZWJ1Z19hYmJyZXYg ICAwIDogeyAqKC5kZWJ1Z19hYmJyZXYpIH0NCisgIC5kZWJ1Z19saW5lICAgICAwIDogeyAqKC5k ZWJ1Z19saW5lIC5kZWJ1Z19saW5lLiogLmRlYnVnX2xpbmVfZW5kKSB9DQorICAuZGVidWdfZnJh bWUgICAgMCA6IHsgKiguZGVidWdfZnJhbWUpIH0NCisgIC5kZWJ1Z19zdHIgICAgICAwIDogeyAq KC5kZWJ1Z19zdHIpIH0NCisgIC5kZWJ1Z19sb2MgICAgICAwIDogeyAqKC5kZWJ1Z19sb2MpIH0N CisgIC5kZWJ1Z19tYWNpbmZvICAwIDogeyAqKC5kZWJ1Z19tYWNpbmZvKSB9DQorICAvKiBTR0kv TUlQUyBEV0FSRiAyIGV4dGVuc2lvbnMgKi8NCisgIC5kZWJ1Z193ZWFrbmFtZXMgMCA6IHsgKigu ZGVidWdfd2Vha25hbWVzKSB9DQorICAuZGVidWdfZnVuY25hbWVzIDAgOiB7ICooLmRlYnVnX2Z1 bmNuYW1lcykgfQ0KKyAgLmRlYnVnX3R5cGVuYW1lcyAwIDogeyAqKC5kZWJ1Z190eXBlbmFtZXMp IH0NCisgIC5kZWJ1Z192YXJuYW1lcyAgMCA6IHsgKiguZGVidWdfdmFybmFtZXMpIH0NCisgIC8q IERXQVJGIDMgKi8NCisgIC5kZWJ1Z19wdWJ0eXBlcyAwIDogeyAqKC5kZWJ1Z19wdWJ0eXBlcykg fQ0KKyAgLmRlYnVnX3JhbmdlcyAgIDAgOiB7ICooLmRlYnVnX3JhbmdlcykgfQ0KKyAgLyogRFdB UkYgRXh0ZW5zaW9uLiAgKi8NCisgIC5kZWJ1Z19tYWNybyAgICAwIDogeyAqKC5kZWJ1Z19tYWNy bykgfQ0KKyAgLmRlYnVnX2FkZHIgICAgIDAgOiB7ICooLmRlYnVnX2FkZHIpIH0NCisgIC5nbnUu YXR0cmlidXRlcyAwIDogeyBLRUVQICgqKC5nbnUuYXR0cmlidXRlcykpIH0NCisgIC9ESVNDQVJE LyA6IHsgKigubm90ZS5HTlUtc3RhY2spICooLmdudV9kZWJ1Z2xpbmspICooLmdudS5sdG9fKikg fQ0KK30NCisNCmRpZmYgLS1naXQgYS9saWJnbG9zcy94dGVuc2EvYm9hcmQuZWxmLnNwZWNzIGIv bGliZ2xvc3MveHRlbnNhL2JvYXJkLmVsZi5zcGVjcw0KbmV3IGZpbGUgbW9kZSAxMDA2NDQNCmlu ZGV4IDAwMDAwMDAwMC4uODdjZmYxOWU3DQotLS0gL2Rldi9udWxsDQorKysgYi9saWJnbG9zcy94 dGVuc2EvYm9hcmQuZWxmLnNwZWNzDQpAQCAtMCwwICsxLDUgQEANCisqc3RhcnRmaWxlOg0KK2Ny dDEtYm9hcmRzJU8lcw0KKw0KKypsaWI6DQorLWxjIC0td2hvbGUtYXJjaGl2ZSAtbGdsb3NzIC0t bm8td2hvbGUtYXJjaGl2ZSAtbHB0aHJlYWRfc3R1YnMgLWxjICVUbWVtb3J5LmVsZi5sZCAlVGFw cC5lbGYubGQNCmRpZmYgLS1naXQgYS9saWJnbG9zcy94dGVuc2EvYm9hcmRzL2VzcDMyL2JvYXJk LmMgYi9saWJnbG9zcy94dGVuc2EvYm9hcmRzL2VzcDMyL2JvYXJkLmMNCm5ldyBmaWxlIG1vZGUg MTAwNjQ0DQppbmRleCAwMDAwMDAwMDAuLjkwNWJmMTcxZQ0KLS0tIC9kZXYvbnVsbA0KKysrIGIv bGliZ2xvc3MveHRlbnNhL2JvYXJkcy9lc3AzMi9ib2FyZC5jDQpAQCAtMCwwICsxLDE5IEBADQor I2luY2x1ZGUgPHN0ZGludC5oPg0KKyNpbmNsdWRlIDxzb2MvdWFydC5oPg0KKw0KK3ZvaWQgYm9h cmRfaW5pdCh2b2lkKQ0KK3sNCisgICAgV1JJVEVfUkVHSVNURVIoVUFSVDBfQ0xLRElWX1JFRywg VUFSVDBfQ0xLRElWX1ZBTCk7DQorfQ0KKw0KK3ZvaWQgYm9hcmRfdWFydF93cml0ZV9jaGFyKGNo YXIgYykNCit7DQorICAgIC8qIHdhaXQgdW50aWwgdHhmaWZvX2NudCA9PSAwICovDQorICAgIHdo aWxlIChVQVJUMF9UWEZJRk9fQ05UKSB7DQorICAgICAgICA7DQorICAgIH0NCisgICAgaWYgKGMg PT0gJ1xuJykgew0KKyAgICAgICAgV1JJVEVfUkVHSVNURVIoVUFSVDBfVFhfQUREUiwgJ1xyJyk7 DQorICAgIH0NCisgICAgV1JJVEVfUkVHSVNURVIoVUFSVDBfVFhfQUREUiwgYyk7DQorfQ0KZGlm ZiAtLWdpdCBhL2xpYmdsb3NzL3h0ZW5zYS9ib2FyZHMvZXNwMzIvaW5jbHVkZS9zb2MvY3B1Lmgg Yi9saWJnbG9zcy94dGVuc2EvYm9hcmRzL2VzcDMyL2luY2x1ZGUvc29jL2NwdS5oDQpuZXcgZmls ZSBtb2RlIDEwMDY0NA0KaW5kZXggMDAwMDAwMDAwLi5kNTcwZDM1MDINCi0tLSAvZGV2L251bGwN CisrKyBiL2xpYmdsb3NzL3h0ZW5zYS9ib2FyZHMvZXNwMzIvaW5jbHVkZS9zb2MvY3B1LmgNCkBA IC0wLDAgKzEsMTEgQEANCisjaWZuZGVmIFNPQ19DUFVfSA0KKyNkZWZpbmUgU09DX0NQVV9IDQor DQorLyoNCisgKiBFU1AzMiBzdGFydHMgd2l0aCBDUFUgZnJlcXVlbmN5IDQwTUh6DQorICogTGV0 J3MgZG8gbm90IHJlY29uZmlndXJlIGl0IHRvIHNpbXBsaWZ5IGxpYmdsb3NzDQorICovDQorI2Rl ZmluZSBDUFVfRlJFUVVFTkNZX01IWiA0MA0KKyNkZWZpbmUgQ1BVX0ZSRVFVRU5DWV9IWiAoQ1BV X0ZSRVFVRU5DWV9NSFogKiAxMDAwMDAwKQ0KKw0KKyNlbmRpZiAvLyBTT0NfQ1BVX0gNCmRpZmYg LS1naXQgYS9saWJnbG9zcy94dGVuc2EvYm9hcmRzL2VzcDMyL2luY2x1ZGUvc29jL3VhcnQuaCBi L2xpYmdsb3NzL3h0ZW5zYS9ib2FyZHMvZXNwMzIvaW5jbHVkZS9zb2MvdWFydC5oDQpuZXcgZmls ZSBtb2RlIDEwMDY0NA0KaW5kZXggMDAwMDAwMDAwLi5jNWYxZGMyOGENCi0tLSAvZGV2L251bGwN CisrKyBiL2xpYmdsb3NzL3h0ZW5zYS9ib2FyZHMvZXNwMzIvaW5jbHVkZS9zb2MvdWFydC5oDQpA QCAtMCwwICsxLDE5IEBADQorI2lmbmRlZiBTT0NfVUFSVF9IDQorI2RlZmluZSBTT0NfVUFSVF9I DQorDQorI2luY2x1ZGUgPHNvYy9jcHUuaD4NCisjaW5jbHVkZSA8cmVnaXN0ZXJfYWNjZXNzLmg+ DQorDQorI2RlZmluZSBVQVJUMF9CQVVEUkFURQkJMTE1MjAwDQorDQorI2RlZmluZSBVQVJUMF9U WF9BRERSCQkweDYwMDAwMDAwDQorI2RlZmluZSBVQVJUMF9CQVNFCSAgICAgICAgMHgzZmY0MDAw MA0KKyNkZWZpbmUgVUFSVDBfQ0xLRElWX1JFRwkoVUFSVDBfQkFTRSArIDB4MTQpDQorI2RlZmlu ZSBVQVJUMF9TVEFUVVMJCShVQVJUMF9CQVNFICsgMHgxYykNCisjZGVmaW5lIFVBUlQwX0NMS0RJ Vl9WQUwJKENQVV9GUkVRVUVOQ1lfSFogLyBVQVJUMF9CQVVEUkFURSApDQorI2RlZmluZSBVQVJU MF9UWEZJRk9fQ05UCSgoKFJFQURfUkVHSVNURVIoVUFSVDBfU1RBVFVTKSkgPj4gMTYpICYgMHhm ZikNCisNCisNCit2b2lkIGJvYXJkX3VhcnRfd3JpdGVfY2hhcihjaGFyIGMpOw0KKw0KKyNlbmRp ZiAvLyBTT0NfVUFSVF9IDQpkaWZmIC0tZ2l0IGEvbGliZ2xvc3MveHRlbnNhL2JvYXJkcy9lc3Az Mi9tZW1vcnkuZWxmLmxkIGIvbGliZ2xvc3MveHRlbnNhL2JvYXJkcy9lc3AzMi9tZW1vcnkuZWxm LmxkDQpuZXcgZmlsZSBtb2RlIDEwMDY0NA0KaW5kZXggMDAwMDAwMDAwLi5mYTBlNDIzYjUNCi0t LSAvZGV2L251bGwNCisrKyBiL2xpYmdsb3NzL3h0ZW5zYS9ib2FyZHMvZXNwMzIvbWVtb3J5LmVs Zi5sZA0KQEAgLTAsMCArMSwyNiBAQA0KKy8qDQorICogSVJPTS9EUkFNIGRlZmluaXRpb24gaW4g UUVNVToNCisgKiAgICAgW0VTUDMyX01FTVJFR0lPTl9JUk9NXSA9IHsgMHg0MDAwMDAwMCwgMHg3 MDAwMCB9LA0KKyAqICAgICBbRVNQMzJfTUVNUkVHSU9OX0RSQU1dID0geyAweDNmZmFlMDAwLCAw eDUyMDAwIH0sDQorICoNCisgKiBJbiB0aGVvcnkgd2UgY291bGQgdXNlIHdob2xlIERSQU0gc2Vj dGlvbiwgYnV0IEkgaGFkIHNvbWUgZmF1bHRzIHdoZW4gdXNpbmcNCisgKiBtZW1vcnkgaW4gcmFu Z2UgMHgzZmZhZTAwMCAtIDB4M2ZmYjAwMDANCisgKg0KKyAqIEJ1dCB1c2VkIG1lbW9yeSByYW5n ZSBmb3IgZGF0YSBzdWNoIGFzIGVzcC1pZGYgZm9yIEVTUDMyIHRvIHNhdGlzZnkgdXNlcidzDQor ICogZXhwZWN0YXRpb24gb24gY2hpcCBlbXVsYXRpb24NCisgKg0KKyAqIFBhc3MgJy0tZGVmc3lt PWVudGlyZV9kcmFtX3NlZz0xJyB0byBsaW5rZXIgc2NyaXB0IHRvIHVzZSB3aG9sZSBEUkFNDQor ICoNCisgKi8NCisNCitNRU1PUlkNCit7DQorICBpcmFtX3NlZyAgKFgpIDogb3JnID0gMHg0MDA3 ODAwMCwgbGVuID0gMHgyODAwMA0KKy8qIDY0ayBhdCB0aGUgZW5kIG9mIERSQU0sIGFmdGVyIFJP TSBib290bG9hZGVyIHN0YWNrDQorICogb3IgZW50aXJlIERSQU0gKGZvciBRRU1VIG9ubHkpDQor ICovDQorICBkcmFtX3NlZyAoUlcpIDogb3JnID0gREVGSU5FRChlbnRpcmVfZHJhbV9zZWcpID8g MHgzRkZCMDAwMCA6IDB4M0ZGRjAwMDAsDQorICAgICAgICAgICAgICAgICAgbGVuID0gREVGSU5F RChlbnRpcmVfZHJhbV9zZWcpID8gMHg1MDAwMCA6IDB4MTAwMDANCit9DQorDQorDQpkaWZmIC0t Z2l0IGEvbGliZ2xvc3MveHRlbnNhL2JvYXJkcy9lc3AzMnMzL2JvYXJkLmMgYi9saWJnbG9zcy94 dGVuc2EvYm9hcmRzL2VzcDMyczMvYm9hcmQuYw0KbmV3IGZpbGUgbW9kZSAxMDA2NDQNCmluZGV4 IDAwMDAwMDAwMC4uOTA1YmYxNzFlDQotLS0gL2Rldi9udWxsDQorKysgYi9saWJnbG9zcy94dGVu c2EvYm9hcmRzL2VzcDMyczMvYm9hcmQuYw0KQEAgLTAsMCArMSwxOSBAQA0KKyNpbmNsdWRlIDxz dGRpbnQuaD4NCisjaW5jbHVkZSA8c29jL3VhcnQuaD4NCisNCit2b2lkIGJvYXJkX2luaXQodm9p ZCkNCit7DQorICAgIFdSSVRFX1JFR0lTVEVSKFVBUlQwX0NMS0RJVl9SRUcsIFVBUlQwX0NMS0RJ Vl9WQUwpOw0KK30NCisNCit2b2lkIGJvYXJkX3VhcnRfd3JpdGVfY2hhcihjaGFyIGMpDQorew0K KyAgICAvKiB3YWl0IHVudGlsIHR4Zmlmb19jbnQgPT0gMCAqLw0KKyAgICB3aGlsZSAoVUFSVDBf VFhGSUZPX0NOVCkgew0KKyAgICAgICAgOw0KKyAgICB9DQorICAgIGlmIChjID09ICdcbicpIHsN CisgICAgICAgIFdSSVRFX1JFR0lTVEVSKFVBUlQwX1RYX0FERFIsICdccicpOw0KKyAgICB9DQor ICAgIFdSSVRFX1JFR0lTVEVSKFVBUlQwX1RYX0FERFIsIGMpOw0KK30NCmRpZmYgLS1naXQgYS9s aWJnbG9zcy94dGVuc2EvYm9hcmRzL2VzcDMyczMvaW5jbHVkZS9zb2MvY3B1LmggYi9saWJnbG9z cy94dGVuc2EvYm9hcmRzL2VzcDMyczMvaW5jbHVkZS9zb2MvY3B1LmgNCm5ldyBmaWxlIG1vZGUg MTAwNjQ0DQppbmRleCAwMDAwMDAwMDAuLjJhNjc5M2E4ZA0KLS0tIC9kZXYvbnVsbA0KKysrIGIv bGliZ2xvc3MveHRlbnNhL2JvYXJkcy9lc3AzMnMzL2luY2x1ZGUvc29jL2NwdS5oDQpAQCAtMCww ICsxLDExIEBADQorI2lmbmRlZiBTT0NfQ1BVX0gNCisjZGVmaW5lIFNPQ19DUFVfSA0KKw0KKy8q DQorICogRVNQMzJTMyBzdGFydHMgd2l0aCBDUFUgZnJlcXVlbmN5IDQwTUh6DQorICogTGV0J3Mg ZG8gbm90IHJlY29uZmlndXJlIGl0IHRvIHNpbXBsaWZ5IGxpYmdsb3NzDQorICovDQorI2RlZmlu ZSBDUFVfRlJFUVVFTkNZX01IWiA0MA0KKyNkZWZpbmUgQ1BVX0ZSRVFVRU5DWV9IWiAoQ1BVX0ZS RVFVRU5DWV9NSFogKiAxMDAwMDAwKQ0KKw0KKyNlbmRpZiAvLyBTT0NfQ1BVX0gNCmRpZmYgLS1n aXQgYS9saWJnbG9zcy94dGVuc2EvYm9hcmRzL2VzcDMyczMvaW5jbHVkZS9zb2MvdWFydC5oIGIv bGliZ2xvc3MveHRlbnNhL2JvYXJkcy9lc3AzMnMzL2luY2x1ZGUvc29jL3VhcnQuaA0KbmV3IGZp bGUgbW9kZSAxMDA2NDQNCmluZGV4IDAwMDAwMDAwMC4uYzMyMzIzYTc3DQotLS0gL2Rldi9udWxs DQorKysgYi9saWJnbG9zcy94dGVuc2EvYm9hcmRzL2VzcDMyczMvaW5jbHVkZS9zb2MvdWFydC5o DQpAQCAtMCwwICsxLDE5IEBADQorI2lmbmRlZiBTT0NfVUFSVF9IDQorI2RlZmluZSBTT0NfVUFS VF9IDQorDQorI2luY2x1ZGUgPHNvYy9jcHUuaD4NCisjaW5jbHVkZSA8cmVnaXN0ZXJfYWNjZXNz Lmg+DQorDQorI2RlZmluZSBVQVJUMF9CQVVEUkFURSAgICAgIDExNTIwMA0KKw0KKyNkZWZpbmUg VUFSVDBfVFhfQUREUiAgICAgICAweDYwMDAwMDAwDQorI2RlZmluZSBVQVJUMF9CQVNFICAgICAg ICAgIDB4NjAwMDAwMDANCisjZGVmaW5lIFVBUlQwX0NMS0RJVl9SRUcgICAgKFVBUlQwX0JBU0Ug KyAweDE0KQ0KKyNkZWZpbmUgVUFSVDBfU1RBVFVTICAgICAgICAoVUFSVDBfQkFTRSArIDB4MWMp DQorI2RlZmluZSBVQVJUMF9DTEtESVZfVkFMICAgIChDUFVfRlJFUVVFTkNZX0haIC8gVUFSVDBf QkFVRFJBVEUgKQ0KKyNkZWZpbmUgVUFSVDBfVFhGSUZPX0NOVCAgICAoKChSRUFEX1JFR0lTVEVS KFVBUlQwX1NUQVRVUykpID4+IDE2KSAmIDB4M2ZmKQ0KKw0KKw0KK3ZvaWQgYm9hcmRfdWFydF93 cml0ZV9jaGFyKGNoYXIgYyk7DQorDQorI2VuZGlmIC8vIFNPQ19VQVJUX0gNCmRpZmYgLS1naXQg YS9saWJnbG9zcy94dGVuc2EvYm9hcmRzL2VzcDMyczMvbWVtb3J5LmVsZi5sZCBiL2xpYmdsb3Nz L3h0ZW5zYS9ib2FyZHMvZXNwMzJzMy9tZW1vcnkuZWxmLmxkDQpuZXcgZmlsZSBtb2RlIDEwMDY0 NA0KaW5kZXggMDAwMDAwMDAwLi42NDI2YjdmYzYNCi0tLSAvZGV2L251bGwNCisrKyBiL2xpYmds b3NzL3h0ZW5zYS9ib2FyZHMvZXNwMzJzMy9tZW1vcnkuZWxmLmxkDQpAQCAtMCwwICsxLDIxIEBA DQorLyoNCisgKiBJUk9NL0RSQU0gZGVmaW5pdGlvbiBpbiBRRU1VOg0KKyAqICAgICBbRVNQMzJT M19NRU1SRUdJT05fSVJPTV0gPSB7IDB4NDAwMDAwMDAsIDB4NjAwMDAgfSwNCisgKiAgICAgW0VT UDMyUzNfTUVNUkVHSU9OX0RSQU1dID0geyAweDNGQzgwMDAwLCAweDcwMDAwIH0sDQorICoNCisg KiBJbiB0aGVvcnkgd2UgY291bGQgdXNlIHdob2xlIERSQU0gc2VjdGlvbiwgYnV0IEkgaGFkIHNv bWUgZmF1bHRzIHdoZW4gdXNpbmcNCisgKiBtZW1vcnkgaW4gcmFuZ2UgMHgzZmZhZTAwMCAtIDB4 M2ZmYjAwMDANCisgKg0KKyAqIEJ1dCB1c2VkIG1lbW9yeSByYW5nZSBmb3IgZGF0YSBzdWNoIGFz IGVzcC1pZGYgZm9yIEVTUDMyUzMgdG8gc2F0aXNmeSB1c2VyJ3MNCisgKiBleHBlY3RhdGlvbiBv biBjaGlwIGVtdWxhdGlvbg0KKyAqDQorICogUGFzcyAnLS1kZWZzeW09ZW50aXJlX2RyYW1fc2Vn PTEnIHRvIGxpbmtlciBzY3JpcHQgdG8gdXNlIHdob2xlIERSQU0NCisgKg0KKyAqLw0KKw0KK01F TU9SWQ0KK3sNCisgIGlyYW1fc2VnICAoWCkgOiBvcmcgPSAweDQwMzc4MDAwLCBsZW4gPSAweDcw MDAwDQorICBkcmFtX3NlZyAoUlcpIDogb3JnID0gREVGSU5FRChlbnRpcmVfZHJhbV9zZWcpID8g MHgzRkM4MDAwMCA6IDB4M0ZDRjAwMDAsDQorICAgICAgICAgICAgICAgICAgbGVuID0gREVGSU5F RChlbnRpcmVfZHJhbV9zZWcpID8gMHg3MDAwMCA6IDB4MTAwMDANCit9DQpkaWZmIC0tZ2l0IGEv bGliZ2xvc3MveHRlbnNhL2NydDAuUyBiL2xpYmdsb3NzL3h0ZW5zYS9jcnQwLlMNCm5ldyBmaWxl IG1vZGUgMTAwNjQ0DQppbmRleCAwMDAwMDAwMDAuLmRlNGJiMDcxOQ0KLS0tIC9kZXYvbnVsbA0K KysrIGIvbGliZ2xvc3MveHRlbnNhL2NydDAuUw0KQEAgLTAsMCArMSwxNCBAQA0KKy8vIGNydDAu Uw0KKy8vIER1bW15IHN0YXJ0dXAgZmlsZSB3aGljaCBjYWxscyBtYWluKCkgZnVuY3Rpb24uDQor Ly8gSXQgY2FuIGJlIHVzZWQgZm9yIGNvbXBpbGF0aW9uIHRlc3RzIG9ubHkuDQorDQorCS50ZXh0 DQorDQorCS8qDQorCSAqICBTaW1wbGUganVtcCB0byBtYWluKCkuDQorCSAqLw0KKw0KKwkuZ2xv YmFsCV9zdGFydA0KKwlfc3RhcnQ6DQorCW1vdmkJYTQsIG1haW4NCisJangJYTQJCS8vIGp1bXAg dG8gbWFpbg0KZGlmZiAtLWdpdCBhL2xpYmdsb3NzL3h0ZW5zYS9jcnQxLWJvYXJkcy5TIGIvbGli Z2xvc3MveHRlbnNhL2NydDEtYm9hcmRzLlMNCm5ldyBmaWxlIG1vZGUgMTAwNjQ0DQppbmRleCAw MDAwMDAwMDAuLjY1YWI3YjQ1YQ0KLS0tIC9kZXYvbnVsbA0KKysrIGIvbGliZ2xvc3MveHRlbnNh L2NydDEtYm9hcmRzLlMNCkBAIC0wLDAgKzEsMjI2IEBADQorLy8gY3J0MS1ib2FyZHMuUw0KKy8v DQorLy8gRm9yIG1vc3QgaGFyZHdhcmUgLyBib2FyZHMsIHRoaXMgY29kZSBzZXRzIHVwIHRoZSBD IGNhbGxpbmcgY29udGV4dA0KKy8vIChzZXR0aW5nIHVwIHN0YWNrLCBQUywgYW5kIGNsZWFyaW5n IEJTUykgYW5kIGp1bXBzIHRvIF9fY2xpYnJhcnlfc3RhcnQNCisvLyB3aGljaCBzZXRzIHVwIHRo ZSBDIGxpYnJhcnksIGNhbGxzIGNvbnN0cnVjdG9ycyBhbmQgcmVnaXN0ZXJzIGRlc3RydWN0b3Jz LA0KKy8vIGFuZCBjYWxscyBtYWluKCkuDQorLy8NCisvLyBDb250cm9sIGFycml2ZXMgaGVyZSBh dCBfc3RhcnQgZnJvbSB0aGUgcmVzZXQgdmVjdG9yIG9yIGZyb20gY3J0MC1hcHAuUy4NCisNCisv LyBDb3B5cmlnaHQgKGMpIDE5OTgtMjAxMyBUZW5zaWxpY2EgSW5jLg0KKy8vDQorLy8gUGVybWlz c2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0 YWluaW5nDQorLy8gYSBjb3B5IG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1l bnRhdGlvbiBmaWxlcyAodGhlDQorLy8gIlNvZnR3YXJlIiksIHRvIGRlYWwgaW4gdGhlIFNvZnR3 YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZw0KKy8vIHdpdGhvdXQgbGltaXRhdGlv biB0aGUgcmlnaHRzIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwNCisvLyBk aXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbCBjb3BpZXMgb2YgdGhlIFNvZnR3YXJl LCBhbmQgdG8NCisvLyBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpcyBmdXJu aXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8NCisvLyB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6 DQorLy8NCisvLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9u IG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZA0KKy8vIGluIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRp YWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLg0KKy8vDQorLy8gVEhFIFNPRlRXQVJFIElTIFBS T1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsDQorLy8gRVhQUkVT UyBPUiBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVT IE9GDQorLy8gTUVSQ0hBTlRBQklMSVRZLCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9T RSBBTkQgTk9OSU5GUklOR0VNRU5ULg0KKy8vIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBBVVRIT1JT IE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZDQorLy8gQ0xBSU0sIERBTUFH RVMgT1IgT1RIRVIgTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwN CisvLyBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLCBPVVQgT0YgT1IgSU4gQ09OTkVD VElPTiBXSVRIIFRIRQ0KKy8vIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1Mg SU4gVEhFIFNPRlRXQVJFLg0KKw0KKyNpbmNsdWRlIDx4dGVuc2EvY29yZWJpdHMuaD4NCisNCisN CisvLyBFeHBvcnRzDQorLmdsb2JhbCBfc3RhcnQNCisNCisvLyBJbXBvcnRzDQorLy8gICBfX2Ns aWJyYXJ5X2luaXQJCWZyb20gQyBsaWJyYXJ5IChlZy4gbmV3bGliIG9yIHVjbGliYykNCisvLyAg IGV4aXQJCQlmcm9tIEMgbGlicmFyeQ0KKy8vICAgbWFpbgkJCWZyb20gdXNlciBhcHBsaWNhdGlv bg0KKy8vICAgYm9hcmRfaW5pdAkJCWJvYXJkLXNwZWNpZmljICh1YXJ0L21pbmdsb3NzL3Rpbnln bG9zcy5jKQ0KKy8vICAgeHRoYWxfZGNhY2hlX2FsbF93cml0ZWJhY2sJZnJvbSBIQUwgbGlicmFy eQ0KKy8vICAgX19zdGFjawkJCWZyb20gbGlua2VyIHNjcmlwdCAoc2VlIExTUCBSZWYgTWFudWFs KQ0KKy8vICAgX19ic3Nfc3RhcnQJCWZyb20gbGlua2VyIHNjcmlwdCAoc2VlIExTUCBSZWYgTWFu dWFsKQ0KKy8vICAgX2VuZAkJCWZyb20gbGlua2VyIHNjcmlwdCAoc2VlIExTUCBSZWYgTWFudWFs KQ0KKw0KKy50eXBlCW1haW4sIEBmdW5jdGlvbg0KKw0KKyMgZGVmaW5lIENBTEwJY2FsbDQNCisj IGRlZmluZSBDQUxMWAljYWxseDQNCisjIGRlZmluZSBBUkcxCWE2CS8qIDFzdCBvdXRnb2luZyBj YWxsIGFyZ3VtZW50ICovDQorIyBkZWZpbmUgQVJHMglhNwkvKiAybmQgb3V0Z29pbmcgY2FsbCBh cmd1bWVudCAqLw0KKyMgZGVmaW5lIEFSRzMJYTgJLyogM3JkIG91dGdvaW5nIGNhbGwgYXJndW1l bnQgKi8NCisjIGRlZmluZSBBUkc0CWE5CS8qIDR0aCBvdXRnb2luZyBjYWxsIGFyZ3VtZW50ICov DQorIyBkZWZpbmUgQVJHNQlhMTAJLyogNXRoIG91dGdvaW5nIGNhbGwgYXJndW1lbnQgKi8NCisN CisNCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKiovDQorDQorCS50ZXh0DQorCS5hbGlnbiA0DQorX3N0YXJ0 Og0KKwkvLyAgX3N0YXJ0IGlzIHR5cGljYWxseSBOT1QgYXQgdGhlIGJlZ2lubmluZyBvZiB0aGUg dGV4dCBzZWdtZW50IC0tDQorCS8vICBpdCBpcyBhbHdheXMgY2FsbGVkIGZyb20gZWl0aGVyIHRo ZSByZXNldCB2ZWN0b3Igb3Igb3RoZXIgY29kZQ0KKwkvLyAgdGhhdCBkb2VzIGVxdWl2YWxlbnQg aW5pdGlhbGl6YXRpb24gKHN1Y2ggYXMgY3J0MC1hcHAuUykuDQorCS8vDQorCS8vICBBc3N1bXB0 aW9ucyBvbiBlbnRyeSB0byBfc3RhcnQ6DQorCS8vCS0gbG93IChsZXZlbC1vbmUpIGFuZCBtZWRp dW0gcHJpb3JpdHkgaW50ZXJydXB0cyBhcmUgZGlzYWJsZWQNCisJLy8JICB2aWEgUFMuSU5UTEVW RUwgYW5kL29yIElOVEVOQUJMRSAoUFMuSU5UTEVWRUwgaXMgZXhwZWN0ZWQgdG8NCisJLy8JICBi ZSB6ZXJvZWQsIHRvIHBvdGVudGlhbGx5IGVuYWJsZSB0aGVtLCBiZWZvcmUgY2FsbGluZyBtYWlu KQ0KKwkvLwktIEMgY2FsbGluZyBjb250ZXh0IG5vdCBpbml0aWFsaXplZDoNCisJLy8JICAtIFBT IG5vdCBpbml0aWFsaXplZA0KKwkvLwkgIC0gU1Agbm90IGluaXRpYWxpemVkDQorCS8vCS0gdGhl IGZvbGxvd2luZyBhcmUgaW5pdGlhbGl6ZWQ6DQorCS8vCSAgLSBMSVRCQVNFLCBjYWNoZSBhdHRy aWJ1dGVzLCBXaW5kb3dCYXNlLCBXaW5kb3dTdGFydCwNCisJLy8JICAgIENQRU5BQkxFLCBGUCdz IEZDUiBhbmQgRlNSLCBFWENTQVZFW25dDQorDQorCS8vIEtlZXAgYTAgemVyby4gIEl0IGlzIHVz ZWQgdG8gaW5pdGlhbGl6ZSBhIGZldyB0aGluZ3MuDQorCS8vIEl0IGlzIGFsc28gdGhlIHJldHVy biBhZGRyZXNzLCB3aGVyZSB6ZXJvIGluZGljYXRlcw0KKwkvLyB0aGF0IHRoZSBmcmFtZSB1c2Vk IGJ5IF9zdGFydCBpcyB0aGUgYm90dG9tbW9zdCBmcmFtZS4NCisJLy8NCisNCisJbW92aQlhMCwg MAkJLy8ga2VlcCB0aGlzIHJlZ2lzdGVyIHplcm8uDQorDQorCXdzcglhMCwgSU5URU5BQkxFCS8v IElOVEVOQUJMRSB2YWx1ZSBpcyBub3QgZGVmaW5lZCBhZnRlciByZXNldC4NCisJCQkJLy9tYWtl IHN1cmUgdGhhdCBpbnRlcnJ1cHRzIGFyZSBzaHV0IG9mZiAoKmJlZm9yZSogd2UgbG93ZXIgUFMu SU5UTEVWRUwgYW5kIFBTLkVYQ00hKQ0KKw0KKwkvLyAgV2luZG93ZWQgcmVnaXN0ZXIgaW5pdCwg c28gd2UgY2FuIGNhbGwgd2luZG93ZWQgY29kZSAoZWcuIEMgY29kZSkuDQorCW1vdmkJYTEsIDEN CisJd3NyCWExLCBXSU5ET1dTVEFSVA0KKwkvLyAgVGhlIHByb2Nlc3NvciBhbHdheXMgY2xlYXJz IFdJTkRPV0JBU0UgYXQgcmVzZXQsIHNvIG5vIG5lZWQgdG8gY2xlYXIgaXQgaGVyZS4NCisJLy8g IEl0IHJlc2V0cyBXSU5ET1dTVEFSVCB0byAxIHN0YXJ0aW5nIHdpdGggTFgyLjAvWDcuMCAoUkIt MjAwNi4wKS4NCisJLy8gIEhvd2V2ZXIsIGFzc3VtaW5nIGhhcmQgcmVzZXQgaXMgbm90IHlldCBh bHdheXMgcHJhY3RpY2FsLCBzbyBkbyB0aGlzIGFueXdheToNCisJd3NyCWEwLCBXSU5ET1dCQVNF DQorCXJzeW5jDQorDQorCS8vIFNldCBWRUNCQVNFIHRvIHVzZSBvdXIgdmVjdG9ycyBpbnN0ZWFk IHZlY3RvcnMgaW4gUk9NDQorCW1vdmkJYTEsIF92ZWN0b3JfdGFibGUNCisJd3NyCWExLCBWRUNC QVNFDQorDQorCS8vIEluaXRpYWxpemUgdGhlIHN0YWNrIHBvaW50ZXIuDQorCS8vIFNlZSB0aGUg IkFCSSBhbmQgU29mdHdhcmUgQ29udmVudGlvbnMiIGNoYXB0ZXIgaW4gdGhlDQorCS8vIFh0ZW5z YSBJU0EgUmVmZXJlbmNlIG1hbnVhbCBmb3IgZGV0YWlscy4NCisNCisJLy8gTk9URTogQmVjYXVz ZSB0aGUgX3N0YXJ0IHJvdXRpbmUgZG9lcyBub3QgdXNlIGFueSBtZW1vcnkgaW4gaXRzDQorCS8v IHN0YWNrIGZyYW1lLCBhbmQgYmVjYXVzZSBhbGwgb2YgaXRzIENBTEwgaW5zdHJ1Y3Rpb25zIHVz ZSBhDQorCS8vIHdpbmRvdyBzaXplIG9mIDQgKG9yIHplcm8pLCB0aGUgc3RhY2sgZnJhbWUgZm9y IF9zdGFydCBjYW4gYmUgZW1wdHkuDQorDQorCW1vdmkJc3AsIF9fc3RhY2sNCisNCisJLyoNCisJ ICogIE5vdyB0aGF0IHNwIChhMSkgaXMgc2V0LCB3ZSBjYW4gc2V0IFBTIGFzIHBlciB0aGUgYXBw bGljYXRpb24NCisJICogICh1c2VyIHZlY3RvciBtb2RlLCBlbmFibGUgaW50ZXJydXB0cywgZW5h YmxlIHdpbmRvdyBleGNlcHRpb25zIGlmIGFwcGxpY2FibGUpLg0KKwkgKi8NCisJbW92aQlhMywg UFNfVU18UFNfV09FDQorCXdzcglhMywgUFMNCisJcnN5bmMNCisNCisNCisJLyoNCisJICogIERv IGFueSBpbml0aWFsaXphdGlvbiB0aGF0IGFmZmVjdHMgdGhlIG1lbW9yeSBtYXAsIHN1Y2ggYXMN CisJICogIHNldHRpbmcgdXAgVExCIGVudHJpZXMsIHRoYXQgbmVlZHMgdG8gYmUgZG9uZSBiZWZv cmUgd2UgY2FuDQorCSAqICBzdWNjZXNzZnVsbHkgY2xlYXIgQlNTIChlLmcuIGlmIHNvbWUgQlNT IHNlZ21lbnRzIGFyZSBpbg0KKwkgKiAgcmVtYXBwZWQgYXJlYXMpLg0KKwkgKg0KKwkgKiAgTk9U RTogIFRoaXMgaG9vayB3b3JrcyB3aGVyZSB0aGUgcmVzZXQgdmVjdG9yIGRvZXMgbm90IHVucGFj aw0KKwkgKiAgc2VnbWVudHMgKHNlZSAiUk9NIHBhY2tpbmciIGluIHRoZSBMU1AgbWFudWFsKSwg b3Igd2hlcmUNCisJICogIHVucGFja2luZyBvZiBzZWdtZW50cyBpcyBub3QgYWZmZWN0ZWQgYnkg bWVtb3J5IHJlbWFwcGluZy4NCisJICogIElmIFJPTSB1bnBhY2tpbmcgaXMgYWZmZWN0ZWQsIFRM QiBzZXR1cCBtdXN0IGJlIGRvbmUgaW4NCisJICogIGFzc2VtYmxlciBmcm9tIHRoZSByZXNldCB2 ZWN0b3IuDQorCSAqDQorCSAqICBUaGUgX19tZW1tYXBfaW5pdCgpIHJvdXRpbmUgY2FuIGJlIGEg QyBmdW5jdGlvbiwgaG93ZXZlciBpdA0KKwkgKiAgZG9lcyBub3QgaGF2ZSBCU1MgaW5pdGlhbGl6 ZWQhICBJbiBwYXJ0aWN1bGFyLCBfX21lbW1hcF9pbml0KCkNCisJICogIGNhbm5vdCBzZXQgQlNT IHZhcmlhYmxlcywgaS5lLiB1bmluaXRpYWxpemVkIGdsb2JhbCB2YXJpYWJsZXMNCisJICogICh0 aGV5J2xsIGJlIHdpcGVkIG91dCBieSB0aGUgZm9sbG93aW5nIEJTUyBjbGVhciksIG5vciBjYW4g aXQNCisJICogIGFzc3VtZSB0aGV5IGFyZSB5ZXQgaW5pdGlhbGl6ZWQgdG8gemVyby4NCisJICoN CisJICogIFRoZSBfX21lbW1hcF9pbml0KCkgZnVuY3Rpb24gaXMgb3B0aW9uYWwuICBJdCBpcyBt YXJrZWQgYXMgYQ0KKwkgKiAgd2VhayBzeW1ib2wsIHNvIHRoYXQgaXQgZ2V0cyB2YWx1ZWQgemVy byBpZiBub3QgZGVmaW5lZC4NCisJICovDQorCS53ZWFrCV9fbWVtbWFwX2luaXQNCisJbW92aQlh NCwgX19tZW1tYXBfaW5pdA0KKwliZXF6CWE0LCAxZg0KKwlDQUxMWAlhNA0KKzE6DQorDQorCS8q DQorCSAqICBDbGVhciB0aGUgQlNTICh1bmluaXRpYWxpemVkIGRhdGEpIHNlZ21lbnRzLg0KKwkg KiAgVGhpcyBjb2RlIHN1cHBvcnRzIG11bHRpcGxlIHplcm9lZCBzZWN0aW9ucyAoKi5ic3MpLg0K KwkgKg0KKwkgKi8NCisJbW92aQlhNiwgX19ic3Nfc3RhcnQNCisJbW92aQlhOCwgX2VuZA0KKwlz dWIJYTgsIGE4LCBhNg0KKwltb3ZpCWE3LCAwDQorCUNBTEwJbWVtc2V0DQorDQorCS8qIG5lZWQg dG8gaW5pdCByZWVudF9zIGJlZm9yZSBlbnRlcmluZyBleGl0ICovDQorCUNBTEwJX19pbml0cmVl bnQNCisNCisJLyogaW5pdCBzZW1paG9zdGluZyBpZiBoYXMgZnVuY3Rpb24gKi8NCisJLndlYWsg X19zZW1paG9zdGluZ19pbml0DQorCW1vdmkJYTQsIF9fc2VtaWhvc3RpbmdfaW5pdA0KKwliZXF6 CWE0LCAyZg0KKwlDQUxMWAlhNA0KKzI6DQorDQorCS8vICBXZSBjYW4gbm93IGNhbGwgQyBjb2Rl LCB0aGUgQyBjYWxsaW5nIGVudmlyb25tZW50IGhhcyBiZWVuIGluaXRpYWxpemVkLg0KKwkvLw0K KwkvLyAgRnJvbSB0aGlzIHBvaW50IG9uLCB3ZSB1c2UgQUJJLXNwZWNpZmljIG1hY3JvcyB0byBy ZWZlciB0byByZWdpc3RlcnMgYTAgLi4gYTE1DQorCS8vICAoQVJHIykuDQorDQorDQorCS50eXBl CWJvYXJkX2luaXQsIEBmdW5jdGlvbg0KKwkudHlwZQlfX2NsaWJyYXJ5X2luaXQsIEBmdW5jdGlv bg0KKwkudHlwZQlleGl0LCBAZnVuY3Rpb24NCisNCisNCisJLy8gIEluaXRpYWxpemUgdGhlIGJv YXJkIChlZy4gVUFSVCwgZXRjKS4NCisJQ0FMTAlib2FyZF9pbml0DQorDQorCS8qDQorCSAqICBD YWxsIF9fY2xpYnJhcnlfaW5pdCB0byBpbml0aWFsaXplIHRoZSBDIGxpYnJhcnk6DQorCSAqDQor CSAqICB2b2lkIF9fY2xpYnJhcnlfaW5pdChpbnQgYXJnYywgY2hhciAqKiBhcmd2LCBjaGFyICoq IGVudmlyb24sDQorCSAqCQl2b2lkKCppbml0X2Z1bmMpKHZvaWQpLCB2b2lkKCpmaW5pX2Z1bmMp KHZvaWQpKTsNCisJICovDQorDQorCS8vICBQYXNzIGFuIGVtcHR5IGFyZ3YgYXJyYXksIHdpdGgg YW4gZW1wdHkgc3RyaW5nIGFzIHRoZSBwcm9ncmFtIG5hbWUuDQorDQorCS53ZWFrIF9pbml0DQor CS53ZWFrIF9maW5pDQorCW1vdmkJQVJHMSwgX3N0YXJ0X2FyZ2MJLy8gYXJnYyBhZGRyZXNzDQor CW1vdmkJQVJHMiwgX3N0YXJ0X2FyZ3YJLy8gYXJndiA9IFsiIiwgMF0NCisJbW92aQlBUkczLCBf c3RhcnRfZW52cAkvLyBlbnZwID0gWzBdDQorCW1vdmkgCUFSRzQsIF9pbml0CQkvLyBmdW5jdGlv biB0aGF0IGNhbGxzIGNvbnN0cnVjdG9ycw0KKwltb3ZpCUFSRzUsIF9maW5pCQkvLyBmdW5jdGlv biB0aGF0IGNhbGxzIGRlc3RydWN0b3JzDQorCWwzMmkJQVJHMSwgQVJHMSwgMAkJLy8gYXJnYyA9 IDENCisJQ0FMTAlfX2NsaWJyYXJ5X2luaXQNCisNCisJLy8gIENhbGw6ICAgaW50IG1haW4oaW50 IGFyZ2MsIGNoYXIgKiogYXJndiwgY2hhciAqKiBlbnZpcm9uKTsNCisJbW92aQlBUkcxLCBfc3Rh cnRfYXJnYwkvLyBhcmdjIGFkZHJlc3MNCisJbW92aQlBUkcyLCBfc3RhcnRfYXJndgkvLyBhcmd2 ID0gWyIiLCAwXQ0KKwltb3ZpCUFSRzMsIF9zdGFydF9lbnZwCS8vIGVudnAgPSBbMF0NCisJbDMy aQlBUkcxLCBBUkcxLCAwCQkvLyBhcmdjID0gMQ0KKwlDQUxMCW1haW4NCisJLy8gIFRoZSByZXR1 cm4gdmFsdWUgaXMgdGhlIHNhbWUgcmVnaXN0ZXIgYXMgdGhlIGZpcnN0IG91dGdvaW5nIGFyZ3Vt ZW50Lg0KKwlDQUxMCWV4aXQJCQkvLyBleGl0IHdpdGggbWFpbidzIHJldHVybiB2YWx1ZQ0KKwkv LyBEb2VzIG5vdCByZXR1cm4gaGVyZS4NCisNCisJLmRhdGENCisJLy8gIE1hcmsgYXJnYy9hcmd2 L2VudnAgcGFyYW1ldGVycyBhcyB3ZWFrIHNvIHRoYXQgYW4gZXh0ZXJuYWwNCisJLy8gIG9iamVj dCBmaWxlIGNhbiBvdmVycmlkZSB0aGVtLg0KKwkud2Vhawlfc3RhcnRfYXJnYywgX3N0YXJ0X2Fy Z3YsIF9zdGFydF9lbnZwDQorCS5hbGlnbgk0DQorX3N0YXJ0X2FyZ3Y6DQorCS53b3JkCV9zdGFy dF9udWxsCS8vIGVtcHR5IHByb2dyYW0gbmFtZQ0KK19zdGFydF9udWxsOg0KK19zdGFydF9lbnZw Og0KKwkud29yZAkwCQkvLyBlbmQgb2YgYXJndiBhcnJheSwgZW1wdHkgc3RyaW5nLCBlbXB0eSBl bnZpcm9uDQorX3N0YXJ0X2FyZ2M6DQorCS53b3JkCTEJCS8vIG9uZSBhcmd1bWVudCAocHJvZ3Jh bSBuYW1lKQ0KKwkudGV4dA0KKw0KKwkuc2l6ZQlfc3RhcnQsIC4gLSBfc3RhcnQNCisNCmRpZmYg LS1naXQgYS9saWJnbG9zcy94dGVuc2EvY3J0MS1zaW0uUyBiL2xpYmdsb3NzL3h0ZW5zYS9jcnQx LXNpbS5TDQpuZXcgZmlsZSBtb2RlIDEwMDY0NA0KaW5kZXggMDAwMDAwMDAwLi5iOTQzM2YwMjAN Ci0tLSAvZGV2L251bGwNCisrKyBiL2xpYmdsb3NzL3h0ZW5zYS9jcnQxLXNpbS5TDQpAQCAtMCww ICsxLDIwNCBAQA0KKy8vIGNydDEtc2ltLlMNCisvLyBGb3IgdGhlIFh0ZW5zYSBzaW11bGF0b3Ig dGFyZ2V0LCB0aGlzIGNvZGUgc2V0cyB1cCB0aGUgQyBjYWxsaW5nIGNvbnRleHQNCisvLyBhbmQg Y2FsbHMgbWFpbigpICAodmlhIF9fY2xpYnJhcnlfc3RhcnQpLg0KKy8vIENvbnRyb2wgYXJyaXZl cyBoZXJlIGF0IF9zdGFydCBmcm9tIHRoZSByZXNldCB2ZWN0b3Igb3IgZnJvbSBjcnQwLWFwcC5T Lg0KKw0KKy8vIENvcHlyaWdodCAoYykgMTk5OC0yMDEyIFRlbnNpbGljYSBJbmMuDQorLy8NCisv LyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBl cnNvbiBvYnRhaW5pbmcNCisvLyBhIGNvcHkgb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRl ZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUNCisvLyAiU29mdHdhcmUiKSwgdG8gZGVhbCBpbiB0 aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nDQorLy8gd2l0aG91dCBs aW1pdGF0aW9uIHRoZSByaWdodHMgdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNo LA0KKy8vIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsIGNvcGllcyBvZiB0aGUg U29mdHdhcmUsIGFuZCB0bw0KKy8vIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJl IGlzIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0bw0KKy8vIHRoZSBmb2xsb3dpbmcgY29u ZGl0aW9uczoNCisvLw0KKy8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBl cm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkDQorLy8gaW4gYWxsIGNvcGllcyBvciBz dWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuDQorLy8NCisvLyBUSEUgU09GVFdB UkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwNCisv LyBFWFBSRVNTIE9SIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdB UlJBTlRJRVMgT0YNCisvLyBNRVJDSEFOVEFCSUxJVFksIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB UiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuDQorLy8gSU4gTk8gRVZFTlQgU0hBTEwgVEhF IEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkNCisvLyBDTEFJ TSwgREFNQUdFUyBPUiBPVEhFUiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENP TlRSQUNULA0KKy8vIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sIE9VVCBPRiBPUiBJ TiBDT05ORUNUSU9OIFdJVEggVEhFDQorLy8gU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBE RUFMSU5HUyBJTiBUSEUgU09GVFdBUkUuDQorDQorI2luY2x1ZGUgPHh0ZW5zYS9jb25maWcvY29y ZS1pc2EuaD4NCisjaW5jbHVkZSA8eHRlbnNhL2NvcmViaXRzLmg+DQorI2luY2x1ZGUgPHN5c2Nh bGxzLmg+DQorDQorLy8gRXhwb3J0cw0KKy5nbG9iYWwgX3N0YXJ0DQorDQorLy8gSW1wb3J0cw0K Ky8vICAgX19jbGlicmFyeV9pbml0CWZyb20gQyBsaWJyYXJ5IChlZy4gbmV3bGliIG9yIHVjbGli YykNCisvLyAgIGV4aXQJCWZyb20gQyBsaWJyYXJ5DQorLy8gICBtYWluCQlmcm9tIHVzZXIgYXBw bGljYXRpb24NCisvLyAgIF9fc3RhY2sJCWZyb20gbGlua2VyIHNjcmlwdCAoc2VlIExTUCBSZWYg TWFudWFsKQ0KKw0KKy50eXBlCV9fY2xpYnJhcnlfaW5pdCwgQGZ1bmN0aW9uDQorLnR5cGUJbWFp biwgQGZ1bmN0aW9uDQorLnR5cGUJZXhpdCwgQGZ1bmN0aW9uDQorDQorIyBkZWZpbmUgQ0FMTAlj YWxsNA0KKyMgZGVmaW5lIENBTExYCWNhbGx4NA0KKyMgZGVmaW5lIEFSRzEJYTYJLyogMXN0IG91 dGdvaW5nIGNhbGwgYXJndW1lbnQgKi8NCisjIGRlZmluZSBBUkcyCWE3CS8qIDJuZCBvdXRnb2lu ZyBjYWxsIGFyZ3VtZW50ICovDQorIyBkZWZpbmUgQVJHMwlhOAkvKiAzcmQgb3V0Z29pbmcgY2Fs bCBhcmd1bWVudCAqLw0KKyMgZGVmaW5lIEFSRzQJYTkJLyogNHRoIG91dGdvaW5nIGNhbGwgYXJn dW1lbnQgKi8NCisjIGRlZmluZSBBUkc1CWExMAkvKiA1dGggb3V0Z29pbmcgY2FsbCBhcmd1bWVu dCAqLw0KKw0KKwkJLmRhdGENCisJCS53ZWFrCV9zdGFydF9lbnZwCS8vIGFsbG93IG92ZXJyaWRp bmcNCisJCS5hbGlnbgk0DQorX3N0YXJ0X2VudnA6CS53b3JkCTAJCS8vIGVtcHR5IGVudmlyb24N CisNCisJLnRleHQNCisJLmFsaWduIDQNCisNCitfc3RhcnQ6DQorCS8vICBfc3RhcnQgaXMgdHlw aWNhbGx5IE5PVCBhdCB0aGUgYmVnaW5uaW5nIG9mIHRoZSB0ZXh0IHNlZ21lbnQgLS0NCisJLy8g IGl0IGlzIGFsd2F5cyBjYWxsZWQgZnJvbSBlaXRoZXIgdGhlIHJlc2V0IHZlY3RvciBvciBvdGhl ciBjb2RlDQorCS8vICB0aGF0IGRvZXMgZXF1aXZhbGVudCBpbml0aWFsaXphdGlvbiAoc3VjaCBh cyBjcnQwLWFwcC5TKS4NCisJLy8NCisJLy8gIEFzc3VtcHRpb25zIG9uIGVudHJ5IHRvIF9zdGFy dDoNCisJLy8JLSBsb3cgKGxldmVsLW9uZSkgYW5kIG1lZGl1bSBwcmlvcml0eSBpbnRlcnJ1cHRz IGFyZSBkaXNhYmxlZA0KKwkvLwkgIHZpYSBQUy5JTlRMRVZFTCBhbmQvb3IgSU5URU5BQkxFIChQ Uy5JTlRMRVZFTCBpcyBleHBlY3RlZCB0bw0KKwkvLwkgIGJlIHplcm9lZCwgdG8gcG90ZW50aWFs bHkgZW5hYmxlIHRoZW0sIGJlZm9yZSBjYWxsaW5nIG1haW4pDQorCS8vCS0gQyBjYWxsaW5nIGNv bnRleHQgbm90IGluaXRpYWxpemVkOg0KKwkvLwkgIC0gUFMgbm90IGluaXRpYWxpemVkDQorCS8v CSAgLSBTUCBub3QgaW5pdGlhbGl6ZWQNCisJLy8JLSB0aGUgZm9sbG93aW5nIGFyZSBpbml0aWFs aXplZDoNCisJLy8JICAtIExJVEJBU0UsIGNhY2hlIGF0dHJpYnV0ZXMsIFdpbmRvd0Jhc2UsIFdp bmRvd1N0YXJ0LA0KKwkvLwkgICAgQ1BFTkFCTEUsIEZQJ3MgRkNSIGFuZCBGU1IsIEVYQ1NBVkVb bl0NCisNCisJLy8gS2VlcCBhMCB6ZXJvLiAgSXQgaXMgdXNlZCB0byBpbml0aWFsaXplIGEgZmV3 IHRoaW5ncy4NCisJLy8gSXQgaXMgYWxzbyB0aGUgcmV0dXJuIGFkZHJlc3MsIHdoZXJlIHplcm8g aW5kaWNhdGVzDQorCS8vIHRoYXQgdGhlIGZyYW1lIHVzZWQgYnkgX3N0YXJ0IGlzIHRoZSBib3R0 b21tb3N0IGZyYW1lLg0KKwkvLw0KKwltb3ZpCWEwLCAwCQkvLyBrZWVwIHRoaXMgcmVnaXN0ZXIg emVyby4NCisNCisJd3NyCWEwLCBJTlRFTkFCTEUJLy8gSU5URU5BQkxFIHZhbHVlIGlzIG5vdCBk ZWZpbmVkIGFmdGVyIHJlc2V0Lg0KKwkJCQkvL21ha2Ugc3VyZSB0aGF0IGludGVycnVwdHMgYXJl IHNodXQgb2ZmICgqYmVmb3JlKiB3ZSBsb3dlciBQUy5JTlRMRVZFTCBhbmQgUFMuRVhDTSEpDQor DQorCS8vICBXaW5kb3dlZCByZWdpc3RlciBpbml0LCBzbyB3ZSBjYW4gY2FsbCB3aW5kb3dlZCBj b2RlIChlZy4gQyBjb2RlKS4NCisJbW92aQlhMSwgMQ0KKwl3c3IJYTEsIFdJTkRPV1NUQVJUDQor CS8vICBUaGUgcHJvY2Vzc29yIGFsd2F5cyBjbGVhcnMgV0lORE9XQkFTRSBhdCByZXNldCwgc28g bm8gbmVlZCB0byBjbGVhciBpdCBoZXJlLg0KKwkvLyAgSXQgcmVzZXRzIFdJTkRPV1NUQVJUIHRv IDEgc3RhcnRpbmcgd2l0aCBMWDIuMC9YNy4wIChSQi0yMDA2LjApLg0KKwkvLyAgSG93ZXZlciwg YXNzdW1pbmcgaGFyZCByZXNldCBpcyBub3QgeWV0IGFsd2F5cyBwcmFjdGljYWwsIHNvIGRvIHRo aXMgYW55d2F5Og0KKwl3c3IJYTAsIFdJTkRPV0JBU0UNCisJcnN5bmMNCisNCisJLy8gU2V0IFZF Q0JBU0UgdG8gdXNlIG91ciB2ZWN0b3JzIGluc3RlYWQgdmVjdG9ycyBpbiBST00NCisJbW92aQlh MSwgX3ZlY3Rvcl90YWJsZQ0KKwl3c3IJYTEsIFZFQ0JBU0UNCisNCisNCisJLy8gUnVuIG9ubHkg b25lIGNvcmUNCisJLy8gTXVsdGktdGhyZWFkaW5nIGNvdWxkIGJlIHN1cHBvcnRlZCBpbiBmdXR1 cmUNCisJcnNyLnByaWQgYTEJCS8vIGNvcmUgYW5kIG11bHRpcHJvY2Vzc29yIElEDQorCWV4dHVp CWExLCBhMSwgMTMsIDEJLy8gZXh0cmFjdCBjb3JlIElEDQorCWJlcXoJYTEsIC5MY29yZTAJLy8g Z290byBMY29yZTAgZm9yIGNvcmUwIG9ubHkNCisuTHN1c3BlbmQ6CQkJLy8gb3RoZXIgY29yZXMg YXJlIHN1c3BlbmRlZA0KKwl3YWl0aQkwDQorCWoJLkxzdXNwZW5kDQorDQorLkxjb3JlMDoNCisJ Ly8gSW5pdGlhbGl6ZSB0aGUgc3RhY2sgcG9pbnRlci4NCisJLy8gU2VlIHRoZSAiQUJJIGFuZCBT b2Z0d2FyZSBDb252ZW50aW9ucyIgY2hhcHRlciBpbiB0aGUNCisJLy8gWHRlbnNhIElTQSBSZWZl cmVuY2UgbWFudWFsIGZvciBkZXRhaWxzLg0KKw0KKwkvLyBOT1RFOiBCZWNhdXNlIHRoZSBfc3Rh cnQgcm91dGluZSBkb2VzIG5vdCB1c2UgYW55IG1lbW9yeSBpbiBpdHMNCisJLy8gc3RhY2sgZnJh bWUsIGFuZCBiZWNhdXNlIGFsbCBvZiBpdHMgQ0FMTCBpbnN0cnVjdGlvbnMgdXNlIGENCisJLy8g d2luZG93IHNpemUgb2YgNCwgdGhlIHN0YWNrIGZyYW1lIGZvciBfc3RhcnQgY2FuIGJlIGVtcHR5 Lg0KKwltb3ZpCXNwLCBfX3N0YWNrDQorDQorCS8vIHJlc2VydmUgc3RhY2sgc3BhY2UgZm9yDQor CS8vICAgIC0gYXJndiBhcnJheQ0KKwkvLyAgICAtIGFyZ3VtZW50IHN0cmluZ3MNCisJbW92aQlh MiwgU1lTX2FyZ3Zfc2l6ZQ0KKwlzaW1jYWxsCQkvLyByZXR1cm5zIHNpemUgb2YgYXJndltdICsg aXRzIHN0cmluZ3MgaW4gYTINCisNCisJLy8gVGhlIHN0YWNrIG9ubHkgbmVlZHMgMTYtYnl0ZSBh bGlnbm1lbnQuDQorCS8vIEhvd2V2ZXIsIGhlcmUgd2Ugcm91bmQgdXAgdGhlIGFyZ3Ygc2l6ZSBm dXJ0aGVyIHRvIDEyOCBieXRlIG11bHRpcGxlcw0KKwkvLyBzbyB0aGF0IGluIG1vc3QgY2FzZXMs IHZhcmlhdGlvbnMgaW4gYXJndlswXSdzIHBhdGggZG8gbm90IHJlc3VsdCBpbg0KKwkvLyBkaWZm ZXJlbnQgc3RhY2sgYWxsb2NhdGlvbi4gIE90aGVyd2lzZSwgc3VjaCB2YXJpYXRpb25zIGNhbiBp bXBhY3QNCisJLy8gZXhlY3V0aW9uIHRpbWluZyAoZWcuIGR1ZSB0byBjYWNoZSBlZmZlY3RzIGV0 YykgZm9yIHRoZSBzYW1lIGNvZGUgYW5kIGRhdGEuDQorCS8vIElmIHdlIGhhdmUgYSBQSUYsIGl0 J3MgbW9yZSBsaWtlbHkgdGhlIGV4dHJhIHJlcXVpcmVkIHNwYWNlIGlzIG9rYXkuDQorCWFkZGkJ YTIsIGEyLCAxMjcNCisJc3JsaQlhMiwgYTIsIDcNCisJc2xsaQlhMiwgYTIsIDcNCisNCisJLy8g Tm8gbmVlZCB0byB1c2UgTU9WU1AgYmVjYXVzZSB3ZSBoYXZlIG5vIGNhbGxlciAod2UncmUgdGhl DQorCS8vIGJhc2UgY2FsbGVyKTsgaW4gZmFjdCBpdCdzIGJldHRlciBub3QgdG8gdXNlIE1PVlNQ IGluIHRoaXMNCisJLy8gY29udGV4dCwgdG8gYXZvaWQgdW5uZWNlc3NhcnkgQUxMT0NBIGV4Y2Vw dGlvbnMgYW5kIGNvcHlpbmcNCisJLy8gZnJvbSB1bmRlZmluZWQgbWVtb3J5Og0KKwkvLyAgIHN1 YiAgICAgYTMsIHNwLCBhMg0KKwkvLyAgIG1vdnNwICAgc3AsIGEzDQorCXN1YglzcCwgc3AsIGEy DQorDQorCS8qDQorCSAqICBOb3cgdGhhdCBzcCAoYTEpIGlzIHNldCwgd2UgY2FuIHNldCBQUyBh cyBwZXIgdGhlIGFwcGxpY2F0aW9uDQorCSAqICAodXNlciB2ZWN0b3IgbW9kZSwgZW5hYmxlIGlu dGVycnVwdHMsIGVuYWJsZSB3aW5kb3cgZXhjZXB0aW9ucyBpZiBhcHBsaWNhYmxlKS4NCisJICov DQorCW1vdmkJYTMsIFBTX1VNfFBTX1dPRQkvLyBQUy5XT0UgPSAxLCBQUy5VTSA9IDEsIFBTLkVY Q00gPSAwLCBQUy5JTlRMRVZFTCA9IDANCisJd3NyCWEzLCBQUw0KKwlyc3luYw0KKw0KKwkjaWYg WENIQUxfSEFWRV9GUCB8fCBYQ0hBTF9IQVZFX0RGUA0KKwltb3ZpCWEzLCAxDQorCXdzcglhMywg Q1BFTkFCTEUNCisJI2VuZGlmDQorDQorMToNCisNCisJLyoNCisJICogIENsZWFyIHRoZSBCU1Mg KHVuaW5pdGlhbGl6ZWQgZGF0YSkgc2VnbWVudHMuDQorCSAqICBUaGlzIGNvZGUgc3VwcG9ydHMg bXVsdGlwbGUgemVyb2VkIHNlY3Rpb25zICgqLmJzcykuDQorCSAqICBGb3Igc3BlZWQsIHdlIGNs ZWFyIG1lbW9yeSB1c2luZyBhbiBJU1Mgc2ltY2FsbA0KKwkgKiAgKHNlZSBjcnQxLWJvYXJkcy5T IGZvciBtb3JlIGdlbmVyaWMgQlNTIGNsZWFyaW5nIGNvZGUpLg0KKwkgKi8NCisJbW92aQlhNiwg X19ic3Nfc3RhcnQNCisJbW92aQlhNywgX2VuZA0KKwliZ2V1CWE2LCBhNywgLkxub2Jzcw0KKy5M YnNzbG9vcDoNCisJbW92aQlhMiwgU1lTX21lbXNldA0KKwlsMzJpCWEzLCBhNiwgMAkvLyBhcmcx ID0gZmlsbCBzdGFydCBhZGRyZXNzDQorCW1vdmkJYTQsIDAJCS8vIGFyZzIgPSBmaWxsIHBhdHRl cm4NCisJbDMyaQlhNSwgYTYsIDQJLy8gZ2V0IGVuZCBhZGRyZXNzDQorCWFkZGkJYTYsIGE2LCA4 CS8vIG5leHQgYnNzIHRhYmxlIGVudHJ5DQorCXN1YglhNSwgYTUsIGEzCS8vIGFyZzMgPSBmaWxs IHNpemUgaW4gYnl0ZXMNCisJc2ltY2FsbAkJCS8vIG1lbXNldChhMyxhNCxhNSkNCisJYmx0dQlh NiwgYTcsIC5MYnNzbG9vcAkvLyBsb29wIHVudGlsIGVuZCBvZiBic3MgdGFibGUNCisuTG5vYnNz Og0KKw0KKwkvKiBuZWVkIHRvIGluaXQgcmVlbnRfcyBiZWZvcmUgZW50ZXJpbmcgZXhpdCAqLw0K KwlDQUxMCV9faW5pdHJlZW50DQorDQorCW1vdglhMywgc3AJCQkvLyB0ZWxsIHNpbWNhbGwgd2hl cmUgdG8gd3JpdGUgYXJndltdDQorCW1vdmkJYTIsIFNZU19hcmd2DQorCXNpbWNhbGwJCQkvLyB3 cml0ZSBhcmd2W10gYXJyYXkgYXQgYTMNCisNCisJbW92aQlhMiwgU1lTX2FyZ2MNCisJc2ltY2Fs bAkJCS8vIHB1dCBhcmdjIGluIGEyDQorDQorCS53ZWFrCV9pbml0DQorCS53ZWFrCV9maW5pDQor CW1vdglBUkcyLCBzcAkJLy8gYXJndg0KKwltb3ZpCUFSRzMsIF9zdGFydF9lbnZwCS8vIGVudnAN CisJbW92aQlBUkc0LCBfaW5pdAkJLy8gX2luaXQNCisJbW92aQlBUkc1LCBfZmluaQkJLy8gX2Zp bmkNCisJQ0FMTAlfX2NsaWJyYXJ5X2luaXQNCisNCisJbW92CUFSRzEsIGEyCQkvLyBhcmdjDQor CW1vdglBUkcyLCBzcAkJLy8gYXJndg0KKwlDQUxMCW1haW4NCisNCisJLy8gIFRoZSByZXR1cm4g dmFsdWUgaXMgdGhlIHNhbWUgcmVnaXN0ZXIgYXMgdGhlIGZpcnN0IG91dGdvaW5nIGFyZ3VtZW50 Lg0KKwlDQUxMCWV4aXQJCQkvLyBleGl0IHdpdGggbWFpbidzIHJldHVybiB2YWx1ZQ0KKwkvLyBE b2VzIG5vdCByZXR1cm4gaGVyZS4NCisNCisJLnNpemUJX3N0YXJ0LCAuIC0gX3N0YXJ0DQorDQpk aWZmIC0tZ2l0IGEvbGliZ2xvc3MveHRlbnNhL2RlZmF1bHQuc3BlY3MgYi9saWJnbG9zcy94dGVu c2EvZGVmYXVsdC5zcGVjcw0KbmV3IGZpbGUgbW9kZSAxMDA2NDQNCmluZGV4IDAwMDAwMDAwMC4u NjAwMmZlNDUwDQotLS0gL2Rldi9udWxsDQorKysgYi9saWJnbG9zcy94dGVuc2EvZGVmYXVsdC5z cGVjcw0KQEAgLTAsMCArMSwyIEBADQorKmxpYjoNCistbGMgLWxub3N5cyAtbGMNCmRpZmYgLS1n aXQgYS9saWJnbG9zcy94dGVuc2EvaW5jbHVkZS9yZWdpc3Rlcl9hY2Nlc3MuaCBiL2xpYmdsb3Nz L3h0ZW5zYS9pbmNsdWRlL3JlZ2lzdGVyX2FjY2Vzcy5oDQpuZXcgZmlsZSBtb2RlIDEwMDY0NA0K aW5kZXggMDAwMDAwMDAwLi5jYzA2MDYxOGUNCi0tLSAvZGV2L251bGwNCisrKyBiL2xpYmdsb3Nz L3h0ZW5zYS9pbmNsdWRlL3JlZ2lzdGVyX2FjY2Vzcy5oDQpAQCAtMCwwICsxLDcgQEANCisjaWZu ZGVmIFJFR0lTVEVSX0FDQ0VTU19IDQorI2RlZmluZSBSRUdJU1RFUl9BQ0NFU1NfSA0KKw0KKyNk ZWZpbmUgV1JJVEVfUkVHSVNURVIoYWRkciwgdmFsKSAoKigodm9sYXRpbGUgdWludDMyX3QgKiko YWRkcikpKSA9ICh1aW50MzJfdCkodmFsKQ0KKyNkZWZpbmUgUkVBRF9SRUdJU1RFUihhZGRyKSAo Kigodm9sYXRpbGUgdWludDMyX3QgKikoYWRkcikpKQ0KKw0KKyNlbmRpZiAvLyBSRUdJU1RFUl9B Q0NFU1NfSA0KZGlmZiAtLWdpdCBhL2xpYmdsb3NzL3h0ZW5zYS9pbmNsdWRlL3N5c2NhbGxzLmgg Yi9saWJnbG9zcy94dGVuc2EvaW5jbHVkZS9zeXNjYWxscy5oDQpuZXcgZmlsZSBtb2RlIDEwMDY0 NA0KaW5kZXggMDAwMDAwMDAwLi5kZDI5N2Q5NmUNCi0tLSAvZGV2L251bGwNCisrKyBiL2xpYmds b3NzL3h0ZW5zYS9pbmNsdWRlL3N5c2NhbGxzLmgNCkBAIC0wLDAgKzEsNTkgQEANCisjaWZuZGVm IFhURU5TQV9TSU1DQUxMX0gNCisjZGVmaW5lIFhURU5TQV9TSU1DQUxMX0gNCisNCisjaWZkZWYg T1BFTk9DRF9TRU1JSE9TVElORw0KKy8qIFRoaXMgZGF0YSBiYXNlZCBvbiBsaWJnbG9zcyBwcm9q ZWN0IChmaWxlIGFhcmNoNjQvc3ZjLmgpICovDQorDQorI2RlZmluZSBFU1BfU0VNSUhPU1RJTkdf U1lTX0RSVl9JTkZPIDB4MTAwDQorI2RlZmluZSBBRFBfU1RPUFBFRF9BUFBMSUNBVElPTl9FWElU IDB4MjAwMjYNCisNCisjZGVmaW5lIFNZU19jbG9zZQkweDAyDQorI2RlZmluZSBTWVNfY2xvY2sJ MHgxMA0KKyNkZWZpbmUgU1lTX2VsYXBzZWQJMHgzMA0KKyNkZWZpbmUgU1lTX2Vycm5vCTB4MTMN CisjZGVmaW5lIFNZU19leGl0CTB4MTgNCisjZGVmaW5lIFNZU19leGl0X2V4dGVuZGVkCTB4MjAN CisjZGVmaW5lIFNZU19mbGVuCTB4MEMNCisjZGVmaW5lIFNZU19nZXRfY21kbGluZQkweDE1DQor I2RlZmluZSBTWVNfaGVhcGluZm8JMHgxNg0KKyNkZWZpbmUgU1lTX2lzZXJyb3IJMHgwOA0KKyNk ZWZpbmUgU1lTX2lzdHR5CTB4MDkNCisjZGVmaW5lIFNZU19vcGVuCTB4MDENCisjZGVmaW5lIFNZ U19yZWFkCTB4MDYNCisjZGVmaW5lIFNZU19yZWFkYwkweDA3DQorI2RlZmluZSBTWVNfcmVtb3Zl CTB4MEUNCisjZGVmaW5lIFNZU19yZW5hbWUJMHgwRg0KKyNkZWZpbmUgU1lTX2xzZWVrCTB4MEEN CisjZGVmaW5lIFNZU19zeXN0ZW0JMHgxMg0KKyNkZWZpbmUgU1lTX3RpY2tmcmVxCTB4MzENCisj ZGVmaW5lIFNZU190aW1lCTB4MTENCisjZGVmaW5lIFNZU190bXBuYW0JMHgwRA0KKyNkZWZpbmUg U1lTX3dyaXRlCTB4MDUNCisjZGVmaW5lIFNZU193cml0ZWMJMHgwMw0KKyNkZWZpbmUgU1lTX3dy aXRlMAkweDA0DQorDQorI2Vsc2UNCisNCisvKiBUaGlzIGRhdGEgYmFzZWQgb24gUUVNVSBwcm9q ZWN0IChmaWxlIHRhcmdldC94dGVuc2EveHRlbnNhLXNlbWkuYykgKi8NCisNCisjZGVmaW5lIFNZ U19leGl0CTENCisjZGVmaW5lIFNZU19yZWFkCTMNCisjZGVmaW5lIFNZU193cml0ZQk0DQorI2Rl ZmluZSBTWVNfb3Blbgk1DQorI2RlZmluZSBTWVNfY2xvc2UJNg0KKyNkZWZpbmUgU1lTX2xzZWVr CTE5DQorI2RlZmluZSBTWVNfc2VsZWN0X29uZQkyOQ0KKyNkZWZpbmUgU1lTX3NlbmR0bwkyNw0K KyNkZWZpbmUgU1lTX3JlY3Zmcm9tCTI4DQorI2RlZmluZSBTWVNfc2VsZWN0X29uZSAyOQ0KKyNk ZWZpbmUgU1lTX2JpbmQJMzANCisjZGVmaW5lIFNZU19pb2N0bAkzMQ0KKw0KKyNkZWZpbmUgU1lT X2FyZ2MJMTAwMA0KKyNkZWZpbmUgU1lTX2FyZ3Zfc2l6ZQkxMDAxDQorI2RlZmluZSBTWVNfYXJn dgkxMDAyDQorI2RlZmluZSBTWVNfbWVtc2V0CTEwMDQNCisNCisjZW5kaWYgLyogT1BFTk9DRF9T RU1JSE9TVElORyAqLw0KKw0KKyNlbmRpZiAvKiAhWFRFTlNBX1NJTUNBTExfSCAqLw0KZGlmZiAt LWdpdCBhL2xpYmdsb3NzL3h0ZW5zYS9pbmNsdWRlL3h0ZW5zYS9jb3JlYml0cy5oIGIvbGliZ2xv c3MveHRlbnNhL2luY2x1ZGUveHRlbnNhL2NvcmViaXRzLmgNCm5ldyBmaWxlIG1vZGUgMTAwNjQ0 DQppbmRleCAwMDAwMDAwMDAuLjQ0NWUzMzQ5NQ0KLS0tIC9kZXYvbnVsbA0KKysrIGIvbGliZ2xv c3MveHRlbnNhL2luY2x1ZGUveHRlbnNhL2NvcmViaXRzLmgNCkBAIC0wLDAgKzEsMTg2IEBADQor LyoNCisgKiB4dGVuc2EvY29yZWJpdHMuaCAtIFh0ZW5zYSBTcGVjaWFsIFJlZ2lzdGVyIGZpZWxk IHBvc2l0aW9ucywgbWFza3MsIHZhbHVlcy4NCisgKg0KKyAqIChJbiBwcmV2aW91cyByZWxlYXNl cywgdGhlc2Ugd2VyZSBkZWZpbmVkIGluIHNwZWNyZWcuaCwgYSBnZW5lcmF0ZWQgZmlsZS4NCisg KiAgVGhpcyBmaWxlIGlzIG5vdCBnZW5lcmF0ZWQsIGllLiBpdCBpcyBwcm9jZXNzb3IgY29uZmln dXJhdGlvbiBpbmRlcGVuZGVudC4pDQorICovDQorDQorLyogJElkOiAvL2RlcG90L3JlbC9FYWds ZW5lc3QvWHRlbnNhL09TL2luY2x1ZGUveHRlbnNhL2NvcmViaXRzLmgjMiAkICovDQorDQorLyoN CisgKiBDb3B5cmlnaHQgKGMpIDIwMDUtMjAxMSBUZW5zaWxpY2EgSW5jLg0KKyAqDQorICogUGVy bWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24g b2J0YWluaW5nDQorICogYSBjb3B5IG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9j dW1lbnRhdGlvbiBmaWxlcyAodGhlDQorICogIlNvZnR3YXJlIiksIHRvIGRlYWwgaW4gdGhlIFNv ZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZw0KKyAqIHdpdGhvdXQgbGltaXRh dGlvbiB0aGUgcmlnaHRzIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwNCisg KiBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbCBjb3BpZXMgb2YgdGhlIFNvZnR3 YXJlLCBhbmQgdG8NCisgKiBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpcyBm dXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8NCisgKiB0aGUgZm9sbG93aW5nIGNvbmRpdGlv bnM6DQorICoNCisgKiBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNz aW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZA0KKyAqIGluIGFsbCBjb3BpZXMgb3Igc3Vic3Rh bnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLg0KKyAqDQorICogVEhFIFNPRlRXQVJFIElT IFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsDQorICogRVhQ UkVTUyBPUiBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5U SUVTIE9GDQorICogTUVSQ0hBTlRBQklMSVRZLCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVS UE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULg0KKyAqIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBBVVRI T1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZDQorICogQ0xBSU0sIERB TUFHRVMgT1IgT1RIRVIgTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFD VCwNCisgKiBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLCBPVVQgT0YgT1IgSU4gQ09O TkVDVElPTiBXSVRIIFRIRQ0KKyAqIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElO R1MgSU4gVEhFIFNPRlRXQVJFLg0KKyAqLw0KKw0KKyNpZm5kZWYgWFRFTlNBX0NPUkVCSVRTX0gN CisjZGVmaW5lIFhURU5TQV9DT1JFQklUU19IDQorDQorLyogIEVYQ0NBVVNFIHJlZ2lzdGVyIGZp ZWxkczogICovDQorI2RlZmluZSBFWENDQVVTRV9FWENDQVVTRV9TSElGVAkwDQorI2RlZmluZSBF WENDQVVTRV9FWENDQVVTRV9NQVNLCTB4M0YNCisvKiAgRVhDQ0FVU0UgcmVnaXN0ZXIgdmFsdWVz OiAgKi8NCisvKg0KKyAqICBHZW5lcmFsIEV4Y2VwdGlvbiBDYXVzZXMNCisgKiAgKHZhbHVlcyBv ZiBFWENDQVVTRSBzcGVjaWFsIHJlZ2lzdGVyIHNldCBieSBnZW5lcmFsIGV4Y2VwdGlvbnMsDQor ICogICB3aGljaCB2ZWN0b3IgdG8gdGhlIHVzZXIsIGtlcm5lbCwgb3IgZG91YmxlLWV4Y2VwdGlv biB2ZWN0b3JzKS4NCisgKi8NCisjZGVmaW5lIEVYQ0NBVVNFX0lMTEVHQUwJCTAJLyogSWxsZWdh bCBJbnN0cnVjdGlvbiAqLw0KKyNkZWZpbmUgRVhDQ0FVU0VfU1lTQ0FMTAkJMQkvKiBTeXN0ZW0g Q2FsbCAoU1lTQ0FMTCBpbnN0cnVjdGlvbikgKi8NCisjZGVmaW5lIEVYQ0NBVVNFX0lOU1RSX0VS Uk9SCQkyCS8qIEluc3RydWN0aW9uIEZldGNoIEVycm9yICovDQorIyBkZWZpbmUgRVhDQ0FVU0Vf SUZFVENIRVJST1IJCTIJLyogKGJhY2t3YXJkIGNvbXBhdGliaWxpdHkgbWFjcm8sIGRlcHJlY2F0 ZWQsIGF2b2lkKSAqLw0KKyNkZWZpbmUgRVhDQ0FVU0VfTE9BRF9TVE9SRV9FUlJPUgkzCS8qIExv YWQgU3RvcmUgRXJyb3IgKi8NCisjIGRlZmluZSBFWENDQVVTRV9MT0FEU1RPUkVFUlJPUgkzCS8q IChiYWNrd2FyZCBjb21wYXRpYmlsaXR5IG1hY3JvLCBkZXByZWNhdGVkLCBhdm9pZCkgKi8NCisj ZGVmaW5lIEVYQ0NBVVNFX0xFVkVMMV9JTlRFUlJVUFQJNAkvKiBMZXZlbCAxIEludGVycnVwdCAq Lw0KKyMgZGVmaW5lIEVYQ0NBVVNFX0xFVkVMMUlOVEVSUlVQVAk0CS8qIChiYWNrd2FyZCBjb21w YXRpYmlsaXR5IG1hY3JvLCBkZXByZWNhdGVkLCBhdm9pZCkgKi8NCisjZGVmaW5lIEVYQ0NBVVNF X0FMTE9DQQkJCTUJLyogU3RhY2sgRXh0ZW5zaW9uIEFzc2lzdCAoTU9WU1AgaW5zdHJ1Y3Rpb24p IGZvciBhbGxvY2EgKi8NCisjZGVmaW5lIEVYQ0NBVVNFX0RJVklERV9CWV9aRVJPCQk2CS8qIElu dGVnZXIgRGl2aWRlIGJ5IFplcm8gKi8NCisjZGVmaW5lIEVYQ0NBVVNFX1NQRUNVTEFUSU9OCQk3 CS8qIFVzZSBvZiBGYWlsZWQgU3BlY3VsYXRpdmUgQWNjZXNzIChub3QgaW1wbGVtZW50ZWQpICov DQorI2RlZmluZSBFWENDQVVTRV9QUklWSUxFR0VECQk4CS8qIFByaXZpbGVnZWQgSW5zdHJ1Y3Rp b24gKi8NCisjZGVmaW5lIEVYQ0NBVVNFX1VOQUxJR05FRAkJOQkvKiBVbmFsaWduZWQgTG9hZCBv ciBTdG9yZSAqLw0KKy8qIFJlc2VydmVkCQkJCTEwLi4xMSAqLw0KKyNkZWZpbmUgRVhDQ0FVU0Vf SU5TVFJfREFUQV9FUlJPUgkxMgkvKiBQSUYgRGF0YSBFcnJvciBvbiBJbnN0cnVjdGlvbiBGZXRj aCAoUkItMjAweCBhbmQgbGF0ZXIpICovDQorI2RlZmluZSBFWENDQVVTRV9MT0FEX1NUT1JFX0RB VEFfRVJST1IJMTMJLyogUElGIERhdGEgRXJyb3Igb24gTG9hZCBvciBTdG9yZSAoUkItMjAweCBh bmQgbGF0ZXIpICovDQorI2RlZmluZSBFWENDQVVTRV9JTlNUUl9BRERSX0VSUk9SCTE0CS8qIFBJ RiBBZGRyZXNzIEVycm9yIG9uIEluc3RydWN0aW9uIEZldGNoIChSQi0yMDB4IGFuZCBsYXRlcikg Ki8NCisjZGVmaW5lIEVYQ0NBVVNFX0xPQURfU1RPUkVfQUREUl9FUlJPUgkxNQkvKiBQSUYgQWRk cmVzcyBFcnJvciBvbiBMb2FkIG9yIFN0b3JlIChSQi0yMDB4IGFuZCBsYXRlcikgKi8NCisjZGVm aW5lIEVYQ0NBVVNFX0lUTEJfTUlTUwkJMTYJLyogSVRMQiBNaXNzIChubyBJVExCIGVudHJ5IG1h dGNoZXMsIGh3IHJlZmlsbCBhbHNvIG1pc3NlZCkgKi8NCisjZGVmaW5lIEVYQ0NBVVNFX0lUTEJf TVVMVElISVQJCTE3CS8qIElUTEIgTXVsdGloaXQgKG11bHRpcGxlIElUTEIgZW50cmllcyBtYXRj aCkgKi8NCisjZGVmaW5lIEVYQ0NBVVNFX0lOU1RSX1JJTkcJCTE4CS8qIFJpbmcgUHJpdmlsZWdl IFZpb2xhdGlvbiBvbiBJbnN0cnVjdGlvbiBGZXRjaCAqLw0KKy8qIFJlc2VydmVkCQkJCTE5ICov CS8qIFNpemUgUmVzdHJpY3Rpb24gb24gSUZldGNoIChub3QgaW1wbGVtZW50ZWQpICovDQorI2Rl ZmluZSBFWENDQVVTRV9JTlNUUl9QUk9ISUJJVEVECTIwCS8qIENhY2hlIEF0dHJpYnV0ZSBkb2Vz IG5vdCBhbGxvdyBJbnN0cnVjdGlvbiBGZXRjaCAqLw0KKy8qIFJlc2VydmVkCQkJCTIxLi4yMyAq Lw0KKyNkZWZpbmUgRVhDQ0FVU0VfRFRMQl9NSVNTCQkyNAkvKiBEVExCIE1pc3MgKG5vIERUTEIg ZW50cnkgbWF0Y2hlcywgaHcgcmVmaWxsIGFsc28gbWlzc2VkKSAqLw0KKyNkZWZpbmUgRVhDQ0FV U0VfRFRMQl9NVUxUSUhJVAkJMjUJLyogRFRMQiBNdWx0aWhpdCAobXVsdGlwbGUgRFRMQiBlbnRy aWVzIG1hdGNoKSAqLw0KKyNkZWZpbmUgRVhDQ0FVU0VfTE9BRF9TVE9SRV9SSU5HCTI2CS8qIFJp bmcgUHJpdmlsZWdlIFZpb2xhdGlvbiBvbiBMb2FkIG9yIFN0b3JlICovDQorLyogUmVzZXJ2ZWQJ CQkJMjcgKi8JLyogU2l6ZSBSZXN0cmljdGlvbiBvbiBMb2FkL1N0b3JlIChub3QgaW1wbGVtZW50 ZWQpICovDQorI2RlZmluZSBFWENDQVVTRV9MT0FEX1BST0hJQklURUQJMjgJLyogQ2FjaGUgQXR0 cmlidXRlIGRvZXMgbm90IGFsbG93IExvYWQgKi8NCisjZGVmaW5lIEVYQ0NBVVNFX1NUT1JFX1BS T0hJQklURUQJMjkJLyogQ2FjaGUgQXR0cmlidXRlIGRvZXMgbm90IGFsbG93IFN0b3JlICovDQor LyogUmVzZXJ2ZWQJCQkJMzAuLjMxICovDQorI2RlZmluZSBFWENDQVVTRV9DUF9ESVNBQkxFRChu KQkJKDMyKyhuKSkJLyogQWNjZXNzIHRvIENvcHJvY2Vzc29yICduJyB3aGVuIGRpc2FibGVkICov DQorI2RlZmluZSBFWENDQVVTRV9DUDBfRElTQUJMRUQJCTMyCS8qIEFjY2VzcyB0byBDb3Byb2Nl c3NvciAwIHdoZW4gZGlzYWJsZWQgKi8NCisjZGVmaW5lIEVYQ0NBVVNFX0NQMV9ESVNBQkxFRAkJ MzMJLyogQWNjZXNzIHRvIENvcHJvY2Vzc29yIDEgd2hlbiBkaXNhYmxlZCAqLw0KKyNkZWZpbmUg RVhDQ0FVU0VfQ1AyX0RJU0FCTEVECQkzNAkvKiBBY2Nlc3MgdG8gQ29wcm9jZXNzb3IgMiB3aGVu IGRpc2FibGVkICovDQorI2RlZmluZSBFWENDQVVTRV9DUDNfRElTQUJMRUQJCTM1CS8qIEFjY2Vz cyB0byBDb3Byb2Nlc3NvciAzIHdoZW4gZGlzYWJsZWQgKi8NCisjZGVmaW5lIEVYQ0NBVVNFX0NQ NF9ESVNBQkxFRAkJMzYJLyogQWNjZXNzIHRvIENvcHJvY2Vzc29yIDQgd2hlbiBkaXNhYmxlZCAq Lw0KKyNkZWZpbmUgRVhDQ0FVU0VfQ1A1X0RJU0FCTEVECQkzNwkvKiBBY2Nlc3MgdG8gQ29wcm9j ZXNzb3IgNSB3aGVuIGRpc2FibGVkICovDQorI2RlZmluZSBFWENDQVVTRV9DUDZfRElTQUJMRUQJ CTM4CS8qIEFjY2VzcyB0byBDb3Byb2Nlc3NvciA2IHdoZW4gZGlzYWJsZWQgKi8NCisjZGVmaW5l IEVYQ0NBVVNFX0NQN19ESVNBQkxFRAkJMzkJLyogQWNjZXNzIHRvIENvcHJvY2Vzc29yIDcgd2hl biBkaXNhYmxlZCAqLw0KKy8qIFJlc2VydmVkCQkJCTQwLi42MyAqLw0KKw0KKy8qICBQUyByZWdp c3RlciBmaWVsZHM6ICAqLw0KKyNkZWZpbmUgUFNfV09FX1NISUZUCQkxOA0KKyNkZWZpbmUgUFNf V09FX01BU0sJCTB4MDAwNDAwMDANCisjZGVmaW5lIFBTX1dPRQkJCVBTX1dPRV9NQVNLDQorI2Rl ZmluZSBQU19XT0VfQUJJIAkJUFNfV09FX01BU0sNCisjZGVmaW5lIFBTX0NBTExJTkNfU0hJRlQJ MTYNCisjZGVmaW5lIFBTX0NBTExJTkNfTUFTSwkJMHgwMDAzMDAwMA0KKyNkZWZpbmUgUFNfQ0FM TElOQyhuKQkJKCgobikmMyk8PFBTX0NBTExJTkNfU0hJRlQpCS8qIG4gPSAwLi4zICovDQorI2Rl ZmluZSBQU19PV0JfU0hJRlQJCTgNCisjZGVmaW5lIFBTX09XQl9NQVNLCQkweDAwMDAwRjAwDQor I2RlZmluZSBQU19PV0IobikJCSgoKG4pJjE1KTw8UFNfT1dCX1NISUZUKQkvKiBuID0gMC4uMTUg KG9yIDAuLjcpICovDQorI2RlZmluZSBQU19SSU5HX1NISUZUCQk2DQorI2RlZmluZSBQU19SSU5H X01BU0sJCTB4MDAwMDAwQzANCisjZGVmaW5lIFBTX1JJTkcobikJCSgoKG4pJjMpPDxQU19SSU5H X1NISUZUKQkvKiBuID0gMC4uMyAqLw0KKyNkZWZpbmUgUFNfVU1fU0hJRlQJCTUNCisjZGVmaW5l IFBTX1VNX01BU0sJCTB4MDAwMDAwMjANCisjZGVmaW5lIFBTX1VNCQkJUFNfVU1fTUFTSw0KKyNk ZWZpbmUgUFNfRVhDTV9TSElGVAkJNA0KKyNkZWZpbmUgUFNfRVhDTV9NQVNLCQkweDAwMDAwMDEw DQorI2RlZmluZSBQU19FWENNCQkJUFNfRVhDTV9NQVNLDQorI2RlZmluZSBQU19JTlRMRVZFTF9T SElGVAkwDQorI2RlZmluZSBQU19JTlRMRVZFTF9NQVNLCTB4MDAwMDAwMEYNCisjZGVmaW5lIFBT X0lOVExFVkVMKG4pCQkoKG4pJlBTX0lOVExFVkVMX01BU0spCQkvKiBuID0gMC4uMTUgKi8NCisv KiAgQmFja3dhcmQgY29tcGF0aWJpbGl0eSAoZGVwcmVjYXRlZCk6ICAqLw0KKyNkZWZpbmUgUFNf UFJPR1NUQUNLX1NISUZUCVBTX1VNX1NISUZUDQorI2RlZmluZSBQU19QUk9HU1RBQ0tfTUFTSwlQ U19VTV9NQVNLDQorI2RlZmluZSBQU19QUk9HX1NISUZUCQlQU19VTV9TSElGVA0KKyNkZWZpbmUg UFNfUFJPR19NQVNLCQlQU19VTV9NQVNLDQorI2RlZmluZSBQU19QUk9HCQkJUFNfVU0NCisNCisv KiAgREJSRUFLQ24gcmVnaXN0ZXIgZmllbGRzOiAgKi8NCisjZGVmaW5lIERCUkVBS0NfTUFTS19T SElGVAkJMA0KKyNkZWZpbmUgREJSRUFLQ19NQVNLX01BU0sJCTB4MDAwMDAwM0YNCisjZGVmaW5l IERCUkVBS0NfTE9BREJSRUFLX1NISUZUCQkzMA0KKyNkZWZpbmUgREJSRUFLQ19MT0FEQlJFQUtf TUFTSwkJMHg0MDAwMDAwMA0KKyNkZWZpbmUgREJSRUFLQ19TVE9SRUJSRUFLX1NISUZUCTMxDQor I2RlZmluZSBEQlJFQUtDX1NUT1JFQlJFQUtfTUFTSwkJMHg4MDAwMDAwMA0KKw0KKy8qICBERUJV R0NBVVNFIHJlZ2lzdGVyIGZpZWxkczogICovDQorI2RlZmluZSBERUJVR0NBVVNFX0RFQlVHSU5U X1NISUZUCTUNCisjZGVmaW5lIERFQlVHQ0FVU0VfREVCVUdJTlRfTUFTSwkweDIwCS8qIGRlYnVn IGludGVycnVwdCAqLw0KKyNkZWZpbmUgREVCVUdDQVVTRV9CUkVBS05fU0hJRlQJCTQNCisjZGVm aW5lIERFQlVHQ0FVU0VfQlJFQUtOX01BU0sJCTB4MTAJLyogQlJFQUsuTiBpbnN0cnVjdGlvbiAq Lw0KKyNkZWZpbmUgREVCVUdDQVVTRV9CUkVBS19TSElGVAkJMw0KKyNkZWZpbmUgREVCVUdDQVVT RV9CUkVBS19NQVNLCQkweDA4CS8qIEJSRUFLIGluc3RydWN0aW9uICovDQorI2RlZmluZSBERUJV R0NBVVNFX0RCUkVBS19TSElGVAkJMg0KKyNkZWZpbmUgREVCVUdDQVVTRV9EQlJFQUtfTUFTSwkJ MHgwNAkvKiBEQlJFQUsgbWF0Y2ggKi8NCisjZGVmaW5lIERFQlVHQ0FVU0VfSUJSRUFLX1NISUZU CQkxDQorI2RlZmluZSBERUJVR0NBVVNFX0lCUkVBS19NQVNLCQkweDAyCS8qIElCUkVBSyBtYXRj aCAqLw0KKyNkZWZpbmUgREVCVUdDQVVTRV9JQ09VTlRfU0hJRlQJCTANCisjZGVmaW5lIERFQlVH Q0FVU0VfSUNPVU5UX01BU0sJCTB4MDEJLyogSUNPVU5UIHdvdWxkIGluY3JlbWVudCB0byB6ZXJv ICovDQorDQorLyogIE1FU1IgcmVnaXN0ZXIgZmllbGRzOiAgKi8NCisjZGVmaW5lIE1FU1JfTUVN RQkJMHgwMDAwMDAwMQkvKiBtZW1vcnkgZXJyb3IgKi8NCisjZGVmaW5lIE1FU1JfTUVNRV9TSElG VAkJMA0KKyNkZWZpbmUgTUVTUl9ETUUJCTB4MDAwMDAwMDIJLyogZG91YmxlIG1lbW9yeSBlcnJv ciAqLw0KKyNkZWZpbmUgTUVTUl9ETUVfU0hJRlQJCTENCisjZGVmaW5lIE1FU1JfUkNFCQkweDAw MDAwMDEwCS8qIHJlY29yZGVkIG1lbW9yeSBlcnJvciAqLw0KKyNkZWZpbmUgTUVTUl9SQ0VfU0hJ RlQJCTQNCisjZGVmaW5lIE1FU1JfTENFDQorI2RlZmluZSBNRVNSX0xDRV9TSElGVAkJPw0KKyNk ZWZpbmUgTUVTUl9MQ0VfTA0KKyNkZWZpbmUgTUVTUl9FUlJFTkFCCQkweDAwMDAwMTAwDQorI2Rl ZmluZSBNRVNSX0VSUkVOQUJfU0hJRlQJOA0KKyNkZWZpbmUgTUVTUl9FUlJURVNUCQkweDAwMDAw MjAwDQorI2RlZmluZSBNRVNSX0VSUlRFU1RfU0hJRlQJOQ0KKyNkZWZpbmUgTUVTUl9EQVRFWEMJ CTB4MDAwMDA0MDANCisjZGVmaW5lIE1FU1JfREFURVhDX1NISUZUCTEwDQorI2RlZmluZSBNRVNS X0lOU0VYQwkJMHgwMDAwMDgwMA0KKyNkZWZpbmUgTUVTUl9JTlNFWENfU0hJRlQJMTENCisjZGVm aW5lIE1FU1JfV0FZTlVNX1NISUZUCTE2DQorI2RlZmluZSBNRVNSX0FDQ1RZUEVfU0hJRlQJMjAN CisjZGVmaW5lIE1FU1JfTUVNVFlQRV9TSElGVAkyNA0KKyNkZWZpbmUgTUVTUl9FUlJUWVBFX1NI SUZUCTMwDQorDQorLyogIE1FTUNUTCByZWdpc3RlciBmaWVsZHM6ICAqLw0KKyNkZWZpbmUgTUVN Q1RMX1NOT09QX0VOX1NISUZUCTENCisjZGVmaW5lIE1FTUNUTF9TTk9PUF9FTgkJMHgwMgkvKiBl bmFibGUgc25vb3AgcmVzcG9uc2VzIChkZWZhdWx0IDApICovDQorI2RlZmluZSBNRU1DVExfTDBJ QlVGX0VOX1NISUZUCTANCisjZGVmaW5lIE1FTUNUTF9MMElCVUZfRU4JMHgwMQkvKiBlbmFibGUg bG9vcCBpbnN0ci4gYnVmZmVyIChkZWZhdWx0IDEpICovDQorI2RlZmluZSBNRU1DVExfSU5WX0VO X1NISUZUCTIzDQorI2RlZmluZSBNRU1DVExfSU5WX0VOCQkweDAwODAwMDAwCS8qIGludmFsaWRh dGUgY2FjaGUgd2F5cyBiZWluZyBpbmNyZWFzZWQgKi8NCisjZGVmaW5lIE1FTUNUTF9EQ1dVX1NI SUZUCTgNCisjZGVmaW5lIE1FTUNUTF9EQ1dVX0JJVFMJNQ0KKyNkZWZpbmUgTUVNQ1RMX0RDV0Ff U0hJRlQJMTMNCisjZGVmaW5lIE1FTUNUTF9EQ1dBX0JJVFMJNQ0KKyNkZWZpbmUgTUVNQ1RMX0lD V1VfU0hJRlQJMTgNCisjZGVmaW5lIE1FTUNUTF9JQ1dVX0JJVFMJNQ0KKyNkZWZpbmUgTUVNQ1RM X0RDV1VfTUFTSwkweDAwMDAxRjAwCS8qIEJpdHMgIDgtMTIgZGNhY2hlIHdheXMgaW4gdXNlICov DQorI2RlZmluZSBNRU1DVExfRENXQV9NQVNLCTB4MDAwM0UwMDAJLyogQml0cyAxMy0xNyBkY2Fj aGUgd2F5cyBhbGxvY2F0YWJsZSAqLw0KKyNkZWZpbmUgTUVNQ1RMX0lDV1VfTUFTSwkweDAwN0Mw MDAwCS8qIEJpdHMgMTgtMjIgaWNhY2hlIHdheXMgaW4gdXNlICovDQorI2RlZmluZSBNRU1DVExf RENXVV9DTFJfTUFTSwl+KE1FTUNUTF9EQ1dVX01BU0spDQorI2RlZmluZSBNRU1DVExfRENXQV9D TFJfTUFTSwl+KE1FTUNUTF9EQ1dBX01BU0spDQorI2RlZmluZSBNRU1DVExfSUNXVV9DTFJfTUFT Swl+KE1FTUNUTF9JQ1dVX01BU0spDQorI2RlZmluZSBNRU1DVExfRENXX0NMUl9NQVNLCShNRU1D VExfRENXVV9DTFJfTUFTSyB8IE1FTUNUTF9EQ1dBX0NMUl9NQVNLKQ0KKyNkZWZpbmUgTUVNQ1RM X0lEQ1dfQ0xSX01BU0sJKE1FTUNUTF9EQ1dfQ0xSX01BU0sgfCBNRU1DVExfSUNXVV9DTFJfTUFT SykNCisNCisNCisjZW5kaWYgLypYVEVOU0FfQ09SRUJJVFNfSCovDQorDQpkaWZmIC0tZ2l0IGEv bGliZ2xvc3MveHRlbnNhL25hbm8uc3BlY3MgYi9saWJnbG9zcy94dGVuc2EvbmFuby5zcGVjcw0K bmV3IGZpbGUgbW9kZSAxMDA2NDQNCmluZGV4IDAwMDAwMDAwMC4uYWRmN2FiYmFmDQotLS0gL2Rl di9udWxsDQorKysgYi9saWJnbG9zcy94dGVuc2EvbmFuby5zcGVjcw0KQEAgLTAsMCArMSwxOCBA QA0KKyVyZW5hbWUgbGluayAgICAgICAgICAgICAgICBuYW5vX2xpbmsNCislcmVuYW1lIGxpbmtf Z2NjX2Nfc2VxdWVuY2UgICAgICAgICAgICAgICAgbmFub19saW5rX2djY19jX3NlcXVlbmNlDQor DQorKm5hbm9fbGliYzoNCistbGNfbmFubw0KKw0KKypuYW5vX2xpYmdsb3NzOg0KKyV7c3BlY3M9 bm9zeXMuc3BlY3M6LWxub3N5c30NCisNCisqbGlua19nY2NfY19zZXF1ZW5jZToNCislKG5hbm9f bGlua19nY2NfY19zZXF1ZW5jZSkgLS1zdGFydC1ncm91cCAlRyAlKG5hbm9fbGliYykgJShuYW5v X2xpYmdsb3NzKSAtLWVuZC1ncm91cA0KKw0KKypsaW5rOg0KKyUobmFub19saW5rKSAlOnJlcGxh Y2Utb3V0ZmlsZSgtbGMgLWxjX25hbm8pICU6cmVwbGFjZS1vdXRmaWxlKC1sZyAtbGdfbmFubykg JTpyZXBsYWNlLW91dGZpbGUoLWxtIC1sbV9uYW5vKQ0KKw0KKypsaWI6DQorJXshc2hhcmVkOiV7 Zyo6LWxnX25hbm99ICV7IXA6JXshcGc6LWxjX25hbm99fSV7cDotbGNfcH0le3BnOi1sY19wfX0N CisNCmRpZmYgLS1naXQgYS9saWJnbG9zcy94dGVuc2Evc2ltLWNhbGwuUyBiL2xpYmdsb3NzL3h0 ZW5zYS9zaW0tY2FsbC5TDQpuZXcgZmlsZSBtb2RlIDEwMDY0NA0KaW5kZXggMDAwMDAwMDAwLi40 YjQ5M2MyOTYNCi0tLSAvZGV2L251bGwNCisrKyBiL2xpYmdsb3NzL3h0ZW5zYS9zaW0tY2FsbC5T DQpAQCAtMCwwICsxLDggQEANCisNCisJLnR5cGUJX19zaW1fY2FsbCwgQGZ1bmN0aW9uDQorCS5h bGlnbgk0DQorCS5nbG9iYWwgX19zaW1fY2FsbA0KK19fc2ltX2NhbGw6DQorCWVudHJ5CWExLCAz Mg0KKwlzaW1jYWxsDQorCXJldHcNCmRpZmYgLS1naXQgYS9saWJnbG9zcy94dGVuc2Evc2ltLXZl Y3RvcnMuUyBiL2xpYmdsb3NzL3h0ZW5zYS9zaW0tdmVjdG9ycy5TDQpuZXcgZmlsZSBtb2RlIDEw MDY0NA0KaW5kZXggMDAwMDAwMDAwLi45MzY3NTNhNmQNCi0tLSAvZGV2L251bGwNCisrKyBiL2xp Ymdsb3NzL3h0ZW5zYS9zaW0tdmVjdG9ycy5TDQpAQCAtMCwwICsxLDE2MyBAQA0KKyNpbmNsdWRl IDx4dGVuc2EvY29uZmlnL2NvcmUtaXNhLmg+DQorI2luY2x1ZGUgPHN5c2NhbGxzLmg+DQorDQor Ly8jZGVmaW5lIFBTX09XQl9TSElGVCA4DQorLy8jZGVmaW5lIFBTX09XQl9CSVRTIDQNCisvLyNk ZWZpbmUgRVhDQ0FVU0VfQUxMT0NBCQkJNQkvKiBTdGFjayBFeHRlbnNpb24gQXNzaXN0IChNT1ZT UCBpbnN0cnVjdGlvbikgZm9yIGFsbG9jYSAqLw0KKw0KKyNpZiBYQ0hBTF9IQVZFX0wzMlINCisg ICAgLnNlY3Rpb24gLnJvZGF0YQ0KK19zaW1fcGFuaWNfbXNnOg0KKyAgICAuYXNjaWkgIlBBTklD OiBVbmhhbmRsZWQgZXhjZXB0aW9uIVxuIg0KKwlfc2ltX3BhbmljX21zZ19sZW4gPSAuIC0gX3Np bV9wYW5pY19tc2cNCisNCisgICAgLnNlY3Rpb24gLnRleHQNCisgICAgLmxpdGVyYWwgLkxwYW5p Y19tc2csIF9zaW1fcGFuaWNfbXNnDQorICAgIC5saXRlcmFsIC5McGFuaWNfbXNnX2xlbiwgX3Np bV9wYW5pY19tc2dfbGVuDQorICAgIC5hbGlnbiAgICAgIDQNCitfeHRfdW5oYW5kbGVkX2V4YzoN CisgICAgbW92aSBhMiwgU1lTX3dyaXRlDQorICAgIG1vdmkgYTMsIDINCisgICAgbDMyciBhNCwg LkxwYW5pY19tc2cNCisgICAgbDMyciBhNSwgLkxwYW5pY19tc2dfbGVuDQorICAgIHNpbWNhbGwN CisjZWxzZQ0KK194dF91bmhhbmRsZWRfZXhjOg0KKyNlbmRpZg0KKyAgICBtb3ZpIGEyLCBTWVNf ZXhpdA0KKyAgICBtb3ZpIGEzLCAxDQorICAgIHNpbWNhbGwNCisNCisvKg0KKy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tDQorSGFuZGxlIGFsbG9jYSBleGNlcHRpb24gZ2VuZXJhdGVkIGJ5IGludGVy cnVwdGVlIGV4ZWN1dGluZyAnbW92c3AnLg0KK1RoaXMgdXNlcyBzcGFjZSBiZXR3ZWVuIHRoZSB3 aW5kb3cgdmVjdG9ycywgc28gaXMgZXNzZW50aWFsbHkgImZyZWUiLg0KK0FsbCBpbnRlcnJ1cHRl ZSdzIHJlZ3MgYXJlIGludGFjdCBleGNlcHQgYTAgd2hpY2ggaXMgc2F2ZWQgaW4gRVhDU0FWRV8x LA0KK2FuZCBQUy5FWENNIGhhcyBiZWVuIHNldCBieSB0aGUgZXhjZXB0aW9uIGhhcmR3YXJlIChj YW4ndCBiZSBpbnRlcnJ1cHRlZCkuDQorVGhlIGZhY3QgdGhlIGFsbG9jYSBleGNlcHRpb24gd2Fz IHRha2VuIG1lYW5zIHRoZSByZWdpc3RlcnMgYXNzb2NpYXRlZCB3aXRoDQordGhlIGJhc2Utc2F2 ZSBhcmVhIGhhdmUgYmVlbiBzcGlsbGVkIGFuZCB3aWxsIGJlIHJlc3RvcmVkIGJ5IHRoZSB1bmRl cmZsb3cNCitoYW5kbGVyLCBzbyB0aG9zZSA0IHJlZ2lzdGVycyBhcmUgYXZhaWxhYmxlIGZvciBz Y3JhdGNoLg0KK1RoZSBjb2RlIGlzIG9wdGltaXplZCB0byBhdm9pZCB1bmFsaWduZWQgYnJhbmNo ZXMgYW5kIG1pbmltaXplIGNhY2hlIG1pc3Nlcy4NCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0K KyovDQorDQorICAgICNpZiBYQ0hBTF9IQVZFX1dJTkRPV0VEDQorICAgIC5zZWN0aW9uIC50ZXh0 DQorICAgIC5nbG9iYWwgX3h0X2FsbG9jYV9leGMNCisgICAgLmFsaWduICA0DQorX3h0X2FsbG9j YV9leGM6DQorDQorICAgIHJzciAgICAgYTAsIFdJTkRPV0JBU0UgIC8qIGdyYWIgV0lORE9XQkFT RSBiZWZvcmUgcm90dyBjaGFuZ2VzIGl0ICovDQorICAgIHJvdHcgICAgLTEgICAgICAgICAgICAg IC8qIFdJTkRPV0JBU0UgZ29lcyB0byBhNCwgbmV3IGEwLWEzIGFyZSBzY3JhdGNoICovDQorICAg IHJzciAgICAgYTIsIFBTDQorICAgIGV4dHVpICAgYTMsIGEyLCA4LypQU19PV0JfQklUUyovLCA0 LypQU19PV0JfQklUUyovDQorICAgIHhvciAgICAgYTMsIGEzLCBhNCAgICAgIC8qIGJpdHMgY2hh bmdlZCBmcm9tIG9sZCB0byBjdXJyZW50IHdpbmRvd2Jhc2UgKi8NCisgICAgcnNyICAgICBhNCwg RVhDU0FWRTEgICAvKiByZXN0b3JlIG9yaWdpbmFsIGEwIChub3cgaW4gYTQpICovDQorICAgIHNs bGkgICAgYTMsIGEzLCA4DQorICAgIHhvciAgICAgYTIsIGEyLCBhMyAgICAgIC8qIGZsaXAgY2hh bmdlZCBiaXRzIGluIG9sZCB3aW5kb3cgYmFzZSAqLw0KKyAgICB3c3IgICAgIGEyLCBQUyAgICAg ICAgICAvKiB1cGRhdGUgUFMuT1dCIHRvIG5ldyB3aW5kb3cgYmFzZSAqLw0KKyAgICByc3luYw0K Kw0KKyAgICBiYmNpLmwgYTQsIDMxLCBfV2luZG93VW5kZXJmbG93NA0KKyAgICByb3R3ICAgIC0x ICAgICAgICAgICAgICAvKiBvcmlnaW5hbCBhMCBnb2VzIHRvIGE4ICovDQorICAgIGJiY2kubCBh OCwgMzAsIF9XaW5kb3dVbmRlcmZsb3c4DQorICAgIHJvdHcgICAgLTENCisgICAgaiAgICAgICAg ICAgICAgIF9XaW5kb3dVbmRlcmZsb3cxMg0KKyAgICAjZW5kaWYNCisNCisNCisvKg0KKy0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tDQorICBVc2VyIGV4Y2VwdGlvbiBoYW5kbGVyLg0KKy0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tDQorKi8NCisNCisgICAgI2lmIFhDSEFMX0hBVkVfV0lORE9XRUQNCisg ICAgLnNlY3Rpb24gLnRleHQNCisgICAgLmFsaWduICAgICAgNA0KK194dF90b19hbGxvY2FfZXhj Og0KKyAgICBqICAgX3h0X2FsbG9jYV9leGMgICAgICAgICAgICAgICAgICAvKiBpbiB3aW5kb3cg dmVjdG9ycyBzZWN0aW9uICovDQorICAgICNlbmRpZg0KKw0KKyAgICAudHlwZSAgICAgICBfeHRf dXNlcl9leGMsQGZ1bmN0aW9uDQorICAgIC5hbGlnbiAgICAgIDQNCitfeHRfdXNlcl9leGM6DQor DQorICAgIHJzciAgICAgYTAsIEVYQ0NBVVNFDQorICAgIC8qIEhhbmRsZSBhbGxvY2EgYW5kIHN5 c2NhbGwgZXhjZXB0aW9ucyAqLw0KKyAgICAjaWYgWENIQUxfSEFWRV9XSU5ET1dFRA0KKyAgICBi ZXFpICAgIGEwLCA1LypFWENDQVVTRV9BTExPQ0EqLywgIF94dF90b19hbGxvY2FfZXhjDQorICAg ICNlbmRpZg0KKyAgICBqIF94dF91bmhhbmRsZWRfZXhjDQorDQorDQorLyoNCistLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLQ0KK05NSSBFeGNlcHRpb24NCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0K KyovDQorDQorICAgIC5iZWdpbiAgICAgIGxpdGVyYWxfcHJlZml4IC5OTUlFeGNlcHRpb25WZWN0 b3INCisgICAgLnNlY3Rpb24gICAgLk5NSUV4Y2VwdGlvblZlY3Rvci50ZXh0LCAiYXgiDQorICAg IC5nbG9iYWwgICAgIE5NSUV4Y2VwdGlvblZlY3Rvcg0KKyAgICAudHlwZSAgICAgICBOTUlFeGNl cHRpb25WZWN0b3IsQGZ1bmN0aW9uDQorICAgIC5hbGlnbiAgICAgIDQNCisNCitOTUlFeGNlcHRp b25WZWN0b3I6DQorICAgIGogICBfeHRfdW5oYW5kbGVkX2V4Yw0KKw0KKyAgICAuZW5kICAgICAg ICBsaXRlcmFsX3ByZWZpeA0KKw0KKy8qDQorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCitLZXJu ZWwgRXhjZXB0aW9uDQorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCisqLw0KKw0KKyAgICAuYmVn aW4gICAgICBsaXRlcmFsX3ByZWZpeCAuS2VybmVsRXhjZXB0aW9uVmVjdG9yDQorICAgIC5zZWN0 aW9uICAgIC5LZXJuZWxFeGNlcHRpb25WZWN0b3IudGV4dCwgImF4Ig0KKyAgICAuZ2xvYmFsICAg ICBLZXJuZWxFeGNlcHRpb25WZWN0b3INCisgICAgLnR5cGUgICAgICAgS2VybmVsRXhjZXB0aW9u VmVjdG9yLEBmdW5jdGlvbg0KKyAgICAuYWxpZ24gICAgICA0DQorDQorS2VybmVsRXhjZXB0aW9u VmVjdG9yOg0KKyAgICBqICAgX3h0X3VuaGFuZGxlZF9leGMNCisNCisgICAgLmVuZCAgICAgICAg bGl0ZXJhbF9wcmVmaXgNCisNCisvKg0KKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQorVXNlciBF eGNlcHRpb24NCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KKyovDQorDQorICAgIC5iZWdpbiAg ICAgIGxpdGVyYWxfcHJlZml4IC5Vc2VyRXhjZXB0aW9uVmVjdG9yDQorICAgIC5zZWN0aW9uICAg IC5Vc2VyRXhjZXB0aW9uVmVjdG9yLnRleHQsICJheCINCisgICAgLmdsb2JhbCAgICAgX1VzZXJF eGNlcHRpb25WZWN0b3INCisgICAgLnR5cGUgICAgICAgX1VzZXJFeGNlcHRpb25WZWN0b3IsQGZ1 bmN0aW9uDQorICAgIC5hbGlnbiAgICAgIDQNCisNCitfVXNlckV4Y2VwdGlvblZlY3RvcjoNCisN CisgICAgd3NyICAgICBhMCwgRVhDU0FWRTEgICAgICAgICAgICAgICAgICAgLyogcHJlc2VydmUg YTAgKi8NCisgICAgaiAgIF94dF91c2VyX2V4YyAgICAgICAgICAgICAgICAgICAgLyogdXNlciBl eGNlcHRpb24gaGFuZGxlciAqLw0KKyAgICAvKiBuZXZlciByZXR1cm5zIGhlcmUgLSBjYWxsMCBp cyB1c2VkIGFzIGEganVtcCAoc2VlIG5vdGUgYXQgdG9wKSAqLw0KKw0KKyAgICAuZW5kICAgICAg ICBsaXRlcmFsX3ByZWZpeA0KKw0KKy8qDQorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCitEb3Vi bGUgRXhjZXB0aW9uDQorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCisqLw0KKw0KKyAgICAuYmVn aW4gICAgICBsaXRlcmFsX3ByZWZpeCAuRG91YmxlRXhjZXB0aW9uVmVjdG9yDQorICAgIC5zZWN0 aW9uICAgIC5Eb3VibGVFeGNlcHRpb25WZWN0b3IudGV4dCwgImF4Ig0KKyAgICAuZ2xvYmFsICAg ICBEb3VibGVFeGNlcHRpb25WZWN0b3INCisgICAgLnR5cGUgICAgICAgRG91YmxlRXhjZXB0aW9u VmVjdG9yLEBmdW5jdGlvbg0KKyAgICAuYWxpZ24gICAgICA0DQorDQorRG91YmxlRXhjZXB0aW9u VmVjdG9yOg0KKyAgICBqICAgX3h0X3VuaGFuZGxlZF9leGMNCisNCisgICAgLmVuZCAgICAgICAg bGl0ZXJhbF9wcmVmaXgNCmRpZmYgLS1naXQgYS9saWJnbG9zcy94dGVuc2Evc2ltLmVsZi5zcGVj cyBiL2xpYmdsb3NzL3h0ZW5zYS9zaW0uZWxmLnNwZWNzDQpuZXcgZmlsZSBtb2RlIDEwMDY0NA0K aW5kZXggMDAwMDAwMDAwLi4zMDI0ZjY4ODcNCi0tLSAvZGV2L251bGwNCisrKyBiL2xpYmdsb3Nz L3h0ZW5zYS9zaW0uZWxmLnNwZWNzDQpAQCAtMCwwICsxLDUgQEANCisqc3RhcnRmaWxlOg0KK2Ny dDEtc2ltJU8lcw0KKw0KKypsaWI6DQorLWxjIC0td2hvbGUtYXJjaGl2ZSAtbGdsb3NzIC0tbm8t d2hvbGUtYXJjaGl2ZSAtbHB0aHJlYWRfc3R1YnMgLWxjICVUbWVtb3J5LmVsZi5sZCAlVGFwcC5l bGYubGQNCmRpZmYgLS1naXQgYS9saWJnbG9zcy94dGVuc2Evc2xlZXAuUyBiL2xpYmdsb3NzL3h0 ZW5zYS9zbGVlcC5TDQpuZXcgZmlsZSBtb2RlIDEwMDY0NA0KaW5kZXggMDAwMDAwMDAwLi40MTNj ZTkyODgNCi0tLSAvZGV2L251bGwNCisrKyBiL2xpYmdsb3NzL3h0ZW5zYS9zbGVlcC5TDQpAQCAt MCwwICsxLDY0IEBADQorI2luY2x1ZGUgPHNvYy9jcHUuaD4NCisNCisjZGVmaW5lIFVTRUNPTkRT X0lOX1NFQ09ORCAxMDAwMDAwDQorDQorCS50eXBlCXNsZWVwLCBAZnVuY3Rpb24NCisJLmFsaWdu CTQNCisJLmdsb2JhbCBzbGVlcA0KK3NsZWVwOg0KKwllbnRyeQlhMSwgMHgzMA0KKwltb3Yubglh NywgYTENCisJczMyaS5uCWEyLCBhNywgMA0KKw0KKwltb3YJYTMsIGEyDQorLkxzbGVlcF9kZWxh eV9zZWNvbmQ6DQorCWFkZGkJYTMsIGEzLCAtMQ0KKwltb3ZpCWExMCwgVVNFQ09ORFNfSU5fU0VD T05EDQorCWNhbGw4CXVzbGVlcA0KKwlibmV6CWEzLCAuTHNsZWVwX2RlbGF5X3NlY29uZA0KKw0K Ky5Mc2xlZXBfZXhpdDoNCisJczMyaS5uCWEyLCBhNywgMA0KKwlyZXR3DQorDQorDQorCS50eXBl CXVzbGVlcCwgQGZ1bmN0aW9uDQorCS5hbGlnbgk0DQorCS5nbG9iYWwgdXNsZWVwDQordXNsZWVw Og0KKwllbnRyeQlhMSwgMHgzMA0KKwltb3YubglhNywgYTENCisJczMyaS5uCWEyLCBhNywgMA0K Kw0KKwkvKiBjb252ZXJ0IHRpbWUgdG8gQ0xPQ0sgdGlja3MgcGVyIDF1cyAqLw0KKwltb3ZpCWE2 LCBDUFVfRlJFUVVFTkNZX01IWiAvLyBDUFVfRlJFUVVFTkNZX01IWiA9PSB0aWNrcyBwZXIgdXMN CisJbXVsbAlhMiwgYTIsIGE2DQorDQorCS8qDQorCSAqIFJlZ2lzdGVycyBwdXJwb3NlOg0KKwkg KiAgIGEzIC0gc3RhcnQgQ0NPVU5UIHZhbHVlDQorCSAqICAgYTQgLSBjdXJyZW50IENDT1VOVCB2 YWx1ZQ0KKwkgKiAgIGE1IC0gdGFyZ2V0IENDT1VOVCB2YWx1ZQ0KKwkgKi8NCisNCisJcnNyCWEz LCBDQ09VTlQNCisJYWRkCWE1LCBhMywgYTINCisJYmdldQlhNSwgYTMsIC5MdXNsZWVwX3dhaXRs b29wDQorDQorLkx1c2xlZXBfd2FpdG92ZXJmbG93Og0KKwkvKiB5b3UgYXJlIGhlcmUgYmVjYXVz ZSBhNSAodGFyZ2V0IENDT1VOVCkgd2FzIG92ZXJmbG93bg0KKwkgKiBpdCBtZWFucyB0aGF0IHdl IG5lZWQgdG8gd2FpdCBDQ09VTlQgcmVnaXN0ZXIgb3ZlcmZsb3cNCisJICogYmVmb3JlIGRvIG1h aW4gbG9vcA0KKwkgKi8NCisJcnNyCWE0LCBDQ09VTlQNCisJYmdldQlhNCwgYTMsIC5MdXNsZWVw X3dhaXRvdmVyZmxvdw0KKw0KKy5MdXNsZWVwX3dhaXRsb29wOg0KKwkvKiB3YWl0IHVudGlsIHdl IHJlYWNoIHRhcmdldCBDQ09VTlQgdmFsdWUgKi8NCisJcnNyCWE0LCBDQ09VTlQNCisJYmdldQlh NCwgYTUsIC5MdXNsZWVwX2V4aXQNCisJagkuTHVzbGVlcF93YWl0bG9vcA0KKy5MdXNsZWVwX2V4 aXQ6DQorCXMzMmkubglhMiwgYTcsIDANCisJcmV0dw0KKw0KZGlmZiAtLWdpdCBhL2xpYmdsb3Nz L3h0ZW5zYS9zeXMub3Blbm9jZC5zcGVjcyBiL2xpYmdsb3NzL3h0ZW5zYS9zeXMub3Blbm9jZC5z cGVjcw0KbmV3IGZpbGUgbW9kZSAxMDA2NDQNCmluZGV4IDAwMDAwMDAwMC4uNDU3MzE4NDI0DQot LS0gL2Rldi9udWxsDQorKysgYi9saWJnbG9zcy94dGVuc2Evc3lzLm9wZW5vY2Quc3BlY3MNCkBA IC0wLDAgKzEsOCBAQA0KKyVyZW5hbWUgbGlua19nY2NfY19zZXF1ZW5jZSAgICBvcGVub2NkX2xp bmtfZ2NjX2Nfc2VxdWVuY2UNCisNCisqbGlib3Blbm9jZDoNCistLXdob2xlLWFyY2hpdmUgLWxz eXNfb3Blbm9jZCAtLW5vLXdob2xlLWFyY2hpdmUNCisNCisqbGlua19nY2NfY19zZXF1ZW5jZToN CislKG9wZW5vY2RfbGlua19nY2NfY19zZXF1ZW5jZSkgLS1zdGFydC1ncm91cCAlRyAlKGxpYm9w ZW5vY2QpIC0tZW5kLWdyb3VwDQorDQpkaWZmIC0tZ2l0IGEvbGliZ2xvc3MveHRlbnNhL3N5cy5x ZW11LnNwZWNzIGIvbGliZ2xvc3MveHRlbnNhL3N5cy5xZW11LnNwZWNzDQpuZXcgZmlsZSBtb2Rl IDEwMDY0NA0KaW5kZXggMDAwMDAwMDAwLi41MTg1YzA0ODANCi0tLSAvZGV2L251bGwNCisrKyBi L2xpYmdsb3NzL3h0ZW5zYS9zeXMucWVtdS5zcGVjcw0KQEAgLTAsMCArMSw4IEBADQorJXJlbmFt ZSBsaW5rX2djY19jX3NlcXVlbmNlICAgIHFlbXVfbGlua19nY2NfY19zZXF1ZW5jZQ0KKw0KKyps aWJxZW11Og0KKy0td2hvbGUtYXJjaGl2ZSAtbHN5c19xZW11IC0tbm8td2hvbGUtYXJjaGl2ZQ0K Kw0KKypsaW5rX2djY19jX3NlcXVlbmNlOg0KKyUocWVtdV9saW5rX2djY19jX3NlcXVlbmNlKSAt LXN0YXJ0LWdyb3VwICVHICUobGlicWVtdSkgLS1lbmQtZ3JvdXANCisNCmRpZmYgLS1naXQgYS9s aWJnbG9zcy94dGVuc2Evc3lzY2FsbHMuYyBiL2xpYmdsb3NzL3h0ZW5zYS9zeXNjYWxscy5jDQpu ZXcgZmlsZSBtb2RlIDEwMDY0NA0KaW5kZXggMDAwMDAwMDAwLi4wY2NjN2Q0NGUNCi0tLSAvZGV2 L251bGwNCisrKyBiL2xpYmdsb3NzL3h0ZW5zYS9zeXNjYWxscy5jDQpAQCAtMCwwICsxLDIxMCBA QA0KKyNpbmNsdWRlIDx1bmlzdGQuaD4NCisjaW5jbHVkZSA8c3lzY2FsbHMuaD4NCisjaW5jbHVk ZSA8c3lzL3N0YXQuaD4NCisjaW5jbHVkZSA8c29jL3VhcnQuaD4NCisNCisjaWYgZGVmaW5lZCAo T1BFTk9DRF9TRU1JSE9TVElORykgfHwgKFFFTVVfU0VNSUhPU1RJTkcpDQorIyBkZWZpbmUgV0lU SF9TRU1JSE9TVElORw0KKyMgZGVmaW5lIF9fV0VBS19GVU5DVElPTl9BVFRSX18NCisjZWxzZQ0K KyMgZGVmaW5lIF9fV0VBS19GVU5DVElPTl9BVFRSX18gX19hdHRyaWJ1dGVfXygoX193ZWFrX18p KQ0KKyNlbmRpZg0KKw0KKw0KKy8qIF9fc2VtaWhvc3RpbmdfY2FsbCBpcyBhIGZ1bmN0aW9uIGlu IGNhc2Ugc2VtaWhvc3RpbmcgdXNhZ2UsIG1hY3JvICgtMSkgb3RoZXJ3aXNlICovDQorI2lmZGVm IFdJVEhfU0VNSUhPU1RJTkcNCisNCitzdGF0aWMgaW5saW5lIGludA0KK19fYXR0cmlidXRlX18g KChhbHdheXNfaW5saW5lKSkNCitfX3NlbWlob3N0aW5nX2NhbGwoaW50IGlkLCBpbnQgYXJnMSwg aW50IGFyZzIsIGludCBhcmczLCBpbnQgYXJnNCkNCit7DQorIyBpZmRlZiBPUEVOT0NEX1NFTUlI T1NUSU5HDQorICAgIHJlZ2lzdGVyIGxvbmcgYTIgYXNtKCJhMiIpID0gaWQ7DQorICAgIGxvbmcg YXJnc1tdID0ge2FyZzEsIGFyZzIsIGFyZzMsIGFyZzR9Ow0KKyAgICByZWdpc3RlciBsb25nIGEz IGFzbSgiYTMiKSA9IChsb25nKSZhcmdzOw0KKw0KKyAgICAvKiBPcGVuT0NEIGhhcyBkaWZmZXJl bnQgc2VtaWhvc3RpbmcgYXBpIGZvciBzeXNfZXhpdCBvbiAzMi1iaXQgYW5kIDY0LWJpdCAqLw0K KyAgICBpZiAoaWQgPT0gU1lTX2V4aXQgJiYgc2l6ZW9mKHZvaWQgKikgIT0gOCkgew0KKyAgICAg ICAgYTMgPSBBRFBfU1RPUFBFRF9BUFBMSUNBVElPTl9FWElUOw0KKyAgICB9DQorICAgIF9fYXNt X18gIF9fdm9sYXRpbGVfXyAoDQorICAgICAgICAiYnJlYWsgMSwgMTRcbiINCisgICAgICAgIDog IityIihhMik6ICJyIihhMykNCisgICAgICAgIDogIm1lbW9yeSIpOw0KKw0KKyAgICAvLyByZXR1 cm4gY29kZSBpcyBwbGFjZWQgaW4gYTIgcmVnaXN0ZXIsIHNvIHJldHVybiBpdCB0byB0aGUgY2Fs bGVyDQorICAgIHJldHVybiBhMjsNCisjIGVsc2UgLy8gT1BFTk9DRF9TRU1JSE9TVElORw0KKyAg ICBleHRlcm4gaW50IF9fc2ltX2NhbGwoaW50IGlkLCBpbnQgYXJnMSwgaW50IGFyZzIsIGludCBh cmczLCBpbnQgYXJnNCk7DQorICAgIHJldHVybiBfX3NpbV9jYWxsKGlkLCBhcmcxLCBhcmcyLCBh cmczLCBhcmc0KTsNCisjIGVuZGlmIC8vIE9QRU5PQ0RfU0VNSUhPU1RJTkcNCit9DQorDQorIyBp ZmRlZiBPUEVOT0NEX1NFTUlIT1NUSU5HDQorDQoraW50DQorX19zZW1paG9zdGluZ19pbml0ICh2 b2lkKQ0KK3sNCisgICAgc3RydWN0IHsNCisgICAgICAgIGludCB2ZXJzaW9uOw0KKyAgICB9IHZl cl9pbmZvID0geyAyIH07DQorICAgIF9fc2VtaWhvc3RpbmdfY2FsbChFU1BfU0VNSUhPU1RJTkdf U1lTX0RSVl9JTkZPLCAobG9uZykgJnZlcl9pbmZvLCBzaXplb2YodmVyX2luZm8pLCAwLCAwKTsN Cit9DQorDQorIyBlbmRpZiAvLyBPUEVOT0NEX1NFTUlIT1NUSU5HDQorDQorI2Vsc2UgLy8gIVdJ VEhfU0VNSUhPU1RJTkcNCisjIGRlZmluZSBfX3NlbWlob3N0aW5nX2NhbGwoLi4uKSAoLTEpDQor I2VuZGlmIC8vIFdJVEhfU0VNSUhPU1RJTkcNCisNCisNCit2b2lkDQorX19XRUFLX0ZVTkNUSU9O X0FUVFJfXw0KK19fYXR0cmlidXRlX18gKChub3JldHVybikpDQorX2V4aXQgKGludCBzdGF0dXMp DQorew0KKyAgICBfX3NlbWlob3N0aW5nX2NhbGwoU1lTX2V4aXQsIHN0YXR1cywgMCwgMCwgMCk7 DQorDQorICAgIGZvciAoOzspIHsNCisgICAgICAgIDsNCisgICAgfQ0KK30NCisNCisNCitpbnQN CitfX1dFQUtfRlVOQ1RJT05fQVRUUl9fDQorX29wZW4gKGNvbnN0IGNoYXIgKmZpbGUsIGludCBm bGFncywgaW50IG1vZGUpDQorew0KKyAgICByZXR1cm4gX19zZW1paG9zdGluZ19jYWxsKFNZU19v cGVuLCAoaW50KSBmaWxlLCBmbGFncywgbW9kZSwgMCk7DQorfQ0KKw0KKw0KK2ludA0KK19fV0VB S19GVU5DVElPTl9BVFRSX18NCitfbHNlZWsgKGludCBmZCwgX29mZl90IG9mZiwgaW50IHdoZW5j ZSkNCit7DQorICAgIHJldHVybiBfX3NlbWlob3N0aW5nX2NhbGwoU1lTX2xzZWVrLCBmZCwgb2Zm LCB3aGVuY2UsIDApOw0KK30NCisNCisNCitpbnQNCitfX1dFQUtfRlVOQ1RJT05fQVRUUl9fDQor X2Nsb3NlIChpbnQgZmQpDQorew0KKyAgICByZXR1cm4gX19zZW1paG9zdGluZ19jYWxsKFNZU19j bG9zZSwgZmQsIDAsIDAsIDApOw0KK30NCisNCisNCitfc3NpemVfdA0KK19fV0VBS19GVU5DVElP Tl9BVFRSX18NCitfd3JpdGUgKGludCBmZCwgY29uc3QgY2hhciAqYnVmLCBzaXplX3QgY250KQ0K K3sNCisgICAgaW50IHJldCA9IDA7DQorI2lmZGVmIFdJVEhfU0VNSUhPU1RJTkcNCisgICAgcmV0 ID0gX19zZW1paG9zdGluZ19jYWxsKFNZU193cml0ZSwgZmQsIChpbnQpIGJ1ZiwgY250LCAwKTsN CisjIGlmZGVmIE9QRU5PQ0RfU0VNSUhPU1RJTkcNCisgICAgLyogcmV0IC0gbnVtYmVyIG9mIGJ5 dGVzIHRoYXQgYXJlIE5PVCB3cml0dGVuLiBDYWxjdWxhdGUgd3JpdHRlbiAqLw0KKyAgICByZXQg PSBjbnQgLSByZXQ7DQorIyBlbmRpZiAvLyBPUEVOT0NEX1NFTUlIT1NUSU5HDQorI2Vsc2UgLy8g IVdJVEhfU0VNSUhPU1RJTkcNCisgICAgaWYgKGZkICE9IFNURE9VVF9GSUxFTk8gJiYgZmQgIT0g U1RERVJSX0ZJTEVOTykgew0KKyAgICAgICAgcmV0dXJuIC0xOw0KKyAgICB9DQorDQorICAgIGZv ciAodWludDMyX3QgaSA9IDA7IGkgPCBjbnQ7IGkrKykgew0KKyAgICAgICAgYm9hcmRfdWFydF93 cml0ZV9jaGFyKGJ1ZltpXSk7DQorICAgIH0NCisgICAgcmV0ID0gY250Ow0KKyNlbmRpZiAvLyBX SVRIX1NFTUlIT1NUSU5HDQorICAgIHJldHVybiByZXQ7DQorfQ0KKw0KKw0KKy8qIERvIG5vdCBj b21waWxlIGZ1bmN0aW9ucyB3aXRoIGNvbW1vbiBpbXBsZW1lbnRhdGlvbg0KKyAqIGlmIGJ1aWxk aW5nIHNlbWlob3N0aW5nIGxpYnJhcnkNCisgKi8NCisjaWZuZGVmIFdJVEhfU0VNSUhPU1RJTkcN CisNCitzdGF0aWMgc3RydWN0IF9yZWVudCBzX3JlZW50Ow0KKw0KK3N0cnVjdCBfcmVlbnQqDQor X19XRUFLX0ZVTkNUSU9OX0FUVFJfXw0KK19faW5pdHJlZW50KHZvaWQpDQorew0KKyAgICBfUkVF TlRfSU5JVF9QVFIoX0dMT0JBTF9SRUVOVCk7DQorfQ0KKw0KKw0KK3N0cnVjdCBfcmVlbnQqDQor X19XRUFLX0ZVTkNUSU9OX0FUVFJfXw0KK19fZ2V0cmVlbnQodm9pZCkNCit7DQorICAgIHJldHVy biBfR0xPQkFMX1JFRU5UOw0KK30NCisNCisNCitpbnQNCitfX1dFQUtfRlVOQ1RJT05fQVRUUl9f DQorX2ZzdGF0IChpbnQgZmQsIHN0cnVjdCBzdGF0ICpwc3RhdCkNCit7DQorDQorICAgIGlmIChm ZCA8IFNUREVSUl9GSUxFTk8pDQorICAgIHsNCisgICAgICAgIHBzdGF0LT5zdF9tb2RlID0gU19J RkNIUjsNCisgICAgICAgIHJldHVybiAgMDsNCisgICAgfQ0KKyAgICByZXR1cm4gIC0xOw0KK30N CisNCisNCitfc3NpemVfdA0KK19fV0VBS19GVU5DVElPTl9BVFRSX18NCitfcmVhZCAoaW50IGZk LCBjaGFyICpidWYsIHNpemVfdCBjbnQpDQorew0KKyAgICByZXR1cm4gLTE7DQorfQ0KKw0KKw0K K2ludA0KK19fV0VBS19GVU5DVElPTl9BVFRSX18NCitfZ2V0cGlkICh2b2lkKQ0KK3sNCisgICAg cmV0dXJuIC0xOw0KK30NCisNCisNCitpbnQNCitfX1dFQUtfRlVOQ1RJT05fQVRUUl9fDQorX2tp bGwgKGludCBzaWcpDQorew0KKyAgICByZXR1cm4gLTE7DQorfQ0KKw0KKw0KK3ZvaWQgKg0KK19f V0VBS19GVU5DVElPTl9BVFRSX18NCitfc2JyayAoaW50IGluY3IpDQorew0KKyAgICBleHRlcm4g Y2hhciAgIGVuZDsgLyogU2V0IGJ5IGxpbmtlci4gICovDQorICAgIHN0YXRpYyBjaGFyICogaGVh cF9lbmQ7DQorICAgIGNoYXIgKiAgICAgICAgcHJldl9oZWFwX2VuZDsNCisNCisgICAgaWYgKGhl YXBfZW5kID09IDApIHsNCisgICAgICAgIGhlYXBfZW5kID0gJiBlbmQ7DQorICAgIH0NCisNCisg ICAgcHJldl9oZWFwX2VuZCA9IGhlYXBfZW5kOw0KKyAgICBoZWFwX2VuZCArPSBpbmNyOw0KKw0K KyAgICByZXR1cm4gKHZvaWQgKikgcHJldl9oZWFwX2VuZDsNCit9DQorDQorDQoraW50DQorX19X RUFLX0ZVTkNUSU9OX0FUVFJfXw0KK3B0aHJlYWRfc2V0Y2FuY2Vsc3RhdGUgKGludCBzdGF0ZSwg aW50ICpvbGRzdGF0ZSkNCit7DQorICAgIHJldHVybiAwOw0KK30NCisNCisjZW5kaWYgLy8gV0lU SF9TRU1JSE9TVElORw0KZGlmZiAtLWdpdCBhL2xpYmdsb3NzL3h0ZW5zYS93aW5kb3ctdmVjdG9y cy5TIGIvbGliZ2xvc3MveHRlbnNhL3dpbmRvdy12ZWN0b3JzLlMNCm5ldyBmaWxlIG1vZGUgMTAw NjQ0DQppbmRleCAwMDAwMDAwMDAuLmFjYWI4YjM1NQ0KLS0tIC9kZXYvbnVsbA0KKysrIGIvbGli Z2xvc3MveHRlbnNhL3dpbmRvdy12ZWN0b3JzLlMNCkBAIC0wLDAgKzEsMjUyIEBADQorLy8gd2lu ZG93LXZlY3RvcnMtbmV3LlMgLSBSZWdpc3RlciBXaW5kb3cgT3ZlcmZsb3cvVW5kZXJmbG93IEhh bmRsZXJzIGZvciBYRUEyDQorLy8gJElkOiAvL2RlcG90L3JlbC9FYWdsZW5lc3QvWHRlbnNhL09T L3h0b3Mvd2luZG93LXZlY3RvcnMtbmV3LlMjMyAkDQorDQorLy8gQ29weXJpZ2h0IChjKSAxOTk5 LTIwMTMgVGVuc2lsaWNhIEluYy4NCisvLw0KKy8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50 ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZw0KKy8vIGEgY29weSBv ZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZQ0K Ky8vICJTb2Z0d2FyZSIpLCB0byBkZWFsIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0 aW9uLCBpbmNsdWRpbmcNCisvLyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0cyB0byB1c2Us IGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsDQorLy8gZGlzdHJpYnV0ZSwgc3VibGljZW5z ZSwgYW5kL29yIHNlbGwgY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvDQorLy8gcGVybWl0 IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMgZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJq ZWN0IHRvDQorLy8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOg0KKy8vDQorLy8gVGhlIGFib3Zl IGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5j bHVkZWQNCisvLyBpbiBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBT b2Z0d2FyZS4NCisvLw0KKy8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCAiQVMgSVMiLCBXSVRI T1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELA0KKy8vIEVYUFJFU1MgT1IgSU1QTElFRCwgSU5DTFVE SU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRg0KKy8vIE1FUkNIQU5UQUJJ TElUWSwgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVO VC4NCisvLyBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVS UyBCRSBMSUFCTEUgRk9SIEFOWQ0KKy8vIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSIExJQUJJTElU WSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsDQorLy8gVE9SVCBPUiBPVEhFUldJ U0UsIEFSSVNJTkcgRlJPTSwgT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUNCisvLyBT T0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOIFRIRSBTT0ZUV0FSRS4NCisN CisvLyBFeHBvcnRzDQorLmdsb2JhbCBfV2luZG93T3ZlcmZsb3c0DQorLmdsb2JhbCBfV2luZG93 VW5kZXJmbG93NA0KKy5nbG9iYWwgX1dpbmRvd092ZXJmbG93OA0KKy5nbG9iYWwgX1dpbmRvd1Vu ZGVyZmxvdzgNCisuZ2xvYmFsIF9XaW5kb3dPdmVyZmxvdzEyDQorLmdsb2JhbCBfV2luZG93VW5k ZXJmbG93MTINCisNCisJLy8gIE5vdGU6ICB0aGUgY3VycmVudCB3aW5kb3cgZXhjZXB0aW9uIHZl Y3RvcnMgZG8gbm90IGdlbmVyYXRlIGFueQ0KKwkvLyAgbGl0ZXJhbHMuICBIZW5jZSB0aGUgbGl0 ZXJhbF9wcmVmaXggZGlyZWN0aXZlIGlzIG5vdCBuZWNlc3NhcnkuDQorCS8vICBTcGVjaWZ5aW5n IGl0ICJqdXN0IGluIGNhc2UiIGNyZWF0ZXMgYW4gZW1wdHkgc2VjdGlvbiAobmFtZWQNCisJLy8g ICIuV2luZG93VmVjdG9ycy5saXRlcmFsIikgd2hpY2ggY2FuIGluIHNvbWUgY2FzZXMgY2F1c2Ug bGlua2luZw0KKwkvLyAgcHJvYmxlbXMgKHRoZSBsaW5rZXIgc2NyaXB0cyBkb24ndCBwbGFjZSBp dCBhbnl3aGVyZSkuDQorCS8vICBTbyBsZWF2ZSBpdCBjb21tZW50ZWQgb3V0Og0KKwkvLw0KKwkv Ly5iZWdpbglsaXRlcmFsX3ByZWZpeAkuV2luZG93VmVjdG9ycw0KKw0KKwkuc2VjdGlvbgkJLldp bmRvd1ZlY3RvcnMudGV4dCwgImF4Ig0KKw0KKy8vDQorLy8gR0VORVJBTCBOT1RFUzoNCisvLw0K Ky8vIFRoZXNlIHdpbmRvdyBleGNlcHRpb24gaGFuZGxlcnMgbmVlZCBub3QgYmUgbW9kaWZpZWQu DQorLy8gVGhleSBhcmUgc3BlY2lmaWMgdG8gdGhlIHdpbmRvd2VkIGNhbGwgQUJJIG9ubHkuDQor Ly8NCisvLyBVbmRlcmZsb3cgSGFuZGxlcnM6DQorLy8NCisvLyBUaGUgdW5kZXJmbG93IGhhbmRs ZXIgZm9yIHJldHVybmluZyBmcm9tIGNhbGxbaSsxXSB0byBjYWxsW2ldDQorLy8gbXVzdCBwcmVz ZXJ2ZSBhbGwgdGhlIHJlZ2lzdGVycyBmcm9tIGNhbGxbaSsxXSdzIHdpbmRvdy4NCisvLyBJbiBw YXJ0aWN1bGFyLCBhMCBhbmQgYTEgbXVzdCBiZSBwcmVzZXJ2ZWQgYmVjYXVzZSB0aGUgUkVUVyBp bnN0cnVjdGlvbg0KKy8vIHdpbGwgYmUgcmVleGVjdXRlZCAoYW5kIG1heSBldmVuIHVuZGVyZmxv dyBhZ2FpbiBpZiBhbiBpbnRlcnZlbmluZw0KKy8vIGV4Y2VwdGlvbiBoYXMgZmx1c2hlZCBjYWxs W2ldJ3MgcmVnaXN0ZXJzKS4NCisvLyBSZWdpc3RlcnMgYTIgYW5kIHVwIG1heSBjb250YWluIHJl dHVybiB2YWx1ZXMuDQorLy8NCisvLyBUaGUgY2FsbGVyIGNvdWxkIGFsc28gcG90ZW50aWFsbHkg YXNzdW1lIHRoYXQgdGhlIGNhbGxlZSdzIGEwIGFuZCBhMQ0KKy8vIChpdHMgb3duIGE0JmE1IGlm IGNhbGw0LCBhOCZhOSBpZiBjYWxsOCwgYTEyJmExMyBpZiBjYWxsMTIpDQorLy8gYXJlIGNvcnJl Y3QgZm9yIHdoYXRldmVyIHJlYXNvbiAobm90IGEgY2xlYW4gdGhpbmcgdG8gZG8gaW4gZ2VuZXJh bCwNCisvLyBidXQgaWYgaXQncyBwb3NzaWJsZSwgdW5sZXNzIHRoZSBBQkkgZXhwbGljaXRseSBw cm9oaWJpdHMgaXQsDQorLy8gaXQgd2lsbCBldmVudHVhbGx5IGJlIGRvbmUgOikgLS0gd2hldGhl ciB0aGUgdGhlIEFCSSBuZWVkcyB0bw0KKy8vIHByb2hpYml0IHRoaXMgaXMgYSBkaWZmZXJlbnQg cXVlc3Rpb24pLg0KKy8vDQorLy8gVGltaW5nIG9mIEhhbmRsZXJzOg0KKy8vDQorLy8gSGVyZSBp cyBhbiBvdmVydmlldyBvZiB0aGUgb3ZlcmhlYWQgb2YgdGFraW5nIGEgd2luZG93IGV4Y2VwdGlv biwNCisvLyBpZS4gdGhlIG51bWJlciBvZiBhZGRpdGlvbmFsIGN5Y2xlcyB0YWtlbiByZWxhdGl2 ZSB0byBjYXNlIHdoZXJlDQorLy8gYW4gZXhjZXB0aW9uIGlzIG5vdCB0YWtlbi4NCisvLyBOT1RF OiAgdGhlc2UgbnVtYmVycyBkbyBub3QgdGFrZSBpbnRvIGFjY291bnQgYW55IGNhY2hlIG1pc3Nl cywNCisvLyB3cml0ZSBidWZmZXIgc3RhbGxzLCBvciBvdGhlciBleHRlcm5hbCBzdGFsbHMsIGlm IHRoZXkgb2NjdXIuDQorLy8gVGhlIHRvdGFscyBjb25zaXN0IG9mIDUgY3ljbGVzIHRvIGVudGVy IHRoZSBoYW5kbGVyIChvciA2IG9yIDcNCisvLyBmb3Igb3B0aW9uYWwgbG9uZ2VyIHBpcGVsaW5l cyBpbiBYdGVuc2EgTFgpLCB0aGUgbnVtYmVyIG9mIGluc3RydWN0aW9ucw0KKy8vIGFuZCBpbnRl cmxvY2tzICgybmQgYW5kIDNyZCBjb2x1bW5zIGJlbG93KSwgYW5kIDIgY3ljbGVzIGp1bXAgZGVs YXkNCisvLyBvbiByZXR1cm4gKDMgY3ljbGVzIGZvciBvcHRpb25hbCBsb25nZXIgSS1zaWRlIHBp cGVsaW5lIGluIFh0ZW5zYSBMWCk6DQorLy8NCisvLwkJCUluc3RydWN0aW9uK2J1YmJsZXMJVG90 YWxzICg1LXN0YWdlKQ0KKy8vCQkJWEVBMQlYRUEyCQlYRUExCVhFQTINCisvLwlPdmVyZmxvdy00 CTcJNQkJMTQJMTINCisvLwlPdmVyZmxvdy04CTE0CTEwCQkyMQkxNw0KKy8vCU92ZXJmbG93LTEy CTE4CTE0CQkyNQkyMQ0KKy8vCVVuZGVyZmxvdy00CTYJNQkJMTMJMTINCisvLwlVbmRlcmZsb3ct OAkxNAkxMAkJMjEJMTcNCisvLwlVbmRlcmZsb3ctMTIJMTgJMTQJCTI1CTIxDQorLy8NCisvLwlV bmRlcmZsb3ctOAkxNQkxMgkJMjUJMjIJKDctc3RhZ2U7IGNvdWxkIGJlIG1hZGUgMSBsZXNzKQ0K Ky8vCVVuZGVyZmxvdy0xMgkxOQkxNgkJMjkJMjYJKDctc3RhZ2U7IGNvdWxkIGJlIG1hZGUgMSBs ZXNzKQ0KKw0KKw0KKy8vIDQtUmVnaXN0ZXIgV2luZG93IE92ZXJmbG93IFZlY3RvciAoSGFuZGxl cikNCisvLw0KKy8vIEludm9rZWQgaWYgYSBjYWxsW2ldIHJlZmVyZW5jZWQgYSByZWdpc3RlciAo YTQtYTE1KQ0KKy8vIHRoYXQgY29udGFpbnMgZGF0YSBmcm9tIGFuY2VzdG9yIGNhbGxbal07DQor Ly8gY2FsbFtqXSBoYWQgZG9uZSBhIGNhbGw0IHRvIGNhbGxbaisxXS4NCisvLyBPbiBlbnRyeSBo ZXJlOg0KKy8vCXdpbmRvdyByb3RhdGVkIHRvIGNhbGxbal0gc3RhcnQgcG9pbnQ7DQorLy8JYTAt YTMgYXJlIHJlZ2lzdGVycyB0byBiZSBzYXZlZDsNCisvLwlhNC1hMTUgbXVzdCBiZSBwcmVzZXJ2 ZWQ7DQorLy8JYTUgaXMgY2FsbFtqKzFdJ3Mgc3RhY2sgcG9pbnRlci4NCisNCisJLm9yZwkweDAN CitfV2luZG93T3ZlcmZsb3c0Og0KKwlzMzJlCWEwLCBhNSwgLTE2CS8vIHNhdmUgYTAgdG8gY2Fs bFtqKzFdJ3Mgc3RhY2sgZnJhbWUNCisJczMyZQlhMSwgYTUsIC0xMgkvLyBzYXZlIGExIHRvIGNh bGxbaisxXSdzIHN0YWNrIGZyYW1lDQorCXMzMmUJYTIsIGE1LCAgLTgJLy8gc2F2ZSBhMiB0byBj YWxsW2orMV0ncyBzdGFjayBmcmFtZQ0KKwlzMzJlCWEzLCBhNSwgIC00CS8vIHNhdmUgYTMgdG8g Y2FsbFtqKzFdJ3Mgc3RhY2sgZnJhbWUNCisJcmZ3bwkJCS8vIHJvdGF0ZXMgYmFjayB0byBjYWxs W2ldIHBvc2l0aW9uDQorDQorCS5zaXplCV9XaW5kb3dPdmVyZmxvdzQsIC4gLSBfV2luZG93T3Zl cmZsb3c0DQorDQorDQorLy8gNC1SZWdpc3RlciBXaW5kb3cgVW5kZXJmbG93IFZlY3RvciAoSGFu ZGxlcikNCisvLw0KKy8vIEludm9rZWQgYnkgUkVUVyByZXR1cm5pbmcgZnJvbSBjYWxsW2krMV0g dG8gY2FsbFtpXQ0KKy8vIHdoZXJlIGNhbGxbaV0ncyByZWdpc3RlcnMgbXVzdCBiZSByZWxvYWRl ZCAobm90IGxpdmUgaW4gQVJzKTsNCisvLyBjYWxsW2ldIGhhZCBkb25lIGEgY2FsbDQgdG8gY2Fs bFtpKzFdLg0KKy8vIE9uIGVudHJ5IGhlcmU6DQorLy8gICAgICB3aW5kb3cgcm90YXRlZCB0byBj YWxsW2ldIHN0YXJ0IHBvaW50Ow0KKy8vICAgICAgYTAtYTMgYXJlIHVuZGVmaW5lZCwgbXVzdCBi ZSByZWxvYWRlZCB3aXRoIGNhbGxbaV0ucmVnWzAuLjNdOw0KKy8vICAgICAgYTQtYTE1IG11c3Qg YmUgcHJlc2VydmVkICh0aGV5IGFyZSBjYWxsW2krMV0ucmVnWzAuLjExXSk7DQorLy8gICAgICBh NSBpcyBjYWxsW2krMV0ncyBzdGFjayBwb2ludGVyLg0KKw0KKwkub3JnCTB4NDANCitfV2luZG93 VW5kZXJmbG93NDoNCisJbDMyZQlhMCwgYTUsIC0xNgkvLyByZXN0b3JlIGEwIGZyb20gY2FsbFtp KzFdJ3Mgc3RhY2sgZnJhbWUNCisJbDMyZQlhMSwgYTUsIC0xMgkvLyByZXN0b3JlIGExIGZyb20g Y2FsbFtpKzFdJ3Mgc3RhY2sgZnJhbWUNCisJbDMyZQlhMiwgYTUsICAtOAkvLyByZXN0b3JlIGEy IGZyb20gY2FsbFtpKzFdJ3Mgc3RhY2sgZnJhbWUNCisJbDMyZQlhMywgYTUsICAtNAkvLyByZXN0 b3JlIGEzIGZyb20gY2FsbFtpKzFdJ3Mgc3RhY2sgZnJhbWUNCisJcmZ3dQ0KKw0KKwkuc2l6ZQlf V2luZG93VW5kZXJmbG93NCwgLiAtIF9XaW5kb3dVbmRlcmZsb3c0DQorDQorDQorLy8gOC1SZWdp c3RlciBXaW5kb3cgT3ZlcmZsb3cgVmVjdG9yIChIYW5kbGVyKQ0KKy8vDQorLy8gSW52b2tlZCBp ZiBhIGNhbGxbaV0gcmVmZXJlbmNlZCBhIHJlZ2lzdGVyIChhNC1hMTUpDQorLy8gdGhhdCBjb250 YWlucyBkYXRhIGZyb20gYW5jZXN0b3IgY2FsbFtqXTsNCisvLyBjYWxsW2pdIGhhZCBkb25lIGEg Y2FsbDggdG8gY2FsbFtqKzFdLg0KKy8vIE9uIGVudHJ5IGhlcmU6DQorLy8Jd2luZG93IHJvdGF0 ZWQgdG8gY2FsbFtqXSBzdGFydCBwb2ludDsNCisvLwlhMC1hNyBhcmUgcmVnaXN0ZXJzIHRvIGJl IHNhdmVkOw0KKy8vCWE4LWExNSBtdXN0IGJlIHByZXNlcnZlZDsNCisvLwlhOSBpcyBjYWxsW2or MV0ncyBzdGFjayBwb2ludGVyLg0KKw0KKwkub3JnCTB4ODANCitfV2luZG93T3ZlcmZsb3c4Og0K KwlzMzJlCWEwLCBhOSwgLTE2CS8vIHNhdmUgYTAgdG8gY2FsbFtqKzFdJ3Mgc3RhY2sgZnJhbWUN CisJbDMyZQlhMCwgYTEsIC0xMgkvLyBhMCA8LSBjYWxsW2otMV0ncyBzcCAodXNlZCB0byBmaW5k IGVuZCBvZiBjYWxsW2pdJ3MgZnJhbWUpDQorCXMzMmUJYTEsIGE5LCAtMTIJLy8gc2F2ZSBhMSB0 byBjYWxsW2orMV0ncyBzdGFjayBmcmFtZQ0KKwlzMzJlCWEyLCBhOSwgIC04CS8vIHNhdmUgYTIg dG8gY2FsbFtqKzFdJ3Mgc3RhY2sgZnJhbWUNCisJczMyZQlhMywgYTksICAtNAkvLyBzYXZlIGEz IHRvIGNhbGxbaisxXSdzIHN0YWNrIGZyYW1lDQorCXMzMmUJYTQsIGEwLCAtMzIJLy8gc2F2ZSBh NCB0byBjYWxsW2pdJ3Mgc3RhY2sgZnJhbWUNCisJczMyZQlhNSwgYTAsIC0yOAkvLyBzYXZlIGE1 IHRvIGNhbGxbal0ncyBzdGFjayBmcmFtZQ0KKwlzMzJlCWE2LCBhMCwgLTI0CS8vIHNhdmUgYTYg dG8gY2FsbFtqXSdzIHN0YWNrIGZyYW1lDQorCXMzMmUJYTcsIGEwLCAtMjAJLy8gc2F2ZSBhNyB0 byBjYWxsW2pdJ3Mgc3RhY2sgZnJhbWUNCisJcmZ3bwkJCS8vIHJvdGF0ZXMgYmFjayB0byBjYWxs W2ldIHBvc2l0aW9uDQorDQorCS5zaXplCV9XaW5kb3dPdmVyZmxvdzgsIC4gLSBfV2luZG93T3Zl cmZsb3c4DQorDQorDQorLy8gOC1SZWdpc3RlciBXaW5kb3cgVW5kZXJmbG93IFZlY3RvciAoSGFu ZGxlcikNCisvLw0KKy8vIEludm9rZWQgYnkgUkVUVyByZXR1cm5pbmcgZnJvbSBjYWxsW2krMV0g dG8gY2FsbFtpXQ0KKy8vIHdoZXJlIGNhbGxbaV0ncyByZWdpc3RlcnMgbXVzdCBiZSByZWxvYWRl ZCAobm90IGxpdmUgaW4gQVJzKTsNCisvLyBjYWxsW2ldIGhhZCBkb25lIGEgY2FsbDggdG8gY2Fs bFtpKzFdLg0KKy8vIE9uIGVudHJ5IGhlcmU6DQorLy8Jd2luZG93IHJvdGF0ZWQgdG8gY2FsbFtp XSBzdGFydCBwb2ludDsNCisvLwlhMC1hNyBhcmUgdW5kZWZpbmVkLCBtdXN0IGJlIHJlbG9hZGVk IHdpdGggY2FsbFtpXS5yZWdbMC4uN107DQorLy8JYTgtYTE1IG11c3QgYmUgcHJlc2VydmVkICh0 aGV5IGFyZSBjYWxsW2krMV0ucmVnWzAuLjddKTsNCisvLwlhOSBpcyBjYWxsW2krMV0ncyBzdGFj ayBwb2ludGVyLg0KKw0KKwkub3JnCTB4QzANCitfV2luZG93VW5kZXJmbG93ODoNCisJbDMyZQlh MCwgYTksIC0xNgkvLyByZXN0b3JlIGEwIGZyb20gY2FsbFtpKzFdJ3Mgc3RhY2sgZnJhbWUNCisJ bDMyZQlhMSwgYTksIC0xMgkvLyByZXN0b3JlIGExIGZyb20gY2FsbFtpKzFdJ3Mgc3RhY2sgZnJh bWUNCisJbDMyZQlhMiwgYTksICAtOAkvLyByZXN0b3JlIGEyIGZyb20gY2FsbFtpKzFdJ3Mgc3Rh Y2sgZnJhbWUNCisJbDMyZQlhNywgYTEsIC0xMgkvLyBhNyA8LSBjYWxsW2ktMV0ncyBzcCAodXNl ZCB0byBmaW5kIGVuZCBvZiBjYWxsW2ldJ3MgZnJhbWUpDQorCWwzMmUJYTMsIGE5LCAgLTQJLy8g cmVzdG9yZSBhMyBmcm9tIGNhbGxbaSsxXSdzIHN0YWNrIGZyYW1lDQorCWwzMmUJYTQsIGE3LCAt MzIJLy8gcmVzdG9yZSBhNCBmcm9tIGNhbGxbaV0ncyBzdGFjayBmcmFtZQ0KKwlsMzJlCWE1LCBh NywgLTI4CS8vIHJlc3RvcmUgYTUgZnJvbSBjYWxsW2ldJ3Mgc3RhY2sgZnJhbWUNCisJbDMyZQlh NiwgYTcsIC0yNAkvLyByZXN0b3JlIGE2IGZyb20gY2FsbFtpXSdzIHN0YWNrIGZyYW1lLi4vLi4v Li4vLi9saWJnbG9zcy94dGVuc2Evd2luZG93LXZlY3RvcnMuUw0KKwlsMzJlCWE3LCBhNywgLTIw CS8vIHJlc3RvcmUgYTcgZnJvbSBjYWxsW2ldJ3Mgc3RhY2sgZnJhbWUNCisJcmZ3dQ0KKw0KKwku c2l6ZQlfV2luZG93VW5kZXJmbG93OCwgLiAtIF9XaW5kb3dVbmRlcmZsb3c4DQorDQorDQorLy8g MTItUmVnaXN0ZXIgV2luZG93IE92ZXJmbG93IFZlY3RvciAoSGFuZGxlcikNCisvLw0KKy8vIElu dm9rZWQgaWYgYSBjYWxsW2ldIHJlZmVyZW5jZWQgYSByZWdpc3RlciAoYTQtYTE1KQ0KKy8vIHRo YXQgY29udGFpbnMgZGF0YSBmcm9tIGFuY2VzdG9yIGNhbGxbal07DQorLy8gY2FsbFtqXSBoYWQg ZG9uZSBhIGNhbGwxMiB0byBjYWxsW2orMV0uDQorLy8gT24gZW50cnkgaGVyZToNCisvLwl3aW5k b3cgcm90YXRlZCB0byBjYWxsW2pdIHN0YXJ0IHBvaW50Ow0KKy8vCWEwLWExMSBhcmUgcmVnaXN0 ZXJzIHRvIGJlIHNhdmVkOw0KKy8vCWExMi1hMTUgbXVzdCBiZSBwcmVzZXJ2ZWQ7DQorLy8JYTEz IGlzIGNhbGxbaisxXSdzIHN0YWNrIHBvaW50ZXIuDQorDQorCS5vcmcJMHgxMDANCitfV2luZG93 T3ZlcmZsb3cxMjoNCisJczMyZQlhMCwgIGExMywgLTE2CS8vIHNhdmUgYTAgdG8gY2FsbFtqKzFd J3Mgc3RhY2sgZnJhbWUNCisJbDMyZQlhMCwgIGExLCAgLTEyCS8vIGEwIDwtIGNhbGxbai0xXSdz IHNwICh1c2VkIHRvIGZpbmQgZW5kIG9mIGNhbGxbal0ncyBmcmFtZSkNCisJczMyZQlhMSwgIGEx MywgLTEyCS8vIHNhdmUgYTEgdG8gY2FsbFtqKzFdJ3Mgc3RhY2sgZnJhbWUNCisJczMyZQlhMiwg IGExMywgIC04CS8vIHNhdmUgYTIgdG8gY2FsbFtqKzFdJ3Mgc3RhY2sgZnJhbWUNCisJczMyZQlh MywgIGExMywgIC00CS8vIHNhdmUgYTMgdG8gY2FsbFtqKzFdJ3Mgc3RhY2sgZnJhbWUNCisJczMy ZQlhNCwgIGEwLCAgLTQ4CS8vIHNhdmUgYTQgdG8gZW5kIG9mIGNhbGxbal0ncyBzdGFjayBmcmFt ZQ0KKwlzMzJlCWE1LCAgYTAsICAtNDQJLy8gc2F2ZSBhNSB0byBlbmQgb2YgY2FsbFtqXSdzIHN0 YWNrIGZyYW1lDQorCXMzMmUJYTYsICBhMCwgIC00MAkvLyBzYXZlIGE2IHRvIGVuZCBvZiBjYWxs W2pdJ3Mgc3RhY2sgZnJhbWUNCisJczMyZQlhNywgIGEwLCAgLTM2CS8vIHNhdmUgYTcgdG8gZW5k IG9mIGNhbGxbal0ncyBzdGFjayBmcmFtZQ0KKwlzMzJlCWE4LCAgYTAsICAtMzIJLy8gc2F2ZSBh OCB0byBlbmQgb2YgY2FsbFtqXSdzIHN0YWNrIGZyYW1lDQorCXMzMmUJYTksICBhMCwgIC0yOAkv LyBzYXZlIGE5IHRvIGVuZCBvZiBjYWxsW2pdJ3Mgc3RhY2sgZnJhbWUNCisJczMyZQlhMTAsIGEw LCAgLTI0CS8vIHNhdmUgYTEwIHRvIGVuZCBvZiBjYWxsW2pdJ3Mgc3RhY2sgZnJhbWUNCisJczMy ZQlhMTEsIGEwLCAgLTIwCS8vIHNhdmUgYTExIHRvIGVuZCBvZiBjYWxsW2pdJ3Mgc3RhY2sgZnJh bWUNCisJcmZ3bwkJCS8vIHJvdGF0ZXMgYmFjayB0byBjYWxsW2ldIHBvc2l0aW9uDQorDQorCS5z aXplCV9XaW5kb3dPdmVyZmxvdzEyLCAuIC0gX1dpbmRvd092ZXJmbG93MTINCisNCisNCisvLyAx Mi1SZWdpc3RlciBXaW5kb3cgVW5kZXJmbG93IFZlY3RvciAoSGFuZGxlcikNCisvLw0KKy8vIElu dm9rZWQgYnkgUkVUVyByZXR1cm5pbmcgZnJvbSBjYWxsW2krMV0gdG8gY2FsbFtpXQ0KKy8vIHdo ZXJlIGNhbGxbaV0ncyByZWdpc3RlcnMgbXVzdCBiZSByZWxvYWRlZCAobm90IGxpdmUgaW4gQVJz KTsNCisvLyBjYWxsW2ldIGhhZCBkb25lIGEgY2FsbDEyIHRvIGNhbGxbaSsxXS4NCisvLyBPbiBl bnRyeSBoZXJlOg0KKy8vCXdpbmRvdyByb3RhdGVkIHRvIGNhbGxbaV0gc3RhcnQgcG9pbnQ7DQor Ly8JYTAtYTExIGFyZSB1bmRlZmluZWQsIG11c3QgYmUgcmVsb2FkZWQgd2l0aCBjYWxsW2ldLnJl Z1swLi4xMV07DQorLy8JYTEyLWExNSBtdXN0IGJlIHByZXNlcnZlZCAodGhleSBhcmUgY2FsbFtp KzFdLnJlZ1swLi4zXSk7DQorLy8JYTEzIGlzIGNhbGxbaSsxXSdzIHN0YWNrIHBvaW50ZXIuDQor DQorCS5vcmcJMHgxNDANCitfV2luZG93VW5kZXJmbG93MTI6DQorCWwzMmUJYTAsICBhMTMsIC0x NgkvLyByZXN0b3JlIGEwIGZyb20gY2FsbFtpKzFdJ3Mgc3RhY2sgZnJhbWUNCisJbDMyZQlhMSwg IGExMywgLTEyCS8vIHJlc3RvcmUgYTEgZnJvbSBjYWxsW2krMV0ncyBzdGFjayBmcmFtZQ0KKwls MzJlCWEyLCAgYTEzLCAgLTgJLy8gcmVzdG9yZSBhMiBmcm9tIGNhbGxbaSsxXSdzIHN0YWNrIGZy YW1lDQorCWwzMmUJYTExLCBhMSwgIC0xMgkvLyBhMTEgPC0gY2FsbFtpLTFdJ3Mgc3AgKHVzZWQg dG8gZmluZCBlbmQgb2YgY2FsbFtpXSdzIGZyYW1lKQ0KKwlsMzJlCWEzLCAgYTEzLCAgLTQJLy8g cmVzdG9yZSBhMyBmcm9tIGNhbGxbaSsxXSdzIHN0YWNrIGZyYW1lDQorCWwzMmUJYTQsICBhMTEs IC00OAkvLyByZXN0b3JlIGE0IGZyb20gZW5kIG9mIGNhbGxbaV0ncyBzdGFjayBmcmFtZQ0KKwls MzJlCWE1LCAgYTExLCAtNDQJLy8gcmVzdG9yZSBhNSBmcm9tIGVuZCBvZiBjYWxsW2ldJ3Mgc3Rh Y2sgZnJhbWUNCisJbDMyZQlhNiwgIGExMSwgLTQwCS8vIHJlc3RvcmUgYTYgZnJvbSBlbmQgb2Yg Y2FsbFtpXSdzIHN0YWNrIGZyYW1lDQorCWwzMmUJYTcsICBhMTEsIC0zNgkvLyByZXN0b3JlIGE3 IGZyb20gZW5kIG9mIGNhbGxbaV0ncyBzdGFjayBmcmFtZQ0KKwlsMzJlCWE4LCAgYTExLCAtMzIJ Ly8gcmVzdG9yZSBhOCBmcm9tIGVuZCBvZiBjYWxsW2ldJ3Mgc3RhY2sgZnJhbWUNCisJbDMyZQlh OSwgIGExMSwgLTI4CS8vIHJlc3RvcmUgYTkgZnJvbSBlbmQgb2YgY2FsbFtpXSdzIHN0YWNrIGZy YW1lDQorCWwzMmUJYTEwLCBhMTEsIC0yNAkvLyByZXN0b3JlIGExMCBmcm9tIGVuZCBvZiBjYWxs W2ldJ3Mgc3RhY2sgZnJhbWUNCisJbDMyZQlhMTEsIGExMSwgLTIwCS8vIHJlc3RvcmUgYTExIGZy b20gZW5kIG9mIGNhbGxbaV0ncyBzdGFjayBmcmFtZQ0KKwlyZnd1DQorDQorCS5zaXplCV9XaW5k b3dVbmRlcmZsb3cxMiwgLiAtIF9XaW5kb3dVbmRlcmZsb3cxMg0KKw0KKw0KKwkvLy5lbmQJbGl0 ZXJhbF9wcmVmaXgNCisJLnRleHQNCi0tIA0KMi4zNC4xDQoNCg==