<?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>68887</bug_id>
          
          <creation_ts>2011-09-27 04:02:24 -0700</creation_ts>
          <short_desc>method/enctype/formMethod/formEnctype properties should be limited to known values</short_desc>
          <delta_ts>2011-10-02 23:58:38 -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>Forms</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Kent Tamura">tkent</reporter>
          <assigned_to name="Kent Tamura">tkent</assigned_to>
          <cc>ap</cc>
    
    <cc>code.vineet</cc>
    
    <cc>dglazkov</cc>
    
    <cc>morrita</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>473837</commentid>
    <comment_count>0</comment_count>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2011-09-27 04:02:24 -0700</bug_when>
    <thetext>These IDL attributes are defined as &quot;limited to only known values&quot;.

http://www.whatwg.org/specs/web-apps/current-work/multipage/association-of-controls-and-forms.html#dom-fs-method
http://www.whatwg.org/specs/web-apps/current-work/multipage/association-of-controls-and-forms.html#dom-fs-formmethod


How to see the problem:
1. Visit http://samples.msdn.microsoft.com/ietestcenter/html5/forms_harness.htm?url=formenctype4
2. You&apos;ll see the following tests fail:
  - verify default value for formEnctype
  - verify default value for formMethod</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>474440</commentid>
    <comment_count>1</comment_count>
      <attachid>108950</attachid>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2011-09-27 19:30:38 -0700</bug_when>
    <thetext>Created attachment 108950
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>474441</commentid>
    <comment_count>2</comment_count>
      <attachid>108950</attachid>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2011-09-27 19:33:21 -0700</bug_when>
    <thetext>Comment on attachment 108950
Patch

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

&gt; Source/WebCore/loader/FormSubmission.h:63
&gt; -        void parseMethodType(const String&amp;);
&gt; +        static Method parseMethodType(const String&amp;);
&gt; +        void updateMethodType(const String&amp;);
&gt; +        static String methodString(Method method) { return method == GetMethod ? &quot;get&quot; : &quot;post&quot;; }

I&apos;m not satisfied with these function names. Any other ides?

&gt; Source/WebCore/loader/FormSubmission.h:73
&gt; -        void parseEncodingType(const String&amp;);
&gt; +        static String parseEncodingType(const String&amp;);
&gt; +        void updateEncodingType(const String&amp;);

ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>474566</commentid>
    <comment_count>3</comment_count>
    <who name="Vineet Chaudhary (vineetc)">code.vineet</who>
    <bug_when>2011-09-28 00:31:48 -0700</bug_when>
    <thetext>View in context: https://bugs.webkit.org/attachment.cgi?id=108950&amp;action=review

&gt;&gt; Source/WebCore/loader/FormSubmission.h:63
&gt;&gt; +        static String methodString(Method method) { return method == GetMethod ? &quot;get&quot; : &quot;post&quot;; }

I am not reviewer, but here are my observation:

though methodString gets its argument from parseMethodType() which will always return GetMethod for any invalid/null value but as this is static method having,
static String methodString(Method method) { return method == PostMethod ? &quot;post&quot; : &quot;get&quot;; }  would be much safer. 

Also just a suggestion can we have GET/POST instead of get/post.
//Sorry if I am wrong..</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>474596</commentid>
    <comment_count>4</comment_count>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2011-09-28 01:27:43 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; though methodString gets its argument from parseMethodType() which will always return GetMethod for any invalid/null value but as this is static method having,
&gt; static String methodString(Method method) { return method == PostMethod ? &quot;post&quot; : &quot;get&quot;; }  would be much safer. 

I would be better.  Thank you!

&gt; Also just a suggestion can we have GET/POST instead of get/post.
&gt; //Sorry if I am wrong..

No. The standard, Firefox 6, and IE8 normalize them to get/post, not GET/POST.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>474597</commentid>
    <comment_count>5</comment_count>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2011-09-28 01:29:15 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; I would be better.  Thank you!

I -&gt; It</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>476757</commentid>
    <comment_count>6</comment_count>
      <attachid>108950</attachid>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2011-10-02 21:28:48 -0700</bug_when>
    <thetext>Comment on attachment 108950
Patch

It looks introducing an enum similar to FormSubmission::Method can be good idea. Maybe it&apos;s overkill though.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>476790</commentid>
    <comment_count>7</comment_count>
      <attachid>109439</attachid>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2011-10-02 22:52:28 -0700</bug_when>
    <thetext>Created attachment 109439
Patch for landing

Update methodString() for Vineet&apos;s comment</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>476823</commentid>
    <comment_count>8</comment_count>
      <attachid>109439</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-10-02 23:58:32 -0700</bug_when>
    <thetext>Comment on attachment 109439
Patch for landing

Clearing flags on attachment: 109439

Committed r96484: &lt;http://trac.webkit.org/changeset/96484&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>476824</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-10-02 23:58:38 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>108950</attachid>
            <date>2011-09-27 19:30:38 -0700</date>
            <delta_ts>2011-10-02 22:52:21 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-68887-20110928113036.patch</filename>
            <type>text/plain</type>
            <size>36920</size>
            <attacher name="Kent Tamura">tkent</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTYwODIKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBlOWJlZTgwNDNlNjY2MDljZWMzOGU2
