<?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>123525</bug_id>
          
          <creation_ts>2013-10-30 13:32:32 -0700</creation_ts>
          <short_desc>Web Inspector: Remove InspectorAgent::restore functionality</short_desc>
          <delta_ts>2013-10-30 15:15:43 -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</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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Joseph Pecoraro">joepeck</reporter>
          <assigned_to name="Joseph Pecoraro">joepeck</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>graouts</cc>
    
    <cc>joepeck</cc>
    
    <cc>timothy</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>945155</commentid>
    <comment_count>0</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2013-10-30 13:32:32 -0700</bug_when>
    <thetext>No WebKit ports use / exercise  reconnect/restore functionality (InspectorController::reconnectFrontend and Inspector*Agent::restore).

We should remove this, and then also the InspectorState / cookie information saved for restoring.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>945156</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2013-10-30 13:33:14 -0700</bug_when>
    <thetext>&lt;rdar://problem/15355094&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>945159</commentid>
    <comment_count>2</comment_count>
      <attachid>215557</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2013-10-30 13:33:33 -0700</bug_when>
    <thetext>Created attachment 215557
[PATCH] Proposed Fix</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>945176</commentid>
    <comment_count>3</comment_count>
      <attachid>215557</attachid>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2013-10-30 14:02:34 -0700</bug_when>
    <thetext>Comment on attachment 215557
[PATCH] Proposed Fix

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

&gt; Source/WebCore/inspector/InspectorController.cpp:-291
&gt; -    m_state-&gt;loadFromCookie(inspectorStateCookie);

