<?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>67568</bug_id>
          
          <creation_ts>2011-09-03 13:33:43 -0700</creation_ts>
          <short_desc>Document.createEvent should support all the interfaces of Event we got</short_desc>
          <delta_ts>2011-09-04 14:03:11 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</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="Sam Weinig">sam</reporter>
          <assigned_to name="Sam Weinig">sam</assigned_to>
          <cc>dglazkov</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>461846</commentid>
    <comment_count>0</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2011-09-03 13:33:43 -0700</bug_when>
    <thetext>Document.createEvent should support all the interfaces of Event we got</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>461847</commentid>
    <comment_count>1</comment_count>
      <attachid>106267</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2011-09-03 13:47:48 -0700</bug_when>
    <thetext>Created attachment 106267
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>461848</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-09-03 13:48:51 -0700</bug_when>
    <thetext>Attachment 106267 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;LayoutTests/ChangeLog&apos;, u&apos;LayoutTests/fast...&quot; exit_code: 1

LayoutTests/ChangeLog:9:  Need whitespace between colon and description  [changelog/filechangedescriptionwhitespace] [5]
Source/WebCore/dom/Document.cpp:98:  &quot;HashChangeEvent.h&quot; already included at Source/WebCore/dom/Document.cpp:97  [build/include] [4]
Total errors found: 2 in 7 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>461849</commentid>
    <comment_count>3</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2011-09-03 13:51:30 -0700</bug_when>
    <thetext>Throwing this patch up to run it on the bots.  There are few things I don&apos;t like about it:
1) It doesn&apos;t make it any harder for people to make this mistake in the future. One idea I had about that was replacing all the isFooEvent() virtual functions with a virtual function that returns an enum EventType, and then somehow switching on that event type in Document.createEvent() (sans-default), thus making it a compile error to not add a case.

2) The test contains commented out code to test the interfaces that are not on in the main builds.  I should really move it, but it makes me sad.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>461850</commentid>
    <comment_count>4</comment_count>
      <attachid>106267</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-09-03 14:08:44 -0700</bug_when>
    <thetext>Comment on attachment 106267
Patch

Attachment 106267 did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/9586858</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>461859</commentid>
    <comment_count>5</comment_count>
      <attachid>106267</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-09-03 14:28:31 -0700</bug_when>
    <thetext>Comment on attachment 106267
Patch

Attachment 106267 did not pass cr-mac-ews (chromium):
Output: http://queues.webkit.org/results/9590208</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>461976</commentid>
    <comment_count>6</comment_count>
      <attachid>106294</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2011-09-04 13:38:26 -0700</bug_when>
    <thetext>Created attachment 106294
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>461977</commentid>
    <comment_count>7</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2011-09-04 13:39:32 -0700</bug_when>
    <thetext>I like this version a bit more, and I think this is as far down the rabbit hole as I want to go.  If I think of better ways to prevent this mistake in the future, I will file follow ups.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>461978</commentid>
    <comment_count>8</comment_count>
      <attachid>106294</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-09-04 13:42:30 -0700</bug_when>
    <thetext>Comment on attachment 106294
Patch

Attachment 106294 did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/9595081</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>461981</commentid>
    <comment_count>9</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2011-09-04 14:03:11 -0700</bug_when>
    <thetext>Committed r94505: &lt;http://trac.webkit.org/changeset/94505&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>106267</attachid>
            <date>2011-09-03 13:47:48 -0700</date>
            <delta_ts>2011-09-04 13:38:22 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-67568-20110903134747.patch</filename>
            <type>text/plain</type>
            <size>33439</size>
            <attacher name="Sam Weinig">sam</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDk0NDk0KQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjQgQEAKKzIwMTEtMDktMDMgIFNhbSBXZWlu