NzliMWQyMTFmY2E5NzllYmRjLi5hOWZhYWU3NjNjYTRhZGQ2ODgwYWM2ZDQ3YTAyYzU4NjQ1Zjdl
YTMwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTEtMDktMjcgIEtlbnQgVGFtdXJhICA8dGtl
bnRAY2hyb21pdW0ub3JnPgorCisgICAgICAgIG1ldGhvZC9lbmN0eXBlL2Zvcm1NZXRob2QvZm9y
bUVuY3R5cGUgcHJvcGVydGllcyBzaG91bGQgYmUgbGltaXRlZCB0byBrbm93biB2YWx1ZXMuCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02ODg4NworCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogZmFzdC9kb20v
ZWxlbWVudC1hdHRyaWJ1dGUtanMtbnVsbC1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9k
b20vZWxlbWVudC1hdHRyaWJ1dGUtanMtbnVsbC5odG1sOiBDb3JyZWN0IGFuIGV4cGVjdGF0aW9u
IGZvciBIVE1MRm9ybUVsZW1lbnQ6Om1ldGhvZC4KKyAgICAgICAgKiBmYXN0L2Zvcm1zL2VuY3R5
cGUtYXR0cmlidXRlLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9mb3Jtcy9l
bmN0eXBlLWF0dHJpYnV0ZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2Zvcm1zL21ldGhv
ZC1hdHRyaWJ1dGUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2Zvcm1zL21l
dGhvZC1hdHRyaWJ1dGUuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9mb3Jtcy9zY3JpcHQt
dGVzdHMvc3VibWl0LWZvcm0tYXR0cmlidXRlcy5qczogQ29ycmVjdCBleHBlY3RhdGlvbnMuCisg
ICAgICAgICogZmFzdC9mb3Jtcy9zdWJtaXQtZm9ybS1hdHRyaWJ1dGVzLWV4cGVjdGVkLnR4dDog
ZGl0dG8uCisKIDIwMTEtMDktMjcgIEFydW4gUGF0b2xlICA8Ym1mODM0QG1vdG9yb2xhLmNvbT4K
IAogICAgICAgICBBdWRpbyBlbGVtZW50IGRvZXNuJ3QgZW1pdCB0aGUgJ3BsYXlpbmcnIGV2ZW50
IGV2ZXJ5IHRpbWUgaXQgc3RhcnRzIHBsYXlpbmcsIGFmdGVyIGl0IGhhcyBmaW5pc2hlZCBwbGF5
aW5nLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vZWxlbWVudC1hdHRyaWJ1dGUt
anMtbnVsbC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9lbGVtZW50LWF0dHJp
YnV0ZS1qcy1udWxsLWV4cGVjdGVkLnR4dAppbmRleCBkZjU4NTQxOGQ0ODY1ZWQyOWQzOTNjMjQw
NjI2ZmUwZWQxMGQwNjRiLi42N2IzY2QzZjc5ZjdiNTQxNWU5YzM1ZTNjODY4ZDIzYzVkM2I2NGRl
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9lbGVtZW50LWF0dHJpYnV0ZS1qcy1u
dWxsLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9lbGVtZW50LWF0dHJp
YnV0ZS1qcy1udWxsLWV4cGVjdGVkLnR4dApAQCAtODEsNyArODEsNyBAQCBURVNUIFNVQ0NFRURF
RDogVGhlIHZhbHVlIHdhcyB0aGUgZW1wdHkgc3RyaW5nLiBbdGVzdGVkIEhUTUxGb3JtRWxlbWVu
dC5hY2NlcHRDaAogVEVTVCBTVUNDRUVERUQ6IFRoZSB2YWx1ZSB3YXMgdGhlIGVtcHR5IHN0cmlu
Zy4gW3Rlc3RlZCBIVE1MRm9ybUVsZW1lbnQuYWN0aW9uXQogVEVTVCBTVUNDRUVERUQ6IFRoZSB2
YWx1ZSB3YXMgdGhlIHN0cmluZyAnYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkJy4g
W3Rlc3RlZCBIVE1MRm9ybUVsZW1lbnQuZW5jb2RpbmddCiBURVNUIFNVQ0NFRURFRDogVGhlIHZh
bHVlIHdhcyB0aGUgc3RyaW5nICdhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQnLiBb
dGVzdGVkIEhUTUxGb3JtRWxlbWVudC5lbmN0eXBlXQotVEVTVCBTVUNDRUVERUQ6IFRoZSB2YWx1
ZSB3YXMgdGhlIGVtcHR5IHN0cmluZy4gW3Rlc3RlZCBIVE1MRm9ybUVsZW1lbnQubWV0aG9kXQor
VEVTVCBTVUNDRUVERUQ6IFRoZSB2YWx1ZSB3YXMgdGhlIHN0cmluZyAnZ2V0Jy4gW3Rlc3RlZCBI
VE1MRm9ybUVsZW1lbnQubWV0aG9kXQogVEVTVCBTVUNDRUVERUQ6IFRoZSB2YWx1ZSB3YXMgdGhl
IGVtcHR5IHN0cmluZy4gW3Rlc3RlZCBIVE1MRm9ybUVsZW1lbnQudGFyZ2V0XQogCiBURVNUIFNV
Q0NFRURFRDogVGhlIHZhbHVlIHdhcyB0aGUgZW1wdHkgc3RyaW5nLiBbdGVzdGVkIEhUTUxGcmFt
ZUVsZW1lbnQuZnJhbWVCb3JkZXJdCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9l
bGVtZW50LWF0dHJpYnV0ZS1qcy1udWxsLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9lbGVt
ZW50LWF0dHJpYnV0ZS1qcy1udWxsLmh0bWwKaW5kZXggODEzNTk3ZGQ1NzJjNDVkODMzYjdmZGE0
NDk5ZTE4MzcwMmI2ZjUzYi4uOTVkOTNjOTAzOGFjYmNhZTNmOGViNjU1NmE1ZGIzNWUyMzcxMTAz
YiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vZWxlbWVudC1hdHRyaWJ1dGUtanMt
bnVsbC5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL2VsZW1lbnQtYXR0cmlidXRlLWpz
LW51bGwuaHRtbApAQCAtMjMyLDcgKzIzMiw3IEBACiAgICAgICAgICAgICAgICAgICAgICAgICB7
bmFtZTogJ2FjdGlvbicsIGV4cGVjdGVkTnVsbDogJyd9LAogICAgICAgICAgICAgICAgICAgICAg
ICAge25hbWU6ICdlbmNvZGluZycsIGV4cGVjdGVkTnVsbDogJ2FwcGxpY2F0aW9uL3gtd3d3LWZv
cm0tdXJsZW5jb2RlZCd9LAogICAgICAgICAgICAgICAgICAgICAgICAge25hbWU6ICdlbmN0eXBl
JywgZXhwZWN0ZWROdWxsOiAnYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkJ30sCi0g
ICAgICAgICAgICAgICAgICAgICAgICB7bmFtZTogJ21ldGhvZCcsIGV4cGVjdGVkTnVsbDogJyd9
LAorICAgICAgICAgICAgICAgICAgICAgICAge25hbWU6ICdtZXRob2QnLCBleHBlY3RlZE51bGw6
ICdnZXQnfSwKICAgICAgICAgICAgICAgICAgICAgICAgIHtuYW1lOiAndGFyZ2V0JywgZXhwZWN0
ZWROdWxsOiAnJ30KICAgICAgICAgICAgICAgICAgICAgXQogICAgICAgICAgICAgICAgIH0sCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2VuY3R5cGUtYXR0cmlidXRlLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvZW5jdHlwZS1hdHRyaWJ1dGUtZXhwZWN0
ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjMxZGZlMzlkNTk3NDU0ZTczODhjN2Y5ZGZjNjZlZDFkOGJlZmYy
YTgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2VuY3R5cGUtYXR0
cmlidXRlLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDI1IEBACitUZXN0IGVuY3R5cGUgYW5kIGZv
cm1lbmN0eXBlIGF0dHJpYnV0ZXMKKworTWlzc2luZyB2YWx1ZSBkZWZhdWx0OgorUEFTUyBmb3Jt
MS5lbmN0eXBlIGlzICJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQiCitQQVNTIGZv
cm0xLmdldEF0dHJpYnV0ZSgiZW5jdHlwZSIpIGlzIG51bGwKKworSW52YWxpZCB2YWx1ZSBkZWZh
dWx0OgorUEFTUyBmb3JtMS5lbmN0eXBlID0gImZvb2JhciI7IGZvcm0xLmVuY3R5cGUgaXMgImFw
cGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCIKK1BBU1MgZm9ybTEuZ2V0QXR0cmlidXRl
KCJlbmN0eXBlIikgaXMgImZvb2JhciIKK1BBU1MgZm9ybTEuc2V0QXR0cmlidXRlKCJlbmN0eXBl
IiwgImJheiIpOyBmb3JtMS5lbmN0eXBlIGlzICJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVu
Y29kZWQiCisKK1ZhbGlkIHZhbHVlczoKK1BBU1MgZm9ybTEuZW5jdHlwZSA9ICJUZXh0L1BsYWlu
IjsgZm9ybTEuZW5jdHlwZSBpcyAidGV4dC9wbGFpbiIKK1BBU1MgZm9ybTEuZ2V0QXR0cmlidXRl
KCJlbmN0eXBlIikgaXMgIlRleHQvUGxhaW4iCitQQVNTIGZvcm0xLnNldEF0dHJpYnV0ZSgiZW5j
dHlwZSIsICJUZXh0L1BsYWluIik7IGZvcm0xLmVuY3R5cGUgaXMgInRleHQvcGxhaW4iCisKK1Zh
bGlkIHZhbHVlcyB3aXRoIHdoaXRlc3BhY2U6CitQQVNTIGZvcm0xLmVuY3R5cGUgPSAiICBtdWx0
aXBhcnQvZm9ybS1kYXRhIjsgZm9ybTEuZW5jdHlwZSBpcyAibXVsdGlwYXJ0L2Zvcm0tZGF0YSIK
K1BBU1MgZm9ybTEuZ2V0QXR0cmlidXRlKCJlbmN0eXBlIikgaXMgIiAgbXVsdGlwYXJ0L2Zvcm0t
ZGF0YSIKK1BBU1MgZm9ybTEuZW5jdHlwZSA9ICJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVu
Y29kZWQgIjsgZm9ybTEuZW5jdHlwZSBpcyAiYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNv
ZGVkIgorCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUK
KwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9lbmN0eXBlLWF0dHJpYnV0ZS5o
dG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9lbmN0eXBlLWF0dHJpYnV0ZS5odG1sCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjBmYjVmYjMxOTc1ZDFhNjczYjZkZTgwOTgzNzhlZGRmOTdlYTIwNjkKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2VuY3R5cGUtYXR0cmlidXRlLmh0bWwK
QEAgLTAsMCArMSw0NSBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxsaW5rIHJlbD1zdHls
ZXNoZWV0IGhyZWY9Ii4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8Ym9keT4K
KzxzY3JpcHQgc3JjPSIuLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0Pgor
Cis8cD5UZXN0IGVuY3R5cGUgYW5kIGZvcm1lbmN0eXBlIGF0dHJpYnV0ZXM8L3A+CisKKzxmb3Jt
IGlkPWYxPjwvZm9ybT4KKworPGRpdiBpZD1jb25zb2xlPjwvZGl2PgorPHNjcmlwdD4KK3ZhciBm
b3JtMSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdmMScpOworCitkZWJ1ZygnTWlzc2luZyB2
YWx1ZSBkZWZhdWx0OicpOworc2hvdWxkQmUoJ2Zvcm0xLmVuY3R5cGUnLCAnImFwcGxpY2F0aW9u
L3gtd3d3LWZvcm0tdXJsZW5jb2RlZCInKTsKK3Nob3VsZEJlTnVsbCgnZm9ybTEuZ2V0QXR0cmli
dXRlKCJlbmN0eXBlIiknKTsKKworZGVidWcoJycpOworZGVidWcoJ0ludmFsaWQgdmFsdWUgZGVm
YXVsdDonKTsKK3Nob3VsZEJlKCdmb3JtMS5lbmN0eXBlID0gImZvb2JhciI7IGZvcm0xLmVuY3R5
cGUnLCAnImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCInKTsKK3Nob3VsZEJlKCdm
b3JtMS5nZXRBdHRyaWJ1dGUoImVuY3R5cGUiKScsICciZm9vYmFyIicpOworc2hvdWxkQmUoJ2Zv
cm0xLnNldEF0dHJpYnV0ZSgiZW5jdHlwZSIsICJiYXoiKTsgZm9ybTEuZW5jdHlwZScsICciYXBw
bGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkIicpOworCitkZWJ1ZygnJyk7CitkZWJ1Zygn
VmFsaWQgdmFsdWVzOicpOworc2hvdWxkQmUoJ2Zvcm0xLmVuY3R5cGUgPSAiVGV4dC9QbGFpbiI7
IGZvcm0xLmVuY3R5cGUnLCAnInRleHQvcGxhaW4iJyk7CitzaG91bGRCZSgnZm9ybTEuZ2V0QXR0
cmlidXRlKCJlbmN0eXBlIiknLCAnIlRleHQvUGxhaW4iJyk7CitzaG91bGRCZSgnZm9ybTEuc2V0
QXR0cmlidXRlKCJlbmN0eXBlIiwgIlRleHQvUGxhaW4iKTsgZm9ybTEuZW5jdHlwZScsICcidGV4
dC9wbGFpbiInKTsKKworZGVidWcoJycpOworZGVidWcoJ1ZhbGlkIHZhbHVlcyB3aXRoIHdoaXRl
c3BhY2U6Jyk7CisvLyBOb3RlOiBJRTkgdGhvcndzICJJbnZhbGlkIGFyZ3VtZW50LiIsIEZpcmVm
b3ggNiBkb2Vzbid0IGFsbG93IGxlYWRpbmcgd2hpdGVzcGFjZS4KKy8vIEZpcmVmb3ggbWF0Y2hl
cyB0byB0aGUgc3BlY2lmaWNhdGlvbi4KK3Nob3VsZEJlKCdmb3JtMS5lbmN0eXBlID0gIiAgbXVs
dGlwYXJ0L2Zvcm0tZGF0YSI7IGZvcm0xLmVuY3R5cGUnLCAnIm11bHRpcGFydC9mb3JtLWRhdGEi
Jyk7CitzaG91bGRCZSgnZm9ybTEuZ2V0QXR0cmlidXRlKCJlbmN0eXBlIiknLCAnIiAgbXVsdGlw
YXJ0L2Zvcm0tZGF0YSInKTsKKworc2hvdWxkQmUoJ2Zvcm0xLmVuY3R5cGUgPSAiYXBwbGljYXRp
b24veC13d3ctZm9ybS11cmxlbmNvZGVkICI7IGZvcm0xLmVuY3R5cGUnLCAnImFwcGxpY2F0aW9u
L3gtd3d3LWZvcm0tdXJsZW5jb2RlZCInKTsKKworZGVidWcoJycpOwordmFyIHN1Y2Nlc3NmdWxs
eVBhcnNlZCA9IHRydWU7Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi9qcy9yZXNvdXJjZXMv
anMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvbWV0aG9kLWF0dHJpYnV0ZS1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9mYXN0L2Zvcm1zL21ldGhvZC1hdHRyaWJ1dGUtZXhwZWN0ZWQudHh0Cm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLmE4ZjhkZGEzZGQyNjkxYzAxM2FlZDYxNWRhNWExNDE3MmU2YmIzMTUKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL21ldGhvZC1hdHRyaWJ1dGUtZXhwZWN0
ZWQudHh0CkBAIC0wLDAgKzEsMjEgQEAKK1Rlc3QgbWV0aG9kIGFuZCBmb3JtbWV0aG9kIGF0dHJp
YnV0ZXMKKworTWlzc2luZyB2YWx1ZSBkZWZhdWx0OgorUEFTUyBmb3JtMS5tZXRob2QgaXMgImdl
dCIKK1BBU1MgZm9ybTEuZ2V0QXR0cmlidXRlKCJtZXRob2QiKSBpcyBudWxsCisKK0ludmFsaWQg
dmFsdWUgZGVmYXVsdDoKK1BBU1MgZm9ybTEubWV0aG9kID0gIiBwb3N0ICI7IGZvcm0xLm1ldGhv
ZCBpcyAiZ2V0IgorUEFTUyBmb3JtMS5nZXRBdHRyaWJ1dGUoIm1ldGhvZCIpIGlzICIgcG9zdCAi
CitQQVNTIGZvcm0xLnNldEF0dHJpYnV0ZSgibWV0aG9kIiwgInB1dCIpOyBmb3JtMS5tZXRob2Qg
aXMgImdldCIKKworVmFsaWQgdmFsdWVzOgorUEFTUyBmb3JtMS5tZXRob2QgPSAiUG9zdCI7IGZv
cm0xLm1ldGhvZCBpcyAicG9zdCIKK1BBU1MgZm9ybTEuZ2V0QXR0cmlidXRlKCJtZXRob2QiKSBp
cyAiUG9zdCIKK1BBU1MgZm9ybTEubWV0aG9kID0gIkdldCI7IGZvcm0xLm1ldGhvZCBpcyAiZ2V0
IgorUEFTUyBmb3JtMS5nZXRBdHRyaWJ1dGUoIm1ldGhvZCIpIGlzICJHZXQiCisKK1BBU1Mgc3Vj
Y2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9mYXN0L2Zvcm1zL21ldGhvZC1hdHRyaWJ1dGUuaHRtbCBiL0xheW91dFRlc3Rz
L2Zhc3QvZm9ybXMvbWV0aG9kLWF0dHJpYnV0ZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjkyOWQwOTNkMGU2
MDY5Y2NjN2RmNzM0ODE0NmM3ZjA2ZDk2ZTFmZGIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9mYXN0L2Zvcm1zL21ldGhvZC1hdHRyaWJ1dGUuaHRtbApAQCAtMCwwICsxLDM4IEBACis8
IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGxpbmsgcmVsPXN0eWxlc2hlZXQgaHJlZj0iLi4vanMv
cmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxib2R5PgorPHNjcmlwdCBzcmM9Ii4uL2pz
L3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+CisKKzxwPlRlc3QgbWV0aG9kIGFu
ZCBmb3JtbWV0aG9kIGF0dHJpYnV0ZXM8L3A+CisKKzxmb3JtIGlkPWYxPjwvZm9ybT4KKworPGRp
diBpZD1jb25zb2xlPjwvZGl2PgorPHNjcmlwdD4KK3ZhciBmb3JtMSA9IGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCdmMScpOworCitkZWJ1ZygnTWlzc2luZyB2YWx1ZSBkZWZhdWx0OicpOworc2hv
dWxkQmUoJ2Zvcm0xLm1ldGhvZCcsICciZ2V0IicpOworc2hvdWxkQmVOdWxsKCdmb3JtMS5nZXRB
dHRyaWJ1dGUoIm1ldGhvZCIpJyk7CisKK2RlYnVnKCcnKTsKK2RlYnVnKCdJbnZhbGlkIHZhbHVl
IGRlZmF1bHQ6Jyk7CitzaG91bGRCZSgnZm9ybTEubWV0aG9kID0gIiBwb3N0ICI7IGZvcm0xLm1l
dGhvZCcsICciZ2V0IicpOworc2hvdWxkQmUoJ2Zvcm0xLmdldEF0dHJpYnV0ZSgibWV0aG9kIikn
LCAnIiBwb3N0ICInKTsKK3Nob3VsZEJlKCdmb3JtMS5zZXRBdHRyaWJ1dGUoIm1ldGhvZCIsICJw
dXQiKTsgZm9ybTEubWV0aG9kJywgJyJnZXQiJyk7CisKK2RlYnVnKCcnKTsKK2RlYnVnKCdWYWxp
ZCB2YWx1ZXM6Jyk7CitzaG91bGRCZSgnZm9ybTEubWV0aG9kID0gIlBvc3QiOyBmb3JtMS5tZXRo
b2QnLCAnInBvc3QiJyk7CitzaG91bGRCZSgnZm9ybTEuZ2V0QXR0cmlidXRlKCJtZXRob2QiKScs
ICciUG9zdCInKTsKKworc2hvdWxkQmUoJ2Zvcm0xLm1ldGhvZCA9ICJHZXQiOyBmb3JtMS5tZXRo
b2QnLCAnImdldCInKTsKK3Nob3VsZEJlKCdmb3JtMS5nZXRBdHRyaWJ1dGUoIm1ldGhvZCIpJywg
JyJHZXQiJyk7CisKK2RlYnVnKCcnKTsKK3ZhciBzdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwor
PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+
PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0
L2Zvcm1zL3NjcmlwdC10ZXN0cy9zdWJtaXQtZm9ybS1hdHRyaWJ1dGVzLmpzIGIvTGF5b3V0VGVz
dHMvZmFzdC9mb3Jtcy9zY3JpcHQtdGVzdHMvc3VibWl0LWZvcm0tYXR0cmlidXRlcy5qcwppbmRl
eCA5OTJjMDg2Njk3OWQyM2FlMTM4MWQ1MGM0NDI0M2I2MTcxNWU2ZDU0Li45ZjM0ZjYzNGQxMzcy
N2RhYzhjMGY4NmQ4YTFmOGI2ZTNiYWU2ZDU1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0
L2Zvcm1zL3NjcmlwdC10ZXN0cy9zdWJtaXQtZm9ybS1hdHRyaWJ1dGVzLmpzCisrKyBiL0xheW91
dFRlc3RzL2Zhc3QvZm9ybXMvc2NyaXB0LXRlc3RzL3N1Ym1pdC1mb3JtLWF0dHJpYnV0ZXMuanMK
QEAgLTUsOCArNSw4IEBAIHZhciBpbnB1dCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2lucHV0
Jyk7CiBkZWJ1ZygnT3JkaW5hcnkgdmFsdWVzIGZvciBpbnB1dDonKTsKIGlucHV0LnR5cGUgPSAi
c3VibWl0IjsKIHNob3VsZEJlKCdpbnB1dC5mb3JtQWN0aW9uJywgJyIiJyk7Ci1zaG91bGRCZSgn
aW5wdXQuZm9ybUVuY3R5cGUnLCAnIiInKTsKLXNob3VsZEJlKCdpbnB1dC5mb3JtTWV0aG9kJywg
JyIiJyk7CitzaG91bGRCZSgnaW5wdXQuZm9ybUVuY3R5cGUnLCAnImFwcGxpY2F0aW9uL3gtd3d3
LWZvcm0tdXJsZW5jb2RlZCInKTsKK3Nob3VsZEJlKCdpbnB1dC5mb3JtTWV0aG9kJywgJyJnZXQi
Jyk7CiBzaG91bGRCZSgnaW5wdXQuZm9ybVRhcmdldCcsICciIicpOwogCiBpbnB1dC5zZXRBdHRy
aWJ1dGUoJ2Zvcm1BY3Rpb24nLCAnaHR0cDovL2xvY2FsaG9zdCcpOwpAQCAtMTYsMTEgKzE2LDEx
IEBAIHNob3VsZEJlKCdpbnB1dC5mb3JtQWN0aW9uJywgJyJodHRwOi8vbG9jYWxob3N0LyInKTsK
IGlucHV0LnNldEF0dHJpYnV0ZSgnZm9ybUVuY3R5cGUnLCAndGV4dC9wbGFpbicpOwogc2hvdWxk
QmUoJ2lucHV0LmZvcm1FbmN0eXBlJywgJyJ0ZXh0L3BsYWluIicpOwogaW5wdXQuc2V0QXR0cmli
dXRlKCdmb3JtRW5jdHlwZScsICduYScpOwotc2hvdWxkQmUoJ2lucHV0LmZvcm1FbmN0eXBlJywg
JyJuYSInKTsKK3Nob3VsZEJlKCdpbnB1dC5mb3JtRW5jdHlwZScsICciYXBwbGljYXRpb24veC13
d3ctZm9ybS11cmxlbmNvZGVkIicpOwogaW5wdXQuc2V0QXR0cmlidXRlKCdmb3JtTWV0aG9kJywg
J0dFVCcpOwotc2hvdWxkQmUoJ2lucHV0LmZvcm1NZXRob2QnLCAnIkdFVCInKTsKK3Nob3VsZEJl
KCdpbnB1dC5mb3JtTWV0aG9kJywgJyJnZXQiJyk7CiBpbnB1dC5zZXRBdHRyaWJ1dGUoJ2Zvcm1N
ZXRob2QnLCAnbmknKTsKLXNob3VsZEJlKCdpbnB1dC5mb3JtTWV0aG9kJywgJyJuaSInKTsKK3No
b3VsZEJlKCdpbnB1dC5mb3JtTWV0aG9kJywgJyJnZXQiJyk7CiBpbnB1dC5zZXRBdHRyaWJ1dGUo
J2Zvcm1UYXJnZXQnLCAnX2JsYW5rJyk7CiBzaG91bGRCZSgnaW5wdXQuZm9ybVRhcmdldCcsICci
X2JsYW5rIicpOwogaW5wdXQuc2V0QXR0cmlidXRlKCdmb3JtVGFyZ2V0JywgJ251Jyk7CkBAIC0z
Myw2MSArMzMsNjQgQEAgc2hvdWxkQmUoJ2lucHV0LmZvcm1BY3Rpb24nLCAnImh0dHA6Ly9leGFt
cGxlLmNvbS8iJyk7CiBpbnB1dC5mb3JtRW5jdHlwZSA9ICd0ZXh0L3BsYWluJzsKIHNob3VsZEJl
KCdpbnB1dC5mb3JtRW5jdHlwZScsICcidGV4dC9wbGFpbiInKTsKIGlucHV0LmZvcm1FbmN0eXBl
ID0gJ25vdGEnOwotc2hvdWxkQmUoJ2lucHV0LmZvcm1FbmN0eXBlJywgJyJub3RhIicpOworc2hv
dWxkQmUoJ2lucHV0LmZvcm1FbmN0eXBlJywgJyJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVu
Y29kZWQiJyk7CiBpbnB1dC5mb3JtTWV0aG9kID0gJ1BPU1QnOwotc2hvdWxkQmUoJ2lucHV0LmZv
cm1NZXRob2QnLCAnIlBPU1QiJyk7CitzaG91bGRCZSgnaW5wdXQuZm9ybU1ldGhvZCcsICcicG9z
dCInKTsKIGlucHV0LmZvcm1NZXRob2QgPSAnbmV0YSc7Ci1zaG91bGRCZSgnaW5wdXQuZm9ybU1l
dGhvZCcsICcibmV0YSInKTsKK3Nob3VsZEJlKCdpbnB1dC5mb3JtTWV0aG9kJywgJyJnZXQiJyk7
CiBpbnB1dC5mb3JtVGFyZ2V0ID0gJ2h0dHA6Ly9leGFtcGxlLmNvbSc7CiBzaG91bGRCZSgnaW5w
dXQuZm9ybVRhcmdldCcsICciaHR0cDovL2V4YW1wbGUuY29tIicpOwogaW5wdXQuZm9ybVRhcmdl
dCA9ICdudGEnOwogc2hvdWxkQmUoJ2lucHV0LmZvcm1UYXJnZXQnLCAnIm50YSInKTsKIAorZGVi
dWcoJycpOwogZGVidWcoJ1NldHRpbmcgbnVsbCBmb3IgaW5wdXQ6Jyk7CiBpbnB1dC5mb3JtRW5j
dHlwZSA9IG51bGw7Ci1zaG91bGRCZSgnaW5wdXQuZm9ybUVuY3R5cGUnLCAnIiInKTsKK3Nob3Vs
ZEJlKCdpbnB1dC5mb3JtRW5jdHlwZScsICciYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNv
ZGVkIicpOwogc2hvdWxkQmUoJ2lucHV0LmdldEF0dHJpYnV0ZSgiZm9ybUVuY3R5cGUiKScsICdu
dWxsJyk7CiBpbnB1dC5zZXRBdHRyaWJ1dGUoJ2Zvcm1FbmN0eXBlJywgbnVsbCk7Ci1zaG91bGRC
ZSgnaW5wdXQuZm9ybUVuY3R5cGUnLCAnIm51bGwiJyk7CitzaG91bGRCZSgnaW5wdXQuZm9ybUVu
Y3R5cGUnLCAnImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCInKTsKIGlucHV0LmZv
cm1NZXRob2QgPSBudWxsOwotc2hvdWxkQmUoJ2lucHV0LmZvcm1NZXRob2QnLCAnIiInKTsKK3No
b3VsZEJlKCdpbnB1dC5mb3JtTWV0aG9kJywgJyJnZXQiJyk7CiBzaG91bGRCZSgnaW5wdXQuZ2V0
QXR0cmlidXRlKCJmb3JtTWV0aG9kIiknLCAnbnVsbCcpOwogaW5wdXQuc2V0QXR0cmlidXRlKCdm
b3JtTWV0aG9kJywgbnVsbCk7Ci1zaG91bGRCZSgnaW5wdXQuZm9ybU1ldGhvZCcsICcibnVsbCIn
KTsKK3Nob3VsZEJlKCdpbnB1dC5mb3JtTWV0aG9kJywgJyJnZXQiJyk7CiBpbnB1dC5mb3JtVGFy
Z2V0ID0gbnVsbDsKIHNob3VsZEJlKCdpbnB1dC5mb3JtVGFyZ2V0JywgJyIiJyk7CiBzaG91bGRC
ZSgnaW5wdXQuZ2V0QXR0cmlidXRlKCJmb3JtVGFyZ2V0IiknLCAnbnVsbCcpOwogaW5wdXQuc2V0
QXR0cmlidXRlKCdmb3JtVGFyZ2V0JywgbnVsbCk7CiBzaG91bGRCZSgnaW5wdXQuZm9ybVRhcmdl
dCcsICcibnVsbCInKTsKIAorZGVidWcoJycpOwogZGVidWcoJ1NldHRpbmcgdW5kZWZpbmVkIGZv
ciBpbnB1dDonKTsKIGlucHV0LmZvcm1FbmN0eXBlID0gdW5kZWZpbmVkOwotc2hvdWxkQmUoJ2lu
cHV0LmZvcm1FbmN0eXBlJywgJyJ1bmRlZmluZWQiJyk7CitzaG91bGRCZSgnaW5wdXQuZm9ybUVu
Y3R5cGUnLCAnImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCInKTsKIHNob3VsZEJl
KCdpbnB1dC5nZXRBdHRyaWJ1dGUoImZvcm1FbmN0eXBlIiknLCAnInVuZGVmaW5lZCInKTsKIGlu
cHV0LnNldEF0dHJpYnV0ZSgnZm9ybUVuY3R5cGUnLCB1bmRlZmluZWQpOwotc2hvdWxkQmUoJ2lu
cHV0LmZvcm1FbmN0eXBlJywgJyJ1bmRlZmluZWQiJyk7CitzaG91bGRCZSgnaW5wdXQuZm9ybUVu
Y3R5cGUnLCAnImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCInKTsKIGlucHV0LmZv
cm1NZXRob2QgPSB1bmRlZmluZWQ7Ci1zaG91bGRCZSgnaW5wdXQuZm9ybU1ldGhvZCcsICcidW5k
ZWZpbmVkIicpOworc2hvdWxkQmUoJ2lucHV0LmZvcm1NZXRob2QnLCAnImdldCInKTsKIHNob3Vs
ZEJlKCdpbnB1dC5nZXRBdHRyaWJ1dGUoImZvcm1NZXRob2QiKScsICcidW5kZWZpbmVkIicpOwog
aW5wdXQuc2V0QXR0cmlidXRlKCdmb3JtTWV0aG9kJywgdW5kZWZpbmVkKTsKLXNob3VsZEJlKCdp
bnB1dC5mb3JtTWV0aG9kJywgJyJ1bmRlZmluZWQiJyk7CitzaG91bGRCZSgnaW5wdXQuZm9ybU1l
dGhvZCcsICciZ2V0IicpOwogaW5wdXQuZm9ybVRhcmdldCA9IHVuZGVmaW5lZDsKIHNob3VsZEJl
KCdpbnB1dC5mb3JtVGFyZ2V0JywgJyJ1bmRlZmluZWQiJyk7CiBzaG91bGRCZSgnaW5wdXQuZ2V0
QXR0cmlidXRlKCJmb3JtVGFyZ2V0IiknLCAnInVuZGVmaW5lZCInKTsKIGlucHV0LnNldEF0dHJp
YnV0ZSgnZm9ybVRhcmdldCcsIHVuZGVmaW5lZCk7CiBzaG91bGRCZSgnaW5wdXQuZm9ybVRhcmdl
dCcsICcidW5kZWZpbmVkIicpOwogCitkZWJ1ZygnJyk7CiBkZWJ1ZygnU2V0dGluZyBub24tc3Ry
aW5nIGZvciBpbnB1dDonKTsKIGlucHV0LmZvcm1FbmN0eXBlID0gMjU2Owotc2hvdWxkQmUoJ2lu
cHV0LmZvcm1FbmN0eXBlJywgJyIyNTYiJyk7CitzaG91bGRCZSgnaW5wdXQuZm9ybUVuY3R5cGUn
LCAnImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCInKTsKIHNob3VsZEJlKCdpbnB1
dC5nZXRBdHRyaWJ1dGUoImZvcm1FbmN0eXBlIiknLCAnIjI1NiInKTsKIGlucHV0LnNldEF0dHJp
YnV0ZSgnZm9ybUVuY3R5cGUnLCAyNTYpOwotc2hvdWxkQmUoJ2lucHV0LmZvcm1FbmN0eXBlJywg
JyIyNTYiJyk7CitzaG91bGRCZSgnaW5wdXQuZm9ybUVuY3R5cGUnLCAnImFwcGxpY2F0aW9uL3gt
d3d3LWZvcm0tdXJsZW5jb2RlZCInKTsKIGlucHV0LmZvcm1NZXRob2QgPSAyNTY7Ci1zaG91bGRC
ZSgnaW5wdXQuZm9ybU1ldGhvZCcsICciMjU2IicpOworc2hvdWxkQmUoJ2lucHV0LmZvcm1NZXRo
b2QnLCAnImdldCInKTsKIHNob3VsZEJlKCdpbnB1dC5nZXRBdHRyaWJ1dGUoImZvcm1NZXRob2Qi
KScsICciMjU2IicpOwogaW5wdXQuc2V0QXR0cmlidXRlKCdmb3JtTWV0aG9kJywgMjU2KTsKLXNo
b3VsZEJlKCdpbnB1dC5mb3JtTWV0aG9kJywgJyIyNTYiJyk7CitzaG91bGRCZSgnaW5wdXQuZm9y
bU1ldGhvZCcsICciZ2V0IicpOwogaW5wdXQuZm9ybVRhcmdldCA9IDI1NjsKIHNob3VsZEJlKCdp
bnB1dC5mb3JtVGFyZ2V0JywgJyIyNTYiJyk7CiBzaG91bGRCZSgnaW5wdXQuZ2V0QXR0cmlidXRl
KCJmb3JtVGFyZ2V0IiknLCAnIjI1NiInKTsKQEAgLTk1LDEyICs5OCwxMiBAQCBpbnB1dC5zZXRB
dHRyaWJ1dGUoJ2Zvcm1UYXJnZXQnLCAyNTYpOwogc2hvdWxkQmUoJ2lucHV0LmZvcm1UYXJnZXQn
LCAnIjI1NiInKTsKIAogdmFyIGJ1dHRvbiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2J1dHRv
bicpOwotCitkZWJ1ZygnJyk7CiBkZWJ1ZygnT3JkaW5hcnkgdmFsdWVzIGZvciBidXR0b246Jyk7
CiBidXR0b24udHlwZSA9ICJzdWJtaXQiOwogc2hvdWxkQmUoJ2J1dHRvbi5mb3JtQWN0aW9uJywg
JyIiJyk7Ci1zaG91bGRCZSgnYnV0dG9uLmZvcm1FbmN0eXBlJywgJyIiJyk7Ci1zaG91bGRCZSgn
YnV0dG9uLmZvcm1NZXRob2QnLCAnIiInKTsKK3Nob3VsZEJlKCdidXR0b24uZm9ybUVuY3R5cGUn
LCAnImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCInKTsKK3Nob3VsZEJlKCdidXR0
b24uZm9ybU1ldGhvZCcsICciZ2V0IicpOwogc2hvdWxkQmUoJ2J1dHRvbi5mb3JtVGFyZ2V0Jywg
JyIiJyk7CiAKIGJ1dHRvbi5zZXRBdHRyaWJ1dGUoJ2Zvcm1BY3Rpb24nLCAnaHR0cDovL2xvY2Fs
aG9zdCcpOwpAQCAtMTEwLDExICsxMTMsMTEgQEAgc2hvdWxkQmUoJ2J1dHRvbi5mb3JtQWN0aW9u
JywgJyJodHRwOi8vbG9jYWxob3N0LyInKTsKIGJ1dHRvbi5zZXRBdHRyaWJ1dGUoJ2Zvcm1FbmN0
eXBlJywgJ3RleHQvcGxhaW4nKTsKIHNob3VsZEJlKCdidXR0b24uZm9ybUVuY3R5cGUnLCAnInRl
eHQvcGxhaW4iJyk7CiBidXR0b24uc2V0QXR0cmlidXRlKCdmb3JtRW5jdHlwZScsICduYScpOwot
c2hvdWxkQmUoJ2J1dHRvbi5mb3JtRW5jdHlwZScsICcibmEiJyk7CitzaG91bGRCZSgnYnV0dG9u
LmZvcm1FbmN0eXBlJywgJyJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQiJyk7CiBi
dXR0b24uc2V0QXR0cmlidXRlKCdmb3JtTWV0aG9kJywgJ0dFVCcpOwotc2hvdWxkQmUoJ2J1dHRv
bi5mb3JtTWV0aG9kJywgJyJHRVQiJyk7CitzaG91bGRCZSgnYnV0dG9uLmZvcm1NZXRob2QnLCAn
ImdldCInKTsKIGJ1dHRvbi5zZXRBdHRyaWJ1dGUoJ2Zvcm1NZXRob2QnLCAnbmEnKTsKLXNob3Vs
ZEJlKCdidXR0b24uZm9ybU1ldGhvZCcsICcibmEiJyk7CitzaG91bGRCZSgnYnV0dG9uLmZvcm1N
ZXRob2QnLCAnImdldCInKTsKIGJ1dHRvbi5zZXRBdHRyaWJ1dGUoJ2Zvcm1UYXJnZXQnLCAnX2Js
YW5rJyk7CiBzaG91bGRCZSgnYnV0dG9uLmZvcm1UYXJnZXQnLCAnIl9ibGFuayInKTsKIGJ1dHRv
bi5zZXRBdHRyaWJ1dGUoJ2Zvcm1UYXJnZXQnLCAnbmEnKTsKQEAgLTEyNyw2MSArMTMwLDY0IEBA
IHNob3VsZEJlKCdidXR0b24uZm9ybUFjdGlvbicsICciaHR0cDovL2V4YW1wbGUuY29tLyInKTsK
IGJ1dHRvbi5mb3JtRW5jdHlwZSA9ICd0ZXh0L3BsYWluJzsKIHNob3VsZEJlKCdidXR0b24uZm9y
bUVuY3R5cGUnLCAnInRleHQvcGxhaW4iJyk7CiBidXR0b24uZm9ybUVuY3R5cGUgPSAnbm90YSc7
Ci1zaG91bGRCZSgnYnV0dG9uLmZvcm1FbmN0eXBlJywgJyJub3RhIicpOworc2hvdWxkQmUoJ2J1
dHRvbi5mb3JtRW5jdHlwZScsICciYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkIicp
OwogYnV0dG9uLmZvcm1NZXRob2QgPSAnUE9TVCc7Ci1zaG91bGRCZSgnYnV0dG9uLmZvcm1NZXRo
b2QnLCAnIlBPU1QiJyk7CitzaG91bGRCZSgnYnV0dG9uLmZvcm1NZXRob2QnLCAnInBvc3QiJyk7
CiBidXR0b24uZm9ybU1ldGhvZCA9ICdub3RhJzsKLXNob3VsZEJlKCdidXR0b24uZm9ybU1ldGhv
ZCcsICcibm90YSInKTsKK3Nob3VsZEJlKCdidXR0b24uZm9ybU1ldGhvZCcsICciZ2V0IicpOwog
YnV0dG9uLmZvcm1UYXJnZXQgPSAnaHR0cDovL2V4YW1wbGUuY29tJzsKIHNob3VsZEJlKCdidXR0
b24uZm9ybVRhcmdldCcsICciaHR0cDovL2V4YW1wbGUuY29tIicpOwogYnV0dG9uLmZvcm1UYXJn
ZXQgPSAnbm90YSc7CiBzaG91bGRCZSgnYnV0dG9uLmZvcm1UYXJnZXQnLCAnIm5vdGEiJyk7CiAK
K2RlYnVnKCcnKTsKIGRlYnVnKCdTZXR0aW5nIG51bGwgZm9yIGJ1dHRvbjonKTsKIGJ1dHRvbi5m
b3JtRW5jdHlwZSA9IG51bGw7Ci1zaG91bGRCZSgnYnV0dG9uLmZvcm1FbmN0eXBlJywgJyIiJyk7
CitzaG91bGRCZSgnYnV0dG9uLmZvcm1FbmN0eXBlJywgJyJhcHBsaWNhdGlvbi94LXd3dy1mb3Jt
LXVybGVuY29kZWQiJyk7CiBzaG91bGRCZSgnYnV0dG9uLmdldEF0dHJpYnV0ZSgiZm9ybUVuY3R5
cGUiKScsICdudWxsJyk7CiBidXR0b24uc2V0QXR0cmlidXRlKCdmb3JtRW5jdHlwZScsIG51bGwp
Owotc2hvdWxkQmUoJ2J1dHRvbi5mb3JtRW5jdHlwZScsICcibnVsbCInKTsKK3Nob3VsZEJlKCdi
dXR0b24uZm9ybUVuY3R5cGUnLCAnImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCIn
KTsKIGJ1dHRvbi5mb3JtTWV0aG9kID0gbnVsbDsKLXNob3VsZEJlKCdidXR0b24uZm9ybU1ldGhv
ZCcsICciIicpOworc2hvdWxkQmUoJ2J1dHRvbi5mb3JtTWV0aG9kJywgJyJnZXQiJyk7CiBzaG91
bGRCZSgnYnV0dG9uLmdldEF0dHJpYnV0ZSgiZm9ybU1ldGhvZCIpJywgJ251bGwnKTsKIGJ1dHRv
bi5zZXRBdHRyaWJ1dGUoJ2Zvcm1NZXRob2QnLCBudWxsKTsKLXNob3VsZEJlKCdidXR0b24uZm9y
bU1ldGhvZCcsICcibnVsbCInKTsKK3Nob3VsZEJlKCdidXR0b24uZm9ybU1ldGhvZCcsICciZ2V0
IicpOwogYnV0dG9uLmZvcm1UYXJnZXQgPSBudWxsOwogc2hvdWxkQmUoJ2J1dHRvbi5mb3JtVGFy
Z2V0JywgJyIiJyk7CiBzaG91bGRCZSgnYnV0dG9uLmdldEF0dHJpYnV0ZSgiZm9ybVRhcmdldCIp
JywgJ251bGwnKTsKIGJ1dHRvbi5zZXRBdHRyaWJ1dGUoJ2Zvcm1UYXJnZXQnLCBudWxsKTsKIHNo
b3VsZEJlKCdidXR0b24uZm9ybVRhcmdldCcsICcibnVsbCInKTsKIAorZGVidWcoJycpOwogZGVi
dWcoJ1NldHRpbmcgdW5kZWZpbmVkIGZvciBidXR0b246Jyk7CiBidXR0b24uZm9ybUVuY3R5cGUg
PSB1bmRlZmluZWQ7Ci1zaG91bGRCZSgnYnV0dG9uLmZvcm1FbmN0eXBlJywgJyJ1bmRlZmluZWQi
Jyk7CitzaG91bGRCZSgnYnV0dG9uLmZvcm1FbmN0eXBlJywgJyJhcHBsaWNhdGlvbi94LXd3dy1m
b3JtLXVybGVuY29kZWQiJyk7CiBzaG91bGRCZSgnYnV0dG9uLmdldEF0dHJpYnV0ZSgiZm9ybUVu
Y3R5cGUiKScsICcidW5kZWZpbmVkIicpOwogYnV0dG9uLnNldEF0dHJpYnV0ZSgnZm9ybUVuY3R5
cGUnLCB1bmRlZmluZWQpOwotc2hvdWxkQmUoJ2J1dHRvbi5mb3JtRW5jdHlwZScsICcidW5kZWZp
bmVkIicpOworc2hvdWxkQmUoJ2J1dHRvbi5mb3JtRW5jdHlwZScsICciYXBwbGljYXRpb24veC13
d3ctZm9ybS11cmxlbmNvZGVkIicpOwogYnV0dG9uLmZvcm1NZXRob2QgPSB1bmRlZmluZWQ7Ci1z
aG91bGRCZSgnYnV0dG9uLmZvcm1NZXRob2QnLCAnInVuZGVmaW5lZCInKTsKK3Nob3VsZEJlKCdi
dXR0b24uZm9ybU1ldGhvZCcsICciZ2V0IicpOwogc2hvdWxkQmUoJ2J1dHRvbi5nZXRBdHRyaWJ1
dGUoImZvcm1NZXRob2QiKScsICcidW5kZWZpbmVkIicpOwogYnV0dG9uLnNldEF0dHJpYnV0ZSgn
Zm9ybU1ldGhvZCcsIHVuZGVmaW5lZCk7Ci1zaG91bGRCZSgnYnV0dG9uLmZvcm1NZXRob2QnLCAn
InVuZGVmaW5lZCInKTsKK3Nob3VsZEJlKCdidXR0b24uZm9ybU1ldGhvZCcsICciZ2V0IicpOwog
YnV0dG9uLmZvcm1UYXJnZXQgPSB1bmRlZmluZWQ7CiBzaG91bGRCZSgnYnV0dG9uLmZvcm1UYXJn
ZXQnLCAnInVuZGVmaW5lZCInKTsKIHNob3VsZEJlKCdidXR0b24uZ2V0QXR0cmlidXRlKCJmb3Jt
VGFyZ2V0IiknLCAnInVuZGVmaW5lZCInKTsKIGJ1dHRvbi5zZXRBdHRyaWJ1dGUoJ2Zvcm1UYXJn
ZXQnLCB1bmRlZmluZWQpOwogc2hvdWxkQmUoJ2J1dHRvbi5mb3JtVGFyZ2V0JywgJyJ1bmRlZmlu
ZWQiJyk7CiAKK2RlYnVnKCcnKTsKIGRlYnVnKCdTZXR0aW5nIG5vbi1zdHJpbmcgZm9yIGJ1dHRv
bjonKTsKIGJ1dHRvbi5mb3JtRW5jdHlwZSA9IDI1NjsKLXNob3VsZEJlKCdidXR0b24uZm9ybUVu
Y3R5cGUnLCAnIjI1NiInKTsKK3Nob3VsZEJlKCdidXR0b24uZm9ybUVuY3R5cGUnLCAnImFwcGxp
Y2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCInKTsKIHNob3VsZEJlKCdidXR0b24uZ2V0QXR0
cmlidXRlKCJmb3JtRW5jdHlwZSIpJywgJyIyNTYiJyk7CiBidXR0b24uc2V0QXR0cmlidXRlKCdm
b3JtRW5jdHlwZScsIDUxMik7Ci1zaG91bGRCZSgnYnV0dG9uLmZvcm1FbmN0eXBlJywgJyI1MTIi
Jyk7CitzaG91bGRCZSgnYnV0dG9uLmZvcm1FbmN0eXBlJywgJyJhcHBsaWNhdGlvbi94LXd3dy1m
b3JtLXVybGVuY29kZWQiJyk7CiBidXR0b24uZm9ybU1ldGhvZCA9IDEyODsKLXNob3VsZEJlKCdi
dXR0b24uZm9ybU1ldGhvZCcsICciMTI4IicpOworc2hvdWxkQmUoJ2J1dHRvbi5mb3JtTWV0aG9k
JywgJyJnZXQiJyk7CiBzaG91bGRCZSgnYnV0dG9uLmdldEF0dHJpYnV0ZSgiZm9ybU1ldGhvZCIp
JywgJyIxMjgiJyk7CiBidXR0b24uc2V0QXR0cmlidXRlKCdmb3JtTWV0aG9kJywgMTcpOwotc2hv
dWxkQmUoJ2J1dHRvbi5mb3JtTWV0aG9kJywgJyIxNyInKTsKK3Nob3VsZEJlKCdidXR0b24uZm9y
bU1ldGhvZCcsICciZ2V0IicpOwogYnV0dG9uLmZvcm1UYXJnZXQgPSAxMDA7CiBzaG91bGRCZSgn
YnV0dG9uLmZvcm1UYXJnZXQnLCAnIjEwMCInKTsKIHNob3VsZEJlKCdidXR0b24uZ2V0QXR0cmli
dXRlKCJmb3JtVGFyZ2V0IiknLCAnIjEwMCInKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zh
c3QvZm9ybXMvc3VibWl0LWZvcm0tYXR0cmlidXRlcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9mYXN0L2Zvcm1zL3N1Ym1pdC1mb3JtLWF0dHJpYnV0ZXMtZXhwZWN0ZWQudHh0CmluZGV4IDkz
MGU1M2U1NTRhMTM1YTkxNzY0YzA3ZjgzZDExNmViMzIyNTU2N2UuLjI1YTkwMDA4ZmM5NzlhZDZl
MzM1YjkxN2IwOGU5YmUzZTc3NjE5MGQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvZm9y
bXMvc3VibWl0LWZvcm0tYXR0cmlidXRlcy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMv
ZmFzdC9mb3Jtcy9zdWJtaXQtZm9ybS1hdHRyaWJ1dGVzLWV4cGVjdGVkLnR4dApAQCAtNSwxMDMg
KzUsMTEwIEBAIE9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVz
c2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFCiAKIE9yZGluYXJ5IHZhbHVlcyBmb3Ig
aW5wdXQ6CiBQQVNTIGlucHV0LmZvcm1BY3Rpb24gaXMgIiIKLVBBU1MgaW5wdXQuZm9ybUVuY3R5
cGUgaXMgIiIKLVBBU1MgaW5wdXQuZm9ybU1ldGhvZCBpcyAiIgorUEFTUyBpbnB1dC5mb3JtRW5j
dHlwZSBpcyAiYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkIgorUEFTUyBpbnB1dC5m
b3JtTWV0aG9kIGlzICJnZXQiCiBQQVNTIGlucHV0LmZvcm1UYXJnZXQgaXMgIiIKIFBBU1MgaW5w
dXQuZm9ybUFjdGlvbiBpcyAiaHR0cDovL2xvY2FsaG9zdC8iCiBQQVNTIGlucHV0LmZvcm1BY3Rp
b24gaXMgImh0dHA6Ly9sb2NhbGhvc3QvIgogUEFTUyBpbnB1dC5mb3JtRW5jdHlwZSBpcyAidGV4
dC9wbGFpbiIKLVBBU1MgaW5wdXQuZm9ybUVuY3R5cGUgaXMgIm5hIgotUEFTUyBpbnB1dC5mb3Jt
TWV0aG9kIGlzICJHRVQiCi1QQVNTIGlucHV0LmZvcm1NZXRob2QgaXMgIm5pIgorUEFTUyBpbnB1
dC5mb3JtRW5jdHlwZSBpcyAiYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkIgorUEFT
UyBpbnB1dC5mb3JtTWV0aG9kIGlzICJnZXQiCitQQVNTIGlucHV0LmZvcm1NZXRob2QgaXMgImdl
dCIKIFBBU1MgaW5wdXQuZm9ybVRhcmdldCBpcyAiX2JsYW5rIgogUEFTUyBpbnB1dC5mb3JtVGFy
Z2V0IGlzICJudSIKIFBBU1MgaW5wdXQuZm9ybUFjdGlvbiBpcyAiaHR0cDovL2V4YW1wbGUuY29t
LyIKIFBBU1MgaW5wdXQuZm9ybUFjdGlvbiBpcyAiaHR0cDovL2V4YW1wbGUuY29tLyIKIFBBU1Mg
aW5wdXQuZm9ybUVuY3R5cGUgaXMgInRleHQvcGxhaW4iCi1QQVNTIGlucHV0LmZvcm1FbmN0eXBl
IGlzICJub3RhIgotUEFTUyBpbnB1dC5mb3JtTWV0aG9kIGlzICJQT1NUIgotUEFTUyBpbnB1dC5m
b3JtTWV0aG9kIGlzICJuZXRhIgorUEFTUyBpbnB1dC5mb3JtRW5jdHlwZSBpcyAiYXBwbGljYXRp
b24veC13d3ctZm9ybS11cmxlbmNvZGVkIgorUEFTUyBpbnB1dC5mb3JtTWV0aG9kIGlzICJwb3N0
IgorUEFTUyBpbnB1dC5mb3JtTWV0aG9kIGlzICJnZXQiCiBQQVNTIGlucHV0LmZvcm1UYXJnZXQg
aXMgImh0dHA6Ly9leGFtcGxlLmNvbSIKIFBBU1MgaW5wdXQuZm9ybVRhcmdldCBpcyAibnRhIgor
CiBTZXR0aW5nIG51bGwgZm9yIGlucHV0OgotUEFTUyBpbnB1dC5mb3JtRW5jdHlwZSBpcyAiIgor
UEFTUyBpbnB1dC5mb3JtRW5jdHlwZSBpcyAiYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNv
ZGVkIgogUEFTUyBpbnB1dC5nZXRBdHRyaWJ1dGUoImZvcm1FbmN0eXBlIikgaXMgbnVsbAotUEFT
UyBpbnB1dC5mb3JtRW5jdHlwZSBpcyAibnVsbCIKLVBBU1MgaW5wdXQuZm9ybU1ldGhvZCBpcyAi
IgorUEFTUyBpbnB1dC5mb3JtRW5jdHlwZSBpcyAiYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxl
bmNvZGVkIgorUEFTUyBpbnB1dC5mb3JtTWV0aG9kIGlzICJnZXQiCiBQQVNTIGlucHV0LmdldEF0
dHJpYnV0ZSgiZm9ybU1ldGhvZCIpIGlzIG51bGwKLVBBU1MgaW5wdXQuZm9ybU1ldGhvZCBpcyAi
bnVsbCIKK1BBU1MgaW5wdXQuZm9ybU1ldGhvZCBpcyAiZ2V0IgogUEFTUyBpbnB1dC5mb3JtVGFy
Z2V0IGlzICIiCiBQQVNTIGlucHV0LmdldEF0dHJpYnV0ZSgiZm9ybVRhcmdldCIpIGlzIG51bGwK
IFBBU1MgaW5wdXQuZm9ybVRhcmdldCBpcyAibnVsbCIKKwogU2V0dGluZyB1bmRlZmluZWQgZm9y
IGlucHV0OgotUEFTUyBpbnB1dC5mb3JtRW5jdHlwZSBpcyAidW5kZWZpbmVkIgorUEFTUyBpbnB1
dC5mb3JtRW5jdHlwZSBpcyAiYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkIgogUEFT
UyBpbnB1dC5nZXRBdHRyaWJ1dGUoImZvcm1FbmN0eXBlIikgaXMgInVuZGVmaW5lZCIKLVBBU1Mg
aW5wdXQuZm9ybUVuY3R5cGUgaXMgInVuZGVmaW5lZCIKLVBBU1MgaW5wdXQuZm9ybU1ldGhvZCBp
cyAidW5kZWZpbmVkIgorUEFTUyBpbnB1dC5mb3JtRW5jdHlwZSBpcyAiYXBwbGljYXRpb24veC13
d3ctZm9ybS11cmxlbmNvZGVkIgorUEFTUyBpbnB1dC5mb3JtTWV0aG9kIGlzICJnZXQiCiBQQVNT
IGlucHV0LmdldEF0dHJpYnV0ZSgiZm9ybU1ldGhvZCIpIGlzICJ1bmRlZmluZWQiCi1QQVNTIGlu
cHV0LmZvcm1NZXRob2QgaXMgInVuZGVmaW5lZCIKK1BBU1MgaW5wdXQuZm9ybU1ldGhvZCBpcyAi
Z2V0IgogUEFTUyBpbnB1dC5mb3JtVGFyZ2V0IGlzICJ1bmRlZmluZWQiCiBQQVNTIGlucHV0Lmdl
dEF0dHJpYnV0ZSgiZm9ybVRhcmdldCIpIGlzICJ1bmRlZmluZWQiCiBQQVNTIGlucHV0LmZvcm1U
YXJnZXQgaXMgInVuZGVmaW5lZCIKKwogU2V0dGluZyBub24tc3RyaW5nIGZvciBpbnB1dDoKLVBB
U1MgaW5wdXQuZm9ybUVuY3R5cGUgaXMgIjI1NiIKK1BBU1MgaW5wdXQuZm9ybUVuY3R5cGUgaXMg
ImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCIKIFBBU1MgaW5wdXQuZ2V0QXR0cmli
dXRlKCJmb3JtRW5jdHlwZSIpIGlzICIyNTYiCi1QQVNTIGlucHV0LmZvcm1FbmN0eXBlIGlzICIy
NTYiCi1QQVNTIGlucHV0LmZvcm1NZXRob2QgaXMgIjI1NiIKK1BBU1MgaW5wdXQuZm9ybUVuY3R5
cGUgaXMgImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCIKK1BBU1MgaW5wdXQuZm9y
bU1ldGhvZCBpcyAiZ2V0IgogUEFTUyBpbnB1dC5nZXRBdHRyaWJ1dGUoImZvcm1NZXRob2QiKSBp
cyAiMjU2IgotUEFTUyBpbnB1dC5mb3JtTWV0aG9kIGlzICIyNTYiCitQQVNTIGlucHV0LmZvcm1N
ZXRob2QgaXMgImdldCIKIFBBU1MgaW5wdXQuZm9ybVRhcmdldCBpcyAiMjU2IgogUEFTUyBpbnB1
dC5nZXRBdHRyaWJ1dGUoImZvcm1UYXJnZXQiKSBpcyAiMjU2IgogUEFTUyBpbnB1dC5mb3JtVGFy
Z2V0IGlzICIyNTYiCisKIE9yZGluYXJ5IHZhbHVlcyBmb3IgYnV0dG9uOgogUEFTUyBidXR0b24u
Zm9ybUFjdGlvbiBpcyAiIgotUEFTUyBidXR0b24uZm9ybUVuY3R5cGUgaXMgIiIKLVBBU1MgYnV0
dG9uLmZvcm1NZXRob2QgaXMgIiIKK1BBU1MgYnV0dG9uLmZvcm1FbmN0eXBlIGlzICJhcHBsaWNh
dGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQiCitQQVNTIGJ1dHRvbi5mb3JtTWV0aG9kIGlzICJn
ZXQiCiBQQVNTIGJ1dHRvbi5mb3JtVGFyZ2V0IGlzICIiCiBQQVNTIGJ1dHRvbi5mb3JtQWN0aW9u
IGlzICJodHRwOi8vbG9jYWxob3N0LyIKIFBBU1MgYnV0dG9uLmZvcm1BY3Rpb24gaXMgImh0dHA6
Ly9sb2NhbGhvc3QvIgogUEFTUyBidXR0b24uZm9ybUVuY3R5cGUgaXMgInRleHQvcGxhaW4iCi1Q
QVNTIGJ1dHRvbi5mb3JtRW5jdHlwZSBpcyAibmEiCi1QQVNTIGJ1dHRvbi5mb3JtTWV0aG9kIGlz
ICJHRVQiCi1QQVNTIGJ1dHRvbi5mb3JtTWV0aG9kIGlzICJuYSIKK1BBU1MgYnV0dG9uLmZvcm1F
bmN0eXBlIGlzICJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQiCitQQVNTIGJ1dHRv
bi5mb3JtTWV0aG9kIGlzICJnZXQiCitQQVNTIGJ1dHRvbi5mb3JtTWV0aG9kIGlzICJnZXQiCiBQ
QVNTIGJ1dHRvbi5mb3JtVGFyZ2V0IGlzICJfYmxhbmsiCiBQQVNTIGJ1dHRvbi5mb3JtVGFyZ2V0
IGlzICJuYSIKIFBBU1MgYnV0dG9uLmZvcm1BY3Rpb24gaXMgImh0dHA6Ly9leGFtcGxlLmNvbS8i
CiBQQVNTIGJ1dHRvbi5mb3JtQWN0aW9uIGlzICJodHRwOi8vZXhhbXBsZS5jb20vIgogUEFTUyBi
dXR0b24uZm9ybUVuY3R5cGUgaXMgInRleHQvcGxhaW4iCi1QQVNTIGJ1dHRvbi5mb3JtRW5jdHlw
ZSBpcyAibm90YSIKLVBBU1MgYnV0dG9uLmZvcm1NZXRob2QgaXMgIlBPU1QiCi1QQVNTIGJ1dHRv
bi5mb3JtTWV0aG9kIGlzICJub3RhIgorUEFTUyBidXR0b24uZm9ybUVuY3R5cGUgaXMgImFwcGxp
Y2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCIKK1BBU1MgYnV0dG9uLmZvcm1NZXRob2QgaXMg
InBvc3QiCitQQVNTIGJ1dHRvbi5mb3JtTWV0aG9kIGlzICJnZXQiCiBQQVNTIGJ1dHRvbi5mb3Jt
VGFyZ2V0IGlzICJodHRwOi8vZXhhbXBsZS5jb20iCiBQQVNTIGJ1dHRvbi5mb3JtVGFyZ2V0IGlz
ICJub3RhIgorCiBTZXR0aW5nIG51bGwgZm9yIGJ1dHRvbjoKLVBBU1MgYnV0dG9uLmZvcm1FbmN0
eXBlIGlzICIiCitQQVNTIGJ1dHRvbi5mb3JtRW5jdHlwZSBpcyAiYXBwbGljYXRpb24veC13d3ct
Zm9ybS11cmxlbmNvZGVkIgogUEFTUyBidXR0b24uZ2V0QXR0cmlidXRlKCJmb3JtRW5jdHlwZSIp
IGlzIG51bGwKLVBBU1MgYnV0dG9uLmZvcm1FbmN0eXBlIGlzICJudWxsIgotUEFTUyBidXR0b24u
Zm9ybU1ldGhvZCBpcyAiIgorUEFTUyBidXR0b24uZm9ybUVuY3R5cGUgaXMgImFwcGxpY2F0aW9u
L3gtd3d3LWZvcm0tdXJsZW5jb2RlZCIKK1BBU1MgYnV0dG9uLmZvcm1NZXRob2QgaXMgImdldCIK
IFBBU1MgYnV0dG9uLmdldEF0dHJpYnV0ZSgiZm9ybU1ldGhvZCIpIGlzIG51bGwKLVBBU1MgYnV0
dG9uLmZvcm1NZXRob2QgaXMgIm51bGwiCitQQVNTIGJ1dHRvbi5mb3JtTWV0aG9kIGlzICJnZXQi
CiBQQVNTIGJ1dHRvbi5mb3JtVGFyZ2V0IGlzICIiCiBQQVNTIGJ1dHRvbi5nZXRBdHRyaWJ1dGUo
ImZvcm1UYXJnZXQiKSBpcyBudWxsCiBQQVNTIGJ1dHRvbi5mb3JtVGFyZ2V0IGlzICJudWxsIgor
CiBTZXR0aW5nIHVuZGVmaW5lZCBmb3IgYnV0dG9uOgotUEFTUyBidXR0b24uZm9ybUVuY3R5cGUg
aXMgInVuZGVmaW5lZCIKK1BBU1MgYnV0dG9uLmZvcm1FbmN0eXBlIGlzICJhcHBsaWNhdGlvbi94
LXd3dy1mb3JtLXVybGVuY29kZWQiCiBQQVNTIGJ1dHRvbi5nZXRBdHRyaWJ1dGUoImZvcm1FbmN0
eXBlIikgaXMgInVuZGVmaW5lZCIKLVBBU1MgYnV0dG9uLmZvcm1FbmN0eXBlIGlzICJ1bmRlZmlu
ZWQiCi1QQVNTIGJ1dHRvbi5mb3JtTWV0aG9kIGlzICJ1bmRlZmluZWQiCitQQVNTIGJ1dHRvbi5m
b3JtRW5jdHlwZSBpcyAiYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkIgorUEFTUyBi
dXR0b24uZm9ybU1ldGhvZCBpcyAiZ2V0IgogUEFTUyBidXR0b24uZ2V0QXR0cmlidXRlKCJmb3Jt
TWV0aG9kIikgaXMgInVuZGVmaW5lZCIKLVBBU1MgYnV0dG9uLmZvcm1NZXRob2QgaXMgInVuZGVm
aW5lZCIKK1BBU1MgYnV0dG9uLmZvcm1NZXRob2QgaXMgImdldCIKIFBBU1MgYnV0dG9uLmZvcm1U
YXJnZXQgaXMgInVuZGVmaW5lZCIKIFBBU1MgYnV0dG9uLmdldEF0dHJpYnV0ZSgiZm9ybVRhcmdl
dCIpIGlzICJ1bmRlZmluZWQiCiBQQVNTIGJ1dHRvbi5mb3JtVGFyZ2V0IGlzICJ1bmRlZmluZWQi
CisKIFNldHRpbmcgbm9uLXN0cmluZyBmb3IgYnV0dG9uOgotUEFTUyBidXR0b24uZm9ybUVuY3R5
cGUgaXMgIjI1NiIKK1BBU1MgYnV0dG9uLmZvcm1FbmN0eXBlIGlzICJhcHBsaWNhdGlvbi94LXd3
dy1mb3JtLXVybGVuY29kZWQiCiBQQVNTIGJ1dHRvbi5nZXRBdHRyaWJ1dGUoImZvcm1FbmN0eXBl
IikgaXMgIjI1NiIKLVBBU1MgYnV0dG9uLmZvcm1FbmN0eXBlIGlzICI1MTIiCi1QQVNTIGJ1dHRv
bi5mb3JtTWV0aG9kIGlzICIxMjgiCitQQVNTIGJ1dHRvbi5mb3JtRW5jdHlwZSBpcyAiYXBwbGlj
YXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkIgorUEFTUyBidXR0b24uZm9ybU1ldGhvZCBpcyAi
Z2V0IgogUEFTUyBidXR0b24uZ2V0QXR0cmlidXRlKCJmb3JtTWV0aG9kIikgaXMgIjEyOCIKLVBB
U1MgYnV0dG9uLmZvcm1NZXRob2QgaXMgIjE3IgorUEFTUyBidXR0b24uZm9ybU1ldGhvZCBpcyAi
Z2V0IgogUEFTUyBidXR0b24uZm9ybVRhcmdldCBpcyAiMTAwIgogUEFTUyBidXR0b24uZ2V0QXR0
cmlidXRlKCJmb3JtVGFyZ2V0IikgaXMgIjEwMCIKIFBBU1MgYnV0dG9uLmZvcm1UYXJnZXQgaXMg
IjI4MSIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJD
b3JlL0NoYW5nZUxvZwppbmRleCA4M2VjZmRiNjMxOGE1OTgzYWYyYjMzOGRhN2ZjNWYxMTY0MzNk
NjA4Li4yNGMzODRhZDQyNGI3NzU1ZWVkMTk4NTk1OGQ3ZTc3OGNlZmViOGFhIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsNjEgQEAKKzIwMTEtMDktMjcgIEtlbnQgVGFtdXJhICA8dGtlbnRAY2hyb21p
dW0ub3JnPgorCisgICAgICAgIG1ldGhvZC9lbmN0eXBlL2Zvcm1NZXRob2QvZm9ybUVuY3R5cGUg
cHJvcGVydGllcyBzaG91bGQgYmUgbGltaXRlZCB0byBrbm93biB2YWx1ZXMuCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02ODg4NworCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFjY29yZGluZyB0byB0aGUgc3Rh
bmRhcmQgYW5kIG90aGVyIGJyb3dzZXIgYmVoYXZpb3JzLCB0aGUKKyAgICAgICAgZm9sbG93aW5n
IElETCBwcm9wZXJ0aWVzIHNob3VsZCBiZSByZWZsZWN0ZWQgdG8gdGhlIGNvcnJlc3BvbmRpbmcK
KyAgICAgICAgSFRNTCBhdHRyaWJ1dGVzIG9uIHNldHRpbmcsIGJ1dCBzaG91bGQgcmV0dXJuIG5v
cm1hbGl6ZWQgdmFsdWVzIG9uCisgICAgICAgIGdldHRpbmcuCisgICAgICAgIC0gSFRNTEZvcm1F
bGVtZW50OjptZXRob2QKKyAgICAgICAgLSBIVE1MRm9ybUVsZW1lbnQ6OmVuY3R5cGUKKyAgICAg
ICAgLSBIVE1MSW5wdXRFbGVtZW50Ojpmb3JtTWV0aG9kCisgICAgICAgIC0gSFRNTElucHV0RWxl
bWVudDo6Zm9ybUVuY3R5cGUKKyAgICAgICAgLSBIVE1MQnV0dG9uRWxlbWVudDo6Zm9ybU1ldGhv
ZAorICAgICAgICAtIEhUTUxCdXR0b25FbGVtZW50Ojpmb3JtRW5jdHlwZQorCisgICAgICAgIFRl
c3RzOiBmYXN0L2Zvcm1zL2VuY3R5cGUtYXR0cmlidXRlLmh0bWwKKyAgICAgICAgICAgICAgIGZh
c3QvZm9ybXMvbWV0aG9kLWF0dHJpYnV0ZS5odG1sCisKKyAgICAgICAgKiBodG1sL0hUTUxCdXR0
b25FbGVtZW50LmlkbDoKKyAgICAgICAgUmVwbGFjZSAnUmVmbGVjdCcgd2l0aCAnQ29udmVydE51
bGxUb051bGxTdHJpbmcnIGluIG9yZGVyIHRvIHVzZSBhCisgICAgICAgIGdldHRlciBmdW5jdGlv
bi4KKyAgICAgICAgKiBodG1sL0hUTUxGb3JtQ29udHJvbEVsZW1lbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6SFRNTEZvcm1Db250cm9sRWxlbWVudDo6Zm9ybUVuY3R5cGUpOgorICAgICAgICBO
b3JtYWxpemVzIHRoZSB2YWx1ZSBieSBwYXJzZUVuY29kaW5nVHlwZSgpLgorICAgICAgICAoV2Vi
Q29yZTo6SFRNTEZvcm1Db250cm9sRWxlbWVudDo6c2V0Rm9ybUVuY3R5cGUpOgorICAgICAgICBT
aW1wbHkgY2FsbHMgc2V0QXR0cmlidXRlKCkKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxGb3JtQ29u
dHJvbEVsZW1lbnQ6OmZvcm1NZXRob2QpOgorICAgICAgICBOb3JtYWxpemVzIHRoZSB2YWx1ZSBi
eSBwYXJzZU1ldGhvZFR5cGUoKS4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxGb3JtQ29udHJvbEVs
ZW1lbnQ6OnNldEZvcm1NZXRob2QpOgorICAgICAgICBTaW1wbHkgY2FsbHMgc2V0QXR0cmlidXRl
KCkKKyAgICAgICAgKiBodG1sL0hUTUxGb3JtQ29udHJvbEVsZW1lbnQuaDoKKyAgICAgICAgKiBo
dG1sL0hUTUxGb3JtRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MRm9ybUVsZW1l
bnQ6OnBhcnNlTWFwcGVkQXR0cmlidXRlKToKKyAgICAgICAgRm9sbG93IHRoZSBBdHRyaWJ1dGVz
IGZ1bmN0aW9uIHJlbmFtaW5nLgorICAgICAgICAoV2ViQ29yZTo6SFRNTEZvcm1FbGVtZW50Ojpt
ZXRob2QpOgorICAgICAgICBOb3JtYWxpemVzIHRoZSB2YWx1ZSBieSBwYXJzZU1ldGhvZFR5cGUo
KS4KKyAgICAgICAgKiBodG1sL0hUTUxGb3JtRWxlbWVudC5pZGw6CisgICAgICAgIFJlcGxhY2Ug
J1JlZmxlY3QnIHdpdGggJ0NvbnZlcnROdWxsVG9OdWxsU3RyaW5nJyBpbiBvcmRlciB0byB1c2Ug
YQorICAgICAgICBnZXR0ZXIgZnVuY3Rpb24uCisgICAgICAgICogaHRtbC9IVE1MSW5wdXRFbGVt
ZW50LmlkbDogZGl0dG8uCisgICAgICAgICogbG9hZGVyL0Zvcm1TdWJtaXNzaW9uLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkZvcm1TdWJtaXNzaW9uOjpBdHRyaWJ1dGVzOjpwYXJzZUVuY29kaW5n
VHlwZSk6CisgICAgICAgIE5ldyBmdW5jdGlvbiBtYWRlIGZyb20gYSBwYXJ0IG9mIG9sZCBwYXJz
ZUVuY29kaW5nVHlwZSgpLgorICAgICAgICAoV2ViQ29yZTo6Rm9ybVN1Ym1pc3Npb246OkF0dHJp
YnV0ZXM6OnVwZGF0ZUVuY29kaW5nVHlwZSk6CisgICAgICAgIFJlbmFtZWQgZnJvbSBwYXJzZUVu
Y29kaW5nVHlwZSgpLgorICAgICAgICAoV2ViQ29yZTo6Rm9ybVN1Ym1pc3Npb246OkF0dHJpYnV0
ZXM6OnBhcnNlTWV0aG9kVHlwZSk6CisgICAgICAgIE5ldyBmdW5jdGlvbiBtYWRlIGZyb20gYSBw
YXJ0IG9mIG9sZCBwYXJzZU1ldGhvZFR5cGUoKS4KKyAgICAgICAgKFdlYkNvcmU6OkZvcm1TdWJt
aXNzaW9uOjpBdHRyaWJ1dGVzOjp1cGRhdGVNZXRob2RUeXBlKToKKyAgICAgICAgUmVuYW1lZCBm
cm9tIHBhcnNlTWV0aG9kVHlwZSgpLgorICAgICAgICAoV2ViQ29yZTo6Rm9ybVN1Ym1pc3Npb246
OmNyZWF0ZSk6CisgICAgICAgIEZvbGxvdyB0aGUgQXR0cmlidXRlcyBmdW5jdGlvbiByZW5hbWlu
Zy4KKyAgICAgICAgKiBsb2FkZXIvRm9ybVN1Ym1pc3Npb24uaDoKKyAgICAgICAgKFdlYkNvcmU6
OkZvcm1TdWJtaXNzaW9uOjpBdHRyaWJ1dGVzOjptZXRob2RTdHJpbmcpOgorICAgICAgICBBIGhl
bHBlciBmdW5jdGlvbiB0byBwcm92aWRlIG5vcm1hbGl6ZWQgc3RyaW5ncyBmb3IgRm9ybVN1Ym1p
c3Npb246Ok1ldGhvZC4KKwogMjAxMS0wOS0yNyAgQXJ1biBQYXRvbGUgIDxibWY4MzRAbW90b3Jv
bGEuY29tPgogCiAgICAgICAgIEF1ZGlvIGVsZW1lbnQgZG9lc24ndCBlbWl0IHRoZSAncGxheWlu
ZycgZXZlbnQgZXZlcnkgdGltZSBpdCBzdGFydHMgcGxheWluZywgYWZ0ZXIgaXQgaGFzIGZpbmlz
aGVkIHBsYXlpbmcuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxCdXR0b25F
bGVtZW50LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEJ1dHRvbkVsZW1lbnQuaWRsCmlu
ZGV4IDJmYmJhNDFmM2Y3NjYwM2NmYzJiZGNiZjUyZjZiYTllMmQ1OWE5YzEuLjYzYzQ3MWJiMzA4
MTM2YjAwNDZkNGU4NmRiNjE1NWUxNjJhN2RhZTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTEJ1dHRvbkVsZW1lbnQuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRN
TEJ1dHRvbkVsZW1lbnQuaWRsCkBAIC0yNCw4ICsyNCw4IEBAIG1vZHVsZSBodG1sIHsKICAgICAg
ICAgcmVhZG9ubHkgYXR0cmlidXRlIEhUTUxGb3JtRWxlbWVudCBmb3JtOwogCiAgICAgICAgIGF0
dHJpYnV0ZSBbUmVmbGVjdCwgVVJMXSBET01TdHJpbmcgZm9ybUFjdGlvbjsKLSAgICAgICAgYXR0
cmlidXRlIFtSZWZsZWN0XSBET01TdHJpbmcgZm9ybUVuY3R5cGU7Ci0gICAgICAgIGF0dHJpYnV0
ZSBbUmVmbGVjdF0gRE9NU3RyaW5nIGZvcm1NZXRob2Q7CisgICAgICAgIGF0dHJpYnV0ZSBbQ29u
dmVydE51bGxUb051bGxTdHJpbmddIERPTVN0cmluZyBmb3JtRW5jdHlwZTsKKyAgICAgICAgYXR0
cmlidXRlIFtDb252ZXJ0TnVsbFRvTnVsbFN0cmluZ10gRE9NU3RyaW5nIGZvcm1NZXRob2Q7CiAg
ICAgICAgIGF0dHJpYnV0ZSBbUmVmbGVjdF0gYm9vbGVhbiBmb3JtTm9WYWxpZGF0ZTsKICAgICAg
ICAgYXR0cmlidXRlIFtSZWZsZWN0XSBET01TdHJpbmcgZm9ybVRhcmdldDsKICAgICAgICAgcmVh
ZG9ubHkgYXR0cmlidXRlIFZhbGlkaXR5U3RhdGUgdmFsaWRpdHk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtQ29udHJvbEVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MRm9ybUNvbnRyb2xFbGVtZW50LmNwcAppbmRleCA5MTYyYzI2MzcyZGEzZTlm
N2RlOWEyNDc5MjkyNWNiZmI0NzFmMzIzLi44ZTRhNGJhMmE5ZDJhMzNhZWRkNTRjMWJiNmQwMzdh
OWQzMjc3N2QxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtQ29udHJv
bEVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1Db250cm9sRWxl
bWVudC5jcHAKQEAgLTgxLDYgKzgxLDI2IEBAIHZvaWQgSFRNTEZvcm1Db250cm9sRWxlbWVudDo6
ZGV0YWNoKCkKICAgICBIVE1MRWxlbWVudDo6ZGV0YWNoKCk7CiB9CiAKK1N0cmluZyBIVE1MRm9y
bUNvbnRyb2xFbGVtZW50Ojpmb3JtRW5jdHlwZSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIEZvcm1T
dWJtaXNzaW9uOjpBdHRyaWJ1dGVzOjpwYXJzZUVuY29kaW5nVHlwZShmYXN0R2V0QXR0cmlidXRl
KGZvcm1lbmN0eXBlQXR0cikpOworfQorCit2b2lkIEhUTUxGb3JtQ29udHJvbEVsZW1lbnQ6OnNl
dEZvcm1FbmN0eXBlKGNvbnN0IFN0cmluZyYgdmFsdWUpCit7CisgICAgc2V0QXR0cmlidXRlKGZv
cm1lbmN0eXBlQXR0ciwgdmFsdWUpOworfQorCitTdHJpbmcgSFRNTEZvcm1Db250cm9sRWxlbWVu
dDo6Zm9ybU1ldGhvZCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIEZvcm1TdWJtaXNzaW9uOjpBdHRy
aWJ1dGVzOjptZXRob2RTdHJpbmcoRm9ybVN1Ym1pc3Npb246OkF0dHJpYnV0ZXM6OnBhcnNlTWV0
aG9kVHlwZShmYXN0R2V0QXR0cmlidXRlKGZvcm1tZXRob2RBdHRyKSkpOworfQorCit2b2lkIEhU
TUxGb3JtQ29udHJvbEVsZW1lbnQ6OnNldEZvcm1NZXRob2QoY29uc3QgU3RyaW5nJiB2YWx1ZSkK
K3sKKyAgICBzZXRBdHRyaWJ1dGUoZm9ybW1ldGhvZEF0dHIsIHZhbHVlKTsKK30KKwogYm9vbCBI
VE1MRm9ybUNvbnRyb2xFbGVtZW50Ojpmb3JtTm9WYWxpZGF0ZSgpIGNvbnN0CiB7CiAgICAgcmV0
dXJuIGZhc3RIYXNBdHRyaWJ1dGUoZm9ybW5vdmFsaWRhdGVBdHRyKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1Db250cm9sRWxlbWVudC5oIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MRm9ybUNvbnRyb2xFbGVtZW50LmgKaW5kZXggNTljOTZjMmM3NGEwYzMzNjE0
ZjEzNzZlZjJiOWRkMTM2ZGYxNTMzMi4uMzc1MjE2MWM4NTUyZDliNjk5NmExYTI1NGNmNTcyZGI3
M2E4ZmIyNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUNvbnRyb2xF
bGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUNvbnRyb2xFbGVtZW50
LmgKQEAgLTQzLDYgKzQzLDEwIEBAIHB1YmxpYzoKIAogICAgIEhUTUxGb3JtRWxlbWVudCogZm9y
bSgpIGNvbnN0IHsgcmV0dXJuIEZvcm1Bc3NvY2lhdGVkRWxlbWVudDo6Zm9ybSgpOyB9CiAKKyAg
ICBTdHJpbmcgZm9ybUVuY3R5cGUoKSBjb25zdDsKKyAgICB2b2lkIHNldEZvcm1FbmN0eXBlKGNv
bnN0IFN0cmluZyYpOworICAgIFN0cmluZyBmb3JtTWV0aG9kKCkgY29uc3Q7CisgICAgdm9pZCBz
ZXRGb3JtTWV0aG9kKGNvbnN0IFN0cmluZyYpOwogICAgIGJvb2wgZm9ybU5vVmFsaWRhdGUoKSBj
b25zdDsKIAogICAgIHZpcnR1YWwgdm9pZCByZXNldCgpIHsgfQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvaHRtbC9IVE1MRm9ybUVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9I
VE1MRm9ybUVsZW1lbnQuY3BwCmluZGV4IDVhYzViNjM0N2I3N2U4ZTFhY2U1ZTBkYjg1NmM5ODU0
YWYxODc2MDkuLjg4ZWY5NjJiZjU1OGNhNzNhZGUxMTcyNzYzZTYwOGM5M2QyNzFiYWEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1FbGVtZW50LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtRWxlbWVudC5jcHAKQEAgLTM3MCw5ICszNzAsOSBAQCB2
b2lkIEhUTUxGb3JtRWxlbWVudDo6cGFyc2VNYXBwZWRBdHRyaWJ1dGUoQXR0cmlidXRlKiBhdHRy
KQogICAgIGVsc2UgaWYgKGF0dHItPm5hbWUoKSA9PSB0YXJnZXRBdHRyKQogICAgICAgICBtX2F0
dHJpYnV0ZXMuc2V0VGFyZ2V0KGF0dHItPnZhbHVlKCkpOwogICAgIGVsc2UgaWYgKGF0dHItPm5h
bWUoKSA9PSBtZXRob2RBdHRyKQotICAgICAgICBtX2F0dHJpYnV0ZXMucGFyc2VNZXRob2RUeXBl
KGF0dHItPnZhbHVlKCkpOworICAgICAgICBtX2F0dHJpYnV0ZXMudXBkYXRlTWV0aG9kVHlwZShh
dHRyLT52YWx1ZSgpKTsKICAgICBlbHNlIGlmIChhdHRyLT5uYW1lKCkgPT0gZW5jdHlwZUF0dHIp
Ci0gICAgICAgIG1fYXR0cmlidXRlcy5wYXJzZUVuY29kaW5nVHlwZShhdHRyLT52YWx1ZSgpKTsK
KyAgICAgICAgbV9hdHRyaWJ1dGVzLnVwZGF0ZUVuY29kaW5nVHlwZShhdHRyLT52YWx1ZSgpKTsK
ICAgICBlbHNlIGlmIChhdHRyLT5uYW1lKCkgPT0gYWNjZXB0X2NoYXJzZXRBdHRyKQogICAgICAg
ICBtX2F0dHJpYnV0ZXMuc2V0QWNjZXB0Q2hhcnNldChhdHRyLT52YWx1ZSgpKTsKICAgICBlbHNl
IGlmIChhdHRyLT5uYW1lKCkgPT0gYXV0b2NvbXBsZXRlQXR0cikgewpAQCAtNTQ3LDcgKzU0Nyw3
IEBAIHZvaWQgSFRNTEZvcm1FbGVtZW50OjpzZXRFbmN0eXBlKGNvbnN0IFN0cmluZyAmdmFsdWUp
CiAKIFN0cmluZyBIVE1MRm9ybUVsZW1lbnQ6Om1ldGhvZCgpIGNvbnN0CiB7Ci0gICAgcmV0dXJu
IGdldEF0dHJpYnV0ZShtZXRob2RBdHRyKTsKKyAgICByZXR1cm4gRm9ybVN1Ym1pc3Npb246OkF0
dHJpYnV0ZXM6Om1ldGhvZFN0cmluZyhtX2F0dHJpYnV0ZXMubWV0aG9kKCkpOwogfQogCiB2b2lk
IEhUTUxGb3JtRWxlbWVudDo6c2V0TWV0aG9kKGNvbnN0IFN0cmluZyAmdmFsdWUpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtRWxlbWVudC5pZGwgYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0hUTUxGb3JtRWxlbWVudC5pZGwKaW5kZXggNWM3NzliNTM1MGQyNjI2OTE5Y2I3
ZGFhNWIwNTY1NjI1ZDc3MzE5Ni4uYzY5NjdlYWNmZTk5ODVlZTdlNTU2ZjEwOTlkZDM0ZWI1Mjli
YTZlNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUVsZW1lbnQuaWRs
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1FbGVtZW50LmlkbApAQCAtMzMsNyAr
MzMsNyBAQCBtb2R1bGUgaHRtbCB7CiAgICAgICAgIGF0dHJpYnV0ZSBbUmVmbGVjdCwgVVJMXSBE
T01TdHJpbmcgYWN0aW9uOwogICAgICAgICBhdHRyaWJ1dGUgW0NvbnZlcnROdWxsVG9OdWxsU3Ry
aW5nXSBET01TdHJpbmcgZW5jb2Rpbmc7CiAgICAgICAgIGF0dHJpYnV0ZSBbQ29udmVydE51bGxU
b051bGxTdHJpbmddIERPTVN0cmluZyBlbmN0eXBlOwotICAgICAgICBhdHRyaWJ1dGUgW1JlZmxl
Y3RdIERPTVN0cmluZyBtZXRob2Q7CisgICAgICAgIGF0dHJpYnV0ZSBbQ29udmVydE51bGxUb051
bGxTdHJpbmddIERPTVN0cmluZyBtZXRob2Q7CiAgICAgICAgIGF0dHJpYnV0ZSBbUmVmbGVjdF0g
RE9NU3RyaW5nIHRhcmdldDsKICAgICAgICAgYXR0cmlidXRlIFtSZWZsZWN0XSBET01TdHJpbmcg
YXV0b2NvbXBsZXRlOwogICAgICAgICAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTElucHV0RWxlbWVudC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxJbnB1dEVsZW1l
bnQuaWRsCmluZGV4IDQ0ZjE0YjQ0ZjExOTA4ODBlODI4NGEwOTVjNjVlMDFiZWM3YjQyODQuLmQz
YTFlZDdiZjdhZTZkYzIwYTYwZTM0M2FiZGQxNmE5OTQ1MWQwZjYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVudC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MSW5wdXRFbGVtZW50LmlkbApAQCAtMjUsOCArMjUsOCBAQCBtb2R1bGUgaHRtbCB7
CiAgICAgICAgIGF0dHJpYnV0ZSBbUmVmbGVjdD1jaGVja2VkXSBib29sZWFuIGRlZmF1bHRDaGVj
a2VkOwogICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgSFRNTEZvcm1FbGVtZW50IGZvcm07CiAg
ICAgICAgIGF0dHJpYnV0ZSBbUmVmbGVjdCwgVVJMXSBET01TdHJpbmcgZm9ybUFjdGlvbjsKLSAg
ICAgICAgYXR0cmlidXRlIFtSZWZsZWN0XSBET01TdHJpbmcgZm9ybUVuY3R5cGU7Ci0gICAgICAg
IGF0dHJpYnV0ZSBbUmVmbGVjdF0gRE9NU3RyaW5nIGZvcm1NZXRob2Q7CisgICAgICAgIGF0dHJp
YnV0ZSBbQ29udmVydE51bGxUb051bGxTdHJpbmddIERPTVN0cmluZyBmb3JtRW5jdHlwZTsKKyAg
ICAgICAgYXR0cmlidXRlIFtDb252ZXJ0TnVsbFRvTnVsbFN0cmluZ10gRE9NU3RyaW5nIGZvcm1N
ZXRob2Q7CiAgICAgICAgIGF0dHJpYnV0ZSBbUmVmbGVjdF0gYm9vbGVhbiBmb3JtTm9WYWxpZGF0
ZTsKICAgICAgICAgYXR0cmlidXRlIFtSZWZsZWN0XSBET01TdHJpbmcgZm9ybVRhcmdldDsKICAg
ICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIFZhbGlkaXR5U3RhdGUgdmFsaWRpdHk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRm9ybVN1Ym1pc3Npb24uY3BwIGIvU291cmNlL1dl
YkNvcmUvbG9hZGVyL0Zvcm1TdWJtaXNzaW9uLmNwcAppbmRleCAwMTM4NDk0NzViY2U5YTdjODUy
NjFhZGI2MWUwNzQyMzE1ZDI0ZDIzLi43MmU2MWY1ODViNjQ0MWRmMDA4OTcxZmIyYzIwMjA4YjA3
ZjQ2NjMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRm9ybVN1Ym1pc3Npb24u
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb3JtU3VibWlzc2lvbi5jcHAKQEAgLTg4
LDI2ICs4OCwyOSBAQCB2b2lkIEZvcm1TdWJtaXNzaW9uOjpBdHRyaWJ1dGVzOjpwYXJzZUFjdGlv
bihjb25zdCBTdHJpbmcmIGFjdGlvbikKICAgICBtX2FjdGlvbiA9IHN0cmlwTGVhZGluZ0FuZFRy
YWlsaW5nSFRNTFNwYWNlcyhhY3Rpb24pOwogfQogCi12b2lkIEZvcm1TdWJtaXNzaW9uOjpBdHRy
aWJ1dGVzOjpwYXJzZUVuY29kaW5nVHlwZShjb25zdCBTdHJpbmcmIHR5cGUpCitTdHJpbmcgRm9y
bVN1Ym1pc3Npb246OkF0dHJpYnV0ZXM6OnBhcnNlRW5jb2RpbmdUeXBlKGNvbnN0IFN0cmluZyYg
dHlwZSkKIHsKLSAgICBpZiAodHlwZS5jb250YWlucygibXVsdGlwYXJ0IiwgZmFsc2UpIHx8IHR5
cGUuY29udGFpbnMoImZvcm0tZGF0YSIsIGZhbHNlKSkgewotICAgICAgICBtX2VuY29kaW5nVHlw
ZSA9ICJtdWx0aXBhcnQvZm9ybS1kYXRhIjsKLSAgICAgICAgbV9pc011bHRpUGFydEZvcm0gPSB0
cnVlOwotICAgIH0gZWxzZSBpZiAodHlwZS5jb250YWlucygidGV4dCIsIGZhbHNlKSB8fCB0eXBl
LmNvbnRhaW5zKCJwbGFpbiIsIGZhbHNlKSkgewotICAgICAgICBtX2VuY29kaW5nVHlwZSA9ICJ0
ZXh0L3BsYWluIjsKLSAgICAgICAgbV9pc011bHRpUGFydEZvcm0gPSBmYWxzZTsKLSAgICB9IGVs
c2UgewotICAgICAgICBtX2VuY29kaW5nVHlwZSA9ICJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVy
bGVuY29kZWQiOwotICAgICAgICBtX2lzTXVsdGlQYXJ0Rm9ybSA9IGZhbHNlOwotICAgIH0KKyAg
ICBpZiAodHlwZS5jb250YWlucygibXVsdGlwYXJ0IiwgZmFsc2UpIHx8IHR5cGUuY29udGFpbnMo
ImZvcm0tZGF0YSIsIGZhbHNlKSkKKyAgICAgICAgcmV0dXJuICJtdWx0aXBhcnQvZm9ybS1kYXRh
IjsKKyAgICBpZiAodHlwZS5jb250YWlucygidGV4dCIsIGZhbHNlKSB8fCB0eXBlLmNvbnRhaW5z
KCJwbGFpbiIsIGZhbHNlKSkKKyAgICAgICAgcmV0dXJuICJ0ZXh0L3BsYWluIjsKKyAgICByZXR1
cm4gImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCI7Cit9CisKK3ZvaWQgRm9ybVN1
Ym1pc3Npb246OkF0dHJpYnV0ZXM6OnVwZGF0ZUVuY29kaW5nVHlwZShjb25zdCBTdHJpbmcmIHR5
cGUpCit7CisgICAgbV9lbmNvZGluZ1R5cGUgPSBwYXJzZUVuY29kaW5nVHlwZSh0eXBlKTsKKyAg
ICBtX2lzTXVsdGlQYXJ0Rm9ybSA9IChtX2VuY29kaW5nVHlwZSA9PSAibXVsdGlwYXJ0L2Zvcm0t
ZGF0YSIpOworfQorCitGb3JtU3VibWlzc2lvbjo6TWV0aG9kIEZvcm1TdWJtaXNzaW9uOjpBdHRy
aWJ1dGVzOjpwYXJzZU1ldGhvZFR5cGUoY29uc3QgU3RyaW5nJiB0eXBlKQoreworICAgIHJldHVy
biBlcXVhbElnbm9yaW5nQ2FzZSh0eXBlLCAicG9zdCIpID8gRm9ybVN1Ym1pc3Npb246OlBvc3RN
ZXRob2QgOiBGb3JtU3VibWlzc2lvbjo6R2V0TWV0aG9kOwogfQogCi12b2lkIEZvcm1TdWJtaXNz
aW9uOjpBdHRyaWJ1dGVzOjpwYXJzZU1ldGhvZFR5cGUoY29uc3QgU3RyaW5nJiB0eXBlKQordm9p
ZCBGb3JtU3VibWlzc2lvbjo6QXR0cmlidXRlczo6dXBkYXRlTWV0aG9kVHlwZShjb25zdCBTdHJp
bmcmIHR5cGUpCiB7Ci0gICAgaWYgKGVxdWFsSWdub3JpbmdDYXNlKHR5cGUsICJwb3N0IikpCi0g
ICAgICAgIG1fbWV0aG9kID0gRm9ybVN1Ym1pc3Npb246OlBvc3RNZXRob2Q7Ci0gICAgZWxzZSBp
ZiAoZXF1YWxJZ25vcmluZ0Nhc2UodHlwZSwgImdldCIpKQotICAgICAgICBtX21ldGhvZCA9IEZv
cm1TdWJtaXNzaW9uOjpHZXRNZXRob2Q7CisgICAgbV9tZXRob2QgPSBwYXJzZU1ldGhvZFR5cGUo
dHlwZSk7CiB9CiAKIHZvaWQgRm9ybVN1Ym1pc3Npb246OkF0dHJpYnV0ZXM6OmNvcHlGcm9tKGNv
bnN0IEF0dHJpYnV0ZXMmIG90aGVyKQpAQCAtMTQ5LDkgKzE1Miw5IEBAIFBhc3NSZWZQdHI8Rm9y
bVN1Ym1pc3Npb24+IEZvcm1TdWJtaXNzaW9uOjpjcmVhdGUoSFRNTEZvcm1FbGVtZW50KiBmb3Jt
LCBjb25zdCBBCiAgICAgICAgIGlmICghKGF0dHJpYnV0ZVZhbHVlID0gc3VibWl0QnV0dG9uLT5n
ZXRBdHRyaWJ1dGUoZm9ybWFjdGlvbkF0dHIpKS5pc051bGwoKSkKICAgICAgICAgICAgIGNvcGll
ZEF0dHJpYnV0ZXMucGFyc2VBY3Rpb24oYXR0cmlidXRlVmFsdWUpOwogICAgICAgICBpZiAoIShh
dHRyaWJ1dGVWYWx1ZSA9IHN1Ym1pdEJ1dHRvbi0+Z2V0QXR0cmlidXRlKGZvcm1lbmN0eXBlQXR0
cikpLmlzTnVsbCgpKQotICAgICAgICAgICAgY29waWVkQXR0cmlidXRlcy5wYXJzZUVuY29kaW5n
VHlwZShhdHRyaWJ1dGVWYWx1ZSk7CisgICAgICAgICAgICBjb3BpZWRBdHRyaWJ1dGVzLnVwZGF0
ZUVuY29kaW5nVHlwZShhdHRyaWJ1dGVWYWx1ZSk7CiAgICAgICAgIGlmICghKGF0dHJpYnV0ZVZh
bHVlID0gc3VibWl0QnV0dG9uLT5nZXRBdHRyaWJ1dGUoZm9ybW1ldGhvZEF0dHIpKS5pc051bGwo
KSkKLSAgICAgICAgICAgIGNvcGllZEF0dHJpYnV0ZXMucGFyc2VNZXRob2RUeXBlKGF0dHJpYnV0
ZVZhbHVlKTsKKyAgICAgICAgICAgIGNvcGllZEF0dHJpYnV0ZXMudXBkYXRlTWV0aG9kVHlwZShh
dHRyaWJ1dGVWYWx1ZSk7CiAgICAgICAgIGlmICghKGF0dHJpYnV0ZVZhbHVlID0gc3VibWl0QnV0
dG9uLT5nZXRBdHRyaWJ1dGUoZm9ybXRhcmdldEF0dHIpKS5pc051bGwoKSkKICAgICAgICAgICAg
IGNvcGllZEF0dHJpYnV0ZXMuc2V0VGFyZ2V0KGF0dHJpYnV0ZVZhbHVlKTsKICAgICB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRm9ybVN1Ym1pc3Npb24uaCBiL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9Gb3JtU3VibWlzc2lvbi5oCmluZGV4IDdmNThmOTE5MDQ4NTE3NWJmZTQ1
MDQ5N2JhMjZkNWUzY2YxMTI5ODYuLmU1ZWJjYzFiODg1MDRlNmYyNDIyYjExZDIzNjY4NDRhMzc0
ZjZkYjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb3JtU3VibWlzc2lvbi5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb3JtU3VibWlzc2lvbi5oCkBAIC01OCw3ICs1
OCw5IEBAIHB1YmxpYzoKICAgICAgICAgfQogCiAgICAgICAgIE1ldGhvZCBtZXRob2QoKSBjb25z
dCB7IHJldHVybiBtX21ldGhvZDsgfQotICAgICAgICB2b2lkIHBhcnNlTWV0aG9kVHlwZShjb25z
dCBTdHJpbmcmKTsKKyAgICAgICAgc3RhdGljIE1ldGhvZCBwYXJzZU1ldGhvZFR5cGUoY29uc3Qg
U3RyaW5nJik7CisgICAgICAgIHZvaWQgdXBkYXRlTWV0aG9kVHlwZShjb25zdCBTdHJpbmcmKTsK
KyAgICAgICAgc3RhdGljIFN0cmluZyBtZXRob2RTdHJpbmcoTWV0aG9kIG1ldGhvZCkgeyByZXR1
cm4gbWV0aG9kID09IEdldE1ldGhvZCA/ICJnZXQiIDogInBvc3QiOyB9CiAKICAgICAgICAgY29u
c3QgU3RyaW5nJiBhY3Rpb24oKSBjb25zdCB7IHJldHVybiBtX2FjdGlvbjsgfQogICAgICAgICB2
b2lkIHBhcnNlQWN0aW9uKGNvbnN0IFN0cmluZyYpOwpAQCAtNjcsNyArNjksOCBAQCBwdWJsaWM6
CiAgICAgICAgIHZvaWQgc2V0VGFyZ2V0KGNvbnN0IFN0cmluZyYgdGFyZ2V0KSB7IG1fdGFyZ2V0
ID0gdGFyZ2V0OyB9CiAKICAgICAgICAgY29uc3QgU3RyaW5nJiBlbmNvZGluZ1R5cGUoKSBjb25z
dCB7IHJldHVybiBtX2VuY29kaW5nVHlwZTsgfQotICAgICAgICB2b2lkIHBhcnNlRW5jb2RpbmdU
eXBlKGNvbnN0IFN0cmluZyYpOworICAgICAgICBzdGF0aWMgU3RyaW5nIHBhcnNlRW5jb2RpbmdU
eXBlKGNvbnN0IFN0cmluZyYpOworICAgICAgICB2b2lkIHVwZGF0ZUVuY29kaW5nVHlwZShjb25z
dCBTdHJpbmcmKTsKICAgICAgICAgYm9vbCBpc011bHRpUGFydEZvcm0oKSBjb25zdCB7IHJldHVy
biBtX2lzTXVsdGlQYXJ0Rm9ybTsgfQogCiAgICAgICAgIGNvbnN0IFN0cmluZyYgYWNjZXB0Q2hh
cnNldCgpIGNvbnN0IHsgcmV0dXJuIG1fYWNjZXB0Q2hhcnNldDsgfQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>109439</attachid>
            <date>2011-10-02 22:52:28 -0700</date>
            <delta_ts>2011-10-02 23:58:32 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-68887-20111003145226.patch</filename>
            <type>text/plain</type>
            <size>36864</size>
            <attacher name="Kent Tamura">tkent</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTY0ODIKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA4Y2U3YTlkM2RhNjY1ZGE4YWMyY2Nh