I think you can remove m_state and friends too.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>945191</commentid>
    <comment_count>4</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2013-10-30 14:50:23 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; (From update of attachment 215557 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=215557&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/inspector/InspectorController.cpp:-291
&gt; &gt; -    m_state-&gt;loadFromCookie(inspectorStateCookie);
&gt; 
&gt; I think you can remove m_state and friends too.

Yep, I am in the process of removing it. That is far more involved so I wanted to make the patches separate.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>945198</commentid>
    <comment_count>5</comment_count>
      <attachid>215557</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-10-30 15:15:41 -0700</bug_when>
    <thetext>Comment on attachment 215557
[PATCH] Proposed Fix

Clearing flags on attachment: 215557

Committed r158320: &lt;http://trac.webkit.org/changeset/158320&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>945199</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-10-30 15:15:43 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>215557</attachid>
            <date>2013-10-30 13:33:33 -0700</date>
            <delta_ts>2013-10-30 15:15:41 -0700</delta_ts>
            <desc>[PATCH] Proposed Fix</desc>
            <filename>rm6.patch</filename>
            <type>text/plain</type>
            <size>27383</size>
            <attacher name="Joseph Pecoraro">joepeck</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBlNGU5NjVkLi5hMDQ3YzM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTEg
QEAKKzIwMTMtMTAtMzAgIEpvc2VwaCBQZWNvcmFybyAgPHBlY29yYXJvQGFwcGxlLmNvbT4KKwor
ICAgICAgICBXZWIgSW5zcGVjdG9yOiBSZW1vdmUgSW5zcGVjdG9yQWdlbnQ6OnJlc3RvcmUgZnVu
Y3Rpb25hbGl0eQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTIzNTI1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgUmVtb3ZlIHVudXNlZCBJbnNwZWN0b3JBZ2VudCByZXN0b3JlIGZ1bmN0aW9uYWxpdHkuCisK
KyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50LmNwcDoK
KyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50Lmg6Cisg
ICAgICAgICogaW5zcGVjdG9yL0luc3BlY3RvckJhc2VBZ2VudC5jcHA6CisgICAgICAgICogaW5z
cGVjdG9yL0luc3BlY3RvckJhc2VBZ2VudC5oOgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0
b3JDU1NBZ2VudC5jcHA6CisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3RvckNTU0FnZW50Lmg6
CisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3RvckNhbnZhc0FnZW50LmNwcDoKKyAgICAgICAg
KiBpbnNwZWN0b3IvSW5zcGVjdG9yQ2FudmFzQWdlbnQuaDoKKyAgICAgICAgKiBpbnNwZWN0b3Iv
SW5zcGVjdG9yQ29uc29sZUFnZW50LmNwcDoKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9y
Q29uc29sZUFnZW50Lmg6CisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3RvckNvbnRyb2xsZXIu
Y3BwOgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JDb250cm9sbGVyLmg6CisgICAgICAg
ICogaW5zcGVjdG9yL0luc3BlY3RvckRPTUFnZW50LmNwcDoKKyAgICAgICAgKiBpbnNwZWN0b3Iv
SW5zcGVjdG9yRE9NQWdlbnQuaDoKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9yRGF0YWJh
c2VBZ2VudC5jcHA6CisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3RvckRhdGFiYXNlQWdlbnQu
aDoKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9yRGVidWdnZXJBZ2VudC5jcHA6CisgICAg
ICAgICogaW5zcGVjdG9yL0luc3BlY3RvckRlYnVnZ2VyQWdlbnQuaDoKKyAgICAgICAgKiBpbnNw
ZWN0b3IvSW5zcGVjdG9ySGVhcFByb2ZpbGVyQWdlbnQuY3BwOgorICAgICAgICAqIGluc3BlY3Rv
ci9JbnNwZWN0b3JIZWFwUHJvZmlsZXJBZ2VudC5oOgorICAgICAgICAqIGluc3BlY3Rvci9JbnNw
ZWN0b3JJbmRleGVkREJBZ2VudC5jcHA6CisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3Rvcklu
ZGV4ZWREQkFnZW50Lmg6CisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3RvckxheWVyVHJlZUFn
ZW50LmNwcDoKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9yTGF5ZXJUcmVlQWdlbnQuaDoK
KyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9yUGFnZUFnZW50LmNwcDoKKyAgICAgICAgKiBp
bnNwZWN0b3IvSW5zcGVjdG9yUGFnZUFnZW50Lmg6CisgICAgICAgICogaW5zcGVjdG9yL0luc3Bl
Y3RvclByb2ZpbGVyQWdlbnQuY3BwOgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JQcm9m
aWxlckFnZW50Lmg6CisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3RvclJlc291cmNlQWdlbnQu
Y3BwOgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JSZXNvdXJjZUFnZW50Lmg6CisgICAg
ICAgICogaW5zcGVjdG9yL0luc3BlY3RvclRpbWVsaW5lQWdlbnQuY3BwOgorICAgICAgICAqIGlu
c3BlY3Rvci9JbnNwZWN0b3JUaW1lbGluZUFnZW50Lmg6CisgICAgICAgICogaW5zcGVjdG9yL0lu
c3BlY3RvcldvcmtlckFnZW50LmNwcDoKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9yV29y
a2VyQWdlbnQuaDoKKyAgICAgICAgKiBpbnNwZWN0b3IvUGFnZVJ1bnRpbWVBZ2VudC5jcHA6Cisg
ICAgICAgICogaW5zcGVjdG9yL1BhZ2VSdW50aW1lQWdlbnQuaDoKKyAgICAgICAgKiBpbnNwZWN0
b3IvV29ya2VySW5zcGVjdG9yQ29udHJvbGxlci5jcHA6CisgICAgICAgICogaW5zcGVjdG9yL1dv
cmtlckluc3BlY3RvckNvbnRyb2xsZXIuaDoKKwogMjAxMy0xMC0zMCAgQW50dGkgS29pdmlzdG8g
IDxhbnR0aUBhcHBsZS5jb20+CiAKICAgICAgICAgVW5icmVhayB0aGUgcmVsZWFzZSBidWlsZC4K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBcHBsaWNhdGlv
bkNhY2hlQWdlbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckFwcGxp
Y2F0aW9uQ2FjaGVBZ2VudC5jcHAKaW5kZXggNzIwOGZlMC4uZDdlOWRlOSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudC5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckFwcGxpY2F0aW9uQ2Fj
aGVBZ2VudC5jcHAKQEAgLTY3LDE0ICs2Nyw2IEBAIHZvaWQgSW5zcGVjdG9yQXBwbGljYXRpb25D
YWNoZUFnZW50OjpjbGVhckZyb250ZW5kKCkKICAgICBtX2Zyb250ZW5kID0gMDsKIH0KIAotdm9p
ZCBJbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQ6OnJlc3RvcmUoKQotewotICAgIGlmICht
X3N0YXRlLT5nZXRCb29sZWFuKEFwcGxpY2F0aW9uQ2FjaGVBZ2VudFN0YXRlOjphcHBsaWNhdGlv
bkNhY2hlQWdlbnRFbmFibGVkKSkgewotICAgICAgICBFcnJvclN0cmluZyBlcnJvcjsKLSAgICAg
ICAgZW5hYmxlKCZlcnJvcik7Ci0gICAgfQotfQotCiB2b2lkIEluc3BlY3RvckFwcGxpY2F0aW9u
Q2FjaGVBZ2VudDo6ZW5hYmxlKEVycm9yU3RyaW5nKikKIHsKICAgICBtX3N0YXRlLT5zZXRCb29s
ZWFuKEFwcGxpY2F0aW9uQ2FjaGVBZ2VudFN0YXRlOjphcHBsaWNhdGlvbkNhY2hlQWdlbnRFbmFi
bGVkLCB0cnVlKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0
b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNw
ZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQuaAppbmRleCBiMDU4OWNiLi5jNmYyMzlkIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQXBwbGljYXRpb25DYWNo
ZUFnZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckFwcGxpY2F0
aW9uQ2FjaGVBZ2VudC5oCkBAIC02MSw3ICs2MSw2IEBAIHB1YmxpYzoKICAgICAvLyBJbnNwZWN0
b3JCYXNlQWdlbnQKICAgICB2aXJ0dWFsIHZvaWQgc2V0RnJvbnRlbmQoSW5zcGVjdG9yRnJvbnRl
bmQqKTsKICAgICB2aXJ0dWFsIHZvaWQgY2xlYXJGcm9udGVuZCgpOwotICAgIHZpcnR1YWwgdm9p
ZCByZXN0b3JlKCk7CiAKICAgICAvLyBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb24gQVBJCiAgICAg
dm9pZCB1cGRhdGVBcHBsaWNhdGlvbkNhY2hlU3RhdHVzKEZyYW1lKik7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQmFzZUFnZW50LmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JCYXNlQWdlbnQuY3BwCmluZGV4IGE0MGE4YTkuLjJh
MTY4OGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JCYXNl
QWdlbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JCYXNlQWdl
bnQuY3BwCkBAIC02NiwxMiArNjYsNiBAQCB2b2lkIEluc3BlY3RvckFnZW50UmVnaXN0cnk6OmNs
ZWFyRnJvbnRlbmQoKQogICAgICAgICBtX2FnZW50c1tpXS0+Y2xlYXJGcm9udGVuZCgpOwogfQog
Ci12b2lkIEluc3BlY3RvckFnZW50UmVnaXN0cnk6OnJlc3RvcmUoKQotewotICAgIGZvciAoc2l6
ZV90IGkgPSAwOyBpIDwgbV9hZ2VudHMuc2l6ZSgpOyBpKyspCi0gICAgICAgIG1fYWdlbnRzW2ld
LT5yZXN0b3JlKCk7Ci19Ci0KIHZvaWQgSW5zcGVjdG9yQWdlbnRSZWdpc3RyeTo6cmVnaXN0ZXJJ
bkRpc3BhdGNoZXIoSW5zcGVjdG9yQmFja2VuZERpc3BhdGNoZXIqIGRpc3BhdGNoZXIpCiB7CiAg
ICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBtX2FnZW50cy5zaXplKCk7IGkrKykKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JCYXNlQWdlbnQuaCBiL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JCYXNlQWdlbnQuaAppbmRleCA2NmYzOWQ2Li5k
NTBmZjkxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQmFz
ZUFnZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckJhc2VBZ2Vu
dC5oCkBAIC01MSw3ICs1MSw2IEBAIHB1YmxpYzoKIAogICAgIHZpcnR1YWwgdm9pZCBzZXRGcm9u
dGVuZChJbnNwZWN0b3JGcm9udGVuZCopIHsgfQogICAgIHZpcnR1YWwgdm9pZCBjbGVhckZyb250
ZW5kKCkgeyB9Ci0gICAgdmlydHVhbCB2b2lkIHJlc3RvcmUoKSB7IH0KICAgICB2aXJ0dWFsIHZv
aWQgcmVnaXN0ZXJJbkRpc3BhdGNoZXIoSW5zcGVjdG9yQmFja2VuZERpc3BhdGNoZXIqKSA9IDA7
CiAgICAgdmlydHVhbCB2b2lkIGRpc2NhcmRBZ2VudCgpIHsgfQogCkBAIC03MSw3ICs3MCw2IEBA
IHB1YmxpYzoKIAogICAgIHZvaWQgc2V0RnJvbnRlbmQoSW5zcGVjdG9yRnJvbnRlbmQqKTsKICAg
ICB2b2lkIGNsZWFyRnJvbnRlbmQoKTsKLSAgICB2b2lkIHJlc3RvcmUoKTsKICAgICB2b2lkIHJl
Z2lzdGVySW5EaXNwYXRjaGVyKEluc3BlY3RvckJhY2tlbmREaXNwYXRjaGVyKik7CiAgICAgdm9p
ZCBkaXNjYXJkQWdlbnRzKCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rv
ci9JbnNwZWN0b3JDU1NBZ2VudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVj
dG9yQ1NTQWdlbnQuY3BwCmluZGV4IDk4OGMzYzQuLjVmYjNhNDAgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JDU1NBZ2VudC5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckNTU0FnZW50LmNwcApAQCAtNjU3LDE4ICs2NTcsNiBA
QCB2b2lkIEluc3BlY3RvckNTU0FnZW50OjpkaXNjYXJkQWdlbnQoKQogICAgIG1fZG9tQWdlbnQg
PSAwOwogfQogCi12b2lkIEluc3BlY3RvckNTU0FnZW50OjpyZXN0b3JlKCkKLXsKLSAgICBpZiAo
bV9zdGF0ZS0+Z2V0Qm9vbGVhbihDU1NBZ2VudFN0YXRlOjpjc3NBZ2VudEVuYWJsZWQpKSB7Ci0g
ICAgICAgIEVycm9yU3RyaW5nIGVycm9yOwotICAgICAgICBlbmFibGUoJmVycm9yKTsKLSAgICB9
Ci0gICAgaWYgKG1fc3RhdGUtPmdldEJvb2xlYW4oQ1NTQWdlbnRTdGF0ZTo6aXNTZWxlY3RvclBy
b2ZpbGluZykpIHsKLSAgICAgICAgU3RyaW5nIGVycm9yU3RyaW5nOwotICAgICAgICBzdGFydFNl
bGVjdG9yUHJvZmlsZXIoJmVycm9yU3RyaW5nKTsKLSAgICB9Ci19Ci0KIHZvaWQgSW5zcGVjdG9y
Q1NTQWdlbnQ6OnJlc2V0KCkKIHsKICAgICBtX2lkVG9JbnNwZWN0b3JTdHlsZVNoZWV0LmNsZWFy
KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ1NTQWdl
bnQuaCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JDU1NBZ2VudC5oCmluZGV4
IDMyOTU2NDQuLmEyYjVmZmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9J
bnNwZWN0b3JDU1NBZ2VudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0
b3JDU1NBZ2VudC5oCkBAIC05OSw3ICs5OSw2IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQg
c2V0RnJvbnRlbmQoSW5zcGVjdG9yRnJvbnRlbmQqKTsKICAgICB2aXJ0dWFsIHZvaWQgY2xlYXJG
cm9udGVuZCgpOwogICAgIHZpcnR1YWwgdm9pZCBkaXNjYXJkQWdlbnQoKTsKLSAgICB2aXJ0dWFs
IHZvaWQgcmVzdG9yZSgpOwogICAgIHZpcnR1YWwgdm9pZCBlbmFibGUoRXJyb3JTdHJpbmcqKTsK
ICAgICB2aXJ0dWFsIHZvaWQgZGlzYWJsZShFcnJvclN0cmluZyopOwogICAgIHZvaWQgcmVzZXQo
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JDYW52YXNB
Z2VudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ2FudmFzQWdlbnQu
Y3BwCmluZGV4IDJlNWViYjkuLjIxZjE0ZDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2lu
c3BlY3Rvci9JbnNwZWN0b3JDYW52YXNBZ2VudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL0luc3BlY3RvckNhbnZhc0FnZW50LmNwcApAQCAtOTEsMTQgKzkxLDYgQEAgdm9pZCBJ
bnNwZWN0b3JDYW52YXNBZ2VudDo6Y2xlYXJGcm9udGVuZCgpCiAgICAgZGlzYWJsZSgwKTsKIH0K
IAotdm9pZCBJbnNwZWN0b3JDYW52YXNBZ2VudDo6cmVzdG9yZSgpCi17Ci0gICAgaWYgKG1fc3Rh
dGUtPmdldEJvb2xlYW4oQ2FudmFzQWdlbnRTdGF0ZTo6Y2FudmFzQWdlbnRFbmFibGVkKSkgewot
ICAgICAgICBFcnJvclN0cmluZyBlcnJvcjsKLSAgICAgICAgZW5hYmxlKCZlcnJvcik7Ci0gICAg
fQotfQotCiB2b2lkIEluc3BlY3RvckNhbnZhc0FnZW50OjplbmFibGUoRXJyb3JTdHJpbmcqKQog
ewogICAgIGlmIChtX2VuYWJsZWQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0
b3IvSW5zcGVjdG9yQ2FudmFzQWdlbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNw
ZWN0b3JDYW52YXNBZ2VudC5oCmluZGV4IDUxZTZkZWUuLmFlMzAzMWIgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JDYW52YXNBZ2VudC5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JDYW52YXNBZ2VudC5oCkBAIC02NCw3ICs2NCw2
IEBAIHB1YmxpYzoKIAogICAgIHZpcnR1YWwgdm9pZCBzZXRGcm9udGVuZChJbnNwZWN0b3JGcm9u
dGVuZCopOwogICAgIHZpcnR1YWwgdm9pZCBjbGVhckZyb250ZW5kKCk7Ci0gICAgdmlydHVhbCB2
b2lkIHJlc3RvcmUoKTsKIAogICAgIHZvaWQgZnJhbWVOYXZpZ2F0ZWQoRnJhbWUqKTsKICAgICB2
b2lkIGZyYW1lRGV0YWNoZWQoRnJhbWUqKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2lu
c3BlY3Rvci9JbnNwZWN0b3JDb25zb2xlQWdlbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL0luc3BlY3RvckNvbnNvbGVBZ2VudC5jcHAKaW5kZXggNWZmZDljZC4uOTYzYzA3NSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckNvbnNvbGVBZ2VudC5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckNvbnNvbGVBZ2VudC5j
cHAKQEAgLTEzMSwxNSArMTMxLDYgQEAgdm9pZCBJbnNwZWN0b3JDb25zb2xlQWdlbnQ6OnJlc2V0
KCkKICAgICBtX2NvdW50cy5jbGVhcigpOwogfQogCi12b2lkIEluc3BlY3RvckNvbnNvbGVBZ2Vu
dDo6cmVzdG9yZSgpCi17Ci0gICAgaWYgKG1fc3RhdGUtPmdldEJvb2xlYW4oQ29uc29sZUFnZW50
U3RhdGU6OmNvbnNvbGVNZXNzYWdlc0VuYWJsZWQpKSB7Ci0gICAgICAgIG1fZnJvbnRlbmQtPm1l
c3NhZ2VzQ2xlYXJlZCgpOwotICAgICAgICBFcnJvclN0cmluZyBlcnJvcjsKLSAgICAgICAgZW5h
YmxlKCZlcnJvcik7Ci0gICAgfQotfQotCiB2b2lkIEluc3BlY3RvckNvbnNvbGVBZ2VudDo6c2V0
RnJvbnRlbmQoSW5zcGVjdG9yRnJvbnRlbmQqIGZyb250ZW5kKQogewogICAgIG1fZnJvbnRlbmQg
PSBmcm9udGVuZC0+Y29uc29sZSgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL0luc3BlY3RvckNvbnNvbGVBZ2VudC5oIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0lu
c3BlY3RvckNvbnNvbGVBZ2VudC5oCmluZGV4IGI0Mjg1YTEuLjM4Y2RmZWQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JDb25zb2xlQWdlbnQuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ29uc29sZUFnZW50LmgKQEAgLTY4LDcg
KzY4LDYgQEAgcHVibGljOgogCiAgICAgdmlydHVhbCB2b2lkIHNldEZyb250ZW5kKEluc3BlY3Rv
ckZyb250ZW5kKik7CiAgICAgdmlydHVhbCB2b2lkIGNsZWFyRnJvbnRlbmQoKTsKLSAgICB2aXJ0
dWFsIHZvaWQgcmVzdG9yZSgpOwogCiAgICAgdm9pZCBhZGRNZXNzYWdlVG9Db25zb2xlKE1lc3Nh
Z2VTb3VyY2UsIE1lc3NhZ2VUeXBlLCBNZXNzYWdlTGV2ZWwsIGNvbnN0IFN0cmluZyYgbWVzc2Fn
ZSwgSlNDOjpFeGVjU3RhdGUqLCBQYXNzUmVmUHRyPFNjcmlwdEFyZ3VtZW50cz4sIHVuc2lnbmVk
IGxvbmcgcmVxdWVzdElkZW50aWZpZXIgPSAwKTsKICAgICB2b2lkIGFkZE1lc3NhZ2VUb0NvbnNv
bGUoTWVzc2FnZVNvdXJjZSwgTWVzc2FnZVR5cGUsIE1lc3NhZ2VMZXZlbCwgY29uc3QgU3RyaW5n
JiBtZXNzYWdlLCBjb25zdCBTdHJpbmcmIHNjcmlwdElkLCB1bnNpZ25lZCBsaW5lTnVtYmVyLCB1
bnNpZ25lZCBjb2x1bW5OdW1iZXIsIEpTQzo6RXhlY1N0YXRlKiA9IDAsIHVuc2lnbmVkIGxvbmcg
cmVxdWVzdElkZW50aWZpZXIgPSAwKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3Bl
Y3Rvci9JbnNwZWN0b3JDb250cm9sbGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9J
bnNwZWN0b3JDb250cm9sbGVyLmNwcAppbmRleCAwMDY2MTM5Li40NDZjYWM1IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ29udHJvbGxlci5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckNvbnRyb2xsZXIuY3BwCkBAIC0yODQs
MTQgKzI4NCw2IEBAIHZvaWQgSW5zcGVjdG9yQ29udHJvbGxlcjo6Y2xvc2UoKQogICAgIG1faW5z
cGVjdG9yQ2xpZW50LT5jbG9zZUluc3BlY3RvckZyb250ZW5kKCk7CiB9CiAKLXZvaWQgSW5zcGVj
dG9yQ29udHJvbGxlcjo6cmVjb25uZWN0RnJvbnRlbmQoSW5zcGVjdG9yRnJvbnRlbmRDaGFubmVs
KiBmcm9udGVuZENoYW5uZWwsIGNvbnN0IFN0cmluZyYgaW5zcGVjdG9yU3RhdGVDb29raWUpCi17
Ci0gICAgQVNTRVJUKCFtX2luc3BlY3RvckZyb250ZW5kKTsKLSAgICBjb25uZWN0RnJvbnRlbmQo
ZnJvbnRlbmRDaGFubmVsKTsKLSAgICBtX3N0YXRlLT5sb2FkRnJvbUNvb2tpZShpbnNwZWN0b3JT
dGF0ZUNvb2tpZSk7Ci0gICAgbV9hZ2VudHMucmVzdG9yZSgpOwotfQotCiB2b2lkIEluc3BlY3Rv
ckNvbnRyb2xsZXI6OnNldFByb2Nlc3NJZChsb25nIHByb2Nlc3NJZCkKIHsKICAgICBJZGVudGlm
aWVyc0ZhY3Rvcnk6OnNldFByb2Nlc3NJZChwcm9jZXNzSWQpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckNvbnRyb2xsZXIuaCBiL1NvdXJjZS9XZWJDb3Jl
L2luc3BlY3Rvci9JbnNwZWN0b3JDb250cm9sbGVyLmgKaW5kZXggM2YxMGI3Ny4uMDg0ZGQ0NSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckNvbnRyb2xsZXIu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ29udHJvbGxlci5oCkBA
IC05Niw3ICs5Niw2IEBAIHB1YmxpYzoKICAgICBib29sIGhhc0Zyb250ZW5kKCkgY29uc3QgeyBy
ZXR1cm4gbV9pbnNwZWN0b3JGcm9udGVuZDsgfQogICAgIHZvaWQgY29ubmVjdEZyb250ZW5kKElu
c3BlY3RvckZyb250ZW5kQ2hhbm5lbCopOwogICAgIHZvaWQgZGlzY29ubmVjdEZyb250ZW5kKCk7
Ci0gICAgdm9pZCByZWNvbm5lY3RGcm9udGVuZChJbnNwZWN0b3JGcm9udGVuZENoYW5uZWwqLCBj
b25zdCBTdHJpbmcmIGluc3BlY3RvclN0YXRlQ29va2llKTsKICAgICB2b2lkIHNldFByb2Nlc3NJ
ZChsb25nKTsKICAgICB2b2lkIHdlYlZpZXdSZXNpemVkKGNvbnN0IEludFNpemUmKTsKIApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckRPTUFnZW50LmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JET01BZ2VudC5jcHAKaW5kZXggYjZl
ZDA1OC4uZmY2YzMwOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3Bl
Y3RvckRPTUFnZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9y
RE9NQWdlbnQuY3BwCkBAIC0yNjcsMTMgKzI2Nyw2IEBAIHZvaWQgSW5zcGVjdG9yRE9NQWdlbnQ6
OmNsZWFyRnJvbnRlbmQoKQogICAgIHJlc2V0KCk7CiB9CiAKLXZvaWQgSW5zcGVjdG9yRE9NQWdl
bnQ6OnJlc3RvcmUoKQotewotICAgIC8vIFJlc2V0IGRvY3VtZW50IHRvIGF2b2lkIGVhcmx5IHJl
dHVybiBmcm9tIHNldERvY3VtZW50LgotICAgIG1fZG9jdW1lbnQgPSAwOwotICAgIHNldERvY3Vt
ZW50KG1fcGFnZUFnZW50LT5tYWluRnJhbWUoKS0+ZG9jdW1lbnQoKSk7Ci19Ci0KIFZlY3RvcjxE
b2N1bWVudCo+IEluc3BlY3RvckRPTUFnZW50Ojpkb2N1bWVudHMoKQogewogICAgIFZlY3RvcjxE
b2N1bWVudCo+IHJlc3VsdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9J
bnNwZWN0b3JET01BZ2VudC5oIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckRP
TUFnZW50LmgKaW5kZXggYmVlZTM0My4uYTViZTQ0MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL0luc3BlY3RvckRPTUFnZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL0luc3BlY3RvckRPTUFnZW50LmgKQEAgLTExNSw3ICsxMTUsNiBAQCBwdWJsaWM6CiAK
ICAgICB2aXJ0dWFsIHZvaWQgc2V0RnJvbnRlbmQoSW5zcGVjdG9yRnJvbnRlbmQqKTsKICAgICB2
aXJ0dWFsIHZvaWQgY2xlYXJGcm9udGVuZCgpOwotICAgIHZpcnR1YWwgdm9pZCByZXN0b3JlKCk7
CiAKICAgICBWZWN0b3I8RG9jdW1lbnQqPiBkb2N1bWVudHMoKTsKICAgICB2b2lkIHJlc2V0KCk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRGF0YWJhc2VB
Z2VudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRGF0YWJhc2VBZ2Vu
dC5jcHAKaW5kZXggNzM5NDczNC4uNmI3ZTAzNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
aW5zcGVjdG9yL0luc3BlY3RvckRhdGFiYXNlQWdlbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2luc3BlY3Rvci9JbnNwZWN0b3JEYXRhYmFzZUFnZW50LmNwcApAQCAtMjU3LDExICsyNTcsNiBA
QCB2b2lkIEluc3BlY3RvckRhdGFiYXNlQWdlbnQ6OmRpc2FibGUoRXJyb3JTdHJpbmcqKQogICAg
IG1fc3RhdGUtPnNldEJvb2xlYW4oRGF0YWJhc2VBZ2VudFN0YXRlOjpkYXRhYmFzZUFnZW50RW5h
YmxlZCwgbV9lbmFibGVkKTsKIH0KIAotdm9pZCBJbnNwZWN0b3JEYXRhYmFzZUFnZW50OjpyZXN0
b3JlKCkKLXsKLSAgICBtX2VuYWJsZWQgPSBtX3N0YXRlLT5nZXRCb29sZWFuKERhdGFiYXNlQWdl
bnRTdGF0ZTo6ZGF0YWJhc2VBZ2VudEVuYWJsZWQpOwotfQotCiB2b2lkIEluc3BlY3RvckRhdGFi
YXNlQWdlbnQ6OmdldERhdGFiYXNlVGFibGVOYW1lcyhFcnJvclN0cmluZyogZXJyb3IsIGNvbnN0
IFN0cmluZyYgZGF0YWJhc2VJZCwgUmVmUHRyPFR5cGVCdWlsZGVyOjpBcnJheTxTdHJpbmc+PiYg
bmFtZXMpCiB7CiAgICAgaWYgKCFtX2VuYWJsZWQpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9JbnNwZWN0b3JEYXRhYmFzZUFnZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9p
bnNwZWN0b3IvSW5zcGVjdG9yRGF0YWJhc2VBZ2VudC5oCmluZGV4IGQzNDUzYTAuLmIxNGNjOGIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JEYXRhYmFzZUFn
ZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckRhdGFiYXNlQWdl
bnQuaApAQCAtNTgsNyArNTgsNiBAQCBwdWJsaWM6CiAKICAgICB2aXJ0dWFsIHZvaWQgc2V0RnJv
bnRlbmQoSW5zcGVjdG9yRnJvbnRlbmQqKTsKICAgICB2aXJ0dWFsIHZvaWQgY2xlYXJGcm9udGVu
ZCgpOwotICAgIHZpcnR1YWwgdm9pZCByZXN0b3JlKCk7CiAKICAgICB2b2lkIGNsZWFyUmVzb3Vy
Y2VzKCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JE
ZWJ1Z2dlckFnZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JEZWJ1
Z2dlckFnZW50LmNwcAppbmRleCBiYmY3Mjk4Li5hMjgxMzdmIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRGVidWdnZXJBZ2VudC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckRlYnVnZ2VyQWdlbnQuY3BwCkBAIC0xNDcsMTcg
KzE0Nyw2IEBAIHZvaWQgSW5zcGVjdG9yRGVidWdnZXJBZ2VudDo6ZGlzYWJsZShFcnJvclN0cmlu
ZyopCiAgICAgbV9zdGF0ZS0+c2V0Qm9vbGVhbihEZWJ1Z2dlckFnZW50U3RhdGU6OmRlYnVnZ2Vy
RW5hYmxlZCwgZmFsc2UpOwogfQogCi12b2lkIEluc3BlY3RvckRlYnVnZ2VyQWdlbnQ6OnJlc3Rv
cmUoKQotewotICAgIGlmIChlbmFibGVkKCkpIHsKLSAgICAgICAgbV9mcm9udGVuZC0+Z2xvYmFs
T2JqZWN0Q2xlYXJlZCgpOwotICAgICAgICBlbmFibGUoKTsKLSAgICAgICAgbG9uZyBwYXVzZVN0
YXRlID0gbV9zdGF0ZS0+Z2V0TG9uZyhEZWJ1Z2dlckFnZW50U3RhdGU6OnBhdXNlT25FeGNlcHRp
b25zU3RhdGUpOwotICAgICAgICBTdHJpbmcgZXJyb3I7Ci0gICAgICAgIHNldFBhdXNlT25FeGNl
cHRpb25zSW1wbCgmZXJyb3IsIHBhdXNlU3RhdGUpOwotICAgIH0KLX0KLQogdm9pZCBJbnNwZWN0
b3JEZWJ1Z2dlckFnZW50OjpzZXRGcm9udGVuZChJbnNwZWN0b3JGcm9udGVuZCogZnJvbnRlbmQp
CiB7CiAgICAgbV9mcm9udGVuZCA9IGZyb250ZW5kLT5kZWJ1Z2dlcigpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckRlYnVnZ2VyQWdlbnQuaCBiL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JEZWJ1Z2dlckFnZW50LmgKaW5kZXggY2QwNjVk
OS4uYTcxNDc3ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rv
ckRlYnVnZ2VyQWdlbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9y
RGVidWdnZXJBZ2VudC5oCkBAIC03Myw3ICs3Myw2IEBAIHB1YmxpYzoKIAogICAgIHZpcnR1YWwg
dm9pZCBzZXRGcm9udGVuZChJbnNwZWN0b3JGcm9udGVuZCopOwogICAgIHZpcnR1YWwgdm9pZCBj
bGVhckZyb250ZW5kKCk7Ci0gICAgdmlydHVhbCB2b2lkIHJlc3RvcmUoKTsKIAogICAgIGJvb2wg
aXNQYXVzZWQoKTsKICAgICBib29sIHJ1bm5pbmdOZXN0ZWRNZXNzYWdlTG9vcCgpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckhlYXBQcm9maWxlckFnZW50
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JIZWFwUHJvZmlsZXJBZ2Vu
dC5jcHAKaW5kZXggNzYyM2IyMi4uNTRkYWJiZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
aW5zcGVjdG9yL0luc3BlY3RvckhlYXBQcm9maWxlckFnZW50LmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySGVhcFByb2ZpbGVyQWdlbnQuY3BwCkBAIC05NiwxMSAr
OTYsNiBAQCB2b2lkIEluc3BlY3RvckhlYXBQcm9maWxlckFnZW50OjpjbGVhckZyb250ZW5kKCkK
ICAgICBtX2Zyb250ZW5kID0gMDsKIH0KIAotdm9pZCBJbnNwZWN0b3JIZWFwUHJvZmlsZXJBZ2Vu
dDo6cmVzdG9yZSgpCi17Ci0gICAgcmVzZXRGcm9udGVuZFByb2ZpbGVzKCk7Ci19Ci0KIHZvaWQg
SW5zcGVjdG9ySGVhcFByb2ZpbGVyQWdlbnQ6OmNvbGxlY3RHYXJiYWdlKFdlYkNvcmU6OkVycm9y
U3RyaW5nKikKIHsKICAgICBTY3JpcHRQcm9maWxlcjo6Y29sbGVjdEdhcmJhZ2UoKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JIZWFwUHJvZmlsZXJBZ2Vu
dC5oIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckhlYXBQcm9maWxlckFnZW50
LmgKaW5kZXggMjdkMmE3Ny4uOTY5NTQwMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL0luc3BlY3RvckhlYXBQcm9maWxlckFnZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUv
aW5zcGVjdG9yL0luc3BlY3RvckhlYXBQcm9maWxlckFnZW50LmgKQEAgLTY3LDcgKzY3LDYgQEAg
cHVibGljOgogCiAgICAgdmlydHVhbCB2b2lkIHNldEZyb250ZW5kKEluc3BlY3RvckZyb250ZW5k
Kik7CiAgICAgdmlydHVhbCB2b2lkIGNsZWFyRnJvbnRlbmQoKTsKLSAgICB2aXJ0dWFsIHZvaWQg
cmVzdG9yZSgpOwogCiAgICAgdmlydHVhbCB2b2lkIHRha2VIZWFwU25hcHNob3QoRXJyb3JTdHJp
bmcqLCBjb25zdCBib29sKiByZXBvcnRQcm9ncmVzcyk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbmRleGVkREJBZ2VudC5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5kZXhlZERCQWdlbnQuY3BwCmluZGV4IDQ1MzA0MWYu
LjExMjI4YzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJ
bmRleGVkREJBZ2VudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rv
ckluZGV4ZWREQkFnZW50LmNwcApAQCAtNTc3LDE0ICs1NzcsNiBAQCB2b2lkIEluc3BlY3Rvcklu
ZGV4ZWREQkFnZW50OjpjbGVhckZyb250ZW5kKCkKICAgICBkaXNhYmxlKDApOwogfQogCi12b2lk
IEluc3BlY3RvckluZGV4ZWREQkFnZW50OjpyZXN0b3JlKCkKLXsKLSAgICBpZiAobV9zdGF0ZS0+
Z2V0Qm9vbGVhbihJbmRleGVkREJBZ2VudFN0YXRlOjppbmRleGVkREJBZ2VudEVuYWJsZWQpKSB7
Ci0gICAgICAgIEVycm9yU3RyaW5nIGVycm9yOwotICAgICAgICBlbmFibGUoJmVycm9yKTsKLSAg
ICB9Ci19Ci0KIHZvaWQgSW5zcGVjdG9ySW5kZXhlZERCQWdlbnQ6OmVuYWJsZShFcnJvclN0cmlu
ZyopCiB7CiAgICAgbV9zdGF0ZS0+c2V0Qm9vbGVhbihJbmRleGVkREJBZ2VudFN0YXRlOjppbmRl
eGVkREJBZ2VudEVuYWJsZWQsIHRydWUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL0luc3BlY3RvckluZGV4ZWREQkFnZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0
b3IvSW5zcGVjdG9ySW5kZXhlZERCQWdlbnQuaAppbmRleCAzMzZjNjYxLi40ZTU0NDNhIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5kZXhlZERCQWdlbnQu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5kZXhlZERCQWdlbnQu
aApAQCAtNTMsNyArNTMsNiBAQCBwdWJsaWM6CiAgICAgfkluc3BlY3RvckluZGV4ZWREQkFnZW50
KCk7CiAKICAgICB2aXJ0dWFsIHZvaWQgY2xlYXJGcm9udGVuZCgpOwotICAgIHZpcnR1YWwgdm9p
ZCByZXN0b3JlKCk7CiAKICAgICAvLyBDYWxsZWQgZnJvbSB0aGUgZnJvbnQtZW5kLgogICAgIHZp
cnR1YWwgdm9pZCBlbmFibGUoRXJyb3JTdHJpbmcqKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9JbnNwZWN0b3JMYXllclRyZWVBZ2VudC5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvSW5zcGVjdG9yTGF5ZXJUcmVlQWdlbnQuY3BwCmluZGV4IDM4MGNkYjQuLjE2
ODgyNGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JMYXll
clRyZWVBZ2VudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvckxh
eWVyVHJlZUFnZW50LmNwcApAQCAtNzUsMTIgKzc1LDYgQEAgdm9pZCBJbnNwZWN0b3JMYXllclRy
ZWVBZ2VudDo6Y2xlYXJGcm9udGVuZCgpCiAgICAgZGlzYWJsZSgwKTsKIH0KIAotdm9pZCBJbnNw
ZWN0b3JMYXllclRyZWVBZ2VudDo6cmVzdG9yZSgpCi17Ci0gICAgaWYgKG1fc3RhdGUtPmdldEJv
b2xlYW4oTGF5ZXJUcmVlQWdlbnRTdGF0ZTo6bGF5ZXJUcmVlQWdlbnRFbmFibGVkKSkKLSAgICAg
ICAgZW5hYmxlKDApOwotfQotCiB2b2lkIEluc3BlY3RvckxheWVyVHJlZUFnZW50OjpyZXNldCgp
CiB7CiAgICAgbV9kb2N1bWVudExheWVyVG9JZE1hcC5jbGVhcigpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckxheWVyVHJlZUFnZW50LmggYi9Tb3VyY2Uv
V2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yTGF5ZXJUcmVlQWdlbnQuaAppbmRleCBjYzA5ZGU0
Li5lYzI2NzRiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9y
TGF5ZXJUcmVlQWdlbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9y
TGF5ZXJUcmVlQWdlbnQuaApAQCAtNTcsNyArNTcsNiBAQCBwdWJsaWM6CiAKICAgICB2aXJ0dWFs
IHZvaWQgc2V0RnJvbnRlbmQoSW5zcGVjdG9yRnJvbnRlbmQqKTsKICAgICB2aXJ0dWFsIHZvaWQg
Y2xlYXJGcm9udGVuZCgpOwotICAgIHZpcnR1YWwgdm9pZCByZXN0b3JlKCk7CiAgICAgdm9pZCBy
ZXNldCgpOwogCiAgICAgdm9pZCBsYXllclRyZWVEaWRDaGFuZ2UoKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JQYWdlQWdlbnQuY3BwIGIvU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclBhZ2VBZ2VudC5jcHAKaW5kZXggNGIzYzhkMi4uYmVh
NTczZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclBhZ2VB
Z2VudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclBhZ2VBZ2Vu
dC5jcHAKQEAgLTM5OCwzNSArMzk4LDYgQEAgdm9pZCBJbnNwZWN0b3JQYWdlQWdlbnQ6OmNsZWFy
RnJvbnRlbmQoKQogICAgIG1fZnJvbnRlbmQgPSAwOwogfQogCi12b2lkIEluc3BlY3RvclBhZ2VB
Z2VudDo6cmVzdG9yZSgpCi17Ci0gICAgaWYgKG1fc3RhdGUtPmdldEJvb2xlYW4oUGFnZUFnZW50
U3RhdGU6OnBhZ2VBZ2VudEVuYWJsZWQpKSB7Ci0gICAgICAgIEVycm9yU3RyaW5nIGVycm9yOwot
ICAgICAgICBlbmFibGUoJmVycm9yKTsKLSAgICAgICAgYm9vbCBzY3JpcHRFeGVjdXRpb25EaXNh
YmxlZCA9IG1fc3RhdGUtPmdldEJvb2xlYW4oUGFnZUFnZW50U3RhdGU6OnBhZ2VBZ2VudFNjcmlw
dEV4ZWN1dGlvbkRpc2FibGVkKTsKLSAgICAgICAgc2V0U2NyaXB0RXhlY3V0aW9uRGlzYWJsZWQo
MCwgc2NyaXB0RXhlY3V0aW9uRGlzYWJsZWQpOwotICAgICAgICBib29sIHNob3dQYWludFJlY3Rz
ID0gbV9zdGF0ZS0+Z2V0Qm9vbGVhbihQYWdlQWdlbnRTdGF0ZTo6cGFnZUFnZW50U2hvd1BhaW50
UmVjdHMpOwotICAgICAgICBzZXRTaG93UGFpbnRSZWN0cygwLCBzaG93UGFpbnRSZWN0cyk7Ci0g
ICAgICAgIGJvb2wgc2hvd0RlYnVnQm9yZGVycyA9IG1fc3RhdGUtPmdldEJvb2xlYW4oUGFnZUFn
ZW50U3RhdGU6OnBhZ2VBZ2VudFNob3dEZWJ1Z0JvcmRlcnMpOwotICAgICAgICBzZXRTaG93RGVi
dWdCb3JkZXJzKDAsIHNob3dEZWJ1Z0JvcmRlcnMpOwotICAgICAgICBib29sIHNob3dGUFNDb3Vu
dGVyID0gbV9zdGF0ZS0+Z2V0Qm9vbGVhbihQYWdlQWdlbnRTdGF0ZTo6cGFnZUFnZW50U2hvd0ZQ
U0NvdW50ZXIpOwotICAgICAgICBzZXRTaG93RlBTQ291bnRlcigwLCBzaG93RlBTQ291bnRlcik7
Ci0gICAgICAgIFN0cmluZyBlbXVsYXRlZE1lZGlhID0gbV9zdGF0ZS0+Z2V0U3RyaW5nKFBhZ2VB
Z2VudFN0YXRlOjpwYWdlQWdlbnRFbXVsYXRlZE1lZGlhKTsKLSAgICAgICAgc2V0RW11bGF0ZWRN
ZWRpYSgwLCBlbXVsYXRlZE1lZGlhKTsKLSAgICAgICAgYm9vbCBjb250aW51b3VzUGFpbnRpbmdF
bmFibGVkID0gbV9zdGF0ZS0+Z2V0Qm9vbGVhbihQYWdlQWdlbnRTdGF0ZTo6cGFnZUFnZW50Q29u
dGludW91c1BhaW50aW5nRW5hYmxlZCk7Ci0gICAgICAgIHNldENvbnRpbnVvdXNQYWludGluZ0Vu
YWJsZWQoMCwgY29udGludW91c1BhaW50aW5nRW5hYmxlZCk7Ci0KLSAgICAgICAgaW50IGN1cnJl
bnRXaWR0aCA9IHN0YXRpY19jYXN0PGludD4obV9zdGF0ZS0+Z2V0TG9uZyhQYWdlQWdlbnRTdGF0
ZTo6cGFnZUFnZW50U2NyZWVuV2lkdGhPdmVycmlkZSkpOwotICAgICAgICBpbnQgY3VycmVudEhl
aWdodCA9IHN0YXRpY19jYXN0PGludD4obV9zdGF0ZS0+Z2V0TG9uZyhQYWdlQWdlbnRTdGF0ZTo6
cGFnZUFnZW50U2NyZWVuSGVpZ2h0T3ZlcnJpZGUpKTsKLSAgICAgICAgZG91YmxlIGN1cnJlbnRG
b250U2NhbGVGYWN0b3IgPSBtX3N0YXRlLT5nZXREb3VibGUoUGFnZUFnZW50U3RhdGU6OnBhZ2VB
Z2VudEZvbnRTY2FsZUZhY3Rvck92ZXJyaWRlKTsKLSAgICAgICAgYm9vbCBjdXJyZW50Rml0V2lu
ZG93ID0gbV9zdGF0ZS0+Z2V0Qm9vbGVhbihQYWdlQWdlbnRTdGF0ZTo6cGFnZUFnZW50Rml0V2lu
ZG93KTsKLSAgICAgICAgdXBkYXRlVmlld01ldHJpY3MoY3VycmVudFdpZHRoLCBjdXJyZW50SGVp
Z2h0LCBjdXJyZW50Rm9udFNjYWxlRmFjdG9yLCBjdXJyZW50Rml0V2luZG93KTsKLSNpZiBFTkFC
TEUoVE9VQ0hfRVZFTlRTKQotICAgICAgICB1cGRhdGVUb3VjaEV2ZW50RW11bGF0aW9uSW5QYWdl
KG1fc3RhdGUtPmdldEJvb2xlYW4oUGFnZUFnZW50U3RhdGU6OnRvdWNoRXZlbnRFbXVsYXRpb25F
bmFibGVkKSk7Ci0jZW5kaWYKLSAgICB9Ci19Ci0KIHZvaWQgSW5zcGVjdG9yUGFnZUFnZW50Ojp3
ZWJWaWV3UmVzaXplZChjb25zdCBJbnRTaXplJiBzaXplKQogewogICAgIGludCBjdXJyZW50V2lk
dGggPSBzdGF0aWNfY2FzdDxpbnQ+KG1fc3RhdGUtPmdldExvbmcoUGFnZUFnZW50U3RhdGU6OnBh
Z2VBZ2VudFNjcmVlbldpZHRoT3ZlcnJpZGUpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2luc3BlY3Rvci9JbnNwZWN0b3JQYWdlQWdlbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rv
ci9JbnNwZWN0b3JQYWdlQWdlbnQuaAppbmRleCBjMzA2OWFkLi4yYjA0ZjQ0IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yUGFnZUFnZW50LmgKKysrIGIvU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclBhZ2VBZ2VudC5oCkBAIC0xNjUsNyArMTY1
LDYgQEAgcHVibGljOgogICAgIC8vIEluc3BlY3RvciBDb250cm9sbGVyIEFQSQogICAgIHZpcnR1
YWwgdm9pZCBzZXRGcm9udGVuZChJbnNwZWN0b3JGcm9udGVuZCopOwogICAgIHZpcnR1YWwgdm9p
ZCBjbGVhckZyb250ZW5kKCk7Ci0gICAgdmlydHVhbCB2b2lkIHJlc3RvcmUoKTsKIAogICAgIHZv
aWQgd2ViVmlld1Jlc2l6ZWQoY29uc3QgSW50U2l6ZSYpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yUHJvZmlsZXJBZ2VudC5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yUHJvZmlsZXJBZ2VudC5jcHAKaW5kZXggZmE5NWJmOC4u
ZDQ4OGE2NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclBy
b2ZpbGVyQWdlbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JQ
cm9maWxlckFnZW50LmNwcApAQCAtMzUxLDIzICszNTEsNiBAQCB2b2lkIEluc3BlY3RvclByb2Zp
bGVyQWdlbnQ6OmNsZWFyRnJvbnRlbmQoKQogICAgIGRpc2FibGUoJmVycm9yKTsKIH0KIAotdm9p
ZCBJbnNwZWN0b3JQcm9maWxlckFnZW50OjpyZXN0b3JlKCkKLXsKLSAgICAvLyBOZWVkIHRvIHJl
c3RvcmUgZW5hYmxlbWVudCBzdGF0ZSBoZXJlIGFzIGluIHNldEZyb250ZW5kIG1fc3RhdGUgd2Fz
bid0IGxvYWRlZCB5ZXQuCi0gICAgcmVzdG9yZUVuYWJsZW1lbnQoKTsKLSAgICByZXNldEZyb250
ZW5kUHJvZmlsZXMoKTsKLSAgICBpZiAobV9zdGF0ZS0+Z2V0Qm9vbGVhbihQcm9maWxlckFnZW50
U3RhdGU6OnVzZXJJbml0aWF0ZWRQcm9maWxpbmcpKQotICAgICAgICBzdGFydCgpOwotfQotCi12
b2lkIEluc3BlY3RvclByb2ZpbGVyQWdlbnQ6OnJlc3RvcmVFbmFibGVtZW50KCkKLXsKLSAgICBp
ZiAobV9zdGF0ZS0+Z2V0Qm9vbGVhbihQcm9maWxlckFnZW50U3RhdGU6OnByb2ZpbGVyRW5hYmxl
ZCkpIHsKLSAgICAgICAgRXJyb3JTdHJpbmcgZXJyb3I7Ci0gICAgICAgIGVuYWJsZSgmZXJyb3Ip
OwotICAgIH0KLX0KLQogdm9pZCBJbnNwZWN0b3JQcm9maWxlckFnZW50OjpzdGFydChFcnJvclN0
cmluZyopCiB7CiAgICAgaWYgKG1fcmVjb3JkaW5nQ1BVUHJvZmlsZSkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JQcm9maWxlckFnZW50LmggYi9Tb3VyY2Uv
V2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yUHJvZmlsZXJBZ2VudC5oCmluZGV4IGU5MGZkMjQu
LmY4OTUyMDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JQ
cm9maWxlckFnZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclBy
b2ZpbGVyQWdlbnQuaApAQCAtOTMsNyArOTMsNiBAQCBwdWJsaWM6CiAKICAgICB2aXJ0dWFsIHZv
aWQgc2V0RnJvbnRlbmQoSW5zcGVjdG9yRnJvbnRlbmQqKTsKICAgICB2aXJ0dWFsIHZvaWQgY2xl
YXJGcm9udGVuZCgpOwotICAgIHZpcnR1YWwgdm9pZCByZXN0b3JlKCk7CiAKICAgICB2aXJ0dWFs
IHZvaWQgdGFrZUhlYXBTbmFwc2hvdChFcnJvclN0cmluZyosIGNvbnN0IGJvb2wqIHJlcG9ydFBy
b2dyZXNzKTsKICAgICB2b2lkIHRvZ2dsZVJlY29yZEJ1dHRvbihib29sIGlzUHJvZmlsaW5nKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JSZXNvdXJjZUFn
ZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JSZXNvdXJjZUFnZW50
LmNwcAppbmRleCA5OGJhNTI1Li4yYWU2NWE5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9p
bnNwZWN0b3IvSW5zcGVjdG9yUmVzb3VyY2VBZ2VudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
aW5zcGVjdG9yL0luc3BlY3RvclJlc291cmNlQWdlbnQuY3BwCkBAIC05NiwxMiArOTYsNiBAQCB2
b2lkIEluc3BlY3RvclJlc291cmNlQWdlbnQ6OmNsZWFyRnJvbnRlbmQoKQogICAgIGRpc2FibGUo
JmVycm9yKTsKIH0KIAotdm9pZCBJbnNwZWN0b3JSZXNvdXJjZUFnZW50OjpyZXN0b3JlKCkKLXsK
LSAgICBpZiAobV9zdGF0ZS0+Z2V0Qm9vbGVhbihSZXNvdXJjZUFnZW50U3RhdGU6OnJlc291cmNl
QWdlbnRFbmFibGVkKSkKLSAgICAgICAgZW5hYmxlKCk7Ci19Ci0KIHN0YXRpYyBQYXNzUmVmUHRy
PEluc3BlY3Rvck9iamVjdD4gYnVpbGRPYmplY3RGb3JIZWFkZXJzKGNvbnN0IEhUVFBIZWFkZXJN
YXAmIGhlYWRlcnMpCiB7CiAgICAgUmVmUHRyPEluc3BlY3Rvck9iamVjdD4gaGVhZGVyc09iamVj
dCA9IEluc3BlY3Rvck9iamVjdDo6Y3JlYXRlKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvSW5zcGVjdG9yUmVzb3VyY2VBZ2VudC5oIGIvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL0luc3BlY3RvclJlc291cmNlQWdlbnQuaAppbmRleCA4MjBhN2UzLi5mNmZhOTE3IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yUmVzb3VyY2VBZ2Vu
dC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JSZXNvdXJjZUFnZW50
LmgKQEAgLTg3LDcgKzg3LDYgQEAgcHVibGljOgogCiAgICAgdmlydHVhbCB2b2lkIHNldEZyb250
ZW5kKEluc3BlY3RvckZyb250ZW5kKik7CiAgICAgdmlydHVhbCB2b2lkIGNsZWFyRnJvbnRlbmQo
KTsKLSAgICB2aXJ0dWFsIHZvaWQgcmVzdG9yZSgpOwogCiAgICAgc3RhdGljIFBhc3NSZWZQdHI8
SW5zcGVjdG9yUmVzb3VyY2VBZ2VudD4gcmVzdG9yZShQYWdlKiwgSW5zcGVjdG9yQ29tcG9zaXRl
U3RhdGUqLCBJbnNwZWN0b3JGcm9udGVuZCopOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvSW5zcGVjdG9yVGltZWxpbmVBZ2VudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9p
bnNwZWN0b3IvSW5zcGVjdG9yVGltZWxpbmVBZ2VudC5jcHAKaW5kZXggYTEyMWExNC4uZGUzYmYw
YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclRpbWVsaW5l
QWdlbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JUaW1lbGlu
ZUFnZW50LmNwcApAQCAtODYsMTcgKzg2LDYgQEAgdm9pZCBJbnNwZWN0b3JUaW1lbGluZUFnZW50
OjpjbGVhckZyb250ZW5kKCkKICAgICBtX2Zyb250ZW5kID0gMDsKIH0KIAotdm9pZCBJbnNwZWN0
b3JUaW1lbGluZUFnZW50OjpyZXN0b3JlKCkKLXsKLSAgICBpZiAobV9zdGF0ZS0+Z2V0Qm9vbGVh
bihUaW1lbGluZUFnZW50U3RhdGU6OnRpbWVsaW5lQWdlbnRFbmFibGVkKSkgewotICAgICAgICBt
X21heENhbGxTdGFja0RlcHRoID0gbV9zdGF0ZS0+Z2V0TG9uZyhUaW1lbGluZUFnZW50U3RhdGU6
OnRpbWVsaW5lTWF4Q2FsbFN0YWNrRGVwdGgpOwotICAgICAgICBFcnJvclN0cmluZyBlcnJvcjsK
LSAgICAgICAgYm9vbCBpbmNsdWRlRG9tQ291bnRlcnMgPSBtX3N0YXRlLT5nZXRCb29sZWFuKFRp
bWVsaW5lQWdlbnRTdGF0ZTo6aW5jbHVkZURvbUNvdW50ZXJzKTsKLSAgICAgICAgYm9vbCBpbmNs
dWRlTmF0aXZlTWVtb3J5U3RhdGlzdGljcyA9IG1fc3RhdGUtPmdldEJvb2xlYW4oVGltZWxpbmVB
Z2VudFN0YXRlOjppbmNsdWRlTmF0aXZlTWVtb3J5U3RhdGlzdGljcyk7Ci0gICAgICAgIHN0YXJ0
KCZlcnJvciwgJm1fbWF4Q2FsbFN0YWNrRGVwdGgsICZpbmNsdWRlRG9tQ291bnRlcnMsICZpbmNs
dWRlTmF0aXZlTWVtb3J5U3RhdGlzdGljcyk7Ci0gICAgfQotfQotCiB2b2lkIEluc3BlY3RvclRp
bWVsaW5lQWdlbnQ6OnN0YXJ0KEVycm9yU3RyaW5nKiwgY29uc3QgaW50KiBtYXhDYWxsU3RhY2tE
ZXB0aCwgY29uc3QgYm9vbCogaW5jbHVkZURvbUNvdW50ZXJzLCBjb25zdCBib29sKiBpbmNsdWRl
TmF0aXZlTWVtb3J5U3RhdGlzdGljcykKIHsKICAgICBpZiAoIW1fZnJvbnRlbmQpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yVGltZWxpbmVBZ2VudC5oIGIv
U291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclRpbWVsaW5lQWdlbnQuaAppbmRleCBh
NTcyZjliLi5lMjBmN2ViIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5z
cGVjdG9yVGltZWxpbmVBZ2VudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNw
ZWN0b3JUaW1lbGluZUFnZW50LmgKQEAgLTEzOCw3ICsxMzgsNiBAQCBwdWJsaWM6CiAKICAgICB2
aXJ0dWFsIHZvaWQgc2V0RnJvbnRlbmQoSW5zcGVjdG9yRnJvbnRlbmQqKTsKICAgICB2aXJ0dWFs
IHZvaWQgY2xlYXJGcm9udGVuZCgpOwotICAgIHZpcnR1YWwgdm9pZCByZXN0b3JlKCk7CiAKICAg
ICB2aXJ0dWFsIHZvaWQgc3RhcnQoRXJyb3JTdHJpbmcqLCBjb25zdCBpbnQqIG1heENhbGxTdGFj
a0RlcHRoLCBjb25zdCBib29sKiBpbmNsdWRlRG9tQ291bnRlcnMsIGNvbnN0IGJvb2wqIGluY2x1
ZGVOYXRpdmVNZW1vcnlTdGF0aXN0aWNzKTsKICAgICB2aXJ0dWFsIHZvaWQgc3RvcChFcnJvclN0
cmluZyopOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvcldv
cmtlckFnZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JXb3JrZXJB
Z2VudC5jcHAKaW5kZXggNmI3ZmRlYi4uYTY3MjYzMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL0luc3BlY3RvcldvcmtlckFnZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvSW5zcGVjdG9yV29ya2VyQWdlbnQuY3BwCkBAIC0xMjksMTIgKzEyOSw2IEBA
IHZvaWQgSW5zcGVjdG9yV29ya2VyQWdlbnQ6OnNldEZyb250ZW5kKEluc3BlY3RvckZyb250ZW5k
KiBmcm9udGVuZCkKICAgICBtX2luc3BlY3RvckZyb250ZW5kID0gZnJvbnRlbmQ7CiB9CiAKLXZv
aWQgSW5zcGVjdG9yV29ya2VyQWdlbnQ6OnJlc3RvcmUoKQotewotICAgIGlmIChtX3N0YXRlLT5n
ZXRCb29sZWFuKFdvcmtlckFnZW50U3RhdGU6Ondvcmtlckluc3BlY3Rpb25FbmFibGVkKSkKLSAg
ICAgICAgY3JlYXRlV29ya2VyRnJvbnRlbmRDaGFubmVsc0ZvckV4aXN0aW5nV29ya2VycygpOwot
fQotCiB2b2lkIEluc3BlY3RvcldvcmtlckFnZW50OjpjbGVhckZyb250ZW5kKCkKIHsKICAgICBt
X3N0YXRlLT5zZXRCb29sZWFuKFdvcmtlckFnZW50U3RhdGU6OmF1dG9jb25uZWN0VG9Xb3JrZXJz
LCBmYWxzZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9y
V29ya2VyQWdlbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JXb3JrZXJB
Z2VudC5oCmluZGV4IDg5N2RlMzYuLmY3NDUyZmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2luc3BlY3Rvci9JbnNwZWN0b3JXb3JrZXJBZ2VudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2lu
c3BlY3Rvci9JbnNwZWN0b3JXb3JrZXJBZ2VudC5oCkBAIC01Myw3ICs1Myw2IEBAIHB1YmxpYzoK
ICAgICB+SW5zcGVjdG9yV29ya2VyQWdlbnQoKTsKIAogICAgIHZpcnR1YWwgdm9pZCBzZXRGcm9u
dGVuZChJbnNwZWN0b3JGcm9udGVuZCopOwotICAgIHZpcnR1YWwgdm9pZCByZXN0b3JlKCk7CiAg
ICAgdmlydHVhbCB2b2lkIGNsZWFyRnJvbnRlbmQoKTsKIAogICAgIC8vIENhbGxlZCBmcm9tIElu
c3BlY3Rvckluc3RydW1lbnRhdGlvbgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL1BhZ2VSdW50aW1lQWdlbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL1BhZ2VS
dW50aW1lQWdlbnQuY3BwCmluZGV4IGExZjBhYjkuLjRiZjcyMDggMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9QYWdlUnVudGltZUFnZW50LmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9pbnNwZWN0b3IvUGFnZVJ1bnRpbWVBZ2VudC5jcHAKQEAgLTgxLDE0ICs4MSw2IEBAIHZv
aWQgUGFnZVJ1bnRpbWVBZ2VudDo6Y2xlYXJGcm9udGVuZCgpCiAgICAgZGlzYWJsZSgmZXJyb3JT
dHJpbmcpOwogfQogCi12b2lkIFBhZ2VSdW50aW1lQWdlbnQ6OnJlc3RvcmUoKQotewotICAgIGlm
IChtX3N0YXRlLT5nZXRCb29sZWFuKFBhZ2VSdW50aW1lQWdlbnRTdGF0ZTo6cnVudGltZUVuYWJs
ZWQpKSB7Ci0gICAgICAgIFN0cmluZyBlcnJvcjsKLSAgICAgICAgZW5hYmxlKCZlcnJvcik7Ci0g
ICAgfQotfQotCiB2b2lkIFBhZ2VSdW50aW1lQWdlbnQ6OmVuYWJsZShFcnJvclN0cmluZyogZXJy
b3JTdHJpbmcpCiB7CiAgICAgaWYgKG1fZW5hYmxlZCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9QYWdlUnVudGltZUFnZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0
b3IvUGFnZVJ1bnRpbWVBZ2VudC5oCmluZGV4IDZlOTVlYTkuLmY1ZDg3ZWUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9QYWdlUnVudGltZUFnZW50LmgKKysrIGIvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL1BhZ2VSdW50aW1lQWdlbnQuaApAQCAtNTMsNyArNTMsNiBAQCBw
dWJsaWM6CiAgICAgdmlydHVhbCB+UGFnZVJ1bnRpbWVBZ2VudCgpOwogICAgIHZpcnR1YWwgdm9p
ZCBzZXRGcm9udGVuZChJbnNwZWN0b3JGcm9udGVuZCopOwogICAgIHZpcnR1YWwgdm9pZCBjbGVh
ckZyb250ZW5kKCk7Ci0gICAgdmlydHVhbCB2b2lkIHJlc3RvcmUoKTsKICAgICB2aXJ0dWFsIHZv
aWQgZW5hYmxlKEVycm9yU3RyaW5nKik7CiAgICAgdmlydHVhbCB2b2lkIGRpc2FibGUoRXJyb3JT
dHJpbmcqKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL1dvcmtlcklu
c3BlY3RvckNvbnRyb2xsZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL1dvcmtlcklu
c3BlY3RvckNvbnRyb2xsZXIuY3BwCmluZGV4IDhkNDJlODIuLjM4MGYyMjEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9Xb3JrZXJJbnNwZWN0b3JDb250cm9sbGVyLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvV29ya2VySW5zcGVjdG9yQ29udHJvbGxlci5j
cHAKQEAgLTE2MCwxNSArMTYwLDYgQEAgdm9pZCBXb3JrZXJJbnNwZWN0b3JDb250cm9sbGVyOjpk
aXNjb25uZWN0RnJvbnRlbmQoKQogICAgIG1fZnJvbnRlbmRDaGFubmVsLmNsZWFyKCk7CiB9CiAK
LXZvaWQgV29ya2VySW5zcGVjdG9yQ29udHJvbGxlcjo6cmVzdG9yZUluc3BlY3RvclN0YXRlRnJv
bUNvb2tpZShjb25zdCBTdHJpbmcmIGluc3BlY3RvckNvb2tpZSkKLXsKLSAgICBBU1NFUlQoIW1f
ZnJvbnRlbmQpOwotICAgIGNvbm5lY3RGcm9udGVuZCgpOwotICAgIG1fc3RhdGUtPmxvYWRGcm9t
Q29va2llKGluc3BlY3RvckNvb2tpZSk7Ci0KLSAgICBtX2FnZW50cy5yZXN0b3JlKCk7Ci19Ci0K
IHZvaWQgV29ya2VySW5zcGVjdG9yQ29udHJvbGxlcjo6ZGlzcGF0Y2hNZXNzYWdlRnJvbUZyb250
ZW5kKGNvbnN0IFN0cmluZyYgbWVzc2FnZSkKIHsKICAgICBpZiAobV9iYWNrZW5kRGlzcGF0Y2hl
cikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9Xb3JrZXJJbnNwZWN0b3JD
b250cm9sbGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvV29ya2VySW5zcGVjdG9yQ29u
dHJvbGxlci5oCmluZGV4IGZiNGY1ODEuLmJlYWFjNDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9Xb3JrZXJJbnNwZWN0b3JDb250cm9sbGVyLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL1dvcmtlckluc3BlY3RvckNvbnRyb2xsZXIuaApAQCAtNjMsNyArNjMs
NiBAQCBwdWJsaWM6CiAgICAgYm9vbCBoYXNGcm9udGVuZCgpIGNvbnN0IHsgcmV0dXJuIG1fZnJv
bnRlbmQ7IH0KICAgICB2b2lkIGNvbm5lY3RGcm9udGVuZCgpOwogICAgIHZvaWQgZGlzY29ubmVj
dEZyb250ZW5kKCk7Ci0gICAgdm9pZCByZXN0b3JlSW5zcGVjdG9yU3RhdGVGcm9tQ29va2llKGNv
bnN0IFN0cmluZyYgaW5zcGVjdG9yQ29va2llKTsKICAgICB2b2lkIGRpc3BhdGNoTWVzc2FnZUZy
b21Gcm9udGVuZChjb25zdCBTdHJpbmcmKTsKICNpZiBFTkFCTEUoSkFWQVNDUklQVF9ERUJVR0dF
UikKICAgICB2b2lkIHJlc3VtZSgpOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>