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 1lS2OP-0001Uc-EC for pgsql-hackers@arkaria.postgresql.org; Thu, 01 Apr 2021 18:50:10 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1lS2OO-0005NV-76 for pgsql-hackers@arkaria.postgresql.org; Thu, 01 Apr 2021 18:50:08 +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 1lS2OM-0005NO-Vf for pgsql-hackers@lists.postgresql.org; Thu, 01 Apr 2021 18:50:07 +0000 Received: from [66.111.4.239] (helo=forward5-smtp.messagingengine.com) by magus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1lS2OG-00009H-Rg for pgsql-hackers@postgresql.org; Thu, 01 Apr 2021 18:50:06 +0000 Received: from compute1.internal (compute1.nyi.internal [10.202.2.41]) by mailforward.nyi.internal (Postfix) with ESMTP id 98F4B1940D1B; Thu, 1 Apr 2021 14:49:48 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute1.internal (MEProxy); Thu, 01 Apr 2021 14:49:48 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to:x-me-proxy :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm2; bh=9eRx2Q USWnTIgFa3U1M2122NNbXNqudaBzghDTcd/WE=; b=IST03uvyGxy6gzVXXDXYbc /XZStQyz1nzZ/PuyQwtl7Jf4GleQLkHTO+Sn9JVMnpfLBkrqM+gPlhjITq3VEdZA x5uPrTTnmOdzOwz2tu8KiYHC1NIiV/ns3eIIWIELvIvhSX5kzkSw5GwoK1BPr+TD PJPWnep/d0HETGcuBG0UieeSqvM89w0w55cbaJnVodG4IbNk1fFbia2DRpA3LWWS dauRMAY/znvhPnZxReCsaAL5bCOlPc5fv51BxtyiBAdIRft0JjCfqpynsY2VsHYj XUrwYtJQaZvVfjAttDi6Aw0ge+LQOpWFEzODG9t7IOhCx7WQaQZqbJpyf1QDsbBw == X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeduledrudeigedguddvtdcutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd enucfjughrpefuvfhfhffkffgfgggjtgesmhdtreertdefjeenucfhrhhomheprfgvthgv rhcugfhishgvnhhtrhgruhhtuceophgvthgvrhdrvghishgvnhhtrhgruhhtsedvnhguqh hurggurhgrnhhtrdgtohhmqeenucggtffrrghtthgvrhhnpedtgfefjeeuudffheevteeu geektdetteeiudfggfekieetledtvdegieeggeetgeenucfkphepledurddugedrvdefvd drieenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehp vghtvghrrdgvihhsvghnthhrrghuthesvdhnughquhgrughrrghnthdrtghomh X-ME-Proxy: Received: from laptop206oxuk.local (p5b0ee806.dip0.t-ipconnect.de [91.14.232.6]) by mail.messagingengine.com (Postfix) with ESMTPA id DFCA5108005C; Thu, 1 Apr 2021 14:49:46 -0400 (EDT) Subject: Re: Since '2001-09-09 01:46:40'::timestamp microseconds are lost when extracting epoch To: Tom Lane Cc: David Steele , Pavel Stehule , Thomas Munro , Petr Fedorov , pgsql-hackers References: <1551357.1599435992@sss.pgh.pa.us> <097a4242-0748-98e3-06ab-ded1d366cd76@2ndquadrant.com> <1893468.1599658711@sss.pgh.pa.us> <38fc499a-ae52-efb6-aad6-82f812d6782d@2ndquadrant.com> <20200917055327.GU2873@paquier.xyz> <20200930071543.GL1996@paquier.xyz> <2fb99632-9302-6509-78ce-3aaed3fd7f40@2ndquadrant.com> <3ff4be02-1e2b-564f-9b53-3dc561da8218@pgmasters.net> <3013402.1615829712@sss.pgh.pa.us> <8fae8673-0d5b-12d9-7342-daed0d590594@2ndquadrant.com> <901bcfb8-36c8-27b2-b148-042392992eeb@2ndquadrant.com> <4158031.1616184417@sss.pgh.pa.us> From: Peter Eisentraut Message-ID: <75db3efe-8023-58ef-9ee4-8a6a3101c7ca@2ndquadrant.com> Date: Thu, 1 Apr 2021 20:49:45 +0200 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0) Gecko/20100101 Thunderbird/78.9.0 MIME-Version: 1.0 In-Reply-To: <4158031.1616184417@sss.pgh.pa.us> Content-Type: multipart/mixed; boundary="------------645FCF422486263188EFAC6E" Content-Language: en-US X-Host-Lookup-Failed: Reverse DNS lookup failed for 66.111.4.239 (deferred) 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. --------------645FCF422486263188EFAC6E Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit On 19.03.21 21:06, Tom Lane wrote: > Yeah, I was wondering if we could do something like that, but I hadn't > got as far as figuring a way to deal with divisors not a multiple of > NBASE. > > Looking at the proposed code, I wonder if it wouldn't be better to > define the function as taking the base-10-log of the divisor, so that > you'd have the number of digits to shift (and the dscale) immediately > instead of needing repeated integer divisions to get that. done that way, much simpler now > Also, the > risk of intermediate overflow here seems annoying: > > + if (unlikely(pg_mul_s64_overflow(val1, NBASE/x, &val1))) > + elog(ERROR, "overflow"); > > Maybe that's unreachable for the ranges of inputs the current patch could > create, but it seems like it makes the function distinctly less > general-purpose than one would think from its comment. Maybe, if that > overflows, we could handle the failure by making that adjustment after > we've converted to numeric? also done I also figured out a way to combine the float8 and numeric implementations so that there is not so much duplication. Added tests to cover all the edge and overflow cases. I think this is solid now. The extract(julian from timestamp) is still a bit in the slow mode, but as I previously stated, it's not documented and gives the wrong result, so it's not clear whether it should be fixed and what it should do. I think I'll register that part as an open item in any case, to see what we should do about that. --------------645FCF422486263188EFAC6E Content-Type: text/plain; charset=UTF-8; x-mac-type="0"; x-mac-creator="0"; name="v6-0001-Change-return-type-of-EXTRACT-to-numeric.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="v6-0001-Change-return-type-of-EXTRACT-to-numeric.patch" RnJvbSBkNmQyOGZjNTAxMDc0MDFmZmQ5ZDhlZDBlN2M2NDFlNmVmMjFmZTNjIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBQZXRlciBFaXNlbnRyYXV0IDxwZXRlckBlaXNlbnRy YXV0Lm9yZz4KRGF0ZTogVGh1LCAxIEFwciAyMDIxIDIwOjEyOjA3ICswMjAwClN1YmplY3Q6 IFtQQVRDSCB2Nl0gQ2hhbmdlIHJldHVybiB0eXBlIG9mIEVYVFJBQ1QgdG8gbnVtZXJpYwoK VGhlIHByZXZpb3VzIGltcGxlbWVudGF0aW9uIG9mIEVYVFJBQ1QgbWFwcGVkIGludGVybmFs bHkgdG8KZGF0ZV9wYXJ0KCksIHdoaWNoIHJldHVybmVkIHR5cGUgZG91YmxlIHByZWNpc2lv biAoc2luY2UgaXQgd2FzCmltcGxlbWVudGVkIGxvbmcgYmVmb3JlIHRoZSBudW1lcmljIHR5 cGUgZXhpc3RlZCkuICBUaGlzIGNhbiBsZWFkIHRvCmltcHJlY2lzZSBvdXRwdXQgaW4gc29t ZSBjYXNlcywgc28gcmV0dXJuaW5nIG51bWVyaWMgd291bGQgYmUKcHJlZmVycmFibGUuICBD aGFuZ2luZyB0aGUgcmV0dXJuIHR5cGUgb2YgYW4gZXhpc3RpbmcgZnVuY3Rpb24gaXMgYQpi aXQgcmlza3ksIHNvIGluc3RlYWQgd2UgZG8gdGhlIGZvbGxvd2luZzogIFdlIGltcGxlbWVu dCBhIG5ldyBzZXQgb2YKZnVuY3Rpb25zLCB3aGljaCBhcmUgbm93IGNhbGxlZCAiZXh0cmFj dCIsIGluIHBhcmFsbGVsIHRvIHRoZSBleGlzdGluZwpkYXRlX3BhcnQgZnVuY3Rpb25zLiAg VGhleSB3b3JrIHRoZSBzYW1lIHdheSBpbnRlcm5hbGx5IGJ1dCB1c2UKbnVtZXJpYyBpbnN0 ZWFkIG9mIGZsb2F0OC4gIFRoZSBFWFRSQUNUIGNvbnN0cnVjdCBpcyBub3cgbWFwcGVkIGJ5 IHRoZQpwYXJzZXIgdG8gdGhlc2UgbmV3IGV4dHJhY3QgZnVuY3Rpb25zLiAgVGhhdCB3YXks IGR1bXBzIG9mIHZpZXdzCmV0Yy4gZnJvbSBvbGQgdmVyc2lvbnMgKHdoaWNoIHdvdWxkIHVz ZSBkYXRlX3BhcnQpIGNvbnRpbnVlIHRvIHdvcmsKdW5jaGFuZ2VkLCBidXQgbmV3IHVzZXMg d2lsbCBtYXAgdG8gdGhlIG5ldyBleHRyYWN0IGZ1bmN0aW9ucy4KCkFkZGl0aW9uYWxseSwg dGhlIHJldmVyc2UgY29tcGlsYXRpb24gb2YgRVhUUkFDVCBub3cgcmVwcm9kdWNlcyB0aGUK b3JpZ2luYWwgc3ludGF4LCB1c2luZyB0aGUgbmV3IG1lY2hhbmlzbSBpbnRyb2R1Y2VkIGlu CjQwYzI0YmZlZjkyNTMwYmQ4NDZlMTExYzE3NDJjMmE1NDQ0MWM2MmMuCgpUaGUgZm9sbG93 aW5nIG1pbm9yIGNoYW5nZXMgb2YgYmVoYXZpb3IgcmVzdWx0IGZyb20gdGhlIG5ldwppbXBs ZW1lbnRhdGlvbjoKCi0gVGhlIGNvbHVtbiBuYW1lIGZyb20gYW4gaXNvbGF0ZWQgRVhUUkFD VCBjYWxsIGlzIG5vdyAiZXh0cmFjdCIKICBpbnN0ZWFkIG9mICJkYXRlX3BhcnQiLgoKLSBF eHRyYWN0IGZyb20gZGF0ZSBub3cgcmVqZWN0cyBpbmFwcHJvcHJpYXRlIGZpZWxkIG5hbWVz IHN1Y2ggYXMKICBIT1VSLiAgSXQgd2FzIHByZXZpb3VzbHkgbWFwcGVkIGludGVybmFsbHkg dG8gZXh0cmFjdCBmcm9tCiAgdGltZXN0YW1wLCBzbyBpdCB3b3VsZCBzaWxlbnRseSBhY2Nl cHQgZXZlcnl0aGluZyBhcHByb3ByaWF0ZSBmb3IKICB0aW1lc3RhbXAuCgotIFJldHVybiB2 YWx1ZXMgd2hlbiBleHRyYWN0aW5nIGZpZWxkcyB3aXRoIHBvc3NpYmx5IGZyYWN0aW9uYWwK ICB2YWx1ZXMsIHN1Y2ggYXMgc2Vjb25kIGFuZCBlcG9jaCwgbm93IGhhdmUgdGhlIGZ1bGwg c2NhbGUgdGhhdCB0aGUKICB2YWx1ZSBoYXMgaW50ZXJuYWxseSAoc28sIGZvciBleGFtcGxl LCAnMS4wMDAwMDAnIGluc3RlYWQgb2YganVzdAogICcxJykuCgpEaXNjdXNzaW9uOiBodHRw czovL3d3dy5wb3N0Z3Jlc3FsLm9yZy9tZXNzYWdlLWlkL2ZsYXQvNDJiNzNkMmQtZGExMi1i YTlmLTU3MGEtNDIwZTBjY2UxOWQ5QHBoeXN0ZWNoLmVkdQotLS0KIGRvYy9zcmMvc2dtbC9m dW5jLnNnbWwgICAgICAgICAgICAgICAgICAgICAgfCAgMTAgKy0KIHNyYy9iYWNrZW5kL3Bh cnNlci9ncmFtLnkgICAgICAgICAgICAgICAgICAgfCAgIDIgKy0KIHNyYy9iYWNrZW5kL3V0 aWxzL2FkdC9kYXRlLmMgICAgICAgICAgICAgICAgfCAzMDggKysrKysrKysrKystLQogc3Jj L2JhY2tlbmQvdXRpbHMvYWR0L251bWVyaWMuYyAgICAgICAgICAgICB8ICA2MSArKysKIHNy Yy9iYWNrZW5kL3V0aWxzL2FkdC9ydWxldXRpbHMuYyAgICAgICAgICAgfCAgMjEgKwogc3Jj L2JhY2tlbmQvdXRpbHMvYWR0L3RpbWVzdGFtcC5jICAgICAgICAgICB8IDQ3MSArKysrKysr KysrKysrKy0tLS0tLQogc3JjL2luY2x1ZGUvY2F0YWxvZy9wZ19wcm9jLmRhdCAgICAgICAg ICAgICB8ICAxOCArCiBzcmMvaW5jbHVkZS91dGlscy9udW1lcmljLmggICAgICAgICAgICAg ICAgIHwgICAxICsKIHNyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvY3JlYXRlX3ZpZXcub3V0 ICAgfCAgIDIgKy0KIHNyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvZGF0ZS5vdXQgICAgICAg ICAgfCA0NTIgKysrKysrKysrLS0tLS0tLS0tLQogc3JjL3Rlc3QvcmVncmVzcy9leHBlY3Rl ZC9pbnRlcnZhbC5vdXQgICAgICB8IDEwMSArKystLQogc3JjL3Rlc3QvcmVncmVzcy9leHBl Y3RlZC9wc3FsX2Nyb3NzdGFiLm91dCB8ICAxMiArLQogc3JjL3Rlc3QvcmVncmVzcy9leHBl Y3RlZC90aW1lLm91dCAgICAgICAgICB8ICA0OCArLQogc3JjL3Rlc3QvcmVncmVzcy9leHBl Y3RlZC90aW1lc3RhbXAub3V0ICAgICB8ICA5MSArKysrCiBzcmMvdGVzdC9yZWdyZXNzL2V4 cGVjdGVkL3RpbWVzdGFtcHR6Lm91dCAgIHwgIDkyICsrKysKIHNyYy90ZXN0L3JlZ3Jlc3Mv ZXhwZWN0ZWQvdGltZXR6Lm91dCAgICAgICAgfCAgNjAgKystCiBzcmMvdGVzdC9yZWdyZXNz L3NxbC9kYXRlLnNxbCAgICAgICAgICAgICAgIHwgIDIyICstCiBzcmMvdGVzdC9yZWdyZXNz L3NxbC9pbnRlcnZhbC5zcWwgICAgICAgICAgIHwgIDEyICsKIHNyYy90ZXN0L3JlZ3Jlc3Mv c3FsL3RpbWUuc3FsICAgICAgICAgICAgICAgfCAgIDcgKwogc3JjL3Rlc3QvcmVncmVzcy9z cWwvdGltZXN0YW1wLnNxbCAgICAgICAgICB8ICAxMyArCiBzcmMvdGVzdC9yZWdyZXNzL3Nx bC90aW1lc3RhbXB0ei5zcWwgICAgICAgIHwgIDEzICsKIHNyYy90ZXN0L3JlZ3Jlc3Mvc3Fs L3RpbWV0ei5zcWwgICAgICAgICAgICAgfCAgIDcgKwogMjIgZmlsZXMgY2hhbmdlZCwgMTMy OSBpbnNlcnRpb25zKCspLCA0OTUgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZG9jL3Ny Yy9zZ21sL2Z1bmMuc2dtbCBiL2RvYy9zcmMvc2dtbC9mdW5jLnNnbWwKaW5kZXggM2NmMjQz YTE2YS4uNjYzZjk2NmI5NyAxMDA2NDQKLS0tIGEvZG9jL3NyYy9zZ21sL2Z1bmMuc2dtbAor KysgYi9kb2Mvc3JjL3NnbWwvZnVuYy5zZ21sCkBAIC04ODcyLDcgKzg4NzIsNyBAQCA8dGl0 bGU+RGF0ZS9UaW1lIEZ1bmN0aW9uczwvdGl0bGU+CiAgICAgICAgICAgPHByaW1hcnk+ZXh0 cmFjdDwvcHJpbWFyeT4KICAgICAgICAgIDwvaW5kZXh0ZXJtPgogICAgICAgICAgPGZ1bmN0 aW9uPmV4dHJhY3Q8L2Z1bmN0aW9uPiAoIDxwYXJhbWV0ZXI+ZmllbGQ8L3BhcmFtZXRlcj4g PGxpdGVyYWw+ZnJvbTwvbGl0ZXJhbD4gPHR5cGU+dGltZXN0YW1wPC90eXBlPiApCi0gICAg ICAgICA8cmV0dXJudmFsdWU+ZG91YmxlIHByZWNpc2lvbjwvcmV0dXJudmFsdWU+CisgICAg ICAgICA8cmV0dXJudmFsdWU+bnVtZXJpYzwvcmV0dXJudmFsdWU+CiAgICAgICAgIDwvcGFy YT4KICAgICAgICAgPHBhcmE+CiAgICAgICAgICBHZXQgdGltZXN0YW1wIHN1YmZpZWxkOyBz ZWUgPHhyZWYgbGlua2VuZD0iZnVuY3Rpb25zLWRhdGV0aW1lLWV4dHJhY3QiLz4KQEAgLTg4 ODYsNyArODg4Niw3IEBAIDx0aXRsZT5EYXRlL1RpbWUgRnVuY3Rpb25zPC90aXRsZT4KICAg ICAgICA8cm93PgogICAgICAgICA8ZW50cnkgcm9sZT0iZnVuY190YWJsZV9lbnRyeSI+PHBh cmEgcm9sZT0iZnVuY19zaWduYXR1cmUiPgogICAgICAgICAgPGZ1bmN0aW9uPmV4dHJhY3Q8 L2Z1bmN0aW9uPiAoIDxwYXJhbWV0ZXI+ZmllbGQ8L3BhcmFtZXRlcj4gPGxpdGVyYWw+ZnJv bTwvbGl0ZXJhbD4gPHR5cGU+aW50ZXJ2YWw8L3R5cGU+ICkKLSAgICAgICAgIDxyZXR1cm52 YWx1ZT5kb3VibGUgcHJlY2lzaW9uPC9yZXR1cm52YWx1ZT4KKyAgICAgICAgIDxyZXR1cm52 YWx1ZT5udW1lcmljPC9yZXR1cm52YWx1ZT4KICAgICAgICAgPC9wYXJhPgogICAgICAgICA8 cGFyYT4KICAgICAgICAgIEdldCBpbnRlcnZhbCBzdWJmaWVsZDsgc2VlIDx4cmVmIGxpbmtl bmQ9ImZ1bmN0aW9ucy1kYXRldGltZS1leHRyYWN0Ii8+CkBAIC05NDAxLDcgKzk0MDEsNyBA QCA8dGl0bGU+PGZ1bmN0aW9uPkVYVFJBQ1Q8L2Z1bmN0aW9uPiwgPGZ1bmN0aW9uPmRhdGVf cGFydDwvZnVuY3Rpb24+PC90aXRsZT4KICAgICB3ZWxsLikgIDxyZXBsYWNlYWJsZT5maWVs ZDwvcmVwbGFjZWFibGU+IGlzIGFuIGlkZW50aWZpZXIgb3IKICAgICBzdHJpbmcgdGhhdCBz ZWxlY3RzIHdoYXQgZmllbGQgdG8gZXh0cmFjdCBmcm9tIHRoZSBzb3VyY2UgdmFsdWUuCiAg ICAgVGhlIDxmdW5jdGlvbj5leHRyYWN0PC9mdW5jdGlvbj4gZnVuY3Rpb24gcmV0dXJucyB2 YWx1ZXMgb2YgdHlwZQotICAgIDx0eXBlPmRvdWJsZSBwcmVjaXNpb248L3R5cGU+LgorICAg IDx0eXBlPm51bWVyaWM8L3R5cGU+LgogICAgIFRoZSBmb2xsb3dpbmcgYXJlIHZhbGlkIGZp ZWxkIG5hbWVzOgogCiAgICAgPCEtLSBhbHBoYWJldGljYWwgLS0+CkBAIC05ODI1LDYgKzk4 MjUsMTAgQEAgPHRpdGxlPjxmdW5jdGlvbj5FWFRSQUNUPC9mdW5jdGlvbj4sIDxmdW5jdGlv bj5kYXRlX3BhcnQ8L2Z1bmN0aW9uPjwvdGl0bGU+CiAgICAgYmUgYSBzdHJpbmcgdmFsdWUs IG5vdCBhIG5hbWUuICBUaGUgdmFsaWQgZmllbGQgbmFtZXMgZm9yCiAgICAgPGZ1bmN0aW9u PmRhdGVfcGFydDwvZnVuY3Rpb24+IGFyZSB0aGUgc2FtZSBhcyBmb3IKICAgICA8ZnVuY3Rp b24+ZXh0cmFjdDwvZnVuY3Rpb24+LgorICAgIEZvciBoaXN0b3JpY2FsIHJlYXNvbnMsIHRo ZSA8ZnVuY3Rpb24+ZGF0ZV9wYXJ0PC9mdW5jdGlvbj4gZnVuY3Rpb24KKyAgICByZXR1cm5z IHZhbHVlcyBvZiB0eXBlIDx0eXBlPmRvdWJsZSBwcmVjaXNpb248L3R5cGU+LiAgVGhpcyBj YW4gcmVzdWx0IGluCisgICAgYSBsb3NzIG9mIHByZWNpc2lvbiBpbiBjZXJ0YWluIHVzZXMu ICBVc2luZyA8ZnVuY3Rpb24+ZXh0cmFjdDwvZnVuY3Rpb24+CisgICAgaXMgcmVjb21tZW5k ZWQgaW5zdGVhZC4KICAgIDwvcGFyYT4KIAogPHNjcmVlbj4KZGlmZiAtLWdpdCBhL3NyYy9i YWNrZW5kL3BhcnNlci9ncmFtLnkgYi9zcmMvYmFja2VuZC9wYXJzZXIvZ3JhbS55CmluZGV4 IDhiMWJhZDBkNzkuLjA1Y2MyYzlhZTAgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL3BhcnNl ci9ncmFtLnkKKysrIGIvc3JjL2JhY2tlbmQvcGFyc2VyL2dyYW0ueQpAQCAtMTQwMjAsNyAr MTQwMjAsNyBAQCBmdW5jX2V4cHJfY29tbW9uX3N1YmV4cHI6CiAJCQkJeyAkJCA9IG1ha2VU eXBlQ2FzdCgkMywgJDUsIEAxKTsgfQogCQkJfCBFWFRSQUNUICcoJyBleHRyYWN0X2xpc3Qg JyknCiAJCQkJewotCQkJCQkkJCA9IChOb2RlICopIG1ha2VGdW5jQ2FsbChTeXN0ZW1GdW5j TmFtZSgiZGF0ZV9wYXJ0IiksCisJCQkJCSQkID0gKE5vZGUgKikgbWFrZUZ1bmNDYWxsKFN5 c3RlbUZ1bmNOYW1lKCJleHRyYWN0IiksCiAJCQkJCQkJCQkJCSAgICQzLAogCQkJCQkJCQkJ CQkgICBDT0VSQ0VfU1FMX1NZTlRBWCwKIAkJCQkJCQkJCQkJICAgQDEpOwpkaWZmIC0tZ2l0 IGEvc3JjL2JhY2tlbmQvdXRpbHMvYWR0L2RhdGUuYyBiL3NyYy9iYWNrZW5kL3V0aWxzL2Fk dC9kYXRlLmMKaW5kZXggNjA1M2QwZThhNi4uODMwMzZlNTk4NSAxMDA2NDQKLS0tIGEvc3Jj L2JhY2tlbmQvdXRpbHMvYWR0L2RhdGUuYworKysgYi9zcmMvYmFja2VuZC91dGlscy9hZHQv ZGF0ZS5jCkBAIC0zMSw2ICszMSw3IEBACiAjaW5jbHVkZSAidXRpbHMvYnVpbHRpbnMuaCIK ICNpbmNsdWRlICJ1dGlscy9kYXRlLmgiCiAjaW5jbHVkZSAidXRpbHMvZGF0ZXRpbWUuaCIK KyNpbmNsdWRlICJ1dGlscy9udW1lcmljLmgiCiAjaW5jbHVkZSAidXRpbHMvc29ydHN1cHBv cnQuaCIKIAogLyoKQEAgLTEwNjMsNiArMTA2NCwxODIgQEAgaW5fcmFuZ2VfZGF0ZV9pbnRl cnZhbChQR19GVU5DVElPTl9BUkdTKQogfQogCiAKKy8qIGV4dHJhY3RfZGF0ZSgpCisgKiBF eHRyYWN0IHNwZWNpZmllZCBmaWVsZCBmcm9tIGRhdGUgdHlwZS4KKyAqLworRGF0dW0KK2V4 dHJhY3RfZGF0ZShQR19GVU5DVElPTl9BUkdTKQoreworCXRleHQJICAgKnVuaXRzID0gUEdf R0VUQVJHX1RFWFRfUFAoMCk7CisJRGF0ZUFEVAkJZGF0ZSA9IFBHX0dFVEFSR19EQVRFQURU KDEpOworCWludDY0CQlpbnRyZXN1bHQ7CisJaW50CQkJdHlwZSwKKwkJCQl2YWw7CisJY2hh cgkgICAqbG93dW5pdHM7CisJaW50CQkJeWVhciwKKwkJCQltb24sCisJCQkJbWRheTsKKwor CWxvd3VuaXRzID0gZG93bmNhc2VfdHJ1bmNhdGVfaWRlbnRpZmllcihWQVJEQVRBX0FOWSh1 bml0cyksCisJCQkJCQkJCQkJCVZBUlNJWkVfQU5ZX0VYSERSKHVuaXRzKSwKKwkJCQkJCQkJ CQkJZmFsc2UpOworCisJdHlwZSA9IERlY29kZVVuaXRzKDAsIGxvd3VuaXRzLCAmdmFsKTsK KwlpZiAodHlwZSA9PSBVTktOT1dOX0ZJRUxEKQorCQl0eXBlID0gRGVjb2RlU3BlY2lhbCgw LCBsb3d1bml0cywgJnZhbCk7CisKKwlpZiAoREFURV9OT1RfRklOSVRFKGRhdGUpICYmICh0 eXBlID09IFVOSVRTIHx8IHR5cGUgPT0gUkVTRVJWKSkKKwl7CisJCXN3aXRjaCAodmFsKQor CQl7CisJCQkJLyogT3NjaWxsYXRpbmcgdW5pdHMgKi8KKwkJCWNhc2UgRFRLX0RBWToKKwkJ CWNhc2UgRFRLX01PTlRIOgorCQkJY2FzZSBEVEtfUVVBUlRFUjoKKwkJCWNhc2UgRFRLX1dF RUs6CisJCQljYXNlIERUS19ET1c6CisJCQljYXNlIERUS19JU09ET1c6CisJCQljYXNlIERU S19ET1k6CisJCQkJUEdfUkVUVVJOX05VTEwoKTsKKwkJCQlicmVhazsKKworCQkJCS8qIE1v bm90b25pY2FsbHktaW5jcmVhc2luZyB1bml0cyAqLworCQkJY2FzZSBEVEtfWUVBUjoKKwkJ CWNhc2UgRFRLX0RFQ0FERToKKwkJCWNhc2UgRFRLX0NFTlRVUlk6CisJCQljYXNlIERUS19N SUxMRU5OSVVNOgorCQkJY2FzZSBEVEtfSlVMSUFOOgorCQkJY2FzZSBEVEtfSVNPWUVBUjoK KwkJCWNhc2UgRFRLX0VQT0NIOgorCQkJCWlmIChEQVRFX0lTX05PQkVHSU4oZGF0ZSkpCisJ CQkJCVBHX1JFVFVSTl9OVU1FUklDKERhdHVtR2V0TnVtZXJpYyhEaXJlY3RGdW5jdGlvbkNh bGwzKG51bWVyaWNfaW4sCisJCQkJCQkJCQkJCQkJCQkJCQkgIENTdHJpbmdHZXREYXR1bSgi LUluZmluaXR5IiksCisJCQkJCQkJCQkJCQkJCQkJCQkgIE9iamVjdElkR2V0RGF0dW0oSW52 YWxpZE9pZCksCisJCQkJCQkJCQkJCQkJCQkJCQkgIEludDMyR2V0RGF0dW0oLTEpKSkpOwor CQkJCWVsc2UKKwkJCQkJUEdfUkVUVVJOX05VTUVSSUMoRGF0dW1HZXROdW1lcmljKERpcmVj dEZ1bmN0aW9uQ2FsbDMobnVtZXJpY19pbiwKKwkJCQkJCQkJCQkJCQkJCQkJCSAgQ1N0cmlu Z0dldERhdHVtKCJJbmZpbml0eSIpLAorCQkJCQkJCQkJCQkJCQkJCQkJICBPYmplY3RJZEdl dERhdHVtKEludmFsaWRPaWQpLAorCQkJCQkJCQkJCQkJCQkJCQkJICBJbnQzMkdldERhdHVt KC0xKSkpKTsKKwkJCWRlZmF1bHQ6CisJCQkJZXJlcG9ydChFUlJPUiwKKwkJCQkJCShlcnJj b2RlKEVSUkNPREVfRkVBVFVSRV9OT1RfU1VQUE9SVEVEKSwKKwkJCQkJCSBlcnJtc2coImRh dGUgdW5pdHMgXCIlc1wiIG5vdCBzdXBwb3J0ZWQiLAorCQkJCQkJCQlsb3d1bml0cykpKTsK KwkJfQorCX0KKwllbHNlIGlmICh0eXBlID09IFVOSVRTKQorCXsKKwkJajJkYXRlKGRhdGUg KyBQT1NUR1JFU19FUE9DSF9KREFURSwgJnllYXIsICZtb24sICZtZGF5KTsKKworCQlzd2l0 Y2ggKHZhbCkKKwkJeworCQkJY2FzZSBEVEtfREFZOgorCQkJCWludHJlc3VsdCA9IG1kYXk7 CisJCQkJYnJlYWs7CisKKwkJCWNhc2UgRFRLX01PTlRIOgorCQkJCWludHJlc3VsdCA9IG1v bjsKKwkJCQlicmVhazsKKworCQkJY2FzZSBEVEtfUVVBUlRFUjoKKwkJCQlpbnRyZXN1bHQg PSAobW9uIC0gMSkgLyAzICsgMTsKKwkJCQlicmVhazsKKworCQkJY2FzZSBEVEtfV0VFSzoK KwkJCQlpbnRyZXN1bHQgPSBkYXRlMmlzb3dlZWsoeWVhciwgbW9uLCBtZGF5KTsKKwkJCQli cmVhazsKKworCQkJY2FzZSBEVEtfWUVBUjoKKwkJCQlpZiAoeWVhciA+IDApCisJCQkJCWlu dHJlc3VsdCA9IHllYXI7CisJCQkJZWxzZQorCQkJCQkvKiB0aGVyZSBpcyBubyB5ZWFyIDAs IGp1c3QgMSBCQyBhbmQgMSBBRCAqLworCQkJCQlpbnRyZXN1bHQgPSB5ZWFyIC0gMTsKKwkJ CQlicmVhazsKKworCQkJY2FzZSBEVEtfREVDQURFOgorCQkJCS8qIHNlZSBjb21tZW50cyBp biB0aW1lc3RhbXBfcGFydCAqLworCQkJCWlmICh5ZWFyID49IDApCisJCQkJCWludHJlc3Vs dCA9IHllYXIgLyAxMDsKKwkJCQllbHNlCisJCQkJCWludHJlc3VsdCA9IC0oKDggLSAoeWVh ciAtIDEpKSAvIDEwKTsKKwkJCQlicmVhazsKKworCQkJY2FzZSBEVEtfQ0VOVFVSWToKKwkJ CQkvKiBzZWUgY29tbWVudHMgaW4gdGltZXN0YW1wX3BhcnQgKi8KKwkJCQlpZiAoeWVhciA+ IDApCisJCQkJCWludHJlc3VsdCA9ICh5ZWFyICsgOTkpIC8gMTAwOworCQkJCWVsc2UKKwkJ CQkJaW50cmVzdWx0ID0gLSgoOTkgLSAoeWVhciAtIDEpKSAvIDEwMCk7CisJCQkJYnJlYWs7 CisKKwkJCWNhc2UgRFRLX01JTExFTk5JVU06CisJCQkJLyogc2VlIGNvbW1lbnRzIGluIHRp bWVzdGFtcF9wYXJ0ICovCisJCQkJaWYgKHllYXIgPiAwKQorCQkJCQlpbnRyZXN1bHQgPSAo eWVhciArIDk5OSkgLyAxMDAwOworCQkJCWVsc2UKKwkJCQkJaW50cmVzdWx0ID0gLSgoOTk5 IC0gKHllYXIgLSAxKSkgLyAxMDAwKTsKKwkJCQlicmVhazsKKworCQkJY2FzZSBEVEtfSlVM SUFOOgorCQkJCWludHJlc3VsdCA9IGRhdGUgKyBQT1NUR1JFU19FUE9DSF9KREFURTsKKwkJ CQlicmVhazsKKworCQkJY2FzZSBEVEtfSVNPWUVBUjoKKwkJCQlpbnRyZXN1bHQgPSBkYXRl Mmlzb3llYXIoeWVhciwgbW9uLCBtZGF5KTsKKwkJCQkvKiBBZGp1c3QgQkMgeWVhcnMgKi8K KwkJCQlpZiAoaW50cmVzdWx0IDw9IDApCisJCQkJCWludHJlc3VsdCAtPSAxOworCQkJCWJy ZWFrOworCisJCQljYXNlIERUS19ET1c6CisJCQljYXNlIERUS19JU09ET1c6CisJCQkJaW50 cmVzdWx0ID0gajJkYXkoZGF0ZSArIFBPU1RHUkVTX0VQT0NIX0pEQVRFKTsKKwkJCQlpZiAo dmFsID09IERUS19JU09ET1cgJiYgaW50cmVzdWx0ID09IDApCisJCQkJCWludHJlc3VsdCA9 IDc7CisJCQkJYnJlYWs7CisKKwkJCWNhc2UgRFRLX0RPWToKKwkJCQlpbnRyZXN1bHQgPSBk YXRlMmooeWVhciwgbW9uLCBtZGF5KSAtIGRhdGUyaih5ZWFyLCAxLCAxKSArIDE7CisJCQkJ YnJlYWs7CisKKwkJCWRlZmF1bHQ6CisJCQkJZXJlcG9ydChFUlJPUiwKKwkJCQkJCShlcnJj b2RlKEVSUkNPREVfRkVBVFVSRV9OT1RfU1VQUE9SVEVEKSwKKwkJCQkJCSBlcnJtc2coImRh dGUgdW5pdHMgXCIlc1wiIG5vdCBzdXBwb3J0ZWQiLAorCQkJCQkJCQlsb3d1bml0cykpKTsK KwkJCQlpbnRyZXN1bHQgPSAwOworCQl9CisJfQorCWVsc2UgaWYgKHR5cGUgPT0gUkVTRVJW KQorCXsKKwkJc3dpdGNoICh2YWwpCisJCXsKKwkJCWNhc2UgRFRLX0VQT0NIOgorCQkJCWlu dHJlc3VsdCA9ICgoaW50NjQpIGRhdGUgKyBQT1NUR1JFU19FUE9DSF9KREFURSAtIFVOSVhf RVBPQ0hfSkRBVEUpICogU0VDU19QRVJfREFZOworCQkJCWJyZWFrOworCisJCQlkZWZhdWx0 OgorCQkJCWVyZXBvcnQoRVJST1IsCisJCQkJCQkoZXJyY29kZShFUlJDT0RFX0ZFQVRVUkVf Tk9UX1NVUFBPUlRFRCksCisJCQkJCQkgZXJybXNnKCJkYXRlIHVuaXRzIFwiJXNcIiBub3Qg c3VwcG9ydGVkIiwKKwkJCQkJCQkJbG93dW5pdHMpKSk7CisJCQkJaW50cmVzdWx0ID0gMDsK KwkJfQorCX0KKwllbHNlCisJeworCQllcmVwb3J0KEVSUk9SLAorCQkJCShlcnJjb2RlKEVS UkNPREVfSU5WQUxJRF9QQVJBTUVURVJfVkFMVUUpLAorCQkJCSBlcnJtc2coImRhdGUgdW5p dHMgXCIlc1wiIG5vdCByZWNvZ25pemVkIiwgbG93dW5pdHMpKSk7CisJCWludHJlc3VsdCA9 IDA7CisJfQorCisJUEdfUkVUVVJOX05VTUVSSUMoaW50NjRfdG9fbnVtZXJpYyhpbnRyZXN1 bHQpKTsKK30KKworCiAvKiBBZGQgYW4gaW50ZXJ2YWwgdG8gYSBkYXRlLCBnaXZpbmcgYSBu ZXcgZGF0ZS4KICAqIE11c3QgaGFuZGxlIGJvdGggcG9zaXRpdmUgYW5kIG5lZ2F0aXZlIGlu dGVydmFscy4KICAqCkBAIC0xOTQ5LDE1ICsyMTI2LDE1IEBAIGluX3JhbmdlX3RpbWVfaW50 ZXJ2YWwoUEdfRlVOQ1RJT05fQVJHUykKIH0KIAogCi0vKiB0aW1lX3BhcnQoKQorLyogdGlt ZV9wYXJ0KCkgYW5kIGV4dHJhY3RfdGltZSgpCiAgKiBFeHRyYWN0IHNwZWNpZmllZCBmaWVs ZCBmcm9tIHRpbWUgdHlwZS4KICAqLwotRGF0dW0KLXRpbWVfcGFydChQR19GVU5DVElPTl9B UkdTKQorc3RhdGljIERhdHVtCit0aW1lX3BhcnRfY29tbW9uKFBHX0ZVTkNUSU9OX0FSR1Ms IGJvb2wgcmV0bnVtZXJpYykKIHsKIAl0ZXh0CSAgICp1bml0cyA9IFBHX0dFVEFSR19URVhU X1BQKDApOwogCVRpbWVBRFQJCXRpbWUgPSBQR19HRVRBUkdfVElNRUFEVCgxKTsKLQlmbG9h dDgJCXJlc3VsdDsKKwlpbnQ2NAkJaW50cmVzdWx0OwogCWludAkJCXR5cGUsCiAJCQkJdmFs OwogCWNoYXIJICAgKmxvd3VuaXRzOwpAQCAtMTk4MSwyMyArMjE1OCwzNyBAQCB0aW1lX3Bh cnQoUEdfRlVOQ1RJT05fQVJHUykKIAkJc3dpdGNoICh2YWwpCiAJCXsKIAkJCWNhc2UgRFRL X01JQ1JPU0VDOgotCQkJCXJlc3VsdCA9IHRtLT50bV9zZWMgKiAxMDAwMDAwLjAgKyBmc2Vj OworCQkJCWludHJlc3VsdCA9IHRtLT50bV9zZWMgKiAxMDAwMDAwICsgZnNlYzsKIAkJCQli cmVhazsKIAogCQkJY2FzZSBEVEtfTUlMTElTRUM6Ci0JCQkJcmVzdWx0ID0gdG0tPnRtX3Nl YyAqIDEwMDAuMCArIGZzZWMgLyAxMDAwLjA7CisJCQkJaWYgKHJldG51bWVyaWMpCisJCQkJ CS8qLS0tCisJCQkJCSAqIHRtLT50bV9zZWMgKiAxMDAwICsgZnNlYyAvIDEwMDAKKwkJCQkJ ICogPSAodG0tPnRtX3NlYyAqIDEnMDAwJzAwMCArIGZzZWMpIC8gMTAwMAorCQkJCQkgKi8K KwkJCQkJUEdfUkVUVVJOX05VTUVSSUMoaW50NjRfZGl2X2Zhc3RfdG9fbnVtZXJpYyh0bS0+ dG1fc2VjICogMTAwMDAwMExMICsgZnNlYywgMykpOworCQkJCWVsc2UKKwkJCQkJUEdfUkVU VVJOX0ZMT0FUOCh0bS0+dG1fc2VjICogMTAwMC4wICsgZnNlYyAvIDEwMDAuMCk7CiAJCQkJ YnJlYWs7CiAKIAkJCWNhc2UgRFRLX1NFQ09ORDoKLQkJCQlyZXN1bHQgPSB0bS0+dG1fc2Vj ICsgZnNlYyAvIDEwMDAwMDAuMDsKKwkJCQlpZiAocmV0bnVtZXJpYykKKwkJCQkJLyotLS0K KwkJCQkJICogdG0tPnRtX3NlYyArIGZzZWMgLyAxJzAwMCcwMDAKKwkJCQkJICogPSAodG0t PnRtX3NlYyAqIDEnMDAwJzAwMCArIGZzZWMpIC8gMScwMDAnMDAwCisJCQkJCSAqLworCQkJ CQlQR19SRVRVUk5fTlVNRVJJQyhpbnQ2NF9kaXZfZmFzdF90b19udW1lcmljKHRtLT50bV9z ZWMgKiAxMDAwMDAwTEwgKyBmc2VjLCA2KSk7CisJCQkJZWxzZQorCQkJCQlQR19SRVRVUk5f RkxPQVQ4KHRtLT50bV9zZWMgKyBmc2VjIC8gMTAwMDAwMC4wKTsKIAkJCQlicmVhazsKIAog CQkJY2FzZSBEVEtfTUlOVVRFOgotCQkJCXJlc3VsdCA9IHRtLT50bV9taW47CisJCQkJaW50 cmVzdWx0ID0gdG0tPnRtX21pbjsKIAkJCQlicmVhazsKIAogCQkJY2FzZSBEVEtfSE9VUjoK LQkJCQlyZXN1bHQgPSB0bS0+dG1faG91cjsKKwkJCQlpbnRyZXN1bHQgPSB0bS0+dG1faG91 cjsKIAkJCQlicmVhazsKIAogCQkJY2FzZSBEVEtfVFo6CkBAIC0yMDE2LDEyICsyMjA3LDE1 IEBAIHRpbWVfcGFydChQR19GVU5DVElPTl9BUkdTKQogCQkJCQkJKGVycmNvZGUoRVJSQ09E RV9JTlZBTElEX1BBUkFNRVRFUl9WQUxVRSksCiAJCQkJCQkgZXJybXNnKCJcInRpbWVcIiB1 bml0cyBcIiVzXCIgbm90IHJlY29nbml6ZWQiLAogCQkJCQkJCQlsb3d1bml0cykpKTsKLQkJ CQlyZXN1bHQgPSAwOworCQkJCWludHJlc3VsdCA9IDA7CiAJCX0KIAl9CiAJZWxzZSBpZiAo dHlwZSA9PSBSRVNFUlYgJiYgdmFsID09IERUS19FUE9DSCkKIAl7Ci0JCXJlc3VsdCA9IHRp bWUgLyAxMDAwMDAwLjA7CisJCWlmIChyZXRudW1lcmljKQorCQkJUEdfUkVUVVJOX05VTUVS SUMoaW50NjRfZGl2X2Zhc3RfdG9fbnVtZXJpYyh0aW1lLCA2KSk7CisJCWVsc2UKKwkJCVBH X1JFVFVSTl9GTE9BVDgodGltZSAvIDEwMDAwMDAuMCk7CiAJfQogCWVsc2UKIAl7CkBAIC0y MDI5LDEwICsyMjIzLDI1IEBAIHRpbWVfcGFydChQR19GVU5DVElPTl9BUkdTKQogCQkJCShl cnJjb2RlKEVSUkNPREVfSU5WQUxJRF9QQVJBTUVURVJfVkFMVUUpLAogCQkJCSBlcnJtc2co IlwidGltZVwiIHVuaXRzIFwiJXNcIiBub3QgcmVjb2duaXplZCIsCiAJCQkJCQlsb3d1bml0 cykpKTsKLQkJcmVzdWx0ID0gMDsKKwkJaW50cmVzdWx0ID0gMDsKIAl9CiAKLQlQR19SRVRV Uk5fRkxPQVQ4KHJlc3VsdCk7CisJaWYgKHJldG51bWVyaWMpCisJCVBHX1JFVFVSTl9OVU1F UklDKGludDY0X3RvX251bWVyaWMoaW50cmVzdWx0KSk7CisJZWxzZQorCQlQR19SRVRVUk5f RkxPQVQ4KGludHJlc3VsdCk7Cit9CisKK0RhdHVtCit0aW1lX3BhcnQoUEdfRlVOQ1RJT05f QVJHUykKK3sKKwlyZXR1cm4gdGltZV9wYXJ0X2NvbW1vbihmY2luZm8sIGZhbHNlKTsKK30K KworRGF0dW0KK2V4dHJhY3RfdGltZShQR19GVU5DVElPTl9BUkdTKQoreworCXJldHVybiB0 aW1lX3BhcnRfY29tbW9uKGZjaW5mbywgdHJ1ZSk7CiB9CiAKIApAQCAtMjY4NiwxNSArMjg5 NSwxNSBAQCBkYXRldGltZXR6X3RpbWVzdGFtcHR6KFBHX0ZVTkNUSU9OX0FSR1MpCiB9CiAK IAotLyogdGltZXR6X3BhcnQoKQorLyogdGltZXR6X3BhcnQoKSBhbmQgZXh0cmFjdF90aW1l dHooKQogICogRXh0cmFjdCBzcGVjaWZpZWQgZmllbGQgZnJvbSB0aW1lIHR5cGUuCiAgKi8K LURhdHVtCi10aW1ldHpfcGFydChQR19GVU5DVElPTl9BUkdTKQorc3RhdGljIERhdHVtCit0 aW1ldHpfcGFydF9jb21tb24oUEdfRlVOQ1RJT05fQVJHUywgYm9vbCByZXRudW1lcmljKQog ewogCXRleHQJICAgKnVuaXRzID0gUEdfR0VUQVJHX1RFWFRfUFAoMCk7CiAJVGltZVR6QURU ICAqdGltZSA9IFBHX0dFVEFSR19USU1FVFpBRFRfUCgxKTsKLQlmbG9hdDgJCXJlc3VsdDsK KwlpbnQ2NAkJaW50cmVzdWx0OwogCWludAkJCXR5cGUsCiAJCQkJdmFsOwogCWNoYXIJICAg Kmxvd3VuaXRzOwpAQCAtMjcwOSw3ICsyOTE4LDYgQEAgdGltZXR6X3BhcnQoUEdfRlVOQ1RJ T05fQVJHUykKIAogCWlmICh0eXBlID09IFVOSVRTKQogCXsKLQkJZG91YmxlCQlkdW1teTsK IAkJaW50CQkJdHo7CiAJCWZzZWNfdAkJZnNlYzsKIAkJc3RydWN0IHBnX3RtIHR0LApAQCAt MjcyMCwzOCArMjkyOCw0OSBAQCB0aW1ldHpfcGFydChQR19GVU5DVElPTl9BUkdTKQogCQlz d2l0Y2ggKHZhbCkKIAkJewogCQkJY2FzZSBEVEtfVFo6Ci0JCQkJcmVzdWx0ID0gLXR6Owor CQkJCWludHJlc3VsdCA9IC10ejsKIAkJCQlicmVhazsKIAogCQkJY2FzZSBEVEtfVFpfTUlO VVRFOgotCQkJCXJlc3VsdCA9IC10ejsKLQkJCQlyZXN1bHQgLz0gU0VDU19QRVJfTUlOVVRF OwotCQkJCUZNT0RVTE8ocmVzdWx0LCBkdW1teSwgKGRvdWJsZSkgTUlOU19QRVJfSE9VUik7 CisJCQkJaW50cmVzdWx0ID0gKC10eiAvIFNFQ1NfUEVSX01JTlVURSkgJSBNSU5TX1BFUl9I T1VSOwogCQkJCWJyZWFrOwogCiAJCQljYXNlIERUS19UWl9IT1VSOgotCQkJCWR1bW15ID0g LXR6OwotCQkJCUZNT0RVTE8oZHVtbXksIHJlc3VsdCwgKGRvdWJsZSkgU0VDU19QRVJfSE9V Uik7CisJCQkJaW50cmVzdWx0ID0gLXR6IC8gU0VDU19QRVJfSE9VUjsKIAkJCQlicmVhazsK IAogCQkJY2FzZSBEVEtfTUlDUk9TRUM6Ci0JCQkJcmVzdWx0ID0gdG0tPnRtX3NlYyAqIDEw MDAwMDAuMCArIGZzZWM7CisJCQkJaW50cmVzdWx0ID0gdG0tPnRtX3NlYyAqIDEwMDAwMDAg KyBmc2VjOwogCQkJCWJyZWFrOwogCiAJCQljYXNlIERUS19NSUxMSVNFQzoKLQkJCQlyZXN1 bHQgPSB0bS0+dG1fc2VjICogMTAwMC4wICsgZnNlYyAvIDEwMDAuMDsKKwkJCQlpZiAocmV0 bnVtZXJpYykKKwkJCQkJLyotLS0KKwkJCQkJICogdG0tPnRtX3NlYyAqIDEwMDAgKyBmc2Vj IC8gMTAwMAorCQkJCQkgKiA9ICh0bS0+dG1fc2VjICogMScwMDAnMDAwICsgZnNlYykgLyAx MDAwCisJCQkJCSAqLworCQkJCQlQR19SRVRVUk5fTlVNRVJJQyhpbnQ2NF9kaXZfZmFzdF90 b19udW1lcmljKHRtLT50bV9zZWMgKiAxMDAwMDAwTEwgKyBmc2VjLCAzKSk7CisJCQkJZWxz ZQorCQkJCQlQR19SRVRVUk5fRkxPQVQ4KHRtLT50bV9zZWMgKiAxMDAwLjAgKyBmc2VjIC8g MTAwMC4wKTsKIAkJCQlicmVhazsKIAogCQkJY2FzZSBEVEtfU0VDT05EOgotCQkJCXJlc3Vs dCA9IHRtLT50bV9zZWMgKyBmc2VjIC8gMTAwMDAwMC4wOworCQkJCWlmIChyZXRudW1lcmlj KQorCQkJCQkvKi0tLQorCQkJCQkgKiB0bS0+dG1fc2VjICsgZnNlYyAvIDEnMDAwJzAwMAor CQkJCQkgKiA9ICh0bS0+dG1fc2VjICogMScwMDAnMDAwICsgZnNlYykgLyAxJzAwMCcwMDAK KwkJCQkJICovCisJCQkJCVBHX1JFVFVSTl9OVU1FUklDKGludDY0X2Rpdl9mYXN0X3RvX251 bWVyaWModG0tPnRtX3NlYyAqIDEwMDAwMDBMTCArIGZzZWMsIDYpKTsKKwkJCQllbHNlCisJ CQkJCVBHX1JFVFVSTl9GTE9BVDgodG0tPnRtX3NlYyArIGZzZWMgLyAxMDAwMDAwLjApOwog CQkJCWJyZWFrOwogCiAJCQljYXNlIERUS19NSU5VVEU6Ci0JCQkJcmVzdWx0ID0gdG0tPnRt X21pbjsKKwkJCQlpbnRyZXN1bHQgPSB0bS0+dG1fbWluOwogCQkJCWJyZWFrOwogCiAJCQlj YXNlIERUS19IT1VSOgotCQkJCXJlc3VsdCA9IHRtLT50bV9ob3VyOworCQkJCWludHJlc3Vs dCA9IHRtLT50bV9ob3VyOwogCQkJCWJyZWFrOwogCiAJCQljYXNlIERUS19EQVk6CkBAIC0y NzY2LDEyICsyOTg1LDE5IEBAIHRpbWV0el9wYXJ0KFBHX0ZVTkNUSU9OX0FSR1MpCiAJCQkJ CQkoZXJyY29kZShFUlJDT0RFX0lOVkFMSURfUEFSQU1FVEVSX1ZBTFVFKSwKIAkJCQkJCSBl cnJtc2coIlwidGltZSB3aXRoIHRpbWUgem9uZVwiIHVuaXRzIFwiJXNcIiBub3QgcmVjb2du aXplZCIsCiAJCQkJCQkJCWxvd3VuaXRzKSkpOwotCQkJCXJlc3VsdCA9IDA7CisJCQkJaW50 cmVzdWx0ID0gMDsKIAkJfQogCX0KIAllbHNlIGlmICh0eXBlID09IFJFU0VSViAmJiB2YWwg PT0gRFRLX0VQT0NIKQogCXsKLQkJcmVzdWx0ID0gdGltZS0+dGltZSAvIDEwMDAwMDAuMCAr IHRpbWUtPnpvbmU7CisJCWlmIChyZXRudW1lcmljKQorCQkJLyotLS0KKwkJCSAqIHRpbWUt PnRpbWUgLyAxJzAwMCcwMDAgKyB0aW1lLT56b25lCisJCQkgKiA9ICh0aW1lLT50aW1lICsg dGltZS0+em9uZSAqIDEnMDAwJzAwMCkgLyAxJzAwMCcwMDAKKwkJCSAqLworCQkJUEdfUkVU VVJOX05VTUVSSUMoaW50NjRfZGl2X2Zhc3RfdG9fbnVtZXJpYyh0aW1lLT50aW1lICsgdGlt ZS0+em9uZSAqIDEwMDAwMDBMTCwgNikpOworCQllbHNlCisJCQlQR19SRVRVUk5fRkxPQVQ4 KHRpbWUtPnRpbWUgLyAxMDAwMDAwLjAgKyB0aW1lLT56b25lKTsKIAl9CiAJZWxzZQogCXsK QEAgLTI3NzksMTAgKzMwMDUsMjYgQEAgdGltZXR6X3BhcnQoUEdfRlVOQ1RJT05fQVJHUykK IAkJCQkoZXJyY29kZShFUlJDT0RFX0lOVkFMSURfUEFSQU1FVEVSX1ZBTFVFKSwKIAkJCQkg ZXJybXNnKCJcInRpbWUgd2l0aCB0aW1lIHpvbmVcIiB1bml0cyBcIiVzXCIgbm90IHJlY29n bml6ZWQiLAogCQkJCQkJbG93dW5pdHMpKSk7Ci0JCXJlc3VsdCA9IDA7CisJCWludHJlc3Vs dCA9IDA7CiAJfQogCi0JUEdfUkVUVVJOX0ZMT0FUOChyZXN1bHQpOworCWlmIChyZXRudW1l cmljKQorCQlQR19SRVRVUk5fTlVNRVJJQyhpbnQ2NF90b19udW1lcmljKGludHJlc3VsdCkp OworCWVsc2UKKwkJUEdfUkVUVVJOX0ZMT0FUOChpbnRyZXN1bHQpOworfQorCisKK0RhdHVt Cit0aW1ldHpfcGFydChQR19GVU5DVElPTl9BUkdTKQoreworCXJldHVybiB0aW1ldHpfcGFy dF9jb21tb24oZmNpbmZvLCBmYWxzZSk7Cit9CisKK0RhdHVtCitleHRyYWN0X3RpbWV0eihQ R19GVU5DVElPTl9BUkdTKQoreworCXJldHVybiB0aW1ldHpfcGFydF9jb21tb24oZmNpbmZv LCB0cnVlKTsKIH0KIAogLyogdGltZXR6X3pvbmUoKQpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tl bmQvdXRpbHMvYWR0L251bWVyaWMuYyBiL3NyYy9iYWNrZW5kL3V0aWxzL2FkdC9udW1lcmlj LmMKaW5kZXggNjgyMjAwZjYzNi4uOTUyNWFkZTFmNyAxMDA2NDQKLS0tIGEvc3JjL2JhY2tl bmQvdXRpbHMvYWR0L251bWVyaWMuYworKysgYi9zcmMvYmFja2VuZC91dGlscy9hZHQvbnVt ZXJpYy5jCkBAIC00MDkyLDYgKzQwOTIsNjcgQEAgaW50NjRfdG9fbnVtZXJpYyhpbnQ2NCB2 YWwpCiAJcmV0dXJuIHJlczsKIH0KIAorLyoKKyAqIENvbnZlcnQgdmFsMS8oMTAqKnZhbDIp IHRvIG51bWVyaWMuICBUaGlzIGlzIG11Y2ggZmFzdGVyIHRoYW4gbm9ybWFsCisgKiBudW1l cmljIGRpdmlzaW9uLgorICovCitOdW1lcmljCitpbnQ2NF9kaXZfZmFzdF90b19udW1lcmlj KGludDY0IHZhbDEsIGludCBsb2cxMHZhbDIpCit7CisJTnVtZXJpYwkJcmVzOworCU51bWVy aWNWYXIJcmVzdWx0OworCWludDY0CQlzYXZlZF92YWwxID0gdmFsMTsKKwlpbnQJCQl3Owor CWludAkJCW07CisKKwkvKiBob3cgbXVjaCB0byBkZWNyZWFzZSB0aGUgd2VpZ2h0IGJ5ICov CisJdyA9IGxvZzEwdmFsMiAvIERFQ19ESUdJVFM7CisJLyogaG93IG11Y2ggaXMgbGVmdCAq LworCW0gPSBsb2cxMHZhbDIgJSBERUNfRElHSVRTOworCisJLyoKKwkgKiBJZiB0aGVyZSBp cyBhbnl0aGluZyBsZWZ0LCBtdWx0aXBseSB0aGUgZGl2aWRlbmQgYnkgd2hhdCdzIGxlZnQs IHRoZW4KKwkgKiBzaGlmdCB0aGUgd2VpZ2h0IGJ5IG9uZSBtb3JlLgorCSAqLworCWlmICht ID4gMCkKKwl7CisJCXN0YXRpYyBpbnQJcG93MTBbXSA9IHsxLCAxMCwgMTAwLCAxMDAwfTsK KworCQlTdGF0aWNBc3NlcnRTdG10KGxlbmd0aG9mKHBvdzEwKSA9PSBERUNfRElHSVRTLCAi bWlzbWF0Y2ggd2l0aCBERUNfRElHSVRTIik7CisJCWlmICh1bmxpa2VseShwZ19tdWxfczY0 X292ZXJmbG93KHZhbDEsIHBvdzEwW0RFQ19ESUdJVFMgLSBtXSwgJnZhbDEpKSkKKwkJewor CQkJLyoKKwkJCSAqIElmIGl0IGRvZXNuJ3QgZml0LCBkbyB0aGUgd2hvbGUgY29tcHV0YXRp b24gaW4gbnVtZXJpYyB0aGUgc2xvdworCQkJICogd2F5LiAgTm90ZSB0aGF0IHZhMWwgbWF5 IGhhdmUgYmVlbiBvdmVyd3JpdHRlbiwgc28gdXNlCisJCQkgKiBzYXZlZF92YWwxIGluc3Rl YWQuCisJCQkgKi8KKwkJCWludAkJCXZhbDIgPSAxOworCisJCQlmb3IgKGludCBpID0gMDsg aSA8IGxvZzEwdmFsMjsgaSsrKQorCQkJCXZhbDIgKj0gMTA7CisJCQlyZXMgPSBudW1lcmlj X2Rpdl9vcHRfZXJyb3IoaW50NjRfdG9fbnVtZXJpYyhzYXZlZF92YWwxKSwgaW50NjRfdG9f bnVtZXJpYyh2YWwyKSwgTlVMTCk7CisJCQlyZXMgPSBEYXR1bUdldE51bWVyaWMoRGlyZWN0 RnVuY3Rpb25DYWxsMihudW1lcmljX3JvdW5kLAorCQkJCQkJCQkJCQkJCSAgTnVtZXJpY0dl dERhdHVtKHJlcyksCisJCQkJCQkJCQkJCQkJICBJbnQzMkdldERhdHVtKGxvZzEwdmFsMikp KTsKKwkJCXJldHVybiByZXM7CisJCX0KKwkJdysrOworCX0KKworCWluaXRfdmFyKCZyZXN1 bHQpOworCisJaW50NjRfdG9fbnVtZXJpY3Zhcih2YWwxLCAmcmVzdWx0KTsKKworCXJlc3Vs dC53ZWlnaHQgLT0gdzsKKwlyZXN1bHQuZHNjYWxlICs9IHcgKiBERUNfRElHSVRTIC0gKERF Q19ESUdJVFMgLSBtKTsKKworCXJlcyA9IG1ha2VfcmVzdWx0KCZyZXN1bHQpOworCisJZnJl ZV92YXIoJnJlc3VsdCk7CisKKwlyZXR1cm4gcmVzOworfQorCiBEYXR1bQogaW50NF9udW1l cmljKFBHX0ZVTkNUSU9OX0FSR1MpCiB7CmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC91dGls cy9hZHQvcnVsZXV0aWxzLmMgYi9zcmMvYmFja2VuZC91dGlscy9hZHQvcnVsZXV0aWxzLmMK aW5kZXggMjU0ZThmMzA1MC4uMGI1MzE0ZTQ5YiAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQv dXRpbHMvYWR0L3J1bGV1dGlscy5jCisrKyBiL3NyYy9iYWNrZW5kL3V0aWxzL2FkdC9ydWxl dXRpbHMuYwpAQCAtOTc4Miw2ICs5NzgyLDI3IEBAIGdldF9mdW5jX3NxbF9zeW50YXgoRnVu Y0V4cHIgKmV4cHIsIGRlcGFyc2VfY29udGV4dCAqY29udGV4dCkKIAkJCWFwcGVuZFN0cmlu Z0luZm9TdHJpbmcoYnVmLCAiKSkiKTsKIAkJCXJldHVybiB0cnVlOwogCisJCWNhc2UgRl9F WFRSQUNUX1RFWFRfREFURToKKwkJY2FzZSBGX0VYVFJBQ1RfVEVYVF9USU1FOgorCQljYXNl IEZfRVhUUkFDVF9URVhUX1RJTUVUWjoKKwkJY2FzZSBGX0VYVFJBQ1RfVEVYVF9USU1FU1RB TVA6CisJCWNhc2UgRl9FWFRSQUNUX1RFWFRfVElNRVNUQU1QVFo6CisJCWNhc2UgRl9FWFRS QUNUX1RFWFRfSU5URVJWQUw6CisJCQkvKiBFWFRSQUNUICh4IEZST00geSkgKi8KKwkJCWFw cGVuZFN0cmluZ0luZm9TdHJpbmcoYnVmLCAiRVhUUkFDVCgiKTsKKwkJCXsKKwkJCQlDb25z dAkgICAqY29uID0gKENvbnN0ICopIGxpbml0aWFsKGV4cHItPmFyZ3MpOworCisJCQkJQXNz ZXJ0KElzQShjb24sIENvbnN0KSAmJgorCQkJCQkgICBjb24tPmNvbnN0dHlwZSA9PSBURVhU T0lEICYmCisJCQkJCSAgICFjb24tPmNvbnN0aXNudWxsKTsKKwkJCQlhcHBlbmRTdHJpbmdJ bmZvU3RyaW5nKGJ1ZiwgVGV4dERhdHVtR2V0Q1N0cmluZyhjb24tPmNvbnN0dmFsdWUpKTsK KwkJCX0KKwkJCWFwcGVuZFN0cmluZ0luZm9TdHJpbmcoYnVmLCAiIEZST00gIik7CisJCQln ZXRfcnVsZV9leHByKChOb2RlICopIGxzZWNvbmQoZXhwci0+YXJncyksIGNvbnRleHQsIGZh bHNlKTsKKwkJCWFwcGVuZFN0cmluZ0luZm9DaGFyKGJ1ZiwgJyknKTsKKwkJCXJldHVybiB0 cnVlOworCiAJCWNhc2UgRl9JU19OT1JNQUxJWkVEOgogCQkJLyogSVMgeHh4IE5PUk1BTEla RUQgKi8KIAkJCWFwcGVuZFN0cmluZ0luZm9TdHJpbmcoYnVmLCAiKCgiKTsKZGlmZiAtLWdp dCBhL3NyYy9iYWNrZW5kL3V0aWxzL2FkdC90aW1lc3RhbXAuYyBiL3NyYy9iYWNrZW5kL3V0 aWxzL2FkdC90aW1lc3RhbXAuYwppbmRleCAxOTQ4NjFmMTllLi5iMmJkYmNhYjU3IDEwMDY0 NAotLS0gYS9zcmMvYmFja2VuZC91dGlscy9hZHQvdGltZXN0YW1wLmMKKysrIGIvc3JjL2Jh Y2tlbmQvdXRpbHMvYWR0L3RpbWVzdGFtcC5jCkBAIC0yMiw2ICsyMiw3IEBACiAKICNpbmNs dWRlICJhY2Nlc3MveGFjdC5oIgogI2luY2x1ZGUgImNhdGFsb2cvcGdfdHlwZS5oIgorI2lu Y2x1ZGUgImNvbW1vbi9pbnQuaCIKICNpbmNsdWRlICJjb21tb24vaW50MTI4LmgiCiAjaW5j bHVkZSAiZnVuY2FwaS5oIgogI2luY2x1ZGUgImxpYnBxL3BxZm9ybWF0LmgiCkBAIC0zNSw2 ICszNiw3IEBACiAjaW5jbHVkZSAidXRpbHMvZGF0ZS5oIgogI2luY2x1ZGUgInV0aWxzL2Rh dGV0aW1lLmgiCiAjaW5jbHVkZSAidXRpbHMvZmxvYXQuaCIKKyNpbmNsdWRlICJ1dGlscy9u dW1lcmljLmgiCiAKIC8qCiAgKiBnY2MncyAtZmZhc3QtbWF0aCBzd2l0Y2ggYnJlYWtzIHJv dXRpbmVzIHRoYXQgZXhwZWN0IGV4YWN0IHJlc3VsdHMgZnJvbQpAQCAtMzk5MSw4ICszOTkz LDggQEAgdGltZXN0YW1wdHpfYmluKFBHX0ZVTkNUSU9OX0FSR1MpCiB7CiAJSW50ZXJ2YWwg ICAqc3RyaWRlID0gUEdfR0VUQVJHX0lOVEVSVkFMX1AoMCk7CiAJVGltZXN0YW1wVHogdGlt ZXN0YW1wID0gUEdfR0VUQVJHX1RJTUVTVEFNUFRaKDEpOwotCVRpbWVzdGFtcFR6CW9yaWdp biA9IFBHX0dFVEFSR19USU1FU1RBTVBUWigyKTsKLQlUaW1lc3RhbXBUeglyZXN1bHQsCisJ VGltZXN0YW1wVHogb3JpZ2luID0gUEdfR0VUQVJHX1RJTUVTVEFNUFRaKDIpOworCVRpbWVz dGFtcFR6IHJlc3VsdCwKIAkJCQlzdHJpZGVfdXNlY3MsCiAJCQkJdG1fZGlmZiwKIAkJCQl0 bV9kZWx0YTsKQEAgLTQ1OTcsMTUgKzQ1OTksMTUgQEAgTm9uRmluaXRlVGltZXN0YW1wVHpQ YXJ0KGludCB0eXBlLCBpbnQgdW5pdCwgY2hhciAqbG93dW5pdHMsCiAJfQogfQogCi0vKiB0 aW1lc3RhbXBfcGFydCgpCisvKiB0aW1lc3RhbXBfcGFydCgpIGFuZCBleHRyYWN0X3RpbWVz dGFtcCgpCiAgKiBFeHRyYWN0IHNwZWNpZmllZCBmaWVsZCBmcm9tIHRpbWVzdGFtcC4KICAq LwotRGF0dW0KLXRpbWVzdGFtcF9wYXJ0KFBHX0ZVTkNUSU9OX0FSR1MpCitzdGF0aWMgRGF0 dW0KK3RpbWVzdGFtcF9wYXJ0X2NvbW1vbihQR19GVU5DVElPTl9BUkdTLCBib29sIHJldG51 bWVyaWMpCiB7CiAJdGV4dAkgICAqdW5pdHMgPSBQR19HRVRBUkdfVEVYVF9QUCgwKTsKIAlU aW1lc3RhbXAJdGltZXN0YW1wID0gUEdfR0VUQVJHX1RJTUVTVEFNUCgxKTsKLQlmbG9hdDgJ CXJlc3VsdDsKKwlpbnQ2NAkJaW50cmVzdWx0OwogCVRpbWVzdGFtcAllcG9jaDsKIAlpbnQJ CQl0eXBlLAogCQkJCXZhbDsKQEAgLTQ2MjQsMTEgKzQ2MjYsMjggQEAgdGltZXN0YW1wX3Bh cnQoUEdfRlVOQ1RJT05fQVJHUykKIAogCWlmIChUSU1FU1RBTVBfTk9UX0ZJTklURSh0aW1l c3RhbXApKQogCXsKLQkJcmVzdWx0ID0gTm9uRmluaXRlVGltZXN0YW1wVHpQYXJ0KHR5cGUs IHZhbCwgbG93dW5pdHMsCi0JCQkJCQkJCQkJICBUSU1FU1RBTVBfSVNfTk9CRUdJTih0aW1l c3RhbXApLAotCQkJCQkJCQkJCSAgZmFsc2UpOwotCQlpZiAocmVzdWx0KQotCQkJUEdfUkVU VVJOX0ZMT0FUOChyZXN1bHQpOworCQlkb3VibGUJCXIgPSBOb25GaW5pdGVUaW1lc3RhbXBU elBhcnQodHlwZSwgdmFsLCBsb3d1bml0cywKKwkJCQkJCQkJCQkJCSBUSU1FU1RBTVBfSVNf Tk9CRUdJTih0aW1lc3RhbXApLAorCQkJCQkJCQkJCQkJIGZhbHNlKTsKKworCQlpZiAocikK KwkJeworCQkJaWYgKHJldG51bWVyaWMpCisJCQl7CisJCQkJaWYgKHIgPCAwKQorCQkJCQly ZXR1cm4gRGlyZWN0RnVuY3Rpb25DYWxsMyhudW1lcmljX2luLAorCQkJCQkJCQkJCQkgICBD U3RyaW5nR2V0RGF0dW0oIi1JbmZpbml0eSIpLAorCQkJCQkJCQkJCQkgICBPYmplY3RJZEdl dERhdHVtKEludmFsaWRPaWQpLAorCQkJCQkJCQkJCQkgICBJbnQzMkdldERhdHVtKC0xKSk7 CisJCQkJZWxzZSBpZiAociA+IDApCisJCQkJCXJldHVybiBEaXJlY3RGdW5jdGlvbkNhbGwz KG51bWVyaWNfaW4sCisJCQkJCQkJCQkJCSAgIENTdHJpbmdHZXREYXR1bSgiSW5maW5pdHki KSwKKwkJCQkJCQkJCQkJICAgT2JqZWN0SWRHZXREYXR1bShJbnZhbGlkT2lkKSwKKwkJCQkJ CQkJCQkJICAgSW50MzJHZXREYXR1bSgtMSkpOworCQkJfQorCQkJZWxzZQorCQkJCVBHX1JF VFVSTl9GTE9BVDgocik7CisJCX0KIAkJZWxzZQogCQkJUEdfUkVUVVJOX05VTEwoKTsKIAl9 CkBAIC00NjQzLDQ3ICs0NjYyLDYxIEBAIHRpbWVzdGFtcF9wYXJ0KFBHX0ZVTkNUSU9OX0FS R1MpCiAJCXN3aXRjaCAodmFsKQogCQl7CiAJCQljYXNlIERUS19NSUNST1NFQzoKLQkJCQly ZXN1bHQgPSB0bS0+dG1fc2VjICogMTAwMDAwMC4wICsgZnNlYzsKKwkJCQlpbnRyZXN1bHQg PSB0bS0+dG1fc2VjICogMTAwMDAwMC4wICsgZnNlYzsKIAkJCQlicmVhazsKIAogCQkJY2Fz ZSBEVEtfTUlMTElTRUM6Ci0JCQkJcmVzdWx0ID0gdG0tPnRtX3NlYyAqIDEwMDAuMCArIGZz ZWMgLyAxMDAwLjA7CisJCQkJaWYgKHJldG51bWVyaWMpCisJCQkJCS8qLS0tCisJCQkJCSAq IHRtLT50bV9zZWMgKiAxMDAwICsgZnNlYyAvIDEwMDAKKwkJCQkJICogPSAodG0tPnRtX3Nl YyAqIDEnMDAwJzAwMCArIGZzZWMpIC8gMTAwMAorCQkJCQkgKi8KKwkJCQkJUEdfUkVUVVJO X05VTUVSSUMoaW50NjRfZGl2X2Zhc3RfdG9fbnVtZXJpYyh0bS0+dG1fc2VjICogMTAwMDAw MExMICsgZnNlYywgMykpOworCQkJCWVsc2UKKwkJCQkJUEdfUkVUVVJOX0ZMT0FUOCh0bS0+ dG1fc2VjICogMTAwMC4wICsgZnNlYyAvIDEwMDAuMCk7CiAJCQkJYnJlYWs7CiAKIAkJCWNh c2UgRFRLX1NFQ09ORDoKLQkJCQlyZXN1bHQgPSB0bS0+dG1fc2VjICsgZnNlYyAvIDEwMDAw MDAuMDsKKwkJCQlpZiAocmV0bnVtZXJpYykKKwkJCQkJLyotLS0KKwkJCQkJICogdG0tPnRt X3NlYyArIGZzZWMgLyAxJzAwMCcwMDAKKwkJCQkJICogPSAodG0tPnRtX3NlYyAqIDEnMDAw JzAwMCArIGZzZWMpIC8gMScwMDAnMDAwCisJCQkJCSAqLworCQkJCQlQR19SRVRVUk5fTlVN RVJJQyhpbnQ2NF9kaXZfZmFzdF90b19udW1lcmljKHRtLT50bV9zZWMgKiAxMDAwMDAwTEwg KyBmc2VjLCA2KSk7CisJCQkJZWxzZQorCQkJCQlQR19SRVRVUk5fRkxPQVQ4KHRtLT50bV9z ZWMgKyBmc2VjIC8gMTAwMDAwMC4wKTsKIAkJCQlicmVhazsKIAogCQkJY2FzZSBEVEtfTUlO VVRFOgotCQkJCXJlc3VsdCA9IHRtLT50bV9taW47CisJCQkJaW50cmVzdWx0ID0gdG0tPnRt X21pbjsKIAkJCQlicmVhazsKIAogCQkJY2FzZSBEVEtfSE9VUjoKLQkJCQlyZXN1bHQgPSB0 bS0+dG1faG91cjsKKwkJCQlpbnRyZXN1bHQgPSB0bS0+dG1faG91cjsKIAkJCQlicmVhazsK IAogCQkJY2FzZSBEVEtfREFZOgotCQkJCXJlc3VsdCA9IHRtLT50bV9tZGF5OworCQkJCWlu dHJlc3VsdCA9IHRtLT50bV9tZGF5OwogCQkJCWJyZWFrOwogCiAJCQljYXNlIERUS19NT05U SDoKLQkJCQlyZXN1bHQgPSB0bS0+dG1fbW9uOworCQkJCWludHJlc3VsdCA9IHRtLT50bV9t b247CiAJCQkJYnJlYWs7CiAKIAkJCWNhc2UgRFRLX1FVQVJURVI6Ci0JCQkJcmVzdWx0ID0g KHRtLT50bV9tb24gLSAxKSAvIDMgKyAxOworCQkJCWludHJlc3VsdCA9ICh0bS0+dG1fbW9u IC0gMSkgLyAzICsgMTsKIAkJCQlicmVhazsKIAogCQkJY2FzZSBEVEtfV0VFSzoKLQkJCQly ZXN1bHQgPSAoZmxvYXQ4KSBkYXRlMmlzb3dlZWsodG0tPnRtX3llYXIsIHRtLT50bV9tb24s IHRtLT50bV9tZGF5KTsKKwkJCQlpbnRyZXN1bHQgPSBkYXRlMmlzb3dlZWsodG0tPnRtX3ll YXIsIHRtLT50bV9tb24sIHRtLT50bV9tZGF5KTsKIAkJCQlicmVhazsKIAogCQkJY2FzZSBE VEtfWUVBUjoKIAkJCQlpZiAodG0tPnRtX3llYXIgPiAwKQotCQkJCQlyZXN1bHQgPSB0bS0+ dG1feWVhcjsKKwkJCQkJaW50cmVzdWx0ID0gdG0tPnRtX3llYXI7CiAJCQkJZWxzZQogCQkJ CQkvKiB0aGVyZSBpcyBubyB5ZWFyIDAsIGp1c3QgMSBCQyBhbmQgMSBBRCAqLwotCQkJCQly ZXN1bHQgPSB0bS0+dG1feWVhciAtIDE7CisJCQkJCWludHJlc3VsdCA9IHRtLT50bV95ZWFy IC0gMTsKIAkJCQlicmVhazsKIAogCQkJY2FzZSBEVEtfREVDQURFOgpAQCAtNDY5NCw5ICs0 NzI3LDkgQEAgdGltZXN0YW1wX3BhcnQoUEdfRlVOQ1RJT05fQVJHUykKIAkJCQkgKiBpcyAx MSBCQyB0aHJ1IDIgQkMuLi4KIAkJCQkgKi8KIAkJCQlpZiAodG0tPnRtX3llYXIgPj0gMCkK LQkJCQkJcmVzdWx0ID0gdG0tPnRtX3llYXIgLyAxMDsKKwkJCQkJaW50cmVzdWx0ID0gdG0t PnRtX3llYXIgLyAxMDsKIAkJCQllbHNlCi0JCQkJCXJlc3VsdCA9IC0oKDggLSAodG0tPnRt X3llYXIgLSAxKSkgLyAxMCk7CisJCQkJCWludHJlc3VsdCA9IC0oKDggLSAodG0tPnRtX3ll YXIgLSAxKSkgLyAxMCk7CiAJCQkJYnJlYWs7CiAKIAkJCWNhc2UgRFRLX0NFTlRVUlk6CkBA IC00NzA4LDQzICs0NzQxLDUwIEBAIHRpbWVzdGFtcF9wYXJ0KFBHX0ZVTkNUSU9OX0FSR1Mp CiAJCQkJICogLS0tLQogCQkJCSAqLwogCQkJCWlmICh0bS0+dG1feWVhciA+IDApCi0JCQkJ CXJlc3VsdCA9ICh0bS0+dG1feWVhciArIDk5KSAvIDEwMDsKKwkJCQkJaW50cmVzdWx0ID0g KHRtLT50bV95ZWFyICsgOTkpIC8gMTAwOwogCQkJCWVsc2UKIAkJCQkJLyogY2F1dGlvbjog QyBkaXZpc2lvbiBtYXkgaGF2ZSBuZWdhdGl2ZSByZW1haW5kZXIgKi8KLQkJCQkJcmVzdWx0 ID0gLSgoOTkgLSAodG0tPnRtX3llYXIgLSAxKSkgLyAxMDApOworCQkJCQlpbnRyZXN1bHQg PSAtKCg5OSAtICh0bS0+dG1feWVhciAtIDEpKSAvIDEwMCk7CiAJCQkJYnJlYWs7CiAKIAkJ CWNhc2UgRFRLX01JTExFTk5JVU06CiAJCQkJLyogc2VlIGNvbW1lbnRzIGFib3ZlLiAqLwog CQkJCWlmICh0bS0+dG1feWVhciA+IDApCi0JCQkJCXJlc3VsdCA9ICh0bS0+dG1feWVhciAr IDk5OSkgLyAxMDAwOworCQkJCQlpbnRyZXN1bHQgPSAodG0tPnRtX3llYXIgKyA5OTkpIC8g MTAwMDsKIAkJCQllbHNlCi0JCQkJCXJlc3VsdCA9IC0oKDk5OSAtICh0bS0+dG1feWVhciAt IDEpKSAvIDEwMDApOworCQkJCQlpbnRyZXN1bHQgPSAtKCg5OTkgLSAodG0tPnRtX3llYXIg LSAxKSkgLyAxMDAwKTsKIAkJCQlicmVhazsKIAogCQkJY2FzZSBEVEtfSlVMSUFOOgotCQkJ CXJlc3VsdCA9IGRhdGUyaih0bS0+dG1feWVhciwgdG0tPnRtX21vbiwgdG0tPnRtX21kYXkp OwotCQkJCXJlc3VsdCArPSAoKCgodG0tPnRtX2hvdXIgKiBNSU5TX1BFUl9IT1VSKSArIHRt LT50bV9taW4pICogU0VDU19QRVJfTUlOVVRFKSArCi0JCQkJCQkgICB0bS0+dG1fc2VjICsg KGZzZWMgLyAxMDAwMDAwLjApKSAvIChkb3VibGUpIFNFQ1NfUEVSX0RBWTsKKwkJCQlpZiAo cmV0bnVtZXJpYykKKwkJCQkJUEdfUkVUVVJOX05VTUVSSUMobnVtZXJpY19hZGRfb3B0X2Vy cm9yKGludDY0X3RvX251bWVyaWMoZGF0ZTJqKHRtLT50bV95ZWFyLCB0bS0+dG1fbW9uLCB0 bS0+dG1fbWRheSkpLAorCQkJCQkJCQkJCQkJCQkJbnVtZXJpY19kaXZfb3B0X2Vycm9yKGlu dDY0X3RvX251bWVyaWMoKCgoKHRtLT50bV9ob3VyICogTUlOU19QRVJfSE9VUikgKyB0bS0+ dG1fbWluKSAqIFNFQ1NfUEVSX01JTlVURSkgKyB0bS0+dG1fc2VjKSAqIDEwMDAwMDBMTCAr IGZzZWMpLAorCQkJCQkJCQkJCQkJCQkJCQkJCQkgIGludDY0X3RvX251bWVyaWMoU0VDU19Q RVJfREFZICogMTAwMDAwMExMKSwKKwkJCQkJCQkJCQkJCQkJCQkJCQkJICBOVUxMKSwKKwkJ CQkJCQkJCQkJCQkJCU5VTEwpKTsKKwkJCQllbHNlCisJCQkJCVBHX1JFVFVSTl9GTE9BVDgo ZGF0ZTJqKHRtLT50bV95ZWFyLCB0bS0+dG1fbW9uLCB0bS0+dG1fbWRheSkgKworCQkJCQkJ CQkJICgoKCh0bS0+dG1faG91ciAqIE1JTlNfUEVSX0hPVVIpICsgdG0tPnRtX21pbikgKiBT RUNTX1BFUl9NSU5VVEUpICsKKwkJCQkJCQkJCSAgdG0tPnRtX3NlYyArIChmc2VjIC8gMTAw MDAwMC4wKSkgLyAoZG91YmxlKSBTRUNTX1BFUl9EQVkpOwogCQkJCWJyZWFrOwogCiAJCQlj YXNlIERUS19JU09ZRUFSOgotCQkJCXJlc3VsdCA9IGRhdGUyaXNveWVhcih0bS0+dG1feWVh ciwgdG0tPnRtX21vbiwgdG0tPnRtX21kYXkpOworCQkJCWludHJlc3VsdCA9IGRhdGUyaXNv eWVhcih0bS0+dG1feWVhciwgdG0tPnRtX21vbiwgdG0tPnRtX21kYXkpOwogCQkJCS8qIEFk anVzdCBCQyB5ZWFycyAqLwotCQkJCWlmIChyZXN1bHQgPD0gMCkKLQkJCQkJcmVzdWx0IC09 IDE7CisJCQkJaWYgKGludHJlc3VsdCA8PSAwKQorCQkJCQlpbnRyZXN1bHQgLT0gMTsKIAkJ CQlicmVhazsKIAogCQkJY2FzZSBEVEtfRE9XOgogCQkJY2FzZSBEVEtfSVNPRE9XOgotCQkJ CXJlc3VsdCA9IGoyZGF5KGRhdGUyaih0bS0+dG1feWVhciwgdG0tPnRtX21vbiwgdG0tPnRt X21kYXkpKTsKLQkJCQlpZiAodmFsID09IERUS19JU09ET1cgJiYgcmVzdWx0ID09IDApCi0J CQkJCXJlc3VsdCA9IDc7CisJCQkJaW50cmVzdWx0ID0gajJkYXkoZGF0ZTJqKHRtLT50bV95 ZWFyLCB0bS0+dG1fbW9uLCB0bS0+dG1fbWRheSkpOworCQkJCWlmICh2YWwgPT0gRFRLX0lT T0RPVyAmJiBpbnRyZXN1bHQgPT0gMCkKKwkJCQkJaW50cmVzdWx0ID0gNzsKIAkJCQlicmVh azsKIAogCQkJY2FzZSBEVEtfRE9ZOgotCQkJCXJlc3VsdCA9IChkYXRlMmoodG0tPnRtX3ll YXIsIHRtLT50bV9tb24sIHRtLT50bV9tZGF5KQotCQkJCQkJICAtIGRhdGUyaih0bS0+dG1f eWVhciwgMSwgMSkgKyAxKTsKKwkJCQlpbnRyZXN1bHQgPSAoZGF0ZTJqKHRtLT50bV95ZWFy LCB0bS0+dG1fbW9uLCB0bS0+dG1fbWRheSkKKwkJCQkJCQkgLSBkYXRlMmoodG0tPnRtX3ll YXIsIDEsIDEpICsgMSk7CiAJCQkJYnJlYWs7CiAKIAkJCWNhc2UgRFRLX1RaOgpAQCAtNDc1 NSw3ICs0Nzk1LDcgQEAgdGltZXN0YW1wX3BhcnQoUEdfRlVOQ1RJT05fQVJHUykKIAkJCQkJ CShlcnJjb2RlKEVSUkNPREVfRkVBVFVSRV9OT1RfU1VQUE9SVEVEKSwKIAkJCQkJCSBlcnJt c2coInRpbWVzdGFtcCB1bml0cyBcIiVzXCIgbm90IHN1cHBvcnRlZCIsCiAJCQkJCQkJCWxv d3VuaXRzKSkpOwotCQkJCXJlc3VsdCA9IDA7CisJCQkJaW50cmVzdWx0ID0gMDsKIAkJfQog CX0KIAllbHNlIGlmICh0eXBlID09IFJFU0VSVikKQEAgLTQ3NjQsMTEgKzQ4MDQsMzcgQEAg dGltZXN0YW1wX3BhcnQoUEdfRlVOQ1RJT05fQVJHUykKIAkJewogCQkJY2FzZSBEVEtfRVBP Q0g6CiAJCQkJZXBvY2ggPSBTZXRFcG9jaFRpbWVzdGFtcCgpOwotCQkJCS8qIHRyeSB0byBh dm9pZCBwcmVjaXNpb24gbG9zcyBpbiBzdWJ0cmFjdGlvbiAqLwotCQkJCWlmICh0aW1lc3Rh bXAgPCAoUEdfSU5UNjRfTUFYICsgZXBvY2gpKQotCQkJCQlyZXN1bHQgPSAodGltZXN0YW1w IC0gZXBvY2gpIC8gMTAwMDAwMC4wOworCQkJCS8qICh0aW1lc3RhbXAgLSBlcG9jaCkgLyAx MDAwMDAwICovCisJCQkJaWYgKHJldG51bWVyaWMpCisJCQkJeworCQkJCQlOdW1lcmljCQly ZXN1bHQ7CisKKwkJCQkJaWYgKHRpbWVzdGFtcCA8IChQR19JTlQ2NF9NQVggKyBlcG9jaCkp CisJCQkJCQlyZXN1bHQgPSBpbnQ2NF9kaXZfZmFzdF90b19udW1lcmljKHRpbWVzdGFtcCAt IGVwb2NoLCA2KTsKKwkJCQkJZWxzZQorCQkJCQl7CisJCQkJCQlyZXN1bHQgPSBudW1lcmlj X2Rpdl9vcHRfZXJyb3IobnVtZXJpY19zdWJfb3B0X2Vycm9yKGludDY0X3RvX251bWVyaWMo dGltZXN0YW1wKSwKKwkJCQkJCQkJCQkJCQkJCQkJCQkgaW50NjRfdG9fbnVtZXJpYyhlcG9j aCksCisJCQkJCQkJCQkJCQkJCQkJCQkJIE5VTEwpLAorCQkJCQkJCQkJCQkJCSAgIGludDY0 X3RvX251bWVyaWMoMTAwMDAwMCksCisJCQkJCQkJCQkJCQkJICAgTlVMTCk7CisJCQkJCQly ZXN1bHQgPSBEYXR1bUdldE51bWVyaWMoRGlyZWN0RnVuY3Rpb25DYWxsMihudW1lcmljX3Jv dW5kLAorCQkJCQkJCQkJCQkJCQkJCQkgTnVtZXJpY0dldERhdHVtKHJlc3VsdCksCisJCQkJ CQkJCQkJCQkJCQkJCSBJbnQzMkdldERhdHVtKDYpKSk7CisJCQkJCX0KKwkJCQkJUEdfUkVU VVJOX05VTUVSSUMocmVzdWx0KTsKKwkJCQl9CiAJCQkJZWxzZQotCQkJCQlyZXN1bHQgPSAo KGZsb2F0OCkgdGltZXN0YW1wIC0gZXBvY2gpIC8gMTAwMDAwMC4wOworCQkJCXsKKwkJCQkJ ZmxvYXQ4CQlyZXN1bHQ7CisKKwkJCQkJLyogdHJ5IHRvIGF2b2lkIHByZWNpc2lvbiBsb3Nz IGluIHN1YnRyYWN0aW9uICovCisJCQkJCWlmICh0aW1lc3RhbXAgPCAoUEdfSU5UNjRfTUFY ICsgZXBvY2gpKQorCQkJCQkJcmVzdWx0ID0gKHRpbWVzdGFtcCAtIGVwb2NoKSAvIDEwMDAw MDAuMDsKKwkJCQkJZWxzZQorCQkJCQkJcmVzdWx0ID0gKChmbG9hdDgpIHRpbWVzdGFtcCAt IGVwb2NoKSAvIDEwMDAwMDAuMDsKKwkJCQkJUEdfUkVUVVJOX0ZMT0FUOChyZXN1bHQpOwor CQkJCX0KIAkJCQlicmVhazsKIAogCQkJZGVmYXVsdDoKQEAgLTQ3NzYsNyArNDg0Miw3IEBA IHRpbWVzdGFtcF9wYXJ0KFBHX0ZVTkNUSU9OX0FSR1MpCiAJCQkJCQkoZXJyY29kZShFUlJD T0RFX0ZFQVRVUkVfTk9UX1NVUFBPUlRFRCksCiAJCQkJCQkgZXJybXNnKCJ0aW1lc3RhbXAg dW5pdHMgXCIlc1wiIG5vdCBzdXBwb3J0ZWQiLAogCQkJCQkJCQlsb3d1bml0cykpKTsKLQkJ CQlyZXN1bHQgPSAwOworCQkJCWludHJlc3VsdCA9IDA7CiAJCX0KIAogCX0KQEAgLTQ3ODUs MjcgKzQ4NTEsNDEgQEAgdGltZXN0YW1wX3BhcnQoUEdfRlVOQ1RJT05fQVJHUykKIAkJZXJl cG9ydChFUlJPUiwKIAkJCQkoZXJyY29kZShFUlJDT0RFX0lOVkFMSURfUEFSQU1FVEVSX1ZB TFVFKSwKIAkJCQkgZXJybXNnKCJ0aW1lc3RhbXAgdW5pdHMgXCIlc1wiIG5vdCByZWNvZ25p emVkIiwgbG93dW5pdHMpKSk7Ci0JCXJlc3VsdCA9IDA7CisJCWludHJlc3VsdCA9IDA7CiAJ fQogCi0JUEdfUkVUVVJOX0ZMT0FUOChyZXN1bHQpOworCWlmIChyZXRudW1lcmljKQorCQlQ R19SRVRVUk5fTlVNRVJJQyhpbnQ2NF90b19udW1lcmljKGludHJlc3VsdCkpOworCWVsc2UK KwkJUEdfUkVUVVJOX0ZMT0FUOChpbnRyZXN1bHQpOworfQorCitEYXR1bQordGltZXN0YW1w X3BhcnQoUEdfRlVOQ1RJT05fQVJHUykKK3sKKwlyZXR1cm4gdGltZXN0YW1wX3BhcnRfY29t bW9uKGZjaW5mbywgZmFsc2UpOwogfQogCi0vKiB0aW1lc3RhbXB0el9wYXJ0KCkKK0RhdHVt CitleHRyYWN0X3RpbWVzdGFtcChQR19GVU5DVElPTl9BUkdTKQoreworCXJldHVybiB0aW1l c3RhbXBfcGFydF9jb21tb24oZmNpbmZvLCB0cnVlKTsKK30KKworLyogdGltZXN0YW1wdHpf cGFydCgpIGFuZCBleHRyYWN0X3RpbWVzdGFtcHR6KCkKICAqIEV4dHJhY3Qgc3BlY2lmaWVk IGZpZWxkIGZyb20gdGltZXN0YW1wIHdpdGggdGltZSB6b25lLgogICovCi1EYXR1bQotdGlt ZXN0YW1wdHpfcGFydChQR19GVU5DVElPTl9BUkdTKQorc3RhdGljIERhdHVtCit0aW1lc3Rh bXB0el9wYXJ0X2NvbW1vbihQR19GVU5DVElPTl9BUkdTLCBib29sIHJldG51bWVyaWMpCiB7 CiAJdGV4dAkgICAqdW5pdHMgPSBQR19HRVRBUkdfVEVYVF9QUCgwKTsKIAlUaW1lc3RhbXBU eiB0aW1lc3RhbXAgPSBQR19HRVRBUkdfVElNRVNUQU1QVFooMSk7Ci0JZmxvYXQ4CQlyZXN1 bHQ7CisJaW50NjQJCWludHJlc3VsdDsKIAlUaW1lc3RhbXAJZXBvY2g7CiAJaW50CQkJdHo7 CiAJaW50CQkJdHlwZSwKIAkJCQl2YWw7CiAJY2hhcgkgICAqbG93dW5pdHM7Ci0JZG91Ymxl CQlkdW1teTsKIAlmc2VjX3QJCWZzZWM7CiAJc3RydWN0IHBnX3RtIHR0LAogCQkJICAgKnRt ID0gJnR0OwpAQCAtNDgyMCwxMSArNDkwMCwyOCBAQCB0aW1lc3RhbXB0el9wYXJ0KFBHX0ZV TkNUSU9OX0FSR1MpCiAKIAlpZiAoVElNRVNUQU1QX05PVF9GSU5JVEUodGltZXN0YW1wKSkK IAl7Ci0JCXJlc3VsdCA9IE5vbkZpbml0ZVRpbWVzdGFtcFR6UGFydCh0eXBlLCB2YWwsIGxv d3VuaXRzLAotCQkJCQkJCQkJCSAgVElNRVNUQU1QX0lTX05PQkVHSU4odGltZXN0YW1wKSwK LQkJCQkJCQkJCQkgIHRydWUpOwotCQlpZiAocmVzdWx0KQotCQkJUEdfUkVUVVJOX0ZMT0FU OChyZXN1bHQpOworCQlkb3VibGUJCXIgPSBOb25GaW5pdGVUaW1lc3RhbXBUelBhcnQodHlw ZSwgdmFsLCBsb3d1bml0cywKKwkJCQkJCQkJCQkJCSBUSU1FU1RBTVBfSVNfTk9CRUdJTih0 aW1lc3RhbXApLAorCQkJCQkJCQkJCQkJIHRydWUpOworCisJCWlmIChyKQorCQl7CisJCQlp ZiAocmV0bnVtZXJpYykKKwkJCXsKKwkJCQlpZiAociA8IDApCisJCQkJCXJldHVybiBEaXJl Y3RGdW5jdGlvbkNhbGwzKG51bWVyaWNfaW4sCisJCQkJCQkJCQkJCSAgIENTdHJpbmdHZXRE YXR1bSgiLUluZmluaXR5IiksCisJCQkJCQkJCQkJCSAgIE9iamVjdElkR2V0RGF0dW0oSW52 YWxpZE9pZCksCisJCQkJCQkJCQkJCSAgIEludDMyR2V0RGF0dW0oLTEpKTsKKwkJCQllbHNl IGlmIChyID4gMCkKKwkJCQkJcmV0dXJuIERpcmVjdEZ1bmN0aW9uQ2FsbDMobnVtZXJpY19p biwKKwkJCQkJCQkJCQkJICAgQ1N0cmluZ0dldERhdHVtKCJJbmZpbml0eSIpLAorCQkJCQkJ CQkJCQkgICBPYmplY3RJZEdldERhdHVtKEludmFsaWRPaWQpLAorCQkJCQkJCQkJCQkgICBJ bnQzMkdldERhdHVtKC0xKSk7CisJCQl9CisJCQllbHNlCisJCQkJUEdfUkVUVVJOX0ZMT0FU OChyKTsKKwkJfQogCQllbHNlCiAJCQlQR19SRVRVUk5fTlVMTCgpOwogCX0KQEAgLTQ4Mzks MTExICs0OTM2LDEyOSBAQCB0aW1lc3RhbXB0el9wYXJ0KFBHX0ZVTkNUSU9OX0FSR1MpCiAJ CXN3aXRjaCAodmFsKQogCQl7CiAJCQljYXNlIERUS19UWjoKLQkJCQlyZXN1bHQgPSAtdHo7 CisJCQkJaW50cmVzdWx0ID0gLXR6OwogCQkJCWJyZWFrOwogCiAJCQljYXNlIERUS19UWl9N SU5VVEU6Ci0JCQkJcmVzdWx0ID0gLXR6OwotCQkJCXJlc3VsdCAvPSBTRUNTX1BFUl9NSU5V VEU7Ci0JCQkJRk1PRFVMTyhyZXN1bHQsIGR1bW15LCAoZG91YmxlKSBNSU5TX1BFUl9IT1VS KTsKKwkJCQlpbnRyZXN1bHQgPSAoLXR6IC8gU0VDU19QRVJfTUlOVVRFKSAlIE1JTlNfUEVS X0hPVVI7CiAJCQkJYnJlYWs7CiAKIAkJCWNhc2UgRFRLX1RaX0hPVVI6Ci0JCQkJZHVtbXkg PSAtdHo7Ci0JCQkJRk1PRFVMTyhkdW1teSwgcmVzdWx0LCAoZG91YmxlKSBTRUNTX1BFUl9I T1VSKTsKKwkJCQlpbnRyZXN1bHQgPSAtdHogLyBTRUNTX1BFUl9IT1VSOwogCQkJCWJyZWFr OwogCiAJCQljYXNlIERUS19NSUNST1NFQzoKLQkJCQlyZXN1bHQgPSB0bS0+dG1fc2VjICog MTAwMDAwMC4wICsgZnNlYzsKKwkJCQlpbnRyZXN1bHQgPSB0bS0+dG1fc2VjICogMTAwMDAw MCArIGZzZWM7CiAJCQkJYnJlYWs7CiAKIAkJCWNhc2UgRFRLX01JTExJU0VDOgotCQkJCXJl c3VsdCA9IHRtLT50bV9zZWMgKiAxMDAwLjAgKyBmc2VjIC8gMTAwMC4wOworCQkJCWlmIChy ZXRudW1lcmljKQorCQkJCQkvKi0tLQorCQkJCQkgKiB0bS0+dG1fc2VjICogMTAwMCArIGZz ZWMgLyAxMDAwCisJCQkJCSAqID0gKHRtLT50bV9zZWMgKiAxJzAwMCcwMDAgKyBmc2VjKSAv IDEwMDAKKwkJCQkJICovCisJCQkJCVBHX1JFVFVSTl9OVU1FUklDKGludDY0X2Rpdl9mYXN0 X3RvX251bWVyaWModG0tPnRtX3NlYyAqIDEwMDAwMDBMTCArIGZzZWMsIDMpKTsKKwkJCQll bHNlCisJCQkJCVBHX1JFVFVSTl9GTE9BVDgodG0tPnRtX3NlYyAqIDEwMDAuMCArIGZzZWMg LyAxMDAwLjApOwogCQkJCWJyZWFrOwogCiAJCQljYXNlIERUS19TRUNPTkQ6Ci0JCQkJcmVz dWx0ID0gdG0tPnRtX3NlYyArIGZzZWMgLyAxMDAwMDAwLjA7CisJCQkJaWYgKHJldG51bWVy aWMpCisJCQkJCS8qLS0tCisJCQkJCSAqIHRtLT50bV9zZWMgKyBmc2VjIC8gMScwMDAnMDAw CisJCQkJCSAqID0gKHRtLT50bV9zZWMgKiAxJzAwMCcwMDAgKyBmc2VjKSAvIDEnMDAwJzAw MAorCQkJCQkgKi8KKwkJCQkJUEdfUkVUVVJOX05VTUVSSUMoaW50NjRfZGl2X2Zhc3RfdG9f bnVtZXJpYyh0bS0+dG1fc2VjICogMTAwMDAwMExMICsgZnNlYywgNikpOworCQkJCWVsc2UK KwkJCQkJUEdfUkVUVVJOX0ZMT0FUOCh0bS0+dG1fc2VjICsgZnNlYyAvIDEwMDAwMDAuMCk7 CiAJCQkJYnJlYWs7CiAKIAkJCWNhc2UgRFRLX01JTlVURToKLQkJCQlyZXN1bHQgPSB0bS0+ dG1fbWluOworCQkJCWludHJlc3VsdCA9IHRtLT50bV9taW47CiAJCQkJYnJlYWs7CiAKIAkJ CWNhc2UgRFRLX0hPVVI6Ci0JCQkJcmVzdWx0ID0gdG0tPnRtX2hvdXI7CisJCQkJaW50cmVz dWx0ID0gdG0tPnRtX2hvdXI7CiAJCQkJYnJlYWs7CiAKIAkJCWNhc2UgRFRLX0RBWToKLQkJ CQlyZXN1bHQgPSB0bS0+dG1fbWRheTsKKwkJCQlpbnRyZXN1bHQgPSB0bS0+dG1fbWRheTsK IAkJCQlicmVhazsKIAogCQkJY2FzZSBEVEtfTU9OVEg6Ci0JCQkJcmVzdWx0ID0gdG0tPnRt X21vbjsKKwkJCQlpbnRyZXN1bHQgPSB0bS0+dG1fbW9uOwogCQkJCWJyZWFrOwogCiAJCQlj YXNlIERUS19RVUFSVEVSOgotCQkJCXJlc3VsdCA9ICh0bS0+dG1fbW9uIC0gMSkgLyAzICsg MTsKKwkJCQlpbnRyZXN1bHQgPSAodG0tPnRtX21vbiAtIDEpIC8gMyArIDE7CiAJCQkJYnJl YWs7CiAKIAkJCWNhc2UgRFRLX1dFRUs6Ci0JCQkJcmVzdWx0ID0gKGZsb2F0OCkgZGF0ZTJp c293ZWVrKHRtLT50bV95ZWFyLCB0bS0+dG1fbW9uLCB0bS0+dG1fbWRheSk7CisJCQkJaW50 cmVzdWx0ID0gZGF0ZTJpc293ZWVrKHRtLT50bV95ZWFyLCB0bS0+dG1fbW9uLCB0bS0+dG1f bWRheSk7CiAJCQkJYnJlYWs7CiAKIAkJCWNhc2UgRFRLX1lFQVI6CiAJCQkJaWYgKHRtLT50 bV95ZWFyID4gMCkKLQkJCQkJcmVzdWx0ID0gdG0tPnRtX3llYXI7CisJCQkJCWludHJlc3Vs dCA9IHRtLT50bV95ZWFyOwogCQkJCWVsc2UKIAkJCQkJLyogdGhlcmUgaXMgbm8geWVhciAw LCBqdXN0IDEgQkMgYW5kIDEgQUQgKi8KLQkJCQkJcmVzdWx0ID0gdG0tPnRtX3llYXIgLSAx OworCQkJCQlpbnRyZXN1bHQgPSB0bS0+dG1feWVhciAtIDE7CiAJCQkJYnJlYWs7CiAKIAkJ CWNhc2UgRFRLX0RFQ0FERToKIAkJCQkvKiBzZWUgY29tbWVudHMgaW4gdGltZXN0YW1wX3Bh cnQgKi8KIAkJCQlpZiAodG0tPnRtX3llYXIgPiAwKQotCQkJCQlyZXN1bHQgPSB0bS0+dG1f eWVhciAvIDEwOworCQkJCQlpbnRyZXN1bHQgPSB0bS0+dG1feWVhciAvIDEwOwogCQkJCWVs c2UKLQkJCQkJcmVzdWx0ID0gLSgoOCAtICh0bS0+dG1feWVhciAtIDEpKSAvIDEwKTsKKwkJ CQkJaW50cmVzdWx0ID0gLSgoOCAtICh0bS0+dG1feWVhciAtIDEpKSAvIDEwKTsKIAkJCQli cmVhazsKIAogCQkJY2FzZSBEVEtfQ0VOVFVSWToKIAkJCQkvKiBzZWUgY29tbWVudHMgaW4g dGltZXN0YW1wX3BhcnQgKi8KIAkJCQlpZiAodG0tPnRtX3llYXIgPiAwKQotCQkJCQlyZXN1 bHQgPSAodG0tPnRtX3llYXIgKyA5OSkgLyAxMDA7CisJCQkJCWludHJlc3VsdCA9ICh0bS0+ dG1feWVhciArIDk5KSAvIDEwMDsKIAkJCQllbHNlCi0JCQkJCXJlc3VsdCA9IC0oKDk5IC0g KHRtLT50bV95ZWFyIC0gMSkpIC8gMTAwKTsKKwkJCQkJaW50cmVzdWx0ID0gLSgoOTkgLSAo dG0tPnRtX3llYXIgLSAxKSkgLyAxMDApOwogCQkJCWJyZWFrOwogCiAJCQljYXNlIERUS19N SUxMRU5OSVVNOgogCQkJCS8qIHNlZSBjb21tZW50cyBpbiB0aW1lc3RhbXBfcGFydCAqLwog CQkJCWlmICh0bS0+dG1feWVhciA+IDApCi0JCQkJCXJlc3VsdCA9ICh0bS0+dG1feWVhciAr IDk5OSkgLyAxMDAwOworCQkJCQlpbnRyZXN1bHQgPSAodG0tPnRtX3llYXIgKyA5OTkpIC8g MTAwMDsKIAkJCQllbHNlCi0JCQkJCXJlc3VsdCA9IC0oKDk5OSAtICh0bS0+dG1feWVhciAt IDEpKSAvIDEwMDApOworCQkJCQlpbnRyZXN1bHQgPSAtKCg5OTkgLSAodG0tPnRtX3llYXIg LSAxKSkgLyAxMDAwKTsKIAkJCQlicmVhazsKIAogCQkJY2FzZSBEVEtfSlVMSUFOOgotCQkJ CXJlc3VsdCA9IGRhdGUyaih0bS0+dG1feWVhciwgdG0tPnRtX21vbiwgdG0tPnRtX21kYXkp OwotCQkJCXJlc3VsdCArPSAoKCgodG0tPnRtX2hvdXIgKiBNSU5TX1BFUl9IT1VSKSArIHRt LT50bV9taW4pICogU0VDU19QRVJfTUlOVVRFKSArCi0JCQkJCQkgICB0bS0+dG1fc2VjICsg KGZzZWMgLyAxMDAwMDAwLjApKSAvIChkb3VibGUpIFNFQ1NfUEVSX0RBWTsKKwkJCQlpZiAo cmV0bnVtZXJpYykKKwkJCQkJUEdfUkVUVVJOX05VTUVSSUMobnVtZXJpY19hZGRfb3B0X2Vy cm9yKGludDY0X3RvX251bWVyaWMoZGF0ZTJqKHRtLT50bV95ZWFyLCB0bS0+dG1fbW9uLCB0 bS0+dG1fbWRheSkpLAorCQkJCQkJCQkJCQkJCQkJbnVtZXJpY19kaXZfb3B0X2Vycm9yKGlu dDY0X3RvX251bWVyaWMoKCgoKHRtLT50bV9ob3VyICogTUlOU19QRVJfSE9VUikgKyB0bS0+ dG1fbWluKSAqIFNFQ1NfUEVSX01JTlVURSkgKyB0bS0+dG1fc2VjKSAqIDEwMDAwMDBMTCAr IGZzZWMpLAorCQkJCQkJCQkJCQkJCQkJCQkJCQkgIGludDY0X3RvX251bWVyaWMoU0VDU19Q RVJfREFZICogMTAwMDAwMExMKSwKKwkJCQkJCQkJCQkJCQkJCQkJCQkJICBOVUxMKSwKKwkJ CQkJCQkJCQkJCQkJCU5VTEwpKTsKKwkJCQllbHNlCisJCQkJCVBHX1JFVFVSTl9GTE9BVDgo ZGF0ZTJqKHRtLT50bV95ZWFyLCB0bS0+dG1fbW9uLCB0bS0+dG1fbWRheSkgKworCQkJCQkJ CQkJICgoKCh0bS0+dG1faG91ciAqIE1JTlNfUEVSX0hPVVIpICsgdG0tPnRtX21pbikgKiBT RUNTX1BFUl9NSU5VVEUpICsKKwkJCQkJCQkJCSAgdG0tPnRtX3NlYyArIChmc2VjIC8gMTAw MDAwMC4wKSkgLyAoZG91YmxlKSBTRUNTX1BFUl9EQVkpOwogCQkJCWJyZWFrOwogCiAJCQlj YXNlIERUS19JU09ZRUFSOgotCQkJCXJlc3VsdCA9IGRhdGUyaXNveWVhcih0bS0+dG1feWVh ciwgdG0tPnRtX21vbiwgdG0tPnRtX21kYXkpOworCQkJCWludHJlc3VsdCA9IGRhdGUyaXNv eWVhcih0bS0+dG1feWVhciwgdG0tPnRtX21vbiwgdG0tPnRtX21kYXkpOwogCQkJCS8qIEFk anVzdCBCQyB5ZWFycyAqLwotCQkJCWlmIChyZXN1bHQgPD0gMCkKLQkJCQkJcmVzdWx0IC09 IDE7CisJCQkJaWYgKGludHJlc3VsdCA8PSAwKQorCQkJCQlpbnRyZXN1bHQgLT0gMTsKIAkJ CQlicmVhazsKIAogCQkJY2FzZSBEVEtfRE9XOgogCQkJY2FzZSBEVEtfSVNPRE9XOgotCQkJ CXJlc3VsdCA9IGoyZGF5KGRhdGUyaih0bS0+dG1feWVhciwgdG0tPnRtX21vbiwgdG0tPnRt X21kYXkpKTsKLQkJCQlpZiAodmFsID09IERUS19JU09ET1cgJiYgcmVzdWx0ID09IDApCi0J CQkJCXJlc3VsdCA9IDc7CisJCQkJaW50cmVzdWx0ID0gajJkYXkoZGF0ZTJqKHRtLT50bV95 ZWFyLCB0bS0+dG1fbW9uLCB0bS0+dG1fbWRheSkpOworCQkJCWlmICh2YWwgPT0gRFRLX0lT T0RPVyAmJiBpbnRyZXN1bHQgPT0gMCkKKwkJCQkJaW50cmVzdWx0ID0gNzsKIAkJCQlicmVh azsKIAogCQkJY2FzZSBEVEtfRE9ZOgotCQkJCXJlc3VsdCA9IChkYXRlMmoodG0tPnRtX3ll YXIsIHRtLT50bV9tb24sIHRtLT50bV9tZGF5KQotCQkJCQkJICAtIGRhdGUyaih0bS0+dG1f eWVhciwgMSwgMSkgKyAxKTsKKwkJCQlpbnRyZXN1bHQgPSAoZGF0ZTJqKHRtLT50bV95ZWFy LCB0bS0+dG1fbW9uLCB0bS0+dG1fbWRheSkKKwkJCQkJCQkgLSBkYXRlMmoodG0tPnRtX3ll YXIsIDEsIDEpICsgMSk7CiAJCQkJYnJlYWs7CiAKIAkJCWRlZmF1bHQ6CkBAIC00OTUxLDcg KzUwNjYsNyBAQCB0aW1lc3RhbXB0el9wYXJ0KFBHX0ZVTkNUSU9OX0FSR1MpCiAJCQkJCQko ZXJyY29kZShFUlJDT0RFX0ZFQVRVUkVfTk9UX1NVUFBPUlRFRCksCiAJCQkJCQkgZXJybXNn KCJ0aW1lc3RhbXAgd2l0aCB0aW1lIHpvbmUgdW5pdHMgXCIlc1wiIG5vdCBzdXBwb3J0ZWQi LAogCQkJCQkJCQlsb3d1bml0cykpKTsKLQkJCQlyZXN1bHQgPSAwOworCQkJCWludHJlc3Vs dCA9IDA7CiAJCX0KIAogCX0KQEAgLTQ5NjEsMTEgKzUwNzYsMzcgQEAgdGltZXN0YW1wdHpf cGFydChQR19GVU5DVElPTl9BUkdTKQogCQl7CiAJCQljYXNlIERUS19FUE9DSDoKIAkJCQll cG9jaCA9IFNldEVwb2NoVGltZXN0YW1wKCk7Ci0JCQkJLyogdHJ5IHRvIGF2b2lkIHByZWNp c2lvbiBsb3NzIGluIHN1YnRyYWN0aW9uICovCi0JCQkJaWYgKHRpbWVzdGFtcCA8IChQR19J TlQ2NF9NQVggKyBlcG9jaCkpCi0JCQkJCXJlc3VsdCA9ICh0aW1lc3RhbXAgLSBlcG9jaCkg LyAxMDAwMDAwLjA7CisJCQkJLyogKHRpbWVzdGFtcCAtIGVwb2NoKSAvIDEwMDAwMDAgKi8K KwkJCQlpZiAocmV0bnVtZXJpYykKKwkJCQl7CisJCQkJCU51bWVyaWMJCXJlc3VsdDsKKwor CQkJCQlpZiAodGltZXN0YW1wIDwgKFBHX0lOVDY0X01BWCArIGVwb2NoKSkKKwkJCQkJCXJl c3VsdCA9IGludDY0X2Rpdl9mYXN0X3RvX251bWVyaWModGltZXN0YW1wIC0gZXBvY2gsIDYp OworCQkJCQllbHNlCisJCQkJCXsKKwkJCQkJCXJlc3VsdCA9IG51bWVyaWNfZGl2X29wdF9l cnJvcihudW1lcmljX3N1Yl9vcHRfZXJyb3IoaW50NjRfdG9fbnVtZXJpYyh0aW1lc3RhbXAp LAorCQkJCQkJCQkJCQkJCQkJCQkJCSBpbnQ2NF90b19udW1lcmljKGVwb2NoKSwKKwkJCQkJ CQkJCQkJCQkJCQkJCQkgTlVMTCksCisJCQkJCQkJCQkJCQkJICAgaW50NjRfdG9fbnVtZXJp YygxMDAwMDAwKSwKKwkJCQkJCQkJCQkJCQkgICBOVUxMKTsKKwkJCQkJCXJlc3VsdCA9IERh dHVtR2V0TnVtZXJpYyhEaXJlY3RGdW5jdGlvbkNhbGwyKG51bWVyaWNfcm91bmQsCisJCQkJ CQkJCQkJCQkJCQkJCSBOdW1lcmljR2V0RGF0dW0ocmVzdWx0KSwKKwkJCQkJCQkJCQkJCQkJ CQkJIEludDMyR2V0RGF0dW0oNikpKTsKKwkJCQkJfQorCQkJCQlQR19SRVRVUk5fTlVNRVJJ QyhyZXN1bHQpOworCQkJCX0KIAkJCQllbHNlCi0JCQkJCXJlc3VsdCA9ICgoZmxvYXQ4KSB0 aW1lc3RhbXAgLSBlcG9jaCkgLyAxMDAwMDAwLjA7CisJCQkJeworCQkJCQlmbG9hdDgJCXJl c3VsdDsKKworCQkJCQkvKiB0cnkgdG8gYXZvaWQgcHJlY2lzaW9uIGxvc3MgaW4gc3VidHJh Y3Rpb24gKi8KKwkJCQkJaWYgKHRpbWVzdGFtcCA8IChQR19JTlQ2NF9NQVggKyBlcG9jaCkp CisJCQkJCQlyZXN1bHQgPSAodGltZXN0YW1wIC0gZXBvY2gpIC8gMTAwMDAwMC4wOworCQkJ CQllbHNlCisJCQkJCQlyZXN1bHQgPSAoKGZsb2F0OCkgdGltZXN0YW1wIC0gZXBvY2gpIC8g MTAwMDAwMC4wOworCQkJCQlQR19SRVRVUk5fRkxPQVQ4KHJlc3VsdCk7CisJCQkJfQogCQkJ CWJyZWFrOwogCiAJCQlkZWZhdWx0OgpAQCAtNDk3Myw3ICs1MTE0LDcgQEAgdGltZXN0YW1w dHpfcGFydChQR19GVU5DVElPTl9BUkdTKQogCQkJCQkJKGVycmNvZGUoRVJSQ09ERV9GRUFU VVJFX05PVF9TVVBQT1JURUQpLAogCQkJCQkJIGVycm1zZygidGltZXN0YW1wIHdpdGggdGlt ZSB6b25lIHVuaXRzIFwiJXNcIiBub3Qgc3VwcG9ydGVkIiwKIAkJCQkJCQkJbG93dW5pdHMp KSk7Ci0JCQkJcmVzdWx0ID0gMDsKKwkJCQlpbnRyZXN1bHQgPSAwOwogCQl9CiAJfQogCWVs c2UKQEAgLTQ5ODMsMjIgKzUxMjQsMzcgQEAgdGltZXN0YW1wdHpfcGFydChQR19GVU5DVElP Tl9BUkdTKQogCQkJCSBlcnJtc2coInRpbWVzdGFtcCB3aXRoIHRpbWUgem9uZSB1bml0cyBc IiVzXCIgbm90IHJlY29nbml6ZWQiLAogCQkJCQkJbG93dW5pdHMpKSk7CiAKLQkJcmVzdWx0 ID0gMDsKKwkJaW50cmVzdWx0ID0gMDsKIAl9CiAKLQlQR19SRVRVUk5fRkxPQVQ4KHJlc3Vs dCk7CisJaWYgKHJldG51bWVyaWMpCisJCVBHX1JFVFVSTl9OVU1FUklDKGludDY0X3RvX251 bWVyaWMoaW50cmVzdWx0KSk7CisJZWxzZQorCQlQR19SRVRVUk5fRkxPQVQ4KGludHJlc3Vs dCk7Cit9CisKK0RhdHVtCit0aW1lc3RhbXB0el9wYXJ0KFBHX0ZVTkNUSU9OX0FSR1MpCit7 CisJcmV0dXJuIHRpbWVzdGFtcHR6X3BhcnRfY29tbW9uKGZjaW5mbywgZmFsc2UpOworfQor CitEYXR1bQorZXh0cmFjdF90aW1lc3RhbXB0eihQR19GVU5DVElPTl9BUkdTKQoreworCXJl dHVybiB0aW1lc3RhbXB0el9wYXJ0X2NvbW1vbihmY2luZm8sIHRydWUpOwogfQogCiAKLS8q IGludGVydmFsX3BhcnQoKQorLyogaW50ZXJ2YWxfcGFydCgpIGFuZCBleHRyYWN0X2ludGVy dmFsKCkKICAqIEV4dHJhY3Qgc3BlY2lmaWVkIGZpZWxkIGZyb20gaW50ZXJ2YWwuCiAgKi8K LURhdHVtCi1pbnRlcnZhbF9wYXJ0KFBHX0ZVTkNUSU9OX0FSR1MpCitzdGF0aWMgRGF0dW0K K2ludGVydmFsX3BhcnRfY29tbW9uKFBHX0ZVTkNUSU9OX0FSR1MsIGJvb2wgcmV0bnVtZXJp YykKIHsKIAl0ZXh0CSAgICp1bml0cyA9IFBHX0dFVEFSR19URVhUX1BQKDApOwogCUludGVy dmFsICAgKmludGVydmFsID0gUEdfR0VUQVJHX0lOVEVSVkFMX1AoMSk7Ci0JZmxvYXQ4CQly ZXN1bHQ7CisJaW50NjQJCWludHJlc3VsdDsKIAlpbnQJCQl0eXBlLAogCQkJCXZhbDsKIAlj aGFyCSAgICpsb3d1bml0czsKQEAgLTUwMjEsNTQgKzUxNzcsNjggQEAgaW50ZXJ2YWxfcGFy dChQR19GVU5DVElPTl9BUkdTKQogCQkJc3dpdGNoICh2YWwpCiAJCQl7CiAJCQkJY2FzZSBE VEtfTUlDUk9TRUM6Ci0JCQkJCXJlc3VsdCA9IHRtLT50bV9zZWMgKiAxMDAwMDAwLjAgKyBm c2VjOworCQkJCQlpbnRyZXN1bHQgPSB0bS0+dG1fc2VjICogMTAwMDAwMCArIGZzZWM7CiAJ CQkJCWJyZWFrOwogCiAJCQkJY2FzZSBEVEtfTUlMTElTRUM6Ci0JCQkJCXJlc3VsdCA9IHRt LT50bV9zZWMgKiAxMDAwLjAgKyBmc2VjIC8gMTAwMC4wOworCQkJCQlpZiAocmV0bnVtZXJp YykKKwkJCQkJCS8qLS0tCisJCQkJCQkgKiB0bS0+dG1fc2VjICogMTAwMCArIGZzZWMgLyAx MDAwCisJCQkJCQkgKiA9ICh0bS0+dG1fc2VjICogMScwMDAnMDAwICsgZnNlYykgLyAxMDAw CisJCQkJCQkgKi8KKwkJCQkJCVBHX1JFVFVSTl9OVU1FUklDKGludDY0X2Rpdl9mYXN0X3Rv X251bWVyaWModG0tPnRtX3NlYyAqIDEwMDAwMDBMTCArIGZzZWMsIDMpKTsKKwkJCQkJZWxz ZQorCQkJCQkJUEdfUkVUVVJOX0ZMT0FUOCh0bS0+dG1fc2VjICogMTAwMC4wICsgZnNlYyAv IDEwMDAuMCk7CiAJCQkJCWJyZWFrOwogCiAJCQkJY2FzZSBEVEtfU0VDT05EOgotCQkJCQly ZXN1bHQgPSB0bS0+dG1fc2VjICsgZnNlYyAvIDEwMDAwMDAuMDsKKwkJCQkJaWYgKHJldG51 bWVyaWMpCisJCQkJCQkvKi0tLQorCQkJCQkJICogdG0tPnRtX3NlYyArIGZzZWMgLyAxJzAw MCcwMDAKKwkJCQkJCSAqID0gKHRtLT50bV9zZWMgKiAxJzAwMCcwMDAgKyBmc2VjKSAvIDEn MDAwJzAwMAorCQkJCQkJICovCisJCQkJCQlQR19SRVRVUk5fTlVNRVJJQyhpbnQ2NF9kaXZf ZmFzdF90b19udW1lcmljKHRtLT50bV9zZWMgKiAxMDAwMDAwTEwgKyBmc2VjLCA2KSk7CisJ CQkJCWVsc2UKKwkJCQkJCVBHX1JFVFVSTl9GTE9BVDgodG0tPnRtX3NlYyArIGZzZWMgLyAx MDAwMDAwLjApOwogCQkJCQlicmVhazsKIAogCQkJCWNhc2UgRFRLX01JTlVURToKLQkJCQkJ cmVzdWx0ID0gdG0tPnRtX21pbjsKKwkJCQkJaW50cmVzdWx0ID0gdG0tPnRtX21pbjsKIAkJ CQkJYnJlYWs7CiAKIAkJCQljYXNlIERUS19IT1VSOgotCQkJCQlyZXN1bHQgPSB0bS0+dG1f aG91cjsKKwkJCQkJaW50cmVzdWx0ID0gdG0tPnRtX2hvdXI7CiAJCQkJCWJyZWFrOwogCiAJ CQkJY2FzZSBEVEtfREFZOgotCQkJCQlyZXN1bHQgPSB0bS0+dG1fbWRheTsKKwkJCQkJaW50 cmVzdWx0ID0gdG0tPnRtX21kYXk7CiAJCQkJCWJyZWFrOwogCiAJCQkJY2FzZSBEVEtfTU9O VEg6Ci0JCQkJCXJlc3VsdCA9IHRtLT50bV9tb247CisJCQkJCWludHJlc3VsdCA9IHRtLT50 bV9tb247CiAJCQkJCWJyZWFrOwogCiAJCQkJY2FzZSBEVEtfUVVBUlRFUjoKLQkJCQkJcmVz dWx0ID0gKHRtLT50bV9tb24gLyAzKSArIDE7CisJCQkJCWludHJlc3VsdCA9ICh0bS0+dG1f bW9uIC8gMykgKyAxOwogCQkJCQlicmVhazsKIAogCQkJCWNhc2UgRFRLX1lFQVI6Ci0JCQkJ CXJlc3VsdCA9IHRtLT50bV95ZWFyOworCQkJCQlpbnRyZXN1bHQgPSB0bS0+dG1feWVhcjsK IAkJCQkJYnJlYWs7CiAKIAkJCQljYXNlIERUS19ERUNBREU6CiAJCQkJCS8qIGNhdXRpb246 IEMgZGl2aXNpb24gbWF5IGhhdmUgbmVnYXRpdmUgcmVtYWluZGVyICovCi0JCQkJCXJlc3Vs dCA9IHRtLT50bV95ZWFyIC8gMTA7CisJCQkJCWludHJlc3VsdCA9IHRtLT50bV95ZWFyIC8g MTA7CiAJCQkJCWJyZWFrOwogCiAJCQkJY2FzZSBEVEtfQ0VOVFVSWToKIAkJCQkJLyogY2F1 dGlvbjogQyBkaXZpc2lvbiBtYXkgaGF2ZSBuZWdhdGl2ZSByZW1haW5kZXIgKi8KLQkJCQkJ cmVzdWx0ID0gdG0tPnRtX3llYXIgLyAxMDA7CisJCQkJCWludHJlc3VsdCA9IHRtLT50bV95 ZWFyIC8gMTAwOwogCQkJCQlicmVhazsKIAogCQkJCWNhc2UgRFRLX01JTExFTk5JVU06CiAJ CQkJCS8qIGNhdXRpb246IEMgZGl2aXNpb24gbWF5IGhhdmUgbmVnYXRpdmUgcmVtYWluZGVy ICovCi0JCQkJCXJlc3VsdCA9IHRtLT50bV95ZWFyIC8gMTAwMDsKKwkJCQkJaW50cmVzdWx0 ID0gdG0tPnRtX3llYXIgLyAxMDAwOwogCQkJCQlicmVhazsKIAogCQkJCWRlZmF1bHQ6CkBA IC01MDc2LDIyICs1MjQ2LDYwIEBAIGludGVydmFsX3BhcnQoUEdfRlVOQ1RJT05fQVJHUykK IAkJCQkJCQkoZXJyY29kZShFUlJDT0RFX0ZFQVRVUkVfTk9UX1NVUFBPUlRFRCksCiAJCQkJ CQkJIGVycm1zZygiaW50ZXJ2YWwgdW5pdHMgXCIlc1wiIG5vdCBzdXBwb3J0ZWQiLAogCQkJ CQkJCQkJbG93dW5pdHMpKSk7Ci0JCQkJCXJlc3VsdCA9IDA7CisJCQkJCWludHJlc3VsdCA9 IDA7CiAJCQl9Ci0KIAkJfQogCQllbHNlCiAJCXsKIAkJCWVsb2coRVJST1IsICJjb3VsZCBu b3QgY29udmVydCBpbnRlcnZhbCB0byB0bSIpOwotCQkJcmVzdWx0ID0gMDsKKwkJCWludHJl c3VsdCA9IDA7CiAJCX0KIAl9CiAJZWxzZSBpZiAodHlwZSA9PSBSRVNFUlYgJiYgdmFsID09 IERUS19FUE9DSCkKIAl7Ci0JCXJlc3VsdCA9IGludGVydmFsLT50aW1lIC8gMTAwMDAwMC4w OwotCQlyZXN1bHQgKz0gKChkb3VibGUpIERBWVNfUEVSX1lFQVIgKiBTRUNTX1BFUl9EQVkp ICogKGludGVydmFsLT5tb250aCAvIE1PTlRIU19QRVJfWUVBUik7Ci0JCXJlc3VsdCArPSAo KGRvdWJsZSkgREFZU19QRVJfTU9OVEggKiBTRUNTX1BFUl9EQVkpICogKGludGVydmFsLT5t b250aCAlIE1PTlRIU19QRVJfWUVBUik7Ci0JCXJlc3VsdCArPSAoKGRvdWJsZSkgU0VDU19Q RVJfREFZKSAqIGludGVydmFsLT5kYXk7CisJCWlmIChyZXRudW1lcmljKQorCQl7CisJCQlO dW1lcmljCQlyZXN1bHQ7CisJCQlpbnQ2NAkJc2Vjc19mcm9tX2RheV9tb250aDsKKwkJCWlu dDY0CQl2YWw7CisKKwkJCS8qIHRoaXMgYWx3YXlzIGZpdHMgaW50byBpbnQ2NCAqLworCQkJ c2Vjc19mcm9tX2RheV9tb250aCA9ICgoaW50NjQpIERBWVNfUEVSX1lFQVIgKiAoaW50ZXJ2 YWwtPm1vbnRoIC8gTU9OVEhTX1BFUl9ZRUFSKSArCisJCQkJCQkJCSAgIChpbnQ2NCkgREFZ U19QRVJfTU9OVEggKiAoaW50ZXJ2YWwtPm1vbnRoICUgTU9OVEhTX1BFUl9ZRUFSKSArCisJ CQkJCQkJCSAgIGludGVydmFsLT5kYXkpICogU0VDU19QRVJfREFZOworCisJCQkvKi0tLQor CQkJICogcmVzdWx0ID0gc2Vjc19mcm9tX2RheV9tb250aCArIGludGVydmFsLT50aW1lIC8g MScwMDAnMDAwCisJCQkgKiA9IChzZWNzX2Zyb21fZGF5X21vbnRoICogMScwMDAnMDAwICsg aW50ZXJ2YWwtPnRpbWUpIC8gMScwMDAnMDAwCisJCQkgKi8KKworCQkJLyoKKwkJCSAqIFRy eSB0aGUgY29tcHV0YXRpb24gaW5zaWRlIGludDY0OyBpZiBpdCBvdmVyZmxvd3MsIGRvIGl0 IGluCisJCQkgKiBudW1lcmljIChzbG93ZXIpLiAgVGhpcyBvdmVyZmxvdyBoYXBwZW5zIGFy b3VuZCAxMF45IGRheXMsIHNvCisJCQkgKiBub3QgY29tbW9uIGluIHByYWN0aWNlLgorCQkJ ICovCisJCQlpZiAoIXBnX211bF9zNjRfb3ZlcmZsb3coc2Vjc19mcm9tX2RheV9tb250aCwg MTAwMDAwMCwgJnZhbCkgJiYKKwkJCQkhcGdfYWRkX3M2NF9vdmVyZmxvdyh2YWwsIGludGVy dmFsLT50aW1lLCAmdmFsKSkKKwkJCQlyZXN1bHQgPSBpbnQ2NF9kaXZfZmFzdF90b19udW1l cmljKHZhbCwgNik7CisJCQllbHNlCisJCQkJcmVzdWx0ID0KKwkJCQkJbnVtZXJpY19hZGRf b3B0X2Vycm9yKGludDY0X2Rpdl9mYXN0X3RvX251bWVyaWMoaW50ZXJ2YWwtPnRpbWUsIDYp LAorCQkJCQkJCQkJCSAgaW50NjRfdG9fbnVtZXJpYyhzZWNzX2Zyb21fZGF5X21vbnRoKSwK KwkJCQkJCQkJCQkgIE5VTEwpOworCisJCQlQR19SRVRVUk5fTlVNRVJJQyhyZXN1bHQpOwor CQl9CisJCWVsc2UKKwkJeworCQkJZmxvYXQ4CQlyZXN1bHQ7CisKKwkJCXJlc3VsdCA9IGlu dGVydmFsLT50aW1lIC8gMTAwMDAwMC4wOworCQkJcmVzdWx0ICs9ICgoZG91YmxlKSBEQVlT X1BFUl9ZRUFSICogU0VDU19QRVJfREFZKSAqIChpbnRlcnZhbC0+bW9udGggLyBNT05USFNf UEVSX1lFQVIpOworCQkJcmVzdWx0ICs9ICgoZG91YmxlKSBEQVlTX1BFUl9NT05USCAqIFNF Q1NfUEVSX0RBWSkgKiAoaW50ZXJ2YWwtPm1vbnRoICUgTU9OVEhTX1BFUl9ZRUFSKTsKKwkJ CXJlc3VsdCArPSAoKGRvdWJsZSkgU0VDU19QRVJfREFZKSAqIGludGVydmFsLT5kYXk7CisK KwkJCVBHX1JFVFVSTl9GTE9BVDgocmVzdWx0KTsKKwkJfQogCX0KIAllbHNlCiAJewpAQCAt NTA5OSwxMCArNTMwNywyNSBAQCBpbnRlcnZhbF9wYXJ0KFBHX0ZVTkNUSU9OX0FSR1MpCiAJ CQkJKGVycmNvZGUoRVJSQ09ERV9JTlZBTElEX1BBUkFNRVRFUl9WQUxVRSksCiAJCQkJIGVy cm1zZygiaW50ZXJ2YWwgdW5pdHMgXCIlc1wiIG5vdCByZWNvZ25pemVkIiwKIAkJCQkJCWxv d3VuaXRzKSkpOwotCQlyZXN1bHQgPSAwOworCQlpbnRyZXN1bHQgPSAwOwogCX0KIAotCVBH X1JFVFVSTl9GTE9BVDgocmVzdWx0KTsKKwlpZiAocmV0bnVtZXJpYykKKwkJUEdfUkVUVVJO X05VTUVSSUMoaW50NjRfdG9fbnVtZXJpYyhpbnRyZXN1bHQpKTsKKwllbHNlCisJCVBHX1JF VFVSTl9GTE9BVDgoaW50cmVzdWx0KTsKK30KKworRGF0dW0KK2ludGVydmFsX3BhcnQoUEdf RlVOQ1RJT05fQVJHUykKK3sKKwlyZXR1cm4gaW50ZXJ2YWxfcGFydF9jb21tb24oZmNpbmZv LCBmYWxzZSk7Cit9CisKK0RhdHVtCitleHRyYWN0X2ludGVydmFsKFBHX0ZVTkNUSU9OX0FS R1MpCit7CisJcmV0dXJuIGludGVydmFsX3BhcnRfY29tbW9uKGZjaW5mbywgdHJ1ZSk7CiB9 CiAKIApkaWZmIC0tZ2l0IGEvc3JjL2luY2x1ZGUvY2F0YWxvZy9wZ19wcm9jLmRhdCBiL3Ny Yy9pbmNsdWRlL2NhdGFsb2cvcGdfcHJvYy5kYXQKaW5kZXggNjlmZmQwYzNmNC4uYmYzZDZh ZmRhOSAxMDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUvY2F0YWxvZy9wZ19wcm9jLmRhdAorKysg Yi9zcmMvaW5jbHVkZS9jYXRhbG9nL3BnX3Byb2MuZGF0CkBAIC0yMzM5LDkgKzIzMzksMTUg QEAKIHsgb2lkID0+ICcxMTcxJywgZGVzY3IgPT4gJ2V4dHJhY3QgZmllbGQgZnJvbSB0aW1l c3RhbXAgd2l0aCB0aW1lIHpvbmUnLAogICBwcm9uYW1lID0+ICdkYXRlX3BhcnQnLCBwcm92 b2xhdGlsZSA9PiAncycsIHByb3JldHR5cGUgPT4gJ2Zsb2F0OCcsCiAgIHByb2FyZ3R5cGVz ID0+ICd0ZXh0IHRpbWVzdGFtcHR6JywgcHJvc3JjID0+ICd0aW1lc3RhbXB0el9wYXJ0JyB9 LAoreyBvaWQgPT4gJzk5ODMnLCBkZXNjciA9PiAnZXh0cmFjdCBmaWVsZCBmcm9tIHRpbWVz dGFtcCB3aXRoIHRpbWUgem9uZScsCisgIHByb25hbWUgPT4gJ2V4dHJhY3QnLCBwcm92b2xh dGlsZSA9PiAncycsIHByb3JldHR5cGUgPT4gJ251bWVyaWMnLAorICBwcm9hcmd0eXBlcyA9 PiAndGV4dCB0aW1lc3RhbXB0eicsIHByb3NyYyA9PiAnZXh0cmFjdF90aW1lc3RhbXB0eicg fSwKIHsgb2lkID0+ICcxMTcyJywgZGVzY3IgPT4gJ2V4dHJhY3QgZmllbGQgZnJvbSBpbnRl cnZhbCcsCiAgIHByb25hbWUgPT4gJ2RhdGVfcGFydCcsIHByb3JldHR5cGUgPT4gJ2Zsb2F0 OCcsCiAgIHByb2FyZ3R5cGVzID0+ICd0ZXh0IGludGVydmFsJywgcHJvc3JjID0+ICdpbnRl cnZhbF9wYXJ0JyB9LAoreyBvaWQgPT4gJzk5ODQnLCBkZXNjciA9PiAnZXh0cmFjdCBmaWVs ZCBmcm9tIGludGVydmFsJywKKyAgcHJvbmFtZSA9PiAnZXh0cmFjdCcsIHByb3JldHR5cGUg PT4gJ251bWVyaWMnLCBwcm9hcmd0eXBlcyA9PiAndGV4dCBpbnRlcnZhbCcsCisgIHByb3Ny YyA9PiAnZXh0cmFjdF9pbnRlcnZhbCcgfSwKIHsgb2lkID0+ICcxMTc0JywgZGVzY3IgPT4g J2NvbnZlcnQgZGF0ZSB0byB0aW1lc3RhbXAgd2l0aCB0aW1lIHpvbmUnLAogICBwcm9uYW1l ID0+ICd0aW1lc3RhbXB0eicsIHByb3ZvbGF0aWxlID0+ICdzJywgcHJvcmV0dHlwZSA9PiAn dGltZXN0YW1wdHonLAogICBwcm9hcmd0eXBlcyA9PiAnZGF0ZScsIHByb3NyYyA9PiAnZGF0 ZV90aW1lc3RhbXB0eicgfSwKQEAgLTI0ODksNiArMjQ5NSw5IEBACiB7IG9pZCA9PiAnMTI3 MycsIGRlc2NyID0+ICdleHRyYWN0IGZpZWxkIGZyb20gdGltZSB3aXRoIHRpbWUgem9uZScs CiAgIHByb25hbWUgPT4gJ2RhdGVfcGFydCcsIHByb3JldHR5cGUgPT4gJ2Zsb2F0OCcsIHBy b2FyZ3R5cGVzID0+ICd0ZXh0IHRpbWV0eicsCiAgIHByb3NyYyA9PiAndGltZXR6X3BhcnQn IH0sCit7IG9pZCA9PiAnOTk4MScsIGRlc2NyID0+ICdleHRyYWN0IGZpZWxkIGZyb20gdGlt ZSB3aXRoIHRpbWUgem9uZScsCisgIHByb25hbWUgPT4gJ2V4dHJhY3QnLCBwcm9yZXR0eXBl ID0+ICdudW1lcmljJywgcHJvYXJndHlwZXMgPT4gJ3RleHQgdGltZXR6JywKKyAgcHJvc3Jj ID0+ICdleHRyYWN0X3RpbWV0eicgfSwKIHsgb2lkID0+ICcxMjc0JywKICAgcHJvbmFtZSA9 PiAnaW50ODRwbCcsIHByb3JldHR5cGUgPT4gJ2ludDgnLCBwcm9hcmd0eXBlcyA9PiAnaW50 OCBpbnQ0JywKICAgcHJvc3JjID0+ICdpbnQ4NHBsJyB9LApAQCAtMjgzNCw5ICsyODQzLDE1 IEBACiAgIHByb25hbWUgPT4gJ2RhdGVfcGFydCcsIHByb2xhbmcgPT4gJ3NxbCcsIHByb3Jl dHR5cGUgPT4gJ2Zsb2F0OCcsCiAgIHByb2FyZ3R5cGVzID0+ICd0ZXh0IGRhdGUnLAogICBw cm9zcmMgPT4gJ3NlbGVjdCBwZ19jYXRhbG9nLmRhdGVfcGFydCgkMSwgY2FzdCgkMiBhcyB0 aW1lc3RhbXAgd2l0aG91dCB0aW1lIHpvbmUpKScgfSwKK3sgb2lkID0+ICc5OTc5JywgZGVz Y3IgPT4gJ2V4dHJhY3QgZmllbGQgZnJvbSBkYXRlJywKKyAgcHJvbmFtZSA9PiAnZXh0cmFj dCcsIHByb3JldHR5cGUgPT4gJ251bWVyaWMnLCBwcm9hcmd0eXBlcyA9PiAndGV4dCBkYXRl JywKKyAgcHJvc3JjID0+ICdleHRyYWN0X2RhdGUnIH0sCiB7IG9pZCA9PiAnMTM4NScsIGRl c2NyID0+ICdleHRyYWN0IGZpZWxkIGZyb20gdGltZScsCiAgIHByb25hbWUgPT4gJ2RhdGVf cGFydCcsIHByb3JldHR5cGUgPT4gJ2Zsb2F0OCcsIHByb2FyZ3R5cGVzID0+ICd0ZXh0IHRp bWUnLAogICBwcm9zcmMgPT4gJ3RpbWVfcGFydCcgfSwKK3sgb2lkID0+ICc5OTgwJywgZGVz Y3IgPT4gJ2V4dHJhY3QgZmllbGQgZnJvbSB0aW1lJywKKyAgcHJvbmFtZSA9PiAnZXh0cmFj dCcsIHByb3JldHR5cGUgPT4gJ251bWVyaWMnLCBwcm9hcmd0eXBlcyA9PiAndGV4dCB0aW1l JywKKyAgcHJvc3JjID0+ICdleHRyYWN0X3RpbWUnIH0sCiB7IG9pZCA9PiAnMTM4NicsCiAg IGRlc2NyID0+ICdkYXRlIGRpZmZlcmVuY2UgZnJvbSB0b2RheSBwcmVzZXJ2aW5nIG1vbnRo cyBhbmQgeWVhcnMnLAogICBwcm9uYW1lID0+ICdhZ2UnLCBwcm9sYW5nID0+ICdzcWwnLCBw cm92b2xhdGlsZSA9PiAncycsCkBAIC01ODM1LDYgKzU4NTAsOSBAQAogeyBvaWQgPT4gJzIw MjEnLCBkZXNjciA9PiAnZXh0cmFjdCBmaWVsZCBmcm9tIHRpbWVzdGFtcCcsCiAgIHByb25h bWUgPT4gJ2RhdGVfcGFydCcsIHByb3JldHR5cGUgPT4gJ2Zsb2F0OCcsCiAgIHByb2FyZ3R5 cGVzID0+ICd0ZXh0IHRpbWVzdGFtcCcsIHByb3NyYyA9PiAndGltZXN0YW1wX3BhcnQnIH0s Cit7IG9pZCA9PiAnOTk4MicsIGRlc2NyID0+ICdleHRyYWN0IGZpZWxkIGZyb20gdGltZXN0 YW1wJywKKyAgcHJvbmFtZSA9PiAnZXh0cmFjdCcsIHByb3JldHR5cGUgPT4gJ251bWVyaWMn LAorICBwcm9hcmd0eXBlcyA9PiAndGV4dCB0aW1lc3RhbXAnLCBwcm9zcmMgPT4gJ2V4dHJh Y3RfdGltZXN0YW1wJyB9LAogeyBvaWQgPT4gJzIwMjQnLCBkZXNjciA9PiAnY29udmVydCBk YXRlIHRvIHRpbWVzdGFtcCcsCiAgIHByb25hbWUgPT4gJ3RpbWVzdGFtcCcsIHByb3JldHR5 cGUgPT4gJ3RpbWVzdGFtcCcsIHByb2FyZ3R5cGVzID0+ICdkYXRlJywKICAgcHJvc3JjID0+ ICdkYXRlX3RpbWVzdGFtcCcgfSwKZGlmZiAtLWdpdCBhL3NyYy9pbmNsdWRlL3V0aWxzL251 bWVyaWMuaCBiL3NyYy9pbmNsdWRlL3V0aWxzL251bWVyaWMuaAppbmRleCBhMzYyYjViZWIy Li5kZmM4Njg4Y2EyIDEwMDY0NAotLS0gYS9zcmMvaW5jbHVkZS91dGlscy9udW1lcmljLmgK KysrIGIvc3JjL2luY2x1ZGUvdXRpbHMvbnVtZXJpYy5oCkBAIC02Myw2ICs2Myw3IEBAIGV4 dGVybiBjaGFyICpudW1lcmljX291dF9zY2koTnVtZXJpYyBudW0sIGludCBzY2FsZSk7CiBl eHRlcm4gY2hhciAqbnVtZXJpY19ub3JtYWxpemUoTnVtZXJpYyBudW0pOwogCiBleHRlcm4g TnVtZXJpYyBpbnQ2NF90b19udW1lcmljKGludDY0IHZhbCk7CitleHRlcm4gTnVtZXJpYyBp bnQ2NF9kaXZfZmFzdF90b19udW1lcmljKGludDY0IHZhbDEsIGludCBsb2cxMHZhbDIpOwog CiBleHRlcm4gTnVtZXJpYyBudW1lcmljX2FkZF9vcHRfZXJyb3IoTnVtZXJpYyBudW0xLCBO dW1lcmljIG51bTIsCiAJCQkJCQkJCQkgYm9vbCAqaGF2ZV9lcnJvcik7CmRpZmYgLS1naXQg YS9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL2NyZWF0ZV92aWV3Lm91dCBiL3NyYy90ZXN0 L3JlZ3Jlc3MvZXhwZWN0ZWQvY3JlYXRlX3ZpZXcub3V0CmluZGV4IDg3ZmQyZmJmZDAuLmY1 MGVmNzY2ODUgMTAwNjQ0Ci0tLSBhL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvY3JlYXRl X3ZpZXcub3V0CisrKyBiL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvY3JlYXRlX3ZpZXcu b3V0CkBAIC0xNzg3LDcgKzE3ODcsNyBAQCBzZWxlY3QKIHNlbGVjdCBwZ19nZXRfdmlld2Rl ZigndHQyMDF2JywgdHJ1ZSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgcGdfZ2V0X3ZpZXdkZWYgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIAogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLSAg U0VMRUNUIGRhdGVfcGFydCgnZGF5Jzo6dGV4dCwgbm93KCkpIEFTIGV4dHIsICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArCisgIFNFTEVDVCBFWFRS QUNUKGRheSBGUk9NIG5vdygpKSBBUyBleHRyLCAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgKwogICAgICAoKG5vdygpLCAnQCAxIGRheSc6 OmludGVydmFsKSBPVkVSTEFQUyAoQ1VSUkVOVF9USU1FU1RBTVAoMiksICdAIDEgZGF5Jzo6 aW50ZXJ2YWwpKSBBUyBvLCsKICAgICAgKCgnZm9vJzo6dGV4dCkgSVMgTk9STUFMSVpFRCkg QVMgaXNuLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICArCiAgICAgICgoJ2Zvbyc6OnRleHQpIElTIE5GS0MgTk9STUFMSVpFRCkgQVMgaXNu biwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKwpkaWZm IC0tZ2l0IGEvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9kYXRlLm91dCBiL3NyYy90ZXN0 L3JlZ3Jlc3MvZXhwZWN0ZWQvZGF0ZS5vdXQKaW5kZXggODNhZDExMWYxYy4uYzhiMDU2NmZm NCAxMDA2NDQKLS0tIGEvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9kYXRlLm91dAorKysg Yi9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL2RhdGUub3V0CkBAIC05NjYsNjYgKzk2Niw2 NiBAQCBTRUxFQ1QgZjEgYXMgImRhdGUiLAogLS0gZXBvY2gKIC0tCiBTRUxFQ1QgRVhUUkFD VChFUE9DSCBGUk9NIERBVEUgICAgICAgICcxOTcwLTAxLTAxJyk7ICAgICAtLSAgMAotIGRh dGVfcGFydCAKLS0tLS0tLS0tLS0tCi0gICAgICAgICAwCisgZXh0cmFjdCAKKy0tLS0tLS0t LQorICAgICAgIDAKICgxIHJvdykKIAogLS0KIC0tIGNlbnR1cnkKIC0tCiBTRUxFQ1QgRVhU UkFDVChDRU5UVVJZIEZST00gREFURSAnMDEwMS0xMi0zMSBCQycpOyAtLSAtMgotIGRhdGVf cGFydCAKLS0tLS0tLS0tLS0tCi0gICAgICAgIC0yCisgZXh0cmFjdCAKKy0tLS0tLS0tLQor ICAgICAgLTIKICgxIHJvdykKIAogU0VMRUNUIEVYVFJBQ1QoQ0VOVFVSWSBGUk9NIERBVEUg JzAxMDAtMTItMzEgQkMnKTsgLS0gLTEKLSBkYXRlX3BhcnQgCi0tLS0tLS0tLS0tLQotICAg ICAgICAtMQorIGV4dHJhY3QgCistLS0tLS0tLS0KKyAgICAgIC0xCiAoMSByb3cpCiAKIFNF TEVDVCBFWFRSQUNUKENFTlRVUlkgRlJPTSBEQVRFICcwMDAxLTEyLTMxIEJDJyk7IC0tIC0x Ci0gZGF0ZV9wYXJ0IAotLS0tLS0tLS0tLS0KLSAgICAgICAgLTEKKyBleHRyYWN0IAorLS0t LS0tLS0tCisgICAgICAtMQogKDEgcm93KQogCiBTRUxFQ1QgRVhUUkFDVChDRU5UVVJZIEZS T00gREFURSAnMDAwMS0wMS0wMScpOyAgICAtLSAgMQotIGRhdGVfcGFydCAKLS0tLS0tLS0t LS0tCi0gICAgICAgICAxCisgZXh0cmFjdCAKKy0tLS0tLS0tLQorICAgICAgIDEKICgxIHJv dykKIAogU0VMRUNUIEVYVFJBQ1QoQ0VOVFVSWSBGUk9NIERBVEUgJzAwMDEtMDEtMDEgQUQn KTsgLS0gIDEKLSBkYXRlX3BhcnQgCi0tLS0tLS0tLS0tLQotICAgICAgICAgMQorIGV4dHJh Y3QgCistLS0tLS0tLS0KKyAgICAgICAxCiAoMSByb3cpCiAKIFNFTEVDVCBFWFRSQUNUKENF TlRVUlkgRlJPTSBEQVRFICcxOTAwLTEyLTMxJyk7ICAgIC0tIDE5Ci0gZGF0ZV9wYXJ0IAot LS0tLS0tLS0tLS0KLSAgICAgICAgMTkKKyBleHRyYWN0IAorLS0tLS0tLS0tCisgICAgICAx OQogKDEgcm93KQogCiBTRUxFQ1QgRVhUUkFDVChDRU5UVVJZIEZST00gREFURSAnMTkwMS0w MS0wMScpOyAgICAtLSAyMAotIGRhdGVfcGFydCAKLS0tLS0tLS0tLS0tCi0gICAgICAgIDIw CisgZXh0cmFjdCAKKy0tLS0tLS0tLQorICAgICAgMjAKICgxIHJvdykKIAogU0VMRUNUIEVY VFJBQ1QoQ0VOVFVSWSBGUk9NIERBVEUgJzIwMDAtMTItMzEnKTsgICAgLS0gMjAKLSBkYXRl X3BhcnQgCi0tLS0tLS0tLS0tLQotICAgICAgICAyMAorIGV4dHJhY3QgCistLS0tLS0tLS0K KyAgICAgIDIwCiAoMSByb3cpCiAKIFNFTEVDVCBFWFRSQUNUKENFTlRVUlkgRlJPTSBEQVRF ICcyMDAxLTAxLTAxJyk7ICAgIC0tIDIxCi0gZGF0ZV9wYXJ0IAotLS0tLS0tLS0tLS0KLSAg ICAgICAgMjEKKyBleHRyYWN0IAorLS0tLS0tLS0tCisgICAgICAyMQogKDEgcm93KQogCiBT RUxFQ1QgRVhUUkFDVChDRU5UVVJZIEZST00gQ1VSUkVOVF9EQVRFKT49MjEgQVMgVHJ1ZTsg ICAgIC0tIHRydWUKQEAgLTEwMzgsMjE3ICsxMDM4LDIxOCBAQCBTRUxFQ1QgRVhUUkFDVChD RU5UVVJZIEZST00gQ1VSUkVOVF9EQVRFKT49MjEgQVMgVHJ1ZTsgICAgIC0tIHRydWUKIC0t IG1pbGxlbm5pdW0KIC0tCiBTRUxFQ1QgRVhUUkFDVChNSUxMRU5OSVVNIEZST00gREFURSAn MDAwMS0xMi0zMSBCQycpOyAtLSAtMQotIGRhdGVfcGFydCAKLS0tLS0tLS0tLS0tCi0gICAg ICAgIC0xCisgZXh0cmFjdCAKKy0tLS0tLS0tLQorICAgICAgLTEKICgxIHJvdykKIAogU0VM RUNUIEVYVFJBQ1QoTUlMTEVOTklVTSBGUk9NIERBVEUgJzAwMDEtMDEtMDEgQUQnKTsgLS0g IDEKLSBkYXRlX3BhcnQgCi0tLS0tLS0tLS0tLQotICAgICAgICAgMQorIGV4dHJhY3QgCist LS0tLS0tLS0KKyAgICAgICAxCiAoMSByb3cpCiAKIFNFTEVDVCBFWFRSQUNUKE1JTExFTk5J VU0gRlJPTSBEQVRFICcxMDAwLTEyLTMxJyk7ICAgIC0tICAxCi0gZGF0ZV9wYXJ0IAotLS0t LS0tLS0tLS0KLSAgICAgICAgIDEKKyBleHRyYWN0IAorLS0tLS0tLS0tCisgICAgICAgMQog KDEgcm93KQogCiBTRUxFQ1QgRVhUUkFDVChNSUxMRU5OSVVNIEZST00gREFURSAnMTAwMS0w MS0wMScpOyAgICAtLSAgMgotIGRhdGVfcGFydCAKLS0tLS0tLS0tLS0tCi0gICAgICAgICAy CisgZXh0cmFjdCAKKy0tLS0tLS0tLQorICAgICAgIDIKICgxIHJvdykKIAogU0VMRUNUIEVY VFJBQ1QoTUlMTEVOTklVTSBGUk9NIERBVEUgJzIwMDAtMTItMzEnKTsgICAgLS0gIDIKLSBk YXRlX3BhcnQgCi0tLS0tLS0tLS0tLQotICAgICAgICAgMgorIGV4dHJhY3QgCistLS0tLS0t LS0KKyAgICAgICAyCiAoMSByb3cpCiAKIFNFTEVDVCBFWFRSQUNUKE1JTExFTk5JVU0gRlJP TSBEQVRFICcyMDAxLTAxLTAxJyk7ICAgIC0tICAzCi0gZGF0ZV9wYXJ0IAotLS0tLS0tLS0t LS0KLSAgICAgICAgIDMKKyBleHRyYWN0IAorLS0tLS0tLS0tCisgICAgICAgMwogKDEgcm93 KQogCiAtLSBuZXh0IHRlc3QgdG8gYmUgZml4ZWQgb24gdGhlIHR1cm4gb2YgdGhlIG5leHQg bWlsbGVubml1bTstKQogU0VMRUNUIEVYVFJBQ1QoTUlMTEVOTklVTSBGUk9NIENVUlJFTlRf REFURSk7ICAgICAgICAgLS0gIDMKLSBkYXRlX3BhcnQgCi0tLS0tLS0tLS0tLQotICAgICAg ICAgMworIGV4dHJhY3QgCistLS0tLS0tLS0KKyAgICAgICAzCiAoMSByb3cpCiAKIC0tCiAt LSBkZWNhZGUKIC0tCiBTRUxFQ1QgRVhUUkFDVChERUNBREUgRlJPTSBEQVRFICcxOTk0LTEy LTI1Jyk7ICAgIC0tIDE5OQotIGRhdGVfcGFydCAKLS0tLS0tLS0tLS0tCi0gICAgICAgMTk5 CisgZXh0cmFjdCAKKy0tLS0tLS0tLQorICAgICAxOTkKICgxIHJvdykKIAogU0VMRUNUIEVY VFJBQ1QoREVDQURFIEZST00gREFURSAnMDAxMC0wMS0wMScpOyAgICAtLSAgIDEKLSBkYXRl X3BhcnQgCi0tLS0tLS0tLS0tLQotICAgICAgICAgMQorIGV4dHJhY3QgCistLS0tLS0tLS0K KyAgICAgICAxCiAoMSByb3cpCiAKIFNFTEVDVCBFWFRSQUNUKERFQ0FERSBGUk9NIERBVEUg JzAwMDktMTItMzEnKTsgICAgLS0gICAwCi0gZGF0ZV9wYXJ0IAotLS0tLS0tLS0tLS0KLSAg ICAgICAgIDAKKyBleHRyYWN0IAorLS0tLS0tLS0tCisgICAgICAgMAogKDEgcm93KQogCiBT RUxFQ1QgRVhUUkFDVChERUNBREUgRlJPTSBEQVRFICcwMDAxLTAxLTAxIEJDJyk7IC0tICAg MAotIGRhdGVfcGFydCAKLS0tLS0tLS0tLS0tCi0gICAgICAgICAwCisgZXh0cmFjdCAKKy0t LS0tLS0tLQorICAgICAgIDAKICgxIHJvdykKIAogU0VMRUNUIEVYVFJBQ1QoREVDQURFIEZS T00gREFURSAnMDAwMi0xMi0zMSBCQycpOyAtLSAgLTEKLSBkYXRlX3BhcnQgCi0tLS0tLS0t LS0tLQotICAgICAgICAtMQorIGV4dHJhY3QgCistLS0tLS0tLS0KKyAgICAgIC0xCiAoMSBy b3cpCiAKIFNFTEVDVCBFWFRSQUNUKERFQ0FERSBGUk9NIERBVEUgJzAwMTEtMDEtMDEgQkMn KTsgLS0gIC0xCi0gZGF0ZV9wYXJ0IAotLS0tLS0tLS0tLS0KLSAgICAgICAgLTEKKyBleHRy YWN0IAorLS0tLS0tLS0tCisgICAgICAtMQogKDEgcm93KQogCiBTRUxFQ1QgRVhUUkFDVChE RUNBREUgRlJPTSBEQVRFICcwMDEyLTEyLTMxIEJDJyk7IC0tICAtMgotIGRhdGVfcGFydCAK LS0tLS0tLS0tLS0tCi0gICAgICAgIC0yCisgZXh0cmFjdCAKKy0tLS0tLS0tLQorICAgICAg LTIKICgxIHJvdykKIAogLS0KIC0tIGFsbCBwb3NzaWJsZSBmaWVsZHMKIC0tCiBTRUxFQ1Qg RVhUUkFDVChNSUNST1NFQ09ORFMgIEZST00gREFURSAnMjAyMC0wOC0xMScpOwotIGRhdGVf cGFydCAKLS0tLS0tLS0tLS0tCi0gICAgICAgICAwCi0oMSByb3cpCi0KK0VSUk9SOiAgZGF0 ZSB1bml0cyAibWljcm9zZWNvbmRzIiBub3Qgc3VwcG9ydGVkCiBTRUxFQ1QgRVhUUkFDVChN SUxMSVNFQ09ORFMgIEZST00gREFURSAnMjAyMC0wOC0xMScpOwotIGRhdGVfcGFydCAKLS0t LS0tLS0tLS0tCi0gICAgICAgICAwCi0oMSByb3cpCi0KK0VSUk9SOiAgZGF0ZSB1bml0cyAi bWlsbGlzZWNvbmRzIiBub3Qgc3VwcG9ydGVkCiBTRUxFQ1QgRVhUUkFDVChTRUNPTkQgICAg ICAgIEZST00gREFURSAnMjAyMC0wOC0xMScpOwotIGRhdGVfcGFydCAKLS0tLS0tLS0tLS0t Ci0gICAgICAgICAwCi0oMSByb3cpCi0KK0VSUk9SOiAgZGF0ZSB1bml0cyAic2Vjb25kIiBu b3Qgc3VwcG9ydGVkCiBTRUxFQ1QgRVhUUkFDVChNSU5VVEUgICAgICAgIEZST00gREFURSAn MjAyMC0wOC0xMScpOwotIGRhdGVfcGFydCAKLS0tLS0tLS0tLS0tCi0gICAgICAgICAwCi0o MSByb3cpCi0KK0VSUk9SOiAgZGF0ZSB1bml0cyAibWludXRlIiBub3Qgc3VwcG9ydGVkCiBT RUxFQ1QgRVhUUkFDVChIT1VSICAgICAgICAgIEZST00gREFURSAnMjAyMC0wOC0xMScpOwot IGRhdGVfcGFydCAKLS0tLS0tLS0tLS0tCi0gICAgICAgICAwCi0oMSByb3cpCi0KK0VSUk9S OiAgZGF0ZSB1bml0cyAiaG91ciIgbm90IHN1cHBvcnRlZAogU0VMRUNUIEVYVFJBQ1QoREFZ ICAgICAgICAgICBGUk9NIERBVEUgJzIwMjAtMDgtMTEnKTsKLSBkYXRlX3BhcnQgCi0tLS0t LS0tLS0tLQotICAgICAgICAxMQorIGV4dHJhY3QgCistLS0tLS0tLS0KKyAgICAgIDExCiAo MSByb3cpCiAKIFNFTEVDVCBFWFRSQUNUKE1PTlRIICAgICAgICAgRlJPTSBEQVRFICcyMDIw LTA4LTExJyk7Ci0gZGF0ZV9wYXJ0IAotLS0tLS0tLS0tLS0KLSAgICAgICAgIDgKKyBleHRy YWN0IAorLS0tLS0tLS0tCisgICAgICAgOAogKDEgcm93KQogCiBTRUxFQ1QgRVhUUkFDVChZ RUFSICAgICAgICAgIEZST00gREFURSAnMjAyMC0wOC0xMScpOwotIGRhdGVfcGFydCAKLS0t LS0tLS0tLS0tCi0gICAgICAyMDIwCisgZXh0cmFjdCAKKy0tLS0tLS0tLQorICAgIDIwMjAK KygxIHJvdykKKworU0VMRUNUIEVYVFJBQ1QoWUVBUiAgICAgICAgICBGUk9NIERBVEUgJzIw MjAtMDgtMTEgQkMnKTsKKyBleHRyYWN0IAorLS0tLS0tLS0tCisgICAtMjAyMAogKDEgcm93 KQogCiBTRUxFQ1QgRVhUUkFDVChERUNBREUgICAgICAgIEZST00gREFURSAnMjAyMC0wOC0x MScpOwotIGRhdGVfcGFydCAKLS0tLS0tLS0tLS0tCi0gICAgICAgMjAyCisgZXh0cmFjdCAK Ky0tLS0tLS0tLQorICAgICAyMDIKICgxIHJvdykKIAogU0VMRUNUIEVYVFJBQ1QoQ0VOVFVS WSAgICAgICBGUk9NIERBVEUgJzIwMjAtMDgtMTEnKTsKLSBkYXRlX3BhcnQgCi0tLS0tLS0t LS0tLQotICAgICAgICAyMQorIGV4dHJhY3QgCistLS0tLS0tLS0KKyAgICAgIDIxCiAoMSBy b3cpCiAKIFNFTEVDVCBFWFRSQUNUKE1JTExFTk5JVU0gICAgRlJPTSBEQVRFICcyMDIwLTA4 LTExJyk7Ci0gZGF0ZV9wYXJ0IAotLS0tLS0tLS0tLS0KLSAgICAgICAgIDMKKyBleHRyYWN0 IAorLS0tLS0tLS0tCisgICAgICAgMwogKDEgcm93KQogCiBTRUxFQ1QgRVhUUkFDVChJU09Z RUFSICAgICAgIEZST00gREFURSAnMjAyMC0wOC0xMScpOwotIGRhdGVfcGFydCAKLS0tLS0t LS0tLS0tCi0gICAgICAyMDIwCisgZXh0cmFjdCAKKy0tLS0tLS0tLQorICAgIDIwMjAKKygx IHJvdykKKworU0VMRUNUIEVYVFJBQ1QoSVNPWUVBUiAgICAgICBGUk9NIERBVEUgJzIwMjAt MDgtMTEgQkMnKTsKKyBleHRyYWN0IAorLS0tLS0tLS0tCisgICAtMjAyMAogKDEgcm93KQog CiBTRUxFQ1QgRVhUUkFDVChRVUFSVEVSICAgICAgIEZST00gREFURSAnMjAyMC0wOC0xMScp OwotIGRhdGVfcGFydCAKLS0tLS0tLS0tLS0tCi0gICAgICAgICAzCisgZXh0cmFjdCAKKy0t LS0tLS0tLQorICAgICAgIDMKICgxIHJvdykKIAogU0VMRUNUIEVYVFJBQ1QoV0VFSyAgICAg ICAgICBGUk9NIERBVEUgJzIwMjAtMDgtMTEnKTsKLSBkYXRlX3BhcnQgCi0tLS0tLS0tLS0t LQotICAgICAgICAzMworIGV4dHJhY3QgCistLS0tLS0tLS0KKyAgICAgIDMzCiAoMSByb3cp CiAKIFNFTEVDVCBFWFRSQUNUKERPVyAgICAgICAgICAgRlJPTSBEQVRFICcyMDIwLTA4LTEx Jyk7Ci0gZGF0ZV9wYXJ0IAotLS0tLS0tLS0tLS0KLSAgICAgICAgIDIKKyBleHRyYWN0IAor LS0tLS0tLS0tCisgICAgICAgMgorKDEgcm93KQorCitTRUxFQ1QgRVhUUkFDVChET1cgICAg ICAgICAgIEZST00gREFURSAnMjAyMC0wOC0xNicpOworIGV4dHJhY3QgCistLS0tLS0tLS0K KyAgICAgICAwCiAoMSByb3cpCiAKIFNFTEVDVCBFWFRSQUNUKElTT0RPVyAgICAgICAgRlJP TSBEQVRFICcyMDIwLTA4LTExJyk7Ci0gZGF0ZV9wYXJ0IAotLS0tLS0tLS0tLS0KLSAgICAg ICAgIDIKKyBleHRyYWN0IAorLS0tLS0tLS0tCisgICAgICAgMgorKDEgcm93KQorCitTRUxF Q1QgRVhUUkFDVChJU09ET1cgICAgICAgIEZST00gREFURSAnMjAyMC0wOC0xNicpOworIGV4 dHJhY3QgCistLS0tLS0tLS0KKyAgICAgICA3CiAoMSByb3cpCiAKIFNFTEVDVCBFWFRSQUNU KERPWSAgICAgICAgICAgRlJPTSBEQVRFICcyMDIwLTA4LTExJyk7Ci0gZGF0ZV9wYXJ0IAot LS0tLS0tLS0tLS0KLSAgICAgICAyMjQKKyBleHRyYWN0IAorLS0tLS0tLS0tCisgICAgIDIy NAogKDEgcm93KQogCiBTRUxFQ1QgRVhUUkFDVChUSU1FWk9ORSAgICAgIEZST00gREFURSAn MjAyMC0wOC0xMScpOwotRVJST1I6ICB0aW1lc3RhbXAgdW5pdHMgInRpbWV6b25lIiBub3Qg c3VwcG9ydGVkCi1DT05URVhUOiAgU1FMIGZ1bmN0aW9uICJkYXRlX3BhcnQiIHN0YXRlbWVu dCAxCitFUlJPUjogIGRhdGUgdW5pdHMgInRpbWV6b25lIiBub3Qgc3VwcG9ydGVkCiBTRUxF Q1QgRVhUUkFDVChUSU1FWk9ORV9NICAgIEZST00gREFURSAnMjAyMC0wOC0xMScpOwotRVJS T1I6ICB0aW1lc3RhbXAgdW5pdHMgInRpbWV6b25lX20iIG5vdCBzdXBwb3J0ZWQKLUNPTlRF WFQ6ICBTUUwgZnVuY3Rpb24gImRhdGVfcGFydCIgc3RhdGVtZW50IDEKK0VSUk9SOiAgZGF0 ZSB1bml0cyAidGltZXpvbmVfbSIgbm90IHN1cHBvcnRlZAogU0VMRUNUIEVYVFJBQ1QoVElN RVpPTkVfSCAgICBGUk9NIERBVEUgJzIwMjAtMDgtMTEnKTsKLUVSUk9SOiAgdGltZXN0YW1w IHVuaXRzICJ0aW1lem9uZV9oIiBub3Qgc3VwcG9ydGVkCi1DT05URVhUOiAgU1FMIGZ1bmN0 aW9uICJkYXRlX3BhcnQiIHN0YXRlbWVudCAxCitFUlJPUjogIGRhdGUgdW5pdHMgInRpbWV6 b25lX2giIG5vdCBzdXBwb3J0ZWQKIFNFTEVDVCBFWFRSQUNUKEVQT0NIICAgICAgICAgRlJP TSBEQVRFICcyMDIwLTA4LTExJyk7Ci0gZGF0ZV9wYXJ0ICAKKyAgZXh0cmFjdCAgIAogLS0t LS0tLS0tLS0tCiAgMTU5NzEwNDAwMAogKDEgcm93KQogCiBTRUxFQ1QgRVhUUkFDVChKVUxJ QU4gICAgICAgIEZST00gREFURSAnMjAyMC0wOC0xMScpOwotIGRhdGVfcGFydCAKLS0tLS0t LS0tLS0tCi0gICAyNDU5MDczCisgZXh0cmFjdCAKKy0tLS0tLS0tLQorIDI0NTkwNzMKICgx IHJvdykKIAogLS0KQEAgLTEzNDQsMTczICsxMzQ1LDEyNCBAQCBzZWxlY3QgaXNmaW5pdGUo J2luZmluaXR5Jzo6ZGF0ZSksIGlzZmluaXRlKCctaW5maW5pdHknOjpkYXRlKSwgaXNmaW5p dGUoJ3RvZGF5JwogLS0KIC0tIG9zY2lsbGF0aW5nIGZpZWxkcyBmcm9tIG5vbi1maW5pdGUg ZGF0ZToKIC0tCi1TRUxFQ1QgRVhUUkFDVChIT1VSIEZST00gREFURSAnaW5maW5pdHknKTsg ICAgICAtLSBOVUxMCi0gZGF0ZV9wYXJ0IAotLS0tLS0tLS0tLS0KLSAgICAgICAgICAKLSgx IHJvdykKLQotU0VMRUNUIEVYVFJBQ1QoSE9VUiBGUk9NIERBVEUgJy1pbmZpbml0eScpOyAg ICAgLS0gTlVMTAotIGRhdGVfcGFydCAKLS0tLS0tLS0tLS0tCi0gICAgICAgICAgCi0oMSBy b3cpCi0KLS0tIGFsbCBwb3NzaWJsZSBmaWVsZHMKLVNFTEVDVCBFWFRSQUNUKE1JQ1JPU0VD T05EUyAgRlJPTSBEQVRFICdpbmZpbml0eScpOyAgICAtLSBOVUxMCi0gZGF0ZV9wYXJ0IAot LS0tLS0tLS0tLS0KLSAgICAgICAgICAKLSgxIHJvdykKLQotU0VMRUNUIEVYVFJBQ1QoTUlM TElTRUNPTkRTICBGUk9NIERBVEUgJ2luZmluaXR5Jyk7ICAgIC0tIE5VTEwKLSBkYXRlX3Bh cnQgCi0tLS0tLS0tLS0tLQotICAgICAgICAgIAotKDEgcm93KQotCi1TRUxFQ1QgRVhUUkFD VChTRUNPTkQgICAgICAgIEZST00gREFURSAnaW5maW5pdHknKTsgICAgLS0gTlVMTAotIGRh dGVfcGFydCAKLS0tLS0tLS0tLS0tCi0gICAgICAgICAgCi0oMSByb3cpCi0KLVNFTEVDVCBF WFRSQUNUKE1JTlVURSAgICAgICAgRlJPTSBEQVRFICdpbmZpbml0eScpOyAgICAtLSBOVUxM Ci0gZGF0ZV9wYXJ0IAotLS0tLS0tLS0tLS0KLSAgICAgICAgICAKK1NFTEVDVCBFWFRSQUNU KERBWSBGUk9NIERBVEUgJ2luZmluaXR5Jyk7ICAgICAgLS0gTlVMTAorIGV4dHJhY3QgCist LS0tLS0tLS0KKyAgICAgICAgCiAoMSByb3cpCiAKLVNFTEVDVCBFWFRSQUNUKEhPVVIgICAg ICAgICAgRlJPTSBEQVRFICdpbmZpbml0eScpOyAgICAtLSBOVUxMCi0gZGF0ZV9wYXJ0IAot LS0tLS0tLS0tLS0KLSAgICAgICAgICAKK1NFTEVDVCBFWFRSQUNUKERBWSBGUk9NIERBVEUg Jy1pbmZpbml0eScpOyAgICAgLS0gTlVMTAorIGV4dHJhY3QgCistLS0tLS0tLS0KKyAgICAg ICAgCiAoMSByb3cpCiAKKy0tIGFsbCBzdXBwb3J0ZWQgZmllbGRzCiBTRUxFQ1QgRVhUUkFD VChEQVkgICAgICAgICAgIEZST00gREFURSAnaW5maW5pdHknKTsgICAgLS0gTlVMTAotIGRh dGVfcGFydCAKLS0tLS0tLS0tLS0tCi0gICAgICAgICAgCisgZXh0cmFjdCAKKy0tLS0tLS0t LQorICAgICAgICAKICgxIHJvdykKIAogU0VMRUNUIEVYVFJBQ1QoTU9OVEggICAgICAgICBG Uk9NIERBVEUgJ2luZmluaXR5Jyk7ICAgIC0tIE5VTEwKLSBkYXRlX3BhcnQgCi0tLS0tLS0t LS0tLQotICAgICAgICAgIAorIGV4dHJhY3QgCistLS0tLS0tLS0KKyAgICAgICAgCiAoMSBy b3cpCiAKIFNFTEVDVCBFWFRSQUNUKFFVQVJURVIgICAgICAgRlJPTSBEQVRFICdpbmZpbml0 eScpOyAgICAtLSBOVUxMCi0gZGF0ZV9wYXJ0IAotLS0tLS0tLS0tLS0KLSAgICAgICAgICAK KyBleHRyYWN0IAorLS0tLS0tLS0tCisgICAgICAgIAogKDEgcm93KQogCiBTRUxFQ1QgRVhU UkFDVChXRUVLICAgICAgICAgIEZST00gREFURSAnaW5maW5pdHknKTsgICAgLS0gTlVMTAot IGRhdGVfcGFydCAKLS0tLS0tLS0tLS0tCi0gICAgICAgICAgCisgZXh0cmFjdCAKKy0tLS0t LS0tLQorICAgICAgICAKICgxIHJvdykKIAogU0VMRUNUIEVYVFJBQ1QoRE9XICAgICAgICAg ICBGUk9NIERBVEUgJ2luZmluaXR5Jyk7ICAgIC0tIE5VTEwKLSBkYXRlX3BhcnQgCi0tLS0t LS0tLS0tLQotICAgICAgICAgIAorIGV4dHJhY3QgCistLS0tLS0tLS0KKyAgICAgICAgCiAo MSByb3cpCiAKIFNFTEVDVCBFWFRSQUNUKElTT0RPVyAgICAgICAgRlJPTSBEQVRFICdpbmZp bml0eScpOyAgICAtLSBOVUxMCi0gZGF0ZV9wYXJ0IAotLS0tLS0tLS0tLS0KLSAgICAgICAg ICAKKyBleHRyYWN0IAorLS0tLS0tLS0tCisgICAgICAgIAogKDEgcm93KQogCiBTRUxFQ1Qg RVhUUkFDVChET1kgICAgICAgICAgIEZST00gREFURSAnaW5maW5pdHknKTsgICAgLS0gTlVM TAotIGRhdGVfcGFydCAKLS0tLS0tLS0tLS0tCi0gICAgICAgICAgCi0oMSByb3cpCi0KLVNF TEVDVCBFWFRSQUNUKFRJTUVaT05FICAgICAgRlJPTSBEQVRFICdpbmZpbml0eScpOyAgICAt LSBOVUxMCi0gZGF0ZV9wYXJ0IAotLS0tLS0tLS0tLS0KLSAgICAgICAgICAKLSgxIHJvdykK LQotU0VMRUNUIEVYVFJBQ1QoVElNRVpPTkVfTSAgICBGUk9NIERBVEUgJ2luZmluaXR5Jyk7 ICAgIC0tIE5VTEwKLSBkYXRlX3BhcnQgCi0tLS0tLS0tLS0tLQotICAgICAgICAgIAotKDEg cm93KQotCi1TRUxFQ1QgRVhUUkFDVChUSU1FWk9ORV9IICAgIEZST00gREFURSAnaW5maW5p dHknKTsgICAgLS0gTlVMTAotIGRhdGVfcGFydCAKLS0tLS0tLS0tLS0tCi0gICAgICAgICAg CisgZXh0cmFjdCAKKy0tLS0tLS0tLQorICAgICAgICAKICgxIHJvdykKIAogLS0KIC0tIG1v bm90b25pYyBmaWVsZHMgZnJvbSBub24tZmluaXRlIGRhdGU6CiAtLQogU0VMRUNUIEVYVFJB Q1QoRVBPQ0ggRlJPTSBEQVRFICdpbmZpbml0eScpOyAgICAgICAgIC0tICBJbmZpbml0eQot IGRhdGVfcGFydCAKLS0tLS0tLS0tLS0tCi0gIEluZmluaXR5CisgZXh0cmFjdCAgCistLS0t LS0tLS0tCisgSW5maW5pdHkKICgxIHJvdykKIAogU0VMRUNUIEVYVFJBQ1QoRVBPQ0ggRlJP TSBEQVRFICctaW5maW5pdHknKTsgICAgICAgIC0tIC1JbmZpbml0eQotIGRhdGVfcGFydCAK KyAgZXh0cmFjdCAgCiAtLS0tLS0tLS0tLQogIC1JbmZpbml0eQogKDEgcm93KQogCi0tLSBh bGwgcG9zc2libGUgZmllbGRzCistLSBhbGwgc3VwcG9ydGVkIGZpZWxkcwogU0VMRUNUIEVY VFJBQ1QoWUVBUiAgICAgICBGUk9NIERBVEUgJ2luZmluaXR5Jyk7ICAgIC0tICBJbmZpbml0 eQotIGRhdGVfcGFydCAKLS0tLS0tLS0tLS0tCi0gIEluZmluaXR5CisgZXh0cmFjdCAgCist LS0tLS0tLS0tCisgSW5maW5pdHkKICgxIHJvdykKIAogU0VMRUNUIEVYVFJBQ1QoREVDQURF ICAgICBGUk9NIERBVEUgJ2luZmluaXR5Jyk7ICAgIC0tICBJbmZpbml0eQotIGRhdGVfcGFy dCAKLS0tLS0tLS0tLS0tCi0gIEluZmluaXR5CisgZXh0cmFjdCAgCistLS0tLS0tLS0tCisg SW5maW5pdHkKICgxIHJvdykKIAogU0VMRUNUIEVYVFJBQ1QoQ0VOVFVSWSAgICBGUk9NIERB VEUgJ2luZmluaXR5Jyk7ICAgIC0tICBJbmZpbml0eQotIGRhdGVfcGFydCAKLS0tLS0tLS0t LS0tCi0gIEluZmluaXR5CisgZXh0cmFjdCAgCistLS0tLS0tLS0tCisgSW5maW5pdHkKICgx IHJvdykKIAogU0VMRUNUIEVYVFJBQ1QoTUlMTEVOTklVTSBGUk9NIERBVEUgJ2luZmluaXR5 Jyk7ICAgIC0tICBJbmZpbml0eQotIGRhdGVfcGFydCAKLS0tLS0tLS0tLS0tCi0gIEluZmlu aXR5CisgZXh0cmFjdCAgCistLS0tLS0tLS0tCisgSW5maW5pdHkKICgxIHJvdykKIAogU0VM RUNUIEVYVFJBQ1QoSlVMSUFOICAgICBGUk9NIERBVEUgJ2luZmluaXR5Jyk7ICAgIC0tICBJ bmZpbml0eQotIGRhdGVfcGFydCAKLS0tLS0tLS0tLS0tCi0gIEluZmluaXR5CisgZXh0cmFj dCAgCistLS0tLS0tLS0tCisgSW5maW5pdHkKICgxIHJvdykKIAogU0VMRUNUIEVYVFJBQ1Qo SVNPWUVBUiAgICBGUk9NIERBVEUgJ2luZmluaXR5Jyk7ICAgIC0tICBJbmZpbml0eQotIGRh dGVfcGFydCAKLS0tLS0tLS0tLS0tCi0gIEluZmluaXR5CisgZXh0cmFjdCAgCistLS0tLS0t LS0tCisgSW5maW5pdHkKICgxIHJvdykKIAogU0VMRUNUIEVYVFJBQ1QoRVBPQ0ggICAgICBG Uk9NIERBVEUgJ2luZmluaXR5Jyk7ICAgIC0tICBJbmZpbml0eQotIGRhdGVfcGFydCAKLS0t LS0tLS0tLS0tCi0gIEluZmluaXR5CisgZXh0cmFjdCAgCistLS0tLS0tLS0tCisgSW5maW5p dHkKICgxIHJvdykKIAogLS0KIC0tIHdyb25nIGZpZWxkcyBmcm9tIG5vbi1maW5pdGUgZGF0 ZToKIC0tCi1TRUxFQ1QgRVhUUkFDVChNSUNST1NFQyAgRlJPTSBEQVRFICdpbmZpbml0eScp OyAgICAgLS0gRVJST1I6ICB0aW1lc3RhbXAgdW5pdHMgIm1pY3Jvc2VjIiBub3QgcmVjb2du aXplZAotRVJST1I6ICB0aW1lc3RhbXAgdW5pdHMgIm1pY3Jvc2VjIiBub3QgcmVjb2duaXpl ZAotQ09OVEVYVDogIFNRTCBmdW5jdGlvbiAiZGF0ZV9wYXJ0IiBzdGF0ZW1lbnQgMQorU0VM RUNUIEVYVFJBQ1QoTUlDUk9TRUMgIEZST00gREFURSAnaW5maW5pdHknKTsgICAgIC0tIGVy cm9yCitFUlJPUjogIGRhdGUgdW5pdHMgIm1pY3Jvc2VjIiBub3QgcmVjb2duaXplZAogLS0g dGVzdCBjb25zdHJ1Y3RvcnMKIHNlbGVjdCBtYWtlX2RhdGUoMjAxMywgNywgMTUpOwogIG1h a2VfZGF0ZSAgCmRpZmYgLS1naXQgYS9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL2ludGVy dmFsLm91dCBiL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvaW50ZXJ2YWwub3V0CmluZGV4 IGM1ZmZhOWYyY2MuLjAxOTE5NDkxMzcgMTAwNjQ0Ci0tLSBhL3NyYy90ZXN0L3JlZ3Jlc3Mv ZXhwZWN0ZWQvaW50ZXJ2YWwub3V0CisrKyBiL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQv aW50ZXJ2YWwub3V0CkBAIC05NDgsMTggKzk0OCwxOCBAQCBTRUxFQ1QgZjEsCiAgICAgRVhU UkFDVChNSUxMRU5OSVVNIEZST00gZjEpIEFTIE1JTExFTk5JVU0sCiAgICAgRVhUUkFDVChF UE9DSCBGUk9NIGYxKSBBUyBFUE9DSAogICAgIEZST00gSU5URVJWQUxfVEJMOwotICAgICAg ICAgICAgICBmMSAgICAgICAgICAgICAgIHwgbWljcm9zZWNvbmQgfCBtaWxsaXNlY29uZCB8 IHNlY29uZCB8IG1pbnV0ZSB8IGhvdXIgfCBkYXkgfCBtb250aCB8IHF1YXJ0ZXIgfCB5ZWFy IHwgZGVjYWRlIHwgY2VudHVyeSB8IG1pbGxlbm5pdW0gfCAgIGVwb2NoICAgIAotLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0r LS0tLS0tLS0rLS0tLS0tLS0rLS0tLS0tKy0tLS0tKy0tLS0tLS0rLS0tLS0tLS0tKy0tLS0t LSstLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQotIEAgMSBt aW4gICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgIDAgfCAgICAgICAgICAgMCB8 ICAgICAgMCB8ICAgICAgMSB8ICAgIDAgfCAgIDAgfCAgICAgMCB8ICAgICAgIDEgfCAgICAw IHwgICAgICAwIHwgICAgICAgMCB8ICAgICAgICAgIDAgfCAgICAgICAgIDYwCi0gQCA1IGhv dXJzICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgMCB8ICAgICAgICAgICAwIHwg ICAgICAwIHwgICAgICAwIHwgICAgNSB8ICAgMCB8ICAgICAwIHwgICAgICAgMSB8ICAgIDAg fCAgICAgIDAgfCAgICAgICAwIHwgICAgICAgICAgMCB8ICAgICAgMTgwMDAKLSBAIDEwIGRh eXMgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAwIHwgICAgICAgICAgIDAgfCAg ICAgIDAgfCAgICAgIDAgfCAgICAwIHwgIDEwIHwgICAgIDAgfCAgICAgICAxIHwgICAgMCB8 ICAgICAgMCB8ICAgICAgIDAgfCAgICAgICAgICAwIHwgICAgIDg2NDAwMAotIEAgMzQgeWVh cnMgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgIDAgfCAgICAgICAgICAgMCB8ICAg ICAgMCB8ICAgICAgMCB8ICAgIDAgfCAgIDAgfCAgICAgMCB8ICAgICAgIDEgfCAgIDM0IHwg ICAgICAzIHwgICAgICAgMCB8ICAgICAgICAgIDAgfCAxMDcyOTU4NDAwCi0gQCAzIG1vbnMg ICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgMCB8ICAgICAgICAgICAwIHwgICAg ICAwIHwgICAgICAwIHwgICAgMCB8ICAgMCB8ICAgICAzIHwgICAgICAgMiB8ICAgIDAgfCAg ICAgIDAgfCAgICAgICAwIHwgICAgICAgICAgMCB8ICAgIDc3NzYwMDAKLSBAIDE0IHNlY3Mg YWdvICAgICAgICAgICAgICAgICB8ICAgLTE0MDAwMDAwIHwgICAgICAtMTQwMDAgfCAgICAt MTQgfCAgICAgIDAgfCAgICAwIHwgICAwIHwgICAgIDAgfCAgICAgICAxIHwgICAgMCB8ICAg ICAgMCB8ICAgICAgIDAgfCAgICAgICAgICAwIHwgICAgICAgIC0xNAotIEAgMSBkYXkgMiBo b3VycyAzIG1pbnMgNCBzZWNzIHwgICAgIDQwMDAwMDAgfCAgICAgICAgNDAwMCB8ICAgICAg NCB8ICAgICAgMyB8ICAgIDIgfCAgIDEgfCAgICAgMCB8ICAgICAgIDEgfCAgICAwIHwgICAg ICAwIHwgICAgICAgMCB8ICAgICAgICAgIDAgfCAgICAgIDkzNzg0Ci0gQCA2IHllYXJzICAg ICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgMCB8ICAgICAgICAgICAwIHwgICAgICAw IHwgICAgICAwIHwgICAgMCB8ICAgMCB8ICAgICAwIHwgICAgICAgMSB8ICAgIDYgfCAgICAg IDAgfCAgICAgICAwIHwgICAgICAgICAgMCB8ICAxODkzNDU2MDAKLSBAIDUgbW9ucyAgICAg ICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAwIHwgICAgICAgICAgIDAgfCAgICAgIDAg fCAgICAgIDAgfCAgICAwIHwgICAwIHwgICAgIDUgfCAgICAgICAyIHwgICAgMCB8ICAgICAg MCB8ICAgICAgIDAgfCAgICAgICAgICAwIHwgICAxMjk2MDAwMAotIEAgNSBtb25zIDEyIGhv dXJzICAgICAgICAgICAgIHwgICAgICAgICAgIDAgfCAgICAgICAgICAgMCB8ICAgICAgMCB8 ICAgICAgMCB8ICAgMTIgfCAgIDAgfCAgICAgNSB8ICAgICAgIDIgfCAgICAwIHwgICAgICAw IHwgICAgICAgMCB8ICAgICAgICAgIDAgfCAgIDEzMDAzMjAwCisgICAgICAgICAgICAgIGYx ICAgICAgICAgICAgICAgfCBtaWNyb3NlY29uZCB8IG1pbGxpc2Vjb25kIHwgICBzZWNvbmQg ICB8IG1pbnV0ZSB8IGhvdXIgfCBkYXkgfCBtb250aCB8IHF1YXJ0ZXIgfCB5ZWFyIHwgZGVj YWRlIHwgY2VudHVyeSB8IG1pbGxlbm5pdW0gfCAgICAgICBlcG9jaCAgICAgICAKKy0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0tLSstLS0tLS0tLSstLS0tLS0rLS0tLS0rLS0tLS0tLSstLS0tLS0tLS0r LS0tLS0tKy0tLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0t LS0tLQorIEAgMSBtaW4gICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgIDAgfCAg ICAgICAwLjAwMCB8ICAgMC4wMDAwMDAgfCAgICAgIDEgfCAgICAwIHwgICAwIHwgICAgIDAg fCAgICAgICAxIHwgICAgMCB8ICAgICAgMCB8ICAgICAgIDAgfCAgICAgICAgICAwIHwgICAg ICAgICA2MC4wMDAwMDAKKyBAIDUgaG91cnMgICAgICAgICAgICAgICAgICAgICB8ICAgICAg ICAgICAwIHwgICAgICAgMC4wMDAgfCAgIDAuMDAwMDAwIHwgICAgICAwIHwgICAgNSB8ICAg MCB8ICAgICAwIHwgICAgICAgMSB8ICAgIDAgfCAgICAgIDAgfCAgICAgICAwIHwgICAgICAg ICAgMCB8ICAgICAgMTgwMDAuMDAwMDAwCisgQCAxMCBkYXlzICAgICAgICAgICAgICAgICAg ICAgfCAgICAgICAgICAgMCB8ICAgICAgIDAuMDAwIHwgICAwLjAwMDAwMCB8ICAgICAgMCB8 ICAgIDAgfCAgMTAgfCAgICAgMCB8ICAgICAgIDEgfCAgICAwIHwgICAgICAwIHwgICAgICAg MCB8ICAgICAgICAgIDAgfCAgICAgODY0MDAwLjAwMDAwMAorIEAgMzQgeWVhcnMgICAgICAg ICAgICAgICAgICAgIHwgICAgICAgICAgIDAgfCAgICAgICAwLjAwMCB8ICAgMC4wMDAwMDAg fCAgICAgIDAgfCAgICAwIHwgICAwIHwgICAgIDAgfCAgICAgICAxIHwgICAzNCB8ICAgICAg MyB8ICAgICAgIDAgfCAgICAgICAgICAwIHwgMTA3MjIyNDAwMC4wMDAwMDAKKyBAIDMgbW9u cyAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAwIHwgICAgICAgMC4wMDAgfCAg IDAuMDAwMDAwIHwgICAgICAwIHwgICAgMCB8ICAgMCB8ICAgICAzIHwgICAgICAgMiB8ICAg IDAgfCAgICAgIDAgfCAgICAgICAwIHwgICAgICAgICAgMCB8ICAgIDc3NzYwMDAuMDAwMDAw CisgQCAxNCBzZWNzIGFnbyAgICAgICAgICAgICAgICAgfCAgIC0xNDAwMDAwMCB8ICAtMTQw MDAuMDAwIHwgLTE0LjAwMDAwMCB8ICAgICAgMCB8ICAgIDAgfCAgIDAgfCAgICAgMCB8ICAg ICAgIDEgfCAgICAwIHwgICAgICAwIHwgICAgICAgMCB8ICAgICAgICAgIDAgfCAgICAgICAg LTE0LjAwMDAwMAorIEAgMSBkYXkgMiBob3VycyAzIG1pbnMgNCBzZWNzIHwgICAgIDQwMDAw MDAgfCAgICA0MDAwLjAwMCB8ICAgNC4wMDAwMDAgfCAgICAgIDMgfCAgICAyIHwgICAxIHwg ICAgIDAgfCAgICAgICAxIHwgICAgMCB8ICAgICAgMCB8ICAgICAgIDAgfCAgICAgICAgICAw IHwgICAgICA5Mzc4NC4wMDAwMDAKKyBAIDYgeWVhcnMgICAgICAgICAgICAgICAgICAgICB8 ICAgICAgICAgICAwIHwgICAgICAgMC4wMDAgfCAgIDAuMDAwMDAwIHwgICAgICAwIHwgICAg MCB8ICAgMCB8ICAgICAwIHwgICAgICAgMSB8ICAgIDYgfCAgICAgIDAgfCAgICAgICAwIHwg ICAgICAgICAgMCB8ICAxODkyMTYwMDAuMDAwMDAwCisgQCA1IG1vbnMgICAgICAgICAgICAg ICAgICAgICAgfCAgICAgICAgICAgMCB8ICAgICAgIDAuMDAwIHwgICAwLjAwMDAwMCB8ICAg ICAgMCB8ICAgIDAgfCAgIDAgfCAgICAgNSB8ICAgICAgIDIgfCAgICAwIHwgICAgICAwIHwg ICAgICAgMCB8ICAgICAgICAgIDAgfCAgIDEyOTYwMDAwLjAwMDAwMAorIEAgNSBtb25zIDEy IGhvdXJzICAgICAgICAgICAgIHwgICAgICAgICAgIDAgfCAgICAgICAwLjAwMCB8ICAgMC4w MDAwMDAgfCAgICAgIDAgfCAgIDEyIHwgICAwIHwgICAgIDUgfCAgICAgICAyIHwgICAgMCB8 ICAgICAgMCB8ICAgICAgIDAgfCAgICAgICAgICAwIHwgICAxMzAwMzIwMC4wMDAwMDAKICgx MCByb3dzKQogCiBTRUxFQ1QgRVhUUkFDVChGT1JUTklHSFQgRlJPTSBJTlRFUlZBTCAnMiBk YXlzJyk7ICAtLSBlcnJvcgpAQCAtOTY3LDUwICs5NjcsNzkgQEAgRVJST1I6ICBpbnRlcnZh bCB1bml0cyAiZm9ydG5pZ2h0IiBub3QgcmVjb2duaXplZAogU0VMRUNUIEVYVFJBQ1QoVElN RVpPTkUgRlJPTSBJTlRFUlZBTCAnMiBkYXlzJyk7ICAtLSBlcnJvcgogRVJST1I6ICBpbnRl cnZhbCB1bml0cyAidGltZXpvbmUiIG5vdCBzdXBwb3J0ZWQKIFNFTEVDVCBFWFRSQUNUKERF Q0FERSBGUk9NIElOVEVSVkFMICcxMDAgeScpOwotIGRhdGVfcGFydCAKLS0tLS0tLS0tLS0t Ci0gICAgICAgIDEwCisgZXh0cmFjdCAKKy0tLS0tLS0tLQorICAgICAgMTAKICgxIHJvdykK IAogU0VMRUNUIEVYVFJBQ1QoREVDQURFIEZST00gSU5URVJWQUwgJzk5IHknKTsKLSBkYXRl X3BhcnQgCi0tLS0tLS0tLS0tLQotICAgICAgICAgOQorIGV4dHJhY3QgCistLS0tLS0tLS0K KyAgICAgICA5CiAoMSByb3cpCiAKIFNFTEVDVCBFWFRSQUNUKERFQ0FERSBGUk9NIElOVEVS VkFMICctOTkgeScpOwotIGRhdGVfcGFydCAKLS0tLS0tLS0tLS0tCi0gICAgICAgIC05Cisg ZXh0cmFjdCAKKy0tLS0tLS0tLQorICAgICAgLTkKICgxIHJvdykKIAogU0VMRUNUIEVYVFJB Q1QoREVDQURFIEZST00gSU5URVJWQUwgJy0xMDAgeScpOwotIGRhdGVfcGFydCAKLS0tLS0t LS0tLS0tCi0gICAgICAgLTEwCisgZXh0cmFjdCAKKy0tLS0tLS0tLQorICAgICAtMTAKICgx IHJvdykKIAogU0VMRUNUIEVYVFJBQ1QoQ0VOVFVSWSBGUk9NIElOVEVSVkFMICcxMDAgeScp OwotIGRhdGVfcGFydCAKLS0tLS0tLS0tLS0tCi0gICAgICAgICAxCisgZXh0cmFjdCAKKy0t LS0tLS0tLQorICAgICAgIDEKICgxIHJvdykKIAogU0VMRUNUIEVYVFJBQ1QoQ0VOVFVSWSBG Uk9NIElOVEVSVkFMICc5OSB5Jyk7Ci0gZGF0ZV9wYXJ0IAotLS0tLS0tLS0tLS0KLSAgICAg ICAgIDAKKyBleHRyYWN0IAorLS0tLS0tLS0tCisgICAgICAgMAogKDEgcm93KQogCiBTRUxF Q1QgRVhUUkFDVChDRU5UVVJZIEZST00gSU5URVJWQUwgJy05OSB5Jyk7Ci0gZGF0ZV9wYXJ0 IAotLS0tLS0tLS0tLS0KLSAgICAgICAgIDAKKyBleHRyYWN0IAorLS0tLS0tLS0tCisgICAg ICAgMAogKDEgcm93KQogCiBTRUxFQ1QgRVhUUkFDVChDRU5UVVJZIEZST00gSU5URVJWQUwg Jy0xMDAgeScpOwotIGRhdGVfcGFydCAKLS0tLS0tLS0tLS0tCi0gICAgICAgIC0xCisgZXh0 cmFjdCAKKy0tLS0tLS0tLQorICAgICAgLTEKKygxIHJvdykKKworLS0gZGF0ZV9wYXJ0IGlt cGxlbWVudGF0aW9uIGlzIG1vc3RseSB0aGUgc2FtZSBhcyBleHRyYWN0LCBzbyBvbmx5Cist LSB0ZXN0IGEgZmV3IGNhc2VzIGZvciBhZGRpdGlvbmFsIGNvdmVyYWdlLgorU0VMRUNUIGYx LAorICAgIGRhdGVfcGFydCgnbWljcm9zZWNvbmQnLCBmMSkgQVMgbWljcm9zZWNvbmQsCisg ICAgZGF0ZV9wYXJ0KCdtaWxsaXNlY29uZCcsIGYxKSBBUyBtaWxsaXNlY29uZCwKKyAgICBk YXRlX3BhcnQoJ3NlY29uZCcsIGYxKSBBUyBzZWNvbmQsCisgICAgZGF0ZV9wYXJ0KCdlcG9j aCcsIGYxKSBBUyBlcG9jaAorICAgIEZST00gSU5URVJWQUxfVEJMOworICAgICAgICAgICAg ICBmMSAgICAgICAgICAgICAgIHwgbWljcm9zZWNvbmQgfCBtaWxsaXNlY29uZCB8IHNlY29u ZCB8ICAgZXBvY2ggICAgCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tLSstLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBAIDEgbWlu ICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAwIHwgICAgICAgICAgIDAgfCAg ICAgIDAgfCAgICAgICAgIDYwCisgQCA1IGhvdXJzICAgICAgICAgICAgICAgICAgICAgfCAg ICAgICAgICAgMCB8ICAgICAgICAgICAwIHwgICAgICAwIHwgICAgICAxODAwMAorIEAgMTAg ZGF5cyAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgIDAgfCAgICAgICAgICAgMCB8 ICAgICAgMCB8ICAgICA4NjQwMDAKKyBAIDM0IHllYXJzICAgICAgICAgICAgICAgICAgICB8 ICAgICAgICAgICAwIHwgICAgICAgICAgIDAgfCAgICAgIDAgfCAxMDcyOTU4NDAwCisgQCAz IG1vbnMgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgMCB8ICAgICAgICAgICAw IHwgICAgICAwIHwgICAgNzc3NjAwMAorIEAgMTQgc2VjcyBhZ28gICAgICAgICAgICAgICAg IHwgICAtMTQwMDAwMDAgfCAgICAgIC0xNDAwMCB8ICAgIC0xNCB8ICAgICAgICAtMTQKKyBA IDEgZGF5IDIgaG91cnMgMyBtaW5zIDQgc2VjcyB8ICAgICA0MDAwMDAwIHwgICAgICAgIDQw MDAgfCAgICAgIDQgfCAgICAgIDkzNzg0CisgQCA2IHllYXJzICAgICAgICAgICAgICAgICAg ICAgfCAgICAgICAgICAgMCB8ICAgICAgICAgICAwIHwgICAgICAwIHwgIDE4OTM0NTYwMAor IEAgNSBtb25zICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgIDAgfCAgICAgICAg ICAgMCB8ICAgICAgMCB8ICAgMTI5NjAwMDAKKyBAIDUgbW9ucyAxMiBob3VycyAgICAgICAg ICAgICB8ICAgICAgICAgICAwIHwgICAgICAgICAgIDAgfCAgICAgIDAgfCAgIDEzMDAzMjAw CisoMTAgcm93cykKKworLS0gaW50ZXJuYWwgb3ZlcmZsb3cgdGVzdCBjYXNlCitTRUxFQ1Qg ZXh0cmFjdChlcG9jaCBmcm9tIGludGVydmFsICcxMDAwMDAwMDAwIGRheXMnKTsKKyAgICAg ICAgZXh0cmFjdCAgICAgICAgCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDg2NDAwMDAw MDAwMDAwLjAwMDAwMAogKDEgcm93KQogCmRpZmYgLS1naXQgYS9zcmMvdGVzdC9yZWdyZXNz L2V4cGVjdGVkL3BzcWxfY3Jvc3N0YWIub3V0IGIvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3Rl ZC9wc3FsX2Nyb3NzdGFiLm91dAppbmRleCBlYWU2ZmJkMDUxLi5lMDllMzMxMDE2IDEwMDY0 NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3BzcWxfY3Jvc3N0YWIub3V0Cisr KyBiL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvcHNxbF9jcm9zc3RhYi5vdXQKQEAgLTE3 LDEyICsxNywxMiBAQCBTRUxFQ1QgdiwgRVhUUkFDVCh5ZWFyIEZST00gZCksIGNvdW50KCop CiAgRlJPTSBjdHZfZGF0YQogIEdST1VQIEJZIDEsIDIKICBPUkRFUiBCWSAxLCAyOwotIHYg IHwgZGF0ZV9wYXJ0IHwgY291bnQgCi0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0KLSB2MCB8 ICAgICAgMjAxNCB8ICAgICAyCi0gdjAgfCAgICAgIDIwMTUgfCAgICAgMQotIHYxIHwgICAg ICAyMDE1IHwgICAgIDMKLSB2MiB8ICAgICAgMjAxNSB8ICAgICAxCisgdiAgfCBleHRyYWN0 IHwgY291bnQgCistLS0tKy0tLS0tLS0tLSstLS0tLS0tCisgdjAgfCAgICAyMDE0IHwgICAg IDIKKyB2MCB8ICAgIDIwMTUgfCAgICAgMQorIHYxIHwgICAgMjAxNSB8ICAgICAzCisgdjIg fCAgICAyMDE1IHwgICAgIDEKICg0IHJvd3MpCiAKIC0tIGJhc2ljIHVzYWdlIHdpdGggMyBj b2x1bW5zCmRpZmYgLS1naXQgYS9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3RpbWUub3V0 IGIvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC90aW1lLm91dAppbmRleCA1MzAzY2MwYzk0 Li4zOWI0MDlmZWNhIDEwMDY0NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3Rp bWUub3V0CisrKyBiL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvdGltZS5vdXQKQEAgLTEz MSwzMyArMTMxLDMzIEBAIEhJTlQ6ICBDb3VsZCBub3QgY2hvb3NlIGEgYmVzdCBjYW5kaWRh dGUgb3BlcmF0b3IuIFlvdSBtaWdodCBuZWVkIHRvIGFkZCBleHBsaWNpCiAtLSB0ZXN0IEVY VFJBQ1QKIC0tCiBTRUxFQ1QgRVhUUkFDVChNSUNST1NFQ09ORCBGUk9NIFRJTUUgJzIwMjAt MDUtMjYgMTM6MzA6MjUuNTc1NDAxJyk7Ci0gZGF0ZV9wYXJ0IAotLS0tLS0tLS0tLS0KLSAg MjU1NzU0MDEKKyBleHRyYWN0ICAKKy0tLS0tLS0tLS0KKyAyNTU3NTQwMQogKDEgcm93KQog CiBTRUxFQ1QgRVhUUkFDVChNSUxMSVNFQ09ORCBGUk9NIFRJTUUgJzIwMjAtMDUtMjYgMTM6 MzA6MjUuNTc1NDAxJyk7Ci0gZGF0ZV9wYXJ0IAorICBleHRyYWN0ICAKIC0tLS0tLS0tLS0t CiAgMjU1NzUuNDAxCiAoMSByb3cpCiAKIFNFTEVDVCBFWFRSQUNUKFNFQ09ORCAgICAgIEZS T00gVElNRSAnMjAyMC0wNS0yNiAxMzozMDoyNS41NzU0MDEnKTsKLSBkYXRlX3BhcnQgCisg IGV4dHJhY3QgIAogLS0tLS0tLS0tLS0KICAyNS41NzU0MDEKICgxIHJvdykKIAogU0VMRUNU IEVYVFJBQ1QoTUlOVVRFICAgICAgRlJPTSBUSU1FICcyMDIwLTA1LTI2IDEzOjMwOjI1LjU3 NTQwMScpOwotIGRhdGVfcGFydCAKLS0tLS0tLS0tLS0tCi0gICAgICAgIDMwCisgZXh0cmFj dCAKKy0tLS0tLS0tLQorICAgICAgMzAKICgxIHJvdykKIAogU0VMRUNUIEVYVFJBQ1QoSE9V UiAgICAgICAgRlJPTSBUSU1FICcyMDIwLTA1LTI2IDEzOjMwOjI1LjU3NTQwMScpOwotIGRh dGVfcGFydCAKLS0tLS0tLS0tLS0tCi0gICAgICAgIDEzCisgZXh0cmFjdCAKKy0tLS0tLS0t LQorICAgICAgMTMKICgxIHJvdykKIAogU0VMRUNUIEVYVFJBQ1QoREFZICAgICAgICAgRlJP TSBUSU1FICcyMDIwLTA1LTI2IDEzOjMwOjI1LjU3NTQwMScpOyAgLS0gZXJyb3IKQEAgLTE2 Nyw2ICsxNjcsMzIgQEAgRVJST1I6ICAidGltZSIgdW5pdHMgImZvcnRuaWdodCIgbm90IHJl Y29nbml6ZWQKIFNFTEVDVCBFWFRSQUNUKFRJTUVaT05FICAgIEZST00gVElNRSAnMjAyMC0w NS0yNiAxMzozMDoyNS41NzU0MDEnKTsgIC0tIGVycm9yCiBFUlJPUjogICJ0aW1lIiB1bml0 cyAidGltZXpvbmUiIG5vdCByZWNvZ25pemVkCiBTRUxFQ1QgRVhUUkFDVChFUE9DSCAgICAg ICBGUk9NIFRJTUUgJzIwMjAtMDUtMjYgMTM6MzA6MjUuNTc1NDAxJyk7CisgICBleHRyYWN0 ICAgIAorLS0tLS0tLS0tLS0tLS0KKyA0ODYyNS41NzU0MDEKKygxIHJvdykKKworLS0gZGF0 ZV9wYXJ0IGltcGxlbWVudGF0aW9uIGlzIG1vc3RseSB0aGUgc2FtZSBhcyBleHRyYWN0LCBz byBvbmx5CistLSB0ZXN0IGEgZmV3IGNhc2VzIGZvciBhZGRpdGlvbmFsIGNvdmVyYWdlLgor U0VMRUNUIGRhdGVfcGFydCgnbWljcm9zZWNvbmQnLCBUSU1FICcyMDIwLTA1LTI2IDEzOjMw OjI1LjU3NTQwMScpOworIGRhdGVfcGFydCAKKy0tLS0tLS0tLS0tCisgIDI1NTc1NDAxCiso MSByb3cpCisKK1NFTEVDVCBkYXRlX3BhcnQoJ21pbGxpc2Vjb25kJywgVElNRSAnMjAyMC0w NS0yNiAxMzozMDoyNS41NzU0MDEnKTsKKyBkYXRlX3BhcnQgCistLS0tLS0tLS0tLQorIDI1 NTc1LjQwMQorKDEgcm93KQorCitTRUxFQ1QgZGF0ZV9wYXJ0KCdzZWNvbmQnLCAgICAgIFRJ TUUgJzIwMjAtMDUtMjYgMTM6MzA6MjUuNTc1NDAxJyk7CisgZGF0ZV9wYXJ0IAorLS0tLS0t LS0tLS0KKyAyNS41NzU0MDEKKygxIHJvdykKKworU0VMRUNUIGRhdGVfcGFydCgnZXBvY2gn LCAgICAgICBUSU1FICcyMDIwLTA1LTI2IDEzOjMwOjI1LjU3NTQwMScpOwogICBkYXRlX3Bh cnQgICAKIC0tLS0tLS0tLS0tLS0tCiAgNDg2MjUuNTc1NDAxCmRpZmYgLS1naXQgYS9zcmMv dGVzdC9yZWdyZXNzL2V4cGVjdGVkL3RpbWVzdGFtcC5vdXQgYi9zcmMvdGVzdC9yZWdyZXNz L2V4cGVjdGVkL3RpbWVzdGFtcC5vdXQKaW5kZXggZmZmM2NmMDhjMS4uNjkwNjU2ZGZiMiAx MDA2NDQKLS0tIGEvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC90aW1lc3RhbXAub3V0Cisr KyBiL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvdGltZXN0YW1wLm91dApAQCAtMTAxMiw2 ICsxMDEyLDg0IEBAIFNFTEVDVCBkMSBhcyAidGltZXN0YW1wIiwKICBNb24gSmFuIDAxIDE3 OjMyOjAxIDIwMDEgICAgfCAgICAgICAyMDAgfCAgICAgICAgMjEgfCAgICAgICAgICAzIHwg ICAyNDUxOTEyIHwgICAgOTc4MzcwMzIxCiAoNjUgcm93cykKIAorLS0gZXh0cmFjdCBpbXBs ZW1lbnRhdGlvbiBpcyBtb3N0bHkgdGhlIHNhbWUgYXMgZGF0ZV9wYXJ0LCBzbyBvbmx5Cist LSB0ZXN0IGEgZmV3IGNhc2VzIGZvciBhZGRpdGlvbmFsIGNvdmVyYWdlLgorU0VMRUNUIGQx IGFzICJ0aW1lc3RhbXAiLAorICAgZXh0cmFjdChtaWNyb3NlY29uZHMgZnJvbSBkMSkgQVMg bWljcm9zZWNvbmRzLAorICAgZXh0cmFjdChtaWxsaXNlY29uZHMgZnJvbSBkMSkgQVMgbWls bGlzZWNvbmRzLAorICAgZXh0cmFjdChzZWNvbmRzIGZyb20gZDEpIEFTIHNlY29uZHMsCisg ICByb3VuZChleHRyYWN0KGp1bGlhbiBmcm9tIGQxKSkgQVMganVsaWFuLAorICAgZXh0cmFj dChlcG9jaCBmcm9tIGQxKSBBUyBlcG9jaAorICAgRlJPTSBUSU1FU1RBTVBfVEJMOworICAg ICAgICAgIHRpbWVzdGFtcCAgICAgICAgICB8IG1pY3Jvc2Vjb25kcyB8IG1pbGxpc2Vjb25k cyB8ICBzZWNvbmRzICB8ICBqdWxpYW4gICB8ICAgICAgICBlcG9jaCAgICAgICAgCistLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0t LSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAtaW5m aW5pdHkgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgfCAgICAgICAgICAgICAg fCAgICAgICAgICAgfCAtSW5maW5pdHkgfCAgICAgICAgICAgLUluZmluaXR5CisgaW5maW5p dHkgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgIHwgICAgICAgICAgICAgIHwg ICAgICAgICAgIHwgIEluZmluaXR5IHwgICAgICAgICAgICBJbmZpbml0eQorIFRodSBKYW4g MDEgMDA6MDA6MDAgMTk3MCAgICB8ICAgICAgICAgICAgMCB8ICAgICAgICAwLjAwMCB8ICAw LjAwMDAwMCB8ICAgMjQ0MDU4OCB8ICAgICAgICAgICAgMC4wMDAwMDAKKyBNb24gRmViIDEw IDE3OjMyOjAxIDE5OTcgICAgfCAgICAgIDEwMDAwMDAgfCAgICAgMTAwMC4wMDAgfCAgMS4w MDAwMDAgfCAgIDI0NTA0OTEgfCAgICA4NTU1OTU5MjEuMDAwMDAwCisgTW9uIEZlYiAxMCAx NzozMjowMSAxOTk3ICAgIHwgICAgICAxMDAwMDAwIHwgICAgIDEwMDAuMDAwIHwgIDEuMDAw MDAwIHwgICAyNDUwNDkxIHwgICAgODU1NTk1OTIxLjAwMDAwMAorIE1vbiBGZWIgMTAgMTc6 MzI6MDIgMTk5NyAgICB8ICAgICAgMjAwMDAwMCB8ICAgICAyMDAwLjAwMCB8ICAyLjAwMDAw MCB8ICAgMjQ1MDQ5MSB8ICAgIDg1NTU5NTkyMi4wMDAwMDAKKyBNb24gRmViIDEwIDE3OjMy OjAxLjQgMTk5NyAgfCAgICAgIDE0MDAwMDAgfCAgICAgMTQwMC4wMDAgfCAgMS40MDAwMDAg fCAgIDI0NTA0OTEgfCAgICA4NTU1OTU5MjEuNDAwMDAwCisgTW9uIEZlYiAxMCAxNzozMjow MS41IDE5OTcgIHwgICAgICAxNTAwMDAwIHwgICAgIDE1MDAuMDAwIHwgIDEuNTAwMDAwIHwg ICAyNDUwNDkxIHwgICAgODU1NTk1OTIxLjUwMDAwMAorIE1vbiBGZWIgMTAgMTc6MzI6MDEu NiAxOTk3ICB8ICAgICAgMTYwMDAwMCB8ICAgICAxNjAwLjAwMCB8ICAxLjYwMDAwMCB8ICAg MjQ1MDQ5MSB8ICAgIDg1NTU5NTkyMS42MDAwMDAKKyBUaHUgSmFuIDAyIDAwOjAwOjAwIDE5 OTcgICAgfCAgICAgICAgICAgIDAgfCAgICAgICAgMC4wMDAgfCAgMC4wMDAwMDAgfCAgIDI0 NTA0NTEgfCAgICA4NTIxNjMyMDAuMDAwMDAwCisgVGh1IEphbiAwMiAwMzowNDowNSAxOTk3 ICAgIHwgICAgICA1MDAwMDAwIHwgICAgIDUwMDAuMDAwIHwgIDUuMDAwMDAwIHwgICAyNDUw NDUxIHwgICAgODUyMTc0MjQ1LjAwMDAwMAorIE1vbiBGZWIgMTAgMTc6MzI6MDEgMTk5NyAg ICB8ICAgICAgMTAwMDAwMCB8ICAgICAxMDAwLjAwMCB8ICAxLjAwMDAwMCB8ICAgMjQ1MDQ5 MSB8ICAgIDg1NTU5NTkyMS4wMDAwMDAKKyBNb24gRmViIDEwIDE3OjMyOjAxIDE5OTcgICAg fCAgICAgIDEwMDAwMDAgfCAgICAgMTAwMC4wMDAgfCAgMS4wMDAwMDAgfCAgIDI0NTA0OTEg fCAgICA4NTU1OTU5MjEuMDAwMDAwCisgTW9uIEZlYiAxMCAxNzozMjowMSAxOTk3ICAgIHwg ICAgICAxMDAwMDAwIHwgICAgIDEwMDAuMDAwIHwgIDEuMDAwMDAwIHwgICAyNDUwNDkxIHwg ICAgODU1NTk1OTIxLjAwMDAwMAorIE1vbiBGZWIgMTAgMTc6MzI6MDEgMTk5NyAgICB8ICAg ICAgMTAwMDAwMCB8ICAgICAxMDAwLjAwMCB8ICAxLjAwMDAwMCB8ICAgMjQ1MDQ5MSB8ICAg IDg1NTU5NTkyMS4wMDAwMDAKKyBUdWUgSnVuIDEwIDE3OjMyOjAxIDE5OTcgICAgfCAgICAg IDEwMDAwMDAgfCAgICAgMTAwMC4wMDAgfCAgMS4wMDAwMDAgfCAgIDI0NTA2MTEgfCAgICA4 NjU5NjM5MjEuMDAwMDAwCisgU2F0IFNlcCAyMiAxODoxOToyMCAyMDAxICAgIHwgICAgIDIw MDAwMDAwIHwgICAgMjAwMDAuMDAwIHwgMjAuMDAwMDAwIHwgICAyNDUyMTc2IHwgICAxMDAx MTgyNzYwLjAwMDAwMAorIFdlZCBNYXIgMTUgMDg6MTQ6MDEgMjAwMCAgICB8ICAgICAgMTAw MDAwMCB8ICAgICAxMDAwLjAwMCB8ICAxLjAwMDAwMCB8ICAgMjQ1MTYxOSB8ICAgIDk1MzEw ODA0MS4wMDAwMDAKKyBXZWQgTWFyIDE1IDEzOjE0OjAyIDIwMDAgICAgfCAgICAgIDIwMDAw MDAgfCAgICAgMjAwMC4wMDAgfCAgMi4wMDAwMDAgfCAgIDI0NTE2MjAgfCAgICA5NTMxMjYw NDIuMDAwMDAwCisgV2VkIE1hciAxNSAxMjoxNDowMyAyMDAwICAgIHwgICAgICAzMDAwMDAw IHwgICAgIDMwMDAuMDAwIHwgIDMuMDAwMDAwIHwgICAyNDUxNjIwIHwgICAgOTUzMTIyNDQz LjAwMDAwMAorIFdlZCBNYXIgMTUgMDM6MTQ6MDQgMjAwMCAgICB8ICAgICAgNDAwMDAwMCB8 ICAgICA0MDAwLjAwMCB8ICA0LjAwMDAwMCB8ICAgMjQ1MTYxOSB8ICAgIDk1MzA5MDA0NC4w MDAwMDAKKyBXZWQgTWFyIDE1IDAyOjE0OjA1IDIwMDAgICAgfCAgICAgIDUwMDAwMDAgfCAg ICAgNTAwMC4wMDAgfCAgNS4wMDAwMDAgfCAgIDI0NTE2MTkgfCAgICA5NTMwODY0NDUuMDAw MDAwCisgTW9uIEZlYiAxMCAxNzozMjowMSAxOTk3ICAgIHwgICAgICAxMDAwMDAwIHwgICAg IDEwMDAuMDAwIHwgIDEuMDAwMDAwIHwgICAyNDUwNDkxIHwgICAgODU1NTk1OTIxLjAwMDAw MAorIE1vbiBGZWIgMTAgMTc6MzI6MDEgMTk5NyAgICB8ICAgICAgMTAwMDAwMCB8ICAgICAx MDAwLjAwMCB8ICAxLjAwMDAwMCB8ICAgMjQ1MDQ5MSB8ICAgIDg1NTU5NTkyMS4wMDAwMDAK KyBNb24gRmViIDEwIDE3OjMyOjAwIDE5OTcgICAgfCAgICAgICAgICAgIDAgfCAgICAgICAg MC4wMDAgfCAgMC4wMDAwMDAgfCAgIDI0NTA0OTEgfCAgICA4NTU1OTU5MjAuMDAwMDAwCisg TW9uIEZlYiAxMCAxNzozMjowMSAxOTk3ICAgIHwgICAgICAxMDAwMDAwIHwgICAgIDEwMDAu MDAwIHwgIDEuMDAwMDAwIHwgICAyNDUwNDkxIHwgICAgODU1NTk1OTIxLjAwMDAwMAorIE1v biBGZWIgMTAgMTc6MzI6MDEgMTk5NyAgICB8ICAgICAgMTAwMDAwMCB8ICAgICAxMDAwLjAw MCB8ICAxLjAwMDAwMCB8ICAgMjQ1MDQ5MSB8ICAgIDg1NTU5NTkyMS4wMDAwMDAKKyBNb24g RmViIDEwIDE3OjMyOjAxIDE5OTcgICAgfCAgICAgIDEwMDAwMDAgfCAgICAgMTAwMC4wMDAg fCAgMS4wMDAwMDAgfCAgIDI0NTA0OTEgfCAgICA4NTU1OTU5MjEuMDAwMDAwCisgTW9uIEZl YiAxMCAxNzozMjowMSAxOTk3ICAgIHwgICAgICAxMDAwMDAwIHwgICAgIDEwMDAuMDAwIHwg IDEuMDAwMDAwIHwgICAyNDUwNDkxIHwgICAgODU1NTk1OTIxLjAwMDAwMAorIE1vbiBGZWIg MTAgMTc6MzI6MDEgMTk5NyAgICB8ICAgICAgMTAwMDAwMCB8ICAgICAxMDAwLjAwMCB8ICAx LjAwMDAwMCB8ICAgMjQ1MDQ5MSB8ICAgIDg1NTU5NTkyMS4wMDAwMDAKKyBNb24gRmViIDEw IDE3OjMyOjAxIDE5OTcgICAgfCAgICAgIDEwMDAwMDAgfCAgICAgMTAwMC4wMDAgfCAgMS4w MDAwMDAgfCAgIDI0NTA0OTEgfCAgICA4NTU1OTU5MjEuMDAwMDAwCisgTW9uIEZlYiAxMCAx NzozMjowMSAxOTk3ICAgIHwgICAgICAxMDAwMDAwIHwgICAgIDEwMDAuMDAwIHwgIDEuMDAw MDAwIHwgICAyNDUwNDkxIHwgICAgODU1NTk1OTIxLjAwMDAwMAorIE1vbiBGZWIgMTAgMTc6 MzI6MDEgMTk5NyAgICB8ICAgICAgMTAwMDAwMCB8ICAgICAxMDAwLjAwMCB8ICAxLjAwMDAw MCB8ICAgMjQ1MDQ5MSB8ICAgIDg1NTU5NTkyMS4wMDAwMDAKKyBNb24gRmViIDEwIDE3OjMy OjAxIDE5OTcgICAgfCAgICAgIDEwMDAwMDAgfCAgICAgMTAwMC4wMDAgfCAgMS4wMDAwMDAg fCAgIDI0NTA0OTEgfCAgICA4NTU1OTU5MjEuMDAwMDAwCisgVHVlIEp1biAxMCAxODozMjow MSAxOTk3ICAgIHwgICAgICAxMDAwMDAwIHwgICAgIDEwMDAuMDAwIHwgIDEuMDAwMDAwIHwg ICAyNDUwNjExIHwgICAgODY1OTY3NTIxLjAwMDAwMAorIE1vbiBGZWIgMTAgMTc6MzI6MDEg MTk5NyAgICB8ICAgICAgMTAwMDAwMCB8ICAgICAxMDAwLjAwMCB8ICAxLjAwMDAwMCB8ICAg MjQ1MDQ5MSB8ICAgIDg1NTU5NTkyMS4wMDAwMDAKKyBUdWUgRmViIDExIDE3OjMyOjAxIDE5 OTcgICAgfCAgICAgIDEwMDAwMDAgfCAgICAgMTAwMC4wMDAgfCAgMS4wMDAwMDAgfCAgIDI0 NTA0OTIgfCAgICA4NTU2ODIzMjEuMDAwMDAwCisgV2VkIEZlYiAxMiAxNzozMjowMSAxOTk3 ICAgIHwgICAgICAxMDAwMDAwIHwgICAgIDEwMDAuMDAwIHwgIDEuMDAwMDAwIHwgICAyNDUw NDkzIHwgICAgODU1NzY4NzIxLjAwMDAwMAorIFRodSBGZWIgMTMgMTc6MzI6MDEgMTk5NyAg ICB8ICAgICAgMTAwMDAwMCB8ICAgICAxMDAwLjAwMCB8ICAxLjAwMDAwMCB8ICAgMjQ1MDQ5 NCB8ICAgIDg1NTg1NTEyMS4wMDAwMDAKKyBGcmkgRmViIDE0IDE3OjMyOjAxIDE5OTcgICAg fCAgICAgIDEwMDAwMDAgfCAgICAgMTAwMC4wMDAgfCAgMS4wMDAwMDAgfCAgIDI0NTA0OTUg fCAgICA4NTU5NDE1MjEuMDAwMDAwCisgU2F0IEZlYiAxNSAxNzozMjowMSAxOTk3ICAgIHwg ICAgICAxMDAwMDAwIHwgICAgIDEwMDAuMDAwIHwgIDEuMDAwMDAwIHwgICAyNDUwNDk2IHwg ICAgODU2MDI3OTIxLjAwMDAwMAorIFN1biBGZWIgMTYgMTc6MzI6MDEgMTk5NyAgICB8ICAg ICAgMTAwMDAwMCB8ICAgICAxMDAwLjAwMCB8ICAxLjAwMDAwMCB8ICAgMjQ1MDQ5NyB8ICAg IDg1NjExNDMyMS4wMDAwMDAKKyBUdWUgRmViIDE2IDE3OjMyOjAxIDAwOTcgQkMgfCAgICAg IDEwMDAwMDAgfCAgICAgMTAwMC4wMDAgfCAgMS4wMDAwMDAgfCAgIDE2ODYwNDMgfCAtNjUx OTI3MTEyNzkuMDAwMDAwCisgU2F0IEZlYiAxNiAxNzozMjowMSAwMDk3ICAgIHwgICAgICAx MDAwMDAwIHwgICAgIDEwMDAuMDAwIHwgIDEuMDAwMDAwIHwgICAxNzU2NTM3IHwgLTU5MTAy MDI5Njc5LjAwMDAwMAorIFRodSBGZWIgMTYgMTc6MzI6MDEgMDU5NyAgICB8ICAgICAgMTAw MDAwMCB8ICAgICAxMDAwLjAwMCB8ICAxLjAwMDAwMCB8ICAgMTkzOTE1OCB8IC00MzMyMzU3 NTI3OS4wMDAwMDAKKyBUdWUgRmViIDE2IDE3OjMyOjAxIDEwOTcgICAgfCAgICAgIDEwMDAw MDAgfCAgICAgMTAwMC4wMDAgfCAgMS4wMDAwMDAgfCAgIDIxMjE3NzkgfCAtMjc1NDUxMjA4 NzkuMDAwMDAwCisgU2F0IEZlYiAxNiAxNzozMjowMSAxNjk3ICAgIHwgICAgICAxMDAwMDAw IHwgICAgIDEwMDAuMDAwIHwgIDEuMDAwMDAwIHwgICAyMzQwOTI1IHwgIC04NjEwOTA2NDc5 LjAwMDAwMAorIFRodSBGZWIgMTYgMTc6MzI6MDEgMTc5NyAgICB8ICAgICAgMTAwMDAwMCB8 ICAgICAxMDAwLjAwMCB8ICAxLjAwMDAwMCB8ICAgMjM3NzQ0OSB8ICAtNTQ1NTIzMjg3OS4w MDAwMDAKKyBUdWUgRmViIDE2IDE3OjMyOjAxIDE4OTcgICAgfCAgICAgIDEwMDAwMDAgfCAg ICAgMTAwMC4wMDAgfCAgMS4wMDAwMDAgfCAgIDI0MTM5NzMgfCAgLTIyOTk1NTkyNzkuMDAw MDAwCisgU3VuIEZlYiAxNiAxNzozMjowMSAxOTk3ICAgIHwgICAgICAxMDAwMDAwIHwgICAg IDEwMDAuMDAwIHwgIDEuMDAwMDAwIHwgICAyNDUwNDk3IHwgICAgODU2MTE0MzIxLjAwMDAw MAorIFNhdCBGZWIgMTYgMTc6MzI6MDEgMjA5NyAgICB8ICAgICAgMTAwMDAwMCB8ICAgICAx MDAwLjAwMCB8ICAxLjAwMDAwMCB8ICAgMjQ4NzAyMiB8ICAgNDAxMTg3NDMyMS4wMDAwMDAK KyBXZWQgRmViIDI4IDE3OjMyOjAxIDE5OTYgICAgfCAgICAgIDEwMDAwMDAgfCAgICAgMTAw MC4wMDAgfCAgMS4wMDAwMDAgfCAgIDI0NTAxNDMgfCAgICA4MjU1Mjg3MjEuMDAwMDAwCisg VGh1IEZlYiAyOSAxNzozMjowMSAxOTk2ICAgIHwgICAgICAxMDAwMDAwIHwgICAgIDEwMDAu MDAwIHwgIDEuMDAwMDAwIHwgICAyNDUwMTQ0IHwgICAgODI1NjE1MTIxLjAwMDAwMAorIEZy aSBNYXIgMDEgMTc6MzI6MDEgMTk5NiAgICB8ICAgICAgMTAwMDAwMCB8ICAgICAxMDAwLjAw MCB8ICAxLjAwMDAwMCB8ICAgMjQ1MDE0NSB8ICAgIDgyNTcwMTUyMS4wMDAwMDAKKyBNb24g RGVjIDMwIDE3OjMyOjAxIDE5OTYgICAgfCAgICAgIDEwMDAwMDAgfCAgICAgMTAwMC4wMDAg fCAgMS4wMDAwMDAgfCAgIDI0NTA0NDkgfCAgICA4NTE5NjcxMjEuMDAwMDAwCisgVHVlIERl YyAzMSAxNzozMjowMSAxOTk2ICAgIHwgICAgICAxMDAwMDAwIHwgICAgIDEwMDAuMDAwIHwg IDEuMDAwMDAwIHwgICAyNDUwNDUwIHwgICAgODUyMDUzNTIxLjAwMDAwMAorIFdlZCBKYW4g MDEgMTc6MzI6MDEgMTk5NyAgICB8ICAgICAgMTAwMDAwMCB8ICAgICAxMDAwLjAwMCB8ICAx LjAwMDAwMCB8ICAgMjQ1MDQ1MSB8ICAgIDg1MjEzOTkyMS4wMDAwMDAKKyBGcmkgRmViIDI4 IDE3OjMyOjAxIDE5OTcgICAgfCAgICAgIDEwMDAwMDAgfCAgICAgMTAwMC4wMDAgfCAgMS4w MDAwMDAgfCAgIDI0NTA1MDkgfCAgICA4NTcxNTExMjEuMDAwMDAwCisgU2F0IE1hciAwMSAx NzozMjowMSAxOTk3ICAgIHwgICAgICAxMDAwMDAwIHwgICAgIDEwMDAuMDAwIHwgIDEuMDAw MDAwIHwgICAyNDUwNTEwIHwgICAgODU3MjM3NTIxLjAwMDAwMAorIFR1ZSBEZWMgMzAgMTc6 MzI6MDEgMTk5NyAgICB8ICAgICAgMTAwMDAwMCB8ICAgICAxMDAwLjAwMCB8ICAxLjAwMDAw MCB8ICAgMjQ1MDgxNCB8ICAgIDg4MzUwMzEyMS4wMDAwMDAKKyBXZWQgRGVjIDMxIDE3OjMy OjAxIDE5OTcgICAgfCAgICAgIDEwMDAwMDAgfCAgICAgMTAwMC4wMDAgfCAgMS4wMDAwMDAg fCAgIDI0NTA4MTUgfCAgICA4ODM1ODk1MjEuMDAwMDAwCisgRnJpIERlYyAzMSAxNzozMjow MSAxOTk5ICAgIHwgICAgICAxMDAwMDAwIHwgICAgIDEwMDAuMDAwIHwgIDEuMDAwMDAwIHwg ICAyNDUxNTQ1IHwgICAgOTQ2NjYxNTIxLjAwMDAwMAorIFNhdCBKYW4gMDEgMTc6MzI6MDEg MjAwMCAgICB8ICAgICAgMTAwMDAwMCB8ICAgICAxMDAwLjAwMCB8ICAxLjAwMDAwMCB8ICAg MjQ1MTU0NiB8ICAgIDk0Njc0NzkyMS4wMDAwMDAKKyBTdW4gRGVjIDMxIDE3OjMyOjAxIDIw MDAgICAgfCAgICAgIDEwMDAwMDAgfCAgICAgMTAwMC4wMDAgfCAgMS4wMDAwMDAgfCAgIDI0 NTE5MTEgfCAgICA5NzgyODM5MjEuMDAwMDAwCisgTW9uIEphbiAwMSAxNzozMjowMSAyMDAx ICAgIHwgICAgICAxMDAwMDAwIHwgICAgIDEwMDAuMDAwIHwgIDEuMDAwMDAwIHwgICAyNDUx OTEyIHwgICAgOTc4MzcwMzIxLjAwMDAwMAorKDY1IHJvd3MpCisKIC0tIHZhbHVlIG5lYXIg dXBwZXIgYm91bmQgdXNlcyBzcGVjaWFsIGNhc2UgaW4gY29kZQogU0VMRUNUIGRhdGVfcGFy dCgnZXBvY2gnLCAnMjk0MjcwLTAxLTAxIDAwOjAwOjAwJzo6dGltZXN0YW1wKTsKICAgIGRh dGVfcGFydCAgIApAQCAtMTAxOSw2ICsxMDk3LDE5IEBAIFNFTEVDVCBkYXRlX3BhcnQoJ2Vw b2NoJywgJzI5NDI3MC0wMS0wMSAwMDowMDowMCc6OnRpbWVzdGFtcCk7CiAgOTIyNDA5NzA5 MTIwMAogKDEgcm93KQogCitTRUxFQ1QgZXh0cmFjdChlcG9jaCBmcm9tICcyOTQyNzAtMDEt MDEgMDA6MDA6MDAnOjp0aW1lc3RhbXApOworICAgICAgIGV4dHJhY3QgICAgICAgIAorLS0t LS0tLS0tLS0tLS0tLS0tLS0tLQorIDkyMjQwOTcwOTEyMDAuMDAwMDAwCisoMSByb3cpCisK Ky0tIGFub3RoZXIgaW50ZXJuYWwgb3ZlcmZsb3cgdGVzdCBjYXNlCitTRUxFQ1QgZXh0cmFj dChlcG9jaCBmcm9tICc1MDAwLTAxLTAxIDAwOjAwOjAwJzo6dGltZXN0YW1wKTsKKyAgICAg IGV4dHJhY3QgICAgICAgCistLS0tLS0tLS0tLS0tLS0tLS0tLQorIDk1NjE3NTg0MDAwLjAw MDAwMAorKDEgcm93KQorCiAtLSBUT19DSEFSKCkKIFNFTEVDVCB0b19jaGFyKGQxLCAnREFZ IERheSBkYXkgRFkgRHkgZHkgTU9OVEggTW9udGggbW9udGggUk0gTU9OIE1vbiBtb24nKQog ICAgRlJPTSBUSU1FU1RBTVBfVEJMOwpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3QvcmVncmVzcy9l eHBlY3RlZC90aW1lc3RhbXB0ei5vdXQgYi9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3Rp bWVzdGFtcHR6Lm91dAppbmRleCBmZjA3MDA4MDczLi40MjFlZjI1NzhhIDEwMDY0NAotLS0g YS9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3RpbWVzdGFtcHR6Lm91dAorKysgYi9zcmMv dGVzdC9yZWdyZXNzL2V4cGVjdGVkL3RpbWVzdGFtcHR6Lm91dApAQCAtMTE4OSw2ICsxMTg5 LDg1IEBAIFNFTEVDVCBkMSBhcyB0aW1lc3RhbXB0eiwKICBNb24gSmFuIDAxIDE3OjMyOjAx IDIwMDEgUFNUICAgIHwgICAtMjg4MDAgfCAgICAgICAgICAgIC04IHwgICAgICAgICAgICAg ICAwCiAoNjYgcm93cykKIAorLS0gZXh0cmFjdCBpbXBsZW1lbnRhdGlvbiBpcyBtb3N0bHkg dGhlIHNhbWUgYXMgZGF0ZV9wYXJ0LCBzbyBvbmx5CistLSB0ZXN0IGEgZmV3IGNhc2VzIGZv ciBhZGRpdGlvbmFsIGNvdmVyYWdlLgorU0VMRUNUIGQxIGFzICJ0aW1lc3RhbXAiLAorICAg ZXh0cmFjdChtaWNyb3NlY29uZHMgZnJvbSBkMSkgQVMgbWljcm9zZWNvbmRzLAorICAgZXh0 cmFjdChtaWxsaXNlY29uZHMgZnJvbSBkMSkgQVMgbWlsbGlzZWNvbmRzLAorICAgZXh0cmFj dChzZWNvbmRzIGZyb20gZDEpIEFTIHNlY29uZHMsCisgICByb3VuZChleHRyYWN0KGp1bGlh biBmcm9tIGQxKSkgQVMganVsaWFuLAorICAgZXh0cmFjdChlcG9jaCBmcm9tIGQxKSBBUyBl cG9jaAorICAgRlJPTSBUSU1FU1RBTVBUWl9UQkw7CisgICAgICAgICAgICB0aW1lc3RhbXAg ICAgICAgICAgICB8IG1pY3Jvc2Vjb25kcyB8IG1pbGxpc2Vjb25kcyB8ICBzZWNvbmRzICB8 ICBqdWxpYW4gICB8ICAgICAgICBlcG9jaCAgICAgICAgCistLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgLWluZmluaXR5ICAgICAg ICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICB8ICAgICAgICAgICAgICB8ICAgICAg ICAgICB8IC1JbmZpbml0eSB8ICAgICAgICAgICAtSW5maW5pdHkKKyBpbmZpbml0eSAgICAg ICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgIHwgICAgICAgICAgICAgIHwgICAg ICAgICAgIHwgIEluZmluaXR5IHwgICAgICAgICAgICBJbmZpbml0eQorIFdlZCBEZWMgMzEg MTY6MDA6MDAgMTk2OSBQU1QgICAgfCAgICAgICAgICAgIDAgfCAgICAgICAgMC4wMDAgfCAg MC4wMDAwMDAgfCAgIDI0NDA1ODggfCAgICAgICAgICAgIDAuMDAwMDAwCisgTW9uIEZlYiAx MCAxNzozMjowMSAxOTk3IFBTVCAgICB8ICAgICAgMTAwMDAwMCB8ICAgICAxMDAwLjAwMCB8 ICAxLjAwMDAwMCB8ICAgMjQ1MDQ5MSB8ICAgIDg1NTYyNDcyMS4wMDAwMDAKKyBNb24gRmVi IDEwIDE3OjMyOjAxIDE5OTcgUFNUICAgIHwgICAgICAxMDAwMDAwIHwgICAgIDEwMDAuMDAw IHwgIDEuMDAwMDAwIHwgICAyNDUwNDkxIHwgICAgODU1NjI0NzIxLjAwMDAwMAorIE1vbiBG ZWIgMTAgMTc6MzI6MDIgMTk5NyBQU1QgICAgfCAgICAgIDIwMDAwMDAgfCAgICAgMjAwMC4w MDAgfCAgMi4wMDAwMDAgfCAgIDI0NTA0OTEgfCAgICA4NTU2MjQ3MjIuMDAwMDAwCisgTW9u IEZlYiAxMCAxNzozMjowMS40IDE5OTcgUFNUICB8ICAgICAgMTQwMDAwMCB8ICAgICAxNDAw LjAwMCB8ICAxLjQwMDAwMCB8ICAgMjQ1MDQ5MSB8ICAgIDg1NTYyNDcyMS40MDAwMDAKKyBN b24gRmViIDEwIDE3OjMyOjAxLjUgMTk5NyBQU1QgIHwgICAgICAxNTAwMDAwIHwgICAgIDE1 MDAuMDAwIHwgIDEuNTAwMDAwIHwgICAyNDUwNDkxIHwgICAgODU1NjI0NzIxLjUwMDAwMAor IE1vbiBGZWIgMTAgMTc6MzI6MDEuNiAxOTk3IFBTVCAgfCAgICAgIDE2MDAwMDAgfCAgICAg MTYwMC4wMDAgfCAgMS42MDAwMDAgfCAgIDI0NTA0OTEgfCAgICA4NTU2MjQ3MjEuNjAwMDAw CisgVGh1IEphbiAwMiAwMDowMDowMCAxOTk3IFBTVCAgICB8ICAgICAgICAgICAgMCB8ICAg ICAgICAwLjAwMCB8ICAwLjAwMDAwMCB8ICAgMjQ1MDQ1MSB8ICAgIDg1MjE5MjAwMC4wMDAw MDAKKyBUaHUgSmFuIDAyIDAzOjA0OjA1IDE5OTcgUFNUICAgIHwgICAgICA1MDAwMDAwIHwg ICAgIDUwMDAuMDAwIHwgIDUuMDAwMDAwIHwgICAyNDUwNDUxIHwgICAgODUyMjAzMDQ1LjAw MDAwMAorIE1vbiBGZWIgMTAgMTc6MzI6MDEgMTk5NyBQU1QgICAgfCAgICAgIDEwMDAwMDAg fCAgICAgMTAwMC4wMDAgfCAgMS4wMDAwMDAgfCAgIDI0NTA0OTEgfCAgICA4NTU2MjQ3MjEu MDAwMDAwCisgTW9uIEZlYiAxMCAxNzozMjowMSAxOTk3IFBTVCAgICB8ICAgICAgMTAwMDAw MCB8ICAgICAxMDAwLjAwMCB8ICAxLjAwMDAwMCB8ICAgMjQ1MDQ5MSB8ICAgIDg1NTYyNDcy MS4wMDAwMDAKKyBNb24gRmViIDEwIDE3OjMyOjAxIDE5OTcgUFNUICAgIHwgICAgICAxMDAw MDAwIHwgICAgIDEwMDAuMDAwIHwgIDEuMDAwMDAwIHwgICAyNDUwNDkxIHwgICAgODU1NjI0 NzIxLjAwMDAwMAorIE1vbiBGZWIgMTAgMTc6MzI6MDEgMTk5NyBQU1QgICAgfCAgICAgIDEw MDAwMDAgfCAgICAgMTAwMC4wMDAgfCAgMS4wMDAwMDAgfCAgIDI0NTA0OTEgfCAgICA4NTU2 MjQ3MjEuMDAwMDAwCisgVHVlIEp1biAxMCAxNzozMjowMSAxOTk3IFBEVCAgICB8ICAgICAg MTAwMDAwMCB8ICAgICAxMDAwLjAwMCB8ICAxLjAwMDAwMCB8ICAgMjQ1MDYxMSB8ICAgIDg2 NTk4OTEyMS4wMDAwMDAKKyBTYXQgU2VwIDIyIDE4OjE5OjIwIDIwMDEgUERUICAgIHwgICAg IDIwMDAwMDAwIHwgICAgMjAwMDAuMDAwIHwgMjAuMDAwMDAwIHwgICAyNDUyMTc2IHwgICAx MDAxMjA3OTYwLjAwMDAwMAorIFdlZCBNYXIgMTUgMDg6MTQ6MDEgMjAwMCBQU1QgICAgfCAg ICAgIDEwMDAwMDAgfCAgICAgMTAwMC4wMDAgfCAgMS4wMDAwMDAgfCAgIDI0NTE2MTkgfCAg ICA5NTMxMzY4NDEuMDAwMDAwCisgV2VkIE1hciAxNSAwNDoxNDowMiAyMDAwIFBTVCAgICB8 ICAgICAgMjAwMDAwMCB8ICAgICAyMDAwLjAwMCB8ICAyLjAwMDAwMCB8ICAgMjQ1MTYxOSB8 ICAgIDk1MzEyMjQ0Mi4wMDAwMDAKKyBXZWQgTWFyIDE1IDAyOjE0OjAzIDIwMDAgUFNUICAg IHwgICAgICAzMDAwMDAwIHwgICAgIDMwMDAuMDAwIHwgIDMuMDAwMDAwIHwgICAyNDUxNjE5 IHwgICAgOTUzMTE1MjQzLjAwMDAwMAorIFdlZCBNYXIgMTUgMDM6MTQ6MDQgMjAwMCBQU1Qg ICAgfCAgICAgIDQwMDAwMDAgfCAgICAgNDAwMC4wMDAgfCAgNC4wMDAwMDAgfCAgIDI0NTE2 MTkgfCAgICA5NTMxMTg4NDQuMDAwMDAwCisgV2VkIE1hciAxNSAwMToxNDowNSAyMDAwIFBT VCAgICB8ICAgICAgNTAwMDAwMCB8ICAgICA1MDAwLjAwMCB8ICA1LjAwMDAwMCB8ICAgMjQ1 MTYxOSB8ICAgIDk1MzExMTY0NS4wMDAwMDAKKyBNb24gRmViIDEwIDE3OjMyOjAxIDE5OTcg UFNUICAgIHwgICAgICAxMDAwMDAwIHwgICAgIDEwMDAuMDAwIHwgIDEuMDAwMDAwIHwgICAy NDUwNDkxIHwgICAgODU1NjI0NzIxLjAwMDAwMAorIE1vbiBGZWIgMTAgMTc6MzI6MDEgMTk5 NyBQU1QgICAgfCAgICAgIDEwMDAwMDAgfCAgICAgMTAwMC4wMDAgfCAgMS4wMDAwMDAgfCAg IDI0NTA0OTEgfCAgICA4NTU2MjQ3MjEuMDAwMDAwCisgTW9uIEZlYiAxMCAxNzozMjowMCAx OTk3IFBTVCAgICB8ICAgICAgICAgICAgMCB8ICAgICAgICAwLjAwMCB8ICAwLjAwMDAwMCB8 ICAgMjQ1MDQ5MSB8ICAgIDg1NTYyNDcyMC4wMDAwMDAKKyBNb24gRmViIDEwIDE3OjMyOjAx IDE5OTcgUFNUICAgIHwgICAgICAxMDAwMDAwIHwgICAgIDEwMDAuMDAwIHwgIDEuMDAwMDAw IHwgICAyNDUwNDkxIHwgICAgODU1NjI0NzIxLjAwMDAwMAorIE1vbiBGZWIgMTAgMTc6MzI6 MDEgMTk5NyBQU1QgICAgfCAgICAgIDEwMDAwMDAgfCAgICAgMTAwMC4wMDAgfCAgMS4wMDAw MDAgfCAgIDI0NTA0OTEgfCAgICA4NTU2MjQ3MjEuMDAwMDAwCisgTW9uIEZlYiAxMCAxNzoz MjowMSAxOTk3IFBTVCAgICB8ICAgICAgMTAwMDAwMCB8ICAgICAxMDAwLjAwMCB8ICAxLjAw MDAwMCB8ICAgMjQ1MDQ5MSB8ICAgIDg1NTYyNDcyMS4wMDAwMDAKKyBNb24gRmViIDEwIDE3 OjMyOjAxIDE5OTcgUFNUICAgIHwgICAgICAxMDAwMDAwIHwgICAgIDEwMDAuMDAwIHwgIDEu MDAwMDAwIHwgICAyNDUwNDkxIHwgICAgODU1NjI0NzIxLjAwMDAwMAorIE1vbiBGZWIgMTAg MTc6MzI6MDEgMTk5NyBQU1QgICAgfCAgICAgIDEwMDAwMDAgfCAgICAgMTAwMC4wMDAgfCAg MS4wMDAwMDAgfCAgIDI0NTA0OTEgfCAgICA4NTU2MjQ3MjEuMDAwMDAwCisgTW9uIEZlYiAx MCAwOTozMjowMSAxOTk3IFBTVCAgICB8ICAgICAgMTAwMDAwMCB8ICAgICAxMDAwLjAwMCB8 ICAxLjAwMDAwMCB8ICAgMjQ1MDQ5MCB8ICAgIDg1NTU5NTkyMS4wMDAwMDAKKyBNb24gRmVi IDEwIDA5OjMyOjAxIDE5OTcgUFNUICAgIHwgICAgICAxMDAwMDAwIHwgICAgIDEwMDAuMDAw IHwgIDEuMDAwMDAwIHwgICAyNDUwNDkwIHwgICAgODU1NTk1OTIxLjAwMDAwMAorIE1vbiBG ZWIgMTAgMDk6MzI6MDEgMTk5NyBQU1QgICAgfCAgICAgIDEwMDAwMDAgfCAgICAgMTAwMC4w MDAgfCAgMS4wMDAwMDAgfCAgIDI0NTA0OTAgfCAgICA4NTU1OTU5MjEuMDAwMDAwCisgTW9u IEZlYiAxMCAxNDozMjowMSAxOTk3IFBTVCAgICB8ICAgICAgMTAwMDAwMCB8ICAgICAxMDAw LjAwMCB8ICAxLjAwMDAwMCB8ICAgMjQ1MDQ5MSB8ICAgIDg1NTYxMzkyMS4wMDAwMDAKKyBU aHUgSnVsIDEwIDE0OjMyOjAxIDE5OTcgUERUICAgIHwgICAgICAxMDAwMDAwIHwgICAgIDEw MDAuMDAwIHwgIDEuMDAwMDAwIHwgICAyNDUwNjQxIHwgICAgODY4NTcwMzIxLjAwMDAwMAor IFR1ZSBKdW4gMTAgMTg6MzI6MDEgMTk5NyBQRFQgICAgfCAgICAgIDEwMDAwMDAgfCAgICAg MTAwMC4wMDAgfCAgMS4wMDAwMDAgfCAgIDI0NTA2MTEgfCAgICA4NjU5OTI3MjEuMDAwMDAw CisgTW9uIEZlYiAxMCAxNzozMjowMSAxOTk3IFBTVCAgICB8ICAgICAgMTAwMDAwMCB8ICAg ICAxMDAwLjAwMCB8ICAxLjAwMDAwMCB8ICAgMjQ1MDQ5MSB8ICAgIDg1NTYyNDcyMS4wMDAw MDAKKyBUdWUgRmViIDExIDE3OjMyOjAxIDE5OTcgUFNUICAgIHwgICAgICAxMDAwMDAwIHwg ICAgIDEwMDAuMDAwIHwgIDEuMDAwMDAwIHwgICAyNDUwNDkyIHwgICAgODU1NzExMTIxLjAw MDAwMAorIFdlZCBGZWIgMTIgMTc6MzI6MDEgMTk5NyBQU1QgICAgfCAgICAgIDEwMDAwMDAg fCAgICAgMTAwMC4wMDAgfCAgMS4wMDAwMDAgfCAgIDI0NTA0OTMgfCAgICA4NTU3OTc1MjEu MDAwMDAwCisgVGh1IEZlYiAxMyAxNzozMjowMSAxOTk3IFBTVCAgICB8ICAgICAgMTAwMDAw MCB8ICAgICAxMDAwLjAwMCB8ICAxLjAwMDAwMCB8ICAgMjQ1MDQ5NCB8ICAgIDg1NTg4Mzky MS4wMDAwMDAKKyBGcmkgRmViIDE0IDE3OjMyOjAxIDE5OTcgUFNUICAgIHwgICAgICAxMDAw MDAwIHwgICAgIDEwMDAuMDAwIHwgIDEuMDAwMDAwIHwgICAyNDUwNDk1IHwgICAgODU1OTcw MzIxLjAwMDAwMAorIFNhdCBGZWIgMTUgMTc6MzI6MDEgMTk5NyBQU1QgICAgfCAgICAgIDEw MDAwMDAgfCAgICAgMTAwMC4wMDAgfCAgMS4wMDAwMDAgfCAgIDI0NTA0OTYgfCAgICA4NTYw NTY3MjEuMDAwMDAwCisgU3VuIEZlYiAxNiAxNzozMjowMSAxOTk3IFBTVCAgICB8ICAgICAg MTAwMDAwMCB8ICAgICAxMDAwLjAwMCB8ICAxLjAwMDAwMCB8ICAgMjQ1MDQ5NyB8ICAgIDg1 NjE0MzEyMS4wMDAwMDAKKyBUdWUgRmViIDE2IDE3OjMyOjAxIDAwOTcgUFNUIEJDIHwgICAg ICAxMDAwMDAwIHwgICAgIDEwMDAuMDAwIHwgIDEuMDAwMDAwIHwgICAxNjg2MDQzIHwgLTY1 MTkyNjgyNDc5LjAwMDAwMAorIFNhdCBGZWIgMTYgMTc6MzI6MDEgMDA5NyBQU1QgICAgfCAg ICAgIDEwMDAwMDAgfCAgICAgMTAwMC4wMDAgfCAgMS4wMDAwMDAgfCAgIDE3NTY1MzcgfCAt NTkxMDIwMDA4NzkuMDAwMDAwCisgVGh1IEZlYiAxNiAxNzozMjowMSAwNTk3IFBTVCAgICB8 ICAgICAgMTAwMDAwMCB8ICAgICAxMDAwLjAwMCB8ICAxLjAwMDAwMCB8ICAgMTkzOTE1OCB8 IC00MzMyMzU0NjQ3OS4wMDAwMDAKKyBUdWUgRmViIDE2IDE3OjMyOjAxIDEwOTcgUFNUICAg IHwgICAgICAxMDAwMDAwIHwgICAgIDEwMDAuMDAwIHwgIDEuMDAwMDAwIHwgICAyMTIxNzc5 IHwgLTI3NTQ1MDkyMDc5LjAwMDAwMAorIFNhdCBGZWIgMTYgMTc6MzI6MDEgMTY5NyBQU1Qg ICAgfCAgICAgIDEwMDAwMDAgfCAgICAgMTAwMC4wMDAgfCAgMS4wMDAwMDAgfCAgIDIzNDA5 MjUgfCAgLTg2MTA4Nzc2NzkuMDAwMDAwCisgVGh1IEZlYiAxNiAxNzozMjowMSAxNzk3IFBT VCAgICB8ICAgICAgMTAwMDAwMCB8ICAgICAxMDAwLjAwMCB8ICAxLjAwMDAwMCB8ICAgMjM3 NzQ0OSB8ICAtNTQ1NTIwNDA3OS4wMDAwMDAKKyBUdWUgRmViIDE2IDE3OjMyOjAxIDE4OTcg UFNUICAgIHwgICAgICAxMDAwMDAwIHwgICAgIDEwMDAuMDAwIHwgIDEuMDAwMDAwIHwgICAy NDEzOTczIHwgIC0yMjk5NTMwNDc5LjAwMDAwMAorIFN1biBGZWIgMTYgMTc6MzI6MDEgMTk5 NyBQU1QgICAgfCAgICAgIDEwMDAwMDAgfCAgICAgMTAwMC4wMDAgfCAgMS4wMDAwMDAgfCAg IDI0NTA0OTcgfCAgICA4NTYxNDMxMjEuMDAwMDAwCisgU2F0IEZlYiAxNiAxNzozMjowMSAy MDk3IFBTVCAgICB8ICAgICAgMTAwMDAwMCB8ICAgICAxMDAwLjAwMCB8ICAxLjAwMDAwMCB8 ICAgMjQ4NzAyMiB8ICAgNDAxMTkwMzEyMS4wMDAwMDAKKyBXZWQgRmViIDI4IDE3OjMyOjAx IDE5OTYgUFNUICAgIHwgICAgICAxMDAwMDAwIHwgICAgIDEwMDAuMDAwIHwgIDEuMDAwMDAw IHwgICAyNDUwMTQzIHwgICAgODI1NTU3NTIxLjAwMDAwMAorIFRodSBGZWIgMjkgMTc6MzI6 MDEgMTk5NiBQU1QgICAgfCAgICAgIDEwMDAwMDAgfCAgICAgMTAwMC4wMDAgfCAgMS4wMDAw MDAgfCAgIDI0NTAxNDQgfCAgICA4MjU2NDM5MjEuMDAwMDAwCisgRnJpIE1hciAwMSAxNzoz MjowMSAxOTk2IFBTVCAgICB8ICAgICAgMTAwMDAwMCB8ICAgICAxMDAwLjAwMCB8ICAxLjAw MDAwMCB8ICAgMjQ1MDE0NSB8ICAgIDgyNTczMDMyMS4wMDAwMDAKKyBNb24gRGVjIDMwIDE3 OjMyOjAxIDE5OTYgUFNUICAgIHwgICAgICAxMDAwMDAwIHwgICAgIDEwMDAuMDAwIHwgIDEu MDAwMDAwIHwgICAyNDUwNDQ5IHwgICAgODUxOTk1OTIxLjAwMDAwMAorIFR1ZSBEZWMgMzEg MTc6MzI6MDEgMTk5NiBQU1QgICAgfCAgICAgIDEwMDAwMDAgfCAgICAgMTAwMC4wMDAgfCAg MS4wMDAwMDAgfCAgIDI0NTA0NTAgfCAgICA4NTIwODIzMjEuMDAwMDAwCisgV2VkIEphbiAw MSAxNzozMjowMSAxOTk3IFBTVCAgICB8ICAgICAgMTAwMDAwMCB8ICAgICAxMDAwLjAwMCB8 ICAxLjAwMDAwMCB8ICAgMjQ1MDQ1MSB8ICAgIDg1MjE2ODcyMS4wMDAwMDAKKyBGcmkgRmVi IDI4IDE3OjMyOjAxIDE5OTcgUFNUICAgIHwgICAgICAxMDAwMDAwIHwgICAgIDEwMDAuMDAw IHwgIDEuMDAwMDAwIHwgICAyNDUwNTA5IHwgICAgODU3MTc5OTIxLjAwMDAwMAorIFNhdCBN YXIgMDEgMTc6MzI6MDEgMTk5NyBQU1QgICAgfCAgICAgIDEwMDAwMDAgfCAgICAgMTAwMC4w MDAgfCAgMS4wMDAwMDAgfCAgIDI0NTA1MTAgfCAgICA4NTcyNjYzMjEuMDAwMDAwCisgVHVl IERlYyAzMCAxNzozMjowMSAxOTk3IFBTVCAgICB8ICAgICAgMTAwMDAwMCB8ICAgICAxMDAw LjAwMCB8ICAxLjAwMDAwMCB8ICAgMjQ1MDgxNCB8ICAgIDg4MzUzMTkyMS4wMDAwMDAKKyBX ZWQgRGVjIDMxIDE3OjMyOjAxIDE5OTcgUFNUICAgIHwgICAgICAxMDAwMDAwIHwgICAgIDEw MDAuMDAwIHwgIDEuMDAwMDAwIHwgICAyNDUwODE1IHwgICAgODgzNjE4MzIxLjAwMDAwMAor IEZyaSBEZWMgMzEgMTc6MzI6MDEgMTk5OSBQU1QgICAgfCAgICAgIDEwMDAwMDAgfCAgICAg MTAwMC4wMDAgfCAgMS4wMDAwMDAgfCAgIDI0NTE1NDUgfCAgICA5NDY2OTAzMjEuMDAwMDAw CisgU2F0IEphbiAwMSAxNzozMjowMSAyMDAwIFBTVCAgICB8ICAgICAgMTAwMDAwMCB8ICAg ICAxMDAwLjAwMCB8ICAxLjAwMDAwMCB8ICAgMjQ1MTU0NiB8ICAgIDk0Njc3NjcyMS4wMDAw MDAKKyBTdW4gRGVjIDMxIDE3OjMyOjAxIDIwMDAgUFNUICAgIHwgICAgICAxMDAwMDAwIHwg ICAgIDEwMDAuMDAwIHwgIDEuMDAwMDAwIHwgICAyNDUxOTExIHwgICAgOTc4MzEyNzIxLjAw MDAwMAorIE1vbiBKYW4gMDEgMTc6MzI6MDEgMjAwMSBQU1QgICAgfCAgICAgIDEwMDAwMDAg fCAgICAgMTAwMC4wMDAgfCAgMS4wMDAwMDAgfCAgIDI0NTE5MTIgfCAgICA5NzgzOTkxMjEu MDAwMDAwCisoNjYgcm93cykKKwogLS0gdmFsdWUgbmVhciB1cHBlciBib3VuZCB1c2VzIHNw ZWNpYWwgY2FzZSBpbiBjb2RlCiBTRUxFQ1QgZGF0ZV9wYXJ0KCdlcG9jaCcsICcyOTQyNzAt MDEtMDEgMDA6MDA6MDArMDAnOjp0aW1lc3RhbXB0eik7CiAgICBkYXRlX3BhcnQgICAKQEAg LTExOTYsNiArMTI3NSwxOSBAQCBTRUxFQ1QgZGF0ZV9wYXJ0KCdlcG9jaCcsICcyOTQyNzAt MDEtMDEgMDA6MDA6MDArMDAnOjp0aW1lc3RhbXB0eik7CiAgOTIyNDA5NzA5MTIwMAogKDEg cm93KQogCitTRUxFQ1QgZXh0cmFjdChlcG9jaCBmcm9tICcyOTQyNzAtMDEtMDEgMDA6MDA6 MDArMDAnOjp0aW1lc3RhbXB0eik7CisgICAgICAgZXh0cmFjdCAgICAgICAgCistLS0tLS0t LS0tLS0tLS0tLS0tLS0tCisgOTIyNDA5NzA5MTIwMC4wMDAwMDAKKygxIHJvdykKKworLS0g YW5vdGhlciBpbnRlcm5hbCBvdmVyZmxvdyB0ZXN0IGNhc2UKK1NFTEVDVCBleHRyYWN0KGVw b2NoIGZyb20gJzUwMDAtMDEtMDEgMDA6MDA6MDArMDAnOjp0aW1lc3RhbXB0eik7CisgICAg ICBleHRyYWN0ICAgICAgIAorLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyA5NTYxNzU4NDAwMC4w MDAwMDAKKygxIHJvdykKKwogLS0gVE9fQ0hBUigpCiBTRUxFQ1QgdG9fY2hhcihkMSwgJ0RB WSBEYXkgZGF5IERZIER5IGR5IE1PTlRIIE1vbnRoIG1vbnRoIFJNIE1PTiBNb24gbW9uJykK ICAgIEZST00gVElNRVNUQU1QVFpfVEJMOwpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3QvcmVncmVz cy9leHBlY3RlZC90aW1ldHoub3V0IGIvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC90aW1l dHoub3V0CmluZGV4IDBhZTViNTIwNGQuLmY0OTYwYzAxNjYgMTAwNjQ0Ci0tLSBhL3NyYy90 ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvdGltZXR6Lm91dAorKysgYi9zcmMvdGVzdC9yZWdyZXNz L2V4cGVjdGVkL3RpbWV0ei5vdXQKQEAgLTE0OCwzMyArMTQ4LDMzIEBAIEhJTlQ6ICBObyBv cGVyYXRvciBtYXRjaGVzIHRoZSBnaXZlbiBuYW1lIGFuZCBhcmd1bWVudCB0eXBlcy4gWW91 IG1pZ2h0IG5lZWQgdG8KIC0tIHRlc3QgRVhUUkFDVAogLS0KIFNFTEVDVCBFWFRSQUNUKE1J Q1JPU0VDT05EIEZST00gVElNRSBXSVRIIFRJTUUgWk9ORSAnMjAyMC0wNS0yNiAxMzozMDoy NS41NzU0MDEtMDQnKTsKLSBkYXRlX3BhcnQgCi0tLS0tLS0tLS0tLQotICAyNTU3NTQwMQor IGV4dHJhY3QgIAorLS0tLS0tLS0tLQorIDI1NTc1NDAxCiAoMSByb3cpCiAKIFNFTEVDVCBF WFRSQUNUKE1JTExJU0VDT05EIEZST00gVElNRSBXSVRIIFRJTUUgWk9ORSAnMjAyMC0wNS0y NiAxMzozMDoyNS41NzU0MDEtMDQnKTsKLSBkYXRlX3BhcnQgCisgIGV4dHJhY3QgIAogLS0t LS0tLS0tLS0KICAyNTU3NS40MDEKICgxIHJvdykKIAogU0VMRUNUIEVYVFJBQ1QoU0VDT05E ICAgICAgRlJPTSBUSU1FIFdJVEggVElNRSBaT05FICcyMDIwLTA1LTI2IDEzOjMwOjI1LjU3 NTQwMS0wNCcpOwotIGRhdGVfcGFydCAKKyAgZXh0cmFjdCAgCiAtLS0tLS0tLS0tLQogIDI1 LjU3NTQwMQogKDEgcm93KQogCiBTRUxFQ1QgRVhUUkFDVChNSU5VVEUgICAgICBGUk9NIFRJ TUUgV0lUSCBUSU1FIFpPTkUgJzIwMjAtMDUtMjYgMTM6MzA6MjUuNTc1NDAxLTA0Jyk7Ci0g ZGF0ZV9wYXJ0IAotLS0tLS0tLS0tLS0KLSAgICAgICAgMzAKKyBleHRyYWN0IAorLS0tLS0t LS0tCisgICAgICAzMAogKDEgcm93KQogCiBTRUxFQ1QgRVhUUkFDVChIT1VSICAgICAgICBG Uk9NIFRJTUUgV0lUSCBUSU1FIFpPTkUgJzIwMjAtMDUtMjYgMTM6MzA6MjUuNTc1NDAxLTA0 Jyk7Ci0gZGF0ZV9wYXJ0IAotLS0tLS0tLS0tLS0KLSAgICAgICAgMTMKKyBleHRyYWN0IAor LS0tLS0tLS0tCisgICAgICAxMwogKDEgcm93KQogCiBTRUxFQ1QgRVhUUkFDVChEQVkgICAg ICAgICBGUk9NIFRJTUUgV0lUSCBUSU1FIFpPTkUgJzIwMjAtMDUtMjYgMTM6MzA6MjUuNTc1 NDAxLTA0Jyk7ICAtLSBlcnJvcgpAQCAtMTgyLDI0ICsxODIsNTAgQEAgRVJST1I6ICAidGlt ZSB3aXRoIHRpbWUgem9uZSIgdW5pdHMgImRheSIgbm90IHJlY29nbml6ZWQKIFNFTEVDVCBF WFRSQUNUKEZPUlROSUdIVCAgIEZST00gVElNRSBXSVRIIFRJTUUgWk9ORSAnMjAyMC0wNS0y NiAxMzozMDoyNS41NzU0MDEtMDQnKTsgIC0tIGVycm9yCiBFUlJPUjogICJ0aW1lIHdpdGgg dGltZSB6b25lIiB1bml0cyAiZm9ydG5pZ2h0IiBub3QgcmVjb2duaXplZAogU0VMRUNUIEVY VFJBQ1QoVElNRVpPTkUgICAgRlJPTSBUSU1FIFdJVEggVElNRSBaT05FICcyMDIwLTA1LTI2 IDEzOjMwOjI1LjU3NTQwMS0wNDozMCcpOworIGV4dHJhY3QgCistLS0tLS0tLS0KKyAgLTE2 MjAwCisoMSByb3cpCisKK1NFTEVDVCBFWFRSQUNUKFRJTUVaT05FX0hPVVIgICBGUk9NIFRJ TUUgV0lUSCBUSU1FIFpPTkUgJzIwMjAtMDUtMjYgMTM6MzA6MjUuNTc1NDAxLTA0OjMwJyk7 CisgZXh0cmFjdCAKKy0tLS0tLS0tLQorICAgICAgLTQKKygxIHJvdykKKworU0VMRUNUIEVY VFJBQ1QoVElNRVpPTkVfTUlOVVRFIEZST00gVElNRSBXSVRIIFRJTUUgWk9ORSAnMjAyMC0w NS0yNiAxMzozMDoyNS41NzU0MDEtMDQ6MzAnKTsKKyBleHRyYWN0IAorLS0tLS0tLS0tCisg ICAgIC0zMAorKDEgcm93KQorCitTRUxFQ1QgRVhUUkFDVChFUE9DSCAgICAgICBGUk9NIFRJ TUUgV0lUSCBUSU1FIFpPTkUgJzIwMjAtMDUtMjYgMTM6MzA6MjUuNTc1NDAxLTA0Jyk7Cisg ICBleHRyYWN0ICAgIAorLS0tLS0tLS0tLS0tLS0KKyA2MzAyNS41NzU0MDEKKygxIHJvdykK KworLS0gZGF0ZV9wYXJ0IGltcGxlbWVudGF0aW9uIGlzIG1vc3RseSB0aGUgc2FtZSBhcyBl eHRyYWN0LCBzbyBvbmx5CistLSB0ZXN0IGEgZmV3IGNhc2VzIGZvciBhZGRpdGlvbmFsIGNv dmVyYWdlLgorU0VMRUNUIGRhdGVfcGFydCgnbWljcm9zZWNvbmQnLCBUSU1FIFdJVEggVElN RSBaT05FICcyMDIwLTA1LTI2IDEzOjMwOjI1LjU3NTQwMS0wNCcpOwogIGRhdGVfcGFydCAK IC0tLS0tLS0tLS0tCi0gICAgLTE2MjAwCisgIDI1NTc1NDAxCiAoMSByb3cpCiAKLVNFTEVD VCBFWFRSQUNUKFRJTUVaT05FX0hPVVIgICBGUk9NIFRJTUUgV0lUSCBUSU1FIFpPTkUgJzIw MjAtMDUtMjYgMTM6MzA6MjUuNTc1NDAxLTA0OjMwJyk7CitTRUxFQ1QgZGF0ZV9wYXJ0KCdt aWxsaXNlY29uZCcsIFRJTUUgV0lUSCBUSU1FIFpPTkUgJzIwMjAtMDUtMjYgMTM6MzA6MjUu NTc1NDAxLTA0Jyk7CiAgZGF0ZV9wYXJ0IAogLS0tLS0tLS0tLS0KLSAgICAgICAgLTQKKyAy NTU3NS40MDEKICgxIHJvdykKIAotU0VMRUNUIEVYVFJBQ1QoVElNRVpPTkVfTUlOVVRFIEZS T00gVElNRSBXSVRIIFRJTUUgWk9ORSAnMjAyMC0wNS0yNiAxMzozMDoyNS41NzU0MDEtMDQ6 MzAnKTsKK1NFTEVDVCBkYXRlX3BhcnQoJ3NlY29uZCcsICAgICAgVElNRSBXSVRIIFRJTUUg Wk9ORSAnMjAyMC0wNS0yNiAxMzozMDoyNS41NzU0MDEtMDQnKTsKICBkYXRlX3BhcnQgCiAt LS0tLS0tLS0tLQotICAgICAgIC0zMAorIDI1LjU3NTQwMQogKDEgcm93KQogCi1TRUxFQ1Qg RVhUUkFDVChFUE9DSCAgICAgICBGUk9NIFRJTUUgV0lUSCBUSU1FIFpPTkUgJzIwMjAtMDUt MjYgMTM6MzA6MjUuNTc1NDAxLTA0Jyk7CitTRUxFQ1QgZGF0ZV9wYXJ0KCdlcG9jaCcsICAg ICAgIFRJTUUgV0lUSCBUSU1FIFpPTkUgJzIwMjAtMDUtMjYgMTM6MzA6MjUuNTc1NDAxLTA0 Jyk7CiAgIGRhdGVfcGFydCAgIAogLS0tLS0tLS0tLS0tLS0KICA2MzAyNS41NzU0MDEKZGlm ZiAtLWdpdCBhL3NyYy90ZXN0L3JlZ3Jlc3Mvc3FsL2RhdGUuc3FsIGIvc3JjL3Rlc3QvcmVn cmVzcy9zcWwvZGF0ZS5zcWwKaW5kZXggMWNkZDZiZGNhMS4uOGY3NDM1Yjc2NyAxMDA2NDQK LS0tIGEvc3JjL3Rlc3QvcmVncmVzcy9zcWwvZGF0ZS5zcWwKKysrIGIvc3JjL3Rlc3QvcmVn cmVzcy9zcWwvZGF0ZS5zcWwKQEAgLTI4NCwxNCArMjg0LDE4IEBAIENSRUFURSBUQUJMRSBE QVRFX1RCTCAoZjEgZGF0ZSk7CiBTRUxFQ1QgRVhUUkFDVChEQVkgICAgICAgICAgIEZST00g REFURSAnMjAyMC0wOC0xMScpOwogU0VMRUNUIEVYVFJBQ1QoTU9OVEggICAgICAgICBGUk9N IERBVEUgJzIwMjAtMDgtMTEnKTsKIFNFTEVDVCBFWFRSQUNUKFlFQVIgICAgICAgICAgRlJP TSBEQVRFICcyMDIwLTA4LTExJyk7CitTRUxFQ1QgRVhUUkFDVChZRUFSICAgICAgICAgIEZS T00gREFURSAnMjAyMC0wOC0xMSBCQycpOwogU0VMRUNUIEVYVFJBQ1QoREVDQURFICAgICAg ICBGUk9NIERBVEUgJzIwMjAtMDgtMTEnKTsKIFNFTEVDVCBFWFRSQUNUKENFTlRVUlkgICAg ICAgRlJPTSBEQVRFICcyMDIwLTA4LTExJyk7CiBTRUxFQ1QgRVhUUkFDVChNSUxMRU5OSVVN ICAgIEZST00gREFURSAnMjAyMC0wOC0xMScpOwogU0VMRUNUIEVYVFJBQ1QoSVNPWUVBUiAg ICAgICBGUk9NIERBVEUgJzIwMjAtMDgtMTEnKTsKK1NFTEVDVCBFWFRSQUNUKElTT1lFQVIg ICAgICAgRlJPTSBEQVRFICcyMDIwLTA4LTExIEJDJyk7CiBTRUxFQ1QgRVhUUkFDVChRVUFS VEVSICAgICAgIEZST00gREFURSAnMjAyMC0wOC0xMScpOwogU0VMRUNUIEVYVFJBQ1QoV0VF SyAgICAgICAgICBGUk9NIERBVEUgJzIwMjAtMDgtMTEnKTsKIFNFTEVDVCBFWFRSQUNUKERP VyAgICAgICAgICAgRlJPTSBEQVRFICcyMDIwLTA4LTExJyk7CitTRUxFQ1QgRVhUUkFDVChE T1cgICAgICAgICAgIEZST00gREFURSAnMjAyMC0wOC0xNicpOwogU0VMRUNUIEVYVFJBQ1Qo SVNPRE9XICAgICAgICBGUk9NIERBVEUgJzIwMjAtMDgtMTEnKTsKK1NFTEVDVCBFWFRSQUNU KElTT0RPVyAgICAgICAgRlJPTSBEQVRFICcyMDIwLTA4LTE2Jyk7CiBTRUxFQ1QgRVhUUkFD VChET1kgICAgICAgICAgIEZST00gREFURSAnMjAyMC0wOC0xMScpOwogU0VMRUNUIEVYVFJB Q1QoVElNRVpPTkUgICAgICBGUk9NIERBVEUgJzIwMjAtMDgtMTEnKTsKIFNFTEVDVCBFWFRS QUNUKFRJTUVaT05FX00gICAgRlJPTSBEQVRFICcyMDIwLTA4LTExJyk7CkBAIC0zMjEsMTQg KzMyNSw5IEBAIENSRUFURSBUQUJMRSBEQVRFX1RCTCAoZjEgZGF0ZSk7CiAtLQogLS0gb3Nj aWxsYXRpbmcgZmllbGRzIGZyb20gbm9uLWZpbml0ZSBkYXRlOgogLS0KLVNFTEVDVCBFWFRS QUNUKEhPVVIgRlJPTSBEQVRFICdpbmZpbml0eScpOyAgICAgIC0tIE5VTEwKLVNFTEVDVCBF WFRSQUNUKEhPVVIgRlJPTSBEQVRFICctaW5maW5pdHknKTsgICAgIC0tIE5VTEwKLS0tIGFs bCBwb3NzaWJsZSBmaWVsZHMKLVNFTEVDVCBFWFRSQUNUKE1JQ1JPU0VDT05EUyAgRlJPTSBE QVRFICdpbmZpbml0eScpOyAgICAtLSBOVUxMCi1TRUxFQ1QgRVhUUkFDVChNSUxMSVNFQ09O RFMgIEZST00gREFURSAnaW5maW5pdHknKTsgICAgLS0gTlVMTAotU0VMRUNUIEVYVFJBQ1Qo U0VDT05EICAgICAgICBGUk9NIERBVEUgJ2luZmluaXR5Jyk7ICAgIC0tIE5VTEwKLVNFTEVD VCBFWFRSQUNUKE1JTlVURSAgICAgICAgRlJPTSBEQVRFICdpbmZpbml0eScpOyAgICAtLSBO VUxMCi1TRUxFQ1QgRVhUUkFDVChIT1VSICAgICAgICAgIEZST00gREFURSAnaW5maW5pdHkn KTsgICAgLS0gTlVMTAorU0VMRUNUIEVYVFJBQ1QoREFZIEZST00gREFURSAnaW5maW5pdHkn KTsgICAgICAtLSBOVUxMCitTRUxFQ1QgRVhUUkFDVChEQVkgRlJPTSBEQVRFICctaW5maW5p dHknKTsgICAgIC0tIE5VTEwKKy0tIGFsbCBzdXBwb3J0ZWQgZmllbGRzCiBTRUxFQ1QgRVhU UkFDVChEQVkgICAgICAgICAgIEZST00gREFURSAnaW5maW5pdHknKTsgICAgLS0gTlVMTAog U0VMRUNUIEVYVFJBQ1QoTU9OVEggICAgICAgICBGUk9NIERBVEUgJ2luZmluaXR5Jyk7ICAg IC0tIE5VTEwKIFNFTEVDVCBFWFRSQUNUKFFVQVJURVIgICAgICAgRlJPTSBEQVRFICdpbmZp bml0eScpOyAgICAtLSBOVUxMCkBAIC0zMzYsMTUgKzMzNSwxMiBAQCBDUkVBVEUgVEFCTEUg REFURV9UQkwgKGYxIGRhdGUpOwogU0VMRUNUIEVYVFJBQ1QoRE9XICAgICAgICAgICBGUk9N IERBVEUgJ2luZmluaXR5Jyk7ICAgIC0tIE5VTEwKIFNFTEVDVCBFWFRSQUNUKElTT0RPVyAg ICAgICAgRlJPTSBEQVRFICdpbmZpbml0eScpOyAgICAtLSBOVUxMCiBTRUxFQ1QgRVhUUkFD VChET1kgICAgICAgICAgIEZST00gREFURSAnaW5maW5pdHknKTsgICAgLS0gTlVMTAotU0VM RUNUIEVYVFJBQ1QoVElNRVpPTkUgICAgICBGUk9NIERBVEUgJ2luZmluaXR5Jyk7ICAgIC0t IE5VTEwKLVNFTEVDVCBFWFRSQUNUKFRJTUVaT05FX00gICAgRlJPTSBEQVRFICdpbmZpbml0 eScpOyAgICAtLSBOVUxMCi1TRUxFQ1QgRVhUUkFDVChUSU1FWk9ORV9IICAgIEZST00gREFU RSAnaW5maW5pdHknKTsgICAgLS0gTlVMTAogLS0KIC0tIG1vbm90b25pYyBmaWVsZHMgZnJv bSBub24tZmluaXRlIGRhdGU6CiAtLQogU0VMRUNUIEVYVFJBQ1QoRVBPQ0ggRlJPTSBEQVRF ICdpbmZpbml0eScpOyAgICAgICAgIC0tICBJbmZpbml0eQogU0VMRUNUIEVYVFJBQ1QoRVBP Q0ggRlJPTSBEQVRFICctaW5maW5pdHknKTsgICAgICAgIC0tIC1JbmZpbml0eQotLS0gYWxs IHBvc3NpYmxlIGZpZWxkcworLS0gYWxsIHN1cHBvcnRlZCBmaWVsZHMKIFNFTEVDVCBFWFRS QUNUKFlFQVIgICAgICAgRlJPTSBEQVRFICdpbmZpbml0eScpOyAgICAtLSAgSW5maW5pdHkK IFNFTEVDVCBFWFRSQUNUKERFQ0FERSAgICAgRlJPTSBEQVRFICdpbmZpbml0eScpOyAgICAt LSAgSW5maW5pdHkKIFNFTEVDVCBFWFRSQUNUKENFTlRVUlkgICAgRlJPTSBEQVRFICdpbmZp bml0eScpOyAgICAtLSAgSW5maW5pdHkKQEAgLTM1NSw3ICszNTEsNyBAQCBDUkVBVEUgVEFC TEUgREFURV9UQkwgKGYxIGRhdGUpOwogLS0KIC0tIHdyb25nIGZpZWxkcyBmcm9tIG5vbi1m aW5pdGUgZGF0ZToKIC0tCi1TRUxFQ1QgRVhUUkFDVChNSUNST1NFQyAgRlJPTSBEQVRFICdp bmZpbml0eScpOyAgICAgLS0gRVJST1I6ICB0aW1lc3RhbXAgdW5pdHMgIm1pY3Jvc2VjIiBu b3QgcmVjb2duaXplZAorU0VMRUNUIEVYVFJBQ1QoTUlDUk9TRUMgIEZST00gREFURSAnaW5m aW5pdHknKTsgICAgIC0tIGVycm9yCiAKIC0tIHRlc3QgY29uc3RydWN0b3JzCiBzZWxlY3Qg bWFrZV9kYXRlKDIwMTMsIDcsIDE1KTsKZGlmZiAtLWdpdCBhL3NyYy90ZXN0L3JlZ3Jlc3Mv c3FsL2ludGVydmFsLnNxbCBiL3NyYy90ZXN0L3JlZ3Jlc3Mvc3FsL2ludGVydmFsLnNxbApp bmRleCAxMWMxOTI5YmVmLi42ZDUzMjM5OGJkIDEwMDY0NAotLS0gYS9zcmMvdGVzdC9yZWdy ZXNzL3NxbC9pbnRlcnZhbC5zcWwKKysrIGIvc3JjL3Rlc3QvcmVncmVzcy9zcWwvaW50ZXJ2 YWwuc3FsCkBAIC0zNDMsMyArMzQzLDE1IEBAIENSRUFURSBUQUJMRSBJTlRFUlZBTF9NVUxE SVZfVEJMIChzcGFuIGludGVydmFsKTsKIFNFTEVDVCBFWFRSQUNUKENFTlRVUlkgRlJPTSBJ TlRFUlZBTCAnOTkgeScpOwogU0VMRUNUIEVYVFJBQ1QoQ0VOVFVSWSBGUk9NIElOVEVSVkFM ICctOTkgeScpOwogU0VMRUNUIEVYVFJBQ1QoQ0VOVFVSWSBGUk9NIElOVEVSVkFMICctMTAw IHknKTsKKworLS0gZGF0ZV9wYXJ0IGltcGxlbWVudGF0aW9uIGlzIG1vc3RseSB0aGUgc2Ft ZSBhcyBleHRyYWN0LCBzbyBvbmx5CistLSB0ZXN0IGEgZmV3IGNhc2VzIGZvciBhZGRpdGlv bmFsIGNvdmVyYWdlLgorU0VMRUNUIGYxLAorICAgIGRhdGVfcGFydCgnbWljcm9zZWNvbmQn LCBmMSkgQVMgbWljcm9zZWNvbmQsCisgICAgZGF0ZV9wYXJ0KCdtaWxsaXNlY29uZCcsIGYx KSBBUyBtaWxsaXNlY29uZCwKKyAgICBkYXRlX3BhcnQoJ3NlY29uZCcsIGYxKSBBUyBzZWNv bmQsCisgICAgZGF0ZV9wYXJ0KCdlcG9jaCcsIGYxKSBBUyBlcG9jaAorICAgIEZST00gSU5U RVJWQUxfVEJMOworCistLSBpbnRlcm5hbCBvdmVyZmxvdyB0ZXN0IGNhc2UKK1NFTEVDVCBl eHRyYWN0KGVwb2NoIGZyb20gaW50ZXJ2YWwgJzEwMDAwMDAwMDAgZGF5cycpOwpkaWZmIC0t Z2l0IGEvc3JjL3Rlc3QvcmVncmVzcy9zcWwvdGltZS5zcWwgYi9zcmMvdGVzdC9yZWdyZXNz L3NxbC90aW1lLnNxbAppbmRleCA2ODhiZDZiNzViLi4zNjM3ZjI4Nzk4IDEwMDY0NAotLS0g YS9zcmMvdGVzdC9yZWdyZXNzL3NxbC90aW1lLnNxbAorKysgYi9zcmMvdGVzdC9yZWdyZXNz L3NxbC90aW1lLnNxbApAQCAtNjMsMyArNjMsMTAgQEAgQ1JFQVRFIFRBQkxFIFRJTUVfVEJM IChmMSB0aW1lKDIpKTsKIFNFTEVDVCBFWFRSQUNUKEZPUlROSUdIVCAgIEZST00gVElNRSAn MjAyMC0wNS0yNiAxMzozMDoyNS41NzU0MDEnKTsgIC0tIGVycm9yCiBTRUxFQ1QgRVhUUkFD VChUSU1FWk9ORSAgICBGUk9NIFRJTUUgJzIwMjAtMDUtMjYgMTM6MzA6MjUuNTc1NDAxJyk7 ICAtLSBlcnJvcgogU0VMRUNUIEVYVFJBQ1QoRVBPQ0ggICAgICAgRlJPTSBUSU1FICcyMDIw LTA1LTI2IDEzOjMwOjI1LjU3NTQwMScpOworCistLSBkYXRlX3BhcnQgaW1wbGVtZW50YXRp b24gaXMgbW9zdGx5IHRoZSBzYW1lIGFzIGV4dHJhY3QsIHNvIG9ubHkKKy0tIHRlc3QgYSBm ZXcgY2FzZXMgZm9yIGFkZGl0aW9uYWwgY292ZXJhZ2UuCitTRUxFQ1QgZGF0ZV9wYXJ0KCdt aWNyb3NlY29uZCcsIFRJTUUgJzIwMjAtMDUtMjYgMTM6MzA6MjUuNTc1NDAxJyk7CitTRUxF Q1QgZGF0ZV9wYXJ0KCdtaWxsaXNlY29uZCcsIFRJTUUgJzIwMjAtMDUtMjYgMTM6MzA6MjUu NTc1NDAxJyk7CitTRUxFQ1QgZGF0ZV9wYXJ0KCdzZWNvbmQnLCAgICAgIFRJTUUgJzIwMjAt MDUtMjYgMTM6MzA6MjUuNTc1NDAxJyk7CitTRUxFQ1QgZGF0ZV9wYXJ0KCdlcG9jaCcsICAg ICAgIFRJTUUgJzIwMjAtMDUtMjYgMTM6MzA6MjUuNTc1NDAxJyk7CmRpZmYgLS1naXQgYS9z cmMvdGVzdC9yZWdyZXNzL3NxbC90aW1lc3RhbXAuc3FsIGIvc3JjL3Rlc3QvcmVncmVzcy9z cWwvdGltZXN0YW1wLnNxbAppbmRleCBlZDAzZDdjMjE4Li5jNDNhMWYyMjY4IDEwMDY0NAot LS0gYS9zcmMvdGVzdC9yZWdyZXNzL3NxbC90aW1lc3RhbXAuc3FsCisrKyBiL3NyYy90ZXN0 L3JlZ3Jlc3Mvc3FsL3RpbWVzdGFtcC5zcWwKQEAgLTI2MSw4ICsyNjEsMjEgQEAgQ1JFQVRF IFRBQkxFIFRJTUVTVEFNUF9UQkwgKGQxIHRpbWVzdGFtcCgyKSB3aXRob3V0IHRpbWUgem9u ZSk7CiAgICBkYXRlX3BhcnQoICdlcG9jaCcsIGQxKSBBUyBlcG9jaAogICAgRlJPTSBUSU1F U1RBTVBfVEJMOwogCistLSBleHRyYWN0IGltcGxlbWVudGF0aW9uIGlzIG1vc3RseSB0aGUg c2FtZSBhcyBkYXRlX3BhcnQsIHNvIG9ubHkKKy0tIHRlc3QgYSBmZXcgY2FzZXMgZm9yIGFk ZGl0aW9uYWwgY292ZXJhZ2UuCitTRUxFQ1QgZDEgYXMgInRpbWVzdGFtcCIsCisgICBleHRy YWN0KG1pY3Jvc2Vjb25kcyBmcm9tIGQxKSBBUyBtaWNyb3NlY29uZHMsCisgICBleHRyYWN0 KG1pbGxpc2Vjb25kcyBmcm9tIGQxKSBBUyBtaWxsaXNlY29uZHMsCisgICBleHRyYWN0KHNl Y29uZHMgZnJvbSBkMSkgQVMgc2Vjb25kcywKKyAgIHJvdW5kKGV4dHJhY3QoanVsaWFuIGZy b20gZDEpKSBBUyBqdWxpYW4sCisgICBleHRyYWN0KGVwb2NoIGZyb20gZDEpIEFTIGVwb2No CisgICBGUk9NIFRJTUVTVEFNUF9UQkw7CisKIC0tIHZhbHVlIG5lYXIgdXBwZXIgYm91bmQg dXNlcyBzcGVjaWFsIGNhc2UgaW4gY29kZQogU0VMRUNUIGRhdGVfcGFydCgnZXBvY2gnLCAn Mjk0MjcwLTAxLTAxIDAwOjAwOjAwJzo6dGltZXN0YW1wKTsKK1NFTEVDVCBleHRyYWN0KGVw b2NoIGZyb20gJzI5NDI3MC0wMS0wMSAwMDowMDowMCc6OnRpbWVzdGFtcCk7CistLSBhbm90 aGVyIGludGVybmFsIG92ZXJmbG93IHRlc3QgY2FzZQorU0VMRUNUIGV4dHJhY3QoZXBvY2gg ZnJvbSAnNTAwMC0wMS0wMSAwMDowMDowMCc6OnRpbWVzdGFtcCk7CiAKIC0tIFRPX0NIQVIo KQogU0VMRUNUIHRvX2NoYXIoZDEsICdEQVkgRGF5IGRheSBEWSBEeSBkeSBNT05USCBNb250 aCBtb250aCBSTSBNT04gTW9uIG1vbicpCmRpZmYgLS1naXQgYS9zcmMvdGVzdC9yZWdyZXNz L3NxbC90aW1lc3RhbXB0ei5zcWwgYi9zcmMvdGVzdC9yZWdyZXNzL3NxbC90aW1lc3RhbXB0 ei5zcWwKaW5kZXggZmQxYmY1MGE5Yy4uMTdjZWQ5OWVmYyAxMDA2NDQKLS0tIGEvc3JjL3Rl c3QvcmVncmVzcy9zcWwvdGltZXN0YW1wdHouc3FsCisrKyBiL3NyYy90ZXN0L3JlZ3Jlc3Mv c3FsL3RpbWVzdGFtcHR6LnNxbApAQCAtMjc1LDggKzI3NSwyMSBAQCBDUkVBVEUgVEFCTEUg VElNRVNUQU1QVFpfVEJMIChkMSB0aW1lc3RhbXAoMikgd2l0aCB0aW1lIHpvbmUpOwogICAg ZGF0ZV9wYXJ0KCAndGltZXpvbmVfbWludXRlJywgZDEpIEFTIHRpbWV6b25lX21pbnV0ZQog ICAgRlJPTSBUSU1FU1RBTVBUWl9UQkw7CiAKKy0tIGV4dHJhY3QgaW1wbGVtZW50YXRpb24g aXMgbW9zdGx5IHRoZSBzYW1lIGFzIGRhdGVfcGFydCwgc28gb25seQorLS0gdGVzdCBhIGZl dyBjYXNlcyBmb3IgYWRkaXRpb25hbCBjb3ZlcmFnZS4KK1NFTEVDVCBkMSBhcyAidGltZXN0 YW1wIiwKKyAgIGV4dHJhY3QobWljcm9zZWNvbmRzIGZyb20gZDEpIEFTIG1pY3Jvc2Vjb25k cywKKyAgIGV4dHJhY3QobWlsbGlzZWNvbmRzIGZyb20gZDEpIEFTIG1pbGxpc2Vjb25kcywK KyAgIGV4dHJhY3Qoc2Vjb25kcyBmcm9tIGQxKSBBUyBzZWNvbmRzLAorICAgcm91bmQoZXh0 cmFjdChqdWxpYW4gZnJvbSBkMSkpIEFTIGp1bGlhbiwKKyAgIGV4dHJhY3QoZXBvY2ggZnJv bSBkMSkgQVMgZXBvY2gKKyAgIEZST00gVElNRVNUQU1QVFpfVEJMOworCiAtLSB2YWx1ZSBu ZWFyIHVwcGVyIGJvdW5kIHVzZXMgc3BlY2lhbCBjYXNlIGluIGNvZGUKIFNFTEVDVCBkYXRl X3BhcnQoJ2Vwb2NoJywgJzI5NDI3MC0wMS0wMSAwMDowMDowMCswMCc6OnRpbWVzdGFtcHR6 KTsKK1NFTEVDVCBleHRyYWN0KGVwb2NoIGZyb20gJzI5NDI3MC0wMS0wMSAwMDowMDowMCsw MCc6OnRpbWVzdGFtcHR6KTsKKy0tIGFub3RoZXIgaW50ZXJuYWwgb3ZlcmZsb3cgdGVzdCBj YXNlCitTRUxFQ1QgZXh0cmFjdChlcG9jaCBmcm9tICc1MDAwLTAxLTAxIDAwOjAwOjAwKzAw Jzo6dGltZXN0YW1wdHopOwogCiAtLSBUT19DSEFSKCkKIFNFTEVDVCB0b19jaGFyKGQxLCAn REFZIERheSBkYXkgRFkgRHkgZHkgTU9OVEggTW9udGggbW9udGggUk0gTU9OIE1vbiBtb24n KQpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3QvcmVncmVzcy9zcWwvdGltZXR6LnNxbCBiL3NyYy90 ZXN0L3JlZ3Jlc3Mvc3FsL3RpbWV0ei5zcWwKaW5kZXggZjM5ZWExMjFiZi4uN2I3MGY0NjU2 YyAxMDA2NDQKLS0tIGEvc3JjL3Rlc3QvcmVncmVzcy9zcWwvdGltZXR6LnNxbAorKysgYi9z cmMvdGVzdC9yZWdyZXNzL3NxbC90aW1ldHouc3FsCkBAIC03MCwzICs3MCwxMCBAQCBDUkVB VEUgVEFCTEUgVElNRVRaX1RCTCAoZjEgdGltZSgyKSB3aXRoIHRpbWUgem9uZSk7CiBTRUxF Q1QgRVhUUkFDVChUSU1FWk9ORV9IT1VSICAgRlJPTSBUSU1FIFdJVEggVElNRSBaT05FICcy MDIwLTA1LTI2IDEzOjMwOjI1LjU3NTQwMS0wNDozMCcpOwogU0VMRUNUIEVYVFJBQ1QoVElN RVpPTkVfTUlOVVRFIEZST00gVElNRSBXSVRIIFRJTUUgWk9ORSAnMjAyMC0wNS0yNiAxMzoz MDoyNS41NzU0MDEtMDQ6MzAnKTsKIFNFTEVDVCBFWFRSQUNUKEVQT0NIICAgICAgIEZST00g VElNRSBXSVRIIFRJTUUgWk9ORSAnMjAyMC0wNS0yNiAxMzozMDoyNS41NzU0MDEtMDQnKTsK KworLS0gZGF0ZV9wYXJ0IGltcGxlbWVudGF0aW9uIGlzIG1vc3RseSB0aGUgc2FtZSBhcyBl eHRyYWN0LCBzbyBvbmx5CistLSB0ZXN0IGEgZmV3IGNhc2VzIGZvciBhZGRpdGlvbmFsIGNv dmVyYWdlLgorU0VMRUNUIGRhdGVfcGFydCgnbWljcm9zZWNvbmQnLCBUSU1FIFdJVEggVElN RSBaT05FICcyMDIwLTA1LTI2IDEzOjMwOjI1LjU3NTQwMS0wNCcpOworU0VMRUNUIGRhdGVf cGFydCgnbWlsbGlzZWNvbmQnLCBUSU1FIFdJVEggVElNRSBaT05FICcyMDIwLTA1LTI2IDEz OjMwOjI1LjU3NTQwMS0wNCcpOworU0VMRUNUIGRhdGVfcGFydCgnc2Vjb25kJywgICAgICBU SU1FIFdJVEggVElNRSBaT05FICcyMDIwLTA1LTI2IDEzOjMwOjI1LjU3NTQwMS0wNCcpOwor U0VMRUNUIGRhdGVfcGFydCgnZXBvY2gnLCAgICAgICBUSU1FIFdJVEggVElNRSBaT05FICcy MDIwLTA1LTI2IDEzOjMwOjI1LjU3NTQwMS0wNCcpOwoKYmFzZS1jb21taXQ6IDkxZTdjOTAz MjkxMTE2YmQwODFhYmU3ZDRhMDU4ZDQwYTJhMDZlMTYKLS0gCjIuMzEuMAoK --------------645FCF422486263188EFAC6E--