<?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>76457</bug_id>
          
          <creation_ts>2012-01-17 08:20:57 -0800</creation_ts>
          <short_desc>Web Inspector: track HTML revisions when editing DOM and / or upon free flow edits.</short_desc>
          <delta_ts>2014-12-12 13:14:47 -0800</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>INVALID</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Pavel Feldman">pfeldman</reporter>
          <assigned_to name="Pavel Feldman">pfeldman</assigned_to>
          <cc>apavlov</cc>
    
    <cc>burg</cc>
    
    <cc>bweinstein</cc>
    
    <cc>joepeck</cc>
    
    <cc>keishi</cc>
    
    <cc>loislo</cc>
    
    <cc>ossy</cc>
    
    <cc>pfeldman</cc>
    
    <cc>pmuellr</cc>
    
    <cc>rik</cc>
    
    <cc>yurys</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>537114</commentid>
    <comment_count>0</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2012-01-17 08:20:57 -0800</bug_when>
    <thetext>This feature is still behind the experimental flag.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>537730</commentid>
    <comment_count>1</comment_count>
      <attachid>122892</attachid>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2012-01-18 02:30:12 -0800</bug_when>
    <thetext>Created attachment 122892
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>537778</commentid>
    <comment_count>2</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2012-01-18 04:53:12 -0800</bug_when>
    <thetext>Committed r105262: &lt;http://trac.webkit.org/changeset/105262&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>537866</commentid>
    <comment_count>3</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2012-01-18 07:36:27 -0800</bug_when>
    <thetext>Reopen, because inspector/elements/set-html-via-resource.html is broken on SL and on Qt:

