<?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>97557</bug_id>
          
          <creation_ts>2012-09-25 05:13:46 -0700</creation_ts>
          <short_desc>Web Inspector: Remove resource() getter from UISourceCode.</short_desc>
          <delta_ts>2012-09-26 05:52:16 -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>Web Inspector (Deprecated)</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Vsevolod Vlasov">vsevik</reporter>
          <assigned_to name="Vsevolod Vlasov">vsevik</assigned_to>
          <cc>apavlov</cc>
    
    <cc>bweinstein</cc>
    
    <cc>dglazkov</cc>
    
    <cc>joepeck</cc>
    
    <cc>keishi</cc>
    
    <cc>loislo</cc>
    
    <cc>pfeldman</cc>
    
    <cc>pmuellr</cc>
    
    <cc>rik</cc>
    
    <cc>timothy</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>yurys</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>727527</commentid>
    <comment_count>0</comment_count>
    <who name="Vsevolod Vlasov">vsevik</who>
    <bug_when>2012-09-25 05:13:46 -0700</bug_when>
    <thetext>Resource could be fetched from ResourceTreeModel directly.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>727528</commentid>
    <comment_count>1</comment_count>
      <attachid>165586</attachid>
    <who name="Vsevolod Vlasov">vsevik</who>
    <bug_when>2012-09-25 05:15:22 -0700</bug_when>
    <thetext>Created attachment 165586
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>727535</commentid>
    <comment_count>2</comment_count>
      <attachid>165588</attachid>
    <who name="Vsevolod Vlasov">vsevik</who>
    <bug_when>2012-09-25 05:26:50 -0700</bug_when>
    <thetext>Created attachment 165588
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>727561</commentid>
    <comment_count>3</comment_count>
      <attachid>165588</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-09-25 05:59:04 -0700</bug_when>
    <thetext>Comment on attachment 165588
Patch

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

New failing tests:
inspector/debugger/source-url-comment.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>727623</commentid>
    <comment_count>4</comment_count>
      <attachid>165588</attachid>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2012-09-25 07:18:47 -0700</bug_when>
    <thetext>Comment on attachment 165588
Patch

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

&gt; Source/WebCore/ChangeLog:33
&gt; +        Web Inspector: Provide a way to distinguish scripts having sourceURL from standalone scripts.

Dupe</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>727729</commentid>
    <comment_count>5</comment_count>
      <attachid>165631</attachid>
    <who name="Vsevolod Vlasov">vsevik</who>
    <bug_when>2012-09-25 09:38:03 -0700</bug_when>
    <thetext>Created attachment 165631
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>728457</commentid>
    <comment_count>6</comment_count>
    <who name="Vsevolod Vlasov">vsevik</who>
    <bug_when>2012-09-26 05:52:16 -0700</bug_when>
    <thetext>Committed r129626: &lt;http://trac.webkit.org/changeset/129626&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>165586</attachid>
            <date>2012-09-25 05:15:22 -0700</date>
            <delta_ts>2012-09-25 05:26:44 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-97557-20120925161441.patch</filename>
            <type>text/plain</type>
            <size>20819</size>
            <attacher name="Vsevolod Vlasov">vsevik</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI5NDg1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTA2NzVmNjY2MmI5OTM4
