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 4F8843858D37 for ; Thu, 26 Oct 2023 07:48:14 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 4F8843858D37 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 4F8843858D37 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=1698306503; cv=none; b=TRpc83WM0jBzpzVPN9A1cuGZgz4SWXbOtOP7zprlOseoSf6eimkEVh2r+dxEvxf0+ECPiMGkWJmRSYD2WR3wbk+XERRFqZlnezUJ8JAUFGBhcVYDIXvfmU/rp/UqPVryNnsUBEoPrvdPClXtqVMj0cbny25Shnuv0vbSurgBEVc= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1698306503; c=relaxed/simple; bh=69jj0YgZ/T3B55IdZbCOl2sbhyRXQ/Qe0TLV13SS4Js=; h=Date:From:To:Subject:Mime-Version:Message-ID; b=USULWL2dvpzMdlK6FywwTgovgb8X2bitaHUOfIiL2vF5fCaw4fcoUYyy2i1gdfx0JKd5+oQuzm1k4DT58Mb9TJfCh4iX+1ZMtlZdXfvkroXFPwE+T0mB0hICCQisAZ1SUfGb6EEjXMQ8WSMb3fIgYDrZiMfW42dAHmsMR5I7YJI= ARC-Authentication-Results: i=1; server2.sourceware.org X-QQ-mid: bizesmtp79t1698306487t4grnjv0 Received: from LAPTOP-EPITNQBU ( [61.141.253.106]) by bizesmtp.qq.com (ESMTP) with id ; Thu, 26 Oct 2023 15:48:06 +0800 (CST) X-QQ-SSF: 01400000000000G0V000000A0000000 X-QQ-FEAT: /gpUuYPpeIXcKHL2bJrgPCxKYkfCmXLea5GY1b+gzHfC44Vr2zV7Ya1q3TluE wp/Ip7lHpqRY4BlwTNuMhvxt0kKWKloguwHJLMo0qlgz+h5IGR0h7rPoBK4U2iULOMW2sGV MHsLVkr28NWt6LOdNdPgWz/axZy4qKr387WKNjyfp7dxr/hs6B+WVOuG2abA20LGhRsUE2a NyF+25t+/shUaurlPOw7buiN3ZRMAn6muH2QD0Gnmp7uvnndWIRgjGnpWWfxvC63R+YccHT q8caOELJ8jOuDK5i7zLJOALeZ1894oUkaFNZkyAnbjLvdlrCSlHGpVFDwCaXulFsrgWfKK1 bF2mPgW7/UG/AHmNdHBzsJYFtMOwaQ3Qbpi4ne/8Y0LOj4Sips34XC5NFeB3wAYsGjNBzai yTwfAvb3yfGh32+olroS4g== X-QQ-GoodBg: 2 X-BIZMAIL-ID: 7445065090779746540 Date: Thu, 26 Oct 2023 15:48:07 +0800 From: "juzhe.zhong@rivai.ai" To: pan2.li , "Patrick O'Neill" , gcc-patches Cc: kito.cheng , Kito.cheng , jeffreyalaw , "Robin Dapp" Subject: Re: RE: [PATCH] RISC-V: Add AVL propagation PASS for RVV auto-vectorization References: <20231024033200.224558-1-juzhe.zhong@rivai.ai>, <4A9A3B661519DAC3+202310241144138297945@rivai.ai>, <6e22f033-887a-3bf1-316a-5e5ec69a3434@rivosinc.com>, <0f93e039-9bd3-07f1-2d48-9b4a13efe99b@rivosinc.com>, <1635D8934895E936+202310252020243457391@rivai.ai>, , <07CC46FFE60FF2A1+202310260849149380983@rivai.ai>, <2958b17e-bd91-b2fd-fc5c-0a5d4080720e@rivosinc.com>, , X-Priority: 3 X-GUID: 047C683E-E837-4904-BDC5-88D917C65199 X-Has-Attach: no X-Mailer: Foxmail 7.2.16.188[cn] Mime-Version: 1.0 Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 X-QQ-SENDSIZE: 520 Feedback-ID: bizesmtp:rivai.ai:qybglogicsvrgz:qybglogicsvrgz7a-one-0 X-Spam-Status: No, score=-4.1 required=5.0 tests=BAYES_00,BODY_8BITS,KAM_DMARC_STATUS,KAM_SHORT,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H4,RCVD_IN_MSPIKE_WL,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: WWVzLiBJIGp1c3QgY2hlY2tlZCBhZ2Fpbi4KCkJlZm9yZSB0aGlzIHBhdGNoOgpGQUlMOiBnY2Mu dGFyZ2V0L3Jpc2N2L3J2di9hdXRvdmVjL3Vub3AvcG9wY291bnQtcnVuLTEuYyBleGVjdXRpb24g dGVzdApGQUlMOiBnY2MudGFyZ2V0L3Jpc2N2L3J2di9hdXRvdmVjL3Vub3AvcG9wY291bnQtcnVu LTEuYyBleGVjdXRpb24gdGVzdApGQUlMOiBnY2MudGFyZ2V0L3Jpc2N2L3J2di9hdXRvdmVjL3Vu b3AvcG9wY291bnQtcnVuLTEuYyBleGVjdXRpb24gdGVzdApGQUlMOiBnY2MudGFyZ2V0L3Jpc2N2 L3J2di9hdXRvdmVjL3Vub3AvcG9wY291bnQtcnVuLTEuYyBleGVjdXRpb24gdGVzdApGQUlMOiBn Y2MudGFyZ2V0L3Jpc2N2L3J2di9hdXRvdmVjL3Vub3AvcG9wY291bnQtcnVuLTEuYyBleGVjdXRp b24gdGVzdApGQUlMOiBnY2MudGFyZ2V0L3Jpc2N2L3J2di9hdXRvdmVjL3Vub3AvcG9wY291bnQt cnVuLTEuYyBleGVjdXRpb24gdGVzdAoKCkFmdGVyIHRoaXMgcGF0Y2g6CkZBSUw6IGdjYy50YXJn ZXQvcmlzY3YvcnZ2L2F1dG92ZWMvdW5vcC9wb3Bjb3VudC1ydW4tMS5jIGV4ZWN1dGlvbiB0ZXN0 CkZBSUw6IGdjYy50YXJnZXQvcmlzY3YvcnZ2L2F1dG92ZWMvdW5vcC9wb3Bjb3VudC1ydW4tMS5j IGV4ZWN1dGlvbiB0ZXN0CkZBSUw6IGdjYy50YXJnZXQvcmlzY3YvcnZ2L2F1dG92ZWMvdW5vcC9w b3Bjb3VudC1ydW4tMS5jIGV4ZWN1dGlvbiB0ZXN0CkZBSUw6IGdjYy50YXJnZXQvcmlzY3YvcnZ2 L2F1dG92ZWMvdW5vcC9wb3Bjb3VudC1ydW4tMS5jIGV4ZWN1dGlvbiB0ZXN0CkZBSUw6IGdjYy50 YXJnZXQvcmlzY3YvcnZ2L2F1dG92ZWMvdW5vcC9wb3Bjb3VudC1ydW4tMS5jIGV4ZWN1dGlvbiB0 ZXN0CkZBSUw6IGdjYy50YXJnZXQvcmlzY3YvcnZ2L2F1dG92ZWMvdW5vcC9wb3Bjb3VudC1ydW4t MS5jIGV4ZWN1dGlvbiB0ZXN0CkZBSUw6IGdjYy50YXJnZXQvcmlzY3YvcnZ2L2F1dG92ZWMvdW5v cC9wb3Bjb3VudC1ydW4tMS5jIGV4ZWN1dGlvbiB0ZXN0CkZBSUw6IGdjYy50YXJnZXQvcmlzY3Yv cnZ2L2F1dG92ZWMvdW5vcC9wb3Bjb3VudC1ydW4tMS5jIGV4ZWN1dGlvbiB0ZXN0CgpJbmNyZWFz ZWQgRkFJTFMgYXJlIExNVUwgPSBNNC4gSSBoYXZlIGFuYWx5emVkIHRoZSBjb2RlZ2VuLiBMb29r cyByZWFzb25hYmxlLgoKTW9yZW92ZXIsIFdoZW4gSSByZW1vdmVkICdwb3Bjb3VudF82NCcgYW5k IHRlc3QsIGFsbCBwYXNzZWQgbm8gbWF0dGVyIGFwcGx5IHRoaXMgcGF0Y2ggb3Igbm90LgoKSSB0 aGluayBpdCBpcyBiZWNhdXNlIHBvcGNvdW50NjQgaXMgYnVnZ3kgaW4gUlYzMiwgdGhpcyBwYXRj aCB0cmlnZ2VyIExNVUwgPSA0IGJ1ZyBhbHJlYWR5IGV4aXN0ZWQgdGhhdCB3ZSB3ZXJlIGx1Y2t5 LgoKU28gSSBzdWdnZXN0IHRoaXMgcGF0Y2ggc2hvdWxkIGdvIGFoZWFkIGFuZCBpZ25vcmUgcG9w Y291bnQgaXNzdWUgZm9yIG5vdy4gKEkgd2lsbCBzZW5kIFYzIHdpdGggZml4aW5nIGR1bXAgRkFJ THMpLgoKSSBhbSBub3QgZmFtaWxpYXIgwqB3aXRoIHBvcGNvdW50LCBSb2Jpbi4gQW55IHN1Z2dl c3Rpb25zPwoKCmp1emhlLnpob25nQHJpdmFpLmFpCsKgCkZyb206wqBMaSwgUGFuMgpEYXRlOsKg MjAyMy0xMC0yNsKgMTU6MzMKVG86wqBqdXpoZS56aG9uZ0ByaXZhaS5haTsgUGF0cmljayBPJ05l aWxsOyBnY2MtcGF0Y2hlcwpDQzrCoGtpdG8uY2hlbmc7IEtpdG8uY2hlbmc7IGplZmZyZXlhbGF3 OyBSb2JpbiBEYXBwClN1YmplY3Q6wqBSRTogUmU6IFtQQVRDSF0gUklTQy1WOiBBZGQgQVZMIHBy b3BhZ2F0aW9uIFBBU1MgZm9yIFJWViBhdXRvLXZlY3Rvcml6YXRpb24KSnVzdCBhcHBseSB2MiB2 ZXJzaW9uIGZvciBSVjMyIHdpdGggc3Bpa2UgcmlzY3Ytc2ltIGZvciBjb25maXJtYXRpb24uCsKg ClRoaXMgcGF0Y2ggb25seSBpbmNyZWFzZWQgMiBwb3Bjb3VudCBydW4gZmFpbHVyZXMgYXMgd2Vs bCBhcyAyIGR1bXAgZmFpbHVyZXMsIGFuZCB0aGUgbWFza19nYXRoZXJfbG9hZF9ydW4tMTEuYyBp cyBQQVNTIHdpdGhpbiBzcGlrZS4KwqAKUGFuCsKgCi0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0t CkZyb206IGp1emhlLnpob25nQHJpdmFpLmFpIDxqdXpoZS56aG9uZ0ByaXZhaS5haT4KU2VudDog VGh1cnNkYXksIE9jdG9iZXIgMjYsIDIwMjMgOToyNyBBTQpUbzogUGF0cmljayBPJ05laWxsIDxw YXRyaWNrQHJpdm9zaW5jLmNvbT47IGdjYy1wYXRjaGVzIDxnY2MtcGF0Y2hlc0BnY2MuZ251Lm9y Zz4KQ2M6IGtpdG8uY2hlbmcgPGtpdG8uY2hlbmdAZ21haWwuY29tPjsgS2l0by5jaGVuZyA8a2l0 by5jaGVuZ0BzaWZpdmUuY29tPjsgamVmZnJleWFsYXcgPGplZmZyZXlhbGF3QGdtYWlsLmNvbT47 IFJvYmluIERhcHAgPHJkYXBwLmdjY0BnbWFpbC5jb20+ClN1YmplY3Q6IFJlOiBSZTogW1BBVENI XSBSSVNDLVY6IEFkZCBBVkwgcHJvcGFnYXRpb24gUEFTUyBmb3IgUlZWIGF1dG8tdmVjdG9yaXph dGlvbgrCoApJIHRoaW5rIGl0J3MgUUVNVSBpc3N1ZToKwqAKbGluZSAxNTogMTUyMDE2MSBBYm9y dGVkIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIChjb3JlIGR1bXBlZCkgUUVNVV9DUFU9IiQobWFy Y2gtdG8tY3B1LW9wdCAtLWdldC1yaXNjdi10YWcgJDEpIiBxZW11LXJpc2N2JHhsZW4gLXIgNS4x MCAiJHtxZW11X2FyZ3NbQF19IiAtTCAke1JJU0NfVl9TWVNST09UfSAiJEAiCkZBSUw6IGdjYy50 YXJnZXQvcmlzY3YvcnZ2L2F1dG92ZWMvZ2F0aGVyLXNjYXR0ZXIvbWFza19nYXRoZXJfbG9hZF9y dW4tMTEuYyBleGVjdXRpb24gdGVzdArCoApJIHVzZSBTUElLRSB3b3JrcyBmaW5lLiBUaGlzIGlz IG15IFNQSUtFIGNvbmZpZ3VyYXRpb24KwqAKc3Bpa2UgXArCoCDCoCAtLWlzYT1ydjY0Z2N2X3p2 ZmhfemZoIFwKwqAgwqAgLS1taXNhbGlnbmVkIFwKwqAgwqAgJHtQS19QQVRIfS9wayR7eGxlbn0g IiRAIgrCoArCoArCoApqdXpoZS56aG9uZ0ByaXZhaS5haQrCoApGcm9tOsKgUGF0cmljayBPJ05l aWxsCkRhdGU6wqAyMDIzLTEwLTI2wqAwOToyMgpUbzrCoGp1emhlLnpob25nQHJpdmFpLmFpOyBn Y2MtcGF0Y2hlcwpDQzrCoGtpdG8uY2hlbmc7IEtpdG8uY2hlbmc7IGplZmZyZXlhbGF3OyBSb2Jp biBEYXBwClN1YmplY3Q6wqBSZTogW1BBVENIXSBSSVNDLVY6IEFkZCBBVkwgcHJvcGFnYXRpb24g UEFTUyBmb3IgUlZWIGF1dG8tdmVjdG9yaXphdGlvbgrCoApPbiAxMC8yNS8yMyAxNzo0OSwganV6 aGUuemhvbmdAcml2YWkuYWkgd3JvdGU6CkZBSUw6IGdjYy5kZy92ZWN0L2Nvc3Rtb2RlbC9yaXNj di9ydnYvZHluYW1pYy1sbXVsNC01LmMgLU8zIC1mdHJlZS12ZWN0b3JpemUgLS1wYXJhbSByaXNj di1hdXRvdmVjLWxtdWw9ZHluYW1pY8KgIHNjYW4tYXNzZW1ibGVyIGUzMixtNApGQUlMOiBnY2Mu ZGcvdmVjdC9jb3N0bW9kZWwvcmlzY3YvcnZ2L2R5bmFtaWMtbG11bDgtMi5jIC1PMyAtZnRyZWUt dmVjdG9yaXplIC0tcGFyYW0gcmlzY3YtYXV0b3ZlYy1sbXVsPWR5bmFtaWPCoCBzY2FuLWFzc2Vt YmxlciBlMzIsbTgKwqAKVGhlc2UgMiBGQUlMcyBhcmUgYm9ndXMuIFRlc3RjYXNlcyBuZWVkIHRv IGJlIGFkYXB0ZWQsIEkgbm90aWNlIEkgZGlkbid0IGluY2x1ZGUgdGhpcyBpbiB0aGlzIHBhdGNo LgrCoApGQUlMOiBnY2MudGFyZ2V0L3Jpc2N2L3J2di9hdXRvdmVjL2dhdGhlci1zY2F0dGVyL21h c2tfZ2F0aGVyX2xvYWRfcnVuLTExLmMgZXhlY3V0aW9uIHRlc3QKRkFJTDogZ2NjLnRhcmdldC9y aXNjdi9ydnYvYXV0b3ZlYy91bm9wL3BvcGNvdW50LXJ1bi0xLmMgZXhlY3V0aW9uIHRlc3QKRkFJ TDogZ2NjLnRhcmdldC9yaXNjdi9ydnYvYXV0b3ZlYy91bm9wL3BvcGNvdW50LXJ1bi0xLmMgZXhl Y3V0aW9uIHRlc3QKwqAKVGhlc2UgMiBhbHJlYWR5IGV4aXN0IG9uIHRoZSB0cnVuayBmb3IgUlYz Mi4KwqAKRkFJTDogZ2NjLnRhcmdldC9yaXNjdi9ydnYvYXV0b3ZlYy9nYXRoZXItc2NhdHRlci9t YXNrX2dhdGhlcl9sb2FkX3J1bi0xMS5jIGV4ZWN1dGlvbiB0ZXN0wqAKVGhpcyBGQUlMIGZvciBS VjY0IGlzIG9kZC4gSSBkb24ndCBoYXZlIGl0LiDCoENvdWxkIHlvdSBzaGFyZSBtZSB0aGUgZGVi dWcgbG9nID8KcnY2NGdjdiBkZWJ1ZyBsb2c6CsKgCkV4ZWN1dGluZyBvbiBob3N0OiAvc2NyYXRj aC90Yy10ZXN0aW5nL3RjLWF2bC9idWlsZC1ydjY0Z2N2L2J1aWxkLWdjYy1saW51eC1zdGFnZTIv Z2NjL3hnY2MgLUIvc2NyYXRjaC90Yy10ZXN0aW5nL3RjLWF2bC9idWlsZC1ydjY0Z2N2L2J1aWxk LWdjYy1saW51eC1zdGFnZTIvZ2NjL8KgIC9zY3JhdGNoL3RjLXRlc3RpbmcvdGMtYXZsL2djYy9n Y2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2F1dG92ZWMvZ2F0aGVyLXNjYXR0ZXIv bWFza19nYXRoZXJfbG9hZF9ydW4tMTEuY8KgIC1tYXJjaD1ydjY0Z2N2IC1tYWJpPWxwNjRkIC1t Y21vZGVsPW1lZGxvd8KgwqAgLWZkaWFnbm9zdGljcy1wbGFpbi1vdXRwdXTCoMKgIC1mdHJlZS12 ZWN0b3JpemUgLU8zIC0tcGFyYW0gcmlzY3YtYXV0b3ZlYy1wcmVmZXJlbmNlPWZpeGVkLXZsbWF4 IC0tcGFyYW0gcmlzY3YtYXV0b3ZlYy1sbXVsPW04IC1mbm8tdmVjdC1jb3N0LW1vZGVsIC1mZmFz dC1tYXRoIC1tY21vZGVsPW1lZGFuecKgwqDCoMKgwqAgLWxtwqAgLW8gLi9tYXNrX2dhdGhlcl9s b2FkX3J1bi0xMS5leGXCoMKgwqAgKHRpbWVvdXQgPSA2MDApCnNwYXduIC1pZ25vcmUgU0lHSFVQ IC9zY3JhdGNoL3RjLXRlc3RpbmcvdGMtYXZsL2J1aWxkLXJ2NjRnY3YvYnVpbGQtZ2NjLWxpbnV4 LXN0YWdlMi9nY2MveGdjYyAtQi9zY3JhdGNoL3RjLXRlc3RpbmcvdGMtYXZsL2J1aWxkLXJ2NjRn Y3YvYnVpbGQtZ2NjLWxpbnV4LXN0YWdlMi9nY2MvIC9zY3JhdGNoL3RjLXRlc3RpbmcvdGMtYXZs L2djYy9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2F1dG92ZWMvZ2F0aGVyLXNj YXR0ZXIvbWFza19nYXRoZXJfbG9hZF9ydW4tMTEuYyAtbWFyY2g9cnY2NGdjdiAtbWFiaT1scDY0 ZCAtbWNtb2RlbD1tZWRsb3cgLWZkaWFnbm9zdGljcy1wbGFpbi1vdXRwdXQgLWZ0cmVlLXZlY3Rv cml6ZSAtTzMgLS1wYXJhbSByaXNjdi1hdXRvdmVjLXByZWZlcmVuY2U9Zml4ZWQtdmxtYXggLS1w YXJhbSByaXNjdi1hdXRvdmVjLWxtdWw9bTggLWZuby12ZWN0LWNvc3QtbW9kZWwgLWZmYXN0LW1h dGggLW1jbW9kZWw9bWVkYW55IC1sbSAtbyAuL21hc2tfZ2F0aGVyX2xvYWRfcnVuLTExLmV4ZQpQ QVNTOiBnY2MudGFyZ2V0L3Jpc2N2L3J2di9hdXRvdmVjL2dhdGhlci1zY2F0dGVyL21hc2tfZ2F0 aGVyX2xvYWRfcnVuLTExLmMgKHRlc3QgZm9yIGV4Y2VzcyBlcnJvcnMpCnNwYXduIHJpc2N2NjQt dW5rbm93bi1saW51eC1nbnUtcnVuIC4vbWFza19nYXRoZXJfbG9hZF9ydW4tMTEuZXhlCm1hc2tf Z2F0aGVyX2xvYWRfcnVuLTExLmV4ZTogL3NjcmF0Y2gvdGMtdGVzdGluZy90Yy1hdmwvZ2NjL2dj Yy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYXV0b3ZlYy9nYXRoZXItc2NhdHRlci9t YXNrX2dhdGhlcl9sb2FkX3J1bi0xMS5jOjk4OiBtYWluOiBBc3NlcnRpb24gYGRlc3RfdWludDE2 X3RfdWludDhfdFtpICogMl0gPT0gZGVzdDJfdWludDE2X3RfdWludDhfdFtpICogMl0nIGZhaWxl ZC4KL3NjcmF0Y2gvdGMtdGVzdGluZy90Yy1hdmwvYnVpbGQtcnY2NGdjdi8uLi9zY3JpcHRzL3dy YXBwZXIvcWVtdS9yaXNjdjY0LXVua25vd24tbGludXgtZ251LXJ1bjogbGluZSAxNTogMTUyMDE2 MSBBYm9ydGVkwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGNvcmUgZHVtcGVkKSBR RU1VX0NQVT0iJChtYXJjaC10by1jcHUtb3B0IC0tZ2V0LXJpc2N2LXRhZyAkMSkiIHFlbXUtcmlz Y3YkeGxlbiAtciA1LjEwICIke3FlbXVfYXJnc1tAXX0iIC1MICR7UklTQ19WX1NZU1JPT1R9ICIk QCIKRkFJTDogZ2NjLnRhcmdldC9yaXNjdi9ydnYvYXV0b3ZlYy9nYXRoZXItc2NhdHRlci9tYXNr X2dhdGhlcl9sb2FkX3J1bi0xMS5jIGV4ZWN1dGlvbiB0ZXN0CsKgCnJ2MzJnY3YgZGVidWcgbG9n OgrCoApFeGVjdXRpbmcgb24gaG9zdDogL3NjcmF0Y2gvdGMtdGVzdGluZy90Yy1hdmwvYnVpbGQt cnYzMmdjdi9idWlsZC1nY2MtbGludXgtc3RhZ2UyL2djYy94Z2NjIC1CL3NjcmF0Y2gvdGMtdGVz dGluZy90Yy1hdmwvYnVpbGQtcnYzMmdjdi9idWlsZC1nY2MtbGludXgtc3RhZ2UyL2djYy/CoCAv c2NyYXRjaC90Yy10ZXN0aW5nL3RjLWF2bC9nY2MvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jp c2N2L3J2di9hdXRvdmVjL2dhdGhlci1zY2F0dGVyL21hc2tfZ2F0aGVyX2xvYWRfcnVuLTExLmPC oCAtbWFyY2g9cnYzMmdjdiAtbWFiaT1pbHAzMmQgLW1jbW9kZWw9bWVkbG93wqDCoCAtZmRpYWdu b3N0aWNzLXBsYWluLW91dHB1dMKgwqAgLWZ0cmVlLXZlY3Rvcml6ZSAtTzMgLS1wYXJhbSByaXNj di1hdXRvdmVjLXByZWZlcmVuY2U9Zml4ZWQtdmxtYXggLS1wYXJhbSByaXNjdi1hdXRvdmVjLWxt dWw9bTggLWZuby12ZWN0LWNvc3QtbW9kZWwgLWZmYXN0LW1hdGggLW1jbW9kZWw9bWVkYW55wqDC oMKgwqDCoCAtbG3CoCAtbyAuL21hc2tfZ2F0aGVyX2xvYWRfcnVuLTExLmV4ZcKgwqDCoCAodGlt ZW91dCA9IDYwMCkKc3Bhd24gLWlnbm9yZSBTSUdIVVAgL3NjcmF0Y2gvdGMtdGVzdGluZy90Yy1h dmwvYnVpbGQtcnYzMmdjdi9idWlsZC1nY2MtbGludXgtc3RhZ2UyL2djYy94Z2NjIC1CL3NjcmF0 Y2gvdGMtdGVzdGluZy90Yy1hdmwvYnVpbGQtcnYzMmdjdi9idWlsZC1nY2MtbGludXgtc3RhZ2Uy L2djYy8gL3NjcmF0Y2gvdGMtdGVzdGluZy90Yy1hdmwvZ2NjL2djYy90ZXN0c3VpdGUvZ2NjLnRh cmdldC9yaXNjdi9ydnYvYXV0b3ZlYy9nYXRoZXItc2NhdHRlci9tYXNrX2dhdGhlcl9sb2FkX3J1 bi0xMS5jIC1tYXJjaD1ydjMyZ2N2IC1tYWJpPWlscDMyZCAtbWNtb2RlbD1tZWRsb3cgLWZkaWFn bm9zdGljcy1wbGFpbi1vdXRwdXQgLWZ0cmVlLXZlY3Rvcml6ZSAtTzMgLS1wYXJhbSByaXNjdi1h dXRvdmVjLXByZWZlcmVuY2U9Zml4ZWQtdmxtYXggLS1wYXJhbSByaXNjdi1hdXRvdmVjLWxtdWw9 bTggLWZuby12ZWN0LWNvc3QtbW9kZWwgLWZmYXN0LW1hdGggLW1jbW9kZWw9bWVkYW55IC1sbSAt byAuL21hc2tfZ2F0aGVyX2xvYWRfcnVuLTExLmV4ZQpQQVNTOiBnY2MudGFyZ2V0L3Jpc2N2L3J2 di9hdXRvdmVjL2dhdGhlci1zY2F0dGVyL21hc2tfZ2F0aGVyX2xvYWRfcnVuLTExLmMgKHRlc3Qg Zm9yIGV4Y2VzcyBlcnJvcnMpCnNwYXduIHJpc2N2NjQtdW5rbm93bi1saW51eC1nbnUtcnVuIC4v bWFza19nYXRoZXJfbG9hZF9ydW4tMTEuZXhlCm1hc2tfZ2F0aGVyX2xvYWRfcnVuLTExLmV4ZTog L3NjcmF0Y2gvdGMtdGVzdGluZy90Yy1hdmwvZ2NjL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9y aXNjdi9ydnYvYXV0b3ZlYy9nYXRoZXItc2NhdHRlci9tYXNrX2dhdGhlcl9sb2FkX3J1bi0xMS5j Ojk4OiBtYWluOiBBc3NlcnRpb24gYGRlc3RfdWludDE2X3RfdWludDhfdFtpICogMl0gPT0gZGVz dDJfdWludDE2X3RfdWludDhfdFtpICogMl0nIGZhaWxlZC4KL3NjcmF0Y2gvdGMtdGVzdGluZy90 Yy1hdmwvYnVpbGQtcnYzMmdjdi8uLi9zY3JpcHRzL3dyYXBwZXIvcWVtdS9yaXNjdjY0LXVua25v d24tbGludXgtZ251LXJ1bjogbGluZSAxNTogMjU5MzMxNCBBYm9ydGVkwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgKGNvcmUgZHVtcGVkKSBRRU1VX0NQVT0iJChtYXJjaC10by1jcHUt b3B0IC0tZ2V0LXJpc2N2LXRhZyAkMSkiIHFlbXUtcmlzY3YkeGxlbiAtciA1LjEwICIke3FlbXVf YXJnc1tAXX0iIC1MICR7UklTQ19WX1NZU1JPT1R9ICIkQCIKRkFJTDogZ2NjLnRhcmdldC9yaXNj di9ydnYvYXV0b3ZlYy9nYXRoZXItc2NhdHRlci9tYXNrX2dhdGhlcl9sb2FkX3J1bi0xMS5jIGV4 ZWN1dGlvbiB0ZXN0CsKgClBhdHJpY2sKanV6aGUuemhvbmdAcml2YWkuYWkKwqAKRnJvbTrCoFBh dHJpY2sgTydOZWlsbApEYXRlOsKgMjAyMy0xMC0yNsKgMDg6MzcKVG86wqBqdXpoZS56aG9uZ0By aXZhaS5haTsgZ2NjLXBhdGNoZXMKQ0M6wqBraXRvLmNoZW5nOyBLaXRvLmNoZW5nOyBqZWZmcmV5 YWxhdzsgUm9iaW4gRGFwcApTdWJqZWN0OsKgUmU6IFtQQVRDSF0gUklTQy1WOiBBZGQgQVZMIHBy b3BhZ2F0aW9uIFBBU1MgZm9yIFJWViBhdXRvLXZlY3Rvcml6YXRpb24KSGkgSnV6aGUsCsKgCkkg dGVzdGVkIG9uIGdsaWJjIHJ2MzIvNjRnY3YgcWVtdS4KQXBwbGllZCBwYXRjaCB0by9jb21wYXJp bmcgd2l0aCA2NjhjNGMzNzgzOTcwZTdhZGYwNTkxMzk2YjZkMGQ1Mjg2Y2MwNTQxLgrCoApWMiBy ZXN1bHRzIGxvb2sgbXVjaCBiZXR0ZXIhIEkgZG9uJ3Qgc2VlIGFueSBuZXcgZm9ydHJhbiBmYWls dXJlcyBidXQgSSBhbSBzZWVpbmcgbmV3IGdjYyBmYWlsdXJlczoKwqAKcnY2NGdjdjoKRkFJTDog Z2NjLmRnL3ZlY3QvY29zdG1vZGVsL3Jpc2N2L3J2di9keW5hbWljLWxtdWw0LTUuYyAtTzMgLWZ0 cmVlLXZlY3Rvcml6ZSAtLXBhcmFtIHJpc2N2LWF1dG92ZWMtbG11bD1keW5hbWljwqAgc2Nhbi1h c3NlbWJsZXIgZTMyLG00CkZBSUw6IGdjYy5kZy92ZWN0L2Nvc3Rtb2RlbC9yaXNjdi9ydnYvZHlu YW1pYy1sbXVsOC0yLmMgLU8zIC1mdHJlZS12ZWN0b3JpemUgLS1wYXJhbSByaXNjdi1hdXRvdmVj LWxtdWw9ZHluYW1pY8KgIHNjYW4tYXNzZW1ibGVyIGUzMixtOApGQUlMOiBnY2MudGFyZ2V0L3Jp c2N2L3J2di9hdXRvdmVjL2dhdGhlci1zY2F0dGVyL21hc2tfZ2F0aGVyX2xvYWRfcnVuLTExLmMg ZXhlY3V0aW9uIHRlc3QKwqAKcnYzMmdjdjoKRkFJTDogZ2NjLmRnL3ZlY3QvY29zdG1vZGVsL3Jp c2N2L3J2di9keW5hbWljLWxtdWw0LTUuYyAtTzMgLWZ0cmVlLXZlY3Rvcml6ZSAtLXBhcmFtIHJp c2N2LWF1dG92ZWMtbG11bD1keW5hbWljwqAgc2Nhbi1hc3NlbWJsZXIgZTMyLG00CkZBSUw6IGdj Yy5kZy92ZWN0L2Nvc3Rtb2RlbC9yaXNjdi9ydnYvZHluYW1pYy1sbXVsOC0yLmMgLU8zIC1mdHJl ZS12ZWN0b3JpemUgLS1wYXJhbSByaXNjdi1hdXRvdmVjLWxtdWw9ZHluYW1pY8KgIHNjYW4tYXNz ZW1ibGVyIGUzMixtOApGQUlMOiBnY2MudGFyZ2V0L3Jpc2N2L3J2di9hdXRvdmVjL2dhdGhlci1z Y2F0dGVyL21hc2tfZ2F0aGVyX2xvYWRfcnVuLTExLmMgZXhlY3V0aW9uIHRlc3QKRkFJTDogZ2Nj LnRhcmdldC9yaXNjdi9ydnYvYXV0b3ZlYy91bm9wL3BvcGNvdW50LXJ1bi0xLmMgZXhlY3V0aW9u IHRlc3QKRkFJTDogZ2NjLnRhcmdldC9yaXNjdi9ydnYvYXV0b3ZlYy91bm9wL3BvcGNvdW50LXJ1 bi0xLmMgZXhlY3V0aW9uIHRlc3QKwqAKVGhlIHBvcGNvdW50LXJ1bi0xLmMgdGVzdCBkb2Vzbid0 IHNob3cgdXAgZm9yIG1lIG9uIDY2OGM0YzM3ODM5NzBlN2FkZjA1OTEzOTZiNmQwZDUyODZjYzA1 NDEgcnYzMmdjdiBvciBydjY0Z2N2LgpBZnRlciBhcHBseWluZyB5b3VyIHBhdGNoIGl0IG9ubHkg c2hvd3MgdXAgb24gcnYzMmdjdiAocnY2NGdjdiBzdGlsbCBkb2VzIG5vdCBoYXZlIHRoZSBmYWls dXJlKS4gVGhpcyBtaWdodCBiZSBkdWUgdG8gYSBkaWZmZXJlbmNlIGluIG91ciB0ZXN0aW5nIHNl dHVwcy4KwqAKVGhhbmtzLApQYXRyaWNrCsKgCk9uIDEwLzI1LzIzIDA1OjIwLCBqdXpoZS56aG9u Z0ByaXZhaS5haSB3cm90ZToKSGksIFBhdHJpY2suCsKgCkkgaGF2ZSBmaXhlZCBvbiBWMiBwYXRj aDogaHR0cHM6Ly9nY2MuZ251Lm9yZy9waXBlcm1haWwvZ2NjLXBhdGNoZXMvMjAyMy1PY3RvYmVy LzYzNDI2Ny5odG1sCsKgCkkgaGF2ZSB0ZXN0ZWQgb24gUlYzMi9SVjY0IEMvQysrLCBubyByZWdy ZXNzaW9uLiBCdXQgSSBhbSBub3QgYWJsZSB0byB0ZXN0IG9uIEZvcnRyYW4uCsKgClRoZSBmYWls dXJlcyB5b3Ugc2hvd2VkIGhhdmUgYmVlbiBmaXhlZC4gRXhjZXB0IHRoaXMgb25lOgpGQUlMOiBn Y2MudGFyZ2V0L3Jpc2N2L3J2di9hdXRvdmVjL3Vub3AvcG9wY291bnQtcnVuLTEuYyBleGVjdXRp b24gdGVzdApUaGlzIEZBSUwgaXMgbm90IGJlY2F1c2Ugb2YgdGhpcyBwYXRjaCBzaW5jZSBJIGNv bmZpcm1lZCBpdCBhbHJlYWR5IGV4aXN0ZWQgd2l0aG91dCB0aGlzIHBhdGNoLgpXZSB3aWxsIGZp eCB0aGF0IG9uIHN0YWdlIDMuCsKgCkNvdWxkIHlvdSB2ZXJpZnkgd2l0aCBGb3J0cmFuIHRlc3Qg P8KgCsKgClRoYW5rcy4KwqAKanV6aGUuemhvbmdAcml2YWkuYWkKwqAKRnJvbTrCoFBhdHJpY2sg TydOZWlsbApEYXRlOsKgMjAyMy0xMC0yNMKgMjM6MDMKVG86wqBqdXpoZS56aG9uZ0ByaXZhaS5h aTsgZ2NjLXBhdGNoZXMKQ0M6wqBraXRvLmNoZW5nOyBLaXRvLmNoZW5nOyBqZWZmcmV5YWxhdzsg Um9iaW4gRGFwcApTdWJqZWN0OsKgUmU6IFtQQVRDSF0gUklTQy1WOiBBZGQgQVZMIHByb3BhZ2F0 aW9uIFBBU1MgZm9yIFJWViBhdXRvLXZlY3Rvcml6YXRpb24KSSdtIHNlZWluZyBhIHZhcmlldHkg b2YgbmV3IGZhaWx1cmVzLCBjb25zdHJhaW5lZCB0byBydjMyZ2N2OgrCoApUZXN0ZWQgdXNpbmcg bmV3bGliL2xpbnV4OgpydjMyZ2N2LyBpbHAzMmQvIG1lZGxvdwpydjY0Z2N2L8KgIGxwNjRkLyBt ZWRsb3cKcnY2NGdjdl96dmJiX3p2YmNfenZrZ196dmtuX3p2a25jX3p2a25lZF96dmtuZ196dmtu aGFfenZrbmhiX3p2a3NfenZrc2NfenZrc2VkX3p2a3NnX3p2a3NoX3p2a3QvwqAgbHA2NGQvIG1l ZGxvdwpydjY0aW1hZmRjdl96aWNvbmRfemF3cnNfemJjX3p2a25nX3p2a3NnX3p2YmJfenZiY196 aWNzcl96YmFfemJiX3pic196aWNib21femljYm9wX3ppY2Jvel96ZmhtaW5femt0L8KgIGxwNjRk LyBtZWRsb3cKwqAKTmV3bGliIGZhaWx1cmVzOgpydjMyZ2N2OgpGQUlMOiBnY2MuZGcvdmVjdC92 ZWN0LWFsaWFzLWNoZWNrLTE2LmMgLWZsdG8gLWZmYXQtbHRvLW9iamVjdHMgZXhlY3V0aW9uIHRl c3QKRkFJTDogZ2NjLmRnL3ZlY3QvdmVjdC1hbGlhcy1jaGVjay0xNi5jIGV4ZWN1dGlvbiB0ZXN0 CkZBSUw6IGdjYy5kZy92ZWN0L3ZlY3QtYWxpYXMtY2hlY2stMjAuYyAtZmx0byAtZmZhdC1sdG8t b2JqZWN0cyBleGVjdXRpb24gdGVzdApGQUlMOiBnY2MuZGcvdmVjdC92ZWN0LWFsaWFzLWNoZWNr LTIwLmMgZXhlY3V0aW9uIHRlc3QKRkFJTDogZ2NjLmRnL3ZlY3QvdmVjdC1yZWR1Yy0xMC5jIC1m bHRvIC1mZmF0LWx0by1vYmplY3RzIGV4ZWN1dGlvbiB0ZXN0CkZBSUw6IGdjYy5kZy92ZWN0L3Zl Y3QtcmVkdWMtMTAuYyBleGVjdXRpb24gdGVzdApGQUlMOiBnY2MuZGcvdmVjdC92ZWN0LXJlZHVj LWRvdC0xOS5jIC1mbHRvIC1mZmF0LWx0by1vYmplY3RzIGV4ZWN1dGlvbiB0ZXN0CkZBSUw6IGdj Yy5kZy92ZWN0L3ZlY3QtcmVkdWMtZG90LTE5LmMgZXhlY3V0aW9uIHRlc3QKRkFJTDogZ2NjLmRn L3ZlY3QvdmVjdC1yZWR1Yy1kb3QtMjAuYyAtZmx0byAtZmZhdC1sdG8tb2JqZWN0cyBleGVjdXRp b24gdGVzdApGQUlMOiBnY2MuZGcvdmVjdC92ZWN0LXJlZHVjLWRvdC0yMC5jIGV4ZWN1dGlvbiB0 ZXN0CkZBSUw6IGdjYy5kZy92ZWN0L3ZlY3QtcmVkdWMtZG90LTIxLmMgLWZsdG8gLWZmYXQtbHRv LW9iamVjdHMgZXhlY3V0aW9uIHRlc3QKRkFJTDogZ2NjLmRnL3ZlY3QvdmVjdC1yZWR1Yy1kb3Qt MjEuYyBleGVjdXRpb24gdGVzdApGQUlMOiBnY2MuZGcvdmVjdC92ZWN0LXJlZHVjLWRvdC0yMi5j IC1mbHRvIC1mZmF0LWx0by1vYmplY3RzIGV4ZWN1dGlvbiB0ZXN0CkZBSUw6IGdjYy5kZy92ZWN0 L3ZlY3QtcmVkdWMtZG90LTIyLmMgZXhlY3V0aW9uIHRlc3QKRkFJTDogZ2NjLnRhcmdldC9yaXNj di9ydnYvYXV0b3ZlYy9yZWR1Yy9leHRyYWN0X2xhc3RfcnVuLTEwLmMgZXhlY3V0aW9uIHRlc3QK RkFJTDogZ2NjLnRhcmdldC9yaXNjdi9ydnYvYXV0b3ZlYy9yZWR1Yy9leHRyYWN0X2xhc3RfcnVu LTkuYyBleGVjdXRpb24gdGVzdApGQUlMOiBnY2MudGFyZ2V0L3Jpc2N2L3J2di9hdXRvdmVjL3Jl ZHVjL3JlZHVjX3J1bi0xLmMgZXhlY3V0aW9uIHRlc3QKRkFJTDogZ2NjLnRhcmdldC9yaXNjdi9y dnYvYXV0b3ZlYy91bm9wL3BvcGNvdW50LXJ1bi0xLmMgZXhlY3V0aW9uIHRlc3QKRkFJTDogZysr LmRnL3ZlY3QvcHIxMTA1NTcuY2PCoCAtc3RkPWMrKzE0IGV4ZWN1dGlvbiB0ZXN0CkZBSUw6IGcr Ky5kZy92ZWN0L3ByMTEwNTU3LmNjwqAgLXN0ZD1jKysxNyBleGVjdXRpb24gdGVzdApGQUlMOiBn KysuZGcvdmVjdC9wcjExMDU1Ny5jY8KgIC1zdGQ9YysrMjAgZXhlY3V0aW9uIHRlc3QKRkFJTDog ZysrLmRnL3ZlY3QvcHIxMTA1NTcuY2PCoCAtc3RkPWMrKzk4IGV4ZWN1dGlvbiB0ZXN0CsKgCkRl YnVnIGxvZyBmb3IgdGVzdGNhc2VzIHRoYXQgYXJlbid0IHByMTEwNTU3LmMgbG9vayBsaWtlIHRo aXM6CkV4ZWN1dGluZyBvbiBob3N0OiAvc2NyYXRjaC90Yy10ZXN0aW5nL3RjLW9jdC0yMy1hdmwv YnVpbGQtbmV3bGliL2J1aWxkLWdjYy1uZXdsaWItc3RhZ2UyL2djYy94Z2NjIC1CL3NjcmF0Y2gv dGMtdGVzdGluZy90Yy1vY3QtMjMtYXZsL2J1aWxkLW5ld2xpYi9idWlsZC1nY2MtbmV3bGliLXN0 YWdlMi9nY2MvwqAgL3NjcmF0Y2gvdGMtdGVzdGluZy90Yy1vY3QtMjMtYXZsL2djYy9nY2MvdGVz dHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2F1dG92ZWMvdW5vcC9wb3Bjb3VudC1ydW4tMS5j wqAgLW1hcmNoPXJ2MzJnY3YgLW1hYmk9aWxwMzJkIC1tY21vZGVsPW1lZGxvd8KgwqAgLWZkaWFn bm9zdGljcy1wbGFpbi1vdXRwdXTCoMKgIC1mdHJlZS12ZWN0b3JpemUgLU8zIC0tcGFyYW0gcmlz Y3YtYXV0b3ZlYy1sbXVsPW00wqDCoMKgwqDCoCAtbG3CoCAtbyAuL3BvcGNvdW50LXJ1bi0xLmV4 ZcKgwqDCoCAodGltZW91dCA9IDYwMCkKc3Bhd24gLWlnbm9yZSBTSUdIVVAgL3NjcmF0Y2gvdGMt dGVzdGluZy90Yy1vY3QtMjMtYXZsL2J1aWxkLW5ld2xpYi9idWlsZC1nY2MtbmV3bGliLXN0YWdl Mi9nY2MveGdjYyAtQi9zY3JhdGNoL3RjLXRlc3RpbmcvdGMtb2N0LTIzLWF2bC9idWlsZC1uZXds aWIvYnVpbGQtZ2NjLW5ld2xpYi1zdGFnZTIvZ2NjLyAvc2NyYXRjaC90Yy10ZXN0aW5nL3RjLW9j dC0yMy1hdmwvZ2NjL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYXV0b3ZlYy91 bm9wL3BvcGNvdW50LXJ1bi0xLmMgLW1hcmNoPXJ2MzJnY3YgLW1hYmk9aWxwMzJkIC1tY21vZGVs PW1lZGxvdyAtZmRpYWdub3N0aWNzLXBsYWluLW91dHB1dCAtZnRyZWUtdmVjdG9yaXplIC1PMyAt LXBhcmFtIHJpc2N2LWF1dG92ZWMtbG11bD1tNCAtbG0gLW8gLi9wb3Bjb3VudC1ydW4tMS5leGUK UEFTUzogZ2NjLnRhcmdldC9yaXNjdi9ydnYvYXV0b3ZlYy91bm9wL3BvcGNvdW50LXJ1bi0xLmMg KHRlc3QgZm9yIGV4Y2VzcyBlcnJvcnMpCnNwYXduIHJpc2N2NjQtdW5rbm93bi1lbGYtcnVuIC4v cG9wY291bnQtcnVuLTEuZXhlCkZBSUw6IGdjYy50YXJnZXQvcmlzY3YvcnZ2L2F1dG92ZWMvdW5v cC9wb3Bjb3VudC1ydW4tMS5jIGV4ZWN1dGlvbiB0ZXN0CkRlYnVnIGxvZyBmb3IgcHIxMTA1NTcu YzoKRXhlY3V0aW5nIG9uIGhvc3Q6IC9zY3JhdGNoL3RjLXRlc3RpbmcvdGMtb2N0LTIzLWF2bC9i dWlsZC1uZXdsaWIvYnVpbGQtZ2NjLW5ld2xpYi1zdGFnZTIvZ2NjL3Rlc3RzdWl0ZS9nKys1Ly4u Ly4uL3hnKysgLUIvc2NyYXRjaC90Yy10ZXN0aW5nL3RjLW9jdC0yMy1hdmwvYnVpbGQtbmV3bGli L2J1aWxkLWdjYy1uZXdsaWItc3RhZ2UyL2djYy90ZXN0c3VpdGUvZysrNS8uLi8uLi/CoCAvc2Ny YXRjaC90Yy10ZXN0aW5nL3RjLW9jdC0yMy1hdmwvZ2NjL2djYy90ZXN0c3VpdGUvZysrLmRnL3Zl Y3QvcHIxMTA1NTcuY2PCoCAtbWFyY2g9cnYzMmdjdiAtbWFiaT1pbHAzMmQgLW1jbW9kZWw9bWVk bG93wqDCoCAtZmRpYWdub3N0aWNzLXBsYWluLW91dHB1dMKgIC1ub3N0ZGluYysrIC1JL3NjcmF0 Y2gvdGMtdGVzdGluZy90Yy1vY3QtMjMtYXZsL2J1aWxkLW5ld2xpYi9idWlsZC1nY2MtbmV3bGli LXN0YWdlMi9yaXNjdjY0LXVua25vd24tZWxmL3J2MzJpbWFmZGN2X3ppY3NyX3ppZmVuY2VpX3p2 ZTMyZl96dmUzMnhfenZlNjRkX3p2ZTY0Zl96dmU2NHhfenZsMTI4Yl96dmwzMmJfenZsNjRiL2ls cDMyZC9saWJzdGRjKystdjMvaW5jbHVkZS9yaXNjdjY0LXVua25vd24tZWxmIC1JL3NjcmF0Y2gv dGMtdGVzdGluZy90Yy1vY3QtMjMtYXZsL2J1aWxkLW5ld2xpYi9idWlsZC1nY2MtbmV3bGliLXN0 YWdlMi9yaXNjdjY0LXVua25vd24tZWxmL3J2MzJpbWFmZGN2X3ppY3NyX3ppZmVuY2VpX3p2ZTMy Zl96dmUzMnhfenZlNjRkX3p2ZTY0Zl96dmU2NHhfenZsMTI4Yl96dmwzMmJfenZsNjRiL2lscDMy ZC9saWJzdGRjKystdjMvaW5jbHVkZSAtSS9zY3JhdGNoL3RjLXRlc3RpbmcvdGMtb2N0LTIzLWF2 bC9nY2MvbGlic3RkYysrLXYzL2xpYnN1cGMrKyAtSS9zY3JhdGNoL3RjLXRlc3RpbmcvdGMtb2N0 LTIzLWF2bC9nY2MvbGlic3RkYysrLXYzL2luY2x1ZGUvYmFja3dhcmQgLUkvc2NyYXRjaC90Yy10 ZXN0aW5nL3RjLW9jdC0yMy1hdmwvZ2NjL2xpYnN0ZGMrKy12My90ZXN0c3VpdGUvdXRpbCAtZm1l c3NhZ2UtbGVuZ3RoPTDCoCAtc3RkPWMrKzE0IC1PMiAtZnRyZWUtdmVjdG9yaXplIC1mbm8tdmVj dC1jb3N0LW1vZGVsIC0tcGFyYW0gcmlzY3YtYXV0b3ZlYy1wcmVmZXJlbmNlPXNjYWxhYmxlIC0t cGFyYW0gcmlzY3YtdmVjdG9yLWFiaSAtZmR1bXAtdHJlZS12ZWN0LWRldGFpbHPCoMKgwqDCoMKg wqDCoCAtTC9zY3JhdGNoL3RjLXRlc3RpbmcvdGMtb2N0LTIzLWF2bC9idWlsZC1uZXdsaWIvYnVp bGQtZ2NjLW5ld2xpYi1zdGFnZTIvcmlzY3Y2NC11bmtub3duLWVsZi9ydjMyaW1hZmRjdl96aWNz cl96aWZlbmNlaV96dmUzMmZfenZlMzJ4X3p2ZTY0ZF96dmU2NGZfenZlNjR4X3p2bDEyOGJfenZs MzJiX3p2bDY0Yi9pbHAzMmQvbGlic3RkYysrLXYzL3NyYy8ubGlic8KgIC1CL3NjcmF0Y2gvdGMt dGVzdGluZy90Yy1vY3QtMjMtYXZsL2J1aWxkLW5ld2xpYi9idWlsZC1nY2MtbmV3bGliLXN0YWdl Mi9yaXNjdjY0LXVua25vd24tZWxmL3J2MzJpbWFmZGN2X3ppY3NyX3ppZmVuY2VpX3p2ZTMyZl96 dmUzMnhfenZlNjRkX3p2ZTY0Zl96dmU2NHhfenZsMTI4Yl96dmwzMmJfenZsNjRiL2lscDMyZC9s aWJzdGRjKystdjMvc3JjLy5saWJzwqAgLUwvc2NyYXRjaC90Yy10ZXN0aW5nL3RjLW9jdC0yMy1h dmwvYnVpbGQtbmV3bGliL2J1aWxkLWdjYy1uZXdsaWItc3RhZ2UyL3Jpc2N2NjQtdW5rbm93bi1l bGYvcnYzMmltYWZkY3Zfemljc3JfemlmZW5jZWlfenZlMzJmX3p2ZTMyeF96dmU2NGRfenZlNjRm X3p2ZTY0eF96dmwxMjhiX3p2bDMyYl96dmw2NGIvaWxwMzJkL2xpYnN0ZGMrKy12My9zcmMvZXhw ZXJpbWVudGFsLy5saWJzwqAgLWxtwqAgLW8gLi9wcjExMDU1Ny5leGXCoMKgwqAgKHRpbWVvdXQg PSA2MDApCnNwYXduIC1pZ25vcmUgU0lHSFVQIC9zY3JhdGNoL3RjLXRlc3RpbmcvdGMtb2N0LTIz LWF2bC9idWlsZC1uZXdsaWIvYnVpbGQtZ2NjLW5ld2xpYi1zdGFnZTIvZ2NjL3Rlc3RzdWl0ZS9n Kys1Ly4uLy4uL3hnKysgLUIvc2NyYXRjaC90Yy10ZXN0aW5nL3RjLW9jdC0yMy1hdmwvYnVpbGQt bmV3bGliL2J1aWxkLWdjYy1uZXdsaWItc3RhZ2UyL2djYy90ZXN0c3VpdGUvZysrNS8uLi8uLi8g L3NjcmF0Y2gvdGMtdGVzdGluZy90Yy1vY3QtMjMtYXZsL2djYy9nY2MvdGVzdHN1aXRlL2crKy5k Zy92ZWN0L3ByMTEwNTU3LmNjIC1tYXJjaD1ydjMyZ2N2IC1tYWJpPWlscDMyZCAtbWNtb2RlbD1t ZWRsb3cgLWZkaWFnbm9zdGljcy1wbGFpbi1vdXRwdXQgLW5vc3RkaW5jKysgLUkvc2NyYXRjaC90 Yy10ZXN0aW5nL3RjLW9jdC0yMy1hdmwvYnVpbGQtbmV3bGliL2J1aWxkLWdjYy1uZXdsaWItc3Rh Z2UyL3Jpc2N2NjQtdW5rbm93bi1lbGYvcnYzMmltYWZkY3Zfemljc3JfemlmZW5jZWlfenZlMzJm X3p2ZTMyeF96dmU2NGRfenZlNjRmX3p2ZTY0eF96dmwxMjhiX3p2bDMyYl96dmw2NGIvaWxwMzJk L2xpYnN0ZGMrKy12My9pbmNsdWRlL3Jpc2N2NjQtdW5rbm93bi1lbGYgLUkvc2NyYXRjaC90Yy10 ZXN0aW5nL3RjLW9jdC0yMy1hdmwvYnVpbGQtbmV3bGliL2J1aWxkLWdjYy1uZXdsaWItc3RhZ2Uy L3Jpc2N2NjQtdW5rbm93bi1lbGYvcnYzMmltYWZkY3Zfemljc3JfemlmZW5jZWlfenZlMzJmX3p2 ZTMyeF96dmU2NGRfenZlNjRmX3p2ZTY0eF96dmwxMjhiX3p2bDMyYl96dmw2NGIvaWxwMzJkL2xp YnN0ZGMrKy12My9pbmNsdWRlIC1JL3NjcmF0Y2gvdGMtdGVzdGluZy90Yy1vY3QtMjMtYXZsL2dj Yy9saWJzdGRjKystdjMvbGlic3VwYysrIC1JL3NjcmF0Y2gvdGMtdGVzdGluZy90Yy1vY3QtMjMt YXZsL2djYy9saWJzdGRjKystdjMvaW5jbHVkZS9iYWNrd2FyZCAtSS9zY3JhdGNoL3RjLXRlc3Rp bmcvdGMtb2N0LTIzLWF2bC9nY2MvbGlic3RkYysrLXYzL3Rlc3RzdWl0ZS91dGlsIC1mbWVzc2Fn ZS1sZW5ndGg9MCAtc3RkPWMrKzE0IC1PMiAtZnRyZWUtdmVjdG9yaXplIC1mbm8tdmVjdC1jb3N0 LW1vZGVsIC0tcGFyYW0gcmlzY3YtYXV0b3ZlYy1wcmVmZXJlbmNlPXNjYWxhYmxlIC0tcGFyYW0g cmlzY3YtdmVjdG9yLWFiaSAtZmR1bXAtdHJlZS12ZWN0LWRldGFpbHMgLUwvc2NyYXRjaC90Yy10 ZXN0aW5nL3RjLW9jdC0yMy1hdmwvYnVpbGQtbmV3bGliL2J1aWxkLWdjYy1uZXdsaWItc3RhZ2Uy L3Jpc2N2NjQtdW5rbm93bi1lbGYvcnYzMmltYWZkY3Zfemljc3JfemlmZW5jZWlfenZlMzJmX3p2 ZTMyeF96dmU2NGRfenZlNjRmX3p2ZTY0eF96dmwxMjhiX3p2bDMyYl96dmw2NGIvaWxwMzJkL2xp YnN0ZGMrKy12My9zcmMvLmxpYnMgLUIvc2NyYXRjaC90Yy10ZXN0aW5nL3RjLW9jdC0yMy1hdmwv YnVpbGQtbmV3bGliL2J1aWxkLWdjYy1uZXdsaWItc3RhZ2UyL3Jpc2N2NjQtdW5rbm93bi1lbGYv cnYzMmltYWZkY3Zfemljc3JfemlmZW5jZWlfenZlMzJmX3p2ZTMyeF96dmU2NGRfenZlNjRmX3p2 ZTY0eF96dmwxMjhiX3p2bDMyYl96dmw2NGIvaWxwMzJkL2xpYnN0ZGMrKy12My9zcmMvLmxpYnMg LUwvc2NyYXRjaC90Yy10ZXN0aW5nL3RjLW9jdC0yMy1hdmwvYnVpbGQtbmV3bGliL2J1aWxkLWdj Yy1uZXdsaWItc3RhZ2UyL3Jpc2N2NjQtdW5rbm93bi1lbGYvcnYzMmltYWZkY3Zfemljc3Jfemlm ZW5jZWlfenZlMzJmX3p2ZTMyeF96dmU2NGRfenZlNjRmX3p2ZTY0eF96dmwxMjhiX3p2bDMyYl96 dmw2NGIvaWxwMzJkL2xpYnN0ZGMrKy12My9zcmMvZXhwZXJpbWVudGFsLy5saWJzIC1sbSAtbyAu L3ByMTEwNTU3LmV4ZQpQQVNTOiBnKysuZGcvdmVjdC9wcjExMDU1Ny5jY8KgIC1zdGQ9YysrMTQg KHRlc3QgZm9yIGV4Y2VzcyBlcnJvcnMpCnNwYXduIHJpc2N2NjQtdW5rbm93bi1lbGYtcnVuIC4v cHIxMTA1NTcuZXhlCi9zY3JhdGNoL3RjLXRlc3RpbmcvdGMtb2N0LTIzLWF2bC9idWlsZC1uZXds aWIvLi4vc2NyaXB0cy93cmFwcGVyL3FlbXUvcmlzY3Y2NC11bmtub3duLWVsZi1ydW46IGxpbmUg MTU6IDM0NDk4MDUgVHJhY2UvYnJlYWtwb2ludCB0cmFwwqDCoCAoY29yZSBkdW1wZWQpIFFFTVVf Q1BVPSIkKG1hcmNoLXRvLWNwdS1vcHQgLS1nZXQtcmlzY3YtdGFnICQxKSIgcWVtdS1yaXNjdiR4 bGVuIC1yIDUuMTAgIiR7cWVtdV9hcmdzW0BdfSIgLUwgJHtSSVNDX1ZfU1lTUk9PVH0gIiRAIgpG QUlMOiBnKysuZGcvdmVjdC9wcjExMDU1Ny5jY8KgIC1zdGQ9YysrMTQgZXhlY3V0aW9uIHRlc3QK TGludXggZmFpbHVyZXM6CnJ2MzJnY3Y6CkZBSUw6IGdjYy5kZy9uZXh0YWZ0ZXItMi5jIGV4ZWN1 dGlvbiB0ZXN0CkZBSUw6IGdjYy5kZy92ZWN0L3ZlY3QtYWxpYXMtY2hlY2stMTYuYyAtZmx0byAt ZmZhdC1sdG8tb2JqZWN0cyBleGVjdXRpb24gdGVzdApGQUlMOiBnY2MuZGcvdmVjdC92ZWN0LWFs aWFzLWNoZWNrLTE2LmMgZXhlY3V0aW9uIHRlc3QKRkFJTDogZ2NjLmRnL3ZlY3QvdmVjdC1hbGlh cy1jaGVjay0yMC5jIC1mbHRvIC1mZmF0LWx0by1vYmplY3RzIGV4ZWN1dGlvbiB0ZXN0CkZBSUw6 IGdjYy5kZy92ZWN0L3ZlY3QtYWxpYXMtY2hlY2stMjAuYyBleGVjdXRpb24gdGVzdApGQUlMOiBn Y2MuZGcvdmVjdC92ZWN0LXJlZHVjLTEwLmMgLWZsdG8gLWZmYXQtbHRvLW9iamVjdHMgZXhlY3V0 aW9uIHRlc3QKRkFJTDogZ2NjLmRnL3ZlY3QvdmVjdC1yZWR1Yy0xMC5jIGV4ZWN1dGlvbiB0ZXN0 CkZBSUw6IGdjYy5kZy92ZWN0L3ZlY3QtcmVkdWMtZG90LTE5LmMgLWZsdG8gLWZmYXQtbHRvLW9i amVjdHMgZXhlY3V0aW9uIHRlc3QKRkFJTDogZ2NjLmRnL3ZlY3QvdmVjdC1yZWR1Yy1kb3QtMTku YyBleGVjdXRpb24gdGVzdApGQUlMOiBnY2MuZGcvdmVjdC92ZWN0LXJlZHVjLWRvdC0yMC5jIC1m bHRvIC1mZmF0LWx0by1vYmplY3RzIGV4ZWN1dGlvbiB0ZXN0CkZBSUw6IGdjYy5kZy92ZWN0L3Zl Y3QtcmVkdWMtZG90LTIwLmMgZXhlY3V0aW9uIHRlc3QKRkFJTDogZ2NjLmRnL3ZlY3QvdmVjdC1y ZWR1Yy1kb3QtMjEuYyAtZmx0byAtZmZhdC1sdG8tb2JqZWN0cyBleGVjdXRpb24gdGVzdApGQUlM OiBnY2MuZGcvdmVjdC92ZWN0LXJlZHVjLWRvdC0yMS5jIGV4ZWN1dGlvbiB0ZXN0CkZBSUw6IGdj Yy5kZy92ZWN0L3ZlY3QtcmVkdWMtZG90LTIyLmMgLWZsdG8gLWZmYXQtbHRvLW9iamVjdHMgZXhl Y3V0aW9uIHRlc3QKRkFJTDogZ2NjLmRnL3ZlY3QvdmVjdC1yZWR1Yy1kb3QtMjIuYyBleGVjdXRp b24gdGVzdApGQUlMOiBnY2MudGFyZ2V0L3Jpc2N2L3J2di9hdXRvdmVjL3JlZHVjL2V4dHJhY3Rf bGFzdF9ydW4tMTAuYyBleGVjdXRpb24gdGVzdApGQUlMOiBnY2MudGFyZ2V0L3Jpc2N2L3J2di9h dXRvdmVjL3JlZHVjL2V4dHJhY3RfbGFzdF9ydW4tOS5jIGV4ZWN1dGlvbiB0ZXN0CkZBSUw6IGdj Yy50YXJnZXQvcmlzY3YvcnZ2L2F1dG92ZWMvcmVkdWMvcmVkdWNfcnVuLTEuYyBleGVjdXRpb24g dGVzdApGQUlMOiBnY2MudGFyZ2V0L3Jpc2N2L3J2di9hdXRvdmVjL3JlZHVjL3JlZHVjX3J1bi0x LmMgZXhlY3V0aW9uIHRlc3QKRkFJTDogZ2NjLnRhcmdldC9yaXNjdi9ydnYvYXV0b3ZlYy91bm9w L3BvcGNvdW50LXJ1bi0xLmMgZXhlY3V0aW9uIHRlc3QKRkFJTDogZ2NjLnRhcmdldC9yaXNjdi9y dnYvYXV0b3ZlYy91bm9wL3BvcGNvdW50LXJ1bi0xLmMgZXhlY3V0aW9uIHRlc3QKRkFJTDogZysr LmRnL3ZlY3QvcHIxMTA1NTcuY2PCoCAtc3RkPWMrKzE0IGV4ZWN1dGlvbiB0ZXN0CkZBSUw6IGcr Ky5kZy92ZWN0L3ByMTEwNTU3LmNjwqAgLXN0ZD1jKysxNyBleGVjdXRpb24gdGVzdApGQUlMOiBn KysuZGcvdmVjdC9wcjExMDU1Ny5jY8KgIC1zdGQ9YysrMjAgZXhlY3V0aW9uIHRlc3QKRkFJTDog ZysrLmRnL3ZlY3QvcHIxMTA1NTcuY2PCoCAtc3RkPWMrKzk4IGV4ZWN1dGlvbiB0ZXN0CkZBSUw6 IGdmb3J0cmFuLmRnL2RlZmF1bHRfZm9ybWF0XzIuZjkwwqDCoCAtTzDCoCBleGVjdXRpb24gdGVz dApGQUlMOiBnZm9ydHJhbi5kZy9kZWZhdWx0X2Zvcm1hdF8yLmY5MMKgwqAgLU8xwqAgZXhlY3V0 aW9uIHRlc3QKRkFJTDogZ2ZvcnRyYW4uZGcvZGVmYXVsdF9mb3JtYXRfMi5mOTDCoMKgIC1PMsKg IGV4ZWN1dGlvbiB0ZXN0CkZBSUw6IGdmb3J0cmFuLmRnL2RlZmF1bHRfZm9ybWF0XzIuZjkwwqDC oCAtTzMgLWZvbWl0LWZyYW1lLXBvaW50ZXIgLWZ1bnJvbGwtbG9vcHMgLWZwZWVsLWxvb3BzIC1m dHJhY2VyIC1maW5saW5lLWZ1bmN0aW9uc8KgIGV4ZWN1dGlvbiB0ZXN0CkZBSUw6IGdmb3J0cmFu LmRnL2RlZmF1bHRfZm9ybWF0XzIuZjkwwqDCoCAtTzMgLWfCoCBleGVjdXRpb24gdGVzdApGQUlM OiBnZm9ydHJhbi5kZy9kZWZhdWx0X2Zvcm1hdF8yLmY5MMKgwqAgLU9zwqAgZXhlY3V0aW9uIHRl c3QKRkFJTDogZ2ZvcnRyYW4uZGcvZGVmYXVsdF9mb3JtYXRfZGVub3JtYWxfMi5mOTDCoMKgIC1P MMKgIGV4ZWN1dGlvbiB0ZXN0CkZBSUw6IGdmb3J0cmFuLmRnL2RlZmF1bHRfZm9ybWF0X2Rlbm9y bWFsXzIuZjkwwqDCoCAtTzHCoCBleGVjdXRpb24gdGVzdApGQUlMOiBnZm9ydHJhbi5kZy9kZWZh dWx0X2Zvcm1hdF9kZW5vcm1hbF8yLmY5MMKgwqAgLU8ywqAgZXhlY3V0aW9uIHRlc3QKRkFJTDog Z2ZvcnRyYW4uZGcvZGVmYXVsdF9mb3JtYXRfZGVub3JtYWxfMi5mOTDCoMKgIC1PMyAtZm9taXQt ZnJhbWUtcG9pbnRlciAtZnVucm9sbC1sb29wcyAtZnBlZWwtbG9vcHMgLWZ0cmFjZXIgLWZpbmxp bmUtZnVuY3Rpb25zwqAgZXhlY3V0aW9uIHRlc3QKRkFJTDogZ2ZvcnRyYW4uZGcvZGVmYXVsdF9m b3JtYXRfZGVub3JtYWxfMi5mOTDCoMKgIC1PMyAtZ8KgIGV4ZWN1dGlvbiB0ZXN0CkZBSUw6IGdm b3J0cmFuLmRnL2RlZmF1bHRfZm9ybWF0X2Rlbm9ybWFsXzIuZjkwwqDCoCAtT3PCoCBleGVjdXRp b24gdGVzdApGQUlMOiBnZm9ydHJhbi5kZy9sYXJnZV9yZWFsX2tpbmRfMi5GOTDCoMKgIC1PMMKg IGV4ZWN1dGlvbiB0ZXN0CkZBSUw6IGdmb3J0cmFuLmRnL3JvdW5kXzQuZjkwwqDCoCAtTzDCoCBl eGVjdXRpb24gdGVzdApGQUlMOiBnZm9ydHJhbi5kZy96ZXJvX3NpemVkXzMuZjkwwqDCoCAtTzMg LWZvbWl0LWZyYW1lLXBvaW50ZXIgLWZ1bnJvbGwtbG9vcHMgLWZwZWVsLWxvb3BzIC1mdHJhY2Vy IC1maW5saW5lLWZ1bmN0aW9uc8KgIGV4ZWN1dGlvbiB0ZXN0CkZBSUw6IGdmb3J0cmFuLmRnL2ll ZWUvZGVjX21hdGhfMS5mOTDCoMKgIC1PMMKgIGV4ZWN1dGlvbiB0ZXN0CkZBSUw6IGdmb3J0cmFu LmRnL2llZWUvZGVjX21hdGhfMS5mOTDCoMKgIC1PMcKgIGV4ZWN1dGlvbiB0ZXN0CkZBSUw6IGdm b3J0cmFuLmRnL2llZWUvZGVjX21hdGhfMS5mOTDCoMKgIC1PMsKgIGV4ZWN1dGlvbiB0ZXN0CkZB SUw6IGdmb3J0cmFuLmRnL2llZWUvZGVjX21hdGhfMS5mOTDCoMKgIC1PMyAtZm9taXQtZnJhbWUt cG9pbnRlciAtZnVucm9sbC1sb29wcyAtZnBlZWwtbG9vcHMgLWZ0cmFjZXIgLWZpbmxpbmUtZnVu Y3Rpb25zwqAgZXhlY3V0aW9uIHRlc3QKRkFJTDogZ2ZvcnRyYW4uZGcvaWVlZS9kZWNfbWF0aF8x LmY5MMKgwqAgLU8zIC1nwqAgZXhlY3V0aW9uIHRlc3QKRkFJTDogZ2ZvcnRyYW4uZGcvaWVlZS9k ZWNfbWF0aF8xLmY5MMKgwqAgLU9zwqAgZXhlY3V0aW9uIHRlc3QKRkFJTDogZ2ZvcnRyYW4uZGcv aWVlZS9sYXJnZV8xLmY5MMKgwqAgLU8wwqAgZXhlY3V0aW9uIHRlc3QKRkFJTDogZ2ZvcnRyYW4u ZGcvaWVlZS9sYXJnZV8yLmY5MMKgwqAgLU8wwqAgZXhlY3V0aW9uIHRlc3QKRkFJTDogZ2ZvcnRy YW4uZGcvaWVlZS9sYXJnZV8yLmY5MMKgwqAgLU8xwqAgZXhlY3V0aW9uIHRlc3QKRkFJTDogZ2Zv cnRyYW4uZGcvaWVlZS9sYXJnZV8yLmY5MMKgwqAgLU8ywqAgZXhlY3V0aW9uIHRlc3QKRkFJTDog Z2ZvcnRyYW4uZGcvaWVlZS9sYXJnZV8yLmY5MMKgwqAgLU8zIC1mb21pdC1mcmFtZS1wb2ludGVy IC1mdW5yb2xsLWxvb3BzIC1mcGVlbC1sb29wcyAtZnRyYWNlciAtZmlubGluZS1mdW5jdGlvbnPC oCBleGVjdXRpb24gdGVzdApGQUlMOiBnZm9ydHJhbi5kZy9pZWVlL2xhcmdlXzIuZjkwwqDCoCAt TzMgLWfCoCBleGVjdXRpb24gdGVzdApGQUlMOiBnZm9ydHJhbi5kZy9pZWVlL2xhcmdlXzIuZjkw wqDCoCAtT3PCoCBleGVjdXRpb24gdGVzdApGQUlMOiBnZm9ydHJhbi5mb3J0cmFuLXRvcnR1cmUv ZXhlY3V0ZS9pbnRyaW5zaWNfY291bnQuZjkwIGV4ZWN1dGlvbizCoCAtTzIgLWZvbWl0LWZyYW1l LXBvaW50ZXIgLWZpbmxpbmUtZnVuY3Rpb25zIC1mdW5yb2xsLWxvb3BzCkZBSUw6IGdmb3J0cmFu LmZvcnRyYW4tdG9ydHVyZS9leGVjdXRlL2ludHJpbnNpY19tYXRtdWwuZjkwIGV4ZWN1dGlvbizC oCAtTzIgLWZvbWl0LWZyYW1lLXBvaW50ZXIgLWZpbmxpbmUtZnVuY3Rpb25zIC1mdW5yb2xsLWxv b3BzCkZBSUw6IGdmb3J0cmFuLmZvcnRyYW4tdG9ydHVyZS9leGVjdXRlL2ludHJpbnNpY19zdW0u ZjkwIGV4ZWN1dGlvbizCoCAtTzIgLWZvbWl0LWZyYW1lLXBvaW50ZXIgLWZpbmxpbmUtZnVuY3Rp b25zIC1mdW5yb2xsLWxvb3BzCsKgClNvbWUgKG5vdCBhbGwpIGRlYnVnIGxvZyBvdXRwdXRzOgpF eGVjdXRpbmcgb24gaG9zdDogL3NjcmF0Y2gvdGMtdGVzdGluZy90Yy1vY3QtMjMtYXZsL2J1aWxk LWxpbnV4L2J1aWxkLWdjYy1saW51eC1zdGFnZTIvZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbjgvLi4v Li4vZ2ZvcnRyYW4gLUIvc2NyYXRjaC90Yy10ZXN0aW5nL3RjLW9jdC0yMy1hdmwvYnVpbGQtbGlu dXgvYnVpbGQtZ2NjLWxpbnV4LXN0YWdlMi9nY2MvdGVzdHN1aXRlL2dmb3J0cmFuOC8uLi8uLi8g LUIvc2NyYXRjaC90Yy10ZXN0aW5nL3RjLW9jdC0yMy1hdmwvYnVpbGQtbGludXgvYnVpbGQtZ2Nj LWxpbnV4LXN0YWdlMi9yaXNjdjY0LXVua25vd24tbGludXgtZ251Ly4vbGliZ2ZvcnRyYW4vwqAg L3NjcmF0Y2gvdGMtdGVzdGluZy90Yy1vY3QtMjMtYXZsL2djYy9nY2MvdGVzdHN1aXRlL2dmb3J0 cmFuLmZvcnRyYW4tdG9ydHVyZS9leGVjdXRlL2ludHJpbnNpY19jb3VudC5mOTDCoCAtbWFyY2g9 cnY2NGdjdiAtbWFiaT1scDY0ZCAtbWNtb2RlbD1tZWRsb3fCoMKgIC1mZGlhZ25vc3RpY3MtcGxh aW4tb3V0cHV0wqAgLWZkaWFnbm9zdGljcy1wbGFpbi1vdXRwdXTCoCAtd8KgIC1PMiAtZm9taXQt ZnJhbWUtcG9pbnRlciAtZmlubGluZS1mdW5jdGlvbnPCoMKgwqDCoMKgwqDCoCAtQi9zY3JhdGNo L3RjLXRlc3RpbmcvdGMtb2N0LTIzLWF2bC9idWlsZC1saW51eC9idWlsZC1nY2MtbGludXgtc3Rh Z2UyL3Jpc2N2NjQtdW5rbm93bi1saW51eC1nbnUvLi9saWJnZm9ydHJhbi8ubGlicyAtTC9zY3Jh dGNoL3RjLXRlc3RpbmcvdGMtb2N0LTIzLWF2bC9idWlsZC1saW51eC9idWlsZC1nY2MtbGludXgt c3RhZ2UyL3Jpc2N2NjQtdW5rbm93bi1saW51eC1nbnUvLi9saWJnZm9ydHJhbi8ubGlicyAtTC9z Y3JhdGNoL3RjLXRlc3RpbmcvdGMtb2N0LTIzLWF2bC9idWlsZC1saW51eC9idWlsZC1nY2MtbGlu dXgtc3RhZ2UyL3Jpc2N2NjQtdW5rbm93bi1saW51eC1nbnUvLi9saWJnZm9ydHJhbi8ubGlicyAt TC9zY3JhdGNoL3RjLXRlc3RpbmcvdGMtb2N0LTIzLWF2bC9idWlsZC1saW51eC9idWlsZC1nY2Mt bGludXgtc3RhZ2UyL3Jpc2N2NjQtdW5rbm93bi1saW51eC1nbnUvLi9saWJhdG9taWMvLmxpYnPC oCAtbG3CoCAtbyAvc2NyYXRjaC90Yy10ZXN0aW5nL3RjLW9jdC0yMy1hdmwvYnVpbGQtbGludXgv YnVpbGQtZ2NjLWxpbnV4LXN0YWdlMi9nY2MvdGVzdHN1aXRlL2dmb3J0cmFuOC9pbnRyaW5zaWNf Y291bnQueMKgwqDCoCAodGltZW91dCA9IDYwMCkKc3Bhd24gLWlnbm9yZSBTSUdIVVAgL3NjcmF0 Y2gvdGMtdGVzdGluZy90Yy1vY3QtMjMtYXZsL2J1aWxkLWxpbnV4L2J1aWxkLWdjYy1saW51eC1z dGFnZTIvZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbjgvLi4vLi4vZ2ZvcnRyYW4gLUIvc2NyYXRjaC90 Yy10ZXN0aW5nL3RjLW9jdC0yMy1hdmwvYnVpbGQtbGludXgvYnVpbGQtZ2NjLWxpbnV4LXN0YWdl Mi9nY2MvdGVzdHN1aXRlL2dmb3J0cmFuOC8uLi8uLi8gLUIvc2NyYXRjaC90Yy10ZXN0aW5nL3Rj LW9jdC0yMy1hdmwvYnVpbGQtbGludXgvYnVpbGQtZ2NjLWxpbnV4LXN0YWdlMi9yaXNjdjY0LXVu a25vd24tbGludXgtZ251Ly4vbGliZ2ZvcnRyYW4vIC9zY3JhdGNoL3RjLXRlc3RpbmcvdGMtb2N0 LTIzLWF2bC9nY2MvZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5mb3J0cmFuLXRvcnR1cmUvZXhlY3V0 ZS9pbnRyaW5zaWNfY291bnQuZjkwIC1tYXJjaD1ydjY0Z2N2IC1tYWJpPWxwNjRkIC1tY21vZGVs PW1lZGxvdyAtZmRpYWdub3N0aWNzLXBsYWluLW91dHB1dCAtZmRpYWdub3N0aWNzLXBsYWluLW91 dHB1dCAtdyAtTzIgLWZvbWl0LWZyYW1lLXBvaW50ZXIgLWZpbmxpbmUtZnVuY3Rpb25zIC1CL3Nj cmF0Y2gvdGMtdGVzdGluZy90Yy1vY3QtMjMtYXZsL2J1aWxkLWxpbnV4L2J1aWxkLWdjYy1saW51 eC1zdGFnZTIvcmlzY3Y2NC11bmtub3duLWxpbnV4LWdudS8uL2xpYmdmb3J0cmFuLy5saWJzIC1M L3NjcmF0Y2gvdGMtdGVzdGluZy90Yy1vY3QtMjMtYXZsL2J1aWxkLWxpbnV4L2J1aWxkLWdjYy1s aW51eC1zdGFnZTIvcmlzY3Y2NC11bmtub3duLWxpbnV4LWdudS8uL2xpYmdmb3J0cmFuLy5saWJz IC1ML3NjcmF0Y2gvdGMtdGVzdGluZy90Yy1vY3QtMjMtYXZsL2J1aWxkLWxpbnV4L2J1aWxkLWdj Yy1saW51eC1zdGFnZTIvcmlzY3Y2NC11bmtub3duLWxpbnV4LWdudS8uL2xpYmdmb3J0cmFuLy5s aWJzIC1ML3NjcmF0Y2gvdGMtdGVzdGluZy90Yy1vY3QtMjMtYXZsL2J1aWxkLWxpbnV4L2J1aWxk LWdjYy1saW51eC1zdGFnZTIvcmlzY3Y2NC11bmtub3duLWxpbnV4LWdudS8uL2xpYmF0b21pYy8u bGlicyAtbG0gLW8gL3NjcmF0Y2gvdGMtdGVzdGluZy90Yy1vY3QtMjMtYXZsL2J1aWxkLWxpbnV4 L2J1aWxkLWdjYy1saW51eC1zdGFnZTIvZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbjgvaW50cmluc2lj X2NvdW50LngKUEFTUzogZ2ZvcnRyYW4uZm9ydHJhbi10b3J0dXJlL2V4ZWN1dGUvaW50cmluc2lj X2NvdW50LmY5MCBjb21waWxhdGlvbizCoCAtTzIgLWZvbWl0LWZyYW1lLXBvaW50ZXIgLWZpbmxp bmUtZnVuY3Rpb25zCnNwYXduIHJpc2N2NjQtdW5rbm93bi1saW51eC1nbnUtcnVuIC9zY3JhdGNo L3RjLXRlc3RpbmcvdGMtb2N0LTIzLWF2bC9idWlsZC1saW51eC9idWlsZC1nY2MtbGludXgtc3Rh Z2UyL2djYy90ZXN0c3VpdGUvZ2ZvcnRyYW44L2ludHJpbnNpY19jb3VudC54ClNUT1AgMgpGQUlM OiBnZm9ydHJhbi5mb3J0cmFuLXRvcnR1cmUvZXhlY3V0ZS9pbnRyaW5zaWNfY291bnQuZjkwIGV4 ZWN1dGlvbizCoCAtTzIgLWZvbWl0LWZyYW1lLXBvaW50ZXIgLWZpbmxpbmUtZnVuY3Rpb25zCkV4 ZWN1dGluZyBvbiBob3N0OiAvc2NyYXRjaC90Yy10ZXN0aW5nL3RjLW9jdC0yMy1hdmwvYnVpbGQt bGludXgvYnVpbGQtZ2NjLWxpbnV4LXN0YWdlMi9nY2MvdGVzdHN1aXRlL2dmb3J0cmFuMTAvLi4v Li4vZ2ZvcnRyYW4gLUIvc2NyYXRjaC90Yy10ZXN0aW5nL3RjLW9jdC0yMy1hdmwvYnVpbGQtbGlu dXgvYnVpbGQtZ2NjLWxpbnV4LXN0YWdlMi9nY2MvdGVzdHN1aXRlL2dmb3J0cmFuMTAvLi4vLi4v IC1CL3NjcmF0Y2gvdGMtdGVzdGluZy90Yy1vY3QtMjMtYXZsL2J1aWxkLWxpbnV4L2J1aWxkLWdj Yy1saW51eC1zdGFnZTIvcmlzY3Y2NC11bmtub3duLWxpbnV4LWdudS9saWIzMi9pbHAzMmQvbGli Z2ZvcnRyYW4vwqAgL3NjcmF0Y2gvdGMtdGVzdGluZy90Yy1vY3QtMjMtYXZsL2djYy9nY2MvdGVz dHN1aXRlL2dmb3J0cmFuLmZvcnRyYW4tdG9ydHVyZS9leGVjdXRlL2ludHJpbnNpY19tYXRtdWwu ZjkwwqAgLW1hcmNoPXJ2MzJnY3YgLW1hYmk9aWxwMzJkIC1tY21vZGVsPW1lZGxvd8KgwqAgLWZk aWFnbm9zdGljcy1wbGFpbi1vdXRwdXTCoCAtZmRpYWdub3N0aWNzLXBsYWluLW91dHB1dMKgIC13 wqAgLU8yIC1mb21pdC1mcmFtZS1wb2ludGVyIC1maW5saW5lLWZ1bmN0aW9ucyAtZnVucm9sbC1s b29wc8KgwqDCoMKgwqDCoCAtQi9zY3JhdGNoL3RjLXRlc3RpbmcvdGMtb2N0LTIzLWF2bC9idWls ZC1saW51eC9idWlsZC1nY2MtbGludXgtc3RhZ2UyL3Jpc2N2NjQtdW5rbm93bi1saW51eC1nbnUv bGliMzIvaWxwMzJkL2xpYmdmb3J0cmFuLy5saWJzIC1ML3NjcmF0Y2gvdGMtdGVzdGluZy90Yy1v Y3QtMjMtYXZsL2J1aWxkLWxpbnV4L2J1aWxkLWdjYy1saW51eC1zdGFnZTIvcmlzY3Y2NC11bmtu b3duLWxpbnV4LWdudS9saWIzMi9pbHAzMmQvbGliZ2ZvcnRyYW4vLmxpYnMgLUwvc2NyYXRjaC90 Yy10ZXN0aW5nL3RjLW9jdC0yMy1hdmwvYnVpbGQtbGludXgvYnVpbGQtZ2NjLWxpbnV4LXN0YWdl Mi9yaXNjdjY0LXVua25vd24tbGludXgtZ251L2xpYjMyL2lscDMyZC9saWJnZm9ydHJhbi8ubGli cyAtTC9zY3JhdGNoL3RjLXRlc3RpbmcvdGMtb2N0LTIzLWF2bC9idWlsZC1saW51eC9idWlsZC1n Y2MtbGludXgtc3RhZ2UyL3Jpc2N2NjQtdW5rbm93bi1saW51eC1nbnUvbGliMzIvaWxwMzJkL2xp YmF0b21pYy8ubGlic8KgIC1sbcKgIC1vIC9zY3JhdGNoL3RjLXRlc3RpbmcvdGMtb2N0LTIzLWF2 bC9idWlsZC1saW51eC9idWlsZC1nY2MtbGludXgtc3RhZ2UyL2djYy90ZXN0c3VpdGUvZ2ZvcnRy YW4xMC9pbnRyaW5zaWNfbWF0bXVsLnjCoMKgwqAgKHRpbWVvdXQgPSA2MDApCnNwYXduIC1pZ25v cmUgU0lHSFVQIC9zY3JhdGNoL3RjLXRlc3RpbmcvdGMtb2N0LTIzLWF2bC9idWlsZC1saW51eC9i dWlsZC1nY2MtbGludXgtc3RhZ2UyL2djYy90ZXN0c3VpdGUvZ2ZvcnRyYW4xMC8uLi8uLi9nZm9y dHJhbiAtQi9zY3JhdGNoL3RjLXRlc3RpbmcvdGMtb2N0LTIzLWF2bC9idWlsZC1saW51eC9idWls ZC1nY2MtbGludXgtc3RhZ2UyL2djYy90ZXN0c3VpdGUvZ2ZvcnRyYW4xMC8uLi8uLi8gLUIvc2Ny YXRjaC90Yy10ZXN0aW5nL3RjLW9jdC0yMy1hdmwvYnVpbGQtbGludXgvYnVpbGQtZ2NjLWxpbnV4 LXN0YWdlMi9yaXNjdjY0LXVua25vd24tbGludXgtZ251L2xpYjMyL2lscDMyZC9saWJnZm9ydHJh bi8gL3NjcmF0Y2gvdGMtdGVzdGluZy90Yy1vY3QtMjMtYXZsL2djYy9nY2MvdGVzdHN1aXRlL2dm b3J0cmFuLmZvcnRyYW4tdG9ydHVyZS9leGVjdXRlL2ludHJpbnNpY19tYXRtdWwuZjkwIC1tYXJj aD1ydjMyZ2N2IC1tYWJpPWlscDMyZCAtbWNtb2RlbD1tZWRsb3cgLWZkaWFnbm9zdGljcy1wbGFp bi1vdXRwdXQgLWZkaWFnbm9zdGljcy1wbGFpbi1vdXRwdXQgLXcgLU8yIC1mb21pdC1mcmFtZS1w b2ludGVyIC1maW5saW5lLWZ1bmN0aW9ucyAtZnVucm9sbC1sb29wcyAtQi9zY3JhdGNoL3RjLXRl c3RpbmcvdGMtb2N0LTIzLWF2bC9idWlsZC1saW51eC9idWlsZC1nY2MtbGludXgtc3RhZ2UyL3Jp c2N2NjQtdW5rbm93bi1saW51eC1nbnUvbGliMzIvaWxwMzJkL2xpYmdmb3J0cmFuLy5saWJzIC1M L3NjcmF0Y2gvdGMtdGVzdGluZy90Yy1vY3QtMjMtYXZsL2J1aWxkLWxpbnV4L2J1aWxkLWdjYy1s aW51eC1zdGFnZTIvcmlzY3Y2NC11bmtub3duLWxpbnV4LWdudS9saWIzMi9pbHAzMmQvbGliZ2Zv cnRyYW4vLmxpYnMgLUwvc2NyYXRjaC90Yy10ZXN0aW5nL3RjLW9jdC0yMy1hdmwvYnVpbGQtbGlu dXgvYnVpbGQtZ2NjLWxpbnV4LXN0YWdlMi9yaXNjdjY0LXVua25vd24tbGludXgtZ251L2xpYjMy L2lscDMyZC9saWJnZm9ydHJhbi8ubGlicyAtTC9zY3JhdGNoL3RjLXRlc3RpbmcvdGMtb2N0LTIz LWF2bC9idWlsZC1saW51eC9idWlsZC1nY2MtbGludXgtc3RhZ2UyL3Jpc2N2NjQtdW5rbm93bi1s aW51eC1nbnUvbGliMzIvaWxwMzJkL2xpYmF0b21pYy8ubGlicyAtbG0gLW8gL3NjcmF0Y2gvdGMt dGVzdGluZy90Yy1vY3QtMjMtYXZsL2J1aWxkLWxpbnV4L2J1aWxkLWdjYy1saW51eC1zdGFnZTIv Z2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbjEwL2ludHJpbnNpY19tYXRtdWwueApQQVNTOiBnZm9ydHJh bi5mb3J0cmFuLXRvcnR1cmUvZXhlY3V0ZS9pbnRyaW5zaWNfbWF0bXVsLmY5MCBjb21waWxhdGlv bizCoCAtTzIgLWZvbWl0LWZyYW1lLXBvaW50ZXIgLWZpbmxpbmUtZnVuY3Rpb25zIC1mdW5yb2xs LWxvb3BzCnNwYXduIHJpc2N2NjQtdW5rbm93bi1saW51eC1nbnUtcnVuIC9zY3JhdGNoL3RjLXRl c3RpbmcvdGMtb2N0LTIzLWF2bC9idWlsZC1saW51eC9idWlsZC1nY2MtbGludXgtc3RhZ2UyL2dj Yy90ZXN0c3VpdGUvZ2ZvcnRyYW4xMC9pbnRyaW5zaWNfbWF0bXVsLngKU1RPUCAzCkZBSUw6IGdm b3J0cmFuLmZvcnRyYW4tdG9ydHVyZS9leGVjdXRlL2ludHJpbnNpY19tYXRtdWwuZjkwIGV4ZWN1 dGlvbizCoCAtTzIgLWZvbWl0LWZyYW1lLXBvaW50ZXIgLWZpbmxpbmUtZnVuY3Rpb25zIC1mdW5y b2xsLWxvb3BzCsKgCkV4ZWN1dGluZyBvbiBob3N0OiAvc2NyYXRjaC90Yy10ZXN0aW5nL3RjLW9j dC0yMy1hdmwvYnVpbGQtbGludXgvYnVpbGQtZ2NjLWxpbnV4LXN0YWdlMi9nY2MvdGVzdHN1aXRl L2dmb3J0cmFuMTAvLi4vLi4vZ2ZvcnRyYW4gLUIvc2NyYXRjaC90Yy10ZXN0aW5nL3RjLW9jdC0y My1hdmwvYnVpbGQtbGludXgvYnVpbGQtZ2NjLWxpbnV4LXN0YWdlMi9nY2MvdGVzdHN1aXRlL2dm b3J0cmFuMTAvLi4vLi4vIC1CL3NjcmF0Y2gvdGMtdGVzdGluZy90Yy1vY3QtMjMtYXZsL2J1aWxk LWxpbnV4L2J1aWxkLWdjYy1saW51eC1zdGFnZTIvcmlzY3Y2NC11bmtub3duLWxpbnV4LWdudS9s aWIzMi9pbHAzMmQvbGliZ2ZvcnRyYW4vwqAgL3NjcmF0Y2gvdGMtdGVzdGluZy90Yy1vY3QtMjMt YXZsL2djYy9nY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRnL2llZWUvbGFyZ2VfMi5mOTDCoCAtbWFy Y2g9cnYzMmdjdiAtbWFiaT1pbHAzMmQgLW1jbW9kZWw9bWVkbG93wqDCoCAtZmRpYWdub3N0aWNz LXBsYWluLW91dHB1dMKgIC1mZGlhZ25vc3RpY3MtcGxhaW4tb3V0cHV0wqDCoMKgIC1PMMKgwqAg LXBlZGFudGljLWVycm9ycyAtZmludHJpbnNpYy1tb2R1bGVzLXBhdGggL3NjcmF0Y2gvdGMtdGVz dGluZy90Yy1vY3QtMjMtYXZsL2J1aWxkLWxpbnV4L2J1aWxkLWdjYy1saW51eC1zdGFnZTIvcmlz Y3Y2NC11bmtub3duLWxpbnV4LWdudS9saWIzMi9pbHAzMmQvbGliZ2ZvcnRyYW4vIC1mbm8tdW5z YWZlLW1hdGgtb3B0aW1pemF0aW9ucyAtZnJvdW5kaW5nLW1hdGggLWZzaWduYWxpbmctbmFuc8Kg wqDCoMKgwqDCoCAtQi9zY3JhdGNoL3RjLXRlc3RpbmcvdGMtb2N0LTIzLWF2bC9idWlsZC1saW51 eC9idWlsZC1nY2MtbGludXgtc3RhZ2UyL3Jpc2N2NjQtdW5rbm93bi1saW51eC1nbnUvbGliMzIv aWxwMzJkL2xpYmdmb3J0cmFuLy5saWJzIC1ML3NjcmF0Y2gvdGMtdGVzdGluZy90Yy1vY3QtMjMt YXZsL2J1aWxkLWxpbnV4L2J1aWxkLWdjYy1saW51eC1zdGFnZTIvcmlzY3Y2NC11bmtub3duLWxp bnV4LWdudS9saWIzMi9pbHAzMmQvbGliZ2ZvcnRyYW4vLmxpYnMgLUwvc2NyYXRjaC90Yy10ZXN0 aW5nL3RjLW9jdC0yMy1hdmwvYnVpbGQtbGludXgvYnVpbGQtZ2NjLWxpbnV4LXN0YWdlMi9yaXNj djY0LXVua25vd24tbGludXgtZ251L2xpYjMyL2lscDMyZC9saWJnZm9ydHJhbi8ubGlicyAtTC9z Y3JhdGNoL3RjLXRlc3RpbmcvdGMtb2N0LTIzLWF2bC9idWlsZC1saW51eC9idWlsZC1nY2MtbGlu dXgtc3RhZ2UyL3Jpc2N2NjQtdW5rbm93bi1saW51eC1nbnUvbGliMzIvaWxwMzJkL2xpYmF0b21p Yy8ubGlic8KgIC1sbcKgIC1vIC4vbGFyZ2VfMi5leGXCoMKgwqAgKHRpbWVvdXQgPSA2MDApCnNw YXduIC1pZ25vcmUgU0lHSFVQIC9zY3JhdGNoL3RjLXRlc3RpbmcvdGMtb2N0LTIzLWF2bC9idWls ZC1saW51eC9idWlsZC1nY2MtbGludXgtc3RhZ2UyL2djYy90ZXN0c3VpdGUvZ2ZvcnRyYW4xMC8u Li8uLi9nZm9ydHJhbiAtQi9zY3JhdGNoL3RjLXRlc3RpbmcvdGMtb2N0LTIzLWF2bC9idWlsZC1s aW51eC9idWlsZC1nY2MtbGludXgtc3RhZ2UyL2djYy90ZXN0c3VpdGUvZ2ZvcnRyYW4xMC8uLi8u Li8gLUIvc2NyYXRjaC90Yy10ZXN0aW5nL3RjLW9jdC0yMy1hdmwvYnVpbGQtbGludXgvYnVpbGQt Z2NjLWxpbnV4LXN0YWdlMi9yaXNjdjY0LXVua25vd24tbGludXgtZ251L2xpYjMyL2lscDMyZC9s aWJnZm9ydHJhbi8gL3NjcmF0Y2gvdGMtdGVzdGluZy90Yy1vY3QtMjMtYXZsL2djYy9nY2MvdGVz dHN1aXRlL2dmb3J0cmFuLmRnL2llZWUvbGFyZ2VfMi5mOTAgLW1hcmNoPXJ2MzJnY3YgLW1hYmk9 aWxwMzJkIC1tY21vZGVsPW1lZGxvdyAtZmRpYWdub3N0aWNzLXBsYWluLW91dHB1dCAtZmRpYWdu b3N0aWNzLXBsYWluLW91dHB1dCAtTzAgLXBlZGFudGljLWVycm9ycyAtZmludHJpbnNpYy1tb2R1 bGVzLXBhdGggL3NjcmF0Y2gvdGMtdGVzdGluZy90Yy1vY3QtMjMtYXZsL2J1aWxkLWxpbnV4L2J1 aWxkLWdjYy1saW51eC1zdGFnZTIvcmlzY3Y2NC11bmtub3duLWxpbnV4LWdudS9saWIzMi9pbHAz MmQvbGliZ2ZvcnRyYW4vIC1mbm8tdW5zYWZlLW1hdGgtb3B0aW1pemF0aW9ucyAtZnJvdW5kaW5n LW1hdGggLWZzaWduYWxpbmctbmFucyAtQi9zY3JhdGNoL3RjLXRlc3RpbmcvdGMtb2N0LTIzLWF2 bC9idWlsZC1saW51eC9idWlsZC1nY2MtbGludXgtc3RhZ2UyL3Jpc2N2NjQtdW5rbm93bi1saW51 eC1nbnUvbGliMzIvaWxwMzJkL2xpYmdmb3J0cmFuLy5saWJzIC1ML3NjcmF0Y2gvdGMtdGVzdGlu Zy90Yy1vY3QtMjMtYXZsL2J1aWxkLWxpbnV4L2J1aWxkLWdjYy1saW51eC1zdGFnZTIvcmlzY3Y2 NC11bmtub3duLWxpbnV4LWdudS9saWIzMi9pbHAzMmQvbGliZ2ZvcnRyYW4vLmxpYnMgLUwvc2Ny YXRjaC90Yy10ZXN0aW5nL3RjLW9jdC0yMy1hdmwvYnVpbGQtbGludXgvYnVpbGQtZ2NjLWxpbnV4 LXN0YWdlMi9yaXNjdjY0LXVua25vd24tbGludXgtZ251L2xpYjMyL2lscDMyZC9saWJnZm9ydHJh bi8ubGlicyAtTC9zY3JhdGNoL3RjLXRlc3RpbmcvdGMtb2N0LTIzLWF2bC9idWlsZC1saW51eC9i dWlsZC1nY2MtbGludXgtc3RhZ2UyL3Jpc2N2NjQtdW5rbm93bi1saW51eC1nbnUvbGliMzIvaWxw MzJkL2xpYmF0b21pYy8ubGlicyAtbG0gLW8gLi9sYXJnZV8yLmV4ZQpQQVNTOiBnZm9ydHJhbi5k Zy9pZWVlL2xhcmdlXzIuZjkwwqDCoCAtTzDCoCAodGVzdCBmb3IgZXhjZXNzIGVycm9ycykKc3Bh d24gcmlzY3Y2NC11bmtub3duLWxpbnV4LWdudS1ydW4gLi9sYXJnZV8yLmV4ZQrCoCAwLjMzMzMz MzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMxN8KgwqDCoMKgwqDCoMKgwqAgMi4yNDI3MTk5 ODU5MzY2NzgxOTExMjUwMDE5MzM5NDI5MTQ5NUUrMTY0NApTVE9QIDEKRkFJTDogZ2ZvcnRyYW4u ZGcvaWVlZS9sYXJnZV8yLmY5MMKgwqAgLU8wwqAgZXhlY3V0aW9uIHRlc3QKRXhlY3V0aW5nIG9u IGhvc3Q6IC9zY3JhdGNoL3RjLXRlc3RpbmcvdGMtb2N0LTIzLWF2bC9idWlsZC1saW51eC9idWls ZC1nY2MtbGludXgtc3RhZ2UyL2djYy90ZXN0c3VpdGUvZysrOC8uLi8uLi94ZysrIC1CL3NjcmF0 Y2gvdGMtdGVzdGluZy90Yy1vY3QtMjMtYXZsL2J1aWxkLWxpbnV4L2J1aWxkLWdjYy1saW51eC1z dGFnZTIvZ2NjL3Rlc3RzdWl0ZS9nKys4Ly4uLy4uL8KgIC9zY3JhdGNoL3RjLXRlc3RpbmcvdGMt b2N0LTIzLWF2bC9nY2MvZ2NjL3Rlc3RzdWl0ZS9nKysuZGcvdmVjdC9wcjExMDU1Ny5jY8KgIC1t YXJjaD1ydjMyZ2N2IC1tYWJpPWlscDMyZCAtbWNtb2RlbD1tZWRsb3fCoMKgIC1mZGlhZ25vc3Rp Y3MtcGxhaW4tb3V0cHV0wqAgLW5vc3RkaW5jKysgLUkvc2NyYXRjaC90Yy10ZXN0aW5nL3RjLW9j dC0yMy1hdmwvYnVpbGQtbGludXgvYnVpbGQtZ2NjLWxpbnV4LXN0YWdlMi9yaXNjdjY0LXVua25v d24tbGludXgtZ251L2xpYjMyL2lscDMyZC9saWJzdGRjKystdjMvaW5jbHVkZS9yaXNjdjY0LXVu a25vd24tbGludXgtZ251IC1JL3NjcmF0Y2gvdGMtdGVzdGluZy90Yy1vY3QtMjMtYXZsL2J1aWxk LWxpbnV4L2J1aWxkLWdjYy1saW51eC1zdGFnZTIvcmlzY3Y2NC11bmtub3duLWxpbnV4LWdudS9s aWIzMi9pbHAzMmQvbGlic3RkYysrLXYzL2luY2x1ZGUgLUkvc2NyYXRjaC90Yy10ZXN0aW5nL3Rj LW9jdC0yMy1hdmwvZ2NjL2xpYnN0ZGMrKy12My9saWJzdXBjKysgLUkvc2NyYXRjaC90Yy10ZXN0 aW5nL3RjLW9jdC0yMy1hdmwvZ2NjL2xpYnN0ZGMrKy12My9pbmNsdWRlL2JhY2t3YXJkIC1JL3Nj cmF0Y2gvdGMtdGVzdGluZy90Yy1vY3QtMjMtYXZsL2djYy9saWJzdGRjKystdjMvdGVzdHN1aXRl L3V0aWwgLWZtZXNzYWdlLWxlbmd0aD0wwqAgLXN0ZD1jKys5OCAtTzIgLWZ0cmVlLXZlY3Rvcml6 ZSAtZm5vLXZlY3QtY29zdC1tb2RlbCAtLXBhcmFtIHJpc2N2LWF1dG92ZWMtcHJlZmVyZW5jZT1z Y2FsYWJsZSAtLXBhcmFtIHJpc2N2LXZlY3Rvci1hYmkgLWZkdW1wLXRyZWUtdmVjdC1kZXRhaWxz wqDCoMKgwqDCoMKgwqAgLUwvc2NyYXRjaC90Yy10ZXN0aW5nL3RjLW9jdC0yMy1hdmwvYnVpbGQt bGludXgvYnVpbGQtZ2NjLWxpbnV4LXN0YWdlMi9yaXNjdjY0LXVua25vd24tbGludXgtZ251L2xp YjMyL2lscDMyZC9saWJzdGRjKystdjMvc3JjLy5saWJzwqAgLUIvc2NyYXRjaC90Yy10ZXN0aW5n L3RjLW9jdC0yMy1hdmwvYnVpbGQtbGludXgvYnVpbGQtZ2NjLWxpbnV4LXN0YWdlMi9yaXNjdjY0 LXVua25vd24tbGludXgtZ251L2xpYjMyL2lscDMyZC9saWJzdGRjKystdjMvc3JjLy5saWJzwqAg LUwvc2NyYXRjaC90Yy10ZXN0aW5nL3RjLW9jdC0yMy1hdmwvYnVpbGQtbGludXgvYnVpbGQtZ2Nj LWxpbnV4LXN0YWdlMi9yaXNjdjY0LXVua25vd24tbGludXgtZ251L2xpYjMyL2lscDMyZC9saWJz dGRjKystdjMvc3JjLy5saWJzwqAgLUwvc2NyYXRjaC90Yy10ZXN0aW5nL3RjLW9jdC0yMy1hdmwv YnVpbGQtbGludXgvYnVpbGQtZ2NjLWxpbnV4LXN0YWdlMi9yaXNjdjY0LXVua25vd24tbGludXgt Z251L2xpYjMyL2lscDMyZC9saWJzdGRjKystdjMvc3JjL2V4cGVyaW1lbnRhbC8ubGlicyAtQi9z Y3JhdGNoL3RjLXRlc3RpbmcvdGMtb2N0LTIzLWF2bC9idWlsZC1saW51eC9idWlsZC1nY2MtbGlu dXgtc3RhZ2UyL3Jpc2N2NjQtdW5rbm93bi1saW51eC1nbnUvbGliMzIvaWxwMzJkL2xpYml0bS8g LUwvc2NyYXRjaC90Yy10ZXN0aW5nL3RjLW9jdC0yMy1hdmwvYnVpbGQtbGludXgvYnVpbGQtZ2Nj LWxpbnV4LXN0YWdlMi9yaXNjdjY0LXVua25vd24tbGludXgtZ251L2xpYjMyL2lscDMyZC9saWJp dG0vLmxpYnMgLWxtwqAgLW8gLi9wcjExMDU1Ny5leGXCoMKgwqAgKHRpbWVvdXQgPSA2MDApCnNw YXduIC1pZ25vcmUgU0lHSFVQIC9zY3JhdGNoL3RjLXRlc3RpbmcvdGMtb2N0LTIzLWF2bC9idWls ZC1saW51eC9idWlsZC1nY2MtbGludXgtc3RhZ2UyL2djYy90ZXN0c3VpdGUvZysrOC8uLi8uLi94 ZysrIC1CL3NjcmF0Y2gvdGMtdGVzdGluZy90Yy1vY3QtMjMtYXZsL2J1aWxkLWxpbnV4L2J1aWxk LWdjYy1saW51eC1zdGFnZTIvZ2NjL3Rlc3RzdWl0ZS9nKys4Ly4uLy4uLyAvc2NyYXRjaC90Yy10 ZXN0aW5nL3RjLW9jdC0yMy1hdmwvZ2NjL2djYy90ZXN0c3VpdGUvZysrLmRnL3ZlY3QvcHIxMTA1 NTcuY2MgLW1hcmNoPXJ2MzJnY3YgLW1hYmk9aWxwMzJkIC1tY21vZGVsPW1lZGxvdyAtZmRpYWdu b3N0aWNzLXBsYWluLW91dHB1dCAtbm9zdGRpbmMrKyAtSS9zY3JhdGNoL3RjLXRlc3RpbmcvdGMt b2N0LTIzLWF2bC9idWlsZC1saW51eC9idWlsZC1nY2MtbGludXgtc3RhZ2UyL3Jpc2N2NjQtdW5r bm93bi1saW51eC1nbnUvbGliMzIvaWxwMzJkL2xpYnN0ZGMrKy12My9pbmNsdWRlL3Jpc2N2NjQt dW5rbm93bi1saW51eC1nbnUgLUkvc2NyYXRjaC90Yy10ZXN0aW5nL3RjLW9jdC0yMy1hdmwvYnVp bGQtbGludXgvYnVpbGQtZ2NjLWxpbnV4LXN0YWdlMi9yaXNjdjY0LXVua25vd24tbGludXgtZ251 L2xpYjMyL2lscDMyZC9saWJzdGRjKystdjMvaW5jbHVkZSAtSS9zY3JhdGNoL3RjLXRlc3Rpbmcv dGMtb2N0LTIzLWF2bC9nY2MvbGlic3RkYysrLXYzL2xpYnN1cGMrKyAtSS9zY3JhdGNoL3RjLXRl c3RpbmcvdGMtb2N0LTIzLWF2bC9nY2MvbGlic3RkYysrLXYzL2luY2x1ZGUvYmFja3dhcmQgLUkv c2NyYXRjaC90Yy10ZXN0aW5nL3RjLW9jdC0yMy1hdmwvZ2NjL2xpYnN0ZGMrKy12My90ZXN0c3Vp dGUvdXRpbCAtZm1lc3NhZ2UtbGVuZ3RoPTAgLXN0ZD1jKys5OCAtTzIgLWZ0cmVlLXZlY3Rvcml6 ZSAtZm5vLXZlY3QtY29zdC1tb2RlbCAtLXBhcmFtIHJpc2N2LWF1dG92ZWMtcHJlZmVyZW5jZT1z Y2FsYWJsZSAtLXBhcmFtIHJpc2N2LXZlY3Rvci1hYmkgLWZkdW1wLXRyZWUtdmVjdC1kZXRhaWxz IC1ML3NjcmF0Y2gvdGMtdGVzdGluZy90Yy1vY3QtMjMtYXZsL2J1aWxkLWxpbnV4L2J1aWxkLWdj Yy1saW51eC1zdGFnZTIvcmlzY3Y2NC11bmtub3duLWxpbnV4LWdudS9saWIzMi9pbHAzMmQvbGli c3RkYysrLXYzL3NyYy8ubGlicyAtQi9zY3JhdGNoL3RjLXRlc3RpbmcvdGMtb2N0LTIzLWF2bC9i dWlsZC1saW51eC9idWlsZC1nY2MtbGludXgtc3RhZ2UyL3Jpc2N2NjQtdW5rbm93bi1saW51eC1n bnUvbGliMzIvaWxwMzJkL2xpYnN0ZGMrKy12My9zcmMvLmxpYnMgLUwvc2NyYXRjaC90Yy10ZXN0 aW5nL3RjLW9jdC0yMy1hdmwvYnVpbGQtbGludXgvYnVpbGQtZ2NjLWxpbnV4LXN0YWdlMi9yaXNj djY0LXVua25vd24tbGludXgtZ251L2xpYjMyL2lscDMyZC9saWJzdGRjKystdjMvc3JjLy5saWJz IC1ML3NjcmF0Y2gvdGMtdGVzdGluZy90Yy1vY3QtMjMtYXZsL2J1aWxkLWxpbnV4L2J1aWxkLWdj Yy1saW51eC1zdGFnZTIvcmlzY3Y2NC11bmtub3duLWxpbnV4LWdudS9saWIzMi9pbHAzMmQvbGli c3RkYysrLXYzL3NyYy9leHBlcmltZW50YWwvLmxpYnMgLUIvc2NyYXRjaC90Yy10ZXN0aW5nL3Rj LW9jdC0yMy1hdmwvYnVpbGQtbGludXgvYnVpbGQtZ2NjLWxpbnV4LXN0YWdlMi9yaXNjdjY0LXVu a25vd24tbGludXgtZ251L2xpYjMyL2lscDMyZC9saWJpdG0vIC1ML3NjcmF0Y2gvdGMtdGVzdGlu Zy90Yy1vY3QtMjMtYXZsL2J1aWxkLWxpbnV4L2J1aWxkLWdjYy1saW51eC1zdGFnZTIvcmlzY3Y2 NC11bmtub3duLWxpbnV4LWdudS9saWIzMi9pbHAzMmQvbGliaXRtLy5saWJzIC1sbSAtbyAuL3By MTEwNTU3LmV4ZQpQQVNTOiBnKysuZGcvdmVjdC9wcjExMDU1Ny5jY8KgIC1zdGQ9YysrOTggKHRl c3QgZm9yIGV4Y2VzcyBlcnJvcnMpCnNwYXduIHJpc2N2NjQtdW5rbm93bi1saW51eC1nbnUtcnVu IC4vcHIxMTA1NTcuZXhlCi9zY3JhdGNoL3RjLXRlc3RpbmcvdGMtb2N0LTIzLWF2bC9idWlsZC1s aW51eC8uLi9zY3JpcHRzL3dyYXBwZXIvcWVtdS9yaXNjdjY0LXVua25vd24tbGludXgtZ251LXJ1 bjogbGluZSAxNTogMzIzNDg1IFRyYWNlL2JyZWFrcG9pbnQgdHJhcMKgwqAgKGNvcmUgZHVtcGVk KSBRRU1VX0NQVT0iJChtYXJjaC10by1jcHUtb3B0IC0tZ2V0LXJpc2N2LXRhZyAkMSkiIHFlbXUt cmlzY3YkeGxlbiAtciA1LjEwICIke3FlbXVfYXJnc1tAXX0iIC1MICR7UklTQ19WX1NZU1JPT1R9 ICIkQCIKRkFJTDogZysrLmRnL3ZlY3QvcHIxMTA1NTcuY2PCoCAtc3RkPWMrKzk4IGV4ZWN1dGlv biB0ZXN0CkV4ZWN1dGluZyBvbiBob3N0OiAvc2NyYXRjaC90Yy10ZXN0aW5nL3RjLW9jdC0yMy1h dmwvYnVpbGQtbGludXgvYnVpbGQtZ2NjLWxpbnV4LXN0YWdlMi9nY2MveGdjYyAtQi9zY3JhdGNo L3RjLXRlc3RpbmcvdGMtb2N0LTIzLWF2bC9idWlsZC1saW51eC9idWlsZC1nY2MtbGludXgtc3Rh Z2UyL2djYy/CoCAvc2NyYXRjaC90Yy10ZXN0aW5nL3RjLW9jdC0yMy1hdmwvZ2NjL2djYy90ZXN0 c3VpdGUvZ2NjLmRnL3ZlY3QvdmVjdC1yZWR1Yy1kb3QtMjEuY8KgIC1tYXJjaD1ydjMyZ2N2IC1t YWJpPWlscDMyZCAtbWNtb2RlbD1tZWRsb3fCoMKgIC1mZGlhZ25vc3RpY3MtcGxhaW4tb3V0cHV0 wqDCoCAtLXBhcmFtIHJpc2N2LWF1dG92ZWMtcHJlZmVyZW5jZT1zY2FsYWJsZSAtLXBhcmFtIHJp c2N2LXZlY3Rvci1hYmkgLWZ0cmVlLXZlY3Rvcml6ZSAtZm5vLXRyZWUtbG9vcC1kaXN0cmlidXRl LXBhdHRlcm5zIC1mbm8tdmVjdC1jb3N0LW1vZGVsIC1mbm8tY29tbW9uIC1PMiAtZmR1bXAtdHJl ZS12ZWN0LWRldGFpbHPCoMKgwqDCoMKgIC1sbcKgIC1vIC4vdmVjdC1yZWR1Yy1kb3QtMjEuZXhl wqDCoMKgICh0aW1lb3V0ID0gNjAwKQpzcGF3biAtaWdub3JlIFNJR0hVUCAvc2NyYXRjaC90Yy10 ZXN0aW5nL3RjLW9jdC0yMy1hdmwvYnVpbGQtbGludXgvYnVpbGQtZ2NjLWxpbnV4LXN0YWdlMi9n Y2MveGdjYyAtQi9zY3JhdGNoL3RjLXRlc3RpbmcvdGMtb2N0LTIzLWF2bC9idWlsZC1saW51eC9i dWlsZC1nY2MtbGludXgtc3RhZ2UyL2djYy8gL3NjcmF0Y2gvdGMtdGVzdGluZy90Yy1vY3QtMjMt YXZsL2djYy9nY2MvdGVzdHN1aXRlL2djYy5kZy92ZWN0L3ZlY3QtcmVkdWMtZG90LTIxLmMgLW1h cmNoPXJ2MzJnY3YgLW1hYmk9aWxwMzJkIC1tY21vZGVsPW1lZGxvdyAtZmRpYWdub3N0aWNzLXBs YWluLW91dHB1dCAtLXBhcmFtIHJpc2N2LWF1dG92ZWMtcHJlZmVyZW5jZT1zY2FsYWJsZSAtLXBh cmFtIHJpc2N2LXZlY3Rvci1hYmkgLWZ0cmVlLXZlY3Rvcml6ZSAtZm5vLXRyZWUtbG9vcC1kaXN0 cmlidXRlLXBhdHRlcm5zIC1mbm8tdmVjdC1jb3N0LW1vZGVsIC1mbm8tY29tbW9uIC1PMiAtZmR1 bXAtdHJlZS12ZWN0LWRldGFpbHMgLWxtIC1vIC4vdmVjdC1yZWR1Yy1kb3QtMjEuZXhlClBBU1M6 IGdjYy5kZy92ZWN0L3ZlY3QtcmVkdWMtZG90LTIxLmMgKHRlc3QgZm9yIGV4Y2VzcyBlcnJvcnMp CnNwYXduIHJpc2N2NjQtdW5rbm93bi1saW51eC1nbnUtcnVuIC4vdmVjdC1yZWR1Yy1kb3QtMjEu ZXhlCi9zY3JhdGNoL3RjLXRlc3RpbmcvdGMtb2N0LTIzLWF2bC9idWlsZC1saW51eC8uLi9zY3Jp cHRzL3dyYXBwZXIvcWVtdS9yaXNjdjY0LXVua25vd24tbGludXgtZ251LXJ1bjogbGluZSAxNTog MzQ4NDgwMyBBYm9ydGVkwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGNvcmUgZHVt cGVkKSBRRU1VX0NQVT0iJChtYXJjaC10by1jcHUtb3B0IC0tZ2V0LXJpc2N2LXRhZyAkMSkiIHFl bXUtcmlzY3YkeGxlbiAtciA1LjEwICIke3FlbXVfYXJnc1tAXX0iIC1MICR7UklTQ19WX1NZU1JP T1R9ICIkQCIKRkFJTDogZ2NjLmRnL3ZlY3QvdmVjdC1yZWR1Yy1kb3QtMjEuYyBleGVjdXRpb24g dGVzdApFeGVjdXRpbmcgb24gaG9zdDogL3NjcmF0Y2gvdGMtdGVzdGluZy90Yy1vY3QtMjMtYXZs L2J1aWxkLWxpbnV4L2J1aWxkLWdjYy1saW51eC1zdGFnZTIvZ2NjL3hnY2MgLUIvc2NyYXRjaC90 Yy10ZXN0aW5nL3RjLW9jdC0yMy1hdmwvYnVpbGQtbGludXgvYnVpbGQtZ2NjLWxpbnV4LXN0YWdl Mi9nY2MvwqAgL3NjcmF0Y2gvdGMtdGVzdGluZy90Yy1vY3QtMjMtYXZsL2djYy9nY2MvdGVzdHN1 aXRlL2djYy5kZy92ZWN0L3ZlY3QtYWxpYXMtY2hlY2stMTYuY8KgIC1tYXJjaD1ydjMyZ2N2IC1t YWJpPWlscDMyZCAtbWNtb2RlbD1tZWRsb3fCoMKgIC1mZGlhZ25vc3RpY3MtcGxhaW4tb3V0cHV0 wqDCoCAtLXBhcmFtIHJpc2N2LWF1dG92ZWMtcHJlZmVyZW5jZT1zY2FsYWJsZSAtLXBhcmFtIHJp c2N2LXZlY3Rvci1hYmkgLWZ0cmVlLXZlY3Rvcml6ZSAtZm5vLXRyZWUtbG9vcC1kaXN0cmlidXRl LXBhdHRlcm5zIC1mbm8tdmVjdC1jb3N0LW1vZGVsIC1mbm8tY29tbW9uIC1PMiAtZmR1bXAtdHJl ZS12ZWN0LWRldGFpbHPCoMKgwqDCoMKgIC1sbcKgIC1vIC4vdmVjdC1hbGlhcy1jaGVjay0xNi5l eGXCoMKgwqAgKHRpbWVvdXQgPSA2MDApCnNwYXduIC1pZ25vcmUgU0lHSFVQIC9zY3JhdGNoL3Rj LXRlc3RpbmcvdGMtb2N0LTIzLWF2bC9idWlsZC1saW51eC9idWlsZC1nY2MtbGludXgtc3RhZ2Uy L2djYy94Z2NjIC1CL3NjcmF0Y2gvdGMtdGVzdGluZy90Yy1vY3QtMjMtYXZsL2J1aWxkLWxpbnV4 L2J1aWxkLWdjYy1saW51eC1zdGFnZTIvZ2NjLyAvc2NyYXRjaC90Yy10ZXN0aW5nL3RjLW9jdC0y My1hdmwvZ2NjL2djYy90ZXN0c3VpdGUvZ2NjLmRnL3ZlY3QvdmVjdC1hbGlhcy1jaGVjay0xNi5j IC1tYXJjaD1ydjMyZ2N2IC1tYWJpPWlscDMyZCAtbWNtb2RlbD1tZWRsb3cgLWZkaWFnbm9zdGlj cy1wbGFpbi1vdXRwdXQgLS1wYXJhbSByaXNjdi1hdXRvdmVjLXByZWZlcmVuY2U9c2NhbGFibGUg LS1wYXJhbSByaXNjdi12ZWN0b3ItYWJpIC1mdHJlZS12ZWN0b3JpemUgLWZuby10cmVlLWxvb3At ZGlzdHJpYnV0ZS1wYXR0ZXJucyAtZm5vLXZlY3QtY29zdC1tb2RlbCAtZm5vLWNvbW1vbiAtTzIg LWZkdW1wLXRyZWUtdmVjdC1kZXRhaWxzIC1sbSAtbyAuL3ZlY3QtYWxpYXMtY2hlY2stMTYuZXhl ClBBU1M6IGdjYy5kZy92ZWN0L3ZlY3QtYWxpYXMtY2hlY2stMTYuYyAodGVzdCBmb3IgZXhjZXNz IGVycm9ycykKc3Bhd24gcmlzY3Y2NC11bmtub3duLWxpbnV4LWdudS1ydW4gLi92ZWN0LWFsaWFz LWNoZWNrLTE2LmV4ZQovc2NyYXRjaC90Yy10ZXN0aW5nL3RjLW9jdC0yMy1hdmwvYnVpbGQtbGlu dXgvLi4vc2NyaXB0cy93cmFwcGVyL3FlbXUvcmlzY3Y2NC11bmtub3duLWxpbnV4LWdudS1ydW46 IGxpbmUgMTU6IDM0MzE5NzUgQWJvcnRlZMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg IChjb3JlIGR1bXBlZCkgUUVNVV9DUFU9IiQobWFyY2gtdG8tY3B1LW9wdCAtLWdldC1yaXNjdi10 YWcgJDEpIiBxZW11LXJpc2N2JHhsZW4gLXIgNS4xMCAiJHtxZW11X2FyZ3NbQF19IiAtTCAke1JJ U0NfVl9TWVNST09UfSAiJEAiCkZBSUw6IGdjYy5kZy92ZWN0L3ZlY3QtYWxpYXMtY2hlY2stMTYu YyBleGVjdXRpb24gdGVzdApQQVNTOiBnY2MuZGcvdmVjdC92ZWN0LWFsaWFzLWNoZWNrLTE2LmMg c2Nhbi10cmVlLWR1bXAgdmVjdCAiZmxhZ3M6ICpSQVdcXG4iClBBU1M6IGdjYy5kZy92ZWN0L3Zl Y3QtYWxpYXMtY2hlY2stMTYuYyBzY2FuLXRyZWUtZHVtcCB2ZWN0ICJ1c2luZyBhbiBhZGRyZXNz LWJhc2VkIG92ZXJsYXAgdGVzdCIKUEFTUzogZ2NjLmRnL3ZlY3QvdmVjdC1hbGlhcy1jaGVjay0x Ni5jIHNjYW4tdHJlZS1kdW1wLW5vdCB2ZWN0ICJ1c2luZyBhbiBpbmRleC1iYXNlZCIKSSd2ZSBv YnNlcnZlZCBuZXh0YWZ0ZXItMi5jIGJlaW5nIGZsYWt5IG9uIHRoZSBDSSBzbyB0aGF0IHBhcnRp Y3VsYXIgZmFpbHVyZSBtaWdodCBub3QgYmUgcmVhbC4KwqAKSWYgeW91IHdhbnQgYW55IHBhcnRp Y3VsYXIgdGVzdGNhc2UncyBkZWJ1ZyBsb2dzIHBsZWFzZSBsZXQgbWUga25vdy4KwqAKUGF0cmlj awrCoApPbiAxMC8yMy8yMyAyMTozMCwgUGF0cmljayBPJ05laWxsIHdyb3RlOgpUaGUgQ0kganVz dCBwaWNrZWQgaXQgdXA6IGh0dHBzOi8vZ2l0aHViLmNvbS9ld2x1L2djYy1wcmVjb21taXQtY2kv aXNzdWVzLzQ0OSNpc3N1ZS0xOTU4NDgzMjcyClNpbmNlIGl0IGRvZXNuJ3QgYXBwbHkgdG8gdGhl IENJJ3MgYmFzZWxpbmUgaGFzaCBpdCdzIG9ubHkgcGVyZm9ybWluZyBhIGJ1aWxkLgpJJ2xsIHJl LXJ1biBpdCBpbiB0aGUgbW9ybmluZyBvbmNlIHRoZSBiYXNlbGluZSBoYXMgYmVlbiB1cGRhdGVk LgrCoApJbiB0aGUgbWVhbnRpbWUgSSBzdGFydGVkIGEgZnVsbCBidWlsZCt0ZXN0IHJ1biBvbiBt eSBsb2NhbCBtYWNoaW5lLgpJJ2xsIHNlbmQgeW91IHRoZSByZXN1bHRzIGluIH4xMCBob3VycyAt IG1vcm5pbmcgbXkgdGltZSA6LSkKwqAKUGF0cmljawpPbiAxMC8yMy8yMyAyMDo0NCwganV6aGUu emhvbmdAcml2YWkuYWkgd3JvdGU6CkNDaW5nIFBhdHJpY2suLi4KwqAKSGksIEBQYXRyaWNrLgpD b3VsZCB5b3UgYXBwbHkgdGhpcyBwYXRjaCBhbmQgdHJpZ2dlciB5b3VyIHJlZ3Jlc3Npb24gQ0k/ CsKgCkkgZG9uJ3QgaGF2ZSBhbiBlbnZpcm9ubWVudCB0byB0ZXN0IGZvcnRyYW4gZm9yIG5vdyAo SSBvbmx5IHRlc3QgaXQgb24gQy9DKyspLgrCoApUaGFua3MuwqAKwqAKanV6aGUuemhvbmdAcml2 YWkuYWkKwqAKRnJvbTrCoEp1emhlLVpob25nCkRhdGU6wqAyMDIzLTEwLTI0wqAxMTozMgpUbzrC oGdjYy1wYXRjaGVzCkNDOsKga2l0by5jaGVuZzsga2l0by5jaGVuZzsgamVmZnJleWFsYXc7IHJk YXBwLmdjYzsgSnV6aGUtWmhvbmcKU3ViamVjdDrCoFtQQVRDSF0gUklTQy1WOiBBZGQgQVZMIHBy b3BhZ2F0aW9uIFBBU1MgZm9yIFJWViBhdXRvLXZlY3Rvcml6YXRpb24KVGhpcyBwYXRjaCBhZGRy ZXNzZXMgdGhlIHJlZHVuZGFudCBBVkwvVkwgdG9nZ2xpbmcgaW4gUlZWIHBhcnRpYWwgYXV0by12 ZWN0b3JpemF0aW9uCndoaWNoIGlzIGEga25vd24gaXNzdWUgZm9yIGEgbG9uZyB0aW1lIGFuZCBJ IGZpbmFsbHkgZmluZCB0aGUgdGltZSB0byBhZGRyZXNzIGl0LgrCoApDb25zaWRlciBhIHNpbXBs ZSB2ZWN0b3IgYWRkaXRpb24gb3BlcmF0aW9uOgrCoApodHRwczovL2dvZGJvbHQub3JnL3ovN2hm R2ZFalczCsKgCnZvaWQKZm9vIChpbnQgKl9fcmVzdHJpY3QgYSwKwqDCoMKgwqAgaW50ICpfX3Jl c3RyaWN0IGIsCsKgwqDCoMKgIGludCAqX19yZXN0cmljdCBuKQp7CsKgIGZvciAoaW50IGkgPSAw OyBpIDwgbjsgaSsrKQrCoMKgwqDCoMKgIGFbaV0gPSBhW2ldICsgYltpXTsKfQrCoApPcHRpbWl6 ZWQgSVI6CsKgCkxvb3AgYm9keToKwqAgXzM4ID0gLlNFTEVDVF9WTCAoaXZ0bXBfMzYsIFBPTFlf SU5UX0NTVCBbNCwgNF0pO8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgIC0+IHZzZXR2bGkgYTUsYTIsZTgsbWY0LHRhLG1hCsKgIC4uLgrCoCB2ZWN0X180 LjhfMjcgPSAuTUFTS19MRU5fTE9BRCAodmVjdHBfYS42XzI5LCAzMkIsIHsgLTEsIC4uLiB9LCBf MzgsIDApO8KgwqDCoCAtPiB2bGUzMi52IHYyLDAoYTApCsKgIHZlY3RfXzYuMTFfMjAgPSAuTUFT S19MRU5fTE9BRCAodmVjdHBfYi45XzI1LCAzMkIsIHsgLTEsIC4uLiB9LCBfMzgsIDApO8KgwqAg LT4gdmxlMzIudiB2MSwwKGExKQrCoCB2ZWN0X183LjEyXzE5ID0gdmVjdF9fNi4xMV8yMCArIHZl Y3RfXzQuOF8yNzvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgIC0+IHZzZXR2bGkgYTYsemVybyxlMzIsbTEsdGEsbWEgKyB2YWRkLnZ2IHYx LHYxLHYyCsKgIC5NQVNLX0xFTl9TVE9SRSAodmVjdHBfYS4xM18xMSwgMzJCLCB7IC0xLCAuLi4g fSwgXzM4LCAwLCB2ZWN0X183LjEyXzE5KTvCoCAtPiB2c2V0dmxpIHplcm8sYTUsZTMyLG0xLHRh LG1hICsgdnNlMzIudiB2MSwwKGE0KQrCoApXZSBjYW4gc2VlIDIgcmVkdW5kYW50IHZzZXR2bHMg aW5zaWRlIHRoZSBsb29wIGJvZHkgZHVlIHRvIEFWTC9WTCB0b2dnbGluZy4KVGhlIEFWTC9WTCB0 b2dnbGluZyBpcyBiZWNhdXNlIHdlIGFyZSBtaXNzaW5nIExFTiBpbmZvcm1hdGlvbiBpbiBzaW1w bGUgUExVU19FWFBSIEdJTVBMRSBhc3NpZ25tZW50OgrCoAp2ZWN0X183LjEyXzE5ID0gdmVjdF9f Ni4xMV8yMCArIHZlY3RfXzQuOF8yNzsKwqAKR0NDIGFwcGx5IHBhcnRpYWwgcHJlZGljYXRlIGxv YWQvc3RvcmUgYW5kIHVuLXByZWRpY2F0ZWQgZnVsbCB2ZWN0b3Igb3BlcmF0aW9uIG9uIHBhcnRp YWwgdmVjdG9yaXphdGlvbi4KU3VjaCBmbG93IGFyZSB1c2VkIGJ5IGFsbCBvdGhlciB0YXJnZXRz IGxpa2UgQVJNIFNWRSAoUlZWIGFsc28gdXNlcyBzdWNoIGZsb3cpOgrCoApBUk0gU1ZFOgrCoMKg Ci5MMzoKwqDCoMKgwqDCoMKgwqAgbGQxd8KgwqDCoCB6MzAucywgcDcveiwgW3gwLCB4MywgbHNs IDJdwqDCoCAtPiBwcmVkaWNhdGVkIGxvYWQKwqDCoMKgwqDCoMKgwqAgbGQxd8KgwqDCoCB6MzEu cywgcDcveiwgW3gxLCB4MywgbHNsIDJdwqDCoCAtPiBwcmVkaWNhdGVkIGxvYWQKwqDCoMKgwqDC oMKgwqAgYWRkwqDCoMKgwqAgejMxLnMsIHozMS5zLCB6MzAuc8KgwqDCoMKgwqDCoMKgwqDCoMKg wqAgLT4gdW4tcHJlZGljYXRlZCBhZGQKwqDCoMKgwqDCoMKgwqAgc3Qxd8KgwqDCoCB6MzEucywg cDcsIFt4MCwgeDMsIGxzbCAyXcKgwqDCoMKgIC0+IHByZWRpY2F0ZWQgc3RvcmUKwqAKU3VjaCB2 ZWN0b3JpemF0aW9uIGZsb3cgY2F1c2VzIEFWTC9WTCB0b2dnbGluZyBvbiBSVlYgc28gd2UgbmVl ZCBBVkwgcHJvcGFnYXRpb24gUEFTUyBmb3IgaXQuCsKgCkFsc28sIEl0J3MgdmVyeSB1bmxpa2Vs eSB0aGF0IHdlIGNhbiBhcHBseSBwcmVkaWNhdGVkIG9wZXJhdGlvbnMgb24gYWxsIHZlY3Rvcml6 YXRpb24gZm9yIGZvbGxvd2luZyByZWFzb25zOgrCoAoxLiBJdCdzIHZlcnkgaGVhdnkgd29ya2xv YWQgdG8gc3VwcG9ydCB0aGVtIG9uIGFsbCB2ZWN0b3JpemF0aW9uIGFuZCB3ZSBkb24ndCBzZWUg YW55IGJlbmVmaXRzIGlmIHdlIGNhbiBoYW5kbGUgdGhhdCBvbiB0YXJnZXRzIGJhY2tlbmQuCjIu IENoYW5naW5nIExvb3AgdmVjdG9yaXplciBmb3IgaXQgd2lsbCBtYWtlIGNvZGUgYmFzZSB1Z2x5 IGFuZCBoYXJkIHRvIG1haW50YWluLgozLiBXZSB3aWxsIG5lZWQgc28gbWFueSBwYXR0ZXJucyBm b3IgYWxsIG9wZXJhdGlvbnMuIE5vdCBvbmx5IENPTkRfTEVOX0FERCwgQ09ORF9MRU5fU1VCLCAu Li4uCsKgwqAgV2UgYWxzbyBuZWVkIENPTkRfTEVOX0VYVEVORCwgLi4uLiwgQ09ORF9MRU5fQ0VJ TCwgLi4uIC4uIG92ZXIgMTAwKyBwYXR0ZXJucywgdW5yZWFzb25hYmxlIG51bWJlciBvZiBwYXR0 ZXJucy4KwqAKVG8gY29uY2x1ZGUsIHdlIHByZWZlciB1bi1wcmVkaWNhdGVkIG9wZXJhdGlvbnMg aGVyZSwgYW5kIGRlc2lnbiBhIG5pY2UgYW5kIGNsZWFuIEFWTCBwcm9wYWdhdGlvbiBQQVNTIGZv ciBpdCB0byBlbGlkZSB0aGUgcmVkdW5kYW50IHZzZXR2bHMKZHVlIHRvIEFWTC9WTCB0b2dnbGlu Zy4KwqAKVGhlIHNlY29uZCBxdWVzdGlvbiBpcyB0aGF0IHdoeSB3ZSBzZXBhcmF0ZSBhIFBBU1Mg Y2FsbGVkIEFWTCBwcm9wYWdhdGlvbi4gV2h5IG5vdCBvcHRpbWl6ZSBpdCBpbiBWU0VUVkwgUEFT UyAoV2UgZGVmaW5pdGV0bHkgY2FuIG9wdGltaXplIEFWTCBpbiBWU0VUVkwgUEFTUykKwqAKRnJh bmtseSwgSSB3YXMgcGxhbm5pbmcgdG8gYWRkcmVzcyBzdWNoIGlzc3VlIGluIFZTRVRWTCBQQVNT IHRoYXQncyB3aHkgd2UgcmVjZW50bHkgcmVmYWN0b3JlZCBWU0VUVkwgUEFTUy4gSG93ZXZlciwg SSBjaGFuZ2VkIG15IG1pbmQgcmVjZW50bHkgYWZ0ZXIgc2V2ZXJhbApleHBlcmltZW50cyBhbmQg dHJpZXMuCsKgClRoZSByZWFzb25zIGFzIGZvbGxvd3M6CsKgCjEuIEZvciBjb2RlIGJhc2UgbWFu YWdlbWVudCBhbmQgbWFpbnRhaW5pZW5jZS4gQ3VycmVudCBWU0VUVkwgUEFTUyBpcyBjb21wbGlj YXRlZCBlbm91Z2ggYW5kIGFsZWFkeSBoYXMgZW5vdWdoIGFnZ3Jlc3NpdmUgYW5kIGZhbmN5IG9w dGltaXphdGlvbnMgd2hpY2gKwqDCoCB0dXJucyBvdXQgaXQgY2FuIGFsd2F5cyBnZW5lcmF0ZSBv cHRpbWFsIGNvZGVnZW4gaW4gbW9zdCBvZiB0aGUgY2FzZXMuIEl0J3Mgbm90IGEgZ29vZCBpZGVh IGtlZXAgYWRkaW5nIG1vcmUgZmVhdHVyZXMgaW50byBWU0VUVkwgUEFTUyB0byBtYWtlIFZTRVRW TApQQVNTIGJlY29tZSBoZWF2eSBhbmQgaGVhdnkgYWdhaW4sIHRoZW4gd2Ugd2lsbCBuZWVkIHRv IHJlZmFjdG9yIGl0IGFnYWluIGluIHRoZSBmdXR1cmUuCkFjdHVhbGwsIHRoZSBWU0VUVkwgUEFT UyBpcyB2ZXJ5IHN0YWJsZSBhbmQgb3B0aW1hbCBhZnRlciB0aGUgcmVjZW50IHJlZmFjdG9yaW5n LiBIb3BlZnVsbHksIHdlIHNob3VsZCBub3QgY2hhbmdlIFZTRVRWTCBQQVNTIGFueSBtb3JlIGV4 Y2VwdCB0aGUgbWlub3IKZml4ZXMuCsKgCjIuIHZzZXR2bCBpbnNlcnRpb24gKFZTRVRWTCBQQVNT IGRvZXMgdGhpcyB0aGluZykgYW5kIEFWTCBwcm9wYWdhdGlvbiBhcmUgMiBkaWZmZXJlbnQgdGhp bmdzLMKgIEkgZG9uJ3QgdGhpbmsgd2Ugc2hvdWxkIGZ1c2UgdGhlbSBpbnRvIHNhbWUgUEFTUy4K wqAKMy4gVlNFVFZMIFBBU1MgaXMgYW4gcG9zdC1SQSBQQVNTLCB3aGVyYXMgQVZMIHByb3BhZ3Rp b24gc2hvdWxkIGJlIGRvbmUgYmVmb3JlIFJBIHdoaWNoIGNhbiByZWR1Y2UgcmVnaXN0ZXIgYWxs b2NhdGlvbi4KwqAKNC4gVGhpcyBwYXRjaCdzIEFWTCBwcm9wYWdhdGlvbiBQQVNTIG9ubHkgZG9l cyBBVkwgcHJvcGFnYXRpb24gZm9yIFJWViBwYXJ0aWFsIGF1dG8tdmVjdG9yaXphdGlvbiBzaXR1 YXRpb25zLgrCoMKgIFRoaXMgcGF0Y2gncyBjb2RlcyBhcmUgb25seSBodW5kcmVkcyBsaW5lcyB3 aGljaCBpcyB2ZXJ5IG1hbmFnYWJsZSBhbmQgY2FuIGJlIHZlcnkgZWFzaWx5IGV4dGVuZGVkIGZl YXR1cmVzIGFuZCBlbmhhbmNlbWVudHMuCldlIGNhbiBlYXNpbHkgZXh0ZW5kIGFuZCBlbmhhbmNl IG1vcmUgQVZMIHByb3BhZ2F0aW9uIGluIGEgY2xlYW4gYW5kIHNlcGFyYXRlIFBBU1MgaW4gdGhl IGZ1dHVyZS4gKElmIHdlIGRvIGl0IG9uIFZTRVRWTCBQQVNTLCB3ZSB3aWxsIGNvbXBsaWNhdGUK VlNFVFZMIFBBU1MgYWdhaW4gd2hpY2ggaXMgYWxyZWFkeSBzbyBjb21wbGljYXRlZC4pCsKgCkhl cmUgaXMgYW4gZXhhbXBsZSB0byBkZW1vbnN0cmF0ZSBtb3JlOgrCoApodHRwczovL2dvZGJvbHQu b3JnL3ovYkU4NnN2M3E1CsKgCnZvaWQgZm9vMiAoaW50ICpfX3Jlc3RyaWN0IGEsCsKgwqDCoMKg wqDCoMKgwqDCoCBpbnQgKl9fcmVzdHJpY3QgYiwKwqDCoMKgwqDCoMKgwqDCoMKgIGludCAqX19y ZXN0cmljdCBjLArCoMKgwqDCoMKgwqDCoMKgwqAgaW50ICpfX3Jlc3RyaWN0IGEyLArCoMKgwqDC oMKgwqDCoMKgwqAgaW50ICpfX3Jlc3RyaWN0IGIyLArCoMKgwqDCoMKgwqDCoMKgwqAgaW50ICpf X3Jlc3RyaWN0IGMyLArCoMKgwqDCoMKgwqDCoMKgwqAgaW50ICpfX3Jlc3RyaWN0IGEzLArCoMKg wqDCoMKgwqDCoMKgwqAgaW50ICpfX3Jlc3RyaWN0IGIzLArCoMKgwqDCoMKgwqDCoMKgwqAgaW50 ICpfX3Jlc3RyaWN0IGMzLArCoMKgwqDCoMKgwqDCoMKgwqAgaW50ICpfX3Jlc3RyaWN0IGE0LArC oMKgwqDCoMKgwqDCoMKgwqAgaW50ICpfX3Jlc3RyaWN0IGI0LArCoMKgwqDCoMKgwqDCoMKgwqAg aW50ICpfX3Jlc3RyaWN0IGM0LArCoMKgwqDCoMKgwqDCoMKgwqAgaW50ICpfX3Jlc3RyaWN0IGE1 LArCoMKgwqDCoMKgwqDCoMKgwqAgaW50ICpfX3Jlc3RyaWN0IGI1LArCoMKgwqDCoMKgwqDCoMKg wqAgaW50ICpfX3Jlc3RyaWN0IGM1LArCoMKgwqDCoMKgwqDCoMKgwqAgaW50IG4pCnsKwqDCoMKg IGZvciAoaW50IGkgPSAwOyBpIDwgbjsgaSsrKXsKwqDCoMKgwqDCoCBhW2ldID0gYltpXSArIGNb aV07CsKgwqDCoMKgwqAgYjVbaV0gPSBiW2ldICsgY1tpXTsKwqDCoMKgwqDCoCBhMltpXSA9IGIy W2ldICsgYzJbaV07CsKgwqDCoMKgwqAgYTNbaV0gPSBiM1tpXSArIGMzW2ldOwrCoMKgwqDCoMKg IGE0W2ldID0gYjRbaV0gKyBjNFtpXTsKwqDCoMKgwqDCoCBhNVtpXSA9IGFbaV0gKyBhNFtpXTsK wqDCoMKgwqDCoCBhW2ldID0gYTVbaV0gKyBiNVtpXSsgYVtpXTsKwqAKwqDCoMKgwqDCoCBhW2ld ID0gYVtpXSArIGNbaV07CsKgwqDCoMKgwqAgYjVbaV0gPSBhW2ldICsgY1tpXTsKwqDCoMKgwqDC oCBhMltpXSA9IGFbaV0gKyBjMltpXTsKwqDCoMKgwqDCoCBhM1tpXSA9IGFbaV0gKyBjM1tpXTsK wqDCoMKgwqDCoCBhNFtpXSA9IGFbaV0gKyBjNFtpXTsKwqDCoMKgwqDCoCBhNVtpXSA9IGFbaV0g KyBhNFtpXTsKwqDCoMKgwqDCoCBhW2ldID0gYVtpXSArIGI1W2ldKyBhW2ldOwrCoMKgwqAgfQp9 CsKgCjEuIExvb3AgQm9keToKwqAKQmVmb3JlIHRoaXMgcGF0Y2g6wqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCBBZnRlciB0aGlzIHBhdGNoOgrCoArCoMKgwqDCoMKgIHZzZXR2bGkgYTQsdDEsZTgs bWY0LHRhLG1hwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCB2c2V0dmxpIGE0LHQxLGUzMixtMSx0YSxtYcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoArCoMKgwqDCoMKg wqDCoCB2bGUzMi52IHYyLDAoYTIpwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHZsZTMyLnYgdjIsMChhMikKwqDC oMKgwqDCoMKgwqAgdmxlMzIudiB2NCwwKGExKcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB2bGUzMi52IHYzLDAo dDIpCsKgwqDCoMKgwqDCoMKgIHZsZTMyLnYgdjEsMCh0MinCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgdmxlMzIu diB2NCwwKGExKQrCoMKgwqDCoMKgwqDCoCB2c2V0dmxpIGE3LHplcm8sZTMyLG0xLHRhLG1hwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHZsZTMyLnYgdjEs MCh0MCkKwqDCoMKgwqDCoMKgwqAgdmFkZC52diB2NCx2Mix2NMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB2YWRk LnZ2IHY0LHYyLHY0CsKgwqDCoMKgwqDCoMKgIHZzZXR2bGkgemVybyxhNCxlMzIsbTEsdGEsbWHC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgdmFkZC52diB2 MSx2Myx2MQrCoMKgwqDCoMKgwqDCoCB2bGUzMi52IHYzLDAoczApwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHZh ZGQudnYgdjEsdjEsdjQKwqDCoMKgwqDCoMKgwqAgdnNldHZsaSBhNyx6ZXJvLGUzMixtMSx0YSxt YcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB2YWRkLnZ2 IHYxLHYxLHY0CsKgwqDCoMKgwqDCoMKgIHZhZGQudnYgdjEsdjMsdjHCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg dmFkZC52diB2MSx2MSx2NArCoMKgwqDCoMKgwqDCoCB2YWRkLnZ2IHYxLHYxLHY0wqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgIHZhZGQudnYgdjEsdjEsdjIKwqDCoMKgwqDCoMKgwqAgdmFkZC52diB2MSx2MSx2NMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCB2YWRkLnZ2IHYyLHYxLHYyCsKgwqDCoMKgwqDCoMKgIHZhZGQudnYgdjEs djEsdjTCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqAgdnNlMzIudiB2MiwwKHQ1KQrCoMKgwqDCoMKgwqDCoCB2c2V0 dmxpIHplcm8sYTQsZTMyLG0xLHRhLG1hwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgIHZhZGQudnYgdjIsdjIsdjEKwqDCoMKgwqDCoMKgwqAgdmxlMzIudiB2 NCwwKGE1KcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB2YWRkLnZ2IHYyLHYyLHYxCsKgwqDCoMKgwqDCoMKgIHZz ZXR2bGkgYTcsemVybyxlMzIsbTEsdGEsbWHCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgc2xsaSBhNyxhNCwyCsKgwqDCoMKgwqDCoMKgIHZhZGQudnYgdjEs djEsdjLCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqAgdmFkZC52diB2Myx2MSx2MwrCoMKgwqDCoMKgwqDCoCB2YWRk LnZ2IHYyLHYxLHYywqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHZsZTMyLnYgdjUsMChhNSkKwqDCoMKgwqDCoMKg wqAgdmFkZC52diB2NCx2MSx2NMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB2bGUzMi52IHY2LDAodDYpCsKgwqDC oMKgwqDCoMKgIHZzZXR2bGkgemVybyxhNCxlMzIsbTEsdGEsbWHCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgdnNlMzIudiB2MywwKHQzKQrCoMKgwqDCoMKg wqDCoCB2c2UzMi52IHYyLDAodDUpwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHZzZTMyLnYgdjIsMChhMCkKwqDC oMKgwqDCoMKgwqAgdnNlMzIudiB2NCwwKGEzKcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB2YWRkLnZ2IHYzLHYz LHYxCsKgwqDCoMKgwqDCoMKgIHZzZXR2bGkgYTcsemVybyxlMzIsbTEsdGEsbWHCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgdmFkZC52diB2Mix2MSx2NQrC oMKgwqDCoMKgwqDCoCB2YWRkLnZ2IHYzLHYxLHYzwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHZzZTMyLnYgdjMs MCh0NCkKwqDCoMKgwqDCoMKgwqAgdmFkZC52diB2Mix2Mix2McKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB2YWRk LnZ2IHYxLHYxLHY2CsKgwqDCoMKgwqDCoMKgIHZhZGQudnYgdjIsdjIsdjHCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqAgdnNlMzIudiB2MiwwKGEzKQrCoMKgwqDCoMKgwqDCoCB2c2V0dmxpIHplcm8sYTQsZTMyLG0x LHRhLG1hwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHZz ZTMyLnYgdjEsMChhNikKwqDCoMKgwqDCoMKgwqAgdnNlMzIudiB2MiwwKGEwKcKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgCsKgwqDCoMKgwqDCoMKgIHZzZTMyLnYgdjMsMCh0MynCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoArC oMKgwqDCoMKgwqDCoCB2bGUzMi52IHYyLDAodDApwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAKwqDCoMKgwqDC oMKgwqAgdnNldHZsaSBhNyx6ZXJvLGUzMixtMSx0YSxtYcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgCsKgwqDC oMKgwqDCoMKgIHZhZGQudnYgdjMsdjMsdjHCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoArCoMKgwqDCoMKgwqDC oCB2c2V0dmxpIHplcm8sYTQsZTMyLG0xLHRhLG1hwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAKwqDCoMKgwqDC oMKgwqAgdnNlMzIudiB2MywwKHQ0KcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgCsKgwqDCoMKgwqDCoMKgIHZz ZXR2bGkgYTcsemVybyxlMzIsbTEsdGEsbWHCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoArCoMKgwqDCoMKgwqDC oCBzbGxpwqDCoMKgIGE3LGE0LDLCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoArCoMKgwqDCoMKgwqDCoCB2YWRk LnZ2IHYxLHYxLHYywqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAKwqDCoMKgwqDCoMKgwqAgc3ViwqDCoMKgwqAg dDEsdDEsYTTCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoArCoMKgwqDCoMKgwqDCoCB2c2V0dmxpIHplcm8sYTQs ZTMyLG0xLHRhLG1hwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAKwqDCoMKgwqDCoMKgwqAgdnNlMzIudiB2MSww KGE2KcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgCsKgCkl0J3MgcXVpdGUgb2J2aW91cywgYWxsIGhlYXZ5ICYm IHJlZHVuZGFudCB2c2V0dmxzIGluc2lkZSBsb29wIGJvZHkgYXJlIGVsaW1pbmF0ZWQuCsKgCjIu IEVwaWxvZ3VlOgrCoMKgwqAgQmVmb3JlIHRoaXMgcGF0Y2g6wqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCBBZnRlciB0aGlzIHBhdGNoOgrCoArCoMKgwqDCoCAuTDU6wqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAuTDU6wqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgCsKgwqDCoMKgwqDCoMKgIGxkwqDCoMKgwqDCoCBzMCw4KHNwKcKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgIHJldArCoMKgwqDCoMKgwqDCoCBhZGRpwqDCoMKgIHNwLHNwLDE2wqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAKwqDCoMKgwqDCoMKgwqAganLCoMKgwqDCoMKgIHJhwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqAKwqAKVGhpcyBpcyB0aGUgYmVuZWZpdCB3ZSBkbyB0aGUgQVZMIHByb3BhdGlv biBiZWZvcmUgUkEgc2luY2Ugd2UgZWxpbWluYXRlIHRoZSB1c2Ugb2YgJ2E3JyByZWdpc3Rlcgp3 aGljaCBpcyB1c2VkIGJ5IHRoZSByZWR1ZGFudCBBVkwvVkwgdG9nZ2xpbmcgaW5zdHJ1Y3Rpb246 ICd2c2V0dmxpIGE3LHplcm8sZTMyLG0xLHRhLG1hJwrCoApUaGUgZmluYWwgY29kZWdlbiBhZnRl ciB0aGlzIHBhdGNoOgrCoApmb28yOgpsdyB0MSw1NihzcCkKbGQgdDYsMChzcCkKbGQgdDMsOChz cCkKbGQgdDAsMTYoc3ApCmxkIHQyLDI0KHNwKQpsZCB0NCwzMihzcCkKbGQgdDUsNDAoc3ApCmJs ZSB0MSx6ZXJvLC5MNQouTDM6CnZzZXR2bGkgYTQsdDEsZTMyLG0xLHRhLG1hCnZsZTMyLnYgdjIs MChhMikKdmxlMzIudiB2MywwKHQyKQp2bGUzMi52IHY0LDAoYTEpCnZsZTMyLnYgdjEsMCh0MCkK dmFkZC52diB2NCx2Mix2NAp2YWRkLnZ2IHYxLHYzLHYxCnZhZGQudnYgdjEsdjEsdjQKdmFkZC52 diB2MSx2MSx2NAp2YWRkLnZ2IHYxLHYxLHY0CnZhZGQudnYgdjEsdjEsdjIKdmFkZC52diB2Mix2 MSx2Mgp2c2UzMi52IHYyLDAodDUpCnZhZGQudnYgdjIsdjIsdjEKdmFkZC52diB2Mix2Mix2MQpz bGxpIGE3LGE0LDIKdmFkZC52diB2Myx2MSx2Mwp2bGUzMi52IHY1LDAoYTUpCnZsZTMyLnYgdjYs MCh0NikKdnNlMzIudiB2MywwKHQzKQp2c2UzMi52IHYyLDAoYTApCnZhZGQudnYgdjMsdjMsdjEK dmFkZC52diB2Mix2MSx2NQp2c2UzMi52IHYzLDAodDQpCnZhZGQudnYgdjEsdjEsdjYKdnNlMzIu diB2MiwwKGEzKQp2c2UzMi52IHYxLDAoYTYpCnN1YiB0MSx0MSxhNAphZGQgYTEsYTEsYTcKYWRk IGEyLGEyLGE3CmFkZCBhNSxhNSxhNwphZGQgdDYsdDYsYTcKYWRkIHQwLHQwLGE3CmFkZCB0Mix0 MixhNwphZGQgdDUsdDUsYTcKYWRkIGEzLGEzLGE3CmFkZCBhNixhNixhNwphZGQgdDMsdDMsYTcK YWRkIHQ0LHQ0LGE3CmFkZCBhMCxhMCxhNwpibmUgdDEsemVybywuTDMKLkw1OgpyZXQKwqAKUFIg dGFyZ2V0LzExMTg4OArCoApnY2MvQ2hhbmdlTG9nOgrCoAoqIGNvbmZpZy5nY2M6IEFkZCBBVkwg cHJvcGdhdGF0aW9uIFBBU1MuCiogY29uZmlnL3Jpc2N2L3Jpc2N2LXBhc3Nlcy5kZWYgKElOU0VS VF9QQVNTX0FGVEVSKTogRGl0dG8uCiogY29uZmlnL3Jpc2N2L3Jpc2N2LXByb3Rvcy5oIChtYWtl X3Bhc3NfYXZscHJvcCk6IERpdHRvLgooaGFzX3Z0eXBlX29wKTogRXhwb3J0IGFzIGdsb2JhbC4K KGhhc192bF9vcCk6IERpdHRvLgoodGFpbF9hZ25vc3RpY19wKTogRGl0dG8uCih2YWxpZGF0ZV9j aGFuZ2Vfb3JfZmFpbCk6IERpdHRvLgoodmxtYXhfYXZsX3R5cGVfcCk6IERpdHRvLgoodmxtYXhf YXZsX3ApOiBEaXR0by4KKGdldF9zZXcpOiBEaXR0by4KKGVudW0gdmxtdWxfdHlwZSk6IERpdHRv LgooY29uc3RfdmxtYXhfcCk6IERpdHRvLgoqIGNvbmZpZy9yaXNjdi9yaXNjdi12LmNjIChoYXNf dnR5cGVfb3ApOiBEaXR0by4KKGhhc192bF9vcCk6IERpdHRvLgooZ2V0X2RlZmF1bHRfdGEpOiBE aXR0by4KKHRhaWxfYWdub3N0aWNfcCk6IERpdHRvLgoodmFsaWRhdGVfY2hhbmdlX29yX2ZhaWwp OiBEaXR0by4KKHZsbWF4X2F2bF90eXBlX3ApOiBEaXR0by4KKHZsbWF4X2F2bF9wKTogRGl0dG8u CihnZXRfc2V3KTogRGl0dG8uCihlbnVtIHZsbXVsX3R5cGUpOiBEaXR0by4KKGdldF92bG11bCk6 IERpdHRvLgoqIGNvbmZpZy9yaXNjdi9yaXNjdi12c2V0dmwuY2MgKHZsbWF4X2F2bF9wKTogRGl0 dG8uCihoYXNfdnR5cGVfb3ApOiBEaXR0by4KKGhhc192bF9vcCk6IERpdHRvLgooZ2V0X3Nldyk6 IERpdHRvLgooZ2V0X3ZsbXVsKTogRGl0dG8uCihnZXRfZGVmYXVsdF90YSk6IERpdHRvLgoodGFp bF9hZ25vc3RpY19wKTogRGl0dG8uCih2YWxpZGF0ZV9jaGFuZ2Vfb3JfZmFpbCk6IERpdHRvLgoq IGNvbmZpZy9yaXNjdi90LXJpc2N2OiBBZGQgQVZMIHByb3BhZ2F0aW9uIFBBU1MuCiogY29uZmln L3Jpc2N2L3ZlY3Rvci5tZDogRml4IFZMUyBtb2RlcyBhdHRyaWJ1dGUuCiogY29uZmlnL3Jpc2N2 L3Jpc2N2LWF2bHByb3AuY2M6IE5ldyBmaWxlLgrCoApnY2MvdGVzdHN1aXRlL0NoYW5nZUxvZzoK wqAKKiBnY2MuZGcvdmVjdC9jb3N0bW9kZWwvcmlzY3YvcnZ2L2R5bmFtaWMtbG11bDQtNS5jOiBB ZGFwdCB0ZXN0LgoqIGdjYy5kZy92ZWN0L2Nvc3Rtb2RlbC9yaXNjdi9ydnYvZHluYW1pYy1sbXVs OC0yLmM6IERpdHRvLgoqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2F1dG92ZWMvcGFydGlhbC9zZWxl Y3RfdmwtMi5jOiBEaXR0by4KKiBnY2MudGFyZ2V0L3Jpc2N2L3J2di9hdXRvdmVjL3Rlcm5vcC90 ZXJub3Bfbm9mbS0yLmM6IERpdHRvLgoqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L3J2di5leHA6IEFk ZCBBVkwgcHJvcGFnYXRpb24uCiogZ2NjLnRhcmdldC9yaXNjdi9ydnYvYXZscHJvcC9wcjExMTg4 OC0xLmM6IE5ldyB0ZXN0LgoqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2F2bHByb3AvcHIxMTE4ODgt Mi5jOiBOZXcgdGVzdC4KwqAKLS0tCmdjYy9jb25maWcuZ2NjwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgfMKgwqAgMiArLQpnY2Mv Y29uZmlnL3Jpc2N2L3Jpc2N2LWF2bHByb3AuY2PCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgfCAz NTAgKysrKysrKysrKysrKysrKysrCmdjYy9jb25maWcvcmlzY3YvcmlzY3YtcGFzc2VzLmRlZsKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB8wqDCoCAxICsKZ2NjL2NvbmZpZy9yaXNjdi9yaXNjdi1w cm90b3MuaMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgfMKgIDEwICsKZ2NjL2NvbmZpZy9y aXNjdi9yaXNjdi12LmNjwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHzCoCA4 NCArKysrLQpnY2MvY29uZmlnL3Jpc2N2L3Jpc2N2LXZzZXR2bC5jY8KgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgIHzCoCA4MiArLS0tCmdjYy9jb25maWcvcmlzY3YvdC1yaXNjdsKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB8wqDCoCA2ICsKZ2NjL2NvbmZpZy9yaXNj di92ZWN0b3IubWTCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB8wqDCoCAy ICstCi4uLi9jb3N0bW9kZWwvcmlzY3YvcnZ2L2R5bmFtaWMtbG11bDQtNS5jwqDCoMKgwqAgfMKg wqAgMiArLQouLi4vY29zdG1vZGVsL3Jpc2N2L3J2di9keW5hbWljLWxtdWw4LTIuY8KgwqDCoMKg IHzCoMKgIDIgKy0KLi4uL3Jpc2N2L3J2di9hdXRvdmVjL3BhcnRpYWwvc2VsZWN0X3ZsLTIuY8Kg wqAgfMKgwqAgNSArLQouLi4vcmlzY3YvcnZ2L2F1dG92ZWMvdGVybm9wL3Rlcm5vcF9ub2ZtLTIu Y8KgIHzCoMKgIDEgLQouLi4vZ2NjLnRhcmdldC9yaXNjdi9ydnYvYXZscHJvcC9wcjExMTg4OC0x LmMgfMKgIDE2ICsKLi4uL2djYy50YXJnZXQvcmlzY3YvcnZ2L2F2bHByb3AvcHIxMTE4ODgtMi5j IHzCoCAzMyArKwpnY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L3J2di5leHDCoMKg wqAgfMKgwqAgMiArCjE1IGZpbGVzIGNoYW5nZWQsIDUxNCBpbnNlcnRpb25zKCspLCA4NCBkZWxl dGlvbnMoLSkKY3JlYXRlIG1vZGUgMTAwNjQ0IGdjYy9jb25maWcvcmlzY3YvcmlzY3YtYXZscHJv cC5jYwpjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2 di9hdmxwcm9wL3ByMTExODg4LTEuYwpjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9n Y2MudGFyZ2V0L3Jpc2N2L3J2di9hdmxwcm9wL3ByMTExODg4LTIuYwrCoApkaWZmIC0tZ2l0IGEv Z2NjL2NvbmZpZy5nY2MgYi9nY2MvY29uZmlnLmdjYwppbmRleCA2MDZkM2E4NTEzZS4uZWZkNTM5 NjVjOWEgMTAwNjQ0Ci0tLSBhL2djYy9jb25maWcuZ2NjCisrKyBiL2djYy9jb25maWcuZ2NjCkBA IC01NDQsNyArNTQ0LDcgQEAgcHJ1LSotKikKcmlzY3YqKQpjcHVfdHlwZT1yaXNjdgpleHRyYV9v YmpzPSJyaXNjdi1idWlsdGlucy5vIHJpc2N2LWMubyByaXNjdi1zci5vIHJpc2N2LXNob3J0ZW4t bWVtcmVmcy5vIHJpc2N2LXNlbGZ0ZXN0cy5vIHJpc2N2LXN0cmluZy5vIgotIGV4dHJhX29ianM9 IiR7ZXh0cmFfb2Jqc30gcmlzY3Ytdi5vIHJpc2N2LXZzZXR2bC5vIHJpc2N2LXZlY3Rvci1jb3N0 cy5vIgorIGV4dHJhX29ianM9IiR7ZXh0cmFfb2Jqc30gcmlzY3Ytdi5vIHJpc2N2LXZzZXR2bC5v IHJpc2N2LXZlY3Rvci1jb3N0cy5vIHJpc2N2LWF2bHByb3AubyIKZXh0cmFfb2Jqcz0iJHtleHRy YV9vYmpzfSByaXNjdi12ZWN0b3ItYnVpbHRpbnMubyByaXNjdi12ZWN0b3ItYnVpbHRpbnMtc2hh cGVzLm8gcmlzY3YtdmVjdG9yLWJ1aWx0aW5zLWJhc2VzLm8iCmV4dHJhX29ianM9IiR7ZXh0cmFf b2Jqc30gdGhlYWQubyIKZF90YXJnZXRfb2Jqcz0icmlzY3YtZC5vIgpkaWZmIC0tZ2l0IGEvZ2Nj L2NvbmZpZy9yaXNjdi9yaXNjdi1hdmxwcm9wLmNjIGIvZ2NjL2NvbmZpZy9yaXNjdi9yaXNjdi1h dmxwcm9wLmNjCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi5iZjNiZWNk ODM3MQotLS0gL2Rldi9udWxsCisrKyBiL2djYy9jb25maWcvcmlzY3YvcmlzY3YtYXZscHJvcC5j YwpAQCAtMCwwICsxLDM1MCBAQAorLyogQVZMIHByb3BhZ2F0aW9uIHBhc3MgZm9yIFJJU0MtViAn VicgRXh0ZW5zaW9uIGZvciBHTlUgY29tcGlsZXIuCivCoMKgIENvcHlyaWdodCAoQykgMjAyMy0y MDIzIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgorwqDCoCBDb250cmlidXRlZCBieSBK dXpoZSBaaG9uZyAoanV6aGUuemhvbmdAcml2YWkuYWkpLCBSaVZBSSBUZWNobm9sb2dpZXMgTHRk LgorCitUaGlzIGZpbGUgaXMgcGFydCBvZiBHQ0MuCisKK0dDQyBpcyBmcmVlIHNvZnR3YXJlOyB5 b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CitpdCB1bmRlciB0aGUgdGVybXMg b2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQordGhlIEZy ZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMywgb3IoYXQgeW91ciBvcHRp b24pCithbnkgbGF0ZXIgdmVyc2lvbi4KKworR0NDIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3Bl IHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCitidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhv dXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5F U1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLsKgIFNlZSB0aGUKK0dOVSBHZW5lcmFsIFB1Ymxp YyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisKK1lvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBh IGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCithbG9uZyB3aXRoIEdDQzsg c2VlIHRoZSBmaWxlIENPUFlJTkczLsKgIElmIG5vdCBzZWUKKzxodHRwOi8vd3d3LmdudS5vcmcv bGljZW5zZXMvPi7CoCAqLworCisvKiBQcmUtUkEgUlRMX1NTQS1iYXNlZCBwYXNzIHByb3BhZ2F0 ZXMgQVZMIGZvciBSVlYgaW5zdHJ1Y3Rpb25zLgorwqDCoCBBIHN0YW5kYWxvbmUgQVZMIHByb3Bh Z2F0aW9uIHBhc3MgaXMgZGVzaWduZWQgYmVjYXVzZToKKworwqDCoMKgwqAgLSBCZXR0ZXIgY29k ZSBtYWludGFpbjoKK8KgwqDCoMKgwqDCoCBDdXJyZW50IExDTS1iYXNlZCBWU0VUVkwgcGFzcyBp cyBzbyBjb21wbGljYXRlZCB0aGF0IGNvZGVzCivCoMKgwqDCoMKgwqAgdGhlcmUgd2lsbCBiZWNv bWUgZXZlbiBoYXJkZXIgdG8gbWFpbnRhaW4uIEEgc3RyYWlnaHQgZm9yd2FyZAorwqDCoMKgwqDC oMKgIEFWTCBwcm9wYWdhdGlvbiBQQVNTIGlzIG11Y2ggZWFzaWVyIHRvIG1haW50YWluLgorCivC oMKgwqDCoCAtIFJlZHVjZSBzY2FsYXIgcmVnaXN0ZXIgcHJlc3N1cmU6CivCoMKgwqDCoMKgwqAg QSB0eXBlIG9mIEFWTCBwcm9wYWdhdGlvbiBpcyB3ZSBwcm9wYWdhdGUgQVZMIGZyb20gTk9OLVZM TUFYCivCoMKgwqDCoMKgwqAgaW5zdHJ1Y3Rpb24gdG8gVkxNQVggaW5zdHJ1Y3Rpb24uCivCoMKg wqDCoMKgwqAgTm90ZTogVkxNQVggaW5zdHJ1Y3Rpb24gc2hvdWxkIGJlIGlnbm9yZSB0YWlsIGVs ZW1lbnRzIChUQSkKK8KgwqDCoMKgwqDCoCBhbmQgdGhlIHJlc3VsdCBzaG91bGQgYmUgdXNlZCBi eSB0aGUgTk9OLVZMTUFYIGluc3RydWN0aW9uLgorwqDCoMKgwqDCoMKgIFRoaXMgb3B0aW1pemF0 aW9uIGlzIG1vc3RseSBmb3IgYXV0by12ZWN0b3JpemF0aW9uIGNvZGVzOgorCisgwqAgdnNldHZs aSByMTM2LCByMTM3wqDCoMKgwqDCoCAtLS0gU0VMRUNUX1ZMCisgwqAgdmxlOC52ICh1c2UgYXZs ID0gcjEzNikgLS0tIElGTl9NQVNLX0xFTl9MT0FECisgwqAgdmFkZC52diAodXNlIFZMTUFYKcKg wqDCoMKgIC0tLSBQTFVTX0VYUFIKKyDCoCB2c2U4LnYgKHVzZSBhdmwgPSByMTM2KSAtLS0gSUZO X01BU0tfTEVOX1NUT1JFCisKKyBOTyBBVkwgcHJvcGF0aW9uOgorCisgwqAgdnNldHZsaSBhNSwg YTQsIHRhCisgwqAgdmxlOC52IHYxCisgwqAgdnNldHZsaSB0MCwgemVybywgdGEKKyDCoCB2YWRk LnZ2IHYyLCB2MSwgdjEKKyDCoCB2c2U4LnYgdjIKKworIFdlIGNhbiBwcm9wYWdhdGUgdGhlIEFW TCB0byAndmFkZC52dicgc2luY2UgaXRzIHJlc3VsdAorIGlzIGNvbnN1bWVkIGJ5IGEgJ3ZzZTgu dicgd2hpY2ggaGFzIEFWTCA9IGE1IGFuZCBpdHMKKyB0YWlsIGVsZW1lbnRzIGFyZSBhZ25vc3Rp Yy4KKworwqDCoMKgwqDCoMKgIFdlIERPTidUIGRvIHRoaXMgb3B0aW1pemF0aW9uIG9uIFZTRVRW TCBwYXNzIHNpbmNlIGl0IGlzIGEKK8KgwqDCoMKgwqDCoCBwb3N0LVJBIHBhc3MgdGhhdCBjb25z dW1lZCAndDAnIGFscmVhZHkgd2hlcmFzIGEgc3RhbmRhbG9uZQorwqDCoMKgwqDCoMKgIHByZS1S QSBBVkwgcHJvcGFnYXRpb24gcGFzcyBhbGxvd3MgdXMgZWxpZGUgdGhlIGNvbnN1bXB0aW9uCivC oMKgwqDCoMKgwqAgb2YgdGhlIHBzZXVkbyByZWdpc3RlciBvZiAndDAnIHRoZW4gd2UgY2FuIHJl ZHVjZSBzY2FsYXIKK8KgwqDCoMKgwqDCoCByZWdpc3RlciBwcmVzc3VyZS4KKworwqDCoMKgwqAg LSBNb3JlIEFWTCBwcm9wYWdhdGlvbiBvcHBvcnR1bml0aWVzOgorwqDCoMKgwqDCoMKgIEEgcHJl LVJBIHBhc3MgaXMgbW9yZSBmbGV4aWJsZSBmb3IgQVZMIFJFRyBkZWYtdXNlIGNoYWluLAorwqDC oMKgwqDCoMKgIHRodXMgd2Ugd2lsbCBnZXQgbW9yZSBwb3RlbnRpYWwgQVZMIHByb3BhZ2F0aW9u IGFzIGxvbmcgYXMKK8KgwqDCoMKgwqDCoCBpdCBkb2Vzbid0IGluY3JlYXNlIHRoZSBzY2FsYXIg cmVnaXN0ZXIgcHJlc3N1cmUuCisqLworCisjZGVmaW5lIElOX1RBUkdFVF9DT0RFIDEKKyNkZWZp bmUgSU5DTFVERV9BTEdPUklUSE0KKyNkZWZpbmUgSU5DTFVERV9GVU5DVElPTkFMCisKKyNpbmNs dWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJzeXN0ZW0uaCIKKyNpbmNsdWRlICJjb3JldHlwZXMu aCIKKyNpbmNsdWRlICJ0bS5oIgorI2luY2x1ZGUgImJhY2tlbmQuaCIKKyNpbmNsdWRlICJydGwu aCIKKyNpbmNsdWRlICJ0YXJnZXQuaCIKKyNpbmNsdWRlICJ0cmVlLXBhc3MuaCIKKyNpbmNsdWRl ICJkZi5oIgorI2luY2x1ZGUgInJ0bC1zc2EuaCIKKyNpbmNsdWRlICJjZmdjbGVhbnVwLmgiCisj aW5jbHVkZSAiaW5zbi1hdHRyLmgiCisKK3VzaW5nIG5hbWVzcGFjZSBydGxfc3NhOwordXNpbmcg bmFtZXNwYWNlIHJpc2N2X3ZlY3RvcjsKKworLyogVGhlIEFWTCBwcm9wYWdhdGlvbiBpbnN0cnVj dGlvbnMgYW5kIGNvcnJlc3BvbmRpbmcgcHJlZmVycmVkIEFWTC4KK8KgwqAgSXQgd2lsbCBiZSB1 cGRhdGVkIGR1cmluZyB0aGUgYW5hbHlzaXMuwqAgKi8KK3N0YXRpYyBoYXNoX21hcDxpbnNuX2lu Zm8gKiwgcnR4PiAqYXZscHJvcHM7CisKK2NvbnN0IHBhc3NfZGF0YSBwYXNzX2RhdGFfYXZscHJv cCA9IHsKK8KgIFJUTF9QQVNTLCAvKiB0eXBlICovCivCoCAiYXZscHJvcCIsIC8qIG5hbWUgKi8K K8KgIE9QVEdST1VQX05PTkUsIC8qIG9wdGluZm9fZmxhZ3MgKi8KK8KgIFRWX05PTkUsIC8qIHR2 X2lkICovCivCoCAwLCAvKiBwcm9wZXJ0aWVzX3JlcXVpcmVkICovCivCoCAwLCAvKiBwcm9wZXJ0 aWVzX3Byb3ZpZGVkICovCivCoCAwLCAvKiBwcm9wZXJ0aWVzX2Rlc3Ryb3llZCAqLworwqAgMCwg LyogdG9kb19mbGFnc19zdGFydCAqLworwqAgMCwgLyogdG9kb19mbGFnc19maW5pc2ggKi8KK307 CisKK2NsYXNzIHBhc3NfYXZscHJvcCA6IHB1YmxpYyBydGxfb3B0X3Bhc3MKK3sKK3B1YmxpYzoK K8KgIHBhc3NfYXZscHJvcCAoZ2NjOjpjb250ZXh0ICpjdHh0KSA6IHJ0bF9vcHRfcGFzcyAocGFz c19kYXRhX2F2bHByb3AsIGN0eHQpIHt9CisKK8KgIC8qIG9wdF9wYXNzIG1ldGhvZHM6ICovCivC oCB2aXJ0dWFsIGJvb2wgZ2F0ZSAoZnVuY3Rpb24gKikgZmluYWwgb3ZlcnJpZGUKK8KgIHsKK8Kg wqDCoCByZXR1cm4gVEFSR0VUX1ZFQ1RPUiAmJiBvcHRpbWl6ZSA+IDA7CivCoCB9CivCoCB2aXJ0 dWFsIHVuc2lnbmVkIGludCBleGVjdXRlIChmdW5jdGlvbiAqKSBmaW5hbCBvdmVycmlkZTsKK307 IC8vIGNsYXNzIHBhc3NfYXZscHJvcAorCitzdGF0aWMgdm9pZAorYXZscHJvcF9pbml0ICh2b2lk KQoreworwqAgY2FsY3VsYXRlX2RvbWluYW5jZV9pbmZvIChDRElfRE9NSU5BVE9SUyk7CivCoCBk Zl9hbmFseXplICgpOworwqAgY3J0bC0+c3NhID0gbmV3IGZ1bmN0aW9uX2luZm8gKGNmdW4pOwor wqAgYXZscHJvcHMgPSBuZXcgaGFzaF9tYXA8aW5zbl9pbmZvICosIHJ0eD47Cit9CisKK3N0YXRp YyB2b2lkCithdmxwcm9wX2RvbmUgKHZvaWQpCit7CivCoCBmcmVlX2RvbWluYW5jZV9pbmZvIChD RElfRE9NSU5BVE9SUyk7CivCoCBpZiAoY3J0bC0+c3NhLT5wZXJmb3JtX3BlbmRpbmdfdXBkYXRl cyAoKSkKK8KgwqDCoCBjbGVhbnVwX2NmZyAoMCk7CivCoCBkZWxldGUgY3J0bC0+c3NhOworwqAg Y3J0bC0+c3NhID0gbnVsbHB0cjsKK8KgIGRlbGV0ZSBhdmxwcm9wczsKK8KgIGF2bHByb3BzID0g TlVMTDsKK30KKworLyogSGVscGVyIGZ1bmN0aW9uIHRvIGdldCBBVkwgb3BlcmFuZC7CoCAqLwor c3RhdGljIHJ0eAorZ2V0X2F2bCAoaW5zbl9pbmZvICppbnNuLCBib29sIGF2bHByb3BfcCkKK3sK K8KgIGlmIChnZXRfYXR0cl9hdmxfdHlwZSAoaW5zbi0+cnRsICgpKSA9PSBJTlZBTElEX0FUVFJJ QlVURQorwqDCoMKgwqDCoCB8fCBnZXRfYXR0cl9hdmxfdHlwZSAoaW5zbi0+cnRsICgpKSA9PSBW TFMpCivCoMKgwqAgcmV0dXJuIE5VTExfUlRYOworwqAgaWYgKGF2bHByb3BfcCkKK8KgwqDCoCB7 CivCoMKgwqDCoMKgIGlmIChhdmxwcm9wcy0+Z2V0IChpbnNuKSkKKyByZXR1cm4gKCphdmxwcm9w cy0+Z2V0IChpbnNuKSk7CivCoMKgwqDCoMKgIGVsc2UgaWYgKHZsbWF4X2F2bF90eXBlX3AgKGlu c24tPnJ0bCAoKSkpCisgcmV0dXJuIFJWVl9WTE1BWDsKK8KgwqDCoCB9CivCoCBleHRyYWN0X2lu c25fY2FjaGVkIChpbnNuLT5ydGwgKCkpOworwqAgcmV0dXJuIHJlY29nX2RhdGEub3BlcmFuZFtn ZXRfYXR0cl92bF9vcF9pZHggKGluc24tPnJ0bCAoKSldOworfQorCisvKiBUaGlzIGlzIGEgc3Ry YWlnaHQgZm9yd2FyZCBwYXR0ZXJuIEFMV0FZUyBpbiBwYXJpdGlhbCBhdXRvLXZlY3Rvcml6YXRp b246CisKK8KgwqDCoMKgIFZMID0gU0VMRUNUX0FWTCAoQVZMLCAuLi4pCivCoMKgwqDCoCBWMCA9 IE1BU0tfTEVOX0xPQUQgKC4uLiwgVkwpCivCoMKgwqDCoCBWMSA9IE1BU0tfTEVOX0xPQUQgKC4u LiwgVkwpCivCoMKgwqDCoCBWMiA9IFYwICsgVjEgLS0tIE1pc3NlZCBMRU4gaW5mb3JtYXRpb24u CivCoMKgwqDCoCBNQVNLX0xFTl9TVE9SRSAoLi4uLCBWMiwgVkwpCisKK8KgwqAgV2UgcHJlZmVy IFBMVVNfRVhQUiAoVjAgKyBWMSkgaW5zdGVhZCBvZiBDT05EX0xFTl9BREQgKFYwLCBWMSwgZHVt bXkgTEVOKQorwqDCoCBiZWNhdXNlOgorCivCoMKgwqDCoCAtIEZldyBjb2RlIGNoYW5nZXMgaW4g TG9vcCBWZWN0b3JpemVyLgorwqDCoMKgwqAgLSBSZXVzZSB0aGUgY3VycmVudCBjbGVhbiBmbG93 IG9mIHBhcnRpYWwgdmVjdG9yaXphdGlvbiwgVGhhdCBpcywgYXBwbHkKK8KgwqDCoMKgwqDCoCBw cmVkaWNhdGUgTEVOIG9yIE1BU0sgaW50byBMT0FEL1NUT1JFIG9wZXJhdGlvbnMgYW5kIG90aGVy IHNwZWNpYWwKK8KgwqDCoMKgwqDCoCBhcml0aG1ldGljIG9wZXJhdGlvbnMgKGUuZC4gRElWKSwg dGhlbiBkbyB0aGUgd2hvbGUgdmVjdG9yIHJlZ2lzdGVyCivCoMKgwqDCoMKgwqAgb3BlcmF0aW9u IGlmIGl0IERPTidUIGFmZmVjdCB0aGUgY29ycmVjdG5lc3MuCivCoMKgwqDCoMKgwqAgU3VjaCBm bG93IGlzIHVzZWQgYnkgYWxsIG90aGVyIHRhcmdldHMgbGlrZSB4ODYsIHN2ZSwgczM5MCwgLi4u IGV0Yy4KK8KgwqDCoMKgIC0gUExVU19FWFBSIGhhcyBiZXR0ZXIgZ2ltcGxlIG9wdGltaXphdGlv bnMgdGhhbiBDT05EX0xFTl9BREQuCisKK8KgwqAgV2UgcHJvcGFnYXRlIEFWTCBmcm9tIE5PTi1W TE1BWCB0byBWTE1BWCBmb3IgZ2ltcGxlIElSIGxpa2UgUExVU19FWFBSIHdoaWNoCivCoMKgIGdl bmVyYXRlcyB0aGUgVkxNQVggaW5zdHJ1Y3Rpb24gZHVlIHRvIG1pc3NlZCBMRU4gaW5mb3JtYXRp b24uIFRoZSBsYXRlcgorwqDCoCBWU0VUVkwgUEFTUyB3aWxsIGVsaWRlZCB0aGUgcmVkdW5kYW50 IHZzZXR2bHMuCisqLworCitzdGF0aWMgcnR4CitnZXRfYXV0b3ZlY3Rvcml6ZV9wcmVmZXJyZWRf YXZsIChpbnNuX2luZm8gKmluc24pCit7CivCoCBpZiAoIXZsbWF4X2F2bF9wIChnZXRfYXZsIChp bnNuLCB0cnVlKSkgfHwgIXRhaWxfYWdub3N0aWNfcCAoaW5zbi0+cnRsICgpKSkKK8KgwqDCoCBy ZXR1cm4gTlVMTF9SVFg7CisKK8KgIHJ0eCB1c2VfYXZsID0gTlVMTF9SVFg7CivCoCBpbnNuX2lu Zm8gKmF2bF91c2VfaW5zbiA9IG51bGxwdHI7CivCoCB1bnNpZ25lZCBpbnQgcmF0aW8KK8KgwqDC oCA9IGNhbGN1bGF0ZV9yYXRpbyAoZ2V0X3NldyAoaW5zbi0+cnRsICgpKSwgZ2V0X3ZsbXVsIChp bnNuLT5ydGwgKCkpKTsKK8KgIGZvciAoZGVmX2luZm8gKmRlZiA6IGluc24tPmRlZnMgKCkpCivC oMKgwqAgeworwqDCoMKgwqDCoCBhdXRvIHNldCA9IHNhZmVfZHluX2Nhc3Q8c2V0X2luZm8gKj4g KGRlZik7CivCoMKgwqDCoMKgIGlmICghc2V0IHx8ICFzZXQtPmlzX3JlZyAoKSkKKyByZXR1cm4g TlVMTF9SVFg7CivCoMKgwqDCoMKgIGZvciAodXNlX2luZm8gKnVzZSA6IHNldC0+YWxsX3VzZXMg KCkpCisgeworIMKgIGlmICghdXNlLT5pc19pbl9ub25kZWJ1Z19pbnNuICgpKQorIMKgwqDCoCBy ZXR1cm4gTlVMTF9SVFg7CisgwqAgaW5zbl9pbmZvICp1c2VfaW5zbiA9IHVzZS0+aW5zbiAoKTsK KyDCoCAvKiBGSVhNRTogU3RvcCBBVkwgcHJvcGFnYXRpb24gaWYgYW55IFVTRSBpcyBub3QgYSBS VlYgcmVhbAorIMKgwqDCoMKgIGluc3RydWN0aW9uLiBJdCBzaG91bGQgYmUgdG90YWxseSBlbm91 Z2ggZm9yIHZlY3Rvcml6ZWQgY29kZXMgc2luY2UKKyDCoMKgwqDCoCB0aGV5IGFsd2F5cyBsb2Nh dGUgYXQgZXh0ZW5kZWQgYmxvY2tzLgorCisgwqDCoMKgwqAgVE9ETzogV2UgY2FuIGV4dGVuZCBQ SEkgY2hlY2tpbmcgZm9yIGludHJpbnNpYyBjb2RlcyBpZiBpdAorIMKgwqDCoMKgIG5lY2Vzc2Fy eSBpbiB0aGUgZnV0dXJlLsKgICovCisgwqAgaWYgKHVzZV9pbnNuLT5pc19hcnRpZmljaWFsICgp IHx8ICFoYXNfdnR5cGVfb3AgKHVzZV9pbnNuLT5ydGwgKCkpKQorIMKgwqDCoCByZXR1cm4gTlVM TF9SVFg7CisgwqAgaWYgKCFoYXNfdmxfb3AgKHVzZV9pbnNuLT5ydGwgKCkpKQorIMKgwqDCoCBj b250aW51ZTsKKworIMKgIHJ0eCBuZXdfdXNlX2F2bCA9IGdldF9hdmwgKHVzZV9pbnNuLCB0cnVl KTsKKyDCoCBpZiAoIW5ld191c2VfYXZsKQorIMKgwqDCoCByZXR1cm4gTlVMTF9SVFg7CisgwqAg aWYgKCF1c2VfYXZsKQorIMKgwqDCoCB1c2VfYXZsID0gbmV3X3VzZV9hdmw7CisgwqAgaWYgKCFy dHhfZXF1YWxfcCAodXNlX2F2bCwgbmV3X3VzZV9hdmwpCisgwqDCoMKgwqDCoCB8fCBjYWxjdWxh dGVfcmF0aW8gKGdldF9zZXcgKHVzZV9pbnNuLT5ydGwgKCkpLAorIMKgIGdldF92bG11bCAodXNl X2luc24tPnJ0bCAoKSkpCisgwqDCoCAhPSByYXRpbworIMKgwqDCoMKgwqAgfHwgdmxtYXhfYXZs X3AgKG5ld191c2VfYXZsKQorIMKgwqDCoMKgwqAgfHwgIXRhaWxfYWdub3N0aWNfcCAodXNlX2lu c24tPnJ0bCAoKSkpCisgwqDCoMKgIHJldHVybiBOVUxMX1JUWDsKKyDCoCBpZiAoIWF2bF91c2Vf aW5zbikKKyDCoMKgwqAgYXZsX3VzZV9pbnNuID0gdXNlX2luc247CisgfQorwqDCoMKgIH0KKwor wqAgaWYgKHVzZV9hdmwgJiYgcmVnaXN0ZXJfb3BlcmFuZCAodXNlX2F2bCwgUG1vZGUpKQorwqDC oMKgIHsKK8KgwqDCoMKgwqAgZ2NjX2Fzc2VydCAoYXZsX3VzZV9pbnNuKTsKK8KgwqDCoMKgwqAg Ly8gRmluZCBhIGRlZmluaXRpb24gYXQgb3IgbmVpZ2hib3JpbmcgSU5TTi4KK8KgwqDCoMKgwqAg cmVzb3VyY2VfaW5mbyByZXNvdXJjZSA9IGZ1bGxfcmVnaXN0ZXIgKFJFR05PICh1c2VfYXZsKSk7 CivCoMKgwqDCoMKgIGRlZl9sb29rdXAgZGwxID0gY3J0bC0+c3NhLT5maW5kX2RlZiAocmVzb3Vy Y2UsIGluc24pOworwqDCoMKgwqDCoCBkZWZfbG9va3VwIGRsMiA9IGNydGwtPnNzYS0+ZmluZF9k ZWYgKHJlc291cmNlLCBhdmxfdXNlX2luc24pOworwqDCoMKgwqDCoCBpZiAoZGwxLm1hdGNoaW5n X3NldCAoKSB8fCBkbDIubWF0Y2hpbmdfc2V0ICgpKQorIHJldHVybiBOVUxMX1JUWDsKK8KgwqDC oMKgwqAgZGVmX2luZm8gKmRlZjEgPSBkbDEubGFzdF9kZWZfb2ZfcHJldl9ncm91cCAoKTsKK8Kg wqDCoMKgwqAgZGVmX2luZm8gKmRlZjIgPSBkbDIubGFzdF9kZWZfb2ZfcHJldl9ncm91cCAoKTsK K8KgwqDCoMKgwqAgaWYgKGRlZjEgIT0gZGVmMikKKyByZXR1cm4gTlVMTF9SVFg7CivCoMKgwqDC oMKgIC8qIEZJWE1FOiBXZSBvbmx5IGFsbCBBVkwgcHJvcGF0aW9uIHdpdGhpbiBhIGJsb2NrIHdo aWNoIHNob3VsZAorIGJlIHRvdGFsbHkgZW5vdWdoIGZvciB2ZWN0b3JpemVkIGNvZGVzLgorCisg VE9ETzogV2UgY2FuIGVuaGFuY2UgaXQgaGVyZSBmb3IgaW50cmluc2ljIGNvZGVzIGluIHRoZSBm dXR1cmUKKyBpZiBpdCBpcyBuZWNlc3NhcnkuwqAgKi8KK8KgwqDCoMKgwqAgaWYgKGRlZjEtPmlu c24gKCktPmJiICgpICE9IGluc24tPmJiICgpCisgwqAgfHwgZGVmMS0+aW5zbiAoKS0+Y29tcGFy ZV93aXRoIChpbnNuKSA+PSAwKQorIHJldHVybiBOVUxMX1JUWDsKK8KgwqDCoCB9CivCoCByZXR1 cm4gdXNlX2F2bDsKK30KKworLyogSWYgd2UgaGF2ZSBhIHByZWZlcnJlZCBBVkwgdG8gcHJvcGFn YXRlLCByZXR1cm4gdGhlIEFWTC4KK8KgwqAgT3RoZXJ3aXNlLCByZXR1cm4gTlVMTF9SVFggYXMg d2UgZG9uJ3QgbmVlZCBoYXZlIGFueSBwcmVmZXJyZWQKK8KgwqAgQVZMLsKgICovCisKK3N0YXRp YyBydHgKK2dldF9wcmVmZXJyZWRfYXZsIChpbnNuX2luZm8gKmluc24pCit7CivCoCAvKiBUT0RP OiBXZSBvbmx5IGRvIEFWTCBwcm9wYWdhdGlvbiBmb3IgbWlzc2VkLUxFTiBwYXJ0aWFsCivCoMKg wqDCoCBhdXRvdmVjdG9yaXphdGlvbiBmb3Igbm93LsKgIFdlIGNvdWxkIGFkZCBtb3JlIG1vcmUg QVZMCivCoMKgwqDCoCBwcm9wYWdhdGlvbiBmb3IgaW50cmluc2ljIGNvZGVzIGluIHRoZSBmdXR1 cmUuwqAgKi8KK8KgIHJldHVybiBnZXRfYXV0b3ZlY3Rvcml6ZV9wcmVmZXJyZWRfYXZsIChpbnNu KTsKK30KKworLyogUmV0dXJuIHRoZSBBVkwgVFlQRSBvcGVyYW5kIGluZGV4LsKgICovCitzdGF0 aWMgaW50CitnZXRfYXZsX3R5cGVfaW5kZXggKGluc25faW5mbyAqaW5zbikKK3sKK8KgIGV4dHJh Y3RfaW5zbl9jYWNoZWQgKGluc24tPnJ0bCAoKSk7CivCoCAvKiBFeGNlcHQgcm91bmRpbmcgbW9k ZSBwYXR0ZXJucywgQVZMIFRZUEUgb3BlcmFuZAorwqDCoMKgwqAgaXMgYWx3YXlzIHRoZSBsYXN0 IG9wZXJhbmQuwqAgKi8KK8KgIGlmIChmaW5kX2FjY2VzcyAoaW5zbi0+dXNlcyAoKSwgVlhSTV9S RUdOVU0pCivCoMKgwqDCoMKgIHx8IGZpbmRfYWNjZXNzIChpbnNuLT51c2VzICgpLCBGUk1fUkVH TlVNKSkKK8KgwqDCoCByZXR1cm4gcmVjb2dfZGF0YS5uX29wZXJhbmRzIC0gMjsKK8KgIHJldHVy biByZWNvZ19kYXRhLm5fb3BlcmFuZHMgLSAxOworfQorCisvKiBNYWluIGVudHJ5IHBvaW50IGZv ciB0aGlzIHBhc3MuwqAgKi8KK3Vuc2lnbmVkIGludAorcGFzc19hdmxwcm9wOjpleGVjdXRlIChm dW5jdGlvbiAqKQoreworwqAgYXZscHJvcF9pbml0ICgpOworCivCoCAvKiBHbyB0aHJvdWdoIGFs bCB0aGUgaW5zdHJ1Y3Rpb25zIGxvb2tpbmcgZm9yIEFWTCB0aGF0IHdlIGNvdWxkIHByb3BhZ2F0 ZS4gKi8KKworwqAgaW5zbl9pbmZvICpuZXh0OworwqAgYm9vbCBjaGFuZ2VfcCA9IHRydWU7CisK K8KgIHdoaWxlIChjaGFuZ2VfcCkKK8KgwqDCoCB7CivCoMKgwqDCoMKgIC8qIEl0ZXJhdGUgb24g ZWFjaCBpbnN0cnVjdGlvbiB1bnRpbCBubyBtb3JlIGNoYW5nZSBuZWVkLsKgICovCivCoMKgwqDC oMKgIGNoYW5nZV9wID0gZmFsc2U7CivCoMKgwqDCoMKgIGZvciAoaW5zbl9pbmZvICppbnNuID0g Y3J0bC0+c3NhLT5maXJzdF9pbnNuICgpOyBpbnNuOyBpbnNuID0gbmV4dCkKKyB7CisgwqAgbmV4 dCA9IGluc24tPm5leHRfYW55X2luc24gKCk7CisgwqAgLyogV2Ugb25seSBmb3J3YXJkIEFWTCB0 byB0aGUgaW5zdHJ1Y3Rpb24gdGhhdCBoYXMgQVZML1ZMIG9wZXJhbmQKKyDCoMKgwqDCoCBhbmQg Y2FuIGJlIG9wdGltaXplZCBpbiBSVExfU1NBIGxldmVsLsKgICovCisgwqAgaWYgKCFpbnNuLT5j YW5fYmVfb3B0aW1pemVkICgpIHx8ICFoYXNfdmxfb3AgKGluc24tPnJ0bCAoKSkpCisgwqDCoMKg IGNvbnRpbnVlOworCisgwqAgcnR4IG5ld19hdmwgPSBnZXRfcHJlZmVycmVkX2F2bCAoaW5zbik7 CisgwqAgaWYgKG5ld19hdmwpCisgwqDCoMKgIHsKKyDCoMKgwqDCoMKgIGdjY19hc3NlcnQgKCF2 bG1heF9hdmxfcCAobmV3X2F2bCkpOworIMKgwqDCoMKgwqAgYXV0byAmdXBkYXRlID0gYXZscHJv cHMtPmdldF9vcl9pbnNlcnQgKGluc24pOworIMKgwqDCoMKgwqAgY2hhbmdlX3AgPSAhcnR4X2Vx dWFsX3AgKHVwZGF0ZSwgbmV3X2F2bCk7CisgwqDCoMKgwqDCoCB1cGRhdGUgPSBuZXdfYXZsOwor IMKgwqDCoCB9CisgfQorwqDCoMKgIH0KKworwqAgaWYgKGR1bXBfZmlsZSkKK8KgwqDCoCBmcHJp bnRmIChkdW1wX2ZpbGUsICJcbk51bWJlciBvZiBzdWNjZXNzZnVsIEFWTCBwcm9wYWdhdGlvbnM6 ICVkXG5cbiIsCisgwqDCoMKgwqAgKGludCkgYXZscHJvcHMtPmVsZW1lbnRzICgpKTsKKworwqAg Zm9yIChjb25zdCBhdXRvIGl0ZXIgOiAqYXZscHJvcHMpCivCoMKgwqAgeworwqDCoMKgwqDCoCBy dHhfaW5zbiAqcmluc24gPSBpdGVyLmZpcnN0LT5ydGwgKCk7CivCoMKgwqDCoMKgIGlmIChkdW1w X2ZpbGUpCisgeworIMKgIGZwcmludGYgKGR1bXBfZmlsZSwgIlxuUHJvcGFnYXRpbmcgQVZMOiAi KTsKKyDCoCBwcmludF9ydGxfc2luZ2xlIChkdW1wX2ZpbGUsIGl0ZXIuc2Vjb25kKTsKKyDCoCBm cHJpbnRmIChkdW1wX2ZpbGUsICJpbnRvOiAiKTsKKyDCoCBwcmludF9ydGxfc2luZ2xlIChkdW1w X2ZpbGUsIHJpbnNuKTsKKyB9CivCoMKgwqDCoMKgIC8qIFJlcGxhY2UgQVZMIG9wZXJhbmQuwqAg Ki8KK8KgwqDCoMKgwqAgcnR4IG5ld19wYXQKKyA9IHNpbXBsaWZ5X3JlcGxhY2VfcnR4IChQQVRU RVJOIChyaW5zbiksIGdldF9hdmwgKGl0ZXIuZmlyc3QsIGZhbHNlKSwKKyBpdGVyLnNlY29uZCk7 CivCoMKgwqDCoMKgIHZhbGlkYXRlX2NoYW5nZV9vcl9mYWlsIChyaW5zbiwgJlBBVFRFUk4gKHJp bnNuKSwgbmV3X3BhdCwgZmFsc2UpOworCivCoMKgwqDCoMKgIC8qIENoYW5nZSBBVkwgVFlQRSBp bnRvIE5PTlZMTUFYIGlmIGl0IGlzIFZMTUFYLsKgICovCivCoMKgwqDCoMKgIGlmICh2bG1heF9h dmxfdHlwZV9wIChyaW5zbikpCisgdmFsaWRhdGVfY2hhbmdlX29yX2ZhaWwgKAorIMKgIHJpbnNu LCByZWNvZ19kYXRhLm9wZXJhbmRfbG9jW2dldF9hdmxfdHlwZV9pbmRleCAoaXRlci5maXJzdCld LAorIMKgIGdldF9hdmxfdHlwZV9ydHggKGF2bF90eXBlOjpOT05WTE1BWCksIGZhbHNlKTsKK8Kg wqDCoMKgwqAgaWYgKGR1bXBfZmlsZSkKKyB7CisgwqAgZnByaW50ZiAoZHVtcF9maWxlLCAiU3Vj Y2Vzc2Z1bGx5IHRvIG1hdGNoIHRoaXMgaW5zdHJ1Y3Rpb246ICIpOworIMKgIHByaW50X3J0bF9z aW5nbGUgKGR1bXBfZmlsZSwgcmluc24pOworIH0KK8KgwqDCoCB9CisKK8KgIGF2bHByb3BfZG9u ZSAoKTsKK8KgIHJldHVybiAwOworfQorCitydGxfb3B0X3Bhc3MgKgorbWFrZV9wYXNzX2F2bHBy b3AgKGdjYzo6Y29udGV4dCAqY3R4dCkKK3sKK8KgIHJldHVybiBuZXcgcGFzc19hdmxwcm9wIChj dHh0KTsKK30KZGlmZiAtLWdpdCBhL2djYy9jb25maWcvcmlzY3YvcmlzY3YtcGFzc2VzLmRlZiBi L2djYy9jb25maWcvcmlzY3YvcmlzY3YtcGFzc2VzLmRlZgppbmRleCA0MDg0MTIyY2YwYS4uYjYy NjA5MzlkNWMgMTAwNjQ0Ci0tLSBhL2djYy9jb25maWcvcmlzY3YvcmlzY3YtcGFzc2VzLmRlZgor KysgYi9nY2MvY29uZmlnL3Jpc2N2L3Jpc2N2LXBhc3Nlcy5kZWYKQEAgLTE4LDQgKzE4LDUgQEAK wqDCoMKgIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi7CoCAqLwpJTlNFUlRfUEFTU19B RlRFUiAocGFzc19ydGxfc3RvcmVfbW90aW9uLCAxLCBwYXNzX3Nob3J0ZW5fbWVtcmVmcyk7CitJ TlNFUlRfUEFTU19BRlRFUiAocGFzc19zcGxpdF9hbGxfaW5zbnMsIDEsIHBhc3NfYXZscHJvcCk7 CklOU0VSVF9QQVNTX0JFRk9SRSAocGFzc19mYXN0X3J0bF9kY2UsIDEsIHBhc3NfdnNldHZsKTsK ZGlmZiAtLWdpdCBhL2djYy9jb25maWcvcmlzY3YvcmlzY3YtcHJvdG9zLmggYi9nY2MvY29uZmln L3Jpc2N2L3Jpc2N2LXByb3Rvcy5oCmluZGV4IDZjYjlkNDU5ZWU5Li4yYjA5ZWM5ZWE5ZSAxMDA2 NDQKLS0tIGEvZ2NjL2NvbmZpZy9yaXNjdi9yaXNjdi1wcm90b3MuaAorKysgYi9nY2MvY29uZmln L3Jpc2N2L3Jpc2N2LXByb3Rvcy5oCkBAIC0xNTYsNiArMTU2LDcgQEAgZXh0ZXJuIHZvaWQgcmlz Y3ZfcGFyc2VfYXJjaF9zdHJpbmcgKGNvbnN0IGNoYXIgKiwgc3RydWN0IGdjY19vcHRpb25zICos IGxvY2F0aW8KZXh0ZXJuIGJvb2wgcmlzY3ZfaGFyZF9yZWdub19yZW5hbWVfb2sgKHVuc2lnbmVk LCB1bnNpZ25lZCk7CnJ0bF9vcHRfcGFzcyAqIG1ha2VfcGFzc19zaG9ydGVuX21lbXJlZnMgKGdj Yzo6Y29udGV4dCAqY3R4dCk7CitydGxfb3B0X3Bhc3MgKiBtYWtlX3Bhc3NfYXZscHJvcCAoZ2Nj Ojpjb250ZXh0ICpjdHh0KTsKcnRsX29wdF9wYXNzICogbWFrZV9wYXNzX3ZzZXR2bCAoZ2NjOjpj b250ZXh0ICpjdHh0KTsKLyogUm91dGluZXMgaW1wbGVtZW50ZWQgaW4gcmlzY3Ytc3RyaW5nLmMu wqAgKi8KQEAgLTU1OSw2ICs1NjAsMTUgQEAgYm9vbCBjbXBfbG11bF9sZV9vbmUgKG1hY2hpbmVf bW9kZSk7CmJvb2wgY21wX2xtdWxfZ3Rfb25lIChtYWNoaW5lX21vZGUpOwpib29sIGdhdGhlcl9z Y2F0dGVyX3ZhbGlkX29mZnNldF9tb2RlX3AgKG1hY2hpbmVfbW9kZSk7CmJvb2wgdmxzX21vZGVf dmFsaWRfcCAobWFjaGluZV9tb2RlKTsKK2Jvb2wgaGFzX3Z0eXBlX29wIChydHhfaW5zbiAqKTsK K2Jvb2wgaGFzX3ZsX29wIChydHhfaW5zbiAqKTsKK2Jvb2wgdGFpbF9hZ25vc3RpY19wIChydHhf aW5zbiAqKTsKK3ZvaWQgdmFsaWRhdGVfY2hhbmdlX29yX2ZhaWwgKHJ0eCwgcnR4ICosIHJ0eCwg Ym9vbCk7Citib29sIHZsbWF4X2F2bF90eXBlX3AgKHJ0eF9pbnNuICopOworYm9vbCB2bG1heF9h dmxfcCAocnR4KTsKK3VpbnQ4X3QgZ2V0X3NldyAocnR4X2luc24gKik7CitlbnVtIHZsbXVsX3R5 cGUgZ2V0X3ZsbXVsIChydHhfaW5zbiAqKTsKK2Jvb2wgY29uc3RfdmxtYXhfcCAobWFjaGluZV9t b2RlKTsKfQovKiBXZSBjbGFzc2lmeSBidWlsdGluIHR5cGVzIGludG8gdHdvIGNsYXNzZXM6CmRp ZmYgLS1naXQgYS9nY2MvY29uZmlnL3Jpc2N2L3Jpc2N2LXYuY2MgYi9nY2MvY29uZmlnL3Jpc2N2 L3Jpc2N2LXYuY2MKaW5kZXggZTM5YTk1MDc4MDMuLjQ3MzYyMmFjMzIxIDEwMDY0NAotLS0gYS9n Y2MvY29uZmlnL3Jpc2N2L3Jpc2N2LXYuY2MKKysrIGIvZ2NjL2NvbmZpZy9yaXNjdi9yaXNjdi12 LmNjCkBAIC01Niw3ICs1Niw3IEBAIHVzaW5nIG5hbWVzcGFjZSByaXNjdl92ZWN0b3I7Cm5hbWVz cGFjZSByaXNjdl92ZWN0b3IgewovKiBSZXR1cm4gdHJ1ZSBpZiB2bG1heCBpcyBjb25zdGFudCB2 YWx1ZSBhbmQgY2FuIGJlIHVzZWQgaW4gdnNldGl2bC7CoCAqLwotc3RhdGljIGJvb2wKK2Jvb2wK Y29uc3RfdmxtYXhfcCAobWFjaGluZV9tb2RlIG1vZGUpCnsKwqDCoCBwb2x5X3VpbnQ2NCBudWlu dHMgPSBHRVRfTU9ERV9OVU5JVFMgKG1vZGUpOwpAQCAtMjk4LDE0ICsyOTgsNiBAQCBwdWJsaWM6 CsKgwqDCoMKgwqAgbGVuID0gZm9yY2VfcmVnIChQbW9kZSwgbGVuKTsKwqDCoMKgIHZsc19wID0g dHJ1ZTsKwqAgfQotIGVsc2UgaWYgKGNvbnN0X3ZsbWF4X3AgKHZ0eXBlX21vZGUpKQotIMKgIHsK LSDCoMKgwqAgLyogT3B0aW1pemUgVkxTLVZMTUFYIGNvZGUgZ2VuLCB3ZSBjYW4gdXNlIHZzZXRp dmxpIGluc3RlYWQgb2YKLSDCoMKgwqDCoMKgwqAgdGhlIHZzZXR2bGkgdG8gb2J0YWluIHRoZSB2 YWx1ZSBvZiB2bG1heC7CoCAqLwotIMKgwqDCoCBwb2x5X3VpbnQ2NCBudW5pdHMgPSBHRVRfTU9E RV9OVU5JVFMgKHZ0eXBlX21vZGUpOwotIMKgwqDCoCBsZW4gPSBnZW5faW50X21vZGUgKG51bml0 cywgUG1vZGUpOwotIMKgwqDCoCB2bHNfcCA9IHRydWU7Ci0gwqAgfQplbHNlIGlmIChjYW5fY3Jl YXRlX3BzZXVkb19wICgpKQrCoCB7CsKgwqDCoCBsZW4gPSBnZW5fcmVnX3J0eCAoUG1vZGUpOwpA QCAtNDQzNSw0ICs0NDI3LDc4IEBAIGV4cGFuZF9wb3Bjb3VudCAocnR4ICpvcHMpCsKgwqAgZW1p dF9tb3ZlX2luc24gKGRzdCwgeDQpOwp9CisvKiBSZXR1cm4gdHJ1ZSBpZiBpdCBpcyBhbiBSVlYg aW5zdHJ1Y3Rpb24gZGVwZW5kcyBvbiBWVFlQRSBnbG9iYWwKK8KgwqAgc3RhdHVzIHJlZ2lzdGVy LsKgICovCitib29sCitoYXNfdnR5cGVfb3AgKHJ0eF9pbnNuICpyaW5zbikKK3sKK8KgIHJldHVy biByZWNvZ19tZW1vaXplZCAocmluc24pID49IDAgJiYgZ2V0X2F0dHJfaGFzX3Z0eXBlX29wIChy aW5zbik7Cit9CisKKy8qIFJldHVybiB0cnVlIGlmIGl0IGlzIGFuIFJWViBpbnN0cnVjdGlvbiBk ZXBlbmRzIG9uIFZMIGdsb2JhbAorwqDCoCBzdGF0dXMgcmVnaXN0ZXIuwqAgKi8KK2Jvb2wKK2hh c192bF9vcCAocnR4X2luc24gKnJpbnNuKQoreworwqAgcmV0dXJuIHJlY29nX21lbW9pemVkIChy aW5zbikgPj0gMCAmJiBnZXRfYXR0cl9oYXNfdmxfb3AgKHJpbnNuKTsKK30KKworLyogR2V0IGRl ZmF1bHQgdGFpbCBwb2xpY3kuwqAgKi8KK3N0YXRpYyBib29sCitnZXRfZGVmYXVsdF90YSAoKQor eworwqAgLyogRm9yIHRoZSBpbnN0cnVjdGlvbiB0aGF0IGRvZXNuJ3QgcmVxdWlyZSBUQSwgd2Ug c3RpbGwgbmVlZCBhIGRlZmF1bHQgdmFsdWUKK8KgwqDCoMKgIHRvIGVtaXQgdnNldHZsLiBXZSBw aWNrIHVwIHRoZSBkZWZhdWx0IHZhbHVlIGFjY29yZGluZyB0byBwcmVmZXIgcG9saWN5LiAqLwor wqAgcmV0dXJuIChib29sKSAoZ2V0X3ByZWZlcl90YWlsX3BvbGljeSAoKSAmIDB4MQorIHx8IChn ZXRfcHJlZmVyX3RhaWxfcG9saWN5ICgpID4+IDEgJiAweDEpKTsKK30KKworLyogSGVscGVyIGZ1 bmN0aW9uIHRvIGdldCBUQSBvcGVyYW5kLsKgICovCitib29sCit0YWlsX2Fnbm9zdGljX3AgKHJ0 eF9pbnNuICpyaW5zbikKK3sKK8KgIC8qIElmIGl0IGRvZXNuJ3QgaGF2ZSBUQSwgd2UgcmV0dXJu IGFnbm9zdGljIGJ5IGRlZmF1bHQuwqAgKi8KK8KgIGV4dHJhY3RfaW5zbl9jYWNoZWQgKHJpbnNu KTsKK8KgIGludCB0YSA9IGdldF9hdHRyX3RhIChyaW5zbik7CivCoCByZXR1cm4gdGEgPT0gSU5W QUxJRF9BVFRSSUJVVEUgPyBnZXRfZGVmYXVsdF90YSAoKSA6IElTX0FHTk9TVElDICh0YSk7Cit9 CisKKy8qIENoYW5nZSBpbnNuIGFuZCBBc3NlcnQgdGhlIGNoYW5nZSBhbHdheXMgaGFwcGVucy7C oCAqLwordm9pZAordmFsaWRhdGVfY2hhbmdlX29yX2ZhaWwgKHJ0eCBvYmplY3QsIHJ0eCAqbG9j LCBydHggbmV3X3J0eCwgYm9vbCBpbl9ncm91cCkKK3sKK8KgIGJvb2wgY2hhbmdlX3AgPSB2YWxp ZGF0ZV9jaGFuZ2UgKG9iamVjdCwgbG9jLCBuZXdfcnR4LCBpbl9ncm91cCk7CivCoCBnY2NfYXNz ZXJ0IChjaGFuZ2VfcCk7Cit9CisKKy8qIFJldHVybiB0cnVlIGlmIGl0IGlzIFZMTUFYIEFWTCBU WVBFLsKgICovCitib29sCit2bG1heF9hdmxfdHlwZV9wIChydHhfaW5zbiAqcmluc24pCit7CivC oCByZXR1cm4gZ2V0X2F0dHJfYXZsX3R5cGUgKHJpbnNuKSA9PSBWTE1BWDsKK30KKworLyogUmV0 dXJuIHRydWUgaWYgUlRYIGlzIFJWViBWTE1BWCBBVkwuwqAgKi8KK2Jvb2wKK3ZsbWF4X2F2bF9w IChydHggeCkKK3sKK8KgIHJldHVybiB4ICYmIHJ0eF9lcXVhbF9wICh4LCBSVlZfVkxNQVgpOwor fQorCisvKiBIZWxwZXIgZnVuY3Rpb24gdG8gZ2V0IFNFVyBvcGVyYW5kLiBXZSBhbHdheXMgaGF2 ZSBTRVcgdmFsdWUgZm9yCivCoMKgIGFsbCBSVlYgaW5zdHJ1Y3Rpb25zIHRoYXQgaGF2ZSBWVFlQ RSBPUC7CoCAqLwordWludDhfdAorZ2V0X3NldyAocnR4X2luc24gKnJpbnNuKQoreworwqAgcmV0 dXJuIGdldF9hdHRyX3NldyAocmluc24pOworfQorCisvKiBIZWxwZXIgZnVuY3Rpb24gdG8gZ2V0 IFZMTVVMIG9wZXJhbmQuIFdlIGFsd2F5cyBoYXZlIFZMTVVMIHZhbHVlIGZvcgorwqDCoCBhbGwg UlZWIGluc3RydWN0aW9ucyB0aGF0IGhhdmUgVlRZUEUgT1AuICovCitlbnVtIHZsbXVsX3R5cGUK K2dldF92bG11bCAocnR4X2luc24gKnJpbnNuKQoreworwqAgcmV0dXJuIChlbnVtIHZsbXVsX3R5 cGUpIGdldF9hdHRyX3ZsbXVsIChyaW5zbik7Cit9CisKfSAvLyBuYW1lc3BhY2UgcmlzY3ZfdmVj dG9yCmRpZmYgLS1naXQgYS9nY2MvY29uZmlnL3Jpc2N2L3Jpc2N2LXZzZXR2bC5jYyBiL2djYy9j b25maWcvcmlzY3YvcmlzY3YtdnNldHZsLmNjCmluZGV4IGU5ZGQ2NjlkZTk4Li5mMmYxOWU0MjNi ZiAxMDA2NDQKLS0tIGEvZ2NjL2NvbmZpZy9yaXNjdi9yaXNjdi12c2V0dmwuY2MKKysrIGIvZ2Nj L2NvbmZpZy9yaXNjdi9yaXNjdi12c2V0dmwuY2MKQEAgLTI1NSwyOCArMjU1LDYgQEAgcG9saWN5 X3RvX3N0ciAoYm9vbCBhZ25vc3RpY19wKQrCoMKgIHJldHVybiBhZ25vc3RpY19wID8gImFnbm9z dGljIiA6ICJ1bmRpc3R1cmJlZCI7Cn0KLXN0YXRpYyBib29sCi12bG1heF9hdmxfcCAocnR4IHgp Ci17Ci3CoCByZXR1cm4geCAmJiBydHhfZXF1YWxfcCAoeCwgUlZWX1ZMTUFYKTsKLX0KLQotLyog UmV0dXJuIHRydWUgaWYgaXQgaXMgYW4gUlZWIGluc3RydWN0aW9uIGRlcGVuZHMgb24gVlRZUEUg Z2xvYmFsCi3CoMKgIHN0YXR1cyByZWdpc3Rlci7CoCAqLwotc3RhdGljIGJvb2wKLWhhc192dHlw ZV9vcCAocnR4X2luc24gKnJpbnNuKQotewotwqAgcmV0dXJuIHJlY29nX21lbW9pemVkIChyaW5z bikgPj0gMCAmJiBnZXRfYXR0cl9oYXNfdnR5cGVfb3AgKHJpbnNuKTsKLX0KLQotLyogUmV0dXJu IHRydWUgaWYgaXQgaXMgYW4gUlZWIGluc3RydWN0aW9uIGRlcGVuZHMgb24gVkwgZ2xvYmFsCi3C oMKgIHN0YXR1cyByZWdpc3Rlci7CoCAqLwotc3RhdGljIGJvb2wKLWhhc192bF9vcCAocnR4X2lu c24gKnJpbnNuKQotewotwqAgcmV0dXJuIHJlY29nX21lbW9pemVkIChyaW5zbikgPj0gMCAmJiBn ZXRfYXR0cl9oYXNfdmxfb3AgKHJpbnNuKTsKLX0KLQovKiBSZXR1cm4gdHJ1ZSBpZiB0aGUgaW5z dHJ1Y3Rpb24gaWdub3JlcyBWTE1VTCBmaWVsZCBvZiBWVFlQRS7CoCAqLwpzdGF0aWMgYm9vbApp Z25vcmVfdmxtdWxfaW5zbl9wIChydHhfaW5zbiAqcmluc24pCkBAIC0zNjUsMzYgKzM0MywyMiBA QCBnZXRfYXZsIChydHhfaW5zbiAqcmluc24pCsKgwqAgaWYgKCFoYXNfdmxfb3AgKHJpbnNuKSkK wqDCoMKgwqAgcmV0dXJuIE5VTExfUlRYOwotwqAgaWYgKGdldF9hdHRyX2F2bF90eXBlIChyaW5z bikgPT0gVkxNQVgpCi3CoMKgwqAgcmV0dXJuIFJWVl9WTE1BWDsKLcKgIGV4dHJhY3RfaW5zbl9j YWNoZWQgKHJpbnNuKTsKLcKgIHJldHVybiByZWNvZ19kYXRhLm9wZXJhbmRbZ2V0X2F0dHJfdmxf b3BfaWR4IChyaW5zbildOwotfQotLyogSGVscGVyIGZ1bmN0aW9uIHRvIGdldCBTRVcgb3BlcmFu ZC4gV2UgYWx3YXlzIGhhdmUgU0VXIHZhbHVlIGZvcgotwqDCoCBhbGwgUlZWIGluc3RydWN0aW9u cyB0aGF0IGhhdmUgVlRZUEUgT1AuwqAgKi8KLXN0YXRpYyB1aW50OF90Ci1nZXRfc2V3IChydHhf aW5zbiAqcmluc24pCi17Ci3CoCByZXR1cm4gZ2V0X2F0dHJfc2V3IChyaW5zbik7Ci19Ci0KLS8q IEhlbHBlciBmdW5jdGlvbiB0byBnZXQgVkxNVUwgb3BlcmFuZC4gV2UgYWx3YXlzIGhhdmUgVkxN VUwgdmFsdWUgZm9yCi3CoMKgIGFsbCBSVlYgaW5zdHJ1Y3Rpb25zIHRoYXQgaGF2ZSBWVFlQRSBP UC4gKi8KLXN0YXRpYyBlbnVtIHZsbXVsX3R5cGUKLWdldF92bG11bCAocnR4X2luc24gKnJpbnNu KQotewotwqAgcmV0dXJuIChlbnVtIHZsbXVsX3R5cGUpIGdldF9hdHRyX3ZsbXVsIChyaW5zbik7 Ci19CivCoCBleHRyYWN0X2luc25fY2FjaGVkIChyaW5zbik7CivCoCBpZiAodmxtYXhfYXZsX3R5 cGVfcCAocmluc24pKQorwqDCoMKgIHsKK8KgwqDCoMKgwqAgaWYgKEJZVEVTX1BFUl9SSVNDVl9W RUNUT1IuaXNfY29uc3RhbnQgKCkpCisgeworIMKgIGZvciAoaW50IGkgPSAwOyBpIDwgcmVjb2df ZGF0YS5uX29wZXJhbmRzOyBpKyspCisgwqDCoMKgIGlmIChHRVRfTU9ERV9DTEFTUyAocmVjb2df ZGF0YS5vcGVyYW5kX21vZGVbaV0pID09IE1PREVfVkVDVE9SX0JPT0wKKyAmJiBjb25zdF92bG1h eF9wIChyZWNvZ19kYXRhLm9wZXJhbmRfbW9kZVtpXSkpCisgwqDCoMKgwqDCoCByZXR1cm4gZ2Vu X2ludF9tb2RlIChHRVRfTU9ERV9OVU5JVFMgKHJlY29nX2RhdGEub3BlcmFuZF9tb2RlW2ldKSwK KyDCoMKgIFBtb2RlKTsKKyB9CivCoMKgwqDCoMKgIHJldHVybiBSVlZfVkxNQVg7CivCoMKgwqAg fQotLyogR2V0IGRlZmF1bHQgdGFpbCBwb2xpY3kuwqAgKi8KLXN0YXRpYyBib29sCi1nZXRfZGVm YXVsdF90YSAoKQotewotwqAgLyogRm9yIHRoZSBpbnN0cnVjdGlvbiB0aGF0IGRvZXNuJ3QgcmVx dWlyZSBUQSwgd2Ugc3RpbGwgbmVlZCBhIGRlZmF1bHQgdmFsdWUKLcKgwqDCoMKgIHRvIGVtaXQg dnNldHZsLiBXZSBwaWNrIHVwIHRoZSBkZWZhdWx0IHZhbHVlIGFjY29yZGluZyB0byBwcmVmZXIg cG9saWN5LiAqLwotwqAgcmV0dXJuIChib29sKSAoZ2V0X3ByZWZlcl90YWlsX3BvbGljeSAoKSAm IDB4MQotIHx8IChnZXRfcHJlZmVyX3RhaWxfcG9saWN5ICgpID4+IDEgJiAweDEpKTsKK8KgIHJl dHVybiByZWNvZ19kYXRhLm9wZXJhbmRbZ2V0X2F0dHJfdmxfb3BfaWR4IChyaW5zbildOwp9Ci8q IEdldCBkZWZhdWx0IG1hc2sgcG9saWN5LsKgICovCkBAIC00MDcsMTYgKzM3MSw2IEBAIGdldF9k ZWZhdWx0X21hICgpCnx8IChnZXRfcHJlZmVyX21hc2tfcG9saWN5ICgpID4+IDEgJiAweDEpKTsK fQotLyogSGVscGVyIGZ1bmN0aW9uIHRvIGdldCBUQSBvcGVyYW5kLsKgICovCi1zdGF0aWMgYm9v bAotdGFpbF9hZ25vc3RpY19wIChydHhfaW5zbiAqcmluc24pCi17Ci3CoCAvKiBJZiBpdCBkb2Vz bid0IGhhdmUgVEEsIHdlIHJldHVybiBhZ25vc3RpYyBieSBkZWZhdWx0LsKgICovCi3CoCBleHRy YWN0X2luc25fY2FjaGVkIChyaW5zbik7Ci3CoCBpbnQgdGEgPSBnZXRfYXR0cl90YSAocmluc24p OwotwqAgcmV0dXJuIHRhID09IElOVkFMSURfQVRUUklCVVRFID8gZ2V0X2RlZmF1bHRfdGEgKCkg OiBJU19BR05PU1RJQyAodGEpOwotfQotCi8qIEhlbHBlciBmdW5jdGlvbiB0byBnZXQgTUEgb3Bl cmFuZC7CoCAqLwpzdGF0aWMgYm9vbAptYXNrX2Fnbm9zdGljX3AgKHJ0eF9pbnNuICpyaW5zbikK QEAgLTY5NiwxNCArNjUwLDYgQEAgaGFzX25vX3VzZXMgKGJhc2ljX2Jsb2NrIGNmZ19iYiwgcnR4 X2luc24gKnJpbnNuLCBpbnQgcmVnbm8pCsKgwqAgcmV0dXJuIHRydWU7Cn0KLS8qIENoYW5nZSBp bnNuIGFuZCBBc3NlcnQgdGhlIGNoYW5nZSBhbHdheXMgaGFwcGVucy7CoCAqLwotc3RhdGljIHZv aWQKLXZhbGlkYXRlX2NoYW5nZV9vcl9mYWlsIChydHggb2JqZWN0LCBydHggKmxvYywgcnR4IG5l d19ydHgsIGJvb2wgaW5fZ3JvdXApCi17Ci3CoCBib29sIGNoYW5nZV9wID0gdmFsaWRhdGVfY2hh bmdlIChvYmplY3QsIGxvYywgbmV3X3J0eCwgaW5fZ3JvdXApOwotwqAgZ2NjX2Fzc2VydCAoY2hh bmdlX3ApOwotfQotCi8qIFRoaXMgZmxhZ3MgaW5kaWNhdGVzIHRoZSBtaW5pbXVtIGRlbWFuZCBv ZiB0aGUgdmwgYW5kIHZ0eXBlIHZhbHVlcyBieSB0aGUKwqDCoMKgIFJWViBpbnN0cnVjdGlvbi4g Rm9yIGV4YW1wbGUsIERFTUFORF9SQVRJT19QIGluZGljYXRlcyB0aGF0IHRoaXMgUlZWCsKgwqDC oCBpbnN0cnVjdGlvbiBvbmx5IG5lZWRzIHRoZSBTRVcvTE1VTCByYXRpbyB0byByZW1haW4gdGhl IHNhbWUsIGFuZCBkb2VzIG5vdApkaWZmIC0tZ2l0IGEvZ2NjL2NvbmZpZy9yaXNjdi90LXJpc2N2 IGIvZ2NjL2NvbmZpZy9yaXNjdi90LXJpc2N2CmluZGV4IGRkMTcwNTZmZTgyLi4wOGRlNjI4NTNh NiAxMDA2NDQKLS0tIGEvZ2NjL2NvbmZpZy9yaXNjdi90LXJpc2N2CisrKyBiL2djYy9jb25maWcv cmlzY3YvdC1yaXNjdgpAQCAtNjksNiArNjksMTIgQEAgcmlzY3YtdnNldHZsLm86ICQoc3JjZGly KS9jb25maWcvcmlzY3YvcmlzY3YtdnNldHZsLmNjIFwKJChDT01QSUxFUikgLWMgJChBTExfQ09N UElMRVJGTEFHUykgJChBTExfQ1BQRkxBR1MpICQoSU5DTFVERVMpIFwKJChzcmNkaXIpL2NvbmZp Zy9yaXNjdi9yaXNjdi12c2V0dmwuY2MKK3Jpc2N2LWF2bHByb3AubzogJChzcmNkaXIpL2NvbmZp Zy9yaXNjdi9yaXNjdi1hdmxwcm9wLmNjIFwKK8KgICQoQ09ORklHX0gpICQoU1lTVEVNX0gpIGNv cmV0eXBlcy5oICQoVE1fSCkgJChSVExfSCkgJChSRUdTX0gpIFwKK8KgICQoVEFSR0VUX0gpIHRy ZWUtcGFzcy5oIGRmLmggcnRsLXNzYS5oIGNmZ2NsZWFudXAuaCBpbnNuLWF0dHIuaAorICQoQ09N UElMRVIpIC1jICQoQUxMX0NPTVBJTEVSRkxBR1MpICQoQUxMX0NQUEZMQUdTKSAkKElOQ0xVREVT KSBcCisgJChzcmNkaXIpL2NvbmZpZy9yaXNjdi9yaXNjdi1hdmxwcm9wLmNjCisKcmlzY3YtdmVj dG9yLWNvc3RzLm86ICQoc3JjZGlyKS9jb25maWcvcmlzY3YvcmlzY3YtdmVjdG9yLWNvc3RzLmNj IFwKwqDCoCAkKENPTkZJR19IKSAkKFNZU1RFTV9IKSBjb3JldHlwZXMuaCAkKFRNX0gpICQoVEFS R0VUX0gpICQoRlVOQ1RJT05fSCkgXArCoMKgICQoVFJFRV9IKSBiYXNpYy1ibG9jay5oICQoUlRM X0gpIGdpbXBsZS5oIHRhcmdob29rcy5oIGNmZ2xvb3AuaCBcCmRpZmYgLS1naXQgYS9nY2MvY29u ZmlnL3Jpc2N2L3ZlY3Rvci5tZCBiL2djYy9jb25maWcvcmlzY3YvdmVjdG9yLm1kCmluZGV4IGVm OTE5NTAxNzhmLi4wYzU5ZDFiOTBiYyAxMDA2NDQKLS0tIGEvZ2NjL2NvbmZpZy9yaXNjdi92ZWN0 b3IubWQKKysrIGIvZ2NjL2NvbmZpZy9yaXNjdi92ZWN0b3IubWQKQEAgLTgwOSw3ICs4MDksNyBA QArCoCBWMUhGLFYySEYsVjRIRixWOEhGLFYxNkhGLFYzMkhGLFY2NEhGLFYxMjhIRixWMjU2SEYs VjUxMkhGLFYxMDI0SEYsVjIwNDhIRiwKwqAgVjFTRixWMlNGLFY0U0YsVjhTRixWMTZTRixWMzJT RixWNjRTRixWMTI4U0YsVjI1NlNGLFY1MTJTRixWMTAyNFNGLArCoCBWMURGLFYyREYsVjRERixW OERGLFYxNkRGLFYzMkRGLFY2NERGLFYxMjhERixWMjU2REYsVjUxMkRGIikKLSDCoMKgIChzeW1i b2xfcmVmICJyaXNjdl92ZWN0b3I6Ok5PTlZMTUFYIikKKyDCoMKgIChzeW1ib2xfcmVmICJyaXNj dl92ZWN0b3I6OlZMUyIpCihlcV9hdHRyICJ0eXBlIiAidmxkZSx2bGRmZix2c3RlLHZpbW92LHZp bW92LHZpbW92LHZmbW92LHZleHQsdmltZXJnZSxcCsKgIHZmc3FydCx2ZnJlY3AsdmZtZXJnZSx2 ZmN2dGl0b2YsdmZjdnRmdG9pLHZmd2N2dGl0b2YsXArCoCB2ZndjdnRmdG9pLHZmd2N2dGZ0b2Ys dmZuY3Z0aXRvZix2Zm5jdnRmdG9pLHZmbmN2dGZ0b2YsXApkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3Rz dWl0ZS9nY2MuZGcvdmVjdC9jb3N0bW9kZWwvcmlzY3YvcnZ2L2R5bmFtaWMtbG11bDQtNS5jIGIv Z2NjL3Rlc3RzdWl0ZS9nY2MuZGcvdmVjdC9jb3N0bW9kZWwvcmlzY3YvcnZ2L2R5bmFtaWMtbG11 bDQtNS5jCmluZGV4IDkyOGE1MDdhMzYzLi41Mjc4ZTRhYTM4ZiAxMDA2NDQKLS0tIGEvZ2NjL3Rl c3RzdWl0ZS9nY2MuZGcvdmVjdC9jb3N0bW9kZWwvcmlzY3YvcnZ2L2R5bmFtaWMtbG11bDQtNS5j CisrKyBiL2djYy90ZXN0c3VpdGUvZ2NjLmRnL3ZlY3QvY29zdG1vZGVsL3Jpc2N2L3J2di9keW5h bWljLWxtdWw0LTUuYwpAQCAtMzksNyArMzksNyBAQCB2b2lkIGZvbzIgKGludDE2X3QgKl9fcmVz dHJpY3QgYSwKwqDCoMKgwqAgfQp9Ci0vKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXIge2Uz MixtNH0gfSB9ICovCisvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXIge2UxNixtMn0gfSB9 ICovCi8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci1ub3Qge2NzcnJ9IH0gfSAqLwovKiB7 IGRnLWZpbmFsIHsgc2Nhbi10cmVlLWR1bXAtdGltZXMgIk1heGltdW0gbG11bCA9IDgiIDEgInZl Y3QiIH0gfSAqLwovKiB7IGRnLWZpbmFsIHsgc2Nhbi10cmVlLWR1bXAtdGltZXMgIk1heGltdW0g bG11bCA9IDQiIDEgInZlY3QiIH0gfSAqLwpkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2Mu ZGcvdmVjdC9jb3N0bW9kZWwvcmlzY3YvcnZ2L2R5bmFtaWMtbG11bDgtMi5jIGIvZ2NjL3Rlc3Rz dWl0ZS9nY2MuZGcvdmVjdC9jb3N0bW9kZWwvcmlzY3YvcnZ2L2R5bmFtaWMtbG11bDgtMi5jCmlu ZGV4IGE1MDI2NWZjMWVjLi4xZGIyZTA3Mzg0NiAxMDA2NDQKLS0tIGEvZ2NjL3Rlc3RzdWl0ZS9n Y2MuZGcvdmVjdC9jb3N0bW9kZWwvcmlzY3YvcnZ2L2R5bmFtaWMtbG11bDgtMi5jCisrKyBiL2dj Yy90ZXN0c3VpdGUvZ2NjLmRnL3ZlY3QvY29zdG1vZGVsL3Jpc2N2L3J2di9keW5hbWljLWxtdWw4 LTIuYwpAQCAtMTAsNyArMTAsNyBAQCBmb28gKGludDMyX3QgKl9fcmVzdHJpY3QgYSwgaW50MTZf dCAqX19yZXN0cmljdCBiLCBpbnQgbikKwqDCoMKgwqAgYVtpXSA9IGFbaV0gKyBiW2ldOwp9Ci0v KiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXIge2UzMixtOH0gfSB9ICovCisvKiB7IGRnLWZp bmFsIHsgc2Nhbi1hc3NlbWJsZXIge2UxNixtNH0gfSB9ICovCi8qIHsgZGctZmluYWwgeyBzY2Fu LWFzc2VtYmxlci1ub3Qge2NzcnJ9IH0gfSAqLwovKiB7IGRnLWZpbmFsIHsgc2Nhbi10cmVlLWR1 bXAtdGltZXMgIk1heGltdW0gbG11bCA9IDgiIDEgInZlY3QiIH0gfSAqLwovKiB7IGRnLWZpbmFs IHsgc2Nhbi10cmVlLWR1bXAtbm90ICJNYXhpbXVtIGxtdWwgPSA0IiAidmVjdCIgfSB9ICovCmRp ZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2F1dG92ZWMvcGFy dGlhbC9zZWxlY3RfdmwtMi5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9h dXRvdmVjL3BhcnRpYWwvc2VsZWN0X3ZsLTIuYwppbmRleCBlYWM3Y2JjNzU3Yi4uY2E4OGQ0MmNk ZjQgMTAwNjQ0Ci0tLSBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYXV0b3Zl Yy9wYXJ0aWFsL3NlbGVjdF92bC0yLmMKKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jp c2N2L3J2di9hdXRvdmVjL3BhcnRpYWwvc2VsZWN0X3ZsLTIuYwpAQCAtNywxMCArNywxMSBAQAov KgoqKiBmb286CioqIHZzZXRpdmxpXHRbYS14MC05XSssXHMqOCxccyplKDg/fDE2P3wzMj98NjQp LFxzKm0oMT98Mj98ND98OD98ZjI/fGY0P3xmOCksXHMqdFthdV0sXHMqbVthdV0KKyoqIC4uLgoq KiB2bGUzMlwudlx0dlswLTldKywwXChbYS14MC05XStcKQoqKiAuLi4KLSoqIHZzZXR2bGlcdFth LXgwLTldKyxccypbYS14MC05XSssXHMqZSg4P3wxNj98MzI/fDY0KSxccyptKDE/fDI/fDQ/fDg/ fGYyP3xmND98ZjgpLFxzKnRbYXVdLFxzKm1bYXVdCi0qKiBhZGRcdFthLXgwLTldKyxbYS14MC05 XSssW2EteDAtOV0rCisqKiB2c2V0dmxpXHR6ZXJvLFxzKlthLXgwLTldKyxccyplKDg/fDE2P3wz Mj98NjQpLFxzKm0oMT98Mj98ND98OD98ZjI/fGY0P3xmOCksXHMqdFthdV0sXHMqbVthdV0KKyoq IC4uLgoqKiB2bGUzMlwudlx0dlswLTldKywwXChbYS14MC05XStcKQoqKiAuLi4KKi8KZGlmZiAt LWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYXV0b3ZlYy90ZXJub3Av dGVybm9wX25vZm0tMi5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9hdXRv dmVjL3Rlcm5vcC90ZXJub3Bfbm9mbS0yLmMKaW5kZXggOTY1MzY1ZGE0YmIuLjEzMzY3NDIzNzUx IDEwMDY0NAotLS0gYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2F1dG92ZWMv dGVybm9wL3Rlcm5vcF9ub2ZtLTIuYworKysgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlz Y3YvcnZ2L2F1dG92ZWMvdGVybm9wL3Rlcm5vcF9ub2ZtLTIuYwpAQCAtMyw3ICszLDYgQEAKI2lu Y2x1ZGUgInRlcm5vcC0yLmMiCi0vKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMg e1x0dm1hY2NcLnZ2fSA4IH0gfSAqLwovKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGlt ZXMge1x0dmZtYVtjLWRdW2MtZF1cLnZ2fSA5IH0gfSAqLwovKiB7IGRnLWZpbmFsIHsgc2Nhbi10 cmVlLWR1bXAtdGltZXMgIkNPTkRfTEVOX0ZNQSIgOSAib3B0aW1pemVkIiB9IH0gKi8KLyogeyBk Zy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLW5vdCB7XHR2bXZ9IH0gfSAqLwpkaWZmIC0tZ2l0IGEv Z2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9hdmxwcm9wL3ByMTExODg4LTEuYyBi L2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYXZscHJvcC9wcjExMTg4OC0xLmMK bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLmIwZDIxNjUwYzNkCi0tLSAv ZGV2L251bGwKKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9hdmxwcm9w L3ByMTExODg4LTEuYwpAQCAtMCwwICsxLDE2IEBACisvKiB7IGRnLWRvIGNvbXBpbGUgfSAqLwor LyogeyBkZy1vcHRpb25zICItbWFyY2g9cnY2NGdjdiAtbWFiaT1scDY0ZCAtLXBhcmFtPXJpc2N2 LWF1dG92ZWMtcHJlZmVyZW5jZT1maXhlZC12bG1heCAtTzMiIH0gKi8KKwordm9pZAorZm9vIChp bnQgKl9fcmVzdHJpY3QgYSwgaW50ICpfX3Jlc3RyaWN0IGIsIGludCAqX19yZXN0cmljdCBjLCBp bnQgbikKK3sKK8KgIGZvciAoaW50IGkgPSAwOyBpIDwgbjsgaSsrKQorwqDCoMKgIGFbaV0gPSBi W2ldICsgY1tpXTsKK30KKworLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVzIHt2 c2V0dmxpfSAxIH0gfSAqLworLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLW5vdCB7dnNl dGl2bGl9IH0gfSAqLworLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVzIHt2c2V0 dmxpXHMqW2EteDAtOV0rLFxzKlthLXgwLTldK30gMSB9IH0gKi8KKy8qIHsgZGctZmluYWwgeyBz Y2FuLWFzc2VtYmxlci1ub3Qge3ZzZXR2bGlccypbYS14MC05XSssXHMqemVyb30gfSB9ICovCisv KiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItbm90IHt2c2V0dmxpXHMqemVyb30gfSB9ICov CisvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItbm90IHt2c2V0aXZsaVxzKnplcm99IH0g fSAqLwpkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9hdmxw cm9wL3ByMTExODg4LTIuYyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYXZs cHJvcC9wcjExMTg4OC0yLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAu LmYyZDhhYTU0Yjg4Ci0tLSAvZGV2L251bGwKKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0 L3Jpc2N2L3J2di9hdmxwcm9wL3ByMTExODg4LTIuYwpAQCAtMCwwICsxLDMzIEBACisvKiB7IGRn LWRvIGNvbXBpbGUgfSAqLworLyogeyBkZy1vcHRpb25zICItbWFyY2g9cnY2NGdjdiAtbWFiaT1s cDY0ZCAtLXBhcmFtPXJpc2N2LWF1dG92ZWMtcHJlZmVyZW5jZT1maXhlZC12bG1heCAtTzMiIH0g Ki8KKwordm9pZAorZm9vIChpbnQgKl9fcmVzdHJpY3QgYSwgaW50ICpfX3Jlc3RyaWN0IGIsIGlu dCAqX19yZXN0cmljdCBjLAorwqDCoMKgwqAgaW50ICpfX3Jlc3RyaWN0IGEyLCBpbnQgKl9fcmVz dHJpY3QgYjIsIGludCAqX19yZXN0cmljdCBjMiwKK8KgwqDCoMKgIGludCAqX19yZXN0cmljdCBh MywgaW50ICpfX3Jlc3RyaWN0IGIzLCBpbnQgKl9fcmVzdHJpY3QgYzMsCivCoMKgwqDCoCBpbnQg Kl9fcmVzdHJpY3QgYTQsIGludCAqX19yZXN0cmljdCBiNCwgaW50ICpfX3Jlc3RyaWN0IGM0LAor wqDCoMKgwqAgaW50ICpfX3Jlc3RyaWN0IGE1LCBpbnQgKl9fcmVzdHJpY3QgYjUsIGludCAqX19y ZXN0cmljdCBjNSwKK8KgwqDCoMKgIGludCAqX19yZXN0cmljdCBkLCBpbnQgKl9fcmVzdHJpY3Qg ZDIsIGludCAqX19yZXN0cmljdCBkMywKK8KgwqDCoMKgIGludCAqX19yZXN0cmljdCBkNCwgaW50 ICpfX3Jlc3RyaWN0IGQ1LCBpbnQgbiwgaW50IG0pCit7CivCoCBmb3IgKGludCBpID0gMDsgaSA8 IG47IGkrKykKK8KgwqDCoCB7CivCoMKgwqDCoMKgIGFbaV0gPSBiW2ldICsgY1tpXTsKK8KgwqDC oMKgwqAgYTJbaV0gPSBiMltpXSArIGMyW2ldOworwqDCoMKgwqDCoCBhM1tpXSA9IGIzW2ldICsg YzNbaV07CivCoMKgwqDCoMKgIGE0W2ldID0gYjRbaV0gKyBjNFtpXTsKK8KgwqDCoMKgwqAgYTVb aV0gPSBhW2ldICsgYTRbaV07CivCoMKgwqDCoMKgIGRbaV0gPSBhW2ldIC0gYTJbaV07CivCoMKg wqDCoMKgIGQyW2ldID0gYTJbaV0gKiBhW2ldOworwqDCoMKgwqDCoCBkM1tpXSA9IGEzW2ldICog YTJbaV07CivCoMKgwqDCoMKgIGQ0W2ldID0gYTJbaV0gKiBkMltpXTsKK8KgwqDCoMKgwqAgZDVb aV0gPSBhW2ldICogYTJbaV0gKiBhM1tpXSAqIGE0W2ldICogZFtpXTsKK8KgwqDCoCB9Cit9CisK Ky8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dnNldHZsaX0gMSB9IH0gKi8K Ky8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci1ub3Qge3ZzZXRpdmxpfSB9IH0gKi8KKy8q IHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dnNldHZsaVxzKlthLXgwLTldKyxc cypbYS14MC05XSt9IDEgfSB9ICovCisvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItbm90 IHt2c2V0dmxpXHMqW2EteDAtOV0rLFxzKnplcm99IH0gfSAqLworLyogeyBkZy1maW5hbCB7IHNj YW4tYXNzZW1ibGVyLW5vdCB7dnNldHZsaVxzKnplcm99IH0gfSAqLworLyogeyBkZy1maW5hbCB7 IHNjYW4tYXNzZW1ibGVyLW5vdCB7dnNldGl2bGlccyp6ZXJvfSB9IH0gKi8KZGlmZiAtLWdpdCBh L2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvcnZ2LmV4cCBiL2djYy90ZXN0c3Vp dGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvcnZ2LmV4cAppbmRleCA2NzRiYTBkNzJiNC4uZmM4MzBm MmNkNGQgMTAwNjQ0Ci0tLSBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvcnZ2 LmV4cAorKysgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L3J2di5leHAKQEAg LTQ4LDYgKzQ4LDggQEAgZ2NjLWRnLXJ1bnRlc3QgW2xzb3J0IFtnbG9iIC1ub2NvbXBsYWluICRz cmNkaXIvJHN1YmRpci92c2V0dmwvKi5cW2NTXF1dXSBcCiIiICRDRkxBR1MKZGctcnVudGVzdCBb bHNvcnQgW2dsb2IgLW5vY29tcGxhaW4gJHNyY2Rpci8kc3ViZGlyL2F1dG92ZWMvKi5cW2NTXF1d XSBcCiItTzMgLWZ0cmVlLXZlY3Rvcml6ZSIgJENGTEFHUworZGctcnVudGVzdCBbbHNvcnQgW2ds b2IgLW5vY29tcGxhaW4gJHNyY2Rpci8kc3ViZGlyL2F2bHByb3AvKi5cW2NTXF1dXSBcCisgIi1P MyAtZnRyZWUtdmVjdG9yaXplIC1mbm8tdmVjdC1jb3N0LW1vZGVsIiAkQ0ZMQUdTCmRnLXJ1bnRl c3QgW2xzb3J0IFtnbG9iIC1ub2NvbXBsYWluICRzcmNkaXIvJHN1YmRpci9hdXRvdmVjL3Zscy8q LlxbY1NcXV1dIFwKIi1PMyAtZnRyZWUtdmVjdG9yaXplIC0tcGFyYW0gcmlzY3YtYXV0b3ZlYy1w cmVmZXJlbmNlPXNjYWxhYmxlIiAkQ0ZMQUdTCmRnLXJ1bnRlc3QgW2xzb3J0IFtnbG9iIC1ub2Nv bXBsYWluICRzcmNkaXIvJHN1YmRpci9hdXRvdmVjL3N0cnVjdC8qLlxbY1NcXV1dIFwKLS0KMi4z Ni4zCsKg