<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>69865</bug_id>
          
          <creation_ts>2011-10-11 13:41:16 -0700</creation_ts>
          <short_desc>Crash in ScrollAnimator.cpp</short_desc>
          <delta_ts>2011-11-05 06:39:20 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>UI Events</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P1</priority>
          <bug_severity>Critical</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Stephen Chenney">schenney</reporter>
          <assigned_to name="Stephen Chenney">schenney</assigned_to>
          <cc>bdakin</cc>
    
    <cc>sam</cc>
    
    <cc>tkent</cc>
    
    <cc>tony</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>481872</commentid>
    <comment_count>0</comment_count>
    <who name="Stephen Chenney">schenney</who>
    <bug_when>2011-10-11 13:41:16 -0700</bug_when>
    <thetext>Line 110 of ScrollAnimator.cpp is crashing - 11 reports so far for Chrome.

Evidence suggests that this assertion:

        if (e.granularity() == ScrollByPageWheelEvent) {
            ASSERT(!e.deltaX());

would fail in the crash situations, because it implicitly verifies that verticalScrollbar is non-null. The root cause of the problem seems to be the specification of ScrollbyPageWheelEvent granularity for a horizontal scrollbar.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>482400</commentid>
    <comment_count>1</comment_count>
    <who name="Stephen Chenney">schenney</who>
    <bug_when>2011-10-12 07:38:40 -0700</bug_when>
    <thetext>I have tracked the issue down to this comment and related code in the chromium webkit port:

        // Synthesize mousewheel event from a scroll event.  This is needed to
        // simulate middle mouse scrolling in some laptops.  Use GetAsyncKeyState
        // for key state since we are synthesizing the input event.

The code related to this synthetic event is capable of generating a horizontal page mouse wheel event that violates the existing assumptions in ScrollAnimator.

The devices in question are laptops with TrackPoint interfaces, where there is a mode that enables the pointer to produce whole page horizontal mouse wheel events at the OS level (Windows and Linux).

I believe that the best way to fix this is to add support for horizontal page mouse wheel scrolling in ScrollAnimator.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>487856</commentid>
    <comment_count>2</comment_count>
    <who name="Stephen Chenney">schenney</who>
    <bug_when>2011-10-20 13:57:01 -0700</bug_when>
    <thetext>For those mac port folks on the CC list ...

Is there even a way for a mac to generate a paged wheel event? As far as I can tell, CG events can only be per-pixel or per-line wheel scrolling.

On chromium, or windows, this looks to be specific to a small set of devices.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>491139</commentid>
    <comment_count>3</comment_count>
      <attachid>112584</attachid>
    <who name="Stephen Chenney">schenney</who>
    <bug_when>2011-10-26 13:23:16 -0700</bug_when>
    <thetext>Created attachment 112584
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>491142</commentid>
    <comment_count>4</comment_count>
      <attachid>112584</attachid>
    <who name="Stephen Chenney">schenney</who>
    <bug_when>2011-10-26 13:26:24 -0700</bug_when>
    <thetext>Comment on attachment 112584
Patch

The new tests are disabled on mac and win (not chromium) because I cannot figure out how to generate a paging wheel event for those platforms. It seems that CoreGraphics does not support such events. Correct me if I&apos;m wrong.

Chromium mac results are different because it uses a different scrollbar theme that sets a min overlap on paging.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>491161</commentid>
    <comment_count>5</comment_count>
      <attachid>112584</attachid>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2011-10-26 13:46:22 -0700</bug_when>
    <thetext>Comment on attachment 112584
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=112584&amp;action=review

&gt; LayoutTests/fast/events/platform-wheelevent-paging-xy-in-scrolling-div.html:58
&gt; +         &lt;!-- This div is 200 pixels high. The content results in scrool bars on
&gt; +          both edges, resulting in an effective content area of 185 x 185 on
&gt; +          linux. The paging context overlap is 24 pixels. So one page of scroll
&gt; +          moves the content by 185 - 24 -= 161 pixels. --&gt;

Does this mean the tests rely on scrollbar width? Scrollbar sizes can vary from platform to platform.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>491317</commentid>
    <comment_count>6</comment_count>
    <who name="Stephen Chenney">schenney</who>
    <bug_when>2011-10-26 18:14:06 -0700</bug_when>
    <thetext>Yes, this test depends on scrollbar width. AFAIK you can&apos;t suppress the scrollbars while still enabling scrolling, but please let me know if that is not correct. As far as I know, we also try very hard to have scrollbar width match across platforms during layout tests so that both text and pixel expectations match across platforms.

The test also depends on the scrollbar theme and other non-constants such as the percentage of a page scrolled per paging event and the minimum percentage to scroll per page. For example, the chromium mac port produces different scroll behavior. The solution I have for this is to have the expectations set to expect a FAIL for one of the shouldBe tests. This seems sufficient because the expectations still include the value that the test actually produced and hence will catch cases where the behavior changes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>496511</commentid>
    <comment_count>7</comment_count>
      <attachid>112584</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-11-04 15:43:38 -0700</bug_when>
    <thetext>Comment on attachment 112584
Patch

Rejecting attachment 112584 from commit-queue.

Failed to run &quot;[&apos;/mnt/git/webkit-commit-queue/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=queues.webkit.org&apos;, &apos;-...&quot; exit_code: 2

Last 500 characters of output:
form-wheelevent-paging-y-in-scrolling-page-expected.txt
patching file LayoutTests/platform/mac/Skipped
Hunk #1 FAILED at 450.
1 out of 1 hunk FAILED -- saving rejects to file LayoutTests/platform/mac/Skipped.rej
patching file LayoutTests/platform/win/Skipped
Hunk #1 FAILED at 1428.
1 out of 1 hunk FAILED -- saving rejects to file LayoutTests/platform/win/Skipped.rej

Failed to run &quot;[u&apos;/mnt/git/webkit-commit-queue/Tools/Scripts/svn-apply&apos;, u&apos;--reviewer&apos;, u&apos;Anders Carlsson&apos;, u&apos;--...&quot; exit_code: 1

Full output: http://queues.webkit.org/results/10333116</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>496544</commentid>
    <comment_count>8</comment_count>
      <attachid>113731</attachid>
    <who name="Stephen Chenney">schenney</who>
    <bug_when>2011-11-04 16:33:08 -0700</bug_when>
    <thetext>Created attachment 113731
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>496594</commentid>
    <comment_count>9</comment_count>
      <attachid>113731</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-11-04 17:51:39 -0700</bug_when>
    <thetext>Comment on attachment 113731
Patch

Clearing flags on attachment: 113731

Committed r99339: &lt;http://trac.webkit.org/changeset/99339&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>496596</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-11-04 17:51:45 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>496639</commentid>
    <comment_count>11</comment_count>
    <who name="Tony Chang">tony</who>
    <bug_when>2011-11-04 23:03:21 -0700</bug_when>
    <thetext>A few of these tests are failing on the Chromium CG bots:

http://test-results.appspot.com/dashboards/flakiness_dashboard.html#tests=fast%2Fevents%2Fplatform-wheelevent-paging-x-in-scrolling-page.html%2Cfast%2Fevents%2Fplatform-wheelevent-paging-y-in-scrolling-page.html%2Cfast%2Fevents%2Fplatform-wheelevent-paging-xy-in-scrolling-page.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>496656</commentid>
    <comment_count>12</comment_count>
    <who name="Stephen Chenney">schenney</who>
    <bug_when>2011-11-05 06:39:20 -0700</bug_when>
    <thetext>The chromium-mac expectations need to be copied into the chromium-cg-mac expectations. Filed https://bugs.webkit.org/show_bug.cgi?id=71606 to track.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>112584</attachid>
            <date>2011-10-26 13:23:16 -0700</date>
            <delta_ts>2011-11-04 16:33:04 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-69865-20111026162315.patch</filename>
            <type>text/plain</type>
            <size>56191</size>
            <attacher name="Stephen Chenney">schenney</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDk4NTEyKQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMzIgQEAKKzIwMTEtMTAtMjYgIFN0ZXBoZW4g
Q2hlbm5leSAgPHNjaGVubmV5QGNocm9taXVtLm9yZz4KKworICAgICAgICBDcmFzaCBpbiBTY3Jv
bGxBbmltYXRvci5jcHAKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTY5ODY1CisKKyAgICAgICAgVGhlIGNvZGUgaW4gU2Nyb2xsQW5pbWF0b3IgYXNzdW1l
cyB0aGF0IGhvcml6b250YWwgcGVyLXBhZ2UgbW91c2UKKyAgICAgICAgd2hlZWwgZXZlbnRzIGNh
bm5vdCBoYXBwZW4sIHdoaWNoIGlzIG5vdCB0cnVlLiBUaGlzIHBhdGNoIGFkZHMgbGF5b3V0Cisg
ICAgICAgIHRlc3RzIGZvciBhbGwgcGFnaW5nIHdoZWVsIGV2ZW50IHNpdHVhdGlvbnMgYW5kIGZp
eGVzIHRoZSBicm9rZW4KKyAgICAgICAgaG9yaXpvbnRhbCBjYXNlLgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRlc3RzOiBmYXN0L2V2ZW50cy9wbGF0
Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy14LWluLW5vbi1zY3JvbGxpbmctZGl2Lmh0bWwKKyAgICAg
ICAgICAgICAgIGZhc3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXgtaW4tbm9u
LXNjcm9sbGluZy1wYWdlLmh0bWwKKyAgICAgICAgICAgICAgIGZhc3QvZXZlbnRzL3BsYXRmb3Jt
LXdoZWVsZXZlbnQtcGFnaW5nLXgtaW4tc2Nyb2xsaW5nLWRpdi5odG1sCisgICAgICAgICAgICAg
ICBmYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy14LWluLXNjcm9sbGluZy1w
YWdlLmh0bWwKKyAgICAgICAgICAgICAgIGZhc3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQt
cGFnaW5nLXh5LWluLXNjcm9sbGluZy1kaXYuaHRtbAorICAgICAgICAgICAgICAgZmFzdC9ldmVu
dHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteHktaW4tc2Nyb2xsaW5nLXBhZ2UuaHRtbAor
ICAgICAgICAgICAgICAgZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteS1p
bi1ub24tc2Nyb2xsaW5nLWRpdi5odG1sCisgICAgICAgICAgICAgICBmYXN0L2V2ZW50cy9wbGF0
Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy15LWluLW5vbi1zY3JvbGxpbmctcGFnZS5odG1sCisgICAg
ICAgICAgICAgICBmYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy15LWluLXNj
cm9sbGluZy1kaXYuaHRtbAorICAgICAgICAgICAgICAgZmFzdC9ldmVudHMvcGxhdGZvcm0td2hl
ZWxldmVudC1wYWdpbmcteS1pbi1zY3JvbGxpbmctcGFnZS5odG1sCisKKyAgICAgICAgKiBwbGF0
Zm9ybS9QbGF0Zm9ybVdoZWVsRXZlbnQuaDogTW9kaWZ5IHRoZSBjb21tZW50IHRvIHJlZmxlY3Qg
dGhlIG5ldworICAgICAgICByZWFsaXR5LgorICAgICAgICAqIHBsYXRmb3JtL1Njcm9sbEFuaW1h
dG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbEFuaW1hdG9yOjpoYW5kbGVXaGVlbEV2
ZW50KTogTW9kaWZpZWQgdGhlIGNvZGUgdG8gaGFuZGxlIHRoZQorICAgICAgICBob3Jpem9udGFs
IHBlci1wYWdlIHdoZWVsIGV2ZW50IGNhc2UuCisKIDIwMTEtMTAtMjYgIENocmlzIFJvZ2VycyAg
PGNyb2dlcnNAZ29vZ2xlLmNvbT4KIAogICAgICAgICBBZGQgQXVkaW9Tb3VyY2VQcm92aWRlckNs
aWVudCBhbmQgc2V0Rm9ybWF0KCkgbWV0aG9kIHNvIHdlIGNhbiBrbm93IGF1ZGlvIHN0cmVhbSBm
b3JtYXQKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1BsYXRmb3JtV2hlZWxFdmVudC5o
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1BsYXRmb3JtV2hlZWxFdmVu
dC5oCShyZXZpc2lvbiA5ODM1NikKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1BsYXRmb3Jt
V2hlZWxFdmVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC02Nyw3ICs2Nyw3IEBAIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKICAgICAvLyBUaGUgU2Nyb2xsQnlQaXhlbFdoZWVsRXZlbnQgaXMgYSBmaW5lLWdy
YWluZWQgZXZlbnQgdGhhdCBzcGVjaWZpZXMgdGhlIHByZWNpc2UgbnVtYmVyIG9mIHBpeGVscyB0
byBzY3JvbGwuICBJdCBpcyBzZW50IGRpcmVjdGx5IGJ5IE1hY0Jvb2sgdG91Y2hwYWRzIG9uIE9T
IFgsCiAgICAgLy8gYW5kIHN5bnRoZXNpemVkIGluIG90aGVyIGNhc2VzIHdoZXJlIHBsYXRmb3Jt
cyBnZW5lcmF0ZSBsaW5lLWJ5LWxpbmUgc2Nyb2xsaW5nIGV2ZW50cy4KICAgICAvLyBUaGUgU2Ny
b2xsQnlQYWdlV2hlZWxFdmVudCBpbmRpY2F0ZXMgdGhhdCB0aGUgd2hlZWwgZXZlbnQgc2hvdWxk
IHNjcm9sbCBhbiBlbnRpcmUgcGFnZS4gIEluIHRoaXMgY2FzZSBXZWJDb3JlJ3MgYnVpbHQgaW4g
cGFnaW5nIGJlaGF2aW9yIGlzIHVzZWQgdG8gcGFnZQotICAgIC8vIHVwIGFuZCBkb3duICh5b3Ug
Z2V0IHRoZSBzYW1lIGJlaGF2aW9yIGFzIGlmIHRoZSB1c2VyIHdhcyBjbGlja2luZyBpbiBhIHNj
cm9sbGJhciB0cmFjayB0byBwYWdlIHVwIG9yIHBhZ2UgZG93bikuICBQYWdlIHNjcm9sbGluZyBv
bmx5IHdvcmtzIGluIHRoZSB2ZXJ0aWNhbCBkaXJlY3Rpb24uCisgICAgLy8gdXAgYW5kIGRvd24g
KHlvdSBnZXQgdGhlIHNhbWUgYmVoYXZpb3IgYXMgaWYgdGhlIHVzZXIgd2FzIGNsaWNraW5nIGlu
IGEgc2Nyb2xsYmFyIHRyYWNrIHRvIHBhZ2UgdXAgb3IgcGFnZSBkb3duKS4KICAgICBlbnVtIFBs
YXRmb3JtV2hlZWxFdmVudEdyYW51bGFyaXR5IHsKICAgICAgICAgU2Nyb2xsQnlQYWdlV2hlZWxF
dmVudCwKICAgICAgICAgU2Nyb2xsQnlQaXhlbFdoZWVsRXZlbnQKSW5kZXg6IFNvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL1Njcm9sbEFuaW1hdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9TY3JvbGxBbmltYXRvci5jcHAJKHJldmlzaW9uIDk4MzU2KQorKysgU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsQW5pbWF0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC0xMDMsMTggKzEwMywyNSBAQCBib29sIFNjcm9sbEFuaW1hdG9yOjpoYW5kbGVXaGVlbEV2ZW50
KGNvCiAgICAgICAgIHx8IChkZWx0YVkgPCAwICYmIG1heEZvcndhcmRTY3JvbGxEZWx0YS5oZWln
aHQoKSA+IDApCiAgICAgICAgIHx8IChkZWx0YVkgPiAwICYmIG1heEJhY2t3YXJkU2Nyb2xsRGVs
dGEuaGVpZ2h0KCkgPiAwKSkgewogICAgICAgICBoYW5kbGVkID0gdHJ1ZTsKLSAgICAgICAgaWYg
KGUuZ3JhbnVsYXJpdHkoKSA9PSBTY3JvbGxCeVBhZ2VXaGVlbEV2ZW50KSB7Ci0gICAgICAgICAg
ICBBU1NFUlQoIWUuZGVsdGFYKCkpOwotICAgICAgICAgICAgYm9vbCBuZWdhdGl2ZSA9IGRlbHRh
WSA8IDA7Ci0gICAgICAgICAgICBkZWx0YVkgPSBtYXgobWF4KHN0YXRpY19jYXN0PGZsb2F0Piht
X3Njcm9sbGFibGVBcmVhLT52aXNpYmxlSGVpZ2h0KCkpICogU2Nyb2xsYmFyOjptaW5GcmFjdGlv
blRvU3RlcFdoZW5QYWdpbmcoKSwgc3RhdGljX2Nhc3Q8ZmxvYXQ+KG1fc2Nyb2xsYWJsZUFyZWEt
PnZpc2libGVIZWlnaHQoKSAtIFNjcm9sbGJhcjo6bWF4T3ZlcmxhcEJldHdlZW5QYWdlcygpKSks
IDEuMGYpOwotICAgICAgICAgICAgaWYgKG5lZ2F0aXZlKQotICAgICAgICAgICAgICAgIGRlbHRh
WSA9IC1kZWx0YVk7CisgICAgICAgIGlmIChkZWx0YVkpIHsKKyAgICAgICAgICAgIGlmIChlLmdy
YW51bGFyaXR5KCkgPT0gU2Nyb2xsQnlQYWdlV2hlZWxFdmVudCkgeworICAgICAgICAgICAgICAg
IGJvb2wgbmVnYXRpdmUgPSBkZWx0YVkgPCAwOworICAgICAgICAgICAgICAgIGRlbHRhWSA9IG1h
eChtYXgoc3RhdGljX2Nhc3Q8ZmxvYXQ+KG1fc2Nyb2xsYWJsZUFyZWEtPnZpc2libGVIZWlnaHQo
KSkgKiBTY3JvbGxiYXI6Om1pbkZyYWN0aW9uVG9TdGVwV2hlblBhZ2luZygpLCBzdGF0aWNfY2Fz
dDxmbG9hdD4obV9zY3JvbGxhYmxlQXJlYS0+dmlzaWJsZUhlaWdodCgpIC0gU2Nyb2xsYmFyOjpt
YXhPdmVybGFwQmV0d2VlblBhZ2VzKCkpKSwgMS4wZik7CisgICAgICAgICAgICAgICAgaWYgKG5l
Z2F0aXZlKQorICAgICAgICAgICAgICAgICAgICBkZWx0YVkgPSAtZGVsdGFZOworICAgICAgICAg
ICAgfQorICAgICAgICAgICAgc2Nyb2xsKFZlcnRpY2FsU2Nyb2xsYmFyLCBTY3JvbGxCeVBpeGVs
LCB2ZXJ0aWNhbFNjcm9sbGJhci0+cGl4ZWxTdGVwKCksIC1kZWx0YVkpOwogICAgICAgICB9CiAK
LSAgICAgICAgaWYgKGRlbHRhWSkKLSAgICAgICAgICAgIHNjcm9sbChWZXJ0aWNhbFNjcm9sbGJh
ciwgU2Nyb2xsQnlQaXhlbCwgdmVydGljYWxTY3JvbGxiYXItPnBpeGVsU3RlcCgpLCAtZGVsdGFZ
KTsKLSAgICAgICAgaWYgKGRlbHRhWCkKKyAgICAgICAgaWYgKGRlbHRhWCkgeworICAgICAgICAg
ICAgaWYgKGUuZ3JhbnVsYXJpdHkoKSA9PSBTY3JvbGxCeVBhZ2VXaGVlbEV2ZW50KSB7CisgICAg
ICAgICAgICAgICAgYm9vbCBuZWdhdGl2ZSA9IGRlbHRhWCA8IDA7CisgICAgICAgICAgICAgICAg
ZGVsdGFYID0gbWF4KG1heChzdGF0aWNfY2FzdDxmbG9hdD4obV9zY3JvbGxhYmxlQXJlYS0+dmlz
aWJsZVdpZHRoKCkpICogU2Nyb2xsYmFyOjptaW5GcmFjdGlvblRvU3RlcFdoZW5QYWdpbmcoKSwg
c3RhdGljX2Nhc3Q8ZmxvYXQ+KG1fc2Nyb2xsYWJsZUFyZWEtPnZpc2libGVXaWR0aCgpIC0gU2Ny
b2xsYmFyOjptYXhPdmVybGFwQmV0d2VlblBhZ2VzKCkpKSwgMS4wZik7CisgICAgICAgICAgICAg
ICAgaWYgKG5lZ2F0aXZlKQorICAgICAgICAgICAgICAgICAgICBkZWx0YVggPSAtZGVsdGFYOwor
ICAgICAgICAgICAgfQogICAgICAgICAgICAgc2Nyb2xsKEhvcml6b250YWxTY3JvbGxiYXIsIFNj
cm9sbEJ5UGl4ZWwsIGhvcml6b250YWxTY3JvbGxiYXItPnBpeGVsU3RlcCgpLCAtZGVsdGFYKTsK
KyAgICAgICAgfQogICAgIH0KIAogICAgIHJldHVybiBoYW5kbGVkOwpJbmRleDogVG9vbHMvQ2hh
bmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL0NoYW5nZUxvZwkocmV2aXNpb24gOTg1MTIpCisr
KyBUb29scy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxOSBAQAorMjAxMS0x
MC0yNiAgU3RlcGhlbiBDaGVubmV5ICA8c2NoZW5uZXlAY2hyb21pdW0ub3JnPgorCisgICAgICAg
IENyYXNoIGluIFNjcm9sbEFuaW1hdG9yLmNwcAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Njk4NjUKKworICAgICAgICBUaGUgY29kZSBpbiBTY3JvbGxB
bmltYXRvciBhc3N1bWVzIHRoYXQgaG9yaXpvbnRhbCBwZXItcGFnZSBtb3VzZQorICAgICAgICB3
aGVlbCBldmVudHMgY2Fubm90IGhhcHBlbiwgd2hpY2ggaXMgbm90IHRydWUuIFRoaXMgcGF0Y2gg
YWRkcyBsYXlvdXQKKyAgICAgICAgdGVzdHMgZm9yIGFsbCBwYWdpbmcgd2hlZWwgZXZlbnQgc2l0
dWF0aW9ucyBhbmQgZml4ZXMgdGhlIGJyb2tlbgorICAgICAgICBob3Jpem9udGFsIGNhc2UuCisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBEdW1wUmVu
ZGVyVHJlZS9jaHJvbWl1bS9FdmVudFNlbmRlci5jcHA6CisgICAgICAgIChFdmVudFNlbmRlcjo6
aGFuZGxlTW91c2VXaGVlbCk6IEFkZGVkIHRoZSBhYmlsaXR5IHRvIHNwZWNpZnkgdGhhdCBhCisg
ICAgICAgIG1vdXNlIHdoZWVsIGV2ZW50IHNob3VsZCBiZSBwYWdpbmcuCisKIDIwMTEtMTAtMjYg
IFNhbSBXZWluaWcgIDxzYW1Ad2Via2l0Lm9yZz4KIAogICAgICAgICBBZGQgaW5pdGlhbCBzZXR0
aW5nIHRvIFdLQnJvd3NpbmdDb250ZXh0R3JvdXAKSW5kZXg6IFRvb2xzL0R1bXBSZW5kZXJUcmVl
L2Nocm9taXVtL0V2ZW50U2VuZGVyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9EdW1wUmVuZGVy
VHJlZS9jaHJvbWl1bS9FdmVudFNlbmRlci5jcHAJKHJldmlzaW9uIDk4MzU2KQorKysgVG9vbHMv
RHVtcFJlbmRlclRyZWUvY2hyb21pdW0vRXZlbnRTZW5kZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC05ODQsNiArOTg0LDEwIEBAIHZvaWQgRXZlbnRTZW5kZXI6OmhhbmRsZU1vdXNlV2hlZWwoY29u
c3QKIAogICAgIGludCBob3Jpem9udGFsID0gYXJndW1lbnRzWzBdLnRvSW50MzIoKTsKICAgICBp
bnQgdmVydGljYWwgPSBhcmd1bWVudHNbMV0udG9JbnQzMigpOworICAgIGludCBwYWdlZCA9IGZh
bHNlOworCisgICAgaWYgKGFyZ3VtZW50cy5zaXplKCkgPiAyICYmIGFyZ3VtZW50c1syXS5pc0Jv
b2woKSkKKyAgICAgICAgcGFnZWQgPSBhcmd1bWVudHNbMl0udG9Cb29sZWFuKCk7CiAKICAgICBX
ZWJNb3VzZVdoZWVsRXZlbnQgZXZlbnQ7CiAgICAgaW5pdE1vdXNlRXZlbnQoV2ViSW5wdXRFdmVu
dDo6TW91c2VXaGVlbCwgcHJlc3NlZEJ1dHRvbiwgbGFzdE1vdXNlUG9zLCAmZXZlbnQpOwpAQCAt
OTkxLDYgKzk5NSw3IEBAIHZvaWQgRXZlbnRTZW5kZXI6OmhhbmRsZU1vdXNlV2hlZWwoY29uc3QK
ICAgICBldmVudC53aGVlbFRpY2tzWSA9IHN0YXRpY19jYXN0PGZsb2F0Pih2ZXJ0aWNhbCk7CiAg
ICAgZXZlbnQuZGVsdGFYID0gZXZlbnQud2hlZWxUaWNrc1g7CiAgICAgZXZlbnQuZGVsdGFZID0g
ZXZlbnQud2hlZWxUaWNrc1k7CisgICAgZXZlbnQuc2Nyb2xsQnlQYWdlID0gcGFnZWQ7CiAgICAg
aWYgKGNvbnRpbnVvdXMpIHsKICAgICAgICAgZXZlbnQud2hlZWxUaWNrc1ggLz0gc2Nyb2xsYmFy
UGl4ZWxzUGVyVGljazsKICAgICAgICAgZXZlbnQud2hlZWxUaWNrc1kgLz0gc2Nyb2xsYmFyUGl4
ZWxzUGVyVGljazsKSW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBM
YXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHJldmlzaW9uIDk4NTEyKQorKysgTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsNDMgQEAKKzIwMTEtMTAtMjYgIFN0ZXBo
ZW4gQ2hlbm5leSAgPHNjaGVubmV5QGNocm9taXVtLm9yZz4KKworICAgICAgICBDcmFzaCBpbiBT
Y3JvbGxBbmltYXRvci5jcHAKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTY5ODY1CisKKyAgICAgICAgVGhlIGNvZGUgaW4gU2Nyb2xsQW5pbWF0b3IgYXNz
dW1lcyB0aGF0IGhvcml6b250YWwgcGVyLXBhZ2UgbW91c2UKKyAgICAgICAgd2hlZWwgZXZlbnRz
IGNhbm5vdCBoYXBwZW4sIHdoaWNoIGlzIG5vdCB0cnVlLiBUaGlzIHBhdGNoIGFkZHMgbGF5b3V0
CisgICAgICAgIHRlc3RzIGZvciBhbGwgcGFnaW5nIHdoZWVsIGV2ZW50IHNpdHVhdGlvbnMgYW5k
IGZpeGVzIHRoZSBicm9rZW4KKyAgICAgICAgaG9yaXpvbnRhbCBjYXNlLgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogZmFzdC9ldmVudHMvcGxhdGZv
cm0td2hlZWxldmVudC1wYWdpbmcteC1pbi1ub24tc2Nyb2xsaW5nLWRpdi1leHBlY3RlZC50eHQ6
IEFkZGVkLgorICAgICAgICAqIGZhc3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5n
LXgtaW4tbm9uLXNjcm9sbGluZy1kaXYuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9ldmVu
dHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteC1pbi1ub24tc2Nyb2xsaW5nLXBhZ2UtZXhw
ZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2
ZW50LXBhZ2luZy14LWluLW5vbi1zY3JvbGxpbmctcGFnZS5odG1sOiBBZGRlZC4KKyAgICAgICAg
KiBmYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy14LWluLXNjcm9sbGluZy1k
aXYtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2V2ZW50cy9wbGF0Zm9ybS13
aGVlbGV2ZW50LXBhZ2luZy14LWluLXNjcm9sbGluZy1kaXYuaHRtbDogQWRkZWQuCisgICAgICAg
ICogZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteC1pbi1zY3JvbGxpbmct
cGFnZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZXZlbnRzL3BsYXRmb3Jt
LXdoZWVsZXZlbnQtcGFnaW5nLXgtaW4tc2Nyb2xsaW5nLXBhZ2UuaHRtbDogQWRkZWQuCisgICAg
ICAgICogZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteHktaW4tc2Nyb2xs
aW5nLWRpdi1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZXZlbnRzL3BsYXRm
b3JtLXdoZWVsZXZlbnQtcGFnaW5nLXh5LWluLXNjcm9sbGluZy1kaXYuaHRtbDogQWRkZWQuCisg
ICAgICAgICogZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteHktaW4tc2Ny
b2xsaW5nLXBhZ2UtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2V2ZW50cy9w
bGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy14eS1pbi1zY3JvbGxpbmctcGFnZS5odG1sOiBBZGRl
ZC4KKyAgICAgICAgKiBmYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy15LWlu
LW5vbi1zY3JvbGxpbmctZGl2LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9l
dmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteS1pbi1ub24tc2Nyb2xsaW5nLWRpdi5o
dG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBh
Z2luZy15LWluLW5vbi1zY3JvbGxpbmctcGFnZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAg
ICAqIGZhc3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXktaW4tbm9uLXNjcm9s
bGluZy1wYWdlLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZXZlbnRzL3BsYXRmb3JtLXdo
ZWVsZXZlbnQtcGFnaW5nLXktaW4tc2Nyb2xsaW5nLWRpdi1leHBlY3RlZC50eHQ6IEFkZGVkLgor
ICAgICAgICAqIGZhc3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXktaW4tc2Ny
b2xsaW5nLWRpdi5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2V2ZW50cy9wbGF0Zm9ybS13
aGVlbGV2ZW50LXBhZ2luZy15LWluLXNjcm9sbGluZy1wYWdlLWV4cGVjdGVkLnR4dDogQWRkZWQu
CisgICAgICAgICogZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteS1pbi1z
Y3JvbGxpbmctcGFnZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS1t
YWMvZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteC1pbi1zY3JvbGxpbmct
cGFnZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtLW1h
Yy9mYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy14eS1pbi1zY3JvbGxpbmct
cGFnZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtLW1h
Yy9mYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy15LWluLXNjcm9sbGluZy1w
YWdlLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogcGxhdGZvcm0vbWFjL1NraXBwZWQ6
IEFkZGVkIHNraXAgZm9yIHRoZSBuZXcgdGVzdHMsIGFzIHRoZSBwbGF0Zm9ybQorICAgICAgICBk
b2VzIG5vdCBzdXBwb3J0IGl0LgorICAgICAgICAqIHBsYXRmb3JtL3dpbi9Ta2lwcGVkOiBBZGRl
ZCBza2lwIGZvciB0aGUgbmV3IHRlc3RzLCBhcyB0aGUgcGxhdGZvcm0KKyAgICAgICAgZG9lcyBu
b3Qgc3VwcG9ydCBpdC4KKwogMjAxMS0xMC0yNiAgTGVhbmRybyBQZXJlaXJhICA8bGVhbmRyb0Bw
cm9mdXNpb24ubW9iaT4KIAogICAgICAgICBbRUZMXSBVbnJldmlld2VkLiBBZGQgcGl4ZWwgYmFz
ZWxpbmVzIGZvciBDU1MyLjEgdGVzdHMuCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9w
bGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy14LWluLW5vbi1zY3JvbGxpbmctZGl2LWV4cGVjdGVk
LnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVl
bGV2ZW50LXBhZ2luZy14LWluLW5vbi1zY3JvbGxpbmctZGl2LWV4cGVjdGVkLnR4dAkocmV2aXNp
b24gMCkKKysrIExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFn
aW5nLXgtaW4tbm9uLXNjcm9sbGluZy1kaXYtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAt
MCwwICsxLDYgQEAKK1BBU1MgZXZlbnQud2hlZWxEZWx0YVkgaXMgMAorUEFTUyBldmVudC53aGVl
bERlbHRhWCBpcyB3aW5kb3cuZ2l2ZW5TY3JvbGxMZWZ0Ki0zCitQQVNTIGV2ZW50LndoZWVsRGVs
dGEgaXMgd2luZG93LmdpdmVuU2Nyb2xsTGVmdCotMworUEFTUyBkaXYuc2Nyb2xsVG9wIGlzIHdp
bmRvdy5leHBlY3RlZFNjcm9sbFRvcAorUEFTUyBkaXYuc2Nyb2xsTGVmdCBpcyB3aW5kb3cuZXhw
ZWN0ZWRTY3JvbGxMZWZ0CisKClByb3BlcnR5IGNoYW5nZXMgb246IExheW91dFRlc3RzL2Zhc3Qv
ZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXgtaW4tbm9uLXNjcm9sbGluZy1kaXYt
ZXhwZWN0ZWQudHh0Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX18KQWRkZWQ6IHN2bjplb2wtc3R5bGUKICAgKyBMRgoKSW5k
ZXg6IExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXgt
aW4tbm9uLXNjcm9sbGluZy1kaXYuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0
L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy14LWluLW5vbi1zY3JvbGxpbmctZGl2
Lmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9wbGF0Zm9ybS13
aGVlbGV2ZW50LXBhZ2luZy14LWluLW5vbi1zY3JvbGxpbmctZGl2Lmh0bWwJKHJldmlzaW9uIDAp
CkBAIC0wLDAgKzEsNjEgQEAKKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8bGluayByZWw9
InN0eWxlc2hlZXQiIGhyZWY9Ii4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cisg
ICAgICAgIDxzY3JpcHQgc3JjPSIuLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2Ny
aXB0PgorICAgICAgICA8c2NyaXB0PgorICAgICAgICAgICAgdmFyIGdpdmVuU2Nyb2xsVG9wID0g
MDsKKyAgICAgICAgICAgIHZhciBnaXZlblNjcm9sbExlZnQgPSAyOworICAgICAgICAgICAgdmFy
IGV4cGVjdGVkU2Nyb2xsVG9wID0gMDsKKyAgICAgICAgICAgIHZhciBleHBlY3RlZFNjcm9sbExl
ZnQgPSAwOworICAgICAgICAgICAgdmFyIGV2ZW50OworICAgICAgICAgICAgdmFyIGRpdjsKKwor
ICAgICAgICAgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICAgICAgICAg
ICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci53YWl0VW50aWxEb25lKCk7CisKKyAgICAgICAgICAg
IGZ1bmN0aW9uIGRpc3BhdGNoV2hlZWxFdmVudCgpCisgICAgICAgICAgICB7CisgICAgICAgICAg
ICAgICAgdmFyIG92ZXJmbG93RWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJvdmVy
ZmxvdyIpOworICAgICAgICAgICAgICAgIGlmIChvdmVyZmxvd0VsZW1lbnQpCisgICAgICAgICAg
ICAgICAgICAgIG92ZXJmbG93RWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCJtb3VzZXdoZWVsIiwg
bW91c2V3aGVlbEhhbmRsZXIsIGZhbHNlKTsKKworICAgICAgICAgICAgICAgIGlmICh3aW5kb3cu
ZXZlbnRTZW5kZXIpIHsKKyAgICAgICAgICAgICAgICAgICAgZXZlbnRTZW5kZXIubW91c2VNb3Zl
VG8oMTAwLCAxMTApOworICAgICAgICAgICAgICAgICAgICBldmVudFNlbmRlci5jb250aW51b3Vz
TW91c2VTY3JvbGxCeSgtd2luZG93LmdpdmVuU2Nyb2xsTGVmdCwgLXdpbmRvdy5naXZlblNjcm9s
bFRvcCwgdHJ1ZSk7CisgICAgICAgICAgICAgICAgfQorCisgICAgICAgICAgICAgICAgc2V0VGlt
ZW91dCgnY2hlY2tPZmZzZXRzKCk7JywgMTAwKTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAg
ICAgZnVuY3Rpb24gY2hlY2tPZmZzZXRzKCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAg
ICBkaXYgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgib3ZlcmZsb3ciKTsKKyAgICAgICAgICAg
ICAgICBzaG91bGRCZSgiZGl2LnNjcm9sbFRvcCIsICJ3aW5kb3cuZXhwZWN0ZWRTY3JvbGxUb3Ai
KTsKKyAgICAgICAgICAgICAgICBzaG91bGRCZSgiZGl2LnNjcm9sbExlZnQiLCAid2luZG93LmV4
cGVjdGVkU2Nyb2xsTGVmdCIpOworCisgICAgICAgICAgICAgICAgaWYgKHdpbmRvdy5sYXlvdXRU
ZXN0Q29udHJvbGxlcikKKyAgICAgICAgICAgICAgICAgICAgd2luZG93LmxheW91dFRlc3RDb250
cm9sbGVyLm5vdGlmeURvbmUoKTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgZnVuY3Rp
b24gbW91c2V3aGVlbEhhbmRsZXIoZSkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBl
dmVudCA9IGU7CisgICAgICAgICAgICAgICAgc2hvdWxkQmUoImV2ZW50LndoZWVsRGVsdGFZIiwg
IjAiKTsKKyAgICAgICAgICAgICAgICBzaG91bGRCZSgiZXZlbnQud2hlZWxEZWx0YVgiLCAid2lu
ZG93LmdpdmVuU2Nyb2xsTGVmdCotMyIpOworCisgICAgICAgICAgICAgICAgaWYgKGUud2hlZWxE
ZWx0YVkpCisgICAgICAgICAgICAgICAgICAgIHNob3VsZEJlKCJldmVudC53aGVlbERlbHRhIiwg
IjAiKTsKKyAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAgIHNob3VsZEJl
KCJldmVudC53aGVlbERlbHRhIiwgIndpbmRvdy5naXZlblNjcm9sbExlZnQqLTMiKTsKKyAgICAg
ICAgICAgIH0KKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9oZWFkPgorCisgICAgPGJvZHkgc3R5
bGU9Im1hcmdpbjowIiBvbmxvYWQ9InNldFRpbWVvdXQoJ2Rpc3BhdGNoV2hlZWxFdmVudCgpOycs
IDEwMCkiPgorICAgICAgICA8ZGl2IGlkPSJvdmVyZmxvdyIgc3R5bGU9ImJvcmRlcjoycHggc29s
aWQgYmxhY2s7b3ZlcmZsb3c6YXV0bztoZWlnaHQ6MjAwcHg7d2lkdGg6MjAwcHg7Ij4KKyAgICAg
ICAgICA8ZGl2IHN0eWxlPSJib3JkZXI6MHB4O2JhY2tncm91bmQtY29sb3I6cmVkO2hlaWdodDoz
MDBweDt3aWR0aDoxODVweDsiPjwvZGl2PgorICAgICAgICAgIDxkaXYgc3R5bGU9ImJvcmRlcjow
cHg7YmFja2dyb3VuZC1jb2xvcjpncmVlbjtoZWlnaHQ6MzAwcHg7d2lkdGg6MTg1cHg7Ij48L2Rp
dj4KKyAgICAgICAgPC9kaXY+CisgICAgICAgIDxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorICAg
IDwvYm9keT4KKzwvaHRtbD4KClByb3BlcnR5IGNoYW5nZXMgb246IExheW91dFRlc3RzL2Zhc3Qv
ZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXgtaW4tbm9uLXNjcm9sbGluZy1kaXYu
aHRtbApfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fCkFkZGVkOiBzdm46ZXhlY3V0YWJsZQogICArICoKQWRkZWQ6IHN2bjpl
b2wtc3R5bGUKICAgKyBMRgoKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3BsYXRmb3Jt
LXdoZWVsZXZlbnQtcGFnaW5nLXgtaW4tbm9uLXNjcm9sbGluZy1wYWdlLWV4cGVjdGVkLnR4dAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50
LXBhZ2luZy14LWluLW5vbi1zY3JvbGxpbmctcGFnZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDAp
CisrKyBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy14
LWluLW5vbi1zY3JvbGxpbmctcGFnZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAg
KzEsNiBAQAorUEFTUyBldmVudC53aGVlbERlbHRhWSBpcyAwCitQQVNTIGV2ZW50LndoZWVsRGVs
dGFYIGlzIHdpbmRvdy5naXZlblNjcm9sbExlZnQgKiAtMworUEFTUyBldmVudC53aGVlbERlbHRh
IGlzIHdpbmRvdy5naXZlblNjcm9sbExlZnQgKiAtMworUEFTUyBkb2N1bWVudC5ib2R5LnNjcm9s
bFRvcCBpcyB3aW5kb3cuZXhwZWN0ZWRTY3JvbGxUb3AKK1BBU1MgZG9jdW1lbnQuYm9keS5zY3Jv
bGxMZWZ0IGlzIHdpbmRvdy5leHBlY3RlZFNjcm9sbExlZnQKKwoKUHJvcGVydHkgY2hhbmdlcyBv
bjogTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteC1p
bi1ub24tc2Nyb2xsaW5nLXBhZ2UtZXhwZWN0ZWQudHh0Cl9fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KQWRkZWQ6IHN2bjpl
b2wtc3R5bGUKICAgKyBMRgoKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3BsYXRmb3Jt
LXdoZWVsZXZlbnQtcGFnaW5nLXgtaW4tbm9uLXNjcm9sbGluZy1wYWdlLmh0bWwKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmct
eC1pbi1ub24tc2Nyb2xsaW5nLXBhZ2UuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3Rz
L2Zhc3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXgtaW4tbm9uLXNjcm9sbGlu
Zy1wYWdlLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNjIgQEAKKzxodG1sPgorICAgIDxo
ZWFkPgorICAgICAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uL2pzL3Jlc291cmNl
cy9qcy10ZXN0LXN0eWxlLmNzcyI+CisgICAgICAgIDxzY3JpcHQgc3JjPSIuLi9qcy9yZXNvdXJj
ZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0PgorICAgICAgICAg
ICAgdmFyIGdpdmVuU2Nyb2xsVG9wID0gMDsKKyAgICAgICAgICAgIHZhciBnaXZlblNjcm9sbExl
ZnQgPSAyOworICAgICAgICAgICAgdmFyIGV4cGVjdGVkU2Nyb2xsVG9wID0gMDsKKyAgICAgICAg
ICAgIHZhciBleHBlY3RlZFNjcm9sbExlZnQgPSAwOworICAgICAgICAgICAgdmFyIGV2ZW50Owor
ICAgICAgICAgICAgdmFyIGRpdjsKKworICAgICAgICAgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0
Q29udHJvbGxlcikKKyAgICAgICAgICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci53YWl0VW50
aWxEb25lKCk7CisKKyAgICAgICAgICAgIGZ1bmN0aW9uIGRpc3BhdGNoV2hlZWxFdmVudCgpCisg
ICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5hZGRFdmVudExpc3Rl
bmVyKCJtb3VzZXdoZWVsIiwgbW91c2V3aGVlbEhhbmRsZXIsIGZhbHNlKTsKKworICAgICAgICAg
ICAgICAgIGlmICh3aW5kb3cuZXZlbnRTZW5kZXIpIHsKKyAgICAgICAgICAgICAgICAgICAgZXZl
bnRTZW5kZXIubW91c2VNb3ZlVG8oMTAwLCAxMTApOworICAgICAgICAgICAgICAgICAgICBldmVu
dFNlbmRlci5jb250aW51b3VzTW91c2VTY3JvbGxCeSgtd2luZG93LmdpdmVuU2Nyb2xsTGVmdCwg
LXdpbmRvdy5naXZlblNjcm9sbFRvcCwgdHJ1ZSk7CisgICAgICAgICAgICAgICAgfQorCisgICAg
ICAgICAgICAgICAgc2V0VGltZW91dCgnY2hlY2tPZmZzZXRzKCk7JywgMTAwKTsKKyAgICAgICAg
ICAgIH0KKworICAgICAgICAgICAgZnVuY3Rpb24gY2hlY2tPZmZzZXRzKCkKKyAgICAgICAgICAg
IHsKKyAgICAgICAgICAgICAgICBzaG91bGRCZSgiZG9jdW1lbnQuYm9keS5zY3JvbGxUb3AiLCAi
d2luZG93LmV4cGVjdGVkU2Nyb2xsVG9wIik7CisgICAgICAgICAgICAgICAgc2hvdWxkQmUoImRv
Y3VtZW50LmJvZHkuc2Nyb2xsTGVmdCIsICJ3aW5kb3cuZXhwZWN0ZWRTY3JvbGxMZWZ0Iik7CisK
KyAgICAgICAgICAgICAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQorICAgICAg
ICAgICAgICAgICAgICB3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIubm90aWZ5RG9uZSgpOwor
ICAgICAgICAgICAgfQorCisgICAgICAgICAgICBmdW5jdGlvbiBtb3VzZXdoZWVsSGFuZGxlcihl
KQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGV2ZW50ID0gZTsKKwkJCQlzaG91bGRC
ZSgiZXZlbnQud2hlZWxEZWx0YVkiLCAiMCIpOworCQkJCXNob3VsZEJlKCJldmVudC53aGVlbERl
bHRhWCIsICJ3aW5kb3cuZ2l2ZW5TY3JvbGxMZWZ0ICogLTMiKTsKKworCQkJCWlmIChlLndoZWVs
RGVsdGFZKQorCQkJCQlzaG91bGRCZSgiZXZlbnQud2hlZWxEZWx0YSIsICIwIik7CisJCQkJZWxz
ZQorCQkJCQlzaG91bGRCZSgiZXZlbnQud2hlZWxEZWx0YSIsICJ3aW5kb3cuZ2l2ZW5TY3JvbGxM
ZWZ0ICogLTMiKTsKKyAgICAgICAgICAgfQorICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2hlYWQ+
CisKKyAgICA8Ym9keSBzdHlsZT0ibWFyZ2luOjAiIG9ubG9hZD0ic2V0VGltZW91dCgnZGlzcGF0
Y2hXaGVlbEV2ZW50KCk7JywgMTAwKSI+CisgICAgICAgIDxkaXYgc3R5bGU9ImhlaWdodDo5MDBw
eDt3aWR0aDo0MDBweCI+CisgICAgICAgICAgPGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjpy
ZWQ7aGVpZ2h0OjkwMHB4O3dpZHRoOjIwMHB4O3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6MHB4O3Rv
cDowcHgiPjwvZGl2PgorICAgICAgICAgIDxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6Z3Jl
ZW47aGVpZ2h0OjkwMHB4O3dpZHRoOjIwMHB4O3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6MjAwcHg7
dG9wOi05MDBweCI+PC9kaXY+CisgICAgICAgIDwvZGl2PgorICAgICAgICA8ZGl2IHN0eWxlPSJo
ZWlnaHQ6OTAwcHg7d2lkdGg6NDAwcHgiPgorICAgICAgICAgIDxkaXYgc3R5bGU9ImJhY2tncm91
bmQtY29sb3I6Ymx1ZTtoZWlnaHQ6OTAwcHg7d2lkdGg6MjAwcHg7cG9zaXRpb246cmVsYXRpdmU7
bGVmdDowcHg7dG9wOjBweCI+PC9kaXY+CisgICAgICAgICAgPGRpdiBzdHlsZT0iYmFja2dyb3Vu
ZC1jb2xvcjp5ZWxsb3c7aGVpZ2h0OjkwMHB4O3dpZHRoOjIwMHB4O3Bvc2l0aW9uOnJlbGF0aXZl
O2xlZnQ6MjAwcHg7dG9wOi05MDBweCI+PC9kaXY+CisgICAgICAgIDwvZGl2PgorICAgICAgICA8
ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CgpQcm9wZXJ0eSBj
aGFuZ2VzIG9uOiBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBh
Z2luZy14LWluLW5vbi1zY3JvbGxpbmctcGFnZS5odG1sCl9fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KQWRkZWQ6IHN2bjpl
b2wtc3R5bGUKICAgKyBMRgoKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3BsYXRmb3Jt
LXdoZWVsZXZlbnQtcGFnaW5nLXgtaW4tc2Nyb2xsaW5nLWRpdi1leHBlY3RlZC50eHQKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdp
bmcteC1pbi1zY3JvbGxpbmctZGl2LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91
dFRlc3RzL2Zhc3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXgtaW4tc2Nyb2xs
aW5nLWRpdi1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNiBAQAorUEFTUyBl
dmVudC53aGVlbERlbHRhWSBpcyAwCitQQVNTIGV2ZW50LndoZWVsRGVsdGFYIGlzIHdpbmRvdy5n
aXZlblNjcm9sbExlZnQgKiAtMworUEFTUyBldmVudC53aGVlbERlbHRhIGlzIHdpbmRvdy5naXZl
blNjcm9sbExlZnQgKiAtMworUEFTUyBkaXYuc2Nyb2xsVG9wIGlzIHdpbmRvdy5leHBlY3RlZFNj
cm9sbFRvcAorUEFTUyBkaXYuc2Nyb2xsTGVmdCBpcyB3aW5kb3cuZXhwZWN0ZWRTY3JvbGxMZWZ0
CisKClByb3BlcnR5IGNoYW5nZXMgb246IExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3BsYXRmb3Jt
LXdoZWVsZXZlbnQtcGFnaW5nLXgtaW4tc2Nyb2xsaW5nLWRpdi1leHBlY3RlZC50eHQKX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fXwpBZGRlZDogc3ZuOmVvbC1zdHlsZQogICArIExGCgpJbmRleDogTGF5b3V0VGVzdHMvZmFz
dC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteC1pbi1zY3JvbGxpbmctZGl2Lmh0
bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxl
dmVudC1wYWdpbmcteC1pbi1zY3JvbGxpbmctZGl2Lmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlv
dXRUZXN0cy9mYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy14LWluLXNjcm9s
bGluZy1kaXYuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw3MSBAQAorPGh0bWw+CisgICAg
PGhlYWQ+CisgICAgICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vanMvcmVzb3Vy
Y2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii4uL2pzL3Jlc291
cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQ+CisgICAgICAg
ICAgICB2YXIgZ2l2ZW5TY3JvbGxUb3AgPSAwOworICAgICAgICAgICAgdmFyIGdpdmVuU2Nyb2xs
TGVmdCA9IDI7CisgICAgICAgICAgICB2YXIgZXhwZWN0ZWRTY3JvbGxUb3AgPSAwOworICAgICAg
ICAgICAgdmFyIGV4cGVjdGVkU2Nyb2xsTGVmdCA9IDMyMjsKKyAgICAgICAgICAgIHZhciBldmVu
dDsKKyAgICAgICAgICAgIHZhciBkaXY7CisKKyAgICAgICAgICAgIGlmICh3aW5kb3cubGF5b3V0
VGVzdENvbnRyb2xsZXIpCisgICAgICAgICAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIud2Fp
dFVudGlsRG9uZSgpOworCisgICAgICAgICAgICBmdW5jdGlvbiBkaXNwYXRjaFdoZWVsRXZlbnQo
KQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIHZhciBvdmVyZmxvd0VsZW1lbnQgPSBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgib3ZlcmZsb3ciKTsKKyAgICAgICAgICAgICAgICBpZiAo
b3ZlcmZsb3dFbGVtZW50KQorICAgICAgICAgICAgICAgICAgICBvdmVyZmxvd0VsZW1lbnQuYWRk
RXZlbnRMaXN0ZW5lcigibW91c2V3aGVlbCIsIG1vdXNld2hlZWxIYW5kbGVyLCBmYWxzZSk7CisK
KyAgICAgICAgICAgICAgICBpZiAod2luZG93LmV2ZW50U2VuZGVyKSB7CisgICAgICAgICAgICAg
ICAgICAgIGV2ZW50U2VuZGVyLm1vdXNlTW92ZVRvKDEwMCwgMTEwKTsKKyAgICAgICAgICAgICAg
ICAgICAgZXZlbnRTZW5kZXIuY29udGludW91c01vdXNlU2Nyb2xsQnkoLXdpbmRvdy5naXZlblNj
cm9sbExlZnQsIC13aW5kb3cuZ2l2ZW5TY3JvbGxUb3AsIHRydWUpOworICAgICAgICAgICAgICAg
IH0KKworICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoJ2NoZWNrT2Zmc2V0cygpOycsIDEwMCk7
CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIGZ1bmN0aW9uIGNoZWNrT2Zmc2V0cygpCisg
ICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgZGl2ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoIm92ZXJmbG93Iik7CisgICAgICAgICAgICAgICAgc2hvdWxkQmUoImRpdi5zY3JvbGxUb3Ai
LCAid2luZG93LmV4cGVjdGVkU2Nyb2xsVG9wIik7CisgICAgICAgICAgICAgICAgc2hvdWxkQmUo
ImRpdi5zY3JvbGxMZWZ0IiwgIndpbmRvdy5leHBlY3RlZFNjcm9sbExlZnQiKTsKKworICAgICAg
ICAgICAgICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAgICAgICAgICAg
ICAgICAgIHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlci5ub3RpZnlEb25lKCk7CisgICAgICAg
ICAgICB9CisKKyAgICAgICAgICAgIGZ1bmN0aW9uIG1vdXNld2hlZWxIYW5kbGVyKGUpCisgICAg
ICAgICAgICB7CisgICAgICAgICAgICAgICAgZXZlbnQgPSBlOworICAgICAgICAgICAgICAgIHNo
b3VsZEJlKCJldmVudC53aGVlbERlbHRhWSIsICIwIik7CisgICAgICAgICAgICAgICAgc2hvdWxk
QmUoImV2ZW50LndoZWVsRGVsdGFYIiwgIndpbmRvdy5naXZlblNjcm9sbExlZnQgKiAtMyIpOwor
CisgICAgICAgICAgICAgICAgaWYgKGUud2hlZWxEZWx0YVkpCisgICAgICAgICAgICAgICAgICAg
IHNob3VsZEJlKCJldmVudC53aGVlbERlbHRhIiwgIjAiKTsKKyAgICAgICAgICAgICAgICBlbHNl
CisgICAgICAgICAgICAgICAgICAgIHNob3VsZEJlKCJldmVudC53aGVlbERlbHRhIiwgIndpbmRv
dy5naXZlblNjcm9sbExlZnQgKiAtMyIpOworICAgICAgICAgICAgfQorICAgICAgICA8L3Njcmlw
dD4KKyAgICA8L2hlYWQ+CisKKyAgICA8Ym9keSBzdHlsZT0ibWFyZ2luOjAiIG9ubG9hZD0ic2V0
VGltZW91dCgnZGlzcGF0Y2hXaGVlbEV2ZW50KCk7JywgMTAwKSI+CisgICAgICAgICA8IS0tIFRo
aXMgZGl2IGlzIDIwMCBwaXhlbHMgaGlnaC4gVGhlIGNvbnRlbnQgcmVzdWx0cyBpbiBzY3Jvb2wg
YmFycyBvbgorICAgICAgICAgIGJvdGggZWRnZXMsIHJlc3VsdGluZyBpbiBhbiBlZmZlY3RpdmUg
Y29udGVudCBhcmVhIG9mIDE4NSB4IDE4NSBvbgorICAgICAgICAgIGxpbnV4LiBUaGUgcGFnaW5n
IGNvbnRleHQgb3ZlcmxhcCBpcyAyNCBwaXhlbHMuIFNvIG9uZSBwYWdlIG9mIHNjcm9sbAorICAg
ICAgICAgIG1vdmVzIHRoZSBjb250ZW50IGJ5IDE4NSAtIDI0IC09IDE2MSBwaXhlbHMuIC0tPgor
ICAgICAgICA8ZGl2IGlkPSJvdmVyZmxvdyIgc3R5bGU9ImJvcmRlcjoycHggc29saWQgYmxhY2s7
b3ZlcmZsb3c6YXV0bztoZWlnaHQ6MjAwcHg7d2lkdGg6MjAwcHg7Ij4KKyAgICAgICAgICAgIDxk
aXYgc3R5bGU9ImhlaWdodDozMDBweDt3aWR0aDo2MDBweCI+CisgICAgICAgICAgICAgIDxkaXYg
c3R5bGU9ImJhY2tncm91bmQtY29sb3I6cmVkO2hlaWdodDozMDBweDt3aWR0aDozMDBweDtwb3Np
dGlvbjpyZWxhdGl2ZTtsZWZ0OjBweDt0b3A6MHB4Ij48L2Rpdj4KKyAgICAgICAgICAgICAgPGRp
diBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjpncmVlbjtoZWlnaHQ6MzAwcHg7d2lkdGg6MzAwcHg7
cG9zaXRpb246cmVsYXRpdmU7bGVmdDozMDBweDt0b3A6LTMwMHB4Ij48L2Rpdj4KKyAgICAgICAg
ICAgIDwvZGl2PgorICAgICAgICAgICAgPGRpdiBzdHlsZT0iaGVpZ2h0OjMwMHB4O3dpZHRoOjYw
MHB4Ij4KKyAgICAgICAgICAgICAgPGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjpibHVlO2hl
aWdodDozMDBweDt3aWR0aDozMDBweDtwb3NpdGlvbjpyZWxhdGl2ZTtsZWZ0OjBweDt0b3A6MHB4
Ij48L2Rpdj4KKyAgICAgICAgICAgICAgPGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjp5ZWxs
b3c7aGVpZ2h0OjMwMHB4O3dpZHRoOjMwMHB4O3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6MzAwcHg7
dG9wOi0zMDBweCI+PC9kaXY+CisgICAgICAgICAgICA8L2Rpdj4KKyAgICAgICAgPC9kaXY+Cisg
ICAgICAgIDxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorICAgIDwvYm9keT4KKzwvaHRtbD4KClBy
b3BlcnR5IGNoYW5nZXMgb246IExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVs
ZXZlbnQtcGFnaW5nLXgtaW4tc2Nyb2xsaW5nLWRpdi5odG1sCl9fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KQWRkZWQ6IHN2
bjpleGVjdXRhYmxlCiAgICsgKgpBZGRlZDogc3ZuOmVvbC1zdHlsZQogICArIExGCgpJbmRleDog
TGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteC1pbi1z
Y3JvbGxpbmctcGFnZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFz
dC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteC1pbi1zY3JvbGxpbmctcGFnZS1l
eHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9wbGF0
Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy14LWluLXNjcm9sbGluZy1wYWdlLWV4cGVjdGVkLnR4dAko
cmV2aXNpb24gMCkKQEAgLTAsMCArMSw2IEBACitQQVNTIGV2ZW50LndoZWVsRGVsdGFZIGlzIDAK
K1BBU1MgZXZlbnQud2hlZWxEZWx0YVggaXMgd2luZG93LmdpdmVuU2Nyb2xsTGVmdCAqIC0zCitQ
QVNTIGV2ZW50LndoZWVsRGVsdGEgaXMgd2luZG93LmdpdmVuU2Nyb2xsTGVmdCAqIC0zCitQQVNT
IGRvY3VtZW50LmJvZHkuc2Nyb2xsVG9wIGlzIHdpbmRvdy5leHBlY3RlZFNjcm9sbFRvcAorUEFT
UyBkb2N1bWVudC5ib2R5LnNjcm9sbExlZnQgaXMgd2luZG93LmV4cGVjdGVkU2Nyb2xsTGVmdAor
CgpQcm9wZXJ0eSBjaGFuZ2VzIG9uOiBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9wbGF0Zm9ybS13
aGVlbGV2ZW50LXBhZ2luZy14LWluLXNjcm9sbGluZy1wYWdlLWV4cGVjdGVkLnR4dApfX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fCkFkZGVkOiBzdm46ZW9sLXN0eWxlCiAgICsgTEYKCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0
L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy14LWluLXNjcm9sbGluZy1wYWdlLmh0
bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxl
dmVudC1wYWdpbmcteC1pbi1zY3JvbGxpbmctcGFnZS5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5
b3V0VGVzdHMvZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteC1pbi1zY3Jv
bGxpbmctcGFnZS5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDYyIEBACis8aHRtbD4KKyAg
ICA8aGVhZD4KKyAgICAgICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi9qcy9yZXNv
dXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorICAgICAgICA8c2NyaXB0IHNyYz0iLi4vanMvcmVz
b3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdD4KKyAgICAg
ICAgICAgIHZhciBnaXZlblNjcm9sbFRvcCA9IDA7CisgICAgICAgICAgICB2YXIgZ2l2ZW5TY3Jv
bGxMZWZ0ID0gMjsgLy8gV2hlbiBwYWdpbmcsIHRoaXMgaXMgaWdub3JlZC4gRXZlcnkgZXZlbnQg
aXMgb25lIHBhZ2UuCisgICAgICAgICAgICB2YXIgZXhwZWN0ZWRTY3JvbGxUb3AgPSAwOworICAg
ICAgICAgICAgdmFyIGV4cGVjdGVkU2Nyb2xsTGVmdCA9IDcwMDsgLy8gV2luZG93IGlzIDgwMHg2
MDAuIFNjcm9sbCA4Ny41JSBvZiB2aXNpYmxlLgorICAgICAgICAgICAgdmFyIGV2ZW50OworICAg
ICAgICAgICAgdmFyIGRpdjsKKworICAgICAgICAgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29u
dHJvbGxlcikKKyAgICAgICAgICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci53YWl0VW50aWxE
b25lKCk7CisKKyAgICAgICAgICAgIGZ1bmN0aW9uIGRpc3BhdGNoV2hlZWxFdmVudCgpCisgICAg
ICAgICAgICB7CisgICAgICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5hZGRFdmVudExpc3RlbmVy
KCJtb3VzZXdoZWVsIiwgbW91c2V3aGVlbEhhbmRsZXIsIGZhbHNlKTsKKworICAgICAgICAgICAg
ICAgIGlmICh3aW5kb3cuZXZlbnRTZW5kZXIpIHsKKyAgICAgICAgICAgICAgICAgICAgZXZlbnRT
ZW5kZXIubW91c2VNb3ZlVG8oMTAwLCAxMTApOworICAgICAgICAgICAgICAgICAgICBldmVudFNl
bmRlci5jb250aW51b3VzTW91c2VTY3JvbGxCeSgtd2luZG93LmdpdmVuU2Nyb2xsTGVmdCwgLXdp
bmRvdy5naXZlblNjcm9sbFRvcCwgdHJ1ZSk7CisgICAgICAgICAgICAgICAgfQorCisgICAgICAg
ICAgICAgICAgc2V0VGltZW91dCgnY2hlY2tPZmZzZXRzKCk7JywgMTAwKTsKKyAgICAgICAgICAg
IH0KKworICAgICAgICAgICAgZnVuY3Rpb24gY2hlY2tPZmZzZXRzKCkKKyAgICAgICAgICAgIHsK
KyAgICAgICAgICAgICAgICBzaG91bGRCZSgiZG9jdW1lbnQuYm9keS5zY3JvbGxUb3AiLCAid2lu
ZG93LmV4cGVjdGVkU2Nyb2xsVG9wIik7CisgICAgICAgICAgICAgICAgc2hvdWxkQmUoImRvY3Vt
ZW50LmJvZHkuc2Nyb2xsTGVmdCIsICJ3aW5kb3cuZXhwZWN0ZWRTY3JvbGxMZWZ0Iik7CisKKyAg
ICAgICAgICAgICAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQorICAgICAgICAg
ICAgICAgICAgICB3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIubm90aWZ5RG9uZSgpOworICAg
ICAgICAgICAgfQorCisgICAgICAgICAgICBmdW5jdGlvbiBtb3VzZXdoZWVsSGFuZGxlcihlKQor
ICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGV2ZW50ID0gZTsKKyAgICAgICAgICAgICAg
ICBzaG91bGRCZSgiZXZlbnQud2hlZWxEZWx0YVkiLCAiMCIpOworICAgICAgICAgICAgICAgIHNo
b3VsZEJlKCJldmVudC53aGVlbERlbHRhWCIsICJ3aW5kb3cuZ2l2ZW5TY3JvbGxMZWZ0ICogLTMi
KTsKKworICAgICAgICAgICAgICAgIGlmIChlLndoZWVsRGVsdGFZKQorICAgICAgICAgICAgICAg
ICAgICBzaG91bGRCZSgiZXZlbnQud2hlZWxEZWx0YSIsICIwIik7CisgICAgICAgICAgICAgICAg
ZWxzZQorICAgICAgICAgICAgICAgICAgICBzaG91bGRCZSgiZXZlbnQud2hlZWxEZWx0YSIsICJ3
aW5kb3cuZ2l2ZW5TY3JvbGxMZWZ0ICogLTMiKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgPC9z
Y3JpcHQ+CisgICAgPC9oZWFkPgorCisgICAgPGJvZHkgc3R5bGU9Im1hcmdpbjowO3BhZGRpbmc6
MCIgb25sb2FkPSJzZXRUaW1lb3V0KCdkaXNwYXRjaFdoZWVsRXZlbnQoKTsnLCAxMDApIj4KKyAg
ICAgICAgPGRpdiBzdHlsZT0ibWFyZ2luOjA7cGFkZGluZzowO2hlaWdodDoyMDBweDt3aWR0aDoy
NDAwcHgiPgorICAgICAgICAgIDxkaXYgc3R5bGU9Im1hcmdpbjowO3BhZGRpbmc6MDtiYWNrZ3Jv
dW5kLWNvbG9yOnJlZDtoZWlnaHQ6MjAwcHg7d2lkdGg6MTIwMHB4O3Bvc2l0aW9uOnJlbGF0aXZl
O2xlZnQ6MHB4O3RvcDowcHgiPjwvZGl2PgorICAgICAgICAgIDxkaXYgc3R5bGU9Im1hcmdpbjow
O3BhZGRpbmc6MDtiYWNrZ3JvdW5kLWNvbG9yOmdyZWVuO2hlaWdodDoyMDBweDt3aWR0aDoxMjAw
cHg7cG9zaXRpb246cmVsYXRpdmU7bGVmdDoxMjAwcHg7dG9wOi0yMDBweCI+PC9kaXY+CisgICAg
ICAgIDwvZGl2PgorICAgICAgICA8ZGl2IHN0eWxlPSJtYXJnaW46MDtwYWRkaW5nOjA7aGVpZ2h0
OjIwMHB4O3dpZHRoOjI0MDBweCI+CisgICAgICAgICAgPGRpdiBzdHlsZT0ibWFyZ2luOjA7cGFk
ZGluZzowO2JhY2tncm91bmQtY29sb3I6Ymx1ZTtoZWlnaHQ6MjAwcHg7d2lkdGg6MTIwMHB4O3Bv
c2l0aW9uOnJlbGF0aXZlO2xlZnQ6MHB4O3RvcDowcHgiPjwvZGl2PgorICAgICAgICAgIDxkaXYg
c3R5bGU9Im1hcmdpbjowO3BhZGRpbmc6MDtiYWNrZ3JvdW5kLWNvbG9yOnllbGxvdztoZWlnaHQ6
MjAwcHg7d2lkdGg6MTIwMHB4O3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6MTIwMHB4O3RvcDotMjAw
cHgiPjwvZGl2PgorICAgICAgICA8L2Rpdj4KKyAgICAgICAgPGRpdiBpZD0iY29uc29sZSI+PC9k
aXY+CisgICAgPC9ib2R5PgorPC9odG1sPgoKUHJvcGVydHkgY2hhbmdlcyBvbjogTGF5b3V0VGVz
dHMvZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteC1pbi1zY3JvbGxpbmct
cGFnZS5odG1sCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX18KQWRkZWQ6IHN2bjplb2wtc3R5bGUKICAgKyBMRgoKSW5kZXg6
IExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXh5LWlu
LXNjcm9sbGluZy1kaXYtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zh
c3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXh5LWluLXNjcm9sbGluZy1kaXYt
ZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcGxh
dGZvcm0td2hlZWxldmVudC1wYWdpbmcteHktaW4tc2Nyb2xsaW5nLWRpdi1leHBlY3RlZC50eHQJ
KHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNiBAQAorUEFTUyBldmVudC53aGVlbERlbHRhWSBpcyB3
aW5kb3cuZ2l2ZW5TY3JvbGxUb3AgKiAtMworUEFTUyBldmVudC53aGVlbERlbHRhWCBpcyB3aW5k
b3cuZ2l2ZW5TY3JvbGxMZWZ0ICogLTMKK1BBU1MgZXZlbnQud2hlZWxEZWx0YSBpcyB3aW5kb3cu
Z2l2ZW5TY3JvbGxUb3AgKiAtMworUEFTUyBkaXYuc2Nyb2xsVG9wIGlzIHdpbmRvdy5leHBlY3Rl
ZFNjcm9sbFRvcAorUEFTUyBkaXYuc2Nyb2xsTGVmdCBpcyB3aW5kb3cuZXhwZWN0ZWRTY3JvbGxM
ZWZ0CisKClByb3BlcnR5IGNoYW5nZXMgb246IExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3BsYXRm
b3JtLXdoZWVsZXZlbnQtcGFnaW5nLXh5LWluLXNjcm9sbGluZy1kaXYtZXhwZWN0ZWQudHh0Cl9f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX18KQWRkZWQ6IHN2bjplb2wtc3R5bGUKICAgKyBMRgoKSW5kZXg6IExheW91dFRlc3Rz
L2Zhc3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXh5LWluLXNjcm9sbGluZy1k
aXYuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9wbGF0Zm9ybS13
aGVlbGV2ZW50LXBhZ2luZy14eS1pbi1zY3JvbGxpbmctZGl2Lmh0bWwJKHJldmlzaW9uIDApCisr
KyBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy14eS1p
bi1zY3JvbGxpbmctZGl2Lmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNzEgQEAKKzxodG1s
PgorICAgIDxoZWFkPgorICAgICAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uL2pz
L3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+CisgICAgICAgIDxzY3JpcHQgc3JjPSIuLi9q
cy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0Pgor
ICAgICAgICAgICAgdmFyIGdpdmVuU2Nyb2xsVG9wID0gMTsKKyAgICAgICAgICAgIHZhciBnaXZl
blNjcm9sbExlZnQgPSAyOworICAgICAgICAgICAgdmFyIGV4cGVjdGVkU2Nyb2xsVG9wID0gMTYx
OworICAgICAgICAgICAgdmFyIGV4cGVjdGVkU2Nyb2xsTGVmdCA9IDMyMjsKKyAgICAgICAgICAg
IHZhciBldmVudDsKKyAgICAgICAgICAgIHZhciBkaXY7CisKKyAgICAgICAgICAgIGlmICh3aW5k
b3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAgICAgICAgICAgICAgbGF5b3V0VGVzdENvbnRy
b2xsZXIud2FpdFVudGlsRG9uZSgpOworCisgICAgICAgICAgICBmdW5jdGlvbiBkaXNwYXRjaFdo
ZWVsRXZlbnQoKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIHZhciBvdmVyZmxvd0Vs
ZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgib3ZlcmZsb3ciKTsKKyAgICAgICAgICAg
ICAgICBpZiAob3ZlcmZsb3dFbGVtZW50KQorICAgICAgICAgICAgICAgICAgICBvdmVyZmxvd0Vs
ZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigibW91c2V3aGVlbCIsIG1vdXNld2hlZWxIYW5kbGVyLCBm
YWxzZSk7CisKKyAgICAgICAgICAgICAgICBpZiAod2luZG93LmV2ZW50U2VuZGVyKSB7CisgICAg
ICAgICAgICAgICAgICAgIGV2ZW50U2VuZGVyLm1vdXNlTW92ZVRvKDEwMCwgMTEwKTsKKyAgICAg
ICAgICAgICAgICAgICAgZXZlbnRTZW5kZXIuY29udGludW91c01vdXNlU2Nyb2xsQnkoLXdpbmRv
dy5naXZlblNjcm9sbExlZnQsIC13aW5kb3cuZ2l2ZW5TY3JvbGxUb3AsIHRydWUpOworICAgICAg
ICAgICAgICAgIH0KKworICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoJ2NoZWNrT2Zmc2V0cygp
OycsIDEwMCk7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIGZ1bmN0aW9uIGNoZWNrT2Zm
c2V0cygpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgZGl2ID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoIm92ZXJmbG93Iik7CisgICAgICAgICAgICAgICAgc2hvdWxkQmUoImRpdi5z
Y3JvbGxUb3AiLCAid2luZG93LmV4cGVjdGVkU2Nyb2xsVG9wIik7CisgICAgICAgICAgICAgICAg
c2hvdWxkQmUoImRpdi5zY3JvbGxMZWZ0IiwgIndpbmRvdy5leHBlY3RlZFNjcm9sbExlZnQiKTsK
KworICAgICAgICAgICAgICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAg
ICAgICAgICAgICAgICAgIHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlci5ub3RpZnlEb25lKCk7
CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIGZ1bmN0aW9uIG1vdXNld2hlZWxIYW5kbGVy
KGUpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgZXZlbnQgPSBlOworICAgICAgICAg
ICAgICAgIHNob3VsZEJlKCJldmVudC53aGVlbERlbHRhWSIsICJ3aW5kb3cuZ2l2ZW5TY3JvbGxU
b3AgKiAtMyIpOworICAgICAgICAgICAgICAgIHNob3VsZEJlKCJldmVudC53aGVlbERlbHRhWCIs
ICJ3aW5kb3cuZ2l2ZW5TY3JvbGxMZWZ0ICogLTMiKTsKKworICAgICAgICAgICAgICAgIGlmIChl
LndoZWVsRGVsdGFZKQorICAgICAgICAgICAgICAgICAgICBzaG91bGRCZSgiZXZlbnQud2hlZWxE
ZWx0YSIsICJ3aW5kb3cuZ2l2ZW5TY3JvbGxUb3AgKiAtMyIpOworICAgICAgICAgICAgICAgIGVs
c2UKKyAgICAgICAgICAgICAgICAgICAgc2hvdWxkQmUoImV2ZW50LndoZWVsRGVsdGEiLCAid2lu
ZG93LmdpdmVuU2Nyb2xsTGVmdCAqIC0zIik7CisgICAgICAgICAgICB9CisgICAgICAgIDwvc2Ny
aXB0PgorICAgIDwvaGVhZD4KKworICAgIDxib2R5IHN0eWxlPSJtYXJnaW46MCIgb25sb2FkPSJz
ZXRUaW1lb3V0KCdkaXNwYXRjaFdoZWVsRXZlbnQoKTsnLCAxMDApIj4KKyAgICAgICAgIDwhLS0g
VGhpcyBkaXYgaXMgMjAwIHBpeGVscyBoaWdoLiBUaGUgY29udGVudCByZXN1bHRzIGluIHNjcm9v
bCBiYXJzIG9uCisgICAgICAgICAgYm90aCBlZGdlcywgcmVzdWx0aW5nIGluIGFuIGVmZmVjdGl2
ZSBjb250ZW50IGFyZWEgb2YgMTg1IHggMTg1IG9uCisgICAgICAgICAgbGludXguIFRoZSBwYWdp
bmcgY29udGV4dCBvdmVybGFwIGlzIDI0IHBpeGVscy4gU28gb25lIHBhZ2Ugb2Ygc2Nyb2xsCisg
ICAgICAgICAgbW92ZXMgdGhlIGNvbnRlbnQgYnkgMTg1IC0gMjQgLT0gMTYxIHBpeGVscy4gLS0+
CisgICAgICAgIDxkaXYgaWQ9Im92ZXJmbG93IiBzdHlsZT0iYm9yZGVyOjJweCBzb2xpZCBibGFj
aztvdmVyZmxvdzphdXRvO2hlaWdodDoyMDBweDt3aWR0aDoyMDBweDsiPgorICAgICAgICAgICAg
PGRpdiBzdHlsZT0iaGVpZ2h0OjMwMHB4O3dpZHRoOjYwMHB4Ij4KKyAgICAgICAgICAgICAgPGRp
diBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjpyZWQ7aGVpZ2h0OjMwMHB4O3dpZHRoOjMwMHB4O3Bv
c2l0aW9uOnJlbGF0aXZlO2xlZnQ6MHB4O3RvcDowcHgiPjwvZGl2PgorICAgICAgICAgICAgICA8
ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOmdyZWVuO2hlaWdodDozMDBweDt3aWR0aDozMDBw
eDtwb3NpdGlvbjpyZWxhdGl2ZTtsZWZ0OjMwMHB4O3RvcDotMzAwcHgiPjwvZGl2PgorICAgICAg
ICAgICAgPC9kaXY+CisgICAgICAgICAgICA8ZGl2IHN0eWxlPSJoZWlnaHQ6MzAwcHg7d2lkdGg6
NjAwcHgiPgorICAgICAgICAgICAgICA8ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOmJsdWU7
aGVpZ2h0OjMwMHB4O3dpZHRoOjMwMHB4O3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6MHB4O3RvcDow
cHgiPjwvZGl2PgorICAgICAgICAgICAgICA8ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnll
bGxvdztoZWlnaHQ6MzAwcHg7d2lkdGg6MzAwcHg7cG9zaXRpb246cmVsYXRpdmU7bGVmdDozMDBw
eDt0b3A6LTMwMHB4Ij48L2Rpdj4KKyAgICAgICAgICAgIDwvZGl2PgorICAgICAgICA8L2Rpdj4K
KyAgICAgICAgPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+CisgICAgPC9ib2R5PgorPC9odG1sPgoK
UHJvcGVydHkgY2hhbmdlcyBvbjogTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcGxhdGZvcm0td2hl
ZWxldmVudC1wYWdpbmcteHktaW4tc2Nyb2xsaW5nLWRpdi5odG1sCl9fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KQWRkZWQ6
IHN2bjplb2wtc3R5bGUKICAgKyBMRgoKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3Bs
YXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXh5LWluLXNjcm9sbGluZy1wYWdlLWV4cGVjdGVkLnR4
dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2
ZW50LXBhZ2luZy14eS1pbi1zY3JvbGxpbmctcGFnZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDAp
CisrKyBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy14
eS1pbi1zY3JvbGxpbmctcGFnZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEs
NiBAQAorUEFTUyBldmVudC53aGVlbERlbHRhWSBpcyB3aW5kb3cuZ2l2ZW5TY3JvbGxUb3AgKiAt
MworUEFTUyBldmVudC53aGVlbERlbHRhWCBpcyB3aW5kb3cuZ2l2ZW5TY3JvbGxMZWZ0ICogLTMK
K1BBU1MgZXZlbnQud2hlZWxEZWx0YSBpcyB3aW5kb3cuZ2l2ZW5TY3JvbGxUb3AgKiAtMworUEFT
UyBkb2N1bWVudC5ib2R5LnNjcm9sbFRvcCBpcyB3aW5kb3cuZXhwZWN0ZWRTY3JvbGxUb3AKK1BB
U1MgZG9jdW1lbnQuYm9keS5zY3JvbGxMZWZ0IGlzIHdpbmRvdy5leHBlY3RlZFNjcm9sbExlZnQK
KwoKUHJvcGVydHkgY2hhbmdlcyBvbjogTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcGxhdGZvcm0t
d2hlZWxldmVudC1wYWdpbmcteHktaW4tc2Nyb2xsaW5nLXBhZ2UtZXhwZWN0ZWQudHh0Cl9fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX18KQWRkZWQ6IHN2bjplb2wtc3R5bGUKICAgKyBMRgoKSW5kZXg6IExheW91dFRlc3RzL2Zh
c3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXh5LWluLXNjcm9sbGluZy1wYWdl
Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcGxhdGZvcm0td2hl
ZWxldmVudC1wYWdpbmcteHktaW4tc2Nyb2xsaW5nLXBhZ2UuaHRtbAkocmV2aXNpb24gMCkKKysr
IExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXh5LWlu
LXNjcm9sbGluZy1wYWdlLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNjIgQEAKKzxodG1s
PgorICAgIDxoZWFkPgorICAgICAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uL2pz
L3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+CisgICAgICAgIDxzY3JpcHQgc3JjPSIuLi9q
cy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0Pgor
ICAgICAgICAgICAgdmFyIGdpdmVuU2Nyb2xsVG9wID0gMjsgLy8gT25seSBvbmUgcGFnZSBwZXIg
ZXZlbnQsIHNvIHRoaXMgc2hvdWxkIGJlIGludGVycHJldGVkIGFzIDEKKyAgICAgICAgICAgIHZh
ciBnaXZlblNjcm9sbExlZnQgPSAyOworICAgICAgICAgICAgdmFyIGV4cGVjdGVkU2Nyb2xsVG9w
ID0gNTExOyAvLyBXaW5kb3cgaXMgODAweDYwMC4gMTUgcGl4ZWwgc2Nyb2xsYmFycy4gU2Nyb2xs
IDg3LjUlIG9mIHZpc2libGUuCisgICAgICAgICAgICB2YXIgZXhwZWN0ZWRTY3JvbGxMZWZ0ID0g
Njg2OworICAgICAgICAgICAgdmFyIGV2ZW50OworICAgICAgICAgICAgdmFyIGRpdjsKKworICAg
ICAgICAgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICAgICAgICAgICAg
ICBsYXlvdXRUZXN0Q29udHJvbGxlci53YWl0VW50aWxEb25lKCk7CisKKyAgICAgICAgICAgIGZ1
bmN0aW9uIGRpc3BhdGNoV2hlZWxFdmVudCgpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAg
ICAgZG9jdW1lbnQuYm9keS5hZGRFdmVudExpc3RlbmVyKCJtb3VzZXdoZWVsIiwgbW91c2V3aGVl
bEhhbmRsZXIsIGZhbHNlKTsKKworICAgICAgICAgICAgICAgIGlmICh3aW5kb3cuZXZlbnRTZW5k
ZXIpIHsKKyAgICAgICAgICAgICAgICAgICAgZXZlbnRTZW5kZXIubW91c2VNb3ZlVG8oMTAwLCAx
MTApOworICAgICAgICAgICAgICAgICAgICBldmVudFNlbmRlci5jb250aW51b3VzTW91c2VTY3Jv
bGxCeSgtd2luZG93LmdpdmVuU2Nyb2xsTGVmdCwgLXdpbmRvdy5naXZlblNjcm9sbFRvcCwgdHJ1
ZSk7CisgICAgICAgICAgICAgICAgfQorCisgICAgICAgICAgICAgICAgc2V0VGltZW91dCgnY2hl
Y2tPZmZzZXRzKCk7JywgMTAwKTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgZnVuY3Rp
b24gY2hlY2tPZmZzZXRzKCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBzaG91bGRC
ZSgiZG9jdW1lbnQuYm9keS5zY3JvbGxUb3AiLCAid2luZG93LmV4cGVjdGVkU2Nyb2xsVG9wIik7
CisgICAgICAgICAgICAgICAgc2hvdWxkQmUoImRvY3VtZW50LmJvZHkuc2Nyb2xsTGVmdCIsICJ3
aW5kb3cuZXhwZWN0ZWRTY3JvbGxMZWZ0Iik7CisKKyAgICAgICAgICAgICAgICBpZiAod2luZG93
LmxheW91dFRlc3RDb250cm9sbGVyKQorICAgICAgICAgICAgICAgICAgICB3aW5kb3cubGF5b3V0
VGVzdENvbnRyb2xsZXIubm90aWZ5RG9uZSgpOworICAgICAgICAgICAgfQorCisgICAgICAgICAg
ICBmdW5jdGlvbiBtb3VzZXdoZWVsSGFuZGxlcihlKQorICAgICAgICAgICAgeworICAgICAgICAg
ICAgICAgIGV2ZW50ID0gZTsKKyAgICAgICAgICAgICAgICBzaG91bGRCZSgiZXZlbnQud2hlZWxE
ZWx0YVkiLCAid2luZG93LmdpdmVuU2Nyb2xsVG9wICogLTMiKTsKKyAgICAgICAgICAgICAgICBz
aG91bGRCZSgiZXZlbnQud2hlZWxEZWx0YVgiLCAid2luZG93LmdpdmVuU2Nyb2xsTGVmdCAqIC0z
Iik7CisKKyAgICAgICAgICAgICAgICBpZiAoZS53aGVlbERlbHRhWSkKKyAgICAgICAgICAgICAg
ICAgICAgc2hvdWxkQmUoImV2ZW50LndoZWVsRGVsdGEiLCAid2luZG93LmdpdmVuU2Nyb2xsVG9w
ICogLTMiKTsKKyAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAgIHNob3Vs
ZEJlKCJldmVudC53aGVlbERlbHRhIiwgIndpbmRvdy5naXZlblNjcm9sbExlZnQgKiAtMyIpOwor
ICAgICAgICAgICAgfQorICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisKKyAgICA8Ym9k
eSBzdHlsZT0ibWFyZ2luOjAiIG9ubG9hZD0ic2V0VGltZW91dCgnZGlzcGF0Y2hXaGVlbEV2ZW50
KCk7JywgMTAwKSI+CisgICAgICAgIDxkaXYgc3R5bGU9ImhlaWdodDo5MDBweDt3aWR0aDoyNDAw
cHgiPgorICAgICAgICAgIDxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6cmVkO2hlaWdodDo5
MDBweDt3aWR0aDoxMjAwcHg7cG9zaXRpb246cmVsYXRpdmU7bGVmdDowcHg7dG9wOjBweCI+PC9k
aXY+CisgICAgICAgICAgPGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjpncmVlbjtoZWlnaHQ6
OTAwcHg7d2lkdGg6MTIwMHB4O3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6MTIwMHB4O3RvcDotOTAw
cHgiPjwvZGl2PgorICAgICAgICA8L2Rpdj4KKyAgICAgICAgPGRpdiBzdHlsZT0iaGVpZ2h0Ojkw
MHB4O3dpZHRoOjI0MDBweCI+CisgICAgICAgICAgPGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xv
cjpibHVlO2hlaWdodDo5MDBweDt3aWR0aDoxMjAwcHg7cG9zaXRpb246cmVsYXRpdmU7bGVmdDow
cHg7dG9wOjBweCI+PC9kaXY+CisgICAgICAgICAgPGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xv
cjp5ZWxsb3c7aGVpZ2h0OjkwMHB4O3dpZHRoOjEyMDBweDtwb3NpdGlvbjpyZWxhdGl2ZTtsZWZ0
OjEyMDBweDt0b3A6LTkwMHB4Ij48L2Rpdj4KKyAgICAgICAgPC9kaXY+CisgICAgICAgIDxkaXYg
aWQ9ImNvbnNvbGUiPjwvZGl2PgorICAgIDwvYm9keT4KKzwvaHRtbD4KClByb3BlcnR5IGNoYW5n
ZXMgb246IExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5n
LXh5LWluLXNjcm9sbGluZy1wYWdlLmh0bWwKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpBZGRlZDogc3ZuOmVvbC1zdHls
ZQogICArIExGCgpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxl
dmVudC1wYWdpbmcteS1pbi1ub24tc2Nyb2xsaW5nLWRpdi1leHBlY3RlZC50eHQKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmct
eS1pbi1ub24tc2Nyb2xsaW5nLWRpdi1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlv
dXRUZXN0cy9mYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy15LWluLW5vbi1z
Y3JvbGxpbmctZGl2LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw3IEBACisg
CitQQVNTIGV2ZW50LndoZWVsRGVsdGFZIGlzIHdpbmRvdy5naXZlblNjcm9sbFRvcCotMworUEFT
UyBldmVudC53aGVlbERlbHRhWCBpcyAwCitQQVNTIGV2ZW50LndoZWVsRGVsdGEgaXMgd2luZG93
LmdpdmVuU2Nyb2xsVG9wKi0zCitQQVNTIGRpdi5zY3JvbGxUb3AgaXMgd2luZG93LmV4cGVjdGVk
U2Nyb2xsVG9wCitQQVNTIGRpdi5zY3JvbGxMZWZ0IGlzIHdpbmRvdy5leHBlY3RlZFNjcm9sbExl
ZnQKKwoKUHJvcGVydHkgY2hhbmdlcyBvbjogTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcGxhdGZv
cm0td2hlZWxldmVudC1wYWdpbmcteS1pbi1ub24tc2Nyb2xsaW5nLWRpdi1leHBlY3RlZC50eHQK
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fXwpBZGRlZDogc3ZuOmVvbC1zdHlsZQogICArIExGCgpJbmRleDogTGF5b3V0VGVz
dHMvZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteS1pbi1ub24tc2Nyb2xs
aW5nLWRpdi5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3BsYXRm
b3JtLXdoZWVsZXZlbnQtcGFnaW5nLXktaW4tbm9uLXNjcm9sbGluZy1kaXYuaHRtbAkocmV2aXNp
b24gMCkKKysrIExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFn
aW5nLXktaW4tbm9uLXNjcm9sbGluZy1kaXYuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw2
NCBAQAorPGh0bWw+CisgICAgPGhlYWQ+CisgICAgICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIg
aHJlZj0iLi4vanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKyAgICAgICAgPHNjcmlw
dCBzcmM9Ii4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+CisgICAgICAg
IDxzY3JpcHQ+CisgICAgICAgICAgICB2YXIgZ2l2ZW5TY3JvbGxUb3AgPSAyOworICAgICAgICAg
ICAgdmFyIGdpdmVuU2Nyb2xsTGVmdCA9IDA7CisgICAgICAgICAgICB2YXIgZXhwZWN0ZWRTY3Jv
bGxUb3AgPSAwOworICAgICAgICAgICAgdmFyIGV4cGVjdGVkU2Nyb2xsTGVmdCA9IDA7CisgICAg
ICAgICAgICB2YXIgcGl4ZWxzUGVyV2hlZWxUaWNrID0gNDA7CisgICAgICAgICAgICB2YXIgZXZl
bnQ7CisgICAgICAgICAgICB2YXIgZGl2OworCisgICAgICAgICAgICBpZiAod2luZG93LmxheW91
dFRlc3RDb250cm9sbGVyKQorICAgICAgICAgICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLndh
aXRVbnRpbERvbmUoKTsKKworICAgICAgICAgICAgZnVuY3Rpb24gZGlzcGF0Y2hXaGVlbEV2ZW50
KCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICB2YXIgb3ZlcmZsb3dFbGVtZW50ID0g
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm92ZXJmbG93Iik7CisgICAgICAgICAgICAgICAgaWYg
KG92ZXJmbG93RWxlbWVudCkKKyAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3dFbGVtZW50LmFk
ZEV2ZW50TGlzdGVuZXIoIm1vdXNld2hlZWwiLCBtb3VzZXdoZWVsSGFuZGxlciwgZmFsc2UpOwor
CisgICAgICAgICAgICAgICAgaWYgKHdpbmRvdy5ldmVudFNlbmRlcikgeworICAgICAgICAgICAg
ICAgICAgICBldmVudFNlbmRlci5tb3VzZU1vdmVUbygxMDAsIDExMCk7CisgICAgICAgICAgICAg
ICAgICAgIGV2ZW50U2VuZGVyLmNvbnRpbnVvdXNNb3VzZVNjcm9sbEJ5KC13aW5kb3cuZ2l2ZW5T
Y3JvbGxMZWZ0LCAtd2luZG93LmdpdmVuU2Nyb2xsVG9wLCB0cnVlKTsKKyAgICAgICAgICAgICAg
ICB9CisKKyAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCdjaGVja09mZnNldHMoKTsnLCAxMDAp
OworICAgICAgICAgICAgfQorCisgICAgICAgICAgICBmdW5jdGlvbiBjaGVja09mZnNldHMoKQor
ICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGRpdiA9IGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJvdmVyZmxvdyIpOworICAgICAgICAgICAgICAgIHNob3VsZEJlKCJkaXYuc2Nyb2xsVG9w
IiwgIndpbmRvdy5leHBlY3RlZFNjcm9sbFRvcCIpOworICAgICAgICAgICAgICAgIHNob3VsZEJl
KCJkaXYuc2Nyb2xsTGVmdCIsICJ3aW5kb3cuZXhwZWN0ZWRTY3JvbGxMZWZ0Iik7CisKKyAgICAg
ICAgICAgICAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQorICAgICAgICAgICAg
ICAgICAgICB3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIubm90aWZ5RG9uZSgpOworICAgICAg
ICAgICAgfQorCisgICAgICAgICAgICBmdW5jdGlvbiBtb3VzZXdoZWVsSGFuZGxlcihlKQorICAg
ICAgICAgICAgeworICAgICAgICAgICAgICAgIGV2ZW50ID0gZTsKKyAgICAgICAgICAgICAgICBz
aG91bGRCZSgiZXZlbnQud2hlZWxEZWx0YVkiLCAid2luZG93LmdpdmVuU2Nyb2xsVG9wKi0zIik7
CisgICAgICAgICAgICAgICAgc2hvdWxkQmUoImV2ZW50LndoZWVsRGVsdGFYIiwgIjAiKTsKKwor
ICAgICAgICAgICAgICAgIGlmIChlLndoZWVsRGVsdGFZKQorICAgICAgICAgICAgICAgICAgICBz
aG91bGRCZSgiZXZlbnQud2hlZWxEZWx0YSIsICJ3aW5kb3cuZ2l2ZW5TY3JvbGxUb3AqLTMiKTsK
KyAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAgIHNob3VsZEJlKCJldmVu
dC53aGVlbERlbHRhIiwgIjAiKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgPC9zY3JpcHQ+Cisg
ICAgPC9oZWFkPgorCisgICAgPGJvZHkgc3R5bGU9Im1hcmdpbjowIiBvbmxvYWQ9InNldFRpbWVv
dXQoJ2Rpc3BhdGNoV2hlZWxFdmVudCgpOycsIDEwMCkiPgorICAgICAgICA8ZGl2IGlkPSJvdmVy
ZmxvdyIgc3R5bGU9ImJvcmRlcjoycHggc29saWQgYmxhY2s7b3ZlcmZsb3c6YXV0bzt3aGl0ZS1z
cGFjZTpub3dyYXA7aGVpZ2h0OjIwMHB4O3dpZHRoOjIwMHB4OyI+CisgICAgICAgIDxkaXYgc3R5
bGU9ImhlaWdodDoxODVweDt3aWR0aDo2MDBweDsiPgorICAgICAgICAgIDxkaXYgc3R5bGU9ImJv
cmRlcjowcHg7YmFja2dyb3VuZC1jb2xvcjpyZWQ7aGVpZ2h0OjE4MXB4O3dpZHRoOjMwMHB4O2Rp
c3BsYXk6aW5saW5lLWJsb2NrOyI+PC9kaXY+CisgICAgICAgICAgPGRpdiBzdHlsZT0iYm9yZGVy
OjBweDtiYWNrZ3JvdW5kLWNvbG9yOmdyZWVuO2hlaWdodDoxODFweDt3aWR0aDozMDBweDtkaXNw
bGF5OmlubGluZS1ibG9jazsiPjwvZGl2PgorICAgICAgICA8L2Rpdj4KKyAgICAgICAgPC9kaXY+
CisgICAgICAgIDxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorICAgIDwvYm9keT4KKzwvaHRtbD4K
ClByb3BlcnR5IGNoYW5nZXMgb246IExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3BsYXRmb3JtLXdo
ZWVsZXZlbnQtcGFnaW5nLXktaW4tbm9uLXNjcm9sbGluZy1kaXYuaHRtbApfX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkFk
ZGVkOiBzdm46ZXhlY3V0YWJsZQogICArICoKQWRkZWQ6IHN2bjplb2wtc3R5bGUKICAgKyBMRgoK
SW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5n
LXktaW4tbm9uLXNjcm9sbGluZy1wYWdlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9mYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy15LWluLW5vbi1z
Y3JvbGxpbmctcGFnZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9m
YXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy15LWluLW5vbi1zY3JvbGxpbmct
cGFnZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNiBAQAorUEFTUyBldmVu
dC53aGVlbERlbHRhWSBpcyB3aW5kb3cuZ2l2ZW5TY3JvbGxUb3AgKiAtMworUEFTUyBldmVudC53
aGVlbERlbHRhWCBpcyAwCitQQVNTIGV2ZW50LndoZWVsRGVsdGEgaXMgd2luZG93LmdpdmVuU2Ny
b2xsVG9wICogLTMKK1BBU1MgZG9jdW1lbnQuYm9keS5zY3JvbGxUb3AgaXMgd2luZG93LmV4cGVj
dGVkU2Nyb2xsVG9wCitQQVNTIGRvY3VtZW50LmJvZHkuc2Nyb2xsTGVmdCBpcyB3aW5kb3cuZXhw
ZWN0ZWRTY3JvbGxMZWZ0CisKClByb3BlcnR5IGNoYW5nZXMgb246IExheW91dFRlc3RzL2Zhc3Qv
ZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXktaW4tbm9uLXNjcm9sbGluZy1wYWdl
LWV4cGVjdGVkLnR4dApfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fCkFkZGVkOiBzdm46ZW9sLXN0eWxlCiAgICsgTEYKCklu
ZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy15
LWluLW5vbi1zY3JvbGxpbmctcGFnZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zh
c3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXktaW4tbm9uLXNjcm9sbGluZy1w
YWdlLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9wbGF0Zm9y
bS13aGVlbGV2ZW50LXBhZ2luZy15LWluLW5vbi1zY3JvbGxpbmctcGFnZS5odG1sCShyZXZpc2lv
biAwKQpAQCAtMCwwICsxLDYyIEBACis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPGxpbmsg
cmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3Mi
PgorICAgICAgICA8c2NyaXB0IHNyYz0iLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48
L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIHZhciBnaXZlblNjcm9sbFRv
cCA9IDI7CisgICAgICAgICAgICB2YXIgZ2l2ZW5TY3JvbGxMZWZ0ID0gMDsKKyAgICAgICAgICAg
IHZhciBleHBlY3RlZFNjcm9sbFRvcCA9IDA7CisgICAgICAgICAgICB2YXIgZXhwZWN0ZWRTY3Jv
bGxMZWZ0ID0gMDsKKyAgICAgICAgICAgIHZhciBldmVudDsKKyAgICAgICAgICAgIHZhciBkaXY7
CisKKyAgICAgICAgICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAgICAg
ICAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIud2FpdFVudGlsRG9uZSgpOworCisgICAgICAg
ICAgICBmdW5jdGlvbiBkaXNwYXRjaFdoZWVsRXZlbnQoKQorICAgICAgICAgICAgeworICAgICAg
ICAgICAgICAgIGRvY3VtZW50LmJvZHkuYWRkRXZlbnRMaXN0ZW5lcigibW91c2V3aGVlbCIsIG1v
dXNld2hlZWxIYW5kbGVyLCBmYWxzZSk7CisKKyAgICAgICAgICAgICAgICBpZiAod2luZG93LmV2
ZW50U2VuZGVyKSB7CisgICAgICAgICAgICAgICAgICAgIGV2ZW50U2VuZGVyLm1vdXNlTW92ZVRv
KDEwMCwgMTEwKTsKKyAgICAgICAgICAgICAgICAgICAgZXZlbnRTZW5kZXIuY29udGludW91c01v
dXNlU2Nyb2xsQnkoLXdpbmRvdy5naXZlblNjcm9sbExlZnQsIC13aW5kb3cuZ2l2ZW5TY3JvbGxU
b3AsIHRydWUpOworICAgICAgICAgICAgICAgIH0KKworICAgICAgICAgICAgICAgIHNldFRpbWVv
dXQoJ2NoZWNrT2Zmc2V0cygpOycsIDEwMCk7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAg
IGZ1bmN0aW9uIGNoZWNrT2Zmc2V0cygpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAg
c2hvdWxkQmUoImRvY3VtZW50LmJvZHkuc2Nyb2xsVG9wIiwgIndpbmRvdy5leHBlY3RlZFNjcm9s
bFRvcCIpOworICAgICAgICAgICAgICAgIHNob3VsZEJlKCJkb2N1bWVudC5ib2R5LnNjcm9sbExl
ZnQiLCAid2luZG93LmV4cGVjdGVkU2Nyb2xsTGVmdCIpOworCisgICAgICAgICAgICAgICAgaWYg
KHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICAgICAgICAgICAgICAgICAgd2luZG93
LmxheW91dFRlc3RDb250cm9sbGVyLm5vdGlmeURvbmUoKTsKKyAgICAgICAgICAgIH0KKworICAg
ICAgICAgICAgZnVuY3Rpb24gbW91c2V3aGVlbEhhbmRsZXIoZSkKKyAgICAgICAgICAgIHsKKwkJ
CQlldmVudCA9IGU7CisJCQkJc2hvdWxkQmUoImV2ZW50LndoZWVsRGVsdGFZIiwgIndpbmRvdy5n
aXZlblNjcm9sbFRvcCAqIC0zIik7CisJCQkJc2hvdWxkQmUoImV2ZW50LndoZWVsRGVsdGFYIiwg
IjAiKTsKKworCQkJCWlmIChlLndoZWVsRGVsdGFZKQorCQkJCQlzaG91bGRCZSgiZXZlbnQud2hl
ZWxEZWx0YSIsICJ3aW5kb3cuZ2l2ZW5TY3JvbGxUb3AgKiAtMyIpOworCQkJCWVsc2UKKwkJCQkJ
c2hvdWxkQmUoImV2ZW50LndoZWVsRGVsdGEiLCAiMCIpOworICAgICAgICAgICAgfQorICAgICAg
ICA8L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisKKyAgICA8Ym9keSBzdHlsZT0ibWFyZ2luOjAiIG9u
bG9hZD0ic2V0VGltZW91dCgnZGlzcGF0Y2hXaGVlbEV2ZW50KCk7JywgMTAwKSI+CisgICAgICAg
IDxkaXYgc3R5bGU9ImhlaWdodDoyMDBweDt3aWR0aDoyNDAwcHgiPgorICAgICAgICAgIDxkaXYg
c3R5bGU9ImJhY2tncm91bmQtY29sb3I6cmVkO2hlaWdodDoyMDBweDt3aWR0aDoxMjAwcHg7cG9z
aXRpb246cmVsYXRpdmU7bGVmdDowcHg7dG9wOjBweCI+PC9kaXY+CisgICAgICAgICAgPGRpdiBz
dHlsZT0iYmFja2dyb3VuZC1jb2xvcjpncmVlbjtoZWlnaHQ6MjAwcHg7d2lkdGg6MTIwMHB4O3Bv
c2l0aW9uOnJlbGF0aXZlO2xlZnQ6MTIwMHB4O3RvcDotMjAwcHgiPjwvZGl2PgorICAgICAgICA8
L2Rpdj4KKyAgICAgICAgPGRpdiBzdHlsZT0iaGVpZ2h0OjIwMHB4O3dpZHRoOjI0MDBweCI+Cisg
ICAgICAgICAgPGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjpibHVlO2hlaWdodDoyMDBweDt3
aWR0aDoxMjAwcHg7cG9zaXRpb246cmVsYXRpdmU7bGVmdDowcHg7dG9wOjBweCI+PC9kaXY+Cisg
ICAgICAgICAgPGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjp5ZWxsb3c7aGVpZ2h0OjIwMHB4
O3dpZHRoOjEyMDBweDtwb3NpdGlvbjpyZWxhdGl2ZTtsZWZ0OjEyMDBweDt0b3A6LTIwMHB4Ij48
L2Rpdj4KKyAgICAgICAgPC9kaXY+CisgICAgICAgIDxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2Pgor
ICAgIDwvYm9keT4KKzwvaHRtbD4KClByb3BlcnR5IGNoYW5nZXMgb246IExheW91dFRlc3RzL2Zh
c3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXktaW4tbm9uLXNjcm9sbGluZy1w
YWdlLmh0bWwKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fXwpBZGRlZDogc3ZuOmVvbC1zdHlsZQogICArIExGCgpJbmRleDog
TGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteS1pbi1z
Y3JvbGxpbmctZGl2LWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0
L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy15LWluLXNjcm9sbGluZy1kaXYtZXhw
ZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcGxhdGZv
cm0td2hlZWxldmVudC1wYWdpbmcteS1pbi1zY3JvbGxpbmctZGl2LWV4cGVjdGVkLnR4dAkocmV2
aXNpb24gMCkKQEAgLTAsMCArMSw2IEBACitQQVNTIGV2ZW50LndoZWVsRGVsdGFZIGlzIHdpbmRv
dy5naXZlblNjcm9sbFRvcCAqIC0zCitQQVNTIGV2ZW50LndoZWVsRGVsdGFYIGlzIDAKK1BBU1Mg
ZXZlbnQud2hlZWxEZWx0YSBpcyB3aW5kb3cuZ2l2ZW5TY3JvbGxUb3AgKiAtMworUEFTUyBkaXYu
c2Nyb2xsVG9wIGlzIHdpbmRvdy5leHBlY3RlZFNjcm9sbFRvcAorUEFTUyBkaXYuc2Nyb2xsTGVm
dCBpcyB3aW5kb3cuZXhwZWN0ZWRTY3JvbGxMZWZ0CisKClByb3BlcnR5IGNoYW5nZXMgb246IExh
eW91dFRlc3RzL2Zhc3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXktaW4tc2Ny
b2xsaW5nLWRpdi1leHBlY3RlZC50eHQKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpBZGRlZDogc3ZuOmVvbC1zdHlsZQog
ICArIExGCgpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVu
dC1wYWdpbmcteS1pbi1zY3JvbGxpbmctZGl2Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteS1pbi1zY3JvbGxpbmct
ZGl2Lmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9wbGF0Zm9y
bS13aGVlbGV2ZW50LXBhZ2luZy15LWluLXNjcm9sbGluZy1kaXYuaHRtbAkocmV2aXNpb24gMCkK
QEAgLTAsMCArMSw3MSBAQAorPGh0bWw+CisgICAgPGhlYWQ+CisgICAgICAgIDxsaW5rIHJlbD0i
c3R5bGVzaGVldCIgaHJlZj0iLi4vanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKyAg
ICAgICAgPHNjcmlwdCBzcmM9Ii4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3Jp
cHQ+CisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICB2YXIgZ2l2ZW5TY3JvbGxUb3AgPSAy
OworICAgICAgICAgICAgdmFyIGdpdmVuU2Nyb2xsTGVmdCA9IDA7CisgICAgICAgICAgICB2YXIg
ZXhwZWN0ZWRTY3JvbGxUb3AgPSAzMjI7IC8vIDIgcGFnZXMsIDE2MSAqIDIsIHNlZSBjb21tZW50
IGluIEhUTUwgYmVsb3cuCisgICAgICAgICAgICB2YXIgZXhwZWN0ZWRTY3JvbGxMZWZ0ID0gMDsK
KyAgICAgICAgICAgIHZhciBldmVudDsKKyAgICAgICAgICAgIHZhciBkaXY7CisKKyAgICAgICAg
ICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAgICAgICAgICAgICAgbGF5
b3V0VGVzdENvbnRyb2xsZXIud2FpdFVudGlsRG9uZSgpOworCisgICAgICAgICAgICBmdW5jdGlv
biBkaXNwYXRjaFdoZWVsRXZlbnQoKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIHZh
ciBvdmVyZmxvd0VsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgib3ZlcmZsb3ciKTsK
KyAgICAgICAgICAgICAgICBpZiAob3ZlcmZsb3dFbGVtZW50KQorICAgICAgICAgICAgICAgICAg
ICBvdmVyZmxvd0VsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigibW91c2V3aGVlbCIsIG1vdXNld2hl
ZWxIYW5kbGVyLCBmYWxzZSk7CisKKyAgICAgICAgICAgICAgICBpZiAod2luZG93LmV2ZW50U2Vu
ZGVyKSB7CisgICAgICAgICAgICAgICAgICAgIGV2ZW50U2VuZGVyLm1vdXNlTW92ZVRvKDEwMCwg
MTEwKTsKKyAgICAgICAgICAgICAgICAgICAgZXZlbnRTZW5kZXIuY29udGludW91c01vdXNlU2Ny
b2xsQnkoLXdpbmRvdy5naXZlblNjcm9sbExlZnQsIC13aW5kb3cuZ2l2ZW5TY3JvbGxUb3AsIHRy
dWUpOworICAgICAgICAgICAgICAgIH0KKworICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoJ2No
ZWNrT2Zmc2V0cygpOycsIDEwMCk7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIGZ1bmN0
aW9uIGNoZWNrT2Zmc2V0cygpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgZGl2ID0g
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm92ZXJmbG93Iik7CisgICAgICAgICAgICAgICAgc2hv
dWxkQmUoImRpdi5zY3JvbGxUb3AiLCAid2luZG93LmV4cGVjdGVkU2Nyb2xsVG9wIik7CisgICAg
ICAgICAgICAgICAgc2hvdWxkQmUoImRpdi5zY3JvbGxMZWZ0IiwgIndpbmRvdy5leHBlY3RlZFNj
cm9sbExlZnQiKTsKKworICAgICAgICAgICAgICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRy
b2xsZXIpCisgICAgICAgICAgICAgICAgICAgIHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlci5u
b3RpZnlEb25lKCk7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIGZ1bmN0aW9uIG1vdXNl
d2hlZWxIYW5kbGVyKGUpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgZXZlbnQgPSBl
OworICAgICAgICAgICAgICAgIHNob3VsZEJlKCJldmVudC53aGVlbERlbHRhWSIsICJ3aW5kb3cu
Z2l2ZW5TY3JvbGxUb3AgKiAtMyIpOworICAgICAgICAgICAgICAgIHNob3VsZEJlKCJldmVudC53
aGVlbERlbHRhWCIsICIwIik7CisKKyAgICAgICAgICAgICAgICBpZiAoZS53aGVlbERlbHRhWSkK
KyAgICAgICAgICAgICAgICAgICAgc2hvdWxkQmUoImV2ZW50LndoZWVsRGVsdGEiLCAid2luZG93
LmdpdmVuU2Nyb2xsVG9wICogLTMiKTsKKyAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAg
ICAgICAgICAgIHNob3VsZEJlKCJldmVudC53aGVlbERlbHRhIiwgIjAiKTsKKyAgICAgICAgICAg
IH0KKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9oZWFkPgorCisgICAgPGJvZHkgc3R5bGU9Im1h
cmdpbjowIiBvbmxvYWQ9InNldFRpbWVvdXQoJ2Rpc3BhdGNoV2hlZWxFdmVudCgpOycsIDEwMCki
PgorICAgICAgICA8IS0tIFRoaXMgZGl2IGlzIDIwMCBwaXhlbHMgaGlnaC4gVGhlIGNvbnRlbnQg
cmVzdWx0cyBpbiBzY3Jvb2wgYmFycyBvbgorICAgICAgICAgIGJvdGggZWRnZXMsIHJlc3VsdGlu
ZyBpbiBhbiBlZmZlY3RpdmUgY29udGVudCBhcmVhIG9mIDE4NSB4IDE4NSBvbgorICAgICAgICAg
IGxpbnV4LiBUaGUgcGFnaW5nIGNvbnRleHQgb3ZlcmxhcCBpcyAyNCBwaXhlbHMuIFNvIG9uZSBw
YWdlIG9mIHNjcm9sbAorICAgICAgICAgIG1vdmVzIHRoZSBjb250ZW50IGJ5IDE4NSAtIDI0IC09
IDE2MSBwaXhlbHMuIC0tPgorICAgICAgICA8ZGl2IGlkPSJvdmVyZmxvdyIgc3R5bGU9ImJvcmRl
cjoycHggc29saWQgYmxhY2s7b3ZlcmZsb3c6YXV0bztoZWlnaHQ6MjAwcHg7d2lkdGg6MjAwcHg7
Ij4KKyAgICAgICAgICAgIDxkaXYgc3R5bGU9ImhlaWdodDozMDBweDt3aWR0aDo2MDBweCI+Cisg
ICAgICAgICAgICAgIDxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6cmVkO2hlaWdodDozMDBw
eDt3aWR0aDozMDBweDtwb3NpdGlvbjpyZWxhdGl2ZTtsZWZ0OjBweDt0b3A6MHB4Ij48L2Rpdj4K
KyAgICAgICAgICAgICAgPGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjpncmVlbjtoZWlnaHQ6
MzAwcHg7d2lkdGg6MzAwcHg7cG9zaXRpb246cmVsYXRpdmU7bGVmdDozMDBweDt0b3A6LTMwMHB4
Ij48L2Rpdj4KKyAgICAgICAgICAgIDwvZGl2PgorICAgICAgICAgICAgPGRpdiBzdHlsZT0iaGVp
Z2h0OjMwMHB4O3dpZHRoOjYwMHB4Ij4KKyAgICAgICAgICAgICAgPGRpdiBzdHlsZT0iYmFja2dy
b3VuZC1jb2xvcjpibHVlO2hlaWdodDozMDBweDt3aWR0aDozMDBweDtwb3NpdGlvbjpyZWxhdGl2
ZTtsZWZ0OjBweDt0b3A6MHB4Ij48L2Rpdj4KKyAgICAgICAgICAgICAgPGRpdiBzdHlsZT0iYmFj
a2dyb3VuZC1jb2xvcjp5ZWxsb3c7aGVpZ2h0OjMwMHB4O3dpZHRoOjMwMHB4O3Bvc2l0aW9uOnJl
bGF0aXZlO2xlZnQ6MzAwcHg7dG9wOi0zMDBweCI+PC9kaXY+CisgICAgICAgICAgICA8L2Rpdj4K
KyAgICAgICAgPC9kaXY+CisgICAgICAgIDxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorICAgIDwv
Ym9keT4KKzwvaHRtbD4KClByb3BlcnR5IGNoYW5nZXMgb246IExheW91dFRlc3RzL2Zhc3QvZXZl
bnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXktaW4tc2Nyb2xsaW5nLWRpdi5odG1sCl9f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX18KQWRkZWQ6IHN2bjpleGVjdXRhYmxlCiAgICsgKgpBZGRlZDogc3ZuOmVvbC1zdHls
ZQogICArIExGCgpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxl
dmVudC1wYWdpbmcteS1pbi1zY3JvbGxpbmctcGFnZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteS1p
bi1zY3JvbGxpbmctcGFnZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0
cy9mYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy15LWluLXNjcm9sbGluZy1w
YWdlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw2IEBACitQQVNTIGV2ZW50
LndoZWVsRGVsdGFZIGlzIHdpbmRvdy5naXZlblNjcm9sbFRvcCAqIC0zCitQQVNTIGV2ZW50Lndo
ZWVsRGVsdGFYIGlzIDAKK1BBU1MgZXZlbnQud2hlZWxEZWx0YSBpcyB3aW5kb3cuZ2l2ZW5TY3Jv
bGxUb3AgKiAtMworUEFTUyBkb2N1bWVudC5ib2R5LnNjcm9sbFRvcCBpcyB3aW5kb3cuZXhwZWN0
ZWRTY3JvbGxUb3AKK1BBU1MgZG9jdW1lbnQuYm9keS5zY3JvbGxMZWZ0IGlzIHdpbmRvdy5leHBl
Y3RlZFNjcm9sbExlZnQKKwoKUHJvcGVydHkgY2hhbmdlcyBvbjogTGF5b3V0VGVzdHMvZmFzdC9l
dmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteS1pbi1zY3JvbGxpbmctcGFnZS1leHBl
Y3RlZC50eHQKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fXwpBZGRlZDogc3ZuOmVvbC1zdHlsZQogICArIExGCgpJbmRleDog
TGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteS1pbi1z
Y3JvbGxpbmctcGFnZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZXZlbnRz
L3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXktaW4tc2Nyb2xsaW5nLXBhZ2UuaHRtbAkocmV2
aXNpb24gMCkKKysrIExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQt
cGFnaW5nLXktaW4tc2Nyb2xsaW5nLXBhZ2UuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw2
MiBAQAorPGh0bWw+CisgICAgPGhlYWQ+CisgICAgICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIg
aHJlZj0iLi4vanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKyAgICAgICAgPHNjcmlw
dCBzcmM9Ii4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+CisgICAgICAg
IDxzY3JpcHQ+CisgICAgICAgICAgICB2YXIgZ2l2ZW5TY3JvbGxUb3AgPSAyOyAvLyBPbmx5IHBh
Z2UgaXMgc2Nyb2xsZWQgcGVyIGV2ZW50LCByZWdhcmRsZXNzIG9mIHRoaXMgbnVtYmVyLgorICAg
ICAgICAgICAgdmFyIGdpdmVuU2Nyb2xsTGVmdCA9IDA7CisgICAgICAgICAgICB2YXIgZXhwZWN0
ZWRTY3JvbGxUb3AgPSA1MjU7IC8vIFdpbmRvdyBpcyA4MDB4NjAwLiBTY3JvbGwgODcuNSUgb2Yg
dmlzaWJsZS4KKyAgICAgICAgICAgIHZhciBleHBlY3RlZFNjcm9sbExlZnQgPSAwOworICAgICAg
ICAgICAgdmFyIGV2ZW50OworICAgICAgICAgICAgdmFyIGRpdjsKKworICAgICAgICAgICAgaWYg
KHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICAgICAgICAgICAgICBsYXlvdXRUZXN0
Q29udHJvbGxlci53YWl0VW50aWxEb25lKCk7CisKKyAgICAgICAgICAgIGZ1bmN0aW9uIGRpc3Bh
dGNoV2hlZWxFdmVudCgpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgZG9jdW1lbnQu
Ym9keS5hZGRFdmVudExpc3RlbmVyKCJtb3VzZXdoZWVsIiwgbW91c2V3aGVlbEhhbmRsZXIsIGZh
bHNlKTsKKworICAgICAgICAgICAgICAgIGlmICh3aW5kb3cuZXZlbnRTZW5kZXIpIHsKKyAgICAg
ICAgICAgICAgICAgICAgZXZlbnRTZW5kZXIubW91c2VNb3ZlVG8oMTAwLCAxMTApOworICAgICAg
ICAgICAgICAgICAgICBldmVudFNlbmRlci5jb250aW51b3VzTW91c2VTY3JvbGxCeSgtd2luZG93
LmdpdmVuU2Nyb2xsTGVmdCwgLXdpbmRvdy5naXZlblNjcm9sbFRvcCwgdHJ1ZSk7CisgICAgICAg
ICAgICAgICAgfQorCisgICAgICAgICAgICAgICAgc2V0VGltZW91dCgnY2hlY2tPZmZzZXRzKCk7
JywgMTAwKTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgZnVuY3Rpb24gY2hlY2tPZmZz
ZXRzKCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBzaG91bGRCZSgiZG9jdW1lbnQu
Ym9keS5zY3JvbGxUb3AiLCAid2luZG93LmV4cGVjdGVkU2Nyb2xsVG9wIik7CisgICAgICAgICAg
ICAgICAgc2hvdWxkQmUoImRvY3VtZW50LmJvZHkuc2Nyb2xsTGVmdCIsICJ3aW5kb3cuZXhwZWN0
ZWRTY3JvbGxMZWZ0Iik7CisKKyAgICAgICAgICAgICAgICBpZiAod2luZG93LmxheW91dFRlc3RD
b250cm9sbGVyKQorICAgICAgICAgICAgICAgICAgICB3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xs
ZXIubm90aWZ5RG9uZSgpOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICBmdW5jdGlvbiBt
b3VzZXdoZWVsSGFuZGxlcihlKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGV2ZW50
ID0gZTsKKyAgICAgICAgICAgICAgICBzaG91bGRCZSgiZXZlbnQud2hlZWxEZWx0YVkiLCAid2lu
ZG93LmdpdmVuU2Nyb2xsVG9wICogLTMiKTsKKyAgICAgICAgICAgICAgICBzaG91bGRCZSgiZXZl
bnQud2hlZWxEZWx0YVgiLCAiMCIpOworCisgICAgICAgICAgICAgICAgaWYgKGUud2hlZWxEZWx0
YVkpCisgICAgICAgICAgICAgICAgICAgIHNob3VsZEJlKCJldmVudC53aGVlbERlbHRhIiwgIndp
bmRvdy5naXZlblNjcm9sbFRvcCAqIC0zIik7CisgICAgICAgICAgICAgICAgZWxzZQorICAgICAg
ICAgICAgICAgICAgICBzaG91bGRCZSgiZXZlbnQud2hlZWxEZWx0YSIsICIwIik7CisgICAgICAg
ICAgICB9CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvaGVhZD4KKworICAgIDxib2R5IHN0eWxl
PSJtYXJnaW46MCIgb25sb2FkPSJzZXRUaW1lb3V0KCdkaXNwYXRjaFdoZWVsRXZlbnQoKTsnLCAx
MDApIj4KKyAgICAgICAgPGRpdiBzdHlsZT0iaGVpZ2h0OjkwMHB4O3dpZHRoOjQwMHB4Ij4KKyAg
ICAgICAgICA8ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnJlZDtoZWlnaHQ6OTAwcHg7d2lk
dGg6MjAwcHg7cG9zaXRpb246cmVsYXRpdmU7bGVmdDowcHg7dG9wOjBweCI+PC9kaXY+CisgICAg
ICAgICAgPGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjpncmVlbjtoZWlnaHQ6OTAwcHg7d2lk
dGg6MjAwcHg7cG9zaXRpb246cmVsYXRpdmU7bGVmdDoyMDBweDt0b3A6LTkwMHB4Ij48L2Rpdj4K
KyAgICAgICAgPC9kaXY+CisgICAgICAgIDxkaXYgc3R5bGU9ImhlaWdodDo5MDBweDt3aWR0aDo0
MDBweCI+CisgICAgICAgICAgPGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjpibHVlO2hlaWdo
dDo5MDBweDt3aWR0aDoyMDBweDtwb3NpdGlvbjpyZWxhdGl2ZTtsZWZ0OjBweDt0b3A6MHB4Ij48
L2Rpdj4KKyAgICAgICAgICA8ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnllbGxvdztoZWln
aHQ6OTAwcHg7d2lkdGg6MjAwcHg7cG9zaXRpb246cmVsYXRpdmU7bGVmdDoyMDBweDt0b3A6LTkw
MHB4Ij48L2Rpdj4KKyAgICAgICAgPC9kaXY+CisgICAgICAgIDxkaXYgaWQ9ImNvbnNvbGUiPjwv
ZGl2PgorICAgIDwvYm9keT4KKzwvaHRtbD4KClByb3BlcnR5IGNoYW5nZXMgb246IExheW91dFRl
c3RzL2Zhc3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXktaW4tc2Nyb2xsaW5n
LXBhZ2UuaHRtbApfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fCkFkZGVkOiBzdm46ZW9sLXN0eWxlCiAgICsgTEYKCkluZGV4
OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS1tYWMvZmFzdC9ldmVudHMvcGxhdGZvcm0t
d2hlZWxldmVudC1wYWdpbmcteC1pbi1zY3JvbGxpbmctcGFnZS1leHBlY3RlZC50eHQKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0tbWFjL2Zhc3QvZXZlbnRzL3Bs
YXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXgtaW4tc2Nyb2xsaW5nLXBhZ2UtZXhwZWN0ZWQudHh0
CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0tbWFjL2Zhc3Qv
ZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXgtaW4tc2Nyb2xsaW5nLXBhZ2UtZXhw
ZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDYgQEAKK1BBU1MgZXZlbnQud2hlZWxE
ZWx0YVkgaXMgMAorUEFTUyBldmVudC53aGVlbERlbHRhWCBpcyB3aW5kb3cuZ2l2ZW5TY3JvbGxM
ZWZ0ICogLTMKK1BBU1MgZXZlbnQud2hlZWxEZWx0YSBpcyB3aW5kb3cuZ2l2ZW5TY3JvbGxMZWZ0
ICogLTMKK1BBU1MgZG9jdW1lbnQuYm9keS5zY3JvbGxUb3AgaXMgd2luZG93LmV4cGVjdGVkU2Ny
b2xsVG9wCitGQUlMIGRvY3VtZW50LmJvZHkuc2Nyb2xsTGVmdCBzaG91bGQgYmUgNzAwLiBXYXMg
NzYwLgorCgpQcm9wZXJ0eSBjaGFuZ2VzIG9uOiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1
bS1tYWMvZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteC1pbi1zY3JvbGxp
bmctcGFnZS1leHBlY3RlZC50eHQKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpBZGRlZDogc3ZuOmVvbC1zdHlsZQogICAr
IExGCgpJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0tbWFjL2Zhc3QvZXZlbnRz
L3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXh5LWluLXNjcm9sbGluZy1wYWdlLWV4cGVjdGVk
LnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS1tYWMvZmFz
dC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteHktaW4tc2Nyb2xsaW5nLXBhZ2Ut
ZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21p
dW0tbWFjL2Zhc3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXh5LWluLXNjcm9s
bGluZy1wYWdlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw2IEBACitQQVNT
IGV2ZW50LndoZWVsRGVsdGFZIGlzIHdpbmRvdy5naXZlblNjcm9sbFRvcCAqIC0zCitQQVNTIGV2
ZW50LndoZWVsRGVsdGFYIGlzIHdpbmRvdy5naXZlblNjcm9sbExlZnQgKiAtMworUEFTUyBldmVu
dC53aGVlbERlbHRhIGlzIHdpbmRvdy5naXZlblNjcm9sbFRvcCAqIC0zCitGQUlMIGRvY3VtZW50
LmJvZHkuc2Nyb2xsVG9wIHNob3VsZCBiZSA1MTEuIFdhcyA1NDUuCitGQUlMIGRvY3VtZW50LmJv
ZHkuc2Nyb2xsTGVmdCBzaG91bGQgYmUgNjg2LiBXYXMgNzQ1LgorCgpQcm9wZXJ0eSBjaGFuZ2Vz
IG9uOiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS1tYWMvZmFzdC9ldmVudHMvcGxhdGZv
cm0td2hlZWxldmVudC1wYWdpbmcteHktaW4tc2Nyb2xsaW5nLXBhZ2UtZXhwZWN0ZWQudHh0Cl9f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX18KQWRkZWQ6IHN2bjplb2wtc3R5bGUKICAgKyBMRgoKSW5kZXg6IExheW91dFRlc3Rz
L3BsYXRmb3JtL2Nocm9taXVtLW1hYy9mYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBh
Z2luZy15LWluLXNjcm9sbGluZy1wYWdlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS1tYWMvZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxl
dmVudC1wYWdpbmcteS1pbi1zY3JvbGxpbmctcGFnZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDAp
CisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS1tYWMvZmFzdC9ldmVudHMvcGxhdGZv
cm0td2hlZWxldmVudC1wYWdpbmcteS1pbi1zY3JvbGxpbmctcGFnZS1leHBlY3RlZC50eHQJKHJl
dmlzaW9uIDApCkBAIC0wLDAgKzEsNiBAQAorUEFTUyBldmVudC53aGVlbERlbHRhWSBpcyB3aW5k
b3cuZ2l2ZW5TY3JvbGxUb3AgKiAtMworUEFTUyBldmVudC53aGVlbERlbHRhWCBpcyAwCitQQVNT
IGV2ZW50LndoZWVsRGVsdGEgaXMgd2luZG93LmdpdmVuU2Nyb2xsVG9wICogLTMKK0ZBSUwgZG9j
dW1lbnQuYm9keS5zY3JvbGxUb3Agc2hvdWxkIGJlIDUyNS4gV2FzIDU2MC4KK1BBU1MgZG9jdW1l
bnQuYm9keS5zY3JvbGxMZWZ0IGlzIHdpbmRvdy5leHBlY3RlZFNjcm9sbExlZnQKKwoKUHJvcGVy
dHkgY2hhbmdlcyBvbjogTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0tbWFjL2Zhc3QvZXZl
bnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXktaW4tc2Nyb2xsaW5nLXBhZ2UtZXhwZWN0
ZWQudHh0Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX18KQWRkZWQ6IHN2bjplb2wtc3R5bGUKICAgKyBMRgoKSW5kZXg6IExh
eW91dFRlc3RzL3BsYXRmb3JtL21hYy9Ta2lwcGVkCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L3BsYXRmb3JtL21hYy9Ta2lwcGVkCShyZXZpc2lvbiA5ODM1NikKKysrIExheW91dFRlc3RzL3Bs
YXRmb3JtL21hYy9Ta2lwcGVkCSh3b3JraW5nIGNvcHkpCkBAIC00NTAsMyArNDUwLDE2IEBAIGh0
dHAvdGVzdHMvaGlzdG9yeS9iYWNrLXdpdGgtZnJhZ21lbnQtY2gKICMgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY4NTY2CiBmYXN0L2Nzcy93ZWJraXQtbWFzay1jcmFz
aC1maWVsZHNldC1sZWdlbmQuaHRtbAogZmFzdC9jc3Mvd2Via2l0LW1hc2stY3Jhc2gtdGFibGUu
aHRtbAorCisjIFNraXAgYmVjYXVzZSB0aGlzIHBsYXRmb3JtIGRvZXMgbm90IHN1cHBvcnQgYSBw
YWdpbmcgbW91c2Ugd2hlZWwgZXZlbnQKK2Zhc3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQt
cGFnaW5nLXgtaW4tbm9uLXNjcm9sbGluZy1kaXYuaHRtbAorZmFzdC9ldmVudHMvcGxhdGZvcm0t
d2hlZWxldmVudC1wYWdpbmcteC1pbi1ub24tc2Nyb2xsaW5nLXBhZ2UuaHRtbAorZmFzdC9ldmVu
dHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteC1pbi1zY3JvbGxpbmctZGl2Lmh0bWwKK2Zh
c3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXgtaW4tc2Nyb2xsaW5nLXBhZ2Uu
aHRtbAorZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteHktaW4tc2Nyb2xs
aW5nLWRpdi5odG1sCitmYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy14eS1p
bi1zY3JvbGxpbmctcGFnZS5odG1sCitmYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBh
Z2luZy15LWluLW5vbi1zY3JvbGxpbmctZGl2Lmh0bWwKK2Zhc3QvZXZlbnRzL3BsYXRmb3JtLXdo
ZWVsZXZlbnQtcGFnaW5nLXktaW4tbm9uLXNjcm9sbGluZy1wYWdlLmh0bWwKK2Zhc3QvZXZlbnRz
L3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXktaW4tc2Nyb2xsaW5nLWRpdi5odG1sCitmYXN0
L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy15LWluLXNjcm9sbGluZy1wYWdlLmh0
bWwKKwpJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1NraXBwZWQKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1NraXBwZWQJKHJldmlzaW9uIDk4MzU2KQorKysg
TGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1NraXBwZWQJKHdvcmtpbmcgY29weSkKQEAgLTE0Mjgs
MyArMTQyOCwxNiBAQCBmYXN0L2RvbS9NaWNyb0RhdGEKIAogIyBIaURQSSB0ZXN0cyByZXF1aXJl
IHRlc3QgaW5mcmFzdHJ1Y3R1cmUgZW5oYW5jZW1lbnRzCiBmYXN0L2hpZHBpCisKKyMgU2tpcCBi
ZWNhdXNlIHRoaXMgcGxhdGZvcm0gZG9lcyBub3Qgc3VwcG9ydCBhIHBhZ2luZyBtb3VzZSB3aGVl
bCBldmVudAorZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteC1pbi1ub24t
c2Nyb2xsaW5nLWRpdi5odG1sCitmYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2lu
Zy14LWluLW5vbi1zY3JvbGxpbmctcGFnZS5odG1sCitmYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVl
bGV2ZW50LXBhZ2luZy14LWluLXNjcm9sbGluZy1kaXYuaHRtbAorZmFzdC9ldmVudHMvcGxhdGZv
cm0td2hlZWxldmVudC1wYWdpbmcteC1pbi1zY3JvbGxpbmctcGFnZS5odG1sCitmYXN0L2V2ZW50
cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy14eS1pbi1zY3JvbGxpbmctZGl2Lmh0bWwKK2Zh
c3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXh5LWluLXNjcm9sbGluZy1wYWdl
Lmh0bWwKK2Zhc3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXktaW4tbm9uLXNj
cm9sbGluZy1kaXYuaHRtbAorZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmct
eS1pbi1ub24tc2Nyb2xsaW5nLXBhZ2UuaHRtbAorZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxl
dmVudC1wYWdpbmcteS1pbi1zY3JvbGxpbmctZGl2Lmh0bWwKK2Zhc3QvZXZlbnRzL3BsYXRmb3Jt
LXdoZWVsZXZlbnQtcGFnaW5nLXktaW4tc2Nyb2xsaW5nLXBhZ2UuaHRtbAorCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>113731</attachid>
            <date>2011-11-04 16:33:08 -0700</date>
            <delta_ts>2011-11-04 17:51:39 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-69865-20111104193307.patch</filename>
            <type>text/plain</type>
            <size>56328</size>
            <attacher name="Stephen Chenney">schenney</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDk5MzMyKQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMzIgQEAKKzIwMTEtMTEtMDMgIFN0ZXBoZW4g
Q2hlbm5leSAgPHNjaGVubmV5QGNocm9taXVtLm9yZz4KKworICAgICAgICBDcmFzaCBpbiBTY3Jv
bGxBbmltYXRvci5jcHAKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTY5ODY1CisKKyAgICAgICAgVGhlIGNvZGUgaW4gU2Nyb2xsQW5pbWF0b3IgYXNzdW1l
cyB0aGF0IGhvcml6b250YWwgcGVyLXBhZ2UgbW91c2UKKyAgICAgICAgd2hlZWwgZXZlbnRzIGNh
bm5vdCBoYXBwZW4sIHdoaWNoIGlzIG5vdCB0cnVlLiBUaGlzIHBhdGNoIGFkZHMgbGF5b3V0Cisg
ICAgICAgIHRlc3RzIGZvciBhbGwgcGFnaW5nIHdoZWVsIGV2ZW50IHNpdHVhdGlvbnMgYW5kIGZp
eGVzIHRoZSBicm9rZW4KKyAgICAgICAgaG9yaXpvbnRhbCBjYXNlLgorCisgICAgICAgIFJldmll
d2VkIGJ5IEFuZGVycyBDYXJsc3NvbgorCisgICAgICAgIFRlc3RzOiBmYXN0L2V2ZW50cy9wbGF0
Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy14LWluLW5vbi1zY3JvbGxpbmctZGl2Lmh0bWwKKyAgICAg
ICAgICAgICAgIGZhc3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXgtaW4tbm9u
LXNjcm9sbGluZy1wYWdlLmh0bWwKKyAgICAgICAgICAgICAgIGZhc3QvZXZlbnRzL3BsYXRmb3Jt
LXdoZWVsZXZlbnQtcGFnaW5nLXgtaW4tc2Nyb2xsaW5nLWRpdi5odG1sCisgICAgICAgICAgICAg
ICBmYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy14LWluLXNjcm9sbGluZy1w
YWdlLmh0bWwKKyAgICAgICAgICAgICAgIGZhc3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQt
cGFnaW5nLXh5LWluLXNjcm9sbGluZy1kaXYuaHRtbAorICAgICAgICAgICAgICAgZmFzdC9ldmVu
dHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteHktaW4tc2Nyb2xsaW5nLXBhZ2UuaHRtbAor
ICAgICAgICAgICAgICAgZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteS1p
bi1ub24tc2Nyb2xsaW5nLWRpdi5odG1sCisgICAgICAgICAgICAgICBmYXN0L2V2ZW50cy9wbGF0
Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy15LWluLW5vbi1zY3JvbGxpbmctcGFnZS5odG1sCisgICAg
ICAgICAgICAgICBmYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy15LWluLXNj
cm9sbGluZy1kaXYuaHRtbAorICAgICAgICAgICAgICAgZmFzdC9ldmVudHMvcGxhdGZvcm0td2hl
ZWxldmVudC1wYWdpbmcteS1pbi1zY3JvbGxpbmctcGFnZS5odG1sCisKKyAgICAgICAgKiBwbGF0
Zm9ybS9QbGF0Zm9ybVdoZWVsRXZlbnQuaDogTW9kaWZ5IHRoZSBjb21tZW50IHRvIHJlZmxlY3Qg
dGhlIG5ldworICAgICAgICByZWFsaXR5LgorICAgICAgICAqIHBsYXRmb3JtL1Njcm9sbEFuaW1h
dG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbEFuaW1hdG9yOjpoYW5kbGVXaGVlbEV2
ZW50KTogTW9kaWZpZWQgdGhlIGNvZGUgdG8gaGFuZGxlIHRoZQorICAgICAgICBob3Jpem9udGFs
IHBlci1wYWdlIHdoZWVsIGV2ZW50IGNhc2UuCisKIDIwMTEtMTEtMDQgIEZhZHkgU2FtdWVsICA8
ZnNhbXVlbEBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgQ1NTIEFzcGVjdCBSYXRpbyBQcm9wZXJ0
eSBQYXJzaW5nIFN0YWdlCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9QbGF0Zm9ybVdo
ZWVsRXZlbnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9QbGF0Zm9y
bVdoZWVsRXZlbnQuaAkocmV2aXNpb24gOTkzMzIpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9QbGF0Zm9ybVdoZWVsRXZlbnQuaAkod29ya2luZyBjb3B5KQpAQCAtNjcsNyArNjcsNyBAQCBu
YW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgLy8gVGhlIFNjcm9sbEJ5UGl4ZWxXaGVlbEV2ZW50IGlz
IGEgZmluZS1ncmFpbmVkIGV2ZW50IHRoYXQgc3BlY2lmaWVzIHRoZSBwcmVjaXNlIG51bWJlciBv
ZiBwaXhlbHMgdG8gc2Nyb2xsLiAgSXQgaXMgc2VudCBkaXJlY3RseSBieSBNYWNCb29rIHRvdWNo
cGFkcyBvbiBPUyBYLAogICAgIC8vIGFuZCBzeW50aGVzaXplZCBpbiBvdGhlciBjYXNlcyB3aGVy
ZSBwbGF0Zm9ybXMgZ2VuZXJhdGUgbGluZS1ieS1saW5lIHNjcm9sbGluZyBldmVudHMuCiAgICAg
Ly8gVGhlIFNjcm9sbEJ5UGFnZVdoZWVsRXZlbnQgaW5kaWNhdGVzIHRoYXQgdGhlIHdoZWVsIGV2
ZW50IHNob3VsZCBzY3JvbGwgYW4gZW50aXJlIHBhZ2UuICBJbiB0aGlzIGNhc2UgV2ViQ29yZSdz
IGJ1aWx0IGluIHBhZ2luZyBiZWhhdmlvciBpcyB1c2VkIHRvIHBhZ2UKLSAgICAvLyB1cCBhbmQg
ZG93biAoeW91IGdldCB0aGUgc2FtZSBiZWhhdmlvciBhcyBpZiB0aGUgdXNlciB3YXMgY2xpY2tp
bmcgaW4gYSBzY3JvbGxiYXIgdHJhY2sgdG8gcGFnZSB1cCBvciBwYWdlIGRvd24pLiAgUGFnZSBz
Y3JvbGxpbmcgb25seSB3b3JrcyBpbiB0aGUgdmVydGljYWwgZGlyZWN0aW9uLgorICAgIC8vIHVw
IGFuZCBkb3duICh5b3UgZ2V0IHRoZSBzYW1lIGJlaGF2aW9yIGFzIGlmIHRoZSB1c2VyIHdhcyBj
bGlja2luZyBpbiBhIHNjcm9sbGJhciB0cmFjayB0byBwYWdlIHVwIG9yIHBhZ2UgZG93bikuCiAg
ICAgZW51bSBQbGF0Zm9ybVdoZWVsRXZlbnRHcmFudWxhcml0eSB7CiAgICAgICAgIFNjcm9sbEJ5
UGFnZVdoZWVsRXZlbnQsCiAgICAgICAgIFNjcm9sbEJ5UGl4ZWxXaGVlbEV2ZW50CkluZGV4OiBT
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxBbmltYXRvci5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsQW5pbWF0b3IuY3BwCShyZXZpc2lvbiA5OTMz
MikKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbEFuaW1hdG9yLmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtMTAzLDE4ICsxMDMsMjUgQEAgYm9vbCBTY3JvbGxBbmltYXRvcjo6aGFuZGxl
V2hlZWxFdmVudChjbwogICAgICAgICB8fCAoZGVsdGFZIDwgMCAmJiBtYXhGb3J3YXJkU2Nyb2xs
RGVsdGEuaGVpZ2h0KCkgPiAwKQogICAgICAgICB8fCAoZGVsdGFZID4gMCAmJiBtYXhCYWNrd2Fy
ZFNjcm9sbERlbHRhLmhlaWdodCgpID4gMCkpIHsKICAgICAgICAgaGFuZGxlZCA9IHRydWU7Ci0g
ICAgICAgIGlmIChlLmdyYW51bGFyaXR5KCkgPT0gU2Nyb2xsQnlQYWdlV2hlZWxFdmVudCkgewot
ICAgICAgICAgICAgQVNTRVJUKCFlLmRlbHRhWCgpKTsKLSAgICAgICAgICAgIGJvb2wgbmVnYXRp
dmUgPSBkZWx0YVkgPCAwOwotICAgICAgICAgICAgZGVsdGFZID0gbWF4KG1heChzdGF0aWNfY2Fz
dDxmbG9hdD4obV9zY3JvbGxhYmxlQXJlYS0+dmlzaWJsZUhlaWdodCgpKSAqIFNjcm9sbGJhcjo6
bWluRnJhY3Rpb25Ub1N0ZXBXaGVuUGFnaW5nKCksIHN0YXRpY19jYXN0PGZsb2F0PihtX3Njcm9s
bGFibGVBcmVhLT52aXNpYmxlSGVpZ2h0KCkgLSBTY3JvbGxiYXI6Om1heE92ZXJsYXBCZXR3ZWVu
UGFnZXMoKSkpLCAxLjBmKTsKLSAgICAgICAgICAgIGlmIChuZWdhdGl2ZSkKLSAgICAgICAgICAg
ICAgICBkZWx0YVkgPSAtZGVsdGFZOworICAgICAgICBpZiAoZGVsdGFZKSB7CisgICAgICAgICAg
ICBpZiAoZS5ncmFudWxhcml0eSgpID09IFNjcm9sbEJ5UGFnZVdoZWVsRXZlbnQpIHsKKyAgICAg
ICAgICAgICAgICBib29sIG5lZ2F0aXZlID0gZGVsdGFZIDwgMDsKKyAgICAgICAgICAgICAgICBk
ZWx0YVkgPSBtYXgobWF4KHN0YXRpY19jYXN0PGZsb2F0PihtX3Njcm9sbGFibGVBcmVhLT52aXNp
YmxlSGVpZ2h0KCkpICogU2Nyb2xsYmFyOjptaW5GcmFjdGlvblRvU3RlcFdoZW5QYWdpbmcoKSwg
c3RhdGljX2Nhc3Q8ZmxvYXQ+KG1fc2Nyb2xsYWJsZUFyZWEtPnZpc2libGVIZWlnaHQoKSAtIFNj
cm9sbGJhcjo6bWF4T3ZlcmxhcEJldHdlZW5QYWdlcygpKSksIDEuMGYpOworICAgICAgICAgICAg
ICAgIGlmIChuZWdhdGl2ZSkKKyAgICAgICAgICAgICAgICAgICAgZGVsdGFZID0gLWRlbHRhWTsK
KyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIHNjcm9sbChWZXJ0aWNhbFNjcm9sbGJhciwgU2Ny
b2xsQnlQaXhlbCwgdmVydGljYWxTY3JvbGxiYXItPnBpeGVsU3RlcCgpLCAtZGVsdGFZKTsKICAg
ICAgICAgfQogCi0gICAgICAgIGlmIChkZWx0YVkpCi0gICAgICAgICAgICBzY3JvbGwoVmVydGlj
YWxTY3JvbGxiYXIsIFNjcm9sbEJ5UGl4ZWwsIHZlcnRpY2FsU2Nyb2xsYmFyLT5waXhlbFN0ZXAo
KSwgLWRlbHRhWSk7Ci0gICAgICAgIGlmIChkZWx0YVgpCisgICAgICAgIGlmIChkZWx0YVgpIHsK
KyAgICAgICAgICAgIGlmIChlLmdyYW51bGFyaXR5KCkgPT0gU2Nyb2xsQnlQYWdlV2hlZWxFdmVu
dCkgeworICAgICAgICAgICAgICAgIGJvb2wgbmVnYXRpdmUgPSBkZWx0YVggPCAwOworICAgICAg
ICAgICAgICAgIGRlbHRhWCA9IG1heChtYXgoc3RhdGljX2Nhc3Q8ZmxvYXQ+KG1fc2Nyb2xsYWJs
ZUFyZWEtPnZpc2libGVXaWR0aCgpKSAqIFNjcm9sbGJhcjo6bWluRnJhY3Rpb25Ub1N0ZXBXaGVu
UGFnaW5nKCksIHN0YXRpY19jYXN0PGZsb2F0PihtX3Njcm9sbGFibGVBcmVhLT52aXNpYmxlV2lk
dGgoKSAtIFNjcm9sbGJhcjo6bWF4T3ZlcmxhcEJldHdlZW5QYWdlcygpKSksIDEuMGYpOworICAg
ICAgICAgICAgICAgIGlmIChuZWdhdGl2ZSkKKyAgICAgICAgICAgICAgICAgICAgZGVsdGFYID0g
LWRlbHRhWDsKKyAgICAgICAgICAgIH0KICAgICAgICAgICAgIHNjcm9sbChIb3Jpem9udGFsU2Ny
b2xsYmFyLCBTY3JvbGxCeVBpeGVsLCBob3Jpem9udGFsU2Nyb2xsYmFyLT5waXhlbFN0ZXAoKSwg
LWRlbHRhWCk7CisgICAgICAgIH0KICAgICB9CiAKICAgICByZXR1cm4gaGFuZGxlZDsKSW5kZXg6
IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJldmlzaW9u
IDk5MzMyKQorKysgVG9vbHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTkg
QEAKKzIwMTEtMTEtMDQgIFN0ZXBoZW4gQ2hlbm5leSAgPHNjaGVubmV5QGNocm9taXVtLm9yZz4K
KworICAgICAgICBDcmFzaCBpbiBTY3JvbGxBbmltYXRvci5jcHAKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY5ODY1CisKKyAgICAgICAgVGhlIGNvZGUg
aW4gU2Nyb2xsQW5pbWF0b3IgYXNzdW1lcyB0aGF0IGhvcml6b250YWwgcGVyLXBhZ2UgbW91c2UK
KyAgICAgICAgd2hlZWwgZXZlbnRzIGNhbm5vdCBoYXBwZW4sIHdoaWNoIGlzIG5vdCB0cnVlLiBU
aGlzIHBhdGNoIGFkZHMgbGF5b3V0CisgICAgICAgIHRlc3RzIGZvciBhbGwgcGFnaW5nIHdoZWVs
IGV2ZW50IHNpdHVhdGlvbnMgYW5kIGZpeGVzIHRoZSBicm9rZW4KKyAgICAgICAgaG9yaXpvbnRh
bCBjYXNlLgorCisgICAgICAgIFJldmlld2VkIGJ5IEFuZGVycyBDYXJsc3NvbgorCisgICAgICAg
ICogRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vRXZlbnRTZW5kZXIuY3BwOgorICAgICAgICAoRXZl
bnRTZW5kZXI6OmhhbmRsZU1vdXNlV2hlZWwpOiBBZGRlZCB0aGUgYWJpbGl0eSB0byBzcGVjaWZ5
IHRoYXQgYQorICAgICAgICBtb3VzZSB3aGVlbCBldmVudCBzaG91bGQgYmUgcGFnaW5nLgorCiAy
MDExLTExLTA0ICBBZGFtIFJvYmVuICA8YXJvYmVuQGFwcGxlLmNvbT4KIAogICAgICAgICBSZW1v
dmUgTGVvcGFyZC1zcGVjaWZpYyBjb2RlIGZyb20gYnVpbGQud2Via2l0Lm9yZwpJbmRleDogVG9v
bHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vRXZlbnRTZW5kZXIuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFRvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL0V2ZW50U2VuZGVyLmNwcAkocmV2aXNpb24g
OTkzMzIpCisrKyBUb29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9FdmVudFNlbmRlci5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTk4Niw2ICs5ODYsMTAgQEAgdm9pZCBFdmVudFNlbmRlcjo6aGFu
ZGxlTW91c2VXaGVlbChjb25zdAogCiAgICAgaW50IGhvcml6b250YWwgPSBhcmd1bWVudHNbMF0u
dG9JbnQzMigpOwogICAgIGludCB2ZXJ0aWNhbCA9IGFyZ3VtZW50c1sxXS50b0ludDMyKCk7Cisg
ICAgaW50IHBhZ2VkID0gZmFsc2U7CisKKyAgICBpZiAoYXJndW1lbnRzLnNpemUoKSA+IDIgJiYg
YXJndW1lbnRzWzJdLmlzQm9vbCgpKQorICAgICAgICBwYWdlZCA9IGFyZ3VtZW50c1syXS50b0Jv
b2xlYW4oKTsKIAogICAgIFdlYk1vdXNlV2hlZWxFdmVudCBldmVudDsKICAgICBpbml0TW91c2VF
dmVudChXZWJJbnB1dEV2ZW50OjpNb3VzZVdoZWVsLCBwcmVzc2VkQnV0dG9uLCBsYXN0TW91c2VQ
b3MsICZldmVudCk7CkBAIC05OTMsNiArOTk3LDcgQEAgdm9pZCBFdmVudFNlbmRlcjo6aGFuZGxl
TW91c2VXaGVlbChjb25zdAogICAgIGV2ZW50LndoZWVsVGlja3NZID0gc3RhdGljX2Nhc3Q8Zmxv
YXQ+KHZlcnRpY2FsKTsKICAgICBldmVudC5kZWx0YVggPSBldmVudC53aGVlbFRpY2tzWDsKICAg
ICBldmVudC5kZWx0YVkgPSBldmVudC53aGVlbFRpY2tzWTsKKyAgICBldmVudC5zY3JvbGxCeVBh
Z2UgPSBwYWdlZDsKICAgICBpZiAoY29udGludW91cykgewogICAgICAgICBldmVudC53aGVlbFRp
Y2tzWCAvPSBzY3JvbGxiYXJQaXhlbHNQZXJUaWNrOwogICAgICAgICBldmVudC53aGVlbFRpY2tz
WSAvPSBzY3JvbGxiYXJQaXhlbHNQZXJUaWNrOwpJbmRleDogTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL0NoYW5nZUxvZwkocmV2aXNpb24gOTkzMzIpCisr
KyBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSw0MyBAQAor
MjAxMS0xMS0wNCAgU3RlcGhlbiBDaGVubmV5ICA8c2NoZW5uZXlAY2hyb21pdW0ub3JnPgorCisg
ICAgICAgIENyYXNoIGluIFNjcm9sbEFuaW1hdG9yLmNwcAorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Njk4NjUKKworICAgICAgICBUaGUgY29kZSBpbiBT
Y3JvbGxBbmltYXRvciBhc3N1bWVzIHRoYXQgaG9yaXpvbnRhbCBwZXItcGFnZSBtb3VzZQorICAg
ICAgICB3aGVlbCBldmVudHMgY2Fubm90IGhhcHBlbiwgd2hpY2ggaXMgbm90IHRydWUuIFRoaXMg
cGF0Y2ggYWRkcyBsYXlvdXQKKyAgICAgICAgdGVzdHMgZm9yIGFsbCBwYWdpbmcgd2hlZWwgZXZl
bnQgc2l0dWF0aW9ucyBhbmQgZml4ZXMgdGhlIGJyb2tlbgorICAgICAgICBob3Jpem9udGFsIGNh
c2UuCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgQW5kZXJzIENhcmxzc29uIAorCisgICAgICAgICog
ZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteC1pbi1ub24tc2Nyb2xsaW5n
LWRpdi1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZXZlbnRzL3BsYXRmb3Jt
LXdoZWVsZXZlbnQtcGFnaW5nLXgtaW4tbm9uLXNjcm9sbGluZy1kaXYuaHRtbDogQWRkZWQuCisg
ICAgICAgICogZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteC1pbi1ub24t
c2Nyb2xsaW5nLXBhZ2UtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2V2ZW50
cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy14LWluLW5vbi1zY3JvbGxpbmctcGFnZS5odG1s
OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2lu
Zy14LWluLXNjcm9sbGluZy1kaXYtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0
L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy14LWluLXNjcm9sbGluZy1kaXYuaHRt
bDogQWRkZWQuCisgICAgICAgICogZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdp
bmcteC1pbi1zY3JvbGxpbmctcGFnZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZh
c3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXgtaW4tc2Nyb2xsaW5nLXBhZ2Uu
aHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1w
YWdpbmcteHktaW4tc2Nyb2xsaW5nLWRpdi1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAq
IGZhc3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXh5LWluLXNjcm9sbGluZy1k
aXYuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVu
dC1wYWdpbmcteHktaW4tc2Nyb2xsaW5nLXBhZ2UtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAg
ICAgKiBmYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy14eS1pbi1zY3JvbGxp
bmctcGFnZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVl
bGV2ZW50LXBhZ2luZy15LWluLW5vbi1zY3JvbGxpbmctZGl2LWV4cGVjdGVkLnR4dDogQWRkZWQu
CisgICAgICAgICogZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteS1pbi1u
b24tc2Nyb2xsaW5nLWRpdi5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2V2ZW50cy9wbGF0
Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy15LWluLW5vbi1zY3JvbGxpbmctcGFnZS1leHBlY3RlZC50
eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFn
aW5nLXktaW4tbm9uLXNjcm9sbGluZy1wYWdlLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3Qv
ZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXktaW4tc2Nyb2xsaW5nLWRpdi1leHBl
Y3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZl
bnQtcGFnaW5nLXktaW4tc2Nyb2xsaW5nLWRpdi5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0
L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy15LWluLXNjcm9sbGluZy1wYWdlLWV4
cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxl
dmVudC1wYWdpbmcteS1pbi1zY3JvbGxpbmctcGFnZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBw
bGF0Zm9ybS9jaHJvbWl1bS1tYWMvZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdp
bmcteC1pbi1zY3JvbGxpbmctcGFnZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHBs
YXRmb3JtL2Nocm9taXVtLW1hYy9mYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2lu
Zy14eS1pbi1zY3JvbGxpbmctcGFnZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHBs
YXRmb3JtL2Nocm9taXVtLW1hYy9mYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2lu
Zy15LWluLXNjcm9sbGluZy1wYWdlLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogcGxh
dGZvcm0vbWFjL1NraXBwZWQ6IEFkZGVkIHNraXAgZm9yIHRoZSBuZXcgdGVzdHMsIGFzIHRoZSBw
bGF0Zm9ybQorICAgICAgICBkb2VzIG5vdCBzdXBwb3J0IGl0LgorICAgICAgICAqIHBsYXRmb3Jt
L3dpbi9Ta2lwcGVkOiBBZGRlZCBza2lwIGZvciB0aGUgbmV3IHRlc3RzLCBhcyB0aGUgcGxhdGZv
cm0KKyAgICAgICAgZG9lcyBub3Qgc3VwcG9ydCBpdC4KKwogMjAxMS0xMS0wNCAgRmFkeSBTYW11
ZWwgIDxmc2FtdWVsQGNocm9taXVtLm9yZz4KIAogICAgICAgICBDU1MgQXNwZWN0IFJhdGlvIFBy
b3BlcnR5IFBhcnNpbmcgU3RhZ2UKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3BsYXRm
b3JtLXdoZWVsZXZlbnQtcGFnaW5nLXgtaW4tbm9uLXNjcm9sbGluZy1kaXYtZXhwZWN0ZWQudHh0
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZl
bnQtcGFnaW5nLXgtaW4tbm9uLXNjcm9sbGluZy1kaXYtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAw
KQorKysgTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmct
eC1pbi1ub24tc2Nyb2xsaW5nLWRpdi1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAg
KzEsNiBAQAorUEFTUyBldmVudC53aGVlbERlbHRhWSBpcyAwCitQQVNTIGV2ZW50LndoZWVsRGVs
dGFYIGlzIHdpbmRvdy5naXZlblNjcm9sbExlZnQqLTMKK1BBU1MgZXZlbnQud2hlZWxEZWx0YSBp
cyB3aW5kb3cuZ2l2ZW5TY3JvbGxMZWZ0Ki0zCitQQVNTIGRpdi5zY3JvbGxUb3AgaXMgd2luZG93
LmV4cGVjdGVkU2Nyb2xsVG9wCitQQVNTIGRpdi5zY3JvbGxMZWZ0IGlzIHdpbmRvdy5leHBlY3Rl
ZFNjcm9sbExlZnQKKwoKUHJvcGVydHkgY2hhbmdlcyBvbjogTGF5b3V0VGVzdHMvZmFzdC9ldmVu
dHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteC1pbi1ub24tc2Nyb2xsaW5nLWRpdi1leHBl
Y3RlZC50eHQKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fXwpBZGRlZDogc3ZuOmVvbC1zdHlsZQogICArIExGCgpJbmRleDog
TGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteC1pbi1u
b24tc2Nyb2xsaW5nLWRpdi5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZXZl
bnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXgtaW4tbm9uLXNjcm9sbGluZy1kaXYuaHRt
bAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVs
ZXZlbnQtcGFnaW5nLXgtaW4tbm9uLXNjcm9sbGluZy1kaXYuaHRtbAkocmV2aXNpb24gMCkKQEAg
LTAsMCArMSw2MSBAQAorPGh0bWw+CisgICAgPGhlYWQ+CisgICAgICAgIDxsaW5rIHJlbD0ic3R5
bGVzaGVldCIgaHJlZj0iLi4vanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKyAgICAg
ICAgPHNjcmlwdCBzcmM9Ii4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+
CisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICB2YXIgZ2l2ZW5TY3JvbGxUb3AgPSAwOwor
ICAgICAgICAgICAgdmFyIGdpdmVuU2Nyb2xsTGVmdCA9IDI7CisgICAgICAgICAgICB2YXIgZXhw
ZWN0ZWRTY3JvbGxUb3AgPSAwOworICAgICAgICAgICAgdmFyIGV4cGVjdGVkU2Nyb2xsTGVmdCA9
IDA7CisgICAgICAgICAgICB2YXIgZXZlbnQ7CisgICAgICAgICAgICB2YXIgZGl2OworCisgICAg
ICAgICAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQorICAgICAgICAgICAgICAg
IGxheW91dFRlc3RDb250cm9sbGVyLndhaXRVbnRpbERvbmUoKTsKKworICAgICAgICAgICAgZnVu
Y3Rpb24gZGlzcGF0Y2hXaGVlbEV2ZW50KCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAg
ICB2YXIgb3ZlcmZsb3dFbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm92ZXJmbG93
Iik7CisgICAgICAgICAgICAgICAgaWYgKG92ZXJmbG93RWxlbWVudCkKKyAgICAgICAgICAgICAg
ICAgICAgb3ZlcmZsb3dFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNld2hlZWwiLCBtb3Vz
ZXdoZWVsSGFuZGxlciwgZmFsc2UpOworCisgICAgICAgICAgICAgICAgaWYgKHdpbmRvdy5ldmVu
dFNlbmRlcikgeworICAgICAgICAgICAgICAgICAgICBldmVudFNlbmRlci5tb3VzZU1vdmVUbygx
MDAsIDExMCk7CisgICAgICAgICAgICAgICAgICAgIGV2ZW50U2VuZGVyLmNvbnRpbnVvdXNNb3Vz
ZVNjcm9sbEJ5KC13aW5kb3cuZ2l2ZW5TY3JvbGxMZWZ0LCAtd2luZG93LmdpdmVuU2Nyb2xsVG9w
LCB0cnVlKTsKKyAgICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAgICBzZXRUaW1lb3V0
KCdjaGVja09mZnNldHMoKTsnLCAxMDApOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICBm
dW5jdGlvbiBjaGVja09mZnNldHMoKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGRp
diA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJvdmVyZmxvdyIpOworICAgICAgICAgICAgICAg
IHNob3VsZEJlKCJkaXYuc2Nyb2xsVG9wIiwgIndpbmRvdy5leHBlY3RlZFNjcm9sbFRvcCIpOwor
ICAgICAgICAgICAgICAgIHNob3VsZEJlKCJkaXYuc2Nyb2xsTGVmdCIsICJ3aW5kb3cuZXhwZWN0
ZWRTY3JvbGxMZWZ0Iik7CisKKyAgICAgICAgICAgICAgICBpZiAod2luZG93LmxheW91dFRlc3RD
b250cm9sbGVyKQorICAgICAgICAgICAgICAgICAgICB3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xs
ZXIubm90aWZ5RG9uZSgpOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICBmdW5jdGlvbiBt
b3VzZXdoZWVsSGFuZGxlcihlKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGV2ZW50
ID0gZTsKKyAgICAgICAgICAgICAgICBzaG91bGRCZSgiZXZlbnQud2hlZWxEZWx0YVkiLCAiMCIp
OworICAgICAgICAgICAgICAgIHNob3VsZEJlKCJldmVudC53aGVlbERlbHRhWCIsICJ3aW5kb3cu
Z2l2ZW5TY3JvbGxMZWZ0Ki0zIik7CisKKyAgICAgICAgICAgICAgICBpZiAoZS53aGVlbERlbHRh
WSkKKyAgICAgICAgICAgICAgICAgICAgc2hvdWxkQmUoImV2ZW50LndoZWVsRGVsdGEiLCAiMCIp
OworICAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgc2hvdWxkQmUoImV2
ZW50LndoZWVsRGVsdGEiLCAid2luZG93LmdpdmVuU2Nyb2xsTGVmdCotMyIpOworICAgICAgICAg
ICAgfQorICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisKKyAgICA8Ym9keSBzdHlsZT0i
bWFyZ2luOjAiIG9ubG9hZD0ic2V0VGltZW91dCgnZGlzcGF0Y2hXaGVlbEV2ZW50KCk7JywgMTAw
KSI+CisgICAgICAgIDxkaXYgaWQ9Im92ZXJmbG93IiBzdHlsZT0iYm9yZGVyOjJweCBzb2xpZCBi
bGFjaztvdmVyZmxvdzphdXRvO2hlaWdodDoyMDBweDt3aWR0aDoyMDBweDsiPgorICAgICAgICAg
IDxkaXYgc3R5bGU9ImJvcmRlcjowcHg7YmFja2dyb3VuZC1jb2xvcjpyZWQ7aGVpZ2h0OjMwMHB4
O3dpZHRoOjE4NXB4OyI+PC9kaXY+CisgICAgICAgICAgPGRpdiBzdHlsZT0iYm9yZGVyOjBweDti
YWNrZ3JvdW5kLWNvbG9yOmdyZWVuO2hlaWdodDozMDBweDt3aWR0aDoxODVweDsiPjwvZGl2Pgor
ICAgICAgICA8L2Rpdj4KKyAgICAgICAgPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+CisgICAgPC9i
b2R5PgorPC9odG1sPgoKUHJvcGVydHkgY2hhbmdlcyBvbjogTGF5b3V0VGVzdHMvZmFzdC9ldmVu
dHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteC1pbi1ub24tc2Nyb2xsaW5nLWRpdi5odG1s
Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX18KQWRkZWQ6IHN2bjpleGVjdXRhYmxlCiAgICsgKgpBZGRlZDogc3ZuOmVvbC1z
dHlsZQogICArIExGCgpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcGxhdGZvcm0td2hl
ZWxldmVudC1wYWdpbmcteC1pbi1ub24tc2Nyb2xsaW5nLXBhZ2UtZXhwZWN0ZWQudHh0Cj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFn
aW5nLXgtaW4tbm9uLXNjcm9sbGluZy1wYWdlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysr
IExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXgtaW4t
bm9uLXNjcm9sbGluZy1wYWdlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw2
IEBACitQQVNTIGV2ZW50LndoZWVsRGVsdGFZIGlzIDAKK1BBU1MgZXZlbnQud2hlZWxEZWx0YVgg
aXMgd2luZG93LmdpdmVuU2Nyb2xsTGVmdCAqIC0zCitQQVNTIGV2ZW50LndoZWVsRGVsdGEgaXMg
d2luZG93LmdpdmVuU2Nyb2xsTGVmdCAqIC0zCitQQVNTIGRvY3VtZW50LmJvZHkuc2Nyb2xsVG9w
IGlzIHdpbmRvdy5leHBlY3RlZFNjcm9sbFRvcAorUEFTUyBkb2N1bWVudC5ib2R5LnNjcm9sbExl
ZnQgaXMgd2luZG93LmV4cGVjdGVkU2Nyb2xsTGVmdAorCgpQcm9wZXJ0eSBjaGFuZ2VzIG9uOiBM
YXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy14LWluLW5v
bi1zY3JvbGxpbmctcGFnZS1leHBlY3RlZC50eHQKX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpBZGRlZDogc3ZuOmVvbC1z
dHlsZQogICArIExGCgpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcGxhdGZvcm0td2hl
ZWxldmVudC1wYWdpbmcteC1pbi1ub24tc2Nyb2xsaW5nLXBhZ2UuaHRtbAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy14LWlu
LW5vbi1zY3JvbGxpbmctcGFnZS5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZmFz
dC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteC1pbi1ub24tc2Nyb2xsaW5nLXBh
Z2UuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw2MiBAQAorPGh0bWw+CisgICAgPGhlYWQ+
CisgICAgICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vanMvcmVzb3VyY2VzL2pz
LXRlc3Qtc3R5bGUuY3NzIj4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii4uL2pzL3Jlc291cmNlcy9q
cy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICB2
YXIgZ2l2ZW5TY3JvbGxUb3AgPSAwOworICAgICAgICAgICAgdmFyIGdpdmVuU2Nyb2xsTGVmdCA9
IDI7CisgICAgICAgICAgICB2YXIgZXhwZWN0ZWRTY3JvbGxUb3AgPSAwOworICAgICAgICAgICAg
dmFyIGV4cGVjdGVkU2Nyb2xsTGVmdCA9IDA7CisgICAgICAgICAgICB2YXIgZXZlbnQ7CisgICAg
ICAgICAgICB2YXIgZGl2OworCisgICAgICAgICAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250
cm9sbGVyKQorICAgICAgICAgICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLndhaXRVbnRpbERv
bmUoKTsKKworICAgICAgICAgICAgZnVuY3Rpb24gZGlzcGF0Y2hXaGVlbEV2ZW50KCkKKyAgICAg
ICAgICAgIHsKKyAgICAgICAgICAgICAgICBkb2N1bWVudC5ib2R5LmFkZEV2ZW50TGlzdGVuZXIo
Im1vdXNld2hlZWwiLCBtb3VzZXdoZWVsSGFuZGxlciwgZmFsc2UpOworCisgICAgICAgICAgICAg
ICAgaWYgKHdpbmRvdy5ldmVudFNlbmRlcikgeworICAgICAgICAgICAgICAgICAgICBldmVudFNl
bmRlci5tb3VzZU1vdmVUbygxMDAsIDExMCk7CisgICAgICAgICAgICAgICAgICAgIGV2ZW50U2Vu
ZGVyLmNvbnRpbnVvdXNNb3VzZVNjcm9sbEJ5KC13aW5kb3cuZ2l2ZW5TY3JvbGxMZWZ0LCAtd2lu
ZG93LmdpdmVuU2Nyb2xsVG9wLCB0cnVlKTsKKyAgICAgICAgICAgICAgICB9CisKKyAgICAgICAg
ICAgICAgICBzZXRUaW1lb3V0KCdjaGVja09mZnNldHMoKTsnLCAxMDApOworICAgICAgICAgICAg
fQorCisgICAgICAgICAgICBmdW5jdGlvbiBjaGVja09mZnNldHMoKQorICAgICAgICAgICAgewor
ICAgICAgICAgICAgICAgIHNob3VsZEJlKCJkb2N1bWVudC5ib2R5LnNjcm9sbFRvcCIsICJ3aW5k
b3cuZXhwZWN0ZWRTY3JvbGxUb3AiKTsKKyAgICAgICAgICAgICAgICBzaG91bGRCZSgiZG9jdW1l
bnQuYm9keS5zY3JvbGxMZWZ0IiwgIndpbmRvdy5leHBlY3RlZFNjcm9sbExlZnQiKTsKKworICAg
ICAgICAgICAgICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAgICAgICAg
ICAgICAgICAgIHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlci5ub3RpZnlEb25lKCk7CisgICAg
ICAgICAgICB9CisKKyAgICAgICAgICAgIGZ1bmN0aW9uIG1vdXNld2hlZWxIYW5kbGVyKGUpCisg
ICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgZXZlbnQgPSBlOworCQkJCXNob3VsZEJlKCJl
dmVudC53aGVlbERlbHRhWSIsICIwIik7CisJCQkJc2hvdWxkQmUoImV2ZW50LndoZWVsRGVsdGFY
IiwgIndpbmRvdy5naXZlblNjcm9sbExlZnQgKiAtMyIpOworCisJCQkJaWYgKGUud2hlZWxEZWx0
YVkpCisJCQkJCXNob3VsZEJlKCJldmVudC53aGVlbERlbHRhIiwgIjAiKTsKKwkJCQllbHNlCisJ
CQkJCXNob3VsZEJlKCJldmVudC53aGVlbERlbHRhIiwgIndpbmRvdy5naXZlblNjcm9sbExlZnQg
KiAtMyIpOworICAgICAgICAgICB9CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvaGVhZD4KKwor
ICAgIDxib2R5IHN0eWxlPSJtYXJnaW46MCIgb25sb2FkPSJzZXRUaW1lb3V0KCdkaXNwYXRjaFdo
ZWVsRXZlbnQoKTsnLCAxMDApIj4KKyAgICAgICAgPGRpdiBzdHlsZT0iaGVpZ2h0OjkwMHB4O3dp
ZHRoOjQwMHB4Ij4KKyAgICAgICAgICA8ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnJlZDto
ZWlnaHQ6OTAwcHg7d2lkdGg6MjAwcHg7cG9zaXRpb246cmVsYXRpdmU7bGVmdDowcHg7dG9wOjBw
eCI+PC9kaXY+CisgICAgICAgICAgPGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjpncmVlbjto
ZWlnaHQ6OTAwcHg7d2lkdGg6MjAwcHg7cG9zaXRpb246cmVsYXRpdmU7bGVmdDoyMDBweDt0b3A6
LTkwMHB4Ij48L2Rpdj4KKyAgICAgICAgPC9kaXY+CisgICAgICAgIDxkaXYgc3R5bGU9ImhlaWdo
dDo5MDBweDt3aWR0aDo0MDBweCI+CisgICAgICAgICAgPGRpdiBzdHlsZT0iYmFja2dyb3VuZC1j
b2xvcjpibHVlO2hlaWdodDo5MDBweDt3aWR0aDoyMDBweDtwb3NpdGlvbjpyZWxhdGl2ZTtsZWZ0
OjBweDt0b3A6MHB4Ij48L2Rpdj4KKyAgICAgICAgICA8ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNv
bG9yOnllbGxvdztoZWlnaHQ6OTAwcHg7d2lkdGg6MjAwcHg7cG9zaXRpb246cmVsYXRpdmU7bGVm
dDoyMDBweDt0b3A6LTkwMHB4Ij48L2Rpdj4KKyAgICAgICAgPC9kaXY+CisgICAgICAgIDxkaXYg
aWQ9ImNvbnNvbGUiPjwvZGl2PgorICAgIDwvYm9keT4KKzwvaHRtbD4KClByb3BlcnR5IGNoYW5n
ZXMgb246IExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5n
LXgtaW4tbm9uLXNjcm9sbGluZy1wYWdlLmh0bWwKX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpBZGRlZDogc3ZuOmVvbC1z
dHlsZQogICArIExGCgpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcGxhdGZvcm0td2hl
ZWxldmVudC1wYWdpbmcteC1pbi1zY3JvbGxpbmctZGl2LWV4cGVjdGVkLnR4dAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy14
LWluLXNjcm9sbGluZy1kaXYtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVz
dHMvZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteC1pbi1zY3JvbGxpbmct
ZGl2LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw2IEBACitQQVNTIGV2ZW50
LndoZWVsRGVsdGFZIGlzIDAKK1BBU1MgZXZlbnQud2hlZWxEZWx0YVggaXMgd2luZG93LmdpdmVu
U2Nyb2xsTGVmdCAqIC0zCitQQVNTIGV2ZW50LndoZWVsRGVsdGEgaXMgd2luZG93LmdpdmVuU2Ny
b2xsTGVmdCAqIC0zCitQQVNTIGRpdi5zY3JvbGxUb3AgaXMgd2luZG93LmV4cGVjdGVkU2Nyb2xs
VG9wCitQQVNTIGRpdi5zY3JvbGxMZWZ0IGlzIHdpbmRvdy5leHBlY3RlZFNjcm9sbExlZnQKKwoK
UHJvcGVydHkgY2hhbmdlcyBvbjogTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcGxhdGZvcm0td2hl
ZWxldmVudC1wYWdpbmcteC1pbi1zY3JvbGxpbmctZGl2LWV4cGVjdGVkLnR4dApfX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
CkFkZGVkOiBzdm46ZW9sLXN0eWxlCiAgICsgTEYKCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2V2
ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy14LWluLXNjcm9sbGluZy1kaXYuaHRtbAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50
LXBhZ2luZy14LWluLXNjcm9sbGluZy1kaXYuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRl
c3RzL2Zhc3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXgtaW4tc2Nyb2xsaW5n
LWRpdi5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDcxIEBACis8aHRtbD4KKyAgICA8aGVh
ZD4KKyAgICAgICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi9qcy9yZXNvdXJjZXMv
anMtdGVzdC1zdHlsZS5jc3MiPgorICAgICAgICA8c2NyaXB0IHNyYz0iLi4vanMvcmVzb3VyY2Vz
L2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAg
IHZhciBnaXZlblNjcm9sbFRvcCA9IDA7CisgICAgICAgICAgICB2YXIgZ2l2ZW5TY3JvbGxMZWZ0
ID0gMjsKKyAgICAgICAgICAgIHZhciBleHBlY3RlZFNjcm9sbFRvcCA9IDA7CisgICAgICAgICAg
ICB2YXIgZXhwZWN0ZWRTY3JvbGxMZWZ0ID0gMzIyOworICAgICAgICAgICAgdmFyIGV2ZW50Owor
ICAgICAgICAgICAgdmFyIGRpdjsKKworICAgICAgICAgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0
Q29udHJvbGxlcikKKyAgICAgICAgICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci53YWl0VW50
aWxEb25lKCk7CisKKyAgICAgICAgICAgIGZ1bmN0aW9uIGRpc3BhdGNoV2hlZWxFdmVudCgpCisg
ICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgdmFyIG92ZXJmbG93RWxlbWVudCA9IGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJvdmVyZmxvdyIpOworICAgICAgICAgICAgICAgIGlmIChvdmVy
Zmxvd0VsZW1lbnQpCisgICAgICAgICAgICAgICAgICAgIG92ZXJmbG93RWxlbWVudC5hZGRFdmVu
dExpc3RlbmVyKCJtb3VzZXdoZWVsIiwgbW91c2V3aGVlbEhhbmRsZXIsIGZhbHNlKTsKKworICAg
ICAgICAgICAgICAgIGlmICh3aW5kb3cuZXZlbnRTZW5kZXIpIHsKKyAgICAgICAgICAgICAgICAg
ICAgZXZlbnRTZW5kZXIubW91c2VNb3ZlVG8oMTAwLCAxMTApOworICAgICAgICAgICAgICAgICAg
ICBldmVudFNlbmRlci5jb250aW51b3VzTW91c2VTY3JvbGxCeSgtd2luZG93LmdpdmVuU2Nyb2xs
TGVmdCwgLXdpbmRvdy5naXZlblNjcm9sbFRvcCwgdHJ1ZSk7CisgICAgICAgICAgICAgICAgfQor
CisgICAgICAgICAgICAgICAgc2V0VGltZW91dCgnY2hlY2tPZmZzZXRzKCk7JywgMTAwKTsKKyAg
ICAgICAgICAgIH0KKworICAgICAgICAgICAgZnVuY3Rpb24gY2hlY2tPZmZzZXRzKCkKKyAgICAg
ICAgICAgIHsKKyAgICAgICAgICAgICAgICBkaXYgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
b3ZlcmZsb3ciKTsKKyAgICAgICAgICAgICAgICBzaG91bGRCZSgiZGl2LnNjcm9sbFRvcCIsICJ3
aW5kb3cuZXhwZWN0ZWRTY3JvbGxUb3AiKTsKKyAgICAgICAgICAgICAgICBzaG91bGRCZSgiZGl2
LnNjcm9sbExlZnQiLCAid2luZG93LmV4cGVjdGVkU2Nyb2xsTGVmdCIpOworCisgICAgICAgICAg
ICAgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICAgICAgICAgICAgICAg
ICAgd2luZG93LmxheW91dFRlc3RDb250cm9sbGVyLm5vdGlmeURvbmUoKTsKKyAgICAgICAgICAg
IH0KKworICAgICAgICAgICAgZnVuY3Rpb24gbW91c2V3aGVlbEhhbmRsZXIoZSkKKyAgICAgICAg
ICAgIHsKKyAgICAgICAgICAgICAgICBldmVudCA9IGU7CisgICAgICAgICAgICAgICAgc2hvdWxk
QmUoImV2ZW50LndoZWVsRGVsdGFZIiwgIjAiKTsKKyAgICAgICAgICAgICAgICBzaG91bGRCZSgi
ZXZlbnQud2hlZWxEZWx0YVgiLCAid2luZG93LmdpdmVuU2Nyb2xsTGVmdCAqIC0zIik7CisKKyAg
ICAgICAgICAgICAgICBpZiAoZS53aGVlbERlbHRhWSkKKyAgICAgICAgICAgICAgICAgICAgc2hv
dWxkQmUoImV2ZW50LndoZWVsRGVsdGEiLCAiMCIpOworICAgICAgICAgICAgICAgIGVsc2UKKyAg
ICAgICAgICAgICAgICAgICAgc2hvdWxkQmUoImV2ZW50LndoZWVsRGVsdGEiLCAid2luZG93Lmdp
dmVuU2Nyb2xsTGVmdCAqIC0zIik7CisgICAgICAgICAgICB9CisgICAgICAgIDwvc2NyaXB0Pgor
ICAgIDwvaGVhZD4KKworICAgIDxib2R5IHN0eWxlPSJtYXJnaW46MCIgb25sb2FkPSJzZXRUaW1l
b3V0KCdkaXNwYXRjaFdoZWVsRXZlbnQoKTsnLCAxMDApIj4KKyAgICAgICAgIDwhLS0gVGhpcyBk
aXYgaXMgMjAwIHBpeGVscyBoaWdoLiBUaGUgY29udGVudCByZXN1bHRzIGluIHNjcm9vbCBiYXJz
IG9uCisgICAgICAgICAgYm90aCBlZGdlcywgcmVzdWx0aW5nIGluIGFuIGVmZmVjdGl2ZSBjb250
ZW50IGFyZWEgb2YgMTg1IHggMTg1IG9uCisgICAgICAgICAgbGludXguIFRoZSBwYWdpbmcgY29u
dGV4dCBvdmVybGFwIGlzIDI0IHBpeGVscy4gU28gb25lIHBhZ2Ugb2Ygc2Nyb2xsCisgICAgICAg
ICAgbW92ZXMgdGhlIGNvbnRlbnQgYnkgMTg1IC0gMjQgLT0gMTYxIHBpeGVscy4gLS0+CisgICAg
ICAgIDxkaXYgaWQ9Im92ZXJmbG93IiBzdHlsZT0iYm9yZGVyOjJweCBzb2xpZCBibGFjaztvdmVy
ZmxvdzphdXRvO2hlaWdodDoyMDBweDt3aWR0aDoyMDBweDsiPgorICAgICAgICAgICAgPGRpdiBz
dHlsZT0iaGVpZ2h0OjMwMHB4O3dpZHRoOjYwMHB4Ij4KKyAgICAgICAgICAgICAgPGRpdiBzdHls
ZT0iYmFja2dyb3VuZC1jb2xvcjpyZWQ7aGVpZ2h0OjMwMHB4O3dpZHRoOjMwMHB4O3Bvc2l0aW9u
OnJlbGF0aXZlO2xlZnQ6MHB4O3RvcDowcHgiPjwvZGl2PgorICAgICAgICAgICAgICA8ZGl2IHN0
eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOmdyZWVuO2hlaWdodDozMDBweDt3aWR0aDozMDBweDtwb3Np
dGlvbjpyZWxhdGl2ZTtsZWZ0OjMwMHB4O3RvcDotMzAwcHgiPjwvZGl2PgorICAgICAgICAgICAg
PC9kaXY+CisgICAgICAgICAgICA8ZGl2IHN0eWxlPSJoZWlnaHQ6MzAwcHg7d2lkdGg6NjAwcHgi
PgorICAgICAgICAgICAgICA8ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOmJsdWU7aGVpZ2h0
OjMwMHB4O3dpZHRoOjMwMHB4O3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6MHB4O3RvcDowcHgiPjwv
ZGl2PgorICAgICAgICAgICAgICA8ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnllbGxvdzto
ZWlnaHQ6MzAwcHg7d2lkdGg6MzAwcHg7cG9zaXRpb246cmVsYXRpdmU7bGVmdDozMDBweDt0b3A6
LTMwMHB4Ij48L2Rpdj4KKyAgICAgICAgICAgIDwvZGl2PgorICAgICAgICA8L2Rpdj4KKyAgICAg
ICAgPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+CisgICAgPC9ib2R5PgorPC9odG1sPgoKUHJvcGVy
dHkgY2hhbmdlcyBvbjogTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVu
dC1wYWdpbmcteC1pbi1zY3JvbGxpbmctZGl2Lmh0bWwKX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpBZGRlZDogc3ZuOmV4
ZWN1dGFibGUKICAgKyAqCkFkZGVkOiBzdm46ZW9sLXN0eWxlCiAgICsgTEYKCkluZGV4OiBMYXlv
dXRUZXN0cy9mYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy14LWluLXNjcm9s
bGluZy1wYWdlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2V2
ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy14LWluLXNjcm9sbGluZy1wYWdlLWV4cGVj
dGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3BsYXRmb3Jt
LXdoZWVsZXZlbnQtcGFnaW5nLXgtaW4tc2Nyb2xsaW5nLXBhZ2UtZXhwZWN0ZWQudHh0CShyZXZp
c2lvbiAwKQpAQCAtMCwwICsxLDYgQEAKK1BBU1MgZXZlbnQud2hlZWxEZWx0YVkgaXMgMAorUEFT
UyBldmVudC53aGVlbERlbHRhWCBpcyB3aW5kb3cuZ2l2ZW5TY3JvbGxMZWZ0ICogLTMKK1BBU1Mg
ZXZlbnQud2hlZWxEZWx0YSBpcyB3aW5kb3cuZ2l2ZW5TY3JvbGxMZWZ0ICogLTMKK1BBU1MgZG9j
dW1lbnQuYm9keS5zY3JvbGxUb3AgaXMgd2luZG93LmV4cGVjdGVkU2Nyb2xsVG9wCitQQVNTIGRv
Y3VtZW50LmJvZHkuc2Nyb2xsTGVmdCBpcyB3aW5kb3cuZXhwZWN0ZWRTY3JvbGxMZWZ0CisKClBy
b3BlcnR5IGNoYW5nZXMgb246IExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVs
ZXZlbnQtcGFnaW5nLXgtaW4tc2Nyb2xsaW5nLXBhZ2UtZXhwZWN0ZWQudHh0Cl9fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18K
QWRkZWQ6IHN2bjplb2wtc3R5bGUKICAgKyBMRgoKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZXZl
bnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXgtaW4tc2Nyb2xsaW5nLXBhZ2UuaHRtbAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50
LXBhZ2luZy14LWluLXNjcm9sbGluZy1wYWdlLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRU
ZXN0cy9mYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy14LWluLXNjcm9sbGlu
Zy1wYWdlLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNjIgQEAKKzxodG1sPgorICAgIDxo
ZWFkPgorICAgICAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uL2pzL3Jlc291cmNl
cy9qcy10ZXN0LXN0eWxlLmNzcyI+CisgICAgICAgIDxzY3JpcHQgc3JjPSIuLi9qcy9yZXNvdXJj
ZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0PgorICAgICAgICAg
ICAgdmFyIGdpdmVuU2Nyb2xsVG9wID0gMDsKKyAgICAgICAgICAgIHZhciBnaXZlblNjcm9sbExl
ZnQgPSAyOyAvLyBXaGVuIHBhZ2luZywgdGhpcyBpcyBpZ25vcmVkLiBFdmVyeSBldmVudCBpcyBv
bmUgcGFnZS4KKyAgICAgICAgICAgIHZhciBleHBlY3RlZFNjcm9sbFRvcCA9IDA7CisgICAgICAg
ICAgICB2YXIgZXhwZWN0ZWRTY3JvbGxMZWZ0ID0gNzAwOyAvLyBXaW5kb3cgaXMgODAweDYwMC4g
U2Nyb2xsIDg3LjUlIG9mIHZpc2libGUuCisgICAgICAgICAgICB2YXIgZXZlbnQ7CisgICAgICAg
ICAgICB2YXIgZGl2OworCisgICAgICAgICAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9s
bGVyKQorICAgICAgICAgICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLndhaXRVbnRpbERvbmUo
KTsKKworICAgICAgICAgICAgZnVuY3Rpb24gZGlzcGF0Y2hXaGVlbEV2ZW50KCkKKyAgICAgICAg
ICAgIHsKKyAgICAgICAgICAgICAgICBkb2N1bWVudC5ib2R5LmFkZEV2ZW50TGlzdGVuZXIoIm1v
dXNld2hlZWwiLCBtb3VzZXdoZWVsSGFuZGxlciwgZmFsc2UpOworCisgICAgICAgICAgICAgICAg
aWYgKHdpbmRvdy5ldmVudFNlbmRlcikgeworICAgICAgICAgICAgICAgICAgICBldmVudFNlbmRl
ci5tb3VzZU1vdmVUbygxMDAsIDExMCk7CisgICAgICAgICAgICAgICAgICAgIGV2ZW50U2VuZGVy
LmNvbnRpbnVvdXNNb3VzZVNjcm9sbEJ5KC13aW5kb3cuZ2l2ZW5TY3JvbGxMZWZ0LCAtd2luZG93
LmdpdmVuU2Nyb2xsVG9wLCB0cnVlKTsKKyAgICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAg
ICAgICBzZXRUaW1lb3V0KCdjaGVja09mZnNldHMoKTsnLCAxMDApOworICAgICAgICAgICAgfQor
CisgICAgICAgICAgICBmdW5jdGlvbiBjaGVja09mZnNldHMoKQorICAgICAgICAgICAgeworICAg
ICAgICAgICAgICAgIHNob3VsZEJlKCJkb2N1bWVudC5ib2R5LnNjcm9sbFRvcCIsICJ3aW5kb3cu
ZXhwZWN0ZWRTY3JvbGxUb3AiKTsKKyAgICAgICAgICAgICAgICBzaG91bGRCZSgiZG9jdW1lbnQu
Ym9keS5zY3JvbGxMZWZ0IiwgIndpbmRvdy5leHBlY3RlZFNjcm9sbExlZnQiKTsKKworICAgICAg
ICAgICAgICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAgICAgICAgICAg
ICAgICAgIHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlci5ub3RpZnlEb25lKCk7CisgICAgICAg
ICAgICB9CisKKyAgICAgICAgICAgIGZ1bmN0aW9uIG1vdXNld2hlZWxIYW5kbGVyKGUpCisgICAg
ICAgICAgICB7CisgICAgICAgICAgICAgICAgZXZlbnQgPSBlOworICAgICAgICAgICAgICAgIHNo
b3VsZEJlKCJldmVudC53aGVlbERlbHRhWSIsICIwIik7CisgICAgICAgICAgICAgICAgc2hvdWxk
QmUoImV2ZW50LndoZWVsRGVsdGFYIiwgIndpbmRvdy5naXZlblNjcm9sbExlZnQgKiAtMyIpOwor
CisgICAgICAgICAgICAgICAgaWYgKGUud2hlZWxEZWx0YVkpCisgICAgICAgICAgICAgICAgICAg
IHNob3VsZEJlKCJldmVudC53aGVlbERlbHRhIiwgIjAiKTsKKyAgICAgICAgICAgICAgICBlbHNl
CisgICAgICAgICAgICAgICAgICAgIHNob3VsZEJlKCJldmVudC53aGVlbERlbHRhIiwgIndpbmRv
dy5naXZlblNjcm9sbExlZnQgKiAtMyIpOworICAgICAgICAgICAgfQorICAgICAgICA8L3Njcmlw
dD4KKyAgICA8L2hlYWQ+CisKKyAgICA8Ym9keSBzdHlsZT0ibWFyZ2luOjA7cGFkZGluZzowIiBv
bmxvYWQ9InNldFRpbWVvdXQoJ2Rpc3BhdGNoV2hlZWxFdmVudCgpOycsIDEwMCkiPgorICAgICAg
ICA8ZGl2IHN0eWxlPSJtYXJnaW46MDtwYWRkaW5nOjA7aGVpZ2h0OjIwMHB4O3dpZHRoOjI0MDBw
eCI+CisgICAgICAgICAgPGRpdiBzdHlsZT0ibWFyZ2luOjA7cGFkZGluZzowO2JhY2tncm91bmQt
Y29sb3I6cmVkO2hlaWdodDoyMDBweDt3aWR0aDoxMjAwcHg7cG9zaXRpb246cmVsYXRpdmU7bGVm
dDowcHg7dG9wOjBweCI+PC9kaXY+CisgICAgICAgICAgPGRpdiBzdHlsZT0ibWFyZ2luOjA7cGFk
ZGluZzowO2JhY2tncm91bmQtY29sb3I6Z3JlZW47aGVpZ2h0OjIwMHB4O3dpZHRoOjEyMDBweDtw
b3NpdGlvbjpyZWxhdGl2ZTtsZWZ0OjEyMDBweDt0b3A6LTIwMHB4Ij48L2Rpdj4KKyAgICAgICAg
PC9kaXY+CisgICAgICAgIDxkaXYgc3R5bGU9Im1hcmdpbjowO3BhZGRpbmc6MDtoZWlnaHQ6MjAw
cHg7d2lkdGg6MjQwMHB4Ij4KKyAgICAgICAgICA8ZGl2IHN0eWxlPSJtYXJnaW46MDtwYWRkaW5n
OjA7YmFja2dyb3VuZC1jb2xvcjpibHVlO2hlaWdodDoyMDBweDt3aWR0aDoxMjAwcHg7cG9zaXRp
b246cmVsYXRpdmU7bGVmdDowcHg7dG9wOjBweCI+PC9kaXY+CisgICAgICAgICAgPGRpdiBzdHls
ZT0ibWFyZ2luOjA7cGFkZGluZzowO2JhY2tncm91bmQtY29sb3I6eWVsbG93O2hlaWdodDoyMDBw
eDt3aWR0aDoxMjAwcHg7cG9zaXRpb246cmVsYXRpdmU7bGVmdDoxMjAwcHg7dG9wOi0yMDBweCI+
PC9kaXY+CisgICAgICAgIDwvZGl2PgorICAgICAgICA8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4K
KyAgICA8L2JvZHk+Cis8L2h0bWw+CgpQcm9wZXJ0eSBjaGFuZ2VzIG9uOiBMYXlvdXRUZXN0cy9m
YXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy14LWluLXNjcm9sbGluZy1wYWdl
Lmh0bWwKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fXwpBZGRlZDogc3ZuOmVvbC1zdHlsZQogICArIExGCgpJbmRleDogTGF5
b3V0VGVzdHMvZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteHktaW4tc2Ny
b2xsaW5nLWRpdi1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9l
dmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteHktaW4tc2Nyb2xsaW5nLWRpdi1leHBl
Y3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9wbGF0Zm9y
bS13aGVlbGV2ZW50LXBhZ2luZy14eS1pbi1zY3JvbGxpbmctZGl2LWV4cGVjdGVkLnR4dAkocmV2
aXNpb24gMCkKQEAgLTAsMCArMSw2IEBACitQQVNTIGV2ZW50LndoZWVsRGVsdGFZIGlzIHdpbmRv
dy5naXZlblNjcm9sbFRvcCAqIC0zCitQQVNTIGV2ZW50LndoZWVsRGVsdGFYIGlzIHdpbmRvdy5n
aXZlblNjcm9sbExlZnQgKiAtMworUEFTUyBldmVudC53aGVlbERlbHRhIGlzIHdpbmRvdy5naXZl
blNjcm9sbFRvcCAqIC0zCitQQVNTIGRpdi5zY3JvbGxUb3AgaXMgd2luZG93LmV4cGVjdGVkU2Ny
b2xsVG9wCitQQVNTIGRpdi5zY3JvbGxMZWZ0IGlzIHdpbmRvdy5leHBlY3RlZFNjcm9sbExlZnQK
KwoKUHJvcGVydHkgY2hhbmdlcyBvbjogTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcGxhdGZvcm0t
d2hlZWxldmVudC1wYWdpbmcteHktaW4tc2Nyb2xsaW5nLWRpdi1leHBlY3RlZC50eHQKX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fXwpBZGRlZDogc3ZuOmVvbC1zdHlsZQogICArIExGCgpJbmRleDogTGF5b3V0VGVzdHMvZmFz
dC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteHktaW4tc2Nyb2xsaW5nLWRpdi5o
dG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVs
ZXZlbnQtcGFnaW5nLXh5LWluLXNjcm9sbGluZy1kaXYuaHRtbAkocmV2aXNpb24gMCkKKysrIExh
eW91dFRlc3RzL2Zhc3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXh5LWluLXNj
cm9sbGluZy1kaXYuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw3MSBAQAorPGh0bWw+Cisg
ICAgPGhlYWQ+CisgICAgICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vanMvcmVz
b3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii4uL2pzL3Jl
c291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQ+CisgICAg
ICAgICAgICB2YXIgZ2l2ZW5TY3JvbGxUb3AgPSAxOworICAgICAgICAgICAgdmFyIGdpdmVuU2Ny
b2xsTGVmdCA9IDI7CisgICAgICAgICAgICB2YXIgZXhwZWN0ZWRTY3JvbGxUb3AgPSAxNjE7Cisg
ICAgICAgICAgICB2YXIgZXhwZWN0ZWRTY3JvbGxMZWZ0ID0gMzIyOworICAgICAgICAgICAgdmFy
IGV2ZW50OworICAgICAgICAgICAgdmFyIGRpdjsKKworICAgICAgICAgICAgaWYgKHdpbmRvdy5s
YXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICAgICAgICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxl
ci53YWl0VW50aWxEb25lKCk7CisKKyAgICAgICAgICAgIGZ1bmN0aW9uIGRpc3BhdGNoV2hlZWxF
dmVudCgpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgdmFyIG92ZXJmbG93RWxlbWVu
dCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJvdmVyZmxvdyIpOworICAgICAgICAgICAgICAg
IGlmIChvdmVyZmxvd0VsZW1lbnQpCisgICAgICAgICAgICAgICAgICAgIG92ZXJmbG93RWxlbWVu
dC5hZGRFdmVudExpc3RlbmVyKCJtb3VzZXdoZWVsIiwgbW91c2V3aGVlbEhhbmRsZXIsIGZhbHNl
KTsKKworICAgICAgICAgICAgICAgIGlmICh3aW5kb3cuZXZlbnRTZW5kZXIpIHsKKyAgICAgICAg
ICAgICAgICAgICAgZXZlbnRTZW5kZXIubW91c2VNb3ZlVG8oMTAwLCAxMTApOworICAgICAgICAg
ICAgICAgICAgICBldmVudFNlbmRlci5jb250aW51b3VzTW91c2VTY3JvbGxCeSgtd2luZG93Lmdp
dmVuU2Nyb2xsTGVmdCwgLXdpbmRvdy5naXZlblNjcm9sbFRvcCwgdHJ1ZSk7CisgICAgICAgICAg
ICAgICAgfQorCisgICAgICAgICAgICAgICAgc2V0VGltZW91dCgnY2hlY2tPZmZzZXRzKCk7Jywg
MTAwKTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgZnVuY3Rpb24gY2hlY2tPZmZzZXRz
KCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBkaXYgPSBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgib3ZlcmZsb3ciKTsKKyAgICAgICAgICAgICAgICBzaG91bGRCZSgiZGl2LnNjcm9s
bFRvcCIsICJ3aW5kb3cuZXhwZWN0ZWRTY3JvbGxUb3AiKTsKKyAgICAgICAgICAgICAgICBzaG91
bGRCZSgiZGl2LnNjcm9sbExlZnQiLCAid2luZG93LmV4cGVjdGVkU2Nyb2xsTGVmdCIpOworCisg
ICAgICAgICAgICAgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICAgICAg
ICAgICAgICAgICAgd2luZG93LmxheW91dFRlc3RDb250cm9sbGVyLm5vdGlmeURvbmUoKTsKKyAg
ICAgICAgICAgIH0KKworICAgICAgICAgICAgZnVuY3Rpb24gbW91c2V3aGVlbEhhbmRsZXIoZSkK
KyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBldmVudCA9IGU7CisgICAgICAgICAgICAg
ICAgc2hvdWxkQmUoImV2ZW50LndoZWVsRGVsdGFZIiwgIndpbmRvdy5naXZlblNjcm9sbFRvcCAq
IC0zIik7CisgICAgICAgICAgICAgICAgc2hvdWxkQmUoImV2ZW50LndoZWVsRGVsdGFYIiwgIndp
bmRvdy5naXZlblNjcm9sbExlZnQgKiAtMyIpOworCisgICAgICAgICAgICAgICAgaWYgKGUud2hl
ZWxEZWx0YVkpCisgICAgICAgICAgICAgICAgICAgIHNob3VsZEJlKCJldmVudC53aGVlbERlbHRh
IiwgIndpbmRvdy5naXZlblNjcm9sbFRvcCAqIC0zIik7CisgICAgICAgICAgICAgICAgZWxzZQor
ICAgICAgICAgICAgICAgICAgICBzaG91bGRCZSgiZXZlbnQud2hlZWxEZWx0YSIsICJ3aW5kb3cu
Z2l2ZW5TY3JvbGxMZWZ0ICogLTMiKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgPC9zY3JpcHQ+
CisgICAgPC9oZWFkPgorCisgICAgPGJvZHkgc3R5bGU9Im1hcmdpbjowIiBvbmxvYWQ9InNldFRp
bWVvdXQoJ2Rpc3BhdGNoV2hlZWxFdmVudCgpOycsIDEwMCkiPgorICAgICAgICAgPCEtLSBUaGlz
IGRpdiBpcyAyMDAgcGl4ZWxzIGhpZ2guIFRoZSBjb250ZW50IHJlc3VsdHMgaW4gc2Nyb29sIGJh
cnMgb24KKyAgICAgICAgICBib3RoIGVkZ2VzLCByZXN1bHRpbmcgaW4gYW4gZWZmZWN0aXZlIGNv
bnRlbnQgYXJlYSBvZiAxODUgeCAxODUgb24KKyAgICAgICAgICBsaW51eC4gVGhlIHBhZ2luZyBj
b250ZXh0IG92ZXJsYXAgaXMgMjQgcGl4ZWxzLiBTbyBvbmUgcGFnZSBvZiBzY3JvbGwKKyAgICAg
ICAgICBtb3ZlcyB0aGUgY29udGVudCBieSAxODUgLSAyNCAtPSAxNjEgcGl4ZWxzLiAtLT4KKyAg
ICAgICAgPGRpdiBpZD0ib3ZlcmZsb3ciIHN0eWxlPSJib3JkZXI6MnB4IHNvbGlkIGJsYWNrO292
ZXJmbG93OmF1dG87aGVpZ2h0OjIwMHB4O3dpZHRoOjIwMHB4OyI+CisgICAgICAgICAgICA8ZGl2
IHN0eWxlPSJoZWlnaHQ6MzAwcHg7d2lkdGg6NjAwcHgiPgorICAgICAgICAgICAgICA8ZGl2IHN0
eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnJlZDtoZWlnaHQ6MzAwcHg7d2lkdGg6MzAwcHg7cG9zaXRp
b246cmVsYXRpdmU7bGVmdDowcHg7dG9wOjBweCI+PC9kaXY+CisgICAgICAgICAgICAgIDxkaXYg
c3R5bGU9ImJhY2tncm91bmQtY29sb3I6Z3JlZW47aGVpZ2h0OjMwMHB4O3dpZHRoOjMwMHB4O3Bv
c2l0aW9uOnJlbGF0aXZlO2xlZnQ6MzAwcHg7dG9wOi0zMDBweCI+PC9kaXY+CisgICAgICAgICAg
ICA8L2Rpdj4KKyAgICAgICAgICAgIDxkaXYgc3R5bGU9ImhlaWdodDozMDBweDt3aWR0aDo2MDBw
eCI+CisgICAgICAgICAgICAgIDxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6Ymx1ZTtoZWln
aHQ6MzAwcHg7d2lkdGg6MzAwcHg7cG9zaXRpb246cmVsYXRpdmU7bGVmdDowcHg7dG9wOjBweCI+
PC9kaXY+CisgICAgICAgICAgICAgIDxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6eWVsbG93
O2hlaWdodDozMDBweDt3aWR0aDozMDBweDtwb3NpdGlvbjpyZWxhdGl2ZTtsZWZ0OjMwMHB4O3Rv
cDotMzAwcHgiPjwvZGl2PgorICAgICAgICAgICAgPC9kaXY+CisgICAgICAgIDwvZGl2PgorICAg
ICAgICA8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CgpQcm9w
ZXJ0eSBjaGFuZ2VzIG9uOiBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2
ZW50LXBhZ2luZy14eS1pbi1zY3JvbGxpbmctZGl2Lmh0bWwKX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpBZGRlZDogc3Zu
OmVvbC1zdHlsZQogICArIExGCgpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcGxhdGZv
cm0td2hlZWxldmVudC1wYWdpbmcteHktaW4tc2Nyb2xsaW5nLXBhZ2UtZXhwZWN0ZWQudHh0Cj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQt
cGFnaW5nLXh5LWluLXNjcm9sbGluZy1wYWdlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysr
IExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXh5LWlu
LXNjcm9sbGluZy1wYWdlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw2IEBA
CitQQVNTIGV2ZW50LndoZWVsRGVsdGFZIGlzIHdpbmRvdy5naXZlblNjcm9sbFRvcCAqIC0zCitQ
QVNTIGV2ZW50LndoZWVsRGVsdGFYIGlzIHdpbmRvdy5naXZlblNjcm9sbExlZnQgKiAtMworUEFT
UyBldmVudC53aGVlbERlbHRhIGlzIHdpbmRvdy5naXZlblNjcm9sbFRvcCAqIC0zCitQQVNTIGRv
Y3VtZW50LmJvZHkuc2Nyb2xsVG9wIGlzIHdpbmRvdy5leHBlY3RlZFNjcm9sbFRvcAorUEFTUyBk
b2N1bWVudC5ib2R5LnNjcm9sbExlZnQgaXMgd2luZG93LmV4cGVjdGVkU2Nyb2xsTGVmdAorCgpQ
cm9wZXJ0eSBjaGFuZ2VzIG9uOiBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVl
bGV2ZW50LXBhZ2luZy14eS1pbi1zY3JvbGxpbmctcGFnZS1leHBlY3RlZC50eHQKX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
XwpBZGRlZDogc3ZuOmVvbC1zdHlsZQogICArIExGCgpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9l
dmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteHktaW4tc2Nyb2xsaW5nLXBhZ2UuaHRt
bAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2
ZW50LXBhZ2luZy14eS1pbi1zY3JvbGxpbmctcGFnZS5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5
b3V0VGVzdHMvZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteHktaW4tc2Ny
b2xsaW5nLXBhZ2UuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw2MiBAQAorPGh0bWw+Cisg
ICAgPGhlYWQ+CisgICAgICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vanMvcmVz
b3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii4uL2pzL3Jl
c291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQ+CisgICAg
ICAgICAgICB2YXIgZ2l2ZW5TY3JvbGxUb3AgPSAyOyAvLyBPbmx5IG9uZSBwYWdlIHBlciBldmVu
dCwgc28gdGhpcyBzaG91bGQgYmUgaW50ZXJwcmV0ZWQgYXMgMQorICAgICAgICAgICAgdmFyIGdp
dmVuU2Nyb2xsTGVmdCA9IDI7CisgICAgICAgICAgICB2YXIgZXhwZWN0ZWRTY3JvbGxUb3AgPSA1
MTE7IC8vIFdpbmRvdyBpcyA4MDB4NjAwLiAxNSBwaXhlbCBzY3JvbGxiYXJzLiBTY3JvbGwgODcu
NSUgb2YgdmlzaWJsZS4KKyAgICAgICAgICAgIHZhciBleHBlY3RlZFNjcm9sbExlZnQgPSA2ODY7
CisgICAgICAgICAgICB2YXIgZXZlbnQ7CisgICAgICAgICAgICB2YXIgZGl2OworCisgICAgICAg
ICAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQorICAgICAgICAgICAgICAgIGxh
eW91dFRlc3RDb250cm9sbGVyLndhaXRVbnRpbERvbmUoKTsKKworICAgICAgICAgICAgZnVuY3Rp
b24gZGlzcGF0Y2hXaGVlbEV2ZW50KCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBk
b2N1bWVudC5ib2R5LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNld2hlZWwiLCBtb3VzZXdoZWVsSGFu
ZGxlciwgZmFsc2UpOworCisgICAgICAgICAgICAgICAgaWYgKHdpbmRvdy5ldmVudFNlbmRlcikg
eworICAgICAgICAgICAgICAgICAgICBldmVudFNlbmRlci5tb3VzZU1vdmVUbygxMDAsIDExMCk7
CisgICAgICAgICAgICAgICAgICAgIGV2ZW50U2VuZGVyLmNvbnRpbnVvdXNNb3VzZVNjcm9sbEJ5
KC13aW5kb3cuZ2l2ZW5TY3JvbGxMZWZ0LCAtd2luZG93LmdpdmVuU2Nyb2xsVG9wLCB0cnVlKTsK
KyAgICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCdjaGVja09m
ZnNldHMoKTsnLCAxMDApOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICBmdW5jdGlvbiBj
aGVja09mZnNldHMoKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIHNob3VsZEJlKCJk
b2N1bWVudC5ib2R5LnNjcm9sbFRvcCIsICJ3aW5kb3cuZXhwZWN0ZWRTY3JvbGxUb3AiKTsKKyAg
ICAgICAgICAgICAgICBzaG91bGRCZSgiZG9jdW1lbnQuYm9keS5zY3JvbGxMZWZ0IiwgIndpbmRv
dy5leHBlY3RlZFNjcm9sbExlZnQiKTsKKworICAgICAgICAgICAgICAgIGlmICh3aW5kb3cubGF5
b3V0VGVzdENvbnRyb2xsZXIpCisgICAgICAgICAgICAgICAgICAgIHdpbmRvdy5sYXlvdXRUZXN0
Q29udHJvbGxlci5ub3RpZnlEb25lKCk7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIGZ1
bmN0aW9uIG1vdXNld2hlZWxIYW5kbGVyKGUpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAg
ICAgZXZlbnQgPSBlOworICAgICAgICAgICAgICAgIHNob3VsZEJlKCJldmVudC53aGVlbERlbHRh
WSIsICJ3aW5kb3cuZ2l2ZW5TY3JvbGxUb3AgKiAtMyIpOworICAgICAgICAgICAgICAgIHNob3Vs
ZEJlKCJldmVudC53aGVlbERlbHRhWCIsICJ3aW5kb3cuZ2l2ZW5TY3JvbGxMZWZ0ICogLTMiKTsK
KworICAgICAgICAgICAgICAgIGlmIChlLndoZWVsRGVsdGFZKQorICAgICAgICAgICAgICAgICAg
ICBzaG91bGRCZSgiZXZlbnQud2hlZWxEZWx0YSIsICJ3aW5kb3cuZ2l2ZW5TY3JvbGxUb3AgKiAt
MyIpOworICAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgc2hvdWxkQmUo
ImV2ZW50LndoZWVsRGVsdGEiLCAid2luZG93LmdpdmVuU2Nyb2xsTGVmdCAqIC0zIik7CisgICAg
ICAgICAgICB9CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvaGVhZD4KKworICAgIDxib2R5IHN0
eWxlPSJtYXJnaW46MCIgb25sb2FkPSJzZXRUaW1lb3V0KCdkaXNwYXRjaFdoZWVsRXZlbnQoKTsn
LCAxMDApIj4KKyAgICAgICAgPGRpdiBzdHlsZT0iaGVpZ2h0OjkwMHB4O3dpZHRoOjI0MDBweCI+
CisgICAgICAgICAgPGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjpyZWQ7aGVpZ2h0OjkwMHB4
O3dpZHRoOjEyMDBweDtwb3NpdGlvbjpyZWxhdGl2ZTtsZWZ0OjBweDt0b3A6MHB4Ij48L2Rpdj4K
KyAgICAgICAgICA8ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOmdyZWVuO2hlaWdodDo5MDBw
eDt3aWR0aDoxMjAwcHg7cG9zaXRpb246cmVsYXRpdmU7bGVmdDoxMjAwcHg7dG9wOi05MDBweCI+
PC9kaXY+CisgICAgICAgIDwvZGl2PgorICAgICAgICA8ZGl2IHN0eWxlPSJoZWlnaHQ6OTAwcHg7
d2lkdGg6MjQwMHB4Ij4KKyAgICAgICAgICA8ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOmJs
dWU7aGVpZ2h0OjkwMHB4O3dpZHRoOjEyMDBweDtwb3NpdGlvbjpyZWxhdGl2ZTtsZWZ0OjBweDt0
b3A6MHB4Ij48L2Rpdj4KKyAgICAgICAgICA8ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnll
bGxvdztoZWlnaHQ6OTAwcHg7d2lkdGg6MTIwMHB4O3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6MTIw
MHB4O3RvcDotOTAwcHgiPjwvZGl2PgorICAgICAgICA8L2Rpdj4KKyAgICAgICAgPGRpdiBpZD0i
Y29uc29sZSI+PC9kaXY+CisgICAgPC9ib2R5PgorPC9odG1sPgoKUHJvcGVydHkgY2hhbmdlcyBv
bjogTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteHkt
aW4tc2Nyb2xsaW5nLXBhZ2UuaHRtbApfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkFkZGVkOiBzdm46ZW9sLXN0eWxlCiAg
ICsgTEYKCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50
LXBhZ2luZy15LWluLW5vbi1zY3JvbGxpbmctZGl2LWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy15LWlu
LW5vbi1zY3JvbGxpbmctZGl2LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRl
c3RzL2Zhc3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXktaW4tbm9uLXNjcm9s
bGluZy1kaXYtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDcgQEAKKyAKK1BB
U1MgZXZlbnQud2hlZWxEZWx0YVkgaXMgd2luZG93LmdpdmVuU2Nyb2xsVG9wKi0zCitQQVNTIGV2
ZW50LndoZWVsRGVsdGFYIGlzIDAKK1BBU1MgZXZlbnQud2hlZWxEZWx0YSBpcyB3aW5kb3cuZ2l2
ZW5TY3JvbGxUb3AqLTMKK1BBU1MgZGl2LnNjcm9sbFRvcCBpcyB3aW5kb3cuZXhwZWN0ZWRTY3Jv
bGxUb3AKK1BBU1MgZGl2LnNjcm9sbExlZnQgaXMgd2luZG93LmV4cGVjdGVkU2Nyb2xsTGVmdAor
CgpQcm9wZXJ0eSBjaGFuZ2VzIG9uOiBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9wbGF0Zm9ybS13
aGVlbGV2ZW50LXBhZ2luZy15LWluLW5vbi1zY3JvbGxpbmctZGl2LWV4cGVjdGVkLnR4dApfX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fCkFkZGVkOiBzdm46ZW9sLXN0eWxlCiAgICsgTEYKCkluZGV4OiBMYXlvdXRUZXN0cy9m
YXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy15LWluLW5vbi1zY3JvbGxpbmct
ZGl2Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcGxhdGZvcm0t
d2hlZWxldmVudC1wYWdpbmcteS1pbi1ub24tc2Nyb2xsaW5nLWRpdi5odG1sCShyZXZpc2lvbiAw
KQorKysgTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmct
eS1pbi1ub24tc2Nyb2xsaW5nLWRpdi5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDY0IEBA
Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVm
PSIuLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorICAgICAgICA8c2NyaXB0IHNy
Yz0iLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNj
cmlwdD4KKyAgICAgICAgICAgIHZhciBnaXZlblNjcm9sbFRvcCA9IDI7CisgICAgICAgICAgICB2
YXIgZ2l2ZW5TY3JvbGxMZWZ0ID0gMDsKKyAgICAgICAgICAgIHZhciBleHBlY3RlZFNjcm9sbFRv
cCA9IDA7CisgICAgICAgICAgICB2YXIgZXhwZWN0ZWRTY3JvbGxMZWZ0ID0gMDsKKyAgICAgICAg
ICAgIHZhciBwaXhlbHNQZXJXaGVlbFRpY2sgPSA0MDsKKyAgICAgICAgICAgIHZhciBldmVudDsK
KyAgICAgICAgICAgIHZhciBkaXY7CisKKyAgICAgICAgICAgIGlmICh3aW5kb3cubGF5b3V0VGVz
dENvbnRyb2xsZXIpCisgICAgICAgICAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIud2FpdFVu
dGlsRG9uZSgpOworCisgICAgICAgICAgICBmdW5jdGlvbiBkaXNwYXRjaFdoZWVsRXZlbnQoKQor
ICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIHZhciBvdmVyZmxvd0VsZW1lbnQgPSBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgib3ZlcmZsb3ciKTsKKyAgICAgICAgICAgICAgICBpZiAob3Zl
cmZsb3dFbGVtZW50KQorICAgICAgICAgICAgICAgICAgICBvdmVyZmxvd0VsZW1lbnQuYWRkRXZl
bnRMaXN0ZW5lcigibW91c2V3aGVlbCIsIG1vdXNld2hlZWxIYW5kbGVyLCBmYWxzZSk7CisKKyAg
ICAgICAgICAgICAgICBpZiAod2luZG93LmV2ZW50U2VuZGVyKSB7CisgICAgICAgICAgICAgICAg
ICAgIGV2ZW50U2VuZGVyLm1vdXNlTW92ZVRvKDEwMCwgMTEwKTsKKyAgICAgICAgICAgICAgICAg
ICAgZXZlbnRTZW5kZXIuY29udGludW91c01vdXNlU2Nyb2xsQnkoLXdpbmRvdy5naXZlblNjcm9s
bExlZnQsIC13aW5kb3cuZ2l2ZW5TY3JvbGxUb3AsIHRydWUpOworICAgICAgICAgICAgICAgIH0K
KworICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoJ2NoZWNrT2Zmc2V0cygpOycsIDEwMCk7Cisg
ICAgICAgICAgICB9CisKKyAgICAgICAgICAgIGZ1bmN0aW9uIGNoZWNrT2Zmc2V0cygpCisgICAg
ICAgICAgICB7CisgICAgICAgICAgICAgICAgZGl2ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
Im92ZXJmbG93Iik7CisgICAgICAgICAgICAgICAgc2hvdWxkQmUoImRpdi5zY3JvbGxUb3AiLCAi
d2luZG93LmV4cGVjdGVkU2Nyb2xsVG9wIik7CisgICAgICAgICAgICAgICAgc2hvdWxkQmUoImRp
di5zY3JvbGxMZWZ0IiwgIndpbmRvdy5leHBlY3RlZFNjcm9sbExlZnQiKTsKKworICAgICAgICAg
ICAgICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAgICAgICAgICAgICAg
ICAgIHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlci5ub3RpZnlEb25lKCk7CisgICAgICAgICAg
ICB9CisKKyAgICAgICAgICAgIGZ1bmN0aW9uIG1vdXNld2hlZWxIYW5kbGVyKGUpCisgICAgICAg
ICAgICB7CisgICAgICAgICAgICAgICAgZXZlbnQgPSBlOworICAgICAgICAgICAgICAgIHNob3Vs
ZEJlKCJldmVudC53aGVlbERlbHRhWSIsICJ3aW5kb3cuZ2l2ZW5TY3JvbGxUb3AqLTMiKTsKKyAg
ICAgICAgICAgICAgICBzaG91bGRCZSgiZXZlbnQud2hlZWxEZWx0YVgiLCAiMCIpOworCisgICAg
ICAgICAgICAgICAgaWYgKGUud2hlZWxEZWx0YVkpCisgICAgICAgICAgICAgICAgICAgIHNob3Vs
ZEJlKCJldmVudC53aGVlbERlbHRhIiwgIndpbmRvdy5naXZlblNjcm9sbFRvcCotMyIpOworICAg
ICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgc2hvdWxkQmUoImV2ZW50Lndo
ZWVsRGVsdGEiLCAiMCIpOworICAgICAgICAgICAgfQorICAgICAgICA8L3NjcmlwdD4KKyAgICA8
L2hlYWQ+CisKKyAgICA8Ym9keSBzdHlsZT0ibWFyZ2luOjAiIG9ubG9hZD0ic2V0VGltZW91dCgn
ZGlzcGF0Y2hXaGVlbEV2ZW50KCk7JywgMTAwKSI+CisgICAgICAgIDxkaXYgaWQ9Im92ZXJmbG93
IiBzdHlsZT0iYm9yZGVyOjJweCBzb2xpZCBibGFjaztvdmVyZmxvdzphdXRvO3doaXRlLXNwYWNl
Om5vd3JhcDtoZWlnaHQ6MjAwcHg7d2lkdGg6MjAwcHg7Ij4KKyAgICAgICAgPGRpdiBzdHlsZT0i
aGVpZ2h0OjE4NXB4O3dpZHRoOjYwMHB4OyI+CisgICAgICAgICAgPGRpdiBzdHlsZT0iYm9yZGVy
OjBweDtiYWNrZ3JvdW5kLWNvbG9yOnJlZDtoZWlnaHQ6MTgxcHg7d2lkdGg6MzAwcHg7ZGlzcGxh
eTppbmxpbmUtYmxvY2s7Ij48L2Rpdj4KKyAgICAgICAgICA8ZGl2IHN0eWxlPSJib3JkZXI6MHB4
O2JhY2tncm91bmQtY29sb3I6Z3JlZW47aGVpZ2h0OjE4MXB4O3dpZHRoOjMwMHB4O2Rpc3BsYXk6
aW5saW5lLWJsb2NrOyI+PC9kaXY+CisgICAgICAgIDwvZGl2PgorICAgICAgICA8L2Rpdj4KKyAg
ICAgICAgPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+CisgICAgPC9ib2R5PgorPC9odG1sPgoKUHJv
cGVydHkgY2hhbmdlcyBvbjogTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxl
dmVudC1wYWdpbmcteS1pbi1ub24tc2Nyb2xsaW5nLWRpdi5odG1sCl9fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KQWRkZWQ6
IHN2bjpleGVjdXRhYmxlCiAgICsgKgpBZGRlZDogc3ZuOmVvbC1zdHlsZQogICArIExGCgpJbmRl
eDogTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteS1p
bi1ub24tc2Nyb2xsaW5nLXBhZ2UtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL2Zhc3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXktaW4tbm9uLXNjcm9s
bGluZy1wYWdlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2Zhc3Qv
ZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXktaW4tbm9uLXNjcm9sbGluZy1wYWdl
LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw2IEBACitQQVNTIGV2ZW50Lndo
ZWVsRGVsdGFZIGlzIHdpbmRvdy5naXZlblNjcm9sbFRvcCAqIC0zCitQQVNTIGV2ZW50LndoZWVs
RGVsdGFYIGlzIDAKK1BBU1MgZXZlbnQud2hlZWxEZWx0YSBpcyB3aW5kb3cuZ2l2ZW5TY3JvbGxU
b3AgKiAtMworUEFTUyBkb2N1bWVudC5ib2R5LnNjcm9sbFRvcCBpcyB3aW5kb3cuZXhwZWN0ZWRT
Y3JvbGxUb3AKK1BBU1MgZG9jdW1lbnQuYm9keS5zY3JvbGxMZWZ0IGlzIHdpbmRvdy5leHBlY3Rl
ZFNjcm9sbExlZnQKKwoKUHJvcGVydHkgY2hhbmdlcyBvbjogTGF5b3V0VGVzdHMvZmFzdC9ldmVu
dHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteS1pbi1ub24tc2Nyb2xsaW5nLXBhZ2UtZXhw
ZWN0ZWQudHh0Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX18KQWRkZWQ6IHN2bjplb2wtc3R5bGUKICAgKyBMRgoKSW5kZXg6
IExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXktaW4t
bm9uLXNjcm9sbGluZy1wYWdlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9l
dmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteS1pbi1ub24tc2Nyb2xsaW5nLXBhZ2Uu
aHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3BsYXRmb3JtLXdo
ZWVsZXZlbnQtcGFnaW5nLXktaW4tbm9uLXNjcm9sbGluZy1wYWdlLmh0bWwJKHJldmlzaW9uIDAp
CkBAIC0wLDAgKzEsNjIgQEAKKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8bGluayByZWw9
InN0eWxlc2hlZXQiIGhyZWY9Ii4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cisg
ICAgICAgIDxzY3JpcHQgc3JjPSIuLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2Ny
aXB0PgorICAgICAgICA8c2NyaXB0PgorICAgICAgICAgICAgdmFyIGdpdmVuU2Nyb2xsVG9wID0g
MjsKKyAgICAgICAgICAgIHZhciBnaXZlblNjcm9sbExlZnQgPSAwOworICAgICAgICAgICAgdmFy
IGV4cGVjdGVkU2Nyb2xsVG9wID0gMDsKKyAgICAgICAgICAgIHZhciBleHBlY3RlZFNjcm9sbExl
ZnQgPSAwOworICAgICAgICAgICAgdmFyIGV2ZW50OworICAgICAgICAgICAgdmFyIGRpdjsKKwor
ICAgICAgICAgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICAgICAgICAg
ICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci53YWl0VW50aWxEb25lKCk7CisKKyAgICAgICAgICAg
IGZ1bmN0aW9uIGRpc3BhdGNoV2hlZWxFdmVudCgpCisgICAgICAgICAgICB7CisgICAgICAgICAg
ICAgICAgZG9jdW1lbnQuYm9keS5hZGRFdmVudExpc3RlbmVyKCJtb3VzZXdoZWVsIiwgbW91c2V3
aGVlbEhhbmRsZXIsIGZhbHNlKTsKKworICAgICAgICAgICAgICAgIGlmICh3aW5kb3cuZXZlbnRT
ZW5kZXIpIHsKKyAgICAgICAgICAgICAgICAgICAgZXZlbnRTZW5kZXIubW91c2VNb3ZlVG8oMTAw
LCAxMTApOworICAgICAgICAgICAgICAgICAgICBldmVudFNlbmRlci5jb250aW51b3VzTW91c2VT
Y3JvbGxCeSgtd2luZG93LmdpdmVuU2Nyb2xsTGVmdCwgLXdpbmRvdy5naXZlblNjcm9sbFRvcCwg
dHJ1ZSk7CisgICAgICAgICAgICAgICAgfQorCisgICAgICAgICAgICAgICAgc2V0VGltZW91dCgn
Y2hlY2tPZmZzZXRzKCk7JywgMTAwKTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgZnVu
Y3Rpb24gY2hlY2tPZmZzZXRzKCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBzaG91
bGRCZSgiZG9jdW1lbnQuYm9keS5zY3JvbGxUb3AiLCAid2luZG93LmV4cGVjdGVkU2Nyb2xsVG9w
Iik7CisgICAgICAgICAgICAgICAgc2hvdWxkQmUoImRvY3VtZW50LmJvZHkuc2Nyb2xsTGVmdCIs
ICJ3aW5kb3cuZXhwZWN0ZWRTY3JvbGxMZWZ0Iik7CisKKyAgICAgICAgICAgICAgICBpZiAod2lu
ZG93LmxheW91dFRlc3RDb250cm9sbGVyKQorICAgICAgICAgICAgICAgICAgICB3aW5kb3cubGF5
b3V0VGVzdENvbnRyb2xsZXIubm90aWZ5RG9uZSgpOworICAgICAgICAgICAgfQorCisgICAgICAg
ICAgICBmdW5jdGlvbiBtb3VzZXdoZWVsSGFuZGxlcihlKQorICAgICAgICAgICAgeworCQkJCWV2
ZW50ID0gZTsKKwkJCQlzaG91bGRCZSgiZXZlbnQud2hlZWxEZWx0YVkiLCAid2luZG93LmdpdmVu
U2Nyb2xsVG9wICogLTMiKTsKKwkJCQlzaG91bGRCZSgiZXZlbnQud2hlZWxEZWx0YVgiLCAiMCIp
OworCisJCQkJaWYgKGUud2hlZWxEZWx0YVkpCisJCQkJCXNob3VsZEJlKCJldmVudC53aGVlbERl
bHRhIiwgIndpbmRvdy5naXZlblNjcm9sbFRvcCAqIC0zIik7CisJCQkJZWxzZQorCQkJCQlzaG91
bGRCZSgiZXZlbnQud2hlZWxEZWx0YSIsICIwIik7CisgICAgICAgICAgICB9CisgICAgICAgIDwv
c2NyaXB0PgorICAgIDwvaGVhZD4KKworICAgIDxib2R5IHN0eWxlPSJtYXJnaW46MCIgb25sb2Fk
PSJzZXRUaW1lb3V0KCdkaXNwYXRjaFdoZWVsRXZlbnQoKTsnLCAxMDApIj4KKyAgICAgICAgPGRp
diBzdHlsZT0iaGVpZ2h0OjIwMHB4O3dpZHRoOjI0MDBweCI+CisgICAgICAgICAgPGRpdiBzdHls
ZT0iYmFja2dyb3VuZC1jb2xvcjpyZWQ7aGVpZ2h0OjIwMHB4O3dpZHRoOjEyMDBweDtwb3NpdGlv
bjpyZWxhdGl2ZTtsZWZ0OjBweDt0b3A6MHB4Ij48L2Rpdj4KKyAgICAgICAgICA8ZGl2IHN0eWxl
PSJiYWNrZ3JvdW5kLWNvbG9yOmdyZWVuO2hlaWdodDoyMDBweDt3aWR0aDoxMjAwcHg7cG9zaXRp
b246cmVsYXRpdmU7bGVmdDoxMjAwcHg7dG9wOi0yMDBweCI+PC9kaXY+CisgICAgICAgIDwvZGl2
PgorICAgICAgICA8ZGl2IHN0eWxlPSJoZWlnaHQ6MjAwcHg7d2lkdGg6MjQwMHB4Ij4KKyAgICAg
ICAgICA8ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOmJsdWU7aGVpZ2h0OjIwMHB4O3dpZHRo
OjEyMDBweDtwb3NpdGlvbjpyZWxhdGl2ZTtsZWZ0OjBweDt0b3A6MHB4Ij48L2Rpdj4KKyAgICAg
ICAgICA8ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnllbGxvdztoZWlnaHQ6MjAwcHg7d2lk
dGg6MTIwMHB4O3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6MTIwMHB4O3RvcDotMjAwcHgiPjwvZGl2
PgorICAgICAgICA8L2Rpdj4KKyAgICAgICAgPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+CisgICAg
PC9ib2R5PgorPC9odG1sPgoKUHJvcGVydHkgY2hhbmdlcyBvbjogTGF5b3V0VGVzdHMvZmFzdC9l
dmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteS1pbi1ub24tc2Nyb2xsaW5nLXBhZ2Uu
aHRtbApfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fCkFkZGVkOiBzdm46ZW9sLXN0eWxlCiAgICsgTEYKCkluZGV4OiBMYXlv
dXRUZXN0cy9mYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy15LWluLXNjcm9s
bGluZy1kaXYtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZXZl
bnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXktaW4tc2Nyb2xsaW5nLWRpdi1leHBlY3Rl
ZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9wbGF0Zm9ybS13
aGVlbGV2ZW50LXBhZ2luZy15LWluLXNjcm9sbGluZy1kaXYtZXhwZWN0ZWQudHh0CShyZXZpc2lv
biAwKQpAQCAtMCwwICsxLDYgQEAKK1BBU1MgZXZlbnQud2hlZWxEZWx0YVkgaXMgd2luZG93Lmdp
dmVuU2Nyb2xsVG9wICogLTMKK1BBU1MgZXZlbnQud2hlZWxEZWx0YVggaXMgMAorUEFTUyBldmVu
dC53aGVlbERlbHRhIGlzIHdpbmRvdy5naXZlblNjcm9sbFRvcCAqIC0zCitQQVNTIGRpdi5zY3Jv
bGxUb3AgaXMgd2luZG93LmV4cGVjdGVkU2Nyb2xsVG9wCitQQVNTIGRpdi5zY3JvbGxMZWZ0IGlz
IHdpbmRvdy5leHBlY3RlZFNjcm9sbExlZnQKKwoKUHJvcGVydHkgY2hhbmdlcyBvbjogTGF5b3V0
VGVzdHMvZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteS1pbi1zY3JvbGxp
bmctZGl2LWV4cGVjdGVkLnR4dApfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkFkZGVkOiBzdm46ZW9sLXN0eWxlCiAgICsg
TEYKCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBh
Z2luZy15LWluLXNjcm9sbGluZy1kaXYuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9m
YXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy15LWluLXNjcm9sbGluZy1kaXYu
aHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3BsYXRmb3JtLXdo
ZWVsZXZlbnQtcGFnaW5nLXktaW4tc2Nyb2xsaW5nLWRpdi5odG1sCShyZXZpc2lvbiAwKQpAQCAt
MCwwICsxLDcxIEBACis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPGxpbmsgcmVsPSJzdHls
ZXNoZWV0IiBocmVmPSIuLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorICAgICAg
ICA8c2NyaXB0IHNyYz0iLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4K
KyAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIHZhciBnaXZlblNjcm9sbFRvcCA9IDI7Cisg
ICAgICAgICAgICB2YXIgZ2l2ZW5TY3JvbGxMZWZ0ID0gMDsKKyAgICAgICAgICAgIHZhciBleHBl
Y3RlZFNjcm9sbFRvcCA9IDMyMjsgLy8gMiBwYWdlcywgMTYxICogMiwgc2VlIGNvbW1lbnQgaW4g
SFRNTCBiZWxvdy4KKyAgICAgICAgICAgIHZhciBleHBlY3RlZFNjcm9sbExlZnQgPSAwOworICAg
ICAgICAgICAgdmFyIGV2ZW50OworICAgICAgICAgICAgdmFyIGRpdjsKKworICAgICAgICAgICAg
aWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICAgICAgICAgICAgICBsYXlvdXRU
ZXN0Q29udHJvbGxlci53YWl0VW50aWxEb25lKCk7CisKKyAgICAgICAgICAgIGZ1bmN0aW9uIGRp
c3BhdGNoV2hlZWxFdmVudCgpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgdmFyIG92
ZXJmbG93RWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJvdmVyZmxvdyIpOworICAg
ICAgICAgICAgICAgIGlmIChvdmVyZmxvd0VsZW1lbnQpCisgICAgICAgICAgICAgICAgICAgIG92
ZXJmbG93RWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCJtb3VzZXdoZWVsIiwgbW91c2V3aGVlbEhh
bmRsZXIsIGZhbHNlKTsKKworICAgICAgICAgICAgICAgIGlmICh3aW5kb3cuZXZlbnRTZW5kZXIp
IHsKKyAgICAgICAgICAgICAgICAgICAgZXZlbnRTZW5kZXIubW91c2VNb3ZlVG8oMTAwLCAxMTAp
OworICAgICAgICAgICAgICAgICAgICBldmVudFNlbmRlci5jb250aW51b3VzTW91c2VTY3JvbGxC
eSgtd2luZG93LmdpdmVuU2Nyb2xsTGVmdCwgLXdpbmRvdy5naXZlblNjcm9sbFRvcCwgdHJ1ZSk7
CisgICAgICAgICAgICAgICAgfQorCisgICAgICAgICAgICAgICAgc2V0VGltZW91dCgnY2hlY2tP
ZmZzZXRzKCk7JywgMTAwKTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgZnVuY3Rpb24g
Y2hlY2tPZmZzZXRzKCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBkaXYgPSBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgib3ZlcmZsb3ciKTsKKyAgICAgICAgICAgICAgICBzaG91bGRC
ZSgiZGl2LnNjcm9sbFRvcCIsICJ3aW5kb3cuZXhwZWN0ZWRTY3JvbGxUb3AiKTsKKyAgICAgICAg
ICAgICAgICBzaG91bGRCZSgiZGl2LnNjcm9sbExlZnQiLCAid2luZG93LmV4cGVjdGVkU2Nyb2xs
TGVmdCIpOworCisgICAgICAgICAgICAgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxl
cikKKyAgICAgICAgICAgICAgICAgICAgd2luZG93LmxheW91dFRlc3RDb250cm9sbGVyLm5vdGlm
eURvbmUoKTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgZnVuY3Rpb24gbW91c2V3aGVl
bEhhbmRsZXIoZSkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBldmVudCA9IGU7Cisg
ICAgICAgICAgICAgICAgc2hvdWxkQmUoImV2ZW50LndoZWVsRGVsdGFZIiwgIndpbmRvdy5naXZl
blNjcm9sbFRvcCAqIC0zIik7CisgICAgICAgICAgICAgICAgc2hvdWxkQmUoImV2ZW50LndoZWVs
RGVsdGFYIiwgIjAiKTsKKworICAgICAgICAgICAgICAgIGlmIChlLndoZWVsRGVsdGFZKQorICAg
ICAgICAgICAgICAgICAgICBzaG91bGRCZSgiZXZlbnQud2hlZWxEZWx0YSIsICJ3aW5kb3cuZ2l2
ZW5TY3JvbGxUb3AgKiAtMyIpOworICAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAg
ICAgICAgc2hvdWxkQmUoImV2ZW50LndoZWVsRGVsdGEiLCAiMCIpOworICAgICAgICAgICAgfQor
ICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisKKyAgICA8Ym9keSBzdHlsZT0ibWFyZ2lu
OjAiIG9ubG9hZD0ic2V0VGltZW91dCgnZGlzcGF0Y2hXaGVlbEV2ZW50KCk7JywgMTAwKSI+Cisg
ICAgICAgIDwhLS0gVGhpcyBkaXYgaXMgMjAwIHBpeGVscyBoaWdoLiBUaGUgY29udGVudCByZXN1
bHRzIGluIHNjcm9vbCBiYXJzIG9uCisgICAgICAgICAgYm90aCBlZGdlcywgcmVzdWx0aW5nIGlu
IGFuIGVmZmVjdGl2ZSBjb250ZW50IGFyZWEgb2YgMTg1IHggMTg1IG9uCisgICAgICAgICAgbGlu
dXguIFRoZSBwYWdpbmcgY29udGV4dCBvdmVybGFwIGlzIDI0IHBpeGVscy4gU28gb25lIHBhZ2Ug
b2Ygc2Nyb2xsCisgICAgICAgICAgbW92ZXMgdGhlIGNvbnRlbnQgYnkgMTg1IC0gMjQgLT0gMTYx
IHBpeGVscy4gLS0+CisgICAgICAgIDxkaXYgaWQ9Im92ZXJmbG93IiBzdHlsZT0iYm9yZGVyOjJw
eCBzb2xpZCBibGFjaztvdmVyZmxvdzphdXRvO2hlaWdodDoyMDBweDt3aWR0aDoyMDBweDsiPgor
ICAgICAgICAgICAgPGRpdiBzdHlsZT0iaGVpZ2h0OjMwMHB4O3dpZHRoOjYwMHB4Ij4KKyAgICAg
ICAgICAgICAgPGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjpyZWQ7aGVpZ2h0OjMwMHB4O3dp
ZHRoOjMwMHB4O3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6MHB4O3RvcDowcHgiPjwvZGl2PgorICAg
ICAgICAgICAgICA8ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOmdyZWVuO2hlaWdodDozMDBw
eDt3aWR0aDozMDBweDtwb3NpdGlvbjpyZWxhdGl2ZTtsZWZ0OjMwMHB4O3RvcDotMzAwcHgiPjwv
ZGl2PgorICAgICAgICAgICAgPC9kaXY+CisgICAgICAgICAgICA8ZGl2IHN0eWxlPSJoZWlnaHQ6
MzAwcHg7d2lkdGg6NjAwcHgiPgorICAgICAgICAgICAgICA8ZGl2IHN0eWxlPSJiYWNrZ3JvdW5k
LWNvbG9yOmJsdWU7aGVpZ2h0OjMwMHB4O3dpZHRoOjMwMHB4O3Bvc2l0aW9uOnJlbGF0aXZlO2xl
ZnQ6MHB4O3RvcDowcHgiPjwvZGl2PgorICAgICAgICAgICAgICA8ZGl2IHN0eWxlPSJiYWNrZ3Jv
dW5kLWNvbG9yOnllbGxvdztoZWlnaHQ6MzAwcHg7d2lkdGg6MzAwcHg7cG9zaXRpb246cmVsYXRp
dmU7bGVmdDozMDBweDt0b3A6LTMwMHB4Ij48L2Rpdj4KKyAgICAgICAgICAgIDwvZGl2PgorICAg
ICAgICA8L2Rpdj4KKyAgICAgICAgPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+CisgICAgPC9ib2R5
PgorPC9odG1sPgoKUHJvcGVydHkgY2hhbmdlcyBvbjogTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMv
cGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteS1pbi1zY3JvbGxpbmctZGl2Lmh0bWwKX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fXwpBZGRlZDogc3ZuOmV4ZWN1dGFibGUKICAgKyAqCkFkZGVkOiBzdm46ZW9sLXN0eWxlCiAg
ICsgTEYKCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50
LXBhZ2luZy15LWluLXNjcm9sbGluZy1wYWdlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBM
YXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy15LWluLXNj
cm9sbGluZy1wYWdlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2Zh
c3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXktaW4tc2Nyb2xsaW5nLXBhZ2Ut
ZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDYgQEAKK1BBU1MgZXZlbnQud2hl
ZWxEZWx0YVkgaXMgd2luZG93LmdpdmVuU2Nyb2xsVG9wICogLTMKK1BBU1MgZXZlbnQud2hlZWxE
ZWx0YVggaXMgMAorUEFTUyBldmVudC53aGVlbERlbHRhIGlzIHdpbmRvdy5naXZlblNjcm9sbFRv
cCAqIC0zCitQQVNTIGRvY3VtZW50LmJvZHkuc2Nyb2xsVG9wIGlzIHdpbmRvdy5leHBlY3RlZFNj
cm9sbFRvcAorUEFTUyBkb2N1bWVudC5ib2R5LnNjcm9sbExlZnQgaXMgd2luZG93LmV4cGVjdGVk
U2Nyb2xsTGVmdAorCgpQcm9wZXJ0eSBjaGFuZ2VzIG9uOiBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50
cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy15LWluLXNjcm9sbGluZy1wYWdlLWV4cGVjdGVk
LnR4dApfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fCkFkZGVkOiBzdm46ZW9sLXN0eWxlCiAgICsgTEYKCkluZGV4OiBMYXlv
dXRUZXN0cy9mYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy15LWluLXNjcm9s
bGluZy1wYWdlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcGxh
dGZvcm0td2hlZWxldmVudC1wYWdpbmcteS1pbi1zY3JvbGxpbmctcGFnZS5odG1sCShyZXZpc2lv
biAwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdp
bmcteS1pbi1zY3JvbGxpbmctcGFnZS5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDYyIEBA
Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVm
PSIuLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorICAgICAgICA8c2NyaXB0IHNy
Yz0iLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNj
cmlwdD4KKyAgICAgICAgICAgIHZhciBnaXZlblNjcm9sbFRvcCA9IDI7IC8vIE9ubHkgcGFnZSBp
cyBzY3JvbGxlZCBwZXIgZXZlbnQsIHJlZ2FyZGxlc3Mgb2YgdGhpcyBudW1iZXIuCisgICAgICAg
ICAgICB2YXIgZ2l2ZW5TY3JvbGxMZWZ0ID0gMDsKKyAgICAgICAgICAgIHZhciBleHBlY3RlZFNj
cm9sbFRvcCA9IDUyNTsgLy8gV2luZG93IGlzIDgwMHg2MDAuIFNjcm9sbCA4Ny41JSBvZiB2aXNp
YmxlLgorICAgICAgICAgICAgdmFyIGV4cGVjdGVkU2Nyb2xsTGVmdCA9IDA7CisgICAgICAgICAg
ICB2YXIgZXZlbnQ7CisgICAgICAgICAgICB2YXIgZGl2OworCisgICAgICAgICAgICBpZiAod2lu
ZG93LmxheW91dFRlc3RDb250cm9sbGVyKQorICAgICAgICAgICAgICAgIGxheW91dFRlc3RDb250
cm9sbGVyLndhaXRVbnRpbERvbmUoKTsKKworICAgICAgICAgICAgZnVuY3Rpb24gZGlzcGF0Y2hX
aGVlbEV2ZW50KCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBkb2N1bWVudC5ib2R5
LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNld2hlZWwiLCBtb3VzZXdoZWVsSGFuZGxlciwgZmFsc2Up
OworCisgICAgICAgICAgICAgICAgaWYgKHdpbmRvdy5ldmVudFNlbmRlcikgeworICAgICAgICAg
ICAgICAgICAgICBldmVudFNlbmRlci5tb3VzZU1vdmVUbygxMDAsIDExMCk7CisgICAgICAgICAg
ICAgICAgICAgIGV2ZW50U2VuZGVyLmNvbnRpbnVvdXNNb3VzZVNjcm9sbEJ5KC13aW5kb3cuZ2l2
ZW5TY3JvbGxMZWZ0LCAtd2luZG93LmdpdmVuU2Nyb2xsVG9wLCB0cnVlKTsKKyAgICAgICAgICAg
ICAgICB9CisKKyAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCdjaGVja09mZnNldHMoKTsnLCAx
MDApOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICBmdW5jdGlvbiBjaGVja09mZnNldHMo
KQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIHNob3VsZEJlKCJkb2N1bWVudC5ib2R5
LnNjcm9sbFRvcCIsICJ3aW5kb3cuZXhwZWN0ZWRTY3JvbGxUb3AiKTsKKyAgICAgICAgICAgICAg
ICBzaG91bGRCZSgiZG9jdW1lbnQuYm9keS5zY3JvbGxMZWZ0IiwgIndpbmRvdy5leHBlY3RlZFNj
cm9sbExlZnQiKTsKKworICAgICAgICAgICAgICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRy
b2xsZXIpCisgICAgICAgICAgICAgICAgICAgIHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlci5u
b3RpZnlEb25lKCk7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIGZ1bmN0aW9uIG1vdXNl
d2hlZWxIYW5kbGVyKGUpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgZXZlbnQgPSBl
OworICAgICAgICAgICAgICAgIHNob3VsZEJlKCJldmVudC53aGVlbERlbHRhWSIsICJ3aW5kb3cu
Z2l2ZW5TY3JvbGxUb3AgKiAtMyIpOworICAgICAgICAgICAgICAgIHNob3VsZEJlKCJldmVudC53
aGVlbERlbHRhWCIsICIwIik7CisKKyAgICAgICAgICAgICAgICBpZiAoZS53aGVlbERlbHRhWSkK
KyAgICAgICAgICAgICAgICAgICAgc2hvdWxkQmUoImV2ZW50LndoZWVsRGVsdGEiLCAid2luZG93
LmdpdmVuU2Nyb2xsVG9wICogLTMiKTsKKyAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAg
ICAgICAgICAgIHNob3VsZEJlKCJldmVudC53aGVlbERlbHRhIiwgIjAiKTsKKyAgICAgICAgICAg
IH0KKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9oZWFkPgorCisgICAgPGJvZHkgc3R5bGU9Im1h
cmdpbjowIiBvbmxvYWQ9InNldFRpbWVvdXQoJ2Rpc3BhdGNoV2hlZWxFdmVudCgpOycsIDEwMCki
PgorICAgICAgICA8ZGl2IHN0eWxlPSJoZWlnaHQ6OTAwcHg7d2lkdGg6NDAwcHgiPgorICAgICAg
ICAgIDxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6cmVkO2hlaWdodDo5MDBweDt3aWR0aDoy
MDBweDtwb3NpdGlvbjpyZWxhdGl2ZTtsZWZ0OjBweDt0b3A6MHB4Ij48L2Rpdj4KKyAgICAgICAg
ICA8ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOmdyZWVuO2hlaWdodDo5MDBweDt3aWR0aDoy
MDBweDtwb3NpdGlvbjpyZWxhdGl2ZTtsZWZ0OjIwMHB4O3RvcDotOTAwcHgiPjwvZGl2PgorICAg
ICAgICA8L2Rpdj4KKyAgICAgICAgPGRpdiBzdHlsZT0iaGVpZ2h0OjkwMHB4O3dpZHRoOjQwMHB4
Ij4KKyAgICAgICAgICA8ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOmJsdWU7aGVpZ2h0Ojkw
MHB4O3dpZHRoOjIwMHB4O3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6MHB4O3RvcDowcHgiPjwvZGl2
PgorICAgICAgICAgIDxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6eWVsbG93O2hlaWdodDo5
MDBweDt3aWR0aDoyMDBweDtwb3NpdGlvbjpyZWxhdGl2ZTtsZWZ0OjIwMHB4O3RvcDotOTAwcHgi
PjwvZGl2PgorICAgICAgICA8L2Rpdj4KKyAgICAgICAgPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+
CisgICAgPC9ib2R5PgorPC9odG1sPgoKUHJvcGVydHkgY2hhbmdlcyBvbjogTGF5b3V0VGVzdHMv
ZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteS1pbi1zY3JvbGxpbmctcGFn
ZS5odG1sCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX18KQWRkZWQ6IHN2bjplb2wtc3R5bGUKICAgKyBMRgoKSW5kZXg6IExh
eW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtLW1hYy9mYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVl
bGV2ZW50LXBhZ2luZy14LWluLXNjcm9sbGluZy1wYWdlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS1tYWMvZmFzdC9ldmVudHMvcGxhdGZv
cm0td2hlZWxldmVudC1wYWdpbmcteC1pbi1zY3JvbGxpbmctcGFnZS1leHBlY3RlZC50eHQJKHJl
dmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS1tYWMvZmFzdC9ldmVu
dHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteC1pbi1zY3JvbGxpbmctcGFnZS1leHBlY3Rl
ZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNiBAQAorUEFTUyBldmVudC53aGVlbERlbHRh
WSBpcyAwCitQQVNTIGV2ZW50LndoZWVsRGVsdGFYIGlzIHdpbmRvdy5naXZlblNjcm9sbExlZnQg
KiAtMworUEFTUyBldmVudC53aGVlbERlbHRhIGlzIHdpbmRvdy5naXZlblNjcm9sbExlZnQgKiAt
MworUEFTUyBkb2N1bWVudC5ib2R5LnNjcm9sbFRvcCBpcyB3aW5kb3cuZXhwZWN0ZWRTY3JvbGxU
b3AKK0ZBSUwgZG9jdW1lbnQuYm9keS5zY3JvbGxMZWZ0IHNob3VsZCBiZSA3MDAuIFdhcyA3NjAu
CisKClByb3BlcnR5IGNoYW5nZXMgb246IExheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtLW1h
Yy9mYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy14LWluLXNjcm9sbGluZy1w
YWdlLWV4cGVjdGVkLnR4dApfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fCkFkZGVkOiBzdm46ZW9sLXN0eWxlCiAgICsgTEYK
CkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS1tYWMvZmFzdC9ldmVudHMvcGxh
dGZvcm0td2hlZWxldmVudC1wYWdpbmcteHktaW4tc2Nyb2xsaW5nLXBhZ2UtZXhwZWN0ZWQudHh0
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtLW1hYy9mYXN0L2V2
ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy14eS1pbi1zY3JvbGxpbmctcGFnZS1leHBl
Y3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS1t
YWMvZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteHktaW4tc2Nyb2xsaW5n
LXBhZ2UtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDYgQEAKK1BBU1MgZXZl
bnQud2hlZWxEZWx0YVkgaXMgd2luZG93LmdpdmVuU2Nyb2xsVG9wICogLTMKK1BBU1MgZXZlbnQu
d2hlZWxEZWx0YVggaXMgd2luZG93LmdpdmVuU2Nyb2xsTGVmdCAqIC0zCitQQVNTIGV2ZW50Lndo
ZWVsRGVsdGEgaXMgd2luZG93LmdpdmVuU2Nyb2xsVG9wICogLTMKK0ZBSUwgZG9jdW1lbnQuYm9k
eS5zY3JvbGxUb3Agc2hvdWxkIGJlIDUxMS4gV2FzIDU0NS4KK0ZBSUwgZG9jdW1lbnQuYm9keS5z
Y3JvbGxMZWZ0IHNob3VsZCBiZSA2ODYuIFdhcyA3NDUuCisKClByb3BlcnR5IGNoYW5nZXMgb246
IExheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtLW1hYy9mYXN0L2V2ZW50cy9wbGF0Zm9ybS13
aGVlbGV2ZW50LXBhZ2luZy14eS1pbi1zY3JvbGxpbmctcGFnZS1leHBlY3RlZC50eHQKX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fXwpBZGRlZDogc3ZuOmVvbC1zdHlsZQogICArIExGCgpJbmRleDogTGF5b3V0VGVzdHMvcGxh
dGZvcm0vY2hyb21pdW0tbWFjL2Zhc3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5n
LXktaW4tc2Nyb2xsaW5nLXBhZ2UtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL3BsYXRmb3JtL2Nocm9taXVtLW1hYy9mYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50
LXBhZ2luZy15LWluLXNjcm9sbGluZy1wYWdlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysr
IExheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtLW1hYy9mYXN0L2V2ZW50cy9wbGF0Zm9ybS13
aGVlbGV2ZW50LXBhZ2luZy15LWluLXNjcm9sbGluZy1wYWdlLWV4cGVjdGVkLnR4dAkocmV2aXNp
b24gMCkKQEAgLTAsMCArMSw2IEBACitQQVNTIGV2ZW50LndoZWVsRGVsdGFZIGlzIHdpbmRvdy5n
aXZlblNjcm9sbFRvcCAqIC0zCitQQVNTIGV2ZW50LndoZWVsRGVsdGFYIGlzIDAKK1BBU1MgZXZl
bnQud2hlZWxEZWx0YSBpcyB3aW5kb3cuZ2l2ZW5TY3JvbGxUb3AgKiAtMworRkFJTCBkb2N1bWVu
dC5ib2R5LnNjcm9sbFRvcCBzaG91bGQgYmUgNTI1LiBXYXMgNTYwLgorUEFTUyBkb2N1bWVudC5i
b2R5LnNjcm9sbExlZnQgaXMgd2luZG93LmV4cGVjdGVkU2Nyb2xsTGVmdAorCgpQcm9wZXJ0eSBj
aGFuZ2VzIG9uOiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS1tYWMvZmFzdC9ldmVudHMv
cGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteS1pbi1zY3JvbGxpbmctcGFnZS1leHBlY3RlZC50
eHQKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fXwpBZGRlZDogc3ZuOmVvbC1zdHlsZQogICArIExGCgpJbmRleDogTGF5b3V0
VGVzdHMvcGxhdGZvcm0vbWFjL1NraXBwZWQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxh
dGZvcm0vbWFjL1NraXBwZWQJKHJldmlzaW9uIDk5MzMyKQorKysgTGF5b3V0VGVzdHMvcGxhdGZv
cm0vbWFjL1NraXBwZWQJKHdvcmtpbmcgY29weSkKQEAgLTQ2Niw2ICs0NjYsMTggQEAgaHR0cC90
ZXN0cy9oaXN0b3J5L2JhY2std2l0aC1mcmFnbWVudC1jaAogZmFzdC9jc3Mvd2Via2l0LW1hc2st
Y3Jhc2gtZmllbGRzZXQtbGVnZW5kLmh0bWwKIGZhc3QvY3NzL3dlYmtpdC1tYXNrLWNyYXNoLXRh
YmxlLmh0bWwKIAorIyBTa2lwIGJlY2F1c2UgdGhpcyBwbGF0Zm9ybSBkb2VzIG5vdCBzdXBwb3J0
IGEgcGFnaW5nIG1vdXNlIHdoZWVsIGV2ZW50CitmYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2
ZW50LXBhZ2luZy14LWluLW5vbi1zY3JvbGxpbmctZGl2Lmh0bWwKK2Zhc3QvZXZlbnRzL3BsYXRm
b3JtLXdoZWVsZXZlbnQtcGFnaW5nLXgtaW4tbm9uLXNjcm9sbGluZy1wYWdlLmh0bWwKK2Zhc3Qv
ZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXgtaW4tc2Nyb2xsaW5nLWRpdi5odG1s
CitmYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy14LWluLXNjcm9sbGluZy1w
YWdlLmh0bWwKK2Zhc3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXh5LWluLXNj
cm9sbGluZy1kaXYuaHRtbAorZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmct
eHktaW4tc2Nyb2xsaW5nLXBhZ2UuaHRtbAorZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVu
dC1wYWdpbmcteS1pbi1ub24tc2Nyb2xsaW5nLWRpdi5odG1sCitmYXN0L2V2ZW50cy9wbGF0Zm9y
bS13aGVlbGV2ZW50LXBhZ2luZy15LWluLW5vbi1zY3JvbGxpbmctcGFnZS5odG1sCitmYXN0L2V2
ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy15LWluLXNjcm9sbGluZy1kaXYuaHRtbAor
ZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteS1pbi1zY3JvbGxpbmctcGFn
ZS5odG1sCisKICMgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTcwOTg5
CiBmYXN0L2NhbnZhcy93ZWJnbC9hdHRyaWItbG9jYXRpb24tbGVuZ3RoLWxpbWl0cy5odG1sCiBm
YXN0L2NhbnZhcy93ZWJnbC91bmlmb3JtLWxvY2F0aW9uLWxlbmd0aC1saW1pdHMuaHRtbApJbmRl
eDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1NraXBwZWQKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvcGxhdGZvcm0vd2luL1NraXBwZWQJKHJldmlzaW9uIDk5MzMyKQorKysgTGF5b3V0VGVz
dHMvcGxhdGZvcm0vd2luL1NraXBwZWQJKHdvcmtpbmcgY29weSkKQEAgLTE0MzIsNSArMTQzMiwx
NyBAQCBmYXN0L2RvbS9NaWNyb0RhdGEKICMgSGlEUEkgdGVzdHMgcmVxdWlyZSB0ZXN0IGluZnJh
c3RydWN0dXJlIGVuaGFuY2VtZW50cwogZmFzdC9oaWRwaQogCisjIFNraXAgYmVjYXVzZSB0aGlz
IHBsYXRmb3JtIGRvZXMgbm90IHN1cHBvcnQgYSBwYWdpbmcgbW91c2Ugd2hlZWwgZXZlbnQKK2Zh
c3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXgtaW4tbm9uLXNjcm9sbGluZy1k
aXYuaHRtbAorZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteC1pbi1ub24t
c2Nyb2xsaW5nLXBhZ2UuaHRtbAorZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdp
bmcteC1pbi1zY3JvbGxpbmctZGl2Lmh0bWwKK2Zhc3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZl
bnQtcGFnaW5nLXgtaW4tc2Nyb2xsaW5nLXBhZ2UuaHRtbAorZmFzdC9ldmVudHMvcGxhdGZvcm0t
d2hlZWxldmVudC1wYWdpbmcteHktaW4tc2Nyb2xsaW5nLWRpdi5odG1sCitmYXN0L2V2ZW50cy9w
bGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy14eS1pbi1zY3JvbGxpbmctcGFnZS5odG1sCitmYXN0
L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy15LWluLW5vbi1zY3JvbGxpbmctZGl2
Lmh0bWwKK2Zhc3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5nLXktaW4tbm9uLXNj
cm9sbGluZy1wYWdlLmh0bWwKK2Zhc3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtcGFnaW5n
LXktaW4tc2Nyb2xsaW5nLWRpdi5odG1sCitmYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50
LXBhZ2luZy15LWluLXNjcm9sbGluZy1wYWdlLmh0bWwKKwogIyBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzE1ODEKIGluc3BlY3Rvci9kZWJ1Z2dlci9zY3JpcHQtZm9y
bWF0dGVyLmh0bWwK
</data>

          </attachment>
      

    </bug>

</bugzilla>