YTEwMWQwZTJjOTE1Y2MxNWQyYzhhN2I3MS4uMjI2ZjFiYTBhYWU4ZDFjZTAwOTQ2MmJmNDJjYWZi
Nzk5MjgyZjkxYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDM1IEBACiAyMDEyLTA5LTI1ICBWc2V2
b2xvZCBWbGFzb3YgIDx2c2V2aWtAY2hyb21pdW0ub3JnPgogCisgICAgICAgIFdlYiBJbnNwZWN0
b3I6IFJlbW92ZSByZXNvdXJjZSgpIGdldHRlciBmcm9tIFVJU291cmNlQ29kZS4KKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTk3NTU3CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUmVzb3VyY2UgZ2V0dGVyIHJl
bW92ZWQgZnJvbSBVSVNvdXJjZUNvZGUuIFJlc291cmNlIGNvdWxkIGJlIGZldGNoZWQgZnJvbSBS
ZXNvdXJjZVRyZWVNb2RlbCBkaXJlY3RseS4KKworICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1l
bmQvQ1NTU3R5bGVNb2RlbC5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5DU1NTdHlsZU1vZGVs
UmVzb3VyY2VCaW5kaW5nLnByb3RvdHlwZS5zZXRTdHlsZUNvbnRlbnQpOgorICAgICAgICAqIGlu
c3BlY3Rvci9mcm9udC1lbmQvQ29tcGlsZXJTY3JpcHRNYXBwaW5nLmpzOgorICAgICAgICAqIGlu
c3BlY3Rvci9mcm9udC1lbmQvSmF2YVNjcmlwdFNvdXJjZS5qczoKKyAgICAgICAgKFdlYkluc3Bl
Y3Rvci5KYXZhU2NyaXB0U291cmNlKToKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL05l
dHdvcmtVSVNvdXJjZUNvZGVQcm92aWRlci5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5OZXR3
b3JrVUlTb3VyY2VDb2RlUHJvdmlkZXIucHJvdG90eXBlLl9yZXNvdXJjZUFkZGVkKToKKyAgICAg
ICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL1Jlc291cmNlU2NyaXB0TWFwcGluZy5qczoKKyAgICAg
ICAgKFdlYkluc3BlY3Rvci5SZXNvdXJjZVNjcmlwdE1hcHBpbmcucHJvdG90eXBlLl9hZGRPclJl
cGxhY2VUZW1wb3JhcnlVSVNvdXJjZUNvZGUpOgorICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1l
bmQvU0FTU1NvdXJjZU1hcHBpbmcuanM6CisgICAgICAgIChXZWJJbnNwZWN0b3IuU0FTU1NvdXJj
ZSk6CisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9TY3JpcHRTbmlwcGV0TW9kZWwuanM6
CisgICAgICAgIChXZWJJbnNwZWN0b3IuU2NyaXB0U25pcHBldE1vZGVsLnByb3RvdHlwZS5fY3Jl
YXRlVUlTb3VyY2VDb2RlRm9yU2NyaXB0KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5TbmlwcGV0
SmF2YVNjcmlwdFNvdXJjZSk6CisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9TY3JpcHRz
UGFuZWwuanM6CisgICAgICAgIChXZWJJbnNwZWN0b3IuU2NyaXB0c1BhbmVsLnByb3RvdHlwZS5f
YXBwZW5kVUlTb3VyY2VDb2RlSXRlbXMpOgorICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQv
U3R5bGVTb3VyY2UuanM6CisgICAgICAgIChXZWJJbnNwZWN0b3IuU3R5bGVTb3VyY2UpOgorICAg
ICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvVUlTb3VyY2VDb2RlLmpzOgorICAgICAgICAoV2Vi
SW5zcGVjdG9yLlVJU291cmNlQ29kZSk6CisKKzIwMTItMDktMjUgIFZzZXZvbG9kIFZsYXNvdiAg
PHZzZXZpa0BjaHJvbWl1bS5vcmc+CisKICAgICAgICAgV2ViIEluc3BlY3RvcjogUmVzb3VyY2VT
Y3JpcHRNYXBwaW5nIHNob3VsZCBubyBzdGVhbCBzY3JpcHRzIGZyb20gb3RoZXIgbWFwcGluZ3Mu
CiAgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05NzQ1Mwog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0NTU1N0eWxl
TW9kZWwuanMgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0NTU1N0eWxlTW9k
ZWwuanMKaW5kZXggZTA3MWY2MGZhZjAxMmI4YWIyYTE1MzE5ZTIzMTY0MzMzYjkzMTk4Yy4uNDg4
NjliZjEwMDY1NGNjY2FhNGRiOTQ1Yjk2MmZlOGNhOTM1Njg0MCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9DU1NTdHlsZU1vZGVsLmpzCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvQ1NTU3R5bGVNb2RlbC5qcwpAQCAtMTExOCw3
ICsxMTE4LDcgQEAgV2ViSW5zcGVjdG9yLkNTU1N0eWxlTW9kZWxSZXNvdXJjZUJpbmRpbmcucHJv
dG90eXBlID0gewogICAgICAqLwogICAgIHNldFN0eWxlQ29udGVudDogZnVuY3Rpb24oc3R5bGVT
b3VyY2UsIGNvbnRlbnQsIG1ham9yQ2hhbmdlLCB1c2VyQ2FsbGJhY2spCiAgICAgewotICAgICAg
ICB2YXIgcmVzb3VyY2UgPSBzdHlsZVNvdXJjZS5yZXNvdXJjZSgpOworICAgICAgICB2YXIgcmVz
b3VyY2UgPSBXZWJJbnNwZWN0b3IucmVzb3VyY2VGb3JVUkwoc3R5bGVTb3VyY2UudXJsKTsKICAg
ICAgICAgaWYgKHRoaXMuX3N0eWxlU2hlZXRJZEZvclJlc291cmNlKHJlc291cmNlKSkgewogICAg
ICAgICAgICAgdGhpcy5faW5uZXJTZXRDb250ZW50KHJlc291cmNlLCBjb250ZW50LCBtYWpvckNo
YW5nZSwgdXNlckNhbGxiYWNrLCBudWxsKTsKICAgICAgICAgICAgIHJldHVybjsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvQ29tcGlsZXJTY3JpcHRNYXBw
aW5nLmpzIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Db21waWxlclNjcmlw
dE1hcHBpbmcuanMKaW5kZXggN2Y0YjlkYWUzZDBhOTgwZmM3ZmE0ZDRmNzczMmM3Mzk5OTFiZDNm
Yi4uMDVlMmI3Mzg3ZWRkMmVhYmUwMzUzMWJhZjA4OTJhNTMwNzIyNTY5ZSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Db21waWxlclNjcmlwdE1hcHBpbmcu
anMKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Db21waWxlclNjcmlw
dE1hcHBpbmcuanMKQEAgLTg0LDcgKzg0LDcgQEAgV2ViSW5zcGVjdG9yLkNvbXBpbGVyU2NyaXB0
TWFwcGluZy5wcm90b3R5cGUgPSB7CiAgICAgICovCiAgICAgYWRkU2NyaXB0OiBmdW5jdGlvbihz
Y3JpcHQpCiAgICAgewotICAgICAgICB2YXIgb3JpZ2luYWxVSVNvdXJjZUNvZGUgPSBuZXcgV2Vi
SW5zcGVjdG9yLkphdmFTY3JpcHRTb3VyY2Uoc2NyaXB0LnNvdXJjZVVSTCwgbnVsbCwgc2NyaXB0
LCB0cnVlKTsKKyAgICAgICAgdmFyIG9yaWdpbmFsVUlTb3VyY2VDb2RlID0gbmV3IFdlYkluc3Bl
Y3Rvci5KYXZhU2NyaXB0U291cmNlKHNjcmlwdC5zb3VyY2VVUkwsIHNjcmlwdCwgdHJ1ZSk7CiAg
ICAgICAgIHRoaXMuX29yaWdpbmFsVUlTb3VyY2VDb2RlRm9yU2NyaXB0SWRbc2NyaXB0LnNjcmlw
dElkXSA9IG9yaWdpbmFsVUlTb3VyY2VDb2RlOwogICAgICAgICB0aGlzLl9zY3JpcHRGb3JPcmln
aW5hbFVJU291cmNlLnB1dChvcmlnaW5hbFVJU291cmNlQ29kZSwgc2NyaXB0KTsKICAgICAgICAg
dGhpcy5fd29ya3NwYWNlLnByb2plY3QoKS5hZGRVSVNvdXJjZUNvZGUob3JpZ2luYWxVSVNvdXJj
ZUNvZGUpOwpAQCAtMTA5LDcgKzEwOSw3IEBAIFdlYkluc3BlY3Rvci5Db21waWxlclNjcmlwdE1h
cHBpbmcucHJvdG90eXBlID0gewogICAgICAgICAgICAgICAgIGNvbnRlbnRQcm92aWRlciA9IG5l
dyBXZWJJbnNwZWN0b3IuU3RhdGljQ29udGVudFByb3ZpZGVyKFdlYkluc3BlY3Rvci5yZXNvdXJj
ZVR5cGVzLlNjcmlwdCwgc291cmNlQ29udGVudCk7CiAgICAgICAgICAgICBlbHNlCiAgICAgICAg
ICAgICAgICAgY29udGVudFByb3ZpZGVyID0gbmV3IFdlYkluc3BlY3Rvci5Db21waWxlclNvdXJj
ZU1hcHBpbmdDb250ZW50UHJvdmlkZXIoc291cmNlVVJMKTsKLSAgICAgICAgICAgIHZhciB1aVNv
dXJjZUNvZGUgPSBuZXcgV2ViSW5zcGVjdG9yLkphdmFTY3JpcHRTb3VyY2Uoc291cmNlVVJMLCBu
dWxsLCBjb250ZW50UHJvdmlkZXIsIGZhbHNlKTsKKyAgICAgICAgICAgIHZhciB1aVNvdXJjZUNv
ZGUgPSBuZXcgV2ViSW5zcGVjdG9yLkphdmFTY3JpcHRTb3VyY2Uoc291cmNlVVJMLCBjb250ZW50
UHJvdmlkZXIsIGZhbHNlKTsKICAgICAgICAgICAgIHVpU291cmNlQ29kZS5zZXRTb3VyY2VNYXBw
aW5nKHRoaXMpOwogICAgICAgICAgICAgdWlTb3VyY2VDb2RlLmlzQ29udGVudFNjcmlwdCA9IHNj
cmlwdC5pc0NvbnRlbnRTY3JpcHQ7CiAgICAgICAgICAgICB0aGlzLl91aVNvdXJjZUNvZGVCeVVS
TFtzb3VyY2VVUkxdID0gdWlTb3VyY2VDb2RlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
aW5zcGVjdG9yL2Zyb250LWVuZC9KYXZhU2NyaXB0U291cmNlLmpzIGIvU291cmNlL1dlYkNvcmUv
aW5zcGVjdG9yL2Zyb250LWVuZC9KYXZhU2NyaXB0U291cmNlLmpzCmluZGV4IGE2NDFjMmQxODc3
MDUwN2E4MjcyY2QxMmQ5OTNkMmY1OGVlNzI3ZTcuLjU2NmNlNjc4YTFjODQyYjRhZDc1MzU2NDI4
OWRiZjI1MzMzZTNkODYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9u
dC1lbmQvSmF2YVNjcmlwdFNvdXJjZS5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3Iv
ZnJvbnQtZW5kL0phdmFTY3JpcHRTb3VyY2UuanMKQEAgLTMyLDEyICszMiwxMSBAQAogICogQGNv
bnN0cnVjdG9yCiAgKiBAZXh0ZW5kcyB7V2ViSW5zcGVjdG9yLlVJU291cmNlQ29kZX0KICAqIEBw
YXJhbSB7c3RyaW5nfSB1cmwKLSAqIEBwYXJhbSB7V2ViSW5zcGVjdG9yLlJlc291cmNlfSByZXNv
dXJjZQogICogQHBhcmFtIHtXZWJJbnNwZWN0b3IuQ29udGVudFByb3ZpZGVyfSBjb250ZW50UHJv
dmlkZXIKICAqLwotV2ViSW5zcGVjdG9yLkphdmFTY3JpcHRTb3VyY2UgPSBmdW5jdGlvbih1cmws
IHJlc291cmNlLCBjb250ZW50UHJvdmlkZXIsIGlzRWRpdGFibGUpCitXZWJJbnNwZWN0b3IuSmF2
YVNjcmlwdFNvdXJjZSA9IGZ1bmN0aW9uKHVybCwgY29udGVudFByb3ZpZGVyLCBpc0VkaXRhYmxl
KQogewotICAgIFdlYkluc3BlY3Rvci5VSVNvdXJjZUNvZGUuY2FsbCh0aGlzLCB1cmwsIHJlc291
cmNlLCBjb250ZW50UHJvdmlkZXIpOworICAgIFdlYkluc3BlY3Rvci5VSVNvdXJjZUNvZGUuY2Fs
bCh0aGlzLCB1cmwsIGNvbnRlbnRQcm92aWRlcik7CiAgICAgdGhpcy5faXNFZGl0YWJsZSA9IGlz
RWRpdGFibGU7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9u
dC1lbmQvTmV0d29ya1VJU291cmNlQ29kZVByb3ZpZGVyLmpzIGIvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL2Zyb250LWVuZC9OZXR3b3JrVUlTb3VyY2VDb2RlUHJvdmlkZXIuanMKaW5kZXggZjE2
MjVmNjRjZmFmMzZlMzE1YjBmZTNjYTdmMjM0YTAwMDA3YWUxZC4uYWUzNGZlYmEwMTBiNjNlYzAx
YmM5YjA1Y2UzNmE5ZmEyNjFiNjQ2ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL2Zyb250LWVuZC9OZXR3b3JrVUlTb3VyY2VDb2RlUHJvdmlkZXIuanMKKysrIGIvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9OZXR3b3JrVUlTb3VyY2VDb2RlUHJvdmlkZXIu
anMKQEAgLTcyLDEwICs3MiwxMCBAQCBXZWJJbnNwZWN0b3IuTmV0d29ya1VJU291cmNlQ29kZVBy
b3ZpZGVyLnByb3RvdHlwZSA9IHsKICAgICAgICAgICAgIHVpU291cmNlQ29kZSA9IG5ldyBXZWJJ
bnNwZWN0b3IuU3R5bGVTb3VyY2UocmVzb3VyY2UpOwogICAgICAgICAgICAgYnJlYWs7CiAgICAg
ICAgIGNhc2UgV2ViSW5zcGVjdG9yLnJlc291cmNlVHlwZXMuRG9jdW1lbnQ6Ci0gICAgICAgICAg
ICB1aVNvdXJjZUNvZGUgPSBuZXcgV2ViSW5zcGVjdG9yLkphdmFTY3JpcHRTb3VyY2UocmVzb3Vy
Y2UudXJsLCByZXNvdXJjZSwgcmVzb3VyY2UsIGZhbHNlKTsKKyAgICAgICAgICAgIHVpU291cmNl
Q29kZSA9IG5ldyBXZWJJbnNwZWN0b3IuSmF2YVNjcmlwdFNvdXJjZShyZXNvdXJjZS51cmwsIHJl
c291cmNlLCBmYWxzZSk7CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgY2FzZSBXZWJJbnNw
ZWN0b3IucmVzb3VyY2VUeXBlcy5TY3JpcHQ6Ci0gICAgICAgICAgICB1aVNvdXJjZUNvZGUgPSBu
ZXcgV2ViSW5zcGVjdG9yLkphdmFTY3JpcHRTb3VyY2UocmVzb3VyY2UudXJsLCByZXNvdXJjZSwg
cmVzb3VyY2UsIHRydWUpOworICAgICAgICAgICAgdWlTb3VyY2VDb2RlID0gbmV3IFdlYkluc3Bl
Y3Rvci5KYXZhU2NyaXB0U291cmNlKHJlc291cmNlLnVybCwgcmVzb3VyY2UsIHRydWUpOwogICAg
ICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KICAgICAgICAgaWYgKHVpU291cmNlQ29kZSkgewpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9SZXNvdXJjZVNj
cmlwdE1hcHBpbmcuanMgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1Jlc291
cmNlU2NyaXB0TWFwcGluZy5qcwppbmRleCA2ZGZlYjExZmY0NDU4NjdjMTMzNjU4ZDVkYWQ2NTRj
MmU3ZTQ1OTBkLi5kNzJhMWM2NDkxNDI5ZWIwODMzNDc3N2Y1MzFjMzUzOWI2NzNjM2QyIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1Jlc291cmNlU2NyaXB0
TWFwcGluZy5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1Jlc291
cmNlU2NyaXB0TWFwcGluZy5qcwpAQCAtMTUwLDcgKzE1MCw3IEBAIFdlYkluc3BlY3Rvci5SZXNv
dXJjZVNjcmlwdE1hcHBpbmcucHJvdG90eXBlID0gewogICAgICAgICAgICAgdXJsICs9ICIgKCIg
KyBuZXh0SW5kZXggKyAiKSI7CiAgICAgICAgICAgICB0aGlzLl9uZXh0RHluYW1pY1NjcmlwdElu
ZGV4Rm9yVVJMW3NjcmlwdC5zb3VyY2VVUkxdID0gbmV4dEluZGV4ICsgMTsKICAgICAgICAgfQot
ICAgICAgICB2YXIgdWlTb3VyY2VDb2RlID0gbmV3IFdlYkluc3BlY3Rvci5KYXZhU2NyaXB0U291
cmNlKHVybCwgbnVsbCwgY29udGVudFByb3ZpZGVyLCAhc2NyaXB0LmlzSW5saW5lU2NyaXB0KCkp
OworICAgICAgICB2YXIgdWlTb3VyY2VDb2RlID0gbmV3IFdlYkluc3BlY3Rvci5KYXZhU2NyaXB0
U291cmNlKHVybCwgY29udGVudFByb3ZpZGVyLCAhc2NyaXB0LmlzSW5saW5lU2NyaXB0KCkpOwog
ICAgICAgICB0aGlzLl90ZW1wb3JhcnlVSVNvdXJjZUNvZGVzLnB1dCh1aVNvdXJjZUNvZGUsIHVp
U291cmNlQ29kZSk7CiAgICAgICAgIHRoaXMuX2JpbmRVSVNvdXJjZUNvZGVUb1NjcmlwdHModWlT
b3VyY2VDb2RlLCBzY3JpcHRzKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL2Zyb250LWVuZC9TQVNTU291cmNlTWFwcGluZy5qcyBiL1NvdXJjZS9XZWJDb3JlL2luc3Bl
Y3Rvci9mcm9udC1lbmQvU0FTU1NvdXJjZU1hcHBpbmcuanMKaW5kZXggMGI4ZTk2ZTZlNDgwYTA5
MzY1MTNjYzk3YWVjMzc5NDRlNDBhODFlNC4uNDNjZTNiNGEzNjkxMzY4MzZhMGQzMjIzNDQ1OTc5
NGI5ODdlODkyMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVu
ZC9TQVNTU291cmNlTWFwcGluZy5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJv
bnQtZW5kL1NBU1NTb3VyY2VNYXBwaW5nLmpzCkBAIC0xNjcsNyArMTY3LDcgQEAgV2ViSW5zcGVj
dG9yLlNBU1NTb3VyY2UgPSBmdW5jdGlvbihzYXNzVVJMKQogewogICAgIHZhciBjb250ZW50ID0g
SW5zcGVjdG9yRnJvbnRlbmRIb3N0LmxvYWRSZXNvdXJjZVN5bmNocm9ub3VzbHkoc2Fzc1VSTCk7
CiAgICAgdmFyIGNvbnRlbnRQcm92aWRlciA9IG5ldyBXZWJJbnNwZWN0b3IuU3RhdGljQ29udGVu
dFByb3ZpZGVyKFdlYkluc3BlY3Rvci5yZXNvdXJjZVR5cGVzLlN0eWxlc2hlZXQsIGNvbnRlbnQs
ICJ0ZXh0L3gtc2NzcyIpOwotICAgIFdlYkluc3BlY3Rvci5VSVNvdXJjZUNvZGUuY2FsbCh0aGlz
LCBzYXNzVVJMLCBudWxsLCBjb250ZW50UHJvdmlkZXIpOworICAgIFdlYkluc3BlY3Rvci5VSVNv
dXJjZUNvZGUuY2FsbCh0aGlzLCBzYXNzVVJMLCBjb250ZW50UHJvdmlkZXIpOwogfQogCiBXZWJJ
bnNwZWN0b3IuU0FTU1NvdXJjZS5wcm90b3R5cGUgPSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1NjcmlwdFNuaXBwZXRNb2RlbC5qcyBiL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU2NyaXB0U25pcHBldE1vZGVsLmpzCmluZGV4IDYw
YTY2NzIzMzdmZjQyOGIwMDY3OWU0NzdlMTIwZDMxN2NmZjg0NWQuLjg4OTVhMTE1Mjc3MGVlYzE1
MThmZjE5ZWRlZWE3NTU5NzY5ODdkMmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3Bl
Y3Rvci9mcm9udC1lbmQvU2NyaXB0U25pcHBldE1vZGVsLmpzCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2luc3BlY3Rvci9mcm9udC1lbmQvU2NyaXB0U25pcHBldE1vZGVsLmpzCkBAIC0yODAsNyArMjgw
LDcgQEAgV2ViSW5zcGVjdG9yLlNjcmlwdFNuaXBwZXRNb2RlbC5wcm90b3R5cGUgPSB7CiAgICAg
ICovCiAgICAgX2NyZWF0ZVVJU291cmNlQ29kZUZvclNjcmlwdDogZnVuY3Rpb24oc2NyaXB0KQog
ICAgIHsKLSAgICAgICAgdmFyIHVpU291cmNlQ29kZSA9IG5ldyBXZWJJbnNwZWN0b3IuSmF2YVNj
cmlwdFNvdXJjZShzY3JpcHQuc291cmNlVVJMLCBudWxsLCBzY3JpcHQsIGZhbHNlKTsKKyAgICAg
ICAgdmFyIHVpU291cmNlQ29kZSA9IG5ldyBXZWJJbnNwZWN0b3IuSmF2YVNjcmlwdFNvdXJjZShz
Y3JpcHQuc291cmNlVVJMLCBzY3JpcHQsIGZhbHNlKTsKICAgICAgICAgdWlTb3VyY2VDb2RlLnNl
dFNvdXJjZU1hcHBpbmcodGhpcy5fc25pcHBldFNjcmlwdE1hcHBpbmcpOyAKICAgICAgICAgdWlT
b3VyY2VDb2RlLmlzU25pcHBldEV2YWx1YXRpb24gPSB0cnVlOwogICAgICAgICB0aGlzLl91aVNv
dXJjZUNvZGVGb3JTY3JpcHRJZFtzY3JpcHQuc2NyaXB0SWRdID0gdWlTb3VyY2VDb2RlOwpAQCAt
Mzc5LDcgKzM3OSw3IEBAIFdlYkluc3BlY3Rvci5TY3JpcHRTbmlwcGV0TW9kZWwucHJvdG90eXBl
Ll9fcHJvdG9fXyA9IFdlYkluc3BlY3Rvci5PYmplY3QucHJvdG90CiAgKi8KIFdlYkluc3BlY3Rv
ci5TbmlwcGV0SmF2YVNjcmlwdFNvdXJjZSA9IGZ1bmN0aW9uKHNuaXBwZXRJZCwgc25pcHBldE5h
bWUsIGNvbnRlbnRQcm92aWRlciwgc2NyaXB0U25pcHBldE1vZGVsKQogewotICAgIFdlYkluc3Bl
Y3Rvci5KYXZhU2NyaXB0U291cmNlLmNhbGwodGhpcywgc25pcHBldE5hbWUsIG51bGwsIGNvbnRl
bnRQcm92aWRlciwgdHJ1ZSk7CisgICAgV2ViSW5zcGVjdG9yLkphdmFTY3JpcHRTb3VyY2UuY2Fs
bCh0aGlzLCBzbmlwcGV0TmFtZSwgY29udGVudFByb3ZpZGVyLCB0cnVlKTsKICAgICB0aGlzLl9z
bmlwcGV0SWQgPSBzbmlwcGV0SWQ7CiAgICAgdGhpcy5fc2NyaXB0U25pcHBldE1vZGVsID0gc2Ny
aXB0U25pcHBldE1vZGVsOwogICAgIHRoaXMuaXNTbmlwcGV0ID0gdHJ1ZTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU2NyaXB0c1BhbmVsLmpzIGIvU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TY3JpcHRzUGFuZWwuanMKaW5kZXggZjRk
Yzc3MjE5YzEzMDE3MmU0ZmE1MjllYzNmZjc3MDE4YTBkYzY2MS4uOTIzYmFhN2NkZTg2MThkZGRh
YTE5NDViMWI0NWFhY2Y3NThhYmQ3OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL2Zyb250LWVuZC9TY3JpcHRzUGFuZWwuanMKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL2Zyb250LWVuZC9TY3JpcHRzUGFuZWwuanMKQEAgLTExMDAsOCArMTEwMCw5IEBAIFdlYklu
c3BlY3Rvci5TY3JpcHRzUGFuZWwucHJvdG90eXBlID0gewogCiAgICAgICAgIHZhciB1aVNvdXJj
ZUNvZGUgPSAvKiogQHR5cGUge1dlYkluc3BlY3Rvci5VSVNvdXJjZUNvZGV9ICovIHRhcmdldDsK
ICAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kSXRlbShXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIkxv
Y2FsIG1vZGlmaWNhdGlvbnMuLi4iKSwgdGhpcy5fc2hvd0xvY2FsSGlzdG9yeS5iaW5kKHRoaXMs
IHVpU291cmNlQ29kZSkpOwotICAgICAgICBpZiAodWlTb3VyY2VDb2RlLnJlc291cmNlKCkgJiYg
dWlTb3VyY2VDb2RlLnJlc291cmNlKCkucmVxdWVzdCkKLSAgICAgICAgICAgIGNvbnRleHRNZW51
LmFwcGVuZEFwcGxpY2FibGVJdGVtcyh1aVNvdXJjZUNvZGUucmVzb3VyY2UoKS5yZXF1ZXN0KTsK
KyAgICAgICAgdmFyIHJlc291cmNlID0gV2ViSW5zcGVjdG9yLnJlc291cmNlRm9yVVJMKHVpU291
cmNlQ29kZS51cmwpOworICAgICAgICBpZiAocmVzb3VyY2UgJiYgcmVzb3VyY2UucmVxdWVzdCkK
KyAgICAgICAgICAgIGNvbnRleHRNZW51LmFwcGVuZEFwcGxpY2FibGVJdGVtcyhyZXNvdXJjZS5y
ZXF1ZXN0KTsKICAgICB9LAogCiAgICAgLyoqIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
aW5zcGVjdG9yL2Zyb250LWVuZC9TdHlsZVNvdXJjZS5qcyBiL1NvdXJjZS9XZWJDb3JlL2luc3Bl
Y3Rvci9mcm9udC1lbmQvU3R5bGVTb3VyY2UuanMKaW5kZXggNGQyMWY1MThhN2NiMmRmN2ZiYTRi
ODZhNDVjYTk3MjUyNDVhZWMzZC4uYzczYjMyNWU3NmMxMzk0Y2JlN2MxOGE3YjY2ZTYzOWFlOThi
YWUyOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TdHls
ZVNvdXJjZS5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1N0eWxl
U291cmNlLmpzCkBAIC0yOSwxMSArMjksMTEgQEAKIC8qKgogICogQGNvbnN0cnVjdG9yCiAgKiBA
ZXh0ZW5kcyB7V2ViSW5zcGVjdG9yLlVJU291cmNlQ29kZX0KLSAqIEBwYXJhbSB7V2ViSW5zcGVj
dG9yLlJlc291cmNlfSByZXNvdXJjZQorICogQHBhcmFtIHtXZWJJbnNwZWN0b3IuQ29udGVudFBy
b3ZpZGVyfSBjb250ZW50UHJvdmlkZXIKICAqLwotV2ViSW5zcGVjdG9yLlN0eWxlU291cmNlID0g
ZnVuY3Rpb24ocmVzb3VyY2UpCitXZWJJbnNwZWN0b3IuU3R5bGVTb3VyY2UgPSBmdW5jdGlvbihj
b250ZW50UHJvdmlkZXIpCiB7Ci0gICAgV2ViSW5zcGVjdG9yLlVJU291cmNlQ29kZS5jYWxsKHRo
aXMsIHJlc291cmNlLnVybCwgcmVzb3VyY2UsIHJlc291cmNlKTsKKyAgICBXZWJJbnNwZWN0b3Iu
VUlTb3VyY2VDb2RlLmNhbGwodGhpcywgY29udGVudFByb3ZpZGVyLnVybCwgY29udGVudFByb3Zp
ZGVyKTsKIH0KIAogV2ViSW5zcGVjdG9yLlN0eWxlU291cmNlLnVwZGF0ZVRpbWVvdXQgPSAyMDA7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1VJU291cmNl
Q29kZS5qcyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvVUlTb3VyY2VDb2Rl
LmpzCmluZGV4IDQ3YzhjMzQyNWVjOThkYzAyNTM3NGMzNjg5MjhiYTJkYTYwY2VmNDQuLjQyZWI5
YWE3NTI5Y2E4NzQ1ZDY0YmIyN2UwODY5YWM1MDY4YTJhYzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvVUlTb3VyY2VDb2RlLmpzCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvVUlTb3VyY2VDb2RlLmpzCkBAIC0zNCwxMyArMzQs
MTEgQEAKICAqIEBleHRlbmRzIHtXZWJJbnNwZWN0b3IuT2JqZWN0fQogICogQGltcGxlbWVudHMg
e1dlYkluc3BlY3Rvci5Db250ZW50UHJvdmlkZXJ9CiAgKiBAcGFyYW0ge3N0cmluZ30gdXJsCi0g
KiBAcGFyYW0ge1dlYkluc3BlY3Rvci5SZXNvdXJjZX0gcmVzb3VyY2UKICAqIEBwYXJhbSB7V2Vi
SW5zcGVjdG9yLkNvbnRlbnRQcm92aWRlcn0gY29udGVudFByb3ZpZGVyCiAgKi8KLVdlYkluc3Bl
Y3Rvci5VSVNvdXJjZUNvZGUgPSBmdW5jdGlvbih1cmwsIHJlc291cmNlLCBjb250ZW50UHJvdmlk
ZXIpCitXZWJJbnNwZWN0b3IuVUlTb3VyY2VDb2RlID0gZnVuY3Rpb24odXJsLCBjb250ZW50UHJv
dmlkZXIpCiB7CiAgICAgdGhpcy5fdXJsID0gdXJsOwotICAgIHRoaXMuX3Jlc291cmNlID0gcmVz
b3VyY2U7CiAgICAgdGhpcy5fcGFyc2VkVVJMID0gbmV3IFdlYkluc3BlY3Rvci5QYXJzZWRVUkwo
dXJsKTsKICAgICB0aGlzLl9jb250ZW50UHJvdmlkZXIgPSBjb250ZW50UHJvdmlkZXI7CiAgICAg
dGhpcy5pc0NvbnRlbnRTY3JpcHQgPSBmYWxzZTsKQEAgLTk0LDE0ICs5Miw2IEBAIFdlYkluc3Bl
Y3Rvci5VSVNvdXJjZUNvZGUucHJvdG90eXBlID0gewogICAgIH0sCiAKICAgICAvKioKLSAgICAg
KiBAcmV0dXJuIHtXZWJJbnNwZWN0b3IuUmVzb3VyY2V9Ci0gICAgICovCi0gICAgcmVzb3VyY2U6
IGZ1bmN0aW9uKCkKLSAgICB7Ci0gICAgICAgIHJldHVybiB0aGlzLl9yZXNvdXJjZTsKLSAgICB9
LAotCi0gICAgLyoqCiAgICAgICogQHJldHVybiB7V2ViSW5zcGVjdG9yLlBhcnNlZFVSTH0KICAg
ICAgKi8KICAgICBnZXQgcGFyc2VkVVJMKCkKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAxYzQyZDgxMDRjZTE4OWEwYmE0ZDc0
MzhlMTE3YzY4Y2Y1M2QzYWZjLi42NDFmZTdmMDA4ZTljZTdhZWMyOTRmNzAwZDg2NmM1YzYxZjk2
YWY2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDUgKzEsMjMgQEAKIDIwMTItMDktMjUgIFZzZXZvbG9kIFZsYXNvdiAg
PHZzZXZpa0BjaHJvbWl1bS5vcmc+CiAKKyAgICAgICAgV2ViIEluc3BlY3RvcjogUmVtb3ZlIHJl
c291cmNlKCkgZ2V0dGVyIGZyb20gVUlTb3VyY2VDb2RlLgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTc1NTcKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGh0dHAvdGVzdHMvaW5zcGVjdG9yL3dvcmtzcGFj
ZS10ZXN0LmpzOgorICAgICAgICAoaW5pdGlhbGl6ZV9Xb3Jrc3BhY2VUZXN0Lkluc3BlY3RvclRl
c3QuYWRkTW9ja1VJU291cmNlQ29kZVRvV29ya3NwYWNlKToKKyAgICAgICAgKiBpbnNwZWN0b3Iv
ZGVidWdnZXIvYnJlYWtwb2ludC1tYW5hZ2VyLmh0bWw6CisgICAgICAgICogaW5zcGVjdG9yL2Rl
YnVnZ2VyL2R5bmFtaWMtc2NyaXB0LXRhZy1leHBlY3RlZC50eHQ6CisgICAgICAgICogaW5zcGVj
dG9yL2RlYnVnZ2VyL2R5bmFtaWMtc2NyaXB0LXRhZy5odG1sOgorICAgICAgICAqIGluc3BlY3Rv
ci9kZWJ1Z2dlci9zY3JpcHRzLWZpbGUtc2VsZWN0b3IuaHRtbDoKKyAgICAgICAgKiBpbnNwZWN0
b3IvZGVidWdnZXIvc2NyaXB0cy1wYW5lbC5odG1sOgorICAgICAgICAqIGluc3BlY3Rvci9kZWJ1
Z2dlci9zY3JpcHRzLXNvcnRpbmcuaHRtbDoKKyAgICAgICAgKiBpbnNwZWN0b3IvZGVidWdnZXIv
dWktc291cmNlLWNvZGUtZGlzcGxheS1uYW1lLmh0bWw6CisgICAgICAgICogaW5zcGVjdG9yL2Rl
YnVnZ2VyL3VpLXNvdXJjZS1jb2RlLmh0bWw6CisKKzIwMTItMDktMjUgIFZzZXZvbG9kIFZsYXNv
diAgPHZzZXZpa0BjaHJvbWl1bS5vcmc+CisKICAgICAgICAgV2ViIEluc3BlY3RvcjogUmVzb3Vy
Y2VTY3JpcHRNYXBwaW5nIHNob3VsZCBubyBzdGVhbCBzY3JpcHRzIGZyb20gb3RoZXIgbWFwcGlu
Z3MuCiAgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05NzQ1
MwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2luc3BlY3Rvci93b3Jrc3Bh
Y2UtdGVzdC5qcyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvaW5zcGVjdG9yL3dvcmtzcGFjZS10
ZXN0LmpzCmluZGV4IDA4YjNiNTc0NjRmNDBhZWJiNTdhMjYzNjg5N2RkYTI5Yjc3MzQ5N2YuLjdj
MjU3ZjYwNGMzNjE5YjgxZDJkM2RjYTNkM2Q0ZDY1YTFjOWE2YzUgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2h0dHAvdGVzdHMvaW5zcGVjdG9yL3dvcmtzcGFjZS10ZXN0LmpzCisrKyBiL0xheW91
dFRlc3RzL2h0dHAvdGVzdHMvaW5zcGVjdG9yL3dvcmtzcGFjZS10ZXN0LmpzCkBAIC0zOSw3ICsz
OSw3IEBAIEluc3BlY3RvclRlc3QuYWRkTW9ja1VJU291cmNlQ29kZVRvV29ya3NwYWNlID0gZnVu
Y3Rpb24odXJsLCB0eXBlLCBjb250ZW50KQogewogICAgIHZhciBpc0RvY3VtZW50ID0gdHlwZSA9
PT0gV2ViSW5zcGVjdG9yLnJlc291cmNlVHlwZXMuRG9jdW1lbnQ7CiAgICAgdmFyIG1vY2tDb250
ZW50UHJvdmlkZXIgPSBuZXcgV2ViSW5zcGVjdG9yLlN0YXRpY0NvbnRlbnRQcm92aWRlcih0eXBl
LCBjb250ZW50KTsKLSAgICB2YXIgdWlTb3VyY2VDb2RlID0gbmV3IFdlYkluc3BlY3Rvci5KYXZh
U2NyaXB0U291cmNlKHVybCwgbnVsbCwgbW9ja0NvbnRlbnRQcm92aWRlciwgIWlzRG9jdW1lbnQp
OworICAgIHZhciB1aVNvdXJjZUNvZGUgPSBuZXcgV2ViSW5zcGVjdG9yLkphdmFTY3JpcHRTb3Vy
Y2UodXJsLCBtb2NrQ29udGVudFByb3ZpZGVyLCAhaXNEb2N1bWVudCk7CiAgICAgSW5zcGVjdG9y
VGVzdC50ZXN0V29ya3NwYWNlLnByb2plY3QoKS5hZGRVSVNvdXJjZUNvZGUodWlTb3VyY2VDb2Rl
KTsKIH0KIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2RlYnVnZ2VyL2JyZWFr
cG9pbnQtbWFuYWdlci5odG1sIGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2RlYnVnZ2VyL2JyZWFr
cG9pbnQtbWFuYWdlci5odG1sCmluZGV4IGMzZGIwOWUyNmMxMzIxMTg5OWMyODViZThkNzVjYmRj
OWZmYWZhNDQuLjQxMTAwNGMxZGJiYmM1MzEyYzczMWMwNGI2ZDJhNzgxY2VjYTNjM2QgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci9icmVha3BvaW50LW1hbmFnZXIu
aHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZGVidWdnZXIvYnJlYWtwb2ludC1tYW5h
Z2VyLmh0bWwKQEAgLTExMSw3ICsxMTEsNyBAQCBmdW5jdGlvbiB0ZXN0KCkKICAgICBXb3Jrc3Bh
Y2VNb2NrLnByb3RvdHlwZSA9IHsKICAgICAgICAgX2FkZFVJU291cmNlQ29kZTogZnVuY3Rpb24o
dXJsKQogICAgICAgICB7Ci0gICAgICAgICAgICB2YXIgdWlTb3VyY2VDb2RlID0gbmV3IFdlYklu
c3BlY3Rvci5KYXZhU2NyaXB0U291cmNlKHVybCwgbnVsbCwgbnVsbCwgZmFsc2UpOworICAgICAg
ICAgICAgdmFyIHVpU291cmNlQ29kZSA9IG5ldyBXZWJJbnNwZWN0b3IuSmF2YVNjcmlwdFNvdXJj
ZSh1cmwsIG51bGwsIGZhbHNlKTsKICAgICAgICAgICAgIHVpU291cmNlQ29kZS5zZXRTb3VyY2VN
YXBwaW5nKGRlZmF1bHRNYXBwaW5nKTsKICAgICAgICAgICAgIHVpU291cmNlQ29kZXNbdXJsXSA9
IHVpU291cmNlQ29kZTsKICAgICAgICAgICAgIHRoaXMuZGlzcGF0Y2hFdmVudFRvTGlzdGVuZXJz
KFdlYkluc3BlY3Rvci5VSVNvdXJjZUNvZGVQcm92aWRlci5FdmVudHMuVUlTb3VyY2VDb2RlQWRk
ZWQsIHVpU291cmNlQ29kZSk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZGVi
dWdnZXIvZHluYW1pYy1zY3JpcHQtdGFnLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2luc3Bl
Y3Rvci9kZWJ1Z2dlci9keW5hbWljLXNjcmlwdC10YWctZXhwZWN0ZWQudHh0CmluZGV4IDUyODVm
MjJjN2Q4YWJjODk2NDk1NzM5ZDlmMzg2YWYyMDkxYTVmOTcuLmY4OWViNDgwYmRlOGJhNDRjZjJk
ZjkwODI5YzlmOGVmOTA1YWJmZmQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9k
ZWJ1Z2dlci9keW5hbWljLXNjcmlwdC10YWctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3Rz
L2luc3BlY3Rvci9kZWJ1Z2dlci9keW5hbWljLXNjcmlwdC10YWctZXhwZWN0ZWQudHh0CkBAIC0x
NCwxMiArMTQsMTAgQEAgVUlTb3VyY2VDb2RlIGlzIGVkaXRhYmxlOiB0cnVlCiBVSVNvdXJjZUNv
ZGUgaXMgY29udGVudCBzY3JpcHQ6IGZhbHNlCiBNaW1lIHR5cGU6IHRleHQvamF2YXNjcmlwdAog
VUlTb3VyY2VDb2RlIGNvbnRlbnQ6IGZ1bmN0aW9uIGZvbygpIHsgfQotVUkgcmVzb3VyY2U6IG51
bGwKIFVJU291cmNlQ29kZTogTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2RlYnVnZ2VyL2R5bmFtaWMt
c2NyaXB0LXRhZy5odG1sICgyKQogVUlTb3VyY2VDb2RlIGlzIGVkaXRhYmxlOiB0cnVlCiBVSVNv
dXJjZUNvZGUgaXMgY29udGVudCBzY3JpcHQ6IGZhbHNlCiBNaW1lIHR5cGU6IHRleHQvamF2YXNj
cmlwdAogVUlTb3VyY2VDb2RlIGNvbnRlbnQ6IGZ1bmN0aW9uIGJhcigpIHsgfQotVUkgcmVzb3Vy
Y2U6IG51bGwKIERlYnVnZ2VyIHdhcyBkaXNhYmxlZC4KIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW5zcGVjdG9yL2RlYnVnZ2VyL2R5bmFtaWMtc2NyaXB0LXRhZy5odG1sIGIvTGF5b3V0VGVz
dHMvaW5zcGVjdG9yL2RlYnVnZ2VyL2R5bmFtaWMtc2NyaXB0LXRhZy5odG1sCmluZGV4IGU1ZjU4
YWQ5ZGRhZjBlOGEzMjEzZGZjODFjODNlMmRjODRkMDUxN2EuLjdiZjU5MjM0OTBhYjA5YmM3ZGQ1
Njk5ZGY3Yzc2N2VlYmI0NTExZmYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9k
ZWJ1Z2dlci9keW5hbWljLXNjcmlwdC10YWcuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbnNwZWN0
b3IvZGVidWdnZXIvZHluYW1pYy1zY3JpcHQtdGFnLmh0bWwKQEAgLTcyLDcgKzcyLDYgQEAgdmFy
IHRlc3QgPSBmdW5jdGlvbigpCiAKICAgICAgICAgICAgIGZ1bmN0aW9uIHVpU291cmNlQ29kZUR1
bXBlZCgpCiAgICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5hZGRS
ZXN1bHQoIlVJIHJlc291cmNlOiAiICsgdWlTb3VyY2VDb2RlLnJlc291cmNlKCkpOwogICAgICAg
ICAgICAgICAgIEluc3BlY3RvclRlc3QuYXNzZXJ0VHJ1ZSghc2VlblVJU291cmNlQ29kZXMuZ2V0
KHVpU291cmNlQ29kZSksICJVSVNvdXJjZUNvZGUgbWF0Y2hlcyB0d28gc2NyaXB0czogIiArIHVp
U291cmNlQ29kZS51cmwpOwogICAgICAgICAgICAgICAgIHNlZW5VSVNvdXJjZUNvZGVzLnB1dCh1
aVNvdXJjZUNvZGUsIHVpU291cmNlQ29kZSk7CiAgICAgICAgICAgICAgICAgKytpbmRleDsKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci9zY3JpcHRzLWZpbGUtc2Vs
ZWN0b3IuaHRtbCBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci9zY3JpcHRzLWZpbGUt
c2VsZWN0b3IuaHRtbAppbmRleCAxM2JjYmQ5Mjc2NmM5NzMyMDIzZjYxODM5ZDNiZmE5MDhmMTJi
OTk3Li5jMzBmMGYwZGU5NzgzMjBmYmExY2NlY2Q0OWYzZmJjNmM3ZDYyNDU0IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZGVidWdnZXIvc2NyaXB0cy1maWxlLXNlbGVjdG9yLmh0
bWwKKysrIGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2RlYnVnZ2VyL3NjcmlwdHMtZmlsZS1zZWxl
Y3Rvci5odG1sCkBAIC0yMSw3ICsyMSw3IEBAIGZ1bmN0aW9uIHRlc3QoKQogCiAgICAgZnVuY3Rp
b24gYWRkVUlTb3VyY2VDb2RlKHVybCwgaXNDb250ZW50U2NyaXB0KQogICAgIHsKLSAgICAgICAg
dmFyIHVpU291cmNlQ29kZSA9IG5ldyBXZWJJbnNwZWN0b3IuVUlTb3VyY2VDb2RlKHVybCwgbnVs
bCwgY29udGVudFByb3ZpZGVyLCBudWxsKTsKKyAgICAgICAgdmFyIHVpU291cmNlQ29kZSA9IG5l
dyBXZWJJbnNwZWN0b3IuVUlTb3VyY2VDb2RlKHVybCwgY29udGVudFByb3ZpZGVyLCBudWxsKTsK
ICAgICAgICAgdWlTb3VyY2VDb2RlLmlzQ29udGVudFNjcmlwdCA9IGlzQ29udGVudFNjcmlwdDsK
ICAgICAgICAgbmF2aWdhdG9yRmlsZVNlbGVjdG9yLmFkZFVJU291cmNlQ29kZSh1aVNvdXJjZUNv
ZGUpOwogICAgIH0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci9z
Y3JpcHRzLXBhbmVsLmh0bWwgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZGVidWdnZXIvc2NyaXB0
cy1wYW5lbC5odG1sCmluZGV4IDY5ZjQ0MWIxNWNmNTU4OGE2N2UyMDM3NTIxYWE0YTRkY2UyZWY3
MTIuLjUyMjIxYmY0MTIyYzlkYWQ1YTBjZjc2NGNiYzE1ZTUyMTM5MTlkOWIgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci9zY3JpcHRzLXBhbmVsLmh0bWwKKysrIGIv
TGF5b3V0VGVzdHMvaW5zcGVjdG9yL2RlYnVnZ2VyL3NjcmlwdHMtcGFuZWwuaHRtbApAQCAtMjQs
NyArMjQsNyBAQCBmdW5jdGlvbiB0ZXN0KCkKICAgICAKICAgICBmdW5jdGlvbiBjcmVhdGVVSVNv
dWNlQ29kZSh1cmwpCiAgICAgewotICAgICAgICB2YXIgdWlTb3VyY2VDb2RlID0gbmV3IFdlYklu
c3BlY3Rvci5KYXZhU2NyaXB0U291cmNlKHVybCwgbnVsbCwgY29udGVudFByb3ZpZGVyLCBmYWxz
ZSk7CisgICAgICAgIHZhciB1aVNvdXJjZUNvZGUgPSBuZXcgV2ViSW5zcGVjdG9yLkphdmFTY3Jp
cHRTb3VyY2UodXJsLCBjb250ZW50UHJvdmlkZXIsIGZhbHNlKTsKICAgICAgICAgdWlTb3VyY2VD
b2RlLnJlcXVlc3RDb250ZW50ID0gZnVuY3Rpb24oY2FsbGJhY2spCiAgICAgICAgIHsKICAgICAg
ICAgICAgIEluc3BlY3RvclRlc3QuYWRkUmVzdWx0KCJTb3VyY2UgcmVxdWVzdGVkIGZvciAiICsg
dXJsKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci9zY3JpcHRz
LXNvcnRpbmcuaHRtbCBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci9zY3JpcHRzLXNv
cnRpbmcuaHRtbAppbmRleCAzMzdiNzBhOTZlYTc3ZmY1MTlkYTM5Y2QzMWExMmMzM2ZhYzFkZDNh
Li5lM2ZmNDM3MDQ2Y2UwZDkyMWQxNDI3OWM1MzhmZDUxMTIxNTkxODNlIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9pbnNwZWN0b3IvZGVidWdnZXIvc2NyaXB0cy1zb3J0aW5nLmh0bWwKKysrIGIv
TGF5b3V0VGVzdHMvaW5zcGVjdG9yL2RlYnVnZ2VyL3NjcmlwdHMtc29ydGluZy5odG1sCkBAIC0y
MSw3ICsyMSw3IEBAIGZ1bmN0aW9uIHRlc3QoKQogCiAgICAgZnVuY3Rpb24gYWRkVUlTb3VyY2VD
b2RlKHVybCwgaXNDb250ZW50U2NyaXB0KQogICAgIHsKLSAgICAgICAgdmFyIHVpU291cmNlQ29k
ZSA9IG5ldyBXZWJJbnNwZWN0b3IuVUlTb3VyY2VDb2RlKHVybCwgbnVsbCwgY29udGVudFByb3Zp
ZGVyLCBudWxsKTsKKyAgICAgICAgdmFyIHVpU291cmNlQ29kZSA9IG5ldyBXZWJJbnNwZWN0b3Iu
VUlTb3VyY2VDb2RlKHVybCwgY29udGVudFByb3ZpZGVyLCBudWxsKTsKICAgICAgICAgdWlTb3Vy
Y2VDb2RlLmlzQ29udGVudFNjcmlwdCA9IGlzQ29udGVudFNjcmlwdDsKICAgICAgICAgbmF2aWdh
dG9yRmlsZVNlbGVjdG9yLmFkZFVJU291cmNlQ29kZSh1aVNvdXJjZUNvZGUpOwogICAgIH0KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci91aS1zb3VyY2UtY29kZS1k
aXNwbGF5LW5hbWUuaHRtbCBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci91aS1zb3Vy
Y2UtY29kZS1kaXNwbGF5LW5hbWUuaHRtbAppbmRleCAzOWM0OWNiYzM5NmI5YmJhOGM4ZGE2MjVk
NzA4OGFiYjNkYjRkMDE3Li4xYzQ5ZTFjMjQ3Y2JlMTc2OTFiZWMwZGQzY2Q4MTU5YjUyNzgzYjAw
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZGVidWdnZXIvdWktc291cmNlLWNv
ZGUtZGlzcGxheS1uYW1lLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2RlYnVnZ2Vy
L3VpLXNvdXJjZS1jb2RlLWRpc3BsYXktbmFtZS5odG1sCkBAIC02LDcgKzYsNyBAQCBmdW5jdGlv
biB0ZXN0KCkKIHsKICAgICBmdW5jdGlvbiBkdW1wVUlTb3VyY2VDb2RlRGlzcGxheU5hbWUodXJs
KQogICAgIHsKLSAgICAgICAgdmFyIHVpU291cmNlQ29kZSA9IG5ldyBXZWJJbnNwZWN0b3IuVUlT
b3VyY2VDb2RlKHVybCwgbnVsbCwgbnVsbCk7CisgICAgICAgIHZhciB1aVNvdXJjZUNvZGUgPSBu
ZXcgV2ViSW5zcGVjdG9yLlVJU291cmNlQ29kZSh1cmwsIG51bGwpOwogICAgICAgICBJbnNwZWN0
b3JUZXN0LmFkZFJlc3VsdCgiVUlTb3VyY2VDb2RlIGRpc3BsYXkgbmFtZSBmb3IgdXJsIFwiIiAr
IHVybCArICJcIiBpcyBcIiIgKyBXZWJJbnNwZWN0b3IuVGFiYmVkRWRpdG9yQ29udGFpbmVyLnBy
b3RvdHlwZS5fdGl0bGVGb3JGaWxlKHVpU291cmNlQ29kZSkgKyAiXCIuIik7CiAgICAgfQogCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZGVidWdnZXIvdWktc291cmNlLWNvZGUu
aHRtbCBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci91aS1zb3VyY2UtY29kZS5odG1s
CmluZGV4IDQ4ZTI0NDBjM2VkMTVkZTViYzk4NjliNGI2MGQyY2M3OTA5NWE3NzQuLjBlOTI5M2Qx
ODA2MjIyMmYzMGNmN2Y2NmVlOTljMTE3YjVmODhiODcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2luc3BlY3Rvci9kZWJ1Z2dlci91aS1zb3VyY2UtY29kZS5odG1sCisrKyBiL0xheW91dFRlc3Rz
L2luc3BlY3Rvci9kZWJ1Z2dlci91aS1zb3VyY2UtY29kZS5odG1sCkBAIC0xNyw3ICsxNyw3IEBA
IGZ1bmN0aW9uIHRlc3QoKQogICAgIEluc3BlY3RvclRlc3QucnVuVGVzdFN1aXRlKFsKICAgICAg
ICAgZnVuY3Rpb24gdGVzdFVJU291cmNlQ29kZShuZXh0KQogICAgICAgICB7Ci0gICAgICAgICAg
ICB2YXIgdWlTb3VyY2VDb2RlID0gbmV3IFdlYkluc3BlY3Rvci5VSVNvdXJjZUNvZGUoInVybCIs
IG51bGwsIGNvbnRlbnRQcm92aWRlcik7CisgICAgICAgICAgICB2YXIgdWlTb3VyY2VDb2RlID0g
bmV3IFdlYkluc3BlY3Rvci5VSVNvdXJjZUNvZGUoInVybCIsIGNvbnRlbnRQcm92aWRlcik7CiAg
ICAgICAgICAgICBmdW5jdGlvbiBkaWRSZXF1ZXN0Q29udGVudChjYWxsTnVtYmVyLCBjb250ZW50
LCBjb250ZW50RW5jb2RlZCwgbWltZVR5cGUpCiAgICAgICAgICAgICB7CiAgICAgICAgICAgICAg
ICAgSW5zcGVjdG9yVGVzdC5hZGRSZXN1bHQoIkNhbGxiYWNrICIgKyBjYWxsTnVtYmVyICsgIiBp
cyBpbnZva2VkLiIpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>165588</attachid>
            <date>2012-09-25 05:26:50 -0700</date>
            <delta_ts>2012-09-25 09:37:58 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-97557-20120925162609.patch</filename>
            <type>text/plain</type>
            <size>33387</size>
            <attacher name="Vsevolod Vlasov">vsevik</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI5NDg1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTA2NzVmNjY2MmI5OTM4
