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 1pb4JC-0000ft-Lw for pgsql-hackers@arkaria.postgresql.org; Sat, 11 Mar 2023 18:51:11 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1pb4JB-0006ys-H7 for pgsql-hackers@arkaria.postgresql.org; Sat, 11 Mar 2023 18:51:09 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1pb4JB-0006yj-1x for pgsql-hackers@lists.postgresql.org; Sat, 11 Mar 2023 18:51:09 +0000 Received: from mail-wm1-x32a.google.com ([2a00:1450:4864:20::32a]) by magus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1pb4J6-0007uf-OB for pgsql-hackers@lists.postgresql.org; Sat, 11 Mar 2023 18:51:08 +0000 Received: by mail-wm1-x32a.google.com with SMTP id k37so5464319wms.0 for ; Sat, 11 Mar 2023 10:51:04 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=migops.com; s=google; t=1678560662; h=in-reply-to:content-language:references:cc:to:subject:from :user-agent:mime-version:date:message-id:from:to:cc:subject:date :message-id:reply-to; bh=neszkJ0WfLb5fjs9dAWchT9sJJcKjhfQIjTz4I1vGVM=; b=UdN4YcBdXpHQdw0nIJ6ILdNroqGbLqx8oP5sfDK1dmrAwUVbJ2BGHd9BKyBoh1gRE+ l6hbDHRiHEWO4Vex7ecfB3Upo+MPyVCBQgOQKfTe2+bJdn7rh3taoVZSQCIZ7eK80vv2 HyrzXH/Q6QLWmZFzfMd582up1fwyid9F9TjWsW10I3lOmkf6BNHQS12d2xP67RFXpKdX GzQuyKMqE+xzcHpE9OPJO9QKiWY+wLSSI0qxAyV6H8U9gJc4AHUYPxqlisby2YOwph4n UW7qB+u/NoO2fpoh0f2YG3Sv+OQ+VsC+DBh17UOUq1l3bwNWilWIJtNwnxePZ5Tfv+2J y/LQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1678560662; h=in-reply-to:content-language:references:cc:to:subject:from :user-agent:mime-version:date:message-id:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=neszkJ0WfLb5fjs9dAWchT9sJJcKjhfQIjTz4I1vGVM=; b=hCdnfNvDjoyvcwXDBa1SiUTe52ImskUFryC1QJuDqV5m6b4rUgeXr6iJgluXUl0S4I Z/GajJ43hBdVTnZKTkgs9URQzzdXzsexeB7xGY/0eoE4AgpZ+OBnzggMzBoWcp0yQXGP OrA8LPwfQFiy+OeHBrD/kQ3k6cui6wL53JyFXSneut/quwo4OW03ftTjT/vYrTFhO+y4 +3sXsD+G3K8rzpeaTEEAlc9X75Z+8iRNGlWxUVYXKQ+iIvYjYe7p5kAkOARdlSv69q9w 71HuChUNeSAHRgrv1pUSZSI9hVGVrstjbDmHRyeI6zM11aCbmGKaXDJkCPvMlPvRZ8ho 8Ldw== X-Gm-Message-State: AO0yUKWWeIszF+3d4O4RRlKLX/isvPMo+QYhftAmU1ll+5xD8FPibH9Q xQ12/MhuBVTNCVkhS1OLsuWM75lrumxFahbX+/U= X-Google-Smtp-Source: AK7set8L1l2wOA6LU9F6NjagocBBy7AtZCRMApUiNRpCX4XZFbBV7RfblFn1c7gso0F8ZKV6x4z8HQ== X-Received: by 2002:a05:600c:1d02:b0:3e9:c2f4:8ad4 with SMTP id l2-20020a05600c1d0200b003e9c2f48ad4mr6029166wms.8.1678560662271; Sat, 11 Mar 2023 10:51:02 -0800 (PST) Received: from ?IPV6:2a01:cb14:51d:5100:384c:be70:5cdb:3c65? ([2a01:cb14:51d:5100:384c:be70:5cdb:3c65]) by smtp.gmail.com with ESMTPSA id t8-20020a1c7708000000b003ed1f111fdesm1728860wmi.20.2023.03.11.10.51.01 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sat, 11 Mar 2023 10:51:01 -0800 (PST) Content-Type: multipart/mixed; boundary="------------GTvdye7aTSLoTy2kzwMgFntj" Message-ID: Date: Sat, 11 Mar 2023 19:51:01 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.7.1 From: Gilles Darold Subject: Re: [Proposal] Allow pg_dump to include all child tables with the root table To: pgsql-hackers@lists.postgresql.org Cc: Tom Lane , Cary Huang , =?UTF-8?Q?St=c3=a9phane_Tachoires?= References: <5aa393b5-5f67-8447-b83e-544516990ee2@migops.com> <167727895770.12579.12160318039902297475.pgcf@coridan.postgresql.org> <04a4dcee-bd2c-8cc1-0f6f-704d2083f179@migops.com> <2984786.1677957493@sss.pgh.pa.us> Content-Language: en-US In-Reply-To: <2984786.1677957493@sss.pgh.pa.us> 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. --------------GTvdye7aTSLoTy2kzwMgFntj Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Le 04/03/2023 à 20:18, Tom Lane a écrit : > As noted, "childs" is bad English and "partitions" is flat out wrong > (unless you change it to recurse only to partitions, which doesn't > seem like a better definition). We could go with > --[exclude-]table-and-children, or maybe > --[exclude-]table-and-child-tables, but those are getting into > carpal-tunnel-syndrome-inducing territory 🙁. I lack a better > naming suggestion offhand. In attachment is version 3 of the patch, it includes the use of options suggested by Stephane and Tom:     --table-and-children,     --exclude-table-and-children     --exclude-table-data-and-children.  Documentation have been updated too. Thanks -- Gilles Darold --------------GTvdye7aTSLoTy2kzwMgFntj Content-Type: text/x-patch; charset=UTF-8; name="0001-dump-with-child-v3.patch" Content-Disposition: attachment; filename="0001-dump-with-child-v3.patch" Content-Transfer-Encoding: base64 ZGlmZiAtLWdpdCBhL2RvYy9zcmMvc2dtbC9yZWYvcGdfZHVtcC5zZ21sIGIvZG9jL3NyYy9z Z21sL3JlZi9wZ19kdW1wLnNnbWwKaW5kZXggMzM0ZTRiN2ZkMS4uZTk3YjczMTk0ZSAxMDA2 NDQKLS0tIGEvZG9jL3NyYy9zZ21sL3JlZi9wZ19kdW1wLnNnbWwKKysrIGIvZG9jL3NyYy9z Z21sL3JlZi9wZ19kdW1wLnNnbWwKQEAgLTc3NSw2ICs3NzUsMTYgQEAgUG9zdGdyZVNRTCBk b2N1bWVudGF0aW9uCiAgICAgICA8L2xpc3RpdGVtPgogICAgICA8L3Zhcmxpc3RlbnRyeT4K IAorICAgICA8dmFybGlzdGVudHJ5PgorICAgICAgPHRlcm0+PG9wdGlvbj4tLWV4Y2x1ZGUt dGFibGUtYW5kLWNoaWxkcmVuPTxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5wYXR0 ZXJuPC9yZXBsYWNlYWJsZT48L29wdGlvbj48L3Rlcm0+CisgICAgICA8bGlzdGl0ZW0+Cisg ICAgICAgPHBhcmE+CisgICAgICAgIFNhbWUgYXMgPG9wdGlvbj4tVDwvb3B0aW9uPi88b3B0 aW9uPi0tZXhjbHVkZS10YWJsZTwvb3B0aW9uPiBvcHRpb24gYnV0IGF1dG9tYXRpY2FsbHkK KyAgICAgICAgZXhjbHVkZSBwYXJ0aXRpb25zIG9yIGNoaWxkIHRhYmxlcyBvZiB0aGUgc3Bl Y2lmaWVkIHRhYmxlcyBpZiBhbnkuCisgICAgICAgPC9wYXJhPgorICAgICAgPC9saXN0aXRl bT4KKyAgICAgPC92YXJsaXN0ZW50cnk+CisKICAgICAgPHZhcmxpc3RlbnRyeT4KICAgICAg IDx0ZXJtPjxvcHRpb24+LS1leGNsdWRlLXRhYmxlLWRhdGE9PHJlcGxhY2VhYmxlIGNsYXNz PSJwYXJhbWV0ZXIiPnBhdHRlcm48L3JlcGxhY2VhYmxlPjwvb3B0aW9uPjwvdGVybT4KICAg ICAgIDxsaXN0aXRlbT4KQEAgLTc5Myw2ICs4MDMsMTcgQEAgUG9zdGdyZVNRTCBkb2N1bWVu dGF0aW9uCiAgICAgICA8L2xpc3RpdGVtPgogICAgICA8L3Zhcmxpc3RlbnRyeT4KIAorICAg ICA8dmFybGlzdGVudHJ5PgorICAgICAgPHRlcm0+PG9wdGlvbj4tLWV4Y2x1ZGUtdGFibGUt ZGF0YS1hbmQtY2hpbGRyZW49PHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnBhdHRl cm48L3JlcGxhY2VhYmxlPjwvb3B0aW9uPjwvdGVybT4KKyAgICAgIDxsaXN0aXRlbT4KKyAg ICAgICA8cGFyYT4KKyAgICAgICAgU2FtZSBhcyA8b3B0aW9uPi0tZXhjbHVkZS10YWJsZS1k YXRhPC9vcHRpb24+ICBidXQgYXV0b21hdGljYWxseQorICAgICAgICBleGNsdWRlIHBhcnRp dGlvbnMgb3IgY2hpbGQgdGFibGVzIG9mIHRoZSBzcGVjaWZpZWQgdGFibGVzIGlmIGFueS4K KyAgICAgICA8L3BhcmE+CisgICAgICA8L2xpc3RpdGVtPgorICAgICA8L3Zhcmxpc3RlbnRy eT4KKworCiAgICAgIDx2YXJsaXN0ZW50cnk+CiAgICAgICA8dGVybT48b3B0aW9uPi0tZXh0 cmEtZmxvYXQtZGlnaXRzPTxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5uZGlnaXRz PC9yZXBsYWNlYWJsZT48L29wdGlvbj48L3Rlcm0+CiAgICAgICA8bGlzdGl0ZW0+CkBAIC0x MTU4LDYgKzExNzksMTYgQEAgUG9zdGdyZVNRTCBkb2N1bWVudGF0aW9uCiAgICAgICA8L2xp c3RpdGVtPgogICAgICA8L3Zhcmxpc3RlbnRyeT4KIAorICAgICA8dmFybGlzdGVudHJ5Pgor ICAgICAgPHRlcm0+PG9wdGlvbj4tLXRhYmxlLXdpdGgtY2hpbGRyZW49PHJlcGxhY2VhYmxl IGNsYXNzPSJwYXJhbWV0ZXIiPnBhdHRlcm48L3JlcGxhY2VhYmxlPjwvb3B0aW9uPjwvdGVy bT4KKyAgICAgIDxsaXN0aXRlbT4KKyAgICAgICA8cGFyYT4KKyAgICAgICAgU2FtZSBhcyA8 b3B0aW9uPi10PC9vcHRpb24+LzxvcHRpb24+LS10YWJsZTwvb3B0aW9uPiBvcHRpb24gYnV0 IGF1dG9tYXRpY2FsbHkKKyAgICAgICAgaW5jbHVkZSBwYXJ0aXRpb25zIG9yIGNoaWxkIHRh YmxlcyBvZiB0aGUgc3BlY2lmaWVkIHRhYmxlcyBpZiBhbnkuCisgICAgICAgPC9wYXJhPgor ICAgICAgPC9saXN0aXRlbT4KKyAgICAgPC92YXJsaXN0ZW50cnk+CisKICAgICAgPHZhcmxp c3RlbnRyeT4KICAgICAgIDx0ZXJtPjxvcHRpb24+LS11c2Utc2V0LXNlc3Npb24tYXV0aG9y aXphdGlvbjwvb3B0aW9uPjwvdGVybT4KICAgICAgIDxsaXN0aXRlbT4KZGlmZiAtLWdpdCBh L3NyYy9iaW4vcGdfZHVtcC9wZ19kdW1wLmMgYi9zcmMvYmluL3BnX2R1bXAvcGdfZHVtcC5j CmluZGV4IDQyMTc5MDhmODQuLjA5ZDM3OTkxZDYgMTAwNjQ0Ci0tLSBhL3NyYy9iaW4vcGdf ZHVtcC9wZ19kdW1wLmMKKysrIGIvc3JjL2Jpbi9wZ19kdW1wL3BnX2R1bXAuYwpAQCAtMTMw LDYgKzEzMCwxMCBAQCBzdGF0aWMgU2ltcGxlT2lkTGlzdCBmb3JlaWduX3NlcnZlcnNfaW5j bHVkZV9vaWRzID0ge05VTEwsIE5VTEx9Owogc3RhdGljIFNpbXBsZVN0cmluZ0xpc3QgZXh0 ZW5zaW9uX2luY2x1ZGVfcGF0dGVybnMgPSB7TlVMTCwgTlVMTH07CiBzdGF0aWMgU2ltcGxl T2lkTGlzdCBleHRlbnNpb25faW5jbHVkZV9vaWRzID0ge05VTEwsIE5VTEx9OwogCitzdGF0 aWMgU2ltcGxlU3RyaW5nTGlzdCB0YWJsZV9pbmNsdWRlX3BhdHRlcm5zX2FuZF9jaGlsZHJl biA9IHtOVUxMLCBOVUxMfTsKK3N0YXRpYyBTaW1wbGVTdHJpbmdMaXN0IHRhYmxlX2V4Y2x1 ZGVfcGF0dGVybnNfYW5kX2NoaWxkcmVuID0ge05VTEwsIE5VTEx9Oworc3RhdGljIFNpbXBs ZVN0cmluZ0xpc3QgdGFibGVkYXRhX2V4Y2x1ZGVfcGF0dGVybnNfYW5kX2NoaWxkcmVuID0g e05VTEwsIE5VTEx9OworCiBzdGF0aWMgY29uc3QgQ2F0YWxvZ0lkIG5pbENhdGFsb2dJZCA9 IHswLCAwfTsKIAogLyogb3ZlcnJpZGUgZm9yIHN0YW5kYXJkIGV4dHJhX2Zsb2F0X2RpZ2l0 cyBzZXR0aW5nICovCkBAIC0xODAsNyArMTg0LDggQEAgc3RhdGljIHZvaWQgZXhwYW5kX2Zv cmVpZ25fc2VydmVyX25hbWVfcGF0dGVybnMoQXJjaGl2ZSAqZm91dCwKIHN0YXRpYyB2b2lk IGV4cGFuZF90YWJsZV9uYW1lX3BhdHRlcm5zKEFyY2hpdmUgKmZvdXQsCiAJCQkJCQkJCQkg ICBTaW1wbGVTdHJpbmdMaXN0ICpwYXR0ZXJucywKIAkJCQkJCQkJCSAgIFNpbXBsZU9pZExp c3QgKm9pZHMsCi0JCQkJCQkJCQkgICBib29sIHN0cmljdF9uYW1lcyk7CisJCQkJCQkJCQkg ICBib29sIHN0cmljdF9uYW1lcywKKwkJCQkJCQkJCSAgIGJvb2wgd2l0aF9jaGlsZF90YWJs ZXMpOwogc3RhdGljIHZvaWQgcHJvaGliaXRfY3Jvc3NkYl9yZWZzKFBHY29ubiAqY29ubiwg Y29uc3QgY2hhciAqZGJuYW1lLAogCQkJCQkJCQkgIGNvbnN0IGNoYXIgKnBhdHRlcm4pOwog CkBAIC00MjEsNiArNDI2LDkgQEAgbWFpbihpbnQgYXJnYywgY2hhciAqKmFyZ3YpCiAJCXsi b24tY29uZmxpY3QtZG8tbm90aGluZyIsIG5vX2FyZ3VtZW50LCAmZG9wdC5kb19ub3RoaW5n LCAxfSwKIAkJeyJyb3dzLXBlci1pbnNlcnQiLCByZXF1aXJlZF9hcmd1bWVudCwgTlVMTCwg MTB9LAogCQl7ImluY2x1ZGUtZm9yZWlnbi1kYXRhIiwgcmVxdWlyZWRfYXJndW1lbnQsIE5V TEwsIDExfSwKKwkJeyJ0YWJsZS1hbmQtY2hpbGRyZW4iLCByZXF1aXJlZF9hcmd1bWVudCwg TlVMTCwgMTJ9LAorCQl7ImV4Y2x1ZGUtdGFibGUtYW5kLWNoaWxkcmVuIiwgcmVxdWlyZWRf YXJndW1lbnQsIE5VTEwsIDEzfSwKKwkJeyJleGNsdWRlLXRhYmxlLWRhdGEtYW5kLWNoaWxk cmVuIiwgcmVxdWlyZWRfYXJndW1lbnQsIE5VTEwsIDE0fSwKIAogCQl7TlVMTCwgMCwgTlVM TCwgMH0KIAl9OwpAQCAtNjMxLDYgKzYzOSwxOSBAQCBtYWluKGludCBhcmdjLCBjaGFyICoq YXJndikKIAkJCQkJCQkJCQkgIG9wdGFyZyk7CiAJCQkJYnJlYWs7CiAKKwkJCWNhc2UgMTI6 CQkJLyogaW5jbHVkZSB0YWJsZShzKSB3aXRoIGNoaWxkcmVuICovCisJCQkJc2ltcGxlX3N0 cmluZ19saXN0X2FwcGVuZCgmdGFibGVfaW5jbHVkZV9wYXR0ZXJuc19hbmRfY2hpbGRyZW4s IG9wdGFyZyk7CisJCQkJZG9wdC5pbmNsdWRlX2V2ZXJ5dGhpbmcgPSBmYWxzZTsKKwkJCQli cmVhazsKKworCQkJY2FzZSAxMzoJCQkvKiBleGNsdWRlIHRhYmxlKHMpIHdpdGggY2hpbGRy ZW4gKi8KKwkJCQlzaW1wbGVfc3RyaW5nX2xpc3RfYXBwZW5kKCZ0YWJsZV9leGNsdWRlX3Bh dHRlcm5zX2FuZF9jaGlsZHJlbiwgb3B0YXJnKTsKKwkJCQlicmVhazsKKworCQkJY2FzZSAx NDoJCQkJLyogZXhjbHVkZSB0YWJsZShzKSBkYXRhICovCisJCQkJc2ltcGxlX3N0cmluZ19s aXN0X2FwcGVuZCgmdGFibGVkYXRhX2V4Y2x1ZGVfcGF0dGVybnNfYW5kX2NoaWxkcmVuLCBv cHRhcmcpOworCQkJCWJyZWFrOworCiAJCQlkZWZhdWx0OgogCQkJCS8qIGdldG9wdF9sb25n IGFscmVhZHkgZW1pdHRlZCBhIGNvbXBsYWludCAqLwogCQkJCXBnX2xvZ19lcnJvcl9oaW50 KCJUcnkgXCIlcyAtLWhlbHBcIiBmb3IgbW9yZSBpbmZvcm1hdGlvbi4iLCBwcm9nbmFtZSk7 CkBAIC04MTQsMTcgKzgzNSwzNCBAQCBtYWluKGludCBhcmdjLCBjaGFyICoqYXJndikKIAl7 CiAJCWV4cGFuZF90YWJsZV9uYW1lX3BhdHRlcm5zKGZvdXQsICZ0YWJsZV9pbmNsdWRlX3Bh dHRlcm5zLAogCQkJCQkJCQkgICAmdGFibGVfaW5jbHVkZV9vaWRzLAotCQkJCQkJCQkgICBz dHJpY3RfbmFtZXMpOworCQkJCQkJCQkgICBzdHJpY3RfbmFtZXMsIGZhbHNlKTsKIAkJaWYg KHRhYmxlX2luY2x1ZGVfb2lkcy5oZWFkID09IE5VTEwpCiAJCQlwZ19mYXRhbCgibm8gbWF0 Y2hpbmcgdGFibGVzIHdlcmUgZm91bmQiKTsKIAl9CiAJZXhwYW5kX3RhYmxlX25hbWVfcGF0 dGVybnMoZm91dCwgJnRhYmxlX2V4Y2x1ZGVfcGF0dGVybnMsCiAJCQkJCQkJICAgJnRhYmxl X2V4Y2x1ZGVfb2lkcywKLQkJCQkJCQkgICBmYWxzZSk7CisJCQkJCQkJICAgZmFsc2UsIGZh bHNlKTsKIAogCWV4cGFuZF90YWJsZV9uYW1lX3BhdHRlcm5zKGZvdXQsICZ0YWJsZWRhdGFf ZXhjbHVkZV9wYXR0ZXJucywKIAkJCQkJCQkgICAmdGFibGVkYXRhX2V4Y2x1ZGVfb2lkcywK LQkJCQkJCQkgICBmYWxzZSk7CisJCQkJCQkJICAgZmFsc2UsIGZhbHNlKTsKKworCS8qIEV4 cGFuZCB0YWJsZSBhbmQgY2hpbGRyZW4gc2VsZWN0aW9uIHBhdHRlcm5zIGludG8gT0lEIGxp c3RzICovCisJaWYgKHRhYmxlX2luY2x1ZGVfcGF0dGVybnNfYW5kX2NoaWxkcmVuLmhlYWQg IT0gTlVMTCkKKwl7CisJCWV4cGFuZF90YWJsZV9uYW1lX3BhdHRlcm5zKGZvdXQsICZ0YWJs ZV9pbmNsdWRlX3BhdHRlcm5zX2FuZF9jaGlsZHJlbiwKKwkJCQkJCQkJICAgJnRhYmxlX2lu Y2x1ZGVfb2lkcywKKwkJCQkJCQkJICAgc3RyaWN0X25hbWVzLCB0cnVlKTsKKwkJaWYgKHRh YmxlX2luY2x1ZGVfb2lkcy5oZWFkID09IE5VTEwpCisJCQlwZ19mYXRhbCgibm8gbWF0Y2hp bmcgdGFibGVzIHdlcmUgZm91bmQiKTsKKwl9CisJZXhwYW5kX3RhYmxlX25hbWVfcGF0dGVy bnMoZm91dCwgJnRhYmxlX2V4Y2x1ZGVfcGF0dGVybnNfYW5kX2NoaWxkcmVuLAorCQkJCQkJ CSAgICZ0YWJsZV9leGNsdWRlX29pZHMsCisJCQkJCQkJICAgZmFsc2UsIHRydWUpOworCisJ ZXhwYW5kX3RhYmxlX25hbWVfcGF0dGVybnMoZm91dCwgJnRhYmxlZGF0YV9leGNsdWRlX3Bh dHRlcm5zX2FuZF9jaGlsZHJlbiwKKwkJCQkJCQkgICAmdGFibGVkYXRhX2V4Y2x1ZGVfb2lk cywKKwkJCQkJCQkgICBmYWxzZSwgdHJ1ZSk7CiAKIAlleHBhbmRfZm9yZWlnbl9zZXJ2ZXJf bmFtZV9wYXR0ZXJucyhmb3V0LCAmZm9yZWlnbl9zZXJ2ZXJzX2luY2x1ZGVfcGF0dGVybnMs CiAJCQkJCQkJCQkJJmZvcmVpZ25fc2VydmVyc19pbmNsdWRlX29pZHMpOwpAQCAtMTA2MCw3 ICsxMDk4LDExIEBAIGhlbHAoY29uc3QgY2hhciAqcHJvZ25hbWUpCiAJcHJpbnRmKF8oIiAg LS1kaXNhYmxlLXRyaWdnZXJzICAgICAgICAgICBkaXNhYmxlIHRyaWdnZXJzIGR1cmluZyBk YXRhLW9ubHkgcmVzdG9yZVxuIikpOwogCXByaW50ZihfKCIgIC0tZW5hYmxlLXJvdy1zZWN1 cml0eSAgICAgICAgZW5hYmxlIHJvdyBzZWN1cml0eSAoZHVtcCBvbmx5IGNvbnRlbnQgdXNl ciBoYXNcbiIKIAkJCSAiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFjY2VzcyB0 bylcbiIpKTsKKwlwcmludGYoXygiICAtLWV4Y2x1ZGUtdGFibGUtYW5kLWNoaWxkcmVuPVBB VFRFUk4gZG8gTk9UIGR1bXAgdGhlIHNwZWNpZmllZCB0YWJsZShzKSBpbmNsdWRpbmdcbiIK KwkJCSIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hpbGQgYW5kIHBhcnRpdGlv biB0YWJsZXNcbiIpKTsKIAlwcmludGYoXygiICAtLWV4Y2x1ZGUtdGFibGUtZGF0YT1QQVRU RVJOIGRvIE5PVCBkdW1wIGRhdGEgZm9yIHRoZSBzcGVjaWZpZWQgdGFibGUocylcbiIpKTsK KwlwcmludGYoXygiICAtLWV4Y2x1ZGUtdGFibGUtZGF0YS1hbmQtY2hpbGRyZW49UEFUVEVS TiBkbyBOT1QgZHVtcCBkYXRhIGZvciB0aGUgc3BlY2lmaWVkXG4iCisJCQkiICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHRhYmxlKHMpIGluY2x1ZGluZyBjaGlsZCBhbmQgcGFy dGl0aW9uIHRhYmxlc1xuIikpOwogCXByaW50ZihfKCIgIC0tZXh0cmEtZmxvYXQtZGlnaXRz PU5VTSAgICAgb3ZlcnJpZGUgZGVmYXVsdCBzZXR0aW5nIGZvciBleHRyYV9mbG9hdF9kaWdp dHNcbiIpKTsKIAlwcmludGYoXygiICAtLWlmLWV4aXN0cyAgICAgICAgICAgICAgICAgIHVz ZSBJRiBFWElTVFMgd2hlbiBkcm9wcGluZyBvYmplY3RzXG4iKSk7CiAJcHJpbnRmKF8oIiAg LS1pbmNsdWRlLWZvcmVpZ24tZGF0YT1QQVRURVJOXG4iCkBAIC0xMDg0LDYgKzExMjYsOCBA QCBoZWxwKGNvbnN0IGNoYXIgKnByb2duYW1lKQogCXByaW50ZihfKCIgIC0tc25hcHNob3Q9 U05BUFNIT1QgICAgICAgICAgdXNlIGdpdmVuIHNuYXBzaG90IGZvciB0aGUgZHVtcFxuIikp OwogCXByaW50ZihfKCIgIC0tc3RyaWN0LW5hbWVzICAgICAgICAgICAgICAgcmVxdWlyZSB0 YWJsZSBhbmQvb3Igc2NoZW1hIGluY2x1ZGUgcGF0dGVybnMgdG9cbiIKIAkJCSAiICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIG1hdGNoIGF0IGxlYXN0IG9uZSBlbnRpdHkgZWFj aFxuIikpOworCXByaW50ZihfKCIgIC0tdGFibGUtYW5kLWNoaWxkcmVuPVBBVFRFUk4gZHVt cCB0aGUgc3BlY2lmaWVkIHRhYmxlKHMpIG9ubHkgaW5jbHVkaW5nIGNoaWxkXG4iCisJCQki ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbmQgcGFydGl0aW9uIHRhYmxlc1xu IikpOwogCXByaW50ZihfKCIgIC0tdXNlLXNldC1zZXNzaW9uLWF1dGhvcml6YXRpb25cbiIK IAkJCSAiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZSBTRVQgU0VTU0lPTiBB VVRIT1JJWkFUSU9OIGNvbW1hbmRzIGluc3RlYWQgb2ZcbiIKIAkJCSAiICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIEFMVEVSIE9XTkVSIGNvbW1hbmRzIHRvIHNldCBvd25lcnNo aXBcbiIpKTsKQEAgLTE0OTcsNyArMTU0MSw3IEBAIGV4cGFuZF9mb3JlaWduX3NlcnZlcl9u YW1lX3BhdHRlcm5zKEFyY2hpdmUgKmZvdXQsCiBzdGF0aWMgdm9pZAogZXhwYW5kX3RhYmxl X25hbWVfcGF0dGVybnMoQXJjaGl2ZSAqZm91dCwKIAkJCQkJCSAgIFNpbXBsZVN0cmluZ0xp c3QgKnBhdHRlcm5zLCBTaW1wbGVPaWRMaXN0ICpvaWRzLAotCQkJCQkJICAgYm9vbCBzdHJp Y3RfbmFtZXMpCisJCQkJCQkgICBib29sIHN0cmljdF9uYW1lcywgYm9vbCB3aXRoX2NoaWxk X3RhYmxlcykKIHsKIAlQUUV4cEJ1ZmZlciBxdWVyeTsKIAlQR3Jlc3VsdCAgICpyZXM7CkBA IC0xNTE5LDYgKzE1NjMsMTUgQEAgZXhwYW5kX3RhYmxlX25hbWVfcGF0dGVybnMoQXJjaGl2 ZSAqZm91dCwKIAkJUFFFeHBCdWZmZXJEYXRhIGRiYnVmOwogCQlpbnQJCQlkb3RjbnQ7CiAK KwkJLyoKKwkJICogV2l0aCAtLWluY2x1ZGVfY2hpbGQgd2UgbG9vayByZWN1cnNpdmVseSB0 byB0aGUgaW5oZXJpdGFuY2UKKwkJICogdHJlZSB0byBmaW5kIHRoZSBwYXJ0aXRpb25zIHRh YmxlcyBvZiB0aGUgbWF0Y2hpbmcgaW5jbHVkZSBmaWx0ZXIKKwkJICovCisJCWlmICh3aXRo X2NoaWxkX3RhYmxlcykKKwkJeworCQkJYXBwZW5kUFFFeHBCdWZmZXIocXVlcnksICJXSVRI IFJFQ1VSU0lWRSBwYXJ0aXRpb25fdHJlZSAocmVsaWQpIEFTIChcbiIpOworCQl9CisKIAkJ LyoKIAkJICogUXVlcnkgbXVzdCByZW1haW4gQUJTT0xVVEVMWSBkZXZvaWQgb2YgdW5xdWFs aWZpZWQgbmFtZXMuICBUaGlzCiAJCSAqIHdvdWxkIGJlIHVubmVjZXNzYXJ5IGdpdmVuIGEg cGdfdGFibGVfaXNfdmlzaWJsZSgpIHZhcmlhbnQgdGFraW5nIGEKQEAgLTE1NDYsNiArMTU5 OSwyMCBAQCBleHBhbmRfdGFibGVfbmFtZV9wYXR0ZXJucyhBcmNoaXZlICpmb3V0LAogCQkJ cHJvaGliaXRfY3Jvc3NkYl9yZWZzKEdldENvbm5lY3Rpb24oZm91dCksIGRiYnVmLmRhdGEs IGNlbGwtPnZhbCk7CiAJCXRlcm1QUUV4cEJ1ZmZlcigmZGJidWYpOwogCisJCWlmICh3aXRo X2NoaWxkX3RhYmxlcykKKwkJeworCQkJYXBwZW5kUFFFeHBCdWZmZXIocXVlcnksICJcbiAg VU5JT04gQUxMIgorCQkJCQkJICJcbiAgICBTRUxFQ1QgYy5vaWQgQVMgcmVsaWQiCisJCQkJ CQkgIlxuICAgIEZST00gcGFydGl0aW9uX3RyZWUgQVMgcCIKKwkJCQkJCSAiXG4gICAgICBK T0lOIHBnX2NhdGFsb2cucGdfaW5oZXJpdHMgQVMgaSIKKwkJCQkJCSAiXG4gICAgICAgIE9O IChwLnJlbGlkIE9QRVJBVE9SKHBnX2NhdGFsb2cuPSkgaS5pbmhwYXJlbnQpIgorCQkJCQkJ ICJcbiAgICAgIEpPSU4gcGdfY2F0YWxvZy5wZ19jbGFzcyBBUyBjIgorCQkJCQkJICJcbiAg ICAgICAgT04gKGMub2lkIE9QRVJBVE9SKHBnX2NhdGFsb2cuPSkgaS5pbmhyZWxpZCkiCisJ CQkJCQkgIlxuKSIKKwkJCQkJCSAiXG5TRUxFQ1QgcmVsaWQgRlJPTSBwYXJ0aXRpb25fdHJl ZSIpOworCisJCX0KKwogCQlFeGVjdXRlU3FsU3RhdGVtZW50KGZvdXQsICJSRVNFVCBzZWFy Y2hfcGF0aCIpOwogCQlyZXMgPSBFeGVjdXRlU3FsUXVlcnkoZm91dCwgcXVlcnktPmRhdGEs IFBHUkVTX1RVUExFU19PSyk7CiAJCVBRY2xlYXIoRXhlY3V0ZVNxbFF1ZXJ5Rm9yU2luZ2xl Um93KGZvdXQsCmRpZmYgLS1naXQgYS9zcmMvYmluL3BnX2R1bXAvdC8wMDJfcGdfZHVtcC5w bCBiL3NyYy9iaW4vcGdfZHVtcC90LzAwMl9wZ19kdW1wLnBsCmluZGV4IDljMzU0MjEzY2Uu LmM5ZmMwMTU5MjggMTAwNjQ0Ci0tLSBhL3NyYy9iaW4vcGdfZHVtcC90LzAwMl9wZ19kdW1w LnBsCisrKyBiL3NyYy9iaW4vcGdfZHVtcC90LzAwMl9wZ19kdW1wLnBsCkBAIC0zOTMsNiAr MzkzLDI0IEBAIG15ICVwZ2R1bXBfcnVucyA9ICgKIAkJCSctLWV4Y2x1ZGUtdGFibGU9ZHVt cF90ZXN0LnRlc3RfdGFibGUnLCAncG9zdGdyZXMnLAogCQldLAogCX0sCisJZXhjbHVkZV9t ZWFzdXJlbWVudCA9PiB7CisJCWR1bXBfY21kID0+IFsKKwkJCSdwZ19kdW1wJywgJy0tbm8t c3luYycsCisJCQkiLS1maWxlPSR0ZW1wZGlyL2V4Y2x1ZGVfbWVhc3VyZW1lbnQuc3FsIiwK KwkJCSctLWV4Y2x1ZGUtdGFibGUtYW5kLWNoaWxkcmVuPWR1bXBfdGVzdC5tZWFzdXJlbWVu dCcsCisJCQkncG9zdGdyZXMnLAorCQldLAorCX0sCisJZXhjbHVkZV9tZWFzdXJlbWVudF9k YXRhID0+IHsKKwkJZHVtcF9jbWQgPT4gWworCQkJJ3BnX2R1bXAnLAorCQkJJy0tbm8tc3lu YycsCisJCQkiLS1maWxlPSR0ZW1wZGlyL2V4Y2x1ZGVfbWVhc3VyZW1lbnRfZGF0YS5zcWwi LAorCQkJJy0tZXhjbHVkZS10YWJsZS1kYXRhLWFuZC1jaGlsZHJlbj1kdW1wX3Rlc3QubWVh c3VyZW1lbnQnLAorCQkJJy0tbm8tdW5sb2dnZWQtdGFibGUtZGF0YScsCisJCQkncG9zdGdy ZXMnLAorCQldLAorCX0sCiAJZXhjbHVkZV90ZXN0X3RhYmxlX2RhdGEgPT4gewogCQlkdW1w X2NtZCA9PiBbCiAJCQkncGdfZHVtcCcsCkBAIC00ODcsNiArNTA1LDE3IEBAIG15ICVwZ2R1 bXBfcnVucyA9ICgKIAkJCSdwb3N0Z3JlcycsCiAJCV0sCiAJfSwKKwlvbmx5X2R1bXBfbWVh c3VyZW1lbnQgPT4geworCQlkdW1wX2NtZCA9PiBbCisJCQkncGdfZHVtcCcsCisJCQknLS1u by1zeW5jJywKKwkJCSItLWZpbGU9JHRlbXBkaXIvb25seV9kdW1wX21lYXN1cmVtZW50LnNx bCIsCisJCQknLS10YWJsZS1hbmQtY2hpbGRyZW49ZHVtcF90ZXN0Lm1lYXN1cmVtZW50JywK KwkJCSctLWxvY2std2FpdC10aW1lb3V0PScKKwkJCSAgLiAoMTAwMCAqICRQb3N0Z3JlU1FM OjpUZXN0OjpVdGlsczo6dGltZW91dF9kZWZhdWx0KSwKKwkJCSdwb3N0Z3JlcycsCisJCV0s CisJfSwKIAlyb2xlID0+IHsKIAkJZHVtcF9jbWQgPT4gWwogCQkJJ3BnX2R1bXAnLApAQCAt NjA0LDYgKzYzMyw3IEBAIG15ICVwZ2R1bXBfcnVucyA9ICgKICMgVGVzdHMgd2hpY2ggdGFy Z2V0IHRoZSAnZHVtcF90ZXN0JyBzY2hlbWEsIHNwZWNpZmljYWxseS4KIG15ICVkdW1wX3Rl c3Rfc2NoZW1hX3J1bnMgPSAoCiAJb25seV9kdW1wX3Rlc3Rfc2NoZW1hICA9PiAxLAorCW9u bHlfZHVtcF9tZWFzdXJlbWVudCAgPT4gMSwKIAl0ZXN0X3NjaGVtYV9wbHVzX2xhcmdlX29i amVjdHMgPT4gMSwpOwogCiAjIFRlc3RzIHdoaWNoIGFyZSBjb25zaWRlcmVkICdmdWxsJyBk dW1wcyBieSBwZ19kdW1wLCBidXQgdGhlcmUKQEAgLTYxOCw2ICs2NDgsOCBAQCBteSAlZnVs bF9ydW5zID0gKAogCWV4Y2x1ZGVfZHVtcF90ZXN0X3NjaGVtYSA9PiAxLAogCWV4Y2x1ZGVf dGVzdF90YWJsZSAgICAgICA9PiAxLAogCWV4Y2x1ZGVfdGVzdF90YWJsZV9kYXRhICA9PiAx LAorCWV4Y2x1ZGVfbWVhc3VyZW1lbnQgICAgICA9PiAxLAorCWV4Y2x1ZGVfbWVhc3VyZW1l bnRfZGF0YSA9PiAxLAogCW5vX3RvYXN0X2NvbXByZXNzaW9uICAgICA9PiAxLAogCW5vX2xh cmdlX29iamVjdHMgICAgICAgICA9PiAxLAogCW5vX293bmVyICAgICAgICAgICAgICAgICA9 PiAxLApAQCAtNjQ0LDYgKzY3Niw3IEBAIG15ICV0ZXN0cyA9ICgKIAkJdW5saWtlID0+IHsK IAkJCWV4Y2x1ZGVfZHVtcF90ZXN0X3NjaGVtYSA9PiAxLAogCQkJbm9fcHJpdnMgICAgICAg ICAgICAgICAgID0+IDEsCisJCQlvbmx5X2R1bXBfbWVhc3VyZW1lbnQgICAgPT4gMSwKIAkJ fSwKIAl9LAogCkBAIC02NjMsNiArNjk2LDcgQEAgbXkgJXRlc3RzID0gKAogCQl1bmxpa2Ug PT4gewogCQkJZXhjbHVkZV9kdW1wX3Rlc3Rfc2NoZW1hID0+IDEsCiAJCQlub19wcml2cyAg ICAgICAgICAgICAgICAgPT4gMSwKKwkJCW9ubHlfZHVtcF9tZWFzdXJlbWVudCAgICA9PiAx LAogCQl9LAogCSAgfSwKIApAQCAtNzQxLDYgKzc3NSw3IEBAIG15ICV0ZXN0cyA9ICgKIAkJ dW5saWtlID0+IHsKIAkJCWV4Y2x1ZGVfZHVtcF90ZXN0X3NjaGVtYSA9PiAxLAogCQkJbm9f b3duZXIgICAgICAgICAgICAgICAgID0+IDEsCisJCQlvbmx5X2R1bXBfbWVhc3VyZW1lbnQg ICAgPT4gMSwKIAkJfSwKIAl9LAogCkBAIC03NTQsNiArNzg5LDcgQEAgbXkgJXRlc3RzID0g KAogCQl1bmxpa2UgPT4gewogCQkJZXhjbHVkZV9kdW1wX3Rlc3Rfc2NoZW1hID0+IDEsCiAJ CQlub19vd25lciAgICAgICAgICAgICAgICAgPT4gMSwKKwkJCW9ubHlfZHVtcF9tZWFzdXJl bWVudCAgICA9PiAxLAogCQl9LAogCX0sCiAKQEAgLTc4Niw3ICs4MjIsMTAgQEAgbXkgJXRl c3RzID0gKAogCQkJL3htLAogCQlsaWtlID0+CiAJCSAgeyAlZnVsbF9ydW5zLCAlZHVtcF90 ZXN0X3NjaGVtYV9ydW5zLCBzZWN0aW9uX3ByZV9kYXRhID0+IDEsIH0sCi0JCXVubGlrZSA9 PiB7IGV4Y2x1ZGVfZHVtcF90ZXN0X3NjaGVtYSA9PiAxLCB9LAorCQl1bmxpa2UgPT4gewor CQkJZXhjbHVkZV9kdW1wX3Rlc3Rfc2NoZW1hID0+IDEsCisJCQlvbmx5X2R1bXBfbWVhc3Vy ZW1lbnQgICAgPT4gMSwKKwkJfSwKIAl9LAogCiAJJ0FMVEVSIE9QRVJBVE9SIENMQVNTIGR1 bXBfdGVzdC5vcF9jbGFzcyBPV05FUiBUTycgPT4gewpAQCAtNzk5LDYgKzgzOCw3IEBAIG15 ICV0ZXN0cyA9ICgKIAkJdW5saWtlID0+IHsKIAkJCWV4Y2x1ZGVfZHVtcF90ZXN0X3NjaGVt YSA9PiAxLAogCQkJbm9fb3duZXIgICAgICAgICAgICAgICAgID0+IDEsCisJCQlvbmx5X2R1 bXBfbWVhc3VyZW1lbnQgICAgPT4gMSwKIAkJfSwKIAl9LAogCkBAIC04MzgsNiArODc4LDcg QEAgbXkgJXRlc3RzID0gKAogCQl1bmxpa2UgPT4gewogCQkJZXhjbHVkZV9kdW1wX3Rlc3Rf c2NoZW1hID0+IDEsCiAJCQlub19vd25lciAgICAgICAgICAgICAgICAgPT4gMSwKKwkJCW9u bHlfZHVtcF9tZWFzdXJlbWVudCAgICA9PiAxLAogCQl9LAogCX0sCiAKQEAgLTg4NCw2ICs5 MjUsNyBAQCBteSAldGVzdHMgPSAoCiAJCXVubGlrZSA9PiB7CiAJCQlleGNsdWRlX2R1bXBf dGVzdF9zY2hlbWEgPT4gMSwKIAkJCWV4Y2x1ZGVfdGVzdF90YWJsZSAgICAgICA9PiAxLAor CQkJb25seV9kdW1wX21lYXN1cmVtZW50ICAgID0+IDEsCiAJCX0sCiAJfSwKIApAQCAtOTAx LDYgKzk0Myw3IEBAIG15ICV0ZXN0cyA9ICgKIAkJdW5saWtlID0+IHsKIAkJCWV4Y2x1ZGVf ZHVtcF90ZXN0X3NjaGVtYSA9PiAxLAogCQkJZXhjbHVkZV90ZXN0X3RhYmxlICAgICAgID0+ IDEsCisJCQlvbmx5X2R1bXBfbWVhc3VyZW1lbnQgICAgPT4gMSwKIAkJfSwKIAl9LAogCkBA IC05MjAsNiArOTYzLDcgQEAgbXkgJXRlc3RzID0gKAogCQl9LAogCQl1bmxpa2UgPT4gewog CQkJZXhjbHVkZV9kdW1wX3Rlc3Rfc2NoZW1hID0+IDEsCisJCQlvbmx5X2R1bXBfbWVhc3Vy ZW1lbnQgICAgPT4gMSwKIAkJfSwKIAl9LAogCkBAIC05MzksNiArOTgzLDcgQEAgbXkgJXRl c3RzID0gKAogCQl1bmxpa2UgPT4gewogCQkJZXhjbHVkZV9kdW1wX3Rlc3Rfc2NoZW1hID0+ IDEsCiAJCQlleGNsdWRlX3Rlc3RfdGFibGUgICAgICAgPT4gMSwKKwkJCW9ubHlfZHVtcF9t ZWFzdXJlbWVudCAgICA9PiAxLAogCQl9LAogCX0sCiAKQEAgLTk1OCw2ICsxMDAzLDcgQEAg bXkgJXRlc3RzID0gKAogCQl1bmxpa2UgPT4gewogCQkJZXhjbHVkZV9kdW1wX3Rlc3Rfc2No ZW1hID0+IDEsCiAJCQlleGNsdWRlX3Rlc3RfdGFibGUgICAgICAgPT4gMSwKKwkJCW9ubHlf ZHVtcF9tZWFzdXJlbWVudCAgICA9PiAxLAogCQl9LAogCX0sCiAKQEAgLTk3Nyw2ICsxMDIz LDcgQEAgbXkgJXRlc3RzID0gKAogCQl1bmxpa2UgPT4gewogCQkJZXhjbHVkZV9kdW1wX3Rl c3Rfc2NoZW1hID0+IDEsCiAJCQlleGNsdWRlX3Rlc3RfdGFibGUgICAgICAgPT4gMSwKKwkJ CW9ubHlfZHVtcF9tZWFzdXJlbWVudCAgICA9PiAxLAogCQl9LAogCX0sCiAKQEAgLTk5Niw2 ICsxMDQzLDcgQEAgbXkgJXRlc3RzID0gKAogCQl1bmxpa2UgPT4gewogCQkJZXhjbHVkZV9k dW1wX3Rlc3Rfc2NoZW1hID0+IDEsCiAJCQlleGNsdWRlX3Rlc3RfdGFibGUgICAgICAgPT4g MSwKKwkJCW9ubHlfZHVtcF9tZWFzdXJlbWVudCAgICA9PiAxLAogCQl9LAogCX0sCiAKQEAg LTEwMTAsNiArMTA1OCwxMCBAQCBteSAldGVzdHMgPSAoCiAJCQlyb2xlICAgICAgICAgICAg ID0+IDEsCiAJCQlzZWN0aW9uX3ByZV9kYXRhID0+IDEsCiAJCQliaW5hcnlfdXBncmFkZSAg ID0+IDEsCisJCQlvbmx5X2R1bXBfbWVhc3VyZW1lbnQgPT4gMSwKKwkJfSwKKwkJdW5saWtl ID0+IHsKKwkJCWV4Y2x1ZGVfbWVhc3VyZW1lbnQgPT4gMSwKIAkJfSwKIAkgIH0sCiAKQEAg LTEwMjksNiArMTA4MSw3IEBAIG15ICV0ZXN0cyA9ICgKIAkJdW5saWtlID0+IHsKIAkJCWV4 Y2x1ZGVfZHVtcF90ZXN0X3NjaGVtYSA9PiAxLAogCQkJZXhjbHVkZV90ZXN0X3RhYmxlICAg ICAgID0+IDEsCisJCQlvbmx5X2R1bXBfbWVhc3VyZW1lbnQgICAgPT4gMSwKIAkJfSwKIAl9 LAogCkBAIC0xMDUwLDcgKzExMDMsMTAgQEAgbXkgJXRlc3RzID0gKAogCQkJL3htLAogCQls aWtlID0+CiAJCSAgeyAlZnVsbF9ydW5zLCAlZHVtcF90ZXN0X3NjaGVtYV9ydW5zLCBzZWN0 aW9uX3ByZV9kYXRhID0+IDEsIH0sCi0JCXVubGlrZSA9PiB7IGV4Y2x1ZGVfZHVtcF90ZXN0 X3NjaGVtYSA9PiAxLCB9LAorCQl1bmxpa2UgPT4geworCQkJZXhjbHVkZV9kdW1wX3Rlc3Rf c2NoZW1hID0+IDEsCisJCQlvbmx5X2R1bXBfbWVhc3VyZW1lbnQgICAgPT4gMSwKKwkJfSwK IAl9LAogCiAJJ0FMVEVSIFRBQkxFIHRlc3RfdGFibGUgT1dORVIgVE8nID0+IHsKQEAgLTEw NjQsNiArMTEyMCw3IEBAIG15ICV0ZXN0cyA9ICgKIAkJdW5saWtlID0+IHsKIAkJCWV4Y2x1 ZGVfZHVtcF90ZXN0X3NjaGVtYSA9PiAxLAogCQkJZXhjbHVkZV90ZXN0X3RhYmxlICAgICAg ID0+IDEsCisJCQlvbmx5X2R1bXBfbWVhc3VyZW1lbnQgICAgPT4gMSwKIAkJCW5vX293bmVy ICAgICAgICAgICAgICAgICA9PiAxLAogCQl9LAogCX0sCkBAIC0xMDgzLDYgKzExNDAsNyBA QCBteSAldGVzdHMgPSAoCiAJCXVubGlrZSA9PiB7CiAJCQlleGNsdWRlX2R1bXBfdGVzdF9z Y2hlbWEgPT4gMSwKIAkJCWV4Y2x1ZGVfdGVzdF90YWJsZSAgICAgICA9PiAxLAorCQkJb25s eV9kdW1wX21lYXN1cmVtZW50ICAgID0+IDEsCiAJCX0sCiAJfSwKIApAQCAtMTA5NCwxNiAr MTE1MiwyMiBAQCBteSAldGVzdHMgPSAoCiAJCXVubGlrZSA9PiB7CiAJCQlleGNsdWRlX2R1 bXBfdGVzdF9zY2hlbWEgPT4gMSwKIAkJCW5vX293bmVyICAgICAgICAgICAgICAgICA9PiAx LAorCQkJb25seV9kdW1wX21lYXN1cmVtZW50ICAgID0+IDEsCiAJCX0sCiAJfSwKIAogCSdB TFRFUiBUQUJMRSBtZWFzdXJlbWVudCBPV05FUiBUTycgPT4gewogCQlyZWdleHAgPT4gcXIv XlxRQUxURVIgVEFCTEUgZHVtcF90ZXN0Lm1lYXN1cmVtZW50IE9XTkVSIFRPIFxFLis7L20s Ci0JCWxpa2UgPT4KLQkJICB7ICVmdWxsX3J1bnMsICVkdW1wX3Rlc3Rfc2NoZW1hX3J1bnMs IHNlY3Rpb25fcHJlX2RhdGEgPT4gMSwgfSwKKwkJbGlrZSA9PiB7CisJCQklZnVsbF9ydW5z LAorCQkJJWR1bXBfdGVzdF9zY2hlbWFfcnVucywKKwkJCXNlY3Rpb25fcHJlX2RhdGEgPT4g MSwKKwkJCW9ubHlfZHVtcF9tZWFzdXJlbWVudCA9PiAxLAorCQl9LAogCQl1bmxpa2UgPT4g ewogCQkJZXhjbHVkZV9kdW1wX3Rlc3Rfc2NoZW1hID0+IDEsCiAJCQlub19vd25lciAgICAg ICAgICAgICAgICAgPT4gMSwKKwkJCWV4Y2x1ZGVfbWVhc3VyZW1lbnQgICAgICA9PiAxLAog CQl9LAogCX0sCiAKQEAgLTExMTQsOCArMTE3OCwxMiBAQCBteSAldGVzdHMgPSAoCiAJCQkl ZnVsbF9ydW5zLAogCQkJcm9sZSAgICAgICAgICAgICA9PiAxLAogCQkJc2VjdGlvbl9wcmVf ZGF0YSA9PiAxLAorCQkJb25seV9kdW1wX21lYXN1cmVtZW50ID0+IDEsCisJCX0sCisJCXVu bGlrZSA9PiB7CisJCQlub19vd25lciA9PiAxLAorCQkJZXhjbHVkZV9tZWFzdXJlbWVudCA9 PiAxLAogCQl9LAotCQl1bmxpa2UgPT4geyBub19vd25lciA9PiAxLCB9LAogCX0sCiAKIAkn QUxURVIgRk9SRUlHTiBUQUJMRSBmb3JlaWduX3RhYmxlIE9XTkVSIFRPJyA9PiB7CkBAIC0x MTI2LDYgKzExOTQsNyBAQCBteSAldGVzdHMgPSAoCiAJCXVubGlrZSA9PiB7CiAJCQlleGNs dWRlX2R1bXBfdGVzdF9zY2hlbWEgPT4gMSwKIAkJCW5vX293bmVyICAgICAgICAgICAgICAg ICA9PiAxLAorCQkJb25seV9kdW1wX21lYXN1cmVtZW50ICAgID0+IDEsCiAJCX0sCiAJfSwK IApAQCAtMTEzNyw2ICsxMjA2LDcgQEAgbXkgJXRlc3RzID0gKAogCQl1bmxpa2UgPT4gewog CQkJZXhjbHVkZV9kdW1wX3Rlc3Rfc2NoZW1hID0+IDEsCiAJCQlub19vd25lciAgICAgICAg ICAgICAgICAgPT4gMSwKKwkJCW9ubHlfZHVtcF9tZWFzdXJlbWVudCAgICA9PiAxLAogCQl9 LAogCX0sCiAKQEAgLTExNTAsNiArMTIyMCw3IEBAIG15ICV0ZXN0cyA9ICgKIAkJCW9ubHlf ZHVtcF90ZXN0X3RhYmxlICAgICA9PiAxLAogCQkJbm9fb3duZXIgICAgICAgICAgICAgICAg ID0+IDEsCiAJCQlyb2xlICAgICAgICAgICAgICAgICAgICAgPT4gMSwKKwkJCW9ubHlfZHVt cF9tZWFzdXJlbWVudCAgICA9PiAxLAogCQl9LAogCX0sCiAKQEAgLTEyNDAsNiArMTMxMSw3 IEBAIG15ICV0ZXN0cyA9ICgKIAkJdW5saWtlID0+IHsKIAkJCWV4Y2x1ZGVfZHVtcF90ZXN0 X3NjaGVtYSA9PiAxLAogCQkJZXhjbHVkZV90ZXN0X3RhYmxlICAgICAgID0+IDEsCisJCQlv bmx5X2R1bXBfbWVhc3VyZW1lbnQgICAgPT4gMSwKIAkJfSwKIAl9LAogCkBAIC0xMjU5LDYg KzEzMzEsNyBAQCBteSAldGVzdHMgPSAoCiAJCXVubGlrZSA9PiB7CiAJCQlleGNsdWRlX2R1 bXBfdGVzdF9zY2hlbWEgPT4gMSwKIAkJCWV4Y2x1ZGVfdGVzdF90YWJsZSAgICAgICA9PiAx LAorCQkJb25seV9kdW1wX21lYXN1cmVtZW50ICAgID0+IDEsCiAJCX0sCiAJfSwKIApAQCAt MTI3MSw3ICsxMzQ0LDEwIEBAIG15ICV0ZXN0cyA9ICgKIAkJCS94bSwKIAkJbGlrZSA9Pgog CQkgIHsgJWZ1bGxfcnVucywgJWR1bXBfdGVzdF9zY2hlbWFfcnVucywgc2VjdGlvbl9wcmVf ZGF0YSA9PiAxLCB9LAotCQl1bmxpa2UgPT4geyBleGNsdWRlX2R1bXBfdGVzdF9zY2hlbWEg PT4gMSwgfSwKKwkJdW5saWtlID0+IHsKKwkJCWV4Y2x1ZGVfZHVtcF90ZXN0X3NjaGVtYSA9 PiAxLAorCQkJb25seV9kdW1wX21lYXN1cmVtZW50ICAgID0+IDEsCisJCX0sCiAJfSwKIAog CSdDT01NRU5UIE9OIENPTFVNTiBkdW1wX3Rlc3QudGVzdF9zZWNvbmRfdGFibGUuY29sMScg PT4gewpAQCAtMTI4Myw3ICsxMzU5LDEwIEBAIG15ICV0ZXN0cyA9ICgKIAkJCS94bSwKIAkJ bGlrZSA9PgogCQkgIHsgJWZ1bGxfcnVucywgJWR1bXBfdGVzdF9zY2hlbWFfcnVucywgc2Vj dGlvbl9wcmVfZGF0YSA9PiAxLCB9LAotCQl1bmxpa2UgPT4geyBleGNsdWRlX2R1bXBfdGVz dF9zY2hlbWEgPT4gMSwgfSwKKwkJdW5saWtlID0+IHsKKwkJCWV4Y2x1ZGVfZHVtcF90ZXN0 X3NjaGVtYSA9PiAxLAorCQkJb25seV9kdW1wX21lYXN1cmVtZW50ICAgID0+IDEsCisJCX0s CiAJfSwKIAogCSdDT01NRU5UIE9OIENPTFVNTiBkdW1wX3Rlc3QudGVzdF9zZWNvbmRfdGFi bGUuY29sMicgPT4gewpAQCAtMTI5NSw3ICsxMzc0LDEwIEBAIG15ICV0ZXN0cyA9ICgKIAkJ CS94bSwKIAkJbGlrZSA9PgogCQkgIHsgJWZ1bGxfcnVucywgJWR1bXBfdGVzdF9zY2hlbWFf cnVucywgc2VjdGlvbl9wcmVfZGF0YSA9PiAxLCB9LAotCQl1bmxpa2UgPT4geyBleGNsdWRl X2R1bXBfdGVzdF9zY2hlbWEgPT4gMSwgfSwKKwkJdW5saWtlID0+IHsKKwkJCWV4Y2x1ZGVf ZHVtcF90ZXN0X3NjaGVtYSA9PiAxLAorCQkJb25seV9kdW1wX21lYXN1cmVtZW50ICAgID0+ IDEsCisJCX0sCiAJfSwKIAogCSdDT01NRU5UIE9OIENPTlZFUlNJT04gZHVtcF90ZXN0LnRl c3RfY29udmVyc2lvbicgPT4gewpAQCAtMTMwNiw3ICsxMzg4LDEwIEBAIG15ICV0ZXN0cyA9 ICgKIAkJICBxci9eXFFDT01NRU5UIE9OIENPTlZFUlNJT04gZHVtcF90ZXN0LnRlc3RfY29u dmVyc2lvbiBJUyAnY29tbWVudCBvbiB0ZXN0IGNvbnZlcnNpb24nO1xFL20sCiAJCWxpa2Ug PT4KIAkJICB7ICVmdWxsX3J1bnMsICVkdW1wX3Rlc3Rfc2NoZW1hX3J1bnMsIHNlY3Rpb25f cHJlX2RhdGEgPT4gMSwgfSwKLQkJdW5saWtlID0+IHsgZXhjbHVkZV9kdW1wX3Rlc3Rfc2No ZW1hID0+IDEsIH0sCisJCXVubGlrZSA9PiB7CisJCQlleGNsdWRlX2R1bXBfdGVzdF9zY2hl bWEgPT4gMSwKKwkJCW9ubHlfZHVtcF9tZWFzdXJlbWVudCAgICA9PiAxLAorCQl9LAogCX0s CiAKIAknQ09NTUVOVCBPTiBDT0xMQVRJT04gdGVzdDAnID0+IHsKQEAgLTEzNzIsNyArMTQ1 NywxMCBAQCBteSAldGVzdHMgPSAoCiAJCSAgcXIvXlxRQ09NTUVOVCBPTiBURVhUIFNFQVJD SCBDT05GSUdVUkFUSU9OIGR1bXBfdGVzdC5hbHRfdHNfY29uZjEgSVMgJ2NvbW1lbnQgb24g dGV4dCBzZWFyY2ggY29uZmlndXJhdGlvbic7XEUvbSwKIAkJbGlrZSA9PgogCQkgIHsgJWZ1 bGxfcnVucywgJWR1bXBfdGVzdF9zY2hlbWFfcnVucywgc2VjdGlvbl9wcmVfZGF0YSA9PiAx LCB9LAotCQl1bmxpa2UgPT4geyBleGNsdWRlX2R1bXBfdGVzdF9zY2hlbWEgPT4gMSwgfSwK KwkJdW5saWtlID0+IHsKKwkJCWV4Y2x1ZGVfZHVtcF90ZXN0X3NjaGVtYSA9PiAxLAorCQkJ b25seV9kdW1wX21lYXN1cmVtZW50ICAgID0+IDEsCisJCX0sCiAJfSwKIAogCSdDT01NRU5U IE9OIFRFWFQgU0VBUkNIIERJQ1RJT05BUlkgZHVtcF90ZXN0LmFsdF90c19kaWN0MScgPT4g ewpAQCAtMTM4NCw3ICsxNDcyLDEwIEBAIG15ICV0ZXN0cyA9ICgKIAkJICBxci9eXFFDT01N RU5UIE9OIFRFWFQgU0VBUkNIIERJQ1RJT05BUlkgZHVtcF90ZXN0LmFsdF90c19kaWN0MSBJ UyAnY29tbWVudCBvbiB0ZXh0IHNlYXJjaCBkaWN0aW9uYXJ5JztcRS9tLAogCQlsaWtlID0+ CiAJCSAgeyAlZnVsbF9ydW5zLCAlZHVtcF90ZXN0X3NjaGVtYV9ydW5zLCBzZWN0aW9uX3By ZV9kYXRhID0+IDEsIH0sCi0JCXVubGlrZSA9PiB7IGV4Y2x1ZGVfZHVtcF90ZXN0X3NjaGVt YSA9PiAxLCB9LAorCQl1bmxpa2UgPT4geworCQkJZXhjbHVkZV9kdW1wX3Rlc3Rfc2NoZW1h ID0+IDEsCisJCQlvbmx5X2R1bXBfbWVhc3VyZW1lbnQgICAgPT4gMSwKKwkJfSwKIAl9LAog CiAJJ0NPTU1FTlQgT04gVEVYVCBTRUFSQ0ggUEFSU0VSIGR1bXBfdGVzdC5hbHRfdHNfcHJz MScgPT4gewpAQCAtMTM5NSw3ICsxNDg2LDEwIEBAIG15ICV0ZXN0cyA9ICgKIAkJICBxci9e XFFDT01NRU5UIE9OIFRFWFQgU0VBUkNIIFBBUlNFUiBkdW1wX3Rlc3QuYWx0X3RzX3ByczEg SVMgJ2NvbW1lbnQgb24gdGV4dCBzZWFyY2ggcGFyc2VyJztcRS9tLAogCQlsaWtlID0+CiAJ CSAgeyAlZnVsbF9ydW5zLCAlZHVtcF90ZXN0X3NjaGVtYV9ydW5zLCBzZWN0aW9uX3ByZV9k YXRhID0+IDEsIH0sCi0JCXVubGlrZSA9PiB7IGV4Y2x1ZGVfZHVtcF90ZXN0X3NjaGVtYSA9 PiAxLCB9LAorCQl1bmxpa2UgPT4geworCQkJZXhjbHVkZV9kdW1wX3Rlc3Rfc2NoZW1hID0+ IDEsCisJCQlvbmx5X2R1bXBfbWVhc3VyZW1lbnQgICAgPT4gMSwKKwkJfSwKIAl9LAogCiAJ J0NPTU1FTlQgT04gVEVYVCBTRUFSQ0ggVEVNUExBVEUgZHVtcF90ZXN0LmFsdF90c190ZW1w MScgPT4gewpAQCAtMTQwNiw3ICsxNTAwLDEwIEBAIG15ICV0ZXN0cyA9ICgKIAkJICBxci9e XFFDT01NRU5UIE9OIFRFWFQgU0VBUkNIIFRFTVBMQVRFIGR1bXBfdGVzdC5hbHRfdHNfdGVt cDEgSVMgJ2NvbW1lbnQgb24gdGV4dCBzZWFyY2ggdGVtcGxhdGUnO1xFL20sCiAJCWxpa2Ug PT4KIAkJICB7ICVmdWxsX3J1bnMsICVkdW1wX3Rlc3Rfc2NoZW1hX3J1bnMsIHNlY3Rpb25f cHJlX2RhdGEgPT4gMSwgfSwKLQkJdW5saWtlID0+IHsgZXhjbHVkZV9kdW1wX3Rlc3Rfc2No ZW1hID0+IDEsIH0sCisJCXVubGlrZSA9PiB7CisJCQlleGNsdWRlX2R1bXBfdGVzdF9zY2hl bWEgPT4gMSwKKwkJCW9ubHlfZHVtcF9tZWFzdXJlbWVudCAgICA9PiAxLAorCQl9LAogCX0s CiAKIAknQ09NTUVOVCBPTiBUWVBFIGR1bXBfdGVzdC5wbGFuZXRzIC0gRU5VTScgPT4gewpA QCAtMTQxNyw3ICsxNTE0LDEwIEBAIG15ICV0ZXN0cyA9ICgKIAkJICBxci9eXFFDT01NRU5U IE9OIFRZUEUgZHVtcF90ZXN0LnBsYW5ldHMgSVMgJ2NvbW1lbnQgb24gZW51bSB0eXBlJztc RS9tLAogCQlsaWtlID0+CiAJCSAgeyAlZnVsbF9ydW5zLCAlZHVtcF90ZXN0X3NjaGVtYV9y dW5zLCBzZWN0aW9uX3ByZV9kYXRhID0+IDEsIH0sCi0JCXVubGlrZSA9PiB7IGV4Y2x1ZGVf ZHVtcF90ZXN0X3NjaGVtYSA9PiAxLCB9LAorCQl1bmxpa2UgPT4geworCQkJZXhjbHVkZV9k dW1wX3Rlc3Rfc2NoZW1hID0+IDEsCisJCQlvbmx5X2R1bXBfbWVhc3VyZW1lbnQgICAgPT4g MSwKKwkJfSwKIAl9LAogCiAJJ0NPTU1FTlQgT04gVFlQRSBkdW1wX3Rlc3QudGV4dHJhbmdl IC0gUkFOR0UnID0+IHsKQEAgLTE0MjgsNyArMTUyOCwxMCBAQCBteSAldGVzdHMgPSAoCiAJ CSAgcXIvXlxRQ09NTUVOVCBPTiBUWVBFIGR1bXBfdGVzdC50ZXh0cmFuZ2UgSVMgJ2NvbW1l bnQgb24gcmFuZ2UgdHlwZSc7XEUvbSwKIAkJbGlrZSA9PgogCQkgIHsgJWZ1bGxfcnVucywg JWR1bXBfdGVzdF9zY2hlbWFfcnVucywgc2VjdGlvbl9wcmVfZGF0YSA9PiAxLCB9LAotCQl1 bmxpa2UgPT4geyBleGNsdWRlX2R1bXBfdGVzdF9zY2hlbWEgPT4gMSwgfSwKKwkJdW5saWtl ID0+IHsKKwkJCWV4Y2x1ZGVfZHVtcF90ZXN0X3NjaGVtYSA9PiAxLAorCQkJb25seV9kdW1w X21lYXN1cmVtZW50ICAgID0+IDEsCisJCX0sCiAJfSwKIAogCSdDT01NRU5UIE9OIFRZUEUg ZHVtcF90ZXN0LmludDQyIC0gUmVndWxhcicgPT4gewpAQCAtMTQzOSw3ICsxNTQyLDEwIEBA IG15ICV0ZXN0cyA9ICgKIAkJICBxci9eXFFDT01NRU5UIE9OIFRZUEUgZHVtcF90ZXN0Lmlu dDQyIElTICdjb21tZW50IG9uIHJlZ3VsYXIgdHlwZSc7XEUvbSwKIAkJbGlrZSA9PgogCQkg IHsgJWZ1bGxfcnVucywgJWR1bXBfdGVzdF9zY2hlbWFfcnVucywgc2VjdGlvbl9wcmVfZGF0 YSA9PiAxLCB9LAotCQl1bmxpa2UgPT4geyBleGNsdWRlX2R1bXBfdGVzdF9zY2hlbWEgPT4g MSwgfSwKKwkJdW5saWtlID0+IHsKKwkJCWV4Y2x1ZGVfZHVtcF90ZXN0X3NjaGVtYSA9PiAx LAorCQkJb25seV9kdW1wX21lYXN1cmVtZW50ICAgID0+IDEsCisJCX0sCiAJfSwKIAogCSdD T01NRU5UIE9OIFRZUEUgZHVtcF90ZXN0LnVuZGVmaW5lZCAtIFVuZGVmaW5lZCcgPT4gewpA QCAtMTQ1MCw3ICsxNTU2LDEwIEBAIG15ICV0ZXN0cyA9ICgKIAkJICBxci9eXFFDT01NRU5U IE9OIFRZUEUgZHVtcF90ZXN0LnVuZGVmaW5lZCBJUyAnY29tbWVudCBvbiB1bmRlZmluZWQg dHlwZSc7XEUvbSwKIAkJbGlrZSA9PgogCQkgIHsgJWZ1bGxfcnVucywgJWR1bXBfdGVzdF9z Y2hlbWFfcnVucywgc2VjdGlvbl9wcmVfZGF0YSA9PiAxLCB9LAotCQl1bmxpa2UgPT4geyBl eGNsdWRlX2R1bXBfdGVzdF9zY2hlbWEgPT4gMSwgfSwKKwkJdW5saWtlID0+IHsKKwkJCWV4 Y2x1ZGVfZHVtcF90ZXN0X3NjaGVtYSA9PiAxLAorCQkJb25seV9kdW1wX21lYXN1cmVtZW50 ICAgID0+IDEsCisJCX0sCiAJfSwKIAogCSdDT1BZIHRlc3RfdGFibGUnID0+IHsKQEAgLTE0 NzQsNiArMTU4Myw3IEBAIG15ICV0ZXN0cyA9ICgKIAkJCWV4Y2x1ZGVfdGVzdF90YWJsZSAg ICAgICA9PiAxLAogCQkJZXhjbHVkZV90ZXN0X3RhYmxlX2RhdGEgID0+IDEsCiAJCQlzY2hl bWFfb25seSAgICAgICAgICAgICAgPT4gMSwKKwkJCW9ubHlfZHVtcF9tZWFzdXJlbWVudCAg ICA9PiAxLAogCQl9LAogCX0sCiAKQEAgLTE0OTcsNiArMTYwNyw3IEBAIG15ICV0ZXN0cyA9 ICgKIAkJCWJpbmFyeV91cGdyYWRlICAgICAgICAgICA9PiAxLAogCQkJZXhjbHVkZV9kdW1w X3Rlc3Rfc2NoZW1hID0+IDEsCiAJCQlzY2hlbWFfb25seSAgICAgICAgICAgICAgPT4gMSwK KwkJCW9ubHlfZHVtcF9tZWFzdXJlbWVudCAgICA9PiAxLAogCQl9LAogCX0sCiAKQEAgLTE1 MzIsNiArMTY0Myw3IEBAIG15ICV0ZXN0cyA9ICgKIAkJCWJpbmFyeV91cGdyYWRlICAgICAg ICAgICA9PiAxLAogCQkJZXhjbHVkZV9kdW1wX3Rlc3Rfc2NoZW1hID0+IDEsCiAJCQlzY2hl bWFfb25seSAgICAgICAgICAgICAgPT4gMSwKKwkJCW9ubHlfZHVtcF9tZWFzdXJlbWVudCAg ICA9PiAxLAogCQl9LAogCX0sCiAKQEAgLTE1NTMsNiArMTY2NSw3IEBAIG15ICV0ZXN0cyA9 ICgKIAkJCWJpbmFyeV91cGdyYWRlICAgICAgICAgICA9PiAxLAogCQkJZXhjbHVkZV9kdW1w X3Rlc3Rfc2NoZW1hID0+IDEsCiAJCQlzY2hlbWFfb25seSAgICAgICAgICAgICAgPT4gMSwK KwkJCW9ubHlfZHVtcF9tZWFzdXJlbWVudCAgICA9PiAxLAogCQl9LAogCX0sCiAKQEAgLTE1 NzUsNiArMTY4OCw3IEBAIG15ICV0ZXN0cyA9ICgKIAkJCWJpbmFyeV91cGdyYWRlICAgICAg ICAgICA9PiAxLAogCQkJZXhjbHVkZV9kdW1wX3Rlc3Rfc2NoZW1hID0+IDEsCiAJCQlzY2hl bWFfb25seSAgICAgICAgICAgICAgPT4gMSwKKwkJCW9ubHlfZHVtcF9tZWFzdXJlbWVudCAg ICA9PiAxLAogCQl9LAogCX0sCiAKQEAgLTE1OTYsNiArMTcxMCw3IEBAIG15ICV0ZXN0cyA9 ICgKIAkJCWJpbmFyeV91cGdyYWRlICAgICAgICAgICA9PiAxLAogCQkJZXhjbHVkZV9kdW1w X3Rlc3Rfc2NoZW1hID0+IDEsCiAJCQlzY2hlbWFfb25seSAgICAgICAgICAgICAgPT4gMSwK KwkJCW9ubHlfZHVtcF9tZWFzdXJlbWVudCAgICA9PiAxLAogCQl9LAogCX0sCiAKQEAgLTE2 MTcsNiArMTczMiw3IEBAIG15ICV0ZXN0cyA9ICgKIAkJCWJpbmFyeV91cGdyYWRlICAgICAg ICAgICA9PiAxLAogCQkJZXhjbHVkZV9kdW1wX3Rlc3Rfc2NoZW1hID0+IDEsCiAJCQlzY2hl bWFfb25seSAgICAgICAgICAgICAgPT4gMSwKKwkJCW9ubHlfZHVtcF9tZWFzdXJlbWVudCAg ICA9PiAxLAogCQl9LAogCX0sCiAKQEAgLTE3OTYsNyArMTkxMiwxMCBAQCBteSAldGVzdHMg PSAoCiAJCQlleGNsdWRlX3Rlc3RfdGFibGUgPT4gMSwKIAkJCXNlY3Rpb25fcHJlX2RhdGEg ICA9PiAxLAogCQl9LAotCQl1bmxpa2UgPT4geyBleGNsdWRlX2R1bXBfdGVzdF9zY2hlbWEg PT4gMSwgfSwKKwkJdW5saWtlID0+IHsKKwkJCWV4Y2x1ZGVfZHVtcF90ZXN0X3NjaGVtYSA9 PiAxLAorCQkJb25seV9kdW1wX21lYXN1cmVtZW50ICAgID0+IDEsCisJCX0sCiAJfSwKIAog CSdDUkVBVEUgQ09OVkVSU0lPTiBkdW1wX3Rlc3QudGVzdF9jb252ZXJzaW9uJyA9PiB7CkBA IC0xODA3LDcgKzE5MjYsMTAgQEAgbXkgJXRlc3RzID0gKAogCQkgIHFyL15cUUNSRUFURSBE RUZBVUxUIENPTlZFUlNJT04gZHVtcF90ZXN0LnRlc3RfY29udmVyc2lvbiBGT1IgJ0xBVElO MScgVE8gJ1VURjgnIEZST00gaXNvODg1OV8xX3RvX3V0Zjg7XEUveG0sCiAJCWxpa2UgPT4K IAkJICB7ICVmdWxsX3J1bnMsICVkdW1wX3Rlc3Rfc2NoZW1hX3J1bnMsIHNlY3Rpb25fcHJl X2RhdGEgPT4gMSwgfSwKLQkJdW5saWtlID0+IHsgZXhjbHVkZV9kdW1wX3Rlc3Rfc2NoZW1h ID0+IDEsIH0sCisJCXVubGlrZSA9PiB7CisJCQlleGNsdWRlX2R1bXBfdGVzdF9zY2hlbWEg PT4gMSwKKwkJCW9ubHlfZHVtcF9tZWFzdXJlbWVudCAgICA9PiAxLAorCQl9LAogCX0sCiAK IAknQ1JFQVRFIERPTUFJTiBkdW1wX3Rlc3QudXNfcG9zdGFsX2NvZGUnID0+IHsKQEAgLTE4 MjksNyArMTk1MSwxMCBAQCBteSAldGVzdHMgPSAoCiAJCQkveG0sCiAJCWxpa2UgPT4KIAkJ ICB7ICVmdWxsX3J1bnMsICVkdW1wX3Rlc3Rfc2NoZW1hX3J1bnMsIHNlY3Rpb25fcHJlX2Rh dGEgPT4gMSwgfSwKLQkJdW5saWtlID0+IHsgZXhjbHVkZV9kdW1wX3Rlc3Rfc2NoZW1hID0+ IDEsIH0sCisJCXVubGlrZSA9PiB7CisJCQlleGNsdWRlX2R1bXBfdGVzdF9zY2hlbWEgPT4g MSwKKwkJCW9ubHlfZHVtcF9tZWFzdXJlbWVudCAgICA9PiAxLAorCQl9LAogCX0sCiAKIAkn Q1JFQVRFIEZVTkNUSU9OIGR1bXBfdGVzdC5wbHRlc3RsYW5nX2NhbGxfaGFuZGxlcicgPT4g ewpAQCAtMTg0Niw3ICsxOTcxLDEwIEBAIG15ICV0ZXN0cyA9ICgKIAkJCS94bSwKIAkJbGlr ZSA9PgogCQkgIHsgJWZ1bGxfcnVucywgJWR1bXBfdGVzdF9zY2hlbWFfcnVucywgc2VjdGlv bl9wcmVfZGF0YSA9PiAxLCB9LAotCQl1bmxpa2UgPT4geyBleGNsdWRlX2R1bXBfdGVzdF9z Y2hlbWEgPT4gMSwgfSwKKwkJdW5saWtlID0+IHsKKwkJCWV4Y2x1ZGVfZHVtcF90ZXN0X3Nj aGVtYSA9PiAxLAorCQkJb25seV9kdW1wX21lYXN1cmVtZW50ICAgID0+IDEsCisJCX0sCiAJ fSwKIAogCSdDUkVBVEUgRlVOQ1RJT04gZHVtcF90ZXN0LnRyaWdnZXJfZnVuYycgPT4gewpA QCAtMTg2Miw3ICsxOTkwLDEwIEBAIG15ICV0ZXN0cyA9ICgKIAkJCVwkXCQ7L3htLAogCQls aWtlID0+CiAJCSAgeyAlZnVsbF9ydW5zLCAlZHVtcF90ZXN0X3NjaGVtYV9ydW5zLCBzZWN0 aW9uX3ByZV9kYXRhID0+IDEsIH0sCi0JCXVubGlrZSA9PiB7IGV4Y2x1ZGVfZHVtcF90ZXN0 X3NjaGVtYSA9PiAxLCB9LAorCQl1bmxpa2UgPT4geworCQkJZXhjbHVkZV9kdW1wX3Rlc3Rf c2NoZW1hID0+IDEsCisJCQlvbmx5X2R1bXBfbWVhc3VyZW1lbnQgICAgPT4gMSwKKwkJfSwK IAl9LAogCiAJJ0NSRUFURSBGVU5DVElPTiBkdW1wX3Rlc3QuZXZlbnRfdHJpZ2dlcl9mdW5j JyA9PiB7CkBAIC0xODc4LDcgKzIwMDksMTAgQEAgbXkgJXRlc3RzID0gKAogCQkJXCRcJDsv eG0sCiAJCWxpa2UgPT4KIAkJICB7ICVmdWxsX3J1bnMsICVkdW1wX3Rlc3Rfc2NoZW1hX3J1 bnMsIHNlY3Rpb25fcHJlX2RhdGEgPT4gMSwgfSwKLQkJdW5saWtlID0+IHsgZXhjbHVkZV9k dW1wX3Rlc3Rfc2NoZW1hID0+IDEsIH0sCisJCXVubGlrZSA9PiB7CisJCQlleGNsdWRlX2R1 bXBfdGVzdF9zY2hlbWEgPT4gMSwKKwkJCW9ubHlfZHVtcF9tZWFzdXJlbWVudCAgICA9PiAx LAorCQl9LAogCX0sCiAKIAknQ1JFQVRFIE9QRVJBVE9SIEZBTUlMWSBkdW1wX3Rlc3Qub3Bf ZmFtaWx5JyA9PiB7CkBAIC0xODkwLDcgKzIwMjQsMTAgQEAgbXkgJXRlc3RzID0gKAogCQkJ L3htLAogCQlsaWtlID0+CiAJCSAgeyAlZnVsbF9ydW5zLCAlZHVtcF90ZXN0X3NjaGVtYV9y dW5zLCBzZWN0aW9uX3ByZV9kYXRhID0+IDEsIH0sCi0JCXVubGlrZSA9PiB7IGV4Y2x1ZGVf ZHVtcF90ZXN0X3NjaGVtYSA9PiAxLCB9LAorCQl1bmxpa2UgPT4geworCQkJZXhjbHVkZV9k dW1wX3Rlc3Rfc2NoZW1hID0+IDEsCisJCQlvbmx5X2R1bXBfbWVhc3VyZW1lbnQgICAgPT4g MSwKKwkJfSwKIAl9LAogCiAJJ0NSRUFURSBPUEVSQVRPUiBDTEFTUyBkdW1wX3Rlc3Qub3Bf Y2xhc3MnID0+IHsKQEAgLTE5MjAsNyArMjA1NywxMCBAQCBteSAldGVzdHMgPSAoCiAJCQkv eG0sCiAJCWxpa2UgPT4KIAkJICB7ICVmdWxsX3J1bnMsICVkdW1wX3Rlc3Rfc2NoZW1hX3J1 bnMsIHNlY3Rpb25fcHJlX2RhdGEgPT4gMSwgfSwKLQkJdW5saWtlID0+IHsgZXhjbHVkZV9k dW1wX3Rlc3Rfc2NoZW1hID0+IDEsIH0sCisJCXVubGlrZSA9PiB7CisJCQlleGNsdWRlX2R1 bXBfdGVzdF9zY2hlbWEgPT4gMSwKKwkJCW9ubHlfZHVtcF9tZWFzdXJlbWVudCAgICA9PiAx LAorCQl9LAogCX0sCiAKIAkjIHZlcmlmeSB0aGF0IGEgY3VzdG9tIG9wZXJhdG9yL29wY2xh c3MvcmFuZ2UgdHlwZSBpcyBkdW1wZWQgaW4gcmlnaHQgb3JkZXIKQEAgLTE5NTAsNyArMjA5 MCwxMCBAQCBteSAldGVzdHMgPSAoCiAJCQkveG1zLAogCQlsaWtlID0+CiAJCSAgeyAlZnVs bF9ydW5zLCAlZHVtcF90ZXN0X3NjaGVtYV9ydW5zLCBzZWN0aW9uX3ByZV9kYXRhID0+IDEs IH0sCi0JCXVubGlrZSA9PiB7IGV4Y2x1ZGVfZHVtcF90ZXN0X3NjaGVtYSA9PiAxLCB9LAor CQl1bmxpa2UgPT4geworCQkJZXhjbHVkZV9kdW1wX3Rlc3Rfc2NoZW1hID0+IDEsCisJCQlv bmx5X2R1bXBfbWVhc3VyZW1lbnQgPT4gMSwKKwkJfSwKIAl9LAogCiAJJ0NSRUFURSBPUEVS QVRPUiBDTEFTUyBkdW1wX3Rlc3Qub3BfY2xhc3NfZW1wdHknID0+IHsKQEAgLTE5NjUsNyAr MjEwOCwxMCBAQCBteSAldGVzdHMgPSAoCiAJCQkveG0sCiAJCWxpa2UgPT4KIAkJICB7ICVm dWxsX3J1bnMsICVkdW1wX3Rlc3Rfc2NoZW1hX3J1bnMsIHNlY3Rpb25fcHJlX2RhdGEgPT4g MSwgfSwKLQkJdW5saWtlID0+IHsgZXhjbHVkZV9kdW1wX3Rlc3Rfc2NoZW1hID0+IDEsIH0s CisJCXVubGlrZSA9PiB7CisJCQlleGNsdWRlX2R1bXBfdGVzdF9zY2hlbWEgPT4gMSwKKwkJ CW9ubHlfZHVtcF9tZWFzdXJlbWVudCAgICA9PiAxLAorCQl9LAogCX0sCiAKIAknQ1JFQVRF IEVWRU5UIFRSSUdHRVIgdGVzdF9ldmVudF90cmlnZ2VyJyA9PiB7CkBAIC0yMDAxLDYgKzIx NDcsNyBAQCBteSAldGVzdHMgPSAoCiAJCXVubGlrZSA9PiB7CiAJCQlleGNsdWRlX3Rlc3Rf dGFibGUgICAgICAgPT4gMSwKIAkJCWV4Y2x1ZGVfZHVtcF90ZXN0X3NjaGVtYSA9PiAxLAor CQkJb25seV9kdW1wX21lYXN1cmVtZW50ICAgID0+IDEsCiAJCX0sCiAJfSwKIApAQCAtMjAx OSw2ICsyMTY2LDcgQEAgbXkgJXRlc3RzID0gKAogCQl1bmxpa2UgPT4gewogCQkJYmluYXJ5 X3VwZ3JhZGUgICAgICAgICAgID0+IDEsCiAJCQlleGNsdWRlX2R1bXBfdGVzdF9zY2hlbWEg PT4gMSwKKwkJCW9ubHlfZHVtcF9tZWFzdXJlbWVudCAgICA9PiAxLAogCQl9LAogCX0sCiAK QEAgLTIwNDcsNyArMjE5NSwxMCBAQCBteSAldGVzdHMgPSAoCiAJCQlcblwpOy94bSwKIAkJ bGlrZSA9PgogCQkgIHsgJWZ1bGxfcnVucywgJWR1bXBfdGVzdF9zY2hlbWFfcnVucywgc2Vj dGlvbl9wcmVfZGF0YSA9PiAxLCB9LAotCQl1bmxpa2UgPT4geyBleGNsdWRlX2R1bXBfdGVz dF9zY2hlbWEgPT4gMSwgfSwKKwkJdW5saWtlID0+IHsKKwkJCWV4Y2x1ZGVfZHVtcF90ZXN0 X3NjaGVtYSA9PiAxLAorCQkJb25seV9kdW1wX21lYXN1cmVtZW50ICAgID0+IDEsCisJCX0s CiAJfSwKIAogCSdDUkVBVEUgVFlQRSBkdW1wX3Rlc3QuaW50NDInID0+IHsKQEAgLTIwNTYs NyArMjIwNywxMCBAQCBteSAldGVzdHMgPSAoCiAJCXJlZ2V4cCAgICAgICA9PiBxci9eXFFD UkVBVEUgVFlQRSBkdW1wX3Rlc3QuaW50NDI7XEUvbSwKIAkJbGlrZSA9PgogCQkgIHsgJWZ1 bGxfcnVucywgJWR1bXBfdGVzdF9zY2hlbWFfcnVucywgc2VjdGlvbl9wcmVfZGF0YSA9PiAx LCB9LAotCQl1bmxpa2UgPT4geyBleGNsdWRlX2R1bXBfdGVzdF9zY2hlbWEgPT4gMSwgfSwK KwkJdW5saWtlID0+IHsKKwkJCWV4Y2x1ZGVfZHVtcF90ZXN0X3NjaGVtYSA9PiAxLAorCQkJ b25seV9kdW1wX21lYXN1cmVtZW50ICAgID0+IDEsCisJCX0sCiAJfSwKIAogCSdDUkVBVEUg VEVYVCBTRUFSQ0ggQ09ORklHVVJBVElPTiBkdW1wX3Rlc3QuYWx0X3RzX2NvbmYxJyA9PiB7 CkBAIC0yMDY4LDcgKzIyMjIsMTAgQEAgbXkgJXRlc3RzID0gKAogCQkJXHMrXFFQQVJTRVIg PSBwZ19jYXRhbG9nLiJkZWZhdWx0IiApO1xFL3htLAogCQlsaWtlID0+CiAJCSAgeyAlZnVs bF9ydW5zLCAlZHVtcF90ZXN0X3NjaGVtYV9ydW5zLCBzZWN0aW9uX3ByZV9kYXRhID0+IDEs IH0sCi0JCXVubGlrZSA9PiB7IGV4Y2x1ZGVfZHVtcF90ZXN0X3NjaGVtYSA9PiAxLCB9LAor CQl1bmxpa2UgPT4geworCQkJZXhjbHVkZV9kdW1wX3Rlc3Rfc2NoZW1hID0+IDEsCisJCQlv bmx5X2R1bXBfbWVhc3VyZW1lbnQgICAgPT4gMSwKKwkJfSwKIAl9LAogCiAJJ0FMVEVSIFRF WFQgU0VBUkNIIENPTkZJR1VSQVRJT04gZHVtcF90ZXN0LmFsdF90c19jb25mMSAuLi4nID0+ IHsKQEAgLTIxMzMsNyArMjI5MCwxMCBAQCBteSAldGVzdHMgPSAoCiAJCQkveG0sCiAJCWxp a2UgPT4KIAkJICB7ICVmdWxsX3J1bnMsICVkdW1wX3Rlc3Rfc2NoZW1hX3J1bnMsIHNlY3Rp b25fcHJlX2RhdGEgPT4gMSwgfSwKLQkJdW5saWtlID0+IHsgZXhjbHVkZV9kdW1wX3Rlc3Rf c2NoZW1hID0+IDEsIH0sCisJCXVubGlrZSA9PiB7CisJCQlleGNsdWRlX2R1bXBfdGVzdF9z Y2hlbWEgPT4gMSwKKwkJCW9ubHlfZHVtcF9tZWFzdXJlbWVudCAgICA9PiAxLAorCQl9LAog CX0sCiAKIAknQ1JFQVRFIFRFWFQgU0VBUkNIIFRFTVBMQVRFIGR1bXBfdGVzdC5hbHRfdHNf dGVtcDEnID0+IHsKQEAgLTIxNDUsNyArMjMwNSwxMCBAQCBteSAldGVzdHMgPSAoCiAJCQlc cytcUUxFWElaRSA9IGRzaW1wbGVfbGV4aXplICk7XEUveG0sCiAJCWxpa2UgPT4KIAkJICB7 ICVmdWxsX3J1bnMsICVkdW1wX3Rlc3Rfc2NoZW1hX3J1bnMsIHNlY3Rpb25fcHJlX2RhdGEg PT4gMSwgfSwKLQkJdW5saWtlID0+IHsgZXhjbHVkZV9kdW1wX3Rlc3Rfc2NoZW1hID0+IDEs IH0sCisJCXVubGlrZSA9PiB7CisJCQlleGNsdWRlX2R1bXBfdGVzdF9zY2hlbWEgPT4gMSwK KwkJCW9ubHlfZHVtcF9tZWFzdXJlbWVudCAgICA9PiAxLAorCQl9LAogCX0sCiAKIAknQ1JF QVRFIFRFWFQgU0VBUkNIIFBBUlNFUiBkdW1wX3Rlc3QuYWx0X3RzX3ByczEnID0+IHsKQEAg LTIxNjEsNyArMjMyNCwxMCBAQCBteSAldGVzdHMgPSAoCiAJCQkveG0sCiAJCWxpa2UgPT4K IAkJICB7ICVmdWxsX3J1bnMsICVkdW1wX3Rlc3Rfc2NoZW1hX3J1bnMsIHNlY3Rpb25fcHJl X2RhdGEgPT4gMSwgfSwKLQkJdW5saWtlID0+IHsgZXhjbHVkZV9kdW1wX3Rlc3Rfc2NoZW1h ID0+IDEsIH0sCisJCXVubGlrZSA9PiB7CisJCQlleGNsdWRlX2R1bXBfdGVzdF9zY2hlbWEg PT4gMSwKKwkJCW9ubHlfZHVtcF9tZWFzdXJlbWVudCAgICA9PiAxLAorCQl9LAogCX0sCiAK IAknQ1JFQVRFIFRFWFQgU0VBUkNIIERJQ1RJT05BUlkgZHVtcF90ZXN0LmFsdF90c19kaWN0 MScgPT4gewpAQCAtMjE3NCw3ICsyMzQwLDEwIEBAIG15ICV0ZXN0cyA9ICgKIAkJCS94bSwK IAkJbGlrZSA9PgogCQkgIHsgJWZ1bGxfcnVucywgJWR1bXBfdGVzdF9zY2hlbWFfcnVucywg c2VjdGlvbl9wcmVfZGF0YSA9PiAxLCB9LAotCQl1bmxpa2UgPT4geyBleGNsdWRlX2R1bXBf dGVzdF9zY2hlbWEgPT4gMSwgfSwKKwkJdW5saWtlID0+IHsKKwkJCWV4Y2x1ZGVfZHVtcF90 ZXN0X3NjaGVtYSA9PiAxLAorCQkJb25seV9kdW1wX21lYXN1cmVtZW50ICAgID0+IDEsCisJ CX0sCiAJfSwKIAogCSdDUkVBVEUgRlVOQ1RJT04gZHVtcF90ZXN0LmludDQyX2luJyA9PiB7 CkBAIC0yMTg5LDcgKzIzNTgsMTAgQEAgbXkgJXRlc3RzID0gKAogCQkJL3htLAogCQlsaWtl ID0+CiAJCSAgeyAlZnVsbF9ydW5zLCAlZHVtcF90ZXN0X3NjaGVtYV9ydW5zLCBzZWN0aW9u X3ByZV9kYXRhID0+IDEsIH0sCi0JCXVubGlrZSA9PiB7IGV4Y2x1ZGVfZHVtcF90ZXN0X3Nj aGVtYSA9PiAxLCB9LAorCQl1bmxpa2UgPT4geworCQkJZXhjbHVkZV9kdW1wX3Rlc3Rfc2No ZW1hID0+IDEsCisJCQlvbmx5X2R1bXBfbWVhc3VyZW1lbnQgICAgPT4gMSwKKwkJfSwKIAl9 LAogCiAJJ0NSRUFURSBGVU5DVElPTiBkdW1wX3Rlc3QuaW50NDJfb3V0JyA9PiB7CkBAIC0y MjA0LDcgKzIzNzYsMTAgQEAgbXkgJXRlc3RzID0gKAogCQkJL3htLAogCQlsaWtlID0+CiAJ CSAgeyAlZnVsbF9ydW5zLCAlZHVtcF90ZXN0X3NjaGVtYV9ydW5zLCBzZWN0aW9uX3ByZV9k YXRhID0+IDEsIH0sCi0JCXVubGlrZSA9PiB7IGV4Y2x1ZGVfZHVtcF90ZXN0X3NjaGVtYSA9 PiAxLCB9LAorCQl1bmxpa2UgPT4geworCQkJZXhjbHVkZV9kdW1wX3Rlc3Rfc2NoZW1hID0+ IDEsCisJCQlvbmx5X2R1bXBfbWVhc3VyZW1lbnQgICAgPT4gMSwKKwkJfSwKIAl9LAogCiAJ J0NSRUFURSBGVU5DVElPTiAuLi4gU1VQUE9SVCcgPT4gewpAQCAtMjIxOCw3ICsyMzkzLDEw IEBAIG15ICV0ZXN0cyA9ICgKIAkJCS94bSwKIAkJbGlrZSA9PgogCQkgIHsgJWZ1bGxfcnVu cywgJWR1bXBfdGVzdF9zY2hlbWFfcnVucywgc2VjdGlvbl9wcmVfZGF0YSA9PiAxLCB9LAot CQl1bmxpa2UgPT4geyBleGNsdWRlX2R1bXBfdGVzdF9zY2hlbWEgPT4gMSwgfSwKKwkJdW5s aWtlID0+IHsKKwkJCWV4Y2x1ZGVfZHVtcF90ZXN0X3NjaGVtYSA9PiAxLAorCQkJb25seV9k dW1wX21lYXN1cmVtZW50ICAgID0+IDEsCisJCX0sCiAJfSwKIAogCSdDUkVBVEUgUFJPQ0VE VVJFIGR1bXBfdGVzdC5wdGVzdDEnID0+IHsKQEAgLTIyMzIsNyArMjQxMCwxMCBAQCBteSAl dGVzdHMgPSAoCiAJCQkveG0sCiAJCWxpa2UgPT4KIAkJICB7ICVmdWxsX3J1bnMsICVkdW1w X3Rlc3Rfc2NoZW1hX3J1bnMsIHNlY3Rpb25fcHJlX2RhdGEgPT4gMSwgfSwKLQkJdW5saWtl ID0+IHsgZXhjbHVkZV9kdW1wX3Rlc3Rfc2NoZW1hID0+IDEsIH0sCisJCXVubGlrZSA9PiB7 CisJCQlleGNsdWRlX2R1bXBfdGVzdF9zY2hlbWEgPT4gMSwKKwkJCW9ubHlfZHVtcF9tZWFz dXJlbWVudCAgICA9PiAxLAorCQl9LAogCX0sCiAKIAknQ1JFQVRFIFRZUEUgZHVtcF90ZXN0 LmludDQyIHBvcHVsYXRlZCcgPT4gewpAQCAtMjI1Niw3ICsyNDM3LDEwIEBAIG15ICV0ZXN0 cyA9ICgKIAkJCS94bSwKIAkJbGlrZSA9PgogCQkgIHsgJWZ1bGxfcnVucywgJWR1bXBfdGVz dF9zY2hlbWFfcnVucywgc2VjdGlvbl9wcmVfZGF0YSA9PiAxLCB9LAotCQl1bmxpa2UgPT4g eyBleGNsdWRlX2R1bXBfdGVzdF9zY2hlbWEgPT4gMSwgfSwKKwkJdW5saWtlID0+IHsKKwkJ CWV4Y2x1ZGVfZHVtcF90ZXN0X3NjaGVtYSA9PiAxLAorCQkJb25seV9kdW1wX21lYXN1cmVt ZW50ICAgID0+IDEsCisJCX0sCiAJfSwKIAogCSdDUkVBVEUgVFlQRSBkdW1wX3Rlc3QuY29t cG9zaXRlJyA9PiB7CkBAIC0yMjczLDcgKzI0NTcsMTAgQEAgbXkgJXRlc3RzID0gKAogCQkJ L3htLAogCQlsaWtlID0+CiAJCSAgeyAlZnVsbF9ydW5zLCAlZHVtcF90ZXN0X3NjaGVtYV9y dW5zLCBzZWN0aW9uX3ByZV9kYXRhID0+IDEsIH0sCi0JCXVubGlrZSA9PiB7IGV4Y2x1ZGVf ZHVtcF90ZXN0X3NjaGVtYSA9PiAxLCB9LAorCQl1bmxpa2UgPT4geworCQkJZXhjbHVkZV9k dW1wX3Rlc3Rfc2NoZW1hID0+IDEsCisJCQlvbmx5X2R1bXBfbWVhc3VyZW1lbnQgICAgPT4g MSwKKwkJfSwKIAl9LAogCiAJJ0NSRUFURSBUWVBFIGR1bXBfdGVzdC51bmRlZmluZWQnID0+ IHsKQEAgLTIyODIsNyArMjQ2OSwxMCBAQCBteSAldGVzdHMgPSAoCiAJCXJlZ2V4cCAgICAg ICA9PiBxci9eXFFDUkVBVEUgVFlQRSBkdW1wX3Rlc3QudW5kZWZpbmVkO1xFL20sCiAJCWxp a2UgPT4KIAkJICB7ICVmdWxsX3J1bnMsICVkdW1wX3Rlc3Rfc2NoZW1hX3J1bnMsIHNlY3Rp b25fcHJlX2RhdGEgPT4gMSwgfSwKLQkJdW5saWtlID0+IHsgZXhjbHVkZV9kdW1wX3Rlc3Rf c2NoZW1hID0+IDEsIH0sCisJCXVubGlrZSA9PiB7CisJCQlleGNsdWRlX2R1bXBfdGVzdF9z Y2hlbWEgPT4gMSwKKwkJCW9ubHlfZHVtcF9tZWFzdXJlbWVudCAgICA9PiAxLAorCQl9LAog CX0sCiAKIAknQ1JFQVRFIEZPUkVJR04gREFUQSBXUkFQUEVSIGR1bW15JyA9PiB7CkBAIC0y MzE1LDcgKzI1MDUsMTAgQEAgbXkgJXRlc3RzID0gKAogCQkJL3htLAogCQlsaWtlID0+CiAJ CSAgeyAlZnVsbF9ydW5zLCAlZHVtcF90ZXN0X3NjaGVtYV9ydW5zLCBzZWN0aW9uX3ByZV9k YXRhID0+IDEsIH0sCi0JCXVubGlrZSA9PiB7IGV4Y2x1ZGVfZHVtcF90ZXN0X3NjaGVtYSA9 PiAxLCB9LAorCQl1bmxpa2UgPT4geworCQkJZXhjbHVkZV9kdW1wX3Rlc3Rfc2NoZW1hID0+ IDEsCisJCQlvbmx5X2R1bXBfbWVhc3VyZW1lbnQgICAgPT4gMSwKKwkJfSwKIAl9LAogCiAJ J0NSRUFURSBVU0VSIE1BUFBJTkcgRk9SIHJlZ3Jlc3NfZHVtcF90ZXN0X3JvbGUgU0VSVkVS IHMxJyA9PiB7CkBAIC0yMzYwLDcgKzI1NTMsMTAgQEAgbXkgJXRlc3RzID0gKAogCQkJL3ht LAogCQlsaWtlID0+CiAJCSAgeyAlZnVsbF9ydW5zLCAlZHVtcF90ZXN0X3NjaGVtYV9ydW5z LCBzZWN0aW9uX3ByZV9kYXRhID0+IDEsIH0sCi0JCXVubGlrZSA9PiB7IGV4Y2x1ZGVfZHVt cF90ZXN0X3NjaGVtYSA9PiAxLCB9LAorCQl1bmxpa2UgPT4geworCQkJZXhjbHVkZV9kdW1w X3Rlc3Rfc2NoZW1hID0+IDEsCisJCQlvbmx5X2R1bXBfbWVhc3VyZW1lbnQgICAgPT4gMSwK KwkJfSwKIAl9LAogCiAJJ0NSRUFURSBNQVRFUklBTElaRUQgVklFVyBtYXR2aWV3X3NlY29u ZCcgPT4gewpAQCAtMjM3Niw3ICsyNTcyLDEwIEBAIG15ICV0ZXN0cyA9ICgKIAkJCS94bSwK IAkJbGlrZSA9PgogCQkgIHsgJWZ1bGxfcnVucywgJWR1bXBfdGVzdF9zY2hlbWFfcnVucywg c2VjdGlvbl9wcmVfZGF0YSA9PiAxLCB9LAotCQl1bmxpa2UgPT4geyBleGNsdWRlX2R1bXBf dGVzdF9zY2hlbWEgPT4gMSwgfSwKKwkJdW5saWtlID0+IHsKKwkJCWV4Y2x1ZGVfZHVtcF90 ZXN0X3NjaGVtYSA9PiAxLAorCQkJb25seV9kdW1wX21lYXN1cmVtZW50ICAgID0+IDEsCisJ CX0sCiAJfSwKIAogCSdDUkVBVEUgTUFURVJJQUxJWkVEIFZJRVcgbWF0dmlld190aGlyZCcg PT4gewpAQCAtMjM5Miw3ICsyNTkxLDEwIEBAIG15ICV0ZXN0cyA9ICgKIAkJCS94bSwKIAkJ bGlrZSA9PgogCQkgIHsgJWZ1bGxfcnVucywgJWR1bXBfdGVzdF9zY2hlbWFfcnVucywgc2Vj dGlvbl9wcmVfZGF0YSA9PiAxLCB9LAotCQl1bmxpa2UgPT4geyBleGNsdWRlX2R1bXBfdGVz dF9zY2hlbWEgPT4gMSwgfSwKKwkJdW5saWtlID0+IHsKKwkJCWV4Y2x1ZGVfZHVtcF90ZXN0 X3NjaGVtYSA9PiAxLAorCQkJb25seV9kdW1wX21lYXN1cmVtZW50ICAgID0+IDEsCisJCX0s CiAJfSwKIAogCSdDUkVBVEUgTUFURVJJQUxJWkVEIFZJRVcgbWF0dmlld19mb3VydGgnID0+ IHsKQEAgLTI0MDgsNyArMjYxMCwxMCBAQCBteSAldGVzdHMgPSAoCiAJCQkveG0sCiAJCWxp a2UgPT4KIAkJICB7ICVmdWxsX3J1bnMsICVkdW1wX3Rlc3Rfc2NoZW1hX3J1bnMsIHNlY3Rp b25fcHJlX2RhdGEgPT4gMSwgfSwKLQkJdW5saWtlID0+IHsgZXhjbHVkZV9kdW1wX3Rlc3Rf c2NoZW1hID0+IDEsIH0sCisJCXVubGlrZSA9PiB7CisJCQlleGNsdWRlX2R1bXBfdGVzdF9z Y2hlbWEgPT4gMSwKKwkJCW9ubHlfZHVtcF9tZWFzdXJlbWVudCAgICA9PiAxLAorCQl9LAog CX0sCiAKIAknQ1JFQVRFIE1BVEVSSUFMSVpFRCBWSUVXIG1hdHZpZXdfY29tcHJlc3Npb24n ID0+IHsKQEAgLTI0MjksOCArMjYzNCwxMSBAQCBteSAldGVzdHMgPSAoCiAJCWx6NCA9PiAx LAogCQlsaWtlID0+CiAJCSAgeyAlZnVsbF9ydW5zLCAlZHVtcF90ZXN0X3NjaGVtYV9ydW5z LCBzZWN0aW9uX3ByZV9kYXRhID0+IDEsIH0sCi0JCXVubGlrZSA9PgotCQkgIHsgZXhjbHVk ZV9kdW1wX3Rlc3Rfc2NoZW1hID0+IDEsIG5vX3RvYXN0X2NvbXByZXNzaW9uID0+IDEsIH0s CisJCXVubGlrZSA9PiB7CisJCQlleGNsdWRlX2R1bXBfdGVzdF9zY2hlbWEgPT4gMSwKKwkJ CW5vX3RvYXN0X2NvbXByZXNzaW9uICAgICA9PiAxLAorCQkJb25seV9kdW1wX21lYXN1cmVt ZW50ICAgID0+IDEsCisJCX0sCiAJfSwKIAogCSdDUkVBVEUgUE9MSUNZIHAxIE9OIHRlc3Rf dGFibGUnID0+IHsKQEAgLTI0NTEsNiArMjY1OSw3IEBAIG15ICV0ZXN0cyA9ICgKIAkJdW5s aWtlID0+IHsKIAkJCWV4Y2x1ZGVfZHVtcF90ZXN0X3NjaGVtYSA9PiAxLAogCQkJZXhjbHVk ZV90ZXN0X3RhYmxlICAgICAgID0+IDEsCisJCQlvbmx5X2R1bXBfbWVhc3VyZW1lbnQgICAg PT4gMSwKIAkJfSwKIAl9LAogCkBAIC0yNDcxLDYgKzI2ODAsNyBAQCBteSAldGVzdHMgPSAo CiAJCXVubGlrZSA9PiB7CiAJCQlleGNsdWRlX2R1bXBfdGVzdF9zY2hlbWEgPT4gMSwKIAkJ CWV4Y2x1ZGVfdGVzdF90YWJsZSAgICAgICA9PiAxLAorCQkJb25seV9kdW1wX21lYXN1cmVt ZW50ICAgID0+IDEsCiAJCX0sCiAJfSwKIApAQCAtMjQ5MSw2ICsyNzAxLDcgQEAgbXkgJXRl c3RzID0gKAogCQl1bmxpa2UgPT4gewogCQkJZXhjbHVkZV9kdW1wX3Rlc3Rfc2NoZW1hID0+ IDEsCiAJCQlleGNsdWRlX3Rlc3RfdGFibGUgICAgICAgPT4gMSwKKwkJCW9ubHlfZHVtcF9t ZWFzdXJlbWVudCAgICA9PiAxLAogCQl9LAogCX0sCiAKQEAgLTI1MTEsNiArMjcyMiw3IEBA IG15ICV0ZXN0cyA9ICgKIAkJdW5saWtlID0+IHsKIAkJCWV4Y2x1ZGVfZHVtcF90ZXN0X3Nj aGVtYSA9PiAxLAogCQkJZXhjbHVkZV90ZXN0X3RhYmxlICAgICAgID0+IDEsCisJCQlvbmx5 X2R1bXBfbWVhc3VyZW1lbnQgICAgPT4gMSwKIAkJfSwKIAl9LAogCkBAIC0yNTMxLDYgKzI3 NDMsNyBAQCBteSAldGVzdHMgPSAoCiAJCXVubGlrZSA9PiB7CiAJCQlleGNsdWRlX2R1bXBf dGVzdF9zY2hlbWEgPT4gMSwKIAkJCWV4Y2x1ZGVfdGVzdF90YWJsZSAgICAgICA9PiAxLAor CQkJb25seV9kdW1wX21lYXN1cmVtZW50ICAgID0+IDEsCiAJCX0sCiAJfSwKIApAQCAtMjU1 MSw2ICsyNzY0LDcgQEAgbXkgJXRlc3RzID0gKAogCQl1bmxpa2UgPT4gewogCQkJZXhjbHVk ZV9kdW1wX3Rlc3Rfc2NoZW1hID0+IDEsCiAJCQlleGNsdWRlX3Rlc3RfdGFibGUgICAgICAg PT4gMSwKKwkJCW9ubHlfZHVtcF9tZWFzdXJlbWVudCAgICA9PiAxLAogCQl9LAogCX0sCiAK QEAgLTI3NDYsNyArMjk2MCwxMCBAQCBteSAldGVzdHMgPSAoCiAJCXJlZ2V4cCAgICAgICA9 PiBxci9eQ1JFQVRFIFNDSEVNQSBkdW1wX3Rlc3Q7L20sCiAJCWxpa2UgPT4KIAkJICB7ICVm dWxsX3J1bnMsICVkdW1wX3Rlc3Rfc2NoZW1hX3J1bnMsIHNlY3Rpb25fcHJlX2RhdGEgPT4g MSwgfSwKLQkJdW5saWtlID0+IHsgZXhjbHVkZV9kdW1wX3Rlc3Rfc2NoZW1hID0+IDEsIH0s CisJCXVubGlrZSA9PiB7CisJCQlleGNsdWRlX2R1bXBfdGVzdF9zY2hlbWEgPT4gMSwKKwkJ CW9ubHlfZHVtcF9tZWFzdXJlbWVudCAgICA9PiAxLAorCQl9LAogCX0sCiAKIAknQ1JFQVRF IFNDSEVNQSBkdW1wX3Rlc3Rfc2Vjb25kX3NjaGVtYScgPT4gewpAQCAtMjc5MSw2ICszMDA4 LDcgQEAgbXkgJXRlc3RzID0gKAogCQl1bmxpa2UgPT4gewogCQkJZXhjbHVkZV9kdW1wX3Rl c3Rfc2NoZW1hID0+IDEsCiAJCQlleGNsdWRlX3Rlc3RfdGFibGUgICAgICAgPT4gMSwKKwkJ CW9ubHlfZHVtcF9tZWFzdXJlbWVudCAgICA9PiAxLAogCQl9LAogCX0sCiAKQEAgLTI4MDYs NyArMzAyNCwxMCBAQCBteSAldGVzdHMgPSAoCiAJCQkveG0sCiAJCWxpa2UgPT4KIAkJICB7 ICVmdWxsX3J1bnMsICVkdW1wX3Rlc3Rfc2NoZW1hX3J1bnMsIHNlY3Rpb25fcHJlX2RhdGEg PT4gMSwgfSwKLQkJdW5saWtlID0+IHsgZXhjbHVkZV9kdW1wX3Rlc3Rfc2NoZW1hID0+IDEs IH0sCisJCXVubGlrZSA9PiB7CisJCQlleGNsdWRlX2R1bXBfdGVzdF9zY2hlbWEgPT4gMSwK KwkJCW9ubHlfZHVtcF9tZWFzdXJlbWVudCAgICA9PiAxLAorCQl9LAogCX0sCiAKIAknQ1JF QVRFIFRBQkxFIHRlc3Rfc2Vjb25kX3RhYmxlJyA9PiB7CkBAIC0yODIzLDcgKzMwNDQsMTAg QEAgbXkgJXRlc3RzID0gKAogCQkJL3htLAogCQlsaWtlID0+CiAJCSAgeyAlZnVsbF9ydW5z LCAlZHVtcF90ZXN0X3NjaGVtYV9ydW5zLCBzZWN0aW9uX3ByZV9kYXRhID0+IDEsIH0sCi0J CXVubGlrZSA9PiB7IGV4Y2x1ZGVfZHVtcF90ZXN0X3NjaGVtYSA9PiAxLCB9LAorCQl1bmxp a2UgPT4geworCQkJZXhjbHVkZV9kdW1wX3Rlc3Rfc2NoZW1hID0+IDEsCisJCQlvbmx5X2R1 bXBfbWVhc3VyZW1lbnQgICAgPT4gMSwKKwkJfSwKIAl9LAogCiAJJ0NSRUFURSBUQUJMRSB0 ZXN0X2NvbXByZXNzaW9uJyA9PiB7CkBAIC0yODY3LDExICszMDkxLDE2IEBAIG15ICV0ZXN0 cyA9ICgKIAkJCVwpXG4KIAkJCVxRUEFSVElUSU9OIEJZIFJBTkdFIChsb2dkYXRlKTtcRVxu CiAJCQkveG0sCi0JCWxpa2UgPT4KLQkJICB7ICVmdWxsX3J1bnMsICVkdW1wX3Rlc3Rfc2No ZW1hX3J1bnMsIHNlY3Rpb25fcHJlX2RhdGEgPT4gMSwgfSwKKwkJbGlrZSA9PiB7CisJCQkl ZnVsbF9ydW5zLAorCQkJJWR1bXBfdGVzdF9zY2hlbWFfcnVucywKKwkJCXNlY3Rpb25fcHJl X2RhdGEgPT4gMSwKKwkJCW9ubHlfZHVtcF9tZWFzdXJlbWVudCA9PiAxLAorCQl9LAogCQl1 bmxpa2UgPT4gewogCQkJYmluYXJ5X3VwZ3JhZGUgICAgICAgICAgID0+IDEsCiAJCQlleGNs dWRlX2R1bXBfdGVzdF9zY2hlbWEgPT4gMSwKKwkJCWV4Y2x1ZGVfbWVhc3VyZW1lbnQgPT4g MSwKIAkJfSwKIAl9LAogCkBAIC0yODk4LDYgKzMxMjcsMTAgQEAgbXkgJXRlc3RzID0gKAog CQkJc2VjdGlvbl9wcmVfZGF0YSA9PiAxLAogCQkJcm9sZSAgICAgICAgICAgICA9PiAxLAog CQkJYmluYXJ5X3VwZ3JhZGUgICA9PiAxLAorCQkJb25seV9kdW1wX21lYXN1cmVtZW50ID0+ IDEsCisJCX0sCisJCXVubGlrZSA9PiB7CisJCQlleGNsdWRlX21lYXN1cmVtZW50ID0+IDEs CiAJCX0sCiAJfSwKIApAQCAtMjkxMyw5ICszMTQ2LDQwIEBAIG15ICV0ZXN0cyA9ICgKIAkJ CS94bSwKIAkJbGlrZSA9PiB7CiAJCQklZnVsbF9ydW5zLCAlZHVtcF90ZXN0X3NjaGVtYV9y dW5zLCBzZWN0aW9uX3Bvc3RfZGF0YSA9PiAxLAorCQkJb25seV9kdW1wX21lYXN1cmVtZW50 ID0+IDEsCiAJCX0sCiAJCXVubGlrZSA9PiB7CiAJCQlleGNsdWRlX2R1bXBfdGVzdF9zY2hl bWEgPT4gMSwKKwkJCWV4Y2x1ZGVfbWVhc3VyZW1lbnQgPT4gMSwKKwkJfSwKKwl9LAorCisJ J0NPUFkgbWVhc3VyZW1lbnQnID0+IHsKKwkJY3JlYXRlX29yZGVyID0+IDkzLAorCQljcmVh dGVfc3FsICAgPT4gJ0lOU0VSVCBJTlRPIGR1bXBfdGVzdC5tZWFzdXJlbWVudCAoY2l0eV9p ZCwgbG9nZGF0ZSwgcGVha3RlbXAsIHVuaXRzYWxlcykgJworCQkgIC4gIlZBTFVFUyAoMSwg JzIwMDYtMDItMTInLCAzNSwgMSk7IiwKKwkJcmVnZXhwID0+IHFyL14KKwkJCVxRQ09QWSBk dW1wX3Rlc3Rfc2Vjb25kX3NjaGVtYS5tZWFzdXJlbWVudF95MjAwNm0yIChjaXR5X2lkLCBs b2dkYXRlLCBwZWFrdGVtcCwgdW5pdHNhbGVzKSBGUk9NIHN0ZGluO1xFCisJCQlcbig/OjFc dDIwMDYtMDItMTJcdDM1XHQxXG4pXFxcLlxuCisJCQkveG0sCisJCWxpa2UgPT4geworCQkJ JWZ1bGxfcnVucywKKwkJCSVkdW1wX3Rlc3Rfc2NoZW1hX3J1bnMsCisJCQlkYXRhX29ubHkg ICAgICAgICAgICA9PiAxLAorCQkJb25seV9kdW1wX21lYXN1cmVtZW50ID0+IDEsCisJCQlz ZWN0aW9uX2RhdGEgICAgICAgICA9PiAxLAorCQkJb25seV9kdW1wX3Rlc3Rfc2NoZW1hID0+ IDEsCisJCQlyb2xlX3BhcmFsbGVsID0+IDEsCisJCQlyb2xlID0+IDEsCisJCX0sCisJCXVu bGlrZSA9PiB7CisJCQliaW5hcnlfdXBncmFkZSAgICAgICAgICAgPT4gMSwKKwkJCXNjaGVt YV9vbmx5ICAgICAgICAgICAgICA9PiAxLAorCQkJZXhjbHVkZV9tZWFzdXJlbWVudCAgICAg ID0+IDEsCisJCQlvbmx5X2R1bXBfdGVzdF9zY2hlbWEgICAgPT4gMSwKKwkJCXRlc3Rfc2No ZW1hX3BsdXNfbGFyZ2Vfb2JqZWN0cyA9PiAxLAorCQkJZXhjbHVkZV9tZWFzdXJlbWVudCAg ICAgID0+IDEsCisJCQlleGNsdWRlX21lYXN1cmVtZW50X2RhdGEgPT4gMSwKIAkJfSwKIAl9 LAogCkBAIC0yOTQzLDYgKzMyMDcsMTAgQEAgbXkgJXRlc3RzID0gKAogCQkJc2VjdGlvbl9w b3N0X2RhdGEgPT4gMSwKIAkJCXJvbGUgICAgICAgICAgICAgID0+IDEsCiAJCQliaW5hcnlf dXBncmFkZSAgICA9PiAxLAorCQkJb25seV9kdW1wX21lYXN1cmVtZW50ID0+IDEsCisJCX0s CisJCXVubGlrZSA9PiB7CisJCQlleGNsdWRlX21lYXN1cmVtZW50ID0+IDEsCiAJCX0sCiAJ fSwKIApAQCAtMjk1NSw2ICszMjIzLDEwIEBAIG15ICV0ZXN0cyA9ICgKIAkJCXNlY3Rpb25f cG9zdF9kYXRhID0+IDEsCiAJCQlyb2xlICAgICAgICAgICAgICA9PiAxLAogCQkJYmluYXJ5 X3VwZ3JhZGUgICAgPT4gMSwKKwkJCW9ubHlfZHVtcF9tZWFzdXJlbWVudCA9PiAxLAorCQl9 LAorCQl1bmxpa2UgPT4geworCQkJZXhjbHVkZV9tZWFzdXJlbWVudCA9PiAxLAogCQl9LAog CX0sCiAKQEAgLTI5NjcsNiArMzIzOSwxMCBAQCBteSAldGVzdHMgPSAoCiAJCQlzZWN0aW9u X3Bvc3RfZGF0YSA9PiAxLAogCQkJcm9sZSAgICAgICAgICAgICAgPT4gMSwKIAkJCWJpbmFy eV91cGdyYWRlICAgID0+IDEsCisJCQlvbmx5X2R1bXBfbWVhc3VyZW1lbnQgPT4gMSwKKwkJ fSwKKwkJdW5saWtlID0+IHsKKwkJCWV4Y2x1ZGVfbWVhc3VyZW1lbnQgPT4gMSwKIAkJfSwK IAl9LAogCkBAIC0zMDAyLDcgKzMyNzgsMTEgQEAgbXkgJXRlc3RzID0gKAogCQkJL3htLAog CQlsaWtlID0+CiAJCSAgeyAlZnVsbF9ydW5zLCAlZHVtcF90ZXN0X3NjaGVtYV9ydW5zLCBz ZWN0aW9uX3ByZV9kYXRhID0+IDEsIH0sCi0JCXVubGlrZSA9PiB7IGJpbmFyeV91cGdyYWRl ID0+IDEsIGV4Y2x1ZGVfZHVtcF90ZXN0X3NjaGVtYSA9PiAxLCB9LAorCQl1bmxpa2UgPT4g eworCQkJYmluYXJ5X3VwZ3JhZGUgPT4gMSwKKwkJCWV4Y2x1ZGVfZHVtcF90ZXN0X3NjaGVt YSA9PiAxLAorCQkJb25seV9kdW1wX21lYXN1cmVtZW50ID0+IDEsCisJCX0sCiAJfSwKIAog CSdDUkVBVEUgVEFCTEUgdGVzdF9mb3VydGhfdGFibGVfemVyb19jb2wnID0+IHsKQEAgLTMw MTUsNyArMzI5NSwxMCBAQCBteSAldGVzdHMgPSAoCiAJCQkveG0sCiAJCWxpa2UgPT4KIAkJ ICB7ICVmdWxsX3J1bnMsICVkdW1wX3Rlc3Rfc2NoZW1hX3J1bnMsIHNlY3Rpb25fcHJlX2Rh dGEgPT4gMSwgfSwKLQkJdW5saWtlID0+IHsgZXhjbHVkZV9kdW1wX3Rlc3Rfc2NoZW1hID0+ IDEsIH0sCisJCXVubGlrZSA9PiB7CisJCQlleGNsdWRlX2R1bXBfdGVzdF9zY2hlbWEgPT4g MSwKKwkJCW9ubHlfZHVtcF9tZWFzdXJlbWVudCAgICA9PiAxLAorCQl9LAogCX0sCiAKIAkn Q1JFQVRFIFRBQkxFIHRlc3RfZmlmdGhfdGFibGUnID0+IHsKQEAgLTMwMzgsNyArMzMyMSwx MCBAQCBteSAldGVzdHMgPSAoCiAJCQkveG0sCiAJCWxpa2UgPT4KIAkJICB7ICVmdWxsX3J1 bnMsICVkdW1wX3Rlc3Rfc2NoZW1hX3J1bnMsIHNlY3Rpb25fcHJlX2RhdGEgPT4gMSwgfSwK LQkJdW5saWtlID0+IHsgZXhjbHVkZV9kdW1wX3Rlc3Rfc2NoZW1hID0+IDEsIH0sCisJCXVu bGlrZSA9PiB7CisJCQlleGNsdWRlX2R1bXBfdGVzdF9zY2hlbWEgPT4gMSwKKwkJCW9ubHlf ZHVtcF9tZWFzdXJlbWVudCAgICA9PiAxLAorCQl9LAogCX0sCiAKIAknQ1JFQVRFIFRBQkxF IHRlc3Rfc2l4dGhfdGFibGUnID0+IHsKQEAgLTMwNTcsNyArMzM0MywxMCBAQCBteSAldGVz dHMgPSAoCiAJCQkveG0sCiAJCWxpa2UgPT4KIAkJICB7ICVmdWxsX3J1bnMsICVkdW1wX3Rl c3Rfc2NoZW1hX3J1bnMsIHNlY3Rpb25fcHJlX2RhdGEgPT4gMSwgfSwKLQkJdW5saWtlID0+ IHsgZXhjbHVkZV9kdW1wX3Rlc3Rfc2NoZW1hID0+IDEsIH0sCisJCXVubGlrZSA9PiB7CisJ CQlleGNsdWRlX2R1bXBfdGVzdF9zY2hlbWEgPT4gMSwKKwkJCW9ubHlfZHVtcF9tZWFzdXJl bWVudCAgICA9PiAxLAorCQl9LAogCX0sCiAKIAknQ1JFQVRFIFRBQkxFIHRlc3Rfc2V2ZW50 aF90YWJsZScgPT4gewpAQCAtMzA3Niw3ICszMzY1LDEwIEBAIG15ICV0ZXN0cyA9ICgKIAkJ CS94bSwKIAkJbGlrZSA9PgogCQkgIHsgJWZ1bGxfcnVucywgJWR1bXBfdGVzdF9zY2hlbWFf cnVucywgc2VjdGlvbl9wcmVfZGF0YSA9PiAxLCB9LAotCQl1bmxpa2UgPT4geyBleGNsdWRl X2R1bXBfdGVzdF9zY2hlbWEgPT4gMSwgfSwKKwkJdW5saWtlID0+IHsKKwkJCWV4Y2x1ZGVf ZHVtcF90ZXN0X3NjaGVtYSA9PiAxLAorCQkJb25seV9kdW1wX21lYXN1cmVtZW50ICAgID0+ IDEsCisJCX0sCiAJfSwKIAogCSdDUkVBVEUgVEFCTEUgdGVzdF90YWJsZV9pZGVudGl0eScg PT4gewpAQCAtMzEwMiw3ICszMzk0LDEwIEBAIG15ICV0ZXN0cyA9ICgKIAkJCS94bXMsCiAJ CWxpa2UgPT4KIAkJICB7ICVmdWxsX3J1bnMsICVkdW1wX3Rlc3Rfc2NoZW1hX3J1bnMsIHNl Y3Rpb25fcHJlX2RhdGEgPT4gMSwgfSwKLQkJdW5saWtlID0+IHsgZXhjbHVkZV9kdW1wX3Rl c3Rfc2NoZW1hID0+IDEsIH0sCisJCXVubGlrZSA9PiB7CisJCQlleGNsdWRlX2R1bXBfdGVz dF9zY2hlbWEgPT4gMSwKKwkJCW9ubHlfZHVtcF9tZWFzdXJlbWVudCAgICA9PiAxLAorCQl9 LAogCX0sCiAKIAknQ1JFQVRFIFRBQkxFIHRlc3RfdGFibGVfZ2VuZXJhdGVkJyA9PiB7CkBA IC0zMTE5LDcgKzM0MTQsMTAgQEAgbXkgJXRlc3RzID0gKAogCQkJL3htcywKIAkJbGlrZSA9 PgogCQkgIHsgJWZ1bGxfcnVucywgJWR1bXBfdGVzdF9zY2hlbWFfcnVucywgc2VjdGlvbl9w cmVfZGF0YSA9PiAxLCB9LAotCQl1bmxpa2UgPT4geyBleGNsdWRlX2R1bXBfdGVzdF9zY2hl bWEgPT4gMSwgfSwKKwkJdW5saWtlID0+IHsKKwkJCWV4Y2x1ZGVfZHVtcF90ZXN0X3NjaGVt YSA9PiAxLAorCQkJb25seV9kdW1wX21lYXN1cmVtZW50ICAgID0+IDEsCisJCX0sCiAJfSwK IAogCSdDUkVBVEUgVEFCTEUgdGVzdF90YWJsZV9nZW5lcmF0ZWRfY2hpbGQxICh3aXRob3V0 IGxvY2FsIGNvbHVtbnMpJyA9PiB7CkBAIC0zMTM2LDYgKzM0MzQsNyBAQCBteSAldGVzdHMg PSAoCiAJCXVubGlrZSA9PiB7CiAJCQliaW5hcnlfdXBncmFkZSAgICAgICAgICAgPT4gMSwK IAkJCWV4Y2x1ZGVfZHVtcF90ZXN0X3NjaGVtYSA9PiAxLAorCQkJb25seV9kdW1wX21lYXN1 cmVtZW50ICAgID0+IDEsCiAJCX0sCiAJfSwKIApAQCAtMzE2NSw2ICszNDY0LDcgQEAgbXkg JXRlc3RzID0gKAogCQl1bmxpa2UgPT4gewogCQkJYmluYXJ5X3VwZ3JhZGUgICAgICAgICAg ID0+IDEsCiAJCQlleGNsdWRlX2R1bXBfdGVzdF9zY2hlbWEgPT4gMSwKKwkJCW9ubHlfZHVt cF9tZWFzdXJlbWVudCAgICA9PiAxLAogCQl9LAogCX0sCiAKQEAgLTMxODcsNyArMzQ4Nywx MCBAQCBteSAldGVzdHMgPSAoCiAJCQkveG1zLAogCQlsaWtlID0+CiAJCSAgeyAlZnVsbF9y dW5zLCAlZHVtcF90ZXN0X3NjaGVtYV9ydW5zLCBzZWN0aW9uX3Bvc3RfZGF0YSA9PiAxLCB9 LAotCQl1bmxpa2UgPT4geyBleGNsdWRlX2R1bXBfdGVzdF9zY2hlbWEgPT4gMSwgfSwKKwkJ dW5saWtlID0+IHsKKwkJCWV4Y2x1ZGVfZHVtcF90ZXN0X3NjaGVtYSA9PiAxLAorCQkJb25s eV9kdW1wX21lYXN1cmVtZW50ICAgID0+IDEsCisJCX0sCiAJfSwKIAogCSdDUkVBVEUgVEFC TEUgdGVzdF9pbmhlcml0YW5jZV9wYXJlbnQnID0+IHsKQEAgLTMyMDUsNyArMzUwOCwxMCBA QCBteSAldGVzdHMgPSAoCiAJCS94bSwKIAkJbGlrZSA9PgogCQkgIHsgJWZ1bGxfcnVucywg JWR1bXBfdGVzdF9zY2hlbWFfcnVucywgc2VjdGlvbl9wcmVfZGF0YSA9PiAxLCB9LAotCQl1 bmxpa2UgPT4geyBleGNsdWRlX2R1bXBfdGVzdF9zY2hlbWEgPT4gMSwgfSwKKwkJdW5saWtl ID0+IHsKKwkJCWV4Y2x1ZGVfZHVtcF90ZXN0X3NjaGVtYSA9PiAxLAorCQkJb25seV9kdW1w X21lYXN1cmVtZW50ICAgID0+IDEsCisJCX0sCiAJfSwKIAogCSdDUkVBVEUgVEFCTEUgdGVz dF9pbmhlcml0YW5jZV9jaGlsZCcgPT4gewpAQCAtMzIyNyw2ICszNTMzLDcgQEAgbXkgJXRl c3RzID0gKAogCQl1bmxpa2UgPT4gewogCQkJYmluYXJ5X3VwZ3JhZGUgICAgICAgICAgID0+ IDEsCiAJCQlleGNsdWRlX2R1bXBfdGVzdF9zY2hlbWEgPT4gMSwKKwkJCW9ubHlfZHVtcF9t ZWFzdXJlbWVudCAgICA9PiAxLAogCQl9LAogCX0sCiAKQEAgLTMyMzksNyArMzU0NiwxMCBA QCBteSAldGVzdHMgPSAoCiAJCSAgICAveG1zLAogCQlsaWtlID0+CiAJCSAgeyAlZnVsbF9y dW5zLCAlZHVtcF90ZXN0X3NjaGVtYV9ydW5zLCBzZWN0aW9uX3Bvc3RfZGF0YSA9PiAxLCB9 LAotCQl1bmxpa2UgPT4geyBleGNsdWRlX2R1bXBfdGVzdF9zY2hlbWEgPT4gMSwgfSwKKwkJ dW5saWtlID0+IHsKKwkJCWV4Y2x1ZGVfZHVtcF90ZXN0X3NjaGVtYSA9PiAxLAorCQkJb25s eV9kdW1wX21lYXN1cmVtZW50ICAgID0+IDEsCisJCX0sCiAJfSwKIAogCSdDUkVBVEUgU1RB VElTVElDUyBleHRlbmRlZF9zdGF0c19vcHRpb25zJyA9PiB7CkBAIC0zMjUxLDcgKzM1NjEs MTAgQEAgbXkgJXRlc3RzID0gKAogCQkgICAgL3htcywKIAkJbGlrZSA9PgogCQkgIHsgJWZ1 bGxfcnVucywgJWR1bXBfdGVzdF9zY2hlbWFfcnVucywgc2VjdGlvbl9wb3N0X2RhdGEgPT4g MSwgfSwKLQkJdW5saWtlID0+IHsgZXhjbHVkZV9kdW1wX3Rlc3Rfc2NoZW1hID0+IDEsIH0s CisJCXVubGlrZSA9PiB7CisJCQlleGNsdWRlX2R1bXBfdGVzdF9zY2hlbWEgPT4gMSwKKwkJ CW9ubHlfZHVtcF9tZWFzdXJlbWVudCAgICA9PiAxLAorCQl9LAogCX0sCiAKIAknQUxURVIg U1RBVElTVElDUyBleHRlbmRlZF9zdGF0c19vcHRpb25zJyA9PiB7CkBAIC0zMjYzLDcgKzM1 NzYsMTAgQEAgbXkgJXRlc3RzID0gKAogCQkgICAgL3htcywKIAkJbGlrZSA9PgogCQkgIHsg JWZ1bGxfcnVucywgJWR1bXBfdGVzdF9zY2hlbWFfcnVucywgc2VjdGlvbl9wb3N0X2RhdGEg PT4gMSwgfSwKLQkJdW5saWtlID0+IHsgZXhjbHVkZV9kdW1wX3Rlc3Rfc2NoZW1hID0+IDEs IH0sCisJCXVubGlrZSA9PiB7CisJCQlleGNsdWRlX2R1bXBfdGVzdF9zY2hlbWEgPT4gMSwK KwkJCW9ubHlfZHVtcF9tZWFzdXJlbWVudCAgICA9PiAxLAorCQl9LAogCX0sCiAKIAknQ1JF QVRFIFNUQVRJU1RJQ1MgZXh0ZW5kZWRfc3RhdHNfZXhwcmVzc2lvbicgPT4gewpAQCAtMzI3 NSw3ICszNTkxLDEwIEBAIG15ICV0ZXN0cyA9ICgKIAkJICAgIC94bXMsCiAJCWxpa2UgPT4K IAkJICB7ICVmdWxsX3J1bnMsICVkdW1wX3Rlc3Rfc2NoZW1hX3J1bnMsIHNlY3Rpb25fcG9z dF9kYXRhID0+IDEsIH0sCi0JCXVubGlrZSA9PiB7IGV4Y2x1ZGVfZHVtcF90ZXN0X3NjaGVt YSA9PiAxLCB9LAorCQl1bmxpa2UgPT4geworCQkJZXhjbHVkZV9kdW1wX3Rlc3Rfc2NoZW1h ID0+IDEsCisJCQlvbmx5X2R1bXBfbWVhc3VyZW1lbnQgICAgPT4gMSwKKwkJfSwKIAl9LAog CiAJJ0NSRUFURSBTRVFVRU5DRSB0ZXN0X3RhYmxlX2NvbDFfc2VxJyA9PiB7CkBAIC0zMjk0 LDcgKzM2MTMsMTAgQEAgbXkgJXRlc3RzID0gKAogCQkJb25seV9kdW1wX3Rlc3RfdGFibGUg PT4gMSwKIAkJCXNlY3Rpb25fcHJlX2RhdGEgICAgID0+IDEsCiAJCX0sCi0JCXVubGlrZSA9 PiB7IGV4Y2x1ZGVfZHVtcF90ZXN0X3NjaGVtYSA9PiAxLCB9LAorCQl1bmxpa2UgPT4gewor CQkJZXhjbHVkZV9kdW1wX3Rlc3Rfc2NoZW1hID0+IDEsCisJCQlvbmx5X2R1bXBfbWVhc3Vy ZW1lbnQgICAgPT4gMSwKKwkJfSwKIAl9LAogCiAJJ0NSRUFURSBJTkRFWCBPTiBPTkxZIG1l YXN1cmVtZW50JyA9PiB7CkBAIC0zMzI0LDYgKzM2NDYsOCBAQCBteSAldGVzdHMgPSAoCiAJ CQlzY2hlbWFfb25seSAgICAgICAgICAgICA9PiAxLAogCQkJc2VjdGlvbl9wb3N0X2RhdGEg ICAgICAgPT4gMSwKIAkJCXRlc3Rfc2NoZW1hX3BsdXNfbGFyZ2Vfb2JqZWN0cyA9PiAxLAor CQkJb25seV9kdW1wX21lYXN1cmVtZW50ICAgPT4gMSwKKwkJCWV4Y2x1ZGVfbWVhc3VyZW1l bnRfZGF0YSA9PiAxLAogCQl9LAogCQl1bmxpa2UgPT4gewogCQkJZXhjbHVkZV9kdW1wX3Rl c3Rfc2NoZW1hID0+IDEsCkBAIC0zMzMyLDYgKzM2NTYsNyBAQCBteSAldGVzdHMgPSAoCiAJ CQlwZ19kdW1wYWxsX2dsb2JhbHNfY2xlYW4gPT4gMSwKIAkJCXJvbGUgICAgICAgICAgICAg ICAgICAgICA9PiAxLAogCQkJc2VjdGlvbl9wcmVfZGF0YSAgICAgICAgID0+IDEsCisJCQll eGNsdWRlX21lYXN1cmVtZW50ICAgICAgPT4gMSwKIAkJfSwKIAl9LAogCkBAIC0zMzQ1LDkg KzM2NzAsMTYgQEAgbXkgJXRlc3RzID0gKAogCQkJXFFBTFRFUiBUQUJMRSBPTkxZIGR1bXBf dGVzdC5tZWFzdXJlbWVudFxFIFxuXlxzKwogCQkJXFFBREQgQ09OU1RSQUlOVCBtZWFzdXJl bWVudF9wa2V5IFBSSU1BUlkgS0VZIChjaXR5X2lkLCBsb2dkYXRlKTtcRQogCQkveG0sCi0J CWxpa2UgPT4KLQkJICB7ICVmdWxsX3J1bnMsICVkdW1wX3Rlc3Rfc2NoZW1hX3J1bnMsIHNl Y3Rpb25fcG9zdF9kYXRhID0+IDEsIH0sCi0JCXVubGlrZSA9PiB7IGV4Y2x1ZGVfZHVtcF90 ZXN0X3NjaGVtYSA9PiAxLCB9LAorCQlsaWtlID0+IHsKKwkJCSVmdWxsX3J1bnMsCisJCQkl ZHVtcF90ZXN0X3NjaGVtYV9ydW5zLAorCQkJc2VjdGlvbl9wb3N0X2RhdGEgPT4gMSwKKwkJ CW9ubHlfZHVtcF9tZWFzdXJlbWVudCA9PiAxLAorCQl9LAorCQl1bmxpa2UgPT4geworCQkJ ZXhjbHVkZV9kdW1wX3Rlc3Rfc2NoZW1hID0+IDEsCisJCQlleGNsdWRlX21lYXN1cmVtZW50 ICAgICAgPT4gMSwKKwkJfSwKIAl9LAogCiAJJ0NSRUFURSBJTkRFWCAuLi4gT04gbWVhc3Vy ZW1lbnRfeTIwMDZfbTInID0+IHsKQEAgLTMzNTgsNiArMzY5MCwxMCBAQCBteSAldGVzdHMg PSAoCiAJCQklZnVsbF9ydW5zLAogCQkJcm9sZSAgICAgICAgICAgICAgPT4gMSwKIAkJCXNl Y3Rpb25fcG9zdF9kYXRhID0+IDEsCisJCQlvbmx5X2R1bXBfbWVhc3VyZW1lbnQgPT4gMSwK KwkJfSwKKwkJdW5saWtlID0+IHsKKwkJCWV4Y2x1ZGVfbWVhc3VyZW1lbnQgICAgICA9PiAx LAogCQl9LAogCX0sCiAKQEAgLTMzNjksNiArMzcwNSwxMSBAQCBteSAldGVzdHMgPSAoCiAJ CQklZnVsbF9ydW5zLAogCQkJcm9sZSAgICAgICAgICAgICAgPT4gMSwKIAkJCXNlY3Rpb25f cG9zdF9kYXRhID0+IDEsCisJCQlvbmx5X2R1bXBfbWVhc3VyZW1lbnQgPT4gMSwKKwkJCWV4 Y2x1ZGVfbWVhc3VyZW1lbnRfZGF0YSA9PiAxLAorCQl9LAorCQl1bmxpa2UgPT4geworCQkJ ZXhjbHVkZV9tZWFzdXJlbWVudCAgICAgID0+IDEsCiAJCX0sCiAJfSwKIApAQCAtMzM5OCw2 ICszNzM5LDggQEAgbXkgJXRlc3RzID0gKAogCQkJcm9sZSAgICAgICAgICAgICAgICAgICAg ID0+IDEsCiAJCQlzY2hlbWFfb25seSAgICAgICAgICAgICAgPT4gMSwKIAkJCXNlY3Rpb25f cG9zdF9kYXRhICAgICAgICA9PiAxLAorCQkJb25seV9kdW1wX21lYXN1cmVtZW50ICAgID0+ IDEsCisJCQlleGNsdWRlX21lYXN1cmVtZW50X2RhdGEgPT4gMSwKIAkJfSwKIAkJdW5saWtl ID0+IHsKIAkJCW9ubHlfZHVtcF90ZXN0X3NjaGVtYSAgICA9PiAxLApAQCAtMzQwNiw2ICsz NzQ5LDcgQEAgbXkgJXRlc3RzID0gKAogCQkJcGdfZHVtcGFsbF9nbG9iYWxzX2NsZWFuID0+ IDEsCiAJCQlzZWN0aW9uX3ByZV9kYXRhICAgICAgICAgPT4gMSwKIAkJCXRlc3Rfc2NoZW1h X3BsdXNfbGFyZ2Vfb2JqZWN0cyA9PiAxLAorCQkJZXhjbHVkZV9tZWFzdXJlbWVudCAgICAg ID0+IDEsCiAJCX0sCiAJfSwKIApAQCAtMzQyMSw3ICszNzY1LDEwIEBAIG15ICV0ZXN0cyA9 ICgKIAkJCVxuXHMrXFFXSVRIIExPQ0FMIENIRUNLIE9QVElPTjtcRS94bSwKIAkJbGlrZSA9 PgogCQkgIHsgJWZ1bGxfcnVucywgJWR1bXBfdGVzdF9zY2hlbWFfcnVucywgc2VjdGlvbl9w cmVfZGF0YSA9PiAxLCB9LAotCQl1bmxpa2UgPT4geyBleGNsdWRlX2R1bXBfdGVzdF9zY2hl bWEgPT4gMSwgfSwKKwkJdW5saWtlID0+IHsKKwkJCWV4Y2x1ZGVfZHVtcF90ZXN0X3NjaGVt YSA9PiAxLAorCQkJb25seV9kdW1wX21lYXN1cmVtZW50ICAgID0+IDEsCisJCX0sCiAJfSwK IAogCSdBTFRFUiBWSUVXIHRlc3RfdmlldyBTRVQgREVGQVVMVCcgPT4gewpAQCAtMzQzMiw3 ICszNzc5LDEwIEBAIG15ICV0ZXN0cyA9ICgKIAkJCVxRQUxURVIgVEFCTEUgT05MWSBkdW1w X3Rlc3QudGVzdF92aWV3IEFMVEVSIENPTFVNTiBjb2wxIFNFVCBERUZBVUxUIDE7XEUveG0s CiAJCWxpa2UgPT4KIAkJICB7ICVmdWxsX3J1bnMsICVkdW1wX3Rlc3Rfc2NoZW1hX3J1bnMs IHNlY3Rpb25fcHJlX2RhdGEgPT4gMSwgfSwKLQkJdW5saWtlID0+IHsgZXhjbHVkZV9kdW1w X3Rlc3Rfc2NoZW1hID0+IDEsIH0sCisJCXVubGlrZSA9PiB7CisJCQlleGNsdWRlX2R1bXBf dGVzdF9zY2hlbWEgPT4gMSwKKwkJCW9ubHlfZHVtcF9tZWFzdXJlbWVudCAgICA9PiAxLAor CQl9LAogCX0sCiAKIAkjIEZJWE1FCkBAIC0zNjA0LDYgKzM5NTQsNyBAQCBteSAldGVzdHMg PSAoCiAJCXVubGlrZSA9PiB7CiAJCQlleGNsdWRlX2R1bXBfdGVzdF9zY2hlbWEgPT4gMSwK IAkJCW5vX3ByaXZzICAgICAgICAgICAgICAgICA9PiAxLAorCQkJb25seV9kdW1wX21lYXN1 cmVtZW50ICAgID0+IDEsCiAJCX0sCiAJfSwKIApAQCAtMzYxOSw2ICszOTcwLDcgQEAgbXkg JXRlc3RzID0gKAogCQl1bmxpa2UgPT4gewogCQkJZXhjbHVkZV9kdW1wX3Rlc3Rfc2NoZW1h ID0+IDEsCiAJCQlub19wcml2cyAgICAgICAgICAgICAgICAgPT4gMSwKKwkJCW9ubHlfZHVt cF9tZWFzdXJlbWVudCAgICA9PiAxLAogCQl9LAogCX0sCiAKQEAgLTM2MzQsNiArMzk4Niw3 IEBAIG15ICV0ZXN0cyA9ICgKIAkJdW5saWtlID0+IHsKIAkJCWV4Y2x1ZGVfZHVtcF90ZXN0 X3NjaGVtYSA9PiAxLAogCQkJbm9fcHJpdnMgICAgICAgICAgICAgICAgID0+IDEsCisJCQlv bmx5X2R1bXBfbWVhc3VyZW1lbnQgICAgPT4gMSwKIAkJfSwKIAl9LAogCkBAIC0zNjQ5LDYg KzQwMDIsNyBAQCBteSAldGVzdHMgPSAoCiAJCXVubGlrZSA9PiB7CiAJCQlleGNsdWRlX2R1 bXBfdGVzdF9zY2hlbWEgPT4gMSwKIAkJCW5vX3ByaXZzICAgICAgICAgICAgICAgICA9PiAx LAorCQkJb25seV9kdW1wX21lYXN1cmVtZW50ICAgID0+IDEsCiAJCX0sCiAJfSwKIApAQCAt MzY3OCw2ICs0MDMyLDcgQEAgbXkgJXRlc3RzID0gKAogCQkJZXhjbHVkZV9kdW1wX3Rlc3Rf c2NoZW1hID0+IDEsCiAJCQlleGNsdWRlX3Rlc3RfdGFibGUgICAgICAgPT4gMSwKIAkJCW5v X3ByaXZzICAgICAgICAgICAgICAgICA9PiAxLAorCQkJb25seV9kdW1wX21lYXN1cmVtZW50 ICAgID0+IDEsCiAJCX0sCiAJfSwKIApAQCAtMzY4OCwxMSArNDA0MywxNiBAQCBteSAldGVz dHMgPSAoCiAJCQkJCQkgICBUTyByZWdyZXNzX2R1bXBfdGVzdF9yb2xlOycsCiAJCXJlZ2V4 cCA9PgogCQkgIHFyL15cUUdSQU5UIFNFTEVDVCBPTiBUQUJMRSBkdW1wX3Rlc3QubWVhc3Vy ZW1lbnQgVE8gcmVncmVzc19kdW1wX3Rlc3Rfcm9sZTtcRS9tLAotCQlsaWtlID0+Ci0JCSAg eyAlZnVsbF9ydW5zLCAlZHVtcF90ZXN0X3NjaGVtYV9ydW5zLCBzZWN0aW9uX3ByZV9kYXRh ID0+IDEsIH0sCisJCWxpa2UgPT4geworCQkJJWZ1bGxfcnVucywKKwkJCSVkdW1wX3Rlc3Rf c2NoZW1hX3J1bnMsCisJCQlzZWN0aW9uX3ByZV9kYXRhID0+IDEsCisJCQlvbmx5X2R1bXBf bWVhc3VyZW1lbnQgPT4gMSwKKwkJfSwKIAkJdW5saWtlID0+IHsKIAkJCWV4Y2x1ZGVfZHVt cF90ZXN0X3NjaGVtYSA9PiAxLAogCQkJbm9fcHJpdnMgICAgICAgICAgICAgICAgID0+IDEs CisJCQlleGNsdWRlX21lYXN1cmVtZW50ICAgICAgPT4gMSwKIAkJfSwKIAl9LAogCkBAIC0z NzEwLDggKzQwNzAsMTIgQEAgbXkgJXRlc3RzID0gKAogCQkJJWZ1bGxfcnVucywKIAkJCXJv bGUgICAgICAgICAgICAgPT4gMSwKIAkJCXNlY3Rpb25fcHJlX2RhdGEgPT4gMSwKKwkJCW9u bHlfZHVtcF9tZWFzdXJlbWVudCA9PiAxLAorCQl9LAorCQl1bmxpa2UgPT4geworCQkJbm9f cHJpdnMgPT4gMSwKKwkJCWV4Y2x1ZGVfbWVhc3VyZW1lbnQgICAgICA9PiAxLAogCQl9LAot CQl1bmxpa2UgPT4geyBub19wcml2cyA9PiAxLCB9LAogCX0sCiAKIAknR1JBTlQgQUxMIE9O IExBUkdFIE9CSkVDVCAuLi4nID0+IHsKQEAgLTM3NTUsNiArNDExOSw3IEBAIG15ICV0ZXN0 cyA9ICgKIAkJdW5saWtlID0+IHsKIAkJCWV4Y2x1ZGVfZHVtcF90ZXN0X3NjaGVtYSA9PiAx LAogCQkJbm9fcHJpdnMgICAgICAgICAgICAgICAgID0+IDEsCisJCQlvbmx5X2R1bXBfbWVh c3VyZW1lbnQgICAgPT4gMSwKIAkJfSwKIAl9LAogCkBAIC0zODU2LDYgKzQyMjEsNyBAQCBt eSAldGVzdHMgPSAoCiAJCQliaW5hcnlfdXBncmFkZSAgICAgICAgICAgPT4gMSwKIAkJCWV4 Y2x1ZGVfZHVtcF90ZXN0X3NjaGVtYSA9PiAxLAogCQkJc2NoZW1hX29ubHkgICAgICAgICAg ICAgID0+IDEsCisJCQlvbmx5X2R1bXBfbWVhc3VyZW1lbnQgICAgPT4gMSwKIAkJfSwKIAl9 LAogCkBAIC0zODcxLDYgKzQyMzcsNyBAQCBteSAldGVzdHMgPSAoCiAJCQliaW5hcnlfdXBn cmFkZSAgICAgICAgICAgPT4gMSwKIAkJCWV4Y2x1ZGVfZHVtcF90ZXN0X3NjaGVtYSA9PiAx LAogCQkJc2NoZW1hX29ubHkgICAgICAgICAgICAgID0+IDEsCisJCQlvbmx5X2R1bXBfbWVh c3VyZW1lbnQgICAgPT4gMSwKIAkJfSwKIAl9LAogCkBAIC0zOTU4LDYgKzQzMjUsNyBAQCBt eSAldGVzdHMgPSAoCiAJCQlvbmx5X2R1bXBfdGVzdF90YWJsZSA9PiAxLAogCQkJcm9sZSAg ICAgICAgICAgICAgICAgPT4gMSwKIAkJCXNlY3Rpb25fcHJlX2RhdGEgICAgID0+IDEsCisJ CQlvbmx5X2R1bXBfbWVhc3VyZW1lbnQgPT4gMSwKIAkJfSwKIAkJdW5saWtlID0+IHsgbm9f cHJpdnMgPT4gMSwgfSwKIAl9LApAQCAtMzk5Niw4ICs0MzY0LDExIEBAIG15ICV0ZXN0cyA9 ICgKIAkJbGlrZSA9PiB7CiAJCQklZnVsbF9ydW5zLCAlZHVtcF90ZXN0X3NjaGVtYV9ydW5z LCBzZWN0aW9uX3ByZV9kYXRhID0+IDEsCiAJCX0sCi0JCXVubGlrZSA9PgotCQkgIHsgZXhj bHVkZV9kdW1wX3Rlc3Rfc2NoZW1hID0+IDEsIG5vX3RhYmxlX2FjY2Vzc19tZXRob2QgPT4g MSB9LAorCQl1bmxpa2UgPT4geworCQkJZXhjbHVkZV9kdW1wX3Rlc3Rfc2NoZW1hID0+IDEs CisJCQlub190YWJsZV9hY2Nlc3NfbWV0aG9kID0+IDEsCisJCQlvbmx5X2R1bXBfbWVhc3Vy ZW1lbnQgICAgPT4gMSwKKwkJfSwKIAl9LAogCiAJJ0NSRUFURSBNQVRFUklBTElaRUQgVklF VyByZWdyZXNzX3BnX2R1bXBfbWF0dmlld19hbScgPT4gewpAQCAtNDAxNyw4ICs0Mzg4LDEx IEBAIG15ICV0ZXN0cyA9ICgKIAkJbGlrZSA9PiB7CiAJCQklZnVsbF9ydW5zLCAlZHVtcF90 ZXN0X3NjaGVtYV9ydW5zLCBzZWN0aW9uX3ByZV9kYXRhID0+IDEsCiAJCX0sCi0JCXVubGlr ZSA9PgotCQkgIHsgZXhjbHVkZV9kdW1wX3Rlc3Rfc2NoZW1hID0+IDEsIG5vX3RhYmxlX2Fj Y2Vzc19tZXRob2QgPT4gMSB9LAorCQl1bmxpa2UgPT4geworCQkJZXhjbHVkZV9kdW1wX3Rl c3Rfc2NoZW1hID0+IDEsCisJCQlub190YWJsZV9hY2Nlc3NfbWV0aG9kID0+IDEsCisJCQlv bmx5X2R1bXBfbWVhc3VyZW1lbnQgICAgPT4gMSwKKwkJfSwKIAl9KTsKIAogIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMK --------------GTvdye7aTSLoTy2kzwMgFntj--