<?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>117507</bug_id>
          
          <creation_ts>2013-06-11 06:29:52 -0700</creation_ts>
          <short_desc>Support latest Web IDL indexed property getters</short_desc>
          <delta_ts>2013-06-12 07:41:35 -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>Bindings</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc>http://www.w3.org/TR/WebIDL/#dfn-support-indexed-properties</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>BlinkMergeCandidate</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>benjamin</cc>
    
    <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>haraken</cc>
    
    <cc>laszlo.gombos</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>899191</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-06-11 06:29:52 -0700</bug_when>
    <thetext>We should support the latest Web IDL indexed property getters and stop using the outdated [IndexedGetter] IDL extended attribute.

This is already supported by Blink in:
https://chromiumcodereview.appspot.com/14751005</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>899203</commentid>
    <comment_count>1</comment_count>
      <attachid>204337</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-06-11 08:25:40 -0700</bug_when>
    <thetext>Created attachment 204337
WIP Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>899519</commentid>
    <comment_count>2</comment_count>
      <attachid>204430</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-06-12 06:19:30 -0700</bug_when>
    <thetext>Created attachment 204430
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>899520</commentid>
    <comment_count>3</comment_count>
      <attachid>204431</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-06-12 06:21:39 -0700</bug_when>
    <thetext>Created attachment 204431
Patch

Rebase on master.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>899523</commentid>
    <comment_count>4</comment_count>
      <attachid>204430</attachid>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2013-06-12 06:26:39 -0700</bug_when>
    <thetext>Comment on attachment 204430
Patch

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

&gt; Source/WebCore/bindings/scripts/CodeGenerator.pm:52
&gt; +                       &quot;octet&quot; =&gt; 1);

I think &quot;byte&quot; and &quot;octet&quot; are supported neither CodeGeneratorJS.pm nor CodeGeneratorV8.pm. We might want to support them. (I think DataView&apos;s methods are written in custom bindings because of lack of support of &quot;byte&quot; and &quot;octet&quot;.)

&gt; Source/WebCore/html/RadioNodeList.idl:32
&gt; +    getter Node ([IsIndex,Default=Undefined] optional unsigned long index);

Not related to this patch, I wonder why we need [IsIndex] in some getters and don&apos;t need it in other getters.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>899524</commentid>
    <comment_count>5</comment_count>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2013-06-12 06:27:34 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; (From update of attachment 204430 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=204430&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/bindings/scripts/CodeGenerator.pm:52
&gt; &gt; +                       &quot;octet&quot; =&gt; 1);
&gt; 
&gt; I think &quot;byte&quot; and &quot;octet&quot; are supported neither CodeGeneratorJS.pm nor CodeGeneratorV8.pm. We might want to support them. (I think DataView&apos;s methods are written in custom bindings because of lack of support of &quot;byte&quot; and &quot;octet&quot;.)

Of course, in a follow-up patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>899528</commentid>
    <comment_count>6</comment_count>
      <attachid>204430</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-06-12 06:40:19 -0700</bug_when>
    <thetext>Comment on attachment 204430
Patch

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

&gt;&gt; Source/WebCore/bindings/scripts/CodeGenerator.pm:52
&gt;&gt; +                       &quot;octet&quot; =&gt; 1);
&gt; 
&gt; I think &quot;byte&quot; and &quot;octet&quot; are supported neither CodeGeneratorJS.pm nor CodeGeneratorV8.pm. We might want to support them. (I think DataView&apos;s methods are written in custom bindings because of lack of support of &quot;byte&quot; and &quot;octet&quot;.)

Yes, I know. Better support will be needed later on. For now, this makes sure that numeric indexed getters are properly detected in the canvas typed arrays since I use those types now.

&gt;&gt; Source/WebCore/html/RadioNodeList.idl:32
&gt;&gt; +    getter Node ([IsIndex,Default=Undefined] optional unsigned long index);
&gt; 
&gt; Not related to this patch, I wonder why we need [IsIndex] in some getters and don&apos;t need it in other getters.

I was wondering the same. The only difference is that an INDEX_SIZE_ERR exception will be thrown if index &lt; 0. I was thinking that maybe some specs specify this behavior while other do not? Just speculation, I am really not sure what the real reason is yet. However, it is important that such refactoring patch does not change the behavior.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>899545</commentid>
    <comment_count>7</comment_count>
      <attachid>204431</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-06-12 07:41:32 -0700</bug_when>
    <thetext>Comment on attachment 204431
Patch

Clearing flags on attachment: 204431

Committed r151499: &lt;http://trac.webkit.org/changeset/151499&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>899546</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-06-12 07:41:35 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>204337</attachid>
            <date>2013-06-11 08:25:40 -0700</date>
            <delta_ts>2013-06-12 06:19:30 -0700</delta_ts>
            <desc>WIP Patch</desc>
            <filename>117507_IndexedGetter.patch</filename>
            <type>text/plain</type>
            <size>50657</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbS9FbnRyeUFycmF5
LmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbS9FbnRyeUFycmF5LmlkbApp
bmRleCBhZjg3OTE5Li44MDI5Y2IyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L2ZpbGVzeXN0ZW0vRW50cnlBcnJheS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9m
aWxlc3lzdGVtL0VudHJ5QXJyYXkuaWRsCkBAIC0zMSwxMCArMzEsOSBAQAogWwogICAgIE5vSW50
ZXJmYWNlT2JqZWN0LAogICAgIENvbmRpdGlvbmFsPUZJTEVfU1lTVEVNLAotICAgIEluZGV4ZWRH
ZXR0ZXIsCiAgICAgSlNOb1N0YXRpY1RhYmxlcywKICAgICBJbXBsZW1lbnRhdGlvbkxhY2tzVlRh
YmxlCiBdIGludGVyZmFjZSBFbnRyeUFycmF5IHsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgdW5z
aWduZWQgbG9uZyBsZW5ndGg7Ci0gICAgRW50cnkgaXRlbShbSXNJbmRleF0gdW5zaWduZWQgbG9u
ZyBpbmRleCk7CisgICAgZ2V0dGVyIEVudHJ5IGl0ZW0oW0lzSW5kZXhdIHVuc2lnbmVkIGxvbmcg
aW5kZXgpOwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3Rl
bS9FbnRyeUFycmF5U3luYy5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW0v
RW50cnlBcnJheVN5bmMuaWRsCmluZGV4IGIxMjE3MTAuLmVkNjU1OTQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbS9FbnRyeUFycmF5U3luYy5pZGwKKysrIGIv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtL0VudHJ5QXJyYXlTeW5jLmlkbApAQCAt
MzEsMTAgKzMxLDkgQEAKIFsKICAgICBOb0ludGVyZmFjZU9iamVjdCwKICAgICBDb25kaXRpb25h
bD1GSUxFX1NZU1RFTSwKLSAgICBJbmRleGVkR2V0dGVyLAogICAgIEpTTm9TdGF0aWNUYWJsZXMs
CiAgICAgSW1wbGVtZW50YXRpb25MYWNrc1ZUYWJsZQogXSBpbnRlcmZhY2UgRW50cnlBcnJheVN5
bmMgewogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGxlbmd0aDsKLSAgICBF
bnRyeVN5bmMgaXRlbShbSXNJbmRleF0gdW5zaWduZWQgbG9uZyBpbmRleCk7CisgICAgZ2V0dGVy
IEVudHJ5U3luYyBpdGVtKFtJc0luZGV4XSB1bnNpZ25lZCBsb25nIGluZGV4KTsKIH07CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2dhbWVwYWQvR2FtZXBhZExpc3QuaWRsIGIv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9nYW1lcGFkL0dhbWVwYWRMaXN0LmlkbAppbmRleCBiZmJm
MmEwLi4yODkzNWJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2dhbWVwYWQv
R2FtZXBhZExpc3QuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZ2FtZXBhZC9HYW1l
cGFkTGlzdC5pZGwKQEAgLTI2LDEwICsyNiw5IEBACiBbCiAgICAgTm9JbnRlcmZhY2VPYmplY3Qs
CiAgICAgQ29uZGl0aW9uYWw9R0FNRVBBRCwKLSAgICBJbmRleGVkR2V0dGVyLAogICAgIEltcGxl
bWVudGF0aW9uTGFja3NWVGFibGUKIF0gaW50ZXJmYWNlIEdhbWVwYWRMaXN0IHsKICAgICByZWFk
b25seSBhdHRyaWJ1dGUgdW5zaWduZWQgbG9uZyBsZW5ndGg7Ci0gICAgR2FtZXBhZCBpdGVtKFtE
ZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgdW5zaWduZWQgbG9uZyBpbmRleCk7CisgICAgZ2V0
dGVyIEdhbWVwYWQgaXRlbShbRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIHVuc2lnbmVkIGxv
bmcgaW5kZXgpOwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRp
YXNvdXJjZS9Tb3VyY2VCdWZmZXJMaXN0LmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVk
aWFzb3VyY2UvU291cmNlQnVmZmVyTGlzdC5pZGwKaW5kZXggYWU4M2QyNy4uYWNjMTliNiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXNvdXJjZS9Tb3VyY2VCdWZmZXJM
aXN0LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc291cmNlL1NvdXJjZUJ1
ZmZlckxpc3QuaWRsCkBAIC0zMCwxMyArMzAsMTIgQEAKICAKIFsKICAgICBDb25kaXRpb25hbD1N
RURJQV9TT1VSQ0UsCi0gICAgSW5kZXhlZEdldHRlciwKICAgICBFdmVudFRhcmdldCwKICAgICBD
YWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0LAogICAgIEludGVyZmFjZU5hbWU9V2ViS2l0
U291cmNlQnVmZmVyTGlzdAogXSBpbnRlcmZhY2UgU291cmNlQnVmZmVyTGlzdCB7CiAgICAgcmVh
ZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgbGVuZ3RoOwotICAgIFNvdXJjZUJ1ZmZlciBp
dGVtKHVuc2lnbmVkIGxvbmcgaW5kZXgpOworICAgIGdldHRlciBTb3VyY2VCdWZmZXIgaXRlbSh1
bnNpZ25lZCBsb25nIGluZGV4KTsKIAogICAgIC8vIEV2ZW50VGFyZ2V0IGludGVyZmFjZQogICAg
IHZvaWQgYWRkRXZlbnRMaXN0ZW5lcihET01TdHJpbmcgdHlwZSwKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvc3BlZWNoL1NwZWVjaEdyYW1tYXJMaXN0LmlkbCBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvc3BlZWNoL1NwZWVjaEdyYW1tYXJMaXN0LmlkbAppbmRleCBkMzhiYjRh
Li5lMzMzNjBiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3NwZWVjaC9TcGVl
Y2hHcmFtbWFyTGlzdC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zcGVlY2gvU3Bl
ZWNoR3JhbW1hckxpc3QuaWRsCkBAIC0yNSwxMyArMjUsMTIgQEAKIAogWwogICAgIENvbmRpdGlv
bmFsPVNDUklQVEVEX1NQRUVDSCwKLSAgICBJbmRleGVkR2V0dGVyLAogICAgIENvbnN0cnVjdG9y
LAogICAgIEltcGxlbWVudGF0aW9uTGFja3NWVGFibGUsCiAgICAgSW50ZXJmYWNlTmFtZT13ZWJr
aXRTcGVlY2hHcmFtbWFyTGlzdAogXSBpbnRlcmZhY2UgU3BlZWNoR3JhbW1hckxpc3QgewogICAg
IHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGxlbmd0aDsKLSAgICBTcGVlY2hHcmFt
bWFyIGl0ZW0oW0lzSW5kZXhdIHVuc2lnbmVkIGxvbmcgaW5kZXgpOworICAgIGdldHRlciBTcGVl
Y2hHcmFtbWFyIGl0ZW0oW0lzSW5kZXhdIHVuc2lnbmVkIGxvbmcgaW5kZXgpOwogICAgIFtDYWxs
V2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0XSB2b2lkIGFkZEZyb21VcmkoRE9NU3RyaW5nIHNy
Yywgb3B0aW9uYWwgZmxvYXQgd2VpZ2h0KTsKICAgICB2b2lkIGFkZEZyb21TdHJpbmcoRE9NU3Ry
aW5nIHN0cmluZywgb3B0aW9uYWwgZmxvYXQgd2VpZ2h0KTsKIH07CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL3NwZWVjaC9TcGVlY2hSZWNvZ25pdGlvblJlc3VsdC5pZGwgYi9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3NwZWVjaC9TcGVlY2hSZWNvZ25pdGlvblJlc3VsdC5pZGwK
aW5kZXggMzMwMmM5NS4uY2M3MjEzYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9zcGVlY2gvU3BlZWNoUmVjb2duaXRpb25SZXN1bHQuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvc3BlZWNoL1NwZWVjaFJlY29nbml0aW9uUmVzdWx0LmlkbApAQCAtMjYsMTAgKzI2
LDkgQEAKIFsKICAgICBOb0ludGVyZmFjZU9iamVjdCwKICAgICBDb25kaXRpb25hbD1TQ1JJUFRF
RF9TUEVFQ0gsCi0gICAgSW5kZXhlZEdldHRlciwKICAgICBJbXBsZW1lbnRhdGlvbkxhY2tzVlRh
YmxlCiBdIGludGVyZmFjZSBTcGVlY2hSZWNvZ25pdGlvblJlc3VsdCB7CiAgICAgcmVhZG9ubHkg
YXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgbGVuZ3RoOwotICAgIFNwZWVjaFJlY29nbml0aW9uQWx0
ZXJuYXRpdmUgaXRlbShbSXNJbmRleF0gdW5zaWduZWQgbG9uZyBpbmRleCk7CisgICAgZ2V0dGVy
IFNwZWVjaFJlY29nbml0aW9uQWx0ZXJuYXRpdmUgaXRlbShbSXNJbmRleF0gdW5zaWduZWQgbG9u
ZyBpbmRleCk7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIGJvb2xlYW4gaXNGaW5hbDsKIH07CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3NwZWVjaC9TcGVlY2hSZWNvZ25pdGlv
blJlc3VsdExpc3QuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zcGVlY2gvU3BlZWNoUmVj
b2duaXRpb25SZXN1bHRMaXN0LmlkbAppbmRleCAxNjU0ZmI0Li40NjM1NjUxIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3NwZWVjaC9TcGVlY2hSZWNvZ25pdGlvblJlc3VsdExp
c3QuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3BlZWNoL1NwZWVjaFJlY29nbml0
aW9uUmVzdWx0TGlzdC5pZGwKQEAgLTI2LDkgKzI2LDggQEAKIFsKICAgICBOb0ludGVyZmFjZU9i
amVjdCwKICAgICBDb25kaXRpb25hbD1TQ1JJUFRFRF9TUEVFQ0gsCi0gICAgSW5kZXhlZEdldHRl
ciwKICAgICBJbXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxlCiBdIGludGVyZmFjZSBTcGVlY2hSZWNv
Z25pdGlvblJlc3VsdExpc3QgewogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25n
IGxlbmd0aDsKLSAgICBTcGVlY2hSZWNvZ25pdGlvblJlc3VsdCBpdGVtKFtJc0luZGV4XSB1bnNp
Z25lZCBsb25nIGluZGV4KTsKKyAgICBnZXR0ZXIgU3BlZWNoUmVjb2duaXRpb25SZXN1bHQgaXRl
bShbSXNJbmRleF0gdW5zaWduZWQgbG9uZyBpbmRleCk7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yLnBtIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yLnBtCmluZGV4IDNkZjNlNDAuLjliYzgz
MTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVy
YXRvci5wbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0
b3IucG0KQEAgLTQ4LDcgKzQ4LDggQEAgbXkgJHZlcmJvc2UgPSAwOwogbXkgJW51bWVyaWNUeXBl
SGFzaCA9ICgiaW50IiA9PiAxLCAic2hvcnQiID0+IDEsICJsb25nIiA9PiAxLCAibG9uZyBsb25n
IiA9PiAxLAogICAgICAgICAgICAgICAgICAgICAgICAidW5zaWduZWQgaW50IiA9PiAxLCAidW5z
aWduZWQgc2hvcnQiID0+IDEsCiAgICAgICAgICAgICAgICAgICAgICAgICJ1bnNpZ25lZCBsb25n
IiA9PiAxLCAidW5zaWduZWQgbG9uZyBsb25nIiA9PiAxLAotICAgICAgICAgICAgICAgICAgICAg
ICAiZmxvYXQiID0+IDEsICJkb3VibGUiID0+IDEpOworICAgICAgICAgICAgICAgICAgICAgICAi
ZmxvYXQiID0+IDEsICJkb3VibGUiID0+IDEsICJieXRlIiA9PiAxLAorICAgICAgICAgICAgICAg
ICAgICAgICAib2N0ZXQiID0+IDEpOwogCiBteSAlcHJpbWl0aXZlVHlwZUhhc2ggPSAoICJib29s
ZWFuIiA9PiAxLCAidm9pZCIgPT4gMSwgIkRhdGUiID0+IDEpOwogCkBAIC0zNDgsNiArMzQ5LDE1
IEBAIHN1YiBJc0NvbnN0cnVjdG9yVGVtcGxhdGUKICAgICByZXR1cm4gJGludGVyZmFjZS0+ZXh0
ZW5kZWRBdHRyaWJ1dGVzLT57IkNvbnN0cnVjdG9yVGVtcGxhdGUifSAmJiAkaW50ZXJmYWNlLT5l
eHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ29uc3RydWN0b3JUZW1wbGF0ZSJ9IGVxICR0ZW1wbGF0ZTsK
IH0KIAorc3ViIElzTnVtZXJpY1R5cGUKK3sKKyAgICBteSAkb2JqZWN0ID0gc2hpZnQ7CisgICAg
bXkgJHR5cGUgPSBzaGlmdDsKKworICAgIHJldHVybiAxIGlmICRudW1lcmljVHlwZUhhc2h7JHR5
cGV9OworICAgIHJldHVybiAwOworfQorCiBzdWIgSXNQcmltaXRpdmVUeXBlCiB7CiAgICAgbXkg
JG9iamVjdCA9IHNoaWZ0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy9Db2RlR2VuZXJhdG9ySlMucG0gYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L0NvZGVHZW5lcmF0b3JKUy5wbQppbmRleCAzNGJhYzM1Li44OWIzNDBmIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQorKysgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQpAQCAtMzUz
LDYgKzM1Myw4IEBAIHN1YiBHZW5lcmF0ZUdldE93blByb3BlcnR5U2xvdEJvZHkKIAogICAgIG15
ICRuYW1lc3BhY2VNYXliZSA9ICgkaW5saW5lZCA/ICJKU0M6OiIgOiAiIik7CiAgICAgbXkgJG5h
bWVkR2V0dGVyRnVuY3Rpb24gPSBHZXROYW1lZEdldHRlckZ1bmN0aW9uKCRpbnRlcmZhY2UpOwor
ICAgIG15ICRpbmRleGVkR2V0dGVyRnVuY3Rpb24gPSBHZXRJbmRleGVkR2V0dGVyRnVuY3Rpb24o
JGludGVyZmFjZSk7CisgICAgbXkgJGhhc051bWVyaWNJbmRleGVkR2V0dGVyID0gJGluZGV4ZWRH
ZXR0ZXJGdW5jdGlvbiA/ICRjb2RlR2VuZXJhdG9yLT5Jc051bWVyaWNUeXBlKCRpbmRleGVkR2V0
dGVyRnVuY3Rpb24tPnNpZ25hdHVyZS0+dHlwZSkgOiAwOwogCiAgICAgbXkgQGdldE93blByb3Bl
cnR5U2xvdEltcGwgPSAoKTsKIApAQCAtMzYzLDcgKzM2NSw3IEBAIHN1YiBHZW5lcmF0ZUdldE93
blByb3BlcnR5U2xvdEJvZHkKICAgICB9CiAKICAgICBteSAkbWFudWFsTG9va3VwR2V0dGVyR2Vu
ZXJhdGlvbiA9IHN1YiB7Ci0gICAgICAgIG15ICRyZXF1aXJlc01hbnVhbExvb2t1cCA9ICRpbnRl
cmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJJbmRleGVkR2V0dGVyIn0gfHwgJG5hbWVkR2V0
dGVyRnVuY3Rpb247CisgICAgICAgIG15ICRyZXF1aXJlc01hbnVhbExvb2t1cCA9ICgkaW5kZXhl
ZEdldHRlckZ1bmN0aW9uICYmICEkaGFzTnVtZXJpY0luZGV4ZWRHZXR0ZXIpIHx8ICRuYW1lZEdl
dHRlckZ1bmN0aW9uOwogICAgICAgICBpZiAoJHJlcXVpcmVzTWFudWFsTG9va3VwKSB7CiAgICAg
ICAgICAgICBwdXNoKEBnZXRPd25Qcm9wZXJ0eVNsb3RJbXBsLCAiICAgIGNvbnN0ICR7bmFtZXNw
YWNlTWF5YmV9SGFzaEVudHJ5KiBlbnRyeSA9IGdldFN0YXRpY1ZhbHVlU2xvdEVudHJ5V2l0aG91
dENhY2hpbmc8JGNsYXNzTmFtZT4oZXhlYywgcHJvcGVydHlOYW1lKTtcbiIpOwogICAgICAgICAg
ICAgcHVzaChAZ2V0T3duUHJvcGVydHlTbG90SW1wbCwgIiAgICBpZiAoZW50cnkpIHtcbiIpOwpA
QCAtMzc3LDcgKzM3OSw3IEBAIHN1YiBHZW5lcmF0ZUdldE93blByb3BlcnR5U2xvdEJvZHkKICAg
ICAgICAgJiRtYW51YWxMb29rdXBHZXR0ZXJHZW5lcmF0aW9uKCk7CiAgICAgfQogCi0gICAgaWYg
KCRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJJbmRleGVkR2V0dGVyIn0gfHwgJGlu
dGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57Ik51bWVyaWNJbmRleGVkR2V0dGVyIn0pIHsK
KyAgICBpZiAoJGluZGV4ZWRHZXR0ZXJGdW5jdGlvbikgewogICAgICAgICBwdXNoKEBnZXRPd25Q
cm9wZXJ0eVNsb3RJbXBsLCAiICAgIHVuc2lnbmVkIGluZGV4ID0gcHJvcGVydHlOYW1lLmFzSW5k
ZXgoKTtcbiIpOwogCiAgICAgICAgICMgSWYgdGhlIGl0ZW0gZnVuY3Rpb24gcmV0dXJucyBhIHN0
cmluZyB0aGVuIHdlIGxldCB0aGUgVHJlYXRSZXR1cm5lZE51bGxTdHJpbmdBcyBoYW5kbGUgdGhl
IGNhc2VzCkBAIC0zODcsNyArMzg5LDcgQEAgc3ViIEdlbmVyYXRlR2V0T3duUHJvcGVydHlTbG90
Qm9keQogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgcHVzaChAZ2V0T3duUHJvcGVydHlT
bG90SW1wbCwgIiAgICBpZiAoaW5kZXggIT0gUHJvcGVydHlOYW1lOjpOb3RBbkluZGV4ICYmIGlu
ZGV4IDwgc3RhdGljX2Nhc3Q8JGludGVyZmFjZU5hbWUqPih0aGlzT2JqZWN0LT5pbXBsKCkpLT5s
ZW5ndGgoKSkge1xuIik7CiAgICAgICAgIH0KLSAgICAgICAgaWYgKCRpbnRlcmZhY2UtPmV4dGVu
ZGVkQXR0cmlidXRlcy0+eyJOdW1lcmljSW5kZXhlZEdldHRlciJ9KSB7CisgICAgICAgIGlmICgk
aGFzTnVtZXJpY0luZGV4ZWRHZXR0ZXIpIHsKICAgICAgICAgICAgIHB1c2goQGdldE93blByb3Bl
cnR5U2xvdEltcGwsICIgICAgICAgIHNsb3Quc2V0VmFsdWUodGhpc09iamVjdC0+Z2V0QnlJbmRl
eChleGVjLCBpbmRleCkpO1xuIik7CiAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICBwdXNo
KEBnZXRPd25Qcm9wZXJ0eVNsb3RJbXBsLCAiICAgICAgICBzbG90LnNldEN1c3RvbUluZGV4KHRo
aXNPYmplY3QsIGluZGV4LCBpbmRleEdldHRlcik7XG4iKTsKQEAgLTQzNyw2ICs0MzksOSBAQCBz
dWIgR2VuZXJhdGVHZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JCb2R5CiAgICAgCiAgICAgbXkgJG5h
bWVzcGFjZU1heWJlID0gKCRpbmxpbmVkID8gIkpTQzo6IiA6ICIiKTsKICAgICBteSAkbmFtZWRH
ZXR0ZXJGdW5jdGlvbiA9IEdldE5hbWVkR2V0dGVyRnVuY3Rpb24oJGludGVyZmFjZSk7CisgICAg
bXkgJGluZGV4ZWRHZXR0ZXJGdW5jdGlvbiA9IEdldEluZGV4ZWRHZXR0ZXJGdW5jdGlvbigkaW50
ZXJmYWNlKTsKKyAgICBteSAkaGFzTnVtZXJpY0luZGV4ZWRHZXR0ZXIgPSAkaW5kZXhlZEdldHRl
ckZ1bmN0aW9uID8gJGNvZGVHZW5lcmF0b3ItPklzTnVtZXJpY1R5cGUoJGluZGV4ZWRHZXR0ZXJG
dW5jdGlvbi0+c2lnbmF0dXJlLT50eXBlKSA6IDA7CisKICAgICAKICAgICBteSBAZ2V0T3duUHJv
cGVydHlEZXNjcmlwdG9ySW1wbCA9ICgpOwogICAgIGlmICgkaW50ZXJmYWNlLT5leHRlbmRlZEF0
dHJpYnV0ZXMtPnsiQ2hlY2tTZWN1cml0eSJ9KSB7CkBAIC00NTYsNyArNDYxLDcgQEAgc3ViIEdl
bmVyYXRlR2V0T3duUHJvcGVydHlEZXNjcmlwdG9yQm9keQogICAgIH0KICAgICAKICAgICBteSAk
bWFudWFsTG9va3VwR2V0dGVyR2VuZXJhdGlvbiA9IHN1YiB7Ci0gICAgICAgIG15ICRyZXF1aXJl
c01hbnVhbExvb2t1cCA9ICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJJbmRleGVk
R2V0dGVyIn0gfHwgJG5hbWVkR2V0dGVyRnVuY3Rpb247CisgICAgICAgIG15ICRyZXF1aXJlc01h
bnVhbExvb2t1cCA9ICgkaW5kZXhlZEdldHRlckZ1bmN0aW9uICYmICEkaGFzTnVtZXJpY0luZGV4
ZWRHZXR0ZXIpIHx8ICRuYW1lZEdldHRlckZ1bmN0aW9uOwogICAgICAgICBpZiAoJHJlcXVpcmVz
TWFudWFsTG9va3VwKSB7CiAgICAgICAgICAgICBwdXNoKEBnZXRPd25Qcm9wZXJ0eURlc2NyaXB0
b3JJbXBsLCAiICAgIGNvbnN0ICR7bmFtZXNwYWNlTWF5YmV9SGFzaEVudHJ5KiBlbnRyeSA9ICR7
Y2xhc3NOYW1lfVRhYmxlLmVudHJ5KGV4ZWMsIHByb3BlcnR5TmFtZSk7XG4iKTsKICAgICAgICAg
ICAgIHB1c2goQGdldE93blByb3BlcnR5RGVzY3JpcHRvckltcGwsICIgICAgaWYgKGVudHJ5KSB7
XG4iKTsKQEAgLTQ3MiwxMCArNDc3LDEwIEBAIHN1YiBHZW5lcmF0ZUdldE93blByb3BlcnR5RGVz
Y3JpcHRvckJvZHkKICAgICAgICAgJiRtYW51YWxMb29rdXBHZXR0ZXJHZW5lcmF0aW9uKCk7CiAg
ICAgfQogCi0gICAgaWYgKCRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJJbmRleGVk
R2V0dGVyIn0gfHwgJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57Ik51bWVyaWNJbmRl
eGVkR2V0dGVyIn0pIHsKKyAgICBpZiAoJGluZGV4ZWRHZXR0ZXJGdW5jdGlvbikgewogICAgICAg
ICBwdXNoKEBnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JJbXBsLCAiICAgIHVuc2lnbmVkIGluZGV4
ID0gcHJvcGVydHlOYW1lLmFzSW5kZXgoKTtcbiIpOwogICAgICAgICBwdXNoKEBnZXRPd25Qcm9w
ZXJ0eURlc2NyaXB0b3JJbXBsLCAiICAgIGlmIChpbmRleCAhPSBQcm9wZXJ0eU5hbWU6Ok5vdEFu
SW5kZXggJiYgaW5kZXggPCBzdGF0aWNfY2FzdDwkaW50ZXJmYWNlTmFtZSo+KHRoaXNPYmplY3Qt
PmltcGwoKSktPmxlbmd0aCgpKSB7XG4iKTsKLSAgICAgICAgaWYgKCRpbnRlcmZhY2UtPmV4dGVu
ZGVkQXR0cmlidXRlcy0+eyJOdW1lcmljSW5kZXhlZEdldHRlciJ9KSB7CisgICAgICAgIGlmICgk
aGFzTnVtZXJpY0luZGV4ZWRHZXR0ZXIpIHsKICAgICAgICAgICAgICMgQXNzdW1lIHRoYXQgaWYg
dGhlcmUncyBhIHNldHRlciwgdGhlIGluZGV4IHdpbGwgYmUgd3JpdGFibGUKICAgICAgICAgICAg
IGlmICgkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ3VzdG9tSW5kZXhlZFNldHRl
ciJ9KSB7CiAgICAgICAgICAgICAgICAgcHVzaChAZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ySW1w
bCwgIiAgICAgICAgZGVzY3JpcHRvci5zZXREZXNjcmlwdG9yKHRoaXNPYmplY3QtPmdldEJ5SW5k
ZXgoZXhlYywgaW5kZXgpLCAke25hbWVzcGFjZU1heWJlfURvbnREZWxldGUpO1xuIik7CkBAIC02
MzIsNiArNjM3LDEyIEBAIHN1YiBHZXRTcGVjaWFsQWNjZXNzb3JGdW5jdGlvbkZvclR5cGUKICAg
ICByZXR1cm4gMDsKIH0KIAorc3ViIEdldEluZGV4ZWRHZXR0ZXJGdW5jdGlvbgoreworICAgIG15
ICRpbnRlcmZhY2UgPSBzaGlmdDsKKyAgICByZXR1cm4gR2V0U3BlY2lhbEFjY2Vzc29yRnVuY3Rp
b25Gb3JUeXBlKCRpbnRlcmZhY2UsICJnZXR0ZXIiLCAidW5zaWduZWQgbG9uZyIsIDEpOworfQor
CiBzdWIgR2V0TmFtZWRHZXR0ZXJGdW5jdGlvbgogewogICAgIG15ICRpbnRlcmZhY2UgPSBzaGlm
dDsKQEAgLTc3Myw2ICs3ODQsOCBAQCBzdWIgR2VuZXJhdGVIZWFkZXIKICAgICAkaW1wbEluY2x1
ZGVzeyIke2NsYXNzTmFtZX1DdXN0b20uaCJ9ID0gMSBpZiAhJGludGVyZmFjZS0+ZXh0ZW5kZWRB
dHRyaWJ1dGVzLT57IkpTQ3VzdG9tSGVhZGVyIn0gJiYgKCRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0
cmlidXRlcy0+eyJDdXN0b21QdXRGdW5jdGlvbiJ9IHx8ICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0
cmlidXRlcy0+eyJDdXN0b21OYW1lZFNldHRlciJ9KTsKIAogICAgIG15ICRuYW1lZEdldHRlckZ1
bmN0aW9uID0gR2V0TmFtZWRHZXR0ZXJGdW5jdGlvbigkaW50ZXJmYWNlKTsKKyAgICBteSAkaW5k
ZXhlZEdldHRlckZ1bmN0aW9uID0gR2V0SW5kZXhlZEdldHRlckZ1bmN0aW9uKCRpbnRlcmZhY2Up
OworICAgIG15ICRoYXNOdW1lcmljSW5kZXhlZEdldHRlciA9ICRpbmRleGVkR2V0dGVyRnVuY3Rp
b24gPyAkY29kZUdlbmVyYXRvci0+SXNOdW1lcmljVHlwZSgkaW5kZXhlZEdldHRlckZ1bmN0aW9u
LT5zaWduYXR1cmUtPnR5cGUpIDogMDsKIAogICAgIG15ICRoYXNJbXB1cmVOYW1lZEdldHRlciA9
CiAgICAgICAgICRuYW1lZEdldHRlckZ1bmN0aW9uCkBAIC03ODAsOCArNzkzLDcgQEAgc3ViIEdl
bmVyYXRlSGVhZGVyCiAgICAgICAgIHx8ICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+
eyJDdXN0b21HZXRPd25Qcm9wZXJ0eVNsb3QifTsKIAogICAgIG15ICRoYXNDb21wbGV4R2V0dGVy
ID0KLSAgICAgICAgJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkluZGV4ZWRHZXR0
ZXIifQotICAgICAgICB8fCAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiTnVtZXJp
Y0luZGV4ZWRHZXR0ZXIifQorICAgICAgICAkaW5kZXhlZEdldHRlckZ1bmN0aW9uCiAgICAgICAg
IHx8ICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJKU0N1c3RvbUdldE93blByb3Bl
cnR5U2xvdEFuZERlc2NyaXB0b3IifQogICAgICAgICB8fCAkaGFzSW1wdXJlTmFtZWRHZXR0ZXI7
CiAgICAgCkBAIC04NjUsNyArODc3LDcgQEAgc3ViIEdlbmVyYXRlSGVhZGVyCiAgICAgfQogCiAg
ICAgIyBDdXN0b20gZ2V0T3duUHJvcGVydHlOYW1lcyBmdW5jdGlvbgotICAgIGlmICgkaW50ZXJm
YWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ3VzdG9tRW51bWVyYXRlUHJvcGVydHkifSB8fCAk
aW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiSW5kZXhlZEdldHRlciJ9IHx8ICRpbnRl
cmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJOdW1lcmljSW5kZXhlZEdldHRlciJ9KSB7Cisg
ICAgaWYgKCRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJDdXN0b21FbnVtZXJhdGVQ
cm9wZXJ0eSJ9IHx8ICRpbmRleGVkR2V0dGVyRnVuY3Rpb24pIHsKICAgICAgICAgcHVzaChAaGVh
ZGVyQ29udGVudCwgIiAgICBzdGF0aWMgdm9pZCBnZXRPd25Qcm9wZXJ0eU5hbWVzKEpTQzo6SlNP
YmplY3QqLCBKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6UHJvcGVydHlOYW1lQXJyYXkmLCBKU0M6OkVu
dW1lcmF0aW9uTW9kZSBtb2RlID0gSlNDOjpFeGNsdWRlRG9udEVudW1Qcm9wZXJ0aWVzKTtcbiIp
OwogICAgICAgICAkc3RydWN0dXJlRmxhZ3N7IkpTQzo6T3ZlcnJpZGVzR2V0UHJvcGVydHlOYW1l
cyJ9ID0gMTsgICAgICAgCiAgICAgfQpAQCAtMTAwMCwxMSArMTAxMiwxMiBAQCBzdWIgR2VuZXJh
dGVIZWFkZXIKICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAiQmFzZTo6U3RydWN0dXJlRmxhZ3M7
XG4iKTsKIAogICAgICMgSW5kZXggZ2V0dGVyCi0gICAgaWYgKCRpbnRlcmZhY2UtPmV4dGVuZGVk
QXR0cmlidXRlcy0+eyJJbmRleGVkR2V0dGVyIn0pIHsKLSAgICAgICAgcHVzaChAaGVhZGVyQ29u
dGVudCwgIiAgICBzdGF0aWMgSlNDOjpKU1ZhbHVlIGluZGV4R2V0dGVyKEpTQzo6RXhlY1N0YXRl
KiwgSlNDOjpKU1ZhbHVlLCB1bnNpZ25lZCk7XG4iKTsKLSAgICB9Ci0gICAgaWYgKCRpbnRlcmZh
Y2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJOdW1lcmljSW5kZXhlZEdldHRlciJ9KSB7Ci0gICAg
ICAgIHB1c2goQGhlYWRlckNvbnRlbnQsICIgICAgSlNDOjpKU1ZhbHVlIGdldEJ5SW5kZXgoSlND
OjpFeGVjU3RhdGUqLCB1bnNpZ25lZCBpbmRleCk7XG4iKTsKKyAgICBpZiAoJGluZGV4ZWRHZXR0
ZXJGdW5jdGlvbikgeworICAgICAgICBpZiAoJGhhc051bWVyaWNJbmRleGVkR2V0dGVyKSB7Cisg
ICAgICAgICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAiICAgIEpTQzo6SlNWYWx1ZSBnZXRCeUlu
ZGV4KEpTQzo6RXhlY1N0YXRlKiwgdW5zaWduZWQgaW5kZXgpO1xuIik7CisgICAgICAgIH0gZWxz
ZSB7CisgICAgICAgICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAiICAgIHN0YXRpYyBKU0M6OkpT
VmFsdWUgaW5kZXhHZXR0ZXIoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTVmFsdWUsIHVuc2lnbmVk
KTtcbiIpOworICAgICAgICB9CiAgICAgfQogCiAgICAgIyBJbmRleCBzZXR0ZXIKQEAgLTE1ODgs
MTEgKzE2MDEsMTUgQEAgc3ViIEdlbmVyYXRlSW1wbGVtZW50YXRpb24KICAgICBteSAkZXZlbnRU
YXJnZXQgPSAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiRXZlbnRUYXJnZXQifSB8
fCAoJGNvZGVHZW5lcmF0b3ItPkluaGVyaXRzSW50ZXJmYWNlKCRpbnRlcmZhY2UsICJFdmVudFRh
cmdldCIpICYmICRpbnRlcmZhY2UtPm5hbWUgbmUgIkV2ZW50VGFyZ2V0Iik7CiAgICAgbXkgJG5l
ZWRzTWFya0NoaWxkcmVuID0gJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkpTQ3Vz
dG9tTWFya0Z1bmN0aW9uIn0gfHwgJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkV2
ZW50VGFyZ2V0In0gfHwgJGludGVyZmFjZS0+bmFtZSBlcSAiRXZlbnRUYXJnZXQiOwogCisgICAg
bXkgJG5hbWVkR2V0dGVyRnVuY3Rpb24gPSBHZXROYW1lZEdldHRlckZ1bmN0aW9uKCRpbnRlcmZh
Y2UpOworICAgIG15ICRpbmRleGVkR2V0dGVyRnVuY3Rpb24gPSBHZXRJbmRleGVkR2V0dGVyRnVu
Y3Rpb24oJGludGVyZmFjZSk7CisgICAgbXkgJGhhc051bWVyaWNJbmRleGVkR2V0dGVyID0gJGlu
ZGV4ZWRHZXR0ZXJGdW5jdGlvbiA/ICRjb2RlR2VuZXJhdG9yLT5Jc051bWVyaWNUeXBlKCRpbmRl
eGVkR2V0dGVyRnVuY3Rpb24tPnNpZ25hdHVyZS0+dHlwZSkgOiAwOworCiAgICAgIyAtIEFkZCBk
ZWZhdWx0IGhlYWRlciB0ZW1wbGF0ZQogICAgIHB1c2goQGltcGxDb250ZW50SGVhZGVyLCBHZW5l
cmF0ZUltcGxlbWVudGF0aW9uQ29udGVudEhlYWRlcigkaW50ZXJmYWNlKSk7CiAKICAgICAkaW1w
bEluY2x1ZGVzeyI8d3RmL0dldFB0ci5oPiJ9ID0gMTsKLSAgICAkaW1wbEluY2x1ZGVzeyI8cnVu
dGltZS9Qcm9wZXJ0eU5hbWVBcnJheS5oPiJ9ID0gMSBpZiAkaW50ZXJmYWNlLT5leHRlbmRlZEF0
dHJpYnV0ZXMtPnsiSW5kZXhlZEdldHRlciJ9IHx8ICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmli
dXRlcy0+eyJOdW1lcmljSW5kZXhlZEdldHRlciJ9OworICAgICRpbXBsSW5jbHVkZXN7IjxydW50
aW1lL1Byb3BlcnR5TmFtZUFycmF5Lmg+In0gPSAxIGlmICRpbmRleGVkR2V0dGVyRnVuY3Rpb247
CiAKICAgICBBZGRJbmNsdWRlc0ZvclR5cGVJbkltcGwoJGludGVyZmFjZU5hbWUpOwogCkBAIC0x
NjA2LDggKzE2MjMsNiBAQCBzdWIgR2VuZXJhdGVJbXBsZW1lbnRhdGlvbgogICAgIG15ICRudW1D
b25zdGFudHMgPSBAeyRpbnRlcmZhY2UtPmNvbnN0YW50c307CiAgICAgbXkgJG51bUZ1bmN0aW9u
cyA9IEB7JGludGVyZmFjZS0+ZnVuY3Rpb25zfTsKIAotICAgIG15ICRuYW1lZEdldHRlckZ1bmN0
aW9uID0gR2V0TmFtZWRHZXR0ZXJGdW5jdGlvbigkaW50ZXJmYWNlKTsKLQogICAgICMgLSBBZGQg
YWxsIGNvbnN0YW50cwogICAgIGlmICghJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57
Ik5vSW50ZXJmYWNlT2JqZWN0In0pIHsKICAgICAgICAgbXkgJGhhc2hTaXplID0gJG51bUNvbnN0
YW50czsKQEAgLTE5MTksOCArMTkzNCw3IEBAIHN1YiBHZW5lcmF0ZUltcGxlbWVudGF0aW9uCiAK
ICAgICBteSAkaGFzR2V0dGVyID0gJG51bUF0dHJpYnV0ZXMgPiAwCiAgICAgICAgICAgICAgICAg
IHx8ICEkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiTm9JbnRlcmZhY2VPYmplY3Qi
fQotICAgICAgICAgICAgICAgICB8fCAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsi
SW5kZXhlZEdldHRlciJ9Ci0gICAgICAgICAgICAgICAgIHx8ICRpbnRlcmZhY2UtPmV4dGVuZGVk
QXR0cmlidXRlcy0+eyJOdW1lcmljSW5kZXhlZEdldHRlciJ9CisgICAgICAgICAgICAgICAgIHx8
ICRpbmRleGVkR2V0dGVyRnVuY3Rpb24KICAgICAgICAgICAgICAgICAgfHwgJGludGVyZmFjZS0+
ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkpTQ3VzdG9tR2V0T3duUHJvcGVydHlTbG90QW5kRGVzY3Jp
cHRvciJ9CiAgICAgICAgICAgICAgICAgIHx8ICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRl
cy0+eyJDdXN0b21HZXRPd25Qcm9wZXJ0eVNsb3QifQogICAgICAgICAgICAgICAgICB8fCAkbmFt
ZWRHZXR0ZXJGdW5jdGlvbgpAQCAtMTk0Myw4ICsxOTU3LDggQEAgc3ViIEdlbmVyYXRlSW1wbGVt
ZW50YXRpb24KICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAifVxuXG4iKTsKICAgICAg
ICAgfQogCi0gICAgICAgIGlmICgkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiSW5k
ZXhlZEdldHRlciJ9IHx8ICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJOdW1lcmlj
SW5kZXhlZEdldHRlciJ9Ci0gICAgICAgICAgICAgICAgfHwgJG5hbWVkR2V0dGVyRnVuY3Rpb24g
fHwgJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkN1c3RvbU5hbWVkR2V0dGVyIn0K
KyAgICAgICAgaWYgKCRpbmRleGVkR2V0dGVyRnVuY3Rpb24gfHwgJG5hbWVkR2V0dGVyRnVuY3Rp
b24KKyAgICAgICAgICAgICAgICB8fCAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsi
Q3VzdG9tTmFtZWRHZXR0ZXIifQogICAgICAgICAgICAgICAgIHx8ICRpbnRlcmZhY2UtPmV4dGVu
ZGVkQXR0cmlidXRlcy0+eyJKU0N1c3RvbUdldE93blByb3BlcnR5U2xvdEFuZERlc2NyaXB0b3Ii
fSkgewogICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICJib29sICR7Y2xhc3NOYW1lfTo6
Z2V0T3duUHJvcGVydHlTbG90QnlJbmRleChKU0NlbGwqIGNlbGwsIEV4ZWNTdGF0ZSogZXhlYywg
dW5zaWduZWQgaW5kZXgsIFByb3BlcnR5U2xvdCYgc2xvdClcbiIpOwogICAgICAgICAgICAgcHVz
aChAaW1wbENvbnRlbnQsICJ7XG4iKTsKQEAgLTE5NjIsMTMgKzE5NzYsMTMgQEAgc3ViIEdlbmVy
YXRlSW1wbGVtZW50YXRpb24KICAgICAgICAgICAgICAgICAkZ2VuZXJhdGVkUHJvcGVydHlOYW1l
ID0gMTsKICAgICAgICAgICAgIH07CiAKLSAgICAgICAgICAgIGlmICgkaW50ZXJmYWNlLT5leHRl
bmRlZEF0dHJpYnV0ZXMtPnsiSW5kZXhlZEdldHRlciJ9IHx8ICRpbnRlcmZhY2UtPmV4dGVuZGVk
QXR0cmlidXRlcy0+eyJOdW1lcmljSW5kZXhlZEdldHRlciJ9KSB7CisgICAgICAgICAgICBpZiAo
JGluZGV4ZWRHZXR0ZXJGdW5jdGlvbikgewogICAgICAgICAgICAgICAgIGlmIChJbmRleEdldHRl
clJldHVybnNTdHJpbmdzKCRpbnRlcmZhY2VOYW1lKSkgewogICAgICAgICAgICAgICAgICAgICBw
dXNoKEBpbXBsQ29udGVudCwgIiAgICBpZiAoaW5kZXggPD0gTUFYX0FSUkFZX0lOREVYKSB7XG4i
KTsKICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICBwdXNoKEBp
bXBsQ29udGVudCwgIiAgICBpZiAoaW5kZXggPCBzdGF0aWNfY2FzdDwkaW50ZXJmYWNlTmFtZSo+
KHRoaXNPYmplY3QtPmltcGwoKSktPmxlbmd0aCgpKSB7XG4iKTsKICAgICAgICAgICAgICAgICB9
Ci0gICAgICAgICAgICAgICAgaWYgKCRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJO
dW1lcmljSW5kZXhlZEdldHRlciJ9KSB7CisgICAgICAgICAgICAgICAgaWYgKCRoYXNOdW1lcmlj
SW5kZXhlZEdldHRlcikgewogICAgICAgICAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwg
IiAgICAgICAgc2xvdC5zZXRWYWx1ZSh0aGlzT2JqZWN0LT5nZXRCeUluZGV4KGV4ZWMsIGluZGV4
KSk7XG4iKTsKICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICBw
dXNoKEBpbXBsQ29udGVudCwgIiAgICAgICAgc2xvdC5zZXRDdXN0b21JbmRleCh0aGlzT2JqZWN0
LCBpbmRleCwgdGhpc09iamVjdC0+aW5kZXhHZXR0ZXIpO1xuIik7CkBAIC0yNDI1LDE1ICsyNDM5
LDEzIEBAIHN1YiBHZW5lcmF0ZUltcGxlbWVudGF0aW9uCiAgICAgICAgIH0KICAgICB9CiAKLSAg
ICBpZiAoKCRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJJbmRleGVkR2V0dGVyIn0g
fHwgJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57Ik51bWVyaWNJbmRleGVkR2V0dGVy
In0pICYmICEkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ3VzdG9tRW51bWVyYXRl
UHJvcGVydHkifSkgeworICAgIGlmICgkaW5kZXhlZEdldHRlckZ1bmN0aW9uICYmICEkaW50ZXJm
YWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ3VzdG9tRW51bWVyYXRlUHJvcGVydHkifSkgewog
ICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgInZvaWQgJHtjbGFzc05hbWV9OjpnZXRPd25Qcm9w
ZXJ0eU5hbWVzKEpTT2JqZWN0KiBvYmplY3QsIEV4ZWNTdGF0ZSogZXhlYywgUHJvcGVydHlOYW1l
QXJyYXkmIHByb3BlcnR5TmFtZXMsIEVudW1lcmF0aW9uTW9kZSBtb2RlKVxuIik7CiAgICAgICAg
IHB1c2goQGltcGxDb250ZW50LCAie1xuIik7CiAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAi
ICAgICR7Y2xhc3NOYW1lfSogdGhpc09iamVjdCA9IGpzQ2FzdDwke2NsYXNzTmFtZX0qPihvYmpl
Y3QpO1xuIik7CiAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgIEFTU0VSVF9HQ19PQkpF
Q1RfSU5IRVJJVFModGhpc09iamVjdCwgJnNfaW5mbyk7XG4iKTsKLSAgICAgICAgaWYgKCRpbnRl
cmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJJbmRleGVkR2V0dGVyIn0gfHwgJGludGVyZmFj
ZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57Ik51bWVyaWNJbmRleGVkR2V0dGVyIn0pIHsKLSAgICAg
ICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBz
dGF0aWNfY2FzdDwke2ludGVyZmFjZU5hbWV9Kj4odGhpc09iamVjdC0+aW1wbCgpKS0+bGVuZ3Ro
KCk7ICsraSlcbiIpOwotICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgICAgIHBy
b3BlcnR5TmFtZXMuYWRkKElkZW50aWZpZXI6OmZyb20oZXhlYywgaSkpO1xuIik7Ci0gICAgICAg
IH0KKyAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgZm9yICh1bnNpZ25lZCBpID0gMDsg
aSA8IHN0YXRpY19jYXN0PCR7aW50ZXJmYWNlTmFtZX0qPih0aGlzT2JqZWN0LT5pbXBsKCkpLT5s
ZW5ndGgoKTsgKytpKVxuIik7CisgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgICAgICBw
cm9wZXJ0eU5hbWVzLmFkZChJZGVudGlmaWVyOjpmcm9tKGV4ZWMsIGkpKTtcbiIpOwogICAgICAg
ICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICAgQmFzZTo6Z2V0T3duUHJvcGVydHlOYW1lcyh0aGlz
T2JqZWN0LCBleGVjLCBwcm9wZXJ0eU5hbWVzLCBtb2RlKTtcbiIpOwogICAgICAgICBwdXNoKEBp
bXBsQ29udGVudCwgIn1cblxuIik7CiAgICAgfQpAQCAtMjYyOSw3ICsyNjQxLDcgQEAgc3ViIEdl
bmVyYXRlSW1wbGVtZW50YXRpb24KICAgICAgICAgfQogICAgIH0KIAotICAgIGlmICgkaW50ZXJm
YWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiSW5kZXhlZEdldHRlciJ9KSB7CisgICAgaWYgKCRp
bmRleGVkR2V0dGVyRnVuY3Rpb24gJiYgISRoYXNOdW1lcmljSW5kZXhlZEdldHRlcikgewogICAg
ICAgICBwdXNoKEBpbXBsQ29udGVudCwgIlxuSlNWYWx1ZSAke2NsYXNzTmFtZX06OmluZGV4R2V0
dGVyKEV4ZWNTdGF0ZSogZXhlYywgSlNWYWx1ZSBzbG90QmFzZSwgdW5zaWduZWQgaW5kZXgpXG4i
KTsKICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICJ7XG4iKTsKICAgICAgICAgcHVzaChAaW1w
bENvbnRlbnQsICIgICAgJHtjbGFzc05hbWV9KiB0aGlzT2JqID0ganNDYXN0PCRjbGFzc05hbWUq
Pihhc09iamVjdChzbG90QmFzZSkpO1xuIik7CkBAIC0yNjQ3LDcgKzI2NTksNyBAQCBzdWIgR2Vu
ZXJhdGVJbXBsZW1lbnRhdGlvbgogICAgICAgICB9CiAgICAgfQogCi0gICAgaWYgKCRpbnRlcmZh
Y2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJOdW1lcmljSW5kZXhlZEdldHRlciJ9KSB7CisgICAg
aWYgKCRoYXNOdW1lcmljSW5kZXhlZEdldHRlcikgewogICAgICAgICBwdXNoKEBpbXBsQ29udGVu
dCwgIlxuSlNWYWx1ZSAke2NsYXNzTmFtZX06OmdldEJ5SW5kZXgoRXhlY1N0YXRlKiwgdW5zaWdu
ZWQgaW5kZXgpXG4iKTsKICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICJ7XG4iKTsKICAgICAg
ICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgQVNTRVJUX0dDX09CSkVDVF9JTkhFUklUUyh0aGlz
LCAmc19pbmZvKTtcbiIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy9JRExBdHRyaWJ1dGVzLnR4dCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
SURMQXR0cmlidXRlcy50eHQKaW5kZXggZDQxMWM4MS4uNDEwMGU2NSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9JRExBdHRyaWJ1dGVzLnR4dAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0lETEF0dHJpYnV0ZXMudHh0CkBAIC02MSw3ICs2
MSw2IEBAIEltbXV0YWJsZQogSW1wbGVtZW50YXRpb25MYWNrc1ZUYWJsZQogSW1wbGVtZW50YXRp
b25OYW1lc3BhY2U9KgogSW1wbGVtZW50ZWRBcz0qCi1JbmRleGVkR2V0dGVyCiBJbml0aWFsaXpl
ZEJ5RXZlbnRDb25zdHJ1Y3RvcgogSW50ZXJmYWNlTmFtZT0qCiBJc0luZGV4CkBAIC04NSw3ICs4
NCw2IEBAIE1hc3F1ZXJhZGVzQXNVbmRlZmluZWQKIE5hbWVkQ29uc3RydWN0b3I9KgogTm9JbnRl
cmZhY2VPYmplY3QKIE5vdEVudW1lcmFibGUKLU51bWVyaWNJbmRleGVkR2V0dGVyCiBPYmpDQ3Vz
dG9tSW1wbGVtZW50YXRpb24KIE9iakNMZWdhY3lVbm5hbWVkUGFyYW1ldGVycwogT2JqQ1BvbHlt
b3JwaGljCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
VGVzdEV2ZW50VGFyZ2V0LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9UZXN0RXZlbnRUYXJnZXQuaWRsCmluZGV4IDZmMDY1NzcuLjhkZjAzN2IgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9UZXN0RXZlbnRUYXJnZXQuaWRs
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9UZXN0RXZlbnRUYXJn
ZXQuaWRsCkBAIC0yOCwxMSArMjgsMTAgQEAKIAogWwogICAgIEV2ZW50VGFyZ2V0LAotICAgIElu
ZGV4ZWRHZXR0ZXIsCiAgICAgTWFzcXVlcmFkZXNBc1VuZGVmaW5lZAogXSBpbnRlcmZhY2UgVGVz
dEV2ZW50VGFyZ2V0IHsKIAotICAgIE5vZGUgaXRlbShbSXNJbmRleF0gdW5zaWduZWQgbG9uZyBp
bmRleCk7CisgICAgZ2V0dGVyIE5vZGUgaXRlbShbSXNJbmRleF0gdW5zaWduZWQgbG9uZyBpbmRl
eCk7CiAgICAgZ2V0dGVyIE5vZGUgKERPTVN0cmluZyBuYW1lKTsKIAogICAgIHZvaWQgYWRkRXZl
bnRMaXN0ZW5lcihET01TdHJpbmcgdHlwZSwgCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdFR5cGVkQXJyYXkuaWRsIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Rlc3RUeXBlZEFycmF5LmlkbAppbmRleCA5N2NlOTVlLi4y
MjdhNGNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
VGVzdFR5cGVkQXJyYXkuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9UZXN0VHlwZWRBcnJheS5pZGwKQEAgLTI2LDcgKzI2LDYgQEAKIAogWwogICAgIENvbnN0
cnVjdG9yVGVtcGxhdGU9VHlwZWRBcnJheSwKLSAgICBOdW1lcmljSW5kZXhlZEdldHRlciwKICAg
ICBDdXN0b21JbmRleGVkU2V0dGVyLAogICAgIEpTR2VuZXJhdGVUb05hdGl2ZU9iamVjdCwKICAg
ICBKU05vU3RhdGljVGFibGVzLApAQCAtMzYsNCArMzUsNiBAQAogXSBpbnRlcmZhY2UgRmxvYXQ2
NEFycmF5IDogQXJyYXlCdWZmZXJWaWV3IHsKICAgICBJbnQzMkFycmF5IGZvbyhGbG9hdDMyQXJy
YXkgYXJyYXkpOwogICAgIHZvaWQgc2V0KCk7CisKKyAgICBnZXR0ZXIgZG91YmxlICh1bnNpZ25l
ZCBsb25nIGluZGV4KTsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUnVs
ZUxpc3QuaWRsIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1J1bGVMaXN0LmlkbAppbmRleCBmNzZj
ZThjLi44NGExNmUzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUnVsZUxpc3Qu
aWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NSdWxlTGlzdC5pZGwKQEAgLTI2LDEwICsy
Niw5IEBACiAvLyBJbnRyb2R1Y2VkIGluIERPTSBMZXZlbCAyOgogWwogICAgIEN1c3RvbUlzUmVh
Y2hhYmxlLAotICAgIEluZGV4ZWRHZXR0ZXIsCiAgICAgU2tpcFZUYWJsZVZhbGlkYXRpb24KIF0g
aW50ZXJmYWNlIENTU1J1bGVMaXN0IHsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgdW5zaWduZWQg
bG9uZyAgICBsZW5ndGg7Ci0gICAgQ1NTUnVsZSAgICAgICAgICAgaXRlbShbRGVmYXVsdD1VbmRl
ZmluZWRdIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcgaW5kZXgpOworICAgIGdldHRlciBDU1NSdWxl
ICAgICAgICAgICBpdGVtKFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgdW5zaWduZWQgbG9u
ZyBpbmRleCk7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU3R5bGVE
ZWNsYXJhdGlvbi5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU3R5bGVEZWNsYXJhdGlvbi5p
ZGwKaW5kZXggMTcwMTU0MS4uMTRiNjQ2NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3Nz
L0NTU1N0eWxlRGVjbGFyYXRpb24uaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTdHls
ZURlY2xhcmF0aW9uLmlkbApAQCAtMjUsNyArMjUsNiBAQAogICAgIEdlbmVyYXRlSXNSZWFjaGFi
bGUsCiAgICAgSlNDdXN0b21HZXRPd25Qcm9wZXJ0eVNsb3RBbmREZXNjcmlwdG9yLAogICAgIEN1
c3RvbU5hbWVkU2V0dGVyLAotICAgIEluZGV4ZWRHZXR0ZXIsCiAgICAgQ3VzdG9tRW51bWVyYXRl
UHJvcGVydHksCiAgICAgU2tpcFZUYWJsZVZhbGlkYXRpb24KIF0gaW50ZXJmYWNlIENTU1N0eWxl
RGVjbGFyYXRpb24gewpAQCAtNDAsNyArMzksNyBAQAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgW0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRpb25hbCBET01TdHJpbmcgcHJpb3Jp
dHkpOwogCiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgICAgbGVuZ3RoOwot
ICAgIERPTVN0cmluZyAgICAgICAgICBpdGVtKFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwg
dW5zaWduZWQgbG9uZyBpbmRleCk7CisgICAgZ2V0dGVyIERPTVN0cmluZyAgICAgICAgICBpdGVt
KFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgdW5zaWduZWQgbG9uZyBpbmRleCk7CiAgICAg
cmVhZG9ubHkgYXR0cmlidXRlIENTU1J1bGUgICAgICAgICAgcGFyZW50UnVsZTsKIAogICAgIC8v
IEV4dGVuc2lvbnMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZUxpc3Qu
aWRsIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlTGlzdC5pZGwKaW5kZXggOTUwNGM3Yi4u
Y2E1MWQ2YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlTGlzdC5pZGwK
KysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlTGlzdC5pZGwKQEAgLTI1LDEwICsyNSw5
IEBACiAKIC8vIEludHJvZHVjZWQgaW4gRE9NIExldmVsIDI6CiBbCi0gICAgSW5kZXhlZEdldHRl
ciwKICAgICBJbXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxlCiBdIGludGVyZmFjZSBDU1NWYWx1ZUxp
c3QgOiBDU1NWYWx1ZSB7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgICAg
bGVuZ3RoOwotICAgIENTU1ZhbHVlICAgICAgICAgICBpdGVtKFtEZWZhdWx0PVVuZGVmaW5lZF0g
b3B0aW9uYWwgdW5zaWduZWQgbG9uZyBpbmRleCk7CisgICAgZ2V0dGVyIENTU1ZhbHVlICAgICAg
ICAgICBpdGVtKFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgdW5zaWduZWQgbG9uZyBpbmRl
eCk7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvTWVkaWFMaXN0LmlkbCBi
L1NvdXJjZS9XZWJDb3JlL2Nzcy9NZWRpYUxpc3QuaWRsCmluZGV4IDhhYWJiNzMuLjM0ZjgyNzUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9NZWRpYUxpc3QuaWRsCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9NZWRpYUxpc3QuaWRsCkBAIC0yNywxNCArMjcsMTMgQEAKIFsKICAgICBK
U0N1c3RvbUhlYWRlciwKICAgICBHZW5lcmF0ZUlzUmVhY2hhYmxlLAotICAgIEluZGV4ZWRHZXR0
ZXIsCiAgICAgSW1wbGVtZW50YXRpb25MYWNrc1ZUYWJsZQogXSBpbnRlcmZhY2UgTWVkaWFMaXN0
IHsKIAogICAgIFtUcmVhdE51bGxBcz1OdWxsU3RyaW5nLCBUcmVhdFJldHVybmVkTnVsbFN0cmlu
Z0FzPU51bGwsIFNldHRlclJhaXNlc0V4Y2VwdGlvbl0gYXR0cmlidXRlIERPTVN0cmluZyBtZWRp
YVRleHQ7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgbGVuZ3RoOwogCi0g
ICAgW1RyZWF0UmV0dXJuZWROdWxsU3RyaW5nQXM9TnVsbF0gRE9NU3RyaW5nIGl0ZW0oW0RlZmF1
bHQ9VW5kZWZpbmVkXSBvcHRpb25hbCB1bnNpZ25lZCBsb25nIGluZGV4KTsKKyAgICBbVHJlYXRS
ZXR1cm5lZE51bGxTdHJpbmdBcz1OdWxsXSBnZXR0ZXIgRE9NU3RyaW5nIGl0ZW0oW0RlZmF1bHQ9
VW5kZWZpbmVkXSBvcHRpb25hbCB1bnNpZ25lZCBsb25nIGluZGV4KTsKICAgICBbUmFpc2VzRXhj
ZXB0aW9uXSB2b2lkIGRlbGV0ZU1lZGl1bShbRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIERP
TVN0cmluZyBvbGRNZWRpdW0pOwogICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgYXBwZW5kTWVk
aXVtKFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgRE9NU3RyaW5nIG5ld01lZGl1bSk7CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVNoZWV0TGlzdC5pZGwgYi9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvU3R5bGVTaGVldExpc3QuaWRsCmluZGV4IDQ2Njg2YzEuLmNjNmJmM2Eg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVNoZWV0TGlzdC5pZGwKKysrIGIv
U291cmNlL1dlYkNvcmUvY3NzL1N0eWxlU2hlZXRMaXN0LmlkbApAQCAtMjEsMTEgKzIxLDEwIEBA
CiAvLyBJbnRyb2R1Y2VkIGluIERPTSBMZXZlbCAyOgogWwogICAgIEdlbmVyYXRlSXNSZWFjaGFi
bGU9SW1wbERvY3VtZW50LAotICAgIEluZGV4ZWRHZXR0ZXIsCiAgICAgSW1wbGVtZW50YXRpb25M
YWNrc1ZUYWJsZQogXSBpbnRlcmZhY2UgU3R5bGVTaGVldExpc3QgewogICAgIHJlYWRvbmx5IGF0
dHJpYnV0ZSB1bnNpZ25lZCBsb25nICAgIGxlbmd0aDsKLSAgICBTdHlsZVNoZWV0ICAgICAgICAg
aXRlbShbRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcgaW5kZXgpOwor
ICAgIGdldHRlciBTdHlsZVNoZWV0ICAgICAgICAgaXRlbShbRGVmYXVsdD1VbmRlZmluZWRdIG9w
dGlvbmFsIHVuc2lnbmVkIGxvbmcgaW5kZXgpOwogICAgIGdldHRlciBDU1NTdHlsZVNoZWV0IChE
T01TdHJpbmcgbmFtZSk7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvV2Vi
S2l0Q1NTRmlsdGVyVmFsdWUuaWRsIGIvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU0ZpbHRl
clZhbHVlLmlkbAppbmRleCAwMjFmZmE2Li44NWYzYmRiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9jc3MvV2ViS2l0Q1NTRmlsdGVyVmFsdWUuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nz
cy9XZWJLaXRDU1NGaWx0ZXJWYWx1ZS5pZGwKQEAgLTI1LDcgKzI1LDYgQEAKIAogWwogICAgICAg
ICBDb25kaXRpb25hbD1DU1NfRklMVEVSUywKLSAgICAgICAgSW5kZXhlZEdldHRlciwKICAgICAg
ICAgRG9Ob3RDaGVja0NvbnN0YW50cywKICAgICBJbXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxlCiBd
IGludGVyZmFjZSBXZWJLaXRDU1NGaWx0ZXJWYWx1ZSA6IENTU1ZhbHVlTGlzdCB7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTS2V5ZnJhbWVzUnVsZS5pZGwgYi9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTS2V5ZnJhbWVzUnVsZS5pZGwKaW5kZXggMTlmYWFhNS4u
NDU1MmE3YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU0tleWZyYW1l
c1J1bGUuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NLZXlmcmFtZXNSdWxl
LmlkbApAQCAtMjcsOSArMjcsNyBAQAogICovCiAKIC8vIEludHJvZHVjZWQgaW4gRE9NIExldmVs
ID86Ci1bCi0gICAgSW5kZXhlZEdldHRlcgotXSBpbnRlcmZhY2UgV2ViS2l0Q1NTS2V5ZnJhbWVz
UnVsZSA6IENTU1J1bGUgeworaW50ZXJmYWNlIFdlYktpdENTU0tleWZyYW1lc1J1bGUgOiBDU1NS
dWxlIHsKIAogICAgIFtUcmVhdFJldHVybmVkTnVsbFN0cmluZ0FzPU51bGwsIFRyZWF0TnVsbEFz
PU51bGxTdHJpbmddIGF0dHJpYnV0ZSBET01TdHJpbmcgbmFtZTsKICAgICByZWFkb25seSBhdHRy
aWJ1dGUgQ1NTUnVsZUxpc3QgY3NzUnVsZXM7CkBAIC0zNyw1ICszNSw3IEBACiAgICAgdm9pZCBp
bnNlcnRSdWxlKFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgRE9NU3RyaW5nIHJ1bGUpOwog
ICAgIHZvaWQgZGVsZXRlUnVsZShbRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIERPTVN0cmlu
ZyBrZXkpOwogICAgIFdlYktpdENTU0tleWZyYW1lUnVsZSBmaW5kUnVsZShbRGVmYXVsdD1VbmRl
ZmluZWRdIG9wdGlvbmFsIERPTVN0cmluZyBrZXkpOworCisgICAgZ2V0dGVyIFdlYktpdENTU0tl
eWZyYW1lUnVsZSAodW5zaWduZWQgbG9uZyBpbmRleCk7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTVHJhbnNmb3JtVmFsdWUuaWRsIGIvU291cmNlL1dlYkNv
cmUvY3NzL1dlYktpdENTU1RyYW5zZm9ybVZhbHVlLmlkbAppbmRleCA5NWRiYjI4Li43YTVjNjdi
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTVHJhbnNmb3JtVmFsdWUu
aWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NUcmFuc2Zvcm1WYWx1ZS5pZGwK
QEAgLTI3LDggKzI3LDcgQEAKICAqLwogCiBbCi0gICAgICAgIEluZGV4ZWRHZXR0ZXIsCi0gICAg
ICAgIERvTm90Q2hlY2tDb25zdGFudHMsCisgICAgRG9Ob3RDaGVja0NvbnN0YW50cywKICAgICBJ
bXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxlCiBdIGludGVyZmFjZSBXZWJLaXRDU1NUcmFuc2Zvcm1W
YWx1ZSA6IENTU1ZhbHVlTGlzdCB7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9D
bGllbnRSZWN0TGlzdC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9kb20vQ2xpZW50UmVjdExpc3QuaWRs
CmluZGV4IDRlZmFhYjcuLmNhMWZjYjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9D
bGllbnRSZWN0TGlzdC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0NsaWVudFJlY3RMaXN0
LmlkbApAQCAtMjUsMTEgKzI1LDEwIEBACiAgKi8KIAogWwotICAgIEluZGV4ZWRHZXR0ZXIsCiAg
ICAgSW1wbGVtZW50YXRpb25MYWNrc1ZUYWJsZQogXSBpbnRlcmZhY2UgQ2xpZW50UmVjdExpc3Qg
ewogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGxlbmd0aDsKLSAgICBDbGll
bnRSZWN0IGl0ZW0oW0lzSW5kZXgsIERlZmF1bHQ9VW5kZWZpbmVkXSBvcHRpb25hbCB1bnNpZ25l
ZCBsb25nIGluZGV4KTsKKyAgICBnZXR0ZXIgQ2xpZW50UmVjdCBpdGVtKFtJc0luZGV4LCBEZWZh
dWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgdW5zaWduZWQgbG9uZyBpbmRleCk7CiAgICAgLy8gRklY
TUU6IEZpeCBsaXN0IGJlaGF2aW9yIHRvIGFsbG93IGN1c3RvbSBleGNlcHRpb25zIHRvIGJlIHRo
cm93bi4KIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9ET01OYW1lZEZsb3dD
b2xsZWN0aW9uLmlkbCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9ET01OYW1lZEZsb3dDb2xsZWN0aW9u
LmlkbAppbmRleCA5YjQzYmExLi5mODY3YjY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9k
b20vRE9NTmFtZWRGbG93Q29sbGVjdGlvbi5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0RP
TU5hbWVkRmxvd0NvbGxlY3Rpb24uaWRsCkBAIC0zMiwxMCArMzIsOSBAQAogICAgIENvbmRpdGlv
bmFsPUNTU19SRUdJT05TLAogICAgIEludGVyZmFjZU5hbWU9V2ViS2l0TmFtZWRGbG93Q29sbGVj
dGlvbiwKICAgICBKU0dlbmVyYXRlVG9KU09iamVjdCwKLSAgICBJbmRleGVkR2V0dGVyLAogICAg
IEltcGxlbWVudGF0aW9uTGFja3NWVGFibGUKIF0gaW50ZXJmYWNlIERPTU5hbWVkRmxvd0NvbGxl
Y3Rpb24gewogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGxlbmd0aDsKLSAg
ICBXZWJLaXROYW1lZEZsb3cgaXRlbSh1bnNpZ25lZCBsb25nIGluZGV4KTsKKyAgICBnZXR0ZXIg
V2ViS2l0TmFtZWRGbG93IGl0ZW0odW5zaWduZWQgbG9uZyBpbmRleCk7CiAgICAgZ2V0dGVyIFdl
YktpdE5hbWVkRmxvdyBuYW1lZEl0ZW0oRE9NU3RyaW5nIG5hbWUpOwogfTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2RvbS9ET01TdHJpbmdMaXN0LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2Rv
bS9ET01TdHJpbmdMaXN0LmlkbAppbmRleCBkMTBhOGE2Li45MTVhNjZiIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9kb20vRE9NU3RyaW5nTGlzdC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUv
ZG9tL0RPTVN0cmluZ0xpc3QuaWRsCkBAIC0yNCwxMyArMjQsMTIgQEAKICAqLwogCiBbCi0gICAg
SW5kZXhlZEdldHRlciwKICAgICBKU0N1c3RvbVRvTmF0aXZlT2JqZWN0LAogICAgIEpTTm9TdGF0
aWNUYWJsZXMsCiAgICAgSW1wbGVtZW50YXRpb25MYWNrc1ZUYWJsZQogXSBpbnRlcmZhY2UgRE9N
U3RyaW5nTGlzdCB7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgbGVuZ3Ro
OwotICAgIFtUcmVhdFJldHVybmVkTnVsbFN0cmluZ0FzPU51bGxdIERPTVN0cmluZyBpdGVtKFtE
ZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgdW5zaWduZWQgbG9uZyBpbmRleCk7CisgICAgW1Ry
ZWF0UmV0dXJuZWROdWxsU3RyaW5nQXM9TnVsbF0gZ2V0dGVyIERPTVN0cmluZyBpdGVtKFtEZWZh
dWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgdW5zaWduZWQgbG9uZyBpbmRleCk7CiAgICAgYm9vbGVh
biBjb250YWlucyhbRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIERPTVN0cmluZyBzdHJpbmcp
OwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RhdGFUcmFuc2Zlckl0ZW1M
aXN0LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9EYXRhVHJhbnNmZXJJdGVtTGlzdC5pZGwKaW5k
ZXggMjRlN2Y3Zi4uYWIwMWEwNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RhdGFU
cmFuc2Zlckl0ZW1MaXN0LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRGF0YVRyYW5zZmVy
SXRlbUxpc3QuaWRsCkBAIC0zMSwxMiArMzEsMTEgQEAKIFsKICAgICBOb0ludGVyZmFjZU9iamVj
dCwKICAgICBDb25kaXRpb25hbD1EQVRBX1RSQU5TRkVSX0lURU1TLAotICAgIEluZGV4ZWRHZXR0
ZXIsCiAgICAgSlNHZW5lcmF0ZVRvTmF0aXZlT2JqZWN0LAogICAgIEltcGxlbWVudGF0aW9uTGFj
a3NWVGFibGUKIF0gaW50ZXJmYWNlIERhdGFUcmFuc2Zlckl0ZW1MaXN0IHsKICAgICByZWFkb25s
eSBhdHRyaWJ1dGUgbG9uZyBsZW5ndGg7Ci0gICAgRGF0YVRyYW5zZmVySXRlbSBpdGVtKFtEZWZh
dWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgdW5zaWduZWQgbG9uZyBpbmRleCk7CisgICAgZ2V0dGVy
IERhdGFUcmFuc2Zlckl0ZW0gaXRlbShbRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIHVuc2ln
bmVkIGxvbmcgaW5kZXgpOwogCiAgICAgdm9pZCBjbGVhcigpOwogICAgIHZvaWQgYWRkKEZpbGU/
IGZpbGUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL05hbWVkTm9kZU1hcC5pZGwg
Yi9Tb3VyY2UvV2ViQ29yZS9kb20vTmFtZWROb2RlTWFwLmlkbAppbmRleCA1Y2RlODhkLi5hZTY4
ZDQyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vTmFtZWROb2RlTWFwLmlkbAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9kb20vTmFtZWROb2RlTWFwLmlkbApAQCAtMjAsNyArMjAsNiBAQAog
CiBbCiAgICAgR2VuZXJhdGVJc1JlYWNoYWJsZT1JbXBsRWxlbWVudFJvb3QsCi0gICAgSW5kZXhl
ZEdldHRlciwKICAgICBJbXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxlCiBdIGludGVyZmFjZSBOYW1l
ZE5vZGVNYXAgewogCkBAIC0zMCw3ICsyOSw3IEBACiAKICAgICBbUmFpc2VzRXhjZXB0aW9uXSBO
b2RlIHJlbW92ZU5hbWVkSXRlbShbRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIERPTVN0cmlu
ZyBuYW1lKTsKIAotICAgIE5vZGUgaXRlbShbRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIHVu
c2lnbmVkIGxvbmcgaW5kZXgpOworICAgIGdldHRlciBOb2RlIGl0ZW0oW0RlZmF1bHQ9VW5kZWZp
bmVkXSBvcHRpb25hbCB1bnNpZ25lZCBsb25nIGluZGV4KTsKICAgICAKICAgICByZWFkb25seSBh
dHRyaWJ1dGUgdW5zaWduZWQgbG9uZyBsZW5ndGg7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2RvbS9Ob2RlTGlzdC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9kb20vTm9kZUxpc3QuaWRsCmlu
ZGV4IDJmZmNjNmUuLmNhMmMwMzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Ob2Rl
TGlzdC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL05vZGVMaXN0LmlkbApAQCAtMjAsMTEg
KzIwLDEwIEBACiAKIFsKICAgICBDdXN0b21Jc1JlYWNoYWJsZSwKLSAgICBJbmRleGVkR2V0dGVy
LAogICAgIFNraXBWVGFibGVWYWxpZGF0aW9uCiBdIGludGVyZmFjZSBOb2RlTGlzdCB7CiAKLSAg
ICBOb2RlIGl0ZW0oW0lzSW5kZXgsRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIHVuc2lnbmVk
IGxvbmcgaW5kZXgpOworICAgIGdldHRlciBOb2RlIGl0ZW0oW0lzSW5kZXgsRGVmYXVsdD1VbmRl
ZmluZWRdIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcgaW5kZXgpOwogICAgIGdldHRlciAoTm9kZSBv
ciB1bnNpZ25lZCBsb25nKSAoRE9NU3RyaW5nIG5hbWUpOwogCiAgICAgcmVhZG9ubHkgYXR0cmli
dXRlIHVuc2lnbmVkIGxvbmcgbGVuZ3RoOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9t
L1Byb3BlcnR5Tm9kZUxpc3QuaWRsIGIvU291cmNlL1dlYkNvcmUvZG9tL1Byb3BlcnR5Tm9kZUxp
c3QuaWRsCmluZGV4IDdlNmYzYTAuLjkxNWJmZTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2RvbS9Qcm9wZXJ0eU5vZGVMaXN0LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vUHJvcGVy
dHlOb2RlTGlzdC5pZGwKQEAgLTMwLDEyICszMCwxMSBAQAogCiBbCiAgICAgQ29uZGl0aW9uYWw9
TUlDUk9EQVRBLAotICAgIEluZGV4ZWRHZXR0ZXIsCiAgICAgSlNHZW5lcmF0ZVRvSlNPYmplY3QK
IF0gaW50ZXJmYWNlIFByb3BlcnR5Tm9kZUxpc3QgOiBOb2RlTGlzdCB7CiAKICAgICBzZXF1ZW5j
ZTxNaWNyb0RhdGFJdGVtVmFsdWU+IGdldFZhbHVlcygpOwotICAgIE5vZGUgaXRlbSh1bnNpZ25l
ZCBsb25nIGluZGV4KTsKKyAgICBnZXR0ZXIgTm9kZSBpdGVtKHVuc2lnbmVkIGxvbmcgaW5kZXgp
OwogCiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgbGVuZ3RoOwogfTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Ub3VjaExpc3QuaWRsIGIvU291cmNlL1dlYkNv
cmUvZG9tL1RvdWNoTGlzdC5pZGwKaW5kZXggODExZTBhNy4uZWJiZjgxYyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvZG9tL1RvdWNoTGlzdC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvZG9t
L1RvdWNoTGlzdC5pZGwKQEAgLTI1LDEwICsyNSw5IEBACiAKIFsKICAgICBDb25kaXRpb25hbD1U
T1VDSF9FVkVOVFMsCi0gICAgSW5kZXhlZEdldHRlciwKICAgICBJbXBsZW1lbnRhdGlvbkxhY2tz
VlRhYmxlCiBdIGludGVyZmFjZSBUb3VjaExpc3QgewogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1
bnNpZ25lZCBsb25nIGxlbmd0aDsKIAotICAgIFRvdWNoIGl0ZW0odW5zaWduZWQgbG9uZyBpbmRl
eCk7CisgICAgZ2V0dGVyIFRvdWNoIGl0ZW0odW5zaWduZWQgbG9uZyBpbmRleCk7CiB9OwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZmlsZWFwaS9GaWxlTGlzdC5pZGwgYi9Tb3VyY2UvV2Vi
Q29yZS9maWxlYXBpL0ZpbGVMaXN0LmlkbAppbmRleCA3YWRkMGMyLi5mMGQ0Y2U0IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0ZpbGVMaXN0LmlkbAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9maWxlYXBpL0ZpbGVMaXN0LmlkbApAQCAtMjQsMTEgKzI0LDEwIEBACiAgKi8KIAogWwot
ICAgIEluZGV4ZWRHZXR0ZXIsCiAgICAgSlNOb1N0YXRpY1RhYmxlcywKICAgICBJbXBsZW1lbnRh
dGlvbkxhY2tzVlRhYmxlCiBdIGludGVyZmFjZSBGaWxlTGlzdCB7CiAgICAgcmVhZG9ubHkgYXR0
cmlidXRlIHVuc2lnbmVkIGxvbmcgbGVuZ3RoOwotICAgIEZpbGUgaXRlbSh1bnNpZ25lZCBsb25n
IGluZGV4KTsKKyAgICBnZXR0ZXIgRmlsZSBpdGVtKHVuc2lnbmVkIGxvbmcgaW5kZXgpOwogfTsK
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9ET01TZXR0YWJsZVRva2VuTGlzdC5p
ZGwgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0RPTVNldHRhYmxlVG9rZW5MaXN0LmlkbAppbmRleCA2
OTQ3YjE5Li5hNTcxZDVlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0RPTVNldHRh
YmxlVG9rZW5MaXN0LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0RPTVNldHRhYmxlVG9r
ZW5MaXN0LmlkbApAQCAtMjMsNyArMjMsNiBAQAogICovCiAKIFsKLSAgICBJbmRleGVkR2V0dGVy
LAogICAgIEpTR2VuZXJhdGVUb0pTT2JqZWN0LAogICAgIFNraXBWVGFibGVWYWxpZGF0aW9uLAog
XSBpbnRlcmZhY2UgRE9NU2V0dGFibGVUb2tlbkxpc3QgOiBET01Ub2tlbkxpc3QgewpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9ET01Ub2tlbkxpc3QuaWRsIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9ET01Ub2tlbkxpc3QuaWRsCmluZGV4IGQ2N2UwMGYuLjU4OTMxMjkgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvRE9NVG9rZW5MaXN0LmlkbAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0RPTVRva2VuTGlzdC5pZGwKQEAgLTI0LDExICsyNCwxMCBAQAogCiBbCiAgICAg
R2VuZXJhdGVJc1JlYWNoYWJsZT1JbXBsRWxlbWVudFJvb3QsCi0gICAgSW5kZXhlZEdldHRlciwK
ICAgICBTa2lwVlRhYmxlVmFsaWRhdGlvbgogXSBpbnRlcmZhY2UgRE9NVG9rZW5MaXN0IHsKICAg
ICByZWFkb25seSBhdHRyaWJ1dGUgdW5zaWduZWQgbG9uZyBsZW5ndGg7Ci0gICAgW1RyZWF0UmV0
dXJuZWROdWxsU3RyaW5nQXM9TnVsbF0gRE9NU3RyaW5nIGl0ZW0odW5zaWduZWQgbG9uZyBpbmRl
eCk7CisgICAgW1RyZWF0UmV0dXJuZWROdWxsU3RyaW5nQXM9TnVsbF0gZ2V0dGVyIERPTVN0cmlu
ZyBpdGVtKHVuc2lnbmVkIGxvbmcgaW5kZXgpOwogICAgIFtSYWlzZXNFeGNlcHRpb25dIGJvb2xl
YW4gY29udGFpbnMoRE9NU3RyaW5nIHRva2VuKTsKICAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lk
IGFkZChET01TdHJpbmcuLi4gdG9rZW5zKTsKICAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHJl
bW92ZShET01TdHJpbmcuLi4gdG9rZW5zKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTEFsbENvbGxlY3Rpb24uaWRsIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MQWxsQ29s
bGVjdGlvbi5pZGwKaW5kZXggNjJlOTEzZS4uYThlNDQzNCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvaHRtbC9IVE1MQWxsQ29sbGVjdGlvbi5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvaHRt
bC9IVE1MQWxsQ29sbGVjdGlvbi5pZGwKQEAgLTI0LDEzICsyNCwxMiBAQAogICovCiAKIFsKLSAg
ICBJbmRleGVkR2V0dGVyLAogICAgIEN1c3RvbUNhbGwsCiAgICAgTWFzcXVlcmFkZXNBc1VuZGVm
aW5lZCwKICAgICBHZW5lcmF0ZUlzUmVhY2hhYmxlPUltcGxPd25lck5vZGVSb290LAogXSBpbnRl
cmZhY2UgSFRNTEFsbENvbGxlY3Rpb24gewogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25l
ZCBsb25nIGxlbmd0aDsKLSAgICBbQ3VzdG9tXSBOb2RlIGl0ZW0oW0RlZmF1bHQ9VW5kZWZpbmVk
XSBvcHRpb25hbCB1bnNpZ25lZCBsb25nIGluZGV4KTsKKyAgICBbQ3VzdG9tXSBnZXR0ZXIgTm9k
ZSBpdGVtKFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgdW5zaWduZWQgbG9uZyBpbmRleCk7
CiAgICAgW0N1c3RvbV0gZ2V0dGVyIE5vZGUgbmFtZWRJdGVtKERPTVN0cmluZyBuYW1lKTsKICAg
ICAvLyBGSVhNRTogVGhpcyBzaG91bGQgcmV0dXJuIGFuIEhUTUxBbGxDb2xsZWN0aW9uLgogICAg
IE5vZGVMaXN0IHRhZ3MoRE9NU3RyaW5nIG5hbWUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MQ29sbGVjdGlvbi5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxDb2xs
ZWN0aW9uLmlkbAppbmRleCA3MTZmNDJiLi42MmNiMDUwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0hUTUxDb2xsZWN0aW9uLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxDb2xsZWN0aW9uLmlkbApAQCAtMTksMTMgKzE5LDEyIEBACiAgKi8KIAogWwotICAgIEluZGV4
ZWRHZXR0ZXIsCiAgICAgQ3VzdG9tVG9KU09iamVjdCwKICAgICBHZW5lcmF0ZUlzUmVhY2hhYmxl
PUltcGxPd25lck5vZGVSb290LAogICAgIE9iakNQb2x5bW9ycGhpYywKIF0gaW50ZXJmYWNlIEhU
TUxDb2xsZWN0aW9uIHsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgdW5zaWduZWQgbG9uZyBsZW5n
dGg7Ci0gICAgTm9kZSBpdGVtKFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgdW5zaWduZWQg
bG9uZyBpbmRleCk7CisgICAgZ2V0dGVyIE5vZGUgaXRlbShbRGVmYXVsdD1VbmRlZmluZWRdIG9w
dGlvbmFsIHVuc2lnbmVkIGxvbmcgaW5kZXgpOwogICAgIGdldHRlciBOb2RlIG5hbWVkSXRlbShb
RGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIERPTVN0cmluZyBuYW1lKTsKIAogI2lmIGRlZmlu
ZWQoTEFOR1VBR0VfT0JKRUNUSVZFX0MpICYmIExBTkdVQUdFX09CSkVDVElWRV9DCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtQ29udHJvbHNDb2xsZWN0aW9uLmlkbCBi
L1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1Db250cm9sc0NvbGxlY3Rpb24uaWRsCmluZGV4
IDBjMDQ5NGUuLmZjNjQzNzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZv
cm1Db250cm9sc0NvbGxlY3Rpb24uaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZv
cm1Db250cm9sc0NvbGxlY3Rpb24uaWRsCkBAIC0xOSw3ICsxOSw2IEBACiAgKi8KIAogWwotICAg
IEluZGV4ZWRHZXR0ZXIsCiAgICAgR2VuZXJhdGVJc1JlYWNoYWJsZT1JbXBsT3duZXJOb2RlUm9v
dCwKIF0gaW50ZXJmYWNlIEhUTUxGb3JtQ29udHJvbHNDb2xsZWN0aW9uIDogSFRNTENvbGxlY3Rp
b24gewogICAgIFtDdXN0b21dIGdldHRlciBOb2RlIG5hbWVkSXRlbShbRGVmYXVsdD1VbmRlZmlu
ZWRdIG9wdGlvbmFsIERPTVN0cmluZyBuYW1lKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTEZvcm1FbGVtZW50LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1F
bGVtZW50LmlkbAppbmRleCA4NmE2Zjc0Li5hNjMyZGJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0hUTUxGb3JtRWxlbWVudC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9I
VE1MRm9ybUVsZW1lbnQuaWRsCkBAIC0xOSw3ICsxOSw2IEBACiAgKi8KIAogWwotICAgIEluZGV4
ZWRHZXR0ZXIsCiAgICAgQ3VzdG9tTmFtZWRHZXR0ZXIKIF0gaW50ZXJmYWNlIEhUTUxGb3JtRWxl
bWVudCA6IEhUTUxFbGVtZW50IHsKICAgICBbUmVmbGVjdD1hY2NlcHRfY2hhcnNldF0gYXR0cmli
dXRlIERPTVN0cmluZyBhY2NlcHRDaGFyc2V0OwpAQCAtMzUsNiArMzQsOCBAQAogICAgIHJlYWRv
bmx5IGF0dHJpYnV0ZSBIVE1MQ29sbGVjdGlvbiBlbGVtZW50czsKICAgICByZWFkb25seSBhdHRy
aWJ1dGUgbG9uZyBsZW5ndGg7CiAKKyAgICBnZXR0ZXIgRWxlbWVudCAodW5zaWduZWQgbG9uZyBp
bmRleCk7CisKICNpZiBkZWZpbmVkKExBTkdVQUdFX0pBVkFTQ1JJUFQpICYmIExBTkdVQUdFX0pB
VkFTQ1JJUFQKICAgICBbSW1wbGVtZW50ZWRBcz1zdWJtaXRGcm9tSmF2YVNjcmlwdF0gdm9pZCBz
dWJtaXQoKTsKICNlbHNlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxQcm9w
ZXJ0aWVzQ29sbGVjdGlvbi5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxQcm9wZXJ0aWVz
Q29sbGVjdGlvbi5pZGwKaW5kZXggNDlhZjRlZi4uMzkyZmI5NCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvaHRtbC9IVE1MUHJvcGVydGllc0NvbGxlY3Rpb24uaWRsCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTFByb3BlcnRpZXNDb2xsZWN0aW9uLmlkbApAQCAtMzEsMTAgKzMxLDkg
QEAKIFsKICAgICBDb25kaXRpb25hbD1NSUNST0RBVEEsCiAgICAgSlNHZW5lcmF0ZVRvSlNPYmpl
Y3QsCi0gICAgSW5kZXhlZEdldHRlcgogXSBpbnRlcmZhY2UgSFRNTFByb3BlcnRpZXNDb2xsZWN0
aW9uIDogSFRNTENvbGxlY3Rpb24gewogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBs
b25nIGxlbmd0aDsKLSAgICBOb2RlIGl0ZW0odW5zaWduZWQgbG9uZyBpbmRleCk7CisgICAgZ2V0
dGVyIE5vZGUgaXRlbSh1bnNpZ25lZCBsb25nIGluZGV4KTsKIAogICAgIHJlYWRvbmx5IGF0dHJp
YnV0ZSBET01TdHJpbmdMaXN0IG5hbWVzOwogICAgIFtJbXBsZW1lbnRlZEFzPXByb3BlcnR5Tm9k
ZUxpc3RdIGdldHRlciBQcm9wZXJ0eU5vZGVMaXN0IG5hbWVkSXRlbShET01TdHJpbmcgbmFtZSk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxTZWxlY3RFbGVtZW50LmlkbCBi
L1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFNlbGVjdEVsZW1lbnQuaWRsCmluZGV4IDI0ZTc2NGYu
LjZjN2RjZWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFNlbGVjdEVsZW1l
bnQuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFNlbGVjdEVsZW1lbnQuaWRsCkBA
IC0xOSw3ICsxOSw2IEBACiAgKi8KIAogWwotICAgIEluZGV4ZWRHZXR0ZXIsCiAgICAgQ3VzdG9t
SW5kZXhlZFNldHRlciwKIF0gaW50ZXJmYWNlIEhUTUxTZWxlY3RFbGVtZW50IDogSFRNTEVsZW1l
bnQgewogICAgIGF0dHJpYnV0ZSBbUmVmbGVjdF0gYm9vbGVhbiBhdXRvZm9jdXM7CkBAIC00MCw3
ICszOSw3IEBACiAjZWxzZQogICAgIFtTZXR0ZXJSYWlzZXNFeGNlcHRpb25dIGF0dHJpYnV0ZSB1
bnNpZ25lZCBsb25nIGxlbmd0aDsKICNlbmRpZgotICAgIE5vZGUgaXRlbShbSXNJbmRleCxEZWZh
dWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgdW5zaWduZWQgbG9uZyBpbmRleCk7CisgICAgZ2V0dGVy
IE5vZGUgaXRlbShbSXNJbmRleCxEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgdW5zaWduZWQg
bG9uZyBpbmRleCk7CiAgICAgTm9kZSBuYW1lZEl0ZW0oW0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRp
b25hbCBET01TdHJpbmcgbmFtZSk7CiAgICAgW09iakNMZWdhY3lVbm5hbWVkUGFyYW1ldGVycywg
UmFpc2VzRXhjZXB0aW9uXSB2b2lkIGFkZChbRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIEhU
TUxFbGVtZW50IGVsZW1lbnQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW0RlZmF1bHQ9
VW5kZWZpbmVkXSBvcHRpb25hbCBIVE1MRWxlbWVudCBiZWZvcmUpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvaHRtbC9SYWRpb05vZGVMaXN0LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwv
UmFkaW9Ob2RlTGlzdC5pZGwKaW5kZXggMjAwMTE2ZC4uMWNjY2VlNCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvaHRtbC9SYWRpb05vZGVMaXN0LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9o
dG1sL1JhZGlvTm9kZUxpc3QuaWRsCkBAIC0yNiw3ICsyNiw2IEBACiBbCiAgICAgTm9JbnRlcmZh
Y2VPYmplY3QsCiAgICAgSlNHZW5lcmF0ZVRvSlNPYmplY3QsCi0gICAgSW5kZXhlZEdldHRlciwK
IF0gaW50ZXJmYWNlIFJhZGlvTm9kZUxpc3QgOiBOb2RlTGlzdCB7CiAgICAgYXR0cmlidXRlIERP
TVN0cmluZyB2YWx1ZTsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZh
cy9GbG9hdDMyQXJyYXkuaWRsIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvRmxvYXQzMkFy
cmF5LmlkbAppbmRleCBmYTAxYzk4Li5lYTBjYzE1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL2NhbnZhcy9GbG9hdDMyQXJyYXkuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwv
Y2FudmFzL0Zsb2F0MzJBcnJheS5pZGwKQEAgLTI3LDcgKzI3LDYgQEAKIFsKICAgICBHbG9iYWxD
b250ZXh0PVdpbmRvd0FuZFdvcmtlciwKICAgICBDb25zdHJ1Y3RvclRlbXBsYXRlPVR5cGVkQXJy
YXksCi0gICAgTnVtZXJpY0luZGV4ZWRHZXR0ZXIsCiAgICAgQ3VzdG9tSW5kZXhlZFNldHRlciwK
ICAgICBKU0dlbmVyYXRlVG9OYXRpdmVPYmplY3QsCiAgICAgSlNOb1N0YXRpY1RhYmxlcywKQEAg
LTQyLDYgKzQxLDggQEAKICAgICBGbG9hdDMyQXJyYXkgc3ViYXJyYXkoW0RlZmF1bHQ9VW5kZWZp
bmVkXSBvcHRpb25hbCBsb25nIHN0YXJ0LCAKICAgICAgICAgICAgICAgICAgICAgICAgICAgb3B0
aW9uYWwgbG9uZyBlbmQpOwogCisgICAgZ2V0dGVyIGZsb2F0ICh1bnNpZ25lZCBsb25nIGluZGV4
KTsKKwogICAgIC8vIHZvaWQgc2V0KEZsb2F0MzJBcnJheSBhcnJheSwgb3B0aW9uYWwgdW5zaWdu
ZWQgbG9uZyBvZmZzZXQpOwogICAgIC8vIHZvaWQgc2V0KHNlcXVlbmNlPGxvbmc+IGFycmF5LCBv
cHRpb25hbCB1bnNpZ25lZCBsb25nIG9mZnNldCk7CiAgICAgdm9pZCBzZXQoKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL0Zsb2F0NjRBcnJheS5pZGwgYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL2NhbnZhcy9GbG9hdDY0QXJyYXkuaWRsCmluZGV4IGM5NWJlMTMuLjE2OGQy
YzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL0Zsb2F0NjRBcnJheS5p
ZGwKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvRmxvYXQ2NEFycmF5LmlkbApAQCAt
MjcsNyArMjcsNiBAQAogWwogICAgIEdsb2JhbENvbnRleHQ9V2luZG93QW5kV29ya2VyLAogICAg
IENvbnN0cnVjdG9yVGVtcGxhdGU9VHlwZWRBcnJheSwKLSAgICBOdW1lcmljSW5kZXhlZEdldHRl
ciwKICAgICBDdXN0b21JbmRleGVkU2V0dGVyLAogICAgIEpTR2VuZXJhdGVUb05hdGl2ZU9iamVj
dCwKICAgICBKU05vU3RhdGljVGFibGVzLApAQCAtNDIsNiArNDEsOCBAQAogICAgIEZsb2F0NjRB
cnJheSBzdWJhcnJheShbRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIGxvbmcgc3RhcnQsIAog
ICAgICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25hbCBsb25nIGVuZCk7CiAKKyAgICBnZXR0
ZXIgZG91YmxlICh1bnNpZ25lZCBsb25nIGluZGV4KTsKKwogICAgIC8vIHZvaWQgc2V0KEZsb2F0
NjRBcnJheSBhcnJheSwgb3B0aW9uYWwgdW5zaWduZWQgbG9uZyBvZmZzZXQpOwogICAgIC8vIHZv
aWQgc2V0KHNlcXVlbmNlPGxvbmc+IGFycmF5LCBvcHRpb25hbCB1bnNpZ25lZCBsb25nIG9mZnNl
dCk7CiAgICAgdm9pZCBzZXQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2Fu
dmFzL0ludDE2QXJyYXkuaWRsIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvSW50MTZBcnJh
eS5pZGwKaW5kZXggYzc2NTE5YS4uYmM0NGZkOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
aHRtbC9jYW52YXMvSW50MTZBcnJheS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52
YXMvSW50MTZBcnJheS5pZGwKQEAgLTI2LDcgKzI2LDYgQEAKIFsKICAgICBHbG9iYWxDb250ZXh0
PVdpbmRvd0FuZFdvcmtlciwKICAgICBDb25zdHJ1Y3RvclRlbXBsYXRlPVR5cGVkQXJyYXksCi0g
ICAgTnVtZXJpY0luZGV4ZWRHZXR0ZXIsCiAgICAgQ3VzdG9tSW5kZXhlZFNldHRlciwKICAgICBK
U0dlbmVyYXRlVG9OYXRpdmVPYmplY3QsCiAgICAgSlNOb1N0YXRpY1RhYmxlcywKQEAgLTQxLDYg
KzQwLDggQEAKICAgICBJbnQxNkFycmF5IHN1YmFycmF5KFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0
aW9uYWwgbG9uZyBzdGFydCwgCiAgICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25hbCBsb25n
IGVuZCk7CiAKKyAgICBnZXR0ZXIgc2hvcnQgKHVuc2lnbmVkIGxvbmcgaW5kZXgpOworCiAgICAg
Ly8gdm9pZCBzZXQoSW50MTZBcnJheSBhcnJheSwgb3B0aW9uYWwgdW5zaWduZWQgbG9uZyBvZmZz
ZXQpOwogICAgIC8vIHZvaWQgc2V0KHNlcXVlbmNlPGxvbmc+IGFycmF5LCBvcHRpb25hbCB1bnNp
Z25lZCBsb25nIG9mZnNldCk7CiAgICAgdm9pZCBzZXQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvY2FudmFzL0ludDMyQXJyYXkuaWRsIGIvU291cmNlL1dlYkNvcmUvaHRtbC9j
YW52YXMvSW50MzJBcnJheS5pZGwKaW5kZXggMWVlNDQxYy4uNmZmN2I4MCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvSW50MzJBcnJheS5pZGwKKysrIGIvU291cmNlL1dl
YkNvcmUvaHRtbC9jYW52YXMvSW50MzJBcnJheS5pZGwKQEAgLTI3LDcgKzI3LDYgQEAKIFsKICAg
ICBHbG9iYWxDb250ZXh0PVdpbmRvd0FuZFdvcmtlciwKICAgICBDb25zdHJ1Y3RvclRlbXBsYXRl
PVR5cGVkQXJyYXksCi0gICAgTnVtZXJpY0luZGV4ZWRHZXR0ZXIsCiAgICAgQ3VzdG9tSW5kZXhl
ZFNldHRlciwKICAgICBKU0dlbmVyYXRlVG9OYXRpdmVPYmplY3QsCiAgICAgSlNOb1N0YXRpY1Rh
YmxlcywKQEAgLTQyLDYgKzQxLDggQEAKICAgICBJbnQzMkFycmF5IHN1YmFycmF5KFtEZWZhdWx0
PVVuZGVmaW5lZF0gb3B0aW9uYWwgbG9uZyBzdGFydCwgCiAgICAgICAgICAgICAgICAgICAgICAg
ICBvcHRpb25hbCBsb25nIGVuZCk7CiAKKyAgICBnZXR0ZXIgbG9uZyAodW5zaWduZWQgbG9uZyBp
bmRleCk7CisKICAgICAvLyB2b2lkIHNldChJbnQzMkFycmF5IGFycmF5LCBvcHRpb25hbCB1bnNp
Z25lZCBsb25nIG9mZnNldCk7CiAgICAgLy8gdm9pZCBzZXQoc2VxdWVuY2U8bG9uZz4gYXJyYXks
IG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcgb2Zmc2V0KTsKICAgICB2b2lkIHNldCgpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvSW50OEFycmF5LmlkbCBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvY2FudmFzL0ludDhBcnJheS5pZGwKaW5kZXggMDM1ZThjNC4uZDM3YzMxYiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvSW50OEFycmF5LmlkbAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9JbnQ4QXJyYXkuaWRsCkBAIC0yNyw3ICsyNyw2
IEBACiBbCiAgICAgR2xvYmFsQ29udGV4dD1XaW5kb3dBbmRXb3JrZXIsCiAgICAgQ29uc3RydWN0
b3JUZW1wbGF0ZT1UeXBlZEFycmF5LAotICAgIE51bWVyaWNJbmRleGVkR2V0dGVyLAogICAgIEN1
c3RvbUluZGV4ZWRTZXR0ZXIsCiAgICAgSlNHZW5lcmF0ZVRvTmF0aXZlT2JqZWN0LAogICAgIEpT
Tm9TdGF0aWNUYWJsZXMsCkBAIC00Miw2ICs0MSw4IEBACiAgICAgSW50OEFycmF5IHN1YmFycmF5
KFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgbG9uZyBzdGFydCwgCiAgICAgICAgICAgICAg
ICAgICAgICAgIG9wdGlvbmFsIGxvbmcgZW5kKTsKIAorICAgIGdldHRlciBieXRlICh1bnNpZ25l
ZCBsb25nIGluZGV4KTsKKwogICAgIC8vIHZvaWQgc2V0KEludDhBcnJheSBhcnJheSwgb3B0aW9u
YWwgdW5zaWduZWQgbG9uZyBvZmZzZXQpOwogICAgIC8vIHZvaWQgc2V0KHNlcXVlbmNlPGxvbmc+
IGFycmF5LCBvcHRpb25hbCB1bnNpZ25lZCBsb25nIG9mZnNldCk7CiAgICAgdm9pZCBzZXQoKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1VpbnQxNkFycmF5LmlkbCBi
L1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1VpbnQxNkFycmF5LmlkbAppbmRleCAwNmM4ZDVk
Li5hNDgyNzI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9VaW50MTZB
cnJheS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvVWludDE2QXJyYXkuaWRs
CkBAIC0yNyw3ICsyNyw2IEBACiBbCiAgICAgR2xvYmFsQ29udGV4dD1XaW5kb3dBbmRXb3JrZXIs
CiAgICAgQ29uc3RydWN0b3JUZW1wbGF0ZT1UeXBlZEFycmF5LAotICAgIE51bWVyaWNJbmRleGVk
R2V0dGVyLAogICAgIEN1c3RvbUluZGV4ZWRTZXR0ZXIsCiAgICAgSlNHZW5lcmF0ZVRvTmF0aXZl
T2JqZWN0LAogICAgIEpTTm9TdGF0aWNUYWJsZXMsCkBAIC00MSw2ICs0MCw4IEBACiAgICAgcmVh
ZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgbGVuZ3RoOwogICAgIFVpbnQxNkFycmF5IHN1
YmFycmF5KFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgbG9uZyBzdGFydCwgb3B0aW9uYWwg
bG9uZyBlbmQpOwogCisgICAgZ2V0dGVyIHVuc2lnbmVkIHNob3J0ICh1bnNpZ25lZCBsb25nIGlu
ZGV4KTsKKwogICAgIC8vIHZvaWQgc2V0KFVpbnQxNkFycmF5IGFycmF5LCBvcHRpb25hbCB1bnNp
Z25lZCBsb25nIG9mZnNldCk7CiAgICAgLy8gdm9pZCBzZXQoc2VxdWVuY2U8bG9uZz4gYXJyYXks
IG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcgb2Zmc2V0KTsKICAgICB2b2lkIHNldCgpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvVWludDMyQXJyYXkuaWRsIGIvU291cmNl
L1dlYkNvcmUvaHRtbC9jYW52YXMvVWludDMyQXJyYXkuaWRsCmluZGV4IDc3NWNjMjQuLjQ2NzAy
MWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1VpbnQzMkFycmF5Lmlk
bAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9VaW50MzJBcnJheS5pZGwKQEAgLTI3
LDcgKzI3LDYgQEAKIFsKICAgICBHbG9iYWxDb250ZXh0PVdpbmRvd0FuZFdvcmtlciwKICAgICBD
b25zdHJ1Y3RvclRlbXBsYXRlPVR5cGVkQXJyYXksCi0gICAgTnVtZXJpY0luZGV4ZWRHZXR0ZXIs
CiAgICAgQ3VzdG9tSW5kZXhlZFNldHRlciwKICAgICBKU0dlbmVyYXRlVG9OYXRpdmVPYmplY3Qs
CiAgICAgSlNOb1N0YXRpY1RhYmxlcywKQEAgLTQxLDYgKzQwLDggQEAKICAgICByZWFkb25seSBh
dHRyaWJ1dGUgdW5zaWduZWQgbG9uZyBsZW5ndGg7CiAgICAgVWludDMyQXJyYXkgc3ViYXJyYXko
W0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRpb25hbCBsb25nIHN0YXJ0LCBvcHRpb25hbCBsb25nIGVu
ZCk7CiAKKyAgICBnZXR0ZXIgdW5zaWduZWQgbG9uZyAodW5zaWduZWQgbG9uZyBpbmRleCk7CisK
ICAgICAvLyB2b2lkIHNldChVaW50MzJBcnJheSBhcnJheSwgb3B0aW9uYWwgdW5zaWduZWQgbG9u
ZyBvZmZzZXQpOwogICAgIC8vIHZvaWQgc2V0KHNlcXVlbmNlPGxvbmc+IGFycmF5LCBvcHRpb25h
bCB1bnNpZ25lZCBsb25nIG9mZnNldCk7CiAgICAgdm9pZCBzZXQoKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1VpbnQ4QXJyYXkuaWRsIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9jYW52YXMvVWludDhBcnJheS5pZGwKaW5kZXggM2E0MTdhNS4uZmQ1ZTc0MCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvVWludDhBcnJheS5pZGwKKysrIGIvU291
cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvVWludDhBcnJheS5pZGwKQEAgLTI3LDcgKzI3LDYgQEAK
IFsKICAgICBHbG9iYWxDb250ZXh0PVdpbmRvd0FuZFdvcmtlciwKICAgICBDb25zdHJ1Y3RvclRl
bXBsYXRlPVR5cGVkQXJyYXksCi0gICAgTnVtZXJpY0luZGV4ZWRHZXR0ZXIsCiAgICAgQ3VzdG9t
SW5kZXhlZFNldHRlciwKICAgICBKU0dlbmVyYXRlVG9OYXRpdmVPYmplY3QsCiAgICAgSlNOb1N0
YXRpY1RhYmxlcywKQEAgLTQxLDYgKzQwLDggQEAKICAgICByZWFkb25seSBhdHRyaWJ1dGUgdW5z
aWduZWQgbG9uZyBsZW5ndGg7CiAgICAgVWludDhBcnJheSBzdWJhcnJheShbRGVmYXVsdD1VbmRl
ZmluZWRdIG9wdGlvbmFsIGxvbmcgc3RhcnQsIG9wdGlvbmFsIGxvbmcgZW5kKTsKIAorICAgIGdl
dHRlciBvY3RldCAodW5zaWduZWQgbG9uZyBpbmRleCk7CisKICAgICAvLyB2b2lkIHNldChVaW50
OEFycmF5IGFycmF5LCBvcHRpb25hbCB1bnNpZ25lZCBsb25nIG9mZnNldCk7CiAgICAgLy8gdm9p
ZCBzZXQoc2VxdWVuY2U8bG9uZz4gYXJyYXksIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcgb2Zmc2V0
KTsKICAgICB2b2lkIHNldCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52
YXMvVWludDhDbGFtcGVkQXJyYXkuaWRsIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvVWlu
dDhDbGFtcGVkQXJyYXkuaWRsCmluZGV4IDM0NmRkMWYuLjhlODIzZDAgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1VpbnQ4Q2xhbXBlZEFycmF5LmlkbAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL2NhbnZhcy9VaW50OENsYW1wZWRBcnJheS5pZGwKQEAgLTI3LDcgKzI3
LDYgQEAKIFsKICAgICBHbG9iYWxDb250ZXh0PVdpbmRvd0FuZFdvcmtlciwKICAgICBDb25zdHJ1
Y3RvclRlbXBsYXRlPVR5cGVkQXJyYXksCi0gICAgTnVtZXJpY0luZGV4ZWRHZXR0ZXIsCiAgICAg
Q3VzdG9tSW5kZXhlZFNldHRlciwKICAgICBKU0dlbmVyYXRlVG9OYXRpdmVPYmplY3QsCiAgICAg
SlNOb1N0YXRpY1RhYmxlcywKQEAgLTQxLDYgKzQwLDggQEAKICAgICByZWFkb25seSBhdHRyaWJ1
dGUgdW5zaWduZWQgbG9uZyBsZW5ndGg7CiAgICAgVWludDhDbGFtcGVkQXJyYXkgc3ViYXJyYXko
W0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRpb25hbCBsb25nIHN0YXJ0LCBvcHRpb25hbCBsb25nIGVu
ZCk7CiAKKyAgICBnZXR0ZXIgb2N0ZXQgKHVuc2lnbmVkIGxvbmcgaW5kZXgpOworCiAgICAgLy8g
RklYTUU6IE1pc3Npbmcgb3RoZXIgc2V0dGVycyEKICAgICAvLyB2b2lkIHNldChVaW50OENsYW1w
ZWRBcnJheSBhcnJheSwgb3B0aW9uYWwgdW5zaWduZWQgbG9uZyBvZmZzZXQpOwogICAgIC8vIHZv
aWQgc2V0KHNlcXVlbmNlPGxvbmc+IGFycmF5LCBvcHRpb25hbCB1bnNpZ25lZCBsb25nIG9mZnNl
dCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL0F1ZGlvVHJhY2tMaXN0
LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svQXVkaW9UcmFja0xpc3QuaWRsCmluZGV4
IGQ1MjcxNjIuLmUxOTVmYTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2sv
QXVkaW9UcmFja0xpc3QuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svQXVkaW9U
cmFja0xpc3QuaWRsCkBAIC0yNywxMiArMjcsMTEgQEAKICAgICBOb0ludGVyZmFjZU9iamVjdCwK
ICAgICBDb25kaXRpb25hbD1WSURFT19UUkFDSywKICAgICBHZW5lcmF0ZUlzUmVhY2hhYmxlPUlt
cGxFbGVtZW50Um9vdCwKLSAgICBJbmRleGVkR2V0dGVyLAogICAgIEV2ZW50VGFyZ2V0LAogICAg
IEpTQ3VzdG9tTWFya0Z1bmN0aW9uCiBdIGludGVyZmFjZSBBdWRpb1RyYWNrTGlzdCB7CiAgICAg
cmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgbGVuZ3RoOwotICAgIEF1ZGlvVHJhY2sg
aXRlbSh1bnNpZ25lZCBsb25nIGluZGV4KTsKKyAgICBnZXR0ZXIgQXVkaW9UcmFjayBpdGVtKHVu
c2lnbmVkIGxvbmcgaW5kZXgpOwogICAgIEF1ZGlvVHJhY2sgZ2V0VHJhY2tCeUlkKERPTVN0cmlu
ZyBpZCk7CiAKICAgICBhdHRyaWJ1dGUgRXZlbnRMaXN0ZW5lciBvbmNoYW5nZTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrQ3VlTGlzdC5pZGwgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL3RyYWNrL1RleHRUcmFja0N1ZUxpc3QuaWRsCmluZGV4IDk1OTQ3NTgu
LjA4MDI1OTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNr
Q3VlTGlzdC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UZXh0VHJhY2tDdWVM
aXN0LmlkbApAQCAtMjUsMTEgKzI1LDEwIEBACiAKIFsKICAgICBDb25kaXRpb25hbD1WSURFT19U
UkFDSywKLSAgICBJbmRleGVkR2V0dGVyLAogICAgIEltcGxlbWVudGF0aW9uTGFja3NWVGFibGUK
IF0gaW50ZXJmYWNlIFRleHRUcmFja0N1ZUxpc3QgewogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1
bnNpZ25lZCBsb25nIGxlbmd0aDsKLSAgICBUZXh0VHJhY2tDdWUgaXRlbSh1bnNpZ25lZCBsb25n
IGluZGV4KTsKKyAgICBnZXR0ZXIgVGV4dFRyYWNrQ3VlIGl0ZW0odW5zaWduZWQgbG9uZyBpbmRl
eCk7CiAgICAgVGV4dFRyYWNrQ3VlIGdldEN1ZUJ5SWQoRE9NU3RyaW5nIGlkKTsKIH07CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrTGlzdC5pZGwgYi9T
b3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RleHRUcmFja0xpc3QuaWRsCmluZGV4IGQ5ZDVkMzIu
LjAxYjBhMzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNr
TGlzdC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UZXh0VHJhY2tMaXN0Lmlk
bApAQCAtMjYsMTIgKzI2LDExIEBACiBbCiAgICAgQ29uZGl0aW9uYWw9VklERU9fVFJBQ0ssCiAg
ICAgR2VuZXJhdGVJc1JlYWNoYWJsZT1JbXBsRWxlbWVudFJvb3QsCi0gICAgSW5kZXhlZEdldHRl
ciwKICAgICBFdmVudFRhcmdldCwKICAgICBKU0N1c3RvbU1hcmtGdW5jdGlvbgogXSBpbnRlcmZh
Y2UgVGV4dFRyYWNrTGlzdCB7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcg
bGVuZ3RoOwotICAgIFRleHRUcmFjayBpdGVtKHVuc2lnbmVkIGxvbmcgaW5kZXgpOworICAgIGdl
dHRlciBUZXh0VHJhY2sgaXRlbSh1bnNpZ25lZCBsb25nIGluZGV4KTsKIAogICAgIGF0dHJpYnV0
ZSBFdmVudExpc3RlbmVyIG9uYWRkdHJhY2s7CiAgICAgYXR0cmlidXRlIEV2ZW50TGlzdGVuZXIg
b25yZW1vdmV0cmFjazsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4
dFRyYWNrUmVnaW9uTGlzdC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RleHRUcmFj
a1JlZ2lvbkxpc3QuaWRsCmluZGV4IGI1MmExNzQuLjg4MDRhNTIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrUmVnaW9uTGlzdC5pZGwKKysrIGIvU291cmNl
L1dlYkNvcmUvaHRtbC90cmFjay9UZXh0VHJhY2tSZWdpb25MaXN0LmlkbApAQCAtMjYsMTEgKzI2
LDEwIEBACiBbCiAgICAgTm9JbnRlcmZhY2VPYmplY3QsCiAgICAgQ29uZGl0aW9uYWw9VklERU9f
VFJBQ0sgJiBXRUJWVFRfUkVHSU9OUywKLSAgICBJbmRleGVkR2V0dGVyLAogICAgIEltcGxlbWVu
dGF0aW9uTGFja3NWVGFibGUKIF0gaW50ZXJmYWNlIFRleHRUcmFja1JlZ2lvbkxpc3QgewogICAg
IHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGxlbmd0aDsKLSAgICBUZXh0VHJhY2tS
ZWdpb24gaXRlbSh1bnNpZ25lZCBsb25nIGluZGV4KTsKKyAgICBnZXR0ZXIgVGV4dFRyYWNrUmVn
aW9uIGl0ZW0odW5zaWduZWQgbG9uZyBpbmRleCk7CiAgICAgVGV4dFRyYWNrUmVnaW9uIGdldFJl
Z2lvbkJ5SWQoRE9NU3RyaW5nIGlkKTsKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvdHJhY2svVmlkZW9UcmFja0xpc3QuaWRsIGIvU291cmNlL1dlYkNvcmUvaHRtbC90cmFj
ay9WaWRlb1RyYWNrTGlzdC5pZGwKaW5kZXggZTI4ZDg3Ny4uOTAyZjUxNiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9WaWRlb1RyYWNrTGlzdC5pZGwKKysrIGIvU291cmNl
L1dlYkNvcmUvaHRtbC90cmFjay9WaWRlb1RyYWNrTGlzdC5pZGwKQEAgLTI3LDEyICsyNywxMSBA
QAogICAgIE5vSW50ZXJmYWNlT2JqZWN0LAogICAgIENvbmRpdGlvbmFsPVZJREVPX1RSQUNLLAog
ICAgIEdlbmVyYXRlSXNSZWFjaGFibGU9SW1wbEVsZW1lbnRSb290LAotICAgIEluZGV4ZWRHZXR0
ZXIsCiAgICAgRXZlbnRUYXJnZXQsCiAgICAgSlNDdXN0b21NYXJrRnVuY3Rpb24KIF0gaW50ZXJm
YWNlIFZpZGVvVHJhY2tMaXN0IHsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgdW5zaWduZWQgbG9u
ZyBsZW5ndGg7Ci0gICAgVmlkZW9UcmFjayBpdGVtKHVuc2lnbmVkIGxvbmcgaW5kZXgpOworICAg
IGdldHRlciBWaWRlb1RyYWNrIGl0ZW0odW5zaWduZWQgbG9uZyBpbmRleCk7CiAgICAgVmlkZW9U
cmFjayBnZXRUcmFja0J5SWQoRE9NU3RyaW5nIGlkKTsKIAogICAgIGF0dHJpYnV0ZSBFdmVudExp
c3RlbmVyIG9uY2hhbmdlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3Jt
YW5jZUVudHJ5TGlzdC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnlM
aXN0LmlkbAppbmRleCBhYjcwYjc0Li40ZGM5ZWJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL1BlcmZvcm1hbmNlRW50cnlMaXN0LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdl
L1BlcmZvcm1hbmNlRW50cnlMaXN0LmlkbApAQCAtMzMsMTAgKzMzLDkgQEAKICAgICBOb0ludGVy
ZmFjZU9iamVjdCwKICAgICBDb25kaXRpb25hbD1XRUJfVElNSU5HLAogICAgIENvbmRpdGlvbmFs
PVBFUkZPUk1BTkNFX1RJTUVMSU5FLAotICAgIEluZGV4ZWRHZXR0ZXIsCiAgICAgSW1wbGVtZW50
YXRpb25MYWNrc1ZUYWJsZQogXSBpbnRlcmZhY2UgUGVyZm9ybWFuY2VFbnRyeUxpc3QgewogICAg
IHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGxlbmd0aDsKLSAgICBQZXJmb3JtYW5j
ZUVudHJ5IGl0ZW0odW5zaWduZWQgbG9uZyBpbmRleCk7CisgICAgZ2V0dGVyIFBlcmZvcm1hbmNl
RW50cnkgaXRlbSh1bnNpZ25lZCBsb25nIGluZGV4KTsKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvU3BlZWNoSW5wdXRSZXN1bHRMaXN0LmlkbCBiL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvU3BlZWNoSW5wdXRSZXN1bHRMaXN0LmlkbAppbmRleCBmOWRjZjM0Li40Y2YyOWVhIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NwZWVjaElucHV0UmVzdWx0TGlzdC5pZGwK
KysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9TcGVlY2hJbnB1dFJlc3VsdExpc3QuaWRsCkBAIC0y
NSwxMSArMjUsMTAgQEAKIAogWwogICAgIE5vSW50ZXJmYWNlT2JqZWN0LAotICAgIEluZGV4ZWRH
ZXR0ZXIsCiAgICAgQ29uZGl0aW9uYWw9SU5QVVRfU1BFRUNILAogICAgIEltcGxlbWVudGF0aW9u
TGFja3NWVGFibGUKIF0gaW50ZXJmYWNlIFNwZWVjaElucHV0UmVzdWx0TGlzdCB7CiAgICAgcmVh
ZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgbGVuZ3RoOwotICAgIFNwZWVjaElucHV0UmVz
dWx0IGl0ZW0oW0lzSW5kZXhdIHVuc2lnbmVkIGxvbmcgaW5kZXgpOworICAgIGdldHRlciBTcGVl
Y2hJbnB1dFJlc3VsdCBpdGVtKFtJc0luZGV4XSB1bnNpZ25lZCBsb25nIGluZGV4KTsKIH07CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsdWdpbnMvRE9NTWltZVR5cGVBcnJheS5pZGwg
Yi9Tb3VyY2UvV2ViQ29yZS9wbHVnaW5zL0RPTU1pbWVUeXBlQXJyYXkuaWRsCmluZGV4IDQ2Njcz
NDQuLjljZTUyYjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsdWdpbnMvRE9NTWltZVR5
cGVBcnJheS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvcGx1Z2lucy9ET01NaW1lVHlwZUFycmF5
LmlkbApAQCAtMjAsMTEgKzIwLDEwIEBACiAKIFsKICAgICBHZW5lcmF0ZUlzUmVhY2hhYmxlPUlt
cGxGcmFtZSwKLSAgICBJbmRleGVkR2V0dGVyLAogICAgIEludGVyZmFjZU5hbWU9TWltZVR5cGVB
cnJheQogXSBpbnRlcmZhY2UgRE9NTWltZVR5cGVBcnJheSB7CiAgICAgcmVhZG9ubHkgYXR0cmli
dXRlIHVuc2lnbmVkIGxvbmcgbGVuZ3RoOwotICAgIERPTU1pbWVUeXBlIGl0ZW0oW0RlZmF1bHQ9
VW5kZWZpbmVkXSBvcHRpb25hbCB1bnNpZ25lZCBsb25nIGluZGV4KTsKKyAgICBnZXR0ZXIgRE9N
TWltZVR5cGUgaXRlbShbRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcg
aW5kZXgpOwogICAgIGdldHRlciBET01NaW1lVHlwZSBuYW1lZEl0ZW0oW0RlZmF1bHQ9VW5kZWZp
bmVkXSBvcHRpb25hbCBET01TdHJpbmcgbmFtZSk7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wbHVnaW5zL0RPTVBsdWdpbi5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9wbHVnaW5zL0RP
TVBsdWdpbi5pZGwKaW5kZXggZjRhYzQ1Yy4uMDhlNGE4NCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGx1Z2lucy9ET01QbHVnaW4uaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsdWdpbnMv
RE9NUGx1Z2luLmlkbApAQCAtMTksMTQgKzE5LDEzIEBACiAqLwogCiBbCi0gICAgSW5kZXhlZEdl
dHRlciwKICAgICBJbnRlcmZhY2VOYW1lPVBsdWdpbgogXSBpbnRlcmZhY2UgRE9NUGx1Z2luIHsK
ICAgICByZWFkb25seSBhdHRyaWJ1dGUgRE9NU3RyaW5nIG5hbWU7CiAgICAgcmVhZG9ubHkgYXR0
cmlidXRlIERPTVN0cmluZyBmaWxlbmFtZTsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgRE9NU3Ry
aW5nIGRlc2NyaXB0aW9uOwogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGxl
bmd0aDsKLSAgICBET01NaW1lVHlwZSBpdGVtKFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwg
dW5zaWduZWQgbG9uZyBpbmRleCk7CisgICAgZ2V0dGVyIERPTU1pbWVUeXBlIGl0ZW0oW0RlZmF1
bHQ9VW5kZWZpbmVkXSBvcHRpb25hbCB1bnNpZ25lZCBsb25nIGluZGV4KTsKICAgICBnZXR0ZXIg
RE9NTWltZVR5cGUgbmFtZWRJdGVtKFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgRE9NU3Ry
aW5nIG5hbWUpOwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGx1Z2lucy9ET01Q
bHVnaW5BcnJheS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9wbHVnaW5zL0RPTVBsdWdpbkFycmF5Lmlk
bAppbmRleCBiNWEwZmEzLi40YjNhNGFkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbHVn
aW5zL0RPTVBsdWdpbkFycmF5LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbHVnaW5zL0RPTVBs
dWdpbkFycmF5LmlkbApAQCAtMjAsMTEgKzIwLDEwIEBACiAKIFsKICAgICBHZW5lcmF0ZUlzUmVh
Y2hhYmxlPUltcGxGcmFtZSwKLSAgICBJbmRleGVkR2V0dGVyLAogICAgIEludGVyZmFjZU5hbWU9
UGx1Z2luQXJyYXkKIF0gaW50ZXJmYWNlIERPTVBsdWdpbkFycmF5IHsKICAgICByZWFkb25seSBh
dHRyaWJ1dGUgdW5zaWduZWQgbG9uZyBsZW5ndGg7Ci0gICAgRE9NUGx1Z2luIGl0ZW0oW0RlZmF1
bHQ9VW5kZWZpbmVkXSBvcHRpb25hbCB1bnNpZ25lZCBsb25nIGluZGV4KTsKKyAgICBnZXR0ZXIg
RE9NUGx1Z2luIGl0ZW0oW0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRpb25hbCB1bnNpZ25lZCBsb25n
IGluZGV4KTsKICAgICBnZXR0ZXIgRE9NUGx1Z2luIG5hbWVkSXRlbShbRGVmYXVsdD1VbmRlZmlu
ZWRdIG9wdGlvbmFsIERPTVN0cmluZyBuYW1lKTsKICAgICB2b2lkIHJlZnJlc2goW0RlZmF1bHQ9
VW5kZWZpbmVkXSBvcHRpb25hbCBib29sZWFuIHJlbG9hZCk7CiB9Owo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>204430</attachid>
            <date>2013-06-12 06:19:30 -0700</date>
            <delta_ts>2013-06-12 06:40:19 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>117507_IndexedGetter.patch</filename>
            <type>text/plain</type>
            <size>54931</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA2ZTgxYzJhLi4wMjliN2VhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsODYg
QEAKKzIwMTMtMDYtMTIgIENocmlzdG9waGUgRHVtZXogIDxjaC5kdW1lekBzaXNhLnNhbXN1bmcu
Y29tPgorCisgICAgICAgIFN1cHBvcnQgbGF0ZXN0IFdlYiBJREwgaW5kZXhlZCBwcm9wZXJ0eSBn
ZXR0ZXJzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
MTc1MDcKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBT
dXBwb3J0IGxhdGVzdCBXZWIgSURMIGluZGV4ZWQgcHJvcGVydHkgZ2V0dGVyczoKKyAgICAgICAg
aHR0cDovL3d3dy53My5vcmcvVFIvV2ViSURMLyNkZm4tc3VwcG9ydC1pbmRleGVkLXByb3BlcnRp
ZXMKKworICAgICAgICBEcm9wIHN1cHBvcnQgZm9yIG91dGRhdGVkIFtJbmRleGVkR2V0dGVyXSBh
bmQgW051bWVyaWNJbmRleGVkR2V0dGVyXQorICAgICAgICBJREwgZXh0ZW5kZWQgYXR0cmlidXRl
cy4gU2luY2UgdGhlIG5ldyBnZXR0ZXIgZm9ybWF0IHNwZWNpZmllcyB0aGUKKyAgICAgICAgcmV0
dXJuIHR5cGUsIHRoZSBiaW5kaW5ncyBnZW5lcmF0b3IgaXMgbm93IHNtYXJ0IGVub3VnaCB0byBr
bm93IGlmCisgICAgICAgIHRoZSBpbmRleGVkIGdldHRlciBpcyBudW1lcmljIG9yIG5vdCBvbiBp
dHMgb3duLgorCisgICAgICAgIEJhc2VkIG9uIEJsaW5rIHIxNDk1NjQgYnkgPGtvamloQGNocm9t
aXVtLm9yZz4uCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLCBubyBiZWhhdmlvciBjaGFuZ2UuCisK
KyAgICAgICAgKiBNb2R1bGVzL2ZpbGVzeXN0ZW0vRW50cnlBcnJheS5pZGw6CisgICAgICAgICog
TW9kdWxlcy9maWxlc3lzdGVtL0VudHJ5QXJyYXlTeW5jLmlkbDoKKyAgICAgICAgKiBNb2R1bGVz
L2dhbWVwYWQvR2FtZXBhZExpc3QuaWRsOgorICAgICAgICAqIE1vZHVsZXMvbWVkaWFzb3VyY2Uv
U291cmNlQnVmZmVyTGlzdC5pZGw6CisgICAgICAgICogTW9kdWxlcy9zcGVlY2gvU3BlZWNoR3Jh
bW1hckxpc3QuaWRsOgorICAgICAgICAqIE1vZHVsZXMvc3BlZWNoL1NwZWVjaFJlY29nbml0aW9u
UmVzdWx0LmlkbDoKKyAgICAgICAgKiBNb2R1bGVzL3NwZWVjaC9TcGVlY2hSZWNvZ25pdGlvblJl
c3VsdExpc3QuaWRsOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvci5w
bToKKyAgICAgICAgKElzTnVtZXJpY1R5cGUpOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMv
Q29kZUdlbmVyYXRvckpTLnBtOgorICAgICAgICAoR2VuZXJhdGVHZXRPd25Qcm9wZXJ0eVNsb3RC
b2R5KToKKyAgICAgICAgKEdlbmVyYXRlR2V0T3duUHJvcGVydHlEZXNjcmlwdG9yQm9keSk6Cisg
ICAgICAgIChHZXRJbmRleGVkR2V0dGVyRnVuY3Rpb24pOgorICAgICAgICAoR2VuZXJhdGVIZWFk
ZXIpOgorICAgICAgICAoR2VuZXJhdGVJbXBsZW1lbnRhdGlvbik6CisgICAgICAgICogYmluZGlu
Z3Mvc2NyaXB0cy9JRExBdHRyaWJ1dGVzLnR4dDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvVGVzdEV2ZW50VGFyZ2V0LmlkbDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvVGVzdFR5cGVkQXJyYXkuaWRsOgorICAgICAgICAqIGNzcy9DU1NSdWxlTGlzdC5pZGw6Cisg
ICAgICAgICogY3NzL0NTU1N0eWxlRGVjbGFyYXRpb24uaWRsOgorICAgICAgICAqIGNzcy9DU1NW
YWx1ZUxpc3QuaWRsOgorICAgICAgICAqIGNzcy9NZWRpYUxpc3QuaWRsOgorICAgICAgICAqIGNz
cy9TdHlsZVNoZWV0TGlzdC5pZGw6CisgICAgICAgICogY3NzL1dlYktpdENTU0ZpbHRlclZhbHVl
LmlkbDoKKyAgICAgICAgKiBjc3MvV2ViS2l0Q1NTS2V5ZnJhbWVzUnVsZS5pZGw6CisgICAgICAg
ICogY3NzL1dlYktpdENTU1RyYW5zZm9ybVZhbHVlLmlkbDoKKyAgICAgICAgKiBkb20vQ2xpZW50
UmVjdExpc3QuaWRsOgorICAgICAgICAqIGRvbS9ET01OYW1lZEZsb3dDb2xsZWN0aW9uLmlkbDoK
KyAgICAgICAgKiBkb20vRE9NU3RyaW5nTGlzdC5pZGw6CisgICAgICAgICogZG9tL0RhdGFUcmFu
c2Zlckl0ZW1MaXN0LmlkbDoKKyAgICAgICAgKiBkb20vTmFtZWROb2RlTWFwLmlkbDoKKyAgICAg
ICAgKiBkb20vTm9kZUxpc3QuaWRsOgorICAgICAgICAqIGRvbS9Qcm9wZXJ0eU5vZGVMaXN0Lmlk
bDoKKyAgICAgICAgKiBkb20vVG91Y2hMaXN0LmlkbDoKKyAgICAgICAgKiBmaWxlYXBpL0ZpbGVM
aXN0LmlkbDoKKyAgICAgICAgKiBodG1sL0RPTVNldHRhYmxlVG9rZW5MaXN0LmlkbDoKKyAgICAg
ICAgKiBodG1sL0RPTVRva2VuTGlzdC5pZGw6CisgICAgICAgICogaHRtbC9IVE1MQWxsQ29sbGVj
dGlvbi5pZGw6CisgICAgICAgICogaHRtbC9IVE1MQ29sbGVjdGlvbi5pZGw6CisgICAgICAgICog
aHRtbC9IVE1MRm9ybUNvbnRyb2xzQ29sbGVjdGlvbi5pZGw6CisgICAgICAgICogaHRtbC9IVE1M
Rm9ybUVsZW1lbnQuaWRsOgorICAgICAgICAqIGh0bWwvSFRNTFByb3BlcnRpZXNDb2xsZWN0aW9u
LmlkbDoKKyAgICAgICAgKiBodG1sL0hUTUxTZWxlY3RFbGVtZW50LmlkbDoKKyAgICAgICAgKiBo
dG1sL1JhZGlvTm9kZUxpc3QuaWRsOgorICAgICAgICAqIGh0bWwvY2FudmFzL0Zsb2F0MzJBcnJh
eS5pZGw6CisgICAgICAgICogaHRtbC9jYW52YXMvRmxvYXQ2NEFycmF5LmlkbDoKKyAgICAgICAg
KiBodG1sL2NhbnZhcy9JbnQxNkFycmF5LmlkbDoKKyAgICAgICAgKiBodG1sL2NhbnZhcy9JbnQz
MkFycmF5LmlkbDoKKyAgICAgICAgKiBodG1sL2NhbnZhcy9JbnQ4QXJyYXkuaWRsOgorICAgICAg
ICAqIGh0bWwvY2FudmFzL1VpbnQxNkFycmF5LmlkbDoKKyAgICAgICAgKiBodG1sL2NhbnZhcy9V
aW50MzJBcnJheS5pZGw6CisgICAgICAgICogaHRtbC9jYW52YXMvVWludDhBcnJheS5pZGw6Cisg
ICAgICAgICogaHRtbC9jYW52YXMvVWludDhDbGFtcGVkQXJyYXkuaWRsOgorICAgICAgICAqIGh0
bWwvdHJhY2svQXVkaW9UcmFja0xpc3QuaWRsOgorICAgICAgICAqIGh0bWwvdHJhY2svVGV4dFRy
YWNrQ3VlTGlzdC5pZGw6CisgICAgICAgICogaHRtbC90cmFjay9UZXh0VHJhY2tMaXN0LmlkbDoK
KyAgICAgICAgKiBodG1sL3RyYWNrL1RleHRUcmFja1JlZ2lvbkxpc3QuaWRsOgorICAgICAgICAq
IGh0bWwvdHJhY2svVmlkZW9UcmFja0xpc3QuaWRsOgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFu
Y2VFbnRyeUxpc3QuaWRsOgorICAgICAgICAqIHBhZ2UvU3BlZWNoSW5wdXRSZXN1bHRMaXN0Lmlk
bDoKKyAgICAgICAgKiBwbHVnaW5zL0RPTU1pbWVUeXBlQXJyYXkuaWRsOgorICAgICAgICAqIHBs
dWdpbnMvRE9NUGx1Z2luLmlkbDoKKyAgICAgICAgKiBwbHVnaW5zL0RPTVBsdWdpbkFycmF5Lmlk
bDoKKwogMjAxMy0wNi0xMSAgQ2hyaXN0b3BoZSBEdW1leiAgPGNoLmR1bWV6QHNpc2Euc2Ftc3Vu
Zy5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjE1MTM3OC4KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbS9FbnRyeUFycmF5LmlkbCBi
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbS9FbnRyeUFycmF5LmlkbAppbmRleCBh
Zjg3OTE5Li44MDI5Y2IyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVz
eXN0ZW0vRW50cnlBcnJheS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lz
dGVtL0VudHJ5QXJyYXkuaWRsCkBAIC0zMSwxMCArMzEsOSBAQAogWwogICAgIE5vSW50ZXJmYWNl
T2JqZWN0LAogICAgIENvbmRpdGlvbmFsPUZJTEVfU1lTVEVNLAotICAgIEluZGV4ZWRHZXR0ZXIs
CiAgICAgSlNOb1N0YXRpY1RhYmxlcywKICAgICBJbXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxlCiBd
IGludGVyZmFjZSBFbnRyeUFycmF5IHsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgdW5zaWduZWQg
bG9uZyBsZW5ndGg7Ci0gICAgRW50cnkgaXRlbShbSXNJbmRleF0gdW5zaWduZWQgbG9uZyBpbmRl
eCk7CisgICAgZ2V0dGVyIEVudHJ5IGl0ZW0oW0lzSW5kZXhdIHVuc2lnbmVkIGxvbmcgaW5kZXgp
OwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbS9FbnRy
eUFycmF5U3luYy5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW0vRW50cnlB
cnJheVN5bmMuaWRsCmluZGV4IGIxMjE3MTAuLmVkNjU1OTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbS9FbnRyeUFycmF5U3luYy5pZGwKKysrIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtL0VudHJ5QXJyYXlTeW5jLmlkbApAQCAtMzEsMTAg
KzMxLDkgQEAKIFsKICAgICBOb0ludGVyZmFjZU9iamVjdCwKICAgICBDb25kaXRpb25hbD1GSUxF
X1NZU1RFTSwKLSAgICBJbmRleGVkR2V0dGVyLAogICAgIEpTTm9TdGF0aWNUYWJsZXMsCiAgICAg
SW1wbGVtZW50YXRpb25MYWNrc1ZUYWJsZQogXSBpbnRlcmZhY2UgRW50cnlBcnJheVN5bmMgewog
ICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGxlbmd0aDsKLSAgICBFbnRyeVN5
bmMgaXRlbShbSXNJbmRleF0gdW5zaWduZWQgbG9uZyBpbmRleCk7CisgICAgZ2V0dGVyIEVudHJ5
U3luYyBpdGVtKFtJc0luZGV4XSB1bnNpZ25lZCBsb25nIGluZGV4KTsKIH07CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2dhbWVwYWQvR2FtZXBhZExpc3QuaWRsIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9nYW1lcGFkL0dhbWVwYWRMaXN0LmlkbAppbmRleCBiZmJmMmEwLi4y
ODkzNWJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2dhbWVwYWQvR2FtZXBh
ZExpc3QuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZ2FtZXBhZC9HYW1lcGFkTGlz
dC5pZGwKQEAgLTI2LDEwICsyNiw5IEBACiBbCiAgICAgTm9JbnRlcmZhY2VPYmplY3QsCiAgICAg
Q29uZGl0aW9uYWw9R0FNRVBBRCwKLSAgICBJbmRleGVkR2V0dGVyLAogICAgIEltcGxlbWVudGF0
aW9uTGFja3NWVGFibGUKIF0gaW50ZXJmYWNlIEdhbWVwYWRMaXN0IHsKICAgICByZWFkb25seSBh
dHRyaWJ1dGUgdW5zaWduZWQgbG9uZyBsZW5ndGg7Ci0gICAgR2FtZXBhZCBpdGVtKFtEZWZhdWx0
PVVuZGVmaW5lZF0gb3B0aW9uYWwgdW5zaWduZWQgbG9uZyBpbmRleCk7CisgICAgZ2V0dGVyIEdh
bWVwYWQgaXRlbShbRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcgaW5k
ZXgpOwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXNvdXJj
ZS9Tb3VyY2VCdWZmZXJMaXN0LmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzb3Vy
Y2UvU291cmNlQnVmZmVyTGlzdC5pZGwKaW5kZXggYWU4M2QyNy4uYWNjMTliNiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXNvdXJjZS9Tb3VyY2VCdWZmZXJMaXN0Lmlk
bAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc291cmNlL1NvdXJjZUJ1ZmZlckxp
c3QuaWRsCkBAIC0zMCwxMyArMzAsMTIgQEAKICAKIFsKICAgICBDb25kaXRpb25hbD1NRURJQV9T
T1VSQ0UsCi0gICAgSW5kZXhlZEdldHRlciwKICAgICBFdmVudFRhcmdldCwKICAgICBDYWxsV2l0
aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0LAogICAgIEludGVyZmFjZU5hbWU9V2ViS2l0U291cmNl
QnVmZmVyTGlzdAogXSBpbnRlcmZhY2UgU291cmNlQnVmZmVyTGlzdCB7CiAgICAgcmVhZG9ubHkg
YXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgbGVuZ3RoOwotICAgIFNvdXJjZUJ1ZmZlciBpdGVtKHVu
c2lnbmVkIGxvbmcgaW5kZXgpOworICAgIGdldHRlciBTb3VyY2VCdWZmZXIgaXRlbSh1bnNpZ25l
ZCBsb25nIGluZGV4KTsKIAogICAgIC8vIEV2ZW50VGFyZ2V0IGludGVyZmFjZQogICAgIHZvaWQg
YWRkRXZlbnRMaXN0ZW5lcihET01TdHJpbmcgdHlwZSwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvc3BlZWNoL1NwZWVjaEdyYW1tYXJMaXN0LmlkbCBiL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvc3BlZWNoL1NwZWVjaEdyYW1tYXJMaXN0LmlkbAppbmRleCBkMzhiYjRhLi5lMzMz
NjBiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3NwZWVjaC9TcGVlY2hHcmFt
bWFyTGlzdC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zcGVlY2gvU3BlZWNoR3Jh
bW1hckxpc3QuaWRsCkBAIC0yNSwxMyArMjUsMTIgQEAKIAogWwogICAgIENvbmRpdGlvbmFsPVND
UklQVEVEX1NQRUVDSCwKLSAgICBJbmRleGVkR2V0dGVyLAogICAgIENvbnN0cnVjdG9yLAogICAg
IEltcGxlbWVudGF0aW9uTGFja3NWVGFibGUsCiAgICAgSW50ZXJmYWNlTmFtZT13ZWJraXRTcGVl
Y2hHcmFtbWFyTGlzdAogXSBpbnRlcmZhY2UgU3BlZWNoR3JhbW1hckxpc3QgewogICAgIHJlYWRv
bmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGxlbmd0aDsKLSAgICBTcGVlY2hHcmFtbWFyIGl0
ZW0oW0lzSW5kZXhdIHVuc2lnbmVkIGxvbmcgaW5kZXgpOworICAgIGdldHRlciBTcGVlY2hHcmFt
bWFyIGl0ZW0oW0lzSW5kZXhdIHVuc2lnbmVkIGxvbmcgaW5kZXgpOwogICAgIFtDYWxsV2l0aD1T
Y3JpcHRFeGVjdXRpb25Db250ZXh0XSB2b2lkIGFkZEZyb21VcmkoRE9NU3RyaW5nIHNyYywgb3B0
aW9uYWwgZmxvYXQgd2VpZ2h0KTsKICAgICB2b2lkIGFkZEZyb21TdHJpbmcoRE9NU3RyaW5nIHN0
cmluZywgb3B0aW9uYWwgZmxvYXQgd2VpZ2h0KTsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL3NwZWVjaC9TcGVlY2hSZWNvZ25pdGlvblJlc3VsdC5pZGwgYi9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL3NwZWVjaC9TcGVlY2hSZWNvZ25pdGlvblJlc3VsdC5pZGwKaW5kZXgg
MzMwMmM5NS4uY2M3MjEzYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zcGVl
Y2gvU3BlZWNoUmVjb2duaXRpb25SZXN1bHQuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvc3BlZWNoL1NwZWVjaFJlY29nbml0aW9uUmVzdWx0LmlkbApAQCAtMjYsMTAgKzI2LDkgQEAK
IFsKICAgICBOb0ludGVyZmFjZU9iamVjdCwKICAgICBDb25kaXRpb25hbD1TQ1JJUFRFRF9TUEVF
Q0gsCi0gICAgSW5kZXhlZEdldHRlciwKICAgICBJbXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxlCiBd
IGludGVyZmFjZSBTcGVlY2hSZWNvZ25pdGlvblJlc3VsdCB7CiAgICAgcmVhZG9ubHkgYXR0cmli
dXRlIHVuc2lnbmVkIGxvbmcgbGVuZ3RoOwotICAgIFNwZWVjaFJlY29nbml0aW9uQWx0ZXJuYXRp
dmUgaXRlbShbSXNJbmRleF0gdW5zaWduZWQgbG9uZyBpbmRleCk7CisgICAgZ2V0dGVyIFNwZWVj
aFJlY29nbml0aW9uQWx0ZXJuYXRpdmUgaXRlbShbSXNJbmRleF0gdW5zaWduZWQgbG9uZyBpbmRl
eCk7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIGJvb2xlYW4gaXNGaW5hbDsKIH07CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3NwZWVjaC9TcGVlY2hSZWNvZ25pdGlvblJlc3Vs
dExpc3QuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zcGVlY2gvU3BlZWNoUmVjb2duaXRp
b25SZXN1bHRMaXN0LmlkbAppbmRleCAxNjU0ZmI0Li40NjM1NjUxIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL3NwZWVjaC9TcGVlY2hSZWNvZ25pdGlvblJlc3VsdExpc3QuaWRs
CisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3BlZWNoL1NwZWVjaFJlY29nbml0aW9uUmVz
dWx0TGlzdC5pZGwKQEAgLTI2LDkgKzI2LDggQEAKIFsKICAgICBOb0ludGVyZmFjZU9iamVjdCwK
ICAgICBDb25kaXRpb25hbD1TQ1JJUFRFRF9TUEVFQ0gsCi0gICAgSW5kZXhlZEdldHRlciwKICAg
ICBJbXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxlCiBdIGludGVyZmFjZSBTcGVlY2hSZWNvZ25pdGlv
blJlc3VsdExpc3QgewogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGxlbmd0
aDsKLSAgICBTcGVlY2hSZWNvZ25pdGlvblJlc3VsdCBpdGVtKFtJc0luZGV4XSB1bnNpZ25lZCBs
b25nIGluZGV4KTsKKyAgICBnZXR0ZXIgU3BlZWNoUmVjb2duaXRpb25SZXN1bHQgaXRlbShbSXNJ
bmRleF0gdW5zaWduZWQgbG9uZyBpbmRleCk7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yLnBtIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yLnBtCmluZGV4IDNkZjNlNDAuLjliYzgzMTMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvci5w
bQorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3IucG0K
QEAgLTQ4LDcgKzQ4LDggQEAgbXkgJHZlcmJvc2UgPSAwOwogbXkgJW51bWVyaWNUeXBlSGFzaCA9
ICgiaW50IiA9PiAxLCAic2hvcnQiID0+IDEsICJsb25nIiA9PiAxLCAibG9uZyBsb25nIiA9PiAx
LAogICAgICAgICAgICAgICAgICAgICAgICAidW5zaWduZWQgaW50IiA9PiAxLCAidW5zaWduZWQg
c2hvcnQiID0+IDEsCiAgICAgICAgICAgICAgICAgICAgICAgICJ1bnNpZ25lZCBsb25nIiA9PiAx
LCAidW5zaWduZWQgbG9uZyBsb25nIiA9PiAxLAotICAgICAgICAgICAgICAgICAgICAgICAiZmxv
YXQiID0+IDEsICJkb3VibGUiID0+IDEpOworICAgICAgICAgICAgICAgICAgICAgICAiZmxvYXQi
ID0+IDEsICJkb3VibGUiID0+IDEsICJieXRlIiA9PiAxLAorICAgICAgICAgICAgICAgICAgICAg
ICAib2N0ZXQiID0+IDEpOwogCiBteSAlcHJpbWl0aXZlVHlwZUhhc2ggPSAoICJib29sZWFuIiA9
PiAxLCAidm9pZCIgPT4gMSwgIkRhdGUiID0+IDEpOwogCkBAIC0zNDgsNiArMzQ5LDE1IEBAIHN1
YiBJc0NvbnN0cnVjdG9yVGVtcGxhdGUKICAgICByZXR1cm4gJGludGVyZmFjZS0+ZXh0ZW5kZWRB
dHRyaWJ1dGVzLT57IkNvbnN0cnVjdG9yVGVtcGxhdGUifSAmJiAkaW50ZXJmYWNlLT5leHRlbmRl
ZEF0dHJpYnV0ZXMtPnsiQ29uc3RydWN0b3JUZW1wbGF0ZSJ9IGVxICR0ZW1wbGF0ZTsKIH0KIAor
c3ViIElzTnVtZXJpY1R5cGUKK3sKKyAgICBteSAkb2JqZWN0ID0gc2hpZnQ7CisgICAgbXkgJHR5
cGUgPSBzaGlmdDsKKworICAgIHJldHVybiAxIGlmICRudW1lcmljVHlwZUhhc2h7JHR5cGV9Owor
ICAgIHJldHVybiAwOworfQorCiBzdWIgSXNQcmltaXRpdmVUeXBlCiB7CiAgICAgbXkgJG9iamVj
dCA9IHNoaWZ0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9D
b2RlR2VuZXJhdG9ySlMucG0gYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVH
ZW5lcmF0b3JKUy5wbQppbmRleCA2YjVkMDMzLi4xNDBmYjgwIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQpAQCAtMzUzLDYgKzM1
Myw4IEBAIHN1YiBHZW5lcmF0ZUdldE93blByb3BlcnR5U2xvdEJvZHkKIAogICAgIG15ICRuYW1l
c3BhY2VNYXliZSA9ICgkaW5saW5lZCA/ICJKU0M6OiIgOiAiIik7CiAgICAgbXkgJG5hbWVkR2V0
dGVyRnVuY3Rpb24gPSBHZXROYW1lZEdldHRlckZ1bmN0aW9uKCRpbnRlcmZhY2UpOworICAgIG15
ICRpbmRleGVkR2V0dGVyRnVuY3Rpb24gPSBHZXRJbmRleGVkR2V0dGVyRnVuY3Rpb24oJGludGVy
ZmFjZSk7CisgICAgbXkgJGhhc051bWVyaWNJbmRleGVkR2V0dGVyID0gJGluZGV4ZWRHZXR0ZXJG
dW5jdGlvbiA/ICRjb2RlR2VuZXJhdG9yLT5Jc051bWVyaWNUeXBlKCRpbmRleGVkR2V0dGVyRnVu
Y3Rpb24tPnNpZ25hdHVyZS0+dHlwZSkgOiAwOwogCiAgICAgbXkgQGdldE93blByb3BlcnR5U2xv
dEltcGwgPSAoKTsKIApAQCAtMzYzLDcgKzM2NSw3IEBAIHN1YiBHZW5lcmF0ZUdldE93blByb3Bl
cnR5U2xvdEJvZHkKICAgICB9CiAKICAgICBteSAkbWFudWFsTG9va3VwR2V0dGVyR2VuZXJhdGlv
biA9IHN1YiB7Ci0gICAgICAgIG15ICRyZXF1aXJlc01hbnVhbExvb2t1cCA9ICRpbnRlcmZhY2Ut
PmV4dGVuZGVkQXR0cmlidXRlcy0+eyJJbmRleGVkR2V0dGVyIn0gfHwgJG5hbWVkR2V0dGVyRnVu
Y3Rpb247CisgICAgICAgIG15ICRyZXF1aXJlc01hbnVhbExvb2t1cCA9ICgkaW5kZXhlZEdldHRl
ckZ1bmN0aW9uICYmICEkaGFzTnVtZXJpY0luZGV4ZWRHZXR0ZXIpIHx8ICRuYW1lZEdldHRlckZ1
bmN0aW9uOwogICAgICAgICBpZiAoJHJlcXVpcmVzTWFudWFsTG9va3VwKSB7CiAgICAgICAgICAg
ICBwdXNoKEBnZXRPd25Qcm9wZXJ0eVNsb3RJbXBsLCAiICAgIGNvbnN0ICR7bmFtZXNwYWNlTWF5
YmV9SGFzaEVudHJ5KiBlbnRyeSA9IGdldFN0YXRpY1ZhbHVlU2xvdEVudHJ5V2l0aG91dENhY2hp
bmc8JGNsYXNzTmFtZT4oZXhlYywgcHJvcGVydHlOYW1lKTtcbiIpOwogICAgICAgICAgICAgcHVz
aChAZ2V0T3duUHJvcGVydHlTbG90SW1wbCwgIiAgICBpZiAoZW50cnkpIHtcbiIpOwpAQCAtMzc3
LDcgKzM3OSw3IEBAIHN1YiBHZW5lcmF0ZUdldE93blByb3BlcnR5U2xvdEJvZHkKICAgICAgICAg
JiRtYW51YWxMb29rdXBHZXR0ZXJHZW5lcmF0aW9uKCk7CiAgICAgfQogCi0gICAgaWYgKCRpbnRl
cmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJJbmRleGVkR2V0dGVyIn0gfHwgJGludGVyZmFj
ZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57Ik51bWVyaWNJbmRleGVkR2V0dGVyIn0pIHsKKyAgICBp
ZiAoJGluZGV4ZWRHZXR0ZXJGdW5jdGlvbikgewogICAgICAgICBwdXNoKEBnZXRPd25Qcm9wZXJ0
eVNsb3RJbXBsLCAiICAgIHVuc2lnbmVkIGluZGV4ID0gcHJvcGVydHlOYW1lLmFzSW5kZXgoKTtc
biIpOwogCiAgICAgICAgICMgSWYgdGhlIGl0ZW0gZnVuY3Rpb24gcmV0dXJucyBhIHN0cmluZyB0
aGVuIHdlIGxldCB0aGUgVHJlYXRSZXR1cm5lZE51bGxTdHJpbmdBcyBoYW5kbGUgdGhlIGNhc2Vz
CkBAIC0zODcsNyArMzg5LDcgQEAgc3ViIEdlbmVyYXRlR2V0T3duUHJvcGVydHlTbG90Qm9keQog
ICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgcHVzaChAZ2V0T3duUHJvcGVydHlTbG90SW1w
bCwgIiAgICBpZiAoaW5kZXggIT0gUHJvcGVydHlOYW1lOjpOb3RBbkluZGV4ICYmIGluZGV4IDwg
c3RhdGljX2Nhc3Q8JGludGVyZmFjZU5hbWUqPih0aGlzT2JqZWN0LT5pbXBsKCkpLT5sZW5ndGgo
KSkge1xuIik7CiAgICAgICAgIH0KLSAgICAgICAgaWYgKCRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0
cmlidXRlcy0+eyJOdW1lcmljSW5kZXhlZEdldHRlciJ9KSB7CisgICAgICAgIGlmICgkaGFzTnVt
ZXJpY0luZGV4ZWRHZXR0ZXIpIHsKICAgICAgICAgICAgIHB1c2goQGdldE93blByb3BlcnR5U2xv
dEltcGwsICIgICAgICAgIHNsb3Quc2V0VmFsdWUodGhpc09iamVjdC0+Z2V0QnlJbmRleChleGVj
LCBpbmRleCkpO1xuIik7CiAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICBwdXNoKEBnZXRP
d25Qcm9wZXJ0eVNsb3RJbXBsLCAiICAgICAgICBzbG90LnNldEN1c3RvbUluZGV4KHRoaXNPYmpl
Y3QsIGluZGV4LCBpbmRleEdldHRlcik7XG4iKTsKQEAgLTQzNyw2ICs0MzksOSBAQCBzdWIgR2Vu
ZXJhdGVHZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JCb2R5CiAgICAgCiAgICAgbXkgJG5hbWVzcGFj
ZU1heWJlID0gKCRpbmxpbmVkID8gIkpTQzo6IiA6ICIiKTsKICAgICBteSAkbmFtZWRHZXR0ZXJG
dW5jdGlvbiA9IEdldE5hbWVkR2V0dGVyRnVuY3Rpb24oJGludGVyZmFjZSk7CisgICAgbXkgJGlu
ZGV4ZWRHZXR0ZXJGdW5jdGlvbiA9IEdldEluZGV4ZWRHZXR0ZXJGdW5jdGlvbigkaW50ZXJmYWNl
KTsKKyAgICBteSAkaGFzTnVtZXJpY0luZGV4ZWRHZXR0ZXIgPSAkaW5kZXhlZEdldHRlckZ1bmN0
aW9uID8gJGNvZGVHZW5lcmF0b3ItPklzTnVtZXJpY1R5cGUoJGluZGV4ZWRHZXR0ZXJGdW5jdGlv
bi0+c2lnbmF0dXJlLT50eXBlKSA6IDA7CisKICAgICAKICAgICBteSBAZ2V0T3duUHJvcGVydHlE
ZXNjcmlwdG9ySW1wbCA9ICgpOwogICAgIGlmICgkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0
ZXMtPnsiQ2hlY2tTZWN1cml0eSJ9KSB7CkBAIC00NTYsNyArNDYxLDcgQEAgc3ViIEdlbmVyYXRl
R2V0T3duUHJvcGVydHlEZXNjcmlwdG9yQm9keQogICAgIH0KICAgICAKICAgICBteSAkbWFudWFs
TG9va3VwR2V0dGVyR2VuZXJhdGlvbiA9IHN1YiB7Ci0gICAgICAgIG15ICRyZXF1aXJlc01hbnVh
bExvb2t1cCA9ICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJJbmRleGVkR2V0dGVy
In0gfHwgJG5hbWVkR2V0dGVyRnVuY3Rpb247CisgICAgICAgIG15ICRyZXF1aXJlc01hbnVhbExv
b2t1cCA9ICgkaW5kZXhlZEdldHRlckZ1bmN0aW9uICYmICEkaGFzTnVtZXJpY0luZGV4ZWRHZXR0
ZXIpIHx8ICRuYW1lZEdldHRlckZ1bmN0aW9uOwogICAgICAgICBpZiAoJHJlcXVpcmVzTWFudWFs
TG9va3VwKSB7CiAgICAgICAgICAgICBwdXNoKEBnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JJbXBs
LCAiICAgIGNvbnN0ICR7bmFtZXNwYWNlTWF5YmV9SGFzaEVudHJ5KiBlbnRyeSA9ICR7Y2xhc3NO
YW1lfVRhYmxlLmVudHJ5KGV4ZWMsIHByb3BlcnR5TmFtZSk7XG4iKTsKICAgICAgICAgICAgIHB1
c2goQGdldE93blByb3BlcnR5RGVzY3JpcHRvckltcGwsICIgICAgaWYgKGVudHJ5KSB7XG4iKTsK
QEAgLTQ3MiwxMCArNDc3LDEwIEBAIHN1YiBHZW5lcmF0ZUdldE93blByb3BlcnR5RGVzY3JpcHRv
ckJvZHkKICAgICAgICAgJiRtYW51YWxMb29rdXBHZXR0ZXJHZW5lcmF0aW9uKCk7CiAgICAgfQog
Ci0gICAgaWYgKCRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJJbmRleGVkR2V0dGVy
In0gfHwgJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57Ik51bWVyaWNJbmRleGVkR2V0
dGVyIn0pIHsKKyAgICBpZiAoJGluZGV4ZWRHZXR0ZXJGdW5jdGlvbikgewogICAgICAgICBwdXNo
KEBnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JJbXBsLCAiICAgIHVuc2lnbmVkIGluZGV4ID0gcHJv
cGVydHlOYW1lLmFzSW5kZXgoKTtcbiIpOwogICAgICAgICBwdXNoKEBnZXRPd25Qcm9wZXJ0eURl
c2NyaXB0b3JJbXBsLCAiICAgIGlmIChpbmRleCAhPSBQcm9wZXJ0eU5hbWU6Ok5vdEFuSW5kZXgg
JiYgaW5kZXggPCBzdGF0aWNfY2FzdDwkaW50ZXJmYWNlTmFtZSo+KHRoaXNPYmplY3QtPmltcGwo
KSktPmxlbmd0aCgpKSB7XG4iKTsKLSAgICAgICAgaWYgKCRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0
cmlidXRlcy0+eyJOdW1lcmljSW5kZXhlZEdldHRlciJ9KSB7CisgICAgICAgIGlmICgkaGFzTnVt
ZXJpY0luZGV4ZWRHZXR0ZXIpIHsKICAgICAgICAgICAgICMgQXNzdW1lIHRoYXQgaWYgdGhlcmUn
cyBhIHNldHRlciwgdGhlIGluZGV4IHdpbGwgYmUgd3JpdGFibGUKICAgICAgICAgICAgIGlmICgk
aW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ3VzdG9tSW5kZXhlZFNldHRlciJ9KSB7
CiAgICAgICAgICAgICAgICAgcHVzaChAZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ySW1wbCwgIiAg
ICAgICAgZGVzY3JpcHRvci5zZXREZXNjcmlwdG9yKHRoaXNPYmplY3QtPmdldEJ5SW5kZXgoZXhl
YywgaW5kZXgpLCAke25hbWVzcGFjZU1heWJlfURvbnREZWxldGUpO1xuIik7CkBAIC02MzIsNiAr
NjM3LDEyIEBAIHN1YiBHZXRTcGVjaWFsQWNjZXNzb3JGdW5jdGlvbkZvclR5cGUKICAgICByZXR1
cm4gMDsKIH0KIAorc3ViIEdldEluZGV4ZWRHZXR0ZXJGdW5jdGlvbgoreworICAgIG15ICRpbnRl
cmZhY2UgPSBzaGlmdDsKKyAgICByZXR1cm4gR2V0U3BlY2lhbEFjY2Vzc29yRnVuY3Rpb25Gb3JU
eXBlKCRpbnRlcmZhY2UsICJnZXR0ZXIiLCAidW5zaWduZWQgbG9uZyIsIDEpOworfQorCiBzdWIg
R2V0TmFtZWRHZXR0ZXJGdW5jdGlvbgogewogICAgIG15ICRpbnRlcmZhY2UgPSBzaGlmdDsKQEAg
LTc3Myw2ICs3ODQsOCBAQCBzdWIgR2VuZXJhdGVIZWFkZXIKICAgICAkaW1wbEluY2x1ZGVzeyIk
e2NsYXNzTmFtZX1DdXN0b20uaCJ9ID0gMSBpZiAhJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1
dGVzLT57IkpTQ3VzdG9tSGVhZGVyIn0gJiYgKCRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRl
cy0+eyJDdXN0b21QdXRGdW5jdGlvbiJ9IHx8ICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRl
cy0+eyJDdXN0b21OYW1lZFNldHRlciJ9KTsKIAogICAgIG15ICRuYW1lZEdldHRlckZ1bmN0aW9u
ID0gR2V0TmFtZWRHZXR0ZXJGdW5jdGlvbigkaW50ZXJmYWNlKTsKKyAgICBteSAkaW5kZXhlZEdl
dHRlckZ1bmN0aW9uID0gR2V0SW5kZXhlZEdldHRlckZ1bmN0aW9uKCRpbnRlcmZhY2UpOworICAg
IG15ICRoYXNOdW1lcmljSW5kZXhlZEdldHRlciA9ICRpbmRleGVkR2V0dGVyRnVuY3Rpb24gPyAk
Y29kZUdlbmVyYXRvci0+SXNOdW1lcmljVHlwZSgkaW5kZXhlZEdldHRlckZ1bmN0aW9uLT5zaWdu
YXR1cmUtPnR5cGUpIDogMDsKIAogICAgIG15ICRoYXNJbXB1cmVOYW1lZEdldHRlciA9CiAgICAg
ICAgICRuYW1lZEdldHRlckZ1bmN0aW9uCkBAIC03ODAsOCArNzkzLDcgQEAgc3ViIEdlbmVyYXRl
SGVhZGVyCiAgICAgICAgIHx8ICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJDdXN0
b21HZXRPd25Qcm9wZXJ0eVNsb3QifTsKIAogICAgIG15ICRoYXNDb21wbGV4R2V0dGVyID0KLSAg
ICAgICAgJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkluZGV4ZWRHZXR0ZXIifQot
ICAgICAgICB8fCAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiTnVtZXJpY0luZGV4
ZWRHZXR0ZXIifQorICAgICAgICAkaW5kZXhlZEdldHRlckZ1bmN0aW9uCiAgICAgICAgIHx8ICRp
bnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJKU0N1c3RvbUdldE93blByb3BlcnR5U2xv
dEFuZERlc2NyaXB0b3IifQogICAgICAgICB8fCAkaGFzSW1wdXJlTmFtZWRHZXR0ZXI7CiAgICAg
CkBAIC04NjUsNyArODc3LDcgQEAgc3ViIEdlbmVyYXRlSGVhZGVyCiAgICAgfQogCiAgICAgIyBD
dXN0b20gZ2V0T3duUHJvcGVydHlOYW1lcyBmdW5jdGlvbgotICAgIGlmICgkaW50ZXJmYWNlLT5l
eHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ3VzdG9tRW51bWVyYXRlUHJvcGVydHkifSB8fCAkaW50ZXJm
YWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiSW5kZXhlZEdldHRlciJ9IHx8ICRpbnRlcmZhY2Ut
PmV4dGVuZGVkQXR0cmlidXRlcy0+eyJOdW1lcmljSW5kZXhlZEdldHRlciJ9KSB7CisgICAgaWYg
KCRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJDdXN0b21FbnVtZXJhdGVQcm9wZXJ0
eSJ9IHx8ICRpbmRleGVkR2V0dGVyRnVuY3Rpb24pIHsKICAgICAgICAgcHVzaChAaGVhZGVyQ29u
dGVudCwgIiAgICBzdGF0aWMgdm9pZCBnZXRPd25Qcm9wZXJ0eU5hbWVzKEpTQzo6SlNPYmplY3Qq
LCBKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6UHJvcGVydHlOYW1lQXJyYXkmLCBKU0M6OkVudW1lcmF0
aW9uTW9kZSBtb2RlID0gSlNDOjpFeGNsdWRlRG9udEVudW1Qcm9wZXJ0aWVzKTtcbiIpOwogICAg
ICAgICAkc3RydWN0dXJlRmxhZ3N7IkpTQzo6T3ZlcnJpZGVzR2V0UHJvcGVydHlOYW1lcyJ9ID0g
MTsgICAgICAgCiAgICAgfQpAQCAtMTAwMCwxMSArMTAxMiwxMiBAQCBzdWIgR2VuZXJhdGVIZWFk
ZXIKICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAiQmFzZTo6U3RydWN0dXJlRmxhZ3M7XG4iKTsK
IAogICAgICMgSW5kZXggZ2V0dGVyCi0gICAgaWYgKCRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmli
dXRlcy0+eyJJbmRleGVkR2V0dGVyIn0pIHsKLSAgICAgICAgcHVzaChAaGVhZGVyQ29udGVudCwg
IiAgICBzdGF0aWMgSlNDOjpKU1ZhbHVlIGluZGV4R2V0dGVyKEpTQzo6RXhlY1N0YXRlKiwgSlND
OjpKU1ZhbHVlLCB1bnNpZ25lZCk7XG4iKTsKLSAgICB9Ci0gICAgaWYgKCRpbnRlcmZhY2UtPmV4
dGVuZGVkQXR0cmlidXRlcy0+eyJOdW1lcmljSW5kZXhlZEdldHRlciJ9KSB7Ci0gICAgICAgIHB1
c2goQGhlYWRlckNvbnRlbnQsICIgICAgSlNDOjpKU1ZhbHVlIGdldEJ5SW5kZXgoSlNDOjpFeGVj
U3RhdGUqLCB1bnNpZ25lZCBpbmRleCk7XG4iKTsKKyAgICBpZiAoJGluZGV4ZWRHZXR0ZXJGdW5j
dGlvbikgeworICAgICAgICBpZiAoJGhhc051bWVyaWNJbmRleGVkR2V0dGVyKSB7CisgICAgICAg
ICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAiICAgIEpTQzo6SlNWYWx1ZSBnZXRCeUluZGV4KEpT
Qzo6RXhlY1N0YXRlKiwgdW5zaWduZWQgaW5kZXgpO1xuIik7CisgICAgICAgIH0gZWxzZSB7Cisg
ICAgICAgICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAiICAgIHN0YXRpYyBKU0M6OkpTVmFsdWUg
aW5kZXhHZXR0ZXIoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTVmFsdWUsIHVuc2lnbmVkKTtcbiIp
OworICAgICAgICB9CiAgICAgfQogCiAgICAgIyBJbmRleCBzZXR0ZXIKQEAgLTE1ODgsMTEgKzE2
MDEsMTUgQEAgc3ViIEdlbmVyYXRlSW1wbGVtZW50YXRpb24KICAgICBteSAkZXZlbnRUYXJnZXQg
PSAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiRXZlbnRUYXJnZXQifSB8fCAoJGNv
ZGVHZW5lcmF0b3ItPkluaGVyaXRzSW50ZXJmYWNlKCRpbnRlcmZhY2UsICJFdmVudFRhcmdldCIp
ICYmICRpbnRlcmZhY2UtPm5hbWUgbmUgIkV2ZW50VGFyZ2V0Iik7CiAgICAgbXkgJG5lZWRzTWFy
a0NoaWxkcmVuID0gJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkpTQ3VzdG9tTWFy
a0Z1bmN0aW9uIn0gfHwgJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkV2ZW50VGFy
Z2V0In0gfHwgJGludGVyZmFjZS0+bmFtZSBlcSAiRXZlbnRUYXJnZXQiOwogCisgICAgbXkgJG5h
bWVkR2V0dGVyRnVuY3Rpb24gPSBHZXROYW1lZEdldHRlckZ1bmN0aW9uKCRpbnRlcmZhY2UpOwor
ICAgIG15ICRpbmRleGVkR2V0dGVyRnVuY3Rpb24gPSBHZXRJbmRleGVkR2V0dGVyRnVuY3Rpb24o
JGludGVyZmFjZSk7CisgICAgbXkgJGhhc051bWVyaWNJbmRleGVkR2V0dGVyID0gJGluZGV4ZWRH
ZXR0ZXJGdW5jdGlvbiA/ICRjb2RlR2VuZXJhdG9yLT5Jc051bWVyaWNUeXBlKCRpbmRleGVkR2V0
dGVyRnVuY3Rpb24tPnNpZ25hdHVyZS0+dHlwZSkgOiAwOworCiAgICAgIyAtIEFkZCBkZWZhdWx0
IGhlYWRlciB0ZW1wbGF0ZQogICAgIHB1c2goQGltcGxDb250ZW50SGVhZGVyLCBHZW5lcmF0ZUlt
cGxlbWVudGF0aW9uQ29udGVudEhlYWRlcigkaW50ZXJmYWNlKSk7CiAKICAgICAkaW1wbEluY2x1
ZGVzeyI8d3RmL0dldFB0ci5oPiJ9ID0gMTsKLSAgICAkaW1wbEluY2x1ZGVzeyI8cnVudGltZS9Q
cm9wZXJ0eU5hbWVBcnJheS5oPiJ9ID0gMSBpZiAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0
ZXMtPnsiSW5kZXhlZEdldHRlciJ9IHx8ICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+
eyJOdW1lcmljSW5kZXhlZEdldHRlciJ9OworICAgICRpbXBsSW5jbHVkZXN7IjxydW50aW1lL1By
b3BlcnR5TmFtZUFycmF5Lmg+In0gPSAxIGlmICRpbmRleGVkR2V0dGVyRnVuY3Rpb247CiAKICAg
ICBBZGRJbmNsdWRlc0ZvclR5cGVJbkltcGwoJGludGVyZmFjZU5hbWUpOwogCkBAIC0xNjA2LDgg
KzE2MjMsNiBAQCBzdWIgR2VuZXJhdGVJbXBsZW1lbnRhdGlvbgogICAgIG15ICRudW1Db25zdGFu
dHMgPSBAeyRpbnRlcmZhY2UtPmNvbnN0YW50c307CiAgICAgbXkgJG51bUZ1bmN0aW9ucyA9IEB7
JGludGVyZmFjZS0+ZnVuY3Rpb25zfTsKIAotICAgIG15ICRuYW1lZEdldHRlckZ1bmN0aW9uID0g
R2V0TmFtZWRHZXR0ZXJGdW5jdGlvbigkaW50ZXJmYWNlKTsKLQogICAgICMgLSBBZGQgYWxsIGNv
bnN0YW50cwogICAgIGlmICghJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57Ik5vSW50
ZXJmYWNlT2JqZWN0In0pIHsKICAgICAgICAgbXkgJGhhc2hTaXplID0gJG51bUNvbnN0YW50czsK
QEAgLTE5MTksOCArMTkzNCw3IEBAIHN1YiBHZW5lcmF0ZUltcGxlbWVudGF0aW9uCiAKICAgICBt
eSAkaGFzR2V0dGVyID0gJG51bUF0dHJpYnV0ZXMgPiAwCiAgICAgICAgICAgICAgICAgIHx8ICEk
aW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiTm9JbnRlcmZhY2VPYmplY3QifQotICAg
ICAgICAgICAgICAgICB8fCAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiSW5kZXhl
ZEdldHRlciJ9Ci0gICAgICAgICAgICAgICAgIHx8ICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmli
dXRlcy0+eyJOdW1lcmljSW5kZXhlZEdldHRlciJ9CisgICAgICAgICAgICAgICAgIHx8ICRpbmRl
eGVkR2V0dGVyRnVuY3Rpb24KICAgICAgICAgICAgICAgICAgfHwgJGludGVyZmFjZS0+ZXh0ZW5k
ZWRBdHRyaWJ1dGVzLT57IkpTQ3VzdG9tR2V0T3duUHJvcGVydHlTbG90QW5kRGVzY3JpcHRvciJ9
CiAgICAgICAgICAgICAgICAgIHx8ICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJD
dXN0b21HZXRPd25Qcm9wZXJ0eVNsb3QifQogICAgICAgICAgICAgICAgICB8fCAkbmFtZWRHZXR0
ZXJGdW5jdGlvbgpAQCAtMTk0Myw4ICsxOTU3LDggQEAgc3ViIEdlbmVyYXRlSW1wbGVtZW50YXRp
b24KICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAifVxuXG4iKTsKICAgICAgICAgfQog
Ci0gICAgICAgIGlmICgkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiSW5kZXhlZEdl
dHRlciJ9IHx8ICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJOdW1lcmljSW5kZXhl
ZEdldHRlciJ9Ci0gICAgICAgICAgICAgICAgfHwgJG5hbWVkR2V0dGVyRnVuY3Rpb24gfHwgJGlu
dGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkN1c3RvbU5hbWVkR2V0dGVyIn0KKyAgICAg
ICAgaWYgKCRpbmRleGVkR2V0dGVyRnVuY3Rpb24gfHwgJG5hbWVkR2V0dGVyRnVuY3Rpb24KKyAg
ICAgICAgICAgICAgICB8fCAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ3VzdG9t
TmFtZWRHZXR0ZXIifQogICAgICAgICAgICAgICAgIHx8ICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0
cmlidXRlcy0+eyJKU0N1c3RvbUdldE93blByb3BlcnR5U2xvdEFuZERlc2NyaXB0b3IifSkgewog
ICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICJib29sICR7Y2xhc3NOYW1lfTo6Z2V0T3du
UHJvcGVydHlTbG90QnlJbmRleChKU0NlbGwqIGNlbGwsIEV4ZWNTdGF0ZSogZXhlYywgdW5zaWdu
ZWQgaW5kZXgsIFByb3BlcnR5U2xvdCYgc2xvdClcbiIpOwogICAgICAgICAgICAgcHVzaChAaW1w
bENvbnRlbnQsICJ7XG4iKTsKQEAgLTE5NjIsMTMgKzE5NzYsMTMgQEAgc3ViIEdlbmVyYXRlSW1w
bGVtZW50YXRpb24KICAgICAgICAgICAgICAgICAkZ2VuZXJhdGVkUHJvcGVydHlOYW1lID0gMTsK
ICAgICAgICAgICAgIH07CiAKLSAgICAgICAgICAgIGlmICgkaW50ZXJmYWNlLT5leHRlbmRlZEF0
dHJpYnV0ZXMtPnsiSW5kZXhlZEdldHRlciJ9IHx8ICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmli
dXRlcy0+eyJOdW1lcmljSW5kZXhlZEdldHRlciJ9KSB7CisgICAgICAgICAgICBpZiAoJGluZGV4
ZWRHZXR0ZXJGdW5jdGlvbikgewogICAgICAgICAgICAgICAgIGlmIChJbmRleEdldHRlclJldHVy
bnNTdHJpbmdzKCRpbnRlcmZhY2VOYW1lKSkgewogICAgICAgICAgICAgICAgICAgICBwdXNoKEBp
bXBsQ29udGVudCwgIiAgICBpZiAoaW5kZXggPD0gTUFYX0FSUkFZX0lOREVYKSB7XG4iKTsKICAg
ICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICBwdXNoKEBpbXBsQ29u
dGVudCwgIiAgICBpZiAoaW5kZXggPCBzdGF0aWNfY2FzdDwkaW50ZXJmYWNlTmFtZSo+KHRoaXNP
YmplY3QtPmltcGwoKSktPmxlbmd0aCgpKSB7XG4iKTsKICAgICAgICAgICAgICAgICB9Ci0gICAg
ICAgICAgICAgICAgaWYgKCRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJOdW1lcmlj
SW5kZXhlZEdldHRlciJ9KSB7CisgICAgICAgICAgICAgICAgaWYgKCRoYXNOdW1lcmljSW5kZXhl
ZEdldHRlcikgewogICAgICAgICAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICAg
ICAgc2xvdC5zZXRWYWx1ZSh0aGlzT2JqZWN0LT5nZXRCeUluZGV4KGV4ZWMsIGluZGV4KSk7XG4i
KTsKICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICBwdXNoKEBp
bXBsQ29udGVudCwgIiAgICAgICAgc2xvdC5zZXRDdXN0b21JbmRleCh0aGlzT2JqZWN0LCBpbmRl
eCwgdGhpc09iamVjdC0+aW5kZXhHZXR0ZXIpO1xuIik7CkBAIC0yNDI1LDE1ICsyNDM5LDEzIEBA
IHN1YiBHZW5lcmF0ZUltcGxlbWVudGF0aW9uCiAgICAgICAgIH0KICAgICB9CiAKLSAgICBpZiAo
KCRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJJbmRleGVkR2V0dGVyIn0gfHwgJGlu
dGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57Ik51bWVyaWNJbmRleGVkR2V0dGVyIn0pICYm
ICEkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ3VzdG9tRW51bWVyYXRlUHJvcGVy
dHkifSkgeworICAgIGlmICgkaW5kZXhlZEdldHRlckZ1bmN0aW9uICYmICEkaW50ZXJmYWNlLT5l
eHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ3VzdG9tRW51bWVyYXRlUHJvcGVydHkifSkgewogICAgICAg
ICBwdXNoKEBpbXBsQ29udGVudCwgInZvaWQgJHtjbGFzc05hbWV9OjpnZXRPd25Qcm9wZXJ0eU5h
bWVzKEpTT2JqZWN0KiBvYmplY3QsIEV4ZWNTdGF0ZSogZXhlYywgUHJvcGVydHlOYW1lQXJyYXkm
IHByb3BlcnR5TmFtZXMsIEVudW1lcmF0aW9uTW9kZSBtb2RlKVxuIik7CiAgICAgICAgIHB1c2go
QGltcGxDb250ZW50LCAie1xuIik7CiAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgICR7
Y2xhc3NOYW1lfSogdGhpc09iamVjdCA9IGpzQ2FzdDwke2NsYXNzTmFtZX0qPihvYmplY3QpO1xu
Iik7CiAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgIEFTU0VSVF9HQ19PQkpFQ1RfSU5I
RVJJVFModGhpc09iamVjdCwgJnNfaW5mbyk7XG4iKTsKLSAgICAgICAgaWYgKCRpbnRlcmZhY2Ut
PmV4dGVuZGVkQXR0cmlidXRlcy0+eyJJbmRleGVkR2V0dGVyIn0gfHwgJGludGVyZmFjZS0+ZXh0
ZW5kZWRBdHRyaWJ1dGVzLT57Ik51bWVyaWNJbmRleGVkR2V0dGVyIn0pIHsKLSAgICAgICAgICAg
IHB1c2goQGltcGxDb250ZW50LCAiICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBzdGF0aWNf
Y2FzdDwke2ludGVyZmFjZU5hbWV9Kj4odGhpc09iamVjdC0+aW1wbCgpKS0+bGVuZ3RoKCk7ICsr
aSlcbiIpOwotICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgICAgIHByb3BlcnR5
TmFtZXMuYWRkKElkZW50aWZpZXI6OmZyb20oZXhlYywgaSkpO1xuIik7Ci0gICAgICAgIH0KKyAg
ICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IHN0
YXRpY19jYXN0PCR7aW50ZXJmYWNlTmFtZX0qPih0aGlzT2JqZWN0LT5pbXBsKCkpLT5sZW5ndGgo
KTsgKytpKVxuIik7CisgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgICAgICBwcm9wZXJ0
eU5hbWVzLmFkZChJZGVudGlmaWVyOjpmcm9tKGV4ZWMsIGkpKTtcbiIpOwogICAgICAgICBwdXNo
KEBpbXBsQ29udGVudCwgIiAgICAgQmFzZTo6Z2V0T3duUHJvcGVydHlOYW1lcyh0aGlzT2JqZWN0
LCBleGVjLCBwcm9wZXJ0eU5hbWVzLCBtb2RlKTtcbiIpOwogICAgICAgICBwdXNoKEBpbXBsQ29u
dGVudCwgIn1cblxuIik7CiAgICAgfQpAQCAtMjYyOSw3ICsyNjQxLDcgQEAgc3ViIEdlbmVyYXRl
SW1wbGVtZW50YXRpb24KICAgICAgICAgfQogICAgIH0KIAotICAgIGlmICgkaW50ZXJmYWNlLT5l
eHRlbmRlZEF0dHJpYnV0ZXMtPnsiSW5kZXhlZEdldHRlciJ9KSB7CisgICAgaWYgKCRpbmRleGVk
R2V0dGVyRnVuY3Rpb24gJiYgISRoYXNOdW1lcmljSW5kZXhlZEdldHRlcikgewogICAgICAgICBw
dXNoKEBpbXBsQ29udGVudCwgIlxuSlNWYWx1ZSAke2NsYXNzTmFtZX06OmluZGV4R2V0dGVyKEV4
ZWNTdGF0ZSogZXhlYywgSlNWYWx1ZSBzbG90QmFzZSwgdW5zaWduZWQgaW5kZXgpXG4iKTsKICAg
ICAgICAgcHVzaChAaW1wbENvbnRlbnQsICJ7XG4iKTsKICAgICAgICAgcHVzaChAaW1wbENvbnRl
bnQsICIgICAgJHtjbGFzc05hbWV9KiB0aGlzT2JqID0ganNDYXN0PCRjbGFzc05hbWUqPihhc09i
amVjdChzbG90QmFzZSkpO1xuIik7CkBAIC0yNjQ3LDcgKzI2NTksNyBAQCBzdWIgR2VuZXJhdGVJ
bXBsZW1lbnRhdGlvbgogICAgICAgICB9CiAgICAgfQogCi0gICAgaWYgKCRpbnRlcmZhY2UtPmV4
dGVuZGVkQXR0cmlidXRlcy0+eyJOdW1lcmljSW5kZXhlZEdldHRlciJ9KSB7CisgICAgaWYgKCRo
YXNOdW1lcmljSW5kZXhlZEdldHRlcikgewogICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIlxu
SlNWYWx1ZSAke2NsYXNzTmFtZX06OmdldEJ5SW5kZXgoRXhlY1N0YXRlKiwgdW5zaWduZWQgaW5k
ZXgpXG4iKTsKICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICJ7XG4iKTsKICAgICAgICAgcHVz
aChAaW1wbENvbnRlbnQsICIgICAgQVNTRVJUX0dDX09CSkVDVF9JTkhFUklUUyh0aGlzLCAmc19p
bmZvKTtcbiIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9J
RExBdHRyaWJ1dGVzLnR4dCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvSURMQXR0
cmlidXRlcy50eHQKaW5kZXggOTc0ZGVlNC4uMzkyZmFhYiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9JRExBdHRyaWJ1dGVzLnR4dAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL0lETEF0dHJpYnV0ZXMudHh0CkBAIC02Miw3ICs2Miw2IEBA
IEltbXV0YWJsZQogSW1wbGVtZW50YXRpb25MYWNrc1ZUYWJsZQogSW1wbGVtZW50YXRpb25OYW1l
c3BhY2U9KgogSW1wbGVtZW50ZWRBcz0qCi1JbmRleGVkR2V0dGVyCiBJbml0aWFsaXplZEJ5RXZl
bnRDb25zdHJ1Y3RvcgogSW50ZXJmYWNlTmFtZT0qCiBJc0luZGV4CkBAIC04Niw3ICs4NSw2IEBA
IE1hc3F1ZXJhZGVzQXNVbmRlZmluZWQKIE5hbWVkQ29uc3RydWN0b3I9KgogTm9JbnRlcmZhY2VP
YmplY3QKIE5vdEVudW1lcmFibGUKLU51bWVyaWNJbmRleGVkR2V0dGVyCiBPYmpDQ3VzdG9tSW1w
bGVtZW50YXRpb24KIE9iakNMZWdhY3lVbm5hbWVkUGFyYW1ldGVycwogT2JqQ1BvbHltb3JwaGlj
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdEV2
ZW50VGFyZ2V0LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9UZXN0
RXZlbnRUYXJnZXQuaWRsCmluZGV4IDZmMDY1NzcuLjhkZjAzN2IgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9UZXN0RXZlbnRUYXJnZXQuaWRsCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9UZXN0RXZlbnRUYXJnZXQuaWRs
CkBAIC0yOCwxMSArMjgsMTAgQEAKIAogWwogICAgIEV2ZW50VGFyZ2V0LAotICAgIEluZGV4ZWRH
ZXR0ZXIsCiAgICAgTWFzcXVlcmFkZXNBc1VuZGVmaW5lZAogXSBpbnRlcmZhY2UgVGVzdEV2ZW50
VGFyZ2V0IHsKIAotICAgIE5vZGUgaXRlbShbSXNJbmRleF0gdW5zaWduZWQgbG9uZyBpbmRleCk7
CisgICAgZ2V0dGVyIE5vZGUgaXRlbShbSXNJbmRleF0gdW5zaWduZWQgbG9uZyBpbmRleCk7CiAg
ICAgZ2V0dGVyIE5vZGUgKERPTVN0cmluZyBuYW1lKTsKIAogICAgIHZvaWQgYWRkRXZlbnRMaXN0
ZW5lcihET01TdHJpbmcgdHlwZSwgCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvVGVzdFR5cGVkQXJyYXkuaWRsIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L1Rlc3RUeXBlZEFycmF5LmlkbAppbmRleCA5N2NlOTVlLi4yMjdhNGNm
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdFR5
cGVkQXJyYXkuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9U
ZXN0VHlwZWRBcnJheS5pZGwKQEAgLTI2LDcgKzI2LDYgQEAKIAogWwogICAgIENvbnN0cnVjdG9y
VGVtcGxhdGU9VHlwZWRBcnJheSwKLSAgICBOdW1lcmljSW5kZXhlZEdldHRlciwKICAgICBDdXN0
b21JbmRleGVkU2V0dGVyLAogICAgIEpTR2VuZXJhdGVUb05hdGl2ZU9iamVjdCwKICAgICBKU05v
U3RhdGljVGFibGVzLApAQCAtMzYsNCArMzUsNiBAQAogXSBpbnRlcmZhY2UgRmxvYXQ2NEFycmF5
IDogQXJyYXlCdWZmZXJWaWV3IHsKICAgICBJbnQzMkFycmF5IGZvbyhGbG9hdDMyQXJyYXkgYXJy
YXkpOwogICAgIHZvaWQgc2V0KCk7CisKKyAgICBnZXR0ZXIgZG91YmxlICh1bnNpZ25lZCBsb25n
IGluZGV4KTsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUnVsZUxpc3Qu
aWRsIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1J1bGVMaXN0LmlkbAppbmRleCBmNzZjZThjLi5l
OTM2YTg2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUnVsZUxpc3QuaWRsCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NSdWxlTGlzdC5pZGwKQEAgLTI2LDEwICsyNiw5IEBA
CiAvLyBJbnRyb2R1Y2VkIGluIERPTSBMZXZlbCAyOgogWwogICAgIEN1c3RvbUlzUmVhY2hhYmxl
LAotICAgIEluZGV4ZWRHZXR0ZXIsCiAgICAgU2tpcFZUYWJsZVZhbGlkYXRpb24KIF0gaW50ZXJm
YWNlIENTU1J1bGVMaXN0IHsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgdW5zaWduZWQgbG9uZyAg
ICBsZW5ndGg7Ci0gICAgQ1NTUnVsZSAgICAgICAgICAgaXRlbShbRGVmYXVsdD1VbmRlZmluZWRd
IG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcgaW5kZXgpOworICAgIGdldHRlciBDU1NSdWxlIGl0ZW0o
W0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRpb25hbCB1bnNpZ25lZCBsb25nIGluZGV4KTsKIH07CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTdHlsZURlY2xhcmF0aW9uLmlkbCBi
L1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTdHlsZURlY2xhcmF0aW9uLmlkbAppbmRleCAxNzAxNTQx
Li4xNGI2NDY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU3R5bGVEZWNsYXJh
dGlvbi5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1N0eWxlRGVjbGFyYXRpb24uaWRs
CkBAIC0yNSw3ICsyNSw2IEBACiAgICAgR2VuZXJhdGVJc1JlYWNoYWJsZSwKICAgICBKU0N1c3Rv
bUdldE93blByb3BlcnR5U2xvdEFuZERlc2NyaXB0b3IsCiAgICAgQ3VzdG9tTmFtZWRTZXR0ZXIs
Ci0gICAgSW5kZXhlZEdldHRlciwKICAgICBDdXN0b21FbnVtZXJhdGVQcm9wZXJ0eSwKICAgICBT
a2lwVlRhYmxlVmFsaWRhdGlvbgogXSBpbnRlcmZhY2UgQ1NTU3R5bGVEZWNsYXJhdGlvbiB7CkBA
IC00MCw3ICszOSw3IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbRGVm
YXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIERPTVN0cmluZyBwcmlvcml0eSk7CiAKICAgICByZWFk
b25seSBhdHRyaWJ1dGUgdW5zaWduZWQgbG9uZyAgICBsZW5ndGg7Ci0gICAgRE9NU3RyaW5nICAg
ICAgICAgIGl0ZW0oW0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRpb25hbCB1bnNpZ25lZCBsb25nIGlu
ZGV4KTsKKyAgICBnZXR0ZXIgRE9NU3RyaW5nICAgICAgICAgIGl0ZW0oW0RlZmF1bHQ9VW5kZWZp
bmVkXSBvcHRpb25hbCB1bnNpZ25lZCBsb25nIGluZGV4KTsKICAgICByZWFkb25seSBhdHRyaWJ1
dGUgQ1NTUnVsZSAgICAgICAgICBwYXJlbnRSdWxlOwogCiAgICAgLy8gRXh0ZW5zaW9ucwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlTGlzdC5pZGwgYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTVmFsdWVMaXN0LmlkbAppbmRleCA5NTA0YzdiLi5jYTUxZDZjIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWVMaXN0LmlkbAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTVmFsdWVMaXN0LmlkbApAQCAtMjUsMTAgKzI1LDkgQEAKIAogLy8gSW50cm9k
dWNlZCBpbiBET00gTGV2ZWwgMjoKIFsKLSAgICBJbmRleGVkR2V0dGVyLAogICAgIEltcGxlbWVu
dGF0aW9uTGFja3NWVGFibGUKIF0gaW50ZXJmYWNlIENTU1ZhbHVlTGlzdCA6IENTU1ZhbHVlIHsK
ICAgICByZWFkb25seSBhdHRyaWJ1dGUgdW5zaWduZWQgbG9uZyAgICBsZW5ndGg7Ci0gICAgQ1NT
VmFsdWUgICAgICAgICAgIGl0ZW0oW0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRpb25hbCB1bnNpZ25l
ZCBsb25nIGluZGV4KTsKKyAgICBnZXR0ZXIgQ1NTVmFsdWUgICAgICAgICAgIGl0ZW0oW0RlZmF1
bHQ9VW5kZWZpbmVkXSBvcHRpb25hbCB1bnNpZ25lZCBsb25nIGluZGV4KTsKIH07CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9NZWRpYUxpc3QuaWRsIGIvU291cmNlL1dlYkNvcmUv
Y3NzL01lZGlhTGlzdC5pZGwKaW5kZXggOGFhYmI3My4uMzRmODI3NSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvY3NzL01lZGlhTGlzdC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL01l
ZGlhTGlzdC5pZGwKQEAgLTI3LDE0ICsyNywxMyBAQAogWwogICAgIEpTQ3VzdG9tSGVhZGVyLAog
ICAgIEdlbmVyYXRlSXNSZWFjaGFibGUsCi0gICAgSW5kZXhlZEdldHRlciwKICAgICBJbXBsZW1l
bnRhdGlvbkxhY2tzVlRhYmxlCiBdIGludGVyZmFjZSBNZWRpYUxpc3QgewogCiAgICAgW1RyZWF0
TnVsbEFzPU51bGxTdHJpbmcsIFRyZWF0UmV0dXJuZWROdWxsU3RyaW5nQXM9TnVsbCwgU2V0dGVy
UmFpc2VzRXhjZXB0aW9uXSBhdHRyaWJ1dGUgRE9NU3RyaW5nIG1lZGlhVGV4dDsKICAgICByZWFk
b25seSBhdHRyaWJ1dGUgdW5zaWduZWQgbG9uZyBsZW5ndGg7CiAKLSAgICBbVHJlYXRSZXR1cm5l
ZE51bGxTdHJpbmdBcz1OdWxsXSBET01TdHJpbmcgaXRlbShbRGVmYXVsdD1VbmRlZmluZWRdIG9w
dGlvbmFsIHVuc2lnbmVkIGxvbmcgaW5kZXgpOworICAgIFtUcmVhdFJldHVybmVkTnVsbFN0cmlu
Z0FzPU51bGxdIGdldHRlciBET01TdHJpbmcgaXRlbShbRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlv
bmFsIHVuc2lnbmVkIGxvbmcgaW5kZXgpOwogICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgZGVs
ZXRlTWVkaXVtKFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgRE9NU3RyaW5nIG9sZE1lZGl1
bSk7CiAgICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBhcHBlbmRNZWRpdW0oW0RlZmF1bHQ9VW5k
ZWZpbmVkXSBvcHRpb25hbCBET01TdHJpbmcgbmV3TWVkaXVtKTsKIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvY3NzL1N0eWxlU2hlZXRMaXN0LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9T
dHlsZVNoZWV0TGlzdC5pZGwKaW5kZXggNDY2ODZjMS4uY2M2YmYzYSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvY3NzL1N0eWxlU2hlZXRMaXN0LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9j
c3MvU3R5bGVTaGVldExpc3QuaWRsCkBAIC0yMSwxMSArMjEsMTAgQEAKIC8vIEludHJvZHVjZWQg
aW4gRE9NIExldmVsIDI6CiBbCiAgICAgR2VuZXJhdGVJc1JlYWNoYWJsZT1JbXBsRG9jdW1lbnQs
Ci0gICAgSW5kZXhlZEdldHRlciwKICAgICBJbXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxlCiBdIGlu
dGVyZmFjZSBTdHlsZVNoZWV0TGlzdCB7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVk
IGxvbmcgICAgbGVuZ3RoOwotICAgIFN0eWxlU2hlZXQgICAgICAgICBpdGVtKFtEZWZhdWx0PVVu
ZGVmaW5lZF0gb3B0aW9uYWwgdW5zaWduZWQgbG9uZyBpbmRleCk7CisgICAgZ2V0dGVyIFN0eWxl
U2hlZXQgICAgICAgICBpdGVtKFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgdW5zaWduZWQg
bG9uZyBpbmRleCk7CiAgICAgZ2V0dGVyIENTU1N0eWxlU2hlZXQgKERPTVN0cmluZyBuYW1lKTsK
IH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NGaWx0ZXJWYWx1
ZS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTRmlsdGVyVmFsdWUuaWRsCmluZGV4
IDAyMWZmYTYuLmY5MzQ2ZjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRD
U1NGaWx0ZXJWYWx1ZS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU0ZpbHRl
clZhbHVlLmlkbApAQCAtMjQsOSArMjQsOCBAQAogICovCiAKIFsKLSAgICAgICAgQ29uZGl0aW9u
YWw9Q1NTX0ZJTFRFUlMsCi0gICAgICAgIEluZGV4ZWRHZXR0ZXIsCi0gICAgICAgIERvTm90Q2hl
Y2tDb25zdGFudHMsCisgICAgQ29uZGl0aW9uYWw9Q1NTX0ZJTFRFUlMsCisgICAgRG9Ob3RDaGVj
a0NvbnN0YW50cywKICAgICBJbXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxlCiBdIGludGVyZmFjZSBX
ZWJLaXRDU1NGaWx0ZXJWYWx1ZSA6IENTU1ZhbHVlTGlzdCB7CiAKQEAgLTQ5LDQgKzQ4LDYgQEAK
ICNlbmRpZgogCiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIHNob3J0IG9wZXJhdGlv
blR5cGU7CisKKyAgICBnZXR0ZXIgQ1NTVmFsdWUgKFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9u
YWwgdW5zaWduZWQgbG9uZyBpbmRleCk7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
Y3NzL1dlYktpdENTU0tleWZyYW1lc1J1bGUuaWRsIGIvU291cmNlL1dlYkNvcmUvY3NzL1dlYktp
dENTU0tleWZyYW1lc1J1bGUuaWRsCmluZGV4IDE5ZmFhYTUuLjQ1NTJhN2IgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NLZXlmcmFtZXNSdWxlLmlkbAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTS2V5ZnJhbWVzUnVsZS5pZGwKQEAgLTI3LDkgKzI3LDcg
QEAKICAqLwogCiAvLyBJbnRyb2R1Y2VkIGluIERPTSBMZXZlbCA/OgotWwotICAgIEluZGV4ZWRH
ZXR0ZXIKLV0gaW50ZXJmYWNlIFdlYktpdENTU0tleWZyYW1lc1J1bGUgOiBDU1NSdWxlIHsKK2lu
dGVyZmFjZSBXZWJLaXRDU1NLZXlmcmFtZXNSdWxlIDogQ1NTUnVsZSB7CiAKICAgICBbVHJlYXRS
ZXR1cm5lZE51bGxTdHJpbmdBcz1OdWxsLCBUcmVhdE51bGxBcz1OdWxsU3RyaW5nXSBhdHRyaWJ1
dGUgRE9NU3RyaW5nIG5hbWU7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIENTU1J1bGVMaXN0IGNz
c1J1bGVzOwpAQCAtMzcsNSArMzUsNyBAQAogICAgIHZvaWQgaW5zZXJ0UnVsZShbRGVmYXVsdD1V
bmRlZmluZWRdIG9wdGlvbmFsIERPTVN0cmluZyBydWxlKTsKICAgICB2b2lkIGRlbGV0ZVJ1bGUo
W0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRpb25hbCBET01TdHJpbmcga2V5KTsKICAgICBXZWJLaXRD
U1NLZXlmcmFtZVJ1bGUgZmluZFJ1bGUoW0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRpb25hbCBET01T
dHJpbmcga2V5KTsKKworICAgIGdldHRlciBXZWJLaXRDU1NLZXlmcmFtZVJ1bGUgKHVuc2lnbmVk
IGxvbmcgaW5kZXgpOwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1dlYktp
dENTU1RyYW5zZm9ybVZhbHVlLmlkbCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NUcmFu
c2Zvcm1WYWx1ZS5pZGwKaW5kZXggOTVkYmIyOC4uNTE2MjExYSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvY3NzL1dlYktpdENTU1RyYW5zZm9ybVZhbHVlLmlkbAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvV2ViS2l0Q1NTVHJhbnNmb3JtVmFsdWUuaWRsCkBAIC0yNyw4ICsyNyw3IEBACiAg
Ki8KIAogWwotICAgICAgICBJbmRleGVkR2V0dGVyLAotICAgICAgICBEb05vdENoZWNrQ29uc3Rh
bnRzLAorICAgIERvTm90Q2hlY2tDb25zdGFudHMsCiAgICAgSW1wbGVtZW50YXRpb25MYWNrc1ZU
YWJsZQogXSBpbnRlcmZhY2UgV2ViS2l0Q1NTVHJhbnNmb3JtVmFsdWUgOiBDU1NWYWx1ZUxpc3Qg
ewogCkBAIC01Nyw1ICs1Niw3IEBACiAgICAgY29uc3QgdW5zaWduZWQgc2hvcnQgQ1NTX01BVFJJ
WDNEICAgID0gMjE7CiAKICAgICByZWFkb25seSBhdHRyaWJ1dGUgdW5zaWduZWQgc2hvcnQgb3Bl
cmF0aW9uVHlwZTsKKworICAgIGdldHRlciBDU1NWYWx1ZSAoW0RlZmF1bHQ9VW5kZWZpbmVkXSBv
cHRpb25hbCB1bnNpZ25lZCBsb25nIGluZGV4KTsKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2RvbS9DbGllbnRSZWN0TGlzdC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9kb20vQ2xpZW50
UmVjdExpc3QuaWRsCmluZGV4IDRlZmFhYjcuLmNhMWZjYjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2RvbS9DbGllbnRSZWN0TGlzdC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0Ns
aWVudFJlY3RMaXN0LmlkbApAQCAtMjUsMTEgKzI1LDEwIEBACiAgKi8KIAogWwotICAgIEluZGV4
ZWRHZXR0ZXIsCiAgICAgSW1wbGVtZW50YXRpb25MYWNrc1ZUYWJsZQogXSBpbnRlcmZhY2UgQ2xp
ZW50UmVjdExpc3QgewogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGxlbmd0
aDsKLSAgICBDbGllbnRSZWN0IGl0ZW0oW0lzSW5kZXgsIERlZmF1bHQ9VW5kZWZpbmVkXSBvcHRp
b25hbCB1bnNpZ25lZCBsb25nIGluZGV4KTsKKyAgICBnZXR0ZXIgQ2xpZW50UmVjdCBpdGVtKFtJ
c0luZGV4LCBEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgdW5zaWduZWQgbG9uZyBpbmRleCk7
CiAgICAgLy8gRklYTUU6IEZpeCBsaXN0IGJlaGF2aW9yIHRvIGFsbG93IGN1c3RvbSBleGNlcHRp
b25zIHRvIGJlIHRocm93bi4KIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9E
T01OYW1lZEZsb3dDb2xsZWN0aW9uLmlkbCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9ET01OYW1lZEZs
b3dDb2xsZWN0aW9uLmlkbAppbmRleCA5YjQzYmExLi5mODY3YjY2IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9kb20vRE9NTmFtZWRGbG93Q29sbGVjdGlvbi5pZGwKKysrIGIvU291cmNlL1dl
YkNvcmUvZG9tL0RPTU5hbWVkRmxvd0NvbGxlY3Rpb24uaWRsCkBAIC0zMiwxMCArMzIsOSBAQAog
ICAgIENvbmRpdGlvbmFsPUNTU19SRUdJT05TLAogICAgIEludGVyZmFjZU5hbWU9V2ViS2l0TmFt
ZWRGbG93Q29sbGVjdGlvbiwKICAgICBKU0dlbmVyYXRlVG9KU09iamVjdCwKLSAgICBJbmRleGVk
R2V0dGVyLAogICAgIEltcGxlbWVudGF0aW9uTGFja3NWVGFibGUKIF0gaW50ZXJmYWNlIERPTU5h
bWVkRmxvd0NvbGxlY3Rpb24gewogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25n
IGxlbmd0aDsKLSAgICBXZWJLaXROYW1lZEZsb3cgaXRlbSh1bnNpZ25lZCBsb25nIGluZGV4KTsK
KyAgICBnZXR0ZXIgV2ViS2l0TmFtZWRGbG93IGl0ZW0odW5zaWduZWQgbG9uZyBpbmRleCk7CiAg
ICAgZ2V0dGVyIFdlYktpdE5hbWVkRmxvdyBuYW1lZEl0ZW0oRE9NU3RyaW5nIG5hbWUpOwogfTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9ET01TdHJpbmdMaXN0LmlkbCBiL1NvdXJj
ZS9XZWJDb3JlL2RvbS9ET01TdHJpbmdMaXN0LmlkbAppbmRleCBkMTBhOGE2Li45MTVhNjZiIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRE9NU3RyaW5nTGlzdC5pZGwKKysrIGIvU291
cmNlL1dlYkNvcmUvZG9tL0RPTVN0cmluZ0xpc3QuaWRsCkBAIC0yNCwxMyArMjQsMTIgQEAKICAq
LwogCiBbCi0gICAgSW5kZXhlZEdldHRlciwKICAgICBKU0N1c3RvbVRvTmF0aXZlT2JqZWN0LAog
ICAgIEpTTm9TdGF0aWNUYWJsZXMsCiAgICAgSW1wbGVtZW50YXRpb25MYWNrc1ZUYWJsZQogXSBp
bnRlcmZhY2UgRE9NU3RyaW5nTGlzdCB7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVk
IGxvbmcgbGVuZ3RoOwotICAgIFtUcmVhdFJldHVybmVkTnVsbFN0cmluZ0FzPU51bGxdIERPTVN0
cmluZyBpdGVtKFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgdW5zaWduZWQgbG9uZyBpbmRl
eCk7CisgICAgW1RyZWF0UmV0dXJuZWROdWxsU3RyaW5nQXM9TnVsbF0gZ2V0dGVyIERPTVN0cmlu
ZyBpdGVtKFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgdW5zaWduZWQgbG9uZyBpbmRleCk7
CiAgICAgYm9vbGVhbiBjb250YWlucyhbRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIERPTVN0
cmluZyBzdHJpbmcpOwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RhdGFU
cmFuc2Zlckl0ZW1MaXN0LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9EYXRhVHJhbnNmZXJJdGVt
TGlzdC5pZGwKaW5kZXggMjRlN2Y3Zi4uYWIwMWEwNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvZG9tL0RhdGFUcmFuc2Zlckl0ZW1MaXN0LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20v
RGF0YVRyYW5zZmVySXRlbUxpc3QuaWRsCkBAIC0zMSwxMiArMzEsMTEgQEAKIFsKICAgICBOb0lu
dGVyZmFjZU9iamVjdCwKICAgICBDb25kaXRpb25hbD1EQVRBX1RSQU5TRkVSX0lURU1TLAotICAg
IEluZGV4ZWRHZXR0ZXIsCiAgICAgSlNHZW5lcmF0ZVRvTmF0aXZlT2JqZWN0LAogICAgIEltcGxl
bWVudGF0aW9uTGFja3NWVGFibGUKIF0gaW50ZXJmYWNlIERhdGFUcmFuc2Zlckl0ZW1MaXN0IHsK
ICAgICByZWFkb25seSBhdHRyaWJ1dGUgbG9uZyBsZW5ndGg7Ci0gICAgRGF0YVRyYW5zZmVySXRl
bSBpdGVtKFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgdW5zaWduZWQgbG9uZyBpbmRleCk7
CisgICAgZ2V0dGVyIERhdGFUcmFuc2Zlckl0ZW0gaXRlbShbRGVmYXVsdD1VbmRlZmluZWRdIG9w
dGlvbmFsIHVuc2lnbmVkIGxvbmcgaW5kZXgpOwogCiAgICAgdm9pZCBjbGVhcigpOwogICAgIHZv
aWQgYWRkKEZpbGU/IGZpbGUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL05hbWVk
Tm9kZU1hcC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9kb20vTmFtZWROb2RlTWFwLmlkbAppbmRleCA1
Y2RlODhkLi5hZTY4ZDQyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vTmFtZWROb2Rl
TWFwLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vTmFtZWROb2RlTWFwLmlkbApAQCAtMjAs
NyArMjAsNiBAQAogCiBbCiAgICAgR2VuZXJhdGVJc1JlYWNoYWJsZT1JbXBsRWxlbWVudFJvb3Qs
Ci0gICAgSW5kZXhlZEdldHRlciwKICAgICBJbXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxlCiBdIGlu
dGVyZmFjZSBOYW1lZE5vZGVNYXAgewogCkBAIC0zMCw3ICsyOSw3IEBACiAKICAgICBbUmFpc2Vz
RXhjZXB0aW9uXSBOb2RlIHJlbW92ZU5hbWVkSXRlbShbRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlv
bmFsIERPTVN0cmluZyBuYW1lKTsKIAotICAgIE5vZGUgaXRlbShbRGVmYXVsdD1VbmRlZmluZWRd
IG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcgaW5kZXgpOworICAgIGdldHRlciBOb2RlIGl0ZW0oW0Rl
ZmF1bHQ9VW5kZWZpbmVkXSBvcHRpb25hbCB1bnNpZ25lZCBsb25nIGluZGV4KTsKICAgICAKICAg
ICByZWFkb25seSBhdHRyaWJ1dGUgdW5zaWduZWQgbG9uZyBsZW5ndGg7CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2RvbS9Ob2RlTGlzdC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9kb20vTm9k
ZUxpc3QuaWRsCmluZGV4IDJmZmNjNmUuLmNhMmMwMzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2RvbS9Ob2RlTGlzdC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL05vZGVMaXN0Lmlk
bApAQCAtMjAsMTEgKzIwLDEwIEBACiAKIFsKICAgICBDdXN0b21Jc1JlYWNoYWJsZSwKLSAgICBJ
bmRleGVkR2V0dGVyLAogICAgIFNraXBWVGFibGVWYWxpZGF0aW9uCiBdIGludGVyZmFjZSBOb2Rl
TGlzdCB7CiAKLSAgICBOb2RlIGl0ZW0oW0lzSW5kZXgsRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlv
bmFsIHVuc2lnbmVkIGxvbmcgaW5kZXgpOworICAgIGdldHRlciBOb2RlIGl0ZW0oW0lzSW5kZXgs
RGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcgaW5kZXgpOwogICAgIGdl
dHRlciAoTm9kZSBvciB1bnNpZ25lZCBsb25nKSAoRE9NU3RyaW5nIG5hbWUpOwogCiAgICAgcmVh
ZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgbGVuZ3RoOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvZG9tL1Byb3BlcnR5Tm9kZUxpc3QuaWRsIGIvU291cmNlL1dlYkNvcmUvZG9tL1By
b3BlcnR5Tm9kZUxpc3QuaWRsCmluZGV4IDdlNmYzYTAuLjkxNWJmZTMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2RvbS9Qcm9wZXJ0eU5vZGVMaXN0LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9kb20vUHJvcGVydHlOb2RlTGlzdC5pZGwKQEAgLTMwLDEyICszMCwxMSBAQAogCiBbCiAgICAg
Q29uZGl0aW9uYWw9TUlDUk9EQVRBLAotICAgIEluZGV4ZWRHZXR0ZXIsCiAgICAgSlNHZW5lcmF0
ZVRvSlNPYmplY3QKIF0gaW50ZXJmYWNlIFByb3BlcnR5Tm9kZUxpc3QgOiBOb2RlTGlzdCB7CiAK
ICAgICBzZXF1ZW5jZTxNaWNyb0RhdGFJdGVtVmFsdWU+IGdldFZhbHVlcygpOwotICAgIE5vZGUg
aXRlbSh1bnNpZ25lZCBsb25nIGluZGV4KTsKKyAgICBnZXR0ZXIgTm9kZSBpdGVtKHVuc2lnbmVk
IGxvbmcgaW5kZXgpOwogCiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgbGVu
Z3RoOwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Ub3VjaExpc3QuaWRsIGIv
U291cmNlL1dlYkNvcmUvZG9tL1RvdWNoTGlzdC5pZGwKaW5kZXggODExZTBhNy4uZWJiZjgxYyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1RvdWNoTGlzdC5pZGwKKysrIGIvU291cmNl
L1dlYkNvcmUvZG9tL1RvdWNoTGlzdC5pZGwKQEAgLTI1LDEwICsyNSw5IEBACiAKIFsKICAgICBD
b25kaXRpb25hbD1UT1VDSF9FVkVOVFMsCi0gICAgSW5kZXhlZEdldHRlciwKICAgICBJbXBsZW1l
bnRhdGlvbkxhY2tzVlRhYmxlCiBdIGludGVyZmFjZSBUb3VjaExpc3QgewogICAgIHJlYWRvbmx5
IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGxlbmd0aDsKIAotICAgIFRvdWNoIGl0ZW0odW5zaWdu
ZWQgbG9uZyBpbmRleCk7CisgICAgZ2V0dGVyIFRvdWNoIGl0ZW0odW5zaWduZWQgbG9uZyBpbmRl
eCk7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZmlsZWFwaS9GaWxlTGlzdC5pZGwg
Yi9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0ZpbGVMaXN0LmlkbAppbmRleCA3YWRkMGMyLi5mMGQ0
Y2U0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0ZpbGVMaXN0LmlkbAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0ZpbGVMaXN0LmlkbApAQCAtMjQsMTEgKzI0LDEwIEBA
CiAgKi8KIAogWwotICAgIEluZGV4ZWRHZXR0ZXIsCiAgICAgSlNOb1N0YXRpY1RhYmxlcywKICAg
ICBJbXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxlCiBdIGludGVyZmFjZSBGaWxlTGlzdCB7CiAgICAg
cmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgbGVuZ3RoOwotICAgIEZpbGUgaXRlbSh1
bnNpZ25lZCBsb25nIGluZGV4KTsKKyAgICBnZXR0ZXIgRmlsZSBpdGVtKHVuc2lnbmVkIGxvbmcg
aW5kZXgpOwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9ET01TZXR0YWJs
ZVRva2VuTGlzdC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0RPTVNldHRhYmxlVG9rZW5MaXN0
LmlkbAppbmRleCA2OTQ3YjE5Li41OWQwYmUyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0RPTVNldHRhYmxlVG9rZW5MaXN0LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0RP
TVNldHRhYmxlVG9rZW5MaXN0LmlkbApAQCAtMjMsMTAgKzIzLDExIEBACiAgKi8KIAogWwotICAg
IEluZGV4ZWRHZXR0ZXIsCiAgICAgSlNHZW5lcmF0ZVRvSlNPYmplY3QsCiAgICAgU2tpcFZUYWJs
ZVZhbGlkYXRpb24sCiBdIGludGVyZmFjZSBET01TZXR0YWJsZVRva2VuTGlzdCA6IERPTVRva2Vu
TGlzdCB7CiAgICAgYXR0cmlidXRlIERPTVN0cmluZyB2YWx1ZTsKKworICAgIFtUcmVhdFJldHVy
bmVkTnVsbFN0cmluZ0FzPU51bGxdIGdldHRlciBET01TdHJpbmcgKHVuc2lnbmVkIGxvbmcgaW5k
ZXgpOwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9ET01Ub2tlbkxpc3Qu
aWRsIGIvU291cmNlL1dlYkNvcmUvaHRtbC9ET01Ub2tlbkxpc3QuaWRsCmluZGV4IGQ2N2UwMGYu
LjU4OTMxMjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvRE9NVG9rZW5MaXN0Lmlk
bAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0RPTVRva2VuTGlzdC5pZGwKQEAgLTI0LDExICsy
NCwxMCBAQAogCiBbCiAgICAgR2VuZXJhdGVJc1JlYWNoYWJsZT1JbXBsRWxlbWVudFJvb3QsCi0g
ICAgSW5kZXhlZEdldHRlciwKICAgICBTa2lwVlRhYmxlVmFsaWRhdGlvbgogXSBpbnRlcmZhY2Ug
RE9NVG9rZW5MaXN0IHsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgdW5zaWduZWQgbG9uZyBsZW5n
dGg7Ci0gICAgW1RyZWF0UmV0dXJuZWROdWxsU3RyaW5nQXM9TnVsbF0gRE9NU3RyaW5nIGl0ZW0o
dW5zaWduZWQgbG9uZyBpbmRleCk7CisgICAgW1RyZWF0UmV0dXJuZWROdWxsU3RyaW5nQXM9TnVs
bF0gZ2V0dGVyIERPTVN0cmluZyBpdGVtKHVuc2lnbmVkIGxvbmcgaW5kZXgpOwogICAgIFtSYWlz
ZXNFeGNlcHRpb25dIGJvb2xlYW4gY29udGFpbnMoRE9NU3RyaW5nIHRva2VuKTsKICAgICBbUmFp
c2VzRXhjZXB0aW9uXSB2b2lkIGFkZChET01TdHJpbmcuLi4gdG9rZW5zKTsKICAgICBbUmFpc2Vz
RXhjZXB0aW9uXSB2b2lkIHJlbW92ZShET01TdHJpbmcuLi4gdG9rZW5zKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEFsbENvbGxlY3Rpb24uaWRsIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MQWxsQ29sbGVjdGlvbi5pZGwKaW5kZXggNjJlOTEzZS4uYThlNDQzNCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MQWxsQ29sbGVjdGlvbi5pZGwKKysrIGIv
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MQWxsQ29sbGVjdGlvbi5pZGwKQEAgLTI0LDEzICsyNCwx
MiBAQAogICovCiAKIFsKLSAgICBJbmRleGVkR2V0dGVyLAogICAgIEN1c3RvbUNhbGwsCiAgICAg
TWFzcXVlcmFkZXNBc1VuZGVmaW5lZCwKICAgICBHZW5lcmF0ZUlzUmVhY2hhYmxlPUltcGxPd25l
ck5vZGVSb290LAogXSBpbnRlcmZhY2UgSFRNTEFsbENvbGxlY3Rpb24gewogICAgIHJlYWRvbmx5
IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGxlbmd0aDsKLSAgICBbQ3VzdG9tXSBOb2RlIGl0ZW0o
W0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRpb25hbCB1bnNpZ25lZCBsb25nIGluZGV4KTsKKyAgICBb
Q3VzdG9tXSBnZXR0ZXIgTm9kZSBpdGVtKFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgdW5z
aWduZWQgbG9uZyBpbmRleCk7CiAgICAgW0N1c3RvbV0gZ2V0dGVyIE5vZGUgbmFtZWRJdGVtKERP
TVN0cmluZyBuYW1lKTsKICAgICAvLyBGSVhNRTogVGhpcyBzaG91bGQgcmV0dXJuIGFuIEhUTUxB
bGxDb2xsZWN0aW9uLgogICAgIE5vZGVMaXN0IHRhZ3MoRE9NU3RyaW5nIG5hbWUpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MQ29sbGVjdGlvbi5pZGwgYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0hUTUxDb2xsZWN0aW9uLmlkbAppbmRleCA3MTZmNDJiLi42MmNiMDUwIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxDb2xsZWN0aW9uLmlkbAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxDb2xsZWN0aW9uLmlkbApAQCAtMTksMTMgKzE5LDEyIEBACiAg
Ki8KIAogWwotICAgIEluZGV4ZWRHZXR0ZXIsCiAgICAgQ3VzdG9tVG9KU09iamVjdCwKICAgICBH
ZW5lcmF0ZUlzUmVhY2hhYmxlPUltcGxPd25lck5vZGVSb290LAogICAgIE9iakNQb2x5bW9ycGhp
YywKIF0gaW50ZXJmYWNlIEhUTUxDb2xsZWN0aW9uIHsKICAgICByZWFkb25seSBhdHRyaWJ1dGUg
dW5zaWduZWQgbG9uZyBsZW5ndGg7Ci0gICAgTm9kZSBpdGVtKFtEZWZhdWx0PVVuZGVmaW5lZF0g
b3B0aW9uYWwgdW5zaWduZWQgbG9uZyBpbmRleCk7CisgICAgZ2V0dGVyIE5vZGUgaXRlbShbRGVm
YXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcgaW5kZXgpOwogICAgIGdldHRl
ciBOb2RlIG5hbWVkSXRlbShbRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIERPTVN0cmluZyBu
YW1lKTsKIAogI2lmIGRlZmluZWQoTEFOR1VBR0VfT0JKRUNUSVZFX0MpICYmIExBTkdVQUdFX09C
SkVDVElWRV9DCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtQ29udHJv
bHNDb2xsZWN0aW9uLmlkbCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1Db250cm9sc0Nv
bGxlY3Rpb24uaWRsCmluZGV4IDBjMDQ5NGUuLjM3NWQyN2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTEZvcm1Db250cm9sc0NvbGxlY3Rpb24uaWRsCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTEZvcm1Db250cm9sc0NvbGxlY3Rpb24uaWRsCkBAIC0xOSw4ICsxOSw4
IEBACiAgKi8KIAogWwotICAgIEluZGV4ZWRHZXR0ZXIsCiAgICAgR2VuZXJhdGVJc1JlYWNoYWJs
ZT1JbXBsT3duZXJOb2RlUm9vdCwKIF0gaW50ZXJmYWNlIEhUTUxGb3JtQ29udHJvbHNDb2xsZWN0
aW9uIDogSFRNTENvbGxlY3Rpb24geworICAgIGdldHRlciBOb2RlIChbRGVmYXVsdD1VbmRlZmlu
ZWRdIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcgaW5kZXgpOwogICAgIFtDdXN0b21dIGdldHRlciBO
b2RlIG5hbWVkSXRlbShbRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIERPTVN0cmluZyBuYW1l
KTsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtRWxlbWVudC5p
ZGwgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtRWxlbWVudC5pZGwKaW5kZXggODZhNmY3
NC4uYTYzMmRiYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUVsZW1l
bnQuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1FbGVtZW50LmlkbApAQCAt
MTksNyArMTksNiBAQAogICovCiAKIFsKLSAgICBJbmRleGVkR2V0dGVyLAogICAgIEN1c3RvbU5h
bWVkR2V0dGVyCiBdIGludGVyZmFjZSBIVE1MRm9ybUVsZW1lbnQgOiBIVE1MRWxlbWVudCB7CiAg
ICAgW1JlZmxlY3Q9YWNjZXB0X2NoYXJzZXRdIGF0dHJpYnV0ZSBET01TdHJpbmcgYWNjZXB0Q2hh
cnNldDsKQEAgLTM1LDYgKzM0LDggQEAKICAgICByZWFkb25seSBhdHRyaWJ1dGUgSFRNTENvbGxl
Y3Rpb24gZWxlbWVudHM7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIGxvbmcgbGVuZ3RoOwogCisg
ICAgZ2V0dGVyIEVsZW1lbnQgKHVuc2lnbmVkIGxvbmcgaW5kZXgpOworCiAjaWYgZGVmaW5lZChM
QU5HVUFHRV9KQVZBU0NSSVBUKSAmJiBMQU5HVUFHRV9KQVZBU0NSSVBUCiAgICAgW0ltcGxlbWVu
dGVkQXM9c3VibWl0RnJvbUphdmFTY3JpcHRdIHZvaWQgc3VibWl0KCk7CiAjZWxzZQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MUHJvcGVydGllc0NvbGxlY3Rpb24uaWRsIGIv
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MUHJvcGVydGllc0NvbGxlY3Rpb24uaWRsCmluZGV4IDQ5
YWY0ZWYuLjM5MmZiOTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFByb3Bl
cnRpZXNDb2xsZWN0aW9uLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxQcm9wZXJ0
aWVzQ29sbGVjdGlvbi5pZGwKQEAgLTMxLDEwICszMSw5IEBACiBbCiAgICAgQ29uZGl0aW9uYWw9
TUlDUk9EQVRBLAogICAgIEpTR2VuZXJhdGVUb0pTT2JqZWN0LAotICAgIEluZGV4ZWRHZXR0ZXIK
IF0gaW50ZXJmYWNlIEhUTUxQcm9wZXJ0aWVzQ29sbGVjdGlvbiA6IEhUTUxDb2xsZWN0aW9uIHsK
ICAgICByZWFkb25seSBhdHRyaWJ1dGUgdW5zaWduZWQgbG9uZyBsZW5ndGg7Ci0gICAgTm9kZSBp
dGVtKHVuc2lnbmVkIGxvbmcgaW5kZXgpOworICAgIGdldHRlciBOb2RlIGl0ZW0odW5zaWduZWQg
bG9uZyBpbmRleCk7CiAKICAgICByZWFkb25seSBhdHRyaWJ1dGUgRE9NU3RyaW5nTGlzdCBuYW1l
czsKICAgICBbSW1wbGVtZW50ZWRBcz1wcm9wZXJ0eU5vZGVMaXN0XSBnZXR0ZXIgUHJvcGVydHlO
b2RlTGlzdCBuYW1lZEl0ZW0oRE9NU3RyaW5nIG5hbWUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvaHRtbC9IVE1MU2VsZWN0RWxlbWVudC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxTZWxlY3RFbGVtZW50LmlkbAppbmRleCAyNGU3NjRmLi42YzdkY2VkIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxTZWxlY3RFbGVtZW50LmlkbAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0hUTUxTZWxlY3RFbGVtZW50LmlkbApAQCAtMTksNyArMTksNiBAQAogICovCiAK
IFsKLSAgICBJbmRleGVkR2V0dGVyLAogICAgIEN1c3RvbUluZGV4ZWRTZXR0ZXIsCiBdIGludGVy
ZmFjZSBIVE1MU2VsZWN0RWxlbWVudCA6IEhUTUxFbGVtZW50IHsKICAgICBhdHRyaWJ1dGUgW1Jl
ZmxlY3RdIGJvb2xlYW4gYXV0b2ZvY3VzOwpAQCAtNDAsNyArMzksNyBAQAogI2Vsc2UKICAgICBb
U2V0dGVyUmFpc2VzRXhjZXB0aW9uXSBhdHRyaWJ1dGUgdW5zaWduZWQgbG9uZyBsZW5ndGg7CiAj
ZW5kaWYKLSAgICBOb2RlIGl0ZW0oW0lzSW5kZXgsRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFs
IHVuc2lnbmVkIGxvbmcgaW5kZXgpOworICAgIGdldHRlciBOb2RlIGl0ZW0oW0lzSW5kZXgsRGVm
YXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcgaW5kZXgpOwogICAgIE5vZGUg
bmFtZWRJdGVtKFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgRE9NU3RyaW5nIG5hbWUpOwog
ICAgIFtPYmpDTGVnYWN5VW5uYW1lZFBhcmFtZXRlcnMsIFJhaXNlc0V4Y2VwdGlvbl0gdm9pZCBh
ZGQoW0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRpb25hbCBIVE1MRWxlbWVudCBlbGVtZW50LAogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgSFRN
TEVsZW1lbnQgYmVmb3JlKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvUmFkaW9O
b2RlTGlzdC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL1JhZGlvTm9kZUxpc3QuaWRsCmluZGV4
IDIwMDExNmQuLjZlMzQ4ZTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvUmFkaW9O
b2RlTGlzdC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9SYWRpb05vZGVMaXN0LmlkbApA
QCAtMjYsNyArMjYsOCBAQAogWwogICAgIE5vSW50ZXJmYWNlT2JqZWN0LAogICAgIEpTR2VuZXJh
dGVUb0pTT2JqZWN0LAotICAgIEluZGV4ZWRHZXR0ZXIsCiBdIGludGVyZmFjZSBSYWRpb05vZGVM
aXN0IDogTm9kZUxpc3QgewogICAgIGF0dHJpYnV0ZSBET01TdHJpbmcgdmFsdWU7CisKKyAgICBn
ZXR0ZXIgTm9kZSAoW0lzSW5kZXgsRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIHVuc2lnbmVk
IGxvbmcgaW5kZXgpOwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFz
L0Zsb2F0MzJBcnJheS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9GbG9hdDMyQXJy
YXkuaWRsCmluZGV4IGZhMDFjOTguLmVhMGNjMTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvY2FudmFzL0Zsb2F0MzJBcnJheS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9j
YW52YXMvRmxvYXQzMkFycmF5LmlkbApAQCAtMjcsNyArMjcsNiBAQAogWwogICAgIEdsb2JhbENv
bnRleHQ9V2luZG93QW5kV29ya2VyLAogICAgIENvbnN0cnVjdG9yVGVtcGxhdGU9VHlwZWRBcnJh
eSwKLSAgICBOdW1lcmljSW5kZXhlZEdldHRlciwKICAgICBDdXN0b21JbmRleGVkU2V0dGVyLAog
ICAgIEpTR2VuZXJhdGVUb05hdGl2ZU9iamVjdCwKICAgICBKU05vU3RhdGljVGFibGVzLApAQCAt
NDIsNiArNDEsOCBAQAogICAgIEZsb2F0MzJBcnJheSBzdWJhcnJheShbRGVmYXVsdD1VbmRlZmlu
ZWRdIG9wdGlvbmFsIGxvbmcgc3RhcnQsIAogICAgICAgICAgICAgICAgICAgICAgICAgICBvcHRp
b25hbCBsb25nIGVuZCk7CiAKKyAgICBnZXR0ZXIgZmxvYXQgKHVuc2lnbmVkIGxvbmcgaW5kZXgp
OworCiAgICAgLy8gdm9pZCBzZXQoRmxvYXQzMkFycmF5IGFycmF5LCBvcHRpb25hbCB1bnNpZ25l
ZCBsb25nIG9mZnNldCk7CiAgICAgLy8gdm9pZCBzZXQoc2VxdWVuY2U8bG9uZz4gYXJyYXksIG9w
dGlvbmFsIHVuc2lnbmVkIGxvbmcgb2Zmc2V0KTsKICAgICB2b2lkIHNldCgpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvRmxvYXQ2NEFycmF5LmlkbCBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvY2FudmFzL0Zsb2F0NjRBcnJheS5pZGwKaW5kZXggYzk1YmUxMy4uMTY4ZDJj
OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvRmxvYXQ2NEFycmF5Lmlk
bAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9GbG9hdDY0QXJyYXkuaWRsCkBAIC0y
Nyw3ICsyNyw2IEBACiBbCiAgICAgR2xvYmFsQ29udGV4dD1XaW5kb3dBbmRXb3JrZXIsCiAgICAg
Q29uc3RydWN0b3JUZW1wbGF0ZT1UeXBlZEFycmF5LAotICAgIE51bWVyaWNJbmRleGVkR2V0dGVy
LAogICAgIEN1c3RvbUluZGV4ZWRTZXR0ZXIsCiAgICAgSlNHZW5lcmF0ZVRvTmF0aXZlT2JqZWN0
LAogICAgIEpTTm9TdGF0aWNUYWJsZXMsCkBAIC00Miw2ICs0MSw4IEBACiAgICAgRmxvYXQ2NEFy
cmF5IHN1YmFycmF5KFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgbG9uZyBzdGFydCwgCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbmFsIGxvbmcgZW5kKTsKIAorICAgIGdldHRl
ciBkb3VibGUgKHVuc2lnbmVkIGxvbmcgaW5kZXgpOworCiAgICAgLy8gdm9pZCBzZXQoRmxvYXQ2
NEFycmF5IGFycmF5LCBvcHRpb25hbCB1bnNpZ25lZCBsb25nIG9mZnNldCk7CiAgICAgLy8gdm9p
ZCBzZXQoc2VxdWVuY2U8bG9uZz4gYXJyYXksIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcgb2Zmc2V0
KTsKICAgICB2b2lkIHNldCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52
YXMvSW50MTZBcnJheS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9JbnQxNkFycmF5
LmlkbAppbmRleCBjNzY1MTlhLi5iYzQ0ZmQ5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9o
dG1sL2NhbnZhcy9JbnQxNkFycmF5LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZh
cy9JbnQxNkFycmF5LmlkbApAQCAtMjYsNyArMjYsNiBAQAogWwogICAgIEdsb2JhbENvbnRleHQ9
V2luZG93QW5kV29ya2VyLAogICAgIENvbnN0cnVjdG9yVGVtcGxhdGU9VHlwZWRBcnJheSwKLSAg
ICBOdW1lcmljSW5kZXhlZEdldHRlciwKICAgICBDdXN0b21JbmRleGVkU2V0dGVyLAogICAgIEpT
R2VuZXJhdGVUb05hdGl2ZU9iamVjdCwKICAgICBKU05vU3RhdGljVGFibGVzLApAQCAtNDEsNiAr
NDAsOCBAQAogICAgIEludDE2QXJyYXkgc3ViYXJyYXkoW0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRp
b25hbCBsb25nIHN0YXJ0LCAKICAgICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbmFsIGxvbmcg
ZW5kKTsKIAorICAgIGdldHRlciBzaG9ydCAodW5zaWduZWQgbG9uZyBpbmRleCk7CisKICAgICAv
LyB2b2lkIHNldChJbnQxNkFycmF5IGFycmF5LCBvcHRpb25hbCB1bnNpZ25lZCBsb25nIG9mZnNl
dCk7CiAgICAgLy8gdm9pZCBzZXQoc2VxdWVuY2U8bG9uZz4gYXJyYXksIG9wdGlvbmFsIHVuc2ln
bmVkIGxvbmcgb2Zmc2V0KTsKICAgICB2b2lkIHNldCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvaHRtbC9jYW52YXMvSW50MzJBcnJheS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2Nh
bnZhcy9JbnQzMkFycmF5LmlkbAppbmRleCAxZWU0NDFjLi42ZmY3YjgwIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9JbnQzMkFycmF5LmlkbAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL2NhbnZhcy9JbnQzMkFycmF5LmlkbApAQCAtMjcsNyArMjcsNiBAQAogWwogICAg
IEdsb2JhbENvbnRleHQ9V2luZG93QW5kV29ya2VyLAogICAgIENvbnN0cnVjdG9yVGVtcGxhdGU9
VHlwZWRBcnJheSwKLSAgICBOdW1lcmljSW5kZXhlZEdldHRlciwKICAgICBDdXN0b21JbmRleGVk
U2V0dGVyLAogICAgIEpTR2VuZXJhdGVUb05hdGl2ZU9iamVjdCwKICAgICBKU05vU3RhdGljVGFi
bGVzLApAQCAtNDIsNiArNDEsOCBAQAogICAgIEludDMyQXJyYXkgc3ViYXJyYXkoW0RlZmF1bHQ9
VW5kZWZpbmVkXSBvcHRpb25hbCBsb25nIHN0YXJ0LCAKICAgICAgICAgICAgICAgICAgICAgICAg
IG9wdGlvbmFsIGxvbmcgZW5kKTsKIAorICAgIGdldHRlciBsb25nICh1bnNpZ25lZCBsb25nIGlu
ZGV4KTsKKwogICAgIC8vIHZvaWQgc2V0KEludDMyQXJyYXkgYXJyYXksIG9wdGlvbmFsIHVuc2ln
bmVkIGxvbmcgb2Zmc2V0KTsKICAgICAvLyB2b2lkIHNldChzZXF1ZW5jZTxsb25nPiBhcnJheSwg
b3B0aW9uYWwgdW5zaWduZWQgbG9uZyBvZmZzZXQpOwogICAgIHZvaWQgc2V0KCk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9JbnQ4QXJyYXkuaWRsIGIvU291cmNlL1dl
YkNvcmUvaHRtbC9jYW52YXMvSW50OEFycmF5LmlkbAppbmRleCAwMzVlOGM0Li5kMzdjMzFiIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9JbnQ4QXJyYXkuaWRsCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL0ludDhBcnJheS5pZGwKQEAgLTI3LDcgKzI3LDYg
QEAKIFsKICAgICBHbG9iYWxDb250ZXh0PVdpbmRvd0FuZFdvcmtlciwKICAgICBDb25zdHJ1Y3Rv
clRlbXBsYXRlPVR5cGVkQXJyYXksCi0gICAgTnVtZXJpY0luZGV4ZWRHZXR0ZXIsCiAgICAgQ3Vz
dG9tSW5kZXhlZFNldHRlciwKICAgICBKU0dlbmVyYXRlVG9OYXRpdmVPYmplY3QsCiAgICAgSlNO
b1N0YXRpY1RhYmxlcywKQEAgLTQyLDYgKzQxLDggQEAKICAgICBJbnQ4QXJyYXkgc3ViYXJyYXko
W0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRpb25hbCBsb25nIHN0YXJ0LCAKICAgICAgICAgICAgICAg
ICAgICAgICAgb3B0aW9uYWwgbG9uZyBlbmQpOwogCisgICAgZ2V0dGVyIGJ5dGUgKHVuc2lnbmVk
IGxvbmcgaW5kZXgpOworCiAgICAgLy8gdm9pZCBzZXQoSW50OEFycmF5IGFycmF5LCBvcHRpb25h
bCB1bnNpZ25lZCBsb25nIG9mZnNldCk7CiAgICAgLy8gdm9pZCBzZXQoc2VxdWVuY2U8bG9uZz4g
YXJyYXksIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcgb2Zmc2V0KTsKICAgICB2b2lkIHNldCgpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvVWludDE2QXJyYXkuaWRsIGIv
U291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvVWludDE2QXJyYXkuaWRsCmluZGV4IDA2YzhkNWQu
LmE0ODI3MjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1VpbnQxNkFy
cmF5LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9VaW50MTZBcnJheS5pZGwK
QEAgLTI3LDcgKzI3LDYgQEAKIFsKICAgICBHbG9iYWxDb250ZXh0PVdpbmRvd0FuZFdvcmtlciwK
ICAgICBDb25zdHJ1Y3RvclRlbXBsYXRlPVR5cGVkQXJyYXksCi0gICAgTnVtZXJpY0luZGV4ZWRH
ZXR0ZXIsCiAgICAgQ3VzdG9tSW5kZXhlZFNldHRlciwKICAgICBKU0dlbmVyYXRlVG9OYXRpdmVP
YmplY3QsCiAgICAgSlNOb1N0YXRpY1RhYmxlcywKQEAgLTQxLDYgKzQwLDggQEAKICAgICByZWFk
b25seSBhdHRyaWJ1dGUgdW5zaWduZWQgbG9uZyBsZW5ndGg7CiAgICAgVWludDE2QXJyYXkgc3Vi
YXJyYXkoW0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRpb25hbCBsb25nIHN0YXJ0LCBvcHRpb25hbCBs
b25nIGVuZCk7CiAKKyAgICBnZXR0ZXIgdW5zaWduZWQgc2hvcnQgKHVuc2lnbmVkIGxvbmcgaW5k
ZXgpOworCiAgICAgLy8gdm9pZCBzZXQoVWludDE2QXJyYXkgYXJyYXksIG9wdGlvbmFsIHVuc2ln
bmVkIGxvbmcgb2Zmc2V0KTsKICAgICAvLyB2b2lkIHNldChzZXF1ZW5jZTxsb25nPiBhcnJheSwg
b3B0aW9uYWwgdW5zaWduZWQgbG9uZyBvZmZzZXQpOwogICAgIHZvaWQgc2V0KCk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9VaW50MzJBcnJheS5pZGwgYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL2NhbnZhcy9VaW50MzJBcnJheS5pZGwKaW5kZXggNzc1Y2MyNC4uNDY3MDIx
ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvVWludDMyQXJyYXkuaWRs
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1VpbnQzMkFycmF5LmlkbApAQCAtMjcs
NyArMjcsNiBAQAogWwogICAgIEdsb2JhbENvbnRleHQ9V2luZG93QW5kV29ya2VyLAogICAgIENv
bnN0cnVjdG9yVGVtcGxhdGU9VHlwZWRBcnJheSwKLSAgICBOdW1lcmljSW5kZXhlZEdldHRlciwK
ICAgICBDdXN0b21JbmRleGVkU2V0dGVyLAogICAgIEpTR2VuZXJhdGVUb05hdGl2ZU9iamVjdCwK
ICAgICBKU05vU3RhdGljVGFibGVzLApAQCAtNDEsNiArNDAsOCBAQAogICAgIHJlYWRvbmx5IGF0
dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGxlbmd0aDsKICAgICBVaW50MzJBcnJheSBzdWJhcnJheShb
RGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIGxvbmcgc3RhcnQsIG9wdGlvbmFsIGxvbmcgZW5k
KTsKIAorICAgIGdldHRlciB1bnNpZ25lZCBsb25nICh1bnNpZ25lZCBsb25nIGluZGV4KTsKKwog
ICAgIC8vIHZvaWQgc2V0KFVpbnQzMkFycmF5IGFycmF5LCBvcHRpb25hbCB1bnNpZ25lZCBsb25n
IG9mZnNldCk7CiAgICAgLy8gdm9pZCBzZXQoc2VxdWVuY2U8bG9uZz4gYXJyYXksIG9wdGlvbmFs
IHVuc2lnbmVkIGxvbmcgb2Zmc2V0KTsKICAgICB2b2lkIHNldCgpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvVWludDhBcnJheS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9o
dG1sL2NhbnZhcy9VaW50OEFycmF5LmlkbAppbmRleCAzYTQxN2E1Li5mZDVlNzQwIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9VaW50OEFycmF5LmlkbAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL2NhbnZhcy9VaW50OEFycmF5LmlkbApAQCAtMjcsNyArMjcsNiBAQAog
WwogICAgIEdsb2JhbENvbnRleHQ9V2luZG93QW5kV29ya2VyLAogICAgIENvbnN0cnVjdG9yVGVt
cGxhdGU9VHlwZWRBcnJheSwKLSAgICBOdW1lcmljSW5kZXhlZEdldHRlciwKICAgICBDdXN0b21J
bmRleGVkU2V0dGVyLAogICAgIEpTR2VuZXJhdGVUb05hdGl2ZU9iamVjdCwKICAgICBKU05vU3Rh
dGljVGFibGVzLApAQCAtNDEsNiArNDAsOCBAQAogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNp
Z25lZCBsb25nIGxlbmd0aDsKICAgICBVaW50OEFycmF5IHN1YmFycmF5KFtEZWZhdWx0PVVuZGVm
aW5lZF0gb3B0aW9uYWwgbG9uZyBzdGFydCwgb3B0aW9uYWwgbG9uZyBlbmQpOwogCisgICAgZ2V0
dGVyIG9jdGV0ICh1bnNpZ25lZCBsb25nIGluZGV4KTsKKwogICAgIC8vIHZvaWQgc2V0KFVpbnQ4
QXJyYXkgYXJyYXksIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcgb2Zmc2V0KTsKICAgICAvLyB2b2lk
IHNldChzZXF1ZW5jZTxsb25nPiBhcnJheSwgb3B0aW9uYWwgdW5zaWduZWQgbG9uZyBvZmZzZXQp
OwogICAgIHZvaWQgc2V0KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZh
cy9VaW50OENsYW1wZWRBcnJheS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9VaW50
OENsYW1wZWRBcnJheS5pZGwKaW5kZXggMzQ2ZGQxZi4uOGU4MjNkMCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvVWludDhDbGFtcGVkQXJyYXkuaWRsCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvY2FudmFzL1VpbnQ4Q2xhbXBlZEFycmF5LmlkbApAQCAtMjcsNyArMjcs
NiBAQAogWwogICAgIEdsb2JhbENvbnRleHQ9V2luZG93QW5kV29ya2VyLAogICAgIENvbnN0cnVj
dG9yVGVtcGxhdGU9VHlwZWRBcnJheSwKLSAgICBOdW1lcmljSW5kZXhlZEdldHRlciwKICAgICBD
dXN0b21JbmRleGVkU2V0dGVyLAogICAgIEpTR2VuZXJhdGVUb05hdGl2ZU9iamVjdCwKICAgICBK
U05vU3RhdGljVGFibGVzLApAQCAtNDEsNiArNDAsOCBAQAogICAgIHJlYWRvbmx5IGF0dHJpYnV0
ZSB1bnNpZ25lZCBsb25nIGxlbmd0aDsKICAgICBVaW50OENsYW1wZWRBcnJheSBzdWJhcnJheShb
RGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIGxvbmcgc3RhcnQsIG9wdGlvbmFsIGxvbmcgZW5k
KTsKIAorICAgIGdldHRlciBvY3RldCAodW5zaWduZWQgbG9uZyBpbmRleCk7CisKICAgICAvLyBG
SVhNRTogTWlzc2luZyBvdGhlciBzZXR0ZXJzIQogICAgIC8vIHZvaWQgc2V0KFVpbnQ4Q2xhbXBl
ZEFycmF5IGFycmF5LCBvcHRpb25hbCB1bnNpZ25lZCBsb25nIG9mZnNldCk7CiAgICAgLy8gdm9p
ZCBzZXQoc2VxdWVuY2U8bG9uZz4gYXJyYXksIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcgb2Zmc2V0
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svQXVkaW9UcmFja0xpc3Qu
aWRsIGIvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9BdWRpb1RyYWNrTGlzdC5pZGwKaW5kZXgg
ZDUyNzE2Mi4uZTE5NWZhMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9B
dWRpb1RyYWNrTGlzdC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9BdWRpb1Ry
YWNrTGlzdC5pZGwKQEAgLTI3LDEyICsyNywxMSBAQAogICAgIE5vSW50ZXJmYWNlT2JqZWN0LAog
ICAgIENvbmRpdGlvbmFsPVZJREVPX1RSQUNLLAogICAgIEdlbmVyYXRlSXNSZWFjaGFibGU9SW1w
bEVsZW1lbnRSb290LAotICAgIEluZGV4ZWRHZXR0ZXIsCiAgICAgRXZlbnRUYXJnZXQsCiAgICAg
SlNDdXN0b21NYXJrRnVuY3Rpb24KIF0gaW50ZXJmYWNlIEF1ZGlvVHJhY2tMaXN0IHsKICAgICBy
ZWFkb25seSBhdHRyaWJ1dGUgdW5zaWduZWQgbG9uZyBsZW5ndGg7Ci0gICAgQXVkaW9UcmFjayBp
dGVtKHVuc2lnbmVkIGxvbmcgaW5kZXgpOworICAgIGdldHRlciBBdWRpb1RyYWNrIGl0ZW0odW5z
aWduZWQgbG9uZyBpbmRleCk7CiAgICAgQXVkaW9UcmFjayBnZXRUcmFja0J5SWQoRE9NU3RyaW5n
IGlkKTsKIAogICAgIGF0dHJpYnV0ZSBFdmVudExpc3RlbmVyIG9uY2hhbmdlOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UZXh0VHJhY2tDdWVMaXN0LmlkbCBiL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrQ3VlTGlzdC5pZGwKaW5kZXggOTU5NDc1OC4u
MDgwMjU5MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UZXh0VHJhY2tD
dWVMaXN0LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RleHRUcmFja0N1ZUxp
c3QuaWRsCkBAIC0yNSwxMSArMjUsMTAgQEAKIAogWwogICAgIENvbmRpdGlvbmFsPVZJREVPX1RS
QUNLLAotICAgIEluZGV4ZWRHZXR0ZXIsCiAgICAgSW1wbGVtZW50YXRpb25MYWNrc1ZUYWJsZQog
XSBpbnRlcmZhY2UgVGV4dFRyYWNrQ3VlTGlzdCB7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIHVu
c2lnbmVkIGxvbmcgbGVuZ3RoOwotICAgIFRleHRUcmFja0N1ZSBpdGVtKHVuc2lnbmVkIGxvbmcg
aW5kZXgpOworICAgIGdldHRlciBUZXh0VHJhY2tDdWUgaXRlbSh1bnNpZ25lZCBsb25nIGluZGV4
KTsKICAgICBUZXh0VHJhY2tDdWUgZ2V0Q3VlQnlJZChET01TdHJpbmcgaWQpOwogfTsKIApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UZXh0VHJhY2tMaXN0LmlkbCBiL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrTGlzdC5pZGwKaW5kZXggZDlkNWQzMi4u
MDFiMGEzNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UZXh0VHJhY2tM
aXN0LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RleHRUcmFja0xpc3QuaWRs
CkBAIC0yNiwxMiArMjYsMTEgQEAKIFsKICAgICBDb25kaXRpb25hbD1WSURFT19UUkFDSywKICAg
ICBHZW5lcmF0ZUlzUmVhY2hhYmxlPUltcGxFbGVtZW50Um9vdCwKLSAgICBJbmRleGVkR2V0dGVy
LAogICAgIEV2ZW50VGFyZ2V0LAogICAgIEpTQ3VzdG9tTWFya0Z1bmN0aW9uCiBdIGludGVyZmFj
ZSBUZXh0VHJhY2tMaXN0IHsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgdW5zaWduZWQgbG9uZyBs
ZW5ndGg7Ci0gICAgVGV4dFRyYWNrIGl0ZW0odW5zaWduZWQgbG9uZyBpbmRleCk7CisgICAgZ2V0
dGVyIFRleHRUcmFjayBpdGVtKHVuc2lnbmVkIGxvbmcgaW5kZXgpOwogCiAgICAgYXR0cmlidXRl
IEV2ZW50TGlzdGVuZXIgb25hZGR0cmFjazsKICAgICBhdHRyaWJ1dGUgRXZlbnRMaXN0ZW5lciBv
bnJlbW92ZXRyYWNrOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UZXh0
VHJhY2tSZWdpb25MaXN0LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNr
UmVnaW9uTGlzdC5pZGwKaW5kZXggYjUyYTE3NC4uODgwNGE1MiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvaHRtbC90cmFjay9UZXh0VHJhY2tSZWdpb25MaXN0LmlkbAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL3RyYWNrL1RleHRUcmFja1JlZ2lvbkxpc3QuaWRsCkBAIC0yNiwxMSArMjYs
MTAgQEAKIFsKICAgICBOb0ludGVyZmFjZU9iamVjdCwKICAgICBDb25kaXRpb25hbD1WSURFT19U
UkFDSyAmIFdFQlZUVF9SRUdJT05TLAotICAgIEluZGV4ZWRHZXR0ZXIsCiAgICAgSW1wbGVtZW50
YXRpb25MYWNrc1ZUYWJsZQogXSBpbnRlcmZhY2UgVGV4dFRyYWNrUmVnaW9uTGlzdCB7CiAgICAg
cmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgbGVuZ3RoOwotICAgIFRleHRUcmFja1Jl
Z2lvbiBpdGVtKHVuc2lnbmVkIGxvbmcgaW5kZXgpOworICAgIGdldHRlciBUZXh0VHJhY2tSZWdp
b24gaXRlbSh1bnNpZ25lZCBsb25nIGluZGV4KTsKICAgICBUZXh0VHJhY2tSZWdpb24gZ2V0UmVn
aW9uQnlJZChET01TdHJpbmcgaWQpOwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
aHRtbC90cmFjay9WaWRlb1RyYWNrTGlzdC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNr
L1ZpZGVvVHJhY2tMaXN0LmlkbAppbmRleCBlMjhkODc3Li45MDJmNTE2IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1ZpZGVvVHJhY2tMaXN0LmlkbAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL3RyYWNrL1ZpZGVvVHJhY2tMaXN0LmlkbApAQCAtMjcsMTIgKzI3LDExIEBA
CiAgICAgTm9JbnRlcmZhY2VPYmplY3QsCiAgICAgQ29uZGl0aW9uYWw9VklERU9fVFJBQ0ssCiAg
ICAgR2VuZXJhdGVJc1JlYWNoYWJsZT1JbXBsRWxlbWVudFJvb3QsCi0gICAgSW5kZXhlZEdldHRl
ciwKICAgICBFdmVudFRhcmdldCwKICAgICBKU0N1c3RvbU1hcmtGdW5jdGlvbgogXSBpbnRlcmZh
Y2UgVmlkZW9UcmFja0xpc3QgewogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25n
IGxlbmd0aDsKLSAgICBWaWRlb1RyYWNrIGl0ZW0odW5zaWduZWQgbG9uZyBpbmRleCk7CisgICAg
Z2V0dGVyIFZpZGVvVHJhY2sgaXRlbSh1bnNpZ25lZCBsb25nIGluZGV4KTsKICAgICBWaWRlb1Ry
YWNrIGdldFRyYWNrQnlJZChET01TdHJpbmcgaWQpOwogCiAgICAgYXR0cmlidXRlIEV2ZW50TGlz
dGVuZXIgb25jaGFuZ2U7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1h
bmNlRW50cnlMaXN0LmlkbCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeUxp
c3QuaWRsCmluZGV4IGFiNzBiNzQuLjRkYzllYmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvUGVyZm9ybWFuY2VFbnRyeUxpc3QuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
UGVyZm9ybWFuY2VFbnRyeUxpc3QuaWRsCkBAIC0zMywxMCArMzMsOSBAQAogICAgIE5vSW50ZXJm
YWNlT2JqZWN0LAogICAgIENvbmRpdGlvbmFsPVdFQl9USU1JTkcsCiAgICAgQ29uZGl0aW9uYWw9
UEVSRk9STUFOQ0VfVElNRUxJTkUsCi0gICAgSW5kZXhlZEdldHRlciwKICAgICBJbXBsZW1lbnRh
dGlvbkxhY2tzVlRhYmxlCiBdIGludGVyZmFjZSBQZXJmb3JtYW5jZUVudHJ5TGlzdCB7CiAgICAg
cmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgbGVuZ3RoOwotICAgIFBlcmZvcm1hbmNl
RW50cnkgaXRlbSh1bnNpZ25lZCBsb25nIGluZGV4KTsKKyAgICBnZXR0ZXIgUGVyZm9ybWFuY2VF
bnRyeSBpdGVtKHVuc2lnbmVkIGxvbmcgaW5kZXgpOwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGFnZS9TcGVlY2hJbnB1dFJlc3VsdExpc3QuaWRsIGIvU291cmNlL1dlYkNvcmUv
cGFnZS9TcGVlY2hJbnB1dFJlc3VsdExpc3QuaWRsCmluZGV4IGY5ZGNmMzQuLjRjZjI5ZWEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU3BlZWNoSW5wdXRSZXN1bHRMaXN0LmlkbAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NwZWVjaElucHV0UmVzdWx0TGlzdC5pZGwKQEAgLTI1
LDExICsyNSwxMCBAQAogCiBbCiAgICAgTm9JbnRlcmZhY2VPYmplY3QsCi0gICAgSW5kZXhlZEdl
dHRlciwKICAgICBDb25kaXRpb25hbD1JTlBVVF9TUEVFQ0gsCiAgICAgSW1wbGVtZW50YXRpb25M
YWNrc1ZUYWJsZQogXSBpbnRlcmZhY2UgU3BlZWNoSW5wdXRSZXN1bHRMaXN0IHsKICAgICByZWFk
b25seSBhdHRyaWJ1dGUgdW5zaWduZWQgbG9uZyBsZW5ndGg7Ci0gICAgU3BlZWNoSW5wdXRSZXN1
bHQgaXRlbShbSXNJbmRleF0gdW5zaWduZWQgbG9uZyBpbmRleCk7CisgICAgZ2V0dGVyIFNwZWVj
aElucHV0UmVzdWx0IGl0ZW0oW0lzSW5kZXhdIHVuc2lnbmVkIGxvbmcgaW5kZXgpOwogfTsKIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGx1Z2lucy9ET01NaW1lVHlwZUFycmF5LmlkbCBi
L1NvdXJjZS9XZWJDb3JlL3BsdWdpbnMvRE9NTWltZVR5cGVBcnJheS5pZGwKaW5kZXggNDY2NzM0
NC4uOWNlNTJiNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGx1Z2lucy9ET01NaW1lVHlw
ZUFycmF5LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbHVnaW5zL0RPTU1pbWVUeXBlQXJyYXku
aWRsCkBAIC0yMCwxMSArMjAsMTAgQEAKIAogWwogICAgIEdlbmVyYXRlSXNSZWFjaGFibGU9SW1w
bEZyYW1lLAotICAgIEluZGV4ZWRHZXR0ZXIsCiAgICAgSW50ZXJmYWNlTmFtZT1NaW1lVHlwZUFy
cmF5CiBdIGludGVyZmFjZSBET01NaW1lVHlwZUFycmF5IHsKICAgICByZWFkb25seSBhdHRyaWJ1
dGUgdW5zaWduZWQgbG9uZyBsZW5ndGg7Ci0gICAgRE9NTWltZVR5cGUgaXRlbShbRGVmYXVsdD1V
bmRlZmluZWRdIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcgaW5kZXgpOworICAgIGdldHRlciBET01N
aW1lVHlwZSBpdGVtKFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgdW5zaWduZWQgbG9uZyBp
bmRleCk7CiAgICAgZ2V0dGVyIERPTU1pbWVUeXBlIG5hbWVkSXRlbShbRGVmYXVsdD1VbmRlZmlu
ZWRdIG9wdGlvbmFsIERPTVN0cmluZyBuYW1lKTsKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsdWdpbnMvRE9NUGx1Z2luLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3BsdWdpbnMvRE9N
UGx1Z2luLmlkbAppbmRleCBmNGFjNDVjLi4wOGU0YTg0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbHVnaW5zL0RPTVBsdWdpbi5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvcGx1Z2lucy9E
T01QbHVnaW4uaWRsCkBAIC0xOSwxNCArMTksMTMgQEAKICovCiAKIFsKLSAgICBJbmRleGVkR2V0
dGVyLAogICAgIEludGVyZmFjZU5hbWU9UGx1Z2luCiBdIGludGVyZmFjZSBET01QbHVnaW4gewog
ICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBET01TdHJpbmcgbmFtZTsKICAgICByZWFkb25seSBhdHRy
aWJ1dGUgRE9NU3RyaW5nIGZpbGVuYW1lOwogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBET01TdHJp
bmcgZGVzY3JpcHRpb247CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgbGVu
Z3RoOwotICAgIERPTU1pbWVUeXBlIGl0ZW0oW0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRpb25hbCB1
bnNpZ25lZCBsb25nIGluZGV4KTsKKyAgICBnZXR0ZXIgRE9NTWltZVR5cGUgaXRlbShbRGVmYXVs
dD1VbmRlZmluZWRdIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcgaW5kZXgpOwogICAgIGdldHRlciBE
T01NaW1lVHlwZSBuYW1lZEl0ZW0oW0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRpb25hbCBET01TdHJp
bmcgbmFtZSk7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbHVnaW5zL0RPTVBs
dWdpbkFycmF5LmlkbCBiL1NvdXJjZS9XZWJDb3JlL3BsdWdpbnMvRE9NUGx1Z2luQXJyYXkuaWRs
CmluZGV4IGI1YTBmYTMuLjRiM2E0YWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsdWdp
bnMvRE9NUGx1Z2luQXJyYXkuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsdWdpbnMvRE9NUGx1
Z2luQXJyYXkuaWRsCkBAIC0yMCwxMSArMjAsMTAgQEAKIAogWwogICAgIEdlbmVyYXRlSXNSZWFj
aGFibGU9SW1wbEZyYW1lLAotICAgIEluZGV4ZWRHZXR0ZXIsCiAgICAgSW50ZXJmYWNlTmFtZT1Q
bHVnaW5BcnJheQogXSBpbnRlcmZhY2UgRE9NUGx1Z2luQXJyYXkgewogICAgIHJlYWRvbmx5IGF0
dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGxlbmd0aDsKLSAgICBET01QbHVnaW4gaXRlbShbRGVmYXVs
dD1VbmRlZmluZWRdIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcgaW5kZXgpOworICAgIGdldHRlciBE
T01QbHVnaW4gaXRlbShbRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcg
aW5kZXgpOwogICAgIGdldHRlciBET01QbHVnaW4gbmFtZWRJdGVtKFtEZWZhdWx0PVVuZGVmaW5l
ZF0gb3B0aW9uYWwgRE9NU3RyaW5nIG5hbWUpOwogICAgIHZvaWQgcmVmcmVzaChbRGVmYXVsdD1V
bmRlZmluZWRdIG9wdGlvbmFsIGJvb2xlYW4gcmVsb2FkKTsKIH07Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>204431</attachid>
            <date>2013-06-12 06:21:39 -0700</date>
            <delta_ts>2013-06-12 07:41:31 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>117507_IndexedGetter.patch</filename>
            <type>text/plain</type>
            <size>54980</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBjOTk0OTcwLi40ZjlhNzk5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDUgKzEsODgg
QEAKIDIwMTMtMDYtMTIgIENocmlzdG9waGUgRHVtZXogIDxjaC5kdW1lekBzaXNhLnNhbXN1bmcu
Y29tPgogCisgICAgICAgIFN1cHBvcnQgbGF0ZXN0IFdlYiBJREwgaW5kZXhlZCBwcm9wZXJ0eSBn
ZXR0ZXJzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
MTc1MDcKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBT
dXBwb3J0IGxhdGVzdCBXZWIgSURMIGluZGV4ZWQgcHJvcGVydHkgZ2V0dGVyczoKKyAgICAgICAg
aHR0cDovL3d3dy53My5vcmcvVFIvV2ViSURMLyNkZm4tc3VwcG9ydC1pbmRleGVkLXByb3BlcnRp
ZXMKKworICAgICAgICBEcm9wIHN1cHBvcnQgZm9yIG91dGRhdGVkIFtJbmRleGVkR2V0dGVyXSBh
bmQgW051bWVyaWNJbmRleGVkR2V0dGVyXQorICAgICAgICBJREwgZXh0ZW5kZWQgYXR0cmlidXRl
cy4gU2luY2UgdGhlIG5ldyBnZXR0ZXIgZm9ybWF0IHNwZWNpZmllcyB0aGUKKyAgICAgICAgcmV0
dXJuIHR5cGUsIHRoZSBiaW5kaW5ncyBnZW5lcmF0b3IgaXMgbm93IHNtYXJ0IGVub3VnaCB0byBr
bm93IGlmCisgICAgICAgIHRoZSBpbmRleGVkIGdldHRlciBpcyBudW1lcmljIG9yIG5vdCBvbiBp
dHMgb3duLgorCisgICAgICAgIEJhc2VkIG9uIEJsaW5rIHIxNDk1NjQgYnkgPGtvamloQGNocm9t
aXVtLm9yZz4uCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLCBubyBiZWhhdmlvciBjaGFuZ2UuCisK
KyAgICAgICAgKiBNb2R1bGVzL2ZpbGVzeXN0ZW0vRW50cnlBcnJheS5pZGw6CisgICAgICAgICog
TW9kdWxlcy9maWxlc3lzdGVtL0VudHJ5QXJyYXlTeW5jLmlkbDoKKyAgICAgICAgKiBNb2R1bGVz
L2dhbWVwYWQvR2FtZXBhZExpc3QuaWRsOgorICAgICAgICAqIE1vZHVsZXMvbWVkaWFzb3VyY2Uv
U291cmNlQnVmZmVyTGlzdC5pZGw6CisgICAgICAgICogTW9kdWxlcy9zcGVlY2gvU3BlZWNoR3Jh
bW1hckxpc3QuaWRsOgorICAgICAgICAqIE1vZHVsZXMvc3BlZWNoL1NwZWVjaFJlY29nbml0aW9u
UmVzdWx0LmlkbDoKKyAgICAgICAgKiBNb2R1bGVzL3NwZWVjaC9TcGVlY2hSZWNvZ25pdGlvblJl
c3VsdExpc3QuaWRsOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvci5w
bToKKyAgICAgICAgKElzTnVtZXJpY1R5cGUpOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMv
Q29kZUdlbmVyYXRvckpTLnBtOgorICAgICAgICAoR2VuZXJhdGVHZXRPd25Qcm9wZXJ0eVNsb3RC
b2R5KToKKyAgICAgICAgKEdlbmVyYXRlR2V0T3duUHJvcGVydHlEZXNjcmlwdG9yQm9keSk6Cisg
ICAgICAgIChHZXRJbmRleGVkR2V0dGVyRnVuY3Rpb24pOgorICAgICAgICAoR2VuZXJhdGVIZWFk
ZXIpOgorICAgICAgICAoR2VuZXJhdGVJbXBsZW1lbnRhdGlvbik6CisgICAgICAgICogYmluZGlu
Z3Mvc2NyaXB0cy9JRExBdHRyaWJ1dGVzLnR4dDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvVGVzdEV2ZW50VGFyZ2V0LmlkbDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvVGVzdFR5cGVkQXJyYXkuaWRsOgorICAgICAgICAqIGNzcy9DU1NSdWxlTGlzdC5pZGw6Cisg
ICAgICAgICogY3NzL0NTU1N0eWxlRGVjbGFyYXRpb24uaWRsOgorICAgICAgICAqIGNzcy9DU1NW
YWx1ZUxpc3QuaWRsOgorICAgICAgICAqIGNzcy9NZWRpYUxpc3QuaWRsOgorICAgICAgICAqIGNz
cy9TdHlsZVNoZWV0TGlzdC5pZGw6CisgICAgICAgICogY3NzL1dlYktpdENTU0ZpbHRlclZhbHVl
LmlkbDoKKyAgICAgICAgKiBjc3MvV2ViS2l0Q1NTS2V5ZnJhbWVzUnVsZS5pZGw6CisgICAgICAg
ICogY3NzL1dlYktpdENTU1RyYW5zZm9ybVZhbHVlLmlkbDoKKyAgICAgICAgKiBkb20vQ2xpZW50
UmVjdExpc3QuaWRsOgorICAgICAgICAqIGRvbS9ET01OYW1lZEZsb3dDb2xsZWN0aW9uLmlkbDoK
KyAgICAgICAgKiBkb20vRE9NU3RyaW5nTGlzdC5pZGw6CisgICAgICAgICogZG9tL0RhdGFUcmFu
c2Zlckl0ZW1MaXN0LmlkbDoKKyAgICAgICAgKiBkb20vTmFtZWROb2RlTWFwLmlkbDoKKyAgICAg
ICAgKiBkb20vTm9kZUxpc3QuaWRsOgorICAgICAgICAqIGRvbS9Qcm9wZXJ0eU5vZGVMaXN0Lmlk
bDoKKyAgICAgICAgKiBkb20vVG91Y2hMaXN0LmlkbDoKKyAgICAgICAgKiBmaWxlYXBpL0ZpbGVM
aXN0LmlkbDoKKyAgICAgICAgKiBodG1sL0RPTVNldHRhYmxlVG9rZW5MaXN0LmlkbDoKKyAgICAg
ICAgKiBodG1sL0RPTVRva2VuTGlzdC5pZGw6CisgICAgICAgICogaHRtbC9IVE1MQWxsQ29sbGVj
dGlvbi5pZGw6CisgICAgICAgICogaHRtbC9IVE1MQ29sbGVjdGlvbi5pZGw6CisgICAgICAgICog
aHRtbC9IVE1MRm9ybUNvbnRyb2xzQ29sbGVjdGlvbi5pZGw6CisgICAgICAgICogaHRtbC9IVE1M
Rm9ybUVsZW1lbnQuaWRsOgorICAgICAgICAqIGh0bWwvSFRNTFByb3BlcnRpZXNDb2xsZWN0aW9u
LmlkbDoKKyAgICAgICAgKiBodG1sL0hUTUxTZWxlY3RFbGVtZW50LmlkbDoKKyAgICAgICAgKiBo
dG1sL1JhZGlvTm9kZUxpc3QuaWRsOgorICAgICAgICAqIGh0bWwvY2FudmFzL0Zsb2F0MzJBcnJh
eS5pZGw6CisgICAgICAgICogaHRtbC9jYW52YXMvRmxvYXQ2NEFycmF5LmlkbDoKKyAgICAgICAg
KiBodG1sL2NhbnZhcy9JbnQxNkFycmF5LmlkbDoKKyAgICAgICAgKiBodG1sL2NhbnZhcy9JbnQz
MkFycmF5LmlkbDoKKyAgICAgICAgKiBodG1sL2NhbnZhcy9JbnQ4QXJyYXkuaWRsOgorICAgICAg
ICAqIGh0bWwvY2FudmFzL1VpbnQxNkFycmF5LmlkbDoKKyAgICAgICAgKiBodG1sL2NhbnZhcy9V
aW50MzJBcnJheS5pZGw6CisgICAgICAgICogaHRtbC9jYW52YXMvVWludDhBcnJheS5pZGw6Cisg
ICAgICAgICogaHRtbC9jYW52YXMvVWludDhDbGFtcGVkQXJyYXkuaWRsOgorICAgICAgICAqIGh0
bWwvdHJhY2svQXVkaW9UcmFja0xpc3QuaWRsOgorICAgICAgICAqIGh0bWwvdHJhY2svVGV4dFRy
YWNrQ3VlTGlzdC5pZGw6CisgICAgICAgICogaHRtbC90cmFjay9UZXh0VHJhY2tMaXN0LmlkbDoK
KyAgICAgICAgKiBodG1sL3RyYWNrL1RleHRUcmFja1JlZ2lvbkxpc3QuaWRsOgorICAgICAgICAq
IGh0bWwvdHJhY2svVmlkZW9UcmFja0xpc3QuaWRsOgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFu
Y2VFbnRyeUxpc3QuaWRsOgorICAgICAgICAqIHBhZ2UvU3BlZWNoSW5wdXRSZXN1bHRMaXN0Lmlk
bDoKKyAgICAgICAgKiBwbHVnaW5zL0RPTU1pbWVUeXBlQXJyYXkuaWRsOgorICAgICAgICAqIHBs
dWdpbnMvRE9NUGx1Z2luLmlkbDoKKyAgICAgICAgKiBwbHVnaW5zL0RPTVBsdWdpbkFycmF5Lmlk
bDoKKworMjAxMy0wNi0xMiAgQ2hyaXN0b3BoZSBEdW1leiAgPGNoLmR1bWV6QHNpc2Euc2Ftc3Vu
Zy5jb20+CisKICAgICAgICAgUmVuYW1lIFtDYWxsV2l0aF0gdG8gW0NvbnN0cnVjdG9yQ2FsbFdp
dGhdIGZvciBJREwgaW50ZXJmYWNlcwogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTE3NTMxCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvZmlsZXN5c3RlbS9FbnRyeUFycmF5LmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmls
ZXN5c3RlbS9FbnRyeUFycmF5LmlkbAppbmRleCBhZjg3OTE5Li44MDI5Y2IyIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW0vRW50cnlBcnJheS5pZGwKKysrIGIv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtL0VudHJ5QXJyYXkuaWRsCkBAIC0zMSwx
MCArMzEsOSBAQAogWwogICAgIE5vSW50ZXJmYWNlT2JqZWN0LAogICAgIENvbmRpdGlvbmFsPUZJ
TEVfU1lTVEVNLAotICAgIEluZGV4ZWRHZXR0ZXIsCiAgICAgSlNOb1N0YXRpY1RhYmxlcywKICAg
ICBJbXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxlCiBdIGludGVyZmFjZSBFbnRyeUFycmF5IHsKICAg
ICByZWFkb25seSBhdHRyaWJ1dGUgdW5zaWduZWQgbG9uZyBsZW5ndGg7Ci0gICAgRW50cnkgaXRl
bShbSXNJbmRleF0gdW5zaWduZWQgbG9uZyBpbmRleCk7CisgICAgZ2V0dGVyIEVudHJ5IGl0ZW0o
W0lzSW5kZXhdIHVuc2lnbmVkIGxvbmcgaW5kZXgpOwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbS9FbnRyeUFycmF5U3luYy5pZGwgYi9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW0vRW50cnlBcnJheVN5bmMuaWRsCmluZGV4IGIxMjE3MTAu
LmVkNjU1OTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbS9F
bnRyeUFycmF5U3luYy5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVt
L0VudHJ5QXJyYXlTeW5jLmlkbApAQCAtMzEsMTAgKzMxLDkgQEAKIFsKICAgICBOb0ludGVyZmFj
ZU9iamVjdCwKICAgICBDb25kaXRpb25hbD1GSUxFX1NZU1RFTSwKLSAgICBJbmRleGVkR2V0dGVy
LAogICAgIEpTTm9TdGF0aWNUYWJsZXMsCiAgICAgSW1wbGVtZW50YXRpb25MYWNrc1ZUYWJsZQog
XSBpbnRlcmZhY2UgRW50cnlBcnJheVN5bmMgewogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNp
Z25lZCBsb25nIGxlbmd0aDsKLSAgICBFbnRyeVN5bmMgaXRlbShbSXNJbmRleF0gdW5zaWduZWQg
bG9uZyBpbmRleCk7CisgICAgZ2V0dGVyIEVudHJ5U3luYyBpdGVtKFtJc0luZGV4XSB1bnNpZ25l
ZCBsb25nIGluZGV4KTsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2dh
bWVwYWQvR2FtZXBhZExpc3QuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9nYW1lcGFkL0dh
bWVwYWRMaXN0LmlkbAppbmRleCBiZmJmMmEwLi4yODkzNWJhIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2dhbWVwYWQvR2FtZXBhZExpc3QuaWRsCisrKyBiL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvZ2FtZXBhZC9HYW1lcGFkTGlzdC5pZGwKQEAgLTI2LDEwICsyNiw5IEBACiBb
CiAgICAgTm9JbnRlcmZhY2VPYmplY3QsCiAgICAgQ29uZGl0aW9uYWw9R0FNRVBBRCwKLSAgICBJ
bmRleGVkR2V0dGVyLAogICAgIEltcGxlbWVudGF0aW9uTGFja3NWVGFibGUKIF0gaW50ZXJmYWNl
IEdhbWVwYWRMaXN0IHsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgdW5zaWduZWQgbG9uZyBsZW5n
dGg7Ci0gICAgR2FtZXBhZCBpdGVtKFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgdW5zaWdu
ZWQgbG9uZyBpbmRleCk7CisgICAgZ2V0dGVyIEdhbWVwYWQgaXRlbShbRGVmYXVsdD1VbmRlZmlu
ZWRdIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcgaW5kZXgpOwogfTsKIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXNvdXJjZS9Tb3VyY2VCdWZmZXJMaXN0LmlkbCBiL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzb3VyY2UvU291cmNlQnVmZmVyTGlzdC5pZGwKaW5k
ZXggMDQxMzJkYy4uNWIxNGFkOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9t
ZWRpYXNvdXJjZS9Tb3VyY2VCdWZmZXJMaXN0LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL21lZGlhc291cmNlL1NvdXJjZUJ1ZmZlckxpc3QuaWRsCkBAIC0zMCwxMiArMzAsMTEgQEAK
ICAKIFsKICAgICBDb25kaXRpb25hbD1NRURJQV9TT1VSQ0UsCi0gICAgSW5kZXhlZEdldHRlciwK
ICAgICBFdmVudFRhcmdldCwKICAgICBJbnRlcmZhY2VOYW1lPVdlYktpdFNvdXJjZUJ1ZmZlckxp
c3QKIF0gaW50ZXJmYWNlIFNvdXJjZUJ1ZmZlckxpc3QgewogICAgIHJlYWRvbmx5IGF0dHJpYnV0
ZSB1bnNpZ25lZCBsb25nIGxlbmd0aDsKLSAgICBTb3VyY2VCdWZmZXIgaXRlbSh1bnNpZ25lZCBs
b25nIGluZGV4KTsKKyAgICBnZXR0ZXIgU291cmNlQnVmZmVyIGl0ZW0odW5zaWduZWQgbG9uZyBp
bmRleCk7CiAKICAgICAvLyBFdmVudFRhcmdldCBpbnRlcmZhY2UKICAgICB2b2lkIGFkZEV2ZW50
TGlzdGVuZXIoRE9NU3RyaW5nIHR5cGUsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL3NwZWVjaC9TcGVlY2hHcmFtbWFyTGlzdC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L3NwZWVjaC9TcGVlY2hHcmFtbWFyTGlzdC5pZGwKaW5kZXggZDM4YmI0YS4uZTMzMzYwYiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zcGVlY2gvU3BlZWNoR3JhbW1hckxpc3Qu
aWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3BlZWNoL1NwZWVjaEdyYW1tYXJMaXN0
LmlkbApAQCAtMjUsMTMgKzI1LDEyIEBACiAKIFsKICAgICBDb25kaXRpb25hbD1TQ1JJUFRFRF9T
UEVFQ0gsCi0gICAgSW5kZXhlZEdldHRlciwKICAgICBDb25zdHJ1Y3RvciwKICAgICBJbXBsZW1l
bnRhdGlvbkxhY2tzVlRhYmxlLAogICAgIEludGVyZmFjZU5hbWU9d2Via2l0U3BlZWNoR3JhbW1h
ckxpc3QKIF0gaW50ZXJmYWNlIFNwZWVjaEdyYW1tYXJMaXN0IHsKICAgICByZWFkb25seSBhdHRy
aWJ1dGUgdW5zaWduZWQgbG9uZyBsZW5ndGg7Ci0gICAgU3BlZWNoR3JhbW1hciBpdGVtKFtJc0lu
ZGV4XSB1bnNpZ25lZCBsb25nIGluZGV4KTsKKyAgICBnZXR0ZXIgU3BlZWNoR3JhbW1hciBpdGVt
KFtJc0luZGV4XSB1bnNpZ25lZCBsb25nIGluZGV4KTsKICAgICBbQ2FsbFdpdGg9U2NyaXB0RXhl
Y3V0aW9uQ29udGV4dF0gdm9pZCBhZGRGcm9tVXJpKERPTVN0cmluZyBzcmMsIG9wdGlvbmFsIGZs
b2F0IHdlaWdodCk7CiAgICAgdm9pZCBhZGRGcm9tU3RyaW5nKERPTVN0cmluZyBzdHJpbmcsIG9w
dGlvbmFsIGZsb2F0IHdlaWdodCk7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9zcGVlY2gvU3BlZWNoUmVjb2duaXRpb25SZXN1bHQuaWRsIGIvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9zcGVlY2gvU3BlZWNoUmVjb2duaXRpb25SZXN1bHQuaWRsCmluZGV4IDMzMDJjOTUu
LmNjNzIxM2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3BlZWNoL1NwZWVj
aFJlY29nbml0aW9uUmVzdWx0LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3NwZWVj
aC9TcGVlY2hSZWNvZ25pdGlvblJlc3VsdC5pZGwKQEAgLTI2LDEwICsyNiw5IEBACiBbCiAgICAg
Tm9JbnRlcmZhY2VPYmplY3QsCiAgICAgQ29uZGl0aW9uYWw9U0NSSVBURURfU1BFRUNILAotICAg
IEluZGV4ZWRHZXR0ZXIsCiAgICAgSW1wbGVtZW50YXRpb25MYWNrc1ZUYWJsZQogXSBpbnRlcmZh
Y2UgU3BlZWNoUmVjb2duaXRpb25SZXN1bHQgewogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNp
Z25lZCBsb25nIGxlbmd0aDsKLSAgICBTcGVlY2hSZWNvZ25pdGlvbkFsdGVybmF0aXZlIGl0ZW0o
W0lzSW5kZXhdIHVuc2lnbmVkIGxvbmcgaW5kZXgpOworICAgIGdldHRlciBTcGVlY2hSZWNvZ25p
dGlvbkFsdGVybmF0aXZlIGl0ZW0oW0lzSW5kZXhdIHVuc2lnbmVkIGxvbmcgaW5kZXgpOwogICAg
IHJlYWRvbmx5IGF0dHJpYnV0ZSBib29sZWFuIGlzRmluYWw7CiB9OwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9zcGVlY2gvU3BlZWNoUmVjb2duaXRpb25SZXN1bHRMaXN0Lmlk
bCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3BlZWNoL1NwZWVjaFJlY29nbml0aW9uUmVzdWx0
TGlzdC5pZGwKaW5kZXggMTY1NGZiNC4uNDYzNTY1MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9zcGVlY2gvU3BlZWNoUmVjb2duaXRpb25SZXN1bHRMaXN0LmlkbAorKysgYi9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3NwZWVjaC9TcGVlY2hSZWNvZ25pdGlvblJlc3VsdExpc3Qu
aWRsCkBAIC0yNiw5ICsyNiw4IEBACiBbCiAgICAgTm9JbnRlcmZhY2VPYmplY3QsCiAgICAgQ29u
ZGl0aW9uYWw9U0NSSVBURURfU1BFRUNILAotICAgIEluZGV4ZWRHZXR0ZXIsCiAgICAgSW1wbGVt
ZW50YXRpb25MYWNrc1ZUYWJsZQogXSBpbnRlcmZhY2UgU3BlZWNoUmVjb2duaXRpb25SZXN1bHRM
aXN0IHsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgdW5zaWduZWQgbG9uZyBsZW5ndGg7Ci0gICAg
U3BlZWNoUmVjb2duaXRpb25SZXN1bHQgaXRlbShbSXNJbmRleF0gdW5zaWduZWQgbG9uZyBpbmRl
eCk7CisgICAgZ2V0dGVyIFNwZWVjaFJlY29nbml0aW9uUmVzdWx0IGl0ZW0oW0lzSW5kZXhdIHVu
c2lnbmVkIGxvbmcgaW5kZXgpOwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvci5wbSBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvQ29kZUdlbmVyYXRvci5wbQppbmRleCAzZGYzZTQwLi45YmM4MzEzIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3IucG0KKysrIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yLnBtCkBAIC00OCw3
ICs0OCw4IEBAIG15ICR2ZXJib3NlID0gMDsKIG15ICVudW1lcmljVHlwZUhhc2ggPSAoImludCIg
PT4gMSwgInNob3J0IiA9PiAxLCAibG9uZyIgPT4gMSwgImxvbmcgbG9uZyIgPT4gMSwKICAgICAg
ICAgICAgICAgICAgICAgICAgInVuc2lnbmVkIGludCIgPT4gMSwgInVuc2lnbmVkIHNob3J0IiA9
PiAxLAogICAgICAgICAgICAgICAgICAgICAgICAidW5zaWduZWQgbG9uZyIgPT4gMSwgInVuc2ln
bmVkIGxvbmcgbG9uZyIgPT4gMSwKLSAgICAgICAgICAgICAgICAgICAgICAgImZsb2F0IiA9PiAx
LCAiZG91YmxlIiA9PiAxKTsKKyAgICAgICAgICAgICAgICAgICAgICAgImZsb2F0IiA9PiAxLCAi
ZG91YmxlIiA9PiAxLCAiYnl0ZSIgPT4gMSwKKyAgICAgICAgICAgICAgICAgICAgICAgIm9jdGV0
IiA9PiAxKTsKIAogbXkgJXByaW1pdGl2ZVR5cGVIYXNoID0gKCAiYm9vbGVhbiIgPT4gMSwgInZv
aWQiID0+IDEsICJEYXRlIiA9PiAxKTsKIApAQCAtMzQ4LDYgKzM0OSwxNSBAQCBzdWIgSXNDb25z
dHJ1Y3RvclRlbXBsYXRlCiAgICAgcmV0dXJuICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRl
cy0+eyJDb25zdHJ1Y3RvclRlbXBsYXRlIn0gJiYgJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1
dGVzLT57IkNvbnN0cnVjdG9yVGVtcGxhdGUifSBlcSAkdGVtcGxhdGU7CiB9CiAKK3N1YiBJc051
bWVyaWNUeXBlCit7CisgICAgbXkgJG9iamVjdCA9IHNoaWZ0OworICAgIG15ICR0eXBlID0gc2hp
ZnQ7CisKKyAgICByZXR1cm4gMSBpZiAkbnVtZXJpY1R5cGVIYXNoeyR0eXBlfTsKKyAgICByZXR1
cm4gMDsKK30KKwogc3ViIElzUHJpbWl0aXZlVHlwZQogewogICAgIG15ICRvYmplY3QgPSBzaGlm
dDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVy
YXRvckpTLnBtIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9y
SlMucG0KaW5kZXggNWI1MTAwYi4uMWYzM2MyMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0KKysrIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0KQEAgLTM1Myw2ICszNTMsOCBAQCBz
dWIgR2VuZXJhdGVHZXRPd25Qcm9wZXJ0eVNsb3RCb2R5CiAKICAgICBteSAkbmFtZXNwYWNlTWF5
YmUgPSAoJGlubGluZWQgPyAiSlNDOjoiIDogIiIpOwogICAgIG15ICRuYW1lZEdldHRlckZ1bmN0
aW9uID0gR2V0TmFtZWRHZXR0ZXJGdW5jdGlvbigkaW50ZXJmYWNlKTsKKyAgICBteSAkaW5kZXhl
ZEdldHRlckZ1bmN0aW9uID0gR2V0SW5kZXhlZEdldHRlckZ1bmN0aW9uKCRpbnRlcmZhY2UpOwor
ICAgIG15ICRoYXNOdW1lcmljSW5kZXhlZEdldHRlciA9ICRpbmRleGVkR2V0dGVyRnVuY3Rpb24g
PyAkY29kZUdlbmVyYXRvci0+SXNOdW1lcmljVHlwZSgkaW5kZXhlZEdldHRlckZ1bmN0aW9uLT5z
aWduYXR1cmUtPnR5cGUpIDogMDsKIAogICAgIG15IEBnZXRPd25Qcm9wZXJ0eVNsb3RJbXBsID0g
KCk7CiAKQEAgLTM2Myw3ICszNjUsNyBAQCBzdWIgR2VuZXJhdGVHZXRPd25Qcm9wZXJ0eVNsb3RC
b2R5CiAgICAgfQogCiAgICAgbXkgJG1hbnVhbExvb2t1cEdldHRlckdlbmVyYXRpb24gPSBzdWIg
ewotICAgICAgICBteSAkcmVxdWlyZXNNYW51YWxMb29rdXAgPSAkaW50ZXJmYWNlLT5leHRlbmRl
ZEF0dHJpYnV0ZXMtPnsiSW5kZXhlZEdldHRlciJ9IHx8ICRuYW1lZEdldHRlckZ1bmN0aW9uOwor
ICAgICAgICBteSAkcmVxdWlyZXNNYW51YWxMb29rdXAgPSAoJGluZGV4ZWRHZXR0ZXJGdW5jdGlv
biAmJiAhJGhhc051bWVyaWNJbmRleGVkR2V0dGVyKSB8fCAkbmFtZWRHZXR0ZXJGdW5jdGlvbjsK
ICAgICAgICAgaWYgKCRyZXF1aXJlc01hbnVhbExvb2t1cCkgewogICAgICAgICAgICAgcHVzaChA
Z2V0T3duUHJvcGVydHlTbG90SW1wbCwgIiAgICBjb25zdCAke25hbWVzcGFjZU1heWJlfUhhc2hF
bnRyeSogZW50cnkgPSBnZXRTdGF0aWNWYWx1ZVNsb3RFbnRyeVdpdGhvdXRDYWNoaW5nPCRjbGFz
c05hbWU+KGV4ZWMsIHByb3BlcnR5TmFtZSk7XG4iKTsKICAgICAgICAgICAgIHB1c2goQGdldE93
blByb3BlcnR5U2xvdEltcGwsICIgICAgaWYgKGVudHJ5KSB7XG4iKTsKQEAgLTM3Nyw3ICszNzks
NyBAQCBzdWIgR2VuZXJhdGVHZXRPd25Qcm9wZXJ0eVNsb3RCb2R5CiAgICAgICAgICYkbWFudWFs
TG9va3VwR2V0dGVyR2VuZXJhdGlvbigpOwogICAgIH0KIAotICAgIGlmICgkaW50ZXJmYWNlLT5l
eHRlbmRlZEF0dHJpYnV0ZXMtPnsiSW5kZXhlZEdldHRlciJ9IHx8ICRpbnRlcmZhY2UtPmV4dGVu
ZGVkQXR0cmlidXRlcy0+eyJOdW1lcmljSW5kZXhlZEdldHRlciJ9KSB7CisgICAgaWYgKCRpbmRl
eGVkR2V0dGVyRnVuY3Rpb24pIHsKICAgICAgICAgcHVzaChAZ2V0T3duUHJvcGVydHlTbG90SW1w
bCwgIiAgICB1bnNpZ25lZCBpbmRleCA9IHByb3BlcnR5TmFtZS5hc0luZGV4KCk7XG4iKTsKIAog
ICAgICAgICAjIElmIHRoZSBpdGVtIGZ1bmN0aW9uIHJldHVybnMgYSBzdHJpbmcgdGhlbiB3ZSBs
ZXQgdGhlIFRyZWF0UmV0dXJuZWROdWxsU3RyaW5nQXMgaGFuZGxlIHRoZSBjYXNlcwpAQCAtMzg3
LDcgKzM4OSw3IEBAIHN1YiBHZW5lcmF0ZUdldE93blByb3BlcnR5U2xvdEJvZHkKICAgICAgICAg
fSBlbHNlIHsKICAgICAgICAgICAgIHB1c2goQGdldE93blByb3BlcnR5U2xvdEltcGwsICIgICAg
aWYgKGluZGV4ICE9IFByb3BlcnR5TmFtZTo6Tm90QW5JbmRleCAmJiBpbmRleCA8IHN0YXRpY19j
YXN0PCRpbnRlcmZhY2VOYW1lKj4odGhpc09iamVjdC0+aW1wbCgpKS0+bGVuZ3RoKCkpIHtcbiIp
OwogICAgICAgICB9Ci0gICAgICAgIGlmICgkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMt
PnsiTnVtZXJpY0luZGV4ZWRHZXR0ZXIifSkgeworICAgICAgICBpZiAoJGhhc051bWVyaWNJbmRl
eGVkR2V0dGVyKSB7CiAgICAgICAgICAgICBwdXNoKEBnZXRPd25Qcm9wZXJ0eVNsb3RJbXBsLCAi
ICAgICAgICBzbG90LnNldFZhbHVlKHRoaXNPYmplY3QtPmdldEJ5SW5kZXgoZXhlYywgaW5kZXgp
KTtcbiIpOwogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgcHVzaChAZ2V0T3duUHJvcGVy
dHlTbG90SW1wbCwgIiAgICAgICAgc2xvdC5zZXRDdXN0b21JbmRleCh0aGlzT2JqZWN0LCBpbmRl
eCwgaW5kZXhHZXR0ZXIpO1xuIik7CkBAIC00MzcsNiArNDM5LDkgQEAgc3ViIEdlbmVyYXRlR2V0
T3duUHJvcGVydHlEZXNjcmlwdG9yQm9keQogICAgIAogICAgIG15ICRuYW1lc3BhY2VNYXliZSA9
ICgkaW5saW5lZCA/ICJKU0M6OiIgOiAiIik7CiAgICAgbXkgJG5hbWVkR2V0dGVyRnVuY3Rpb24g
PSBHZXROYW1lZEdldHRlckZ1bmN0aW9uKCRpbnRlcmZhY2UpOworICAgIG15ICRpbmRleGVkR2V0
dGVyRnVuY3Rpb24gPSBHZXRJbmRleGVkR2V0dGVyRnVuY3Rpb24oJGludGVyZmFjZSk7CisgICAg
bXkgJGhhc051bWVyaWNJbmRleGVkR2V0dGVyID0gJGluZGV4ZWRHZXR0ZXJGdW5jdGlvbiA/ICRj
b2RlR2VuZXJhdG9yLT5Jc051bWVyaWNUeXBlKCRpbmRleGVkR2V0dGVyRnVuY3Rpb24tPnNpZ25h
dHVyZS0+dHlwZSkgOiAwOworCiAgICAgCiAgICAgbXkgQGdldE93blByb3BlcnR5RGVzY3JpcHRv
ckltcGwgPSAoKTsKICAgICBpZiAoJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkNo
ZWNrU2VjdXJpdHkifSkgewpAQCAtNDU2LDcgKzQ2MSw3IEBAIHN1YiBHZW5lcmF0ZUdldE93blBy
b3BlcnR5RGVzY3JpcHRvckJvZHkKICAgICB9CiAgICAgCiAgICAgbXkgJG1hbnVhbExvb2t1cEdl
dHRlckdlbmVyYXRpb24gPSBzdWIgewotICAgICAgICBteSAkcmVxdWlyZXNNYW51YWxMb29rdXAg
PSAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiSW5kZXhlZEdldHRlciJ9IHx8ICRu
YW1lZEdldHRlckZ1bmN0aW9uOworICAgICAgICBteSAkcmVxdWlyZXNNYW51YWxMb29rdXAgPSAo
JGluZGV4ZWRHZXR0ZXJGdW5jdGlvbiAmJiAhJGhhc051bWVyaWNJbmRleGVkR2V0dGVyKSB8fCAk
bmFtZWRHZXR0ZXJGdW5jdGlvbjsKICAgICAgICAgaWYgKCRyZXF1aXJlc01hbnVhbExvb2t1cCkg
ewogICAgICAgICAgICAgcHVzaChAZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ySW1wbCwgIiAgICBj
b25zdCAke25hbWVzcGFjZU1heWJlfUhhc2hFbnRyeSogZW50cnkgPSAke2NsYXNzTmFtZX1UYWJs
ZS5lbnRyeShleGVjLCBwcm9wZXJ0eU5hbWUpO1xuIik7CiAgICAgICAgICAgICBwdXNoKEBnZXRP
d25Qcm9wZXJ0eURlc2NyaXB0b3JJbXBsLCAiICAgIGlmIChlbnRyeSkge1xuIik7CkBAIC00NzIs
MTAgKzQ3NywxMCBAQCBzdWIgR2VuZXJhdGVHZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JCb2R5CiAg
ICAgICAgICYkbWFudWFsTG9va3VwR2V0dGVyR2VuZXJhdGlvbigpOwogICAgIH0KIAotICAgIGlm
ICgkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiSW5kZXhlZEdldHRlciJ9IHx8ICRp
bnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJOdW1lcmljSW5kZXhlZEdldHRlciJ9KSB7
CisgICAgaWYgKCRpbmRleGVkR2V0dGVyRnVuY3Rpb24pIHsKICAgICAgICAgcHVzaChAZ2V0T3du
UHJvcGVydHlEZXNjcmlwdG9ySW1wbCwgIiAgICB1bnNpZ25lZCBpbmRleCA9IHByb3BlcnR5TmFt
ZS5hc0luZGV4KCk7XG4iKTsKICAgICAgICAgcHVzaChAZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9y
SW1wbCwgIiAgICBpZiAoaW5kZXggIT0gUHJvcGVydHlOYW1lOjpOb3RBbkluZGV4ICYmIGluZGV4
IDwgc3RhdGljX2Nhc3Q8JGludGVyZmFjZU5hbWUqPih0aGlzT2JqZWN0LT5pbXBsKCkpLT5sZW5n
dGgoKSkge1xuIik7Ci0gICAgICAgIGlmICgkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMt
PnsiTnVtZXJpY0luZGV4ZWRHZXR0ZXIifSkgeworICAgICAgICBpZiAoJGhhc051bWVyaWNJbmRl
eGVkR2V0dGVyKSB7CiAgICAgICAgICAgICAjIEFzc3VtZSB0aGF0IGlmIHRoZXJlJ3MgYSBzZXR0
ZXIsIHRoZSBpbmRleCB3aWxsIGJlIHdyaXRhYmxlCiAgICAgICAgICAgICBpZiAoJGludGVyZmFj
ZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkN1c3RvbUluZGV4ZWRTZXR0ZXIifSkgewogICAgICAg
ICAgICAgICAgIHB1c2goQGdldE93blByb3BlcnR5RGVzY3JpcHRvckltcGwsICIgICAgICAgIGRl
c2NyaXB0b3Iuc2V0RGVzY3JpcHRvcih0aGlzT2JqZWN0LT5nZXRCeUluZGV4KGV4ZWMsIGluZGV4
KSwgJHtuYW1lc3BhY2VNYXliZX1Eb250RGVsZXRlKTtcbiIpOwpAQCAtNjMyLDYgKzYzNywxMiBA
QCBzdWIgR2V0U3BlY2lhbEFjY2Vzc29yRnVuY3Rpb25Gb3JUeXBlCiAgICAgcmV0dXJuIDA7CiB9
CiAKK3N1YiBHZXRJbmRleGVkR2V0dGVyRnVuY3Rpb24KK3sKKyAgICBteSAkaW50ZXJmYWNlID0g
c2hpZnQ7CisgICAgcmV0dXJuIEdldFNwZWNpYWxBY2Nlc3NvckZ1bmN0aW9uRm9yVHlwZSgkaW50
ZXJmYWNlLCAiZ2V0dGVyIiwgInVuc2lnbmVkIGxvbmciLCAxKTsKK30KKwogc3ViIEdldE5hbWVk
R2V0dGVyRnVuY3Rpb24KIHsKICAgICBteSAkaW50ZXJmYWNlID0gc2hpZnQ7CkBAIC03NzMsNiAr
Nzg0LDggQEAgc3ViIEdlbmVyYXRlSGVhZGVyCiAgICAgJGltcGxJbmNsdWRlc3siJHtjbGFzc05h
bWV9Q3VzdG9tLmgifSA9IDEgaWYgISRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJK
U0N1c3RvbUhlYWRlciJ9ICYmICgkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ3Vz
dG9tUHV0RnVuY3Rpb24ifSB8fCAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ3Vz
dG9tTmFtZWRTZXR0ZXIifSk7CiAKICAgICBteSAkbmFtZWRHZXR0ZXJGdW5jdGlvbiA9IEdldE5h
bWVkR2V0dGVyRnVuY3Rpb24oJGludGVyZmFjZSk7CisgICAgbXkgJGluZGV4ZWRHZXR0ZXJGdW5j
dGlvbiA9IEdldEluZGV4ZWRHZXR0ZXJGdW5jdGlvbigkaW50ZXJmYWNlKTsKKyAgICBteSAkaGFz
TnVtZXJpY0luZGV4ZWRHZXR0ZXIgPSAkaW5kZXhlZEdldHRlckZ1bmN0aW9uID8gJGNvZGVHZW5l
cmF0b3ItPklzTnVtZXJpY1R5cGUoJGluZGV4ZWRHZXR0ZXJGdW5jdGlvbi0+c2lnbmF0dXJlLT50
eXBlKSA6IDA7CiAKICAgICBteSAkaGFzSW1wdXJlTmFtZWRHZXR0ZXIgPQogICAgICAgICAkbmFt
ZWRHZXR0ZXJGdW5jdGlvbgpAQCAtNzgwLDggKzc5Myw3IEBAIHN1YiBHZW5lcmF0ZUhlYWRlcgog
ICAgICAgICB8fCAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ3VzdG9tR2V0T3du
UHJvcGVydHlTbG90In07CiAKICAgICBteSAkaGFzQ29tcGxleEdldHRlciA9Ci0gICAgICAgICRp
bnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJJbmRleGVkR2V0dGVyIn0KLSAgICAgICAg
fHwgJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57Ik51bWVyaWNJbmRleGVkR2V0dGVy
In0KKyAgICAgICAgJGluZGV4ZWRHZXR0ZXJGdW5jdGlvbgogICAgICAgICB8fCAkaW50ZXJmYWNl
LT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiSlNDdXN0b21HZXRPd25Qcm9wZXJ0eVNsb3RBbmREZXNj
cmlwdG9yIn0KICAgICAgICAgfHwgJGhhc0ltcHVyZU5hbWVkR2V0dGVyOwogICAgIApAQCAtODY1
LDcgKzg3Nyw3IEBAIHN1YiBHZW5lcmF0ZUhlYWRlcgogICAgIH0KIAogICAgICMgQ3VzdG9tIGdl
dE93blByb3BlcnR5TmFtZXMgZnVuY3Rpb24KLSAgICBpZiAoJGludGVyZmFjZS0+ZXh0ZW5kZWRB
dHRyaWJ1dGVzLT57IkN1c3RvbUVudW1lcmF0ZVByb3BlcnR5In0gfHwgJGludGVyZmFjZS0+ZXh0
ZW5kZWRBdHRyaWJ1dGVzLT57IkluZGV4ZWRHZXR0ZXIifSB8fCAkaW50ZXJmYWNlLT5leHRlbmRl
ZEF0dHJpYnV0ZXMtPnsiTnVtZXJpY0luZGV4ZWRHZXR0ZXIifSkgeworICAgIGlmICgkaW50ZXJm
YWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ3VzdG9tRW51bWVyYXRlUHJvcGVydHkifSB8fCAk
aW5kZXhlZEdldHRlckZ1bmN0aW9uKSB7CiAgICAgICAgIHB1c2goQGhlYWRlckNvbnRlbnQsICIg
ICAgc3RhdGljIHZvaWQgZ2V0T3duUHJvcGVydHlOYW1lcyhKU0M6OkpTT2JqZWN0KiwgSlNDOjpF
eGVjU3RhdGUqLCBKU0M6OlByb3BlcnR5TmFtZUFycmF5JiwgSlNDOjpFbnVtZXJhdGlvbk1vZGUg
bW9kZSA9IEpTQzo6RXhjbHVkZURvbnRFbnVtUHJvcGVydGllcyk7XG4iKTsKICAgICAgICAgJHN0
cnVjdHVyZUZsYWdzeyJKU0M6Ok92ZXJyaWRlc0dldFByb3BlcnR5TmFtZXMifSA9IDE7ICAgICAg
IAogICAgIH0KQEAgLTEwMDAsMTEgKzEwMTIsMTIgQEAgc3ViIEdlbmVyYXRlSGVhZGVyCiAgICAg
cHVzaChAaGVhZGVyQ29udGVudCwgIkJhc2U6OlN0cnVjdHVyZUZsYWdzO1xuIik7CiAKICAgICAj
IEluZGV4IGdldHRlcgotICAgIGlmICgkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsi
SW5kZXhlZEdldHRlciJ9KSB7Ci0gICAgICAgIHB1c2goQGhlYWRlckNvbnRlbnQsICIgICAgc3Rh
dGljIEpTQzo6SlNWYWx1ZSBpbmRleEdldHRlcihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNWYWx1
ZSwgdW5zaWduZWQpO1xuIik7Ci0gICAgfQotICAgIGlmICgkaW50ZXJmYWNlLT5leHRlbmRlZEF0
dHJpYnV0ZXMtPnsiTnVtZXJpY0luZGV4ZWRHZXR0ZXIifSkgewotICAgICAgICBwdXNoKEBoZWFk
ZXJDb250ZW50LCAiICAgIEpTQzo6SlNWYWx1ZSBnZXRCeUluZGV4KEpTQzo6RXhlY1N0YXRlKiwg
dW5zaWduZWQgaW5kZXgpO1xuIik7CisgICAgaWYgKCRpbmRleGVkR2V0dGVyRnVuY3Rpb24pIHsK
KyAgICAgICAgaWYgKCRoYXNOdW1lcmljSW5kZXhlZEdldHRlcikgeworICAgICAgICAgICAgcHVz
aChAaGVhZGVyQ29udGVudCwgIiAgICBKU0M6OkpTVmFsdWUgZ2V0QnlJbmRleChKU0M6OkV4ZWNT
dGF0ZSosIHVuc2lnbmVkIGluZGV4KTtcbiIpOworICAgICAgICB9IGVsc2UgeworICAgICAgICAg
ICAgcHVzaChAaGVhZGVyQ29udGVudCwgIiAgICBzdGF0aWMgSlNDOjpKU1ZhbHVlIGluZGV4R2V0
dGVyKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU1ZhbHVlLCB1bnNpZ25lZCk7XG4iKTsKKyAgICAg
ICAgfQogICAgIH0KIAogICAgICMgSW5kZXggc2V0dGVyCkBAIC0xNTg4LDExICsxNjAxLDE1IEBA
IHN1YiBHZW5lcmF0ZUltcGxlbWVudGF0aW9uCiAgICAgbXkgJGV2ZW50VGFyZ2V0ID0gJGludGVy
ZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkV2ZW50VGFyZ2V0In0gfHwgKCRjb2RlR2VuZXJh
dG9yLT5Jbmhlcml0c0ludGVyZmFjZSgkaW50ZXJmYWNlLCAiRXZlbnRUYXJnZXQiKSAmJiAkaW50
ZXJmYWNlLT5uYW1lIG5lICJFdmVudFRhcmdldCIpOwogICAgIG15ICRuZWVkc01hcmtDaGlsZHJl
biA9ICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJKU0N1c3RvbU1hcmtGdW5jdGlv
biJ9IHx8ICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJFdmVudFRhcmdldCJ9IHx8
ICRpbnRlcmZhY2UtPm5hbWUgZXEgIkV2ZW50VGFyZ2V0IjsKIAorICAgIG15ICRuYW1lZEdldHRl
ckZ1bmN0aW9uID0gR2V0TmFtZWRHZXR0ZXJGdW5jdGlvbigkaW50ZXJmYWNlKTsKKyAgICBteSAk
aW5kZXhlZEdldHRlckZ1bmN0aW9uID0gR2V0SW5kZXhlZEdldHRlckZ1bmN0aW9uKCRpbnRlcmZh
Y2UpOworICAgIG15ICRoYXNOdW1lcmljSW5kZXhlZEdldHRlciA9ICRpbmRleGVkR2V0dGVyRnVu
Y3Rpb24gPyAkY29kZUdlbmVyYXRvci0+SXNOdW1lcmljVHlwZSgkaW5kZXhlZEdldHRlckZ1bmN0
aW9uLT5zaWduYXR1cmUtPnR5cGUpIDogMDsKKwogICAgICMgLSBBZGQgZGVmYXVsdCBoZWFkZXIg
dGVtcGxhdGUKICAgICBwdXNoKEBpbXBsQ29udGVudEhlYWRlciwgR2VuZXJhdGVJbXBsZW1lbnRh
dGlvbkNvbnRlbnRIZWFkZXIoJGludGVyZmFjZSkpOwogCiAgICAgJGltcGxJbmNsdWRlc3siPHd0
Zi9HZXRQdHIuaD4ifSA9IDE7Ci0gICAgJGltcGxJbmNsdWRlc3siPHJ1bnRpbWUvUHJvcGVydHlO
YW1lQXJyYXkuaD4ifSA9IDEgaWYgJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57Iklu
ZGV4ZWRHZXR0ZXIifSB8fCAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiTnVtZXJp
Y0luZGV4ZWRHZXR0ZXIifTsKKyAgICAkaW1wbEluY2x1ZGVzeyI8cnVudGltZS9Qcm9wZXJ0eU5h
bWVBcnJheS5oPiJ9ID0gMSBpZiAkaW5kZXhlZEdldHRlckZ1bmN0aW9uOwogCiAgICAgQWRkSW5j
bHVkZXNGb3JUeXBlSW5JbXBsKCRpbnRlcmZhY2VOYW1lKTsKIApAQCAtMTYwNiw4ICsxNjIzLDYg
QEAgc3ViIEdlbmVyYXRlSW1wbGVtZW50YXRpb24KICAgICBteSAkbnVtQ29uc3RhbnRzID0gQHsk
aW50ZXJmYWNlLT5jb25zdGFudHN9OwogICAgIG15ICRudW1GdW5jdGlvbnMgPSBAeyRpbnRlcmZh
Y2UtPmZ1bmN0aW9uc307CiAKLSAgICBteSAkbmFtZWRHZXR0ZXJGdW5jdGlvbiA9IEdldE5hbWVk
R2V0dGVyRnVuY3Rpb24oJGludGVyZmFjZSk7Ci0KICAgICAjIC0gQWRkIGFsbCBjb25zdGFudHMK
ICAgICBpZiAoISRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJOb0ludGVyZmFjZU9i
amVjdCJ9KSB7CiAgICAgICAgIG15ICRoYXNoU2l6ZSA9ICRudW1Db25zdGFudHM7CkBAIC0xOTE5
LDggKzE5MzQsNyBAQCBzdWIgR2VuZXJhdGVJbXBsZW1lbnRhdGlvbgogCiAgICAgbXkgJGhhc0dl
dHRlciA9ICRudW1BdHRyaWJ1dGVzID4gMAogICAgICAgICAgICAgICAgICB8fCAhJGludGVyZmFj
ZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57Ik5vSW50ZXJmYWNlT2JqZWN0In0KLSAgICAgICAgICAg
ICAgICAgfHwgJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkluZGV4ZWRHZXR0ZXIi
fQotICAgICAgICAgICAgICAgICB8fCAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsi
TnVtZXJpY0luZGV4ZWRHZXR0ZXIifQorICAgICAgICAgICAgICAgICB8fCAkaW5kZXhlZEdldHRl
ckZ1bmN0aW9uCiAgICAgICAgICAgICAgICAgIHx8ICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmli
dXRlcy0+eyJKU0N1c3RvbUdldE93blByb3BlcnR5U2xvdEFuZERlc2NyaXB0b3IifQogICAgICAg
ICAgICAgICAgICB8fCAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ3VzdG9tR2V0
T3duUHJvcGVydHlTbG90In0KICAgICAgICAgICAgICAgICAgfHwgJG5hbWVkR2V0dGVyRnVuY3Rp
b24KQEAgLTE5NDMsOCArMTk1Nyw4IEBAIHN1YiBHZW5lcmF0ZUltcGxlbWVudGF0aW9uCiAgICAg
ICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIn1cblxuIik7CiAgICAgICAgIH0KIAotICAgICAg
ICBpZiAoJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkluZGV4ZWRHZXR0ZXIifSB8
fCAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiTnVtZXJpY0luZGV4ZWRHZXR0ZXIi
fQotICAgICAgICAgICAgICAgIHx8ICRuYW1lZEdldHRlckZ1bmN0aW9uIHx8ICRpbnRlcmZhY2Ut
PmV4dGVuZGVkQXR0cmlidXRlcy0+eyJDdXN0b21OYW1lZEdldHRlciJ9CisgICAgICAgIGlmICgk
aW5kZXhlZEdldHRlckZ1bmN0aW9uIHx8ICRuYW1lZEdldHRlckZ1bmN0aW9uCisgICAgICAgICAg
ICAgICAgfHwgJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkN1c3RvbU5hbWVkR2V0
dGVyIn0KICAgICAgICAgICAgICAgICB8fCAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMt
PnsiSlNDdXN0b21HZXRPd25Qcm9wZXJ0eVNsb3RBbmREZXNjcmlwdG9yIn0pIHsKICAgICAgICAg
ICAgIHB1c2goQGltcGxDb250ZW50LCAiYm9vbCAke2NsYXNzTmFtZX06OmdldE93blByb3BlcnR5
U2xvdEJ5SW5kZXgoSlNDZWxsKiBjZWxsLCBFeGVjU3RhdGUqIGV4ZWMsIHVuc2lnbmVkIGluZGV4
LCBQcm9wZXJ0eVNsb3QmIHNsb3QpXG4iKTsKICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50
LCAie1xuIik7CkBAIC0xOTYyLDEzICsxOTc2LDEzIEBAIHN1YiBHZW5lcmF0ZUltcGxlbWVudGF0
aW9uCiAgICAgICAgICAgICAgICAgJGdlbmVyYXRlZFByb3BlcnR5TmFtZSA9IDE7CiAgICAgICAg
ICAgICB9OwogCi0gICAgICAgICAgICBpZiAoJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVz
LT57IkluZGV4ZWRHZXR0ZXIifSB8fCAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsi
TnVtZXJpY0luZGV4ZWRHZXR0ZXIifSkgeworICAgICAgICAgICAgaWYgKCRpbmRleGVkR2V0dGVy
RnVuY3Rpb24pIHsKICAgICAgICAgICAgICAgICBpZiAoSW5kZXhHZXR0ZXJSZXR1cm5zU3RyaW5n
cygkaW50ZXJmYWNlTmFtZSkpIHsKICAgICAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRl
bnQsICIgICAgaWYgKGluZGV4IDw9IE1BWF9BUlJBWV9JTkRFWCkge1xuIik7CiAgICAgICAgICAg
ICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIg
ICAgaWYgKGluZGV4IDwgc3RhdGljX2Nhc3Q8JGludGVyZmFjZU5hbWUqPih0aGlzT2JqZWN0LT5p
bXBsKCkpLT5sZW5ndGgoKSkge1xuIik7CiAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAg
ICAgIGlmICgkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiTnVtZXJpY0luZGV4ZWRH
ZXR0ZXIifSkgeworICAgICAgICAgICAgICAgIGlmICgkaGFzTnVtZXJpY0luZGV4ZWRHZXR0ZXIp
IHsKICAgICAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgICAgIHNsb3Qu
c2V0VmFsdWUodGhpc09iamVjdC0+Z2V0QnlJbmRleChleGVjLCBpbmRleCkpO1xuIik7CiAgICAg
ICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRl
bnQsICIgICAgICAgIHNsb3Quc2V0Q3VzdG9tSW5kZXgodGhpc09iamVjdCwgaW5kZXgsIHRoaXNP
YmplY3QtPmluZGV4R2V0dGVyKTtcbiIpOwpAQCAtMjQyNSwxNSArMjQzOSwxMyBAQCBzdWIgR2Vu
ZXJhdGVJbXBsZW1lbnRhdGlvbgogICAgICAgICB9CiAgICAgfQogCi0gICAgaWYgKCgkaW50ZXJm
YWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiSW5kZXhlZEdldHRlciJ9IHx8ICRpbnRlcmZhY2Ut
PmV4dGVuZGVkQXR0cmlidXRlcy0+eyJOdW1lcmljSW5kZXhlZEdldHRlciJ9KSAmJiAhJGludGVy
ZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkN1c3RvbUVudW1lcmF0ZVByb3BlcnR5In0pIHsK
KyAgICBpZiAoJGluZGV4ZWRHZXR0ZXJGdW5jdGlvbiAmJiAhJGludGVyZmFjZS0+ZXh0ZW5kZWRB
dHRyaWJ1dGVzLT57IkN1c3RvbUVudW1lcmF0ZVByb3BlcnR5In0pIHsKICAgICAgICAgcHVzaChA
aW1wbENvbnRlbnQsICJ2b2lkICR7Y2xhc3NOYW1lfTo6Z2V0T3duUHJvcGVydHlOYW1lcyhKU09i
amVjdCogb2JqZWN0LCBFeGVjU3RhdGUqIGV4ZWMsIFByb3BlcnR5TmFtZUFycmF5JiBwcm9wZXJ0
eU5hbWVzLCBFbnVtZXJhdGlvbk1vZGUgbW9kZSlcbiIpOwogICAgICAgICBwdXNoKEBpbXBsQ29u
dGVudCwgIntcbiIpOwogICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICAke2NsYXNzTmFt
ZX0qIHRoaXNPYmplY3QgPSBqc0Nhc3Q8JHtjbGFzc05hbWV9Kj4ob2JqZWN0KTtcbiIpOwogICAg
ICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICBBU1NFUlRfR0NfT0JKRUNUX0lOSEVSSVRTKHRo
aXNPYmplY3QsICZzX2luZm8pO1xuIik7Ci0gICAgICAgIGlmICgkaW50ZXJmYWNlLT5leHRlbmRl
ZEF0dHJpYnV0ZXMtPnsiSW5kZXhlZEdldHRlciJ9IHx8ICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0
cmlidXRlcy0+eyJOdW1lcmljSW5kZXhlZEdldHRlciJ9KSB7Ci0gICAgICAgICAgICBwdXNoKEBp
bXBsQ29udGVudCwgIiAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgc3RhdGljX2Nhc3Q8JHtp
bnRlcmZhY2VOYW1lfSo+KHRoaXNPYmplY3QtPmltcGwoKSktPmxlbmd0aCgpOyArK2kpXG4iKTsK
LSAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgICAgICBwcm9wZXJ0eU5hbWVzLmFk
ZChJZGVudGlmaWVyOjpmcm9tKGV4ZWMsIGkpKTtcbiIpOwotICAgICAgICB9CisgICAgICAgIHB1
c2goQGltcGxDb250ZW50LCAiICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBzdGF0aWNfY2Fz
dDwke2ludGVyZmFjZU5hbWV9Kj4odGhpc09iamVjdC0+aW1wbCgpKS0+bGVuZ3RoKCk7ICsraSlc
biIpOworICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICAgICAgcHJvcGVydHlOYW1lcy5h
ZGQoSWRlbnRpZmllcjo6ZnJvbShleGVjLCBpKSk7XG4iKTsKICAgICAgICAgcHVzaChAaW1wbENv
bnRlbnQsICIgICAgIEJhc2U6OmdldE93blByb3BlcnR5TmFtZXModGhpc09iamVjdCwgZXhlYywg
cHJvcGVydHlOYW1lcywgbW9kZSk7XG4iKTsKICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICJ9
XG5cbiIpOwogICAgIH0KQEAgLTI2MjksNyArMjY0MSw3IEBAIHN1YiBHZW5lcmF0ZUltcGxlbWVu
dGF0aW9uCiAgICAgICAgIH0KICAgICB9CiAKLSAgICBpZiAoJGludGVyZmFjZS0+ZXh0ZW5kZWRB
dHRyaWJ1dGVzLT57IkluZGV4ZWRHZXR0ZXIifSkgeworICAgIGlmICgkaW5kZXhlZEdldHRlckZ1
bmN0aW9uICYmICEkaGFzTnVtZXJpY0luZGV4ZWRHZXR0ZXIpIHsKICAgICAgICAgcHVzaChAaW1w
bENvbnRlbnQsICJcbkpTVmFsdWUgJHtjbGFzc05hbWV9OjppbmRleEdldHRlcihFeGVjU3RhdGUq
IGV4ZWMsIEpTVmFsdWUgc2xvdEJhc2UsIHVuc2lnbmVkIGluZGV4KVxuIik7CiAgICAgICAgIHB1
c2goQGltcGxDb250ZW50LCAie1xuIik7CiAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAg
ICR7Y2xhc3NOYW1lfSogdGhpc09iaiA9IGpzQ2FzdDwkY2xhc3NOYW1lKj4oYXNPYmplY3Qoc2xv
dEJhc2UpKTtcbiIpOwpAQCAtMjY0Nyw3ICsyNjU5LDcgQEAgc3ViIEdlbmVyYXRlSW1wbGVtZW50
YXRpb24KICAgICAgICAgfQogICAgIH0KIAotICAgIGlmICgkaW50ZXJmYWNlLT5leHRlbmRlZEF0
dHJpYnV0ZXMtPnsiTnVtZXJpY0luZGV4ZWRHZXR0ZXIifSkgeworICAgIGlmICgkaGFzTnVtZXJp
Y0luZGV4ZWRHZXR0ZXIpIHsKICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICJcbkpTVmFsdWUg
JHtjbGFzc05hbWV9OjpnZXRCeUluZGV4KEV4ZWNTdGF0ZSosIHVuc2lnbmVkIGluZGV4KVxuIik7
CiAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAie1xuIik7CiAgICAgICAgIHB1c2goQGltcGxD
b250ZW50LCAiICAgIEFTU0VSVF9HQ19PQkpFQ1RfSU5IRVJJVFModGhpcywgJnNfaW5mbyk7XG4i
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvSURMQXR0cmli
dXRlcy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0lETEF0dHJpYnV0ZXMu
dHh0CmluZGV4IGM0ZTJjOGEuLjE4MGVlMzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvSURMQXR0cmlidXRlcy50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy9JRExBdHRyaWJ1dGVzLnR4dApAQCAtNjMsNyArNjMsNiBAQCBJbW11dGFi
bGUKIEltcGxlbWVudGF0aW9uTGFja3NWVGFibGUKIEltcGxlbWVudGF0aW9uTmFtZXNwYWNlPSoK
IEltcGxlbWVudGVkQXM9KgotSW5kZXhlZEdldHRlcgogSW5pdGlhbGl6ZWRCeUV2ZW50Q29uc3Ry
dWN0b3IKIEludGVyZmFjZU5hbWU9KgogSXNJbmRleApAQCAtODcsNyArODYsNiBAQCBNYXNxdWVy
YWRlc0FzVW5kZWZpbmVkCiBOYW1lZENvbnN0cnVjdG9yPSoKIE5vSW50ZXJmYWNlT2JqZWN0CiBO
b3RFbnVtZXJhYmxlCi1OdW1lcmljSW5kZXhlZEdldHRlcgogT2JqQ0N1c3RvbUltcGxlbWVudGF0
aW9uCiBPYmpDTGVnYWN5VW5uYW1lZFBhcmFtZXRlcnMKIE9iakNQb2x5bW9ycGhpYwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Rlc3RFdmVudFRhcmdl
dC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdEV2ZW50VGFy
Z2V0LmlkbAppbmRleCA2ZjA2NTc3Li44ZGYwMzdiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdEV2ZW50VGFyZ2V0LmlkbAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdEV2ZW50VGFyZ2V0LmlkbApAQCAtMjgs
MTEgKzI4LDEwIEBACiAKIFsKICAgICBFdmVudFRhcmdldCwKLSAgICBJbmRleGVkR2V0dGVyLAog
ICAgIE1hc3F1ZXJhZGVzQXNVbmRlZmluZWQKIF0gaW50ZXJmYWNlIFRlc3RFdmVudFRhcmdldCB7
CiAKLSAgICBOb2RlIGl0ZW0oW0lzSW5kZXhdIHVuc2lnbmVkIGxvbmcgaW5kZXgpOworICAgIGdl
dHRlciBOb2RlIGl0ZW0oW0lzSW5kZXhdIHVuc2lnbmVkIGxvbmcgaW5kZXgpOwogICAgIGdldHRl
ciBOb2RlIChET01TdHJpbmcgbmFtZSk7CiAKICAgICB2b2lkIGFkZEV2ZW50TGlzdGVuZXIoRE9N
U3RyaW5nIHR5cGUsIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L1Rlc3RUeXBlZEFycmF5LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9UZXN0VHlwZWRBcnJheS5pZGwKaW5kZXggOTdjZTk1ZS4uMjI3YTRjZiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Rlc3RUeXBlZEFycmF5
LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdFR5cGVk
QXJyYXkuaWRsCkBAIC0yNiw3ICsyNiw2IEBACiAKIFsKICAgICBDb25zdHJ1Y3RvclRlbXBsYXRl
PVR5cGVkQXJyYXksCi0gICAgTnVtZXJpY0luZGV4ZWRHZXR0ZXIsCiAgICAgQ3VzdG9tSW5kZXhl
ZFNldHRlciwKICAgICBKU0dlbmVyYXRlVG9OYXRpdmVPYmplY3QsCiAgICAgSlNOb1N0YXRpY1Rh
YmxlcywKQEAgLTM2LDQgKzM1LDYgQEAKIF0gaW50ZXJmYWNlIEZsb2F0NjRBcnJheSA6IEFycmF5
QnVmZmVyVmlldyB7CiAgICAgSW50MzJBcnJheSBmb28oRmxvYXQzMkFycmF5IGFycmF5KTsKICAg
ICB2b2lkIHNldCgpOworCisgICAgZ2V0dGVyIGRvdWJsZSAodW5zaWduZWQgbG9uZyBpbmRleCk7
CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1J1bGVMaXN0LmlkbCBiL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9DU1NSdWxlTGlzdC5pZGwKaW5kZXggZjc2Y2U4Yy4uZTkzNmE4NiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1J1bGVMaXN0LmlkbAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTUnVsZUxpc3QuaWRsCkBAIC0yNiwxMCArMjYsOSBAQAogLy8gSW50
cm9kdWNlZCBpbiBET00gTGV2ZWwgMjoKIFsKICAgICBDdXN0b21Jc1JlYWNoYWJsZSwKLSAgICBJ
bmRleGVkR2V0dGVyLAogICAgIFNraXBWVGFibGVWYWxpZGF0aW9uCiBdIGludGVyZmFjZSBDU1NS
dWxlTGlzdCB7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgICAgbGVuZ3Ro
OwotICAgIENTU1J1bGUgICAgICAgICAgIGl0ZW0oW0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRpb25h
bCB1bnNpZ25lZCBsb25nIGluZGV4KTsKKyAgICBnZXR0ZXIgQ1NTUnVsZSBpdGVtKFtEZWZhdWx0
PVVuZGVmaW5lZF0gb3B0aW9uYWwgdW5zaWduZWQgbG9uZyBpbmRleCk7CiB9OwogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU3R5bGVEZWNsYXJhdGlvbi5pZGwgYi9Tb3VyY2Uv
V2ViQ29yZS9jc3MvQ1NTU3R5bGVEZWNsYXJhdGlvbi5pZGwKaW5kZXggMTcwMTU0MS4uMTRiNjQ2
NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1N0eWxlRGVjbGFyYXRpb24uaWRs
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTdHlsZURlY2xhcmF0aW9uLmlkbApAQCAtMjUs
NyArMjUsNiBAQAogICAgIEdlbmVyYXRlSXNSZWFjaGFibGUsCiAgICAgSlNDdXN0b21HZXRPd25Q
cm9wZXJ0eVNsb3RBbmREZXNjcmlwdG9yLAogICAgIEN1c3RvbU5hbWVkU2V0dGVyLAotICAgIElu
ZGV4ZWRHZXR0ZXIsCiAgICAgQ3VzdG9tRW51bWVyYXRlUHJvcGVydHksCiAgICAgU2tpcFZUYWJs
ZVZhbGlkYXRpb24KIF0gaW50ZXJmYWNlIENTU1N0eWxlRGVjbGFyYXRpb24gewpAQCAtNDAsNyAr
MzksNyBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW0RlZmF1bHQ9VW5k
ZWZpbmVkXSBvcHRpb25hbCBET01TdHJpbmcgcHJpb3JpdHkpOwogCiAgICAgcmVhZG9ubHkgYXR0
cmlidXRlIHVuc2lnbmVkIGxvbmcgICAgbGVuZ3RoOwotICAgIERPTVN0cmluZyAgICAgICAgICBp
dGVtKFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgdW5zaWduZWQgbG9uZyBpbmRleCk7Cisg
ICAgZ2V0dGVyIERPTVN0cmluZyAgICAgICAgICBpdGVtKFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0
aW9uYWwgdW5zaWduZWQgbG9uZyBpbmRleCk7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIENTU1J1
bGUgICAgICAgICAgcGFyZW50UnVsZTsKIAogICAgIC8vIEV4dGVuc2lvbnMKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZUxpc3QuaWRsIGIvU291cmNlL1dlYkNvcmUvY3Nz
L0NTU1ZhbHVlTGlzdC5pZGwKaW5kZXggOTUwNGM3Yi4uY2E1MWQ2YyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlTGlzdC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvY3Nz
L0NTU1ZhbHVlTGlzdC5pZGwKQEAgLTI1LDEwICsyNSw5IEBACiAKIC8vIEludHJvZHVjZWQgaW4g
RE9NIExldmVsIDI6CiBbCi0gICAgSW5kZXhlZEdldHRlciwKICAgICBJbXBsZW1lbnRhdGlvbkxh
Y2tzVlRhYmxlCiBdIGludGVyZmFjZSBDU1NWYWx1ZUxpc3QgOiBDU1NWYWx1ZSB7CiAgICAgcmVh
ZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgICAgbGVuZ3RoOwotICAgIENTU1ZhbHVlICAg
ICAgICAgICBpdGVtKFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgdW5zaWduZWQgbG9uZyBp
bmRleCk7CisgICAgZ2V0dGVyIENTU1ZhbHVlICAgICAgICAgICBpdGVtKFtEZWZhdWx0PVVuZGVm
aW5lZF0gb3B0aW9uYWwgdW5zaWduZWQgbG9uZyBpbmRleCk7CiB9OwogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9jc3MvTWVkaWFMaXN0LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9NZWRp
YUxpc3QuaWRsCmluZGV4IDhhYWJiNzMuLjM0ZjgyNzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2Nzcy9NZWRpYUxpc3QuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9NZWRpYUxpc3Qu
aWRsCkBAIC0yNywxNCArMjcsMTMgQEAKIFsKICAgICBKU0N1c3RvbUhlYWRlciwKICAgICBHZW5l
cmF0ZUlzUmVhY2hhYmxlLAotICAgIEluZGV4ZWRHZXR0ZXIsCiAgICAgSW1wbGVtZW50YXRpb25M
YWNrc1ZUYWJsZQogXSBpbnRlcmZhY2UgTWVkaWFMaXN0IHsKIAogICAgIFtUcmVhdE51bGxBcz1O
dWxsU3RyaW5nLCBUcmVhdFJldHVybmVkTnVsbFN0cmluZ0FzPU51bGwsIFNldHRlclJhaXNlc0V4
Y2VwdGlvbl0gYXR0cmlidXRlIERPTVN0cmluZyBtZWRpYVRleHQ7CiAgICAgcmVhZG9ubHkgYXR0
cmlidXRlIHVuc2lnbmVkIGxvbmcgbGVuZ3RoOwogCi0gICAgW1RyZWF0UmV0dXJuZWROdWxsU3Ry
aW5nQXM9TnVsbF0gRE9NU3RyaW5nIGl0ZW0oW0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRpb25hbCB1
bnNpZ25lZCBsb25nIGluZGV4KTsKKyAgICBbVHJlYXRSZXR1cm5lZE51bGxTdHJpbmdBcz1OdWxs
XSBnZXR0ZXIgRE9NU3RyaW5nIGl0ZW0oW0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRpb25hbCB1bnNp
Z25lZCBsb25nIGluZGV4KTsKICAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIGRlbGV0ZU1lZGl1
bShbRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIERPTVN0cmluZyBvbGRNZWRpdW0pOwogICAg
IFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgYXBwZW5kTWVkaXVtKFtEZWZhdWx0PVVuZGVmaW5lZF0g
b3B0aW9uYWwgRE9NU3RyaW5nIG5ld01lZGl1bSk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2Nzcy9TdHlsZVNoZWV0TGlzdC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVTaGVl
dExpc3QuaWRsCmluZGV4IDQ2Njg2YzEuLmNjNmJmM2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2Nzcy9TdHlsZVNoZWV0TGlzdC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxl
U2hlZXRMaXN0LmlkbApAQCAtMjEsMTEgKzIxLDEwIEBACiAvLyBJbnRyb2R1Y2VkIGluIERPTSBM
ZXZlbCAyOgogWwogICAgIEdlbmVyYXRlSXNSZWFjaGFibGU9SW1wbERvY3VtZW50LAotICAgIElu
ZGV4ZWRHZXR0ZXIsCiAgICAgSW1wbGVtZW50YXRpb25MYWNrc1ZUYWJsZQogXSBpbnRlcmZhY2Ug
U3R5bGVTaGVldExpc3QgewogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nICAg
IGxlbmd0aDsKLSAgICBTdHlsZVNoZWV0ICAgICAgICAgaXRlbShbRGVmYXVsdD1VbmRlZmluZWRd
IG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcgaW5kZXgpOworICAgIGdldHRlciBTdHlsZVNoZWV0ICAg
ICAgICAgaXRlbShbRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcgaW5k
ZXgpOwogICAgIGdldHRlciBDU1NTdHlsZVNoZWV0IChET01TdHJpbmcgbmFtZSk7CiB9OwogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTRmlsdGVyVmFsdWUuaWRsIGIv
U291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU0ZpbHRlclZhbHVlLmlkbAppbmRleCAwMjFmZmE2
Li5mOTM0NmY1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTRmlsdGVy
VmFsdWUuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NGaWx0ZXJWYWx1ZS5p
ZGwKQEAgLTI0LDkgKzI0LDggQEAKICAqLwogCiBbCi0gICAgICAgIENvbmRpdGlvbmFsPUNTU19G
SUxURVJTLAotICAgICAgICBJbmRleGVkR2V0dGVyLAotICAgICAgICBEb05vdENoZWNrQ29uc3Rh
bnRzLAorICAgIENvbmRpdGlvbmFsPUNTU19GSUxURVJTLAorICAgIERvTm90Q2hlY2tDb25zdGFu
dHMsCiAgICAgSW1wbGVtZW50YXRpb25MYWNrc1ZUYWJsZQogXSBpbnRlcmZhY2UgV2ViS2l0Q1NT
RmlsdGVyVmFsdWUgOiBDU1NWYWx1ZUxpc3QgewogCkBAIC00OSw0ICs0OCw2IEBACiAjZW5kaWYK
IAogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBzaG9ydCBvcGVyYXRpb25UeXBlOwor
CisgICAgZ2V0dGVyIENTU1ZhbHVlIChbRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIHVuc2ln
bmVkIGxvbmcgaW5kZXgpOwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJL
aXRDU1NLZXlmcmFtZXNSdWxlLmlkbCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NLZXlm
cmFtZXNSdWxlLmlkbAppbmRleCAxOWZhYWE1Li40NTUyYTdiIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9jc3MvV2ViS2l0Q1NTS2V5ZnJhbWVzUnVsZS5pZGwKKysrIGIvU291cmNlL1dlYkNv
cmUvY3NzL1dlYktpdENTU0tleWZyYW1lc1J1bGUuaWRsCkBAIC0yNyw5ICsyNyw3IEBACiAgKi8K
IAogLy8gSW50cm9kdWNlZCBpbiBET00gTGV2ZWwgPzoKLVsKLSAgICBJbmRleGVkR2V0dGVyCi1d
IGludGVyZmFjZSBXZWJLaXRDU1NLZXlmcmFtZXNSdWxlIDogQ1NTUnVsZSB7CitpbnRlcmZhY2Ug
V2ViS2l0Q1NTS2V5ZnJhbWVzUnVsZSA6IENTU1J1bGUgewogCiAgICAgW1RyZWF0UmV0dXJuZWRO
dWxsU3RyaW5nQXM9TnVsbCwgVHJlYXROdWxsQXM9TnVsbFN0cmluZ10gYXR0cmlidXRlIERPTVN0
cmluZyBuYW1lOwogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBDU1NSdWxlTGlzdCBjc3NSdWxlczsK
QEAgLTM3LDUgKzM1LDcgQEAKICAgICB2b2lkIGluc2VydFJ1bGUoW0RlZmF1bHQ9VW5kZWZpbmVk
XSBvcHRpb25hbCBET01TdHJpbmcgcnVsZSk7CiAgICAgdm9pZCBkZWxldGVSdWxlKFtEZWZhdWx0
PVVuZGVmaW5lZF0gb3B0aW9uYWwgRE9NU3RyaW5nIGtleSk7CiAgICAgV2ViS2l0Q1NTS2V5ZnJh
bWVSdWxlIGZpbmRSdWxlKFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgRE9NU3RyaW5nIGtl
eSk7CisKKyAgICBnZXR0ZXIgV2ViS2l0Q1NTS2V5ZnJhbWVSdWxlICh1bnNpZ25lZCBsb25nIGlu
ZGV4KTsKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NUcmFu
c2Zvcm1WYWx1ZS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTVHJhbnNmb3JtVmFs
dWUuaWRsCmluZGV4IDk1ZGJiMjguLjUxNjIxMWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9XZWJLaXRDU1NUcmFuc2Zvcm1WYWx1ZS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvY3Nz
L1dlYktpdENTU1RyYW5zZm9ybVZhbHVlLmlkbApAQCAtMjcsOCArMjcsNyBAQAogICovCiAKIFsK
LSAgICAgICAgSW5kZXhlZEdldHRlciwKLSAgICAgICAgRG9Ob3RDaGVja0NvbnN0YW50cywKKyAg
ICBEb05vdENoZWNrQ29uc3RhbnRzLAogICAgIEltcGxlbWVudGF0aW9uTGFja3NWVGFibGUKIF0g
aW50ZXJmYWNlIFdlYktpdENTU1RyYW5zZm9ybVZhbHVlIDogQ1NTVmFsdWVMaXN0IHsKIApAQCAt
NTcsNSArNTYsNyBAQAogICAgIGNvbnN0IHVuc2lnbmVkIHNob3J0IENTU19NQVRSSVgzRCAgICA9
IDIxOwogCiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIHNob3J0IG9wZXJhdGlvblR5
cGU7CisKKyAgICBnZXR0ZXIgQ1NTVmFsdWUgKFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwg
dW5zaWduZWQgbG9uZyBpbmRleCk7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9k
b20vQ2xpZW50UmVjdExpc3QuaWRsIGIvU291cmNlL1dlYkNvcmUvZG9tL0NsaWVudFJlY3RMaXN0
LmlkbAppbmRleCA0ZWZhYWI3Li5jYTFmY2IyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9k
b20vQ2xpZW50UmVjdExpc3QuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9DbGllbnRSZWN0
TGlzdC5pZGwKQEAgLTI1LDExICsyNSwxMCBAQAogICovCiAKIFsKLSAgICBJbmRleGVkR2V0dGVy
LAogICAgIEltcGxlbWVudGF0aW9uTGFja3NWVGFibGUKIF0gaW50ZXJmYWNlIENsaWVudFJlY3RM
aXN0IHsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgdW5zaWduZWQgbG9uZyBsZW5ndGg7Ci0gICAg
Q2xpZW50UmVjdCBpdGVtKFtJc0luZGV4LCBEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgdW5z
aWduZWQgbG9uZyBpbmRleCk7CisgICAgZ2V0dGVyIENsaWVudFJlY3QgaXRlbShbSXNJbmRleCwg
RGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcgaW5kZXgpOwogICAgIC8v
IEZJWE1FOiBGaXggbGlzdCBiZWhhdmlvciB0byBhbGxvdyBjdXN0b20gZXhjZXB0aW9ucyB0byBi
ZSB0aHJvd24uCiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRE9NTmFtZWRG
bG93Q29sbGVjdGlvbi5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRE9NTmFtZWRGbG93Q29sbGVj
dGlvbi5pZGwKaW5kZXggOWI0M2JhMS4uZjg2N2I2NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvZG9tL0RPTU5hbWVkRmxvd0NvbGxlY3Rpb24uaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Rv
bS9ET01OYW1lZEZsb3dDb2xsZWN0aW9uLmlkbApAQCAtMzIsMTAgKzMyLDkgQEAKICAgICBDb25k
aXRpb25hbD1DU1NfUkVHSU9OUywKICAgICBJbnRlcmZhY2VOYW1lPVdlYktpdE5hbWVkRmxvd0Nv
bGxlY3Rpb24sCiAgICAgSlNHZW5lcmF0ZVRvSlNPYmplY3QsCi0gICAgSW5kZXhlZEdldHRlciwK
ICAgICBJbXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxlCiBdIGludGVyZmFjZSBET01OYW1lZEZsb3dD
b2xsZWN0aW9uIHsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgdW5zaWduZWQgbG9uZyBsZW5ndGg7
Ci0gICAgV2ViS2l0TmFtZWRGbG93IGl0ZW0odW5zaWduZWQgbG9uZyBpbmRleCk7CisgICAgZ2V0
dGVyIFdlYktpdE5hbWVkRmxvdyBpdGVtKHVuc2lnbmVkIGxvbmcgaW5kZXgpOwogICAgIGdldHRl
ciBXZWJLaXROYW1lZEZsb3cgbmFtZWRJdGVtKERPTVN0cmluZyBuYW1lKTsKIH07CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRE9NU3RyaW5nTGlzdC5pZGwgYi9Tb3VyY2UvV2ViQ29y
ZS9kb20vRE9NU3RyaW5nTGlzdC5pZGwKaW5kZXggZDEwYThhNi4uOTE1YTY2YiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvZG9tL0RPTVN0cmluZ0xpc3QuaWRsCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2RvbS9ET01TdHJpbmdMaXN0LmlkbApAQCAtMjQsMTMgKzI0LDEyIEBACiAgKi8KIAogWwot
ICAgIEluZGV4ZWRHZXR0ZXIsCiAgICAgSlNDdXN0b21Ub05hdGl2ZU9iamVjdCwKICAgICBKU05v
U3RhdGljVGFibGVzLAogICAgIEltcGxlbWVudGF0aW9uTGFja3NWVGFibGUKIF0gaW50ZXJmYWNl
IERPTVN0cmluZ0xpc3QgewogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGxl
bmd0aDsKLSAgICBbVHJlYXRSZXR1cm5lZE51bGxTdHJpbmdBcz1OdWxsXSBET01TdHJpbmcgaXRl
bShbRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcgaW5kZXgpOworICAg
IFtUcmVhdFJldHVybmVkTnVsbFN0cmluZ0FzPU51bGxdIGdldHRlciBET01TdHJpbmcgaXRlbShb
RGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcgaW5kZXgpOwogICAgIGJv
b2xlYW4gY29udGFpbnMoW0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRpb25hbCBET01TdHJpbmcgc3Ry
aW5nKTsKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9EYXRhVHJhbnNmZXJJ
dGVtTGlzdC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRGF0YVRyYW5zZmVySXRlbUxpc3QuaWRs
CmluZGV4IDI0ZTdmN2YuLmFiMDFhMDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9E
YXRhVHJhbnNmZXJJdGVtTGlzdC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0RhdGFUcmFu
c2Zlckl0ZW1MaXN0LmlkbApAQCAtMzEsMTIgKzMxLDExIEBACiBbCiAgICAgTm9JbnRlcmZhY2VP
YmplY3QsCiAgICAgQ29uZGl0aW9uYWw9REFUQV9UUkFOU0ZFUl9JVEVNUywKLSAgICBJbmRleGVk
R2V0dGVyLAogICAgIEpTR2VuZXJhdGVUb05hdGl2ZU9iamVjdCwKICAgICBJbXBsZW1lbnRhdGlv
bkxhY2tzVlRhYmxlCiBdIGludGVyZmFjZSBEYXRhVHJhbnNmZXJJdGVtTGlzdCB7CiAgICAgcmVh
ZG9ubHkgYXR0cmlidXRlIGxvbmcgbGVuZ3RoOwotICAgIERhdGFUcmFuc2Zlckl0ZW0gaXRlbShb
RGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcgaW5kZXgpOworICAgIGdl
dHRlciBEYXRhVHJhbnNmZXJJdGVtIGl0ZW0oW0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRpb25hbCB1
bnNpZ25lZCBsb25nIGluZGV4KTsKIAogICAgIHZvaWQgY2xlYXIoKTsKICAgICB2b2lkIGFkZChG
aWxlPyBmaWxlKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9OYW1lZE5vZGVNYXAu
aWRsIGIvU291cmNlL1dlYkNvcmUvZG9tL05hbWVkTm9kZU1hcC5pZGwKaW5kZXggNWNkZTg4ZC4u
YWU2OGQ0MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL05hbWVkTm9kZU1hcC5pZGwK
KysrIGIvU291cmNlL1dlYkNvcmUvZG9tL05hbWVkTm9kZU1hcC5pZGwKQEAgLTIwLDcgKzIwLDYg
QEAKIAogWwogICAgIEdlbmVyYXRlSXNSZWFjaGFibGU9SW1wbEVsZW1lbnRSb290LAotICAgIElu
ZGV4ZWRHZXR0ZXIsCiAgICAgSW1wbGVtZW50YXRpb25MYWNrc1ZUYWJsZQogXSBpbnRlcmZhY2Ug
TmFtZWROb2RlTWFwIHsKIApAQCAtMzAsNyArMjksNyBAQAogCiAgICAgW1JhaXNlc0V4Y2VwdGlv
bl0gTm9kZSByZW1vdmVOYW1lZEl0ZW0oW0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRpb25hbCBET01T
dHJpbmcgbmFtZSk7CiAKLSAgICBOb2RlIGl0ZW0oW0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRpb25h
bCB1bnNpZ25lZCBsb25nIGluZGV4KTsKKyAgICBnZXR0ZXIgTm9kZSBpdGVtKFtEZWZhdWx0PVVu
ZGVmaW5lZF0gb3B0aW9uYWwgdW5zaWduZWQgbG9uZyBpbmRleCk7CiAgICAgCiAgICAgcmVhZG9u
bHkgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgbGVuZ3RoOwogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9kb20vTm9kZUxpc3QuaWRsIGIvU291cmNlL1dlYkNvcmUvZG9tL05vZGVMaXN0Lmlk
bAppbmRleCAyZmZjYzZlLi5jYTJjMDM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20v
Tm9kZUxpc3QuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Ob2RlTGlzdC5pZGwKQEAgLTIw
LDExICsyMCwxMCBAQAogCiBbCiAgICAgQ3VzdG9tSXNSZWFjaGFibGUsCi0gICAgSW5kZXhlZEdl
dHRlciwKICAgICBTa2lwVlRhYmxlVmFsaWRhdGlvbgogXSBpbnRlcmZhY2UgTm9kZUxpc3Qgewog
Ci0gICAgTm9kZSBpdGVtKFtJc0luZGV4LERlZmF1bHQ9VW5kZWZpbmVkXSBvcHRpb25hbCB1bnNp
Z25lZCBsb25nIGluZGV4KTsKKyAgICBnZXR0ZXIgTm9kZSBpdGVtKFtJc0luZGV4LERlZmF1bHQ9
VW5kZWZpbmVkXSBvcHRpb25hbCB1bnNpZ25lZCBsb25nIGluZGV4KTsKICAgICBnZXR0ZXIgKE5v
ZGUgb3IgdW5zaWduZWQgbG9uZykgKERPTVN0cmluZyBuYW1lKTsKIAogICAgIHJlYWRvbmx5IGF0
dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGxlbmd0aDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2RvbS9Qcm9wZXJ0eU5vZGVMaXN0LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Qcm9wZXJ0eU5v
ZGVMaXN0LmlkbAppbmRleCA3ZTZmM2EwLi45MTViZmUzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9kb20vUHJvcGVydHlOb2RlTGlzdC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL1By
b3BlcnR5Tm9kZUxpc3QuaWRsCkBAIC0zMCwxMiArMzAsMTEgQEAKIAogWwogICAgIENvbmRpdGlv
bmFsPU1JQ1JPREFUQSwKLSAgICBJbmRleGVkR2V0dGVyLAogICAgIEpTR2VuZXJhdGVUb0pTT2Jq
ZWN0CiBdIGludGVyZmFjZSBQcm9wZXJ0eU5vZGVMaXN0IDogTm9kZUxpc3QgewogCiAgICAgc2Vx
dWVuY2U8TWljcm9EYXRhSXRlbVZhbHVlPiBnZXRWYWx1ZXMoKTsKLSAgICBOb2RlIGl0ZW0odW5z
aWduZWQgbG9uZyBpbmRleCk7CisgICAgZ2V0dGVyIE5vZGUgaXRlbSh1bnNpZ25lZCBsb25nIGlu
ZGV4KTsKIAogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGxlbmd0aDsKIH07
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vVG91Y2hMaXN0LmlkbCBiL1NvdXJjZS9X
ZWJDb3JlL2RvbS9Ub3VjaExpc3QuaWRsCmluZGV4IDgxMWUwYTcuLmViYmY4MWMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Ub3VjaExpc3QuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2RvbS9Ub3VjaExpc3QuaWRsCkBAIC0yNSwxMCArMjUsOSBAQAogCiBbCiAgICAgQ29uZGl0aW9u
YWw9VE9VQ0hfRVZFTlRTLAotICAgIEluZGV4ZWRHZXR0ZXIsCiAgICAgSW1wbGVtZW50YXRpb25M
YWNrc1ZUYWJsZQogXSBpbnRlcmZhY2UgVG91Y2hMaXN0IHsKICAgICByZWFkb25seSBhdHRyaWJ1
dGUgdW5zaWduZWQgbG9uZyBsZW5ndGg7CiAKLSAgICBUb3VjaCBpdGVtKHVuc2lnbmVkIGxvbmcg
aW5kZXgpOworICAgIGdldHRlciBUb3VjaCBpdGVtKHVuc2lnbmVkIGxvbmcgaW5kZXgpOwogfTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2ZpbGVhcGkvRmlsZUxpc3QuaWRsIGIvU291cmNl
L1dlYkNvcmUvZmlsZWFwaS9GaWxlTGlzdC5pZGwKaW5kZXggN2FkZDBjMi4uZjBkNGNlNCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZmlsZWFwaS9GaWxlTGlzdC5pZGwKKysrIGIvU291cmNl
L1dlYkNvcmUvZmlsZWFwaS9GaWxlTGlzdC5pZGwKQEAgLTI0LDExICsyNCwxMCBAQAogICovCiAK
IFsKLSAgICBJbmRleGVkR2V0dGVyLAogICAgIEpTTm9TdGF0aWNUYWJsZXMsCiAgICAgSW1wbGVt
ZW50YXRpb25MYWNrc1ZUYWJsZQogXSBpbnRlcmZhY2UgRmlsZUxpc3QgewogICAgIHJlYWRvbmx5
IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGxlbmd0aDsKLSAgICBGaWxlIGl0ZW0odW5zaWduZWQg
bG9uZyBpbmRleCk7CisgICAgZ2V0dGVyIEZpbGUgaXRlbSh1bnNpZ25lZCBsb25nIGluZGV4KTsK
IH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvRE9NU2V0dGFibGVUb2tlbkxp
c3QuaWRsIGIvU291cmNlL1dlYkNvcmUvaHRtbC9ET01TZXR0YWJsZVRva2VuTGlzdC5pZGwKaW5k
ZXggNjk0N2IxOS4uNTlkMGJlMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9ET01T
ZXR0YWJsZVRva2VuTGlzdC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9ET01TZXR0YWJs
ZVRva2VuTGlzdC5pZGwKQEAgLTIzLDEwICsyMywxMSBAQAogICovCiAKIFsKLSAgICBJbmRleGVk
R2V0dGVyLAogICAgIEpTR2VuZXJhdGVUb0pTT2JqZWN0LAogICAgIFNraXBWVGFibGVWYWxpZGF0
aW9uLAogXSBpbnRlcmZhY2UgRE9NU2V0dGFibGVUb2tlbkxpc3QgOiBET01Ub2tlbkxpc3Qgewog
ICAgIGF0dHJpYnV0ZSBET01TdHJpbmcgdmFsdWU7CisKKyAgICBbVHJlYXRSZXR1cm5lZE51bGxT
dHJpbmdBcz1OdWxsXSBnZXR0ZXIgRE9NU3RyaW5nICh1bnNpZ25lZCBsb25nIGluZGV4KTsKIH07
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvRE9NVG9rZW5MaXN0LmlkbCBiL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvRE9NVG9rZW5MaXN0LmlkbAppbmRleCBkNjdlMDBmLi41ODkzMTI5
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0RPTVRva2VuTGlzdC5pZGwKKysrIGIv
U291cmNlL1dlYkNvcmUvaHRtbC9ET01Ub2tlbkxpc3QuaWRsCkBAIC0yNCwxMSArMjQsMTAgQEAK
IAogWwogICAgIEdlbmVyYXRlSXNSZWFjaGFibGU9SW1wbEVsZW1lbnRSb290LAotICAgIEluZGV4
ZWRHZXR0ZXIsCiAgICAgU2tpcFZUYWJsZVZhbGlkYXRpb24KIF0gaW50ZXJmYWNlIERPTVRva2Vu
TGlzdCB7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgbGVuZ3RoOwotICAg
IFtUcmVhdFJldHVybmVkTnVsbFN0cmluZ0FzPU51bGxdIERPTVN0cmluZyBpdGVtKHVuc2lnbmVk
IGxvbmcgaW5kZXgpOworICAgIFtUcmVhdFJldHVybmVkTnVsbFN0cmluZ0FzPU51bGxdIGdldHRl
ciBET01TdHJpbmcgaXRlbSh1bnNpZ25lZCBsb25nIGluZGV4KTsKICAgICBbUmFpc2VzRXhjZXB0
aW9uXSBib29sZWFuIGNvbnRhaW5zKERPTVN0cmluZyB0b2tlbik7CiAgICAgW1JhaXNlc0V4Y2Vw
dGlvbl0gdm9pZCBhZGQoRE9NU3RyaW5nLi4uIHRva2Vucyk7CiAgICAgW1JhaXNlc0V4Y2VwdGlv
bl0gdm9pZCByZW1vdmUoRE9NU3RyaW5nLi4uIHRva2Vucyk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxBbGxDb2xsZWN0aW9uLmlkbCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTEFsbENvbGxlY3Rpb24uaWRsCmluZGV4IDYyZTkxM2UuLmE4ZTQ0MzQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEFsbENvbGxlY3Rpb24uaWRsCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTEFsbENvbGxlY3Rpb24uaWRsCkBAIC0yNCwxMyArMjQsMTIgQEAKICAq
LwogCiBbCi0gICAgSW5kZXhlZEdldHRlciwKICAgICBDdXN0b21DYWxsLAogICAgIE1hc3F1ZXJh
ZGVzQXNVbmRlZmluZWQsCiAgICAgR2VuZXJhdGVJc1JlYWNoYWJsZT1JbXBsT3duZXJOb2RlUm9v
dCwKIF0gaW50ZXJmYWNlIEhUTUxBbGxDb2xsZWN0aW9uIHsKICAgICByZWFkb25seSBhdHRyaWJ1
dGUgdW5zaWduZWQgbG9uZyBsZW5ndGg7Ci0gICAgW0N1c3RvbV0gTm9kZSBpdGVtKFtEZWZhdWx0
PVVuZGVmaW5lZF0gb3B0aW9uYWwgdW5zaWduZWQgbG9uZyBpbmRleCk7CisgICAgW0N1c3RvbV0g
Z2V0dGVyIE5vZGUgaXRlbShbRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIHVuc2lnbmVkIGxv
bmcgaW5kZXgpOwogICAgIFtDdXN0b21dIGdldHRlciBOb2RlIG5hbWVkSXRlbShET01TdHJpbmcg
bmFtZSk7CiAgICAgLy8gRklYTUU6IFRoaXMgc2hvdWxkIHJldHVybiBhbiBIVE1MQWxsQ29sbGVj
dGlvbi4KICAgICBOb2RlTGlzdCB0YWdzKERPTVN0cmluZyBuYW1lKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTENvbGxlY3Rpb24uaWRsIGIvU291cmNlL1dlYkNvcmUvaHRt
bC9IVE1MQ29sbGVjdGlvbi5pZGwKaW5kZXggNzE2ZjQyYi4uNjJjYjA1MCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MQ29sbGVjdGlvbi5pZGwKKysrIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MQ29sbGVjdGlvbi5pZGwKQEAgLTE5LDEzICsxOSwxMiBAQAogICovCiAKIFsK
LSAgICBJbmRleGVkR2V0dGVyLAogICAgIEN1c3RvbVRvSlNPYmplY3QsCiAgICAgR2VuZXJhdGVJ
c1JlYWNoYWJsZT1JbXBsT3duZXJOb2RlUm9vdCwKICAgICBPYmpDUG9seW1vcnBoaWMsCiBdIGlu
dGVyZmFjZSBIVE1MQ29sbGVjdGlvbiB7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVk
IGxvbmcgbGVuZ3RoOwotICAgIE5vZGUgaXRlbShbRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFs
IHVuc2lnbmVkIGxvbmcgaW5kZXgpOworICAgIGdldHRlciBOb2RlIGl0ZW0oW0RlZmF1bHQ9VW5k
ZWZpbmVkXSBvcHRpb25hbCB1bnNpZ25lZCBsb25nIGluZGV4KTsKICAgICBnZXR0ZXIgTm9kZSBu
YW1lZEl0ZW0oW0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRpb25hbCBET01TdHJpbmcgbmFtZSk7CiAK
ICNpZiBkZWZpbmVkKExBTkdVQUdFX09CSkVDVElWRV9DKSAmJiBMQU5HVUFHRV9PQkpFQ1RJVkVf
QwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUNvbnRyb2xzQ29sbGVj
dGlvbi5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtQ29udHJvbHNDb2xsZWN0aW9u
LmlkbAppbmRleCAwYzA0OTRlLi4zNzVkMjdmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0hUTUxGb3JtQ29udHJvbHNDb2xsZWN0aW9uLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0hUTUxGb3JtQ29udHJvbHNDb2xsZWN0aW9uLmlkbApAQCAtMTksOCArMTksOCBAQAogICov
CiAKIFsKLSAgICBJbmRleGVkR2V0dGVyLAogICAgIEdlbmVyYXRlSXNSZWFjaGFibGU9SW1wbE93
bmVyTm9kZVJvb3QsCiBdIGludGVyZmFjZSBIVE1MRm9ybUNvbnRyb2xzQ29sbGVjdGlvbiA6IEhU
TUxDb2xsZWN0aW9uIHsKKyAgICBnZXR0ZXIgTm9kZSAoW0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRp
b25hbCB1bnNpZ25lZCBsb25nIGluZGV4KTsKICAgICBbQ3VzdG9tXSBnZXR0ZXIgTm9kZSBuYW1l
ZEl0ZW0oW0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRpb25hbCBET01TdHJpbmcgbmFtZSk7CiB9Owpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUVsZW1lbnQuaWRsIGIvU291
cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUVsZW1lbnQuaWRsCmluZGV4IDg2YTZmNzQuLmE2MzJk
YmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1FbGVtZW50LmlkbAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtRWxlbWVudC5pZGwKQEAgLTE5LDcgKzE5
LDYgQEAKICAqLwogCiBbCi0gICAgSW5kZXhlZEdldHRlciwKICAgICBDdXN0b21OYW1lZEdldHRl
cgogXSBpbnRlcmZhY2UgSFRNTEZvcm1FbGVtZW50IDogSFRNTEVsZW1lbnQgewogICAgIFtSZWZs
ZWN0PWFjY2VwdF9jaGFyc2V0XSBhdHRyaWJ1dGUgRE9NU3RyaW5nIGFjY2VwdENoYXJzZXQ7CkBA
IC0zNSw2ICszNCw4IEBACiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIEhUTUxDb2xsZWN0aW9uIGVs
ZW1lbnRzOwogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBsb25nIGxlbmd0aDsKIAorICAgIGdldHRl
ciBFbGVtZW50ICh1bnNpZ25lZCBsb25nIGluZGV4KTsKKwogI2lmIGRlZmluZWQoTEFOR1VBR0Vf
SkFWQVNDUklQVCkgJiYgTEFOR1VBR0VfSkFWQVNDUklQVAogICAgIFtJbXBsZW1lbnRlZEFzPXN1
Ym1pdEZyb21KYXZhU2NyaXB0XSB2b2lkIHN1Ym1pdCgpOwogI2Vsc2UKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTFByb3BlcnRpZXNDb2xsZWN0aW9uLmlkbCBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTFByb3BlcnRpZXNDb2xsZWN0aW9uLmlkbAppbmRleCA0OWFmNGVmLi4z
OTJmYjk0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxQcm9wZXJ0aWVzQ29s
bGVjdGlvbi5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MUHJvcGVydGllc0NvbGxl
Y3Rpb24uaWRsCkBAIC0zMSwxMCArMzEsOSBAQAogWwogICAgIENvbmRpdGlvbmFsPU1JQ1JPREFU
QSwKICAgICBKU0dlbmVyYXRlVG9KU09iamVjdCwKLSAgICBJbmRleGVkR2V0dGVyCiBdIGludGVy
ZmFjZSBIVE1MUHJvcGVydGllc0NvbGxlY3Rpb24gOiBIVE1MQ29sbGVjdGlvbiB7CiAgICAgcmVh
ZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgbGVuZ3RoOwotICAgIE5vZGUgaXRlbSh1bnNp
Z25lZCBsb25nIGluZGV4KTsKKyAgICBnZXR0ZXIgTm9kZSBpdGVtKHVuc2lnbmVkIGxvbmcgaW5k
ZXgpOwogCiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZ0xpc3QgbmFtZXM7CiAgICAg
W0ltcGxlbWVudGVkQXM9cHJvcGVydHlOb2RlTGlzdF0gZ2V0dGVyIFByb3BlcnR5Tm9kZUxpc3Qg
bmFtZWRJdGVtKERPTVN0cmluZyBuYW1lKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTFNlbGVjdEVsZW1lbnQuaWRsIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MU2VsZWN0
RWxlbWVudC5pZGwKaW5kZXggMjRlNzY0Zi4uNmM3ZGNlZCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvaHRtbC9IVE1MU2VsZWN0RWxlbWVudC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvaHRt
bC9IVE1MU2VsZWN0RWxlbWVudC5pZGwKQEAgLTE5LDcgKzE5LDYgQEAKICAqLwogCiBbCi0gICAg
SW5kZXhlZEdldHRlciwKICAgICBDdXN0b21JbmRleGVkU2V0dGVyLAogXSBpbnRlcmZhY2UgSFRN
TFNlbGVjdEVsZW1lbnQgOiBIVE1MRWxlbWVudCB7CiAgICAgYXR0cmlidXRlIFtSZWZsZWN0XSBi
b29sZWFuIGF1dG9mb2N1czsKQEAgLTQwLDcgKzM5LDcgQEAKICNlbHNlCiAgICAgW1NldHRlclJh
aXNlc0V4Y2VwdGlvbl0gYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgbGVuZ3RoOwogI2VuZGlmCi0g
ICAgTm9kZSBpdGVtKFtJc0luZGV4LERlZmF1bHQ9VW5kZWZpbmVkXSBvcHRpb25hbCB1bnNpZ25l
ZCBsb25nIGluZGV4KTsKKyAgICBnZXR0ZXIgTm9kZSBpdGVtKFtJc0luZGV4LERlZmF1bHQ9VW5k
ZWZpbmVkXSBvcHRpb25hbCB1bnNpZ25lZCBsb25nIGluZGV4KTsKICAgICBOb2RlIG5hbWVkSXRl
bShbRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIERPTVN0cmluZyBuYW1lKTsKICAgICBbT2Jq
Q0xlZ2FjeVVubmFtZWRQYXJhbWV0ZXJzLCBSYWlzZXNFeGNlcHRpb25dIHZvaWQgYWRkKFtEZWZh
dWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgSFRNTEVsZW1lbnQgZWxlbWVudCwKICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBbRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIEhUTUxFbGVtZW50
IGJlZm9yZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL1JhZGlvTm9kZUxpc3Qu
aWRsIGIvU291cmNlL1dlYkNvcmUvaHRtbC9SYWRpb05vZGVMaXN0LmlkbAppbmRleCAyMDAxMTZk
Li42ZTM0OGU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL1JhZGlvTm9kZUxpc3Qu
aWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvUmFkaW9Ob2RlTGlzdC5pZGwKQEAgLTI2LDcg
KzI2LDggQEAKIFsKICAgICBOb0ludGVyZmFjZU9iamVjdCwKICAgICBKU0dlbmVyYXRlVG9KU09i
amVjdCwKLSAgICBJbmRleGVkR2V0dGVyLAogXSBpbnRlcmZhY2UgUmFkaW9Ob2RlTGlzdCA6IE5v
ZGVMaXN0IHsKICAgICBhdHRyaWJ1dGUgRE9NU3RyaW5nIHZhbHVlOworCisgICAgZ2V0dGVyIE5v
ZGUgKFtJc0luZGV4LERlZmF1bHQ9VW5kZWZpbmVkXSBvcHRpb25hbCB1bnNpZ25lZCBsb25nIGlu
ZGV4KTsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9GbG9hdDMy
QXJyYXkuaWRsIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvRmxvYXQzMkFycmF5LmlkbApp
bmRleCBmYTAxYzk4Li5lYTBjYzE1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2Nh
bnZhcy9GbG9hdDMyQXJyYXkuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL0Zs
b2F0MzJBcnJheS5pZGwKQEAgLTI3LDcgKzI3LDYgQEAKIFsKICAgICBHbG9iYWxDb250ZXh0PVdp
bmRvd0FuZFdvcmtlciwKICAgICBDb25zdHJ1Y3RvclRlbXBsYXRlPVR5cGVkQXJyYXksCi0gICAg
TnVtZXJpY0luZGV4ZWRHZXR0ZXIsCiAgICAgQ3VzdG9tSW5kZXhlZFNldHRlciwKICAgICBKU0dl
bmVyYXRlVG9OYXRpdmVPYmplY3QsCiAgICAgSlNOb1N0YXRpY1RhYmxlcywKQEAgLTQyLDYgKzQx
LDggQEAKICAgICBGbG9hdDMyQXJyYXkgc3ViYXJyYXkoW0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRp
b25hbCBsb25nIHN0YXJ0LCAKICAgICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9uYWwgbG9u
ZyBlbmQpOwogCisgICAgZ2V0dGVyIGZsb2F0ICh1bnNpZ25lZCBsb25nIGluZGV4KTsKKwogICAg
IC8vIHZvaWQgc2V0KEZsb2F0MzJBcnJheSBhcnJheSwgb3B0aW9uYWwgdW5zaWduZWQgbG9uZyBv
ZmZzZXQpOwogICAgIC8vIHZvaWQgc2V0KHNlcXVlbmNlPGxvbmc+IGFycmF5LCBvcHRpb25hbCB1
bnNpZ25lZCBsb25nIG9mZnNldCk7CiAgICAgdm9pZCBzZXQoKTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvY2FudmFzL0Zsb2F0NjRBcnJheS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9o
dG1sL2NhbnZhcy9GbG9hdDY0QXJyYXkuaWRsCmluZGV4IGM5NWJlMTMuLjE2OGQyYzkgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL0Zsb2F0NjRBcnJheS5pZGwKKysrIGIv
U291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvRmxvYXQ2NEFycmF5LmlkbApAQCAtMjcsNyArMjcs
NiBAQAogWwogICAgIEdsb2JhbENvbnRleHQ9V2luZG93QW5kV29ya2VyLAogICAgIENvbnN0cnVj
dG9yVGVtcGxhdGU9VHlwZWRBcnJheSwKLSAgICBOdW1lcmljSW5kZXhlZEdldHRlciwKICAgICBD
dXN0b21JbmRleGVkU2V0dGVyLAogICAgIEpTR2VuZXJhdGVUb05hdGl2ZU9iamVjdCwKICAgICBK
U05vU3RhdGljVGFibGVzLApAQCAtNDIsNiArNDEsOCBAQAogICAgIEZsb2F0NjRBcnJheSBzdWJh
cnJheShbRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIGxvbmcgc3RhcnQsIAogICAgICAgICAg
ICAgICAgICAgICAgICAgICBvcHRpb25hbCBsb25nIGVuZCk7CiAKKyAgICBnZXR0ZXIgZG91Ymxl
ICh1bnNpZ25lZCBsb25nIGluZGV4KTsKKwogICAgIC8vIHZvaWQgc2V0KEZsb2F0NjRBcnJheSBh
cnJheSwgb3B0aW9uYWwgdW5zaWduZWQgbG9uZyBvZmZzZXQpOwogICAgIC8vIHZvaWQgc2V0KHNl
cXVlbmNlPGxvbmc+IGFycmF5LCBvcHRpb25hbCB1bnNpZ25lZCBsb25nIG9mZnNldCk7CiAgICAg
dm9pZCBzZXQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL0ludDE2
QXJyYXkuaWRsIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvSW50MTZBcnJheS5pZGwKaW5k
ZXggYzc2NTE5YS4uYmM0NGZkOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52
YXMvSW50MTZBcnJheS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvSW50MTZB
cnJheS5pZGwKQEAgLTI2LDcgKzI2LDYgQEAKIFsKICAgICBHbG9iYWxDb250ZXh0PVdpbmRvd0Fu
ZFdvcmtlciwKICAgICBDb25zdHJ1Y3RvclRlbXBsYXRlPVR5cGVkQXJyYXksCi0gICAgTnVtZXJp
Y0luZGV4ZWRHZXR0ZXIsCiAgICAgQ3VzdG9tSW5kZXhlZFNldHRlciwKICAgICBKU0dlbmVyYXRl
VG9OYXRpdmVPYmplY3QsCiAgICAgSlNOb1N0YXRpY1RhYmxlcywKQEAgLTQxLDYgKzQwLDggQEAK
ICAgICBJbnQxNkFycmF5IHN1YmFycmF5KFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgbG9u
ZyBzdGFydCwgCiAgICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25hbCBsb25nIGVuZCk7CiAK
KyAgICBnZXR0ZXIgc2hvcnQgKHVuc2lnbmVkIGxvbmcgaW5kZXgpOworCiAgICAgLy8gdm9pZCBz
ZXQoSW50MTZBcnJheSBhcnJheSwgb3B0aW9uYWwgdW5zaWduZWQgbG9uZyBvZmZzZXQpOwogICAg
IC8vIHZvaWQgc2V0KHNlcXVlbmNlPGxvbmc+IGFycmF5LCBvcHRpb25hbCB1bnNpZ25lZCBsb25n
IG9mZnNldCk7CiAgICAgdm9pZCBzZXQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvY2FudmFzL0ludDMyQXJyYXkuaWRsIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvSW50
MzJBcnJheS5pZGwKaW5kZXggMWVlNDQxYy4uNmZmN2I4MCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvaHRtbC9jYW52YXMvSW50MzJBcnJheS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvaHRt
bC9jYW52YXMvSW50MzJBcnJheS5pZGwKQEAgLTI3LDcgKzI3LDYgQEAKIFsKICAgICBHbG9iYWxD
b250ZXh0PVdpbmRvd0FuZFdvcmtlciwKICAgICBDb25zdHJ1Y3RvclRlbXBsYXRlPVR5cGVkQXJy
YXksCi0gICAgTnVtZXJpY0luZGV4ZWRHZXR0ZXIsCiAgICAgQ3VzdG9tSW5kZXhlZFNldHRlciwK
ICAgICBKU0dlbmVyYXRlVG9OYXRpdmVPYmplY3QsCiAgICAgSlNOb1N0YXRpY1RhYmxlcywKQEAg
LTQyLDYgKzQxLDggQEAKICAgICBJbnQzMkFycmF5IHN1YmFycmF5KFtEZWZhdWx0PVVuZGVmaW5l
ZF0gb3B0aW9uYWwgbG9uZyBzdGFydCwgCiAgICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25h
bCBsb25nIGVuZCk7CiAKKyAgICBnZXR0ZXIgbG9uZyAodW5zaWduZWQgbG9uZyBpbmRleCk7CisK
ICAgICAvLyB2b2lkIHNldChJbnQzMkFycmF5IGFycmF5LCBvcHRpb25hbCB1bnNpZ25lZCBsb25n
IG9mZnNldCk7CiAgICAgLy8gdm9pZCBzZXQoc2VxdWVuY2U8bG9uZz4gYXJyYXksIG9wdGlvbmFs
IHVuc2lnbmVkIGxvbmcgb2Zmc2V0KTsKICAgICB2b2lkIHNldCgpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvSW50OEFycmF5LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2h0
bWwvY2FudmFzL0ludDhBcnJheS5pZGwKaW5kZXggMDM1ZThjNC4uZDM3YzMxYiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvSW50OEFycmF5LmlkbAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL2NhbnZhcy9JbnQ4QXJyYXkuaWRsCkBAIC0yNyw3ICsyNyw2IEBACiBbCiAg
ICAgR2xvYmFsQ29udGV4dD1XaW5kb3dBbmRXb3JrZXIsCiAgICAgQ29uc3RydWN0b3JUZW1wbGF0
ZT1UeXBlZEFycmF5LAotICAgIE51bWVyaWNJbmRleGVkR2V0dGVyLAogICAgIEN1c3RvbUluZGV4
ZWRTZXR0ZXIsCiAgICAgSlNHZW5lcmF0ZVRvTmF0aXZlT2JqZWN0LAogICAgIEpTTm9TdGF0aWNU
YWJsZXMsCkBAIC00Miw2ICs0MSw4IEBACiAgICAgSW50OEFycmF5IHN1YmFycmF5KFtEZWZhdWx0
PVVuZGVmaW5lZF0gb3B0aW9uYWwgbG9uZyBzdGFydCwgCiAgICAgICAgICAgICAgICAgICAgICAg
IG9wdGlvbmFsIGxvbmcgZW5kKTsKIAorICAgIGdldHRlciBieXRlICh1bnNpZ25lZCBsb25nIGlu
ZGV4KTsKKwogICAgIC8vIHZvaWQgc2V0KEludDhBcnJheSBhcnJheSwgb3B0aW9uYWwgdW5zaWdu
ZWQgbG9uZyBvZmZzZXQpOwogICAgIC8vIHZvaWQgc2V0KHNlcXVlbmNlPGxvbmc+IGFycmF5LCBv
cHRpb25hbCB1bnNpZ25lZCBsb25nIG9mZnNldCk7CiAgICAgdm9pZCBzZXQoKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1VpbnQxNkFycmF5LmlkbCBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvY2FudmFzL1VpbnQxNkFycmF5LmlkbAppbmRleCAwNmM4ZDVkLi5hNDgyNzI4
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9VaW50MTZBcnJheS5pZGwK
KysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvVWludDE2QXJyYXkuaWRsCkBAIC0yNyw3
ICsyNyw2IEBACiBbCiAgICAgR2xvYmFsQ29udGV4dD1XaW5kb3dBbmRXb3JrZXIsCiAgICAgQ29u
c3RydWN0b3JUZW1wbGF0ZT1UeXBlZEFycmF5LAotICAgIE51bWVyaWNJbmRleGVkR2V0dGVyLAog
ICAgIEN1c3RvbUluZGV4ZWRTZXR0ZXIsCiAgICAgSlNHZW5lcmF0ZVRvTmF0aXZlT2JqZWN0LAog
ICAgIEpTTm9TdGF0aWNUYWJsZXMsCkBAIC00MSw2ICs0MCw4IEBACiAgICAgcmVhZG9ubHkgYXR0
cmlidXRlIHVuc2lnbmVkIGxvbmcgbGVuZ3RoOwogICAgIFVpbnQxNkFycmF5IHN1YmFycmF5KFtE
ZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgbG9uZyBzdGFydCwgb3B0aW9uYWwgbG9uZyBlbmQp
OwogCisgICAgZ2V0dGVyIHVuc2lnbmVkIHNob3J0ICh1bnNpZ25lZCBsb25nIGluZGV4KTsKKwog
ICAgIC8vIHZvaWQgc2V0KFVpbnQxNkFycmF5IGFycmF5LCBvcHRpb25hbCB1bnNpZ25lZCBsb25n
IG9mZnNldCk7CiAgICAgLy8gdm9pZCBzZXQoc2VxdWVuY2U8bG9uZz4gYXJyYXksIG9wdGlvbmFs
IHVuc2lnbmVkIGxvbmcgb2Zmc2V0KTsKICAgICB2b2lkIHNldCgpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvVWludDMyQXJyYXkuaWRsIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9jYW52YXMvVWludDMyQXJyYXkuaWRsCmluZGV4IDc3NWNjMjQuLjQ2NzAyMWUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1VpbnQzMkFycmF5LmlkbAorKysgYi9T
b3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9VaW50MzJBcnJheS5pZGwKQEAgLTI3LDcgKzI3LDYg
QEAKIFsKICAgICBHbG9iYWxDb250ZXh0PVdpbmRvd0FuZFdvcmtlciwKICAgICBDb25zdHJ1Y3Rv
clRlbXBsYXRlPVR5cGVkQXJyYXksCi0gICAgTnVtZXJpY0luZGV4ZWRHZXR0ZXIsCiAgICAgQ3Vz
dG9tSW5kZXhlZFNldHRlciwKICAgICBKU0dlbmVyYXRlVG9OYXRpdmVPYmplY3QsCiAgICAgSlNO
b1N0YXRpY1RhYmxlcywKQEAgLTQxLDYgKzQwLDggQEAKICAgICByZWFkb25seSBhdHRyaWJ1dGUg
dW5zaWduZWQgbG9uZyBsZW5ndGg7CiAgICAgVWludDMyQXJyYXkgc3ViYXJyYXkoW0RlZmF1bHQ9
VW5kZWZpbmVkXSBvcHRpb25hbCBsb25nIHN0YXJ0LCBvcHRpb25hbCBsb25nIGVuZCk7CiAKKyAg
ICBnZXR0ZXIgdW5zaWduZWQgbG9uZyAodW5zaWduZWQgbG9uZyBpbmRleCk7CisKICAgICAvLyB2
b2lkIHNldChVaW50MzJBcnJheSBhcnJheSwgb3B0aW9uYWwgdW5zaWduZWQgbG9uZyBvZmZzZXQp
OwogICAgIC8vIHZvaWQgc2V0KHNlcXVlbmNlPGxvbmc+IGFycmF5LCBvcHRpb25hbCB1bnNpZ25l
ZCBsb25nIG9mZnNldCk7CiAgICAgdm9pZCBzZXQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2h0bWwvY2FudmFzL1VpbnQ4QXJyYXkuaWRsIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52
YXMvVWludDhBcnJheS5pZGwKaW5kZXggM2E0MTdhNS4uZmQ1ZTc0MCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvVWludDhBcnJheS5pZGwKKysrIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9jYW52YXMvVWludDhBcnJheS5pZGwKQEAgLTI3LDcgKzI3LDYgQEAKIFsKICAgICBH
bG9iYWxDb250ZXh0PVdpbmRvd0FuZFdvcmtlciwKICAgICBDb25zdHJ1Y3RvclRlbXBsYXRlPVR5
cGVkQXJyYXksCi0gICAgTnVtZXJpY0luZGV4ZWRHZXR0ZXIsCiAgICAgQ3VzdG9tSW5kZXhlZFNl
dHRlciwKICAgICBKU0dlbmVyYXRlVG9OYXRpdmVPYmplY3QsCiAgICAgSlNOb1N0YXRpY1RhYmxl
cywKQEAgLTQxLDYgKzQwLDggQEAKICAgICByZWFkb25seSBhdHRyaWJ1dGUgdW5zaWduZWQgbG9u
ZyBsZW5ndGg7CiAgICAgVWludDhBcnJheSBzdWJhcnJheShbRGVmYXVsdD1VbmRlZmluZWRdIG9w
dGlvbmFsIGxvbmcgc3RhcnQsIG9wdGlvbmFsIGxvbmcgZW5kKTsKIAorICAgIGdldHRlciBvY3Rl
dCAodW5zaWduZWQgbG9uZyBpbmRleCk7CisKICAgICAvLyB2b2lkIHNldChVaW50OEFycmF5IGFy
cmF5LCBvcHRpb25hbCB1bnNpZ25lZCBsb25nIG9mZnNldCk7CiAgICAgLy8gdm9pZCBzZXQoc2Vx
dWVuY2U8bG9uZz4gYXJyYXksIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcgb2Zmc2V0KTsKICAgICB2
b2lkIHNldCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvVWludDhD
bGFtcGVkQXJyYXkuaWRsIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvVWludDhDbGFtcGVk
QXJyYXkuaWRsCmluZGV4IDM0NmRkMWYuLjhlODIzZDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2h0bWwvY2FudmFzL1VpbnQ4Q2xhbXBlZEFycmF5LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL2NhbnZhcy9VaW50OENsYW1wZWRBcnJheS5pZGwKQEAgLTI3LDcgKzI3LDYgQEAKIFsK
ICAgICBHbG9iYWxDb250ZXh0PVdpbmRvd0FuZFdvcmtlciwKICAgICBDb25zdHJ1Y3RvclRlbXBs
YXRlPVR5cGVkQXJyYXksCi0gICAgTnVtZXJpY0luZGV4ZWRHZXR0ZXIsCiAgICAgQ3VzdG9tSW5k
ZXhlZFNldHRlciwKICAgICBKU0dlbmVyYXRlVG9OYXRpdmVPYmplY3QsCiAgICAgSlNOb1N0YXRp
Y1RhYmxlcywKQEAgLTQxLDYgKzQwLDggQEAKICAgICByZWFkb25seSBhdHRyaWJ1dGUgdW5zaWdu
ZWQgbG9uZyBsZW5ndGg7CiAgICAgVWludDhDbGFtcGVkQXJyYXkgc3ViYXJyYXkoW0RlZmF1bHQ9
VW5kZWZpbmVkXSBvcHRpb25hbCBsb25nIHN0YXJ0LCBvcHRpb25hbCBsb25nIGVuZCk7CiAKKyAg
ICBnZXR0ZXIgb2N0ZXQgKHVuc2lnbmVkIGxvbmcgaW5kZXgpOworCiAgICAgLy8gRklYTUU6IE1p
c3Npbmcgb3RoZXIgc2V0dGVycyEKICAgICAvLyB2b2lkIHNldChVaW50OENsYW1wZWRBcnJheSBh
cnJheSwgb3B0aW9uYWwgdW5zaWduZWQgbG9uZyBvZmZzZXQpOwogICAgIC8vIHZvaWQgc2V0KHNl
cXVlbmNlPGxvbmc+IGFycmF5LCBvcHRpb25hbCB1bnNpZ25lZCBsb25nIG9mZnNldCk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL0F1ZGlvVHJhY2tMaXN0LmlkbCBiL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svQXVkaW9UcmFja0xpc3QuaWRsCmluZGV4IGQ1MjcxNjIu
LmUxOTVmYTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svQXVkaW9UcmFj
a0xpc3QuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svQXVkaW9UcmFja0xpc3Qu
aWRsCkBAIC0yNywxMiArMjcsMTEgQEAKICAgICBOb0ludGVyZmFjZU9iamVjdCwKICAgICBDb25k
aXRpb25hbD1WSURFT19UUkFDSywKICAgICBHZW5lcmF0ZUlzUmVhY2hhYmxlPUltcGxFbGVtZW50
Um9vdCwKLSAgICBJbmRleGVkR2V0dGVyLAogICAgIEV2ZW50VGFyZ2V0LAogICAgIEpTQ3VzdG9t
TWFya0Z1bmN0aW9uCiBdIGludGVyZmFjZSBBdWRpb1RyYWNrTGlzdCB7CiAgICAgcmVhZG9ubHkg
YXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgbGVuZ3RoOwotICAgIEF1ZGlvVHJhY2sgaXRlbSh1bnNp
Z25lZCBsb25nIGluZGV4KTsKKyAgICBnZXR0ZXIgQXVkaW9UcmFjayBpdGVtKHVuc2lnbmVkIGxv
bmcgaW5kZXgpOwogICAgIEF1ZGlvVHJhY2sgZ2V0VHJhY2tCeUlkKERPTVN0cmluZyBpZCk7CiAK
ICAgICBhdHRyaWJ1dGUgRXZlbnRMaXN0ZW5lciBvbmNoYW5nZTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrQ3VlTGlzdC5pZGwgYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL3RyYWNrL1RleHRUcmFja0N1ZUxpc3QuaWRsCmluZGV4IDk1OTQ3NTguLjA4MDI1OTIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrQ3VlTGlzdC5p
ZGwKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UZXh0VHJhY2tDdWVMaXN0LmlkbApA
QCAtMjUsMTEgKzI1LDEwIEBACiAKIFsKICAgICBDb25kaXRpb25hbD1WSURFT19UUkFDSywKLSAg
ICBJbmRleGVkR2V0dGVyLAogICAgIEltcGxlbWVudGF0aW9uTGFja3NWVGFibGUKIF0gaW50ZXJm
YWNlIFRleHRUcmFja0N1ZUxpc3QgewogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBs
b25nIGxlbmd0aDsKLSAgICBUZXh0VHJhY2tDdWUgaXRlbSh1bnNpZ25lZCBsb25nIGluZGV4KTsK
KyAgICBnZXR0ZXIgVGV4dFRyYWNrQ3VlIGl0ZW0odW5zaWduZWQgbG9uZyBpbmRleCk7CiAgICAg
VGV4dFRyYWNrQ3VlIGdldEN1ZUJ5SWQoRE9NU3RyaW5nIGlkKTsKIH07CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrTGlzdC5pZGwgYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL3RyYWNrL1RleHRUcmFja0xpc3QuaWRsCmluZGV4IGQ5ZDVkMzIuLjAxYjBhMzUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrTGlzdC5pZGwK
KysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UZXh0VHJhY2tMaXN0LmlkbApAQCAtMjYs
MTIgKzI2LDExIEBACiBbCiAgICAgQ29uZGl0aW9uYWw9VklERU9fVFJBQ0ssCiAgICAgR2VuZXJh
dGVJc1JlYWNoYWJsZT1JbXBsRWxlbWVudFJvb3QsCi0gICAgSW5kZXhlZEdldHRlciwKICAgICBF
dmVudFRhcmdldCwKICAgICBKU0N1c3RvbU1hcmtGdW5jdGlvbgogXSBpbnRlcmZhY2UgVGV4dFRy
YWNrTGlzdCB7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgbGVuZ3RoOwot
ICAgIFRleHRUcmFjayBpdGVtKHVuc2lnbmVkIGxvbmcgaW5kZXgpOworICAgIGdldHRlciBUZXh0
VHJhY2sgaXRlbSh1bnNpZ25lZCBsb25nIGluZGV4KTsKIAogICAgIGF0dHJpYnV0ZSBFdmVudExp
c3RlbmVyIG9uYWRkdHJhY2s7CiAgICAgYXR0cmlidXRlIEV2ZW50TGlzdGVuZXIgb25yZW1vdmV0
cmFjazsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrUmVn
aW9uTGlzdC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RleHRUcmFja1JlZ2lvbkxp
c3QuaWRsCmluZGV4IGI1MmExNzQuLjg4MDRhNTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvdHJhY2svVGV4dFRyYWNrUmVnaW9uTGlzdC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUv
aHRtbC90cmFjay9UZXh0VHJhY2tSZWdpb25MaXN0LmlkbApAQCAtMjYsMTEgKzI2LDEwIEBACiBb
CiAgICAgTm9JbnRlcmZhY2VPYmplY3QsCiAgICAgQ29uZGl0aW9uYWw9VklERU9fVFJBQ0sgJiBX
RUJWVFRfUkVHSU9OUywKLSAgICBJbmRleGVkR2V0dGVyLAogICAgIEltcGxlbWVudGF0aW9uTGFj
a3NWVGFibGUKIF0gaW50ZXJmYWNlIFRleHRUcmFja1JlZ2lvbkxpc3QgewogICAgIHJlYWRvbmx5
IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGxlbmd0aDsKLSAgICBUZXh0VHJhY2tSZWdpb24gaXRl
bSh1bnNpZ25lZCBsb25nIGluZGV4KTsKKyAgICBnZXR0ZXIgVGV4dFRyYWNrUmVnaW9uIGl0ZW0o
dW5zaWduZWQgbG9uZyBpbmRleCk7CiAgICAgVGV4dFRyYWNrUmVnaW9uIGdldFJlZ2lvbkJ5SWQo
RE9NU3RyaW5nIGlkKTsKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJh
Y2svVmlkZW9UcmFja0xpc3QuaWRsIGIvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9WaWRlb1Ry
YWNrTGlzdC5pZGwKaW5kZXggZTI4ZDg3Ny4uOTAyZjUxNiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvaHRtbC90cmFjay9WaWRlb1RyYWNrTGlzdC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUv
aHRtbC90cmFjay9WaWRlb1RyYWNrTGlzdC5pZGwKQEAgLTI3LDEyICsyNywxMSBAQAogICAgIE5v
SW50ZXJmYWNlT2JqZWN0LAogICAgIENvbmRpdGlvbmFsPVZJREVPX1RSQUNLLAogICAgIEdlbmVy
YXRlSXNSZWFjaGFibGU9SW1wbEVsZW1lbnRSb290LAotICAgIEluZGV4ZWRHZXR0ZXIsCiAgICAg
RXZlbnRUYXJnZXQsCiAgICAgSlNDdXN0b21NYXJrRnVuY3Rpb24KIF0gaW50ZXJmYWNlIFZpZGVv
VHJhY2tMaXN0IHsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgdW5zaWduZWQgbG9uZyBsZW5ndGg7
Ci0gICAgVmlkZW9UcmFjayBpdGVtKHVuc2lnbmVkIGxvbmcgaW5kZXgpOworICAgIGdldHRlciBW
aWRlb1RyYWNrIGl0ZW0odW5zaWduZWQgbG9uZyBpbmRleCk7CiAgICAgVmlkZW9UcmFjayBnZXRU
cmFja0J5SWQoRE9NU3RyaW5nIGlkKTsKIAogICAgIGF0dHJpYnV0ZSBFdmVudExpc3RlbmVyIG9u
Y2hhbmdlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5
TGlzdC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnlMaXN0LmlkbApp
bmRleCBhYjcwYjc0Li40ZGM5ZWJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1Bl
cmZvcm1hbmNlRW50cnlMaXN0LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1h
bmNlRW50cnlMaXN0LmlkbApAQCAtMzMsMTAgKzMzLDkgQEAKICAgICBOb0ludGVyZmFjZU9iamVj
dCwKICAgICBDb25kaXRpb25hbD1XRUJfVElNSU5HLAogICAgIENvbmRpdGlvbmFsPVBFUkZPUk1B
TkNFX1RJTUVMSU5FLAotICAgIEluZGV4ZWRHZXR0ZXIsCiAgICAgSW1wbGVtZW50YXRpb25MYWNr
c1ZUYWJsZQogXSBpbnRlcmZhY2UgUGVyZm9ybWFuY2VFbnRyeUxpc3QgewogICAgIHJlYWRvbmx5
IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGxlbmd0aDsKLSAgICBQZXJmb3JtYW5jZUVudHJ5IGl0
ZW0odW5zaWduZWQgbG9uZyBpbmRleCk7CisgICAgZ2V0dGVyIFBlcmZvcm1hbmNlRW50cnkgaXRl
bSh1bnNpZ25lZCBsb25nIGluZGV4KTsKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvU3BlZWNoSW5wdXRSZXN1bHRMaXN0LmlkbCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU3Bl
ZWNoSW5wdXRSZXN1bHRMaXN0LmlkbAppbmRleCBmOWRjZjM0Li40Y2YyOWVhIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NwZWVjaElucHV0UmVzdWx0TGlzdC5pZGwKKysrIGIvU291
cmNlL1dlYkNvcmUvcGFnZS9TcGVlY2hJbnB1dFJlc3VsdExpc3QuaWRsCkBAIC0yNSwxMSArMjUs
MTAgQEAKIAogWwogICAgIE5vSW50ZXJmYWNlT2JqZWN0LAotICAgIEluZGV4ZWRHZXR0ZXIsCiAg
ICAgQ29uZGl0aW9uYWw9SU5QVVRfU1BFRUNILAogICAgIEltcGxlbWVudGF0aW9uTGFja3NWVGFi
bGUKIF0gaW50ZXJmYWNlIFNwZWVjaElucHV0UmVzdWx0TGlzdCB7CiAgICAgcmVhZG9ubHkgYXR0
cmlidXRlIHVuc2lnbmVkIGxvbmcgbGVuZ3RoOwotICAgIFNwZWVjaElucHV0UmVzdWx0IGl0ZW0o
W0lzSW5kZXhdIHVuc2lnbmVkIGxvbmcgaW5kZXgpOworICAgIGdldHRlciBTcGVlY2hJbnB1dFJl
c3VsdCBpdGVtKFtJc0luZGV4XSB1bnNpZ25lZCBsb25nIGluZGV4KTsKIH07CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsdWdpbnMvRE9NTWltZVR5cGVBcnJheS5pZGwgYi9Tb3VyY2Uv
V2ViQ29yZS9wbHVnaW5zL0RPTU1pbWVUeXBlQXJyYXkuaWRsCmluZGV4IDQ2NjczNDQuLjljZTUy
YjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsdWdpbnMvRE9NTWltZVR5cGVBcnJheS5p
ZGwKKysrIGIvU291cmNlL1dlYkNvcmUvcGx1Z2lucy9ET01NaW1lVHlwZUFycmF5LmlkbApAQCAt
MjAsMTEgKzIwLDEwIEBACiAKIFsKICAgICBHZW5lcmF0ZUlzUmVhY2hhYmxlPUltcGxGcmFtZSwK
LSAgICBJbmRleGVkR2V0dGVyLAogICAgIEludGVyZmFjZU5hbWU9TWltZVR5cGVBcnJheQogXSBp
bnRlcmZhY2UgRE9NTWltZVR5cGVBcnJheSB7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2ln
bmVkIGxvbmcgbGVuZ3RoOwotICAgIERPTU1pbWVUeXBlIGl0ZW0oW0RlZmF1bHQ9VW5kZWZpbmVk
XSBvcHRpb25hbCB1bnNpZ25lZCBsb25nIGluZGV4KTsKKyAgICBnZXR0ZXIgRE9NTWltZVR5cGUg
aXRlbShbRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcgaW5kZXgpOwog
ICAgIGdldHRlciBET01NaW1lVHlwZSBuYW1lZEl0ZW0oW0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRp
b25hbCBET01TdHJpbmcgbmFtZSk7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bHVnaW5zL0RPTVBsdWdpbi5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9wbHVnaW5zL0RPTVBsdWdpbi5p
ZGwKaW5kZXggZjRhYzQ1Yy4uMDhlNGE4NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGx1
Z2lucy9ET01QbHVnaW4uaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsdWdpbnMvRE9NUGx1Z2lu
LmlkbApAQCAtMTksMTQgKzE5LDEzIEBACiAqLwogCiBbCi0gICAgSW5kZXhlZEdldHRlciwKICAg
ICBJbnRlcmZhY2VOYW1lPVBsdWdpbgogXSBpbnRlcmZhY2UgRE9NUGx1Z2luIHsKICAgICByZWFk
b25seSBhdHRyaWJ1dGUgRE9NU3RyaW5nIG5hbWU7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERP
TVN0cmluZyBmaWxlbmFtZTsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgRE9NU3RyaW5nIGRlc2Ny
aXB0aW9uOwogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGxlbmd0aDsKLSAg
ICBET01NaW1lVHlwZSBpdGVtKFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgdW5zaWduZWQg
bG9uZyBpbmRleCk7CisgICAgZ2V0dGVyIERPTU1pbWVUeXBlIGl0ZW0oW0RlZmF1bHQ9VW5kZWZp
bmVkXSBvcHRpb25hbCB1bnNpZ25lZCBsb25nIGluZGV4KTsKICAgICBnZXR0ZXIgRE9NTWltZVR5
cGUgbmFtZWRJdGVtKFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgRE9NU3RyaW5nIG5hbWUp
OwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGx1Z2lucy9ET01QbHVnaW5BcnJh
eS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9wbHVnaW5zL0RPTVBsdWdpbkFycmF5LmlkbAppbmRleCBi
NWEwZmEzLi40YjNhNGFkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbHVnaW5zL0RPTVBs
dWdpbkFycmF5LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbHVnaW5zL0RPTVBsdWdpbkFycmF5
LmlkbApAQCAtMjAsMTEgKzIwLDEwIEBACiAKIFsKICAgICBHZW5lcmF0ZUlzUmVhY2hhYmxlPUlt
cGxGcmFtZSwKLSAgICBJbmRleGVkR2V0dGVyLAogICAgIEludGVyZmFjZU5hbWU9UGx1Z2luQXJy
YXkKIF0gaW50ZXJmYWNlIERPTVBsdWdpbkFycmF5IHsKICAgICByZWFkb25seSBhdHRyaWJ1dGUg
dW5zaWduZWQgbG9uZyBsZW5ndGg7Ci0gICAgRE9NUGx1Z2luIGl0ZW0oW0RlZmF1bHQ9VW5kZWZp
bmVkXSBvcHRpb25hbCB1bnNpZ25lZCBsb25nIGluZGV4KTsKKyAgICBnZXR0ZXIgRE9NUGx1Z2lu
IGl0ZW0oW0RlZmF1bHQ9VW5kZWZpbmVkXSBvcHRpb25hbCB1bnNpZ25lZCBsb25nIGluZGV4KTsK
ICAgICBnZXR0ZXIgRE9NUGx1Z2luIG5hbWVkSXRlbShbRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlv
bmFsIERPTVN0cmluZyBuYW1lKTsKICAgICB2b2lkIHJlZnJlc2goW0RlZmF1bHQ9VW5kZWZpbmVk
XSBvcHRpb25hbCBib29sZWFuIHJlbG9hZCk7CiB9Owo=
</data>

          </attachment>
      

    </bug>

</bugzilla>