YTEwMWQwZTJjOTE1Y2MxNWQyYzhhN2I3MS4uNWUzNWE4OTliZmZlZDEzYmJhMjVlMmIwM2I0Mzk5
Yzg2MTc3ZDA1NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDU2IEBACiAyMDEyLTA5LTI1ICBWc2V2
b2xvZCBWbGFzb3YgIDx2c2V2aWtAY2hyb21pdW0ub3JnPgogCisgICAgICAgIFdlYiBJbnNwZWN0
b3I6IFJlbW92ZSByZXNvdXJjZSgpIGdldHRlciBmcm9tIFVJU291cmNlQ29kZS4KKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTk3NTU3CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUmVzb3VyY2UgZ2V0dGVyIHJl
bW92ZWQgZnJvbSBVSVNvdXJjZUNvZGUuIFJlc291cmNlIGNvdWxkIGJlIGZldGNoZWQgZnJvbSBS
ZXNvdXJjZVRyZWVNb2RlbCBkaXJlY3RseS4KKworICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1l
bmQvQ1NTU3R5bGVNb2RlbC5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5DU1NTdHlsZU1vZGVs
UmVzb3VyY2VCaW5kaW5nLnByb3RvdHlwZS5zZXRTdHlsZUNvbnRlbnQpOgorICAgICAgICAqIGlu
c3BlY3Rvci9mcm9udC1lbmQvQ29tcGlsZXJTY3JpcHRNYXBwaW5nLmpzOgorICAgICAgICAqIGlu
c3BlY3Rvci9mcm9udC1lbmQvSmF2YVNjcmlwdFNvdXJjZS5qczoKKyAgICAgICAgKFdlYkluc3Bl
Y3Rvci5KYXZhU2NyaXB0U291cmNlKToKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL05l
dHdvcmtVSVNvdXJjZUNvZGVQcm92aWRlci5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5OZXR3
b3JrVUlTb3VyY2VDb2RlUHJvdmlkZXIucHJvdG90eXBlLl9yZXNvdXJjZUFkZGVkKToKKyAgICAg
ICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL1Jlc291cmNlU2NyaXB0TWFwcGluZy5qczoKKyAgICAg
ICAgKFdlYkluc3BlY3Rvci5SZXNvdXJjZVNjcmlwdE1hcHBpbmcucHJvdG90eXBlLl9hZGRPclJl
cGxhY2VUZW1wb3JhcnlVSVNvdXJjZUNvZGUpOgorICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1l
bmQvU0FTU1NvdXJjZU1hcHBpbmcuanM6CisgICAgICAgIChXZWJJbnNwZWN0b3IuU0FTU1NvdXJj
ZSk6CisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9TY3JpcHRTbmlwcGV0TW9kZWwuanM6
CisgICAgICAgIChXZWJJbnNwZWN0b3IuU2NyaXB0U25pcHBldE1vZGVsLnByb3RvdHlwZS5fY3Jl
YXRlVUlTb3VyY2VDb2RlRm9yU2NyaXB0KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5TbmlwcGV0
SmF2YVNjcmlwdFNvdXJjZSk6CisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9TY3JpcHRz
UGFuZWwuanM6CisgICAgICAgIChXZWJJbnNwZWN0b3IuU2NyaXB0c1BhbmVsLnByb3RvdHlwZS5f
YXBwZW5kVUlTb3VyY2VDb2RlSXRlbXMpOgorICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQv
U3R5bGVTb3VyY2UuanM6CisgICAgICAgIChXZWJJbnNwZWN0b3IuU3R5bGVTb3VyY2UpOgorICAg
ICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvVUlTb3VyY2VDb2RlLmpzOgorICAgICAgICAoV2Vi
SW5zcGVjdG9yLlVJU291cmNlQ29kZSk6CisKKzIwMTItMDktMjAgIFZzZXZvbG9kIFZsYXNvdiAg
PHZzZXZpa0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgV2ViIEluc3BlY3RvcjogUHJvdmlkZSBh
IHdheSB0byBkaXN0aW5ndWlzaCBzY3JpcHRzIGhhdmluZyBzb3VyY2VVUkwgZnJvbSBzdGFuZGFs
b25lIHNjcmlwdHMuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD05NzIzMQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIERlYnVnZ2VyQWdlbnQgbm93IHNjYW5zIHNjcmlwdHMgZm9yIHNvdXJjZVVSTCBjb21tZW50
IGFuZCBwcm92aWRlcworICAgICAgICBoYXNTb3VyY2VVUkwgZmxhZyBmb3IgZWFjaCBub24taW5s
aW5lIHNjcmlwdCB3aXRoIHN1Y2ggYSBjb21tZW50LgorCisgICAgICAgICogYmluZGluZ3MvanMv
U2NyaXB0RGVidWdTZXJ2ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2NyaXB0RGVidWdTZXJ2
ZXI6OmRpc3BhdGNoRGlkUGFyc2VTb3VyY2UpOgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0
b3IuanNvbjoKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9yRGVidWdnZXJBZ2VudC5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JEZWJ1Z2dlckFnZW50OjpkaWRQYXJzZVNvdXJj
ZSk6CisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9EZWJ1Z2dlck1vZGVsLmpzOgorICAg
ICAgICAoV2ViSW5zcGVjdG9yLkRlYnVnZ2VyTW9kZWwucHJvdG90eXBlLl9wYXJzZWRTY3JpcHRT
b3VyY2UpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkRlYnVnZ2VyRGlzcGF0Y2hlci5wcm90b3R5
cGUuc2NyaXB0UGFyc2VkKToKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL1NjcmlwdC5q
czoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5TY3JpcHQpOgorCisyMDEyLTA5LTI1ICBWc2V2b2xv
ZCBWbGFzb3YgIDx2c2V2aWtAY2hyb21pdW0ub3JnPgorCiAgICAgICAgIFdlYiBJbnNwZWN0b3I6
IFJlc291cmNlU2NyaXB0TWFwcGluZyBzaG91bGQgbm8gc3RlYWwgc2NyaXB0cyBmcm9tIG90aGVy
IG1hcHBpbmdzLgogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9OTc0NTMKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvU2NyaXB0
RGVidWdTZXJ2ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvU2NyaXB0RGVidWdT
ZXJ2ZXIuY3BwCmluZGV4IGFhNjBhMmRkOGEzNThiZmM1ZGUxMWQzYjBjNDcwZTJlYjkxNGRiYTEu
LjliMmIwOTM2YjgzZmYyNDBiY2U1NjE2NjViMGRiZDQxZDU5MmRiOWYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1NjcmlwdERlYnVnU2VydmVyLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9TY3JpcHREZWJ1Z1NlcnZlci5jcHAKQEAgLTMyNiw4ICsz
MjYsMTEgQEAgdm9pZCBTY3JpcHREZWJ1Z1NlcnZlcjo6ZGlzcGF0Y2hEaWRQYXJzZVNvdXJjZShj
b25zdCBMaXN0ZW5lclNldCYgbGlzdGVuZXJzLCBTb3UKICAgICBzY3JpcHQuaXNDb250ZW50U2Ny
aXB0ID0gaXNDb250ZW50U2NyaXB0OwogCiAjaWYgRU5BQkxFKElOU1BFQ1RPUikKLSAgICBpZiAo
c2NyaXB0LnVybC5pc0VtcHR5KCkpCi0gICAgICAgIHNjcmlwdC51cmwgPSBDb250ZW50U2VhcmNo
VXRpbHM6OmZpbmRTb3VyY2VVUkwoc2NyaXB0LnNvdXJjZSk7CisgICAgaWYgKCFzY3JpcHQuc3Rh
cnRMaW5lICYmICFzY3JpcHQuc3RhcnRDb2x1bW4pIHsKKyAgICAgICAgU3RyaW5nIHNvdXJjZVVS
TCA9IENvbnRlbnRTZWFyY2hVdGlsczo6ZmluZFNvdXJjZVVSTChzY3JpcHQuc291cmNlKTsKKyAg
ICAgICAgaWYgKCFzb3VyY2VVUkwuaXNFbXB0eSgpKQorICAgICAgICAgICAgc2NyaXB0LnVybCA9
IHNvdXJjZVVSTDsKKyAgICB9CiAjZW5kaWYKIAogICAgIGludCBzb3VyY2VMZW5ndGggPSBzY3Jp
cHQuc291cmNlLmxlbmd0aCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L0luc3BlY3Rvci5qc29uIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvci5qc29u
CmluZGV4IDIxZDkyN2MyMTM4N2Q2MmVjMWQ2YzQyNDQ3Y2FlZDVlMjEyYzY4YzIuLmYyODcwNGIw
YWJkZDcxOGVkYjkxYTdkNDQ3YzIxYjczN2U2N2EzNDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9JbnNwZWN0b3IuanNvbgorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0
b3IvSW5zcGVjdG9yLmpzb24KQEAgLTI3NjAsNyArMjc2MCw4IEBACiAgICAgICAgICAgICAgICAg
ICAgIHsgIm5hbWUiOiAiZW5kTGluZSIsICJ0eXBlIjogImludGVnZXIiLCAiZGVzY3JpcHRpb24i
OiAiTGFzdCBsaW5lIG9mIHRoZSBzY3JpcHQuIiB9LAogICAgICAgICAgICAgICAgICAgICB7ICJu
YW1lIjogImVuZENvbHVtbiIsICJ0eXBlIjogImludGVnZXIiLCAiZGVzY3JpcHRpb24iOiAiTGVu
Z3RoIG9mIHRoZSBsYXN0IGxpbmUgb2YgdGhlIHNjcmlwdC4iIH0sCiAgICAgICAgICAgICAgICAg
ICAgIHsgIm5hbWUiOiAiaXNDb250ZW50U2NyaXB0IiwgInR5cGUiOiAiYm9vbGVhbiIsICJvcHRp
b25hbCI6IHRydWUsICJkZXNjcmlwdGlvbiI6ICJEZXRlcm1pbmVzIHdoZXRoZXIgdGhpcyBzY3Jp
cHQgaXMgYSB1c2VyIGV4dGVuc2lvbiBzY3JpcHQuIiB9LAotICAgICAgICAgICAgICAgICAgICB7
ICJuYW1lIjogInNvdXJjZU1hcFVSTCIsICJ0eXBlIjogInN0cmluZyIsICJvcHRpb25hbCI6IHRy
dWUsICJkZXNjcmlwdGlvbiI6ICJVUkwgb2Ygc291cmNlIG1hcCBhc3NvY2lhdGVkIHdpdGggc2Ny
aXB0IChpZiBhbnkpLiIgfQorICAgICAgICAgICAgICAgICAgICB7ICJuYW1lIjogInNvdXJjZU1h
cFVSTCIsICJ0eXBlIjogInN0cmluZyIsICJvcHRpb25hbCI6IHRydWUsICJkZXNjcmlwdGlvbiI6
ICJVUkwgb2Ygc291cmNlIG1hcCBhc3NvY2lhdGVkIHdpdGggc2NyaXB0IChpZiBhbnkpLiIgfSwK
KyAgICAgICAgICAgICAgICAgICAgeyAibmFtZSI6ICJoYXNTb3VyY2VVUkwiLCAidHlwZSI6ICJi
b29sZWFuIiwgIm9wdGlvbmFsIjogdHJ1ZSwgImRlc2NyaXB0aW9uIjogIlRydWUsIGlmIHRoaXMg
c2NyaXB0IGhhcyBzb3VyY2VVUkwuIiB9CiAgICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAg
ICAgICAiZGVzY3JpcHRpb24iOiAiRmlyZWQgd2hlbiB2aXJ0dWFsIG1hY2hpbmUgcGFyc2VzIHNj
cmlwdC4gVGhpcyBldmVudCBpcyBhbHNvIGZpcmVkIGZvciBhbGwga25vd24gYW5kIHVuY29sbGVj
dGVkIHNjcmlwdHMgdXBvbiBlbmFibGluZyBkZWJ1Z2dlci4iCiAgICAgICAgICAgICB9LApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckRlYnVnZ2VyQWdlbnQu
Y3BwIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckRlYnVnZ2VyQWdlbnQuY3Bw
CmluZGV4IGFhMDQ3YzkxNDA0N2U0OTI5NWE1MDAyZjA0ZDczZGFkM2FhZjAwNDMuLjEyN2MxY2Fk
NWFjZWEyZDRkNzU0MGIwMTVkZDZlZjcwM2ZlN2QxZjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9JbnNwZWN0b3JEZWJ1Z2dlckFnZW50LmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRGVidWdnZXJBZ2VudC5jcHAKQEAgLTYzMCw3ICs2MzAs
MTIgQEAgdm9pZCBJbnNwZWN0b3JEZWJ1Z2dlckFnZW50OjpkaWRQYXJzZVNvdXJjZShjb25zdCBT
dHJpbmcmIHNjcmlwdElkLCBjb25zdCBTY3JpcHQKICAgICBjb25zdCBib29sKiBpc0NvbnRlbnRT
Y3JpcHQgPSBzY3JpcHQuaXNDb250ZW50U2NyaXB0ID8gJnNjcmlwdC5pc0NvbnRlbnRTY3JpcHQg
OiAwOwogICAgIFN0cmluZyBzb3VyY2VNYXBVUkwgPSBzb3VyY2VNYXBVUkxGb3JTY3JpcHQoc2Ny
aXB0KTsKICAgICBTdHJpbmcqIHNvdXJjZU1hcFVSTFBhcmFtID0gc291cmNlTWFwVVJMLmlzTnVs
bCgpID8gMCA6ICZzb3VyY2VNYXBVUkw7Ci0gICAgbV9mcm9udGVuZC0+c2NyaXB0UGFyc2VkKHNj
cmlwdElkLCBzY3JpcHQudXJsLCBzY3JpcHQuc3RhcnRMaW5lLCBzY3JpcHQuc3RhcnRDb2x1bW4s
IHNjcmlwdC5lbmRMaW5lLCBzY3JpcHQuZW5kQ29sdW1uLCBpc0NvbnRlbnRTY3JpcHQsIHNvdXJj
ZU1hcFVSTFBhcmFtKTsKKyAgICBTdHJpbmcgc291cmNlVVJMOworICAgIGlmICghc2NyaXB0LnN0
YXJ0TGluZSAmJiAhc2NyaXB0LnN0YXJ0Q29sdW1uKQorICAgICAgICBzb3VyY2VVUkwgPSBDb250
ZW50U2VhcmNoVXRpbHM6OmZpbmRTb3VyY2VVUkwoc2NyaXB0LnNvdXJjZSk7CisgICAgYm9vbCBo
YXNTb3VyY2VVUkwgPSAhc291cmNlVVJMLmlzRW1wdHkoKSAmJiBzb3VyY2VVUkwgPT0gc2NyaXB0
LnVybDsKKyAgICBib29sKiBoYXNTb3VyY2VVUkxQYXJhbSA9IGhhc1NvdXJjZVVSTCA/ICZoYXNT
b3VyY2VVUkwgOiAwOworICAgIG1fZnJvbnRlbmQtPnNjcmlwdFBhcnNlZChzY3JpcHRJZCwgc2Ny
aXB0LnVybCwgc2NyaXB0LnN0YXJ0TGluZSwgc2NyaXB0LnN0YXJ0Q29sdW1uLCBzY3JpcHQuZW5k
TGluZSwgc2NyaXB0LmVuZENvbHVtbiwgaXNDb250ZW50U2NyaXB0LCBzb3VyY2VNYXBVUkxQYXJh
bSwgaGFzU291cmNlVVJMUGFyYW0pOwogCiAgICAgbV9zY3JpcHRzLnNldChzY3JpcHRJZCwgc2Ny
aXB0KTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9D
U1NTdHlsZU1vZGVsLmpzIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9DU1NT
dHlsZU1vZGVsLmpzCmluZGV4IGUwNzFmNjBmYWYwMTJiOGFiMmExNTMxOWUyMzE2NDMzM2I5MzE5
OGMuLjQ4ODY5YmYxMDA2NTRjY2NhYTRkYjk0NWI5NjJmZThjYTkzNTY4NDAgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvQ1NTU3R5bGVNb2RlbC5qcworKysg
Yi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0NTU1N0eWxlTW9kZWwuanMKQEAg
LTExMTgsNyArMTExOCw3IEBAIFdlYkluc3BlY3Rvci5DU1NTdHlsZU1vZGVsUmVzb3VyY2VCaW5k
aW5nLnByb3RvdHlwZSA9IHsKICAgICAgKi8KICAgICBzZXRTdHlsZUNvbnRlbnQ6IGZ1bmN0aW9u
KHN0eWxlU291cmNlLCBjb250ZW50LCBtYWpvckNoYW5nZSwgdXNlckNhbGxiYWNrKQogICAgIHsK
LSAgICAgICAgdmFyIHJlc291cmNlID0gc3R5bGVTb3VyY2UucmVzb3VyY2UoKTsKKyAgICAgICAg
dmFyIHJlc291cmNlID0gV2ViSW5zcGVjdG9yLnJlc291cmNlRm9yVVJMKHN0eWxlU291cmNlLnVy
bCk7CiAgICAgICAgIGlmICh0aGlzLl9zdHlsZVNoZWV0SWRGb3JSZXNvdXJjZShyZXNvdXJjZSkp
IHsKICAgICAgICAgICAgIHRoaXMuX2lubmVyU2V0Q29udGVudChyZXNvdXJjZSwgY29udGVudCwg
bWFqb3JDaGFuZ2UsIHVzZXJDYWxsYmFjaywgbnVsbCk7CiAgICAgICAgICAgICByZXR1cm47CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0NvbXBpbGVyU2Ny
aXB0TWFwcGluZy5qcyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvQ29tcGls
ZXJTY3JpcHRNYXBwaW5nLmpzCmluZGV4IDdmNGI5ZGFlM2QwYTk4MGZjN2ZhNGQ0Zjc3MzJjNzM5
OTkxYmQzZmIuLjA1ZTJiNzM4N2VkZDJlYWJlMDM1MzFiYWYwODkyYTUzMDcyMjU2OWUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvQ29tcGlsZXJTY3JpcHRN
YXBwaW5nLmpzCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvQ29tcGls
ZXJTY3JpcHRNYXBwaW5nLmpzCkBAIC04NCw3ICs4NCw3IEBAIFdlYkluc3BlY3Rvci5Db21waWxl
clNjcmlwdE1hcHBpbmcucHJvdG90eXBlID0gewogICAgICAqLwogICAgIGFkZFNjcmlwdDogZnVu
Y3Rpb24oc2NyaXB0KQogICAgIHsKLSAgICAgICAgdmFyIG9yaWdpbmFsVUlTb3VyY2VDb2RlID0g
bmV3IFdlYkluc3BlY3Rvci5KYXZhU2NyaXB0U291cmNlKHNjcmlwdC5zb3VyY2VVUkwsIG51bGws
IHNjcmlwdCwgdHJ1ZSk7CisgICAgICAgIHZhciBvcmlnaW5hbFVJU291cmNlQ29kZSA9IG5ldyBX
ZWJJbnNwZWN0b3IuSmF2YVNjcmlwdFNvdXJjZShzY3JpcHQuc291cmNlVVJMLCBzY3JpcHQsIHRy
dWUpOwogICAgICAgICB0aGlzLl9vcmlnaW5hbFVJU291cmNlQ29kZUZvclNjcmlwdElkW3Njcmlw
dC5zY3JpcHRJZF0gPSBvcmlnaW5hbFVJU291cmNlQ29kZTsKICAgICAgICAgdGhpcy5fc2NyaXB0
Rm9yT3JpZ2luYWxVSVNvdXJjZS5wdXQob3JpZ2luYWxVSVNvdXJjZUNvZGUsIHNjcmlwdCk7CiAg
ICAgICAgIHRoaXMuX3dvcmtzcGFjZS5wcm9qZWN0KCkuYWRkVUlTb3VyY2VDb2RlKG9yaWdpbmFs
VUlTb3VyY2VDb2RlKTsKQEAgLTEwOSw3ICsxMDksNyBAQCBXZWJJbnNwZWN0b3IuQ29tcGlsZXJT
Y3JpcHRNYXBwaW5nLnByb3RvdHlwZSA9IHsKICAgICAgICAgICAgICAgICBjb250ZW50UHJvdmlk
ZXIgPSBuZXcgV2ViSW5zcGVjdG9yLlN0YXRpY0NvbnRlbnRQcm92aWRlcihXZWJJbnNwZWN0b3Iu
cmVzb3VyY2VUeXBlcy5TY3JpcHQsIHNvdXJjZUNvbnRlbnQpOwogICAgICAgICAgICAgZWxzZQog
ICAgICAgICAgICAgICAgIGNvbnRlbnRQcm92aWRlciA9IG5ldyBXZWJJbnNwZWN0b3IuQ29tcGls
ZXJTb3VyY2VNYXBwaW5nQ29udGVudFByb3ZpZGVyKHNvdXJjZVVSTCk7Ci0gICAgICAgICAgICB2
YXIgdWlTb3VyY2VDb2RlID0gbmV3IFdlYkluc3BlY3Rvci5KYXZhU2NyaXB0U291cmNlKHNvdXJj
ZVVSTCwgbnVsbCwgY29udGVudFByb3ZpZGVyLCBmYWxzZSk7CisgICAgICAgICAgICB2YXIgdWlT
b3VyY2VDb2RlID0gbmV3IFdlYkluc3BlY3Rvci5KYXZhU2NyaXB0U291cmNlKHNvdXJjZVVSTCwg
Y29udGVudFByb3ZpZGVyLCBmYWxzZSk7CiAgICAgICAgICAgICB1aVNvdXJjZUNvZGUuc2V0U291
cmNlTWFwcGluZyh0aGlzKTsKICAgICAgICAgICAgIHVpU291cmNlQ29kZS5pc0NvbnRlbnRTY3Jp
cHQgPSBzY3JpcHQuaXNDb250ZW50U2NyaXB0OwogICAgICAgICAgICAgdGhpcy5fdWlTb3VyY2VD
b2RlQnlVUkxbc291cmNlVVJMXSA9IHVpU291cmNlQ29kZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvRGVidWdnZXJNb2RlbC5qcyBiL1NvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9mcm9udC1lbmQvRGVidWdnZXJNb2RlbC5qcwppbmRleCAyMWZiNDViYTE2
NjNlN2NhMWFhYTlmZjIyNGUwZmMwZGNhNzU4NTE0Li5hZmZlZmUwZjBlYTMwZWU1NTM3NzI1ZDY3
YzkwNTI1Njc4MWQ1ZTFkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJv
bnQtZW5kL0RlYnVnZ2VyTW9kZWwuanMKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zy
b250LWVuZC9EZWJ1Z2dlck1vZGVsLmpzCkBAIC0zNzEsMTAgKzM3MSwxMiBAQCBXZWJJbnNwZWN0
b3IuRGVidWdnZXJNb2RlbC5wcm90b3R5cGUgPSB7CiAgICAgICogQHBhcmFtIHtudW1iZXJ9IGVu
ZExpbmUKICAgICAgKiBAcGFyYW0ge251bWJlcn0gZW5kQ29sdW1uCiAgICAgICogQHBhcmFtIHti
b29sZWFufSBpc0NvbnRlbnRTY3JpcHQKKyAgICAgKiBAcGFyYW0ge3N0cmluZz19IHNvdXJjZU1h
cFVSTAorICAgICAqIEBwYXJhbSB7Ym9vbGVhbj19IGhhc1NvdXJjZVVSTAogICAgICAqLwotICAg
IF9wYXJzZWRTY3JpcHRTb3VyY2U6IGZ1bmN0aW9uKHNjcmlwdElkLCBzb3VyY2VVUkwsIHN0YXJ0
TGluZSwgc3RhcnRDb2x1bW4sIGVuZExpbmUsIGVuZENvbHVtbiwgaXNDb250ZW50U2NyaXB0LCBz
b3VyY2VNYXBVUkwpCisgICAgX3BhcnNlZFNjcmlwdFNvdXJjZTogZnVuY3Rpb24oc2NyaXB0SWQs
IHNvdXJjZVVSTCwgc3RhcnRMaW5lLCBzdGFydENvbHVtbiwgZW5kTGluZSwgZW5kQ29sdW1uLCBp
c0NvbnRlbnRTY3JpcHQsIHNvdXJjZU1hcFVSTCwgaGFzU291cmNlVVJMKQogICAgIHsKLSAgICAg
ICAgdmFyIHNjcmlwdCA9IG5ldyBXZWJJbnNwZWN0b3IuU2NyaXB0KHNjcmlwdElkLCBzb3VyY2VV
UkwsIHN0YXJ0TGluZSwgc3RhcnRDb2x1bW4sIGVuZExpbmUsIGVuZENvbHVtbiwgaXNDb250ZW50
U2NyaXB0LCBzb3VyY2VNYXBVUkwpOworICAgICAgICB2YXIgc2NyaXB0ID0gbmV3IFdlYkluc3Bl
Y3Rvci5TY3JpcHQoc2NyaXB0SWQsIHNvdXJjZVVSTCwgc3RhcnRMaW5lLCBzdGFydENvbHVtbiwg
ZW5kTGluZSwgZW5kQ29sdW1uLCBpc0NvbnRlbnRTY3JpcHQsIHNvdXJjZU1hcFVSTCwgaGFzU291
cmNlVVJMKTsKICAgICAgICAgdGhpcy5fcmVnaXN0ZXJTY3JpcHQoc2NyaXB0KTsKICAgICAgICAg
dGhpcy5kaXNwYXRjaEV2ZW50VG9MaXN0ZW5lcnMoV2ViSW5zcGVjdG9yLkRlYnVnZ2VyTW9kZWwu
RXZlbnRzLlBhcnNlZFNjcmlwdFNvdXJjZSwgc2NyaXB0KTsKICAgICB9LApAQCAtNjM3LDEwICs2
MzksMTEgQEAgV2ViSW5zcGVjdG9yLkRlYnVnZ2VyRGlzcGF0Y2hlci5wcm90b3R5cGUgPSB7CiAg
ICAgICogQHBhcmFtIHtudW1iZXJ9IGVuZENvbHVtbgogICAgICAqIEBwYXJhbSB7Ym9vbGVhbj19
IGlzQ29udGVudFNjcmlwdAogICAgICAqIEBwYXJhbSB7c3RyaW5nPX0gc291cmNlTWFwVVJMCisg
ICAgICogQHBhcmFtIHtib29sZWFuPX0gaGFzU291cmNlVVJMCiAgICAgICovCi0gICAgc2NyaXB0
UGFyc2VkOiBmdW5jdGlvbihzY3JpcHRJZCwgc291cmNlVVJMLCBzdGFydExpbmUsIHN0YXJ0Q29s
dW1uLCBlbmRMaW5lLCBlbmRDb2x1bW4sIGlzQ29udGVudFNjcmlwdCwgc291cmNlTWFwVVJMKQor
ICAgIHNjcmlwdFBhcnNlZDogZnVuY3Rpb24oc2NyaXB0SWQsIHNvdXJjZVVSTCwgc3RhcnRMaW5l
LCBzdGFydENvbHVtbiwgZW5kTGluZSwgZW5kQ29sdW1uLCBpc0NvbnRlbnRTY3JpcHQsIHNvdXJj
ZU1hcFVSTCwgaGFzU291cmNlVVJMKQogICAgIHsKLSAgICAgICAgdGhpcy5fZGVidWdnZXJNb2Rl
bC5fcGFyc2VkU2NyaXB0U291cmNlKHNjcmlwdElkLCBzb3VyY2VVUkwsIHN0YXJ0TGluZSwgc3Rh
cnRDb2x1bW4sIGVuZExpbmUsIGVuZENvbHVtbiwgISFpc0NvbnRlbnRTY3JpcHQsIHNvdXJjZU1h
cFVSTCk7CisgICAgICAgIHRoaXMuX2RlYnVnZ2VyTW9kZWwuX3BhcnNlZFNjcmlwdFNvdXJjZShz
Y3JpcHRJZCwgc291cmNlVVJMLCBzdGFydExpbmUsIHN0YXJ0Q29sdW1uLCBlbmRMaW5lLCBlbmRD
b2x1bW4sICEhaXNDb250ZW50U2NyaXB0LCBzb3VyY2VNYXBVUkwsIGhhc1NvdXJjZVVSTCk7CiAg
ICAgfSwKIAogICAgIC8qKgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zy
b250LWVuZC9KYXZhU2NyaXB0U291cmNlLmpzIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zy
b250LWVuZC9KYXZhU2NyaXB0U291cmNlLmpzCmluZGV4IGE2NDFjMmQxODc3MDUwN2E4MjcyY2Qx
MmQ5OTNkMmY1OGVlNzI3ZTcuLjU2NmNlNjc4YTFjODQyYjRhZDc1MzU2NDI4OWRiZjI1MzMzZTNk
ODYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvSmF2YVNj
cmlwdFNvdXJjZS5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0ph
dmFTY3JpcHRTb3VyY2UuanMKQEAgLTMyLDEyICszMiwxMSBAQAogICogQGNvbnN0cnVjdG9yCiAg
KiBAZXh0ZW5kcyB7V2ViSW5zcGVjdG9yLlVJU291cmNlQ29kZX0KICAqIEBwYXJhbSB7c3RyaW5n
fSB1cmwKLSAqIEBwYXJhbSB7V2ViSW5zcGVjdG9yLlJlc291cmNlfSByZXNvdXJjZQogICogQHBh
cmFtIHtXZWJJbnNwZWN0b3IuQ29udGVudFByb3ZpZGVyfSBjb250ZW50UHJvdmlkZXIKICAqLwot
V2ViSW5zcGVjdG9yLkphdmFTY3JpcHRTb3VyY2UgPSBmdW5jdGlvbih1cmwsIHJlc291cmNlLCBj
b250ZW50UHJvdmlkZXIsIGlzRWRpdGFibGUpCitXZWJJbnNwZWN0b3IuSmF2YVNjcmlwdFNvdXJj
ZSA9IGZ1bmN0aW9uKHVybCwgY29udGVudFByb3ZpZGVyLCBpc0VkaXRhYmxlKQogewotICAgIFdl
Ykluc3BlY3Rvci5VSVNvdXJjZUNvZGUuY2FsbCh0aGlzLCB1cmwsIHJlc291cmNlLCBjb250ZW50
UHJvdmlkZXIpOworICAgIFdlYkluc3BlY3Rvci5VSVNvdXJjZUNvZGUuY2FsbCh0aGlzLCB1cmws
IGNvbnRlbnRQcm92aWRlcik7CiAgICAgdGhpcy5faXNFZGl0YWJsZSA9IGlzRWRpdGFibGU7CiB9
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvTmV0d29y
a1VJU291cmNlQ29kZVByb3ZpZGVyLmpzIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250
LWVuZC9OZXR3b3JrVUlTb3VyY2VDb2RlUHJvdmlkZXIuanMKaW5kZXggZjE2MjVmNjRjZmFmMzZl
MzE1YjBmZTNjYTdmMjM0YTAwMDA3YWUxZC4uYWUzNGZlYmEwMTBiNjNlYzAxYmM5YjA1Y2UzNmE5
ZmEyNjFiNjQ2ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVu
ZC9OZXR3b3JrVUlTb3VyY2VDb2RlUHJvdmlkZXIuanMKKysrIGIvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL2Zyb250LWVuZC9OZXR3b3JrVUlTb3VyY2VDb2RlUHJvdmlkZXIuanMKQEAgLTcyLDEw
ICs3MiwxMCBAQCBXZWJJbnNwZWN0b3IuTmV0d29ya1VJU291cmNlQ29kZVByb3ZpZGVyLnByb3Rv
dHlwZSA9IHsKICAgICAgICAgICAgIHVpU291cmNlQ29kZSA9IG5ldyBXZWJJbnNwZWN0b3IuU3R5
bGVTb3VyY2UocmVzb3VyY2UpOwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIGNhc2UgV2Vi
SW5zcGVjdG9yLnJlc291cmNlVHlwZXMuRG9jdW1lbnQ6Ci0gICAgICAgICAgICB1aVNvdXJjZUNv
ZGUgPSBuZXcgV2ViSW5zcGVjdG9yLkphdmFTY3JpcHRTb3VyY2UocmVzb3VyY2UudXJsLCByZXNv
dXJjZSwgcmVzb3VyY2UsIGZhbHNlKTsKKyAgICAgICAgICAgIHVpU291cmNlQ29kZSA9IG5ldyBX
ZWJJbnNwZWN0b3IuSmF2YVNjcmlwdFNvdXJjZShyZXNvdXJjZS51cmwsIHJlc291cmNlLCBmYWxz
ZSk7CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgY2FzZSBXZWJJbnNwZWN0b3IucmVzb3Vy
Y2VUeXBlcy5TY3JpcHQ6Ci0gICAgICAgICAgICB1aVNvdXJjZUNvZGUgPSBuZXcgV2ViSW5zcGVj
dG9yLkphdmFTY3JpcHRTb3VyY2UocmVzb3VyY2UudXJsLCByZXNvdXJjZSwgcmVzb3VyY2UsIHRy
dWUpOworICAgICAgICAgICAgdWlTb3VyY2VDb2RlID0gbmV3IFdlYkluc3BlY3Rvci5KYXZhU2Ny
aXB0U291cmNlKHJlc291cmNlLnVybCwgcmVzb3VyY2UsIHRydWUpOwogICAgICAgICAgICAgYnJl
YWs7CiAgICAgICAgIH0KICAgICAgICAgaWYgKHVpU291cmNlQ29kZSkgewpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9SZXNvdXJjZVNjcmlwdE1hcHBpbmcu
anMgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1Jlc291cmNlU2NyaXB0TWFw
cGluZy5qcwppbmRleCA2ZGZlYjExZmY0NDU4NjdjMTMzNjU4ZDVkYWQ2NTRjMmU3ZTQ1OTBkLi5k
NzJhMWM2NDkxNDI5ZWIwODMzNDc3N2Y1MzFjMzUzOWI2NzNjM2QyIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1Jlc291cmNlU2NyaXB0TWFwcGluZy5qcwor
KysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1Jlc291cmNlU2NyaXB0TWFw
cGluZy5qcwpAQCAtMTUwLDcgKzE1MCw3IEBAIFdlYkluc3BlY3Rvci5SZXNvdXJjZVNjcmlwdE1h
cHBpbmcucHJvdG90eXBlID0gewogICAgICAgICAgICAgdXJsICs9ICIgKCIgKyBuZXh0SW5kZXgg
KyAiKSI7CiAgICAgICAgICAgICB0aGlzLl9uZXh0RHluYW1pY1NjcmlwdEluZGV4Rm9yVVJMW3Nj
cmlwdC5zb3VyY2VVUkxdID0gbmV4dEluZGV4ICsgMTsKICAgICAgICAgfQotICAgICAgICB2YXIg
dWlTb3VyY2VDb2RlID0gbmV3IFdlYkluc3BlY3Rvci5KYXZhU2NyaXB0U291cmNlKHVybCwgbnVs
bCwgY29udGVudFByb3ZpZGVyLCAhc2NyaXB0LmlzSW5saW5lU2NyaXB0KCkpOworICAgICAgICB2
YXIgdWlTb3VyY2VDb2RlID0gbmV3IFdlYkluc3BlY3Rvci5KYXZhU2NyaXB0U291cmNlKHVybCwg
Y29udGVudFByb3ZpZGVyLCAhc2NyaXB0LmlzSW5saW5lU2NyaXB0KCkpOwogICAgICAgICB0aGlz
Ll90ZW1wb3JhcnlVSVNvdXJjZUNvZGVzLnB1dCh1aVNvdXJjZUNvZGUsIHVpU291cmNlQ29kZSk7
CiAgICAgICAgIHRoaXMuX2JpbmRVSVNvdXJjZUNvZGVUb1NjcmlwdHModWlTb3VyY2VDb2RlLCBz
Y3JpcHRzKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVu
ZC9TQVNTU291cmNlTWFwcGluZy5qcyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1l
bmQvU0FTU1NvdXJjZU1hcHBpbmcuanMKaW5kZXggMGI4ZTk2ZTZlNDgwYTA5MzY1MTNjYzk3YWVj
Mzc5NDRlNDBhODFlNC4uNDNjZTNiNGEzNjkxMzY4MzZhMGQzMjIzNDQ1OTc5NGI5ODdlODkyMyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TQVNTU291cmNl
TWFwcGluZy5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1NBU1NT
b3VyY2VNYXBwaW5nLmpzCkBAIC0xNjcsNyArMTY3LDcgQEAgV2ViSW5zcGVjdG9yLlNBU1NTb3Vy
Y2UgPSBmdW5jdGlvbihzYXNzVVJMKQogewogICAgIHZhciBjb250ZW50ID0gSW5zcGVjdG9yRnJv
bnRlbmRIb3N0LmxvYWRSZXNvdXJjZVN5bmNocm9ub3VzbHkoc2Fzc1VSTCk7CiAgICAgdmFyIGNv
bnRlbnRQcm92aWRlciA9IG5ldyBXZWJJbnNwZWN0b3IuU3RhdGljQ29udGVudFByb3ZpZGVyKFdl
Ykluc3BlY3Rvci5yZXNvdXJjZVR5cGVzLlN0eWxlc2hlZXQsIGNvbnRlbnQsICJ0ZXh0L3gtc2Nz
cyIpOwotICAgIFdlYkluc3BlY3Rvci5VSVNvdXJjZUNvZGUuY2FsbCh0aGlzLCBzYXNzVVJMLCBu
dWxsLCBjb250ZW50UHJvdmlkZXIpOworICAgIFdlYkluc3BlY3Rvci5VSVNvdXJjZUNvZGUuY2Fs
bCh0aGlzLCBzYXNzVVJMLCBjb250ZW50UHJvdmlkZXIpOwogfQogCiBXZWJJbnNwZWN0b3IuU0FT
U1NvdXJjZS5wcm90b3R5cGUgPSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0
b3IvZnJvbnQtZW5kL1NjcmlwdC5qcyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1l
bmQvU2NyaXB0LmpzCmluZGV4IDkyMGFjMjY3NTBhNWFmNDBlZTU1NzFmN2QzYTU0MDYxMzk1YjM5
YjAuLjk2ZDZhYTlhNTA3Y2Q3MzFkNTBlOGIyMWE3MjUyZDBlYzc2OTE1NmIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU2NyaXB0LmpzCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU2NyaXB0LmpzCkBAIC0zNCw4ICszNCw5IEBA
CiAgKiBAcGFyYW0ge251bWJlcn0gZW5kQ29sdW1uCiAgKiBAcGFyYW0ge2Jvb2xlYW59IGlzQ29u
dGVudFNjcmlwdAogICogQHBhcmFtIHtzdHJpbmc9fSBzb3VyY2VNYXBVUkwKKyAqIEBwYXJhbSB7
Ym9vbGVhbj19IGhhc1NvdXJjZVVSTAogICovCi1XZWJJbnNwZWN0b3IuU2NyaXB0ID0gZnVuY3Rp
b24oc2NyaXB0SWQsIHNvdXJjZVVSTCwgc3RhcnRMaW5lLCBzdGFydENvbHVtbiwgZW5kTGluZSwg
ZW5kQ29sdW1uLCBpc0NvbnRlbnRTY3JpcHQsIHNvdXJjZU1hcFVSTCkKK1dlYkluc3BlY3Rvci5T
Y3JpcHQgPSBmdW5jdGlvbihzY3JpcHRJZCwgc291cmNlVVJMLCBzdGFydExpbmUsIHN0YXJ0Q29s
dW1uLCBlbmRMaW5lLCBlbmRDb2x1bW4sIGlzQ29udGVudFNjcmlwdCwgc291cmNlTWFwVVJMLCBo
YXNTb3VyY2VVUkwpCiB7CiAgICAgdGhpcy5zY3JpcHRJZCA9IHNjcmlwdElkOwogICAgIHRoaXMu
c291cmNlVVJMID0gc291cmNlVVJMOwpAQCAtNDUsNiArNDYsNyBAQCBXZWJJbnNwZWN0b3IuU2Ny
aXB0ID0gZnVuY3Rpb24oc2NyaXB0SWQsIHNvdXJjZVVSTCwgc3RhcnRMaW5lLCBzdGFydENvbHVt
biwgZW5kTAogICAgIHRoaXMuZW5kQ29sdW1uID0gZW5kQ29sdW1uOwogICAgIHRoaXMuaXNDb250
ZW50U2NyaXB0ID0gaXNDb250ZW50U2NyaXB0OwogICAgIHRoaXMuc291cmNlTWFwVVJMID0gc291
cmNlTWFwVVJMOworICAgIHRoaXMuaGFzU291cmNlVVJMID0gaGFzU291cmNlVVJMOwogICAgIHRo
aXMuX2xvY2F0aW9ucyA9IFtdOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNw
ZWN0b3IvZnJvbnQtZW5kL1NjcmlwdFNuaXBwZXRNb2RlbC5qcyBiL1NvdXJjZS9XZWJDb3JlL2lu
c3BlY3Rvci9mcm9udC1lbmQvU2NyaXB0U25pcHBldE1vZGVsLmpzCmluZGV4IDYwYTY2NzIzMzdm
ZjQyOGIwMDY3OWU0NzdlMTIwZDMxN2NmZjg0NWQuLjg4OTVhMTE1Mjc3MGVlYzE1MThmZjE5ZWRl
ZWE3NTU5NzY5ODdkMmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9u
dC1lbmQvU2NyaXB0U25pcHBldE1vZGVsLmpzCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rv
ci9mcm9udC1lbmQvU2NyaXB0U25pcHBldE1vZGVsLmpzCkBAIC0yODAsNyArMjgwLDcgQEAgV2Vi
SW5zcGVjdG9yLlNjcmlwdFNuaXBwZXRNb2RlbC5wcm90b3R5cGUgPSB7CiAgICAgICovCiAgICAg
X2NyZWF0ZVVJU291cmNlQ29kZUZvclNjcmlwdDogZnVuY3Rpb24oc2NyaXB0KQogICAgIHsKLSAg
ICAgICAgdmFyIHVpU291cmNlQ29kZSA9IG5ldyBXZWJJbnNwZWN0b3IuSmF2YVNjcmlwdFNvdXJj
ZShzY3JpcHQuc291cmNlVVJMLCBudWxsLCBzY3JpcHQsIGZhbHNlKTsKKyAgICAgICAgdmFyIHVp
U291cmNlQ29kZSA9IG5ldyBXZWJJbnNwZWN0b3IuSmF2YVNjcmlwdFNvdXJjZShzY3JpcHQuc291
cmNlVVJMLCBzY3JpcHQsIGZhbHNlKTsKICAgICAgICAgdWlTb3VyY2VDb2RlLnNldFNvdXJjZU1h
cHBpbmcodGhpcy5fc25pcHBldFNjcmlwdE1hcHBpbmcpOyAKICAgICAgICAgdWlTb3VyY2VDb2Rl
LmlzU25pcHBldEV2YWx1YXRpb24gPSB0cnVlOwogICAgICAgICB0aGlzLl91aVNvdXJjZUNvZGVG
b3JTY3JpcHRJZFtzY3JpcHQuc2NyaXB0SWRdID0gdWlTb3VyY2VDb2RlOwpAQCAtMzc5LDcgKzM3
OSw3IEBAIFdlYkluc3BlY3Rvci5TY3JpcHRTbmlwcGV0TW9kZWwucHJvdG90eXBlLl9fcHJvdG9f
XyA9IFdlYkluc3BlY3Rvci5PYmplY3QucHJvdG90CiAgKi8KIFdlYkluc3BlY3Rvci5TbmlwcGV0
SmF2YVNjcmlwdFNvdXJjZSA9IGZ1bmN0aW9uKHNuaXBwZXRJZCwgc25pcHBldE5hbWUsIGNvbnRl
bnRQcm92aWRlciwgc2NyaXB0U25pcHBldE1vZGVsKQogewotICAgIFdlYkluc3BlY3Rvci5KYXZh
U2NyaXB0U291cmNlLmNhbGwodGhpcywgc25pcHBldE5hbWUsIG51bGwsIGNvbnRlbnRQcm92aWRl
ciwgdHJ1ZSk7CisgICAgV2ViSW5zcGVjdG9yLkphdmFTY3JpcHRTb3VyY2UuY2FsbCh0aGlzLCBz
bmlwcGV0TmFtZSwgY29udGVudFByb3ZpZGVyLCB0cnVlKTsKICAgICB0aGlzLl9zbmlwcGV0SWQg
PSBzbmlwcGV0SWQ7CiAgICAgdGhpcy5fc2NyaXB0U25pcHBldE1vZGVsID0gc2NyaXB0U25pcHBl
dE1vZGVsOwogICAgIHRoaXMuaXNTbmlwcGV0ID0gdHJ1ZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU2NyaXB0c1BhbmVsLmpzIGIvU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TY3JpcHRzUGFuZWwuanMKaW5kZXggZjRkYzc3MjE5YzEz
MDE3MmU0ZmE1MjllYzNmZjc3MDE4YTBkYzY2MS4uOTIzYmFhN2NkZTg2MThkZGRhYTE5NDViMWI0
NWFhY2Y3NThhYmQ3OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250
LWVuZC9TY3JpcHRzUGFuZWwuanMKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250
LWVuZC9TY3JpcHRzUGFuZWwuanMKQEAgLTExMDAsOCArMTEwMCw5IEBAIFdlYkluc3BlY3Rvci5T
Y3JpcHRzUGFuZWwucHJvdG90eXBlID0gewogCiAgICAgICAgIHZhciB1aVNvdXJjZUNvZGUgPSAv
KiogQHR5cGUge1dlYkluc3BlY3Rvci5VSVNvdXJjZUNvZGV9ICovIHRhcmdldDsKICAgICAgICAg
Y29udGV4dE1lbnUuYXBwZW5kSXRlbShXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIkxvY2FsIG1vZGlm
aWNhdGlvbnMuLi4iKSwgdGhpcy5fc2hvd0xvY2FsSGlzdG9yeS5iaW5kKHRoaXMsIHVpU291cmNl
Q29kZSkpOwotICAgICAgICBpZiAodWlTb3VyY2VDb2RlLnJlc291cmNlKCkgJiYgdWlTb3VyY2VD
b2RlLnJlc291cmNlKCkucmVxdWVzdCkKLSAgICAgICAgICAgIGNvbnRleHRNZW51LmFwcGVuZEFw
cGxpY2FibGVJdGVtcyh1aVNvdXJjZUNvZGUucmVzb3VyY2UoKS5yZXF1ZXN0KTsKKyAgICAgICAg
dmFyIHJlc291cmNlID0gV2ViSW5zcGVjdG9yLnJlc291cmNlRm9yVVJMKHVpU291cmNlQ29kZS51
cmwpOworICAgICAgICBpZiAocmVzb3VyY2UgJiYgcmVzb3VyY2UucmVxdWVzdCkKKyAgICAgICAg
ICAgIGNvbnRleHRNZW51LmFwcGVuZEFwcGxpY2FibGVJdGVtcyhyZXNvdXJjZS5yZXF1ZXN0KTsK
ICAgICB9LAogCiAgICAgLyoqIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L2Zyb250LWVuZC9TdHlsZVNvdXJjZS5qcyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9u
dC1lbmQvU3R5bGVTb3VyY2UuanMKaW5kZXggNGQyMWY1MThhN2NiMmRmN2ZiYTRiODZhNDVjYTk3
MjUyNDVhZWMzZC4uOGJmZDYzMzhkNjhiNjI4Njg4MjAxMTQ2YTM5NWMzYzJlOGE5OTMxMSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TdHlsZVNvdXJjZS5q
cworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1N0eWxlU291cmNlLmpz
CkBAIC0yOSwxMSArMjksMTEgQEAKIC8qKgogICogQGNvbnN0cnVjdG9yCiAgKiBAZXh0ZW5kcyB7
V2ViSW5zcGVjdG9yLlVJU291cmNlQ29kZX0KLSAqIEBwYXJhbSB7V2ViSW5zcGVjdG9yLlJlc291
cmNlfSByZXNvdXJjZQorICogQHBhcmFtIHtXZWJJbnNwZWN0b3IuQ29udGVudFByb3ZpZGVyfSBj
b250ZW50UHJvdmlkZXIKICAqLwotV2ViSW5zcGVjdG9yLlN0eWxlU291cmNlID0gZnVuY3Rpb24o
cmVzb3VyY2UpCitXZWJJbnNwZWN0b3IuU3R5bGVTb3VyY2UgPSBmdW5jdGlvbihjb250ZW50UHJv
dmlkZXIpCiB7Ci0gICAgV2ViSW5zcGVjdG9yLlVJU291cmNlQ29kZS5jYWxsKHRoaXMsIHJlc291
cmNlLnVybCwgcmVzb3VyY2UsIHJlc291cmNlKTsKKyAgICBXZWJJbnNwZWN0b3IuVUlTb3VyY2VD
b2RlLmNhbGwodGhpcywgY29udGVudFByb3ZpZGVyLmNvbnRlbnRVUkwoKSwgY29udGVudFByb3Zp
ZGVyKTsKIH0KIAogV2ViSW5zcGVjdG9yLlN0eWxlU291cmNlLnVwZGF0ZVRpbWVvdXQgPSAyMDA7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1VJU291cmNl
Q29kZS5qcyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvVUlTb3VyY2VDb2Rl
LmpzCmluZGV4IDQ3YzhjMzQyNWVjOThkYzAyNTM3NGMzNjg5MjhiYTJkYTYwY2VmNDQuLjQyZWI5
YWE3NTI5Y2E4NzQ1ZDY0YmIyN2UwODY5YWM1MDY4YTJhYzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvVUlTb3VyY2VDb2RlLmpzCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvVUlTb3VyY2VDb2RlLmpzCkBAIC0zNCwxMyArMzQs
MTEgQEAKICAqIEBleHRlbmRzIHtXZWJJbnNwZWN0b3IuT2JqZWN0fQogICogQGltcGxlbWVudHMg
e1dlYkluc3BlY3Rvci5Db250ZW50UHJvdmlkZXJ9CiAgKiBAcGFyYW0ge3N0cmluZ30gdXJsCi0g
KiBAcGFyYW0ge1dlYkluc3BlY3Rvci5SZXNvdXJjZX0gcmVzb3VyY2UKICAqIEBwYXJhbSB7V2Vi
SW5zcGVjdG9yLkNvbnRlbnRQcm92aWRlcn0gY29udGVudFByb3ZpZGVyCiAgKi8KLVdlYkluc3Bl
Y3Rvci5VSVNvdXJjZUNvZGUgPSBmdW5jdGlvbih1cmwsIHJlc291cmNlLCBjb250ZW50UHJvdmlk
ZXIpCitXZWJJbnNwZWN0b3IuVUlTb3VyY2VDb2RlID0gZnVuY3Rpb24odXJsLCBjb250ZW50UHJv
dmlkZXIpCiB7CiAgICAgdGhpcy5fdXJsID0gdXJsOwotICAgIHRoaXMuX3Jlc291cmNlID0gcmVz
b3VyY2U7CiAgICAgdGhpcy5fcGFyc2VkVVJMID0gbmV3IFdlYkluc3BlY3Rvci5QYXJzZWRVUkwo
dXJsKTsKICAgICB0aGlzLl9jb250ZW50UHJvdmlkZXIgPSBjb250ZW50UHJvdmlkZXI7CiAgICAg
dGhpcy5pc0NvbnRlbnRTY3JpcHQgPSBmYWxzZTsKQEAgLTk0LDE0ICs5Miw2IEBAIFdlYkluc3Bl
Y3Rvci5VSVNvdXJjZUNvZGUucHJvdG90eXBlID0gewogICAgIH0sCiAKICAgICAvKioKLSAgICAg
KiBAcmV0dXJuIHtXZWJJbnNwZWN0b3IuUmVzb3VyY2V9Ci0gICAgICovCi0gICAgcmVzb3VyY2U6
IGZ1bmN0aW9uKCkKLSAgICB7Ci0gICAgICAgIHJldHVybiB0aGlzLl9yZXNvdXJjZTsKLSAgICB9
LAotCi0gICAgLyoqCiAgICAgICogQHJldHVybiB7V2ViSW5zcGVjdG9yLlBhcnNlZFVSTH0KICAg
ICAgKi8KICAgICBnZXQgcGFyc2VkVVJMKCkKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAxYzQyZDgxMDRjZTE4OWEwYmE0ZDc0
MzhlMTE3YzY4Y2Y1M2QzYWZjLi40MmQ3ZGQxZWJhYzk1Y2UzYTc3ZWVlMTE3ZGVhZmQ5NTZmYjE2
NWRmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDUgKzEsMzMgQEAKIDIwMTItMDktMjUgIFZzZXZvbG9kIFZsYXNvdiAg
PHZzZXZpa0BjaHJvbWl1bS5vcmc+CiAKKyAgICAgICAgV2ViIEluc3BlY3RvcjogUmVtb3ZlIHJl
c291cmNlKCkgZ2V0dGVyIGZyb20gVUlTb3VyY2VDb2RlLgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTc1NTcKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGh0dHAvdGVzdHMvaW5zcGVjdG9yL3dvcmtzcGFj
ZS10ZXN0LmpzOgorICAgICAgICAoaW5pdGlhbGl6ZV9Xb3Jrc3BhY2VUZXN0Lkluc3BlY3RvclRl
c3QuYWRkTW9ja1VJU291cmNlQ29kZVRvV29ya3NwYWNlKToKKyAgICAgICAgKiBpbnNwZWN0b3Iv
ZGVidWdnZXIvYnJlYWtwb2ludC1tYW5hZ2VyLmh0bWw6CisgICAgICAgICogaW5zcGVjdG9yL2Rl
YnVnZ2VyL2R5bmFtaWMtc2NyaXB0LXRhZy1leHBlY3RlZC50eHQ6CisgICAgICAgICogaW5zcGVj
dG9yL2RlYnVnZ2VyL2R5bmFtaWMtc2NyaXB0LXRhZy5odG1sOgorICAgICAgICAqIGluc3BlY3Rv
ci9kZWJ1Z2dlci9zY3JpcHRzLWZpbGUtc2VsZWN0b3IuaHRtbDoKKyAgICAgICAgKiBpbnNwZWN0
b3IvZGVidWdnZXIvc2NyaXB0cy1wYW5lbC5odG1sOgorICAgICAgICAqIGluc3BlY3Rvci9kZWJ1
Z2dlci9zY3JpcHRzLXNvcnRpbmcuaHRtbDoKKyAgICAgICAgKiBpbnNwZWN0b3IvZGVidWdnZXIv
dWktc291cmNlLWNvZGUtZGlzcGxheS1uYW1lLmh0bWw6CisgICAgICAgICogaW5zcGVjdG9yL2Rl
YnVnZ2VyL3VpLXNvdXJjZS1jb2RlLmh0bWw6CisKKzIwMTItMDktMjAgIFZzZXZvbG9kIFZsYXNv
diAgPHZzZXZpa0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgV2ViIEluc3BlY3RvcjogUHJvdmlk
ZSBhIHdheSB0byBkaXN0aW5ndWlzaCBzY3JpcHRzIGhhdmluZyBzb3VyY2VVUkwgZnJvbSBzdGFu
ZGFsb25lIHNjcmlwdHMuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD05NzIzMQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgICogaW5zcGVjdG9yL2RlYnVnZ2VyL3NvdXJjZS11cmwtY29tbWVudC1leHBlY3RlZC50
eHQ6CisgICAgICAgICogaW5zcGVjdG9yL2RlYnVnZ2VyL3NvdXJjZS11cmwtY29tbWVudC5odG1s
OgorCisyMDEyLTA5LTI1ICBWc2V2b2xvZCBWbGFzb3YgIDx2c2V2aWtAY2hyb21pdW0ub3JnPgor
CiAgICAgICAgIFdlYiBJbnNwZWN0b3I6IFJlc291cmNlU2NyaXB0TWFwcGluZyBzaG91bGQgbm8g
c3RlYWwgc2NyaXB0cyBmcm9tIG90aGVyIG1hcHBpbmdzLgogICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTc0NTMKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9pbnNwZWN0b3Ivd29ya3NwYWNlLXRlc3QuanMgYi9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL2luc3BlY3Rvci93b3Jrc3BhY2UtdGVzdC5qcwppbmRleCAwOGIzYjU3NDY0ZjQw
YWViYjU3YTI2MzY4OTdkZGEyOWI3NzM0OTdmLi43YzI1N2Y2MDRjMzYxOWI4MWQyZDNkY2EzZDNk
NGQ2NWExYzlhNmM1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2luc3BlY3Rv
ci93b3Jrc3BhY2UtdGVzdC5qcworKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2luc3BlY3Rv
ci93b3Jrc3BhY2UtdGVzdC5qcwpAQCAtMzksNyArMzksNyBAQCBJbnNwZWN0b3JUZXN0LmFkZE1v
Y2tVSVNvdXJjZUNvZGVUb1dvcmtzcGFjZSA9IGZ1bmN0aW9uKHVybCwgdHlwZSwgY29udGVudCkK
IHsKICAgICB2YXIgaXNEb2N1bWVudCA9IHR5cGUgPT09IFdlYkluc3BlY3Rvci5yZXNvdXJjZVR5
cGVzLkRvY3VtZW50OwogICAgIHZhciBtb2NrQ29udGVudFByb3ZpZGVyID0gbmV3IFdlYkluc3Bl
Y3Rvci5TdGF0aWNDb250ZW50UHJvdmlkZXIodHlwZSwgY29udGVudCk7Ci0gICAgdmFyIHVpU291
cmNlQ29kZSA9IG5ldyBXZWJJbnNwZWN0b3IuSmF2YVNjcmlwdFNvdXJjZSh1cmwsIG51bGwsIG1v
Y2tDb250ZW50UHJvdmlkZXIsICFpc0RvY3VtZW50KTsKKyAgICB2YXIgdWlTb3VyY2VDb2RlID0g
bmV3IFdlYkluc3BlY3Rvci5KYXZhU2NyaXB0U291cmNlKHVybCwgbW9ja0NvbnRlbnRQcm92aWRl
ciwgIWlzRG9jdW1lbnQpOwogICAgIEluc3BlY3RvclRlc3QudGVzdFdvcmtzcGFjZS5wcm9qZWN0
KCkuYWRkVUlTb3VyY2VDb2RlKHVpU291cmNlQ29kZSk7CiB9CiAKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci9icmVha3BvaW50LW1hbmFnZXIuaHRtbCBiL0xheW91
dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci9icmVha3BvaW50LW1hbmFnZXIuaHRtbAppbmRleCBj
M2RiMDllMjZjMTMyMTE4OTljMjg1YmU4ZDc1Y2JkYzlmZmFmYTQ0Li40MTEwMDRjMWRiYmJjNTMx
MmM3MzFjMDRiNmQyYTc4MWNlY2EzYzNkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbnNwZWN0
b3IvZGVidWdnZXIvYnJlYWtwb2ludC1tYW5hZ2VyLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW5z
cGVjdG9yL2RlYnVnZ2VyL2JyZWFrcG9pbnQtbWFuYWdlci5odG1sCkBAIC0xMTEsNyArMTExLDcg
QEAgZnVuY3Rpb24gdGVzdCgpCiAgICAgV29ya3NwYWNlTW9jay5wcm90b3R5cGUgPSB7CiAgICAg
ICAgIF9hZGRVSVNvdXJjZUNvZGU6IGZ1bmN0aW9uKHVybCkKICAgICAgICAgewotICAgICAgICAg
ICAgdmFyIHVpU291cmNlQ29kZSA9IG5ldyBXZWJJbnNwZWN0b3IuSmF2YVNjcmlwdFNvdXJjZSh1
cmwsIG51bGwsIG51bGwsIGZhbHNlKTsKKyAgICAgICAgICAgIHZhciB1aVNvdXJjZUNvZGUgPSBu
ZXcgV2ViSW5zcGVjdG9yLkphdmFTY3JpcHRTb3VyY2UodXJsLCBudWxsLCBmYWxzZSk7CiAgICAg
ICAgICAgICB1aVNvdXJjZUNvZGUuc2V0U291cmNlTWFwcGluZyhkZWZhdWx0TWFwcGluZyk7CiAg
ICAgICAgICAgICB1aVNvdXJjZUNvZGVzW3VybF0gPSB1aVNvdXJjZUNvZGU7CiAgICAgICAgICAg
ICB0aGlzLmRpc3BhdGNoRXZlbnRUb0xpc3RlbmVycyhXZWJJbnNwZWN0b3IuVUlTb3VyY2VDb2Rl
UHJvdmlkZXIuRXZlbnRzLlVJU291cmNlQ29kZUFkZGVkLCB1aVNvdXJjZUNvZGUpOwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2RlYnVnZ2VyL2R5bmFtaWMtc2NyaXB0LXRhZy1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZGVidWdnZXIvZHluYW1pYy1zY3Jp
cHQtdGFnLWV4cGVjdGVkLnR4dAppbmRleCA1Mjg1ZjIyYzdkOGFiYzg5NjQ5NTczOWQ5ZjM4NmFm
MjA5MWE1Zjk3Li5mODllYjQ4MGJkZThiYTQ0Y2YyZGY5MDgyOWM5ZjhlZjkwNWFiZmZkIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZGVidWdnZXIvZHluYW1pYy1zY3JpcHQtdGFn
LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZGVidWdnZXIvZHluYW1p
Yy1zY3JpcHQtdGFnLWV4cGVjdGVkLnR4dApAQCAtMTQsMTIgKzE0LDEwIEBAIFVJU291cmNlQ29k
ZSBpcyBlZGl0YWJsZTogdHJ1ZQogVUlTb3VyY2VDb2RlIGlzIGNvbnRlbnQgc2NyaXB0OiBmYWxz
ZQogTWltZSB0eXBlOiB0ZXh0L2phdmFzY3JpcHQKIFVJU291cmNlQ29kZSBjb250ZW50OiBmdW5j
dGlvbiBmb28oKSB7IH0KLVVJIHJlc291cmNlOiBudWxsCiBVSVNvdXJjZUNvZGU6IExheW91dFRl
c3RzL2luc3BlY3Rvci9kZWJ1Z2dlci9keW5hbWljLXNjcmlwdC10YWcuaHRtbCAoMikKIFVJU291
cmNlQ29kZSBpcyBlZGl0YWJsZTogdHJ1ZQogVUlTb3VyY2VDb2RlIGlzIGNvbnRlbnQgc2NyaXB0
OiBmYWxzZQogTWltZSB0eXBlOiB0ZXh0L2phdmFzY3JpcHQKIFVJU291cmNlQ29kZSBjb250ZW50
OiBmdW5jdGlvbiBiYXIoKSB7IH0KLVVJIHJlc291cmNlOiBudWxsCiBEZWJ1Z2dlciB3YXMgZGlz
YWJsZWQuCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci9keW5h
bWljLXNjcmlwdC10YWcuaHRtbCBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci9keW5h
bWljLXNjcmlwdC10YWcuaHRtbAppbmRleCBlNWY1OGFkOWRkYWYwZThhMzIxM2RmYzgxYzgzZTJk
Yzg0ZDA1MTdhLi43YmY1OTIzNDkwYWIwOWJjN2RkNTY5OWRmN2M3NjdlZWJiNDUxMWZmIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZGVidWdnZXIvZHluYW1pYy1zY3JpcHQtdGFn
Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2RlYnVnZ2VyL2R5bmFtaWMtc2NyaXB0
LXRhZy5odG1sCkBAIC03Miw3ICs3Miw2IEBAIHZhciB0ZXN0ID0gZnVuY3Rpb24oKQogCiAgICAg
ICAgICAgICBmdW5jdGlvbiB1aVNvdXJjZUNvZGVEdW1wZWQoKQogICAgICAgICAgICAgewotICAg
ICAgICAgICAgICAgIEluc3BlY3RvclRlc3QuYWRkUmVzdWx0KCJVSSByZXNvdXJjZTogIiArIHVp
U291cmNlQ29kZS5yZXNvdXJjZSgpKTsKICAgICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmFz
c2VydFRydWUoIXNlZW5VSVNvdXJjZUNvZGVzLmdldCh1aVNvdXJjZUNvZGUpLCAiVUlTb3VyY2VD
b2RlIG1hdGNoZXMgdHdvIHNjcmlwdHM6ICIgKyB1aVNvdXJjZUNvZGUudXJsKTsKICAgICAgICAg
ICAgICAgICBzZWVuVUlTb3VyY2VDb2Rlcy5wdXQodWlTb3VyY2VDb2RlLCB1aVNvdXJjZUNvZGUp
OwogICAgICAgICAgICAgICAgICsraW5kZXg7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbnNw
ZWN0b3IvZGVidWdnZXIvc2NyaXB0cy1maWxlLXNlbGVjdG9yLmh0bWwgYi9MYXlvdXRUZXN0cy9p
bnNwZWN0b3IvZGVidWdnZXIvc2NyaXB0cy1maWxlLXNlbGVjdG9yLmh0bWwKaW5kZXggMTNiY2Jk
OTI3NjZjOTczMjAyM2Y2MTgzOWQzYmZhOTA4ZjEyYjk5Ny4uYzMwZjBmMGRlOTc4MzIwZmJhMWNj
ZWNkNDlmM2ZiYzZjN2Q2MjQ1NCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2Rl
YnVnZ2VyL3NjcmlwdHMtZmlsZS1zZWxlY3Rvci5odG1sCisrKyBiL0xheW91dFRlc3RzL2luc3Bl
Y3Rvci9kZWJ1Z2dlci9zY3JpcHRzLWZpbGUtc2VsZWN0b3IuaHRtbApAQCAtMjEsNyArMjEsNyBA
QCBmdW5jdGlvbiB0ZXN0KCkKIAogICAgIGZ1bmN0aW9uIGFkZFVJU291cmNlQ29kZSh1cmwsIGlz
Q29udGVudFNjcmlwdCkKICAgICB7Ci0gICAgICAgIHZhciB1aVNvdXJjZUNvZGUgPSBuZXcgV2Vi
SW5zcGVjdG9yLlVJU291cmNlQ29kZSh1cmwsIG51bGwsIGNvbnRlbnRQcm92aWRlciwgbnVsbCk7
CisgICAgICAgIHZhciB1aVNvdXJjZUNvZGUgPSBuZXcgV2ViSW5zcGVjdG9yLlVJU291cmNlQ29k
ZSh1cmwsIGNvbnRlbnRQcm92aWRlciwgbnVsbCk7CiAgICAgICAgIHVpU291cmNlQ29kZS5pc0Nv
bnRlbnRTY3JpcHQgPSBpc0NvbnRlbnRTY3JpcHQ7CiAgICAgICAgIG5hdmlnYXRvckZpbGVTZWxl
Y3Rvci5hZGRVSVNvdXJjZUNvZGUodWlTb3VyY2VDb2RlKTsKICAgICB9CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbnNwZWN0b3IvZGVidWdnZXIvc2NyaXB0cy1wYW5lbC5odG1sIGIvTGF5b3V0
VGVzdHMvaW5zcGVjdG9yL2RlYnVnZ2VyL3NjcmlwdHMtcGFuZWwuaHRtbAppbmRleCA2OWY0NDFi
MTVjZjU1ODhhNjdlMjAzNzUyMWFhNGE0ZGNlMmVmNzEyLi41MjIyMWJmNDEyMmM5ZGFkNWEwY2Y3
NjRjYmMxNWU1MjEzOTE5ZDliIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZGVi
dWdnZXIvc2NyaXB0cy1wYW5lbC5odG1sCisrKyBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1
Z2dlci9zY3JpcHRzLXBhbmVsLmh0bWwKQEAgLTI0LDcgKzI0LDcgQEAgZnVuY3Rpb24gdGVzdCgp
CiAgICAgCiAgICAgZnVuY3Rpb24gY3JlYXRlVUlTb3VjZUNvZGUodXJsKQogICAgIHsKLSAgICAg
ICAgdmFyIHVpU291cmNlQ29kZSA9IG5ldyBXZWJJbnNwZWN0b3IuSmF2YVNjcmlwdFNvdXJjZSh1
cmwsIG51bGwsIGNvbnRlbnRQcm92aWRlciwgZmFsc2UpOworICAgICAgICB2YXIgdWlTb3VyY2VD
b2RlID0gbmV3IFdlYkluc3BlY3Rvci5KYXZhU2NyaXB0U291cmNlKHVybCwgY29udGVudFByb3Zp
ZGVyLCBmYWxzZSk7CiAgICAgICAgIHVpU291cmNlQ29kZS5yZXF1ZXN0Q29udGVudCA9IGZ1bmN0
aW9uKGNhbGxiYWNrKQogICAgICAgICB7CiAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmFkZFJl
c3VsdCgiU291cmNlIHJlcXVlc3RlZCBmb3IgIiArIHVybCk7CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbnNwZWN0b3IvZGVidWdnZXIvc2NyaXB0cy1zb3J0aW5nLmh0bWwgYi9MYXlvdXRUZXN0
cy9pbnNwZWN0b3IvZGVidWdnZXIvc2NyaXB0cy1zb3J0aW5nLmh0bWwKaW5kZXggMzM3YjcwYTk2
ZWE3N2ZmNTE5ZGEzOWNkMzFhMTJjMzNmYWMxZGQzYS4uZTNmZjQzNzA0NmNlMGQ5MjFkMTQyNzlj
NTM4ZmQ1MTEyMTU5MTgzZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2RlYnVn
Z2VyL3NjcmlwdHMtc29ydGluZy5odG1sCisrKyBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1
Z2dlci9zY3JpcHRzLXNvcnRpbmcuaHRtbApAQCAtMjEsNyArMjEsNyBAQCBmdW5jdGlvbiB0ZXN0
KCkKIAogICAgIGZ1bmN0aW9uIGFkZFVJU291cmNlQ29kZSh1cmwsIGlzQ29udGVudFNjcmlwdCkK
ICAgICB7Ci0gICAgICAgIHZhciB1aVNvdXJjZUNvZGUgPSBuZXcgV2ViSW5zcGVjdG9yLlVJU291
cmNlQ29kZSh1cmwsIG51bGwsIGNvbnRlbnRQcm92aWRlciwgbnVsbCk7CisgICAgICAgIHZhciB1
aVNvdXJjZUNvZGUgPSBuZXcgV2ViSW5zcGVjdG9yLlVJU291cmNlQ29kZSh1cmwsIGNvbnRlbnRQ
cm92aWRlciwgbnVsbCk7CiAgICAgICAgIHVpU291cmNlQ29kZS5pc0NvbnRlbnRTY3JpcHQgPSBp
c0NvbnRlbnRTY3JpcHQ7CiAgICAgICAgIG5hdmlnYXRvckZpbGVTZWxlY3Rvci5hZGRVSVNvdXJj
ZUNvZGUodWlTb3VyY2VDb2RlKTsKICAgICB9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbnNw
ZWN0b3IvZGVidWdnZXIvc291cmNlLXVybC1jb21tZW50LWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2luc3BlY3Rvci9kZWJ1Z2dlci9zb3VyY2UtdXJsLWNvbW1lbnQtZXhwZWN0ZWQudHh0Cmlu
ZGV4IDA0YmJjMTlhYzM4YzU0YzQyM2NiYTcyN2M0ZmYwMWI2MDE1N2UwOTIuLjVlZTlmYjg0ZTdm
YmQwNzg2MTcyMTJjOGNhZDc3YzIwMWUxMDM2ZmEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lu
c3BlY3Rvci9kZWJ1Z2dlci9zb3VyY2UtdXJsLWNvbW1lbnQtZXhwZWN0ZWQudHh0CisrKyBiL0xh
eW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci9zb3VyY2UtdXJsLWNvbW1lbnQtZXhwZWN0ZWQu
dHh0CkBAIC0yLDggKzIsMTQgQEAgVGVzdHMgdGhhdCBldmFscyB3aXRoIHNvdXJjZVVSTCBjb21t
ZW50IGFyZSBzaG93biBpbiBzY3JpcHRzIHBhbmVsLgogCiBEZWJ1Z2dlciB3YXMgZW5hYmxlZC4K
IAorUnVubmluZzogdGVzdFNvdXJjZVVSTENvbW1lbnRJbklubGluZVNjcmlwdAorCiBSdW5uaW5n
OiB0ZXN0U291cmNlVVJMQ29tbWVudAogZnVuY3Rpb24ga2VlcEFsaXZlKCkge30KIC8vQCBzb3Vy
Y2VVUkw9ZXZhbFVSTC5qcworCitSdW5uaW5nOiB0ZXN0U291cmNlVVJMQ29tbWVudEluRHluYW1p
Y1NjcmlwdAorZnVuY3Rpb24ga2VlcEFsaXZlSW5EeW5hbWljU2NyaXB0KCkge30KKy8vQCBzb3Vy
Y2VVUkw9ZHluYW1pY1NjcmlwdFVSTC5qcwogRGVidWdnZXIgd2FzIGRpc2FibGVkLgogCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZGVidWdnZXIvc291cmNlLXVybC1jb21tZW50
Lmh0bWwgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZGVidWdnZXIvc291cmNlLXVybC1jb21tZW50
Lmh0bWwKaW5kZXggMWViMjhhOThmYTAyOWIyODE0ZGI0ZjFhNjcwYTM5YzkyZDY3MjRjMy4uMzMy
NTdhY2Y3ODVmNjY3YzE2NDAyNDBlYTkwYjA2MjA0NmQ0ZmMzMiAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvaW5zcGVjdG9yL2RlYnVnZ2VyL3NvdXJjZS11cmwtY29tbWVudC5odG1sCisrKyBiL0xh
eW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci9zb3VyY2UtdXJsLWNvbW1lbnQuaHRtbApAQCAt
MiwxNyArMiw1NyBAQAogPGhlYWQ+CiA8c2NyaXB0IHNyYz0iLi4vLi4vaHR0cC90ZXN0cy9pbnNw
ZWN0b3IvaW5zcGVjdG9yLXRlc3QuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9Ii4uLy4uL2h0
dHAvdGVzdHMvaW5zcGVjdG9yL2RlYnVnZ2VyLXRlc3QuanMiPjwvc2NyaXB0PgotCiA8c2NyaXB0
PgorZnVuY3Rpb24ga2VlcEFsaXZlSW5JbmxpbmVTY3JpcHQoKSB7IH0KIAorLy9AIHNvdXJjZVVS
TD1pbmxpbmVTY3JpcHRVUkwuanMKKzwvc2NyaXB0PgorPHNjcmlwdD4KIGZ1bmN0aW9uIGRvRXZh
bCgpCiB7CiAgICAgZXZhbCgiZnVuY3Rpb24ga2VlcEFsaXZlKCkge31cbi8vQCBzb3VyY2VVUkw9
ZXZhbFVSTC5qcyIpOwogfQogCitmdW5jdGlvbiBkb0R5bmFtaWNTY3JpcHQoKQoreworICAgIHZh
ciBzY3JpcHRFbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik7CisgICAg
c2NyaXB0RWxlbWVudC50ZXh0Q29udGVudCA9ICJmdW5jdGlvbiBrZWVwQWxpdmVJbkR5bmFtaWNT
Y3JpcHQoKSB7fVxuLy9AIHNvdXJjZVVSTD1keW5hbWljU2NyaXB0VVJMLmpzIjsKKyAgICBkb2N1
bWVudC5ib2R5LmFwcGVuZENoaWxkKHNjcmlwdEVsZW1lbnQpOworfQorCiBmdW5jdGlvbiB0ZXN0
KCkKKwogeworICAgIGZ1bmN0aW9uIGZvckVhY2hTY3JpcHRNYXRjaGluZ1VSTCh1cmwsIGhhbmRs
ZXIpCisgICAgeworICAgICAgICB2YXIgc2NyaXB0cyA9IFdlYkluc3BlY3Rvci5kZWJ1Z2dlck1v
ZGVsLnNjcmlwdHM7CisgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgc2NyaXB0cy5sZW5ndGg7
ICsraSkgeworICAgICAgICAgICAgaWYgKHNjcmlwdHNbaV0uc291cmNlVVJMLmluZGV4T2YodXJs
KSAhPT0gLTEpCisgICAgICAgICAgICAgICAgaGFuZGxlcihzY3JpcHRzW2ldKTsKKyAgICAgICAg
fQorICAgIH0KKwogICAgIEluc3BlY3RvclRlc3QucnVuRGVidWdnZXJUZXN0U3VpdGUoWworICAg
ICAgICBmdW5jdGlvbiB0ZXN0U291cmNlVVJMQ29tbWVudEluSW5saW5lU2NyaXB0KG5leHQpCisg
ICAgICAgIHsKKyAgICAgICAgICAgIEluc3BlY3RvclRlc3Quc2hvd1NjcmlwdFNvdXJjZSgic291
cmNlLXVybC1jb21tZW50Lmh0bWwiLCBkaWRTaG93U2NyaXB0U291cmNlKTsKKworICAgICAgICAg
ICAgZnVuY3Rpb24gZGlkU2hvd1NjcmlwdFNvdXJjZShzb3VyY2VGcmFtZSkKKyAgICAgICAgICAg
IHsKKyAgICAgICAgICAgICAgICBmdW5jdGlvbiBjaGVja1NjcmlwdERvZXNOb3RIYXZlU291cmNl
VVJMKHNjcmlwdCkKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIEluc3Bl
Y3RvclRlc3QuYXNzZXJ0VHJ1ZSghc2NyaXB0Lmhhc1NvdXJjZVVSTCwgImhhc1NvdXJjZVVSTCBm
bGFnIGlzIHNldCBmb3IgaW5saW5lIHNjcmlwdCIpOworICAgICAgICAgICAgICAgIH0KKworICAg
ICAgICAgICAgICAgIHZhciBwYW5lbCA9IFdlYkluc3BlY3Rvci5wYW5lbCgic2NyaXB0cyIpOwor
ICAgICAgICAgICAgICAgIHZhciB1aVNvdXJjZUNvZGVzID0gcGFuZWwuX3dvcmtzcGFjZS51aVNv
dXJjZUNvZGVzKCk7CisgICAgICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCB1aVNvdXJj
ZUNvZGVzLmxlbmd0aDsgKytpKQorICAgICAgICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmFz
c2VydFRydWUodWlTb3VyY2VDb2Rlc1tpXS51cmwuaW5kZXhPZigiaW5saW5lU2NyaXB0VVJMLmpz
IikgPT09IC0xLCAic291cmNlVVJMIGNvbW1lbnQgaW4gaW5saW5lIHNjcmlwdCB3YXMgdXNlZCBh
cyBhIHNjcmlwdCBuYW1lIik7CisgICAgICAgICAgICAgICAgZm9yRWFjaFNjcmlwdE1hdGNoaW5n
VVJMKCJzb3VyY2UtdXJsLWNvbW1lbnQuaHRtbCIsIGNoZWNrU2NyaXB0RG9lc05vdEhhdmVTb3Vy
Y2VVUkwpCisgICAgICAgICAgICAgICAgbmV4dCgpOworICAgICAgICAgICAgfQorICAgICAgICB9
LAorCiAgICAgICAgIGZ1bmN0aW9uIHRlc3RTb3VyY2VVUkxDb21tZW50KG5leHQpCiAgICAgICAg
IHsKICAgICAgICAgICAgIEluc3BlY3RvclRlc3Quc2hvd1NjcmlwdFNvdXJjZSgiZXZhbFVSTC5q
cyIsIGRpZFNob3dTY3JpcHRTb3VyY2UpOwpAQCAtMjAsNyArNjAsMzEgQEAgZnVuY3Rpb24gdGVz
dCgpCiAKICAgICAgICAgICAgIGZ1bmN0aW9uIGRpZFNob3dTY3JpcHRTb3VyY2Uoc291cmNlRnJh
bWUpCiAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgZnVuY3Rpb24gY2hlY2tTY3JpcHRI
YXNTb3VyY2VVUkwoc2NyaXB0KQorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAg
ICAgSW5zcGVjdG9yVGVzdC5hc3NlcnRUcnVlKHNjcmlwdC5oYXNTb3VyY2VVUkwsICJoYXNTb3Vy
Y2VVUkwgZmxhZyBpcyBub3Qgc2V0IGZvciBldmFsIHdpdGggc291cmNlVVJMIGNvbW1lbnQiKTsK
KyAgICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmFkZFJl
c3VsdChzb3VyY2VGcmFtZS50ZXh0RWRpdG9yLnRleHQoKSk7CisgICAgICAgICAgICAgICAgZm9y
RWFjaFNjcmlwdE1hdGNoaW5nVVJMKCJldmFsVVJMLmpzIiwgY2hlY2tTY3JpcHRIYXNTb3VyY2VV
UkwpOworICAgICAgICAgICAgICAgIG5leHQoKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfSwK
KworICAgICAgICBmdW5jdGlvbiB0ZXN0U291cmNlVVJMQ29tbWVudEluRHluYW1pY1NjcmlwdChu
ZXh0KQorICAgICAgICB7CisgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LnNob3dTY3JpcHRTb3Vy
Y2UoImR5bmFtaWNTY3JpcHRVUkwuanMiLCBkaWRTaG93U2NyaXB0U291cmNlKTsKKyAgICAgICAg
ICAgIEluc3BlY3RvclRlc3QuZXZhbHVhdGVJblBhZ2UoInNldFRpbWVvdXQoZG9EeW5hbWljU2Ny
aXB0LCAwKSIpOworCisgICAgICAgICAgICBmdW5jdGlvbiBkaWRTaG93U2NyaXB0U291cmNlKHNv
dXJjZUZyYW1lKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGZ1bmN0aW9uIGNoZWNr
U2NyaXB0SGFzU291cmNlVVJMKHNjcmlwdCkKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAg
ICAgICAgICAgIEluc3BlY3RvclRlc3QuYXNzZXJ0VHJ1ZShzY3JpcHQuaGFzU291cmNlVVJMLCAi
aGFzU291cmNlVVJMIGZsYWcgaXMgbm90IHNldCBmb3IgZHluYW1pYyBzY3JpcHQgd2l0aCBzb3Vy
Y2VVUkwgY29tbWVudCIpOworICAgICAgICAgICAgICAgIH0KKwogICAgICAgICAgICAgICAgIElu
c3BlY3RvclRlc3QuYWRkUmVzdWx0KHNvdXJjZUZyYW1lLnRleHRFZGl0b3IudGV4dCgpKTsKKyAg
ICAgICAgICAgICAgICBmb3JFYWNoU2NyaXB0TWF0Y2hpbmdVUkwoImR5bmFtaWNTY3JpcHRVUkwu
anMiLCBjaGVja1NjcmlwdEhhc1NvdXJjZVVSTCk7CiAgICAgICAgICAgICAgICAgbmV4dCgpOwog
ICAgICAgICAgICAgfQogICAgICAgICB9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbnNwZWN0
b3IvZGVidWdnZXIvdWktc291cmNlLWNvZGUtZGlzcGxheS1uYW1lLmh0bWwgYi9MYXlvdXRUZXN0
cy9pbnNwZWN0b3IvZGVidWdnZXIvdWktc291cmNlLWNvZGUtZGlzcGxheS1uYW1lLmh0bWwKaW5k
ZXggMzljNDljYmMzOTZiOWJiYThjOGRhNjI1ZDcwODhhYmIzZGI0ZDAxNy4uMWM0OWUxYzI0N2Ni
ZTE3NjkxYmVjMGRkM2NkODE1OWI1Mjc4M2IwMCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW5z
cGVjdG9yL2RlYnVnZ2VyL3VpLXNvdXJjZS1jb2RlLWRpc3BsYXktbmFtZS5odG1sCisrKyBiL0xh
eW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci91aS1zb3VyY2UtY29kZS1kaXNwbGF5LW5hbWUu
aHRtbApAQCAtNiw3ICs2LDcgQEAgZnVuY3Rpb24gdGVzdCgpCiB7CiAgICAgZnVuY3Rpb24gZHVt
cFVJU291cmNlQ29kZURpc3BsYXlOYW1lKHVybCkKICAgICB7Ci0gICAgICAgIHZhciB1aVNvdXJj
ZUNvZGUgPSBuZXcgV2ViSW5zcGVjdG9yLlVJU291cmNlQ29kZSh1cmwsIG51bGwsIG51bGwpOwor
ICAgICAgICB2YXIgdWlTb3VyY2VDb2RlID0gbmV3IFdlYkluc3BlY3Rvci5VSVNvdXJjZUNvZGUo
dXJsLCBudWxsKTsKICAgICAgICAgSW5zcGVjdG9yVGVzdC5hZGRSZXN1bHQoIlVJU291cmNlQ29k
ZSBkaXNwbGF5IG5hbWUgZm9yIHVybCBcIiIgKyB1cmwgKyAiXCIgaXMgXCIiICsgV2ViSW5zcGVj
dG9yLlRhYmJlZEVkaXRvckNvbnRhaW5lci5wcm90b3R5cGUuX3RpdGxlRm9yRmlsZSh1aVNvdXJj
ZUNvZGUpICsgIlwiLiIpOwogICAgIH0KIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW5zcGVj
dG9yL2RlYnVnZ2VyL3VpLXNvdXJjZS1jb2RlLmh0bWwgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3Iv
ZGVidWdnZXIvdWktc291cmNlLWNvZGUuaHRtbAppbmRleCA0OGUyNDQwYzNlZDE1ZGU1YmM5ODY5
YjRiNjBkMmNjNzkwOTVhNzc0Li4wZTkyOTNkMTgwNjIyMjJmMzBjZjdmNjZlZTk5YzExN2I1Zjg4
Yjg3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZGVidWdnZXIvdWktc291cmNl
LWNvZGUuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZGVidWdnZXIvdWktc291cmNl
LWNvZGUuaHRtbApAQCAtMTcsNyArMTcsNyBAQCBmdW5jdGlvbiB0ZXN0KCkKICAgICBJbnNwZWN0
b3JUZXN0LnJ1blRlc3RTdWl0ZShbCiAgICAgICAgIGZ1bmN0aW9uIHRlc3RVSVNvdXJjZUNvZGUo
bmV4dCkKICAgICAgICAgewotICAgICAgICAgICAgdmFyIHVpU291cmNlQ29kZSA9IG5ldyBXZWJJ
bnNwZWN0b3IuVUlTb3VyY2VDb2RlKCJ1cmwiLCBudWxsLCBjb250ZW50UHJvdmlkZXIpOworICAg
ICAgICAgICAgdmFyIHVpU291cmNlQ29kZSA9IG5ldyBXZWJJbnNwZWN0b3IuVUlTb3VyY2VDb2Rl
KCJ1cmwiLCBjb250ZW50UHJvdmlkZXIpOwogICAgICAgICAgICAgZnVuY3Rpb24gZGlkUmVxdWVz
dENvbnRlbnQoY2FsbE51bWJlciwgY29udGVudCwgY29udGVudEVuY29kZWQsIG1pbWVUeXBlKQog
ICAgICAgICAgICAgewogICAgICAgICAgICAgICAgIEluc3BlY3RvclRlc3QuYWRkUmVzdWx0KCJD
YWxsYmFjayAiICsgY2FsbE51bWJlciArICIgaXMgaW52b2tlZC4iKTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>165631</attachid>
            <date>2012-09-25 09:38:03 -0700</date>
            <delta_ts>2012-09-26 04:45:29 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-97557-20120925203722.patch</filename>
            <type>text/plain</type>
            <size>20738</size>
            <attacher name="Vsevolod Vlasov">vsevik</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI5NDg1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzhlYWNlZTEyM2MyNjEx