aWcgIDxzYW1Ad2Via2l0Lm9yZz4KKworICAgICAgICBEb2N1bWVudC5jcmVhdGVFdmVudCBzaG91
bGQgc3VwcG9ydCBhbGwgdGhlIGludGVyZmFjZXMgb2YgRXZlbnQgd2UgZ290CisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02NzU2OAorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogZG9tL0JlZm9yZUxvYWRFdmVu
dC5oOgorICAgICAgICAoV2ViQ29yZTo6QmVmb3JlTG9hZEV2ZW50OjpjcmVhdGUpOgorICAgICAg
ICAoV2ViQ29yZTo6QmVmb3JlTG9hZEV2ZW50OjpCZWZvcmVMb2FkRXZlbnQpOgorICAgICAgICBB
ZGQgZW1wdHkgY3JlYXRlLgorCisgICAgICAgICogZG9tL0RvY3VtZW50LmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkRvY3VtZW50OjpjcmVhdGVFdmVudCk6CisgICAgICAgIEFkZCBtaXNzaW5nIGlu
dGVyZmFjZXMuCisKKyAgICAgICAgKiBkb20vSGFzaENoYW5nZUV2ZW50Lmg6CisgICAgICAgIChX
ZWJDb3JlOjpIYXNoQ2hhbmdlRXZlbnQ6OmNyZWF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpIYXNo
Q2hhbmdlRXZlbnQ6Okhhc2hDaGFuZ2VFdmVudCk6CisgICAgICAgIEFkZCBlbXB0eSBjcmVhdGUu
CisKIDIwMTEtMDktMDMgIFNhbSBXZWluaWcgIDxzYW1Ad2Via2l0Lm9yZz4KIAogICAgICAgICBB
ZGQgbWlzc2luZyBFdmVudCBjb25zdHJ1Y3RvcnMgdG8gRE9NV2luZG93LmlkbApJbmRleDogU291
cmNlL1dlYkNvcmUvZG9tL0JlZm9yZUxvYWRFdmVudC5oCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJDb3JlL2RvbS9CZWZvcmVMb2FkRXZlbnQuaAkocmV2aXNpb24gOTQ0OTIpCisrKyBTb3VyY2Uv
V2ViQ29yZS9kb20vQmVmb3JlTG9hZEV2ZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTM2LDYgKzM2
LDExIEBAIGNsYXNzIEJlZm9yZUxvYWRFdmVudCA6IHB1YmxpYyBFdmVudCB7CiBwdWJsaWM6CiAg
ICAgdmlydHVhbCBib29sIGlzQmVmb3JlTG9hZEV2ZW50KCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsg
fQogCisgICAgc3RhdGljIFBhc3NSZWZQdHI8QmVmb3JlTG9hZEV2ZW50PiBjcmVhdGUoKQorICAg
IHsKKyAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBCZWZvcmVMb2FkRXZlbnQpOworICAgIH0K
KwogICAgIHN0YXRpYyBQYXNzUmVmUHRyPEJlZm9yZUxvYWRFdmVudD4gY3JlYXRlKGNvbnN0IFN0
cmluZyYgdXJsKQogICAgIHsKICAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBCZWZvcmVMb2Fk
RXZlbnQodXJsKSk7CkBAIC01NCwxMCArNTksMTUgQEAgcHVibGljOgogICAgIGNvbnN0IFN0cmlu
ZyYgdXJsKCkgY29uc3QgeyByZXR1cm4gbV91cmw7IH0KIAogcHJpdmF0ZToKKyAgICBCZWZvcmVM
b2FkRXZlbnQoKQorICAgIHsKKyAgICB9CisKICAgICBCZWZvcmVMb2FkRXZlbnQoY29uc3QgU3Ry
aW5nJiB1cmwpCiAgICAgICAgIDogRXZlbnQoZXZlbnROYW1lcygpLmJlZm9yZWxvYWRFdmVudCwg
ZmFsc2UsIHRydWUpCiAgICAgICAgICwgbV91cmwodXJsKQotICAgIHt9CisgICAgeworICAgIH0K
IAogICAgIFN0cmluZyBtX3VybDsKIH07CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1l
bnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAJKHJl
dmlzaW9uIDk0NDkyKQorKysgU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtMzEsNiArMzEsNyBAQAogI2luY2x1ZGUgIkFuaW1hdGlvbkNvbnRyb2xsZXIu
aCIKICNpbmNsdWRlICJBdHRyLmgiCiAjaW5jbHVkZSAiQXR0cmlidXRlLmgiCisjaW5jbHVkZSAi
QmVmb3JlTG9hZEV2ZW50LmgiCiAjaW5jbHVkZSAiQ0RBVEFTZWN0aW9uLmgiCiAjaW5jbHVkZSAi
Q1NTUHJpbWl0aXZlVmFsdWVDYWNoZS5oIgogI2luY2x1ZGUgIkNTU1N0eWxlU2VsZWN0b3IuaCIK
QEAgLTQxLDEzICs0MiwxNCBAQAogI2luY2x1ZGUgIkNocm9tZS5oIgogI2luY2x1ZGUgIkNocm9t
ZUNsaWVudC5oIgogI2luY2x1ZGUgIkNvbW1lbnQuaCIKKyNpbmNsdWRlICJDb21wb3NpdGlvbkV2
ZW50LmgiCiAjaW5jbHVkZSAiQ29uc29sZS5oIgogI2luY2x1ZGUgIkNvbnRlbnRTZWN1cml0eVBv
bGljeS5oIgogI2luY2x1ZGUgIkNvb2tpZUphci5oIgogI2luY2x1ZGUgIkN1c3RvbUV2ZW50Lmgi
Ci0jaW5jbHVkZSAiRGF0ZUNvbXBvbmVudHMuaCIKICNpbmNsdWRlICJET01JbXBsZW1lbnRhdGlv
bi5oIgogI2luY2x1ZGUgIkRPTVdpbmRvdy5oIgorI2luY2x1ZGUgIkRhdGVDb21wb25lbnRzLmgi
CiAjaW5jbHVkZSAiRGV2aWNlTW90aW9uRXZlbnQuaCIKICNpbmNsdWRlICJEZXZpY2VPcmllbnRh
dGlvbkV2ZW50LmgiCiAjaW5jbHVkZSAiRG9jdW1lbnRGcmFnbWVudC5oIgpAQCAtNTgsNiArNjAs
NyBAQAogI2luY2x1ZGUgIkVkaXRvci5oIgogI2luY2x1ZGUgIkVsZW1lbnQuaCIKICNpbmNsdWRl
ICJFbnRpdHlSZWZlcmVuY2UuaCIKKyNpbmNsdWRlICJFcnJvckV2ZW50LmgiCiAjaW5jbHVkZSAi
RXZlbnQuaCIKICNpbmNsdWRlICJFdmVudEhhbmRsZXIuaCIKICNpbmNsdWRlICJFdmVudExpc3Rl
bmVyLmgiCkBAIC03Miw3ICs3NSw2IEBACiAjaW5jbHVkZSAiRnJhbWVTZWxlY3Rpb24uaCIKICNp
bmNsdWRlICJGcmFtZVRyZWUuaCIKICNpbmNsdWRlICJGcmFtZVZpZXcuaCIKLSNpbmNsdWRlICJI
YXNoQ2hhbmdlRXZlbnQuaCIKICNpbmNsdWRlICJIVE1MQWxsQ29sbGVjdGlvbi5oIgogI2luY2x1
ZGUgIkhUTUxBbmNob3JFbGVtZW50LmgiCiAjaW5jbHVkZSAiSFRNTEJvZHlFbGVtZW50LmgiCkBA
IC05Miw2ICs5NCw4IEBACiAjaW5jbHVkZSAiSFRNTFN0eWxlRWxlbWVudC5oIgogI2luY2x1ZGUg
IkhUTUxUaXRsZUVsZW1lbnQuaCIKICNpbmNsdWRlICJIVFRQUGFyc2Vycy5oIgorI2luY2x1ZGUg
Ikhhc2hDaGFuZ2VFdmVudC5oIgorI2luY2x1ZGUgIkhhc2hDaGFuZ2VFdmVudC5oIgogI2luY2x1
ZGUgIkhpdFRlc3RSZXF1ZXN0LmgiCiAjaW5jbHVkZSAiSGl0VGVzdFJlc3VsdC5oIgogI2luY2x1
ZGUgIkltYWdlTG9hZGVyLmgiCkBAIC0yMTMsNiArMjE3LDI3IEBACiAjaW5jbHVkZSAiU2NyaXB0
ZWRBbmltYXRpb25Db250cm9sbGVyLmgiCiAjZW5kaWYKIAorI2lmIEVOQUJMRShXRUJfQVVESU8p
CisjaW5jbHVkZSAiQXVkaW9Qcm9jZXNzaW5nRXZlbnQuaCIKKyNpbmNsdWRlICJPZmZsaW5lQXVk
aW9Db21wbGV0aW9uRXZlbnQuaCIKKyNlbmRpZgorCisjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkK
KyNpbmNsdWRlICJNZWRpYVN0cmVhbUV2ZW50LmgiCisjZW5kaWYKKworI2lmIEVOQUJMRShJTlBV
VF9TUEVFQ0gpCisjaW5jbHVkZSAiU3BlZWNoSW5wdXRFdmVudC5oIgorI2VuZGlmCisKKyNpZiBF
TkFCTEUoV0VCX1NPQ0tFVFMpCisjaW5jbHVkZSAiQ2xvc2VFdmVudC5oIgorI2VuZGlmCisKKyNp
ZiBFTkFCTEUoV0VCR0wpCisjaW5jbHVkZSAiV2ViR0xDb250ZXh0RXZlbnQuaCIKKyNlbmRpZgor
CiB1c2luZyBuYW1lc3BhY2Ugc3RkOwogdXNpbmcgbmFtZXNwYWNlIFdURjsKIHVzaW5nIG5hbWVz
cGFjZSBVbmljb2RlOwpAQCAtMzQ0MCw4ICszNDY1LDE2IEBAIFBhc3NSZWZQdHI8RXZlbnQ+IERv
Y3VtZW50OjpjcmVhdGVFdmVudCgKICAgICBSZWZQdHI8RXZlbnQ+IGV2ZW50OwogICAgIGlmIChl
dmVudFR5cGUgPT0gIkV2ZW50IiB8fCBldmVudFR5cGUgPT0gIkV2ZW50cyIgfHwgZXZlbnRUeXBl
ID09ICJIVE1MRXZlbnRzIikKICAgICAgICAgZXZlbnQgPSBFdmVudDo6Y3JlYXRlKCk7CisgICAg
ZWxzZSBpZiAoZXZlbnRUeXBlID09ICJCZWZvcmVMb2FkRXZlbnQiKQorICAgICAgICBldmVudCA9
IEJlZm9yZUxvYWRFdmVudDo6Y3JlYXRlKCk7CisgICAgZWxzZSBpZiAoZXZlbnRUeXBlID09ICJD
b21wb3NpdGlvbkV2ZW50IikKKyAgICAgICAgZXZlbnQgPSBDb21wb3NpdGlvbkV2ZW50OjpjcmVh
dGUoKTsKICAgICBlbHNlIGlmIChldmVudFR5cGUgPT0gIkN1c3RvbUV2ZW50IikKICAgICAgICAg
ZXZlbnQgPSBDdXN0b21FdmVudDo6Y3JlYXRlKCk7CisgICAgZWxzZSBpZiAoZXZlbnRUeXBlID09
ICJFcnJvckV2ZW50IikKKyAgICAgICAgZXZlbnQgPSBFcnJvckV2ZW50OjpjcmVhdGUoKTsKKyAg
ICBlbHNlIGlmIChldmVudFR5cGUgPT0gIkhhc2hDaGFuZ2VFdmVudCIpCisgICAgICAgIGV2ZW50
ID0gSGFzaENoYW5nZUV2ZW50OjpjcmVhdGUoKTsKICAgICBlbHNlIGlmIChldmVudFR5cGUgPT0g
IktleWJvYXJkRXZlbnQiIHx8IGV2ZW50VHlwZSA9PSAiS2V5Ym9hcmRFdmVudHMiKQogICAgICAg
ICBldmVudCA9IEtleWJvYXJkRXZlbnQ6OmNyZWF0ZSgpOwogICAgIGVsc2UgaWYgKGV2ZW50VHlw
ZSA9PSAiTWVzc2FnZUV2ZW50IikKQEAgLTM0NTgsMTAgKzM0OTEsNiBAQCBQYXNzUmVmUHRyPEV2
ZW50PiBEb2N1bWVudDo6Y3JlYXRlRXZlbnQoCiAgICAgICAgIGV2ZW50ID0gUG9wU3RhdGVFdmVu
dDo6Y3JlYXRlKCk7IAogICAgIGVsc2UgaWYgKGV2ZW50VHlwZSA9PSAiUHJvZ3Jlc3NFdmVudCIp
CiAgICAgICAgIGV2ZW50ID0gUHJvZ3Jlc3NFdmVudDo6Y3JlYXRlKCk7Ci0jaWYgRU5BQkxFKERP
TV9TVE9SQUdFKQotICAgIGVsc2UgaWYgKGV2ZW50VHlwZSA9PSAiU3RvcmFnZUV2ZW50IikKLSAg
ICAgICAgZXZlbnQgPSBTdG9yYWdlRXZlbnQ6OmNyZWF0ZSgpOwotI2VuZGlmCiAgICAgZWxzZSBp
ZiAoZXZlbnRUeXBlID09ICJUZXh0RXZlbnQiKQogICAgICAgICBldmVudCA9IFRleHRFdmVudDo6
Y3JlYXRlKCk7CiAgICAgZWxzZSBpZiAoZXZlbnRUeXBlID09ICJVSUV2ZW50IiB8fCBldmVudFR5
cGUgPT0gIlVJRXZlbnRzIikKQEAgLTM0NzIsMTAgKzM1MDEsMzYgQEAgUGFzc1JlZlB0cjxFdmVu
dD4gRG9jdW1lbnQ6OmNyZWF0ZUV2ZW50KAogICAgICAgICBldmVudCA9IFdlYktpdFRyYW5zaXRp
b25FdmVudDo6Y3JlYXRlKCk7CiAgICAgZWxzZSBpZiAoZXZlbnRUeXBlID09ICJXaGVlbEV2ZW50
IikKICAgICAgICAgZXZlbnQgPSBXaGVlbEV2ZW50OjpjcmVhdGUoKTsKKyNpZiBFTkFCTEUoV0VC
X0FVRElPKQorICAgIGVsc2UgaWYgKGV2ZW50VHlwZSA9PSAiQXVkaW9Qcm9jZXNzaW5nRXZlbnQi
KQorICAgICAgICBldmVudCA9IEF1ZGlvUHJvY2Vzc2luZ0V2ZW50OjpjcmVhdGUoKTsKKyAgICBl
bHNlIGlmIChldmVudFR5cGUgPT0gIk9mZmxpbmVBdWRpb0NvbXBsZXRpb25FdmVudCIpCisgICAg
ICAgIGV2ZW50ID0gT2ZmbGluZUF1ZGlvQ29tcGxldGlvbkV2ZW50OjpjcmVhdGUoKTsKKyNlbmRp
ZgorI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCisgICAgZWxzZSBpZiAoZXZlbnRUeXBlID09ICJN
ZWRpYVN0cmVhbUV2ZW50IikKKyAgICAgICAgZXZlbnQgPSBNZWRpYVN0cmVhbUV2ZW50OjpjcmVh
dGUoKTsKKyNlbmRpZgorI2lmIEVOQUJMRShJTlBVVF9TUEVFQ0gpCisgICAgZWxzZSBpZiAoZXZl
bnRUeXBlID09ICJTcGVlY2hJbnB1dEV2ZW50IikKKyAgICAgICAgZXZlbnQgPSBTcGVlY2hJbnB1
dEV2ZW50OjpjcmVhdGUoKTsKKyNlbmRpZgorI2lmIEVOQUJMRShXRUJfU09DS0VUUykKKyAgICBl
bHNlIGlmIChldmVudFR5cGUgPT0gIkNsb3NlRXZlbnQiKQorICAgICAgICBldmVudCA9IENsb3Nl
RXZlbnQ6OmNyZWF0ZSgpOworI2VuZGlmCisjaWYgRU5BQkxFKFdFQkdMKQorICAgIGVsc2UgaWYg
KGV2ZW50VHlwZSA9PSAiV2ViR0xDb250ZXh0RXZlbnQiKQorICAgICAgICBldmVudCA9IFdlYkdM
Q29udGV4dEV2ZW50OjpjcmVhdGUoKTsKKyNlbmRpZgorI2lmIEVOQUJMRShET01fU1RPUkFHRSkK
KyAgICBlbHNlIGlmIChldmVudFR5cGUgPT0gIlN0b3JhZ2VFdmVudCIpCisgICAgICAgIGV2ZW50
ID0gU3RvcmFnZUV2ZW50OjpjcmVhdGUoKTsKKyNlbmRpZgogI2lmIEVOQUJMRShTVkcpCiAgICAg
ZWxzZSBpZiAoZXZlbnRUeXBlID09ICJTVkdFdmVudHMiKQogICAgICAgICBldmVudCA9IEV2ZW50
OjpjcmVhdGUoKTsKLSAgICBlbHNlIGlmIChldmVudFR5cGUgPT0gIlNWR1pvb21FdmVudHMiKQor
ICAgIGVsc2UgaWYgKGV2ZW50VHlwZSA9PSAiU1ZHWm9vbUV2ZW50IiB8fCBldmVudFR5cGUgPT0g
IlNWR1pvb21FdmVudHMiKQogICAgICAgICBldmVudCA9IFNWR1pvb21FdmVudDo6Y3JlYXRlKCk7
CiAjZW5kaWYKICNpZiBFTkFCTEUoVE9VQ0hfRVZFTlRTKQpJbmRleDogU291cmNlL1dlYkNvcmUv
ZG9tL0hhc2hDaGFuZ2VFdmVudC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2RvbS9I
YXNoQ2hhbmdlRXZlbnQuaAkocmV2aXNpb24gOTQ0OTIpCisrKyBTb3VyY2UvV2ViQ29yZS9kb20v
SGFzaENoYW5nZUV2ZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTMwLDYgKzMwLDExIEBAIGNsYXNz
IEhhc2hDaGFuZ2VFdmVudCA6IHB1YmxpYyBFdmVudCB7CiBwdWJsaWM6CiAgICAgdmlydHVhbCBi
b29sIGlzSGFzaENoYW5nZUV2ZW50KCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsgfQogCisgICAgc3Rh
dGljIFBhc3NSZWZQdHI8SGFzaENoYW5nZUV2ZW50PiBjcmVhdGUoKQorICAgIHsKKyAgICAgICAg
cmV0dXJuIGFkb3B0UmVmKG5ldyBIYXNoQ2hhbmdlRXZlbnQpOworICAgIH0KKwogICAgIHN0YXRp
YyBQYXNzUmVmUHRyPEhhc2hDaGFuZ2VFdmVudD4gY3JlYXRlKGNvbnN0IFN0cmluZyYgb2xkVVJM
LCBjb25zdCBTdHJpbmcmIG5ld1VSTCkKICAgICB7CiAgICAgICAgIHJldHVybiBhZG9wdFJlZihu
ZXcgSGFzaENoYW5nZUV2ZW50KG9sZFVSTCwgbmV3VVJMKSk7CkBAIC01MCwxMSArNTUsMTYgQEAg
cHVibGljOgogICAgIGNvbnN0IFN0cmluZyYgbmV3VVJMKCkgY29uc3QgeyByZXR1cm4gbV9uZXdV
Ukw7IH0KIAogcHJpdmF0ZToKKyAgICBIYXNoQ2hhbmdlRXZlbnQoKQorICAgIHsKKyAgICB9CisK
ICAgICBIYXNoQ2hhbmdlRXZlbnQoY29uc3QgU3RyaW5nJiBvbGRVUkwsIGNvbnN0IFN0cmluZyYg
bmV3VVJMKQogICAgICAgICA6IEV2ZW50KGV2ZW50TmFtZXMoKS5oYXNoY2hhbmdlRXZlbnQsIGZh
bHNlLCBmYWxzZSkKICAgICAgICAgLCBtX29sZFVSTChvbGRVUkwpCiAgICAgICAgICwgbV9uZXdV
UkwobmV3VVJMKQotICAgIHt9CisgICAgeworICAgIH0KIAogICAgIFN0cmluZyBtX29sZFVSTDsK
ICAgICBTdHJpbmcgbV9uZXdVUkw7CkluZGV4OiBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCShyZXZpc2lvbiA5NDQ5NCkKKysrIExheW91
dFRlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDEzIEBACisyMDExLTA5
LTAzICBTYW0gV2VpbmlnICA8c2FtQHdlYmtpdC5vcmc+CisKKyAgICAgICAgRG9jdW1lbnQuY3Jl
YXRlRXZlbnQgc2hvdWxkIHN1cHBvcnQgYWxsIHRoZSBpbnRlcmZhY2VzIG9mIEV2ZW50IHdlIGdv
dAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Njc1NjgK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGZhc3Qv
ZXZlbnRzL3NjcmlwdC10ZXN0cy9ldmVudC1pbnN0YW5jZW9mLmpzOgorICAgICAgICAqIGZhc3Qv
ZXZlbnRzL2V2ZW50LWluc3RhbmNlb2YtZXhwZWN0ZWQudHh0CisKIDIwMTEtMDktMDMgIFNhbSBX
ZWluaWcgIDxzYW1Ad2Via2l0Lm9yZz4KIAogICAgICAgICBBZGQgbWlzc2luZyBFdmVudCBjb25z
dHJ1Y3RvcnMgdG8gRE9NV2luZG93LmlkbApJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMv
ZXZlbnQtaW5zdGFuY2VvZi1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
ZmFzdC9ldmVudHMvZXZlbnQtaW5zdGFuY2VvZi1leHBlY3RlZC50eHQJKHJldmlzaW9uIDk0NDky
KQorKysgTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvZXZlbnQtaW5zdGFuY2VvZi1leHBlY3RlZC50
eHQJKHdvcmtpbmcgY29weSkKQEAgLTMsNDQgKzMsOTggQEAgVGhpcyB0ZXN0cyB0aGF0IHRoZSBF
dmVudCBjbGFzc2VzIGhhdmUgYwogT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9m
ICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgogCiAKLVBBU1Mg
ZXZlbnQgaW5zdGFuY2VvZiB3aW5kb3cuRXZlbnQgaXMgdHJ1ZQotUEFTUyBldmVudC5jb25zdHJ1
Y3RvciA9PT0gd2luZG93LkV2ZW50IGlzIHRydWUKLVBBU1MgdWlFdmVudCBpbnN0YW5jZW9mIHdp
bmRvdy5VSUV2ZW50IGlzIHRydWUKLVBBU1MgdWlFdmVudCBpbnN0YW5jZW9mIHdpbmRvdy5FdmVu
dCBpcyB0cnVlCi1QQVNTIHVpRXZlbnQuY29uc3RydWN0b3IgPT09IHdpbmRvdy5VSUV2ZW50IGlz
IHRydWUKLVBBU1Mga2V5Ym9hcmRFdmVudCBpbnN0YW5jZW9mIHdpbmRvdy5LZXlib2FyZEV2ZW50
IGlzIHRydWUKLVBBU1Mga2V5Ym9hcmRFdmVudCBpbnN0YW5jZW9mIHdpbmRvdy5VSUV2ZW50IGlz
IHRydWUKLVBBU1Mga2V5Ym9hcmRFdmVudCBpbnN0YW5jZW9mIHdpbmRvdy5FdmVudCBpcyB0cnVl
Ci1QQVNTIGtleWJvYXJkRXZlbnQuY29uc3RydWN0b3IgPT09IHdpbmRvdy5LZXlib2FyZEV2ZW50
IGlzIHRydWUKLVBBU1MgbW91c2VFdmVudCBpbnN0YW5jZW9mIHdpbmRvdy5Nb3VzZUV2ZW50IGlz
IHRydWUKLVBBU1MgbW91c2VFdmVudCBpbnN0YW5jZW9mIHdpbmRvdy5VSUV2ZW50IGlzIHRydWUK
LVBBU1MgbW91c2VFdmVudCBpbnN0YW5jZW9mIHdpbmRvdy5FdmVudCBpcyB0cnVlCi1QQVNTIG1v
dXNlRXZlbnQuY29uc3RydWN0b3IgPT09IHdpbmRvdy5Nb3VzZUV2ZW50IGlzIHRydWUKLVBBU1Mg
d2hlZWxFdmVudCBpbnN0YW5jZW9mIHdpbmRvdy5XaGVlbEV2ZW50IGlzIHRydWUKLVBBU1Mgd2hl
ZWxFdmVudCBpbnN0YW5jZW9mIHdpbmRvdy5VSUV2ZW50IGlzIHRydWUKLVBBU1Mgd2hlZWxFdmVu
dCBpbnN0YW5jZW9mIHdpbmRvdy5FdmVudCBpcyB0cnVlCi1QQVNTIHdoZWVsRXZlbnQuY29uc3Ry
dWN0b3IgPT09IHdpbmRvdy5XaGVlbEV2ZW50IGlzIHRydWUKLVBBU1MgbXV0YXRpb25FdmVudCBp
bnN0YW5jZW9mIHdpbmRvdy5NdXRhdGlvbkV2ZW50IGlzIHRydWUKLVBBU1MgbXV0YXRpb25FdmVu
dCBpbnN0YW5jZW9mIHdpbmRvdy5FdmVudCBpcyB0cnVlCi1QQVNTIG11dGF0aW9uRXZlbnQuY29u
c3RydWN0b3IgPT09IHdpbmRvdy5NdXRhdGlvbkV2ZW50IGlzIHRydWUKLVBBU1Mgb3ZlcmZsb3dF
dmVudCBpbnN0YW5jZW9mIHdpbmRvdy5PdmVyZmxvd0V2ZW50IGlzIHRydWUKLVBBU1Mgb3ZlcmZs
b3dFdmVudCBpbnN0YW5jZW9mIHdpbmRvdy5FdmVudCBpcyB0cnVlCi1QQVNTIG92ZXJmbG93RXZl
bnQuY29uc3RydWN0b3IgPT09IHdpbmRvdy5PdmVyZmxvd0V2ZW50IGlzIHRydWUKLVBBU1MgcHJv
Z3Jlc3NFdmVudCBpbnN0YW5jZW9mIHdpbmRvdy5Qcm9ncmVzc0V2ZW50IGlzIHRydWUKLVBBU1Mg
cHJvZ3Jlc3NFdmVudCBpbnN0YW5jZW9mIHdpbmRvdy5FdmVudCBpcyB0cnVlCi1QQVNTIHByb2dy
ZXNzRXZlbnQuY29uc3RydWN0b3IgPT09IHdpbmRvdy5Qcm9ncmVzc0V2ZW50IGlzIHRydWUKLVBB
U1MgdGV4dEV2ZW50IGluc3RhbmNlb2Ygd2luZG93LlRleHRFdmVudCBpcyB0cnVlCi1QQVNTIHRl
eHRFdmVudCBpbnN0YW5jZW9mIHdpbmRvdy5FdmVudCBpcyB0cnVlCi1QQVNTIHRleHRFdmVudC5j
b25zdHJ1Y3RvciA9PT0gd2luZG93LlRleHRFdmVudCBpcyB0cnVlCi1QQVNTIG1lc3NhZ2VFdmVu
dCBpbnN0YW5jZW9mIHdpbmRvdy5NZXNzYWdlRXZlbnQgaXMgdHJ1ZQotUEFTUyBtZXNzYWdlRXZl
bnQgaW5zdGFuY2VvZiB3aW5kb3cuRXZlbnQgaXMgdHJ1ZQotUEFTUyBtZXNzYWdlRXZlbnQuY29u
c3RydWN0b3IgPT09IHdpbmRvdy5NZXNzYWdlRXZlbnQgaXMgdHJ1ZQotUEFTUyBhbmltYXRpb25F
dmVudCBpbnN0YW5jZW9mIHdpbmRvdy5XZWJLaXRBbmltYXRpb25FdmVudCBpcyB0cnVlCi1QQVNT
IGFuaW1hdGlvbkV2ZW50IGluc3RhbmNlb2Ygd2luZG93LkV2ZW50IGlzIHRydWUKLVBBU1MgYW5p
bWF0aW9uRXZlbnQuY29uc3RydWN0b3IgPT09IHdpbmRvdy5XZWJLaXRBbmltYXRpb25FdmVudCBp
cyB0cnVlCi1QQVNTIHRyYW5zaXRpb25FdmVudCBpbnN0YW5jZW9mIHdpbmRvdy5XZWJLaXRUcmFu
c2l0aW9uRXZlbnQgaXMgdHJ1ZQotUEFTUyB0cmFuc2l0aW9uRXZlbnQgaW5zdGFuY2VvZiB3aW5k
b3cuRXZlbnQgaXMgdHJ1ZQotUEFTUyB0cmFuc2l0aW9uRXZlbnQuY29uc3RydWN0b3IgPT09IHdp
bmRvdy5XZWJLaXRUcmFuc2l0aW9uRXZlbnQgaXMgdHJ1ZQorUEFTUyBkb2N1bWVudC5jcmVhdGVF
dmVudCgnRXZlbnQnKSBpbnN0YW5jZW9mIHdpbmRvdy5FdmVudCBpcyB0cnVlCitQQVNTIGRvY3Vt
ZW50LmNyZWF0ZUV2ZW50KCdFdmVudCcpLmNvbnN0cnVjdG9yID09PSB3aW5kb3cuRXZlbnQgaXMg
dHJ1ZQorUEFTUyBkb2N1bWVudC5jcmVhdGVFdmVudCgnRXZlbnRzJykgaW5zdGFuY2VvZiB3aW5k
b3cuRXZlbnQgaXMgdHJ1ZQorUEFTUyBkb2N1bWVudC5jcmVhdGVFdmVudCgnRXZlbnRzJykuY29u
c3RydWN0b3IgPT09IHdpbmRvdy5FdmVudCBpcyB0cnVlCitQQVNTIGRvY3VtZW50LmNyZWF0ZUV2
ZW50KCdIVE1MRXZlbnRzJykgaW5zdGFuY2VvZiB3aW5kb3cuRXZlbnQgaXMgdHJ1ZQorUEFTUyBk
b2N1bWVudC5jcmVhdGVFdmVudCgnSFRNTEV2ZW50cycpLmNvbnN0cnVjdG9yID09PSB3aW5kb3cu
RXZlbnQgaXMgdHJ1ZQorUEFTUyBkb2N1bWVudC5jcmVhdGVFdmVudCgnQmVmb3JlTG9hZEV2ZW50
JykgaW5zdGFuY2VvZiB3aW5kb3cuQmVmb3JlTG9hZEV2ZW50IGlzIHRydWUKK1BBU1MgZG9jdW1l
bnQuY3JlYXRlRXZlbnQoJ0JlZm9yZUxvYWRFdmVudCcpIGluc3RhbmNlb2Ygd2luZG93LkV2ZW50
IGlzIHRydWUKK1BBU1MgZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ0JlZm9yZUxvYWRFdmVudCcpLmNv
bnN0cnVjdG9yID09PSB3aW5kb3cuQmVmb3JlTG9hZEV2ZW50IGlzIHRydWUKK1BBU1MgZG9jdW1l
bnQuY3JlYXRlRXZlbnQoJ0NvbXBvc2l0aW9uRXZlbnQnKSBpbnN0YW5jZW9mIHdpbmRvdy5Db21w
b3NpdGlvbkV2ZW50IGlzIHRydWUKK1BBU1MgZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ0NvbXBvc2l0
aW9uRXZlbnQnKSBpbnN0YW5jZW9mIHdpbmRvdy5FdmVudCBpcyB0cnVlCitQQVNTIGRvY3VtZW50
LmNyZWF0ZUV2ZW50KCdDb21wb3NpdGlvbkV2ZW50JykuY29uc3RydWN0b3IgPT09IHdpbmRvdy5D
b21wb3NpdGlvbkV2ZW50IGlzIHRydWUKK1BBU1MgZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ0N1c3Rv
bUV2ZW50JykgaW5zdGFuY2VvZiB3aW5kb3cuQ3VzdG9tRXZlbnQgaXMgdHJ1ZQorUEFTUyBkb2N1
bWVudC5jcmVhdGVFdmVudCgnQ3VzdG9tRXZlbnQnKSBpbnN0YW5jZW9mIHdpbmRvdy5FdmVudCBp
cyB0cnVlCitQQVNTIGRvY3VtZW50LmNyZWF0ZUV2ZW50KCdDdXN0b21FdmVudCcpLmNvbnN0cnVj
dG9yID09PSB3aW5kb3cuQ3VzdG9tRXZlbnQgaXMgdHJ1ZQorUEFTUyBkb2N1bWVudC5jcmVhdGVF
dmVudCgnRXJyb3JFdmVudCcpIGluc3RhbmNlb2Ygd2luZG93LkVycm9yRXZlbnQgaXMgdHJ1ZQor
UEFTUyBkb2N1bWVudC5jcmVhdGVFdmVudCgnRXJyb3JFdmVudCcpIGluc3RhbmNlb2Ygd2luZG93
LkV2ZW50IGlzIHRydWUKK1BBU1MgZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ0Vycm9yRXZlbnQnKS5j
b25zdHJ1Y3RvciA9PT0gd2luZG93LkVycm9yRXZlbnQgaXMgdHJ1ZQorUEFTUyBkb2N1bWVudC5j
cmVhdGVFdmVudCgnSGFzaENoYW5nZUV2ZW50JykgaW5zdGFuY2VvZiB3aW5kb3cuSGFzaENoYW5n
ZUV2ZW50IGlzIHRydWUKK1BBU1MgZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ0hhc2hDaGFuZ2VFdmVu
dCcpIGluc3RhbmNlb2Ygd2luZG93LkV2ZW50IGlzIHRydWUKK1BBU1MgZG9jdW1lbnQuY3JlYXRl
RXZlbnQoJ0hhc2hDaGFuZ2VFdmVudCcpLmNvbnN0cnVjdG9yID09PSB3aW5kb3cuSGFzaENoYW5n
ZUV2ZW50IGlzIHRydWUKK1BBU1MgZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ0tleWJvYXJkRXZlbnQn
KSBpbnN0YW5jZW9mIHdpbmRvdy5LZXlib2FyZEV2ZW50IGlzIHRydWUKK1BBU1MgZG9jdW1lbnQu
Y3JlYXRlRXZlbnQoJ0tleWJvYXJkRXZlbnQnKSBpbnN0YW5jZW9mIHdpbmRvdy5VSUV2ZW50IGlz
IHRydWUKK1BBU1MgZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ0tleWJvYXJkRXZlbnQnKSBpbnN0YW5j
ZW9mIHdpbmRvdy5FdmVudCBpcyB0cnVlCitQQVNTIGRvY3VtZW50LmNyZWF0ZUV2ZW50KCdLZXli
b2FyZEV2ZW50JykuY29uc3RydWN0b3IgPT09IHdpbmRvdy5LZXlib2FyZEV2ZW50IGlzIHRydWUK
K1BBU1MgZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ0tleWJvYXJkRXZlbnRzJykgaW5zdGFuY2VvZiB3
aW5kb3cuS2V5Ym9hcmRFdmVudCBpcyB0cnVlCitQQVNTIGRvY3VtZW50LmNyZWF0ZUV2ZW50KCdL
ZXlib2FyZEV2ZW50cycpIGluc3RhbmNlb2Ygd2luZG93LlVJRXZlbnQgaXMgdHJ1ZQorUEFTUyBk
b2N1bWVudC5jcmVhdGVFdmVudCgnS2V5Ym9hcmRFdmVudHMnKSBpbnN0YW5jZW9mIHdpbmRvdy5F
dmVudCBpcyB0cnVlCitQQVNTIGRvY3VtZW50LmNyZWF0ZUV2ZW50KCdLZXlib2FyZEV2ZW50cycp
LmNvbnN0cnVjdG9yID09PSB3aW5kb3cuS2V5Ym9hcmRFdmVudCBpcyB0cnVlCitQQVNTIGRvY3Vt
ZW50LmNyZWF0ZUV2ZW50KCdNZXNzYWdlRXZlbnQnKSBpbnN0YW5jZW9mIHdpbmRvdy5NZXNzYWdl
RXZlbnQgaXMgdHJ1ZQorUEFTUyBkb2N1bWVudC5jcmVhdGVFdmVudCgnTWVzc2FnZUV2ZW50Jykg
aW5zdGFuY2VvZiB3aW5kb3cuRXZlbnQgaXMgdHJ1ZQorUEFTUyBkb2N1bWVudC5jcmVhdGVFdmVu
dCgnTWVzc2FnZUV2ZW50JykuY29uc3RydWN0b3IgPT09IHdpbmRvdy5NZXNzYWdlRXZlbnQgaXMg
dHJ1ZQorUEFTUyBkb2N1bWVudC5jcmVhdGVFdmVudCgnTW91c2VFdmVudCcpIGluc3RhbmNlb2Yg
d2luZG93Lk1vdXNlRXZlbnQgaXMgdHJ1ZQorUEFTUyBkb2N1bWVudC5jcmVhdGVFdmVudCgnTW91
c2VFdmVudCcpIGluc3RhbmNlb2Ygd2luZG93LlVJRXZlbnQgaXMgdHJ1ZQorUEFTUyBkb2N1bWVu
dC5jcmVhdGVFdmVudCgnTW91c2VFdmVudCcpIGluc3RhbmNlb2Ygd2luZG93LkV2ZW50IGlzIHRy
dWUKK1BBU1MgZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ01vdXNlRXZlbnQnKS5jb25zdHJ1Y3RvciA9
PT0gd2luZG93Lk1vdXNlRXZlbnQgaXMgdHJ1ZQorUEFTUyBkb2N1bWVudC5jcmVhdGVFdmVudCgn
TW91c2VFdmVudHMnKSBpbnN0YW5jZW9mIHdpbmRvdy5Nb3VzZUV2ZW50IGlzIHRydWUKK1BBU1Mg
ZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ01vdXNlRXZlbnRzJykgaW5zdGFuY2VvZiB3aW5kb3cuVUlF
dmVudCBpcyB0cnVlCitQQVNTIGRvY3VtZW50LmNyZWF0ZUV2ZW50KCdNb3VzZUV2ZW50cycpIGlu
c3RhbmNlb2Ygd2luZG93LkV2ZW50IGlzIHRydWUKK1BBU1MgZG9jdW1lbnQuY3JlYXRlRXZlbnQo
J01vdXNlRXZlbnRzJykuY29uc3RydWN0b3IgPT09IHdpbmRvdy5Nb3VzZUV2ZW50IGlzIHRydWUK
K1BBU1MgZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ011dGF0aW9uRXZlbnQnKSBpbnN0YW5jZW9mIHdp
bmRvdy5NdXRhdGlvbkV2ZW50IGlzIHRydWUKK1BBU1MgZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ011
dGF0aW9uRXZlbnQnKSBpbnN0YW5jZW9mIHdpbmRvdy5FdmVudCBpcyB0cnVlCitQQVNTIGRvY3Vt
ZW50LmNyZWF0ZUV2ZW50KCdNdXRhdGlvbkV2ZW50JykuY29uc3RydWN0b3IgPT09IHdpbmRvdy5N
dXRhdGlvbkV2ZW50IGlzIHRydWUKK1BBU1MgZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ011dGF0aW9u
RXZlbnRzJykgaW5zdGFuY2VvZiB3aW5kb3cuTXV0YXRpb25FdmVudCBpcyB0cnVlCitQQVNTIGRv
Y3VtZW50LmNyZWF0ZUV2ZW50KCdNdXRhdGlvbkV2ZW50cycpIGluc3RhbmNlb2Ygd2luZG93LkV2
ZW50IGlzIHRydWUKK1BBU1MgZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ011dGF0aW9uRXZlbnRzJyku
Y29uc3RydWN0b3IgPT09IHdpbmRvdy5NdXRhdGlvbkV2ZW50IGlzIHRydWUKK1BBU1MgZG9jdW1l
bnQuY3JlYXRlRXZlbnQoJ092ZXJmbG93RXZlbnQnKSBpbnN0YW5jZW9mIHdpbmRvdy5PdmVyZmxv
d0V2ZW50IGlzIHRydWUKK1BBU1MgZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ092ZXJmbG93RXZlbnQn
KSBpbnN0YW5jZW9mIHdpbmRvdy5FdmVudCBpcyB0cnVlCitQQVNTIGRvY3VtZW50LmNyZWF0ZUV2
ZW50KCdPdmVyZmxvd0V2ZW50JykuY29uc3RydWN0b3IgPT09IHdpbmRvdy5PdmVyZmxvd0V2ZW50
IGlzIHRydWUKK1BBU1MgZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ1BhZ2VUcmFuc2l0aW9uRXZlbnQn
KSBpbnN0YW5jZW9mIHdpbmRvdy5QYWdlVHJhbnNpdGlvbkV2ZW50IGlzIHRydWUKK1BBU1MgZG9j
dW1lbnQuY3JlYXRlRXZlbnQoJ1BhZ2VUcmFuc2l0aW9uRXZlbnQnKSBpbnN0YW5jZW9mIHdpbmRv
dy5FdmVudCBpcyB0cnVlCitQQVNTIGRvY3VtZW50LmNyZWF0ZUV2ZW50KCdQYWdlVHJhbnNpdGlv
bkV2ZW50JykuY29uc3RydWN0b3IgPT09IHdpbmRvdy5QYWdlVHJhbnNpdGlvbkV2ZW50IGlzIHRy
dWUKK1BBU1MgZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ1BvcFN0YXRlRXZlbnQnKSBpbnN0YW5jZW9m
IHdpbmRvdy5Qb3BTdGF0ZUV2ZW50IGlzIHRydWUKK1BBU1MgZG9jdW1lbnQuY3JlYXRlRXZlbnQo
J1BvcFN0YXRlRXZlbnQnKSBpbnN0YW5jZW9mIHdpbmRvdy5FdmVudCBpcyB0cnVlCitQQVNTIGRv
Y3VtZW50LmNyZWF0ZUV2ZW50KCdQb3BTdGF0ZUV2ZW50JykuY29uc3RydWN0b3IgPT09IHdpbmRv
dy5Qb3BTdGF0ZUV2ZW50IGlzIHRydWUKK1BBU1MgZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ1Byb2dy
ZXNzRXZlbnQnKSBpbnN0YW5jZW9mIHdpbmRvdy5Qcm9ncmVzc0V2ZW50IGlzIHRydWUKK1BBU1Mg
ZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ1Byb2dyZXNzRXZlbnQnKSBpbnN0YW5jZW9mIHdpbmRvdy5F
dmVudCBpcyB0cnVlCitQQVNTIGRvY3VtZW50LmNyZWF0ZUV2ZW50KCdQcm9ncmVzc0V2ZW50Jyku
Y29uc3RydWN0b3IgPT09IHdpbmRvdy5Qcm9ncmVzc0V2ZW50IGlzIHRydWUKK1BBU1MgZG9jdW1l
bnQuY3JlYXRlRXZlbnQoJ1RleHRFdmVudCcpIGluc3RhbmNlb2Ygd2luZG93LlRleHRFdmVudCBp
cyB0cnVlCitQQVNTIGRvY3VtZW50LmNyZWF0ZUV2ZW50KCdUZXh0RXZlbnQnKSBpbnN0YW5jZW9m
IHdpbmRvdy5VSUV2ZW50IGlzIHRydWUKK1BBU1MgZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ1RleHRF
dmVudCcpIGluc3RhbmNlb2Ygd2luZG93LkV2ZW50IGlzIHRydWUKK1BBU1MgZG9jdW1lbnQuY3Jl
YXRlRXZlbnQoJ1RleHRFdmVudCcpLmNvbnN0cnVjdG9yID09PSB3aW5kb3cuVGV4dEV2ZW50IGlz
IHRydWUKK1BBU1MgZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ1VJRXZlbnQnKSBpbnN0YW5jZW9mIHdp
bmRvdy5VSUV2ZW50IGlzIHRydWUKK1BBU1MgZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ1VJRXZlbnQn
KSBpbnN0YW5jZW9mIHdpbmRvdy5FdmVudCBpcyB0cnVlCitQQVNTIGRvY3VtZW50LmNyZWF0ZUV2
ZW50KCdVSUV2ZW50JykuY29uc3RydWN0b3IgPT09IHdpbmRvdy5VSUV2ZW50IGlzIHRydWUKK1BB
U1MgZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ1VJRXZlbnRzJykgaW5zdGFuY2VvZiB3aW5kb3cuVUlF
dmVudCBpcyB0cnVlCitQQVNTIGRvY3VtZW50LmNyZWF0ZUV2ZW50KCdVSUV2ZW50cycpIGluc3Rh
bmNlb2Ygd2luZG93LkV2ZW50IGlzIHRydWUKK1BBU1MgZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ1VJ
RXZlbnRzJykuY29uc3RydWN0b3IgPT09IHdpbmRvdy5VSUV2ZW50IGlzIHRydWUKK1BBU1MgZG9j
dW1lbnQuY3JlYXRlRXZlbnQoJ1dlYktpdEFuaW1hdGlvbkV2ZW50JykgaW5zdGFuY2VvZiB3aW5k
b3cuV2ViS2l0QW5pbWF0aW9uRXZlbnQgaXMgdHJ1ZQorUEFTUyBkb2N1bWVudC5jcmVhdGVFdmVu
dCgnV2ViS2l0QW5pbWF0aW9uRXZlbnQnKSBpbnN0YW5jZW9mIHdpbmRvdy5FdmVudCBpcyB0cnVl
CitQQVNTIGRvY3VtZW50LmNyZWF0ZUV2ZW50KCdXZWJLaXRBbmltYXRpb25FdmVudCcpLmNvbnN0
cnVjdG9yID09PSB3aW5kb3cuV2ViS2l0QW5pbWF0aW9uRXZlbnQgaXMgdHJ1ZQorUEFTUyBkb2N1
bWVudC5jcmVhdGVFdmVudCgnV2ViS2l0VHJhbnNpdGlvbkV2ZW50JykgaW5zdGFuY2VvZiB3aW5k
b3cuV2ViS2l0VHJhbnNpdGlvbkV2ZW50IGlzIHRydWUKK1BBU1MgZG9jdW1lbnQuY3JlYXRlRXZl
bnQoJ1dlYktpdFRyYW5zaXRpb25FdmVudCcpIGluc3RhbmNlb2Ygd2luZG93LkV2ZW50IGlzIHRy
dWUKK1BBU1MgZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ1dlYktpdFRyYW5zaXRpb25FdmVudCcpLmNv
bnN0cnVjdG9yID09PSB3aW5kb3cuV2ViS2l0VHJhbnNpdGlvbkV2ZW50IGlzIHRydWUKK1BBU1Mg
ZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ1doZWVsRXZlbnQnKSBpbnN0YW5jZW9mIHdpbmRvdy5XaGVl
bEV2ZW50IGlzIHRydWUKK1BBU1MgZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ1doZWVsRXZlbnQnKSBp
bnN0YW5jZW9mIHdpbmRvdy5VSUV2ZW50IGlzIHRydWUKK1BBU1MgZG9jdW1lbnQuY3JlYXRlRXZl
bnQoJ1doZWVsRXZlbnQnKSBpbnN0YW5jZW9mIHdpbmRvdy5FdmVudCBpcyB0cnVlCitQQVNTIGRv
Y3VtZW50LmNyZWF0ZUV2ZW50KCdXaGVlbEV2ZW50JykuY29uc3RydWN0b3IgPT09IHdpbmRvdy5X
aGVlbEV2ZW50IGlzIHRydWUKK1BBU1MgZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ1N0b3JhZ2VFdmVu
dCcpIGluc3RhbmNlb2Ygd2luZG93LlN0b3JhZ2VFdmVudCBpcyB0cnVlCitQQVNTIGRvY3VtZW50
LmNyZWF0ZUV2ZW50KCdTdG9yYWdlRXZlbnQnKSBpbnN0YW5jZW9mIHdpbmRvdy5FdmVudCBpcyB0
cnVlCitQQVNTIGRvY3VtZW50LmNyZWF0ZUV2ZW50KCdTdG9yYWdlRXZlbnQnKS5jb25zdHJ1Y3Rv
ciA9PT0gd2luZG93LlN0b3JhZ2VFdmVudCBpcyB0cnVlCitQQVNTIGRvY3VtZW50LmNyZWF0ZUV2
ZW50KCdTVkdFdmVudHMnKSBpbnN0YW5jZW9mIHdpbmRvdy5FdmVudCBpcyB0cnVlCitQQVNTIGRv
Y3VtZW50LmNyZWF0ZUV2ZW50KCdTVkdFdmVudHMnKS5jb25zdHJ1Y3RvciA9PT0gd2luZG93LkV2
ZW50IGlzIHRydWUKK1BBU1MgZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ1NWR1pvb21FdmVudCcpIGlu
c3RhbmNlb2Ygd2luZG93LlNWR1pvb21FdmVudCBpcyB0cnVlCitQQVNTIGRvY3VtZW50LmNyZWF0
ZUV2ZW50KCdTVkdab29tRXZlbnQnKSBpbnN0YW5jZW9mIHdpbmRvdy5FdmVudCBpcyB0cnVlCitQ
QVNTIGRvY3VtZW50LmNyZWF0ZUV2ZW50KCdTVkdab29tRXZlbnQnKS5jb25zdHJ1Y3RvciA9PT0g
d2luZG93LlNWR1pvb21FdmVudCBpcyB0cnVlCitQQVNTIGRvY3VtZW50LmNyZWF0ZUV2ZW50KCdT
Vkdab29tRXZlbnRzJykgaW5zdGFuY2VvZiB3aW5kb3cuU1ZHWm9vbUV2ZW50IGlzIHRydWUKK1BB
U1MgZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ1NWR1pvb21FdmVudHMnKSBpbnN0YW5jZW9mIHdpbmRv
dy5FdmVudCBpcyB0cnVlCitQQVNTIGRvY3VtZW50LmNyZWF0ZUV2ZW50KCdTVkdab29tRXZlbnRz
JykuY29uc3RydWN0b3IgPT09IHdpbmRvdy5TVkdab29tRXZlbnQgaXMgdHJ1ZQorUEFTUyBkb2N1
bWVudC5jcmVhdGVFdmVudCgnQ2xvc2VFdmVudCcpIGluc3RhbmNlb2Ygd2luZG93LkNsb3NlRXZl
bnQgaXMgdHJ1ZQorUEFTUyBkb2N1bWVudC5jcmVhdGVFdmVudCgnQ2xvc2VFdmVudCcpIGluc3Rh
bmNlb2Ygd2luZG93LkV2ZW50IGlzIHRydWUKK1BBU1MgZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ0Ns
b3NlRXZlbnQnKS5jb25zdHJ1Y3RvciA9PT0gd2luZG93LkNsb3NlRXZlbnQgaXMgdHJ1ZQogUEFT
UyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQogCiBURVNUIENPTVBMRVRFCkluZGV4OiBMYXlv
dXRUZXN0cy9mYXN0L2V2ZW50cy9zY3JpcHQtdGVzdHMvZXZlbnQtaW5zdGFuY2VvZi5qcwo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9zY3JpcHQtdGVzdHMvZXZlbnQtaW5z
dGFuY2VvZi5qcwkocmV2aXNpb24gOTQ0OTIpCisrKyBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9z
Y3JpcHQtdGVzdHMvZXZlbnQtaW5zdGFuY2VvZi5qcwkod29ya2luZyBjb3B5KQpAQCAtMSw2NSAr
MSwyMTUgQEAKIGRlc2NyaXB0aW9uKCJUaGlzIHRlc3RzIHRoYXQgdGhlIEV2ZW50IGNsYXNzZXMg
aGF2ZSBjb25zdHJ1Y3RvcnMuIik7CiAKLXZhciBldmVudCA9IGRvY3VtZW50LmNyZWF0ZUV2ZW50
KCJFdmVudCIpOwotc2hvdWxkQmVUcnVlKCJldmVudCBpbnN0YW5jZW9mIHdpbmRvdy5FdmVudCIp
Owotc2hvdWxkQmVUcnVlKCJldmVudC5jb25zdHJ1Y3RvciA9PT0gd2luZG93LkV2ZW50Iik7Ci0K
LXZhciB1aUV2ZW50ID0gZG9jdW1lbnQuY3JlYXRlRXZlbnQoIlVJRXZlbnQiKTsKLXNob3VsZEJl
VHJ1ZSgidWlFdmVudCBpbnN0YW5jZW9mIHdpbmRvdy5VSUV2ZW50Iik7Ci1zaG91bGRCZVRydWUo
InVpRXZlbnQgaW5zdGFuY2VvZiB3aW5kb3cuRXZlbnQiKTsKLXNob3VsZEJlVHJ1ZSgidWlFdmVu
dC5jb25zdHJ1Y3RvciA9PT0gd2luZG93LlVJRXZlbnQiKTsKLQotdmFyIGtleWJvYXJkRXZlbnQg
PSBkb2N1bWVudC5jcmVhdGVFdmVudCgiS2V5Ym9hcmRFdmVudCIpOwotc2hvdWxkQmVUcnVlKCJr
ZXlib2FyZEV2ZW50IGluc3RhbmNlb2Ygd2luZG93LktleWJvYXJkRXZlbnQiKTsKLXNob3VsZEJl
VHJ1ZSgia2V5Ym9hcmRFdmVudCBpbnN0YW5jZW9mIHdpbmRvdy5VSUV2ZW50Iik7Ci1zaG91bGRC
ZVRydWUoImtleWJvYXJkRXZlbnQgaW5zdGFuY2VvZiB3aW5kb3cuRXZlbnQiKTsKLXNob3VsZEJl
VHJ1ZSgia2V5Ym9hcmRFdmVudC5jb25zdHJ1Y3RvciA9PT0gd2luZG93LktleWJvYXJkRXZlbnQi
KTsKLQotdmFyIG1vdXNlRXZlbnQgPSBkb2N1bWVudC5jcmVhdGVFdmVudCgiTW91c2VFdmVudCIp
Owotc2hvdWxkQmVUcnVlKCJtb3VzZUV2ZW50IGluc3RhbmNlb2Ygd2luZG93Lk1vdXNlRXZlbnQi
KTsKLXNob3VsZEJlVHJ1ZSgibW91c2VFdmVudCBpbnN0YW5jZW9mIHdpbmRvdy5VSUV2ZW50Iik7
Ci1zaG91bGRCZVRydWUoIm1vdXNlRXZlbnQgaW5zdGFuY2VvZiB3aW5kb3cuRXZlbnQiKTsKLXNo
b3VsZEJlVHJ1ZSgibW91c2VFdmVudC5jb25zdHJ1Y3RvciA9PT0gd2luZG93Lk1vdXNlRXZlbnQi
KTsKLQotdmFyIHdoZWVsRXZlbnQgPSBkb2N1bWVudC5jcmVhdGVFdmVudCgiV2hlZWxFdmVudCIp
Owotc2hvdWxkQmVUcnVlKCJ3aGVlbEV2ZW50IGluc3RhbmNlb2Ygd2luZG93LldoZWVsRXZlbnQi
KTsKLXNob3VsZEJlVHJ1ZSgid2hlZWxFdmVudCBpbnN0YW5jZW9mIHdpbmRvdy5VSUV2ZW50Iik7
Ci1zaG91bGRCZVRydWUoIndoZWVsRXZlbnQgaW5zdGFuY2VvZiB3aW5kb3cuRXZlbnQiKTsKLXNo
b3VsZEJlVHJ1ZSgid2hlZWxFdmVudC5jb25zdHJ1Y3RvciA9PT0gd2luZG93LldoZWVsRXZlbnQi
KTsKLQotdmFyIG11dGF0aW9uRXZlbnQgPSBkb2N1bWVudC5jcmVhdGVFdmVudCgiTXV0YXRpb25F
dmVudCIpOwotc2hvdWxkQmVUcnVlKCJtdXRhdGlvbkV2ZW50IGluc3RhbmNlb2Ygd2luZG93Lk11
dGF0aW9uRXZlbnQiKTsKLXNob3VsZEJlVHJ1ZSgibXV0YXRpb25FdmVudCBpbnN0YW5jZW9mIHdp
bmRvdy5FdmVudCIpOwotc2hvdWxkQmVUcnVlKCJtdXRhdGlvbkV2ZW50LmNvbnN0cnVjdG9yID09
PSB3aW5kb3cuTXV0YXRpb25FdmVudCIpOwotCi12YXIgb3ZlcmZsb3dFdmVudCA9IGRvY3VtZW50
LmNyZWF0ZUV2ZW50KCJPdmVyZmxvd0V2ZW50Iik7Ci1zaG91bGRCZVRydWUoIm92ZXJmbG93RXZl
bnQgaW5zdGFuY2VvZiB3aW5kb3cuT3ZlcmZsb3dFdmVudCIpOwotc2hvdWxkQmVUcnVlKCJvdmVy
Zmxvd0V2ZW50IGluc3RhbmNlb2Ygd2luZG93LkV2ZW50Iik7Ci1zaG91bGRCZVRydWUoIm92ZXJm
bG93RXZlbnQuY29uc3RydWN0b3IgPT09IHdpbmRvdy5PdmVyZmxvd0V2ZW50Iik7Ci0KLXZhciBw
cm9ncmVzc0V2ZW50ID0gZG9jdW1lbnQuY3JlYXRlRXZlbnQoIlByb2dyZXNzRXZlbnQiKTsKLXNo
b3VsZEJlVHJ1ZSgicHJvZ3Jlc3NFdmVudCBpbnN0YW5jZW9mIHdpbmRvdy5Qcm9ncmVzc0V2ZW50
Iik7Ci1zaG91bGRCZVRydWUoInByb2dyZXNzRXZlbnQgaW5zdGFuY2VvZiB3aW5kb3cuRXZlbnQi
KTsKLXNob3VsZEJlVHJ1ZSgicHJvZ3Jlc3NFdmVudC5jb25zdHJ1Y3RvciA9PT0gd2luZG93LlBy
b2dyZXNzRXZlbnQiKTsKLQotdmFyIHRleHRFdmVudCA9IGRvY3VtZW50LmNyZWF0ZUV2ZW50KCJU
ZXh0RXZlbnQiKTsKLXNob3VsZEJlVHJ1ZSgidGV4dEV2ZW50IGluc3RhbmNlb2Ygd2luZG93LlRl
eHRFdmVudCIpOwotc2hvdWxkQmVUcnVlKCJ0ZXh0RXZlbnQgaW5zdGFuY2VvZiB3aW5kb3cuRXZl
bnQiKTsKLXNob3VsZEJlVHJ1ZSgidGV4dEV2ZW50LmNvbnN0cnVjdG9yID09PSB3aW5kb3cuVGV4
dEV2ZW50Iik7Ci0KLXZhciBtZXNzYWdlRXZlbnQgPSBkb2N1bWVudC5jcmVhdGVFdmVudCgiTWVz
c2FnZUV2ZW50Iik7Ci1zaG91bGRCZVRydWUoIm1lc3NhZ2VFdmVudCBpbnN0YW5jZW9mIHdpbmRv
dy5NZXNzYWdlRXZlbnQiKTsKLXNob3VsZEJlVHJ1ZSgibWVzc2FnZUV2ZW50IGluc3RhbmNlb2Yg
d2luZG93LkV2ZW50Iik7Ci1zaG91bGRCZVRydWUoIm1lc3NhZ2VFdmVudC5jb25zdHJ1Y3RvciA9
PT0gd2luZG93Lk1lc3NhZ2VFdmVudCIpOwotCi12YXIgYW5pbWF0aW9uRXZlbnQgPSBkb2N1bWVu
dC5jcmVhdGVFdmVudCgiV2ViS2l0QW5pbWF0aW9uRXZlbnQiKTsKLXNob3VsZEJlVHJ1ZSgiYW5p
bWF0aW9uRXZlbnQgaW5zdGFuY2VvZiB3aW5kb3cuV2ViS2l0QW5pbWF0aW9uRXZlbnQiKTsKLXNo
b3VsZEJlVHJ1ZSgiYW5pbWF0aW9uRXZlbnQgaW5zdGFuY2VvZiB3aW5kb3cuRXZlbnQiKTsKLXNo
b3VsZEJlVHJ1ZSgiYW5pbWF0aW9uRXZlbnQuY29uc3RydWN0b3IgPT09IHdpbmRvdy5XZWJLaXRB
bmltYXRpb25FdmVudCIpOwotCi12YXIgdHJhbnNpdGlvbkV2ZW50ID0gZG9jdW1lbnQuY3JlYXRl
RXZlbnQoIldlYktpdFRyYW5zaXRpb25FdmVudCIpOwotc2hvdWxkQmVUcnVlKCJ0cmFuc2l0aW9u
RXZlbnQgaW5zdGFuY2VvZiB3aW5kb3cuV2ViS2l0VHJhbnNpdGlvbkV2ZW50Iik7Ci1zaG91bGRC
ZVRydWUoInRyYW5zaXRpb25FdmVudCBpbnN0YW5jZW9mIHdpbmRvdy5FdmVudCIpOwotc2hvdWxk
QmVUcnVlKCJ0cmFuc2l0aW9uRXZlbnQuY29uc3RydWN0b3IgPT09IHdpbmRvdy5XZWJLaXRUcmFu
c2l0aW9uRXZlbnQiKTsKKy8vIEV2ZW50CitzaG91bGRCZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2
ZW50KCdFdmVudCcpIGluc3RhbmNlb2Ygd2luZG93LkV2ZW50Iik7CitzaG91bGRCZVRydWUoImRv
Y3VtZW50LmNyZWF0ZUV2ZW50KCdFdmVudCcpLmNvbnN0cnVjdG9yID09PSB3aW5kb3cuRXZlbnQi
KTsKKworLy8gRXZlbnRzIChFdmVudCBhbHRlcm5hdGl2ZSkKK3Nob3VsZEJlVHJ1ZSgiZG9jdW1l
bnQuY3JlYXRlRXZlbnQoJ0V2ZW50cycpIGluc3RhbmNlb2Ygd2luZG93LkV2ZW50Iik7CitzaG91
bGRCZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50KCdFdmVudHMnKS5jb25zdHJ1Y3RvciA9PT0g
d2luZG93LkV2ZW50Iik7CisKKy8vIEhUTUxFdmVudHMgKEV2ZW50IGFsdGVybmF0aXZlKQorc2hv
dWxkQmVUcnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgnSFRNTEV2ZW50cycpIGluc3RhbmNlb2Yg
d2luZG93LkV2ZW50Iik7CitzaG91bGRCZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50KCdIVE1M
RXZlbnRzJykuY29uc3RydWN0b3IgPT09IHdpbmRvdy5FdmVudCIpOworCisvLyBCZWZvcmVMb2Fk
RXZlbnQKK3Nob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ0JlZm9yZUxvYWRFdmVu
dCcpIGluc3RhbmNlb2Ygd2luZG93LkJlZm9yZUxvYWRFdmVudCIpOworc2hvdWxkQmVUcnVlKCJk
b2N1bWVudC5jcmVhdGVFdmVudCgnQmVmb3JlTG9hZEV2ZW50JykgaW5zdGFuY2VvZiB3aW5kb3cu
RXZlbnQiKTsKK3Nob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ0JlZm9yZUxvYWRF
dmVudCcpLmNvbnN0cnVjdG9yID09PSB3aW5kb3cuQmVmb3JlTG9hZEV2ZW50Iik7CisKKy8vIENv
bXBvc2l0aW9uRXZlbnQKK3Nob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ0NvbXBv
c2l0aW9uRXZlbnQnKSBpbnN0YW5jZW9mIHdpbmRvdy5Db21wb3NpdGlvbkV2ZW50Iik7CitzaG91
bGRCZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50KCdDb21wb3NpdGlvbkV2ZW50JykgaW5zdGFu
Y2VvZiB3aW5kb3cuRXZlbnQiKTsKK3Nob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQo
J0NvbXBvc2l0aW9uRXZlbnQnKS5jb25zdHJ1Y3RvciA9PT0gd2luZG93LkNvbXBvc2l0aW9uRXZl
bnQiKTsKKworLy8gQ3VzdG9tRXZlbnQKK3Nob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZl
bnQoJ0N1c3RvbUV2ZW50JykgaW5zdGFuY2VvZiB3aW5kb3cuQ3VzdG9tRXZlbnQiKTsKK3Nob3Vs
ZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ0N1c3RvbUV2ZW50JykgaW5zdGFuY2VvZiB3
aW5kb3cuRXZlbnQiKTsKK3Nob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ0N1c3Rv
bUV2ZW50JykuY29uc3RydWN0b3IgPT09IHdpbmRvdy5DdXN0b21FdmVudCIpOworCisvLyBFcnJv
ckV2ZW50CitzaG91bGRCZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50KCdFcnJvckV2ZW50Jykg
aW5zdGFuY2VvZiB3aW5kb3cuRXJyb3JFdmVudCIpOworc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5j
cmVhdGVFdmVudCgnRXJyb3JFdmVudCcpIGluc3RhbmNlb2Ygd2luZG93LkV2ZW50Iik7CitzaG91
bGRCZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50KCdFcnJvckV2ZW50JykuY29uc3RydWN0b3Ig
PT09IHdpbmRvdy5FcnJvckV2ZW50Iik7CisKKy8vIEhhc2hDaGFuZ2VFdmVudAorc2hvdWxkQmVU
cnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgnSGFzaENoYW5nZUV2ZW50JykgaW5zdGFuY2VvZiB3
aW5kb3cuSGFzaENoYW5nZUV2ZW50Iik7CitzaG91bGRCZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2
ZW50KCdIYXNoQ2hhbmdlRXZlbnQnKSBpbnN0YW5jZW9mIHdpbmRvdy5FdmVudCIpOworc2hvdWxk
QmVUcnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgnSGFzaENoYW5nZUV2ZW50JykuY29uc3RydWN0
b3IgPT09IHdpbmRvdy5IYXNoQ2hhbmdlRXZlbnQiKTsKKworLy8gS2V5Ym9hcmRFdmVudAorc2hv
dWxkQmVUcnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgnS2V5Ym9hcmRFdmVudCcpIGluc3RhbmNl
b2Ygd2luZG93LktleWJvYXJkRXZlbnQiKTsKK3Nob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRl
RXZlbnQoJ0tleWJvYXJkRXZlbnQnKSBpbnN0YW5jZW9mIHdpbmRvdy5VSUV2ZW50Iik7CitzaG91
bGRCZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50KCdLZXlib2FyZEV2ZW50JykgaW5zdGFuY2Vv
ZiB3aW5kb3cuRXZlbnQiKTsKK3Nob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ0tl
eWJvYXJkRXZlbnQnKS5jb25zdHJ1Y3RvciA9PT0gd2luZG93LktleWJvYXJkRXZlbnQiKTsKKwor
Ly8gS2V5Ym9hcmRFdmVudHMgKEtleWJvYXJkRXZlbnQgYWx0ZXJuYXRpdmUpCitzaG91bGRCZVRy
dWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50KCdLZXlib2FyZEV2ZW50cycpIGluc3RhbmNlb2Ygd2lu
ZG93LktleWJvYXJkRXZlbnQiKTsKK3Nob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQo
J0tleWJvYXJkRXZlbnRzJykgaW5zdGFuY2VvZiB3aW5kb3cuVUlFdmVudCIpOworc2hvdWxkQmVU
cnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgnS2V5Ym9hcmRFdmVudHMnKSBpbnN0YW5jZW9mIHdp
bmRvdy5FdmVudCIpOworc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgnS2V5Ym9h
cmRFdmVudHMnKS5jb25zdHJ1Y3RvciA9PT0gd2luZG93LktleWJvYXJkRXZlbnQiKTsKKworLy8g
TWVzc2FnZUV2ZW50CitzaG91bGRCZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50KCdNZXNzYWdl
RXZlbnQnKSBpbnN0YW5jZW9mIHdpbmRvdy5NZXNzYWdlRXZlbnQiKTsKK3Nob3VsZEJlVHJ1ZSgi
ZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ01lc3NhZ2VFdmVudCcpIGluc3RhbmNlb2Ygd2luZG93LkV2
ZW50Iik7CitzaG91bGRCZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50KCdNZXNzYWdlRXZlbnQn
KS5jb25zdHJ1Y3RvciA9PT0gd2luZG93Lk1lc3NhZ2VFdmVudCIpOworCisvLyBNb3VzZUV2ZW50
CitzaG91bGRCZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50KCdNb3VzZUV2ZW50JykgaW5zdGFu
Y2VvZiB3aW5kb3cuTW91c2VFdmVudCIpOworc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5jcmVhdGVF
dmVudCgnTW91c2VFdmVudCcpIGluc3RhbmNlb2Ygd2luZG93LlVJRXZlbnQiKTsKK3Nob3VsZEJl
VHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ01vdXNlRXZlbnQnKSBpbnN0YW5jZW9mIHdpbmRv
dy5FdmVudCIpOworc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgnTW91c2VFdmVu
dCcpLmNvbnN0cnVjdG9yID09PSB3aW5kb3cuTW91c2VFdmVudCIpOworCisvLyBNb3VzZUV2ZW50
cyAoTW91c2VFdmVudCBhbHRlcm5hdGl2ZSkKK3Nob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRl
RXZlbnQoJ01vdXNlRXZlbnRzJykgaW5zdGFuY2VvZiB3aW5kb3cuTW91c2VFdmVudCIpOworc2hv
dWxkQmVUcnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgnTW91c2VFdmVudHMnKSBpbnN0YW5jZW9m
IHdpbmRvdy5VSUV2ZW50Iik7CitzaG91bGRCZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50KCdN
b3VzZUV2ZW50cycpIGluc3RhbmNlb2Ygd2luZG93LkV2ZW50Iik7CitzaG91bGRCZVRydWUoImRv
Y3VtZW50LmNyZWF0ZUV2ZW50KCdNb3VzZUV2ZW50cycpLmNvbnN0cnVjdG9yID09PSB3aW5kb3cu
TW91c2VFdmVudCIpOworCisvLyBNdXRhdGlvbkV2ZW50CitzaG91bGRCZVRydWUoImRvY3VtZW50
LmNyZWF0ZUV2ZW50KCdNdXRhdGlvbkV2ZW50JykgaW5zdGFuY2VvZiB3aW5kb3cuTXV0YXRpb25F
dmVudCIpOworc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgnTXV0YXRpb25FdmVu
dCcpIGluc3RhbmNlb2Ygd2luZG93LkV2ZW50Iik7CitzaG91bGRCZVRydWUoImRvY3VtZW50LmNy
ZWF0ZUV2ZW50KCdNdXRhdGlvbkV2ZW50JykuY29uc3RydWN0b3IgPT09IHdpbmRvdy5NdXRhdGlv
bkV2ZW50Iik7CisKKy8vIE11dGF0aW9uRXZlbnRzIChNdXRhdGlvbkV2ZW50IGFsdGVybmF0aXZl
KQorc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgnTXV0YXRpb25FdmVudHMnKSBp
bnN0YW5jZW9mIHdpbmRvdy5NdXRhdGlvbkV2ZW50Iik7CitzaG91bGRCZVRydWUoImRvY3VtZW50
LmNyZWF0ZUV2ZW50KCdNdXRhdGlvbkV2ZW50cycpIGluc3RhbmNlb2Ygd2luZG93LkV2ZW50Iik7
CitzaG91bGRCZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50KCdNdXRhdGlvbkV2ZW50cycpLmNv
bnN0cnVjdG9yID09PSB3aW5kb3cuTXV0YXRpb25FdmVudCIpOworCisvLyBPdmVyZmxvd0V2ZW50
CitzaG91bGRCZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50KCdPdmVyZmxvd0V2ZW50JykgaW5z
dGFuY2VvZiB3aW5kb3cuT3ZlcmZsb3dFdmVudCIpOworc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5j
cmVhdGVFdmVudCgnT3ZlcmZsb3dFdmVudCcpIGluc3RhbmNlb2Ygd2luZG93LkV2ZW50Iik7Citz
aG91bGRCZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50KCdPdmVyZmxvd0V2ZW50JykuY29uc3Ry
dWN0b3IgPT09IHdpbmRvdy5PdmVyZmxvd0V2ZW50Iik7CisKKy8vIFBhZ2VUcmFuc2l0aW9uRXZl
bnQKK3Nob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ1BhZ2VUcmFuc2l0aW9uRXZl
bnQnKSBpbnN0YW5jZW9mIHdpbmRvdy5QYWdlVHJhbnNpdGlvbkV2ZW50Iik7CitzaG91bGRCZVRy
dWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50KCdQYWdlVHJhbnNpdGlvbkV2ZW50JykgaW5zdGFuY2Vv
ZiB3aW5kb3cuRXZlbnQiKTsKK3Nob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ1Bh
Z2VUcmFuc2l0aW9uRXZlbnQnKS5jb25zdHJ1Y3RvciA9PT0gd2luZG93LlBhZ2VUcmFuc2l0aW9u
RXZlbnQiKTsKKworLy8gUG9wU3RhdGVFdmVudAorc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5jcmVh
dGVFdmVudCgnUG9wU3RhdGVFdmVudCcpIGluc3RhbmNlb2Ygd2luZG93LlBvcFN0YXRlRXZlbnQi
KTsKK3Nob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ1BvcFN0YXRlRXZlbnQnKSBp
bnN0YW5jZW9mIHdpbmRvdy5FdmVudCIpOworc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5jcmVhdGVF
dmVudCgnUG9wU3RhdGVFdmVudCcpLmNvbnN0cnVjdG9yID09PSB3aW5kb3cuUG9wU3RhdGVFdmVu
dCIpOworCisvLyBQcm9ncmVzc0V2ZW50CitzaG91bGRCZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2
ZW50KCdQcm9ncmVzc0V2ZW50JykgaW5zdGFuY2VvZiB3aW5kb3cuUHJvZ3Jlc3NFdmVudCIpOwor
c2hvdWxkQmVUcnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgnUHJvZ3Jlc3NFdmVudCcpIGluc3Rh
bmNlb2Ygd2luZG93LkV2ZW50Iik7CitzaG91bGRCZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50
KCdQcm9ncmVzc0V2ZW50JykuY29uc3RydWN0b3IgPT09IHdpbmRvdy5Qcm9ncmVzc0V2ZW50Iik7
CisKKy8vIFRleHRFdmVudAorc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgnVGV4
dEV2ZW50JykgaW5zdGFuY2VvZiB3aW5kb3cuVGV4dEV2ZW50Iik7CitzaG91bGRCZVRydWUoImRv
Y3VtZW50LmNyZWF0ZUV2ZW50KCdUZXh0RXZlbnQnKSBpbnN0YW5jZW9mIHdpbmRvdy5VSUV2ZW50
Iik7CitzaG91bGRCZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50KCdUZXh0RXZlbnQnKSBpbnN0
YW5jZW9mIHdpbmRvdy5FdmVudCIpOworc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5jcmVhdGVFdmVu
dCgnVGV4dEV2ZW50JykuY29uc3RydWN0b3IgPT09IHdpbmRvdy5UZXh0RXZlbnQiKTsKKworLy8g
VUlFdmVudAorc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgnVUlFdmVudCcpIGlu
c3RhbmNlb2Ygd2luZG93LlVJRXZlbnQiKTsKK3Nob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRl
RXZlbnQoJ1VJRXZlbnQnKSBpbnN0YW5jZW9mIHdpbmRvdy5FdmVudCIpOworc2hvdWxkQmVUcnVl
KCJkb2N1bWVudC5jcmVhdGVFdmVudCgnVUlFdmVudCcpLmNvbnN0cnVjdG9yID09PSB3aW5kb3cu
VUlFdmVudCIpOworCisvLyBVSUV2ZW50cyAoVUlFdmVudCBhbHRlcm5hdGl2ZSkKK3Nob3VsZEJl
VHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ1VJRXZlbnRzJykgaW5zdGFuY2VvZiB3aW5kb3cu
VUlFdmVudCIpOworc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgnVUlFdmVudHMn
KSBpbnN0YW5jZW9mIHdpbmRvdy5FdmVudCIpOworc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5jcmVh
dGVFdmVudCgnVUlFdmVudHMnKS5jb25zdHJ1Y3RvciA9PT0gd2luZG93LlVJRXZlbnQiKTsKKwor
Ly8gV2ViS2l0QW5pbWF0aW9uRXZlbnQKK3Nob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZl
bnQoJ1dlYktpdEFuaW1hdGlvbkV2ZW50JykgaW5zdGFuY2VvZiB3aW5kb3cuV2ViS2l0QW5pbWF0
aW9uRXZlbnQiKTsKK3Nob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ1dlYktpdEFu
aW1hdGlvbkV2ZW50JykgaW5zdGFuY2VvZiB3aW5kb3cuRXZlbnQiKTsKK3Nob3VsZEJlVHJ1ZSgi
ZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ1dlYktpdEFuaW1hdGlvbkV2ZW50JykuY29uc3RydWN0b3Ig
PT09IHdpbmRvdy5XZWJLaXRBbmltYXRpb25FdmVudCIpOworCisvLyBXZWJLaXRUcmFuc2l0aW9u
RXZlbnQKK3Nob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ1dlYktpdFRyYW5zaXRp
b25FdmVudCcpIGluc3RhbmNlb2Ygd2luZG93LldlYktpdFRyYW5zaXRpb25FdmVudCIpOworc2hv
dWxkQmVUcnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgnV2ViS2l0VHJhbnNpdGlvbkV2ZW50Jykg
aW5zdGFuY2VvZiB3aW5kb3cuRXZlbnQiKTsKK3Nob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRl
RXZlbnQoJ1dlYktpdFRyYW5zaXRpb25FdmVudCcpLmNvbnN0cnVjdG9yID09PSB3aW5kb3cuV2Vi
S2l0VHJhbnNpdGlvbkV2ZW50Iik7CisKKy8vIFdoZWVsRXZlbnQKK3Nob3VsZEJlVHJ1ZSgiZG9j
dW1lbnQuY3JlYXRlRXZlbnQoJ1doZWVsRXZlbnQnKSBpbnN0YW5jZW9mIHdpbmRvdy5XaGVlbEV2
ZW50Iik7CitzaG91bGRCZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50KCdXaGVlbEV2ZW50Jykg
aW5zdGFuY2VvZiB3aW5kb3cuVUlFdmVudCIpOworc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5jcmVh
dGVFdmVudCgnV2hlZWxFdmVudCcpIGluc3RhbmNlb2Ygd2luZG93LkV2ZW50Iik7CitzaG91bGRC
ZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50KCdXaGVlbEV2ZW50JykuY29uc3RydWN0b3IgPT09
IHdpbmRvdy5XaGVlbEV2ZW50Iik7CisKKy8vICNpZiBFTkFCTEUoRE9NX1NUT1JBR0UpCisvLyBT
dG9yYWdlRXZlbnQKK3Nob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ1N0b3JhZ2VF
dmVudCcpIGluc3RhbmNlb2Ygd2luZG93LlN0b3JhZ2VFdmVudCIpOworc2hvdWxkQmVUcnVlKCJk
b2N1bWVudC5jcmVhdGVFdmVudCgnU3RvcmFnZUV2ZW50JykgaW5zdGFuY2VvZiB3aW5kb3cuRXZl
bnQiKTsKK3Nob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ1N0b3JhZ2VFdmVudCcp
LmNvbnN0cnVjdG9yID09PSB3aW5kb3cuU3RvcmFnZUV2ZW50Iik7CisKKy8vICNpZiBFTkFCTEUo
U1ZHKQorLy8gU1ZHRXZlbnRzIChFdmVudCBhbHRlcm5hdGl2ZSkKK3Nob3VsZEJlVHJ1ZSgiZG9j
dW1lbnQuY3JlYXRlRXZlbnQoJ1NWR0V2ZW50cycpIGluc3RhbmNlb2Ygd2luZG93LkV2ZW50Iik7
CitzaG91bGRCZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50KCdTVkdFdmVudHMnKS5jb25zdHJ1
Y3RvciA9PT0gd2luZG93LkV2ZW50Iik7CisKKy8vICNpZiBFTkFCTEUoU1ZHKQorLy8gU1ZHWm9v
bUV2ZW50CitzaG91bGRCZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50KCdTVkdab29tRXZlbnQn
KSBpbnN0YW5jZW9mIHdpbmRvdy5TVkdab29tRXZlbnQiKTsKK3Nob3VsZEJlVHJ1ZSgiZG9jdW1l
bnQuY3JlYXRlRXZlbnQoJ1NWR1pvb21FdmVudCcpIGluc3RhbmNlb2Ygd2luZG93LkV2ZW50Iik7
CitzaG91bGRCZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50KCdTVkdab29tRXZlbnQnKS5jb25z
dHJ1Y3RvciA9PT0gd2luZG93LlNWR1pvb21FdmVudCIpOworCisvLyAjaWYgRU5BQkxFKFNWRykK
Ky8vIFNWR1pvb21FdmVudHMgKFNWR1pvb21FdmVudCBhbHRlcm5hdGl2ZSkKK3Nob3VsZEJlVHJ1
ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ1NWR1pvb21FdmVudHMnKSBpbnN0YW5jZW9mIHdpbmRv
dy5TVkdab29tRXZlbnQiKTsKK3Nob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ1NW
R1pvb21FdmVudHMnKSBpbnN0YW5jZW9mIHdpbmRvdy5FdmVudCIpOworc2hvdWxkQmVUcnVlKCJk
b2N1bWVudC5jcmVhdGVFdmVudCgnU1ZHWm9vbUV2ZW50cycpLmNvbnN0cnVjdG9yID09PSB3aW5k
b3cuU1ZHWm9vbUV2ZW50Iik7CisKKy8vICNpZiBFTkFCTEUoV0VCX1NPQ0tFVFMpCisvLyBDbG9z
ZUV2ZW50CitzaG91bGRCZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50KCdDbG9zZUV2ZW50Jykg
aW5zdGFuY2VvZiB3aW5kb3cuQ2xvc2VFdmVudCIpOworc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5j
cmVhdGVFdmVudCgnQ2xvc2VFdmVudCcpIGluc3RhbmNlb2Ygd2luZG93LkV2ZW50Iik7CitzaG91
bGRCZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50KCdDbG9zZUV2ZW50JykuY29uc3RydWN0b3Ig
PT09IHdpbmRvdy5DbG9zZUV2ZW50Iik7CisKKworLy8gI2lmIEVOQUJMRShXRUJfQVVESU8pCisv
LyBBdWRpb1Byb2Nlc3NpbmdFdmVudAorLy8gc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5jcmVhdGVF
dmVudCgnQXVkaW9Qcm9jZXNzaW5nRXZlbnQnKSBpbnN0YW5jZW9mIHdpbmRvdy5BdWRpb1Byb2Nl
c3NpbmdFdmVudCIpOworLy8gc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgnQXVk
aW9Qcm9jZXNzaW5nRXZlbnQnKSBpbnN0YW5jZW9mIHdpbmRvdy5FdmVudCIpOworLy8gc2hvdWxk
QmVUcnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgnQXVkaW9Qcm9jZXNzaW5nRXZlbnQnKS5jb25z
dHJ1Y3RvciA9PT0gd2luZG93LkF1ZGlvUHJvY2Vzc2luZ0V2ZW50Iik7CisKKy8vICNpZiBFTkFC
TEUoV0VCX0FVRElPKQorLy8gT2ZmbGluZUF1ZGlvQ29tcGxldGlvbkV2ZW50CisvLyBzaG91bGRC
ZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50KCdPZmZsaW5lQXVkaW9Db21wbGV0aW9uRXZlbnQn
KSBpbnN0YW5jZW9mIHdpbmRvdy5PZmZsaW5lQXVkaW9Db21wbGV0aW9uRXZlbnQiKTsKKy8vIHNo
b3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ09mZmxpbmVBdWRpb0NvbXBsZXRpb25F
dmVudCcpIGluc3RhbmNlb2Ygd2luZG93LkV2ZW50Iik7CisvLyBzaG91bGRCZVRydWUoImRvY3Vt
ZW50LmNyZWF0ZUV2ZW50KCdPZmZsaW5lQXVkaW9Db21wbGV0aW9uRXZlbnQnKS5jb25zdHJ1Y3Rv
ciA9PT0gd2luZG93Lk9mZmxpbmVBdWRpb0NvbXBsZXRpb25FdmVudCIpOworCisvLyAjaWYgRU5B
QkxFKElOUFVUX1NQRUVDSCkKKy8vIE1lZGlhU3RyZWFtRXZlbnQKKy8vIHNob3VsZEJlVHJ1ZSgi
ZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ01lZGlhU3RyZWFtRXZlbnQnKSBpbnN0YW5jZW9mIHdpbmRv
dy5NZWRpYVN0cmVhbUV2ZW50Iik7CisvLyBzaG91bGRCZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2
ZW50KCdNZWRpYVN0cmVhbUV2ZW50JykgaW5zdGFuY2VvZiB3aW5kb3cuRXZlbnQiKTsKKy8vIHNo
b3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ01lZGlhU3RyZWFtRXZlbnQnKS5jb25z
dHJ1Y3RvciA9PT0gd2luZG93Lk1lZGlhU3RyZWFtRXZlbnQiKTsKKworLy8gI2lmIEVOQUJMRShJ
TlBVVF9TUEVFQ0gpCisvLyBTcGVlY2hJbnB1dEV2ZW50CisvLyBzaG91bGRCZVRydWUoImRvY3Vt
ZW50LmNyZWF0ZUV2ZW50KCdTcGVlY2hJbnB1dEV2ZW50JykgaW5zdGFuY2VvZiB3aW5kb3cuU3Bl
ZWNoSW5wdXRFdmVudCIpOworLy8gc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgn
U3BlZWNoSW5wdXRFdmVudCcpIGluc3RhbmNlb2Ygd2luZG93LkV2ZW50Iik7CisvLyBzaG91bGRC
ZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50KCdTcGVlY2hJbnB1dEV2ZW50JykuY29uc3RydWN0
b3IgPT09IHdpbmRvdy5TcGVlY2hJbnB1dEV2ZW50Iik7CisKKy8vICNpZiBFTkFCTEUoV0VCR0wp
CisvLyBXZWJHTENvbnRleHRFdmVudAorLy8gc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5jcmVhdGVF
dmVudCgnV2ViR0xDb250ZXh0RXZlbnQnKSBpbnN0YW5jZW9mIHdpbmRvdy5XZWJHTENvbnRleHRF
dmVudCIpOworLy8gc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgnV2ViR0xDb250
ZXh0RXZlbnQnKSBpbnN0YW5jZW9mIHdpbmRvdy5FdmVudCIpOworLy8gc2hvdWxkQmVUcnVlKCJk
b2N1bWVudC5jcmVhdGVFdmVudCgnV2ViR0xDb250ZXh0RXZlbnQnKS5jb25zdHJ1Y3RvciA9PT0g
d2luZG93LldlYkdMQ29udGV4dEV2ZW50Iik7CisKKy8vICNpZiBFTkFCTEUoVE9VQ0hfRVZFTlRT
KQorLy8gVG91Y2hFdmVudAorLy8gc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgn
VG91Y2hFdmVudCcpIGluc3RhbmNlb2Ygd2luZG93LlRvdWNoRXZlbnQiKTsKKy8vIHNob3VsZEJl
VHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ1RvdWNoRXZlbnQnKSBpbnN0YW5jZW9mIHdpbmRv
dy5FdmVudCIpOworLy8gc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgnVG91Y2hF
dmVudCcpLmNvbnN0cnVjdG9yID09PSB3aW5kb3cuVG91Y2hFdmVudCIpOworCisvLyAjaWYgRU5B
QkxFKERFVklDRV9PUklFTlRBVElPTikKKy8vIERldmljZU1vdGlvbkV2ZW50CisvLyBzaG91bGRC
ZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50KCdEZXZpY2VNb3Rpb25FdmVudCcpIGluc3RhbmNl
b2Ygd2luZG93LkRldmljZU1vdGlvbkV2ZW50Iik7CisvLyBzaG91bGRCZVRydWUoImRvY3VtZW50
LmNyZWF0ZUV2ZW50KCdEZXZpY2VNb3Rpb25FdmVudCcpIGluc3RhbmNlb2Ygd2luZG93LkV2ZW50
Iik7CisvLyBzaG91bGRCZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50KCdEZXZpY2VNb3Rpb25F
dmVudCcpLmNvbnN0cnVjdG9yID09PSB3aW5kb3cuRGV2aWNlTW90aW9uRXZlbnQiKTsKKworLy8g
I2lmIEVOQUJMRShERVZJQ0VfT1JJRU5UQVRJT04pCisvLyBEZXZpY2VPcmllbnRhdGlvbkV2ZW50
CisvLyBzaG91bGRCZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50KCdEZXZpY2VPcmllbnRhdGlv
bkV2ZW50JykgaW5zdGFuY2VvZiB3aW5kb3cuRGV2aWNlT3JpZW50YXRpb25FdmVudCIpOworLy8g
c2hvdWxkQmVUcnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgnRGV2aWNlT3JpZW50YXRpb25FdmVu
dCcpIGluc3RhbmNlb2Ygd2luZG93LkV2ZW50Iik7CisvLyBzaG91bGRCZVRydWUoImRvY3VtZW50
LmNyZWF0ZUV2ZW50KCdEZXZpY2VPcmllbnRhdGlvbkV2ZW50JykuY29uc3RydWN0b3IgPT09IHdp
bmRvdy5EZXZpY2VPcmllbnRhdGlvbkV2ZW50Iik7CisKKy8vICNpZiBFTkFCTEUoT1JJRU5UQVRJ
T05fRVZFTlRTKQorLy8gT3JpZW50YXRpb25FdmVudCAoRXZlbnQgYWx0ZXJuYXRpdmUpCisvLyBz
aG91bGRCZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50KCdPcmllbnRhdGlvbkV2ZW50JykgaW5z
dGFuY2VvZiB3aW5kb3cuRXZlbnQiKTsKKy8vIHNob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRl
RXZlbnQoJ09yaWVudGF0aW9uRXZlbnQnKS5jb25zdHJ1Y3RvciA9PT0gd2luZG93LkV2ZW50Iik7
CisKIAogdmFyIHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>106294</attachid>
            <date>2011-09-04 13:38:26 -0700</date>
            <delta_ts>2011-09-04 13:59:25 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-67568-20110904133825.patch</filename>
            <type>text/plain</type>
            <size>36213</size>
            <attacher name="Sam Weinig">sam</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDk0NTA0KQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMzMgQEAKKzIwMTEtMDktMDQgIFNhbSBXZWlu