MjEyMjI5Y2Y1M2VmZWEzYTQ1Li5iYjBlNGZkYTIwMWQ2YmQ3Y2I5MjkxOWJhMDNiM2M1ZjdjZjMx
Y2VhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTEtMDktMjcgIEtlbnQgVGFtdXJhICA8dGtl
bnRAY2hyb21pdW0ub3JnPgorCisgICAgICAgIG1ldGhvZC9lbmN0eXBlL2Zvcm1NZXRob2QvZm9y
bUVuY3R5cGUgcHJvcGVydGllcyBzaG91bGQgYmUgbGltaXRlZCB0byBrbm93biB2YWx1ZXMuCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02ODg4NworCisg
ICAgICAgIFJldmlld2VkIGJ5IEhhamltZSBNb3JpdGEuCisKKyAgICAgICAgKiBmYXN0L2RvbS9l
bGVtZW50LWF0dHJpYnV0ZS1qcy1udWxsLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBmYXN0L2Rv
bS9lbGVtZW50LWF0dHJpYnV0ZS1qcy1udWxsLmh0bWw6IENvcnJlY3QgYW4gZXhwZWN0YXRpb24g
Zm9yIEhUTUxGb3JtRWxlbWVudDo6bWV0aG9kLgorICAgICAgICAqIGZhc3QvZm9ybXMvZW5jdHlw
ZS1hdHRyaWJ1dGUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2Zvcm1zL2Vu
Y3R5cGUtYXR0cmlidXRlLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZm9ybXMvbWV0aG9k
LWF0dHJpYnV0ZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZm9ybXMvbWV0
aG9kLWF0dHJpYnV0ZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2Zvcm1zL3NjcmlwdC10
ZXN0cy9zdWJtaXQtZm9ybS1hdHRyaWJ1dGVzLmpzOiBDb3JyZWN0IGV4cGVjdGF0aW9ucy4KKyAg
ICAgICAgKiBmYXN0L2Zvcm1zL3N1Ym1pdC1mb3JtLWF0dHJpYnV0ZXMtZXhwZWN0ZWQudHh0OiBk
aXR0by4KKwogMjAxMS0xMC0wMiAgR2F2aW4gQmFycmFjbG91Z2ggIDxiYXJyYWNsb3VnaEBhcHBs
ZS5jb20+CiAKICAgICAgICAgQnVnIDY3NDU1IC0gRGlmZmVyZW50IHJlZ3VsYXIgZXhwcmVzc2lv
biByZXN1bHQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL2VsZW1lbnQtYXR0cmli
dXRlLWpzLW51bGwtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vZWxlbWVudC1h
dHRyaWJ1dGUtanMtbnVsbC1leHBlY3RlZC50eHQKaW5kZXggZGY1ODU0MThkNDg2NWVkMjlkMzkz
YzI0MDYyNmZlMGVkMTBkMDY0Yi4uNjdiM2NkM2Y3OWY3YjU0MTVlOWMzNWUzYzg2OGQyM2M1ZDNi
NjRkZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vZWxlbWVudC1hdHRyaWJ1dGUt
anMtbnVsbC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vZWxlbWVudC1h
dHRyaWJ1dGUtanMtbnVsbC1leHBlY3RlZC50eHQKQEAgLTgxLDcgKzgxLDcgQEAgVEVTVCBTVUND
RUVERUQ6IFRoZSB2YWx1ZSB3YXMgdGhlIGVtcHR5IHN0cmluZy4gW3Rlc3RlZCBIVE1MRm9ybUVs
ZW1lbnQuYWNjZXB0Q2gKIFRFU1QgU1VDQ0VFREVEOiBUaGUgdmFsdWUgd2FzIHRoZSBlbXB0eSBz
dHJpbmcuIFt0ZXN0ZWQgSFRNTEZvcm1FbGVtZW50LmFjdGlvbl0KIFRFU1QgU1VDQ0VFREVEOiBU
aGUgdmFsdWUgd2FzIHRoZSBzdHJpbmcgJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2Rl
ZCcuIFt0ZXN0ZWQgSFRNTEZvcm1FbGVtZW50LmVuY29kaW5nXQogVEVTVCBTVUNDRUVERUQ6IFRo
ZSB2YWx1ZSB3YXMgdGhlIHN0cmluZyAnYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVk
Jy4gW3Rlc3RlZCBIVE1MRm9ybUVsZW1lbnQuZW5jdHlwZV0KLVRFU1QgU1VDQ0VFREVEOiBUaGUg
dmFsdWUgd2FzIHRoZSBlbXB0eSBzdHJpbmcuIFt0ZXN0ZWQgSFRNTEZvcm1FbGVtZW50Lm1ldGhv
ZF0KK1RFU1QgU1VDQ0VFREVEOiBUaGUgdmFsdWUgd2FzIHRoZSBzdHJpbmcgJ2dldCcuIFt0ZXN0
ZWQgSFRNTEZvcm1FbGVtZW50Lm1ldGhvZF0KIFRFU1QgU1VDQ0VFREVEOiBUaGUgdmFsdWUgd2Fz
IHRoZSBlbXB0eSBzdHJpbmcuIFt0ZXN0ZWQgSFRNTEZvcm1FbGVtZW50LnRhcmdldF0KIAogVEVT
VCBTVUNDRUVERUQ6IFRoZSB2YWx1ZSB3YXMgdGhlIGVtcHR5IHN0cmluZy4gW3Rlc3RlZCBIVE1M
RnJhbWVFbGVtZW50LmZyYW1lQm9yZGVyXQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9k
b20vZWxlbWVudC1hdHRyaWJ1dGUtanMtbnVsbC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20v
ZWxlbWVudC1hdHRyaWJ1dGUtanMtbnVsbC5odG1sCmluZGV4IDgxMzU5N2RkNTcyYzQ1ZDgzM2I3
ZmRhNDQ5OWUxODM3MDJiNmY1M2IuLjk1ZDkzYzkwMzhhY2JjYWUzZjhlYjY1NTZhNWRiMzVlMjM3
MTEwM2IgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL2VsZW1lbnQtYXR0cmlidXRl
LWpzLW51bGwuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9lbGVtZW50LWF0dHJpYnV0
ZS1qcy1udWxsLmh0bWwKQEAgLTIzMiw3ICsyMzIsNyBAQAogICAgICAgICAgICAgICAgICAgICAg
ICAge25hbWU6ICdhY3Rpb24nLCBleHBlY3RlZE51bGw6ICcnfSwKICAgICAgICAgICAgICAgICAg
ICAgICAgIHtuYW1lOiAnZW5jb2RpbmcnLCBleHBlY3RlZE51bGw6ICdhcHBsaWNhdGlvbi94LXd3
dy1mb3JtLXVybGVuY29kZWQnfSwKICAgICAgICAgICAgICAgICAgICAgICAgIHtuYW1lOiAnZW5j
dHlwZScsIGV4cGVjdGVkTnVsbDogJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCd9
LAotICAgICAgICAgICAgICAgICAgICAgICAge25hbWU6ICdtZXRob2QnLCBleHBlY3RlZE51bGw6
ICcnfSwKKyAgICAgICAgICAgICAgICAgICAgICAgIHtuYW1lOiAnbWV0aG9kJywgZXhwZWN0ZWRO
dWxsOiAnZ2V0J30sCiAgICAgICAgICAgICAgICAgICAgICAgICB7bmFtZTogJ3RhcmdldCcsIGV4
cGVjdGVkTnVsbDogJyd9CiAgICAgICAgICAgICAgICAgICAgIF0KICAgICAgICAgICAgICAgICB9
LApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9lbmN0eXBlLWF0dHJpYnV0ZS1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2VuY3R5cGUtYXR0cmlidXRlLWV4
cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zMWRmZTM5ZDU5NzQ1NGU3Mzg4YzdmOWRmYzY2ZWQxZDhi
ZWZmMmE4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9lbmN0eXBl
LWF0dHJpYnV0ZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwyNSBAQAorVGVzdCBlbmN0eXBlIGFu
ZCBmb3JtZW5jdHlwZSBhdHRyaWJ1dGVzCisKK01pc3NpbmcgdmFsdWUgZGVmYXVsdDoKK1BBU1Mg
Zm9ybTEuZW5jdHlwZSBpcyAiYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkIgorUEFT
UyBmb3JtMS5nZXRBdHRyaWJ1dGUoImVuY3R5cGUiKSBpcyBudWxsCisKK0ludmFsaWQgdmFsdWUg
ZGVmYXVsdDoKK1BBU1MgZm9ybTEuZW5jdHlwZSA9ICJmb29iYXIiOyBmb3JtMS5lbmN0eXBlIGlz
ICJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQiCitQQVNTIGZvcm0xLmdldEF0dHJp
YnV0ZSgiZW5jdHlwZSIpIGlzICJmb29iYXIiCitQQVNTIGZvcm0xLnNldEF0dHJpYnV0ZSgiZW5j
dHlwZSIsICJiYXoiKTsgZm9ybTEuZW5jdHlwZSBpcyAiYXBwbGljYXRpb24veC13d3ctZm9ybS11
cmxlbmNvZGVkIgorCitWYWxpZCB2YWx1ZXM6CitQQVNTIGZvcm0xLmVuY3R5cGUgPSAiVGV4dC9Q
bGFpbiI7IGZvcm0xLmVuY3R5cGUgaXMgInRleHQvcGxhaW4iCitQQVNTIGZvcm0xLmdldEF0dHJp
YnV0ZSgiZW5jdHlwZSIpIGlzICJUZXh0L1BsYWluIgorUEFTUyBmb3JtMS5zZXRBdHRyaWJ1dGUo
ImVuY3R5cGUiLCAiVGV4dC9QbGFpbiIpOyBmb3JtMS5lbmN0eXBlIGlzICJ0ZXh0L3BsYWluIgor
CitWYWxpZCB2YWx1ZXMgd2l0aCB3aGl0ZXNwYWNlOgorUEFTUyBmb3JtMS5lbmN0eXBlID0gIiAg
bXVsdGlwYXJ0L2Zvcm0tZGF0YSI7IGZvcm0xLmVuY3R5cGUgaXMgIm11bHRpcGFydC9mb3JtLWRh
dGEiCitQQVNTIGZvcm0xLmdldEF0dHJpYnV0ZSgiZW5jdHlwZSIpIGlzICIgIG11bHRpcGFydC9m
b3JtLWRhdGEiCitQQVNTIGZvcm0xLmVuY3R5cGUgPSAiYXBwbGljYXRpb24veC13d3ctZm9ybS11
cmxlbmNvZGVkICI7IGZvcm0xLmVuY3R5cGUgaXMgImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJs
ZW5jb2RlZCIKKworUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBM
RVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvZW5jdHlwZS1hdHRyaWJ1
dGUuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvZW5jdHlwZS1hdHRyaWJ1dGUuaHRtbApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi4wZmI1ZmIzMTk3NWQxYTY3M2I2ZGU4MDk4Mzc4ZWRkZjk3ZWEyMDY5Ci0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9lbmN0eXBlLWF0dHJpYnV0ZS5o
dG1sCkBAIC0wLDAgKzEsNDUgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8bGluayByZWw9
c3R5bGVzaGVldCBocmVmPSIuLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPGJv
ZHk+Cis8c2NyaXB0IHNyYz0iLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3Njcmlw
dD4KKworPHA+VGVzdCBlbmN0eXBlIGFuZCBmb3JtZW5jdHlwZSBhdHRyaWJ1dGVzPC9wPgorCis8
Zm9ybSBpZD1mMT48L2Zvcm0+CisKKzxkaXYgaWQ9Y29uc29sZT48L2Rpdj4KKzxzY3JpcHQ+Cit2
YXIgZm9ybTEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZjEnKTsKKworZGVidWcoJ01pc3Np
bmcgdmFsdWUgZGVmYXVsdDonKTsKK3Nob3VsZEJlKCdmb3JtMS5lbmN0eXBlJywgJyJhcHBsaWNh
dGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQiJyk7CitzaG91bGRCZU51bGwoJ2Zvcm0xLmdldEF0
dHJpYnV0ZSgiZW5jdHlwZSIpJyk7CisKK2RlYnVnKCcnKTsKK2RlYnVnKCdJbnZhbGlkIHZhbHVl
IGRlZmF1bHQ6Jyk7CitzaG91bGRCZSgnZm9ybTEuZW5jdHlwZSA9ICJmb29iYXIiOyBmb3JtMS5l
bmN0eXBlJywgJyJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQiJyk7CitzaG91bGRC
ZSgnZm9ybTEuZ2V0QXR0cmlidXRlKCJlbmN0eXBlIiknLCAnImZvb2JhciInKTsKK3Nob3VsZEJl
KCdmb3JtMS5zZXRBdHRyaWJ1dGUoImVuY3R5cGUiLCAiYmF6Iik7IGZvcm0xLmVuY3R5cGUnLCAn
ImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCInKTsKKworZGVidWcoJycpOworZGVi
dWcoJ1ZhbGlkIHZhbHVlczonKTsKK3Nob3VsZEJlKCdmb3JtMS5lbmN0eXBlID0gIlRleHQvUGxh
aW4iOyBmb3JtMS5lbmN0eXBlJywgJyJ0ZXh0L3BsYWluIicpOworc2hvdWxkQmUoJ2Zvcm0xLmdl
dEF0dHJpYnV0ZSgiZW5jdHlwZSIpJywgJyJUZXh0L1BsYWluIicpOworc2hvdWxkQmUoJ2Zvcm0x
LnNldEF0dHJpYnV0ZSgiZW5jdHlwZSIsICJUZXh0L1BsYWluIik7IGZvcm0xLmVuY3R5cGUnLCAn
InRleHQvcGxhaW4iJyk7CisKK2RlYnVnKCcnKTsKK2RlYnVnKCdWYWxpZCB2YWx1ZXMgd2l0aCB3
aGl0ZXNwYWNlOicpOworLy8gTm90ZTogSUU5IHRob3J3cyAiSW52YWxpZCBhcmd1bWVudC4iLCBG
aXJlZm94IDYgZG9lc24ndCBhbGxvdyBsZWFkaW5nIHdoaXRlc3BhY2UuCisvLyBGaXJlZm94IG1h
dGNoZXMgdG8gdGhlIHNwZWNpZmljYXRpb24uCitzaG91bGRCZSgnZm9ybTEuZW5jdHlwZSA9ICIg
IG11bHRpcGFydC9mb3JtLWRhdGEiOyBmb3JtMS5lbmN0eXBlJywgJyJtdWx0aXBhcnQvZm9ybS1k
YXRhIicpOworc2hvdWxkQmUoJ2Zvcm0xLmdldEF0dHJpYnV0ZSgiZW5jdHlwZSIpJywgJyIgIG11
bHRpcGFydC9mb3JtLWRhdGEiJyk7CisKK3Nob3VsZEJlKCdmb3JtMS5lbmN0eXBlID0gImFwcGxp
Y2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCAiOyBmb3JtMS5lbmN0eXBlJywgJyJhcHBsaWNh
dGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQiJyk7CisKK2RlYnVnKCcnKTsKK3ZhciBzdWNjZXNz
ZnVsbHlQYXJzZWQgPSB0cnVlOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vanMvcmVzb3Vy
Y2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL21ldGhvZC1hdHRyaWJ1dGUtZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9tZXRob2QtYXR0cmlidXRlLWV4cGVjdGVkLnR4dApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi5hOGY4ZGRhM2RkMjY5MWMwMTNhZWQ2MTVkYTVhMTQxNzJlNmJiMzE1Ci0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9tZXRob2QtYXR0cmlidXRlLWV4
cGVjdGVkLnR4dApAQCAtMCwwICsxLDIxIEBACitUZXN0IG1ldGhvZCBhbmQgZm9ybW1ldGhvZCBh
dHRyaWJ1dGVzCisKK01pc3NpbmcgdmFsdWUgZGVmYXVsdDoKK1BBU1MgZm9ybTEubWV0aG9kIGlz
ICJnZXQiCitQQVNTIGZvcm0xLmdldEF0dHJpYnV0ZSgibWV0aG9kIikgaXMgbnVsbAorCitJbnZh
bGlkIHZhbHVlIGRlZmF1bHQ6CitQQVNTIGZvcm0xLm1ldGhvZCA9ICIgcG9zdCAiOyBmb3JtMS5t
ZXRob2QgaXMgImdldCIKK1BBU1MgZm9ybTEuZ2V0QXR0cmlidXRlKCJtZXRob2QiKSBpcyAiIHBv
c3QgIgorUEFTUyBmb3JtMS5zZXRBdHRyaWJ1dGUoIm1ldGhvZCIsICJwdXQiKTsgZm9ybTEubWV0
aG9kIGlzICJnZXQiCisKK1ZhbGlkIHZhbHVlczoKK1BBU1MgZm9ybTEubWV0aG9kID0gIlBvc3Qi
OyBmb3JtMS5tZXRob2QgaXMgInBvc3QiCitQQVNTIGZvcm0xLmdldEF0dHJpYnV0ZSgibWV0aG9k
IikgaXMgIlBvc3QiCitQQVNTIGZvcm0xLm1ldGhvZCA9ICJHZXQiOyBmb3JtMS5tZXRob2QgaXMg
ImdldCIKK1BBU1MgZm9ybTEuZ2V0QXR0cmlidXRlKCJtZXRob2QiKSBpcyAiR2V0IgorCitQQVNT
IHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9tZXRob2QtYXR0cmlidXRlLmh0bWwgYi9MYXlvdXRU
ZXN0cy9mYXN0L2Zvcm1zL21ldGhvZC1hdHRyaWJ1dGUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45MjlkMDkz
ZDBlNjA2OWNjYzdkZjczNDgxNDZjN2YwNmQ5NmUxZmRiCi0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvZmFzdC9mb3Jtcy9tZXRob2QtYXR0cmlidXRlLmh0bWwKQEAgLTAsMCArMSwzOCBA
QAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxsaW5rIHJlbD1zdHlsZXNoZWV0IGhyZWY9Ii4u
L2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8Ym9keT4KKzxzY3JpcHQgc3JjPSIu
Li9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorCis8cD5UZXN0IG1ldGhv
ZCBhbmQgZm9ybW1ldGhvZCBhdHRyaWJ1dGVzPC9wPgorCis8Zm9ybSBpZD1mMT48L2Zvcm0+CisK
KzxkaXYgaWQ9Y29uc29sZT48L2Rpdj4KKzxzY3JpcHQ+Cit2YXIgZm9ybTEgPSBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgnZjEnKTsKKworZGVidWcoJ01pc3NpbmcgdmFsdWUgZGVmYXVsdDonKTsK
K3Nob3VsZEJlKCdmb3JtMS5tZXRob2QnLCAnImdldCInKTsKK3Nob3VsZEJlTnVsbCgnZm9ybTEu
Z2V0QXR0cmlidXRlKCJtZXRob2QiKScpOworCitkZWJ1ZygnJyk7CitkZWJ1ZygnSW52YWxpZCB2
YWx1ZSBkZWZhdWx0OicpOworc2hvdWxkQmUoJ2Zvcm0xLm1ldGhvZCA9ICIgcG9zdCAiOyBmb3Jt
MS5tZXRob2QnLCAnImdldCInKTsKK3Nob3VsZEJlKCdmb3JtMS5nZXRBdHRyaWJ1dGUoIm1ldGhv
ZCIpJywgJyIgcG9zdCAiJyk7CitzaG91bGRCZSgnZm9ybTEuc2V0QXR0cmlidXRlKCJtZXRob2Qi
LCAicHV0Iik7IGZvcm0xLm1ldGhvZCcsICciZ2V0IicpOworCitkZWJ1ZygnJyk7CitkZWJ1Zygn
VmFsaWQgdmFsdWVzOicpOworc2hvdWxkQmUoJ2Zvcm0xLm1ldGhvZCA9ICJQb3N0IjsgZm9ybTEu
bWV0aG9kJywgJyJwb3N0IicpOworc2hvdWxkQmUoJ2Zvcm0xLmdldEF0dHJpYnV0ZSgibWV0aG9k
IiknLCAnIlBvc3QiJyk7CisKK3Nob3VsZEJlKCdmb3JtMS5tZXRob2QgPSAiR2V0IjsgZm9ybTEu
bWV0aG9kJywgJyJnZXQiJyk7CitzaG91bGRCZSgnZm9ybTEuZ2V0QXR0cmlidXRlKCJtZXRob2Qi
KScsICciR2V0IicpOworCitkZWJ1ZygnJyk7Cit2YXIgc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1
ZTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3Qu
anMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
ZmFzdC9mb3Jtcy9zY3JpcHQtdGVzdHMvc3VibWl0LWZvcm0tYXR0cmlidXRlcy5qcyBiL0xheW91
dFRlc3RzL2Zhc3QvZm9ybXMvc2NyaXB0LXRlc3RzL3N1Ym1pdC1mb3JtLWF0dHJpYnV0ZXMuanMK
aW5kZXggOTkyYzA4NjY5NzlkMjNhZTEzODFkNTBjNDQyNDNiNjE3MTVlNmQ1NC4uOWYzNGY2MzRk
MTM3MjdkYWM4YzBmODZkOGExZjhiNmUzYmFlNmQ1NSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
ZmFzdC9mb3Jtcy9zY3JpcHQtdGVzdHMvc3VibWl0LWZvcm0tYXR0cmlidXRlcy5qcworKysgYi9M
YXlvdXRUZXN0cy9mYXN0L2Zvcm1zL3NjcmlwdC10ZXN0cy9zdWJtaXQtZm9ybS1hdHRyaWJ1dGVz
LmpzCkBAIC01LDggKzUsOCBAQCB2YXIgaW5wdXQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdp
bnB1dCcpOwogZGVidWcoJ09yZGluYXJ5IHZhbHVlcyBmb3IgaW5wdXQ6Jyk7CiBpbnB1dC50eXBl
ID0gInN1Ym1pdCI7CiBzaG91bGRCZSgnaW5wdXQuZm9ybUFjdGlvbicsICciIicpOwotc2hvdWxk
QmUoJ2lucHV0LmZvcm1FbmN0eXBlJywgJyIiJyk7Ci1zaG91bGRCZSgnaW5wdXQuZm9ybU1ldGhv
ZCcsICciIicpOworc2hvdWxkQmUoJ2lucHV0LmZvcm1FbmN0eXBlJywgJyJhcHBsaWNhdGlvbi94
LXd3dy1mb3JtLXVybGVuY29kZWQiJyk7CitzaG91bGRCZSgnaW5wdXQuZm9ybU1ldGhvZCcsICci
Z2V0IicpOwogc2hvdWxkQmUoJ2lucHV0LmZvcm1UYXJnZXQnLCAnIiInKTsKIAogaW5wdXQuc2V0
QXR0cmlidXRlKCdmb3JtQWN0aW9uJywgJ2h0dHA6Ly9sb2NhbGhvc3QnKTsKQEAgLTE2LDExICsx
NiwxMSBAQCBzaG91bGRCZSgnaW5wdXQuZm9ybUFjdGlvbicsICciaHR0cDovL2xvY2FsaG9zdC8i
Jyk7CiBpbnB1dC5zZXRBdHRyaWJ1dGUoJ2Zvcm1FbmN0eXBlJywgJ3RleHQvcGxhaW4nKTsKIHNo
b3VsZEJlKCdpbnB1dC5mb3JtRW5jdHlwZScsICcidGV4dC9wbGFpbiInKTsKIGlucHV0LnNldEF0
dHJpYnV0ZSgnZm9ybUVuY3R5cGUnLCAnbmEnKTsKLXNob3VsZEJlKCdpbnB1dC5mb3JtRW5jdHlw
ZScsICcibmEiJyk7CitzaG91bGRCZSgnaW5wdXQuZm9ybUVuY3R5cGUnLCAnImFwcGxpY2F0aW9u
L3gtd3d3LWZvcm0tdXJsZW5jb2RlZCInKTsKIGlucHV0LnNldEF0dHJpYnV0ZSgnZm9ybU1ldGhv
ZCcsICdHRVQnKTsKLXNob3VsZEJlKCdpbnB1dC5mb3JtTWV0aG9kJywgJyJHRVQiJyk7CitzaG91
bGRCZSgnaW5wdXQuZm9ybU1ldGhvZCcsICciZ2V0IicpOwogaW5wdXQuc2V0QXR0cmlidXRlKCdm
b3JtTWV0aG9kJywgJ25pJyk7Ci1zaG91bGRCZSgnaW5wdXQuZm9ybU1ldGhvZCcsICcibmkiJyk7
CitzaG91bGRCZSgnaW5wdXQuZm9ybU1ldGhvZCcsICciZ2V0IicpOwogaW5wdXQuc2V0QXR0cmli
dXRlKCdmb3JtVGFyZ2V0JywgJ19ibGFuaycpOwogc2hvdWxkQmUoJ2lucHV0LmZvcm1UYXJnZXQn
LCAnIl9ibGFuayInKTsKIGlucHV0LnNldEF0dHJpYnV0ZSgnZm9ybVRhcmdldCcsICdudScpOwpA
QCAtMzMsNjEgKzMzLDY0IEBAIHNob3VsZEJlKCdpbnB1dC5mb3JtQWN0aW9uJywgJyJodHRwOi8v
ZXhhbXBsZS5jb20vIicpOwogaW5wdXQuZm9ybUVuY3R5cGUgPSAndGV4dC9wbGFpbic7CiBzaG91
bGRCZSgnaW5wdXQuZm9ybUVuY3R5cGUnLCAnInRleHQvcGxhaW4iJyk7CiBpbnB1dC5mb3JtRW5j
dHlwZSA9ICdub3RhJzsKLXNob3VsZEJlKCdpbnB1dC5mb3JtRW5jdHlwZScsICcibm90YSInKTsK
K3Nob3VsZEJlKCdpbnB1dC5mb3JtRW5jdHlwZScsICciYXBwbGljYXRpb24veC13d3ctZm9ybS11
cmxlbmNvZGVkIicpOwogaW5wdXQuZm9ybU1ldGhvZCA9ICdQT1NUJzsKLXNob3VsZEJlKCdpbnB1
dC5mb3JtTWV0aG9kJywgJyJQT1NUIicpOworc2hvdWxkQmUoJ2lucHV0LmZvcm1NZXRob2QnLCAn
InBvc3QiJyk7CiBpbnB1dC5mb3JtTWV0aG9kID0gJ25ldGEnOwotc2hvdWxkQmUoJ2lucHV0LmZv
cm1NZXRob2QnLCAnIm5ldGEiJyk7CitzaG91bGRCZSgnaW5wdXQuZm9ybU1ldGhvZCcsICciZ2V0
IicpOwogaW5wdXQuZm9ybVRhcmdldCA9ICdodHRwOi8vZXhhbXBsZS5jb20nOwogc2hvdWxkQmUo
J2lucHV0LmZvcm1UYXJnZXQnLCAnImh0dHA6Ly9leGFtcGxlLmNvbSInKTsKIGlucHV0LmZvcm1U
YXJnZXQgPSAnbnRhJzsKIHNob3VsZEJlKCdpbnB1dC5mb3JtVGFyZ2V0JywgJyJudGEiJyk7CiAK
K2RlYnVnKCcnKTsKIGRlYnVnKCdTZXR0aW5nIG51bGwgZm9yIGlucHV0OicpOwogaW5wdXQuZm9y
bUVuY3R5cGUgPSBudWxsOwotc2hvdWxkQmUoJ2lucHV0LmZvcm1FbmN0eXBlJywgJyIiJyk7Citz
aG91bGRCZSgnaW5wdXQuZm9ybUVuY3R5cGUnLCAnImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJs
ZW5jb2RlZCInKTsKIHNob3VsZEJlKCdpbnB1dC5nZXRBdHRyaWJ1dGUoImZvcm1FbmN0eXBlIikn
LCAnbnVsbCcpOwogaW5wdXQuc2V0QXR0cmlidXRlKCdmb3JtRW5jdHlwZScsIG51bGwpOwotc2hv
dWxkQmUoJ2lucHV0LmZvcm1FbmN0eXBlJywgJyJudWxsIicpOworc2hvdWxkQmUoJ2lucHV0LmZv
cm1FbmN0eXBlJywgJyJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQiJyk7CiBpbnB1
dC5mb3JtTWV0aG9kID0gbnVsbDsKLXNob3VsZEJlKCdpbnB1dC5mb3JtTWV0aG9kJywgJyIiJyk7
CitzaG91bGRCZSgnaW5wdXQuZm9ybU1ldGhvZCcsICciZ2V0IicpOwogc2hvdWxkQmUoJ2lucHV0
LmdldEF0dHJpYnV0ZSgiZm9ybU1ldGhvZCIpJywgJ251bGwnKTsKIGlucHV0LnNldEF0dHJpYnV0
ZSgnZm9ybU1ldGhvZCcsIG51bGwpOwotc2hvdWxkQmUoJ2lucHV0LmZvcm1NZXRob2QnLCAnIm51
bGwiJyk7CitzaG91bGRCZSgnaW5wdXQuZm9ybU1ldGhvZCcsICciZ2V0IicpOwogaW5wdXQuZm9y
bVRhcmdldCA9IG51bGw7CiBzaG91bGRCZSgnaW5wdXQuZm9ybVRhcmdldCcsICciIicpOwogc2hv
dWxkQmUoJ2lucHV0LmdldEF0dHJpYnV0ZSgiZm9ybVRhcmdldCIpJywgJ251bGwnKTsKIGlucHV0
LnNldEF0dHJpYnV0ZSgnZm9ybVRhcmdldCcsIG51bGwpOwogc2hvdWxkQmUoJ2lucHV0LmZvcm1U
YXJnZXQnLCAnIm51bGwiJyk7CiAKK2RlYnVnKCcnKTsKIGRlYnVnKCdTZXR0aW5nIHVuZGVmaW5l
ZCBmb3IgaW5wdXQ6Jyk7CiBpbnB1dC5mb3JtRW5jdHlwZSA9IHVuZGVmaW5lZDsKLXNob3VsZEJl
KCdpbnB1dC5mb3JtRW5jdHlwZScsICcidW5kZWZpbmVkIicpOworc2hvdWxkQmUoJ2lucHV0LmZv
cm1FbmN0eXBlJywgJyJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQiJyk7CiBzaG91
bGRCZSgnaW5wdXQuZ2V0QXR0cmlidXRlKCJmb3JtRW5jdHlwZSIpJywgJyJ1bmRlZmluZWQiJyk7
CiBpbnB1dC5zZXRBdHRyaWJ1dGUoJ2Zvcm1FbmN0eXBlJywgdW5kZWZpbmVkKTsKLXNob3VsZEJl
KCdpbnB1dC5mb3JtRW5jdHlwZScsICcidW5kZWZpbmVkIicpOworc2hvdWxkQmUoJ2lucHV0LmZv
cm1FbmN0eXBlJywgJyJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQiJyk7CiBpbnB1
dC5mb3JtTWV0aG9kID0gdW5kZWZpbmVkOwotc2hvdWxkQmUoJ2lucHV0LmZvcm1NZXRob2QnLCAn
InVuZGVmaW5lZCInKTsKK3Nob3VsZEJlKCdpbnB1dC5mb3JtTWV0aG9kJywgJyJnZXQiJyk7CiBz
aG91bGRCZSgnaW5wdXQuZ2V0QXR0cmlidXRlKCJmb3JtTWV0aG9kIiknLCAnInVuZGVmaW5lZCIn
KTsKIGlucHV0LnNldEF0dHJpYnV0ZSgnZm9ybU1ldGhvZCcsIHVuZGVmaW5lZCk7Ci1zaG91bGRC
ZSgnaW5wdXQuZm9ybU1ldGhvZCcsICcidW5kZWZpbmVkIicpOworc2hvdWxkQmUoJ2lucHV0LmZv
cm1NZXRob2QnLCAnImdldCInKTsKIGlucHV0LmZvcm1UYXJnZXQgPSB1bmRlZmluZWQ7CiBzaG91
bGRCZSgnaW5wdXQuZm9ybVRhcmdldCcsICcidW5kZWZpbmVkIicpOwogc2hvdWxkQmUoJ2lucHV0
LmdldEF0dHJpYnV0ZSgiZm9ybVRhcmdldCIpJywgJyJ1bmRlZmluZWQiJyk7CiBpbnB1dC5zZXRB
dHRyaWJ1dGUoJ2Zvcm1UYXJnZXQnLCB1bmRlZmluZWQpOwogc2hvdWxkQmUoJ2lucHV0LmZvcm1U
YXJnZXQnLCAnInVuZGVmaW5lZCInKTsKIAorZGVidWcoJycpOwogZGVidWcoJ1NldHRpbmcgbm9u
LXN0cmluZyBmb3IgaW5wdXQ6Jyk7CiBpbnB1dC5mb3JtRW5jdHlwZSA9IDI1NjsKLXNob3VsZEJl
KCdpbnB1dC5mb3JtRW5jdHlwZScsICciMjU2IicpOworc2hvdWxkQmUoJ2lucHV0LmZvcm1FbmN0
eXBlJywgJyJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQiJyk7CiBzaG91bGRCZSgn
aW5wdXQuZ2V0QXR0cmlidXRlKCJmb3JtRW5jdHlwZSIpJywgJyIyNTYiJyk7CiBpbnB1dC5zZXRB
dHRyaWJ1dGUoJ2Zvcm1FbmN0eXBlJywgMjU2KTsKLXNob3VsZEJlKCdpbnB1dC5mb3JtRW5jdHlw
ZScsICciMjU2IicpOworc2hvdWxkQmUoJ2lucHV0LmZvcm1FbmN0eXBlJywgJyJhcHBsaWNhdGlv
bi94LXd3dy1mb3JtLXVybGVuY29kZWQiJyk7CiBpbnB1dC5mb3JtTWV0aG9kID0gMjU2Owotc2hv
dWxkQmUoJ2lucHV0LmZvcm1NZXRob2QnLCAnIjI1NiInKTsKK3Nob3VsZEJlKCdpbnB1dC5mb3Jt
TWV0aG9kJywgJyJnZXQiJyk7CiBzaG91bGRCZSgnaW5wdXQuZ2V0QXR0cmlidXRlKCJmb3JtTWV0
aG9kIiknLCAnIjI1NiInKTsKIGlucHV0LnNldEF0dHJpYnV0ZSgnZm9ybU1ldGhvZCcsIDI1Nik7
Ci1zaG91bGRCZSgnaW5wdXQuZm9ybU1ldGhvZCcsICciMjU2IicpOworc2hvdWxkQmUoJ2lucHV0
LmZvcm1NZXRob2QnLCAnImdldCInKTsKIGlucHV0LmZvcm1UYXJnZXQgPSAyNTY7CiBzaG91bGRC
ZSgnaW5wdXQuZm9ybVRhcmdldCcsICciMjU2IicpOwogc2hvdWxkQmUoJ2lucHV0LmdldEF0dHJp
YnV0ZSgiZm9ybVRhcmdldCIpJywgJyIyNTYiJyk7CkBAIC05NSwxMiArOTgsMTIgQEAgaW5wdXQu
c2V0QXR0cmlidXRlKCdmb3JtVGFyZ2V0JywgMjU2KTsKIHNob3VsZEJlKCdpbnB1dC5mb3JtVGFy
Z2V0JywgJyIyNTYiJyk7CiAKIHZhciBidXR0b24gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdi
dXR0b24nKTsKLQorZGVidWcoJycpOwogZGVidWcoJ09yZGluYXJ5IHZhbHVlcyBmb3IgYnV0dG9u
OicpOwogYnV0dG9uLnR5cGUgPSAic3VibWl0IjsKIHNob3VsZEJlKCdidXR0b24uZm9ybUFjdGlv
bicsICciIicpOwotc2hvdWxkQmUoJ2J1dHRvbi5mb3JtRW5jdHlwZScsICciIicpOwotc2hvdWxk
QmUoJ2J1dHRvbi5mb3JtTWV0aG9kJywgJyIiJyk7CitzaG91bGRCZSgnYnV0dG9uLmZvcm1FbmN0
eXBlJywgJyJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQiJyk7CitzaG91bGRCZSgn
YnV0dG9uLmZvcm1NZXRob2QnLCAnImdldCInKTsKIHNob3VsZEJlKCdidXR0b24uZm9ybVRhcmdl
dCcsICciIicpOwogCiBidXR0b24uc2V0QXR0cmlidXRlKCdmb3JtQWN0aW9uJywgJ2h0dHA6Ly9s
b2NhbGhvc3QnKTsKQEAgLTExMCwxMSArMTEzLDExIEBAIHNob3VsZEJlKCdidXR0b24uZm9ybUFj
dGlvbicsICciaHR0cDovL2xvY2FsaG9zdC8iJyk7CiBidXR0b24uc2V0QXR0cmlidXRlKCdmb3Jt
RW5jdHlwZScsICd0ZXh0L3BsYWluJyk7CiBzaG91bGRCZSgnYnV0dG9uLmZvcm1FbmN0eXBlJywg
JyJ0ZXh0L3BsYWluIicpOwogYnV0dG9uLnNldEF0dHJpYnV0ZSgnZm9ybUVuY3R5cGUnLCAnbmEn
KTsKLXNob3VsZEJlKCdidXR0b24uZm9ybUVuY3R5cGUnLCAnIm5hIicpOworc2hvdWxkQmUoJ2J1
dHRvbi5mb3JtRW5jdHlwZScsICciYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkIicp
OwogYnV0dG9uLnNldEF0dHJpYnV0ZSgnZm9ybU1ldGhvZCcsICdHRVQnKTsKLXNob3VsZEJlKCdi
dXR0b24uZm9ybU1ldGhvZCcsICciR0VUIicpOworc2hvdWxkQmUoJ2J1dHRvbi5mb3JtTWV0aG9k
JywgJyJnZXQiJyk7CiBidXR0b24uc2V0QXR0cmlidXRlKCdmb3JtTWV0aG9kJywgJ25hJyk7Ci1z
aG91bGRCZSgnYnV0dG9uLmZvcm1NZXRob2QnLCAnIm5hIicpOworc2hvdWxkQmUoJ2J1dHRvbi5m
b3JtTWV0aG9kJywgJyJnZXQiJyk7CiBidXR0b24uc2V0QXR0cmlidXRlKCdmb3JtVGFyZ2V0Jywg
J19ibGFuaycpOwogc2hvdWxkQmUoJ2J1dHRvbi5mb3JtVGFyZ2V0JywgJyJfYmxhbmsiJyk7CiBi
dXR0b24uc2V0QXR0cmlidXRlKCdmb3JtVGFyZ2V0JywgJ25hJyk7CkBAIC0xMjcsNjEgKzEzMCw2
NCBAQCBzaG91bGRCZSgnYnV0dG9uLmZvcm1BY3Rpb24nLCAnImh0dHA6Ly9leGFtcGxlLmNvbS8i
Jyk7CiBidXR0b24uZm9ybUVuY3R5cGUgPSAndGV4dC9wbGFpbic7CiBzaG91bGRCZSgnYnV0dG9u
LmZvcm1FbmN0eXBlJywgJyJ0ZXh0L3BsYWluIicpOwogYnV0dG9uLmZvcm1FbmN0eXBlID0gJ25v
dGEnOwotc2hvdWxkQmUoJ2J1dHRvbi5mb3JtRW5jdHlwZScsICcibm90YSInKTsKK3Nob3VsZEJl
KCdidXR0b24uZm9ybUVuY3R5cGUnLCAnImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2Rl
ZCInKTsKIGJ1dHRvbi5mb3JtTWV0aG9kID0gJ1BPU1QnOwotc2hvdWxkQmUoJ2J1dHRvbi5mb3Jt
TWV0aG9kJywgJyJQT1NUIicpOworc2hvdWxkQmUoJ2J1dHRvbi5mb3JtTWV0aG9kJywgJyJwb3N0
IicpOwogYnV0dG9uLmZvcm1NZXRob2QgPSAnbm90YSc7Ci1zaG91bGRCZSgnYnV0dG9uLmZvcm1N
ZXRob2QnLCAnIm5vdGEiJyk7CitzaG91bGRCZSgnYnV0dG9uLmZvcm1NZXRob2QnLCAnImdldCIn
KTsKIGJ1dHRvbi5mb3JtVGFyZ2V0ID0gJ2h0dHA6Ly9leGFtcGxlLmNvbSc7CiBzaG91bGRCZSgn
YnV0dG9uLmZvcm1UYXJnZXQnLCAnImh0dHA6Ly9leGFtcGxlLmNvbSInKTsKIGJ1dHRvbi5mb3Jt
VGFyZ2V0ID0gJ25vdGEnOwogc2hvdWxkQmUoJ2J1dHRvbi5mb3JtVGFyZ2V0JywgJyJub3RhIicp
OwogCitkZWJ1ZygnJyk7CiBkZWJ1ZygnU2V0dGluZyBudWxsIGZvciBidXR0b246Jyk7CiBidXR0
b24uZm9ybUVuY3R5cGUgPSBudWxsOwotc2hvdWxkQmUoJ2J1dHRvbi5mb3JtRW5jdHlwZScsICci
IicpOworc2hvdWxkQmUoJ2J1dHRvbi5mb3JtRW5jdHlwZScsICciYXBwbGljYXRpb24veC13d3ct
Zm9ybS11cmxlbmNvZGVkIicpOwogc2hvdWxkQmUoJ2J1dHRvbi5nZXRBdHRyaWJ1dGUoImZvcm1F
bmN0eXBlIiknLCAnbnVsbCcpOwogYnV0dG9uLnNldEF0dHJpYnV0ZSgnZm9ybUVuY3R5cGUnLCBu
dWxsKTsKLXNob3VsZEJlKCdidXR0b24uZm9ybUVuY3R5cGUnLCAnIm51bGwiJyk7CitzaG91bGRC
ZSgnYnV0dG9uLmZvcm1FbmN0eXBlJywgJyJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29k
ZWQiJyk7CiBidXR0b24uZm9ybU1ldGhvZCA9IG51bGw7Ci1zaG91bGRCZSgnYnV0dG9uLmZvcm1N
ZXRob2QnLCAnIiInKTsKK3Nob3VsZEJlKCdidXR0b24uZm9ybU1ldGhvZCcsICciZ2V0IicpOwog
c2hvdWxkQmUoJ2J1dHRvbi5nZXRBdHRyaWJ1dGUoImZvcm1NZXRob2QiKScsICdudWxsJyk7CiBi
dXR0b24uc2V0QXR0cmlidXRlKCdmb3JtTWV0aG9kJywgbnVsbCk7Ci1zaG91bGRCZSgnYnV0dG9u
LmZvcm1NZXRob2QnLCAnIm51bGwiJyk7CitzaG91bGRCZSgnYnV0dG9uLmZvcm1NZXRob2QnLCAn
ImdldCInKTsKIGJ1dHRvbi5mb3JtVGFyZ2V0ID0gbnVsbDsKIHNob3VsZEJlKCdidXR0b24uZm9y
bVRhcmdldCcsICciIicpOwogc2hvdWxkQmUoJ2J1dHRvbi5nZXRBdHRyaWJ1dGUoImZvcm1UYXJn
ZXQiKScsICdudWxsJyk7CiBidXR0b24uc2V0QXR0cmlidXRlKCdmb3JtVGFyZ2V0JywgbnVsbCk7
CiBzaG91bGRCZSgnYnV0dG9uLmZvcm1UYXJnZXQnLCAnIm51bGwiJyk7CiAKK2RlYnVnKCcnKTsK
IGRlYnVnKCdTZXR0aW5nIHVuZGVmaW5lZCBmb3IgYnV0dG9uOicpOwogYnV0dG9uLmZvcm1FbmN0
eXBlID0gdW5kZWZpbmVkOwotc2hvdWxkQmUoJ2J1dHRvbi5mb3JtRW5jdHlwZScsICcidW5kZWZp
bmVkIicpOworc2hvdWxkQmUoJ2J1dHRvbi5mb3JtRW5jdHlwZScsICciYXBwbGljYXRpb24veC13
d3ctZm9ybS11cmxlbmNvZGVkIicpOwogc2hvdWxkQmUoJ2J1dHRvbi5nZXRBdHRyaWJ1dGUoImZv
cm1FbmN0eXBlIiknLCAnInVuZGVmaW5lZCInKTsKIGJ1dHRvbi5zZXRBdHRyaWJ1dGUoJ2Zvcm1F
bmN0eXBlJywgdW5kZWZpbmVkKTsKLXNob3VsZEJlKCdidXR0b24uZm9ybUVuY3R5cGUnLCAnInVu
ZGVmaW5lZCInKTsKK3Nob3VsZEJlKCdidXR0b24uZm9ybUVuY3R5cGUnLCAnImFwcGxpY2F0aW9u
L3gtd3d3LWZvcm0tdXJsZW5jb2RlZCInKTsKIGJ1dHRvbi5mb3JtTWV0aG9kID0gdW5kZWZpbmVk
Owotc2hvdWxkQmUoJ2J1dHRvbi5mb3JtTWV0aG9kJywgJyJ1bmRlZmluZWQiJyk7CitzaG91bGRC
ZSgnYnV0dG9uLmZvcm1NZXRob2QnLCAnImdldCInKTsKIHNob3VsZEJlKCdidXR0b24uZ2V0QXR0
cmlidXRlKCJmb3JtTWV0aG9kIiknLCAnInVuZGVmaW5lZCInKTsKIGJ1dHRvbi5zZXRBdHRyaWJ1
dGUoJ2Zvcm1NZXRob2QnLCB1bmRlZmluZWQpOwotc2hvdWxkQmUoJ2J1dHRvbi5mb3JtTWV0aG9k
JywgJyJ1bmRlZmluZWQiJyk7CitzaG91bGRCZSgnYnV0dG9uLmZvcm1NZXRob2QnLCAnImdldCIn
KTsKIGJ1dHRvbi5mb3JtVGFyZ2V0ID0gdW5kZWZpbmVkOwogc2hvdWxkQmUoJ2J1dHRvbi5mb3Jt
VGFyZ2V0JywgJyJ1bmRlZmluZWQiJyk7CiBzaG91bGRCZSgnYnV0dG9uLmdldEF0dHJpYnV0ZSgi
Zm9ybVRhcmdldCIpJywgJyJ1bmRlZmluZWQiJyk7CiBidXR0b24uc2V0QXR0cmlidXRlKCdmb3Jt
VGFyZ2V0JywgdW5kZWZpbmVkKTsKIHNob3VsZEJlKCdidXR0b24uZm9ybVRhcmdldCcsICcidW5k
ZWZpbmVkIicpOwogCitkZWJ1ZygnJyk7CiBkZWJ1ZygnU2V0dGluZyBub24tc3RyaW5nIGZvciBi
dXR0b246Jyk7CiBidXR0b24uZm9ybUVuY3R5cGUgPSAyNTY7Ci1zaG91bGRCZSgnYnV0dG9uLmZv
cm1FbmN0eXBlJywgJyIyNTYiJyk7CitzaG91bGRCZSgnYnV0dG9uLmZvcm1FbmN0eXBlJywgJyJh
cHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQiJyk7CiBzaG91bGRCZSgnYnV0dG9uLmdl
dEF0dHJpYnV0ZSgiZm9ybUVuY3R5cGUiKScsICciMjU2IicpOwogYnV0dG9uLnNldEF0dHJpYnV0
ZSgnZm9ybUVuY3R5cGUnLCA1MTIpOwotc2hvdWxkQmUoJ2J1dHRvbi5mb3JtRW5jdHlwZScsICci
NTEyIicpOworc2hvdWxkQmUoJ2J1dHRvbi5mb3JtRW5jdHlwZScsICciYXBwbGljYXRpb24veC13
d3ctZm9ybS11cmxlbmNvZGVkIicpOwogYnV0dG9uLmZvcm1NZXRob2QgPSAxMjg7Ci1zaG91bGRC
ZSgnYnV0dG9uLmZvcm1NZXRob2QnLCAnIjEyOCInKTsKK3Nob3VsZEJlKCdidXR0b24uZm9ybU1l
dGhvZCcsICciZ2V0IicpOwogc2hvdWxkQmUoJ2J1dHRvbi5nZXRBdHRyaWJ1dGUoImZvcm1NZXRo
b2QiKScsICciMTI4IicpOwogYnV0dG9uLnNldEF0dHJpYnV0ZSgnZm9ybU1ldGhvZCcsIDE3KTsK
LXNob3VsZEJlKCdidXR0b24uZm9ybU1ldGhvZCcsICciMTciJyk7CitzaG91bGRCZSgnYnV0dG9u
LmZvcm1NZXRob2QnLCAnImdldCInKTsKIGJ1dHRvbi5mb3JtVGFyZ2V0ID0gMTAwOwogc2hvdWxk
QmUoJ2J1dHRvbi5mb3JtVGFyZ2V0JywgJyIxMDAiJyk7CiBzaG91bGRCZSgnYnV0dG9uLmdldEF0
dHJpYnV0ZSgiZm9ybVRhcmdldCIpJywgJyIxMDAiJyk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9mYXN0L2Zvcm1zL3N1Ym1pdC1mb3JtLWF0dHJpYnV0ZXMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvZmFzdC9mb3Jtcy9zdWJtaXQtZm9ybS1hdHRyaWJ1dGVzLWV4cGVjdGVkLnR4dAppbmRl
eCA5MzBlNTNlNTU0YTEzNWE5MTc2NGMwN2Y4M2QxMTZlYjMyMjU1NjdlLi4yNWE5MDAwOGZjOTc5
YWQ2ZTMzNWI5MTdiMDhlOWJlM2U3NzYxOTBkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0
L2Zvcm1zL3N1Ym1pdC1mb3JtLWF0dHJpYnV0ZXMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRl
c3RzL2Zhc3QvZm9ybXMvc3VibWl0LWZvcm0tYXR0cmlidXRlcy1leHBlY3RlZC50eHQKQEAgLTUs
MTAzICs1LDExMCBAQCBPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1Mi
IG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURQogCiBPcmRpbmFyeSB2YWx1ZXMg
Zm9yIGlucHV0OgogUEFTUyBpbnB1dC5mb3JtQWN0aW9uIGlzICIiCi1QQVNTIGlucHV0LmZvcm1F
bmN0eXBlIGlzICIiCi1QQVNTIGlucHV0LmZvcm1NZXRob2QgaXMgIiIKK1BBU1MgaW5wdXQuZm9y
bUVuY3R5cGUgaXMgImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCIKK1BBU1MgaW5w
dXQuZm9ybU1ldGhvZCBpcyAiZ2V0IgogUEFTUyBpbnB1dC5mb3JtVGFyZ2V0IGlzICIiCiBQQVNT
IGlucHV0LmZvcm1BY3Rpb24gaXMgImh0dHA6Ly9sb2NhbGhvc3QvIgogUEFTUyBpbnB1dC5mb3Jt
QWN0aW9uIGlzICJodHRwOi8vbG9jYWxob3N0LyIKIFBBU1MgaW5wdXQuZm9ybUVuY3R5cGUgaXMg
InRleHQvcGxhaW4iCi1QQVNTIGlucHV0LmZvcm1FbmN0eXBlIGlzICJuYSIKLVBBU1MgaW5wdXQu
Zm9ybU1ldGhvZCBpcyAiR0VUIgotUEFTUyBpbnB1dC5mb3JtTWV0aG9kIGlzICJuaSIKK1BBU1Mg
aW5wdXQuZm9ybUVuY3R5cGUgaXMgImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCIK
K1BBU1MgaW5wdXQuZm9ybU1ldGhvZCBpcyAiZ2V0IgorUEFTUyBpbnB1dC5mb3JtTWV0aG9kIGlz
ICJnZXQiCiBQQVNTIGlucHV0LmZvcm1UYXJnZXQgaXMgIl9ibGFuayIKIFBBU1MgaW5wdXQuZm9y
bVRhcmdldCBpcyAibnUiCiBQQVNTIGlucHV0LmZvcm1BY3Rpb24gaXMgImh0dHA6Ly9leGFtcGxl
LmNvbS8iCiBQQVNTIGlucHV0LmZvcm1BY3Rpb24gaXMgImh0dHA6Ly9leGFtcGxlLmNvbS8iCiBQ
QVNTIGlucHV0LmZvcm1FbmN0eXBlIGlzICJ0ZXh0L3BsYWluIgotUEFTUyBpbnB1dC5mb3JtRW5j
dHlwZSBpcyAibm90YSIKLVBBU1MgaW5wdXQuZm9ybU1ldGhvZCBpcyAiUE9TVCIKLVBBU1MgaW5w
dXQuZm9ybU1ldGhvZCBpcyAibmV0YSIKK1BBU1MgaW5wdXQuZm9ybUVuY3R5cGUgaXMgImFwcGxp
Y2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCIKK1BBU1MgaW5wdXQuZm9ybU1ldGhvZCBpcyAi
cG9zdCIKK1BBU1MgaW5wdXQuZm9ybU1ldGhvZCBpcyAiZ2V0IgogUEFTUyBpbnB1dC5mb3JtVGFy
Z2V0IGlzICJodHRwOi8vZXhhbXBsZS5jb20iCiBQQVNTIGlucHV0LmZvcm1UYXJnZXQgaXMgIm50
YSIKKwogU2V0dGluZyBudWxsIGZvciBpbnB1dDoKLVBBU1MgaW5wdXQuZm9ybUVuY3R5cGUgaXMg
IiIKK1BBU1MgaW5wdXQuZm9ybUVuY3R5cGUgaXMgImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJs
ZW5jb2RlZCIKIFBBU1MgaW5wdXQuZ2V0QXR0cmlidXRlKCJmb3JtRW5jdHlwZSIpIGlzIG51bGwK
LVBBU1MgaW5wdXQuZm9ybUVuY3R5cGUgaXMgIm51bGwiCi1QQVNTIGlucHV0LmZvcm1NZXRob2Qg
aXMgIiIKK1BBU1MgaW5wdXQuZm9ybUVuY3R5cGUgaXMgImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0t
dXJsZW5jb2RlZCIKK1BBU1MgaW5wdXQuZm9ybU1ldGhvZCBpcyAiZ2V0IgogUEFTUyBpbnB1dC5n
ZXRBdHRyaWJ1dGUoImZvcm1NZXRob2QiKSBpcyBudWxsCi1QQVNTIGlucHV0LmZvcm1NZXRob2Qg
aXMgIm51bGwiCitQQVNTIGlucHV0LmZvcm1NZXRob2QgaXMgImdldCIKIFBBU1MgaW5wdXQuZm9y
bVRhcmdldCBpcyAiIgogUEFTUyBpbnB1dC5nZXRBdHRyaWJ1dGUoImZvcm1UYXJnZXQiKSBpcyBu
dWxsCiBQQVNTIGlucHV0LmZvcm1UYXJnZXQgaXMgIm51bGwiCisKIFNldHRpbmcgdW5kZWZpbmVk
IGZvciBpbnB1dDoKLVBBU1MgaW5wdXQuZm9ybUVuY3R5cGUgaXMgInVuZGVmaW5lZCIKK1BBU1Mg
aW5wdXQuZm9ybUVuY3R5cGUgaXMgImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCIK
IFBBU1MgaW5wdXQuZ2V0QXR0cmlidXRlKCJmb3JtRW5jdHlwZSIpIGlzICJ1bmRlZmluZWQiCi1Q
QVNTIGlucHV0LmZvcm1FbmN0eXBlIGlzICJ1bmRlZmluZWQiCi1QQVNTIGlucHV0LmZvcm1NZXRo
b2QgaXMgInVuZGVmaW5lZCIKK1BBU1MgaW5wdXQuZm9ybUVuY3R5cGUgaXMgImFwcGxpY2F0aW9u
L3gtd3d3LWZvcm0tdXJsZW5jb2RlZCIKK1BBU1MgaW5wdXQuZm9ybU1ldGhvZCBpcyAiZ2V0Igog
UEFTUyBpbnB1dC5nZXRBdHRyaWJ1dGUoImZvcm1NZXRob2QiKSBpcyAidW5kZWZpbmVkIgotUEFT
UyBpbnB1dC5mb3JtTWV0aG9kIGlzICJ1bmRlZmluZWQiCitQQVNTIGlucHV0LmZvcm1NZXRob2Qg
aXMgImdldCIKIFBBU1MgaW5wdXQuZm9ybVRhcmdldCBpcyAidW5kZWZpbmVkIgogUEFTUyBpbnB1
dC5nZXRBdHRyaWJ1dGUoImZvcm1UYXJnZXQiKSBpcyAidW5kZWZpbmVkIgogUEFTUyBpbnB1dC5m
b3JtVGFyZ2V0IGlzICJ1bmRlZmluZWQiCisKIFNldHRpbmcgbm9uLXN0cmluZyBmb3IgaW5wdXQ6
Ci1QQVNTIGlucHV0LmZvcm1FbmN0eXBlIGlzICIyNTYiCitQQVNTIGlucHV0LmZvcm1FbmN0eXBl
IGlzICJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQiCiBQQVNTIGlucHV0LmdldEF0
dHJpYnV0ZSgiZm9ybUVuY3R5cGUiKSBpcyAiMjU2IgotUEFTUyBpbnB1dC5mb3JtRW5jdHlwZSBp
cyAiMjU2IgotUEFTUyBpbnB1dC5mb3JtTWV0aG9kIGlzICIyNTYiCitQQVNTIGlucHV0LmZvcm1F
bmN0eXBlIGlzICJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQiCitQQVNTIGlucHV0
LmZvcm1NZXRob2QgaXMgImdldCIKIFBBU1MgaW5wdXQuZ2V0QXR0cmlidXRlKCJmb3JtTWV0aG9k
IikgaXMgIjI1NiIKLVBBU1MgaW5wdXQuZm9ybU1ldGhvZCBpcyAiMjU2IgorUEFTUyBpbnB1dC5m
b3JtTWV0aG9kIGlzICJnZXQiCiBQQVNTIGlucHV0LmZvcm1UYXJnZXQgaXMgIjI1NiIKIFBBU1Mg
aW5wdXQuZ2V0QXR0cmlidXRlKCJmb3JtVGFyZ2V0IikgaXMgIjI1NiIKIFBBU1MgaW5wdXQuZm9y
bVRhcmdldCBpcyAiMjU2IgorCiBPcmRpbmFyeSB2YWx1ZXMgZm9yIGJ1dHRvbjoKIFBBU1MgYnV0
dG9uLmZvcm1BY3Rpb24gaXMgIiIKLVBBU1MgYnV0dG9uLmZvcm1FbmN0eXBlIGlzICIiCi1QQVNT
IGJ1dHRvbi5mb3JtTWV0aG9kIGlzICIiCitQQVNTIGJ1dHRvbi5mb3JtRW5jdHlwZSBpcyAiYXBw
bGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkIgorUEFTUyBidXR0b24uZm9ybU1ldGhvZCBp
cyAiZ2V0IgogUEFTUyBidXR0b24uZm9ybVRhcmdldCBpcyAiIgogUEFTUyBidXR0b24uZm9ybUFj
dGlvbiBpcyAiaHR0cDovL2xvY2FsaG9zdC8iCiBQQVNTIGJ1dHRvbi5mb3JtQWN0aW9uIGlzICJo
dHRwOi8vbG9jYWxob3N0LyIKIFBBU1MgYnV0dG9uLmZvcm1FbmN0eXBlIGlzICJ0ZXh0L3BsYWlu
IgotUEFTUyBidXR0b24uZm9ybUVuY3R5cGUgaXMgIm5hIgotUEFTUyBidXR0b24uZm9ybU1ldGhv
ZCBpcyAiR0VUIgotUEFTUyBidXR0b24uZm9ybU1ldGhvZCBpcyAibmEiCitQQVNTIGJ1dHRvbi5m
b3JtRW5jdHlwZSBpcyAiYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkIgorUEFTUyBi
dXR0b24uZm9ybU1ldGhvZCBpcyAiZ2V0IgorUEFTUyBidXR0b24uZm9ybU1ldGhvZCBpcyAiZ2V0
IgogUEFTUyBidXR0b24uZm9ybVRhcmdldCBpcyAiX2JsYW5rIgogUEFTUyBidXR0b24uZm9ybVRh
cmdldCBpcyAibmEiCiBQQVNTIGJ1dHRvbi5mb3JtQWN0aW9uIGlzICJodHRwOi8vZXhhbXBsZS5j
b20vIgogUEFTUyBidXR0b24uZm9ybUFjdGlvbiBpcyAiaHR0cDovL2V4YW1wbGUuY29tLyIKIFBB
U1MgYnV0dG9uLmZvcm1FbmN0eXBlIGlzICJ0ZXh0L3BsYWluIgotUEFTUyBidXR0b24uZm9ybUVu
Y3R5cGUgaXMgIm5vdGEiCi1QQVNTIGJ1dHRvbi5mb3JtTWV0aG9kIGlzICJQT1NUIgotUEFTUyBi
dXR0b24uZm9ybU1ldGhvZCBpcyAibm90YSIKK1BBU1MgYnV0dG9uLmZvcm1FbmN0eXBlIGlzICJh
cHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQiCitQQVNTIGJ1dHRvbi5mb3JtTWV0aG9k
IGlzICJwb3N0IgorUEFTUyBidXR0b24uZm9ybU1ldGhvZCBpcyAiZ2V0IgogUEFTUyBidXR0b24u
Zm9ybVRhcmdldCBpcyAiaHR0cDovL2V4YW1wbGUuY29tIgogUEFTUyBidXR0b24uZm9ybVRhcmdl
dCBpcyAibm90YSIKKwogU2V0dGluZyBudWxsIGZvciBidXR0b246Ci1QQVNTIGJ1dHRvbi5mb3Jt
RW5jdHlwZSBpcyAiIgorUEFTUyBidXR0b24uZm9ybUVuY3R5cGUgaXMgImFwcGxpY2F0aW9uL3gt
d3d3LWZvcm0tdXJsZW5jb2RlZCIKIFBBU1MgYnV0dG9uLmdldEF0dHJpYnV0ZSgiZm9ybUVuY3R5
cGUiKSBpcyBudWxsCi1QQVNTIGJ1dHRvbi5mb3JtRW5jdHlwZSBpcyAibnVsbCIKLVBBU1MgYnV0
dG9uLmZvcm1NZXRob2QgaXMgIiIKK1BBU1MgYnV0dG9uLmZvcm1FbmN0eXBlIGlzICJhcHBsaWNh
dGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQiCitQQVNTIGJ1dHRvbi5mb3JtTWV0aG9kIGlzICJn
ZXQiCiBQQVNTIGJ1dHRvbi5nZXRBdHRyaWJ1dGUoImZvcm1NZXRob2QiKSBpcyBudWxsCi1QQVNT
IGJ1dHRvbi5mb3JtTWV0aG9kIGlzICJudWxsIgorUEFTUyBidXR0b24uZm9ybU1ldGhvZCBpcyAi
Z2V0IgogUEFTUyBidXR0b24uZm9ybVRhcmdldCBpcyAiIgogUEFTUyBidXR0b24uZ2V0QXR0cmli
dXRlKCJmb3JtVGFyZ2V0IikgaXMgbnVsbAogUEFTUyBidXR0b24uZm9ybVRhcmdldCBpcyAibnVs
bCIKKwogU2V0dGluZyB1bmRlZmluZWQgZm9yIGJ1dHRvbjoKLVBBU1MgYnV0dG9uLmZvcm1FbmN0
eXBlIGlzICJ1bmRlZmluZWQiCitQQVNTIGJ1dHRvbi5mb3JtRW5jdHlwZSBpcyAiYXBwbGljYXRp
b24veC13d3ctZm9ybS11cmxlbmNvZGVkIgogUEFTUyBidXR0b24uZ2V0QXR0cmlidXRlKCJmb3Jt
RW5jdHlwZSIpIGlzICJ1bmRlZmluZWQiCi1QQVNTIGJ1dHRvbi5mb3JtRW5jdHlwZSBpcyAidW5k
ZWZpbmVkIgotUEFTUyBidXR0b24uZm9ybU1ldGhvZCBpcyAidW5kZWZpbmVkIgorUEFTUyBidXR0
b24uZm9ybUVuY3R5cGUgaXMgImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCIKK1BB
U1MgYnV0dG9uLmZvcm1NZXRob2QgaXMgImdldCIKIFBBU1MgYnV0dG9uLmdldEF0dHJpYnV0ZSgi
Zm9ybU1ldGhvZCIpIGlzICJ1bmRlZmluZWQiCi1QQVNTIGJ1dHRvbi5mb3JtTWV0aG9kIGlzICJ1
bmRlZmluZWQiCitQQVNTIGJ1dHRvbi5mb3JtTWV0aG9kIGlzICJnZXQiCiBQQVNTIGJ1dHRvbi5m
b3JtVGFyZ2V0IGlzICJ1bmRlZmluZWQiCiBQQVNTIGJ1dHRvbi5nZXRBdHRyaWJ1dGUoImZvcm1U
YXJnZXQiKSBpcyAidW5kZWZpbmVkIgogUEFTUyBidXR0b24uZm9ybVRhcmdldCBpcyAidW5kZWZp
bmVkIgorCiBTZXR0aW5nIG5vbi1zdHJpbmcgZm9yIGJ1dHRvbjoKLVBBU1MgYnV0dG9uLmZvcm1F
bmN0eXBlIGlzICIyNTYiCitQQVNTIGJ1dHRvbi5mb3JtRW5jdHlwZSBpcyAiYXBwbGljYXRpb24v
eC13d3ctZm9ybS11cmxlbmNvZGVkIgogUEFTUyBidXR0b24uZ2V0QXR0cmlidXRlKCJmb3JtRW5j
dHlwZSIpIGlzICIyNTYiCi1QQVNTIGJ1dHRvbi5mb3JtRW5jdHlwZSBpcyAiNTEyIgotUEFTUyBi
dXR0b24uZm9ybU1ldGhvZCBpcyAiMTI4IgorUEFTUyBidXR0b24uZm9ybUVuY3R5cGUgaXMgImFw
cGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCIKK1BBU1MgYnV0dG9uLmZvcm1NZXRob2Qg
aXMgImdldCIKIFBBU1MgYnV0dG9uLmdldEF0dHJpYnV0ZSgiZm9ybU1ldGhvZCIpIGlzICIxMjgi
Ci1QQVNTIGJ1dHRvbi5mb3JtTWV0aG9kIGlzICIxNyIKK1BBU1MgYnV0dG9uLmZvcm1NZXRob2Qg
aXMgImdldCIKIFBBU1MgYnV0dG9uLmZvcm1UYXJnZXQgaXMgIjEwMCIKIFBBU1MgYnV0dG9uLmdl
dEF0dHJpYnV0ZSgiZm9ybVRhcmdldCIpIGlzICIxMDAiCiBQQVNTIGJ1dHRvbi5mb3JtVGFyZ2V0
IGlzICIyODEiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2Uv
V2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjU1MGI3MmE3YTMwNGM4NGFkOTA1YzYyNjE3NjY5NTA5
NzBlZWNmMS4uNTYyNTUyMzQ5MGNlYjNlZDQ0MDc0YTc3NmQ0N2VkMjJiN2UwZjIzOSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDYxIEBACisyMDExLTA5LTI3ICBLZW50IFRhbXVyYSAgPHRrZW50QGNo
cm9taXVtLm9yZz4KKworICAgICAgICBtZXRob2QvZW5jdHlwZS9mb3JtTWV0aG9kL2Zvcm1FbmN0
eXBlIHByb3BlcnRpZXMgc2hvdWxkIGJlIGxpbWl0ZWQgdG8ga25vd24gdmFsdWVzLgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Njg4ODcKKworICAgICAg
ICBSZXZpZXdlZCBieSBIYWppbWUgTW9yaXRhLgorCisgICAgICAgIEFjY29yZGluZyB0byB0aGUg
c3RhbmRhcmQgYW5kIG90aGVyIGJyb3dzZXIgYmVoYXZpb3JzLCB0aGUKKyAgICAgICAgZm9sbG93
aW5nIElETCBwcm9wZXJ0aWVzIHNob3VsZCBiZSByZWZsZWN0ZWQgdG8gdGhlIGNvcnJlc3BvbmRp
bmcKKyAgICAgICAgSFRNTCBhdHRyaWJ1dGVzIG9uIHNldHRpbmcsIGJ1dCBzaG91bGQgcmV0dXJu
IG5vcm1hbGl6ZWQgdmFsdWVzIG9uCisgICAgICAgIGdldHRpbmcuCisgICAgICAgIC0gSFRNTEZv
cm1FbGVtZW50OjptZXRob2QKKyAgICAgICAgLSBIVE1MRm9ybUVsZW1lbnQ6OmVuY3R5cGUKKyAg
ICAgICAgLSBIVE1MSW5wdXRFbGVtZW50Ojpmb3JtTWV0aG9kCisgICAgICAgIC0gSFRNTElucHV0
RWxlbWVudDo6Zm9ybUVuY3R5cGUKKyAgICAgICAgLSBIVE1MQnV0dG9uRWxlbWVudDo6Zm9ybU1l
dGhvZAorICAgICAgICAtIEhUTUxCdXR0b25FbGVtZW50Ojpmb3JtRW5jdHlwZQorCisgICAgICAg
IFRlc3RzOiBmYXN0L2Zvcm1zL2VuY3R5cGUtYXR0cmlidXRlLmh0bWwKKyAgICAgICAgICAgICAg
IGZhc3QvZm9ybXMvbWV0aG9kLWF0dHJpYnV0ZS5odG1sCisKKyAgICAgICAgKiBodG1sL0hUTUxC
dXR0b25FbGVtZW50LmlkbDoKKyAgICAgICAgUmVwbGFjZSAnUmVmbGVjdCcgd2l0aCAnQ29udmVy
dE51bGxUb051bGxTdHJpbmcnIGluIG9yZGVyIHRvIHVzZSBhCisgICAgICAgIGdldHRlciBmdW5j
dGlvbi4KKyAgICAgICAgKiBodG1sL0hUTUxGb3JtQ29udHJvbEVsZW1lbnQuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6SFRNTEZvcm1Db250cm9sRWxlbWVudDo6Zm9ybUVuY3R5cGUpOgorICAgICAg
ICBOb3JtYWxpemVzIHRoZSB2YWx1ZSBieSBwYXJzZUVuY29kaW5nVHlwZSgpLgorICAgICAgICAo
V2ViQ29yZTo6SFRNTEZvcm1Db250cm9sRWxlbWVudDo6c2V0Rm9ybUVuY3R5cGUpOgorICAgICAg
ICBTaW1wbHkgY2FsbHMgc2V0QXR0cmlidXRlKCkKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxGb3Jt
Q29udHJvbEVsZW1lbnQ6OmZvcm1NZXRob2QpOgorICAgICAgICBOb3JtYWxpemVzIHRoZSB2YWx1
ZSBieSBwYXJzZU1ldGhvZFR5cGUoKS4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxGb3JtQ29udHJv
bEVsZW1lbnQ6OnNldEZvcm1NZXRob2QpOgorICAgICAgICBTaW1wbHkgY2FsbHMgc2V0QXR0cmli
dXRlKCkKKyAgICAgICAgKiBodG1sL0hUTUxGb3JtQ29udHJvbEVsZW1lbnQuaDoKKyAgICAgICAg
KiBodG1sL0hUTUxGb3JtRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MRm9ybUVs
ZW1lbnQ6OnBhcnNlTWFwcGVkQXR0cmlidXRlKToKKyAgICAgICAgRm9sbG93IHRoZSBBdHRyaWJ1
dGVzIGZ1bmN0aW9uIHJlbmFtaW5nLgorICAgICAgICAoV2ViQ29yZTo6SFRNTEZvcm1FbGVtZW50
OjptZXRob2QpOgorICAgICAgICBOb3JtYWxpemVzIHRoZSB2YWx1ZSBieSBwYXJzZU1ldGhvZFR5
cGUoKS4KKyAgICAgICAgKiBodG1sL0hUTUxGb3JtRWxlbWVudC5pZGw6CisgICAgICAgIFJlcGxh
Y2UgJ1JlZmxlY3QnIHdpdGggJ0NvbnZlcnROdWxsVG9OdWxsU3RyaW5nJyBpbiBvcmRlciB0byB1
c2UgYQorICAgICAgICBnZXR0ZXIgZnVuY3Rpb24uCisgICAgICAgICogaHRtbC9IVE1MSW5wdXRF
bGVtZW50LmlkbDogZGl0dG8uCisgICAgICAgICogbG9hZGVyL0Zvcm1TdWJtaXNzaW9uLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkZvcm1TdWJtaXNzaW9uOjpBdHRyaWJ1dGVzOjpwYXJzZUVuY29k
aW5nVHlwZSk6CisgICAgICAgIE5ldyBmdW5jdGlvbiBtYWRlIGZyb20gYSBwYXJ0IG9mIG9sZCBw
YXJzZUVuY29kaW5nVHlwZSgpLgorICAgICAgICAoV2ViQ29yZTo6Rm9ybVN1Ym1pc3Npb246OkF0
dHJpYnV0ZXM6OnVwZGF0ZUVuY29kaW5nVHlwZSk6CisgICAgICAgIFJlbmFtZWQgZnJvbSBwYXJz
ZUVuY29kaW5nVHlwZSgpLgorICAgICAgICAoV2ViQ29yZTo6Rm9ybVN1Ym1pc3Npb246OkF0dHJp
YnV0ZXM6OnBhcnNlTWV0aG9kVHlwZSk6CisgICAgICAgIE5ldyBmdW5jdGlvbiBtYWRlIGZyb20g
YSBwYXJ0IG9mIG9sZCBwYXJzZU1ldGhvZFR5cGUoKS4KKyAgICAgICAgKFdlYkNvcmU6OkZvcm1T
dWJtaXNzaW9uOjpBdHRyaWJ1dGVzOjp1cGRhdGVNZXRob2RUeXBlKToKKyAgICAgICAgUmVuYW1l
ZCBmcm9tIHBhcnNlTWV0aG9kVHlwZSgpLgorICAgICAgICAoV2ViQ29yZTo6Rm9ybVN1Ym1pc3Np
b246OmNyZWF0ZSk6CisgICAgICAgIEZvbGxvdyB0aGUgQXR0cmlidXRlcyBmdW5jdGlvbiByZW5h
bWluZy4KKyAgICAgICAgKiBsb2FkZXIvRm9ybVN1Ym1pc3Npb24uaDoKKyAgICAgICAgKFdlYkNv
cmU6OkZvcm1TdWJtaXNzaW9uOjpBdHRyaWJ1dGVzOjptZXRob2RTdHJpbmcpOgorICAgICAgICBB
IGhlbHBlciBmdW5jdGlvbiB0byBwcm92aWRlIG5vcm1hbGl6ZWQgc3RyaW5ncyBmb3IgRm9ybVN1
Ym1pc3Npb246Ok1ldGhvZC4KKwogMjAxMS0xMC0wMiAgU2FtIFdlaW5pZyAgPHNhbUB3ZWJraXQu
b3JnPgogCiAgICAgICAgIFN0cmVuZ3RoIHJlZHVjZSBNYWMgb25seSBGcmFtZTo6c2VhcmNoRm9y
TGFiZWxzQmVmb3JlRWxlbWVudCBhbmQgRnJhbWU6Om1hdGNoTGFiZWxzQWdhaW5zdEVsZW1lbnQg
aW50byBjYWxsZXJzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxCdXR0b25F
bGVtZW50LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEJ1dHRvbkVsZW1lbnQuaWRsCmlu
ZGV4IDJmYmJhNDFmM2Y3NjYwM2NmYzJiZGNiZjUyZjZiYTllMmQ1OWE5YzEuLjYzYzQ3MWJiMzA4
MTM2YjAwNDZkNGU4NmRiNjE1NWUxNjJhN2RhZTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTEJ1dHRvbkVsZW1lbnQuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRN
TEJ1dHRvbkVsZW1lbnQuaWRsCkBAIC0yNCw4ICsyNCw4IEBAIG1vZHVsZSBodG1sIHsKICAgICAg
ICAgcmVhZG9ubHkgYXR0cmlidXRlIEhUTUxGb3JtRWxlbWVudCBmb3JtOwogCiAgICAgICAgIGF0
dHJpYnV0ZSBbUmVmbGVjdCwgVVJMXSBET01TdHJpbmcgZm9ybUFjdGlvbjsKLSAgICAgICAgYXR0
cmlidXRlIFtSZWZsZWN0XSBET01TdHJpbmcgZm9ybUVuY3R5cGU7Ci0gICAgICAgIGF0dHJpYnV0
ZSBbUmVmbGVjdF0gRE9NU3RyaW5nIGZvcm1NZXRob2Q7CisgICAgICAgIGF0dHJpYnV0ZSBbQ29u
dmVydE51bGxUb051bGxTdHJpbmddIERPTVN0cmluZyBmb3JtRW5jdHlwZTsKKyAgICAgICAgYXR0
cmlidXRlIFtDb252ZXJ0TnVsbFRvTnVsbFN0cmluZ10gRE9NU3RyaW5nIGZvcm1NZXRob2Q7CiAg
ICAgICAgIGF0dHJpYnV0ZSBbUmVmbGVjdF0gYm9vbGVhbiBmb3JtTm9WYWxpZGF0ZTsKICAgICAg
ICAgYXR0cmlidXRlIFtSZWZsZWN0XSBET01TdHJpbmcgZm9ybVRhcmdldDsKICAgICAgICAgcmVh
ZG9ubHkgYXR0cmlidXRlIFZhbGlkaXR5U3RhdGUgdmFsaWRpdHk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtQ29udHJvbEVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MRm9ybUNvbnRyb2xFbGVtZW50LmNwcAppbmRleCBiZWFlMWNhM2VmY2EzYjUw
MTE3ZWY3YWE1YjYyOWMzNDQ0OTZmZDEzLi5lZTY5NTdlODFjYTVjOGViM2ZjNGMxZDhkZTFhNTJm
ZTI3MGRiNTc0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtQ29udHJv
bEVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1Db250cm9sRWxl
bWVudC5jcHAKQEAgLTgxLDYgKzgxLDI2IEBAIHZvaWQgSFRNTEZvcm1Db250cm9sRWxlbWVudDo6
ZGV0YWNoKCkKICAgICBIVE1MRWxlbWVudDo6ZGV0YWNoKCk7CiB9CiAKK1N0cmluZyBIVE1MRm9y
bUNvbnRyb2xFbGVtZW50Ojpmb3JtRW5jdHlwZSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIEZvcm1T
dWJtaXNzaW9uOjpBdHRyaWJ1dGVzOjpwYXJzZUVuY29kaW5nVHlwZShmYXN0R2V0QXR0cmlidXRl
KGZvcm1lbmN0eXBlQXR0cikpOworfQorCit2b2lkIEhUTUxGb3JtQ29udHJvbEVsZW1lbnQ6OnNl
dEZvcm1FbmN0eXBlKGNvbnN0IFN0cmluZyYgdmFsdWUpCit7CisgICAgc2V0QXR0cmlidXRlKGZv
cm1lbmN0eXBlQXR0ciwgdmFsdWUpOworfQorCitTdHJpbmcgSFRNTEZvcm1Db250cm9sRWxlbWVu
dDo6Zm9ybU1ldGhvZCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIEZvcm1TdWJtaXNzaW9uOjpBdHRy
aWJ1dGVzOjptZXRob2RTdHJpbmcoRm9ybVN1Ym1pc3Npb246OkF0dHJpYnV0ZXM6OnBhcnNlTWV0
aG9kVHlwZShmYXN0R2V0QXR0cmlidXRlKGZvcm1tZXRob2RBdHRyKSkpOworfQorCit2b2lkIEhU
TUxGb3JtQ29udHJvbEVsZW1lbnQ6OnNldEZvcm1NZXRob2QoY29uc3QgU3RyaW5nJiB2YWx1ZSkK
K3sKKyAgICBzZXRBdHRyaWJ1dGUoZm9ybW1ldGhvZEF0dHIsIHZhbHVlKTsKK30KKwogYm9vbCBI
VE1MRm9ybUNvbnRyb2xFbGVtZW50Ojpmb3JtTm9WYWxpZGF0ZSgpIGNvbnN0CiB7CiAgICAgcmV0
dXJuIGZhc3RIYXNBdHRyaWJ1dGUoZm9ybW5vdmFsaWRhdGVBdHRyKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1Db250cm9sRWxlbWVudC5oIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MRm9ybUNvbnRyb2xFbGVtZW50LmgKaW5kZXggNTljOTZjMmM3NGEwYzMzNjE0
ZjEzNzZlZjJiOWRkMTM2ZGYxNTMzMi4uMzc1MjE2MWM4NTUyZDliNjk5NmExYTI1NGNmNTcyZGI3
M2E4ZmIyNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUNvbnRyb2xF
bGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUNvbnRyb2xFbGVtZW50
LmgKQEAgLTQzLDYgKzQzLDEwIEBAIHB1YmxpYzoKIAogICAgIEhUTUxGb3JtRWxlbWVudCogZm9y
bSgpIGNvbnN0IHsgcmV0dXJuIEZvcm1Bc3NvY2lhdGVkRWxlbWVudDo6Zm9ybSgpOyB9CiAKKyAg
ICBTdHJpbmcgZm9ybUVuY3R5cGUoKSBjb25zdDsKKyAgICB2b2lkIHNldEZvcm1FbmN0eXBlKGNv
bnN0IFN0cmluZyYpOworICAgIFN0cmluZyBmb3JtTWV0aG9kKCkgY29uc3Q7CisgICAgdm9pZCBz
ZXRGb3JtTWV0aG9kKGNvbnN0IFN0cmluZyYpOwogICAgIGJvb2wgZm9ybU5vVmFsaWRhdGUoKSBj
b25zdDsKIAogICAgIHZpcnR1YWwgdm9pZCByZXNldCgpIHsgfQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvaHRtbC9IVE1MRm9ybUVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9I
VE1MRm9ybUVsZW1lbnQuY3BwCmluZGV4IDVhYzViNjM0N2I3N2U4ZTFhY2U1ZTBkYjg1NmM5ODU0
YWYxODc2MDkuLjg4ZWY5NjJiZjU1OGNhNzNhZGUxMTcyNzYzZTYwOGM5M2QyNzFiYWEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1FbGVtZW50LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtRWxlbWVudC5jcHAKQEAgLTM3MCw5ICszNzAsOSBAQCB2
b2lkIEhUTUxGb3JtRWxlbWVudDo6cGFyc2VNYXBwZWRBdHRyaWJ1dGUoQXR0cmlidXRlKiBhdHRy
KQogICAgIGVsc2UgaWYgKGF0dHItPm5hbWUoKSA9PSB0YXJnZXRBdHRyKQogICAgICAgICBtX2F0
dHJpYnV0ZXMuc2V0VGFyZ2V0KGF0dHItPnZhbHVlKCkpOwogICAgIGVsc2UgaWYgKGF0dHItPm5h
bWUoKSA9PSBtZXRob2RBdHRyKQotICAgICAgICBtX2F0dHJpYnV0ZXMucGFyc2VNZXRob2RUeXBl
KGF0dHItPnZhbHVlKCkpOworICAgICAgICBtX2F0dHJpYnV0ZXMudXBkYXRlTWV0aG9kVHlwZShh
dHRyLT52YWx1ZSgpKTsKICAgICBlbHNlIGlmIChhdHRyLT5uYW1lKCkgPT0gZW5jdHlwZUF0dHIp
Ci0gICAgICAgIG1fYXR0cmlidXRlcy5wYXJzZUVuY29kaW5nVHlwZShhdHRyLT52YWx1ZSgpKTsK
KyAgICAgICAgbV9hdHRyaWJ1dGVzLnVwZGF0ZUVuY29kaW5nVHlwZShhdHRyLT52YWx1ZSgpKTsK
ICAgICBlbHNlIGlmIChhdHRyLT5uYW1lKCkgPT0gYWNjZXB0X2NoYXJzZXRBdHRyKQogICAgICAg
ICBtX2F0dHJpYnV0ZXMuc2V0QWNjZXB0Q2hhcnNldChhdHRyLT52YWx1ZSgpKTsKICAgICBlbHNl
IGlmIChhdHRyLT5uYW1lKCkgPT0gYXV0b2NvbXBsZXRlQXR0cikgewpAQCAtNTQ3LDcgKzU0Nyw3
IEBAIHZvaWQgSFRNTEZvcm1FbGVtZW50OjpzZXRFbmN0eXBlKGNvbnN0IFN0cmluZyAmdmFsdWUp
CiAKIFN0cmluZyBIVE1MRm9ybUVsZW1lbnQ6Om1ldGhvZCgpIGNvbnN0CiB7Ci0gICAgcmV0dXJu
IGdldEF0dHJpYnV0ZShtZXRob2RBdHRyKTsKKyAgICByZXR1cm4gRm9ybVN1Ym1pc3Npb246OkF0
dHJpYnV0ZXM6Om1ldGhvZFN0cmluZyhtX2F0dHJpYnV0ZXMubWV0aG9kKCkpOwogfQogCiB2b2lk
IEhUTUxGb3JtRWxlbWVudDo6c2V0TWV0aG9kKGNvbnN0IFN0cmluZyAmdmFsdWUpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtRWxlbWVudC5pZGwgYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0hUTUxGb3JtRWxlbWVudC5pZGwKaW5kZXggNWM3NzliNTM1MGQyNjI2OTE5Y2I3
ZGFhNWIwNTY1NjI1ZDc3MzE5Ni4uYzY5NjdlYWNmZTk5ODVlZTdlNTU2ZjEwOTlkZDM0ZWI1Mjli
YTZlNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUVsZW1lbnQuaWRs
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1FbGVtZW50LmlkbApAQCAtMzMsNyAr
MzMsNyBAQCBtb2R1bGUgaHRtbCB7CiAgICAgICAgIGF0dHJpYnV0ZSBbUmVmbGVjdCwgVVJMXSBE
T01TdHJpbmcgYWN0aW9uOwogICAgICAgICBhdHRyaWJ1dGUgW0NvbnZlcnROdWxsVG9OdWxsU3Ry
aW5nXSBET01TdHJpbmcgZW5jb2Rpbmc7CiAgICAgICAgIGF0dHJpYnV0ZSBbQ29udmVydE51bGxU
b051bGxTdHJpbmddIERPTVN0cmluZyBlbmN0eXBlOwotICAgICAgICBhdHRyaWJ1dGUgW1JlZmxl
Y3RdIERPTVN0cmluZyBtZXRob2Q7CisgICAgICAgIGF0dHJpYnV0ZSBbQ29udmVydE51bGxUb051
bGxTdHJpbmddIERPTVN0cmluZyBtZXRob2Q7CiAgICAgICAgIGF0dHJpYnV0ZSBbUmVmbGVjdF0g
RE9NU3RyaW5nIHRhcmdldDsKICAgICAgICAgYXR0cmlidXRlIFtSZWZsZWN0XSBET01TdHJpbmcg
YXV0b2NvbXBsZXRlOwogICAgICAgICAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTElucHV0RWxlbWVudC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxJbnB1dEVsZW1l
bnQuaWRsCmluZGV4IDQ0ZjE0YjQ0ZjExOTA4ODBlODI4NGEwOTVjNjVlMDFiZWM3YjQyODQuLmQz
YTFlZDdiZjdhZTZkYzIwYTYwZTM0M2FiZGQxNmE5OTQ1MWQwZjYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVudC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MSW5wdXRFbGVtZW50LmlkbApAQCAtMjUsOCArMjUsOCBAQCBtb2R1bGUgaHRtbCB7
CiAgICAgICAgIGF0dHJpYnV0ZSBbUmVmbGVjdD1jaGVja2VkXSBib29sZWFuIGRlZmF1bHRDaGVj
a2VkOwogICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgSFRNTEZvcm1FbGVtZW50IGZvcm07CiAg
ICAgICAgIGF0dHJpYnV0ZSBbUmVmbGVjdCwgVVJMXSBET01TdHJpbmcgZm9ybUFjdGlvbjsKLSAg
ICAgICAgYXR0cmlidXRlIFtSZWZsZWN0XSBET01TdHJpbmcgZm9ybUVuY3R5cGU7Ci0gICAgICAg
IGF0dHJpYnV0ZSBbUmVmbGVjdF0gRE9NU3RyaW5nIGZvcm1NZXRob2Q7CisgICAgICAgIGF0dHJp
YnV0ZSBbQ29udmVydE51bGxUb051bGxTdHJpbmddIERPTVN0cmluZyBmb3JtRW5jdHlwZTsKKyAg
ICAgICAgYXR0cmlidXRlIFtDb252ZXJ0TnVsbFRvTnVsbFN0cmluZ10gRE9NU3RyaW5nIGZvcm1N
ZXRob2Q7CiAgICAgICAgIGF0dHJpYnV0ZSBbUmVmbGVjdF0gYm9vbGVhbiBmb3JtTm9WYWxpZGF0
ZTsKICAgICAgICAgYXR0cmlidXRlIFtSZWZsZWN0XSBET01TdHJpbmcgZm9ybVRhcmdldDsKICAg
ICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIFZhbGlkaXR5U3RhdGUgdmFsaWRpdHk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRm9ybVN1Ym1pc3Npb24uY3BwIGIvU291cmNlL1dl
YkNvcmUvbG9hZGVyL0Zvcm1TdWJtaXNzaW9uLmNwcAppbmRleCAwMTM4NDk0NzViY2U5YTdjODUy
NjFhZGI2MWUwNzQyMzE1ZDI0ZDIzLi43MmU2MWY1ODViNjQ0MWRmMDA4OTcxZmIyYzIwMjA4YjA3
ZjQ2NjMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRm9ybVN1Ym1pc3Npb24u
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb3JtU3VibWlzc2lvbi5jcHAKQEAgLTg4
LDI2ICs4OCwyOSBAQCB2b2lkIEZvcm1TdWJtaXNzaW9uOjpBdHRyaWJ1dGVzOjpwYXJzZUFjdGlv
bihjb25zdCBTdHJpbmcmIGFjdGlvbikKICAgICBtX2FjdGlvbiA9IHN0cmlwTGVhZGluZ0FuZFRy
YWlsaW5nSFRNTFNwYWNlcyhhY3Rpb24pOwogfQogCi12b2lkIEZvcm1TdWJtaXNzaW9uOjpBdHRy
aWJ1dGVzOjpwYXJzZUVuY29kaW5nVHlwZShjb25zdCBTdHJpbmcmIHR5cGUpCitTdHJpbmcgRm9y
bVN1Ym1pc3Npb246OkF0dHJpYnV0ZXM6OnBhcnNlRW5jb2RpbmdUeXBlKGNvbnN0IFN0cmluZyYg
dHlwZSkKIHsKLSAgICBpZiAodHlwZS5jb250YWlucygibXVsdGlwYXJ0IiwgZmFsc2UpIHx8IHR5
cGUuY29udGFpbnMoImZvcm0tZGF0YSIsIGZhbHNlKSkgewotICAgICAgICBtX2VuY29kaW5nVHlw
ZSA9ICJtdWx0aXBhcnQvZm9ybS1kYXRhIjsKLSAgICAgICAgbV9pc011bHRpUGFydEZvcm0gPSB0
cnVlOwotICAgIH0gZWxzZSBpZiAodHlwZS5jb250YWlucygidGV4dCIsIGZhbHNlKSB8fCB0eXBl
LmNvbnRhaW5zKCJwbGFpbiIsIGZhbHNlKSkgewotICAgICAgICBtX2VuY29kaW5nVHlwZSA9ICJ0
ZXh0L3BsYWluIjsKLSAgICAgICAgbV9pc011bHRpUGFydEZvcm0gPSBmYWxzZTsKLSAgICB9IGVs
c2UgewotICAgICAgICBtX2VuY29kaW5nVHlwZSA9ICJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVy
bGVuY29kZWQiOwotICAgICAgICBtX2lzTXVsdGlQYXJ0Rm9ybSA9IGZhbHNlOwotICAgIH0KKyAg
ICBpZiAodHlwZS5jb250YWlucygibXVsdGlwYXJ0IiwgZmFsc2UpIHx8IHR5cGUuY29udGFpbnMo
ImZvcm0tZGF0YSIsIGZhbHNlKSkKKyAgICAgICAgcmV0dXJuICJtdWx0aXBhcnQvZm9ybS1kYXRh
IjsKKyAgICBpZiAodHlwZS5jb250YWlucygidGV4dCIsIGZhbHNlKSB8fCB0eXBlLmNvbnRhaW5z
KCJwbGFpbiIsIGZhbHNlKSkKKyAgICAgICAgcmV0dXJuICJ0ZXh0L3BsYWluIjsKKyAgICByZXR1
cm4gImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCI7Cit9CisKK3ZvaWQgRm9ybVN1
Ym1pc3Npb246OkF0dHJpYnV0ZXM6OnVwZGF0ZUVuY29kaW5nVHlwZShjb25zdCBTdHJpbmcmIHR5
cGUpCit7CisgICAgbV9lbmNvZGluZ1R5cGUgPSBwYXJzZUVuY29kaW5nVHlwZSh0eXBlKTsKKyAg
ICBtX2lzTXVsdGlQYXJ0Rm9ybSA9IChtX2VuY29kaW5nVHlwZSA9PSAibXVsdGlwYXJ0L2Zvcm0t
ZGF0YSIpOworfQorCitGb3JtU3VibWlzc2lvbjo6TWV0aG9kIEZvcm1TdWJtaXNzaW9uOjpBdHRy
aWJ1dGVzOjpwYXJzZU1ldGhvZFR5cGUoY29uc3QgU3RyaW5nJiB0eXBlKQoreworICAgIHJldHVy
biBlcXVhbElnbm9yaW5nQ2FzZSh0eXBlLCAicG9zdCIpID8gRm9ybVN1Ym1pc3Npb246OlBvc3RN
ZXRob2QgOiBGb3JtU3VibWlzc2lvbjo6R2V0TWV0aG9kOwogfQogCi12b2lkIEZvcm1TdWJtaXNz
aW9uOjpBdHRyaWJ1dGVzOjpwYXJzZU1ldGhvZFR5cGUoY29uc3QgU3RyaW5nJiB0eXBlKQordm9p
ZCBGb3JtU3VibWlzc2lvbjo6QXR0cmlidXRlczo6dXBkYXRlTWV0aG9kVHlwZShjb25zdCBTdHJp
bmcmIHR5cGUpCiB7Ci0gICAgaWYgKGVxdWFsSWdub3JpbmdDYXNlKHR5cGUsICJwb3N0IikpCi0g
ICAgICAgIG1fbWV0aG9kID0gRm9ybVN1Ym1pc3Npb246OlBvc3RNZXRob2Q7Ci0gICAgZWxzZSBp
ZiAoZXF1YWxJZ25vcmluZ0Nhc2UodHlwZSwgImdldCIpKQotICAgICAgICBtX21ldGhvZCA9IEZv
cm1TdWJtaXNzaW9uOjpHZXRNZXRob2Q7CisgICAgbV9tZXRob2QgPSBwYXJzZU1ldGhvZFR5cGUo
dHlwZSk7CiB9CiAKIHZvaWQgRm9ybVN1Ym1pc3Npb246OkF0dHJpYnV0ZXM6OmNvcHlGcm9tKGNv
bnN0IEF0dHJpYnV0ZXMmIG90aGVyKQpAQCAtMTQ5LDkgKzE1Miw5IEBAIFBhc3NSZWZQdHI8Rm9y
bVN1Ym1pc3Npb24+IEZvcm1TdWJtaXNzaW9uOjpjcmVhdGUoSFRNTEZvcm1FbGVtZW50KiBmb3Jt
LCBjb25zdCBBCiAgICAgICAgIGlmICghKGF0dHJpYnV0ZVZhbHVlID0gc3VibWl0QnV0dG9uLT5n
ZXRBdHRyaWJ1dGUoZm9ybWFjdGlvbkF0dHIpKS5pc051bGwoKSkKICAgICAgICAgICAgIGNvcGll
ZEF0dHJpYnV0ZXMucGFyc2VBY3Rpb24oYXR0cmlidXRlVmFsdWUpOwogICAgICAgICBpZiAoIShh
dHRyaWJ1dGVWYWx1ZSA9IHN1Ym1pdEJ1dHRvbi0+Z2V0QXR0cmlidXRlKGZvcm1lbmN0eXBlQXR0
cikpLmlzTnVsbCgpKQotICAgICAgICAgICAgY29waWVkQXR0cmlidXRlcy5wYXJzZUVuY29kaW5n
VHlwZShhdHRyaWJ1dGVWYWx1ZSk7CisgICAgICAgICAgICBjb3BpZWRBdHRyaWJ1dGVzLnVwZGF0
ZUVuY29kaW5nVHlwZShhdHRyaWJ1dGVWYWx1ZSk7CiAgICAgICAgIGlmICghKGF0dHJpYnV0ZVZh
bHVlID0gc3VibWl0QnV0dG9uLT5nZXRBdHRyaWJ1dGUoZm9ybW1ldGhvZEF0dHIpKS5pc051bGwo
KSkKLSAgICAgICAgICAgIGNvcGllZEF0dHJpYnV0ZXMucGFyc2VNZXRob2RUeXBlKGF0dHJpYnV0
ZVZhbHVlKTsKKyAgICAgICAgICAgIGNvcGllZEF0dHJpYnV0ZXMudXBkYXRlTWV0aG9kVHlwZShh
dHRyaWJ1dGVWYWx1ZSk7CiAgICAgICAgIGlmICghKGF0dHJpYnV0ZVZhbHVlID0gc3VibWl0QnV0
dG9uLT5nZXRBdHRyaWJ1dGUoZm9ybXRhcmdldEF0dHIpKS5pc051bGwoKSkKICAgICAgICAgICAg
IGNvcGllZEF0dHJpYnV0ZXMuc2V0VGFyZ2V0KGF0dHJpYnV0ZVZhbHVlKTsKICAgICB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRm9ybVN1Ym1pc3Npb24uaCBiL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9Gb3JtU3VibWlzc2lvbi5oCmluZGV4IDdmNThmOTE5MDQ4NTE3NWJmZTQ1
MDQ5N2JhMjZkNWUzY2YxMTI5ODYuLjRkMzU5M2I0NmU1ZTJiMGYxNmQwNmU4ZjQ4Zjk5OGIxOGNj
YWVkODYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb3JtU3VibWlzc2lvbi5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb3JtU3VibWlzc2lvbi5oCkBAIC01OCw3ICs1
OCw5IEBAIHB1YmxpYzoKICAgICAgICAgfQogCiAgICAgICAgIE1ldGhvZCBtZXRob2QoKSBjb25z
dCB7IHJldHVybiBtX21ldGhvZDsgfQotICAgICAgICB2b2lkIHBhcnNlTWV0aG9kVHlwZShjb25z
dCBTdHJpbmcmKTsKKyAgICAgICAgc3RhdGljIE1ldGhvZCBwYXJzZU1ldGhvZFR5cGUoY29uc3Qg
U3RyaW5nJik7CisgICAgICAgIHZvaWQgdXBkYXRlTWV0aG9kVHlwZShjb25zdCBTdHJpbmcmKTsK
KyAgICAgICAgc3RhdGljIFN0cmluZyBtZXRob2RTdHJpbmcoTWV0aG9kIG1ldGhvZCkgeyByZXR1
cm4gbWV0aG9kID09IFBvc3RNZXRob2QgPyAicG9zdCIgOiAiZ2V0IjsgfQogCiAgICAgICAgIGNv
bnN0IFN0cmluZyYgYWN0aW9uKCkgY29uc3QgeyByZXR1cm4gbV9hY3Rpb247IH0KICAgICAgICAg
dm9pZCBwYXJzZUFjdGlvbihjb25zdCBTdHJpbmcmKTsKQEAgLTY3LDcgKzY5LDggQEAgcHVibGlj
OgogICAgICAgICB2b2lkIHNldFRhcmdldChjb25zdCBTdHJpbmcmIHRhcmdldCkgeyBtX3Rhcmdl
dCA9IHRhcmdldDsgfQogCiAgICAgICAgIGNvbnN0IFN0cmluZyYgZW5jb2RpbmdUeXBlKCkgY29u
c3QgeyByZXR1cm4gbV9lbmNvZGluZ1R5cGU7IH0KLSAgICAgICAgdm9pZCBwYXJzZUVuY29kaW5n
VHlwZShjb25zdCBTdHJpbmcmKTsKKyAgICAgICAgc3RhdGljIFN0cmluZyBwYXJzZUVuY29kaW5n
VHlwZShjb25zdCBTdHJpbmcmKTsKKyAgICAgICAgdm9pZCB1cGRhdGVFbmNvZGluZ1R5cGUoY29u
c3QgU3RyaW5nJik7CiAgICAgICAgIGJvb2wgaXNNdWx0aVBhcnRGb3JtKCkgY29uc3QgeyByZXR1
cm4gbV9pc011bHRpUGFydEZvcm07IH0KIAogICAgICAgICBjb25zdCBTdHJpbmcmIGFjY2VwdENo
YXJzZXQoKSBjb25zdCB7IHJldHVybiBtX2FjY2VwdENoYXJzZXQ7IH0K
</data>

          </attachment>
      

    </bug>

</bugzilla>