ZTE3ZTFjZGY3MTg3ZWZjYmQwMGE1YzIzNi4uNWUzNWE4OTliZmZlZDEzYmJhMjVlMmIwM2I0Mzk5
Yzg2MTc3ZDA1NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDEyLTA5LTI1ICBWc2V2
b2xvZCBWbGFzb3YgIDx2c2V2aWtAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFdlYiBJbnNwZWN0
b3I6IFJlbW92ZSByZXNvdXJjZSgpIGdldHRlciBmcm9tIFVJU291cmNlQ29kZS4KKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTk3NTU3CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUmVzb3VyY2UgZ2V0dGVyIHJl
bW92ZWQgZnJvbSBVSVNvdXJjZUNvZGUuIFJlc291cmNlIGNvdWxkIGJlIGZldGNoZWQgZnJvbSBS
ZXNvdXJjZVRyZWVNb2RlbCBkaXJlY3RseS4KKworICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1l
bmQvQ1NTU3R5bGVNb2RlbC5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5DU1NTdHlsZU1vZGVs
UmVzb3VyY2VCaW5kaW5nLnByb3RvdHlwZS5zZXRTdHlsZUNvbnRlbnQpOgorICAgICAgICAqIGlu
c3BlY3Rvci9mcm9udC1lbmQvQ29tcGlsZXJTY3JpcHRNYXBwaW5nLmpzOgorICAgICAgICAqIGlu
c3BlY3Rvci9mcm9udC1lbmQvSmF2YVNjcmlwdFNvdXJjZS5qczoKKyAgICAgICAgKFdlYkluc3Bl
Y3Rvci5KYXZhU2NyaXB0U291cmNlKToKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL05l
dHdvcmtVSVNvdXJjZUNvZGVQcm92aWRlci5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5OZXR3
b3JrVUlTb3VyY2VDb2RlUHJvdmlkZXIucHJvdG90eXBlLl9yZXNvdXJjZUFkZGVkKToKKyAgICAg
ICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL1Jlc291cmNlU2NyaXB0TWFwcGluZy5qczoKKyAgICAg
ICAgKFdlYkluc3BlY3Rvci5SZXNvdXJjZVNjcmlwdE1hcHBpbmcucHJvdG90eXBlLl9hZGRPclJl
cGxhY2VUZW1wb3JhcnlVSVNvdXJjZUNvZGUpOgorICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1l
bmQvU0FTU1NvdXJjZU1hcHBpbmcuanM6CisgICAgICAgIChXZWJJbnNwZWN0b3IuU0FTU1NvdXJj
ZSk6CisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9TY3JpcHRTbmlwcGV0TW9kZWwuanM6
CisgICAgICAgIChXZWJJbnNwZWN0b3IuU2NyaXB0U25pcHBldE1vZGVsLnByb3RvdHlwZS5fY3Jl
YXRlVUlTb3VyY2VDb2RlRm9yU2NyaXB0KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5TbmlwcGV0
SmF2YVNjcmlwdFNvdXJjZSk6CisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9TY3JpcHRz
UGFuZWwuanM6CisgICAgICAgIChXZWJJbnNwZWN0b3IuU2NyaXB0c1BhbmVsLnByb3RvdHlwZS5f
YXBwZW5kVUlTb3VyY2VDb2RlSXRlbXMpOgorICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQv
U3R5bGVTb3VyY2UuanM6CisgICAgICAgIChXZWJJbnNwZWN0b3IuU3R5bGVTb3VyY2UpOgorICAg
ICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvVUlTb3VyY2VDb2RlLmpzOgorICAgICAgICAoV2Vi
SW5zcGVjdG9yLlVJU291cmNlQ29kZSk6CisKIDIwMTItMDktMjAgIFZzZXZvbG9kIFZsYXNvdiAg
PHZzZXZpa0BjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgV2ViIEluc3BlY3RvcjogUHJvdmlkZSBh
IHdheSB0byBkaXN0aW5ndWlzaCBzY3JpcHRzIGhhdmluZyBzb3VyY2VVUkwgZnJvbSBzdGFuZGFs
b25lIHNjcmlwdHMuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQt
ZW5kL0NTU1N0eWxlTW9kZWwuanMgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5k
L0NTU1N0eWxlTW9kZWwuanMKaW5kZXggZTA3MWY2MGZhZjAxMmI4YWIyYTE1MzE5ZTIzMTY0MzMz
YjkzMTk4Yy4uNDg4NjliZjEwMDY1NGNjY2FhNGRiOTQ1Yjk2MmZlOGNhOTM1Njg0MCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9DU1NTdHlsZU1vZGVsLmpz
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvQ1NTU3R5bGVNb2RlbC5q
cwpAQCAtMTExOCw3ICsxMTE4LDcgQEAgV2ViSW5zcGVjdG9yLkNTU1N0eWxlTW9kZWxSZXNvdXJj
ZUJpbmRpbmcucHJvdG90eXBlID0gewogICAgICAqLwogICAgIHNldFN0eWxlQ29udGVudDogZnVu
Y3Rpb24oc3R5bGVTb3VyY2UsIGNvbnRlbnQsIG1ham9yQ2hhbmdlLCB1c2VyQ2FsbGJhY2spCiAg
ICAgewotICAgICAgICB2YXIgcmVzb3VyY2UgPSBzdHlsZVNvdXJjZS5yZXNvdXJjZSgpOworICAg
ICAgICB2YXIgcmVzb3VyY2UgPSBXZWJJbnNwZWN0b3IucmVzb3VyY2VGb3JVUkwoc3R5bGVTb3Vy
Y2UudXJsKTsKICAgICAgICAgaWYgKHRoaXMuX3N0eWxlU2hlZXRJZEZvclJlc291cmNlKHJlc291
cmNlKSkgewogICAgICAgICAgICAgdGhpcy5faW5uZXJTZXRDb250ZW50KHJlc291cmNlLCBjb250
ZW50LCBtYWpvckNoYW5nZSwgdXNlckNhbGxiYWNrLCBudWxsKTsKICAgICAgICAgICAgIHJldHVy
bjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvQ29tcGls
ZXJTY3JpcHRNYXBwaW5nLmpzIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9D
b21waWxlclNjcmlwdE1hcHBpbmcuanMKaW5kZXggN2Y0YjlkYWUzZDBhOTgwZmM3ZmE0ZDRmNzcz
MmM3Mzk5OTFiZDNmYi4uMDVlMmI3Mzg3ZWRkMmVhYmUwMzUzMWJhZjA4OTJhNTMwNzIyNTY5ZSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Db21waWxlclNj
cmlwdE1hcHBpbmcuanMKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9D
b21waWxlclNjcmlwdE1hcHBpbmcuanMKQEAgLTg0LDcgKzg0LDcgQEAgV2ViSW5zcGVjdG9yLkNv
bXBpbGVyU2NyaXB0TWFwcGluZy5wcm90b3R5cGUgPSB7CiAgICAgICovCiAgICAgYWRkU2NyaXB0
OiBmdW5jdGlvbihzY3JpcHQpCiAgICAgewotICAgICAgICB2YXIgb3JpZ2luYWxVSVNvdXJjZUNv
ZGUgPSBuZXcgV2ViSW5zcGVjdG9yLkphdmFTY3JpcHRTb3VyY2Uoc2NyaXB0LnNvdXJjZVVSTCwg
bnVsbCwgc2NyaXB0LCB0cnVlKTsKKyAgICAgICAgdmFyIG9yaWdpbmFsVUlTb3VyY2VDb2RlID0g
bmV3IFdlYkluc3BlY3Rvci5KYXZhU2NyaXB0U291cmNlKHNjcmlwdC5zb3VyY2VVUkwsIHNjcmlw
dCwgdHJ1ZSk7CiAgICAgICAgIHRoaXMuX29yaWdpbmFsVUlTb3VyY2VDb2RlRm9yU2NyaXB0SWRb
c2NyaXB0LnNjcmlwdElkXSA9IG9yaWdpbmFsVUlTb3VyY2VDb2RlOwogICAgICAgICB0aGlzLl9z
Y3JpcHRGb3JPcmlnaW5hbFVJU291cmNlLnB1dChvcmlnaW5hbFVJU291cmNlQ29kZSwgc2NyaXB0
KTsKICAgICAgICAgdGhpcy5fd29ya3NwYWNlLnByb2plY3QoKS5hZGRVSVNvdXJjZUNvZGUob3Jp
Z2luYWxVSVNvdXJjZUNvZGUpOwpAQCAtMTA5LDcgKzEwOSw3IEBAIFdlYkluc3BlY3Rvci5Db21w
aWxlclNjcmlwdE1hcHBpbmcucHJvdG90eXBlID0gewogICAgICAgICAgICAgICAgIGNvbnRlbnRQ
cm92aWRlciA9IG5ldyBXZWJJbnNwZWN0b3IuU3RhdGljQ29udGVudFByb3ZpZGVyKFdlYkluc3Bl
Y3Rvci5yZXNvdXJjZVR5cGVzLlNjcmlwdCwgc291cmNlQ29udGVudCk7CiAgICAgICAgICAgICBl
bHNlCiAgICAgICAgICAgICAgICAgY29udGVudFByb3ZpZGVyID0gbmV3IFdlYkluc3BlY3Rvci5D
b21waWxlclNvdXJjZU1hcHBpbmdDb250ZW50UHJvdmlkZXIoc291cmNlVVJMKTsKLSAgICAgICAg
ICAgIHZhciB1aVNvdXJjZUNvZGUgPSBuZXcgV2ViSW5zcGVjdG9yLkphdmFTY3JpcHRTb3VyY2Uo
c291cmNlVVJMLCBudWxsLCBjb250ZW50UHJvdmlkZXIsIGZhbHNlKTsKKyAgICAgICAgICAgIHZh
ciB1aVNvdXJjZUNvZGUgPSBuZXcgV2ViSW5zcGVjdG9yLkphdmFTY3JpcHRTb3VyY2Uoc291cmNl
VVJMLCBjb250ZW50UHJvdmlkZXIsIGZhbHNlKTsKICAgICAgICAgICAgIHVpU291cmNlQ29kZS5z
ZXRTb3VyY2VNYXBwaW5nKHRoaXMpOwogICAgICAgICAgICAgdWlTb3VyY2VDb2RlLmlzQ29udGVu
dFNjcmlwdCA9IHNjcmlwdC5pc0NvbnRlbnRTY3JpcHQ7CiAgICAgICAgICAgICB0aGlzLl91aVNv
dXJjZUNvZGVCeVVSTFtzb3VyY2VVUkxdID0gdWlTb3VyY2VDb2RlOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9KYXZhU2NyaXB0U291cmNlLmpzIGIvU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9KYXZhU2NyaXB0U291cmNlLmpzCmluZGV4
IGE2NDFjMmQxODc3MDUwN2E4MjcyY2QxMmQ5OTNkMmY1OGVlNzI3ZTcuLjU2NmNlNjc4YTFjODQy
YjRhZDc1MzU2NDI4OWRiZjI1MzMzZTNkODYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2lu
c3BlY3Rvci9mcm9udC1lbmQvSmF2YVNjcmlwdFNvdXJjZS5qcworKysgYi9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0phdmFTY3JpcHRTb3VyY2UuanMKQEAgLTMyLDEyICszMiwx
MSBAQAogICogQGNvbnN0cnVjdG9yCiAgKiBAZXh0ZW5kcyB7V2ViSW5zcGVjdG9yLlVJU291cmNl
Q29kZX0KICAqIEBwYXJhbSB7c3RyaW5nfSB1cmwKLSAqIEBwYXJhbSB7V2ViSW5zcGVjdG9yLlJl
c291cmNlfSByZXNvdXJjZQogICogQHBhcmFtIHtXZWJJbnNwZWN0b3IuQ29udGVudFByb3ZpZGVy
fSBjb250ZW50UHJvdmlkZXIKICAqLwotV2ViSW5zcGVjdG9yLkphdmFTY3JpcHRTb3VyY2UgPSBm
dW5jdGlvbih1cmwsIHJlc291cmNlLCBjb250ZW50UHJvdmlkZXIsIGlzRWRpdGFibGUpCitXZWJJ
bnNwZWN0b3IuSmF2YVNjcmlwdFNvdXJjZSA9IGZ1bmN0aW9uKHVybCwgY29udGVudFByb3ZpZGVy
LCBpc0VkaXRhYmxlKQogewotICAgIFdlYkluc3BlY3Rvci5VSVNvdXJjZUNvZGUuY2FsbCh0aGlz
LCB1cmwsIHJlc291cmNlLCBjb250ZW50UHJvdmlkZXIpOworICAgIFdlYkluc3BlY3Rvci5VSVNv
dXJjZUNvZGUuY2FsbCh0aGlzLCB1cmwsIGNvbnRlbnRQcm92aWRlcik7CiAgICAgdGhpcy5faXNF
ZGl0YWJsZSA9IGlzRWRpdGFibGU7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2lu
c3BlY3Rvci9mcm9udC1lbmQvTmV0d29ya1VJU291cmNlQ29kZVByb3ZpZGVyLmpzIGIvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9OZXR3b3JrVUlTb3VyY2VDb2RlUHJvdmlkZXIu
anMKaW5kZXggZjE2MjVmNjRjZmFmMzZlMzE1YjBmZTNjYTdmMjM0YTAwMDA3YWUxZC4uYWUzNGZl
YmEwMTBiNjNlYzAxYmM5YjA1Y2UzNmE5ZmEyNjFiNjQ2ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9OZXR3b3JrVUlTb3VyY2VDb2RlUHJvdmlkZXIuanMK
KysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9OZXR3b3JrVUlTb3VyY2VD
b2RlUHJvdmlkZXIuanMKQEAgLTcyLDEwICs3MiwxMCBAQCBXZWJJbnNwZWN0b3IuTmV0d29ya1VJ
U291cmNlQ29kZVByb3ZpZGVyLnByb3RvdHlwZSA9IHsKICAgICAgICAgICAgIHVpU291cmNlQ29k
ZSA9IG5ldyBXZWJJbnNwZWN0b3IuU3R5bGVTb3VyY2UocmVzb3VyY2UpOwogICAgICAgICAgICAg
YnJlYWs7CiAgICAgICAgIGNhc2UgV2ViSW5zcGVjdG9yLnJlc291cmNlVHlwZXMuRG9jdW1lbnQ6
Ci0gICAgICAgICAgICB1aVNvdXJjZUNvZGUgPSBuZXcgV2ViSW5zcGVjdG9yLkphdmFTY3JpcHRT
b3VyY2UocmVzb3VyY2UudXJsLCByZXNvdXJjZSwgcmVzb3VyY2UsIGZhbHNlKTsKKyAgICAgICAg
ICAgIHVpU291cmNlQ29kZSA9IG5ldyBXZWJJbnNwZWN0b3IuSmF2YVNjcmlwdFNvdXJjZShyZXNv
dXJjZS51cmwsIHJlc291cmNlLCBmYWxzZSk7CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAg
Y2FzZSBXZWJJbnNwZWN0b3IucmVzb3VyY2VUeXBlcy5TY3JpcHQ6Ci0gICAgICAgICAgICB1aVNv
dXJjZUNvZGUgPSBuZXcgV2ViSW5zcGVjdG9yLkphdmFTY3JpcHRTb3VyY2UocmVzb3VyY2UudXJs
LCByZXNvdXJjZSwgcmVzb3VyY2UsIHRydWUpOworICAgICAgICAgICAgdWlTb3VyY2VDb2RlID0g
bmV3IFdlYkluc3BlY3Rvci5KYXZhU2NyaXB0U291cmNlKHJlc291cmNlLnVybCwgcmVzb3VyY2Us
IHRydWUpOwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KICAgICAgICAgaWYgKHVpU291
cmNlQ29kZSkgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVu
ZC9SZXNvdXJjZVNjcmlwdE1hcHBpbmcuanMgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJv
bnQtZW5kL1Jlc291cmNlU2NyaXB0TWFwcGluZy5qcwppbmRleCA2ZGZlYjExZmY0NDU4NjdjMTMz
NjU4ZDVkYWQ2NTRjMmU3ZTQ1OTBkLi5kNzJhMWM2NDkxNDI5ZWIwODMzNDc3N2Y1MzFjMzUzOWI2
NzNjM2QyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1Jl
c291cmNlU2NyaXB0TWFwcGluZy5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJv
bnQtZW5kL1Jlc291cmNlU2NyaXB0TWFwcGluZy5qcwpAQCAtMTUwLDcgKzE1MCw3IEBAIFdlYklu
c3BlY3Rvci5SZXNvdXJjZVNjcmlwdE1hcHBpbmcucHJvdG90eXBlID0gewogICAgICAgICAgICAg
dXJsICs9ICIgKCIgKyBuZXh0SW5kZXggKyAiKSI7CiAgICAgICAgICAgICB0aGlzLl9uZXh0RHlu
YW1pY1NjcmlwdEluZGV4Rm9yVVJMW3NjcmlwdC5zb3VyY2VVUkxdID0gbmV4dEluZGV4ICsgMTsK
ICAgICAgICAgfQotICAgICAgICB2YXIgdWlTb3VyY2VDb2RlID0gbmV3IFdlYkluc3BlY3Rvci5K
YXZhU2NyaXB0U291cmNlKHVybCwgbnVsbCwgY29udGVudFByb3ZpZGVyLCAhc2NyaXB0LmlzSW5s
aW5lU2NyaXB0KCkpOworICAgICAgICB2YXIgdWlTb3VyY2VDb2RlID0gbmV3IFdlYkluc3BlY3Rv
ci5KYXZhU2NyaXB0U291cmNlKHVybCwgY29udGVudFByb3ZpZGVyLCAhc2NyaXB0LmlzSW5saW5l
U2NyaXB0KCkpOwogICAgICAgICB0aGlzLl90ZW1wb3JhcnlVSVNvdXJjZUNvZGVzLnB1dCh1aVNv
dXJjZUNvZGUsIHVpU291cmNlQ29kZSk7CiAgICAgICAgIHRoaXMuX2JpbmRVSVNvdXJjZUNvZGVU
b1NjcmlwdHModWlTb3VyY2VDb2RlLCBzY3JpcHRzKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TQVNTU291cmNlTWFwcGluZy5qcyBiL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU0FTU1NvdXJjZU1hcHBpbmcuanMKaW5kZXggMGI4
ZTk2ZTZlNDgwYTA5MzY1MTNjYzk3YWVjMzc5NDRlNDBhODFlNC4uNDNjZTNiNGEzNjkxMzY4MzZh
MGQzMjIzNDQ1OTc5NGI5ODdlODkyMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL2Zyb250LWVuZC9TQVNTU291cmNlTWFwcGluZy5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9p
bnNwZWN0b3IvZnJvbnQtZW5kL1NBU1NTb3VyY2VNYXBwaW5nLmpzCkBAIC0xNjcsNyArMTY3LDcg
QEAgV2ViSW5zcGVjdG9yLlNBU1NTb3VyY2UgPSBmdW5jdGlvbihzYXNzVVJMKQogewogICAgIHZh
ciBjb250ZW50ID0gSW5zcGVjdG9yRnJvbnRlbmRIb3N0LmxvYWRSZXNvdXJjZVN5bmNocm9ub3Vz
bHkoc2Fzc1VSTCk7CiAgICAgdmFyIGNvbnRlbnRQcm92aWRlciA9IG5ldyBXZWJJbnNwZWN0b3Iu
U3RhdGljQ29udGVudFByb3ZpZGVyKFdlYkluc3BlY3Rvci5yZXNvdXJjZVR5cGVzLlN0eWxlc2hl
ZXQsIGNvbnRlbnQsICJ0ZXh0L3gtc2NzcyIpOwotICAgIFdlYkluc3BlY3Rvci5VSVNvdXJjZUNv
ZGUuY2FsbCh0aGlzLCBzYXNzVVJMLCBudWxsLCBjb250ZW50UHJvdmlkZXIpOworICAgIFdlYklu
c3BlY3Rvci5VSVNvdXJjZUNvZGUuY2FsbCh0aGlzLCBzYXNzVVJMLCBjb250ZW50UHJvdmlkZXIp
OwogfQogCiBXZWJJbnNwZWN0b3IuU0FTU1NvdXJjZS5wcm90b3R5cGUgPSB7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1NjcmlwdFNuaXBwZXRNb2RlbC5q
cyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU2NyaXB0U25pcHBldE1vZGVs
LmpzCmluZGV4IDYwYTY2NzIzMzdmZjQyOGIwMDY3OWU0NzdlMTIwZDMxN2NmZjg0NWQuLjg4OTVh
MTE1Mjc3MGVlYzE1MThmZjE5ZWRlZWE3NTU5NzY5ODdkMmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU2NyaXB0U25pcHBldE1vZGVsLmpzCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU2NyaXB0U25pcHBldE1vZGVsLmpzCkBA
IC0yODAsNyArMjgwLDcgQEAgV2ViSW5zcGVjdG9yLlNjcmlwdFNuaXBwZXRNb2RlbC5wcm90b3R5
cGUgPSB7CiAgICAgICovCiAgICAgX2NyZWF0ZVVJU291cmNlQ29kZUZvclNjcmlwdDogZnVuY3Rp
b24oc2NyaXB0KQogICAgIHsKLSAgICAgICAgdmFyIHVpU291cmNlQ29kZSA9IG5ldyBXZWJJbnNw
ZWN0b3IuSmF2YVNjcmlwdFNvdXJjZShzY3JpcHQuc291cmNlVVJMLCBudWxsLCBzY3JpcHQsIGZh
bHNlKTsKKyAgICAgICAgdmFyIHVpU291cmNlQ29kZSA9IG5ldyBXZWJJbnNwZWN0b3IuSmF2YVNj
cmlwdFNvdXJjZShzY3JpcHQuc291cmNlVVJMLCBzY3JpcHQsIGZhbHNlKTsKICAgICAgICAgdWlT
b3VyY2VDb2RlLnNldFNvdXJjZU1hcHBpbmcodGhpcy5fc25pcHBldFNjcmlwdE1hcHBpbmcpOyAK
ICAgICAgICAgdWlTb3VyY2VDb2RlLmlzU25pcHBldEV2YWx1YXRpb24gPSB0cnVlOwogICAgICAg
ICB0aGlzLl91aVNvdXJjZUNvZGVGb3JTY3JpcHRJZFtzY3JpcHQuc2NyaXB0SWRdID0gdWlTb3Vy
Y2VDb2RlOwpAQCAtMzc5LDcgKzM3OSw3IEBAIFdlYkluc3BlY3Rvci5TY3JpcHRTbmlwcGV0TW9k
ZWwucHJvdG90eXBlLl9fcHJvdG9fXyA9IFdlYkluc3BlY3Rvci5PYmplY3QucHJvdG90CiAgKi8K
IFdlYkluc3BlY3Rvci5TbmlwcGV0SmF2YVNjcmlwdFNvdXJjZSA9IGZ1bmN0aW9uKHNuaXBwZXRJ
ZCwgc25pcHBldE5hbWUsIGNvbnRlbnRQcm92aWRlciwgc2NyaXB0U25pcHBldE1vZGVsKQogewot
ICAgIFdlYkluc3BlY3Rvci5KYXZhU2NyaXB0U291cmNlLmNhbGwodGhpcywgc25pcHBldE5hbWUs
IG51bGwsIGNvbnRlbnRQcm92aWRlciwgdHJ1ZSk7CisgICAgV2ViSW5zcGVjdG9yLkphdmFTY3Jp
cHRTb3VyY2UuY2FsbCh0aGlzLCBzbmlwcGV0TmFtZSwgY29udGVudFByb3ZpZGVyLCB0cnVlKTsK
ICAgICB0aGlzLl9zbmlwcGV0SWQgPSBzbmlwcGV0SWQ7CiAgICAgdGhpcy5fc2NyaXB0U25pcHBl
dE1vZGVsID0gc2NyaXB0U25pcHBldE1vZGVsOwogICAgIHRoaXMuaXNTbmlwcGV0ID0gdHJ1ZTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU2NyaXB0c1Bh
bmVsLmpzIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TY3JpcHRzUGFuZWwu
anMKaW5kZXggZjRkYzc3MjE5YzEzMDE3MmU0ZmE1MjllYzNmZjc3MDE4YTBkYzY2MS4uOTIzYmFh
N2NkZTg2MThkZGRhYTE5NDViMWI0NWFhY2Y3NThhYmQ3OCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TY3JpcHRzUGFuZWwuanMKKysrIGIvU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TY3JpcHRzUGFuZWwuanMKQEAgLTExMDAsOCArMTEw
MCw5IEBAIFdlYkluc3BlY3Rvci5TY3JpcHRzUGFuZWwucHJvdG90eXBlID0gewogCiAgICAgICAg
IHZhciB1aVNvdXJjZUNvZGUgPSAvKiogQHR5cGUge1dlYkluc3BlY3Rvci5VSVNvdXJjZUNvZGV9
ICovIHRhcmdldDsKICAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kSXRlbShXZWJJbnNwZWN0b3Iu
VUlTdHJpbmcoIkxvY2FsIG1vZGlmaWNhdGlvbnMuLi4iKSwgdGhpcy5fc2hvd0xvY2FsSGlzdG9y
eS5iaW5kKHRoaXMsIHVpU291cmNlQ29kZSkpOwotICAgICAgICBpZiAodWlTb3VyY2VDb2RlLnJl
c291cmNlKCkgJiYgdWlTb3VyY2VDb2RlLnJlc291cmNlKCkucmVxdWVzdCkKLSAgICAgICAgICAg
IGNvbnRleHRNZW51LmFwcGVuZEFwcGxpY2FibGVJdGVtcyh1aVNvdXJjZUNvZGUucmVzb3VyY2Uo
KS5yZXF1ZXN0KTsKKyAgICAgICAgdmFyIHJlc291cmNlID0gV2ViSW5zcGVjdG9yLnJlc291cmNl
Rm9yVVJMKHVpU291cmNlQ29kZS51cmwpOworICAgICAgICBpZiAocmVzb3VyY2UgJiYgcmVzb3Vy
Y2UucmVxdWVzdCkKKyAgICAgICAgICAgIGNvbnRleHRNZW51LmFwcGVuZEFwcGxpY2FibGVJdGVt
cyhyZXNvdXJjZS5yZXF1ZXN0KTsKICAgICB9LAogCiAgICAgLyoqIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TdHlsZVNvdXJjZS5qcyBiL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU3R5bGVTb3VyY2UuanMKaW5kZXggNGQyMWY1MThh
N2NiMmRmN2ZiYTRiODZhNDVjYTk3MjUyNDVhZWMzZC4uOGJmZDYzMzhkNjhiNjI4Njg4MjAxMTQ2
YTM5NWMzYzJlOGE5OTMxMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zy
b250LWVuZC9TdHlsZVNvdXJjZS5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJv
bnQtZW5kL1N0eWxlU291cmNlLmpzCkBAIC0yOSwxMSArMjksMTEgQEAKIC8qKgogICogQGNvbnN0
cnVjdG9yCiAgKiBAZXh0ZW5kcyB7V2ViSW5zcGVjdG9yLlVJU291cmNlQ29kZX0KLSAqIEBwYXJh
bSB7V2ViSW5zcGVjdG9yLlJlc291cmNlfSByZXNvdXJjZQorICogQHBhcmFtIHtXZWJJbnNwZWN0
b3IuQ29udGVudFByb3ZpZGVyfSBjb250ZW50UHJvdmlkZXIKICAqLwotV2ViSW5zcGVjdG9yLlN0
eWxlU291cmNlID0gZnVuY3Rpb24ocmVzb3VyY2UpCitXZWJJbnNwZWN0b3IuU3R5bGVTb3VyY2Ug
PSBmdW5jdGlvbihjb250ZW50UHJvdmlkZXIpCiB7Ci0gICAgV2ViSW5zcGVjdG9yLlVJU291cmNl
Q29kZS5jYWxsKHRoaXMsIHJlc291cmNlLnVybCwgcmVzb3VyY2UsIHJlc291cmNlKTsKKyAgICBX
ZWJJbnNwZWN0b3IuVUlTb3VyY2VDb2RlLmNhbGwodGhpcywgY29udGVudFByb3ZpZGVyLmNvbnRl
bnRVUkwoKSwgY29udGVudFByb3ZpZGVyKTsKIH0KIAogV2ViSW5zcGVjdG9yLlN0eWxlU291cmNl
LnVwZGF0ZVRpbWVvdXQgPSAyMDA7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0
b3IvZnJvbnQtZW5kL1VJU291cmNlQ29kZS5qcyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9m
cm9udC1lbmQvVUlTb3VyY2VDb2RlLmpzCmluZGV4IDQ3YzhjMzQyNWVjOThkYzAyNTM3NGMzNjg5
MjhiYTJkYTYwY2VmNDQuLjQyZWI5YWE3NTI5Y2E4NzQ1ZDY0YmIyN2UwODY5YWM1MDY4YTJhYzQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvVUlTb3VyY2VD
b2RlLmpzCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvVUlTb3VyY2VD
b2RlLmpzCkBAIC0zNCwxMyArMzQsMTEgQEAKICAqIEBleHRlbmRzIHtXZWJJbnNwZWN0b3IuT2Jq
ZWN0fQogICogQGltcGxlbWVudHMge1dlYkluc3BlY3Rvci5Db250ZW50UHJvdmlkZXJ9CiAgKiBA
cGFyYW0ge3N0cmluZ30gdXJsCi0gKiBAcGFyYW0ge1dlYkluc3BlY3Rvci5SZXNvdXJjZX0gcmVz
b3VyY2UKICAqIEBwYXJhbSB7V2ViSW5zcGVjdG9yLkNvbnRlbnRQcm92aWRlcn0gY29udGVudFBy
b3ZpZGVyCiAgKi8KLVdlYkluc3BlY3Rvci5VSVNvdXJjZUNvZGUgPSBmdW5jdGlvbih1cmwsIHJl
c291cmNlLCBjb250ZW50UHJvdmlkZXIpCitXZWJJbnNwZWN0b3IuVUlTb3VyY2VDb2RlID0gZnVu
Y3Rpb24odXJsLCBjb250ZW50UHJvdmlkZXIpCiB7CiAgICAgdGhpcy5fdXJsID0gdXJsOwotICAg
IHRoaXMuX3Jlc291cmNlID0gcmVzb3VyY2U7CiAgICAgdGhpcy5fcGFyc2VkVVJMID0gbmV3IFdl
Ykluc3BlY3Rvci5QYXJzZWRVUkwodXJsKTsKICAgICB0aGlzLl9jb250ZW50UHJvdmlkZXIgPSBj
b250ZW50UHJvdmlkZXI7CiAgICAgdGhpcy5pc0NvbnRlbnRTY3JpcHQgPSBmYWxzZTsKQEAgLTk0
LDE0ICs5Miw2IEBAIFdlYkluc3BlY3Rvci5VSVNvdXJjZUNvZGUucHJvdG90eXBlID0gewogICAg
IH0sCiAKICAgICAvKioKLSAgICAgKiBAcmV0dXJuIHtXZWJJbnNwZWN0b3IuUmVzb3VyY2V9Ci0g
ICAgICovCi0gICAgcmVzb3VyY2U6IGZ1bmN0aW9uKCkKLSAgICB7Ci0gICAgICAgIHJldHVybiB0
aGlzLl9yZXNvdXJjZTsKLSAgICB9LAotCi0gICAgLyoqCiAgICAgICogQHJldHVybiB7V2ViSW5z
cGVjdG9yLlBhcnNlZFVSTH0KICAgICAgKi8KICAgICBnZXQgcGFyc2VkVVJMKCkKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBi
OTdjZmZhNDkwODYxOWIyYmZmNzZhOTMxMTUwYjZhNTc0NzY1YjI2Li40MmQ3ZGQxZWJhYzk1Y2Uz
YTc3ZWVlMTE3ZGVhZmQ5NTZmYjE2NWRmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjEgQEAKKzIwMTItMDkt
MjUgIFZzZXZvbG9kIFZsYXNvdiAgPHZzZXZpa0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgV2Vi
IEluc3BlY3RvcjogUmVtb3ZlIHJlc291cmNlKCkgZ2V0dGVyIGZyb20gVUlTb3VyY2VDb2RlLgor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTc1NTcKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGh0dHAvdGVz
dHMvaW5zcGVjdG9yL3dvcmtzcGFjZS10ZXN0LmpzOgorICAgICAgICAoaW5pdGlhbGl6ZV9Xb3Jr
c3BhY2VUZXN0Lkluc3BlY3RvclRlc3QuYWRkTW9ja1VJU291cmNlQ29kZVRvV29ya3NwYWNlKToK
KyAgICAgICAgKiBpbnNwZWN0b3IvZGVidWdnZXIvYnJlYWtwb2ludC1tYW5hZ2VyLmh0bWw6Cisg
ICAgICAgICogaW5zcGVjdG9yL2RlYnVnZ2VyL2R5bmFtaWMtc2NyaXB0LXRhZy1leHBlY3RlZC50
eHQ6CisgICAgICAgICogaW5zcGVjdG9yL2RlYnVnZ2VyL2R5bmFtaWMtc2NyaXB0LXRhZy5odG1s
OgorICAgICAgICAqIGluc3BlY3Rvci9kZWJ1Z2dlci9zY3JpcHRzLWZpbGUtc2VsZWN0b3IuaHRt
bDoKKyAgICAgICAgKiBpbnNwZWN0b3IvZGVidWdnZXIvc2NyaXB0cy1wYW5lbC5odG1sOgorICAg
ICAgICAqIGluc3BlY3Rvci9kZWJ1Z2dlci9zY3JpcHRzLXNvcnRpbmcuaHRtbDoKKyAgICAgICAg
KiBpbnNwZWN0b3IvZGVidWdnZXIvdWktc291cmNlLWNvZGUtZGlzcGxheS1uYW1lLmh0bWw6Cisg
ICAgICAgICogaW5zcGVjdG9yL2RlYnVnZ2VyL3VpLXNvdXJjZS1jb2RlLmh0bWw6CisKIDIwMTIt
MDktMjAgIFZzZXZvbG9kIFZsYXNvdiAgPHZzZXZpa0BjaHJvbWl1bS5vcmc+CiAKICAgICAgICAg
V2ViIEluc3BlY3RvcjogUHJvdmlkZSBhIHdheSB0byBkaXN0aW5ndWlzaCBzY3JpcHRzIGhhdmlu
ZyBzb3VyY2VVUkwgZnJvbSBzdGFuZGFsb25lIHNjcmlwdHMuCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL2luc3BlY3Rvci93b3Jrc3BhY2UtdGVzdC5qcyBiL0xheW91dFRlc3Rz
L2h0dHAvdGVzdHMvaW5zcGVjdG9yL3dvcmtzcGFjZS10ZXN0LmpzCmluZGV4IDA4YjNiNTc0NjRm
NDBhZWJiNTdhMjYzNjg5N2RkYTI5Yjc3MzQ5N2YuLjdjMjU3ZjYwNGMzNjE5YjgxZDJkM2RjYTNk
M2Q0ZDY1YTFjOWE2YzUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvaW5zcGVj
dG9yL3dvcmtzcGFjZS10ZXN0LmpzCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvaW5zcGVj
dG9yL3dvcmtzcGFjZS10ZXN0LmpzCkBAIC0zOSw3ICszOSw3IEBAIEluc3BlY3RvclRlc3QuYWRk
TW9ja1VJU291cmNlQ29kZVRvV29ya3NwYWNlID0gZnVuY3Rpb24odXJsLCB0eXBlLCBjb250ZW50
KQogewogICAgIHZhciBpc0RvY3VtZW50ID0gdHlwZSA9PT0gV2ViSW5zcGVjdG9yLnJlc291cmNl
VHlwZXMuRG9jdW1lbnQ7CiAgICAgdmFyIG1vY2tDb250ZW50UHJvdmlkZXIgPSBuZXcgV2ViSW5z
cGVjdG9yLlN0YXRpY0NvbnRlbnRQcm92aWRlcih0eXBlLCBjb250ZW50KTsKLSAgICB2YXIgdWlT
b3VyY2VDb2RlID0gbmV3IFdlYkluc3BlY3Rvci5KYXZhU2NyaXB0U291cmNlKHVybCwgbnVsbCwg
bW9ja0NvbnRlbnRQcm92aWRlciwgIWlzRG9jdW1lbnQpOworICAgIHZhciB1aVNvdXJjZUNvZGUg
PSBuZXcgV2ViSW5zcGVjdG9yLkphdmFTY3JpcHRTb3VyY2UodXJsLCBtb2NrQ29udGVudFByb3Zp
ZGVyLCAhaXNEb2N1bWVudCk7CiAgICAgSW5zcGVjdG9yVGVzdC50ZXN0V29ya3NwYWNlLnByb2pl
Y3QoKS5hZGRVSVNvdXJjZUNvZGUodWlTb3VyY2VDb2RlKTsKIH0KIApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW5zcGVjdG9yL2RlYnVnZ2VyL2JyZWFrcG9pbnQtbWFuYWdlci5odG1sIGIvTGF5
b3V0VGVzdHMvaW5zcGVjdG9yL2RlYnVnZ2VyL2JyZWFrcG9pbnQtbWFuYWdlci5odG1sCmluZGV4
IGMzZGIwOWUyNmMxMzIxMTg5OWMyODViZThkNzVjYmRjOWZmYWZhNDQuLjQxMTAwNGMxZGJiYmM1
MzEyYzczMWMwNGI2ZDJhNzgxY2VjYTNjM2QgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2luc3Bl
Y3Rvci9kZWJ1Z2dlci9icmVha3BvaW50LW1hbmFnZXIuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9p
bnNwZWN0b3IvZGVidWdnZXIvYnJlYWtwb2ludC1tYW5hZ2VyLmh0bWwKQEAgLTExMSw3ICsxMTEs
NyBAQCBmdW5jdGlvbiB0ZXN0KCkKICAgICBXb3Jrc3BhY2VNb2NrLnByb3RvdHlwZSA9IHsKICAg
ICAgICAgX2FkZFVJU291cmNlQ29kZTogZnVuY3Rpb24odXJsKQogICAgICAgICB7Ci0gICAgICAg
ICAgICB2YXIgdWlTb3VyY2VDb2RlID0gbmV3IFdlYkluc3BlY3Rvci5KYXZhU2NyaXB0U291cmNl
KHVybCwgbnVsbCwgbnVsbCwgZmFsc2UpOworICAgICAgICAgICAgdmFyIHVpU291cmNlQ29kZSA9
IG5ldyBXZWJJbnNwZWN0b3IuSmF2YVNjcmlwdFNvdXJjZSh1cmwsIG51bGwsIGZhbHNlKTsKICAg
ICAgICAgICAgIHVpU291cmNlQ29kZS5zZXRTb3VyY2VNYXBwaW5nKGRlZmF1bHRNYXBwaW5nKTsK
ICAgICAgICAgICAgIHVpU291cmNlQ29kZXNbdXJsXSA9IHVpU291cmNlQ29kZTsKICAgICAgICAg
ICAgIHRoaXMuZGlzcGF0Y2hFdmVudFRvTGlzdGVuZXJzKFdlYkluc3BlY3Rvci5VSVNvdXJjZUNv
ZGVQcm92aWRlci5FdmVudHMuVUlTb3VyY2VDb2RlQWRkZWQsIHVpU291cmNlQ29kZSk7CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZGVidWdnZXIvZHluYW1pYy1zY3JpcHQtdGFn
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci9keW5hbWljLXNj
cmlwdC10YWctZXhwZWN0ZWQudHh0CmluZGV4IDUyODVmMjJjN2Q4YWJjODk2NDk1NzM5ZDlmMzg2
YWYyMDkxYTVmOTcuLmY4OWViNDgwYmRlOGJhNDRjZjJkZjkwODI5YzlmOGVmOTA1YWJmZmQgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci9keW5hbWljLXNjcmlwdC10
YWctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci9keW5h
bWljLXNjcmlwdC10YWctZXhwZWN0ZWQudHh0CkBAIC0xNCwxMiArMTQsMTAgQEAgVUlTb3VyY2VD
b2RlIGlzIGVkaXRhYmxlOiB0cnVlCiBVSVNvdXJjZUNvZGUgaXMgY29udGVudCBzY3JpcHQ6IGZh
bHNlCiBNaW1lIHR5cGU6IHRleHQvamF2YXNjcmlwdAogVUlTb3VyY2VDb2RlIGNvbnRlbnQ6IGZ1
bmN0aW9uIGZvbygpIHsgfQotVUkgcmVzb3VyY2U6IG51bGwKIFVJU291cmNlQ29kZTogTGF5b3V0
VGVzdHMvaW5zcGVjdG9yL2RlYnVnZ2VyL2R5bmFtaWMtc2NyaXB0LXRhZy5odG1sICgyKQogVUlT
b3VyY2VDb2RlIGlzIGVkaXRhYmxlOiB0cnVlCiBVSVNvdXJjZUNvZGUgaXMgY29udGVudCBzY3Jp
cHQ6IGZhbHNlCiBNaW1lIHR5cGU6IHRleHQvamF2YXNjcmlwdAogVUlTb3VyY2VDb2RlIGNvbnRl
bnQ6IGZ1bmN0aW9uIGJhcigpIHsgfQotVUkgcmVzb3VyY2U6IG51bGwKIERlYnVnZ2VyIHdhcyBk
aXNhYmxlZC4KIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2RlYnVnZ2VyL2R5
bmFtaWMtc2NyaXB0LXRhZy5odG1sIGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2RlYnVnZ2VyL2R5
bmFtaWMtc2NyaXB0LXRhZy5odG1sCmluZGV4IGU1ZjU4YWQ5ZGRhZjBlOGEzMjEzZGZjODFjODNl
MmRjODRkMDUxN2EuLjdiZjU5MjM0OTBhYjA5YmM3ZGQ1Njk5ZGY3Yzc2N2VlYmI0NTExZmYgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci9keW5hbWljLXNjcmlwdC10
YWcuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZGVidWdnZXIvZHluYW1pYy1zY3Jp
cHQtdGFnLmh0bWwKQEAgLTcyLDcgKzcyLDYgQEAgdmFyIHRlc3QgPSBmdW5jdGlvbigpCiAKICAg
ICAgICAgICAgIGZ1bmN0aW9uIHVpU291cmNlQ29kZUR1bXBlZCgpCiAgICAgICAgICAgICB7Ci0g
ICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5hZGRSZXN1bHQoIlVJIHJlc291cmNlOiAiICsg
dWlTb3VyY2VDb2RlLnJlc291cmNlKCkpOwogICAgICAgICAgICAgICAgIEluc3BlY3RvclRlc3Qu
YXNzZXJ0VHJ1ZSghc2VlblVJU291cmNlQ29kZXMuZ2V0KHVpU291cmNlQ29kZSksICJVSVNvdXJj
ZUNvZGUgbWF0Y2hlcyB0d28gc2NyaXB0czogIiArIHVpU291cmNlQ29kZS51cmwpOwogICAgICAg
ICAgICAgICAgIHNlZW5VSVNvdXJjZUNvZGVzLnB1dCh1aVNvdXJjZUNvZGUsIHVpU291cmNlQ29k
ZSk7CiAgICAgICAgICAgICAgICAgKytpbmRleDsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lu
c3BlY3Rvci9kZWJ1Z2dlci9zY3JpcHRzLWZpbGUtc2VsZWN0b3IuaHRtbCBiL0xheW91dFRlc3Rz
L2luc3BlY3Rvci9kZWJ1Z2dlci9zY3JpcHRzLWZpbGUtc2VsZWN0b3IuaHRtbAppbmRleCAxM2Jj
YmQ5Mjc2NmM5NzMyMDIzZjYxODM5ZDNiZmE5MDhmMTJiOTk3Li5jMzBmMGYwZGU5NzgzMjBmYmEx
Y2NlY2Q0OWYzZmJjNmM3ZDYyNDU0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3Iv
ZGVidWdnZXIvc2NyaXB0cy1maWxlLXNlbGVjdG9yLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW5z
cGVjdG9yL2RlYnVnZ2VyL3NjcmlwdHMtZmlsZS1zZWxlY3Rvci5odG1sCkBAIC0yMSw3ICsyMSw3
IEBAIGZ1bmN0aW9uIHRlc3QoKQogCiAgICAgZnVuY3Rpb24gYWRkVUlTb3VyY2VDb2RlKHVybCwg
aXNDb250ZW50U2NyaXB0KQogICAgIHsKLSAgICAgICAgdmFyIHVpU291cmNlQ29kZSA9IG5ldyBX
ZWJJbnNwZWN0b3IuVUlTb3VyY2VDb2RlKHVybCwgbnVsbCwgY29udGVudFByb3ZpZGVyLCBudWxs
KTsKKyAgICAgICAgdmFyIHVpU291cmNlQ29kZSA9IG5ldyBXZWJJbnNwZWN0b3IuVUlTb3VyY2VD
b2RlKHVybCwgY29udGVudFByb3ZpZGVyLCBudWxsKTsKICAgICAgICAgdWlTb3VyY2VDb2RlLmlz
Q29udGVudFNjcmlwdCA9IGlzQ29udGVudFNjcmlwdDsKICAgICAgICAgbmF2aWdhdG9yRmlsZVNl
bGVjdG9yLmFkZFVJU291cmNlQ29kZSh1aVNvdXJjZUNvZGUpOwogICAgIH0KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci9zY3JpcHRzLXBhbmVsLmh0bWwgYi9MYXlv
dXRUZXN0cy9pbnNwZWN0b3IvZGVidWdnZXIvc2NyaXB0cy1wYW5lbC5odG1sCmluZGV4IDY5ZjQ0
MWIxNWNmNTU4OGE2N2UyMDM3NTIxYWE0YTRkY2UyZWY3MTIuLjUyMjIxYmY0MTIyYzlkYWQ1YTBj
Zjc2NGNiYzE1ZTUyMTM5MTlkOWIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9k
ZWJ1Z2dlci9zY3JpcHRzLXBhbmVsLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2Rl
YnVnZ2VyL3NjcmlwdHMtcGFuZWwuaHRtbApAQCAtMjQsNyArMjQsNyBAQCBmdW5jdGlvbiB0ZXN0
KCkKICAgICAKICAgICBmdW5jdGlvbiBjcmVhdGVVSVNvdWNlQ29kZSh1cmwpCiAgICAgewotICAg
ICAgICB2YXIgdWlTb3VyY2VDb2RlID0gbmV3IFdlYkluc3BlY3Rvci5KYXZhU2NyaXB0U291cmNl
KHVybCwgbnVsbCwgY29udGVudFByb3ZpZGVyLCBmYWxzZSk7CisgICAgICAgIHZhciB1aVNvdXJj
ZUNvZGUgPSBuZXcgV2ViSW5zcGVjdG9yLkphdmFTY3JpcHRTb3VyY2UodXJsLCBjb250ZW50UHJv
dmlkZXIsIGZhbHNlKTsKICAgICAgICAgdWlTb3VyY2VDb2RlLnJlcXVlc3RDb250ZW50ID0gZnVu
Y3Rpb24oY2FsbGJhY2spCiAgICAgICAgIHsKICAgICAgICAgICAgIEluc3BlY3RvclRlc3QuYWRk
UmVzdWx0KCJTb3VyY2UgcmVxdWVzdGVkIGZvciAiICsgdXJsKTsKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci9zY3JpcHRzLXNvcnRpbmcuaHRtbCBiL0xheW91dFRl
c3RzL2luc3BlY3Rvci9kZWJ1Z2dlci9zY3JpcHRzLXNvcnRpbmcuaHRtbAppbmRleCAzMzdiNzBh
OTZlYTc3ZmY1MTlkYTM5Y2QzMWExMmMzM2ZhYzFkZDNhLi5lM2ZmNDM3MDQ2Y2UwZDkyMWQxNDI3
OWM1MzhmZDUxMTIxNTkxODNlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZGVi
dWdnZXIvc2NyaXB0cy1zb3J0aW5nLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2Rl
YnVnZ2VyL3NjcmlwdHMtc29ydGluZy5odG1sCkBAIC0yMSw3ICsyMSw3IEBAIGZ1bmN0aW9uIHRl
c3QoKQogCiAgICAgZnVuY3Rpb24gYWRkVUlTb3VyY2VDb2RlKHVybCwgaXNDb250ZW50U2NyaXB0
KQogICAgIHsKLSAgICAgICAgdmFyIHVpU291cmNlQ29kZSA9IG5ldyBXZWJJbnNwZWN0b3IuVUlT
b3VyY2VDb2RlKHVybCwgbnVsbCwgY29udGVudFByb3ZpZGVyLCBudWxsKTsKKyAgICAgICAgdmFy
IHVpU291cmNlQ29kZSA9IG5ldyBXZWJJbnNwZWN0b3IuVUlTb3VyY2VDb2RlKHVybCwgY29udGVu
dFByb3ZpZGVyLCBudWxsKTsKICAgICAgICAgdWlTb3VyY2VDb2RlLmlzQ29udGVudFNjcmlwdCA9
IGlzQ29udGVudFNjcmlwdDsKICAgICAgICAgbmF2aWdhdG9yRmlsZVNlbGVjdG9yLmFkZFVJU291
cmNlQ29kZSh1aVNvdXJjZUNvZGUpOwogICAgIH0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lu
c3BlY3Rvci9kZWJ1Z2dlci91aS1zb3VyY2UtY29kZS1kaXNwbGF5LW5hbWUuaHRtbCBiL0xheW91
dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci91aS1zb3VyY2UtY29kZS1kaXNwbGF5LW5hbWUuaHRt
bAppbmRleCAzOWM0OWNiYzM5NmI5YmJhOGM4ZGE2MjVkNzA4OGFiYjNkYjRkMDE3Li4xYzQ5ZTFj
MjQ3Y2JlMTc2OTFiZWMwZGQzY2Q4MTU5YjUyNzgzYjAwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9pbnNwZWN0b3IvZGVidWdnZXIvdWktc291cmNlLWNvZGUtZGlzcGxheS1uYW1lLmh0bWwKKysr
IGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2RlYnVnZ2VyL3VpLXNvdXJjZS1jb2RlLWRpc3BsYXkt
bmFtZS5odG1sCkBAIC02LDcgKzYsNyBAQCBmdW5jdGlvbiB0ZXN0KCkKIHsKICAgICBmdW5jdGlv
biBkdW1wVUlTb3VyY2VDb2RlRGlzcGxheU5hbWUodXJsKQogICAgIHsKLSAgICAgICAgdmFyIHVp
U291cmNlQ29kZSA9IG5ldyBXZWJJbnNwZWN0b3IuVUlTb3VyY2VDb2RlKHVybCwgbnVsbCwgbnVs
bCk7CisgICAgICAgIHZhciB1aVNvdXJjZUNvZGUgPSBuZXcgV2ViSW5zcGVjdG9yLlVJU291cmNl
Q29kZSh1cmwsIG51bGwpOwogICAgICAgICBJbnNwZWN0b3JUZXN0LmFkZFJlc3VsdCgiVUlTb3Vy
Y2VDb2RlIGRpc3BsYXkgbmFtZSBmb3IgdXJsIFwiIiArIHVybCArICJcIiBpcyBcIiIgKyBXZWJJ
bnNwZWN0b3IuVGFiYmVkRWRpdG9yQ29udGFpbmVyLnByb3RvdHlwZS5fdGl0bGVGb3JGaWxlKHVp
U291cmNlQ29kZSkgKyAiXCIuIik7CiAgICAgfQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bnNwZWN0b3IvZGVidWdnZXIvdWktc291cmNlLWNvZGUuaHRtbCBiL0xheW91dFRlc3RzL2luc3Bl
Y3Rvci9kZWJ1Z2dlci91aS1zb3VyY2UtY29kZS5odG1sCmluZGV4IDQ4ZTI0NDBjM2VkMTVkZTVi
Yzk4NjliNGI2MGQyY2M3OTA5NWE3NzQuLjBlOTI5M2QxODA2MjIyMmYzMGNmN2Y2NmVlOTljMTE3
YjVmODhiODcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci91aS1z
b3VyY2UtY29kZS5odG1sCisrKyBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci91aS1z
b3VyY2UtY29kZS5odG1sCkBAIC0xNyw3ICsxNyw3IEBAIGZ1bmN0aW9uIHRlc3QoKQogICAgIElu
c3BlY3RvclRlc3QucnVuVGVzdFN1aXRlKFsKICAgICAgICAgZnVuY3Rpb24gdGVzdFVJU291cmNl
Q29kZShuZXh0KQogICAgICAgICB7Ci0gICAgICAgICAgICB2YXIgdWlTb3VyY2VDb2RlID0gbmV3
IFdlYkluc3BlY3Rvci5VSVNvdXJjZUNvZGUoInVybCIsIG51bGwsIGNvbnRlbnRQcm92aWRlcik7
CisgICAgICAgICAgICB2YXIgdWlTb3VyY2VDb2RlID0gbmV3IFdlYkluc3BlY3Rvci5VSVNvdXJj
ZUNvZGUoInVybCIsIGNvbnRlbnRQcm92aWRlcik7CiAgICAgICAgICAgICBmdW5jdGlvbiBkaWRS
ZXF1ZXN0Q29udGVudChjYWxsTnVtYmVyLCBjb250ZW50LCBjb250ZW50RW5jb2RlZCwgbWltZVR5
cGUpCiAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5hZGRSZXN1
bHQoIkNhbGxiYWNrICIgKyBjYWxsTnVtYmVyICsgIiBpcyBpbnZva2VkLiIpOwo=
</data>
<flag name="review"
          id="177744"
          type_id="1"
          status="+"
          setter="pfeldman"
    />
          </attachment>
      

    </bug>

</bugzilla>