aWcgIDxzYW1Ad2Via2l0Lm9yZz4KKworICAgICAgICBEb2N1bWVudC5jcmVhdGVFdmVudCBzaG91
bGQgc3VwcG9ydCBhbGwgdGhlIGludGVyZmFjZXMgb2YgRXZlbnQgd2UgZ290CisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02NzU2OAorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVwZGF0ZWQgZmFzdC9ldmVudHMv
ZXZlbnQtY3JlYXRpb24uaHRtbAorCisgICAgICAgICogZG9tL0JlZm9yZUxvYWRFdmVudC5oOgor
ICAgICAgICAoV2ViQ29yZTo6QmVmb3JlTG9hZEV2ZW50OjpjcmVhdGUpOgorICAgICAgICAoV2Vi
Q29yZTo6QmVmb3JlTG9hZEV2ZW50OjpCZWZvcmVMb2FkRXZlbnQpOgorICAgICAgICBBZGRlZCBl
bXB0eSBjcmVhdGUuCisgICAgICAgIAorICAgICAgICAqIGRvbS9Eb2N1bWVudC5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpEb2N1bWVudDo6Y3JlYXRlRXZlbnQpOgorICAgICAgICBBZGQgbWlzc2lu
ZyBpbnRlcmZhY2VzLgorCisgICAgICAgICogZG9tL0hhc2hDaGFuZ2VFdmVudC5oOgorICAgICAg
ICAoV2ViQ29yZTo6SGFzaENoYW5nZUV2ZW50OjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6
SGFzaENoYW5nZUV2ZW50OjpIYXNoQ2hhbmdlRXZlbnQpOgorICAgICAgICBBZGRlZCBlbXB0eSBj
cmVhdGUuCisKKyAgICAgICAgKiBwYWdlL1NwZWVjaElucHV0RXZlbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6U3BlZWNoSW5wdXRFdmVudDo6Y3JlYXRlKToKKyAgICAgICAgKFdlYkNvcmU6OlNw
ZWVjaElucHV0RXZlbnQ6OlNwZWVjaElucHV0RXZlbnQpOgorICAgICAgICAoV2ViQ29yZTo6U3Bl
ZWNoSW5wdXRFdmVudDo6flNwZWVjaElucHV0RXZlbnQpOgorICAgICAgICAqIHBhZ2UvU3BlZWNo
SW5wdXRFdmVudC5oOgorICAgICAgICBBZGRlZCBlbXB0eSBjcmVhdGUuCisKIDIwMTEtMDktMDQg
IEFkYW0gQmFydGggIDxhYmFydGhAd2Via2l0Lm9yZz4KIAogICAgICAgICBbQ2hyb21pdW1dIEFk
ZCBtZW1vcnkgdGhyZXNob2xkIHZhbHVlcyB0byBXZWJLaXRQbGF0Zm9ybVN1cHBvcnQuaApJbmRl
eDogU291cmNlL1dlYkNvcmUvZG9tL0JlZm9yZUxvYWRFdmVudC5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJDb3JlL2RvbS9CZWZvcmVMb2FkRXZlbnQuaAkocmV2aXNpb24gOTQ0OTQpCisrKyBT
b3VyY2UvV2ViQ29yZS9kb20vQmVmb3JlTG9hZEV2ZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTM2
LDYgKzM2LDExIEBAIGNsYXNzIEJlZm9yZUxvYWRFdmVudCA6IHB1YmxpYyBFdmVudCB7CiBwdWJs
aWM6CiAgICAgdmlydHVhbCBib29sIGlzQmVmb3JlTG9hZEV2ZW50KCkgY29uc3QgeyByZXR1cm4g
dHJ1ZTsgfQogCisgICAgc3RhdGljIFBhc3NSZWZQdHI8QmVmb3JlTG9hZEV2ZW50PiBjcmVhdGUo
KQorICAgIHsKKyAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBCZWZvcmVMb2FkRXZlbnQpOwor
ICAgIH0KKwogICAgIHN0YXRpYyBQYXNzUmVmUHRyPEJlZm9yZUxvYWRFdmVudD4gY3JlYXRlKGNv
bnN0IFN0cmluZyYgdXJsKQogICAgIHsKICAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBCZWZv
cmVMb2FkRXZlbnQodXJsKSk7CkBAIC01NCwxMCArNTksMTUgQEAgcHVibGljOgogICAgIGNvbnN0
IFN0cmluZyYgdXJsKCkgY29uc3QgeyByZXR1cm4gbV91cmw7IH0KIAogcHJpdmF0ZToKKyAgICBC
ZWZvcmVMb2FkRXZlbnQoKQorICAgIHsKKyAgICB9CisKICAgICBCZWZvcmVMb2FkRXZlbnQoY29u
c3QgU3RyaW5nJiB1cmwpCiAgICAgICAgIDogRXZlbnQoZXZlbnROYW1lcygpLmJlZm9yZWxvYWRF
dmVudCwgZmFsc2UsIHRydWUpCiAgICAgICAgICwgbV91cmwodXJsKQotICAgIHt9CisgICAgewor
ICAgIH0KIAogICAgIFN0cmluZyBtX3VybDsKIH07CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9kb20v
RG9jdW1lbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5j
cHAJKHJldmlzaW9uIDk0NDk0KQorKysgU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcAko
d29ya2luZyBjb3B5KQpAQCAtMzEsNiArMzEsNyBAQAogI2luY2x1ZGUgIkFuaW1hdGlvbkNvbnRy
b2xsZXIuaCIKICNpbmNsdWRlICJBdHRyLmgiCiAjaW5jbHVkZSAiQXR0cmlidXRlLmgiCisjaW5j
bHVkZSAiQmVmb3JlTG9hZEV2ZW50LmgiCiAjaW5jbHVkZSAiQ0RBVEFTZWN0aW9uLmgiCiAjaW5j
bHVkZSAiQ1NTUHJpbWl0aXZlVmFsdWVDYWNoZS5oIgogI2luY2x1ZGUgIkNTU1N0eWxlU2VsZWN0
b3IuaCIKQEAgLTQxLDEzICs0MiwxNCBAQAogI2luY2x1ZGUgIkNocm9tZS5oIgogI2luY2x1ZGUg
IkNocm9tZUNsaWVudC5oIgogI2luY2x1ZGUgIkNvbW1lbnQuaCIKKyNpbmNsdWRlICJDb21wb3Np
dGlvbkV2ZW50LmgiCiAjaW5jbHVkZSAiQ29uc29sZS5oIgogI2luY2x1ZGUgIkNvbnRlbnRTZWN1
cml0eVBvbGljeS5oIgogI2luY2x1ZGUgIkNvb2tpZUphci5oIgogI2luY2x1ZGUgIkN1c3RvbUV2
ZW50LmgiCi0jaW5jbHVkZSAiRGF0ZUNvbXBvbmVudHMuaCIKICNpbmNsdWRlICJET01JbXBsZW1l
bnRhdGlvbi5oIgogI2luY2x1ZGUgIkRPTVdpbmRvdy5oIgorI2luY2x1ZGUgIkRhdGVDb21wb25l
bnRzLmgiCiAjaW5jbHVkZSAiRGV2aWNlTW90aW9uRXZlbnQuaCIKICNpbmNsdWRlICJEZXZpY2VP
cmllbnRhdGlvbkV2ZW50LmgiCiAjaW5jbHVkZSAiRG9jdW1lbnRGcmFnbWVudC5oIgpAQCAtNTgs
NiArNjAsNyBAQAogI2luY2x1ZGUgIkVkaXRvci5oIgogI2luY2x1ZGUgIkVsZW1lbnQuaCIKICNp
bmNsdWRlICJFbnRpdHlSZWZlcmVuY2UuaCIKKyNpbmNsdWRlICJFcnJvckV2ZW50LmgiCiAjaW5j
bHVkZSAiRXZlbnQuaCIKICNpbmNsdWRlICJFdmVudEhhbmRsZXIuaCIKICNpbmNsdWRlICJFdmVu
dExpc3RlbmVyLmgiCkBAIC03Miw3ICs3NSw2IEBACiAjaW5jbHVkZSAiRnJhbWVTZWxlY3Rpb24u
aCIKICNpbmNsdWRlICJGcmFtZVRyZWUuaCIKICNpbmNsdWRlICJGcmFtZVZpZXcuaCIKLSNpbmNs
dWRlICJIYXNoQ2hhbmdlRXZlbnQuaCIKICNpbmNsdWRlICJIVE1MQWxsQ29sbGVjdGlvbi5oIgog
I2luY2x1ZGUgIkhUTUxBbmNob3JFbGVtZW50LmgiCiAjaW5jbHVkZSAiSFRNTEJvZHlFbGVtZW50
LmgiCkBAIC05Miw2ICs5NCw3IEBACiAjaW5jbHVkZSAiSFRNTFN0eWxlRWxlbWVudC5oIgogI2lu
Y2x1ZGUgIkhUTUxUaXRsZUVsZW1lbnQuaCIKICNpbmNsdWRlICJIVFRQUGFyc2Vycy5oIgorI2lu
Y2x1ZGUgIkhhc2hDaGFuZ2VFdmVudC5oIgogI2luY2x1ZGUgIkhpdFRlc3RSZXF1ZXN0LmgiCiAj
aW5jbHVkZSAiSGl0VGVzdFJlc3VsdC5oIgogI2luY2x1ZGUgIkltYWdlTG9hZGVyLmgiCkBAIC0x
NDksNiArMTUyLDcgQEAKICNpbmNsdWRlICJXaGVlbEV2ZW50LmgiCiAjaW5jbHVkZSAiWE1MRG9j
dW1lbnRQYXJzZXIuaCIKICNpbmNsdWRlICJYTUxIdHRwUmVxdWVzdC5oIgorI2luY2x1ZGUgIlhN
TEh0dHBSZXF1ZXN0UHJvZ3Jlc3NFdmVudC5oIgogI2luY2x1ZGUgIlhNTE5TTmFtZXMuaCIKICNp
bmNsdWRlICJYTUxOYW1lcy5oIgogI2luY2x1ZGUgImh0bWxlZGl0aW5nLmgiCkBAIC0yMTMsNiAr
MjE3LDI3IEBACiAjaW5jbHVkZSAiU2NyaXB0ZWRBbmltYXRpb25Db250cm9sbGVyLmgiCiAjZW5k
aWYKIAorI2lmIEVOQUJMRShXRUJfQVVESU8pCisjaW5jbHVkZSAiQXVkaW9Qcm9jZXNzaW5nRXZl
bnQuaCIKKyNpbmNsdWRlICJPZmZsaW5lQXVkaW9Db21wbGV0aW9uRXZlbnQuaCIKKyNlbmRpZgor
CisjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKKyNpbmNsdWRlICJNZWRpYVN0cmVhbUV2ZW50Lmgi
CisjZW5kaWYKKworI2lmIEVOQUJMRShJTlBVVF9TUEVFQ0gpCisjaW5jbHVkZSAiU3BlZWNoSW5w
dXRFdmVudC5oIgorI2VuZGlmCisKKyNpZiBFTkFCTEUoV0VCX1NPQ0tFVFMpCisjaW5jbHVkZSAi
Q2xvc2VFdmVudC5oIgorI2VuZGlmCisKKyNpZiBFTkFCTEUoV0VCR0wpCisjaW5jbHVkZSAiV2Vi
R0xDb250ZXh0RXZlbnQuaCIKKyNlbmRpZgorCiB1c2luZyBuYW1lc3BhY2Ugc3RkOwogdXNpbmcg
bmFtZXNwYWNlIFdURjsKIHVzaW5nIG5hbWVzcGFjZSBVbmljb2RlOwpAQCAtMzQ0MCw4ICszNDY1
LDE2IEBAIFBhc3NSZWZQdHI8RXZlbnQ+IERvY3VtZW50OjpjcmVhdGVFdmVudCgKICAgICBSZWZQ
dHI8RXZlbnQ+IGV2ZW50OwogICAgIGlmIChldmVudFR5cGUgPT0gIkV2ZW50IiB8fCBldmVudFR5
cGUgPT0gIkV2ZW50cyIgfHwgZXZlbnRUeXBlID09ICJIVE1MRXZlbnRzIikKICAgICAgICAgZXZl
bnQgPSBFdmVudDo6Y3JlYXRlKCk7CisgICAgZWxzZSBpZiAoZXZlbnRUeXBlID09ICJCZWZvcmVM
b2FkRXZlbnQiKQorICAgICAgICBldmVudCA9IEJlZm9yZUxvYWRFdmVudDo6Y3JlYXRlKCk7Cisg
ICAgZWxzZSBpZiAoZXZlbnRUeXBlID09ICJDb21wb3NpdGlvbkV2ZW50IikKKyAgICAgICAgZXZl
bnQgPSBDb21wb3NpdGlvbkV2ZW50OjpjcmVhdGUoKTsKICAgICBlbHNlIGlmIChldmVudFR5cGUg
PT0gIkN1c3RvbUV2ZW50IikKICAgICAgICAgZXZlbnQgPSBDdXN0b21FdmVudDo6Y3JlYXRlKCk7
CisgICAgZWxzZSBpZiAoZXZlbnRUeXBlID09ICJFcnJvckV2ZW50IikKKyAgICAgICAgZXZlbnQg
PSBFcnJvckV2ZW50OjpjcmVhdGUoKTsKKyAgICBlbHNlIGlmIChldmVudFR5cGUgPT0gIkhhc2hD
aGFuZ2VFdmVudCIpCisgICAgICAgIGV2ZW50ID0gSGFzaENoYW5nZUV2ZW50OjpjcmVhdGUoKTsK
ICAgICBlbHNlIGlmIChldmVudFR5cGUgPT0gIktleWJvYXJkRXZlbnQiIHx8IGV2ZW50VHlwZSA9
PSAiS2V5Ym9hcmRFdmVudHMiKQogICAgICAgICBldmVudCA9IEtleWJvYXJkRXZlbnQ6OmNyZWF0
ZSgpOwogICAgIGVsc2UgaWYgKGV2ZW50VHlwZSA9PSAiTWVzc2FnZUV2ZW50IikKQEAgLTM0NTgs
MTAgKzM0OTEsNiBAQCBQYXNzUmVmUHRyPEV2ZW50PiBEb2N1bWVudDo6Y3JlYXRlRXZlbnQoCiAg
ICAgICAgIGV2ZW50ID0gUG9wU3RhdGVFdmVudDo6Y3JlYXRlKCk7IAogICAgIGVsc2UgaWYgKGV2
ZW50VHlwZSA9PSAiUHJvZ3Jlc3NFdmVudCIpCiAgICAgICAgIGV2ZW50ID0gUHJvZ3Jlc3NFdmVu
dDo6Y3JlYXRlKCk7Ci0jaWYgRU5BQkxFKERPTV9TVE9SQUdFKQotICAgIGVsc2UgaWYgKGV2ZW50
VHlwZSA9PSAiU3RvcmFnZUV2ZW50IikKLSAgICAgICAgZXZlbnQgPSBTdG9yYWdlRXZlbnQ6OmNy
ZWF0ZSgpOwotI2VuZGlmCiAgICAgZWxzZSBpZiAoZXZlbnRUeXBlID09ICJUZXh0RXZlbnQiKQog
ICAgICAgICBldmVudCA9IFRleHRFdmVudDo6Y3JlYXRlKCk7CiAgICAgZWxzZSBpZiAoZXZlbnRU
eXBlID09ICJVSUV2ZW50IiB8fCBldmVudFR5cGUgPT0gIlVJRXZlbnRzIikKQEAgLTM0NzIsMTAg
KzM1MDEsMzggQEAgUGFzc1JlZlB0cjxFdmVudD4gRG9jdW1lbnQ6OmNyZWF0ZUV2ZW50KAogICAg
ICAgICBldmVudCA9IFdlYktpdFRyYW5zaXRpb25FdmVudDo6Y3JlYXRlKCk7CiAgICAgZWxzZSBp
ZiAoZXZlbnRUeXBlID09ICJXaGVlbEV2ZW50IikKICAgICAgICAgZXZlbnQgPSBXaGVlbEV2ZW50
OjpjcmVhdGUoKTsKKyAgICBlbHNlIGlmIChldmVudFR5cGUgPT0gIlhNTEh0dHBSZXF1ZXN0UHJv
Z3Jlc3NFdmVudCIpCisgICAgICAgIGV2ZW50ID0gWE1MSHR0cFJlcXVlc3RQcm9ncmVzc0V2ZW50
OjpjcmVhdGUoKTsKKyNpZiBFTkFCTEUoV0VCX0FVRElPKQorICAgIGVsc2UgaWYgKGV2ZW50VHlw
ZSA9PSAiQXVkaW9Qcm9jZXNzaW5nRXZlbnQiKQorICAgICAgICBldmVudCA9IEF1ZGlvUHJvY2Vz
c2luZ0V2ZW50OjpjcmVhdGUoKTsKKyAgICBlbHNlIGlmIChldmVudFR5cGUgPT0gIk9mZmxpbmVB
dWRpb0NvbXBsZXRpb25FdmVudCIpCisgICAgICAgIGV2ZW50ID0gT2ZmbGluZUF1ZGlvQ29tcGxl
dGlvbkV2ZW50OjpjcmVhdGUoKTsKKyNlbmRpZgorI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCisg
ICAgZWxzZSBpZiAoZXZlbnRUeXBlID09ICJNZWRpYVN0cmVhbUV2ZW50IikKKyAgICAgICAgZXZl
bnQgPSBNZWRpYVN0cmVhbUV2ZW50OjpjcmVhdGUoKTsKKyNlbmRpZgorI2lmIEVOQUJMRShJTlBV
VF9TUEVFQ0gpCisgICAgZWxzZSBpZiAoZXZlbnRUeXBlID09ICJTcGVlY2hJbnB1dEV2ZW50IikK
KyAgICAgICAgZXZlbnQgPSBTcGVlY2hJbnB1dEV2ZW50OjpjcmVhdGUoKTsKKyNlbmRpZgorI2lm
IEVOQUJMRShXRUJfU09DS0VUUykKKyAgICBlbHNlIGlmIChldmVudFR5cGUgPT0gIkNsb3NlRXZl
bnQiKQorICAgICAgICBldmVudCA9IENsb3NlRXZlbnQ6OmNyZWF0ZSgpOworI2VuZGlmCisjaWYg
RU5BQkxFKFdFQkdMKQorICAgIGVsc2UgaWYgKGV2ZW50VHlwZSA9PSAiV2ViR0xDb250ZXh0RXZl
bnQiKQorICAgICAgICBldmVudCA9IFdlYkdMQ29udGV4dEV2ZW50OjpjcmVhdGUoKTsKKyNlbmRp
ZgorI2lmIEVOQUJMRShET01fU1RPUkFHRSkKKyAgICBlbHNlIGlmIChldmVudFR5cGUgPT0gIlN0
b3JhZ2VFdmVudCIpCisgICAgICAgIGV2ZW50ID0gU3RvcmFnZUV2ZW50OjpjcmVhdGUoKTsKKyNl
bmRpZgogI2lmIEVOQUJMRShTVkcpCiAgICAgZWxzZSBpZiAoZXZlbnRUeXBlID09ICJTVkdFdmVu
dHMiKQogICAgICAgICBldmVudCA9IEV2ZW50OjpjcmVhdGUoKTsKLSAgICBlbHNlIGlmIChldmVu
dFR5cGUgPT0gIlNWR1pvb21FdmVudHMiKQorICAgIGVsc2UgaWYgKGV2ZW50VHlwZSA9PSAiU1ZH
Wm9vbUV2ZW50IiB8fCBldmVudFR5cGUgPT0gIlNWR1pvb21FdmVudHMiKQogICAgICAgICBldmVu
dCA9IFNWR1pvb21FdmVudDo6Y3JlYXRlKCk7CiAjZW5kaWYKICNpZiBFTkFCTEUoVE9VQ0hfRVZF
TlRTKQpJbmRleDogU291cmNlL1dlYkNvcmUvZG9tL0hhc2hDaGFuZ2VFdmVudC5oCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2RvbS9IYXNoQ2hhbmdlRXZlbnQuaAkocmV2aXNpb24gOTQ0
OTQpCisrKyBTb3VyY2UvV2ViQ29yZS9kb20vSGFzaENoYW5nZUV2ZW50LmgJKHdvcmtpbmcgY29w
eSkKQEAgLTMwLDYgKzMwLDExIEBAIGNsYXNzIEhhc2hDaGFuZ2VFdmVudCA6IHB1YmxpYyBFdmVu
dCB7CiBwdWJsaWM6CiAgICAgdmlydHVhbCBib29sIGlzSGFzaENoYW5nZUV2ZW50KCkgY29uc3Qg
eyByZXR1cm4gdHJ1ZTsgfQogCisgICAgc3RhdGljIFBhc3NSZWZQdHI8SGFzaENoYW5nZUV2ZW50
PiBjcmVhdGUoKQorICAgIHsKKyAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBIYXNoQ2hhbmdl
RXZlbnQpOworICAgIH0KKwogICAgIHN0YXRpYyBQYXNzUmVmUHRyPEhhc2hDaGFuZ2VFdmVudD4g
Y3JlYXRlKGNvbnN0IFN0cmluZyYgb2xkVVJMLCBjb25zdCBTdHJpbmcmIG5ld1VSTCkKICAgICB7
CiAgICAgICAgIHJldHVybiBhZG9wdFJlZihuZXcgSGFzaENoYW5nZUV2ZW50KG9sZFVSTCwgbmV3
VVJMKSk7CkBAIC01MCwxMSArNTUsMTYgQEAgcHVibGljOgogICAgIGNvbnN0IFN0cmluZyYgbmV3
VVJMKCkgY29uc3QgeyByZXR1cm4gbV9uZXdVUkw7IH0KIAogcHJpdmF0ZToKKyAgICBIYXNoQ2hh
bmdlRXZlbnQoKQorICAgIHsKKyAgICB9CisKICAgICBIYXNoQ2hhbmdlRXZlbnQoY29uc3QgU3Ry
aW5nJiBvbGRVUkwsIGNvbnN0IFN0cmluZyYgbmV3VVJMKQogICAgICAgICA6IEV2ZW50KGV2ZW50
TmFtZXMoKS5oYXNoY2hhbmdlRXZlbnQsIGZhbHNlLCBmYWxzZSkKICAgICAgICAgLCBtX29sZFVS
TChvbGRVUkwpCiAgICAgICAgICwgbV9uZXdVUkwobmV3VVJMKQotICAgIHt9CisgICAgeworICAg
IH0KIAogICAgIFN0cmluZyBtX29sZFVSTDsKICAgICBTdHJpbmcgbV9uZXdVUkw7CkluZGV4OiBT
b3VyY2UvV2ViQ29yZS9wYWdlL1NwZWVjaElucHV0RXZlbnQuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJDb3JlL3BhZ2UvU3BlZWNoSW5wdXRFdmVudC5jcHAJKHJldmlzaW9uIDk0NDk0KQor
KysgU291cmNlL1dlYkNvcmUvcGFnZS9TcGVlY2hJbnB1dEV2ZW50LmNwcAkod29ya2luZyBjb3B5
KQpAQCAtMzUsMTIgKzM1LDE4IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorUGFzc1JlZlB0
cjxTcGVlY2hJbnB1dEV2ZW50PiBTcGVlY2hJbnB1dEV2ZW50OjpjcmVhdGUoKQoreworICAgIHJl
dHVybiBhZG9wdFJlZihuZXcgU3BlZWNoSW5wdXRFdmVudCk7Cit9CisKIFBhc3NSZWZQdHI8U3Bl
ZWNoSW5wdXRFdmVudD4gU3BlZWNoSW5wdXRFdmVudDo6Y3JlYXRlKGNvbnN0IEF0b21pY1N0cmlu
ZyYgZXZlbnRUeXBlLCBjb25zdCBTcGVlY2hJbnB1dFJlc3VsdEFycmF5JiByZXN1bHRzKQogewog
ICAgIHJldHVybiBhZG9wdFJlZihuZXcgU3BlZWNoSW5wdXRFdmVudChldmVudFR5cGUsIHJlc3Vs
dHMpKTsKIH0KIAotU3BlZWNoSW5wdXRFdmVudDo6flNwZWVjaElucHV0RXZlbnQoKSB7CitTcGVl
Y2hJbnB1dEV2ZW50OjpTcGVlY2hJbnB1dEV2ZW50KCkKK3sKIH0KIAogU3BlZWNoSW5wdXRFdmVu
dDo6U3BlZWNoSW5wdXRFdmVudChjb25zdCBBdG9taWNTdHJpbmcmIGV2ZW50VHlwZSwgY29uc3Qg
U3BlZWNoSW5wdXRSZXN1bHRBcnJheSYgcmVzdWx0cykKQEAgLTQ5LDYgKzU1LDEwIEBAIFNwZWVj
aElucHV0RXZlbnQ6OlNwZWVjaElucHV0RXZlbnQoY29uc3QKIHsKIH0KIAorU3BlZWNoSW5wdXRF
dmVudDo6flNwZWVjaElucHV0RXZlbnQoKQoreworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
CiAKICNlbmRpZiAvLyBFTkFCTEUoSU5QVVRfU1BFRUNIKQpJbmRleDogU291cmNlL1dlYkNvcmUv
cGFnZS9TcGVlY2hJbnB1dEV2ZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGFn
ZS9TcGVlY2hJbnB1dEV2ZW50LmgJKHJldmlzaW9uIDk0NDk0KQorKysgU291cmNlL1dlYkNvcmUv
cGFnZS9TcGVlY2hJbnB1dEV2ZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTM5LDYgKzM5LDcgQEAg
bmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBTcGVlY2hJbnB1dEV2ZW50IDogcHVibGljIEV2
ZW50IHsKIHB1YmxpYzoKKyAgICBzdGF0aWMgUGFzc1JlZlB0cjxTcGVlY2hJbnB1dEV2ZW50PiBj
cmVhdGUoKTsKICAgICBzdGF0aWMgUGFzc1JlZlB0cjxTcGVlY2hJbnB1dEV2ZW50PiBjcmVhdGUo
Y29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5cGUsIGNvbnN0IFNwZWVjaElucHV0UmVzdWx0QXJy
YXkmIHJlc3VsdHMpOwogICAgIH5TcGVlY2hJbnB1dEV2ZW50KCk7CiAKQEAgLTQ3LDYgKzQ4LDcg
QEAgcHVibGljOgogICAgIFNwZWVjaElucHV0UmVzdWx0TGlzdCogcmVzdWx0cygpIGNvbnN0IHsg
cmV0dXJuIG1fcmVzdWx0cy5nZXQoKTsgfQogCiBwcml2YXRlOgorICAgIFNwZWVjaElucHV0RXZl
bnQoKTsKICAgICBTcGVlY2hJbnB1dEV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBl
LCBjb25zdCBTcGVlY2hJbnB1dFJlc3VsdEFycmF5JiByZXN1bHRzKTsKIAogICAgIFJlZlB0cjxT
cGVlY2hJbnB1dFJlc3VsdExpc3Q+IG1fcmVzdWx0czsKSW5kZXg6IExheW91dFRlc3RzL0NoYW5n
ZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHJldmlzaW9uIDk0NTA0
KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTkg
QEAKKzIwMTEtMDktMDQgIFNhbSBXZWluaWcgIDxzYW1Ad2Via2l0Lm9yZz4KKworICAgICAgICBE
b2N1bWVudC5jcmVhdGVFdmVudCBzaG91bGQgc3VwcG9ydCBhbGwgdGhlIGludGVyZmFjZXMgb2Yg
RXZlbnQgd2UgZ290CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD02NzU2OAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgICogZmFzdC9ldmVudHMvZXZlbnQtY3JlYXRpb24uaHRtbDoKKyAgICAgICAgQ29udmVydGVk
IHRvIHNob3VsZEJlIHN0eWxlIHRlc3QsIGNoYW5nZWQgcHJvdG90eXBlIGNoZWNrIHRvIHVzIGlu
c3RhbmNlb2YgYW5kIGNvbnN0cnVjdG9yIGNoZWNrLAorICAgICAgICBhZGRlZCBlbnVtZXJhdGlv
biBiYXNlZCBjYXRjaGFsbC4KKworICAgICAgICAqIGZhc3QvZXZlbnRzL2V2ZW50LWluc3RhbmNl
b2YtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIGZhc3QvZXZlbnRzL2V2ZW50LWlu
c3RhbmNlb2YuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBmYXN0L2V2ZW50cy9zY3JpcHQtdGVz
dHMvZXZlbnQtaW5zdGFuY2VvZi5qczogUmVtb3ZlZC4KKyAgICAgICAgTW92ZWQgY29udGVudHMg
dG8gZmFzdC9ldmVudHMvZXZlbnQtY3JlYXRpb24uaHRtbC4KKwogMjAxMS0wOS0wNCAgSWx5YSBU
aWtob25vdnNreSAgPGxvaXNsb0BjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZCBm
aXggZm9yIGNocm9taXVtIGV4cGVjdGF0aW9ucy4KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZXZl
bnRzL2V2ZW50LWNyZWF0aW9uLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9l
dmVudHMvZXZlbnQtY3JlYXRpb24uaHRtbAkocmV2aXNpb24gOTQ0OTQpCisrKyBMYXlvdXRUZXN0
cy9mYXN0L2V2ZW50cy9ldmVudC1jcmVhdGlvbi5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xLDQz
ICsxLDI3NSBAQAogPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uL2pzL3Jl
c291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vanMvcmVzb3VyY2Vz
L2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHAgaWQ9ImRlc2Ny
aXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KIDxzY3JpcHQ+Ci1mdW5jdGlv
biBwcmludChtZXNzYWdlKQotewotICAgIHZhciBwYXJhZ3JhcGggPSBkb2N1bWVudC5jcmVhdGVF
bGVtZW50KCJsaSIpOwotICAgIHBhcmFncmFwaC5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVU
ZXh0Tm9kZShtZXNzYWdlKSk7Ci0gICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNvbnNvbGUi
KS5hcHBlbmRDaGlsZChwYXJhZ3JhcGgpOwotfQotZnVuY3Rpb24gdGVzdCgpCi17Ci0gICAgaWYg
KHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKLSAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xs
ZXIuZHVtcEFzVGV4dCgpOwotCi0gICAgZG9jdW1lbnQuY3JlYXRlRXZlbnQoIkV2ZW50IikuaW5p
dEV2ZW50KCJnZW5lcmljIiwgdHJ1ZSwgdHJ1ZSk7Ci0gICAgcHJpbnQoIkNyZWF0ZWQgYW4gRXZl
bnQgb2JqZWN0LiIpOwotICAgIGRvY3VtZW50LmNyZWF0ZUV2ZW50KCJVSUV2ZW50IikuaW5pdFVJ
RXZlbnQoIkRPTUFjdGl2YXRlIiwgdHJ1ZSwgdHJ1ZSwgZG9jdW1lbnQuZGVmYXVsdFZpZXcsIDEp
OwotICAgIHByaW50KCJDcmVhdGVkIGEgVUlFdmVudCBvYmplY3QuIik7Ci0gICAgZG9jdW1lbnQu
Y3JlYXRlRXZlbnQoIk1vdXNlRXZlbnQiKS5pbml0TW91c2VFdmVudCgiY2xpY2siLCB0cnVlLCB0
cnVlLCBkb2N1bWVudC5kZWZhdWx0VmlldywgMSwgMCwgMCwgMCwgMCwgZmFsc2UsIGZhbHNlLCBm
YWxzZSwgZmFsc2UsIDAsIGRvY3VtZW50KTsKLSAgICBwcmludCgiQ3JlYXRlZCBhIE1vdXNlRXZl
bnQgb2JqZWN0LiIpOwotICAgIGRvY3VtZW50LmNyZWF0ZUV2ZW50KCJLZXlib2FyZEV2ZW50Iiku
aW5pdEtleWJvYXJkRXZlbnQoImtleWRvd24iLCB0cnVlLCB0cnVlLCBkb2N1bWVudC5kZWZhdWx0
VmlldywgIkVudGVyIiwgMCwgZmFsc2UsIGZhbHNlLCBmYWxzZSwgZmFsc2UsIGZhbHNlKTsKLSAg
ICBwcmludCgiQ3JlYXRlZCBhIEtleWJvYXJkRXZlbnQgb2JqZWN0LiIpOwotICAgIGRvY3VtZW50
LmNyZWF0ZUV2ZW50KCJNdXRhdGlvbkV2ZW50IikuaW5pdE11dGF0aW9uRXZlbnQoIkRPTVN1YnRy
ZWVNb2RpZmllZCIsIHRydWUsIGZhbHNlLCBkb2N1bWVudCwgbnVsbCwgbnVsbCwgbnVsbCwgMSk7
Ci0gICAgcHJpbnQoIkNyZWF0ZWQgYSBNdXRhdGlvbkV2ZW50IG9iamVjdC4iKTsKLQotICAgIGRv
Y3VtZW50LmNyZWF0ZUV2ZW50KCJIVE1MRXZlbnRzIikuaW5pdEV2ZW50KCJnZW5lcmljIiwgdHJ1
ZSwgdHJ1ZSk7Ci0gICAgcHJpbnQoIkNyZWF0ZWQgYW4gRXZlbnQgb2JqZWN0IHdpdGggdGhlIG9s
ZCBIVE1MRXZlbnRzIGV2ZW50IHR5cGUuIik7Ci0gICAgZG9jdW1lbnQuY3JlYXRlRXZlbnQoIlVJ
RXZlbnRzIikuaW5pdFVJRXZlbnQoIkRPTUFjdGl2YXRlIiwgdHJ1ZSwgdHJ1ZSwgZG9jdW1lbnQu
ZGVmYXVsdFZpZXcsIDEpOwotICAgIHByaW50KCJDcmVhdGVkIGEgVUlFdmVudCBvYmplY3Qgd2l0
aCB0aGUgb2xkIFVJRXZlbnRzIGV2ZW50IHR5cGUuIik7Ci0gICAgZG9jdW1lbnQuY3JlYXRlRXZl
bnQoIk1vdXNlRXZlbnRzIikuaW5pdE1vdXNlRXZlbnQoImNsaWNrIiwgdHJ1ZSwgdHJ1ZSwgZG9j
dW1lbnQuZGVmYXVsdFZpZXcsIDEsIDAsIDAsIDAsIDAsIGZhbHNlLCBmYWxzZSwgZmFsc2UsIGZh
bHNlLCAwLCBkb2N1bWVudCk7Ci0gICAgcHJpbnQoIkNyZWF0ZWQgYSBNb3VzZUV2ZW50IG9iamVj
dCB3aXRoIHRoZSBvbGQgTW91c2VFdmVudHMgZXZlbnQgdHlwZS4iKTsKLSAgICBkb2N1bWVudC5j
cmVhdGVFdmVudCgiS2V5Ym9hcmRFdmVudHMiKS5pbml0S2V5Ym9hcmRFdmVudCgia2V5ZG93biIs
IHRydWUsIHRydWUsIGRvY3VtZW50LmRlZmF1bHRWaWV3LCAiRW50ZXIiLCAwLCBmYWxzZSwgZmFs
c2UsIGZhbHNlLCBmYWxzZSwgZmFsc2UpOwotICAgIHByaW50KCJDcmVhdGVkIGEgS2V5Ym9hcmRF
dmVudCBvYmplY3Qgd2l0aCB0aGUgb2xkIEtleWJvYXJkRXZlbnRzIGV2ZW50IHR5cGUuIik7Ci0g
ICAgZG9jdW1lbnQuY3JlYXRlRXZlbnQoIk11dGF0aW9uRXZlbnRzIikuaW5pdE11dGF0aW9uRXZl
bnQoIkRPTVN1YnRyZWVNb2RpZmllZCIsIHRydWUsIGZhbHNlLCBkb2N1bWVudCwgbnVsbCwgbnVs
bCwgbnVsbCwgMSk7Ci0gICAgcHJpbnQoIkNyZWF0ZWQgYSBNdXRhdGlvbkV2ZW50IG9iamVjdCB3
aXRoIHRoZSBvbGQgTXV0YXRpb25FdmVudHMgZXZlbnQgdHlwZS4iKTsKLX0KKyAgICBkZXNjcmlw
dGlvbigiVGhpcyB0ZXN0cyB0aGF0IGRvY3VtZW50LmNyZWF0ZUV2ZW50IGlzIGhvb2tlZCB1cCBm
b3IgYWxsIEV2ZW50IGludGVyZmFjZXMgKGFuZCBhbHRlcm5hdGl2ZXMpIGFuZCBjcmVhdGVzIHRo
ZSByaWdodCBpbnN0YW5jZS4iKQorCisgICAgLy8gRXZlbnQKKyAgICBzaG91bGRCZVRydWUoImRv
Y3VtZW50LmNyZWF0ZUV2ZW50KCdFdmVudCcpIGluc3RhbmNlb2Ygd2luZG93LkV2ZW50Iik7Cisg
ICAgc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgnRXZlbnQnKS5jb25zdHJ1Y3Rv
ciA9PT0gd2luZG93LkV2ZW50Iik7CisKKyAgICAvLyBFdmVudHMgKEV2ZW50IGFsdGVybmF0aXZl
KQorICAgIHNob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ0V2ZW50cycpIGluc3Rh
bmNlb2Ygd2luZG93LkV2ZW50Iik7CisgICAgc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5jcmVhdGVF
dmVudCgnRXZlbnRzJykuY29uc3RydWN0b3IgPT09IHdpbmRvdy5FdmVudCIpOworCisgICAgLy8g
SFRNTEV2ZW50cyAoRXZlbnQgYWx0ZXJuYXRpdmUpCisgICAgc2hvdWxkQmVUcnVlKCJkb2N1bWVu
dC5jcmVhdGVFdmVudCgnSFRNTEV2ZW50cycpIGluc3RhbmNlb2Ygd2luZG93LkV2ZW50Iik7Cisg
ICAgc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgnSFRNTEV2ZW50cycpLmNvbnN0
cnVjdG9yID09PSB3aW5kb3cuRXZlbnQiKTsKKworICAgIC8vIEJlZm9yZUxvYWRFdmVudAorICAg
IHNob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ0JlZm9yZUxvYWRFdmVudCcpIGlu
c3RhbmNlb2Ygd2luZG93LkJlZm9yZUxvYWRFdmVudCIpOworICAgIHNob3VsZEJlVHJ1ZSgiZG9j
dW1lbnQuY3JlYXRlRXZlbnQoJ0JlZm9yZUxvYWRFdmVudCcpIGluc3RhbmNlb2Ygd2luZG93LkV2
ZW50Iik7CisgICAgc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgnQmVmb3JlTG9h
ZEV2ZW50JykuY29uc3RydWN0b3IgPT09IHdpbmRvdy5CZWZvcmVMb2FkRXZlbnQiKTsKKworICAg
IC8vIENvbXBvc2l0aW9uRXZlbnQKKyAgICBzaG91bGRCZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2
ZW50KCdDb21wb3NpdGlvbkV2ZW50JykgaW5zdGFuY2VvZiB3aW5kb3cuQ29tcG9zaXRpb25FdmVu
dCIpOworICAgIHNob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ0NvbXBvc2l0aW9u
RXZlbnQnKSBpbnN0YW5jZW9mIHdpbmRvdy5FdmVudCIpOworICAgIHNob3VsZEJlVHJ1ZSgiZG9j
dW1lbnQuY3JlYXRlRXZlbnQoJ0NvbXBvc2l0aW9uRXZlbnQnKS5jb25zdHJ1Y3RvciA9PT0gd2lu
ZG93LkNvbXBvc2l0aW9uRXZlbnQiKTsKKworICAgIC8vIEN1c3RvbUV2ZW50CisgICAgc2hvdWxk
QmVUcnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgnQ3VzdG9tRXZlbnQnKSBpbnN0YW5jZW9mIHdp
bmRvdy5DdXN0b21FdmVudCIpOworICAgIHNob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZl
bnQoJ0N1c3RvbUV2ZW50JykgaW5zdGFuY2VvZiB3aW5kb3cuRXZlbnQiKTsKKyAgICBzaG91bGRC
ZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50KCdDdXN0b21FdmVudCcpLmNvbnN0cnVjdG9yID09
PSB3aW5kb3cuQ3VzdG9tRXZlbnQiKTsKKworICAgIC8vIEVycm9yRXZlbnQKKyAgICBzaG91bGRC
ZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50KCdFcnJvckV2ZW50JykgaW5zdGFuY2VvZiB3aW5k
b3cuRXJyb3JFdmVudCIpOworICAgIHNob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQo
J0Vycm9yRXZlbnQnKSBpbnN0YW5jZW9mIHdpbmRvdy5FdmVudCIpOworICAgIHNob3VsZEJlVHJ1
ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ0Vycm9yRXZlbnQnKS5jb25zdHJ1Y3RvciA9PT0gd2lu
ZG93LkVycm9yRXZlbnQiKTsKKworICAgIC8vIEhhc2hDaGFuZ2VFdmVudAorICAgIHNob3VsZEJl
VHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ0hhc2hDaGFuZ2VFdmVudCcpIGluc3RhbmNlb2Yg
d2luZG93Lkhhc2hDaGFuZ2VFdmVudCIpOworICAgIHNob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3Jl
YXRlRXZlbnQoJ0hhc2hDaGFuZ2VFdmVudCcpIGluc3RhbmNlb2Ygd2luZG93LkV2ZW50Iik7Cisg
ICAgc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgnSGFzaENoYW5nZUV2ZW50Jyku
Y29uc3RydWN0b3IgPT09IHdpbmRvdy5IYXNoQ2hhbmdlRXZlbnQiKTsKKworICAgIC8vIEtleWJv
YXJkRXZlbnQKKyAgICBzaG91bGRCZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50KCdLZXlib2Fy
ZEV2ZW50JykgaW5zdGFuY2VvZiB3aW5kb3cuS2V5Ym9hcmRFdmVudCIpOworICAgIHNob3VsZEJl
VHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ0tleWJvYXJkRXZlbnQnKSBpbnN0YW5jZW9mIHdp
bmRvdy5VSUV2ZW50Iik7CisgICAgc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgn
S2V5Ym9hcmRFdmVudCcpIGluc3RhbmNlb2Ygd2luZG93LkV2ZW50Iik7CisgICAgc2hvdWxkQmVU
cnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgnS2V5Ym9hcmRFdmVudCcpLmNvbnN0cnVjdG9yID09
PSB3aW5kb3cuS2V5Ym9hcmRFdmVudCIpOworCisgICAgLy8gS2V5Ym9hcmRFdmVudHMgKEtleWJv
YXJkRXZlbnQgYWx0ZXJuYXRpdmUpCisgICAgc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5jcmVhdGVF
dmVudCgnS2V5Ym9hcmRFdmVudHMnKSBpbnN0YW5jZW9mIHdpbmRvdy5LZXlib2FyZEV2ZW50Iik7
CisgICAgc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgnS2V5Ym9hcmRFdmVudHMn
KSBpbnN0YW5jZW9mIHdpbmRvdy5VSUV2ZW50Iik7CisgICAgc2hvdWxkQmVUcnVlKCJkb2N1bWVu
dC5jcmVhdGVFdmVudCgnS2V5Ym9hcmRFdmVudHMnKSBpbnN0YW5jZW9mIHdpbmRvdy5FdmVudCIp
OworICAgIHNob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ0tleWJvYXJkRXZlbnRz
JykuY29uc3RydWN0b3IgPT09IHdpbmRvdy5LZXlib2FyZEV2ZW50Iik7CisKKyAgICAvLyBNZXNz
YWdlRXZlbnQKKyAgICBzaG91bGRCZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50KCdNZXNzYWdl
RXZlbnQnKSBpbnN0YW5jZW9mIHdpbmRvdy5NZXNzYWdlRXZlbnQiKTsKKyAgICBzaG91bGRCZVRy
dWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50KCdNZXNzYWdlRXZlbnQnKSBpbnN0YW5jZW9mIHdpbmRv
dy5FdmVudCIpOworICAgIHNob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ01lc3Nh
Z2VFdmVudCcpLmNvbnN0cnVjdG9yID09PSB3aW5kb3cuTWVzc2FnZUV2ZW50Iik7CisKKyAgICAv
LyBNb3VzZUV2ZW50CisgICAgc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgnTW91
c2VFdmVudCcpIGluc3RhbmNlb2Ygd2luZG93Lk1vdXNlRXZlbnQiKTsKKyAgICBzaG91bGRCZVRy
dWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50KCdNb3VzZUV2ZW50JykgaW5zdGFuY2VvZiB3aW5kb3cu
VUlFdmVudCIpOworICAgIHNob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ01vdXNl
RXZlbnQnKSBpbnN0YW5jZW9mIHdpbmRvdy5FdmVudCIpOworICAgIHNob3VsZEJlVHJ1ZSgiZG9j
dW1lbnQuY3JlYXRlRXZlbnQoJ01vdXNlRXZlbnQnKS5jb25zdHJ1Y3RvciA9PT0gd2luZG93Lk1v
dXNlRXZlbnQiKTsKKworICAgIC8vIE1vdXNlRXZlbnRzIChNb3VzZUV2ZW50IGFsdGVybmF0aXZl
KQorICAgIHNob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ01vdXNlRXZlbnRzJykg
aW5zdGFuY2VvZiB3aW5kb3cuTW91c2VFdmVudCIpOworICAgIHNob3VsZEJlVHJ1ZSgiZG9jdW1l
bnQuY3JlYXRlRXZlbnQoJ01vdXNlRXZlbnRzJykgaW5zdGFuY2VvZiB3aW5kb3cuVUlFdmVudCIp
OworICAgIHNob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ01vdXNlRXZlbnRzJykg
aW5zdGFuY2VvZiB3aW5kb3cuRXZlbnQiKTsKKyAgICBzaG91bGRCZVRydWUoImRvY3VtZW50LmNy
ZWF0ZUV2ZW50KCdNb3VzZUV2ZW50cycpLmNvbnN0cnVjdG9yID09PSB3aW5kb3cuTW91c2VFdmVu
dCIpOworCisgICAgLy8gTXV0YXRpb25FdmVudAorICAgIHNob3VsZEJlVHJ1ZSgiZG9jdW1lbnQu
Y3JlYXRlRXZlbnQoJ011dGF0aW9uRXZlbnQnKSBpbnN0YW5jZW9mIHdpbmRvdy5NdXRhdGlvbkV2
ZW50Iik7CisgICAgc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgnTXV0YXRpb25F
dmVudCcpIGluc3RhbmNlb2Ygd2luZG93LkV2ZW50Iik7CisgICAgc2hvdWxkQmVUcnVlKCJkb2N1
bWVudC5jcmVhdGVFdmVudCgnTXV0YXRpb25FdmVudCcpLmNvbnN0cnVjdG9yID09PSB3aW5kb3cu
TXV0YXRpb25FdmVudCIpOworCisgICAgLy8gTXV0YXRpb25FdmVudHMgKE11dGF0aW9uRXZlbnQg
YWx0ZXJuYXRpdmUpCisgICAgc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgnTXV0
YXRpb25FdmVudHMnKSBpbnN0YW5jZW9mIHdpbmRvdy5NdXRhdGlvbkV2ZW50Iik7CisgICAgc2hv
dWxkQmVUcnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgnTXV0YXRpb25FdmVudHMnKSBpbnN0YW5j
ZW9mIHdpbmRvdy5FdmVudCIpOworICAgIHNob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZl
bnQoJ011dGF0aW9uRXZlbnRzJykuY29uc3RydWN0b3IgPT09IHdpbmRvdy5NdXRhdGlvbkV2ZW50
Iik7CisKKyAgICAvLyBPdmVyZmxvd0V2ZW50CisgICAgc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5j
cmVhdGVFdmVudCgnT3ZlcmZsb3dFdmVudCcpIGluc3RhbmNlb2Ygd2luZG93Lk92ZXJmbG93RXZl
bnQiKTsKKyAgICBzaG91bGRCZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50KCdPdmVyZmxvd0V2
ZW50JykgaW5zdGFuY2VvZiB3aW5kb3cuRXZlbnQiKTsKKyAgICBzaG91bGRCZVRydWUoImRvY3Vt
ZW50LmNyZWF0ZUV2ZW50KCdPdmVyZmxvd0V2ZW50JykuY29uc3RydWN0b3IgPT09IHdpbmRvdy5P
dmVyZmxvd0V2ZW50Iik7CisKKyAgICAvLyBQYWdlVHJhbnNpdGlvbkV2ZW50CisgICAgc2hvdWxk
QmVUcnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgnUGFnZVRyYW5zaXRpb25FdmVudCcpIGluc3Rh
bmNlb2Ygd2luZG93LlBhZ2VUcmFuc2l0aW9uRXZlbnQiKTsKKyAgICBzaG91bGRCZVRydWUoImRv
Y3VtZW50LmNyZWF0ZUV2ZW50KCdQYWdlVHJhbnNpdGlvbkV2ZW50JykgaW5zdGFuY2VvZiB3aW5k
b3cuRXZlbnQiKTsKKyAgICBzaG91bGRCZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50KCdQYWdl
VHJhbnNpdGlvbkV2ZW50JykuY29uc3RydWN0b3IgPT09IHdpbmRvdy5QYWdlVHJhbnNpdGlvbkV2
ZW50Iik7CisKKyAgICAvLyBQb3BTdGF0ZUV2ZW50CisgICAgc2hvdWxkQmVUcnVlKCJkb2N1bWVu
dC5jcmVhdGVFdmVudCgnUG9wU3RhdGVFdmVudCcpIGluc3RhbmNlb2Ygd2luZG93LlBvcFN0YXRl
RXZlbnQiKTsKKyAgICBzaG91bGRCZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50KCdQb3BTdGF0
ZUV2ZW50JykgaW5zdGFuY2VvZiB3aW5kb3cuRXZlbnQiKTsKKyAgICBzaG91bGRCZVRydWUoImRv
Y3VtZW50LmNyZWF0ZUV2ZW50KCdQb3BTdGF0ZUV2ZW50JykuY29uc3RydWN0b3IgPT09IHdpbmRv
dy5Qb3BTdGF0ZUV2ZW50Iik7CisKKyAgICAvLyBQcm9ncmVzc0V2ZW50CisgICAgc2hvdWxkQmVU
cnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgnUHJvZ3Jlc3NFdmVudCcpIGluc3RhbmNlb2Ygd2lu
ZG93LlByb2dyZXNzRXZlbnQiKTsKKyAgICBzaG91bGRCZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2
ZW50KCdQcm9ncmVzc0V2ZW50JykgaW5zdGFuY2VvZiB3aW5kb3cuRXZlbnQiKTsKKyAgICBzaG91
bGRCZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50KCdQcm9ncmVzc0V2ZW50JykuY29uc3RydWN0
b3IgPT09IHdpbmRvdy5Qcm9ncmVzc0V2ZW50Iik7CisKKyAgICAvLyBUZXh0RXZlbnQKKyAgICBz
aG91bGRCZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50KCdUZXh0RXZlbnQnKSBpbnN0YW5jZW9m
IHdpbmRvdy5UZXh0RXZlbnQiKTsKKyAgICBzaG91bGRCZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2
ZW50KCdUZXh0RXZlbnQnKSBpbnN0YW5jZW9mIHdpbmRvdy5VSUV2ZW50Iik7CisgICAgc2hvdWxk
QmVUcnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgnVGV4dEV2ZW50JykgaW5zdGFuY2VvZiB3aW5k
b3cuRXZlbnQiKTsKKyAgICBzaG91bGRCZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50KCdUZXh0
RXZlbnQnKS5jb25zdHJ1Y3RvciA9PT0gd2luZG93LlRleHRFdmVudCIpOworCisgICAgLy8gVUlF
dmVudAorICAgIHNob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ1VJRXZlbnQnKSBp
bnN0YW5jZW9mIHdpbmRvdy5VSUV2ZW50Iik7CisgICAgc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5j
cmVhdGVFdmVudCgnVUlFdmVudCcpIGluc3RhbmNlb2Ygd2luZG93LkV2ZW50Iik7CisgICAgc2hv
dWxkQmVUcnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgnVUlFdmVudCcpLmNvbnN0cnVjdG9yID09
PSB3aW5kb3cuVUlFdmVudCIpOworCisgICAgLy8gVUlFdmVudHMgKFVJRXZlbnQgYWx0ZXJuYXRp
dmUpCisgICAgc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgnVUlFdmVudHMnKSBp
bnN0YW5jZW9mIHdpbmRvdy5VSUV2ZW50Iik7CisgICAgc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5j
cmVhdGVFdmVudCgnVUlFdmVudHMnKSBpbnN0YW5jZW9mIHdpbmRvdy5FdmVudCIpOworICAgIHNo
b3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ1VJRXZlbnRzJykuY29uc3RydWN0b3Ig
PT09IHdpbmRvdy5VSUV2ZW50Iik7CisKKyAgICAvLyBXZWJLaXRBbmltYXRpb25FdmVudAorICAg
IHNob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ1dlYktpdEFuaW1hdGlvbkV2ZW50
JykgaW5zdGFuY2VvZiB3aW5kb3cuV2ViS2l0QW5pbWF0aW9uRXZlbnQiKTsKKyAgICBzaG91bGRC
ZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50KCdXZWJLaXRBbmltYXRpb25FdmVudCcpIGluc3Rh
bmNlb2Ygd2luZG93LkV2ZW50Iik7CisgICAgc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5jcmVhdGVF
dmVudCgnV2ViS2l0QW5pbWF0aW9uRXZlbnQnKS5jb25zdHJ1Y3RvciA9PT0gd2luZG93LldlYktp
dEFuaW1hdGlvbkV2ZW50Iik7CisKKyAgICAvLyBXZWJLaXRUcmFuc2l0aW9uRXZlbnQKKyAgICBz
aG91bGRCZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50KCdXZWJLaXRUcmFuc2l0aW9uRXZlbnQn
KSBpbnN0YW5jZW9mIHdpbmRvdy5XZWJLaXRUcmFuc2l0aW9uRXZlbnQiKTsKKyAgICBzaG91bGRC
ZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50KCdXZWJLaXRUcmFuc2l0aW9uRXZlbnQnKSBpbnN0
YW5jZW9mIHdpbmRvdy5FdmVudCIpOworICAgIHNob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRl
RXZlbnQoJ1dlYktpdFRyYW5zaXRpb25FdmVudCcpLmNvbnN0cnVjdG9yID09PSB3aW5kb3cuV2Vi
S2l0VHJhbnNpdGlvbkV2ZW50Iik7CisKKyAgICAvLyBXaGVlbEV2ZW50CisgICAgc2hvdWxkQmVU
cnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgnV2hlZWxFdmVudCcpIGluc3RhbmNlb2Ygd2luZG93
LldoZWVsRXZlbnQiKTsKKyAgICBzaG91bGRCZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50KCdX
aGVlbEV2ZW50JykgaW5zdGFuY2VvZiB3aW5kb3cuVUlFdmVudCIpOworICAgIHNob3VsZEJlVHJ1
ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ1doZWVsRXZlbnQnKSBpbnN0YW5jZW9mIHdpbmRvdy5F
dmVudCIpOworICAgIHNob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ1doZWVsRXZl
bnQnKS5jb25zdHJ1Y3RvciA9PT0gd2luZG93LldoZWVsRXZlbnQiKTsKKworICAgIC8vIFhNTEh0
dHBSZXF1ZXN0UHJvZ3Jlc3NFdmVudAorICAgIHNob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRl
RXZlbnQoJ1hNTEh0dHBSZXF1ZXN0UHJvZ3Jlc3NFdmVudCcpIGluc3RhbmNlb2Ygd2luZG93LlhN
TEh0dHBSZXF1ZXN0UHJvZ3Jlc3NFdmVudCIpOworICAgIHNob3VsZEJlVHJ1ZSgiZG9jdW1lbnQu
Y3JlYXRlRXZlbnQoJ1hNTEh0dHBSZXF1ZXN0UHJvZ3Jlc3NFdmVudCcpIGluc3RhbmNlb2Ygd2lu
ZG93LlByb2dyZXNzRXZlbnQiKTsKKyAgICBzaG91bGRCZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2
ZW50KCdYTUxIdHRwUmVxdWVzdFByb2dyZXNzRXZlbnQnKSBpbnN0YW5jZW9mIHdpbmRvdy5FdmVu
dCIpOworICAgIHNob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ1hNTEh0dHBSZXF1
ZXN0UHJvZ3Jlc3NFdmVudCcpLmNvbnN0cnVjdG9yID09PSB3aW5kb3cuWE1MSHR0cFJlcXVlc3RQ
cm9ncmVzc0V2ZW50Iik7CisKKyAgICAvLyAjaWYgRU5BQkxFKERPTV9TVE9SQUdFKQorICAgIC8v
IFN0b3JhZ2VFdmVudAorICAgIHNob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ1N0
b3JhZ2VFdmVudCcpIGluc3RhbmNlb2Ygd2luZG93LlN0b3JhZ2VFdmVudCIpOworICAgIHNob3Vs
ZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ1N0b3JhZ2VFdmVudCcpIGluc3RhbmNlb2Yg
d2luZG93LkV2ZW50Iik7CisgICAgc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgn
U3RvcmFnZUV2ZW50JykuY29uc3RydWN0b3IgPT09IHdpbmRvdy5TdG9yYWdlRXZlbnQiKTsKKwor
ICAgIC8vICNpZiBFTkFCTEUoU1ZHKQorICAgIC8vIFNWR0V2ZW50cyAoRXZlbnQgYWx0ZXJuYXRp
dmUpCisgICAgc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgnU1ZHRXZlbnRzJykg
aW5zdGFuY2VvZiB3aW5kb3cuRXZlbnQiKTsKKyAgICBzaG91bGRCZVRydWUoImRvY3VtZW50LmNy
ZWF0ZUV2ZW50KCdTVkdFdmVudHMnKS5jb25zdHJ1Y3RvciA9PT0gd2luZG93LkV2ZW50Iik7CisK
KyAgICAvLyAjaWYgRU5BQkxFKFNWRykKKyAgICAvLyBTVkdab29tRXZlbnQKKyAgICBzaG91bGRC
ZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50KCdTVkdab29tRXZlbnQnKSBpbnN0YW5jZW9mIHdp
bmRvdy5TVkdab29tRXZlbnQiKTsKKyAgICBzaG91bGRCZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2
ZW50KCdTVkdab29tRXZlbnQnKSBpbnN0YW5jZW9mIHdpbmRvdy5FdmVudCIpOworICAgIHNob3Vs
ZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ1NWR1pvb21FdmVudCcpLmNvbnN0cnVjdG9y
ID09PSB3aW5kb3cuU1ZHWm9vbUV2ZW50Iik7CisKKyAgICAvLyAjaWYgRU5BQkxFKFNWRykKKyAg
ICAvLyBTVkdab29tRXZlbnRzIChTVkdab29tRXZlbnQgYWx0ZXJuYXRpdmUpCisgICAgc2hvdWxk
QmVUcnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgnU1ZHWm9vbUV2ZW50cycpIGluc3RhbmNlb2Yg
d2luZG93LlNWR1pvb21FdmVudCIpOworICAgIHNob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRl
RXZlbnQoJ1NWR1pvb21FdmVudHMnKSBpbnN0YW5jZW9mIHdpbmRvdy5FdmVudCIpOworICAgIHNo
b3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ1NWR1pvb21FdmVudHMnKS5jb25zdHJ1
Y3RvciA9PT0gd2luZG93LlNWR1pvb21FdmVudCIpOworCisgICAgLy8gI2lmIEVOQUJMRShXRUJf
U09DS0VUUykKKyAgICAvLyBDbG9zZUV2ZW50CisgICAgc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5j
cmVhdGVFdmVudCgnQ2xvc2VFdmVudCcpIGluc3RhbmNlb2Ygd2luZG93LkNsb3NlRXZlbnQiKTsK
KyAgICBzaG91bGRCZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50KCdDbG9zZUV2ZW50JykgaW5z
dGFuY2VvZiB3aW5kb3cuRXZlbnQiKTsKKyAgICBzaG91bGRCZVRydWUoImRvY3VtZW50LmNyZWF0
ZUV2ZW50KCdDbG9zZUV2ZW50JykuY29uc3RydWN0b3IgPT09IHdpbmRvdy5DbG9zZUV2ZW50Iik7
CisKKyAgICAvLyBUaGUgZm9sbG93aW5nIGFyZSBoZXJlIGZvciBjb21wbGV0ZW5lc3MsIGJ1dCB3
b24ndCB1bnRpbCB0aGVyZSBpcyBtb3JlIHdpZGVzcHJlYWQgc3VwcG9ydCBmb3IgdGhlbS4KKwor
ICAgIC8vICNpZiBFTkFCTEUoV0VCX0FVRElPKQorICAgIC8vIEF1ZGlvUHJvY2Vzc2luZ0V2ZW50
CisgICAgLy8gc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgnQXVkaW9Qcm9jZXNz
aW5nRXZlbnQnKSBpbnN0YW5jZW9mIHdpbmRvdy5BdWRpb1Byb2Nlc3NpbmdFdmVudCIpOworICAg
IC8vIHNob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ0F1ZGlvUHJvY2Vzc2luZ0V2
ZW50JykgaW5zdGFuY2VvZiB3aW5kb3cuRXZlbnQiKTsKKyAgICAvLyBzaG91bGRCZVRydWUoImRv
Y3VtZW50LmNyZWF0ZUV2ZW50KCdBdWRpb1Byb2Nlc3NpbmdFdmVudCcpLmNvbnN0cnVjdG9yID09
PSB3aW5kb3cuQXVkaW9Qcm9jZXNzaW5nRXZlbnQiKTsKKworICAgIC8vICNpZiBFTkFCTEUoV0VC
X0FVRElPKQorICAgIC8vIE9mZmxpbmVBdWRpb0NvbXBsZXRpb25FdmVudAorICAgIC8vIHNob3Vs
ZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ09mZmxpbmVBdWRpb0NvbXBsZXRpb25FdmVu
dCcpIGluc3RhbmNlb2Ygd2luZG93Lk9mZmxpbmVBdWRpb0NvbXBsZXRpb25FdmVudCIpOworICAg
IC8vIHNob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ09mZmxpbmVBdWRpb0NvbXBs
ZXRpb25FdmVudCcpIGluc3RhbmNlb2Ygd2luZG93LkV2ZW50Iik7CisgICAgLy8gc2hvdWxkQmVU
cnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgnT2ZmbGluZUF1ZGlvQ29tcGxldGlvbkV2ZW50Jyku
Y29uc3RydWN0b3IgPT09IHdpbmRvdy5PZmZsaW5lQXVkaW9Db21wbGV0aW9uRXZlbnQiKTsKKwor
ICAgIC8vICNpZiBFTkFCTEUoSU5QVVRfU1BFRUNIKQorICAgIC8vIE1lZGlhU3RyZWFtRXZlbnQK
KyAgICAvLyBzaG91bGRCZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50KCdNZWRpYVN0cmVhbUV2
ZW50JykgaW5zdGFuY2VvZiB3aW5kb3cuTWVkaWFTdHJlYW1FdmVudCIpOworICAgIC8vIHNob3Vs
ZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ01lZGlhU3RyZWFtRXZlbnQnKSBpbnN0YW5j
ZW9mIHdpbmRvdy5FdmVudCIpOworICAgIC8vIHNob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRl
RXZlbnQoJ01lZGlhU3RyZWFtRXZlbnQnKS5jb25zdHJ1Y3RvciA9PT0gd2luZG93Lk1lZGlhU3Ry
ZWFtRXZlbnQiKTsKKworICAgIC8vICNpZiBFTkFCTEUoSU5QVVRfU1BFRUNIKQorICAgIC8vIFNw
ZWVjaElucHV0RXZlbnQKKyAgICAvLyBzaG91bGRCZVRydWUoImRvY3VtZW50LmNyZWF0ZUV2ZW50
KCdTcGVlY2hJbnB1dEV2ZW50JykgaW5zdGFuY2VvZiB3aW5kb3cuU3BlZWNoSW5wdXRFdmVudCIp
OworICAgIC8vIHNob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ1NwZWVjaElucHV0
RXZlbnQnKSBpbnN0YW5jZW9mIHdpbmRvdy5FdmVudCIpOworICAgIC8vIHNob3VsZEJlVHJ1ZSgi
ZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ1NwZWVjaElucHV0RXZlbnQnKS5jb25zdHJ1Y3RvciA9PT0g
d2luZG93LlNwZWVjaElucHV0RXZlbnQiKTsKKworICAgIC8vICNpZiBFTkFCTEUoV0VCR0wpCisg
ICAgLy8gV2ViR0xDb250ZXh0RXZlbnQKKyAgICAvLyBzaG91bGRCZVRydWUoImRvY3VtZW50LmNy
ZWF0ZUV2ZW50KCdXZWJHTENvbnRleHRFdmVudCcpIGluc3RhbmNlb2Ygd2luZG93LldlYkdMQ29u
dGV4dEV2ZW50Iik7CisgICAgLy8gc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgn
V2ViR0xDb250ZXh0RXZlbnQnKSBpbnN0YW5jZW9mIHdpbmRvdy5FdmVudCIpOworICAgIC8vIHNo
b3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ1dlYkdMQ29udGV4dEV2ZW50JykuY29u
c3RydWN0b3IgPT09IHdpbmRvdy5XZWJHTENvbnRleHRFdmVudCIpOworCisgICAgLy8gI2lmIEVO
QUJMRShUT1VDSF9FVkVOVFMpCisgICAgLy8gVG91Y2hFdmVudAorICAgIC8vIHNob3VsZEJlVHJ1
ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ1RvdWNoRXZlbnQnKSBpbnN0YW5jZW9mIHdpbmRvdy5U
b3VjaEV2ZW50Iik7CisgICAgLy8gc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgn
VG91Y2hFdmVudCcpIGluc3RhbmNlb2Ygd2luZG93LkV2ZW50Iik7CisgICAgLy8gc2hvdWxkQmVU
cnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgnVG91Y2hFdmVudCcpLmNvbnN0cnVjdG9yID09PSB3
aW5kb3cuVG91Y2hFdmVudCIpOworCisgICAgLy8gI2lmIEVOQUJMRShERVZJQ0VfT1JJRU5UQVRJ
T04pCisgICAgLy8gRGV2aWNlTW90aW9uRXZlbnQKKyAgICAvLyBzaG91bGRCZVRydWUoImRvY3Vt
ZW50LmNyZWF0ZUV2ZW50KCdEZXZpY2VNb3Rpb25FdmVudCcpIGluc3RhbmNlb2Ygd2luZG93LkRl
dmljZU1vdGlvbkV2ZW50Iik7CisgICAgLy8gc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5jcmVhdGVF
dmVudCgnRGV2aWNlTW90aW9uRXZlbnQnKSBpbnN0YW5jZW9mIHdpbmRvdy5FdmVudCIpOworICAg
IC8vIHNob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ0RldmljZU1vdGlvbkV2ZW50
JykuY29uc3RydWN0b3IgPT09IHdpbmRvdy5EZXZpY2VNb3Rpb25FdmVudCIpOworCisgICAgLy8g
I2lmIEVOQUJMRShERVZJQ0VfT1JJRU5UQVRJT04pCisgICAgLy8gRGV2aWNlT3JpZW50YXRpb25F
dmVudAorICAgIC8vIHNob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ0RldmljZU9y
aWVudGF0aW9uRXZlbnQnKSBpbnN0YW5jZW9mIHdpbmRvdy5EZXZpY2VPcmllbnRhdGlvbkV2ZW50
Iik7CisgICAgLy8gc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgnRGV2aWNlT3Jp
ZW50YXRpb25FdmVudCcpIGluc3RhbmNlb2Ygd2luZG93LkV2ZW50Iik7CisgICAgLy8gc2hvdWxk
QmVUcnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgnRGV2aWNlT3JpZW50YXRpb25FdmVudCcpLmNv
bnN0cnVjdG9yID09PSB3aW5kb3cuRGV2aWNlT3JpZW50YXRpb25FdmVudCIpOworCisgICAgLy8g
I2lmIEVOQUJMRShPUklFTlRBVElPTl9FVkVOVFMpCisgICAgLy8gT3JpZW50YXRpb25FdmVudCAo
RXZlbnQgYWx0ZXJuYXRpdmUpCisgICAgLy8gc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5jcmVhdGVF
dmVudCgnT3JpZW50YXRpb25FdmVudCcpIGluc3RhbmNlb2Ygd2luZG93LkV2ZW50Iik7CisgICAg
Ly8gc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5jcmVhdGVFdmVudCgnT3JpZW50YXRpb25FdmVudCcp
LmNvbnN0cnVjdG9yID09PSB3aW5kb3cuRXZlbnQiKTsKKworCisgICAgLy8gV2UgdGVzdCBib3Ro
IGEgaGFyZCBjb2RlZCBzZXQgYW5kIHRoZSBhdXRvbWF0ZWQgc2V0IGJlbG93ICh1c2luZyBlbnVt
ZXJhdGlvbikgdG8gZW5zdXJlIHRoYXQgYSBjb25zdHJ1Y3RvciBiZWluZyByZW1vdmVkCisgICAg
Ly8gZnJvbSB0aGUgd2luZG93IGlzIGNhdWdodCBhIHJlZ3Jlc3Npb24uCisKKyAgICB2YXIgYWxs
RXZlbnRJbnRlcmZhY2VzQ3JlYXRlRXZlbnRzID0gdHJ1ZTsKKyAgICBmb3IgKHZhciBwcm9wZXJ0
eU5hbWUgaW4gd2luZG93KSB7CisgICAgICAgIGlmIChwcm9wZXJ0eU5hbWUubWF0Y2goL0V2ZW50
JC8pICYmIHdpbmRvd1twcm9wZXJ0eU5hbWVdLnRvU3RyaW5nKCkubWF0Y2goL0V2ZW50Q29uc3Ry
dWN0b3JcXSQvKSkgeworICAgICAgICAgICAgdHJ5IHsKKyAgICAgICAgICAgICAgICBpZiAoIShk
b2N1bWVudC5jcmVhdGVFdmVudChwcm9wZXJ0eU5hbWUpIGluc3RhbmNlb2Ygd2luZG93LkV2ZW50
KSkgeworICAgICAgICAgICAgICAgICAgICBhbGxFdmVudEludGVyZmFjZXNDcmVhdGVFdmVudHMg
PSBmYWxzZTsKKyAgICAgICAgICAgICAgICAgICAgZGVidWcoIidkb2N1bWVudC5jcmVhdGVFdmVu
dChwcm9wZXJ0eU5hbWUpIGluc3RhbmNlb2Ygd2luZG93LkV2ZW50JyB3aXRoIHByb3BlcnR5TmFt
ZTogIiArIHByb3BlcnR5TmFtZSArICIgc2hvdWxkIGJlIHRydWUgYnV0IGlzbid0Iik7CisgICAg
ICAgICAgICAgICAgfQorICAgICAgICAgICAgfSBjYXRjaCAoZSkgeworICAgICAgICAgICAgICAg
IGFsbEV2ZW50SW50ZXJmYWNlc0NyZWF0ZUV2ZW50cyA9IGZhbHNlOworICAgICAgICAgICAgICAg
IGRlYnVnKCInZG9jdW1lbnQuY3JlYXRlRXZlbnQocHJvcGVydHlOYW1lKSBpbnN0YW5jZW9mIHdp
bmRvdy5FdmVudCcgd2l0aCBwcm9wZXJ0eU5hbWU6ICIgKyBwcm9wZXJ0eU5hbWUgKyAiIHRocmV3
IGFuIGV4Y2VwdGlvbjogIiArIGUpOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICB0cnkg
eworICAgICAgICAgICAgICAgIGlmICghKGRvY3VtZW50LmNyZWF0ZUV2ZW50KHByb3BlcnR5TmFt
ZSkgaW5zdGFuY2VvZiB3aW5kb3dbcHJvcGVydHlOYW1lXSkpIHsKKyAgICAgICAgICAgICAgICAg
ICAgYWxsRXZlbnRJbnRlcmZhY2VzQ3JlYXRlRXZlbnRzID0gZmFsc2U7CisgICAgICAgICAgICAg
ICAgICAgIGRlYnVnKCInZG9jdW1lbnQuY3JlYXRlRXZlbnQocHJvcGVydHlOYW1lKSBpbnN0YW5j
ZW9mIHdpbmRvd1twcm9wZXJ0eU5hbWVdJyB3aXRoIHByb3BlcnR5TmFtZTogIiArIHByb3BlcnR5
TmFtZSArICIgc2hvdWxkIGJlIHRydWUgYnV0IGlzbid0Iik7CisgICAgICAgICAgICAgICAgfQor
ICAgICAgICAgICAgfSBjYXRjaCAoZSkgeworICAgICAgICAgICAgICAgIGFsbEV2ZW50SW50ZXJm
YWNlc0NyZWF0ZUV2ZW50cyA9IGZhbHNlOworICAgICAgICAgICAgICAgIGRlYnVnKCInZG9jdW1l
bnQuY3JlYXRlRXZlbnQocHJvcGVydHlOYW1lKSBpbnN0YW5jZW9mIHdpbmRvd1twcm9wZXJ0eU5h
bWVdJyB3aXRoIHByb3BlcnR5TmFtZTogIiArIHByb3BlcnR5TmFtZSArICIgdGhyZXcgYW4gZXhj
ZXB0aW9uOiAiICsgZSk7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIHRyeSB7CisgICAg
ICAgICAgICAgICAgaWYgKCEoZG9jdW1lbnQuY3JlYXRlRXZlbnQocHJvcGVydHlOYW1lKS5jb25z
dHJ1Y3RvciA9PT0gd2luZG93W3Byb3BlcnR5TmFtZV0pKSB7CisgICAgICAgICAgICAgICAgICAg
IGFsbEV2ZW50SW50ZXJmYWNlc0NyZWF0ZUV2ZW50cyA9IGZhbHNlOworICAgICAgICAgICAgICAg
ICAgICBkZWJ1ZygiJ2RvY3VtZW50LmNyZWF0ZUV2ZW50KHByb3BlcnR5TmFtZSkuY29uc3RydWN0
b3IgPT09IHdpbmRvd1twcm9wZXJ0eU5hbWVdJyB3aXRoIHByb3BlcnR5TmFtZTogIiArIHByb3Bl
cnR5TmFtZSArICIgc2hvdWxkIGJlIHRydWUgYnV0IGlzbid0Iik7CisgICAgICAgICAgICAgICAg
fQorICAgICAgICAgICAgfSBjYXRjaCAoZSkgeworICAgICAgICAgICAgICAgIGFsbEV2ZW50SW50
ZXJmYWNlc0NyZWF0ZUV2ZW50cyA9IGZhbHNlOworICAgICAgICAgICAgICAgIGRlYnVnKCInZG9j
dW1lbnQuY3JlYXRlRXZlbnQocHJvcGVydHlOYW1lKS5jb25zdHJ1Y3RvciA9PT0gd2luZG93W3By
b3BlcnR5TmFtZV0nIHdpdGggcHJvcGVydHlOYW1lOiAiICsgcHJvcGVydHlOYW1lICsgIiB0aHJl
dyBhbiBleGNlcHRpb246ICIgKyBlKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgIH0K
KyAgICBzaG91bGRCZVRydWUoJ2FsbEV2ZW50SW50ZXJmYWNlc0NyZWF0ZUV2ZW50cycpOworCisg
ICAgdmFyIHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7CiA8L3NjcmlwdD4KLTwvaGVhZD4KLTxi
b2R5IG9ubG9hZD0idGVzdCgpIj4KLTxwPlRoaXMgdGVzdCBjaGVja3MgdG8gc2VlIGlmIHdlIGNh
biBjcmVhdGUgYW5kIGluaXRpYWxpemUgZXZlbnRzIG9mIHZhcmlvdXMgdHlwZXMuIFRoaXMgd291
bGRuJ3Qgd29yayBpbiBvbGRlciB2ZXJzaW9ucyBiZWNhdXNlIHdlIGhhZCBwcm90b3R5cGVzIGhv
b2tlZCB1cCBpbmNvcnJlY3RseS48L3A+Ci08cD5JZiB0aGUgdGVzdCBwYXNzZXMsIHlvdSBzaG91
bGQgc2VlIG9uZSBsaW5lIGJlbG93IGFib3V0IGVhY2ggb2YgdGVuIGRpZmZlcmVudCBldmVudHMg
YmVpbmcgc3VjY2Vzc2Z1bGx5IGNyZWF0ZWQuPC9wPgotPGhyPgotPHA+PG9sIGlkPWNvbnNvbGU+
PC9vbD48L3A+CisKKworCis8c2NyaXB0IHNyYz0iLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9z
dC5qcyI+PC9zY3JpcHQ+CiA8L2JvZHk+CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9l
dmVudC1pbnN0YW5jZW9mLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9m
YXN0L2V2ZW50cy9ldmVudC1pbnN0YW5jZW9mLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gOTQ0OTQp
CisrKyBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9ldmVudC1pbnN0YW5jZW9mLWV4cGVjdGVkLnR4
dAkod29ya2luZyBjb3B5KQpAQCAtMSw0NyArMCwwIEBACi1UaGlzIHRlc3RzIHRoYXQgdGhlIEV2
ZW50IGNsYXNzZXMgaGF2ZSBjb25zdHJ1Y3RvcnMuCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNl
ZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRF
Ii4KLQotCi1QQVNTIGV2ZW50IGluc3RhbmNlb2Ygd2luZG93LkV2ZW50IGlzIHRydWUKLVBBU1Mg
ZXZlbnQuY29uc3RydWN0b3IgPT09IHdpbmRvdy5FdmVudCBpcyB0cnVlCi1QQVNTIHVpRXZlbnQg
aW5zdGFuY2VvZiB3aW5kb3cuVUlFdmVudCBpcyB0cnVlCi1QQVNTIHVpRXZlbnQgaW5zdGFuY2Vv
ZiB3aW5kb3cuRXZlbnQgaXMgdHJ1ZQotUEFTUyB1aUV2ZW50LmNvbnN0cnVjdG9yID09PSB3aW5k
b3cuVUlFdmVudCBpcyB0cnVlCi1QQVNTIGtleWJvYXJkRXZlbnQgaW5zdGFuY2VvZiB3aW5kb3cu
S2V5Ym9hcmRFdmVudCBpcyB0cnVlCi1QQVNTIGtleWJvYXJkRXZlbnQgaW5zdGFuY2VvZiB3aW5k
b3cuVUlFdmVudCBpcyB0cnVlCi1QQVNTIGtleWJvYXJkRXZlbnQgaW5zdGFuY2VvZiB3aW5kb3cu
RXZlbnQgaXMgdHJ1ZQotUEFTUyBrZXlib2FyZEV2ZW50LmNvbnN0cnVjdG9yID09PSB3aW5kb3cu
S2V5Ym9hcmRFdmVudCBpcyB0cnVlCi1QQVNTIG1vdXNlRXZlbnQgaW5zdGFuY2VvZiB3aW5kb3cu
TW91c2VFdmVudCBpcyB0cnVlCi1QQVNTIG1vdXNlRXZlbnQgaW5zdGFuY2VvZiB3aW5kb3cuVUlF
dmVudCBpcyB0cnVlCi1QQVNTIG1vdXNlRXZlbnQgaW5zdGFuY2VvZiB3aW5kb3cuRXZlbnQgaXMg
dHJ1ZQotUEFTUyBtb3VzZUV2ZW50LmNvbnN0cnVjdG9yID09PSB3aW5kb3cuTW91c2VFdmVudCBp
cyB0cnVlCi1QQVNTIHdoZWVsRXZlbnQgaW5zdGFuY2VvZiB3aW5kb3cuV2hlZWxFdmVudCBpcyB0
cnVlCi1QQVNTIHdoZWVsRXZlbnQgaW5zdGFuY2VvZiB3aW5kb3cuVUlFdmVudCBpcyB0cnVlCi1Q
QVNTIHdoZWVsRXZlbnQgaW5zdGFuY2VvZiB3aW5kb3cuRXZlbnQgaXMgdHJ1ZQotUEFTUyB3aGVl
bEV2ZW50LmNvbnN0cnVjdG9yID09PSB3aW5kb3cuV2hlZWxFdmVudCBpcyB0cnVlCi1QQVNTIG11
dGF0aW9uRXZlbnQgaW5zdGFuY2VvZiB3aW5kb3cuTXV0YXRpb25FdmVudCBpcyB0cnVlCi1QQVNT
IG11dGF0aW9uRXZlbnQgaW5zdGFuY2VvZiB3aW5kb3cuRXZlbnQgaXMgdHJ1ZQotUEFTUyBtdXRh
dGlvbkV2ZW50LmNvbnN0cnVjdG9yID09PSB3aW5kb3cuTXV0YXRpb25FdmVudCBpcyB0cnVlCi1Q
QVNTIG92ZXJmbG93RXZlbnQgaW5zdGFuY2VvZiB3aW5kb3cuT3ZlcmZsb3dFdmVudCBpcyB0cnVl
Ci1QQVNTIG92ZXJmbG93RXZlbnQgaW5zdGFuY2VvZiB3aW5kb3cuRXZlbnQgaXMgdHJ1ZQotUEFT
UyBvdmVyZmxvd0V2ZW50LmNvbnN0cnVjdG9yID09PSB3aW5kb3cuT3ZlcmZsb3dFdmVudCBpcyB0
cnVlCi1QQVNTIHByb2dyZXNzRXZlbnQgaW5zdGFuY2VvZiB3aW5kb3cuUHJvZ3Jlc3NFdmVudCBp
cyB0cnVlCi1QQVNTIHByb2dyZXNzRXZlbnQgaW5zdGFuY2VvZiB3aW5kb3cuRXZlbnQgaXMgdHJ1
ZQotUEFTUyBwcm9ncmVzc0V2ZW50LmNvbnN0cnVjdG9yID09PSB3aW5kb3cuUHJvZ3Jlc3NFdmVu
dCBpcyB0cnVlCi1QQVNTIHRleHRFdmVudCBpbnN0YW5jZW9mIHdpbmRvdy5UZXh0RXZlbnQgaXMg
dHJ1ZQotUEFTUyB0ZXh0RXZlbnQgaW5zdGFuY2VvZiB3aW5kb3cuRXZlbnQgaXMgdHJ1ZQotUEFT
UyB0ZXh0RXZlbnQuY29uc3RydWN0b3IgPT09IHdpbmRvdy5UZXh0RXZlbnQgaXMgdHJ1ZQotUEFT
UyBtZXNzYWdlRXZlbnQgaW5zdGFuY2VvZiB3aW5kb3cuTWVzc2FnZUV2ZW50IGlzIHRydWUKLVBB
U1MgbWVzc2FnZUV2ZW50IGluc3RhbmNlb2Ygd2luZG93LkV2ZW50IGlzIHRydWUKLVBBU1MgbWVz
c2FnZUV2ZW50LmNvbnN0cnVjdG9yID09PSB3aW5kb3cuTWVzc2FnZUV2ZW50IGlzIHRydWUKLVBB
U1MgYW5pbWF0aW9uRXZlbnQgaW5zdGFuY2VvZiB3aW5kb3cuV2ViS2l0QW5pbWF0aW9uRXZlbnQg
aXMgdHJ1ZQotUEFTUyBhbmltYXRpb25FdmVudCBpbnN0YW5jZW9mIHdpbmRvdy5FdmVudCBpcyB0
cnVlCi1QQVNTIGFuaW1hdGlvbkV2ZW50LmNvbnN0cnVjdG9yID09PSB3aW5kb3cuV2ViS2l0QW5p
bWF0aW9uRXZlbnQgaXMgdHJ1ZQotUEFTUyB0cmFuc2l0aW9uRXZlbnQgaW5zdGFuY2VvZiB3aW5k
b3cuV2ViS2l0VHJhbnNpdGlvbkV2ZW50IGlzIHRydWUKLVBBU1MgdHJhbnNpdGlvbkV2ZW50IGlu
c3RhbmNlb2Ygd2luZG93LkV2ZW50IGlzIHRydWUKLVBBU1MgdHJhbnNpdGlvbkV2ZW50LmNvbnN0
cnVjdG9yID09PSB3aW5kb3cuV2ViS2l0VHJhbnNpdGlvbkV2ZW50IGlzIHRydWUKLVBBU1Mgc3Vj
Y2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCkluZGV4OiBMYXlvdXRU
ZXN0cy9mYXN0L2V2ZW50cy9ldmVudC1pbnN0YW5jZW9mLmh0bWwKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvZmFzdC9ldmVudHMvZXZlbnQtaW5zdGFuY2VvZi5odG1sCShyZXZpc2lvbiA5NDQ5
NCkKKysrIExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL2V2ZW50LWluc3RhbmNlb2YuaHRtbAkod29y
a2luZyBjb3B5KQpAQCAtMSwxMyArMCwwIEBACi08IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lF
VEYvL0RURCBIVE1MLy9FTiI+Ci08aHRtbD4KLTxoZWFkPgotPGxpbmsgcmVsPSJzdHlsZXNoZWV0
IiBocmVmPSIuLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgotPHNjcmlwdCBzcmM9
Ii4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9k
eT4KLTxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgotPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Ci08
c2NyaXB0IHNyYz0ic2NyaXB0LXRlc3RzL2V2ZW50LWluc3RhbmNlb2YuanMiPjwvc2NyaXB0Pgot
PHNjcmlwdCBzcmM9Ii4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0Pgot
PC9ib2R5PgotPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvc2NyaXB0LXRl
c3RzL2V2ZW50LWluc3RhbmNlb2YuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9l
dmVudHMvc2NyaXB0LXRlc3RzL2V2ZW50LWluc3RhbmNlb2YuanMJKHJldmlzaW9uIDk0NDk0KQor
KysgTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvc2NyaXB0LXRlc3RzL2V2ZW50LWluc3RhbmNlb2Yu
anMJKHdvcmtpbmcgY29weSkKQEAgLTEsNjUgKzAsMCBAQAotZGVzY3JpcHRpb24oIlRoaXMgdGVz
dHMgdGhhdCB0aGUgRXZlbnQgY2xhc3NlcyBoYXZlIGNvbnN0cnVjdG9ycy4iKTsKLQotdmFyIGV2
ZW50ID0gZG9jdW1lbnQuY3JlYXRlRXZlbnQoIkV2ZW50Iik7Ci1zaG91bGRCZVRydWUoImV2ZW50
IGluc3RhbmNlb2Ygd2luZG93LkV2ZW50Iik7Ci1zaG91bGRCZVRydWUoImV2ZW50LmNvbnN0cnVj
dG9yID09PSB3aW5kb3cuRXZlbnQiKTsKLQotdmFyIHVpRXZlbnQgPSBkb2N1bWVudC5jcmVhdGVF
dmVudCgiVUlFdmVudCIpOwotc2hvdWxkQmVUcnVlKCJ1aUV2ZW50IGluc3RhbmNlb2Ygd2luZG93
LlVJRXZlbnQiKTsKLXNob3VsZEJlVHJ1ZSgidWlFdmVudCBpbnN0YW5jZW9mIHdpbmRvdy5FdmVu
dCIpOwotc2hvdWxkQmVUcnVlKCJ1aUV2ZW50LmNvbnN0cnVjdG9yID09PSB3aW5kb3cuVUlFdmVu
dCIpOwotCi12YXIga2V5Ym9hcmRFdmVudCA9IGRvY3VtZW50LmNyZWF0ZUV2ZW50KCJLZXlib2Fy
ZEV2ZW50Iik7Ci1zaG91bGRCZVRydWUoImtleWJvYXJkRXZlbnQgaW5zdGFuY2VvZiB3aW5kb3cu
S2V5Ym9hcmRFdmVudCIpOwotc2hvdWxkQmVUcnVlKCJrZXlib2FyZEV2ZW50IGluc3RhbmNlb2Yg
d2luZG93LlVJRXZlbnQiKTsKLXNob3VsZEJlVHJ1ZSgia2V5Ym9hcmRFdmVudCBpbnN0YW5jZW9m
IHdpbmRvdy5FdmVudCIpOwotc2hvdWxkQmVUcnVlKCJrZXlib2FyZEV2ZW50LmNvbnN0cnVjdG9y
ID09PSB3aW5kb3cuS2V5Ym9hcmRFdmVudCIpOwotCi12YXIgbW91c2VFdmVudCA9IGRvY3VtZW50
LmNyZWF0ZUV2ZW50KCJNb3VzZUV2ZW50Iik7Ci1zaG91bGRCZVRydWUoIm1vdXNlRXZlbnQgaW5z
dGFuY2VvZiB3aW5kb3cuTW91c2VFdmVudCIpOwotc2hvdWxkQmVUcnVlKCJtb3VzZUV2ZW50IGlu
c3RhbmNlb2Ygd2luZG93LlVJRXZlbnQiKTsKLXNob3VsZEJlVHJ1ZSgibW91c2VFdmVudCBpbnN0
YW5jZW9mIHdpbmRvdy5FdmVudCIpOwotc2hvdWxkQmVUcnVlKCJtb3VzZUV2ZW50LmNvbnN0cnVj
dG9yID09PSB3aW5kb3cuTW91c2VFdmVudCIpOwotCi12YXIgd2hlZWxFdmVudCA9IGRvY3VtZW50
LmNyZWF0ZUV2ZW50KCJXaGVlbEV2ZW50Iik7Ci1zaG91bGRCZVRydWUoIndoZWVsRXZlbnQgaW5z
dGFuY2VvZiB3aW5kb3cuV2hlZWxFdmVudCIpOwotc2hvdWxkQmVUcnVlKCJ3aGVlbEV2ZW50IGlu
c3RhbmNlb2Ygd2luZG93LlVJRXZlbnQiKTsKLXNob3VsZEJlVHJ1ZSgid2hlZWxFdmVudCBpbnN0
YW5jZW9mIHdpbmRvdy5FdmVudCIpOwotc2hvdWxkQmVUcnVlKCJ3aGVlbEV2ZW50LmNvbnN0cnVj
dG9yID09PSB3aW5kb3cuV2hlZWxFdmVudCIpOwotCi12YXIgbXV0YXRpb25FdmVudCA9IGRvY3Vt
ZW50LmNyZWF0ZUV2ZW50KCJNdXRhdGlvbkV2ZW50Iik7Ci1zaG91bGRCZVRydWUoIm11dGF0aW9u
RXZlbnQgaW5zdGFuY2VvZiB3aW5kb3cuTXV0YXRpb25FdmVudCIpOwotc2hvdWxkQmVUcnVlKCJt
dXRhdGlvbkV2ZW50IGluc3RhbmNlb2Ygd2luZG93LkV2ZW50Iik7Ci1zaG91bGRCZVRydWUoIm11
dGF0aW9uRXZlbnQuY29uc3RydWN0b3IgPT09IHdpbmRvdy5NdXRhdGlvbkV2ZW50Iik7Ci0KLXZh
ciBvdmVyZmxvd0V2ZW50ID0gZG9jdW1lbnQuY3JlYXRlRXZlbnQoIk92ZXJmbG93RXZlbnQiKTsK
LXNob3VsZEJlVHJ1ZSgib3ZlcmZsb3dFdmVudCBpbnN0YW5jZW9mIHdpbmRvdy5PdmVyZmxvd0V2
ZW50Iik7Ci1zaG91bGRCZVRydWUoIm92ZXJmbG93RXZlbnQgaW5zdGFuY2VvZiB3aW5kb3cuRXZl
bnQiKTsKLXNob3VsZEJlVHJ1ZSgib3ZlcmZsb3dFdmVudC5jb25zdHJ1Y3RvciA9PT0gd2luZG93
Lk92ZXJmbG93RXZlbnQiKTsKLQotdmFyIHByb2dyZXNzRXZlbnQgPSBkb2N1bWVudC5jcmVhdGVF
dmVudCgiUHJvZ3Jlc3NFdmVudCIpOwotc2hvdWxkQmVUcnVlKCJwcm9ncmVzc0V2ZW50IGluc3Rh
bmNlb2Ygd2luZG93LlByb2dyZXNzRXZlbnQiKTsKLXNob3VsZEJlVHJ1ZSgicHJvZ3Jlc3NFdmVu
dCBpbnN0YW5jZW9mIHdpbmRvdy5FdmVudCIpOwotc2hvdWxkQmVUcnVlKCJwcm9ncmVzc0V2ZW50
LmNvbnN0cnVjdG9yID09PSB3aW5kb3cuUHJvZ3Jlc3NFdmVudCIpOwotCi12YXIgdGV4dEV2ZW50
ID0gZG9jdW1lbnQuY3JlYXRlRXZlbnQoIlRleHRFdmVudCIpOwotc2hvdWxkQmVUcnVlKCJ0ZXh0
RXZlbnQgaW5zdGFuY2VvZiB3aW5kb3cuVGV4dEV2ZW50Iik7Ci1zaG91bGRCZVRydWUoInRleHRF
dmVudCBpbnN0YW5jZW9mIHdpbmRvdy5FdmVudCIpOwotc2hvdWxkQmVUcnVlKCJ0ZXh0RXZlbnQu
Y29uc3RydWN0b3IgPT09IHdpbmRvdy5UZXh0RXZlbnQiKTsKLQotdmFyIG1lc3NhZ2VFdmVudCA9
IGRvY3VtZW50LmNyZWF0ZUV2ZW50KCJNZXNzYWdlRXZlbnQiKTsKLXNob3VsZEJlVHJ1ZSgibWVz
c2FnZUV2ZW50IGluc3RhbmNlb2Ygd2luZG93Lk1lc3NhZ2VFdmVudCIpOwotc2hvdWxkQmVUcnVl
KCJtZXNzYWdlRXZlbnQgaW5zdGFuY2VvZiB3aW5kb3cuRXZlbnQiKTsKLXNob3VsZEJlVHJ1ZSgi
bWVzc2FnZUV2ZW50LmNvbnN0cnVjdG9yID09PSB3aW5kb3cuTWVzc2FnZUV2ZW50Iik7Ci0KLXZh
ciBhbmltYXRpb25FdmVudCA9IGRvY3VtZW50LmNyZWF0ZUV2ZW50KCJXZWJLaXRBbmltYXRpb25F
dmVudCIpOwotc2hvdWxkQmVUcnVlKCJhbmltYXRpb25FdmVudCBpbnN0YW5jZW9mIHdpbmRvdy5X
ZWJLaXRBbmltYXRpb25FdmVudCIpOwotc2hvdWxkQmVUcnVlKCJhbmltYXRpb25FdmVudCBpbnN0
YW5jZW9mIHdpbmRvdy5FdmVudCIpOwotc2hvdWxkQmVUcnVlKCJhbmltYXRpb25FdmVudC5jb25z
dHJ1Y3RvciA9PT0gd2luZG93LldlYktpdEFuaW1hdGlvbkV2ZW50Iik7Ci0KLXZhciB0cmFuc2l0
aW9uRXZlbnQgPSBkb2N1bWVudC5jcmVhdGVFdmVudCgiV2ViS2l0VHJhbnNpdGlvbkV2ZW50Iik7
Ci1zaG91bGRCZVRydWUoInRyYW5zaXRpb25FdmVudCBpbnN0YW5jZW9mIHdpbmRvdy5XZWJLaXRU
cmFuc2l0aW9uRXZlbnQiKTsKLXNob3VsZEJlVHJ1ZSgidHJhbnNpdGlvbkV2ZW50IGluc3RhbmNl
b2Ygd2luZG93LkV2ZW50Iik7Ci1zaG91bGRCZVRydWUoInRyYW5zaXRpb25FdmVudC5jb25zdHJ1
Y3RvciA9PT0gd2luZG93LldlYktpdFRyYW5zaXRpb25FdmVudCIpOwotCi12YXIgc3VjY2Vzc2Z1
bGx5UGFyc2VkID0gdHJ1ZTsK
</data>
<flag name="review"
          id="102688"
          type_id="1"
          status="+"
          setter="andersca"
    />
    <flag name="commit-queue"
          id="102689"
          type_id="3"
          status="-"
          setter="webkit.review.bot"
    />
          </attachment>
      

    </bug>

</bugzilla>