<?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>74228</bug_id>
          
          <creation_ts>2011-12-09 16:59:49 -0800</creation_ts>
          <short_desc>Implement GLES2 CheckFramebufferStatus() behavior</short_desc>
          <delta_ts>2011-12-13 12:53:43 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebGL</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Zhenyao Mo">zmo</reporter>
          <assigned_to name="Zhenyao Mo">zmo</assigned_to>
          <cc>cmarrin</cc>
    
    <cc>dglazkov</cc>
    
    <cc>kbr</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>518648</commentid>
    <comment_count>0</comment_count>
    <who name="Zhenyao Mo">zmo</who>
    <bug_when>2011-12-09 16:59:49 -0800</bug_when>
    <thetext>At the moment, we do some partial check, then pass down to the driver&apos;s glCheckFramebufferStatus().  However, desktop gl and gles2&apos;s behaviors are not the same.  So we should do the software check in WebGLRenderingContext.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>518676</commentid>
    <comment_count>1</comment_count>
      <attachid>118671</attachid>
    <who name="Zhenyao Mo">zmo</who>
    <bug_when>2011-12-09 17:30:58 -0800</bug_when>
    <thetext>Created attachment 118671
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>518679</commentid>
    <comment_count>2</comment_count>
    <who name="Zhenyao Mo">zmo</who>
    <bug_when>2011-12-09 17:32:54 -0800</bug_when>
    <thetext>This is an effort to make framebuffer-object-attachment.html pass in webkit/chromium.

Please review.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>518746</commentid>
    <comment_count>3</comment_count>
      <attachid>118671</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-12-09 20:25:35 -0800</bug_when>
    <thetext>Comment on attachment 118671
Patch

Attachment 118671 did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/10833495

New failing tests:
fast/canvas/webgl/framebuffer-object-attachment.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>519383</commentid>
    <comment_count>4</comment_count>
      <attachid>118671</attachid>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2011-12-12 12:45:51 -0800</bug_when>
    <thetext>Comment on attachment 118671
Patch

Looks like this test is still failing with these changes. Marking r- until this is cleared up.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>519400</commentid>
    <comment_count>5</comment_count>
    <who name="Zhenyao Mo">zmo</who>
    <bug_when>2011-12-12 13:10:48 -0800</bug_when>
    <thetext>This failure is due to a bug in mesa library.

I tested chromium with hardware GPU, the test passed fine; then tested with --use-gl=osmesa, the test failed.

I&apos;ll add the test to test_expectations.txt.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>519417</commentid>
    <comment_count>6</comment_count>
      <attachid>118832</attachid>
    <who name="Zhenyao Mo">zmo</who>
    <bug_when>2011-12-12 13:32:01 -0800</bug_when>
    <thetext>Created attachment 118832
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>519783</commentid>
    <comment_count>7</comment_count>
      <attachid>118832</attachid>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2011-12-12 19:06:08 -0800</bug_when>
    <thetext>Comment on attachment 118832
Patch

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

This patch is missing the actual code changes. A couple of minor naming convention issues as well.

&gt; LayoutTests/fast/canvas/webgl/framebuffer-object-attachment.html:28
&gt; +function CheckFramebufferForAllowedStatuses(allowedStatuses)

Naming convention: Check -&gt; check

&gt; LayoutTests/fast/canvas/webgl/framebuffer-object-attachment.html:235
&gt; +function CheckFramebuffer(expected) {

Check -&gt; check</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>520137</commentid>
    <comment_count>8</comment_count>
      <attachid>119029</attachid>
    <who name="Zhenyao Mo">zmo</who>
    <bug_when>2011-12-13 09:49:44 -0800</bug_when>
    <thetext>Created attachment 119029
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>520138</commentid>
    <comment_count>9</comment_count>
    <who name="Zhenyao Mo">zmo</who>
    <bug_when>2011-12-13 09:51:18 -0800</bug_when>
    <thetext>(In reply to comment #7)
&gt; (From update of attachment 118832 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=118832&amp;action=review
&gt; 
&gt; This patch is missing the actual code changes. A couple of minor naming convention issues as well.

Done.  I didn&apos;&apos;t realize webkit-patch upload only deals with the current folder and its sub-folders.  I thought where you run it doesn&apos;t matter.

&gt; 
&gt; &gt; LayoutTests/fast/canvas/webgl/framebuffer-object-attachment.html:28
&gt; &gt; +function CheckFramebufferForAllowedStatuses(allowedStatuses)
&gt; 
&gt; Naming convention: Check -&gt; check

Done in khronos and synced here.

&gt; 
&gt; &gt; LayoutTests/fast/canvas/webgl/framebuffer-object-attachment.html:235
&gt; &gt; +function CheckFramebuffer(expected) {
&gt; 
&gt; Check -&gt; check

Same.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>520167</commentid>
    <comment_count>10</comment_count>
      <attachid>119029</attachid>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2011-12-13 10:36:54 -0800</bug_when>
    <thetext>Comment on attachment 119029
Patch

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

Looks good overall. Couple of minor issues with the ChangeLog that can be fixed upon landing. Please make sure it passes the EWS bots before committing.

&gt; Source/WebCore/ChangeLog:6
&gt; +        * html/canvas/WebGLFramebuffer.cpp:

Missing the &quot;Reviewed by&quot; line.

&gt; LayoutTests/ChangeLog:4
&gt; +        https://bugs.webkit.org/show_bug.cgi?id=74228

Missing &quot;Reviewed by&quot; line.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>520301</commentid>
    <comment_count>11</comment_count>
    <who name="Zhenyao Mo">zmo</who>
    <bug_when>2011-12-13 12:53:43 -0800</bug_when>
    <thetext>Committed r102697: &lt;http://trac.webkit.org/changeset/102697&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>118671</attachid>
            <date>2011-12-09 17:30:58 -0800</date>
            <delta_ts>2011-12-12 13:31:58 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-74228-20111209173057.patch</filename>
            <type>text/plain</type>
            <size>75952</size>
            <attacher name="Zhenyao Mo">zmo</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDEwMjQ5NSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIwIEBACisyMDExLTEyLTA5ICBaaGVueWFv
IE1vICA8em1vQGdvb2dsZS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50IEdMRVMyIENoZWNrRnJh
bWVidWZmZXJTdGF0dXMoKSBiZWhhdmlvcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9NzQyMjgKKworICAgICAgICAqIGh0bWwvY2FudmFzL1dlYkdMRnJh
bWVidWZmZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6V2ViR0xGcmFtZWJ1ZmZlcjo6Z2V0Q29s
b3JCdWZmZXJXaWR0aCk6IEFkZCBDb2xvckJ1ZmZlciB0byB0aGUgZnVuY3Rpb24gbmFtZSAtIHRo
aXMgaXMgbW9yZSBhY2N1cmF0ZS4KKyAgICAgICAgKFdlYkNvcmU6OldlYkdMRnJhbWVidWZmZXI6
OmdldENvbG9yQnVmZmVySGVpZ2h0KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpXZWJHTEZy
YW1lYnVmZmVyOjpjaGVja1N0YXR1cyk6IEltcGxlbWVudCBmdWxsIHNlbWFudGljcyBvZiBHTEVT
MiBnbENoZWNrRnJhbWVidWZmZXJTdGF0dXMoKS4KKyAgICAgICAgKFdlYkNvcmU6OldlYkdMRnJh
bWVidWZmZXI6Om9uQWNjZXNzKTogQ2FsbCBjaGVja1N0YXR1cygpLgorICAgICAgICAqIGh0bWwv
Y2FudmFzL1dlYkdMRnJhbWVidWZmZXIuaDoKKyAgICAgICAgKiBodG1sL2NhbnZhcy9XZWJHTFJl
bmRlcmluZ0NvbnRleHQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6V2ViR0xSZW5kZXJpbmdDb250
ZXh0OjpjaGVja0ZyYW1lYnVmZmVyU3RhdHVzKTogQ2FsbCBjaGVja1N0YXR1cygpLgorICAgICAg
ICAoV2ViQ29yZTo6V2ViR0xSZW5kZXJpbmdDb250ZXh0OjpnZXRGcmFtZWJ1ZmZlckF0dGFjaG1l
bnRQYXJhbWV0ZXIpOiBObyBsb25nZXIgY2hlY2sgZnJhbWVidWZmZXIgc3RhdHVzLgorICAgICAg
ICAoV2ViQ29yZTo6V2ViR0xSZW5kZXJpbmdDb250ZXh0OjpnZXRCb3VuZEZyYW1lYnVmZmVyV2lk
dGgpOiBDYWxsIGdldENvbG9yQnVmZmVyV2lkdGguCisgICAgICAgIChXZWJDb3JlOjpXZWJHTFJl
bmRlcmluZ0NvbnRleHQ6OmdldEJvdW5kRnJhbWVidWZmZXJIZWlnaHQpOiBDYWxsIGdldENvbG9y
QnVmZmVySGVpZ2h0LgorCiAyMDExLTEyLTA5ICBNYXJ5IFd1ICA8bWFyeS53dUB0b3JjaG1vYmls
ZS5jb20uY24+CiAKICAgICAgICAgU21hbGwgc3R5bGUgZml4IG9uIERyYWdEYXRhQmxhY2tCZXJy
eS5jcHAKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMRnJhbWVidWZmZXIu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMRnJhbWVi
dWZmZXIuY3BwCShyZXZpc2lvbiAxMDI0NTgpCisrKyBTb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZh
cy9XZWJHTEZyYW1lYnVmZmVyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzUsMTIgKzM1LDQ3IEBA
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogbmFtZXNwYWNlIHsKIAotICAgIC8vIFRoaXMgZnVuY3Rp
b24gaXMgb25seSBmb3IgZGVwdGgvc3RlbmNpbC9kZXB0aF9zdGVuY2lsIGF0dGFjaG1lbnQuCi0g
ICAgLy8gQ3VycmVudGx5IHdlIGFzc3VtZSB0aGVzZSBhdHRhY2htZW50cyBhcmUgYWxsIHJlbmRl
cmJ1ZmZlcnMuCi0gICAgR0MzRGVudW0gZ2V0SW50ZXJuYWxGb3JtYXQoV2ViR0xPYmplY3QqIGJ1
ZmZlcikKKyAgICBib29sIGlzQXR0YWNobWVudENvbXBsZXRlKFdlYkdMT2JqZWN0KiBhdHRhY2hl
ZE9iamVjdCwgR0MzRGVudW0gYXR0YWNobWVudCkKICAgICB7Ci0gICAgICAgIEFTU0VSVChidWZm
ZXIgJiYgYnVmZmVyLT5pc1JlbmRlcmJ1ZmZlcigpKTsKLSAgICAgICAgcmV0dXJuIChyZWludGVy
cHJldF9jYXN0PFdlYkdMUmVuZGVyYnVmZmVyKj4oYnVmZmVyKSktPmdldEludGVybmFsRm9ybWF0
KCk7CisgICAgICAgIEFTU0VSVChhdHRhY2hlZE9iamVjdCAmJiBhdHRhY2hlZE9iamVjdC0+b2Jq
ZWN0KCkpOworICAgICAgICBBU1NFUlQoYXR0YWNoZWRPYmplY3QtPmlzUmVuZGVyYnVmZmVyKCkp
OworICAgICAgICBXZWJHTFJlbmRlcmJ1ZmZlciogYnVmZmVyID0gcmVpbnRlcnByZXRfY2FzdDxX
ZWJHTFJlbmRlcmJ1ZmZlcio+KGF0dGFjaGVkT2JqZWN0KTsKKyAgICAgICAgc3dpdGNoIChhdHRh
Y2htZW50KSB7CisgICAgICAgIGNhc2UgR3JhcGhpY3NDb250ZXh0M0Q6OkRFUFRIX0FUVEFDSE1F
TlQ6CisgICAgICAgICAgICBpZiAoYnVmZmVyLT5nZXRJbnRlcm5hbEZvcm1hdCgpICE9IEdyYXBo
aWNzQ29udGV4dDNEOjpERVBUSF9DT01QT05FTlQxNikKKyAgICAgICAgICAgICAgICByZXR1cm4g
ZmFsc2U7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSBHcmFwaGljc0NvbnRleHQz
RDo6U1RFTkNJTF9BVFRBQ0hNRU5UOgorICAgICAgICAgICAgaWYgKGJ1ZmZlci0+Z2V0SW50ZXJu
YWxGb3JtYXQoKSAhPSBHcmFwaGljc0NvbnRleHQzRDo6U1RFTkNJTF9JTkRFWDgpCisgICAgICAg
ICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2Ug
R3JhcGhpY3NDb250ZXh0M0Q6OkRFUFRIX1NURU5DSUxfQVRUQUNITUVOVDoKKyAgICAgICAgICAg
IGlmIChidWZmZXItPmdldEludGVybmFsRm9ybWF0KCkgIT0gR3JhcGhpY3NDb250ZXh0M0Q6OkRF
UFRIX1NURU5DSUwpCisgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICAgICAg
YnJlYWs7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQo
KTsKKyAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAgICAgfQorICAgICAgICBpZiAoIWJ1
ZmZlci0+Z2V0V2lkdGgoKSB8fCAhYnVmZmVyLT5nZXRIZWlnaHQoKSkKKyAgICAgICAgICAgIHJl
dHVybiBmYWxzZTsKKyAgICAgICAgcmV0dXJuIHRydWU7CisgICAgfQorCisgICAgR0MzRHNpemVp
IGdldEltYWdlV2lkdGgoV2ViR0xPYmplY3QqIGF0dGFjaGVkT2JqZWN0KQorICAgIHsKKyAgICAg
ICAgQVNTRVJUKGF0dGFjaGVkT2JqZWN0ICYmIGF0dGFjaGVkT2JqZWN0LT5vYmplY3QoKSk7Cisg
ICAgICAgIEFTU0VSVChhdHRhY2hlZE9iamVjdC0+aXNSZW5kZXJidWZmZXIoKSk7CisgICAgICAg
IFdlYkdMUmVuZGVyYnVmZmVyKiBidWZmZXIgPSByZWludGVycHJldF9jYXN0PFdlYkdMUmVuZGVy
YnVmZmVyKj4oYXR0YWNoZWRPYmplY3QpOworICAgICAgICByZXR1cm4gYnVmZmVyLT5nZXRXaWR0
aCgpOworICAgIH0KKworICAgIEdDM0RzaXplaSBnZXRJbWFnZUhlaWdodChXZWJHTE9iamVjdCog
YXR0YWNoZWRPYmplY3QpCisgICAgeworICAgICAgICBBU1NFUlQoYXR0YWNoZWRPYmplY3QgJiYg
YXR0YWNoZWRPYmplY3QtPm9iamVjdCgpKTsKKyAgICAgICAgQVNTRVJUKGF0dGFjaGVkT2JqZWN0
LT5pc1JlbmRlcmJ1ZmZlcigpKTsKKyAgICAgICAgV2ViR0xSZW5kZXJidWZmZXIqIGJ1ZmZlciA9
IHJlaW50ZXJwcmV0X2Nhc3Q8V2ViR0xSZW5kZXJidWZmZXIqPihhdHRhY2hlZE9iamVjdCk7Cisg
ICAgICAgIHJldHVybiBidWZmZXItPmdldEhlaWdodCgpOwogICAgIH0KIAogICAgIGJvb2wgaXNV
bmluaXRpYWxpemVkKFdlYkdMT2JqZWN0KiBhdHRhY2hlZE9iamVjdCkKQEAgLTE2OCw3ICsyMDMs
NyBAQCB2b2lkIFdlYkdMRnJhbWVidWZmZXI6OnJlbW92ZUF0dGFjaG1lbnQoCiAgICAgICAgIHJl
dHVybjsKIH0KIAotR0MzRHNpemVpIFdlYkdMRnJhbWVidWZmZXI6OmdldFdpZHRoKCkgY29uc3QK
K0dDM0RzaXplaSBXZWJHTEZyYW1lYnVmZmVyOjpnZXRDb2xvckJ1ZmZlcldpZHRoKCkgY29uc3QK
IHsKICAgICBpZiAoIW9iamVjdCgpIHx8ICFpc0NvbG9yQXR0YWNoZWQoKSkKICAgICAgICAgcmV0
dXJuIDA7CkBAIC0xODAsNyArMjE1LDcgQEAgR0MzRHNpemVpIFdlYkdMRnJhbWVidWZmZXI6Omdl
dFdpZHRoKCkgYwogICAgIHJldHVybiAwOwogfQogCi1HQzNEc2l6ZWkgV2ViR0xGcmFtZWJ1ZmZl
cjo6Z2V0SGVpZ2h0KCkgY29uc3QKK0dDM0RzaXplaSBXZWJHTEZyYW1lYnVmZmVyOjpnZXRDb2xv
ckJ1ZmZlckhlaWdodCgpIGNvbnN0CiB7CiAgICAgaWYgKCFvYmplY3QoKSB8fCAhaXNDb2xvckF0
dGFjaGVkKCkpCiAgICAgICAgIHJldHVybiAwOwpAQCAtMjEzLDM0ICsyNDgsNjcgQEAgR0MzRGVu
dW0gV2ViR0xGcmFtZWJ1ZmZlcjo6Z2V0Q29sb3JCdWZmZQogICAgIHJldHVybiAwOwogfQogCi1i
b29sIFdlYkdMRnJhbWVidWZmZXI6OmlzSW5jb21wbGV0ZShib29sIGNoZWNrSW50ZXJuYWxGb3Jt
YXQpIGNvbnN0CitHQzNEZW51bSBXZWJHTEZyYW1lYnVmZmVyOjpjaGVja1N0YXR1cygpIGNvbnN0
CiB7CiAgICAgdW5zaWduZWQgaW50IGNvdW50ID0gMDsKKyAgICBHQzNEc2l6ZWkgd2lkdGggPSAw
LCBoZWlnaHQgPSAwOwogICAgIGlmIChpc0RlcHRoQXR0YWNoZWQoKSkgewotICAgICAgICBpZiAo
Y2hlY2tJbnRlcm5hbEZvcm1hdCAmJiBnZXRJbnRlcm5hbEZvcm1hdChtX2RlcHRoQXR0YWNobWVu
dC5nZXQoKSkgIT0gR3JhcGhpY3NDb250ZXh0M0Q6OkRFUFRIX0NPTVBPTkVOVDE2KQotICAgICAg
ICAgICAgcmV0dXJuIHRydWU7CisgICAgICAgIGlmICghaXNBdHRhY2htZW50Q29tcGxldGUobV9k
ZXB0aEF0dGFjaG1lbnQuZ2V0KCksIEdyYXBoaWNzQ29udGV4dDNEOjpERVBUSF9BVFRBQ0hNRU5U
KSkKKyAgICAgICAgICAgIHJldHVybiBHcmFwaGljc0NvbnRleHQzRDo6RlJBTUVCVUZGRVJfSU5D
T01QTEVURV9BVFRBQ0hNRU5UOworICAgICAgICB3aWR0aCA9IGdldEltYWdlV2lkdGgobV9kZXB0
aEF0dGFjaG1lbnQuZ2V0KCkpOworICAgICAgICBoZWlnaHQgPSBnZXRJbWFnZUhlaWdodChtX2Rl
cHRoQXR0YWNobWVudC5nZXQoKSk7CiAgICAgICAgIGNvdW50Kys7CiAgICAgfQogICAgIGlmIChp
c1N0ZW5jaWxBdHRhY2hlZCgpKSB7Ci0gICAgICAgIGlmIChjaGVja0ludGVybmFsRm9ybWF0ICYm
IGdldEludGVybmFsRm9ybWF0KG1fc3RlbmNpbEF0dGFjaG1lbnQuZ2V0KCkpICE9IEdyYXBoaWNz
Q29udGV4dDNEOjpTVEVOQ0lMX0lOREVYOCkKLSAgICAgICAgICAgIHJldHVybiB0cnVlOworICAg
ICAgICBpZiAoIWlzQXR0YWNobWVudENvbXBsZXRlKG1fc3RlbmNpbEF0dGFjaG1lbnQuZ2V0KCks
IEdyYXBoaWNzQ29udGV4dDNEOjpTVEVOQ0lMX0FUVEFDSE1FTlQpKQorICAgICAgICAgICAgcmV0
dXJuIEdyYXBoaWNzQ29udGV4dDNEOjpGUkFNRUJVRkZFUl9JTkNPTVBMRVRFX0FUVEFDSE1FTlQ7
CisgICAgICAgIGlmICghY291bnQpIHsKKyAgICAgICAgICAgIHdpZHRoID0gZ2V0SW1hZ2VXaWR0
aChtX3N0ZW5jaWxBdHRhY2htZW50LmdldCgpKTsKKyAgICAgICAgICAgIGhlaWdodCA9IGdldElt
YWdlSGVpZ2h0KG1fc3RlbmNpbEF0dGFjaG1lbnQuZ2V0KCkpOworICAgICAgICB9IGVsc2Ugewor
ICAgICAgICAgICAgaWYgKHdpZHRoICE9IGdldEltYWdlV2lkdGgobV9zdGVuY2lsQXR0YWNobWVu
dC5nZXQoKSkgfHwgaGVpZ2h0ICE9IGdldEltYWdlSGVpZ2h0KG1fc3RlbmNpbEF0dGFjaG1lbnQu
Z2V0KCkpKQorICAgICAgICAgICAgICAgIHJldHVybiBHcmFwaGljc0NvbnRleHQzRDo6RlJBTUVC
VUZGRVJfSU5DT01QTEVURV9ESU1FTlNJT05TOworICAgICAgICB9CiAgICAgICAgIGNvdW50Kys7
CiAgICAgfQogICAgIGlmIChpc0RlcHRoU3RlbmNpbEF0dGFjaGVkKCkpIHsKLSAgICAgICAgaWYg
KGNoZWNrSW50ZXJuYWxGb3JtYXQgJiYgZ2V0SW50ZXJuYWxGb3JtYXQobV9kZXB0aFN0ZW5jaWxB
dHRhY2htZW50LmdldCgpKSAhPSBHcmFwaGljc0NvbnRleHQzRDo6REVQVEhfU1RFTkNJTCkKLSAg
ICAgICAgICAgIHJldHVybiB0cnVlOworICAgICAgICBpZiAoIWlzQXR0YWNobWVudENvbXBsZXRl
KG1fZGVwdGhTdGVuY2lsQXR0YWNobWVudC5nZXQoKSwgR3JhcGhpY3NDb250ZXh0M0Q6OkRFUFRI
X1NURU5DSUxfQVRUQUNITUVOVCkpCisgICAgICAgICAgICByZXR1cm4gR3JhcGhpY3NDb250ZXh0
M0Q6OkZSQU1FQlVGRkVSX0lOQ09NUExFVEVfQVRUQUNITUVOVDsKICAgICAgICAgaWYgKCFpc1Zh
bGlkKG1fZGVwdGhTdGVuY2lsQXR0YWNobWVudC5nZXQoKSkpCi0gICAgICAgICAgICByZXR1cm4g
dHJ1ZTsKKyAgICAgICAgICAgIHJldHVybiBHcmFwaGljc0NvbnRleHQzRDo6RlJBTUVCVUZGRVJf
VU5TVVBQT1JURUQ7CisgICAgICAgIGlmICghY291bnQpIHsKKyAgICAgICAgICAgIHdpZHRoID0g
Z2V0SW1hZ2VXaWR0aChtX2RlcHRoU3RlbmNpbEF0dGFjaG1lbnQuZ2V0KCkpOworICAgICAgICAg
ICAgaGVpZ2h0ID0gZ2V0SW1hZ2VIZWlnaHQobV9kZXB0aFN0ZW5jaWxBdHRhY2htZW50LmdldCgp
KTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIGlmICh3aWR0aCAhPSBnZXRJbWFnZVdp
ZHRoKG1fZGVwdGhTdGVuY2lsQXR0YWNobWVudC5nZXQoKSkgfHwgaGVpZ2h0ICE9IGdldEltYWdl
SGVpZ2h0KG1fZGVwdGhTdGVuY2lsQXR0YWNobWVudC5nZXQoKSkpCisgICAgICAgICAgICAgICAg
cmV0dXJuIEdyYXBoaWNzQ29udGV4dDNEOjpGUkFNRUJVRkZFUl9JTkNPTVBMRVRFX0RJTUVOU0lP
TlM7CisgICAgICAgIH0KICAgICAgICAgY291bnQrKzsKICAgICB9CisgICAgLy8gV2ViR0wgc3Bl
Y2lmaWM6IG5vIGNvbmZsaWN0aW5nIERFUFRIL1NURU5DSUwvREVQVEhfU1RFTkNJTCBhdHRhY2ht
ZW50cy4KICAgICBpZiAoY291bnQgPiAxKQotICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICByZXR1
cm4gZmFsc2U7CisgICAgICAgIHJldHVybiBHcmFwaGljc0NvbnRleHQzRDo6RlJBTUVCVUZGRVJf
VU5TVVBQT1JURUQ7CisgICAgaWYgKGlzQ29sb3JBdHRhY2hlZCgpKSB7CisgICAgICAgIC8vIEZJ
WE1FOiBpZiBjb2xvciBidWZmZXIgaXMgdGV4dHVyZSwgaXMgQUxQSEEsIExVTUlOQU5DRSBvciBM
VU1JTkFOQ0VfQUxQSEEgdmFsaWQ/CisgICAgICAgIGlmICghZ2V0Q29sb3JCdWZmZXJGb3JtYXQo
KSkKKyAgICAgICAgICAgIHJldHVybiBHcmFwaGljc0NvbnRleHQzRDo6RlJBTUVCVUZGRVJfSU5D
T01QTEVURV9BVFRBQ0hNRU5UOworICAgICAgICBpZiAoIWNvdW50KSB7CisgICAgICAgICAgICBp
ZiAoIWdldENvbG9yQnVmZmVyV2lkdGgoKSB8fCAhZ2V0Q29sb3JCdWZmZXJIZWlnaHQoKSkKKyAg
ICAgICAgICAgICAgICByZXR1cm4gR3JhcGhpY3NDb250ZXh0M0Q6OkZSQU1FQlVGRkVSX0lOQ09N
UExFVEVfQVRUQUNITUVOVDsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIGlmICh3aWR0
aCAhPSBnZXRDb2xvckJ1ZmZlcldpZHRoKCkgfHwgaGVpZ2h0ICE9IGdldENvbG9yQnVmZmVySGVp
Z2h0KCkpCisgICAgICAgICAgICAgICAgcmV0dXJuIEdyYXBoaWNzQ29udGV4dDNEOjpGUkFNRUJV
RkZFUl9JTkNPTVBMRVRFX0RJTUVOU0lPTlM7CisgICAgICAgIH0KKyAgICB9IGVsc2UgeworICAg
ICAgICBpZiAoIWNvdW50KQorICAgICAgICAgICAgcmV0dXJuIEdyYXBoaWNzQ29udGV4dDNEOjpG
UkFNRUJVRkZFUl9JTkNPTVBMRVRFX01JU1NJTkdfQVRUQUNITUVOVDsKKyAgICB9CisgICAgcmV0
dXJuIEdyYXBoaWNzQ29udGV4dDNEOjpGUkFNRUJVRkZFUl9DT01QTEVURTsKIH0KIAogYm9vbCBX
ZWJHTEZyYW1lYnVmZmVyOjpvbkFjY2Vzcyhib29sIG5lZWRUb0luaXRpYWxpemVSZW5kZXJidWZm
ZXJzKQogewotICAgIGlmIChpc0luY29tcGxldGUodHJ1ZSkpCisgICAgaWYgKGNoZWNrU3RhdHVz
KCkgIT0gR3JhcGhpY3NDb250ZXh0M0Q6OkZSQU1FQlVGRkVSX0NPTVBMRVRFKQogICAgICAgICBy
ZXR1cm4gZmFsc2U7CiAgICAgaWYgKG5lZWRUb0luaXRpYWxpemVSZW5kZXJidWZmZXJzKQogICAg
ICAgICByZXR1cm4gaW5pdGlhbGl6ZVJlbmRlcmJ1ZmZlcnMoKTsKSW5kZXg6IFNvdXJjZS9XZWJD
b3JlL2h0bWwvY2FudmFzL1dlYkdMRnJhbWVidWZmZXIuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTEZyYW1lYnVmZmVyLmgJKHJldmlzaW9uIDEwMjQ1OCkK
KysrIFNvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMRnJhbWVidWZmZXIuaAkod29ya2lu
ZyBjb3B5KQpAQCAtNDksOCArNDksOCBAQCBwdWJsaWM6CiAgICAgV2ViR0xPYmplY3QqIGdldEF0
dGFjaG1lbnQoR0MzRGVudW0pIGNvbnN0OwogCiAgICAgR0MzRGVudW0gZ2V0Q29sb3JCdWZmZXJG
b3JtYXQoKSBjb25zdDsKLSAgICBHQzNEc2l6ZWkgZ2V0V2lkdGgoKSBjb25zdDsKLSAgICBHQzNE
c2l6ZWkgZ2V0SGVpZ2h0KCkgY29uc3Q7CisgICAgR0MzRHNpemVpIGdldENvbG9yQnVmZmVyV2lk
dGgoKSBjb25zdDsKKyAgICBHQzNEc2l6ZWkgZ2V0Q29sb3JCdWZmZXJIZWlnaHQoKSBjb25zdDsK
IAogICAgIC8vIFRoaXMgc2hvdWxkIGFsd2F5cyBiZSBjYWxsZWQgYmVmb3JlIGRyYXdBcnJheSwg
ZHJhd0VsZW1lbnRzLCBjbGVhciwKICAgICAvLyByZWFkUGl4ZWxzLCBjb3B5VGV4SW1hZ2UyRCwg
Y29weVRleFN1YkltYWdlMkQgaWYgdGhpcyBmcmFtZWJ1ZmZlciBpcwpAQCAtNjAsOCArNjAsMTEg
QEAgcHVibGljOgogICAgIC8vIG5lZWRUb0luaXRpYWxpemVSZW5kZXJidWZmZXJzIGlzIHRydWUu
CiAgICAgYm9vbCBvbkFjY2Vzcyhib29sIG5lZWRUb0luaXRpYWxpemVSZW5kZXJidWZmZXJzKTsK
IAotICAgIC8vIFJldHVybiBmYWxzZSBkb2VzIG5vdCBtZWFuIENPTVBMRVRFLCBtaWdodCBzdGls
bCBiZSBJTkNPTVBMRVRFLgotICAgIGJvb2wgaXNJbmNvbXBsZXRlKGJvb2wgY2hlY2tJbnRlcm5h
bEZvcm1hdCkgY29uc3Q7CisgICAgLy8gU29mdHdhcmUgdmVyc2lvbiBvZiBnbENoZWNrRnJhbWVi
dWZmZXJTdGF0dXMoKSwgZXhjZXB0IHRoYXQgd2hlbgorICAgIC8vIEZSQU1FQlVGRkVSX0NPTVBM
RVRFIGlzIHJldHVybmVkLCBpdCBpcyBzdGlsbCBwb3NzaWJsZSBmb3IKKyAgICAvLyBnbENoZWNr
RnJhbWVidWZmZXJTdGF0dXMoKSB0byByZXR1cm4gRlJBTUVCVUZGRVJfVU5TVVBQT1JURUQsCisg
ICAgLy8gZGVwZW5kaW5nIG9uIGhhcmR3YXJlIGltcGxlbWVudGF0aW9uLgorICAgIEdDM0RlbnVt
IGNoZWNrU3RhdHVzKCkgY29uc3Q7CiAKICAgICBib29sIGhhc0V2ZXJCZWVuQm91bmQoKSBjb25z
dCB7IHJldHVybiBvYmplY3QoKSAmJiBtX2hhc0V2ZXJCZWVuQm91bmQ7IH0KIApJbmRleDogU291
cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xSZW5kZXJpbmdDb250ZXh0LmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRleHQu
Y3BwCShyZXZpc2lvbiAxMDI0NTgpCisrKyBTb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9XZWJH
TFJlbmRlcmluZ0NvbnRleHQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMDkyLDkgKzEwOTIsMTAg
QEAgR0MzRGVudW0gV2ViR0xSZW5kZXJpbmdDb250ZXh0OjpjaGVja0ZyYQogICAgIH0KICAgICBp
ZiAoIW1fZnJhbWVidWZmZXJCaW5kaW5nIHx8ICFtX2ZyYW1lYnVmZmVyQmluZGluZy0+b2JqZWN0
KCkpCiAgICAgICAgIHJldHVybiBHcmFwaGljc0NvbnRleHQzRDo6RlJBTUVCVUZGRVJfQ09NUExF
VEU7Ci0gICAgaWYgKG1fZnJhbWVidWZmZXJCaW5kaW5nLT5pc0luY29tcGxldGUodHJ1ZSkpCi0g
ICAgICAgIHJldHVybiBHcmFwaGljc0NvbnRleHQzRDo6RlJBTUVCVUZGRVJfVU5TVVBQT1JURUQ7
Ci0gICAgdW5zaWduZWQgbG9uZyByZXN1bHQgPSBtX2NvbnRleHQtPmNoZWNrRnJhbWVidWZmZXJT
dGF0dXModGFyZ2V0KTsKKyAgICBHQzNEZW51bSByZXN1bHQgPSBtX2ZyYW1lYnVmZmVyQmluZGlu
Zy0+Y2hlY2tTdGF0dXMoKTsKKyAgICBpZiAocmVzdWx0ICE9IEdyYXBoaWNzQ29udGV4dDNEOjpG
UkFNRUJVRkZFUl9DT01QTEVURSkKKyAgICAgICAgcmV0dXJuIHJlc3VsdDsKKyAgICByZXN1bHQg
PSBtX2NvbnRleHQtPmNoZWNrRnJhbWVidWZmZXJTdGF0dXModGFyZ2V0KTsKICAgICBjbGVhbnVw
QWZ0ZXJHcmFwaGljc0NhbGwoZmFsc2UpOwogICAgIHJldHVybiByZXN1bHQ7CiB9CkBAIC0yMTU5
LDcgKzIxNjAsNyBAQCBXZWJHTEdldEluZm8gV2ViR0xSZW5kZXJpbmdDb250ZXh0OjpnZXRGCiAg
ICAgaWYgKGlzQ29udGV4dExvc3QoKSB8fCAhdmFsaWRhdGVGcmFtZWJ1ZmZlckZ1bmNQYXJhbWV0
ZXJzKHRhcmdldCwgYXR0YWNobWVudCkpCiAgICAgICAgIHJldHVybiBXZWJHTEdldEluZm8oKTsK
IAotICAgIGlmICghbV9mcmFtZWJ1ZmZlckJpbmRpbmcgfHwgIW1fZnJhbWVidWZmZXJCaW5kaW5n
LT5vYmplY3QoKSB8fCBtX2ZyYW1lYnVmZmVyQmluZGluZy0+aXNJbmNvbXBsZXRlKGZhbHNlKSkg
eworICAgIGlmICghbV9mcmFtZWJ1ZmZlckJpbmRpbmcgfHwgIW1fZnJhbWVidWZmZXJCaW5kaW5n
LT5vYmplY3QoKSkgewogICAgICAgICBtX2NvbnRleHQtPnN5bnRoZXNpemVHTEVycm9yKEdyYXBo
aWNzQ29udGV4dDNEOjpJTlZBTElEX09QRVJBVElPTik7CiAgICAgICAgIHJldHVybiBXZWJHTEdl
dEluZm8oKTsKICAgICB9CkBAIC00MzA4LDE0ICs0MzA5LDE0IEBAIEdDM0RlbnVtIFdlYkdMUmVu
ZGVyaW5nQ29udGV4dDo6Z2V0Qm91bmQKIGludCBXZWJHTFJlbmRlcmluZ0NvbnRleHQ6OmdldEJv
dW5kRnJhbWVidWZmZXJXaWR0aCgpCiB7CiAgICAgaWYgKG1fZnJhbWVidWZmZXJCaW5kaW5nICYm
IG1fZnJhbWVidWZmZXJCaW5kaW5nLT5vYmplY3QoKSkKLSAgICAgICAgcmV0dXJuIG1fZnJhbWVi
dWZmZXJCaW5kaW5nLT5nZXRXaWR0aCgpOworICAgICAgICByZXR1cm4gbV9mcmFtZWJ1ZmZlckJp
bmRpbmctPmdldENvbG9yQnVmZmVyV2lkdGgoKTsKICAgICByZXR1cm4gbV9kcmF3aW5nQnVmZmVy
ID8gbV9kcmF3aW5nQnVmZmVyLT5zaXplKCkud2lkdGgoKSA6IG1fY29udGV4dC0+Z2V0SW50ZXJu
YWxGcmFtZWJ1ZmZlclNpemUoKS53aWR0aCgpOwogfQogCiBpbnQgV2ViR0xSZW5kZXJpbmdDb250
ZXh0OjpnZXRCb3VuZEZyYW1lYnVmZmVySGVpZ2h0KCkKIHsKICAgICBpZiAobV9mcmFtZWJ1ZmZl
ckJpbmRpbmcgJiYgbV9mcmFtZWJ1ZmZlckJpbmRpbmctPm9iamVjdCgpKQotICAgICAgICByZXR1
cm4gbV9mcmFtZWJ1ZmZlckJpbmRpbmctPmdldEhlaWdodCgpOworICAgICAgICByZXR1cm4gbV9m
cmFtZWJ1ZmZlckJpbmRpbmctPmdldENvbG9yQnVmZmVySGVpZ2h0KCk7CiAgICAgcmV0dXJuIG1f
ZHJhd2luZ0J1ZmZlciA/IG1fZHJhd2luZ0J1ZmZlci0+c2l6ZSgpLmhlaWdodCgpIDogbV9jb250
ZXh0LT5nZXRJbnRlcm5hbEZyYW1lYnVmZmVyU2l6ZSgpLmhlaWdodCgpOwogfQogCkluZGV4OiBM
YXlvdXRUZXN0cy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
CShyZXZpc2lvbiAxMDI0OTUpCisrKyBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29w
eSkKQEAgLTEsMyArMSwxNCBAQAorMjAxMS0xMi0wOSAgWmhlbnlhbyBNbyAgPHptb0Bnb29nbGUu
Y29tPgorCisgICAgICAgIEltcGxlbWVudCBHTEVTMiBDaGVja0ZyYW1lYnVmZmVyU3RhdHVzKCkg
YmVoYXZpb3IKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTc0MjI4CisKKyAgICAgICAgKiBmYXN0L2NhbnZhcy93ZWJnbC9mcmFtZWJ1ZmZlci1vYmplY3Qt
YXR0YWNobWVudC1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9jYW52YXMvd2ViZ2wvZnJh
bWVidWZmZXItb2JqZWN0LWF0dGFjaG1lbnQuaHRtbDogc3luYyB3aXRoIGtocm9ub3Mgc2lkZSwg
dGhlIHdob2xlIGZpbGUKKyAgICAgICAgKiBmYXN0L2NhbnZhcy93ZWJnbC9yZXNvdXJjZXMvd2Vi
Z2wtdGVzdC5qczogc3luY2VkIHdpdGgga2hyb25vcyBzaWRlLCB0d28gbGlzdGVkIGZ1bmN0aW9u
cworICAgICAgICAoc2hvdWxkR2VuZXJhdGVHTEVycm9yKToKKyAgICAgICAgKGdsRXJyb3JTaG91
bGRCZSk6CisKIDIwMTEtMTItMDkgIFRvbnkgQ2hhbmcgIDx0b255QGNocm9taXVtLm9yZz4KIAog
ICAgICAgICBGaXggdGVzdCBleHBlY3RhdGlvbnMgZnJvbSByMTAyNDg2OiBmbGV4LWZsb3cgcmV0
dXJucyBkaXJlY3Rpb24gYW5kIHdyYXAgbm93LgpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9jYW52
YXMvd2ViZ2wvZnJhbWVidWZmZXItb2JqZWN0LWF0dGFjaG1lbnQtZXhwZWN0ZWQudHh0Cj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvY2FudmFzL3dlYmdsL2ZyYW1lYnVmZmVyLW9iamVj
dC1hdHRhY2htZW50LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMTAyNDU4KQorKysgTGF5b3V0VGVz
dHMvZmFzdC9jYW52YXMvd2ViZ2wvZnJhbWVidWZmZXItb2JqZWN0LWF0dGFjaG1lbnQtZXhwZWN0
ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0yLDYgKzIsNDE0IEBAIFRlc3QgZnJhbWVidWZmZXIg
b2JqZWN0IGF0dGFjaG1lbnQgYmVoYXYKIAogT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2Vy
aWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgogCisK
K0RpbWVuc2lvbnMgMCB4IDAKK0NyZWF0ZSByZW5kZXJidWZmZXJzCitQQVNTIGdsID0gY3JlYXRl
M0RDb250ZXh0KCkgaXMgbm9uLW51bGwuCitQQVNTIGNvbG9yQnVmZmVyID0gZ2wuY3JlYXRlUmVu
ZGVyYnVmZmVyKCkgaXMgbm9uLW51bGwuCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1
ZTogTk9fRVJST1IgOiAKK1BBU1MgZGVwdGhCdWZmZXIgPSBnbC5jcmVhdGVSZW5kZXJidWZmZXIo
KSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJP
UiA6IAorUEFTUyBzdGVuY2lsQnVmZmVyID0gZ2wuY3JlYXRlUmVuZGVyYnVmZmVyKCkgaXMgbm9u
LW51bGwuCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BB
U1MgZGVwdGhTdGVuY2lsQnVmZmVyID0gZ2wuY3JlYXRlUmVuZGVyYnVmZmVyKCkgaXMgbm9uLW51
bGwuCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK0F0dGFj
aCBkZXB0aCB1c2luZyBERVBUSF9BVFRBQ0hNRU5UCitQQVNTIGZibyA9IGdsLmNyZWF0ZUZyYW1l
YnVmZmVyKCkgaXMgbm9uLW51bGwuCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTog
Tk9fRVJST1IgOiAKK1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZF
UikgcmV0dXJuZWQgMzYwNTQKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZB
TElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQg
dmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogCitBdHRhY2ggZGVwdGggdXNp
bmcgU1RFTkNJTF9BVFRBQ0hNRU5UCitQQVNTIGZibyA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkg
aXMgbm9uLW51bGwuCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1Ig
OiAKK1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZFUikgcmV0dXJu
ZWQgMzYwNTQKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1F
QlVGRkVSX09QRVJBVElPTiA6IAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElO
VkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogCitBdHRhY2ggZGVwdGggdXNpbmcgREVQVEhf
U1RFTkNJTF9BVFRBQ0hNRU5UCitQQVNTIGZibyA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkgaXMg
bm9uLW51bGwuCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAK
K1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZFUikgcmV0dXJuZWQg
MzYwNTQKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVG
RkVSX09QRVJBVElPTiA6IAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFM
SURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogCitBdHRhY2ggc3RlbmNpbCB1c2luZyBTVEVOQ0lM
X0FUVEFDSE1FTlQKK1BBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVs
bC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBn
bC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5lZCAzNjA1NAor
UEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BF
UkFUSU9OIDogCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFN
RUJVRkZFUl9PUEVSQVRJT04gOiAKK0F0dGFjaCBzdGVuY2lsIHVzaW5nIERFUFRIX0FUVEFDSE1F
TlQKK1BBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1Mg
Z2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5jaGVja0Zy
YW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5lZCAzNjA1NAorUEFTUyBnZXRF
cnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDog
CitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9P
UEVSQVRJT04gOiAKK0F0dGFjaCBzdGVuY2lsIHVzaW5nIERFUFRIX1NURU5DSUxfQVRUQUNITUVO
VAorUEFTUyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBn
ZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGdsLmNoZWNrRnJh
bWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVkIDM2MDU0CitQQVNTIGdldEVy
cm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAK
K1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09Q
RVJBVElPTiA6IAorQXR0YWNoIGRlcHRoU3RlbmNpbCB1c2luZyBERVBUSF9TVEVOQ0lMX0FUVEFD
SE1FTlQKK1BBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KK1BB
U1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5jaGVj
a0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5lZCAzNjA1NAorUEFTUyBn
ZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9O
IDogCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZF
Ul9PUEVSQVRJT04gOiAKK0F0dGFjaCBkZXB0aFN0ZW5jaWwgdXNpbmcgREVQVEhfQVRUQUNITUVO
VAorUEFTUyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBn
ZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGdsLmNoZWNrRnJh
bWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVkIDM2MDU0CitQQVNTIGdldEVy
cm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAK
K1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09Q
RVJBVElPTiA6IAorQXR0YWNoIGRlcHRoU3RlbmNpbCB1c2luZyBTVEVOQ0lMX0FUVEFDSE1FTlQK
K1BBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0
RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5jaGVja0ZyYW1l
YnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5lZCAzNjA1NAorUEFTUyBnZXRFcnJv
ciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogCitQ
QVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVS
QVRJT04gOiAKK0F0dGFjaCBkZXB0aCwgdGhlbiBzdGVuY2lsLCBjYXVzaW5nIGNvbmZsaWN0CitQ
QVNTIGZibyA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkgaXMgbm9uLW51bGwuCitQQVNTIGdldEVy
cm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4
cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVz
KGdsLkZSQU1FQlVGRkVSKSByZXR1cm5lZCAzNjA1NAorQXR0YWNoIHN0ZW5jaWwsIHRoZW4gZGVw
dGgsIGNhdXNpbmcgY29uZmxpY3QKK1BBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBp
cyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6
IAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGds
LmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVkIDM2MDU0CitB
dHRhY2ggZGVwdGgsIHRoZW4gZGVwdGhTdGVuY2lsLCBjYXVzaW5nIGNvbmZsaWN0CitQQVNTIGZi
byA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkgaXMgbm9uLW51bGwuCitQQVNTIGdldEVycm9yIHdh
cyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVk
IHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZS
QU1FQlVGRkVSKSByZXR1cm5lZCAzNjA1NAorQXR0YWNoIGRlcHRoU3RlbmNpbCwgdGhlbiBkZXB0
aCwgY2F1c2luZyBjb25mbGljdAorUEFTUyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlz
IG5vbi1udWxsLgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDog
CitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2wu
Y2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZFUikgcmV0dXJuZWQgMzYwNTQKK0F0
dGFjaCBzdGVuY2lsLCB0aGVuIGRlcHRoU3RlbmNpbCwgY2F1c2luZyBjb25mbGljdAorUEFTUyBm
Ym8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBnZXRFcnJvciB3
YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3Rl
ZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5G
UkFNRUJVRkZFUikgcmV0dXJuZWQgMzYwNTQKK0F0dGFjaCBkZXB0aFN0ZW5jaWwsIHRoZW4gc3Rl
bmNpbCwgY2F1c2luZyBjb25mbGljdAorUEFTUyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigp
IGlzIG5vbi1udWxsLgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9S
IDogCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1Mg
Z2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZFUikgcmV0dXJuZWQgMzYwNTQK
K0F0dGFjaCBjb2xvciByZW5kZXJidWZmZXIgd2l0aCBpbnRlcm5hbGZvcm1hdCA9PSBSR0JBNAor
UEFTUyBjb2xvckJ1ZmZlciA9IGdsLmNyZWF0ZVJlbmRlcmJ1ZmZlcigpIGlzIG5vbi1udWxsLgor
UEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGZibyA9
IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkgaXMgbm9uLW51bGwuCitQQVNTIGdldEVycm9yIHdhcyBl
eHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1
cyhnbC5GUkFNRUJVRkZFUikgcmV0dXJuZWQgMzYwNTQKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVj
dGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAorUEFTUyBnZXRFcnJv
ciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogCitB
dHRhY2ggY29sb3IgcmVuZGVyYnVmZmVyIHdpdGggaW50ZXJuYWxmb3JtYXQgPT0gUkdCNV9BMQor
UEFTUyBjb2xvckJ1ZmZlciA9IGdsLmNyZWF0ZVJlbmRlcmJ1ZmZlcigpIGlzIG5vbi1udWxsLgor
UEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGZibyA9
IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkgaXMgbm9uLW51bGwuCitQQVNTIGdldEVycm9yIHdhcyBl
eHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1
cyhnbC5GUkFNRUJVRkZFUikgcmV0dXJuZWQgMzYwNTQKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVj
dGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAorUEFTUyBnZXRFcnJv
ciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogCitB
dHRhY2ggY29sb3IgcmVuZGVyYnVmZmVyIHdpdGggaW50ZXJuYWxmb3JtYXQgPT0gUkdCNTY1CitQ
QVNTIGNvbG9yQnVmZmVyID0gZ2wuY3JlYXRlUmVuZGVyYnVmZmVyKCkgaXMgbm9uLW51bGwuCitQ
QVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZmJvID0g
Z2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4
cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVz
KGdsLkZSQU1FQlVGRkVSKSByZXR1cm5lZCAzNjA1NAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0
ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogCitQQVNTIGdldEVycm9y
IHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKK0Ny
ZWF0ZSBhbmQgYXR0YWNoIGRlcHRoU3RlbmNpbCByZW5kZXJidWZmZXIKK1BBU1MgZGVwdGhTdGVu
Y2lsQnVmZmVyID0gZ2wuY3JlYXRlUmVuZGVyYnVmZmVyKCkgaXMgbm9uLW51bGwuCitQQVNTIGdl
dEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2wuZ2V0UmVuZGVy
YnVmZmVyUGFyYW1ldGVyKGdsLlJFTkRFUkJVRkZFUiwgZ2wuUkVOREVSQlVGRkVSX1dJRFRIKSBp
cyB3aWR0aAorUEFTUyBnbC5nZXRSZW5kZXJidWZmZXJQYXJhbWV0ZXIoZ2wuUkVOREVSQlVGRkVS
LCBnbC5SRU5ERVJCVUZGRVJfSEVJR0hUKSBpcyBoZWlnaHQKK1BBU1MgZ2wuZ2V0UmVuZGVyYnVm
ZmVyUGFyYW1ldGVyKGdsLlJFTkRFUkJVRkZFUiwgZ2wuUkVOREVSQlVGRkVSX0lOVEVSTkFMX0ZP
Uk1BVCkgaXMgZ2wuREVQVEhfU1RFTkNJTAorUEFTUyBnbC5nZXRSZW5kZXJidWZmZXJQYXJhbWV0
ZXIoZ2wuUkVOREVSQlVGRkVSLCBnbC5SRU5ERVJCVUZGRVJfUkVEX1NJWkUpIGlzIDAKK1BBU1Mg
Z2wuZ2V0UmVuZGVyYnVmZmVyUGFyYW1ldGVyKGdsLlJFTkRFUkJVRkZFUiwgZ2wuUkVOREVSQlVG
RkVSX0dSRUVOX1NJWkUpIGlzIDAKK1BBU1MgZ2wuZ2V0UmVuZGVyYnVmZmVyUGFyYW1ldGVyKGds
LlJFTkRFUkJVRkZFUiwgZ2wuUkVOREVSQlVGRkVSX0JMVUVfU0laRSkgaXMgMAorUEFTUyBnbC5n
ZXRSZW5kZXJidWZmZXJQYXJhbWV0ZXIoZ2wuUkVOREVSQlVGRkVSLCBnbC5SRU5ERVJCVUZGRVJf
QUxQSEFfU0laRSkgaXMgMAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VS
Uk9SIDogCitQQVNTIGZibyA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkgaXMgbm9uLW51bGwuCitQ
QVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2wuY2hl
Y2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZFUikgcmV0dXJuZWQgMzYwNTQKK1BBU1Mg
Z2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElP
TiA6IAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZG
RVJfT1BFUkFUSU9OIDogCisKK0RpbWVuc2lvbnMgMCB4IDIKK0NyZWF0ZSByZW5kZXJidWZmZXJz
CitQQVNTIGdsID0gY3JlYXRlM0RDb250ZXh0KCkgaXMgbm9uLW51bGwuCitQQVNTIGNvbG9yQnVm
ZmVyID0gZ2wuY3JlYXRlUmVuZGVyYnVmZmVyKCkgaXMgbm9uLW51bGwuCitQQVNTIGdldEVycm9y
IHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZGVwdGhCdWZmZXIgPSBnbC5j
cmVhdGVSZW5kZXJidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVj
dGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBzdGVuY2lsQnVmZmVyID0gZ2wuY3JlYXRlUmVu
ZGVyYnVmZmVyKCkgaXMgbm9uLW51bGwuCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1
ZTogTk9fRVJST1IgOiAKK1BBU1MgZGVwdGhTdGVuY2lsQnVmZmVyID0gZ2wuY3JlYXRlUmVuZGVy
YnVmZmVyKCkgaXMgbm9uLW51bGwuCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTog
Tk9fRVJST1IgOiAKK0F0dGFjaCBkZXB0aCB1c2luZyBERVBUSF9BVFRBQ0hNRU5UCitQQVNTIGZi
byA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkgaXMgbm9uLW51bGwuCitQQVNTIGdldEVycm9yIHdh
cyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0
YXR1cyhnbC5GUkFNRUJVRkZFUikgcmV0dXJuZWQgMzYwNTQKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4
cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAorUEFTUyBnZXRF
cnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDog
CitBdHRhY2ggZGVwdGggdXNpbmcgU1RFTkNJTF9BVFRBQ0hNRU5UCitQQVNTIGZibyA9IGdsLmNy
ZWF0ZUZyYW1lYnVmZmVyKCkgaXMgbm9uLW51bGwuCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3Rl
ZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5G
UkFNRUJVRkZFUikgcmV0dXJuZWQgMzYwNTQKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZh
bHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAorUEFTUyBnZXRFcnJvciB3YXMg
ZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogCitBdHRhY2gg
ZGVwdGggdXNpbmcgREVQVEhfU1RFTkNJTF9BVFRBQ0hNRU5UCitQQVNTIGZibyA9IGdsLmNyZWF0
ZUZyYW1lYnVmZmVyKCkgaXMgbm9uLW51bGwuCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2
YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFN
RUJVRkZFUikgcmV0dXJuZWQgMzYwNTQKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVl
OiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAorUEFTUyBnZXRFcnJvciB3YXMgZXhw
ZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogCitBdHRhY2ggc3Rl
bmNpbCB1c2luZyBTVEVOQ0lMX0FUVEFDSE1FTlQKK1BBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVi
dWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBO
T19FUlJPUiA6IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVS
KSByZXR1cm5lZCAzNjA1NAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFM
SURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2
YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKK0F0dGFjaCBzdGVuY2lsIHVz
aW5nIERFUFRIX0FUVEFDSE1FTlQKK1BBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBp
cyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6
IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5l
ZCAzNjA1NAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVC
VUZGRVJfT1BFUkFUSU9OIDogCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5W
QUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKK0F0dGFjaCBzdGVuY2lsIHVzaW5nIERFUFRI
X1NURU5DSUxfQVRUQUNITUVOVAorUEFTUyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlz
IG5vbi1udWxsLgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDog
CitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVk
IDM2MDU0CitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJV
RkZFUl9PUEVSQVRJT04gOiAKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZB
TElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAorQXR0YWNoIGRlcHRoU3RlbmNpbCB1c2luZyBE
RVBUSF9TVEVOQ0lMX0FUVEFDSE1FTlQKK1BBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIo
KSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJP
UiA6IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1
cm5lZCAzNjA1NAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJB
TUVCVUZGRVJfT1BFUkFUSU9OIDogCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTog
SU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKK0F0dGFjaCBkZXB0aFN0ZW5jaWwgdXNp
bmcgREVQVEhfQVRUQUNITUVOVAorUEFTUyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlz
IG5vbi1udWxsLgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDog
CitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVk
IDM2MDU0CitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJV
RkZFUl9PUEVSQVRJT04gOiAKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZB
TElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAorQXR0YWNoIGRlcHRoU3RlbmNpbCB1c2luZyBT
VEVOQ0lMX0FUVEFDSE1FTlQKK1BBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBu
b24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAor
UEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5lZCAz
NjA1NAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZG
RVJfT1BFUkFUSU9OIDogCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJ
RF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKK0F0dGFjaCBkZXB0aCwgdGhlbiBzdGVuY2lsLCBj
YXVzaW5nIGNvbmZsaWN0CitQQVNTIGZibyA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkgaXMgbm9u
LW51bGwuCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BB
U1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5jaGVj
a0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5lZCAzNjA1NAorQXR0YWNo
IHN0ZW5jaWwsIHRoZW4gZGVwdGgsIGNhdXNpbmcgY29uZmxpY3QKK1BBU1MgZmJvID0gZ2wuY3Jl
YXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVk
IHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5P
X0VSUk9SIDogCitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIp
IHJldHVybmVkIDM2MDU0CitBdHRhY2ggZGVwdGgsIHRoZW4gZGVwdGhTdGVuY2lsLCBjYXVzaW5n
IGNvbmZsaWN0CitQQVNTIGZibyA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkgaXMgbm9uLW51bGwu
CitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2V0
RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5jaGVja0ZyYW1l
YnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5lZCAzNjA1NAorQXR0YWNoIGRlcHRo
U3RlbmNpbCwgdGhlbiBkZXB0aCwgY2F1c2luZyBjb25mbGljdAorUEFTUyBmYm8gPSBnbC5jcmVh
dGVGcmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQg
dmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9f
RVJST1IgOiAKK1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZFUikg
cmV0dXJuZWQgMzYwNTQKK0F0dGFjaCBzdGVuY2lsLCB0aGVuIGRlcHRoU3RlbmNpbCwgY2F1c2lu
ZyBjb25mbGljdAorUEFTUyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxs
LgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGdl
dEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2wuY2hlY2tGcmFt
ZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZFUikgcmV0dXJuZWQgMzYwNTQKK0F0dGFjaCBkZXB0
aFN0ZW5jaWwsIHRoZW4gc3RlbmNpbCwgY2F1c2luZyBjb25mbGljdAorUEFTUyBmYm8gPSBnbC5j
cmVhdGVGcmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0
ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTog
Tk9fRVJST1IgOiAKK1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZF
UikgcmV0dXJuZWQgMzYwNTQKK0F0dGFjaCBjb2xvciByZW5kZXJidWZmZXIgd2l0aCBpbnRlcm5h
bGZvcm1hdCA9PSBSR0JBNAorUEFTUyBjb2xvckJ1ZmZlciA9IGdsLmNyZWF0ZVJlbmRlcmJ1ZmZl
cigpIGlzIG5vbi1udWxsLgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VS
Uk9SIDogCitQQVNTIGZibyA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkgaXMgbm9uLW51bGwuCitQ
QVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2wuY2hl
Y2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZFUikgcmV0dXJuZWQgMzYwNTQKK1BBU1Mg
Z2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElP
TiA6IAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZG
RVJfT1BFUkFUSU9OIDogCitBdHRhY2ggY29sb3IgcmVuZGVyYnVmZmVyIHdpdGggaW50ZXJuYWxm
b3JtYXQgPT0gUkdCNV9BMQorUEFTUyBjb2xvckJ1ZmZlciA9IGdsLmNyZWF0ZVJlbmRlcmJ1ZmZl
cigpIGlzIG5vbi1udWxsLgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VS
Uk9SIDogCitQQVNTIGZibyA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkgaXMgbm9uLW51bGwuCitQ
QVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2wuY2hl
Y2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZFUikgcmV0dXJuZWQgMzYwNTQKK1BBU1Mg
Z2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElP
TiA6IAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZG
RVJfT1BFUkFUSU9OIDogCitBdHRhY2ggY29sb3IgcmVuZGVyYnVmZmVyIHdpdGggaW50ZXJuYWxm
b3JtYXQgPT0gUkdCNTY1CitQQVNTIGNvbG9yQnVmZmVyID0gZ2wuY3JlYXRlUmVuZGVyYnVmZmVy
KCkgaXMgbm9uLW51bGwuCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJS
T1IgOiAKK1BBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KK1BB
U1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5jaGVj
a0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5lZCAzNjA1NAorUEFTUyBn
ZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9O
IDogCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZF
Ul9PUEVSQVRJT04gOiAKK0NyZWF0ZSBhbmQgYXR0YWNoIGRlcHRoU3RlbmNpbCByZW5kZXJidWZm
ZXIKK1BBU1MgZGVwdGhTdGVuY2lsQnVmZmVyID0gZ2wuY3JlYXRlUmVuZGVyYnVmZmVyKCkgaXMg
bm9uLW51bGwuCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAK
K1BBU1MgZ2wuZ2V0UmVuZGVyYnVmZmVyUGFyYW1ldGVyKGdsLlJFTkRFUkJVRkZFUiwgZ2wuUkVO
REVSQlVGRkVSX1dJRFRIKSBpcyB3aWR0aAorUEFTUyBnbC5nZXRSZW5kZXJidWZmZXJQYXJhbWV0
ZXIoZ2wuUkVOREVSQlVGRkVSLCBnbC5SRU5ERVJCVUZGRVJfSU5URVJOQUxfRk9STUFUKSBpcyBn
bC5ERVBUSF9TVEVOQ0lMCitQQVNTIGdsLmdldFJlbmRlcmJ1ZmZlclBhcmFtZXRlcihnbC5SRU5E
RVJCVUZGRVIsIGdsLlJFTkRFUkJVRkZFUl9SRURfU0laRSkgaXMgMAorUEFTUyBnbC5nZXRSZW5k
ZXJidWZmZXJQYXJhbWV0ZXIoZ2wuUkVOREVSQlVGRkVSLCBnbC5SRU5ERVJCVUZGRVJfR1JFRU5f
U0laRSkgaXMgMAorUEFTUyBnbC5nZXRSZW5kZXJidWZmZXJQYXJhbWV0ZXIoZ2wuUkVOREVSQlVG
RkVSLCBnbC5SRU5ERVJCVUZGRVJfQkxVRV9TSVpFKSBpcyAwCitQQVNTIGdsLmdldFJlbmRlcmJ1
ZmZlclBhcmFtZXRlcihnbC5SRU5ERVJCVUZGRVIsIGdsLlJFTkRFUkJVRkZFUl9BTFBIQV9TSVpF
KSBpcyAwCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BB
U1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJy
b3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVm
ZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5lZCAzNjA1NAorUEFTUyBnZXRFcnJvciB3
YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogCitQQVNT
IGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJ
T04gOiAKKworRGltZW5zaW9ucyAyIHggMAorQ3JlYXRlIHJlbmRlcmJ1ZmZlcnMKK1BBU1MgZ2wg
PSBjcmVhdGUzRENvbnRleHQoKSBpcyBub24tbnVsbC4KK1BBU1MgY29sb3JCdWZmZXIgPSBnbC5j
cmVhdGVSZW5kZXJidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVj
dGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBkZXB0aEJ1ZmZlciA9IGdsLmNyZWF0ZVJlbmRl
cmJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6
IE5PX0VSUk9SIDogCitQQVNTIHN0ZW5jaWxCdWZmZXIgPSBnbC5jcmVhdGVSZW5kZXJidWZmZXIo
KSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJP
UiA6IAorUEFTUyBkZXB0aFN0ZW5jaWxCdWZmZXIgPSBnbC5jcmVhdGVSZW5kZXJidWZmZXIoKSBp
cyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6
IAorQXR0YWNoIGRlcHRoIHVzaW5nIERFUFRIX0FUVEFDSE1FTlQKK1BBU1MgZmJvID0gZ2wuY3Jl
YXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVk
IHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZS
QU1FQlVGRkVSKSByZXR1cm5lZCAzNjA1NAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFs
dWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogCitQQVNTIGdldEVycm9yIHdhcyBl
eHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKK0F0dGFjaCBk
ZXB0aCB1c2luZyBTVEVOQ0lMX0FUVEFDSE1FTlQKK1BBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVi
dWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBO
T19FUlJPUiA6IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVS
KSByZXR1cm5lZCAzNjA1NAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFM
SURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2
YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKK0F0dGFjaCBkZXB0aCB1c2lu
ZyBERVBUSF9TVEVOQ0lMX0FUVEFDSE1FTlQKK1BBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZm
ZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19F
UlJPUiA6IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSBy
ZXR1cm5lZCAzNjA1NAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURf
RlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1
ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKK0F0dGFjaCBzdGVuY2lsIHVzaW5n
IFNURU5DSUxfQVRUQUNITUVOVAorUEFTUyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlz
IG5vbi1udWxsLgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDog
CitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVk
IDM2MDU0CitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJV
RkZFUl9PUEVSQVRJT04gOiAKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZB
TElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAorQXR0YWNoIHN0ZW5jaWwgdXNpbmcgREVQVEhf
QVRUQUNITUVOVAorUEFTUyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxs
LgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGds
LmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVkIDM2MDU0CitQ
QVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVS
QVRJT04gOiAKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1F
QlVGRkVSX09QRVJBVElPTiA6IAorQXR0YWNoIHN0ZW5jaWwgdXNpbmcgREVQVEhfU1RFTkNJTF9B
VFRBQ0hNRU5UCitQQVNTIGZibyA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkgaXMgbm9uLW51bGwu
CitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2wu
Y2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZFUikgcmV0dXJuZWQgMzYwNTQKK1BB
U1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJB
VElPTiA6IAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVC
VUZGRVJfT1BFUkFUSU9OIDogCitBdHRhY2ggZGVwdGhTdGVuY2lsIHVzaW5nIERFUFRIX1NURU5D
SUxfQVRUQUNITUVOVAorUEFTUyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlzIG5vbi1u
dWxsLgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNT
IGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVkIDM2MDU0
CitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9P
UEVSQVRJT04gOiAKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZS
QU1FQlVGRkVSX09QRVJBVElPTiA6IAorQXR0YWNoIGRlcHRoU3RlbmNpbCB1c2luZyBERVBUSF9B
VFRBQ0hNRU5UCitQQVNTIGZibyA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkgaXMgbm9uLW51bGwu
CitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2wu
Y2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZFUikgcmV0dXJuZWQgMzYwNTQKK1BB
U1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJB
VElPTiA6IAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVC
VUZGRVJfT1BFUkFUSU9OIDogCitBdHRhY2ggZGVwdGhTdGVuY2lsIHVzaW5nIFNURU5DSUxfQVRU
QUNITUVOVAorUEFTUyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxsLgor
UEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGdsLmNo
ZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVkIDM2MDU0CitQQVNT
IGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJ
T04gOiAKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVG
RkVSX09QRVJBVElPTiA6IAorQXR0YWNoIGRlcHRoLCB0aGVuIHN0ZW5jaWwsIGNhdXNpbmcgY29u
ZmxpY3QKK1BBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KK1BB
U1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnZXRFcnJv
ciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGdsLmNoZWNrRnJhbWVidWZm
ZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVkIDM2MDU0CitBdHRhY2ggc3RlbmNpbCwg
dGhlbiBkZXB0aCwgY2F1c2luZyBjb25mbGljdAorUEFTUyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1
ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5P
X0VSUk9SIDogCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAK
K1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZFUikgcmV0dXJuZWQg
MzYwNTQKK0F0dGFjaCBkZXB0aCwgdGhlbiBkZXB0aFN0ZW5jaWwsIGNhdXNpbmcgY29uZmxpY3QK
K1BBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0
RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnZXRFcnJvciB3YXMg
ZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0
dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVkIDM2MDU0CitBdHRhY2ggZGVwdGhTdGVuY2lsLCB0
aGVuIGRlcHRoLCBjYXVzaW5nIGNvbmZsaWN0CitQQVNTIGZibyA9IGdsLmNyZWF0ZUZyYW1lYnVm
ZmVyKCkgaXMgbm9uLW51bGwuCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9f
RVJST1IgOiAKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAor
UEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5lZCAz
NjA1NAorQXR0YWNoIHN0ZW5jaWwsIHRoZW4gZGVwdGhTdGVuY2lsLCBjYXVzaW5nIGNvbmZsaWN0
CitQQVNTIGZibyA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkgaXMgbm9uLW51bGwuCitQQVNTIGdl
dEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2V0RXJyb3Igd2Fz
IGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3Rh
dHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5lZCAzNjA1NAorQXR0YWNoIGRlcHRoU3RlbmNpbCwg
dGhlbiBzdGVuY2lsLCBjYXVzaW5nIGNvbmZsaWN0CitQQVNTIGZibyA9IGdsLmNyZWF0ZUZyYW1l
YnVmZmVyKCkgaXMgbm9uLW51bGwuCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTog
Tk9fRVJST1IgOiAKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6
IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5l
ZCAzNjA1NAorQXR0YWNoIGNvbG9yIHJlbmRlcmJ1ZmZlciB3aXRoIGludGVybmFsZm9ybWF0ID09
IFJHQkE0CitQQVNTIGNvbG9yQnVmZmVyID0gZ2wuY3JlYXRlUmVuZGVyYnVmZmVyKCkgaXMgbm9u
LW51bGwuCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BB
U1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJy
b3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVm
ZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5lZCAzNjA1NAorUEFTUyBnZXRFcnJvciB3
YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogCitQQVNT
IGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJ
T04gOiAKK0F0dGFjaCBjb2xvciByZW5kZXJidWZmZXIgd2l0aCBpbnRlcm5hbGZvcm1hdCA9PSBS
R0I1X0ExCitQQVNTIGNvbG9yQnVmZmVyID0gZ2wuY3JlYXRlUmVuZGVyYnVmZmVyKCkgaXMgbm9u
LW51bGwuCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BB
U1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJy
b3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVm
ZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5lZCAzNjA1NAorUEFTUyBnZXRFcnJvciB3
YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogCitQQVNT
IGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJ
T04gOiAKK0F0dGFjaCBjb2xvciByZW5kZXJidWZmZXIgd2l0aCBpbnRlcm5hbGZvcm1hdCA9PSBS
R0I1NjUKK1BBU1MgY29sb3JCdWZmZXIgPSBnbC5jcmVhdGVSZW5kZXJidWZmZXIoKSBpcyBub24t
bnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFT
UyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBnZXRFcnJv
ciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGdsLmNoZWNrRnJhbWVidWZm
ZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVkIDM2MDU0CitQQVNTIGdldEVycm9yIHdh
cyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKK1BBU1Mg
Z2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElP
TiA6IAorQ3JlYXRlIGFuZCBhdHRhY2ggZGVwdGhTdGVuY2lsIHJlbmRlcmJ1ZmZlcgorUEFTUyBk
ZXB0aFN0ZW5jaWxCdWZmZXIgPSBnbC5jcmVhdGVSZW5kZXJidWZmZXIoKSBpcyBub24tbnVsbC4K
K1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5n
ZXRSZW5kZXJidWZmZXJQYXJhbWV0ZXIoZ2wuUkVOREVSQlVGRkVSLCBnbC5SRU5ERVJCVUZGRVJf
SEVJR0hUKSBpcyBoZWlnaHQKK1BBU1MgZ2wuZ2V0UmVuZGVyYnVmZmVyUGFyYW1ldGVyKGdsLlJF
TkRFUkJVRkZFUiwgZ2wuUkVOREVSQlVGRkVSX0lOVEVSTkFMX0ZPUk1BVCkgaXMgZ2wuREVQVEhf
U1RFTkNJTAorUEFTUyBnbC5nZXRSZW5kZXJidWZmZXJQYXJhbWV0ZXIoZ2wuUkVOREVSQlVGRkVS
LCBnbC5SRU5ERVJCVUZGRVJfUkVEX1NJWkUpIGlzIDAKK1BBU1MgZ2wuZ2V0UmVuZGVyYnVmZmVy
UGFyYW1ldGVyKGdsLlJFTkRFUkJVRkZFUiwgZ2wuUkVOREVSQlVGRkVSX0dSRUVOX1NJWkUpIGlz
IDAKK1BBU1MgZ2wuZ2V0UmVuZGVyYnVmZmVyUGFyYW1ldGVyKGdsLlJFTkRFUkJVRkZFUiwgZ2wu
UkVOREVSQlVGRkVSX0JMVUVfU0laRSkgaXMgMAorUEFTUyBnbC5nZXRSZW5kZXJidWZmZXJQYXJh
bWV0ZXIoZ2wuUkVOREVSQlVGRkVSLCBnbC5SRU5ERVJCVUZGRVJfQUxQSEFfU0laRSkgaXMgMAor
UEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGZibyA9
IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkgaXMgbm9uLW51bGwuCitQQVNTIGdldEVycm9yIHdhcyBl
eHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1
cyhnbC5GUkFNRUJVRkZFUikgcmV0dXJuZWQgMzYwNTQKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVj
dGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAorUEFTUyBnZXRFcnJv
ciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogCisK
K0RpbWVuc2lvbnMgMiB4IDIKIENyZWF0ZSByZW5kZXJidWZmZXJzCiBQQVNTIGdsID0gY3JlYXRl
M0RDb250ZXh0KCkgaXMgbm9uLW51bGwuCiBQQVNTIGNvbG9yQnVmZmVyID0gZ2wuY3JlYXRlUmVu
ZGVyYnVmZmVyKCkgaXMgbm9uLW51bGwuCkBAIC0xNSw5MyArNDIzLDk5IEBAIFBBU1MgZ2V0RXJy
b3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlIKIEF0dGFjaCBkZXB0aCB1c2luZyBERVBUSF9B
VFRBQ0hNRU5UCiBQQVNTIGZibyA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkgaXMgbm9uLW51bGwu
CiBQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2wu
Y2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZFUikgcmV0dXJuZWQgMzYwNTMKIEF0
dGFjaCBkZXB0aCB1c2luZyBTVEVOQ0lMX0FUVEFDSE1FTlQKIFBBU1MgZmJvID0gZ2wuY3JlYXRl
RnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KIFBBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZh
bHVlOiBOT19FUlJPUiA6IAotUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1F
QlVGRkVSKSBpcyBnbC5GUkFNRUJVRkZFUl9VTlNVUFBPUlRFRAorUEFTUyBnbC5jaGVja0ZyYW1l
YnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5lZCAzNjA1NAogUEFTUyBnZXRFcnJv
ciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogCiBQ
QVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVS
QVRJT04gOiAKIEF0dGFjaCBkZXB0aCB1c2luZyBERVBUSF9TVEVOQ0lMX0FUVEFDSE1FTlQKIFBB
U1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KIFBBU1MgZ2V0RXJy
b3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAotUEFTUyBnbC5jaGVja0ZyYW1lYnVm
ZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSBpcyBnbC5GUkFNRUJVRkZFUl9VTlNVUFBPUlRFRAor
UEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5lZCAz
NjA1NAogUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZG
RVJfT1BFUkFUSU9OIDogCiBQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJ
RF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKIEF0dGFjaCBzdGVuY2lsIHVzaW5nIFNURU5DSUxf
QVRUQUNITUVOVAogUEFTUyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxs
LgogUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGds
LmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVkIDM2MDYxCiBB
dHRhY2ggc3RlbmNpbCB1c2luZyBERVBUSF9BVFRBQ0hNRU5UCiBQQVNTIGZibyA9IGdsLmNyZWF0
ZUZyYW1lYnVmZmVyKCkgaXMgbm9uLW51bGwuCiBQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2
YWx1ZTogTk9fRVJST1IgOiAKLVBBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFN
RUJVRkZFUikgaXMgZ2wuRlJBTUVCVUZGRVJfVU5TVVBQT1JURUQKK1BBU1MgZ2wuY2hlY2tGcmFt
ZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZFUikgcmV0dXJuZWQgMzYwNTQKIFBBU1MgZ2V0RXJy
b3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAog
UEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BF
UkFUSU9OIDogCiBBdHRhY2ggc3RlbmNpbCB1c2luZyBERVBUSF9TVEVOQ0lMX0FUVEFDSE1FTlQK
IFBBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KIFBBU1MgZ2V0
RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAotUEFTUyBnbC5jaGVja0ZyYW1l
YnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSBpcyBnbC5GUkFNRUJVRkZFUl9VTlNVUFBPUlRF
RAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5l
ZCAzNjA1NAogUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVC
VUZGRVJfT1BFUkFUSU9OIDogCiBQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5W
QUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKIEF0dGFjaCBkZXB0aFN0ZW5jaWwgdXNpbmcg
REVQVEhfU1RFTkNJTF9BVFRBQ0hNRU5UCiBQQVNTIGZibyA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVy
KCkgaXMgbm9uLW51bGwuCiBQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJS
T1IgOiAKK1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZFUikgcmV0
dXJuZWQgMzYwNTMKIEF0dGFjaCBkZXB0aFN0ZW5jaWwgdXNpbmcgREVQVEhfQVRUQUNITUVOVAog
UEFTUyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxsLgogUEFTUyBnZXRF
cnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCi1QQVNTIGdsLmNoZWNrRnJhbWVi
dWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIGlzIGdsLkZSQU1FQlVGRkVSX1VOU1VQUE9SVEVE
CitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVk
IDM2MDU0CiBQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJV
RkZFUl9PUEVSQVRJT04gOiAKIFBBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZB
TElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAogQXR0YWNoIGRlcHRoU3RlbmNpbCB1c2luZyBT
VEVOQ0lMX0FUVEFDSE1FTlQKIFBBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBu
b24tbnVsbC4KIFBBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAot
UEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSBpcyBnbC5GUkFN
RUJVRkZFUl9VTlNVUFBPUlRFRAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZS
QU1FQlVGRkVSKSByZXR1cm5lZCAzNjA1NAogUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFs
dWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogCiBQQVNTIGdldEVycm9yIHdhcyBl
eHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKIEF0dGFjaCBk
ZXB0aCwgdGhlbiBzdGVuY2lsLCBjYXVzaW5nIGNvbmZsaWN0CiBQQVNTIGZibyA9IGdsLmNyZWF0
ZUZyYW1lYnVmZmVyKCkgaXMgbm9uLW51bGwuCiBQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2
YWx1ZTogTk9fRVJST1IgOiAKIFBBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19F
UlJPUiA6IAotUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSBp
cyBnbC5GUkFNRUJVRkZFUl9VTlNVUFBPUlRFRAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3Rh
dHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5lZCAzNjA2MQogQXR0YWNoIHN0ZW5jaWwsIHRoZW4g
ZGVwdGgsIGNhdXNpbmcgY29uZmxpY3QKIFBBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIo
KSBpcyBub24tbnVsbC4KIFBBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJP
UiA6IAogUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCi1QQVNT
IGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIGlzIGdsLkZSQU1FQlVG
RkVSX1VOU1VQUE9SVEVECitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVC
VUZGRVIpIHJldHVybmVkIDM2MDYxCiBBdHRhY2ggZGVwdGgsIHRoZW4gZGVwdGhTdGVuY2lsLCBj
YXVzaW5nIGNvbmZsaWN0CiBQQVNTIGZibyA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkgaXMgbm9u
LW51bGwuCiBQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKIFBB
U1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAotUEFTUyBnbC5jaGVj
a0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSBpcyBnbC5GUkFNRUJVRkZFUl9VTlNV
UFBPUlRFRAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSBy
ZXR1cm5lZCAzNjA2MQogQXR0YWNoIGRlcHRoU3RlbmNpbCwgdGhlbiBkZXB0aCwgY2F1c2luZyBj
b25mbGljdAogUEFTUyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxsLgog
UEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCiBQQVNTIGdldEVy
cm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKLVBBU1MgZ2wuY2hlY2tGcmFtZWJ1
ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZFUikgaXMgZ2wuRlJBTUVCVUZGRVJfVU5TVVBQT1JURUQK
K1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZFUikgcmV0dXJuZWQg
MzYwNjEKIEF0dGFjaCBzdGVuY2lsLCB0aGVuIGRlcHRoU3RlbmNpbCwgY2F1c2luZyBjb25mbGlj
dAogUEFTUyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxsLgogUEFTUyBn
ZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCiBQQVNTIGdldEVycm9yIHdh
cyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKLVBBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0
YXR1cyhnbC5GUkFNRUJVRkZFUikgaXMgZ2wuRlJBTUVCVUZGRVJfVU5TVVBQT1JURUQKK1BBU1Mg
Z2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZFUikgcmV0dXJuZWQgMzYwNjEK
IEF0dGFjaCBkZXB0aFN0ZW5jaWwsIHRoZW4gc3RlbmNpbCwgY2F1c2luZyBjb25mbGljdAogUEFT
UyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxsLgogUEFTUyBnZXRFcnJv
ciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCiBQQVNTIGdldEVycm9yIHdhcyBleHBl
Y3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKLVBBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhn
bC5GUkFNRUJVRkZFUikgaXMgZ2wuRlJBTUVCVUZGRVJfVU5TVVBQT1JURUQKK1BBU1MgZ2wuY2hl
Y2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZFUikgcmV0dXJuZWQgMzYwNjEKIEF0dGFj
aCBjb2xvciByZW5kZXJidWZmZXIgd2l0aCBpbnRlcm5hbGZvcm1hdCA9PSBSR0JBNAogUEFTUyBj
b2xvckJ1ZmZlciA9IGdsLmNyZWF0ZVJlbmRlcmJ1ZmZlcigpIGlzIG5vbi1udWxsLgogUEFTUyBn
ZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCiBQQVNTIGZibyA9IGdsLmNy
ZWF0ZUZyYW1lYnVmZmVyKCkgaXMgbm9uLW51bGwuCiBQQVNTIGdldEVycm9yIHdhcyBleHBlY3Rl
ZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5G
UkFNRUJVRkZFUikgcmV0dXJuZWQgMzYwNTMKIEF0dGFjaCBjb2xvciByZW5kZXJidWZmZXIgd2l0
aCBpbnRlcm5hbGZvcm1hdCA9PSBSR0I1X0ExCiBQQVNTIGNvbG9yQnVmZmVyID0gZ2wuY3JlYXRl
UmVuZGVyYnVmZmVyKCkgaXMgbm9uLW51bGwuCiBQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2
YWx1ZTogTk9fRVJST1IgOiAKIFBBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBu
b24tbnVsbC4KIFBBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAor
UEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5lZCAz
NjA1MwogQXR0YWNoIGNvbG9yIHJlbmRlcmJ1ZmZlciB3aXRoIGludGVybmFsZm9ybWF0ID09IFJH
QjU2NQogUEFTUyBjb2xvckJ1ZmZlciA9IGdsLmNyZWF0ZVJlbmRlcmJ1ZmZlcigpIGlzIG5vbi1u
dWxsLgogUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCiBQQVNT
IGZibyA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkgaXMgbm9uLW51bGwuCiBQQVNTIGdldEVycm9y
IHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZl
clN0YXR1cyhnbC5GUkFNRUJVRkZFUikgcmV0dXJuZWQgMzYwNTMKIENyZWF0ZSBhbmQgYXR0YWNo
IGRlcHRoU3RlbmNpbCByZW5kZXJidWZmZXIKIFBBU1MgZGVwdGhTdGVuY2lsQnVmZmVyID0gZ2wu
Y3JlYXRlUmVuZGVyYnVmZmVyKCkgaXMgbm9uLW51bGwuCiBQQVNTIGdldEVycm9yIHdhcyBleHBl
Y3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKQEAgLTExNyw2ICs1MzEsODEgQEAgUEFTUyBnbC5nZXRS
ZW5kZXJidWZmZXJQYXJhbWV0ZXIoZ2wuUkVORAogUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQg
dmFsdWU6IE5PX0VSUk9SIDogCiBQQVNTIGZibyA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkgaXMg
bm9uLW51bGwuCiBQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAK
K1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZFUikgcmV0dXJuZWQg
MzYwNTMKK1BBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KK1BB
U1MgY29sb3JCdWZmZXIgPSBnbC5jcmVhdGVSZW5kZXJidWZmZXIoKSBpcyBub24tbnVsbC4KK1BB
U1MgZGVwdGhCdWZmZXIgPSBnbC5jcmVhdGVSZW5kZXJidWZmZXIoKSBpcyBub24tbnVsbC4KK1BB
U1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorCitBdHRhY2htZW50
cyBvZiBkaWZmZXJlbnQgc2l6ZXMgc2hvdWxkIGJlIEZSQU1FQlVGRkVSX0lOQ09NUExFVEVfRElN
RU5TSU9OUyAoT3BlbkdMIEVTIDIuMCA0LjQuNSkKK1BBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVi
dWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgY29sb3JCdWZmZXIgPSBnbC5jcmVhdGVSZW5kZXJi
dWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZGVwdGhCdWZmZXIgPSBnbC5jcmVhdGVSZW5kZXJi
dWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBO
T19FUlJPUiA6IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVS
KSBzaG91bGQgYmUgRlJBTUVCVUZGRVJfQ09NUExFVEUgd2FzIEZSQU1FQlVGRkVSX0NPTVBMRVRF
CitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHNob3VsZCBi
ZSBGUkFNRUJVRkZFUl9JTkNPTVBMRVRFX0RJTUVOU0lPTlMgd2FzIEZSQU1FQlVGRkVSX0lOQ09N
UExFVEVfRElNRU5TSU9OUyBvciBGUkFNRUJVRkZFUl9VTlNVUFBPUlRFRAorUEFTUyBnbC5jaGVj
a0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSBzaG91bGQgYmUgRlJBTUVCVUZGRVJf
Q09NUExFVEUgd2FzIEZSQU1FQlVGRkVSX0NPTVBMRVRFCitQQVNTIGdsLmNoZWNrRnJhbWVidWZm
ZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHNob3VsZCBiZSBGUkFNRUJVRkZFUl9JTkNPTVBMRVRF
X0RJTUVOU0lPTlMgd2FzIEZSQU1FQlVGRkVSX0lOQ09NUExFVEVfRElNRU5TSU9OUyBvciBGUkFN
RUJVRkZFUl9VTlNVUFBPUlRFRAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZS
QU1FQlVGRkVSKSBzaG91bGQgYmUgRlJBTUVCVUZGRVJfQ09NUExFVEUgd2FzIEZSQU1FQlVGRkVS
X0NPTVBMRVRFCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAK
K1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5j
aGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSBzaG91bGQgYmUgRlJBTUVCVUZG
RVJfSU5DT01QTEVURV9ESU1FTlNJT05TIHdhcyBGUkFNRUJVRkZFUl9JTkNPTVBMRVRFX0RJTUVO
U0lPTlMgb3IgRlJBTUVCVUZGRVJfVU5TVVBQT1JURUQKK1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZl
clN0YXR1cyhnbC5GUkFNRUJVRkZFUikgc2hvdWxkIGJlIEZSQU1FQlVGRkVSX0NPTVBMRVRFIHdh
cyBGUkFNRUJVRkZFUl9DT01QTEVURQorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6
IE5PX0VSUk9SIDogCitQQVNTIGZibyA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkgaXMgbm9uLW51
bGwuCitQQVNTIGNvbG9yQnVmZmVyID0gZ2wuY3JlYXRlUmVuZGVyYnVmZmVyKCkgaXMgbm9uLW51
bGwuCitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHNob3Vs
ZCBiZSBGUkFNRUJVRkZFUl9DT01QTEVURSB3YXMgRlJBTUVCVUZGRVJfQ09NUExFVEUKKworV3Jv
bmcgc3RvcmFnZSB0eXBlIGZvciB0eXBlIG9mIGF0dGFjaG1lbnQgYmUgRlJBTUVCVUZGRVJfSU5D
T01QTEVURV9BVFRBQ0hNRU5UIChPcGVuR0wgRVMgMi4wIDQuNC41KQorUEFTUyBnbC5jaGVja0Zy
YW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSBzaG91bGQgYmUgRlJBTUVCVUZGRVJfSU5D
T01QTEVURV9BVFRBQ0hNRU5UIHdhcyBGUkFNRUJVRkZFUl9JTkNPTVBMRVRFX0FUVEFDSE1FTlQg
b3IgRlJBTUVCVUZGRVJfVU5TVVBQT1JURUQKK1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1
cyhnbC5GUkFNRUJVRkZFUikgc2hvdWxkIGJlIEZSQU1FQlVGRkVSX0NPTVBMRVRFIHdhcyBGUkFN
RUJVRkZFUl9DT01QTEVURQorCiswIHNpemUgYXR0YWNobWVudCBzaG91bGQgYmUgRlJBTUVCVUZG
RVJfSU5DT01QTEVURV9BVFRBQ0hNRU5UIChPcGVuR0wgRVMgMi4wIDQuNC41KQorUEFTUyBnbC5j
aGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSBzaG91bGQgYmUgRlJBTUVCVUZG
RVJfSU5DT01QTEVURV9BVFRBQ0hNRU5UIHdhcyBGUkFNRUJVRkZFUl9JTkNPTVBMRVRFX0FUVEFD
SE1FTlQgb3IgRlJBTUVCVUZGRVJfVU5TVVBQT1JURUQKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVj
dGVkIHZhbHVlOiBOT19FUlJPUiA6IAorCitObyBhdHRhY2htZW50cyBzaG91bGQgYmUgSU5DT01Q
TEVURV9GUkFNRUJVRkZFUl9NSVNTSU5HX0FUVEFDSE1FTlQgKE9wZW5HTCBFUyAyLjAgNC40LjUp
CitQQVNTIGZibyA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkgaXMgbm9uLW51bGwuCitQQVNTIGds
LmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHNob3VsZCBiZSBGUkFNRUJV
RkZFUl9JTkNPTVBMRVRFX01JU1NJTkdfQVRUQUNITUVOVCB3YXMgRlJBTUVCVUZGRVJfSU5DT01Q
TEVURV9NSVNTSU5HX0FUVEFDSE1FTlQgb3IgRlJBTUVCVUZGRVJfVU5TVVBQT1JURUQKK1BBU1Mg
Y29sb3JCdWZmZXIgPSBnbC5jcmVhdGVSZW5kZXJidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1Mg
Z2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZFUikgc2hvdWxkIGJlIEZSQU1F
QlVGRkVSX0NPTVBMRVRFIHdhcyBGUkFNRUJVRkZFUl9DT01QTEVURQorUEFTUyBnbC5jaGVja0Zy
YW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSBzaG91bGQgYmUgRlJBTUVCVUZGRVJfSU5D
T01QTEVURV9NSVNTSU5HX0FUVEFDSE1FTlQgd2FzIEZSQU1FQlVGRkVSX0lOQ09NUExFVEVfTUlT
U0lOR19BVFRBQ0hNRU5UIG9yIEZSQU1FQlVGRkVSX1VOU1VQUE9SVEVECitQQVNTIGdldEVycm9y
IHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKKworVGVzdCBkcmF3aW5nIG9yIHJlYWRp
bmcgZnJvbSBhbiBpbmNvbXBsZXRlIGZyYW1lYnVmZmVyCitQQVNTIGZibyA9IGdsLmNyZWF0ZUZy
YW1lYnVmZmVyKCkgaXMgbm9uLW51bGwuCitQQVNTIGNvbG9yQnVmZmVyID0gZ2wuY3JlYXRlUmVu
ZGVyYnVmZmVyKCkgaXMgbm9uLW51bGwuCitQQVNTIGRlcHRoQnVmZmVyID0gZ2wuY3JlYXRlUmVu
ZGVyYnVmZmVyKCkgaXMgbm9uLW51bGwuCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1
ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJV
RkZFUikgc2hvdWxkIGJlIEZSQU1FQlVGRkVSX0NPTVBMRVRFIHdhcyBGUkFNRUJVRkZFUl9DT01Q
TEVURQorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSBzaG91
bGQgYmUgRlJBTUVCVUZGRVJfSU5DT01QTEVURV9ESU1FTlNJT05TIHdhcyBGUkFNRUJVRkZFUl9J
TkNPTVBMRVRFX0RJTUVOU0lPTlMgb3IgRlJBTUVCVUZGRVJfVU5TVVBQT1JURUQKKworRHJhd2lu
ZyBvciByZWFkaW5nIGZyb20gYW4gaW5jb21wbGV0ZSBmcmFtZWJ1ZmZlciBzaG91bGQgZ2VuZXJh
dGUgSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVj
dGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6
IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogZHJhd0FycmF5cyB3aXRoIGluY29tcGxl
dGUgZnJhbWVidWZmZXIKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElE
X0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IHJlYWRQaXhlbHMgZnJvbSBpbmNvbXBsZXRlIGZyYW1l
YnVmZmVyCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJV
RkZFUl9PUEVSQVRJT04gOiBjb3B5VGV4SW1hZ2UyRCBmcm9tIGluY29tcGxldGUgZnJhbWVidWZm
ZXIKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVS
X09QRVJBVElPTiA6IGNvcHlUZXhTdWJJbWFnZTJEIGZyb20gaW5jb21wbGV0ZSBmcmFtZWJ1ZmZl
cgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJf
T1BFUkFUSU9OIDogY2xlYXIgd2l0aCBpbmNvbXBsZXRlIGZyYW1lYnVmZmVyCitQQVNTIGZibzIg
PSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBnbC5jaGVja0ZyYW1l
YnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSBzaG91bGQgYmUgRlJBTUVCVUZGRVJfSU5DT01Q
TEVURV9NSVNTSU5HX0FUVEFDSE1FTlQgd2FzIEZSQU1FQlVGRkVSX0lOQ09NUExFVEVfTUlTU0lO
R19BVFRBQ0hNRU5UIG9yIEZSQU1FQlVGRkVSX1VOU1VQUE9SVEVECisKK0RyYXdpbmcgb3IgcmVh
ZGluZyBmcm9tIGFuIGluY29tcGxldGUgZnJhbWVidWZmZXIgc2hvdWxkIGdlbmVyYXRlIElOVkFM
SURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1
ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElE
X0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IGRyYXdBcnJheXMgd2l0aCBpbmNvbXBsZXRlIGZyYW1l
YnVmZmVyCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJV
RkZFUl9PUEVSQVRJT04gOiByZWFkUGl4ZWxzIGZyb20gaW5jb21wbGV0ZSBmcmFtZWJ1ZmZlcgor
UEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfT1BFUkFUSU9OIDogY29w
eVRleEltYWdlMkQgZnJvbSBpbmNvbXBsZXRlIGZyYW1lYnVmZmVyCitQQVNTIGdldEVycm9yIHdh
cyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9PUEVSQVRJT04gOiBjb3B5VGV4U3ViSW1hZ2UyRCBm
cm9tIGluY29tcGxldGUgZnJhbWVidWZmZXIKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZh
bHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IGNsZWFyIHdpdGggaW5jb21wbGV0
ZSBmcmFtZWJ1ZmZlcgorUEFTUyBjb2xvckJ1ZmZlciA9IGdsLmNyZWF0ZVJlbmRlcmJ1ZmZlcigp
IGlzIG5vbi1udWxsLgorCitEcmF3aW5nIG9yIHJlYWRpbmcgZnJvbSBhbiBpbmNvbXBsZXRlIGZy
YW1lYnVmZmVyIHNob3VsZCBnZW5lcmF0ZSBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTgor
UEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGdldEVy
cm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiBk
cmF3QXJyYXlzIHdpdGggaW5jb21wbGV0ZSBmcmFtZWJ1ZmZlcgorUEFTUyBnZXRFcnJvciB3YXMg
ZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogcmVhZFBpeGVs
cyBmcm9tIGluY29tcGxldGUgZnJhbWVidWZmZXIKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVk
IHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IGNvcHlUZXhJbWFnZTJEIGZy
b20gaW5jb21wbGV0ZSBmcmFtZWJ1ZmZlcgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFs
dWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogY29weVRleFN1YkltYWdlMkQgZnJv
bSBpbmNvbXBsZXRlIGZyYW1lYnVmZmVyCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1
ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiBjbGVhciB3aXRoIGluY29tcGxldGUg
ZnJhbWVidWZmZXIKIFBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKIAogVEVTVCBDT01Q
TEVURQpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9jYW52YXMvd2ViZ2wvZnJhbWVidWZmZXItb2Jq
ZWN0LWF0dGFjaG1lbnQuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2NhbnZh
cy93ZWJnbC9mcmFtZWJ1ZmZlci1vYmplY3QtYXR0YWNobWVudC5odG1sCShyZXZpc2lvbiAxMDI0
NTgpCisrKyBMYXlvdXRUZXN0cy9mYXN0L2NhbnZhcy93ZWJnbC9mcmFtZWJ1ZmZlci1vYmplY3Qt
YXR0YWNobWVudC5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xLDQwICsxLDYzIEBACis8IURPQ1RZ
UEUgaHRtbD4KIDxodG1sPgogPGhlYWQ+Cis8bWV0YSBjaGFyc2V0PSJ1dGYtOCI+CiA8c2NyaXB0
IHNyYz0iLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KIDxzY3Jp
cHQgc3JjPSJyZXNvdXJjZXMvd2ViZ2wtdGVzdC5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0i
cmVzb3VyY2VzL3dlYmdsLXRlc3QtdXRpbHMuanMiPjwvc2NyaXB0PgogPC9oZWFkPgogPGJvZHk+
CiA8ZGl2IGlkPSJkZXNjcmlwdGlvbiI+PC9kaXY+CiA8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4K
IAogPHNjcmlwdD4KLQordmFyIHd0dSA9IFdlYkdMVGVzdFV0aWxzOwogdmFyIGdsOwogdmFyIGZi
bzsKIHZhciBkZXB0aEJ1ZmZlcjsKIHZhciBzdGVuY2lsQnVmZmVyOwogdmFyIGRlcHRoU3RlbmNp
bEJ1ZmZlcjsKIHZhciBjb2xvckJ1ZmZlcjsKLXZhciB3aWR0aCA9IDI7Ci12YXIgaGVpZ2h0ID0g
MjsKK3ZhciB3aWR0aDsKK3ZhciBoZWlnaHQ7CisKK2NvbnN0IEFMTE9XX0NPTVBMRVRFICAgICAg
ICAgICAgICA9IDB4MDE7Citjb25zdCBBTExPV19VTlNVUFBPUlRFRCAgICAgICAgICAgPSAweDAy
OworY29uc3QgQUxMT1dfSU5DT01QTEVURV9BVFRBQ0hNRU5UID0gMHgwNDsKKworZnVuY3Rpb24g
Q2hlY2tGcmFtZWJ1ZmZlckZvckFsbG93ZWRTdGF0dXNlcyhhbGxvd2VkU3RhdHVzZXMpCit7Cisg
ICAgLy8gSWYgdGhlIGZyYW1lYnVmZmVyIGlzIGluIGFuIGVycm9yIHN0YXRlIGZvciBtdWx0aXBs
ZSByZWFzb25zLAorICAgIC8vIHdlIGNhbid0IGd1YXJhbnRlZSB3aGljaCBvbmUgd2lsbCBiZSBy
ZXBvcnRlZC4KKyAgICB2YXIgc3RhdHVzID0gZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5G
UkFNRUJVRkZFUik7CisgICAgdmFyIHN0YXR1c0FsbG93ZWQgPSAoKGFsbG93ZWRTdGF0dXNlcyAm
IEFMTE9XX0NPTVBMRVRFKSAmJiAoc3RhdHVzID09IGdsLkZSQU1FQlVGRkVSX0NPTVBMRVRFKSkg
fHwKKyAgICAgICAgICAgICAgICAgICAgICAgICgoYWxsb3dlZFN0YXR1c2VzICYgQUxMT1dfVU5T
VVBQT1JURUQpICYmIChzdGF0dXMgPT0gZ2wuRlJBTUVCVUZGRVJfVU5TVVBQT1JURUQpKSB8fAor
ICAgICAgICAgICAgICAgICAgICAgICAgKChhbGxvd2VkU3RhdHVzZXMgJiBBTExPV19JTkNPTVBM
RVRFX0FUVEFDSE1FTlQpICYmIChzdGF0dXMgPT0gZ2wuRlJBTUVCVUZGRVJfSU5DT01QTEVURV9B
VFRBQ0hNRU5UKSk7CisgICAgdmFyIG1zZyA9ICJnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGds
LkZSQU1FQlVGRkVSKSByZXR1cm5lZCAiICsgc3RhdHVzOworICAgIGlmIChzdGF0dXNBbGxvd2Vk
KQorICAgICAgICB0ZXN0UGFzc2VkKG1zZyk7CisgICAgZWxzZQorICAgICAgICB0ZXN0RmFpbGVk
KG1zZyk7Cit9CiAKLWZ1bmN0aW9uIHRlc3RBdHRhY2htZW50KGF0dGFjaG1lbnQsIGJ1ZmZlciwg
aXNDb25mbGljdGVkKQorZnVuY3Rpb24gdGVzdEF0dGFjaG1lbnQoYXR0YWNobWVudCwgYnVmZmVy
LCBhbGxvd2VkU3RhdHVzZXMpCiB7CiAgICAgc2hvdWxkQmVOb25OdWxsKCJmYm8gPSBnbC5jcmVh
dGVGcmFtZWJ1ZmZlcigpIik7CiAgICAgZ2wuYmluZEZyYW1lYnVmZmVyKGdsLkZSQU1FQlVGRkVS
LCBmYm8pOwogICAgIGdsLmZyYW1lYnVmZmVyUmVuZGVyYnVmZmVyKGdsLkZSQU1FQlVGRkVSLCBn
bC5DT0xPUl9BVFRBQ0hNRU5UMCwgZ2wuUkVOREVSQlVGRkVSLCBjb2xvckJ1ZmZlcik7CiAgICAg
Z2wuZnJhbWVidWZmZXJSZW5kZXJidWZmZXIoZ2wuRlJBTUVCVUZGRVIsIGF0dGFjaG1lbnQsIGds
LlJFTkRFUkJVRkZFUiwgYnVmZmVyKTsKICAgICBnbEVycm9yU2hvdWxkQmUoZ2wsIGdsLk5PX0VS
Uk9SKTsKLSAgICBpZiAoaXNDb25mbGljdGVkKSB7Ci0gICAgICAgIHNob3VsZEJlKCJnbC5jaGVj
a0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSIsICJnbC5GUkFNRUJVRkZFUl9VTlNV
UFBPUlRFRCIpOworICAgIENoZWNrRnJhbWVidWZmZXJGb3JBbGxvd2VkU3RhdHVzZXMoYWxsb3dl
ZFN0YXR1c2VzKTsKKyAgICBpZiAoKGFsbG93ZWRTdGF0dXNlcyAmIEFMTE9XX0NPTVBMRVRFKSA9
PSAwKSB7CiAgICAgICAgIGdsLmNsZWFyKGdsLkNPTE9SX0JVRkZFUl9CSVQpOwogICAgICAgICBn
bEVycm9yU2hvdWxkQmUoZ2wsIGdsLklOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OKTsKICAg
ICAgICAgZ2wucmVhZFBpeGVscygwLCAwLCB3aWR0aCwgaGVpZ2h0LCBnbC5SR0JBLCBnbC5VTlNJ
R05FRF9CWVRFLCBuZXcgVWludDhBcnJheSh3aWR0aCAqIGhlaWdodCAqIDQpKTsKICAgICAgICAg
Z2xFcnJvclNob3VsZEJlKGdsLCBnbC5JTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTik7CiAg
ICAgfQorICAgIGdsLmRlbGV0ZUZyYW1lYnVmZmVyKGZibyk7CiB9CiAKLWZ1bmN0aW9uIHRlc3RB
dHRhY2htZW50cyhhdHRhY2htZW50MCwgYnVmZmVyMCwgYXR0YWNobWVudDEsIGJ1ZmZlcjEsIGlz
Q29uZmxpY3RlZCkKK2Z1bmN0aW9uIHRlc3RBdHRhY2htZW50cyhhdHRhY2htZW50MCwgYnVmZmVy
MCwgYXR0YWNobWVudDEsIGJ1ZmZlcjEsIGFsbG93ZWRTdGF0dXNlcykKIHsKICAgICBzaG91bGRC
ZU5vbk51bGwoImZibyA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkiKTsKICAgICBnbC5iaW5kRnJh
bWVidWZmZXIoZ2wuRlJBTUVCVUZGRVIsIGZibyk7CkBAIC00MywxMDIgKzY2LDM0NyBAQCBmdW5j
dGlvbiB0ZXN0QXR0YWNobWVudHMoYXR0YWNobWVudDAsIGJ1CiAgICAgZ2xFcnJvclNob3VsZEJl
KGdsLCBnbC5OT19FUlJPUik7CiAgICAgZ2wuZnJhbWVidWZmZXJSZW5kZXJidWZmZXIoZ2wuRlJB
TUVCVUZGRVIsIGF0dGFjaG1lbnQxLCBnbC5SRU5ERVJCVUZGRVIsIGJ1ZmZlcjEpOwogICAgIGds
RXJyb3JTaG91bGRCZShnbCwgZ2wuTk9fRVJST1IpOwotICAgIGlmIChpc0NvbmZsaWN0ZWQpCi0g
ICAgICAgIHNob3VsZEJlKCJnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVS
KSIsICJnbC5GUkFNRUJVRkZFUl9VTlNVUFBPUlRFRCIpOworICAgIENoZWNrRnJhbWVidWZmZXJG
b3JBbGxvd2VkU3RhdHVzZXMoYWxsb3dlZFN0YXR1c2VzKTsKKyAgICBnbC5kZWxldGVGcmFtZWJ1
ZmZlcihmYm8pOwogfQogCi1mdW5jdGlvbiB0ZXN0Q29sb3JSZW5kZXJidWZmZXIoaW50ZXJuYWxm
b3JtYXQpCitmdW5jdGlvbiB0ZXN0Q29sb3JSZW5kZXJidWZmZXIoaW50ZXJuYWxmb3JtYXQsIGFs
bG93ZWRTdGF0dXNlcykKIHsKICAgICBzaG91bGRCZU5vbk51bGwoImNvbG9yQnVmZmVyID0gZ2wu
Y3JlYXRlUmVuZGVyYnVmZmVyKCkiKTsKICAgICBnbC5iaW5kUmVuZGVyYnVmZmVyKGdsLlJFTkRF
UkJVRkZFUiwgY29sb3JCdWZmZXIpOwogICAgIGdsLnJlbmRlcmJ1ZmZlclN0b3JhZ2UoZ2wuUkVO
REVSQlVGRkVSLCBpbnRlcm5hbGZvcm1hdCwgd2lkdGgsIGhlaWdodCk7CiAgICAgZ2xFcnJvclNo
b3VsZEJlKGdsLCBnbC5OT19FUlJPUik7Ci0gICAgdGVzdEF0dGFjaG1lbnQoZ2wuQ09MT1JfQVRU
QUNITUVOVDAsIGNvbG9yQnVmZmVyLCBmYWxzZSk7CisgICAgdGVzdEF0dGFjaG1lbnQoZ2wuQ09M
T1JfQVRUQUNITUVOVDAsIGNvbG9yQnVmZmVyLCBhbGxvd2VkU3RhdHVzZXMpOwogfQogCi1mdW5j
dGlvbiB0ZXN0RGVwdGhTdGVuY2lsUmVuZGVyYnVmZmVyKCkKK2Z1bmN0aW9uIHRlc3REZXB0aFN0
ZW5jaWxSZW5kZXJidWZmZXIoYWxsb3dlZFN0YXR1c2VzKQogewogICAgIHNob3VsZEJlTm9uTnVs
bCgiZGVwdGhTdGVuY2lsQnVmZmVyID0gZ2wuY3JlYXRlUmVuZGVyYnVmZmVyKCkiKTsKICAgICBn
bC5iaW5kUmVuZGVyYnVmZmVyKGdsLlJFTkRFUkJVRkZFUiwgZGVwdGhTdGVuY2lsQnVmZmVyKTsK
ICAgICBnbC5yZW5kZXJidWZmZXJTdG9yYWdlKGdsLlJFTkRFUkJVRkZFUiwgZ2wuREVQVEhfU1RF
TkNJTCwgd2lkdGgsIGhlaWdodCk7CiAgICAgZ2xFcnJvclNob3VsZEJlKGdsLCBnbC5OT19FUlJP
Uik7Ci0gICAgc2hvdWxkQmUoImdsLmdldFJlbmRlcmJ1ZmZlclBhcmFtZXRlcihnbC5SRU5ERVJC
VUZGRVIsIGdsLlJFTkRFUkJVRkZFUl9XSURUSCkiLCAid2lkdGgiKTsKLSAgICBzaG91bGRCZSgi
Z2wuZ2V0UmVuZGVyYnVmZmVyUGFyYW1ldGVyKGdsLlJFTkRFUkJVRkZFUiwgZ2wuUkVOREVSQlVG
RkVSX0hFSUdIVCkiLCAiaGVpZ2h0Iik7CisKKyAgICAvLyBPcGVuR0wgaXRzZWxmIGRvZXNuJ3Qg
c2VlbSB0byBndWFyYW50ZWUgdGhhdCBlLmcuIGEgMiB4IDAKKyAgICAvLyByZW5kZXJidWZmZXIg
d2lsbCByZXBvcnQgMiBmb3IgaXRzIHdpZHRoIHdoZW4gcXVlcmllZC4KKyAgICBpZiAoIShoZWln
aHQgPT0gMCAmJiB3aWR0aCA+IDApKQorICAgICAgICBzaG91bGRCZSgiZ2wuZ2V0UmVuZGVyYnVm
ZmVyUGFyYW1ldGVyKGdsLlJFTkRFUkJVRkZFUiwgZ2wuUkVOREVSQlVGRkVSX1dJRFRIKSIsICJ3
aWR0aCIpOworICAgIGlmICghKHdpZHRoID09IDAgJiYgaGVpZ2h0ID4gMCkpCisgICAgICAgIHNo
b3VsZEJlKCJnbC5nZXRSZW5kZXJidWZmZXJQYXJhbWV0ZXIoZ2wuUkVOREVSQlVGRkVSLCBnbC5S
RU5ERVJCVUZGRVJfSEVJR0hUKSIsICJoZWlnaHQiKTsKICAgICBzaG91bGRCZSgiZ2wuZ2V0UmVu
ZGVyYnVmZmVyUGFyYW1ldGVyKGdsLlJFTkRFUkJVRkZFUiwgZ2wuUkVOREVSQlVGRkVSX0lOVEVS
TkFMX0ZPUk1BVCkiLCAiZ2wuREVQVEhfU1RFTkNJTCIpOwogICAgIHNob3VsZEJlKCJnbC5nZXRS
ZW5kZXJidWZmZXJQYXJhbWV0ZXIoZ2wuUkVOREVSQlVGRkVSLCBnbC5SRU5ERVJCVUZGRVJfUkVE
X1NJWkUpIiwgIjAiKTsKICAgICBzaG91bGRCZSgiZ2wuZ2V0UmVuZGVyYnVmZmVyUGFyYW1ldGVy
KGdsLlJFTkRFUkJVRkZFUiwgZ2wuUkVOREVSQlVGRkVSX0dSRUVOX1NJWkUpIiwgIjAiKTsKICAg
ICBzaG91bGRCZSgiZ2wuZ2V0UmVuZGVyYnVmZmVyUGFyYW1ldGVyKGdsLlJFTkRFUkJVRkZFUiwg
Z2wuUkVOREVSQlVGRkVSX0JMVUVfU0laRSkiLCAiMCIpOwogICAgIHNob3VsZEJlKCJnbC5nZXRS
ZW5kZXJidWZmZXJQYXJhbWV0ZXIoZ2wuUkVOREVSQlVGRkVSLCBnbC5SRU5ERVJCVUZGRVJfQUxQ
SEFfU0laRSkiLCAiMCIpOwotICAgIHNob3VsZEJlVHJ1ZSgiZ2wuZ2V0UmVuZGVyYnVmZmVyUGFy
YW1ldGVyKGdsLlJFTkRFUkJVRkZFUiwgZ2wuUkVOREVSQlVGRkVSX0RFUFRIX1NJWkUpID4gMCIp
OwotICAgIHNob3VsZEJlVHJ1ZSgiZ2wuZ2V0UmVuZGVyYnVmZmVyUGFyYW1ldGVyKGdsLlJFTkRF
UkJVRkZFUiwgZ2wuUkVOREVSQlVGRkVSX1NURU5DSUxfU0laRSkgPiAwIik7CisgICAgLy8gQXZv
aWQgdmVyaWZ5aW5nIHRoZXNlIGZvciB6ZXJvLXNpemVkIHJlbmRlcmJ1ZmZlcnMgZm9yIHRoZSB0
aW1lCisgICAgLy8gYmVpbmcgc2luY2UgaXQgYXBwZWFycyB0aGF0IGV2ZW4gT3BlbkdMIGRvZXNu
J3QgZ3VhcmFudGVlIHRoZW0uCisgICAgaWYgKHdpZHRoID4gMCAmJiBoZWlnaHQgPiAwKSB7Cisg
ICAgICAgIHNob3VsZEJlVHJ1ZSgiZ2wuZ2V0UmVuZGVyYnVmZmVyUGFyYW1ldGVyKGdsLlJFTkRF
UkJVRkZFUiwgZ2wuUkVOREVSQlVGRkVSX0RFUFRIX1NJWkUpID4gMCIpOworICAgICAgICBzaG91
bGRCZVRydWUoImdsLmdldFJlbmRlcmJ1ZmZlclBhcmFtZXRlcihnbC5SRU5ERVJCVUZGRVIsIGds
LlJFTkRFUkJVRkZFUl9TVEVOQ0lMX1NJWkUpID4gMCIpOworICAgIH0KICAgICBnbEVycm9yU2hv
dWxkQmUoZ2wsIGdsLk5PX0VSUk9SKTsKLSAgICB0ZXN0QXR0YWNobWVudChnbC5ERVBUSF9TVEVO
Q0lMX0FUVEFDSE1FTlQsIGRlcHRoU3RlbmNpbEJ1ZmZlciwgZmFsc2UpOworICAgIHRlc3RBdHRh
Y2htZW50KGdsLkRFUFRIX1NURU5DSUxfQVRUQUNITUVOVCwgZGVwdGhTdGVuY2lsQnVmZmVyLCBh
bGxvd2VkU3RhdHVzZXMpOwogfQogCiBkZXNjcmlwdGlvbigiVGVzdCBmcmFtZWJ1ZmZlciBvYmpl
Y3QgYXR0YWNobWVudCBiZWhhdmlvcnMiKTsKIAotZGVidWcoIkNyZWF0ZSByZW5kZXJidWZmZXJz
Iik7Ci1zaG91bGRCZU5vbk51bGwoImdsID0gY3JlYXRlM0RDb250ZXh0KCkiKTsKLXNob3VsZEJl
Tm9uTnVsbCgiY29sb3JCdWZmZXIgPSBnbC5jcmVhdGVSZW5kZXJidWZmZXIoKSIpOwotZ2wuYmlu
ZFJlbmRlcmJ1ZmZlcihnbC5SRU5ERVJCVUZGRVIsIGNvbG9yQnVmZmVyKTsKLWdsLnJlbmRlcmJ1
ZmZlclN0b3JhZ2UoZ2wuUkVOREVSQlVGRkVSLCBnbC5SR0JBNCwgd2lkdGgsIGhlaWdodCk7Ci1n
bEVycm9yU2hvdWxkQmUoZ2wsIGdsLk5PX0VSUk9SKTsKLXNob3VsZEJlTm9uTnVsbCgiZGVwdGhC
dWZmZXIgPSBnbC5jcmVhdGVSZW5kZXJidWZmZXIoKSIpOwotZ2wuYmluZFJlbmRlcmJ1ZmZlcihn
bC5SRU5ERVJCVUZGRVIsIGRlcHRoQnVmZmVyKTsKLWdsLnJlbmRlcmJ1ZmZlclN0b3JhZ2UoZ2wu
UkVOREVSQlVGRkVSLCBnbC5ERVBUSF9DT01QT05FTlQxNiwgd2lkdGgsIGhlaWdodCk7Ci1nbEVy
cm9yU2hvdWxkQmUoZ2wsIGdsLk5PX0VSUk9SKTsKLXNob3VsZEJlTm9uTnVsbCgic3RlbmNpbEJ1
ZmZlciA9IGdsLmNyZWF0ZVJlbmRlcmJ1ZmZlcigpIik7Ci1nbC5iaW5kUmVuZGVyYnVmZmVyKGds
LlJFTkRFUkJVRkZFUiwgc3RlbmNpbEJ1ZmZlcik7Ci1nbC5yZW5kZXJidWZmZXJTdG9yYWdlKGds
LlJFTkRFUkJVRkZFUiwgZ2wuU1RFTkNJTF9JTkRFWDgsIHdpZHRoLCBoZWlnaHQpOwotZ2xFcnJv
clNob3VsZEJlKGdsLCBnbC5OT19FUlJPUik7Ci1zaG91bGRCZU5vbk51bGwoImRlcHRoU3RlbmNp
bEJ1ZmZlciA9IGdsLmNyZWF0ZVJlbmRlcmJ1ZmZlcigpIik7Ci1nbC5iaW5kUmVuZGVyYnVmZmVy
KGdsLlJFTkRFUkJVRkZFUiwgZGVwdGhTdGVuY2lsQnVmZmVyKTsKLWdsLnJlbmRlcmJ1ZmZlclN0
b3JhZ2UoZ2wuUkVOREVSQlVGRkVSLCBnbC5ERVBUSF9TVEVOQ0lMLCB3aWR0aCwgaGVpZ2h0KTsK
LWdsRXJyb3JTaG91bGRCZShnbCwgZ2wuTk9fRVJST1IpOwotCi1kZWJ1ZygiQXR0YWNoIGRlcHRo
IHVzaW5nIERFUFRIX0FUVEFDSE1FTlQiKTsKLXRlc3RBdHRhY2htZW50KGdsLkRFUFRIX0FUVEFD
SE1FTlQsIGRlcHRoQnVmZmVyLCBmYWxzZSk7Ci1kZWJ1ZygiQXR0YWNoIGRlcHRoIHVzaW5nIFNU
RU5DSUxfQVRUQUNITUVOVCIpOwotdGVzdEF0dGFjaG1lbnQoZ2wuU1RFTkNJTF9BVFRBQ0hNRU5U
LCBkZXB0aEJ1ZmZlciwgdHJ1ZSk7Ci1kZWJ1ZygiQXR0YWNoIGRlcHRoIHVzaW5nIERFUFRIX1NU
RU5DSUxfQVRUQUNITUVOVCIpOwotdGVzdEF0dGFjaG1lbnQoZ2wuREVQVEhfU1RFTkNJTF9BVFRB
Q0hNRU5ULCBkZXB0aEJ1ZmZlciwgdHJ1ZSk7Ci1kZWJ1ZygiQXR0YWNoIHN0ZW5jaWwgdXNpbmcg
U1RFTkNJTF9BVFRBQ0hNRU5UIik7Ci10ZXN0QXR0YWNobWVudChnbC5TVEVOQ0lMX0FUVEFDSE1F
TlQsIHN0ZW5jaWxCdWZmZXIsIGZhbHNlKTsKLWRlYnVnKCJBdHRhY2ggc3RlbmNpbCB1c2luZyBE
RVBUSF9BVFRBQ0hNRU5UIik7Ci10ZXN0QXR0YWNobWVudChnbC5ERVBUSF9BVFRBQ0hNRU5ULCBz
dGVuY2lsQnVmZmVyLCB0cnVlKTsKLWRlYnVnKCJBdHRhY2ggc3RlbmNpbCB1c2luZyBERVBUSF9T
VEVOQ0lMX0FUVEFDSE1FTlQiKTsKLXRlc3RBdHRhY2htZW50KGdsLkRFUFRIX1NURU5DSUxfQVRU
QUNITUVOVCwgc3RlbmNpbEJ1ZmZlciwgdHJ1ZSk7Ci1kZWJ1ZygiQXR0YWNoIGRlcHRoU3RlbmNp
bCB1c2luZyBERVBUSF9TVEVOQ0lMX0FUVEFDSE1FTlQiKTsKLXRlc3RBdHRhY2htZW50KGdsLkRF
UFRIX1NURU5DSUxfQVRUQUNITUVOVCwgZGVwdGhTdGVuY2lsQnVmZmVyLCBmYWxzZSk7Ci1kZWJ1
ZygiQXR0YWNoIGRlcHRoU3RlbmNpbCB1c2luZyBERVBUSF9BVFRBQ0hNRU5UIik7Ci10ZXN0QXR0
YWNobWVudChnbC5ERVBUSF9BVFRBQ0hNRU5ULCBkZXB0aFN0ZW5jaWxCdWZmZXIsIHRydWUpOwot
ZGVidWcoIkF0dGFjaCBkZXB0aFN0ZW5jaWwgdXNpbmcgU1RFTkNJTF9BVFRBQ0hNRU5UIik7Ci10
ZXN0QXR0YWNobWVudChnbC5TVEVOQ0lMX0FUVEFDSE1FTlQsIGRlcHRoU3RlbmNpbEJ1ZmZlciwg
dHJ1ZSk7Ci0KLWRlYnVnKCJBdHRhY2ggZGVwdGgsIHRoZW4gc3RlbmNpbCwgY2F1c2luZyBjb25m
bGljdCIpOwotdGVzdEF0dGFjaG1lbnRzKGdsLkRFUFRIX0FUVEFDSE1FTlQsIGRlcHRoQnVmZmVy
LCBnbC5TVEVOQ0lMX0FUVEFDSE1FTlQsIHN0ZW5jaWxCdWZmZXIsIHRydWUpOwotZGVidWcoIkF0
dGFjaCBzdGVuY2lsLCB0aGVuIGRlcHRoLCBjYXVzaW5nIGNvbmZsaWN0Iik7Ci10ZXN0QXR0YWNo
bWVudHMoZ2wuU1RFTkNJTF9BVFRBQ0hNRU5ULCBzdGVuY2lsQnVmZmVyLCBnbC5ERVBUSF9BVFRB
Q0hNRU5ULCBkZXB0aEJ1ZmZlciwgdHJ1ZSk7Ci1kZWJ1ZygiQXR0YWNoIGRlcHRoLCB0aGVuIGRl
cHRoU3RlbmNpbCwgY2F1c2luZyBjb25mbGljdCIpOwotdGVzdEF0dGFjaG1lbnRzKGdsLkRFUFRI
X0FUVEFDSE1FTlQsIGRlcHRoQnVmZmVyLCBnbC5ERVBUSF9TVEVOQ0lMX0FUVEFDSE1FTlQsIGRl
cHRoU3RlbmNpbEJ1ZmZlciwgdHJ1ZSk7Ci1kZWJ1ZygiQXR0YWNoIGRlcHRoU3RlbmNpbCwgdGhl
biBkZXB0aCwgY2F1c2luZyBjb25mbGljdCIpOwotdGVzdEF0dGFjaG1lbnRzKGdsLkRFUFRIX1NU
RU5DSUxfQVRUQUNITUVOVCwgZGVwdGhTdGVuY2lsQnVmZmVyLCBnbC5ERVBUSF9BVFRBQ0hNRU5U
LCBkZXB0aEJ1ZmZlciwgdHJ1ZSk7Ci1kZWJ1ZygiQXR0YWNoIHN0ZW5jaWwsIHRoZW4gZGVwdGhT
dGVuY2lsLCBjYXVzaW5nIGNvbmZsaWN0Iik7Ci10ZXN0QXR0YWNobWVudHMoZ2wuREVQVEhfQVRU
QUNITUVOVCwgZGVwdGhCdWZmZXIsIGdsLkRFUFRIX1NURU5DSUxfQVRUQUNITUVOVCwgZGVwdGhT
dGVuY2lsQnVmZmVyLCB0cnVlKTsKLWRlYnVnKCJBdHRhY2ggZGVwdGhTdGVuY2lsLCB0aGVuIHN0
ZW5jaWwsIGNhdXNpbmcgY29uZmxpY3QiKTsKLXRlc3RBdHRhY2htZW50cyhnbC5ERVBUSF9TVEVO
Q0lMX0FUVEFDSE1FTlQsIGRlcHRoU3RlbmNpbEJ1ZmZlciwgZ2wuU1RFTkNJTF9BVFRBQ0hNRU5U
LCBzdGVuY2lsQnVmZmVyLCB0cnVlKTsKLQotZGVidWcoIkF0dGFjaCBjb2xvciByZW5kZXJidWZm
ZXIgd2l0aCBpbnRlcm5hbGZvcm1hdCA9PSBSR0JBNCIpOwotdGVzdENvbG9yUmVuZGVyYnVmZmVy
KGdsLlJHQkE0KTsKK2ZvciAod2lkdGggPSAwOyB3aWR0aCA8PSAyOyB3aWR0aCArPSAyKQorewor
ICAgIGZvciAoaGVpZ2h0ID0gMDsgaGVpZ2h0IDw9IDI7IGhlaWdodCArPSAyKQorICAgIHsKKyAg
ICAgICAgZGVidWcoIiIpOworICAgICAgICBkZWJ1ZygiRGltZW5zaW9ucyAiICsgd2lkdGggKyAi
IHggIiArIGhlaWdodCk7CisKKyAgICAgICAgZGVidWcoIkNyZWF0ZSByZW5kZXJidWZmZXJzIik7
CisgICAgICAgIHNob3VsZEJlTm9uTnVsbCgiZ2wgPSBjcmVhdGUzRENvbnRleHQoKSIpOworICAg
ICAgICBzaG91bGRCZU5vbk51bGwoImNvbG9yQnVmZmVyID0gZ2wuY3JlYXRlUmVuZGVyYnVmZmVy
KCkiKTsKKyAgICAgICAgZ2wuYmluZFJlbmRlcmJ1ZmZlcihnbC5SRU5ERVJCVUZGRVIsIGNvbG9y
QnVmZmVyKTsKKyAgICAgICAgZ2wucmVuZGVyYnVmZmVyU3RvcmFnZShnbC5SRU5ERVJCVUZGRVIs
IGdsLlJHQkE0LCB3aWR0aCwgaGVpZ2h0KTsKKyAgICAgICAgZ2xFcnJvclNob3VsZEJlKGdsLCBn
bC5OT19FUlJPUik7CisgICAgICAgIHNob3VsZEJlTm9uTnVsbCgiZGVwdGhCdWZmZXIgPSBnbC5j
cmVhdGVSZW5kZXJidWZmZXIoKSIpOworICAgICAgICBnbC5iaW5kUmVuZGVyYnVmZmVyKGdsLlJF
TkRFUkJVRkZFUiwgZGVwdGhCdWZmZXIpOworICAgICAgICBnbC5yZW5kZXJidWZmZXJTdG9yYWdl
KGdsLlJFTkRFUkJVRkZFUiwgZ2wuREVQVEhfQ09NUE9ORU5UMTYsIHdpZHRoLCBoZWlnaHQpOwor
ICAgICAgICBnbEVycm9yU2hvdWxkQmUoZ2wsIGdsLk5PX0VSUk9SKTsKKyAgICAgICAgc2hvdWxk
QmVOb25OdWxsKCJzdGVuY2lsQnVmZmVyID0gZ2wuY3JlYXRlUmVuZGVyYnVmZmVyKCkiKTsKKyAg
ICAgICAgZ2wuYmluZFJlbmRlcmJ1ZmZlcihnbC5SRU5ERVJCVUZGRVIsIHN0ZW5jaWxCdWZmZXIp
OworICAgICAgICBnbC5yZW5kZXJidWZmZXJTdG9yYWdlKGdsLlJFTkRFUkJVRkZFUiwgZ2wuU1RF
TkNJTF9JTkRFWDgsIHdpZHRoLCBoZWlnaHQpOworICAgICAgICBnbEVycm9yU2hvdWxkQmUoZ2ws
IGdsLk5PX0VSUk9SKTsKKyAgICAgICAgc2hvdWxkQmVOb25OdWxsKCJkZXB0aFN0ZW5jaWxCdWZm
ZXIgPSBnbC5jcmVhdGVSZW5kZXJidWZmZXIoKSIpOworICAgICAgICBnbC5iaW5kUmVuZGVyYnVm
ZmVyKGdsLlJFTkRFUkJVRkZFUiwgZGVwdGhTdGVuY2lsQnVmZmVyKTsKKyAgICAgICAgZ2wucmVu
ZGVyYnVmZmVyU3RvcmFnZShnbC5SRU5ERVJCVUZGRVIsIGdsLkRFUFRIX1NURU5DSUwsIHdpZHRo
LCBoZWlnaHQpOworICAgICAgICBnbEVycm9yU2hvdWxkQmUoZ2wsIGdsLk5PX0VSUk9SKTsKKwor
ICAgICAgICB2YXIgYWxsb3dlZFN0YXR1c0Zvckdvb2RDYXNlCisgICAgICAgICAgICA9ICh3aWR0
aCA9PSAwIHx8IGhlaWdodCA9PSAwKSA/IEFMTE9XX0lOQ09NUExFVEVfQVRUQUNITUVOVCA6IEFM
TE9XX0NPTVBMRVRFOworCisgICAgICAgIC8vIHNvbWUgY2FzZXMgaW52b2x2aW5nIHN0ZW5jaWwg
c2VlbSB0byBiZSBpbXBsZW1lbnRhdGlvbi1kZXBlbmRlbnQKKyAgICAgICAgdmFyIGFsbG93ZWRT
dGF0dXNGb3JJbXBsRGVwZW5kZW50Q2FzZSA9IGFsbG93ZWRTdGF0dXNGb3JHb29kQ2FzZSB8IEFM
TE9XX1VOU1VQUE9SVEVEOworCisgICAgICAgIGRlYnVnKCJBdHRhY2ggZGVwdGggdXNpbmcgREVQ
VEhfQVRUQUNITUVOVCIpOworICAgICAgICB0ZXN0QXR0YWNobWVudChnbC5ERVBUSF9BVFRBQ0hN
RU5ULCBkZXB0aEJ1ZmZlciwgYWxsb3dlZFN0YXR1c0Zvckdvb2RDYXNlKTsKKyAgICAgICAgZGVi
dWcoIkF0dGFjaCBkZXB0aCB1c2luZyBTVEVOQ0lMX0FUVEFDSE1FTlQiKTsKKyAgICAgICAgdGVz
dEF0dGFjaG1lbnQoZ2wuU1RFTkNJTF9BVFRBQ0hNRU5ULCBkZXB0aEJ1ZmZlciwgQUxMT1dfSU5D
T01QTEVURV9BVFRBQ0hNRU5UKTsKKyAgICAgICAgZGVidWcoIkF0dGFjaCBkZXB0aCB1c2luZyBE
RVBUSF9TVEVOQ0lMX0FUVEFDSE1FTlQiKTsKKyAgICAgICAgdGVzdEF0dGFjaG1lbnQoZ2wuREVQ
VEhfU1RFTkNJTF9BVFRBQ0hNRU5ULCBkZXB0aEJ1ZmZlciwgQUxMT1dfSU5DT01QTEVURV9BVFRB
Q0hNRU5UKTsKKyAgICAgICAgZGVidWcoIkF0dGFjaCBzdGVuY2lsIHVzaW5nIFNURU5DSUxfQVRU
QUNITUVOVCIpOworICAgICAgICB0ZXN0QXR0YWNobWVudChnbC5TVEVOQ0lMX0FUVEFDSE1FTlQs
IHN0ZW5jaWxCdWZmZXIsIGFsbG93ZWRTdGF0dXNGb3JJbXBsRGVwZW5kZW50Q2FzZSk7CisgICAg
ICAgIGRlYnVnKCJBdHRhY2ggc3RlbmNpbCB1c2luZyBERVBUSF9BVFRBQ0hNRU5UIik7CisgICAg
ICAgIHRlc3RBdHRhY2htZW50KGdsLkRFUFRIX0FUVEFDSE1FTlQsIHN0ZW5jaWxCdWZmZXIsIEFM
TE9XX0lOQ09NUExFVEVfQVRUQUNITUVOVCk7CisgICAgICAgIGRlYnVnKCJBdHRhY2ggc3RlbmNp
bCB1c2luZyBERVBUSF9TVEVOQ0lMX0FUVEFDSE1FTlQiKTsKKyAgICAgICAgdGVzdEF0dGFjaG1l
bnQoZ2wuREVQVEhfU1RFTkNJTF9BVFRBQ0hNRU5ULCBzdGVuY2lsQnVmZmVyLCBBTExPV19JTkNP
TVBMRVRFX0FUVEFDSE1FTlQpOworICAgICAgICBkZWJ1ZygiQXR0YWNoIGRlcHRoU3RlbmNpbCB1
c2luZyBERVBUSF9TVEVOQ0lMX0FUVEFDSE1FTlQiKTsKKyAgICAgICAgdGVzdEF0dGFjaG1lbnQo
Z2wuREVQVEhfU1RFTkNJTF9BVFRBQ0hNRU5ULCBkZXB0aFN0ZW5jaWxCdWZmZXIsIGFsbG93ZWRT
dGF0dXNGb3JHb29kQ2FzZSk7CisgICAgICAgIGRlYnVnKCJBdHRhY2ggZGVwdGhTdGVuY2lsIHVz
aW5nIERFUFRIX0FUVEFDSE1FTlQiKTsKKyAgICAgICAgdGVzdEF0dGFjaG1lbnQoZ2wuREVQVEhf
QVRUQUNITUVOVCwgZGVwdGhTdGVuY2lsQnVmZmVyLCBBTExPV19JTkNPTVBMRVRFX0FUVEFDSE1F
TlQpOworICAgICAgICBkZWJ1ZygiQXR0YWNoIGRlcHRoU3RlbmNpbCB1c2luZyBTVEVOQ0lMX0FU
VEFDSE1FTlQiKTsKKyAgICAgICAgdGVzdEF0dGFjaG1lbnQoZ2wuU1RFTkNJTF9BVFRBQ0hNRU5U
LCBkZXB0aFN0ZW5jaWxCdWZmZXIsIEFMTE9XX0lOQ09NUExFVEVfQVRUQUNITUVOVCk7CisKKyAg
ICAgICAgdmFyIGFsbG93ZWRTdGF0dXNGb3JDb25mbGljdGVkQXR0YWNobWVudAorICAgICAgICAg
ICAgPSAod2lkdGggPT0gMCB8fCBoZWlnaHQgPT0gMCkgPyBBTExPV19VTlNVUFBPUlRFRCB8IEFM
TE9XX0lOQ09NUExFVEVfQVRUQUNITUVOVAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgOiBBTExPV19VTlNVUFBPUlRFRDsKKworICAgICAgICBkZWJ1ZygiQXR0YWNo
IGRlcHRoLCB0aGVuIHN0ZW5jaWwsIGNhdXNpbmcgY29uZmxpY3QiKTsKKyAgICAgICAgdGVzdEF0
dGFjaG1lbnRzKGdsLkRFUFRIX0FUVEFDSE1FTlQsIGRlcHRoQnVmZmVyLCBnbC5TVEVOQ0lMX0FU
VEFDSE1FTlQsIHN0ZW5jaWxCdWZmZXIsIGFsbG93ZWRTdGF0dXNGb3JDb25mbGljdGVkQXR0YWNo
bWVudCk7CisgICAgICAgIGRlYnVnKCJBdHRhY2ggc3RlbmNpbCwgdGhlbiBkZXB0aCwgY2F1c2lu
ZyBjb25mbGljdCIpOworICAgICAgICB0ZXN0QXR0YWNobWVudHMoZ2wuU1RFTkNJTF9BVFRBQ0hN
RU5ULCBzdGVuY2lsQnVmZmVyLCBnbC5ERVBUSF9BVFRBQ0hNRU5ULCBkZXB0aEJ1ZmZlciwgYWxs
b3dlZFN0YXR1c0ZvckNvbmZsaWN0ZWRBdHRhY2htZW50KTsKKyAgICAgICAgZGVidWcoIkF0dGFj
aCBkZXB0aCwgdGhlbiBkZXB0aFN0ZW5jaWwsIGNhdXNpbmcgY29uZmxpY3QiKTsKKyAgICAgICAg
dGVzdEF0dGFjaG1lbnRzKGdsLkRFUFRIX0FUVEFDSE1FTlQsIGRlcHRoQnVmZmVyLCBnbC5ERVBU
SF9TVEVOQ0lMX0FUVEFDSE1FTlQsIGRlcHRoU3RlbmNpbEJ1ZmZlciwgYWxsb3dlZFN0YXR1c0Zv
ckNvbmZsaWN0ZWRBdHRhY2htZW50KTsKKyAgICAgICAgZGVidWcoIkF0dGFjaCBkZXB0aFN0ZW5j
aWwsIHRoZW4gZGVwdGgsIGNhdXNpbmcgY29uZmxpY3QiKTsKKyAgICAgICAgdGVzdEF0dGFjaG1l
bnRzKGdsLkRFUFRIX1NURU5DSUxfQVRUQUNITUVOVCwgZGVwdGhTdGVuY2lsQnVmZmVyLCBnbC5E
RVBUSF9BVFRBQ0hNRU5ULCBkZXB0aEJ1ZmZlciwgYWxsb3dlZFN0YXR1c0ZvckNvbmZsaWN0ZWRB
dHRhY2htZW50KTsKKyAgICAgICAgZGVidWcoIkF0dGFjaCBzdGVuY2lsLCB0aGVuIGRlcHRoU3Rl
bmNpbCwgY2F1c2luZyBjb25mbGljdCIpOworICAgICAgICB0ZXN0QXR0YWNobWVudHMoZ2wuREVQ
VEhfQVRUQUNITUVOVCwgZGVwdGhCdWZmZXIsIGdsLkRFUFRIX1NURU5DSUxfQVRUQUNITUVOVCwg
ZGVwdGhTdGVuY2lsQnVmZmVyLCBhbGxvd2VkU3RhdHVzRm9yQ29uZmxpY3RlZEF0dGFjaG1lbnQp
OworICAgICAgICBkZWJ1ZygiQXR0YWNoIGRlcHRoU3RlbmNpbCwgdGhlbiBzdGVuY2lsLCBjYXVz
aW5nIGNvbmZsaWN0Iik7CisgICAgICAgIHRlc3RBdHRhY2htZW50cyhnbC5ERVBUSF9TVEVOQ0lM
X0FUVEFDSE1FTlQsIGRlcHRoU3RlbmNpbEJ1ZmZlciwgZ2wuU1RFTkNJTF9BVFRBQ0hNRU5ULCBz
dGVuY2lsQnVmZmVyLCBhbGxvd2VkU3RhdHVzRm9yQ29uZmxpY3RlZEF0dGFjaG1lbnQpOworCisg
ICAgICAgIGRlYnVnKCJBdHRhY2ggY29sb3IgcmVuZGVyYnVmZmVyIHdpdGggaW50ZXJuYWxmb3Jt
YXQgPT0gUkdCQTQiKTsKKyAgICAgICAgdGVzdENvbG9yUmVuZGVyYnVmZmVyKGdsLlJHQkE0LCBh
bGxvd2VkU3RhdHVzRm9yR29vZENhc2UpOworCisgICAgICAgIGRlYnVnKCJBdHRhY2ggY29sb3Ig
cmVuZGVyYnVmZmVyIHdpdGggaW50ZXJuYWxmb3JtYXQgPT0gUkdCNV9BMSIpOworICAgICAgICB0
ZXN0Q29sb3JSZW5kZXJidWZmZXIoZ2wuUkdCNV9BMSwgYWxsb3dlZFN0YXR1c0Zvckdvb2RDYXNl
KTsKKworICAgICAgICBkZWJ1ZygiQXR0YWNoIGNvbG9yIHJlbmRlcmJ1ZmZlciB3aXRoIGludGVy
bmFsZm9ybWF0ID09IFJHQjU2NSIpOworICAgICAgICB0ZXN0Q29sb3JSZW5kZXJidWZmZXIoZ2wu
UkdCNTY1LCBhbGxvd2VkU3RhdHVzRm9yR29vZENhc2UpOworCisgICAgICAgIGRlYnVnKCJDcmVh
dGUgYW5kIGF0dGFjaCBkZXB0aFN0ZW5jaWwgcmVuZGVyYnVmZmVyIik7CisgICAgICAgIHRlc3RE
ZXB0aFN0ZW5jaWxSZW5kZXJidWZmZXIoYWxsb3dlZFN0YXR1c0Zvckdvb2RDYXNlKTsKKyAgICB9
Cit9CisKKy8vIERldGVybWluZSBpZiB3ZSBjYW4gYXR0YWNoIGJvdGggY29sb3IgYW5kIGRlcHRo
IG9yIGNvbG9yIGFuZCBkZXB0aF9zdGVuY2lsCit2YXIgZGVwdGhGb3JtYXQ7Cit2YXIgZGVwdGhB
dHRhY2htZW50OworCitmdW5jdGlvbiBjaGVja1ZhbGlkQ29sb3JEZXB0aENvbWJpbmF0aW9uKCkg
eworICAgIHNob3VsZEJlTm9uTnVsbCgiZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSIpOwor
ICAgIGdsLmJpbmRGcmFtZWJ1ZmZlcihnbC5GUkFNRUJVRkZFUiwgZmJvKTsKKyAgICBzaG91bGRC
ZU5vbk51bGwoImNvbG9yQnVmZmVyID0gZ2wuY3JlYXRlUmVuZGVyYnVmZmVyKCkiKTsKKyAgICBn
bC5iaW5kUmVuZGVyYnVmZmVyKGdsLlJFTkRFUkJVRkZFUiwgY29sb3JCdWZmZXIpOworICAgIGds
LmZyYW1lYnVmZmVyUmVuZGVyYnVmZmVyKAorICAgICAgICBnbC5GUkFNRUJVRkZFUiwgZ2wuQ09M
T1JfQVRUQUNITUVOVDAsIGdsLlJFTkRFUkJVRkZFUiwgY29sb3JCdWZmZXIpOworICAgIGdsLnJl
bmRlcmJ1ZmZlclN0b3JhZ2UoZ2wuUkVOREVSQlVGRkVSLCBnbC5SR0JBNCwgMTYsIDE2KTsKKwor
ICAgIHNob3VsZEJlTm9uTnVsbCgiZGVwdGhCdWZmZXIgPSBnbC5jcmVhdGVSZW5kZXJidWZmZXIo
KSIpOworICAgIGdsLmJpbmRSZW5kZXJidWZmZXIoZ2wuUkVOREVSQlVGRkVSLCBkZXB0aEJ1ZmZl
cik7CisKKyAgICByZXR1cm4gdHJ5RGVwdGgoZ2wuREVQVEhfQ09NUE9ORU5UMTYsIGdsLkRFUFRI
X0FUVEFDSE1FTlQpIHx8IHRyeURlcHRoKGdsLkRFUFRIX1NURU5DSUwsIGdsLkRFUFRIX1NURU5D
SUxfQVRUQUNITUVOVCk7CisKKyAgICBmdW5jdGlvbiB0cnlEZXB0aCh0cnlfZm9ybWF0LCB0cnlf
YXR0YWNobWVudCkgeworICAgICAgICBpZiAoZGVwdGhBdHRhY2htZW50KSB7CisgICAgICAgICAg
ICAvLyBJZiB3ZSd2ZSB0cmllZCBvbmNlIHVuYXR0YWNoIHRoZSBvbGQgb25lLgorICAgICAgICAg
ICAgZ2wuZnJhbWVidWZmZXJSZW5kZXJidWZmZXIoCisgICAgICAgICAgICAgICAgZ2wuRlJBTUVC
VUZGRVIsIGRlcHRoQXR0YWNobWVudCwgZ2wuUkVOREVSQlVGRkVSLCBudWxsKTsKKyAgICAgICAg
fQorICAgICAgICBkZXB0aEZvcm1hdCA9IHRyeV9mb3JtYXQ7CisgICAgICAgIGRlcHRoQXR0YWNo
bWVudCA9IHRyeV9hdHRhY2htZW50OworICAgICAgICBnbC5mcmFtZWJ1ZmZlclJlbmRlcmJ1ZmZl
cigKKyAgICAgICAgICAgIGdsLkZSQU1FQlVGRkVSLCBkZXB0aEF0dGFjaG1lbnQsIGdsLlJFTkRF
UkJVRkZFUiwgZGVwdGhCdWZmZXIpOworICAgICAgICBnbC5yZW5kZXJidWZmZXJTdG9yYWdlKGds
LlJFTkRFUkJVRkZFUiwgZGVwdGhGb3JtYXQsIDE2LCAxNik7CisgICAgICAgIGdsRXJyb3JTaG91
bGRCZShnbCwgZ2wuTk9fRVJST1IpOworICAgICAgICByZXR1cm4gZ2wuY2hlY2tGcmFtZWJ1ZmZl
clN0YXR1cyhnbC5GUkFNRUJVRkZFUikgPT0gZ2wuRlJBTUVCVUZGRVJfQ09NUExFVEU7CisgICAg
fQorfQorCitpZiAoY2hlY2tWYWxpZENvbG9yRGVwdGhDb21iaW5hdGlvbigpKSB7CisgICAgdGVz
dEZyYW1lYnVmZmVySW5jb21wbGV0ZURpbWVuc2lvbnMoKTsKKyAgICB0ZXN0RnJhbWVidWZmZXJJ
bmNvbXBsZXRlQXR0YWNobWVudCgpOworICAgIHRlc3RGcmFtZWJ1ZmZlckluY29tcGxldGVNaXNz
aW5nQXR0YWNobWVudCgpOworICAgIHRlc3RVc2luZ0luY29tcGxldGVGcmFtZWJ1ZmZlcigpOwor
fQorCitmdW5jdGlvbiBDaGVja0ZyYW1lYnVmZmVyKGV4cGVjdGVkKSB7CisgICAgdmFyIGFjdHVh
bCA9IGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpOworICAgIHZhciBt
c2cgPSAiZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZFUikgc2hvdWxkIGJl
ICIgKyB3dHUuZ2xFbnVtVG9TdHJpbmcoZ2wsIGV4cGVjdGVkKSArICIgd2FzICIgKyB3dHUuZ2xF
bnVtVG9TdHJpbmcoZ2wsIGFjdHVhbCk7CisgICAgaWYgKGV4cGVjdGVkICE9IGdsLkZSQU1FQlVG
RkVSX0NPTVBMRVRFKSB7CisgICAgICAgIG1zZyArPSAiIG9yIEZSQU1FQlVGRkVSX1VOU1VQUE9S
VEVEIjsKKyAgICB9CisgICAgaWYgKGFjdHVhbCA9PSBleHBlY3RlZCB8fAorICAgICAgICAoZXhw
ZWN0ZWQgIT0gZ2wuRlJBTUVCVUZGRVJfQ09NUExFVEUgJiYKKyAgICAgICAgIGFjdHVhbCA9PSBn
bC5GUkFNQlVGRkVSX1VOU1VQUE9SVEVEKSkgeworICAgICAgICB0ZXN0UGFzc2VkKG1zZyk7Cisg
ICAgfSBlbHNlIHsKKyAgICAgICAgdGVzdEZhaWxlZChtc2cpOworICAgIH0KK30KKworZnVuY3Rp
b24gdGVzdFVzaW5nSW5jb21wbGV0ZUZyYW1lYnVmZmVyKCkgeworICAgIGRlYnVnKCIiKTsKKyAg
ICBkZWJ1ZygiVGVzdCBkcmF3aW5nIG9yIHJlYWRpbmcgZnJvbSBhbiBpbmNvbXBsZXRlIGZyYW1l
YnVmZmVyIik7CisgICAgdmFyIHByb2dyYW0gPSB3dHUuc2V0dXBUZXh0dXJlZFF1YWQoZ2wpOwor
ICAgIHZhciB0ZXggPSBnbC5jcmVhdGVUZXh0dXJlKCk7CisgICAgd3R1LmZpbGxUZXh0dXJlKGds
LCB0ZXgsIDEsIDEsIFswLDI1NSwwLDI1NV0pOworCisgICAgc2hvdWxkQmVOb25OdWxsKCJmYm8g
PSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIik7CisgICAgZ2wuYmluZEZyYW1lYnVmZmVyKGdsLkZS
QU1FQlVGRkVSLCBmYm8pOworICAgIHNob3VsZEJlTm9uTnVsbCgiY29sb3JCdWZmZXIgPSBnbC5j
cmVhdGVSZW5kZXJidWZmZXIoKSIpOworICAgIGdsLmJpbmRSZW5kZXJidWZmZXIoZ2wuUkVOREVS
QlVGRkVSLCBjb2xvckJ1ZmZlcik7CisgICAgZ2wuZnJhbWVidWZmZXJSZW5kZXJidWZmZXIoCisg
ICAgICAgIGdsLkZSQU1FQlVGRkVSLCBnbC5DT0xPUl9BVFRBQ0hNRU5UMCwgZ2wuUkVOREVSQlVG
RkVSLCBjb2xvckJ1ZmZlcik7CisgICAgZ2wucmVuZGVyYnVmZmVyU3RvcmFnZShnbC5SRU5ERVJC
VUZGRVIsIGdsLlJHQkE0LCAxNiwgMTYpOworCisgICAgc2hvdWxkQmVOb25OdWxsKCJkZXB0aEJ1
ZmZlciA9IGdsLmNyZWF0ZVJlbmRlcmJ1ZmZlcigpIik7CisgICAgZ2wuYmluZFJlbmRlcmJ1ZmZl
cihnbC5SRU5ERVJCVUZGRVIsIGRlcHRoQnVmZmVyKTsKKyAgICBnbC5mcmFtZWJ1ZmZlclJlbmRl
cmJ1ZmZlcigKKyAgICAgICAgZ2wuRlJBTUVCVUZGRVIsIGRlcHRoQXR0YWNobWVudCwgZ2wuUkVO
REVSQlVGRkVSLCBkZXB0aEJ1ZmZlcik7CisgICAgZ2wucmVuZGVyYnVmZmVyU3RvcmFnZShnbC5S
RU5ERVJCVUZGRVIsIGRlcHRoRm9ybWF0LCAxNiwgMTYpOworICAgIGdsRXJyb3JTaG91bGRCZShn
bCwgZ2wuTk9fRVJST1IpOworICAgIENoZWNrRnJhbWVidWZmZXIoZ2wuRlJBTUVCVUZGRVJfQ09N
UExFVEUpOworCisgICAgLy8gV2UgcGljayB0aGlzIGNvbWJpbmF0aW9uIGJlY2F1c2UgaXQgd29y
a3Mgb24gZGVza3RvcCBPcGVuR0wgYnV0IHNob3VsZCBub3Qgd29yayBvbiBPcGVuR0wgRVMgMi4w
CisgICAgZ2wucmVuZGVyYnVmZmVyU3RvcmFnZShnbC5SRU5ERVJCVUZGRVIsIGRlcHRoRm9ybWF0
LCAzMiwgMTYpOworICAgIENoZWNrRnJhbWVidWZmZXIoZ2wuRlJBTUVCVUZGRVJfSU5DT01QTEVU
RV9ESU1FTlNJT05TKTsKKyAgICBkZWJ1ZygiIik7CisgICAgZGVidWcoIkRyYXdpbmcgb3IgcmVh
ZGluZyBmcm9tIGFuIGluY29tcGxldGUgZnJhbWVidWZmZXIgc2hvdWxkIGdlbmVyYXRlIElOVkFM
SURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIik7CisgICAgdGVzdFJlbmRlcmluZ0FuZFJlYWRpbmco
KTsKKworICAgIHNob3VsZEJlTm9uTnVsbCgiZmJvMiA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCki
KTsKKyAgICBnbC5iaW5kRnJhbWVidWZmZXIoZ2wuRlJBTUVCVUZGRVIsIGZibzIpOworICAgIENo
ZWNrRnJhbWVidWZmZXIoZ2wuRlJBTUVCVUZGRVJfSU5DT01QTEVURV9NSVNTSU5HX0FUVEFDSE1F
TlQpOworICAgIGRlYnVnKCIiKTsKKyAgICBkZWJ1ZygiRHJhd2luZyBvciByZWFkaW5nIGZyb20g
YW4gaW5jb21wbGV0ZSBmcmFtZWJ1ZmZlciBzaG91bGQgZ2VuZXJhdGUgSU5WQUxJRF9GUkFNRUJV
RkZFUl9PUEVSQVRJT04iKTsKKyAgICB0ZXN0UmVuZGVyaW5nQW5kUmVhZGluZygpOworCisgICAg
c2hvdWxkQmVOb25OdWxsKCJjb2xvckJ1ZmZlciA9IGdsLmNyZWF0ZVJlbmRlcmJ1ZmZlcigpIik7
CisgICAgZ2wuYmluZFJlbmRlcmJ1ZmZlcihnbC5SRU5ERVJCVUZGRVIsIGNvbG9yQnVmZmVyKTsK
KyAgICBnbC5mcmFtZWJ1ZmZlclJlbmRlcmJ1ZmZlcigKKyAgICAgICAgZ2wuRlJBTUVCVUZGRVIs
IGdsLkNPTE9SX0FUVEFDSE1FTlQwLCBnbC5SRU5ERVJCVUZGRVIsIGNvbG9yQnVmZmVyKTsKKyAg
ICBnbC5yZW5kZXJidWZmZXJTdG9yYWdlKGdsLlJFTkRFUkJVRkZFUiwgZ2wuUkdCQTQsIDAsIDAp
OworICAgIGRlYnVnKCIiKTsKKyAgICBkZWJ1ZygiRHJhd2luZyBvciByZWFkaW5nIGZyb20gYW4g
aW5jb21wbGV0ZSBmcmFtZWJ1ZmZlciBzaG91bGQgZ2VuZXJhdGUgSU5WQUxJRF9GUkFNRUJVRkZF
Ul9PUEVSQVRJT04iKTsKKyAgICB0ZXN0UmVuZGVyaW5nQW5kUmVhZGluZygpOworCisgICAgZnVu
Y3Rpb24gdGVzdFJlbmRlcmluZ0FuZFJlYWRpbmcoKSB7CisgICAgICAgIGdsRXJyb3JTaG91bGRC
ZShnbCwgZ2wuTk9fRVJST1IpOworICAgICAgICB3dHUuZHJhd1F1YWQoZ2wpOworICAgICAgICBn
bEVycm9yU2hvdWxkQmUoZ2wsIGdsLklOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OLCAiZHJh
d0FycmF5cyB3aXRoIGluY29tcGxldGUgZnJhbWVidWZmZXIiKTsKKyAgICAgICAgZ2wucmVhZFBp
eGVscygwLCAwLCAxLCAxLCBnbC5SR0JBLCBnbC5VTlNJR05FRF9CWVRFLCBuZXcgVWludDhBcnJh
eSg0KSk7CisgICAgICAgIGdsRXJyb3JTaG91bGRCZShnbCwgZ2wuSU5WQUxJRF9GUkFNRUJVRkZF
Ul9PUEVSQVRJT04sICJyZWFkUGl4ZWxzIGZyb20gaW5jb21wbGV0ZSBmcmFtZWJ1ZmZlciIpOwor
ICAgICAgICAvLyBjb3B5VGV4SW1hZ2UgYW5kIGNvcHlUZXhTdWJJbWFnZSBjYW4gYmUgZWl0aGVy
IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIGJlY2F1c2UKKyAgICAgICAgLy8gdGhlIGZy
YW1lYnVmZmVyIGlzIGludmFsaWQgT1IgSU5WQUxJRF9PUEVSQVRJT04gYmVjYXVzZSBpbiB0aGUg
Y2FzZSBvZiBubyBhdHRhY2htZW50cworICAgICAgICAvLyB0aGUgZnJhbWVidWZmZXIgaXMgbm90
IG9mIGEgY29tcGF0aWJsZSB0eXBlLgorICAgICAgICBnbC5jb3B5VGV4U3ViSW1hZ2UyRChnbC5U
RVhUVVJFXzJELCAwLCAwLCAwLCAwLCAwLCAxLCAxKTsKKyAgICAgICAgZ2xFcnJvclNob3VsZEJl
KGdsLCBbZ2wuSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04sIGdsLklOVkFMSURfT1BFUkFU
SU9OXSwgImNvcHlUZXhJbWFnZTJEIGZyb20gaW5jb21wbGV0ZSBmcmFtZWJ1ZmZlciIpOworICAg
ICAgICBnbC5jb3B5VGV4SW1hZ2UyRChnbC5URVhUVVJFXzJELCAwLCBnbC5SR0JBLCAwLCAwLCAx
LCAxLCAwKTsKKyAgICAgICAgZ2xFcnJvclNob3VsZEJlKGdsLCBbZ2wuSU5WQUxJRF9GUkFNRUJV
RkZFUl9PUEVSQVRJT04sIGdsLklOVkFMSURfT1BFUkFUSU9OXSwgImNvcHlUZXhTdWJJbWFnZTJE
IGZyb20gaW5jb21wbGV0ZSBmcmFtZWJ1ZmZlciIpOworICAgICAgICBnbC5jbGVhcihnbC5DT0xP
Ul9CVUZGRVJfQklUIHwgZ2wuREVQVEhfQlVGRkVSX0JJVCk7CisgICAgICAgIGdsRXJyb3JTaG91
bGRCZShnbCwgZ2wuSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04sICJjbGVhciB3aXRoIGlu
Y29tcGxldGUgZnJhbWVidWZmZXIiKTsKKyAgICB9Cit9CisKK2Z1bmN0aW9uIHRlc3RGcmFtZWJ1
ZmZlckluY29tcGxldGVBdHRhY2htZW50KCkgeworICAgIHNob3VsZEJlTm9uTnVsbCgiZmJvID0g
Z2wuY3JlYXRlRnJhbWVidWZmZXIoKSIpOworICAgIGdsLmJpbmRGcmFtZWJ1ZmZlcihnbC5GUkFN
RUJVRkZFUiwgZmJvKTsKKyAgICBzaG91bGRCZU5vbk51bGwoImNvbG9yQnVmZmVyID0gZ2wuY3Jl
YXRlUmVuZGVyYnVmZmVyKCkiKTsKKyAgICBnbC5iaW5kUmVuZGVyYnVmZmVyKGdsLlJFTkRFUkJV
RkZFUiwgY29sb3JCdWZmZXIpOworICAgIGdsLmZyYW1lYnVmZmVyUmVuZGVyYnVmZmVyKAorICAg
ICAgICBnbC5GUkFNRUJVRkZFUiwgZ2wuQ09MT1JfQVRUQUNITUVOVDAsIGdsLlJFTkRFUkJVRkZF
UiwgY29sb3JCdWZmZXIpOworICAgIGdsLnJlbmRlcmJ1ZmZlclN0b3JhZ2UoZ2wuUkVOREVSQlVG
RkVSLCBnbC5SR0JBNCwgMTYsIDE2KTsKKyAgICBDaGVja0ZyYW1lYnVmZmVyKGdsLkZSQU1FQlVG
RkVSX0NPTVBMRVRFKTsKKworICAgIGRlYnVnKCIiKTsKKyAgICBkZWJ1ZygiV3Jvbmcgc3RvcmFn
ZSB0eXBlIGZvciB0eXBlIG9mIGF0dGFjaG1lbnQgYmUgRlJBTUVCVUZGRVJfSU5DT01QTEVURV9B
VFRBQ0hNRU5UIChPcGVuR0wgRVMgMi4wIDQuNC41KSIpOworICAgIGdsLnJlbmRlcmJ1ZmZlclN0
b3JhZ2UoZ2wuUkVOREVSQlVGRkVSLCBkZXB0aEZvcm1hdCwgMTYsIDE2KTsKKyAgICBDaGVja0Zy
YW1lYnVmZmVyKGdsLkZSQU1FQlVGRkVSX0lOQ09NUExFVEVfQVRUQUNITUVOVCk7CisKKyAgICBn
bC5yZW5kZXJidWZmZXJTdG9yYWdlKGdsLlJFTkRFUkJVRkZFUiwgZ2wuUkdCQTQsIDE2LCAxNik7
CisgICAgQ2hlY2tGcmFtZWJ1ZmZlcihnbC5GUkFNRUJVRkZFUl9DT01QTEVURSk7CisKKyAgICBk
ZWJ1ZygiIik7CisgICAgZGVidWcoIjAgc2l6ZSBhdHRhY2htZW50IHNob3VsZCBiZSBGUkFNRUJV
RkZFUl9JTkNPTVBMRVRFX0FUVEFDSE1FTlQgKE9wZW5HTCBFUyAyLjAgNC40LjUpIik7CisgICAg
Z2wucmVuZGVyYnVmZmVyU3RvcmFnZShnbC5SRU5ERVJCVUZGRVIsIGdsLlJHQkE0LCAwLCAwKTsK
KyAgICBDaGVja0ZyYW1lYnVmZmVyKGdsLkZSQU1FQlVGRkVSX0lOQ09NUExFVEVfQVRUQUNITUVO
VCk7CisKKyAgICBnbEVycm9yU2hvdWxkQmUoZ2wsIGdsLk5PX0VSUk9SKTsKK30KKworZnVuY3Rp
b24gdGVzdEZyYW1lYnVmZmVySW5jb21wbGV0ZU1pc3NpbmdBdHRhY2htZW50KCkgeworICAgIGRl
YnVnKCIiKTsKKyAgICBkZWJ1ZygiTm8gYXR0YWNobWVudHMgc2hvdWxkIGJlIElOQ09NUExFVEVf
RlJBTUVCVUZGRVJfTUlTU0lOR19BVFRBQ0hNRU5UIChPcGVuR0wgRVMgMi4wIDQuNC41KSIpOwor
ICAgIHNob3VsZEJlTm9uTnVsbCgiZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSIpOworICAg
IGdsLmJpbmRGcmFtZWJ1ZmZlcihnbC5GUkFNRUJVRkZFUiwgZmJvKTsKKyAgICBDaGVja0ZyYW1l
YnVmZmVyKGdsLkZSQU1FQlVGRkVSX0lOQ09NUExFVEVfTUlTU0lOR19BVFRBQ0hNRU5UKTsKKwor
ICAgIHNob3VsZEJlTm9uTnVsbCgiY29sb3JCdWZmZXIgPSBnbC5jcmVhdGVSZW5kZXJidWZmZXIo
KSIpOworICAgIGdsLmJpbmRSZW5kZXJidWZmZXIoZ2wuUkVOREVSQlVGRkVSLCBjb2xvckJ1ZmZl
cik7CisgICAgZ2wuZnJhbWVidWZmZXJSZW5kZXJidWZmZXIoCisgICAgICAgIGdsLkZSQU1FQlVG
RkVSLCBnbC5DT0xPUl9BVFRBQ0hNRU5UMCwgZ2wuUkVOREVSQlVGRkVSLCBjb2xvckJ1ZmZlcik7
CisgICAgZ2wucmVuZGVyYnVmZmVyU3RvcmFnZShnbC5SRU5ERVJCVUZGRVIsIGdsLlJHQkE0LCAx
NiwgMTYpOworICAgIENoZWNrRnJhbWVidWZmZXIoZ2wuRlJBTUVCVUZGRVJfQ09NUExFVEUpOwor
CisgICAgZ2wuZnJhbWVidWZmZXJSZW5kZXJidWZmZXIoCisgICAgICAgIGdsLkZSQU1FQlVGRkVS
LCBnbC5DT0xPUl9BVFRBQ0hNRU5UMCwgZ2wuUkVOREVSQlVGRkVSLCBudWxsKTsKKyAgICBDaGVj
a0ZyYW1lYnVmZmVyKGdsLkZSQU1FQlVGRkVSX0lOQ09NUExFVEVfTUlTU0lOR19BVFRBQ0hNRU5U
KTsKIAotZGVidWcoIkF0dGFjaCBjb2xvciByZW5kZXJidWZmZXIgd2l0aCBpbnRlcm5hbGZvcm1h
dCA9PSBSR0I1X0ExIik7Ci10ZXN0Q29sb3JSZW5kZXJidWZmZXIoZ2wuUkdCNV9BMSk7CisgICAg
Z2xFcnJvclNob3VsZEJlKGdsLCBnbC5OT19FUlJPUik7Cit9CisKK2Z1bmN0aW9uIHRlc3RGcmFt
ZWJ1ZmZlckluY29tcGxldGVEaW1lbnNpb25zKCkgeworICAgIGRlYnVnKCIiKTsKKyAgICBkZWJ1
ZygiQXR0YWNobWVudHMgb2YgZGlmZmVyZW50IHNpemVzIHNob3VsZCBiZSBGUkFNRUJVRkZFUl9J
TkNPTVBMRVRFX0RJTUVOU0lPTlMgKE9wZW5HTCBFUyAyLjAgNC40LjUpIik7CisKKyAgICBzaG91
bGRCZU5vbk51bGwoImZibyA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkiKTsKKyAgICBnbC5iaW5k
RnJhbWVidWZmZXIoZ2wuRlJBTUVCVUZGRVIsIGZibyk7CisgICAgc2hvdWxkQmVOb25OdWxsKCJj
b2xvckJ1ZmZlciA9IGdsLmNyZWF0ZVJlbmRlcmJ1ZmZlcigpIik7CisgICAgZ2wuYmluZFJlbmRl
cmJ1ZmZlcihnbC5SRU5ERVJCVUZGRVIsIGNvbG9yQnVmZmVyKTsKKyAgICBnbC5mcmFtZWJ1ZmZl
clJlbmRlcmJ1ZmZlcigKKyAgICAgICAgZ2wuRlJBTUVCVUZGRVIsIGdsLkNPTE9SX0FUVEFDSE1F
TlQwLCBnbC5SRU5ERVJCVUZGRVIsIGNvbG9yQnVmZmVyKTsKKyAgICBnbC5yZW5kZXJidWZmZXJT
dG9yYWdlKGdsLlJFTkRFUkJVRkZFUiwgZ2wuUkdCQTQsIDE2LCAxNik7CisKKyAgICBzaG91bGRC
ZU5vbk51bGwoImRlcHRoQnVmZmVyID0gZ2wuY3JlYXRlUmVuZGVyYnVmZmVyKCkiKTsKKyAgICBn
bC5iaW5kUmVuZGVyYnVmZmVyKGdsLlJFTkRFUkJVRkZFUiwgZGVwdGhCdWZmZXIpOworICAgIGds
LmZyYW1lYnVmZmVyUmVuZGVyYnVmZmVyKAorICAgICAgICBnbC5GUkFNRUJVRkZFUiwgZGVwdGhB
dHRhY2htZW50LCBnbC5SRU5ERVJCVUZGRVIsIGRlcHRoQnVmZmVyKTsKKyAgICBnbC5yZW5kZXJi
dWZmZXJTdG9yYWdlKGdsLlJFTkRFUkJVRkZFUiwgZGVwdGhGb3JtYXQsIDE2LCAxNik7CisgICAg
Z2xFcnJvclNob3VsZEJlKGdsLCBnbC5OT19FUlJPUik7CisgICAgQ2hlY2tGcmFtZWJ1ZmZlcihn
bC5GUkFNRUJVRkZFUl9DT01QTEVURSk7CiAKLWRlYnVnKCJBdHRhY2ggY29sb3IgcmVuZGVyYnVm
ZmVyIHdpdGggaW50ZXJuYWxmb3JtYXQgPT0gUkdCNTY1Iik7Ci10ZXN0Q29sb3JSZW5kZXJidWZm
ZXIoZ2wuUkdCNTY1KTsKKyAgICBnbC5yZW5kZXJidWZmZXJTdG9yYWdlKGdsLlJFTkRFUkJVRkZF
UiwgZGVwdGhGb3JtYXQsIDMyLCAxNik7CisgICAgQ2hlY2tGcmFtZWJ1ZmZlcihnbC5GUkFNRUJV
RkZFUl9JTkNPTVBMRVRFX0RJTUVOU0lPTlMpOworICAgIGdsLnJlbmRlcmJ1ZmZlclN0b3JhZ2Uo
Z2wuUkVOREVSQlVGRkVSLCBkZXB0aEZvcm1hdCwgMTYsIDE2KTsKKyAgICBDaGVja0ZyYW1lYnVm
ZmVyKGdsLkZSQU1FQlVGRkVSX0NPTVBMRVRFKTsKKyAgICBnbC5iaW5kUmVuZGVyYnVmZmVyKGds
LlJFTkRFUkJVRkZFUiwgY29sb3JCdWZmZXIpOworICAgIGdsLnJlbmRlcmJ1ZmZlclN0b3JhZ2Uo
Z2wuUkVOREVSQlVGRkVSLCBnbC5SR0JBNCwgMTYsIDMyKTsKKyAgICBDaGVja0ZyYW1lYnVmZmVy
KGdsLkZSQU1FQlVGRkVSX0lOQ09NUExFVEVfRElNRU5TSU9OUyk7CisgICAgZ2wucmVuZGVyYnVm
ZmVyU3RvcmFnZShnbC5SRU5ERVJCVUZGRVIsIGdsLlJHQkE0LCAxNiwgMTYpOworICAgIENoZWNr
RnJhbWVidWZmZXIoZ2wuRlJBTUVCVUZGRVJfQ09NUExFVEUpOworICAgIGdsRXJyb3JTaG91bGRC
ZShnbCwgZ2wuTk9fRVJST1IpOworCisgICAgdmFyIHRleCA9IGdsLmNyZWF0ZVRleHR1cmUoKTsK
KyAgICBnbC5iaW5kVGV4dHVyZShnbC5URVhUVVJFXzJELCB0ZXgpOworICAgIGdsLnRleEltYWdl
MkQoZ2wuVEVYVFVSRV8yRCwgMCwgZ2wuUkdCQSwgMTYsIDE2LCAwLCBnbC5SR0JBLCBnbC5VTlNJ
R05FRF9CWVRFLCBudWxsKTsKKyAgICBnbC5mcmFtZWJ1ZmZlclRleHR1cmUyRChnbC5GUkFNRUJV
RkZFUiwgZ2wuQ09MT1JfQVRUQUNITUVOVDAsIGdsLlRFWFRVUkVfMkQsIHRleCwgMCk7CisgICAg
Z2xFcnJvclNob3VsZEJlKGdsLCBnbC5OT19FUlJPUik7CisgICAgaWYgKGdsLmNoZWNrRnJhbWVi
dWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpICE9IGdsLkZSQU1FQlVGRkVSX0NPTVBMRVRFKSB7
CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBnbC50ZXhJbWFnZTJEKGdsLlRFWFRVUkVf
MkQsIDAsIGdsLlJHQkEsIDMyLCAxNiwgMCwgZ2wuUkdCQSwgZ2wuVU5TSUdORURfQllURSwgbnVs
bCk7CisgICAgQ2hlY2tGcmFtZWJ1ZmZlcihnbC5GUkFNRUJVRkZFUl9JTkNPTVBMRVRFX0RJTUVO
U0lPTlMpOworICAgIGdsLnRleEltYWdlMkQoZ2wuVEVYVFVSRV8yRCwgMCwgZ2wuUkdCQSwgMTYs
IDE2LCAwLCBnbC5SR0JBLCBnbC5VTlNJR05FRF9CWVRFLCBudWxsKTsKKyAgICBDaGVja0ZyYW1l
YnVmZmVyKGdsLkZSQU1FQlVGRkVSX0NPTVBMRVRFKTsKKworICAgIGdsRXJyb3JTaG91bGRCZShn
bCwgZ2wuTk9fRVJST1IpOworfQogCi1kZWJ1ZygiQ3JlYXRlIGFuZCBhdHRhY2ggZGVwdGhTdGVu
Y2lsIHJlbmRlcmJ1ZmZlciIpOwotdGVzdERlcHRoU3RlbmNpbFJlbmRlcmJ1ZmZlcigpOworc3Vj
Y2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKIDwvc2NyaXB0PgogCiA8c2NyaXB0IHNyYz0iLi4vLi4v
anMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+CkluZGV4OiBMYXlvdXRUZXN0
cy9mYXN0L2NhbnZhcy93ZWJnbC9yZXNvdXJjZXMvd2ViZ2wtdGVzdC5qcwo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9mYXN0L2NhbnZhcy93ZWJnbC9yZXNvdXJjZXMvd2ViZ2wtdGVzdC5qcwko
cmV2aXNpb24gMTAyNDU4KQorKysgTGF5b3V0VGVzdHMvZmFzdC9jYW52YXMvd2ViZ2wvcmVzb3Vy
Y2VzL3dlYmdsLXRlc3QuanMJKHdvcmtpbmcgY29weSkKQEAgLTEyMyw3ICsxMjMsMTEgQEAgZnVu
Y3Rpb24gZ2V0R0xFcnJvckFzU3RyaW5nKGN0eCwgZXJyKSB7CiAgIHJldHVybiAiMHgiICsgZXJy
LnRvU3RyaW5nKDE2KTsKIH0KIAotZnVuY3Rpb24gc2hvdWxkR2VuZXJhdGVHTEVycm9yKGN0eCwg
Z2xFcnJvciwgZXZhbFN0cikgeworLy8gUGFzcyB1bmRlZmluZWQgZm9yIGdsRXJyb3IgdG8gdGVz
dCB0aGF0IGl0IGF0IGxlYXN0IHRocm93cyBzb21lIGVycm9yCitmdW5jdGlvbiBzaG91bGRHZW5l
cmF0ZUdMRXJyb3IoY3R4LCBnbEVycm9ycywgZXZhbFN0cikgeworICBpZiAoIWdsRXJyb3JzLmxl
bmd0aCkgeworICAgIGdsRXJyb3JzID0gW2dsRXJyb3JzXTsKKyAgfQogICB2YXIgZXhjZXB0aW9u
OwogICB0cnkgewogICAgIGV2YWwoZXZhbFN0cik7CkBAIC0xMzQsMTAgKzEzOCwxNCBAQCBmdW5j
dGlvbiBzaG91bGRHZW5lcmF0ZUdMRXJyb3IoY3R4LCBnbEVyCiAgICAgdGVzdEZhaWxlZChldmFs
U3RyICsgIiB0aHJldyBleGNlcHRpb24gIiArIGV4Y2VwdGlvbik7CiAgIH0gZWxzZSB7CiAgICAg
dmFyIGVyciA9IGN0eC5nZXRFcnJvcigpOwotICAgIGlmIChlcnIgIT0gZ2xFcnJvcikgewotICAg
ICAgdGVzdEZhaWxlZChldmFsU3RyICsgIiBleHBlY3RlZDogIiArIGdldEdMRXJyb3JBc1N0cmlu
ZyhjdHgsIGdsRXJyb3IpICsgIi4gV2FzICIgKyBnZXRHTEVycm9yQXNTdHJpbmcoY3R4LCBlcnIp
ICsgIi4iKTsKKyAgICBpZiAoZ2xFcnJvcnMuaW5kZXhPZihlcnIpIDwgMCkgeworICAgICAgdmFy
IGVyclN0cnMgPSBbXTsKKyAgICAgIGZvciAodmFyIGlpID0gMDsgaWkgPCBnbEVycm9ycy5sZW5n
dGg7ICsraWkpIHsKKyAgICAgICAgZXJyU3Rycy5wdXNoKGdldEdMRXJyb3JBc1N0cmluZyhjdHgs
IGdsRXJyb3JzW2lpXSkpOworICAgICAgfQorICAgICAgdGVzdEZhaWxlZChldmFsU3RyICsgIiBl
eHBlY3RlZDogIiArIGVyclN0cnMuam9pbigiIG9yICIpICsgIi4gV2FzICIgKyBnZXRHTEVycm9y
QXNTdHJpbmcoY3R4LCBlcnIpICsgIi4iKTsKICAgICB9IGVsc2UgewotICAgICAgdGVzdFBhc3Nl
ZChldmFsU3RyICsgIiBnZW5lcmF0ZWQgZXhwZWN0ZWQgR0wgZXJyb3I6ICIgKyBnZXRHTEVycm9y
QXNTdHJpbmcoY3R4LCBnbEVycm9yKSArICIuIik7CisgICAgICB0ZXN0UGFzc2VkKGV2YWxTdHIg
KyAiIGdlbmVyYXRlZCBleHBlY3RlZCBHTCBlcnJvcjogIiArIGdldEdMRXJyb3JBc1N0cmluZyhj
dHgsIGVycikgKyAiLiIpOwogICAgIH0KICAgfQogfQpAQCAtMTQ1LDE4ICsxNTMsMzMgQEAgZnVu
Y3Rpb24gc2hvdWxkR2VuZXJhdGVHTEVycm9yKGN0eCwgZ2xFcgogLyoqCiAgKiBUZXN0cyB0aGF0
IHRoZSBmaXJzdCBlcnJvciBHTCByZXR1cm5zIGlzIHRoZSBzcGVjaWZpZWQgZXJyb3IuCiAgKiBA
cGFyYW0geyFXZWJHTENvbnRleHR9IGdsIFRoZSBXZWJHTENvbnRleHQgdG8gdXNlLgotICogQHBh
cmFtIHtudW1iZXJ9IGdsRXJyb3IgVGhlIGV4cGVjdGVkIGdsIGVycm9yLgorICogQHBhcmFtIHtu
dW1iZXJ8IUFycmF5LjxudW1iZXI+fSBnbEVycm9yIFRoZSBleHBlY3RlZCBnbAorICogICAgICAg
IGVycm9yLiBNdWx0aXBsZSBlcnJvcnMgY2FuIGJlIHBhc3NlZCBpbiB1c2luZyBhbgorICogICAg
ICAgIGFycmF5LgogICogQHBhcmFtIHtzdHJpbmd9IG9wdF9tc2cgT3B0aW9uYWwgYWRkaXRpb25h
bCBtZXNzYWdlLgogICovCi1mdW5jdGlvbiBnbEVycm9yU2hvdWxkQmUoZ2wsIGdsRXJyb3IsIG9w
dF9tc2cpIHsKK2Z1bmN0aW9uIGdsRXJyb3JTaG91bGRCZShnbCwgZ2xFcnJvcnMsIG9wdF9tc2cp
IHsKKyAgaWYgKCFnbEVycm9ycy5sZW5ndGgpIHsKKyAgICBnbEVycm9ycyA9IFtnbEVycm9yc107
CisgIH0KICAgb3B0X21zZyA9IG9wdF9tc2cgfHwgIiI7CiAgIHZhciBlcnIgPSBnbC5nZXRFcnJv
cigpOwotICBpZiAoZXJyICE9IGdsRXJyb3IpIHsKLSAgICB0ZXN0RmFpbGVkKCJnZXRFcnJvciBl
eHBlY3RlZDogIiArIGdldEdMRXJyb3JBc1N0cmluZyhnbCwgZ2xFcnJvcikgKwotICAgICAgICAg
ICAgICAgIi4gV2FzICIgKyBnZXRHTEVycm9yQXNTdHJpbmcoZ2wsIGVycikgKyAiIDogIiArIG9w
dF9tc2cpOworICB2YXIgbmR4ID0gZ2xFcnJvcnMuaW5kZXhPZihlcnIpOworICBpZiAobmR4IDwg
MCkgeworICAgIGlmIChnbEVycm9ycy5sZW5ndGggPT0gMSkgeworICAgICAgdGVzdEZhaWxlZCgi
Z2V0RXJyb3IgZXhwZWN0ZWQ6ICIgKyBnZXRHTEVycm9yQXNTdHJpbmcoZ2wsIGdsRXJyb3JzWzBd
KSArCisgICAgICAgICAgICAgICAgICIuIFdhcyAiICsgZ2V0R0xFcnJvckFzU3RyaW5nKGdsLCBl
cnIpICsgIiA6ICIgKyBvcHRfbXNnKTsKKyAgICB9IGVsc2UgeworICAgICAgdmFyIGVycnMgPSBb
XTsKKyAgICAgIGZvciAodmFyIGlpID0gMDsgaWkgPCBnbEVycm9ycy5sZW5ndGg7ICsraWkpIHsK
KyAgICAgICAgZXJycy5wdXNoKGdldEdMRXJyb3JBc1N0cmluZyhnbCwgZ2xFcnJvcnNbaWldKSk7
CisgICAgICB9CisgICAgICB0ZXN0RmFpbGVkKCJnZXRFcnJvciBleHBlY3RlZCBvbmUgb2Y6IFsi
ICsgZXJycy5qb2luKCIsICIpICsKKyAgICAgICAgICAgICAgICAgIl0uIFdhcyAiICsgZ2V0R0xF
cnJvckFzU3RyaW5nKGdsLCBlcnIpICsgIiA6ICIgKyBvcHRfbXNnKTsKKyAgICB9CiAgIH0gZWxz
ZSB7CiAgICAgdGVzdFBhc3NlZCgiZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiAiICsKLSAg
ICAgICAgICAgICAgICBnZXRHTEVycm9yQXNTdHJpbmcoZ2wsIGdsRXJyb3IpICsgIiA6ICIgKyBv
cHRfbXNnKTsKKyAgICAgICAgICAgICAgICBnZXRHTEVycm9yQXNTdHJpbmcoZ2wsIGVycikgKyAi
IDogIiArIG9wdF9tc2cpOwogICB9CiB9OwogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>118832</attachid>
            <date>2011-12-12 13:32:01 -0800</date>
            <delta_ts>2011-12-13 09:49:40 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-74228-20111212133200.patch</filename>
            <type>text/plain</type>
            <size>65291</size>
            <attacher name="Zhenyao Mo">zmo</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDEwMjYxMikKKysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29y
a2luZyBjb3B5KQpAQCAtMSwzICsxLDE1IEBACisyMDExLTEyLTA5ICBaaGVueWFvIE1vICA8em1v
QGdvb2dsZS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50IEdMRVMyIENoZWNrRnJhbWVidWZmZXJT
dGF0dXMoKSBiZWhhdmlvcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9NzQyMjgKKworICAgICAgICAqIGZhc3QvY2FudmFzL3dlYmdsL2ZyYW1lYnVmZmVy
LW9iamVjdC1hdHRhY2htZW50LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBmYXN0L2NhbnZhcy93
ZWJnbC9mcmFtZWJ1ZmZlci1vYmplY3QtYXR0YWNobWVudC5odG1sOiBzeW5jIHdpdGgga2hyb25v
cyBzaWRlLCB0aGUgd2hvbGUgZmlsZQorICAgICAgICAqIGZhc3QvY2FudmFzL3dlYmdsL3Jlc291
cmNlcy93ZWJnbC10ZXN0LmpzOiBzeW5jZWQgd2l0aCBraHJvbm9zIHNpZGUsIHR3byBsaXN0ZWQg
ZnVuY3Rpb25zCisgICAgICAgIChzaG91bGRHZW5lcmF0ZUdMRXJyb3IpOgorICAgICAgICAoZ2xF
cnJvclNob3VsZEJlKToKKyAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS90ZXN0X2V4cGVjdGF0
aW9ucy50eHQ6IE1hcmsgZnJhbWVidWZmZXItb2JqZWN0LSouaHRtbCBhcyBmYWlsaW5nIGR1ZSB0
byBtZXNhIGxpYiBidWcuCisKIDIwMTEtMTItMTIgIEphbWVzIFJvYmluc29uICA8amFtZXNyQGNo
cm9taXVtLm9yZz4KIAogICAgICAgICBSZW5hbWUgd2Via2l0Q2FuY2VsUmVxdWVzdEFuaW1hdGlv
bkZyYW1lIHRvIHdlYmtpdENhbmNlbEFuaW1hdGlvbkZyYW1lIHRvIG1hdGNoIHNwZWMgY2hhbmdl
CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2NhbnZhcy93ZWJnbC9mcmFtZWJ1ZmZlci1vYmplY3Qt
YXR0YWNobWVudC1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9j
YW52YXMvd2ViZ2wvZnJhbWVidWZmZXItb2JqZWN0LWF0dGFjaG1lbnQtZXhwZWN0ZWQudHh0CShy
ZXZpc2lvbiAxMDI2MTIpCisrKyBMYXlvdXRUZXN0cy9mYXN0L2NhbnZhcy93ZWJnbC9mcmFtZWJ1
ZmZlci1vYmplY3QtYXR0YWNobWVudC1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTIs
NiArMiw0MTQgQEAgVGVzdCBmcmFtZWJ1ZmZlciBvYmplY3QgYXR0YWNobWVudCBiZWhhdgogCiBP
biBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xs
b3dlZCBieSAiVEVTVCBDT01QTEVURSIuCiAKKworRGltZW5zaW9ucyAwIHggMAorQ3JlYXRlIHJl
bmRlcmJ1ZmZlcnMKK1BBU1MgZ2wgPSBjcmVhdGUzRENvbnRleHQoKSBpcyBub24tbnVsbC4KK1BB
U1MgY29sb3JCdWZmZXIgPSBnbC5jcmVhdGVSZW5kZXJidWZmZXIoKSBpcyBub24tbnVsbC4KK1BB
U1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBkZXB0aEJ1
ZmZlciA9IGdsLmNyZWF0ZVJlbmRlcmJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBnZXRFcnJv
ciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIHN0ZW5jaWxCdWZmZXIgPSBn
bC5jcmVhdGVSZW5kZXJidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4
cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBkZXB0aFN0ZW5jaWxCdWZmZXIgPSBnbC5j
cmVhdGVSZW5kZXJidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVj
dGVkIHZhbHVlOiBOT19FUlJPUiA6IAorQXR0YWNoIGRlcHRoIHVzaW5nIERFUFRIX0FUVEFDSE1F
TlQKK1BBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1Mg
Z2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5jaGVja0Zy
YW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5lZCAzNjA1NAorUEFTUyBnZXRF
cnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDog
CitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9P
UEVSQVRJT04gOiAKK0F0dGFjaCBkZXB0aCB1c2luZyBTVEVOQ0lMX0FUVEFDSE1FTlQKK1BBU1Mg
ZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Ig
d2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVy
U3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5lZCAzNjA1NAorUEFTUyBnZXRFcnJvciB3YXMg
ZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogCitQQVNTIGdl
dEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04g
OiAKK0F0dGFjaCBkZXB0aCB1c2luZyBERVBUSF9TVEVOQ0lMX0FUVEFDSE1FTlQKK1BBU1MgZmJv
ID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2Fz
IGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3Rh
dHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5lZCAzNjA1NAorUEFTUyBnZXRFcnJvciB3YXMgZXhw
ZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogCitQQVNTIGdldEVy
cm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAK
K0F0dGFjaCBzdGVuY2lsIHVzaW5nIFNURU5DSUxfQVRUQUNITUVOVAorUEFTUyBmYm8gPSBnbC5j
cmVhdGVGcmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0
ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wu
RlJBTUVCVUZGRVIpIHJldHVybmVkIDM2MDU0CitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2
YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKK1BBU1MgZ2V0RXJyb3Igd2Fz
IGV4cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAorQXR0YWNo
IHN0ZW5jaWwgdXNpbmcgREVQVEhfQVRUQUNITUVOVAorUEFTUyBmYm8gPSBnbC5jcmVhdGVGcmFt
ZWJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6
IE5PX0VSUk9SIDogCitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZG
RVIpIHJldHVybmVkIDM2MDU0CitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5W
QUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVk
IHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAorQXR0YWNoIHN0ZW5jaWwg
dXNpbmcgREVQVEhfU1RFTkNJTF9BVFRBQ0hNRU5UCitQQVNTIGZibyA9IGdsLmNyZWF0ZUZyYW1l
YnVmZmVyKCkgaXMgbm9uLW51bGwuCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTog
Tk9fRVJST1IgOiAKK1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZF
UikgcmV0dXJuZWQgMzYwNTQKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZB
TElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQg
dmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogCitBdHRhY2ggZGVwdGhTdGVu
Y2lsIHVzaW5nIERFUFRIX1NURU5DSUxfQVRUQUNITUVOVAorUEFTUyBmYm8gPSBnbC5jcmVhdGVG
cmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFs
dWU6IE5PX0VSUk9SIDogCitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVC
VUZGRVIpIHJldHVybmVkIDM2MDU0CitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTog
SU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVj
dGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAorQXR0YWNoIGRlcHRo
U3RlbmNpbCB1c2luZyBERVBUSF9BVFRBQ0hNRU5UCitQQVNTIGZibyA9IGdsLmNyZWF0ZUZyYW1l
YnVmZmVyKCkgaXMgbm9uLW51bGwuCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTog
Tk9fRVJST1IgOiAKK1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZF
UikgcmV0dXJuZWQgMzYwNTQKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZB
TElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQg
dmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogCitBdHRhY2ggZGVwdGhTdGVu
Y2lsIHVzaW5nIFNURU5DSUxfQVRUQUNITUVOVAorUEFTUyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1
ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5P
X0VSUk9SIDogCitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIp
IHJldHVybmVkIDM2MDU0CitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJ
RF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZh
bHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAorQXR0YWNoIGRlcHRoLCB0aGVu
IHN0ZW5jaWwsIGNhdXNpbmcgY29uZmxpY3QKK1BBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZm
ZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19F
UlJPUiA6IAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQ
QVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVkIDM2
MDU0CitBdHRhY2ggc3RlbmNpbCwgdGhlbiBkZXB0aCwgY2F1c2luZyBjb25mbGljdAorUEFTUyBm
Ym8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBnZXRFcnJvciB3
YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3Rl
ZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5G
UkFNRUJVRkZFUikgcmV0dXJuZWQgMzYwNTQKK0F0dGFjaCBkZXB0aCwgdGhlbiBkZXB0aFN0ZW5j
aWwsIGNhdXNpbmcgY29uZmxpY3QKK1BBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBp
cyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6
IAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGds
LmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVkIDM2MDU0CitB
dHRhY2ggZGVwdGhTdGVuY2lsLCB0aGVuIGRlcHRoLCBjYXVzaW5nIGNvbmZsaWN0CitQQVNTIGZi
byA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkgaXMgbm9uLW51bGwuCitQQVNTIGdldEVycm9yIHdh
cyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVk
IHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZS
QU1FQlVGRkVSKSByZXR1cm5lZCAzNjA1NAorQXR0YWNoIHN0ZW5jaWwsIHRoZW4gZGVwdGhTdGVu
Y2lsLCBjYXVzaW5nIGNvbmZsaWN0CitQQVNTIGZibyA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkg
aXMgbm9uLW51bGwuCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1Ig
OiAKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBn
bC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5lZCAzNjA1NAor
QXR0YWNoIGRlcHRoU3RlbmNpbCwgdGhlbiBzdGVuY2lsLCBjYXVzaW5nIGNvbmZsaWN0CitQQVNT
IGZibyA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkgaXMgbm9uLW51bGwuCitQQVNTIGdldEVycm9y
IHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVj
dGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGds
LkZSQU1FQlVGRkVSKSByZXR1cm5lZCAzNjA1NAorQXR0YWNoIGNvbG9yIHJlbmRlcmJ1ZmZlciB3
aXRoIGludGVybmFsZm9ybWF0ID09IFJHQkE0CitQQVNTIGNvbG9yQnVmZmVyID0gZ2wuY3JlYXRl
UmVuZGVyYnVmZmVyKCkgaXMgbm9uLW51bGwuCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2
YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBu
b24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAor
UEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5lZCAz
NjA1NAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZG
RVJfT1BFUkFUSU9OIDogCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJ
RF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKK0F0dGFjaCBjb2xvciByZW5kZXJidWZmZXIgd2l0
aCBpbnRlcm5hbGZvcm1hdCA9PSBSR0I1X0ExCitQQVNTIGNvbG9yQnVmZmVyID0gZ2wuY3JlYXRl
UmVuZGVyYnVmZmVyKCkgaXMgbm9uLW51bGwuCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2
YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBu
b24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAor
UEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5lZCAz
NjA1NAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZG
RVJfT1BFUkFUSU9OIDogCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJ
RF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKK0F0dGFjaCBjb2xvciByZW5kZXJidWZmZXIgd2l0
aCBpbnRlcm5hbGZvcm1hdCA9PSBSR0I1NjUKK1BBU1MgY29sb3JCdWZmZXIgPSBnbC5jcmVhdGVS
ZW5kZXJidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZh
bHVlOiBOT19FUlJPUiA6IAorUEFTUyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlzIG5v
bi1udWxsLgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQ
QVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVkIDM2
MDU0CitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZF
Ul9PUEVSQVRJT04gOiAKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElE
X0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAorQ3JlYXRlIGFuZCBhdHRhY2ggZGVwdGhTdGVuY2ls
IHJlbmRlcmJ1ZmZlcgorUEFTUyBkZXB0aFN0ZW5jaWxCdWZmZXIgPSBnbC5jcmVhdGVSZW5kZXJi
dWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBO
T19FUlJPUiA6IAorUEFTUyBnbC5nZXRSZW5kZXJidWZmZXJQYXJhbWV0ZXIoZ2wuUkVOREVSQlVG
RkVSLCBnbC5SRU5ERVJCVUZGRVJfV0lEVEgpIGlzIHdpZHRoCitQQVNTIGdsLmdldFJlbmRlcmJ1
ZmZlclBhcmFtZXRlcihnbC5SRU5ERVJCVUZGRVIsIGdsLlJFTkRFUkJVRkZFUl9IRUlHSFQpIGlz
IGhlaWdodAorUEFTUyBnbC5nZXRSZW5kZXJidWZmZXJQYXJhbWV0ZXIoZ2wuUkVOREVSQlVGRkVS
LCBnbC5SRU5ERVJCVUZGRVJfSU5URVJOQUxfRk9STUFUKSBpcyBnbC5ERVBUSF9TVEVOQ0lMCitQ
QVNTIGdsLmdldFJlbmRlcmJ1ZmZlclBhcmFtZXRlcihnbC5SRU5ERVJCVUZGRVIsIGdsLlJFTkRF
UkJVRkZFUl9SRURfU0laRSkgaXMgMAorUEFTUyBnbC5nZXRSZW5kZXJidWZmZXJQYXJhbWV0ZXIo
Z2wuUkVOREVSQlVGRkVSLCBnbC5SRU5ERVJCVUZGRVJfR1JFRU5fU0laRSkgaXMgMAorUEFTUyBn
bC5nZXRSZW5kZXJidWZmZXJQYXJhbWV0ZXIoZ2wuUkVOREVSQlVGRkVSLCBnbC5SRU5ERVJCVUZG
RVJfQkxVRV9TSVpFKSBpcyAwCitQQVNTIGdsLmdldFJlbmRlcmJ1ZmZlclBhcmFtZXRlcihnbC5S
RU5ERVJCVUZGRVIsIGdsLlJFTkRFUkJVRkZFUl9BTFBIQV9TSVpFKSBpcyAwCitQQVNTIGdldEVy
cm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZmJvID0gZ2wuY3JlYXRl
RnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZh
bHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1F
QlVGRkVSKSByZXR1cm5lZCAzNjA1NAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6
IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogCitQQVNTIGdldEVycm9yIHdhcyBleHBl
Y3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKKworRGltZW5zaW9u
cyAwIHggMgorQ3JlYXRlIHJlbmRlcmJ1ZmZlcnMKK1BBU1MgZ2wgPSBjcmVhdGUzRENvbnRleHQo
KSBpcyBub24tbnVsbC4KK1BBU1MgY29sb3JCdWZmZXIgPSBnbC5jcmVhdGVSZW5kZXJidWZmZXIo
KSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJP
UiA6IAorUEFTUyBkZXB0aEJ1ZmZlciA9IGdsLmNyZWF0ZVJlbmRlcmJ1ZmZlcigpIGlzIG5vbi1u
dWxsLgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNT
IHN0ZW5jaWxCdWZmZXIgPSBnbC5jcmVhdGVSZW5kZXJidWZmZXIoKSBpcyBub24tbnVsbC4KK1BB
U1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBkZXB0aFN0
ZW5jaWxCdWZmZXIgPSBnbC5jcmVhdGVSZW5kZXJidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1Mg
Z2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorQXR0YWNoIGRlcHRoIHVz
aW5nIERFUFRIX0FUVEFDSE1FTlQKK1BBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBp
cyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6
IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5l
ZCAzNjA1NAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVC
VUZGRVJfT1BFUkFUSU9OIDogCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5W
QUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKK0F0dGFjaCBkZXB0aCB1c2luZyBTVEVOQ0lM
X0FUVEFDSE1FTlQKK1BBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVs
bC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBn
bC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5lZCAzNjA1NAor
UEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BF
UkFUSU9OIDogCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFN
RUJVRkZFUl9PUEVSQVRJT04gOiAKK0F0dGFjaCBkZXB0aCB1c2luZyBERVBUSF9TVEVOQ0lMX0FU
VEFDSE1FTlQKK1BBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4K
K1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5j
aGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5lZCAzNjA1NAorUEFT
UyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFU
SU9OIDogCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJV
RkZFUl9PUEVSQVRJT04gOiAKK0F0dGFjaCBzdGVuY2lsIHVzaW5nIFNURU5DSUxfQVRUQUNITUVO
VAorUEFTUyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBn
ZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGdsLmNoZWNrRnJh
bWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVkIDM2MDU0CitQQVNTIGdldEVy
cm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAK
K1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09Q
RVJBVElPTiA6IAorQXR0YWNoIHN0ZW5jaWwgdXNpbmcgREVQVEhfQVRUQUNITUVOVAorUEFTUyBm
Ym8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBnZXRFcnJvciB3
YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJT
dGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVkIDM2MDU0CitQQVNTIGdldEVycm9yIHdhcyBl
eHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKK1BBU1MgZ2V0
RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6
IAorQXR0YWNoIHN0ZW5jaWwgdXNpbmcgREVQVEhfU1RFTkNJTF9BVFRBQ0hNRU5UCitQQVNTIGZi
byA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkgaXMgbm9uLW51bGwuCitQQVNTIGdldEVycm9yIHdh
cyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0
YXR1cyhnbC5GUkFNRUJVRkZFUikgcmV0dXJuZWQgMzYwNTQKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4
cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAorUEFTUyBnZXRF
cnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDog
CitBdHRhY2ggZGVwdGhTdGVuY2lsIHVzaW5nIERFUFRIX1NURU5DSUxfQVRUQUNITUVOVAorUEFT
UyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBnZXRFcnJv
ciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGdsLmNoZWNrRnJhbWVidWZm
ZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVkIDM2MDU0CitQQVNTIGdldEVycm9yIHdh
cyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKK1BBU1Mg
Z2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElP
TiA6IAorQXR0YWNoIGRlcHRoU3RlbmNpbCB1c2luZyBERVBUSF9BVFRBQ0hNRU5UCitQQVNTIGZi
byA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkgaXMgbm9uLW51bGwuCitQQVNTIGdldEVycm9yIHdh
cyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0
YXR1cyhnbC5GUkFNRUJVRkZFUikgcmV0dXJuZWQgMzYwNTQKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4
cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAorUEFTUyBnZXRF
cnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDog
CitBdHRhY2ggZGVwdGhTdGVuY2lsIHVzaW5nIFNURU5DSUxfQVRUQUNITUVOVAorUEFTUyBmYm8g
PSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBnZXRFcnJvciB3YXMg
ZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0
dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVkIDM2MDU0CitQQVNTIGdldEVycm9yIHdhcyBleHBl
Y3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKK1BBU1MgZ2V0RXJy
b3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAor
QXR0YWNoIGRlcHRoLCB0aGVuIHN0ZW5jaWwsIGNhdXNpbmcgY29uZmxpY3QKK1BBU1MgZmJvID0g
Z2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4
cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFs
dWU6IE5PX0VSUk9SIDogCitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVC
VUZGRVIpIHJldHVybmVkIDM2MDU0CitBdHRhY2ggc3RlbmNpbCwgdGhlbiBkZXB0aCwgY2F1c2lu
ZyBjb25mbGljdAorUEFTUyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxs
LgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGdl
dEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2wuY2hlY2tGcmFt
ZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZFUikgcmV0dXJuZWQgMzYwNTQKK0F0dGFjaCBkZXB0
aCwgdGhlbiBkZXB0aFN0ZW5jaWwsIGNhdXNpbmcgY29uZmxpY3QKK1BBU1MgZmJvID0gZ2wuY3Jl
YXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVk
IHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5P
X0VSUk9SIDogCitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIp
IHJldHVybmVkIDM2MDU0CitBdHRhY2ggZGVwdGhTdGVuY2lsLCB0aGVuIGRlcHRoLCBjYXVzaW5n
IGNvbmZsaWN0CitQQVNTIGZibyA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkgaXMgbm9uLW51bGwu
CitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2V0
RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5jaGVja0ZyYW1l
YnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5lZCAzNjA1NAorQXR0YWNoIHN0ZW5j
aWwsIHRoZW4gZGVwdGhTdGVuY2lsLCBjYXVzaW5nIGNvbmZsaWN0CitQQVNTIGZibyA9IGdsLmNy
ZWF0ZUZyYW1lYnVmZmVyKCkgaXMgbm9uLW51bGwuCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3Rl
ZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBO
T19FUlJPUiA6IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVS
KSByZXR1cm5lZCAzNjA1NAorQXR0YWNoIGRlcHRoU3RlbmNpbCwgdGhlbiBzdGVuY2lsLCBjYXVz
aW5nIGNvbmZsaWN0CitQQVNTIGZibyA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkgaXMgbm9uLW51
bGwuCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1Mg
Z2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5jaGVja0Zy
YW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5lZCAzNjA1NAorQXR0YWNoIGNv
bG9yIHJlbmRlcmJ1ZmZlciB3aXRoIGludGVybmFsZm9ybWF0ID09IFJHQkE0CitQQVNTIGNvbG9y
QnVmZmVyID0gZ2wuY3JlYXRlUmVuZGVyYnVmZmVyKCkgaXMgbm9uLW51bGwuCitQQVNTIGdldEVy
cm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZmJvID0gZ2wuY3JlYXRl
RnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZh
bHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1F
QlVGRkVSKSByZXR1cm5lZCAzNjA1NAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6
IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogCitQQVNTIGdldEVycm9yIHdhcyBleHBl
Y3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKK0F0dGFjaCBjb2xv
ciByZW5kZXJidWZmZXIgd2l0aCBpbnRlcm5hbGZvcm1hdCA9PSBSR0I1X0ExCitQQVNTIGNvbG9y
QnVmZmVyID0gZ2wuY3JlYXRlUmVuZGVyYnVmZmVyKCkgaXMgbm9uLW51bGwuCitQQVNTIGdldEVy
cm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZmJvID0gZ2wuY3JlYXRl
RnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZh
bHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1F
QlVGRkVSKSByZXR1cm5lZCAzNjA1NAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6
IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogCitQQVNTIGdldEVycm9yIHdhcyBleHBl
Y3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKK0F0dGFjaCBjb2xv
ciByZW5kZXJidWZmZXIgd2l0aCBpbnRlcm5hbGZvcm1hdCA9PSBSR0I1NjUKK1BBU1MgY29sb3JC
dWZmZXIgPSBnbC5jcmVhdGVSZW5kZXJidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJy
b3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBmYm8gPSBnbC5jcmVhdGVG
cmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFs
dWU6IE5PX0VSUk9SIDogCitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVC
VUZGRVIpIHJldHVybmVkIDM2MDU0CitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTog
SU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVj
dGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAorQ3JlYXRlIGFuZCBh
dHRhY2ggZGVwdGhTdGVuY2lsIHJlbmRlcmJ1ZmZlcgorUEFTUyBkZXB0aFN0ZW5jaWxCdWZmZXIg
PSBnbC5jcmVhdGVSZW5kZXJidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2Fz
IGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5nZXRSZW5kZXJidWZmZXJQYXJh
bWV0ZXIoZ2wuUkVOREVSQlVGRkVSLCBnbC5SRU5ERVJCVUZGRVJfV0lEVEgpIGlzIHdpZHRoCitQ
QVNTIGdsLmdldFJlbmRlcmJ1ZmZlclBhcmFtZXRlcihnbC5SRU5ERVJCVUZGRVIsIGdsLlJFTkRF
UkJVRkZFUl9JTlRFUk5BTF9GT1JNQVQpIGlzIGdsLkRFUFRIX1NURU5DSUwKK1BBU1MgZ2wuZ2V0
UmVuZGVyYnVmZmVyUGFyYW1ldGVyKGdsLlJFTkRFUkJVRkZFUiwgZ2wuUkVOREVSQlVGRkVSX1JF
RF9TSVpFKSBpcyAwCitQQVNTIGdsLmdldFJlbmRlcmJ1ZmZlclBhcmFtZXRlcihnbC5SRU5ERVJC
VUZGRVIsIGdsLlJFTkRFUkJVRkZFUl9HUkVFTl9TSVpFKSBpcyAwCitQQVNTIGdsLmdldFJlbmRl
cmJ1ZmZlclBhcmFtZXRlcihnbC5SRU5ERVJCVUZGRVIsIGdsLlJFTkRFUkJVRkZFUl9CTFVFX1NJ
WkUpIGlzIDAKK1BBU1MgZ2wuZ2V0UmVuZGVyYnVmZmVyUGFyYW1ldGVyKGdsLlJFTkRFUkJVRkZF
UiwgZ2wuUkVOREVSQlVGRkVSX0FMUEhBX1NJWkUpIGlzIDAKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4
cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZl
cigpIGlzIG5vbi1udWxsLgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VS
Uk9SIDogCitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJl
dHVybmVkIDM2MDU0CitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9G
UkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVl
OiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAorCitEaW1lbnNpb25zIDIgeCAwCitD
cmVhdGUgcmVuZGVyYnVmZmVycworUEFTUyBnbCA9IGNyZWF0ZTNEQ29udGV4dCgpIGlzIG5vbi1u
dWxsLgorUEFTUyBjb2xvckJ1ZmZlciA9IGdsLmNyZWF0ZVJlbmRlcmJ1ZmZlcigpIGlzIG5vbi1u
dWxsLgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNT
IGRlcHRoQnVmZmVyID0gZ2wuY3JlYXRlUmVuZGVyYnVmZmVyKCkgaXMgbm9uLW51bGwuCitQQVNT
IGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1Mgc3RlbmNpbEJ1
ZmZlciA9IGdsLmNyZWF0ZVJlbmRlcmJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBnZXRFcnJv
ciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGRlcHRoU3RlbmNpbEJ1ZmZl
ciA9IGdsLmNyZWF0ZVJlbmRlcmJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBnZXRFcnJvciB3
YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitBdHRhY2ggZGVwdGggdXNpbmcgREVQVEhf
QVRUQUNITUVOVAorUEFTUyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxs
LgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGds
LmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVkIDM2MDU0CitQ
QVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVS
QVRJT04gOiAKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1F
QlVGRkVSX09QRVJBVElPTiA6IAorQXR0YWNoIGRlcHRoIHVzaW5nIFNURU5DSUxfQVRUQUNITUVO
VAorUEFTUyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBn
ZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGdsLmNoZWNrRnJh
bWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVkIDM2MDU0CitQQVNTIGdldEVy
cm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAK
K1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09Q
RVJBVElPTiA6IAorQXR0YWNoIGRlcHRoIHVzaW5nIERFUFRIX1NURU5DSUxfQVRUQUNITUVOVAor
UEFTUyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBnZXRF
cnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGdsLmNoZWNrRnJhbWVi
dWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVkIDM2MDU0CitQQVNTIGdldEVycm9y
IHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKK1BB
U1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJB
VElPTiA6IAorQXR0YWNoIHN0ZW5jaWwgdXNpbmcgU1RFTkNJTF9BVFRBQ0hNRU5UCitQQVNTIGZi
byA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkgaXMgbm9uLW51bGwuCitQQVNTIGdldEVycm9yIHdh
cyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0
YXR1cyhnbC5GUkFNRUJVRkZFUikgcmV0dXJuZWQgMzYwNTQKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4
cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAorUEFTUyBnZXRF
cnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDog
CitBdHRhY2ggc3RlbmNpbCB1c2luZyBERVBUSF9BVFRBQ0hNRU5UCitQQVNTIGZibyA9IGdsLmNy
ZWF0ZUZyYW1lYnVmZmVyKCkgaXMgbm9uLW51bGwuCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3Rl
ZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5G
UkFNRUJVRkZFUikgcmV0dXJuZWQgMzYwNTQKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZh
bHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAorUEFTUyBnZXRFcnJvciB3YXMg
ZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogCitBdHRhY2gg
c3RlbmNpbCB1c2luZyBERVBUSF9TVEVOQ0lMX0FUVEFDSE1FTlQKK1BBU1MgZmJvID0gZ2wuY3Jl
YXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVk
IHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZS
QU1FQlVGRkVSKSByZXR1cm5lZCAzNjA1NAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFs
dWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogCitQQVNTIGdldEVycm9yIHdhcyBl
eHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKK0F0dGFjaCBk
ZXB0aFN0ZW5jaWwgdXNpbmcgREVQVEhfU1RFTkNJTF9BVFRBQ0hNRU5UCitQQVNTIGZibyA9IGds
LmNyZWF0ZUZyYW1lYnVmZmVyKCkgaXMgbm9uLW51bGwuCitQQVNTIGdldEVycm9yIHdhcyBleHBl
Y3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhn
bC5GUkFNRUJVRkZFUikgcmV0dXJuZWQgMzYwNTQKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVk
IHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAorUEFTUyBnZXRFcnJvciB3
YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogCitBdHRh
Y2ggZGVwdGhTdGVuY2lsIHVzaW5nIERFUFRIX0FUVEFDSE1FTlQKK1BBU1MgZmJvID0gZ2wuY3Jl
YXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVk
IHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZS
QU1FQlVGRkVSKSByZXR1cm5lZCAzNjA1NAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFs
dWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogCitQQVNTIGdldEVycm9yIHdhcyBl
eHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKK0F0dGFjaCBk
ZXB0aFN0ZW5jaWwgdXNpbmcgU1RFTkNJTF9BVFRBQ0hNRU5UCitQQVNTIGZibyA9IGdsLmNyZWF0
ZUZyYW1lYnVmZmVyKCkgaXMgbm9uLW51bGwuCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2
YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFN
RUJVRkZFUikgcmV0dXJuZWQgMzYwNTQKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVl
OiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAorUEFTUyBnZXRFcnJvciB3YXMgZXhw
ZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogCitBdHRhY2ggZGVw
dGgsIHRoZW4gc3RlbmNpbCwgY2F1c2luZyBjb25mbGljdAorUEFTUyBmYm8gPSBnbC5jcmVhdGVG
cmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFs
dWU6IE5PX0VSUk9SIDogCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJS
T1IgOiAKK1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZFUikgcmV0
dXJuZWQgMzYwNTQKK0F0dGFjaCBzdGVuY2lsLCB0aGVuIGRlcHRoLCBjYXVzaW5nIGNvbmZsaWN0
CitQQVNTIGZibyA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkgaXMgbm9uLW51bGwuCitQQVNTIGdl
dEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2V0RXJyb3Igd2Fz
IGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3Rh
dHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5lZCAzNjA1NAorQXR0YWNoIGRlcHRoLCB0aGVuIGRl
cHRoU3RlbmNpbCwgY2F1c2luZyBjb25mbGljdAorUEFTUyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1
ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5P
X0VSUk9SIDogCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAK
K1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZFUikgcmV0dXJuZWQg
MzYwNTQKK0F0dGFjaCBkZXB0aFN0ZW5jaWwsIHRoZW4gZGVwdGgsIGNhdXNpbmcgY29uZmxpY3QK
K1BBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0
RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnZXRFcnJvciB3YXMg
ZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0
dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVkIDM2MDU0CitBdHRhY2ggc3RlbmNpbCwgdGhlbiBk
ZXB0aFN0ZW5jaWwsIGNhdXNpbmcgY29uZmxpY3QKK1BBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVi
dWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBO
T19FUlJPUiA6IAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDog
CitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVk
IDM2MDU0CitBdHRhY2ggZGVwdGhTdGVuY2lsLCB0aGVuIHN0ZW5jaWwsIGNhdXNpbmcgY29uZmxp
Y3QKK1BBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1Mg
Z2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnZXRFcnJvciB3
YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJT
dGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVkIDM2MDU0CitBdHRhY2ggY29sb3IgcmVuZGVy
YnVmZmVyIHdpdGggaW50ZXJuYWxmb3JtYXQgPT0gUkdCQTQKK1BBU1MgY29sb3JCdWZmZXIgPSBn
bC5jcmVhdGVSZW5kZXJidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4
cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZl
cigpIGlzIG5vbi1udWxsLgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VS
Uk9SIDogCitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJl
dHVybmVkIDM2MDU0CitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9G
UkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVl
OiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAorQXR0YWNoIGNvbG9yIHJlbmRlcmJ1
ZmZlciB3aXRoIGludGVybmFsZm9ybWF0ID09IFJHQjVfQTEKK1BBU1MgY29sb3JCdWZmZXIgPSBn
bC5jcmVhdGVSZW5kZXJidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4
cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZl
cigpIGlzIG5vbi1udWxsLgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VS
Uk9SIDogCitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJl
dHVybmVkIDM2MDU0CitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9G
UkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVl
OiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAorQXR0YWNoIGNvbG9yIHJlbmRlcmJ1
ZmZlciB3aXRoIGludGVybmFsZm9ybWF0ID09IFJHQjU2NQorUEFTUyBjb2xvckJ1ZmZlciA9IGds
LmNyZWF0ZVJlbmRlcmJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBnZXRFcnJvciB3YXMgZXhw
ZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGZibyA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVy
KCkgaXMgbm9uLW51bGwuCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJS
T1IgOiAKK1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZFUikgcmV0
dXJuZWQgMzYwNTQKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZS
QU1FQlVGRkVSX09QRVJBVElPTiA6IAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6
IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogCitDcmVhdGUgYW5kIGF0dGFjaCBkZXB0
aFN0ZW5jaWwgcmVuZGVyYnVmZmVyCitQQVNTIGRlcHRoU3RlbmNpbEJ1ZmZlciA9IGdsLmNyZWF0
ZVJlbmRlcmJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQg
dmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGdsLmdldFJlbmRlcmJ1ZmZlclBhcmFtZXRlcihnbC5S
RU5ERVJCVUZGRVIsIGdsLlJFTkRFUkJVRkZFUl9IRUlHSFQpIGlzIGhlaWdodAorUEFTUyBnbC5n
ZXRSZW5kZXJidWZmZXJQYXJhbWV0ZXIoZ2wuUkVOREVSQlVGRkVSLCBnbC5SRU5ERVJCVUZGRVJf
SU5URVJOQUxfRk9STUFUKSBpcyBnbC5ERVBUSF9TVEVOQ0lMCitQQVNTIGdsLmdldFJlbmRlcmJ1
ZmZlclBhcmFtZXRlcihnbC5SRU5ERVJCVUZGRVIsIGdsLlJFTkRFUkJVRkZFUl9SRURfU0laRSkg
aXMgMAorUEFTUyBnbC5nZXRSZW5kZXJidWZmZXJQYXJhbWV0ZXIoZ2wuUkVOREVSQlVGRkVSLCBn
bC5SRU5ERVJCVUZGRVJfR1JFRU5fU0laRSkgaXMgMAorUEFTUyBnbC5nZXRSZW5kZXJidWZmZXJQ
YXJhbWV0ZXIoZ2wuUkVOREVSQlVGRkVSLCBnbC5SRU5ERVJCVUZGRVJfQkxVRV9TSVpFKSBpcyAw
CitQQVNTIGdsLmdldFJlbmRlcmJ1ZmZlclBhcmFtZXRlcihnbC5SRU5ERVJCVUZGRVIsIGdsLlJF
TkRFUkJVRkZFUl9BTFBIQV9TSVpFKSBpcyAwCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2
YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBu
b24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAor
UEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5lZCAz
NjA1NAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZG
RVJfT1BFUkFUSU9OIDogCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJ
RF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKKworRGltZW5zaW9ucyAyIHggMgogQ3JlYXRlIHJl
bmRlcmJ1ZmZlcnMKIFBBU1MgZ2wgPSBjcmVhdGUzRENvbnRleHQoKSBpcyBub24tbnVsbC4KIFBB
U1MgY29sb3JCdWZmZXIgPSBnbC5jcmVhdGVSZW5kZXJidWZmZXIoKSBpcyBub24tbnVsbC4KQEAg
LTE1LDkzICs0MjMsOTkgQEAgUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VS
UgogQXR0YWNoIGRlcHRoIHVzaW5nIERFUFRIX0FUVEFDSE1FTlQKIFBBU1MgZmJvID0gZ2wuY3Jl
YXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KIFBBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVk
IHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZS
QU1FQlVGRkVSKSByZXR1cm5lZCAzNjA1MwogQXR0YWNoIGRlcHRoIHVzaW5nIFNURU5DSUxfQVRU
QUNITUVOVAogUEFTUyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxsLgog
UEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCi1QQVNTIGdsLmNo
ZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIGlzIGdsLkZSQU1FQlVGRkVSX1VO
U1VQUE9SVEVECitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIp
IHJldHVybmVkIDM2MDU0CiBQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJ
RF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKIFBBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZh
bHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAogQXR0YWNoIGRlcHRoIHVzaW5n
IERFUFRIX1NURU5DSUxfQVRUQUNITUVOVAogUEFTUyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZl
cigpIGlzIG5vbi1udWxsLgogUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VS
Uk9SIDogCi1QQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIGlz
IGdsLkZSQU1FQlVGRkVSX1VOU1VQUE9SVEVECitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0
dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVkIDM2MDU0CiBQQVNTIGdldEVycm9yIHdhcyBleHBl
Y3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKIFBBU1MgZ2V0RXJy
b3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAog
QXR0YWNoIHN0ZW5jaWwgdXNpbmcgU1RFTkNJTF9BVFRBQ0hNRU5UCiBQQVNTIGZibyA9IGdsLmNy
ZWF0ZUZyYW1lYnVmZmVyKCkgaXMgbm9uLW51bGwuCiBQQVNTIGdldEVycm9yIHdhcyBleHBlY3Rl
ZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5G
UkFNRUJVRkZFUikgcmV0dXJuZWQgMzYwNjEKIEF0dGFjaCBzdGVuY2lsIHVzaW5nIERFUFRIX0FU
VEFDSE1FTlQKIFBBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4K
IFBBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAotUEFTUyBnbC5j
aGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSBpcyBnbC5GUkFNRUJVRkZFUl9V
TlNVUFBPUlRFRAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVS
KSByZXR1cm5lZCAzNjA1NAogUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFM
SURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogCiBQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2
YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKIEF0dGFjaCBzdGVuY2lsIHVz
aW5nIERFUFRIX1NURU5DSUxfQVRUQUNITUVOVAogUEFTUyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1
ZmZlcigpIGlzIG5vbi1udWxsLgogUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5P
X0VSUk9SIDogCi1QQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIp
IGlzIGdsLkZSQU1FQlVGRkVSX1VOU1VQUE9SVEVECitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJT
dGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVkIDM2MDU0CiBQQVNTIGdldEVycm9yIHdhcyBl
eHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKIFBBU1MgZ2V0
RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6
IAogQXR0YWNoIGRlcHRoU3RlbmNpbCB1c2luZyBERVBUSF9TVEVOQ0lMX0FUVEFDSE1FTlQKIFBB
U1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KIFBBU1MgZ2V0RXJy
b3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVm
ZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5lZCAzNjA1MwogQXR0YWNoIGRlcHRoU3Rl
bmNpbCB1c2luZyBERVBUSF9BVFRBQ0hNRU5UCiBQQVNTIGZibyA9IGdsLmNyZWF0ZUZyYW1lYnVm
ZmVyKCkgaXMgbm9uLW51bGwuCiBQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9f
RVJST1IgOiAKLVBBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZFUikg
aXMgZ2wuRlJBTUVCVUZGRVJfVU5TVVBQT1JURUQKK1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0
YXR1cyhnbC5GUkFNRUJVRkZFUikgcmV0dXJuZWQgMzYwNTQKIFBBU1MgZ2V0RXJyb3Igd2FzIGV4
cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAogUEFTUyBnZXRF
cnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDog
CiBBdHRhY2ggZGVwdGhTdGVuY2lsIHVzaW5nIFNURU5DSUxfQVRUQUNITUVOVAogUEFTUyBmYm8g
PSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxsLgogUEFTUyBnZXRFcnJvciB3YXMg
ZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCi1QQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0
dXMoZ2wuRlJBTUVCVUZGRVIpIGlzIGdsLkZSQU1FQlVGRkVSX1VOU1VQUE9SVEVECitQQVNTIGds
LmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVkIDM2MDU0CiBQ
QVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVS
QVRJT04gOiAKIFBBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1F
QlVGRkVSX09QRVJBVElPTiA6IAogQXR0YWNoIGRlcHRoLCB0aGVuIHN0ZW5jaWwsIGNhdXNpbmcg
Y29uZmxpY3QKIFBBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4K
IFBBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAogUEFTUyBnZXRF
cnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCi1QQVNTIGdsLmNoZWNrRnJhbWVi
dWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIGlzIGdsLkZSQU1FQlVGRkVSX1VOU1VQUE9SVEVE
CitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVk
IDM2MDYxCiBBdHRhY2ggc3RlbmNpbCwgdGhlbiBkZXB0aCwgY2F1c2luZyBjb25mbGljdAogUEFT
UyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxsLgogUEFTUyBnZXRFcnJv
ciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCiBQQVNTIGdldEVycm9yIHdhcyBleHBl
Y3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKLVBBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhn
bC5GUkFNRUJVRkZFUikgaXMgZ2wuRlJBTUVCVUZGRVJfVU5TVVBQT1JURUQKK1BBU1MgZ2wuY2hl
Y2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZFUikgcmV0dXJuZWQgMzYwNjEKIEF0dGFj
aCBkZXB0aCwgdGhlbiBkZXB0aFN0ZW5jaWwsIGNhdXNpbmcgY29uZmxpY3QKIFBBU1MgZmJvID0g
Z2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KIFBBU1MgZ2V0RXJyb3Igd2FzIGV4
cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAogUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFs
dWU6IE5PX0VSUk9SIDogCi1QQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVC
VUZGRVIpIGlzIGdsLkZSQU1FQlVGRkVSX1VOU1VQUE9SVEVECitQQVNTIGdsLmNoZWNrRnJhbWVi
dWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVkIDM2MDYxCiBBdHRhY2ggZGVwdGhT
dGVuY2lsLCB0aGVuIGRlcHRoLCBjYXVzaW5nIGNvbmZsaWN0CiBQQVNTIGZibyA9IGdsLmNyZWF0
ZUZyYW1lYnVmZmVyKCkgaXMgbm9uLW51bGwuCiBQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2
YWx1ZTogTk9fRVJST1IgOiAKIFBBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19F
UlJPUiA6IAotUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSBp
cyBnbC5GUkFNRUJVRkZFUl9VTlNVUFBPUlRFRAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3Rh
dHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5lZCAzNjA2MQogQXR0YWNoIHN0ZW5jaWwsIHRoZW4g
ZGVwdGhTdGVuY2lsLCBjYXVzaW5nIGNvbmZsaWN0CiBQQVNTIGZibyA9IGdsLmNyZWF0ZUZyYW1l
YnVmZmVyKCkgaXMgbm9uLW51bGwuCiBQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTog
Tk9fRVJST1IgOiAKIFBBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6
IAotUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSBpcyBnbC5G
UkFNRUJVRkZFUl9VTlNVUFBPUlRFRAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGds
LkZSQU1FQlVGRkVSKSByZXR1cm5lZCAzNjA2MQogQXR0YWNoIGRlcHRoU3RlbmNpbCwgdGhlbiBz
dGVuY2lsLCBjYXVzaW5nIGNvbmZsaWN0CiBQQVNTIGZibyA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVy
KCkgaXMgbm9uLW51bGwuCiBQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJS
T1IgOiAKIFBBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAotUEFT
UyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSBpcyBnbC5GUkFNRUJV
RkZFUl9VTlNVUFBPUlRFRAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1F
QlVGRkVSKSByZXR1cm5lZCAzNjA2MQogQXR0YWNoIGNvbG9yIHJlbmRlcmJ1ZmZlciB3aXRoIGlu
dGVybmFsZm9ybWF0ID09IFJHQkE0CiBQQVNTIGNvbG9yQnVmZmVyID0gZ2wuY3JlYXRlUmVuZGVy
YnVmZmVyKCkgaXMgbm9uLW51bGwuCiBQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTog
Tk9fRVJST1IgOiAKIFBBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVs
bC4KIFBBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBn
bC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5lZCAzNjA1Mwog
QXR0YWNoIGNvbG9yIHJlbmRlcmJ1ZmZlciB3aXRoIGludGVybmFsZm9ybWF0ID09IFJHQjVfQTEK
IFBBU1MgY29sb3JCdWZmZXIgPSBnbC5jcmVhdGVSZW5kZXJidWZmZXIoKSBpcyBub24tbnVsbC4K
IFBBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAogUEFTUyBmYm8g
PSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxsLgogUEFTUyBnZXRFcnJvciB3YXMg
ZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0
dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVkIDM2MDUzCiBBdHRhY2ggY29sb3IgcmVuZGVyYnVm
ZmVyIHdpdGggaW50ZXJuYWxmb3JtYXQgPT0gUkdCNTY1CiBQQVNTIGNvbG9yQnVmZmVyID0gZ2wu
Y3JlYXRlUmVuZGVyYnVmZmVyKCkgaXMgbm9uLW51bGwuCiBQQVNTIGdldEVycm9yIHdhcyBleHBl
Y3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKIFBBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIo
KSBpcyBub24tbnVsbC4KIFBBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJP
UiA6IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1
cm5lZCAzNjA1MwogQ3JlYXRlIGFuZCBhdHRhY2ggZGVwdGhTdGVuY2lsIHJlbmRlcmJ1ZmZlcgog
UEFTUyBkZXB0aFN0ZW5jaWxCdWZmZXIgPSBnbC5jcmVhdGVSZW5kZXJidWZmZXIoKSBpcyBub24t
bnVsbC4KIFBBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IApAQCAt
MTE3LDYgKzUzMSw4MSBAQCBQQVNTIGdsLmdldFJlbmRlcmJ1ZmZlclBhcmFtZXRlcihnbC5SRU5E
CiBQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKIFBBU1MgZmJv
ID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KIFBBU1MgZ2V0RXJyb3Igd2Fz
IGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3Rh
dHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5lZCAzNjA1MworUEFTUyBmYm8gPSBnbC5jcmVhdGVG
cmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBjb2xvckJ1ZmZlciA9IGdsLmNyZWF0ZVJl
bmRlcmJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBkZXB0aEJ1ZmZlciA9IGdsLmNyZWF0ZVJl
bmRlcmJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFs
dWU6IE5PX0VSUk9SIDogCisKK0F0dGFjaG1lbnRzIG9mIGRpZmZlcmVudCBzaXplcyBzaG91bGQg
YmUgRlJBTUVCVUZGRVJfSU5DT01QTEVURV9ESU1FTlNJT05TIChPcGVuR0wgRVMgMi4wIDQuNC41
KQorUEFTUyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBj
b2xvckJ1ZmZlciA9IGdsLmNyZWF0ZVJlbmRlcmJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBk
ZXB0aEJ1ZmZlciA9IGdsLmNyZWF0ZVJlbmRlcmJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBn
ZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGdsLmNoZWNrRnJh
bWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHNob3VsZCBiZSBGUkFNRUJVRkZFUl9DT01Q
TEVURSB3YXMgRlJBTUVCVUZGRVJfQ09NUExFVEUKK1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0
YXR1cyhnbC5GUkFNRUJVRkZFUikgc2hvdWxkIGJlIEZSQU1FQlVGRkVSX0lOQ09NUExFVEVfRElN
RU5TSU9OUyB3YXMgRlJBTUVCVUZGRVJfSU5DT01QTEVURV9ESU1FTlNJT05TIG9yIEZSQU1FQlVG
RkVSX1VOU1VQUE9SVEVECitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVC
VUZGRVIpIHNob3VsZCBiZSBGUkFNRUJVRkZFUl9DT01QTEVURSB3YXMgRlJBTUVCVUZGRVJfQ09N
UExFVEUKK1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZFUikgc2hv
dWxkIGJlIEZSQU1FQlVGRkVSX0lOQ09NUExFVEVfRElNRU5TSU9OUyB3YXMgRlJBTUVCVUZGRVJf
SU5DT01QTEVURV9ESU1FTlNJT05TIG9yIEZSQU1FQlVGRkVSX1VOU1VQUE9SVEVECitQQVNTIGds
LmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHNob3VsZCBiZSBGUkFNRUJV
RkZFUl9DT01QTEVURSB3YXMgRlJBTUVCVUZGRVJfQ09NUExFVEUKK1BBU1MgZ2V0RXJyb3Igd2Fz
IGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQg
dmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJB
TUVCVUZGRVIpIHNob3VsZCBiZSBGUkFNRUJVRkZFUl9JTkNPTVBMRVRFX0RJTUVOU0lPTlMgd2Fz
IEZSQU1FQlVGRkVSX0lOQ09NUExFVEVfRElNRU5TSU9OUyBvciBGUkFNRUJVRkZFUl9VTlNVUFBP
UlRFRAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSBzaG91
bGQgYmUgRlJBTUVCVUZGRVJfQ09NUExFVEUgd2FzIEZSQU1FQlVGRkVSX0NPTVBMRVRFCitQQVNT
IGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZmJvID0gZ2wu
Y3JlYXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgY29sb3JCdWZmZXIgPSBnbC5j
cmVhdGVSZW5kZXJidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZl
clN0YXR1cyhnbC5GUkFNRUJVRkZFUikgc2hvdWxkIGJlIEZSQU1FQlVGRkVSX0NPTVBMRVRFIHdh
cyBGUkFNRUJVRkZFUl9DT01QTEVURQorCitXcm9uZyBzdG9yYWdlIHR5cGUgZm9yIHR5cGUgb2Yg
YXR0YWNobWVudCBiZSBGUkFNRUJVRkZFUl9JTkNPTVBMRVRFX0FUVEFDSE1FTlQgKE9wZW5HTCBF
UyAyLjAgNC40LjUpCitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZG
RVIpIHNob3VsZCBiZSBGUkFNRUJVRkZFUl9JTkNPTVBMRVRFX0FUVEFDSE1FTlQgd2FzIEZSQU1F
QlVGRkVSX0lOQ09NUExFVEVfQVRUQUNITUVOVCBvciBGUkFNRUJVRkZFUl9VTlNVUFBPUlRFRAor
UEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSBzaG91bGQgYmUg
RlJBTUVCVUZGRVJfQ09NUExFVEUgd2FzIEZSQU1FQlVGRkVSX0NPTVBMRVRFCisKKzAgc2l6ZSBh
dHRhY2htZW50IHNob3VsZCBiZSBGUkFNRUJVRkZFUl9JTkNPTVBMRVRFX0FUVEFDSE1FTlQgKE9w
ZW5HTCBFUyAyLjAgNC40LjUpCitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJB
TUVCVUZGRVIpIHNob3VsZCBiZSBGUkFNRUJVRkZFUl9JTkNPTVBMRVRFX0FUVEFDSE1FTlQgd2Fz
IEZSQU1FQlVGRkVSX0lOQ09NUExFVEVfQVRUQUNITUVOVCBvciBGUkFNRUJVRkZFUl9VTlNVUFBP
UlRFRAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCisKK05v
IGF0dGFjaG1lbnRzIHNob3VsZCBiZSBJTkNPTVBMRVRFX0ZSQU1FQlVGRkVSX01JU1NJTkdfQVRU
QUNITUVOVCAoT3BlbkdMIEVTIDIuMCA0LjQuNSkKK1BBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVi
dWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5G
UkFNRUJVRkZFUikgc2hvdWxkIGJlIEZSQU1FQlVGRkVSX0lOQ09NUExFVEVfTUlTU0lOR19BVFRB
Q0hNRU5UIHdhcyBGUkFNRUJVRkZFUl9JTkNPTVBMRVRFX01JU1NJTkdfQVRUQUNITUVOVCBvciBG
UkFNRUJVRkZFUl9VTlNVUFBPUlRFRAorUEFTUyBjb2xvckJ1ZmZlciA9IGdsLmNyZWF0ZVJlbmRl
cmJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGds
LkZSQU1FQlVGRkVSKSBzaG91bGQgYmUgRlJBTUVCVUZGRVJfQ09NUExFVEUgd2FzIEZSQU1FQlVG
RkVSX0NPTVBMRVRFCitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZG
RVIpIHNob3VsZCBiZSBGUkFNRUJVRkZFUl9JTkNPTVBMRVRFX01JU1NJTkdfQVRUQUNITUVOVCB3
YXMgRlJBTUVCVUZGRVJfSU5DT01QTEVURV9NSVNTSU5HX0FUVEFDSE1FTlQgb3IgRlJBTUVCVUZG
RVJfVU5TVVBQT1JURUQKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJP
UiA6IAorCitUZXN0IGRyYXdpbmcgb3IgcmVhZGluZyBmcm9tIGFuIGluY29tcGxldGUgZnJhbWVi
dWZmZXIKK1BBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KK1BB
U1MgY29sb3JCdWZmZXIgPSBnbC5jcmVhdGVSZW5kZXJidWZmZXIoKSBpcyBub24tbnVsbC4KK1BB
U1MgZGVwdGhCdWZmZXIgPSBnbC5jcmVhdGVSZW5kZXJidWZmZXIoKSBpcyBub24tbnVsbC4KK1BB
U1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5jaGVj
a0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSBzaG91bGQgYmUgRlJBTUVCVUZGRVJf
Q09NUExFVEUgd2FzIEZSQU1FQlVGRkVSX0NPTVBMRVRFCitQQVNTIGdsLmNoZWNrRnJhbWVidWZm
ZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHNob3VsZCBiZSBGUkFNRUJVRkZFUl9JTkNPTVBMRVRF
X0RJTUVOU0lPTlMgd2FzIEZSQU1FQlVGRkVSX0lOQ09NUExFVEVfRElNRU5TSU9OUyBvciBGUkFN
RUJVRkZFUl9VTlNVUFBPUlRFRAorCitEcmF3aW5nIG9yIHJlYWRpbmcgZnJvbSBhbiBpbmNvbXBs
ZXRlIGZyYW1lYnVmZmVyIHNob3VsZCBnZW5lcmF0ZSBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJB
VElPTgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNT
IGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJ
T04gOiBkcmF3QXJyYXlzIHdpdGggaW5jb21wbGV0ZSBmcmFtZWJ1ZmZlcgorUEFTUyBnZXRFcnJv
ciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogcmVh
ZFBpeGVscyBmcm9tIGluY29tcGxldGUgZnJhbWVidWZmZXIKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4
cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IGNvcHlUZXhJbWFn
ZTJEIGZyb20gaW5jb21wbGV0ZSBmcmFtZWJ1ZmZlcgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0
ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogY29weVRleFN1YkltYWdl
MkQgZnJvbSBpbmNvbXBsZXRlIGZyYW1lYnVmZmVyCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3Rl
ZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiBjbGVhciB3aXRoIGluY29t
cGxldGUgZnJhbWVidWZmZXIKK1BBU1MgZmJvMiA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkgaXMg
bm9uLW51bGwuCitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIp
IHNob3VsZCBiZSBGUkFNRUJVRkZFUl9JTkNPTVBMRVRFX01JU1NJTkdfQVRUQUNITUVOVCB3YXMg
RlJBTUVCVUZGRVJfSU5DT01QTEVURV9NSVNTSU5HX0FUVEFDSE1FTlQgb3IgRlJBTUVCVUZGRVJf
VU5TVVBQT1JURUQKKworRHJhd2luZyBvciByZWFkaW5nIGZyb20gYW4gaW5jb21wbGV0ZSBmcmFt
ZWJ1ZmZlciBzaG91bGQgZ2VuZXJhdGUgSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04KK1BB
U1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnZXRFcnJv
ciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogZHJh
d0FycmF5cyB3aXRoIGluY29tcGxldGUgZnJhbWVidWZmZXIKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4
cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IHJlYWRQaXhlbHMg
ZnJvbSBpbmNvbXBsZXRlIGZyYW1lYnVmZmVyCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2
YWx1ZTogSU5WQUxJRF9PUEVSQVRJT04gOiBjb3B5VGV4SW1hZ2UyRCBmcm9tIGluY29tcGxldGUg
ZnJhbWVidWZmZXIKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElEX09Q
RVJBVElPTiA6IGNvcHlUZXhTdWJJbWFnZTJEIGZyb20gaW5jb21wbGV0ZSBmcmFtZWJ1ZmZlcgor
UEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BF
UkFUSU9OIDogY2xlYXIgd2l0aCBpbmNvbXBsZXRlIGZyYW1lYnVmZmVyCitQQVNTIGNvbG9yQnVm
ZmVyID0gZ2wuY3JlYXRlUmVuZGVyYnVmZmVyKCkgaXMgbm9uLW51bGwuCisKK0RyYXdpbmcgb3Ig
cmVhZGluZyBmcm9tIGFuIGluY29tcGxldGUgZnJhbWVidWZmZXIgc2hvdWxkIGdlbmVyYXRlIElO
VkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2
YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZB
TElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IGRyYXdBcnJheXMgd2l0aCBpbmNvbXBsZXRlIGZy
YW1lYnVmZmVyCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFN
RUJVRkZFUl9PUEVSQVRJT04gOiByZWFkUGl4ZWxzIGZyb20gaW5jb21wbGV0ZSBmcmFtZWJ1ZmZl
cgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJf
T1BFUkFUSU9OIDogY29weVRleEltYWdlMkQgZnJvbSBpbmNvbXBsZXRlIGZyYW1lYnVmZmVyCitQ
QVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVS
QVRJT04gOiBjb3B5VGV4U3ViSW1hZ2UyRCBmcm9tIGluY29tcGxldGUgZnJhbWVidWZmZXIKK1BB
U1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJB
VElPTiA6IGNsZWFyIHdpdGggaW5jb21wbGV0ZSBmcmFtZWJ1ZmZlcgogUEFTUyBzdWNjZXNzZnVs
bHlQYXJzZWQgaXMgdHJ1ZQogCiBURVNUIENPTVBMRVRFCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0
L2NhbnZhcy93ZWJnbC9mcmFtZWJ1ZmZlci1vYmplY3QtYXR0YWNobWVudC5odG1sCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvY2FudmFzL3dlYmdsL2ZyYW1lYnVmZmVyLW9iamVjdC1h
dHRhY2htZW50Lmh0bWwJKHJldmlzaW9uIDEwMjYxMikKKysrIExheW91dFRlc3RzL2Zhc3QvY2Fu
dmFzL3dlYmdsL2ZyYW1lYnVmZmVyLW9iamVjdC1hdHRhY2htZW50Lmh0bWwJKHdvcmtpbmcgY29w
eSkKQEAgLTEsNDAgKzEsNjMgQEAKKzwhRE9DVFlQRSBodG1sPgogPGh0bWw+CiA8aGVhZD4KKzxt
ZXRhIGNoYXJzZXQ9InV0Zi04Ij4KIDxzY3JpcHQgc3JjPSIuLi8uLi9qcy9yZXNvdXJjZXMvanMt
dGVzdC1wcmUuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9InJlc291cmNlcy93ZWJnbC10ZXN0
LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvd2ViZ2wtdGVzdC11dGlscy5q
cyI+PC9zY3JpcHQ+CiA8L2hlYWQ+CiA8Ym9keT4KIDxkaXYgaWQ9ImRlc2NyaXB0aW9uIj48L2Rp
dj4KIDxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgogCiA8c2NyaXB0PgotCit2YXIgd3R1ID0gV2Vi
R0xUZXN0VXRpbHM7CiB2YXIgZ2w7CiB2YXIgZmJvOwogdmFyIGRlcHRoQnVmZmVyOwogdmFyIHN0
ZW5jaWxCdWZmZXI7CiB2YXIgZGVwdGhTdGVuY2lsQnVmZmVyOwogdmFyIGNvbG9yQnVmZmVyOwot
dmFyIHdpZHRoID0gMjsKLXZhciBoZWlnaHQgPSAyOwordmFyIHdpZHRoOwordmFyIGhlaWdodDsK
KworY29uc3QgQUxMT1dfQ09NUExFVEUgICAgICAgICAgICAgID0gMHgwMTsKK2NvbnN0IEFMTE9X
X1VOU1VQUE9SVEVEICAgICAgICAgICA9IDB4MDI7Citjb25zdCBBTExPV19JTkNPTVBMRVRFX0FU
VEFDSE1FTlQgPSAweDA0OworCitmdW5jdGlvbiBDaGVja0ZyYW1lYnVmZmVyRm9yQWxsb3dlZFN0
YXR1c2VzKGFsbG93ZWRTdGF0dXNlcykKK3sKKyAgICAvLyBJZiB0aGUgZnJhbWVidWZmZXIgaXMg
aW4gYW4gZXJyb3Igc3RhdGUgZm9yIG11bHRpcGxlIHJlYXNvbnMsCisgICAgLy8gd2UgY2FuJ3Qg
Z3VhcmFudGVlIHdoaWNoIG9uZSB3aWxsIGJlIHJlcG9ydGVkLgorICAgIHZhciBzdGF0dXMgPSBn
bC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKTsKKyAgICB2YXIgc3RhdHVz
QWxsb3dlZCA9ICgoYWxsb3dlZFN0YXR1c2VzICYgQUxMT1dfQ09NUExFVEUpICYmIChzdGF0dXMg
PT0gZ2wuRlJBTUVCVUZGRVJfQ09NUExFVEUpKSB8fAorICAgICAgICAgICAgICAgICAgICAgICAg
KChhbGxvd2VkU3RhdHVzZXMgJiBBTExPV19VTlNVUFBPUlRFRCkgJiYgKHN0YXR1cyA9PSBnbC5G
UkFNRUJVRkZFUl9VTlNVUFBPUlRFRCkpIHx8CisgICAgICAgICAgICAgICAgICAgICAgICAoKGFs
bG93ZWRTdGF0dXNlcyAmIEFMTE9XX0lOQ09NUExFVEVfQVRUQUNITUVOVCkgJiYgKHN0YXR1cyA9
PSBnbC5GUkFNRUJVRkZFUl9JTkNPTVBMRVRFX0FUVEFDSE1FTlQpKTsKKyAgICB2YXIgbXNnID0g
ImdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVkICIgKyBz
dGF0dXM7CisgICAgaWYgKHN0YXR1c0FsbG93ZWQpCisgICAgICAgIHRlc3RQYXNzZWQobXNnKTsK
KyAgICBlbHNlCisgICAgICAgIHRlc3RGYWlsZWQobXNnKTsKK30KIAotZnVuY3Rpb24gdGVzdEF0
dGFjaG1lbnQoYXR0YWNobWVudCwgYnVmZmVyLCBpc0NvbmZsaWN0ZWQpCitmdW5jdGlvbiB0ZXN0
QXR0YWNobWVudChhdHRhY2htZW50LCBidWZmZXIsIGFsbG93ZWRTdGF0dXNlcykKIHsKICAgICBz
aG91bGRCZU5vbk51bGwoImZibyA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkiKTsKICAgICBnbC5i
aW5kRnJhbWVidWZmZXIoZ2wuRlJBTUVCVUZGRVIsIGZibyk7CiAgICAgZ2wuZnJhbWVidWZmZXJS
ZW5kZXJidWZmZXIoZ2wuRlJBTUVCVUZGRVIsIGdsLkNPTE9SX0FUVEFDSE1FTlQwLCBnbC5SRU5E
RVJCVUZGRVIsIGNvbG9yQnVmZmVyKTsKICAgICBnbC5mcmFtZWJ1ZmZlclJlbmRlcmJ1ZmZlcihn
bC5GUkFNRUJVRkZFUiwgYXR0YWNobWVudCwgZ2wuUkVOREVSQlVGRkVSLCBidWZmZXIpOwogICAg
IGdsRXJyb3JTaG91bGRCZShnbCwgZ2wuTk9fRVJST1IpOwotICAgIGlmIChpc0NvbmZsaWN0ZWQp
IHsKLSAgICAgICAgc2hvdWxkQmUoImdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVC
VUZGRVIpIiwgImdsLkZSQU1FQlVGRkVSX1VOU1VQUE9SVEVEIik7CisgICAgQ2hlY2tGcmFtZWJ1
ZmZlckZvckFsbG93ZWRTdGF0dXNlcyhhbGxvd2VkU3RhdHVzZXMpOworICAgIGlmICgoYWxsb3dl
ZFN0YXR1c2VzICYgQUxMT1dfQ09NUExFVEUpID09IDApIHsKICAgICAgICAgZ2wuY2xlYXIoZ2wu
Q09MT1JfQlVGRkVSX0JJVCk7CiAgICAgICAgIGdsRXJyb3JTaG91bGRCZShnbCwgZ2wuSU5WQUxJ
RF9GUkFNRUJVRkZFUl9PUEVSQVRJT04pOwogICAgICAgICBnbC5yZWFkUGl4ZWxzKDAsIDAsIHdp
ZHRoLCBoZWlnaHQsIGdsLlJHQkEsIGdsLlVOU0lHTkVEX0JZVEUsIG5ldyBVaW50OEFycmF5KHdp
ZHRoICogaGVpZ2h0ICogNCkpOwogICAgICAgICBnbEVycm9yU2hvdWxkQmUoZ2wsIGdsLklOVkFM
SURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OKTsKICAgICB9CisgICAgZ2wuZGVsZXRlRnJhbWVidWZm
ZXIoZmJvKTsKIH0KIAotZnVuY3Rpb24gdGVzdEF0dGFjaG1lbnRzKGF0dGFjaG1lbnQwLCBidWZm
ZXIwLCBhdHRhY2htZW50MSwgYnVmZmVyMSwgaXNDb25mbGljdGVkKQorZnVuY3Rpb24gdGVzdEF0
dGFjaG1lbnRzKGF0dGFjaG1lbnQwLCBidWZmZXIwLCBhdHRhY2htZW50MSwgYnVmZmVyMSwgYWxs
b3dlZFN0YXR1c2VzKQogewogICAgIHNob3VsZEJlTm9uTnVsbCgiZmJvID0gZ2wuY3JlYXRlRnJh
bWVidWZmZXIoKSIpOwogICAgIGdsLmJpbmRGcmFtZWJ1ZmZlcihnbC5GUkFNRUJVRkZFUiwgZmJv
KTsKQEAgLTQzLDEwMiArNjYsMzQ3IEBAIGZ1bmN0aW9uIHRlc3RBdHRhY2htZW50cyhhdHRhY2ht
ZW50MCwgYnUKICAgICBnbEVycm9yU2hvdWxkQmUoZ2wsIGdsLk5PX0VSUk9SKTsKICAgICBnbC5m
cmFtZWJ1ZmZlclJlbmRlcmJ1ZmZlcihnbC5GUkFNRUJVRkZFUiwgYXR0YWNobWVudDEsIGdsLlJF
TkRFUkJVRkZFUiwgYnVmZmVyMSk7CiAgICAgZ2xFcnJvclNob3VsZEJlKGdsLCBnbC5OT19FUlJP
Uik7Ci0gICAgaWYgKGlzQ29uZmxpY3RlZCkKLSAgICAgICAgc2hvdWxkQmUoImdsLmNoZWNrRnJh
bWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIiwgImdsLkZSQU1FQlVGRkVSX1VOU1VQUE9S
VEVEIik7CisgICAgQ2hlY2tGcmFtZWJ1ZmZlckZvckFsbG93ZWRTdGF0dXNlcyhhbGxvd2VkU3Rh
dHVzZXMpOworICAgIGdsLmRlbGV0ZUZyYW1lYnVmZmVyKGZibyk7CiB9CiAKLWZ1bmN0aW9uIHRl
c3RDb2xvclJlbmRlcmJ1ZmZlcihpbnRlcm5hbGZvcm1hdCkKK2Z1bmN0aW9uIHRlc3RDb2xvclJl
bmRlcmJ1ZmZlcihpbnRlcm5hbGZvcm1hdCwgYWxsb3dlZFN0YXR1c2VzKQogewogICAgIHNob3Vs
ZEJlTm9uTnVsbCgiY29sb3JCdWZmZXIgPSBnbC5jcmVhdGVSZW5kZXJidWZmZXIoKSIpOwogICAg
IGdsLmJpbmRSZW5kZXJidWZmZXIoZ2wuUkVOREVSQlVGRkVSLCBjb2xvckJ1ZmZlcik7CiAgICAg
Z2wucmVuZGVyYnVmZmVyU3RvcmFnZShnbC5SRU5ERVJCVUZGRVIsIGludGVybmFsZm9ybWF0LCB3
aWR0aCwgaGVpZ2h0KTsKICAgICBnbEVycm9yU2hvdWxkQmUoZ2wsIGdsLk5PX0VSUk9SKTsKLSAg
ICB0ZXN0QXR0YWNobWVudChnbC5DT0xPUl9BVFRBQ0hNRU5UMCwgY29sb3JCdWZmZXIsIGZhbHNl
KTsKKyAgICB0ZXN0QXR0YWNobWVudChnbC5DT0xPUl9BVFRBQ0hNRU5UMCwgY29sb3JCdWZmZXIs
IGFsbG93ZWRTdGF0dXNlcyk7CiB9CiAKLWZ1bmN0aW9uIHRlc3REZXB0aFN0ZW5jaWxSZW5kZXJi
dWZmZXIoKQorZnVuY3Rpb24gdGVzdERlcHRoU3RlbmNpbFJlbmRlcmJ1ZmZlcihhbGxvd2VkU3Rh
dHVzZXMpCiB7CiAgICAgc2hvdWxkQmVOb25OdWxsKCJkZXB0aFN0ZW5jaWxCdWZmZXIgPSBnbC5j
cmVhdGVSZW5kZXJidWZmZXIoKSIpOwogICAgIGdsLmJpbmRSZW5kZXJidWZmZXIoZ2wuUkVOREVS
QlVGRkVSLCBkZXB0aFN0ZW5jaWxCdWZmZXIpOwogICAgIGdsLnJlbmRlcmJ1ZmZlclN0b3JhZ2Uo
Z2wuUkVOREVSQlVGRkVSLCBnbC5ERVBUSF9TVEVOQ0lMLCB3aWR0aCwgaGVpZ2h0KTsKICAgICBn
bEVycm9yU2hvdWxkQmUoZ2wsIGdsLk5PX0VSUk9SKTsKLSAgICBzaG91bGRCZSgiZ2wuZ2V0UmVu
ZGVyYnVmZmVyUGFyYW1ldGVyKGdsLlJFTkRFUkJVRkZFUiwgZ2wuUkVOREVSQlVGRkVSX1dJRFRI
KSIsICJ3aWR0aCIpOwotICAgIHNob3VsZEJlKCJnbC5nZXRSZW5kZXJidWZmZXJQYXJhbWV0ZXIo
Z2wuUkVOREVSQlVGRkVSLCBnbC5SRU5ERVJCVUZGRVJfSEVJR0hUKSIsICJoZWlnaHQiKTsKKwor
ICAgIC8vIE9wZW5HTCBpdHNlbGYgZG9lc24ndCBzZWVtIHRvIGd1YXJhbnRlZSB0aGF0IGUuZy4g
YSAyIHggMAorICAgIC8vIHJlbmRlcmJ1ZmZlciB3aWxsIHJlcG9ydCAyIGZvciBpdHMgd2lkdGgg
d2hlbiBxdWVyaWVkLgorICAgIGlmICghKGhlaWdodCA9PSAwICYmIHdpZHRoID4gMCkpCisgICAg
ICAgIHNob3VsZEJlKCJnbC5nZXRSZW5kZXJidWZmZXJQYXJhbWV0ZXIoZ2wuUkVOREVSQlVGRkVS
LCBnbC5SRU5ERVJCVUZGRVJfV0lEVEgpIiwgIndpZHRoIik7CisgICAgaWYgKCEod2lkdGggPT0g
MCAmJiBoZWlnaHQgPiAwKSkKKyAgICAgICAgc2hvdWxkQmUoImdsLmdldFJlbmRlcmJ1ZmZlclBh
cmFtZXRlcihnbC5SRU5ERVJCVUZGRVIsIGdsLlJFTkRFUkJVRkZFUl9IRUlHSFQpIiwgImhlaWdo
dCIpOwogICAgIHNob3VsZEJlKCJnbC5nZXRSZW5kZXJidWZmZXJQYXJhbWV0ZXIoZ2wuUkVOREVS
QlVGRkVSLCBnbC5SRU5ERVJCVUZGRVJfSU5URVJOQUxfRk9STUFUKSIsICJnbC5ERVBUSF9TVEVO
Q0lMIik7CiAgICAgc2hvdWxkQmUoImdsLmdldFJlbmRlcmJ1ZmZlclBhcmFtZXRlcihnbC5SRU5E
RVJCVUZGRVIsIGdsLlJFTkRFUkJVRkZFUl9SRURfU0laRSkiLCAiMCIpOwogICAgIHNob3VsZEJl
KCJnbC5nZXRSZW5kZXJidWZmZXJQYXJhbWV0ZXIoZ2wuUkVOREVSQlVGRkVSLCBnbC5SRU5ERVJC
VUZGRVJfR1JFRU5fU0laRSkiLCAiMCIpOwogICAgIHNob3VsZEJlKCJnbC5nZXRSZW5kZXJidWZm
ZXJQYXJhbWV0ZXIoZ2wuUkVOREVSQlVGRkVSLCBnbC5SRU5ERVJCVUZGRVJfQkxVRV9TSVpFKSIs
ICIwIik7CiAgICAgc2hvdWxkQmUoImdsLmdldFJlbmRlcmJ1ZmZlclBhcmFtZXRlcihnbC5SRU5E
RVJCVUZGRVIsIGdsLlJFTkRFUkJVRkZFUl9BTFBIQV9TSVpFKSIsICIwIik7Ci0gICAgc2hvdWxk
QmVUcnVlKCJnbC5nZXRSZW5kZXJidWZmZXJQYXJhbWV0ZXIoZ2wuUkVOREVSQlVGRkVSLCBnbC5S
RU5ERVJCVUZGRVJfREVQVEhfU0laRSkgPiAwIik7Ci0gICAgc2hvdWxkQmVUcnVlKCJnbC5nZXRS
ZW5kZXJidWZmZXJQYXJhbWV0ZXIoZ2wuUkVOREVSQlVGRkVSLCBnbC5SRU5ERVJCVUZGRVJfU1RF
TkNJTF9TSVpFKSA+IDAiKTsKKyAgICAvLyBBdm9pZCB2ZXJpZnlpbmcgdGhlc2UgZm9yIHplcm8t
c2l6ZWQgcmVuZGVyYnVmZmVycyBmb3IgdGhlIHRpbWUKKyAgICAvLyBiZWluZyBzaW5jZSBpdCBh
cHBlYXJzIHRoYXQgZXZlbiBPcGVuR0wgZG9lc24ndCBndWFyYW50ZWUgdGhlbS4KKyAgICBpZiAo
d2lkdGggPiAwICYmIGhlaWdodCA+IDApIHsKKyAgICAgICAgc2hvdWxkQmVUcnVlKCJnbC5nZXRS
ZW5kZXJidWZmZXJQYXJhbWV0ZXIoZ2wuUkVOREVSQlVGRkVSLCBnbC5SRU5ERVJCVUZGRVJfREVQ
VEhfU0laRSkgPiAwIik7CisgICAgICAgIHNob3VsZEJlVHJ1ZSgiZ2wuZ2V0UmVuZGVyYnVmZmVy
UGFyYW1ldGVyKGdsLlJFTkRFUkJVRkZFUiwgZ2wuUkVOREVSQlVGRkVSX1NURU5DSUxfU0laRSkg
PiAwIik7CisgICAgfQogICAgIGdsRXJyb3JTaG91bGRCZShnbCwgZ2wuTk9fRVJST1IpOwotICAg
IHRlc3RBdHRhY2htZW50KGdsLkRFUFRIX1NURU5DSUxfQVRUQUNITUVOVCwgZGVwdGhTdGVuY2ls
QnVmZmVyLCBmYWxzZSk7CisgICAgdGVzdEF0dGFjaG1lbnQoZ2wuREVQVEhfU1RFTkNJTF9BVFRB
Q0hNRU5ULCBkZXB0aFN0ZW5jaWxCdWZmZXIsIGFsbG93ZWRTdGF0dXNlcyk7CiB9CiAKIGRlc2Ny
aXB0aW9uKCJUZXN0IGZyYW1lYnVmZmVyIG9iamVjdCBhdHRhY2htZW50IGJlaGF2aW9ycyIpOwog
Ci1kZWJ1ZygiQ3JlYXRlIHJlbmRlcmJ1ZmZlcnMiKTsKLXNob3VsZEJlTm9uTnVsbCgiZ2wgPSBj
cmVhdGUzRENvbnRleHQoKSIpOwotc2hvdWxkQmVOb25OdWxsKCJjb2xvckJ1ZmZlciA9IGdsLmNy
ZWF0ZVJlbmRlcmJ1ZmZlcigpIik7Ci1nbC5iaW5kUmVuZGVyYnVmZmVyKGdsLlJFTkRFUkJVRkZF
UiwgY29sb3JCdWZmZXIpOwotZ2wucmVuZGVyYnVmZmVyU3RvcmFnZShnbC5SRU5ERVJCVUZGRVIs
IGdsLlJHQkE0LCB3aWR0aCwgaGVpZ2h0KTsKLWdsRXJyb3JTaG91bGRCZShnbCwgZ2wuTk9fRVJS
T1IpOwotc2hvdWxkQmVOb25OdWxsKCJkZXB0aEJ1ZmZlciA9IGdsLmNyZWF0ZVJlbmRlcmJ1ZmZl
cigpIik7Ci1nbC5iaW5kUmVuZGVyYnVmZmVyKGdsLlJFTkRFUkJVRkZFUiwgZGVwdGhCdWZmZXIp
OwotZ2wucmVuZGVyYnVmZmVyU3RvcmFnZShnbC5SRU5ERVJCVUZGRVIsIGdsLkRFUFRIX0NPTVBP
TkVOVDE2LCB3aWR0aCwgaGVpZ2h0KTsKLWdsRXJyb3JTaG91bGRCZShnbCwgZ2wuTk9fRVJST1Ip
Owotc2hvdWxkQmVOb25OdWxsKCJzdGVuY2lsQnVmZmVyID0gZ2wuY3JlYXRlUmVuZGVyYnVmZmVy
KCkiKTsKLWdsLmJpbmRSZW5kZXJidWZmZXIoZ2wuUkVOREVSQlVGRkVSLCBzdGVuY2lsQnVmZmVy
KTsKLWdsLnJlbmRlcmJ1ZmZlclN0b3JhZ2UoZ2wuUkVOREVSQlVGRkVSLCBnbC5TVEVOQ0lMX0lO
REVYOCwgd2lkdGgsIGhlaWdodCk7Ci1nbEVycm9yU2hvdWxkQmUoZ2wsIGdsLk5PX0VSUk9SKTsK
LXNob3VsZEJlTm9uTnVsbCgiZGVwdGhTdGVuY2lsQnVmZmVyID0gZ2wuY3JlYXRlUmVuZGVyYnVm
ZmVyKCkiKTsKLWdsLmJpbmRSZW5kZXJidWZmZXIoZ2wuUkVOREVSQlVGRkVSLCBkZXB0aFN0ZW5j
aWxCdWZmZXIpOwotZ2wucmVuZGVyYnVmZmVyU3RvcmFnZShnbC5SRU5ERVJCVUZGRVIsIGdsLkRF
UFRIX1NURU5DSUwsIHdpZHRoLCBoZWlnaHQpOwotZ2xFcnJvclNob3VsZEJlKGdsLCBnbC5OT19F
UlJPUik7Ci0KLWRlYnVnKCJBdHRhY2ggZGVwdGggdXNpbmcgREVQVEhfQVRUQUNITUVOVCIpOwot
dGVzdEF0dGFjaG1lbnQoZ2wuREVQVEhfQVRUQUNITUVOVCwgZGVwdGhCdWZmZXIsIGZhbHNlKTsK
LWRlYnVnKCJBdHRhY2ggZGVwdGggdXNpbmcgU1RFTkNJTF9BVFRBQ0hNRU5UIik7Ci10ZXN0QXR0
YWNobWVudChnbC5TVEVOQ0lMX0FUVEFDSE1FTlQsIGRlcHRoQnVmZmVyLCB0cnVlKTsKLWRlYnVn
KCJBdHRhY2ggZGVwdGggdXNpbmcgREVQVEhfU1RFTkNJTF9BVFRBQ0hNRU5UIik7Ci10ZXN0QXR0
YWNobWVudChnbC5ERVBUSF9TVEVOQ0lMX0FUVEFDSE1FTlQsIGRlcHRoQnVmZmVyLCB0cnVlKTsK
LWRlYnVnKCJBdHRhY2ggc3RlbmNpbCB1c2luZyBTVEVOQ0lMX0FUVEFDSE1FTlQiKTsKLXRlc3RB
dHRhY2htZW50KGdsLlNURU5DSUxfQVRUQUNITUVOVCwgc3RlbmNpbEJ1ZmZlciwgZmFsc2UpOwot
ZGVidWcoIkF0dGFjaCBzdGVuY2lsIHVzaW5nIERFUFRIX0FUVEFDSE1FTlQiKTsKLXRlc3RBdHRh
Y2htZW50KGdsLkRFUFRIX0FUVEFDSE1FTlQsIHN0ZW5jaWxCdWZmZXIsIHRydWUpOwotZGVidWco
IkF0dGFjaCBzdGVuY2lsIHVzaW5nIERFUFRIX1NURU5DSUxfQVRUQUNITUVOVCIpOwotdGVzdEF0
dGFjaG1lbnQoZ2wuREVQVEhfU1RFTkNJTF9BVFRBQ0hNRU5ULCBzdGVuY2lsQnVmZmVyLCB0cnVl
KTsKLWRlYnVnKCJBdHRhY2ggZGVwdGhTdGVuY2lsIHVzaW5nIERFUFRIX1NURU5DSUxfQVRUQUNI
TUVOVCIpOwotdGVzdEF0dGFjaG1lbnQoZ2wuREVQVEhfU1RFTkNJTF9BVFRBQ0hNRU5ULCBkZXB0
aFN0ZW5jaWxCdWZmZXIsIGZhbHNlKTsKLWRlYnVnKCJBdHRhY2ggZGVwdGhTdGVuY2lsIHVzaW5n
IERFUFRIX0FUVEFDSE1FTlQiKTsKLXRlc3RBdHRhY2htZW50KGdsLkRFUFRIX0FUVEFDSE1FTlQs
IGRlcHRoU3RlbmNpbEJ1ZmZlciwgdHJ1ZSk7Ci1kZWJ1ZygiQXR0YWNoIGRlcHRoU3RlbmNpbCB1
c2luZyBTVEVOQ0lMX0FUVEFDSE1FTlQiKTsKLXRlc3RBdHRhY2htZW50KGdsLlNURU5DSUxfQVRU
QUNITUVOVCwgZGVwdGhTdGVuY2lsQnVmZmVyLCB0cnVlKTsKLQotZGVidWcoIkF0dGFjaCBkZXB0
aCwgdGhlbiBzdGVuY2lsLCBjYXVzaW5nIGNvbmZsaWN0Iik7Ci10ZXN0QXR0YWNobWVudHMoZ2wu
REVQVEhfQVRUQUNITUVOVCwgZGVwdGhCdWZmZXIsIGdsLlNURU5DSUxfQVRUQUNITUVOVCwgc3Rl
bmNpbEJ1ZmZlciwgdHJ1ZSk7Ci1kZWJ1ZygiQXR0YWNoIHN0ZW5jaWwsIHRoZW4gZGVwdGgsIGNh
dXNpbmcgY29uZmxpY3QiKTsKLXRlc3RBdHRhY2htZW50cyhnbC5TVEVOQ0lMX0FUVEFDSE1FTlQs
IHN0ZW5jaWxCdWZmZXIsIGdsLkRFUFRIX0FUVEFDSE1FTlQsIGRlcHRoQnVmZmVyLCB0cnVlKTsK
LWRlYnVnKCJBdHRhY2ggZGVwdGgsIHRoZW4gZGVwdGhTdGVuY2lsLCBjYXVzaW5nIGNvbmZsaWN0
Iik7Ci10ZXN0QXR0YWNobWVudHMoZ2wuREVQVEhfQVRUQUNITUVOVCwgZGVwdGhCdWZmZXIsIGds
LkRFUFRIX1NURU5DSUxfQVRUQUNITUVOVCwgZGVwdGhTdGVuY2lsQnVmZmVyLCB0cnVlKTsKLWRl
YnVnKCJBdHRhY2ggZGVwdGhTdGVuY2lsLCB0aGVuIGRlcHRoLCBjYXVzaW5nIGNvbmZsaWN0Iik7
Ci10ZXN0QXR0YWNobWVudHMoZ2wuREVQVEhfU1RFTkNJTF9BVFRBQ0hNRU5ULCBkZXB0aFN0ZW5j
aWxCdWZmZXIsIGdsLkRFUFRIX0FUVEFDSE1FTlQsIGRlcHRoQnVmZmVyLCB0cnVlKTsKLWRlYnVn
KCJBdHRhY2ggc3RlbmNpbCwgdGhlbiBkZXB0aFN0ZW5jaWwsIGNhdXNpbmcgY29uZmxpY3QiKTsK
LXRlc3RBdHRhY2htZW50cyhnbC5ERVBUSF9BVFRBQ0hNRU5ULCBkZXB0aEJ1ZmZlciwgZ2wuREVQ
VEhfU1RFTkNJTF9BVFRBQ0hNRU5ULCBkZXB0aFN0ZW5jaWxCdWZmZXIsIHRydWUpOwotZGVidWco
IkF0dGFjaCBkZXB0aFN0ZW5jaWwsIHRoZW4gc3RlbmNpbCwgY2F1c2luZyBjb25mbGljdCIpOwot
dGVzdEF0dGFjaG1lbnRzKGdsLkRFUFRIX1NURU5DSUxfQVRUQUNITUVOVCwgZGVwdGhTdGVuY2ls
QnVmZmVyLCBnbC5TVEVOQ0lMX0FUVEFDSE1FTlQsIHN0ZW5jaWxCdWZmZXIsIHRydWUpOwotCi1k
ZWJ1ZygiQXR0YWNoIGNvbG9yIHJlbmRlcmJ1ZmZlciB3aXRoIGludGVybmFsZm9ybWF0ID09IFJH
QkE0Iik7Ci10ZXN0Q29sb3JSZW5kZXJidWZmZXIoZ2wuUkdCQTQpOworZm9yICh3aWR0aCA9IDA7
IHdpZHRoIDw9IDI7IHdpZHRoICs9IDIpCit7CisgICAgZm9yIChoZWlnaHQgPSAwOyBoZWlnaHQg
PD0gMjsgaGVpZ2h0ICs9IDIpCisgICAgeworICAgICAgICBkZWJ1ZygiIik7CisgICAgICAgIGRl
YnVnKCJEaW1lbnNpb25zICIgKyB3aWR0aCArICIgeCAiICsgaGVpZ2h0KTsKKworICAgICAgICBk
ZWJ1ZygiQ3JlYXRlIHJlbmRlcmJ1ZmZlcnMiKTsKKyAgICAgICAgc2hvdWxkQmVOb25OdWxsKCJn
bCA9IGNyZWF0ZTNEQ29udGV4dCgpIik7CisgICAgICAgIHNob3VsZEJlTm9uTnVsbCgiY29sb3JC
dWZmZXIgPSBnbC5jcmVhdGVSZW5kZXJidWZmZXIoKSIpOworICAgICAgICBnbC5iaW5kUmVuZGVy
YnVmZmVyKGdsLlJFTkRFUkJVRkZFUiwgY29sb3JCdWZmZXIpOworICAgICAgICBnbC5yZW5kZXJi
dWZmZXJTdG9yYWdlKGdsLlJFTkRFUkJVRkZFUiwgZ2wuUkdCQTQsIHdpZHRoLCBoZWlnaHQpOwor
ICAgICAgICBnbEVycm9yU2hvdWxkQmUoZ2wsIGdsLk5PX0VSUk9SKTsKKyAgICAgICAgc2hvdWxk
QmVOb25OdWxsKCJkZXB0aEJ1ZmZlciA9IGdsLmNyZWF0ZVJlbmRlcmJ1ZmZlcigpIik7CisgICAg
ICAgIGdsLmJpbmRSZW5kZXJidWZmZXIoZ2wuUkVOREVSQlVGRkVSLCBkZXB0aEJ1ZmZlcik7Cisg
ICAgICAgIGdsLnJlbmRlcmJ1ZmZlclN0b3JhZ2UoZ2wuUkVOREVSQlVGRkVSLCBnbC5ERVBUSF9D
T01QT05FTlQxNiwgd2lkdGgsIGhlaWdodCk7CisgICAgICAgIGdsRXJyb3JTaG91bGRCZShnbCwg
Z2wuTk9fRVJST1IpOworICAgICAgICBzaG91bGRCZU5vbk51bGwoInN0ZW5jaWxCdWZmZXIgPSBn
bC5jcmVhdGVSZW5kZXJidWZmZXIoKSIpOworICAgICAgICBnbC5iaW5kUmVuZGVyYnVmZmVyKGds
LlJFTkRFUkJVRkZFUiwgc3RlbmNpbEJ1ZmZlcik7CisgICAgICAgIGdsLnJlbmRlcmJ1ZmZlclN0
b3JhZ2UoZ2wuUkVOREVSQlVGRkVSLCBnbC5TVEVOQ0lMX0lOREVYOCwgd2lkdGgsIGhlaWdodCk7
CisgICAgICAgIGdsRXJyb3JTaG91bGRCZShnbCwgZ2wuTk9fRVJST1IpOworICAgICAgICBzaG91
bGRCZU5vbk51bGwoImRlcHRoU3RlbmNpbEJ1ZmZlciA9IGdsLmNyZWF0ZVJlbmRlcmJ1ZmZlcigp
Iik7CisgICAgICAgIGdsLmJpbmRSZW5kZXJidWZmZXIoZ2wuUkVOREVSQlVGRkVSLCBkZXB0aFN0
ZW5jaWxCdWZmZXIpOworICAgICAgICBnbC5yZW5kZXJidWZmZXJTdG9yYWdlKGdsLlJFTkRFUkJV
RkZFUiwgZ2wuREVQVEhfU1RFTkNJTCwgd2lkdGgsIGhlaWdodCk7CisgICAgICAgIGdsRXJyb3JT
aG91bGRCZShnbCwgZ2wuTk9fRVJST1IpOworCisgICAgICAgIHZhciBhbGxvd2VkU3RhdHVzRm9y
R29vZENhc2UKKyAgICAgICAgICAgID0gKHdpZHRoID09IDAgfHwgaGVpZ2h0ID09IDApID8gQUxM
T1dfSU5DT01QTEVURV9BVFRBQ0hNRU5UIDogQUxMT1dfQ09NUExFVEU7CisKKyAgICAgICAgLy8g
c29tZSBjYXNlcyBpbnZvbHZpbmcgc3RlbmNpbCBzZWVtIHRvIGJlIGltcGxlbWVudGF0aW9uLWRl
cGVuZGVudAorICAgICAgICB2YXIgYWxsb3dlZFN0YXR1c0ZvckltcGxEZXBlbmRlbnRDYXNlID0g
YWxsb3dlZFN0YXR1c0Zvckdvb2RDYXNlIHwgQUxMT1dfVU5TVVBQT1JURUQ7CisKKyAgICAgICAg
ZGVidWcoIkF0dGFjaCBkZXB0aCB1c2luZyBERVBUSF9BVFRBQ0hNRU5UIik7CisgICAgICAgIHRl
c3RBdHRhY2htZW50KGdsLkRFUFRIX0FUVEFDSE1FTlQsIGRlcHRoQnVmZmVyLCBhbGxvd2VkU3Rh
dHVzRm9yR29vZENhc2UpOworICAgICAgICBkZWJ1ZygiQXR0YWNoIGRlcHRoIHVzaW5nIFNURU5D
SUxfQVRUQUNITUVOVCIpOworICAgICAgICB0ZXN0QXR0YWNobWVudChnbC5TVEVOQ0lMX0FUVEFD
SE1FTlQsIGRlcHRoQnVmZmVyLCBBTExPV19JTkNPTVBMRVRFX0FUVEFDSE1FTlQpOworICAgICAg
ICBkZWJ1ZygiQXR0YWNoIGRlcHRoIHVzaW5nIERFUFRIX1NURU5DSUxfQVRUQUNITUVOVCIpOwor
ICAgICAgICB0ZXN0QXR0YWNobWVudChnbC5ERVBUSF9TVEVOQ0lMX0FUVEFDSE1FTlQsIGRlcHRo
QnVmZmVyLCBBTExPV19JTkNPTVBMRVRFX0FUVEFDSE1FTlQpOworICAgICAgICBkZWJ1ZygiQXR0
YWNoIHN0ZW5jaWwgdXNpbmcgU1RFTkNJTF9BVFRBQ0hNRU5UIik7CisgICAgICAgIHRlc3RBdHRh
Y2htZW50KGdsLlNURU5DSUxfQVRUQUNITUVOVCwgc3RlbmNpbEJ1ZmZlciwgYWxsb3dlZFN0YXR1
c0ZvckltcGxEZXBlbmRlbnRDYXNlKTsKKyAgICAgICAgZGVidWcoIkF0dGFjaCBzdGVuY2lsIHVz
aW5nIERFUFRIX0FUVEFDSE1FTlQiKTsKKyAgICAgICAgdGVzdEF0dGFjaG1lbnQoZ2wuREVQVEhf
QVRUQUNITUVOVCwgc3RlbmNpbEJ1ZmZlciwgQUxMT1dfSU5DT01QTEVURV9BVFRBQ0hNRU5UKTsK
KyAgICAgICAgZGVidWcoIkF0dGFjaCBzdGVuY2lsIHVzaW5nIERFUFRIX1NURU5DSUxfQVRUQUNI
TUVOVCIpOworICAgICAgICB0ZXN0QXR0YWNobWVudChnbC5ERVBUSF9TVEVOQ0lMX0FUVEFDSE1F
TlQsIHN0ZW5jaWxCdWZmZXIsIEFMTE9XX0lOQ09NUExFVEVfQVRUQUNITUVOVCk7CisgICAgICAg
IGRlYnVnKCJBdHRhY2ggZGVwdGhTdGVuY2lsIHVzaW5nIERFUFRIX1NURU5DSUxfQVRUQUNITUVO
VCIpOworICAgICAgICB0ZXN0QXR0YWNobWVudChnbC5ERVBUSF9TVEVOQ0lMX0FUVEFDSE1FTlQs
IGRlcHRoU3RlbmNpbEJ1ZmZlciwgYWxsb3dlZFN0YXR1c0Zvckdvb2RDYXNlKTsKKyAgICAgICAg
ZGVidWcoIkF0dGFjaCBkZXB0aFN0ZW5jaWwgdXNpbmcgREVQVEhfQVRUQUNITUVOVCIpOworICAg
ICAgICB0ZXN0QXR0YWNobWVudChnbC5ERVBUSF9BVFRBQ0hNRU5ULCBkZXB0aFN0ZW5jaWxCdWZm
ZXIsIEFMTE9XX0lOQ09NUExFVEVfQVRUQUNITUVOVCk7CisgICAgICAgIGRlYnVnKCJBdHRhY2gg
ZGVwdGhTdGVuY2lsIHVzaW5nIFNURU5DSUxfQVRUQUNITUVOVCIpOworICAgICAgICB0ZXN0QXR0
YWNobWVudChnbC5TVEVOQ0lMX0FUVEFDSE1FTlQsIGRlcHRoU3RlbmNpbEJ1ZmZlciwgQUxMT1df
SU5DT01QTEVURV9BVFRBQ0hNRU5UKTsKKworICAgICAgICB2YXIgYWxsb3dlZFN0YXR1c0ZvckNv
bmZsaWN0ZWRBdHRhY2htZW50CisgICAgICAgICAgICA9ICh3aWR0aCA9PSAwIHx8IGhlaWdodCA9
PSAwKSA/IEFMTE9XX1VOU1VQUE9SVEVEIHwgQUxMT1dfSU5DT01QTEVURV9BVFRBQ0hNRU5UCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IEFMTE9XX1VOU1VQUE9S
VEVEOworCisgICAgICAgIGRlYnVnKCJBdHRhY2ggZGVwdGgsIHRoZW4gc3RlbmNpbCwgY2F1c2lu
ZyBjb25mbGljdCIpOworICAgICAgICB0ZXN0QXR0YWNobWVudHMoZ2wuREVQVEhfQVRUQUNITUVO
VCwgZGVwdGhCdWZmZXIsIGdsLlNURU5DSUxfQVRUQUNITUVOVCwgc3RlbmNpbEJ1ZmZlciwgYWxs
b3dlZFN0YXR1c0ZvckNvbmZsaWN0ZWRBdHRhY2htZW50KTsKKyAgICAgICAgZGVidWcoIkF0dGFj
aCBzdGVuY2lsLCB0aGVuIGRlcHRoLCBjYXVzaW5nIGNvbmZsaWN0Iik7CisgICAgICAgIHRlc3RB
dHRhY2htZW50cyhnbC5TVEVOQ0lMX0FUVEFDSE1FTlQsIHN0ZW5jaWxCdWZmZXIsIGdsLkRFUFRI
X0FUVEFDSE1FTlQsIGRlcHRoQnVmZmVyLCBhbGxvd2VkU3RhdHVzRm9yQ29uZmxpY3RlZEF0dGFj
aG1lbnQpOworICAgICAgICBkZWJ1ZygiQXR0YWNoIGRlcHRoLCB0aGVuIGRlcHRoU3RlbmNpbCwg
Y2F1c2luZyBjb25mbGljdCIpOworICAgICAgICB0ZXN0QXR0YWNobWVudHMoZ2wuREVQVEhfQVRU
QUNITUVOVCwgZGVwdGhCdWZmZXIsIGdsLkRFUFRIX1NURU5DSUxfQVRUQUNITUVOVCwgZGVwdGhT
dGVuY2lsQnVmZmVyLCBhbGxvd2VkU3RhdHVzRm9yQ29uZmxpY3RlZEF0dGFjaG1lbnQpOworICAg
ICAgICBkZWJ1ZygiQXR0YWNoIGRlcHRoU3RlbmNpbCwgdGhlbiBkZXB0aCwgY2F1c2luZyBjb25m
bGljdCIpOworICAgICAgICB0ZXN0QXR0YWNobWVudHMoZ2wuREVQVEhfU1RFTkNJTF9BVFRBQ0hN
RU5ULCBkZXB0aFN0ZW5jaWxCdWZmZXIsIGdsLkRFUFRIX0FUVEFDSE1FTlQsIGRlcHRoQnVmZmVy
LCBhbGxvd2VkU3RhdHVzRm9yQ29uZmxpY3RlZEF0dGFjaG1lbnQpOworICAgICAgICBkZWJ1Zygi
QXR0YWNoIHN0ZW5jaWwsIHRoZW4gZGVwdGhTdGVuY2lsLCBjYXVzaW5nIGNvbmZsaWN0Iik7Cisg
ICAgICAgIHRlc3RBdHRhY2htZW50cyhnbC5ERVBUSF9BVFRBQ0hNRU5ULCBkZXB0aEJ1ZmZlciwg
Z2wuREVQVEhfU1RFTkNJTF9BVFRBQ0hNRU5ULCBkZXB0aFN0ZW5jaWxCdWZmZXIsIGFsbG93ZWRT
dGF0dXNGb3JDb25mbGljdGVkQXR0YWNobWVudCk7CisgICAgICAgIGRlYnVnKCJBdHRhY2ggZGVw
dGhTdGVuY2lsLCB0aGVuIHN0ZW5jaWwsIGNhdXNpbmcgY29uZmxpY3QiKTsKKyAgICAgICAgdGVz
dEF0dGFjaG1lbnRzKGdsLkRFUFRIX1NURU5DSUxfQVRUQUNITUVOVCwgZGVwdGhTdGVuY2lsQnVm
ZmVyLCBnbC5TVEVOQ0lMX0FUVEFDSE1FTlQsIHN0ZW5jaWxCdWZmZXIsIGFsbG93ZWRTdGF0dXNG
b3JDb25mbGljdGVkQXR0YWNobWVudCk7CisKKyAgICAgICAgZGVidWcoIkF0dGFjaCBjb2xvciBy
ZW5kZXJidWZmZXIgd2l0aCBpbnRlcm5hbGZvcm1hdCA9PSBSR0JBNCIpOworICAgICAgICB0ZXN0
Q29sb3JSZW5kZXJidWZmZXIoZ2wuUkdCQTQsIGFsbG93ZWRTdGF0dXNGb3JHb29kQ2FzZSk7CisK
KyAgICAgICAgZGVidWcoIkF0dGFjaCBjb2xvciByZW5kZXJidWZmZXIgd2l0aCBpbnRlcm5hbGZv
cm1hdCA9PSBSR0I1X0ExIik7CisgICAgICAgIHRlc3RDb2xvclJlbmRlcmJ1ZmZlcihnbC5SR0I1
X0ExLCBhbGxvd2VkU3RhdHVzRm9yR29vZENhc2UpOworCisgICAgICAgIGRlYnVnKCJBdHRhY2gg
Y29sb3IgcmVuZGVyYnVmZmVyIHdpdGggaW50ZXJuYWxmb3JtYXQgPT0gUkdCNTY1Iik7CisgICAg
ICAgIHRlc3RDb2xvclJlbmRlcmJ1ZmZlcihnbC5SR0I1NjUsIGFsbG93ZWRTdGF0dXNGb3JHb29k
Q2FzZSk7CisKKyAgICAgICAgZGVidWcoIkNyZWF0ZSBhbmQgYXR0YWNoIGRlcHRoU3RlbmNpbCBy
ZW5kZXJidWZmZXIiKTsKKyAgICAgICAgdGVzdERlcHRoU3RlbmNpbFJlbmRlcmJ1ZmZlcihhbGxv
d2VkU3RhdHVzRm9yR29vZENhc2UpOworICAgIH0KK30KKworLy8gRGV0ZXJtaW5lIGlmIHdlIGNh
biBhdHRhY2ggYm90aCBjb2xvciBhbmQgZGVwdGggb3IgY29sb3IgYW5kIGRlcHRoX3N0ZW5jaWwK
K3ZhciBkZXB0aEZvcm1hdDsKK3ZhciBkZXB0aEF0dGFjaG1lbnQ7CisKK2Z1bmN0aW9uIGNoZWNr
VmFsaWRDb2xvckRlcHRoQ29tYmluYXRpb24oKSB7CisgICAgc2hvdWxkQmVOb25OdWxsKCJmYm8g
PSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIik7CisgICAgZ2wuYmluZEZyYW1lYnVmZmVyKGdsLkZS
QU1FQlVGRkVSLCBmYm8pOworICAgIHNob3VsZEJlTm9uTnVsbCgiY29sb3JCdWZmZXIgPSBnbC5j
cmVhdGVSZW5kZXJidWZmZXIoKSIpOworICAgIGdsLmJpbmRSZW5kZXJidWZmZXIoZ2wuUkVOREVS
QlVGRkVSLCBjb2xvckJ1ZmZlcik7CisgICAgZ2wuZnJhbWVidWZmZXJSZW5kZXJidWZmZXIoCisg
ICAgICAgIGdsLkZSQU1FQlVGRkVSLCBnbC5DT0xPUl9BVFRBQ0hNRU5UMCwgZ2wuUkVOREVSQlVG
RkVSLCBjb2xvckJ1ZmZlcik7CisgICAgZ2wucmVuZGVyYnVmZmVyU3RvcmFnZShnbC5SRU5ERVJC
VUZGRVIsIGdsLlJHQkE0LCAxNiwgMTYpOworCisgICAgc2hvdWxkQmVOb25OdWxsKCJkZXB0aEJ1
ZmZlciA9IGdsLmNyZWF0ZVJlbmRlcmJ1ZmZlcigpIik7CisgICAgZ2wuYmluZFJlbmRlcmJ1ZmZl
cihnbC5SRU5ERVJCVUZGRVIsIGRlcHRoQnVmZmVyKTsKKworICAgIHJldHVybiB0cnlEZXB0aChn
bC5ERVBUSF9DT01QT05FTlQxNiwgZ2wuREVQVEhfQVRUQUNITUVOVCkgfHwgdHJ5RGVwdGgoZ2wu
REVQVEhfU1RFTkNJTCwgZ2wuREVQVEhfU1RFTkNJTF9BVFRBQ0hNRU5UKTsKKworICAgIGZ1bmN0
aW9uIHRyeURlcHRoKHRyeV9mb3JtYXQsIHRyeV9hdHRhY2htZW50KSB7CisgICAgICAgIGlmIChk
ZXB0aEF0dGFjaG1lbnQpIHsKKyAgICAgICAgICAgIC8vIElmIHdlJ3ZlIHRyaWVkIG9uY2UgdW5h
dHRhY2ggdGhlIG9sZCBvbmUuCisgICAgICAgICAgICBnbC5mcmFtZWJ1ZmZlclJlbmRlcmJ1ZmZl
cigKKyAgICAgICAgICAgICAgICBnbC5GUkFNRUJVRkZFUiwgZGVwdGhBdHRhY2htZW50LCBnbC5S
RU5ERVJCVUZGRVIsIG51bGwpOworICAgICAgICB9CisgICAgICAgIGRlcHRoRm9ybWF0ID0gdHJ5
X2Zvcm1hdDsKKyAgICAgICAgZGVwdGhBdHRhY2htZW50ID0gdHJ5X2F0dGFjaG1lbnQ7CisgICAg
ICAgIGdsLmZyYW1lYnVmZmVyUmVuZGVyYnVmZmVyKAorICAgICAgICAgICAgZ2wuRlJBTUVCVUZG
RVIsIGRlcHRoQXR0YWNobWVudCwgZ2wuUkVOREVSQlVGRkVSLCBkZXB0aEJ1ZmZlcik7CisgICAg
ICAgIGdsLnJlbmRlcmJ1ZmZlclN0b3JhZ2UoZ2wuUkVOREVSQlVGRkVSLCBkZXB0aEZvcm1hdCwg
MTYsIDE2KTsKKyAgICAgICAgZ2xFcnJvclNob3VsZEJlKGdsLCBnbC5OT19FUlJPUik7CisgICAg
ICAgIHJldHVybiBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSA9PSBn
bC5GUkFNRUJVRkZFUl9DT01QTEVURTsKKyAgICB9Cit9CisKK2lmIChjaGVja1ZhbGlkQ29sb3JE
ZXB0aENvbWJpbmF0aW9uKCkpIHsKKyAgICB0ZXN0RnJhbWVidWZmZXJJbmNvbXBsZXRlRGltZW5z
aW9ucygpOworICAgIHRlc3RGcmFtZWJ1ZmZlckluY29tcGxldGVBdHRhY2htZW50KCk7CisgICAg
dGVzdEZyYW1lYnVmZmVySW5jb21wbGV0ZU1pc3NpbmdBdHRhY2htZW50KCk7CisgICAgdGVzdFVz
aW5nSW5jb21wbGV0ZUZyYW1lYnVmZmVyKCk7Cit9CisKK2Z1bmN0aW9uIENoZWNrRnJhbWVidWZm
ZXIoZXhwZWN0ZWQpIHsKKyAgICB2YXIgYWN0dWFsID0gZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1
cyhnbC5GUkFNRUJVRkZFUik7CisgICAgdmFyIG1zZyA9ICJnbC5jaGVja0ZyYW1lYnVmZmVyU3Rh
dHVzKGdsLkZSQU1FQlVGRkVSKSBzaG91bGQgYmUgIiArIHd0dS5nbEVudW1Ub1N0cmluZyhnbCwg
ZXhwZWN0ZWQpICsgIiB3YXMgIiArIHd0dS5nbEVudW1Ub1N0cmluZyhnbCwgYWN0dWFsKTsKKyAg
ICBpZiAoZXhwZWN0ZWQgIT0gZ2wuRlJBTUVCVUZGRVJfQ09NUExFVEUpIHsKKyAgICAgICAgbXNn
ICs9ICIgb3IgRlJBTUVCVUZGRVJfVU5TVVBQT1JURUQiOworICAgIH0KKyAgICBpZiAoYWN0dWFs
ID09IGV4cGVjdGVkIHx8CisgICAgICAgIChleHBlY3RlZCAhPSBnbC5GUkFNRUJVRkZFUl9DT01Q
TEVURSAmJgorICAgICAgICAgYWN0dWFsID09IGdsLkZSQU1CVUZGRVJfVU5TVVBQT1JURUQpKSB7
CisgICAgICAgIHRlc3RQYXNzZWQobXNnKTsKKyAgICB9IGVsc2UgeworICAgICAgICB0ZXN0RmFp
bGVkKG1zZyk7CisgICAgfQorfQorCitmdW5jdGlvbiB0ZXN0VXNpbmdJbmNvbXBsZXRlRnJhbWVi
dWZmZXIoKSB7CisgICAgZGVidWcoIiIpOworICAgIGRlYnVnKCJUZXN0IGRyYXdpbmcgb3IgcmVh
ZGluZyBmcm9tIGFuIGluY29tcGxldGUgZnJhbWVidWZmZXIiKTsKKyAgICB2YXIgcHJvZ3JhbSA9
IHd0dS5zZXR1cFRleHR1cmVkUXVhZChnbCk7CisgICAgdmFyIHRleCA9IGdsLmNyZWF0ZVRleHR1
cmUoKTsKKyAgICB3dHUuZmlsbFRleHR1cmUoZ2wsIHRleCwgMSwgMSwgWzAsMjU1LDAsMjU1XSk7
CisKKyAgICBzaG91bGRCZU5vbk51bGwoImZibyA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkiKTsK
KyAgICBnbC5iaW5kRnJhbWVidWZmZXIoZ2wuRlJBTUVCVUZGRVIsIGZibyk7CisgICAgc2hvdWxk
QmVOb25OdWxsKCJjb2xvckJ1ZmZlciA9IGdsLmNyZWF0ZVJlbmRlcmJ1ZmZlcigpIik7CisgICAg
Z2wuYmluZFJlbmRlcmJ1ZmZlcihnbC5SRU5ERVJCVUZGRVIsIGNvbG9yQnVmZmVyKTsKKyAgICBn
bC5mcmFtZWJ1ZmZlclJlbmRlcmJ1ZmZlcigKKyAgICAgICAgZ2wuRlJBTUVCVUZGRVIsIGdsLkNP
TE9SX0FUVEFDSE1FTlQwLCBnbC5SRU5ERVJCVUZGRVIsIGNvbG9yQnVmZmVyKTsKKyAgICBnbC5y
ZW5kZXJidWZmZXJTdG9yYWdlKGdsLlJFTkRFUkJVRkZFUiwgZ2wuUkdCQTQsIDE2LCAxNik7CisK
KyAgICBzaG91bGRCZU5vbk51bGwoImRlcHRoQnVmZmVyID0gZ2wuY3JlYXRlUmVuZGVyYnVmZmVy
KCkiKTsKKyAgICBnbC5iaW5kUmVuZGVyYnVmZmVyKGdsLlJFTkRFUkJVRkZFUiwgZGVwdGhCdWZm
ZXIpOworICAgIGdsLmZyYW1lYnVmZmVyUmVuZGVyYnVmZmVyKAorICAgICAgICBnbC5GUkFNRUJV
RkZFUiwgZGVwdGhBdHRhY2htZW50LCBnbC5SRU5ERVJCVUZGRVIsIGRlcHRoQnVmZmVyKTsKKyAg
ICBnbC5yZW5kZXJidWZmZXJTdG9yYWdlKGdsLlJFTkRFUkJVRkZFUiwgZGVwdGhGb3JtYXQsIDE2
LCAxNik7CisgICAgZ2xFcnJvclNob3VsZEJlKGdsLCBnbC5OT19FUlJPUik7CisgICAgQ2hlY2tG
cmFtZWJ1ZmZlcihnbC5GUkFNRUJVRkZFUl9DT01QTEVURSk7CisKKyAgICAvLyBXZSBwaWNrIHRo
aXMgY29tYmluYXRpb24gYmVjYXVzZSBpdCB3b3JrcyBvbiBkZXNrdG9wIE9wZW5HTCBidXQgc2hv
dWxkIG5vdCB3b3JrIG9uIE9wZW5HTCBFUyAyLjAKKyAgICBnbC5yZW5kZXJidWZmZXJTdG9yYWdl
KGdsLlJFTkRFUkJVRkZFUiwgZGVwdGhGb3JtYXQsIDMyLCAxNik7CisgICAgQ2hlY2tGcmFtZWJ1
ZmZlcihnbC5GUkFNRUJVRkZFUl9JTkNPTVBMRVRFX0RJTUVOU0lPTlMpOworICAgIGRlYnVnKCIi
KTsKKyAgICBkZWJ1ZygiRHJhd2luZyBvciByZWFkaW5nIGZyb20gYW4gaW5jb21wbGV0ZSBmcmFt
ZWJ1ZmZlciBzaG91bGQgZ2VuZXJhdGUgSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04iKTsK
KyAgICB0ZXN0UmVuZGVyaW5nQW5kUmVhZGluZygpOworCisgICAgc2hvdWxkQmVOb25OdWxsKCJm
Ym8yID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSIpOworICAgIGdsLmJpbmRGcmFtZWJ1ZmZlcihn
bC5GUkFNRUJVRkZFUiwgZmJvMik7CisgICAgQ2hlY2tGcmFtZWJ1ZmZlcihnbC5GUkFNRUJVRkZF
Ul9JTkNPTVBMRVRFX01JU1NJTkdfQVRUQUNITUVOVCk7CisgICAgZGVidWcoIiIpOworICAgIGRl
YnVnKCJEcmF3aW5nIG9yIHJlYWRpbmcgZnJvbSBhbiBpbmNvbXBsZXRlIGZyYW1lYnVmZmVyIHNo
b3VsZCBnZW5lcmF0ZSBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiIpOworICAgIHRlc3RS
ZW5kZXJpbmdBbmRSZWFkaW5nKCk7CisKKyAgICBzaG91bGRCZU5vbk51bGwoImNvbG9yQnVmZmVy
ID0gZ2wuY3JlYXRlUmVuZGVyYnVmZmVyKCkiKTsKKyAgICBnbC5iaW5kUmVuZGVyYnVmZmVyKGds
LlJFTkRFUkJVRkZFUiwgY29sb3JCdWZmZXIpOworICAgIGdsLmZyYW1lYnVmZmVyUmVuZGVyYnVm
ZmVyKAorICAgICAgICBnbC5GUkFNRUJVRkZFUiwgZ2wuQ09MT1JfQVRUQUNITUVOVDAsIGdsLlJF
TkRFUkJVRkZFUiwgY29sb3JCdWZmZXIpOworICAgIGdsLnJlbmRlcmJ1ZmZlclN0b3JhZ2UoZ2wu
UkVOREVSQlVGRkVSLCBnbC5SR0JBNCwgMCwgMCk7CisgICAgZGVidWcoIiIpOworICAgIGRlYnVn
KCJEcmF3aW5nIG9yIHJlYWRpbmcgZnJvbSBhbiBpbmNvbXBsZXRlIGZyYW1lYnVmZmVyIHNob3Vs
ZCBnZW5lcmF0ZSBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiIpOworICAgIHRlc3RSZW5k
ZXJpbmdBbmRSZWFkaW5nKCk7CisKKyAgICBmdW5jdGlvbiB0ZXN0UmVuZGVyaW5nQW5kUmVhZGlu
ZygpIHsKKyAgICAgICAgZ2xFcnJvclNob3VsZEJlKGdsLCBnbC5OT19FUlJPUik7CisgICAgICAg
IHd0dS5kcmF3UXVhZChnbCk7CisgICAgICAgIGdsRXJyb3JTaG91bGRCZShnbCwgZ2wuSU5WQUxJ
RF9GUkFNRUJVRkZFUl9PUEVSQVRJT04sICJkcmF3QXJyYXlzIHdpdGggaW5jb21wbGV0ZSBmcmFt
ZWJ1ZmZlciIpOworICAgICAgICBnbC5yZWFkUGl4ZWxzKDAsIDAsIDEsIDEsIGdsLlJHQkEsIGds
LlVOU0lHTkVEX0JZVEUsIG5ldyBVaW50OEFycmF5KDQpKTsKKyAgICAgICAgZ2xFcnJvclNob3Vs
ZEJlKGdsLCBnbC5JTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiwgInJlYWRQaXhlbHMgZnJv
bSBpbmNvbXBsZXRlIGZyYW1lYnVmZmVyIik7CisgICAgICAgIC8vIGNvcHlUZXhJbWFnZSBhbmQg
Y29weVRleFN1YkltYWdlIGNhbiBiZSBlaXRoZXIgSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJ
T04gYmVjYXVzZQorICAgICAgICAvLyB0aGUgZnJhbWVidWZmZXIgaXMgaW52YWxpZCBPUiBJTlZB
TElEX09QRVJBVElPTiBiZWNhdXNlIGluIHRoZSBjYXNlIG9mIG5vIGF0dGFjaG1lbnRzCisgICAg
ICAgIC8vIHRoZSBmcmFtZWJ1ZmZlciBpcyBub3Qgb2YgYSBjb21wYXRpYmxlIHR5cGUuCisgICAg
ICAgIGdsLmNvcHlUZXhTdWJJbWFnZTJEKGdsLlRFWFRVUkVfMkQsIDAsIDAsIDAsIDAsIDAsIDEs
IDEpOworICAgICAgICBnbEVycm9yU2hvdWxkQmUoZ2wsIFtnbC5JTlZBTElEX0ZSQU1FQlVGRkVS
X09QRVJBVElPTiwgZ2wuSU5WQUxJRF9PUEVSQVRJT05dLCAiY29weVRleEltYWdlMkQgZnJvbSBp
bmNvbXBsZXRlIGZyYW1lYnVmZmVyIik7CisgICAgICAgIGdsLmNvcHlUZXhJbWFnZTJEKGdsLlRF
WFRVUkVfMkQsIDAsIGdsLlJHQkEsIDAsIDAsIDEsIDEsIDApOworICAgICAgICBnbEVycm9yU2hv
dWxkQmUoZ2wsIFtnbC5JTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiwgZ2wuSU5WQUxJRF9P
UEVSQVRJT05dLCAiY29weVRleFN1YkltYWdlMkQgZnJvbSBpbmNvbXBsZXRlIGZyYW1lYnVmZmVy
Iik7CisgICAgICAgIGdsLmNsZWFyKGdsLkNPTE9SX0JVRkZFUl9CSVQgfCBnbC5ERVBUSF9CVUZG
RVJfQklUKTsKKyAgICAgICAgZ2xFcnJvclNob3VsZEJlKGdsLCBnbC5JTlZBTElEX0ZSQU1FQlVG
RkVSX09QRVJBVElPTiwgImNsZWFyIHdpdGggaW5jb21wbGV0ZSBmcmFtZWJ1ZmZlciIpOworICAg
IH0KK30KKworZnVuY3Rpb24gdGVzdEZyYW1lYnVmZmVySW5jb21wbGV0ZUF0dGFjaG1lbnQoKSB7
CisgICAgc2hvdWxkQmVOb25OdWxsKCJmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIik7Cisg
ICAgZ2wuYmluZEZyYW1lYnVmZmVyKGdsLkZSQU1FQlVGRkVSLCBmYm8pOworICAgIHNob3VsZEJl
Tm9uTnVsbCgiY29sb3JCdWZmZXIgPSBnbC5jcmVhdGVSZW5kZXJidWZmZXIoKSIpOworICAgIGds
LmJpbmRSZW5kZXJidWZmZXIoZ2wuUkVOREVSQlVGRkVSLCBjb2xvckJ1ZmZlcik7CisgICAgZ2wu
ZnJhbWVidWZmZXJSZW5kZXJidWZmZXIoCisgICAgICAgIGdsLkZSQU1FQlVGRkVSLCBnbC5DT0xP
Ul9BVFRBQ0hNRU5UMCwgZ2wuUkVOREVSQlVGRkVSLCBjb2xvckJ1ZmZlcik7CisgICAgZ2wucmVu
ZGVyYnVmZmVyU3RvcmFnZShnbC5SRU5ERVJCVUZGRVIsIGdsLlJHQkE0LCAxNiwgMTYpOworICAg
IENoZWNrRnJhbWVidWZmZXIoZ2wuRlJBTUVCVUZGRVJfQ09NUExFVEUpOworCisgICAgZGVidWco
IiIpOworICAgIGRlYnVnKCJXcm9uZyBzdG9yYWdlIHR5cGUgZm9yIHR5cGUgb2YgYXR0YWNobWVu
dCBiZSBGUkFNRUJVRkZFUl9JTkNPTVBMRVRFX0FUVEFDSE1FTlQgKE9wZW5HTCBFUyAyLjAgNC40
LjUpIik7CisgICAgZ2wucmVuZGVyYnVmZmVyU3RvcmFnZShnbC5SRU5ERVJCVUZGRVIsIGRlcHRo
Rm9ybWF0LCAxNiwgMTYpOworICAgIENoZWNrRnJhbWVidWZmZXIoZ2wuRlJBTUVCVUZGRVJfSU5D
T01QTEVURV9BVFRBQ0hNRU5UKTsKKworICAgIGdsLnJlbmRlcmJ1ZmZlclN0b3JhZ2UoZ2wuUkVO
REVSQlVGRkVSLCBnbC5SR0JBNCwgMTYsIDE2KTsKKyAgICBDaGVja0ZyYW1lYnVmZmVyKGdsLkZS
QU1FQlVGRkVSX0NPTVBMRVRFKTsKKworICAgIGRlYnVnKCIiKTsKKyAgICBkZWJ1ZygiMCBzaXpl
IGF0dGFjaG1lbnQgc2hvdWxkIGJlIEZSQU1FQlVGRkVSX0lOQ09NUExFVEVfQVRUQUNITUVOVCAo
T3BlbkdMIEVTIDIuMCA0LjQuNSkiKTsKKyAgICBnbC5yZW5kZXJidWZmZXJTdG9yYWdlKGdsLlJF
TkRFUkJVRkZFUiwgZ2wuUkdCQTQsIDAsIDApOworICAgIENoZWNrRnJhbWVidWZmZXIoZ2wuRlJB
TUVCVUZGRVJfSU5DT01QTEVURV9BVFRBQ0hNRU5UKTsKKworICAgIGdsRXJyb3JTaG91bGRCZShn
bCwgZ2wuTk9fRVJST1IpOworfQorCitmdW5jdGlvbiB0ZXN0RnJhbWVidWZmZXJJbmNvbXBsZXRl
TWlzc2luZ0F0dGFjaG1lbnQoKSB7CisgICAgZGVidWcoIiIpOworICAgIGRlYnVnKCJObyBhdHRh
Y2htZW50cyBzaG91bGQgYmUgSU5DT01QTEVURV9GUkFNRUJVRkZFUl9NSVNTSU5HX0FUVEFDSE1F
TlQgKE9wZW5HTCBFUyAyLjAgNC40LjUpIik7CisgICAgc2hvdWxkQmVOb25OdWxsKCJmYm8gPSBn
bC5jcmVhdGVGcmFtZWJ1ZmZlcigpIik7CisgICAgZ2wuYmluZEZyYW1lYnVmZmVyKGdsLkZSQU1F
QlVGRkVSLCBmYm8pOworICAgIENoZWNrRnJhbWVidWZmZXIoZ2wuRlJBTUVCVUZGRVJfSU5DT01Q
TEVURV9NSVNTSU5HX0FUVEFDSE1FTlQpOworCisgICAgc2hvdWxkQmVOb25OdWxsKCJjb2xvckJ1
ZmZlciA9IGdsLmNyZWF0ZVJlbmRlcmJ1ZmZlcigpIik7CisgICAgZ2wuYmluZFJlbmRlcmJ1ZmZl
cihnbC5SRU5ERVJCVUZGRVIsIGNvbG9yQnVmZmVyKTsKKyAgICBnbC5mcmFtZWJ1ZmZlclJlbmRl
cmJ1ZmZlcigKKyAgICAgICAgZ2wuRlJBTUVCVUZGRVIsIGdsLkNPTE9SX0FUVEFDSE1FTlQwLCBn
bC5SRU5ERVJCVUZGRVIsIGNvbG9yQnVmZmVyKTsKKyAgICBnbC5yZW5kZXJidWZmZXJTdG9yYWdl
KGdsLlJFTkRFUkJVRkZFUiwgZ2wuUkdCQTQsIDE2LCAxNik7CisgICAgQ2hlY2tGcmFtZWJ1ZmZl
cihnbC5GUkFNRUJVRkZFUl9DT01QTEVURSk7CisKKyAgICBnbC5mcmFtZWJ1ZmZlclJlbmRlcmJ1
ZmZlcigKKyAgICAgICAgZ2wuRlJBTUVCVUZGRVIsIGdsLkNPTE9SX0FUVEFDSE1FTlQwLCBnbC5S
RU5ERVJCVUZGRVIsIG51bGwpOworICAgIENoZWNrRnJhbWVidWZmZXIoZ2wuRlJBTUVCVUZGRVJf
SU5DT01QTEVURV9NSVNTSU5HX0FUVEFDSE1FTlQpOwogCi1kZWJ1ZygiQXR0YWNoIGNvbG9yIHJl
bmRlcmJ1ZmZlciB3aXRoIGludGVybmFsZm9ybWF0ID09IFJHQjVfQTEiKTsKLXRlc3RDb2xvclJl
bmRlcmJ1ZmZlcihnbC5SR0I1X0ExKTsKKyAgICBnbEVycm9yU2hvdWxkQmUoZ2wsIGdsLk5PX0VS
Uk9SKTsKK30KKworZnVuY3Rpb24gdGVzdEZyYW1lYnVmZmVySW5jb21wbGV0ZURpbWVuc2lvbnMo
KSB7CisgICAgZGVidWcoIiIpOworICAgIGRlYnVnKCJBdHRhY2htZW50cyBvZiBkaWZmZXJlbnQg
c2l6ZXMgc2hvdWxkIGJlIEZSQU1FQlVGRkVSX0lOQ09NUExFVEVfRElNRU5TSU9OUyAoT3BlbkdM
IEVTIDIuMCA0LjQuNSkiKTsKKworICAgIHNob3VsZEJlTm9uTnVsbCgiZmJvID0gZ2wuY3JlYXRl
RnJhbWVidWZmZXIoKSIpOworICAgIGdsLmJpbmRGcmFtZWJ1ZmZlcihnbC5GUkFNRUJVRkZFUiwg
ZmJvKTsKKyAgICBzaG91bGRCZU5vbk51bGwoImNvbG9yQnVmZmVyID0gZ2wuY3JlYXRlUmVuZGVy
YnVmZmVyKCkiKTsKKyAgICBnbC5iaW5kUmVuZGVyYnVmZmVyKGdsLlJFTkRFUkJVRkZFUiwgY29s
b3JCdWZmZXIpOworICAgIGdsLmZyYW1lYnVmZmVyUmVuZGVyYnVmZmVyKAorICAgICAgICBnbC5G
UkFNRUJVRkZFUiwgZ2wuQ09MT1JfQVRUQUNITUVOVDAsIGdsLlJFTkRFUkJVRkZFUiwgY29sb3JC
dWZmZXIpOworICAgIGdsLnJlbmRlcmJ1ZmZlclN0b3JhZ2UoZ2wuUkVOREVSQlVGRkVSLCBnbC5S
R0JBNCwgMTYsIDE2KTsKKworICAgIHNob3VsZEJlTm9uTnVsbCgiZGVwdGhCdWZmZXIgPSBnbC5j
cmVhdGVSZW5kZXJidWZmZXIoKSIpOworICAgIGdsLmJpbmRSZW5kZXJidWZmZXIoZ2wuUkVOREVS
QlVGRkVSLCBkZXB0aEJ1ZmZlcik7CisgICAgZ2wuZnJhbWVidWZmZXJSZW5kZXJidWZmZXIoCisg
ICAgICAgIGdsLkZSQU1FQlVGRkVSLCBkZXB0aEF0dGFjaG1lbnQsIGdsLlJFTkRFUkJVRkZFUiwg
ZGVwdGhCdWZmZXIpOworICAgIGdsLnJlbmRlcmJ1ZmZlclN0b3JhZ2UoZ2wuUkVOREVSQlVGRkVS
LCBkZXB0aEZvcm1hdCwgMTYsIDE2KTsKKyAgICBnbEVycm9yU2hvdWxkQmUoZ2wsIGdsLk5PX0VS
Uk9SKTsKKyAgICBDaGVja0ZyYW1lYnVmZmVyKGdsLkZSQU1FQlVGRkVSX0NPTVBMRVRFKTsKIAot
ZGVidWcoIkF0dGFjaCBjb2xvciByZW5kZXJidWZmZXIgd2l0aCBpbnRlcm5hbGZvcm1hdCA9PSBS
R0I1NjUiKTsKLXRlc3RDb2xvclJlbmRlcmJ1ZmZlcihnbC5SR0I1NjUpOworICAgIGdsLnJlbmRl
cmJ1ZmZlclN0b3JhZ2UoZ2wuUkVOREVSQlVGRkVSLCBkZXB0aEZvcm1hdCwgMzIsIDE2KTsKKyAg
ICBDaGVja0ZyYW1lYnVmZmVyKGdsLkZSQU1FQlVGRkVSX0lOQ09NUExFVEVfRElNRU5TSU9OUyk7
CisgICAgZ2wucmVuZGVyYnVmZmVyU3RvcmFnZShnbC5SRU5ERVJCVUZGRVIsIGRlcHRoRm9ybWF0
LCAxNiwgMTYpOworICAgIENoZWNrRnJhbWVidWZmZXIoZ2wuRlJBTUVCVUZGRVJfQ09NUExFVEUp
OworICAgIGdsLmJpbmRSZW5kZXJidWZmZXIoZ2wuUkVOREVSQlVGRkVSLCBjb2xvckJ1ZmZlcik7
CisgICAgZ2wucmVuZGVyYnVmZmVyU3RvcmFnZShnbC5SRU5ERVJCVUZGRVIsIGdsLlJHQkE0LCAx
NiwgMzIpOworICAgIENoZWNrRnJhbWVidWZmZXIoZ2wuRlJBTUVCVUZGRVJfSU5DT01QTEVURV9E
SU1FTlNJT05TKTsKKyAgICBnbC5yZW5kZXJidWZmZXJTdG9yYWdlKGdsLlJFTkRFUkJVRkZFUiwg
Z2wuUkdCQTQsIDE2LCAxNik7CisgICAgQ2hlY2tGcmFtZWJ1ZmZlcihnbC5GUkFNRUJVRkZFUl9D
T01QTEVURSk7CisgICAgZ2xFcnJvclNob3VsZEJlKGdsLCBnbC5OT19FUlJPUik7CisKKyAgICB2
YXIgdGV4ID0gZ2wuY3JlYXRlVGV4dHVyZSgpOworICAgIGdsLmJpbmRUZXh0dXJlKGdsLlRFWFRV
UkVfMkQsIHRleCk7CisgICAgZ2wudGV4SW1hZ2UyRChnbC5URVhUVVJFXzJELCAwLCBnbC5SR0JB
LCAxNiwgMTYsIDAsIGdsLlJHQkEsIGdsLlVOU0lHTkVEX0JZVEUsIG51bGwpOworICAgIGdsLmZy
YW1lYnVmZmVyVGV4dHVyZTJEKGdsLkZSQU1FQlVGRkVSLCBnbC5DT0xPUl9BVFRBQ0hNRU5UMCwg
Z2wuVEVYVFVSRV8yRCwgdGV4LCAwKTsKKyAgICBnbEVycm9yU2hvdWxkQmUoZ2wsIGdsLk5PX0VS
Uk9SKTsKKyAgICBpZiAoZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZFUikg
IT0gZ2wuRlJBTUVCVUZGRVJfQ09NUExFVEUpIHsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKwor
ICAgIGdsLnRleEltYWdlMkQoZ2wuVEVYVFVSRV8yRCwgMCwgZ2wuUkdCQSwgMzIsIDE2LCAwLCBn
bC5SR0JBLCBnbC5VTlNJR05FRF9CWVRFLCBudWxsKTsKKyAgICBDaGVja0ZyYW1lYnVmZmVyKGds
LkZSQU1FQlVGRkVSX0lOQ09NUExFVEVfRElNRU5TSU9OUyk7CisgICAgZ2wudGV4SW1hZ2UyRChn
bC5URVhUVVJFXzJELCAwLCBnbC5SR0JBLCAxNiwgMTYsIDAsIGdsLlJHQkEsIGdsLlVOU0lHTkVE
X0JZVEUsIG51bGwpOworICAgIENoZWNrRnJhbWVidWZmZXIoZ2wuRlJBTUVCVUZGRVJfQ09NUExF
VEUpOworCisgICAgZ2xFcnJvclNob3VsZEJlKGdsLCBnbC5OT19FUlJPUik7Cit9CiAKLWRlYnVn
KCJDcmVhdGUgYW5kIGF0dGFjaCBkZXB0aFN0ZW5jaWwgcmVuZGVyYnVmZmVyIik7Ci10ZXN0RGVw
dGhTdGVuY2lsUmVuZGVyYnVmZmVyKCk7CitzdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwogPC9z
Y3JpcHQ+CiAKIDxzY3JpcHQgc3JjPSIuLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0Lmpz
Ij48L3NjcmlwdD4KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvY2FudmFzL3dlYmdsL3Jlc291cmNl
cy93ZWJnbC10ZXN0LmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvY2FudmFzL3dl
YmdsL3Jlc291cmNlcy93ZWJnbC10ZXN0LmpzCShyZXZpc2lvbiAxMDI2MTIpCisrKyBMYXlvdXRU
ZXN0cy9mYXN0L2NhbnZhcy93ZWJnbC9yZXNvdXJjZXMvd2ViZ2wtdGVzdC5qcwkod29ya2luZyBj
b3B5KQpAQCAtMTIzLDcgKzEyMywxMSBAQCBmdW5jdGlvbiBnZXRHTEVycm9yQXNTdHJpbmcoY3R4
LCBlcnIpIHsKICAgcmV0dXJuICIweCIgKyBlcnIudG9TdHJpbmcoMTYpOwogfQogCi1mdW5jdGlv
biBzaG91bGRHZW5lcmF0ZUdMRXJyb3IoY3R4LCBnbEVycm9yLCBldmFsU3RyKSB7CisvLyBQYXNz
IHVuZGVmaW5lZCBmb3IgZ2xFcnJvciB0byB0ZXN0IHRoYXQgaXQgYXQgbGVhc3QgdGhyb3dzIHNv
bWUgZXJyb3IKK2Z1bmN0aW9uIHNob3VsZEdlbmVyYXRlR0xFcnJvcihjdHgsIGdsRXJyb3JzLCBl
dmFsU3RyKSB7CisgIGlmICghZ2xFcnJvcnMubGVuZ3RoKSB7CisgICAgZ2xFcnJvcnMgPSBbZ2xF
cnJvcnNdOworICB9CiAgIHZhciBleGNlcHRpb247CiAgIHRyeSB7CiAgICAgZXZhbChldmFsU3Ry
KTsKQEAgLTEzNCwxMCArMTM4LDE0IEBAIGZ1bmN0aW9uIHNob3VsZEdlbmVyYXRlR0xFcnJvcihj
dHgsIGdsRXIKICAgICB0ZXN0RmFpbGVkKGV2YWxTdHIgKyAiIHRocmV3IGV4Y2VwdGlvbiAiICsg
ZXhjZXB0aW9uKTsKICAgfSBlbHNlIHsKICAgICB2YXIgZXJyID0gY3R4LmdldEVycm9yKCk7Ci0g
ICAgaWYgKGVyciAhPSBnbEVycm9yKSB7Ci0gICAgICB0ZXN0RmFpbGVkKGV2YWxTdHIgKyAiIGV4
cGVjdGVkOiAiICsgZ2V0R0xFcnJvckFzU3RyaW5nKGN0eCwgZ2xFcnJvcikgKyAiLiBXYXMgIiAr
IGdldEdMRXJyb3JBc1N0cmluZyhjdHgsIGVycikgKyAiLiIpOworICAgIGlmIChnbEVycm9ycy5p
bmRleE9mKGVycikgPCAwKSB7CisgICAgICB2YXIgZXJyU3RycyA9IFtdOworICAgICAgZm9yICh2
YXIgaWkgPSAwOyBpaSA8IGdsRXJyb3JzLmxlbmd0aDsgKytpaSkgeworICAgICAgICBlcnJTdHJz
LnB1c2goZ2V0R0xFcnJvckFzU3RyaW5nKGN0eCwgZ2xFcnJvcnNbaWldKSk7CisgICAgICB9Cisg
ICAgICB0ZXN0RmFpbGVkKGV2YWxTdHIgKyAiIGV4cGVjdGVkOiAiICsgZXJyU3Rycy5qb2luKCIg
b3IgIikgKyAiLiBXYXMgIiArIGdldEdMRXJyb3JBc1N0cmluZyhjdHgsIGVycikgKyAiLiIpOwog
ICAgIH0gZWxzZSB7Ci0gICAgICB0ZXN0UGFzc2VkKGV2YWxTdHIgKyAiIGdlbmVyYXRlZCBleHBl
Y3RlZCBHTCBlcnJvcjogIiArIGdldEdMRXJyb3JBc1N0cmluZyhjdHgsIGdsRXJyb3IpICsgIi4i
KTsKKyAgICAgIHRlc3RQYXNzZWQoZXZhbFN0ciArICIgZ2VuZXJhdGVkIGV4cGVjdGVkIEdMIGVy
cm9yOiAiICsgZ2V0R0xFcnJvckFzU3RyaW5nKGN0eCwgZXJyKSArICIuIik7CiAgICAgfQogICB9
CiB9CkBAIC0xNDUsMTggKzE1MywzMyBAQCBmdW5jdGlvbiBzaG91bGRHZW5lcmF0ZUdMRXJyb3Io
Y3R4LCBnbEVyCiAvKioKICAqIFRlc3RzIHRoYXQgdGhlIGZpcnN0IGVycm9yIEdMIHJldHVybnMg
aXMgdGhlIHNwZWNpZmllZCBlcnJvci4KICAqIEBwYXJhbSB7IVdlYkdMQ29udGV4dH0gZ2wgVGhl
IFdlYkdMQ29udGV4dCB0byB1c2UuCi0gKiBAcGFyYW0ge251bWJlcn0gZ2xFcnJvciBUaGUgZXhw
ZWN0ZWQgZ2wgZXJyb3IuCisgKiBAcGFyYW0ge251bWJlcnwhQXJyYXkuPG51bWJlcj59IGdsRXJy
b3IgVGhlIGV4cGVjdGVkIGdsCisgKiAgICAgICAgZXJyb3IuIE11bHRpcGxlIGVycm9ycyBjYW4g
YmUgcGFzc2VkIGluIHVzaW5nIGFuCisgKiAgICAgICAgYXJyYXkuCiAgKiBAcGFyYW0ge3N0cmlu
Z30gb3B0X21zZyBPcHRpb25hbCBhZGRpdGlvbmFsIG1lc3NhZ2UuCiAgKi8KLWZ1bmN0aW9uIGds
RXJyb3JTaG91bGRCZShnbCwgZ2xFcnJvciwgb3B0X21zZykgeworZnVuY3Rpb24gZ2xFcnJvclNo
b3VsZEJlKGdsLCBnbEVycm9ycywgb3B0X21zZykgeworICBpZiAoIWdsRXJyb3JzLmxlbmd0aCkg
eworICAgIGdsRXJyb3JzID0gW2dsRXJyb3JzXTsKKyAgfQogICBvcHRfbXNnID0gb3B0X21zZyB8
fCAiIjsKICAgdmFyIGVyciA9IGdsLmdldEVycm9yKCk7Ci0gIGlmIChlcnIgIT0gZ2xFcnJvcikg
ewotICAgIHRlc3RGYWlsZWQoImdldEVycm9yIGV4cGVjdGVkOiAiICsgZ2V0R0xFcnJvckFzU3Ry
aW5nKGdsLCBnbEVycm9yKSArCi0gICAgICAgICAgICAgICAiLiBXYXMgIiArIGdldEdMRXJyb3JB
c1N0cmluZyhnbCwgZXJyKSArICIgOiAiICsgb3B0X21zZyk7CisgIHZhciBuZHggPSBnbEVycm9y
cy5pbmRleE9mKGVycik7CisgIGlmIChuZHggPCAwKSB7CisgICAgaWYgKGdsRXJyb3JzLmxlbmd0
aCA9PSAxKSB7CisgICAgICB0ZXN0RmFpbGVkKCJnZXRFcnJvciBleHBlY3RlZDogIiArIGdldEdM
RXJyb3JBc1N0cmluZyhnbCwgZ2xFcnJvcnNbMF0pICsKKyAgICAgICAgICAgICAgICAgIi4gV2Fz
ICIgKyBnZXRHTEVycm9yQXNTdHJpbmcoZ2wsIGVycikgKyAiIDogIiArIG9wdF9tc2cpOworICAg
IH0gZWxzZSB7CisgICAgICB2YXIgZXJycyA9IFtdOworICAgICAgZm9yICh2YXIgaWkgPSAwOyBp
aSA8IGdsRXJyb3JzLmxlbmd0aDsgKytpaSkgeworICAgICAgICBlcnJzLnB1c2goZ2V0R0xFcnJv
ckFzU3RyaW5nKGdsLCBnbEVycm9yc1tpaV0pKTsKKyAgICAgIH0KKyAgICAgIHRlc3RGYWlsZWQo
ImdldEVycm9yIGV4cGVjdGVkIG9uZSBvZjogWyIgKyBlcnJzLmpvaW4oIiwgIikgKworICAgICAg
ICAgICAgICAgICAiXS4gV2FzICIgKyBnZXRHTEVycm9yQXNTdHJpbmcoZ2wsIGVycikgKyAiIDog
IiArIG9wdF9tc2cpOworICAgIH0KICAgfSBlbHNlIHsKICAgICB0ZXN0UGFzc2VkKCJnZXRFcnJv
ciB3YXMgZXhwZWN0ZWQgdmFsdWU6ICIgKwotICAgICAgICAgICAgICAgIGdldEdMRXJyb3JBc1N0
cmluZyhnbCwgZ2xFcnJvcikgKyAiIDogIiArIG9wdF9tc2cpOworICAgICAgICAgICAgICAgIGdl
dEdMRXJyb3JBc1N0cmluZyhnbCwgZXJyKSArICIgOiAiICsgb3B0X21zZyk7CiAgIH0KIH07CiAK
SW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL3Rlc3RfZXhwZWN0YXRpb25zLnR4
dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS90ZXN0X2V4cGVj
dGF0aW9ucy50eHQJKHJldmlzaW9uIDEwMjYxMikKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL2No
cm9taXVtL3Rlc3RfZXhwZWN0YXRpb25zLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMjI1MCw2ICsy
MjUwLDcgQEAgQlVHV0VCR0wgV0lOIERFQlVHIDogZmFzdC9jYW52YXMvd2ViZ2wvdAogQlVHV0VC
R0wgOiBmYXN0L2NhbnZhcy93ZWJnbC9yZWFkLXBpeGVscy10ZXN0Lmh0bWwgPSBUSU1FT1VUCiAK
IC8vIFRoZXNlIHRocmVlIGZhaWx1cmVzIGFyZSBkdWUgdG8gTWVzYSBidWdzCitCVUdXRUJHTCA6
IGZhc3QvY2FudmFzL3dlYmdsL2ZyYW1lYnVmZmVyLW9iamVjdC1hdHRhY2htZW50Lmh0bWwgPSBU
RVhUCiBCVUdXRUJHTCA6IGZhc3QvY2FudmFzL3dlYmdsL2dsLXVuaWZvcm0tYXJyYXlzLmh0bWwg
PSBUSU1FT1VUIFRFWFQKIEJVR1dFQkdMIDogZmFzdC9jYW52YXMvd2ViZ2wvcG9pbnQtc2l6ZS5o
dG1sID0gVEVYVAogQlVHV0VCR0wgTElOVVggTUFDIDogZmFzdC9jYW52YXMvd2ViZ2wvZ2wtb2Jq
ZWN0LWdldC1jYWxscy5odG1sID0gVEVYVAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>119029</attachid>
            <date>2011-12-13 09:49:44 -0800</date>
            <delta_ts>2011-12-13 10:36:54 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-74228-20111213094943.patch</filename>
            <type>text/plain</type>
            <size>76847</size>
            <attacher name="Zhenyao Mo">zmo</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDEwMjYxMikKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIwIEBACisyMDExLTEyLTA5ICBaaGVueWFv
IE1vICA8em1vQGdvb2dsZS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50IEdMRVMyIENoZWNrRnJh
bWVidWZmZXJTdGF0dXMoKSBiZWhhdmlvcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9NzQyMjgKKworICAgICAgICAqIGh0bWwvY2FudmFzL1dlYkdMRnJh
bWVidWZmZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6V2ViR0xGcmFtZWJ1ZmZlcjo6Z2V0Q29s
b3JCdWZmZXJXaWR0aCk6IEFkZCBDb2xvckJ1ZmZlciB0byB0aGUgZnVuY3Rpb24gbmFtZSAtIHRo
aXMgaXMgbW9yZSBhY2N1cmF0ZS4KKyAgICAgICAgKFdlYkNvcmU6OldlYkdMRnJhbWVidWZmZXI6
OmdldENvbG9yQnVmZmVySGVpZ2h0KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpXZWJHTEZy
YW1lYnVmZmVyOjpjaGVja1N0YXR1cyk6IEltcGxlbWVudCBmdWxsIHNlbWFudGljcyBvZiBHTEVT
MiBnbENoZWNrRnJhbWVidWZmZXJTdGF0dXMoKS4KKyAgICAgICAgKFdlYkNvcmU6OldlYkdMRnJh
bWVidWZmZXI6Om9uQWNjZXNzKTogQ2FsbCBjaGVja1N0YXR1cygpLgorICAgICAgICAqIGh0bWwv
Y2FudmFzL1dlYkdMRnJhbWVidWZmZXIuaDoKKyAgICAgICAgKiBodG1sL2NhbnZhcy9XZWJHTFJl
bmRlcmluZ0NvbnRleHQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6V2ViR0xSZW5kZXJpbmdDb250
ZXh0OjpjaGVja0ZyYW1lYnVmZmVyU3RhdHVzKTogQ2FsbCBjaGVja1N0YXR1cygpLgorICAgICAg
ICAoV2ViQ29yZTo6V2ViR0xSZW5kZXJpbmdDb250ZXh0OjpnZXRGcmFtZWJ1ZmZlckF0dGFjaG1l
bnRQYXJhbWV0ZXIpOiBObyBsb25nZXIgY2hlY2sgZnJhbWVidWZmZXIgc3RhdHVzLgorICAgICAg
ICAoV2ViQ29yZTo6V2ViR0xSZW5kZXJpbmdDb250ZXh0OjpnZXRCb3VuZEZyYW1lYnVmZmVyV2lk
dGgpOiBDYWxsIGdldENvbG9yQnVmZmVyV2lkdGguCisgICAgICAgIChXZWJDb3JlOjpXZWJHTFJl
bmRlcmluZ0NvbnRleHQ6OmdldEJvdW5kRnJhbWVidWZmZXJIZWlnaHQpOiBDYWxsIGdldENvbG9y
QnVmZmVySGVpZ2h0LgorCiAyMDExLTEyLTEyICBKYW1lcyBSb2JpbnNvbiAgPGphbWVzckBjaHJv
bWl1bS5vcmc+CiAKICAgICAgICAgUmVuYW1lIHdlYmtpdENhbmNlbFJlcXVlc3RBbmltYXRpb25G
cmFtZSB0byB3ZWJraXRDYW5jZWxBbmltYXRpb25GcmFtZSB0byBtYXRjaCBzcGVjIGNoYW5nZQpJ
bmRleDogU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xGcmFtZWJ1ZmZlci5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xGcmFtZWJ1ZmZlci5j
cHAJKHJldmlzaW9uIDEwMjYxMikKKysrIFNvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdM
RnJhbWVidWZmZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zNSwxMiArMzUsNDcgQEAgbmFtZXNw
YWNlIFdlYkNvcmUgewogCiBuYW1lc3BhY2UgewogCi0gICAgLy8gVGhpcyBmdW5jdGlvbiBpcyBv
bmx5IGZvciBkZXB0aC9zdGVuY2lsL2RlcHRoX3N0ZW5jaWwgYXR0YWNobWVudC4KLSAgICAvLyBD
dXJyZW50bHkgd2UgYXNzdW1lIHRoZXNlIGF0dGFjaG1lbnRzIGFyZSBhbGwgcmVuZGVyYnVmZmVy
cy4KLSAgICBHQzNEZW51bSBnZXRJbnRlcm5hbEZvcm1hdChXZWJHTE9iamVjdCogYnVmZmVyKQor
ICAgIGJvb2wgaXNBdHRhY2htZW50Q29tcGxldGUoV2ViR0xPYmplY3QqIGF0dGFjaGVkT2JqZWN0
LCBHQzNEZW51bSBhdHRhY2htZW50KQogICAgIHsKLSAgICAgICAgQVNTRVJUKGJ1ZmZlciAmJiBi
dWZmZXItPmlzUmVuZGVyYnVmZmVyKCkpOwotICAgICAgICByZXR1cm4gKHJlaW50ZXJwcmV0X2Nh
c3Q8V2ViR0xSZW5kZXJidWZmZXIqPihidWZmZXIpKS0+Z2V0SW50ZXJuYWxGb3JtYXQoKTsKKyAg
ICAgICAgQVNTRVJUKGF0dGFjaGVkT2JqZWN0ICYmIGF0dGFjaGVkT2JqZWN0LT5vYmplY3QoKSk7
CisgICAgICAgIEFTU0VSVChhdHRhY2hlZE9iamVjdC0+aXNSZW5kZXJidWZmZXIoKSk7CisgICAg
ICAgIFdlYkdMUmVuZGVyYnVmZmVyKiBidWZmZXIgPSByZWludGVycHJldF9jYXN0PFdlYkdMUmVu
ZGVyYnVmZmVyKj4oYXR0YWNoZWRPYmplY3QpOworICAgICAgICBzd2l0Y2ggKGF0dGFjaG1lbnQp
IHsKKyAgICAgICAgY2FzZSBHcmFwaGljc0NvbnRleHQzRDo6REVQVEhfQVRUQUNITUVOVDoKKyAg
ICAgICAgICAgIGlmIChidWZmZXItPmdldEludGVybmFsRm9ybWF0KCkgIT0gR3JhcGhpY3NDb250
ZXh0M0Q6OkRFUFRIX0NPTVBPTkVOVDE2KQorICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsK
KyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIEdyYXBoaWNzQ29udGV4dDNEOjpTVEVO
Q0lMX0FUVEFDSE1FTlQ6CisgICAgICAgICAgICBpZiAoYnVmZmVyLT5nZXRJbnRlcm5hbEZvcm1h
dCgpICE9IEdyYXBoaWNzQ29udGV4dDNEOjpTVEVOQ0lMX0lOREVYOCkKKyAgICAgICAgICAgICAg
ICByZXR1cm4gZmFsc2U7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSBHcmFwaGlj
c0NvbnRleHQzRDo6REVQVEhfU1RFTkNJTF9BVFRBQ0hNRU5UOgorICAgICAgICAgICAgaWYgKGJ1
ZmZlci0+Z2V0SW50ZXJuYWxGb3JtYXQoKSAhPSBHcmFwaGljc0NvbnRleHQzRDo6REVQVEhfU1RF
TkNJTCkKKyAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICAgICAgICBicmVhazsK
KyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAg
ICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICB9CisgICAgICAgIGlmICghYnVmZmVyLT5n
ZXRXaWR0aCgpIHx8ICFidWZmZXItPmdldEhlaWdodCgpKQorICAgICAgICAgICAgcmV0dXJuIGZh
bHNlOworICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICB9CisKKyAgICBHQzNEc2l6ZWkgZ2V0SW1h
Z2VXaWR0aChXZWJHTE9iamVjdCogYXR0YWNoZWRPYmplY3QpCisgICAgeworICAgICAgICBBU1NF
UlQoYXR0YWNoZWRPYmplY3QgJiYgYXR0YWNoZWRPYmplY3QtPm9iamVjdCgpKTsKKyAgICAgICAg
QVNTRVJUKGF0dGFjaGVkT2JqZWN0LT5pc1JlbmRlcmJ1ZmZlcigpKTsKKyAgICAgICAgV2ViR0xS
ZW5kZXJidWZmZXIqIGJ1ZmZlciA9IHJlaW50ZXJwcmV0X2Nhc3Q8V2ViR0xSZW5kZXJidWZmZXIq
PihhdHRhY2hlZE9iamVjdCk7CisgICAgICAgIHJldHVybiBidWZmZXItPmdldFdpZHRoKCk7Cisg
ICAgfQorCisgICAgR0MzRHNpemVpIGdldEltYWdlSGVpZ2h0KFdlYkdMT2JqZWN0KiBhdHRhY2hl
ZE9iamVjdCkKKyAgICB7CisgICAgICAgIEFTU0VSVChhdHRhY2hlZE9iamVjdCAmJiBhdHRhY2hl
ZE9iamVjdC0+b2JqZWN0KCkpOworICAgICAgICBBU1NFUlQoYXR0YWNoZWRPYmplY3QtPmlzUmVu
ZGVyYnVmZmVyKCkpOworICAgICAgICBXZWJHTFJlbmRlcmJ1ZmZlciogYnVmZmVyID0gcmVpbnRl
cnByZXRfY2FzdDxXZWJHTFJlbmRlcmJ1ZmZlcio+KGF0dGFjaGVkT2JqZWN0KTsKKyAgICAgICAg
cmV0dXJuIGJ1ZmZlci0+Z2V0SGVpZ2h0KCk7CiAgICAgfQogCiAgICAgYm9vbCBpc1VuaW5pdGlh
bGl6ZWQoV2ViR0xPYmplY3QqIGF0dGFjaGVkT2JqZWN0KQpAQCAtMTY4LDcgKzIwMyw3IEBAIHZv
aWQgV2ViR0xGcmFtZWJ1ZmZlcjo6cmVtb3ZlQXR0YWNobWVudCgKICAgICAgICAgcmV0dXJuOwog
fQogCi1HQzNEc2l6ZWkgV2ViR0xGcmFtZWJ1ZmZlcjo6Z2V0V2lkdGgoKSBjb25zdAorR0MzRHNp
emVpIFdlYkdMRnJhbWVidWZmZXI6OmdldENvbG9yQnVmZmVyV2lkdGgoKSBjb25zdAogewogICAg
IGlmICghb2JqZWN0KCkgfHwgIWlzQ29sb3JBdHRhY2hlZCgpKQogICAgICAgICByZXR1cm4gMDsK
QEAgLTE4MCw3ICsyMTUsNyBAQCBHQzNEc2l6ZWkgV2ViR0xGcmFtZWJ1ZmZlcjo6Z2V0V2lkdGgo
KSBjCiAgICAgcmV0dXJuIDA7CiB9CiAKLUdDM0RzaXplaSBXZWJHTEZyYW1lYnVmZmVyOjpnZXRI
ZWlnaHQoKSBjb25zdAorR0MzRHNpemVpIFdlYkdMRnJhbWVidWZmZXI6OmdldENvbG9yQnVmZmVy
SGVpZ2h0KCkgY29uc3QKIHsKICAgICBpZiAoIW9iamVjdCgpIHx8ICFpc0NvbG9yQXR0YWNoZWQo
KSkKICAgICAgICAgcmV0dXJuIDA7CkBAIC0yMTMsMzQgKzI0OCw2NyBAQCBHQzNEZW51bSBXZWJH
TEZyYW1lYnVmZmVyOjpnZXRDb2xvckJ1ZmZlCiAgICAgcmV0dXJuIDA7CiB9CiAKLWJvb2wgV2Vi
R0xGcmFtZWJ1ZmZlcjo6aXNJbmNvbXBsZXRlKGJvb2wgY2hlY2tJbnRlcm5hbEZvcm1hdCkgY29u
c3QKK0dDM0RlbnVtIFdlYkdMRnJhbWVidWZmZXI6OmNoZWNrU3RhdHVzKCkgY29uc3QKIHsKICAg
ICB1bnNpZ25lZCBpbnQgY291bnQgPSAwOworICAgIEdDM0RzaXplaSB3aWR0aCA9IDAsIGhlaWdo
dCA9IDA7CiAgICAgaWYgKGlzRGVwdGhBdHRhY2hlZCgpKSB7Ci0gICAgICAgIGlmIChjaGVja0lu
dGVybmFsRm9ybWF0ICYmIGdldEludGVybmFsRm9ybWF0KG1fZGVwdGhBdHRhY2htZW50LmdldCgp
KSAhPSBHcmFwaGljc0NvbnRleHQzRDo6REVQVEhfQ09NUE9ORU5UMTYpCi0gICAgICAgICAgICBy
ZXR1cm4gdHJ1ZTsKKyAgICAgICAgaWYgKCFpc0F0dGFjaG1lbnRDb21wbGV0ZShtX2RlcHRoQXR0
YWNobWVudC5nZXQoKSwgR3JhcGhpY3NDb250ZXh0M0Q6OkRFUFRIX0FUVEFDSE1FTlQpKQorICAg
ICAgICAgICAgcmV0dXJuIEdyYXBoaWNzQ29udGV4dDNEOjpGUkFNRUJVRkZFUl9JTkNPTVBMRVRF
X0FUVEFDSE1FTlQ7CisgICAgICAgIHdpZHRoID0gZ2V0SW1hZ2VXaWR0aChtX2RlcHRoQXR0YWNo
bWVudC5nZXQoKSk7CisgICAgICAgIGhlaWdodCA9IGdldEltYWdlSGVpZ2h0KG1fZGVwdGhBdHRh
Y2htZW50LmdldCgpKTsKICAgICAgICAgY291bnQrKzsKICAgICB9CiAgICAgaWYgKGlzU3RlbmNp
bEF0dGFjaGVkKCkpIHsKLSAgICAgICAgaWYgKGNoZWNrSW50ZXJuYWxGb3JtYXQgJiYgZ2V0SW50
ZXJuYWxGb3JtYXQobV9zdGVuY2lsQXR0YWNobWVudC5nZXQoKSkgIT0gR3JhcGhpY3NDb250ZXh0
M0Q6OlNURU5DSUxfSU5ERVg4KQotICAgICAgICAgICAgcmV0dXJuIHRydWU7CisgICAgICAgIGlm
ICghaXNBdHRhY2htZW50Q29tcGxldGUobV9zdGVuY2lsQXR0YWNobWVudC5nZXQoKSwgR3JhcGhp
Y3NDb250ZXh0M0Q6OlNURU5DSUxfQVRUQUNITUVOVCkpCisgICAgICAgICAgICByZXR1cm4gR3Jh
cGhpY3NDb250ZXh0M0Q6OkZSQU1FQlVGRkVSX0lOQ09NUExFVEVfQVRUQUNITUVOVDsKKyAgICAg
ICAgaWYgKCFjb3VudCkgeworICAgICAgICAgICAgd2lkdGggPSBnZXRJbWFnZVdpZHRoKG1fc3Rl
bmNpbEF0dGFjaG1lbnQuZ2V0KCkpOworICAgICAgICAgICAgaGVpZ2h0ID0gZ2V0SW1hZ2VIZWln
aHQobV9zdGVuY2lsQXR0YWNobWVudC5nZXQoKSk7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAg
ICAgICBpZiAod2lkdGggIT0gZ2V0SW1hZ2VXaWR0aChtX3N0ZW5jaWxBdHRhY2htZW50LmdldCgp
KSB8fCBoZWlnaHQgIT0gZ2V0SW1hZ2VIZWlnaHQobV9zdGVuY2lsQXR0YWNobWVudC5nZXQoKSkp
CisgICAgICAgICAgICAgICAgcmV0dXJuIEdyYXBoaWNzQ29udGV4dDNEOjpGUkFNRUJVRkZFUl9J
TkNPTVBMRVRFX0RJTUVOU0lPTlM7CisgICAgICAgIH0KICAgICAgICAgY291bnQrKzsKICAgICB9
CiAgICAgaWYgKGlzRGVwdGhTdGVuY2lsQXR0YWNoZWQoKSkgewotICAgICAgICBpZiAoY2hlY2tJ
bnRlcm5hbEZvcm1hdCAmJiBnZXRJbnRlcm5hbEZvcm1hdChtX2RlcHRoU3RlbmNpbEF0dGFjaG1l
bnQuZ2V0KCkpICE9IEdyYXBoaWNzQ29udGV4dDNEOjpERVBUSF9TVEVOQ0lMKQotICAgICAgICAg
ICAgcmV0dXJuIHRydWU7CisgICAgICAgIGlmICghaXNBdHRhY2htZW50Q29tcGxldGUobV9kZXB0
aFN0ZW5jaWxBdHRhY2htZW50LmdldCgpLCBHcmFwaGljc0NvbnRleHQzRDo6REVQVEhfU1RFTkNJ
TF9BVFRBQ0hNRU5UKSkKKyAgICAgICAgICAgIHJldHVybiBHcmFwaGljc0NvbnRleHQzRDo6RlJB
TUVCVUZGRVJfSU5DT01QTEVURV9BVFRBQ0hNRU5UOwogICAgICAgICBpZiAoIWlzVmFsaWQobV9k
ZXB0aFN0ZW5jaWxBdHRhY2htZW50LmdldCgpKSkKLSAgICAgICAgICAgIHJldHVybiB0cnVlOwor
ICAgICAgICAgICAgcmV0dXJuIEdyYXBoaWNzQ29udGV4dDNEOjpGUkFNRUJVRkZFUl9VTlNVUFBP
UlRFRDsKKyAgICAgICAgaWYgKCFjb3VudCkgeworICAgICAgICAgICAgd2lkdGggPSBnZXRJbWFn
ZVdpZHRoKG1fZGVwdGhTdGVuY2lsQXR0YWNobWVudC5nZXQoKSk7CisgICAgICAgICAgICBoZWln
aHQgPSBnZXRJbWFnZUhlaWdodChtX2RlcHRoU3RlbmNpbEF0dGFjaG1lbnQuZ2V0KCkpOworICAg
ICAgICB9IGVsc2UgeworICAgICAgICAgICAgaWYgKHdpZHRoICE9IGdldEltYWdlV2lkdGgobV9k
ZXB0aFN0ZW5jaWxBdHRhY2htZW50LmdldCgpKSB8fCBoZWlnaHQgIT0gZ2V0SW1hZ2VIZWlnaHQo
bV9kZXB0aFN0ZW5jaWxBdHRhY2htZW50LmdldCgpKSkKKyAgICAgICAgICAgICAgICByZXR1cm4g
R3JhcGhpY3NDb250ZXh0M0Q6OkZSQU1FQlVGRkVSX0lOQ09NUExFVEVfRElNRU5TSU9OUzsKKyAg
ICAgICAgfQogICAgICAgICBjb3VudCsrOwogICAgIH0KKyAgICAvLyBXZWJHTCBzcGVjaWZpYzog
bm8gY29uZmxpY3RpbmcgREVQVEgvU1RFTkNJTC9ERVBUSF9TVEVOQ0lMIGF0dGFjaG1lbnRzLgog
ICAgIGlmIChjb3VudCA+IDEpCi0gICAgICAgIHJldHVybiB0cnVlOwotICAgIHJldHVybiBmYWxz
ZTsKKyAgICAgICAgcmV0dXJuIEdyYXBoaWNzQ29udGV4dDNEOjpGUkFNRUJVRkZFUl9VTlNVUFBP
UlRFRDsKKyAgICBpZiAoaXNDb2xvckF0dGFjaGVkKCkpIHsKKyAgICAgICAgLy8gRklYTUU6IGlm
IGNvbG9yIGJ1ZmZlciBpcyB0ZXh0dXJlLCBpcyBBTFBIQSwgTFVNSU5BTkNFIG9yIExVTUlOQU5D
RV9BTFBIQSB2YWxpZD8KKyAgICAgICAgaWYgKCFnZXRDb2xvckJ1ZmZlckZvcm1hdCgpKQorICAg
ICAgICAgICAgcmV0dXJuIEdyYXBoaWNzQ29udGV4dDNEOjpGUkFNRUJVRkZFUl9JTkNPTVBMRVRF
X0FUVEFDSE1FTlQ7CisgICAgICAgIGlmICghY291bnQpIHsKKyAgICAgICAgICAgIGlmICghZ2V0
Q29sb3JCdWZmZXJXaWR0aCgpIHx8ICFnZXRDb2xvckJ1ZmZlckhlaWdodCgpKQorICAgICAgICAg
ICAgICAgIHJldHVybiBHcmFwaGljc0NvbnRleHQzRDo6RlJBTUVCVUZGRVJfSU5DT01QTEVURV9B
VFRBQ0hNRU5UOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgaWYgKHdpZHRoICE9IGdl
dENvbG9yQnVmZmVyV2lkdGgoKSB8fCBoZWlnaHQgIT0gZ2V0Q29sb3JCdWZmZXJIZWlnaHQoKSkK
KyAgICAgICAgICAgICAgICByZXR1cm4gR3JhcGhpY3NDb250ZXh0M0Q6OkZSQU1FQlVGRkVSX0lO
Q09NUExFVEVfRElNRU5TSU9OUzsKKyAgICAgICAgfQorICAgIH0gZWxzZSB7CisgICAgICAgIGlm
ICghY291bnQpCisgICAgICAgICAgICByZXR1cm4gR3JhcGhpY3NDb250ZXh0M0Q6OkZSQU1FQlVG
RkVSX0lOQ09NUExFVEVfTUlTU0lOR19BVFRBQ0hNRU5UOworICAgIH0KKyAgICByZXR1cm4gR3Jh
cGhpY3NDb250ZXh0M0Q6OkZSQU1FQlVGRkVSX0NPTVBMRVRFOwogfQogCiBib29sIFdlYkdMRnJh
bWVidWZmZXI6Om9uQWNjZXNzKGJvb2wgbmVlZFRvSW5pdGlhbGl6ZVJlbmRlcmJ1ZmZlcnMpCiB7
Ci0gICAgaWYgKGlzSW5jb21wbGV0ZSh0cnVlKSkKKyAgICBpZiAoY2hlY2tTdGF0dXMoKSAhPSBH
cmFwaGljc0NvbnRleHQzRDo6RlJBTUVCVUZGRVJfQ09NUExFVEUpCiAgICAgICAgIHJldHVybiBm
YWxzZTsKICAgICBpZiAobmVlZFRvSW5pdGlhbGl6ZVJlbmRlcmJ1ZmZlcnMpCiAgICAgICAgIHJl
dHVybiBpbml0aWFsaXplUmVuZGVyYnVmZmVycygpOwpJbmRleDogU291cmNlL1dlYkNvcmUvaHRt
bC9jYW52YXMvV2ViR0xGcmFtZWJ1ZmZlci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3Jl
L2h0bWwvY2FudmFzL1dlYkdMRnJhbWVidWZmZXIuaAkocmV2aXNpb24gMTAyNjEyKQorKysgU291
cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xGcmFtZWJ1ZmZlci5oCSh3b3JraW5nIGNvcHkp
CkBAIC00OSw4ICs0OSw4IEBAIHB1YmxpYzoKICAgICBXZWJHTE9iamVjdCogZ2V0QXR0YWNobWVu
dChHQzNEZW51bSkgY29uc3Q7CiAKICAgICBHQzNEZW51bSBnZXRDb2xvckJ1ZmZlckZvcm1hdCgp
IGNvbnN0OwotICAgIEdDM0RzaXplaSBnZXRXaWR0aCgpIGNvbnN0OwotICAgIEdDM0RzaXplaSBn
ZXRIZWlnaHQoKSBjb25zdDsKKyAgICBHQzNEc2l6ZWkgZ2V0Q29sb3JCdWZmZXJXaWR0aCgpIGNv
bnN0OworICAgIEdDM0RzaXplaSBnZXRDb2xvckJ1ZmZlckhlaWdodCgpIGNvbnN0OwogCiAgICAg
Ly8gVGhpcyBzaG91bGQgYWx3YXlzIGJlIGNhbGxlZCBiZWZvcmUgZHJhd0FycmF5LCBkcmF3RWxl
bWVudHMsIGNsZWFyLAogICAgIC8vIHJlYWRQaXhlbHMsIGNvcHlUZXhJbWFnZTJELCBjb3B5VGV4
U3ViSW1hZ2UyRCBpZiB0aGlzIGZyYW1lYnVmZmVyIGlzCkBAIC02MCw4ICs2MCwxMSBAQCBwdWJs
aWM6CiAgICAgLy8gbmVlZFRvSW5pdGlhbGl6ZVJlbmRlcmJ1ZmZlcnMgaXMgdHJ1ZS4KICAgICBi
b29sIG9uQWNjZXNzKGJvb2wgbmVlZFRvSW5pdGlhbGl6ZVJlbmRlcmJ1ZmZlcnMpOwogCi0gICAg
Ly8gUmV0dXJuIGZhbHNlIGRvZXMgbm90IG1lYW4gQ09NUExFVEUsIG1pZ2h0IHN0aWxsIGJlIElO
Q09NUExFVEUuCi0gICAgYm9vbCBpc0luY29tcGxldGUoYm9vbCBjaGVja0ludGVybmFsRm9ybWF0
KSBjb25zdDsKKyAgICAvLyBTb2Z0d2FyZSB2ZXJzaW9uIG9mIGdsQ2hlY2tGcmFtZWJ1ZmZlclN0
YXR1cygpLCBleGNlcHQgdGhhdCB3aGVuCisgICAgLy8gRlJBTUVCVUZGRVJfQ09NUExFVEUgaXMg
cmV0dXJuZWQsIGl0IGlzIHN0aWxsIHBvc3NpYmxlIGZvcgorICAgIC8vIGdsQ2hlY2tGcmFtZWJ1
ZmZlclN0YXR1cygpIHRvIHJldHVybiBGUkFNRUJVRkZFUl9VTlNVUFBPUlRFRCwKKyAgICAvLyBk
ZXBlbmRpbmcgb24gaGFyZHdhcmUgaW1wbGVtZW50YXRpb24uCisgICAgR0MzRGVudW0gY2hlY2tT
dGF0dXMoKSBjb25zdDsKIAogICAgIGJvb2wgaGFzRXZlckJlZW5Cb3VuZCgpIGNvbnN0IHsgcmV0
dXJuIG9iamVjdCgpICYmIG1faGFzRXZlckJlZW5Cb3VuZDsgfQogCkluZGV4OiBTb3VyY2UvV2Vi
Q29yZS9odG1sL2NhbnZhcy9XZWJHTFJlbmRlcmluZ0NvbnRleHQuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMUmVuZGVyaW5nQ29udGV4dC5jcHAJKHJl
dmlzaW9uIDEwMjYxMikKKysrIFNvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdMUmVuZGVy
aW5nQ29udGV4dC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTEwOTIsOSArMTA5MiwxMCBAQCBHQzNE
ZW51bSBXZWJHTFJlbmRlcmluZ0NvbnRleHQ6OmNoZWNrRnJhCiAgICAgfQogICAgIGlmICghbV9m
cmFtZWJ1ZmZlckJpbmRpbmcgfHwgIW1fZnJhbWVidWZmZXJCaW5kaW5nLT5vYmplY3QoKSkKICAg
ICAgICAgcmV0dXJuIEdyYXBoaWNzQ29udGV4dDNEOjpGUkFNRUJVRkZFUl9DT01QTEVURTsKLSAg
ICBpZiAobV9mcmFtZWJ1ZmZlckJpbmRpbmctPmlzSW5jb21wbGV0ZSh0cnVlKSkKLSAgICAgICAg
cmV0dXJuIEdyYXBoaWNzQ29udGV4dDNEOjpGUkFNRUJVRkZFUl9VTlNVUFBPUlRFRDsKLSAgICB1
bnNpZ25lZCBsb25nIHJlc3VsdCA9IG1fY29udGV4dC0+Y2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyh0
YXJnZXQpOworICAgIEdDM0RlbnVtIHJlc3VsdCA9IG1fZnJhbWVidWZmZXJCaW5kaW5nLT5jaGVj
a1N0YXR1cygpOworICAgIGlmIChyZXN1bHQgIT0gR3JhcGhpY3NDb250ZXh0M0Q6OkZSQU1FQlVG
RkVSX0NPTVBMRVRFKQorICAgICAgICByZXR1cm4gcmVzdWx0OworICAgIHJlc3VsdCA9IG1fY29u
dGV4dC0+Y2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyh0YXJnZXQpOwogICAgIGNsZWFudXBBZnRlckdy
YXBoaWNzQ2FsbChmYWxzZSk7CiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KQEAgLTIxNTksNyArMjE2
MCw3IEBAIFdlYkdMR2V0SW5mbyBXZWJHTFJlbmRlcmluZ0NvbnRleHQ6OmdldEYKICAgICBpZiAo
aXNDb250ZXh0TG9zdCgpIHx8ICF2YWxpZGF0ZUZyYW1lYnVmZmVyRnVuY1BhcmFtZXRlcnModGFy
Z2V0LCBhdHRhY2htZW50KSkKICAgICAgICAgcmV0dXJuIFdlYkdMR2V0SW5mbygpOwogCi0gICAg
aWYgKCFtX2ZyYW1lYnVmZmVyQmluZGluZyB8fCAhbV9mcmFtZWJ1ZmZlckJpbmRpbmctPm9iamVj
dCgpIHx8IG1fZnJhbWVidWZmZXJCaW5kaW5nLT5pc0luY29tcGxldGUoZmFsc2UpKSB7CisgICAg
aWYgKCFtX2ZyYW1lYnVmZmVyQmluZGluZyB8fCAhbV9mcmFtZWJ1ZmZlckJpbmRpbmctPm9iamVj
dCgpKSB7CiAgICAgICAgIG1fY29udGV4dC0+c3ludGhlc2l6ZUdMRXJyb3IoR3JhcGhpY3NDb250
ZXh0M0Q6OklOVkFMSURfT1BFUkFUSU9OKTsKICAgICAgICAgcmV0dXJuIFdlYkdMR2V0SW5mbygp
OwogICAgIH0KQEAgLTQzMDgsMTQgKzQzMDksMTQgQEAgR0MzRGVudW0gV2ViR0xSZW5kZXJpbmdD
b250ZXh0OjpnZXRCb3VuZAogaW50IFdlYkdMUmVuZGVyaW5nQ29udGV4dDo6Z2V0Qm91bmRGcmFt
ZWJ1ZmZlcldpZHRoKCkKIHsKICAgICBpZiAobV9mcmFtZWJ1ZmZlckJpbmRpbmcgJiYgbV9mcmFt
ZWJ1ZmZlckJpbmRpbmctPm9iamVjdCgpKQotICAgICAgICByZXR1cm4gbV9mcmFtZWJ1ZmZlckJp
bmRpbmctPmdldFdpZHRoKCk7CisgICAgICAgIHJldHVybiBtX2ZyYW1lYnVmZmVyQmluZGluZy0+
Z2V0Q29sb3JCdWZmZXJXaWR0aCgpOwogICAgIHJldHVybiBtX2RyYXdpbmdCdWZmZXIgPyBtX2Ry
YXdpbmdCdWZmZXItPnNpemUoKS53aWR0aCgpIDogbV9jb250ZXh0LT5nZXRJbnRlcm5hbEZyYW1l
YnVmZmVyU2l6ZSgpLndpZHRoKCk7CiB9CiAKIGludCBXZWJHTFJlbmRlcmluZ0NvbnRleHQ6Omdl
dEJvdW5kRnJhbWVidWZmZXJIZWlnaHQoKQogewogICAgIGlmIChtX2ZyYW1lYnVmZmVyQmluZGlu
ZyAmJiBtX2ZyYW1lYnVmZmVyQmluZGluZy0+b2JqZWN0KCkpCi0gICAgICAgIHJldHVybiBtX2Zy
YW1lYnVmZmVyQmluZGluZy0+Z2V0SGVpZ2h0KCk7CisgICAgICAgIHJldHVybiBtX2ZyYW1lYnVm
ZmVyQmluZGluZy0+Z2V0Q29sb3JCdWZmZXJIZWlnaHQoKTsKICAgICByZXR1cm4gbV9kcmF3aW5n
QnVmZmVyID8gbV9kcmF3aW5nQnVmZmVyLT5zaXplKCkuaGVpZ2h0KCkgOiBtX2NvbnRleHQtPmdl
dEludGVybmFsRnJhbWVidWZmZXJTaXplKCkuaGVpZ2h0KCk7CiB9CiAKSW5kZXg6IExheW91dFRl
c3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHJldmlz
aW9uIDEwMjYxMikKKysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAt
MSwzICsxLDE1IEBACisyMDExLTEyLTA5ICBaaGVueWFvIE1vICA8em1vQGdvb2dsZS5jb20+CisK
KyAgICAgICAgSW1wbGVtZW50IEdMRVMyIENoZWNrRnJhbWVidWZmZXJTdGF0dXMoKSBiZWhhdmlv
cgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzQyMjgK
KworICAgICAgICAqIGZhc3QvY2FudmFzL3dlYmdsL2ZyYW1lYnVmZmVyLW9iamVjdC1hdHRhY2ht
ZW50LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBmYXN0L2NhbnZhcy93ZWJnbC9mcmFtZWJ1ZmZl
ci1vYmplY3QtYXR0YWNobWVudC5odG1sOiBzeW5jIHdpdGgga2hyb25vcyBzaWRlLCB0aGUgd2hv
bGUgZmlsZQorICAgICAgICAqIGZhc3QvY2FudmFzL3dlYmdsL3Jlc291cmNlcy93ZWJnbC10ZXN0
LmpzOiBzeW5jZWQgd2l0aCBraHJvbm9zIHNpZGUsIHR3byBsaXN0ZWQgZnVuY3Rpb25zCisgICAg
ICAgIChzaG91bGRHZW5lcmF0ZUdMRXJyb3IpOgorICAgICAgICAoZ2xFcnJvclNob3VsZEJlKToK
KyAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS90ZXN0X2V4cGVjdGF0aW9ucy50eHQ6IE1hcmsg
ZnJhbWVidWZmZXItb2JqZWN0LSouaHRtbCBhcyBmYWlsaW5nIGR1ZSB0byBtZXNhIGxpYiBidWcu
CisKIDIwMTEtMTItMTIgIEphbWVzIFJvYmluc29uICA8amFtZXNyQGNocm9taXVtLm9yZz4KIAog
ICAgICAgICBSZW5hbWUgd2Via2l0Q2FuY2VsUmVxdWVzdEFuaW1hdGlvbkZyYW1lIHRvIHdlYmtp
dENhbmNlbEFuaW1hdGlvbkZyYW1lIHRvIG1hdGNoIHNwZWMgY2hhbmdlCkluZGV4OiBMYXlvdXRU
ZXN0cy9mYXN0L2NhbnZhcy93ZWJnbC9mcmFtZWJ1ZmZlci1vYmplY3QtYXR0YWNobWVudC1leHBl
Y3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9jYW52YXMvd2ViZ2wvZnJh
bWVidWZmZXItb2JqZWN0LWF0dGFjaG1lbnQtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAxMDI2MTIp
CisrKyBMYXlvdXRUZXN0cy9mYXN0L2NhbnZhcy93ZWJnbC9mcmFtZWJ1ZmZlci1vYmplY3QtYXR0
YWNobWVudC1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTIsNiArMiw0MTQgQEAgVGVz
dCBmcmFtZWJ1ZmZlciBvYmplY3QgYXR0YWNobWVudCBiZWhhdgogCiBPbiBzdWNjZXNzLCB5b3Ug
d2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBD
T01QTEVURSIuCiAKKworRGltZW5zaW9ucyAwIHggMAorQ3JlYXRlIHJlbmRlcmJ1ZmZlcnMKK1BB
U1MgZ2wgPSBjcmVhdGUzRENvbnRleHQoKSBpcyBub24tbnVsbC4KK1BBU1MgY29sb3JCdWZmZXIg
PSBnbC5jcmVhdGVSZW5kZXJidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2Fz
IGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBkZXB0aEJ1ZmZlciA9IGdsLmNyZWF0
ZVJlbmRlcmJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQg
dmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIHN0ZW5jaWxCdWZmZXIgPSBnbC5jcmVhdGVSZW5kZXJi
dWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBO
T19FUlJPUiA6IAorUEFTUyBkZXB0aFN0ZW5jaWxCdWZmZXIgPSBnbC5jcmVhdGVSZW5kZXJidWZm
ZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19F
UlJPUiA6IAorQXR0YWNoIGRlcHRoIHVzaW5nIERFUFRIX0FUVEFDSE1FTlQKK1BBU1MgZmJvID0g
Z2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4
cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVz
KGdsLkZSQU1FQlVGRkVSKSByZXR1cm5lZCAzNjA1NAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0
ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogCitQQVNTIGdldEVycm9y
IHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKK0F0
dGFjaCBkZXB0aCB1c2luZyBTVEVOQ0lMX0FUVEFDSE1FTlQKK1BBU1MgZmJvID0gZ2wuY3JlYXRl
RnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZh
bHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1F
QlVGRkVSKSByZXR1cm5lZCAzNjA1NAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6
IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogCitQQVNTIGdldEVycm9yIHdhcyBleHBl
Y3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKK0F0dGFjaCBkZXB0
aCB1c2luZyBERVBUSF9TVEVOQ0lMX0FUVEFDSE1FTlQKK1BBU1MgZmJvID0gZ2wuY3JlYXRlRnJh
bWVidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVl
OiBOT19FUlJPUiA6IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVG
RkVSKSByZXR1cm5lZCAzNjA1NAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElO
VkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3Rl
ZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKK0F0dGFjaCBzdGVuY2ls
IHVzaW5nIFNURU5DSUxfQVRUQUNITUVOVAorUEFTUyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZl
cigpIGlzIG5vbi1udWxsLgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VS
Uk9SIDogCitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJl
dHVybmVkIDM2MDU0CitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9G
UkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVl
OiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAorQXR0YWNoIHN0ZW5jaWwgdXNpbmcg
REVQVEhfQVRUQUNITUVOVAorUEFTUyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlzIG5v
bi1udWxsLgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQ
QVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVkIDM2
MDU0CitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZF
Ul9PUEVSQVRJT04gOiAKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElE
X0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAorQXR0YWNoIHN0ZW5jaWwgdXNpbmcgREVQVEhfU1RF
TkNJTF9BVFRBQ0hNRU5UCitQQVNTIGZibyA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkgaXMgbm9u
LW51bGwuCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BB
U1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZFUikgcmV0dXJuZWQgMzYw
NTQKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVS
X09QRVJBVElPTiA6IAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURf
RlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogCitBdHRhY2ggZGVwdGhTdGVuY2lsIHVzaW5nIERFUFRI
X1NURU5DSUxfQVRUQUNITUVOVAorUEFTUyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlz
IG5vbi1udWxsLgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDog
CitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVk
IDM2MDU0CitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJV
RkZFUl9PUEVSQVRJT04gOiAKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZB
TElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAorQXR0YWNoIGRlcHRoU3RlbmNpbCB1c2luZyBE
RVBUSF9BVFRBQ0hNRU5UCitQQVNTIGZibyA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkgaXMgbm9u
LW51bGwuCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BB
U1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZFUikgcmV0dXJuZWQgMzYw
NTQKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVS
X09QRVJBVElPTiA6IAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURf
RlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogCitBdHRhY2ggZGVwdGhTdGVuY2lsIHVzaW5nIFNURU5D
SUxfQVRUQUNITUVOVAorUEFTUyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlzIG5vbi1u
dWxsLgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNT
IGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVkIDM2MDU0
CitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9P
UEVSQVRJT04gOiAKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZS
QU1FQlVGRkVSX09QRVJBVElPTiA6IAorQXR0YWNoIGRlcHRoLCB0aGVuIHN0ZW5jaWwsIGNhdXNp
bmcgY29uZmxpY3QKK1BBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVs
bC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBn
ZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGdsLmNoZWNrRnJh
bWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVkIDM2MDU0CitBdHRhY2ggc3Rl
bmNpbCwgdGhlbiBkZXB0aCwgY2F1c2luZyBjb25mbGljdAorUEFTUyBmYm8gPSBnbC5jcmVhdGVG
cmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFs
dWU6IE5PX0VSUk9SIDogCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJS
T1IgOiAKK1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZFUikgcmV0
dXJuZWQgMzYwNTQKK0F0dGFjaCBkZXB0aCwgdGhlbiBkZXB0aFN0ZW5jaWwsIGNhdXNpbmcgY29u
ZmxpY3QKK1BBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KK1BB
U1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnZXRFcnJv
ciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGdsLmNoZWNrRnJhbWVidWZm
ZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVkIDM2MDU0CitBdHRhY2ggZGVwdGhTdGVu
Y2lsLCB0aGVuIGRlcHRoLCBjYXVzaW5nIGNvbmZsaWN0CitQQVNTIGZibyA9IGdsLmNyZWF0ZUZy
YW1lYnVmZmVyKCkgaXMgbm9uLW51bGwuCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1
ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJP
UiA6IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1
cm5lZCAzNjA1NAorQXR0YWNoIHN0ZW5jaWwsIHRoZW4gZGVwdGhTdGVuY2lsLCBjYXVzaW5nIGNv
bmZsaWN0CitQQVNTIGZibyA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkgaXMgbm9uLW51bGwuCitQ
QVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2V0RXJy
b3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVm
ZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5lZCAzNjA1NAorQXR0YWNoIGRlcHRoU3Rl
bmNpbCwgdGhlbiBzdGVuY2lsLCBjYXVzaW5nIGNvbmZsaWN0CitQQVNTIGZibyA9IGdsLmNyZWF0
ZUZyYW1lYnVmZmVyKCkgaXMgbm9uLW51bGwuCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2
YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19F
UlJPUiA6IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSBy
ZXR1cm5lZCAzNjA1NAorQXR0YWNoIGNvbG9yIHJlbmRlcmJ1ZmZlciB3aXRoIGludGVybmFsZm9y
bWF0ID09IFJHQkE0CitQQVNTIGNvbG9yQnVmZmVyID0gZ2wuY3JlYXRlUmVuZGVyYnVmZmVyKCkg
aXMgbm9uLW51bGwuCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1Ig
OiAKK1BBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1Mg
Z2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5jaGVja0Zy
YW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5lZCAzNjA1NAorUEFTUyBnZXRF
cnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDog
CitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9P
UEVSQVRJT04gOiAKK0F0dGFjaCBjb2xvciByZW5kZXJidWZmZXIgd2l0aCBpbnRlcm5hbGZvcm1h
dCA9PSBSR0I1X0ExCitQQVNTIGNvbG9yQnVmZmVyID0gZ2wuY3JlYXRlUmVuZGVyYnVmZmVyKCkg
aXMgbm9uLW51bGwuCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1Ig
OiAKK1BBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1Mg
Z2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5jaGVja0Zy
YW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5lZCAzNjA1NAorUEFTUyBnZXRF
cnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDog
CitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9P
UEVSQVRJT04gOiAKK0F0dGFjaCBjb2xvciByZW5kZXJidWZmZXIgd2l0aCBpbnRlcm5hbGZvcm1h
dCA9PSBSR0I1NjUKK1BBU1MgY29sb3JCdWZmZXIgPSBnbC5jcmVhdGVSZW5kZXJidWZmZXIoKSBp
cyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6
IAorUEFTUyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBn
ZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGdsLmNoZWNrRnJh
bWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVkIDM2MDU0CitQQVNTIGdldEVy
cm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAK
K1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09Q
RVJBVElPTiA6IAorQ3JlYXRlIGFuZCBhdHRhY2ggZGVwdGhTdGVuY2lsIHJlbmRlcmJ1ZmZlcgor
UEFTUyBkZXB0aFN0ZW5jaWxCdWZmZXIgPSBnbC5jcmVhdGVSZW5kZXJidWZmZXIoKSBpcyBub24t
bnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFT
UyBnbC5nZXRSZW5kZXJidWZmZXJQYXJhbWV0ZXIoZ2wuUkVOREVSQlVGRkVSLCBnbC5SRU5ERVJC
VUZGRVJfV0lEVEgpIGlzIHdpZHRoCitQQVNTIGdsLmdldFJlbmRlcmJ1ZmZlclBhcmFtZXRlcihn
bC5SRU5ERVJCVUZGRVIsIGdsLlJFTkRFUkJVRkZFUl9IRUlHSFQpIGlzIGhlaWdodAorUEFTUyBn
bC5nZXRSZW5kZXJidWZmZXJQYXJhbWV0ZXIoZ2wuUkVOREVSQlVGRkVSLCBnbC5SRU5ERVJCVUZG
RVJfSU5URVJOQUxfRk9STUFUKSBpcyBnbC5ERVBUSF9TVEVOQ0lMCitQQVNTIGdsLmdldFJlbmRl
cmJ1ZmZlclBhcmFtZXRlcihnbC5SRU5ERVJCVUZGRVIsIGdsLlJFTkRFUkJVRkZFUl9SRURfU0la
RSkgaXMgMAorUEFTUyBnbC5nZXRSZW5kZXJidWZmZXJQYXJhbWV0ZXIoZ2wuUkVOREVSQlVGRkVS
LCBnbC5SRU5ERVJCVUZGRVJfR1JFRU5fU0laRSkgaXMgMAorUEFTUyBnbC5nZXRSZW5kZXJidWZm
ZXJQYXJhbWV0ZXIoZ2wuUkVOREVSQlVGRkVSLCBnbC5SRU5ERVJCVUZGRVJfQkxVRV9TSVpFKSBp
cyAwCitQQVNTIGdsLmdldFJlbmRlcmJ1ZmZlclBhcmFtZXRlcihnbC5SRU5ERVJCVUZGRVIsIGds
LlJFTkRFUkJVRkZFUl9BTFBIQV9TSVpFKSBpcyAwCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3Rl
ZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBp
cyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6
IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5l
ZCAzNjA1NAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVC
VUZGRVJfT1BFUkFUSU9OIDogCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5W
QUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKKworRGltZW5zaW9ucyAwIHggMgorQ3JlYXRl
IHJlbmRlcmJ1ZmZlcnMKK1BBU1MgZ2wgPSBjcmVhdGUzRENvbnRleHQoKSBpcyBub24tbnVsbC4K
K1BBU1MgY29sb3JCdWZmZXIgPSBnbC5jcmVhdGVSZW5kZXJidWZmZXIoKSBpcyBub24tbnVsbC4K
K1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBkZXB0
aEJ1ZmZlciA9IGdsLmNyZWF0ZVJlbmRlcmJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBnZXRF
cnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIHN0ZW5jaWxCdWZmZXIg
PSBnbC5jcmVhdGVSZW5kZXJidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2Fz
IGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBkZXB0aFN0ZW5jaWxCdWZmZXIgPSBn
bC5jcmVhdGVSZW5kZXJidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4
cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorQXR0YWNoIGRlcHRoIHVzaW5nIERFUFRIX0FUVEFD
SE1FTlQKK1BBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KK1BB
U1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5jaGVj
a0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5lZCAzNjA1NAorUEFTUyBn
ZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9O
IDogCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZF
Ul9PUEVSQVRJT04gOiAKK0F0dGFjaCBkZXB0aCB1c2luZyBTVEVOQ0lMX0FUVEFDSE1FTlQKK1BB
U1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJy
b3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVm
ZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5lZCAzNjA1NAorUEFTUyBnZXRFcnJvciB3
YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogCitQQVNT
IGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJ
T04gOiAKK0F0dGFjaCBkZXB0aCB1c2luZyBERVBUSF9TVEVOQ0lMX0FUVEFDSE1FTlQKK1BBU1Mg
ZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Ig
d2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVy
U3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5lZCAzNjA1NAorUEFTUyBnZXRFcnJvciB3YXMg
ZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogCitQQVNTIGdl
dEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04g
OiAKK0F0dGFjaCBzdGVuY2lsIHVzaW5nIFNURU5DSUxfQVRUQUNITUVOVAorUEFTUyBmYm8gPSBn
bC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBnZXRFcnJvciB3YXMgZXhw
ZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMo
Z2wuRlJBTUVCVUZGRVIpIHJldHVybmVkIDM2MDU0CitQQVNTIGdldEVycm9yIHdhcyBleHBlY3Rl
ZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKK1BBU1MgZ2V0RXJyb3Ig
d2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAorQXR0
YWNoIHN0ZW5jaWwgdXNpbmcgREVQVEhfQVRUQUNITUVOVAorUEFTUyBmYm8gPSBnbC5jcmVhdGVG
cmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFs
dWU6IE5PX0VSUk9SIDogCitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVC
VUZGRVIpIHJldHVybmVkIDM2MDU0CitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTog
SU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVj
dGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAorQXR0YWNoIHN0ZW5j
aWwgdXNpbmcgREVQVEhfU1RFTkNJTF9BVFRBQ0hNRU5UCitQQVNTIGZibyA9IGdsLmNyZWF0ZUZy
YW1lYnVmZmVyKCkgaXMgbm9uLW51bGwuCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1
ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJV
RkZFUikgcmV0dXJuZWQgMzYwNTQKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJ
TlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0
ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogCitBdHRhY2ggZGVwdGhT
dGVuY2lsIHVzaW5nIERFUFRIX1NURU5DSUxfQVRUQUNITUVOVAorUEFTUyBmYm8gPSBnbC5jcmVh
dGVGcmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQg
dmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJB
TUVCVUZGRVIpIHJldHVybmVkIDM2MDU0CitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1
ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4
cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAorQXR0YWNoIGRl
cHRoU3RlbmNpbCB1c2luZyBERVBUSF9BVFRBQ0hNRU5UCitQQVNTIGZibyA9IGdsLmNyZWF0ZUZy
YW1lYnVmZmVyKCkgaXMgbm9uLW51bGwuCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1
ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJV
RkZFUikgcmV0dXJuZWQgMzYwNTQKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJ
TlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0
ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogCitBdHRhY2ggZGVwdGhT
dGVuY2lsIHVzaW5nIFNURU5DSUxfQVRUQUNITUVOVAorUEFTUyBmYm8gPSBnbC5jcmVhdGVGcmFt
ZWJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6
IE5PX0VSUk9SIDogCitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZG
RVIpIHJldHVybmVkIDM2MDU0CitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5W
QUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVk
IHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAorQXR0YWNoIGRlcHRoLCB0
aGVuIHN0ZW5jaWwsIGNhdXNpbmcgY29uZmxpY3QKK1BBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVi
dWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBO
T19FUlJPUiA6IAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDog
CitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVk
IDM2MDU0CitBdHRhY2ggc3RlbmNpbCwgdGhlbiBkZXB0aCwgY2F1c2luZyBjb25mbGljdAorUEFT
UyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBnZXRFcnJv
ciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGdldEVycm9yIHdhcyBleHBl
Y3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhn
bC5GUkFNRUJVRkZFUikgcmV0dXJuZWQgMzYwNTQKK0F0dGFjaCBkZXB0aCwgdGhlbiBkZXB0aFN0
ZW5jaWwsIGNhdXNpbmcgY29uZmxpY3QKK1BBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIo
KSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJP
UiA6IAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNT
IGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVkIDM2MDU0
CitBdHRhY2ggZGVwdGhTdGVuY2lsLCB0aGVuIGRlcHRoLCBjYXVzaW5nIGNvbmZsaWN0CitQQVNT
IGZibyA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkgaXMgbm9uLW51bGwuCitQQVNTIGdldEVycm9y
IHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVj
dGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGds
LkZSQU1FQlVGRkVSKSByZXR1cm5lZCAzNjA1NAorQXR0YWNoIHN0ZW5jaWwsIHRoZW4gZGVwdGhT
dGVuY2lsLCBjYXVzaW5nIGNvbmZsaWN0CitQQVNTIGZibyA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVy
KCkgaXMgbm9uLW51bGwuCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJS
T1IgOiAKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFT
UyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5lZCAzNjA1
NAorQXR0YWNoIGRlcHRoU3RlbmNpbCwgdGhlbiBzdGVuY2lsLCBjYXVzaW5nIGNvbmZsaWN0CitQ
QVNTIGZibyA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkgaXMgbm9uLW51bGwuCitQQVNTIGdldEVy
cm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4
cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVz
KGdsLkZSQU1FQlVGRkVSKSByZXR1cm5lZCAzNjA1NAorQXR0YWNoIGNvbG9yIHJlbmRlcmJ1ZmZl
ciB3aXRoIGludGVybmFsZm9ybWF0ID09IFJHQkE0CitQQVNTIGNvbG9yQnVmZmVyID0gZ2wuY3Jl
YXRlUmVuZGVyYnVmZmVyKCkgaXMgbm9uLW51bGwuCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3Rl
ZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBp
cyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6
IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5l
ZCAzNjA1NAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVC
VUZGRVJfT1BFUkFUSU9OIDogCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5W
QUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKK0F0dGFjaCBjb2xvciByZW5kZXJidWZmZXIg
d2l0aCBpbnRlcm5hbGZvcm1hdCA9PSBSR0I1X0ExCitQQVNTIGNvbG9yQnVmZmVyID0gZ2wuY3Jl
YXRlUmVuZGVyYnVmZmVyKCkgaXMgbm9uLW51bGwuCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3Rl
ZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBp
cyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6
IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5l
ZCAzNjA1NAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVC
VUZGRVJfT1BFUkFUSU9OIDogCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5W
QUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKK0F0dGFjaCBjb2xvciByZW5kZXJidWZmZXIg
d2l0aCBpbnRlcm5hbGZvcm1hdCA9PSBSR0I1NjUKK1BBU1MgY29sb3JCdWZmZXIgPSBnbC5jcmVh
dGVSZW5kZXJidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVk
IHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlz
IG5vbi1udWxsLgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDog
CitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVk
IDM2MDU0CitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJV
RkZFUl9PUEVSQVRJT04gOiAKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZB
TElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAorQ3JlYXRlIGFuZCBhdHRhY2ggZGVwdGhTdGVu
Y2lsIHJlbmRlcmJ1ZmZlcgorUEFTUyBkZXB0aFN0ZW5jaWxCdWZmZXIgPSBnbC5jcmVhdGVSZW5k
ZXJidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVl
OiBOT19FUlJPUiA6IAorUEFTUyBnbC5nZXRSZW5kZXJidWZmZXJQYXJhbWV0ZXIoZ2wuUkVOREVS
QlVGRkVSLCBnbC5SRU5ERVJCVUZGRVJfV0lEVEgpIGlzIHdpZHRoCitQQVNTIGdsLmdldFJlbmRl
cmJ1ZmZlclBhcmFtZXRlcihnbC5SRU5ERVJCVUZGRVIsIGdsLlJFTkRFUkJVRkZFUl9JTlRFUk5B
TF9GT1JNQVQpIGlzIGdsLkRFUFRIX1NURU5DSUwKK1BBU1MgZ2wuZ2V0UmVuZGVyYnVmZmVyUGFy
YW1ldGVyKGdsLlJFTkRFUkJVRkZFUiwgZ2wuUkVOREVSQlVGRkVSX1JFRF9TSVpFKSBpcyAwCitQ
QVNTIGdsLmdldFJlbmRlcmJ1ZmZlclBhcmFtZXRlcihnbC5SRU5ERVJCVUZGRVIsIGdsLlJFTkRF
UkJVRkZFUl9HUkVFTl9TSVpFKSBpcyAwCitQQVNTIGdsLmdldFJlbmRlcmJ1ZmZlclBhcmFtZXRl
cihnbC5SRU5ERVJCVUZGRVIsIGdsLlJFTkRFUkJVRkZFUl9CTFVFX1NJWkUpIGlzIDAKK1BBU1Mg
Z2wuZ2V0UmVuZGVyYnVmZmVyUGFyYW1ldGVyKGdsLlJFTkRFUkJVRkZFUiwgZ2wuUkVOREVSQlVG
RkVSX0FMUEhBX1NJWkUpIGlzIDAKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBO
T19FUlJPUiA6IAorUEFTUyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxs
LgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGds
LmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVkIDM2MDU0CitQ
QVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVS
QVRJT04gOiAKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1F
QlVGRkVSX09QRVJBVElPTiA6IAorCitEaW1lbnNpb25zIDIgeCAwCitDcmVhdGUgcmVuZGVyYnVm
ZmVycworUEFTUyBnbCA9IGNyZWF0ZTNEQ29udGV4dCgpIGlzIG5vbi1udWxsLgorUEFTUyBjb2xv
ckJ1ZmZlciA9IGdsLmNyZWF0ZVJlbmRlcmJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBnZXRF
cnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGRlcHRoQnVmZmVyID0g
Z2wuY3JlYXRlUmVuZGVyYnVmZmVyKCkgaXMgbm9uLW51bGwuCitQQVNTIGdldEVycm9yIHdhcyBl
eHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1Mgc3RlbmNpbEJ1ZmZlciA9IGdsLmNyZWF0
ZVJlbmRlcmJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQg
dmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGRlcHRoU3RlbmNpbEJ1ZmZlciA9IGdsLmNyZWF0ZVJl
bmRlcmJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFs
dWU6IE5PX0VSUk9SIDogCitBdHRhY2ggZGVwdGggdXNpbmcgREVQVEhfQVRUQUNITUVOVAorUEFT
UyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBnZXRFcnJv
ciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGdsLmNoZWNrRnJhbWVidWZm
ZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVkIDM2MDU0CitQQVNTIGdldEVycm9yIHdh
cyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKK1BBU1Mg
Z2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElP
TiA6IAorQXR0YWNoIGRlcHRoIHVzaW5nIFNURU5DSUxfQVRUQUNITUVOVAorUEFTUyBmYm8gPSBn
bC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBnZXRFcnJvciB3YXMgZXhw
ZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMo
Z2wuRlJBTUVCVUZGRVIpIHJldHVybmVkIDM2MDU0CitQQVNTIGdldEVycm9yIHdhcyBleHBlY3Rl
ZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKK1BBU1MgZ2V0RXJyb3Ig
d2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAorQXR0
YWNoIGRlcHRoIHVzaW5nIERFUFRIX1NURU5DSUxfQVRUQUNITUVOVAorUEFTUyBmYm8gPSBnbC5j
cmVhdGVGcmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0
ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wu
RlJBTUVCVUZGRVIpIHJldHVybmVkIDM2MDU0CitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2
YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKK1BBU1MgZ2V0RXJyb3Igd2Fz
IGV4cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAorQXR0YWNo
IHN0ZW5jaWwgdXNpbmcgU1RFTkNJTF9BVFRBQ0hNRU5UCitQQVNTIGZibyA9IGdsLmNyZWF0ZUZy
YW1lYnVmZmVyKCkgaXMgbm9uLW51bGwuCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1
ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJV
RkZFUikgcmV0dXJuZWQgMzYwNTQKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJ
TlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0
ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogCitBdHRhY2ggc3RlbmNp
bCB1c2luZyBERVBUSF9BVFRBQ0hNRU5UCitQQVNTIGZibyA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVy
KCkgaXMgbm9uLW51bGwuCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJS
T1IgOiAKK1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZFUikgcmV0
dXJuZWQgMzYwNTQKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZS
QU1FQlVGRkVSX09QRVJBVElPTiA6IAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6
IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogCitBdHRhY2ggc3RlbmNpbCB1c2luZyBE
RVBUSF9TVEVOQ0lMX0FUVEFDSE1FTlQKK1BBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIo
KSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJP
UiA6IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1
cm5lZCAzNjA1NAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJB
TUVCVUZGRVJfT1BFUkFUSU9OIDogCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTog
SU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKK0F0dGFjaCBkZXB0aFN0ZW5jaWwgdXNp
bmcgREVQVEhfU1RFTkNJTF9BVFRBQ0hNRU5UCitQQVNTIGZibyA9IGdsLmNyZWF0ZUZyYW1lYnVm
ZmVyKCkgaXMgbm9uLW51bGwuCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9f
RVJST1IgOiAKK1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZFUikg
cmV0dXJuZWQgMzYwNTQKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElE
X0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFs
dWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogCitBdHRhY2ggZGVwdGhTdGVuY2ls
IHVzaW5nIERFUFRIX0FUVEFDSE1FTlQKK1BBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIo
KSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJP
UiA6IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1
cm5lZCAzNjA1NAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJB
TUVCVUZGRVJfT1BFUkFUSU9OIDogCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTog
SU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKK0F0dGFjaCBkZXB0aFN0ZW5jaWwgdXNp
bmcgU1RFTkNJTF9BVFRBQ0hNRU5UCitQQVNTIGZibyA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkg
aXMgbm9uLW51bGwuCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1Ig
OiAKK1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZFUikgcmV0dXJu
ZWQgMzYwNTQKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1F
QlVGRkVSX09QRVJBVElPTiA6IAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElO
VkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogCitBdHRhY2ggZGVwdGgsIHRoZW4gc3RlbmNp
bCwgY2F1c2luZyBjb25mbGljdAorUEFTUyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlz
IG5vbi1udWxsLgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDog
CitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2wu
Y2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZFUikgcmV0dXJuZWQgMzYwNTQKK0F0
dGFjaCBzdGVuY2lsLCB0aGVuIGRlcHRoLCBjYXVzaW5nIGNvbmZsaWN0CitQQVNTIGZibyA9IGds
LmNyZWF0ZUZyYW1lYnVmZmVyKCkgaXMgbm9uLW51bGwuCitQQVNTIGdldEVycm9yIHdhcyBleHBl
Y3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVl
OiBOT19FUlJPUiA6IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVG
RkVSKSByZXR1cm5lZCAzNjA1NAorQXR0YWNoIGRlcHRoLCB0aGVuIGRlcHRoU3RlbmNpbCwgY2F1
c2luZyBjb25mbGljdAorUEFTUyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlzIG5vbi1u
dWxsLgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNT
IGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2wuY2hlY2tG
cmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZFUikgcmV0dXJuZWQgMzYwNTQKK0F0dGFjaCBk
ZXB0aFN0ZW5jaWwsIHRoZW4gZGVwdGgsIGNhdXNpbmcgY29uZmxpY3QKK1BBU1MgZmJvID0gZ2wu
Y3JlYXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVj
dGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6
IE5PX0VSUk9SIDogCitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZG
RVIpIHJldHVybmVkIDM2MDU0CitBdHRhY2ggc3RlbmNpbCwgdGhlbiBkZXB0aFN0ZW5jaWwsIGNh
dXNpbmcgY29uZmxpY3QKK1BBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBub24t
bnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFT
UyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGdsLmNoZWNr
RnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVkIDM2MDU0CitBdHRhY2gg
ZGVwdGhTdGVuY2lsLCB0aGVuIHN0ZW5jaWwsIGNhdXNpbmcgY29uZmxpY3QKK1BBU1MgZmJvID0g
Z2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4
cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFs
dWU6IE5PX0VSUk9SIDogCitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVC
VUZGRVIpIHJldHVybmVkIDM2MDU0CitBdHRhY2ggY29sb3IgcmVuZGVyYnVmZmVyIHdpdGggaW50
ZXJuYWxmb3JtYXQgPT0gUkdCQTQKK1BBU1MgY29sb3JCdWZmZXIgPSBnbC5jcmVhdGVSZW5kZXJi
dWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBO
T19FUlJPUiA6IAorUEFTUyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxs
LgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGds
LmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVkIDM2MDU0CitQ
QVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVS
QVRJT04gOiAKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1F
QlVGRkVSX09QRVJBVElPTiA6IAorQXR0YWNoIGNvbG9yIHJlbmRlcmJ1ZmZlciB3aXRoIGludGVy
bmFsZm9ybWF0ID09IFJHQjVfQTEKK1BBU1MgY29sb3JCdWZmZXIgPSBnbC5jcmVhdGVSZW5kZXJi
dWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBO
T19FUlJPUiA6IAorUEFTUyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxs
LgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGds
LmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVkIDM2MDU0CitQ
QVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVS
QVRJT04gOiAKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1F
QlVGRkVSX09QRVJBVElPTiA6IAorQXR0YWNoIGNvbG9yIHJlbmRlcmJ1ZmZlciB3aXRoIGludGVy
bmFsZm9ybWF0ID09IFJHQjU2NQorUEFTUyBjb2xvckJ1ZmZlciA9IGdsLmNyZWF0ZVJlbmRlcmJ1
ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5P
X0VSUk9SIDogCitQQVNTIGZibyA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkgaXMgbm9uLW51bGwu
CitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZ2wu
Y2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZFUikgcmV0dXJuZWQgMzYwNTQKK1BB
U1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJB
VElPTiA6IAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVC
VUZGRVJfT1BFUkFUSU9OIDogCitDcmVhdGUgYW5kIGF0dGFjaCBkZXB0aFN0ZW5jaWwgcmVuZGVy
YnVmZmVyCitQQVNTIGRlcHRoU3RlbmNpbEJ1ZmZlciA9IGdsLmNyZWF0ZVJlbmRlcmJ1ZmZlcigp
IGlzIG5vbi1udWxsLgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9S
IDogCitQQVNTIGdsLmdldFJlbmRlcmJ1ZmZlclBhcmFtZXRlcihnbC5SRU5ERVJCVUZGRVIsIGds
LlJFTkRFUkJVRkZFUl9IRUlHSFQpIGlzIGhlaWdodAorUEFTUyBnbC5nZXRSZW5kZXJidWZmZXJQ
YXJhbWV0ZXIoZ2wuUkVOREVSQlVGRkVSLCBnbC5SRU5ERVJCVUZGRVJfSU5URVJOQUxfRk9STUFU
KSBpcyBnbC5ERVBUSF9TVEVOQ0lMCitQQVNTIGdsLmdldFJlbmRlcmJ1ZmZlclBhcmFtZXRlcihn
bC5SRU5ERVJCVUZGRVIsIGdsLlJFTkRFUkJVRkZFUl9SRURfU0laRSkgaXMgMAorUEFTUyBnbC5n
ZXRSZW5kZXJidWZmZXJQYXJhbWV0ZXIoZ2wuUkVOREVSQlVGRkVSLCBnbC5SRU5ERVJCVUZGRVJf
R1JFRU5fU0laRSkgaXMgMAorUEFTUyBnbC5nZXRSZW5kZXJidWZmZXJQYXJhbWV0ZXIoZ2wuUkVO
REVSQlVGRkVSLCBnbC5SRU5ERVJCVUZGRVJfQkxVRV9TSVpFKSBpcyAwCitQQVNTIGdsLmdldFJl
bmRlcmJ1ZmZlclBhcmFtZXRlcihnbC5SRU5ERVJCVUZGRVIsIGdsLlJFTkRFUkJVRkZFUl9BTFBI
QV9TSVpFKSBpcyAwCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1Ig
OiAKK1BBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1Mg
Z2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5jaGVja0Zy
YW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5lZCAzNjA1NAorUEFTUyBnZXRF
cnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDog
CitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9P
UEVSQVRJT04gOiAKKworRGltZW5zaW9ucyAyIHggMgogQ3JlYXRlIHJlbmRlcmJ1ZmZlcnMKIFBB
U1MgZ2wgPSBjcmVhdGUzRENvbnRleHQoKSBpcyBub24tbnVsbC4KIFBBU1MgY29sb3JCdWZmZXIg
PSBnbC5jcmVhdGVSZW5kZXJidWZmZXIoKSBpcyBub24tbnVsbC4KQEAgLTE1LDkzICs0MjMsOTkg
QEAgUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUgogQXR0YWNoIGRlcHRo
IHVzaW5nIERFUFRIX0FUVEFDSE1FTlQKIFBBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIo
KSBpcyBub24tbnVsbC4KIFBBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJP
UiA6IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1
cm5lZCAzNjA1MwogQXR0YWNoIGRlcHRoIHVzaW5nIFNURU5DSUxfQVRUQUNITUVOVAogUEFTUyBm
Ym8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxsLgogUEFTUyBnZXRFcnJvciB3
YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCi1QQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJT
dGF0dXMoZ2wuRlJBTUVCVUZGRVIpIGlzIGdsLkZSQU1FQlVGRkVSX1VOU1VQUE9SVEVECitQQVNT
IGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVkIDM2MDU0
CiBQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9P
UEVSQVRJT04gOiAKIFBBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZS
QU1FQlVGRkVSX09QRVJBVElPTiA6IAogQXR0YWNoIGRlcHRoIHVzaW5nIERFUFRIX1NURU5DSUxf
QVRUQUNITUVOVAogUEFTUyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxs
LgogUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCi1QQVNTIGds
LmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIGlzIGdsLkZSQU1FQlVGRkVS
X1VOU1VQUE9SVEVECitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZG
RVIpIHJldHVybmVkIDM2MDU0CiBQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5W
QUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKIFBBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVk
IHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAogQXR0YWNoIHN0ZW5jaWwg
dXNpbmcgU1RFTkNJTF9BVFRBQ0hNRU5UCiBQQVNTIGZibyA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVy
KCkgaXMgbm9uLW51bGwuCiBQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJS
T1IgOiAKK1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZFUikgcmV0
dXJuZWQgMzYwNjEKIEF0dGFjaCBzdGVuY2lsIHVzaW5nIERFUFRIX0FUVEFDSE1FTlQKIFBBU1Mg
ZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KIFBBU1MgZ2V0RXJyb3Ig
d2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAotUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVy
U3RhdHVzKGdsLkZSQU1FQlVGRkVSKSBpcyBnbC5GUkFNRUJVRkZFUl9VTlNVUFBPUlRFRAorUEFT
UyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5lZCAzNjA1
NAogUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJf
T1BFUkFUSU9OIDogCiBQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9G
UkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKIEF0dGFjaCBzdGVuY2lsIHVzaW5nIERFUFRIX1NURU5D
SUxfQVRUQUNITUVOVAogUEFTUyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlzIG5vbi1u
dWxsLgogUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCi1QQVNT
IGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIGlzIGdsLkZSQU1FQlVG
RkVSX1VOU1VQUE9SVEVECitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVC
VUZGRVIpIHJldHVybmVkIDM2MDU0CiBQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTog
SU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKIFBBU1MgZ2V0RXJyb3Igd2FzIGV4cGVj
dGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAogQXR0YWNoIGRlcHRo
U3RlbmNpbCB1c2luZyBERVBUSF9TVEVOQ0lMX0FUVEFDSE1FTlQKIFBBU1MgZmJvID0gZ2wuY3Jl
YXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KIFBBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVk
IHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZS
QU1FQlVGRkVSKSByZXR1cm5lZCAzNjA1MwogQXR0YWNoIGRlcHRoU3RlbmNpbCB1c2luZyBERVBU
SF9BVFRBQ0hNRU5UCiBQQVNTIGZibyA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkgaXMgbm9uLW51
bGwuCiBQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKLVBBU1Mg
Z2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZFUikgaXMgZ2wuRlJBTUVCVUZG
RVJfVU5TVVBQT1JURUQKK1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJV
RkZFUikgcmV0dXJuZWQgMzYwNTQKIFBBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJ
TlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IAogUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0
ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogCiBBdHRhY2ggZGVwdGhT
dGVuY2lsIHVzaW5nIFNURU5DSUxfQVRUQUNITUVOVAogUEFTUyBmYm8gPSBnbC5jcmVhdGVGcmFt
ZWJ1ZmZlcigpIGlzIG5vbi1udWxsLgogUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6
IE5PX0VSUk9SIDogCi1QQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZG
RVIpIGlzIGdsLkZSQU1FQlVGRkVSX1VOU1VQUE9SVEVECitQQVNTIGdsLmNoZWNrRnJhbWVidWZm
ZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVkIDM2MDU0CiBQQVNTIGdldEVycm9yIHdh
cyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiAKIFBBU1Mg
Z2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElP
TiA6IAogQXR0YWNoIGRlcHRoLCB0aGVuIHN0ZW5jaWwsIGNhdXNpbmcgY29uZmxpY3QKIFBBU1Mg
ZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KIFBBU1MgZ2V0RXJyb3Ig
d2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAogUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0
ZWQgdmFsdWU6IE5PX0VSUk9SIDogCi1QQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wu
RlJBTUVCVUZGRVIpIGlzIGdsLkZSQU1FQlVGRkVSX1VOU1VQUE9SVEVECitQQVNTIGdsLmNoZWNr
RnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVkIDM2MDYxCiBBdHRhY2gg
c3RlbmNpbCwgdGhlbiBkZXB0aCwgY2F1c2luZyBjb25mbGljdAogUEFTUyBmYm8gPSBnbC5jcmVh
dGVGcmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxsLgogUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQg
dmFsdWU6IE5PX0VSUk9SIDogCiBQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9f
RVJST1IgOiAKLVBBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZFUikg
aXMgZ2wuRlJBTUVCVUZGRVJfVU5TVVBQT1JURUQKK1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0
YXR1cyhnbC5GUkFNRUJVRkZFUikgcmV0dXJuZWQgMzYwNjEKIEF0dGFjaCBkZXB0aCwgdGhlbiBk
ZXB0aFN0ZW5jaWwsIGNhdXNpbmcgY29uZmxpY3QKIFBBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVi
dWZmZXIoKSBpcyBub24tbnVsbC4KIFBBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBO
T19FUlJPUiA6IAogUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDog
Ci1QQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIGlzIGdsLkZS
QU1FQlVGRkVSX1VOU1VQUE9SVEVECitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wu
RlJBTUVCVUZGRVIpIHJldHVybmVkIDM2MDYxCiBBdHRhY2ggZGVwdGhTdGVuY2lsLCB0aGVuIGRl
cHRoLCBjYXVzaW5nIGNvbmZsaWN0CiBQQVNTIGZibyA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkg
aXMgbm9uLW51bGwuCiBQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1Ig
OiAKIFBBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAotUEFTUyBn
bC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSBpcyBnbC5GUkFNRUJVRkZF
Ul9VTlNVUFBPUlRFRAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVG
RkVSKSByZXR1cm5lZCAzNjA2MQogQXR0YWNoIHN0ZW5jaWwsIHRoZW4gZGVwdGhTdGVuY2lsLCBj
YXVzaW5nIGNvbmZsaWN0CiBQQVNTIGZibyA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkgaXMgbm9u
LW51bGwuCiBQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKIFBB
U1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAotUEFTUyBnbC5jaGVj
a0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSBpcyBnbC5GUkFNRUJVRkZFUl9VTlNV
UFBPUlRFRAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSBy
ZXR1cm5lZCAzNjA2MQogQXR0YWNoIGRlcHRoU3RlbmNpbCwgdGhlbiBzdGVuY2lsLCBjYXVzaW5n
IGNvbmZsaWN0CiBQQVNTIGZibyA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkgaXMgbm9uLW51bGwu
CiBQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKIFBBU1MgZ2V0
RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAotUEFTUyBnbC5jaGVja0ZyYW1l
YnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSBpcyBnbC5GUkFNRUJVRkZFUl9VTlNVUFBPUlRF
RAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5l
ZCAzNjA2MQogQXR0YWNoIGNvbG9yIHJlbmRlcmJ1ZmZlciB3aXRoIGludGVybmFsZm9ybWF0ID09
IFJHQkE0CiBQQVNTIGNvbG9yQnVmZmVyID0gZ2wuY3JlYXRlUmVuZGVyYnVmZmVyKCkgaXMgbm9u
LW51bGwuCiBQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKIFBB
U1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KIFBBU1MgZ2V0RXJy
b3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVm
ZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5lZCAzNjA1MwogQXR0YWNoIGNvbG9yIHJl
bmRlcmJ1ZmZlciB3aXRoIGludGVybmFsZm9ybWF0ID09IFJHQjVfQTEKIFBBU1MgY29sb3JCdWZm
ZXIgPSBnbC5jcmVhdGVSZW5kZXJidWZmZXIoKSBpcyBub24tbnVsbC4KIFBBU1MgZ2V0RXJyb3Ig
d2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAogUEFTUyBmYm8gPSBnbC5jcmVhdGVGcmFt
ZWJ1ZmZlcigpIGlzIG5vbi1udWxsLgogUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6
IE5PX0VSUk9SIDogCitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZG
RVIpIHJldHVybmVkIDM2MDUzCiBBdHRhY2ggY29sb3IgcmVuZGVyYnVmZmVyIHdpdGggaW50ZXJu
YWxmb3JtYXQgPT0gUkdCNTY1CiBQQVNTIGNvbG9yQnVmZmVyID0gZ2wuY3JlYXRlUmVuZGVyYnVm
ZmVyKCkgaXMgbm9uLW51bGwuCiBQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9f
RVJST1IgOiAKIFBBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4K
IFBBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5j
aGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSByZXR1cm5lZCAzNjA1MwogQ3Jl
YXRlIGFuZCBhdHRhY2ggZGVwdGhTdGVuY2lsIHJlbmRlcmJ1ZmZlcgogUEFTUyBkZXB0aFN0ZW5j
aWxCdWZmZXIgPSBnbC5jcmVhdGVSZW5kZXJidWZmZXIoKSBpcyBub24tbnVsbC4KIFBBU1MgZ2V0
RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IApAQCAtMTE3LDYgKzUzMSw4MSBA
QCBQQVNTIGdsLmdldFJlbmRlcmJ1ZmZlclBhcmFtZXRlcihnbC5SRU5ECiBQQVNTIGdldEVycm9y
IHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKIFBBU1MgZmJvID0gZ2wuY3JlYXRlRnJh
bWVidWZmZXIoKSBpcyBub24tbnVsbC4KIFBBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVl
OiBOT19FUlJPUiA6IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVG
RkVSKSByZXR1cm5lZCAzNjA1MworUEFTUyBmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlz
IG5vbi1udWxsLgorUEFTUyBjb2xvckJ1ZmZlciA9IGdsLmNyZWF0ZVJlbmRlcmJ1ZmZlcigpIGlz
IG5vbi1udWxsLgorUEFTUyBkZXB0aEJ1ZmZlciA9IGdsLmNyZWF0ZVJlbmRlcmJ1ZmZlcigpIGlz
IG5vbi1udWxsLgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDog
CisKK0F0dGFjaG1lbnRzIG9mIGRpZmZlcmVudCBzaXplcyBzaG91bGQgYmUgRlJBTUVCVUZGRVJf
SU5DT01QTEVURV9ESU1FTlNJT05TIChPcGVuR0wgRVMgMi4wIDQuNC41KQorUEFTUyBmYm8gPSBn
bC5jcmVhdGVGcmFtZWJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBjb2xvckJ1ZmZlciA9IGds
LmNyZWF0ZVJlbmRlcmJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBkZXB0aEJ1ZmZlciA9IGds
LmNyZWF0ZVJlbmRlcmJ1ZmZlcigpIGlzIG5vbi1udWxsLgorUEFTUyBnZXRFcnJvciB3YXMgZXhw
ZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMo
Z2wuRlJBTUVCVUZGRVIpIHNob3VsZCBiZSBGUkFNRUJVRkZFUl9DT01QTEVURSB3YXMgRlJBTUVC
VUZGRVJfQ09NUExFVEUKK1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJV
RkZFUikgc2hvdWxkIGJlIEZSQU1FQlVGRkVSX0lOQ09NUExFVEVfRElNRU5TSU9OUyB3YXMgRlJB
TUVCVUZGRVJfSU5DT01QTEVURV9ESU1FTlNJT05TIG9yIEZSQU1FQlVGRkVSX1VOU1VQUE9SVEVE
CitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHNob3VsZCBi
ZSBGUkFNRUJVRkZFUl9DT01QTEVURSB3YXMgRlJBTUVCVUZGRVJfQ09NUExFVEUKK1BBU1MgZ2wu
Y2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZFUikgc2hvdWxkIGJlIEZSQU1FQlVG
RkVSX0lOQ09NUExFVEVfRElNRU5TSU9OUyB3YXMgRlJBTUVCVUZGRVJfSU5DT01QTEVURV9ESU1F
TlNJT05TIG9yIEZSQU1FQlVGRkVSX1VOU1VQUE9SVEVECitQQVNTIGdsLmNoZWNrRnJhbWVidWZm
ZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHNob3VsZCBiZSBGUkFNRUJVRkZFUl9DT01QTEVURSB3
YXMgRlJBTUVCVUZGRVJfQ09NUExFVEUKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVl
OiBOT19FUlJPUiA6IAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9S
IDogCitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHNob3Vs
ZCBiZSBGUkFNRUJVRkZFUl9JTkNPTVBMRVRFX0RJTUVOU0lPTlMgd2FzIEZSQU1FQlVGRkVSX0lO
Q09NUExFVEVfRElNRU5TSU9OUyBvciBGUkFNRUJVRkZFUl9VTlNVUFBPUlRFRAorUEFTUyBnbC5j
aGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSBzaG91bGQgYmUgRlJBTUVCVUZG
RVJfQ09NUExFVEUgd2FzIEZSQU1FQlVGRkVSX0NPTVBMRVRFCitQQVNTIGdldEVycm9yIHdhcyBl
eHBlY3RlZCB2YWx1ZTogTk9fRVJST1IgOiAKK1BBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZm
ZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgY29sb3JCdWZmZXIgPSBnbC5jcmVhdGVSZW5kZXJidWZm
ZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFN
RUJVRkZFUikgc2hvdWxkIGJlIEZSQU1FQlVGRkVSX0NPTVBMRVRFIHdhcyBGUkFNRUJVRkZFUl9D
T01QTEVURQorCitXcm9uZyBzdG9yYWdlIHR5cGUgZm9yIHR5cGUgb2YgYXR0YWNobWVudCBiZSBG
UkFNRUJVRkZFUl9JTkNPTVBMRVRFX0FUVEFDSE1FTlQgKE9wZW5HTCBFUyAyLjAgNC40LjUpCitQ
QVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHNob3VsZCBiZSBG
UkFNRUJVRkZFUl9JTkNPTVBMRVRFX0FUVEFDSE1FTlQgd2FzIEZSQU1FQlVGRkVSX0lOQ09NUExF
VEVfQVRUQUNITUVOVCBvciBGUkFNRUJVRkZFUl9VTlNVUFBPUlRFRAorUEFTUyBnbC5jaGVja0Zy
YW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSBzaG91bGQgYmUgRlJBTUVCVUZGRVJfQ09N
UExFVEUgd2FzIEZSQU1FQlVGRkVSX0NPTVBMRVRFCisKKzAgc2l6ZSBhdHRhY2htZW50IHNob3Vs
ZCBiZSBGUkFNRUJVRkZFUl9JTkNPTVBMRVRFX0FUVEFDSE1FTlQgKE9wZW5HTCBFUyAyLjAgNC40
LjUpCitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHNob3Vs
ZCBiZSBGUkFNRUJVRkZFUl9JTkNPTVBMRVRFX0FUVEFDSE1FTlQgd2FzIEZSQU1FQlVGRkVSX0lO
Q09NUExFVEVfQVRUQUNITUVOVCBvciBGUkFNRUJVRkZFUl9VTlNVUFBPUlRFRAorUEFTUyBnZXRF
cnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCisKK05vIGF0dGFjaG1lbnRzIHNo
b3VsZCBiZSBJTkNPTVBMRVRFX0ZSQU1FQlVGRkVSX01JU1NJTkdfQVRUQUNITUVOVCAoT3BlbkdM
IEVTIDIuMCA0LjQuNSkKK1BBU1MgZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBub24t
bnVsbC4KK1BBU1MgZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZFUikgc2hv
dWxkIGJlIEZSQU1FQlVGRkVSX0lOQ09NUExFVEVfTUlTU0lOR19BVFRBQ0hNRU5UIHdhcyBGUkFN
RUJVRkZFUl9JTkNPTVBMRVRFX01JU1NJTkdfQVRUQUNITUVOVCBvciBGUkFNRUJVRkZFUl9VTlNV
UFBPUlRFRAorUEFTUyBjb2xvckJ1ZmZlciA9IGdsLmNyZWF0ZVJlbmRlcmJ1ZmZlcigpIGlzIG5v
bi1udWxsLgorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSBz
aG91bGQgYmUgRlJBTUVCVUZGRVJfQ09NUExFVEUgd2FzIEZSQU1FQlVGRkVSX0NPTVBMRVRFCitQ
QVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHNob3VsZCBiZSBG
UkFNRUJVRkZFUl9JTkNPTVBMRVRFX01JU1NJTkdfQVRUQUNITUVOVCB3YXMgRlJBTUVCVUZGRVJf
SU5DT01QTEVURV9NSVNTSU5HX0FUVEFDSE1FTlQgb3IgRlJBTUVCVUZGRVJfVU5TVVBQT1JURUQK
K1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorCitUZXN0IGRy
YXdpbmcgb3IgcmVhZGluZyBmcm9tIGFuIGluY29tcGxldGUgZnJhbWVidWZmZXIKK1BBU1MgZmJv
ID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgY29sb3JCdWZmZXIg
PSBnbC5jcmVhdGVSZW5kZXJidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZGVwdGhCdWZmZXIg
PSBnbC5jcmVhdGVSZW5kZXJidWZmZXIoKSBpcyBub24tbnVsbC4KK1BBU1MgZ2V0RXJyb3Igd2Fz
IGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnbC5jaGVja0ZyYW1lYnVmZmVyU3Rh
dHVzKGdsLkZSQU1FQlVGRkVSKSBzaG91bGQgYmUgRlJBTUVCVUZGRVJfQ09NUExFVEUgd2FzIEZS
QU1FQlVGRkVSX0NPTVBMRVRFCitQQVNTIGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJB
TUVCVUZGRVIpIHNob3VsZCBiZSBGUkFNRUJVRkZFUl9JTkNPTVBMRVRFX0RJTUVOU0lPTlMgd2Fz
IEZSQU1FQlVGRkVSX0lOQ09NUExFVEVfRElNRU5TSU9OUyBvciBGUkFNRUJVRkZFUl9VTlNVUFBP
UlRFRAorCitEcmF3aW5nIG9yIHJlYWRpbmcgZnJvbSBhbiBpbmNvbXBsZXRlIGZyYW1lYnVmZmVy
IHNob3VsZCBnZW5lcmF0ZSBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTgorUEFTUyBnZXRF
cnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IE5PX0VSUk9SIDogCitQQVNTIGdldEVycm9yIHdhcyBl
eHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiBkcmF3QXJyYXlz
IHdpdGggaW5jb21wbGV0ZSBmcmFtZWJ1ZmZlcgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQg
dmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogcmVhZFBpeGVscyBmcm9tIGlu
Y29tcGxldGUgZnJhbWVidWZmZXIKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJ
TlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IGNvcHlUZXhJbWFnZTJEIGZyb20gaW5jb21w
bGV0ZSBmcmFtZWJ1ZmZlcgorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFM
SURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogY29weVRleFN1YkltYWdlMkQgZnJvbSBpbmNvbXBs
ZXRlIGZyYW1lYnVmZmVyCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJ
RF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiBjbGVhciB3aXRoIGluY29tcGxldGUgZnJhbWVidWZm
ZXIKK1BBU1MgZmJvMiA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkgaXMgbm9uLW51bGwuCitQQVNT
IGdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHNob3VsZCBiZSBGUkFN
RUJVRkZFUl9JTkNPTVBMRVRFX01JU1NJTkdfQVRUQUNITUVOVCB3YXMgRlJBTUVCVUZGRVJfSU5D
T01QTEVURV9NSVNTSU5HX0FUVEFDSE1FTlQgb3IgRlJBTUVCVUZGRVJfVU5TVVBQT1JURUQKKwor
RHJhd2luZyBvciByZWFkaW5nIGZyb20gYW4gaW5jb21wbGV0ZSBmcmFtZWJ1ZmZlciBzaG91bGQg
Z2VuZXJhdGUgSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04KK1BBU1MgZ2V0RXJyb3Igd2Fz
IGV4cGVjdGVkIHZhbHVlOiBOT19FUlJPUiA6IAorUEFTUyBnZXRFcnJvciB3YXMgZXhwZWN0ZWQg
dmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogZHJhd0FycmF5cyB3aXRoIGlu
Y29tcGxldGUgZnJhbWVidWZmZXIKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJ
TlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IHJlYWRQaXhlbHMgZnJvbSBpbmNvbXBsZXRl
IGZyYW1lYnVmZmVyCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9P
UEVSQVRJT04gOiBjb3B5VGV4SW1hZ2UyRCBmcm9tIGluY29tcGxldGUgZnJhbWVidWZmZXIKK1BB
U1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElEX09QRVJBVElPTiA6IGNvcHlU
ZXhTdWJJbWFnZTJEIGZyb20gaW5jb21wbGV0ZSBmcmFtZWJ1ZmZlcgorUEFTUyBnZXRFcnJvciB3
YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogY2xlYXIg
d2l0aCBpbmNvbXBsZXRlIGZyYW1lYnVmZmVyCitQQVNTIGNvbG9yQnVmZmVyID0gZ2wuY3JlYXRl
UmVuZGVyYnVmZmVyKCkgaXMgbm9uLW51bGwuCisKK0RyYXdpbmcgb3IgcmVhZGluZyBmcm9tIGFu
IGluY29tcGxldGUgZnJhbWVidWZmZXIgc2hvdWxkIGdlbmVyYXRlIElOVkFMSURfRlJBTUVCVUZG
RVJfT1BFUkFUSU9OCitQQVNTIGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogTk9fRVJST1Ig
OiAKK1BBU1MgZ2V0RXJyb3Igd2FzIGV4cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVS
X09QRVJBVElPTiA6IGRyYXdBcnJheXMgd2l0aCBpbmNvbXBsZXRlIGZyYW1lYnVmZmVyCitQQVNT
IGdldEVycm9yIHdhcyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJ
T04gOiByZWFkUGl4ZWxzIGZyb20gaW5jb21wbGV0ZSBmcmFtZWJ1ZmZlcgorUEFTUyBnZXRFcnJv
ciB3YXMgZXhwZWN0ZWQgdmFsdWU6IElOVkFMSURfRlJBTUVCVUZGRVJfT1BFUkFUSU9OIDogY29w
eVRleEltYWdlMkQgZnJvbSBpbmNvbXBsZXRlIGZyYW1lYnVmZmVyCitQQVNTIGdldEVycm9yIHdh
cyBleHBlY3RlZCB2YWx1ZTogSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gOiBjb3B5VGV4
U3ViSW1hZ2UyRCBmcm9tIGluY29tcGxldGUgZnJhbWVidWZmZXIKK1BBU1MgZ2V0RXJyb3Igd2Fz
IGV4cGVjdGVkIHZhbHVlOiBJTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiA6IGNsZWFyIHdp
dGggaW5jb21wbGV0ZSBmcmFtZWJ1ZmZlcgogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1
ZQogCiBURVNUIENPTVBMRVRFCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2NhbnZhcy93ZWJnbC9m
cmFtZWJ1ZmZlci1vYmplY3QtYXR0YWNobWVudC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL2Zhc3QvY2FudmFzL3dlYmdsL2ZyYW1lYnVmZmVyLW9iamVjdC1hdHRhY2htZW50Lmh0bWwJ
KHJldmlzaW9uIDEwMjYxMikKKysrIExheW91dFRlc3RzL2Zhc3QvY2FudmFzL3dlYmdsL2ZyYW1l
YnVmZmVyLW9iamVjdC1hdHRhY2htZW50Lmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTEsNDAgKzEs
NjMgQEAKKzwhRE9DVFlQRSBodG1sPgogPGh0bWw+CiA8aGVhZD4KKzxtZXRhIGNoYXJzZXQ9InV0
Zi04Ij4KIDxzY3JpcHQgc3JjPSIuLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwv
c2NyaXB0PgogPHNjcmlwdCBzcmM9InJlc291cmNlcy93ZWJnbC10ZXN0LmpzIj48L3NjcmlwdD4K
KzxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvd2ViZ2wtdGVzdC11dGlscy5qcyI+PC9zY3JpcHQ+CiA8
L2hlYWQ+CiA8Ym9keT4KIDxkaXYgaWQ9ImRlc2NyaXB0aW9uIj48L2Rpdj4KIDxkaXYgaWQ9ImNv
bnNvbGUiPjwvZGl2PgogCiA8c2NyaXB0PgotCit2YXIgd3R1ID0gV2ViR0xUZXN0VXRpbHM7CiB2
YXIgZ2w7CiB2YXIgZmJvOwogdmFyIGRlcHRoQnVmZmVyOwogdmFyIHN0ZW5jaWxCdWZmZXI7CiB2
YXIgZGVwdGhTdGVuY2lsQnVmZmVyOwogdmFyIGNvbG9yQnVmZmVyOwotdmFyIHdpZHRoID0gMjsK
LXZhciBoZWlnaHQgPSAyOwordmFyIHdpZHRoOwordmFyIGhlaWdodDsKKworY29uc3QgQUxMT1df
Q09NUExFVEUgICAgICAgICAgICAgID0gMHgwMTsKK2NvbnN0IEFMTE9XX1VOU1VQUE9SVEVEICAg
ICAgICAgICA9IDB4MDI7Citjb25zdCBBTExPV19JTkNPTVBMRVRFX0FUVEFDSE1FTlQgPSAweDA0
OworCitmdW5jdGlvbiBjaGVja0ZyYW1lYnVmZmVyRm9yQWxsb3dlZFN0YXR1c2VzKGFsbG93ZWRT
dGF0dXNlcykKK3sKKyAgICAvLyBJZiB0aGUgZnJhbWVidWZmZXIgaXMgaW4gYW4gZXJyb3Igc3Rh
dGUgZm9yIG11bHRpcGxlIHJlYXNvbnMsCisgICAgLy8gd2UgY2FuJ3QgZ3VhcmFudGVlIHdoaWNo
IG9uZSB3aWxsIGJlIHJlcG9ydGVkLgorICAgIHZhciBzdGF0dXMgPSBnbC5jaGVja0ZyYW1lYnVm
ZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKTsKKyAgICB2YXIgc3RhdHVzQWxsb3dlZCA9ICgoYWxs
b3dlZFN0YXR1c2VzICYgQUxMT1dfQ09NUExFVEUpICYmIChzdGF0dXMgPT0gZ2wuRlJBTUVCVUZG
RVJfQ09NUExFVEUpKSB8fAorICAgICAgICAgICAgICAgICAgICAgICAgKChhbGxvd2VkU3RhdHVz
ZXMgJiBBTExPV19VTlNVUFBPUlRFRCkgJiYgKHN0YXR1cyA9PSBnbC5GUkFNRUJVRkZFUl9VTlNV
UFBPUlRFRCkpIHx8CisgICAgICAgICAgICAgICAgICAgICAgICAoKGFsbG93ZWRTdGF0dXNlcyAm
IEFMTE9XX0lOQ09NUExFVEVfQVRUQUNITUVOVCkgJiYgKHN0YXR1cyA9PSBnbC5GUkFNRUJVRkZF
Ul9JTkNPTVBMRVRFX0FUVEFDSE1FTlQpKTsKKyAgICB2YXIgbXNnID0gImdsLmNoZWNrRnJhbWVi
dWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIHJldHVybmVkICIgKyBzdGF0dXM7CisgICAgaWYg
KHN0YXR1c0FsbG93ZWQpCisgICAgICAgIHRlc3RQYXNzZWQobXNnKTsKKyAgICBlbHNlCisgICAg
ICAgIHRlc3RGYWlsZWQobXNnKTsKK30KIAotZnVuY3Rpb24gdGVzdEF0dGFjaG1lbnQoYXR0YWNo
bWVudCwgYnVmZmVyLCBpc0NvbmZsaWN0ZWQpCitmdW5jdGlvbiB0ZXN0QXR0YWNobWVudChhdHRh
Y2htZW50LCBidWZmZXIsIGFsbG93ZWRTdGF0dXNlcykKIHsKICAgICBzaG91bGRCZU5vbk51bGwo
ImZibyA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkiKTsKICAgICBnbC5iaW5kRnJhbWVidWZmZXIo
Z2wuRlJBTUVCVUZGRVIsIGZibyk7CiAgICAgZ2wuZnJhbWVidWZmZXJSZW5kZXJidWZmZXIoZ2wu
RlJBTUVCVUZGRVIsIGdsLkNPTE9SX0FUVEFDSE1FTlQwLCBnbC5SRU5ERVJCVUZGRVIsIGNvbG9y
QnVmZmVyKTsKICAgICBnbC5mcmFtZWJ1ZmZlclJlbmRlcmJ1ZmZlcihnbC5GUkFNRUJVRkZFUiwg
YXR0YWNobWVudCwgZ2wuUkVOREVSQlVGRkVSLCBidWZmZXIpOwogICAgIGdsRXJyb3JTaG91bGRC
ZShnbCwgZ2wuTk9fRVJST1IpOwotICAgIGlmIChpc0NvbmZsaWN0ZWQpIHsKLSAgICAgICAgc2hv
dWxkQmUoImdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoZ2wuRlJBTUVCVUZGRVIpIiwgImdsLkZS
QU1FQlVGRkVSX1VOU1VQUE9SVEVEIik7CisgICAgY2hlY2tGcmFtZWJ1ZmZlckZvckFsbG93ZWRT
dGF0dXNlcyhhbGxvd2VkU3RhdHVzZXMpOworICAgIGlmICgoYWxsb3dlZFN0YXR1c2VzICYgQUxM
T1dfQ09NUExFVEUpID09IDApIHsKICAgICAgICAgZ2wuY2xlYXIoZ2wuQ09MT1JfQlVGRkVSX0JJ
VCk7CiAgICAgICAgIGdsRXJyb3JTaG91bGRCZShnbCwgZ2wuSU5WQUxJRF9GUkFNRUJVRkZFUl9P
UEVSQVRJT04pOwogICAgICAgICBnbC5yZWFkUGl4ZWxzKDAsIDAsIHdpZHRoLCBoZWlnaHQsIGds
LlJHQkEsIGdsLlVOU0lHTkVEX0JZVEUsIG5ldyBVaW50OEFycmF5KHdpZHRoICogaGVpZ2h0ICog
NCkpOwogICAgICAgICBnbEVycm9yU2hvdWxkQmUoZ2wsIGdsLklOVkFMSURfRlJBTUVCVUZGRVJf
T1BFUkFUSU9OKTsKICAgICB9CisgICAgZ2wuZGVsZXRlRnJhbWVidWZmZXIoZmJvKTsKIH0KIAot
ZnVuY3Rpb24gdGVzdEF0dGFjaG1lbnRzKGF0dGFjaG1lbnQwLCBidWZmZXIwLCBhdHRhY2htZW50
MSwgYnVmZmVyMSwgaXNDb25mbGljdGVkKQorZnVuY3Rpb24gdGVzdEF0dGFjaG1lbnRzKGF0dGFj
aG1lbnQwLCBidWZmZXIwLCBhdHRhY2htZW50MSwgYnVmZmVyMSwgYWxsb3dlZFN0YXR1c2VzKQog
ewogICAgIHNob3VsZEJlTm9uTnVsbCgiZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSIpOwog
ICAgIGdsLmJpbmRGcmFtZWJ1ZmZlcihnbC5GUkFNRUJVRkZFUiwgZmJvKTsKQEAgLTQzLDEwMiAr
NjYsMzQ3IEBAIGZ1bmN0aW9uIHRlc3RBdHRhY2htZW50cyhhdHRhY2htZW50MCwgYnUKICAgICBn
bEVycm9yU2hvdWxkQmUoZ2wsIGdsLk5PX0VSUk9SKTsKICAgICBnbC5mcmFtZWJ1ZmZlclJlbmRl
cmJ1ZmZlcihnbC5GUkFNRUJVRkZFUiwgYXR0YWNobWVudDEsIGdsLlJFTkRFUkJVRkZFUiwgYnVm
ZmVyMSk7CiAgICAgZ2xFcnJvclNob3VsZEJlKGdsLCBnbC5OT19FUlJPUik7Ci0gICAgaWYgKGlz
Q29uZmxpY3RlZCkKLSAgICAgICAgc2hvdWxkQmUoImdsLmNoZWNrRnJhbWVidWZmZXJTdGF0dXMo
Z2wuRlJBTUVCVUZGRVIpIiwgImdsLkZSQU1FQlVGRkVSX1VOU1VQUE9SVEVEIik7CisgICAgY2hl
Y2tGcmFtZWJ1ZmZlckZvckFsbG93ZWRTdGF0dXNlcyhhbGxvd2VkU3RhdHVzZXMpOworICAgIGds
LmRlbGV0ZUZyYW1lYnVmZmVyKGZibyk7CiB9CiAKLWZ1bmN0aW9uIHRlc3RDb2xvclJlbmRlcmJ1
ZmZlcihpbnRlcm5hbGZvcm1hdCkKK2Z1bmN0aW9uIHRlc3RDb2xvclJlbmRlcmJ1ZmZlcihpbnRl
cm5hbGZvcm1hdCwgYWxsb3dlZFN0YXR1c2VzKQogewogICAgIHNob3VsZEJlTm9uTnVsbCgiY29s
b3JCdWZmZXIgPSBnbC5jcmVhdGVSZW5kZXJidWZmZXIoKSIpOwogICAgIGdsLmJpbmRSZW5kZXJi
dWZmZXIoZ2wuUkVOREVSQlVGRkVSLCBjb2xvckJ1ZmZlcik7CiAgICAgZ2wucmVuZGVyYnVmZmVy
U3RvcmFnZShnbC5SRU5ERVJCVUZGRVIsIGludGVybmFsZm9ybWF0LCB3aWR0aCwgaGVpZ2h0KTsK
ICAgICBnbEVycm9yU2hvdWxkQmUoZ2wsIGdsLk5PX0VSUk9SKTsKLSAgICB0ZXN0QXR0YWNobWVu
dChnbC5DT0xPUl9BVFRBQ0hNRU5UMCwgY29sb3JCdWZmZXIsIGZhbHNlKTsKKyAgICB0ZXN0QXR0
YWNobWVudChnbC5DT0xPUl9BVFRBQ0hNRU5UMCwgY29sb3JCdWZmZXIsIGFsbG93ZWRTdGF0dXNl
cyk7CiB9CiAKLWZ1bmN0aW9uIHRlc3REZXB0aFN0ZW5jaWxSZW5kZXJidWZmZXIoKQorZnVuY3Rp
b24gdGVzdERlcHRoU3RlbmNpbFJlbmRlcmJ1ZmZlcihhbGxvd2VkU3RhdHVzZXMpCiB7CiAgICAg
c2hvdWxkQmVOb25OdWxsKCJkZXB0aFN0ZW5jaWxCdWZmZXIgPSBnbC5jcmVhdGVSZW5kZXJidWZm
ZXIoKSIpOwogICAgIGdsLmJpbmRSZW5kZXJidWZmZXIoZ2wuUkVOREVSQlVGRkVSLCBkZXB0aFN0
ZW5jaWxCdWZmZXIpOwogICAgIGdsLnJlbmRlcmJ1ZmZlclN0b3JhZ2UoZ2wuUkVOREVSQlVGRkVS
LCBnbC5ERVBUSF9TVEVOQ0lMLCB3aWR0aCwgaGVpZ2h0KTsKICAgICBnbEVycm9yU2hvdWxkQmUo
Z2wsIGdsLk5PX0VSUk9SKTsKLSAgICBzaG91bGRCZSgiZ2wuZ2V0UmVuZGVyYnVmZmVyUGFyYW1l
dGVyKGdsLlJFTkRFUkJVRkZFUiwgZ2wuUkVOREVSQlVGRkVSX1dJRFRIKSIsICJ3aWR0aCIpOwot
ICAgIHNob3VsZEJlKCJnbC5nZXRSZW5kZXJidWZmZXJQYXJhbWV0ZXIoZ2wuUkVOREVSQlVGRkVS
LCBnbC5SRU5ERVJCVUZGRVJfSEVJR0hUKSIsICJoZWlnaHQiKTsKKworICAgIC8vIE9wZW5HTCBp
dHNlbGYgZG9lc24ndCBzZWVtIHRvIGd1YXJhbnRlZSB0aGF0IGUuZy4gYSAyIHggMAorICAgIC8v
IHJlbmRlcmJ1ZmZlciB3aWxsIHJlcG9ydCAyIGZvciBpdHMgd2lkdGggd2hlbiBxdWVyaWVkLgor
ICAgIGlmICghKGhlaWdodCA9PSAwICYmIHdpZHRoID4gMCkpCisgICAgICAgIHNob3VsZEJlKCJn
bC5nZXRSZW5kZXJidWZmZXJQYXJhbWV0ZXIoZ2wuUkVOREVSQlVGRkVSLCBnbC5SRU5ERVJCVUZG
RVJfV0lEVEgpIiwgIndpZHRoIik7CisgICAgaWYgKCEod2lkdGggPT0gMCAmJiBoZWlnaHQgPiAw
KSkKKyAgICAgICAgc2hvdWxkQmUoImdsLmdldFJlbmRlcmJ1ZmZlclBhcmFtZXRlcihnbC5SRU5E
RVJCVUZGRVIsIGdsLlJFTkRFUkJVRkZFUl9IRUlHSFQpIiwgImhlaWdodCIpOwogICAgIHNob3Vs
ZEJlKCJnbC5nZXRSZW5kZXJidWZmZXJQYXJhbWV0ZXIoZ2wuUkVOREVSQlVGRkVSLCBnbC5SRU5E
RVJCVUZGRVJfSU5URVJOQUxfRk9STUFUKSIsICJnbC5ERVBUSF9TVEVOQ0lMIik7CiAgICAgc2hv
dWxkQmUoImdsLmdldFJlbmRlcmJ1ZmZlclBhcmFtZXRlcihnbC5SRU5ERVJCVUZGRVIsIGdsLlJF
TkRFUkJVRkZFUl9SRURfU0laRSkiLCAiMCIpOwogICAgIHNob3VsZEJlKCJnbC5nZXRSZW5kZXJi
dWZmZXJQYXJhbWV0ZXIoZ2wuUkVOREVSQlVGRkVSLCBnbC5SRU5ERVJCVUZGRVJfR1JFRU5fU0la
RSkiLCAiMCIpOwogICAgIHNob3VsZEJlKCJnbC5nZXRSZW5kZXJidWZmZXJQYXJhbWV0ZXIoZ2wu
UkVOREVSQlVGRkVSLCBnbC5SRU5ERVJCVUZGRVJfQkxVRV9TSVpFKSIsICIwIik7CiAgICAgc2hv
dWxkQmUoImdsLmdldFJlbmRlcmJ1ZmZlclBhcmFtZXRlcihnbC5SRU5ERVJCVUZGRVIsIGdsLlJF
TkRFUkJVRkZFUl9BTFBIQV9TSVpFKSIsICIwIik7Ci0gICAgc2hvdWxkQmVUcnVlKCJnbC5nZXRS
ZW5kZXJidWZmZXJQYXJhbWV0ZXIoZ2wuUkVOREVSQlVGRkVSLCBnbC5SRU5ERVJCVUZGRVJfREVQ
VEhfU0laRSkgPiAwIik7Ci0gICAgc2hvdWxkQmVUcnVlKCJnbC5nZXRSZW5kZXJidWZmZXJQYXJh
bWV0ZXIoZ2wuUkVOREVSQlVGRkVSLCBnbC5SRU5ERVJCVUZGRVJfU1RFTkNJTF9TSVpFKSA+IDAi
KTsKKyAgICAvLyBBdm9pZCB2ZXJpZnlpbmcgdGhlc2UgZm9yIHplcm8tc2l6ZWQgcmVuZGVyYnVm
ZmVycyBmb3IgdGhlIHRpbWUKKyAgICAvLyBiZWluZyBzaW5jZSBpdCBhcHBlYXJzIHRoYXQgZXZl
biBPcGVuR0wgZG9lc24ndCBndWFyYW50ZWUgdGhlbS4KKyAgICBpZiAod2lkdGggPiAwICYmIGhl
aWdodCA+IDApIHsKKyAgICAgICAgc2hvdWxkQmVUcnVlKCJnbC5nZXRSZW5kZXJidWZmZXJQYXJh
bWV0ZXIoZ2wuUkVOREVSQlVGRkVSLCBnbC5SRU5ERVJCVUZGRVJfREVQVEhfU0laRSkgPiAwIik7
CisgICAgICAgIHNob3VsZEJlVHJ1ZSgiZ2wuZ2V0UmVuZGVyYnVmZmVyUGFyYW1ldGVyKGdsLlJF
TkRFUkJVRkZFUiwgZ2wuUkVOREVSQlVGRkVSX1NURU5DSUxfU0laRSkgPiAwIik7CisgICAgfQog
ICAgIGdsRXJyb3JTaG91bGRCZShnbCwgZ2wuTk9fRVJST1IpOwotICAgIHRlc3RBdHRhY2htZW50
KGdsLkRFUFRIX1NURU5DSUxfQVRUQUNITUVOVCwgZGVwdGhTdGVuY2lsQnVmZmVyLCBmYWxzZSk7
CisgICAgdGVzdEF0dGFjaG1lbnQoZ2wuREVQVEhfU1RFTkNJTF9BVFRBQ0hNRU5ULCBkZXB0aFN0
ZW5jaWxCdWZmZXIsIGFsbG93ZWRTdGF0dXNlcyk7CiB9CiAKIGRlc2NyaXB0aW9uKCJUZXN0IGZy
YW1lYnVmZmVyIG9iamVjdCBhdHRhY2htZW50IGJlaGF2aW9ycyIpOwogCi1kZWJ1ZygiQ3JlYXRl
IHJlbmRlcmJ1ZmZlcnMiKTsKLXNob3VsZEJlTm9uTnVsbCgiZ2wgPSBjcmVhdGUzRENvbnRleHQo
KSIpOwotc2hvdWxkQmVOb25OdWxsKCJjb2xvckJ1ZmZlciA9IGdsLmNyZWF0ZVJlbmRlcmJ1ZmZl
cigpIik7Ci1nbC5iaW5kUmVuZGVyYnVmZmVyKGdsLlJFTkRFUkJVRkZFUiwgY29sb3JCdWZmZXIp
OwotZ2wucmVuZGVyYnVmZmVyU3RvcmFnZShnbC5SRU5ERVJCVUZGRVIsIGdsLlJHQkE0LCB3aWR0
aCwgaGVpZ2h0KTsKLWdsRXJyb3JTaG91bGRCZShnbCwgZ2wuTk9fRVJST1IpOwotc2hvdWxkQmVO
b25OdWxsKCJkZXB0aEJ1ZmZlciA9IGdsLmNyZWF0ZVJlbmRlcmJ1ZmZlcigpIik7Ci1nbC5iaW5k
UmVuZGVyYnVmZmVyKGdsLlJFTkRFUkJVRkZFUiwgZGVwdGhCdWZmZXIpOwotZ2wucmVuZGVyYnVm
ZmVyU3RvcmFnZShnbC5SRU5ERVJCVUZGRVIsIGdsLkRFUFRIX0NPTVBPTkVOVDE2LCB3aWR0aCwg
aGVpZ2h0KTsKLWdsRXJyb3JTaG91bGRCZShnbCwgZ2wuTk9fRVJST1IpOwotc2hvdWxkQmVOb25O
dWxsKCJzdGVuY2lsQnVmZmVyID0gZ2wuY3JlYXRlUmVuZGVyYnVmZmVyKCkiKTsKLWdsLmJpbmRS
ZW5kZXJidWZmZXIoZ2wuUkVOREVSQlVGRkVSLCBzdGVuY2lsQnVmZmVyKTsKLWdsLnJlbmRlcmJ1
ZmZlclN0b3JhZ2UoZ2wuUkVOREVSQlVGRkVSLCBnbC5TVEVOQ0lMX0lOREVYOCwgd2lkdGgsIGhl
aWdodCk7Ci1nbEVycm9yU2hvdWxkQmUoZ2wsIGdsLk5PX0VSUk9SKTsKLXNob3VsZEJlTm9uTnVs
bCgiZGVwdGhTdGVuY2lsQnVmZmVyID0gZ2wuY3JlYXRlUmVuZGVyYnVmZmVyKCkiKTsKLWdsLmJp
bmRSZW5kZXJidWZmZXIoZ2wuUkVOREVSQlVGRkVSLCBkZXB0aFN0ZW5jaWxCdWZmZXIpOwotZ2wu
cmVuZGVyYnVmZmVyU3RvcmFnZShnbC5SRU5ERVJCVUZGRVIsIGdsLkRFUFRIX1NURU5DSUwsIHdp
ZHRoLCBoZWlnaHQpOwotZ2xFcnJvclNob3VsZEJlKGdsLCBnbC5OT19FUlJPUik7Ci0KLWRlYnVn
KCJBdHRhY2ggZGVwdGggdXNpbmcgREVQVEhfQVRUQUNITUVOVCIpOwotdGVzdEF0dGFjaG1lbnQo
Z2wuREVQVEhfQVRUQUNITUVOVCwgZGVwdGhCdWZmZXIsIGZhbHNlKTsKLWRlYnVnKCJBdHRhY2gg
ZGVwdGggdXNpbmcgU1RFTkNJTF9BVFRBQ0hNRU5UIik7Ci10ZXN0QXR0YWNobWVudChnbC5TVEVO
Q0lMX0FUVEFDSE1FTlQsIGRlcHRoQnVmZmVyLCB0cnVlKTsKLWRlYnVnKCJBdHRhY2ggZGVwdGgg
dXNpbmcgREVQVEhfU1RFTkNJTF9BVFRBQ0hNRU5UIik7Ci10ZXN0QXR0YWNobWVudChnbC5ERVBU
SF9TVEVOQ0lMX0FUVEFDSE1FTlQsIGRlcHRoQnVmZmVyLCB0cnVlKTsKLWRlYnVnKCJBdHRhY2gg
c3RlbmNpbCB1c2luZyBTVEVOQ0lMX0FUVEFDSE1FTlQiKTsKLXRlc3RBdHRhY2htZW50KGdsLlNU
RU5DSUxfQVRUQUNITUVOVCwgc3RlbmNpbEJ1ZmZlciwgZmFsc2UpOwotZGVidWcoIkF0dGFjaCBz
dGVuY2lsIHVzaW5nIERFUFRIX0FUVEFDSE1FTlQiKTsKLXRlc3RBdHRhY2htZW50KGdsLkRFUFRI
X0FUVEFDSE1FTlQsIHN0ZW5jaWxCdWZmZXIsIHRydWUpOwotZGVidWcoIkF0dGFjaCBzdGVuY2ls
IHVzaW5nIERFUFRIX1NURU5DSUxfQVRUQUNITUVOVCIpOwotdGVzdEF0dGFjaG1lbnQoZ2wuREVQ
VEhfU1RFTkNJTF9BVFRBQ0hNRU5ULCBzdGVuY2lsQnVmZmVyLCB0cnVlKTsKLWRlYnVnKCJBdHRh
Y2ggZGVwdGhTdGVuY2lsIHVzaW5nIERFUFRIX1NURU5DSUxfQVRUQUNITUVOVCIpOwotdGVzdEF0
dGFjaG1lbnQoZ2wuREVQVEhfU1RFTkNJTF9BVFRBQ0hNRU5ULCBkZXB0aFN0ZW5jaWxCdWZmZXIs
IGZhbHNlKTsKLWRlYnVnKCJBdHRhY2ggZGVwdGhTdGVuY2lsIHVzaW5nIERFUFRIX0FUVEFDSE1F
TlQiKTsKLXRlc3RBdHRhY2htZW50KGdsLkRFUFRIX0FUVEFDSE1FTlQsIGRlcHRoU3RlbmNpbEJ1
ZmZlciwgdHJ1ZSk7Ci1kZWJ1ZygiQXR0YWNoIGRlcHRoU3RlbmNpbCB1c2luZyBTVEVOQ0lMX0FU
VEFDSE1FTlQiKTsKLXRlc3RBdHRhY2htZW50KGdsLlNURU5DSUxfQVRUQUNITUVOVCwgZGVwdGhT
dGVuY2lsQnVmZmVyLCB0cnVlKTsKLQotZGVidWcoIkF0dGFjaCBkZXB0aCwgdGhlbiBzdGVuY2ls
LCBjYXVzaW5nIGNvbmZsaWN0Iik7Ci10ZXN0QXR0YWNobWVudHMoZ2wuREVQVEhfQVRUQUNITUVO
VCwgZGVwdGhCdWZmZXIsIGdsLlNURU5DSUxfQVRUQUNITUVOVCwgc3RlbmNpbEJ1ZmZlciwgdHJ1
ZSk7Ci1kZWJ1ZygiQXR0YWNoIHN0ZW5jaWwsIHRoZW4gZGVwdGgsIGNhdXNpbmcgY29uZmxpY3Qi
KTsKLXRlc3RBdHRhY2htZW50cyhnbC5TVEVOQ0lMX0FUVEFDSE1FTlQsIHN0ZW5jaWxCdWZmZXIs
IGdsLkRFUFRIX0FUVEFDSE1FTlQsIGRlcHRoQnVmZmVyLCB0cnVlKTsKLWRlYnVnKCJBdHRhY2gg
ZGVwdGgsIHRoZW4gZGVwdGhTdGVuY2lsLCBjYXVzaW5nIGNvbmZsaWN0Iik7Ci10ZXN0QXR0YWNo
bWVudHMoZ2wuREVQVEhfQVRUQUNITUVOVCwgZGVwdGhCdWZmZXIsIGdsLkRFUFRIX1NURU5DSUxf
QVRUQUNITUVOVCwgZGVwdGhTdGVuY2lsQnVmZmVyLCB0cnVlKTsKLWRlYnVnKCJBdHRhY2ggZGVw
dGhTdGVuY2lsLCB0aGVuIGRlcHRoLCBjYXVzaW5nIGNvbmZsaWN0Iik7Ci10ZXN0QXR0YWNobWVu
dHMoZ2wuREVQVEhfU1RFTkNJTF9BVFRBQ0hNRU5ULCBkZXB0aFN0ZW5jaWxCdWZmZXIsIGdsLkRF
UFRIX0FUVEFDSE1FTlQsIGRlcHRoQnVmZmVyLCB0cnVlKTsKLWRlYnVnKCJBdHRhY2ggc3RlbmNp
bCwgdGhlbiBkZXB0aFN0ZW5jaWwsIGNhdXNpbmcgY29uZmxpY3QiKTsKLXRlc3RBdHRhY2htZW50
cyhnbC5ERVBUSF9BVFRBQ0hNRU5ULCBkZXB0aEJ1ZmZlciwgZ2wuREVQVEhfU1RFTkNJTF9BVFRB
Q0hNRU5ULCBkZXB0aFN0ZW5jaWxCdWZmZXIsIHRydWUpOwotZGVidWcoIkF0dGFjaCBkZXB0aFN0
ZW5jaWwsIHRoZW4gc3RlbmNpbCwgY2F1c2luZyBjb25mbGljdCIpOwotdGVzdEF0dGFjaG1lbnRz
KGdsLkRFUFRIX1NURU5DSUxfQVRUQUNITUVOVCwgZGVwdGhTdGVuY2lsQnVmZmVyLCBnbC5TVEVO
Q0lMX0FUVEFDSE1FTlQsIHN0ZW5jaWxCdWZmZXIsIHRydWUpOwotCi1kZWJ1ZygiQXR0YWNoIGNv
bG9yIHJlbmRlcmJ1ZmZlciB3aXRoIGludGVybmFsZm9ybWF0ID09IFJHQkE0Iik7Ci10ZXN0Q29s
b3JSZW5kZXJidWZmZXIoZ2wuUkdCQTQpOworZm9yICh3aWR0aCA9IDA7IHdpZHRoIDw9IDI7IHdp
ZHRoICs9IDIpCit7CisgICAgZm9yIChoZWlnaHQgPSAwOyBoZWlnaHQgPD0gMjsgaGVpZ2h0ICs9
IDIpCisgICAgeworICAgICAgICBkZWJ1ZygiIik7CisgICAgICAgIGRlYnVnKCJEaW1lbnNpb25z
ICIgKyB3aWR0aCArICIgeCAiICsgaGVpZ2h0KTsKKworICAgICAgICBkZWJ1ZygiQ3JlYXRlIHJl
bmRlcmJ1ZmZlcnMiKTsKKyAgICAgICAgc2hvdWxkQmVOb25OdWxsKCJnbCA9IGNyZWF0ZTNEQ29u
dGV4dCgpIik7CisgICAgICAgIHNob3VsZEJlTm9uTnVsbCgiY29sb3JCdWZmZXIgPSBnbC5jcmVh
dGVSZW5kZXJidWZmZXIoKSIpOworICAgICAgICBnbC5iaW5kUmVuZGVyYnVmZmVyKGdsLlJFTkRF
UkJVRkZFUiwgY29sb3JCdWZmZXIpOworICAgICAgICBnbC5yZW5kZXJidWZmZXJTdG9yYWdlKGds
LlJFTkRFUkJVRkZFUiwgZ2wuUkdCQTQsIHdpZHRoLCBoZWlnaHQpOworICAgICAgICBnbEVycm9y
U2hvdWxkQmUoZ2wsIGdsLk5PX0VSUk9SKTsKKyAgICAgICAgc2hvdWxkQmVOb25OdWxsKCJkZXB0
aEJ1ZmZlciA9IGdsLmNyZWF0ZVJlbmRlcmJ1ZmZlcigpIik7CisgICAgICAgIGdsLmJpbmRSZW5k
ZXJidWZmZXIoZ2wuUkVOREVSQlVGRkVSLCBkZXB0aEJ1ZmZlcik7CisgICAgICAgIGdsLnJlbmRl
cmJ1ZmZlclN0b3JhZ2UoZ2wuUkVOREVSQlVGRkVSLCBnbC5ERVBUSF9DT01QT05FTlQxNiwgd2lk
dGgsIGhlaWdodCk7CisgICAgICAgIGdsRXJyb3JTaG91bGRCZShnbCwgZ2wuTk9fRVJST1IpOwor
ICAgICAgICBzaG91bGRCZU5vbk51bGwoInN0ZW5jaWxCdWZmZXIgPSBnbC5jcmVhdGVSZW5kZXJi
dWZmZXIoKSIpOworICAgICAgICBnbC5iaW5kUmVuZGVyYnVmZmVyKGdsLlJFTkRFUkJVRkZFUiwg
c3RlbmNpbEJ1ZmZlcik7CisgICAgICAgIGdsLnJlbmRlcmJ1ZmZlclN0b3JhZ2UoZ2wuUkVOREVS
QlVGRkVSLCBnbC5TVEVOQ0lMX0lOREVYOCwgd2lkdGgsIGhlaWdodCk7CisgICAgICAgIGdsRXJy
b3JTaG91bGRCZShnbCwgZ2wuTk9fRVJST1IpOworICAgICAgICBzaG91bGRCZU5vbk51bGwoImRl
cHRoU3RlbmNpbEJ1ZmZlciA9IGdsLmNyZWF0ZVJlbmRlcmJ1ZmZlcigpIik7CisgICAgICAgIGds
LmJpbmRSZW5kZXJidWZmZXIoZ2wuUkVOREVSQlVGRkVSLCBkZXB0aFN0ZW5jaWxCdWZmZXIpOwor
ICAgICAgICBnbC5yZW5kZXJidWZmZXJTdG9yYWdlKGdsLlJFTkRFUkJVRkZFUiwgZ2wuREVQVEhf
U1RFTkNJTCwgd2lkdGgsIGhlaWdodCk7CisgICAgICAgIGdsRXJyb3JTaG91bGRCZShnbCwgZ2wu
Tk9fRVJST1IpOworCisgICAgICAgIHZhciBhbGxvd2VkU3RhdHVzRm9yR29vZENhc2UKKyAgICAg
ICAgICAgID0gKHdpZHRoID09IDAgfHwgaGVpZ2h0ID09IDApID8gQUxMT1dfSU5DT01QTEVURV9B
VFRBQ0hNRU5UIDogQUxMT1dfQ09NUExFVEU7CisKKyAgICAgICAgLy8gc29tZSBjYXNlcyBpbnZv
bHZpbmcgc3RlbmNpbCBzZWVtIHRvIGJlIGltcGxlbWVudGF0aW9uLWRlcGVuZGVudAorICAgICAg
ICB2YXIgYWxsb3dlZFN0YXR1c0ZvckltcGxEZXBlbmRlbnRDYXNlID0gYWxsb3dlZFN0YXR1c0Zv
ckdvb2RDYXNlIHwgQUxMT1dfVU5TVVBQT1JURUQ7CisKKyAgICAgICAgZGVidWcoIkF0dGFjaCBk
ZXB0aCB1c2luZyBERVBUSF9BVFRBQ0hNRU5UIik7CisgICAgICAgIHRlc3RBdHRhY2htZW50KGds
LkRFUFRIX0FUVEFDSE1FTlQsIGRlcHRoQnVmZmVyLCBhbGxvd2VkU3RhdHVzRm9yR29vZENhc2Up
OworICAgICAgICBkZWJ1ZygiQXR0YWNoIGRlcHRoIHVzaW5nIFNURU5DSUxfQVRUQUNITUVOVCIp
OworICAgICAgICB0ZXN0QXR0YWNobWVudChnbC5TVEVOQ0lMX0FUVEFDSE1FTlQsIGRlcHRoQnVm
ZmVyLCBBTExPV19JTkNPTVBMRVRFX0FUVEFDSE1FTlQpOworICAgICAgICBkZWJ1ZygiQXR0YWNo
IGRlcHRoIHVzaW5nIERFUFRIX1NURU5DSUxfQVRUQUNITUVOVCIpOworICAgICAgICB0ZXN0QXR0
YWNobWVudChnbC5ERVBUSF9TVEVOQ0lMX0FUVEFDSE1FTlQsIGRlcHRoQnVmZmVyLCBBTExPV19J
TkNPTVBMRVRFX0FUVEFDSE1FTlQpOworICAgICAgICBkZWJ1ZygiQXR0YWNoIHN0ZW5jaWwgdXNp
bmcgU1RFTkNJTF9BVFRBQ0hNRU5UIik7CisgICAgICAgIHRlc3RBdHRhY2htZW50KGdsLlNURU5D
SUxfQVRUQUNITUVOVCwgc3RlbmNpbEJ1ZmZlciwgYWxsb3dlZFN0YXR1c0ZvckltcGxEZXBlbmRl
bnRDYXNlKTsKKyAgICAgICAgZGVidWcoIkF0dGFjaCBzdGVuY2lsIHVzaW5nIERFUFRIX0FUVEFD
SE1FTlQiKTsKKyAgICAgICAgdGVzdEF0dGFjaG1lbnQoZ2wuREVQVEhfQVRUQUNITUVOVCwgc3Rl
bmNpbEJ1ZmZlciwgQUxMT1dfSU5DT01QTEVURV9BVFRBQ0hNRU5UKTsKKyAgICAgICAgZGVidWco
IkF0dGFjaCBzdGVuY2lsIHVzaW5nIERFUFRIX1NURU5DSUxfQVRUQUNITUVOVCIpOworICAgICAg
ICB0ZXN0QXR0YWNobWVudChnbC5ERVBUSF9TVEVOQ0lMX0FUVEFDSE1FTlQsIHN0ZW5jaWxCdWZm
ZXIsIEFMTE9XX0lOQ09NUExFVEVfQVRUQUNITUVOVCk7CisgICAgICAgIGRlYnVnKCJBdHRhY2gg
ZGVwdGhTdGVuY2lsIHVzaW5nIERFUFRIX1NURU5DSUxfQVRUQUNITUVOVCIpOworICAgICAgICB0
ZXN0QXR0YWNobWVudChnbC5ERVBUSF9TVEVOQ0lMX0FUVEFDSE1FTlQsIGRlcHRoU3RlbmNpbEJ1
ZmZlciwgYWxsb3dlZFN0YXR1c0Zvckdvb2RDYXNlKTsKKyAgICAgICAgZGVidWcoIkF0dGFjaCBk
ZXB0aFN0ZW5jaWwgdXNpbmcgREVQVEhfQVRUQUNITUVOVCIpOworICAgICAgICB0ZXN0QXR0YWNo
bWVudChnbC5ERVBUSF9BVFRBQ0hNRU5ULCBkZXB0aFN0ZW5jaWxCdWZmZXIsIEFMTE9XX0lOQ09N
UExFVEVfQVRUQUNITUVOVCk7CisgICAgICAgIGRlYnVnKCJBdHRhY2ggZGVwdGhTdGVuY2lsIHVz
aW5nIFNURU5DSUxfQVRUQUNITUVOVCIpOworICAgICAgICB0ZXN0QXR0YWNobWVudChnbC5TVEVO
Q0lMX0FUVEFDSE1FTlQsIGRlcHRoU3RlbmNpbEJ1ZmZlciwgQUxMT1dfSU5DT01QTEVURV9BVFRB
Q0hNRU5UKTsKKworICAgICAgICB2YXIgYWxsb3dlZFN0YXR1c0ZvckNvbmZsaWN0ZWRBdHRhY2ht
ZW50CisgICAgICAgICAgICA9ICh3aWR0aCA9PSAwIHx8IGhlaWdodCA9PSAwKSA/IEFMTE9XX1VO
U1VQUE9SVEVEIHwgQUxMT1dfSU5DT01QTEVURV9BVFRBQ0hNRU5UCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICA6IEFMTE9XX1VOU1VQUE9SVEVEOworCisgICAgICAg
IGRlYnVnKCJBdHRhY2ggZGVwdGgsIHRoZW4gc3RlbmNpbCwgY2F1c2luZyBjb25mbGljdCIpOwor
ICAgICAgICB0ZXN0QXR0YWNobWVudHMoZ2wuREVQVEhfQVRUQUNITUVOVCwgZGVwdGhCdWZmZXIs
IGdsLlNURU5DSUxfQVRUQUNITUVOVCwgc3RlbmNpbEJ1ZmZlciwgYWxsb3dlZFN0YXR1c0ZvckNv
bmZsaWN0ZWRBdHRhY2htZW50KTsKKyAgICAgICAgZGVidWcoIkF0dGFjaCBzdGVuY2lsLCB0aGVu
IGRlcHRoLCBjYXVzaW5nIGNvbmZsaWN0Iik7CisgICAgICAgIHRlc3RBdHRhY2htZW50cyhnbC5T
VEVOQ0lMX0FUVEFDSE1FTlQsIHN0ZW5jaWxCdWZmZXIsIGdsLkRFUFRIX0FUVEFDSE1FTlQsIGRl
cHRoQnVmZmVyLCBhbGxvd2VkU3RhdHVzRm9yQ29uZmxpY3RlZEF0dGFjaG1lbnQpOworICAgICAg
ICBkZWJ1ZygiQXR0YWNoIGRlcHRoLCB0aGVuIGRlcHRoU3RlbmNpbCwgY2F1c2luZyBjb25mbGlj
dCIpOworICAgICAgICB0ZXN0QXR0YWNobWVudHMoZ2wuREVQVEhfQVRUQUNITUVOVCwgZGVwdGhC
dWZmZXIsIGdsLkRFUFRIX1NURU5DSUxfQVRUQUNITUVOVCwgZGVwdGhTdGVuY2lsQnVmZmVyLCBh
bGxvd2VkU3RhdHVzRm9yQ29uZmxpY3RlZEF0dGFjaG1lbnQpOworICAgICAgICBkZWJ1ZygiQXR0
YWNoIGRlcHRoU3RlbmNpbCwgdGhlbiBkZXB0aCwgY2F1c2luZyBjb25mbGljdCIpOworICAgICAg
ICB0ZXN0QXR0YWNobWVudHMoZ2wuREVQVEhfU1RFTkNJTF9BVFRBQ0hNRU5ULCBkZXB0aFN0ZW5j
aWxCdWZmZXIsIGdsLkRFUFRIX0FUVEFDSE1FTlQsIGRlcHRoQnVmZmVyLCBhbGxvd2VkU3RhdHVz
Rm9yQ29uZmxpY3RlZEF0dGFjaG1lbnQpOworICAgICAgICBkZWJ1ZygiQXR0YWNoIHN0ZW5jaWws
IHRoZW4gZGVwdGhTdGVuY2lsLCBjYXVzaW5nIGNvbmZsaWN0Iik7CisgICAgICAgIHRlc3RBdHRh
Y2htZW50cyhnbC5ERVBUSF9BVFRBQ0hNRU5ULCBkZXB0aEJ1ZmZlciwgZ2wuREVQVEhfU1RFTkNJ
TF9BVFRBQ0hNRU5ULCBkZXB0aFN0ZW5jaWxCdWZmZXIsIGFsbG93ZWRTdGF0dXNGb3JDb25mbGlj
dGVkQXR0YWNobWVudCk7CisgICAgICAgIGRlYnVnKCJBdHRhY2ggZGVwdGhTdGVuY2lsLCB0aGVu
IHN0ZW5jaWwsIGNhdXNpbmcgY29uZmxpY3QiKTsKKyAgICAgICAgdGVzdEF0dGFjaG1lbnRzKGds
LkRFUFRIX1NURU5DSUxfQVRUQUNITUVOVCwgZGVwdGhTdGVuY2lsQnVmZmVyLCBnbC5TVEVOQ0lM
X0FUVEFDSE1FTlQsIHN0ZW5jaWxCdWZmZXIsIGFsbG93ZWRTdGF0dXNGb3JDb25mbGljdGVkQXR0
YWNobWVudCk7CisKKyAgICAgICAgZGVidWcoIkF0dGFjaCBjb2xvciByZW5kZXJidWZmZXIgd2l0
aCBpbnRlcm5hbGZvcm1hdCA9PSBSR0JBNCIpOworICAgICAgICB0ZXN0Q29sb3JSZW5kZXJidWZm
ZXIoZ2wuUkdCQTQsIGFsbG93ZWRTdGF0dXNGb3JHb29kQ2FzZSk7CisKKyAgICAgICAgZGVidWco
IkF0dGFjaCBjb2xvciByZW5kZXJidWZmZXIgd2l0aCBpbnRlcm5hbGZvcm1hdCA9PSBSR0I1X0Ex
Iik7CisgICAgICAgIHRlc3RDb2xvclJlbmRlcmJ1ZmZlcihnbC5SR0I1X0ExLCBhbGxvd2VkU3Rh
dHVzRm9yR29vZENhc2UpOworCisgICAgICAgIGRlYnVnKCJBdHRhY2ggY29sb3IgcmVuZGVyYnVm
ZmVyIHdpdGggaW50ZXJuYWxmb3JtYXQgPT0gUkdCNTY1Iik7CisgICAgICAgIHRlc3RDb2xvclJl
bmRlcmJ1ZmZlcihnbC5SR0I1NjUsIGFsbG93ZWRTdGF0dXNGb3JHb29kQ2FzZSk7CisKKyAgICAg
ICAgZGVidWcoIkNyZWF0ZSBhbmQgYXR0YWNoIGRlcHRoU3RlbmNpbCByZW5kZXJidWZmZXIiKTsK
KyAgICAgICAgdGVzdERlcHRoU3RlbmNpbFJlbmRlcmJ1ZmZlcihhbGxvd2VkU3RhdHVzRm9yR29v
ZENhc2UpOworICAgIH0KK30KKworLy8gRGV0ZXJtaW5lIGlmIHdlIGNhbiBhdHRhY2ggYm90aCBj
b2xvciBhbmQgZGVwdGggb3IgY29sb3IgYW5kIGRlcHRoX3N0ZW5jaWwKK3ZhciBkZXB0aEZvcm1h
dDsKK3ZhciBkZXB0aEF0dGFjaG1lbnQ7CisKK2Z1bmN0aW9uIGNoZWNrVmFsaWRDb2xvckRlcHRo
Q29tYmluYXRpb24oKSB7CisgICAgc2hvdWxkQmVOb25OdWxsKCJmYm8gPSBnbC5jcmVhdGVGcmFt
ZWJ1ZmZlcigpIik7CisgICAgZ2wuYmluZEZyYW1lYnVmZmVyKGdsLkZSQU1FQlVGRkVSLCBmYm8p
OworICAgIHNob3VsZEJlTm9uTnVsbCgiY29sb3JCdWZmZXIgPSBnbC5jcmVhdGVSZW5kZXJidWZm
ZXIoKSIpOworICAgIGdsLmJpbmRSZW5kZXJidWZmZXIoZ2wuUkVOREVSQlVGRkVSLCBjb2xvckJ1
ZmZlcik7CisgICAgZ2wuZnJhbWVidWZmZXJSZW5kZXJidWZmZXIoCisgICAgICAgIGdsLkZSQU1F
QlVGRkVSLCBnbC5DT0xPUl9BVFRBQ0hNRU5UMCwgZ2wuUkVOREVSQlVGRkVSLCBjb2xvckJ1ZmZl
cik7CisgICAgZ2wucmVuZGVyYnVmZmVyU3RvcmFnZShnbC5SRU5ERVJCVUZGRVIsIGdsLlJHQkE0
LCAxNiwgMTYpOworCisgICAgc2hvdWxkQmVOb25OdWxsKCJkZXB0aEJ1ZmZlciA9IGdsLmNyZWF0
ZVJlbmRlcmJ1ZmZlcigpIik7CisgICAgZ2wuYmluZFJlbmRlcmJ1ZmZlcihnbC5SRU5ERVJCVUZG
RVIsIGRlcHRoQnVmZmVyKTsKKworICAgIHJldHVybiB0cnlEZXB0aChnbC5ERVBUSF9DT01QT05F
TlQxNiwgZ2wuREVQVEhfQVRUQUNITUVOVCkgfHwgdHJ5RGVwdGgoZ2wuREVQVEhfU1RFTkNJTCwg
Z2wuREVQVEhfU1RFTkNJTF9BVFRBQ0hNRU5UKTsKKworICAgIGZ1bmN0aW9uIHRyeURlcHRoKHRy
eV9mb3JtYXQsIHRyeV9hdHRhY2htZW50KSB7CisgICAgICAgIGlmIChkZXB0aEF0dGFjaG1lbnQp
IHsKKyAgICAgICAgICAgIC8vIElmIHdlJ3ZlIHRyaWVkIG9uY2UgdW5hdHRhY2ggdGhlIG9sZCBv
bmUuCisgICAgICAgICAgICBnbC5mcmFtZWJ1ZmZlclJlbmRlcmJ1ZmZlcigKKyAgICAgICAgICAg
ICAgICBnbC5GUkFNRUJVRkZFUiwgZGVwdGhBdHRhY2htZW50LCBnbC5SRU5ERVJCVUZGRVIsIG51
bGwpOworICAgICAgICB9CisgICAgICAgIGRlcHRoRm9ybWF0ID0gdHJ5X2Zvcm1hdDsKKyAgICAg
ICAgZGVwdGhBdHRhY2htZW50ID0gdHJ5X2F0dGFjaG1lbnQ7CisgICAgICAgIGdsLmZyYW1lYnVm
ZmVyUmVuZGVyYnVmZmVyKAorICAgICAgICAgICAgZ2wuRlJBTUVCVUZGRVIsIGRlcHRoQXR0YWNo
bWVudCwgZ2wuUkVOREVSQlVGRkVSLCBkZXB0aEJ1ZmZlcik7CisgICAgICAgIGdsLnJlbmRlcmJ1
ZmZlclN0b3JhZ2UoZ2wuUkVOREVSQlVGRkVSLCBkZXB0aEZvcm1hdCwgMTYsIDE2KTsKKyAgICAg
ICAgZ2xFcnJvclNob3VsZEJlKGdsLCBnbC5OT19FUlJPUik7CisgICAgICAgIHJldHVybiBnbC5j
aGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVGRkVSKSA9PSBnbC5GUkFNRUJVRkZFUl9D
T01QTEVURTsKKyAgICB9Cit9CisKK2lmIChjaGVja1ZhbGlkQ29sb3JEZXB0aENvbWJpbmF0aW9u
KCkpIHsKKyAgICB0ZXN0RnJhbWVidWZmZXJJbmNvbXBsZXRlRGltZW5zaW9ucygpOworICAgIHRl
c3RGcmFtZWJ1ZmZlckluY29tcGxldGVBdHRhY2htZW50KCk7CisgICAgdGVzdEZyYW1lYnVmZmVy
SW5jb21wbGV0ZU1pc3NpbmdBdHRhY2htZW50KCk7CisgICAgdGVzdFVzaW5nSW5jb21wbGV0ZUZy
YW1lYnVmZmVyKCk7Cit9CisKK2Z1bmN0aW9uIGNoZWNrRnJhbWVidWZmZXIoZXhwZWN0ZWQpIHsK
KyAgICB2YXIgYWN0dWFsID0gZ2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZF
Uik7CisgICAgdmFyIG1zZyA9ICJnbC5jaGVja0ZyYW1lYnVmZmVyU3RhdHVzKGdsLkZSQU1FQlVG
RkVSKSBzaG91bGQgYmUgIiArIHd0dS5nbEVudW1Ub1N0cmluZyhnbCwgZXhwZWN0ZWQpICsgIiB3
YXMgIiArIHd0dS5nbEVudW1Ub1N0cmluZyhnbCwgYWN0dWFsKTsKKyAgICBpZiAoZXhwZWN0ZWQg
IT0gZ2wuRlJBTUVCVUZGRVJfQ09NUExFVEUpIHsKKyAgICAgICAgbXNnICs9ICIgb3IgRlJBTUVC
VUZGRVJfVU5TVVBQT1JURUQiOworICAgIH0KKyAgICBpZiAoYWN0dWFsID09IGV4cGVjdGVkIHx8
CisgICAgICAgIChleHBlY3RlZCAhPSBnbC5GUkFNRUJVRkZFUl9DT01QTEVURSAmJgorICAgICAg
ICAgYWN0dWFsID09IGdsLkZSQU1CVUZGRVJfVU5TVVBQT1JURUQpKSB7CisgICAgICAgIHRlc3RQ
YXNzZWQobXNnKTsKKyAgICB9IGVsc2UgeworICAgICAgICB0ZXN0RmFpbGVkKG1zZyk7CisgICAg
fQorfQorCitmdW5jdGlvbiB0ZXN0VXNpbmdJbmNvbXBsZXRlRnJhbWVidWZmZXIoKSB7CisgICAg
ZGVidWcoIiIpOworICAgIGRlYnVnKCJUZXN0IGRyYXdpbmcgb3IgcmVhZGluZyBmcm9tIGFuIGlu
Y29tcGxldGUgZnJhbWVidWZmZXIiKTsKKyAgICB2YXIgcHJvZ3JhbSA9IHd0dS5zZXR1cFRleHR1
cmVkUXVhZChnbCk7CisgICAgdmFyIHRleCA9IGdsLmNyZWF0ZVRleHR1cmUoKTsKKyAgICB3dHUu
ZmlsbFRleHR1cmUoZ2wsIHRleCwgMSwgMSwgWzAsMjU1LDAsMjU1XSk7CisKKyAgICBzaG91bGRC
ZU5vbk51bGwoImZibyA9IGdsLmNyZWF0ZUZyYW1lYnVmZmVyKCkiKTsKKyAgICBnbC5iaW5kRnJh
bWVidWZmZXIoZ2wuRlJBTUVCVUZGRVIsIGZibyk7CisgICAgc2hvdWxkQmVOb25OdWxsKCJjb2xv
ckJ1ZmZlciA9IGdsLmNyZWF0ZVJlbmRlcmJ1ZmZlcigpIik7CisgICAgZ2wuYmluZFJlbmRlcmJ1
ZmZlcihnbC5SRU5ERVJCVUZGRVIsIGNvbG9yQnVmZmVyKTsKKyAgICBnbC5mcmFtZWJ1ZmZlclJl
bmRlcmJ1ZmZlcigKKyAgICAgICAgZ2wuRlJBTUVCVUZGRVIsIGdsLkNPTE9SX0FUVEFDSE1FTlQw
LCBnbC5SRU5ERVJCVUZGRVIsIGNvbG9yQnVmZmVyKTsKKyAgICBnbC5yZW5kZXJidWZmZXJTdG9y
YWdlKGdsLlJFTkRFUkJVRkZFUiwgZ2wuUkdCQTQsIDE2LCAxNik7CisKKyAgICBzaG91bGRCZU5v
bk51bGwoImRlcHRoQnVmZmVyID0gZ2wuY3JlYXRlUmVuZGVyYnVmZmVyKCkiKTsKKyAgICBnbC5i
aW5kUmVuZGVyYnVmZmVyKGdsLlJFTkRFUkJVRkZFUiwgZGVwdGhCdWZmZXIpOworICAgIGdsLmZy
YW1lYnVmZmVyUmVuZGVyYnVmZmVyKAorICAgICAgICBnbC5GUkFNRUJVRkZFUiwgZGVwdGhBdHRh
Y2htZW50LCBnbC5SRU5ERVJCVUZGRVIsIGRlcHRoQnVmZmVyKTsKKyAgICBnbC5yZW5kZXJidWZm
ZXJTdG9yYWdlKGdsLlJFTkRFUkJVRkZFUiwgZGVwdGhGb3JtYXQsIDE2LCAxNik7CisgICAgZ2xF
cnJvclNob3VsZEJlKGdsLCBnbC5OT19FUlJPUik7CisgICAgY2hlY2tGcmFtZWJ1ZmZlcihnbC5G
UkFNRUJVRkZFUl9DT01QTEVURSk7CisKKyAgICAvLyBXZSBwaWNrIHRoaXMgY29tYmluYXRpb24g
YmVjYXVzZSBpdCB3b3JrcyBvbiBkZXNrdG9wIE9wZW5HTCBidXQgc2hvdWxkIG5vdCB3b3JrIG9u
IE9wZW5HTCBFUyAyLjAKKyAgICBnbC5yZW5kZXJidWZmZXJTdG9yYWdlKGdsLlJFTkRFUkJVRkZF
UiwgZGVwdGhGb3JtYXQsIDMyLCAxNik7CisgICAgY2hlY2tGcmFtZWJ1ZmZlcihnbC5GUkFNRUJV
RkZFUl9JTkNPTVBMRVRFX0RJTUVOU0lPTlMpOworICAgIGRlYnVnKCIiKTsKKyAgICBkZWJ1Zygi
RHJhd2luZyBvciByZWFkaW5nIGZyb20gYW4gaW5jb21wbGV0ZSBmcmFtZWJ1ZmZlciBzaG91bGQg
Z2VuZXJhdGUgSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04iKTsKKyAgICB0ZXN0UmVuZGVy
aW5nQW5kUmVhZGluZygpOworCisgICAgc2hvdWxkQmVOb25OdWxsKCJmYm8yID0gZ2wuY3JlYXRl
RnJhbWVidWZmZXIoKSIpOworICAgIGdsLmJpbmRGcmFtZWJ1ZmZlcihnbC5GUkFNRUJVRkZFUiwg
ZmJvMik7CisgICAgY2hlY2tGcmFtZWJ1ZmZlcihnbC5GUkFNRUJVRkZFUl9JTkNPTVBMRVRFX01J
U1NJTkdfQVRUQUNITUVOVCk7CisgICAgZGVidWcoIiIpOworICAgIGRlYnVnKCJEcmF3aW5nIG9y
IHJlYWRpbmcgZnJvbSBhbiBpbmNvbXBsZXRlIGZyYW1lYnVmZmVyIHNob3VsZCBnZW5lcmF0ZSBJ
TlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiIpOworICAgIHRlc3RSZW5kZXJpbmdBbmRSZWFk
aW5nKCk7CisKKyAgICBzaG91bGRCZU5vbk51bGwoImNvbG9yQnVmZmVyID0gZ2wuY3JlYXRlUmVu
ZGVyYnVmZmVyKCkiKTsKKyAgICBnbC5iaW5kUmVuZGVyYnVmZmVyKGdsLlJFTkRFUkJVRkZFUiwg
Y29sb3JCdWZmZXIpOworICAgIGdsLmZyYW1lYnVmZmVyUmVuZGVyYnVmZmVyKAorICAgICAgICBn
bC5GUkFNRUJVRkZFUiwgZ2wuQ09MT1JfQVRUQUNITUVOVDAsIGdsLlJFTkRFUkJVRkZFUiwgY29s
b3JCdWZmZXIpOworICAgIGdsLnJlbmRlcmJ1ZmZlclN0b3JhZ2UoZ2wuUkVOREVSQlVGRkVSLCBn
bC5SR0JBNCwgMCwgMCk7CisgICAgZGVidWcoIiIpOworICAgIGRlYnVnKCJEcmF3aW5nIG9yIHJl
YWRpbmcgZnJvbSBhbiBpbmNvbXBsZXRlIGZyYW1lYnVmZmVyIHNob3VsZCBnZW5lcmF0ZSBJTlZB
TElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiIpOworICAgIHRlc3RSZW5kZXJpbmdBbmRSZWFkaW5n
KCk7CisKKyAgICBmdW5jdGlvbiB0ZXN0UmVuZGVyaW5nQW5kUmVhZGluZygpIHsKKyAgICAgICAg
Z2xFcnJvclNob3VsZEJlKGdsLCBnbC5OT19FUlJPUik7CisgICAgICAgIHd0dS5kcmF3UXVhZChn
bCk7CisgICAgICAgIGdsRXJyb3JTaG91bGRCZShnbCwgZ2wuSU5WQUxJRF9GUkFNRUJVRkZFUl9P
UEVSQVRJT04sICJkcmF3QXJyYXlzIHdpdGggaW5jb21wbGV0ZSBmcmFtZWJ1ZmZlciIpOworICAg
ICAgICBnbC5yZWFkUGl4ZWxzKDAsIDAsIDEsIDEsIGdsLlJHQkEsIGdsLlVOU0lHTkVEX0JZVEUs
IG5ldyBVaW50OEFycmF5KDQpKTsKKyAgICAgICAgZ2xFcnJvclNob3VsZEJlKGdsLCBnbC5JTlZB
TElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiwgInJlYWRQaXhlbHMgZnJvbSBpbmNvbXBsZXRlIGZy
YW1lYnVmZmVyIik7CisgICAgICAgIC8vIGNvcHlUZXhJbWFnZSBhbmQgY29weVRleFN1YkltYWdl
IGNhbiBiZSBlaXRoZXIgSU5WQUxJRF9GUkFNRUJVRkZFUl9PUEVSQVRJT04gYmVjYXVzZQorICAg
ICAgICAvLyB0aGUgZnJhbWVidWZmZXIgaXMgaW52YWxpZCBPUiBJTlZBTElEX09QRVJBVElPTiBi
ZWNhdXNlIGluIHRoZSBjYXNlIG9mIG5vIGF0dGFjaG1lbnRzCisgICAgICAgIC8vIHRoZSBmcmFt
ZWJ1ZmZlciBpcyBub3Qgb2YgYSBjb21wYXRpYmxlIHR5cGUuCisgICAgICAgIGdsLmNvcHlUZXhT
dWJJbWFnZTJEKGdsLlRFWFRVUkVfMkQsIDAsIDAsIDAsIDAsIDAsIDEsIDEpOworICAgICAgICBn
bEVycm9yU2hvdWxkQmUoZ2wsIFtnbC5JTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiwgZ2wu
SU5WQUxJRF9PUEVSQVRJT05dLCAiY29weVRleEltYWdlMkQgZnJvbSBpbmNvbXBsZXRlIGZyYW1l
YnVmZmVyIik7CisgICAgICAgIGdsLmNvcHlUZXhJbWFnZTJEKGdsLlRFWFRVUkVfMkQsIDAsIGds
LlJHQkEsIDAsIDAsIDEsIDEsIDApOworICAgICAgICBnbEVycm9yU2hvdWxkQmUoZ2wsIFtnbC5J
TlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiwgZ2wuSU5WQUxJRF9PUEVSQVRJT05dLCAiY29w
eVRleFN1YkltYWdlMkQgZnJvbSBpbmNvbXBsZXRlIGZyYW1lYnVmZmVyIik7CisgICAgICAgIGds
LmNsZWFyKGdsLkNPTE9SX0JVRkZFUl9CSVQgfCBnbC5ERVBUSF9CVUZGRVJfQklUKTsKKyAgICAg
ICAgZ2xFcnJvclNob3VsZEJlKGdsLCBnbC5JTlZBTElEX0ZSQU1FQlVGRkVSX09QRVJBVElPTiwg
ImNsZWFyIHdpdGggaW5jb21wbGV0ZSBmcmFtZWJ1ZmZlciIpOworICAgIH0KK30KKworZnVuY3Rp
b24gdGVzdEZyYW1lYnVmZmVySW5jb21wbGV0ZUF0dGFjaG1lbnQoKSB7CisgICAgc2hvdWxkQmVO
b25OdWxsKCJmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1ZmZlcigpIik7CisgICAgZ2wuYmluZEZyYW1l
YnVmZmVyKGdsLkZSQU1FQlVGRkVSLCBmYm8pOworICAgIHNob3VsZEJlTm9uTnVsbCgiY29sb3JC
dWZmZXIgPSBnbC5jcmVhdGVSZW5kZXJidWZmZXIoKSIpOworICAgIGdsLmJpbmRSZW5kZXJidWZm
ZXIoZ2wuUkVOREVSQlVGRkVSLCBjb2xvckJ1ZmZlcik7CisgICAgZ2wuZnJhbWVidWZmZXJSZW5k
ZXJidWZmZXIoCisgICAgICAgIGdsLkZSQU1FQlVGRkVSLCBnbC5DT0xPUl9BVFRBQ0hNRU5UMCwg
Z2wuUkVOREVSQlVGRkVSLCBjb2xvckJ1ZmZlcik7CisgICAgZ2wucmVuZGVyYnVmZmVyU3RvcmFn
ZShnbC5SRU5ERVJCVUZGRVIsIGdsLlJHQkE0LCAxNiwgMTYpOworICAgIGNoZWNrRnJhbWVidWZm
ZXIoZ2wuRlJBTUVCVUZGRVJfQ09NUExFVEUpOworCisgICAgZGVidWcoIiIpOworICAgIGRlYnVn
KCJXcm9uZyBzdG9yYWdlIHR5cGUgZm9yIHR5cGUgb2YgYXR0YWNobWVudCBiZSBGUkFNRUJVRkZF
Ul9JTkNPTVBMRVRFX0FUVEFDSE1FTlQgKE9wZW5HTCBFUyAyLjAgNC40LjUpIik7CisgICAgZ2wu
cmVuZGVyYnVmZmVyU3RvcmFnZShnbC5SRU5ERVJCVUZGRVIsIGRlcHRoRm9ybWF0LCAxNiwgMTYp
OworICAgIGNoZWNrRnJhbWVidWZmZXIoZ2wuRlJBTUVCVUZGRVJfSU5DT01QTEVURV9BVFRBQ0hN
RU5UKTsKKworICAgIGdsLnJlbmRlcmJ1ZmZlclN0b3JhZ2UoZ2wuUkVOREVSQlVGRkVSLCBnbC5S
R0JBNCwgMTYsIDE2KTsKKyAgICBjaGVja0ZyYW1lYnVmZmVyKGdsLkZSQU1FQlVGRkVSX0NPTVBM
RVRFKTsKKworICAgIGRlYnVnKCIiKTsKKyAgICBkZWJ1ZygiMCBzaXplIGF0dGFjaG1lbnQgc2hv
dWxkIGJlIEZSQU1FQlVGRkVSX0lOQ09NUExFVEVfQVRUQUNITUVOVCAoT3BlbkdMIEVTIDIuMCA0
LjQuNSkiKTsKKyAgICBnbC5yZW5kZXJidWZmZXJTdG9yYWdlKGdsLlJFTkRFUkJVRkZFUiwgZ2wu
UkdCQTQsIDAsIDApOworICAgIGNoZWNrRnJhbWVidWZmZXIoZ2wuRlJBTUVCVUZGRVJfSU5DT01Q
TEVURV9BVFRBQ0hNRU5UKTsKKworICAgIGdsRXJyb3JTaG91bGRCZShnbCwgZ2wuTk9fRVJST1Ip
OworfQorCitmdW5jdGlvbiB0ZXN0RnJhbWVidWZmZXJJbmNvbXBsZXRlTWlzc2luZ0F0dGFjaG1l
bnQoKSB7CisgICAgZGVidWcoIiIpOworICAgIGRlYnVnKCJObyBhdHRhY2htZW50cyBzaG91bGQg
YmUgSU5DT01QTEVURV9GUkFNRUJVRkZFUl9NSVNTSU5HX0FUVEFDSE1FTlQgKE9wZW5HTCBFUyAy
LjAgNC40LjUpIik7CisgICAgc2hvdWxkQmVOb25OdWxsKCJmYm8gPSBnbC5jcmVhdGVGcmFtZWJ1
ZmZlcigpIik7CisgICAgZ2wuYmluZEZyYW1lYnVmZmVyKGdsLkZSQU1FQlVGRkVSLCBmYm8pOwor
ICAgIGNoZWNrRnJhbWVidWZmZXIoZ2wuRlJBTUVCVUZGRVJfSU5DT01QTEVURV9NSVNTSU5HX0FU
VEFDSE1FTlQpOworCisgICAgc2hvdWxkQmVOb25OdWxsKCJjb2xvckJ1ZmZlciA9IGdsLmNyZWF0
ZVJlbmRlcmJ1ZmZlcigpIik7CisgICAgZ2wuYmluZFJlbmRlcmJ1ZmZlcihnbC5SRU5ERVJCVUZG
RVIsIGNvbG9yQnVmZmVyKTsKKyAgICBnbC5mcmFtZWJ1ZmZlclJlbmRlcmJ1ZmZlcigKKyAgICAg
ICAgZ2wuRlJBTUVCVUZGRVIsIGdsLkNPTE9SX0FUVEFDSE1FTlQwLCBnbC5SRU5ERVJCVUZGRVIs
IGNvbG9yQnVmZmVyKTsKKyAgICBnbC5yZW5kZXJidWZmZXJTdG9yYWdlKGdsLlJFTkRFUkJVRkZF
UiwgZ2wuUkdCQTQsIDE2LCAxNik7CisgICAgY2hlY2tGcmFtZWJ1ZmZlcihnbC5GUkFNRUJVRkZF
Ul9DT01QTEVURSk7CisKKyAgICBnbC5mcmFtZWJ1ZmZlclJlbmRlcmJ1ZmZlcigKKyAgICAgICAg
Z2wuRlJBTUVCVUZGRVIsIGdsLkNPTE9SX0FUVEFDSE1FTlQwLCBnbC5SRU5ERVJCVUZGRVIsIG51
bGwpOworICAgIGNoZWNrRnJhbWVidWZmZXIoZ2wuRlJBTUVCVUZGRVJfSU5DT01QTEVURV9NSVNT
SU5HX0FUVEFDSE1FTlQpOwogCi1kZWJ1ZygiQXR0YWNoIGNvbG9yIHJlbmRlcmJ1ZmZlciB3aXRo
IGludGVybmFsZm9ybWF0ID09IFJHQjVfQTEiKTsKLXRlc3RDb2xvclJlbmRlcmJ1ZmZlcihnbC5S
R0I1X0ExKTsKKyAgICBnbEVycm9yU2hvdWxkQmUoZ2wsIGdsLk5PX0VSUk9SKTsKK30KKworZnVu
Y3Rpb24gdGVzdEZyYW1lYnVmZmVySW5jb21wbGV0ZURpbWVuc2lvbnMoKSB7CisgICAgZGVidWco
IiIpOworICAgIGRlYnVnKCJBdHRhY2htZW50cyBvZiBkaWZmZXJlbnQgc2l6ZXMgc2hvdWxkIGJl
IEZSQU1FQlVGRkVSX0lOQ09NUExFVEVfRElNRU5TSU9OUyAoT3BlbkdMIEVTIDIuMCA0LjQuNSki
KTsKKworICAgIHNob3VsZEJlTm9uTnVsbCgiZmJvID0gZ2wuY3JlYXRlRnJhbWVidWZmZXIoKSIp
OworICAgIGdsLmJpbmRGcmFtZWJ1ZmZlcihnbC5GUkFNRUJVRkZFUiwgZmJvKTsKKyAgICBzaG91
bGRCZU5vbk51bGwoImNvbG9yQnVmZmVyID0gZ2wuY3JlYXRlUmVuZGVyYnVmZmVyKCkiKTsKKyAg
ICBnbC5iaW5kUmVuZGVyYnVmZmVyKGdsLlJFTkRFUkJVRkZFUiwgY29sb3JCdWZmZXIpOworICAg
IGdsLmZyYW1lYnVmZmVyUmVuZGVyYnVmZmVyKAorICAgICAgICBnbC5GUkFNRUJVRkZFUiwgZ2wu
Q09MT1JfQVRUQUNITUVOVDAsIGdsLlJFTkRFUkJVRkZFUiwgY29sb3JCdWZmZXIpOworICAgIGds
LnJlbmRlcmJ1ZmZlclN0b3JhZ2UoZ2wuUkVOREVSQlVGRkVSLCBnbC5SR0JBNCwgMTYsIDE2KTsK
KworICAgIHNob3VsZEJlTm9uTnVsbCgiZGVwdGhCdWZmZXIgPSBnbC5jcmVhdGVSZW5kZXJidWZm
ZXIoKSIpOworICAgIGdsLmJpbmRSZW5kZXJidWZmZXIoZ2wuUkVOREVSQlVGRkVSLCBkZXB0aEJ1
ZmZlcik7CisgICAgZ2wuZnJhbWVidWZmZXJSZW5kZXJidWZmZXIoCisgICAgICAgIGdsLkZSQU1F
QlVGRkVSLCBkZXB0aEF0dGFjaG1lbnQsIGdsLlJFTkRFUkJVRkZFUiwgZGVwdGhCdWZmZXIpOwor
ICAgIGdsLnJlbmRlcmJ1ZmZlclN0b3JhZ2UoZ2wuUkVOREVSQlVGRkVSLCBkZXB0aEZvcm1hdCwg
MTYsIDE2KTsKKyAgICBnbEVycm9yU2hvdWxkQmUoZ2wsIGdsLk5PX0VSUk9SKTsKKyAgICBjaGVj
a0ZyYW1lYnVmZmVyKGdsLkZSQU1FQlVGRkVSX0NPTVBMRVRFKTsKIAotZGVidWcoIkF0dGFjaCBj
b2xvciByZW5kZXJidWZmZXIgd2l0aCBpbnRlcm5hbGZvcm1hdCA9PSBSR0I1NjUiKTsKLXRlc3RD
b2xvclJlbmRlcmJ1ZmZlcihnbC5SR0I1NjUpOworICAgIGdsLnJlbmRlcmJ1ZmZlclN0b3JhZ2Uo
Z2wuUkVOREVSQlVGRkVSLCBkZXB0aEZvcm1hdCwgMzIsIDE2KTsKKyAgICBjaGVja0ZyYW1lYnVm
ZmVyKGdsLkZSQU1FQlVGRkVSX0lOQ09NUExFVEVfRElNRU5TSU9OUyk7CisgICAgZ2wucmVuZGVy
YnVmZmVyU3RvcmFnZShnbC5SRU5ERVJCVUZGRVIsIGRlcHRoRm9ybWF0LCAxNiwgMTYpOworICAg
IGNoZWNrRnJhbWVidWZmZXIoZ2wuRlJBTUVCVUZGRVJfQ09NUExFVEUpOworICAgIGdsLmJpbmRS
ZW5kZXJidWZmZXIoZ2wuUkVOREVSQlVGRkVSLCBjb2xvckJ1ZmZlcik7CisgICAgZ2wucmVuZGVy
YnVmZmVyU3RvcmFnZShnbC5SRU5ERVJCVUZGRVIsIGdsLlJHQkE0LCAxNiwgMzIpOworICAgIGNo
ZWNrRnJhbWVidWZmZXIoZ2wuRlJBTUVCVUZGRVJfSU5DT01QTEVURV9ESU1FTlNJT05TKTsKKyAg
ICBnbC5yZW5kZXJidWZmZXJTdG9yYWdlKGdsLlJFTkRFUkJVRkZFUiwgZ2wuUkdCQTQsIDE2LCAx
Nik7CisgICAgY2hlY2tGcmFtZWJ1ZmZlcihnbC5GUkFNRUJVRkZFUl9DT01QTEVURSk7CisgICAg
Z2xFcnJvclNob3VsZEJlKGdsLCBnbC5OT19FUlJPUik7CisKKyAgICB2YXIgdGV4ID0gZ2wuY3Jl
YXRlVGV4dHVyZSgpOworICAgIGdsLmJpbmRUZXh0dXJlKGdsLlRFWFRVUkVfMkQsIHRleCk7Cisg
ICAgZ2wudGV4SW1hZ2UyRChnbC5URVhUVVJFXzJELCAwLCBnbC5SR0JBLCAxNiwgMTYsIDAsIGds
LlJHQkEsIGdsLlVOU0lHTkVEX0JZVEUsIG51bGwpOworICAgIGdsLmZyYW1lYnVmZmVyVGV4dHVy
ZTJEKGdsLkZSQU1FQlVGRkVSLCBnbC5DT0xPUl9BVFRBQ0hNRU5UMCwgZ2wuVEVYVFVSRV8yRCwg
dGV4LCAwKTsKKyAgICBnbEVycm9yU2hvdWxkQmUoZ2wsIGdsLk5PX0VSUk9SKTsKKyAgICBpZiAo
Z2wuY2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhnbC5GUkFNRUJVRkZFUikgIT0gZ2wuRlJBTUVCVUZG
RVJfQ09NUExFVEUpIHsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIGdsLnRleEltYWdl
MkQoZ2wuVEVYVFVSRV8yRCwgMCwgZ2wuUkdCQSwgMzIsIDE2LCAwLCBnbC5SR0JBLCBnbC5VTlNJ
R05FRF9CWVRFLCBudWxsKTsKKyAgICBjaGVja0ZyYW1lYnVmZmVyKGdsLkZSQU1FQlVGRkVSX0lO
Q09NUExFVEVfRElNRU5TSU9OUyk7CisgICAgZ2wudGV4SW1hZ2UyRChnbC5URVhUVVJFXzJELCAw
LCBnbC5SR0JBLCAxNiwgMTYsIDAsIGdsLlJHQkEsIGdsLlVOU0lHTkVEX0JZVEUsIG51bGwpOwor
ICAgIGNoZWNrRnJhbWVidWZmZXIoZ2wuRlJBTUVCVUZGRVJfQ09NUExFVEUpOworCisgICAgZ2xF
cnJvclNob3VsZEJlKGdsLCBnbC5OT19FUlJPUik7Cit9CiAKLWRlYnVnKCJDcmVhdGUgYW5kIGF0
dGFjaCBkZXB0aFN0ZW5jaWwgcmVuZGVyYnVmZmVyIik7Ci10ZXN0RGVwdGhTdGVuY2lsUmVuZGVy
YnVmZmVyKCk7CitzdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwogPC9zY3JpcHQ+CiAKIDxzY3Jp
cHQgc3JjPSIuLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KSW5k
ZXg6IExheW91dFRlc3RzL2Zhc3QvY2FudmFzL3dlYmdsL3Jlc291cmNlcy93ZWJnbC10ZXN0Lmpz
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvY2FudmFzL3dlYmdsL3Jlc291cmNlcy93
ZWJnbC10ZXN0LmpzCShyZXZpc2lvbiAxMDI2MTIpCisrKyBMYXlvdXRUZXN0cy9mYXN0L2NhbnZh
cy93ZWJnbC9yZXNvdXJjZXMvd2ViZ2wtdGVzdC5qcwkod29ya2luZyBjb3B5KQpAQCAtMTIzLDcg
KzEyMywxMSBAQCBmdW5jdGlvbiBnZXRHTEVycm9yQXNTdHJpbmcoY3R4LCBlcnIpIHsKICAgcmV0
dXJuICIweCIgKyBlcnIudG9TdHJpbmcoMTYpOwogfQogCi1mdW5jdGlvbiBzaG91bGRHZW5lcmF0
ZUdMRXJyb3IoY3R4LCBnbEVycm9yLCBldmFsU3RyKSB7CisvLyBQYXNzIHVuZGVmaW5lZCBmb3Ig
Z2xFcnJvciB0byB0ZXN0IHRoYXQgaXQgYXQgbGVhc3QgdGhyb3dzIHNvbWUgZXJyb3IKK2Z1bmN0
aW9uIHNob3VsZEdlbmVyYXRlR0xFcnJvcihjdHgsIGdsRXJyb3JzLCBldmFsU3RyKSB7CisgIGlm
ICghZ2xFcnJvcnMubGVuZ3RoKSB7CisgICAgZ2xFcnJvcnMgPSBbZ2xFcnJvcnNdOworICB9CiAg
IHZhciBleGNlcHRpb247CiAgIHRyeSB7CiAgICAgZXZhbChldmFsU3RyKTsKQEAgLTEzNCwxMCAr
MTM4LDE0IEBAIGZ1bmN0aW9uIHNob3VsZEdlbmVyYXRlR0xFcnJvcihjdHgsIGdsRXIKICAgICB0
ZXN0RmFpbGVkKGV2YWxTdHIgKyAiIHRocmV3IGV4Y2VwdGlvbiAiICsgZXhjZXB0aW9uKTsKICAg
fSBlbHNlIHsKICAgICB2YXIgZXJyID0gY3R4LmdldEVycm9yKCk7Ci0gICAgaWYgKGVyciAhPSBn
bEVycm9yKSB7Ci0gICAgICB0ZXN0RmFpbGVkKGV2YWxTdHIgKyAiIGV4cGVjdGVkOiAiICsgZ2V0
R0xFcnJvckFzU3RyaW5nKGN0eCwgZ2xFcnJvcikgKyAiLiBXYXMgIiArIGdldEdMRXJyb3JBc1N0
cmluZyhjdHgsIGVycikgKyAiLiIpOworICAgIGlmIChnbEVycm9ycy5pbmRleE9mKGVycikgPCAw
KSB7CisgICAgICB2YXIgZXJyU3RycyA9IFtdOworICAgICAgZm9yICh2YXIgaWkgPSAwOyBpaSA8
IGdsRXJyb3JzLmxlbmd0aDsgKytpaSkgeworICAgICAgICBlcnJTdHJzLnB1c2goZ2V0R0xFcnJv
ckFzU3RyaW5nKGN0eCwgZ2xFcnJvcnNbaWldKSk7CisgICAgICB9CisgICAgICB0ZXN0RmFpbGVk
KGV2YWxTdHIgKyAiIGV4cGVjdGVkOiAiICsgZXJyU3Rycy5qb2luKCIgb3IgIikgKyAiLiBXYXMg
IiArIGdldEdMRXJyb3JBc1N0cmluZyhjdHgsIGVycikgKyAiLiIpOwogICAgIH0gZWxzZSB7Ci0g
ICAgICB0ZXN0UGFzc2VkKGV2YWxTdHIgKyAiIGdlbmVyYXRlZCBleHBlY3RlZCBHTCBlcnJvcjog
IiArIGdldEdMRXJyb3JBc1N0cmluZyhjdHgsIGdsRXJyb3IpICsgIi4iKTsKKyAgICAgIHRlc3RQ
YXNzZWQoZXZhbFN0ciArICIgZ2VuZXJhdGVkIGV4cGVjdGVkIEdMIGVycm9yOiAiICsgZ2V0R0xF
cnJvckFzU3RyaW5nKGN0eCwgZXJyKSArICIuIik7CiAgICAgfQogICB9CiB9CkBAIC0xNDUsMTgg
KzE1MywzMyBAQCBmdW5jdGlvbiBzaG91bGRHZW5lcmF0ZUdMRXJyb3IoY3R4LCBnbEVyCiAvKioK
ICAqIFRlc3RzIHRoYXQgdGhlIGZpcnN0IGVycm9yIEdMIHJldHVybnMgaXMgdGhlIHNwZWNpZmll
ZCBlcnJvci4KICAqIEBwYXJhbSB7IVdlYkdMQ29udGV4dH0gZ2wgVGhlIFdlYkdMQ29udGV4dCB0
byB1c2UuCi0gKiBAcGFyYW0ge251bWJlcn0gZ2xFcnJvciBUaGUgZXhwZWN0ZWQgZ2wgZXJyb3Iu
CisgKiBAcGFyYW0ge251bWJlcnwhQXJyYXkuPG51bWJlcj59IGdsRXJyb3IgVGhlIGV4cGVjdGVk
IGdsCisgKiAgICAgICAgZXJyb3IuIE11bHRpcGxlIGVycm9ycyBjYW4gYmUgcGFzc2VkIGluIHVz
aW5nIGFuCisgKiAgICAgICAgYXJyYXkuCiAgKiBAcGFyYW0ge3N0cmluZ30gb3B0X21zZyBPcHRp
b25hbCBhZGRpdGlvbmFsIG1lc3NhZ2UuCiAgKi8KLWZ1bmN0aW9uIGdsRXJyb3JTaG91bGRCZShn
bCwgZ2xFcnJvciwgb3B0X21zZykgeworZnVuY3Rpb24gZ2xFcnJvclNob3VsZEJlKGdsLCBnbEVy
cm9ycywgb3B0X21zZykgeworICBpZiAoIWdsRXJyb3JzLmxlbmd0aCkgeworICAgIGdsRXJyb3Jz
ID0gW2dsRXJyb3JzXTsKKyAgfQogICBvcHRfbXNnID0gb3B0X21zZyB8fCAiIjsKICAgdmFyIGVy
ciA9IGdsLmdldEVycm9yKCk7Ci0gIGlmIChlcnIgIT0gZ2xFcnJvcikgewotICAgIHRlc3RGYWls
ZWQoImdldEVycm9yIGV4cGVjdGVkOiAiICsgZ2V0R0xFcnJvckFzU3RyaW5nKGdsLCBnbEVycm9y
KSArCi0gICAgICAgICAgICAgICAiLiBXYXMgIiArIGdldEdMRXJyb3JBc1N0cmluZyhnbCwgZXJy
KSArICIgOiAiICsgb3B0X21zZyk7CisgIHZhciBuZHggPSBnbEVycm9ycy5pbmRleE9mKGVycik7
CisgIGlmIChuZHggPCAwKSB7CisgICAgaWYgKGdsRXJyb3JzLmxlbmd0aCA9PSAxKSB7CisgICAg
ICB0ZXN0RmFpbGVkKCJnZXRFcnJvciBleHBlY3RlZDogIiArIGdldEdMRXJyb3JBc1N0cmluZyhn
bCwgZ2xFcnJvcnNbMF0pICsKKyAgICAgICAgICAgICAgICAgIi4gV2FzICIgKyBnZXRHTEVycm9y
QXNTdHJpbmcoZ2wsIGVycikgKyAiIDogIiArIG9wdF9tc2cpOworICAgIH0gZWxzZSB7CisgICAg
ICB2YXIgZXJycyA9IFtdOworICAgICAgZm9yICh2YXIgaWkgPSAwOyBpaSA8IGdsRXJyb3JzLmxl
bmd0aDsgKytpaSkgeworICAgICAgICBlcnJzLnB1c2goZ2V0R0xFcnJvckFzU3RyaW5nKGdsLCBn
bEVycm9yc1tpaV0pKTsKKyAgICAgIH0KKyAgICAgIHRlc3RGYWlsZWQoImdldEVycm9yIGV4cGVj
dGVkIG9uZSBvZjogWyIgKyBlcnJzLmpvaW4oIiwgIikgKworICAgICAgICAgICAgICAgICAiXS4g
V2FzICIgKyBnZXRHTEVycm9yQXNTdHJpbmcoZ2wsIGVycikgKyAiIDogIiArIG9wdF9tc2cpOwor
ICAgIH0KICAgfSBlbHNlIHsKICAgICB0ZXN0UGFzc2VkKCJnZXRFcnJvciB3YXMgZXhwZWN0ZWQg
dmFsdWU6ICIgKwotICAgICAgICAgICAgICAgIGdldEdMRXJyb3JBc1N0cmluZyhnbCwgZ2xFcnJv
cikgKyAiIDogIiArIG9wdF9tc2cpOworICAgICAgICAgICAgICAgIGdldEdMRXJyb3JBc1N0cmlu
ZyhnbCwgZXJyKSArICIgOiAiICsgb3B0X21zZyk7CiAgIH0KIH07CiAKSW5kZXg6IExheW91dFRl
c3RzL3BsYXRmb3JtL2Nocm9taXVtL3Rlc3RfZXhwZWN0YXRpb25zLnR4dAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS90ZXN0X2V4cGVjdGF0aW9ucy50eHQJKHJl
dmlzaW9uIDEwMjYxMikKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL3Rlc3RfZXhw
ZWN0YXRpb25zLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMjI1MCw2ICsyMjUwLDcgQEAgQlVHV0VC
R0wgV0lOIERFQlVHIDogZmFzdC9jYW52YXMvd2ViZ2wvdAogQlVHV0VCR0wgOiBmYXN0L2NhbnZh
cy93ZWJnbC9yZWFkLXBpeGVscy10ZXN0Lmh0bWwgPSBUSU1FT1VUCiAKIC8vIFRoZXNlIHRocmVl
IGZhaWx1cmVzIGFyZSBkdWUgdG8gTWVzYSBidWdzCitCVUdXRUJHTCA6IGZhc3QvY2FudmFzL3dl
YmdsL2ZyYW1lYnVmZmVyLW9iamVjdC1hdHRhY2htZW50Lmh0bWwgPSBURVhUCiBCVUdXRUJHTCA6
IGZhc3QvY2FudmFzL3dlYmdsL2dsLXVuaWZvcm0tYXJyYXlzLmh0bWwgPSBUSU1FT1VUIFRFWFQK
IEJVR1dFQkdMIDogZmFzdC9jYW52YXMvd2ViZ2wvcG9pbnQtc2l6ZS5odG1sID0gVEVYVAogQlVH
V0VCR0wgTElOVVggTUFDIDogZmFzdC9jYW52YXMvd2ViZ2wvZ2wtb2JqZWN0LWdldC1jYWxscy5o
dG1sID0gVEVYVAo=
</data>
<flag name="review"
          id="118915"
          type_id="1"
          status="+"
          setter="kbr"
    />
          </attachment>
      

    </bug>

</bugzilla>