From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from NAM11-DM6-obe.outbound.protection.outlook.com (mail-dm6nam11olkn2040.outbound.protection.outlook.com [40.92.19.40]) by sourceware.org (Postfix) with ESMTPS id E4C8D3858D35 for ; Wed, 15 Feb 2023 15:57:28 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org E4C8D3858D35 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=outlook.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=outlook.com ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=EY7/UqcXIJnxZ+pIGPeqDdEcaEV1e9Wmb3x/4ZNjixeB53fFkkXs7Av8Vbwz/IYVRrZUuK+kL0+D9VFTg8V0oqb5zoBs2feK7aBOXjMyqZWuWBS+mPIJbVEoTw+5TJZvZs3K79XhAThWHkYmoVZklJQHQnW2S/s0zfUfoLDS2ZjfHOT/94UOlmBp5rFSf8Q9OQ+tmxpiRjKIZiCSd3seOfAOkiCcpLp7ccwk3r7rBHe0fF6cBAh7m73dY6DIVmgeihAh2N+S34hakACfFshxacJ0+XXcensGaQdZsC7SolbxjUHKsOyn1JezBKKciv8z0/Gx7fkS65kWv7oXRrxxxQ== 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=q2LMSpq5j1ilIDcUYEk2OLQhrWY40Ai6gs+2DTAvLVU=; b=I+OoOziU7RWd5mWqP1rSq/W5gsus02T/6HUFODtepKO9Zcpb+FSZrz2qj+1x5ycRj47drfwJ6qQt9X4DMScuA8sTbWMAv2H4L/KvBmGVKNICyc/0/oUik6xzFQPDvDObUGtKawBmdH+SY4ivkXEmj4C/XXcs2jNZHBwafR4BwNh8hA7kV/6v/zBvPbX4XvxfK8kPdnp4JzulgY+Fxhk5ddPNdxIH8+o6khYc+95gzTD60FNRzP3oQoACsqqAzNcPoCSuqNwyppI1Nx9Sn9ryXV1vf+4TtXHX1XP/+nrvD+/Ub0rAUqmcELxOqLmbJoDeqqwke/HZhrUuO+4RQ1h2QA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=q2LMSpq5j1ilIDcUYEk2OLQhrWY40Ai6gs+2DTAvLVU=; b=f0SdkTa+4mOlB+welyDx4YvjB/UdUWhE7qgkl+1yhx/jqAJ1h3cSiq2YL5yH6sS0OyA6kJEDJldKPBv40628RcGImXB0dHmjlcFFN2gjI4KLhqDc93NSqM1K72S/MHOgS75n82IG/vcqV0ZSJXs3HYgvH/4zKcXYLt7QOvoCy1KafWdqMo3MKMpFT3sU9LCtC5LWjliyYh9fRz9XBb4zCvqDGOF8gtERakuPH7JI4ase0okcludgfUFzubDkwrfQefNyiE30rG072JkAS4HBqcR3q0qgZYC/7wV/8E3D6s1FRmqVDww9XGcE25B6NifI7y1toHSb26TqIZjX7I0LgQ== Received: from BYAPR04MB4824.namprd04.prod.outlook.com (2603:10b6:a03:5e::19) by BY5PR04MB6946.namprd04.prod.outlook.com (2603:10b6:a03:218::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6086.26; Wed, 15 Feb 2023 15:57:25 +0000 Received: from BYAPR04MB4824.namprd04.prod.outlook.com ([fe80::3a96:d832:ac44:1c25]) by BYAPR04MB4824.namprd04.prod.outlook.com ([fe80::3a96:d832:ac44:1c25%7]) with mapi id 15.20.6086.023; Wed, 15 Feb 2023 15:57:25 +0000 From: =?ks_c_5601-1987?B?2vAg190=?= To: Richard Biener CC: Andrew Stubbs , "juzhe.zhong@rivai.ai" , gcc-patches , kito.cheng , "richard.sandiford@arm.com" Subject: Re: [PATCH] RISC-V: Bugfix for mode tieable of the rvv bool types Thread-Topic: [PATCH] RISC-V: Bugfix for mode tieable of the rvv bool types Thread-Index: AQHZPfVrrkgNAsjNlEmEAI+kxxpXCq7Jt/19gALQgACAADBQgIAAO183gAAU5ICAAxxJsw== Date: Wed, 15 Feb 2023 15:57:25 +0000 Message-ID: References: In-Reply-To: Accept-Language: en-US, zh-CN Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: msip_labels: x-ms-exchange-messagesentrepresentingtype: 1 x-tmn: [6bqLLakXJxnJpH6SI6mHfjE/erz1RTsz] x-ms-publictraffictype: Email x-ms-traffictypediagnostic: BYAPR04MB4824:EE_|BY5PR04MB6946:EE_ x-ms-office365-filtering-correlation-id: 5ff6133a-32c1-4ef3-4f70-08db0f6d553d x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: QqPJ1Gy/7oswCvEnZhLtGw8CJUXaVpMK3E0DkI85TdyKP3NpnTtCDBYGpQ6bES8JL2LREb25dOUhkD3dVql/Uc/8kD8tSC0AglLaC0pksMMPYMvkXG0CbJiFMZuij/EQNBF/ZFdzjFWb8Aoevi9B4kXZKXH2dL0xTaJyVaduw2RyAGD69EJOoop4gdjUBUTWmfbWoAk+9op3+mCqpr1Drnq7JZdmJaM2vuSjzGAst6UbtOxeYq4bLQUrAmx+iLiROUvE0QvD2NLsYcEX3MfdgJe1pNVlcBnwjQEixE/cUzJDjfg9qYPy/rrg2l6KXV8E8YVZn/NiKgj9d/VU4B85eMEmclDJlEt/gNxutu+p/8olQpi3QB/c/AMJ4UEABhYFfdXWuLPFuU8IvSetdY0CnxvAk5Xw8wTyazzBdMVhaVaHco2dBHbB2FKLc/nF7OYkIn9bQ3VmIKvmMcbEAAHPKI50jCOV/8McLpp65hYnhLiJTk54wUa3suPEMgjtqX0UMIlYYzsrR89GCH0cLOp41sPY5YJ7Y6BR0kL1lo3g9p4F0OunKH0lLeVWnUcR8QkYn/+Q81ELi3G4PHb2HuuyuofcRV37+BREtThWTGjRGDJWzaMD0rTCNTO26PYqTB+ErSGfShHKQnAHuzOjInJYDA== x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?ks_c_5601-1987?B?V3Q0bkJpZVlnY1ZLcUZXWmZIUHk1VlkwR1VDQ2tsRytSTTBsVFYy?= =?ks_c_5601-1987?B?YjhqM3YxaXA2WEQxeEgzbTRmMjYxMXB0b0VTWFJuL0ZkSlNqVVRW?= =?ks_c_5601-1987?B?WEZQS2FiY3dkWThrQ256V0l5TytIZTVUanRiL1hudE5rTStQMHhI?= =?ks_c_5601-1987?B?bXdjYy9aRFVqNUNsc25KaFRWVXNESXR4RjBuNDl4UGdDSjQ2azdv?= =?ks_c_5601-1987?B?OWNPcnR4THVnT1BRV0d5WVc0UU1veE54T2RmR2htSm9iZHJHeGZI?= =?ks_c_5601-1987?B?eG1IV25YWURzbHU0Njg2OHpyaE1HSFBDUjlUNU01bVJXa1hQVjVm?= =?ks_c_5601-1987?B?YmR4TGRGUWRod1h5ejBZUHE2QjRmVzE5a0tBYkQyUFdMeWM5TmZ3?= =?ks_c_5601-1987?B?UEx0RmdMOXp0TWpSUFEzaU8vQzJkUjRpZmNIdFY2MjdjUW4vM3BL?= =?ks_c_5601-1987?B?c1I1TE0xS2JreTZQNDJwckhxZkpaNUdXTVp4VkJlOWEwYytCRUc4?= =?ks_c_5601-1987?B?NDFxUlR0RCtBbEZtQnRkYXVXZkt2eDZESU9HL2dIalpEeTNEV2JG?= =?ks_c_5601-1987?B?S2xKQmNESE9LaUUzaUMzcDBGOVZnY0I4eVFGSnRVVEdIb2VVSTdO?= =?ks_c_5601-1987?B?enY5MEZXNjZ0ajNOaE9FVjdXMUZkOCtIRDkwek9YTVVleHAvM2or?= =?ks_c_5601-1987?B?RjJqNEsvdmJDS2ZHMmtadWhjMFNMM3FBMExKaDQyTnhkVS9KdGF0?= =?ks_c_5601-1987?B?eHhscGtaZkR1dENQNml5SURKcHVzeXNHTzdlSDNubENHekk3Zkwv?= =?ks_c_5601-1987?B?Nm1NYWgyREJ4S3lPeEY5bEdMK0VXVWhxVVdsbWlVUzBhMEozbmlX?= =?ks_c_5601-1987?B?a1lpc2Z0dlg3T0RBc0c0ZG1NV3lNRDZPZXFWUU9mVWVJaHRNQll1?= =?ks_c_5601-1987?B?eCt3L01OaE1wWVozUXdHTDhSNk1xTTVBdHdxQTNNOUt0UHB0ZnF0?= =?ks_c_5601-1987?B?N1ExNm1rV1NkcWxtZk5ScWprR3RZRUVjVFo1Mjg4b0RhNjdFaG1F?= =?ks_c_5601-1987?B?dW03dDErUEl5Z0x6WmlXSjlac3lzTzIwYkRVNEl5QVRSeUNPcVhp?= =?ks_c_5601-1987?B?TEE0NW9WZVZnbkc1ZUhGV2U1SVBxdWlXQ1JsWnpVK3dyaC8zWlRJ?= =?ks_c_5601-1987?B?eVZtTjFrSFNKZFNKRm52KzA1VFg5ZzhveWFBYnlBbUVIUVhIUXlO?= =?ks_c_5601-1987?B?UkoxVnQ1QlpPZ1Z4TXZVaW9BajVhYzFkVkVYMWpkQ1lzYmtFSHdi?= =?ks_c_5601-1987?B?SHE4cldOdG5QNkptaW9GSDIyU1VwcUF5ODVSOEZiK2JRSVRlTjVO?= =?ks_c_5601-1987?B?VTNkd09SSXFRekVVUEhDZUhjRURIeC82Qm1TRUdKaWp2NGpuK2JQ?= =?ks_c_5601-1987?B?Ulh5TUZVaG9oajlNYWJLemhBLzViaGZ5ei82eUJyNlZGYjA2M1ZU?= =?ks_c_5601-1987?B?SmFUeHlXaUJNMW1oUUZXZVhGeXRQV2xJZzRGYkVTL1A3TUloYktr?= =?ks_c_5601-1987?B?QnFrRmdtbGxmV1B1UGRvc243dEN4NlQvc0k2WC92M2I2blRMTW0y?= =?ks_c_5601-1987?B?bnFvbnJUS0tIb2E3ai9FaUR1eFF6dFNPN1Bub1QxczA4UGNibTds?= =?ks_c_5601-1987?B?cnAvaWprS083OTNub3FCSjdtMnNLOGgyRzRFbDZvMHhGNWtQaEdk?= =?ks_c_5601-1987?B?T0NnSW9CUHc0dU1LUEhzYXc5UzlJQmE2YWxqMWhhUkJOZXJhcW5o?= =?ks_c_5601-1987?B?U3BkeFBTMzVQSjBDcVBoOTRWZWMyc1ZIQUErWXZXTXh6Q2JxUW1m?= =?ks_c_5601-1987?B?d2JjQWxzVDM0UG9tZ2pDb05vOWNHUDA0UHJmay82bVFOVm9ydlV6?= =?ks_c_5601-1987?B?ZUdOOWFXV3JBeUQ3bVhMT21YeDZLa3Z0OVR2QmNhVjJGVlpVdC9C?= =?ks_c_5601-1987?B?SVFiaXZoclI3eHFLMDBBPT0=?= Content-Type: multipart/alternative; boundary="_000_BYAPR04MB48249ED48C0328DB3ED6501CB7A39BYAPR04MB4824namp_" MIME-Version: 1.0 X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BYAPR04MB4824.namprd04.prod.outlook.com X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-CrossTenant-Network-Message-Id: 5ff6133a-32c1-4ef3-4f70-08db0f6d553d X-MS-Exchange-CrossTenant-originalarrivaltime: 15 Feb 2023 15:57:25.8834 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-rms-persistedconsumerorg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR04MB6946 X-Spam-Status: No, score=-3.3 required=5.0 tests=BAYES_00,CHARSET_FARAWAY_HEADER,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM,GIT_PATCH_0,HTML_MESSAGE,KAM_SHORT,MIME_CHARSET_FARAWAY,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SCC_10_SHORT_WORD_LINES,SCC_20_SHORT_WORD_LINES,SCC_35_SHORT_WORD_LINES,SCC_5_SHORT_WORD_LINES,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: --_000_BYAPR04MB48249ED48C0328DB3ED6501CB7A39BYAPR04MB4824namp_ Content-Type: text/plain; charset="ks_c_5601-1987" Content-Transfer-Encoding: base64 QWZ0ZXIgc29tZSBpbnZlc3RpZ2F0aW9uLCB0aGUgbW9kZSBwcmVjaXNpb24g YWRqdXN0aW5nIGNhbiBoZWxwIHRvIHRlbGwgdGhlIGRpZmZlcmVuY2UgZnJv bSB0aGUgVnhOMUJJIHRvIFZ4TjY0QkksIGJlc2lkZXMgdGhlIGV4aXN0aW5n IG1vZGVfc2l6ZS4gVGh1cyBJIHdvdWxkIGxpa2UgdG8gcHJlcGFyZSB0aGUg cGF0Y2ggZm9yIHRoZSBwcmVjaXNpb24gYWRqdXN0bWVudCBvbmx5IGZpcnN0 Lg0KDQpVbmZvcnR1bmF0ZWx5LCB0aGVyZSBpcyBvbmUgc2VsZnRlc3QgZmFp bHVyZSByaWdodCBub3cgd2hlbiBJIHRyeSB0byBhZGp1c3QgdGhlIHByZWNp c2lvbiBvZiBWeE4qQkkgYW5kIEkgYW0gc3RpbGwgd29ya2luZyBvbiBpdC4g T2YgY291cnNlLCB3aWxsIGtlZXAgeW91IGFsbCBwb3N0ZWQuDQoNClZ4TjFC SSAgYWRqdXN0IHByZWNpc2lvbiA9PiAxDQpWeE4yQkkgIGFkanVzdCBwcmVj aXNpb24gPT4gMg0KVnhONEJJICBhZGp1c3QgcHJlY2lzaW9uID0+IDQNClZ4 TjhCSSAgYWRqdXN0IHByZWNpc2lvbiA9PiA4DQpWeE4xNkJJICBhZGp1c3Qg cHJlY2lzaW9uID0+IDE2DQpWeE4zMkJJICBhZGp1c3QgcHJlY2lzaW9uID0+ IDMyDQpWeE42NEJJICBhZGp1c3QgcHJlY2lzaW9uID0+IDY0DQoNClBhbg0K X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18NCkZyb206IFJpY2hh cmQgQmllbmVyIDxyZ3VlbnRoZXJAc3VzZS5kZT4NClNlbnQ6IE1vbmRheSwg RmVicnVhcnkgMTMsIDIwMjMgMjM6NDcNClRvOiDa8CDX3SA8aW5jYXJuYXRp b24ucC5sZWVAb3V0bG9vay5jb20+DQpDYzogQW5kcmV3IFN0dWJicyA8YW1z QGNvZGVzb3VyY2VyeS5jb20+OyBqdXpoZS56aG9uZ0ByaXZhaS5haSA8anV6 aGUuemhvbmdAcml2YWkuYWk+OyBnY2MtcGF0Y2hlcyA8Z2NjLXBhdGNoZXNA Z2NjLmdudS5vcmc+OyBraXRvLmNoZW5nIDxraXRvLmNoZW5nQHNpZml2ZS5j b20+OyByaWNoYXJkLnNhbmRpZm9yZEBhcm0uY29tIDxyaWNoYXJkLnNhbmRp Zm9yZEBhcm0uY29tPg0KU3ViamVjdDogUmU6IFtQQVRDSF0gUklTQy1WOiBC dWdmaXggZm9yIG1vZGUgdGllYWJsZSBvZiB0aGUgcnZ2IGJvb2wgdHlwZXMN Cg0KT24gTW9uLCAxMyBGZWIgMjAyMywg2vAg190gd3JvdGU6DQoNCj4gVGhh bmtzIGFsbCBmb3IgeW91ciBoZWxwIGFuZCBjb21tZW50cy4NCj4NCj4gTGV0 IG1lIHNoYXJlIG1vcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhpcyBwYXRjaC4g RXNwZWNpYWxseSBmb3IgdGhlIHRyZWUtc3NhLXNjY3ZuLmNjIHBhcnQuDQo+ DQo+IEFzc3VtZSB3ZSBoYXZlIHRoZSBibG93IHRlc3QgY29kZSBmb3IgdGhp cyBpc3N1ZS4NCj4NCj4gdm9pZA0KPiB0ZXN0XzEoaW50OF90ICogcmVzdHJp Y3QgaW4sIGludDhfdCAqIHJlc3RyaWN0IG91dCkgew0KPiAgICAgdmJvb2w4 X3QgdjIgPSAqKHZib29sOF90KilpbjsNCj4gICAgIHZib29sMTZfdCB2NSA9 ICoodmJvb2wxNl90KilpbjsNCj4NCj4gICAgICoodmJvb2w4X3QqKShvdXQg KyAxMDApID0gdjI7DQo+ICAgICAqKHZib29sMTZfdCopKG91dCArIDIwMCkg PSB2NTsNCj4gfQ0KPg0KPiBXaXRob3V0IHRoZSB0cmVlLXNzYS1zY2N2bi5j YyBmaWxlIGNvZGUgY2hhbmdlLg0KPiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0NCj4gdm9pZCB0ZXN0XzEgKGludDhfdCAqIHJl c3RyaWN0IGluLCBpbnQ4X3QgKiByZXN0cmljdCBvdXQpDQo+IHsNCj4gICB2 Ym9vbDhfdCB2MjsNCj4gICBfX3J2dl9ib29sMTZfdCBfMTsNCj4NCj4gICA8 YmIgMj4gW2xvY2FsIGNvdW50OiAxMDczNzQxODI0XToNCj4gICB2Ml80ID0g TUVNWyh2Ym9vbDhfdCAqKWluXzMoRCldOw0KPiAgIF8xID0gVklFV19DT05W RVJUX0VYUFI8X19ydnZfYm9vbDE2X3Q+KHYyXzQpOyAgLy8gaW5zZXJ0IGR1 cmluZyAwMzkuZnJlMQ0KPiAgIE1FTVsodmJvb2w4X3QgKilvdXRfNShEKSAr IDEwMEJdID0gdjJfNDsNCj4gICBNRU1bKHZib29sMTZfdCAqKW91dF81KEQp ICsgMjAwQl0gPSBfMTsNCj4gICByZXR1cm47DQo+IH0NCj4NCj4gV0l0aGlu IHRoZSB0cmVlLXNzYS1zY2N2bi5jYyBmaWxlIGNvZGUgY2hhbmdlLg0KPiAt LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4gdm9p ZCB0ZXN0XzEgKGludDhfdCAqIHJlc3RyaWN0IGluLCBpbnQ4X3QgKiByZXN0 cmljdCBvdXQpDQo+IHsNCj4gICB2Ym9vbDE2X3QgdjU7DQo+ICAgdmJvb2w4 X3QgdjI7DQo+DQo+ICAgPGJiIDI+IFtsb2NhbCBjb3VudDogMTA3Mzc0MTgy NF06DQo+ICAgdjJfMyA9IE1FTVsodmJvb2w4X3QgKilpbl8yKEQpXTsNCj4g ICB2NV80ID0gTUVNWyh2Ym9vbDE2X3QgKilpbl8yKEQpXTsNCj4gICBNRU1b KHZib29sOF90ICopb3V0XzUoRCkgKyAxMDBCXSA9IHYyXzM7DQo+ICAgTUVN Wyh2Ym9vbDE2X3QgKilvdXRfNShEKSArIDIwMEJdID0gdjVfNDsNCj4gICBy ZXR1cm47DQo+IH0NCj4NCj4gVGh1cywgSSBmaWd1cmVkIG91dCB0aGUgYS1t YWluLmMuMDM5dC5mcmUxIHBhc3MgcmVzdWx0cyBpbiB0aGlzIENPTlZFUlQg YmVpbmcgaW5zZXJ0ZWQuDQo+IFdpdGggc29tZSBkZWJ1Z2dpbmcsIEkgbG9j YXRlZCB0aGUgZGlmZmVyZW5jZSB0aGF0IGNvbWVzIGZyb20gdGhlDQo+IGV4 cHJlc3Npb25zX2VxdWFsX3AuIElmIEdFVF9NT0RFX1NJWkUobW9kZSkgaXMg dGhlIHNhbWUgYmV0d2VlbiB0aGUgVnhOOEJpbW9kZQ0KPiBhbmQgVnhONEJp bW9kZSwgdGhlIGV4cHJlc3Npb25zX2VxdWFsX3Agd2lsbCBjb21wYXJlIHRo ZSBzYW1lIGFkZHJlc3Mgb2YgYSB0cmVlLCBha2ENCj4gUE9MWV9JTlRfQ1NU IFs4LCA4XS4NCj4NCj4gdmlzaXRfcmVmZXJlbmNlX29wX2xvYWQNCj4gICAg IHwtIHZuX3JlZmVyZW5jZV9sb29rdXANCj4gICAgICAgICB8LSB2bl9yZWZl cmVuY2VfbG9va3VwXzINCj4gICAgICAgICAgICAgIHwtIGZpbmRfc2xvdF93 aXRoX2hhc2gNCj4gICAgICAgICAgICAgICAgICB8LSB2bl9yZWZlcmVuY2Vf aGFzaGVyOjplcXVhbA0KPiAgICAgICAgICAgICAgICAgICAgICB8LSBleHBy ZXNzaW9uc19lcXVhbF9wDQo+DQo+IE1lYW53aGlsZSwgd2UgYWxzbyBkb3Vi bGUtY2hlY2tlZCB0aGF0IHNldCB0aGUgZGlmZmVyZW50IE1PREVfU0laRSBv ZiBib3RoIHRoZQ0KPiBWeE44Qmltb2RlIGFuZCBWeE40Qmltb2RlIChmb3Ig ZXhhbXBsZSwgWzgsIDFdIGFuZCBbNCwxXSBmb3IgdGVzdCBvbmx5KSBhcmUg YWJsZQ0KPiB0byByZXNvbHZlIHRoaXMgaXNzdWUuIEJ1dCB0aGV5IHNob3Vs ZCBiZSBbMSwgMV0gYWNjb3JkaW5nIHRvIHRoZSBJU0Egc2VtYW50aWNzLg0K Pg0KPiBUaHVzLCB3ZSB0cnkgdG8gc2V0IG90aGVyIE1PREVfWFhYIGJ1dCBp dCBzZWVtcyBub3Qgd29ya2luZyBhdCBhbGwuIEZvciBleGFtcGxlOg0KPg0K PiBWTng0QklNb2RlIE5VTklUUyBbMHg0LCAweDRdDQo+IFZOeDhCSU1vZGUg TlVOSVRTIFsweDgsIDB4OF0NCj4NCj4gRmluYWxseSwgSSBmb3VuZCB0aGUg VEFSR0VUX01PREVTX1RJRUFCTEVfUCBhbmQgaW5qZWN0IGl0IGludG8gdGhl IGZ1bmN0aW9uDQo+IHZpc2l0X3JlZmVyZW5jZV9vcF9sb2FkIHRvIHJlc29s dmUgdGhpcyBpc3N1ZS4NCj4NCj4gSSB3aWxsIGNvbnRpbnVlIHRvIHRyeSBv dGhlciB3YXlzIGJlc2lkZXMgdGhlIHRyZWUtc3NhLXNjY3ZuLmNjIGlmIHRo aXMgbWF5IG5vdCBiZQ0KPiB0aGUgcmlnaHQgcGxhY2UgZm9yIHRoaXMgaXNz dWUuDQoNClRoZXJlIGFyZSBvdGhlciBwbGFjZXMgbGlrZSBhbGlhcyBhbmFs eXNpcyB3aGljaCB3aWxsIGJlIG5vdCBoYXBweQ0KaWYgdGhlIG1vZGUgc2l6 ZS9wcmVjaXNpb24gZG8gbm90IG1hdGNoIHJlYWxpdHkuICBTbyBubywgSSBk b24ndCB0aGluaw0KbW9kZXNfdGllYWJsZSBpcyB0aGUgY29ycmVjdCB0aGlu ZyB0byBjaGVjayBoZXJlLiAgSW5zdGVhZCB0aGUgZXhpc3RpbmcNCmNoZWNr IHNlZW1zIHRvIGJlIHRvIHRoZSBwb2ludCBidXQgdGhlIG1vZGVzIGFyZSBu b3Qgc2V0IHVwIGNvcnJlY3RseQ0KdG8gY2FycnkgdGhlIGluZm8gb2Ygb25l IGhhdmluZyBwYWRkaW5nIGF0IHRoZSBlbmQgYW5kIHRoZSBvdGhlciBub3Qu DQoNClJpY2hhcmQuDQoNCj4gVGhhbmsgYWdhaW4gYW5kIHdpbGwga2VlcCB5 b3UgcG9zdGVkLg0KPg0KPiBQYW4NCj4NCj4NCj4NCj4gX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18NCj4gRnJvbTogQW5kcmV3IFN0dWJicyA8 YW1zQGNvZGVzb3VyY2VyeS5jb20+DQo+IFNlbnQ6IE1vbmRheSwgRmVicnVh cnkgMTMsIDIwMjMgMTk6MDANCj4gVG86IFJpY2hhcmQgQmllbmVyIDxyZ3Vl bnRoZXJAc3VzZS5kZT47IGp1emhlLnpob25nQHJpdmFpLmFpIDxqdXpoZS56 aG9uZ0ByaXZhaS5haT4NCj4gQ2M6IFBhbiBMaSA8aW5jYXJuYXRpb24ucC5s ZWVAb3V0bG9vay5jb20+OyBnY2MtcGF0Y2hlcyA8Z2NjLXBhdGNoZXNAZ2Nj LmdudS5vcmc+OyBraXRvLmNoZW5nIDxraXRvLmNoZW5nQHNpZml2ZS5jb20+ OyByaWNoYXJkLnNhbmRpZm9yZEBhcm0uY29tIDxyaWNoYXJkLnNhbmRpZm9y ZEBhcm0uY29tPg0KPiBTdWJqZWN0OiBSZTogW1BBVENIXSBSSVNDLVY6IEJ1 Z2ZpeCBmb3IgbW9kZSB0aWVhYmxlIG9mIHRoZSBydnYgYm9vbCB0eXBlcw0K Pg0KPiBJIHByZXN1bWUgSSd2ZSBiZWVuIENDJ2Qgb24gdGhpcyBjb252ZXJz YXRpb24gYmVjYXVzZSB3ZWlyZCB2ZWN0b3INCj4gYXJjaGl0ZWN0dXJlIHBy b2JsZW1zIGhhdmUgaGFwcGVuZWQgdG8gbWUgYmVmb3JlLiA6KQ0KPg0KPiBI b3dldmVyLCBJJ20gbm90IHN1cmUgSSBjYW4gaGVscCBtdWNoIGJlY2F1c2Ug QU1EIEdDTiBkb2VzIG5vdCB1c2UNCj4gQkltb2RlIHZlY3RvcnMgYXQgYWxs LiBUaGlzIGlzIHBhcnRseSBiZWNhdXNlIGxvYWRpbmcgYm9vbGVhbiB2YWx1 ZXMNCj4gaW50byBhIEdDTiB2ZWN0b3Igd291bGQgaGF2ZSAzMSBwYWRkaW5n IGJpdHMgZm9yIGVhY2ggbGFuZSwgYnV0IG1vc3RseQ0KPiBiZWNhdXNlIHRo ZSByZXN1bHQgb2YgY29tcGFyaXNvbiBpbnN0cnVjdGlvbnMgaXMgd3JpdHRl biB0byBhIERJbW9kZQ0KPiBzY2FsYXIgcmVnaXN0ZXIsIG5vdCBpbnRvIGEg dmVjdG9yLg0KPg0KPiBJIGRpZCBleHBlcmltZW50LCBsb25nIGFnbywgd2l0 aCBoYXZpbmcgYSBWNjRCSW1vZGUgdGhhdCBjb3VsZCBiZSBzdG9yZWQNCj4g aW4gc2NhbGFyIHJlZ2lzdGVycyAodGllYWJsZSB3aXRoIERJbW9kZSksIGJ1 dCB0aGVyZSB3YXNuJ3QgYW55IGdyZWF0DQo+IGFkdmFudGFnZSBhbmQgaXQg YnJva2UgVkVDVE9SX01PREVfUCBpbiBtb3N0IG90aGVyIGNvbnRleHRzLg0K Pg0KPiBJdCdzIHBvc3NpYmxlIHRvIHN0b3JlIHRydXRoIHZhbHVlcyBpbiB2 ZWN0b3JzIGFzIGludGVnZXJzLCBhbmQgdGhlcmUNCj4gYXJlIHNvbWUgY2Fz ZXMgd2hlcmUgd2UgZG8gc28gKFNJTUQgY2xvbmUgbWFzayBhcmd1bWVudHMs IGZvciBleGFtcGxlKSwNCj4gYnV0IHRoYXQncyBtb3N0bHkgdG8gc21vb3Ro IHRoaW5ncyBvdmVyIGluIHRoZSBtaWRkbGUtZW5kLg0KPg0KPiBUaGUgcHJv YmxlbSB3aXRoIHBhZGRpbmcgYml0cyBpcyBzb21ldGhpbmcgSSBkbyBzZWU6 IFY2NFFJbW9kZSBoYXMgMjQNCj4gcGFkZGluZyBiaXRzIGZvciBlYWNoIGxh bmUsIGluIHJlZ2lzdGVyLiBXaGlsZSB0aGVyZSBhcmUgaW5zdHJ1Y3Rpb25z DQo+IHRoYXQgd2lsbCBsb2FkIGFuZCBzdG9yZSBRSW1vZGUgdmVjdG9ycyBj b3JyZWN0bHksIHdpdGhvdXQgdGhlIHBhZGRpbmcsDQo+IHRoZSBiYWNrZW5k IHN0aWxsIGhhcyB0byBoYW5kbGUgYWxsIHRoZSBzaWduLWV4dGVuZHMsIHpl cm8tZXh0ZW5kcywgYW5kDQo+IHRydW5jYXRlcyBleHBsaWNpdGx5LCBiZWNh dXNlIHRoZSBtaWRkbGUtZW5kIGFuZCBleHBhbmQgcGFzcyBnaXZlIG5vDQo+ IGFzc2lzdGFuY2Ugd2l0aCB0aGF0IGZvciB2ZWN0b3JzICh1bmxpa2Ugc2Nh bGFycykuDQo+DQo+IEFuZHJldw0KPiBPbiAxMy8wMi8yMDIzIDA4OjA3LCBS aWNoYXJkIEJpZW5lciB2aWEgR2NjLXBhdGNoZXMgd3JvdGU6DQo+ID4gT24g U2F0LCAxMSBGZWIgMjAyMywganV6aGUuemhvbmdAcml2YWkuYWkgd3JvdGU6 DQo+ID4NCj4gPj4gVGhhbmtzIGZvciBjb250cmlidXRpbmcgdGhpcy4NCj4g Pj4gSGksIFJpY2hhcmQuIENhbiB5b3UgaGVscCB1cyB3aXRoIHRoaXMgaXNz dWU/DQo+ID4+IEluIFJWViwgd2UgaGF2ZSB2Ym9vbDhfdCAoVk54OEJJbW9k ZSksIHZib29sMTZfdCAoVk54NEJJbW9kZSksIHZib29sMzJfdCAoVk54MkJJ bW9kZSksIHZib29sNjRfdCAoVk54MUJJbW9kZSkNCj4gPj4gU2luY2Ugd2Ug YXJlIHVzaW5nIDFiaXQtbWFzayB3aGljaCBpcyAxLUJPT0wgb2NjdXB5IDFi aXQuDQo+ID4+IEFjY29yZGluZyB0byBSVlYgSVNBLCB3ZSBhZGp1c3QgdGhl c2UgbW9kZXMgYXMgZm9sbG93czoNCj4gPj4NCj4gPj4gVk54OEJJbW9kZSBw b2x5ICg4LDgpIE5VTlRUUyAoZWFjaCBudW5pdHMgaXMgMWJpdCBtYXNrKQ0K PiA+PiBWTng0Qkltb2RlIHBvbHkoNCw0KSBOVU5UVFMgKGVhY2ggbnVuaXRz IGlzIDFiaXQgbWFzaykNCj4gPj4gVk54MkJJbW9kZSBwb2x5KDIsMikgTlVO VFRTIChlYWNoIG51bml0cyBpcyAxYml0IG1hc2spDQo+ID4+IFZOeDFCSW1v ZGUgcG9seSAoMSwxKSBOVU5UVFMgKGVhY2ggbnVuaXRzIGlzIDFiaXQgbWFz aykNCj4gPg0KPiA+IFNvIGhvdydzIFZOeDFCSW1vZGUgbGFpZCBvdXQgZm9y IE4gPT0gMj8gIElzIHRoYXQgc3RpbGwgYSBzaW5nbGUNCj4gPiBieXRlIGFu ZCB0d28gY29uc2VjdXRpdmUgYml0cz8gIEkgc3VwcG9zZSBzby4NCj4gPg0K PiA+IEJ1dCB0aGVuIEdFVF9NT0RFX1BSRUNJU0lPTiAoR0VUX01PREVfSU5O RVIgKC4uKSkgc2hvdWxkIGFsd2F5cyBiZSAxPw0KPiA+DQo+ID4gSSdtIG5v dCBzdXJlIHdoYXQgR0VUX01PREVfUFJFQ0lTSU9OIG9mIHRoZSB2ZWN0b3Ig bW9kZSBpdHNlbGYNCj4gPiBzaG91bGQgYmUgaGVyZSwgYnV0IHRoZW4gSSB3 b25kZXIgLi4uDQo+ID4NCj4gPj4gSWYgd2UgdHJpZWQgR0VUX01PREVfQklU U0laRSBvciBHRVRfTU9ERV9OVU5JVFMgdG8gZ2V0IHZhbHVlLCB0aGVpciB2 YWx1ZSBhcmUgZGlmZmVyZW50Lg0KPiA+PiBIb3dldmVyLCBJZiB3ZSB0cmll ZCBHRVRfTU9ERV9TSVpFIG9mIHRoZXNlIG1vZGVzLCB0aGV5IGFyZSB0aGUg c2FtZSAocG9seSAoMSwxKSkuDQo+ID4+IFN1Y2ggc2NlbmFyaW8gbWFrZSB0 aGVzZSB0aWVkIHRvZ2V0aGVyIGFuZCBnaXZlcyB0aGUgd3JvbmcgY29kZSBn ZW4gc2luY2UgdGhlaXIgYml0c2l6ZSBhcmUgZGlmZmVyZW50Lg0KPiA+PiBD b25zaWRlciB0aGUgY2FzZSBhcyB0aGlzOg0KPiA+PiAjaW5jbHVkZSAicmlz Y3ZfdmVjdG9yLmgiDQo+ID4+IHZvaWQgZm9vNV8zIChpbnQzMl90ICogcmVz dHJpY3QgaW4sIGludDMyX3QgKiByZXN0cmljdCBvdXQsIHNpemVfdCBuLCBp bnQgY29uZCkNCj4gPj4gew0KPiA+PiAgICB2aW50OG0xX3QgdiA9ICoodmlu dDhtMV90KilpbjsNCj4gPj4gICAgKih2aW50OG0xX3QqKW91dCA9IHY7ICB2 Ym9vbDE2X3QgdjQgPSAqKHZib29sMTZfdCAqKWluOw0KPiA+PiAgICAqKHZi b29sMTZfdCAqKShvdXQgKyAzMDApID0gdjQ7DQo+ID4+ICAgIHZib29sOF90 IHYzID0gKih2Ym9vbDhfdCopaW47DQo+ID4+ICAgICoodmJvb2w4X3QqKShv dXQgKyAyMDApID0gdjM7DQo+ID4+IH0NCj4gPj4gVGhlIHNlY29uZCB2Ym9v bDhfdCBsb2FkICh2bG0udikgaXMgbWlzc2luZy4gU2luY2UgR0NDIGdpdmVz ICJ2MyA9IFZJRVdfQ09OVkVSVCAodmJvb2w4X3QpIHY0IiBpbiBnaW1wbGUu DQo+ID4+IFdlIGZhaWxlZCB0byBmaXggaXQgaW4gUklTQy1WIGJhY2tlbmQu IENhbiB5b3UgaGVscCB1cyB3aXRoIHRoaXM/IFRoYW5rcy4NCj4gPg0KPiA+ IC4uLiB3aHkgZm9yIHRoZSBsb2FkcyB0aGUgInBhZGRpbmciIGlzIG5vdCBs b2FkZWQ/ICBUaGUgYWJvdmUgdGVzdGNhc2UNCj4gPiBpcyBwcm9iYWJseSBt b3JlIGNvbXBsaWNhdGVkIHRoYW4gbmVjZXNzYXJ5IGFzIHdlbGw/DQo+ID4N Cj4gPiBUaGFua3MsDQo+ID4gUmljaGFyZC4NCj4gPg0KPiA+Pg0KPiA+PiBq dXpoZS56aG9uZ0ByaXZhaS5haQ0KPiA+Pg0KPiA+PiBGcm9tOiBpbmNhcm5h dGlvbi5wLmxlZQ0KPiA+PiBEYXRlOiAyMDIzLTAyLTExIDE2OjQ2DQo+ID4+ IFRvOiBnY2MtcGF0Y2hlcw0KPiA+PiBDQzoganV6aGUuemhvbmc7IGtpdG8u Y2hlbmc7IHJndWVudGhlcjsgUGFuIExpDQo+ID4+IFN1YmplY3Q6IFtQQVRD SF0gUklTQy1WOiBCdWdmaXggZm9yIG1vZGUgdGllYWJsZSBvZiB0aGUgcnZ2 IGJvb2wgdHlwZXMNCj4gPj4gRnJvbTogUGFuIExpIDxpbmNhcm5hdGlvbi5w LmxlZUBvdXRsb29rLmNvbT4NCj4gPj4NCj4gPj4gRml4IHRoZSBidWcgZm9y IG1vZGUgdGllYWJsZSBvZiB0aGUgcnZ2IGJvb2wgdHlwZXMuIFRoZSB2Ym9v bCpfdA0KPiA+PiBjYW5ub3QgYmUgdGllZCBhcyB0aGUgYWN0dWFsbHkgbG9h ZC9zdG9yZSBzaXplIGlzIGRldGVybWluYXRlZCBieQ0KPiA+PiB0aGUgdmwu IFRoZSBtb2RlIHNpemUgb2YgcnZ2IGJvb2wgdHlwZXMgYXJlIGFsc28gYWRq dXN0ZWQgZm9yIHRoZQ0KPiA+PiB1bmRlcmx5aW5nIG9wdGltaXphdGlvbiBw YXNzLiBUaGUgcnZ2IGJvb2wgdHlwZSBpcyB2Ym9vbCpfdCwgYWthDQo+ID4+ IHZib29sMV90LCB2Ym9vbDJfdCwgdmJvb2w0X3QsIHZib29sOF90LCB2Ym9v bDE2X3QsIHZib29sMzJfdCwgYW5kDQo+ID4+IHZib29sNjRfdC4NCj4gPj4N Cj4gPj4gUFIgMTA4MTg1DQo+ID4+IFBSIDEwODY1NA0KPiA+Pg0KPiA+PiBn Y2MvQ2hhbmdlTG9nOg0KPiA+Pg0KPiA+PiAqIGNvbmZpZy9yaXNjdi9yaXNj di1tb2Rlcy5kZWYgKEFESlVTVF9CWVRFU0laRSk6DQo+ID4+ICogY29uZmln L3Jpc2N2L3Jpc2N2LmNjIChyaXNjdl92X2FkanVzdF9ieXRlc2l6ZSk6DQo+ ID4+IChyaXNjdl9tb2Rlc190aWVhYmxlX3ApOg0KPiA+PiAqIGNvbmZpZy9y aXNjdi9yaXNjdi5oIChyaXNjdl92X2FkanVzdF9ieXRlc2l6ZSk6DQo+ID4+ ICogbWFjaG1vZGUuaCAoVkVDVE9SX0JPT0xfTU9ERV9QKToNCj4gPj4gKiB0 cmVlLXNzYS1zY2N2bi5jYyAodmlzaXRfcmVmZXJlbmNlX29wX2xvYWQpOg0K PiA+Pg0KPiA+PiBnY2MvdGVzdHN1aXRlL0NoYW5nZUxvZzoNCj4gPj4NCj4g Pj4gKiBnY2MudGFyZ2V0L3Jpc2N2L3ByMTA4MTg1LTEuYzogTmV3IHRlc3Qu DQo+ID4+ICogZ2NjLnRhcmdldC9yaXNjdi9wcjEwODE4NS0yLmM6IE5ldyB0 ZXN0Lg0KPiA+PiAqIGdjYy50YXJnZXQvcmlzY3YvcHIxMDgxODUtMy5jOiBO ZXcgdGVzdC4NCj4gPj4gKiBnY2MudGFyZ2V0L3Jpc2N2L3ByMTA4MTg1LTQu YzogTmV3IHRlc3QuDQo+ID4+ICogZ2NjLnRhcmdldC9yaXNjdi9wcjEwODE4 NS01LmM6IE5ldyB0ZXN0Lg0KPiA+PiAqIGdjYy50YXJnZXQvcmlzY3YvcHIx MDgxODUtNi5jOiBOZXcgdGVzdC4NCj4gPj4gKiBnY2MudGFyZ2V0L3Jpc2N2 L3ByMTA4MTg1LTcuYzogTmV3IHRlc3QuDQo+ID4+ICogZ2NjLnRhcmdldC9y aXNjdi9wcjEwODE4NS04LmM6IE5ldyB0ZXN0Lg0KPiA+Pg0KPiA+PiBTaWdu ZWQtb2ZmLWJ5OiBQYW4gTGkgPGluY2FybmF0aW9uLnAubGVlQG91dGxvb2su Y29tPg0KPiA+PiAtLS0NCj4gPj4gZ2NjL2NvbmZpZy9yaXNjdi9yaXNjdi1t b2Rlcy5kZWYgICAgICAgICAgICB8IDE0ICsrLS0NCj4gPj4gZ2NjL2NvbmZp Zy9yaXNjdi9yaXNjdi5jYyAgICAgICAgICAgICAgICAgICB8IDM0ICsrKysr KysrLQ0KPiA+PiBnY2MvY29uZmlnL3Jpc2N2L3Jpc2N2LmggICAgICAgICAg ICAgICAgICAgIHwgIDIgKw0KPiA+PiBnY2MvbWFjaG1vZGUuaCAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHwgIDMgKw0KPiA+PiBnY2MvdGVzdHN1 aXRlL2djYy50YXJnZXQvcmlzY3YvcHIxMDgxODUtMS5jIHwgNjggKysrKysr KysrKysrKysrKysrDQo+ID4+IGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9y aXNjdi9wcjEwODE4NS0yLmMgfCA2OCArKysrKysrKysrKysrKysrKysNCj4g Pj4gZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3ByMTA4MTg1LTMu YyB8IDY4ICsrKysrKysrKysrKysrKysrKw0KPiA+PiBnY2MvdGVzdHN1aXRl L2djYy50YXJnZXQvcmlzY3YvcHIxMDgxODUtNC5jIHwgNjggKysrKysrKysr KysrKysrKysrDQo+ID4+IGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNj di9wcjEwODE4NS01LmMgfCA2OCArKysrKysrKysrKysrKysrKysNCj4gPj4g Z2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3ByMTA4MTg1LTYuYyB8 IDY4ICsrKysrKysrKysrKysrKysrKw0KPiA+PiBnY2MvdGVzdHN1aXRlL2dj Yy50YXJnZXQvcmlzY3YvcHIxMDgxODUtNy5jIHwgNjggKysrKysrKysrKysr KysrKysrDQo+ID4+IGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9w cjEwODE4NS04LmMgfCA3NyArKysrKysrKysrKysrKysrKysrKysNCj4gPj4g Z2NjL3RyZWUtc3NhLXNjY3ZuLmNjICAgICAgICAgICAgICAgICAgICAgICB8 IDEzICsrKy0NCj4gPj4gMTMgZmlsZXMgY2hhbmdlZCwgNjA4IGluc2VydGlv bnMoKyksIDExIGRlbGV0aW9ucygtKQ0KPiA+PiBjcmVhdGUgbW9kZSAxMDA2 NDQgZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3ByMTA4MTg1LTEu Yw0KPiA+PiBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nY2Mu dGFyZ2V0L3Jpc2N2L3ByMTA4MTg1LTIuYw0KPiA+PiBjcmVhdGUgbW9kZSAx MDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3ByMTA4MTg1 LTMuYw0KPiA+PiBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9n Y2MudGFyZ2V0L3Jpc2N2L3ByMTA4MTg1LTQuYw0KPiA+PiBjcmVhdGUgbW9k ZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3ByMTA4 MTg1LTUuYw0KPiA+PiBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0 ZS9nY2MudGFyZ2V0L3Jpc2N2L3ByMTA4MTg1LTYuYw0KPiA+PiBjcmVhdGUg bW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3By MTA4MTg1LTcuYw0KPiA+PiBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3Rz dWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3ByMTA4MTg1LTguYw0KPiA+Pg0KPiA+ PiBkaWZmIC0tZ2l0IGEvZ2NjL2NvbmZpZy9yaXNjdi9yaXNjdi1tb2Rlcy5k ZWYgYi9nY2MvY29uZmlnL3Jpc2N2L3Jpc2N2LW1vZGVzLmRlZg0KPiA+PiBp bmRleCBkNTMwNWVmYThhNi4uY2MyMWQzYzgzYTIgMTAwNjQ0DQo+ID4+IC0t LSBhL2djYy9jb25maWcvcmlzY3YvcmlzY3YtbW9kZXMuZGVmDQo+ID4+ICsr KyBiL2djYy9jb25maWcvcmlzY3YvcmlzY3YtbW9kZXMuZGVmDQo+ID4+IEBA IC02NCwxMyArNjQsMTMgQEAgQURKVVNUX0FMSUdOTUVOVCAoVk54MTZCSSwg MSk7DQo+ID4+IEFESlVTVF9BTElHTk1FTlQgKFZOeDMyQkksIDEpOw0KPiA+ PiBBREpVU1RfQUxJR05NRU5UIChWTng2NEJJLCAxKTsNCj4gPj4gLUFESlVT VF9CWVRFU0laRSAoVk54MUJJLCByaXNjdl92ZWN0b3JfY2h1bmtzICogcmlz Y3ZfYnl0ZXNfcGVyX3ZlY3Rvcl9jaHVuayk7DQo+ID4+IC1BREpVU1RfQllU RVNJWkUgKFZOeDJCSSwgcmlzY3ZfdmVjdG9yX2NodW5rcyAqIHJpc2N2X2J5 dGVzX3Blcl92ZWN0b3JfY2h1bmspOw0KPiA+PiAtQURKVVNUX0JZVEVTSVpF IChWTng0QkksIHJpc2N2X3ZlY3Rvcl9jaHVua3MgKiByaXNjdl9ieXRlc19w ZXJfdmVjdG9yX2NodW5rKTsNCj4gPj4gLUFESlVTVF9CWVRFU0laRSAoVk54 OEJJLCByaXNjdl92ZWN0b3JfY2h1bmtzICogcmlzY3ZfYnl0ZXNfcGVyX3Zl Y3Rvcl9jaHVuayk7DQo+ID4+IC1BREpVU1RfQllURVNJWkUgKFZOeDE2Qkks IHJpc2N2X3ZlY3Rvcl9jaHVua3MgKiByaXNjdl9ieXRlc19wZXJfdmVjdG9y X2NodW5rKTsNCj4gPj4gLUFESlVTVF9CWVRFU0laRSAoVk54MzJCSSwgcmlz Y3ZfdmVjdG9yX2NodW5rcyAqIHJpc2N2X2J5dGVzX3Blcl92ZWN0b3JfY2h1 bmspOw0KPiA+PiAtQURKVVNUX0JZVEVTSVpFIChWTng2NEJJLCByaXNjdl92 X2FkanVzdF9udW5pdHMgKFZOeDY0Qkltb2RlLCA4KSk7DQo+ID4+ICtBREpV U1RfQllURVNJWkUgKFZOeDFCSSwgcmlzY3Zfdl9hZGp1c3RfYnl0ZXNpemUg KFZOeDFCSW1vZGUsIDEpKTsNCj4gPj4gK0FESlVTVF9CWVRFU0laRSAoVk54 MkJJLCByaXNjdl92X2FkanVzdF9ieXRlc2l6ZSAoVk54MkJJbW9kZSwgMSkp Ow0KPiA+PiArQURKVVNUX0JZVEVTSVpFIChWTng0QkksIHJpc2N2X3ZfYWRq dXN0X2J5dGVzaXplIChWTng0Qkltb2RlLCAxKSk7DQo+ID4+ICtBREpVU1Rf QllURVNJWkUgKFZOeDhCSSwgcmlzY3Zfdl9hZGp1c3RfYnl0ZXNpemUgKFZO eDhCSW1vZGUsIDEpKTsNCj4gPj4gK0FESlVTVF9CWVRFU0laRSAoVk54MTZC SSwgcmlzY3Zfdl9hZGp1c3RfYnl0ZXNpemUgKFZOeDE2Qkltb2RlLCAyKSk7 DQo+ID4+ICtBREpVU1RfQllURVNJWkUgKFZOeDMyQkksIHJpc2N2X3ZfYWRq dXN0X2J5dGVzaXplIChWTngzMkJJbW9kZSwgNCkpOw0KPiA+PiArQURKVVNU X0JZVEVTSVpFIChWTng2NEJJLCByaXNjdl92X2FkanVzdF9ieXRlc2l6ZSAo Vk54NjRCSW1vZGUsIDgpKTsNCj4gPj4gLyoNCj4gPj4gICAgICB8IE1vZGUg ICAgICAgIHwgTUlOX1ZMRU49MzIgfCBNSU5fVkxFTj0zMiB8IE1JTl9WTEVO PTY0IHwgTUlOX1ZMRU49NjQgfA0KPiA+PiBkaWZmIC0tZ2l0IGEvZ2NjL2Nv bmZpZy9yaXNjdi9yaXNjdi5jYyBiL2djYy9jb25maWcvcmlzY3YvcmlzY3Yu Y2MNCj4gPj4gaW5kZXggM2I3ODA0Yjc1MDEuLjEzOGMwNTJlMTNjIDEwMDY0 NA0KPiA+PiAtLS0gYS9nY2MvY29uZmlnL3Jpc2N2L3Jpc2N2LmNjDQo+ID4+ ICsrKyBiL2djYy9jb25maWcvcmlzY3YvcmlzY3YuY2MNCj4gPj4gQEAgLTEw MDMsNiArMTAwMywyNyBAQCByaXNjdl92X2FkanVzdF9udW5pdHMgKG1hY2hp bmVfbW9kZSBtb2RlLCBpbnQgc2NhbGUpDQo+ID4+ICAgICByZXR1cm4gc2Nh bGU7DQo+ID4+IH0NCj4gPj4gKy8qIENhbGwgZnJvbSBBREpVU1RfQllURVNJ WkUgaW4gcmlzY3YtbW9kZXMuZGVmLiAgUmV0dXJuIHRoZSBjb3JyZWN0DQo+ ID4+ICsgICBCWVRFUyBzaXplIGZvciBjb3JyZXNwb25kaW5nIG1hY2hpbmVf bW9kZS4gICovDQo+ID4+ICsNCj4gPj4gK3BvbHlfaW50NjQNCj4gPj4gK3Jp c2N2X3ZfYWRqdXN0X2J5dGVzaXplIChtYWNoaW5lX21vZGUgbW9kZSwgaW50 IHNjYWxlKQ0KPiA+PiArew0KPiA+PiArICBnY2NfYXNzZXJ0IChHRVRfTU9E RV9DTEFTUyAobW9kZSkgPT0gTU9ERV9WRUNUT1JfQk9PTCk7DQo+ID4+ICsN Cj4gPj4gKyAgaWYgKHJpc2N2X3ZfZXh0X3ZlY3Rvcl9tb2RlX3AgKG1vZGUp KQ0KPiA+PiArICAgIHsNCj4gPj4gKyAgICAgIHBvbHlfdWludDE2IG1vZGVf c2l6ZSA9IEdFVF9NT0RFX1NJWkUgKG1vZGUpOw0KPiA+PiArDQo+ID4+ICsg ICAgICBpZiAoa25vd25fbHQgKG1vZGVfc2l6ZSwgQllURVNfUEVSX1JJU0NW X1ZFQ1RPUikpDQo+ID4+ICsgcmV0dXJuIG1vZGVfc2l6ZTsNCj4gPj4gKyAg ICAgIGVsc2UNCj4gPj4gKyByZXR1cm4gQllURVNfUEVSX1JJU0NWX1ZFQ1RP UjsNCj4gPj4gKyAgICB9DQo+ID4+ICsNCj4gPj4gKyAgcmV0dXJuIHNjYWxl Ow0KPiA+PiArfQ0KPiA+PiArDQo+ID4+IC8qIFJldHVybiB0cnVlIGlmIFgg aXMgYSB2YWxpZCBhZGRyZXNzIGZvciBtYWNoaW5lIG1vZGUgTU9ERS4gIElm IGl0IGlzLA0KPiA+PiAgICAgIGZpbGwgaW4gSU5GTyBhcHByb3ByaWF0ZWx5 LiAgU1RSSUNUX1AgaXMgdHJ1ZSBpZiBSRUdfT0tfU1RSSUNUIGlzIGluDQo+ ID4+ICAgICAgZWZmZWN0LiAgKi8NCj4gPj4gQEAgLTU4MDcsMTEgKzU4Mjgs MjIgQEAgcmlzY3ZfaGFyZF9yZWdub19tb2RlX29rICh1bnNpZ25lZCBpbnQg cmVnbm8sIG1hY2hpbmVfbW9kZSBtb2RlKQ0KPiA+PiAvKiBJbXBsZW1lbnQg VEFSR0VUX01PREVTX1RJRUFCTEVfUC4NCj4gPj4gICAgICBEb24ndCBhbGxv dyBmbG9hdGluZy1wb2ludCBtb2RlcyB0byBiZSB0aWVkLCBzaW5jZSB0eXBl IHB1bm5pbmcgb2YNCj4gPj4gLSAgIHNpbmdsZS1wcmVjaXNpb24gYW5kIGRv dWJsZS1wcmVjaXNpb24gaXMgaW1wbGVtZW50YXRpb24gZGVmaW5lZC4gICov DQo+ID4+ICsgICBzaW5nbGUtcHJlY2lzaW9uIGFuZCBkb3VibGUtcHJlY2lz aW9uIGlzIGltcGxlbWVudGF0aW9uIGRlZmluZWQuDQo+ID4+ICsNCj4gPj4g KyAgIERvbid0IGFsbG93IGRpZmZlcmVudCB2Ym9vbCpfdCBtb2RlcyB0byBi ZSB0aWVkLCBzaW5jZSB0aGUgdHlwZQ0KPiA+PiArICAgc2l6ZSBpcyBkZXRl cm1pbmF0ZWQgYnkgdmwuICAqLw0KPiA+PiBzdGF0aWMgYm9vbA0KPiA+PiBy aXNjdl9tb2Rlc190aWVhYmxlX3AgKG1hY2hpbmVfbW9kZSBtb2RlMSwgbWFj aGluZV9tb2RlIG1vZGUyKQ0KPiA+PiB7DQo+ID4+ICsgIGlmIChyaXNjdl92 X2V4dF92ZWN0b3JfbW9kZV9wIChtb2RlMSkgJiYgcmlzY3Zfdl9leHRfdmVj dG9yX21vZGVfcCAobW9kZTIpKQ0KPiA+PiArICAgIHsNCj4gPj4gKyAgICAg IGlmIChWRUNUT1JfQk9PTF9NT0RFX1AgKG1vZGUxKSB8fCBWRUNUT1JfQk9P TF9NT0RFX1AgKG1vZGUyKSkNCj4gPj4gKyByZXR1cm4gZmFsc2U7DQo+ID4+ ICsNCj4gPj4gKyByZXR1cm4ga25vd25fZXEgKEdFVF9NT0RFX1NJWkUgKG1v ZGUxKSwgR0VUX01PREVfU0laRSAobW9kZTIpKTsNCj4gPj4gKyAgICB9DQo+ ID4+ICsNCj4gPj4gICAgIHJldHVybiAobW9kZTEgPT0gbW9kZTINCj4gPj4g ICAgfHwgIShHRVRfTU9ERV9DTEFTUyAobW9kZTEpID09IE1PREVfRkxPQVQN Cj4gPj4gICAgICAgICAmJiBHRVRfTU9ERV9DTEFTUyAobW9kZTIpID09IE1P REVfRkxPQVQpKTsNCj4gPj4gZGlmZiAtLWdpdCBhL2djYy9jb25maWcvcmlz Y3YvcmlzY3YuaCBiL2djYy9jb25maWcvcmlzY3YvcmlzY3YuaA0KPiA+PiBp bmRleCBmYWZmZDVhNzdmZS4uZjg1NzIyMzMzOGMgMTAwNjQ0DQo+ID4+IC0t LSBhL2djYy9jb25maWcvcmlzY3YvcmlzY3YuaA0KPiA+PiArKysgYi9nY2Mv Y29uZmlnL3Jpc2N2L3Jpc2N2LmgNCj4gPj4gQEAgLTEwMjgsNiArMTAyOCw4 IEBAIGV4dGVybiB1bnNpZ25lZCByaXNjdl9zdGFja19ib3VuZGFyeTsNCj4g Pj4gZXh0ZXJuIHVuc2lnbmVkIHJpc2N2X2J5dGVzX3Blcl92ZWN0b3JfY2h1 bms7DQo+ID4+IGV4dGVybiBwb2x5X3VpbnQxNiByaXNjdl92ZWN0b3JfY2h1 bmtzOw0KPiA+PiBleHRlcm4gcG9seV9pbnQ2NCByaXNjdl92X2FkanVzdF9u dW5pdHMgKGVudW0gbWFjaGluZV9tb2RlLCBpbnQpOw0KPiA+PiArZXh0ZXJu IHBvbHlfaW50NjQgcmlzY3Zfdl9hZGp1c3RfYnl0ZXNpemUgKG1hY2hpbmVf bW9kZSBtb2RlLCBpbnQgc2NhbGUpOw0KPiA+PiArDQo+ID4+IC8qIFRoZSBu dW1iZXIgb2YgYml0cyBhbmQgYnl0ZXMgaW4gYSBSVlYgdmVjdG9yLiAgKi8N Cj4gPj4gI2RlZmluZSBCSVRTX1BFUl9SSVNDVl9WRUNUT1IgKHBvbHlfdWlu dDE2IChyaXNjdl92ZWN0b3JfY2h1bmtzICogcmlzY3ZfYnl0ZXNfcGVyX3Zl Y3Rvcl9jaHVuayAqIDgpKQ0KPiA+PiAjZGVmaW5lIEJZVEVTX1BFUl9SSVND Vl9WRUNUT1IgKHBvbHlfdWludDE2IChyaXNjdl92ZWN0b3JfY2h1bmtzICog cmlzY3ZfYnl0ZXNfcGVyX3ZlY3Rvcl9jaHVuaykpDQo+ID4+IGRpZmYgLS1n aXQgYS9nY2MvbWFjaG1vZGUuaCBiL2djYy9tYWNobW9kZS5oDQo+ID4+IGlu ZGV4IGYxODY1YzFlZjQyLi42NzIwNDcyZjJjOSAxMDA2NDQNCj4gPj4gLS0t IGEvZ2NjL21hY2htb2RlLmgNCj4gPj4gKysrIGIvZ2NjL21hY2htb2RlLmgN Cj4gPj4gQEAgLTI0Miw2ICsyNDIsOSBAQCBleHRlcm4gY29uc3QgdW5zaWdu ZWQgY2hhciBtb2RlX2NsYXNzW05VTV9NQUNISU5FX01PREVTXTsNCj4gPj4g ICAgICB8fCBDTEFTUyA9PSBNT0RFX0FDQ1VNICAgICAgICAgICAgICAgICAg ICAgIFwNCj4gPj4gICAgICB8fCBDTEFTUyA9PSBNT0RFX1VBQ0NVTSkNCj4g Pj4gKy8qIE5vbnplcm8gaWYgTU9ERSBpcyBhbiB2ZWN0b3IgYm9vbCBtb2Rl LiAgKi8NCj4gPj4gKyNkZWZpbmUgVkVDVE9SX0JPT0xfTU9ERV9QKE1PREUp IChHRVRfTU9ERV9DTEFTUyhNT0RFKSA9PSBNT0RFX1ZFQ1RPUl9CT09MKQ0K PiA+PiArDQo+ID4+IC8qIEFuIG9wdGlvbmFsIFQgKGkuZS4gYSBUIG9yIG5v dGhpbmcpLCB3aGVyZSBUIGlzIHNvbWUgZm9ybSBvZiBtb2RlIGNsYXNzLiAg Ki8NCj4gPj4gdGVtcGxhdGU8dHlwZW5hbWUgVD4NCj4gPj4gY2xhc3Mgb3B0 X21vZGUNCj4gPj4gZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRh cmdldC9yaXNjdi9wcjEwODE4NS0xLmMgYi9nY2MvdGVzdHN1aXRlL2djYy50 YXJnZXQvcmlzY3YvcHIxMDgxODUtMS5jDQo+ID4+IG5ldyBmaWxlIG1vZGUg MTAwNjQ0DQo+ID4+IGluZGV4IDAwMDAwMDAwMDAwLi5jM2QwYjEwMjcxYQ0K PiA+PiAtLS0gL2Rldi9udWxsDQo+ID4+ICsrKyBiL2djYy90ZXN0c3VpdGUv Z2NjLnRhcmdldC9yaXNjdi9wcjEwODE4NS0xLmMNCj4gPj4gQEAgLTAsMCAr MSw2OCBAQA0KPiA+PiArLyogeyBkZy1kbyBjb21waWxlIH0gKi8NCj4gPj4g Ky8qIHsgZGctb3B0aW9ucyAiLW1hcmNoPXJ2NjRnY3YgLW1hYmk9bHA2NCAt TzMiIH0gKi8NCj4gPj4gKw0KPiA+PiArI2luY2x1ZGUgInJpc2N2X3ZlY3Rv ci5oIg0KPiA+PiArDQo+ID4+ICt2b2lkDQo+ID4+ICt0ZXN0X3Zib29sMV90 aGVuX3Zib29sMihpbnQ4X3QgKiByZXN0cmljdCBpbiwgaW50OF90ICogcmVz dHJpY3Qgb3V0KSB7DQo+ID4+ICsgICAgdmJvb2wxX3QgdjEgPSAqKHZib29s MV90KilpbjsNCj4gPj4gKyAgICB2Ym9vbDJfdCB2MiA9ICoodmJvb2wyX3Qq KWluOw0KPiA+PiArDQo+ID4+ICsgICAgKih2Ym9vbDFfdCopKG91dCArIDEw MCkgPSB2MTsNCj4gPj4gKyAgICAqKHZib29sMl90Kikob3V0ICsgMjAwKSA9 IHYyOw0KPiA+PiArfQ0KPiA+PiArDQo+ID4+ICt2b2lkDQo+ID4+ICt0ZXN0 X3Zib29sMV90aGVuX3Zib29sNChpbnQ4X3QgKiByZXN0cmljdCBpbiwgaW50 OF90ICogcmVzdHJpY3Qgb3V0KSB7DQo+ID4+ICsgICAgdmJvb2wxX3QgdjEg PSAqKHZib29sMV90KilpbjsNCj4gPj4gKyAgICB2Ym9vbDRfdCB2MiA9ICoo dmJvb2w0X3QqKWluOw0KPiA+PiArDQo+ID4+ICsgICAgKih2Ym9vbDFfdCop KG91dCArIDEwMCkgPSB2MTsNCj4gPj4gKyAgICAqKHZib29sNF90Kikob3V0 ICsgMjAwKSA9IHYyOw0KPiA+PiArfQ0KPiA+PiArDQo+ID4+ICt2b2lkDQo+ ID4+ICt0ZXN0X3Zib29sMV90aGVuX3Zib29sOChpbnQ4X3QgKiByZXN0cmlj dCBpbiwgaW50OF90ICogcmVzdHJpY3Qgb3V0KSB7DQo+ID4+ICsgICAgdmJv b2wxX3QgdjEgPSAqKHZib29sMV90KilpbjsNCj4gPj4gKyAgICB2Ym9vbDhf dCB2MiA9ICoodmJvb2w4X3QqKWluOw0KPiA+PiArDQo+ID4+ICsgICAgKih2 Ym9vbDFfdCopKG91dCArIDEwMCkgPSB2MTsNCj4gPj4gKyAgICAqKHZib29s OF90Kikob3V0ICsgMjAwKSA9IHYyOw0KPiA+PiArfQ0KPiA+PiArDQo+ID4+ ICt2b2lkDQo+ID4+ICt0ZXN0X3Zib29sMV90aGVuX3Zib29sMTYoaW50OF90 ICogcmVzdHJpY3QgaW4sIGludDhfdCAqIHJlc3RyaWN0IG91dCkgew0KPiA+ PiArICAgIHZib29sMV90IHYxID0gKih2Ym9vbDFfdCopaW47DQo+ID4+ICsg ICAgdmJvb2wxNl90IHYyID0gKih2Ym9vbDE2X3QqKWluOw0KPiA+PiArDQo+ ID4+ICsgICAgKih2Ym9vbDFfdCopKG91dCArIDEwMCkgPSB2MTsNCj4gPj4g KyAgICAqKHZib29sMTZfdCopKG91dCArIDIwMCkgPSB2MjsNCj4gPj4gK30N Cj4gPj4gKw0KPiA+PiArdm9pZA0KPiA+PiArdGVzdF92Ym9vbDFfdGhlbl92 Ym9vbDMyKGludDhfdCAqIHJlc3RyaWN0IGluLCBpbnQ4X3QgKiByZXN0cmlj dCBvdXQpIHsNCj4gPj4gKyAgICB2Ym9vbDFfdCB2MSA9ICoodmJvb2wxX3Qq KWluOw0KPiA+PiArICAgIHZib29sMzJfdCB2MiA9ICoodmJvb2wzMl90Kilp bjsNCj4gPj4gKw0KPiA+PiArICAgICoodmJvb2wxX3QqKShvdXQgKyAxMDAp ID0gdjE7DQo+ID4+ICsgICAgKih2Ym9vbDMyX3QqKShvdXQgKyAyMDApID0g djI7DQo+ID4+ICt9DQo+ID4+ICsNCj4gPj4gK3ZvaWQNCj4gPj4gK3Rlc3Rf dmJvb2wxX3RoZW5fdmJvb2w2NChpbnQ4X3QgKiByZXN0cmljdCBpbiwgaW50 OF90ICogcmVzdHJpY3Qgb3V0KSB7DQo+ID4+ICsgICAgdmJvb2wxX3QgdjEg PSAqKHZib29sMV90KilpbjsNCj4gPj4gKyAgICB2Ym9vbDY0X3QgdjIgPSAq KHZib29sNjRfdCopaW47DQo+ID4+ICsNCj4gPj4gKyAgICAqKHZib29sMV90 Kikob3V0ICsgMTAwKSA9IHYxOw0KPiA+PiArICAgICoodmJvb2w2NF90Kiko b3V0ICsgMjAwKSA9IHYyOw0KPiA+PiArfQ0KPiA+PiArDQo+ID4+ICsvKiB7 IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge3ZzZXR2bGlccytb YS14XVswLTldKyxccyp6ZXJvLFxzKmU4LFxzKm04LFxzKnRhLFxzKm1hfSA2 IH0gfSAqLw0KPiA+PiArLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVy LXRpbWVzIHt2c2V0dmxpXHMrW2EteF1bMC05XSssXHMqemVybyxccyplOCxc cyptNCxccyp0YSxccyptYX0gMSB9IH0gKi8NCj4gPj4gKy8qIHsgZGctZmlu YWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dnNldHZsaVxzK1thLXhdWzAt OV0rLFxzKnplcm8sXHMqZTgsXHMqbTIsXHMqdGEsXHMqbWF9IDEgfSB9ICov DQo+ID4+ICsvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMg e3ZzZXR2bGlccytbYS14XVswLTldKyxccyp6ZXJvLFxzKmU4LFxzKm0xLFxz KnRhLFxzKm1hfSAxIH0gfSAqLw0KPiA+PiArLyogeyBkZy1maW5hbCB7IHNj YW4tYXNzZW1ibGVyLXRpbWVzIHt2c2V0dmxpXHMrW2EteF1bMC05XSssXHMq emVybyxccyplOCxccyptZjIsXHMqdGEsXHMqbWF9IDEgfSB9ICovDQo+ID4+ ICsvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge3ZzZXR2 bGlccytbYS14XVswLTldKyxccyp6ZXJvLFxzKmU4LFxzKm1mNCxccyp0YSxc cyptYX0gMSB9IH0gKi8NCj4gPj4gKy8qIHsgZGctZmluYWwgeyBzY2FuLWFz c2VtYmxlci10aW1lcyB7dnNldHZsaVxzK1thLXhdWzAtOV0rLFxzKnplcm8s XHMqZTgsXHMqbWY4LFxzKnRhLFxzKm1hfSAxIH0gfSAqLw0KPiA+PiArLyog eyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVzIHt2bG1cLnZccyt2 WzAtOV0rLFxzKjBcKFthLXhdWzAtOV0rXCl9IDEyIH0gfSAqLw0KPiA+PiAr LyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVzIHt2c21cLnZc cyt2WzAtOV0rLFxzKjBcKFthLXhdWzAtOV0rXCl9IDEyIH0gfSAqLw0KPiA+ PiBkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2 L3ByMTA4MTg1LTIuYyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNj di9wcjEwODE4NS0yLmMNCj4gPj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4g Pj4gaW5kZXggMDAwMDAwMDAwMDAuLmJkMTNiYTkxNmRhDQo+ID4+IC0tLSAv ZGV2L251bGwNCj4gPj4gKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0 L3Jpc2N2L3ByMTA4MTg1LTIuYw0KPiA+PiBAQCAtMCwwICsxLDY4IEBADQo+ ID4+ICsvKiB7IGRnLWRvIGNvbXBpbGUgfSAqLw0KPiA+PiArLyogeyBkZy1v cHRpb25zICItbWFyY2g9cnY2NGdjdiAtbWFiaT1scDY0IC1PMyIgfSAqLw0K PiA+PiArDQo+ID4+ICsjaW5jbHVkZSAicmlzY3ZfdmVjdG9yLmgiDQo+ID4+ ICsNCj4gPj4gK3ZvaWQNCj4gPj4gK3Rlc3RfdmJvb2wyX3RoZW5fdmJvb2wx KGludDhfdCAqIHJlc3RyaWN0IGluLCBpbnQ4X3QgKiByZXN0cmljdCBvdXQp IHsNCj4gPj4gKyAgICB2Ym9vbDJfdCB2MSA9ICoodmJvb2wyX3QqKWluOw0K PiA+PiArICAgIHZib29sMV90IHYyID0gKih2Ym9vbDFfdCopaW47DQo+ID4+ ICsNCj4gPj4gKyAgICAqKHZib29sMl90Kikob3V0ICsgMTAwKSA9IHYxOw0K PiA+PiArICAgICoodmJvb2wxX3QqKShvdXQgKyAyMDApID0gdjI7DQo+ID4+ ICt9DQo+ID4+ICsNCj4gPj4gK3ZvaWQNCj4gPj4gK3Rlc3RfdmJvb2wyX3Ro ZW5fdmJvb2w0KGludDhfdCAqIHJlc3RyaWN0IGluLCBpbnQ4X3QgKiByZXN0 cmljdCBvdXQpIHsNCj4gPj4gKyAgICB2Ym9vbDJfdCB2MSA9ICoodmJvb2wy X3QqKWluOw0KPiA+PiArICAgIHZib29sNF90IHYyID0gKih2Ym9vbDRfdCop aW47DQo+ID4+ICsNCj4gPj4gKyAgICAqKHZib29sMl90Kikob3V0ICsgMTAw KSA9IHYxOw0KPiA+PiArICAgICoodmJvb2w0X3QqKShvdXQgKyAyMDApID0g djI7DQo+ID4+ICt9DQo+ID4+ICsNCj4gPj4gK3ZvaWQNCj4gPj4gK3Rlc3Rf dmJvb2wyX3RoZW5fdmJvb2w4KGludDhfdCAqIHJlc3RyaWN0IGluLCBpbnQ4 X3QgKiByZXN0cmljdCBvdXQpIHsNCj4gPj4gKyAgICB2Ym9vbDJfdCB2MSA9 ICoodmJvb2wyX3QqKWluOw0KPiA+PiArICAgIHZib29sOF90IHYyID0gKih2 Ym9vbDhfdCopaW47DQo+ID4+ICsNCj4gPj4gKyAgICAqKHZib29sMl90Kiko b3V0ICsgMTAwKSA9IHYxOw0KPiA+PiArICAgICoodmJvb2w4X3QqKShvdXQg KyAyMDApID0gdjI7DQo+ID4+ICt9DQo+ID4+ICsNCj4gPj4gK3ZvaWQNCj4g Pj4gK3Rlc3RfdmJvb2wyX3RoZW5fdmJvb2wxNihpbnQ4X3QgKiByZXN0cmlj dCBpbiwgaW50OF90ICogcmVzdHJpY3Qgb3V0KSB7DQo+ID4+ICsgICAgdmJv b2wyX3QgdjEgPSAqKHZib29sMl90KilpbjsNCj4gPj4gKyAgICB2Ym9vbDE2 X3QgdjIgPSAqKHZib29sMTZfdCopaW47DQo+ID4+ICsNCj4gPj4gKyAgICAq KHZib29sMl90Kikob3V0ICsgMTAwKSA9IHYxOw0KPiA+PiArICAgICoodmJv b2wxNl90Kikob3V0ICsgMjAwKSA9IHYyOw0KPiA+PiArfQ0KPiA+PiArDQo+ ID4+ICt2b2lkDQo+ID4+ICt0ZXN0X3Zib29sMl90aGVuX3Zib29sMzIoaW50 OF90ICogcmVzdHJpY3QgaW4sIGludDhfdCAqIHJlc3RyaWN0IG91dCkgew0K PiA+PiArICAgIHZib29sMl90IHYxID0gKih2Ym9vbDJfdCopaW47DQo+ID4+ ICsgICAgdmJvb2wzMl90IHYyID0gKih2Ym9vbDMyX3QqKWluOw0KPiA+PiAr DQo+ID4+ICsgICAgKih2Ym9vbDJfdCopKG91dCArIDEwMCkgPSB2MTsNCj4g Pj4gKyAgICAqKHZib29sMzJfdCopKG91dCArIDIwMCkgPSB2MjsNCj4gPj4g K30NCj4gPj4gKw0KPiA+PiArdm9pZA0KPiA+PiArdGVzdF92Ym9vbDJfdGhl bl92Ym9vbDY0KGludDhfdCAqIHJlc3RyaWN0IGluLCBpbnQ4X3QgKiByZXN0 cmljdCBvdXQpIHsNCj4gPj4gKyAgICB2Ym9vbDJfdCB2MSA9ICoodmJvb2wy X3QqKWluOw0KPiA+PiArICAgIHZib29sNjRfdCB2MiA9ICoodmJvb2w2NF90 KilpbjsNCj4gPj4gKw0KPiA+PiArICAgICoodmJvb2wyX3QqKShvdXQgKyAx MDApID0gdjE7DQo+ID4+ICsgICAgKih2Ym9vbDY0X3QqKShvdXQgKyAyMDAp ID0gdjI7DQo+ID4+ICt9DQo+ID4+ICsNCj4gPj4gKy8qIHsgZGctZmluYWwg eyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dnNldHZsaVxzK1thLXhdWzAtOV0r LFxzKnplcm8sXHMqZTgsXHMqbTQsXHMqdGEsXHMqbWF9IDYgfSB9ICovDQo+ ID4+ICsvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge3Zz ZXR2bGlccytbYS14XVswLTldKyxccyp6ZXJvLFxzKmU4LFxzKm0yLFxzKnRh LFxzKm1hfSAxIH0gfSAqLw0KPiA+PiArLyogeyBkZy1maW5hbCB7IHNjYW4t YXNzZW1ibGVyLXRpbWVzIHt2c2V0dmxpXHMrW2EteF1bMC05XSssXHMqemVy byxccyplOCxccyptMSxccyp0YSxccyptYX0gMSB9IH0gKi8NCj4gPj4gKy8q IHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dnNldHZsaVxz K1thLXhdWzAtOV0rLFxzKnplcm8sXHMqZTgsXHMqbTgsXHMqdGEsXHMqbWF9 IDEgfSB9ICovDQo+ID4+ICsvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJs ZXItdGltZXMge3ZzZXR2bGlccytbYS14XVswLTldKyxccyp6ZXJvLFxzKmU4 LFxzKm1mMixccyp0YSxccyptYX0gMSB9IH0gKi8NCj4gPj4gKy8qIHsgZGct ZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dnNldHZsaVxzK1thLXhd WzAtOV0rLFxzKnplcm8sXHMqZTgsXHMqbWY0LFxzKnRhLFxzKm1hfSAxIH0g fSAqLw0KPiA+PiArLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRp bWVzIHt2c2V0dmxpXHMrW2EteF1bMC05XSssXHMqemVybyxccyplOCxccypt ZjgsXHMqdGEsXHMqbWF9IDEgfSB9ICovDQo+ID4+ICsvKiB7IGRnLWZpbmFs IHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge3ZsbVwudlxzK3ZbMC05XSssXHMq MFwoW2EteF1bMC05XStcKX0gMTIgfSB9ICovDQo+ID4+ICsvKiB7IGRnLWZp bmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge3ZzbVwudlxzK3ZbMC05XSss XHMqMFwoW2EteF1bMC05XStcKX0gMTIgfSB9ICovDQo+ID4+IGRpZmYgLS1n aXQgYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcHIxMDgxODUt My5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3ByMTA4MTg1 LTMuYw0KPiA+PiBuZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiA+PiBpbmRleCAw MDAwMDAwMDAwMC4uOTk5MjhmN2IxY2MNCj4gPj4gLS0tIC9kZXYvbnVsbA0K PiA+PiArKysgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcHIx MDgxODUtMy5jDQo+ID4+IEBAIC0wLDAgKzEsNjggQEANCj4gPj4gKy8qIHsg ZGctZG8gY29tcGlsZSB9ICovDQo+ID4+ICsvKiB7IGRnLW9wdGlvbnMgIi1t YXJjaD1ydjY0Z2N2IC1tYWJpPWxwNjQgLU8zIiB9ICovDQo+ID4+ICsNCj4g Pj4gKyNpbmNsdWRlICJyaXNjdl92ZWN0b3IuaCINCj4gPj4gKw0KPiA+PiAr dm9pZA0KPiA+PiArdGVzdF92Ym9vbDRfdGhlbl92Ym9vbDEoaW50OF90ICog cmVzdHJpY3QgaW4sIGludDhfdCAqIHJlc3RyaWN0IG91dCkgew0KPiA+PiAr ICAgIHZib29sNF90IHYxID0gKih2Ym9vbDRfdCopaW47DQo+ID4+ICsgICAg dmJvb2wxX3QgdjIgPSAqKHZib29sMV90KilpbjsNCj4gPj4gKw0KPiA+PiAr ICAgICoodmJvb2w0X3QqKShvdXQgKyAxMDApID0gdjE7DQo+ID4+ICsgICAg Kih2Ym9vbDFfdCopKG91dCArIDIwMCkgPSB2MjsNCj4gPj4gK30NCj4gPj4g Kw0KPiA+PiArdm9pZA0KPiA+PiArdGVzdF92Ym9vbDRfdGhlbl92Ym9vbDIo aW50OF90ICogcmVzdHJpY3QgaW4sIGludDhfdCAqIHJlc3RyaWN0IG91dCkg ew0KPiA+PiArICAgIHZib29sNF90IHYxID0gKih2Ym9vbDRfdCopaW47DQo+ ID4+ICsgICAgdmJvb2wyX3QgdjIgPSAqKHZib29sMl90KilpbjsNCj4gPj4g Kw0KPiA+PiArICAgICoodmJvb2w0X3QqKShvdXQgKyAxMDApID0gdjE7DQo+ ID4+ICsgICAgKih2Ym9vbDJfdCopKG91dCArIDIwMCkgPSB2MjsNCj4gPj4g K30NCj4gPj4gKw0KPiA+PiArdm9pZA0KPiA+PiArdGVzdF92Ym9vbDRfdGhl bl92Ym9vbDgoaW50OF90ICogcmVzdHJpY3QgaW4sIGludDhfdCAqIHJlc3Ry aWN0IG91dCkgew0KPiA+PiArICAgIHZib29sNF90IHYxID0gKih2Ym9vbDRf dCopaW47DQo+ID4+ICsgICAgdmJvb2w4X3QgdjIgPSAqKHZib29sOF90Kilp bjsNCj4gPj4gKw0KPiA+PiArICAgICoodmJvb2w0X3QqKShvdXQgKyAxMDAp ID0gdjE7DQo+ID4+ICsgICAgKih2Ym9vbDhfdCopKG91dCArIDIwMCkgPSB2 MjsNCj4gPj4gK30NCj4gPj4gKw0KPiA+PiArdm9pZA0KPiA+PiArdGVzdF92 Ym9vbDRfdGhlbl92Ym9vbDE2KGludDhfdCAqIHJlc3RyaWN0IGluLCBpbnQ4 X3QgKiByZXN0cmljdCBvdXQpIHsNCj4gPj4gKyAgICB2Ym9vbDRfdCB2MSA9 ICoodmJvb2w0X3QqKWluOw0KPiA+PiArICAgIHZib29sMTZfdCB2MiA9ICoo dmJvb2wxNl90KilpbjsNCj4gPj4gKw0KPiA+PiArICAgICoodmJvb2w0X3Qq KShvdXQgKyAxMDApID0gdjE7DQo+ID4+ICsgICAgKih2Ym9vbDE2X3QqKShv dXQgKyAyMDApID0gdjI7DQo+ID4+ICt9DQo+ID4+ICsNCj4gPj4gK3ZvaWQN Cj4gPj4gK3Rlc3RfdmJvb2w0X3RoZW5fdmJvb2wzMihpbnQ4X3QgKiByZXN0 cmljdCBpbiwgaW50OF90ICogcmVzdHJpY3Qgb3V0KSB7DQo+ID4+ICsgICAg dmJvb2w0X3QgdjEgPSAqKHZib29sNF90KilpbjsNCj4gPj4gKyAgICB2Ym9v bDMyX3QgdjIgPSAqKHZib29sMzJfdCopaW47DQo+ID4+ICsNCj4gPj4gKyAg ICAqKHZib29sNF90Kikob3V0ICsgMTAwKSA9IHYxOw0KPiA+PiArICAgICoo dmJvb2wzMl90Kikob3V0ICsgMjAwKSA9IHYyOw0KPiA+PiArfQ0KPiA+PiAr DQo+ID4+ICt2b2lkDQo+ID4+ICt0ZXN0X3Zib29sNF90aGVuX3Zib29sNjQo aW50OF90ICogcmVzdHJpY3QgaW4sIGludDhfdCAqIHJlc3RyaWN0IG91dCkg ew0KPiA+PiArICAgIHZib29sNF90IHYxID0gKih2Ym9vbDRfdCopaW47DQo+ ID4+ICsgICAgdmJvb2w2NF90IHYyID0gKih2Ym9vbDY0X3QqKWluOw0KPiA+ PiArDQo+ID4+ICsgICAgKih2Ym9vbDRfdCopKG91dCArIDEwMCkgPSB2MTsN Cj4gPj4gKyAgICAqKHZib29sNjRfdCopKG91dCArIDIwMCkgPSB2MjsNCj4g Pj4gK30NCj4gPj4gKw0KPiA+PiArLyogeyBkZy1maW5hbCB7IHNjYW4tYXNz ZW1ibGVyLXRpbWVzIHt2c2V0dmxpXHMrW2EteF1bMC05XSssXHMqemVybyxc cyplOCxccyptMixccyp0YSxccyptYX0gNiB9IH0gKi8NCj4gPj4gKy8qIHsg ZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dnNldHZsaVxzK1th LXhdWzAtOV0rLFxzKnplcm8sXHMqZTgsXHMqbTgsXHMqdGEsXHMqbWF9IDEg fSB9ICovDQo+ID4+ICsvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXIt dGltZXMge3ZzZXR2bGlccytbYS14XVswLTldKyxccyp6ZXJvLFxzKmU4LFxz Km00LFxzKnRhLFxzKm1hfSAxIH0gfSAqLw0KPiA+PiArLyogeyBkZy1maW5h bCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVzIHt2c2V0dmxpXHMrW2EteF1bMC05 XSssXHMqemVybyxccyplOCxccyptMSxccyp0YSxccyptYX0gMSB9IH0gKi8N Cj4gPj4gKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7 dnNldHZsaVxzK1thLXhdWzAtOV0rLFxzKnplcm8sXHMqZTgsXHMqbWYyLFxz KnRhLFxzKm1hfSAxIH0gfSAqLw0KPiA+PiArLyogeyBkZy1maW5hbCB7IHNj YW4tYXNzZW1ibGVyLXRpbWVzIHt2c2V0dmxpXHMrW2EteF1bMC05XSssXHMq emVybyxccyplOCxccyptZjQsXHMqdGEsXHMqbWF9IDEgfSB9ICovDQo+ID4+ ICsvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge3ZzZXR2 bGlccytbYS14XVswLTldKyxccyp6ZXJvLFxzKmU4LFxzKm1mOCxccyp0YSxc cyptYX0gMSB9IH0gKi8NCj4gPj4gKy8qIHsgZGctZmluYWwgeyBzY2FuLWFz c2VtYmxlci10aW1lcyB7dmxtXC52XHMrdlswLTldKyxccyowXChbYS14XVsw LTldK1wpfSAxMiB9IH0gKi8NCj4gPj4gKy8qIHsgZGctZmluYWwgeyBzY2Fu LWFzc2VtYmxlci10aW1lcyB7dnNtXC52XHMrdlswLTldKyxccyowXChbYS14 XVswLTldK1wpfSAxMiB9IH0gKi8NCj4gPj4gZGlmZiAtLWdpdCBhL2djYy90 ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9wcjEwODE4NS00LmMgYi9nY2Mv dGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcHIxMDgxODUtNC5jDQo+ID4+ IG5ldyBmaWxlIG1vZGUgMTAwNjQ0DQo+ID4+IGluZGV4IDAwMDAwMDAwMDAw Li5lNzAyODRmYWRhOA0KPiA+PiAtLS0gL2Rldi9udWxsDQo+ID4+ICsrKyBi L2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9wcjEwODE4NS00LmMN Cj4gPj4gQEAgLTAsMCArMSw2OCBAQA0KPiA+PiArLyogeyBkZy1kbyBjb21w aWxlIH0gKi8NCj4gPj4gKy8qIHsgZGctb3B0aW9ucyAiLW1hcmNoPXJ2NjRn Y3YgLW1hYmk9bHA2NCAtTzMiIH0gKi8NCj4gPj4gKw0KPiA+PiArI2luY2x1 ZGUgInJpc2N2X3ZlY3Rvci5oIg0KPiA+PiArDQo+ID4+ICt2b2lkDQo+ID4+ ICt0ZXN0X3Zib29sOF90aGVuX3Zib29sMShpbnQ4X3QgKiByZXN0cmljdCBp biwgaW50OF90ICogcmVzdHJpY3Qgb3V0KSB7DQo+ID4+ICsgICAgdmJvb2w4 X3QgdjEgPSAqKHZib29sOF90KilpbjsNCj4gPj4gKyAgICB2Ym9vbDFfdCB2 MiA9ICoodmJvb2wxX3QqKWluOw0KPiA+PiArDQo+ID4+ICsgICAgKih2Ym9v bDhfdCopKG91dCArIDEwMCkgPSB2MTsNCj4gPj4gKyAgICAqKHZib29sMV90 Kikob3V0ICsgMjAwKSA9IHYyOw0KPiA+PiArfQ0KPiA+PiArDQo+ID4+ICt2 b2lkDQo+ID4+ICt0ZXN0X3Zib29sOF90aGVuX3Zib29sMihpbnQ4X3QgKiBy ZXN0cmljdCBpbiwgaW50OF90ICogcmVzdHJpY3Qgb3V0KSB7DQo+ID4+ICsg ICAgdmJvb2w4X3QgdjEgPSAqKHZib29sOF90KilpbjsNCj4gPj4gKyAgICB2 Ym9vbDJfdCB2MiA9ICoodmJvb2wyX3QqKWluOw0KPiA+PiArDQo+ID4+ICsg ICAgKih2Ym9vbDhfdCopKG91dCArIDEwMCkgPSB2MTsNCj4gPj4gKyAgICAq KHZib29sMl90Kikob3V0ICsgMjAwKSA9IHYyOw0KPiA+PiArfQ0KPiA+PiAr DQo+ID4+ICt2b2lkDQo+ID4+ICt0ZXN0X3Zib29sOF90aGVuX3Zib29sNChp bnQ4X3QgKiByZXN0cmljdCBpbiwgaW50OF90ICogcmVzdHJpY3Qgb3V0KSB7 DQo+ID4+ICsgICAgdmJvb2w4X3QgdjEgPSAqKHZib29sOF90KilpbjsNCj4g Pj4gKyAgICB2Ym9vbDRfdCB2MiA9ICoodmJvb2w0X3QqKWluOw0KPiA+PiAr DQo+ID4+ICsgICAgKih2Ym9vbDhfdCopKG91dCArIDEwMCkgPSB2MTsNCj4g Pj4gKyAgICAqKHZib29sNF90Kikob3V0ICsgMjAwKSA9IHYyOw0KPiA+PiAr fQ0KPiA+PiArDQo+ID4+ICt2b2lkDQo+ID4+ICt0ZXN0X3Zib29sOF90aGVu X3Zib29sMTYoaW50OF90ICogcmVzdHJpY3QgaW4sIGludDhfdCAqIHJlc3Ry aWN0IG91dCkgew0KPiA+PiArICAgIHZib29sOF90IHYxID0gKih2Ym9vbDhf dCopaW47DQo+ID4+ICsgICAgdmJvb2wxNl90IHYyID0gKih2Ym9vbDE2X3Qq KWluOw0KPiA+PiArDQo+ID4+ICsgICAgKih2Ym9vbDhfdCopKG91dCArIDEw MCkgPSB2MTsNCj4gPj4gKyAgICAqKHZib29sMTZfdCopKG91dCArIDIwMCkg PSB2MjsNCj4gPj4gK30NCj4gPj4gKw0KPiA+PiArdm9pZA0KPiA+PiArdGVz dF92Ym9vbDhfdGhlbl92Ym9vbDMyKGludDhfdCAqIHJlc3RyaWN0IGluLCBp bnQ4X3QgKiByZXN0cmljdCBvdXQpIHsNCj4gPj4gKyAgICB2Ym9vbDhfdCB2 MSA9ICoodmJvb2w4X3QqKWluOw0KPiA+PiArICAgIHZib29sMzJfdCB2MiA9 ICoodmJvb2wzMl90KilpbjsNCj4gPj4gKw0KPiA+PiArICAgICoodmJvb2w4 X3QqKShvdXQgKyAxMDApID0gdjE7DQo+ID4+ICsgICAgKih2Ym9vbDMyX3Qq KShvdXQgKyAyMDApID0gdjI7DQo+ID4+ICt9DQo+ID4+ICsNCj4gPj4gK3Zv aWQNCj4gPj4gK3Rlc3RfdmJvb2w4X3RoZW5fdmJvb2w2NChpbnQ4X3QgKiBy ZXN0cmljdCBpbiwgaW50OF90ICogcmVzdHJpY3Qgb3V0KSB7DQo+ID4+ICsg ICAgdmJvb2w4X3QgdjEgPSAqKHZib29sOF90KilpbjsNCj4gPj4gKyAgICB2 Ym9vbDY0X3QgdjIgPSAqKHZib29sNjRfdCopaW47DQo+ID4+ICsNCj4gPj4g KyAgICAqKHZib29sOF90Kikob3V0ICsgMTAwKSA9IHYxOw0KPiA+PiArICAg ICoodmJvb2w2NF90Kikob3V0ICsgMjAwKSA9IHYyOw0KPiA+PiArfQ0KPiA+ PiArDQo+ID4+ICsvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGlt ZXMge3ZzZXR2bGlccytbYS14XVswLTldKyxccyp6ZXJvLFxzKmU4LFxzKm0x LFxzKnRhLFxzKm1hfSA2IH0gfSAqLw0KPiA+PiArLyogeyBkZy1maW5hbCB7 IHNjYW4tYXNzZW1ibGVyLXRpbWVzIHt2c2V0dmxpXHMrW2EteF1bMC05XSss XHMqemVybyxccyplOCxccyptMixccyp0YSxccyptYX0gMSB9IH0gKi8NCj4g Pj4gKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dnNl dHZsaVxzK1thLXhdWzAtOV0rLFxzKnplcm8sXHMqZTgsXHMqbTgsXHMqdGEs XHMqbWF9IDEgfSB9ICovDQo+ID4+ICsvKiB7IGRnLWZpbmFsIHsgc2Nhbi1h c3NlbWJsZXItdGltZXMge3ZzZXR2bGlccytbYS14XVswLTldKyxccyp6ZXJv LFxzKmU4LFxzKm00LFxzKnRhLFxzKm1hfSAxIH0gfSAqLw0KPiA+PiArLyog eyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVzIHt2c2V0dmxpXHMr W2EteF1bMC05XSssXHMqemVybyxccyplOCxccyptZjIsXHMqdGEsXHMqbWF9 IDEgfSB9ICovDQo+ID4+ICsvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJs ZXItdGltZXMge3ZzZXR2bGlccytbYS14XVswLTldKyxccyp6ZXJvLFxzKmU4 LFxzKm1mNCxccyp0YSxccyptYX0gMSB9IH0gKi8NCj4gPj4gKy8qIHsgZGct ZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dnNldHZsaVxzK1thLXhd WzAtOV0rLFxzKnplcm8sXHMqZTgsXHMqbWY4LFxzKnRhLFxzKm1hfSAxIH0g fSAqLw0KPiA+PiArLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRp bWVzIHt2bG1cLnZccyt2WzAtOV0rLFxzKjBcKFthLXhdWzAtOV0rXCl9IDEy IH0gfSAqLw0KPiA+PiArLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVy LXRpbWVzIHt2c21cLnZccyt2WzAtOV0rLFxzKjBcKFthLXhdWzAtOV0rXCl9 IDEyIH0gfSAqLw0KPiA+PiBkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9n Y2MudGFyZ2V0L3Jpc2N2L3ByMTA4MTg1LTUuYyBiL2djYy90ZXN0c3VpdGUv Z2NjLnRhcmdldC9yaXNjdi9wcjEwODE4NS01LmMNCj4gPj4gbmV3IGZpbGUg bW9kZSAxMDA2NDQNCj4gPj4gaW5kZXggMDAwMDAwMDAwMDAuLjU3NWE3ODQy Y2RmDQo+ID4+IC0tLSAvZGV2L251bGwNCj4gPj4gKysrIGIvZ2NjL3Rlc3Rz dWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3ByMTA4MTg1LTUuYw0KPiA+PiBAQCAt MCwwICsxLDY4IEBADQo+ID4+ICsvKiB7IGRnLWRvIGNvbXBpbGUgfSAqLw0K PiA+PiArLyogeyBkZy1vcHRpb25zICItbWFyY2g9cnY2NGdjdiAtbWFiaT1s cDY0IC1PMyIgfSAqLw0KPiA+PiArDQo+ID4+ICsjaW5jbHVkZSAicmlzY3Zf dmVjdG9yLmgiDQo+ID4+ICsNCj4gPj4gK3ZvaWQNCj4gPj4gK3Rlc3RfdmJv b2wxNl90aGVuX3Zib29sMShpbnQ4X3QgKiByZXN0cmljdCBpbiwgaW50OF90 ICogcmVzdHJpY3Qgb3V0KSB7DQo+ID4+ICsgICAgdmJvb2wxNl90IHYxID0g Kih2Ym9vbDE2X3QqKWluOw0KPiA+PiArICAgIHZib29sMV90IHYyID0gKih2 Ym9vbDFfdCopaW47DQo+ID4+ICsNCj4gPj4gKyAgICAqKHZib29sMTZfdCop KG91dCArIDEwMCkgPSB2MTsNCj4gPj4gKyAgICAqKHZib29sMV90Kikob3V0 ICsgMjAwKSA9IHYyOw0KPiA+PiArfQ0KPiA+PiArDQo+ID4+ICt2b2lkDQo+ ID4+ICt0ZXN0X3Zib29sMTZfdGhlbl92Ym9vbDIoaW50OF90ICogcmVzdHJp Y3QgaW4sIGludDhfdCAqIHJlc3RyaWN0IG91dCkgew0KPiA+PiArICAgIHZi b29sMTZfdCB2MSA9ICoodmJvb2wxNl90KilpbjsNCj4gPj4gKyAgICB2Ym9v bDJfdCB2MiA9ICoodmJvb2wyX3QqKWluOw0KPiA+PiArDQo+ID4+ICsgICAg Kih2Ym9vbDE2X3QqKShvdXQgKyAxMDApID0gdjE7DQo+ID4+ICsgICAgKih2 Ym9vbDJfdCopKG91dCArIDIwMCkgPSB2MjsNCj4gPj4gK30NCj4gPj4gKw0K PiA+PiArdm9pZA0KPiA+PiArdGVzdF92Ym9vbDE2X3RoZW5fdmJvb2w0KGlu dDhfdCAqIHJlc3RyaWN0IGluLCBpbnQ4X3QgKiByZXN0cmljdCBvdXQpIHsN Cj4gPj4gKyAgICB2Ym9vbDE2X3QgdjEgPSAqKHZib29sMTZfdCopaW47DQo+ ID4+ICsgICAgdmJvb2w0X3QgdjIgPSAqKHZib29sNF90KilpbjsNCj4gPj4g Kw0KPiA+PiArICAgICoodmJvb2wxNl90Kikob3V0ICsgMTAwKSA9IHYxOw0K PiA+PiArICAgICoodmJvb2w0X3QqKShvdXQgKyAyMDApID0gdjI7DQo+ID4+ ICt9DQo+ID4+ICsNCj4gPj4gK3ZvaWQNCj4gPj4gK3Rlc3RfdmJvb2wxNl90 aGVuX3Zib29sOChpbnQ4X3QgKiByZXN0cmljdCBpbiwgaW50OF90ICogcmVz dHJpY3Qgb3V0KSB7DQo+ID4+ICsgICAgdmJvb2wxNl90IHYxID0gKih2Ym9v bDE2X3QqKWluOw0KPiA+PiArICAgIHZib29sOF90IHYyID0gKih2Ym9vbDhf dCopaW47DQo+ID4+ICsNCj4gPj4gKyAgICAqKHZib29sMTZfdCopKG91dCAr IDEwMCkgPSB2MTsNCj4gPj4gKyAgICAqKHZib29sOF90Kikob3V0ICsgMjAw KSA9IHYyOw0KPiA+PiArfQ0KPiA+PiArDQo+ID4+ICt2b2lkDQo+ID4+ICt0 ZXN0X3Zib29sMTZfdGhlbl92Ym9vbDMyKGludDhfdCAqIHJlc3RyaWN0IGlu LCBpbnQ4X3QgKiByZXN0cmljdCBvdXQpIHsNCj4gPj4gKyAgICB2Ym9vbDE2 X3QgdjEgPSAqKHZib29sMTZfdCopaW47DQo+ID4+ICsgICAgdmJvb2wzMl90 IHYyID0gKih2Ym9vbDMyX3QqKWluOw0KPiA+PiArDQo+ID4+ICsgICAgKih2 Ym9vbDE2X3QqKShvdXQgKyAxMDApID0gdjE7DQo+ID4+ICsgICAgKih2Ym9v bDMyX3QqKShvdXQgKyAyMDApID0gdjI7DQo+ID4+ICt9DQo+ID4+ICsNCj4g Pj4gK3ZvaWQNCj4gPj4gK3Rlc3RfdmJvb2wxNl90aGVuX3Zib29sNjQoaW50 OF90ICogcmVzdHJpY3QgaW4sIGludDhfdCAqIHJlc3RyaWN0IG91dCkgew0K PiA+PiArICAgIHZib29sMTZfdCB2MSA9ICoodmJvb2wxNl90KilpbjsNCj4g Pj4gKyAgICB2Ym9vbDY0X3QgdjIgPSAqKHZib29sNjRfdCopaW47DQo+ID4+ ICsNCj4gPj4gKyAgICAqKHZib29sMTZfdCopKG91dCArIDEwMCkgPSB2MTsN Cj4gPj4gKyAgICAqKHZib29sNjRfdCopKG91dCArIDIwMCkgPSB2MjsNCj4g Pj4gK30NCj4gPj4gKw0KPiA+PiArLyogeyBkZy1maW5hbCB7IHNjYW4tYXNz ZW1ibGVyLXRpbWVzIHt2c2V0dmxpXHMrW2EteF1bMC05XSssXHMqemVybyxc cyplOCxccyptZjIsXHMqdGEsXHMqbWF9IDYgfSB9ICovDQo+ID4+ICsvKiB7 IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge3ZzZXR2bGlccytb YS14XVswLTldKyxccyp6ZXJvLFxzKmU4LFxzKm0yLFxzKnRhLFxzKm1hfSAx IH0gfSAqLw0KPiA+PiArLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVy LXRpbWVzIHt2c2V0dmxpXHMrW2EteF1bMC05XSssXHMqemVybyxccyplOCxc cyptOCxccyp0YSxccyptYX0gMSB9IH0gKi8NCj4gPj4gKy8qIHsgZGctZmlu YWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dnNldHZsaVxzK1thLXhdWzAt OV0rLFxzKnplcm8sXHMqZTgsXHMqbTQsXHMqdGEsXHMqbWF9IDEgfSB9ICov DQo+ID4+ICsvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMg e3ZzZXR2bGlccytbYS14XVswLTldKyxccyp6ZXJvLFxzKmU4LFxzKm0xLFxz KnRhLFxzKm1hfSAxIH0gfSAqLw0KPiA+PiArLyogeyBkZy1maW5hbCB7IHNj YW4tYXNzZW1ibGVyLXRpbWVzIHt2c2V0dmxpXHMrW2EteF1bMC05XSssXHMq emVybyxccyplOCxccyptZjQsXHMqdGEsXHMqbWF9IDEgfSB9ICovDQo+ID4+ ICsvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge3ZzZXR2 bGlccytbYS14XVswLTldKyxccyp6ZXJvLFxzKmU4LFxzKm1mOCxccyp0YSxc cyptYX0gMSB9IH0gKi8NCj4gPj4gKy8qIHsgZGctZmluYWwgeyBzY2FuLWFz c2VtYmxlci10aW1lcyB7dmxtXC52XHMrdlswLTldKyxccyowXChbYS14XVsw LTldK1wpfSAxMiB9IH0gKi8NCj4gPj4gKy8qIHsgZGctZmluYWwgeyBzY2Fu LWFzc2VtYmxlci10aW1lcyB7dnNtXC52XHMrdlswLTldKyxccyowXChbYS14 XVswLTldK1wpfSAxMiB9IH0gKi8NCj4gPj4gZGlmZiAtLWdpdCBhL2djYy90 ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9wcjEwODE4NS02LmMgYi9nY2Mv dGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcHIxMDgxODUtNi5jDQo+ID4+ IG5ldyBmaWxlIG1vZGUgMTAwNjQ0DQo+ID4+IGluZGV4IDAwMDAwMDAwMDAw Li45NWExMWQzNzAxNg0KPiA+PiAtLS0gL2Rldi9udWxsDQo+ID4+ICsrKyBi L2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9wcjEwODE4NS02LmMN Cj4gPj4gQEAgLTAsMCArMSw2OCBAQA0KPiA+PiArLyogeyBkZy1kbyBjb21w aWxlIH0gKi8NCj4gPj4gKy8qIHsgZGctb3B0aW9ucyAiLW1hcmNoPXJ2NjRn Y3YgLW1hYmk9bHA2NCAtTzMiIH0gKi8NCj4gPj4gKw0KPiA+PiArI2luY2x1 ZGUgInJpc2N2X3ZlY3Rvci5oIg0KPiA+PiArDQo+ID4+ICt2b2lkDQo+ID4+ ICt0ZXN0X3Zib29sMzJfdGhlbl92Ym9vbDEoaW50OF90ICogcmVzdHJpY3Qg aW4sIGludDhfdCAqIHJlc3RyaWN0IG91dCkgew0KPiA+PiArICAgIHZib29s MzJfdCB2MSA9ICoodmJvb2wzMl90KilpbjsNCj4gPj4gKyAgICB2Ym9vbDFf dCB2MiA9ICoodmJvb2wxX3QqKWluOw0KPiA+PiArDQo+ID4+ICsgICAgKih2 Ym9vbDMyX3QqKShvdXQgKyAxMDApID0gdjE7DQo+ID4+ICsgICAgKih2Ym9v bDFfdCopKG91dCArIDIwMCkgPSB2MjsNCj4gPj4gK30NCj4gPj4gKw0KPiA+ PiArdm9pZA0KPiA+PiArdGVzdF92Ym9vbDMyX3RoZW5fdmJvb2wyKGludDhf dCAqIHJlc3RyaWN0IGluLCBpbnQ4X3QgKiByZXN0cmljdCBvdXQpIHsNCj4g Pj4gKyAgICB2Ym9vbDMyX3QgdjEgPSAqKHZib29sMzJfdCopaW47DQo+ID4+ ICsgICAgdmJvb2wyX3QgdjIgPSAqKHZib29sMl90KilpbjsNCj4gPj4gKw0K PiA+PiArICAgICoodmJvb2wzMl90Kikob3V0ICsgMTAwKSA9IHYxOw0KPiA+ PiArICAgICoodmJvb2wyX3QqKShvdXQgKyAyMDApID0gdjI7DQo+ID4+ICt9 DQo+ID4+ICsNCj4gPj4gK3ZvaWQNCj4gPj4gK3Rlc3RfdmJvb2wzMl90aGVu X3Zib29sNChpbnQ4X3QgKiByZXN0cmljdCBpbiwgaW50OF90ICogcmVzdHJp Y3Qgb3V0KSB7DQo+ID4+ICsgICAgdmJvb2wzMl90IHYxID0gKih2Ym9vbDMy X3QqKWluOw0KPiA+PiArICAgIHZib29sNF90IHYyID0gKih2Ym9vbDRfdCop aW47DQo+ID4+ICsNCj4gPj4gKyAgICAqKHZib29sMzJfdCopKG91dCArIDEw MCkgPSB2MTsNCj4gPj4gKyAgICAqKHZib29sNF90Kikob3V0ICsgMjAwKSA9 IHYyOw0KPiA+PiArfQ0KPiA+PiArDQo+ID4+ICt2b2lkDQo+ID4+ICt0ZXN0 X3Zib29sMzJfdGhlbl92Ym9vbDgoaW50OF90ICogcmVzdHJpY3QgaW4sIGlu dDhfdCAqIHJlc3RyaWN0IG91dCkgew0KPiA+PiArICAgIHZib29sMzJfdCB2 MSA9ICoodmJvb2wzMl90KilpbjsNCj4gPj4gKyAgICB2Ym9vbDhfdCB2MiA9 ICoodmJvb2w4X3QqKWluOw0KPiA+PiArDQo+ID4+ICsgICAgKih2Ym9vbDMy X3QqKShvdXQgKyAxMDApID0gdjE7DQo+ID4+ICsgICAgKih2Ym9vbDhfdCop KG91dCArIDIwMCkgPSB2MjsNCj4gPj4gK30NCj4gPj4gKw0KPiA+PiArdm9p ZA0KPiA+PiArdGVzdF92Ym9vbDMyX3RoZW5fdmJvb2wxNihpbnQ4X3QgKiBy ZXN0cmljdCBpbiwgaW50OF90ICogcmVzdHJpY3Qgb3V0KSB7DQo+ID4+ICsg ICAgdmJvb2wzMl90IHYxID0gKih2Ym9vbDMyX3QqKWluOw0KPiA+PiArICAg IHZib29sMTZfdCB2MiA9ICoodmJvb2wxNl90KilpbjsNCj4gPj4gKw0KPiA+ PiArICAgICoodmJvb2wzMl90Kikob3V0ICsgMTAwKSA9IHYxOw0KPiA+PiAr ICAgICoodmJvb2wxNl90Kikob3V0ICsgMjAwKSA9IHYyOw0KPiA+PiArfQ0K PiA+PiArDQo+ID4+ICt2b2lkDQo+ID4+ICt0ZXN0X3Zib29sMzJfdGhlbl92 Ym9vbDY0KGludDhfdCAqIHJlc3RyaWN0IGluLCBpbnQ4X3QgKiByZXN0cmlj dCBvdXQpIHsNCj4gPj4gKyAgICB2Ym9vbDMyX3QgdjEgPSAqKHZib29sMzJf dCopaW47DQo+ID4+ICsgICAgdmJvb2w2NF90IHYyID0gKih2Ym9vbDY0X3Qq KWluOw0KPiA+PiArDQo+ID4+ICsgICAgKih2Ym9vbDMyX3QqKShvdXQgKyAx MDApID0gdjE7DQo+ID4+ICsgICAgKih2Ym9vbDY0X3QqKShvdXQgKyAyMDAp ID0gdjI7DQo+ID4+ICt9DQo+ID4+ICsNCj4gPj4gKy8qIHsgZGctZmluYWwg eyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dnNldHZsaVxzK1thLXhdWzAtOV0r LFxzKnplcm8sXHMqZTgsXHMqbWY0LFxzKnRhLFxzKm1hfSA2IH0gfSAqLw0K PiA+PiArLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVzIHt2 c2V0dmxpXHMrW2EteF1bMC05XSssXHMqemVybyxccyplOCxccyptOCxccyp0 YSxccyptYX0gMSB9IH0gKi8NCj4gPj4gKy8qIHsgZGctZmluYWwgeyBzY2Fu LWFzc2VtYmxlci10aW1lcyB7dnNldHZsaVxzK1thLXhdWzAtOV0rLFxzKnpl cm8sXHMqZTgsXHMqbTQsXHMqdGEsXHMqbWF9IDEgfSB9ICovDQo+ID4+ICsv KiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge3ZzZXR2bGlc cytbYS14XVswLTldKyxccyp6ZXJvLFxzKmU4LFxzKm0yLFxzKnRhLFxzKm1h fSAxIH0gfSAqLw0KPiA+PiArLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1i bGVyLXRpbWVzIHt2c2V0dmxpXHMrW2EteF1bMC05XSssXHMqemVybyxccypl OCxccyptMSxccyp0YSxccyptYX0gMSB9IH0gKi8NCj4gPj4gKy8qIHsgZGct ZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dnNldHZsaVxzK1thLXhd WzAtOV0rLFxzKnplcm8sXHMqZTgsXHMqbWYyLFxzKnRhLFxzKm1hfSAxIH0g fSAqLw0KPiA+PiArLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRp bWVzIHt2c2V0dmxpXHMrW2EteF1bMC05XSssXHMqemVybyxccyplOCxccypt ZjgsXHMqdGEsXHMqbWF9IDEgfSB9ICovDQo+ID4+ICsvKiB7IGRnLWZpbmFs IHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge3ZsbVwudlxzK3ZbMC05XSssXHMq MFwoW2EteF1bMC05XStcKX0gMTIgfSB9ICovDQo+ID4+ICsvKiB7IGRnLWZp bmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge3ZzbVwudlxzK3ZbMC05XSss XHMqMFwoW2EteF1bMC05XStcKX0gMTIgfSB9ICovDQo+ID4+IGRpZmYgLS1n aXQgYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcHIxMDgxODUt Ny5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3ByMTA4MTg1 LTcuYw0KPiA+PiBuZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiA+PiBpbmRleCAw MDAwMDAwMDAwMC4uOGY2ZjBiMTFmMDkNCj4gPj4gLS0tIC9kZXYvbnVsbA0K PiA+PiArKysgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcHIx MDgxODUtNy5jDQo+ID4+IEBAIC0wLDAgKzEsNjggQEANCj4gPj4gKy8qIHsg ZGctZG8gY29tcGlsZSB9ICovDQo+ID4+ICsvKiB7IGRnLW9wdGlvbnMgIi1t YXJjaD1ydjY0Z2N2IC1tYWJpPWxwNjQgLU8zIiB9ICovDQo+ID4+ICsNCj4g Pj4gKyNpbmNsdWRlICJyaXNjdl92ZWN0b3IuaCINCj4gPj4gKw0KPiA+PiAr dm9pZA0KPiA+PiArdGVzdF92Ym9vbDY0X3RoZW5fdmJvb2wxKGludDhfdCAq IHJlc3RyaWN0IGluLCBpbnQ4X3QgKiByZXN0cmljdCBvdXQpIHsNCj4gPj4g KyAgICB2Ym9vbDY0X3QgdjEgPSAqKHZib29sNjRfdCopaW47DQo+ID4+ICsg ICAgdmJvb2wxX3QgdjIgPSAqKHZib29sMV90KilpbjsNCj4gPj4gKw0KPiA+ PiArICAgICoodmJvb2w2NF90Kikob3V0ICsgMTAwKSA9IHYxOw0KPiA+PiAr ICAgICoodmJvb2wxX3QqKShvdXQgKyAyMDApID0gdjI7DQo+ID4+ICt9DQo+ ID4+ICsNCj4gPj4gK3ZvaWQNCj4gPj4gK3Rlc3RfdmJvb2w2NF90aGVuX3Zi b29sMihpbnQ4X3QgKiByZXN0cmljdCBpbiwgaW50OF90ICogcmVzdHJpY3Qg b3V0KSB7DQo+ID4+ICsgICAgdmJvb2w2NF90IHYxID0gKih2Ym9vbDY0X3Qq KWluOw0KPiA+PiArICAgIHZib29sMl90IHYyID0gKih2Ym9vbDJfdCopaW47 DQo+ID4+ICsNCj4gPj4gKyAgICAqKHZib29sNjRfdCopKG91dCArIDEwMCkg PSB2MTsNCj4gPj4gKyAgICAqKHZib29sMl90Kikob3V0ICsgMjAwKSA9IHYy Ow0KPiA+PiArfQ0KPiA+PiArDQo+ID4+ICt2b2lkDQo+ID4+ICt0ZXN0X3Zi b29sNjRfdGhlbl92Ym9vbDQoaW50OF90ICogcmVzdHJpY3QgaW4sIGludDhf dCAqIHJlc3RyaWN0IG91dCkgew0KPiA+PiArICAgIHZib29sNjRfdCB2MSA9 ICoodmJvb2w2NF90KilpbjsNCj4gPj4gKyAgICB2Ym9vbDRfdCB2MiA9ICoo dmJvb2w0X3QqKWluOw0KPiA+PiArDQo+ID4+ICsgICAgKih2Ym9vbDY0X3Qq KShvdXQgKyAxMDApID0gdjE7DQo+ID4+ICsgICAgKih2Ym9vbDRfdCopKG91 dCArIDIwMCkgPSB2MjsNCj4gPj4gK30NCj4gPj4gKw0KPiA+PiArdm9pZA0K PiA+PiArdGVzdF92Ym9vbDY0X3RoZW5fdmJvb2w4KGludDhfdCAqIHJlc3Ry aWN0IGluLCBpbnQ4X3QgKiByZXN0cmljdCBvdXQpIHsNCj4gPj4gKyAgICB2 Ym9vbDY0X3QgdjEgPSAqKHZib29sNjRfdCopaW47DQo+ID4+ICsgICAgdmJv b2w4X3QgdjIgPSAqKHZib29sOF90KilpbjsNCj4gPj4gKw0KPiA+PiArICAg ICoodmJvb2w2NF90Kikob3V0ICsgMTAwKSA9IHYxOw0KPiA+PiArICAgICoo dmJvb2w4X3QqKShvdXQgKyAyMDApID0gdjI7DQo+ID4+ICt9DQo+ID4+ICsN Cj4gPj4gK3ZvaWQNCj4gPj4gK3Rlc3RfdmJvb2w2NF90aGVuX3Zib29sMTYo aW50OF90ICogcmVzdHJpY3QgaW4sIGludDhfdCAqIHJlc3RyaWN0IG91dCkg ew0KPiA+PiArICAgIHZib29sNjRfdCB2MSA9ICoodmJvb2w2NF90KilpbjsN Cj4gPj4gKyAgICB2Ym9vbDE2X3QgdjIgPSAqKHZib29sMTZfdCopaW47DQo+ ID4+ICsNCj4gPj4gKyAgICAqKHZib29sNjRfdCopKG91dCArIDEwMCkgPSB2 MTsNCj4gPj4gKyAgICAqKHZib29sMTZfdCopKG91dCArIDIwMCkgPSB2MjsN Cj4gPj4gK30NCj4gPj4gKw0KPiA+PiArdm9pZA0KPiA+PiArdGVzdF92Ym9v bDY0X3RoZW5fdmJvb2wzMihpbnQ4X3QgKiByZXN0cmljdCBpbiwgaW50OF90 ICogcmVzdHJpY3Qgb3V0KSB7DQo+ID4+ICsgICAgdmJvb2w2NF90IHYxID0g Kih2Ym9vbDY0X3QqKWluOw0KPiA+PiArICAgIHZib29sMzJfdCB2MiA9ICoo dmJvb2wzMl90KilpbjsNCj4gPj4gKw0KPiA+PiArICAgICoodmJvb2w2NF90 Kikob3V0ICsgMTAwKSA9IHYxOw0KPiA+PiArICAgICoodmJvb2wzMl90Kiko b3V0ICsgMjAwKSA9IHYyOw0KPiA+PiArfQ0KPiA+PiArDQo+ID4+ICsvKiB7 IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge3ZzZXR2bGlccytb YS14XVswLTldKyxccyp6ZXJvLFxzKmU4LFxzKm1mOCxccyp0YSxccyptYX0g NiB9IH0gKi8NCj4gPj4gKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxl ci10aW1lcyB7dnNldHZsaVxzK1thLXhdWzAtOV0rLFxzKnplcm8sXHMqZTgs XHMqbTgsXHMqdGEsXHMqbWF9IDEgfSB9ICovDQo+ID4+ICsvKiB7IGRnLWZp bmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge3ZzZXR2bGlccytbYS14XVsw LTldKyxccyp6ZXJvLFxzKmU4LFxzKm00LFxzKnRhLFxzKm1hfSAxIH0gfSAq Lw0KPiA+PiArLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVz IHt2c2V0dmxpXHMrW2EteF1bMC05XSssXHMqemVybyxccyplOCxccyptMixc cyp0YSxccyptYX0gMSB9IH0gKi8NCj4gPj4gKy8qIHsgZGctZmluYWwgeyBz Y2FuLWFzc2VtYmxlci10aW1lcyB7dnNldHZsaVxzK1thLXhdWzAtOV0rLFxz Knplcm8sXHMqZTgsXHMqbTEsXHMqdGEsXHMqbWF9IDEgfSB9ICovDQo+ID4+ ICsvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge3ZzZXR2 bGlccytbYS14XVswLTldKyxccyp6ZXJvLFxzKmU4LFxzKm1mMixccyp0YSxc cyptYX0gMSB9IH0gKi8NCj4gPj4gKy8qIHsgZGctZmluYWwgeyBzY2FuLWFz c2VtYmxlci10aW1lcyB7dnNldHZsaVxzK1thLXhdWzAtOV0rLFxzKnplcm8s XHMqZTgsXHMqbWY0LFxzKnRhLFxzKm1hfSAxIH0gfSAqLw0KPiA+PiArLyog eyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVzIHt2bG1cLnZccyt2 WzAtOV0rLFxzKjBcKFthLXhdWzAtOV0rXCl9IDEyIH0gfSAqLw0KPiA+PiAr LyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVzIHt2c21cLnZc cyt2WzAtOV0rLFxzKjBcKFthLXhdWzAtOV0rXCl9IDEyIH0gfSAqLw0KPiA+ PiBkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2 L3ByMTA4MTg1LTguYyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNj di9wcjEwODE4NS04LmMNCj4gPj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4g Pj4gaW5kZXggMDAwMDAwMDAwMDAuLmQ5Njk1OWRkMDY0DQo+ID4+IC0tLSAv ZGV2L251bGwNCj4gPj4gKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0 L3Jpc2N2L3ByMTA4MTg1LTguYw0KPiA+PiBAQCAtMCwwICsxLDc3IEBADQo+ ID4+ICsvKiB7IGRnLWRvIGNvbXBpbGUgfSAqLw0KPiA+PiArLyogeyBkZy1v cHRpb25zICItbWFyY2g9cnY2NGdjdiAtbWFiaT1scDY0IC1PMyIgfSAqLw0K PiA+PiArDQo+ID4+ICsjaW5jbHVkZSAicmlzY3ZfdmVjdG9yLmgiDQo+ID4+ ICsNCj4gPj4gK3ZvaWQNCj4gPj4gK3Rlc3RfdmJvb2wxX3RoZW5fdmJvb2wx KGludDhfdCAqIHJlc3RyaWN0IGluLCBpbnQ4X3QgKiByZXN0cmljdCBvdXQp IHsNCj4gPj4gKyAgICB2Ym9vbDFfdCB2MSA9ICoodmJvb2wxX3QqKWluOw0K PiA+PiArICAgIHZib29sMV90IHYyID0gKih2Ym9vbDFfdCopaW47DQo+ID4+ ICsNCj4gPj4gKyAgICAqKHZib29sMV90Kikob3V0ICsgMTAwKSA9IHYxOw0K PiA+PiArICAgICoodmJvb2wxX3QqKShvdXQgKyAyMDApID0gdjI7DQo+ID4+ ICt9DQo+ID4+ICsNCj4gPj4gK3ZvaWQNCj4gPj4gK3Rlc3RfdmJvb2wyX3Ro ZW5fdmJvb2wyKGludDhfdCAqIHJlc3RyaWN0IGluLCBpbnQ4X3QgKiByZXN0 cmljdCBvdXQpIHsNCj4gPj4gKyAgICB2Ym9vbDJfdCB2MSA9ICoodmJvb2wy X3QqKWluOw0KPiA+PiArICAgIHZib29sMl90IHYyID0gKih2Ym9vbDJfdCop aW47DQo+ID4+ICsNCj4gPj4gKyAgICAqKHZib29sMl90Kikob3V0ICsgMTAw KSA9IHYxOw0KPiA+PiArICAgICoodmJvb2wyX3QqKShvdXQgKyAyMDApID0g djI7DQo+ID4+ICt9DQo+ID4+ICsNCj4gPj4gK3ZvaWQNCj4gPj4gK3Rlc3Rf dmJvb2w0X3RoZW5fdmJvb2w0KGludDhfdCAqIHJlc3RyaWN0IGluLCBpbnQ4 X3QgKiByZXN0cmljdCBvdXQpIHsNCj4gPj4gKyAgICB2Ym9vbDRfdCB2MSA9 ICoodmJvb2w0X3QqKWluOw0KPiA+PiArICAgIHZib29sNF90IHYyID0gKih2 Ym9vbDRfdCopaW47DQo+ID4+ICsNCj4gPj4gKyAgICAqKHZib29sNF90Kiko b3V0ICsgMTAwKSA9IHYxOw0KPiA+PiArICAgICoodmJvb2w0X3QqKShvdXQg KyAyMDApID0gdjI7DQo+ID4+ICt9DQo+ID4+ICsNCj4gPj4gK3ZvaWQNCj4g Pj4gK3Rlc3RfdmJvb2w4X3RoZW5fdmJvb2w4KGludDhfdCAqIHJlc3RyaWN0 IGluLCBpbnQ4X3QgKiByZXN0cmljdCBvdXQpIHsNCj4gPj4gKyAgICB2Ym9v bDhfdCB2MSA9ICoodmJvb2w4X3QqKWluOw0KPiA+PiArICAgIHZib29sOF90 IHYyID0gKih2Ym9vbDhfdCopaW47DQo+ID4+ICsNCj4gPj4gKyAgICAqKHZi b29sOF90Kikob3V0ICsgMTAwKSA9IHYxOw0KPiA+PiArICAgICoodmJvb2w4 X3QqKShvdXQgKyAyMDApID0gdjI7DQo+ID4+ICt9DQo+ID4+ICsNCj4gPj4g K3ZvaWQNCj4gPj4gK3Rlc3RfdmJvb2wxNl90aGVuX3Zib29sMTYoaW50OF90 ICogcmVzdHJpY3QgaW4sIGludDhfdCAqIHJlc3RyaWN0IG91dCkgew0KPiA+ PiArICAgIHZib29sMTZfdCB2MSA9ICoodmJvb2wxNl90KilpbjsNCj4gPj4g KyAgICB2Ym9vbDE2X3QgdjIgPSAqKHZib29sMTZfdCopaW47DQo+ID4+ICsN Cj4gPj4gKyAgICAqKHZib29sMTZfdCopKG91dCArIDEwMCkgPSB2MTsNCj4g Pj4gKyAgICAqKHZib29sMTZfdCopKG91dCArIDIwMCkgPSB2MjsNCj4gPj4g K30NCj4gPj4gKw0KPiA+PiArdm9pZA0KPiA+PiArdGVzdF92Ym9vbDMyX3Ro ZW5fdmJvb2wzMihpbnQ4X3QgKiByZXN0cmljdCBpbiwgaW50OF90ICogcmVz dHJpY3Qgb3V0KSB7DQo+ID4+ICsgICAgdmJvb2wzMl90IHYxID0gKih2Ym9v bDMyX3QqKWluOw0KPiA+PiArICAgIHZib29sMzJfdCB2MiA9ICoodmJvb2wz Ml90KilpbjsNCj4gPj4gKw0KPiA+PiArICAgICoodmJvb2wzMl90Kikob3V0 ICsgMTAwKSA9IHYxOw0KPiA+PiArICAgICoodmJvb2wzMl90Kikob3V0ICsg MjAwKSA9IHYyOw0KPiA+PiArfQ0KPiA+PiArDQo+ID4+ICt2b2lkDQo+ID4+ ICt0ZXN0X3Zib29sNjRfdGhlbl92Ym9vbDY0KGludDhfdCAqIHJlc3RyaWN0 IGluLCBpbnQ4X3QgKiByZXN0cmljdCBvdXQpIHsNCj4gPj4gKyAgICB2Ym9v bDY0X3QgdjEgPSAqKHZib29sNjRfdCopaW47DQo+ID4+ICsgICAgdmJvb2w2 NF90IHYyID0gKih2Ym9vbDY0X3QqKWluOw0KPiA+PiArDQo+ID4+ICsgICAg Kih2Ym9vbDY0X3QqKShvdXQgKyAxMDApID0gdjE7DQo+ID4+ICsgICAgKih2 Ym9vbDY0X3QqKShvdXQgKyAyMDApID0gdjI7DQo+ID4+ICt9DQo+ID4+ICsN Cj4gPj4gKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7 dnNldHZsaVxzK1thLXhdWzAtOV0rLFxzKnplcm8sXHMqZTgsXHMqbTgsXHMq dGEsXHMqbWF9IDEgfSB9ICovDQo+ID4+ICsvKiB7IGRnLWZpbmFsIHsgc2Nh bi1hc3NlbWJsZXItdGltZXMge3ZzZXR2bGlccytbYS14XVswLTldKyxccyp6 ZXJvLFxzKmU4LFxzKm00LFxzKnRhLFxzKm1hfSAxIH0gfSAqLw0KPiA+PiAr LyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVzIHt2c2V0dmxp XHMrW2EteF1bMC05XSssXHMqemVybyxccyplOCxccyptMixccyp0YSxccypt YX0gMSB9IH0gKi8NCj4gPj4gKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2Vt Ymxlci10aW1lcyB7dnNldHZsaVxzK1thLXhdWzAtOV0rLFxzKnplcm8sXHMq ZTgsXHMqbTEsXHMqdGEsXHMqbWF9IDEgfSB9ICovDQo+ID4+ICsvKiB7IGRn LWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge3ZzZXR2bGlccytbYS14 XVswLTldKyxccyp6ZXJvLFxzKmU4LFxzKm1mMixccyp0YSxccyptYX0gMSB9 IH0gKi8NCj4gPj4gKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10 aW1lcyB7dnNldHZsaVxzK1thLXhdWzAtOV0rLFxzKnplcm8sXHMqZTgsXHMq bWY0LFxzKnRhLFxzKm1hfSAxIH0gfSAqLw0KPiA+PiArLyogeyBkZy1maW5h bCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVzIHt2c2V0dmxpXHMrW2EteF1bMC05 XSssXHMqemVybyxccyplOCxccyptZjgsXHMqdGEsXHMqbWF9IDEgfSB9ICov DQo+ID4+ICsvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMg e3ZsbVwudlxzK3ZbMC05XSssXHMqMFwoW2EteF1bMC05XStcKX0gNyB9IH0g Ki8NCj4gPj4gKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1l cyB7dnNtXC52XHMrdlswLTldKyxccyowXChbYS14XVswLTldK1wpfSAxNCB9 IH0gKi8NCj4gPj4gZGlmZiAtLWdpdCBhL2djYy90cmVlLXNzYS1zY2N2bi5j YyBiL2djYy90cmVlLXNzYS1zY2N2bi5jYw0KPiA+PiBpbmRleCAwMjhiZWRi YzlhMC4uMTlmZGJhOGNmYTIgMTAwNjQ0DQo+ID4+IC0tLSBhL2djYy90cmVl LXNzYS1zY2N2bi5jYw0KPiA+PiArKysgYi9nY2MvdHJlZS1zc2Etc2Njdm4u Y2MNCj4gPj4gQEAgLTQzLDYgKzQzLDcgQEAgYWxvbmcgd2l0aCBHQ0M7IHNl ZSB0aGUgZmlsZSBDT1BZSU5HMy4gIElmIG5vdCBzZWUNCj4gPj4gI2luY2x1 ZGUgImdpbXBsZS1mb2xkLmgiDQo+ID4+ICNpbmNsdWRlICJ0cmVlLWVoLmgi DQo+ID4+ICNpbmNsdWRlICJnaW1wbGlmeS5oIg0KPiA+PiArI2luY2x1ZGUg InRhcmdldC5oIg0KPiA+PiAjaW5jbHVkZSAiZmxhZ3MuaCINCj4gPj4gI2lu Y2x1ZGUgImRvanVtcC5oIg0KPiA+PiAjaW5jbHVkZSAiZXhwbG93LmgiDQo+ ID4+IEBAIC01NjU3LDEwICs1NjU4LDE2IEBAIHZpc2l0X3JlZmVyZW5jZV9v cF9sb2FkICh0cmVlIGxocywgdHJlZSBvcCwgZ2ltcGxlICpzdG10KQ0KPiA+ PiAgICAgaWYgKHJlc3VsdA0KPiA+PiAgICAgICAgICYmICF1c2VsZXNzX3R5 cGVfY29udmVyc2lvbl9wIChUUkVFX1RZUEUgKHJlc3VsdCksIFRSRUVfVFlQ RSAob3ApKSkNCj4gPj4gICAgICAgew0KPiA+PiArICAgICAgbWFjaGluZV9t b2RlIHJlc3VsdF9tb2RlID0gVFlQRV9NT0RFIChUUkVFX1RZUEUgKHJlc3Vs dCkpOw0KPiA+PiArICAgICAgbWFjaGluZV9tb2RlIG9wX21vZGUgPSBUWVBF X01PREUgKFRSRUVfVFlQRSAob3ApKTsNCj4gPj4gKyAgICAgIHBvbHlfdWlu dDE2IHJlc3VsdF9tb2RlX3ByZWNpc2lvbiA9IEdFVF9NT0RFX1BSRUNJU0lP TiAocmVzdWx0X21vZGUpOw0KPiA+PiArICAgICAgcG9seV91aW50MTYgb3Bf bW9kZV9wcmVjaXNpb24gPSBHRVRfTU9ERV9QUkVDSVNJT04gKG9wX21vZGUp Ow0KPiA+PiArDQo+ID4+ICAgICAgICAgLyogQXZvaWQgdGhlIHR5cGUgcHVu bmluZyBpbiBjYXNlIHRoZSByZXN1bHQgbW9kZSBoYXMgcGFkZGluZyB3aGVy ZQ0KPiA+PiAtIHRoZSBvcCB3ZSBsb29rdXAgaGFzIG5vdC4gICovDQo+ID4+ IC0gICAgICBpZiAobWF5YmVfbHQgKEdFVF9NT0RFX1BSRUNJU0lPTiAoVFlQ RV9NT0RFIChUUkVFX1RZUEUgKHJlc3VsdCkpKSwNCj4gPj4gLSAgICAgR0VU X01PREVfUFJFQ0lTSU9OIChUWVBFX01PREUgKFRSRUVfVFlQRSAob3ApKSkp KQ0KPiA+PiArIHRoZSBvcCB3ZSBsb29rdXAgaGFzIG5vdC4NCj4gPj4gKyBB dm9pZCB0aGUgdHlwZSBwdW5uaW5nIGluIGNhc2UgdGhlIHRhcmdldCBtb2Rl IGNhbm5vdCBiZSB0aWVkLiAgKi8NCj4gPj4gKyAgICAgIGlmIChtYXliZV9s dCAocmVzdWx0X21vZGVfcHJlY2lzaW9uLCBvcF9tb2RlX3ByZWNpc2lvbikN Cj4gPj4gKyAgICAgfHwgIXRhcmdldG0ubW9kZXNfdGllYWJsZV9wIChyZXN1 bHRfbW9kZSwgb3BfbW9kZSkpDQo+ID4+IHJlc3VsdCA9IE5VTExfVFJFRTsN Cj4gPj4gICAgICAgICBlbHNlDQo+ID4+IHsNCj4gPj4NCj4gPg0KPg0KPg0K DQotLQ0KUmljaGFyZCBCaWVuZXIgPHJndWVudGhlckBzdXNlLmRlPg0KU1VT RSBTb2Z0d2FyZSBTb2x1dGlvbnMgR2VybWFueSBHbWJILCBGcmFua2Vuc3Ry YXNzZSAxNDYsIDkwNDYxIE51ZXJuYmVyZywNCkdlcm1hbnk7IEdGOiBJdm8g VG90ZXYsIEFuZHJldyBNeWVycywgQW5kcmV3IE1jRG9uYWxkLCBCb3VkaWVu IE1vZXJtYW47DQpIUkIgMzY4MDkgKEFHIE51ZXJuYmVyZykNCg== --_000_BYAPR04MB48249ED48C0328DB3ED6501CB7A39BYAPR04MB4824namp_--