<?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>47847</bug_id>
          
          <creation_ts>2010-10-18 14:12:37 -0700</creation_ts>
          <short_desc>Add Queue class and add minimal unittesting of QueueStatusServer code</short_desc>
          <delta_ts>2010-10-18 16:11:46 -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>Other</rep_platform>
          <op_sys>OS X 10.5</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>
          
          <blocked>47855</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Eric Seidel (no email)">eric</reporter>
          <assigned_to name="Eric Seidel (no email)">eric</assigned_to>
          <cc>abarth</cc>
    
    <cc>cjerdonek</cc>
    
    <cc>commit-queue</cc>
    
    <cc>mihaip</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>295740</commentid>
    <comment_count>0</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-10-18 14:12:37 -0700</bug_when>
    <thetext>Add Queue class and add minimal unittesting of QueueStatusServer code</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>295748</commentid>
    <comment_count>1</comment_count>
      <attachid>71081</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-10-18 14:20:51 -0700</bug_when>
    <thetext>Created attachment 71081
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>295753</commentid>
    <comment_count>2</comment_count>
      <attachid>71081</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-10-18 14:28:57 -0700</bug_when>
    <thetext>Comment on attachment 71081
Patch

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

404!

&gt; WebKitTools/QueueStatusServer/model/queues.py:73
&gt; +    def short_name(self):
&gt; +        # HACK: chromium-ews is incorrectly named.
&gt; +        short_name = self._name.replace(&quot;chromium-ews&quot;, &quot;Cr-Linux-ews&quot;)
&gt; +        short_name = short_name.replace(&quot;-ews&quot;, &quot;&quot;)
&gt; +        short_name = short_name.replace(&quot;-queue&quot;, &quot;&quot;)
&gt; +        return self._caplitalize_after_dash(short_name.capitalize())

This is all ridiculous.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>295805</commentid>
    <comment_count>3</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-10-18 15:48:30 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; &gt; WebKitTools/QueueStatusServer/model/queues.py:73
&gt; &gt; +    def short_name(self):
&gt; &gt; +        # HACK: chromium-ews is incorrectly named.
&gt; &gt; +        short_name = self._name.replace(&quot;chromium-ews&quot;, &quot;Cr-Linux-ews&quot;)
&gt; &gt; +        short_name = short_name.replace(&quot;-ews&quot;, &quot;&quot;)
&gt; &gt; +        short_name = short_name.replace(&quot;-queue&quot;, &quot;&quot;)
&gt; &gt; +        return self._caplitalize_after_dash(short_name.capitalize())
&gt; 
&gt; This is all ridiculous.

It&apos;s just there to match the previous manual array mapping from one to the other.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>295812</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-10-18 16:04:53 -0700</bug_when>
    <thetext>The commit-queue encountered the following flaky tests while processing attachment 71081:

fast/dom/HTMLScriptElement/script-set-src.html

Please file bugs against the tests.  The commit-queue is continuing to process your patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>295814</commentid>
    <comment_count>5</comment_count>
      <attachid>71081</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-10-18 16:09:04 -0700</bug_when>
    <thetext>Comment on attachment 71081
Patch

Clearing flags on attachment: 71081

Committed r70006: &lt;http://trac.webkit.org/changeset/70006&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>295815</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-10-18 16:09:09 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>295818</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-10-18 16:11:46 -0700</bug_when>
    <thetext>The commit-queue encountered the following flaky tests while processing attachment 71081:

http/tests/websocket/tests/close-on-unload-reference-in-parent.html

Please file bugs against the tests.  The commit-queue is continuing to process your patch.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>71081</attachid>
            <date>2010-10-18 14:20:51 -0700</date>
            <delta_ts>2010-10-18 16:09:04 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-47847-20101018142050.patch</filename>
            <type>text/plain</type>
            <size>24309</size>
            <attacher name="Eric Seidel (no email)">eric</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxv
ZwppbmRleCBiM2IzYjdkZGFmOWI4Y2I4YzZjZThkNDA2YmQ5Y2EyMjczNTYxMjNmLi44MDJjNGM0
NTFmNzQ5MWQ4MDhmMGUzN2M4MThlOTAwN2EwYzc2MTdhIDEwMDY0NAotLS0gYS9XZWJLaXRUb29s
cy9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjIgQEAK
KzIwMTAtMTAtMTggIEVyaWMgU2VpZGVsICA8ZXJpY0B3ZWJraXQub3JnPgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBRdWV1ZSBjbGFzcyBhbmQg
YWRkIG1pbmltYWwgdW5pdHRlc3Rpbmcgb2YgUXVldWVTdGF0dXNTZXJ2ZXIgY29kZQorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDc4NDcKKworICAgICAg
ICAqIFF1ZXVlU3RhdHVzU2VydmVyL2hhbmRsZXJzL2Rhc2hib2FyZC5weToKKyAgICAgICAgKiBR
dWV1ZVN0YXR1c1NlcnZlci9oYW5kbGVycy9xdWV1ZXN0YXR1cy5weToKKyAgICAgICAgKiBRdWV1
ZVN0YXR1c1NlcnZlci9oYW5kbGVycy9yZWNlbnRzdGF0dXMucHk6CisgICAgICAgICogUXVldWVT
dGF0dXNTZXJ2ZXIvaGFuZGxlcnMvc3RhdHVzYnViYmxlLnB5OgorICAgICAgICAqIFF1ZXVlU3Rh
dHVzU2VydmVyL2hhbmRsZXJzL3VwZGF0ZXdvcmtpdGVtcy5weToKKyAgICAgICAgKiBRdWV1ZVN0
YXR1c1NlcnZlci9tb2RlbC9hdHRhY2htZW50LnB5OgorICAgICAgICAqIFF1ZXVlU3RhdHVzU2Vy
dmVyL21vZGVsL3F1ZXVlcy5weToKKyAgICAgICAgKiBRdWV1ZVN0YXR1c1NlcnZlci9tb2RlbC9x
dWV1ZXNfdW5pdHRlc3QucHk6IEFkZGVkLgorICAgICAgICAqIFF1ZXVlU3RhdHVzU2VydmVyL21v
ZGVsL3N2bnJldmlzaW9uLnB5OgorICAgICAgICAqIFNjcmlwdHMvdGVzdC13ZWJraXRweToKKyAg
ICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3Rlc3QvbWFpbi5weToKKwogMjAxMC0xMC0xOCAgRGF2
aWQgTGV2aW4gIDxsZXZpbkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgQWRh
bSBCYXJ0aC4KZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL1F1ZXVlU3RhdHVzU2VydmVyL2hhbmRs
ZXJzL2Rhc2hib2FyZC5weSBiL1dlYktpdFRvb2xzL1F1ZXVlU3RhdHVzU2VydmVyL2hhbmRsZXJz
L2Rhc2hib2FyZC5weQppbmRleCAyNmRlMjYzZjVjYTAwZmExM2RjZTdlNDdlMWI5OTE0NmFjYTY3
MTBhLi4zYjkzZmZmNjc3MTkyZTE3MGJhMzgxNmVjNzYwYmUxNGU2ZjA2MmVjIDEwMDY0NAotLS0g
YS9XZWJLaXRUb29scy9RdWV1ZVN0YXR1c1NlcnZlci9oYW5kbGVycy9kYXNoYm9hcmQucHkKKysr
IGIvV2ViS2l0VG9vbHMvUXVldWVTdGF0dXNTZXJ2ZXIvaGFuZGxlcnMvZGFzaGJvYXJkLnB5CkBA
IC0zMiwzMSArMzIsMTYgQEAgZnJvbSBnb29nbGUuYXBwZW5naW5lLmV4dCBpbXBvcnQgd2ViYXBw
CiBmcm9tIGdvb2dsZS5hcHBlbmdpbmUuZXh0LndlYmFwcCBpbXBvcnQgdGVtcGxhdGUKIAogZnJv
bSBtb2RlbC5hdHRhY2htZW50IGltcG9ydCBBdHRhY2htZW50Ci1mcm9tIG1vZGVsLnF1ZXVlcyBp
bXBvcnQgcXVldWVzCitmcm9tIG1vZGVsLnF1ZXVlcyBpbXBvcnQgUXVldWUKIAogCiBjbGFzcyBE
YXNoYm9hcmQod2ViYXBwLlJlcXVlc3RIYW5kbGVyKToKKyAgICAjIFdlIG1heSB3YW50IHRvIHNv
cnQgdGhlc2U/CisgICAgX29yZGVyZWRfcXVldWVzID0gUXVldWUuYWxsKCkKKyAgICBfaGVhZGVy
X25hbWVzID0gW3F1ZXVlLnNob3J0X25hbWUoKSBmb3IgcXVldWUgaW4gX29yZGVyZWRfcXVldWVz
XQogCi0gICAgIyBGSVhNRTogVGhpcyBsaXN0IHByb2JhYmx5IGJlbG9uZ3MgYXMgcGFydCBvZiBh
IFF1ZXVlIG9iamVjdCBpbiBxdWV1ZXMucHkKLSAgICAjIEFycmF5cyBhcmUgYnViYmxlX25hbWUs
IHF1ZXVlX25hbWUKLSAgICAjIEZJWE1FOiBDYW4gdGhpcyBiZSB1bmlmaWVkIHdpdGggU3RhdHVz
QnViYmxlLl9xdWV1ZXNfdG9fZGlzcGxheT8KLSAgICBfcXVldWVzX3RvX2Rpc3BsYXkgPSBbCi0g
ICAgICAgIFsiU3R5bGUiLCAic3R5bGUtcXVldWUiXSwKLSAgICAgICAgWyJDci1MaW51eCIsICJj
aHJvbWl1bS1ld3MiXSwKLSAgICAgICAgWyJRdCIsICJxdC1ld3MiXSwKLSAgICAgICAgWyJHdGsi
LCAiZ3RrLWV3cyJdLAotICAgICAgICBbIk1hYyIsICJtYWMtZXdzIl0sCi0gICAgICAgIFsiV2lu
IiwgIndpbi1ld3MiXSwKLSAgICAgICAgWyJDb21taXQiLCAiY29tbWl0LXF1ZXVlIl0sCi0gICAg
XQotICAgICMgU3BsaXQgdGhlIHppcHBlZCBsaXN0IGludG8gY29tcG9uZW50IHBhcnRzCi0gICAg
X2hlYWRlcl9uYW1lcywgX29yZGVyZWRfcXVldWVfbmFtZXMgPSB6aXAoKl9xdWV1ZXNfdG9fZGlz
cGxheSkKLQotICAgICMgVGhpcyBhc3NlcnRzIHRoYXQgYWxsIG9mIHRoZSBxdWV1ZXMgbGlzdGVk
IGFib3ZlIGFyZSB2YWxpZCBxdWV1ZSBuYW1lcy4KLSAgICBhc3NlcnQocmVkdWNlKG9wZXJhdG9y
LmFuZF8sIG1hcChsYW1iZGEgbmFtZTogbmFtZSBpbiBxdWV1ZXMsIF9vcmRlcmVkX3F1ZXVlX25h
bWVzKSkpCi0KLSAgICBkZWYgX2J1aWxkX2J1YmJsZShzZWxmLCBhdHRhY2htZW50LCBxdWV1ZV9u
YW1lKToKLSAgICAgICAgcXVldWVfc3RhdHVzID0gYXR0YWNobWVudC5zdGF0dXNfZm9yX3F1ZXVl
KHF1ZXVlX25hbWUpCisgICAgZGVmIF9idWlsZF9idWJibGUoc2VsZiwgYXR0YWNobWVudCwgcXVl
dWUpOgorICAgICAgICBxdWV1ZV9zdGF0dXMgPSBhdHRhY2htZW50LnN0YXR1c19mb3JfcXVldWUo
cXVldWUubmFtZSgpKQogICAgICAgICBidWJibGUgPSB7CiAgICAgICAgICAgICAic3RhdHVzX2Ns
YXNzIjogYXR0YWNobWVudC5zdGF0ZV9mcm9tX3F1ZXVlX3N0YXR1cyhxdWV1ZV9zdGF0dXMpIGlm
IHF1ZXVlX3N0YXR1cyBlbHNlICJub25lIiwKICAgICAgICAgICAgICJzdGF0dXNfZGF0ZSI6IHF1
ZXVlX3N0YXR1cy5kYXRlIGlmIHF1ZXVlX3N0YXR1cyBlbHNlIE5vbmUsCkBAIC02Nyw3ICs1Miw3
IEBAIGNsYXNzIERhc2hib2FyZCh3ZWJhcHAuUmVxdWVzdEhhbmRsZXIpOgogICAgICAgICByb3cg
PSB7CiAgICAgICAgICAgICAiYnVnX2lkIjogYXR0YWNobWVudC5idWdfaWQoKSwKICAgICAgICAg
ICAgICJhdHRhY2htZW50X2lkIjogYXR0YWNobWVudC5pZCwKLSAgICAgICAgICAgICJidWJibGVz
IjogW3NlbGYuX2J1aWxkX2J1YmJsZShhdHRhY2htZW50LCBxdWV1ZV9uYW1lKSBmb3IgcXVldWVf
bmFtZSBpbiBzZWxmLl9vcmRlcmVkX3F1ZXVlX25hbWVzXSwKKyAgICAgICAgICAgICJidWJibGVz
IjogW3NlbGYuX2J1aWxkX2J1YmJsZShhdHRhY2htZW50LCBxdWV1ZSkgZm9yIHF1ZXVlIGluIHNl
bGYuX29yZGVyZWRfcXVldWVzXSwKICAgICAgICAgfQogICAgICAgICByZXR1cm4gcm93CiAKZGlm
ZiAtLWdpdCBhL1dlYktpdFRvb2xzL1F1ZXVlU3RhdHVzU2VydmVyL2hhbmRsZXJzL3F1ZXVlc3Rh
dHVzLnB5IGIvV2ViS2l0VG9vbHMvUXVldWVTdGF0dXNTZXJ2ZXIvaGFuZGxlcnMvcXVldWVzdGF0
dXMucHkKaW5kZXggMDI1OWMzNzFhNTQxZmU2NTI5YmQzMTRjNjViOTU3NTYyYmI4Mzg4MC4uMmI5
YTM3ODQ1OWZlZmE2NWYxOWVkNzgxOWVkNGQ2Yjc5N2ExZGJiNSAxMDA2NDQKLS0tIGEvV2ViS2l0
VG9vbHMvUXVldWVTdGF0dXNTZXJ2ZXIvaGFuZGxlcnMvcXVldWVzdGF0dXMucHkKKysrIGIvV2Vi
S2l0VG9vbHMvUXVldWVTdGF0dXNTZXJ2ZXIvaGFuZGxlcnMvcXVldWVzdGF0dXMucHkKQEAgLTI5
LDcgKzI5LDcgQEAKIGZyb20gZ29vZ2xlLmFwcGVuZ2luZS5leHQgaW1wb3J0IHdlYmFwcAogZnJv
bSBnb29nbGUuYXBwZW5naW5lLmV4dC53ZWJhcHAgaW1wb3J0IHRlbXBsYXRlCiAKLWZyb20gbW9k
ZWwucXVldWVzIGltcG9ydCBxdWV1ZXMsIGRpc3BsYXlfbmFtZV9mb3JfcXVldWUKK2Zyb20gbW9k
ZWwucXVldWVzIGltcG9ydCBRdWV1ZQogZnJvbSBtb2RlbC53b3JraXRlbXMgaW1wb3J0IFdvcmtJ
dGVtcwogZnJvbSBtb2RlbC5hY3RpdmV3b3JraXRlbXMgaW1wb3J0IEFjdGl2ZVdvcmtJdGVtcwog
CkBAIC01MCw5ICs1MCwxNCBAQCBjbGFzcyBRdWV1ZVN0YXR1cyh3ZWJhcHAuUmVxdWVzdEhhbmRs
ZXIpOgogICAgICAgICByZXR1cm4gcm93cwogCiAgICAgZGVmIGdldChzZWxmLCBxdWV1ZV9uYW1l
KToKLSAgICAgICAgcXVldWVkX2l0ZW1zID0gV29ya0l0ZW1zLmFsbCgpLmZpbHRlcigicXVldWVf
bmFtZSA9IiwgcXVldWVfbmFtZSkuZ2V0KCkKLSAgICAgICAgYWN0aXZlX2l0ZW1zID0gQWN0aXZl
V29ya0l0ZW1zLmFsbCgpLmZpbHRlcigicXVldWVfbmFtZSA9IiwgcXVldWVfbmFtZSkuZ2V0KCkK
LSAgICAgICAgc3RhdHVzZXMgPSBxdWV1ZXN0YXR1cy5RdWV1ZVN0YXR1cy5hbGwoKS5maWx0ZXIo
InF1ZXVlX25hbWUgPSIsIHF1ZXVlX25hbWUpLm9yZGVyKCItZGF0ZSIpLmZldGNoKDE1KQorICAg
ICAgICBxdWV1ZV9uYW1lID0gcXVldWVfbmFtZS5sb3dlcmNhc2UoKQorICAgICAgICBxdWV1ZSA9
IFF1ZXVlLnF1ZXVlX3dpdGhfbmFtZShxdWV1ZV9uYW1lKQorICAgICAgICBpZiBub3QgcXVldWU6
CisgICAgICAgICAgICBzZWxmLmVycm9yKDQwNCkKKworICAgICAgICBxdWV1ZWRfaXRlbXMgPSBX
b3JrSXRlbXMuYWxsKCkuZmlsdGVyKCJxdWV1ZV9uYW1lID0iLCBxdWV1ZS5uYW1lKCkpLmdldCgp
CisgICAgICAgIGFjdGl2ZV9pdGVtcyA9IEFjdGl2ZVdvcmtJdGVtcy5hbGwoKS5maWx0ZXIoInF1
ZXVlX25hbWUgPSIsIHF1ZXVlLm5hbWUoKSkuZ2V0KCkKKyAgICAgICAgc3RhdHVzZXMgPSBxdWV1
ZXN0YXR1cy5RdWV1ZVN0YXR1cy5hbGwoKS5maWx0ZXIoInF1ZXVlX25hbWUgPSIsIHF1ZXVlLm5h
bWUoKSkub3JkZXIoIi1kYXRlIikuZmV0Y2goMTUpCiAKICAgICAgICAgc3RhdHVzX2dyb3VwcyA9
IFtdCiAgICAgICAgIGxhc3RfcGF0Y2hfaWQgPSBOb25lCkBAIC02OSw3ICs3NCw3IEBAIGNsYXNz
IFF1ZXVlU3RhdHVzKHdlYmFwcC5SZXF1ZXN0SGFuZGxlcik6CiAgICAgICAgICAgICBsYXN0X3Bh
dGNoX2lkID0gcGF0Y2hfaWQKIAogICAgICAgICB0ZW1wbGF0ZV92YWx1ZXMgPSB7Ci0gICAgICAg
ICAgICAiZGlzcGxheV9xdWV1ZV9uYW1lIjogZGlzcGxheV9uYW1lX2Zvcl9xdWV1ZShxdWV1ZV9u
YW1lKSwKKyAgICAgICAgICAgICJkaXNwbGF5X3F1ZXVlX25hbWUiOiBxdWV1ZS5kaXNwbGF5X25h
bWUoKSwKICAgICAgICAgICAgICJ3b3JrX2l0ZW1fcm93cyI6IHNlbGYuX3Jvd3NfZm9yX3dvcmtf
aXRlbXMocXVldWVkX2l0ZW1zLCBhY3RpdmVfaXRlbXMpLAogICAgICAgICAgICAgInN0YXR1c19n
cm91cHMiOiBzdGF0dXNfZ3JvdXBzLAogICAgICAgICB9CmRpZmYgLS1naXQgYS9XZWJLaXRUb29s
cy9RdWV1ZVN0YXR1c1NlcnZlci9oYW5kbGVycy9yZWNlbnRzdGF0dXMucHkgYi9XZWJLaXRUb29s
cy9RdWV1ZVN0YXR1c1NlcnZlci9oYW5kbGVycy9yZWNlbnRzdGF0dXMucHkKaW5kZXggZTJiOGMy
ZjE3YmVjYjk0Y2I2NDA0OTJhZjVmODdhMzdlNjcxNGNiOC4uZWJhOTAxZmFjM2U4Mjc5NDk4MGI4
ZDU0NzllN2NiYTFlMWNiMTY3ZiAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvUXVldWVTdGF0dXNT
ZXJ2ZXIvaGFuZGxlcnMvcmVjZW50c3RhdHVzLnB5CisrKyBiL1dlYktpdFRvb2xzL1F1ZXVlU3Rh
dHVzU2VydmVyL2hhbmRsZXJzL3JlY2VudHN0YXR1cy5weQpAQCAtMzEsMjMgKzMxLDI0IEBAIGlt
cG9ydCBkYXRldGltZQogZnJvbSBnb29nbGUuYXBwZW5naW5lLmV4dCBpbXBvcnQgd2ViYXBwCiBm
cm9tIGdvb2dsZS5hcHBlbmdpbmUuZXh0LndlYmFwcCBpbXBvcnQgdGVtcGxhdGUKIAotZnJvbSBt
b2RlbC5xdWV1ZXMgaW1wb3J0IHF1ZXVlcywgZGlzcGxheV9uYW1lX2Zvcl9xdWV1ZQorZnJvbSBt
b2RlbC5xdWV1ZXMgaW1wb3J0IFF1ZXVlCiBmcm9tIG1vZGVsLnF1ZXVlc3RhdHVzIGltcG9ydCBR
dWV1ZVN0YXR1cwogZnJvbSBtb2RlbC53b3JraXRlbXMgaW1wb3J0IFdvcmtJdGVtcwogCiAKIGNs
YXNzIFF1ZXVlQnViYmxlKG9iamVjdCk6CiAgICAgIiIiVmlldyBzdXBwb3J0IGNsYXNzIGZvciBy
ZWNlbnRzdGF0dXMuaHRtbCIiIgotICAgIGRlZiBfX2luaXRfXyhzZWxmLCBxdWV1ZV9uYW1lKToK
LSAgICAgICAgc2VsZi5fcXVldWVfbmFtZSA9IHF1ZXVlX25hbWUKLSAgICAgICAgc2VsZi5fd29y
a19pdGVtcyA9IFdvcmtJdGVtcy5hbGwoKS5maWx0ZXIoInF1ZXVlX25hbWUgPSIsIHF1ZXVlX25h
bWUpLmdldCgpCi0gICAgICAgIHNlbGYuX2xhc3Rfc3RhdHVzID0gUXVldWVTdGF0dXMuYWxsKCku
ZmlsdGVyKCJxdWV1ZV9uYW1lID0iLCBxdWV1ZV9uYW1lKS5vcmRlcigiLWRhdGUiKS5nZXQoKQor
ICAgIGRlZiBfX2luaXRfXyhzZWxmLCBxdWV1ZSk6CisgICAgICAgIHNlbGYuX3F1ZXVlID0gcXVl
dWUKKyAgICAgICAgc2VsZi5fd29ya19pdGVtcyA9IFdvcmtJdGVtcy5hbGwoKS5maWx0ZXIoInF1
ZXVlX25hbWUgPSIsIHF1ZXVlLm5hbWUoKSkuZ2V0KCkKKyAgICAgICAgc2VsZi5fbGFzdF9zdGF0
dXMgPSBRdWV1ZVN0YXR1cy5hbGwoKS5maWx0ZXIoInF1ZXVlX25hbWUgPSIsIHF1ZXVlLm5hbWUo
KSkub3JkZXIoIi1kYXRlIikuZ2V0KCkKIAorICAgICMgRklYTUU6IG5hbWUgYW5kIGRpc3BsYXlf
bmFtZSBzaG91bGQgYmUgcmVwbGFjZWQgYnkgYSAucXVldWUoKSBhY2Nlc3Nvci4KICAgICBkZWYg
bmFtZShzZWxmKToKLSAgICAgICAgcmV0dXJuIHNlbGYuX3F1ZXVlX25hbWUKKyAgICAgICAgcmV0
dXJuIHNlbGYuX3F1ZXVlLm5hbWUoKQogCiAgICAgZGVmIGRpc3BsYXlfbmFtZShzZWxmKToKLSAg
ICAgICAgcmV0dXJuIGRpc3BsYXlfbmFtZV9mb3JfcXVldWUoc2VsZi5fcXVldWVfbmFtZSkKKyAg
ICAgICAgcmV0dXJuIHNlbGYuX3F1ZXVlLmRpc3BsYXlfbmFtZSgpCiAKICAgICBkZWYgX2xhc3Rf
c3RhdHVzX2RhdGUoc2VsZik6CiAgICAgICAgIGlmIG5vdCBzZWxmLl9sYXN0X3N0YXR1czoKQEAg
LTg4LDYgKzg5LDYgQEAgY2xhc3MgUXVldWVzT3ZlcnZpZXcod2ViYXBwLlJlcXVlc3RIYW5kbGVy
KToKIAogICAgIGRlZiBnZXQoc2VsZik6CiAgICAgICAgIHRlbXBsYXRlX3ZhbHVlcyA9IHsKLSAg
ICAgICAgICAgICJxdWV1ZXMiOiBbUXVldWVCdWJibGUocXVldWVfbmFtZSkgZm9yIHF1ZXVlX25h
bWUgaW4gcXVldWVzXSwKKyAgICAgICAgICAgICJxdWV1ZXMiOiBbUXVldWVCdWJibGUocXVldWUp
IGZvciBxdWV1ZSBpbiBRdWV1ZS5hbGwoKV0sCiAgICAgICAgIH0KICAgICAgICAgc2VsZi5yZXNw
b25zZS5vdXQud3JpdGUodGVtcGxhdGUucmVuZGVyKCJ0ZW1wbGF0ZXMvcmVjZW50c3RhdHVzLmh0
bWwiLCB0ZW1wbGF0ZV92YWx1ZXMpKQpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvUXVldWVTdGF0
dXNTZXJ2ZXIvaGFuZGxlcnMvc3RhdHVzYnViYmxlLnB5IGIvV2ViS2l0VG9vbHMvUXVldWVTdGF0
dXNTZXJ2ZXIvaGFuZGxlcnMvc3RhdHVzYnViYmxlLnB5CmluZGV4IDhiNjYxNGJlZDVlMDM3NmY5
Zjk2ZmJmM2RhMDk1YTFiMDIyNGZmMjguLjNiYWQ2ZDE0MmM0ZGY4YzJkMDQ2MDFjYWNlMzNiMDFh
OTRlNzJkMDcgMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL1F1ZXVlU3RhdHVzU2VydmVyL2hhbmRs
ZXJzL3N0YXR1c2J1YmJsZS5weQorKysgYi9XZWJLaXRUb29scy9RdWV1ZVN0YXR1c1NlcnZlci9o
YW5kbGVycy9zdGF0dXNidWJibGUucHkKQEAgLTMzLDM0ICszMywxOCBAQCBmcm9tIGdvb2dsZS5h
cHBlbmdpbmUuZXh0LndlYmFwcCBpbXBvcnQgdGVtcGxhdGUKIAogZnJvbSBtb2RlbC5hdHRhY2ht
ZW50IGltcG9ydCBBdHRhY2htZW50CiBmcm9tIG1vZGVsLndvcmtpdGVtcyBpbXBvcnQgV29ya0l0
ZW1zCi1mcm9tIG1vZGVsLnF1ZXVlcyBpbXBvcnQgcXVldWVzLCBuYW1lX3dpdGhfdW5kZXJzY29y
ZXMKK2Zyb20gbW9kZWwucXVldWVzIGltcG9ydCBRdWV1ZQogCiAKIGNsYXNzIFN0YXR1c0J1YmJs
ZSh3ZWJhcHAuUmVxdWVzdEhhbmRsZXIpOgotICAgICMgRklYTUU6IFRoaXMgbGlzdCBwcm9iYWJs
eSBiZWxvbmdzIGFzIHBhcnQgb2YgYSBRdWV1ZSBvYmplY3QgaW4gcXVldWVzLnB5Ci0gICAgIyBB
cnJheXMgYXJlIGJ1YmJsZV9uYW1lLCBxdWV1ZV9uYW1lCi0gICAgX3F1ZXVlc190b19kaXNwbGF5
ID0gWwotICAgICAgICBbInN0eWxlIiwgInN0eWxlLXF1ZXVlIl0sCi0gICAgICAgIFsiY3ItbGlu
dXgiLCAiY2hyb21pdW0tZXdzIl0sCi0gICAgICAgIFsiZ3RrIiwgImd0ay1ld3MiXSwKLSAgICAg
ICAgWyJxdCIsICJxdC1ld3MiXSwKLSAgICAgICAgWyJtYWMiLCAibWFjLWV3cyJdLAotICAgICAg
ICBbIndpbiIsICJ3aW4tZXdzIl0sCi0gICAgICAgIFsiZWZsIiwgImVmbC1ld3MiXSwKLSAgICBd
CisgICAgX3F1ZXVlc190b19kaXNwbGF5ID0gW3F1ZXVlIGZvciBxdWV1ZSBpbiBRdWV1ZS5hbGwo
KSBpZiBxdWV1ZS5pc19ld3MoKV0KIAotICAgICMgVGhpcyBhc3NlcnRzIHRoYXQgYWxsIG9mIHRo
ZSBxdWV1ZXMgbGlzdGVkIGFib3ZlIGFyZSB2YWxpZCBxdWV1ZSBuYW1lcy4KLSAgICBhc3NlcnQo
cmVkdWNlKG9wZXJhdG9yLmFuZF8sIG1hcChsYW1iZGEgbmFtZV9wYWlyOiBuYW1lX3BhaXJbMV0g
aW4gcXVldWVzLCBfcXVldWVzX3RvX2Rpc3BsYXkpKSkKLQotICAgIGRlZiBfYnVpbGRfYnViYmxl
KHNlbGYsIHF1ZXVlX25hbWVfcGFpciwgYXR0YWNobWVudCk6Ci0gICAgICAgIGJ1YmJsZV9uYW1l
ID0gcXVldWVfbmFtZV9wYWlyWzBdCi0gICAgICAgIHF1ZXVlX25hbWUgPSBxdWV1ZV9uYW1lX3Bh
aXJbMV0KLQotICAgICAgICBxdWV1ZV9zdGF0dXMgPSBhdHRhY2htZW50LnN0YXR1c19mb3JfcXVl
dWUocXVldWVfbmFtZSkKKyAgICBkZWYgX2J1aWxkX2J1YmJsZShzZWxmLCBxdWV1ZSwgYXR0YWNo
bWVudCk6CisgICAgICAgIHF1ZXVlX3N0YXR1cyA9IGF0dGFjaG1lbnQuc3RhdHVzX2Zvcl9xdWV1
ZShxdWV1ZS5uYW1lKCkpCiAgICAgICAgIGJ1YmJsZSA9IHsKLSAgICAgICAgICAgICJuYW1lIjog
YnViYmxlX25hbWUsCisgICAgICAgICAgICAibmFtZSI6IHF1ZXVlLnNob3J0X25hbWUoKS5sb3dl
cmNhc2UoKSwKICAgICAgICAgICAgICJhdHRhY2htZW50X2lkIjogYXR0YWNobWVudC5pZCwKLSAg
ICAgICAgICAgICJxdWV1ZV9wb3NpdGlvbiI6IGF0dGFjaG1lbnQucG9zaXRpb25faW5fcXVldWUo
cXVldWVfbmFtZSksCisgICAgICAgICAgICAicXVldWVfcG9zaXRpb24iOiBhdHRhY2htZW50LnBv
c2l0aW9uX2luX3F1ZXVlKHF1ZXVlLm5hbWUoKSksCiAgICAgICAgICAgICAic3RhdGUiOiBhdHRh
Y2htZW50LnN0YXRlX2Zyb21fcXVldWVfc3RhdHVzKHF1ZXVlX3N0YXR1cykgaWYgcXVldWVfc3Rh
dHVzIGVsc2UgIm5vbmUiLAogICAgICAgICAgICAgInN0YXR1cyI6IHF1ZXVlX3N0YXR1cywKICAg
ICAgICAgfQpAQCAtNjgsNyArNTIsNyBAQCBjbGFzcyBTdGF0dXNCdWJibGUod2ViYXBwLlJlcXVl
c3RIYW5kbGVyKToKIAogICAgIGRlZiBnZXQoc2VsZiwgYXR0YWNobWVudF9pZCk6CiAgICAgICAg
IGF0dGFjaG1lbnQgPSBBdHRhY2htZW50KGludChhdHRhY2htZW50X2lkKSkKLSAgICAgICAgYnVi
YmxlcyA9IFtzZWxmLl9idWlsZF9idWJibGUobmFtZV9wYWlyLCBhdHRhY2htZW50KSBmb3IgbmFt
ZV9wYWlyIGluIHNlbGYuX3F1ZXVlc190b19kaXNwbGF5XQorICAgICAgICBidWJibGVzID0gW3Nl
bGYuX2J1aWxkX2J1YmJsZShxdWV1ZSwgYXR0YWNobWVudCkgZm9yIHF1ZXVlIGluIHNlbGYuX3F1
ZXVlc190b19kaXNwbGF5XQogICAgICAgICB0ZW1wbGF0ZV92YWx1ZXMgPSB7CiAgICAgICAgICAg
ICAiYnViYmxlcyI6IGJ1YmJsZXMsCiAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xz
L1F1ZXVlU3RhdHVzU2VydmVyL2hhbmRsZXJzL3VwZGF0ZXdvcmtpdGVtcy5weSBiL1dlYktpdFRv
b2xzL1F1ZXVlU3RhdHVzU2VydmVyL2hhbmRsZXJzL3VwZGF0ZXdvcmtpdGVtcy5weQppbmRleCBm
OTFiZWI0NGUyZTgyNTNiMjljMmYyYmE1OTQ1NjVhYTZhNTI3YzNlLi40MWQ5NmI2OThhOTlmOGRk
NzhhYWM2YzFmMmYxNTRkZDA1YTY0MDZlIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9RdWV1ZVN0
YXR1c1NlcnZlci9oYW5kbGVycy91cGRhdGV3b3JraXRlbXMucHkKKysrIGIvV2ViS2l0VG9vbHMv
UXVldWVTdGF0dXNTZXJ2ZXIvaGFuZGxlcnMvdXBkYXRld29ya2l0ZW1zLnB5CkBAIC0zMCw3ICsz
MCw3IEBAIGZyb20gZ29vZ2xlLmFwcGVuZ2luZS5leHQgaW1wb3J0IHdlYmFwcCwgZGIKIGZyb20g
Z29vZ2xlLmFwcGVuZ2luZS5leHQud2ViYXBwIGltcG9ydCB0ZW1wbGF0ZQogCiBmcm9tIGhhbmRs
ZXJzLnVwZGF0ZWJhc2UgaW1wb3J0IFVwZGF0ZUJhc2UKLWZyb20gbW9kZWwucXVldWVzIGltcG9y
dCBxdWV1ZXMKK2Zyb20gbW9kZWwucXVldWVzIGltcG9ydCBRdWV1ZQogZnJvbSBtb2RlbC53b3Jr
aXRlbXMgaW1wb3J0IFdvcmtJdGVtcwogCiBmcm9tIGRhdGV0aW1lIGltcG9ydCBkYXRldGltZQpA
QCAtNDEsOCArNDEsOSBAQCBjbGFzcyBVcGRhdGVXb3JrSXRlbXMoVXBkYXRlQmFzZSk6CiAgICAg
ICAgIHNlbGYucmVzcG9uc2Uub3V0LndyaXRlKHRlbXBsYXRlLnJlbmRlcigidGVtcGxhdGVzL3Vw
ZGF0ZXdvcmtpdGVtcy5odG1sIiwgTm9uZSkpCiAKICAgICBkZWYgX3dvcmtfaXRlbXNfZm9yX3F1
ZXVlKHNlbGYsIHF1ZXVlX25hbWUpOgotICAgICAgICBpZiBxdWV1ZV9uYW1lIG5vdCBpbiBxdWV1
ZXM6Ci0gICAgICAgICAgICBzZWxmLnJlc3BvbnNlLm91dC53cml0ZSgiXCIlc1wiIGlzIG5vdCBp
biBxdWV1ZXMgJXMiICUgKHF1ZXVlX25hbWUsIHF1ZXVlcykpCisgICAgICAgIHF1ZXVlID0gUXVl
dWUucXVldWVfZm9yX25hbWUocXVldWVfbmFtZSkKKyAgICAgICAgaWYgcXVldWU6CisgICAgICAg
ICAgICBzZWxmLnJlc3BvbnNlLm91dC53cml0ZSgiXCIlc1wiIGlzIG5vdCBpbiBxdWV1ZXMgJXMi
ICUgKHF1ZXVlX25hbWUsIFF1ZXVlLmFsbCgpKSkKICAgICAgICAgICAgIHJldHVybiBOb25lCiAg
ICAgICAgIHdvcmtfaXRlbXMgPSBXb3JrSXRlbXMuYWxsKCkuZmlsdGVyKCJxdWV1ZV9uYW1lID0i
LCBxdWV1ZV9uYW1lKS5nZXQoKQogICAgICAgICBpZiBub3Qgd29ya19pdGVtczoKZGlmZiAtLWdp
dCBhL1dlYktpdFRvb2xzL1F1ZXVlU3RhdHVzU2VydmVyL21vZGVsL2F0dGFjaG1lbnQucHkgYi9X
ZWJLaXRUb29scy9RdWV1ZVN0YXR1c1NlcnZlci9tb2RlbC9hdHRhY2htZW50LnB5CmluZGV4IDlh
ZTU5ZThlZGMxNWYyZDBhOThkODcwM2RhYzYwZmQ1YTU3MTBlYmUuLmE4ZjY3ZmFjNDJmMDZiNzY0
NTg1OWUwMjM0NzZlZmY5MGNiZWNiMDYgMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL1F1ZXVlU3Rh
dHVzU2VydmVyL21vZGVsL2F0dGFjaG1lbnQucHkKKysrIGIvV2ViS2l0VG9vbHMvUXVldWVTdGF0
dXNTZXJ2ZXIvbW9kZWwvYXR0YWNobWVudC5weQpAQCAtMzAsNyArMzAsNyBAQCBpbXBvcnQgcmUK
IAogZnJvbSBnb29nbGUuYXBwZW5naW5lLmFwaSBpbXBvcnQgbWVtY2FjaGUKIAotZnJvbSBtb2Rl
bC5xdWV1ZXMgaW1wb3J0IHF1ZXVlcywgbmFtZV93aXRoX3VuZGVyc2NvcmVzCitmcm9tIG1vZGVs
LnF1ZXVlcyBpbXBvcnQgUXVldWUKIGZyb20gbW9kZWwucXVldWVzdGF0dXMgaW1wb3J0IFF1ZXVl
U3RhdHVzCiBmcm9tIG1vZGVsLndvcmtpdGVtcyBpbXBvcnQgV29ya0l0ZW1zCiAKQEAgLTkxLDcg
KzkxLDcgQEAgY2xhc3MgQXR0YWNobWVudChvYmplY3QpOgogICAgICAgICByZXR1cm4gc2VsZi5f
cXVldWVfcG9zaXRpb25zKCkuZ2V0KHF1ZXVlX25hbWUpCiAKICAgICBkZWYgc3RhdHVzX2Zvcl9x
dWV1ZShzZWxmLCBxdWV1ZV9uYW1lKToKLSAgICAgICAgdW5kZXJzY29yZV9xdWV1ZV9uYW1lID0g
bmFtZV93aXRoX3VuZGVyc2NvcmVzKHF1ZXVlX25hbWUpCisgICAgICAgIHVuZGVyc2NvcmVfcXVl
dWVfbmFtZSA9IFF1ZXVlKHF1ZXVlX25hbWUpLm5hbWVfd2l0aF91bmRlcnNjb3JlcygpCiAgICAg
ICAgICMgc3VtbWFyeSgpIGlzIGEgaG9ycmlibGUgQVBJIGFuZCBzaG91bGQgYmUga2lsbGVkLgog
ICAgICAgICBxdWV1ZV9zdW1tYXJ5ID0gc2VsZi5zdW1tYXJ5KCkuZ2V0KHVuZGVyc2NvcmVfcXVl
dWVfbmFtZSkKICAgICAgICAgaWYgbm90IHF1ZXVlX3N1bW1hcnk6CkBAIC0xMzQsNyArMTM0LDkg
QEAgY2xhc3MgQXR0YWNobWVudChvYmplY3QpOgogICAgICAgICAgICAgc3VtbWFyeVtxdWV1ZV0g
PSBOb25lCiAgICAgICAgICAgICBzdGF0dXMgPSBRdWV1ZVN0YXR1cy5hbGwoKS5maWx0ZXIoJ3F1
ZXVlX25hbWUgPScsIHF1ZXVlKS5maWx0ZXIoJ2FjdGl2ZV9wYXRjaF9pZCA9Jywgc2VsZi5pZCku
b3JkZXIoJy1kYXRlJykuZ2V0KCkKICAgICAgICAgICAgIGlmIHN0YXR1czoKLSAgICAgICAgICAg
ICAgICBzdW1tYXJ5W25hbWVfd2l0aF91bmRlcnNjb3JlcyhxdWV1ZSldID0geworICAgICAgICAg
ICAgICAgIHF1ZXVlX25hbWUgPSBRdWV1ZShxdWV1ZV9uYW1lKS5uYW1lX3dpdGhfdW5kZXJzY29y
ZXMoKQorICAgICAgICAgICAgICAgICMgc3VtbWFyeSgpIGlzIGEgaG9ycmlibGUgQVBJIGFuZCBz
aG91bGQgYmUga2lsbGVkLgorICAgICAgICAgICAgICAgIHN1bW1hcnlbcXVldWVfbmFtZV0gPSB7
CiAgICAgICAgICAgICAgICAgICAgICJzdGF0ZSI6IHNlbGYuc3RhdGVfZnJvbV9xdWV1ZV9zdGF0
dXMoc3RhdHVzKSwKICAgICAgICAgICAgICAgICAgICAgInN0YXR1cyI6IHN0YXR1cywKICAgICAg
ICAgICAgICAgICB9CmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9RdWV1ZVN0YXR1c1NlcnZlci9t
b2RlbC9xdWV1ZXMucHkgYi9XZWJLaXRUb29scy9RdWV1ZVN0YXR1c1NlcnZlci9tb2RlbC9xdWV1
ZXMucHkKaW5kZXggOTY1OGRkNGJmY2UzYTUwZGFkMGY4OWU5NzhlODRlMGQxNTZmN2NiMS4uOWNh
MWUxZTYzZjM1M2IzYWJkMGI5Yzg3YmI3YTgwOWQ0YjljOWMwYyAxMDA2NDQKLS0tIGEvV2ViS2l0
VG9vbHMvUXVldWVTdGF0dXNTZXJ2ZXIvbW9kZWwvcXVldWVzLnB5CisrKyBiL1dlYktpdFRvb2xz
L1F1ZXVlU3RhdHVzU2VydmVyL21vZGVsL3F1ZXVlcy5weQpAQCAtMjYsMzkgKzI2LDY2IEBACiAj
IChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBP
VVQgT0YgVEhFIFVTRQogIyBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogCisKIGltcG9ydCByZQogCiAKLXF1ZXVlcyA9
IFsKLSAgICAiY29tbWl0LXF1ZXVlIiwKLSAgICAic3R5bGUtcXVldWUiLAotICAgICJjaHJvbWl1
bS1ld3MiLAotICAgICJxdC1ld3MiLAotICAgICJndGstZXdzIiwKLSAgICAibWFjLWV3cyIsCi0g
ICAgIndpbi1ld3MiLAotICAgICJlZmwtZXdzIiwKLV0KK2NsYXNzIFF1ZXVlKG9iamVjdCk6CisK
KyAgICAjIEV2ZW50dWFsbHkgdGhlIGxpc3Qgb2YgcXVldWVzIG1heSBiZSBzdG9yZWQgaW4gdGhl
IGRhdGEgc3RvcmUuCisgICAgX2FsbF9xdWV1ZV9uYW1lcyA9IFsKKyAgICAgICAgImNvbW1pdC1x
dWV1ZSIsCisgICAgICAgICJzdHlsZS1xdWV1ZSIsCisgICAgICAgICJjaHJvbWl1bS1ld3MiLAor
ICAgICAgICAicXQtZXdzIiwKKyAgICAgICAgImd0ay1ld3MiLAorICAgICAgICAibWFjLWV3cyIs
CisgICAgICAgICJ3aW4tZXdzIiwKKyAgICAgICAgImVmbC1ld3MiLAorICAgIF0KKworICAgIGRl
ZiBfX2luaXRfXyhzZWxmLCBuYW1lKToKKyAgICAgICAgYXNzZXJ0KG5hbWUgaW4gc2VsZi5fYWxs
X3F1ZXVlX25hbWVzKQorICAgICAgICBzZWxmLl9uYW1lID0gbmFtZQorCisgICAgQGNsYXNzbWV0
aG9kCisgICAgZGVmIHF1ZXVlX3dpdGhfbmFtZShjbHMsIHF1ZXVlX25hbWUpOgorICAgICAgICBp
ZiBxdWV1ZV9uYW1lIG5vdCBpbiBjbHMuX2FsbF9xdWV1ZV9uYW1lczoKKyAgICAgICAgICAgIHJl
dHVybiBOb25lCisgICAgICAgIHJldHVybiBRdWV1ZShxdWV1ZV9uYW1lKQorCisgICAgQGNsYXNz
bWV0aG9kCisgICAgZGVmIGFsbChjbHMpOgorICAgICAgICByZXR1cm4gW1F1ZXVlKG5hbWUpIGZv
ciBuYW1lIGluIGNscy5fYWxsX3F1ZXVlX25hbWVzXQorCisgICAgZGVmIG5hbWUoc2VsZik6Cisg
ICAgICAgIHJldHVybiBzZWxmLl9uYW1lCiAKKyAgICBkZWYgX2NhcGxpdGFsaXplX2FmdGVyX2Rh
c2goc2VsZiwgc3RyaW5nKToKKyAgICAgICAgcmV0dXJuICItIi5qb2luKFt3b3JkWzBdLnVwcGVy
KCkgKyB3b3JkWzE6XSBmb3Igd29yZCBpbiBzdHJpbmcuc3BsaXQoIi0iKV0pCiAKLSMgRklYTUU6
IFdlIG5lZWQgc29tZSBzb3J0IG9mIFF1ZXVlIG9iamVjdC4KLWRlZiBfdGl0bGVfY2FzZShzdHJp
bmcpOgotICAgIHdvcmRzID0gc3RyaW5nLnNwbGl0KCIgIikKLSAgICB3b3JkcyA9IG1hcChsYW1i
ZGEgd29yZDogd29yZC5jYXBpdGFsaXplKCksIHdvcmRzKQotICAgIHJldHVybiAiICIuam9pbih3
b3JkcykKKyAgICAjIEZvciB1c2UgaW4gc3RhdHVzIGJ1YmJsZXMgb3IgdGFibGUgaGVhZGVycwor
ICAgIGRlZiBzaG9ydF9uYW1lKHNlbGYpOgorICAgICAgICAjIEhBQ0s6IGNocm9taXVtLWV3cyBp
cyBpbmNvcnJlY3RseSBuYW1lZC4KKyAgICAgICAgc2hvcnRfbmFtZSA9IHNlbGYuX25hbWUucmVw
bGFjZSgiY2hyb21pdW0tZXdzIiwgIkNyLUxpbnV4LWV3cyIpCisgICAgICAgIHNob3J0X25hbWUg
PSBzaG9ydF9uYW1lLnJlcGxhY2UoIi1ld3MiLCAiIikKKyAgICAgICAgc2hvcnRfbmFtZSA9IHNo
b3J0X25hbWUucmVwbGFjZSgiLXF1ZXVlIiwgIiIpCisgICAgICAgIHJldHVybiBzZWxmLl9jYXBs
aXRhbGl6ZV9hZnRlcl9kYXNoKHNob3J0X25hbWUuY2FwaXRhbGl6ZSgpKQogCisgICAgZGVmIGRp
c3BsYXlfbmFtZShzZWxmKToKKyAgICAgICAgIyBIQUNLOiBjaHJvbWl1bS1ld3MgaXMgaW5jb3Jy
ZWN0bHkgbmFtZWQuCisgICAgICAgIGRpc3BsYXlfbmFtZSA9IHNlbGYuX25hbWUucmVwbGFjZSgi
Y2hyb21pdW0tZXdzIiwgImNyLWxpbnV4LWV3cyIpCiAKLWRlZiBkaXNwbGF5X25hbWVfZm9yX3F1
ZXVlKHF1ZXVlX25hbWUpOgotICAgICMgSEFDSzogY2hyb21pdW0tZXdzIGlzIGluY29ycmVjdGx5
IG5hbWVkLgotICAgIGRpc3BsYXlfbmFtZSA9IHF1ZXVlX25hbWUucmVwbGFjZSgiY2hyb21pdW0t
ZXdzIiwgImNyLWxpbnV4LWV3cyIpCisgICAgICAgIGRpc3BsYXlfbmFtZSA9IGRpc3BsYXlfbmFt
ZS5yZXBsYWNlKCItIiwgIiAiKQorICAgICAgICBkaXNwbGF5X25hbWUgPSBkaXNwbGF5X25hbWUu
cmVwbGFjZSgiY3IiLCAiY2hyb21pdW0iKQorICAgICAgICBkaXNwbGF5X25hbWUgPSBkaXNwbGF5
X25hbWUudGl0bGUoKQorICAgICAgICBkaXNwbGF5X25hbWUgPSBkaXNwbGF5X25hbWUucmVwbGFj
ZSgiRXdzIiwgIkVXUyIpCisgICAgICAgIHJldHVybiBkaXNwbGF5X25hbWUKIAotICAgIGRpc3Bs
YXlfbmFtZSA9IGRpc3BsYXlfbmFtZS5yZXBsYWNlKCItIiwgIiAiKQotICAgIGRpc3BsYXlfbmFt
ZSA9IGRpc3BsYXlfbmFtZS5yZXBsYWNlKCJjciIsICJjaHJvbWl1bSIpCi0gICAgZGlzcGxheV9u
YW1lID0gX3RpdGxlX2Nhc2UoZGlzcGxheV9uYW1lKQotICAgIGRpc3BsYXlfbmFtZSA9IGRpc3Bs
YXlfbmFtZS5yZXBsYWNlKCJFd3MiLCAiRVdTIikKLSAgICByZXR1cm4gZGlzcGxheV9uYW1lCisg
ICAgX2Rhc2hfcmVnZXhwID0gcmUuY29tcGlsZSgiLSIpCiAKKyAgICBkZWYgbmFtZV93aXRoX3Vu
ZGVyc2NvcmVzKHNlbGYpOgorICAgICAgICByZXR1cm4gc2VsZi5fZGFzaF9yZWdleHAuc3ViKCJf
Iiwgc2VsZi5fbmFtZSkKIAotZGVmIG5hbWVfd2l0aF91bmRlcnNjb3JlcyhkYXNoZWRfbmFtZSk6
Ci0gICAgcmVnZXhwID0gcmUuY29tcGlsZSgiLSIpCi0gICAgcmV0dXJuIHJlZ2V4cC5zdWIoIl8i
LCBkYXNoZWRfbmFtZSkKKyAgICBkZWYgaXNfZXdzKHNlbGYpOgorICAgICAgICByZXR1cm4gc2Vs
Zi5fbmFtZS5lbmRzd2l0aCgiLWV3cyIpCmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9RdWV1ZVN0
YXR1c1NlcnZlci9tb2RlbC9xdWV1ZXNfdW5pdHRlc3QucHkgYi9XZWJLaXRUb29scy9RdWV1ZVN0
YXR1c1NlcnZlci9tb2RlbC9xdWV1ZXNfdW5pdHRlc3QucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMzMwNzBhOGY5
NDU2YWJmZTJhMDI4YzA1Yjk4NTEzY2EyNzMxNTc5NwotLS0gL2Rldi9udWxsCisrKyBiL1dlYktp
dFRvb2xzL1F1ZXVlU3RhdHVzU2VydmVyL21vZGVsL3F1ZXVlc191bml0dGVzdC5weQpAQCAtMCww
ICsxLDczIEBACisjIENvcHlyaWdodCAoQykgMjAxMCBHb29nbGUsIEluYy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KKyMKKyMgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisjIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyMgbWV0OgorIworIyAg
ICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUg
Y29weXJpZ2h0CisjIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lci4KKyMgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisjIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKKyMgaW4gdGhlIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorIyBkaXN0
cmlidXRpb24uCisjICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBSZXNlYXJjaCBpbiBNb3Rpb24g
THRkLiBub3IgdGhlIG5hbWVzIG9mIGl0cworIyBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8g
ZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorIyB0aGlzIHNvZnR3YXJl
IHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorIworIyBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVU
T1JTCisjICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UCisjIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0Yg
TUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorIyBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBB
UkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAorIyBPV05FUiBP
UiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwKKyMgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElO
Q0xVRElORywgQlVUIE5PVAorIyBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRF
IEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyMgREFUQSwgT1IgUFJPRklUUzsgT1Ig
QlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCisjIFRIRU9S
WSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQKKyMgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFCisjIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisKK2ltcG9ydCB1bml0dGVzdAor
CisKK2Zyb20gbW9kZWwucXVldWVzIGltcG9ydCBRdWV1ZQorCisKK2NsYXNzIFF1ZXVlVGVzdCh1
bml0dGVzdC5UZXN0Q2FzZSk6CisgICAgZGVmIHRlc3RfaXNfZXdzKHNlbGYpOgorICAgICAgICBt
YWNfZXdzID0gUXVldWUoIm1hYy1ld3MiKQorICAgICAgICBzZWxmLmFzc2VydFRydWUobWFjX2V3
cy5pc19ld3MoKSkKKworICAgIGRlZiB0ZXN0X3F1ZXVlX3dpdGhfbmFtZShzZWxmKToKKyAgICAg
ICAgc2VsZi5hc3NlcnRFcXVhbChRdWV1ZS5xdWV1ZV93aXRoX25hbWUoImJvZ3VzIiksIE5vbmUp
CisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoUXVldWUucXVldWVfd2l0aF9uYW1lKCJtYWMtZXdz
IikubmFtZSgpLCAibWFjLWV3cyIpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKEFzc2VydGlv
bkVycm9yLCBRdWV1ZSwgKCJib2d1cyIpKQorCisgICAgZGVmIF9hc3NlcnRfc2hvcnRfbmFtZShz
ZWxmLCBxdWV1ZV9uYW1lLCBzaG9ydF9uYW1lKToKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbHMo
UXVldWUocXVldWVfbmFtZSkuc2hvcnRfbmFtZSgpLCBzaG9ydF9uYW1lKQorCisgICAgZGVmIHRl
c3Rfc2hvcnRfbmFtZShzZWxmKToKKyAgICAgICAgc2VsZi5fYXNzZXJ0X3Nob3J0X25hbWUoIm1h
Yy1ld3MiLCAiTWFjIikKKyAgICAgICAgc2VsZi5fYXNzZXJ0X3Nob3J0X25hbWUoImNocm9taXVt
LWV3cyIsICJDci1MaW51eCIpCisgICAgICAgIHNlbGYuX2Fzc2VydF9zaG9ydF9uYW1lKCJjb21t
aXQtcXVldWUiLCAiQ29tbWl0IikKKyAgICAgICAgc2VsZi5fYXNzZXJ0X3Nob3J0X25hbWUoInN0
eWxlLXF1ZXVlIiwgIlN0eWxlIikKKworICAgIGRlZiBfYXNzZXJ0X2Rpc3BsYXlfbmFtZShzZWxm
LCBxdWV1ZV9uYW1lLCBzaG9ydF9uYW1lKToKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbHMoUXVl
dWUocXVldWVfbmFtZSkuZGlzcGxheV9uYW1lKCksIHNob3J0X25hbWUpCisKKyAgICBkZWYgdGVz
dF9kaXNwbGF5X25hbWUoc2VsZik6CisgICAgICAgIHNlbGYuX2Fzc2VydF9kaXNwbGF5X25hbWUo
Im1hYy1ld3MiLCAiTWFjIEVXUyIpCisgICAgICAgIHNlbGYuX2Fzc2VydF9kaXNwbGF5X25hbWUo
ImNocm9taXVtLWV3cyIsICJDaHJvbWl1bSBMaW51eCBFV1MiKQorICAgICAgICBzZWxmLl9hc3Nl
cnRfZGlzcGxheV9uYW1lKCJjb21taXQtcXVldWUiLCAiQ29tbWl0IFF1ZXVlIikKKyAgICAgICAg
c2VsZi5fYXNzZXJ0X2Rpc3BsYXlfbmFtZSgic3R5bGUtcXVldWUiLCAiU3R5bGUgUXVldWUiKQor
CisgICAgZGVmIF9hc3NlcnRfbmFtZV93aXRoX3VuZGVyc2NvcmVzKHNlbGYsIHF1ZXVlX25hbWUs
IHNob3J0X25hbWUpOgorICAgICAgICBzZWxmLmFzc2VydEVxdWFscyhRdWV1ZShxdWV1ZV9uYW1l
KS5uYW1lX3dpdGhfdW5kZXJzY29yZXMoKSwgc2hvcnRfbmFtZSkKKworICAgIGRlZiB0ZXN0X25h
bWVfd2l0aF91bmRlcnNjb3JlcyhzZWxmKToKKyAgICAgICAgc2VsZi5fYXNzZXJ0X25hbWVfd2l0
aF91bmRlcnNjb3JlcygibWFjLWV3cyIsICJtYWNfZXdzIikKKyAgICAgICAgc2VsZi5fYXNzZXJ0
X25hbWVfd2l0aF91bmRlcnNjb3JlcygiY2hyb21pdW0tZXdzIiwgImNocm9taXVtX2V3cyIpCisg
ICAgICAgIHNlbGYuX2Fzc2VydF9uYW1lX3dpdGhfdW5kZXJzY29yZXMoImNvbW1pdC1xdWV1ZSIs
ICJjb21taXRfcXVldWUiKQorCisKK2lmIF9fbmFtZV9fID09ICdfX21haW5fXyc6CisgICAgdW5p
dHRlc3QubWFpbigpCmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9RdWV1ZVN0YXR1c1NlcnZlci9t
b2RlbC9zdm5yZXZpc2lvbi5weSBiL1dlYktpdFRvb2xzL1F1ZXVlU3RhdHVzU2VydmVyL21vZGVs
L3N2bnJldmlzaW9uLnB5CmluZGV4IDcwZWMwY2MzYTc5ODM2MmY0NTRhNjQ1N2Q3MDU3ZDgxZmIx
YTc1YTkuLmY1ZDM2NDQ3NDFhYzJhNjAwMjkwZTY2ZTU4MDRiYTI4MGY0NWJmM2MgMTAwNjQ0Ci0t
LSBhL1dlYktpdFRvb2xzL1F1ZXVlU3RhdHVzU2VydmVyL21vZGVsL3N2bnJldmlzaW9uLnB5Cisr
KyBiL1dlYktpdFRvb2xzL1F1ZXVlU3RhdHVzU2VydmVyL21vZGVsL3N2bnJldmlzaW9uLnB5CkBA
IC0yOCw2ICsyOCw3IEBACiAKIGZyb20gZ29vZ2xlLmFwcGVuZ2luZS5leHQgaW1wb3J0IGRiCiAK
KwogY2xhc3MgU1ZOUmV2aXNpb24oZGIuTW9kZWwpOgogICAgIG51bWJlciA9IGRiLkludGVnZXJQ
cm9wZXJ0eSgpCiAgICAgYnJva2VuX2JvdHMgPSBkYi5TdHJpbmdMaXN0UHJvcGVydHkoZGVmYXVs
dD1bXSkKZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL1NjcmlwdHMvdGVzdC13ZWJraXRweSBiL1dl
YktpdFRvb2xzL1NjcmlwdHMvdGVzdC13ZWJraXRweQppbmRleCBiZTdlODcwYjc1M2RkY2Q2NGEz
ZTY3YmY3MmQ5MzM5MDVjNjYzMWVmLi5mY2ZmNGI0YjBlZWZlOTE3MzIxN2U5NzcwMzhhY2ZlZjMy
MDk5MDAzIDEwMDc1NQotLS0gYS9XZWJLaXRUb29scy9TY3JpcHRzL3Rlc3Qtd2Via2l0cHkKKysr
IGIvV2ViS2l0VG9vbHMvU2NyaXB0cy90ZXN0LXdlYmtpdHB5CkBAIC0yMjcsOSArMjI3LDMwIEBA
IGRlZiBpbml0KGNvbW1hbmRfYXJncywgZXh0ZXJuYWxfcGFja2FnZV9wYXRocyk6CiAgICAgICAg
IF9sb2cud2FybihtZXNzYWdlKQogCiAKLWlmIF9fbmFtZV9fID09ICJfX21haW5fXyI6CitkZWYg
X3BhdGhfZnJvbV93ZWJraXRfcm9vdCgqY29tcG9uZW50cyk6CisgICAgd2Via2l0X3Jvb3QgPSBv
cy5wYXRoLmRpcm5hbWUob3MucGF0aC5kaXJuYW1lKG9zLnBhdGguZGlybmFtZShfX2ZpbGVfXykp
KQorICAgIHJldHVybiBvcy5wYXRoLmpvaW4od2Via2l0X3Jvb3QsICpjb21wb25lbnRzKQorCisK
K2RlZiBfdGVzdF9pbXBvcnQobW9kdWxlX3BhdGgpOgorICAgIHRyeToKKyAgICAgICAgc3lzLnBh
dGguYXBwZW5kKG9zLnBhdGguZGlybmFtZShtb2R1bGVfcGF0aCkpCisgICAgICAgIG1vZHVsZV9u
YW1lID0gb3MucGF0aC5iYXNlbmFtZShtb2R1bGVfcGF0aCkKKyAgICAgICAgX19pbXBvcnRfXyht
b2R1bGVfbmFtZSkKKyAgICAgICAgcmV0dXJuIFRydWUKKyAgICBleGNlcHQgRXhjZXB0aW9uLCBl
OgorICAgICAgICBtZXNzYWdlID0gIlNraXBwaW5nIHRlc3RzIGluICVzIGR1ZSB0byBmYWlsdXJl
ICglcykuIiAlIChtb2R1bGVfcGF0aCwgZSkKKyAgICAgICAgaWYgbW9kdWxlX25hbWUuZW5kc3dp
dGgoIlF1ZXVlU3RhdHVzU2VydmVyIik6CisgICAgICAgICAgICBtZXNzYWdlICs9ICIgIFRoaXMg
bW9kdWxlIGlzIG9wdGlvbmFsLiAgVGhlIGZhaWx1cmUgaXMgbGlrZWx5IGR1ZSB0byBhIG1pc3Np
bmcgR29vZ2xlIEFwcEVuZ2luZSBpbnN0YWxsLiAgKGh0dHA6Ly9jb2RlLmdvb2dsZS5jb20vYXBw
ZW5naW5lL2Rvd25sb2Fkcy5odG1sKSIKKyAgICAgICAgX2xvZy53YXJuKG1lc3NhZ2UpCisgICAg
ICAgIHJldHVybiBGYWxzZQogCi0gICAgZXh0ZXJuYWxfcGFja2FnZV9wYXRocyA9IFtvcy5wYXRo
LmpvaW4ob3MucGF0aC5kaXJuYW1lKG9zLnBhdGguZGlybmFtZShvcy5wYXRoLmRpcm5hbWUoX19m
aWxlX18pKSksICdXZWJLaXQyJywgJ1NjcmlwdHMnLCAnd2Via2l0MicpXQoraWYgX19uYW1lX18g
PT0gIl9fbWFpbl9fIjoKKyAgICAjIEZJWE1FOiBXZSBzaG91bGQgcHJvYmFibHkgdGVzdCBlYWNo
IHBhY2thZ2Ugc2VwYXJhdGVseSB0byBhdm9pZCBuYW1pbmcgY29uZmxpY3RzLgorICAgIGV4dGVy
bmFsX3BhY2thZ2VfcGF0aHMgPSBbCisgICAgICAgIF9wYXRoX2Zyb21fd2Via2l0X3Jvb3QoJ1dl
YktpdDInLCAnU2NyaXB0cycsICd3ZWJraXQyJyksCisgICAgICAgIF9wYXRoX2Zyb21fd2Via2l0
X3Jvb3QoJ1dlYktpdFRvb2xzJywgJ1F1ZXVlU3RhdHVzU2VydmVyJyksCisgICAgXQogICAgIGlu
aXQoc3lzLmFyZ3ZbMTpdLCBleHRlcm5hbF9wYWNrYWdlX3BhdGhzKQogCiAgICAgIyBXZSBpbXBv
cnQgdGhlIHVuaXQgdGVzdCBjb2RlIGFmdGVyIGluaXQoKSB0byBlbnN1cmUgdGhhdCBhbnkKQEAg
LTI0MCw0ICsyNjEsNiBAQCBpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgogICAgICMgcnVubmlu
ZyB0aGUgdW5pdCB0ZXN0cy4KICAgICBmcm9tIHdlYmtpdHB5LnRlc3QubWFpbiBpbXBvcnQgVGVz
dGVyCiAKKyAgICBleHRlcm5hbF9wYWNrYWdlX3BhdGhzID0gZmlsdGVyKF90ZXN0X2ltcG9ydCwg
ZXh0ZXJuYWxfcGFja2FnZV9wYXRocykKKwogICAgIFRlc3RlcigpLnJ1bl90ZXN0cyhzeXMuYXJn
diwgZXh0ZXJuYWxfcGFja2FnZV9wYXRocykKZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL1Njcmlw
dHMvd2Via2l0cHkvdGVzdC9tYWluLnB5IGIvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS90
ZXN0L21haW4ucHkKaW5kZXggOTM1MTc2OGVkZTE5ZWM5YWU2MjBhZjBjYmNmZjM3OGRkNjAxY2Iz
Mi4uMTAzOGQ4MmU3MDk5MTk4ZTM2M2NjODZmZWMzMGZjZTE3YWE3MDg1MCAxMDA2NDQKLS0tIGEv
V2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS90ZXN0L21haW4ucHkKKysrIGIvV2ViS2l0VG9v
bHMvU2NyaXB0cy93ZWJraXRweS90ZXN0L21haW4ucHkKQEAgLTUwLDEyICs1MCwxMiBAQCBjbGFz
cyBUZXN0ZXIob2JqZWN0KToKIAogICAgICAgICByZXR1cm4gdW5pdHRlc3RfcGF0aHMKIAotICAg
IGRlZiBfbW9kdWxlc19mcm9tX3BhdGhzKHNlbGYsIHdlYmtpdHB5X2RpciwgcGF0aHMpOgorICAg
IGRlZiBfbW9kdWxlc19mcm9tX3BhdGhzKHNlbGYsIHBhY2thZ2Vfcm9vdCwgcGF0aHMpOgogICAg
ICAgICAiIiJSZXR1cm4gYSBsaXN0IG9mIGZ1bGx5LXF1YWxpZmllZCBtb2R1bGUgbmFtZXMgZ2l2
ZW4gcGF0aHMuIiIiCi0gICAgICAgIHdlYmtpdHB5X2RpciA9IG9zLnBhdGguYWJzcGF0aCh3ZWJr
aXRweV9kaXIpCi0gICAgICAgIHdlYmtpdHB5X25hbWUgPSBvcy5wYXRoLnNwbGl0KHdlYmtpdHB5
X2RpcilbMV0gICMgRXF1YWxzICJ3ZWJraXRweSIuCisgICAgICAgIHBhY2thZ2VfcGF0aCA9IG9z
LnBhdGguYWJzcGF0aChwYWNrYWdlX3Jvb3QpCisgICAgICAgIHJvb3RfcGFja2FnZV9uYW1lID0g
b3MucGF0aC5zcGxpdChwYWNrYWdlX3BhdGgpWzFdICAjIEVxdWFscyAid2Via2l0cHkiLgogCi0g
ICAgICAgIHByZWZpeF9sZW5ndGggPSBsZW4od2Via2l0cHlfZGlyKQorICAgICAgICBwcmVmaXhf
bGVuZ3RoID0gbGVuKHBhY2thZ2VfcGF0aCkKIAogICAgICAgICBtb2R1bGVzID0gW10KICAgICAg
ICAgZm9yIHBhdGggaW4gcGF0aHM6CkBAIC03Miw3ICs3Miw4IEBAIGNsYXNzIFRlc3RlcihvYmpl
Y3QpOgogICAgICAgICAgICAgICAgICAgICBicmVhawogICAgICAgICAgICAgICAgIHBhcnRzLmlu
c2VydCgwLCB0YWlsKQogICAgICAgICAgICAgIyBXZSBub3cgaGF2ZSwgZm9yIGV4YW1wbGU6IGNv
bW1vbi5jb25maWcucG9ydHNfdW5pdHRlc3QKLSAgICAgICAgICAgIHBhcnRzLmluc2VydCgwLCB3
ZWJraXRweV9uYW1lKSAgIyBQdXQgIndlYmtpdHB5IiBhdCB0aGUgYmVnaW5uaW5nLgorICAgICAg
ICAgICAgIyBGSVhNRTogVGhpcyBpcyBhbGwgYSBoYWNrIGFyb3VuZCB0aGUgZmFjdCB0aGF0IHdl
IGFsd2F5cyBwcmVmaXggd2Via2l0cHkgaW5jbHVkZXMgd2l0aCAid2Via2l0cHkuIgorICAgICAg
ICAgICAgcGFydHMuaW5zZXJ0KDAsIHJvb3RfcGFja2FnZV9uYW1lKSAgIyBQdXQgIndlYmtpdHB5
IiBhdCB0aGUgYmVnaW5uaW5nLgogICAgICAgICAgICAgbW9kdWxlID0gIi4iLmpvaW4ocGFydHMp
CiAgICAgICAgICAgICBtb2R1bGVzLmFwcGVuZChtb2R1bGUpCiAKQEAgLTkxLDYgKzkyLDkgQEAg
Y2xhc3MgVGVzdGVyKG9iamVjdCk6CiAgICAgICAgIGlmIGV4dGVybmFsX3BhY2thZ2VfcGF0aHMg
aXMgTm9uZToKICAgICAgICAgICAgIGV4dGVybmFsX3BhY2thZ2VfcGF0aHMgPSBbXQogICAgICAg
ICBlbHNlOgorICAgICAgICAgICAgIyBGSVhNRTogV2Ugc2hvdWxkIGNvbnNpZGVyIG1vdmluZyB3
ZWJraXRweSBvZmYgb2YgdXNpbmcgIndlYmtpdHB5LiIgdG8gcHJlZml4CisgICAgICAgICAgICAj
IGFsbCBpbmNsdWRlcy4gIElmIHdlIGRpZCB0aGF0LCB0aGVuIHRoaXMgd291bGQgdXNlIHBhdGgg
aW5zdGVhZCBvZiBkaXJuYW1lKHBhdGgpLgorICAgICAgICAgICAgIyBRdWV1ZVN0YXR1c1NlcnZl
ci5fX2luaXRfXyBoYXMgYSBzeXMucGF0aCBpbXBvcnQgaGFjayBkdWUgdG8gdGhpcyBjb2RlLgog
ICAgICAgICAgICAgc3lzLnBhdGguZXh0ZW5kKHNldChvcy5wYXRoLmRpcm5hbWUocGF0aCkgZm9y
IHBhdGggaW4gZXh0ZXJuYWxfcGFja2FnZV9wYXRocykpCiAKICAgICAgICAgaWYgbGVuKHN5c19h
cmd2KSA+IDEgYW5kIG5vdCBzeXNfYXJndlstMV0uc3RhcnRzd2l0aCgiLSIpOgpAQCAtMTAxLDYg
KzEwNSw3IEBAIGNsYXNzIFRlc3RlcihvYmplY3QpOgogCiAgICAgICAgICMgT3RoZXJ3aXNlLCBh
dXRvLWRldGVjdCBhbGwgdW5pdCB0ZXN0cy4KIAorICAgICAgICAjIEZJWE1FOiBUaGlzIHNob3Vs
ZCBiZSBjb21iaW5lZCB3aXRoIHRoZSBleHRlcm5hbF9wYWNrYWdlX3BhdGhzIGNvZGUgYWJvdmUu
CiAgICAgICAgIHdlYmtpdHB5X2RpciA9IG9zLnBhdGguZGlybmFtZSh3ZWJraXRweS5fX2ZpbGVf
XykKIAogICAgICAgICBtb2R1bGVzID0gW10K
</data>

          </attachment>
      

    </bug>

</bugzilla>