From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtpbguseast3.qq.com (smtpbguseast3.qq.com [54.243.244.52]) by sourceware.org (Postfix) with ESMTPS id 4681F38582BD for ; Thu, 21 Dec 2023 03:50:27 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 4681F38582BD Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=rivai.ai Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=rivai.ai ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 4681F38582BD Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=54.243.244.52 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1703130637; cv=none; b=CmwDmy69NMCAuL8e279rG9HFNkY1wABfjM+/IDGwQStZ9j0sH+sAToNv5pA89P6lQF7VmbGD4Sm1hfJahwVIVh+bqEw05UevRa05urQsnGK9gf6pjZ7C34bL2PvZ48jTQTyfEBLsT/H50sruoSuB5gugueKb+IZ6J7vG/cpbaq8= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1703130637; c=relaxed/simple; bh=QuPG8BvQW0Ej3ikucT2XHXUOEjEXHS6HG9oePy6FOac=; h=Date:From:To:Subject:Mime-Version:Message-ID; b=hcn3u8kWf1HxG4yl7bzR2D/0sfTLgiGZ44CQN/8VFdRJrY0hCLOPpqR7pqRdxeZyisYf6xj8usUJU0rZeKbrcWK5tBwLdBZEtARC5WGJgIXV5qJ9bZPWRZsrsHmUGC0R/nkWHM3c7AktmzfhZH15UJz4+yknrrEeWUDpJovra7k= ARC-Authentication-Results: i=1; server2.sourceware.org X-QQ-mid: bizesmtp74t1703130614tws456ck Received: from LAPTOP-EPITNQBU ( [58.60.1.10]) by bizesmtp.qq.com (ESMTP) with id ; Thu, 21 Dec 2023 11:50:12 +0800 (CST) X-QQ-SSF: 01400000000000G0V000000A0000000 X-QQ-FEAT: PYWpC4lLRU287BZ9r+1AImdl72i95PZyiRkLuJIpggNBQKWjC8vLlj9v0KdVG IRf3d11qhOYyK1L2cilDH6LOrV3SSa8LExY9zmxL0B4C3bDibi2i0NzJqqfW4cohSOCezaK UMqnZ0J8VMv3p4MthMQI4yQ7OcEZZg3IwnBtK3ION1Nth5Gxn3A5a77iXfd2AJ0gtJJI6Ys aXQttqc0qK3ras+/IrNxU4kKJYJBzcyOEQVDNVKFsRmS+cQxdNsOQFhrhB7XV6+WOM3b3Fi BvOCB3kjfLX1YxW4/ZuHtQYxklC+IXqaKMJ1k9zO17ZYLL7NTsaWBcmb6ktjODYpBoNgoDr 1p5fcLSfgcD8K6NTxEtRj2gO7hCBKpOFJomGyaJUjq6dsb8SXGuMVJzwoVXAeOuI8C46Eho mFLhQXa8w+srTouJI1QafyF0z4thjSx/ X-QQ-GoodBg: 2 X-BIZMAIL-ID: 18230754863111750434 Date: Thu, 21 Dec 2023 11:50:13 +0800 From: "juzhe.zhong@rivai.ai" To: wangfeng , gcc-patches Cc: kito.cheng , jeffreyalaw , wangfeng Subject: Re: [PATCH v5 2/3] RISC-V: Add crypto machine descriptions References: <20231221024805.7671-1-wangfeng@eswincomputing.com> X-Priority: 3 X-GUID: B91B83BD-5CBD-4EA4-B0A7-664CECE87686 X-Has-Attach: no X-Mailer: Foxmail 7.2.16.188[cn] Mime-Version: 1.0 Message-ID: <8F26F2A041E40678+2023122111501272800736@rivai.ai> Content-Type: multipart/alternative; boundary="----=_001_NextPart321140371107_=----" X-QQ-SENDSIZE: 520 Feedback-ID: bizesmtp:rivai.ai:qybglogicsvrgz:qybglogicsvrgz7a-one-0 X-Spam-Status: No, score=-7.0 required=5.0 tests=BAYES_00,GIT_PATCH_0,HTML_MESSAGE,KAM_DMARC_STATUS,MIME_BASE64_TEXT,RCVD_IN_BARRACUDACENTRAL,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H4,RCVD_IN_MSPIKE_WL,SCC_10_SHORT_WORD_LINES,SCC_20_SHORT_WORD_LINES,SCC_5_SHORT_WORD_LINES,SPF_HELO_PASS,SPF_PASS,TXREP,T_SCC_BODY_TEXT_LINE 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: This is a multi-part message in MIME format. ------=_001_NextPart321140371107_=---- Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: base64 KyAgICAgICAoYW5kOlZJCisgICAgICAgICAobWF0Y2hfb3BlcmFuZDpWSSAz ICJyZWdpc3Rlcl9vcGVyYW5kIiAgICAgICAgICJ2ciwgdnIsIHZyLCB2ciIp CisgICAgICAgICAobm90OlZJIChtYXRjaF9vcGVyYW5kOlZJIDQgInJlZ2lz dGVyX29wZXJhbmQiICJ2ciwgdnIsIHZyLCB2ciIpKSkNClRoaXMgb3JkZXIg c2hvdWxkIGJlIHN3YXBwZWQgbGlrZSBBUk0gU1ZFOg0KDQooZGVmaW5lX2V4 cGFuZCAiQGNvbmRfYmljPG1vZGU+Ig0KICBbKHNldCAobWF0Y2hfb3BlcmFu ZDpTVkVfRlVMTF9JIDAgInJlZ2lzdGVyX29wZXJhbmQiKQ0KICAodW5zcGVj OlNWRV9GVUxMX0kNCiAgICBbKG1hdGNoX29wZXJhbmQ6PFZQUkVEPiAxICJy ZWdpc3Rlcl9vcGVyYW5kIikNCiAgICAgKGFuZDpTVkVfRlVMTF9JDQogICAg ICAgKG5vdDpTVkVfRlVMTF9JIChtYXRjaF9vcGVyYW5kOlNWRV9GVUxMX0kg MyAicmVnaXN0ZXJfb3BlcmFuZCIpKQ0KICAgICAgIChtYXRjaF9vcGVyYW5k OlNWRV9GVUxMX0kgMiAicmVnaXN0ZXJfb3BlcmFuZCIpKQ0KICAgICAobWF0 Y2hfb3BlcmFuZDpTVkVfRlVMTF9JIDQgImFhcmNoNjRfc2ltZF9yZWdfb3Jf emVybyIpXQ0KICAgIFVOU1BFQ19TRUwpKV0NCiAgIlRBUkdFVF9TVkUiDQop DQoNCg0KT3RoZXJ3aXNlLCBMR1RNLiBCdXQgSSdkIGxpa2UgdG8gZXhwZWN0 IEtpdG8gY2hpbWUgaW4uDQoNClRoYW5rcy4NCg0KDQpqdXpoZS56aG9uZ0By aXZhaS5haQ0KIA0KRnJvbTogRmVuZyBXYW5nDQpEYXRlOiAyMDIzLTEyLTIx IDEwOjQ4DQpUbzogZ2NjLXBhdGNoZXMNCkNDOiBraXRvLmNoZW5nOyBqZWZm cmV5YWxhdzsganV6aGUuemhvbmc7IEZlbmcgV2FuZw0KU3ViamVjdDogW1BB VENIIHY1IDIvM10gUklTQy1WOiBBZGQgY3J5cHRvIG1hY2hpbmUgZGVzY3Jp cHRpb25zDQpQYXRjaCB2NTogQWRkIHZlY19kdXBsaWNhdGUgb3BlcmF0b3Iu IE1ha2UgcmVwb3J0IHJpc2N2LmV4cCB3aXRoDQogICJyaXNjdi1zaW0vLW1h cmNoPXJ2NjRnYy8tbWFiaT1scDY0ZC8tbWNtb2RlbD1tZWRsb3ciIGlzIHBh c3NlZC4NClBhdGNoIHY0OiBBZGQgcHJvY2VzcyBvZiBTRVc9NjQgaW4gUlYz MiBzeXN0ZW0uDQpQYXRjaCB2MzogTW9pZGZ5IGNvbnN0cmFpbnMgZm9yIGNy eXB0byB2ZWN0b3IuDQpQYXRjaCB2MjogQWRkIGNyeXB0byB2ZWN0b3IgaW5z IGludG8gUkFUSU8gYXR0ciBhbmQgdXNlIHZyIGFzDQpkZXN0aW5hdGlvbiBy ZWdpc3Rlci4NCiANClRoaXMgcGF0Y2ggYWRkIHRoZSBjcnlwdG8gbWFjaGlu ZSBkZXNjcmlwdGlvbnModmVjdG9yLWNyeXB0by5tZCkgYW5kDQpzb21lIG5l dyBpdGVyYXRvcnMgd2hpY2ggYXJlIHVzZWQgYnkgY3J5cHRvIHZlY3RvciBl eHQuDQogDQpDby1BdXRob3JlZCBieTogU29uZ2hlIFpodSA8emh1c29uZ2hl QGVzd2luY29tcHV0aW5nLmNvbT4NCkNvLUF1dGhvcmVkIGJ5OiBDaXlhbiBQ YW4gPHBhbmNpeWFuQGVzd2luY29tcHV0aW5nLmNvbT4NCiANCmdjYy9DaGFu Z2VMb2c6DQogDQoqIGNvbmZpZy9yaXNjdi9pdGVyYXRvcnMubWQ6IEFkZCBy b3RhdGUgaW5zbiBuYW1lLg0KKiBjb25maWcvcmlzY3YvcmlzY3YubWQ6IEFk ZCBuZXcgaW5zbnMgbmFtZSBmb3IgY3J5cHRvIHZlY3Rvci4NCiogY29uZmln L3Jpc2N2L3ZlY3Rvci1pdGVyYXRvcnMubWQ6IEFkZCBuZXcgaXRlcmF0b3Jz IGZvciBjcnlwdG8gdmVjdG9yLg0KKiBjb25maWcvcmlzY3YvdmVjdG9yLm1k OiBBZGQgdGhlIGNvcnJlc3BvbmRpbmcgYXR0ciBmb3IgY3J5cHRvIHZlY3Rv ci4NCiogY29uZmlnL3Jpc2N2L3ZlY3Rvci1jcnlwdG8ubWQ6IE5ldyBmaWxl LlRoZSBtYWNoaW5lIGRlc2NyaXB0aW9ucyBmb3IgY3J5cHRvIHZlY3Rvci4N Ci0tLQ0KZ2NjL2NvbmZpZy9yaXNjdi9pdGVyYXRvcnMubWQgICAgICAgIHwg ICA0ICstDQpnY2MvY29uZmlnL3Jpc2N2L3Jpc2N2Lm1kICAgICAgICAgICAg fCAgMzMgKy0NCmdjYy9jb25maWcvcmlzY3YvdmVjdG9yLWNyeXB0by5tZCAg ICB8IDYzNSArKysrKysrKysrKysrKysrKysrKysrKysrKysNCmdjYy9jb25m aWcvcmlzY3YvdmVjdG9yLWl0ZXJhdG9ycy5tZCB8ICA0MSArKw0KZ2NjL2Nv bmZpZy9yaXNjdi92ZWN0b3IubWQgICAgICAgICAgIHwgIDU1ICsrLQ0KNSBm aWxlcyBjaGFuZ2VkLCA3NDcgaW5zZXJ0aW9ucygrKSwgMjEgZGVsZXRpb25z KC0pDQpjcmVhdGUgbW9kZSAxMDA3NTUgZ2NjL2NvbmZpZy9yaXNjdi92ZWN0 b3ItY3J5cHRvLm1kDQogDQpkaWZmIC0tZ2l0IGEvZ2NjL2NvbmZpZy9yaXNj di9pdGVyYXRvcnMubWQgYi9nY2MvY29uZmlnL3Jpc2N2L2l0ZXJhdG9ycy5t ZA0KaW5kZXggZWNmMDMzZjJmYTcuLmYzMzJmYmE3MDMxIDEwMDY0NA0KLS0t IGEvZ2NjL2NvbmZpZy9yaXNjdi9pdGVyYXRvcnMubWQNCisrKyBiL2djYy9j b25maWcvcmlzY3YvaXRlcmF0b3JzLm1kDQpAQCAtMzA0LDcgKzMwNCw5IEBA DQoodW1heCAibWF4dSIpDQooY2x6ICJjbHoiKQ0KKGN0eiAiY3R6IikNCi0g KHBvcGNvdW50ICJjcG9wIildKQ0KKyAocG9wY291bnQgImNwb3AiKQ0KKyAo cm90YXRlICJyb2wiKQ0KKyAocm90YXRlcnQgInJvciIpXSkNCjs7IC0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0NCjs7IEludCBJdGVyYXRvcnMuDQpkaWZmIC0t Z2l0IGEvZ2NjL2NvbmZpZy9yaXNjdi9yaXNjdi5tZCBiL2djYy9jb25maWcv cmlzY3YvcmlzY3YubWQNCmluZGV4IGVlOGI3MWMyMmFhLi44ODAxOWE0NmE1 MyAxMDA2NDQNCi0tLSBhL2djYy9jb25maWcvcmlzY3YvcmlzY3YubWQNCisr KyBiL2djYy9jb25maWcvcmlzY3YvcmlzY3YubWQNCkBAIC00MjcsNiArNDI3 LDM0IEBADQo7OyB2Y29tcHJlc3MgICAgdmVjdG9yIGNvbXByZXNzIGluc3Ry dWN0aW9uDQo7OyB2bW92ICAgICAgICAgd2hvbGUgdmVjdG9yIHJlZ2lzdGVy IG1vdmUNCjs7IHZlY3RvciAgICAgICB1bmtub3duIHZlY3RvciBpbnN0cnVj dGlvbg0KKzs7IDE3LiBDcnlwdG8gVmVjdG9yIGluc3RydWN0aW9ucw0KKzs7 IHZhbmRuICAgICAgICBjcnlwdG8gdmVjdG9yIGJpdHdpc2UgYW5kLW5vdCBp bnN0cnVjdGlvbnMNCis7OyB2YnJldiAgICAgICAgY3J5cHRvIHZlY3RvciBy ZXZlcnNlIGJpdHMgaW4gZWxlbWVudHMgaW5zdHJ1Y3Rpb25zDQorOzsgdmJy ZXY4ICAgICAgIGNyeXB0byB2ZWN0b3IgcmV2ZXJzZSBiaXRzIGluIGJ5dGVz IGluc3RydWN0aW9ucw0KKzs7IHZyZXY4ICAgICAgICBjcnlwdG8gdmVjdG9y IHJldmVyc2UgYnl0ZXMgaW5zdHJ1Y3Rpb25zDQorOzsgdmNseiAgICAgICAg IGNyeXB0byB2ZWN0b3IgY291bnQgbGVhZGluZyBaZXJvcyBpbnN0cnVjdGlv bnMNCis7OyB2Y3R6ICAgICAgICAgY3J5cHRvIHZlY3RvciBjb3VudCBscmFp bGluZyBaZXJvcyBpbnN0cnVjdGlvbnMNCis7OyB2cm9sICAgICAgICAgY3J5 cHRvIHZlY3RvciByb3RhdGUgbGVmdCBpbnN0cnVjdGlvbnMNCis7OyB2cm9y ICAgICAgICAgY3J5cHRvIHZlY3RvciByb3RhdGUgcmlnaHQgaW5zdHJ1Y3Rp b25zDQorOzsgdndzbGwgICAgICAgIGNyeXB0byB2ZWN0b3Igd2lkZW5pbmcg c2hpZnQgbGVmdCBsb2dpY2FsIGluc3RydWN0aW9ucw0KKzs7IHZjbG11bCAg ICAgICBjcnlwdG8gdmVjdG9yIGNhcnJ5LWxlc3MgbXVsdGlwbHkgLSByZXR1 cm4gbG93IGhhbGYgaW5zdHJ1Y3Rpb25zDQorOzsgdmNsbXVsaCAgICAgIGNy eXB0byB2ZWN0b3IgY2FycnktbGVzcyBtdWx0aXBseSAtIHJldHVybiBoaWdo IGhhbGYgaW5zdHJ1Y3Rpb25zDQorOzsgdmdoc2ggICAgICAgIGNyeXB0byB2 ZWN0b3IgYWRkLW11bHRpcGx5IG92ZXIgR0hBU0ggR2Fsb2lzLUZpZWxkIGlu c3RydWN0aW9ucw0KKzs7IHZnbXVsICAgICAgICBjcnlwdG8gdmVjdG9yIG11 bHRpcGx5IG92ZXIgR0hBU0ggR2Fsb2lzLUZpZWxkIGluc3RydW1jdGlvbnMN Cis7OyB2YWVzZWYgICAgICAgY3J5cHRvIHZlY3RvciBBRVMgZmluYWwtcm91 bmQgZW5jcnlwdGlvbiBpbnN0cnVjdGlvbnMNCis7OyB2YWVzZW0gICAgICAg Y3J5cHRvIHZlY3RvciBBRVMgbWlkZGxlLXJvdW5kIGVuY3J5cHRpb24gaW5z dHJ1Y3Rpb25zDQorOzsgdmFlc2RmICAgICAgIGNyeXB0byB2ZWN0b3IgQUVT IGZpbmFsLXJvdW5kIGRlY3J5cHRpb24gaW5zdHJ1Y3Rpb25zDQorOzsgdmFl c2RtICAgICAgIGNyeXB0byB2ZWN0b3IgQUVTIG1pZGRsZS1yb3VuZCBkZWNy eXB0aW9uIGluc3RydWN0aW9ucw0KKzs7IHZhZXNrZjEgICAgICBjcnlwdG8g dmVjdG9yIEFFUy0xMjggRm9yd2FyZCBLZXlTY2hlZHVsZSBnZW5lcmF0aW9u IGluc3RydWN0aW9ucw0KKzs7IHZhZXNrZjIgICAgICBjcnlwdG8gdmVjdG9y IEFFUy0yNTYgRm9yd2FyZCBLZXlTY2hlZHVsZSBnZW5lcmF0aW9uIGluc3Ry dWN0aW9ucw0KKzs7IHZhZXN6ICAgICAgICBjcnlwdG8gdmVjdG9yIEFFUyBy b3VuZCB6ZXJvIGVuY3J5cHRpb24vZGVjcnlwdGlvbiBpbnN0cnVjdGlvbnMN Cis7OyB2c2hhMm1zICAgICAgY3J5cHRvIHZlY3RvciBTSEEtMiBtZXNzYWdl IHNjaGVkdWxlIGluc3RydWN0aW9ucw0KKzs7IHZzaGEyY2ggICAgICBjcnlw dG8gdmVjdG9yIFNIQS0yIHR3byByb3VuZHMgb2YgY29tcHJlc3Npb24gaW5z dHJ1Y3Rpb25zDQorOzsgdnNoYTJjbCAgICAgIGNyeXB0byB2ZWN0b3IgU0hB LTIgdHdvIHJvdW5kcyBvZiBjb21wcmVzc2lvbiBpbnN0cnVjdGlvbnMNCis7 OyB2c200ayAgICAgICAgY3J5cHRvIHZlY3RvciBTTTQgS2V5RXhwYW5zaW9u IGluc3RydWN0aW9ucw0KKzs7IHZzbTRyICAgICAgICBjcnlwdG8gdmVjdG9y IFNNNCBSb3VuZHMgaW5zdHJ1Y3Rpb25zDQorOzsgdnNtM21lICAgICAgIGNy eXB0byB2ZWN0b3IgU00zIE1lc3NhZ2UgRXhwYW5zaW9uIGluc3RydWN0aW9u cw0KKzs7IHZzbTNjICAgICAgICBjcnlwdG8gdmVjdG9yIFNNMyBDb21wcmVz c2lvbiBpbnN0cnVjdGlvbnMNCihkZWZpbmVfYXR0ciAidHlwZSINCiAgICJ1 bmtub3duLGJyYW5jaCxqdW1wLGphbHIscmV0LGNhbGwsbG9hZCxmcGxvYWQs c3RvcmUsZnBzdG9yZSwNCiAgICBtdGMsbWZjLGNvbnN0LGFyaXRoLGxvZ2lj YWwsc2hpZnQsc2x0LGltdWwsaWRpdixtb3ZlLGZtb3ZlLGZhZGQsZm11bCwN CkBAIC00NDYsNyArNDc0LDkgQEANCiAgICB2aXJlZCx2aXdyZWQsdmZyZWR1 LHZmcmVkbyx2ZndyZWR1LHZmd3JlZG8sDQogICAgdm1hbHUsdm1wb3Asdm1m ZnMsdm1zZnMsdm1pb3RhLHZtaWR4LHZpbW92dngsdmltb3Z4dix2Zm1vdnZm LHZmbW92ZnYsDQogICAgdnNsaWRldXAsdnNsaWRlZG93bix2aXNsaWRlMXVw LHZpc2xpZGUxZG93bix2ZnNsaWRlMXVwLHZmc2xpZGUxZG93biwNCi0gICB2 Z2F0aGVyLHZjb21wcmVzcyx2bW92LHZlY3RvciINCisgICB2Z2F0aGVyLHZj b21wcmVzcyx2bW92LHZlY3Rvcix2YW5kbix2YnJldix2YnJldjgsdnJldjgs dmNseix2Y3R6LHZjcG9wLHZyb2wsdnJvcix2d3NsbCwNCisgICB2Y2xtdWws dmNsbXVsaCx2Z2hzaCx2Z211bCx2YWVzZWYsdmFlc2VtLHZhZXNkZix2YWVz ZG0sdmFlc2tmMSx2YWVza2YyLHZhZXN6LA0KKyAgIHZzaGEybXMsdnNoYTJj aCx2c2hhMmNsLHZzbTRrLHZzbTRyLHZzbTNtZSx2c20zYyINCiAgIChjb25k IFsoZXFfYXR0ciAiZ290IiAibG9hZCIpIChjb25zdF9zdHJpbmcgImxvYWQi KQ0KOzsgSWYgYSBkb3VibGV3b3JkIG1vdmUgdXNlcyB0aGVzZSBleHBlbnNp dmUgaW5zdHJ1Y3Rpb25zLA0KQEAgLTM3NzcsNiArMzgwNyw3IEBADQooaW5j bHVkZSAidGhlYWQubWQiKQ0KKGluY2x1ZGUgImdlbmVyaWMtb29vLm1kIikN CihpbmNsdWRlICJ2ZWN0b3IubWQiKQ0KKyhpbmNsdWRlICJ2ZWN0b3ItY3J5 cHRvLm1kIikNCihpbmNsdWRlICJ6aWNvbmQubWQiKQ0KKGluY2x1ZGUgInNm Yi5tZCIpDQooaW5jbHVkZSAiemMubWQiKQ0KZGlmZiAtLWdpdCBhL2djYy9j b25maWcvcmlzY3YvdmVjdG9yLWNyeXB0by5tZCBiL2djYy9jb25maWcvcmlz Y3YvdmVjdG9yLWNyeXB0by5tZA0KbmV3IGZpbGUgbW9kZSAxMDA3NTUNCmlu ZGV4IDAwMDAwMDAwMDAwLi45YWQyOTJkNGRjYQ0KLS0tIC9kZXYvbnVsbA0K KysrIGIvZ2NjL2NvbmZpZy9yaXNjdi92ZWN0b3ItY3J5cHRvLm1kDQpAQCAt MCwwICsxLDYzNSBAQA0KKyhkZWZpbmVfY19lbnVtICJ1bnNwZWMiIFsNCisg ICAgOzsgWnZiYiB1bnNwZWNzDQorICAgIFVOU1BFQ19WQlJFVg0KKyAgICBV TlNQRUNfVkJSRVY4DQorICAgIFVOU1BFQ19WUkVWOA0KKyAgICBVTlNQRUNf VkNMTVVMDQorICAgIFVOU1BFQ19WQ0xNVUxIDQorICAgIFVOU1BFQ19WR0hT SA0KKyAgICBVTlNQRUNfVkdNVUwNCisgICAgVU5TUEVDX1ZBRVNFRg0KKyAg ICBVTlNQRUNfVkFFU0VGVlYNCisgICAgVU5TUEVDX1ZBRVNFRlZTDQorICAg IFVOU1BFQ19WQUVTRU0NCisgICAgVU5TUEVDX1ZBRVNFTVZWDQorICAgIFVO U1BFQ19WQUVTRU1WUw0KKyAgICBVTlNQRUNfVkFFU0RGDQorICAgIFVOU1BF Q19WQUVTREZWVg0KKyAgICBVTlNQRUNfVkFFU0RGVlMNCisgICAgVU5TUEVD X1ZBRVNETQ0KKyAgICBVTlNQRUNfVkFFU0RNVlYNCisgICAgVU5TUEVDX1ZB RVNETVZTDQorICAgIFVOU1BFQ19WQUVTWg0KKyAgICBVTlNQRUNfVkFFU1pW Vk5VTEwNCisgICAgVU5TUEVDX1ZBRVNaVlMNCisgICAgVU5TUEVDX1ZBRVNL RjENCisgICAgVU5TUEVDX1ZBRVNLRjINCisgICAgVU5TUEVDX1ZTSEEyTVMN CisgICAgVU5TUEVDX1ZTSEEyQ0gNCisgICAgVU5TUEVDX1ZTSEEyQ0wNCisg ICAgVU5TUEVDX1ZTTTRLDQorICAgIFVOU1BFQ19WU000Ug0KKyAgICBVTlNQ RUNfVlNNNFJWVg0KKyAgICBVTlNQRUNfVlNNNFJWUw0KKyAgICBVTlNQRUNf VlNNM01FDQorICAgIFVOU1BFQ19WU00zQw0KK10pDQorDQorKGRlZmluZV9p bnRfYXR0ciByZXYgIFsoVU5TUEVDX1ZCUkVWICJicmV2IikgKFVOU1BFQ19W QlJFVjggImJyZXY4IikgKFVOU1BFQ19WUkVWOCAicmV2OCIpXSkNCisNCiso ZGVmaW5lX2ludF9hdHRyIGggWyhVTlNQRUNfVkNMTVVMICIiKSAoVU5TUEVD X1ZDTE1VTEggImgiKV0pDQorDQorKGRlZmluZV9pbnRfYXR0ciB2dl9pbnNf bmFtZSBbKFVOU1BFQ19WR01VTCAgICAiZ211bCIgKSAoVU5TUEVDX1ZBRVNF RlZWICJhZXNlZiIpDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg KFVOU1BFQ19WQUVTRU1WViAiYWVzZW0iKSAoVU5TUEVDX1ZBRVNERlZWICJh ZXNkZiIpDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKFVOU1BF Q19WQUVTRE1WViAiYWVzZG0iKSAoVU5TUEVDX1ZBRVNFRlZTICJhZXNlZiIp DQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKFVOU1BFQ19WQUVT RU1WUyAiYWVzZW0iKSAoVU5TUEVDX1ZBRVNERlZTICJhZXNkZiIpDQorICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgKFVOU1BFQ19WQUVTRE1WUyAi YWVzZG0iKSAoVU5TUEVDX1ZBRVNaVlMgICJhZXN6IiApDQorICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgKFVOU1BFQ19WU000UlZWICAic200ciIg KSAoVU5TUEVDX1ZTTTRSVlMgICJzbTRyIiApXSkNCisNCisoZGVmaW5lX2lu dF9hdHRyIHZ2X2luczFfbmFtZSBbKFVOU1BFQ19WR0hTSCAiZ2hzaCIpICAg ICAoVU5TUEVDX1ZTSEEyTVMgInNoYTJtcyIpDQorICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIChVTlNQRUNfVlNIQTJDSCAic2hhMmNoIikgKFVO U1BFQ19WU0hBMkNMICJzaGEyY2wiKV0pDQorDQorKGRlZmluZV9pbnRfYXR0 ciB2aV9pbnNfbmFtZSBbKFVOU1BFQ19WQUVTS0YxICJhZXNrZjEiKSAoVU5T UEVDX1ZTTTRLICJzbTRrIildKQ0KKw0KKyhkZWZpbmVfaW50X2F0dHIgdmlf aW5zMV9uYW1lIFsoVU5TUEVDX1ZBRVNLRjIgImFlc2tmMiIpIChVTlNQRUNf VlNNM0MgInNtM2MiKV0pDQorDQorKGRlZmluZV9pbnRfYXR0ciBpbnNfdHlw ZSBbKFVOU1BFQ19WR01VTCAgICAidnYiKSAoVU5TUEVDX1ZBRVNFRlZWICJ2 diIpDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgKFVOU1BFQ19WQUVT RU1WViAidnYiKSAoVU5TUEVDX1ZBRVNERlZWICJ2diIpDQorICAgICAgICAg ICAgICAgICAgICAgICAgICAgKFVOU1BFQ19WQUVTRE1WViAidnYiKSAoVU5T UEVDX1ZBRVNFRlZTICJ2cyIpDQorICAgICAgICAgICAgICAgICAgICAgICAg ICAgKFVOU1BFQ19WQUVTRU1WUyAidnMiKSAoVU5TUEVDX1ZBRVNERlZTICJ2 cyIpDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgKFVOU1BFQ19WQUVT RE1WUyAidnMiKSAoVU5TUEVDX1ZBRVNaVlMgICJ2cyIpDQorICAgICAgICAg ICAgICAgICAgICAgICAgICAgKFVOU1BFQ19WU000UlZWICAidnYiKSAoVU5T UEVDX1ZTTTRSVlMgICJ2cyIpXSkNCisNCisoZGVmaW5lX2ludF9pdGVyYXRv ciBVTlNQRUNfVlJCQjggW1VOU1BFQ19WQlJFViBVTlNQRUNfVkJSRVY4IFVO U1BFQ19WUkVWOF0pDQorDQorKGRlZmluZV9pbnRfaXRlcmF0b3IgVU5TUEVD X0NMTVVMIFtVTlNQRUNfVkNMTVVMIFVOU1BFQ19WQ0xNVUxIXSkNCisNCiso ZGVmaW5lX2ludF9pdGVyYXRvciBVTlNQRUNfQ1JZUFRPX1ZWIFtVTlNQRUNf VkdNVUwgICAgVU5TUEVDX1ZBRVNFRlZWIFVOU1BFQ19WQUVTRU1WVg0KKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFVOU1BFQ19W QUVTREZWViBVTlNQRUNfVkFFU0RNVlYgVU5TUEVDX1ZBRVNFRlZTDQorICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVU5TUEVDX1ZB RVNFTVZTIFVOU1BFQ19WQUVTREZWUyBVTlNQRUNfVkFFU0RNVlMNCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBVTlNQRUNfVkFF U1pWUyAgVU5TUEVDX1ZTTTRSVlYgIFVOU1BFQ19WU000UlZTXSkNCisNCiso ZGVmaW5lX2ludF9pdGVyYXRvciBVTlNQRUNfVkdOSEFCIFtVTlNQRUNfVkdI U0ggVU5TUEVDX1ZTSEEyTVMgVU5TUEVDX1ZTSEEyQ0ggVU5TUEVDX1ZTSEEy Q0xdKQ0KKw0KKyhkZWZpbmVfaW50X2l0ZXJhdG9yIFVOU1BFQ19DUllQVE9f VkkgW1VOU1BFQ19WQUVTS0YxIFVOU1BFQ19WU000S10pDQorDQorKGRlZmlu ZV9pbnRfaXRlcmF0b3IgVU5TUEVDX0NSWVBUT19WSTEgW1VOU1BFQ19WQUVT S0YyIFVOU1BFQ19WU00zQ10pDQorDQorOzsgenZiYiBpbnN0cnVjdGlvbnMg cGF0dGVybnMuDQorOzsgdmFuZG4udnYgdmFuZG4udnggdnJvbC52diB2cm9s LnZ4DQorOzsgdnJvci52diB2cm9yLnZ4IHZyb3IudmkNCis7OyB2d3NsbC52 diB2d3NsbC52eCB2d3NsbC52aQ0KKyhkZWZpbmVfaW5zbiAiQHByZWRfdmFu ZG48bW9kZT4iDQorICBbKHNldCAobWF0Y2hfb3BlcmFuZDpWSSAwICJyZWdp c3Rlcl9vcGVyYW5kIiAgICAgICAgICI9dmQsIHZyLCB2ZCwgdnIiKQ0KKyAg ICAgKGlmX3RoZW5fZWxzZTpWSQ0KKyAgICAgICAodW5zcGVjOjxWTT4NCisg ICAgICAgICBbKG1hdGNoX29wZXJhbmQ6PFZNPiAxICJ2ZWN0b3JfbWFza19v cGVyYW5kIiAgICJ2bSxXYzEsIHZtLFdjMSIpDQorICAgICAgICAgIChtYXRj aF9vcGVyYW5kIDUgInZlY3Rvcl9sZW5ndGhfb3BlcmFuZCIgICAgICAickss IHJLLCBySywgcksiKQ0KKyAgICAgICAgICAobWF0Y2hfb3BlcmFuZCA2ICJj b25zdF9pbnRfb3BlcmFuZCIgICAgICAgICAgIiBpLCAgaSwgIGksICBpIikN CisgICAgICAgICAgKG1hdGNoX29wZXJhbmQgNyAiY29uc3RfaW50X29wZXJh bmQiICAgICAgICAgICIgaSwgIGksICBpLCAgaSIpDQorICAgICAgICAgICht YXRjaF9vcGVyYW5kIDggImNvbnN0X2ludF9vcGVyYW5kIiAgICAgICAgICAi IGksICBpLCAgaSwgIGkiKQ0KKyAgICAgICAgICAocmVnOlNJIFZMX1JFR05V TSkNCisgICAgICAgICAgKHJlZzpTSSBWVFlQRV9SRUdOVU0pXSBVTlNQRUNf VlBSRURJQ0FURSkNCisgICAgICAgKGFuZDpWSQ0KKyAgICAgICAgIChtYXRj aF9vcGVyYW5kOlZJIDMgInJlZ2lzdGVyX29wZXJhbmQiICAgICAgICAgInZy LCB2ciwgdnIsIHZyIikNCisgICAgICAgICAobm90OlZJIChtYXRjaF9vcGVy YW5kOlZJIDQgInJlZ2lzdGVyX29wZXJhbmQiICJ2ciwgdnIsIHZyLCB2ciIp KSkNCisgICAgICAgKG1hdGNoX29wZXJhbmQ6VkkgMiAidmVjdG9yX21lcmdl X29wZXJhbmQiICAgICAgICJ2dSwgdnUsICAwLCAgMCIpKSldDQorICAiVEFS R0VUX1pWQkIgfHwgVEFSR0VUX1pWS0IiDQorICAidmFuZG4udnZcdCUwLCUz LCU0JXAxIg0KKyAgWyhzZXRfYXR0ciAidHlwZSIgInZhbmRuIikNCisgICAo c2V0X2F0dHIgIm1vZGUiICI8TU9ERT4iKV0pDQorDQorKGRlZmluZV9pbnNu ICJAcHJlZF92YW5kbjxtb2RlPl9zY2FsYXIiDQorICBbKHNldCAobWF0Y2hf b3BlcmFuZDpWSV9RSFMgMCAicmVnaXN0ZXJfb3BlcmFuZCIgICAgICI9dmQs IHZyLHZkLCB2ciIpDQorICAgICAoaWZfdGhlbl9lbHNlOlZJX1FIUw0KKyAg ICAgICAodW5zcGVjOjxWTT4NCisgICAgICAgICBbKG1hdGNoX29wZXJhbmQ6 PFZNPiAxICJ2ZWN0b3JfbWFza19vcGVyYW5kIiAgIiB2bSxXYzEsdm0sV2Mx IikNCisgICAgICAgICAgKG1hdGNoX29wZXJhbmQgNSAidmVjdG9yX2xlbmd0 aF9vcGVyYW5kIiAgICAgIiBySywgckssckssIHJLIikNCisgICAgICAgICAg KG1hdGNoX29wZXJhbmQgNiAiY29uc3RfaW50X29wZXJhbmQiICAgICAgICAg IiAgaSwgIGksIGksICBpIikNCisgICAgICAgICAgKG1hdGNoX29wZXJhbmQg NyAiY29uc3RfaW50X29wZXJhbmQiICAgICAgICAgIiAgaSwgIGksIGksICBp IikNCisgICAgICAgICAgKG1hdGNoX29wZXJhbmQgOCAiY29uc3RfaW50X29w ZXJhbmQiICAgICAgICAgIiAgaSwgIGksIGksICBpIikNCisgICAgICAgICAg KHJlZzpTSSBWTF9SRUdOVU0pDQorICAgICAgICAgIChyZWc6U0kgVlRZUEVf UkVHTlVNKV0gVU5TUEVDX1ZQUkVESUNBVEUpDQorICAgICAgIChhbmQ6Vklf UUhTDQorICAgICAgICAgKG5vdDpWSV9RSFMNCisgICAgICAgICAgICh2ZWNf ZHVwbGljYXRlOlZJX1FIUw0KKyAgICAgICAgICAgICAobWF0Y2hfb3BlcmFu ZDo8VkVMPiA0ICJyZWdpc3Rlcl9vcGVyYW5kIiAiIHIsICByLCByLCAgciIp KSkNCisgICAgICAgICAobWF0Y2hfb3BlcmFuZDpWSV9RSFMgMyAicmVnaXN0 ZXJfb3BlcmFuZCIgICAgInZyLCB2cix2ciwgdnIiKSkNCisgICAgICAgKG1h dGNoX29wZXJhbmQ6VklfUUhTIDIgInZlY3Rvcl9tZXJnZV9vcGVyYW5kIiAg InZ1LCB2dSwgMCwgIDAiKSkpXQ0KKyAgIlRBUkdFVF9aVkJCIHx8IFRBUkdF VF9aVktCIg0KKyAgInZhbmRuLnZ4XHQlMCwlMywlNCVwMSINCisgIFsoc2V0 X2F0dHIgInR5cGUiICJ2YW5kbiIpDQorICAgKHNldF9hdHRyICJtb2RlIiAi PE1PREU+IildKQ0KKw0KKzs7IEhhbmRsZSBHRVRfTU9ERV9JTk5FUiAobW9k ZSkgPSBESW1vZGUuIFdlIG5lZWQgdG8gc3BsaXQgdGhlbSBzaW5jZQ0KKzs7 IHdlIG5lZWQgdG8gZGVhbCB3aXRoIFNFVyA9IDY0IGluIFJWMzIgc3lzdGVt Lg0KKyhkZWZpbmVfZXhwYW5kICJAcHJlZF92YW5kbjxtb2RlPl9zY2FsYXIi DQorICBbKHNldCAobWF0Y2hfb3BlcmFuZDpWSV9EIDAgInJlZ2lzdGVyX29w ZXJhbmQiKQ0KKyAgICAgKGlmX3RoZW5fZWxzZTpWSV9EDQorICAgICAgICh1 bnNwZWM6PFZNPg0KKyAgICAgICAgIFsobWF0Y2hfb3BlcmFuZDo8Vk0+IDEg InZlY3Rvcl9tYXNrX29wZXJhbmQiKQ0KKyAgICAgICAgICAobWF0Y2hfb3Bl cmFuZCA1ICJ2ZWN0b3JfbGVuZ3RoX29wZXJhbmQiKQ0KKyAgICAgICAgICAo bWF0Y2hfb3BlcmFuZCA2ICJjb25zdF9pbnRfb3BlcmFuZCIpDQorICAgICAg ICAgIChtYXRjaF9vcGVyYW5kIDcgImNvbnN0X2ludF9vcGVyYW5kIikNCisg ICAgICAgICAgKG1hdGNoX29wZXJhbmQgOCAiY29uc3RfaW50X29wZXJhbmQi KQ0KKyAgICAgICAgICAocmVnOlNJIFZMX1JFR05VTSkNCisgICAgICAgICAg KHJlZzpTSSBWVFlQRV9SRUdOVU0pXSBVTlNQRUNfVlBSRURJQ0FURSkNCisg ICAgICAgKGFuZDpWSV9EDQorICAgICAgICAgKG5vdDpWSV9EDQorICAgICAg ICAgICAodmVjX2R1cGxpY2F0ZTpWSV9EDQorICAgICAgICAgICAgIChtYXRj aF9vcGVyYW5kOjxWRUw+IDQgInJlZ19vcl9pbnRfb3BlcmFuZCIpKSkNCisg ICAgICAgICAobWF0Y2hfb3BlcmFuZDpWSV9EIDMgInJlZ2lzdGVyX29wZXJh bmQiKSkNCisgICAgICAgKG1hdGNoX29wZXJhbmQ6VklfRCAyICJ2ZWN0b3Jf bWVyZ2Vfb3BlcmFuZCIpKSldDQorICAiVEFSR0VUX1pWQkIgfHwgVEFSR0VU X1pWS0IiDQorew0KKyAgaWYgKHJpc2N2X3ZlY3Rvcjo6c2V3NjRfc2NhbGFy X2hlbHBlciAoDQorIG9wZXJhbmRzLA0KKyAvKiBzY2FsYXIgb3AgKi8mb3Bl cmFuZHNbNF0sDQorIC8qIHZsICovb3BlcmFuZHNbNV0sDQorIDxNT0RFPm1v ZGUsDQorIGZhbHNlLA0KKyBbXSAocnR4ICpvcGVyYW5kcywgcnR4IGJvYXJk Y2FzdF9zY2FsYXIpIHsNCisgICBlbWl0X2luc24gKGdlbl9wcmVkX3ZhbmRu PG1vZGU+IChvcGVyYW5kc1swXSwgb3BlcmFuZHNbMV0sDQorICAgICAgICBv cGVyYW5kc1syXSwgb3BlcmFuZHNbM10sIGJvYXJkY2FzdF9zY2FsYXIsIG9w ZXJhbmRzWzVdLA0KKyAgICAgICAgb3BlcmFuZHNbNl0sIG9wZXJhbmRzWzdd LCBvcGVyYW5kc1s4XSkpOw0KKyAgICAgICAgfSwNCisgICAgICAgIChyaXNj dl92ZWN0b3I6OmF2bF90eXBlKSBJTlRWQUwgKG9wZXJhbmRzWzhdKSkpDQor ICAgIERPTkU7DQorfSkNCisNCisoZGVmaW5lX2luc24gIipwcmVkX3ZhbmRu PG1vZGU+X3NjYWxhciINCisgIFsoc2V0IChtYXRjaF9vcGVyYW5kOlZJX0Qg MCAicmVnaXN0ZXJfb3BlcmFuZCIgICAgICAgICI9dmQsIHZyLHZkLCB2ciIp DQorICAgICAoaWZfdGhlbl9lbHNlOlZJX0QNCisgICAgICAgKHVuc3BlYzo8 Vk0+DQorICAgICAgICAgWyhtYXRjaF9vcGVyYW5kOjxWTT4gMSAidmVjdG9y X21hc2tfb3BlcmFuZCIgICAiIHZtLFdjMSx2bSxXYzEiKQ0KKyAgICAgICAg ICAobWF0Y2hfb3BlcmFuZCA1ICJ2ZWN0b3JfbGVuZ3RoX29wZXJhbmQiICAg ICAgIiBySywgckssckssIHJLIikNCisgICAgICAgICAgKG1hdGNoX29wZXJh bmQgNiAiY29uc3RfaW50X29wZXJhbmQiICAgICAgICAgICIgaSwgICBpLCBp LCAgaSIpDQorICAgICAgICAgIChtYXRjaF9vcGVyYW5kIDcgImNvbnN0X2lu dF9vcGVyYW5kIiAgICAgICAgICAiIGksICAgaSwgaSwgIGkiKQ0KKyAgICAg ICAgICAobWF0Y2hfb3BlcmFuZCA4ICJjb25zdF9pbnRfb3BlcmFuZCIgICAg ICAgICAgIiBpLCAgIGksIGksICBpIikNCisgICAgICAgICAgKHJlZzpTSSBW TF9SRUdOVU0pDQorICAgICAgICAgIChyZWc6U0kgVlRZUEVfUkVHTlVNKV0g VU5TUEVDX1ZQUkVESUNBVEUpDQorICAgICAgIChhbmQ6VklfRA0KKyAgICAg ICAgIChub3Q6VklfRA0KKyAgICAgICAgICAgKHZlY19kdXBsaWNhdGU6Vklf RA0KKyAgICAgICAgICAgICAobWF0Y2hfb3BlcmFuZDo8VkVMPiA0ICJyZWdf b3JfMF9vcGVyYW5kIiAiIHJKLCBySixySiwgckoiKSkpDQorICAgICAgICAg KG1hdGNoX29wZXJhbmQ6VklfRCAzICJyZWdpc3Rlcl9vcGVyYW5kIiAgICAg ICIgdnIsIHZyLHZyLCB2ciIpKQ0KKyAgICAgICAobWF0Y2hfb3BlcmFuZDpW SV9EIDIgInZlY3Rvcl9tZXJnZV9vcGVyYW5kIiAgICAiIHZ1LCB2dSwgMCwg IDAiKSkpXQ0KKyAgIlRBUkdFVF9aVkJCIHx8IFRBUkdFVF9aVktCIg0KKyAg InZhbmRuLnZ4XHQlMCwlMywlejQlcDEiDQorICBbKHNldF9hdHRyICJ0eXBl IiAidmFuZG4iKQ0KKyAgIChzZXRfYXR0ciAibW9kZSIgIjxNT0RFPiIpXSkN CisNCisoZGVmaW5lX2luc24gIipwcmVkX3ZhbmRuPG1vZGU+X2V4dGVuZGVk X3NjYWxhciINCisgIFsoc2V0IChtYXRjaF9vcGVyYW5kOlZJX0QgMCAicmVn aXN0ZXJfb3BlcmFuZCIgICAgICAgICAgICAiPXZkLCB2cix2ZCwgdnIiKQ0K KyAgICAgKGlmX3RoZW5fZWxzZTpWSV9EDQorICAgICAgICh1bnNwZWM6PFZN Pg0KKyAgICAgICAgIFsobWF0Y2hfb3BlcmFuZDo8Vk0+IDEgInZlY3Rvcl9t YXNrX29wZXJhbmQiICAgICAgICIgdm0sV2MxLHZtLFdjMSIpDQorICAgICAg ICAgIChtYXRjaF9vcGVyYW5kIDUgInZlY3Rvcl9sZW5ndGhfb3BlcmFuZCIg ICAgICAgICAgIiBySywgckssckssIHJLIikNCisgICAgICAgICAgKG1hdGNo X29wZXJhbmQgNiAiY29uc3RfaW50X29wZXJhbmQiICAgICAgICAgICAgICAi IGksICAgaSwgaSwgIGkiKQ0KKyAgICAgICAgICAobWF0Y2hfb3BlcmFuZCA3 ICJjb25zdF9pbnRfb3BlcmFuZCIgICAgICAgICAgICAgICIgaSwgICBpLCBp LCAgaSIpDQorICAgICAgICAgIChtYXRjaF9vcGVyYW5kIDggImNvbnN0X2lu dF9vcGVyYW5kIiAgICAgICAgICAgICAgIiBpLCAgIGksIGksICBpIikNCisg ICAgICAgICAgKHJlZzpTSSBWTF9SRUdOVU0pDQorICAgICAgICAgIChyZWc6 U0kgVlRZUEVfUkVHTlVNKV0gVU5TUEVDX1ZQUkVESUNBVEUpDQorICAgICAg IChhbmQ6VklfRA0KKyAgICAgICAgIChub3Q6VklfRA0KKyAgICAgICAgICAg KHZlY19kdXBsaWNhdGU6VklfRA0KKyAgICAgICAgICAgICAoc2lnbl9leHRl bmQ6PFZFTD4NCisgICAgICAgICAgICAgICAobWF0Y2hfb3BlcmFuZDo8VlNV QkVMPiA0ICJyZWdfb3JfMF9vcGVyYW5kIiAiIHJKLCBySixySiwgckoiKSkp KQ0KKyAgICAgICAgIChtYXRjaF9vcGVyYW5kOlZJX0QgMyAicmVnaXN0ZXJf b3BlcmFuZCIgICAgICAgICAgICIgdnIsIHZyLHZyLCB2ciIpKQ0KKyAgICAg ICAobWF0Y2hfb3BlcmFuZDpWSV9EIDIgInZlY3Rvcl9tZXJnZV9vcGVyYW5k IiAgICAgICIgdnUsIHZ1LCAwLCAgMCIpKSldDQorICAiVEFSR0VUX1pWQkIg fHwgVEFSR0VUX1pWS0IiDQorICAidmFuZG4udnhcdCUwLCUzLCV6NCVwMSIN CisgIFsoc2V0X2F0dHIgInR5cGUiICJ2YW5kbiIpDQorICAgKHNldF9hdHRy ICJtb2RlIiAiPE1PREU+IildKQ0KKw0KKyhkZWZpbmVfaW5zbiAiQHByZWRf djxiaXRtYW5pcF9vcHRhYj48bW9kZT4iDQorICBbKHNldCAobWF0Y2hfb3Bl cmFuZDpWSSAwICJyZWdpc3Rlcl9vcGVyYW5kIiAgICAgICAgIj12ZCx2ZCwg dnIsIHZyIikNCisgICAgIChpZl90aGVuX2Vsc2U6VkkNCisgICAgICAgKHVu c3BlYzo8Vk0+DQorICAgICAgICAgWyhtYXRjaF9vcGVyYW5kOjxWTT4gMSAi dmVjdG9yX21hc2tfb3BlcmFuZCIgIiB2bSx2bSxXYzEsV2MxIikNCisgICAg ICAgICAgKG1hdGNoX29wZXJhbmQgNSAidmVjdG9yX2xlbmd0aF9vcGVyYW5k IiAgICAiIHJLLHJLLCBySywgcksiKQ0KKyAgICAgICAgICAobWF0Y2hfb3Bl cmFuZCA2ICJjb25zdF9pbnRfb3BlcmFuZCIgICAgICAgICIgIGksIGksICBp LCAgaSIpDQorICAgICAgICAgIChtYXRjaF9vcGVyYW5kIDcgImNvbnN0X2lu dF9vcGVyYW5kIiAgICAgICAgIiAgaSwgaSwgIGksICBpIikNCisgICAgICAg ICAgKG1hdGNoX29wZXJhbmQgOCAiY29uc3RfaW50X29wZXJhbmQiICAgICAg ICAiICBpLCBpLCAgaSwgIGkiKQ0KKyAgICAgICAgICAocmVnOlNJIFZMX1JF R05VTSkNCisgICAgICAgICAgKHJlZzpTSSBWVFlQRV9SRUdOVU0pXSBVTlNQ RUNfVlBSRURJQ0FURSkNCisgICAgICAgKGJpdG1hbmlwX3JvdGF0ZTpWSQ0K KyAgICAgICAgIChtYXRjaF9vcGVyYW5kOlZJIDMgInJlZ2lzdGVyX29wZXJh bmQiICAgICAgICIgdnIsdnIsIHZyLCB2ciIpDQorICAgICAgICAgKG1hdGNo X29wZXJhbmQ6VkkgNCAicmVnaXN0ZXJfb3BlcmFuZCIgICAgICAgIiB2cix2 ciwgdnIsIHZyIikpDQorICAgICAgIChtYXRjaF9vcGVyYW5kOlZJIDIgInZl Y3Rvcl9tZXJnZV9vcGVyYW5kIiAgICAgIiB2dSwgMCwgdnUsICAwIikpKV0N CisgICJUQVJHRVRfWlZCQiB8fCBUQVJHRVRfWlZLQiINCisgICJ2PGJpdG1h bmlwX2luc24+LnZ2XHQlMCwlMywlNCVwMSINCisgIFsoc2V0X2F0dHIgInR5 cGUiICJ2PGJpdG1hbmlwX2luc24+IikNCisgICAoc2V0X2F0dHIgIm1vZGUi ICI8TU9ERT4iKV0pDQorDQorKGRlZmluZV9pbnNuICJAcHJlZF92PGJpdG1h bmlwX29wdGFiPjxtb2RlPl9zY2FsYXIiDQorICBbKHNldCAobWF0Y2hfb3Bl cmFuZDpWSSAwICJyZWdpc3Rlcl9vcGVyYW5kIiAgICAgICAgIj12ZCx2ZCwg dnIsIHZyIikNCisgICAgIChpZl90aGVuX2Vsc2U6VkkNCisgICAgICAgKHVu c3BlYzo8Vk0+DQorICAgICAgICAgWyhtYXRjaF9vcGVyYW5kOjxWTT4gMSAi dmVjdG9yX21hc2tfb3BlcmFuZCIgIiB2bSx2bSxXYzEsV2MxIikNCisgICAg ICAgICAgKG1hdGNoX29wZXJhbmQgNSAidmVjdG9yX2xlbmd0aF9vcGVyYW5k IiAgICAiIHJLLHJLLCBySywgcksiKQ0KKyAgICAgICAgICAobWF0Y2hfb3Bl cmFuZCA2ICJjb25zdF9pbnRfb3BlcmFuZCIgICAgICAgICIgIGksIGksICBp LCAgaSIpDQorICAgICAgICAgIChtYXRjaF9vcGVyYW5kIDcgImNvbnN0X2lu dF9vcGVyYW5kIiAgICAgICAgIiAgaSwgaSwgIGksICBpIikNCisgICAgICAg ICAgKG1hdGNoX29wZXJhbmQgOCAiY29uc3RfaW50X29wZXJhbmQiICAgICAg ICAiICBpLCBpLCAgaSwgIGkiKQ0KKyAgICAgICAgICAocmVnOlNJIFZMX1JF R05VTSkNCisgICAgICAgICAgKHJlZzpTSSBWVFlQRV9SRUdOVU0pXSBVTlNQ RUNfVlBSRURJQ0FURSkNCisgICAgICAgKGJpdG1hbmlwX3JvdGF0ZTpWSQ0K KyAgICAgICAgIChtYXRjaF9vcGVyYW5kOlZJIDMgInJlZ2lzdGVyX29wZXJh bmQiICAgICAgICIgdnIsdnIsIHZyLCB2ciIpDQorICAgICAgICAgKG1hdGNo X29wZXJhbmQgNCAicG1vZGVfcmVnaXN0ZXJfb3BlcmFuZCIgICAgIiAgciwg ciwgIHIsICByIikpDQorICAgICAgIChtYXRjaF9vcGVyYW5kOlZJIDIgInZl Y3Rvcl9tZXJnZV9vcGVyYW5kIiAgICAgIiB2dSwgMCwgdnUsICAwIikpKV0N CisgICJUQVJHRVRfWlZCQiB8fCBUQVJHRVRfWlZLQiINCisgICJ2PGJpdG1h bmlwX2luc24+LnZ4XHQlMCwlMywlNCVwMSINCisgIFsoc2V0X2F0dHIgInR5 cGUiICJ2PGJpdG1hbmlwX2luc24+IikNCisgICAoc2V0X2F0dHIgIm1vZGUi ICI8TU9ERT4iKV0pDQorDQorKGRlZmluZV9pbnNuICIqcHJlZF92cm9yPG1v ZGU+X3NjYWxhciINCisgIFsoc2V0IChtYXRjaF9vcGVyYW5kOlZJIDAgInJl Z2lzdGVyX29wZXJhbmQiICAgICAgICAiPXZkLHZkLCB2cix2ciIpDQorICAg ICAoaWZfdGhlbl9lbHNlOlZJDQorICAgICAgICh1bnNwZWM6PFZNPg0KKyAg ICAgICAgIFsobWF0Y2hfb3BlcmFuZDo8Vk0+IDEgInZlY3Rvcl9tYXNrX29w ZXJhbmQiICIgdm0sdm0sV2MxLFdjMSIpDQorICAgICAgICAgIChtYXRjaF9v cGVyYW5kIDUgInZlY3Rvcl9sZW5ndGhfb3BlcmFuZCIgICAgIiBySyxySywg ckssIHJLIikNCisgICAgICAgICAgKG1hdGNoX29wZXJhbmQgNiAiY29uc3Rf aW50X29wZXJhbmQiICAgICAgICAiICBpLCBpLCAgaSwgIGkiKQ0KKyAgICAg ICAgICAobWF0Y2hfb3BlcmFuZCA3ICJjb25zdF9pbnRfb3BlcmFuZCIgICAg ICAgICIgIGksIGksICBpLCAgaSIpDQorICAgICAgICAgIChtYXRjaF9vcGVy YW5kIDggImNvbnN0X2ludF9vcGVyYW5kIiAgICAgICAgIiAgaSwgaSwgIGks ICBpIikNCisgICAgICAgICAgKHJlZzpTSSBWTF9SRUdOVU0pDQorICAgICAg ICAgIChyZWc6U0kgVlRZUEVfUkVHTlVNKV0gVU5TUEVDX1ZQUkVESUNBVEUp DQorICAgICAgIChyb3RhdGVydDpWSQ0KKyAgICAgICAgIChtYXRjaF9vcGVy YW5kOlZJIDMgInJlZ2lzdGVyX29wZXJhbmQiICAgICAgICIgdnIsdnIsIHZy LCB2ciIpDQorICAgICAgICAgKG1hdGNoX29wZXJhbmQgICAgNCAiY29uc3Rf Y3NyX29wZXJhbmQiICAgICAgIiAgSywgSywgIEssICBLIikpDQorICAgICAg IChtYXRjaF9vcGVyYW5kOlZJIDIgInZlY3Rvcl9tZXJnZV9vcGVyYW5kIiAg ICAgIiB2dSwgMCwgdnUsICAwIikpKV0NCisgICJUQVJHRVRfWlZCQiB8fCBU QVJHRVRfWlZLQiINCisgICJ2cm9yLnZpXHQlMCwlMywlNCVwMSINCisgIFso c2V0X2F0dHIgInR5cGUiICJ2cm9yIikNCisgICAoc2V0X2F0dHIgIm1vZGUi ICI8TU9ERT4iKV0pDQorDQorKGRlZmluZV9pbnNuICJAcHJlZF92d3NsbDxt b2RlPiINCisgIFsoc2V0IChtYXRjaF9vcGVyYW5kOlZXRVhUSSAwICJyZWdp c3Rlcl9vcGVyYW5kIiAgICAgIj0mdnIiKQ0KKyAgICAgKGlmX3RoZW5fZWxz ZTpWV0VYVEkNCisgICAgICAgKHVuc3BlYzo8Vk0+DQorICAgICAgICAgWyht YXRjaF9vcGVyYW5kOjxWTT4gMSAidmVjdG9yX21hc2tfb3BlcmFuZCIgInZt V2MxIikNCisgICAgICAgICAgKG1hdGNoX29wZXJhbmQgNSAidmVjdG9yX2xl bmd0aF9vcGVyYW5kIiAgICAiICBySyIpDQorICAgICAgICAgIChtYXRjaF9v cGVyYW5kIDYgImNvbnN0X2ludF9vcGVyYW5kIiAgICAgICAgIiAgIGkiKQ0K KyAgICAgICAgICAobWF0Y2hfb3BlcmFuZCA3ICJjb25zdF9pbnRfb3BlcmFu ZCIgICAgICAgICIgICBpIikNCisgICAgICAgICAgKG1hdGNoX29wZXJhbmQg OCAiY29uc3RfaW50X29wZXJhbmQiICAgICAgICAiICAgaSIpDQorICAgICAg ICAgIChyZWc6U0kgVkxfUkVHTlVNKQ0KKyAgICAgICAgICAocmVnOlNJIFZU WVBFX1JFR05VTSldIFVOU1BFQ19WUFJFRElDQVRFKQ0KKyAgICAgICAoYXNo aWZ0OlZXRVhUSQ0KKyAgICAgICAgICh6ZXJvX2V4dGVuZDpWV0VYVEkNCisg ICAgICAgICAgIChtYXRjaF9vcGVyYW5kOjxWX0RPVUJMRV9UUlVOQz4gMyAi cmVnaXN0ZXJfb3BlcmFuZCIgInZyIikpDQorICAgICAgICAgKG1hdGNoX29w ZXJhbmQ6PFZfRE9VQkxFX1RSVU5DPiA0ICJyZWdpc3Rlcl9vcGVyYW5kIiAg InZyIikpDQorICAgICAgIChtYXRjaF9vcGVyYW5kOlZXRVhUSSAyICJ2ZWN0 b3JfbWVyZ2Vfb3BlcmFuZCIgIjB2dSIpKSldDQorICAiVEFSR0VUX1pWQkIi DQorICAidndzbGwudnZcdCUwLCUzLCU0JXAxIg0KKyAgWyhzZXRfYXR0ciAi dHlwZSIgInZ3c2xsIikNCisgICAoc2V0X2F0dHIgIm1vZGUiICI8Vl9ET1VC TEVfVFJVTkM+IildKQ0KKw0KKyhkZWZpbmVfaW5zbiAiQHByZWRfdndzbGw8 bW9kZT5fc2NhbGFyIg0KKyAgWyhzZXQgKG1hdGNoX29wZXJhbmQ6VldFWFRJ IDAgInJlZ2lzdGVyX29wZXJhbmQiICAgICI9dmQsIHZyLCB2ZCwgdnIsIHZk LCB2ciwgdmQsIHZyLCB2ZCwgdnIsIHZkLCB2ciwgPyZ2ciwgPyZ2ciIpDQor ICAgICAoaWZfdGhlbl9lbHNlOlZXRVhUSQ0KKyAgICAgICAodW5zcGVjOjxW TT4NCisgICAgICAgICBbKG1hdGNoX29wZXJhbmQ6PFZNPiAxICJ2ZWN0b3Jf bWFza19vcGVyYW5kIiAiIHZtLFdjMSwgdm0sV2MxLCB2bSxXYzEsIHZtLFdj MSwgdm0sV2MxLCB2bSxXYzEsdm1XYzEsdm1XYzEiKQ0KKyAgICAgICAgICAo bWF0Y2hfb3BlcmFuZCA1ICJ2ZWN0b3JfbGVuZ3RoX29wZXJhbmQiICAgICIg ckssIHJLLCBySywgckssIHJLLCBySywgckssIHJLLCBySywgckssIHJLLCBy SywgICBySywgICBySyIpDQorICAgICAgICAgIChtYXRjaF9vcGVyYW5kIDYg ImNvbnN0X2ludF9vcGVyYW5kIiAgICAgICAgIiAgaSwgIGksICBpLCAgaSwg IGksICBpLCAgaSwgIGksICBpLCAgaSwgIGksICBpLCAgICBpLCAgICBpIikN CisgICAgICAgICAgKG1hdGNoX29wZXJhbmQgNyAiY29uc3RfaW50X29wZXJh bmQiICAgICAgICAiICBpLCAgaSwgIGksICBpLCAgaSwgIGksICBpLCAgaSwg IGksICBpLCAgaSwgIGksICAgIGksICAgIGkiKQ0KKyAgICAgICAgICAobWF0 Y2hfb3BlcmFuZCA4ICJjb25zdF9pbnRfb3BlcmFuZCIgICAgICAgICIgIGks ICBpLCAgaSwgIGksICBpLCAgaSwgIGksICBpLCAgaSwgIGksICBpLCAgaSwg ICAgaSwgICAgaSIpDQorICAgICAgICAgIChyZWc6U0kgVkxfUkVHTlVNKQ0K KyAgICAgICAgICAocmVnOlNJIFZUWVBFX1JFR05VTSldIFVOU1BFQ19WUFJF RElDQVRFKQ0KKyAgICAgICAoYXNoaWZ0OlZXRVhUSQ0KKyAgICAgICAgICh6 ZXJvX2V4dGVuZDpWV0VYVEkNCisgICAgICAgICAgIChtYXRjaF9vcGVyYW5k OjxWX0RPVUJMRV9UUlVOQz4gMyAicmVnaXN0ZXJfb3BlcmFuZCIgICJXMjEs VzIxLFcyMSxXMjEsVzQyLFc0MixXNDIsVzQyLFc4NCxXODQsVzg0LFc4NCwg ICB2ciwgICB2ciIpKQ0KKyAgICAgICAgIChtYXRjaF9vcGVyYW5kOjxWU1VC RUw+IDQgInBtb2RlX3JlZ19vcl91aW1tNV9vcGVyYW5kIiAgIiBySywgckss IHJLLCBySywgckssIHJLLCBySywgckssIHJLLCBySywgckssIHJLLCAgIHJL LCAgIHJLIikpDQorICAgICAgIChtYXRjaF9vcGVyYW5kOlZXRVhUSSAyICJ2 ZWN0b3JfbWVyZ2Vfb3BlcmFuZCIgICAgICAgICAgICIgdnUsIHZ1LCAgMCwg IDAsIHZ1LCB2dSwgIDAsICAwLCB2dSwgdnUsICAwLCAgMCwgICB2dSwgICAg MCIpKSldDQorICAiVEFSR0VUX1pWQkIiDQorICAidndzbGwudiVvNFx0JTAs JTMsJTQlcDEiDQorICBbKHNldF9hdHRyICJ0eXBlIiAidndzbGwiKQ0KKyAg IChzZXRfYXR0ciAibW9kZSIgIjxWX0RPVUJMRV9UUlVOQz4iKQ0KKyAgIChz ZXRfYXR0ciAiZ3JvdXBfb3ZlcmxhcCIgIlcyMSxXMjEsVzIxLFcyMSxXNDIs VzQyLFc0MixXNDIsVzg0LFc4NCxXODQsVzg0LG5vbmUsbm9uZSIpXSkNCisN Cis7OyB2YnJldi52IHZicmV2OC52IHZyZXY4LnYNCisoZGVmaW5lX2luc24g IkBwcmVkX3Y8cmV2Pjxtb2RlPiINCisgIFsoc2V0IChtYXRjaF9vcGVyYW5k OlZJIDAgInJlZ2lzdGVyX29wZXJhbmQiICAgICAgICAiPXZkLHZyLHZkLHZy IikNCisgICAgIChpZl90aGVuX2Vsc2U6VkkNCisgICAgICAgKHVuc3BlYzo8 Vk0+DQorICAgICAgICAgWyhtYXRjaF9vcGVyYW5kOjxWTT4gMSAidmVjdG9y X21hc2tfb3BlcmFuZCIgInZtLFdjMSx2bSxXYzEiKQ0KKyAgICAgICAgICAo bWF0Y2hfb3BlcmFuZCA0ICJ2ZWN0b3JfbGVuZ3RoX29wZXJhbmQiICAgICJy SyxySywgckssIHJLIikNCisgICAgICAgICAgKG1hdGNoX29wZXJhbmQgNSAi Y29uc3RfaW50X29wZXJhbmQiICAgICAgICAiaSwgIGksICBpLCAgaSIpDQor ICAgICAgICAgIChtYXRjaF9vcGVyYW5kIDYgImNvbnN0X2ludF9vcGVyYW5k IiAgICAgICAgImksICBpLCAgaSwgIGkiKQ0KKyAgICAgICAgICAobWF0Y2hf b3BlcmFuZCA3ICJjb25zdF9pbnRfb3BlcmFuZCIgICAgICAgICJpLCAgaSwg IGksICBpIikNCisgICAgICAgICAgKHJlZzpTSSBWTF9SRUdOVU0pDQorICAg ICAgICAgIChyZWc6U0kgVlRZUEVfUkVHTlVNKV0gVU5TUEVDX1ZQUkVESUNB VEUpDQorICAgICAgICh1bnNwZWM6VkkNCisgICAgICAgICBbKG1hdGNoX29w ZXJhbmQ6VkkgMyAicmVnaXN0ZXJfb3BlcmFuZCIgICAgICAidnIsdnIsIHZy LCB2ciIpXVVOU1BFQ19WUkJCOCkNCisgICAgICAgKG1hdGNoX29wZXJhbmQ6 VkkgMiAidmVjdG9yX21lcmdlX29wZXJhbmQiICAgICAidnUsdnUsICAwLCAg MCIpKSldDQorICAiVEFSR0VUX1pWQkIgfHwgVEFSR0VUX1pWS0IiDQorICAi djxyZXY+LnZcdCUwLCUzJXAxIg0KKyAgWyhzZXRfYXR0ciAidHlwZSIgInY8 cmV2PiIpDQorICAgKHNldF9hdHRyICJtb2RlIiAiPE1PREU+IildKQ0KKw0K Kzs7IHZjbHoudiB2Y3R6LnYNCisoZGVmaW5lX2luc24gIkBwcmVkX3Y8Yml0 bWFuaXBfb3B0YWI+PG1vZGU+Ig0KKyAgWyhzZXQgKG1hdGNoX29wZXJhbmQ6 VkkgMCAgInJlZ2lzdGVyX29wZXJhbmQiICAgICAgICAgICAiPXZkLCB2ciIp DQorICAgICAoY2x6X2N0el9wY250OlZJDQorICAgICAgIChwYXJhbGxlbA0K KyAgICAgICAgIFsobWF0Y2hfb3BlcmFuZDpWSSAyICJyZWdpc3Rlcl9vcGVy YW5kIiAgICAgICAgICAgInZyLCB2ciIpDQorICAgICAgICAgICh1bnNwZWM6 PFZNPg0KKyAgICAgICAgICAgIFsobWF0Y2hfb3BlcmFuZDo8Vk0+IDEgInZl Y3Rvcl9tYXNrX29wZXJhbmQiICAgInZtLFdjMSIpDQorICAgICAgICAgICAg IChtYXRjaF9vcGVyYW5kIDMgICAgICAidmVjdG9yX2xlbmd0aF9vcGVyYW5k IiAickssIHJLIikNCisgICAgICAgICAgICAgKG1hdGNoX29wZXJhbmQgNCAg ICAgICJjb25zdF9pbnRfb3BlcmFuZCIgICAgICIgaSwgIGkiKQ0KKyAgICAg ICAgICAgICAocmVnOlNJIFZMX1JFR05VTSkNCisgICAgICAgICAgICAgKHJl ZzpTSSBWVFlQRV9SRUdOVU0pXSBVTlNQRUNfVlBSRURJQ0FURSldKSkpXQ0K KyAgIlRBUkdFVF9aVkJCIg0KKyAgInY8Yml0bWFuaXBfaW5zbj4udlx0JTAs JTIlcDEiDQorICBbKHNldF9hdHRyICJ0eXBlIiAidjxiaXRtYW5pcF9pbnNu PiIpDQorICAgKHNldF9hdHRyICJtb2RlIiAiPE1PREU+IildKQ0KKw0KKzs7 IHp2YmMgaW5zdHJ1Y3Rpb25zIHBhdHRlcm5zLg0KKzs7IHZjbG11bC52diB2 Y2xtdWwudngNCis7OyB2Y2xtdWxoLnZ2IHZjbG11bGgudngNCisoZGVmaW5l X2luc24gIkBwcmVkX3ZjbG11bDxoPjxtb2RlPiINCisgIFsoc2V0IChtYXRj aF9vcGVyYW5kOlZJX0QgMCAgInJlZ2lzdGVyX29wZXJhbmQiICAgICAiPXZk LHZyLHZkLCB2ciIpDQorICAgICAoaWZfdGhlbl9lbHNlOlZJX0QNCisgICAg ICAgKHVuc3BlYzo8Vk0+DQorICAgICAgICAgWyhtYXRjaF9vcGVyYW5kOjxW TT4gMSAidmVjdG9yX21hc2tfb3BlcmFuZCIgInZtLFdjMSx2bSxXYzEiKQ0K KyAgICAgICAgICAobWF0Y2hfb3BlcmFuZCA1ICJ2ZWN0b3JfbGVuZ3RoX29w ZXJhbmQiICAgICJySywgckssckssIHJLIikNCisgICAgICAgICAgKG1hdGNo X29wZXJhbmQgNiAiY29uc3RfaW50X29wZXJhbmQiICAgICAgICAiIGksICBp LCBpLCAgaSIpDQorICAgICAgICAgIChtYXRjaF9vcGVyYW5kIDcgImNvbnN0 X2ludF9vcGVyYW5kIiAgICAgICAgIiBpLCAgaSwgaSwgIGkiKQ0KKyAgICAg ICAgICAobWF0Y2hfb3BlcmFuZCA4ICJjb25zdF9pbnRfb3BlcmFuZCIgICAg ICAgICIgaSwgIGksIGksICBpIikNCisgICAgICAgICAgKHJlZzpTSSBWTF9S RUdOVU0pDQorICAgICAgICAgIChyZWc6U0kgVlRZUEVfUkVHTlVNKV0gVU5T UEVDX1ZQUkVESUNBVEUpDQorICAgICAgICh1bnNwZWM6VklfRA0KKyAgICAg ICAgIFsobWF0Y2hfb3BlcmFuZDpWSV9EIDMgInJlZ2lzdGVyX29wZXJhbmQi ICAgICAidnIsIHZyLHZyLCB2ciIpDQorICAgICAgICAgIChtYXRjaF9vcGVy YW5kOlZJX0QgNCAicmVnaXN0ZXJfb3BlcmFuZCIgICAgICJ2ciwgdnIsdnIs IHZyIildVU5TUEVDX0NMTVVMKQ0KKyAgICAgICAobWF0Y2hfb3BlcmFuZDpW SV9EIDIgInZlY3Rvcl9tZXJnZV9vcGVyYW5kIiAgICAidnUsIHZ1LCAwLCAg MCIpKSldDQorICAiVEFSR0VUX1pWQkMiDQorICAidmNsbXVsPGg+LnZ2XHQl MCwlMywlNCVwMSINCisgIFsoc2V0X2F0dHIgInR5cGUiICJ2Y2xtdWw8aD4i KQ0KKyAgIChzZXRfYXR0ciAibW9kZSIgIjxNT0RFPiIpXSkNCisNCis7OyBE ZWFsIHdpdGggU0VXID0gNjQgaW4gUlYzMiBzeXN0ZW0uDQorKGRlZmluZV9l eHBhbmQgIkBwcmVkX3ZjbG11bDxoPjxtb2RlPl9zY2FsYXIiDQorICBbKHNl dCAobWF0Y2hfb3BlcmFuZDpWSV9EIDAgInJlZ2lzdGVyX29wZXJhbmQiKQ0K KyAgICAgKGlmX3RoZW5fZWxzZTpWSV9EDQorICAgICAgICh1bnNwZWM6PFZN Pg0KKyAgICAgICAgIFsobWF0Y2hfb3BlcmFuZDo8Vk0+IDEgInZlY3Rvcl9t YXNrX29wZXJhbmQiKQ0KKyAgICAgICAgICAobWF0Y2hfb3BlcmFuZCA1ICJ2 ZWN0b3JfbGVuZ3RoX29wZXJhbmQiKQ0KKyAgICAgICAgICAobWF0Y2hfb3Bl cmFuZCA2ICJjb25zdF9pbnRfb3BlcmFuZCIpDQorICAgICAgICAgIChtYXRj aF9vcGVyYW5kIDcgImNvbnN0X2ludF9vcGVyYW5kIikNCisgICAgICAgICAg KG1hdGNoX29wZXJhbmQgOCAiY29uc3RfaW50X29wZXJhbmQiKQ0KKyAgICAg ICAgICAocmVnOlNJIFZMX1JFR05VTSkNCisgICAgICAgICAgKHJlZzpTSSBW VFlQRV9SRUdOVU0pXSBVTlNQRUNfVlBSRURJQ0FURSkNCisgICAgICAgKHVu c3BlYzpWSV9EDQorICAgICAgICAgWyh2ZWNfZHVwbGljYXRlOlZJX0QNCisg ICAgICAgICAgICAobWF0Y2hfb3BlcmFuZDo8VkVMPiA0ICJyZWdpc3Rlcl9v cGVyYW5kIikpDQorICAgICAgICAgIChtYXRjaF9vcGVyYW5kOlZJX0QgMyAi cmVnaXN0ZXJfb3BlcmFuZCIpXVVOU1BFQ19DTE1VTCkNCisgICAgICAgKG1h dGNoX29wZXJhbmQ6VklfRCAyICJ2ZWN0b3JfbWVyZ2Vfb3BlcmFuZCIpKSld DQorICAiVEFSR0VUX1pWQkMiDQorew0KKyAgaWYgKHJpc2N2X3ZlY3Rvcjo6 c2V3NjRfc2NhbGFyX2hlbHBlciAoDQorIG9wZXJhbmRzLA0KKyAvKiBzY2Fs YXIgb3AgKi8mb3BlcmFuZHNbNF0sDQorIC8qIHZsICovb3BlcmFuZHNbNV0s DQorIDxNT0RFPm1vZGUsDQorIGZhbHNlLA0KKyBbXSAocnR4ICpvcGVyYW5k cywgcnR4IGJvYXJkY2FzdF9zY2FsYXIpIHsNCisgICBlbWl0X2luc24gKGdl bl9wcmVkX3ZjbG11bDxoPjxtb2RlPiAob3BlcmFuZHNbMF0sIG9wZXJhbmRz WzFdLA0KKyAgICAgICAgb3BlcmFuZHNbMl0sIG9wZXJhbmRzWzNdLCBib2Fy ZGNhc3Rfc2NhbGFyLCBvcGVyYW5kc1s1XSwNCisgICAgICAgIG9wZXJhbmRz WzZdLCBvcGVyYW5kc1s3XSwgb3BlcmFuZHNbOF0pKTsNCisgICAgICAgIH0s DQorICAgICAgICAocmlzY3ZfdmVjdG9yOjphdmxfdHlwZSkgSU5UVkFMIChv cGVyYW5kc1s4XSkpKQ0KKyAgICBET05FOw0KK30pDQorDQorKGRlZmluZV9p bnNuICIqcHJlZF92Y2xtdWw8aD48bW9kZT5fc2NhbGFyIg0KKyAgWyhzZXQg KG1hdGNoX29wZXJhbmQ6VklfRCAwICJyZWdpc3Rlcl9vcGVyYW5kIiAgICAg ICAiPXZkLHZyLHZkLCB2ciIpDQorICAgIChpZl90aGVuX2Vsc2U6VklfRA0K KyAgICAgICh1bnNwZWM6PFZNPg0KKyAgICAgICAgWyhtYXRjaF9vcGVyYW5k OjxWTT4gMSAidmVjdG9yX21hc2tfb3BlcmFuZCIgICJ2bSxXYzEsdm0sV2Mx IikNCisgICAgICAgIChtYXRjaF9vcGVyYW5kIDUgInZlY3Rvcl9sZW5ndGhf b3BlcmFuZCIgICAgICAickssIHJLLHJLLCBySyIpDQorICAgICAgICAobWF0 Y2hfb3BlcmFuZCA2ICJjb25zdF9pbnRfb3BlcmFuZCIgICAgICAgICAgIiBp LCAgaSwgaSwgIGkiKQ0KKyAgICAgICAgKG1hdGNoX29wZXJhbmQgNyAiY29u c3RfaW50X29wZXJhbmQiICAgICAgICAgICIgaSwgIGksIGksICBpIikNCisg ICAgICAgIChtYXRjaF9vcGVyYW5kIDggImNvbnN0X2ludF9vcGVyYW5kIiAg ICAgICAgICAiIGksICBpLCBpLCAgaSIpDQorICAgICAgICAocmVnOlNJIFZM X1JFR05VTSkNCisgICAgICAgIChyZWc6U0kgVlRZUEVfUkVHTlVNKV0gVU5T UEVDX1ZQUkVESUNBVEUpDQorICAgICAgKHVuc3BlYzpWSV9EDQorICAgICAg ICBbKHZlY19kdXBsaWNhdGU6VklfRA0KKyAgICAgICAgICAgKG1hdGNoX29w ZXJhbmQ6PFZFTD4gNCAicmVnX29yXzBfb3BlcmFuZCIgICAickosIHJKLHJK LCBySiIpKQ0KKyAgICAgICAgIChtYXRjaF9vcGVyYW5kOlZJX0QgMyAicmVn aXN0ZXJfb3BlcmFuZCIgICAgICAidnIsIHZyLHZyLCB2ciIpXVVOU1BFQ19D TE1VTCkNCisgICAgICAobWF0Y2hfb3BlcmFuZDpWSV9EIDIgInZlY3Rvcl9t ZXJnZV9vcGVyYW5kIiAgICAgInZ1LCB2dSwgMCwgIDAiKSkpXQ0KKyAgIlRB UkdFVF9aVkJDIg0KKyAgInZjbG11bDxoPi52eFx0JTAsJTMsJTQlcDEiDQor ICBbKHNldF9hdHRyICJ0eXBlIiAidmNsbXVsPGg+IikNCisgICAoc2V0X2F0 dHIgIm1vZGUiICI8TU9ERT4iKV0pDQorDQorKGRlZmluZV9pbnNuICIqcHJl ZF92Y2xtdWw8aD48bW9kZT5fZXh0ZW5kX3NjYWxhciINCisgIFsoc2V0ICht YXRjaF9vcGVyYW5kOlZJX0QgMCAicmVnaXN0ZXJfb3BlcmFuZCIgICAgICAg ICAiPXZkLHZyLHZkLCB2ciIpDQorICAgIChpZl90aGVuX2Vsc2U6VklfRA0K KyAgICAgICh1bnNwZWM6PFZNPg0KKyAgICAgICAgWyhtYXRjaF9vcGVyYW5k OjxWTT4gMSAidmVjdG9yX21hc2tfb3BlcmFuZCIgICAgInZtLFdjMSx2bSxX YzEiKQ0KKyAgICAgICAgKG1hdGNoX29wZXJhbmQgNSAidmVjdG9yX2xlbmd0 aF9vcGVyYW5kIiAgICAgICAgInJLLCBySyxySywgcksiKQ0KKyAgICAgICAg KG1hdGNoX29wZXJhbmQgNiAiY29uc3RfaW50X29wZXJhbmQiICAgICAgICAg ICAgIiBpLCAgaSwgaSwgIGkiKQ0KKyAgICAgICAgKG1hdGNoX29wZXJhbmQg NyAiY29uc3RfaW50X29wZXJhbmQiICAgICAgICAgICAgIiBpLCAgaSwgaSwg IGkiKQ0KKyAgICAgICAgKG1hdGNoX29wZXJhbmQgOCAiY29uc3RfaW50X29w ZXJhbmQiICAgICAgICAgICAgIiBpLCAgaSwgaSwgIGkiKQ0KKyAgICAgICAg KHJlZzpTSSBWTF9SRUdOVU0pDQorICAgICAgICAocmVnOlNJIFZUWVBFX1JF R05VTSldIFVOU1BFQ19WUFJFRElDQVRFKQ0KKyAgICAgICh1bnNwZWM6Vklf RA0KKyAgICAgICAgWyh2ZWNfZHVwbGljYXRlOlZJX0QNCisgICAgKHNpZ25f ZXh0ZW5kOjxWRUw+DQorICAgICAgICAgICAgIChtYXRjaF9vcGVyYW5kOjxW U1VCRUw+IDQgInJlZ19vcl8wX29wZXJhbmQiICIgckosIHJKLHJKLCBySiIp KSkNCisgICAgICAgICAobWF0Y2hfb3BlcmFuZDpWSV9EIDMgInJlZ2lzdGVy X29wZXJhbmQiICAgICAgICAidnIsIHZyLHZyLCB2ciIpXVVOU1BFQ19DTE1V TCkNCisgICAgICAobWF0Y2hfb3BlcmFuZDpWSV9EIDIgInZlY3Rvcl9tZXJn ZV9vcGVyYW5kIiAgICAgICAidnUsIHZ1LCAwLCAgMCIpKSldDQorICAiVEFS R0VUX1pWQkMiDQorICAidmNsbXVsPGg+LnZ4XHQlMCwlMywlNCVwMSINCisg IFsoc2V0X2F0dHIgInR5cGUiICJ2Y2xtdWw8aD4iKQ0KKyAgIChzZXRfYXR0 ciAibW9kZSIgIjxNT0RFPiIpXSkNCisNCis7OyB6dmtuaFthYl0gYW5kIHp2 a2cgaW5zdHJ1Y3Rpb25zIHBhdHRlcm5zLg0KKzs7IHZzaGEybXMudnYgdnNo YTJjaC52diB2c2hhMmNsLnZ2IHZnaHNoLnZ2DQorKGRlZmluZV9pbnNuICJA cHJlZF92PHZ2X2luczFfbmFtZT48bW9kZT4iDQorICBbKHNldCAobWF0Y2hf b3BlcmFuZDpWUUVYVEkgMCAicmVnaXN0ZXJfb3BlcmFuZCIgICAgICI9dnIi KQ0KKyAgICAgKGlmX3RoZW5fZWxzZTpWUUVYVEkNCisgICAgICAgKHVuc3Bl Yzo8Vk0+DQorICAgICAgICAgWyhtYXRjaF9vcGVyYW5kIDQgInZlY3Rvcl9s ZW5ndGhfb3BlcmFuZCIgICAgICJySyIpDQorICAgICAgICAgIChtYXRjaF9v cGVyYW5kIDUgImNvbnN0X2ludF9vcGVyYW5kIiAgICAgICAgICIgaSIpDQor ICAgICAgICAgIChtYXRjaF9vcGVyYW5kIDYgImNvbnN0X2ludF9vcGVyYW5k IiAgICAgICAgICIgaSIpDQorICAgICAgICAgIChyZWc6U0kgVkxfUkVHTlVN KQ0KKyAgICAgICAgICAocmVnOlNJIFZUWVBFX1JFR05VTSldIFVOU1BFQ19W UFJFRElDQVRFKQ0KKyAgICAgICAodW5zcGVjOlZRRVhUSQ0KKyAgICAgICAg ICBbKG1hdGNoX29wZXJhbmQ6VlFFWFRJIDEgInJlZ2lzdGVyX29wZXJhbmQi ICIgMCIpDQorICAgICAgICAgICAobWF0Y2hfb3BlcmFuZDpWUUVYVEkgMiAi cmVnaXN0ZXJfb3BlcmFuZCIgInZyIikNCisgICAgICAgICAgIChtYXRjaF9v cGVyYW5kOlZRRVhUSSAzICJyZWdpc3Rlcl9vcGVyYW5kIiAidnIiKV0gVU5T UEVDX1ZHTkhBQikNCisgICAgICAgKG1hdGNoX2R1cCAxKSkpXQ0KKyAgIlRB UkdFVF9aVktOSEEgfHwgVEFSR0VUX1pWS05IQiB8fCBUQVJHRVRfWlZLRyIN CisgICJ2PHZ2X2luczFfbmFtZT4udnZcdCUwLCUyLCUzIg0KKyAgWyhzZXRf YXR0ciAidHlwZSIgInY8dnZfaW5zMV9uYW1lPiIpDQorICAgKHNldF9hdHRy ICJtb2RlIiAiPE1PREU+IildKQ0KKw0KKzs7IHp2a25lZCBhbmQgenZrc2Vk IGFtZCB6dmtnIGluc3RydWN0aW9ucyBwYXR0ZXJucy4NCis7OyB2Z211bC52 diAgICAgICB2YWVzei52cw0KKzs7IHZhZXNlZi5bdnYsdnNdIHZhZXNlbS5b dnYsdnNdIHZhZXNkZi5bdnYsdnNdIHZhZXNkbS5bdnYsdnNdDQorOzsgdnNt NHIuW3Z2LHZzXQ0KKyhkZWZpbmVfaW5zbiAiQHByZWRfY3J5cHRvX3Z2PHZ2 X2luc19uYW1lPjxpbnNfdHlwZT48bW9kZT4iDQorICBbKHNldCAobWF0Y2hf b3BlcmFuZDpWU0kgMCAicmVnaXN0ZXJfb3BlcmFuZCIgICAgIj12ciIpDQor ICAgICAoaWZfdGhlbl9lbHNlOlZTSQ0KKyAgICAgICAodW5zcGVjOjxWTT4N CisgICAgICAgICBbKG1hdGNoX29wZXJhbmQgMyAidmVjdG9yX2xlbmd0aF9v cGVyYW5kIiAiIHJLIikNCisgICAgICAgICAgKG1hdGNoX29wZXJhbmQgNCAi Y29uc3RfaW50X29wZXJhbmQiICAgICAiICBpIikNCisgICAgICAgICAgKG1h dGNoX29wZXJhbmQgNSAiY29uc3RfaW50X29wZXJhbmQiICAgICAiICBpIikN CisgICAgICAgICAgKHJlZzpTSSBWTF9SRUdOVU0pDQorICAgICAgICAgIChy ZWc6U0kgVlRZUEVfUkVHTlVNKV0gVU5TUEVDX1ZQUkVESUNBVEUpDQorICAg ICAgICh1bnNwZWM6VlNJDQorICAgICAgICAgWyhtYXRjaF9vcGVyYW5kOlZT SSAxICJyZWdpc3Rlcl9vcGVyYW5kIiAiIDAiKQ0KKyAgICAgICAgICAobWF0 Y2hfb3BlcmFuZDpWU0kgMiAicmVnaXN0ZXJfb3BlcmFuZCIgInZyIildIFVO U1BFQ19DUllQVE9fVlYpDQorICAgICAgIChtYXRjaF9kdXAgMSkpKV0NCisg ICJUQVJHRVRfWlZLTkVEIHx8IFRBUkdFVF9aVktTRUQgfHwgVEFSR0VUX1pW S0ciDQorICAidjx2dl9pbnNfbmFtZT4uPGluc190eXBlPlx0JTAsJTIiDQor ICBbKHNldF9hdHRyICJ0eXBlIiAidjx2dl9pbnNfbmFtZT4iKQ0KKyAgIChz ZXRfYXR0ciAibW9kZSIgIjxNT0RFPiIpXSkNCisNCisoZGVmaW5lX2luc24g IkBwcmVkX2NyeXB0b192djx2dl9pbnNfbmFtZT48aW5zX3R5cGU+eDE8bW9k ZT5fc2NhbGFyIg0KKyAgWyhzZXQgKG1hdGNoX29wZXJhbmQ6VlNJIDAgInJl Z2lzdGVyX29wZXJhbmQiICAgICI9JnZyIikNCisgICAgIChpZl90aGVuX2Vs c2U6VlNJDQorICAgICAgICh1bnNwZWM6PFZNPg0KKyAgICAgICAgIFsobWF0 Y2hfb3BlcmFuZCAzICJ2ZWN0b3JfbGVuZ3RoX29wZXJhbmQiICIgIHJLIikN CisgICAgICAgICAgKG1hdGNoX29wZXJhbmQgNCAiY29uc3RfaW50X29wZXJh bmQiICAgICAiICAgaSIpDQorICAgICAgICAgIChtYXRjaF9vcGVyYW5kIDUg ImNvbnN0X2ludF9vcGVyYW5kIiAgICAgIiAgIGkiKQ0KKyAgICAgICAgICAo cmVnOlNJIFZMX1JFR05VTSkNCisgICAgICAgICAgKHJlZzpTSSBWVFlQRV9S RUdOVU0pXSBVTlNQRUNfVlBSRURJQ0FURSkNCisgICAgICAgKHVuc3BlYzpW U0kNCisgICAgICAgICBbKG1hdGNoX29wZXJhbmQ6VlNJIDEgInJlZ2lzdGVy X29wZXJhbmQiICIgMCIpDQorICAgICAgICAgIChtYXRjaF9vcGVyYW5kOlZT SSAyICJyZWdpc3Rlcl9vcGVyYW5kIiAidnIiKV0gVU5TUEVDX0NSWVBUT19W VikNCisgICAgICAgKG1hdGNoX2R1cCAxKSkpXQ0KKyAgIlRBUkdFVF9aVktO RUQgfHwgVEFSR0VUX1pWS1NFRCINCisgICJ2PHZ2X2luc19uYW1lPi48aW5z X3R5cGU+XHQlMCwlMiINCisgIFsoc2V0X2F0dHIgInR5cGUiICJ2PHZ2X2lu c19uYW1lPiIpDQorICAgKHNldF9hdHRyICJtb2RlIiAiPE1PREU+IildKQ0K Kw0KKyhkZWZpbmVfaW5zbiAiQHByZWRfY3J5cHRvX3Z2PHZ2X2luc19uYW1l PjxpbnNfdHlwZT54Mjxtb2RlPl9zY2FsYXIiDQorICBbKHNldCAobWF0Y2hf b3BlcmFuZDo8VlNJWDI+IDAgInJlZ2lzdGVyX29wZXJhbmQiICI9JnZyIikN CisgICAgIChpZl90aGVuX2Vsc2U6PFZTSVgyPg0KKyAgICAgICAodW5zcGVj OjxWTT4NCisgICAgICAgICBbKG1hdGNoX29wZXJhbmQgMyAidmVjdG9yX2xl bmd0aF9vcGVyYW5kIiAgInJLIikNCisgICAgICAgICAgKG1hdGNoX29wZXJh bmQgNCAiY29uc3RfaW50X29wZXJhbmQiICAgICAgIiBpIikNCisgICAgICAg ICAgKG1hdGNoX29wZXJhbmQgNSAiY29uc3RfaW50X29wZXJhbmQiICAgICAg IiBpIikNCisgICAgICAgICAgKHJlZzpTSSBWTF9SRUdOVU0pDQorICAgICAg ICAgIChyZWc6U0kgVlRZUEVfUkVHTlVNKV0gVU5TUEVDX1ZQUkVESUNBVEUp DQorICAgICAgICh1bnNwZWM6PFZTSVgyPg0KKyAgICAgICAgIFsobWF0Y2hf b3BlcmFuZDo8VlNJWDI+IDEgICJyZWdpc3Rlcl9vcGVyYW5kIiAgICIgMCIp DQorICAgICAgICAgIChtYXRjaF9vcGVyYW5kOlZMTVVMWDJfU0kgMiAicmVn aXN0ZXJfb3BlcmFuZCIgInZyIildIFVOU1BFQ19DUllQVE9fVlYpDQorICAg ICAgIChtYXRjaF9kdXAgMSkpKV0NCisgICJUQVJHRVRfWlZLTkVEIHx8IFRB UkdFVF9aVktTRUQiDQorICAidjx2dl9pbnNfbmFtZT4uPGluc190eXBlPlx0 JTAsJTIiDQorICBbKHNldF9hdHRyICJ0eXBlIiAidjx2dl9pbnNfbmFtZT4i KQ0KKyAgIChzZXRfYXR0ciAibW9kZSIgIjxNT0RFPiIpXSkNCisNCisoZGVm aW5lX2luc24gIkBwcmVkX2NyeXB0b192djx2dl9pbnNfbmFtZT48aW5zX3R5 cGU+eDQ8bW9kZT5fc2NhbGFyIg0KKyBbKHNldCAobWF0Y2hfb3BlcmFuZDo8 VlNJWDQ+IDAgInJlZ2lzdGVyX29wZXJhbmQiICAgICAgIj0mdnIiKQ0KKyAg ICAoaWZfdGhlbl9lbHNlOjxWU0lYND4NCisgICAgICAodW5zcGVjOjxWTT4N CisgICAgICAgIFsobWF0Y2hfb3BlcmFuZCAzICJ2ZWN0b3JfbGVuZ3RoX29w ZXJhbmQiICAgICAgICIgcksiKQ0KKyAgICAgICAgIChtYXRjaF9vcGVyYW5k IDQgImNvbnN0X2ludF9vcGVyYW5kIiAgICAgICAgICAgIiAgaSIpDQorICAg ICAgICAgKG1hdGNoX29wZXJhbmQgNSAiY29uc3RfaW50X29wZXJhbmQiICAg ICAgICAgICAiICBpIikNCisgICAgICAgICAocmVnOlNJIFZMX1JFR05VTSkN CisgICAgICAgICAocmVnOlNJIFZUWVBFX1JFR05VTSldIFVOU1BFQ19WUFJF RElDQVRFKQ0KKyAgICAgICAodW5zcGVjOjxWU0lYND4NCisgICAgICAgICBb KG1hdGNoX29wZXJhbmQ6PFZTSVg0PiAxICJyZWdpc3Rlcl9vcGVyYW5kIiAg ICAiIDAiKQ0KKyAgICAgICAgICAobWF0Y2hfb3BlcmFuZDpWTE1VTFg0X1NJ IDIgInJlZ2lzdGVyX29wZXJhbmQiICJ2ciIpXSBVTlNQRUNfQ1JZUFRPX1ZW KQ0KKyAgICAgICAobWF0Y2hfZHVwIDEpKSldDQorICJUQVJHRVRfWlZLTkVE IHx8IFRBUkdFVF9aVktTRUQiDQorICJ2PHZ2X2luc19uYW1lPi48aW5zX3R5 cGU+XHQlMCwlMiINCisgWyhzZXRfYXR0ciAidHlwZSIgInY8dnZfaW5zX25h bWU+IikNCisgIChzZXRfYXR0ciAibW9kZSIgIjxNT0RFPiIpXSkNCisNCiso ZGVmaW5lX2luc24gIkBwcmVkX2NyeXB0b192djx2dl9pbnNfbmFtZT48aW5z X3R5cGU+eDg8bW9kZT5fc2NhbGFyIg0KKyBbKHNldCAobWF0Y2hfb3BlcmFu ZDo8VlNJWDg+IDAgInJlZ2lzdGVyX29wZXJhbmQiICAgICAgIj0mdnIiKQ0K KyAgICAoaWZfdGhlbl9lbHNlOjxWU0lYOD4NCisgICAgICAodW5zcGVjOjxW TT4NCisgICAgICAgIFsobWF0Y2hfb3BlcmFuZCAzICJ2ZWN0b3JfbGVuZ3Ro X29wZXJhbmQiICAgICAgICIgcksiKQ0KKyAgICAgICAgIChtYXRjaF9vcGVy YW5kIDQgImNvbnN0X2ludF9vcGVyYW5kIiAgICAgICAgICAgIiAgaSIpDQor ICAgICAgICAgKG1hdGNoX29wZXJhbmQgNSAiY29uc3RfaW50X29wZXJhbmQi ICAgICAgICAgICAiICBpIikNCisgICAgICAgICAocmVnOlNJIFZMX1JFR05V TSkNCisgICAgICAgICAocmVnOlNJIFZUWVBFX1JFR05VTSldIFVOU1BFQ19W UFJFRElDQVRFKQ0KKyAgICAgICh1bnNwZWM6PFZTSVg4Pg0KKyAgICAgICAg WyhtYXRjaF9vcGVyYW5kOjxWU0lYOD4gMSAicmVnaXN0ZXJfb3BlcmFuZCIg ICAgIiAgMCIpDQorICAgICAgICAgKG1hdGNoX29wZXJhbmQ6VkxNVUxYOF9T SSAyICJyZWdpc3Rlcl9vcGVyYW5kIiAiIHZyIildIFVOU1BFQ19DUllQVE9f VlYpDQorICAgICAgKG1hdGNoX2R1cCAxKSkpXQ0KKyAiVEFSR0VUX1pWS05F RCB8fCBUQVJHRVRfWlZLU0VEIg0KKyAidjx2dl9pbnNfbmFtZT4uPGluc190 eXBlPlx0JTAsJTIiDQorIFsoc2V0X2F0dHIgInR5cGUiICJ2PHZ2X2luc19u YW1lPiIpDQorICAoc2V0X2F0dHIgIm1vZGUiICI8TU9ERT4iKV0pDQorDQor KGRlZmluZV9pbnNuICJAcHJlZF9jcnlwdG9fdnY8dnZfaW5zX25hbWU+PGlu c190eXBlPngxNjxtb2RlPl9zY2FsYXIiDQorIFsoc2V0IChtYXRjaF9vcGVy YW5kOjxWU0lYMTY+IDAgInJlZ2lzdGVyX29wZXJhbmQiICAgICAgIj0mdnIi KQ0KKyAgICAoaWZfdGhlbl9lbHNlOjxWU0lYMTY+DQorICAgICAgKHVuc3Bl Yzo8Vk0+DQorICAgICAgICBbKG1hdGNoX29wZXJhbmQgMyAidmVjdG9yX2xl bmd0aF9vcGVyYW5kIiAgICAgICAgIiAgcksiKQ0KKyAgICAgICAgIChtYXRj aF9vcGVyYW5kIDQgImNvbnN0X2ludF9vcGVyYW5kIiAgICAgICAgICAgICIg ICBpIikNCisgICAgICAgICAobWF0Y2hfb3BlcmFuZCA1ICJjb25zdF9pbnRf b3BlcmFuZCIgICAgICAgICAgICAiICAgaSIpDQorICAgICAgICAgKHJlZzpT SSBWTF9SRUdOVU0pDQorICAgICAgICAgKHJlZzpTSSBWVFlQRV9SRUdOVU0p XSBVTlNQRUNfVlBSRURJQ0FURSkNCisgICAgICAodW5zcGVjOjxWU0lYMTY+ DQorICAgICAgICBbKG1hdGNoX29wZXJhbmQ6PFZTSVgxNj4gMSAicmVnaXN0 ZXJfb3BlcmFuZCIgICAgIiAgIDAiKQ0KKyAgICAgICAgIChtYXRjaF9vcGVy YW5kOlZMTVVMWDE2X1NJIDIgInJlZ2lzdGVyX29wZXJhbmQiICIgIHZyIild IFVOU1BFQ19DUllQVE9fVlYpDQorICAgICAgKG1hdGNoX2R1cCAxKSkpXQ0K KyAiVEFSR0VUX1pWS05FRCB8fCBUQVJHRVRfWlZLU0VEIg0KKyAidjx2dl9p bnNfbmFtZT4uPGluc190eXBlPlx0JTAsJTIiDQorIFsoc2V0X2F0dHIgInR5 cGUiICJ2PHZ2X2luc19uYW1lPiIpDQorICAoc2V0X2F0dHIgIm1vZGUiICI8 TU9ERT4iKV0pDQorDQorOzsgdmFlc2tmMS52aSB2c200ay52aQ0KKyhkZWZp bmVfaW5zbiAiQHByZWRfY3J5cHRvX3ZpPHZpX2luc19uYW1lPjxtb2RlPl9z Y2FsYXIiDQorICBbKHNldCAobWF0Y2hfb3BlcmFuZDpWU0kgMCAicmVnaXN0 ZXJfb3BlcmFuZCIgICAgICAgICI9dnIsIHZyIikNCisgICAgIChpZl90aGVu X2Vsc2U6VlNJDQorICAgICAgICh1bnNwZWM6PFZNPg0KKyAgICAgICAgIFso bWF0Y2hfb3BlcmFuZCA0ICJ2ZWN0b3JfbGVuZ3RoX29wZXJhbmQiICAgICAg InJLLCBySyIpDQorICAgICAgICAgIChtYXRjaF9vcGVyYW5kIDUgImNvbnN0 X2ludF9vcGVyYW5kIiAgICAgICAgICAiIGksICBpIikNCisgICAgICAgICAg KG1hdGNoX29wZXJhbmQgNiAiY29uc3RfaW50X29wZXJhbmQiICAgICAgICAg ICIgaSwgIGkiKQ0KKyAgICAgICAgICAocmVnOlNJIFZMX1JFR05VTSkNCisg ICAgICAgICAgKHJlZzpTSSBWVFlQRV9SRUdOVU0pXSBVTlNQRUNfVlBSRURJ Q0FURSkNCisgICAgICAgKHVuc3BlYzpWU0kNCisgICAgICAgICBbKG1hdGNo X29wZXJhbmQ6VlNJIDIgICAgICAgInJlZ2lzdGVyX29wZXJhbmQiICJ2ciwg dnIiKQ0KKyAgICAgICAgICAobWF0Y2hfb3BlcmFuZDo8VkVMPiAzICJjb25z dF9pbnRfb3BlcmFuZCIgICAgIiBpLCAgaSIpXSBVTlNQRUNfQ1JZUFRPX1ZJ KQ0KKyAgICAgICAobWF0Y2hfb3BlcmFuZDpWU0kgMSAidmVjdG9yX21lcmdl X29wZXJhbmQiICAgICAgInZ1LCAgMCIpKSldDQorICAiVEFSR0VUX1pWS05F RCB8fCBUQVJHRVRfWlZLU0VEIg0KKyAgInY8dmlfaW5zX25hbWU+LnZpXHQl MCwlMiwlMyINCisgIFsoc2V0X2F0dHIgInR5cGUiICJ2PHZpX2luc19uYW1l PiIpDQorICAgKHNldF9hdHRyICJtb2RlIiAiPE1PREU+IildKQ0KKw0KKzs7 IHZhZXNrZjIudmkgdnNtM2MudmkNCisoZGVmaW5lX2luc24gIkBwcmVkX3Zp PHZpX2luczFfbmFtZT48bW9kZT5fbm9tYXNrZWRvZmZfc2NhbGFyIg0KKyAg WyhzZXQgKG1hdGNoX29wZXJhbmQ6VlNJIDAgInJlZ2lzdGVyX29wZXJhbmQi ICAgICAgICI9dnIiKQ0KKyAgICAgKGlmX3RoZW5fZWxzZTpWU0kNCisgICAg ICAgKHVuc3BlYzo8Vk0+DQorICAgICAgICAgWyhtYXRjaF9vcGVyYW5kIDQg InZlY3Rvcl9sZW5ndGhfb3BlcmFuZCIgICAgInJLIikNCisgICAgICAgICAg KG1hdGNoX29wZXJhbmQgNSAiY29uc3RfaW50X29wZXJhbmQiICAgICAgICAi IGkiKQ0KKyAgICAgICAgICAobWF0Y2hfb3BlcmFuZCA2ICJjb25zdF9pbnRf b3BlcmFuZCIgICAgICAgICIgaSIpDQorICAgICAgICAgIChyZWc6U0kgVkxf UkVHTlVNKQ0KKyAgICAgICAgICAocmVnOlNJIFZUWVBFX1JFR05VTSldIFVO U1BFQ19WUFJFRElDQVRFKQ0KKyAgICAgICAodW5zcGVjOlZTSQ0KKyAgICAg ICAgICBbKG1hdGNoX29wZXJhbmQ6VlNJIDEgICAicmVnaXN0ZXJfb3BlcmFu ZCIgICIgMCIpDQorICAgICAgICAgICAobWF0Y2hfb3BlcmFuZDpWU0kgMiAg ICJyZWdpc3Rlcl9vcGVyYW5kIiAgInZyIikNCisgICAgICAgICAgIChtYXRj aF9vcGVyYW5kOjxWRUw+IDMgImNvbnN0X2ludF9vcGVyYW5kIiAiIGkiKV0g VU5TUEVDX0NSWVBUT19WSTEpDQorICAgICAgIChtYXRjaF9kdXAgMSkpKV0N CisgICJUQVJHRVRfWlZLTkVEIHx8IFRBUkdFVF9aVktTSCINCisgICJ2PHZp X2luczFfbmFtZT4udmlcdCUwLCUyLCUzIg0KKyAgWyhzZXRfYXR0ciAidHlw ZSIgInY8dmlfaW5zMV9uYW1lPiIpDQorICAgKHNldF9hdHRyICJtb2RlIiAi PE1PREU+IildKQ0KKw0KKzs7IHp2a3NoIGluc3RydWN0aW9ucyBwYXR0ZXJu cy4NCis7OyB2c20zbWUudnYNCisoZGVmaW5lX2luc24gIkBwcmVkX3ZzbTNt ZTxtb2RlPiINCisgIFsoc2V0IChtYXRjaF9vcGVyYW5kOlZTSSAwICJyZWdp c3Rlcl9vcGVyYW5kIiAgICAiPXZyLCB2ciIpDQorICAgICAoaWZfdGhlbl9l bHNlOlZTSQ0KKyAgICAgICAodW5zcGVjOjxWTT4NCisgICAgICAgICBbKG1h dGNoX29wZXJhbmQgNCAidmVjdG9yX2xlbmd0aF9vcGVyYW5kIiAiIHJLLCBy SyIpDQorICAgICAgICAgIChtYXRjaF9vcGVyYW5kIDUgImNvbnN0X2ludF9v cGVyYW5kIiAgICAgIiAgaSwgIGkiKQ0KKyAgICAgICAgICAobWF0Y2hfb3Bl cmFuZCA2ICJjb25zdF9pbnRfb3BlcmFuZCIgICAgICIgIGksICBpIikNCisg ICAgICAgICAgKHJlZzpTSSBWTF9SRUdOVU0pDQorICAgICAgICAgIChyZWc6 U0kgVlRZUEVfUkVHTlVNKV0gVU5TUEVDX1ZQUkVESUNBVEUpDQorICAgICAg ICh1bnNwZWM6VlNJDQorICAgICAgICAgIFsobWF0Y2hfb3BlcmFuZDpWU0kg MiAicmVnaXN0ZXJfb3BlcmFuZCIgIiB2ciwgdnIiKQ0KKyAgICAgICAgICAg KG1hdGNoX29wZXJhbmQ6VlNJIDMgInJlZ2lzdGVyX29wZXJhbmQiICIgdnIs IHZyIildIFVOU1BFQ19WU00zTUUpDQorICAgICAgIChtYXRjaF9vcGVyYW5k OlZTSSAxICJ2ZWN0b3JfbWVyZ2Vfb3BlcmFuZCIgIiBzdnUsIDAiKSkpXQ0K KyAgIlRBUkdFVF9aVktTSCINCisgICJ2c20zbWUudnZcdCUwLCUyLCUzIg0K KyAgWyhzZXRfYXR0ciAidHlwZSIgInZzbTNtZSIpDQorICAgKHNldF9hdHRy ICJtb2RlIiAiPE1PREU+IildKQ0KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBm aWxlDQpkaWZmIC0tZ2l0IGEvZ2NjL2NvbmZpZy9yaXNjdi92ZWN0b3ItaXRl cmF0b3JzLm1kIGIvZ2NjL2NvbmZpZy9yaXNjdi92ZWN0b3ItaXRlcmF0b3Jz Lm1kDQppbmRleCA1ZjVmN2I1Yjk4Ni4uNjIwMDVjYTFlNmMgMTAwNjQ0DQot LS0gYS9nY2MvY29uZmlnL3Jpc2N2L3ZlY3Rvci1pdGVyYXRvcnMubWQNCisr KyBiL2djYy9jb25maWcvcmlzY3YvdmVjdG9yLWl0ZXJhdG9ycy5tZA0KQEAg LTM5MTYsMyArMzkxNiw0NCBAQA0KICAgKFYxMDI0QkkgInJpc2N2X3ZlY3Rv cjo6dmxzX21vZGVfdmFsaWRfcCAoVjEwMjRCSW1vZGUpICYmIFRBUkdFVF9N SU5fVkxFTiA+PSAxMDI0IikNCiAgIChWMjA0OEJJICJyaXNjdl92ZWN0b3I6 OnZsc19tb2RlX3ZhbGlkX3AgKFYyMDQ4Qkltb2RlKSAmJiBUQVJHRVRfTUlO X1ZMRU4gPj0gMjA0OCIpDQogICAoVjQwOTZCSSAicmlzY3ZfdmVjdG9yOjp2 bHNfbW9kZV92YWxpZF9wIChWNDA5NkJJbW9kZSkgJiYgVEFSR0VUX01JTl9W TEVOID49IDQwOTYiKV0pDQorDQorKGRlZmluZV9tb2RlX2l0ZXJhdG9yIFZT SSBbDQorICBSVlZNOFNJIFJWVk00U0kgUlZWTTJTSSBSVlZNMVNJIChSVlZN RjJTSSAiVEFSR0VUX01JTl9WTEVOID4gMzIiKQ0KK10pDQorDQorKGRlZmlu ZV9tb2RlX2l0ZXJhdG9yIFZMTVVMWDJfU0kgWw0KKyAgUlZWTTRTSSBSVlZN MlNJIFJWVk0xU0kgKFJWVk1GMlNJICJUQVJHRVRfTUlOX1ZMRU4gPiAzMiIp DQorXSkNCisNCisoZGVmaW5lX21vZGVfaXRlcmF0b3IgVkxNVUxYNF9TSSBb DQorICBSVlZNMlNJIFJWVk0xU0kgKFJWVk1GMlNJICJUQVJHRVRfTUlOX1ZM RU4gPiAzMiIpDQorXSkNCisNCisoZGVmaW5lX21vZGVfaXRlcmF0b3IgVkxN VUxYOF9TSSBbDQorICBSVlZNMVNJIChSVlZNRjJTSSAiVEFSR0VUX01JTl9W TEVOID4gMzIiKQ0KK10pDQorDQorKGRlZmluZV9tb2RlX2l0ZXJhdG9yIFZM TVVMWDE2X1NJIFsNCisgIChSVlZNRjJTSSAiVEFSR0VUX01JTl9WTEVOID4g MzIiKQ0KK10pDQorDQorKGRlZmluZV9tb2RlX2F0dHIgVlNJWDIgWw0KKyAg KFJWVk04U0kgIlJWVk04U0kiKSAoUlZWTTRTSSAiUlZWTThTSSIpIChSVlZN MlNJICJSVlZNNFNJIikgKFJWVk0xU0kgIlJWVk0yU0kiKSAoUlZWTUYyU0kg IlJWVk0xU0kiKQ0KK10pDQorDQorKGRlZmluZV9tb2RlX2F0dHIgVlNJWDQg Ww0KKyAgKFJWVk0yU0kgIlJWVk04U0kiKSAoUlZWTTFTSSAiUlZWTTRTSSIp IChSVlZNRjJTSSAiUlZWTTJTSSIpDQorXSkNCisNCisoZGVmaW5lX21vZGVf YXR0ciBWU0lYOCBbDQorICAoUlZWTTFTSSAiUlZWTThTSSIpIChSVlZNRjJT SSAiUlZWTTRTSSIpDQorXSkNCisNCisoZGVmaW5lX21vZGVfYXR0ciBWU0lY MTYgWw0KKyAgKFJWVk1GMlNJICJSVlZNOFNJIikNCitdKQ0KKw0KKyhkZWZp bmVfbW9kZV9pdGVyYXRvciBWREkgWw0KKyAgKFJWVk04REkgIlRBUkdFVF9W RUNUT1JfRUxFTl82NCIpIChSVlZNNERJICJUQVJHRVRfVkVDVE9SX0VMRU5f NjQiKQ0KKyAgKFJWVk0yREkgIlRBUkdFVF9WRUNUT1JfRUxFTl82NCIpIChS VlZNMURJICJUQVJHRVRfVkVDVE9SX0VMRU5fNjQiKQ0KK10pDQpcIE5vIG5l d2xpbmUgYXQgZW5kIG9mIGZpbGUNCmRpZmYgLS1naXQgYS9nY2MvY29uZmln L3Jpc2N2L3ZlY3Rvci5tZCBiL2djYy9jb25maWcvcmlzY3YvdmVjdG9yLm1k DQppbmRleCBmNjA3ZDc2OGIyNi4uY2FmMWI4OGJhNWUgMTAwNjQ0DQotLS0g YS9nY2MvY29uZmlnL3Jpc2N2L3ZlY3Rvci5tZA0KKysrIGIvZ2NjL2NvbmZp Zy9yaXNjdi92ZWN0b3IubWQNCkBAIC01Miw3ICs1Miw5IEBADQogIHZtYWx1 LHZtcG9wLHZtZmZzLHZtc2ZzLHZtaW90YSx2bWlkeCx2aW1vdnZ4LHZpbW92 eHYsdmZtb3Z2Zix2Zm1vdmZ2LFwNCiAgdnNsaWRldXAsdnNsaWRlZG93bix2 aXNsaWRlMXVwLHZpc2xpZGUxZG93bix2ZnNsaWRlMXVwLHZmc2xpZGUxZG93 bixcDQogIHZnYXRoZXIsdmNvbXByZXNzLHZsc2VnZGUsdnNzZWd0ZSx2bHNl Z2RzLHZzc2VndHMsdmxzZWdkdXgsdmxzZWdkb3gsXA0KLSAgIHZzc2VndHV4 LHZzc2VndG94LHZsc2VnZGZmIikNCisgICB2c3NlZ3R1eCx2c3NlZ3RveCx2 bHNlZ2RmZix2YW5kbix2YnJldix2YnJldjgsdnJldjgsdmNseix2Y3R6LHZy b2wsXA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgdnJvcix2d3NsbCx2 Y2xtdWwsdmNsbXVsaCx2Z2hzaCx2Z211bCx2YWVzZWYsdmFlc2VtLHZhZXNk Zix2YWVzZG0sXA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgdmFlc2tm MSx2YWVza2YyLHZhZXN6LHZzaGEybXMsdnNoYTJjaCx2c2hhMmNsLHZzbTRr LHZzbTRyLHZzbTNtZSx2c20zYyIpDQooY29uc3Rfc3RyaW5nICJ0cnVlIild DQooY29uc3Rfc3RyaW5nICJmYWxzZSIpKSkNCkBAIC03NCw3ICs3Niw5IEBA DQogIHZtYWx1LHZtcG9wLHZtZmZzLHZtc2ZzLHZtaW90YSx2bWlkeCx2aW1v dnh2LHZmbW92ZnYsXA0KICB2c2xpZGV1cCx2c2xpZGVkb3duLHZpc2xpZGUx dXAsdmlzbGlkZTFkb3duLHZmc2xpZGUxdXAsdmZzbGlkZTFkb3duLFwNCiAg dmdhdGhlcix2Y29tcHJlc3MsdmxzZWdkZSx2c3NlZ3RlLHZsc2VnZHMsdnNz ZWd0cyx2bHNlZ2R1eCx2bHNlZ2RveCxcDQotICAgdnNzZWd0dXgsdnNzZWd0 b3gsdmxzZWdkZmYiKQ0KKyAgIHZzc2VndHV4LHZzc2VndG94LHZsc2VnZGZm LHZhbmRuLHZicmV2LHZicmV2OCx2cmV2OCx2Y2x6LHZjdHosdnJvbCxcDQor ICAgICAgICAgICAgICAgICAgICAgICAgICB2cm9yLHZ3c2xsLHZjbG11bCx2 Y2xtdWxoLHZnaHNoLHZnbXVsLHZhZXNlZix2YWVzZW0sdmFlc2RmLHZhZXNk bSxcDQorICAgICAgICAgICAgICAgICAgICAgICAgICB2YWVza2YxLHZhZXNr ZjIsdmFlc3osdnNoYTJtcyx2c2hhMmNoLHZzaGEyY2wsdnNtNGssdnNtNHIs dnNtM21lLHZzbTNjIikNCihjb25zdF9zdHJpbmcgInRydWUiKV0NCihjb25z dF9zdHJpbmcgImZhbHNlIikpKQ0KQEAgLTQyNiw3ICs0MzAsMTEgQEANCiAg dml3cmVkLHZmcmVkdSx2ZnJlZG8sdmZ3cmVkdSx2ZndyZWRvLHZpbW92dngs XA0KICB2aW1vdnh2LHZmbW92dmYsdmZtb3Zmdix2c2xpZGV1cCx2c2xpZGVk b3duLFwNCiAgdmlzbGlkZTF1cCx2aXNsaWRlMWRvd24sdmZzbGlkZTF1cCx2 ZnNsaWRlMWRvd24sXA0KLSAgIHZnYXRoZXIsdmNvbXByZXNzLHZsc2VnZHV4 LHZsc2VnZG94LHZzc2VndHV4LHZzc2VndG94IikNCisgICB2Z2F0aGVyLHZj b21wcmVzcyx2bHNlZ2R1eCx2bHNlZ2RveCx2c3NlZ3R1eCx2c3NlZ3RveCxc DQorICAgdmFuZG4sdmJyZXYsdmJyZXY4LHZyZXY4LHZjbHosdmN0eix2cm9s LHZyb3IsdndzbGwsXA0KKyAgIHZjbG11bCx2Y2xtdWxoLHZnaHNoLHZnbXVs LHZhZXNlZix2YWVzZW0sdmFlc2RmLHZhZXNkbSxcDQorICAgdmFlc2tmMSx2 YWVza2YyLHZhZXN6LHZzaGEybXMsdnNoYTJjaCx2c2hhMmNsLHZzbTRrLHZz bTRyLFwNCisgICB2c20zbWUsdnNtM2MiKQ0KICAgKGNvbnN0X2ludCBJTlZB TElEX0FUVFJJQlVURSkNCihlcV9hdHRyICJtb2RlIiAiUlZWTThRSSxSVlZN MUJJIikgKGNvbnN0X2ludCAxKQ0KKGVxX2F0dHIgIm1vZGUiICJSVlZNNFFJ LFJWVk1GMkJJIikgKGNvbnN0X2ludCAyKQ0KQEAgLTY5OCwxMCArNzA2LDEy IEBADQp2ZndjdnRmdG9pLHZmd2N2dGZ0b2YsdmZuY3Z0aXRvZix2Zm5jdnRm dG9pLHZmbmN2dGZ0b2YsdmZjbGFzcyxcDQp2aXJlZCx2aXdyZWQsdmZyZWR1 LHZmcmVkbyx2ZndyZWR1LHZmd3JlZG8sdmltb3Z4dix2Zm1vdmZ2LFwNCnZz bGlkZXVwLHZzbGlkZWRvd24sdmlzbGlkZTF1cCx2aXNsaWRlMWRvd24sdmZz bGlkZTF1cCx2ZnNsaWRlMWRvd24sXA0KLSB2Z2F0aGVyLHZsZGZmLHZpd211 bGFkZCx2ZndtdWxhZGQsdmxzZWdkZSx2bHNlZ2RzLHZsc2VnZHV4LHZsc2Vn ZG94LHZsc2VnZGZmIikNCisgdmdhdGhlcix2bGRmZix2aXdtdWxhZGQsdmZ3 bXVsYWRkLHZsc2VnZGUsdmxzZWdkcyx2bHNlZ2R1eCx2bHNlZ2RveCx2bHNl Z2RmZixcDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YW5k bix2YnJldix2YnJldjgsdnJldjgsdnJvbCx2cm9yLHZ3c2xsLHZjbG11bCx2 Y2xtdWxoIikNCiAgICAgICAoY29uc3RfaW50IDIpDQotICAgICAgICAoZXFf YXR0ciAidHlwZSIgInZpbWVyZ2UsdmZtZXJnZSx2Y29tcHJlc3MiKQ0KKyAg ICAgICAgKGVxX2F0dHIgInR5cGUiICJ2aW1lcmdlLHZmbWVyZ2UsdmNvbXBy ZXNzLHZnaHNoLHZnbXVsLHZhZXNlZix2YWVzZW0sdmFlc2RmLHZhZXNkbSxc DQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWVza2YxLHZh ZXNrZjIsdmFlc3osdnNoYTJtcyx2c2hhMmNoLHZzaGEyY2wsdnNtNGssdnNt NHIsdnNtM21lLHZzbTNjIikNCiAgICAgICAoY29uc3RfaW50IDEpDQogICAg ICAgKGVxX2F0dHIgInR5cGUiICJ2aW11bGFkZCx2Zm11bGFkZCIpDQpAQCAt NzQwLDcgKzc1MCw4IEBADQogIHZzdG94LHZleHQsdm1zZnMsdm1pb3RhLHZm c3FydCx2ZnJlY3AsdmZjdnRpdG9mLHZsZGZmLFwNCiAgdmZjdnRmdG9pLHZm d2N2dGl0b2YsdmZ3Y3Z0ZnRvaSx2ZndjdnRmdG9mLHZmbmN2dGl0b2YsXA0K ICB2Zm5jdnRmdG9pLHZmbmN2dGZ0b2YsdmZjbGFzcyx2aW1vdnh2LHZmbW92 ZnYsdmNvbXByZXNzLFwNCi0gICB2bHNlZ2RlLHZzc2VndHMsdnNzZWd0dXgs dnNzZWd0b3gsdmxzZWdkZmYiKQ0KKyAgIHZsc2VnZGUsdnNzZWd0cyx2c3Nl Z3R1eCx2c3NlZ3RveCx2bHNlZ2RmZix2YnJldix2YnJldjgsdnJldjgsXA0K KyAgICAgICAgICAgICAgICAgICAgICAgICAgdmdoc2gsdmFlc2tmMSx2YWVz a2YyLHZzaGEybXMsdnNoYTJjaCx2c2hhMmNsLHZzbTRrLHZzbTNtZSx2c20z YyIpDQogICAoY29uc3RfaW50IDQpDQo7OyBJZiBvcGVyYW5kc1szXSBvZiAi dmxkcyIgaXMgbm90IHZlY3RvciBtb2RlLCBpdCBpcyBwcmVkX2Jyb2FkY2Fz dC4NCkBAIC03NTUsMTMgKzc2NiwxNSBAQA0KICB2c3NoaWZ0LHZuY2xpcCx2 ZmFsdSx2Zm11bCx2Zm1pbm1heCx2ZmRpdix2ZndhbHUsdmZ3bXVsLFwNCiAg dmZzZ25qLHZmbWVyZ2UsdmlyZWQsdml3cmVkLHZmcmVkdSx2ZnJlZG8sdmZ3 cmVkdSx2ZndyZWRvLFwNCiAgdnNsaWRldXAsdnNsaWRlZG93bix2aXNsaWRl MXVwLHZpc2xpZGUxZG93bix2ZnNsaWRlMXVwLHZmc2xpZGUxZG93bixcDQot ICAgdmdhdGhlcix2aXdtdWxhZGQsdmZ3bXVsYWRkLHZsc2VnZHMsdmxzZWdk dXgsdmxzZWdkb3giKQ0KKyAgIHZnYXRoZXIsdml3bXVsYWRkLHZmd211bGFk ZCx2bHNlZ2RzLHZsc2VnZHV4LHZsc2VnZG94LHZhbmRuLHZyb2wsXA0KKyAg ICAgICAgICAgICAgICAgICAgICAgICAgdnJvcix2d3NsbCx2Y2xtdWwsdmNs bXVsaCIpDQogICAoY29uc3RfaW50IDUpDQooZXFfYXR0ciAidHlwZSIgInZp Y21wLHZpbXVsYWRkLHZmY21wLHZmbXVsYWRkIikNCiAgIChjb25zdF9pbnQg NikNCi0gKGVxX2F0dHIgInR5cGUiICJ2bXBvcCx2bWZmcyx2bWlkeCx2c3Nl Z3RlIikNCisgKGVxX2F0dHIgInR5cGUiICJ2bXBvcCx2bWZmcyx2bWlkeCx2 c3NlZ3RlLHZjbHosdmN0eix2Z211bCx2YWVzZWYsdmFlc2VtLHZhZXNkZix2 YWVzZG0sXA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgdmFlc3osdnNt NHIiKQ0KICAgKGNvbnN0X2ludCAzKV0NCiAgIChjb25zdF9pbnQgSU5WQUxJ RF9BVFRSSUJVVEUpKSkNCkBAIC03NzAsNyArNzgzLDggQEANCiAgIChjb25k IFsoZXFfYXR0ciAidHlwZSIgInZsZGUsdmltb3YsdmZtb3YsdmV4dCx2bWlv dGEsdmZzcXJ0LHZmcmVjcCxcDQogIHZmY3Z0aXRvZix2ZmN2dGZ0b2ksdmZ3 Y3Z0aXRvZix2ZndjdnRmdG9pLHZmd2N2dGZ0b2YsXA0KICB2Zm5jdnRpdG9m LHZmbmN2dGZ0b2ksdmZuY3Z0ZnRvZix2ZmNsYXNzLHZpbW92eHYsdmZtb3Zm dixcDQotICAgdmNvbXByZXNzLHZsZGZmLHZsc2VnZGUsdmxzZWdkZmYiKQ0K KyAgIHZjb21wcmVzcyx2bGRmZix2bHNlZ2RlLHZsc2VnZGZmLHZicmV2LHZi cmV2OCx2cmV2OCx2Z2hzaCxcDQorICAgICAgICAgICAgICAgICAgICAgICAg ICB2YWVza2YxLHZhZXNrZjIsdnNoYTJtcyx2c2hhMmNoLHZzaGEyY2wsdnNt NGssdnNtM21lLHZzbTNjIikNCiAgIChzeW1ib2xfcmVmICJyaXNjdl92ZWN0 b3I6OmdldF90YShvcGVyYW5kc1s1XSkiKQ0KOzsgSWYgb3BlcmFuZHNbM10g b2YgInZsZHMiIGlzIG5vdCB2ZWN0b3IgbW9kZSwgaXQgaXMgcHJlZF9icm9h ZGNhc3QuDQpAQCAtNzg2LDEzICs4MDAsMTMgQEANCiAgdmZ3YWx1LHZmd211 bCx2ZnNnbmosdmZtZXJnZSx2aXJlZCx2aXdyZWQsdmZyZWR1LFwNCiAgdmZy ZWRvLHZmd3JlZHUsdmZ3cmVkbyx2c2xpZGV1cCx2c2xpZGVkb3duLHZpc2xp ZGUxdXAsXA0KICB2aXNsaWRlMWRvd24sdmZzbGlkZTF1cCx2ZnNsaWRlMWRv d24sdmdhdGhlcix2aXdtdWxhZGQsdmZ3bXVsYWRkLFwNCi0gICB2bHNlZ2Rz LHZsc2VnZHV4LHZsc2VnZG94IikNCisgICB2bHNlZ2RzLHZsc2VnZHV4LHZs c2VnZG94LHZhbmRuLHZyb2wsdnJvcix2d3NsbCx2Y2xtdWwsdmNsbXVsaCIp DQogICAoc3ltYm9sX3JlZiAicmlzY3ZfdmVjdG9yOjpnZXRfdGEob3BlcmFu ZHNbNl0pIikNCihlcV9hdHRyICJ0eXBlIiAidmltdWxhZGQsdmZtdWxhZGQi KQ0KICAgKHN5bWJvbF9yZWYgInJpc2N2X3ZlY3Rvcjo6Z2V0X3RhKG9wZXJh bmRzWzddKSIpDQotIChlcV9hdHRyICJ0eXBlIiAidm1pZHgiKQ0KKyAoZXFf YXR0ciAidHlwZSIgInZtaWR4LHZnbXVsLHZhZXNlZix2YWVzZW0sdmFlc2Rm LHZhZXNkbSx2YWVzeix2c200ciIpDQogICAoc3ltYm9sX3JlZiAicmlzY3Zf dmVjdG9yOjpnZXRfdGEob3BlcmFuZHNbNF0pIildDQooY29uc3RfaW50IElO VkFMSURfQVRUUklCVVRFKSkpDQpAQCAtODAwLDcgKzgxNCw3IEBADQooZGVm aW5lX2F0dHIgIm1hIiAiIg0KICAgKGNvbmQgWyhlcV9hdHRyICJ0eXBlIiAi dmxkZSx2ZXh0LHZtaW90YSx2ZnNxcnQsdmZyZWNwLHZmY3Z0aXRvZix2ZmN2 dGZ0b2ksXA0KICB2ZndjdnRpdG9mLHZmd2N2dGZ0b2ksdmZ3Y3Z0ZnRvZix2 Zm5jdnRpdG9mLHZmbmN2dGZ0b2ksXA0KLSAgIHZmbmN2dGZ0b2YsdmZjbGFz cyx2bGRmZix2bHNlZ2RlLHZsc2VnZGZmIikNCisgICB2Zm5jdnRmdG9mLHZm Y2xhc3MsdmxkZmYsdmxzZWdkZSx2bHNlZ2RmZix2YnJldix2YnJldjgsdnJl djgiKQ0KICAgKHN5bWJvbF9yZWYgInJpc2N2X3ZlY3Rvcjo6Z2V0X21hKG9w ZXJhbmRzWzZdKSIpDQo7OyBJZiBvcGVyYW5kc1szXSBvZiAidmxkcyIgaXMg bm90IHZlY3RvciBtb2RlLCBpdCBpcyBwcmVkX2Jyb2FkY2FzdC4NCkBAIC04 MTUsNyArODI5LDggQEANCiAgdm5jbGlwLHZpY21wLHZmYWx1LHZmbXVsLHZm bWlubWF4LHZmZGl2LFwNCiAgdmZ3YWx1LHZmd211bCx2ZnNnbmosdmZjbXAs dnNsaWRldXAsdnNsaWRlZG93bixcDQogIHZpc2xpZGUxdXAsdmlzbGlkZTFk b3duLHZmc2xpZGUxdXAsdmZzbGlkZTFkb3duLHZnYXRoZXIsXA0KLSAgIHZp d211bGFkZCx2ZndtdWxhZGQsdmxzZWdkcyx2bHNlZ2R1eCx2bHNlZ2RveCIp DQorICAgdml3bXVsYWRkLHZmd211bGFkZCx2bHNlZ2RzLHZsc2VnZHV4LHZs c2VnZG94LHZhbmRuLHZyb2wsXA0KKyAgICAgICAgICAgICAgICAgICAgICAg ICAgdnJvcix2d3NsbCx2Y2xtdWwsdmNsbXVsaCIpDQogICAoc3ltYm9sX3Jl ZiAicmlzY3ZfdmVjdG9yOjpnZXRfbWEob3BlcmFuZHNbN10pIikNCihlcV9h dHRyICJ0eXBlIiAidmltdWxhZGQsdmZtdWxhZGQiKQ0KQEAgLTgzMSw5ICs4 NDYsMTAgQEANCiAgdmZzcXJ0LHZmcmVjcCx2Zm1lcmdlLHZmY3Z0aXRvZix2 ZmN2dGZ0b2ksdmZ3Y3Z0aXRvZixcDQogIHZmd2N2dGZ0b2ksdmZ3Y3Z0ZnRv Zix2Zm5jdnRpdG9mLHZmbmN2dGZ0b2ksdmZuY3Z0ZnRvZixcDQogIHZmY2xh c3MsdmlyZWQsdml3cmVkLHZmcmVkdSx2ZnJlZG8sdmZ3cmVkdSx2ZndyZWRv LFwNCi0gICB2aW1vdnh2LHZmbW92ZnYsdmxzZWdkZSx2bHNlZ2RmZix2bWlv dGEiKQ0KKyAgIHZpbW92eHYsdmZtb3Zmdix2bHNlZ2RlLHZsc2VnZGZmLHZt aW90YSx2YnJldix2YnJldjgsdnJldjgiKQ0KICAgKGNvbnN0X2ludCA3KQ0K LSAoZXFfYXR0ciAidHlwZSIgInZsZG0sdnN0bSx2bWFsdSx2bWFsdSIpDQor IChlcV9hdHRyICJ0eXBlIiAidmxkbSx2c3RtLHZtYWx1LHZtYWx1LHZnbXVs LHZhZXNlZix2YWVzZW0sdmFlc2RmLHZhZXNkbSx2YWVzeixcDQorICAgICAg ICAgICAgICAgICAgICAgICAgICB2c200ciIpDQogICAoY29uc3RfaW50IDUp DQo7OyBJZiBvcGVyYW5kc1szXSBvZiAidmxkcyIgaXMgbm90IHZlY3RvciBt b2RlLCBpdCBpcyBwcmVkX2Jyb2FkY2FzdC4NCkBAIC04NDgsMTggKzg2NCwx OSBAQA0KICB2bmNsaXAsdmljbXAsdmZhbHUsdmZtdWwsdmZtaW5tYXgsdmZk aXYsdmZ3YWx1LHZmd211bCxcDQogIHZmc2duaix2ZmNtcCx2c2xpZGV1cCx2 c2xpZGVkb3duLHZpc2xpZGUxdXAsXA0KICB2aXNsaWRlMWRvd24sdmZzbGlk ZTF1cCx2ZnNsaWRlMWRvd24sdmdhdGhlcix2aXdtdWxhZGQsdmZ3bXVsYWRk LFwNCi0gICB2bHNlZ2RzLHZsc2VnZHV4LHZsc2VnZG94IikNCisgICB2bHNl Z2RzLHZsc2VnZHV4LHZsc2VnZG94LHZhbmRuLHZyb2wsdnJvcix2d3NsbCIp DQogICAoY29uc3RfaW50IDgpDQotIChlcV9hdHRyICJ0eXBlIiAidnN0dXgs dnN0b3gsdnNzZWd0cyx2c3NlZ3R1eCx2c3NlZ3RveCIpDQorIChlcV9hdHRy ICJ0eXBlIiAidnN0dXgsdnN0b3gsdnNzZWd0cyx2c3NlZ3R1eCx2c3NlZ3Rv eCx2Y2xtdWwsdmNsbXVsaCIpDQogICAoY29uc3RfaW50IDUpDQooZXFfYXR0 ciAidHlwZSIgInZpbXVsYWRkLHZmbXVsYWRkIikNCiAgIChjb25zdF9pbnQg OSkNCi0gKGVxX2F0dHIgInR5cGUiICJ2bXNmcyx2bWlkeCx2Y29tcHJlc3Mi KQ0KKyAoZXFfYXR0ciAidHlwZSIgInZtc2ZzLHZtaWR4LHZjb21wcmVzcyx2 Z2hzaCx2YWVza2YxLHZhZXNrZjIsdnNoYTJtcyx2c2hhMmNoLHZzaGEyY2ws XA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgdnNtNGssdnNtM21lLHZz bTNjIikNCiAgIChjb25zdF9pbnQgNikNCi0gKGVxX2F0dHIgInR5cGUiICJ2 bXBvcCx2bWZmcyx2c3NlZ3RlIikNCisgKGVxX2F0dHIgInR5cGUiICJ2bXBv cCx2bWZmcyx2c3NlZ3RlLHZjbHosdmN0eiIpDQogICAoY29uc3RfaW50IDQp XQ0KKGNvbnN0X2ludCBJTlZBTElEX0FUVFJJQlVURSkpKQ0KLS0gDQoyLjE3 LjENCiANCiANCg== ------=_001_NextPart321140371107_=------