Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1pcjqp-0006U7-Ln for pgsql-hackers@arkaria.postgresql.org; Thu, 16 Mar 2023 09:24:48 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1pcjqo-0002ba-I0 for pgsql-hackers@arkaria.postgresql.org; Thu, 16 Mar 2023 09:24:46 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1pcjqn-0002bQ-I7 for pgsql-hackers@lists.postgresql.org; Thu, 16 Mar 2023 09:24:46 +0000 Received: from mail-wm1-x32b.google.com ([2a00:1450:4864:20::32b]) by makus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1pcjqe-0007tM-Mz for pgsql-hackers@lists.postgresql.org; Thu, 16 Mar 2023 09:24:44 +0000 Received: by mail-wm1-x32b.google.com with SMTP id bg16-20020a05600c3c9000b003eb34e21bdfso2711682wmb.0 for ; Thu, 16 Mar 2023 02:24:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; t=1678958675; h=in-reply-to:from:content-language:references:cc:to:subject :user-agent:mime-version:date:message-id:from:to:cc:subject:date :message-id:reply-to; bh=vYoOszaov0do3Wj/8uBOhQCVQci3WZ709VhzIG/nmeE=; b=OZK692H8j4d9SBr8NbV8jFZhnMuLBws3TPxy+EejAXqqPYEkxLlDbpI5yzwCwEtnto buzGMZTaM+6o6noYbCN915kopcp0NhJFXsoBj6TYym5bPJIURV+AOYt+tFsymNgS0cWG wMhfkMrl/zx1Lu3H2c89eYG2hOWewFklkp2HG6ImH7aN8Mk+LN5yv04jLrvbIeXJWT0M ZLX7T1NTMg2t2xYHrWPAs7ZKKqDaklYwezUjFlptB/qCCa7pV0aEdurxGWsDYkJF5JWQ vlShl/EDqJtshdzLHhOeEAXLJ78BOmAalLfcBF6e6xxsvDaIxb8i4aIB89OhJFvEor98 sm+A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1678958675; h=in-reply-to:from:content-language:references:cc:to:subject :user-agent:mime-version:date:message-id:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=vYoOszaov0do3Wj/8uBOhQCVQci3WZ709VhzIG/nmeE=; b=KmlXwrNt/QPwx1Ex1+f8E3rDwf6MhHS19sdaJdDwFT4RBpZMPRpid/7eE1WhKwD2Cq sORnnr/7wyj2xpQo6MjvqAsSCkmr5EsQ3n2OFDCSmfkK43KXbe8sw8ZbNUSE6Wy93NLK oAd74ZRIpPOOQMSAvDv0eMprsea6ha3aoEheQG8YCDzeggIbc7QAGW6/ZfqV9yiASnIj Iibbrtmk3OzfHmLHx5JFO0byb8Ny0M4l7DW/thtFFL08kIR7cOkqww1MoEwrK82yX6Mh iH8meOlmjVoTQ5QlPEgdsS/GcURkurz1DKJ4dWfZ9Tf5a653hmGBPUhL7hzcY4Don5Em biPQ== X-Gm-Message-State: AO0yUKX/JjoRcbYOUhUiUUo5BRhf4nXEulKVP/vRFanKv0zK/HvOMJy3 XN2EPv6qaYubvmrd7x0gVJw= X-Google-Smtp-Source: AK7set+e7POX+6m+xBx8+/P7S0FiCxS86AXONpNDo+VO+SFbbLesCZax7tzA8JfsqPkzc3X9/JOh8Q== X-Received: by 2002:a7b:c7c9:0:b0:3ed:5fe9:bead with SMTP id z9-20020a7bc7c9000000b003ed5fe9beadmr748004wmk.36.1678958675104; Thu, 16 Mar 2023 02:24:35 -0700 (PDT) Received: from [192.168.22.74] ([54.239.6.186]) by smtp.gmail.com with ESMTPSA id y16-20020a05600c365000b003ed2384566fsm4355877wmq.21.2023.03.16.02.24.33 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 16 Mar 2023 02:24:34 -0700 (PDT) Content-Type: multipart/mixed; boundary="------------xQZsuX6E1l6JapNoI5yvr39E" Message-ID: Date: Thu, 16 Mar 2023 10:24:32 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.8.0 Subject: Re: Split index and table statistics into different types of stats To: Michael Paquier Cc: vignesh C , Bharath Rupireddy , Andres Freund , Melanie Plageman , PostgreSQL Hackers References: <20221120231906.aayfz5jpipqd6hoz@awork3.anarazel.de> <06a5ac56-7d9e-ccd8-6566-f076f5139354@gmail.com> <8612273d-8efc-c20a-094f-639fd663c531@gmail.com> <60875d49-56c2-0bef-c699-97494bfeec5a@gmail.com> Content-Language: en-US From: "Drouvot, Bertrand" In-Reply-To: List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk This is a multi-part message in MIME format. --------------xQZsuX6E1l6JapNoI5yvr39E Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 3/16/23 7:54 AM, Michael Paquier wrote: > On Sat, Jan 21, 2023 at 06:42:51AM +0100, Drouvot, Bertrand wrote: >> Please find attached a rebased version (previous comments >> up-thread still need to be addressed though). > > This patch has a lot of conflicts. Could you send a rebased version? Thanks for looking at it! Please find attached v10. Please note that the previous comments up-thread still need to be addressed though, and that this patch is also somehow linked to the: "Generate pg_stat_get_xact*() functions with Macros" patch (see [1]) (which itself has some dependencies, see [2]) My plan was to get [1] done before resuming working on the "Split index and table statistics into different types of stats" one. Regards, [1]: https://commitfest.postgresql.org/42/4106/ [2]: https://www.postgresql.org/message-id/11744b0e-5f7f-aba8-7d9c-2ff0a0c6e2b2%40gmail.com -- Bertrand Drouvot PostgreSQL Contributors Team RDS Open Source Databases Amazon Web Services: https://aws.amazon.com --------------xQZsuX6E1l6JapNoI5yvr39E Content-Type: text/plain; charset=UTF-8; name="v10-0001-split_tables_indexes_stats.patch" Content-Disposition: attachment; filename="v10-0001-split_tables_indexes_stats.patch" Content-Transfer-Encoding: base64 ZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2FjY2Vzcy9jb21tb24vcmVsYXRpb24uYyBiL3Ny Yy9iYWNrZW5kL2FjY2Vzcy9jb21tb24vcmVsYXRpb24uYwppbmRleCA0MDE3ZTE3NWUzLi5m Y2ExNjZhMDYzIDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9hY2Nlc3MvY29tbW9uL3JlbGF0 aW9uLmMKKysrIGIvc3JjL2JhY2tlbmQvYWNjZXNzL2NvbW1vbi9yZWxhdGlvbi5jCkBAIC03 Myw3ICs3MywxMCBAQCByZWxhdGlvbl9vcGVuKE9pZCByZWxhdGlvbklkLCBMT0NLTU9ERSBs b2NrbW9kZSkKIAlpZiAoUmVsYXRpb25Vc2VzTG9jYWxCdWZmZXJzKHIpKQogCQlNeVhhY3RG bGFncyB8PSBYQUNUX0ZMQUdTX0FDQ0VTU0VEVEVNUE5BTUVTUEFDRTsKIAotCXBnc3RhdF9p bml0X3JlbGF0aW9uKHIpOworCWlmIChyLT5yZF9yZWwtPnJlbGtpbmQgPT0gUkVMS0lORF9J TkRFWCkKKwkJcGdzdGF0X2luaXRfaW5kZXgocik7CisJZWxzZQorCQlwZ3N0YXRfaW5pdF90 YWJsZShyKTsKIAogCXJldHVybiByOwogfQpAQCAtMTIzLDcgKzEyNiwxMCBAQCB0cnlfcmVs YXRpb25fb3BlbihPaWQgcmVsYXRpb25JZCwgTE9DS01PREUgbG9ja21vZGUpCiAJaWYgKFJl bGF0aW9uVXNlc0xvY2FsQnVmZmVycyhyKSkKIAkJTXlYYWN0RmxhZ3MgfD0gWEFDVF9GTEFH U19BQ0NFU1NFRFRFTVBOQU1FU1BBQ0U7CiAKLQlwZ3N0YXRfaW5pdF9yZWxhdGlvbihyKTsK KwlpZiAoci0+cmRfcmVsLT5yZWxraW5kID09IFJFTEtJTkRfSU5ERVgpCisJCXBnc3RhdF9p bml0X2luZGV4KHIpOworCWVsc2UKKwkJcGdzdGF0X2luaXRfdGFibGUocik7CiAKIAlyZXR1 cm4gcjsKIH0KZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2FjY2Vzcy9pbmRleC9pbmRleGFt LmMgYi9zcmMvYmFja2VuZC9hY2Nlc3MvaW5kZXgvaW5kZXhhbS5jCmluZGV4IGRiZjE0N2Vk MjIuLjViODMxNDZlZWYgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL2FjY2Vzcy9pbmRleC9p bmRleGFtLmMKKysrIGIvc3JjL2JhY2tlbmQvYWNjZXNzL2luZGV4L2luZGV4YW0uYwpAQCAt NTkwLDcgKzU5MCw3IEBAIGluZGV4X2ZldGNoX2hlYXAoSW5kZXhTY2FuRGVzYyBzY2FuLCBU dXBsZVRhYmxlU2xvdCAqc2xvdCkKIAkJCQkJCQkJCSZzY2FuLT54c19oZWFwX2NvbnRpbnVl LCAmYWxsX2RlYWQpOwogCiAJaWYgKGZvdW5kKQotCQlwZ3N0YXRfY291bnRfaGVhcF9mZXRj aChzY2FuLT5pbmRleFJlbGF0aW9uKTsKKwkJcGdzdGF0X2NvdW50X2luZGV4X2ZldGNoKHNj YW4tPmluZGV4UmVsYXRpb24pOwogCiAJLyoKIAkgKiBJZiB3ZSBzY2FubmVkIGEgd2hvbGUg SE9UIGNoYWluIGFuZCBmb3VuZCBvbmx5IGRlYWQgdHVwbGVzLCB0ZWxsIGluZGV4CmRpZmYg LS1naXQgYS9zcmMvYmFja2VuZC9jYXRhbG9nL2hlYXAuYyBiL3NyYy9iYWNrZW5kL2NhdGFs b2cvaGVhcC5jCmluZGV4IDRmMDA2ODIwYjguLjRlOTU2OWM5MDEgMTAwNjQ0Ci0tLSBhL3Ny Yy9iYWNrZW5kL2NhdGFsb2cvaGVhcC5jCisrKyBiL3NyYy9iYWNrZW5kL2NhdGFsb2cvaGVh cC5jCkBAIC00MDQsNyArNDA0LDEwIEBAIGhlYXBfY3JlYXRlKGNvbnN0IGNoYXIgKnJlbG5h bWUsCiAJCQkJCQkJCQkgcmVsdGFibGVzcGFjZSk7CiAKIAkvKiBlbnN1cmUgdGhhdCBzdGF0 cyBhcmUgZHJvcHBlZCBpZiB0cmFuc2FjdGlvbiBhYm9ydHMgKi8KLQlwZ3N0YXRfY3JlYXRl X3JlbGF0aW9uKHJlbCk7CisJaWYgKHJlbC0+cmRfcmVsLT5yZWxraW5kID09IFJFTEtJTkRf SU5ERVgpCisJCXBnc3RhdF9jcmVhdGVfaW5kZXgocmVsKTsKKwllbHNlCisJCXBnc3RhdF9j cmVhdGVfdGFibGUocmVsKTsKIAogCXJldHVybiByZWw7CiB9CkBAIC0xODUzLDcgKzE4NTYs NyBAQCBoZWFwX2Ryb3Bfd2l0aF9jYXRhbG9nKE9pZCByZWxpZCkKIAkJUmVsYXRpb25Ecm9w U3RvcmFnZShyZWwpOwogCiAJLyogZW5zdXJlIHRoYXQgc3RhdHMgYXJlIGRyb3BwZWQgaWYg dHJhbnNhY3Rpb24gY29tbWl0cyAqLwotCXBnc3RhdF9kcm9wX3JlbGF0aW9uKHJlbCk7CisJ cGdzdGF0X2Ryb3BfdGFibGUocmVsKTsKIAogCS8qCiAJICogQ2xvc2UgcmVsY2FjaGUgZW50 cnksIGJ1dCAqa2VlcCogQWNjZXNzRXhjbHVzaXZlTG9jayBvbiB0aGUgcmVsYXRpb24KZGlm ZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2NhdGFsb2cvaW5kZXguYyBiL3NyYy9iYWNrZW5kL2Nh dGFsb2cvaW5kZXguYwppbmRleCA3Nzc3ZTdlYzc3Li5jYjYwMjQ4NGU3IDEwMDY0NAotLS0g YS9zcmMvYmFja2VuZC9jYXRhbG9nL2luZGV4LmMKKysrIGIvc3JjL2JhY2tlbmQvY2F0YWxv Zy9pbmRleC5jCkBAIC0xNzY1LDcgKzE3NjUsNyBAQCBpbmRleF9jb25jdXJyZW50bHlfc3dh cChPaWQgbmV3SW5kZXhJZCwgT2lkIG9sZEluZGV4SWQsIGNvbnN0IGNoYXIgKm9sZE5hbWUp CiAJY2hhbmdlRGVwZW5kZW5jaWVzT24oUmVsYXRpb25SZWxhdGlvbklkLCBvbGRJbmRleElk LCBuZXdJbmRleElkKTsKIAogCS8qIGNvcHkgb3ZlciBzdGF0aXN0aWNzIGZyb20gb2xkIHRv IG5ldyBpbmRleCAqLwotCXBnc3RhdF9jb3B5X3JlbGF0aW9uX3N0YXRzKG5ld0NsYXNzUmVs LCBvbGRDbGFzc1JlbCk7CisJcGdzdGF0X2NvcHlfaW5kZXhfc3RhdHMobmV3Q2xhc3NSZWws IG9sZENsYXNzUmVsKTsKIAogCS8qIENvcHkgZGF0YSBvZiBwZ19zdGF0aXN0aWMgZnJvbSB0 aGUgb2xkIGluZGV4IHRvIHRoZSBuZXcgb25lICovCiAJQ29weVN0YXRpc3RpY3Mob2xkSW5k ZXhJZCwgbmV3SW5kZXhJZCk7CkBAIC0yMzM5LDcgKzIzMzksNyBAQCBpbmRleF9kcm9wKE9p ZCBpbmRleElkLCBib29sIGNvbmN1cnJlbnQsIGJvb2wgY29uY3VycmVudF9sb2NrX21vZGUp CiAJCVJlbGF0aW9uRHJvcFN0b3JhZ2UodXNlckluZGV4UmVsYXRpb24pOwogCiAJLyogZW5z dXJlIHRoYXQgc3RhdHMgYXJlIGRyb3BwZWQgaWYgdHJhbnNhY3Rpb24gY29tbWl0cyAqLwot CXBnc3RhdF9kcm9wX3JlbGF0aW9uKHVzZXJJbmRleFJlbGF0aW9uKTsKKwlwZ3N0YXRfZHJv cF9pbmRleCh1c2VySW5kZXhSZWxhdGlvbik7CiAKIAkvKgogCSAqIENsb3NlIGFuZCBmbHVz aCB0aGUgaW5kZXgncyByZWxjYWNoZSBlbnRyeSwgdG8gZW5zdXJlIHJlbGNhY2hlIGRvZXNu J3QKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2NhdGFsb2cvc3lzdGVtX3ZpZXdzLnNxbCBi L3NyYy9iYWNrZW5kL2NhdGFsb2cvc3lzdGVtX3ZpZXdzLnNxbAppbmRleCAzNGNhMGU3Mzlm Li41YTBmZTBkOTlhIDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9jYXRhbG9nL3N5c3RlbV92 aWV3cy5zcWwKKysrIGIvc3JjL2JhY2tlbmQvY2F0YWxvZy9zeXN0ZW1fdmlld3Muc3FsCkBA IC02NTQsMjkgKzY1NCwyOSBAQCBDUkVBVEUgVklFVyBwZ19zdGF0X2FsbF90YWJsZXMgQVMK ICAgICAgICAgICAgIEMub2lkIEFTIHJlbGlkLAogICAgICAgICAgICAgTi5uc3BuYW1lIEFT IHNjaGVtYW5hbWUsCiAgICAgICAgICAgICBDLnJlbG5hbWUgQVMgcmVsbmFtZSwKLSAgICAg ICAgICAgIHBnX3N0YXRfZ2V0X251bXNjYW5zKEMub2lkKSBBUyBzZXFfc2NhbiwKLSAgICAg ICAgICAgIHBnX3N0YXRfZ2V0X2xhc3RzY2FuKEMub2lkKSBBUyBsYXN0X3NlcV9zY2FuLAot ICAgICAgICAgICAgcGdfc3RhdF9nZXRfdHVwbGVzX3JldHVybmVkKEMub2lkKSBBUyBzZXFf dHVwX3JlYWQsCi0gICAgICAgICAgICBzdW0ocGdfc3RhdF9nZXRfbnVtc2NhbnMoSS5pbmRl eHJlbGlkKSk6OmJpZ2ludCBBUyBpZHhfc2NhbiwKLSAgICAgICAgICAgIG1heChwZ19zdGF0 X2dldF9sYXN0c2NhbihJLmluZGV4cmVsaWQpKSBBUyBsYXN0X2lkeF9zY2FuLAotICAgICAg ICAgICAgc3VtKHBnX3N0YXRfZ2V0X3R1cGxlc19mZXRjaGVkKEkuaW5kZXhyZWxpZCkpOjpi aWdpbnQgKwotICAgICAgICAgICAgcGdfc3RhdF9nZXRfdHVwbGVzX2ZldGNoZWQoQy5vaWQp IEFTIGlkeF90dXBfZmV0Y2gsCi0gICAgICAgICAgICBwZ19zdGF0X2dldF90dXBsZXNfaW5z ZXJ0ZWQoQy5vaWQpIEFTIG5fdHVwX2lucywKLSAgICAgICAgICAgIHBnX3N0YXRfZ2V0X3R1 cGxlc191cGRhdGVkKEMub2lkKSBBUyBuX3R1cF91cGQsCi0gICAgICAgICAgICBwZ19zdGF0 X2dldF90dXBsZXNfZGVsZXRlZChDLm9pZCkgQVMgbl90dXBfZGVsLAotICAgICAgICAgICAg cGdfc3RhdF9nZXRfdHVwbGVzX2hvdF91cGRhdGVkKEMub2lkKSBBUyBuX3R1cF9ob3RfdXBk LAotICAgICAgICAgICAgcGdfc3RhdF9nZXRfbGl2ZV90dXBsZXMoQy5vaWQpIEFTIG5fbGl2 ZV90dXAsCi0gICAgICAgICAgICBwZ19zdGF0X2dldF9kZWFkX3R1cGxlcyhDLm9pZCkgQVMg bl9kZWFkX3R1cCwKLSAgICAgICAgICAgIHBnX3N0YXRfZ2V0X21vZF9zaW5jZV9hbmFseXpl KEMub2lkKSBBUyBuX21vZF9zaW5jZV9hbmFseXplLAotICAgICAgICAgICAgcGdfc3RhdF9n ZXRfaW5zX3NpbmNlX3ZhY3V1bShDLm9pZCkgQVMgbl9pbnNfc2luY2VfdmFjdXVtLAotICAg ICAgICAgICAgcGdfc3RhdF9nZXRfbGFzdF92YWN1dW1fdGltZShDLm9pZCkgYXMgbGFzdF92 YWN1dW0sCi0gICAgICAgICAgICBwZ19zdGF0X2dldF9sYXN0X2F1dG92YWN1dW1fdGltZShD Lm9pZCkgYXMgbGFzdF9hdXRvdmFjdXVtLAotICAgICAgICAgICAgcGdfc3RhdF9nZXRfbGFz dF9hbmFseXplX3RpbWUoQy5vaWQpIGFzIGxhc3RfYW5hbHl6ZSwKLSAgICAgICAgICAgIHBn X3N0YXRfZ2V0X2xhc3RfYXV0b2FuYWx5emVfdGltZShDLm9pZCkgYXMgbGFzdF9hdXRvYW5h bHl6ZSwKLSAgICAgICAgICAgIHBnX3N0YXRfZ2V0X3ZhY3V1bV9jb3VudChDLm9pZCkgQVMg dmFjdXVtX2NvdW50LAotICAgICAgICAgICAgcGdfc3RhdF9nZXRfYXV0b3ZhY3V1bV9jb3Vu dChDLm9pZCkgQVMgYXV0b3ZhY3V1bV9jb3VudCwKLSAgICAgICAgICAgIHBnX3N0YXRfZ2V0 X2FuYWx5emVfY291bnQoQy5vaWQpIEFTIGFuYWx5emVfY291bnQsCi0gICAgICAgICAgICBw Z19zdGF0X2dldF9hdXRvYW5hbHl6ZV9jb3VudChDLm9pZCkgQVMgYXV0b2FuYWx5emVfY291 bnQKKyAgICAgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl9udW1zY2FucyhDLm9pZCkgQVMgc2Vx X3NjYW4sCisgICAgICAgICAgICBwZ19zdGF0X2dldF90YWJfbGFzdHNjYW4oQy5vaWQpIEFT IGxhc3Rfc2VxX3NjYW4sCisgICAgICAgICAgICBwZ19zdGF0X2dldF90YWJfdHVwbGVzX3Jl dHVybmVkKEMub2lkKSBBUyBzZXFfdHVwX3JlYWQsCisgICAgICAgICAgICBzdW0ocGdfc3Rh dF9nZXRfaW5kX251bXNjYW5zKEkuaW5kZXhyZWxpZCkpOjpiaWdpbnQgQVMgaWR4X3NjYW4s CisgICAgICAgICAgICBtYXgocGdfc3RhdF9nZXRfaW5kX2xhc3RzY2FuKEkuaW5kZXhyZWxp ZCkpIEFTIGxhc3RfaWR4X3NjYW4sCisgICAgICAgICAgICBzdW0ocGdfc3RhdF9nZXRfaW5k X3R1cGxlc19mZXRjaGVkKEkuaW5kZXhyZWxpZCkpOjpiaWdpbnQgKworICAgICAgICAgICAg cGdfc3RhdF9nZXRfdGFiX3R1cGxlc19mZXRjaGVkKEMub2lkKSBBUyBpZHhfdHVwX2ZldGNo LAorICAgICAgICAgICAgcGdfc3RhdF9nZXRfdGFiX3R1cGxlc19pbnNlcnRlZChDLm9pZCkg QVMgbl90dXBfaW5zLAorICAgICAgICAgICAgcGdfc3RhdF9nZXRfdGFiX3R1cGxlc191cGRh dGVkKEMub2lkKSBBUyBuX3R1cF91cGQsCisgICAgICAgICAgICBwZ19zdGF0X2dldF90YWJf dHVwbGVzX2RlbGV0ZWQoQy5vaWQpIEFTIG5fdHVwX2RlbCwKKyAgICAgICAgICAgIHBnX3N0 YXRfZ2V0X3RhYl90dXBsZXNfaG90X3VwZGF0ZWQoQy5vaWQpIEFTIG5fdHVwX2hvdF91cGQs CisgICAgICAgICAgICBwZ19zdGF0X2dldF90YWJfbGl2ZV90dXBsZXMoQy5vaWQpIEFTIG5f bGl2ZV90dXAsCisgICAgICAgICAgICBwZ19zdGF0X2dldF90YWJfZGVhZF90dXBsZXMoQy5v aWQpIEFTIG5fZGVhZF90dXAsCisgICAgICAgICAgICBwZ19zdGF0X2dldF90YWJfbW9kX3Np bmNlX2FuYWx5emUoQy5vaWQpIEFTIG5fbW9kX3NpbmNlX2FuYWx5emUsCisgICAgICAgICAg ICBwZ19zdGF0X2dldF90YWJfaW5zX3NpbmNlX3ZhY3V1bShDLm9pZCkgQVMgbl9pbnNfc2lu Y2VfdmFjdXVtLAorICAgICAgICAgICAgcGdfc3RhdF9nZXRfdGFiX2xhc3RfdmFjdXVtX3Rp bWUoQy5vaWQpIGFzIGxhc3RfdmFjdXVtLAorICAgICAgICAgICAgcGdfc3RhdF9nZXRfdGFi X2xhc3RfYXV0b3ZhY3V1bV90aW1lKEMub2lkKSBhcyBsYXN0X2F1dG92YWN1dW0sCisgICAg ICAgICAgICBwZ19zdGF0X2dldF90YWJfbGFzdF9hbmFseXplX3RpbWUoQy5vaWQpIGFzIGxh c3RfYW5hbHl6ZSwKKyAgICAgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl9sYXN0X2F1dG9hbmFs eXplX3RpbWUoQy5vaWQpIGFzIGxhc3RfYXV0b2FuYWx5emUsCisgICAgICAgICAgICBwZ19z dGF0X2dldF90YWJfdmFjdXVtX2NvdW50KEMub2lkKSBBUyB2YWN1dW1fY291bnQsCisgICAg ICAgICAgICBwZ19zdGF0X2dldF90YWJfYXV0b3ZhY3V1bV9jb3VudChDLm9pZCkgQVMgYXV0 b3ZhY3V1bV9jb3VudCwKKyAgICAgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl9hbmFseXplX2Nv dW50KEMub2lkKSBBUyBhbmFseXplX2NvdW50LAorICAgICAgICAgICAgcGdfc3RhdF9nZXRf dGFiX2F1dG9hbmFseXplX2NvdW50KEMub2lkKSBBUyBhdXRvYW5hbHl6ZV9jb3VudAogICAg IEZST00gcGdfY2xhc3MgQyBMRUZUIEpPSU4KICAgICAgICAgIHBnX2luZGV4IEkgT04gQy5v aWQgPSBJLmluZHJlbGlkCiAgICAgICAgICBMRUZUIEpPSU4gcGdfbmFtZXNwYWNlIE4gT04g KE4ub2lkID0gQy5yZWxuYW1lc3BhY2UpCkBAIC02ODgsOSArNjg4LDkgQEAgQ1JFQVRFIFZJ RVcgcGdfc3RhdF94YWN0X2FsbF90YWJsZXMgQVMKICAgICAgICAgICAgIEMub2lkIEFTIHJl bGlkLAogICAgICAgICAgICAgTi5uc3BuYW1lIEFTIHNjaGVtYW5hbWUsCiAgICAgICAgICAg ICBDLnJlbG5hbWUgQVMgcmVsbmFtZSwKLSAgICAgICAgICAgIHBnX3N0YXRfZ2V0X3hhY3Rf bnVtc2NhbnMoQy5vaWQpIEFTIHNlcV9zY2FuLAorICAgICAgICAgICAgcGdfc3RhdF9nZXRf dGFiX3hhY3RfbnVtc2NhbnMoQy5vaWQpIEFTIHNlcV9zY2FuLAogICAgICAgICAgICAgcGdf c3RhdF9nZXRfeGFjdF90dXBsZXNfcmV0dXJuZWQoQy5vaWQpIEFTIHNlcV90dXBfcmVhZCwK LSAgICAgICAgICAgIHN1bShwZ19zdGF0X2dldF94YWN0X251bXNjYW5zKEkuaW5kZXhyZWxp ZCkpOjpiaWdpbnQgQVMgaWR4X3NjYW4sCisgICAgICAgICAgICBzdW0ocGdfc3RhdF9nZXRf aW5kX3hhY3RfbnVtc2NhbnMoSS5pbmRleHJlbGlkKSk6OmJpZ2ludCBBUyBpZHhfc2NhbiwK ICAgICAgICAgICAgIHN1bShwZ19zdGF0X2dldF94YWN0X3R1cGxlc19mZXRjaGVkKEkuaW5k ZXhyZWxpZCkpOjpiaWdpbnQgKwogICAgICAgICAgICAgcGdfc3RhdF9nZXRfeGFjdF90dXBs ZXNfZmV0Y2hlZChDLm9pZCkgQVMgaWR4X3R1cF9mZXRjaCwKICAgICAgICAgICAgIHBnX3N0 YXRfZ2V0X3hhY3RfdHVwbGVzX2luc2VydGVkKEMub2lkKSBBUyBuX3R1cF9pbnMsCkBAIC03 MjgsMzEgKzcyOCwzMSBAQCBDUkVBVEUgVklFVyBwZ19zdGF0aW9fYWxsX3RhYmxlcyBBUwog ICAgICAgICAgICAgQy5vaWQgQVMgcmVsaWQsCiAgICAgICAgICAgICBOLm5zcG5hbWUgQVMg c2NoZW1hbmFtZSwKICAgICAgICAgICAgIEMucmVsbmFtZSBBUyByZWxuYW1lLAotICAgICAg ICAgICAgcGdfc3RhdF9nZXRfYmxvY2tzX2ZldGNoZWQoQy5vaWQpIC0KLSAgICAgICAgICAg ICAgICAgICAgcGdfc3RhdF9nZXRfYmxvY2tzX2hpdChDLm9pZCkgQVMgaGVhcF9ibGtzX3Jl YWQsCi0gICAgICAgICAgICBwZ19zdGF0X2dldF9ibG9ja3NfaGl0KEMub2lkKSBBUyBoZWFw X2Jsa3NfaGl0LAorICAgICAgICAgICAgcGdfc3RhdF9nZXRfdGFiX2Jsb2Nrc19mZXRjaGVk KEMub2lkKSAtCisgICAgICAgICAgICAgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl9ibG9ja3Nf aGl0KEMub2lkKSBBUyBoZWFwX2Jsa3NfcmVhZCwKKyAgICAgICAgICAgIHBnX3N0YXRfZ2V0 X3RhYl9ibG9ja3NfaGl0KEMub2lkKSBBUyBoZWFwX2Jsa3NfaGl0LAogICAgICAgICAgICAg SS5pZHhfYmxrc19yZWFkIEFTIGlkeF9ibGtzX3JlYWQsCiAgICAgICAgICAgICBJLmlkeF9i bGtzX2hpdCBBUyBpZHhfYmxrc19oaXQsCi0gICAgICAgICAgICBwZ19zdGF0X2dldF9ibG9j a3NfZmV0Y2hlZChULm9pZCkgLQotICAgICAgICAgICAgICAgICAgICBwZ19zdGF0X2dldF9i bG9ja3NfaGl0KFQub2lkKSBBUyB0b2FzdF9ibGtzX3JlYWQsCi0gICAgICAgICAgICBwZ19z dGF0X2dldF9ibG9ja3NfaGl0KFQub2lkKSBBUyB0b2FzdF9ibGtzX2hpdCwKKyAgICAgICAg ICAgIHBnX3N0YXRfZ2V0X3RhYl9ibG9ja3NfZmV0Y2hlZChULm9pZCkgLQorICAgICAgICAg ICAgICAgICAgICBwZ19zdGF0X2dldF90YWJfYmxvY2tzX2hpdChULm9pZCkgQVMgdG9hc3Rf Ymxrc19yZWFkLAorICAgICAgICAgICAgcGdfc3RhdF9nZXRfdGFiX2Jsb2Nrc19oaXQoVC5v aWQpIEFTIHRvYXN0X2Jsa3NfaGl0LAogICAgICAgICAgICAgWC5pZHhfYmxrc19yZWFkIEFT IHRpZHhfYmxrc19yZWFkLAogICAgICAgICAgICAgWC5pZHhfYmxrc19oaXQgQVMgdGlkeF9i bGtzX2hpdAogICAgIEZST00gcGdfY2xhc3MgQyBMRUZUIEpPSU4KICAgICAgICAgICAgIHBn X2NsYXNzIFQgT04gQy5yZWx0b2FzdHJlbGlkID0gVC5vaWQKICAgICAgICAgICAgIExFRlQg Sk9JTiBwZ19uYW1lc3BhY2UgTiBPTiAoTi5vaWQgPSBDLnJlbG5hbWVzcGFjZSkKICAgICAg ICAgICAgIExFRlQgSk9JTiBMQVRFUkFMICgKLSAgICAgICAgICAgICAgU0VMRUNUIHN1bShw Z19zdGF0X2dldF9ibG9ja3NfZmV0Y2hlZChpbmRleHJlbGlkKSAtCi0gICAgICAgICAgICAg ICAgICAgICAgICAgcGdfc3RhdF9nZXRfYmxvY2tzX2hpdChpbmRleHJlbGlkKSk6OmJpZ2lu dAorICAgICAgICAgICAgICBTRUxFQ1Qgc3VtKHBnX3N0YXRfZ2V0X2luZF9ibG9ja3NfZmV0 Y2hlZChpbmRleHJlbGlkKSAtCisgICAgICAgICAgICAgICAgICAgICAgICAgcGdfc3RhdF9n ZXRfaW5kX2Jsb2Nrc19oaXQoaW5kZXhyZWxpZCkpOjpiaWdpbnQKICAgICAgICAgICAgICAg ICAgICAgIEFTIGlkeF9ibGtzX3JlYWQsCi0gICAgICAgICAgICAgICAgICAgICBzdW0ocGdf c3RhdF9nZXRfYmxvY2tzX2hpdChpbmRleHJlbGlkKSk6OmJpZ2ludAorICAgICAgICAgICAg ICAgICAgICAgc3VtKHBnX3N0YXRfZ2V0X2luZF9ibG9ja3NfaGl0KGluZGV4cmVsaWQpKTo6 YmlnaW50CiAgICAgICAgICAgICAgICAgICAgICBBUyBpZHhfYmxrc19oaXQKICAgICAgICAg ICAgICAgRlJPTSBwZ19pbmRleCBXSEVSRSBpbmRyZWxpZCA9IEMub2lkICkgSSBPTiB0cnVl CiAgICAgICAgICAgICBMRUZUIEpPSU4gTEFURVJBTCAoCi0gICAgICAgICAgICAgIFNFTEVD VCBzdW0ocGdfc3RhdF9nZXRfYmxvY2tzX2ZldGNoZWQoaW5kZXhyZWxpZCkgLQotICAgICAg ICAgICAgICAgICAgICAgICAgIHBnX3N0YXRfZ2V0X2Jsb2Nrc19oaXQoaW5kZXhyZWxpZCkp OjpiaWdpbnQKKyAgICAgICAgICAgICAgU0VMRUNUIHN1bShwZ19zdGF0X2dldF9pbmRfYmxv Y2tzX2ZldGNoZWQoaW5kZXhyZWxpZCkgLQorICAgICAgICAgICAgICAgICAgICAgICAgIHBn X3N0YXRfZ2V0X2luZF9ibG9ja3NfaGl0KGluZGV4cmVsaWQpKTo6YmlnaW50CiAgICAgICAg ICAgICAgICAgICAgICBBUyBpZHhfYmxrc19yZWFkLAotICAgICAgICAgICAgICAgICAgICAg c3VtKHBnX3N0YXRfZ2V0X2Jsb2Nrc19oaXQoaW5kZXhyZWxpZCkpOjpiaWdpbnQKKyAgICAg ICAgICAgICAgICAgICAgIHN1bShwZ19zdGF0X2dldF9pbmRfYmxvY2tzX2hpdChpbmRleHJl bGlkKSk6OmJpZ2ludAogICAgICAgICAgICAgICAgICAgICAgQVMgaWR4X2Jsa3NfaGl0CiAg ICAgICAgICAgICAgIEZST00gcGdfaW5kZXggV0hFUkUgaW5kcmVsaWQgPSBULm9pZCApIFgg T04gdHJ1ZQogICAgIFdIRVJFIEMucmVsa2luZCBJTiAoJ3InLCAndCcsICdtJyk7CkBAIC03 NzQsMTAgKzc3NCwxMCBAQCBDUkVBVEUgVklFVyBwZ19zdGF0X2FsbF9pbmRleGVzIEFTCiAg ICAgICAgICAgICBOLm5zcG5hbWUgQVMgc2NoZW1hbmFtZSwKICAgICAgICAgICAgIEMucmVs bmFtZSBBUyByZWxuYW1lLAogICAgICAgICAgICAgSS5yZWxuYW1lIEFTIGluZGV4cmVsbmFt ZSwKLSAgICAgICAgICAgIHBnX3N0YXRfZ2V0X251bXNjYW5zKEkub2lkKSBBUyBpZHhfc2Nh biwKLSAgICAgICAgICAgIHBnX3N0YXRfZ2V0X2xhc3RzY2FuKEkub2lkKSBBUyBsYXN0X2lk eF9zY2FuLAotICAgICAgICAgICAgcGdfc3RhdF9nZXRfdHVwbGVzX3JldHVybmVkKEkub2lk KSBBUyBpZHhfdHVwX3JlYWQsCi0gICAgICAgICAgICBwZ19zdGF0X2dldF90dXBsZXNfZmV0 Y2hlZChJLm9pZCkgQVMgaWR4X3R1cF9mZXRjaAorICAgICAgICAgICAgcGdfc3RhdF9nZXRf aW5kX251bXNjYW5zKEkub2lkKSBBUyBpZHhfc2NhbiwKKyAgICAgICAgICAgIHBnX3N0YXRf Z2V0X2luZF9sYXN0c2NhbihJLm9pZCkgQVMgbGFzdF9pZHhfc2NhbiwKKyAgICAgICAgICAg IHBnX3N0YXRfZ2V0X2luZF90dXBsZXNfcmV0dXJuZWQoSS5vaWQpIEFTIGlkeF90dXBfcmVh ZCwKKyAgICAgICAgICAgIHBnX3N0YXRfZ2V0X2luZF90dXBsZXNfZmV0Y2hlZChJLm9pZCkg QVMgaWR4X3R1cF9mZXRjaAogICAgIEZST00gcGdfY2xhc3MgQyBKT0lOCiAgICAgICAgICAg ICBwZ19pbmRleCBYIE9OIEMub2lkID0gWC5pbmRyZWxpZCBKT0lOCiAgICAgICAgICAgICBw Z19jbGFzcyBJIE9OIEkub2lkID0gWC5pbmRleHJlbGlkCkBAIC04MDEsOSArODAxLDkgQEAg Q1JFQVRFIFZJRVcgcGdfc3RhdGlvX2FsbF9pbmRleGVzIEFTCiAgICAgICAgICAgICBOLm5z cG5hbWUgQVMgc2NoZW1hbmFtZSwKICAgICAgICAgICAgIEMucmVsbmFtZSBBUyByZWxuYW1l LAogICAgICAgICAgICAgSS5yZWxuYW1lIEFTIGluZGV4cmVsbmFtZSwKLSAgICAgICAgICAg IHBnX3N0YXRfZ2V0X2Jsb2Nrc19mZXRjaGVkKEkub2lkKSAtCi0gICAgICAgICAgICAgICAg ICAgIHBnX3N0YXRfZ2V0X2Jsb2Nrc19oaXQoSS5vaWQpIEFTIGlkeF9ibGtzX3JlYWQsCi0g ICAgICAgICAgICBwZ19zdGF0X2dldF9ibG9ja3NfaGl0KEkub2lkKSBBUyBpZHhfYmxrc19o aXQKKyAgICAgICAgICAgIHBnX3N0YXRfZ2V0X2luZF9ibG9ja3NfZmV0Y2hlZChJLm9pZCkg LQorICAgICAgICAgICAgICAgICAgICBwZ19zdGF0X2dldF9pbmRfYmxvY2tzX2hpdChJLm9p ZCkgQVMgaWR4X2Jsa3NfcmVhZCwKKyAgICAgICAgICAgIHBnX3N0YXRfZ2V0X2luZF9ibG9j a3NfaGl0KEkub2lkKSBBUyBpZHhfYmxrc19oaXQKICAgICBGUk9NIHBnX2NsYXNzIEMgSk9J TgogICAgICAgICAgICAgcGdfaW5kZXggWCBPTiBDLm9pZCA9IFguaW5kcmVsaWQgSk9JTgog ICAgICAgICAgICAgcGdfY2xhc3MgSSBPTiBJLm9pZCA9IFguaW5kZXhyZWxpZApAQCAtODI1 LDkgKzgyNSw5IEBAIENSRUFURSBWSUVXIHBnX3N0YXRpb19hbGxfc2VxdWVuY2VzIEFTCiAg ICAgICAgICAgICBDLm9pZCBBUyByZWxpZCwKICAgICAgICAgICAgIE4ubnNwbmFtZSBBUyBz Y2hlbWFuYW1lLAogICAgICAgICAgICAgQy5yZWxuYW1lIEFTIHJlbG5hbWUsCi0gICAgICAg ICAgICBwZ19zdGF0X2dldF9ibG9ja3NfZmV0Y2hlZChDLm9pZCkgLQotICAgICAgICAgICAg ICAgICAgICBwZ19zdGF0X2dldF9ibG9ja3NfaGl0KEMub2lkKSBBUyBibGtzX3JlYWQsCi0g ICAgICAgICAgICBwZ19zdGF0X2dldF9ibG9ja3NfaGl0KEMub2lkKSBBUyBibGtzX2hpdAor ICAgICAgICAgICAgcGdfc3RhdF9nZXRfaW5kX2Jsb2Nrc19mZXRjaGVkKEMub2lkKSAtCisg ICAgICAgICAgICAgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl9ibG9ja3NfaGl0KEMub2lkKSBB UyBibGtzX3JlYWQsCisgICAgICAgICAgICBwZ19zdGF0X2dldF90YWJfYmxvY2tzX2hpdChD Lm9pZCkgQVMgYmxrc19oaXQKICAgICBGUk9NIHBnX2NsYXNzIEMKICAgICAgICAgICAgIExF RlQgSk9JTiBwZ19uYW1lc3BhY2UgTiBPTiAoTi5vaWQgPSBDLnJlbG5hbWVzcGFjZSkKICAg ICBXSEVSRSBDLnJlbGtpbmQgPSAnUyc7CmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9zdG9y YWdlL2J1ZmZlci9idWZtZ3IuYyBiL3NyYy9iYWNrZW5kL3N0b3JhZ2UvYnVmZmVyL2J1Zm1n ci5jCmluZGV4IDBhMDU1NzdiNjguLmRhYTMwNDZiYzYgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNr ZW5kL3N0b3JhZ2UvYnVmZmVyL2J1Zm1nci5jCisrKyBiL3NyYy9iYWNrZW5kL3N0b3JhZ2Uv YnVmZmVyL2J1Zm1nci5jCkBAIC03NjgsMTEgKzc2OCwxOSBAQCBSZWFkQnVmZmVyRXh0ZW5k ZWQoUmVsYXRpb24gcmVsbiwgRm9ya051bWJlciBmb3JrTnVtLCBCbG9ja051bWJlciBibG9j a051bSwKIAkgKiBSZWFkIHRoZSBidWZmZXIsIGFuZCB1cGRhdGUgcGdzdGF0IGNvdW50ZXJz IHRvIHJlZmxlY3QgYSBjYWNoZSBoaXQgb3IKIAkgKiBtaXNzLgogCSAqLwotCXBnc3RhdF9j b3VudF9idWZmZXJfcmVhZChyZWxuKTsKKwlpZiAocmVsbi0+cmRfcmVsLT5yZWxraW5kID09 IFJFTEtJTkRfSU5ERVgpCisJCXBnc3RhdF9jb3VudF9pbmRleF9idWZmZXJfcmVhZChyZWxu KTsKKwllbHNlCisJCXBnc3RhdF9jb3VudF90YWJsZV9idWZmZXJfcmVhZChyZWxuKTsKIAli dWYgPSBSZWFkQnVmZmVyX2NvbW1vbihSZWxhdGlvbkdldFNtZ3IocmVsbiksIHJlbG4tPnJk X3JlbC0+cmVscGVyc2lzdGVuY2UsCiAJCQkJCQkJZm9ya051bSwgYmxvY2tOdW0sIG1vZGUs IHN0cmF0ZWd5LCAmaGl0KTsKIAlpZiAoaGl0KQotCQlwZ3N0YXRfY291bnRfYnVmZmVyX2hp dChyZWxuKTsKKwl7CisJCWlmIChyZWxuLT5yZF9yZWwtPnJlbGtpbmQgPT0gUkVMS0lORF9J TkRFWCkKKwkJCXBnc3RhdF9jb3VudF9pbmRleF9idWZmZXJfaGl0KHJlbG4pOworCQllbHNl CisJCQlwZ3N0YXRfY291bnRfdGFibGVfYnVmZmVyX2hpdChyZWxuKTsKKwl9CiAJcmV0dXJu IGJ1ZjsKIH0KIApkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvdXRpbHMvYWN0aXZpdHkvTWFr ZWZpbGUgYi9zcmMvYmFja2VuZC91dGlscy9hY3Rpdml0eS9NYWtlZmlsZQppbmRleCA3ZDc0 ODJkZGUwLi5hNzNkNTI5ODk0IDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC91dGlscy9hY3Rp dml0eS9NYWtlZmlsZQorKysgYi9zcmMvYmFja2VuZC91dGlscy9hY3Rpdml0eS9NYWtlZmls ZQpAQCAtMjMsMTEgKzIzLDEyIEBAIE9CSlMgPSBcCiAJcGdzdGF0X2RhdGFiYXNlLm8gXAog CXBnc3RhdF9mdW5jdGlvbi5vIFwKIAlwZ3N0YXRfaW8ubyBcCi0JcGdzdGF0X3JlbGF0aW9u Lm8gXAorCXBnc3RhdF9pbmRleC5vIFwKIAlwZ3N0YXRfcmVwbHNsb3QubyBcCiAJcGdzdGF0 X3NobWVtLm8gXAogCXBnc3RhdF9zbHJ1Lm8gXAogCXBnc3RhdF9zdWJzY3JpcHRpb24ubyBc CisJcGdzdGF0X3RhYmxlLm8gXAogCXBnc3RhdF93YWwubyBcCiAJcGdzdGF0X3hhY3QubyBc CiAJd2FpdF9ldmVudC5vCmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC91dGlscy9hY3Rpdml0 eS9tZXNvbi5idWlsZCBiL3NyYy9iYWNrZW5kL3V0aWxzL2FjdGl2aXR5L21lc29uLmJ1aWxk CmluZGV4IDUxOGVlM2Y3OTguLjgwZDYxMWM0MGQgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5k L3V0aWxzL2FjdGl2aXR5L21lc29uLmJ1aWxkCisrKyBiL3NyYy9iYWNrZW5kL3V0aWxzL2Fj dGl2aXR5L21lc29uLmJ1aWxkCkBAIC0xMCwxMSArMTAsMTIgQEAgYmFja2VuZF9zb3VyY2Vz ICs9IGZpbGVzKAogICAncGdzdGF0X2RhdGFiYXNlLmMnLAogICAncGdzdGF0X2Z1bmN0aW9u LmMnLAogICAncGdzdGF0X2lvLmMnLAotICAncGdzdGF0X3JlbGF0aW9uLmMnLAorICAncGdz dGF0X2luZGV4LmMnLAogICAncGdzdGF0X3JlcGxzbG90LmMnLAogICAncGdzdGF0X3NobWVt LmMnLAogICAncGdzdGF0X3NscnUuYycsCiAgICdwZ3N0YXRfc3Vic2NyaXB0aW9uLmMnLAor ICAncGdzdGF0X3RhYmxlLmMnLAogICAncGdzdGF0X3dhbC5jJywKICAgJ3Bnc3RhdF94YWN0 LmMnLAogICAnd2FpdF9ldmVudC5jJywKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL3V0aWxz L2FjdGl2aXR5L3Bnc3RhdC5jIGIvc3JjL2JhY2tlbmQvdXRpbHMvYWN0aXZpdHkvcGdzdGF0 LmMKaW5kZXggYjEyNTgwMmIyMS4uMDNlZGQxMjY1YyAxMDA2NDQKLS0tIGEvc3JjL2JhY2tl bmQvdXRpbHMvYWN0aXZpdHkvcGdzdGF0LmMKKysrIGIvc3JjL2JhY2tlbmQvdXRpbHMvYWN0 aXZpdHkvcGdzdGF0LmMKQEAgLTczLDEwICs3MywxMSBAQAogICogLSBwZ3N0YXRfZGF0YWJh c2UuYwogICogLSBwZ3N0YXRfZnVuY3Rpb24uYwogICogLSBwZ3N0YXRfaW8uYwotICogLSBw Z3N0YXRfcmVsYXRpb24uYworICogLSBwZ3N0YXRfaW5kZXguYwogICogLSBwZ3N0YXRfcmVw bHNsb3QuYwogICogLSBwZ3N0YXRfc2xydS5jCiAgKiAtIHBnc3RhdF9zdWJzY3JpcHRpb24u YworICogLSBwZ3N0YXRfdGFibGUuYwogICogLSBwZ3N0YXRfd2FsLmMKICAqCiAgKiBXaGVu ZXZlciBwb3NzaWJsZSBpbmZyYXN0cnVjdHVyZSBmaWxlcyBzaG91bGQgbm90IGNvbnRhaW4g Y29kZSByZWxhdGVkIHRvCkBAIC0yNzAsMTggKzI3MSwzMiBAQCBzdGF0aWMgY29uc3QgUGdT dGF0X0tpbmRJbmZvIHBnc3RhdF9raW5kX2luZm9zW1BHU1RBVF9OVU1fS0lORFNdID0gewog CQkucmVzZXRfdGltZXN0YW1wX2NiID0gcGdzdGF0X2RhdGFiYXNlX3Jlc2V0X3RpbWVzdGFt cF9jYiwKIAl9LAogCi0JW1BHU1RBVF9LSU5EX1JFTEFUSU9OXSA9IHsKLQkJLm5hbWUgPSAi cmVsYXRpb24iLAorCVtQR1NUQVRfS0lORF9UQUJMRV0gPSB7CisJCS5uYW1lID0gInRhYmxl IiwKIAogCQkuZml4ZWRfYW1vdW50ID0gZmFsc2UsCiAKLQkJLnNoYXJlZF9zaXplID0gc2l6 ZW9mKFBnU3RhdFNoYXJlZF9SZWxhdGlvbiksCi0JCS5zaGFyZWRfZGF0YV9vZmYgPSBvZmZz ZXRvZihQZ1N0YXRTaGFyZWRfUmVsYXRpb24sIHN0YXRzKSwKLQkJLnNoYXJlZF9kYXRhX2xl biA9IHNpemVvZigoKFBnU3RhdFNoYXJlZF9SZWxhdGlvbiAqKSAwKS0+c3RhdHMpLAorCQku c2hhcmVkX3NpemUgPSBzaXplb2YoUGdTdGF0U2hhcmVkX1RhYmxlKSwKKwkJLnNoYXJlZF9k YXRhX29mZiA9IG9mZnNldG9mKFBnU3RhdFNoYXJlZF9UYWJsZSwgc3RhdHMpLAorCQkuc2hh cmVkX2RhdGFfbGVuID0gc2l6ZW9mKCgoUGdTdGF0U2hhcmVkX1RhYmxlICopIDApLT5zdGF0 cyksCiAJCS5wZW5kaW5nX3NpemUgPSBzaXplb2YoUGdTdGF0X1RhYmxlU3RhdHVzKSwKIAot CQkuZmx1c2hfcGVuZGluZ19jYiA9IHBnc3RhdF9yZWxhdGlvbl9mbHVzaF9jYiwKLQkJLmRl bGV0ZV9wZW5kaW5nX2NiID0gcGdzdGF0X3JlbGF0aW9uX2RlbGV0ZV9wZW5kaW5nX2NiLAor CQkuZmx1c2hfcGVuZGluZ19jYiA9IHBnc3RhdF90YWJsZV9mbHVzaF9jYiwKKwkJLmRlbGV0 ZV9wZW5kaW5nX2NiID0gcGdzdGF0X3RhYmxlX2RlbGV0ZV9wZW5kaW5nX2NiLAorCX0sCisK KwlbUEdTVEFUX0tJTkRfSU5ERVhdID0geworCQkubmFtZSA9ICJpbmRleCIsCisKKwkJLmZp eGVkX2Ftb3VudCA9IGZhbHNlLAorCisJCS5zaGFyZWRfc2l6ZSA9IHNpemVvZihQZ1N0YXRT aGFyZWRfSW5kZXgpLAorCQkuc2hhcmVkX2RhdGFfb2ZmID0gb2Zmc2V0b2YoUGdTdGF0U2hh cmVkX0luZGV4LCBzdGF0cyksCisJCS5zaGFyZWRfZGF0YV9sZW4gPSBzaXplb2YoKChQZ1N0 YXRTaGFyZWRfSW5kZXggKikgMCktPnN0YXRzKSwKKwkJLnBlbmRpbmdfc2l6ZSA9IHNpemVv ZihQZ1N0YXRfSW5kZXhTdGF0dXMpLAorCisJCS5mbHVzaF9wZW5kaW5nX2NiID0gcGdzdGF0 X2luZGV4X2ZsdXNoX2NiLAorCQkuZGVsZXRlX3BlbmRpbmdfY2IgPSBwZ3N0YXRfaW5kZXhf ZGVsZXRlX3BlbmRpbmdfY2IsCiAJfSwKIAogCVtQR1NUQVRfS0lORF9GVU5DVElPTl0gPSB7 CmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC91dGlscy9hY3Rpdml0eS9wZ3N0YXRfaW5kZXgu YyBiL3NyYy9iYWNrZW5kL3V0aWxzL2FjdGl2aXR5L3Bnc3RhdF9pbmRleC5jCm5ldyBmaWxl IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAuLjg4MmY2Y2YzMGQKLS0tIC9kZXYvbnVs bAorKysgYi9zcmMvYmFja2VuZC91dGlscy9hY3Rpdml0eS9wZ3N0YXRfaW5kZXguYwpAQCAt MCwwICsxLDI5NyBAQAorLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorICoKKyAqIHBnc3RhdF9p bmRleC5jCisgKgkgIEltcGxlbWVudGF0aW9uIG9mIGluZGV4IHN0YXRpc3RpY3MuCisgKgor ICogVGhpcyBmaWxlIGNvbnRhaW5zIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiBmdW5jdGlvbiBp bmRleC4gSXQgaXMga2VwdAorICogc2VwYXJhdGUgZnJvbSBwZ3N0YXQuYyB0byBlbmZvcmNl IHRoZSBsaW5lIGJldHdlZW4gdGhlIHN0YXRpc3RpY3MgYWNjZXNzIC8KKyAqIHN0b3JhZ2Ug aW1wbGVtZW50YXRpb24gYW5kIHRoZSBkZXRhaWxzIGFib3V0IGluZGl2aWR1YWwgdHlwZXMg b2YKKyAqIHN0YXRpc3RpY3MuCisgKgorICogQ29weXJpZ2h0IChjKSAyMDAxLTIwMjMsIFBv c3RncmVTUUwgR2xvYmFsIERldmVsb3BtZW50IEdyb3VwCisgKgorICogSURFTlRJRklDQVRJ T04KKyAqCSAgc3JjL2JhY2tlbmQvdXRpbHMvYWN0aXZpdHkvcGdzdGF0X2luZGV4LmMKKyAq IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAqLworCisjaW5jbHVkZSAicG9zdGdyZXMuaCIKKwor I2luY2x1ZGUgImFjY2Vzcy94YWN0LmgiCisjaW5jbHVkZSAidXRpbHMvcGdzdGF0X2ludGVy bmFsLmgiCisjaW5jbHVkZSAidXRpbHMvcmVsLmgiCisjaW5jbHVkZSAiY2F0YWxvZy9jYXRh bG9nLmgiCisKK3N0YXRpYyBQZ1N0YXRfSW5kZXhTdGF0dXMgKnBnc3RhdF9wcmVwX2luZGV4 X3BlbmRpbmcoT2lkIHJlbF9pZCwgYm9vbCBpc3NoYXJlZCk7CisKKy8qCisgKiBDb3B5IHN0 YXRzIGJldHdlZW4gaW5kZXhlcy4gVGhpcyBpcyB1c2VkIGZvciB0aGluZ3MgbGlrZSBSRUlO REVYCisgKiBDT05DVVJSRU5UTFkuCisgKi8KK3ZvaWQKK3Bnc3RhdF9jb3B5X2luZGV4X3N0 YXRzKFJlbGF0aW9uIGRzdCwgUmVsYXRpb24gc3JjKQoreworCVBnU3RhdF9TdGF0SW5kRW50 cnkgKnNyY3N0YXRzOworCVBnU3RhdFNoYXJlZF9JbmRleCAqZHN0c2hzdGF0czsKKwlQZ1N0 YXRfRW50cnlSZWYgKmRzdF9yZWY7CisKKwlzcmNzdGF0cyA9IHBnc3RhdF9mZXRjaF9zdGF0 X2luZGVudHJ5X2V4dChzcmMtPnJkX3JlbC0+cmVsaXNzaGFyZWQsCisJCQkJCQkJCQkJCSAg UmVsYXRpb25HZXRSZWxpZChzcmMpKTsKKwlpZiAoIXNyY3N0YXRzKQorCQlyZXR1cm47CisK Kwlkc3RfcmVmID0gcGdzdGF0X2dldF9lbnRyeV9yZWZfbG9ja2VkKFBHU1RBVF9LSU5EX0lO REVYLAorCQkJCQkJCQkJCSAgZHN0LT5yZF9yZWwtPnJlbGlzc2hhcmVkID8gSW52YWxpZE9p ZCA6IE15RGF0YWJhc2VJZCwKKwkJCQkJCQkJCQkgIFJlbGF0aW9uR2V0UmVsaWQoZHN0KSwK KwkJCQkJCQkJCQkgIGZhbHNlKTsKKworCWRzdHNoc3RhdHMgPSAoUGdTdGF0U2hhcmVkX0lu ZGV4ICopIGRzdF9yZWYtPnNoYXJlZF9zdGF0czsKKwlkc3RzaHN0YXRzLT5zdGF0cyA9ICpz cmNzdGF0czsKKworCXBnc3RhdF91bmxvY2tfZW50cnkoZHN0X3JlZik7Cit9CisKKy8qCisg KiBJbml0aWFsaXplIGEgcmVsY2FjaGUgZW50cnkgdG8gY291bnQgYWNjZXNzIHN0YXRpc3Rp Y3MuICBDYWxsZWQgd2hlbmV2ZXIgYW4KKyAqIGluZGV4IGlzIG9wZW5lZC4KKyAqCisgKiBX ZSBhc3N1bWUgdGhhdCBhIHJlbGNhY2hlIGVudHJ5J3MgcGdzdGF0aW5kX2luZm8gZmllbGQg aXMgemVyb2VkIGJ5IHJlbGNhY2hlLmMKKyAqIHdoZW4gdGhlIHJlbGNhY2hlIGVudHJ5IGlz IG1hZGU7IHRoZXJlYWZ0ZXIgaXQgaXMgbG9uZy1saXZlZCBkYXRhLgorICoKKyAqIFRoaXMg ZG9lcyBub3QgY3JlYXRlIGEgcmVmZXJlbmNlIHRvIGEgc3RhdHMgZW50cnkgaW4gc2hhcmVk IG1lbW9yeSwgbm9yCisgKiBhbGxvY2F0ZSBtZW1vcnkgZm9yIHRoZSBwZW5kaW5nIHN0YXRz LiBUaGF0IGhhcHBlbnMgaW4KKyAqIHBnc3RhdF9hc3NvY19pbmRleCgpLgorICovCit2b2lk CitwZ3N0YXRfaW5pdF9pbmRleChSZWxhdGlvbiByZWwpCit7CisJLyoKKwkgKiBXZSBvbmx5 IGNvdW50IHN0YXRzIGZvciBpbmRleGVzCisJICovCisJQXNzZXJ0KHJlbC0+cmRfcmVsLT5y ZWxraW5kID09IFJFTEtJTkRfSU5ERVgpOworCisJaWYgKCFwZ3N0YXRfdHJhY2tfY291bnRz KQorCXsKKwkJaWYgKHJlbC0+cGdzdGF0aW5kX2luZm8gIT0gTlVMTCkKKwkJCXBnc3RhdF91 bmxpbmtfaW5kZXgocmVsKTsKKworCQkvKiBXZSdyZSBub3QgY291bnRpbmcgYXQgYWxsICov CisJCXJlbC0+cGdzdGF0X2VuYWJsZWQgPSBmYWxzZTsKKwkJcmVsLT5wZ3N0YXRpbmRfaW5m byA9IE5VTEw7CisJCXJldHVybjsKKwl9CisKKwlyZWwtPnBnc3RhdF9lbmFibGVkID0gdHJ1 ZTsKK30KKworLyoKKyAqIFByZXBhcmUgZm9yIHN0YXRpc3RpY3MgZm9yIHRoaXMgaW5kZXgg dG8gYmUgY29sbGVjdGVkLgorICoKKyAqIFRoaXMgZW5zdXJlcyB3ZSBoYXZlIGEgcmVmZXJl bmNlIHRvIHRoZSBzdGF0cyBlbnRyeSBiZWZvcmUgc3RhdHMgY2FuIGJlCisgKiBnZW5lcmF0 ZWQuIFRoYXQgaXMgaW1wb3J0YW50IGJlY2F1c2UgYW4gaW5kZXggZHJvcCBpbiBhbm90aGVy CisgKiBjb25uZWN0aW9uIGNvdWxkIG90aGVyd2lzZSBsZWFkIHRvIHRoZSBzdGF0cyBlbnRy eSBiZWluZyBkcm9wcGVkLCB3aGljaCB0aGVuCisgKiBsYXRlciB3b3VsZCBnZXQgcmVjcmVh dGVkIHdoZW4gZmx1c2hpbmcgc3RhdHMuCisgKgorICogVGhpcyBpcyBzZXBhcmF0ZSBmcm9t IHBnc3RhdF9pbml0X2luZGV4KCkgYXMgaXQgaXMgbm90IHVuY29tbW9uIGZvcgorICogcmVs Y2FjaGUgZW50cmllcyB0byBiZSBvcGVuZWQgd2l0aG91dCBldmVyIGdldHRpbmcgc3RhdHMg cmVwb3J0ZWQuCisgKi8KK3ZvaWQKK3Bnc3RhdF9hc3NvY19pbmRleChSZWxhdGlvbiByZWwp Cit7CisJQXNzZXJ0KHJlbC0+cGdzdGF0X2VuYWJsZWQpOworCUFzc2VydChyZWwtPnBnc3Rh dGluZF9pbmZvID09IE5VTEwpOworCisJLyogRWxzZSBmaW5kIG9yIG1ha2UgdGhlIFBnU3Rh dF9JbmRleFN0YXR1cyBlbnRyeSwgYW5kIHVwZGF0ZSBsaW5rICovCisJcmVsLT5wZ3N0YXRp bmRfaW5mbyA9IHBnc3RhdF9wcmVwX2luZGV4X3BlbmRpbmcoUmVsYXRpb25HZXRSZWxpZChy ZWwpLAorCQkJCQkJCQkJCQkJCXJlbC0+cmRfcmVsLT5yZWxpc3NoYXJlZCk7CisKKwkvKiBk b24ndCBhbGxvdyBsaW5rIGEgc3RhdHMgdG8gbXVsdGlwbGUgcmVsY2FjaGUgZW50cmllcyAq LworCUFzc2VydChyZWwtPnBnc3RhdGluZF9pbmZvLT5yZWxhdGlvbiA9PSBOVUxMKTsKKwor CS8qIG1hcmsgdGhpcyByZWxhdGlvbiBhcyB0aGUgb3duZXIgKi8KKwlyZWwtPnBnc3RhdGlu ZF9pbmZvLT5yZWxhdGlvbiA9IHJlbDsKK30KKworLyoKKyAqIEJyZWFrIHRoZSBtdXR1YWwg bGluayBiZXR3ZWVuIGEgcmVsY2FjaGUgZW50cnkgYW5kIHBlbmRpbmcgaW5kZXggc3RhdHMg ZW50cnkuCisgKiBUaGlzIG11c3QgYmUgY2FsbGVkIHdoZW5ldmVyIG9uZSBlbmQgb2YgdGhl IGxpbmsgaXMgcmVtb3ZlZC4KKyAqLwordm9pZAorcGdzdGF0X3VubGlua19pbmRleChSZWxh dGlvbiByZWwpCit7CisKKwlpZiAocmVsLT5wZ3N0YXRpbmRfaW5mbyA9PSBOVUxMKQorCQly ZXR1cm47CisKKwkvKiBsaW5rIHNhbml0eSBjaGVjayBmb3IgdGhlIGluZGV4IHN0YXRzICov CisJaWYgKHJlbC0+cGdzdGF0aW5kX2luZm8pCisJeworCQlBc3NlcnQocmVsLT5wZ3N0YXRp bmRfaW5mby0+cmVsYXRpb24gPT0gcmVsKTsKKwkJcmVsLT5wZ3N0YXRpbmRfaW5mby0+cmVs YXRpb24gPSBOVUxMOworCQlyZWwtPnBnc3RhdGluZF9pbmZvID0gTlVMTDsKKwl9Cit9CisK Ky8qCisgKiBFbnN1cmUgdGhhdCBpbmRleCBzdGF0cyBhcmUgZHJvcHBlZCBpZiB0cmFuc2Fj dGlvbiBhYm9ydHMuCisgKi8KK3ZvaWQKK3Bnc3RhdF9jcmVhdGVfaW5kZXgoUmVsYXRpb24g cmVsKQoreworCXBnc3RhdF9jcmVhdGVfdHJhbnNhY3Rpb25hbChQR1NUQVRfS0lORF9JTkRF WCwKKwkJCQkJCQkJcmVsLT5yZF9yZWwtPnJlbGlzc2hhcmVkID8gSW52YWxpZE9pZCA6IE15 RGF0YWJhc2VJZCwKKwkJCQkJCQkJUmVsYXRpb25HZXRSZWxpZChyZWwpKTsKK30KKworLyoK KyAqIEVuc3VyZSB0aGF0IGluZGV4IHN0YXRzIGFyZSBkcm9wcGVkIGlmIHRyYW5zYWN0aW9u IGNvbW1pdHMuCisgKi8KK3ZvaWQKK3Bnc3RhdF9kcm9wX2luZGV4KFJlbGF0aW9uIHJlbCkK K3sKKwlwZ3N0YXRfZHJvcF90cmFuc2FjdGlvbmFsKFBHU1RBVF9LSU5EX0lOREVYLAorCQkJ CQkJCSAgcmVsLT5yZF9yZWwtPnJlbGlzc2hhcmVkID8gSW52YWxpZE9pZCA6IE15RGF0YWJh c2VJZCwKKwkJCQkJCQkgIFJlbGF0aW9uR2V0UmVsaWQocmVsKSk7Cit9CisKKy8qCisgKiBT dXBwb3J0IGZ1bmN0aW9uIGZvciB0aGUgU1FMLWNhbGxhYmxlIHBnc3RhdCogZnVuY3Rpb25z LiBSZXR1cm5zCisgKiB0aGUgY29sbGVjdGVkIHN0YXRpc3RpY3MgZm9yIG9uZSBpbmRleCBv ciBOVUxMLiBOVUxMIGRvZXNuJ3QgbWVhbgorICogdGhhdCB0aGUgaW5kZXggZG9lc24ndCBl eGlzdCwganVzdCB0aGF0IHRoZXJlIGFyZSBubyBzdGF0aXN0aWNzLCBzbyB0aGUKKyAqIGNh bGxlciBpcyBiZXR0ZXIgb2ZmIHRvIHJlcG9ydCBaRVJPIGluc3RlYWQuCisgKi8KK1BnU3Rh dF9TdGF0SW5kRW50cnkgKgorcGdzdGF0X2ZldGNoX3N0YXRfaW5kZW50cnkoT2lkIHJlbGlk KQoreworCXJldHVybiBwZ3N0YXRfZmV0Y2hfc3RhdF9pbmRlbnRyeV9leHQoSXNTaGFyZWRS ZWxhdGlvbihyZWxpZCksIHJlbGlkKTsKK30KKworLyoKKyAqIE1vcmUgZWZmaWNpZW50IHZl cnNpb24gb2YgcGdzdGF0X2ZldGNoX3N0YXRfaW5kZW50cnkoKSwgYWxsb3dpbmcgdG8gc3Bl Y2lmeQorICogd2hldGhlciB0aGUgdG8tYmUtYWNjZXNzZWQgaW5kZXggaXMgc2hhcmVkIG9y IG5vdC4KKyAqLworUGdTdGF0X1N0YXRJbmRFbnRyeSAqCitwZ3N0YXRfZmV0Y2hfc3RhdF9p bmRlbnRyeV9leHQoYm9vbCBzaGFyZWQsIE9pZCByZWxvaWQpCit7CisJT2lkCQkJZGJvaWQg PSAoc2hhcmVkID8gSW52YWxpZE9pZCA6IE15RGF0YWJhc2VJZCk7CisKKwlyZXR1cm4gKFBn U3RhdF9TdGF0SW5kRW50cnkgKikKKwkJcGdzdGF0X2ZldGNoX2VudHJ5KFBHU1RBVF9LSU5E X0lOREVYLCBkYm9pZCwgcmVsb2lkKTsKK30KKworLyoKKyAqIGZpbmQgYW55IGV4aXN0aW5n IFBnU3RhdF9JbmRleFN0YXR1cyBlbnRyeSBmb3IgcmVsCisgKgorICogRmluZCBhbnkgZXhp c3RpbmcgUGdTdGF0X0luZGV4U3RhdHVzIGVudHJ5IGZvciByZWxfaWQgaW4gdGhlIGN1cnJl bnQKKyAqIGRhdGFiYXNlLiBJZiBub3QgZm91bmQsIHRyeSBmaW5kaW5nIGZyb20gc2hhcmVk IGluZGV4ZXMuCisgKgorICogSWYgbm8gZW50cnkgZm91bmQsIHJldHVybiBOVUxMLCBkb24n dCBjcmVhdGUgYSBuZXcgb25lCisgKi8KK1BnU3RhdF9JbmRleFN0YXR1cyAqCitmaW5kX2lu ZHN0YXRfZW50cnkoT2lkIHJlbF9pZCkKK3sKKwlQZ1N0YXRfRW50cnlSZWYgKmVudHJ5X3Jl ZjsKKworCWVudHJ5X3JlZiA9IHBnc3RhdF9mZXRjaF9wZW5kaW5nX2VudHJ5KFBHU1RBVF9L SU5EX0lOREVYLCBNeURhdGFiYXNlSWQsIHJlbF9pZCk7CisJaWYgKCFlbnRyeV9yZWYpCisJ CWVudHJ5X3JlZiA9IHBnc3RhdF9mZXRjaF9wZW5kaW5nX2VudHJ5KFBHU1RBVF9LSU5EX0lO REVYLCBJbnZhbGlkT2lkLCByZWxfaWQpOworCisJaWYgKGVudHJ5X3JlZikKKwkJcmV0dXJu IGVudHJ5X3JlZi0+cGVuZGluZzsKKwlyZXR1cm4gTlVMTDsKK30KKworLyoKKyAqIEZsdXNo IG91dCBwZW5kaW5nIHN0YXRzIGZvciB0aGUgZW50cnkKKyAqCisgKiBJZiBub3dhaXQgaXMg dHJ1ZSwgdGhpcyBmdW5jdGlvbiByZXR1cm5zIGZhbHNlIGlmIGxvY2sgY291bGQgbm90Cisg KiBpbW1lZGlhdGVseSBhY3F1aXJlZCwgb3RoZXJ3aXNlIHRydWUgaXMgcmV0dXJuZWQuCisg KgorICogU29tZSBvZiB0aGUgc3RhdHMgYXJlIGNvcGllZCB0byB0aGUgY29ycmVzcG9uZGlu ZyBwZW5kaW5nIGRhdGFiYXNlIHN0YXRzCisgKiBlbnRyeSB3aGVuIHN1Y2Nlc3NmdWxseSBm bHVzaGluZy4KKyAqLworYm9vbAorcGdzdGF0X2luZGV4X2ZsdXNoX2NiKFBnU3RhdF9FbnRy eVJlZiAqZW50cnlfcmVmLCBib29sIG5vd2FpdCkKK3sKKwlzdGF0aWMgY29uc3QgUGdTdGF0 X0luZGV4Q291bnRzIGFsbF96ZXJvZXM7CisJT2lkCQkJZGJvaWQ7CisKKwlQZ1N0YXRfSW5k ZXhTdGF0dXMgKmxzdGF0czsgLyogcGVuZGluZyBzdGF0cyBlbnRyeSAgKi8KKwlQZ1N0YXRT aGFyZWRfSW5kZXggKnNocmVsY29tc3RhdHM7CisJUGdTdGF0X1N0YXRJbmRFbnRyeSAqaW5k ZW50cnk7CS8qIGluZGV4IGVudHJ5IG9mIHNoYXJlZCBzdGF0cyAqLworCVBnU3RhdF9TdGF0 REJFbnRyeSAqZGJlbnRyeTsJLyogcGVuZGluZyBkYXRhYmFzZSBlbnRyeSAqLworCisJZGJv aWQgPSBlbnRyeV9yZWYtPnNoYXJlZF9lbnRyeS0+a2V5LmRib2lkOworCWxzdGF0cyA9IChQ Z1N0YXRfSW5kZXhTdGF0dXMgKikgZW50cnlfcmVmLT5wZW5kaW5nOworCXNocmVsY29tc3Rh dHMgPSAoUGdTdGF0U2hhcmVkX0luZGV4ICopIGVudHJ5X3JlZi0+c2hhcmVkX3N0YXRzOwor CisJLyoKKwkgKiBJZ25vcmUgZW50cmllcyB0aGF0IGRpZG4ndCBhY2N1bXVsYXRlIGFueSBh Y3R1YWwgY291bnRzLCBzdWNoIGFzCisJICogaW5kZXhlcyB0aGF0IHdlcmUgb3BlbmVkIGJ5 IHRoZSBwbGFubmVyIGJ1dCBub3QgdXNlZC4KKwkgKi8KKwlpZiAobWVtY21wKCZsc3RhdHMt PmlfY291bnRzLCAmYWxsX3plcm9lcywKKwkJCSAgIHNpemVvZihQZ1N0YXRfSW5kZXhDb3Vu dHMpKSA9PSAwKQorCXsKKwkJcmV0dXJuIHRydWU7CisJfQorCisJaWYgKCFwZ3N0YXRfbG9j a19lbnRyeShlbnRyeV9yZWYsIG5vd2FpdCkpCisJCXJldHVybiBmYWxzZTsKKworCS8qIGFk ZCB0aGUgdmFsdWVzIHRvIHRoZSBzaGFyZWQgZW50cnkuICovCisJaW5kZW50cnkgPSAmc2hy ZWxjb21zdGF0cy0+c3RhdHM7CisKKwlpbmRlbnRyeS0+bnVtc2NhbnMgKz0gbHN0YXRzLT5p X2NvdW50cy5pX251bXNjYW5zOworCisJaWYgKGxzdGF0cy0+aV9jb3VudHMuaV9udW1zY2Fu cykKKwl7CisJCVRpbWVzdGFtcFR6IHQgPSBHZXRDdXJyZW50VHJhbnNhY3Rpb25TdG9wVGlt ZXN0YW1wKCk7CisKKwkJaWYgKHQgPiBpbmRlbnRyeS0+bGFzdHNjYW4pCisJCQlpbmRlbnRy eS0+bGFzdHNjYW4gPSB0OworCX0KKwlpbmRlbnRyeS0+dHVwbGVzX3JldHVybmVkICs9IGxz dGF0cy0+aV9jb3VudHMuaV90dXBsZXNfcmV0dXJuZWQ7CisJaW5kZW50cnktPnR1cGxlc19m ZXRjaGVkICs9IGxzdGF0cy0+aV9jb3VudHMuaV90dXBsZXNfZmV0Y2hlZDsKKwlpbmRlbnRy eS0+YmxvY2tzX2ZldGNoZWQgKz0gbHN0YXRzLT5pX2NvdW50cy5pX2Jsb2Nrc19mZXRjaGVk OworCWluZGVudHJ5LT5ibG9ja3NfaGl0ICs9IGxzdGF0cy0+aV9jb3VudHMuaV9ibG9ja3Nf aGl0OworCisJcGdzdGF0X3VubG9ja19lbnRyeShlbnRyeV9yZWYpOworCisJLyogVGhlIGVu dHJ5IHdhcyBzdWNjZXNzZnVsbHkgZmx1c2hlZCwgYWRkIHRoZSBzYW1lIHRvIGRhdGFiYXNl IHN0YXRzICovCisJZGJlbnRyeSA9IHBnc3RhdF9wcmVwX2RhdGFiYXNlX3BlbmRpbmcoZGJv aWQpOworCWRiZW50cnktPnR1cGxlc19yZXR1cm5lZCArPSBsc3RhdHMtPmlfY291bnRzLmlf dHVwbGVzX3JldHVybmVkOworCWRiZW50cnktPnR1cGxlc19mZXRjaGVkICs9IGxzdGF0cy0+ aV9jb3VudHMuaV90dXBsZXNfZmV0Y2hlZDsKKwlkYmVudHJ5LT5ibG9ja3NfZmV0Y2hlZCAr PSBsc3RhdHMtPmlfY291bnRzLmlfYmxvY2tzX2ZldGNoZWQ7CisJZGJlbnRyeS0+YmxvY2tz X2hpdCArPSBsc3RhdHMtPmlfY291bnRzLmlfYmxvY2tzX2hpdDsKKworCXJldHVybiB0cnVl OworfQorCit2b2lkCitwZ3N0YXRfaW5kZXhfZGVsZXRlX3BlbmRpbmdfY2IoUGdTdGF0X0Vu dHJ5UmVmICplbnRyeV9yZWYpCit7CisJUGdTdGF0X0luZGV4U3RhdHVzICpwZW5kaW5nID0g KFBnU3RhdF9JbmRleFN0YXR1cyAqKSBlbnRyeV9yZWYtPnBlbmRpbmc7CisKKwlpZiAocGVu ZGluZy0+cmVsYXRpb24pCisJCXBnc3RhdF91bmxpbmtfaW5kZXgocGVuZGluZy0+cmVsYXRp b24pOworfQorCisvKgorICogRmluZCBvciBjcmVhdGUgYSBQZ1N0YXRfSW5kZXhTdGF0dXMg ZW50cnkgZm9yIHJlbC4gTmV3IGVudHJ5IGlzIGNyZWF0ZWQgYW5kCisgKiBpbml0aWFsaXpl ZCBpZiBub3QgZXhpc3RzLgorICovCitzdGF0aWMgUGdTdGF0X0luZGV4U3RhdHVzICoKK3Bn c3RhdF9wcmVwX2luZGV4X3BlbmRpbmcoT2lkIHJlbF9pZCwgYm9vbCBpc3NoYXJlZCkKK3sK KwlQZ1N0YXRfRW50cnlSZWYgKmVudHJ5X3JlZjsKKwlQZ1N0YXRfSW5kZXhTdGF0dXMgKnBl bmRpbmc7CisKKwllbnRyeV9yZWYgPSBwZ3N0YXRfcHJlcF9wZW5kaW5nX2VudHJ5KFBHU1RB VF9LSU5EX0lOREVYLAorCQkJCQkJCQkJCSAgaXNzaGFyZWQgPyBJbnZhbGlkT2lkIDogTXlE YXRhYmFzZUlkLAorCQkJCQkJCQkJCSAgcmVsX2lkLCBOVUxMKTsKKwlwZW5kaW5nID0gZW50 cnlfcmVmLT5wZW5kaW5nOworCXBlbmRpbmctPnJfaWQgPSByZWxfaWQ7CisJcGVuZGluZy0+ cl9zaGFyZWQgPSBpc3NoYXJlZDsKKworCXJldHVybiBwZW5kaW5nOworfQpkaWZmIC0tZ2l0 IGEvc3JjL2JhY2tlbmQvdXRpbHMvYWN0aXZpdHkvcGdzdGF0X3JlbGF0aW9uLmMgYi9zcmMv YmFja2VuZC91dGlscy9hY3Rpdml0eS9wZ3N0YXRfdGFibGUuYwpzaW1pbGFyaXR5IGluZGV4 IDc2JQpyZW5hbWUgZnJvbSBzcmMvYmFja2VuZC91dGlscy9hY3Rpdml0eS9wZ3N0YXRfcmVs YXRpb24uYwpyZW5hbWUgdG8gc3JjL2JhY2tlbmQvdXRpbHMvYWN0aXZpdHkvcGdzdGF0X3Rh YmxlLmMKaW5kZXggZjc5M2FjMTUxNi4uNTFhYzRlNDFlMiAxMDA2NDQKLS0tIGEvc3JjL2Jh Y2tlbmQvdXRpbHMvYWN0aXZpdHkvcGdzdGF0X3JlbGF0aW9uLmMKKysrIGIvc3JjL2JhY2tl bmQvdXRpbHMvYWN0aXZpdHkvcGdzdGF0X3RhYmxlLmMKQEAgLTEsOSArMSw5IEBACiAvKiAt LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tCiAgKgotICogcGdzdGF0X3JlbGF0aW9uLmMKLSAqCSAgSW1w bGVtZW50YXRpb24gb2YgcmVsYXRpb24gc3RhdGlzdGljcy4KKyAqIHBnc3RhdF90YWJsZS5j CisgKgkgIEltcGxlbWVudGF0aW9uIG9mIHRhYmxlIHN0YXRpc3RpY3MuCiAgKgotICogVGhp cyBmaWxlIGNvbnRhaW5zIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiBmdW5jdGlvbiByZWxhdGlv bi4gSXQgaXMga2VwdAorICogVGhpcyBmaWxlIGNvbnRhaW5zIHRoZSBpbXBsZW1lbnRhdGlv biBvZiBmdW5jdGlvbiB0YWJsZS4gSXQgaXMga2VwdAogICogc2VwYXJhdGUgZnJvbSBwZ3N0 YXQuYyB0byBlbmZvcmNlIHRoZSBsaW5lIGJldHdlZW4gdGhlIHN0YXRpc3RpY3MgYWNjZXNz IC8KICAqIHN0b3JhZ2UgaW1wbGVtZW50YXRpb24gYW5kIHRoZSBkZXRhaWxzIGFib3V0IGlu ZGl2aWR1YWwgdHlwZXMgb2YKICAqIHN0YXRpc3RpY3MuCkBAIC0xMSw3ICsxMSw3IEBACiAg KiBDb3B5cmlnaHQgKGMpIDIwMDEtMjAyMywgUG9zdGdyZVNRTCBHbG9iYWwgRGV2ZWxvcG1l bnQgR3JvdXAKICAqCiAgKiBJREVOVElGSUNBVElPTgotICoJICBzcmMvYmFja2VuZC91dGls cy9hY3Rpdml0eS9wZ3N0YXRfcmVsYXRpb24uYworICoJICBzcmMvYmFja2VuZC91dGlscy9h Y3Rpdml0eS9wZ3N0YXRfdGFibGUuYwogICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICovCiAK QEAgLTQ0LDc0ICs0NCw0OCBAQCB0eXBlZGVmIHN0cnVjdCBUd29QaGFzZVBnU3RhdFJlY29y ZAogfSBUd29QaGFzZVBnU3RhdFJlY29yZDsKIAogCi1zdGF0aWMgUGdTdGF0X1RhYmxlU3Rh dHVzICpwZ3N0YXRfcHJlcF9yZWxhdGlvbl9wZW5kaW5nKE9pZCByZWxfaWQsIGJvb2wgaXNz aGFyZWQpOwotc3RhdGljIHZvaWQgYWRkX3RhYnN0YXRfeGFjdF9sZXZlbChQZ1N0YXRfVGFi bGVTdGF0dXMgKnBnc3RhdF9pbmZvLCBpbnQgbmVzdF9sZXZlbCk7Ci1zdGF0aWMgdm9pZCBl bnN1cmVfdGFic3RhdF94YWN0X2xldmVsKFBnU3RhdF9UYWJsZVN0YXR1cyAqcGdzdGF0X2lu Zm8pOworc3RhdGljIFBnU3RhdF9UYWJsZVN0YXR1cyAqcGdzdGF0X3ByZXBfdGFibGVfcGVu ZGluZyhPaWQgcmVsX2lkLCBib29sIGlzc2hhcmVkKTsKK3N0YXRpYyB2b2lkIGFkZF90YWJz dGF0X3hhY3RfbGV2ZWwoUGdTdGF0X1RhYmxlU3RhdHVzICpwZ3N0YXR0YWJfaW5mbywgaW50 IG5lc3RfbGV2ZWwpOworc3RhdGljIHZvaWQgZW5zdXJlX3RhYnN0YXRfeGFjdF9sZXZlbChQ Z1N0YXRfVGFibGVTdGF0dXMgKnBnc3RhdHRhYl9pbmZvKTsKIHN0YXRpYyB2b2lkIHNhdmVf dHJ1bmNkcm9wX2NvdW50ZXJzKFBnU3RhdF9UYWJsZVhhY3RTdGF0dXMgKnRyYW5zLCBib29s IGlzX2Ryb3ApOwogc3RhdGljIHZvaWQgcmVzdG9yZV90cnVuY2Ryb3BfY291bnRlcnMoUGdT dGF0X1RhYmxlWGFjdFN0YXR1cyAqdHJhbnMpOwogCi0KLS8qCi0gKiBDb3B5IHN0YXRzIGJl dHdlZW4gcmVsYXRpb25zLiBUaGlzIGlzIHVzZWQgZm9yIHRoaW5ncyBsaWtlIFJFSU5ERVgK LSAqIENPTkNVUlJFTlRMWS4KLSAqLwotdm9pZAotcGdzdGF0X2NvcHlfcmVsYXRpb25fc3Rh dHMoUmVsYXRpb24gZHN0LCBSZWxhdGlvbiBzcmMpCi17Ci0JUGdTdGF0X1N0YXRUYWJFbnRy eSAqc3Jjc3RhdHM7Ci0JUGdTdGF0U2hhcmVkX1JlbGF0aW9uICpkc3RzaHN0YXRzOwotCVBn U3RhdF9FbnRyeVJlZiAqZHN0X3JlZjsKLQotCXNyY3N0YXRzID0gcGdzdGF0X2ZldGNoX3N0 YXRfdGFiZW50cnlfZXh0KHNyYy0+cmRfcmVsLT5yZWxpc3NoYXJlZCwKLQkJCQkJCQkJCQkJ ICBSZWxhdGlvbkdldFJlbGlkKHNyYykpOwotCWlmICghc3Jjc3RhdHMpCi0JCXJldHVybjsK LQotCWRzdF9yZWYgPSBwZ3N0YXRfZ2V0X2VudHJ5X3JlZl9sb2NrZWQoUEdTVEFUX0tJTkRf UkVMQVRJT04sCi0JCQkJCQkJCQkJICBkc3QtPnJkX3JlbC0+cmVsaXNzaGFyZWQgPyBJbnZh bGlkT2lkIDogTXlEYXRhYmFzZUlkLAotCQkJCQkJCQkJCSAgUmVsYXRpb25HZXRSZWxpZChk c3QpLAotCQkJCQkJCQkJCSAgZmFsc2UpOwotCi0JZHN0c2hzdGF0cyA9IChQZ1N0YXRTaGFy ZWRfUmVsYXRpb24gKikgZHN0X3JlZi0+c2hhcmVkX3N0YXRzOwotCWRzdHNoc3RhdHMtPnN0 YXRzID0gKnNyY3N0YXRzOwotCi0JcGdzdGF0X3VubG9ja19lbnRyeShkc3RfcmVmKTsKLX0K LQogLyoKICAqIEluaXRpYWxpemUgYSByZWxjYWNoZSBlbnRyeSB0byBjb3VudCBhY2Nlc3Mg c3RhdGlzdGljcy4gIENhbGxlZCB3aGVuZXZlciBhCi0gKiByZWxhdGlvbiBpcyBvcGVuZWQu CisgKiB0YWJsZSBpcyBvcGVuZWQuCiAgKgotICogV2UgYXNzdW1lIHRoYXQgYSByZWxjYWNo ZSBlbnRyeSdzIHBnc3RhdF9pbmZvIGZpZWxkIGlzIHplcm9lZCBieSByZWxjYWNoZS5jCisg KiBXZSBhc3N1bWUgdGhhdCBhIHJlbGNhY2hlIGVudHJ5J3MgcGdzdGF0dGFiX2luZm8gZmll bGQgaXMgemVyb2VkIGJ5IHJlbGNhY2hlLmMKICAqIHdoZW4gdGhlIHJlbGNhY2hlIGVudHJ5 IGlzIG1hZGU7IHRoZXJlYWZ0ZXIgaXQgaXMgbG9uZy1saXZlZCBkYXRhLgogICoKICAqIFRo aXMgZG9lcyBub3QgY3JlYXRlIGEgcmVmZXJlbmNlIHRvIGEgc3RhdHMgZW50cnkgaW4gc2hh cmVkIG1lbW9yeSwgbm9yCiAgKiBhbGxvY2F0ZSBtZW1vcnkgZm9yIHRoZSBwZW5kaW5nIHN0 YXRzLiBUaGF0IGhhcHBlbnMgaW4KLSAqIHBnc3RhdF9hc3NvY19yZWxhdGlvbigpLgorICog cGdzdGF0X2Fzc29jX3RhYmxlKCkuCiAgKi8KIHZvaWQKLXBnc3RhdF9pbml0X3JlbGF0aW9u KFJlbGF0aW9uIHJlbCkKK3Bnc3RhdF9pbml0X3RhYmxlKFJlbGF0aW9uIHJlbCkKIHsKIAlj aGFyCQlyZWxraW5kID0gcmVsLT5yZF9yZWwtPnJlbGtpbmQ7CiAKKwlBc3NlcnQocmVsa2lu ZCAhPSBSRUxLSU5EX0lOREVYKTsKKwogCS8qCiAJICogV2Ugb25seSBjb3VudCBzdGF0cyBm b3IgcmVsYXRpb25zIHdpdGggc3RvcmFnZSBhbmQgcGFydGl0aW9uZWQgdGFibGVzCiAJICov CiAJaWYgKCFSRUxLSU5EX0hBU19TVE9SQUdFKHJlbGtpbmQpICYmIHJlbGtpbmQgIT0gUkVM S0lORF9QQVJUSVRJT05FRF9UQUJMRSkKIAl7CiAJCXJlbC0+cGdzdGF0X2VuYWJsZWQgPSBm YWxzZTsKLQkJcmVsLT5wZ3N0YXRfaW5mbyA9IE5VTEw7CisJCXJlbC0+cGdzdGF0dGFiX2lu Zm8gPSBOVUxMOwogCQlyZXR1cm47CiAJfQogCiAJaWYgKCFwZ3N0YXRfdHJhY2tfY291bnRz KQogCXsKLQkJaWYgKHJlbC0+cGdzdGF0X2luZm8pCi0JCQlwZ3N0YXRfdW5saW5rX3JlbGF0 aW9uKHJlbCk7CisJCWlmIChyZWwtPnBnc3RhdHRhYl9pbmZvICE9IE5VTEwpCisJCQlwZ3N0 YXRfdW5saW5rX3RhYmxlKHJlbCk7CiAKIAkJLyogV2UncmUgbm90IGNvdW50aW5nIGF0IGFs bCAqLwogCQlyZWwtPnBnc3RhdF9lbmFibGVkID0gZmFsc2U7Ci0JCXJlbC0+cGdzdGF0X2lu Zm8gPSBOVUxMOworCQlyZWwtPnBnc3RhdHRhYl9pbmZvID0gTlVMTDsKIAkJcmV0dXJuOwog CX0KIApAQCAtMTE5LDg5ICs5Myw5MiBAQCBwZ3N0YXRfaW5pdF9yZWxhdGlvbihSZWxhdGlv biByZWwpCiB9CiAKIC8qCi0gKiBQcmVwYXJlIGZvciBzdGF0aXN0aWNzIGZvciB0aGlzIHJl bGF0aW9uIHRvIGJlIGNvbGxlY3RlZC4KKyAqIFByZXBhcmUgZm9yIHN0YXRpc3RpY3MgZm9y IHRoaXMgdGFibGUgdG8gYmUgY29sbGVjdGVkLgogICoKICAqIFRoaXMgZW5zdXJlcyB3ZSBo YXZlIGEgcmVmZXJlbmNlIHRvIHRoZSBzdGF0cyBlbnRyeSBiZWZvcmUgc3RhdHMgY2FuIGJl Ci0gKiBnZW5lcmF0ZWQuIFRoYXQgaXMgaW1wb3J0YW50IGJlY2F1c2UgYSByZWxhdGlvbiBk cm9wIGluIGFub3RoZXIgY29ubmVjdGlvbgorICogZ2VuZXJhdGVkLiBUaGF0IGlzIGltcG9y dGFudCBiZWNhdXNlIGEgdGFibGUgZHJvcCBpbiBhbm90aGVyIGNvbm5lY3Rpb24KICAqIGNv dWxkIG90aGVyd2lzZSBsZWFkIHRvIHRoZSBzdGF0cyBlbnRyeSBiZWluZyBkcm9wcGVkLCB3 aGljaCB0aGVuIGxhdGVyCiAgKiB3b3VsZCBnZXQgcmVjcmVhdGVkIHdoZW4gZmx1c2hpbmcg c3RhdHMuCiAgKgotICogVGhpcyBpcyBzZXBhcmF0ZSBmcm9tIHBnc3RhdF9pbml0X3JlbGF0 aW9uKCkgYXMgaXQgaXMgbm90IHVuY29tbW9uIGZvcgorICogVGhpcyBpcyBzZXBhcmF0ZSBm cm9tIHBnc3RhdF9pbml0X3RhYmxlKCkgYXMgaXQgaXMgbm90IHVuY29tbW9uIGZvcgogICog cmVsY2FjaGUgZW50cmllcyB0byBiZSBvcGVuZWQgd2l0aG91dCBldmVyIGdldHRpbmcgc3Rh dHMgcmVwb3J0ZWQuCiAgKi8KIHZvaWQKLXBnc3RhdF9hc3NvY19yZWxhdGlvbihSZWxhdGlv biByZWwpCitwZ3N0YXRfYXNzb2NfdGFibGUoUmVsYXRpb24gcmVsKQogewogCUFzc2VydChy ZWwtPnBnc3RhdF9lbmFibGVkKTsKLQlBc3NlcnQocmVsLT5wZ3N0YXRfaW5mbyA9PSBOVUxM KTsKKwlBc3NlcnQocmVsLT5wZ3N0YXR0YWJfaW5mbyA9PSBOVUxMKTsKIAogCS8qIEVsc2Ug ZmluZCBvciBtYWtlIHRoZSBQZ1N0YXRfVGFibGVTdGF0dXMgZW50cnksIGFuZCB1cGRhdGUg bGluayAqLwotCXJlbC0+cGdzdGF0X2luZm8gPSBwZ3N0YXRfcHJlcF9yZWxhdGlvbl9wZW5k aW5nKFJlbGF0aW9uR2V0UmVsaWQocmVsKSwKKwlyZWwtPnBnc3RhdHRhYl9pbmZvID0gcGdz dGF0X3ByZXBfdGFibGVfcGVuZGluZyhSZWxhdGlvbkdldFJlbGlkKHJlbCksCiAJCQkJCQkJ CQkJCQkJcmVsLT5yZF9yZWwtPnJlbGlzc2hhcmVkKTsKIAogCS8qIGRvbid0IGFsbG93IGxp bmsgYSBzdGF0cyB0byBtdWx0aXBsZSByZWxjYWNoZSBlbnRyaWVzICovCi0JQXNzZXJ0KHJl bC0+cGdzdGF0X2luZm8tPnJlbGF0aW9uID09IE5VTEwpOworCUFzc2VydChyZWwtPnBnc3Rh dHRhYl9pbmZvLT5yZWxhdGlvbiA9PSBOVUxMKTsKIAogCS8qIG1hcmsgdGhpcyByZWxhdGlv biBhcyB0aGUgb3duZXIgKi8KLQlyZWwtPnBnc3RhdF9pbmZvLT5yZWxhdGlvbiA9IHJlbDsK KwlyZWwtPnBnc3RhdHRhYl9pbmZvLT5yZWxhdGlvbiA9IHJlbDsKIH0KIAogLyoKLSAqIEJy ZWFrIHRoZSBtdXR1YWwgbGluayBiZXR3ZWVuIGEgcmVsY2FjaGUgZW50cnkgYW5kIHBlbmRp bmcgc3RhdHMgZW50cnkuCisgKiBCcmVhayB0aGUgbXV0dWFsIGxpbmsgYmV0d2VlbiBhIHJl bGNhY2hlIGVudHJ5IGFuZCBwZW5kaW5nIHRhYmxlIHN0YXRzIGVudHJ5LgogICogVGhpcyBt dXN0IGJlIGNhbGxlZCB3aGVuZXZlciBvbmUgZW5kIG9mIHRoZSBsaW5rIGlzIHJlbW92ZWQu CiAgKi8KIHZvaWQKLXBnc3RhdF91bmxpbmtfcmVsYXRpb24oUmVsYXRpb24gcmVsKQorcGdz dGF0X3VubGlua190YWJsZShSZWxhdGlvbiByZWwpCiB7Ci0JLyogcmVtb3ZlIHRoZSBsaW5r IHRvIHN0YXRzIGluZm8gaWYgYW55ICovCi0JaWYgKHJlbC0+cGdzdGF0X2luZm8gPT0gTlVM TCkKKworCWlmIChyZWwtPnBnc3RhdHRhYl9pbmZvID09IE5VTEwpCiAJCXJldHVybjsKIAot CS8qIGxpbmsgc2FuaXR5IGNoZWNrICovCi0JQXNzZXJ0KHJlbC0+cGdzdGF0X2luZm8tPnJl bGF0aW9uID09IHJlbCk7Ci0JcmVsLT5wZ3N0YXRfaW5mby0+cmVsYXRpb24gPSBOVUxMOwot CXJlbC0+cGdzdGF0X2luZm8gPSBOVUxMOworCS8qIGxpbmsgc2FuaXR5IGNoZWNrIGZvciB0 aGUgdGFibGUgc3RhdHMgKi8KKwlpZiAocmVsLT5wZ3N0YXR0YWJfaW5mbykKKwl7CisJCUFz c2VydChyZWwtPnBnc3RhdHRhYl9pbmZvLT5yZWxhdGlvbiA9PSByZWwpOworCQlyZWwtPnBn c3RhdHRhYl9pbmZvLT5yZWxhdGlvbiA9IE5VTEw7CisJCXJlbC0+cGdzdGF0dGFiX2luZm8g PSBOVUxMOworCX0KIH0KIAogLyoKLSAqIEVuc3VyZSB0aGF0IHN0YXRzIGFyZSBkcm9wcGVk IGlmIHRyYW5zYWN0aW9uIGFib3J0cy4KKyAqIEVuc3VyZSB0aGF0IHRhYmxlIHN0YXRzIGFy ZSBkcm9wcGVkIGlmIHRyYW5zYWN0aW9uIGFib3J0cy4KICAqLwogdm9pZAotcGdzdGF0X2Ny ZWF0ZV9yZWxhdGlvbihSZWxhdGlvbiByZWwpCitwZ3N0YXRfY3JlYXRlX3RhYmxlKFJlbGF0 aW9uIHJlbCkKIHsKLQlwZ3N0YXRfY3JlYXRlX3RyYW5zYWN0aW9uYWwoUEdTVEFUX0tJTkRf UkVMQVRJT04sCisJcGdzdGF0X2NyZWF0ZV90cmFuc2FjdGlvbmFsKFBHU1RBVF9LSU5EX1RB QkxFLAogCQkJCQkJCQlyZWwtPnJkX3JlbC0+cmVsaXNzaGFyZWQgPyBJbnZhbGlkT2lkIDog TXlEYXRhYmFzZUlkLAogCQkJCQkJCQlSZWxhdGlvbkdldFJlbGlkKHJlbCkpOwogfQogCiAv KgotICogRW5zdXJlIHRoYXQgc3RhdHMgYXJlIGRyb3BwZWQgaWYgdHJhbnNhY3Rpb24gY29t bWl0cy4KKyAqIEVuc3VyZSB0aGF0IHRhYmxlIHN0YXRzIGFyZSBkcm9wcGVkIGlmIHRyYW5z YWN0aW9uIGNvbW1pdHMuCiAgKi8KIHZvaWQKLXBnc3RhdF9kcm9wX3JlbGF0aW9uKFJlbGF0 aW9uIHJlbCkKK3Bnc3RhdF9kcm9wX3RhYmxlKFJlbGF0aW9uIHJlbCkKIHsKIAlpbnQJCQlu ZXN0X2xldmVsID0gR2V0Q3VycmVudFRyYW5zYWN0aW9uTmVzdExldmVsKCk7Ci0JUGdTdGF0 X1RhYmxlU3RhdHVzICpwZ3N0YXRfaW5mbzsKKwlQZ1N0YXRfVGFibGVTdGF0dXMgKnBnc3Rh dHRhYl9pbmZvOwogCi0JcGdzdGF0X2Ryb3BfdHJhbnNhY3Rpb25hbChQR1NUQVRfS0lORF9S RUxBVElPTiwKKwlwZ3N0YXRfZHJvcF90cmFuc2FjdGlvbmFsKFBHU1RBVF9LSU5EX1RBQkxF LAogCQkJCQkJCSAgcmVsLT5yZF9yZWwtPnJlbGlzc2hhcmVkID8gSW52YWxpZE9pZCA6IE15 RGF0YWJhc2VJZCwKIAkJCQkJCQkgIFJlbGF0aW9uR2V0UmVsaWQocmVsKSk7CiAKLQlpZiAo IXBnc3RhdF9zaG91bGRfY291bnRfcmVsYXRpb24ocmVsKSkKKwlpZiAoIXBnc3RhdF9zaG91 bGRfY291bnRfdGFibGUocmVsKSkKIAkJcmV0dXJuOwogCiAJLyoKIAkgKiBUcmFuc2FjdGlv bmFsbHkgc2V0IGNvdW50ZXJzIHRvIDAuIFRoYXQgZW5zdXJlcyB0aGF0IGFjY2Vzc2VzIHRv CiAJICogcGdfc3RhdF94YWN0X2FsbF90YWJsZXMgaW5zaWRlIHRoZSB0cmFuc2FjdGlvbiBz aG93IDAuCiAJICovCi0JcGdzdGF0X2luZm8gPSByZWwtPnBnc3RhdF9pbmZvOwotCWlmIChw Z3N0YXRfaW5mby0+dHJhbnMgJiYKLQkJcGdzdGF0X2luZm8tPnRyYW5zLT5uZXN0X2xldmVs ID09IG5lc3RfbGV2ZWwpCisJcGdzdGF0dGFiX2luZm8gPSByZWwtPnBnc3RhdHRhYl9pbmZv OworCWlmIChwZ3N0YXR0YWJfaW5mby0+dHJhbnMgJiYKKwkJcGdzdGF0dGFiX2luZm8tPnRy YW5zLT5uZXN0X2xldmVsID09IG5lc3RfbGV2ZWwpCiAJewotCQlzYXZlX3RydW5jZHJvcF9j b3VudGVycyhwZ3N0YXRfaW5mby0+dHJhbnMsIHRydWUpOwotCQlwZ3N0YXRfaW5mby0+dHJh bnMtPnR1cGxlc19pbnNlcnRlZCA9IDA7Ci0JCXBnc3RhdF9pbmZvLT50cmFucy0+dHVwbGVz X3VwZGF0ZWQgPSAwOwotCQlwZ3N0YXRfaW5mby0+dHJhbnMtPnR1cGxlc19kZWxldGVkID0g MDsKKwkJc2F2ZV90cnVuY2Ryb3BfY291bnRlcnMocGdzdGF0dGFiX2luZm8tPnRyYW5zLCB0 cnVlKTsKKwkJcGdzdGF0dGFiX2luZm8tPnRyYW5zLT50dXBsZXNfaW5zZXJ0ZWQgPSAwOwor CQlwZ3N0YXR0YWJfaW5mby0+dHJhbnMtPnR1cGxlc191cGRhdGVkID0gMDsKKwkJcGdzdGF0 dGFiX2luZm8tPnRyYW5zLT50dXBsZXNfZGVsZXRlZCA9IDA7CiAJfQogfQogCkBAIC0yMTMs NyArMTkwLDcgQEAgcGdzdGF0X3JlcG9ydF92YWN1dW0oT2lkIHRhYmxlb2lkLCBib29sIHNo YXJlZCwKIAkJCQkJIFBnU3RhdF9Db3VudGVyIGxpdmV0dXBsZXMsIFBnU3RhdF9Db3VudGVy IGRlYWR0dXBsZXMpCiB7CiAJUGdTdGF0X0VudHJ5UmVmICplbnRyeV9yZWY7Ci0JUGdTdGF0 U2hhcmVkX1JlbGF0aW9uICpzaHRhYmVudHJ5OworCVBnU3RhdFNoYXJlZF9UYWJsZSAqc2h0 YWJlbnRyeTsKIAlQZ1N0YXRfU3RhdFRhYkVudHJ5ICp0YWJlbnRyeTsKIAlPaWQJCQlkYm9p ZCA9IChzaGFyZWQgPyBJbnZhbGlkT2lkIDogTXlEYXRhYmFzZUlkKTsKIAlUaW1lc3RhbXBU eiB0czsKQEAgLTIyNSwxMCArMjAyLDEwIEBAIHBnc3RhdF9yZXBvcnRfdmFjdXVtKE9pZCB0 YWJsZW9pZCwgYm9vbCBzaGFyZWQsCiAJdHMgPSBHZXRDdXJyZW50VGltZXN0YW1wKCk7CiAK IAkvKiBibG9jayBhY3F1aXJpbmcgbG9jayBmb3IgdGhlIHNhbWUgcmVhc29uIGFzIHBnc3Rh dF9yZXBvcnRfYXV0b3ZhYygpICovCi0JZW50cnlfcmVmID0gcGdzdGF0X2dldF9lbnRyeV9y ZWZfbG9ja2VkKFBHU1RBVF9LSU5EX1JFTEFUSU9OLAorCWVudHJ5X3JlZiA9IHBnc3RhdF9n ZXRfZW50cnlfcmVmX2xvY2tlZChQR1NUQVRfS0lORF9UQUJMRSwKIAkJCQkJCQkJCQkJZGJv aWQsIHRhYmxlb2lkLCBmYWxzZSk7CiAKLQlzaHRhYmVudHJ5ID0gKFBnU3RhdFNoYXJlZF9S ZWxhdGlvbiAqKSBlbnRyeV9yZWYtPnNoYXJlZF9zdGF0czsKKwlzaHRhYmVudHJ5ID0gKFBn U3RhdFNoYXJlZF9UYWJsZSAqKSBlbnRyeV9yZWYtPnNoYXJlZF9zdGF0czsKIAl0YWJlbnRy eSA9ICZzaHRhYmVudHJ5LT5zdGF0czsKIAogCXRhYmVudHJ5LT5saXZlX3R1cGxlcyA9IGxp dmV0dXBsZXM7CkBAIC0yODAsNyArMjU3LDcgQEAgcGdzdGF0X3JlcG9ydF9hbmFseXplKFJl bGF0aW9uIHJlbCwKIAkJCQkJICBib29sIHJlc2V0Y291bnRlcikKIHsKIAlQZ1N0YXRfRW50 cnlSZWYgKmVudHJ5X3JlZjsKLQlQZ1N0YXRTaGFyZWRfUmVsYXRpb24gKnNodGFiZW50cnk7 CisJUGdTdGF0U2hhcmVkX1RhYmxlICpzaHRhYmVudHJ5OwogCVBnU3RhdF9TdGF0VGFiRW50 cnkgKnRhYmVudHJ5OwogCU9pZAkJCWRib2lkID0gKHJlbC0+cmRfcmVsLT5yZWxpc3NoYXJl ZCA/IEludmFsaWRPaWQgOiBNeURhdGFiYXNlSWQpOwogCkBAIC0yOTksMzEgKzI3NiwzMSBA QCBwZ3N0YXRfcmVwb3J0X2FuYWx5emUoUmVsYXRpb24gcmVsLAogCSAqCiAJICogV2FzdGUg bm8gdGltZSBvbiBwYXJ0aXRpb25lZCB0YWJsZXMsIHRob3VnaC4KIAkgKi8KLQlpZiAocGdz dGF0X3Nob3VsZF9jb3VudF9yZWxhdGlvbihyZWwpICYmCisJaWYgKHBnc3RhdF9zaG91bGRf Y291bnRfdGFibGUocmVsKSAmJgogCQlyZWwtPnJkX3JlbC0+cmVsa2luZCAhPSBSRUxLSU5E X1BBUlRJVElPTkVEX1RBQkxFKQogCXsKIAkJUGdTdGF0X1RhYmxlWGFjdFN0YXR1cyAqdHJh bnM7CiAKLQkJZm9yICh0cmFucyA9IHJlbC0+cGdzdGF0X2luZm8tPnRyYW5zOyB0cmFuczsg dHJhbnMgPSB0cmFucy0+dXBwZXIpCisJCWZvciAodHJhbnMgPSByZWwtPnBnc3RhdHRhYl9p bmZvLT50cmFuczsgdHJhbnM7IHRyYW5zID0gdHJhbnMtPnVwcGVyKQogCQl7CiAJCQlsaXZl dHVwbGVzIC09IHRyYW5zLT50dXBsZXNfaW5zZXJ0ZWQgLSB0cmFucy0+dHVwbGVzX2RlbGV0 ZWQ7CiAJCQlkZWFkdHVwbGVzIC09IHRyYW5zLT50dXBsZXNfdXBkYXRlZCArIHRyYW5zLT50 dXBsZXNfZGVsZXRlZDsKIAkJfQogCQkvKiBjb3VudCBzdHVmZiBpbnNlcnRlZCBieSBhbHJl YWR5LWFib3J0ZWQgc3VieGFjdHMsIHRvbyAqLwotCQlkZWFkdHVwbGVzIC09IHJlbC0+cGdz dGF0X2luZm8tPnRfY291bnRzLnRfZGVsdGFfZGVhZF90dXBsZXM7CisJCWRlYWR0dXBsZXMg LT0gcmVsLT5wZ3N0YXR0YWJfaW5mby0+dF9jb3VudHMudF9kZWx0YV9kZWFkX3R1cGxlczsK IAkJLyogU2luY2UgQU5BTFlaRSdzIGNvdW50cyBhcmUgZXN0aW1hdGVzLCB3ZSBjb3VsZCBo YXZlIHVuZGVyZmxvd2VkICovCiAJCWxpdmV0dXBsZXMgPSBNYXgobGl2ZXR1cGxlcywgMCk7 CiAJCWRlYWR0dXBsZXMgPSBNYXgoZGVhZHR1cGxlcywgMCk7CiAJfQogCiAJLyogYmxvY2sg YWNxdWlyaW5nIGxvY2sgZm9yIHRoZSBzYW1lIHJlYXNvbiBhcyBwZ3N0YXRfcmVwb3J0X2F1 dG92YWMoKSAqLwotCWVudHJ5X3JlZiA9IHBnc3RhdF9nZXRfZW50cnlfcmVmX2xvY2tlZChQ R1NUQVRfS0lORF9SRUxBVElPTiwgZGJvaWQsCisJZW50cnlfcmVmID0gcGdzdGF0X2dldF9l bnRyeV9yZWZfbG9ja2VkKFBHU1RBVF9LSU5EX1RBQkxFLCBkYm9pZCwKIAkJCQkJCQkJCQkJ UmVsYXRpb25HZXRSZWxpZChyZWwpLAogCQkJCQkJCQkJCQlmYWxzZSk7CiAJLyogY2FuJ3Qg Z2V0IGRyb3BwZWQgd2hpbGUgYWNjZXNzZWQgKi8KIAlBc3NlcnQoZW50cnlfcmVmICE9IE5V TEwgJiYgZW50cnlfcmVmLT5zaGFyZWRfc3RhdHMgIT0gTlVMTCk7CiAKLQlzaHRhYmVudHJ5 ID0gKFBnU3RhdFNoYXJlZF9SZWxhdGlvbiAqKSBlbnRyeV9yZWYtPnNoYXJlZF9zdGF0czsK KwlzaHRhYmVudHJ5ID0gKFBnU3RhdFNoYXJlZF9UYWJsZSAqKSBlbnRyeV9yZWYtPnNoYXJl ZF9zdGF0czsKIAl0YWJlbnRyeSA9ICZzaHRhYmVudHJ5LT5zdGF0czsKIAogCXRhYmVudHJ5 LT5saXZlX3R1cGxlcyA9IGxpdmV0dXBsZXM7CkBAIC0zNjAsMTIgKzMzNywxMiBAQCBwZ3N0 YXRfcmVwb3J0X2FuYWx5emUoUmVsYXRpb24gcmVsLAogdm9pZAogcGdzdGF0X2NvdW50X2hl YXBfaW5zZXJ0KFJlbGF0aW9uIHJlbCwgUGdTdGF0X0NvdW50ZXIgbikKIHsKLQlpZiAocGdz dGF0X3Nob3VsZF9jb3VudF9yZWxhdGlvbihyZWwpKQorCWlmIChwZ3N0YXRfc2hvdWxkX2Nv dW50X3RhYmxlKHJlbCkpCiAJewotCQlQZ1N0YXRfVGFibGVTdGF0dXMgKnBnc3RhdF9pbmZv ID0gcmVsLT5wZ3N0YXRfaW5mbzsKKwkJUGdTdGF0X1RhYmxlU3RhdHVzICpwZ3N0YXR0YWJf aW5mbyA9IHJlbC0+cGdzdGF0dGFiX2luZm87CiAKLQkJZW5zdXJlX3RhYnN0YXRfeGFjdF9s ZXZlbChwZ3N0YXRfaW5mbyk7Ci0JCXBnc3RhdF9pbmZvLT50cmFucy0+dHVwbGVzX2luc2Vy dGVkICs9IG47CisJCWVuc3VyZV90YWJzdGF0X3hhY3RfbGV2ZWwocGdzdGF0dGFiX2luZm8p OworCQlwZ3N0YXR0YWJfaW5mby0+dHJhbnMtPnR1cGxlc19pbnNlcnRlZCArPSBuOwogCX0K IH0KIApAQCAtMzc1LDE2ICszNTIsMTYgQEAgcGdzdGF0X2NvdW50X2hlYXBfaW5zZXJ0KFJl bGF0aW9uIHJlbCwgUGdTdGF0X0NvdW50ZXIgbikKIHZvaWQKIHBnc3RhdF9jb3VudF9oZWFw X3VwZGF0ZShSZWxhdGlvbiByZWwsIGJvb2wgaG90KQogewotCWlmIChwZ3N0YXRfc2hvdWxk X2NvdW50X3JlbGF0aW9uKHJlbCkpCisJaWYgKHBnc3RhdF9zaG91bGRfY291bnRfdGFibGUo cmVsKSkKIAl7Ci0JCVBnU3RhdF9UYWJsZVN0YXR1cyAqcGdzdGF0X2luZm8gPSByZWwtPnBn c3RhdF9pbmZvOworCQlQZ1N0YXRfVGFibGVTdGF0dXMgKnBnc3RhdHRhYl9pbmZvID0gcmVs LT5wZ3N0YXR0YWJfaW5mbzsKIAotCQllbnN1cmVfdGFic3RhdF94YWN0X2xldmVsKHBnc3Rh dF9pbmZvKTsKLQkJcGdzdGF0X2luZm8tPnRyYW5zLT50dXBsZXNfdXBkYXRlZCsrOworCQll bnN1cmVfdGFic3RhdF94YWN0X2xldmVsKHBnc3RhdHRhYl9pbmZvKTsKKwkJcGdzdGF0dGFi X2luZm8tPnRyYW5zLT50dXBsZXNfdXBkYXRlZCsrOwogCiAJCS8qIHRfdHVwbGVzX2hvdF91 cGRhdGVkIGlzIG5vbnRyYW5zYWN0aW9uYWwsIHNvIGp1c3QgYWR2YW5jZSBpdCAqLwogCQlp ZiAoaG90KQotCQkJcGdzdGF0X2luZm8tPnRfY291bnRzLnRfdHVwbGVzX2hvdF91cGRhdGVk Kys7CisJCQlwZ3N0YXR0YWJfaW5mby0+dF9jb3VudHMudF90dXBsZXNfaG90X3VwZGF0ZWQr KzsKIAl9CiB9CiAKQEAgLTM5NCwxMiArMzcxLDEyIEBAIHBnc3RhdF9jb3VudF9oZWFwX3Vw ZGF0ZShSZWxhdGlvbiByZWwsIGJvb2wgaG90KQogdm9pZAogcGdzdGF0X2NvdW50X2hlYXBf ZGVsZXRlKFJlbGF0aW9uIHJlbCkKIHsKLQlpZiAocGdzdGF0X3Nob3VsZF9jb3VudF9yZWxh dGlvbihyZWwpKQorCWlmIChwZ3N0YXRfc2hvdWxkX2NvdW50X3RhYmxlKHJlbCkpCiAJewot CQlQZ1N0YXRfVGFibGVTdGF0dXMgKnBnc3RhdF9pbmZvID0gcmVsLT5wZ3N0YXRfaW5mbzsK KwkJUGdTdGF0X1RhYmxlU3RhdHVzICpwZ3N0YXR0YWJfaW5mbyA9IHJlbC0+cGdzdGF0dGFi X2luZm87CiAKLQkJZW5zdXJlX3RhYnN0YXRfeGFjdF9sZXZlbChwZ3N0YXRfaW5mbyk7Ci0J CXBnc3RhdF9pbmZvLT50cmFucy0+dHVwbGVzX2RlbGV0ZWQrKzsKKwkJZW5zdXJlX3RhYnN0 YXRfeGFjdF9sZXZlbChwZ3N0YXR0YWJfaW5mbyk7CisJCXBnc3RhdHRhYl9pbmZvLT50cmFu cy0+dHVwbGVzX2RlbGV0ZWQrKzsKIAl9CiB9CiAKQEAgLTQwOSwxNSArMzg2LDE1IEBAIHBn c3RhdF9jb3VudF9oZWFwX2RlbGV0ZShSZWxhdGlvbiByZWwpCiB2b2lkCiBwZ3N0YXRfY291 bnRfdHJ1bmNhdGUoUmVsYXRpb24gcmVsKQogewotCWlmIChwZ3N0YXRfc2hvdWxkX2NvdW50 X3JlbGF0aW9uKHJlbCkpCisJaWYgKHBnc3RhdF9zaG91bGRfY291bnRfdGFibGUocmVsKSkK IAl7Ci0JCVBnU3RhdF9UYWJsZVN0YXR1cyAqcGdzdGF0X2luZm8gPSByZWwtPnBnc3RhdF9p bmZvOworCQlQZ1N0YXRfVGFibGVTdGF0dXMgKnBnc3RhdHRhYl9pbmZvID0gcmVsLT5wZ3N0 YXR0YWJfaW5mbzsKIAotCQllbnN1cmVfdGFic3RhdF94YWN0X2xldmVsKHBnc3RhdF9pbmZv KTsKLQkJc2F2ZV90cnVuY2Ryb3BfY291bnRlcnMocGdzdGF0X2luZm8tPnRyYW5zLCBmYWxz ZSk7Ci0JCXBnc3RhdF9pbmZvLT50cmFucy0+dHVwbGVzX2luc2VydGVkID0gMDsKLQkJcGdz dGF0X2luZm8tPnRyYW5zLT50dXBsZXNfdXBkYXRlZCA9IDA7Ci0JCXBnc3RhdF9pbmZvLT50 cmFucy0+dHVwbGVzX2RlbGV0ZWQgPSAwOworCQllbnN1cmVfdGFic3RhdF94YWN0X2xldmVs KHBnc3RhdHRhYl9pbmZvKTsKKwkJc2F2ZV90cnVuY2Ryb3BfY291bnRlcnMocGdzdGF0dGFi X2luZm8tPnRyYW5zLCBmYWxzZSk7CisJCXBnc3RhdHRhYl9pbmZvLT50cmFucy0+dHVwbGVz X2luc2VydGVkID0gMDsKKwkJcGdzdGF0dGFiX2luZm8tPnRyYW5zLT50dXBsZXNfdXBkYXRl ZCA9IDA7CisJCXBnc3RhdHRhYl9pbmZvLT50cmFucy0+dHVwbGVzX2RlbGV0ZWQgPSAwOwog CX0KIH0KIApAQCAtNDMyLDExICs0MDksMTEgQEAgcGdzdGF0X2NvdW50X3RydW5jYXRlKFJl bGF0aW9uIHJlbCkKIHZvaWQKIHBnc3RhdF91cGRhdGVfaGVhcF9kZWFkX3R1cGxlcyhSZWxh dGlvbiByZWwsIGludCBkZWx0YSkKIHsKLQlpZiAocGdzdGF0X3Nob3VsZF9jb3VudF9yZWxh dGlvbihyZWwpKQorCWlmIChwZ3N0YXRfc2hvdWxkX2NvdW50X3RhYmxlKHJlbCkpCiAJewot CQlQZ1N0YXRfVGFibGVTdGF0dXMgKnBnc3RhdF9pbmZvID0gcmVsLT5wZ3N0YXRfaW5mbzsK KwkJUGdTdGF0X1RhYmxlU3RhdHVzICpwZ3N0YXR0YWJfaW5mbyA9IHJlbC0+cGdzdGF0dGFi X2luZm87CiAKLQkJcGdzdGF0X2luZm8tPnRfY291bnRzLnRfZGVsdGFfZGVhZF90dXBsZXMg LT0gZGVsdGE7CisJCXBnc3RhdHRhYl9pbmZvLT50X2NvdW50cy50X2RlbHRhX2RlYWRfdHVw bGVzIC09IGRlbHRhOwogCX0KIH0KIApAQCAtNDYyLDcgKzQzOSw3IEBAIHBnc3RhdF9mZXRj aF9zdGF0X3RhYmVudHJ5X2V4dChib29sIHNoYXJlZCwgT2lkIHJlbG9pZCkKIAlPaWQJCQlk Ym9pZCA9IChzaGFyZWQgPyBJbnZhbGlkT2lkIDogTXlEYXRhYmFzZUlkKTsKIAogCXJldHVy biAoUGdTdGF0X1N0YXRUYWJFbnRyeSAqKQotCQlwZ3N0YXRfZmV0Y2hfZW50cnkoUEdTVEFU X0tJTkRfUkVMQVRJT04sIGRib2lkLCByZWxvaWQpOworCQlwZ3N0YXRfZmV0Y2hfZW50cnko UEdTVEFUX0tJTkRfVEFCTEUsIGRib2lkLCByZWxvaWQpOwogfQogCiAvKgpAQCAtNDc4LDkg KzQ1NSw5IEBAIGZpbmRfdGFic3RhdF9lbnRyeShPaWQgcmVsX2lkKQogewogCVBnU3RhdF9F bnRyeVJlZiAqZW50cnlfcmVmOwogCi0JZW50cnlfcmVmID0gcGdzdGF0X2ZldGNoX3BlbmRp bmdfZW50cnkoUEdTVEFUX0tJTkRfUkVMQVRJT04sIE15RGF0YWJhc2VJZCwgcmVsX2lkKTsK KwllbnRyeV9yZWYgPSBwZ3N0YXRfZmV0Y2hfcGVuZGluZ19lbnRyeShQR1NUQVRfS0lORF9U QUJMRSwgTXlEYXRhYmFzZUlkLCByZWxfaWQpOwogCWlmICghZW50cnlfcmVmKQotCQllbnRy eV9yZWYgPSBwZ3N0YXRfZmV0Y2hfcGVuZGluZ19lbnRyeShQR1NUQVRfS0lORF9SRUxBVElP TiwgSW52YWxpZE9pZCwgcmVsX2lkKTsKKwkJZW50cnlfcmVmID0gcGdzdGF0X2ZldGNoX3Bl bmRpbmdfZW50cnkoUEdTVEFUX0tJTkRfVEFCTEUsIEludmFsaWRPaWQsIHJlbF9pZCk7CiAK IAlpZiAoZW50cnlfcmVmKQogCQlyZXR1cm4gZW50cnlfcmVmLT5wZW5kaW5nOwpAQCAtNDg4 LDcgKzQ2NSw3IEBAIGZpbmRfdGFic3RhdF9lbnRyeShPaWQgcmVsX2lkKQogfQogCiAvKgot ICogUGVyZm9ybSByZWxhdGlvbiBzdGF0cyBzcGVjaWZpYyBlbmQtb2YtdHJhbnNhY3Rpb24g d29yay4gSGVscGVyIGZvcgorICogUGVyZm9ybSB0YWJsZSBzdGF0cyBzcGVjaWZpYyBlbmQt b2YtdHJhbnNhY3Rpb24gd29yay4gSGVscGVyIGZvcgogICogQXRFT1hhY3RfUGdTdGF0Lgog ICoKICAqIFRyYW5zZmVyIHRyYW5zYWN0aW9uYWwgaW5zZXJ0L3VwZGF0ZSBjb3VudHMgaW50 byB0aGUgYmFzZSB0YWJzdGF0IGVudHJpZXMuCkBAIC00OTYsNyArNDczLDcgQEAgZmluZF90 YWJzdGF0X2VudHJ5KE9pZCByZWxfaWQpCiAgKiBUb3BUcmFuc2FjdGlvbkNvbnRleHQgYW5k IHdpbGwgZ28gYXdheSBhbnl3YXkuCiAgKi8KIHZvaWQKLUF0RU9YYWN0X1BnU3RhdF9SZWxh dGlvbnMoUGdTdGF0X1N1YlhhY3RTdGF0dXMgKnhhY3Rfc3RhdGUsIGJvb2wgaXNDb21taXQp CitBdEVPWGFjdF9QZ1N0YXRfVGFibGVzKFBnU3RhdF9TdWJYYWN0U3RhdHVzICp4YWN0X3N0 YXRlLCBib29sIGlzQ29tbWl0KQogewogCVBnU3RhdF9UYWJsZVhhY3RTdGF0dXMgKnRyYW5z OwogCkBAIC01NDcsMTQgKzUyNCwxNCBAQCBBdEVPWGFjdF9QZ1N0YXRfUmVsYXRpb25zKFBn U3RhdF9TdWJYYWN0U3RhdHVzICp4YWN0X3N0YXRlLCBib29sIGlzQ29tbWl0KQogfQogCiAv KgotICogUGVyZm9ybSByZWxhdGlvbiBzdGF0cyBzcGVjaWZpYyBlbmQtb2Ytc3ViLXRyYW5z YWN0aW9uIHdvcmsuIEhlbHBlciBmb3IKKyAqIFBlcmZvcm0gdGFibGUgc3RhdHMgc3BlY2lm aWMgZW5kLW9mLXN1Yi10cmFuc2FjdGlvbiB3b3JrLiBIZWxwZXIgZm9yCiAgKiBBdEVPU3Vi WGFjdF9QZ1N0YXQuCiAgKgogICogVHJhbnNmZXIgdHJhbnNhY3Rpb25hbCBpbnNlcnQvdXBk YXRlIGNvdW50cyBpbnRvIHRoZSBuZXh0IGhpZ2hlcgogICogc3VidHJhbnNhY3Rpb24gc3Rh dGUuCiAgKi8KIHZvaWQKLUF0RU9TdWJYYWN0X1BnU3RhdF9SZWxhdGlvbnMoUGdTdGF0X1N1 YlhhY3RTdGF0dXMgKnhhY3Rfc3RhdGUsIGJvb2wgaXNDb21taXQsIGludCBuZXN0RGVwdGgp CitBdEVPU3ViWGFjdF9QZ1N0YXRfVGFibGVzKFBnU3RhdF9TdWJYYWN0U3RhdHVzICp4YWN0 X3N0YXRlLCBib29sIGlzQ29tbWl0LCBpbnQgbmVzdERlcHRoKQogewogCVBnU3RhdF9UYWJs ZVhhY3RTdGF0dXMgKnRyYW5zOwogCVBnU3RhdF9UYWJsZVhhY3RTdGF0dXMgKm5leHRfdHJh bnM7CkBAIC02MzEsMTEgKzYwOCwxMSBAQCBBdEVPU3ViWGFjdF9QZ1N0YXRfUmVsYXRpb25z KFBnU3RhdF9TdWJYYWN0U3RhdHVzICp4YWN0X3N0YXRlLCBib29sIGlzQ29tbWl0LCBpbgog fQogCiAvKgotICogR2VuZXJhdGUgMlBDIHJlY29yZHMgZm9yIGFsbCB0aGUgcGVuZGluZyB0 cmFuc2FjdGlvbi1kZXBlbmRlbnQgcmVsYXRpb24KKyAqIEdlbmVyYXRlIDJQQyByZWNvcmRz IGZvciBhbGwgdGhlIHBlbmRpbmcgdHJhbnNhY3Rpb24tZGVwZW5kZW50IHRhYmxlCiAgKiBz dGF0cy4KICAqLwogdm9pZAotQXRQcmVwYXJlX1BnU3RhdF9SZWxhdGlvbnMoUGdTdGF0X1N1 YlhhY3RTdGF0dXMgKnhhY3Rfc3RhdGUpCitBdFByZXBhcmVfUGdTdGF0X1RhYmxlcyhQZ1N0 YXRfU3ViWGFjdFN0YXR1cyAqeGFjdF9zdGF0ZSkKIHsKIAlQZ1N0YXRfVGFibGVYYWN0U3Rh dHVzICp0cmFuczsKIApAQCAtNjcwLDEwICs2NDcsMTAgQEAgQXRQcmVwYXJlX1BnU3RhdF9S ZWxhdGlvbnMoUGdTdGF0X1N1YlhhY3RTdGF0dXMgKnhhY3Rfc3RhdGUpCiAgKiByZXBvcnRl ZCB0byB0aGUgc3RhdHMgc3lzdGVtIGltbWVkaWF0ZWx5LCB3aGlsZSB0aGUgZWZmZWN0cyBv biBsaXZlIGFuZAogICogZGVhZCB0dXBsZSBjb3VudHMgYXJlIHByZXNlcnZlZCBpbiB0aGUg MlBDIHN0YXRlIGZpbGUuCiAgKgotICogTm90ZTogQXRFT1hhY3RfUGdTdGF0X1JlbGF0aW9u cyBpcyBub3QgY2FsbGVkIGR1cmluZyBQUkVQQVJFLgorICogTm90ZTogQXRFT1hhY3RfUGdT dGF0X1RhYmxlcyBpcyBub3QgY2FsbGVkIGR1cmluZyBQUkVQQVJFLgogICovCiB2b2lkCi1Q b3N0UHJlcGFyZV9QZ1N0YXRfUmVsYXRpb25zKFBnU3RhdF9TdWJYYWN0U3RhdHVzICp4YWN0 X3N0YXRlKQorUG9zdFByZXBhcmVfUGdTdGF0X1RhYmxlcyhQZ1N0YXRfU3ViWGFjdFN0YXR1 cyAqeGFjdF9zdGF0ZSkKIHsKIAlQZ1N0YXRfVGFibGVYYWN0U3RhdHVzICp0cmFuczsKIApA QCAtNjk2LDI3ICs2NzMsMjcgQEAgcGdzdGF0X3R3b3BoYXNlX3Bvc3Rjb21taXQoVHJhbnNh Y3Rpb25JZCB4aWQsIHVpbnQxNiBpbmZvLAogCQkJCQkJICAgdm9pZCAqcmVjZGF0YSwgdWlu dDMyIGxlbikKIHsKIAlUd29QaGFzZVBnU3RhdFJlY29yZCAqcmVjID0gKFR3b1BoYXNlUGdT dGF0UmVjb3JkICopIHJlY2RhdGE7Ci0JUGdTdGF0X1RhYmxlU3RhdHVzICpwZ3N0YXRfaW5m bzsKKwlQZ1N0YXRfVGFibGVTdGF0dXMgKnBnc3RhdHRhYl9pbmZvOwogCiAJLyogRmluZCBv ciBjcmVhdGUgYSB0YWJzdGF0IGVudHJ5IGZvciB0aGUgcmVsICovCi0JcGdzdGF0X2luZm8g PSBwZ3N0YXRfcHJlcF9yZWxhdGlvbl9wZW5kaW5nKHJlYy0+dF9pZCwgcmVjLT50X3NoYXJl ZCk7CisJcGdzdGF0dGFiX2luZm8gPSBwZ3N0YXRfcHJlcF90YWJsZV9wZW5kaW5nKHJlYy0+ dF9pZCwgcmVjLT50X3NoYXJlZCk7CiAKIAkvKiBTYW1lIG1hdGggYXMgaW4gQXRFT1hhY3Rf UGdTdGF0LCBjb21taXQgY2FzZSAqLwotCXBnc3RhdF9pbmZvLT50X2NvdW50cy50X3R1cGxl c19pbnNlcnRlZCArPSByZWMtPnR1cGxlc19pbnNlcnRlZDsKLQlwZ3N0YXRfaW5mby0+dF9j b3VudHMudF90dXBsZXNfdXBkYXRlZCArPSByZWMtPnR1cGxlc191cGRhdGVkOwotCXBnc3Rh dF9pbmZvLT50X2NvdW50cy50X3R1cGxlc19kZWxldGVkICs9IHJlYy0+dHVwbGVzX2RlbGV0 ZWQ7Ci0JcGdzdGF0X2luZm8tPnRfY291bnRzLnRfdHJ1bmNkcm9wcGVkID0gcmVjLT50X3Ry dW5jZHJvcHBlZDsKKwlwZ3N0YXR0YWJfaW5mby0+dF9jb3VudHMudF90dXBsZXNfaW5zZXJ0 ZWQgKz0gcmVjLT50dXBsZXNfaW5zZXJ0ZWQ7CisJcGdzdGF0dGFiX2luZm8tPnRfY291bnRz LnRfdHVwbGVzX3VwZGF0ZWQgKz0gcmVjLT50dXBsZXNfdXBkYXRlZDsKKwlwZ3N0YXR0YWJf aW5mby0+dF9jb3VudHMudF90dXBsZXNfZGVsZXRlZCArPSByZWMtPnR1cGxlc19kZWxldGVk OworCXBnc3RhdHRhYl9pbmZvLT50X2NvdW50cy50X3RydW5jZHJvcHBlZCA9IHJlYy0+dF90 cnVuY2Ryb3BwZWQ7CiAJaWYgKHJlYy0+dF90cnVuY2Ryb3BwZWQpCiAJewogCQkvKiBmb3Jn ZXQgbGl2ZS9kZWFkIHN0YXRzIHNlZW4gYnkgYmFja2VuZCB0aHVzIGZhciAqLwotCQlwZ3N0 YXRfaW5mby0+dF9jb3VudHMudF9kZWx0YV9saXZlX3R1cGxlcyA9IDA7Ci0JCXBnc3RhdF9p bmZvLT50X2NvdW50cy50X2RlbHRhX2RlYWRfdHVwbGVzID0gMDsKKwkJcGdzdGF0dGFiX2lu Zm8tPnRfY291bnRzLnRfZGVsdGFfbGl2ZV90dXBsZXMgPSAwOworCQlwZ3N0YXR0YWJfaW5m by0+dF9jb3VudHMudF9kZWx0YV9kZWFkX3R1cGxlcyA9IDA7CiAJfQotCXBnc3RhdF9pbmZv LT50X2NvdW50cy50X2RlbHRhX2xpdmVfdHVwbGVzICs9CisJcGdzdGF0dGFiX2luZm8tPnRf Y291bnRzLnRfZGVsdGFfbGl2ZV90dXBsZXMgKz0KIAkJcmVjLT50dXBsZXNfaW5zZXJ0ZWQg LSByZWMtPnR1cGxlc19kZWxldGVkOwotCXBnc3RhdF9pbmZvLT50X2NvdW50cy50X2RlbHRh X2RlYWRfdHVwbGVzICs9CisJcGdzdGF0dGFiX2luZm8tPnRfY291bnRzLnRfZGVsdGFfZGVh ZF90dXBsZXMgKz0KIAkJcmVjLT50dXBsZXNfdXBkYXRlZCArIHJlYy0+dHVwbGVzX2RlbGV0 ZWQ7Ci0JcGdzdGF0X2luZm8tPnRfY291bnRzLnRfY2hhbmdlZF90dXBsZXMgKz0KKwlwZ3N0 YXR0YWJfaW5mby0+dF9jb3VudHMudF9jaGFuZ2VkX3R1cGxlcyArPQogCQlyZWMtPnR1cGxl c19pbnNlcnRlZCArIHJlYy0+dHVwbGVzX3VwZGF0ZWQgKwogCQlyZWMtPnR1cGxlc19kZWxl dGVkOwogfQpAQCAtNzMyLDEwICs3MDksMTAgQEAgcGdzdGF0X3R3b3BoYXNlX3Bvc3RhYm9y dChUcmFuc2FjdGlvbklkIHhpZCwgdWludDE2IGluZm8sCiAJCQkJCQkgIHZvaWQgKnJlY2Rh dGEsIHVpbnQzMiBsZW4pCiB7CiAJVHdvUGhhc2VQZ1N0YXRSZWNvcmQgKnJlYyA9IChUd29Q aGFzZVBnU3RhdFJlY29yZCAqKSByZWNkYXRhOwotCVBnU3RhdF9UYWJsZVN0YXR1cyAqcGdz dGF0X2luZm87CisJUGdTdGF0X1RhYmxlU3RhdHVzICpwZ3N0YXR0YWJfaW5mbzsKIAogCS8q IEZpbmQgb3IgY3JlYXRlIGEgdGFic3RhdCBlbnRyeSBmb3IgdGhlIHJlbCAqLwotCXBnc3Rh dF9pbmZvID0gcGdzdGF0X3ByZXBfcmVsYXRpb25fcGVuZGluZyhyZWMtPnRfaWQsIHJlYy0+ dF9zaGFyZWQpOworCXBnc3RhdHRhYl9pbmZvID0gcGdzdGF0X3ByZXBfdGFibGVfcGVuZGlu ZyhyZWMtPnRfaWQsIHJlYy0+dF9zaGFyZWQpOwogCiAJLyogU2FtZSBtYXRoIGFzIGluIEF0 RU9YYWN0X1BnU3RhdCwgYWJvcnQgY2FzZSAqLwogCWlmIChyZWMtPnRfdHJ1bmNkcm9wcGVk KQpAQCAtNzQ0LDEwICs3MjEsMTAgQEAgcGdzdGF0X3R3b3BoYXNlX3Bvc3RhYm9ydChUcmFu c2FjdGlvbklkIHhpZCwgdWludDE2IGluZm8sCiAJCXJlYy0+dHVwbGVzX3VwZGF0ZWQgPSBy ZWMtPnVwZGF0ZWRfcHJlX3RydW5jZHJvcDsKIAkJcmVjLT50dXBsZXNfZGVsZXRlZCA9IHJl Yy0+ZGVsZXRlZF9wcmVfdHJ1bmNkcm9wOwogCX0KLQlwZ3N0YXRfaW5mby0+dF9jb3VudHMu dF90dXBsZXNfaW5zZXJ0ZWQgKz0gcmVjLT50dXBsZXNfaW5zZXJ0ZWQ7Ci0JcGdzdGF0X2lu Zm8tPnRfY291bnRzLnRfdHVwbGVzX3VwZGF0ZWQgKz0gcmVjLT50dXBsZXNfdXBkYXRlZDsK LQlwZ3N0YXRfaW5mby0+dF9jb3VudHMudF90dXBsZXNfZGVsZXRlZCArPSByZWMtPnR1cGxl c19kZWxldGVkOwotCXBnc3RhdF9pbmZvLT50X2NvdW50cy50X2RlbHRhX2RlYWRfdHVwbGVz ICs9CisJcGdzdGF0dGFiX2luZm8tPnRfY291bnRzLnRfdHVwbGVzX2luc2VydGVkICs9IHJl Yy0+dHVwbGVzX2luc2VydGVkOworCXBnc3RhdHRhYl9pbmZvLT50X2NvdW50cy50X3R1cGxl c191cGRhdGVkICs9IHJlYy0+dHVwbGVzX3VwZGF0ZWQ7CisJcGdzdGF0dGFiX2luZm8tPnRf Y291bnRzLnRfdHVwbGVzX2RlbGV0ZWQgKz0gcmVjLT50dXBsZXNfZGVsZXRlZDsKKwlwZ3N0 YXR0YWJfaW5mby0+dF9jb3VudHMudF9kZWx0YV9kZWFkX3R1cGxlcyArPQogCQlyZWMtPnR1 cGxlc19pbnNlcnRlZCArIHJlYy0+dHVwbGVzX3VwZGF0ZWQ7CiB9CiAKQEAgLTc2MSwyMiAr NzM4LDIxIEBAIHBnc3RhdF90d29waGFzZV9wb3N0YWJvcnQoVHJhbnNhY3Rpb25JZCB4aWQs IHVpbnQxNiBpbmZvLAogICogZW50cnkgd2hlbiBzdWNjZXNzZnVsbHkgZmx1c2hpbmcuCiAg Ki8KIGJvb2wKLXBnc3RhdF9yZWxhdGlvbl9mbHVzaF9jYihQZ1N0YXRfRW50cnlSZWYgKmVu dHJ5X3JlZiwgYm9vbCBub3dhaXQpCitwZ3N0YXRfdGFibGVfZmx1c2hfY2IoUGdTdGF0X0Vu dHJ5UmVmICplbnRyeV9yZWYsIGJvb2wgbm93YWl0KQogewogCXN0YXRpYyBjb25zdCBQZ1N0 YXRfVGFibGVDb3VudHMgYWxsX3plcm9lczsKIAlPaWQJCQlkYm9pZDsKIAlQZ1N0YXRfVGFi bGVTdGF0dXMgKmxzdGF0czsgLyogcGVuZGluZyBzdGF0cyBlbnRyeSAgKi8KLQlQZ1N0YXRT aGFyZWRfUmVsYXRpb24gKnNodGFic3RhdHM7CisJUGdTdGF0U2hhcmVkX1RhYmxlICpzaHRh YnN0YXRzOwogCVBnU3RhdF9TdGF0VGFiRW50cnkgKnRhYmVudHJ5OwkvKiB0YWJsZSBlbnRy eSBvZiBzaGFyZWQgc3RhdHMgKi8KIAlQZ1N0YXRfU3RhdERCRW50cnkgKmRiZW50cnk7CS8q IHBlbmRpbmcgZGF0YWJhc2UgZW50cnkgKi8KIAogCWRib2lkID0gZW50cnlfcmVmLT5zaGFy ZWRfZW50cnktPmtleS5kYm9pZDsKIAlsc3RhdHMgPSAoUGdTdGF0X1RhYmxlU3RhdHVzICop IGVudHJ5X3JlZi0+cGVuZGluZzsKLQlzaHRhYnN0YXRzID0gKFBnU3RhdFNoYXJlZF9SZWxh dGlvbiAqKSBlbnRyeV9yZWYtPnNoYXJlZF9zdGF0czsKKwlzaHRhYnN0YXRzID0gKFBnU3Rh dFNoYXJlZF9UYWJsZSAqKSBlbnRyeV9yZWYtPnNoYXJlZF9zdGF0czsKIAogCS8qCi0JICog SWdub3JlIGVudHJpZXMgdGhhdCBkaWRuJ3QgYWNjdW11bGF0ZSBhbnkgYWN0dWFsIGNvdW50 cywgc3VjaCBhcwotCSAqIGluZGV4ZXMgdGhhdCB3ZXJlIG9wZW5lZCBieSB0aGUgcGxhbm5l ciBidXQgbm90IHVzZWQuCisJICogSWdub3JlIGVudHJpZXMgdGhhdCBkaWRuJ3QgYWNjdW11 bGF0ZSBhbnkgYWN0dWFsIGNvdW50cy4KIAkgKi8KIAlpZiAobWVtY21wKCZsc3RhdHMtPnRf Y291bnRzLCAmYWxsX3plcm9lcywKIAkJCSAgIHNpemVvZihQZ1N0YXRfVGFibGVDb3VudHMp KSA9PSAwKQpAQCAtODQzLDEyICs4MTksMTIgQEAgcGdzdGF0X3JlbGF0aW9uX2ZsdXNoX2Ni KFBnU3RhdF9FbnRyeVJlZiAqZW50cnlfcmVmLCBib29sIG5vd2FpdCkKIH0KIAogdm9pZAot cGdzdGF0X3JlbGF0aW9uX2RlbGV0ZV9wZW5kaW5nX2NiKFBnU3RhdF9FbnRyeVJlZiAqZW50 cnlfcmVmKQorcGdzdGF0X3RhYmxlX2RlbGV0ZV9wZW5kaW5nX2NiKFBnU3RhdF9FbnRyeVJl ZiAqZW50cnlfcmVmKQogewogCVBnU3RhdF9UYWJsZVN0YXR1cyAqcGVuZGluZyA9IChQZ1N0 YXRfVGFibGVTdGF0dXMgKikgZW50cnlfcmVmLT5wZW5kaW5nOwogCiAJaWYgKHBlbmRpbmct PnJlbGF0aW9uKQotCQlwZ3N0YXRfdW5saW5rX3JlbGF0aW9uKHBlbmRpbmctPnJlbGF0aW9u KTsKKwkJcGdzdGF0X3VubGlua190YWJsZShwZW5kaW5nLT5yZWxhdGlvbik7CiB9CiAKIC8q CkBAIC04NTYsMTIgKzgzMiwxMiBAQCBwZ3N0YXRfcmVsYXRpb25fZGVsZXRlX3BlbmRpbmdf Y2IoUGdTdGF0X0VudHJ5UmVmICplbnRyeV9yZWYpCiAgKiBpbml0aWFsaXplZCBpZiBub3Qg ZXhpc3RzLgogICovCiBzdGF0aWMgUGdTdGF0X1RhYmxlU3RhdHVzICoKLXBnc3RhdF9wcmVw X3JlbGF0aW9uX3BlbmRpbmcoT2lkIHJlbF9pZCwgYm9vbCBpc3NoYXJlZCkKK3Bnc3RhdF9w cmVwX3RhYmxlX3BlbmRpbmcoT2lkIHJlbF9pZCwgYm9vbCBpc3NoYXJlZCkKIHsKIAlQZ1N0 YXRfRW50cnlSZWYgKmVudHJ5X3JlZjsKIAlQZ1N0YXRfVGFibGVTdGF0dXMgKnBlbmRpbmc7 CiAKLQllbnRyeV9yZWYgPSBwZ3N0YXRfcHJlcF9wZW5kaW5nX2VudHJ5KFBHU1RBVF9LSU5E X1JFTEFUSU9OLAorCWVudHJ5X3JlZiA9IHBnc3RhdF9wcmVwX3BlbmRpbmdfZW50cnkoUEdT VEFUX0tJTkRfVEFCTEUsCiAJCQkJCQkJCQkJICBpc3NoYXJlZCA/IEludmFsaWRPaWQgOiBN eURhdGFiYXNlSWQsCiAJCQkJCQkJCQkJICByZWxfaWQsIE5VTEwpOwogCXBlbmRpbmcgPSBl bnRyeV9yZWYtPnBlbmRpbmc7CkBAIC04NzUsNyArODUxLDcgQEAgcGdzdGF0X3ByZXBfcmVs YXRpb25fcGVuZGluZyhPaWQgcmVsX2lkLCBib29sIGlzc2hhcmVkKQogICogYWRkIGEgbmV3 IChzdWIpdHJhbnNhY3Rpb24gc3RhdGUgcmVjb3JkCiAgKi8KIHN0YXRpYyB2b2lkCi1hZGRf dGFic3RhdF94YWN0X2xldmVsKFBnU3RhdF9UYWJsZVN0YXR1cyAqcGdzdGF0X2luZm8sIGlu dCBuZXN0X2xldmVsKQorYWRkX3RhYnN0YXRfeGFjdF9sZXZlbChQZ1N0YXRfVGFibGVTdGF0 dXMgKnBnc3RhdHRhYl9pbmZvLCBpbnQgbmVzdF9sZXZlbCkKIHsKIAlQZ1N0YXRfU3ViWGFj dFN0YXR1cyAqeGFjdF9zdGF0ZTsKIAlQZ1N0YXRfVGFibGVYYWN0U3RhdHVzICp0cmFuczsK QEAgLTg5MSwyNCArODY3LDI0IEBAIGFkZF90YWJzdGF0X3hhY3RfbGV2ZWwoUGdTdGF0X1Rh YmxlU3RhdHVzICpwZ3N0YXRfaW5mbywgaW50IG5lc3RfbGV2ZWwpCiAJCU1lbW9yeUNvbnRl eHRBbGxvY1plcm8oVG9wVHJhbnNhY3Rpb25Db250ZXh0LAogCQkJCQkJCSAgIHNpemVvZihQ Z1N0YXRfVGFibGVYYWN0U3RhdHVzKSk7CiAJdHJhbnMtPm5lc3RfbGV2ZWwgPSBuZXN0X2xl dmVsOwotCXRyYW5zLT51cHBlciA9IHBnc3RhdF9pbmZvLT50cmFuczsKLQl0cmFucy0+cGFy ZW50ID0gcGdzdGF0X2luZm87CisJdHJhbnMtPnVwcGVyID0gcGdzdGF0dGFiX2luZm8tPnRy YW5zOworCXRyYW5zLT5wYXJlbnQgPSBwZ3N0YXR0YWJfaW5mbzsKIAl0cmFucy0+bmV4dCA9 IHhhY3Rfc3RhdGUtPmZpcnN0OwogCXhhY3Rfc3RhdGUtPmZpcnN0ID0gdHJhbnM7Ci0JcGdz dGF0X2luZm8tPnRyYW5zID0gdHJhbnM7CisJcGdzdGF0dGFiX2luZm8tPnRyYW5zID0gdHJh bnM7CiB9CiAKIC8qCiAgKiBBZGQgYSBuZXcgKHN1Yil0cmFuc2FjdGlvbiByZWNvcmQgaWYg bmVlZGVkLgogICovCiBzdGF0aWMgdm9pZAotZW5zdXJlX3RhYnN0YXRfeGFjdF9sZXZlbChQ Z1N0YXRfVGFibGVTdGF0dXMgKnBnc3RhdF9pbmZvKQorZW5zdXJlX3RhYnN0YXRfeGFjdF9s ZXZlbChQZ1N0YXRfVGFibGVTdGF0dXMgKnBnc3RhdHRhYl9pbmZvKQogewogCWludAkJCW5l c3RfbGV2ZWwgPSBHZXRDdXJyZW50VHJhbnNhY3Rpb25OZXN0TGV2ZWwoKTsKIAotCWlmIChw Z3N0YXRfaW5mby0+dHJhbnMgPT0gTlVMTCB8fAotCQlwZ3N0YXRfaW5mby0+dHJhbnMtPm5l c3RfbGV2ZWwgIT0gbmVzdF9sZXZlbCkKLQkJYWRkX3RhYnN0YXRfeGFjdF9sZXZlbChwZ3N0 YXRfaW5mbywgbmVzdF9sZXZlbCk7CisJaWYgKHBnc3RhdHRhYl9pbmZvLT50cmFucyA9PSBO VUxMIHx8CisJCXBnc3RhdHRhYl9pbmZvLT50cmFucy0+bmVzdF9sZXZlbCAhPSBuZXN0X2xl dmVsKQorCQlhZGRfdGFic3RhdF94YWN0X2xldmVsKHBnc3RhdHRhYl9pbmZvLCBuZXN0X2xl dmVsKTsKIH0KIAogLyoKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL3V0aWxzL2FjdGl2aXR5 L3Bnc3RhdF94YWN0LmMgYi9zcmMvYmFja2VuZC91dGlscy9hY3Rpdml0eS9wZ3N0YXRfeGFj dC5jCmluZGV4IDkxY2RkOTIyMmUuLmVlNDMzNjJiNzMgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNr ZW5kL3V0aWxzL2FjdGl2aXR5L3Bnc3RhdF94YWN0LmMKKysrIGIvc3JjL2JhY2tlbmQvdXRp bHMvYWN0aXZpdHkvcGdzdGF0X3hhY3QuYwpAQCAtNTEsNyArNTEsNyBAQCBBdEVPWGFjdF9Q Z1N0YXQoYm9vbCBpc0NvbW1pdCwgYm9vbCBwYXJhbGxlbCkKIAkJQXNzZXJ0KHhhY3Rfc3Rh dGUtPm5lc3RfbGV2ZWwgPT0gMSk7CiAJCUFzc2VydCh4YWN0X3N0YXRlLT5wcmV2ID09IE5V TEwpOwogCi0JCUF0RU9YYWN0X1BnU3RhdF9SZWxhdGlvbnMoeGFjdF9zdGF0ZSwgaXNDb21t aXQpOworCQlBdEVPWGFjdF9QZ1N0YXRfVGFibGVzKHhhY3Rfc3RhdGUsIGlzQ29tbWl0KTsK IAkJQXRFT1hhY3RfUGdTdGF0X0Ryb3BwZWRTdGF0cyh4YWN0X3N0YXRlLCBpc0NvbW1pdCk7 CiAJfQogCXBnU3RhdFhhY3RTdGFjayA9IE5VTEw7CkBAIC0xMjIsNyArMTIyLDcgQEAgQXRF T1N1YlhhY3RfUGdTdGF0KGJvb2wgaXNDb21taXQsIGludCBuZXN0RGVwdGgpCiAJCS8qIGRl bGluayB4YWN0X3N0YXRlIGZyb20gc3RhY2sgaW1tZWRpYXRlbHkgdG8gc2ltcGxpZnkgcmV1 c2UgY2FzZSAqLwogCQlwZ1N0YXRYYWN0U3RhY2sgPSB4YWN0X3N0YXRlLT5wcmV2OwogCi0J CUF0RU9TdWJYYWN0X1BnU3RhdF9SZWxhdGlvbnMoeGFjdF9zdGF0ZSwgaXNDb21taXQsIG5l c3REZXB0aCk7CisJCUF0RU9TdWJYYWN0X1BnU3RhdF9UYWJsZXMoeGFjdF9zdGF0ZSwgaXND b21taXQsIG5lc3REZXB0aCk7CiAJCUF0RU9TdWJYYWN0X1BnU3RhdF9Ecm9wcGVkU3RhdHMo eGFjdF9zdGF0ZSwgaXNDb21taXQsIG5lc3REZXB0aCk7CiAKIAkJcGZyZWUoeGFjdF9zdGF0 ZSk7CkBAIC0xOTcsNyArMTk3LDcgQEAgQXRQcmVwYXJlX1BnU3RhdCh2b2lkKQogCQlBc3Nl cnQoeGFjdF9zdGF0ZS0+bmVzdF9sZXZlbCA9PSAxKTsKIAkJQXNzZXJ0KHhhY3Rfc3RhdGUt PnByZXYgPT0gTlVMTCk7CiAKLQkJQXRQcmVwYXJlX1BnU3RhdF9SZWxhdGlvbnMoeGFjdF9z dGF0ZSk7CisJCUF0UHJlcGFyZV9QZ1N0YXRfVGFibGVzKHhhY3Rfc3RhdGUpOwogCX0KIH0K IApAQCAtMjIxLDcgKzIyMSw3IEBAIFBvc3RQcmVwYXJlX1BnU3RhdCh2b2lkKQogCQlBc3Nl cnQoeGFjdF9zdGF0ZS0+bmVzdF9sZXZlbCA9PSAxKTsKIAkJQXNzZXJ0KHhhY3Rfc3RhdGUt PnByZXYgPT0gTlVMTCk7CiAKLQkJUG9zdFByZXBhcmVfUGdTdGF0X1JlbGF0aW9ucyh4YWN0 X3N0YXRlKTsKKwkJUG9zdFByZXBhcmVfUGdTdGF0X1RhYmxlcyh4YWN0X3N0YXRlKTsKIAl9 CiAJcGdTdGF0WGFjdFN0YWNrID0gTlVMTDsKIApkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQv dXRpbHMvYWR0L3Bnc3RhdGZ1bmNzLmMgYi9zcmMvYmFja2VuZC91dGlscy9hZHQvcGdzdGF0 ZnVuY3MuYwppbmRleCAzNWM2ZDQ2NTU1Li5kYzQ2OWYxYjk2IDEwMDY0NAotLS0gYS9zcmMv YmFja2VuZC91dGlscy9hZHQvcGdzdGF0ZnVuY3MuYworKysgYi9zcmMvYmFja2VuZC91dGls cy9hZHQvcGdzdGF0ZnVuY3MuYwpAQCAtMzcsMTA2ICszNywxNTkgQEAKIAogI2RlZmluZSBI QVNfUEdTVEFUX1BFUk1JU1NJT05TKHJvbGUpCSAoaGFzX3ByaXZzX29mX3JvbGUoR2V0VXNl cklkKCksIFJPTEVfUEdfUkVBRF9BTExfU1RBVFMpIHx8IGhhc19wcml2c19vZl9yb2xlKEdl dFVzZXJJZCgpLCByb2xlKSkKIAotI2RlZmluZSBQR19TVEFUX0dFVF9SRUxFTlRSWV9JTlQ2 NChzdGF0KQkJCQkJCVwKLURhdHVtCQkJCQkJCQkJCQkJCQkJXAotQ3BwQ29uY2F0KHBnX3N0 YXRfZ2V0XyxzdGF0KShQR19GVU5DVElPTl9BUkdTKQkJCQkJXAotewkJCQkJCQkJCQkJCQkJ CQlcCi0JT2lkCQkJcmVsaWQgPSBQR19HRVRBUkdfT0lEKDApOwkJCQkJCVwKLQlpbnQ2NAkJ cmVzdWx0OwkJCQkJCQkJCQkJXAotCVBnU3RhdF9TdGF0VGFiRW50cnkgKnRhYmVudHJ5OwkJ CQkJCQkJXAotCQkJCQkJCQkJCQkJCQkJCVwKLQlpZiAoKHRhYmVudHJ5ID0gcGdzdGF0X2Zl dGNoX3N0YXRfdGFiZW50cnkocmVsaWQpKSA9PSBOVUxMKQlcCi0JCXJlc3VsdCA9IDA7CQkJ CQkJCQkJCQkJXAotCWVsc2UJCQkJCQkJCQkJCQkJCVwKLQkJcmVzdWx0ID0gKGludDY0KSAo dGFiZW50cnktPnN0YXQpOwkJCQkJCVwKLQkJCQkJCQkJCQkJCQkJCQlcCi0JUEdfUkVUVVJO X0lOVDY0KHJlc3VsdCk7CQkJCQkJCQkJXAotfQotCi0vKiBwZ19zdGF0X2dldF9hbmFseXpl X2NvdW50ICovCi1QR19TVEFUX0dFVF9SRUxFTlRSWV9JTlQ2NChhbmFseXplX2NvdW50KQot Ci0vKiBwZ19zdGF0X2dldF9hdXRvYW5hbHl6ZV9jb3VudCAqLwotUEdfU1RBVF9HRVRfUkVM RU5UUllfSU5UNjQoYXV0b2FuYWx5emVfY291bnQpCi0KLS8qIHBnX3N0YXRfZ2V0X2F1dG92 YWN1dW1fY291bnQgKi8KLVBHX1NUQVRfR0VUX1JFTEVOVFJZX0lOVDY0KGF1dG92YWN1dW1f Y291bnQpCi0KLS8qIHBnX3N0YXRfZ2V0X2Jsb2Nrc19mZXRjaGVkICovCi1QR19TVEFUX0dF VF9SRUxFTlRSWV9JTlQ2NChibG9ja3NfZmV0Y2hlZCkKKyNkZWZpbmUgUEdfU1RBVF9HRVRf VEFCRU5UUllfSU5UNjQoc3RhdCkJCQkJCQkJXAorRGF0dW0JCQkJCQkJCQkJCQkJCQkJXAor Q3BwQ29uY2F0KHBnX3N0YXRfZ2V0X3RhYl8sc3RhdCkoUEdfRlVOQ1RJT05fQVJHUykJCQkJ CVwKK3sJCQkJCQkJCQkJCQkJCQkJCVwKKwlPaWQJCQlyZWxpZCA9IFBHX0dFVEFSR19PSUQo MCk7CQkJCQkJCVwKKwlpbnQ2NAkJcmVzdWx0OwkJCQkJCQkJCQkJCVwKKwlQZ1N0YXRfU3Rh dFRhYkVudHJ5ICp0YWJlbnRyeTsJCQkJCQkJCQlcCisJCQkJCQkJCQkJCQkJCQkJCVwKKwlp ZiAoKHRhYmVudHJ5ID0gcGdzdGF0X2ZldGNoX3N0YXRfdGFiZW50cnkocmVsaWQpKSA9PSBO VUxMKQkJXAorCQlyZXN1bHQgPSAwOwkJCQkJCQkJCQkJCQlcCisJZWxzZQkJCQkJCQkJCQkJ CQkJCVwKKwkJcmVzdWx0ID0gKGludDY0KSAodGFiZW50cnktPnN0YXQpOwkJCQkJCQlcCisJ CQkJCQkJCQkJCQkJCQkJCVwKKwlQR19SRVRVUk5fSU5UNjQocmVzdWx0KTsJCQkJCQkJCQkJ XAorfQorCisvKiBwZ19zdGF0X2dldF90YWJfYW5hbHl6ZV9jb3VudCAqLworUEdfU1RBVF9H RVRfVEFCRU5UUllfSU5UNjQoYW5hbHl6ZV9jb3VudCkKKworLyogcGdfc3RhdF9nZXRfdGFi X2F1dG9hbmFseXplX2NvdW50ICovCitQR19TVEFUX0dFVF9UQUJFTlRSWV9JTlQ2NChhdXRv YW5hbHl6ZV9jb3VudCkKKworLyogcGdfc3RhdF9nZXRfdGFiX2F1dG92YWN1dW1fY291bnQg Ki8KK1BHX1NUQVRfR0VUX1RBQkVOVFJZX0lOVDY0KGF1dG92YWN1dW1fY291bnQpCisKKy8q IHBnX3N0YXRfZ2V0X3RhYl9ibG9ja3NfZmV0Y2hlZCAqLworUEdfU1RBVF9HRVRfVEFCRU5U UllfSU5UNjQoYmxvY2tzX2ZldGNoZWQpCisKKy8qIHBnX3N0YXRfZ2V0X3RhYl9ibG9ja3Nf aGl0ICovCitQR19TVEFUX0dFVF9UQUJFTlRSWV9JTlQ2NChibG9ja3NfaGl0KQogCi0vKiBw Z19zdGF0X2dldF9ibG9ja3NfaGl0ICovCi1QR19TVEFUX0dFVF9SRUxFTlRSWV9JTlQ2NChi bG9ja3NfaGl0KQorLyogcGdfc3RhdF9nZXRfdGFiX2RlYWRfdHVwbGVzICovCitQR19TVEFU X0dFVF9UQUJFTlRSWV9JTlQ2NChkZWFkX3R1cGxlcykKIAotLyogcGdfc3RhdF9nZXRfZGVh ZF90dXBsZXMgKi8KLVBHX1NUQVRfR0VUX1JFTEVOVFJZX0lOVDY0KGRlYWRfdHVwbGVzKQot Ci0vKiBwZ19zdGF0X2dldF9pbnNfc2luY2VfdmFjdXVtICovCi1QR19TVEFUX0dFVF9SRUxF TlRSWV9JTlQ2NChpbnNfc2luY2VfdmFjdXVtKQotCi0vKiBwZ19zdGF0X2dldF9saXZlX3R1 cGxlcyAqLwotUEdfU1RBVF9HRVRfUkVMRU5UUllfSU5UNjQobGl2ZV90dXBsZXMpCi0KLS8q IHBnX3N0YXRfZ2V0X21vZHNfc2luY2VfYW5hbHl6ZSAqLwotUEdfU1RBVF9HRVRfUkVMRU5U UllfSU5UNjQobW9kX3NpbmNlX2FuYWx5emUpCi0KLS8qIHBnX3N0YXRfZ2V0X251bXNjYW5z ICovCi1QR19TVEFUX0dFVF9SRUxFTlRSWV9JTlQ2NChudW1zY2FucykKLQotLyogcGdfc3Rh dF9nZXRfdHVwbGVzX2RlbGV0ZWQgKi8KLVBHX1NUQVRfR0VUX1JFTEVOVFJZX0lOVDY0KHR1 cGxlc19kZWxldGVkKQotCi0vKiBwZ19zdGF0X2dldF90dXBsZXNfZmV0Y2hlZCAqLwotUEdf U1RBVF9HRVRfUkVMRU5UUllfSU5UNjQodHVwbGVzX2ZldGNoZWQpCi0KLS8qIHBnX3N0YXRf Z2V0X3R1cGxlc19ob3RfdXBkYXRlZCAqLwotUEdfU1RBVF9HRVRfUkVMRU5UUllfSU5UNjQo dHVwbGVzX2hvdF91cGRhdGVkKQotCi0vKiBwZ19zdGF0X2dldF90dXBsZXNfaW5zZXJ0ZWQg Ki8KLVBHX1NUQVRfR0VUX1JFTEVOVFJZX0lOVDY0KHR1cGxlc19pbnNlcnRlZCkKLQotLyog cGdfc3RhdF9nZXRfdHVwbGVzX3JldHVybmVkICovCi1QR19TVEFUX0dFVF9SRUxFTlRSWV9J TlQ2NCh0dXBsZXNfcmV0dXJuZWQpCi0KLS8qIHBnX3N0YXRfZ2V0X3R1cGxlc191cGRhdGVk ICovCi1QR19TVEFUX0dFVF9SRUxFTlRSWV9JTlQ2NCh0dXBsZXNfdXBkYXRlZCkKLQotLyog cGdfc3RhdF9nZXRfdmFjdXVtX2NvdW50ICovCi1QR19TVEFUX0dFVF9SRUxFTlRSWV9JTlQ2 NCh2YWN1dW1fY291bnQpCi0KLSNkZWZpbmUgUEdfU1RBVF9HRVRfUkVMRU5UUllfVElNRVNU QU1QVFooc3RhdCkJCQkJCVwKLURhdHVtCQkJCQkJCQkJCQkJCQkJXAotQ3BwQ29uY2F0KHBn X3N0YXRfZ2V0XyxzdGF0KShQR19GVU5DVElPTl9BUkdTKQkJCQkJXAotewkJCQkJCQkJCQkJ CQkJCQlcCi0JT2lkCQkJcmVsaWQgPSBQR19HRVRBUkdfT0lEKDApOwkJCQkJCVwKLQlUaW1l c3RhbXBUeiByZXN1bHQ7CQkJCQkJCQkJCQlcCi0JUGdTdGF0X1N0YXRUYWJFbnRyeSAqdGFi ZW50cnk7CQkJCQkJCQlcCi0JCQkJCQkJCQkJCQkJCQkJXAotCWlmICgodGFiZW50cnkgPSBw Z3N0YXRfZmV0Y2hfc3RhdF90YWJlbnRyeShyZWxpZCkpID09IE5VTEwpCVwKLQkJcmVzdWx0 ID0gMDsJCQkJCQkJCQkJCQlcCi0JZWxzZQkJCQkJCQkJCQkJCQkJXAotCQlyZXN1bHQgPSB0 YWJlbnRyeS0+c3RhdDsJCQkJCQkJCVwKLQkJCQkJCQkJCQkJCQkJCQlcCi0JaWYgKHJlc3Vs dCA9PSAwKQkJCQkJCQkJCQkJXAotCQlQR19SRVRVUk5fTlVMTCgpOwkJCQkJCQkJCQlcCi0J ZWxzZQkJCQkJCQkJCQkJCQkJXAotCQlQR19SRVRVUk5fVElNRVNUQU1QVFoocmVzdWx0KTsJ CQkJCQkJXAorLyogcGdfc3RhdF9nZXRfdGFiX2luc19zaW5jZV92YWN1dW0gKi8KK1BHX1NU QVRfR0VUX1RBQkVOVFJZX0lOVDY0KGluc19zaW5jZV92YWN1dW0pCisKKy8qIHBnX3N0YXRf Z2V0X3RhYl9saXZlX3R1cGxlcyAqLworUEdfU1RBVF9HRVRfVEFCRU5UUllfSU5UNjQobGl2 ZV90dXBsZXMpCisKKy8qIHBnX3N0YXRfZ2V0X3RhYl9tb2RzX3NpbmNlX2FuYWx5emUgKi8K K1BHX1NUQVRfR0VUX1RBQkVOVFJZX0lOVDY0KG1vZF9zaW5jZV9hbmFseXplKQorCisvKiBw Z19zdGF0X2dldF90YWJfbnVtc2NhbnMgKi8KK1BHX1NUQVRfR0VUX1RBQkVOVFJZX0lOVDY0 KG51bXNjYW5zKQorCisvKiBwZ19zdGF0X2dldF90YWJfdHVwbGVzX2RlbGV0ZWQgKi8KK1BH X1NUQVRfR0VUX1RBQkVOVFJZX0lOVDY0KHR1cGxlc19kZWxldGVkKQorCisvKiBwZ19zdGF0 X2dldF90YWJfdHVwbGVzX2ZldGNoZWQgKi8KK1BHX1NUQVRfR0VUX1RBQkVOVFJZX0lOVDY0 KHR1cGxlc19mZXRjaGVkKQorCisvKiBwZ19zdGF0X2dldF90YWJfdHVwbGVzX2hvdF91cGRh dGVkICovCitQR19TVEFUX0dFVF9UQUJFTlRSWV9JTlQ2NCh0dXBsZXNfaG90X3VwZGF0ZWQp CisKKy8qIHBnX3N0YXRfZ2V0X3RhYl90dXBsZXNfaW5zZXJ0ZWQgKi8KK1BHX1NUQVRfR0VU X1RBQkVOVFJZX0lOVDY0KHR1cGxlc19pbnNlcnRlZCkKKworLyogcGdfc3RhdF9nZXRfdGFi X3R1cGxlc19yZXR1cm5lZCAqLworUEdfU1RBVF9HRVRfVEFCRU5UUllfSU5UNjQodHVwbGVz X3JldHVybmVkKQorCisvKiBwZ19zdGF0X2dldF90YWJfdHVwbGVzX3VwZGF0ZWQgKi8KK1BH X1NUQVRfR0VUX1RBQkVOVFJZX0lOVDY0KHR1cGxlc191cGRhdGVkKQorCisvKiBwZ19zdGF0 X2dldF90YWJfdmFjdXVtX2NvdW50ICovCitQR19TVEFUX0dFVF9UQUJFTlRSWV9JTlQ2NCh2 YWN1dW1fY291bnQpCisKKyNkZWZpbmUgUEdfU1RBVF9HRVRfSU5ERU5UUllfSU5UNjQoc3Rh dCkJCQkJCQkJXAorRGF0dW0JCQkJCQkJCQkJCQkJCQkJXAorQ3BwQ29uY2F0KHBnX3N0YXRf Z2V0X2luZF8sc3RhdCkoUEdfRlVOQ1RJT05fQVJHUykJCQkJCVwKK3sJCQkJCQkJCQkJCQkJ CQkJCVwKKwlPaWQJCQlyZWxpZCA9IFBHX0dFVEFSR19PSUQoMCk7CQkJCQkJCVwKKwlpbnQ2 NAkJcmVzdWx0OwkJCQkJCQkJCQkJCVwKKwlQZ1N0YXRfU3RhdEluZEVudHJ5ICppbmRlbnRy eTsJCQkJCQkJCQlcCisJCQkJCQkJCQkJCQkJCQkJCVwKKwlpZiAoKGluZGVudHJ5ID0gcGdz dGF0X2ZldGNoX3N0YXRfaW5kZW50cnkocmVsaWQpKSA9PSBOVUxMKQkJXAorCQlyZXN1bHQg PSAwOwkJCQkJCQkJCQkJCQlcCisJZWxzZQkJCQkJCQkJCQkJCQkJCVwKKwkJcmVzdWx0ID0g KGludDY0KSAoaW5kZW50cnktPnN0YXQpOwkJCQkJCQlcCisJCQkJCQkJCQkJCQkJCQkJCVwK KwlQR19SRVRVUk5fSU5UNjQocmVzdWx0KTsJCQkJCQkJCQkJXAorfQorCisvKiBwZ19zdGF0 X2dldF9pbmRfbnVtc2NhbnMgKi8KK1BHX1NUQVRfR0VUX0lOREVOVFJZX0lOVDY0KG51bXNj YW5zKQorCisvKiBwZ19zdGF0X2dldF9pbmRfdHVwbGVzX3JldHVybmVkICovCitQR19TVEFU X0dFVF9JTkRFTlRSWV9JTlQ2NCh0dXBsZXNfcmV0dXJuZWQpCisKKy8qIHBnX3N0YXRfZ2V0 X2luZF90dXBsZXNfZmV0Y2hlZCAqLworUEdfU1RBVF9HRVRfSU5ERU5UUllfSU5UNjQodHVw bGVzX2ZldGNoZWQpCisKKy8qIHBnX3N0YXRfZ2V0X2luZF9ibG9ja3NfZmV0Y2hlZCAqLwor UEdfU1RBVF9HRVRfSU5ERU5UUllfSU5UNjQoYmxvY2tzX2ZldGNoZWQpCisKKy8qIHBnX3N0 YXRfZ2V0X2luZF9ibG9ja3NfaGl0ICovCitQR19TVEFUX0dFVF9JTkRFTlRSWV9JTlQ2NChi bG9ja3NfaGl0KQorCisjZGVmaW5lIFBHX1NUQVRfR0VUX1RBQkVOVFJZX1RJTUVTVEFNUFRa KHN0YXQpCQkJCQkJXAorRGF0dW0JCQkJCQkJCQkJCQkJCQkJXAorQ3BwQ29uY2F0KHBnX3N0 YXRfZ2V0X3RhYl8sc3RhdCkoUEdfRlVOQ1RJT05fQVJHUykJCQkJCVwKK3sJCQkJCQkJCQkJ CQkJCQkJCVwKKwlPaWQJCQlyZWxpZCA9IFBHX0dFVEFSR19PSUQoMCk7CQkJCQkJCVwKKwlU aW1lc3RhbXBUeiByZXN1bHQ7CQkJCQkJCQkJCQkJXAorCVBnU3RhdF9TdGF0VGFiRW50cnkg KnRhYmVudHJ5OwkJCQkJCQkJCVwKKwkJCQkJCQkJCQkJCQkJCQkJXAorCWlmICgodGFiZW50 cnkgPSBwZ3N0YXRfZmV0Y2hfc3RhdF90YWJlbnRyeShyZWxpZCkpID09IE5VTEwpCQlcCisJ CXJlc3VsdCA9IDA7CQkJCQkJCQkJCQkJCVwKKwllbHNlCQkJCQkJCQkJCQkJCQkJXAorCQly ZXN1bHQgPSB0YWJlbnRyeS0+c3RhdDsJCQkJCQkJCQlcCisJCQkJCQkJCQkJCQkJCQkJCVwK KwlpZiAocmVzdWx0ID09IDApCQkJCQkJCQkJCQkJXAorCQlQR19SRVRVUk5fTlVMTCgpOwkJ CQkJCQkJCQkJXAorCWVsc2UJCQkJCQkJCQkJCQkJCQlcCisJCVBHX1JFVFVSTl9USU1FU1RB TVBUWihyZXN1bHQpOwkJCQkJCQkJXAogfQogCi0vKiBwZ19zdGF0X2dldF9sYXN0X2FuYWx5 emVfdGltZSAqLwotUEdfU1RBVF9HRVRfUkVMRU5UUllfVElNRVNUQU1QVFoobGFzdF9hbmFs eXplX3RpbWUpCisvKiBwZ19zdGF0X2dldF90YWJfbGFzdF9hbmFseXplX3RpbWUgKi8KK1BH X1NUQVRfR0VUX1RBQkVOVFJZX1RJTUVTVEFNUFRaKGxhc3RfYW5hbHl6ZV90aW1lKQogCi0v KiBwZ19zdGF0X2dldF9sYXN0X2F1dG9hbmFseXplX3RpbWUgKi8KLVBHX1NUQVRfR0VUX1JF TEVOVFJZX1RJTUVTVEFNUFRaKGxhc3RfYXV0b2FuYWx5emVfdGltZSkKKy8qIHBnX3N0YXRf Z2V0X3RhYl9sYXN0X2F1dG9hbmFseXplX3RpbWUgKi8KK1BHX1NUQVRfR0VUX1RBQkVOVFJZ X1RJTUVTVEFNUFRaKGxhc3RfYXV0b2FuYWx5emVfdGltZSkKIAotLyogcGdfc3RhdF9nZXRf bGFzdF9hdXRvdmFjdXVtX3RpbWUgKi8KLVBHX1NUQVRfR0VUX1JFTEVOVFJZX1RJTUVTVEFN UFRaKGxhc3RfYXV0b3ZhY3V1bV90aW1lKQorLyogcGdfc3RhdF9nZXRfdGFiX2xhc3RfYXV0 b3ZhY3V1bV90aW1lICovCitQR19TVEFUX0dFVF9UQUJFTlRSWV9USU1FU1RBTVBUWihsYXN0 X2F1dG92YWN1dW1fdGltZSkKIAotLyogcGdfc3RhdF9nZXRfbGFzdF92YWN1dW1fdGltZSAq LwotUEdfU1RBVF9HRVRfUkVMRU5UUllfVElNRVNUQU1QVFoobGFzdF92YWN1dW1fdGltZSkK Ky8qIHBnX3N0YXRfZ2V0X3RhYl9sYXN0X3ZhY3V1bV90aW1lICovCitQR19TVEFUX0dFVF9U QUJFTlRSWV9USU1FU1RBTVBUWihsYXN0X3ZhY3V1bV90aW1lKQogCi0vKiBwZ19zdGF0X2dl dF9sYXN0c2NhbiAqLwotUEdfU1RBVF9HRVRfUkVMRU5UUllfVElNRVNUQU1QVFoobGFzdHNj YW4pCisvKiBwZ19zdGF0X2dldF90YWJfbGFzdHNjYW4gKi8KK1BHX1NUQVRfR0VUX1RBQkVO VFJZX1RJTUVTVEFNUFRaKGxhc3RzY2FuKQorCisjZGVmaW5lIFBHX1NUQVRfR0VUX0lOREVO VFJZX1RJTUVTVEFNUFRaKHN0YXQpCQkJCQkJXAorRGF0dW0JCQkJCQkJCQkJCQkJCQkJXAor Q3BwQ29uY2F0KHBnX3N0YXRfZ2V0X2luZF8sc3RhdCkoUEdfRlVOQ1RJT05fQVJHUykJCQkJ CVwKK3sJCQkJCQkJCQkJCQkJCQkJCVwKKwlPaWQJCQlyZWxpZCA9IFBHX0dFVEFSR19PSUQo MCk7CQkJCQkJCVwKKwlUaW1lc3RhbXBUeiByZXN1bHQ7CQkJCQkJCQkJCQkJXAorCVBnU3Rh dF9TdGF0SW5kRW50cnkgKmluZGVudHJ5OwkJCQkJCQkJCVwKKwkJCQkJCQkJCQkJCQkJCQkJ XAorCWlmICgoaW5kZW50cnkgPSBwZ3N0YXRfZmV0Y2hfc3RhdF9pbmRlbnRyeShyZWxpZCkp ID09IE5VTEwpCQlcCisJCXJlc3VsdCA9IDA7CQkJCQkJCQkJCQkJCVwKKwllbHNlCQkJCQkJ CQkJCQkJCQkJXAorCQlyZXN1bHQgPSBpbmRlbnRyeS0+c3RhdDsJCQkJCQkJCQlcCisJCQkJ CQkJCQkJCQkJCQkJCVwKKwlpZiAocmVzdWx0ID09IDApCQkJCQkJCQkJCQkJXAorCQlQR19S RVRVUk5fTlVMTCgpOwkJCQkJCQkJCQkJXAorCWVsc2UJCQkJCQkJCQkJCQkJCQlcCisJCVBH X1JFVFVSTl9USU1FU1RBTVBUWihyZXN1bHQpOwkJCQkJCQkJXAorfQorCisvKiBwZ19zdGF0 X2dldF9pbmRfbGFzdHNjYW4gKi8KK1BHX1NUQVRfR0VUX0lOREVOVFJZX1RJTUVTVEFNUFRa KGxhc3RzY2FuKQogCiBEYXR1bQogcGdfc3RhdF9nZXRfZnVuY3Rpb25fY2FsbHMoUEdfRlVO Q1RJT05fQVJHUykKQEAgLTE0OTYsNyArMTU0OSw3IEBAIHBnX3N0YXRfZ2V0X3NscnUoUEdf RlVOQ1RJT05fQVJHUykKIH0KIAogRGF0dW0KLXBnX3N0YXRfZ2V0X3hhY3RfbnVtc2NhbnMo UEdfRlVOQ1RJT05fQVJHUykKK3BnX3N0YXRfZ2V0X3RhYl94YWN0X251bXNjYW5zKFBHX0ZV TkNUSU9OX0FSR1MpCiB7CiAJT2lkCQkJcmVsaWQgPSBQR19HRVRBUkdfT0lEKDApOwogCWlu dDY0CQlyZXN1bHQ7CkBAIC0xNTEwLDE3ICsxNTYzLDMyIEBAIHBnX3N0YXRfZ2V0X3hhY3Rf bnVtc2NhbnMoUEdfRlVOQ1RJT05fQVJHUykKIAlQR19SRVRVUk5fSU5UNjQocmVzdWx0KTsK IH0KIAorRGF0dW0KK3BnX3N0YXRfZ2V0X2luZF94YWN0X251bXNjYW5zKFBHX0ZVTkNUSU9O X0FSR1MpCit7CisJT2lkCQkJcmVsaWQgPSBQR19HRVRBUkdfT0lEKDApOworCWludDY0CQly ZXN1bHQ7CisJUGdTdGF0X0luZGV4U3RhdHVzICppbmRlbnRyeTsKKworCWlmICgoaW5kZW50 cnkgPSBmaW5kX2luZHN0YXRfZW50cnkocmVsaWQpKSA9PSBOVUxMKQorCQlyZXN1bHQgPSAw OworCWVsc2UKKwkJcmVzdWx0ID0gKGludDY0KSAoaW5kZW50cnktPmlfY291bnRzLmlfbnVt c2NhbnMpOworCisJUEdfUkVUVVJOX0lOVDY0KHJlc3VsdCk7Cit9CisKIERhdHVtCiBwZ19z dGF0X2dldF94YWN0X3R1cGxlc19yZXR1cm5lZChQR19GVU5DVElPTl9BUkdTKQogewogCU9p ZAkJCXJlbGlkID0gUEdfR0VUQVJHX09JRCgwKTsKIAlpbnQ2NAkJcmVzdWx0OwotCVBnU3Rh dF9UYWJsZVN0YXR1cyAqdGFiZW50cnk7CisJUGdTdGF0X0luZGV4U3RhdHVzICppbmRlbnRy eTsKIAotCWlmICgodGFiZW50cnkgPSBmaW5kX3RhYnN0YXRfZW50cnkocmVsaWQpKSA9PSBO VUxMKQorCWlmICgoaW5kZW50cnkgPSBmaW5kX2luZHN0YXRfZW50cnkocmVsaWQpKSA9PSBO VUxMKQogCQlyZXN1bHQgPSAwOwogCWVsc2UKLQkJcmVzdWx0ID0gKGludDY0KSAodGFiZW50 cnktPnRfY291bnRzLnRfdHVwbGVzX3JldHVybmVkKTsKKwkJcmVzdWx0ID0gKGludDY0KSAo aW5kZW50cnktPmlfY291bnRzLmlfdHVwbGVzX3JldHVybmVkKTsKIAogCVBHX1JFVFVSTl9J TlQ2NChyZXN1bHQpOwogfQpAQCAtMTUzMCwxMiArMTU5OCwxMiBAQCBwZ19zdGF0X2dldF94 YWN0X3R1cGxlc19mZXRjaGVkKFBHX0ZVTkNUSU9OX0FSR1MpCiB7CiAJT2lkCQkJcmVsaWQg PSBQR19HRVRBUkdfT0lEKDApOwogCWludDY0CQlyZXN1bHQ7Ci0JUGdTdGF0X1RhYmxlU3Rh dHVzICp0YWJlbnRyeTsKKwlQZ1N0YXRfSW5kZXhTdGF0dXMgKmluZGVudHJ5OwogCi0JaWYg KCh0YWJlbnRyeSA9IGZpbmRfdGFic3RhdF9lbnRyeShyZWxpZCkpID09IE5VTEwpCisJaWYg KChpbmRlbnRyeSA9IGZpbmRfaW5kc3RhdF9lbnRyeShyZWxpZCkpID09IE5VTEwpCiAJCXJl c3VsdCA9IDA7CiAJZWxzZQotCQlyZXN1bHQgPSAoaW50NjQpICh0YWJlbnRyeS0+dF9jb3Vu dHMudF90dXBsZXNfZmV0Y2hlZCk7CisJCXJlc3VsdCA9IChpbnQ2NCkgKGluZGVudHJ5LT5p X2NvdW50cy5pX3R1cGxlc19mZXRjaGVkKTsKIAogCVBHX1JFVFVSTl9JTlQ2NChyZXN1bHQp OwogfQpAQCAtMTYyMywxMiArMTY5MSwxMiBAQCBwZ19zdGF0X2dldF94YWN0X2Jsb2Nrc19m ZXRjaGVkKFBHX0ZVTkNUSU9OX0FSR1MpCiB7CiAJT2lkCQkJcmVsaWQgPSBQR19HRVRBUkdf T0lEKDApOwogCWludDY0CQlyZXN1bHQ7Ci0JUGdTdGF0X1RhYmxlU3RhdHVzICp0YWJlbnRy eTsKKwlQZ1N0YXRfSW5kZXhTdGF0dXMgKmluZGVudHJ5OwogCi0JaWYgKCh0YWJlbnRyeSA9 IGZpbmRfdGFic3RhdF9lbnRyeShyZWxpZCkpID09IE5VTEwpCisJaWYgKChpbmRlbnRyeSA9 IGZpbmRfaW5kc3RhdF9lbnRyeShyZWxpZCkpID09IE5VTEwpCiAJCXJlc3VsdCA9IDA7CiAJ ZWxzZQotCQlyZXN1bHQgPSAoaW50NjQpICh0YWJlbnRyeS0+dF9jb3VudHMudF9ibG9ja3Nf ZmV0Y2hlZCk7CisJCXJlc3VsdCA9IChpbnQ2NCkgKGluZGVudHJ5LT5pX2NvdW50cy5pX2Js b2Nrc19mZXRjaGVkKTsKIAogCVBHX1JFVFVSTl9JTlQ2NChyZXN1bHQpOwogfQpAQCAtMTYz OCwxMiArMTcwNiwxMiBAQCBwZ19zdGF0X2dldF94YWN0X2Jsb2Nrc19oaXQoUEdfRlVOQ1RJ T05fQVJHUykKIHsKIAlPaWQJCQlyZWxpZCA9IFBHX0dFVEFSR19PSUQoMCk7CiAJaW50NjQJ CXJlc3VsdDsKLQlQZ1N0YXRfVGFibGVTdGF0dXMgKnRhYmVudHJ5OworCVBnU3RhdF9JbmRl eFN0YXR1cyAqaW5kZW50cnk7CiAKLQlpZiAoKHRhYmVudHJ5ID0gZmluZF90YWJzdGF0X2Vu dHJ5KHJlbGlkKSkgPT0gTlVMTCkKKwlpZiAoKGluZGVudHJ5ID0gZmluZF9pbmRzdGF0X2Vu dHJ5KHJlbGlkKSkgPT0gTlVMTCkKIAkJcmVzdWx0ID0gMDsKIAllbHNlCi0JCXJlc3VsdCA9 IChpbnQ2NCkgKHRhYmVudHJ5LT50X2NvdW50cy50X2Jsb2Nrc19oaXQpOworCQlyZXN1bHQg PSAoaW50NjQpIChpbmRlbnRyeS0+aV9jb3VudHMuaV9ibG9ja3NfaGl0KTsKIAogCVBHX1JF VFVSTl9JTlQ2NChyZXN1bHQpOwogfQpAQCAtMTc2OSw3ICsxODM3LDggQEAgcGdfc3RhdF9y ZXNldF9zaW5nbGVfdGFibGVfY291bnRlcnMoUEdfRlVOQ1RJT05fQVJHUykKIHsKIAlPaWQJ CQl0YWJvaWQgPSBQR19HRVRBUkdfT0lEKDApOwogCi0JcGdzdGF0X3Jlc2V0KFBHU1RBVF9L SU5EX1JFTEFUSU9OLCBNeURhdGFiYXNlSWQsIHRhYm9pZCk7CisJcGdzdGF0X3Jlc2V0KFBH U1RBVF9LSU5EX1RBQkxFLCBNeURhdGFiYXNlSWQsIHRhYm9pZCk7CisJcGdzdGF0X3Jlc2V0 KFBHU1RBVF9LSU5EX0lOREVYLCBNeURhdGFiYXNlSWQsIHRhYm9pZCk7CiAKIAlQR19SRVRV Uk5fVk9JRCgpOwogfQpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvdXRpbHMvY2FjaGUvcmVs Y2FjaGUuYyBiL3NyYy9iYWNrZW5kL3V0aWxzL2NhY2hlL3JlbGNhY2hlLmMKaW5kZXggMTNm Nzk4NzM3My4uZDkzYjg3MjY1MyAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvdXRpbHMvY2Fj aGUvcmVsY2FjaGUuYworKysgYi9zcmMvYmFja2VuZC91dGlscy9jYWNoZS9yZWxjYWNoZS5j CkBAIC0yNDExLDcgKzI0MTEsMTAgQEAgUmVsYXRpb25EZXN0cm95UmVsYXRpb24oUmVsYXRp b24gcmVsYXRpb24sIGJvb2wgcmVtZW1iZXJfdHVwZGVzYykKIAlSZWxhdGlvbkNsb3NlU21n cihyZWxhdGlvbik7CiAKIAkvKiBicmVhayBtdXR1YWwgbGluayB3aXRoIHN0YXRzIGVudHJ5 ICovCi0JcGdzdGF0X3VubGlua19yZWxhdGlvbihyZWxhdGlvbik7CisJaWYgKHJlbGF0aW9u LT5yZF9yZWwtPnJlbGtpbmQgPT0gUkVMS0lORF9JTkRFWCkKKwkJcGdzdGF0X3VubGlua19p bmRleChyZWxhdGlvbik7CisJZWxzZQorCQlwZ3N0YXRfdW5saW5rX3RhYmxlKHJlbGF0aW9u KTsKIAogCS8qCiAJICogRnJlZSBhbGwgdGhlIHN1YnNpZGlhcnkgZGF0YSBzdHJ1Y3R1cmVz IG9mIHRoZSByZWxjYWNoZSBlbnRyeSwgdGhlbiB0aGUKQEAgLTI3MjcsOCArMjczMCw5IEBA IFJlbGF0aW9uQ2xlYXJSZWxhdGlvbihSZWxhdGlvbiByZWxhdGlvbiwgYm9vbCByZWJ1aWxk KQogCQkJU1dBUEZJRUxEKFJvd1NlY3VyaXR5RGVzYyAqLCByZF9yc2Rlc2MpOwogCQkvKiB0 b2FzdCBPSUQgb3ZlcnJpZGUgbXVzdCBiZSBwcmVzZXJ2ZWQgKi8KIAkJU1dBUEZJRUxEKE9p ZCwgcmRfdG9hc3RvaWQpOwotCQkvKiBwZ3N0YXRfaW5mbyAvIGVuYWJsZWQgbXVzdCBiZSBw cmVzZXJ2ZWQgKi8KLQkJU1dBUEZJRUxEKHN0cnVjdCBQZ1N0YXRfVGFibGVTdGF0dXMgKiwg cGdzdGF0X2luZm8pOworCQkvKiBwZ3N0YXR0YWJfaW5mbyAvIHBnc3RhdGluZF9pbmZvIC8g ZW5hYmxlZCBtdXN0IGJlIHByZXNlcnZlZCAqLworCQlTV0FQRklFTEQoc3RydWN0IFBnU3Rh dF9UYWJsZVN0YXR1cyAqLCBwZ3N0YXR0YWJfaW5mbyk7CisJCVNXQVBGSUVMRChzdHJ1Y3Qg UGdTdGF0X0luZGV4U3RhdHVzICosIHBnc3RhdGluZF9pbmZvKTsKIAkJU1dBUEZJRUxEKGJv b2wsIHBnc3RhdF9lbmFibGVkKTsKIAkJLyogcHJlc2VydmUgb2xkIHBhcnRpdGlvbiBrZXkg aWYgd2UgaGF2ZSBvbmUgKi8KIAkJaWYgKGtlZXBfcGFydGtleSkKQEAgLTYzMjEsNyArNjMy NSw4IEBAIGxvYWRfcmVsY2FjaGVfaW5pdF9maWxlKGJvb2wgc2hhcmVkKQogCQlyZWwtPnJk X2ZpcnN0UmVsZmlsZWxvY2F0b3JTdWJpZCA9IEludmFsaWRTdWJUcmFuc2FjdGlvbklkOwog CQlyZWwtPnJkX2Ryb3BwZWRTdWJpZCA9IEludmFsaWRTdWJUcmFuc2FjdGlvbklkOwogCQly ZWwtPnJkX2FtY2FjaGUgPSBOVUxMOwotCQlyZWwtPnBnc3RhdF9pbmZvID0gTlVMTDsKKwkJ cmVsLT5wZ3N0YXR0YWJfaW5mbyA9IE5VTEw7CisJCXJlbC0+cGdzdGF0aW5kX2luZm8gPSBO VUxMOwogCiAJCS8qCiAJCSAqIFJlY29tcHV0ZSBsb2NrIGFuZCBwaHlzaWNhbCBhZGRyZXNz aW5nIGluZm8uICBUaGlzIGlzIG5lZWRlZCBpbgpkaWZmIC0tZ2l0IGEvc3JjL2luY2x1ZGUv Y2F0YWxvZy9wZ19wcm9jLmRhdCBiL3NyYy9pbmNsdWRlL2NhdGFsb2cvcGdfcHJvYy5kYXQK aW5kZXggZmJjNGFhZGU0OS4uZjViMmI0NjYxMiAxMDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUv Y2F0YWxvZy9wZ19wcm9jLmRhdAorKysgYi9zcmMvaW5jbHVkZS9jYXRhbG9nL3BnX3Byb2Mu ZGF0CkBAIC01MzEyLDk2ICs1MzEyLDEyMCBAQAogICBwcm9hcmduYW1lcyA9PiAne21jdl9s aXN0LGluZGV4LHZhbHVlcyxudWxscyxmcmVxdWVuY3ksYmFzZV9mcmVxdWVuY3l9JywKICAg cHJvc3JjID0+ICdwZ19zdGF0c19leHRfbWN2bGlzdF9pdGVtcycgfSwKIAoteyBvaWQgPT4g JzE5MjgnLCBkZXNjciA9PiAnc3RhdGlzdGljczogbnVtYmVyIG9mIHNjYW5zIGRvbmUgZm9y IHRhYmxlL2luZGV4JywKLSAgcHJvbmFtZSA9PiAncGdfc3RhdF9nZXRfbnVtc2NhbnMnLCBw cm92b2xhdGlsZSA9PiAncycsIHByb3BhcmFsbGVsID0+ICdyJywKK3sgb2lkID0+ICcxOTI4 JywgZGVzY3IgPT4gJ3N0YXRpc3RpY3M6IG51bWJlciBvZiBzY2FucyBkb25lIGZvciB0YWJs ZScsCisgIHByb25hbWUgPT4gJ3BnX3N0YXRfZ2V0X3RhYl9udW1zY2FucycsIHByb3ZvbGF0 aWxlID0+ICdzJywgcHJvcGFyYWxsZWwgPT4gJ3InLAogICBwcm9yZXR0eXBlID0+ICdpbnQ4 JywgcHJvYXJndHlwZXMgPT4gJ29pZCcsCi0gIHByb3NyYyA9PiAncGdfc3RhdF9nZXRfbnVt c2NhbnMnIH0sCi17IG9pZCA9PiAnOTk3NicsIGRlc2NyID0+ICdzdGF0aXN0aWNzOiB0aW1l IG9mIHRoZSBsYXN0IHNjYW4gZm9yIHRhYmxlL2luZGV4JywKLSAgcHJvbmFtZSA9PiAncGdf c3RhdF9nZXRfbGFzdHNjYW4nLCBwcm92b2xhdGlsZSA9PiAncycsIHByb3BhcmFsbGVsID0+ ICdyJywKKyAgcHJvc3JjID0+ICdwZ19zdGF0X2dldF90YWJfbnVtc2NhbnMnIH0sCit7IG9p ZCA9PiAnODI5NicsIGRlc2NyID0+ICdzdGF0aXN0aWNzOiBudW1iZXIgb2Ygc2NhbnMgZG9u ZSBmb3IgaW5kZXgnLAorICBwcm9uYW1lID0+ICdwZ19zdGF0X2dldF9pbmRfbnVtc2NhbnMn LCBwcm92b2xhdGlsZSA9PiAncycsIHByb3BhcmFsbGVsID0+ICdyJywKKyAgcHJvcmV0dHlw ZSA9PiAnaW50OCcsIHByb2FyZ3R5cGVzID0+ICdvaWQnLAorICBwcm9zcmMgPT4gJ3BnX3N0 YXRfZ2V0X2luZF9udW1zY2FucycgfSwKK3sgb2lkID0+ICc5OTc2JywgZGVzY3IgPT4gJ3N0 YXRpc3RpY3M6IHRpbWUgb2YgdGhlIGxhc3Qgc2NhbiBmb3IgdGFibGUnLAorICBwcm9uYW1l ID0+ICdwZ19zdGF0X2dldF90YWJfbGFzdHNjYW4nLCBwcm92b2xhdGlsZSA9PiAncycsIHBy b3BhcmFsbGVsID0+ICdyJywKKyAgcHJvcmV0dHlwZSA9PiAndGltZXN0YW1wdHonLCBwcm9h cmd0eXBlcyA9PiAnb2lkJywKKyAgcHJvc3JjID0+ICdwZ19zdGF0X2dldF90YWJfbGFzdHNj YW4nIH0sCit7IG9pZCA9PiAnODYyNicsIGRlc2NyID0+ICdzdGF0aXN0aWNzOiB0aW1lIG9m IHRoZSBsYXN0IHNjYW4gZm9yIGluZGV4JywKKyAgcHJvbmFtZSA9PiAncGdfc3RhdF9nZXRf aW5kX2xhc3RzY2FuJywgcHJvdm9sYXRpbGUgPT4gJ3MnLCBwcm9wYXJhbGxlbCA9PiAncics CiAgIHByb3JldHR5cGUgPT4gJ3RpbWVzdGFtcHR6JywgcHJvYXJndHlwZXMgPT4gJ29pZCcs Ci0gIHByb3NyYyA9PiAncGdfc3RhdF9nZXRfbGFzdHNjYW4nIH0sCisgIHByb3NyYyA9PiAn cGdfc3RhdF9nZXRfaW5kX2xhc3RzY2FuJyB9LAogeyBvaWQgPT4gJzE5MjknLCBkZXNjciA9 PiAnc3RhdGlzdGljczogbnVtYmVyIG9mIHR1cGxlcyByZWFkIGJ5IHNlcXNjYW4nLAotICBw cm9uYW1lID0+ICdwZ19zdGF0X2dldF90dXBsZXNfcmV0dXJuZWQnLCBwcm92b2xhdGlsZSA9 PiAncycsCisgIHByb25hbWUgPT4gJ3BnX3N0YXRfZ2V0X3RhYl90dXBsZXNfcmV0dXJuZWQn LCBwcm92b2xhdGlsZSA9PiAncycsCiAgIHByb3BhcmFsbGVsID0+ICdyJywgcHJvcmV0dHlw ZSA9PiAnaW50OCcsIHByb2FyZ3R5cGVzID0+ICdvaWQnLAotICBwcm9zcmMgPT4gJ3BnX3N0 YXRfZ2V0X3R1cGxlc19yZXR1cm5lZCcgfSwKKyAgcHJvc3JjID0+ICdwZ19zdGF0X2dldF90 YWJfdHVwbGVzX3JldHVybmVkJyB9LAoreyBvaWQgPT4gJzk2MDMnLCBkZXNjciA9PiAnc3Rh dGlzdGljczogbnVtYmVyIG9mIHR1cGxlcyByZWFkIGJ5IHNlcXNjYW4nLAorICBwcm9uYW1l ID0+ICdwZ19zdGF0X2dldF9pbmRfdHVwbGVzX3JldHVybmVkJywgcHJvdm9sYXRpbGUgPT4g J3MnLAorICBwcm9wYXJhbGxlbCA9PiAncicsIHByb3JldHR5cGUgPT4gJ2ludDgnLCBwcm9h cmd0eXBlcyA9PiAnb2lkJywKKyAgcHJvc3JjID0+ICdwZ19zdGF0X2dldF9pbmRfdHVwbGVz X3JldHVybmVkJyB9LAogeyBvaWQgPT4gJzE5MzAnLCBkZXNjciA9PiAnc3RhdGlzdGljczog bnVtYmVyIG9mIHR1cGxlcyBmZXRjaGVkIGJ5IGlkeHNjYW4nLAotICBwcm9uYW1lID0+ICdw Z19zdGF0X2dldF90dXBsZXNfZmV0Y2hlZCcsIHByb3ZvbGF0aWxlID0+ICdzJywKKyAgcHJv bmFtZSA9PiAncGdfc3RhdF9nZXRfdGFiX3R1cGxlc19mZXRjaGVkJywgcHJvdm9sYXRpbGUg PT4gJ3MnLAorICBwcm9wYXJhbGxlbCA9PiAncicsIHByb3JldHR5cGUgPT4gJ2ludDgnLCBw cm9hcmd0eXBlcyA9PiAnb2lkJywKKyAgcHJvc3JjID0+ICdwZ19zdGF0X2dldF90YWJfdHVw bGVzX2ZldGNoZWQnIH0sCit7IG9pZCA9PiAnODUyNicsIGRlc2NyID0+ICdzdGF0aXN0aWNz OiBudW1iZXIgb2YgdHVwbGVzIGZldGNoZWQgYnkgaWR4c2NhbicsCisgIHByb25hbWUgPT4g J3BnX3N0YXRfZ2V0X2luZF90dXBsZXNfZmV0Y2hlZCcsIHByb3ZvbGF0aWxlID0+ICdzJywK ICAgcHJvcGFyYWxsZWwgPT4gJ3InLCBwcm9yZXR0eXBlID0+ICdpbnQ4JywgcHJvYXJndHlw ZXMgPT4gJ29pZCcsCi0gIHByb3NyYyA9PiAncGdfc3RhdF9nZXRfdHVwbGVzX2ZldGNoZWQn IH0sCisgIHByb3NyYyA9PiAncGdfc3RhdF9nZXRfaW5kX3R1cGxlc19mZXRjaGVkJyB9LAog eyBvaWQgPT4gJzE5MzEnLCBkZXNjciA9PiAnc3RhdGlzdGljczogbnVtYmVyIG9mIHR1cGxl cyBpbnNlcnRlZCcsCi0gIHByb25hbWUgPT4gJ3BnX3N0YXRfZ2V0X3R1cGxlc19pbnNlcnRl ZCcsIHByb3ZvbGF0aWxlID0+ICdzJywKKyAgcHJvbmFtZSA9PiAncGdfc3RhdF9nZXRfdGFi X3R1cGxlc19pbnNlcnRlZCcsIHByb3ZvbGF0aWxlID0+ICdzJywKICAgcHJvcGFyYWxsZWwg PT4gJ3InLCBwcm9yZXR0eXBlID0+ICdpbnQ4JywgcHJvYXJndHlwZXMgPT4gJ29pZCcsCi0g IHByb3NyYyA9PiAncGdfc3RhdF9nZXRfdHVwbGVzX2luc2VydGVkJyB9LAorICBwcm9zcmMg PT4gJ3BnX3N0YXRfZ2V0X3RhYl90dXBsZXNfaW5zZXJ0ZWQnIH0sCiB7IG9pZCA9PiAnMTkz MicsIGRlc2NyID0+ICdzdGF0aXN0aWNzOiBudW1iZXIgb2YgdHVwbGVzIHVwZGF0ZWQnLAot ICBwcm9uYW1lID0+ICdwZ19zdGF0X2dldF90dXBsZXNfdXBkYXRlZCcsIHByb3ZvbGF0aWxl ID0+ICdzJywKKyAgcHJvbmFtZSA9PiAncGdfc3RhdF9nZXRfdGFiX3R1cGxlc191cGRhdGVk JywgcHJvdm9sYXRpbGUgPT4gJ3MnLAogICBwcm9wYXJhbGxlbCA9PiAncicsIHByb3JldHR5 cGUgPT4gJ2ludDgnLCBwcm9hcmd0eXBlcyA9PiAnb2lkJywKLSAgcHJvc3JjID0+ICdwZ19z dGF0X2dldF90dXBsZXNfdXBkYXRlZCcgfSwKKyAgcHJvc3JjID0+ICdwZ19zdGF0X2dldF90 YWJfdHVwbGVzX3VwZGF0ZWQnIH0sCiB7IG9pZCA9PiAnMTkzMycsIGRlc2NyID0+ICdzdGF0 aXN0aWNzOiBudW1iZXIgb2YgdHVwbGVzIGRlbGV0ZWQnLAotICBwcm9uYW1lID0+ICdwZ19z dGF0X2dldF90dXBsZXNfZGVsZXRlZCcsIHByb3ZvbGF0aWxlID0+ICdzJywKKyAgcHJvbmFt ZSA9PiAncGdfc3RhdF9nZXRfdGFiX3R1cGxlc19kZWxldGVkJywgcHJvdm9sYXRpbGUgPT4g J3MnLAogICBwcm9wYXJhbGxlbCA9PiAncicsIHByb3JldHR5cGUgPT4gJ2ludDgnLCBwcm9h cmd0eXBlcyA9PiAnb2lkJywKLSAgcHJvc3JjID0+ICdwZ19zdGF0X2dldF90dXBsZXNfZGVs ZXRlZCcgfSwKKyAgcHJvc3JjID0+ICdwZ19zdGF0X2dldF90YWJfdHVwbGVzX2RlbGV0ZWQn IH0sCiB7IG9pZCA9PiAnMTk3MicsIGRlc2NyID0+ICdzdGF0aXN0aWNzOiBudW1iZXIgb2Yg dHVwbGVzIGhvdCB1cGRhdGVkJywKLSAgcHJvbmFtZSA9PiAncGdfc3RhdF9nZXRfdHVwbGVz X2hvdF91cGRhdGVkJywgcHJvdm9sYXRpbGUgPT4gJ3MnLAorICBwcm9uYW1lID0+ICdwZ19z dGF0X2dldF90YWJfdHVwbGVzX2hvdF91cGRhdGVkJywgcHJvdm9sYXRpbGUgPT4gJ3MnLAog ICBwcm9wYXJhbGxlbCA9PiAncicsIHByb3JldHR5cGUgPT4gJ2ludDgnLCBwcm9hcmd0eXBl cyA9PiAnb2lkJywKLSAgcHJvc3JjID0+ICdwZ19zdGF0X2dldF90dXBsZXNfaG90X3VwZGF0 ZWQnIH0sCisgIHByb3NyYyA9PiAncGdfc3RhdF9nZXRfdGFiX3R1cGxlc19ob3RfdXBkYXRl ZCcgfSwKIHsgb2lkID0+ICcyODc4JywgZGVzY3IgPT4gJ3N0YXRpc3RpY3M6IG51bWJlciBv ZiBsaXZlIHR1cGxlcycsCi0gIHByb25hbWUgPT4gJ3BnX3N0YXRfZ2V0X2xpdmVfdHVwbGVz JywgcHJvdm9sYXRpbGUgPT4gJ3MnLCBwcm9wYXJhbGxlbCA9PiAncicsCisgIHByb25hbWUg PT4gJ3BnX3N0YXRfZ2V0X3RhYl9saXZlX3R1cGxlcycsIHByb3ZvbGF0aWxlID0+ICdzJywg cHJvcGFyYWxsZWwgPT4gJ3InLAogICBwcm9yZXR0eXBlID0+ICdpbnQ4JywgcHJvYXJndHlw ZXMgPT4gJ29pZCcsCi0gIHByb3NyYyA9PiAncGdfc3RhdF9nZXRfbGl2ZV90dXBsZXMnIH0s CisgIHByb3NyYyA9PiAncGdfc3RhdF9nZXRfdGFiX2xpdmVfdHVwbGVzJyB9LAogeyBvaWQg PT4gJzI4NzknLCBkZXNjciA9PiAnc3RhdGlzdGljczogbnVtYmVyIG9mIGRlYWQgdHVwbGVz JywKLSAgcHJvbmFtZSA9PiAncGdfc3RhdF9nZXRfZGVhZF90dXBsZXMnLCBwcm92b2xhdGls ZSA9PiAncycsIHByb3BhcmFsbGVsID0+ICdyJywKKyAgcHJvbmFtZSA9PiAncGdfc3RhdF9n ZXRfdGFiX2RlYWRfdHVwbGVzJywgcHJvdm9sYXRpbGUgPT4gJ3MnLCBwcm9wYXJhbGxlbCA9 PiAncicsCiAgIHByb3JldHR5cGUgPT4gJ2ludDgnLCBwcm9hcmd0eXBlcyA9PiAnb2lkJywK LSAgcHJvc3JjID0+ICdwZ19zdGF0X2dldF9kZWFkX3R1cGxlcycgfSwKKyAgcHJvc3JjID0+ ICdwZ19zdGF0X2dldF90YWJfZGVhZF90dXBsZXMnIH0sCiB7IG9pZCA9PiAnMzE3NycsCiAg IGRlc2NyID0+ICdzdGF0aXN0aWNzOiBudW1iZXIgb2YgdHVwbGVzIGNoYW5nZWQgc2luY2Ug bGFzdCBhbmFseXplJywKLSAgcHJvbmFtZSA9PiAncGdfc3RhdF9nZXRfbW9kX3NpbmNlX2Fu YWx5emUnLCBwcm92b2xhdGlsZSA9PiAncycsCisgIHByb25hbWUgPT4gJ3BnX3N0YXRfZ2V0 X3RhYl9tb2Rfc2luY2VfYW5hbHl6ZScsIHByb3ZvbGF0aWxlID0+ICdzJywKICAgcHJvcGFy YWxsZWwgPT4gJ3InLCBwcm9yZXR0eXBlID0+ICdpbnQ4JywgcHJvYXJndHlwZXMgPT4gJ29p ZCcsCi0gIHByb3NyYyA9PiAncGdfc3RhdF9nZXRfbW9kX3NpbmNlX2FuYWx5emUnIH0sCisg IHByb3NyYyA9PiAncGdfc3RhdF9nZXRfdGFiX21vZF9zaW5jZV9hbmFseXplJyB9LAogeyBv aWQgPT4gJzUwNTMnLAogICBkZXNjciA9PiAnc3RhdGlzdGljczogbnVtYmVyIG9mIHR1cGxl cyBpbnNlcnRlZCBzaW5jZSBsYXN0IHZhY3V1bScsCi0gIHByb25hbWUgPT4gJ3BnX3N0YXRf Z2V0X2luc19zaW5jZV92YWN1dW0nLCBwcm92b2xhdGlsZSA9PiAncycsCisgIHByb25hbWUg PT4gJ3BnX3N0YXRfZ2V0X3RhYl9pbnNfc2luY2VfdmFjdXVtJywgcHJvdm9sYXRpbGUgPT4g J3MnLAogICBwcm9wYXJhbGxlbCA9PiAncicsIHByb3JldHR5cGUgPT4gJ2ludDgnLCBwcm9h cmd0eXBlcyA9PiAnb2lkJywKLSAgcHJvc3JjID0+ICdwZ19zdGF0X2dldF9pbnNfc2luY2Vf dmFjdXVtJyB9LAorICBwcm9zcmMgPT4gJ3BnX3N0YXRfZ2V0X3RhYl9pbnNfc2luY2VfdmFj dXVtJyB9LAogeyBvaWQgPT4gJzE5MzQnLCBkZXNjciA9PiAnc3RhdGlzdGljczogbnVtYmVy IG9mIGJsb2NrcyBmZXRjaGVkJywKLSAgcHJvbmFtZSA9PiAncGdfc3RhdF9nZXRfYmxvY2tz X2ZldGNoZWQnLCBwcm92b2xhdGlsZSA9PiAncycsCisgIHByb25hbWUgPT4gJ3BnX3N0YXRf Z2V0X3RhYl9ibG9ja3NfZmV0Y2hlZCcsIHByb3ZvbGF0aWxlID0+ICdzJywKICAgcHJvcGFy YWxsZWwgPT4gJ3InLCBwcm9yZXR0eXBlID0+ICdpbnQ4JywgcHJvYXJndHlwZXMgPT4gJ29p ZCcsCi0gIHByb3NyYyA9PiAncGdfc3RhdF9nZXRfYmxvY2tzX2ZldGNoZWQnIH0sCisgIHBy b3NyYyA9PiAncGdfc3RhdF9nZXRfdGFiX2Jsb2Nrc19mZXRjaGVkJyB9LAoreyBvaWQgPT4g Jzk0MzInLCBkZXNjciA9PiAnc3RhdGlzdGljczogbnVtYmVyIG9mIGJsb2NrcyBmZXRjaGVk JywKKyAgcHJvbmFtZSA9PiAncGdfc3RhdF9nZXRfaW5kX2Jsb2Nrc19mZXRjaGVkJywgcHJv dm9sYXRpbGUgPT4gJ3MnLAorICBwcm9wYXJhbGxlbCA9PiAncicsIHByb3JldHR5cGUgPT4g J2ludDgnLCBwcm9hcmd0eXBlcyA9PiAnb2lkJywKKyAgcHJvc3JjID0+ICdwZ19zdGF0X2dl dF9pbmRfYmxvY2tzX2ZldGNoZWQnIH0sCiB7IG9pZCA9PiAnMTkzNScsIGRlc2NyID0+ICdz dGF0aXN0aWNzOiBudW1iZXIgb2YgYmxvY2tzIGZvdW5kIGluIGNhY2hlJywKLSAgcHJvbmFt ZSA9PiAncGdfc3RhdF9nZXRfYmxvY2tzX2hpdCcsIHByb3ZvbGF0aWxlID0+ICdzJywgcHJv cGFyYWxsZWwgPT4gJ3InLAorICBwcm9uYW1lID0+ICdwZ19zdGF0X2dldF90YWJfYmxvY2tz X2hpdCcsIHByb3ZvbGF0aWxlID0+ICdzJywgcHJvcGFyYWxsZWwgPT4gJ3InLAorICBwcm9y ZXR0eXBlID0+ICdpbnQ4JywgcHJvYXJndHlwZXMgPT4gJ29pZCcsCisgIHByb3NyYyA9PiAn cGdfc3RhdF9nZXRfdGFiX2Jsb2Nrc19oaXQnIH0sCit7IG9pZCA9PiAnODM1NCcsIGRlc2Ny ID0+ICdzdGF0aXN0aWNzOiBudW1iZXIgb2YgYmxvY2tzIGZvdW5kIGluIGNhY2hlJywKKyAg cHJvbmFtZSA9PiAncGdfc3RhdF9nZXRfaW5kX2Jsb2Nrc19oaXQnLCBwcm92b2xhdGlsZSA9 PiAncycsIHByb3BhcmFsbGVsID0+ICdyJywKICAgcHJvcmV0dHlwZSA9PiAnaW50OCcsIHBy b2FyZ3R5cGVzID0+ICdvaWQnLAotICBwcm9zcmMgPT4gJ3BnX3N0YXRfZ2V0X2Jsb2Nrc19o aXQnIH0sCisgIHByb3NyYyA9PiAncGdfc3RhdF9nZXRfaW5kX2Jsb2Nrc19oaXQnIH0sCiB7 IG9pZCA9PiAnMjc4MScsIGRlc2NyID0+ICdzdGF0aXN0aWNzOiBsYXN0IG1hbnVhbCB2YWN1 dW0gdGltZSBmb3IgYSB0YWJsZScsCi0gIHByb25hbWUgPT4gJ3BnX3N0YXRfZ2V0X2xhc3Rf dmFjdXVtX3RpbWUnLCBwcm92b2xhdGlsZSA9PiAncycsCisgIHByb25hbWUgPT4gJ3BnX3N0 YXRfZ2V0X3RhYl9sYXN0X3ZhY3V1bV90aW1lJywgcHJvdm9sYXRpbGUgPT4gJ3MnLAogICBw cm9wYXJhbGxlbCA9PiAncicsIHByb3JldHR5cGUgPT4gJ3RpbWVzdGFtcHR6JywgcHJvYXJn dHlwZXMgPT4gJ29pZCcsCi0gIHByb3NyYyA9PiAncGdfc3RhdF9nZXRfbGFzdF92YWN1dW1f dGltZScgfSwKKyAgcHJvc3JjID0+ICdwZ19zdGF0X2dldF90YWJfbGFzdF92YWN1dW1fdGlt ZScgfSwKIHsgb2lkID0+ICcyNzgyJywgZGVzY3IgPT4gJ3N0YXRpc3RpY3M6IGxhc3QgYXV0 byB2YWN1dW0gdGltZSBmb3IgYSB0YWJsZScsCi0gIHByb25hbWUgPT4gJ3BnX3N0YXRfZ2V0 X2xhc3RfYXV0b3ZhY3V1bV90aW1lJywgcHJvdm9sYXRpbGUgPT4gJ3MnLAorICBwcm9uYW1l ID0+ICdwZ19zdGF0X2dldF90YWJfbGFzdF9hdXRvdmFjdXVtX3RpbWUnLCBwcm92b2xhdGls ZSA9PiAncycsCiAgIHByb3BhcmFsbGVsID0+ICdyJywgcHJvcmV0dHlwZSA9PiAndGltZXN0 YW1wdHonLCBwcm9hcmd0eXBlcyA9PiAnb2lkJywKLSAgcHJvc3JjID0+ICdwZ19zdGF0X2dl dF9sYXN0X2F1dG92YWN1dW1fdGltZScgfSwKKyAgcHJvc3JjID0+ICdwZ19zdGF0X2dldF90 YWJfbGFzdF9hdXRvdmFjdXVtX3RpbWUnIH0sCiB7IG9pZCA9PiAnMjc4MycsIGRlc2NyID0+ ICdzdGF0aXN0aWNzOiBsYXN0IG1hbnVhbCBhbmFseXplIHRpbWUgZm9yIGEgdGFibGUnLAot ICBwcm9uYW1lID0+ICdwZ19zdGF0X2dldF9sYXN0X2FuYWx5emVfdGltZScsIHByb3ZvbGF0 aWxlID0+ICdzJywKKyAgcHJvbmFtZSA9PiAncGdfc3RhdF9nZXRfdGFiX2xhc3RfYW5hbHl6 ZV90aW1lJywgcHJvdm9sYXRpbGUgPT4gJ3MnLAogICBwcm9wYXJhbGxlbCA9PiAncicsIHBy b3JldHR5cGUgPT4gJ3RpbWVzdGFtcHR6JywgcHJvYXJndHlwZXMgPT4gJ29pZCcsCi0gIHBy b3NyYyA9PiAncGdfc3RhdF9nZXRfbGFzdF9hbmFseXplX3RpbWUnIH0sCisgIHByb3NyYyA9 PiAncGdfc3RhdF9nZXRfdGFiX2xhc3RfYW5hbHl6ZV90aW1lJyB9LAogeyBvaWQgPT4gJzI3 ODQnLCBkZXNjciA9PiAnc3RhdGlzdGljczogbGFzdCBhdXRvIGFuYWx5emUgdGltZSBmb3Ig YSB0YWJsZScsCi0gIHByb25hbWUgPT4gJ3BnX3N0YXRfZ2V0X2xhc3RfYXV0b2FuYWx5emVf dGltZScsIHByb3ZvbGF0aWxlID0+ICdzJywKKyAgcHJvbmFtZSA9PiAncGdfc3RhdF9nZXRf dGFiX2xhc3RfYXV0b2FuYWx5emVfdGltZScsIHByb3ZvbGF0aWxlID0+ICdzJywKICAgcHJv cGFyYWxsZWwgPT4gJ3InLCBwcm9yZXR0eXBlID0+ICd0aW1lc3RhbXB0eicsIHByb2FyZ3R5 cGVzID0+ICdvaWQnLAotICBwcm9zcmMgPT4gJ3BnX3N0YXRfZ2V0X2xhc3RfYXV0b2FuYWx5 emVfdGltZScgfSwKKyAgcHJvc3JjID0+ICdwZ19zdGF0X2dldF90YWJfbGFzdF9hdXRvYW5h bHl6ZV90aW1lJyB9LAogeyBvaWQgPT4gJzMwNTQnLCBkZXNjciA9PiAnc3RhdGlzdGljczog bnVtYmVyIG9mIG1hbnVhbCB2YWN1dW1zIGZvciBhIHRhYmxlJywKLSAgcHJvbmFtZSA9PiAn cGdfc3RhdF9nZXRfdmFjdXVtX2NvdW50JywgcHJvdm9sYXRpbGUgPT4gJ3MnLCBwcm9wYXJh bGxlbCA9PiAncicsCisgIHByb25hbWUgPT4gJ3BnX3N0YXRfZ2V0X3RhYl92YWN1dW1fY291 bnQnLCBwcm92b2xhdGlsZSA9PiAncycsIHByb3BhcmFsbGVsID0+ICdyJywKICAgcHJvcmV0 dHlwZSA9PiAnaW50OCcsIHByb2FyZ3R5cGVzID0+ICdvaWQnLAotICBwcm9zcmMgPT4gJ3Bn X3N0YXRfZ2V0X3ZhY3V1bV9jb3VudCcgfSwKKyAgcHJvc3JjID0+ICdwZ19zdGF0X2dldF90 YWJfdmFjdXVtX2NvdW50JyB9LAogeyBvaWQgPT4gJzMwNTUnLCBkZXNjciA9PiAnc3RhdGlz dGljczogbnVtYmVyIG9mIGF1dG8gdmFjdXVtcyBmb3IgYSB0YWJsZScsCi0gIHByb25hbWUg PT4gJ3BnX3N0YXRfZ2V0X2F1dG92YWN1dW1fY291bnQnLCBwcm92b2xhdGlsZSA9PiAncycs CisgIHByb25hbWUgPT4gJ3BnX3N0YXRfZ2V0X3RhYl9hdXRvdmFjdXVtX2NvdW50JywgcHJv dm9sYXRpbGUgPT4gJ3MnLAogICBwcm9wYXJhbGxlbCA9PiAncicsIHByb3JldHR5cGUgPT4g J2ludDgnLCBwcm9hcmd0eXBlcyA9PiAnb2lkJywKLSAgcHJvc3JjID0+ICdwZ19zdGF0X2dl dF9hdXRvdmFjdXVtX2NvdW50JyB9LAorICBwcm9zcmMgPT4gJ3BnX3N0YXRfZ2V0X3RhYl9h dXRvdmFjdXVtX2NvdW50JyB9LAogeyBvaWQgPT4gJzMwNTYnLCBkZXNjciA9PiAnc3RhdGlz dGljczogbnVtYmVyIG9mIG1hbnVhbCBhbmFseXplcyBmb3IgYSB0YWJsZScsCi0gIHByb25h bWUgPT4gJ3BnX3N0YXRfZ2V0X2FuYWx5emVfY291bnQnLCBwcm92b2xhdGlsZSA9PiAncycs CisgIHByb25hbWUgPT4gJ3BnX3N0YXRfZ2V0X3RhYl9hbmFseXplX2NvdW50JywgcHJvdm9s YXRpbGUgPT4gJ3MnLAogICBwcm9wYXJhbGxlbCA9PiAncicsIHByb3JldHR5cGUgPT4gJ2lu dDgnLCBwcm9hcmd0eXBlcyA9PiAnb2lkJywKLSAgcHJvc3JjID0+ICdwZ19zdGF0X2dldF9h bmFseXplX2NvdW50JyB9LAorICBwcm9zcmMgPT4gJ3BnX3N0YXRfZ2V0X3RhYl9hbmFseXpl X2NvdW50JyB9LAogeyBvaWQgPT4gJzMwNTcnLCBkZXNjciA9PiAnc3RhdGlzdGljczogbnVt YmVyIG9mIGF1dG8gYW5hbHl6ZXMgZm9yIGEgdGFibGUnLAotICBwcm9uYW1lID0+ICdwZ19z dGF0X2dldF9hdXRvYW5hbHl6ZV9jb3VudCcsIHByb3ZvbGF0aWxlID0+ICdzJywKKyAgcHJv bmFtZSA9PiAncGdfc3RhdF9nZXRfdGFiX2F1dG9hbmFseXplX2NvdW50JywgcHJvdm9sYXRp bGUgPT4gJ3MnLAogICBwcm9wYXJhbGxlbCA9PiAncicsIHByb3JldHR5cGUgPT4gJ2ludDgn LCBwcm9hcmd0eXBlcyA9PiAnb2lkJywKLSAgcHJvc3JjID0+ICdwZ19zdGF0X2dldF9hdXRv YW5hbHl6ZV9jb3VudCcgfSwKKyAgcHJvc3JjID0+ICdwZ19zdGF0X2dldF90YWJfYXV0b2Fu YWx5emVfY291bnQnIH0sCiB7IG9pZCA9PiAnMTkzNicsIGRlc2NyID0+ICdzdGF0aXN0aWNz OiBjdXJyZW50bHkgYWN0aXZlIGJhY2tlbmQgSURzJywKICAgcHJvbmFtZSA9PiAncGdfc3Rh dF9nZXRfYmFja2VuZF9pZHNldCcsIHByb3Jvd3MgPT4gJzEwMCcsIHByb3JldHNldCA9PiAn dCcsCiAgIHByb3ZvbGF0aWxlID0+ICdzJywgcHJvcGFyYWxsZWwgPT4gJ3InLCBwcm9yZXR0 eXBlID0+ICdpbnQ0JywKQEAgLTU3NzMsMTAgKzU3OTcsMTUgQEAKICAgcHJvc3JjID0+ICdw Z19zdGF0X2dldF9mdW5jdGlvbl9zZWxmX3RpbWUnIH0sCiAKIHsgb2lkID0+ICczMDM3JywK LSAgZGVzY3IgPT4gJ3N0YXRpc3RpY3M6IG51bWJlciBvZiBzY2FucyBkb25lIGZvciB0YWJs ZS9pbmRleCBpbiBjdXJyZW50IHRyYW5zYWN0aW9uJywKLSAgcHJvbmFtZSA9PiAncGdfc3Rh dF9nZXRfeGFjdF9udW1zY2FucycsIHByb3ZvbGF0aWxlID0+ICd2JywKKyAgZGVzY3IgPT4g J3N0YXRpc3RpY3M6IG51bWJlciBvZiBzY2FucyBkb25lIGZvciB0YWJsZSBpbiBjdXJyZW50 IHRyYW5zYWN0aW9uJywKKyAgcHJvbmFtZSA9PiAncGdfc3RhdF9nZXRfdGFiX3hhY3RfbnVt c2NhbnMnLCBwcm92b2xhdGlsZSA9PiAndicsCisgIHByb3BhcmFsbGVsID0+ICdyJywgcHJv cmV0dHlwZSA9PiAnaW50OCcsIHByb2FyZ3R5cGVzID0+ICdvaWQnLAorICBwcm9zcmMgPT4g J3BnX3N0YXRfZ2V0X3RhYl94YWN0X251bXNjYW5zJyB9LAoreyBvaWQgPT4gJzg4OTInLAor ICBkZXNjciA9PiAnc3RhdGlzdGljczogbnVtYmVyIG9mIHNjYW5zIGRvbmUgZm9yIGluZGV4 IGluIGN1cnJlbnQgdHJhbnNhY3Rpb24nLAorICBwcm9uYW1lID0+ICdwZ19zdGF0X2dldF9p bmRfeGFjdF9udW1zY2FucycsIHByb3ZvbGF0aWxlID0+ICd2JywKICAgcHJvcGFyYWxsZWwg PT4gJ3InLCBwcm9yZXR0eXBlID0+ICdpbnQ4JywgcHJvYXJndHlwZXMgPT4gJ29pZCcsCi0g IHByb3NyYyA9PiAncGdfc3RhdF9nZXRfeGFjdF9udW1zY2FucycgfSwKKyAgcHJvc3JjID0+ ICdwZ19zdGF0X2dldF9pbmRfeGFjdF9udW1zY2FucycgfSwKIHsgb2lkID0+ICczMDM4JywK ICAgZGVzY3IgPT4gJ3N0YXRpc3RpY3M6IG51bWJlciBvZiB0dXBsZXMgcmVhZCBieSBzZXFz Y2FuIGluIGN1cnJlbnQgdHJhbnNhY3Rpb24nLAogICBwcm9uYW1lID0+ICdwZ19zdGF0X2dl dF94YWN0X3R1cGxlc19yZXR1cm5lZCcsIHByb3ZvbGF0aWxlID0+ICd2JywKZGlmZiAtLWdp dCBhL3NyYy9pbmNsdWRlL3Bnc3RhdC5oIGIvc3JjL2luY2x1ZGUvcGdzdGF0LmgKaW5kZXgg MWU0MThiNjgyYi4uNGQzZWI1MWY4MCAxMDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUvcGdzdGF0 LmgKKysrIGIvc3JjL2luY2x1ZGUvcGdzdGF0LmgKQEAgLTM5LDcgKzM5LDggQEAgdHlwZWRl ZiBlbnVtIFBnU3RhdF9LaW5kCiAKIAkvKiBzdGF0cyBmb3IgdmFyaWFibGUtbnVtYmVyZWQg b2JqZWN0cyAqLwogCVBHU1RBVF9LSU5EX0RBVEFCQVNFLAkJLyogZGF0YWJhc2Utd2lkZSBz dGF0aXN0aWNzICovCi0JUEdTVEFUX0tJTkRfUkVMQVRJT04sCQkvKiBwZXItdGFibGUgc3Rh dGlzdGljcyAqLworCVBHU1RBVF9LSU5EX1RBQkxFLAkJCS8qIHBlci10YWJsZSBzdGF0aXN0 aWNzICovCisJUEdTVEFUX0tJTkRfSU5ERVgsCQkJLyogcGVyLWluZGV4IHN0YXRpc3RpY3Mg Ki8KIAlQR1NUQVRfS0lORF9GVU5DVElPTiwJCS8qIHBlci1mdW5jdGlvbiBzdGF0aXN0aWNz ICovCiAJUEdTVEFUX0tJTkRfUkVQTFNMT1QsCQkvKiBwZXItc2xvdCBzdGF0aXN0aWNzICov CiAJUEdTVEFUX0tJTkRfU1VCU0NSSVBUSU9OLAkvKiBwZXItc3Vic2NyaXB0aW9uIHN0YXRp c3RpY3MgKi8KQEAgLTEzNyw2ICsxMzgsMjggQEAgdHlwZWRlZiBzdHJ1Y3QgUGdTdGF0X0Jh Y2tlbmRTdWJFbnRyeQogCVBnU3RhdF9Db3VudGVyIHN5bmNfZXJyb3JfY291bnQ7CiB9IFBn U3RhdF9CYWNrZW5kU3ViRW50cnk7CiAKKy8qIC0tLS0tLS0tLS0KKyAqIFBnU3RhdF9JbmRl eENvdW50cwkJCVRoZSBhY3R1YWwgcGVyLWluZGV4IGNvdW50cyBrZXB0IGJ5IGEgYmFja2Vu ZAorICoKKyAqIFRoaXMgc3RydWN0IHNob3VsZCBjb250YWluIG9ubHkgYWN0dWFsIGV2ZW50 IGNvdW50ZXJzLCBiZWNhdXNlIHdlIG1lbWNtcAorICogaXQgYWdhaW5zdCB6ZXJvZXMgdG8g ZGV0ZWN0IHdoZXRoZXIgdGhlcmUgYXJlIGFueSBzdGF0cyB1cGRhdGVzIHRvIGFwcGx5Lgor ICogSXQgaXMgYSBjb21wb25lbnQgb2YgUGdTdGF0X0luZGV4U3RhdHVzICh3aXRoaW4tYmFj a2VuZCBzdGF0ZSkuCisgKgorICogdHVwbGVzX3JldHVybmVkIGlzIHRoZSBudW1iZXIgb2Yg aW5kZXggZW50cmllcyByZXR1cm5lZCBieQorICogdGhlIGluZGV4IEFNLCB3aGlsZSB0dXBs ZXNfZmV0Y2hlZCBpcyB0aGUgbnVtYmVyIG9mIHR1cGxlcyBzdWNjZXNzZnVsbHkKKyAqIGZl dGNoZWQgYnkgaGVhcF9mZXRjaCB1bmRlciB0aGUgY29udHJvbCBvZiBzaW1wbGUgaW5kZXhz Y2FucyBmb3IgdGhpcyBpbmRleC4KKyAqIC0tLS0tLS0tLS0KKyAqLwordHlwZWRlZiBzdHJ1 Y3QgUGdTdGF0X0luZGV4Q291bnRzCit7CisJUGdTdGF0X0NvdW50ZXIgaV9udW1zY2FuczsK KworCVBnU3RhdF9Db3VudGVyIGlfdHVwbGVzX3JldHVybmVkOworCVBnU3RhdF9Db3VudGVy IGlfdHVwbGVzX2ZldGNoZWQ7CisJUGdTdGF0X0NvdW50ZXIgaV9ibG9ja3NfZmV0Y2hlZDsK KwlQZ1N0YXRfQ291bnRlciBpX2Jsb2Nrc19oaXQ7Cit9IFBnU3RhdF9JbmRleENvdW50czsK KwogLyogLS0tLS0tLS0tLQogICogUGdTdGF0X1RhYmxlQ291bnRzCQkJVGhlIGFjdHVhbCBw ZXItdGFibGUgY291bnRzIGtlcHQgYnkgYSBiYWNrZW5kCiAgKgpAQCAtMTQ0LDEyICsxNjcs OSBAQCB0eXBlZGVmIHN0cnVjdCBQZ1N0YXRfQmFja2VuZFN1YkVudHJ5CiAgKiBpdCBhZ2Fp bnN0IHplcm9lcyB0byBkZXRlY3Qgd2hldGhlciB0aGVyZSBhcmUgYW55IHN0YXRzIHVwZGF0 ZXMgdG8gYXBwbHkuCiAgKiBJdCBpcyBhIGNvbXBvbmVudCBvZiBQZ1N0YXRfVGFibGVTdGF0 dXMgKHdpdGhpbi1iYWNrZW5kIHN0YXRlKS4KICAqCi0gKiBOb3RlOiBmb3IgYSB0YWJsZSwg dHVwbGVzX3JldHVybmVkIGlzIHRoZSBudW1iZXIgb2YgdHVwbGVzIHN1Y2Nlc3NmdWxseQor ICogTm90ZTogdHVwbGVzX3JldHVybmVkIGlzIHRoZSBudW1iZXIgb2YgdHVwbGVzIHN1Y2Nl c3NmdWxseQogICogZmV0Y2hlZCBieSBoZWFwX2dldG5leHQsIHdoaWxlIHR1cGxlc19mZXRj aGVkIGlzIHRoZSBudW1iZXIgb2YgdHVwbGVzCiAgKiBzdWNjZXNzZnVsbHkgZmV0Y2hlZCBi eSBoZWFwX2ZldGNoIHVuZGVyIHRoZSBjb250cm9sIG9mIGJpdG1hcCBpbmRleHNjYW5zLgot ICogRm9yIGFuIGluZGV4LCB0dXBsZXNfcmV0dXJuZWQgaXMgdGhlIG51bWJlciBvZiBpbmRl eCBlbnRyaWVzIHJldHVybmVkIGJ5Ci0gKiB0aGUgaW5kZXggQU0sIHdoaWxlIHR1cGxlc19m ZXRjaGVkIGlzIHRoZSBudW1iZXIgb2YgdHVwbGVzIHN1Y2Nlc3NmdWxseQotICogZmV0Y2hl ZCBieSBoZWFwX2ZldGNoIHVuZGVyIHRoZSBjb250cm9sIG9mIHNpbXBsZSBpbmRleHNjYW5z IGZvciB0aGlzIGluZGV4LgogICoKICAqIHR1cGxlc19pbnNlcnRlZC91cGRhdGVkL2RlbGV0 ZWQvaG90X3VwZGF0ZWQgY291bnQgYXR0ZW1wdGVkIGFjdGlvbnMsCiAgKiByZWdhcmRsZXNz IG9mIHdoZXRoZXIgdGhlIHRyYW5zYWN0aW9uIGNvbW1pdHRlZC4gIGRlbHRhX2xpdmVfdHVw bGVzLApAQCAtMjAyLDYgKzIyMiwyMiBAQCB0eXBlZGVmIHN0cnVjdCBQZ1N0YXRfVGFibGVT dGF0dXMKIAlSZWxhdGlvbglyZWxhdGlvbjsJCS8qIHJlbCB0aGF0IGlzIHVzaW5nIHRoaXMg ZW50cnkgKi8KIH0gUGdTdGF0X1RhYmxlU3RhdHVzOwogCisvKiAtLS0tLS0tLS0tCisgKiBQ Z1N0YXRfSW5kZXhTdGF0dXMJCQlQZXItaW5kZXggc3RhdHVzIHdpdGhpbiBhIGJhY2tlbmQK KyAqCisgKiBNYW55IG9mIHRoZSBldmVudCBjb3VudGVycyBhcmUgbm9udHJhbnNhY3Rpb25h bCwgaWUsIHdlIGNvdW50IGV2ZW50cworICogaW4gY29tbWl0dGVkIGFuZCBhYm9ydGVkIHRy YW5zYWN0aW9ucyBhbGlrZS4gIEZvciB0aGVzZSwgd2UganVzdCBjb3VudAorICogZGlyZWN0 bHkgaW4gdGhlIFBnU3RhdF9JbmRleFN0YXR1cy4KKyAqIC0tLS0tLS0tLS0KKyAqLwordHlw ZWRlZiBzdHJ1Y3QgUGdTdGF0X0luZGV4U3RhdHVzCit7CisJT2lkCQkJcl9pZDsJCQkvKiBy ZWxhdGlvbidzIE9JRCAqLworCWJvb2wJCXJfc2hhcmVkOwkJLyogaXMgaXQgYSBzaGFyZWQg Y2F0YWxvZz8gKi8KKwlQZ1N0YXRfSW5kZXhDb3VudHMgaV9jb3VudHM7CS8qIGV2ZW50IGNv dW50cyB0byBiZSBzZW50ICovCisJUmVsYXRpb24JcmVsYXRpb247CQkvKiByZWwgdGhhdCBp cyB1c2luZyB0aGlzIGVudHJ5ICovCit9IFBnU3RhdF9JbmRleFN0YXR1czsKKwogLyogLS0t LS0tLS0tLQogICogUGdTdGF0X1RhYmxlWGFjdFN0YXR1cwkJUGVyLXRhYmxlLCBwZXItc3Vi dHJhbnNhY3Rpb24gc3RhdHVzCiAgKiAtLS0tLS0tLS0tCkBAIC00MjAsNiArNDU2LDE3IEBA IHR5cGVkZWYgc3RydWN0IFBnU3RhdF9TdGF0VGFiRW50cnkKIAlQZ1N0YXRfQ291bnRlciBh dXRvYW5hbHl6ZV9jb3VudDsKIH0gUGdTdGF0X1N0YXRUYWJFbnRyeTsKIAordHlwZWRlZiBz dHJ1Y3QgUGdTdGF0X1N0YXRJbmRFbnRyeQoreworCVBnU3RhdF9Db3VudGVyIG51bXNjYW5z OworCVRpbWVzdGFtcFR6IGxhc3RzY2FuOworCisJUGdTdGF0X0NvdW50ZXIgdHVwbGVzX3Jl dHVybmVkOworCVBnU3RhdF9Db3VudGVyIHR1cGxlc19mZXRjaGVkOworCVBnU3RhdF9Db3Vu dGVyIGJsb2Nrc19mZXRjaGVkOworCVBnU3RhdF9Db3VudGVyIGJsb2Nrc19oaXQ7Cit9IFBn U3RhdF9TdGF0SW5kRW50cnk7CisKIHR5cGVkZWYgc3RydWN0IFBnU3RhdF9XYWxTdGF0cwog ewogCVBnU3RhdF9Db3VudGVyIHdhbF9yZWNvcmRzOwpAQCAtNTUxLDE2ICs1OTgsMTUgQEAg ZXh0ZXJuIFBnU3RhdF9GdW5jdGlvbkNvdW50cyAqZmluZF9mdW5jc3RhdF9lbnRyeShPaWQg ZnVuY19pZCk7CiAKIAogLyoKLSAqIEZ1bmN0aW9ucyBpbiBwZ3N0YXRfcmVsYXRpb24uYwor ICogRnVuY3Rpb25zIGluIHBnc3RhdF90YWJsZS5jCiAgKi8KIAotZXh0ZXJuIHZvaWQgcGdz dGF0X2NyZWF0ZV9yZWxhdGlvbihSZWxhdGlvbiByZWwpOwotZXh0ZXJuIHZvaWQgcGdzdGF0 X2Ryb3BfcmVsYXRpb24oUmVsYXRpb24gcmVsKTsKLWV4dGVybiB2b2lkIHBnc3RhdF9jb3B5 X3JlbGF0aW9uX3N0YXRzKFJlbGF0aW9uIGRzdCwgUmVsYXRpb24gc3JjKTsKK2V4dGVybiB2 b2lkIHBnc3RhdF9jcmVhdGVfdGFibGUoUmVsYXRpb24gcmVsKTsKK2V4dGVybiB2b2lkIHBn c3RhdF9kcm9wX3RhYmxlKFJlbGF0aW9uIHJlbCk7CitleHRlcm4gdm9pZCBwZ3N0YXRfaW5p dF90YWJsZShSZWxhdGlvbiByZWwpOwogCi1leHRlcm4gdm9pZCBwZ3N0YXRfaW5pdF9yZWxh dGlvbihSZWxhdGlvbiByZWwpOwotZXh0ZXJuIHZvaWQgcGdzdGF0X2Fzc29jX3JlbGF0aW9u KFJlbGF0aW9uIHJlbCk7Ci1leHRlcm4gdm9pZCBwZ3N0YXRfdW5saW5rX3JlbGF0aW9uKFJl bGF0aW9uIHJlbCk7CitleHRlcm4gdm9pZCBwZ3N0YXRfYXNzb2NfdGFibGUoUmVsYXRpb24g cmVsKTsKK2V4dGVybiB2b2lkIHBnc3RhdF91bmxpbmtfdGFibGUoUmVsYXRpb24gcmVsKTsK IAogZXh0ZXJuIHZvaWQgcGdzdGF0X3JlcG9ydF92YWN1dW0oT2lkIHRhYmxlb2lkLCBib29s IHNoYXJlZCwKIAkJCQkJCQkJIFBnU3RhdF9Db3VudGVyIGxpdmV0dXBsZXMsIFBnU3RhdF9D b3VudGVyIGRlYWR0dXBsZXMpOwpAQCAtNTY4LDUzICs2MTQsODMgQEAgZXh0ZXJuIHZvaWQg cGdzdGF0X3JlcG9ydF9hbmFseXplKFJlbGF0aW9uIHJlbCwKIAkJCQkJCQkJICBQZ1N0YXRf Q291bnRlciBsaXZldHVwbGVzLCBQZ1N0YXRfQ291bnRlciBkZWFkdHVwbGVzLAogCQkJCQkJ CQkgIGJvb2wgcmVzZXRjb3VudGVyKTsKIAorLyoKKyAqIEZ1bmN0aW9ucyBpbiBwZ3N0YXRf aW5kZXguYworICovCisKK2V4dGVybiB2b2lkIHBnc3RhdF9jcmVhdGVfaW5kZXgoUmVsYXRp b24gcmVsKTsKK2V4dGVybiB2b2lkIHBnc3RhdF9kcm9wX2luZGV4KFJlbGF0aW9uIHJlbCk7 CitleHRlcm4gdm9pZCBwZ3N0YXRfY29weV9pbmRleF9zdGF0cyhSZWxhdGlvbiBkc3QsIFJl bGF0aW9uIHNyYyk7CitleHRlcm4gdm9pZCBwZ3N0YXRfaW5pdF9pbmRleChSZWxhdGlvbiBy ZWwpOworZXh0ZXJuIHZvaWQgcGdzdGF0X2Fzc29jX2luZGV4KFJlbGF0aW9uIHJlbCk7Citl eHRlcm4gdm9pZCBwZ3N0YXRfdW5saW5rX2luZGV4KFJlbGF0aW9uIHJlbCk7CisKIC8qCiAg KiBJZiBzdGF0cyBhcmUgZW5hYmxlZCwgYnV0IHBlbmRpbmcgZGF0YSBoYXNuJ3QgYmVlbiBw cmVwYXJlZCB5ZXQsIGNhbGwKLSAqIHBnc3RhdF9hc3NvY19yZWxhdGlvbigpIHRvIGRvIHNv LiBTZWUgaXRzIGNvbW1lbnQgZm9yIHdoeSB0aGlzIGlzIGRvbmUKLSAqIHNlcGFyYXRlbHkg ZnJvbSBwZ3N0YXRfaW5pdF9yZWxhdGlvbigpLgorICogcGdzdGF0X2Fzc29jX3RhYmxlKCkg LyBwZ3N0YXRfYXNzb2NfaW5kZXgoKSB0byBkbyBzby4KKyAqIFNlZSB0aGVpciBjb21tZW50 IGZvciB3aHkgdGhpcyBpcyBkb25lIHNlcGFyYXRlbHkgZnJvbSBwZ3N0YXRfaW5pdF90YWJs ZSgpCisgKiBhbmQgcGdzdGF0X2luaXRfaW5kZXgoKS4KICAqLwotI2RlZmluZSBwZ3N0YXRf c2hvdWxkX2NvdW50X3JlbGF0aW9uKHJlbCkgICAgICAgICAgICAgICAgICAgICAgICAgICBc Ci0JKGxpa2VseSgocmVsKS0+cGdzdGF0X2luZm8gIT0gTlVMTCkgPyB0cnVlIDogICAgICAg ICAgICAgICAgICAgIFwKLQkgKChyZWwpLT5wZ3N0YXRfZW5hYmxlZCA/IHBnc3RhdF9hc3Nv Y19yZWxhdGlvbihyZWwpLCB0cnVlIDogZmFsc2UpKQorI2RlZmluZSBwZ3N0YXRfc2hvdWxk X2NvdW50X3RhYmxlKHJlbCkgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisJKGxpa2Vs eSgocmVsKS0+cGdzdGF0dGFiX2luZm8gIT0gTlVMTCkgPyB0cnVlIDogICAgICAgICAgICAg ICAgICAgIFwKKwkgKChyZWwpLT5wZ3N0YXRfZW5hYmxlZCA/IHBnc3RhdF9hc3NvY190YWJs ZShyZWwpLCB0cnVlIDogZmFsc2UpKQorCisjZGVmaW5lIHBnc3RhdF9zaG91bGRfY291bnRf aW5kZXgocmVsKSAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKwkobGlrZWx5KChyZWwp LT5wZ3N0YXRpbmRfaW5mbyAhPSBOVUxMKSA/IHRydWUgOiAgICAgICAgICAgICAgICAgICAg XAorCSAoKHJlbCktPnBnc3RhdF9lbmFibGVkID8gcGdzdGF0X2Fzc29jX2luZGV4KHJlbCks IHRydWUgOiBmYWxzZSkpCiAKIC8qIG5vbnRyYW5zYWN0aW9uYWwgZXZlbnQgY291bnRzIGFy ZSBzaW1wbGUgZW5vdWdoIHRvIGlubGluZSAqLwogCiAjZGVmaW5lIHBnc3RhdF9jb3VudF9o ZWFwX3NjYW4ocmVsKQkJCQkJCQkJCVwKIAlkbyB7CQkJCQkJCQkJCQkJCQkJXAotCQlpZiAo cGdzdGF0X3Nob3VsZF9jb3VudF9yZWxhdGlvbihyZWwpKQkJCQkJCVwKLQkJCShyZWwpLT5w Z3N0YXRfaW5mby0+dF9jb3VudHMudF9udW1zY2FucysrOwkJCQlcCisJCWlmIChwZ3N0YXRf c2hvdWxkX2NvdW50X3RhYmxlKHJlbCkpCQkJCQkJXAorCQkJKHJlbCktPnBnc3RhdHRhYl9p bmZvLT50X2NvdW50cy50X251bXNjYW5zKys7CQkJCVwKIAl9IHdoaWxlICgwKQogI2RlZmlu ZSBwZ3N0YXRfY291bnRfaGVhcF9nZXRuZXh0KHJlbCkJCQkJCQkJCVwKIAlkbyB7CQkJCQkJ CQkJCQkJCQkJXAotCQlpZiAocGdzdGF0X3Nob3VsZF9jb3VudF9yZWxhdGlvbihyZWwpKQkJ CQkJCVwKLQkJCShyZWwpLT5wZ3N0YXRfaW5mby0+dF9jb3VudHMudF90dXBsZXNfcmV0dXJu ZWQrKzsJCVwKKwkJaWYgKHBnc3RhdF9zaG91bGRfY291bnRfdGFibGUocmVsKSkJCQkJCQlc CisJCQkocmVsKS0+cGdzdGF0dGFiX2luZm8tPnRfY291bnRzLnRfdHVwbGVzX3JldHVybmVk Kys7CQlcCiAJfSB3aGlsZSAoMCkKICNkZWZpbmUgcGdzdGF0X2NvdW50X2hlYXBfZmV0Y2go cmVsKQkJCQkJCQkJXAogCWRvIHsJCQkJCQkJCQkJCQkJCQlcCi0JCWlmIChwZ3N0YXRfc2hv dWxkX2NvdW50X3JlbGF0aW9uKHJlbCkpCQkJCQkJXAotCQkJKHJlbCktPnBnc3RhdF9pbmZv LT50X2NvdW50cy50X3R1cGxlc19mZXRjaGVkKys7CQlcCisJCWlmIChwZ3N0YXRfc2hvdWxk X2NvdW50X3RhYmxlKHJlbCkpCQkJCQkJXAorCQkJKHJlbCktPnBnc3RhdHRhYl9pbmZvLT50 X2NvdW50cy50X3R1cGxlc19mZXRjaGVkKys7CQlcCisJfSB3aGlsZSAoMCkKKyNkZWZpbmUg cGdzdGF0X2NvdW50X2luZGV4X2ZldGNoKHJlbCkJCQkJCQkJCVwKKwlkbyB7CQkJCQkJCQkJ CQkJCQkJXAorCQlpZiAocGdzdGF0X3Nob3VsZF9jb3VudF9pbmRleChyZWwpKQkJCQkJCVwK KwkJCShyZWwpLT5wZ3N0YXRpbmRfaW5mby0+aV9jb3VudHMuaV90dXBsZXNfZmV0Y2hlZCsr OwkJXAogCX0gd2hpbGUgKDApCiAjZGVmaW5lIHBnc3RhdF9jb3VudF9pbmRleF9zY2FuKHJl bCkJCQkJCQkJCVwKIAlkbyB7CQkJCQkJCQkJCQkJCQkJXAotCQlpZiAocGdzdGF0X3Nob3Vs ZF9jb3VudF9yZWxhdGlvbihyZWwpKQkJCQkJCVwKLQkJCShyZWwpLT5wZ3N0YXRfaW5mby0+ dF9jb3VudHMudF9udW1zY2FucysrOwkJCQlcCisJCWlmIChwZ3N0YXRfc2hvdWxkX2NvdW50 X2luZGV4KHJlbCkpCQkJCQkJXAorCQkJKHJlbCktPnBnc3RhdGluZF9pbmZvLT5pX2NvdW50 cy5pX251bXNjYW5zKys7CQkJXAogCX0gd2hpbGUgKDApCiAjZGVmaW5lIHBnc3RhdF9jb3Vu dF9pbmRleF90dXBsZXMocmVsLCBuKQkJCQkJCQlcCiAJZG8gewkJCQkJCQkJCQkJCQkJCVwK LQkJaWYgKHBnc3RhdF9zaG91bGRfY291bnRfcmVsYXRpb24ocmVsKSkJCQkJCQlcCi0JCQko cmVsKS0+cGdzdGF0X2luZm8tPnRfY291bnRzLnRfdHVwbGVzX3JldHVybmVkICs9IChuKTsJ XAorCQlpZiAocGdzdGF0X3Nob3VsZF9jb3VudF9pbmRleChyZWwpKQkJCQkJCVwKKwkJCShy ZWwpLT5wZ3N0YXRpbmRfaW5mby0+aV9jb3VudHMuaV90dXBsZXNfcmV0dXJuZWQgKz0gKG4p OwlcCiAJfSB3aGlsZSAoMCkKLSNkZWZpbmUgcGdzdGF0X2NvdW50X2J1ZmZlcl9yZWFkKHJl bCkJCQkJCQkJCVwKKyNkZWZpbmUgcGdzdGF0X2NvdW50X3RhYmxlX2J1ZmZlcl9yZWFkKHJl bCkJCQkJCQkJCVwKIAlkbyB7CQkJCQkJCQkJCQkJCQkJXAotCQlpZiAocGdzdGF0X3Nob3Vs ZF9jb3VudF9yZWxhdGlvbihyZWwpKQkJCQkJCVwKLQkJCShyZWwpLT5wZ3N0YXRfaW5mby0+ dF9jb3VudHMudF9ibG9ja3NfZmV0Y2hlZCsrOwkJXAorCQlpZiAocGdzdGF0X3Nob3VsZF9j b3VudF90YWJsZShyZWwpKQlcCisJCQkocmVsKS0+cGdzdGF0dGFiX2luZm8tPnRfY291bnRz LnRfYmxvY2tzX2ZldGNoZWQrKzsJCVwKIAl9IHdoaWxlICgwKQotI2RlZmluZSBwZ3N0YXRf Y291bnRfYnVmZmVyX2hpdChyZWwpCQkJCQkJCQlcCisjZGVmaW5lIHBnc3RhdF9jb3VudF9p bmRleF9idWZmZXJfcmVhZChyZWwpCQkJCQkJCQlcCiAJZG8gewkJCQkJCQkJCQkJCQkJCVwK LQkJaWYgKHBnc3RhdF9zaG91bGRfY291bnRfcmVsYXRpb24ocmVsKSkJCQkJCQlcCi0JCQko cmVsKS0+cGdzdGF0X2luZm8tPnRfY291bnRzLnRfYmxvY2tzX2hpdCsrOwkJCVwKKwkJaWYg KHBnc3RhdF9zaG91bGRfY291bnRfaW5kZXgocmVsKSkJXAorCQkJKHJlbCktPnBnc3RhdGlu ZF9pbmZvLT5pX2NvdW50cy5pX2Jsb2Nrc19mZXRjaGVkKys7CQlcCisJfSB3aGlsZSAoMCkK KyNkZWZpbmUgcGdzdGF0X2NvdW50X3RhYmxlX2J1ZmZlcl9oaXQocmVsKQkJCQkJCQkJXAor CWRvIHsJCQkJCQkJCQkJCQkJCQlcCisJCWlmIChwZ3N0YXRfc2hvdWxkX2NvdW50X3RhYmxl KHJlbCkpCVwKKwkJCShyZWwpLT5wZ3N0YXR0YWJfaW5mby0+dF9jb3VudHMudF9ibG9ja3Nf aGl0Kys7IFwKKwl9IHdoaWxlICgwKQorI2RlZmluZSBwZ3N0YXRfY291bnRfaW5kZXhfYnVm ZmVyX2hpdChyZWwpCQkJCQkJCQlcCisJZG8gewkJCQkJCQkJCQkJCQkJCVwKKwkJaWYgKHBn c3RhdF9zaG91bGRfY291bnRfaW5kZXgocmVsKSkJXAorCQkJKHJlbCktPnBnc3RhdGluZF9p bmZvLT5pX2NvdW50cy5pX2Jsb2Nrc19oaXQrKzsgXAogCX0gd2hpbGUgKDApCi0KIGV4dGVy biB2b2lkIHBnc3RhdF9jb3VudF9oZWFwX2luc2VydChSZWxhdGlvbiByZWwsIFBnU3RhdF9D b3VudGVyIG4pOwogZXh0ZXJuIHZvaWQgcGdzdGF0X2NvdW50X2hlYXBfdXBkYXRlKFJlbGF0 aW9uIHJlbCwgYm9vbCBob3QpOwogZXh0ZXJuIHZvaWQgcGdzdGF0X2NvdW50X2hlYXBfZGVs ZXRlKFJlbGF0aW9uIHJlbCk7CkBAIC02MzAsNiArNzA2LDEwIEBAIGV4dGVybiBQZ1N0YXRf U3RhdFRhYkVudHJ5ICpwZ3N0YXRfZmV0Y2hfc3RhdF90YWJlbnRyeShPaWQgcmVsaWQpOwog ZXh0ZXJuIFBnU3RhdF9TdGF0VGFiRW50cnkgKnBnc3RhdF9mZXRjaF9zdGF0X3RhYmVudHJ5 X2V4dChib29sIHNoYXJlZCwKIAkJCQkJCQkJCQkJCQkJICAgT2lkIHJlbG9pZCk7CiBleHRl cm4gUGdTdGF0X1RhYmxlU3RhdHVzICpmaW5kX3RhYnN0YXRfZW50cnkoT2lkIHJlbF9pZCk7 CitleHRlcm4gUGdTdGF0X0luZGV4U3RhdHVzICpmaW5kX2luZHN0YXRfZW50cnkoT2lkIHJl bF9pZCk7CitleHRlcm4gUGdTdGF0X1N0YXRJbmRFbnRyeSAqcGdzdGF0X2ZldGNoX3N0YXRf aW5kZW50cnkoT2lkIHJlbGlkKTsKK2V4dGVybiBQZ1N0YXRfU3RhdEluZEVudHJ5ICpwZ3N0 YXRfZmV0Y2hfc3RhdF9pbmRlbnRyeV9leHQoYm9vbCBzaGFyZWQsCisJCQkJCQkJCQkJCQkJ CSAgIE9pZCByZWxpZCk7CiAKIAogLyoKZGlmZiAtLWdpdCBhL3NyYy9pbmNsdWRlL3V0aWxz L3Bnc3RhdF9pbnRlcm5hbC5oIGIvc3JjL2luY2x1ZGUvdXRpbHMvcGdzdGF0X2ludGVybmFs LmgKaW5kZXggNmJhZGIyZmRlNC4uMjZhNzgwYzc2YSAxMDA2NDQKLS0tIGEvc3JjL2luY2x1 ZGUvdXRpbHMvcGdzdGF0X2ludGVybmFsLmgKKysrIGIvc3JjL2luY2x1ZGUvdXRpbHMvcGdz dGF0X2ludGVybmFsLmgKQEAgLTM3MCwxMSArMzcwLDE3IEBAIHR5cGVkZWYgc3RydWN0IFBn U3RhdFNoYXJlZF9EYXRhYmFzZQogCVBnU3RhdF9TdGF0REJFbnRyeSBzdGF0czsKIH0gUGdT dGF0U2hhcmVkX0RhdGFiYXNlOwogCi10eXBlZGVmIHN0cnVjdCBQZ1N0YXRTaGFyZWRfUmVs YXRpb24KK3R5cGVkZWYgc3RydWN0IFBnU3RhdFNoYXJlZF9UYWJsZQogewogCVBnU3RhdFNo YXJlZF9Db21tb24gaGVhZGVyOwogCVBnU3RhdF9TdGF0VGFiRW50cnkgc3RhdHM7Ci19IFBn U3RhdFNoYXJlZF9SZWxhdGlvbjsKK30gUGdTdGF0U2hhcmVkX1RhYmxlOworCit0eXBlZGVm IHN0cnVjdCBQZ1N0YXRTaGFyZWRfSW5kZXgKK3sKKwlQZ1N0YXRTaGFyZWRfQ29tbW9uIGhl YWRlcjsKKwlQZ1N0YXRfU3RhdEluZEVudHJ5IHN0YXRzOworfSBQZ1N0YXRTaGFyZWRfSW5k ZXg7CiAKIHR5cGVkZWYgc3RydWN0IFBnU3RhdFNoYXJlZF9GdW5jdGlvbgogewpAQCAtNTcz LDE2ICs1NzksMjMgQEAgZXh0ZXJuIHZvaWQgcGdzdGF0X2lvX3NuYXBzaG90X2NiKHZvaWQp OwogCiAKIC8qCi0gKiBGdW5jdGlvbnMgaW4gcGdzdGF0X3JlbGF0aW9uLmMKKyAqIEZ1bmN0 aW9ucyBpbiBwZ3N0YXRfdGFibGUuYwogICovCiAKLWV4dGVybiB2b2lkIEF0RU9YYWN0X1Bn U3RhdF9SZWxhdGlvbnMoUGdTdGF0X1N1YlhhY3RTdGF0dXMgKnhhY3Rfc3RhdGUsIGJvb2wg aXNDb21taXQpOwotZXh0ZXJuIHZvaWQgQXRFT1N1YlhhY3RfUGdTdGF0X1JlbGF0aW9ucyhQ Z1N0YXRfU3ViWGFjdFN0YXR1cyAqeGFjdF9zdGF0ZSwgYm9vbCBpc0NvbW1pdCwgaW50IG5l c3REZXB0aCk7Ci1leHRlcm4gdm9pZCBBdFByZXBhcmVfUGdTdGF0X1JlbGF0aW9ucyhQZ1N0 YXRfU3ViWGFjdFN0YXR1cyAqeGFjdF9zdGF0ZSk7Ci1leHRlcm4gdm9pZCBQb3N0UHJlcGFy ZV9QZ1N0YXRfUmVsYXRpb25zKFBnU3RhdF9TdWJYYWN0U3RhdHVzICp4YWN0X3N0YXRlKTsK K2V4dGVybiB2b2lkIEF0RU9YYWN0X1BnU3RhdF9UYWJsZXMoUGdTdGF0X1N1YlhhY3RTdGF0 dXMgKnhhY3Rfc3RhdGUsIGJvb2wgaXNDb21taXQpOworZXh0ZXJuIHZvaWQgQXRFT1N1Ylhh Y3RfUGdTdGF0X1RhYmxlcyhQZ1N0YXRfU3ViWGFjdFN0YXR1cyAqeGFjdF9zdGF0ZSwgYm9v bCBpc0NvbW1pdCwgaW50IG5lc3REZXB0aCk7CitleHRlcm4gdm9pZCBBdFByZXBhcmVfUGdT dGF0X1RhYmxlcyhQZ1N0YXRfU3ViWGFjdFN0YXR1cyAqeGFjdF9zdGF0ZSk7CitleHRlcm4g dm9pZCBQb3N0UHJlcGFyZV9QZ1N0YXRfVGFibGVzKFBnU3RhdF9TdWJYYWN0U3RhdHVzICp4 YWN0X3N0YXRlKTsKKworZXh0ZXJuIGJvb2wgcGdzdGF0X3RhYmxlX2ZsdXNoX2NiKFBnU3Rh dF9FbnRyeVJlZiAqZW50cnlfcmVmLCBib29sIG5vd2FpdCk7CitleHRlcm4gdm9pZCBwZ3N0 YXRfdGFibGVfZGVsZXRlX3BlbmRpbmdfY2IoUGdTdGF0X0VudHJ5UmVmICplbnRyeV9yZWYp OworCisvKgorICogRnVuY3Rpb25zIGluIHBnc3RhdF9pbmRleC5jCisgKi8KIAotZXh0ZXJu IGJvb2wgcGdzdGF0X3JlbGF0aW9uX2ZsdXNoX2NiKFBnU3RhdF9FbnRyeVJlZiAqZW50cnlf cmVmLCBib29sIG5vd2FpdCk7Ci1leHRlcm4gdm9pZCBwZ3N0YXRfcmVsYXRpb25fZGVsZXRl X3BlbmRpbmdfY2IoUGdTdGF0X0VudHJ5UmVmICplbnRyeV9yZWYpOworZXh0ZXJuIGJvb2wg cGdzdGF0X2luZGV4X2ZsdXNoX2NiKFBnU3RhdF9FbnRyeVJlZiAqZW50cnlfcmVmLCBib29s IG5vd2FpdCk7CitleHRlcm4gdm9pZCBwZ3N0YXRfaW5kZXhfZGVsZXRlX3BlbmRpbmdfY2Io UGdTdGF0X0VudHJ5UmVmICplbnRyeV9yZWYpOwogCiAKIC8qCmRpZmYgLS1naXQgYS9zcmMv aW5jbHVkZS91dGlscy9yZWwuaCBiL3NyYy9pbmNsdWRlL3V0aWxzL3JlbC5oCmluZGV4IDY3 Zjk5NGNiM2UuLjc5NzAwMTFiODMgMTAwNjQ0Ci0tLSBhL3NyYy9pbmNsdWRlL3V0aWxzL3Jl bC5oCisrKyBiL3NyYy9pbmNsdWRlL3V0aWxzL3JlbC5oCkBAIC0yNDgsNyArMjQ4LDEwIEBA IHR5cGVkZWYgc3RydWN0IFJlbGF0aW9uRGF0YQogCiAJYm9vbAkJcGdzdGF0X2VuYWJsZWQ7 IC8qIHNob3VsZCByZWxhdGlvbiBzdGF0cyBiZSBjb3VudGVkICovCiAJLyogdXNlICJzdHJ1 Y3QiIGhlcmUgdG8gYXZvaWQgbmVlZGluZyB0byBpbmNsdWRlIHBnc3RhdC5oOiAqLwotCXN0 cnVjdCBQZ1N0YXRfVGFibGVTdGF0dXMgKnBnc3RhdF9pbmZvOyAvKiBzdGF0aXN0aWNzIGNv bGxlY3Rpb24gYXJlYSAqLworCS8qIHRhYmxlJ3Mgc3RhdGlzdGljcyBjb2xsZWN0aW9uIGFy ZWEgKi8KKwlzdHJ1Y3QgUGdTdGF0X1RhYmxlU3RhdHVzICpwZ3N0YXR0YWJfaW5mbzsKKwkv KiBJbmRleCdzIHN0YXRpc3RpY3MgY29sbGVjdGlvbiBhcmVhICovCisJc3RydWN0IFBnU3Rh dF9JbmRleFN0YXR1cyAqcGdzdGF0aW5kX2luZm87CiB9IFJlbGF0aW9uRGF0YTsKIAogCmRp ZmYgLS1naXQgYS9zcmMvdGVzdC9pc29sYXRpb24vZXhwZWN0ZWQvc3RhdHMub3V0IGIvc3Jj L3Rlc3QvaXNvbGF0aW9uL2V4cGVjdGVkL3N0YXRzLm91dAppbmRleCA2MWI1YTcxMGVjLi40 OTRhZGVlODhiIDEwMDY0NAotLS0gYS9zcmMvdGVzdC9pc29sYXRpb24vZXhwZWN0ZWQvc3Rh dHMub3V0CisrKyBiL3NyYy90ZXN0L2lzb2xhdGlvbi9leHBlY3RlZC9zdGF0cy5vdXQKQEAg LTIxNjYsMTQgKzIxNjYsMTQgQEAgcGdfc3RhdF9mb3JjZV9uZXh0X2ZsdXNoCiAKIHN0ZXAg czFfdGFibGVfc3RhdHM6IAogICAgIFNFTEVDVAotICAgICAgICBwZ19zdGF0X2dldF9udW1z Y2Fucyh0c28ub2lkKSBBUyBzZXFfc2NhbiwKLSAgICAgICAgcGdfc3RhdF9nZXRfdHVwbGVz X3JldHVybmVkKHRzby5vaWQpIEFTIHNlcV90dXBfcmVhZCwKLSAgICAgICAgcGdfc3RhdF9n ZXRfdHVwbGVzX2luc2VydGVkKHRzby5vaWQpIEFTIG5fdHVwX2lucywKLSAgICAgICAgcGdf c3RhdF9nZXRfdHVwbGVzX3VwZGF0ZWQodHNvLm9pZCkgQVMgbl90dXBfdXBkLAotICAgICAg ICBwZ19zdGF0X2dldF90dXBsZXNfZGVsZXRlZCh0c28ub2lkKSBBUyBuX3R1cF9kZWwsCi0g ICAgICAgIHBnX3N0YXRfZ2V0X2xpdmVfdHVwbGVzKHRzby5vaWQpIEFTIG5fbGl2ZV90dXAs Ci0gICAgICAgIHBnX3N0YXRfZ2V0X2RlYWRfdHVwbGVzKHRzby5vaWQpIEFTIG5fZGVhZF90 dXAsCi0gICAgICAgIHBnX3N0YXRfZ2V0X3ZhY3V1bV9jb3VudCh0c28ub2lkKSBBUyB2YWN1 dW1fY291bnQKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX251bXNjYW5zKHRzby5vaWQpIEFT IHNlcV9zY2FuLAorICAgICAgICBwZ19zdGF0X2dldF90YWJfdHVwbGVzX3JldHVybmVkKHRz by5vaWQpIEFTIHNlcV90dXBfcmVhZCwKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX3R1cGxl c19pbnNlcnRlZCh0c28ub2lkKSBBUyBuX3R1cF9pbnMsCisgICAgICAgIHBnX3N0YXRfZ2V0 X3RhYl90dXBsZXNfdXBkYXRlZCh0c28ub2lkKSBBUyBuX3R1cF91cGQsCisgICAgICAgIHBn X3N0YXRfZ2V0X3RhYl90dXBsZXNfZGVsZXRlZCh0c28ub2lkKSBBUyBuX3R1cF9kZWwsCisg ICAgICAgIHBnX3N0YXRfZ2V0X3RhYl9saXZlX3R1cGxlcyh0c28ub2lkKSBBUyBuX2xpdmVf dHVwLAorICAgICAgICBwZ19zdGF0X2dldF90YWJfZGVhZF90dXBsZXModHNvLm9pZCkgQVMg bl9kZWFkX3R1cCwKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX3ZhY3V1bV9jb3VudCh0c28u b2lkKSBBUyB2YWN1dW1fY291bnQKICAgICBGUk9NIHRlc3Rfc3RhdF9vaWQgQVMgdHNvCiAg ICAgV0hFUkUgdHNvLm5hbWUgPSAndGVzdF9zdGF0X3RhYicKIApAQCAtMjIxMCwxNCArMjIx MCwxNCBAQCBzdGVwIHMyX3RhYmxlX3VwZGF0ZV9rMTogVVBEQVRFIHRlc3Rfc3RhdF90YWIg U0VUIHZhbHVlID0gdmFsdWUgKyAxIFdIRVJFIGtleSA9CiBzdGVwIHMxX3RhYmxlX2Ryb3A6 IERST1AgVEFCTEUgdGVzdF9zdGF0X3RhYjsKIHN0ZXAgczFfdGFibGVfc3RhdHM6IAogICAg IFNFTEVDVAotICAgICAgICBwZ19zdGF0X2dldF9udW1zY2Fucyh0c28ub2lkKSBBUyBzZXFf c2NhbiwKLSAgICAgICAgcGdfc3RhdF9nZXRfdHVwbGVzX3JldHVybmVkKHRzby5vaWQpIEFT IHNlcV90dXBfcmVhZCwKLSAgICAgICAgcGdfc3RhdF9nZXRfdHVwbGVzX2luc2VydGVkKHRz by5vaWQpIEFTIG5fdHVwX2lucywKLSAgICAgICAgcGdfc3RhdF9nZXRfdHVwbGVzX3VwZGF0 ZWQodHNvLm9pZCkgQVMgbl90dXBfdXBkLAotICAgICAgICBwZ19zdGF0X2dldF90dXBsZXNf ZGVsZXRlZCh0c28ub2lkKSBBUyBuX3R1cF9kZWwsCi0gICAgICAgIHBnX3N0YXRfZ2V0X2xp dmVfdHVwbGVzKHRzby5vaWQpIEFTIG5fbGl2ZV90dXAsCi0gICAgICAgIHBnX3N0YXRfZ2V0 X2RlYWRfdHVwbGVzKHRzby5vaWQpIEFTIG5fZGVhZF90dXAsCi0gICAgICAgIHBnX3N0YXRf Z2V0X3ZhY3V1bV9jb3VudCh0c28ub2lkKSBBUyB2YWN1dW1fY291bnQKKyAgICAgICAgcGdf c3RhdF9nZXRfdGFiX251bXNjYW5zKHRzby5vaWQpIEFTIHNlcV9zY2FuLAorICAgICAgICBw Z19zdGF0X2dldF90YWJfdHVwbGVzX3JldHVybmVkKHRzby5vaWQpIEFTIHNlcV90dXBfcmVh ZCwKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX3R1cGxlc19pbnNlcnRlZCh0c28ub2lkKSBB UyBuX3R1cF9pbnMsCisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl90dXBsZXNfdXBkYXRlZCh0 c28ub2lkKSBBUyBuX3R1cF91cGQsCisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl90dXBsZXNf ZGVsZXRlZCh0c28ub2lkKSBBUyBuX3R1cF9kZWwsCisgICAgICAgIHBnX3N0YXRfZ2V0X3Rh Yl9saXZlX3R1cGxlcyh0c28ub2lkKSBBUyBuX2xpdmVfdHVwLAorICAgICAgICBwZ19zdGF0 X2dldF90YWJfZGVhZF90dXBsZXModHNvLm9pZCkgQVMgbl9kZWFkX3R1cCwKKyAgICAgICAg cGdfc3RhdF9nZXRfdGFiX3ZhY3V1bV9jb3VudCh0c28ub2lkKSBBUyB2YWN1dW1fY291bnQK ICAgICBGUk9NIHRlc3Rfc3RhdF9vaWQgQVMgdHNvCiAgICAgV0hFUkUgdHNvLm5hbWUgPSAn dGVzdF9zdGF0X3RhYicKIApAQCAtMjIzNiwxNCArMjIzNiwxNCBAQCBwZ19zdGF0X2ZvcmNl X25leHRfZmx1c2gKIHN0ZXAgczFfdHJhY2tfY291bnRzX29mZjogU0VUIHRyYWNrX2NvdW50 cyA9IG9mZjsKIHN0ZXAgczFfdGFibGVfc3RhdHM6IAogICAgIFNFTEVDVAotICAgICAgICBw Z19zdGF0X2dldF9udW1zY2Fucyh0c28ub2lkKSBBUyBzZXFfc2NhbiwKLSAgICAgICAgcGdf c3RhdF9nZXRfdHVwbGVzX3JldHVybmVkKHRzby5vaWQpIEFTIHNlcV90dXBfcmVhZCwKLSAg ICAgICAgcGdfc3RhdF9nZXRfdHVwbGVzX2luc2VydGVkKHRzby5vaWQpIEFTIG5fdHVwX2lu cywKLSAgICAgICAgcGdfc3RhdF9nZXRfdHVwbGVzX3VwZGF0ZWQodHNvLm9pZCkgQVMgbl90 dXBfdXBkLAotICAgICAgICBwZ19zdGF0X2dldF90dXBsZXNfZGVsZXRlZCh0c28ub2lkKSBB UyBuX3R1cF9kZWwsCi0gICAgICAgIHBnX3N0YXRfZ2V0X2xpdmVfdHVwbGVzKHRzby5vaWQp IEFTIG5fbGl2ZV90dXAsCi0gICAgICAgIHBnX3N0YXRfZ2V0X2RlYWRfdHVwbGVzKHRzby5v aWQpIEFTIG5fZGVhZF90dXAsCi0gICAgICAgIHBnX3N0YXRfZ2V0X3ZhY3V1bV9jb3VudCh0 c28ub2lkKSBBUyB2YWN1dW1fY291bnQKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX251bXNj YW5zKHRzby5vaWQpIEFTIHNlcV9zY2FuLAorICAgICAgICBwZ19zdGF0X2dldF90YWJfdHVw bGVzX3JldHVybmVkKHRzby5vaWQpIEFTIHNlcV90dXBfcmVhZCwKKyAgICAgICAgcGdfc3Rh dF9nZXRfdGFiX3R1cGxlc19pbnNlcnRlZCh0c28ub2lkKSBBUyBuX3R1cF9pbnMsCisgICAg ICAgIHBnX3N0YXRfZ2V0X3RhYl90dXBsZXNfdXBkYXRlZCh0c28ub2lkKSBBUyBuX3R1cF91 cGQsCisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl90dXBsZXNfZGVsZXRlZCh0c28ub2lkKSBB UyBuX3R1cF9kZWwsCisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl9saXZlX3R1cGxlcyh0c28u b2lkKSBBUyBuX2xpdmVfdHVwLAorICAgICAgICBwZ19zdGF0X2dldF90YWJfZGVhZF90dXBs ZXModHNvLm9pZCkgQVMgbl9kZWFkX3R1cCwKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX3Zh Y3V1bV9jb3VudCh0c28ub2lkKSBBUyB2YWN1dW1fY291bnQKICAgICBGUk9NIHRlc3Rfc3Rh dF9vaWQgQVMgdHNvCiAgICAgV0hFUkUgdHNvLm5hbWUgPSAndGVzdF9zdGF0X3RhYicKIApA QCAtMjI3NSwxNCArMjI3NSwxNCBAQCBwZ19zdGF0X2ZvcmNlX25leHRfZmx1c2gKIAogc3Rl cCBzMV90YWJsZV9zdGF0czogCiAgICAgU0VMRUNUCi0gICAgICAgIHBnX3N0YXRfZ2V0X251 bXNjYW5zKHRzby5vaWQpIEFTIHNlcV9zY2FuLAotICAgICAgICBwZ19zdGF0X2dldF90dXBs ZXNfcmV0dXJuZWQodHNvLm9pZCkgQVMgc2VxX3R1cF9yZWFkLAotICAgICAgICBwZ19zdGF0 X2dldF90dXBsZXNfaW5zZXJ0ZWQodHNvLm9pZCkgQVMgbl90dXBfaW5zLAotICAgICAgICBw Z19zdGF0X2dldF90dXBsZXNfdXBkYXRlZCh0c28ub2lkKSBBUyBuX3R1cF91cGQsCi0gICAg ICAgIHBnX3N0YXRfZ2V0X3R1cGxlc19kZWxldGVkKHRzby5vaWQpIEFTIG5fdHVwX2RlbCwK LSAgICAgICAgcGdfc3RhdF9nZXRfbGl2ZV90dXBsZXModHNvLm9pZCkgQVMgbl9saXZlX3R1 cCwKLSAgICAgICAgcGdfc3RhdF9nZXRfZGVhZF90dXBsZXModHNvLm9pZCkgQVMgbl9kZWFk X3R1cCwKLSAgICAgICAgcGdfc3RhdF9nZXRfdmFjdXVtX2NvdW50KHRzby5vaWQpIEFTIHZh Y3V1bV9jb3VudAorICAgICAgICBwZ19zdGF0X2dldF90YWJfbnVtc2NhbnModHNvLm9pZCkg QVMgc2VxX3NjYW4sCisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl90dXBsZXNfcmV0dXJuZWQo dHNvLm9pZCkgQVMgc2VxX3R1cF9yZWFkLAorICAgICAgICBwZ19zdGF0X2dldF90YWJfdHVw bGVzX2luc2VydGVkKHRzby5vaWQpIEFTIG5fdHVwX2lucywKKyAgICAgICAgcGdfc3RhdF9n ZXRfdGFiX3R1cGxlc191cGRhdGVkKHRzby5vaWQpIEFTIG5fdHVwX3VwZCwKKyAgICAgICAg cGdfc3RhdF9nZXRfdGFiX3R1cGxlc19kZWxldGVkKHRzby5vaWQpIEFTIG5fdHVwX2RlbCwK KyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX2xpdmVfdHVwbGVzKHRzby5vaWQpIEFTIG5fbGl2 ZV90dXAsCisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl9kZWFkX3R1cGxlcyh0c28ub2lkKSBB UyBuX2RlYWRfdHVwLAorICAgICAgICBwZ19zdGF0X2dldF90YWJfdmFjdXVtX2NvdW50KHRz by5vaWQpIEFTIHZhY3V1bV9jb3VudAogICAgIEZST00gdGVzdF9zdGF0X29pZCBBUyB0c28K ICAgICBXSEVSRSB0c28ubmFtZSA9ICd0ZXN0X3N0YXRfdGFiJwogCkBAIC0yMzE0LDE0ICsy MzE0LDE0IEBAIHBnX3N0YXRfZm9yY2VfbmV4dF9mbHVzaAogc3RlcCBzMV90cmFja19jb3Vu dHNfb2ZmOiBTRVQgdHJhY2tfY291bnRzID0gb2ZmOwogc3RlcCBzMV90YWJsZV9zdGF0czog CiAgICAgU0VMRUNUCi0gICAgICAgIHBnX3N0YXRfZ2V0X251bXNjYW5zKHRzby5vaWQpIEFT IHNlcV9zY2FuLAotICAgICAgICBwZ19zdGF0X2dldF90dXBsZXNfcmV0dXJuZWQodHNvLm9p ZCkgQVMgc2VxX3R1cF9yZWFkLAotICAgICAgICBwZ19zdGF0X2dldF90dXBsZXNfaW5zZXJ0 ZWQodHNvLm9pZCkgQVMgbl90dXBfaW5zLAotICAgICAgICBwZ19zdGF0X2dldF90dXBsZXNf dXBkYXRlZCh0c28ub2lkKSBBUyBuX3R1cF91cGQsCi0gICAgICAgIHBnX3N0YXRfZ2V0X3R1 cGxlc19kZWxldGVkKHRzby5vaWQpIEFTIG5fdHVwX2RlbCwKLSAgICAgICAgcGdfc3RhdF9n ZXRfbGl2ZV90dXBsZXModHNvLm9pZCkgQVMgbl9saXZlX3R1cCwKLSAgICAgICAgcGdfc3Rh dF9nZXRfZGVhZF90dXBsZXModHNvLm9pZCkgQVMgbl9kZWFkX3R1cCwKLSAgICAgICAgcGdf c3RhdF9nZXRfdmFjdXVtX2NvdW50KHRzby5vaWQpIEFTIHZhY3V1bV9jb3VudAorICAgICAg ICBwZ19zdGF0X2dldF90YWJfbnVtc2NhbnModHNvLm9pZCkgQVMgc2VxX3NjYW4sCisgICAg ICAgIHBnX3N0YXRfZ2V0X3RhYl90dXBsZXNfcmV0dXJuZWQodHNvLm9pZCkgQVMgc2VxX3R1 cF9yZWFkLAorICAgICAgICBwZ19zdGF0X2dldF90YWJfdHVwbGVzX2luc2VydGVkKHRzby5v aWQpIEFTIG5fdHVwX2lucywKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX3R1cGxlc191cGRh dGVkKHRzby5vaWQpIEFTIG5fdHVwX3VwZCwKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX3R1 cGxlc19kZWxldGVkKHRzby5vaWQpIEFTIG5fdHVwX2RlbCwKKyAgICAgICAgcGdfc3RhdF9n ZXRfdGFiX2xpdmVfdHVwbGVzKHRzby5vaWQpIEFTIG5fbGl2ZV90dXAsCisgICAgICAgIHBn X3N0YXRfZ2V0X3RhYl9kZWFkX3R1cGxlcyh0c28ub2lkKSBBUyBuX2RlYWRfdHVwLAorICAg ICAgICBwZ19zdGF0X2dldF90YWJfdmFjdXVtX2NvdW50KHRzby5vaWQpIEFTIHZhY3V1bV9j b3VudAogICAgIEZST00gdGVzdF9zdGF0X29pZCBBUyB0c28KICAgICBXSEVSRSB0c28ubmFt ZSA9ICd0ZXN0X3N0YXRfdGFiJwogCkBAIC0yMzY5LDE0ICsyMzY5LDE0IEBAIHBnX3N0YXRf Zm9yY2VfbmV4dF9mbHVzaAogCiBzdGVwIHMxX3RhYmxlX3N0YXRzOiAKICAgICBTRUxFQ1QK LSAgICAgICAgcGdfc3RhdF9nZXRfbnVtc2NhbnModHNvLm9pZCkgQVMgc2VxX3NjYW4sCi0g ICAgICAgIHBnX3N0YXRfZ2V0X3R1cGxlc19yZXR1cm5lZCh0c28ub2lkKSBBUyBzZXFfdHVw X3JlYWQsCi0gICAgICAgIHBnX3N0YXRfZ2V0X3R1cGxlc19pbnNlcnRlZCh0c28ub2lkKSBB UyBuX3R1cF9pbnMsCi0gICAgICAgIHBnX3N0YXRfZ2V0X3R1cGxlc191cGRhdGVkKHRzby5v aWQpIEFTIG5fdHVwX3VwZCwKLSAgICAgICAgcGdfc3RhdF9nZXRfdHVwbGVzX2RlbGV0ZWQo dHNvLm9pZCkgQVMgbl90dXBfZGVsLAotICAgICAgICBwZ19zdGF0X2dldF9saXZlX3R1cGxl cyh0c28ub2lkKSBBUyBuX2xpdmVfdHVwLAotICAgICAgICBwZ19zdGF0X2dldF9kZWFkX3R1 cGxlcyh0c28ub2lkKSBBUyBuX2RlYWRfdHVwLAotICAgICAgICBwZ19zdGF0X2dldF92YWN1 dW1fY291bnQodHNvLm9pZCkgQVMgdmFjdXVtX2NvdW50CisgICAgICAgIHBnX3N0YXRfZ2V0 X3RhYl9udW1zY2Fucyh0c28ub2lkKSBBUyBzZXFfc2NhbiwKKyAgICAgICAgcGdfc3RhdF9n ZXRfdGFiX3R1cGxlc19yZXR1cm5lZCh0c28ub2lkKSBBUyBzZXFfdHVwX3JlYWQsCisgICAg ICAgIHBnX3N0YXRfZ2V0X3RhYl90dXBsZXNfaW5zZXJ0ZWQodHNvLm9pZCkgQVMgbl90dXBf aW5zLAorICAgICAgICBwZ19zdGF0X2dldF90YWJfdHVwbGVzX3VwZGF0ZWQodHNvLm9pZCkg QVMgbl90dXBfdXBkLAorICAgICAgICBwZ19zdGF0X2dldF90YWJfdHVwbGVzX2RlbGV0ZWQo dHNvLm9pZCkgQVMgbl90dXBfZGVsLAorICAgICAgICBwZ19zdGF0X2dldF90YWJfbGl2ZV90 dXBsZXModHNvLm9pZCkgQVMgbl9saXZlX3R1cCwKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFi X2RlYWRfdHVwbGVzKHRzby5vaWQpIEFTIG5fZGVhZF90dXAsCisgICAgICAgIHBnX3N0YXRf Z2V0X3RhYl92YWN1dW1fY291bnQodHNvLm9pZCkgQVMgdmFjdXVtX2NvdW50CiAgICAgRlJP TSB0ZXN0X3N0YXRfb2lkIEFTIHRzbwogICAgIFdIRVJFIHRzby5uYW1lID0gJ3Rlc3Rfc3Rh dF90YWInCiAKQEAgLTI0MDEsMTQgKzI0MDEsMTQgQEAgcGdfc3RhdF9mb3JjZV9uZXh0X2Zs dXNoCiAKIHN0ZXAgczFfdGFibGVfc3RhdHM6IAogICAgIFNFTEVDVAotICAgICAgICBwZ19z dGF0X2dldF9udW1zY2Fucyh0c28ub2lkKSBBUyBzZXFfc2NhbiwKLSAgICAgICAgcGdfc3Rh dF9nZXRfdHVwbGVzX3JldHVybmVkKHRzby5vaWQpIEFTIHNlcV90dXBfcmVhZCwKLSAgICAg ICAgcGdfc3RhdF9nZXRfdHVwbGVzX2luc2VydGVkKHRzby5vaWQpIEFTIG5fdHVwX2lucywK LSAgICAgICAgcGdfc3RhdF9nZXRfdHVwbGVzX3VwZGF0ZWQodHNvLm9pZCkgQVMgbl90dXBf dXBkLAotICAgICAgICBwZ19zdGF0X2dldF90dXBsZXNfZGVsZXRlZCh0c28ub2lkKSBBUyBu X3R1cF9kZWwsCi0gICAgICAgIHBnX3N0YXRfZ2V0X2xpdmVfdHVwbGVzKHRzby5vaWQpIEFT IG5fbGl2ZV90dXAsCi0gICAgICAgIHBnX3N0YXRfZ2V0X2RlYWRfdHVwbGVzKHRzby5vaWQp IEFTIG5fZGVhZF90dXAsCi0gICAgICAgIHBnX3N0YXRfZ2V0X3ZhY3V1bV9jb3VudCh0c28u b2lkKSBBUyB2YWN1dW1fY291bnQKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX251bXNjYW5z KHRzby5vaWQpIEFTIHNlcV9zY2FuLAorICAgICAgICBwZ19zdGF0X2dldF90YWJfdHVwbGVz X3JldHVybmVkKHRzby5vaWQpIEFTIHNlcV90dXBfcmVhZCwKKyAgICAgICAgcGdfc3RhdF9n ZXRfdGFiX3R1cGxlc19pbnNlcnRlZCh0c28ub2lkKSBBUyBuX3R1cF9pbnMsCisgICAgICAg IHBnX3N0YXRfZ2V0X3RhYl90dXBsZXNfdXBkYXRlZCh0c28ub2lkKSBBUyBuX3R1cF91cGQs CisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl90dXBsZXNfZGVsZXRlZCh0c28ub2lkKSBBUyBu X3R1cF9kZWwsCisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl9saXZlX3R1cGxlcyh0c28ub2lk KSBBUyBuX2xpdmVfdHVwLAorICAgICAgICBwZ19zdGF0X2dldF90YWJfZGVhZF90dXBsZXMo dHNvLm9pZCkgQVMgbl9kZWFkX3R1cCwKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX3ZhY3V1 bV9jb3VudCh0c28ub2lkKSBBUyB2YWN1dW1fY291bnQKICAgICBGUk9NIHRlc3Rfc3RhdF9v aWQgQVMgdHNvCiAgICAgV0hFUkUgdHNvLm5hbWUgPSAndGVzdF9zdGF0X3RhYicKIApAQCAt MjQ2MywxNCArMjQ2MywxNCBAQCBwZ19zdGF0X2ZvcmNlX25leHRfZmx1c2gKIAogc3RlcCBz MV90YWJsZV9zdGF0czogCiAgICAgU0VMRUNUCi0gICAgICAgIHBnX3N0YXRfZ2V0X251bXNj YW5zKHRzby5vaWQpIEFTIHNlcV9zY2FuLAotICAgICAgICBwZ19zdGF0X2dldF90dXBsZXNf cmV0dXJuZWQodHNvLm9pZCkgQVMgc2VxX3R1cF9yZWFkLAotICAgICAgICBwZ19zdGF0X2dl dF90dXBsZXNfaW5zZXJ0ZWQodHNvLm9pZCkgQVMgbl90dXBfaW5zLAotICAgICAgICBwZ19z dGF0X2dldF90dXBsZXNfdXBkYXRlZCh0c28ub2lkKSBBUyBuX3R1cF91cGQsCi0gICAgICAg IHBnX3N0YXRfZ2V0X3R1cGxlc19kZWxldGVkKHRzby5vaWQpIEFTIG5fdHVwX2RlbCwKLSAg ICAgICAgcGdfc3RhdF9nZXRfbGl2ZV90dXBsZXModHNvLm9pZCkgQVMgbl9saXZlX3R1cCwK LSAgICAgICAgcGdfc3RhdF9nZXRfZGVhZF90dXBsZXModHNvLm9pZCkgQVMgbl9kZWFkX3R1 cCwKLSAgICAgICAgcGdfc3RhdF9nZXRfdmFjdXVtX2NvdW50KHRzby5vaWQpIEFTIHZhY3V1 bV9jb3VudAorICAgICAgICBwZ19zdGF0X2dldF90YWJfbnVtc2NhbnModHNvLm9pZCkgQVMg c2VxX3NjYW4sCisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl90dXBsZXNfcmV0dXJuZWQodHNv Lm9pZCkgQVMgc2VxX3R1cF9yZWFkLAorICAgICAgICBwZ19zdGF0X2dldF90YWJfdHVwbGVz X2luc2VydGVkKHRzby5vaWQpIEFTIG5fdHVwX2lucywKKyAgICAgICAgcGdfc3RhdF9nZXRf dGFiX3R1cGxlc191cGRhdGVkKHRzby5vaWQpIEFTIG5fdHVwX3VwZCwKKyAgICAgICAgcGdf c3RhdF9nZXRfdGFiX3R1cGxlc19kZWxldGVkKHRzby5vaWQpIEFTIG5fdHVwX2RlbCwKKyAg ICAgICAgcGdfc3RhdF9nZXRfdGFiX2xpdmVfdHVwbGVzKHRzby5vaWQpIEFTIG5fbGl2ZV90 dXAsCisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl9kZWFkX3R1cGxlcyh0c28ub2lkKSBBUyBu X2RlYWRfdHVwLAorICAgICAgICBwZ19zdGF0X2dldF90YWJfdmFjdXVtX2NvdW50KHRzby5v aWQpIEFTIHZhY3V1bV9jb3VudAogICAgIEZST00gdGVzdF9zdGF0X29pZCBBUyB0c28KICAg ICBXSEVSRSB0c28ubmFtZSA9ICd0ZXN0X3N0YXRfdGFiJwogCkBAIC0yNDk1LDE0ICsyNDk1 LDE0IEBAIHBnX3N0YXRfZm9yY2VfbmV4dF9mbHVzaAogCiBzdGVwIHMxX3RhYmxlX3N0YXRz OiAKICAgICBTRUxFQ1QKLSAgICAgICAgcGdfc3RhdF9nZXRfbnVtc2NhbnModHNvLm9pZCkg QVMgc2VxX3NjYW4sCi0gICAgICAgIHBnX3N0YXRfZ2V0X3R1cGxlc19yZXR1cm5lZCh0c28u b2lkKSBBUyBzZXFfdHVwX3JlYWQsCi0gICAgICAgIHBnX3N0YXRfZ2V0X3R1cGxlc19pbnNl cnRlZCh0c28ub2lkKSBBUyBuX3R1cF9pbnMsCi0gICAgICAgIHBnX3N0YXRfZ2V0X3R1cGxl c191cGRhdGVkKHRzby5vaWQpIEFTIG5fdHVwX3VwZCwKLSAgICAgICAgcGdfc3RhdF9nZXRf dHVwbGVzX2RlbGV0ZWQodHNvLm9pZCkgQVMgbl90dXBfZGVsLAotICAgICAgICBwZ19zdGF0 X2dldF9saXZlX3R1cGxlcyh0c28ub2lkKSBBUyBuX2xpdmVfdHVwLAotICAgICAgICBwZ19z dGF0X2dldF9kZWFkX3R1cGxlcyh0c28ub2lkKSBBUyBuX2RlYWRfdHVwLAotICAgICAgICBw Z19zdGF0X2dldF92YWN1dW1fY291bnQodHNvLm9pZCkgQVMgdmFjdXVtX2NvdW50CisgICAg ICAgIHBnX3N0YXRfZ2V0X3RhYl9udW1zY2Fucyh0c28ub2lkKSBBUyBzZXFfc2NhbiwKKyAg ICAgICAgcGdfc3RhdF9nZXRfdGFiX3R1cGxlc19yZXR1cm5lZCh0c28ub2lkKSBBUyBzZXFf dHVwX3JlYWQsCisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl90dXBsZXNfaW5zZXJ0ZWQodHNv Lm9pZCkgQVMgbl90dXBfaW5zLAorICAgICAgICBwZ19zdGF0X2dldF90YWJfdHVwbGVzX3Vw ZGF0ZWQodHNvLm9pZCkgQVMgbl90dXBfdXBkLAorICAgICAgICBwZ19zdGF0X2dldF90YWJf dHVwbGVzX2RlbGV0ZWQodHNvLm9pZCkgQVMgbl90dXBfZGVsLAorICAgICAgICBwZ19zdGF0 X2dldF90YWJfbGl2ZV90dXBsZXModHNvLm9pZCkgQVMgbl9saXZlX3R1cCwKKyAgICAgICAg cGdfc3RhdF9nZXRfdGFiX2RlYWRfdHVwbGVzKHRzby5vaWQpIEFTIG5fZGVhZF90dXAsCisg ICAgICAgIHBnX3N0YXRfZ2V0X3RhYl92YWN1dW1fY291bnQodHNvLm9pZCkgQVMgdmFjdXVt X2NvdW50CiAgICAgRlJPTSB0ZXN0X3N0YXRfb2lkIEFTIHRzbwogICAgIFdIRVJFIHRzby5u YW1lID0gJ3Rlc3Rfc3RhdF90YWInCiAKQEAgLTI1NTgsMTQgKzI1NTgsMTQgQEAgcGdfc3Rh dF9mb3JjZV9uZXh0X2ZsdXNoCiAKIHN0ZXAgczFfdGFibGVfc3RhdHM6IAogICAgIFNFTEVD VAotICAgICAgICBwZ19zdGF0X2dldF9udW1zY2Fucyh0c28ub2lkKSBBUyBzZXFfc2NhbiwK LSAgICAgICAgcGdfc3RhdF9nZXRfdHVwbGVzX3JldHVybmVkKHRzby5vaWQpIEFTIHNlcV90 dXBfcmVhZCwKLSAgICAgICAgcGdfc3RhdF9nZXRfdHVwbGVzX2luc2VydGVkKHRzby5vaWQp IEFTIG5fdHVwX2lucywKLSAgICAgICAgcGdfc3RhdF9nZXRfdHVwbGVzX3VwZGF0ZWQodHNv Lm9pZCkgQVMgbl90dXBfdXBkLAotICAgICAgICBwZ19zdGF0X2dldF90dXBsZXNfZGVsZXRl ZCh0c28ub2lkKSBBUyBuX3R1cF9kZWwsCi0gICAgICAgIHBnX3N0YXRfZ2V0X2xpdmVfdHVw bGVzKHRzby5vaWQpIEFTIG5fbGl2ZV90dXAsCi0gICAgICAgIHBnX3N0YXRfZ2V0X2RlYWRf dHVwbGVzKHRzby5vaWQpIEFTIG5fZGVhZF90dXAsCi0gICAgICAgIHBnX3N0YXRfZ2V0X3Zh Y3V1bV9jb3VudCh0c28ub2lkKSBBUyB2YWN1dW1fY291bnQKKyAgICAgICAgcGdfc3RhdF9n ZXRfdGFiX251bXNjYW5zKHRzby5vaWQpIEFTIHNlcV9zY2FuLAorICAgICAgICBwZ19zdGF0 X2dldF90YWJfdHVwbGVzX3JldHVybmVkKHRzby5vaWQpIEFTIHNlcV90dXBfcmVhZCwKKyAg ICAgICAgcGdfc3RhdF9nZXRfdGFiX3R1cGxlc19pbnNlcnRlZCh0c28ub2lkKSBBUyBuX3R1 cF9pbnMsCisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl90dXBsZXNfdXBkYXRlZCh0c28ub2lk KSBBUyBuX3R1cF91cGQsCisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl90dXBsZXNfZGVsZXRl ZCh0c28ub2lkKSBBUyBuX3R1cF9kZWwsCisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl9saXZl X3R1cGxlcyh0c28ub2lkKSBBUyBuX2xpdmVfdHVwLAorICAgICAgICBwZ19zdGF0X2dldF90 YWJfZGVhZF90dXBsZXModHNvLm9pZCkgQVMgbl9kZWFkX3R1cCwKKyAgICAgICAgcGdfc3Rh dF9nZXRfdGFiX3ZhY3V1bV9jb3VudCh0c28ub2lkKSBBUyB2YWN1dW1fY291bnQKICAgICBG Uk9NIHRlc3Rfc3RhdF9vaWQgQVMgdHNvCiAgICAgV0hFUkUgdHNvLm5hbWUgPSAndGVzdF9z dGF0X3RhYicKIApAQCAtMjYyNywxNCArMjYyNywxNCBAQCBwZ19zdGF0X2ZvcmNlX25leHRf Zmx1c2gKIAogc3RlcCBzMV90YWJsZV9zdGF0czogCiAgICAgU0VMRUNUCi0gICAgICAgIHBn X3N0YXRfZ2V0X251bXNjYW5zKHRzby5vaWQpIEFTIHNlcV9zY2FuLAotICAgICAgICBwZ19z dGF0X2dldF90dXBsZXNfcmV0dXJuZWQodHNvLm9pZCkgQVMgc2VxX3R1cF9yZWFkLAotICAg ICAgICBwZ19zdGF0X2dldF90dXBsZXNfaW5zZXJ0ZWQodHNvLm9pZCkgQVMgbl90dXBfaW5z LAotICAgICAgICBwZ19zdGF0X2dldF90dXBsZXNfdXBkYXRlZCh0c28ub2lkKSBBUyBuX3R1 cF91cGQsCi0gICAgICAgIHBnX3N0YXRfZ2V0X3R1cGxlc19kZWxldGVkKHRzby5vaWQpIEFT IG5fdHVwX2RlbCwKLSAgICAgICAgcGdfc3RhdF9nZXRfbGl2ZV90dXBsZXModHNvLm9pZCkg QVMgbl9saXZlX3R1cCwKLSAgICAgICAgcGdfc3RhdF9nZXRfZGVhZF90dXBsZXModHNvLm9p ZCkgQVMgbl9kZWFkX3R1cCwKLSAgICAgICAgcGdfc3RhdF9nZXRfdmFjdXVtX2NvdW50KHRz by5vaWQpIEFTIHZhY3V1bV9jb3VudAorICAgICAgICBwZ19zdGF0X2dldF90YWJfbnVtc2Nh bnModHNvLm9pZCkgQVMgc2VxX3NjYW4sCisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl90dXBs ZXNfcmV0dXJuZWQodHNvLm9pZCkgQVMgc2VxX3R1cF9yZWFkLAorICAgICAgICBwZ19zdGF0 X2dldF90YWJfdHVwbGVzX2luc2VydGVkKHRzby5vaWQpIEFTIG5fdHVwX2lucywKKyAgICAg ICAgcGdfc3RhdF9nZXRfdGFiX3R1cGxlc191cGRhdGVkKHRzby5vaWQpIEFTIG5fdHVwX3Vw ZCwKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX3R1cGxlc19kZWxldGVkKHRzby5vaWQpIEFT IG5fdHVwX2RlbCwKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX2xpdmVfdHVwbGVzKHRzby5v aWQpIEFTIG5fbGl2ZV90dXAsCisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl9kZWFkX3R1cGxl cyh0c28ub2lkKSBBUyBuX2RlYWRfdHVwLAorICAgICAgICBwZ19zdGF0X2dldF90YWJfdmFj dXVtX2NvdW50KHRzby5vaWQpIEFTIHZhY3V1bV9jb3VudAogICAgIEZST00gdGVzdF9zdGF0 X29pZCBBUyB0c28KICAgICBXSEVSRSB0c28ubmFtZSA9ICd0ZXN0X3N0YXRfdGFiJwogCkBA IC0yNjg4LDE0ICsyNjg4LDE0IEBAIHBnX3N0YXRfZm9yY2VfbmV4dF9mbHVzaAogCiBzdGVw IHMxX3RhYmxlX3N0YXRzOiAKICAgICBTRUxFQ1QKLSAgICAgICAgcGdfc3RhdF9nZXRfbnVt c2NhbnModHNvLm9pZCkgQVMgc2VxX3NjYW4sCi0gICAgICAgIHBnX3N0YXRfZ2V0X3R1cGxl c19yZXR1cm5lZCh0c28ub2lkKSBBUyBzZXFfdHVwX3JlYWQsCi0gICAgICAgIHBnX3N0YXRf Z2V0X3R1cGxlc19pbnNlcnRlZCh0c28ub2lkKSBBUyBuX3R1cF9pbnMsCi0gICAgICAgIHBn X3N0YXRfZ2V0X3R1cGxlc191cGRhdGVkKHRzby5vaWQpIEFTIG5fdHVwX3VwZCwKLSAgICAg ICAgcGdfc3RhdF9nZXRfdHVwbGVzX2RlbGV0ZWQodHNvLm9pZCkgQVMgbl90dXBfZGVsLAot ICAgICAgICBwZ19zdGF0X2dldF9saXZlX3R1cGxlcyh0c28ub2lkKSBBUyBuX2xpdmVfdHVw LAotICAgICAgICBwZ19zdGF0X2dldF9kZWFkX3R1cGxlcyh0c28ub2lkKSBBUyBuX2RlYWRf dHVwLAotICAgICAgICBwZ19zdGF0X2dldF92YWN1dW1fY291bnQodHNvLm9pZCkgQVMgdmFj dXVtX2NvdW50CisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl9udW1zY2Fucyh0c28ub2lkKSBB UyBzZXFfc2NhbiwKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX3R1cGxlc19yZXR1cm5lZCh0 c28ub2lkKSBBUyBzZXFfdHVwX3JlYWQsCisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl90dXBs ZXNfaW5zZXJ0ZWQodHNvLm9pZCkgQVMgbl90dXBfaW5zLAorICAgICAgICBwZ19zdGF0X2dl dF90YWJfdHVwbGVzX3VwZGF0ZWQodHNvLm9pZCkgQVMgbl90dXBfdXBkLAorICAgICAgICBw Z19zdGF0X2dldF90YWJfdHVwbGVzX2RlbGV0ZWQodHNvLm9pZCkgQVMgbl90dXBfZGVsLAor ICAgICAgICBwZ19zdGF0X2dldF90YWJfbGl2ZV90dXBsZXModHNvLm9pZCkgQVMgbl9saXZl X3R1cCwKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX2RlYWRfdHVwbGVzKHRzby5vaWQpIEFT IG5fZGVhZF90dXAsCisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl92YWN1dW1fY291bnQodHNv Lm9pZCkgQVMgdmFjdXVtX2NvdW50CiAgICAgRlJPTSB0ZXN0X3N0YXRfb2lkIEFTIHRzbwog ICAgIFdIRVJFIHRzby5uYW1lID0gJ3Rlc3Rfc3RhdF90YWInCiAKQEAgLTI3NTUsMTQgKzI3 NTUsMTQgQEAgcGdfc3RhdF9mb3JjZV9uZXh0X2ZsdXNoCiAKIHN0ZXAgczFfdGFibGVfc3Rh dHM6IAogICAgIFNFTEVDVAotICAgICAgICBwZ19zdGF0X2dldF9udW1zY2Fucyh0c28ub2lk KSBBUyBzZXFfc2NhbiwKLSAgICAgICAgcGdfc3RhdF9nZXRfdHVwbGVzX3JldHVybmVkKHRz by5vaWQpIEFTIHNlcV90dXBfcmVhZCwKLSAgICAgICAgcGdfc3RhdF9nZXRfdHVwbGVzX2lu c2VydGVkKHRzby5vaWQpIEFTIG5fdHVwX2lucywKLSAgICAgICAgcGdfc3RhdF9nZXRfdHVw bGVzX3VwZGF0ZWQodHNvLm9pZCkgQVMgbl90dXBfdXBkLAotICAgICAgICBwZ19zdGF0X2dl dF90dXBsZXNfZGVsZXRlZCh0c28ub2lkKSBBUyBuX3R1cF9kZWwsCi0gICAgICAgIHBnX3N0 YXRfZ2V0X2xpdmVfdHVwbGVzKHRzby5vaWQpIEFTIG5fbGl2ZV90dXAsCi0gICAgICAgIHBn X3N0YXRfZ2V0X2RlYWRfdHVwbGVzKHRzby5vaWQpIEFTIG5fZGVhZF90dXAsCi0gICAgICAg IHBnX3N0YXRfZ2V0X3ZhY3V1bV9jb3VudCh0c28ub2lkKSBBUyB2YWN1dW1fY291bnQKKyAg ICAgICAgcGdfc3RhdF9nZXRfdGFiX251bXNjYW5zKHRzby5vaWQpIEFTIHNlcV9zY2FuLAor ICAgICAgICBwZ19zdGF0X2dldF90YWJfdHVwbGVzX3JldHVybmVkKHRzby5vaWQpIEFTIHNl cV90dXBfcmVhZCwKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX3R1cGxlc19pbnNlcnRlZCh0 c28ub2lkKSBBUyBuX3R1cF9pbnMsCisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl90dXBsZXNf dXBkYXRlZCh0c28ub2lkKSBBUyBuX3R1cF91cGQsCisgICAgICAgIHBnX3N0YXRfZ2V0X3Rh Yl90dXBsZXNfZGVsZXRlZCh0c28ub2lkKSBBUyBuX3R1cF9kZWwsCisgICAgICAgIHBnX3N0 YXRfZ2V0X3RhYl9saXZlX3R1cGxlcyh0c28ub2lkKSBBUyBuX2xpdmVfdHVwLAorICAgICAg ICBwZ19zdGF0X2dldF90YWJfZGVhZF90dXBsZXModHNvLm9pZCkgQVMgbl9kZWFkX3R1cCwK KyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX3ZhY3V1bV9jb3VudCh0c28ub2lkKSBBUyB2YWN1 dW1fY291bnQKICAgICBGUk9NIHRlc3Rfc3RhdF9vaWQgQVMgdHNvCiAgICAgV0hFUkUgdHNv Lm5hbWUgPSAndGVzdF9zdGF0X3RhYicKIApAQCAtMjc5NSwxNCArMjc5NSwxNCBAQCBwZ19z dGF0X2ZvcmNlX25leHRfZmx1c2gKIAogc3RlcCBzMV90YWJsZV9zdGF0czogCiAgICAgU0VM RUNUCi0gICAgICAgIHBnX3N0YXRfZ2V0X251bXNjYW5zKHRzby5vaWQpIEFTIHNlcV9zY2Fu LAotICAgICAgICBwZ19zdGF0X2dldF90dXBsZXNfcmV0dXJuZWQodHNvLm9pZCkgQVMgc2Vx X3R1cF9yZWFkLAotICAgICAgICBwZ19zdGF0X2dldF90dXBsZXNfaW5zZXJ0ZWQodHNvLm9p ZCkgQVMgbl90dXBfaW5zLAotICAgICAgICBwZ19zdGF0X2dldF90dXBsZXNfdXBkYXRlZCh0 c28ub2lkKSBBUyBuX3R1cF91cGQsCi0gICAgICAgIHBnX3N0YXRfZ2V0X3R1cGxlc19kZWxl dGVkKHRzby5vaWQpIEFTIG5fdHVwX2RlbCwKLSAgICAgICAgcGdfc3RhdF9nZXRfbGl2ZV90 dXBsZXModHNvLm9pZCkgQVMgbl9saXZlX3R1cCwKLSAgICAgICAgcGdfc3RhdF9nZXRfZGVh ZF90dXBsZXModHNvLm9pZCkgQVMgbl9kZWFkX3R1cCwKLSAgICAgICAgcGdfc3RhdF9nZXRf dmFjdXVtX2NvdW50KHRzby5vaWQpIEFTIHZhY3V1bV9jb3VudAorICAgICAgICBwZ19zdGF0 X2dldF90YWJfbnVtc2NhbnModHNvLm9pZCkgQVMgc2VxX3NjYW4sCisgICAgICAgIHBnX3N0 YXRfZ2V0X3RhYl90dXBsZXNfcmV0dXJuZWQodHNvLm9pZCkgQVMgc2VxX3R1cF9yZWFkLAor ICAgICAgICBwZ19zdGF0X2dldF90YWJfdHVwbGVzX2luc2VydGVkKHRzby5vaWQpIEFTIG5f dHVwX2lucywKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX3R1cGxlc191cGRhdGVkKHRzby5v aWQpIEFTIG5fdHVwX3VwZCwKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX3R1cGxlc19kZWxl dGVkKHRzby5vaWQpIEFTIG5fdHVwX2RlbCwKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX2xp dmVfdHVwbGVzKHRzby5vaWQpIEFTIG5fbGl2ZV90dXAsCisgICAgICAgIHBnX3N0YXRfZ2V0 X3RhYl9kZWFkX3R1cGxlcyh0c28ub2lkKSBBUyBuX2RlYWRfdHVwLAorICAgICAgICBwZ19z dGF0X2dldF90YWJfdmFjdXVtX2NvdW50KHRzby5vaWQpIEFTIHZhY3V1bV9jb3VudAogICAg IEZST00gdGVzdF9zdGF0X29pZCBBUyB0c28KICAgICBXSEVSRSB0c28ubmFtZSA9ICd0ZXN0 X3N0YXRfdGFiJwogCkBAIC0yODQxLDE0ICsyODQxLDE0IEBAIHBnX3N0YXRfZm9yY2VfbmV4 dF9mbHVzaAogCiBzdGVwIHMxX3RhYmxlX3N0YXRzOiAKICAgICBTRUxFQ1QKLSAgICAgICAg cGdfc3RhdF9nZXRfbnVtc2NhbnModHNvLm9pZCkgQVMgc2VxX3NjYW4sCi0gICAgICAgIHBn X3N0YXRfZ2V0X3R1cGxlc19yZXR1cm5lZCh0c28ub2lkKSBBUyBzZXFfdHVwX3JlYWQsCi0g ICAgICAgIHBnX3N0YXRfZ2V0X3R1cGxlc19pbnNlcnRlZCh0c28ub2lkKSBBUyBuX3R1cF9p bnMsCi0gICAgICAgIHBnX3N0YXRfZ2V0X3R1cGxlc191cGRhdGVkKHRzby5vaWQpIEFTIG5f dHVwX3VwZCwKLSAgICAgICAgcGdfc3RhdF9nZXRfdHVwbGVzX2RlbGV0ZWQodHNvLm9pZCkg QVMgbl90dXBfZGVsLAotICAgICAgICBwZ19zdGF0X2dldF9saXZlX3R1cGxlcyh0c28ub2lk KSBBUyBuX2xpdmVfdHVwLAotICAgICAgICBwZ19zdGF0X2dldF9kZWFkX3R1cGxlcyh0c28u b2lkKSBBUyBuX2RlYWRfdHVwLAotICAgICAgICBwZ19zdGF0X2dldF92YWN1dW1fY291bnQo dHNvLm9pZCkgQVMgdmFjdXVtX2NvdW50CisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl9udW1z Y2Fucyh0c28ub2lkKSBBUyBzZXFfc2NhbiwKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX3R1 cGxlc19yZXR1cm5lZCh0c28ub2lkKSBBUyBzZXFfdHVwX3JlYWQsCisgICAgICAgIHBnX3N0 YXRfZ2V0X3RhYl90dXBsZXNfaW5zZXJ0ZWQodHNvLm9pZCkgQVMgbl90dXBfaW5zLAorICAg ICAgICBwZ19zdGF0X2dldF90YWJfdHVwbGVzX3VwZGF0ZWQodHNvLm9pZCkgQVMgbl90dXBf dXBkLAorICAgICAgICBwZ19zdGF0X2dldF90YWJfdHVwbGVzX2RlbGV0ZWQodHNvLm9pZCkg QVMgbl90dXBfZGVsLAorICAgICAgICBwZ19zdGF0X2dldF90YWJfbGl2ZV90dXBsZXModHNv Lm9pZCkgQVMgbl9saXZlX3R1cCwKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX2RlYWRfdHVw bGVzKHRzby5vaWQpIEFTIG5fZGVhZF90dXAsCisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl92 YWN1dW1fY291bnQodHNvLm9pZCkgQVMgdmFjdXVtX2NvdW50CiAgICAgRlJPTSB0ZXN0X3N0 YXRfb2lkIEFTIHRzbwogICAgIFdIRVJFIHRzby5uYW1lID0gJ3Rlc3Rfc3RhdF90YWInCiAK QEAgLTI4ODEsMTQgKzI4ODEsMTQgQEAgcGdfc3RhdF9mb3JjZV9uZXh0X2ZsdXNoCiAKIHN0 ZXAgczFfdGFibGVfc3RhdHM6IAogICAgIFNFTEVDVAotICAgICAgICBwZ19zdGF0X2dldF9u dW1zY2Fucyh0c28ub2lkKSBBUyBzZXFfc2NhbiwKLSAgICAgICAgcGdfc3RhdF9nZXRfdHVw bGVzX3JldHVybmVkKHRzby5vaWQpIEFTIHNlcV90dXBfcmVhZCwKLSAgICAgICAgcGdfc3Rh dF9nZXRfdHVwbGVzX2luc2VydGVkKHRzby5vaWQpIEFTIG5fdHVwX2lucywKLSAgICAgICAg cGdfc3RhdF9nZXRfdHVwbGVzX3VwZGF0ZWQodHNvLm9pZCkgQVMgbl90dXBfdXBkLAotICAg ICAgICBwZ19zdGF0X2dldF90dXBsZXNfZGVsZXRlZCh0c28ub2lkKSBBUyBuX3R1cF9kZWws Ci0gICAgICAgIHBnX3N0YXRfZ2V0X2xpdmVfdHVwbGVzKHRzby5vaWQpIEFTIG5fbGl2ZV90 dXAsCi0gICAgICAgIHBnX3N0YXRfZ2V0X2RlYWRfdHVwbGVzKHRzby5vaWQpIEFTIG5fZGVh ZF90dXAsCi0gICAgICAgIHBnX3N0YXRfZ2V0X3ZhY3V1bV9jb3VudCh0c28ub2lkKSBBUyB2 YWN1dW1fY291bnQKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX251bXNjYW5zKHRzby5vaWQp IEFTIHNlcV9zY2FuLAorICAgICAgICBwZ19zdGF0X2dldF90YWJfdHVwbGVzX3JldHVybmVk KHRzby5vaWQpIEFTIHNlcV90dXBfcmVhZCwKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX3R1 cGxlc19pbnNlcnRlZCh0c28ub2lkKSBBUyBuX3R1cF9pbnMsCisgICAgICAgIHBnX3N0YXRf Z2V0X3RhYl90dXBsZXNfdXBkYXRlZCh0c28ub2lkKSBBUyBuX3R1cF91cGQsCisgICAgICAg IHBnX3N0YXRfZ2V0X3RhYl90dXBsZXNfZGVsZXRlZCh0c28ub2lkKSBBUyBuX3R1cF9kZWws CisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl9saXZlX3R1cGxlcyh0c28ub2lkKSBBUyBuX2xp dmVfdHVwLAorICAgICAgICBwZ19zdGF0X2dldF90YWJfZGVhZF90dXBsZXModHNvLm9pZCkg QVMgbl9kZWFkX3R1cCwKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX3ZhY3V1bV9jb3VudCh0 c28ub2lkKSBBUyB2YWN1dW1fY291bnQKICAgICBGUk9NIHRlc3Rfc3RhdF9vaWQgQVMgdHNv CiAgICAgV0hFUkUgdHNvLm5hbWUgPSAndGVzdF9zdGF0X3RhYicKIApAQCAtMjkyNywxNCAr MjkyNywxNCBAQCBwZ19zdGF0X2ZvcmNlX25leHRfZmx1c2gKIAogc3RlcCBzMV90YWJsZV9z dGF0czogCiAgICAgU0VMRUNUCi0gICAgICAgIHBnX3N0YXRfZ2V0X251bXNjYW5zKHRzby5v aWQpIEFTIHNlcV9zY2FuLAotICAgICAgICBwZ19zdGF0X2dldF90dXBsZXNfcmV0dXJuZWQo dHNvLm9pZCkgQVMgc2VxX3R1cF9yZWFkLAotICAgICAgICBwZ19zdGF0X2dldF90dXBsZXNf aW5zZXJ0ZWQodHNvLm9pZCkgQVMgbl90dXBfaW5zLAotICAgICAgICBwZ19zdGF0X2dldF90 dXBsZXNfdXBkYXRlZCh0c28ub2lkKSBBUyBuX3R1cF91cGQsCi0gICAgICAgIHBnX3N0YXRf Z2V0X3R1cGxlc19kZWxldGVkKHRzby5vaWQpIEFTIG5fdHVwX2RlbCwKLSAgICAgICAgcGdf c3RhdF9nZXRfbGl2ZV90dXBsZXModHNvLm9pZCkgQVMgbl9saXZlX3R1cCwKLSAgICAgICAg cGdfc3RhdF9nZXRfZGVhZF90dXBsZXModHNvLm9pZCkgQVMgbl9kZWFkX3R1cCwKLSAgICAg ICAgcGdfc3RhdF9nZXRfdmFjdXVtX2NvdW50KHRzby5vaWQpIEFTIHZhY3V1bV9jb3VudAor ICAgICAgICBwZ19zdGF0X2dldF90YWJfbnVtc2NhbnModHNvLm9pZCkgQVMgc2VxX3NjYW4s CisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl90dXBsZXNfcmV0dXJuZWQodHNvLm9pZCkgQVMg c2VxX3R1cF9yZWFkLAorICAgICAgICBwZ19zdGF0X2dldF90YWJfdHVwbGVzX2luc2VydGVk KHRzby5vaWQpIEFTIG5fdHVwX2lucywKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX3R1cGxl c191cGRhdGVkKHRzby5vaWQpIEFTIG5fdHVwX3VwZCwKKyAgICAgICAgcGdfc3RhdF9nZXRf dGFiX3R1cGxlc19kZWxldGVkKHRzby5vaWQpIEFTIG5fdHVwX2RlbCwKKyAgICAgICAgcGdf c3RhdF9nZXRfdGFiX2xpdmVfdHVwbGVzKHRzby5vaWQpIEFTIG5fbGl2ZV90dXAsCisgICAg ICAgIHBnX3N0YXRfZ2V0X3RhYl9kZWFkX3R1cGxlcyh0c28ub2lkKSBBUyBuX2RlYWRfdHVw LAorICAgICAgICBwZ19zdGF0X2dldF90YWJfdmFjdXVtX2NvdW50KHRzby5vaWQpIEFTIHZh Y3V1bV9jb3VudAogICAgIEZST00gdGVzdF9zdGF0X29pZCBBUyB0c28KICAgICBXSEVSRSB0 c28ubmFtZSA9ICd0ZXN0X3N0YXRfdGFiJwogCkBAIC0yOTY4LDE0ICsyOTY4LDE0IEBAIHBn X3N0YXRfZm9yY2VfbmV4dF9mbHVzaAogCiBzdGVwIHMxX3RhYmxlX3N0YXRzOiAKICAgICBT RUxFQ1QKLSAgICAgICAgcGdfc3RhdF9nZXRfbnVtc2NhbnModHNvLm9pZCkgQVMgc2VxX3Nj YW4sCi0gICAgICAgIHBnX3N0YXRfZ2V0X3R1cGxlc19yZXR1cm5lZCh0c28ub2lkKSBBUyBz ZXFfdHVwX3JlYWQsCi0gICAgICAgIHBnX3N0YXRfZ2V0X3R1cGxlc19pbnNlcnRlZCh0c28u b2lkKSBBUyBuX3R1cF9pbnMsCi0gICAgICAgIHBnX3N0YXRfZ2V0X3R1cGxlc191cGRhdGVk KHRzby5vaWQpIEFTIG5fdHVwX3VwZCwKLSAgICAgICAgcGdfc3RhdF9nZXRfdHVwbGVzX2Rl bGV0ZWQodHNvLm9pZCkgQVMgbl90dXBfZGVsLAotICAgICAgICBwZ19zdGF0X2dldF9saXZl X3R1cGxlcyh0c28ub2lkKSBBUyBuX2xpdmVfdHVwLAotICAgICAgICBwZ19zdGF0X2dldF9k ZWFkX3R1cGxlcyh0c28ub2lkKSBBUyBuX2RlYWRfdHVwLAotICAgICAgICBwZ19zdGF0X2dl dF92YWN1dW1fY291bnQodHNvLm9pZCkgQVMgdmFjdXVtX2NvdW50CisgICAgICAgIHBnX3N0 YXRfZ2V0X3RhYl9udW1zY2Fucyh0c28ub2lkKSBBUyBzZXFfc2NhbiwKKyAgICAgICAgcGdf c3RhdF9nZXRfdGFiX3R1cGxlc19yZXR1cm5lZCh0c28ub2lkKSBBUyBzZXFfdHVwX3JlYWQs CisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl90dXBsZXNfaW5zZXJ0ZWQodHNvLm9pZCkgQVMg bl90dXBfaW5zLAorICAgICAgICBwZ19zdGF0X2dldF90YWJfdHVwbGVzX3VwZGF0ZWQodHNv Lm9pZCkgQVMgbl90dXBfdXBkLAorICAgICAgICBwZ19zdGF0X2dldF90YWJfdHVwbGVzX2Rl bGV0ZWQodHNvLm9pZCkgQVMgbl90dXBfZGVsLAorICAgICAgICBwZ19zdGF0X2dldF90YWJf bGl2ZV90dXBsZXModHNvLm9pZCkgQVMgbl9saXZlX3R1cCwKKyAgICAgICAgcGdfc3RhdF9n ZXRfdGFiX2RlYWRfdHVwbGVzKHRzby5vaWQpIEFTIG5fZGVhZF90dXAsCisgICAgICAgIHBn X3N0YXRfZ2V0X3RhYl92YWN1dW1fY291bnQodHNvLm9pZCkgQVMgdmFjdXVtX2NvdW50CiAg ICAgRlJPTSB0ZXN0X3N0YXRfb2lkIEFTIHRzbwogICAgIFdIRVJFIHRzby5uYW1lID0gJ3Rl c3Rfc3RhdF90YWInCiAKQEAgLTMwMTUsMTQgKzMwMTUsMTQgQEAgcGdfc3RhdF9mb3JjZV9u ZXh0X2ZsdXNoCiAKIHN0ZXAgczFfdGFibGVfc3RhdHM6IAogICAgIFNFTEVDVAotICAgICAg ICBwZ19zdGF0X2dldF9udW1zY2Fucyh0c28ub2lkKSBBUyBzZXFfc2NhbiwKLSAgICAgICAg cGdfc3RhdF9nZXRfdHVwbGVzX3JldHVybmVkKHRzby5vaWQpIEFTIHNlcV90dXBfcmVhZCwK LSAgICAgICAgcGdfc3RhdF9nZXRfdHVwbGVzX2luc2VydGVkKHRzby5vaWQpIEFTIG5fdHVw X2lucywKLSAgICAgICAgcGdfc3RhdF9nZXRfdHVwbGVzX3VwZGF0ZWQodHNvLm9pZCkgQVMg bl90dXBfdXBkLAotICAgICAgICBwZ19zdGF0X2dldF90dXBsZXNfZGVsZXRlZCh0c28ub2lk KSBBUyBuX3R1cF9kZWwsCi0gICAgICAgIHBnX3N0YXRfZ2V0X2xpdmVfdHVwbGVzKHRzby5v aWQpIEFTIG5fbGl2ZV90dXAsCi0gICAgICAgIHBnX3N0YXRfZ2V0X2RlYWRfdHVwbGVzKHRz by5vaWQpIEFTIG5fZGVhZF90dXAsCi0gICAgICAgIHBnX3N0YXRfZ2V0X3ZhY3V1bV9jb3Vu dCh0c28ub2lkKSBBUyB2YWN1dW1fY291bnQKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX251 bXNjYW5zKHRzby5vaWQpIEFTIHNlcV9zY2FuLAorICAgICAgICBwZ19zdGF0X2dldF90YWJf dHVwbGVzX3JldHVybmVkKHRzby5vaWQpIEFTIHNlcV90dXBfcmVhZCwKKyAgICAgICAgcGdf c3RhdF9nZXRfdGFiX3R1cGxlc19pbnNlcnRlZCh0c28ub2lkKSBBUyBuX3R1cF9pbnMsCisg ICAgICAgIHBnX3N0YXRfZ2V0X3RhYl90dXBsZXNfdXBkYXRlZCh0c28ub2lkKSBBUyBuX3R1 cF91cGQsCisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl90dXBsZXNfZGVsZXRlZCh0c28ub2lk KSBBUyBuX3R1cF9kZWwsCisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl9saXZlX3R1cGxlcyh0 c28ub2lkKSBBUyBuX2xpdmVfdHVwLAorICAgICAgICBwZ19zdGF0X2dldF90YWJfZGVhZF90 dXBsZXModHNvLm9pZCkgQVMgbl9kZWFkX3R1cCwKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFi X3ZhY3V1bV9jb3VudCh0c28ub2lkKSBBUyB2YWN1dW1fY291bnQKICAgICBGUk9NIHRlc3Rf c3RhdF9vaWQgQVMgdHNvCiAgICAgV0hFUkUgdHNvLm5hbWUgPSAndGVzdF9zdGF0X3RhYicK IApkaWZmIC0tZ2l0IGEvc3JjL3Rlc3QvaXNvbGF0aW9uL2V4cGVjdGVkL3N0YXRzXzEub3V0 IGIvc3JjL3Rlc3QvaXNvbGF0aW9uL2V4cGVjdGVkL3N0YXRzXzEub3V0CmluZGV4IDM4NTQz MjAxMDYuLjc5ODE3NDc3MzIgMTAwNjQ0Ci0tLSBhL3NyYy90ZXN0L2lzb2xhdGlvbi9leHBl Y3RlZC9zdGF0c18xLm91dAorKysgYi9zcmMvdGVzdC9pc29sYXRpb24vZXhwZWN0ZWQvc3Rh dHNfMS5vdXQKQEAgLTIxNzQsMTQgKzIxNzQsMTQgQEAgcGdfc3RhdF9mb3JjZV9uZXh0X2Zs dXNoCiAKIHN0ZXAgczFfdGFibGVfc3RhdHM6IAogICAgIFNFTEVDVAotICAgICAgICBwZ19z dGF0X2dldF9udW1zY2Fucyh0c28ub2lkKSBBUyBzZXFfc2NhbiwKKyAgICAgICAgcGdfc3Rh dF9nZXRfdGFiX251bXNjYW5zKHRzby5vaWQpIEFTIHNlcV9zY2FuLAogICAgICAgICBwZ19z dGF0X2dldF90dXBsZXNfcmV0dXJuZWQodHNvLm9pZCkgQVMgc2VxX3R1cF9yZWFkLAotICAg ICAgICBwZ19zdGF0X2dldF90dXBsZXNfaW5zZXJ0ZWQodHNvLm9pZCkgQVMgbl90dXBfaW5z LAotICAgICAgICBwZ19zdGF0X2dldF90dXBsZXNfdXBkYXRlZCh0c28ub2lkKSBBUyBuX3R1 cF91cGQsCi0gICAgICAgIHBnX3N0YXRfZ2V0X3R1cGxlc19kZWxldGVkKHRzby5vaWQpIEFT IG5fdHVwX2RlbCwKLSAgICAgICAgcGdfc3RhdF9nZXRfbGl2ZV90dXBsZXModHNvLm9pZCkg QVMgbl9saXZlX3R1cCwKLSAgICAgICAgcGdfc3RhdF9nZXRfZGVhZF90dXBsZXModHNvLm9p ZCkgQVMgbl9kZWFkX3R1cCwKLSAgICAgICAgcGdfc3RhdF9nZXRfdmFjdXVtX2NvdW50KHRz by5vaWQpIEFTIHZhY3V1bV9jb3VudAorICAgICAgICBwZ19zdGF0X2dldF90YWJfdHVwbGVz X2luc2VydGVkKHRzby5vaWQpIEFTIG5fdHVwX2lucywKKyAgICAgICAgcGdfc3RhdF9nZXRf dGFiX3R1cGxlc191cGRhdGVkKHRzby5vaWQpIEFTIG5fdHVwX3VwZCwKKyAgICAgICAgcGdf c3RhdF9nZXRfdGFiX3R1cGxlc19kZWxldGVkKHRzby5vaWQpIEFTIG5fdHVwX2RlbCwKKyAg ICAgICAgcGdfc3RhdF9nZXRfdGFiX2xpdmVfdHVwbGVzKHRzby5vaWQpIEFTIG5fbGl2ZV90 dXAsCisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl9kZWFkX3R1cGxlcyh0c28ub2lkKSBBUyBu X2RlYWRfdHVwLAorICAgICAgICBwZ19zdGF0X2dldF90YWJfdmFjdXVtX2NvdW50KHRzby5v aWQpIEFTIHZhY3V1bV9jb3VudAogICAgIEZST00gdGVzdF9zdGF0X29pZCBBUyB0c28KICAg ICBXSEVSRSB0c28ubmFtZSA9ICd0ZXN0X3N0YXRfdGFiJwogCkBAIC0yMjE4LDE0ICsyMjE4 LDE0IEBAIHN0ZXAgczJfdGFibGVfdXBkYXRlX2sxOiBVUERBVEUgdGVzdF9zdGF0X3RhYiBT RVQgdmFsdWUgPSB2YWx1ZSArIDEgV0hFUkUga2V5ID0KIHN0ZXAgczFfdGFibGVfZHJvcDog RFJPUCBUQUJMRSB0ZXN0X3N0YXRfdGFiOwogc3RlcCBzMV90YWJsZV9zdGF0czogCiAgICAg U0VMRUNUCi0gICAgICAgIHBnX3N0YXRfZ2V0X251bXNjYW5zKHRzby5vaWQpIEFTIHNlcV9z Y2FuLAorICAgICAgICBwZ19zdGF0X2dldF90YWJfbnVtc2NhbnModHNvLm9pZCkgQVMgc2Vx X3NjYW4sCiAgICAgICAgIHBnX3N0YXRfZ2V0X3R1cGxlc19yZXR1cm5lZCh0c28ub2lkKSBB UyBzZXFfdHVwX3JlYWQsCi0gICAgICAgIHBnX3N0YXRfZ2V0X3R1cGxlc19pbnNlcnRlZCh0 c28ub2lkKSBBUyBuX3R1cF9pbnMsCi0gICAgICAgIHBnX3N0YXRfZ2V0X3R1cGxlc191cGRh dGVkKHRzby5vaWQpIEFTIG5fdHVwX3VwZCwKLSAgICAgICAgcGdfc3RhdF9nZXRfdHVwbGVz X2RlbGV0ZWQodHNvLm9pZCkgQVMgbl90dXBfZGVsLAotICAgICAgICBwZ19zdGF0X2dldF9s aXZlX3R1cGxlcyh0c28ub2lkKSBBUyBuX2xpdmVfdHVwLAotICAgICAgICBwZ19zdGF0X2dl dF9kZWFkX3R1cGxlcyh0c28ub2lkKSBBUyBuX2RlYWRfdHVwLAotICAgICAgICBwZ19zdGF0 X2dldF92YWN1dW1fY291bnQodHNvLm9pZCkgQVMgdmFjdXVtX2NvdW50CisgICAgICAgIHBn X3N0YXRfZ2V0X3RhYl90dXBsZXNfaW5zZXJ0ZWQodHNvLm9pZCkgQVMgbl90dXBfaW5zLAor ICAgICAgICBwZ19zdGF0X2dldF90YWJfdHVwbGVzX3VwZGF0ZWQodHNvLm9pZCkgQVMgbl90 dXBfdXBkLAorICAgICAgICBwZ19zdGF0X2dldF90YWJfdHVwbGVzX2RlbGV0ZWQodHNvLm9p ZCkgQVMgbl90dXBfZGVsLAorICAgICAgICBwZ19zdGF0X2dldF90YWJfbGl2ZV90dXBsZXMo dHNvLm9pZCkgQVMgbl9saXZlX3R1cCwKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX2RlYWRf dHVwbGVzKHRzby5vaWQpIEFTIG5fZGVhZF90dXAsCisgICAgICAgIHBnX3N0YXRfZ2V0X3Rh Yl92YWN1dW1fY291bnQodHNvLm9pZCkgQVMgdmFjdXVtX2NvdW50CiAgICAgRlJPTSB0ZXN0 X3N0YXRfb2lkIEFTIHRzbwogICAgIFdIRVJFIHRzby5uYW1lID0gJ3Rlc3Rfc3RhdF90YWIn CiAKQEAgLTIyNDQsMTQgKzIyNDQsMTQgQEAgcGdfc3RhdF9mb3JjZV9uZXh0X2ZsdXNoCiBz dGVwIHMxX3RyYWNrX2NvdW50c19vZmY6IFNFVCB0cmFja19jb3VudHMgPSBvZmY7CiBzdGVw IHMxX3RhYmxlX3N0YXRzOiAKICAgICBTRUxFQ1QKLSAgICAgICAgcGdfc3RhdF9nZXRfbnVt c2NhbnModHNvLm9pZCkgQVMgc2VxX3NjYW4sCisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl9u dW1zY2Fucyh0c28ub2lkKSBBUyBzZXFfc2NhbiwKICAgICAgICAgcGdfc3RhdF9nZXRfdHVw bGVzX3JldHVybmVkKHRzby5vaWQpIEFTIHNlcV90dXBfcmVhZCwKLSAgICAgICAgcGdfc3Rh dF9nZXRfdHVwbGVzX2luc2VydGVkKHRzby5vaWQpIEFTIG5fdHVwX2lucywKLSAgICAgICAg cGdfc3RhdF9nZXRfdHVwbGVzX3VwZGF0ZWQodHNvLm9pZCkgQVMgbl90dXBfdXBkLAotICAg ICAgICBwZ19zdGF0X2dldF90dXBsZXNfZGVsZXRlZCh0c28ub2lkKSBBUyBuX3R1cF9kZWws Ci0gICAgICAgIHBnX3N0YXRfZ2V0X2xpdmVfdHVwbGVzKHRzby5vaWQpIEFTIG5fbGl2ZV90 dXAsCi0gICAgICAgIHBnX3N0YXRfZ2V0X2RlYWRfdHVwbGVzKHRzby5vaWQpIEFTIG5fZGVh ZF90dXAsCi0gICAgICAgIHBnX3N0YXRfZ2V0X3ZhY3V1bV9jb3VudCh0c28ub2lkKSBBUyB2 YWN1dW1fY291bnQKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX3R1cGxlc19pbnNlcnRlZCh0 c28ub2lkKSBBUyBuX3R1cF9pbnMsCisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl90dXBsZXNf dXBkYXRlZCh0c28ub2lkKSBBUyBuX3R1cF91cGQsCisgICAgICAgIHBnX3N0YXRfZ2V0X3Rh Yl90dXBsZXNfZGVsZXRlZCh0c28ub2lkKSBBUyBuX3R1cF9kZWwsCisgICAgICAgIHBnX3N0 YXRfZ2V0X3RhYl9saXZlX3R1cGxlcyh0c28ub2lkKSBBUyBuX2xpdmVfdHVwLAorICAgICAg ICBwZ19zdGF0X2dldF90YWJfZGVhZF90dXBsZXModHNvLm9pZCkgQVMgbl9kZWFkX3R1cCwK KyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX3ZhY3V1bV9jb3VudCh0c28ub2lkKSBBUyB2YWN1 dW1fY291bnQKICAgICBGUk9NIHRlc3Rfc3RhdF9vaWQgQVMgdHNvCiAgICAgV0hFUkUgdHNv Lm5hbWUgPSAndGVzdF9zdGF0X3RhYicKIApAQCAtMjI4MywxNCArMjI4MywxNCBAQCBwZ19z dGF0X2ZvcmNlX25leHRfZmx1c2gKIAogc3RlcCBzMV90YWJsZV9zdGF0czogCiAgICAgU0VM RUNUCi0gICAgICAgIHBnX3N0YXRfZ2V0X251bXNjYW5zKHRzby5vaWQpIEFTIHNlcV9zY2Fu LAorICAgICAgICBwZ19zdGF0X2dldF90YWJfbnVtc2NhbnModHNvLm9pZCkgQVMgc2VxX3Nj YW4sCiAgICAgICAgIHBnX3N0YXRfZ2V0X3R1cGxlc19yZXR1cm5lZCh0c28ub2lkKSBBUyBz ZXFfdHVwX3JlYWQsCi0gICAgICAgIHBnX3N0YXRfZ2V0X3R1cGxlc19pbnNlcnRlZCh0c28u b2lkKSBBUyBuX3R1cF9pbnMsCi0gICAgICAgIHBnX3N0YXRfZ2V0X3R1cGxlc191cGRhdGVk KHRzby5vaWQpIEFTIG5fdHVwX3VwZCwKLSAgICAgICAgcGdfc3RhdF9nZXRfdHVwbGVzX2Rl bGV0ZWQodHNvLm9pZCkgQVMgbl90dXBfZGVsLAotICAgICAgICBwZ19zdGF0X2dldF9saXZl X3R1cGxlcyh0c28ub2lkKSBBUyBuX2xpdmVfdHVwLAotICAgICAgICBwZ19zdGF0X2dldF9k ZWFkX3R1cGxlcyh0c28ub2lkKSBBUyBuX2RlYWRfdHVwLAotICAgICAgICBwZ19zdGF0X2dl dF92YWN1dW1fY291bnQodHNvLm9pZCkgQVMgdmFjdXVtX2NvdW50CisgICAgICAgIHBnX3N0 YXRfZ2V0X3RhYl90dXBsZXNfaW5zZXJ0ZWQodHNvLm9pZCkgQVMgbl90dXBfaW5zLAorICAg ICAgICBwZ19zdGF0X2dldF90YWJfdHVwbGVzX3VwZGF0ZWQodHNvLm9pZCkgQVMgbl90dXBf dXBkLAorICAgICAgICBwZ19zdGF0X2dldF90YWJfdHVwbGVzX2RlbGV0ZWQodHNvLm9pZCkg QVMgbl90dXBfZGVsLAorICAgICAgICBwZ19zdGF0X2dldF90YWJfbGl2ZV90dXBsZXModHNv Lm9pZCkgQVMgbl9saXZlX3R1cCwKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX2RlYWRfdHVw bGVzKHRzby5vaWQpIEFTIG5fZGVhZF90dXAsCisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl92 YWN1dW1fY291bnQodHNvLm9pZCkgQVMgdmFjdXVtX2NvdW50CiAgICAgRlJPTSB0ZXN0X3N0 YXRfb2lkIEFTIHRzbwogICAgIFdIRVJFIHRzby5uYW1lID0gJ3Rlc3Rfc3RhdF90YWInCiAK QEAgLTIzMjIsMTQgKzIzMjIsMTQgQEAgcGdfc3RhdF9mb3JjZV9uZXh0X2ZsdXNoCiBzdGVw IHMxX3RyYWNrX2NvdW50c19vZmY6IFNFVCB0cmFja19jb3VudHMgPSBvZmY7CiBzdGVwIHMx X3RhYmxlX3N0YXRzOiAKICAgICBTRUxFQ1QKLSAgICAgICAgcGdfc3RhdF9nZXRfbnVtc2Nh bnModHNvLm9pZCkgQVMgc2VxX3NjYW4sCisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl9udW1z Y2Fucyh0c28ub2lkKSBBUyBzZXFfc2NhbiwKICAgICAgICAgcGdfc3RhdF9nZXRfdHVwbGVz X3JldHVybmVkKHRzby5vaWQpIEFTIHNlcV90dXBfcmVhZCwKLSAgICAgICAgcGdfc3RhdF9n ZXRfdHVwbGVzX2luc2VydGVkKHRzby5vaWQpIEFTIG5fdHVwX2lucywKLSAgICAgICAgcGdf c3RhdF9nZXRfdHVwbGVzX3VwZGF0ZWQodHNvLm9pZCkgQVMgbl90dXBfdXBkLAotICAgICAg ICBwZ19zdGF0X2dldF90dXBsZXNfZGVsZXRlZCh0c28ub2lkKSBBUyBuX3R1cF9kZWwsCi0g ICAgICAgIHBnX3N0YXRfZ2V0X2xpdmVfdHVwbGVzKHRzby5vaWQpIEFTIG5fbGl2ZV90dXAs Ci0gICAgICAgIHBnX3N0YXRfZ2V0X2RlYWRfdHVwbGVzKHRzby5vaWQpIEFTIG5fZGVhZF90 dXAsCi0gICAgICAgIHBnX3N0YXRfZ2V0X3ZhY3V1bV9jb3VudCh0c28ub2lkKSBBUyB2YWN1 dW1fY291bnQKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX3R1cGxlc19pbnNlcnRlZCh0c28u b2lkKSBBUyBuX3R1cF9pbnMsCisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl90dXBsZXNfdXBk YXRlZCh0c28ub2lkKSBBUyBuX3R1cF91cGQsCisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl90 dXBsZXNfZGVsZXRlZCh0c28ub2lkKSBBUyBuX3R1cF9kZWwsCisgICAgICAgIHBnX3N0YXRf Z2V0X3RhYl9saXZlX3R1cGxlcyh0c28ub2lkKSBBUyBuX2xpdmVfdHVwLAorICAgICAgICBw Z19zdGF0X2dldF90YWJfZGVhZF90dXBsZXModHNvLm9pZCkgQVMgbl9kZWFkX3R1cCwKKyAg ICAgICAgcGdfc3RhdF9nZXRfdGFiX3ZhY3V1bV9jb3VudCh0c28ub2lkKSBBUyB2YWN1dW1f Y291bnQKICAgICBGUk9NIHRlc3Rfc3RhdF9vaWQgQVMgdHNvCiAgICAgV0hFUkUgdHNvLm5h bWUgPSAndGVzdF9zdGF0X3RhYicKIApAQCAtMjM3NywxNCArMjM3NywxNCBAQCBwZ19zdGF0 X2ZvcmNlX25leHRfZmx1c2gKIAogc3RlcCBzMV90YWJsZV9zdGF0czogCiAgICAgU0VMRUNU Ci0gICAgICAgIHBnX3N0YXRfZ2V0X251bXNjYW5zKHRzby5vaWQpIEFTIHNlcV9zY2FuLAor ICAgICAgICBwZ19zdGF0X2dldF90YWJfbnVtc2NhbnModHNvLm9pZCkgQVMgc2VxX3NjYW4s CiAgICAgICAgIHBnX3N0YXRfZ2V0X3R1cGxlc19yZXR1cm5lZCh0c28ub2lkKSBBUyBzZXFf dHVwX3JlYWQsCi0gICAgICAgIHBnX3N0YXRfZ2V0X3R1cGxlc19pbnNlcnRlZCh0c28ub2lk KSBBUyBuX3R1cF9pbnMsCi0gICAgICAgIHBnX3N0YXRfZ2V0X3R1cGxlc191cGRhdGVkKHRz by5vaWQpIEFTIG5fdHVwX3VwZCwKLSAgICAgICAgcGdfc3RhdF9nZXRfdHVwbGVzX2RlbGV0 ZWQodHNvLm9pZCkgQVMgbl90dXBfZGVsLAotICAgICAgICBwZ19zdGF0X2dldF9saXZlX3R1 cGxlcyh0c28ub2lkKSBBUyBuX2xpdmVfdHVwLAotICAgICAgICBwZ19zdGF0X2dldF9kZWFk X3R1cGxlcyh0c28ub2lkKSBBUyBuX2RlYWRfdHVwLAotICAgICAgICBwZ19zdGF0X2dldF92 YWN1dW1fY291bnQodHNvLm9pZCkgQVMgdmFjdXVtX2NvdW50CisgICAgICAgIHBnX3N0YXRf Z2V0X3RhYl90dXBsZXNfaW5zZXJ0ZWQodHNvLm9pZCkgQVMgbl90dXBfaW5zLAorICAgICAg ICBwZ19zdGF0X2dldF90YWJfdHVwbGVzX3VwZGF0ZWQodHNvLm9pZCkgQVMgbl90dXBfdXBk LAorICAgICAgICBwZ19zdGF0X2dldF90YWJfdHVwbGVzX2RlbGV0ZWQodHNvLm9pZCkgQVMg bl90dXBfZGVsLAorICAgICAgICBwZ19zdGF0X2dldF90YWJfbGl2ZV90dXBsZXModHNvLm9p ZCkgQVMgbl9saXZlX3R1cCwKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX2RlYWRfdHVwbGVz KHRzby5vaWQpIEFTIG5fZGVhZF90dXAsCisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl92YWN1 dW1fY291bnQodHNvLm9pZCkgQVMgdmFjdXVtX2NvdW50CiAgICAgRlJPTSB0ZXN0X3N0YXRf b2lkIEFTIHRzbwogICAgIFdIRVJFIHRzby5uYW1lID0gJ3Rlc3Rfc3RhdF90YWInCiAKQEAg LTI0MDksMTQgKzI0MDksMTQgQEAgcGdfc3RhdF9mb3JjZV9uZXh0X2ZsdXNoCiAKIHN0ZXAg czFfdGFibGVfc3RhdHM6IAogICAgIFNFTEVDVAotICAgICAgICBwZ19zdGF0X2dldF9udW1z Y2Fucyh0c28ub2lkKSBBUyBzZXFfc2NhbiwKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX251 bXNjYW5zKHRzby5vaWQpIEFTIHNlcV9zY2FuLAogICAgICAgICBwZ19zdGF0X2dldF90dXBs ZXNfcmV0dXJuZWQodHNvLm9pZCkgQVMgc2VxX3R1cF9yZWFkLAotICAgICAgICBwZ19zdGF0 X2dldF90dXBsZXNfaW5zZXJ0ZWQodHNvLm9pZCkgQVMgbl90dXBfaW5zLAotICAgICAgICBw Z19zdGF0X2dldF90dXBsZXNfdXBkYXRlZCh0c28ub2lkKSBBUyBuX3R1cF91cGQsCi0gICAg ICAgIHBnX3N0YXRfZ2V0X3R1cGxlc19kZWxldGVkKHRzby5vaWQpIEFTIG5fdHVwX2RlbCwK LSAgICAgICAgcGdfc3RhdF9nZXRfbGl2ZV90dXBsZXModHNvLm9pZCkgQVMgbl9saXZlX3R1 cCwKLSAgICAgICAgcGdfc3RhdF9nZXRfZGVhZF90dXBsZXModHNvLm9pZCkgQVMgbl9kZWFk X3R1cCwKLSAgICAgICAgcGdfc3RhdF9nZXRfdmFjdXVtX2NvdW50KHRzby5vaWQpIEFTIHZh Y3V1bV9jb3VudAorICAgICAgICBwZ19zdGF0X2dldF90YWJfdHVwbGVzX2luc2VydGVkKHRz by5vaWQpIEFTIG5fdHVwX2lucywKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX3R1cGxlc191 cGRhdGVkKHRzby5vaWQpIEFTIG5fdHVwX3VwZCwKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFi X3R1cGxlc19kZWxldGVkKHRzby5vaWQpIEFTIG5fdHVwX2RlbCwKKyAgICAgICAgcGdfc3Rh dF9nZXRfdGFiX2xpdmVfdHVwbGVzKHRzby5vaWQpIEFTIG5fbGl2ZV90dXAsCisgICAgICAg IHBnX3N0YXRfZ2V0X3RhYl9kZWFkX3R1cGxlcyh0c28ub2lkKSBBUyBuX2RlYWRfdHVwLAor ICAgICAgICBwZ19zdGF0X2dldF90YWJfdmFjdXVtX2NvdW50KHRzby5vaWQpIEFTIHZhY3V1 bV9jb3VudAogICAgIEZST00gdGVzdF9zdGF0X29pZCBBUyB0c28KICAgICBXSEVSRSB0c28u bmFtZSA9ICd0ZXN0X3N0YXRfdGFiJwogCkBAIC0yNDcxLDE0ICsyNDcxLDE0IEBAIHBnX3N0 YXRfZm9yY2VfbmV4dF9mbHVzaAogCiBzdGVwIHMxX3RhYmxlX3N0YXRzOiAKICAgICBTRUxF Q1QKLSAgICAgICAgcGdfc3RhdF9nZXRfbnVtc2NhbnModHNvLm9pZCkgQVMgc2VxX3NjYW4s CisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl9udW1zY2Fucyh0c28ub2lkKSBBUyBzZXFfc2Nh biwKICAgICAgICAgcGdfc3RhdF9nZXRfdHVwbGVzX3JldHVybmVkKHRzby5vaWQpIEFTIHNl cV90dXBfcmVhZCwKLSAgICAgICAgcGdfc3RhdF9nZXRfdHVwbGVzX2luc2VydGVkKHRzby5v aWQpIEFTIG5fdHVwX2lucywKLSAgICAgICAgcGdfc3RhdF9nZXRfdHVwbGVzX3VwZGF0ZWQo dHNvLm9pZCkgQVMgbl90dXBfdXBkLAotICAgICAgICBwZ19zdGF0X2dldF90dXBsZXNfZGVs ZXRlZCh0c28ub2lkKSBBUyBuX3R1cF9kZWwsCi0gICAgICAgIHBnX3N0YXRfZ2V0X2xpdmVf dHVwbGVzKHRzby5vaWQpIEFTIG5fbGl2ZV90dXAsCi0gICAgICAgIHBnX3N0YXRfZ2V0X2Rl YWRfdHVwbGVzKHRzby5vaWQpIEFTIG5fZGVhZF90dXAsCi0gICAgICAgIHBnX3N0YXRfZ2V0 X3ZhY3V1bV9jb3VudCh0c28ub2lkKSBBUyB2YWN1dW1fY291bnQKKyAgICAgICAgcGdfc3Rh dF9nZXRfdGFiX3R1cGxlc19pbnNlcnRlZCh0c28ub2lkKSBBUyBuX3R1cF9pbnMsCisgICAg ICAgIHBnX3N0YXRfZ2V0X3RhYl90dXBsZXNfdXBkYXRlZCh0c28ub2lkKSBBUyBuX3R1cF91 cGQsCisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl90dXBsZXNfZGVsZXRlZCh0c28ub2lkKSBB UyBuX3R1cF9kZWwsCisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl9saXZlX3R1cGxlcyh0c28u b2lkKSBBUyBuX2xpdmVfdHVwLAorICAgICAgICBwZ19zdGF0X2dldF90YWJfZGVhZF90dXBs ZXModHNvLm9pZCkgQVMgbl9kZWFkX3R1cCwKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX3Zh Y3V1bV9jb3VudCh0c28ub2lkKSBBUyB2YWN1dW1fY291bnQKICAgICBGUk9NIHRlc3Rfc3Rh dF9vaWQgQVMgdHNvCiAgICAgV0hFUkUgdHNvLm5hbWUgPSAndGVzdF9zdGF0X3RhYicKIApA QCAtMjUwMywxNCArMjUwMywxNCBAQCBwZ19zdGF0X2ZvcmNlX25leHRfZmx1c2gKIAogc3Rl cCBzMV90YWJsZV9zdGF0czogCiAgICAgU0VMRUNUCi0gICAgICAgIHBnX3N0YXRfZ2V0X251 bXNjYW5zKHRzby5vaWQpIEFTIHNlcV9zY2FuLAorICAgICAgICBwZ19zdGF0X2dldF90YWJf bnVtc2NhbnModHNvLm9pZCkgQVMgc2VxX3NjYW4sCiAgICAgICAgIHBnX3N0YXRfZ2V0X3R1 cGxlc19yZXR1cm5lZCh0c28ub2lkKSBBUyBzZXFfdHVwX3JlYWQsCi0gICAgICAgIHBnX3N0 YXRfZ2V0X3R1cGxlc19pbnNlcnRlZCh0c28ub2lkKSBBUyBuX3R1cF9pbnMsCi0gICAgICAg IHBnX3N0YXRfZ2V0X3R1cGxlc191cGRhdGVkKHRzby5vaWQpIEFTIG5fdHVwX3VwZCwKLSAg ICAgICAgcGdfc3RhdF9nZXRfdHVwbGVzX2RlbGV0ZWQodHNvLm9pZCkgQVMgbl90dXBfZGVs LAotICAgICAgICBwZ19zdGF0X2dldF9saXZlX3R1cGxlcyh0c28ub2lkKSBBUyBuX2xpdmVf dHVwLAotICAgICAgICBwZ19zdGF0X2dldF9kZWFkX3R1cGxlcyh0c28ub2lkKSBBUyBuX2Rl YWRfdHVwLAotICAgICAgICBwZ19zdGF0X2dldF92YWN1dW1fY291bnQodHNvLm9pZCkgQVMg dmFjdXVtX2NvdW50CisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl90dXBsZXNfaW5zZXJ0ZWQo dHNvLm9pZCkgQVMgbl90dXBfaW5zLAorICAgICAgICBwZ19zdGF0X2dldF90YWJfdHVwbGVz X3VwZGF0ZWQodHNvLm9pZCkgQVMgbl90dXBfdXBkLAorICAgICAgICBwZ19zdGF0X2dldF90 YWJfdHVwbGVzX2RlbGV0ZWQodHNvLm9pZCkgQVMgbl90dXBfZGVsLAorICAgICAgICBwZ19z dGF0X2dldF90YWJfbGl2ZV90dXBsZXModHNvLm9pZCkgQVMgbl9saXZlX3R1cCwKKyAgICAg ICAgcGdfc3RhdF9nZXRfdGFiX2RlYWRfdHVwbGVzKHRzby5vaWQpIEFTIG5fZGVhZF90dXAs CisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl92YWN1dW1fY291bnQodHNvLm9pZCkgQVMgdmFj dXVtX2NvdW50CiAgICAgRlJPTSB0ZXN0X3N0YXRfb2lkIEFTIHRzbwogICAgIFdIRVJFIHRz by5uYW1lID0gJ3Rlc3Rfc3RhdF90YWInCiAKQEAgLTI1NjYsMTQgKzI1NjYsMTQgQEAgcGdf c3RhdF9mb3JjZV9uZXh0X2ZsdXNoCiAKIHN0ZXAgczFfdGFibGVfc3RhdHM6IAogICAgIFNF TEVDVAotICAgICAgICBwZ19zdGF0X2dldF9udW1zY2Fucyh0c28ub2lkKSBBUyBzZXFfc2Nh biwKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX251bXNjYW5zKHRzby5vaWQpIEFTIHNlcV9z Y2FuLAogICAgICAgICBwZ19zdGF0X2dldF90dXBsZXNfcmV0dXJuZWQodHNvLm9pZCkgQVMg c2VxX3R1cF9yZWFkLAotICAgICAgICBwZ19zdGF0X2dldF90dXBsZXNfaW5zZXJ0ZWQodHNv Lm9pZCkgQVMgbl90dXBfaW5zLAotICAgICAgICBwZ19zdGF0X2dldF90dXBsZXNfdXBkYXRl ZCh0c28ub2lkKSBBUyBuX3R1cF91cGQsCi0gICAgICAgIHBnX3N0YXRfZ2V0X3R1cGxlc19k ZWxldGVkKHRzby5vaWQpIEFTIG5fdHVwX2RlbCwKLSAgICAgICAgcGdfc3RhdF9nZXRfbGl2 ZV90dXBsZXModHNvLm9pZCkgQVMgbl9saXZlX3R1cCwKLSAgICAgICAgcGdfc3RhdF9nZXRf ZGVhZF90dXBsZXModHNvLm9pZCkgQVMgbl9kZWFkX3R1cCwKLSAgICAgICAgcGdfc3RhdF9n ZXRfdmFjdXVtX2NvdW50KHRzby5vaWQpIEFTIHZhY3V1bV9jb3VudAorICAgICAgICBwZ19z dGF0X2dldF90YWJfdHVwbGVzX2luc2VydGVkKHRzby5vaWQpIEFTIG5fdHVwX2lucywKKyAg ICAgICAgcGdfc3RhdF9nZXRfdGFiX3R1cGxlc191cGRhdGVkKHRzby5vaWQpIEFTIG5fdHVw X3VwZCwKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX3R1cGxlc19kZWxldGVkKHRzby5vaWQp IEFTIG5fdHVwX2RlbCwKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX2xpdmVfdHVwbGVzKHRz by5vaWQpIEFTIG5fbGl2ZV90dXAsCisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl9kZWFkX3R1 cGxlcyh0c28ub2lkKSBBUyBuX2RlYWRfdHVwLAorICAgICAgICBwZ19zdGF0X2dldF90YWJf dmFjdXVtX2NvdW50KHRzby5vaWQpIEFTIHZhY3V1bV9jb3VudAogICAgIEZST00gdGVzdF9z dGF0X29pZCBBUyB0c28KICAgICBXSEVSRSB0c28ubmFtZSA9ICd0ZXN0X3N0YXRfdGFiJwog CkBAIC0yNjM1LDE0ICsyNjM1LDE0IEBAIHBnX3N0YXRfZm9yY2VfbmV4dF9mbHVzaAogCiBz dGVwIHMxX3RhYmxlX3N0YXRzOiAKICAgICBTRUxFQ1QKLSAgICAgICAgcGdfc3RhdF9nZXRf bnVtc2NhbnModHNvLm9pZCkgQVMgc2VxX3NjYW4sCisgICAgICAgIHBnX3N0YXRfZ2V0X3Rh Yl9udW1zY2Fucyh0c28ub2lkKSBBUyBzZXFfc2NhbiwKICAgICAgICAgcGdfc3RhdF9nZXRf dHVwbGVzX3JldHVybmVkKHRzby5vaWQpIEFTIHNlcV90dXBfcmVhZCwKLSAgICAgICAgcGdf c3RhdF9nZXRfdHVwbGVzX2luc2VydGVkKHRzby5vaWQpIEFTIG5fdHVwX2lucywKLSAgICAg ICAgcGdfc3RhdF9nZXRfdHVwbGVzX3VwZGF0ZWQodHNvLm9pZCkgQVMgbl90dXBfdXBkLAot ICAgICAgICBwZ19zdGF0X2dldF90dXBsZXNfZGVsZXRlZCh0c28ub2lkKSBBUyBuX3R1cF9k ZWwsCi0gICAgICAgIHBnX3N0YXRfZ2V0X2xpdmVfdHVwbGVzKHRzby5vaWQpIEFTIG5fbGl2 ZV90dXAsCi0gICAgICAgIHBnX3N0YXRfZ2V0X2RlYWRfdHVwbGVzKHRzby5vaWQpIEFTIG5f ZGVhZF90dXAsCi0gICAgICAgIHBnX3N0YXRfZ2V0X3ZhY3V1bV9jb3VudCh0c28ub2lkKSBB UyB2YWN1dW1fY291bnQKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX3R1cGxlc19pbnNlcnRl ZCh0c28ub2lkKSBBUyBuX3R1cF9pbnMsCisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl90dXBs ZXNfdXBkYXRlZCh0c28ub2lkKSBBUyBuX3R1cF91cGQsCisgICAgICAgIHBnX3N0YXRfZ2V0 X3RhYl90dXBsZXNfZGVsZXRlZCh0c28ub2lkKSBBUyBuX3R1cF9kZWwsCisgICAgICAgIHBn X3N0YXRfZ2V0X3RhYl9saXZlX3R1cGxlcyh0c28ub2lkKSBBUyBuX2xpdmVfdHVwLAorICAg ICAgICBwZ19zdGF0X2dldF90YWJfZGVhZF90dXBsZXModHNvLm9pZCkgQVMgbl9kZWFkX3R1 cCwKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX3ZhY3V1bV9jb3VudCh0c28ub2lkKSBBUyB2 YWN1dW1fY291bnQKICAgICBGUk9NIHRlc3Rfc3RhdF9vaWQgQVMgdHNvCiAgICAgV0hFUkUg dHNvLm5hbWUgPSAndGVzdF9zdGF0X3RhYicKIApAQCAtMjY5OCwxNCArMjY5OCwxNCBAQCBw Z19zdGF0X2ZvcmNlX25leHRfZmx1c2gKIAogc3RlcCBzMV90YWJsZV9zdGF0czogCiAgICAg U0VMRUNUCi0gICAgICAgIHBnX3N0YXRfZ2V0X251bXNjYW5zKHRzby5vaWQpIEFTIHNlcV9z Y2FuLAorICAgICAgICBwZ19zdGF0X2dldF90YWJfbnVtc2NhbnModHNvLm9pZCkgQVMgc2Vx X3NjYW4sCiAgICAgICAgIHBnX3N0YXRfZ2V0X3R1cGxlc19yZXR1cm5lZCh0c28ub2lkKSBB UyBzZXFfdHVwX3JlYWQsCi0gICAgICAgIHBnX3N0YXRfZ2V0X3R1cGxlc19pbnNlcnRlZCh0 c28ub2lkKSBBUyBuX3R1cF9pbnMsCi0gICAgICAgIHBnX3N0YXRfZ2V0X3R1cGxlc191cGRh dGVkKHRzby5vaWQpIEFTIG5fdHVwX3VwZCwKLSAgICAgICAgcGdfc3RhdF9nZXRfdHVwbGVz X2RlbGV0ZWQodHNvLm9pZCkgQVMgbl90dXBfZGVsLAotICAgICAgICBwZ19zdGF0X2dldF9s aXZlX3R1cGxlcyh0c28ub2lkKSBBUyBuX2xpdmVfdHVwLAotICAgICAgICBwZ19zdGF0X2dl dF9kZWFkX3R1cGxlcyh0c28ub2lkKSBBUyBuX2RlYWRfdHVwLAotICAgICAgICBwZ19zdGF0 X2dldF92YWN1dW1fY291bnQodHNvLm9pZCkgQVMgdmFjdXVtX2NvdW50CisgICAgICAgIHBn X3N0YXRfZ2V0X3RhYl90dXBsZXNfaW5zZXJ0ZWQodHNvLm9pZCkgQVMgbl90dXBfaW5zLAor ICAgICAgICBwZ19zdGF0X2dldF90YWJfdHVwbGVzX3VwZGF0ZWQodHNvLm9pZCkgQVMgbl90 dXBfdXBkLAorICAgICAgICBwZ19zdGF0X2dldF90YWJfdHVwbGVzX2RlbGV0ZWQodHNvLm9p ZCkgQVMgbl90dXBfZGVsLAorICAgICAgICBwZ19zdGF0X2dldF90YWJfbGl2ZV90dXBsZXMo dHNvLm9pZCkgQVMgbl9saXZlX3R1cCwKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX2RlYWRf dHVwbGVzKHRzby5vaWQpIEFTIG5fZGVhZF90dXAsCisgICAgICAgIHBnX3N0YXRfZ2V0X3Rh Yl92YWN1dW1fY291bnQodHNvLm9pZCkgQVMgdmFjdXVtX2NvdW50CiAgICAgRlJPTSB0ZXN0 X3N0YXRfb2lkIEFTIHRzbwogICAgIFdIRVJFIHRzby5uYW1lID0gJ3Rlc3Rfc3RhdF90YWIn CiAKQEAgLTI3NjcsMTQgKzI3NjcsMTQgQEAgcGdfc3RhdF9mb3JjZV9uZXh0X2ZsdXNoCiAK IHN0ZXAgczFfdGFibGVfc3RhdHM6IAogICAgIFNFTEVDVAotICAgICAgICBwZ19zdGF0X2dl dF9udW1zY2Fucyh0c28ub2lkKSBBUyBzZXFfc2NhbiwKKyAgICAgICAgcGdfc3RhdF9nZXRf dGFiX251bXNjYW5zKHRzby5vaWQpIEFTIHNlcV9zY2FuLAogICAgICAgICBwZ19zdGF0X2dl dF90dXBsZXNfcmV0dXJuZWQodHNvLm9pZCkgQVMgc2VxX3R1cF9yZWFkLAotICAgICAgICBw Z19zdGF0X2dldF90dXBsZXNfaW5zZXJ0ZWQodHNvLm9pZCkgQVMgbl90dXBfaW5zLAotICAg ICAgICBwZ19zdGF0X2dldF90dXBsZXNfdXBkYXRlZCh0c28ub2lkKSBBUyBuX3R1cF91cGQs Ci0gICAgICAgIHBnX3N0YXRfZ2V0X3R1cGxlc19kZWxldGVkKHRzby5vaWQpIEFTIG5fdHVw X2RlbCwKLSAgICAgICAgcGdfc3RhdF9nZXRfbGl2ZV90dXBsZXModHNvLm9pZCkgQVMgbl9s aXZlX3R1cCwKLSAgICAgICAgcGdfc3RhdF9nZXRfZGVhZF90dXBsZXModHNvLm9pZCkgQVMg bl9kZWFkX3R1cCwKLSAgICAgICAgcGdfc3RhdF9nZXRfdmFjdXVtX2NvdW50KHRzby5vaWQp IEFTIHZhY3V1bV9jb3VudAorICAgICAgICBwZ19zdGF0X2dldF90YWJfdHVwbGVzX2luc2Vy dGVkKHRzby5vaWQpIEFTIG5fdHVwX2lucywKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX3R1 cGxlc191cGRhdGVkKHRzby5vaWQpIEFTIG5fdHVwX3VwZCwKKyAgICAgICAgcGdfc3RhdF9n ZXRfdGFiX3R1cGxlc19kZWxldGVkKHRzby5vaWQpIEFTIG5fdHVwX2RlbCwKKyAgICAgICAg cGdfc3RhdF9nZXRfdGFiX2xpdmVfdHVwbGVzKHRzby5vaWQpIEFTIG5fbGl2ZV90dXAsCisg ICAgICAgIHBnX3N0YXRfZ2V0X3RhYl9kZWFkX3R1cGxlcyh0c28ub2lkKSBBUyBuX2RlYWRf dHVwLAorICAgICAgICBwZ19zdGF0X2dldF90YWJfdmFjdXVtX2NvdW50KHRzby5vaWQpIEFT IHZhY3V1bV9jb3VudAogICAgIEZST00gdGVzdF9zdGF0X29pZCBBUyB0c28KICAgICBXSEVS RSB0c28ubmFtZSA9ICd0ZXN0X3N0YXRfdGFiJwogCkBAIC0yODA5LDE0ICsyODA5LDE0IEBA IHBnX3N0YXRfZm9yY2VfbmV4dF9mbHVzaAogCiBzdGVwIHMxX3RhYmxlX3N0YXRzOiAKICAg ICBTRUxFQ1QKLSAgICAgICAgcGdfc3RhdF9nZXRfbnVtc2NhbnModHNvLm9pZCkgQVMgc2Vx X3NjYW4sCisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl9udW1zY2Fucyh0c28ub2lkKSBBUyBz ZXFfc2NhbiwKICAgICAgICAgcGdfc3RhdF9nZXRfdHVwbGVzX3JldHVybmVkKHRzby5vaWQp IEFTIHNlcV90dXBfcmVhZCwKLSAgICAgICAgcGdfc3RhdF9nZXRfdHVwbGVzX2luc2VydGVk KHRzby5vaWQpIEFTIG5fdHVwX2lucywKLSAgICAgICAgcGdfc3RhdF9nZXRfdHVwbGVzX3Vw ZGF0ZWQodHNvLm9pZCkgQVMgbl90dXBfdXBkLAotICAgICAgICBwZ19zdGF0X2dldF90dXBs ZXNfZGVsZXRlZCh0c28ub2lkKSBBUyBuX3R1cF9kZWwsCi0gICAgICAgIHBnX3N0YXRfZ2V0 X2xpdmVfdHVwbGVzKHRzby5vaWQpIEFTIG5fbGl2ZV90dXAsCi0gICAgICAgIHBnX3N0YXRf Z2V0X2RlYWRfdHVwbGVzKHRzby5vaWQpIEFTIG5fZGVhZF90dXAsCi0gICAgICAgIHBnX3N0 YXRfZ2V0X3ZhY3V1bV9jb3VudCh0c28ub2lkKSBBUyB2YWN1dW1fY291bnQKKyAgICAgICAg cGdfc3RhdF9nZXRfdGFiX3R1cGxlc19pbnNlcnRlZCh0c28ub2lkKSBBUyBuX3R1cF9pbnMs CisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl90dXBsZXNfdXBkYXRlZCh0c28ub2lkKSBBUyBu X3R1cF91cGQsCisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl90dXBsZXNfZGVsZXRlZCh0c28u b2lkKSBBUyBuX3R1cF9kZWwsCisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl9saXZlX3R1cGxl cyh0c28ub2lkKSBBUyBuX2xpdmVfdHVwLAorICAgICAgICBwZ19zdGF0X2dldF90YWJfZGVh ZF90dXBsZXModHNvLm9pZCkgQVMgbl9kZWFkX3R1cCwKKyAgICAgICAgcGdfc3RhdF9nZXRf dGFiX3ZhY3V1bV9jb3VudCh0c28ub2lkKSBBUyB2YWN1dW1fY291bnQKICAgICBGUk9NIHRl c3Rfc3RhdF9vaWQgQVMgdHNvCiAgICAgV0hFUkUgdHNvLm5hbWUgPSAndGVzdF9zdGF0X3Rh YicKIApAQCAtMjg1NywxNCArMjg1NywxNCBAQCBwZ19zdGF0X2ZvcmNlX25leHRfZmx1c2gK IAogc3RlcCBzMV90YWJsZV9zdGF0czogCiAgICAgU0VMRUNUCi0gICAgICAgIHBnX3N0YXRf Z2V0X251bXNjYW5zKHRzby5vaWQpIEFTIHNlcV9zY2FuLAorICAgICAgICBwZ19zdGF0X2dl dF90YWJfbnVtc2NhbnModHNvLm9pZCkgQVMgc2VxX3NjYW4sCiAgICAgICAgIHBnX3N0YXRf Z2V0X3R1cGxlc19yZXR1cm5lZCh0c28ub2lkKSBBUyBzZXFfdHVwX3JlYWQsCi0gICAgICAg IHBnX3N0YXRfZ2V0X3R1cGxlc19pbnNlcnRlZCh0c28ub2lkKSBBUyBuX3R1cF9pbnMsCi0g ICAgICAgIHBnX3N0YXRfZ2V0X3R1cGxlc191cGRhdGVkKHRzby5vaWQpIEFTIG5fdHVwX3Vw ZCwKLSAgICAgICAgcGdfc3RhdF9nZXRfdHVwbGVzX2RlbGV0ZWQodHNvLm9pZCkgQVMgbl90 dXBfZGVsLAotICAgICAgICBwZ19zdGF0X2dldF9saXZlX3R1cGxlcyh0c28ub2lkKSBBUyBu X2xpdmVfdHVwLAotICAgICAgICBwZ19zdGF0X2dldF9kZWFkX3R1cGxlcyh0c28ub2lkKSBB UyBuX2RlYWRfdHVwLAotICAgICAgICBwZ19zdGF0X2dldF92YWN1dW1fY291bnQodHNvLm9p ZCkgQVMgdmFjdXVtX2NvdW50CisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl90dXBsZXNfaW5z ZXJ0ZWQodHNvLm9pZCkgQVMgbl90dXBfaW5zLAorICAgICAgICBwZ19zdGF0X2dldF90YWJf dHVwbGVzX3VwZGF0ZWQodHNvLm9pZCkgQVMgbl90dXBfdXBkLAorICAgICAgICBwZ19zdGF0 X2dldF90YWJfdHVwbGVzX2RlbGV0ZWQodHNvLm9pZCkgQVMgbl90dXBfZGVsLAorICAgICAg ICBwZ19zdGF0X2dldF90YWJfbGl2ZV90dXBsZXModHNvLm9pZCkgQVMgbl9saXZlX3R1cCwK KyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX2RlYWRfdHVwbGVzKHRzby5vaWQpIEFTIG5fZGVh ZF90dXAsCisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl92YWN1dW1fY291bnQodHNvLm9pZCkg QVMgdmFjdXVtX2NvdW50CiAgICAgRlJPTSB0ZXN0X3N0YXRfb2lkIEFTIHRzbwogICAgIFdI RVJFIHRzby5uYW1lID0gJ3Rlc3Rfc3RhdF90YWInCiAKQEAgLTI4OTksMTQgKzI4OTksMTQg QEAgcGdfc3RhdF9mb3JjZV9uZXh0X2ZsdXNoCiAKIHN0ZXAgczFfdGFibGVfc3RhdHM6IAog ICAgIFNFTEVDVAotICAgICAgICBwZ19zdGF0X2dldF9udW1zY2Fucyh0c28ub2lkKSBBUyBz ZXFfc2NhbiwKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX251bXNjYW5zKHRzby5vaWQpIEFT IHNlcV9zY2FuLAogICAgICAgICBwZ19zdGF0X2dldF90dXBsZXNfcmV0dXJuZWQodHNvLm9p ZCkgQVMgc2VxX3R1cF9yZWFkLAotICAgICAgICBwZ19zdGF0X2dldF90dXBsZXNfaW5zZXJ0 ZWQodHNvLm9pZCkgQVMgbl90dXBfaW5zLAotICAgICAgICBwZ19zdGF0X2dldF90dXBsZXNf dXBkYXRlZCh0c28ub2lkKSBBUyBuX3R1cF91cGQsCi0gICAgICAgIHBnX3N0YXRfZ2V0X3R1 cGxlc19kZWxldGVkKHRzby5vaWQpIEFTIG5fdHVwX2RlbCwKLSAgICAgICAgcGdfc3RhdF9n ZXRfbGl2ZV90dXBsZXModHNvLm9pZCkgQVMgbl9saXZlX3R1cCwKLSAgICAgICAgcGdfc3Rh dF9nZXRfZGVhZF90dXBsZXModHNvLm9pZCkgQVMgbl9kZWFkX3R1cCwKLSAgICAgICAgcGdf c3RhdF9nZXRfdmFjdXVtX2NvdW50KHRzby5vaWQpIEFTIHZhY3V1bV9jb3VudAorICAgICAg ICBwZ19zdGF0X2dldF90YWJfdHVwbGVzX2luc2VydGVkKHRzby5vaWQpIEFTIG5fdHVwX2lu cywKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX3R1cGxlc191cGRhdGVkKHRzby5vaWQpIEFT IG5fdHVwX3VwZCwKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX3R1cGxlc19kZWxldGVkKHRz by5vaWQpIEFTIG5fdHVwX2RlbCwKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX2xpdmVfdHVw bGVzKHRzby5vaWQpIEFTIG5fbGl2ZV90dXAsCisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl9k ZWFkX3R1cGxlcyh0c28ub2lkKSBBUyBuX2RlYWRfdHVwLAorICAgICAgICBwZ19zdGF0X2dl dF90YWJfdmFjdXVtX2NvdW50KHRzby5vaWQpIEFTIHZhY3V1bV9jb3VudAogICAgIEZST00g dGVzdF9zdGF0X29pZCBBUyB0c28KICAgICBXSEVSRSB0c28ubmFtZSA9ICd0ZXN0X3N0YXRf dGFiJwogCkBAIC0yOTQ3LDE0ICsyOTQ3LDE0IEBAIHBnX3N0YXRfZm9yY2VfbmV4dF9mbHVz aAogCiBzdGVwIHMxX3RhYmxlX3N0YXRzOiAKICAgICBTRUxFQ1QKLSAgICAgICAgcGdfc3Rh dF9nZXRfbnVtc2NhbnModHNvLm9pZCkgQVMgc2VxX3NjYW4sCisgICAgICAgIHBnX3N0YXRf Z2V0X3RhYl9udW1zY2Fucyh0c28ub2lkKSBBUyBzZXFfc2NhbiwKICAgICAgICAgcGdfc3Rh dF9nZXRfdHVwbGVzX3JldHVybmVkKHRzby5vaWQpIEFTIHNlcV90dXBfcmVhZCwKLSAgICAg ICAgcGdfc3RhdF9nZXRfdHVwbGVzX2luc2VydGVkKHRzby5vaWQpIEFTIG5fdHVwX2lucywK LSAgICAgICAgcGdfc3RhdF9nZXRfdHVwbGVzX3VwZGF0ZWQodHNvLm9pZCkgQVMgbl90dXBf dXBkLAotICAgICAgICBwZ19zdGF0X2dldF90dXBsZXNfZGVsZXRlZCh0c28ub2lkKSBBUyBu X3R1cF9kZWwsCi0gICAgICAgIHBnX3N0YXRfZ2V0X2xpdmVfdHVwbGVzKHRzby5vaWQpIEFT IG5fbGl2ZV90dXAsCi0gICAgICAgIHBnX3N0YXRfZ2V0X2RlYWRfdHVwbGVzKHRzby5vaWQp IEFTIG5fZGVhZF90dXAsCi0gICAgICAgIHBnX3N0YXRfZ2V0X3ZhY3V1bV9jb3VudCh0c28u b2lkKSBBUyB2YWN1dW1fY291bnQKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX3R1cGxlc19p bnNlcnRlZCh0c28ub2lkKSBBUyBuX3R1cF9pbnMsCisgICAgICAgIHBnX3N0YXRfZ2V0X3Rh Yl90dXBsZXNfdXBkYXRlZCh0c28ub2lkKSBBUyBuX3R1cF91cGQsCisgICAgICAgIHBnX3N0 YXRfZ2V0X3RhYl90dXBsZXNfZGVsZXRlZCh0c28ub2lkKSBBUyBuX3R1cF9kZWwsCisgICAg ICAgIHBnX3N0YXRfZ2V0X3RhYl9saXZlX3R1cGxlcyh0c28ub2lkKSBBUyBuX2xpdmVfdHVw LAorICAgICAgICBwZ19zdGF0X2dldF90YWJfZGVhZF90dXBsZXModHNvLm9pZCkgQVMgbl9k ZWFkX3R1cCwKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX3ZhY3V1bV9jb3VudCh0c28ub2lk KSBBUyB2YWN1dW1fY291bnQKICAgICBGUk9NIHRlc3Rfc3RhdF9vaWQgQVMgdHNvCiAgICAg V0hFUkUgdHNvLm5hbWUgPSAndGVzdF9zdGF0X3RhYicKIApAQCAtMjk5MCwxNCArMjk5MCwx NCBAQCBwZ19zdGF0X2ZvcmNlX25leHRfZmx1c2gKIAogc3RlcCBzMV90YWJsZV9zdGF0czog CiAgICAgU0VMRUNUCi0gICAgICAgIHBnX3N0YXRfZ2V0X251bXNjYW5zKHRzby5vaWQpIEFT IHNlcV9zY2FuLAorICAgICAgICBwZ19zdGF0X2dldF90YWJfbnVtc2NhbnModHNvLm9pZCkg QVMgc2VxX3NjYW4sCiAgICAgICAgIHBnX3N0YXRfZ2V0X3R1cGxlc19yZXR1cm5lZCh0c28u b2lkKSBBUyBzZXFfdHVwX3JlYWQsCi0gICAgICAgIHBnX3N0YXRfZ2V0X3R1cGxlc19pbnNl cnRlZCh0c28ub2lkKSBBUyBuX3R1cF9pbnMsCi0gICAgICAgIHBnX3N0YXRfZ2V0X3R1cGxl c191cGRhdGVkKHRzby5vaWQpIEFTIG5fdHVwX3VwZCwKLSAgICAgICAgcGdfc3RhdF9nZXRf dHVwbGVzX2RlbGV0ZWQodHNvLm9pZCkgQVMgbl90dXBfZGVsLAotICAgICAgICBwZ19zdGF0 X2dldF9saXZlX3R1cGxlcyh0c28ub2lkKSBBUyBuX2xpdmVfdHVwLAotICAgICAgICBwZ19z dGF0X2dldF9kZWFkX3R1cGxlcyh0c28ub2lkKSBBUyBuX2RlYWRfdHVwLAotICAgICAgICBw Z19zdGF0X2dldF92YWN1dW1fY291bnQodHNvLm9pZCkgQVMgdmFjdXVtX2NvdW50CisgICAg ICAgIHBnX3N0YXRfZ2V0X3RhYl90dXBsZXNfaW5zZXJ0ZWQodHNvLm9pZCkgQVMgbl90dXBf aW5zLAorICAgICAgICBwZ19zdGF0X2dldF90YWJfdHVwbGVzX3VwZGF0ZWQodHNvLm9pZCkg QVMgbl90dXBfdXBkLAorICAgICAgICBwZ19zdGF0X2dldF90YWJfdHVwbGVzX2RlbGV0ZWQo dHNvLm9pZCkgQVMgbl90dXBfZGVsLAorICAgICAgICBwZ19zdGF0X2dldF90YWJfbGl2ZV90 dXBsZXModHNvLm9pZCkgQVMgbl9saXZlX3R1cCwKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFi X2RlYWRfdHVwbGVzKHRzby5vaWQpIEFTIG5fZGVhZF90dXAsCisgICAgICAgIHBnX3N0YXRf Z2V0X3RhYl92YWN1dW1fY291bnQodHNvLm9pZCkgQVMgdmFjdXVtX2NvdW50CiAgICAgRlJP TSB0ZXN0X3N0YXRfb2lkIEFTIHRzbwogICAgIFdIRVJFIHRzby5uYW1lID0gJ3Rlc3Rfc3Rh dF90YWInCiAKQEAgLTMwMzksMTQgKzMwMzksMTQgQEAgcGdfc3RhdF9mb3JjZV9uZXh0X2Zs dXNoCiAKIHN0ZXAgczFfdGFibGVfc3RhdHM6IAogICAgIFNFTEVDVAotICAgICAgICBwZ19z dGF0X2dldF9udW1zY2Fucyh0c28ub2lkKSBBUyBzZXFfc2NhbiwKKyAgICAgICAgcGdfc3Rh dF9nZXRfdGFiX251bXNjYW5zKHRzby5vaWQpIEFTIHNlcV9zY2FuLAogICAgICAgICBwZ19z dGF0X2dldF90dXBsZXNfcmV0dXJuZWQodHNvLm9pZCkgQVMgc2VxX3R1cF9yZWFkLAotICAg ICAgICBwZ19zdGF0X2dldF90dXBsZXNfaW5zZXJ0ZWQodHNvLm9pZCkgQVMgbl90dXBfaW5z LAotICAgICAgICBwZ19zdGF0X2dldF90dXBsZXNfdXBkYXRlZCh0c28ub2lkKSBBUyBuX3R1 cF91cGQsCi0gICAgICAgIHBnX3N0YXRfZ2V0X3R1cGxlc19kZWxldGVkKHRzby5vaWQpIEFT IG5fdHVwX2RlbCwKLSAgICAgICAgcGdfc3RhdF9nZXRfbGl2ZV90dXBsZXModHNvLm9pZCkg QVMgbl9saXZlX3R1cCwKLSAgICAgICAgcGdfc3RhdF9nZXRfZGVhZF90dXBsZXModHNvLm9p ZCkgQVMgbl9kZWFkX3R1cCwKLSAgICAgICAgcGdfc3RhdF9nZXRfdmFjdXVtX2NvdW50KHRz by5vaWQpIEFTIHZhY3V1bV9jb3VudAorICAgICAgICBwZ19zdGF0X2dldF90YWJfdHVwbGVz X2luc2VydGVkKHRzby5vaWQpIEFTIG5fdHVwX2lucywKKyAgICAgICAgcGdfc3RhdF9nZXRf dGFiX3R1cGxlc191cGRhdGVkKHRzby5vaWQpIEFTIG5fdHVwX3VwZCwKKyAgICAgICAgcGdf c3RhdF9nZXRfdGFiX3R1cGxlc19kZWxldGVkKHRzby5vaWQpIEFTIG5fdHVwX2RlbCwKKyAg ICAgICAgcGdfc3RhdF9nZXRfdGFiX2xpdmVfdHVwbGVzKHRzby5vaWQpIEFTIG5fbGl2ZV90 dXAsCisgICAgICAgIHBnX3N0YXRfZ2V0X3RhYl9kZWFkX3R1cGxlcyh0c28ub2lkKSBBUyBu X2RlYWRfdHVwLAorICAgICAgICBwZ19zdGF0X2dldF90YWJfdmFjdXVtX2NvdW50KHRzby5v aWQpIEFTIHZhY3V1bV9jb3VudAogICAgIEZST00gdGVzdF9zdGF0X29pZCBBUyB0c28KICAg ICBXSEVSRSB0c28ubmFtZSA9ICd0ZXN0X3N0YXRfdGFiJwogCmRpZmYgLS1naXQgYS9zcmMv dGVzdC9pc29sYXRpb24vc3BlY3Mvc3RhdHMuc3BlYyBiL3NyYy90ZXN0L2lzb2xhdGlvbi9z cGVjcy9zdGF0cy5zcGVjCmluZGV4IDViOTIyZDc4OGMuLjUzZDc4ZjdkYjEgMTAwNjQ0Ci0t LSBhL3NyYy90ZXN0L2lzb2xhdGlvbi9zcGVjcy9zdGF0cy5zcGVjCisrKyBiL3NyYy90ZXN0 L2lzb2xhdGlvbi9zcGVjcy9zdGF0cy5zcGVjCkBAIC05MywxNCArOTMsMTQgQEAgc3RlcCBz MV90YWJsZV9kcm9wIHsgRFJPUCBUQUJMRSB0ZXN0X3N0YXRfdGFiOyB9CiAKIHN0ZXAgczFf dGFibGVfc3RhdHMgewogICAgIFNFTEVDVAotICAgICAgICBwZ19zdGF0X2dldF9udW1zY2Fu cyh0c28ub2lkKSBBUyBzZXFfc2NhbiwKLSAgICAgICAgcGdfc3RhdF9nZXRfdHVwbGVzX3Jl dHVybmVkKHRzby5vaWQpIEFTIHNlcV90dXBfcmVhZCwKLSAgICAgICAgcGdfc3RhdF9nZXRf dHVwbGVzX2luc2VydGVkKHRzby5vaWQpIEFTIG5fdHVwX2lucywKLSAgICAgICAgcGdfc3Rh dF9nZXRfdHVwbGVzX3VwZGF0ZWQodHNvLm9pZCkgQVMgbl90dXBfdXBkLAotICAgICAgICBw Z19zdGF0X2dldF90dXBsZXNfZGVsZXRlZCh0c28ub2lkKSBBUyBuX3R1cF9kZWwsCi0gICAg ICAgIHBnX3N0YXRfZ2V0X2xpdmVfdHVwbGVzKHRzby5vaWQpIEFTIG5fbGl2ZV90dXAsCi0g ICAgICAgIHBnX3N0YXRfZ2V0X2RlYWRfdHVwbGVzKHRzby5vaWQpIEFTIG5fZGVhZF90dXAs Ci0gICAgICAgIHBnX3N0YXRfZ2V0X3ZhY3V1bV9jb3VudCh0c28ub2lkKSBBUyB2YWN1dW1f Y291bnQKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX251bXNjYW5zKHRzby5vaWQpIEFTIHNl cV9zY2FuLAorICAgICAgICBwZ19zdGF0X2dldF90YWJfdHVwbGVzX3JldHVybmVkKHRzby5v aWQpIEFTIHNlcV90dXBfcmVhZCwKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX3R1cGxlc19p bnNlcnRlZCh0c28ub2lkKSBBUyBuX3R1cF9pbnMsCisgICAgICAgIHBnX3N0YXRfZ2V0X3Rh Yl90dXBsZXNfdXBkYXRlZCh0c28ub2lkKSBBUyBuX3R1cF91cGQsCisgICAgICAgIHBnX3N0 YXRfZ2V0X3RhYl90dXBsZXNfZGVsZXRlZCh0c28ub2lkKSBBUyBuX3R1cF9kZWwsCisgICAg ICAgIHBnX3N0YXRfZ2V0X3RhYl9saXZlX3R1cGxlcyh0c28ub2lkKSBBUyBuX2xpdmVfdHVw LAorICAgICAgICBwZ19zdGF0X2dldF90YWJfZGVhZF90dXBsZXModHNvLm9pZCkgQVMgbl9k ZWFkX3R1cCwKKyAgICAgICAgcGdfc3RhdF9nZXRfdGFiX3ZhY3V1bV9jb3VudCh0c28ub2lk KSBBUyB2YWN1dW1fY291bnQKICAgICBGUk9NIHRlc3Rfc3RhdF9vaWQgQVMgdHNvCiAgICAg V0hFUkUgdHNvLm5hbWUgPSAndGVzdF9zdGF0X3RhYicKIH0KZGlmZiAtLWdpdCBhL3NyYy90 ZXN0L3JlY292ZXJ5L3QvMDI5X3N0YXRzX3Jlc3RhcnQucGwgYi9zcmMvdGVzdC9yZWNvdmVy eS90LzAyOV9zdGF0c19yZXN0YXJ0LnBsCmluZGV4IDgzZDY2NDdkMzIuLjhiMGI1OTc0MTkg MTAwNjQ0Ci0tLSBhL3NyYy90ZXN0L3JlY292ZXJ5L3QvMDI5X3N0YXRzX3Jlc3RhcnQucGwK KysrIGIvc3JjL3Rlc3QvcmVjb3ZlcnkvdC8wMjlfc3RhdHNfcmVzdGFydC5wbApAQCAtNDMs OCArNDMsOCBAQCBteSAkc2VjdCA9ICJpbml0aWFsIjsKIGlzKGhhdmVfc3RhdHMoJ2RhdGFi YXNlJywgJGRib2lkLCAwKSwgJ3QnLCAiJHNlY3Q6IGRiIHN0YXRzIGRvIGV4aXN0Iik7CiBp cyhoYXZlX3N0YXRzKCdmdW5jdGlvbicsICRkYm9pZCwgJGZ1bmNvaWQpLAogCSd0JywgIiRz ZWN0OiBmdW5jdGlvbiBzdGF0cyBkbyBleGlzdCIpOwotaXMoaGF2ZV9zdGF0cygncmVsYXRp b24nLCAkZGJvaWQsICR0YWJsZW9pZCksCi0JJ3QnLCAiJHNlY3Q6IHJlbGF0aW9uIHN0YXRz IGRvIGV4aXN0Iik7CitpcyhoYXZlX3N0YXRzKCd0YWJsZScsICRkYm9pZCwgJHRhYmxlb2lk KSwKKwkndCcsICIkc2VjdDogdGFibGUgc3RhdHMgZG8gZXhpc3QiKTsKIAogIyByZWd1bGFy IHNodXRkb3duCiAkbm9kZS0+c3RvcCgpOwpAQCAtNjcsOCArNjcsOCBAQCAkc2VjdCA9ICJj b3B5IjsKIGlzKGhhdmVfc3RhdHMoJ2RhdGFiYXNlJywgJGRib2lkLCAwKSwgJ3QnLCAiJHNl Y3Q6IGRiIHN0YXRzIGRvIGV4aXN0Iik7CiBpcyhoYXZlX3N0YXRzKCdmdW5jdGlvbicsICRk Ym9pZCwgJGZ1bmNvaWQpLAogCSd0JywgIiRzZWN0OiBmdW5jdGlvbiBzdGF0cyBkbyBleGlz dCIpOwotaXMoaGF2ZV9zdGF0cygncmVsYXRpb24nLCAkZGJvaWQsICR0YWJsZW9pZCksCi0J J3QnLCAiJHNlY3Q6IHJlbGF0aW9uIHN0YXRzIGRvIGV4aXN0Iik7CitpcyhoYXZlX3N0YXRz KCd0YWJsZScsICRkYm9pZCwgJHRhYmxlb2lkKSwKKwkndCcsICIkc2VjdDogdGFibGUgc3Rh dHMgZG8gZXhpc3QiKTsKIAogJG5vZGUtPnN0b3AoJ2ltbWVkaWF0ZScpOwogCkBAIC04NCw4 ICs4NCw4IEBAICRzZWN0ID0gInBvc3QgaW1tZWRpYXRlIjsKIGlzKGhhdmVfc3RhdHMoJ2Rh dGFiYXNlJywgJGRib2lkLCAwKSwgJ2YnLCAiJHNlY3Q6IGRiIHN0YXRzIGRvIG5vdCBleGlz dCIpOwogaXMoaGF2ZV9zdGF0cygnZnVuY3Rpb24nLCAkZGJvaWQsICRmdW5jb2lkKSwKIAkn ZicsICIkc2VjdDogZnVuY3Rpb24gc3RhdHMgZG8gZXhpc3QiKTsKLWlzKGhhdmVfc3RhdHMo J3JlbGF0aW9uJywgJGRib2lkLCAkdGFibGVvaWQpLAotCSdmJywgIiRzZWN0OiByZWxhdGlv biBzdGF0cyBkbyBub3QgZXhpc3QiKTsKK2lzKGhhdmVfc3RhdHMoJ3RhYmxlJywgJGRib2lk LCAkdGFibGVvaWQpLAorCSdmJywgIiRzZWN0OiB0YWJsZSBzdGF0cyBkbyBub3QgZXhpc3Qi KTsKIAogIyBnZXQgcmlkIG9mIGJhY2t1cCBzdGF0c2ZpbGUKIHVubGluayAkc3RhdHNmaWxl IG9yIGRpZSAiY2Fubm90IHVubGluayAkc3RhdHNmaWxlICQhIjsKQEAgLTk4LDggKzk4LDgg QEAgJHNlY3QgPSAicG9zdCBpbW1lZGlhdGUsIG5ldyI7CiBpcyhoYXZlX3N0YXRzKCdkYXRh YmFzZScsICRkYm9pZCwgMCksICd0JywgIiRzZWN0OiBkYiBzdGF0cyBkbyBleGlzdCIpOwog aXMoaGF2ZV9zdGF0cygnZnVuY3Rpb24nLCAkZGJvaWQsICRmdW5jb2lkKSwKIAkndCcsICIk c2VjdDogZnVuY3Rpb24gc3RhdHMgZG8gZXhpc3QiKTsKLWlzKGhhdmVfc3RhdHMoJ3JlbGF0 aW9uJywgJGRib2lkLCAkdGFibGVvaWQpLAotCSd0JywgIiRzZWN0OiByZWxhdGlvbiBzdGF0 cyBkbyBleGlzdCIpOworaXMoaGF2ZV9zdGF0cygndGFibGUnLCAkZGJvaWQsICR0YWJsZW9p ZCksCisJJ3QnLCAiJHNlY3Q6IHRhYmxlIHN0YXRzIGRvIGV4aXN0Iik7CiAKICMgcmVndWxh ciBzaHV0ZG93bgogJG5vZGUtPnN0b3AoKTsKQEAgLTExNyw4ICsxMTcsNyBAQCAkc2VjdCA9 ICJpbnZhbGlkX292ZXJ3cml0ZSI7CiBpcyhoYXZlX3N0YXRzKCdkYXRhYmFzZScsICRkYm9p ZCwgMCksICdmJywgIiRzZWN0OiBkYiBzdGF0cyBkbyBub3QgZXhpc3QiKTsKIGlzKGhhdmVf c3RhdHMoJ2Z1bmN0aW9uJywgJGRib2lkLCAkZnVuY29pZCksCiAJJ2YnLCAiJHNlY3Q6IGZ1 bmN0aW9uIHN0YXRzIGRvIG5vdCBleGlzdCIpOwotaXMoaGF2ZV9zdGF0cygncmVsYXRpb24n LCAkZGJvaWQsICR0YWJsZW9pZCksCi0JJ2YnLCAiJHNlY3Q6IHJlbGF0aW9uIHN0YXRzIGRv IG5vdCBleGlzdCIpOworaXMoaGF2ZV9zdGF0cygndGFibGUnLCAkZGJvaWQsICR0YWJsZW9p ZCksICdmJywgIiRzZWN0OiB0YWJsZSBkbyBub3QgZXhpc3QiKTsKIAogCiAjIyBjaGVjayBp bnZhbGlkIHN0YXRzIGZpbGUgc3RhcnRpbmcgd2l0aCB2YWxpZCBjb250ZW50cywgYnV0IGZv bGxvd2VkIGJ5CkBAIC0xMzMsOCArMTMyLDggQEAgJHNlY3QgPSAiaW52YWxpZF9hcHBlbmQi OwogaXMoaGF2ZV9zdGF0cygnZGF0YWJhc2UnLCAkZGJvaWQsIDApLCAnZicsICIkc2VjdDog ZGIgc3RhdHMgZG8gbm90IGV4aXN0Iik7CiBpcyhoYXZlX3N0YXRzKCdmdW5jdGlvbicsICRk Ym9pZCwgJGZ1bmNvaWQpLAogCSdmJywgIiRzZWN0OiBmdW5jdGlvbiBzdGF0cyBkbyBub3Qg ZXhpc3QiKTsKLWlzKGhhdmVfc3RhdHMoJ3JlbGF0aW9uJywgJGRib2lkLCAkdGFibGVvaWQp LAotCSdmJywgIiRzZWN0OiByZWxhdGlvbiBzdGF0cyBkbyBub3QgZXhpc3QiKTsKK2lzKGhh dmVfc3RhdHMoJ3RhYmxlJywgJGRib2lkLCAkdGFibGVvaWQpLAorCSdmJywgIiRzZWN0OiB0 YWJsZSBzdGF0cyBkbyBub3QgZXhpc3QiKTsKIAogCiAjIyBjaGVja3MgcmVsYXRlZCB0byBz dGF0cyBwZXJzaXN0ZW5jeSBhcm91bmQgcmVzdGFydHMgYW5kIHJlc2V0cwpkaWZmIC0tZ2l0 IGEvc3JjL3Rlc3QvcmVjb3ZlcnkvdC8wMzBfc3RhdHNfY2xlYW51cF9yZXBsaWNhLnBsIGIv c3JjL3Rlc3QvcmVjb3ZlcnkvdC8wMzBfc3RhdHNfY2xlYW51cF9yZXBsaWNhLnBsCmluZGV4 IDUxNDk1YWViY2QuLjA0MmFlNTVmMTcgMTAwNjQ0Ci0tLSBhL3NyYy90ZXN0L3JlY292ZXJ5 L3QvMDMwX3N0YXRzX2NsZWFudXBfcmVwbGljYS5wbAorKysgYi9zcmMvdGVzdC9yZWNvdmVy eS90LzAzMF9zdGF0c19jbGVhbnVwX3JlcGxpY2EucGwKQEAgLTE3OSw3ICsxNzksNyBAQCBz dWIgdGVzdF9zdGFuZGJ5X2Z1bmNfdGFiX3N0YXRzX3N0YXR1cwogCW15ICVzdGF0czsKIAog CSRzdGF0c3tyZWx9ID0gJG5vZGVfc3RhbmRieS0+c2FmZV9wc3FsKCRjb25uZWN0X2RiLAot CQkiU0VMRUNUIHBnX3N0YXRfaGF2ZV9zdGF0cygncmVsYXRpb24nLCAkZGJvaWQsICR0YWJs ZW9pZCkiKTsKKwkJIlNFTEVDVCBwZ19zdGF0X2hhdmVfc3RhdHMoJ3RhYmxlJywgJGRib2lk LCAkdGFibGVvaWQpIik7CiAJJHN0YXRze2Z1bmN9ID0gJG5vZGVfc3RhbmRieS0+c2FmZV9w c3FsKCRjb25uZWN0X2RiLAogCQkiU0VMRUNUIHBnX3N0YXRfaGF2ZV9zdGF0cygnZnVuY3Rp b24nLCAkZGJvaWQsICRmdW5jb2lkKSIpOwogCmRpZmYgLS1naXQgYS9zcmMvdGVzdC9yZWdy ZXNzL2V4cGVjdGVkL3J1bGVzLm91dCBiL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvcnVs ZXMub3V0CmluZGV4IGU5NTNkMWY1MTUuLjVkNjIxOWZiNTEgMTAwNjQ0Ci0tLSBhL3NyYy90 ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvcnVsZXMub3V0CisrKyBiL3NyYy90ZXN0L3JlZ3Jlc3Mv ZXhwZWN0ZWQvcnVsZXMub3V0CkBAIC0xNzY3LDEwICsxNzY3LDEwIEBAIHBnX3N0YXRfYWxs X2luZGV4ZXN8IFNFTEVDVCBjLm9pZCBBUyByZWxpZCwKICAgICBuLm5zcG5hbWUgQVMgc2No ZW1hbmFtZSwKICAgICBjLnJlbG5hbWUsCiAgICAgaS5yZWxuYW1lIEFTIGluZGV4cmVsbmFt ZSwKLSAgICBwZ19zdGF0X2dldF9udW1zY2FucyhpLm9pZCkgQVMgaWR4X3NjYW4sCi0gICAg cGdfc3RhdF9nZXRfbGFzdHNjYW4oaS5vaWQpIEFTIGxhc3RfaWR4X3NjYW4sCi0gICAgcGdf c3RhdF9nZXRfdHVwbGVzX3JldHVybmVkKGkub2lkKSBBUyBpZHhfdHVwX3JlYWQsCi0gICAg cGdfc3RhdF9nZXRfdHVwbGVzX2ZldGNoZWQoaS5vaWQpIEFTIGlkeF90dXBfZmV0Y2gKKyAg ICBwZ19zdGF0X2dldF9pbmRfbnVtc2NhbnMoaS5vaWQpIEFTIGlkeF9zY2FuLAorICAgIHBn X3N0YXRfZ2V0X2luZF9sYXN0c2NhbihpLm9pZCkgQVMgbGFzdF9pZHhfc2NhbiwKKyAgICBw Z19zdGF0X2dldF9pbmRfdHVwbGVzX3JldHVybmVkKGkub2lkKSBBUyBpZHhfdHVwX3JlYWQs CisgICAgcGdfc3RhdF9nZXRfaW5kX3R1cGxlc19mZXRjaGVkKGkub2lkKSBBUyBpZHhfdHVw X2ZldGNoCiAgICBGUk9NICgoKHBnX2NsYXNzIGMKICAgICAgSk9JTiBwZ19pbmRleCB4IE9O ICgoYy5vaWQgPSB4LmluZHJlbGlkKSkpCiAgICAgIEpPSU4gcGdfY2xhc3MgaSBPTiAoKGku b2lkID0geC5pbmRleHJlbGlkKSkpCkBAIC0xNzc5LDI4ICsxNzc5LDI4IEBAIHBnX3N0YXRf YWxsX2luZGV4ZXN8IFNFTEVDVCBjLm9pZCBBUyByZWxpZCwKIHBnX3N0YXRfYWxsX3RhYmxl c3wgU0VMRUNUIGMub2lkIEFTIHJlbGlkLAogICAgIG4ubnNwbmFtZSBBUyBzY2hlbWFuYW1l LAogICAgIGMucmVsbmFtZSwKLSAgICBwZ19zdGF0X2dldF9udW1zY2FucyhjLm9pZCkgQVMg c2VxX3NjYW4sCi0gICAgcGdfc3RhdF9nZXRfbGFzdHNjYW4oYy5vaWQpIEFTIGxhc3Rfc2Vx X3NjYW4sCi0gICAgcGdfc3RhdF9nZXRfdHVwbGVzX3JldHVybmVkKGMub2lkKSBBUyBzZXFf dHVwX3JlYWQsCi0gICAgKHN1bShwZ19zdGF0X2dldF9udW1zY2FucyhpLmluZGV4cmVsaWQp KSk6OmJpZ2ludCBBUyBpZHhfc2NhbiwKLSAgICBtYXgocGdfc3RhdF9nZXRfbGFzdHNjYW4o aS5pbmRleHJlbGlkKSkgQVMgbGFzdF9pZHhfc2NhbiwKLSAgICAoKHN1bShwZ19zdGF0X2dl dF90dXBsZXNfZmV0Y2hlZChpLmluZGV4cmVsaWQpKSk6OmJpZ2ludCArIHBnX3N0YXRfZ2V0 X3R1cGxlc19mZXRjaGVkKGMub2lkKSkgQVMgaWR4X3R1cF9mZXRjaCwKLSAgICBwZ19zdGF0 X2dldF90dXBsZXNfaW5zZXJ0ZWQoYy5vaWQpIEFTIG5fdHVwX2lucywKLSAgICBwZ19zdGF0 X2dldF90dXBsZXNfdXBkYXRlZChjLm9pZCkgQVMgbl90dXBfdXBkLAotICAgIHBnX3N0YXRf Z2V0X3R1cGxlc19kZWxldGVkKGMub2lkKSBBUyBuX3R1cF9kZWwsCi0gICAgcGdfc3RhdF9n ZXRfdHVwbGVzX2hvdF91cGRhdGVkKGMub2lkKSBBUyBuX3R1cF9ob3RfdXBkLAotICAgIHBn X3N0YXRfZ2V0X2xpdmVfdHVwbGVzKGMub2lkKSBBUyBuX2xpdmVfdHVwLAotICAgIHBnX3N0 YXRfZ2V0X2RlYWRfdHVwbGVzKGMub2lkKSBBUyBuX2RlYWRfdHVwLAotICAgIHBnX3N0YXRf Z2V0X21vZF9zaW5jZV9hbmFseXplKGMub2lkKSBBUyBuX21vZF9zaW5jZV9hbmFseXplLAot ICAgIHBnX3N0YXRfZ2V0X2luc19zaW5jZV92YWN1dW0oYy5vaWQpIEFTIG5faW5zX3NpbmNl X3ZhY3V1bSwKLSAgICBwZ19zdGF0X2dldF9sYXN0X3ZhY3V1bV90aW1lKGMub2lkKSBBUyBs YXN0X3ZhY3V1bSwKLSAgICBwZ19zdGF0X2dldF9sYXN0X2F1dG92YWN1dW1fdGltZShjLm9p ZCkgQVMgbGFzdF9hdXRvdmFjdXVtLAotICAgIHBnX3N0YXRfZ2V0X2xhc3RfYW5hbHl6ZV90 aW1lKGMub2lkKSBBUyBsYXN0X2FuYWx5emUsCi0gICAgcGdfc3RhdF9nZXRfbGFzdF9hdXRv YW5hbHl6ZV90aW1lKGMub2lkKSBBUyBsYXN0X2F1dG9hbmFseXplLAotICAgIHBnX3N0YXRf Z2V0X3ZhY3V1bV9jb3VudChjLm9pZCkgQVMgdmFjdXVtX2NvdW50LAotICAgIHBnX3N0YXRf Z2V0X2F1dG92YWN1dW1fY291bnQoYy5vaWQpIEFTIGF1dG92YWN1dW1fY291bnQsCi0gICAg cGdfc3RhdF9nZXRfYW5hbHl6ZV9jb3VudChjLm9pZCkgQVMgYW5hbHl6ZV9jb3VudCwKLSAg ICBwZ19zdGF0X2dldF9hdXRvYW5hbHl6ZV9jb3VudChjLm9pZCkgQVMgYXV0b2FuYWx5emVf Y291bnQKKyAgICBwZ19zdGF0X2dldF90YWJfbnVtc2NhbnMoYy5vaWQpIEFTIHNlcV9zY2Fu LAorICAgIHBnX3N0YXRfZ2V0X3RhYl9sYXN0c2NhbihjLm9pZCkgQVMgbGFzdF9zZXFfc2Nh biwKKyAgICBwZ19zdGF0X2dldF90YWJfdHVwbGVzX3JldHVybmVkKGMub2lkKSBBUyBzZXFf dHVwX3JlYWQsCisgICAgKHN1bShwZ19zdGF0X2dldF9pbmRfbnVtc2NhbnMoaS5pbmRleHJl bGlkKSkpOjpiaWdpbnQgQVMgaWR4X3NjYW4sCisgICAgbWF4KHBnX3N0YXRfZ2V0X2luZF9s YXN0c2NhbihpLmluZGV4cmVsaWQpKSBBUyBsYXN0X2lkeF9zY2FuLAorICAgICgoc3VtKHBn X3N0YXRfZ2V0X2luZF90dXBsZXNfZmV0Y2hlZChpLmluZGV4cmVsaWQpKSk6OmJpZ2ludCAr IHBnX3N0YXRfZ2V0X3RhYl90dXBsZXNfZmV0Y2hlZChjLm9pZCkpIEFTIGlkeF90dXBfZmV0 Y2gsCisgICAgcGdfc3RhdF9nZXRfdGFiX3R1cGxlc19pbnNlcnRlZChjLm9pZCkgQVMgbl90 dXBfaW5zLAorICAgIHBnX3N0YXRfZ2V0X3RhYl90dXBsZXNfdXBkYXRlZChjLm9pZCkgQVMg bl90dXBfdXBkLAorICAgIHBnX3N0YXRfZ2V0X3RhYl90dXBsZXNfZGVsZXRlZChjLm9pZCkg QVMgbl90dXBfZGVsLAorICAgIHBnX3N0YXRfZ2V0X3RhYl90dXBsZXNfaG90X3VwZGF0ZWQo Yy5vaWQpIEFTIG5fdHVwX2hvdF91cGQsCisgICAgcGdfc3RhdF9nZXRfdGFiX2xpdmVfdHVw bGVzKGMub2lkKSBBUyBuX2xpdmVfdHVwLAorICAgIHBnX3N0YXRfZ2V0X3RhYl9kZWFkX3R1 cGxlcyhjLm9pZCkgQVMgbl9kZWFkX3R1cCwKKyAgICBwZ19zdGF0X2dldF90YWJfbW9kX3Np bmNlX2FuYWx5emUoYy5vaWQpIEFTIG5fbW9kX3NpbmNlX2FuYWx5emUsCisgICAgcGdfc3Rh dF9nZXRfdGFiX2luc19zaW5jZV92YWN1dW0oYy5vaWQpIEFTIG5faW5zX3NpbmNlX3ZhY3V1 bSwKKyAgICBwZ19zdGF0X2dldF90YWJfbGFzdF92YWN1dW1fdGltZShjLm9pZCkgQVMgbGFz dF92YWN1dW0sCisgICAgcGdfc3RhdF9nZXRfdGFiX2xhc3RfYXV0b3ZhY3V1bV90aW1lKGMu b2lkKSBBUyBsYXN0X2F1dG92YWN1dW0sCisgICAgcGdfc3RhdF9nZXRfdGFiX2xhc3RfYW5h bHl6ZV90aW1lKGMub2lkKSBBUyBsYXN0X2FuYWx5emUsCisgICAgcGdfc3RhdF9nZXRfdGFi X2xhc3RfYXV0b2FuYWx5emVfdGltZShjLm9pZCkgQVMgbGFzdF9hdXRvYW5hbHl6ZSwKKyAg ICBwZ19zdGF0X2dldF90YWJfdmFjdXVtX2NvdW50KGMub2lkKSBBUyB2YWN1dW1fY291bnQs CisgICAgcGdfc3RhdF9nZXRfdGFiX2F1dG92YWN1dW1fY291bnQoYy5vaWQpIEFTIGF1dG92 YWN1dW1fY291bnQsCisgICAgcGdfc3RhdF9nZXRfdGFiX2FuYWx5emVfY291bnQoYy5vaWQp IEFTIGFuYWx5emVfY291bnQsCisgICAgcGdfc3RhdF9nZXRfdGFiX2F1dG9hbmFseXplX2Nv dW50KGMub2lkKSBBUyBhdXRvYW5hbHl6ZV9jb3VudAogICAgRlJPTSAoKHBnX2NsYXNzIGMK ICAgICAgTEVGVCBKT0lOIHBnX2luZGV4IGkgT04gKChjLm9pZCA9IGkuaW5kcmVsaWQpKSkK ICAgICAgTEVGVCBKT0lOIHBnX25hbWVzcGFjZSBuIE9OICgobi5vaWQgPSBjLnJlbG5hbWVz cGFjZSkpKQpAQCAtMjIzNyw5ICsyMjM3LDkgQEAgcGdfc3RhdF93YWxfcmVjZWl2ZXJ8IFNF TEVDVCBwaWQsCiBwZ19zdGF0X3hhY3RfYWxsX3RhYmxlc3wgU0VMRUNUIGMub2lkIEFTIHJl bGlkLAogICAgIG4ubnNwbmFtZSBBUyBzY2hlbWFuYW1lLAogICAgIGMucmVsbmFtZSwKLSAg ICBwZ19zdGF0X2dldF94YWN0X251bXNjYW5zKGMub2lkKSBBUyBzZXFfc2NhbiwKKyAgICBw Z19zdGF0X2dldF90YWJfeGFjdF9udW1zY2FucyhjLm9pZCkgQVMgc2VxX3NjYW4sCiAgICAg cGdfc3RhdF9nZXRfeGFjdF90dXBsZXNfcmV0dXJuZWQoYy5vaWQpIEFTIHNlcV90dXBfcmVh ZCwKLSAgICAoc3VtKHBnX3N0YXRfZ2V0X3hhY3RfbnVtc2NhbnMoaS5pbmRleHJlbGlkKSkp OjpiaWdpbnQgQVMgaWR4X3NjYW4sCisgICAgKHN1bShwZ19zdGF0X2dldF9pbmRfeGFjdF9u dW1zY2FucyhpLmluZGV4cmVsaWQpKSk6OmJpZ2ludCBBUyBpZHhfc2NhbiwKICAgICAoKHN1 bShwZ19zdGF0X2dldF94YWN0X3R1cGxlc19mZXRjaGVkKGkuaW5kZXhyZWxpZCkpKTo6Ymln aW50ICsgcGdfc3RhdF9nZXRfeGFjdF90dXBsZXNfZmV0Y2hlZChjLm9pZCkpIEFTIGlkeF90 dXBfZmV0Y2gsCiAgICAgcGdfc3RhdF9nZXRfeGFjdF90dXBsZXNfaW5zZXJ0ZWQoYy5vaWQp IEFTIG5fdHVwX2lucywKICAgICBwZ19zdGF0X2dldF94YWN0X3R1cGxlc191cGRhdGVkKGMu b2lkKSBBUyBuX3R1cF91cGQsCkBAIC0yMjkwLDggKzIyOTAsOCBAQCBwZ19zdGF0aW9fYWxs X2luZGV4ZXN8IFNFTEVDVCBjLm9pZCBBUyByZWxpZCwKICAgICBuLm5zcG5hbWUgQVMgc2No ZW1hbmFtZSwKICAgICBjLnJlbG5hbWUsCiAgICAgaS5yZWxuYW1lIEFTIGluZGV4cmVsbmFt ZSwKLSAgICAocGdfc3RhdF9nZXRfYmxvY2tzX2ZldGNoZWQoaS5vaWQpIC0gcGdfc3RhdF9n ZXRfYmxvY2tzX2hpdChpLm9pZCkpIEFTIGlkeF9ibGtzX3JlYWQsCi0gICAgcGdfc3RhdF9n ZXRfYmxvY2tzX2hpdChpLm9pZCkgQVMgaWR4X2Jsa3NfaGl0CisgICAgKHBnX3N0YXRfZ2V0 X2luZF9ibG9ja3NfZmV0Y2hlZChpLm9pZCkgLSBwZ19zdGF0X2dldF9pbmRfYmxvY2tzX2hp dChpLm9pZCkpIEFTIGlkeF9ibGtzX3JlYWQsCisgICAgcGdfc3RhdF9nZXRfaW5kX2Jsb2Nr c19oaXQoaS5vaWQpIEFTIGlkeF9ibGtzX2hpdAogICAgRlJPTSAoKChwZ19jbGFzcyBjCiAg ICAgIEpPSU4gcGdfaW5kZXggeCBPTiAoKGMub2lkID0geC5pbmRyZWxpZCkpKQogICAgICBK T0lOIHBnX2NsYXNzIGkgT04gKChpLm9pZCA9IHguaW5kZXhyZWxpZCkpKQpAQCAtMjMwMCwz MSArMjMwMCwzMSBAQCBwZ19zdGF0aW9fYWxsX2luZGV4ZXN8IFNFTEVDVCBjLm9pZCBBUyBy ZWxpZCwKIHBnX3N0YXRpb19hbGxfc2VxdWVuY2VzfCBTRUxFQ1QgYy5vaWQgQVMgcmVsaWQs CiAgICAgbi5uc3BuYW1lIEFTIHNjaGVtYW5hbWUsCiAgICAgYy5yZWxuYW1lLAotICAgIChw Z19zdGF0X2dldF9ibG9ja3NfZmV0Y2hlZChjLm9pZCkgLSBwZ19zdGF0X2dldF9ibG9ja3Nf aGl0KGMub2lkKSkgQVMgYmxrc19yZWFkLAotICAgIHBnX3N0YXRfZ2V0X2Jsb2Nrc19oaXQo Yy5vaWQpIEFTIGJsa3NfaGl0CisgICAgKHBnX3N0YXRfZ2V0X2luZF9ibG9ja3NfZmV0Y2hl ZChjLm9pZCkgLSBwZ19zdGF0X2dldF90YWJfYmxvY2tzX2hpdChjLm9pZCkpIEFTIGJsa3Nf cmVhZCwKKyAgICBwZ19zdGF0X2dldF90YWJfYmxvY2tzX2hpdChjLm9pZCkgQVMgYmxrc19o aXQKICAgIEZST00gKHBnX2NsYXNzIGMKICAgICAgTEVGVCBKT0lOIHBnX25hbWVzcGFjZSBu IE9OICgobi5vaWQgPSBjLnJlbG5hbWVzcGFjZSkpKQogICBXSEVSRSAoYy5yZWxraW5kID0g J1MnOjoiY2hhciIpOwogcGdfc3RhdGlvX2FsbF90YWJsZXN8IFNFTEVDVCBjLm9pZCBBUyBy ZWxpZCwKICAgICBuLm5zcG5hbWUgQVMgc2NoZW1hbmFtZSwKICAgICBjLnJlbG5hbWUsCi0g ICAgKHBnX3N0YXRfZ2V0X2Jsb2Nrc19mZXRjaGVkKGMub2lkKSAtIHBnX3N0YXRfZ2V0X2Js b2Nrc19oaXQoYy5vaWQpKSBBUyBoZWFwX2Jsa3NfcmVhZCwKLSAgICBwZ19zdGF0X2dldF9i bG9ja3NfaGl0KGMub2lkKSBBUyBoZWFwX2Jsa3NfaGl0LAorICAgIChwZ19zdGF0X2dldF90 YWJfYmxvY2tzX2ZldGNoZWQoYy5vaWQpIC0gcGdfc3RhdF9nZXRfdGFiX2Jsb2Nrc19oaXQo Yy5vaWQpKSBBUyBoZWFwX2Jsa3NfcmVhZCwKKyAgICBwZ19zdGF0X2dldF90YWJfYmxvY2tz X2hpdChjLm9pZCkgQVMgaGVhcF9ibGtzX2hpdCwKICAgICBpLmlkeF9ibGtzX3JlYWQsCiAg ICAgaS5pZHhfYmxrc19oaXQsCi0gICAgKHBnX3N0YXRfZ2V0X2Jsb2Nrc19mZXRjaGVkKHQu b2lkKSAtIHBnX3N0YXRfZ2V0X2Jsb2Nrc19oaXQodC5vaWQpKSBBUyB0b2FzdF9ibGtzX3Jl YWQsCi0gICAgcGdfc3RhdF9nZXRfYmxvY2tzX2hpdCh0Lm9pZCkgQVMgdG9hc3RfYmxrc19o aXQsCisgICAgKHBnX3N0YXRfZ2V0X3RhYl9ibG9ja3NfZmV0Y2hlZCh0Lm9pZCkgLSBwZ19z dGF0X2dldF90YWJfYmxvY2tzX2hpdCh0Lm9pZCkpIEFTIHRvYXN0X2Jsa3NfcmVhZCwKKyAg ICBwZ19zdGF0X2dldF90YWJfYmxvY2tzX2hpdCh0Lm9pZCkgQVMgdG9hc3RfYmxrc19oaXQs CiAgICAgeC5pZHhfYmxrc19yZWFkIEFTIHRpZHhfYmxrc19yZWFkLAogICAgIHguaWR4X2Js a3NfaGl0IEFTIHRpZHhfYmxrc19oaXQKICAgIEZST00gKCgoKHBnX2NsYXNzIGMKICAgICAg TEVGVCBKT0lOIHBnX2NsYXNzIHQgT04gKChjLnJlbHRvYXN0cmVsaWQgPSB0Lm9pZCkpKQog ICAgICBMRUZUIEpPSU4gcGdfbmFtZXNwYWNlIG4gT04gKChuLm9pZCA9IGMucmVsbmFtZXNw YWNlKSkpCi0gICAgIExFRlQgSk9JTiBMQVRFUkFMICggU0VMRUNUIChzdW0oKHBnX3N0YXRf Z2V0X2Jsb2Nrc19mZXRjaGVkKHBnX2luZGV4LmluZGV4cmVsaWQpIC0gcGdfc3RhdF9nZXRf YmxvY2tzX2hpdChwZ19pbmRleC5pbmRleHJlbGlkKSkpKTo6YmlnaW50IEFTIGlkeF9ibGtz X3JlYWQsCi0gICAgICAgICAgICAoc3VtKHBnX3N0YXRfZ2V0X2Jsb2Nrc19oaXQocGdfaW5k ZXguaW5kZXhyZWxpZCkpKTo6YmlnaW50IEFTIGlkeF9ibGtzX2hpdAorICAgICBMRUZUIEpP SU4gTEFURVJBTCAoIFNFTEVDVCAoc3VtKChwZ19zdGF0X2dldF9pbmRfYmxvY2tzX2ZldGNo ZWQocGdfaW5kZXguaW5kZXhyZWxpZCkgLSBwZ19zdGF0X2dldF9pbmRfYmxvY2tzX2hpdChw Z19pbmRleC5pbmRleHJlbGlkKSkpKTo6YmlnaW50IEFTIGlkeF9ibGtzX3JlYWQsCisgICAg ICAgICAgICAoc3VtKHBnX3N0YXRfZ2V0X2luZF9ibG9ja3NfaGl0KHBnX2luZGV4LmluZGV4 cmVsaWQpKSk6OmJpZ2ludCBBUyBpZHhfYmxrc19oaXQKICAgICAgICAgICAgRlJPTSBwZ19p bmRleAogICAgICAgICAgIFdIRVJFIChwZ19pbmRleC5pbmRyZWxpZCA9IGMub2lkKSkgaSBP TiAodHJ1ZSkpCi0gICAgIExFRlQgSk9JTiBMQVRFUkFMICggU0VMRUNUIChzdW0oKHBnX3N0 YXRfZ2V0X2Jsb2Nrc19mZXRjaGVkKHBnX2luZGV4LmluZGV4cmVsaWQpIC0gcGdfc3RhdF9n ZXRfYmxvY2tzX2hpdChwZ19pbmRleC5pbmRleHJlbGlkKSkpKTo6YmlnaW50IEFTIGlkeF9i bGtzX3JlYWQsCi0gICAgICAgICAgICAoc3VtKHBnX3N0YXRfZ2V0X2Jsb2Nrc19oaXQocGdf aW5kZXguaW5kZXhyZWxpZCkpKTo6YmlnaW50IEFTIGlkeF9ibGtzX2hpdAorICAgICBMRUZU IEpPSU4gTEFURVJBTCAoIFNFTEVDVCAoc3VtKChwZ19zdGF0X2dldF9pbmRfYmxvY2tzX2Zl dGNoZWQocGdfaW5kZXguaW5kZXhyZWxpZCkgLSBwZ19zdGF0X2dldF9pbmRfYmxvY2tzX2hp dChwZ19pbmRleC5pbmRleHJlbGlkKSkpKTo6YmlnaW50IEFTIGlkeF9ibGtzX3JlYWQsCisg ICAgICAgICAgICAoc3VtKHBnX3N0YXRfZ2V0X2luZF9ibG9ja3NfaGl0KHBnX2luZGV4Lmlu ZGV4cmVsaWQpKSk6OmJpZ2ludCBBUyBpZHhfYmxrc19oaXQKICAgICAgICAgICAgRlJPTSBw Z19pbmRleAogICAgICAgICAgIFdIRVJFIChwZ19pbmRleC5pbmRyZWxpZCA9IHQub2lkKSkg eCBPTiAodHJ1ZSkpCiAgIFdIRVJFIChjLnJlbGtpbmQgPSBBTlkgKEFSUkFZWydyJzo6ImNo YXIiLCAndCc6OiJjaGFyIiwgJ20nOjoiY2hhciJdKSk7CmRpZmYgLS1naXQgYS9zcmMvdGVz dC9yZWdyZXNzL2V4cGVjdGVkL3N0YXRzLm91dCBiL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0 ZWQvc3RhdHMub3V0CmluZGV4IDE4NmMyOTYyOTkuLmE4MjExOTIwMDQgMTAwNjQ0Ci0tLSBh L3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvc3RhdHMub3V0CisrKyBiL3NyYy90ZXN0L3Jl Z3Jlc3MvZXhwZWN0ZWQvc3RhdHMub3V0CkBAIC0xNTEsNiArMTUxLDExNyBAQCBGUk9NIHBy ZXZzdGF0cyBBUyBwcjsKIAogQ09NTUlUOwogLS0tLQorLS0gQmFzaWMgdGVzdHMgZm9yIHRv YXN0CistLS0KK0NSRUFURSBUQUJMRSBzdGF0c190b2FzdChzdHVmZiB0ZXh0KTsKK0FMVEVS IFRBQkxFIHN0YXRzX3RvYXN0IEFMVEVSIENPTFVNTiBzdHVmZiBTRVQgU1RPUkFHRSBFWFRF Uk5BTDsKK0lOU0VSVCBJTlRPIHN0YXRzX3RvYXN0IFZBTFVFUyAocmVwZWF0KCdhJywxMDAw MDAwKSk7CitTRUxFQ1QgY291bnQoKikgRlJPTSBzdGF0c190b2FzdCBXSEVSRSBzdHVmZiBs aWtlICclYSUnOworIGNvdW50IAorLS0tLS0tLQorICAgICAxCisoMSByb3cpCisKKy0tIGVu c3VyZSBwZW5kaW5nIHN0YXRzIGFyZSBmbHVzaGVkCitTRUxFQ1QgcGdfc3RhdF9mb3JjZV9u ZXh0X2ZsdXNoKCk7CisgcGdfc3RhdF9mb3JjZV9uZXh0X2ZsdXNoIAorLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0KKyAKKygxIHJvdykKKworc2VsZWN0IHRvYXN0X2Jsa3NfcmVhZCA+ IDAgYXMgdG9hc3RfYmxrc19yZWFkLCB0b2FzdF9ibGtzX2hpdCA+IDAgYXMgdG9hc3RfYmxr c19oaXQsCisgICAgICAgdGlkeF9ibGtzX3JlYWQgPiAwIGFzIHRpZHhfYmxrc19yZWFkLCB0 aWR4X2Jsa3NfaGl0ID4gMCBhcyB0aWR4X2Jsa3NfaGl0LAorICAgICAgIHRvYXN0X2Jsa3Nf aGl0ID49IHRvYXN0X2Jsa3NfcmVhZCwKKyAgICAgICB0aWR4X2Jsa3NfaGl0ID49IHRpZHhf Ymxrc19yZWFkCisgICBmcm9tIHBnX3N0YXRpb19hbGxfdGFibGVzCisgd2hlcmUgcmVsbmFt ZSA9ICdzdGF0c190b2FzdCc7CisgdG9hc3RfYmxrc19yZWFkIHwgdG9hc3RfYmxrc19oaXQg fCB0aWR4X2Jsa3NfcmVhZCB8IHRpZHhfYmxrc19oaXQgfCA/Y29sdW1uPyB8ID9jb2x1bW4/ IAorLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKy0tLS0tLS0tLS0KKyB0ICAgICAgICAgICAg ICAgfCB0ICAgICAgICAgICAgICB8IHQgICAgICAgICAgICAgIHwgdCAgICAgICAgICAgICB8 IHQgICAgICAgIHwgdAorKDEgcm93KQorCistLS0tCistLSBCYXNpYyB0ZXN0cyBmb3IgcGFy dGl0aW9uCistLS0KK0NSRUFURSBUQUJMRSBzdGF0c19wYXJ0aXRpb24gKAorICAgIGlkMSAg ICAgICAgIGludCBub3QgbnVsbCwKKyAgICBpZDIgICAgICAgICBpbnQgbm90IG51bGwKKykg UEFSVElUSU9OIEJZIFJBTkdFIChpZDIpOworQ1JFQVRFIFRBQkxFIHN0YXRzX3BhcnRpdGlv bl81IFBBUlRJVElPTiBPRiBzdGF0c19wYXJ0aXRpb24KKyAgICBGT1IgVkFMVUVTIEZST00g KDApIFRPICg1KTsKK0NSRUFURSBUQUJMRSBzdGF0c19wYXJ0aXRpb25fMjAwMDAgUEFSVElU SU9OIE9GIHN0YXRzX3BhcnRpdGlvbgorICAgIEZPUiBWQUxVRVMgRlJPTSAoNSkgVE8gKDIw MDAxKTsKK0NSRUFURSBJTkRFWCBPTiBzdGF0c19wYXJ0aXRpb24gKGlkMik7CitpbnNlcnQg aW50byBzdGF0c19wYXJ0aXRpb24gc2VsZWN0IGEsYSBmcm9tIGdlbmVyYXRlX3Nlcmllcygw LDIwMDAwKSBhOworU0VUIGVuYWJsZV9zZXFzY2FuIFRPIG9mZjsKK1NFVCBlbmFibGVfYml0 bWFwc2NhbiBUTyBvZmY7CitzZWxlY3QgKiBmcm9tIHN0YXRzX3BhcnRpdGlvbiB3aGVyZSBp ZDIgPSAyMDAwOworIGlkMSAgfCBpZDIgIAorLS0tLS0tKy0tLS0tLQorIDIwMDAgfCAyMDAw CisoMSByb3cpCisKK3NlbGVjdCAqIGZyb20gc3RhdHNfcGFydGl0aW9uIHdoZXJlIGlkMiA9 IDI7CisgaWQxIHwgaWQyIAorLS0tLS0rLS0tLS0KKyAgIDIgfCAgIDIKKygxIHJvdykKKwor LS0gZW5zdXJlIHBlbmRpbmcgc3RhdHMgYXJlIGZsdXNoZWQKK1NFTEVDVCBwZ19zdGF0X2Zv cmNlX25leHRfZmx1c2goKTsKKyBwZ19zdGF0X2ZvcmNlX25leHRfZmx1c2ggCistLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLQorIAorKDEgcm93KQorCitzZWxlY3QgcmVsbmFtZSwgaW5k ZXhyZWxuYW1lLCBpZHhfc2NhbiA+IDAgYXMgaWR4X3NjYW4sIGlkeF90dXBfcmVhZCA+IDAg YXMgaWR4X3R1cF9yZWFkLAorICAgICAgIGlkeF90dXBfZmV0Y2ggPiAwIGFzIGlkeF90dXBf ZmV0Y2gKKyAgIGZyb20gcGdfc3RhdF9hbGxfaW5kZXhlcworIHdoZXJlIHJlbG5hbWUgbGlr ZSAnJXN0YXRzX3BhcnRpdGlvbiUnCisgb3JkZXIgYnkgcmVsbmFtZSBDT0xMQVRFICJDIjsK KyAgICAgICAgcmVsbmFtZSAgICAgICAgfCAgICAgICAgIGluZGV4cmVsbmFtZSAgICAgICAg ICB8IGlkeF9zY2FuIHwgaWR4X3R1cF9yZWFkIHwgaWR4X3R1cF9mZXRjaCAKKy0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0t LS0tLSstLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0KKyBzdGF0c19wYXJ0aXRpb25f MjAwMDAgfCBzdGF0c19wYXJ0aXRpb25fMjAwMDBfaWQyX2lkeCB8IHQgICAgICAgIHwgdCAg ICAgICAgICAgIHwgdAorIHN0YXRzX3BhcnRpdGlvbl81ICAgICB8IHN0YXRzX3BhcnRpdGlv bl81X2lkMl9pZHggICAgIHwgdCAgICAgICAgfCB0ICAgICAgICAgICAgfCB0CisoMiByb3dz KQorCitzZWxlY3QgcmVsbmFtZSwgaW5kZXhyZWxuYW1lLCBpZHhfYmxrc19yZWFkID4gMCBh cyBpZHhfYmxrc19yZWFkLAorICAgICAgIGlkeF9ibGtzX2hpdCA+IDAgYXMgaWR4X2Jsa3Nf aGl0CisgICBmcm9tIHBnX3N0YXRpb19hbGxfaW5kZXhlcworIHdoZXJlIHJlbG5hbWUgbGlr ZSAnJXN0YXRzX3BhcnRpdGlvbiUnCisgb3JkZXIgYnkgcmVsbmFtZSBDT0xMQVRFICJDIjsK KyAgICAgICAgcmVsbmFtZSAgICAgICAgfCAgICAgICAgIGluZGV4cmVsbmFtZSAgICAgICAg ICB8IGlkeF9ibGtzX3JlYWQgfCBpZHhfYmxrc19oaXQgCistLS0tLS0tLS0tLS0tLS0tLS0t LS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLSst LS0tLS0tLS0tLS0tLQorIHN0YXRzX3BhcnRpdGlvbl8yMDAwMCB8IHN0YXRzX3BhcnRpdGlv bl8yMDAwMF9pZDJfaWR4IHwgdCAgICAgICAgICAgICB8IHQKKyBzdGF0c19wYXJ0aXRpb25f NSAgICAgfCBzdGF0c19wYXJ0aXRpb25fNV9pZDJfaWR4ICAgICB8IHQgICAgICAgICAgICAg fCB0CisoMiByb3dzKQorCitzZWxlY3QgcmVsbmFtZSxzZXFfc2NhbiA+IDAgYXMgc2VxX3Nj YW4sIHNlcV90dXBfcmVhZCA+IDAgYXMgc2VxX3R1cF9yZWFkLAorICAgICAgIGlkeF9zY2Fu ID4gMCBhcyBpZHhfc2NhbiwgaWR4X3R1cF9mZXRjaCA+IDAgYXMgaWR4X3R1cF9mZXRjaAor ICAgZnJvbSBwZ19zdGF0X2FsbF90YWJsZXMKKyAgd2hlcmUgcmVsbmFtZSBsaWtlICclc3Rh dHNfcGFydGl0aW9uJScKKyAgb3JkZXIgYnkgcmVsbmFtZSBDT0xMQVRFICJDIjsKKyAgICAg ICAgcmVsbmFtZSAgICAgICAgfCBzZXFfc2NhbiB8IHNlcV90dXBfcmVhZCB8IGlkeF9zY2Fu IHwgaWR4X3R1cF9mZXRjaCAKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0KKyBzdGF0c19wYXJ0 aXRpb24gICAgICAgfCBmICAgICAgICB8IGYgICAgICAgICAgICB8IGYgICAgICAgIHwgZgor IHN0YXRzX3BhcnRpdGlvbl8yMDAwMCB8IHQgICAgICAgIHwgZiAgICAgICAgICAgIHwgdCAg ICAgICAgfCB0Cisgc3RhdHNfcGFydGl0aW9uXzUgICAgIHwgdCAgICAgICAgfCBmICAgICAg ICAgICAgfCB0ICAgICAgICB8IHQKKygzIHJvd3MpCisKK3NlbGVjdCByZWxuYW1lLCBoZWFw X2Jsa3NfcmVhZCA+IDAgYXMgaGVhcF9ibGtzX3JlYWQsIGhlYXBfYmxrc19oaXQgPiAwIGFz IGhlYXBfYmxrc19oaXQsCisgICAgICAgaWR4X2Jsa3NfcmVhZCA+IDAgYXMgaWR4X2Jsa3Nf cmVhZCwgaWR4X2Jsa3NfaGl0ID4gMCBhcyBpZHhfYmxrc19oaXQKKyAgIGZyb20gcGdfc3Rh dGlvX2FsbF90YWJsZXMKKyB3aGVyZSByZWxuYW1lIGxpa2UgJyVzdGF0c19wYXJ0aXRpb24l JworIG9yZGVyIGJ5IHJlbG5hbWUgQ09MTEFURSAiQyI7CisgICAgICAgIHJlbG5hbWUgICAg ICAgIHwgaGVhcF9ibGtzX3JlYWQgfCBoZWFwX2Jsa3NfaGl0IHwgaWR4X2Jsa3NfcmVhZCB8 IGlkeF9ibGtzX2hpdCAKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLQorIHN0 YXRzX3BhcnRpdGlvbl8yMDAwMCB8IHQgICAgICAgICAgICAgIHwgdCAgICAgICAgICAgICB8 IHQgICAgICAgICAgICAgfCB0Cisgc3RhdHNfcGFydGl0aW9uXzUgICAgIHwgdCAgICAgICAg ICAgICAgfCB0ICAgICAgICAgICAgIHwgdCAgICAgICAgICAgICB8IHQKKygyIHJvd3MpCisK K1NFVCBlbmFibGVfc2Vxc2NhbiBUTyBvbjsKK1NFVCBlbmFibGVfYml0bWFwc2NhbiBUTyBv bjsKKy0tLS0KIC0tIEJhc2ljIHRlc3RzIGZvciB0cmFja19mdW5jdGlvbnMKIC0tLQogQ1JF QVRFIEZVTkNUSU9OIHN0YXRzX3Rlc3RfZnVuYzEoKSBSRVRVUk5TIFZPSUQgTEFOR1VBR0Ug cGxwZ3NxbCBBUyAkJEJFR0lOIEVORDskJDsKQEAgLTM1NywxNyArNDY4LDE3IEBAIFNFTEVD VCBwZ19zdGF0X2ZvcmNlX25leHRfZmx1c2goKTsKICAKICgxIHJvdykKIAotU0VMRUNUIHBn X3N0YXRfZ2V0X2xpdmVfdHVwbGVzKDpkcm9wX3N0YXRzX3Rlc3Rfb2lkKTsKLSBwZ19zdGF0 X2dldF9saXZlX3R1cGxlcyAKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLSAgICAgICAg ICAgICAgICAgICAgICAgMQorU0VMRUNUIHBnX3N0YXRfZ2V0X3RhYl9saXZlX3R1cGxlcyg6 ZHJvcF9zdGF0c190ZXN0X29pZCk7CisgcGdfc3RhdF9nZXRfdGFiX2xpdmVfdHVwbGVzIAor LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAgICAgICAgICAgICAgICAgICAgICAg ICAgIDEKICgxIHJvdykKIAogRFJPUCBUQUJMRSBkcm9wX3N0YXRzX3Rlc3Q7Ci1TRUxFQ1Qg cGdfc3RhdF9nZXRfbGl2ZV90dXBsZXMoOmRyb3Bfc3RhdHNfdGVzdF9vaWQpOwotIHBnX3N0 YXRfZ2V0X2xpdmVfdHVwbGVzIAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotICAgICAg ICAgICAgICAgICAgICAgICAwCitTRUxFQ1QgcGdfc3RhdF9nZXRfdGFiX2xpdmVfdHVwbGVz KDpkcm9wX3N0YXRzX3Rlc3Rfb2lkKTsKKyBwZ19zdGF0X2dldF90YWJfbGl2ZV90dXBsZXMg CistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorICAgICAgICAgICAgICAgICAgICAg ICAgICAgMAogKDEgcm93KQogCiBTRUxFQ1QgcGdfc3RhdF9nZXRfeGFjdF90dXBsZXNfaW5z ZXJ0ZWQoOmRyb3Bfc3RhdHNfdGVzdF9vaWQpOwpAQCAtMzc4LDE4ICs0ODksMTggQEAgU0VM RUNUIHBnX3N0YXRfZ2V0X3hhY3RfdHVwbGVzX2luc2VydGVkKDpkcm9wX3N0YXRzX3Rlc3Rf b2lkKTsKIAogLS0gY2hlY2sgdGhhdCByb2xsYmFjayBwcm90ZWN0cyBhZ2FpbnN0IGhhdmlu ZyBzdGF0cyBkcm9wcGVkIGFuZCB0aGF0IGxvY2FsCiAtLSBtb2RpZmljYXRpb25zIGRvbid0 IHBvc2UgYSBwcm9ibGVtCi1TRUxFQ1QgcGdfc3RhdF9nZXRfbGl2ZV90dXBsZXMoOmRyb3Bf c3RhdHNfdGVzdF94YWN0X29pZCk7Ci0gcGdfc3RhdF9nZXRfbGl2ZV90dXBsZXMgCi0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0gICAgICAgICAgICAgICAgICAgICAgIDEKLSgxIHJv dykKLQotU0VMRUNUIHBnX3N0YXRfZ2V0X3R1cGxlc19pbnNlcnRlZCg6ZHJvcF9zdGF0c190 ZXN0X3hhY3Rfb2lkKTsKLSBwZ19zdGF0X2dldF90dXBsZXNfaW5zZXJ0ZWQgCitTRUxFQ1Qg cGdfc3RhdF9nZXRfdGFiX2xpdmVfdHVwbGVzKDpkcm9wX3N0YXRzX3Rlc3RfeGFjdF9vaWQp OworIHBnX3N0YXRfZ2V0X3RhYl9saXZlX3R1cGxlcyAKIC0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAxCiAoMSByb3cpCiAKK1NF TEVDVCBwZ19zdGF0X2dldF90YWJfdHVwbGVzX2luc2VydGVkKDpkcm9wX3N0YXRzX3Rlc3Rf eGFjdF9vaWQpOworIHBnX3N0YXRfZ2V0X3RhYl90dXBsZXNfaW5zZXJ0ZWQgCistLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAxCisoMSByb3cpCisKIFNFTEVDVCBwZ19zdGF0X2dldF94YWN0X3R1cGxlc19pbnNl cnRlZCg6ZHJvcF9zdGF0c190ZXN0X3hhY3Rfb2lkKTsKICBwZ19zdGF0X2dldF94YWN0X3R1 cGxlc19pbnNlcnRlZCAKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KQEAg LTQxOCwyOSArNTI5LDI5IEBAIFNFTEVDVCBwZ19zdGF0X2ZvcmNlX25leHRfZmx1c2goKTsK ICAKICgxIHJvdykKIAotU0VMRUNUIHBnX3N0YXRfZ2V0X2xpdmVfdHVwbGVzKDpkcm9wX3N0 YXRzX3Rlc3RfeGFjdF9vaWQpOwotIHBnX3N0YXRfZ2V0X2xpdmVfdHVwbGVzIAotLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLQotICAgICAgICAgICAgICAgICAgICAgICAxCitTRUxFQ1Qg cGdfc3RhdF9nZXRfdGFiX2xpdmVfdHVwbGVzKDpkcm9wX3N0YXRzX3Rlc3RfeGFjdF9vaWQp OworIHBnX3N0YXRfZ2V0X3RhYl9saXZlX3R1cGxlcyAKKy0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tCisgICAgICAgICAgICAgICAgICAgICAgICAgICAxCiAoMSByb3cpCiAKLVNF TEVDVCBwZ19zdGF0X2dldF90dXBsZXNfaW5zZXJ0ZWQoOmRyb3Bfc3RhdHNfdGVzdF94YWN0 X29pZCk7Ci0gcGdfc3RhdF9nZXRfdHVwbGVzX2luc2VydGVkIAotLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgIDIKK1NFTEVDVCBw Z19zdGF0X2dldF90YWJfdHVwbGVzX2luc2VydGVkKDpkcm9wX3N0YXRzX3Rlc3RfeGFjdF9v aWQpOworIHBnX3N0YXRfZ2V0X3RhYl90dXBsZXNfaW5zZXJ0ZWQgCistLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAy CiAoMSByb3cpCiAKIC0tIHRyYW5zYWN0aW9uYWwgZHJvcAotU0VMRUNUIHBnX3N0YXRfZ2V0 X2xpdmVfdHVwbGVzKDpkcm9wX3N0YXRzX3Rlc3RfeGFjdF9vaWQpOwotIHBnX3N0YXRfZ2V0 X2xpdmVfdHVwbGVzIAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotICAgICAgICAgICAg ICAgICAgICAgICAxCitTRUxFQ1QgcGdfc3RhdF9nZXRfdGFiX2xpdmVfdHVwbGVzKDpkcm9w X3N0YXRzX3Rlc3RfeGFjdF9vaWQpOworIHBnX3N0YXRfZ2V0X3RhYl9saXZlX3R1cGxlcyAK Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgICAgICAgICAgICAgICAgICAgICAg ICAgICAxCiAoMSByb3cpCiAKLVNFTEVDVCBwZ19zdGF0X2dldF90dXBsZXNfaW5zZXJ0ZWQo OmRyb3Bfc3RhdHNfdGVzdF94YWN0X29pZCk7Ci0gcGdfc3RhdF9nZXRfdHVwbGVzX2luc2Vy dGVkIAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLSAgICAgICAgICAgICAgICAg ICAgICAgICAgIDIKK1NFTEVDVCBwZ19zdGF0X2dldF90YWJfdHVwbGVzX2luc2VydGVkKDpk cm9wX3N0YXRzX3Rlc3RfeGFjdF9vaWQpOworIHBnX3N0YXRfZ2V0X3RhYl90dXBsZXNfaW5z ZXJ0ZWQgCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAyCiAoMSByb3cpCiAKIEJFR0lOOwpAQCAtNDY1LDIzICs1 NzYsMjMgQEAgU0VMRUNUIHBnX3N0YXRfZm9yY2VfbmV4dF9mbHVzaCgpOwogIAogKDEgcm93 KQogCi1TRUxFQ1QgcGdfc3RhdF9nZXRfbGl2ZV90dXBsZXMoOmRyb3Bfc3RhdHNfdGVzdF94 YWN0X29pZCk7Ci0gcGdfc3RhdF9nZXRfbGl2ZV90dXBsZXMgCi0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tCi0gICAgICAgICAgICAgICAgICAgICAgIDAKLSgxIHJvdykKLQotU0VMRUNU IHBnX3N0YXRfZ2V0X3R1cGxlc19pbnNlcnRlZCg6ZHJvcF9zdGF0c190ZXN0X3hhY3Rfb2lk KTsKLSBwZ19zdGF0X2dldF90dXBsZXNfaW5zZXJ0ZWQgCitTRUxFQ1QgcGdfc3RhdF9nZXRf dGFiX2xpdmVfdHVwbGVzKDpkcm9wX3N0YXRzX3Rlc3RfeGFjdF9vaWQpOworIHBnX3N0YXRf Z2V0X3RhYl9saXZlX3R1cGxlcyAKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAwCiAoMSByb3cpCiAKK1NFTEVDVCBwZ19zdGF0 X2dldF90YWJfdHVwbGVzX2luc2VydGVkKDpkcm9wX3N0YXRzX3Rlc3RfeGFjdF9vaWQpOwor IHBnX3N0YXRfZ2V0X3RhYl90dXBsZXNfaW5zZXJ0ZWQgCistLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwCisoMSBy b3cpCisKIC0tIHNhdmVwb2ludCByb2xsYmFjayAoMiBsZXZlbHMpCi1TRUxFQ1QgcGdfc3Rh dF9nZXRfbGl2ZV90dXBsZXMoOmRyb3Bfc3RhdHNfdGVzdF9zdWJ4YWN0X29pZCk7Ci0gcGdf c3RhdF9nZXRfbGl2ZV90dXBsZXMgCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0gICAg ICAgICAgICAgICAgICAgICAgIDEKK1NFTEVDVCBwZ19zdGF0X2dldF90YWJfbGl2ZV90dXBs ZXMoOmRyb3Bfc3RhdHNfdGVzdF9zdWJ4YWN0X29pZCk7CisgcGdfc3RhdF9nZXRfdGFiX2xp dmVfdHVwbGVzIAorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAgICAgICAgICAg ICAgICAgICAgICAgICAgIDEKICgxIHJvdykKIAogQkVHSU47CkBAIC01MTAsMTcgKzYyMSwx NyBAQCBTRUxFQ1QgcGdfc3RhdF9mb3JjZV9uZXh0X2ZsdXNoKCk7CiAgCiAoMSByb3cpCiAK LVNFTEVDVCBwZ19zdGF0X2dldF9saXZlX3R1cGxlcyg6ZHJvcF9zdGF0c190ZXN0X3N1Ynhh Y3Rfb2lkKTsKLSBwZ19zdGF0X2dldF9saXZlX3R1cGxlcyAKLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0KLSAgICAgICAgICAgICAgICAgICAgICAgMworU0VMRUNUIHBnX3N0YXRfZ2V0 X3RhYl9saXZlX3R1cGxlcyg6ZHJvcF9zdGF0c190ZXN0X3N1YnhhY3Rfb2lkKTsKKyBwZ19z dGF0X2dldF90YWJfbGl2ZV90dXBsZXMgCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LQorICAgICAgICAgICAgICAgICAgICAgICAgICAgMwogKDEgcm93KQogCiAtLSBzYXZlcG9p bnQgcm9sYmFjayAoMSBsZXZlbCkKLVNFTEVDVCBwZ19zdGF0X2dldF9saXZlX3R1cGxlcyg6 ZHJvcF9zdGF0c190ZXN0X3N1YnhhY3Rfb2lkKTsKLSBwZ19zdGF0X2dldF9saXZlX3R1cGxl cyAKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLSAgICAgICAgICAgICAgICAgICAgICAg MworU0VMRUNUIHBnX3N0YXRfZ2V0X3RhYl9saXZlX3R1cGxlcyg6ZHJvcF9zdGF0c190ZXN0 X3N1YnhhY3Rfb2lkKTsKKyBwZ19zdGF0X2dldF90YWJfbGl2ZV90dXBsZXMgCistLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorICAgICAgICAgICAgICAgICAgICAgICAgICAgMwog KDEgcm93KQogCiBCRUdJTjsKQEAgLTUyOSwxNyArNjQwLDE3IEBAIERST1AgVEFCTEUgZHJv cF9zdGF0c190ZXN0X3N1YnhhY3Q7CiBTQVZFUE9JTlQgc3AyOwogUk9MTEJBQ0sgVE8gU0FW RVBPSU5UIHNwMTsKIENPTU1JVDsKLVNFTEVDVCBwZ19zdGF0X2dldF9saXZlX3R1cGxlcyg6 ZHJvcF9zdGF0c190ZXN0X3N1YnhhY3Rfb2lkKTsKLSBwZ19zdGF0X2dldF9saXZlX3R1cGxl cyAKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLSAgICAgICAgICAgICAgICAgICAgICAg MworU0VMRUNUIHBnX3N0YXRfZ2V0X3RhYl9saXZlX3R1cGxlcyg6ZHJvcF9zdGF0c190ZXN0 X3N1YnhhY3Rfb2lkKTsKKyBwZ19zdGF0X2dldF90YWJfbGl2ZV90dXBsZXMgCistLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorICAgICAgICAgICAgICAgICAgICAgICAgICAgMwog KDEgcm93KQogCiAtLSBhbmQgbm93IGFjdHVhbGx5IGRyb3AKLVNFTEVDVCBwZ19zdGF0X2dl dF9saXZlX3R1cGxlcyg6ZHJvcF9zdGF0c190ZXN0X3N1YnhhY3Rfb2lkKTsKLSBwZ19zdGF0 X2dldF9saXZlX3R1cGxlcyAKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLSAgICAgICAg ICAgICAgICAgICAgICAgMworU0VMRUNUIHBnX3N0YXRfZ2V0X3RhYl9saXZlX3R1cGxlcyg6 ZHJvcF9zdGF0c190ZXN0X3N1YnhhY3Rfb2lkKTsKKyBwZ19zdGF0X2dldF90YWJfbGl2ZV90 dXBsZXMgCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorICAgICAgICAgICAgICAg ICAgICAgICAgICAgMwogKDEgcm93KQogCiBCRUdJTjsKQEAgLTU0OCwxMCArNjU5LDEwIEBA IERST1AgVEFCTEUgZHJvcF9zdGF0c190ZXN0X3N1YnhhY3Q7CiBTQVZFUE9JTlQgc3AyOwog UkVMRUFTRSBTQVZFUE9JTlQgc3AxOwogQ09NTUlUOwotU0VMRUNUIHBnX3N0YXRfZ2V0X2xp dmVfdHVwbGVzKDpkcm9wX3N0YXRzX3Rlc3Rfc3VieGFjdF9vaWQpOwotIHBnX3N0YXRfZ2V0 X2xpdmVfdHVwbGVzIAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotICAgICAgICAgICAg ICAgICAgICAgICAwCitTRUxFQ1QgcGdfc3RhdF9nZXRfdGFiX2xpdmVfdHVwbGVzKDpkcm9w X3N0YXRzX3Rlc3Rfc3VieGFjdF9vaWQpOworIHBnX3N0YXRfZ2V0X3RhYl9saXZlX3R1cGxl cyAKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAwCiAoMSByb3cpCiAKIERST1AgVEFCTEUgdHJ1bmNfc3RhdHNfdGVzdCwgdHJ1 bmNfc3RhdHNfdGVzdDEsIHRydW5jX3N0YXRzX3Rlc3QyLCB0cnVuY19zdGF0c190ZXN0Mywg dHJ1bmNfc3RhdHNfdGVzdDQ7CkBAIC0xMDIxLDIxICsxMTMyLDIxIEBAIHNlbGVjdCBhIGZy b20gc3RhdHNfdGVzdF90YWIxIHdoZXJlIGEgPSAzOwogIDMKICgxIHJvdykKIAotU0VMRUNU IHBnX3N0YXRfaGF2ZV9zdGF0cygncmVsYXRpb24nLCA6ZGJvaWQsIDpzdGF0c190ZXN0X2lk eDFfb2lkKTsKK1NFTEVDVCBwZ19zdGF0X2hhdmVfc3RhdHMoJ2luZGV4JywgOmRib2lkLCA6 c3RhdHNfdGVzdF9pZHgxX29pZCk7CiAgcGdfc3RhdF9oYXZlX3N0YXRzIAogLS0tLS0tLS0t LS0tLS0tLS0tLS0KICB0CiAoMSByb3cpCiAKIC0tIHBnX3N0YXRfaGF2ZV9zdGF0cyByZXR1 cm5zIGZhbHNlIGZvciBkcm9wcGVkIGluZGV4IHdpdGggc3RhdHMKLVNFTEVDVCBwZ19zdGF0 X2hhdmVfc3RhdHMoJ3JlbGF0aW9uJywgOmRib2lkLCA6c3RhdHNfdGVzdF9pZHgxX29pZCk7 CitTRUxFQ1QgcGdfc3RhdF9oYXZlX3N0YXRzKCdpbmRleCcsIDpkYm9pZCwgOnN0YXRzX3Rl c3RfaWR4MV9vaWQpOwogIHBnX3N0YXRfaGF2ZV9zdGF0cyAKIC0tLS0tLS0tLS0tLS0tLS0t LS0tCiAgdAogKDEgcm93KQogCiBEUk9QIGluZGV4IHN0YXRzX3Rlc3RfaWR4MTsKLVNFTEVD VCBwZ19zdGF0X2hhdmVfc3RhdHMoJ3JlbGF0aW9uJywgOmRib2lkLCA6c3RhdHNfdGVzdF9p ZHgxX29pZCk7CitTRUxFQ1QgcGdfc3RhdF9oYXZlX3N0YXRzKCdpbmRleCcsIDpkYm9pZCwg OnN0YXRzX3Rlc3RfaWR4MV9vaWQpOwogIHBnX3N0YXRfaGF2ZV9zdGF0cyAKIC0tLS0tLS0t LS0tLS0tLS0tLS0tCiAgZgpAQCAtMTA1MSwxNCArMTE2MiwxNCBAQCBzZWxlY3QgYSBmcm9t IHN0YXRzX3Rlc3RfdGFiMSB3aGVyZSBhID0gMzsKICAzCiAoMSByb3cpCiAKLVNFTEVDVCBw Z19zdGF0X2hhdmVfc3RhdHMoJ3JlbGF0aW9uJywgOmRib2lkLCA6c3RhdHNfdGVzdF9pZHgx X29pZCk7CitTRUxFQ1QgcGdfc3RhdF9oYXZlX3N0YXRzKCdpbmRleCcsIDpkYm9pZCwgOnN0 YXRzX3Rlc3RfaWR4MV9vaWQpOwogIHBnX3N0YXRfaGF2ZV9zdGF0cyAKIC0tLS0tLS0tLS0t LS0tLS0tLS0tCiAgdAogKDEgcm93KQogCiBST0xMQkFDSzsKLVNFTEVDVCBwZ19zdGF0X2hh dmVfc3RhdHMoJ3JlbGF0aW9uJywgOmRib2lkLCA6c3RhdHNfdGVzdF9pZHgxX29pZCk7CitT RUxFQ1QgcGdfc3RhdF9oYXZlX3N0YXRzKCdpbmRleCcsIDpkYm9pZCwgOnN0YXRzX3Rlc3Rf aWR4MV9vaWQpOwogIHBnX3N0YXRfaGF2ZV9zdGF0cyAKIC0tLS0tLS0tLS0tLS0tLS0tLS0t CiAgZgpAQCAtMTA3Myw3ICsxMTg0LDcgQEAgc2VsZWN0IGEgZnJvbSBzdGF0c190ZXN0X3Rh YjEgd2hlcmUgYSA9IDM7CiAgMwogKDEgcm93KQogCi1TRUxFQ1QgcGdfc3RhdF9oYXZlX3N0 YXRzKCdyZWxhdGlvbicsIDpkYm9pZCwgOnN0YXRzX3Rlc3RfaWR4MV9vaWQpOworU0VMRUNU IHBnX3N0YXRfaGF2ZV9zdGF0cygnaW5kZXgnLCA6ZGJvaWQsIDpzdGF0c190ZXN0X2lkeDFf b2lkKTsKICBwZ19zdGF0X2hhdmVfc3RhdHMgCiAtLS0tLS0tLS0tLS0tLS0tLS0tLQogIHQK QEAgLTEwODEsNyArMTE5Miw3IEBAIFNFTEVDVCBwZ19zdGF0X2hhdmVfc3RhdHMoJ3JlbGF0 aW9uJywgOmRib2lkLCA6c3RhdHNfdGVzdF9pZHgxX29pZCk7CiAKIFJFSU5ERVggaW5kZXgg Q09OQ1VSUkVOVExZIHN0YXRzX3Rlc3RfaWR4MTsKIC0tIGZhbHNlIGZvciBwcmV2aW91cyBv aWQKLVNFTEVDVCBwZ19zdGF0X2hhdmVfc3RhdHMoJ3JlbGF0aW9uJywgOmRib2lkLCA6c3Rh dHNfdGVzdF9pZHgxX29pZCk7CitTRUxFQ1QgcGdfc3RhdF9oYXZlX3N0YXRzKCdpbmRleCcs IDpkYm9pZCwgOnN0YXRzX3Rlc3RfaWR4MV9vaWQpOwogIHBnX3N0YXRfaGF2ZV9zdGF0cyAK IC0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgZgpAQCAtMTA4OSw3ICsxMjAwLDcgQEAgU0VMRUNU IHBnX3N0YXRfaGF2ZV9zdGF0cygncmVsYXRpb24nLCA6ZGJvaWQsIDpzdGF0c190ZXN0X2lk eDFfb2lkKTsKIAogLS0gdHJ1ZSBmb3IgbmV3IG9pZAogU0VMRUNUICdzdGF0c190ZXN0X2lk eDEnOjpyZWdjbGFzczo6b2lkIEFTIHN0YXRzX3Rlc3RfaWR4MV9vaWQgXGdzZXQKLVNFTEVD VCBwZ19zdGF0X2hhdmVfc3RhdHMoJ3JlbGF0aW9uJywgOmRib2lkLCA6c3RhdHNfdGVzdF9p ZHgxX29pZCk7CitTRUxFQ1QgcGdfc3RhdF9oYXZlX3N0YXRzKCdpbmRleCcsIDpkYm9pZCwg OnN0YXRzX3Rlc3RfaWR4MV9vaWQpOwogIHBnX3N0YXRfaGF2ZV9zdGF0cyAKIC0tLS0tLS0t LS0tLS0tLS0tLS0tCiAgdApAQCAtMTA5Nyw3ICsxMjA4LDcgQEAgU0VMRUNUIHBnX3N0YXRf aGF2ZV9zdGF0cygncmVsYXRpb24nLCA6ZGJvaWQsIDpzdGF0c190ZXN0X2lkeDFfb2lkKTsK IAogLS0gcGdfc3RhdF9oYXZlX3N0YXRzIHJldHVybnMgdHJ1ZSBmb3IgYSByb2xsZWQgYmFj ayBkcm9wIGluZGV4IHdpdGggc3RhdHMKIEJFR0lOOwotU0VMRUNUIHBnX3N0YXRfaGF2ZV9z dGF0cygncmVsYXRpb24nLCA6ZGJvaWQsIDpzdGF0c190ZXN0X2lkeDFfb2lkKTsKK1NFTEVD VCBwZ19zdGF0X2hhdmVfc3RhdHMoJ2luZGV4JywgOmRib2lkLCA6c3RhdHNfdGVzdF9pZHgx X29pZCk7CiAgcGdfc3RhdF9oYXZlX3N0YXRzIAogLS0tLS0tLS0tLS0tLS0tLS0tLS0KICB0 CkBAIC0xMTA1LDcgKzEyMTYsNyBAQCBTRUxFQ1QgcGdfc3RhdF9oYXZlX3N0YXRzKCdyZWxh dGlvbicsIDpkYm9pZCwgOnN0YXRzX3Rlc3RfaWR4MV9vaWQpOwogCiBEUk9QIGluZGV4IHN0 YXRzX3Rlc3RfaWR4MTsKIFJPTExCQUNLOwotU0VMRUNUIHBnX3N0YXRfaGF2ZV9zdGF0cygn cmVsYXRpb24nLCA6ZGJvaWQsIDpzdGF0c190ZXN0X2lkeDFfb2lkKTsKK1NFTEVDVCBwZ19z dGF0X2hhdmVfc3RhdHMoJ2luZGV4JywgOmRib2lkLCA6c3RhdHNfdGVzdF9pZHgxX29pZCk7 CiAgcGdfc3RhdF9oYXZlX3N0YXRzIAogLS0tLS0tLS0tLS0tLS0tLS0tLS0KICB0CmRpZmYg LS1naXQgYS9zcmMvdGVzdC9yZWdyZXNzL3NxbC9zdGF0cy5zcWwgYi9zcmMvdGVzdC9yZWdy ZXNzL3NxbC9zdGF0cy5zcWwKaW5kZXggZDdmODczY2ZjOS4uYTk3YmM2ZmUwOSAxMDA2NDQK LS0tIGEvc3JjL3Rlc3QvcmVncmVzcy9zcWwvc3RhdHMuc3FsCisrKyBiL3NyYy90ZXN0L3Jl Z3Jlc3Mvc3FsL3N0YXRzLnNxbApAQCAtMTI2LDYgKzEyNiw3NyBAQCBGUk9NIHByZXZzdGF0 cyBBUyBwcjsKIAogQ09NTUlUOwogCistLS0tCistLSBCYXNpYyB0ZXN0cyBmb3IgdG9hc3QK Ky0tLQorQ1JFQVRFIFRBQkxFIHN0YXRzX3RvYXN0KHN0dWZmIHRleHQpOworQUxURVIgVEFC TEUgc3RhdHNfdG9hc3QgQUxURVIgQ09MVU1OIHN0dWZmIFNFVCBTVE9SQUdFIEVYVEVSTkFM OworSU5TRVJUIElOVE8gc3RhdHNfdG9hc3QgVkFMVUVTIChyZXBlYXQoJ2EnLDEwMDAwMDAp KTsKK1NFTEVDVCBjb3VudCgqKSBGUk9NIHN0YXRzX3RvYXN0IFdIRVJFIHN0dWZmIGxpa2Ug JyVhJSc7CisKKy0tIGVuc3VyZSBwZW5kaW5nIHN0YXRzIGFyZSBmbHVzaGVkCitTRUxFQ1Qg cGdfc3RhdF9mb3JjZV9uZXh0X2ZsdXNoKCk7CisKK3NlbGVjdCB0b2FzdF9ibGtzX3JlYWQg PiAwIGFzIHRvYXN0X2Jsa3NfcmVhZCwgdG9hc3RfYmxrc19oaXQgPiAwIGFzIHRvYXN0X2Js a3NfaGl0LAorICAgICAgIHRpZHhfYmxrc19yZWFkID4gMCBhcyB0aWR4X2Jsa3NfcmVhZCwg dGlkeF9ibGtzX2hpdCA+IDAgYXMgdGlkeF9ibGtzX2hpdCwKKyAgICAgICB0b2FzdF9ibGtz X2hpdCA+PSB0b2FzdF9ibGtzX3JlYWQsCisgICAgICAgdGlkeF9ibGtzX2hpdCA+PSB0aWR4 X2Jsa3NfcmVhZAorICAgZnJvbSBwZ19zdGF0aW9fYWxsX3RhYmxlcworIHdoZXJlIHJlbG5h bWUgPSAnc3RhdHNfdG9hc3QnOworCistLS0tCistLSBCYXNpYyB0ZXN0cyBmb3IgcGFydGl0 aW9uCistLS0KK0NSRUFURSBUQUJMRSBzdGF0c19wYXJ0aXRpb24gKAorICAgIGlkMSAgICAg ICAgIGludCBub3QgbnVsbCwKKyAgICBpZDIgICAgICAgICBpbnQgbm90IG51bGwKKykgUEFS VElUSU9OIEJZIFJBTkdFIChpZDIpOworCitDUkVBVEUgVEFCTEUgc3RhdHNfcGFydGl0aW9u XzUgUEFSVElUSU9OIE9GIHN0YXRzX3BhcnRpdGlvbgorICAgIEZPUiBWQUxVRVMgRlJPTSAo MCkgVE8gKDUpOworCitDUkVBVEUgVEFCTEUgc3RhdHNfcGFydGl0aW9uXzIwMDAwIFBBUlRJ VElPTiBPRiBzdGF0c19wYXJ0aXRpb24KKyAgICBGT1IgVkFMVUVTIEZST00gKDUpIFRPICgy MDAwMSk7CisKK0NSRUFURSBJTkRFWCBPTiBzdGF0c19wYXJ0aXRpb24gKGlkMik7CisKK2lu c2VydCBpbnRvIHN0YXRzX3BhcnRpdGlvbiBzZWxlY3QgYSxhIGZyb20gZ2VuZXJhdGVfc2Vy aWVzKDAsMjAwMDApIGE7CisKK1NFVCBlbmFibGVfc2Vxc2NhbiBUTyBvZmY7CitTRVQgZW5h YmxlX2JpdG1hcHNjYW4gVE8gb2ZmOworCitzZWxlY3QgKiBmcm9tIHN0YXRzX3BhcnRpdGlv biB3aGVyZSBpZDIgPSAyMDAwOworc2VsZWN0ICogZnJvbSBzdGF0c19wYXJ0aXRpb24gd2hl cmUgaWQyID0gMjsKKy0tIGVuc3VyZSBwZW5kaW5nIHN0YXRzIGFyZSBmbHVzaGVkCitTRUxF Q1QgcGdfc3RhdF9mb3JjZV9uZXh0X2ZsdXNoKCk7CisKK3NlbGVjdCByZWxuYW1lLCBpbmRl eHJlbG5hbWUsIGlkeF9zY2FuID4gMCBhcyBpZHhfc2NhbiwgaWR4X3R1cF9yZWFkID4gMCBh cyBpZHhfdHVwX3JlYWQsCisgICAgICAgaWR4X3R1cF9mZXRjaCA+IDAgYXMgaWR4X3R1cF9m ZXRjaAorICAgZnJvbSBwZ19zdGF0X2FsbF9pbmRleGVzCisgd2hlcmUgcmVsbmFtZSBsaWtl ICclc3RhdHNfcGFydGl0aW9uJScKKyBvcmRlciBieSByZWxuYW1lIENPTExBVEUgIkMiOwor CitzZWxlY3QgcmVsbmFtZSwgaW5kZXhyZWxuYW1lLCBpZHhfYmxrc19yZWFkID4gMCBhcyBp ZHhfYmxrc19yZWFkLAorICAgICAgIGlkeF9ibGtzX2hpdCA+IDAgYXMgaWR4X2Jsa3NfaGl0 CisgICBmcm9tIHBnX3N0YXRpb19hbGxfaW5kZXhlcworIHdoZXJlIHJlbG5hbWUgbGlrZSAn JXN0YXRzX3BhcnRpdGlvbiUnCisgb3JkZXIgYnkgcmVsbmFtZSBDT0xMQVRFICJDIjsKKwor c2VsZWN0IHJlbG5hbWUsc2VxX3NjYW4gPiAwIGFzIHNlcV9zY2FuLCBzZXFfdHVwX3JlYWQg PiAwIGFzIHNlcV90dXBfcmVhZCwKKyAgICAgICBpZHhfc2NhbiA+IDAgYXMgaWR4X3NjYW4s IGlkeF90dXBfZmV0Y2ggPiAwIGFzIGlkeF90dXBfZmV0Y2gKKyAgIGZyb20gcGdfc3RhdF9h bGxfdGFibGVzCisgIHdoZXJlIHJlbG5hbWUgbGlrZSAnJXN0YXRzX3BhcnRpdGlvbiUnCisg IG9yZGVyIGJ5IHJlbG5hbWUgQ09MTEFURSAiQyI7CisKK3NlbGVjdCByZWxuYW1lLCBoZWFw X2Jsa3NfcmVhZCA+IDAgYXMgaGVhcF9ibGtzX3JlYWQsIGhlYXBfYmxrc19oaXQgPiAwIGFz IGhlYXBfYmxrc19oaXQsCisgICAgICAgaWR4X2Jsa3NfcmVhZCA+IDAgYXMgaWR4X2Jsa3Nf cmVhZCwgaWR4X2Jsa3NfaGl0ID4gMCBhcyBpZHhfYmxrc19oaXQKKyAgIGZyb20gcGdfc3Rh dGlvX2FsbF90YWJsZXMKKyB3aGVyZSByZWxuYW1lIGxpa2UgJyVzdGF0c19wYXJ0aXRpb24l JworIG9yZGVyIGJ5IHJlbG5hbWUgQ09MTEFURSAiQyI7CisKK1NFVCBlbmFibGVfc2Vxc2Nh biBUTyBvbjsKK1NFVCBlbmFibGVfYml0bWFwc2NhbiBUTyBvbjsKKwogLS0tLQogLS0gQmFz aWMgdGVzdHMgZm9yIHRyYWNrX2Z1bmN0aW9ucwogLS0tCkBAIC0yMTgsMTUgKzI4OSwxNSBA QCBTRUxFQ1QgJ2Ryb3Bfc3RhdHNfdGVzdF9zdWJ4YWN0Jzo6cmVnY2xhc3M6Om9pZCBBUyBk cm9wX3N0YXRzX3Rlc3Rfc3VieGFjdF9vaWQgXAogCiBTRUxFQ1QgcGdfc3RhdF9mb3JjZV9u ZXh0X2ZsdXNoKCk7CiAKLVNFTEVDVCBwZ19zdGF0X2dldF9saXZlX3R1cGxlcyg6ZHJvcF9z dGF0c190ZXN0X29pZCk7CitTRUxFQ1QgcGdfc3RhdF9nZXRfdGFiX2xpdmVfdHVwbGVzKDpk cm9wX3N0YXRzX3Rlc3Rfb2lkKTsKIERST1AgVEFCTEUgZHJvcF9zdGF0c190ZXN0OwotU0VM RUNUIHBnX3N0YXRfZ2V0X2xpdmVfdHVwbGVzKDpkcm9wX3N0YXRzX3Rlc3Rfb2lkKTsKK1NF TEVDVCBwZ19zdGF0X2dldF90YWJfbGl2ZV90dXBsZXMoOmRyb3Bfc3RhdHNfdGVzdF9vaWQp OwogU0VMRUNUIHBnX3N0YXRfZ2V0X3hhY3RfdHVwbGVzX2luc2VydGVkKDpkcm9wX3N0YXRz X3Rlc3Rfb2lkKTsKIAogLS0gY2hlY2sgdGhhdCByb2xsYmFjayBwcm90ZWN0cyBhZ2FpbnN0 IGhhdmluZyBzdGF0cyBkcm9wcGVkIGFuZCB0aGF0IGxvY2FsCiAtLSBtb2RpZmljYXRpb25z IGRvbid0IHBvc2UgYSBwcm9ibGVtCi1TRUxFQ1QgcGdfc3RhdF9nZXRfbGl2ZV90dXBsZXMo OmRyb3Bfc3RhdHNfdGVzdF94YWN0X29pZCk7Ci1TRUxFQ1QgcGdfc3RhdF9nZXRfdHVwbGVz X2luc2VydGVkKDpkcm9wX3N0YXRzX3Rlc3RfeGFjdF9vaWQpOworU0VMRUNUIHBnX3N0YXRf Z2V0X3RhYl9saXZlX3R1cGxlcyg6ZHJvcF9zdGF0c190ZXN0X3hhY3Rfb2lkKTsKK1NFTEVD VCBwZ19zdGF0X2dldF90YWJfdHVwbGVzX2luc2VydGVkKDpkcm9wX3N0YXRzX3Rlc3RfeGFj dF9vaWQpOwogU0VMRUNUIHBnX3N0YXRfZ2V0X3hhY3RfdHVwbGVzX2luc2VydGVkKDpkcm9w X3N0YXRzX3Rlc3RfeGFjdF9vaWQpOwogQkVHSU47CiBJTlNFUlQgSU5UTyBkcm9wX3N0YXRz X3Rlc3RfeGFjdCBERUZBVUxUIFZBTFVFUzsKQEAgLTIzNSwxMiArMzA2LDEyIEBAIERST1Ag VEFCTEUgZHJvcF9zdGF0c190ZXN0X3hhY3Q7CiBTRUxFQ1QgcGdfc3RhdF9nZXRfeGFjdF90 dXBsZXNfaW5zZXJ0ZWQoOmRyb3Bfc3RhdHNfdGVzdF94YWN0X29pZCk7CiBST0xMQkFDSzsK IFNFTEVDVCBwZ19zdGF0X2ZvcmNlX25leHRfZmx1c2goKTsKLVNFTEVDVCBwZ19zdGF0X2dl dF9saXZlX3R1cGxlcyg6ZHJvcF9zdGF0c190ZXN0X3hhY3Rfb2lkKTsKLVNFTEVDVCBwZ19z dGF0X2dldF90dXBsZXNfaW5zZXJ0ZWQoOmRyb3Bfc3RhdHNfdGVzdF94YWN0X29pZCk7CitT RUxFQ1QgcGdfc3RhdF9nZXRfdGFiX2xpdmVfdHVwbGVzKDpkcm9wX3N0YXRzX3Rlc3RfeGFj dF9vaWQpOworU0VMRUNUIHBnX3N0YXRfZ2V0X3RhYl90dXBsZXNfaW5zZXJ0ZWQoOmRyb3Bf c3RhdHNfdGVzdF94YWN0X29pZCk7CiAKIC0tIHRyYW5zYWN0aW9uYWwgZHJvcAotU0VMRUNU IHBnX3N0YXRfZ2V0X2xpdmVfdHVwbGVzKDpkcm9wX3N0YXRzX3Rlc3RfeGFjdF9vaWQpOwot U0VMRUNUIHBnX3N0YXRfZ2V0X3R1cGxlc19pbnNlcnRlZCg6ZHJvcF9zdGF0c190ZXN0X3hh Y3Rfb2lkKTsKK1NFTEVDVCBwZ19zdGF0X2dldF90YWJfbGl2ZV90dXBsZXMoOmRyb3Bfc3Rh dHNfdGVzdF94YWN0X29pZCk7CitTRUxFQ1QgcGdfc3RhdF9nZXRfdGFiX3R1cGxlc19pbnNl cnRlZCg6ZHJvcF9zdGF0c190ZXN0X3hhY3Rfb2lkKTsKIEJFR0lOOwogSU5TRVJUIElOVE8g ZHJvcF9zdGF0c190ZXN0X3hhY3QgREVGQVVMVCBWQUxVRVM7CiBTRUxFQ1QgcGdfc3RhdF9n ZXRfeGFjdF90dXBsZXNfaW5zZXJ0ZWQoOmRyb3Bfc3RhdHNfdGVzdF94YWN0X29pZCk7CkBA IC0yNDgsMTEgKzMxOSwxMSBAQCBEUk9QIFRBQkxFIGRyb3Bfc3RhdHNfdGVzdF94YWN0Owog U0VMRUNUIHBnX3N0YXRfZ2V0X3hhY3RfdHVwbGVzX2luc2VydGVkKDpkcm9wX3N0YXRzX3Rl c3RfeGFjdF9vaWQpOwogQ09NTUlUOwogU0VMRUNUIHBnX3N0YXRfZm9yY2VfbmV4dF9mbHVz aCgpOwotU0VMRUNUIHBnX3N0YXRfZ2V0X2xpdmVfdHVwbGVzKDpkcm9wX3N0YXRzX3Rlc3Rf eGFjdF9vaWQpOwotU0VMRUNUIHBnX3N0YXRfZ2V0X3R1cGxlc19pbnNlcnRlZCg6ZHJvcF9z dGF0c190ZXN0X3hhY3Rfb2lkKTsKK1NFTEVDVCBwZ19zdGF0X2dldF90YWJfbGl2ZV90dXBs ZXMoOmRyb3Bfc3RhdHNfdGVzdF94YWN0X29pZCk7CitTRUxFQ1QgcGdfc3RhdF9nZXRfdGFi X3R1cGxlc19pbnNlcnRlZCg6ZHJvcF9zdGF0c190ZXN0X3hhY3Rfb2lkKTsKIAogLS0gc2F2 ZXBvaW50IHJvbGxiYWNrICgyIGxldmVscykKLVNFTEVDVCBwZ19zdGF0X2dldF9saXZlX3R1 cGxlcyg6ZHJvcF9zdGF0c190ZXN0X3N1YnhhY3Rfb2lkKTsKK1NFTEVDVCBwZ19zdGF0X2dl dF90YWJfbGl2ZV90dXBsZXMoOmRyb3Bfc3RhdHNfdGVzdF9zdWJ4YWN0X29pZCk7CiBCRUdJ TjsKIElOU0VSVCBJTlRPIGRyb3Bfc3RhdHNfdGVzdF9zdWJ4YWN0IERFRkFVTFQgVkFMVUVT OwogU0FWRVBPSU5UIHNwMTsKQEAgLTI2NCwyNyArMzM1LDI3IEBAIFJPTExCQUNLIFRPIFNB VkVQT0lOVCBzcDI7CiBTRUxFQ1QgcGdfc3RhdF9nZXRfeGFjdF90dXBsZXNfaW5zZXJ0ZWQo OmRyb3Bfc3RhdHNfdGVzdF9zdWJ4YWN0X29pZCk7CiBDT01NSVQ7CiBTRUxFQ1QgcGdfc3Rh dF9mb3JjZV9uZXh0X2ZsdXNoKCk7Ci1TRUxFQ1QgcGdfc3RhdF9nZXRfbGl2ZV90dXBsZXMo OmRyb3Bfc3RhdHNfdGVzdF9zdWJ4YWN0X29pZCk7CitTRUxFQ1QgcGdfc3RhdF9nZXRfdGFi X2xpdmVfdHVwbGVzKDpkcm9wX3N0YXRzX3Rlc3Rfc3VieGFjdF9vaWQpOwogCiAtLSBzYXZl cG9pbnQgcm9sYmFjayAoMSBsZXZlbCkKLVNFTEVDVCBwZ19zdGF0X2dldF9saXZlX3R1cGxl cyg6ZHJvcF9zdGF0c190ZXN0X3N1YnhhY3Rfb2lkKTsKK1NFTEVDVCBwZ19zdGF0X2dldF90 YWJfbGl2ZV90dXBsZXMoOmRyb3Bfc3RhdHNfdGVzdF9zdWJ4YWN0X29pZCk7CiBCRUdJTjsK IFNBVkVQT0lOVCBzcDE7CiBEUk9QIFRBQkxFIGRyb3Bfc3RhdHNfdGVzdF9zdWJ4YWN0Owog U0FWRVBPSU5UIHNwMjsKIFJPTExCQUNLIFRPIFNBVkVQT0lOVCBzcDE7CiBDT01NSVQ7Ci1T RUxFQ1QgcGdfc3RhdF9nZXRfbGl2ZV90dXBsZXMoOmRyb3Bfc3RhdHNfdGVzdF9zdWJ4YWN0 X29pZCk7CitTRUxFQ1QgcGdfc3RhdF9nZXRfdGFiX2xpdmVfdHVwbGVzKDpkcm9wX3N0YXRz X3Rlc3Rfc3VieGFjdF9vaWQpOwogCiAtLSBhbmQgbm93IGFjdHVhbGx5IGRyb3AKLVNFTEVD VCBwZ19zdGF0X2dldF9saXZlX3R1cGxlcyg6ZHJvcF9zdGF0c190ZXN0X3N1YnhhY3Rfb2lk KTsKK1NFTEVDVCBwZ19zdGF0X2dldF90YWJfbGl2ZV90dXBsZXMoOmRyb3Bfc3RhdHNfdGVz dF9zdWJ4YWN0X29pZCk7CiBCRUdJTjsKIFNBVkVQT0lOVCBzcDE7CiBEUk9QIFRBQkxFIGRy b3Bfc3RhdHNfdGVzdF9zdWJ4YWN0OwogU0FWRVBPSU5UIHNwMjsKIFJFTEVBU0UgU0FWRVBP SU5UIHNwMTsKIENPTU1JVDsKLVNFTEVDVCBwZ19zdGF0X2dldF9saXZlX3R1cGxlcyg6ZHJv cF9zdGF0c190ZXN0X3N1YnhhY3Rfb2lkKTsKK1NFTEVDVCBwZ19zdGF0X2dldF90YWJfbGl2 ZV90dXBsZXMoOmRyb3Bfc3RhdHNfdGVzdF9zdWJ4YWN0X29pZCk7CiAKIERST1AgVEFCTEUg dHJ1bmNfc3RhdHNfdGVzdCwgdHJ1bmNfc3RhdHNfdGVzdDEsIHRydW5jX3N0YXRzX3Rlc3Qy LCB0cnVuY19zdGF0c190ZXN0MywgdHJ1bmNfc3RhdHNfdGVzdDQ7CiBEUk9QIFRBQkxFIHBy ZXZzdGF0czsKQEAgLTQ5Myw0MCArNTY0LDQwIEBAIENSRUFURSBpbmRleCBzdGF0c190ZXN0 X2lkeDEgb24gc3RhdHNfdGVzdF90YWIxKGEpOwogU0VMRUNUICdzdGF0c190ZXN0X2lkeDEn OjpyZWdjbGFzczo6b2lkIEFTIHN0YXRzX3Rlc3RfaWR4MV9vaWQgXGdzZXQKIFNFVCBlbmFi bGVfc2Vxc2NhbiBUTyBvZmY7CiBzZWxlY3QgYSBmcm9tIHN0YXRzX3Rlc3RfdGFiMSB3aGVy ZSBhID0gMzsKLVNFTEVDVCBwZ19zdGF0X2hhdmVfc3RhdHMoJ3JlbGF0aW9uJywgOmRib2lk LCA6c3RhdHNfdGVzdF9pZHgxX29pZCk7CitTRUxFQ1QgcGdfc3RhdF9oYXZlX3N0YXRzKCdp bmRleCcsIDpkYm9pZCwgOnN0YXRzX3Rlc3RfaWR4MV9vaWQpOwogCiAtLSBwZ19zdGF0X2hh dmVfc3RhdHMgcmV0dXJucyBmYWxzZSBmb3IgZHJvcHBlZCBpbmRleCB3aXRoIHN0YXRzCi1T RUxFQ1QgcGdfc3RhdF9oYXZlX3N0YXRzKCdyZWxhdGlvbicsIDpkYm9pZCwgOnN0YXRzX3Rl c3RfaWR4MV9vaWQpOworU0VMRUNUIHBnX3N0YXRfaGF2ZV9zdGF0cygnaW5kZXgnLCA6ZGJv aWQsIDpzdGF0c190ZXN0X2lkeDFfb2lkKTsKIERST1AgaW5kZXggc3RhdHNfdGVzdF9pZHgx OwotU0VMRUNUIHBnX3N0YXRfaGF2ZV9zdGF0cygncmVsYXRpb24nLCA6ZGJvaWQsIDpzdGF0 c190ZXN0X2lkeDFfb2lkKTsKK1NFTEVDVCBwZ19zdGF0X2hhdmVfc3RhdHMoJ2luZGV4Jywg OmRib2lkLCA6c3RhdHNfdGVzdF9pZHgxX29pZCk7CiAKIC0tIHBnX3N0YXRfaGF2ZV9zdGF0 cyByZXR1cm5zIGZhbHNlIGZvciByb2xsZWQgYmFjayBpbmRleCBjcmVhdGlvbgogQkVHSU47 CiBDUkVBVEUgaW5kZXggc3RhdHNfdGVzdF9pZHgxIG9uIHN0YXRzX3Rlc3RfdGFiMShhKTsK IFNFTEVDVCAnc3RhdHNfdGVzdF9pZHgxJzo6cmVnY2xhc3M6Om9pZCBBUyBzdGF0c190ZXN0 X2lkeDFfb2lkIFxnc2V0CiBzZWxlY3QgYSBmcm9tIHN0YXRzX3Rlc3RfdGFiMSB3aGVyZSBh ID0gMzsKLVNFTEVDVCBwZ19zdGF0X2hhdmVfc3RhdHMoJ3JlbGF0aW9uJywgOmRib2lkLCA6 c3RhdHNfdGVzdF9pZHgxX29pZCk7CitTRUxFQ1QgcGdfc3RhdF9oYXZlX3N0YXRzKCdpbmRl eCcsIDpkYm9pZCwgOnN0YXRzX3Rlc3RfaWR4MV9vaWQpOwogUk9MTEJBQ0s7Ci1TRUxFQ1Qg cGdfc3RhdF9oYXZlX3N0YXRzKCdyZWxhdGlvbicsIDpkYm9pZCwgOnN0YXRzX3Rlc3RfaWR4 MV9vaWQpOworU0VMRUNUIHBnX3N0YXRfaGF2ZV9zdGF0cygnaW5kZXgnLCA6ZGJvaWQsIDpz dGF0c190ZXN0X2lkeDFfb2lkKTsKIAogLS0gcGdfc3RhdF9oYXZlX3N0YXRzIHJldHVybnMg dHJ1ZSBmb3IgcmVpbmRleCBDT05DVVJSRU5UTFkKIENSRUFURSBpbmRleCBzdGF0c190ZXN0 X2lkeDEgb24gc3RhdHNfdGVzdF90YWIxKGEpOwogU0VMRUNUICdzdGF0c190ZXN0X2lkeDEn OjpyZWdjbGFzczo6b2lkIEFTIHN0YXRzX3Rlc3RfaWR4MV9vaWQgXGdzZXQKIHNlbGVjdCBh IGZyb20gc3RhdHNfdGVzdF90YWIxIHdoZXJlIGEgPSAzOwotU0VMRUNUIHBnX3N0YXRfaGF2 ZV9zdGF0cygncmVsYXRpb24nLCA6ZGJvaWQsIDpzdGF0c190ZXN0X2lkeDFfb2lkKTsKK1NF TEVDVCBwZ19zdGF0X2hhdmVfc3RhdHMoJ2luZGV4JywgOmRib2lkLCA6c3RhdHNfdGVzdF9p ZHgxX29pZCk7CiBSRUlOREVYIGluZGV4IENPTkNVUlJFTlRMWSBzdGF0c190ZXN0X2lkeDE7 CiAtLSBmYWxzZSBmb3IgcHJldmlvdXMgb2lkCi1TRUxFQ1QgcGdfc3RhdF9oYXZlX3N0YXRz KCdyZWxhdGlvbicsIDpkYm9pZCwgOnN0YXRzX3Rlc3RfaWR4MV9vaWQpOworU0VMRUNUIHBn X3N0YXRfaGF2ZV9zdGF0cygnaW5kZXgnLCA6ZGJvaWQsIDpzdGF0c190ZXN0X2lkeDFfb2lk KTsKIC0tIHRydWUgZm9yIG5ldyBvaWQKIFNFTEVDVCAnc3RhdHNfdGVzdF9pZHgxJzo6cmVn Y2xhc3M6Om9pZCBBUyBzdGF0c190ZXN0X2lkeDFfb2lkIFxnc2V0Ci1TRUxFQ1QgcGdfc3Rh dF9oYXZlX3N0YXRzKCdyZWxhdGlvbicsIDpkYm9pZCwgOnN0YXRzX3Rlc3RfaWR4MV9vaWQp OworU0VMRUNUIHBnX3N0YXRfaGF2ZV9zdGF0cygnaW5kZXgnLCA6ZGJvaWQsIDpzdGF0c190 ZXN0X2lkeDFfb2lkKTsKIAogLS0gcGdfc3RhdF9oYXZlX3N0YXRzIHJldHVybnMgdHJ1ZSBm b3IgYSByb2xsZWQgYmFjayBkcm9wIGluZGV4IHdpdGggc3RhdHMKIEJFR0lOOwotU0VMRUNU IHBnX3N0YXRfaGF2ZV9zdGF0cygncmVsYXRpb24nLCA6ZGJvaWQsIDpzdGF0c190ZXN0X2lk eDFfb2lkKTsKK1NFTEVDVCBwZ19zdGF0X2hhdmVfc3RhdHMoJ2luZGV4JywgOmRib2lkLCA6 c3RhdHNfdGVzdF9pZHgxX29pZCk7CiBEUk9QIGluZGV4IHN0YXRzX3Rlc3RfaWR4MTsKIFJP TExCQUNLOwotU0VMRUNUIHBnX3N0YXRfaGF2ZV9zdGF0cygncmVsYXRpb24nLCA6ZGJvaWQs IDpzdGF0c190ZXN0X2lkeDFfb2lkKTsKK1NFTEVDVCBwZ19zdGF0X2hhdmVfc3RhdHMoJ2lu ZGV4JywgOmRib2lkLCA6c3RhdHNfdGVzdF9pZHgxX29pZCk7CiAKIC0tIHB1dCBlbmFibGVf c2Vxc2NhbiBiYWNrIHRvIG9uCiBTRVQgZW5hYmxlX3NlcXNjYW4gVE8gb247CmRpZmYgLS1n aXQgYS9zcmMvdG9vbHMvcGdpbmRlbnQvdHlwZWRlZnMubGlzdCBiL3NyYy90b29scy9wZ2lu ZGVudC90eXBlZGVmcy5saXN0CmluZGV4IDA5N2Y0MmUxYjMuLjZjZWJkYjAyNmEgMTAwNjQ0 Ci0tLSBhL3NyYy90b29scy9wZ2luZGVudC90eXBlZGVmcy5saXN0CisrKyBiL3NyYy90b29s cy9wZ2luZGVudC90eXBlZGVmcy5saXN0CkBAIC0yMDI2LDEwICsyMDI2LDExIEBAIFBnU3Rh dFNoYXJlZF9EYXRhYmFzZQogUGdTdGF0U2hhcmVkX0Z1bmN0aW9uCiBQZ1N0YXRTaGFyZWRf SGFzaEVudHJ5CiBQZ1N0YXRTaGFyZWRfSU8KLVBnU3RhdFNoYXJlZF9SZWxhdGlvbgorUGdT dGF0U2hhcmVkX0luZGV4CiBQZ1N0YXRTaGFyZWRfUmVwbFNsb3QKIFBnU3RhdFNoYXJlZF9T TFJVCiBQZ1N0YXRTaGFyZWRfU3Vic2NyaXB0aW9uCitQZ1N0YXRTaGFyZWRfVGFibGUKIFBn U3RhdFNoYXJlZF9XYWwKIFBnU3RhdF9BcmNoaXZlclN0YXRzCiBQZ1N0YXRfQmFja2VuZFN1 YkVudHJ5CkBAIC0yMDQzLDYgKzIwNDQsNyBAQCBQZ1N0YXRfRmV0Y2hDb25zaXN0ZW5jeQog UGdTdGF0X0Z1bmN0aW9uQ2FsbFVzYWdlCiBQZ1N0YXRfRnVuY3Rpb25Db3VudHMKIFBnU3Rh dF9IYXNoS2V5CitQZ1N0YXRfSW5kZXhTdGF0dXMKIFBnU3RhdF9JTwogUGdTdGF0X0tpbmQK IFBnU3RhdF9LaW5kSW5mbwo= --------------xQZsuX6E1l6JapNoI5yvr39E--