--- /Volumes/Data/slave/snowleopard-intel-release-tests/build/layout-test-results/inspector/elements/set-html-via-resource-expected.txt 
+++ /Volumes/Data/slave/snowleopard-intel-release-tests/build/layout-test-results/inspector/elements/set-html-via-resource-actual.txt 
@@ -1,5 +1,16 @@
-Tests that the DOM content can be set via editing resource content.
-
-
-&lt;html&gt;&lt;head&gt;&lt;/head&gt;&lt;body&gt;New iframe content&lt;/body&gt;&lt;/html&gt;
-
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x600
+  RenderBlock {HTML} at (0,0) size 800x600
+    RenderBody {BODY} at (8,8) size 784x584
+      RenderBlock {P} at (0,0) size 784x18
+        RenderText {#text} at (0,0) size 422x18
+          text run at (0,0) width 422: &quot;Tests that the DOM content can be set via editing resource content.&quot;
+      RenderBlock (anonymous) at (0,34) size 784x154
+        RenderPartObject {IFRAME} at (0,0) size 304x154 [border: (2px inset #000000)]
+          layer at (0,0) size 300x150
+            RenderView at (0,0) size 300x150
+          layer at (0,0) size 300x150
+            RenderBlock {HTML} at (0,0) size 300x150
+              RenderBody {BODY} at (8,8) size 284x134
+        RenderText {#text} at (0,0) size 0x0

Could you check and fix it?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>537875</commentid>
    <comment_count>4</comment_count>
      <attachid>122892</attachid>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2012-01-18 07:47:27 -0800</bug_when>
    <thetext>Comment on attachment 122892
Patch

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

&gt; Source/WebCore/inspector/front-end/DOMAgent.js:1168
&gt; +            DOMAgent.querySelectorAll(doc.id, &quot;iframe[src]&quot;, setOuterHTML.bind(this, true));

What about &quot;frame[src]&quot;? tivofaq.com is a good example.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>537876</commentid>
    <comment_count>5</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2012-01-18 07:52:24 -0800</bug_when>
    <thetext>(In reply to comment #4)
&gt; (From update of attachment 122892 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=122892&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/inspector/front-end/DOMAgent.js:1168
&gt; &gt; +            DOMAgent.querySelectorAll(doc.id, &quot;iframe[src]&quot;, setOuterHTML.bind(this, true));
&gt; 
&gt; What about &quot;frame[src]&quot;? tivofaq.com is a good example.

I thought people don&apos;t use those anymore. I&apos;ll fix as a follow up. Thanks.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>537914</commentid>
    <comment_count>6</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2012-01-18 09:20:32 -0800</bug_when>
    <thetext>I skipped the failing test to paint the Qt bot green: http://trac.webkit.org/changeset/105283

Please unskip it when the fix lands.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>537939</commentid>
    <comment_count>7</comment_count>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2012-01-18 09:44:14 -0800</bug_when>
    <thetext>Also how do you handle multiple frames using the same URL? It looks like that would cause weird results. Maybe you should include the frameId/requestId on the document node so you can know you have the right WebInspector.Resource?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>537942</commentid>
    <comment_count>8</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2012-01-18 09:45:41 -0800</bug_when>
    <thetext>(In reply to comment #6)
&gt; I skipped the failing test to paint the Qt bot green: http://trac.webkit.org/changeset/105283
&gt; 
&gt; Please unskip it when the fix lands.

Fix landed in http://trac.webkit.org/changeset/105284. Thanks.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>122892</attachid>
            <date>2012-01-18 02:30:12 -0800</date>
            <delta_ts>2012-01-18 07:47:27 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-76457-20120118143010.patch</filename>
            <type>text/plain</type>
            <size>24744</size>
            <attacher name="Pavel Feldman">pfeldman</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA1MTQxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDZjNTAzYWI2OWU1MGJh
NThjYzZjMzFiNzNmNDk3YWYzNmYyNmEwZC4uNzViODU3NjlmMjVlYjhlNzQxMDBiM2I3OTJmYWUz
YmZmMjVlMWQxOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQzIEBACisyMDEyLTAxLTE3ICBQYXZl
bCBGZWxkbWFuICA8cGZlbGRtYW5AZ29vZ2xlLmNvbT4KKworICAgICAgICBXZWIgSW5zcGVjdG9y
OiB0cmFjayBIVE1MIHJldmlzaW9ucyB3aGVuIGVkaXRpbmcgRE9NIGFuZCAvIG9yIHVwb24gZnJl
ZSBmbG93IGVkaXRzLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9NzY0NTcKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBUZXN0OiBpbnNwZWN0b3IvZWxlbWVudHMvc2V0LWh0bWwtdmlhLXJlc291cmNlLmh0bWwK
KworICAgICAgICAqIGluc3BlY3Rvci9ET01FZGl0b3IuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
RE9NRWRpdG9yOjpwYXRjaE5vZGUpOgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JET01B
Z2VudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JET01BZ2VudDo6Z2V0T3V0ZXJI
VE1MKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckRPTUFnZW50OjpzZXRPdXRlckhUTUwp
OgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yRE9NQWdlbnQ6OmJ1aWxkT2JqZWN0Rm9yTm9k
ZSk6CisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9ET01BZ2VudC5qczoKKyAgICAgICAg
KFdlYkluc3BlY3Rvci5ET01Ob2RlKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5ET01Ob2RlLnBy
b3RvdHlwZS5zZXROb2RlTmFtZSk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuRE9NTm9kZS5wcm90
b3R5cGUuc2V0Tm9kZVZhbHVlKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5ET01Ob2RlLnByb3Rv
dHlwZS5zZXRBdHRyaWJ1dGUpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkRPTU5vZGUucHJvdG90
eXBlLnNldEF0dHJpYnV0ZVZhbHVlKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5ET01Ob2RlLnBy
b3RvdHlwZS5yZW1vdmVBdHRyaWJ1dGUpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkRPTU5vZGUu
cHJvdG90eXBlLmdldENoaWxkTm9kZXMubXljYWxsYmFjayk6CisgICAgICAgIChXZWJJbnNwZWN0
b3IuRE9NTm9kZS5wcm90b3R5cGUuZ2V0Q2hpbGROb2Rlcyk6CisgICAgICAgIChXZWJJbnNwZWN0
b3IuRE9NTm9kZS5wcm90b3R5cGUuc2V0T3V0ZXJIVE1MKToKKyAgICAgICAgKFdlYkluc3BlY3Rv
ci5ET01Ob2RlLnByb3RvdHlwZS5yZW1vdmVOb2RlKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5E
T01Ob2RlLnByb3RvdHlwZS5tb3ZlVG8pOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkRPTURvY3Vt
ZW50KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5ET01BZ2VudCk6CisgICAgICAgIChXZWJJbnNw
ZWN0b3IuRE9NQWdlbnQucHJvdG90eXBlLl9zZXREb2N1bWVudCk6CisgICAgICAgIChXZWJJbnNw
ZWN0b3IuRE9NQWdlbnQucHJvdG90eXBlLl9idWlsZEhpZ2hsaWdodENvbmZpZyk6CisgICAgICAg
IChXZWJJbnNwZWN0b3IuRE9NQWdlbnQucHJvdG90eXBlLl9tYXJrUmV2aXNpb24pOgorICAgICAg
ICAoV2ViSW5zcGVjdG9yLkRPTUFnZW50LnByb3RvdHlwZS5fY2FwdHVyZURPTS5jYWxsYmFjayk6
CisgICAgICAgIChXZWJJbnNwZWN0b3IuRE9NQWdlbnQucHJvdG90eXBlLl9jYXB0dXJlRE9NKToK
KyAgICAgICAgKFdlYkluc3BlY3Rvci5ET01Nb2RlbFJlc291cmNlQmluZGluZy5wcm90b3R5cGUu
c2V0Q29udGVudCk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuRE9NTW9kZWxSZXNvdXJjZUJpbmRp
bmcucHJvdG90eXBlLnNldENvbnRlbnQuc2V0T3V0ZXJIVE1MKToKKyAgICAgICAgKFdlYkluc3Bl
Y3Rvci5ET01Nb2RlbFJlc291cmNlQmluZGluZy5wcm90b3R5cGUuc2V0Q29udGVudC53aXRoRG9j
dW1lbnQpOgorICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvRWxlbWVudHNUcmVlT3V0bGlu
ZS5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5FbGVtZW50c1RyZWVFbGVtZW50LnByb3RvdHlw
ZS5fYXR0cmlidXRlRWRpdGluZ0NvbW1pdHRlZCk6CisKIDIwMTItMDEtMTEgIEFsZXhhbmRlciBQ
YXZsb3YgIDxhcGF2bG92QGNocm9taXVtLm9yZz4KIAogICAgICAgICBXZWIgSW5zcGVjdG9yOiBb
VGV4dFByb21wdF0gQXV0b2NvbXBsZXRlIGFkZHMgdW53YW50ZWQgdGV4dCB0aGF0J3MgaGFyZCB0
byByZW1vdmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9ET01FZGl0b3Iu
Y3BwIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0RPTUVkaXRvci5jcHAKaW5kZXggYTQ3MmNm
ZDc3ZWE2NWVhOGYxMjFjNzJhNTYzNTNmZjljMDcxZWNhZS4uM2M5ZDg5YjVkZDFjZmJhM2FiNDJl
MDI1OTRjMTViNDcwMjQwM2Y1NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L0RPTUVkaXRvci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0RPTUVkaXRvci5j
cHAKQEAgLTkzLDcgKzkzLDcgQEAgdm9pZCBET01FZGl0b3I6OnBhdGNoRG9jdW1lbnQoY29uc3Qg
U3RyaW5nJiBtYXJrdXApCiBOb2RlKiBET01FZGl0b3I6OnBhdGNoTm9kZShOb2RlKiBub2RlLCBj
b25zdCBTdHJpbmcmIG1hcmt1cCwgRXhjZXB0aW9uQ29kZSYgZWMpCiB7CiAgICAgLy8gRG9uJ3Qg
cGFyc2UgPGh0bWw+IGFzIGEgZnJhZ21lbnQuCi0gICAgaWYgKG5vZGUgPT0gbm9kZS0+b3duZXJE
b2N1bWVudCgpLT5kb2N1bWVudEVsZW1lbnQoKSkgeworICAgIGlmIChub2RlLT5pc0RvY3VtZW50
Tm9kZSgpIHx8IChub2RlLT5wYXJlbnROb2RlKCkgJiYgbm9kZS0+cGFyZW50Tm9kZSgpLT5pc0Rv
Y3VtZW50Tm9kZSgpKSkgewogICAgICAgICBwYXRjaERvY3VtZW50KG1hcmt1cCk7CiAgICAgICAg
IHJldHVybiAwOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9J
bnNwZWN0b3JET01BZ2VudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9y
RE9NQWdlbnQuY3BwCmluZGV4IGU4ZWZhOTA3NTFiNTVjZmFiYWVkZjExNTAxZjdiNTJmMmExOGQ5
ZGQuLmQ5OTQxZGQ0ZjgxZjJiNDQxZWYyMGYzMWM3Y2UzYmIwNTZlYjZjNjIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JET01BZ2VudC5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckRPTUFnZW50LmNwcApAQCAtNjE2LDIyICs2
MTYsNyBAQCB2b2lkIEluc3BlY3RvckRPTUFnZW50OjpnZXRPdXRlckhUTUwoRXJyb3JTdHJpbmcq
IGVycm9yU3RyaW5nLCBpbnQgbm9kZUlkLCBXVEY6OgogICAgIGlmICghbm9kZSkKICAgICAgICAg
cmV0dXJuOwogCi0gICAgaWYgKG5vZGUtPmlzSFRNTEVsZW1lbnQoKSkgewotICAgICAgICAqb3V0
ZXJIVE1MID0gc3RhdGljX2Nhc3Q8SFRNTEVsZW1lbnQqPihub2RlKS0+b3V0ZXJIVE1MKCk7Ci0g
ICAgICAgIHJldHVybjsKLSAgICB9Ci0KLSAgICBpZiAobm9kZS0+aXNDb21tZW50Tm9kZSgpKSB7
Ci0gICAgICAgICpvdXRlckhUTUwgPSAiPCEtLSIgKyBub2RlLT5ub2RlVmFsdWUoKSArICItLT4i
OwotICAgICAgICByZXR1cm47Ci0gICAgfQotCi0gICAgaWYgKG5vZGUtPmlzVGV4dE5vZGUoKSkg
ewotICAgICAgICAqb3V0ZXJIVE1MID0gbm9kZS0+bm9kZVZhbHVlKCk7Ci0gICAgICAgIHJldHVy
bjsKLSAgICB9Ci0KLSAgICAqZXJyb3JTdHJpbmcgPSAiT25seSBIVE1MRWxlbWVudHMsIENvbW1l
bnRzLCBhbmQgVGV4dCBub2RlcyBhcmUgc3VwcG9ydGVkIjsKKyAgICAqb3V0ZXJIVE1MID0gY3Jl
YXRlTWFya3VwKG5vZGUpOwogfQogCiB2b2lkIEluc3BlY3RvckRPTUFnZW50OjpzZXRPdXRlckhU
TUwoRXJyb3JTdHJpbmcqIGVycm9yU3RyaW5nLCBpbnQgbm9kZUlkLCBjb25zdCBTdHJpbmcmIG91
dGVySFRNTCkKQEAgLTY0Niw4ICs2MzEsOCBAQCB2b2lkIEluc3BlY3RvckRPTUFnZW50OjpzZXRP
dXRlckhUTUwoRXJyb3JTdHJpbmcqIGVycm9yU3RyaW5nLCBpbnQgbm9kZUlkLCBjb25zdAogICAg
IGlmICghbm9kZSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgRG9jdW1lbnQqIGRvY3VtZW50ID0g
bm9kZS0+b3duZXJEb2N1bWVudCgpOwotICAgIGlmICghZG9jdW1lbnQtPmlzSFRNTERvY3VtZW50
KCkpIHsKKyAgICBEb2N1bWVudCogZG9jdW1lbnQgPSBub2RlLT5pc0RvY3VtZW50Tm9kZSgpID8g
c3RhdGljX2Nhc3Q8RG9jdW1lbnQqPihub2RlKSA6IG5vZGUtPm93bmVyRG9jdW1lbnQoKTsKKyAg
ICBpZiAoIWRvY3VtZW50IHx8ICFkb2N1bWVudC0+aXNIVE1MRG9jdW1lbnQoKSkgewogICAgICAg
ICAqZXJyb3JTdHJpbmcgPSAiTm90IGFuIEhUTUwgZG9jdW1lbnQiOwogICAgICAgICByZXR1cm47
CiAgICAgfQpAQCAtMTEzNiwzMyArMTEyMSwzMyBAQCBQYXNzUmVmUHRyPEluc3BlY3Rvck9iamVj
dD4gSW5zcGVjdG9yRE9NQWdlbnQ6OmJ1aWxkT2JqZWN0Rm9yTm9kZShOb2RlKiBub2RlLCBpbgog
ICAgICAgICAuc2V0TG9jYWxOYW1lKGxvY2FsTmFtZSkKICAgICAgICAgLnNldE5vZGVWYWx1ZShu
b2RlVmFsdWUpOwogCi0gICAgaWYgKG5vZGUtPm5vZGVUeXBlKCkgPT0gTm9kZTo6RUxFTUVOVF9O
T0RFIHx8IG5vZGUtPm5vZGVUeXBlKCkgPT0gTm9kZTo6RE9DVU1FTlRfTk9ERSB8fCBub2RlLT5u
b2RlVHlwZSgpID09IE5vZGU6OkRPQ1VNRU5UX0ZSQUdNRU5UX05PREUpIHsKKyAgICBpZiAobm9k
ZS0+aXNDb250YWluZXJOb2RlKCkpIHsKICAgICAgICAgaW50IG5vZGVDb3VudCA9IGlubmVyQ2hp
bGROb2RlQ291bnQobm9kZSk7CiAgICAgICAgIHZhbHVlLT5zZXRDaGlsZE5vZGVDb3VudChub2Rl
Q291bnQpOwogICAgICAgICBSZWZQdHI8SW5zcGVjdG9yQXJyYXk+IGNoaWxkcmVuID0gYnVpbGRB
cnJheUZvckNvbnRhaW5lckNoaWxkcmVuKG5vZGUsIGRlcHRoLCBub2Rlc01hcCk7CiAgICAgICAg
IGlmIChjaGlsZHJlbi0+bGVuZ3RoKCkgPiAwKQogICAgICAgICAgICAgdmFsdWUtPnNldEFycmF5
KCJjaGlsZHJlbiIsIGNoaWxkcmVuLnJlbGVhc2UoKSk7CisgICAgfQogCi0gICAgICAgIGlmIChu
b2RlLT5ub2RlVHlwZSgpID09IE5vZGU6OkVMRU1FTlRfTk9ERSkgewotICAgICAgICAgICAgRWxl
bWVudCogZWxlbWVudCA9IHN0YXRpY19jYXN0PEVsZW1lbnQqPihub2RlKTsKLSAgICAgICAgICAg
IHZhbHVlLT5zZXRBcnJheSgiYXR0cmlidXRlcyIsIGJ1aWxkQXJyYXlGb3JFbGVtZW50QXR0cmli
dXRlcyhlbGVtZW50KSk7Ci0gICAgICAgICAgICBpZiAobm9kZS0+aXNGcmFtZU93bmVyRWxlbWVu
dCgpKSB7Ci0gICAgICAgICAgICAgICAgSFRNTEZyYW1lT3duZXJFbGVtZW50KiBmcmFtZU93bmVy
ID0gc3RhdGljX2Nhc3Q8SFRNTEZyYW1lT3duZXJFbGVtZW50Kj4obm9kZSk7Ci0gICAgICAgICAg
ICAgICAgRG9jdW1lbnQqIGRvYyA9IGZyYW1lT3duZXItPmNvbnRlbnREb2N1bWVudCgpOwotICAg
ICAgICAgICAgICAgIGlmIChkb2MpCi0gICAgICAgICAgICAgICAgICAgIHZhbHVlLT5zZXRDb250
ZW50RG9jdW1lbnQoYnVpbGRPYmplY3RGb3JOb2RlKGRvYywgMCwgbm9kZXNNYXApKTsKLSAgICAg
ICAgICAgIH0KLSAgICAgICAgfSBlbHNlIGlmIChub2RlLT5ub2RlVHlwZSgpID09IE5vZGU6OkRP
Q1VNRU5UX05PREUpIHsKLSAgICAgICAgICAgIERvY3VtZW50KiBkb2N1bWVudCA9IHN0YXRpY19j
YXN0PERvY3VtZW50Kj4obm9kZSk7Ci0gICAgICAgICAgICB2YWx1ZS0+c2V0RG9jdW1lbnRVUkwo
ZG9jdW1lbnRVUkxTdHJpbmcoZG9jdW1lbnQpKTsKLSAgICAgICAgICAgIHZhbHVlLT5zZXRYbWxW
ZXJzaW9uKGRvY3VtZW50LT54bWxWZXJzaW9uKCkpOworICAgIGlmIChub2RlLT5pc0VsZW1lbnRO
b2RlKCkpIHsKKyAgICAgICAgRWxlbWVudCogZWxlbWVudCA9IHN0YXRpY19jYXN0PEVsZW1lbnQq
Pihub2RlKTsKKyAgICAgICAgdmFsdWUtPnNldEFycmF5KCJhdHRyaWJ1dGVzIiwgYnVpbGRBcnJh
eUZvckVsZW1lbnRBdHRyaWJ1dGVzKGVsZW1lbnQpKTsKKyAgICAgICAgaWYgKG5vZGUtPmlzRnJh
bWVPd25lckVsZW1lbnQoKSkgeworICAgICAgICAgICAgSFRNTEZyYW1lT3duZXJFbGVtZW50KiBm
cmFtZU93bmVyID0gc3RhdGljX2Nhc3Q8SFRNTEZyYW1lT3duZXJFbGVtZW50Kj4obm9kZSk7Cisg
ICAgICAgICAgICBEb2N1bWVudCogZG9jID0gZnJhbWVPd25lci0+Y29udGVudERvY3VtZW50KCk7
CisgICAgICAgICAgICBpZiAoZG9jKQorICAgICAgICAgICAgICAgIHZhbHVlLT5zZXRDb250ZW50
RG9jdW1lbnQoYnVpbGRPYmplY3RGb3JOb2RlKGRvYywgMCwgbm9kZXNNYXApKTsKICAgICAgICAg
fQorICAgIH0gZWxzZSBpZiAobm9kZS0+aXNEb2N1bWVudE5vZGUoKSkgeworICAgICAgICBEb2N1
bWVudCogZG9jdW1lbnQgPSBzdGF0aWNfY2FzdDxEb2N1bWVudCo+KG5vZGUpOworICAgICAgICB2
YWx1ZS0+c2V0RG9jdW1lbnRVUkwoZG9jdW1lbnRVUkxTdHJpbmcoZG9jdW1lbnQpKTsKKyAgICAg
ICAgdmFsdWUtPnNldFhtbFZlcnNpb24oZG9jdW1lbnQtPnhtbFZlcnNpb24oKSk7CiAgICAgfSBl
bHNlIGlmIChub2RlLT5ub2RlVHlwZSgpID09IE5vZGU6OkRPQ1VNRU5UX1RZUEVfTk9ERSkgewog
ICAgICAgICBEb2N1bWVudFR5cGUqIGRvY1R5cGUgPSBzdGF0aWNfY2FzdDxEb2N1bWVudFR5cGUq
Pihub2RlKTsKICAgICAgICAgdmFsdWUtPnNldFB1YmxpY0lkKGRvY1R5cGUtPnB1YmxpY0lkKCkp
OwogICAgICAgICB2YWx1ZS0+c2V0U3lzdGVtSWQoZG9jVHlwZS0+c3lzdGVtSWQoKSk7CiAgICAg
ICAgIHZhbHVlLT5zZXRJbnRlcm5hbFN1YnNldChkb2NUeXBlLT5pbnRlcm5hbFN1YnNldCgpKTsK
LSAgICB9IGVsc2UgaWYgKG5vZGUtPm5vZGVUeXBlKCkgPT0gTm9kZTo6QVRUUklCVVRFX05PREUp
IHsKKyAgICB9IGVsc2UgaWYgKG5vZGUtPmlzQXR0cmlidXRlTm9kZSgpKSB7CiAgICAgICAgIEF0
dHIqIGF0dHJpYnV0ZSA9IHN0YXRpY19jYXN0PEF0dHIqPihub2RlKTsKICAgICAgICAgdmFsdWUt
PnNldE5hbWUoYXR0cmlidXRlLT5uYW1lKCkpOwogICAgICAgICB2YWx1ZS0+c2V0VmFsdWUoYXR0
cmlidXRlLT52YWx1ZSgpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9m
cm9udC1lbmQvRE9NQWdlbnQuanMgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5k
L0RPTUFnZW50LmpzCmluZGV4IDg4ZGE4MmVjNWU2ZGM4ZDZkZDU1NWZkOGI1MmJlYTM4NGFlODQx
MjMuLjlmMGY4MjZjZjMwYWUzOTdjMzU0ODliZTJkMDAwYzdhYmVhNTg3OGQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvRE9NQWdlbnQuanMKKysrIGIvU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9ET01BZ2VudC5qcwpAQCAtNjQsOSArNjQs
MTMgQEAgV2ViSW5zcGVjdG9yLkRPTU5vZGUgPSBmdW5jdGlvbihkb21BZ2VudCwgZG9jLCBwYXls
b2FkKSB7CiAKICAgICBpZiAocGF5bG9hZC5jb250ZW50RG9jdW1lbnQpIHsKICAgICAgICAgdGhp
cy5fY29udGVudERvY3VtZW50ID0gbmV3IFdlYkluc3BlY3Rvci5ET01Eb2N1bWVudChkb21BZ2Vu
dCwgcGF5bG9hZC5jb250ZW50RG9jdW1lbnQpOworICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8
IHRoaXMuX2F0dHJpYnV0ZXMubGVuZ3RoOyArK2kpIHsKKyAgICAgICAgICAgIC8vIE9ubHkgYmlu
ZCBkb2N1bWVudCB0byBVUkwgd2hlbiBzcmMgYXR0cmlidXRlIGlzIHNldC4KKyAgICAgICAgICAg
IGlmICh0aGlzLl9hdHRyaWJ1dGVzW2ldLm5hbWUudG9Mb3dlckNhc2UoKSA9PT0gInNyYyIpCisg
ICAgICAgICAgICAgICAgdGhpcy5fZG9tQWdlbnQuX2RvY3VtZW50VVJMVG9Eb2N1bWVudFt0aGlz
Ll9jb250ZW50RG9jdW1lbnQuZG9jdW1lbnRVUkxdID0gdGhpcy5fY29udGVudERvY3VtZW50Owor
ICAgICAgICB9CiAgICAgICAgIHRoaXMuY2hpbGRyZW4gPSBbdGhpcy5fY29udGVudERvY3VtZW50
XTsKICAgICAgICAgdGhpcy5fcmVudW1iZXIoKTsKLSAgICAgICAgdGhpcy5fZG9tQWdlbnQuX2lk
VG9ET01Ob2RlW3RoaXMuX2NvbnRlbnREb2N1bWVudC5pZF0gPSB0aGlzLl9jb250ZW50RG9jdW1l
bnQ7CiAgICAgfQogCiAgICAgaWYgKHRoaXMuX25vZGVUeXBlID09PSBOb2RlLkVMRU1FTlRfTk9E
RSkgewpAQCAtNzUsMTUgKzc5LDEwIEBAIFdlYkluc3BlY3Rvci5ET01Ob2RlID0gZnVuY3Rpb24o
ZG9tQWdlbnQsIGRvYywgcGF5bG9hZCkgewogICAgICAgICAgICAgdGhpcy5vd25lckRvY3VtZW50
LmRvY3VtZW50RWxlbWVudCA9IHRoaXM7CiAgICAgICAgIGlmICh0aGlzLm93bmVyRG9jdW1lbnQg
JiYgIXRoaXMub3duZXJEb2N1bWVudC5ib2R5ICYmIHRoaXMuX25vZGVOYW1lID09PSAiQk9EWSIp
CiAgICAgICAgICAgICB0aGlzLm93bmVyRG9jdW1lbnQuYm9keSA9IHRoaXM7Ci0gICAgICAgIGlm
IChwYXlsb2FkLmRvY3VtZW50VVJMKQotICAgICAgICAgICAgdGhpcy5kb2N1bWVudFVSTCA9IHBh
eWxvYWQuZG9jdW1lbnRVUkw7CiAgICAgfSBlbHNlIGlmICh0aGlzLl9ub2RlVHlwZSA9PT0gTm9k
ZS5ET0NVTUVOVF9UWVBFX05PREUpIHsKICAgICAgICAgdGhpcy5wdWJsaWNJZCA9IHBheWxvYWQu
cHVibGljSWQ7CiAgICAgICAgIHRoaXMuc3lzdGVtSWQgPSBwYXlsb2FkLnN5c3RlbUlkOwogICAg
ICAgICB0aGlzLmludGVybmFsU3Vic2V0ID0gcGF5bG9hZC5pbnRlcm5hbFN1YnNldDsKLSAgICB9
IGVsc2UgaWYgKHRoaXMuX25vZGVUeXBlID09PSBOb2RlLkRPQ1VNRU5UX05PREUpIHsKLSAgICAg
ICAgdGhpcy5kb2N1bWVudFVSTCA9IHBheWxvYWQuZG9jdW1lbnRVUkw7Ci0gICAgICAgIHRoaXMu
eG1sVmVyc2lvbiA9IHBheWxvYWQueG1sVmVyc2lvbjsKICAgICB9IGVsc2UgaWYgKHRoaXMuX25v
ZGVUeXBlID09PSBOb2RlLkFUVFJJQlVURV9OT0RFKSB7CiAgICAgICAgIHRoaXMubmFtZSA9IHBh
eWxvYWQubmFtZTsKICAgICAgICAgdGhpcy52YWx1ZSA9IHBheWxvYWQudmFsdWU7CkBAIC0xMzMs
MTEgKzEzMiwxMSBAQCBXZWJJbnNwZWN0b3IuRE9NTm9kZS5wcm90b3R5cGUgPSB7CiAKICAgICAv
KioKICAgICAgKiBAcGFyYW0ge3N0cmluZ30gbmFtZQotICAgICAqIEBwYXJhbSB7ZnVuY3Rpb24o
KT19IGNhbGxiYWNrCisgICAgICogQHBhcmFtIHtmdW5jdGlvbig/UHJvdG9jb2wuRXJyb3IpPX0g
Y2FsbGJhY2sKICAgICAgKi8KICAgICBzZXROb2RlTmFtZTogZnVuY3Rpb24obmFtZSwgY2FsbGJh
Y2spCiAgICAgewotICAgICAgICBET01BZ2VudC5zZXROb2RlTmFtZSh0aGlzLmlkLCBuYW1lLCBj
YWxsYmFjayk7CisgICAgICAgIERPTUFnZW50LnNldE5vZGVOYW1lKHRoaXMuaWQsIG5hbWUsIFdl
Ykluc3BlY3Rvci5kb21BZ2VudC5fbWFya1JldmlzaW9uKHRoaXMsIGNhbGxiYWNrKSk7CiAgICAg
fSwKIAogICAgIC8qKgpAQCAtMTYyLDcgKzE2MSw3IEBAIFdlYkluc3BlY3Rvci5ET01Ob2RlLnBy
b3RvdHlwZSA9IHsKICAgICAgKi8KICAgICBzZXROb2RlVmFsdWU6IGZ1bmN0aW9uKHZhbHVlLCBj
YWxsYmFjaykKICAgICB7Ci0gICAgICAgIERPTUFnZW50LnNldE5vZGVWYWx1ZSh0aGlzLmlkLCB2
YWx1ZSwgY2FsbGJhY2spOworICAgICAgICBET01BZ2VudC5zZXROb2RlVmFsdWUodGhpcy5pZCwg
dmFsdWUsIFdlYkluc3BlY3Rvci5kb21BZ2VudC5fbWFya1JldmlzaW9uKHRoaXMsIGNhbGxiYWNr
KSk7CiAgICAgfSwKIAogICAgIC8qKgpAQCAtMTc4LDIxICsxNzcsMjEgQEAgV2ViSW5zcGVjdG9y
LkRPTU5vZGUucHJvdG90eXBlID0gewogICAgIC8qKgogICAgICAqIEBwYXJhbSB7c3RyaW5nfSBu
YW1lCiAgICAgICogQHBhcmFtIHtzdHJpbmd9IHRleHQKLSAgICAgKiBAcGFyYW0ge2Z1bmN0aW9u
KCk9fSBjYWxsYmFjaworICAgICAqIEBwYXJhbSB7ZnVuY3Rpb24oP1Byb3RvY29sLkVycm9yKT19
IGNhbGxiYWNrCiAgICAgICovCiAgICAgc2V0QXR0cmlidXRlOiBmdW5jdGlvbihuYW1lLCB0ZXh0
LCBjYWxsYmFjaykKICAgICB7Ci0gICAgICAgIERPTUFnZW50LnNldEF0dHJpYnV0ZXNBc1RleHQo
dGhpcy5pZCwgdGV4dCwgbmFtZSwgY2FsbGJhY2spOworICAgICAgICBET01BZ2VudC5zZXRBdHRy
aWJ1dGVzQXNUZXh0KHRoaXMuaWQsIHRleHQsIG5hbWUsIFdlYkluc3BlY3Rvci5kb21BZ2VudC5f
bWFya1JldmlzaW9uKHRoaXMsIGNhbGxiYWNrKSk7CiAgICAgfSwKIAogICAgIC8qKgogICAgICAq
IEBwYXJhbSB7c3RyaW5nfSBuYW1lCiAgICAgICogQHBhcmFtIHtzdHJpbmd9IHZhbHVlCi0gICAg
ICogQHBhcmFtIHtmdW5jdGlvbigpPX0gY2FsbGJhY2sKKyAgICAgKiBAcGFyYW0ge2Z1bmN0aW9u
KD9Qcm90b2NvbC5FcnJvcik9fSBjYWxsYmFjawogICAgICAqLwogICAgIHNldEF0dHJpYnV0ZVZh
bHVlOiBmdW5jdGlvbihuYW1lLCB2YWx1ZSwgY2FsbGJhY2spCiAgICAgewotICAgICAgICBET01B
Z2VudC5zZXRBdHRyaWJ1dGVWYWx1ZSh0aGlzLmlkLCBuYW1lLCB2YWx1ZSwgY2FsbGJhY2spOwor
ICAgICAgICBET01BZ2VudC5zZXRBdHRyaWJ1dGVWYWx1ZSh0aGlzLmlkLCBuYW1lLCB2YWx1ZSwg
V2ViSW5zcGVjdG9yLmRvbUFnZW50Ll9tYXJrUmV2aXNpb24odGhpcywgY2FsbGJhY2spKTsKICAg
ICB9LAogCiAgICAgLyoqCkBAIC0yMDUsNyArMjA0LDcgQEAgV2ViSW5zcGVjdG9yLkRPTU5vZGUu
cHJvdG90eXBlID0gewogCiAgICAgLyoqCiAgICAgICogQHBhcmFtIHtzdHJpbmd9IG5hbWUKLSAg
ICAgKiBAcGFyYW0ge2Z1bmN0aW9uKCk9fSBjYWxsYmFjaworICAgICAqIEBwYXJhbSB7ZnVuY3Rp
b24oP1Byb3RvY29sLkVycm9yKT19IGNhbGxiYWNrCiAgICAgICovCiAgICAgcmVtb3ZlQXR0cmli
dXRlOiBmdW5jdGlvbihuYW1lLCBjYWxsYmFjaykKICAgICB7CkBAIC0yMjEsOCArMjIwLDcgQEAg
V2ViSW5zcGVjdG9yLkRPTU5vZGUucHJvdG90eXBlID0gewogICAgICAgICAgICAgICAgIH0KICAg
ICAgICAgICAgIH0KIAotICAgICAgICAgICAgaWYgKGNhbGxiYWNrKQotICAgICAgICAgICAgICAg
IGNhbGxiYWNrKCk7CisgICAgICAgICAgICBXZWJJbnNwZWN0b3IuZG9tQWdlbnQuX21hcmtSZXZp
c2lvbih0aGlzLCBjYWxsYmFjaykoZXJyb3IpOwogICAgICAgICB9CiAgICAgICAgIERPTUFnZW50
LnJlbW92ZUF0dHJpYnV0ZSh0aGlzLmlkLCBuYW1lLCBteWNhbGxiYWNrLmJpbmQodGhpcykpOwog
ICAgIH0sCkBAIC0yNDIsNyArMjQwLDggQEAgV2ViSW5zcGVjdG9yLkRPTU5vZGUucHJvdG90eXBl
ID0gewogICAgICAgICAgKiBAdGhpcyB7V2ViSW5zcGVjdG9yLkRPTU5vZGV9CiAgICAgICAgICAq
IEBwYXJhbSB7P1Byb3RvY29sLkVycm9yfSBlcnJvcgogICAgICAgICAgKi8KLSAgICAgICAgZnVu
Y3Rpb24gbXljYWxsYmFjayhlcnJvcikgeworICAgICAgICBmdW5jdGlvbiBteWNhbGxiYWNrKGVy
cm9yKQorICAgICAgICB7CiAgICAgICAgICAgICBpZiAoIWVycm9yICYmIGNhbGxiYWNrKQogICAg
ICAgICAgICAgICAgIGNhbGxiYWNrKHRoaXMuY2hpbGRyZW4pOwogICAgICAgICB9CkBAIC0yNjQs
NyArMjYzLDcgQEAgV2ViSW5zcGVjdG9yLkRPTU5vZGUucHJvdG90eXBlID0gewogICAgICAqLwog
ICAgIHNldE91dGVySFRNTDogZnVuY3Rpb24oaHRtbCwgY2FsbGJhY2spCiAgICAgewotICAgICAg
ICBET01BZ2VudC5zZXRPdXRlckhUTUwodGhpcy5pZCwgaHRtbCwgY2FsbGJhY2spOworICAgICAg
ICBET01BZ2VudC5zZXRPdXRlckhUTUwodGhpcy5pZCwgaHRtbCwgV2ViSW5zcGVjdG9yLmRvbUFn
ZW50Ll9tYXJrUmV2aXNpb24odGhpcywgY2FsbGJhY2spKTsKICAgICB9LAogCiAgICAgLyoqCkBA
IC0yNzIsNyArMjcxLDcgQEAgV2ViSW5zcGVjdG9yLkRPTU5vZGUucHJvdG90eXBlID0gewogICAg
ICAqLwogICAgIHJlbW92ZU5vZGU6IGZ1bmN0aW9uKGNhbGxiYWNrKQogICAgIHsKLSAgICAgICAg
RE9NQWdlbnQucmVtb3ZlTm9kZSh0aGlzLmlkLCBjYWxsYmFjayk7CisgICAgICAgIERPTUFnZW50
LnJlbW92ZU5vZGUodGhpcy5pZCwgV2ViSW5zcGVjdG9yLmRvbUFnZW50Ll9tYXJrUmV2aXNpb24o
dGhpcywgY2FsbGJhY2spKTsKICAgICB9LAogCiAgICAgLyoqCkBAIC00ODAsNyArNDc5LDcgQEAg
V2ViSW5zcGVjdG9yLkRPTU5vZGUucHJvdG90eXBlID0gewogICAgICAqLwogICAgIG1vdmVUbzog
ZnVuY3Rpb24odGFyZ2V0Tm9kZSwgYW5jaG9yTm9kZSwgY2FsbGJhY2spCiAgICAgewotICAgICAg
ICBET01BZ2VudC5tb3ZlVG8odGhpcy5pZCwgdGFyZ2V0Tm9kZS5pZCwgYW5jaG9yTm9kZSA/IGFu
Y2hvck5vZGUuaWQgOiB1bmRlZmluZWQsIGNhbGxiYWNrKTsKKyAgICAgICAgRE9NQWdlbnQubW92
ZVRvKHRoaXMuaWQsIHRhcmdldE5vZGUuaWQsIGFuY2hvck5vZGUgPyBhbmNob3JOb2RlLmlkIDog
dW5kZWZpbmVkLCBXZWJJbnNwZWN0b3IuZG9tQWdlbnQuX21hcmtSZXZpc2lvbih0aGlzLCBjYWxs
YmFjaykpOwogICAgIH0sCiAKICAgICAvKioKQEAgLTUwMSw2ICs1MDAsOSBAQCBXZWJJbnNwZWN0
b3IuRE9NTm9kZS5wcm90b3R5cGUgPSB7CiBXZWJJbnNwZWN0b3IuRE9NRG9jdW1lbnQgPSBmdW5j
dGlvbihkb21BZ2VudCwgcGF5bG9hZCkKIHsKICAgICBXZWJJbnNwZWN0b3IuRE9NTm9kZS5jYWxs
KHRoaXMsIGRvbUFnZW50LCB0aGlzLCBwYXlsb2FkKTsKKyAgICB0aGlzLmRvY3VtZW50VVJMID0g
cGF5bG9hZC5kb2N1bWVudFVSTDsKKyAgICB0aGlzLnhtbFZlcnNpb24gPSBwYXlsb2FkLnhtbFZl
cnNpb247CisgICAgZG9tQWdlbnQuX2lkVG9ET01Ob2RlW3RoaXMuaWRdID0gdGhpczsKIAogICAg
IC8qKgogICAgICAqIEB0eXBlIHtzdHJpbmd9IERvY3VtZW50IG5vZGVzIGFsd2F5cyBoYXZlIGRv
Y3VtZW50VVJMCkBAIC01MTgsNiArNTIwLDcgQEAgV2ViSW5zcGVjdG9yLkRPTURvY3VtZW50LnBy
b3RvdHlwZS5fX3Byb3RvX18gPSBXZWJJbnNwZWN0b3IuRE9NTm9kZS5wcm90b3R5cGU7CiBXZWJJ
bnNwZWN0b3IuRE9NQWdlbnQgPSBmdW5jdGlvbigpIHsKICAgICAvKiogQHR5cGUge09iamVjdHx1
bmRlZmluZWR9ICovCiAgICAgdGhpcy5faWRUb0RPTU5vZGUgPSB7fTsKKyAgICB0aGlzLl9kb2N1
bWVudFVSTFRvRG9jdW1lbnQgPSB7fTsKICAgICB0aGlzLl9kb2N1bWVudCA9IG51bGw7CiAgICAg
dGhpcy5fYXR0cmlidXRlTG9hZE5vZGVJZHMgPSB7fTsKICAgICBJbnNwZWN0b3JCYWNrZW5kLnJl
Z2lzdGVyRE9NRGlzcGF0Y2hlcihuZXcgV2ViSW5zcGVjdG9yLkRPTURpc3BhdGNoZXIodGhpcykp
OwpAQCAtNzMzLDkgKzczNiwxMCBAQCBXZWJJbnNwZWN0b3IuRE9NQWdlbnQucHJvdG90eXBlID0g
ewogICAgIF9zZXREb2N1bWVudDogZnVuY3Rpb24ocGF5bG9hZCkKICAgICB7CiAgICAgICAgIHRo
aXMuX2lkVG9ET01Ob2RlID0ge307CisgICAgICAgIHRoaXMuX2RvY3VtZW50VVJMVG9Eb2N1bWVu
dCA9IHt9OwogICAgICAgICBpZiAocGF5bG9hZCAmJiAibm9kZUlkIiBpbiBwYXlsb2FkKSB7CiAg
ICAgICAgICAgICB0aGlzLl9kb2N1bWVudCA9IG5ldyBXZWJJbnNwZWN0b3IuRE9NRG9jdW1lbnQo
dGhpcywgcGF5bG9hZCk7Ci0gICAgICAgICAgICB0aGlzLl9pZFRvRE9NTm9kZVtwYXlsb2FkLm5v
ZGVJZF0gPSB0aGlzLl9kb2N1bWVudDsKKyAgICAgICAgICAgIHRoaXMuX2RvY3VtZW50VVJMVG9E
b2N1bWVudFt0aGlzLl9kb2N1bWVudC5kb2N1bWVudFVSTF0gPSB0aGlzLl9kb2N1bWVudDsKICAg
ICAgICAgICAgIGlmICh0aGlzLl9kb2N1bWVudC5jaGlsZHJlbikKICAgICAgICAgICAgICAgICB0
aGlzLl9iaW5kTm9kZXModGhpcy5fZG9jdW1lbnQuY2hpbGRyZW4pOwogICAgICAgICB9IGVsc2UK
QEAgLTk2OSw2ICs5NzMsNTYgQEAgV2ViSW5zcGVjdG9yLkRPTUFnZW50LnByb3RvdHlwZSA9IHsK
ICAgICAgICAgICAgIGhpZ2hsaWdodENvbmZpZy5tYXJnaW5Db2xvciA9IFdlYkluc3BlY3Rvci5D
b2xvci5QYWdlSGlnaGxpZ2h0Lk1hcmdpbi50b1Byb3RvY29sUkdCQSgpOwogCiAgICAgICAgIHJl
dHVybiBoaWdobGlnaHRDb25maWc7CisgICAgfSwKKworICAgIC8qKgorICAgICAqIEBwYXJhbSB7
V2ViSW5zcGVjdG9yLkRPTU5vZGV9IG5vZGUKKyAgICAgKiBAcGFyYW0ge2Z1bmN0aW9uKD9Qcm90
b2NvbC5FcnJvcik9fSBjYWxsYmFjaworICAgICAqIEByZXR1cm4ge2Z1bmN0aW9uKD9Qcm90b2Nv
bC5FcnJvcil9CisgICAgICovCisgICAgX21hcmtSZXZpc2lvbjogZnVuY3Rpb24obm9kZSwgY2Fs
bGJhY2spCisgICAgeworICAgICAgICBmdW5jdGlvbiB3cmFwcGVyRnVuY3Rpb24oZXJyb3IpCisg
ICAgICAgIHsKKyAgICAgICAgICAgIGlmIChjYWxsYmFjaykKKyAgICAgICAgICAgICAgICBjYWxs
YmFjayhlcnJvcik7CisgICAgICAgICAgICBpZiAoZXJyb3IgfHwgIVdlYkluc3BlY3Rvci5leHBl
cmltZW50c1NldHRpbmdzLmZyZWVGbG93RE9NRWRpdGluZy5pc0VuYWJsZWQoKSkKKyAgICAgICAg
ICAgICAgICByZXR1cm47CisgICAgICAgICAgICBpZiAodGhpcy5fY2FwdHVyZURPTVRpbWVyKQor
ICAgICAgICAgICAgICAgY2xlYXJUaW1lb3V0KHRoaXMuX2NhcHR1cmVET01UaW1lcik7CisgICAg
ICAgICAgICB0aGlzLl9jYXB0dXJlRE9NVGltZXIgPSBzZXRUaW1lb3V0KHRoaXMuX2NhcHR1cmVE
T00uYmluZCh0aGlzLCBub2RlKSwgNTAwKTsKKyAgICAgICAgfQorICAgICAgICByZXR1cm4gd3Jh
cHBlckZ1bmN0aW9uLmJpbmQodGhpcyk7CisgICAgfSwKKworICAgIC8qKgorICAgICAqIEBwYXJh
bSB7V2ViSW5zcGVjdG9yLkRPTU5vZGV9IG5vZGUKKyAgICAgKi8KKyAgICBfY2FwdHVyZURPTTog
ZnVuY3Rpb24obm9kZSkKKyAgICB7CisgICAgICAgIGRlbGV0ZSB0aGlzLl9jYXB0dXJlRE9NVGlt
ZXI7CisgICAgICAgIGlmICghbm9kZS5vd25lckRvY3VtZW50KQorICAgICAgICAgICAgcmV0dXJu
OworCisgICAgICAgIGZ1bmN0aW9uIGNhbGxiYWNrKGVycm9yLCB0ZXh0KQorICAgICAgICB7Cisg
ICAgICAgICAgICBpZiAoZXJyb3IpIHsKKyAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKGVy
cm9yKTsKKyAgICAgICAgICAgICAgICByZXR1cm47CisgICAgICAgICAgICB9CisKKyAgICAgICAg
ICAgIHZhciB1cmwgPSBub2RlLm93bmVyRG9jdW1lbnQuZG9jdW1lbnRVUkw7CisgICAgICAgICAg
ICBpZiAoIXVybCkKKyAgICAgICAgICAgICAgICByZXR1cm47CisKKyAgICAgICAgICAgIHZhciBy
ZXNvdXJjZSA9IFdlYkluc3BlY3Rvci5yZXNvdXJjZUZvclVSTCh1cmwpOworICAgICAgICAgICAg
aWYgKCFyZXNvdXJjZSkKKyAgICAgICAgICAgICAgICByZXR1cm47CisKKyAgICAgICAgICAgIHJl
c291cmNlLmFkZFJldmlzaW9uKHRleHQpOworICAgICAgICB9CisgICAgICAgIERPTUFnZW50Lmdl
dE91dGVySFRNTChub2RlLm93bmVyRG9jdW1lbnQuaWQsIGNhbGxiYWNrKTsKKyAgICAgICAgCiAg
ICAgfQogfQogCkBAIC0xMDgyLDcgKzExMzYsMzcgQEAgV2ViSW5zcGVjdG9yLkRPTU1vZGVsUmVz
b3VyY2VCaW5kaW5nID0gZnVuY3Rpb24oZG9tQWdlbnQpCiBXZWJJbnNwZWN0b3IuRE9NTW9kZWxS
ZXNvdXJjZUJpbmRpbmcucHJvdG90eXBlID0gewogICAgIHNldENvbnRlbnQ6IGZ1bmN0aW9uKHJl
c291cmNlLCBjb250ZW50LCBtYWpvckNoYW5nZSwgdXNlckNhbGxiYWNrKQogICAgIHsKLSAgICAg
ICAgRE9NQWdlbnQuc2V0T3V0ZXJIVE1MKDAsIGNvbnRlbnQsIHVzZXJDYWxsYmFjayk7CisgICAg
ICAgIGZ1bmN0aW9uIGNhbGxiYWNrV3JhcHBlcihlcnJvcikKKyAgICAgICAgeworICAgICAgICAg
ICAgaWYgKG1ham9yQ2hhbmdlKQorICAgICAgICAgICAgICAgIHJlc291cmNlLmFkZFJldmlzaW9u
KGNvbnRlbnQpOworICAgICAgICAgICAgaWYgKHVzZXJDYWxsYmFjaykKKyAgICAgICAgICAgICAg
ICB1c2VyQ2FsbGJhY2soZXJyb3IpOworICAgICAgICB9CisKKyAgICAgICAgZnVuY3Rpb24gc2V0
T3V0ZXJIVE1MKHJlcG9ydEVycm9yKQorICAgICAgICB7CisgICAgICAgICAgICB2YXIgZG9jID0g
dGhpcy5fZG9tQWdlbnQuX2RvY3VtZW50VVJMVG9Eb2N1bWVudFtyZXNvdXJjZS51cmxdOworICAg
ICAgICAgICAgaWYgKGRvYykgeworICAgICAgICAgICAgICAgIERPTUFnZW50LnNldE91dGVySFRN
TChkb2MuaWQsIGNvbnRlbnQsIGNhbGxiYWNrV3JhcHBlci5iaW5kKHRoaXMpKTsKKyAgICAgICAg
ICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGlmIChyZXBv
cnRFcnJvcikKKyAgICAgICAgICAgICAgICBjYWxsYmFjaygiTm8gZG9jdW1lbnQgd2l0aCBnaXZl
biBVUkwgZm91bmQiKTsKKyAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAgICAgfQorICAg
IAorICAgICAgICB0aGlzLl9kb21BZ2VudC5yZXF1ZXN0RG9jdW1lbnQod2l0aERvY3VtZW50LmJp
bmQodGhpcykpOworCisgICAgICAgIGZ1bmN0aW9uIHdpdGhEb2N1bWVudChkb2MpCisgICAgICAg
IHsKKyAgICAgICAgICAgIGlmIChzZXRPdXRlckhUTUwuY2FsbCh0aGlzLCBmYWxzZSkpCisgICAg
ICAgICAgICAgICAgcmV0dXJuOworCisgICAgICAgICAgICAvLyBXZSBhcmUgZWRpdGluZyBvbmUg
b2YgdGhlIGlmcmFtZXMsIGJ1dCBpdCBoYXMgbm90IHlldCBiZWVuIGxvYWRlZCBpbiB0aGUgRE9N
IHRyZWUuCisgICAgICAgICAgICAvLyBMb2FkIGFsbCBpZnJhbWUgbm9kZXMgaGVyZS4KKyAgICAg
ICAgICAgIERPTUFnZW50LnF1ZXJ5U2VsZWN0b3JBbGwoZG9jLmlkLCAiaWZyYW1lW3NyY10iLCBz
ZXRPdXRlckhUTUwuYmluZCh0aGlzLCB0cnVlKSk7CisgICAgICAgIH0KICAgICB9LAogCiAgICAg
Y2FuU2V0Q29udGVudDogZnVuY3Rpb24oKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL2Zyb250LWVuZC9FbGVtZW50c1RyZWVPdXRsaW5lLmpzIGIvU291cmNlL1dlYkNvcmUv
aW5zcGVjdG9yL2Zyb250LWVuZC9FbGVtZW50c1RyZWVPdXRsaW5lLmpzCmluZGV4IGJmMGViZGE0
YTc3YWEwMmNiMzU2N2ZjZTdjMTMxYzFkZjBiMTFmMmIuLjhjZTAxNGQyMzAwNjU3NmQ1YjAzMzNl
ODE0NDg1NDk1MzE4Yjk5NDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9m
cm9udC1lbmQvRWxlbWVudHNUcmVlT3V0bGluZS5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNw
ZWN0b3IvZnJvbnQtZW5kL0VsZW1lbnRzVHJlZU91dGxpbmUuanMKQEAgLTEzMjAsNyArMTMyMCwx
MCBAQCBXZWJJbnNwZWN0b3IuRWxlbWVudHNUcmVlRWxlbWVudC5wcm90b3R5cGUgPSB7CiAgICAg
ICAgICAgICB9CiAgICAgICAgIH0KIAotICAgICAgICB0aGlzLnJlcHJlc2VudGVkT2JqZWN0LnNl
dEF0dHJpYnV0ZShhdHRyaWJ1dGVOYW1lLCBuZXdUZXh0LCBtb3ZlVG9OZXh0QXR0cmlidXRlSWZO
ZWVkZWQuYmluZCh0aGlzKSk7CisgICAgICAgIGlmIChvbGRUZXh0ICE9PSBuZXdUZXh0KQorICAg
ICAgICAgICAgdGhpcy5yZXByZXNlbnRlZE9iamVjdC5zZXRBdHRyaWJ1dGUoYXR0cmlidXRlTmFt
ZSwgbmV3VGV4dCwgbW92ZVRvTmV4dEF0dHJpYnV0ZUlmTmVlZGVkLmJpbmQodGhpcykpOworICAg
ICAgICBlbHNlCisgICAgICAgICAgICBtb3ZlVG9OZXh0QXR0cmlidXRlSWZOZWVkZWQuY2FsbCh0
aGlzKTsKICAgICB9LAogCiAgICAgX3RhZ05hbWVFZGl0aW5nQ29tbWl0dGVkOiBmdW5jdGlvbihl
bGVtZW50LCBuZXdUZXh0LCBvbGRUZXh0LCB0YWdOYW1lLCBtb3ZlRGlyZWN0aW9uKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TZXR0aW5ncy5qcyBiL1Nv
dXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU2V0dGluZ3MuanMKaW5kZXggODE4MDUx
ODFmN2MyMzI2ZmU1NDFhMTM1ZTQ1MGU2ODE4Nzk0MTBhYi4uYmM0MjVlY2NmYmIzNjkyMTcxZDY3
NDUzYTU3NTc5Y2E1MmI2ZjA5NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L2Zyb250LWVuZC9TZXR0aW5ncy5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJv
bnQtZW5kL1NldHRpbmdzLmpzCkBAIC0xNjQsNiArMTY0LDcgQEAgV2ViSW5zcGVjdG9yLkV4cGVy
aW1lbnRzU2V0dGluZ3MgPSBmdW5jdGlvbigpCiB7CiAgICAgdGhpcy5fc2V0dGluZyA9IFdlYklu
c3BlY3Rvci5zZXR0aW5ncy5jcmVhdGVTZXR0aW5nKCJleHBlcmltZW50cyIsIHt9KTsKICAgICB0
aGlzLl9leHBlcmltZW50cyA9IFtdOworICAgIHRoaXMuX2VuYWJsZWRGb3JUZXN0ID0ge307CiAg
ICAgCiAgICAgLy8gQWRkIGN1cnJlbnRseSBydW5uaW5nIGV4cGVyaW1lbnRzIGhlcmUuCiAgICAg
Ly8gRklYTUU6IE1vdmUgb3V0IGZyb20gZXhwZXJpbWVudHMgb25jZSBuYXZpZ2F0b3IgaXMgcHJv
ZHVjdGlvbi1yZWFkeS4KQEAgLTIwOSw2ICsyMTAsOSBAQCBXZWJJbnNwZWN0b3IuRXhwZXJpbWVu
dHNTZXR0aW5ncy5wcm90b3R5cGUgPSB7CiAgICAgICovCiAgICAgaXNFbmFibGVkOiBmdW5jdGlv
bihleHBlcmltZW50TmFtZSkKICAgICB7CisgICAgICAgIGlmICh0aGlzLl9lbmFibGVkRm9yVGVz
dFtleHBlcmltZW50TmFtZV0pCisgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKKwogICAgICAgICBp
ZiAoIXRoaXMuZXhwZXJpbWVudHNFbmFibGVkKQogICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwog
ICAgICAgICAKQEAgLTIyNiw3ICsyMzAsMTUgQEAgV2ViSW5zcGVjdG9yLkV4cGVyaW1lbnRzU2V0
dGluZ3MucHJvdG90eXBlID0gewogICAgICAgICBleHBlcmltZW50c1NldHRpbmdbZXhwZXJpbWVu
dE5hbWVdID0gZW5hYmxlZDsKICAgICAgICAgdGhpcy5fc2V0dGluZy5zZXQoZXhwZXJpbWVudHNT
ZXR0aW5nKTsKICAgICB9LAotICAgIAorCisgICAgLyoqCisgICAgICogQHBhcmFtIHtzdHJpbmd9
IGV4cGVyaW1lbnROYW1lCisgICAgICovCisgICAgX2VuYWJsZUZvclRlc3Q6IGZ1bmN0aW9uKGV4
cGVyaW1lbnROYW1lKQorICAgIHsKKyAgICAgICAgdGhpcy5fZW5hYmxlZEZvclRlc3RbZXhwZXJp
bWVudE5hbWVdID0gdHJ1ZTsKKyAgICB9LAorCiAgICAgX2NsZWFuVXBTZXR0aW5nOiBmdW5jdGlv
bigpCiAgICAgewogICAgICAgICB2YXIgZXhwZXJpbWVudHNTZXR0aW5nID0gdGhpcy5fc2V0dGlu
Zy5nZXQoKTsKQEAgLTI4NCw2ICsyOTYsMTEgQEAgV2ViSW5zcGVjdG9yLkV4cGVyaW1lbnQucHJv
dG90eXBlID0gewogICAgIHNldEVuYWJsZWQ6IGZ1bmN0aW9uKGVuYWJsZWQpCiAgICAgewogICAg
ICAgICByZXR1cm4gdGhpcy5fZXhwZXJpbWVudHNTZXR0aW5ncy5zZXRFbmFibGVkKHRoaXMuX25h
bWUsIGVuYWJsZWQpOworICAgIH0sCisKKyAgICBlbmFibGVGb3JUZXN0OiBmdW5jdGlvbigpCisg
ICAgeworICAgICAgICB0aGlzLl9leHBlcmltZW50c1NldHRpbmdzLl9lbmFibGVGb3JUZXN0KHRo
aXMuX25hbWUpOwogICAgIH0KIH0KIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
IGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDBlYjc1Y2M1OWNiYjZiZmUxNmI5MTJlZGI3
OWVkOWM4YjM0MGViM2IuLmRmNTI5MTI1YzZkMzkyMWNjNTVlZTEyZDlkYThkNzViNDI2MzUxZjgg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAxMi0wMS0xNyAgUGF2ZWwgRmVsZG1hbiAgPHBmZWxk
bWFuQGdvb2dsZS5jb20+CisKKyAgICAgICAgV2ViIEluc3BlY3RvcjogdHJhY2sgSFRNTCByZXZp
c2lvbnMgd2hlbiBlZGl0aW5nIERPTSBhbmQgLyBvciB1cG9uIGZyZWUgZmxvdyBlZGl0cy4KKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTc2NDU3CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBpbnNwZWN0b3Iv
ZWxlbWVudHMvcmVzb3VyY2VzL3NldC1vdXRlci1odG1sLWJvZHktaWZyYW1lLmh0bWw6CisgICAg
ICAgICogaW5zcGVjdG9yL2VsZW1lbnRzL3NldC1odG1sLXZpYS1yZXNvdXJjZS1leHBlY3RlZC50
eHQ6IEFkZGVkLgorICAgICAgICAqIGluc3BlY3Rvci9lbGVtZW50cy9zZXQtaHRtbC12aWEtcmVz
b3VyY2UuaHRtbDogQWRkZWQuCisKIDIwMTItMDEtMTcgIEFsZXhhbmRlciBQYXZsb3YgIDxhcGF2
bG92QGNocm9taXVtLm9yZz4KIAogICAgICAgICBbQ2hyb21pdW1dIFVucmV2aWV3ZWQsIGZpeCBM
aW51eCBpbWFnZSBleHBlY3RhdGlvbnMgZm9yIHR3byBTVkcgdGVzdHMuCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbnNwZWN0b3IvZWxlbWVudHMvZWRpdC1kb20tYWN0aW9ucy1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZWxlbWVudHMvZWRpdC1kb20tYWN0aW9ucy1leHBl
Y3RlZC50eHQKaW5kZXggMGE1Yjg5MTBmYjhmMTIyZDZlZTk1NmI4NTAwZGYzZDM0ZDJlNTk5OC4u
M2U4ZThmNzBlN2Y2YTQ0OGI1Nzk4NmRhZDVmZGRiYmFlNmQxODNkYiAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvaW5zcGVjdG9yL2VsZW1lbnRzL2VkaXQtZG9tLWFjdGlvbnMtZXhwZWN0ZWQudHh0
CisrKyBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9lbGVtZW50cy9lZGl0LWRvbS1hY3Rpb25zLWV4
cGVjdGVkLnR4dApAQCAtMjMsNyArMjMsNyBAQCBSdW5uaW5nOiB0ZXN0U2V0Tm9kZU5hbWUKICAg
PC9kaXY+CiA9PT09IGFmdGVyID09PT0KIC0gPGRpdiBpZD0idGVzdFNldE5vZGVOYW1lIj4KLSAg
ICAgIDxzcGFuIGlkPSJub2RlLXRvLXNldC1uYW1lIiA+PC9zcGFuPgorICAgICAgPHNwYW4gaWQ9
Im5vZGUtdG8tc2V0LW5hbWUiPjwvc3Bhbj4KICAgPC9kaXY+CiAKIFJ1bm5pbmc6IHRlc3RTZXRO
b2RlTmFtZUlucHV0CkBAIC0zMyw3ICszMyw3IEBAIFJ1bm5pbmc6IHRlc3RTZXROb2RlTmFtZUlu
cHV0CiAgIDwvZGl2PgogPT09PSBhZnRlciA9PT09CiAtIDxkaXYgaWQ9InRlc3RTZXROb2RlTmFt
ZUlucHV0Ij4KLSAgICAgIDxpbnB1dCBpZD0ibm9kZS10by1zZXQtbmFtZS1pbnB1dCIgPgorICAg
ICAgPGlucHV0IGlkPSJub2RlLXRvLXNldC1uYW1lLWlucHV0Ij4KICAgPC9kaXY+CiAKIFJ1bm5p
bmc6IHRlc3RTZXROb2RlVmFsdWUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9l
bGVtZW50cy9zZXQtaHRtbC12aWEtcmVzb3VyY2UtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aW5zcGVjdG9yL2VsZW1lbnRzL3NldC1odG1sLXZpYS1yZXNvdXJjZS1leHBlY3RlZC50eHQKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uMGQwMGJmZWRmY2M5YjYzNjg3ZTVkOTlkYTA1M2Y2ZWRkNGQyYWI3ZgotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9lbGVtZW50cy9zZXQtaHRtbC12aWEt
cmVzb3VyY2UtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNSBAQAorVGVzdHMgdGhhdCB0aGUgRE9N
IGNvbnRlbnQgY2FuIGJlIHNldCB2aWEgZWRpdGluZyByZXNvdXJjZSBjb250ZW50LgorCisKKzxo
dG1sPjxoZWFkPjwvaGVhZD48Ym9keT5OZXcgaWZyYW1lIGNvbnRlbnQ8L2JvZHk+PC9odG1sPgor
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZWxlbWVudHMvc2V0LWh0bWwtdmlh
LXJlc291cmNlLmh0bWwgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZWxlbWVudHMvc2V0LWh0bWwt
dmlhLXJlc291cmNlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYjYzMmU3ZDc0NjcyYjM4NjcyZmI3ZGMyYjNm
Mzg3OTgyMDFmZTRkMgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9l
bGVtZW50cy9zZXQtaHRtbC12aWEtcmVzb3VyY2UuaHRtbApAQCAtMCwwICsxLDUxIEBACis8aHRt
bD4KKzxoZWFkPgorCis8c2NyaXB0IHNyYz0iLi4vLi4vaHR0cC90ZXN0cy9pbnNwZWN0b3IvaW5z
cGVjdG9yLXRlc3QuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uL2h0dHAvdGVzdHMv
aW5zcGVjdG9yL2VsZW1lbnRzLXRlc3QuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4u
L2h0dHAvdGVzdHMvaW5zcGVjdG9yL3Jlc291cmNlcy10ZXN0LmpzIj48L3NjcmlwdD4KKworPHNj
cmlwdD4KKworZnVuY3Rpb24gdGVzdCgpCit7CisgICAgV2ViSW5zcGVjdG9yLmV4cGVyaW1lbnRz
U2V0dGluZ3MuZnJlZUZsb3dET01FZGl0aW5nLmVuYWJsZUZvclRlc3QoKTsKKyAgICBuZXcgV2Vi
SW5zcGVjdG9yLkRPTU1vZGVsUmVzb3VyY2VCaW5kaW5nKFdlYkluc3BlY3Rvci5kb21BZ2VudCk7
CisKKyAgICBJbnNwZWN0b3JUZXN0LnJ1bkFmdGVyUmVzb3VyY2VzQXJlRmluaXNoZWQoWyJzZXQt
aHRtbC12aWEtcmVzb3VyY2UuaHRtbCIsICJzZXQtaHRtbC12aWEtcmVzb3VyY2UtaWZyYW1lLmh0
bWwiXSwgc3RlcDEpOworCisgICAgZnVuY3Rpb24gc3RlcDEoKQorICAgIHsKKyAgICAgICAgV2Vi
SW5zcGVjdG9yLnJlc291cmNlVHJlZU1vZGVsLmZvckFsbFJlc291cmNlcyhmb3JtYXR0ZXIpOwor
CisgICAgICAgIGZ1bmN0aW9uIGZvcm1hdHRlcihyZXNvdXJjZSkKKyAgICAgICAgeworICAgICAg
ICAgICAgaWYgKHJlc291cmNlLnVybC5pbmRleE9mKCJzZXQtaHRtbC12aWEtcmVzb3VyY2UtaWZy
YW1lLmh0bWwiKSAhPT0gLTEpCisgICAgICAgICAgICAgICAgcmVzb3VyY2Uuc2V0Q29udGVudCgi
PGJvZHk+TmV3IGlmcmFtZSBjb250ZW50PC9ib2R5PiIsIGZhbHNlLCBzdGVwMi5iaW5kKHRoaXMs
IHJlc291cmNlLnVybCkpOworICAgICAgICB9CisgICAgfQorCisgICAgZnVuY3Rpb24gc3RlcDIo
dXJsKQorICAgIHsKKyAgICAgICAgdmFyIGRvYyA9IFdlYkluc3BlY3Rvci5kb21BZ2VudC5fZG9j
dW1lbnRVUkxUb0RvY3VtZW50W3VybF07CisgICAgICAgIERPTUFnZW50LmdldE91dGVySFRNTChk
b2MuaWQsIHN0ZXAzKTsKKyAgICB9CisKKyAgICBmdW5jdGlvbiBzdGVwMyhlcnJvciwgdGV4dCkK
KyAgICB7CisgICAgICAgIEluc3BlY3RvclRlc3QuYWRkUmVzdWx0KHRleHQpOworICAgICAgICBJ
bnNwZWN0b3JUZXN0LmNvbXBsZXRlVGVzdCgpOworICAgIH0KK30KKzwvc2NyaXB0PgorPC9oZWFk
PgorCis8Ym9keT4KKzxwPgorVGVzdHMgdGhhdCB0aGUgRE9NIGNvbnRlbnQgY2FuIGJlIHNldCB2
aWEgZWRpdGluZyByZXNvdXJjZSBjb250ZW50LgorPC9wPgorCis8aWZyYW1lIHNyYz0icmVzb3Vy
Y2VzL3NldC1odG1sLXZpYS1yZXNvdXJjZS1pZnJhbWUuaHRtbCIgb25sb2FkPSJydW5UZXN0KCki
PjwvaWZyYW1lPgorCis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bnNwZWN0b3IvZWxlbWVudHMvc2V0LW91dGVyLWh0bWwtdGVzdC5qcyBiL0xheW91dFRlc3RzL2lu
c3BlY3Rvci9lbGVtZW50cy9zZXQtb3V0ZXItaHRtbC10ZXN0LmpzCmluZGV4IDM4ZmYxYzc1ZGJh
ODgzYzZmZTJjNjk4OTNhMWNmODlmMWNjMTJhZTQuLmJiM2UzNWZmYmVlZjNkNmU2MDNkNjM0ODdj
ZDY0NWRhZDA3NjZiMjYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9lbGVtZW50
cy9zZXQtb3V0ZXItaHRtbC10ZXN0LmpzCisrKyBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9lbGVt
ZW50cy9zZXQtb3V0ZXItaHRtbC10ZXN0LmpzCkBAIC0xLDYgKzEsNyBAQAogdmFyIGluaXRpYWxp
emVfU2V0T3V0ZXJIVE1MVGVzdCA9IGZ1bmN0aW9uKCkgewogCiBJbnNwZWN0b3JUZXN0LmV2ZW50
cyA9IFtdOworSW5zcGVjdG9yVGVzdC5jb250YWluZXJJZDsKIAogSW5zcGVjdG9yVGVzdC5zZXRV
cFRlc3RTdWl0ZSA9IGZ1bmN0aW9uKG5leHQpCiB7CkBAIC0zMiw2ICszMyw4IEBAIEluc3BlY3Rv
clRlc3Quc2V0VXBUZXN0U3VpdGUgPSBmdW5jdGlvbihuZXh0KQogCiBJbnNwZWN0b3JUZXN0LnJl
Y29yZEV2ZW50ID0gZnVuY3Rpb24oZXZlbnROYW1lLCBldmVudCkKIHsKKyAgICBpZiAoIUluc3Bl
Y3RvclRlc3QuX2NhcHR1cmVET01FdmVudHMpCisgICAgICAgIHJldHVybjsKICAgICB2YXIgbm9k
ZSA9IGV2ZW50LmRhdGEubm9kZSB8fCBldmVudC5kYXRhOwogICAgIEluc3BlY3RvclRlc3QuZXZl
bnRzLnB1c2goIkV2ZW50ICIgKyBldmVudE5hbWUgKyAiOiAiICsgbm9kZS5ub2RlTmFtZSgpKTsK
IH0KQEAgLTU1LDEwICs1OCwxMiBAQCBJbnNwZWN0b3JUZXN0LnNldE91dGVySFRNTCA9IGZ1bmN0
aW9uKG5ld1RleHQsIG5leHQpCiAKIEluc3BlY3RvclRlc3QuaW5uZXJTZXRPdXRlckhUTUwgPSBm
dW5jdGlvbihuZXdUZXh0LCBsYXN0LCBuZXh0KQogeworICAgIEluc3BlY3RvclRlc3QuX2NhcHR1
cmVET01FdmVudHMgPSB0cnVlOwogICAgIERPTUFnZW50LnNldE91dGVySFRNTChJbnNwZWN0b3JU
ZXN0LmNvbnRhaW5lcklkLCBuZXdUZXh0LCBkdW1wT3V0ZXJIVE1MKTsKIAogICAgIGZ1bmN0aW9u
IGR1bXBPdXRlckhUTUwoKQogICAgIHsKKyAgICAgICAgSW5zcGVjdG9yVGVzdC5fY2FwdHVyZURP
TUV2ZW50cyA9IGZhbHNlOwogICAgICAgICBSdW50aW1lQWdlbnQuZXZhbHVhdGUoImRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKFwiaWRlbnRpdHlcIikud3JhcHBlcklkZW50aXR5IiwgZHVtcElkZW50
aXR5KTsKICAgICAgICAgZnVuY3Rpb24gZHVtcElkZW50aXR5KGVycm9yLCByZXN1bHQpCiAgICAg
ICAgIHsK
</data>

          </attachment>
      

    </bug>

</bugzilla>