<?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>123540</bug_id>
          
          <creation_ts>2013-10-30 16:37:21 -0700</creation_ts>
          <short_desc>Web Inspector: Remove last member variable uses of InspectorState from Agents</short_desc>
          <delta_ts>2013-10-31 11:32:04 -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>945228</commentid>
    <comment_count>0</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2013-10-30 16:37:21 -0700</bug_when>
    <thetext>Remove last uses of InspectorState from agents.

Next step will be to remove InspectorState from all agents.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>945229</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2013-10-30 16:37:33 -0700</bug_when>
    <thetext>&lt;rdar://problem/15357561&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>945237</commentid>
    <comment_count>2</comment_count>
      <attachid>215574</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2013-10-30 16:51:23 -0700</bug_when>
    <thetext>Created attachment 215574
[PATCH] Proposed Fix</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>945597</commentid>
    <comment_count>3</comment_count>
      <attachid>215574</attachid>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2013-10-31 11:20:50 -0700</bug_when>
    <thetext>Comment on attachment 215574
[PATCH] Proposed Fix

Many of these InspectorObjects can be HashMaps.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>945600</commentid>
    <comment_count>4</comment_count>
      <attachid>215574</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-10-31 11:32:02 -0700</bug_when>
    <thetext>Comment on attachment 215574
[PATCH] Proposed Fix

Clearing flags on attachment: 215574

Committed r158377: &lt;http://trac.webkit.org/changeset/158377&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>945601</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-10-31 11:32:04 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>215574</attachid>
            <date>2013-10-30 16:51:23 -0700</date>
            <delta_ts>2013-10-31 11:32:02 -0700</delta_ts>
            <desc>[PATCH] Proposed Fix</desc>
            <filename>rm8.patch</filename>
            <type>text/plain</type>
            <size>19749</size>
            <attacher name="Joseph Pecoraro">joepeck</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA3Yzc1Mzk3Li5hNThhM2MxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDUgKzEsNTAg
QEAKIDIwMTMtMTAtMzAgIEpvc2VwaCBQZWNvcmFybyAgPHBlY29yYXJvQGFwcGxlLmNvbT4KIAor
ICAgICAgICBXZWIgSW5zcGVjdG9yOiBSZW1vdmUgbGFzdCBtZW1iZXIgdmFyaWFibGUgdXNlcyBv
ZiBJbnNwZWN0b3JTdGF0ZSBmcm9tIEFnZW50cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTIzNTQwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9yRE9NRGVidWdnZXJBZ2Vu
dC5oOgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JET01EZWJ1Z2dlckFnZW50LmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckRPTURlYnVnZ2VyQWdlbnQ6Okluc3BlY3RvckRP
TURlYnVnZ2VyQWdlbnQpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yRE9NRGVidWdnZXJB
Z2VudDo6c2V0QnJlYWtwb2ludCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JET01EZWJ1
Z2dlckFnZW50OjpyZW1vdmVCcmVha3BvaW50KToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rv
ckRPTURlYnVnZ2VyQWdlbnQ6OnBhdXNlT25OYXRpdmVFdmVudElmTmVlZGVkKToKKyAgICAgICAg
KFdlYkNvcmU6Okluc3BlY3RvckRPTURlYnVnZ2VyQWdlbnQ6OnNldFhIUkJyZWFrcG9pbnQpOgor
ICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yRE9NRGVidWdnZXJBZ2VudDo6cmVtb3ZlWEhSQnJl
YWtwb2ludCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JET01EZWJ1Z2dlckFnZW50Ojp3
aWxsU2VuZFhNTEh0dHBSZXF1ZXN0KToKKyAgICAgICAgRE9NRGVidWdnZXJBZ2VudFN0YXRlOjpl
dmVudExpc3RlbmVyQnJlYWtwb2ludHMgLT4gbV9ldmVudExpc3RlbmVyQnJlYWtwb2ludHMuCisg
ICAgICAgIERPTURlYnVnZ2VyQWdlbnRTdGF0ZTo6eGhyQnJlYWtwb2ludHMgLT4gbV94aHJCcmVh
a3BvaW50cy4KKworICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JEZWJ1Z2dlckFnZW50Lmg6
CisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3RvckRlYnVnZ2VyQWdlbnQuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6SW5zcGVjdG9yRGVidWdnZXJBZ2VudDo6SW5zcGVjdG9yRGVidWdnZXJBZ2Vu
dCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JEZWJ1Z2dlckFnZW50OjpkaXNhYmxlKToK
KyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckRlYnVnZ2VyQWdlbnQ6OnNldEJyZWFrcG9pbnRC
eVVybCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JEZWJ1Z2dlckFnZW50OjpyZW1vdmVC
cmVha3BvaW50KToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckRlYnVnZ2VyQWdlbnQ6OmRp
ZFBhcnNlU291cmNlKToKKyAgICAgICAgRGVidWdnZXJBZ2VudFN0YXRlOjpqYXZhU2NyaXB0QnJl
YWtwb2ludHMgLT4gbV9qYXZhU2NyaXB0QnJlYWtwb2ludHMuCisKKyAgICAgICAgKiBpbnNwZWN0
b3IvSW5zcGVjdG9yUGFnZUFnZW50Lmg6CisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3RvclBh
Z2VBZ2VudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JQYWdlQWdlbnQ6OmRpc2Fi
bGUpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yUGFnZUFnZW50OjphZGRTY3JpcHRUb0V2
YWx1YXRlT25Mb2FkKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvclBhZ2VBZ2VudDo6cmVt
b3ZlU2NyaXB0VG9FdmFsdWF0ZU9uTG9hZCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JQ
YWdlQWdlbnQ6OmRpZENsZWFyV2luZG93T2JqZWN0SW5Xb3JsZCk6CisgICAgICAgIFBhZ2VBZ2Vu
dFN0YXRlOjpwYWdlQWdlbnRTY3JpcHRzVG9FdmFsdWF0ZU9uTG9hZCAtPiBtX3NjcmlwdHNUb0V2
YWx1YXRlT25Mb2FkLgorICAgICAgICBUaGlzIGlzIGEgbGF6aWx5IGNyZWF0ZWQgSW5zcGVjdG9y
T2JqZWN0IG1lbWJlciB2YXJpYWJsZS4KKworICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JS
ZXNvdXJjZUFnZW50Lmg6CisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3RvclJlc291cmNlQWdl
bnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yUmVzb3VyY2VBZ2VudDo6d2lsbFNl
bmRSZXF1ZXN0KToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvclJlc291cmNlQWdlbnQ6OmRp
c2FibGUpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yUmVzb3VyY2VBZ2VudDo6c2V0RXh0
cmFIVFRQSGVhZGVycyk6CisgICAgICAgIFJlc291cmNlQWdlbnRTdGF0ZTo6ZXh0cmFSZXF1ZXN0
SGVhZGVycyAtPiBtX2V4dHJhUmVxdWVzdEhlYWRlcnMuCisgICAgICAgIFRoaXMgaXMgYSBsYXpp
bHkgY3JlYXRlZCBJbnNwZWN0b3JPYmplY3QgbWVtYmVyIHZhcmlhYmxlLgorCisyMDEzLTEwLTMw
ICBKb3NlcGggUGVjb3Jhcm8gIDxwZWNvcmFyb0BhcHBsZS5jb20+CisKICAgICAgICAgV2ViIElu
c3BlY3RvcjogUmVtb3ZlIGJhc2ljIHVzZXMgb2YgSW5zcGVjdG9yU3RhdGUgZnJvbSBhZ2VudHMK
ICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyMzUzNAog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRE9NRGVidWdn
ZXJBZ2VudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRE9NRGVidWdn
ZXJBZ2VudC5jcHAKaW5kZXggZGI4Y2M1MC4uNjgwYjRjYiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckRPTURlYnVnZ2VyQWdlbnQuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JET01EZWJ1Z2dlckFnZW50LmNwcApAQCAtNjQs
MTEgKzY0LDYgQEAgY29uc3QgaW50IGRvbUJyZWFrcG9pbnREZXJpdmVkVHlwZVNoaWZ0ID0gMTY7
CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotbmFtZXNwYWNlIERPTURlYnVnZ2VyQWdlbnRTdGF0
ZSB7Ci1zdGF0aWMgY29uc3QgY2hhciBldmVudExpc3RlbmVyQnJlYWtwb2ludHNbXSA9ICJldmVu
dExpc3RlbmVyQnJlYWtwb2ludHMiOwotc3RhdGljIGNvbnN0IGNoYXIgeGhyQnJlYWtwb2ludHNb
XSA9ICJ4aHJCcmVha3BvaW50cyI7Ci19Ci0KIFBhc3NPd25QdHI8SW5zcGVjdG9yRE9NRGVidWdn
ZXJBZ2VudD4gSW5zcGVjdG9yRE9NRGVidWdnZXJBZ2VudDo6Y3JlYXRlKEluc3RydW1lbnRpbmdB
Z2VudHMqIGluc3RydW1lbnRpbmdBZ2VudHMsIEluc3BlY3RvckNvbXBvc2l0ZVN0YXRlKiBpbnNw
ZWN0b3JTdGF0ZSwgSW5zcGVjdG9yRE9NQWdlbnQqIGRvbUFnZW50LCBJbnNwZWN0b3JEZWJ1Z2dl
ckFnZW50KiBkZWJ1Z2dlckFnZW50LCBJbnNwZWN0b3JBZ2VudCogaW5zcGVjdG9yQWdlbnQpCiB7
CiAgICAgcmV0dXJuIGFkb3B0UHRyKG5ldyBJbnNwZWN0b3JET01EZWJ1Z2dlckFnZW50KGluc3Ry
dW1lbnRpbmdBZ2VudHMsIGluc3BlY3RvclN0YXRlLCBkb21BZ2VudCwgZGVidWdnZXJBZ2VudCwg
aW5zcGVjdG9yQWdlbnQpKTsKQEAgLTc4LDYgKzczLDggQEAgSW5zcGVjdG9yRE9NRGVidWdnZXJB
Z2VudDo6SW5zcGVjdG9yRE9NRGVidWdnZXJBZ2VudChJbnN0cnVtZW50aW5nQWdlbnRzKiBpbnN0
cnUKICAgICA6IEluc3BlY3RvckJhc2VBZ2VudDxJbnNwZWN0b3JET01EZWJ1Z2dlckFnZW50Pigi
RE9NRGVidWdnZXIiLCBpbnN0cnVtZW50aW5nQWdlbnRzLCBpbnNwZWN0b3JTdGF0ZSkKICAgICAs
IG1fZG9tQWdlbnQoZG9tQWdlbnQpCiAgICAgLCBtX2RlYnVnZ2VyQWdlbnQoZGVidWdnZXJBZ2Vu
dCkKKyAgICAsIG1fZXZlbnRMaXN0ZW5lckJyZWFrcG9pbnRzKEluc3BlY3Rvck9iamVjdDo6Y3Jl
YXRlKCkpCisgICAgLCBtX3hockJyZWFrcG9pbnRzKEluc3BlY3Rvck9iamVjdDo6Y3JlYXRlKCkp
CiAgICAgLCBtX3BhdXNlSW5OZXh0RXZlbnRMaXN0ZW5lcihmYWxzZSkKICAgICAsIG1fcGF1c2VP
bkFsbFhIUnNFbmFibGVkKGZhbHNlKQogewpAQCAtMTUwLDkgKzE0Nyw3IEBAIHZvaWQgSW5zcGVj
dG9yRE9NRGVidWdnZXJBZ2VudDo6c2V0QnJlYWtwb2ludChFcnJvclN0cmluZyogZXJyb3IsIGNv
bnN0IFN0cmluZyYKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIFJlZlB0cjxJbnNwZWN0
b3JPYmplY3Q+IGV2ZW50TGlzdGVuZXJCcmVha3BvaW50cyA9IG1fc3RhdGUtPmdldE9iamVjdChE
T01EZWJ1Z2dlckFnZW50U3RhdGU6OmV2ZW50TGlzdGVuZXJCcmVha3BvaW50cyk7Ci0gICAgZXZl
bnRMaXN0ZW5lckJyZWFrcG9pbnRzLT5zZXRCb29sZWFuKGV2ZW50TmFtZSwgdHJ1ZSk7Ci0gICAg
bV9zdGF0ZS0+c2V0T2JqZWN0KERPTURlYnVnZ2VyQWdlbnRTdGF0ZTo6ZXZlbnRMaXN0ZW5lckJy
ZWFrcG9pbnRzLCBldmVudExpc3RlbmVyQnJlYWtwb2ludHMpOworICAgIG1fZXZlbnRMaXN0ZW5l
ckJyZWFrcG9pbnRzLT5zZXRCb29sZWFuKGV2ZW50TmFtZSwgdHJ1ZSk7CiB9CiAKIHZvaWQgSW5z
cGVjdG9yRE9NRGVidWdnZXJBZ2VudDo6cmVtb3ZlRXZlbnRMaXN0ZW5lckJyZWFrcG9pbnQoRXJy
b3JTdHJpbmcqIGVycm9yLCBjb25zdCBTdHJpbmcmIGV2ZW50TmFtZSkKQEAgLTE3Miw5ICsxNjcs
NyBAQCB2b2lkIEluc3BlY3RvckRPTURlYnVnZ2VyQWdlbnQ6OnJlbW92ZUJyZWFrcG9pbnQoRXJy
b3JTdHJpbmcqIGVycm9yLCBjb25zdCBTdHJpbgogICAgICAgICByZXR1cm47CiAgICAgfQogCi0g
ICAgUmVmUHRyPEluc3BlY3Rvck9iamVjdD4gZXZlbnRMaXN0ZW5lckJyZWFrcG9pbnRzID0gbV9z
dGF0ZS0+Z2V0T2JqZWN0KERPTURlYnVnZ2VyQWdlbnRTdGF0ZTo6ZXZlbnRMaXN0ZW5lckJyZWFr
cG9pbnRzKTsKLSAgICBldmVudExpc3RlbmVyQnJlYWtwb2ludHMtPnJlbW92ZShldmVudE5hbWUp
OwotICAgIG1fc3RhdGUtPnNldE9iamVjdChET01EZWJ1Z2dlckFnZW50U3RhdGU6OmV2ZW50TGlz
dGVuZXJCcmVha3BvaW50cywgZXZlbnRMaXN0ZW5lckJyZWFrcG9pbnRzKTsKKyAgICBtX2V2ZW50
TGlzdGVuZXJCcmVha3BvaW50cy0+cmVtb3ZlKGV2ZW50TmFtZSk7CiB9CiAKIHZvaWQgSW5zcGVj
dG9yRE9NRGVidWdnZXJBZ2VudDo6ZGlkSW52YWxpZGF0ZVN0eWxlQXR0cihOb2RlKiBub2RlKQpA
QCAtMzcyLDggKzM2NSw3IEBAIHZvaWQgSW5zcGVjdG9yRE9NRGVidWdnZXJBZ2VudDo6cGF1c2VP
bk5hdGl2ZUV2ZW50SWZOZWVkZWQoYm9vbCBpc0RPTUV2ZW50LCBjb25zCiAgICAgaWYgKG1fcGF1
c2VJbk5leHRFdmVudExpc3RlbmVyKQogICAgICAgICBtX3BhdXNlSW5OZXh0RXZlbnRMaXN0ZW5l
ciA9IGZhbHNlOwogICAgIGVsc2UgewotICAgICAgICBSZWZQdHI8SW5zcGVjdG9yT2JqZWN0PiBl
dmVudExpc3RlbmVyQnJlYWtwb2ludHMgPSBtX3N0YXRlLT5nZXRPYmplY3QoRE9NRGVidWdnZXJB
Z2VudFN0YXRlOjpldmVudExpc3RlbmVyQnJlYWtwb2ludHMpOwotICAgICAgICBpZiAoZXZlbnRM
aXN0ZW5lckJyZWFrcG9pbnRzLT5maW5kKGZ1bGxFdmVudE5hbWUpID09IGV2ZW50TGlzdGVuZXJC
cmVha3BvaW50cy0+ZW5kKCkpCisgICAgICAgIGlmIChtX2V2ZW50TGlzdGVuZXJCcmVha3BvaW50
cy0+ZmluZChmdWxsRXZlbnROYW1lKSA9PSBtX2V2ZW50TGlzdGVuZXJCcmVha3BvaW50cy0+ZW5k
KCkpCiAgICAgICAgICAgICByZXR1cm47CiAgICAgfQogCkBAIC0zOTIsOSArMzg0LDcgQEAgdm9p
ZCBJbnNwZWN0b3JET01EZWJ1Z2dlckFnZW50OjpzZXRYSFJCcmVha3BvaW50KEVycm9yU3RyaW5n
KiwgY29uc3QgU3RyaW5nJiB1cmwKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIFJlZlB0
cjxJbnNwZWN0b3JPYmplY3Q+IHhockJyZWFrcG9pbnRzID0gbV9zdGF0ZS0+Z2V0T2JqZWN0KERP
TURlYnVnZ2VyQWdlbnRTdGF0ZTo6eGhyQnJlYWtwb2ludHMpOwotICAgIHhockJyZWFrcG9pbnRz
LT5zZXRCb29sZWFuKHVybCwgdHJ1ZSk7Ci0gICAgbV9zdGF0ZS0+c2V0T2JqZWN0KERPTURlYnVn
Z2VyQWdlbnRTdGF0ZTo6eGhyQnJlYWtwb2ludHMsIHhockJyZWFrcG9pbnRzKTsKKyAgICBtX3ho
ckJyZWFrcG9pbnRzLT5zZXRCb29sZWFuKHVybCwgdHJ1ZSk7CiB9CiAKIHZvaWQgSW5zcGVjdG9y
RE9NRGVidWdnZXJBZ2VudDo6cmVtb3ZlWEhSQnJlYWtwb2ludChFcnJvclN0cmluZyosIGNvbnN0
IFN0cmluZyYgdXJsKQpAQCAtNDA0LDkgKzM5NCw3IEBAIHZvaWQgSW5zcGVjdG9yRE9NRGVidWdn
ZXJBZ2VudDo6cmVtb3ZlWEhSQnJlYWtwb2ludChFcnJvclN0cmluZyosIGNvbnN0IFN0cmluZyYK
ICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIFJlZlB0cjxJbnNwZWN0b3JPYmplY3Q+IHho
ckJyZWFrcG9pbnRzID0gbV9zdGF0ZS0+Z2V0T2JqZWN0KERPTURlYnVnZ2VyQWdlbnRTdGF0ZTo6
eGhyQnJlYWtwb2ludHMpOwotICAgIHhockJyZWFrcG9pbnRzLT5yZW1vdmUodXJsKTsKLSAgICBt
X3N0YXRlLT5zZXRPYmplY3QoRE9NRGVidWdnZXJBZ2VudFN0YXRlOjp4aHJCcmVha3BvaW50cywg
eGhyQnJlYWtwb2ludHMpOworICAgIG1feGhyQnJlYWtwb2ludHMtPnJlbW92ZSh1cmwpOwogfQog
CiB2b2lkIEluc3BlY3RvckRPTURlYnVnZ2VyQWdlbnQ6OndpbGxTZW5kWE1MSHR0cFJlcXVlc3Qo
Y29uc3QgU3RyaW5nJiB1cmwpCkBAIC00MTUsOCArNDAzLDcgQEAgdm9pZCBJbnNwZWN0b3JET01E
ZWJ1Z2dlckFnZW50Ojp3aWxsU2VuZFhNTEh0dHBSZXF1ZXN0KGNvbnN0IFN0cmluZyYgdXJsKQog
ICAgIGlmIChtX3BhdXNlT25BbGxYSFJzRW5hYmxlZCkKICAgICAgICAgYnJlYWtwb2ludFVSTCA9
ICIiOwogICAgIGVsc2UgewotICAgICAgICBSZWZQdHI8SW5zcGVjdG9yT2JqZWN0PiB4aHJCcmVh
a3BvaW50cyA9IG1fc3RhdGUtPmdldE9iamVjdChET01EZWJ1Z2dlckFnZW50U3RhdGU6OnhockJy
ZWFrcG9pbnRzKTsKLSAgICAgICAgZm9yIChJbnNwZWN0b3JPYmplY3Q6Oml0ZXJhdG9yIGl0ID0g
eGhyQnJlYWtwb2ludHMtPmJlZ2luKCk7IGl0ICE9IHhockJyZWFrcG9pbnRzLT5lbmQoKTsgKytp
dCkgeworICAgICAgICBmb3IgKEluc3BlY3Rvck9iamVjdDo6aXRlcmF0b3IgaXQgPSBtX3hockJy
ZWFrcG9pbnRzLT5iZWdpbigpOyBpdCAhPSBtX3hockJyZWFrcG9pbnRzLT5lbmQoKTsgKytpdCkg
ewogICAgICAgICAgICAgaWYgKHVybC5jb250YWlucyhpdC0+a2V5KSkgewogICAgICAgICAgICAg
ICAgIGJyZWFrcG9pbnRVUkwgPSBpdC0+a2V5OwogICAgICAgICAgICAgICAgIGJyZWFrOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckRPTURlYnVnZ2VyQWdl
bnQuaCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JET01EZWJ1Z2dlckFnZW50
LmgKaW5kZXggMWRhYTM2Ny4uNWE4MjcyNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL0luc3BlY3RvckRPTURlYnVnZ2VyQWdlbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9p
bnNwZWN0b3IvSW5zcGVjdG9yRE9NRGVidWdnZXJBZ2VudC5oCkBAIC0xMDYsNiArMTA2LDggQEAg
cHJpdmF0ZToKICAgICBJbnNwZWN0b3JET01BZ2VudCogbV9kb21BZ2VudDsKICAgICBJbnNwZWN0
b3JEZWJ1Z2dlckFnZW50KiBtX2RlYnVnZ2VyQWdlbnQ7CiAgICAgSGFzaE1hcDxOb2RlKiwgdWlu
dDMyX3Q+IG1fZG9tQnJlYWtwb2ludHM7CisgICAgUmVmUHRyPEluc3BlY3Rvck9iamVjdD4gbV9l
dmVudExpc3RlbmVyQnJlYWtwb2ludHM7CisgICAgUmVmUHRyPEluc3BlY3Rvck9iamVjdD4gbV94
aHJCcmVha3BvaW50czsKICAgICBib29sIG1fcGF1c2VJbk5leHRFdmVudExpc3RlbmVyOwogICAg
IGJvb2wgbV9wYXVzZU9uQWxsWEhSc0VuYWJsZWQ7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckRlYnVnZ2VyQWdlbnQuY3BwIGIvU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL0luc3BlY3RvckRlYnVnZ2VyQWdlbnQuY3BwCmluZGV4IDQ1YzU3ZWEuLmRm
NTM4M2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JEZWJ1
Z2dlckFnZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRGVi
dWdnZXJBZ2VudC5jcHAKQEAgLTUzLDEwICs1Myw2IEBAIHVzaW5nIFdlYkNvcmU6OlR5cGVCdWls
ZGVyOjpSdW50aW1lOjpSZW1vdGVPYmplY3Q7CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotbmFt
ZXNwYWNlIERlYnVnZ2VyQWdlbnRTdGF0ZSB7Ci1zdGF0aWMgY29uc3QgY2hhciBqYXZhU2NyaXB0
QnJlYWtwb2ludHNbXSA9ICJqYXZhU2NyaXB0QnJlYWtvcGludHMiOwotfTsKLQogY29uc3QgY2hh
ciogSW5zcGVjdG9yRGVidWdnZXJBZ2VudDo6YmFja3RyYWNlT2JqZWN0R3JvdXAgPSAiYmFja3Ry
YWNlIjsKIAogSW5zcGVjdG9yRGVidWdnZXJBZ2VudDo6SW5zcGVjdG9yRGVidWdnZXJBZ2VudChJ
bnN0cnVtZW50aW5nQWdlbnRzKiBpbnN0cnVtZW50aW5nQWdlbnRzLCBJbnNwZWN0b3JDb21wb3Np
dGVTdGF0ZSogaW5zcGVjdG9yU3RhdGUsIEluamVjdGVkU2NyaXB0TWFuYWdlciogaW5qZWN0ZWRT
Y3JpcHRNYW5hZ2VyKQpAQCAtNjQsNiArNjAsOCBAQCBJbnNwZWN0b3JEZWJ1Z2dlckFnZW50OjpJ
bnNwZWN0b3JEZWJ1Z2dlckFnZW50KEluc3RydW1lbnRpbmdBZ2VudHMqIGluc3RydW1lbnRpbgog
ICAgICwgbV9pbmplY3RlZFNjcmlwdE1hbmFnZXIoaW5qZWN0ZWRTY3JpcHRNYW5hZ2VyKQogICAg
ICwgbV9mcm9udGVuZCgwKQogICAgICwgbV9wYXVzZWRTY3JpcHRTdGF0ZSgwKQorICAgICwgbV9q
YXZhU2NyaXB0QnJlYWtwb2ludHMoSW5zcGVjdG9yT2JqZWN0OjpjcmVhdGUoKSkKKyAgICAsIG1f
ZW5hYmxlZChmYWxzZSkKICAgICAsIG1famF2YVNjcmlwdFBhdXNlU2NoZWR1bGVkKGZhbHNlKQog
ICAgICwgbV9saXN0ZW5lcigwKQogewpAQCAtOTIsNyArOTAsNyBAQCB2b2lkIEluc3BlY3RvckRl
YnVnZ2VyQWdlbnQ6OmVuYWJsZSgpCiAKIHZvaWQgSW5zcGVjdG9yRGVidWdnZXJBZ2VudDo6ZGlz
YWJsZSgpCiB7Ci0gICAgbV9zdGF0ZS0+c2V0T2JqZWN0KERlYnVnZ2VyQWdlbnRTdGF0ZTo6amF2
YVNjcmlwdEJyZWFrcG9pbnRzLCBJbnNwZWN0b3JPYmplY3Q6OmNyZWF0ZSgpKTsKKyAgICBtX2ph
dmFTY3JpcHRCcmVha3BvaW50cyA9IEluc3BlY3Rvck9iamVjdDo6Y3JlYXRlKCk7CiAgICAgbV9p
bnN0cnVtZW50aW5nQWdlbnRzLT5zZXRJbnNwZWN0b3JEZWJ1Z2dlckFnZW50KDApOwogCiAgICAg
c3RvcExpc3RlbmluZ1NjcmlwdERlYnVnU2VydmVyKCk7CkBAIC0yNzgsOCArMjc2LDcgQEAgdm9p
ZCBJbnNwZWN0b3JEZWJ1Z2dlckFnZW50OjpzZXRCcmVha3BvaW50QnlVcmwoRXJyb3JTdHJpbmcq
IGVycm9yU3RyaW5nLCBpbnQgbGkKICAgICBib29sIGlzUmVnZXggPSBvcHRpb25hbFVSTFJlZ2V4
OwogCiAgICAgU3RyaW5nIGJyZWFrcG9pbnRJZCA9IChpc1JlZ2V4ID8gIi8iICsgdXJsICsgIi8i
IDogdXJsKSArICc6JyArIFN0cmluZzo6bnVtYmVyKGxpbmVOdW1iZXIpICsgJzonICsgU3RyaW5n
OjpudW1iZXIoY29sdW1uTnVtYmVyKTsKLSAgICBSZWZQdHI8SW5zcGVjdG9yT2JqZWN0PiBicmVh
a3BvaW50c0Nvb2tpZSA9IG1fc3RhdGUtPmdldE9iamVjdChEZWJ1Z2dlckFnZW50U3RhdGU6Omph
dmFTY3JpcHRCcmVha3BvaW50cyk7Ci0gICAgaWYgKGJyZWFrcG9pbnRzQ29va2llLT5maW5kKGJy
ZWFrcG9pbnRJZCkgIT0gYnJlYWtwb2ludHNDb29raWUtPmVuZCgpKSB7CisgICAgaWYgKG1famF2
YVNjcmlwdEJyZWFrcG9pbnRzLT5maW5kKGJyZWFrcG9pbnRJZCkgIT0gbV9qYXZhU2NyaXB0QnJl
YWtwb2ludHMtPmVuZCgpKSB7CiAgICAgICAgICplcnJvclN0cmluZyA9ICJCcmVha3BvaW50IGF0
IHNwZWNpZmllZCBsb2NhdGlvbiBhbHJlYWR5IGV4aXN0cy4iOwogICAgICAgICByZXR1cm47CiAg
ICAgfQpAQCAtMjk3LDggKzI5NCw3IEBAIHZvaWQgSW5zcGVjdG9yRGVidWdnZXJBZ2VudDo6c2V0
QnJlYWtwb2ludEJ5VXJsKEVycm9yU3RyaW5nKiBlcnJvclN0cmluZywgaW50IGxpCiAgICAgaWYg
KCFicmVha3BvaW50QWN0aW9uc0Zyb21Qcm90b2NvbChlcnJvclN0cmluZywgYWN0aW9ucywgJmJy
ZWFrcG9pbnRBY3Rpb25zKSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgYnJlYWtwb2ludHNDb29r
aWUtPnNldE9iamVjdChicmVha3BvaW50SWQsIGJ1aWxkT2JqZWN0Rm9yQnJlYWtwb2ludENvb2tp
ZSh1cmwsIGxpbmVOdW1iZXIsIGNvbHVtbk51bWJlciwgY29uZGl0aW9uLCBhY3Rpb25zLCBpc1Jl
Z2V4LCBhdXRvQ29udGludWUpKTsKLSAgICBtX3N0YXRlLT5zZXRPYmplY3QoRGVidWdnZXJBZ2Vu
dFN0YXRlOjpqYXZhU2NyaXB0QnJlYWtwb2ludHMsIGJyZWFrcG9pbnRzQ29va2llKTsKKyAgICBt
X2phdmFTY3JpcHRCcmVha3BvaW50cy0+c2V0T2JqZWN0KGJyZWFrcG9pbnRJZCwgYnVpbGRPYmpl
Y3RGb3JCcmVha3BvaW50Q29va2llKHVybCwgbGluZU51bWJlciwgY29sdW1uTnVtYmVyLCBjb25k
aXRpb24sIGFjdGlvbnMsIGlzUmVnZXgsIGF1dG9Db250aW51ZSkpOwogCiAgICAgU2NyaXB0QnJl
YWtwb2ludCBicmVha3BvaW50KGxpbmVOdW1iZXIsIGNvbHVtbk51bWJlciwgY29uZGl0aW9uLCBi
cmVha3BvaW50QWN0aW9ucywgYXV0b0NvbnRpbnVlKTsKICAgICBmb3IgKFNjcmlwdHNNYXA6Oml0
ZXJhdG9yIGl0ID0gbV9zY3JpcHRzLmJlZ2luKCk7IGl0ICE9IG1fc2NyaXB0cy5lbmQoKTsgKytp
dCkgewpAQCAtMzYyLDkgKzM1OCw3IEBAIHZvaWQgSW5zcGVjdG9yRGVidWdnZXJBZ2VudDo6c2V0
QnJlYWtwb2ludChFcnJvclN0cmluZyogZXJyb3JTdHJpbmcsIGNvbnN0IFJlZlB0CiAKIHZvaWQg
SW5zcGVjdG9yRGVidWdnZXJBZ2VudDo6cmVtb3ZlQnJlYWtwb2ludChFcnJvclN0cmluZyosIGNv
bnN0IFN0cmluZyYgYnJlYWtwb2ludElkKQogewotICAgIFJlZlB0cjxJbnNwZWN0b3JPYmplY3Q+
IGJyZWFrcG9pbnRzQ29va2llID0gbV9zdGF0ZS0+Z2V0T2JqZWN0KERlYnVnZ2VyQWdlbnRTdGF0
ZTo6amF2YVNjcmlwdEJyZWFrcG9pbnRzKTsKLSAgICBicmVha3BvaW50c0Nvb2tpZS0+cmVtb3Zl
KGJyZWFrcG9pbnRJZCk7Ci0gICAgbV9zdGF0ZS0+c2V0T2JqZWN0KERlYnVnZ2VyQWdlbnRTdGF0
ZTo6amF2YVNjcmlwdEJyZWFrcG9pbnRzLCBicmVha3BvaW50c0Nvb2tpZSk7CisgICAgbV9qYXZh
U2NyaXB0QnJlYWtwb2ludHMtPnJlbW92ZShicmVha3BvaW50SWQpOwogCiAgICAgQnJlYWtwb2lu
dElkVG9EZWJ1Z1NlcnZlckJyZWFrcG9pbnRJZHNNYXA6Oml0ZXJhdG9yIGRlYnVnU2VydmVyQnJl
YWtwb2ludElkc0l0ZXJhdG9yID0gbV9icmVha3BvaW50SWRUb0RlYnVnU2VydmVyQnJlYWtwb2lu
dElkcy5maW5kKGJyZWFrcG9pbnRJZCk7CiAgICAgaWYgKGRlYnVnU2VydmVyQnJlYWtwb2ludElk
c0l0ZXJhdG9yID09IG1fYnJlYWtwb2ludElkVG9EZWJ1Z1NlcnZlckJyZWFrcG9pbnRJZHMuZW5k
KCkpCkBAIC03MDIsOCArNjk2LDcgQEAgdm9pZCBJbnNwZWN0b3JEZWJ1Z2dlckFnZW50OjpkaWRQ
YXJzZVNvdXJjZShjb25zdCBTdHJpbmcmIHNjcmlwdElkLCBjb25zdCBTY3JpcHQKICAgICBpZiAo
c2NyaXB0VVJMLmlzRW1wdHkoKSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgUmVmUHRyPEluc3Bl
Y3Rvck9iamVjdD4gYnJlYWtwb2ludHNDb29raWUgPSBtX3N0YXRlLT5nZXRPYmplY3QoRGVidWdn
ZXJBZ2VudFN0YXRlOjpqYXZhU2NyaXB0QnJlYWtwb2ludHMpOwotICAgIGZvciAoSW5zcGVjdG9y
T2JqZWN0OjppdGVyYXRvciBpdCA9IGJyZWFrcG9pbnRzQ29va2llLT5iZWdpbigpOyBpdCAhPSBi
cmVha3BvaW50c0Nvb2tpZS0+ZW5kKCk7ICsraXQpIHsKKyAgICBmb3IgKEluc3BlY3Rvck9iamVj
dDo6aXRlcmF0b3IgaXQgPSBtX2phdmFTY3JpcHRCcmVha3BvaW50cy0+YmVnaW4oKTsgaXQgIT0g
bV9qYXZhU2NyaXB0QnJlYWtwb2ludHMtPmVuZCgpOyArK2l0KSB7CiAgICAgICAgIFJlZlB0cjxJ
bnNwZWN0b3JPYmplY3Q+IGJyZWFrcG9pbnRPYmplY3QgPSBpdC0+dmFsdWUtPmFzT2JqZWN0KCk7
CiAgICAgICAgIGJvb2wgaXNSZWdleDsKICAgICAgICAgYnJlYWtwb2ludE9iamVjdC0+Z2V0Qm9v
bGVhbigiaXNSZWdleCIsICZpc1JlZ2V4KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2lu
c3BlY3Rvci9JbnNwZWN0b3JEZWJ1Z2dlckFnZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0
b3IvSW5zcGVjdG9yRGVidWdnZXJBZ2VudC5oCmluZGV4IGY4ZjQzZDkuLjE2YmY0ZTYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JEZWJ1Z2dlckFnZW50LmgK
KysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckRlYnVnZ2VyQWdlbnQuaApA
QCAtMTc0LDYgKzE3NCw3IEBAIHByaXZhdGU6CiAgICAgU3RyaW5nIG1fY29udGludWVUb0xvY2F0
aW9uQnJlYWtwb2ludElkOwogICAgIEluc3BlY3RvckZyb250ZW5kOjpEZWJ1Z2dlcjo6UmVhc29u
OjpFbnVtIG1fYnJlYWtSZWFzb247CiAgICAgUmVmUHRyPEluc3BlY3Rvck9iamVjdD4gbV9icmVh
a0F1eERhdGE7CisgICAgUmVmUHRyPEluc3BlY3Rvck9iamVjdD4gbV9qYXZhU2NyaXB0QnJlYWtw
b2ludHM7CiAgICAgYm9vbCBtX2VuYWJsZWQ7CiAgICAgYm9vbCBtX2phdmFTY3JpcHRQYXVzZVNj
aGVkdWxlZDsKICAgICBMaXN0ZW5lciogbV9saXN0ZW5lcjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JQYWdlQWdlbnQuY3BwIGIvU291cmNlL1dlYkNvcmUv
aW5zcGVjdG9yL0luc3BlY3RvclBhZ2VBZ2VudC5jcHAKaW5kZXggZmIyYmVlYi4uODA0NGZlNyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclBhZ2VBZ2VudC5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclBhZ2VBZ2VudC5jcHAK
QEAgLTkwLDEwICs5MCw2IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotbmFtZXNwYWNlIFBh
Z2VBZ2VudFN0YXRlIHsKLXN0YXRpYyBjb25zdCBjaGFyIHBhZ2VBZ2VudFNjcmlwdHNUb0V2YWx1
YXRlT25Mb2FkW10gPSAicGFnZUFnZW50U2NyaXB0c1RvRXZhbHVhdGVPbkxvYWQiOwotfQotCiBz
dGF0aWMgYm9vbCBkZWNvZGVCdWZmZXIoY29uc3QgY2hhciogYnVmZmVyLCB1bnNpZ25lZCBzaXpl
LCBjb25zdCBTdHJpbmcmIHRleHRFbmNvZGluZ05hbWUsIFN0cmluZyogcmVzdWx0KQogewogICAg
IGlmIChidWZmZXIpIHsKQEAgLTQwNiw3ICs0MDIsNyBAQCB2b2lkIEluc3BlY3RvclBhZ2VBZ2Vu
dDo6ZW5hYmxlKEVycm9yU3RyaW5nKikKIHZvaWQgSW5zcGVjdG9yUGFnZUFnZW50OjpkaXNhYmxl
KEVycm9yU3RyaW5nKikKIHsKICAgICBtX2VuYWJsZWQgPSBmYWxzZTsKLSAgICBtX3N0YXRlLT5y
ZW1vdmUoUGFnZUFnZW50U3RhdGU6OnBhZ2VBZ2VudFNjcmlwdHNUb0V2YWx1YXRlT25Mb2FkKTsK
KyAgICBtX3NjcmlwdHNUb0V2YWx1YXRlT25Mb2FkLmNsZWFyKCk7CiAgICAgbV9pbnN0cnVtZW50
aW5nQWdlbnRzLT5zZXRJbnNwZWN0b3JQYWdlQWdlbnQoMCk7CiAKICAgICBzZXRTY3JpcHRFeGVj
dXRpb25EaXNhYmxlZCgwLCBtX29yaWdpbmFsU2NyaXB0RXhlY3V0aW9uRGlzYWJsZWQpOwpAQCAt
NDI5LDI3ICs0MjUsMjYgQEAgdm9pZCBJbnNwZWN0b3JQYWdlQWdlbnQ6OmRpc2FibGUoRXJyb3JT
dHJpbmcqKQogCiB2b2lkIEluc3BlY3RvclBhZ2VBZ2VudDo6YWRkU2NyaXB0VG9FdmFsdWF0ZU9u
TG9hZChFcnJvclN0cmluZyosIGNvbnN0IFN0cmluZyYgc291cmNlLCBTdHJpbmcqIGlkZW50aWZp
ZXIpCiB7Ci0gICAgUmVmUHRyPEluc3BlY3Rvck9iamVjdD4gc2NyaXB0cyA9IG1fc3RhdGUtPmdl
dE9iamVjdChQYWdlQWdlbnRTdGF0ZTo6cGFnZUFnZW50U2NyaXB0c1RvRXZhbHVhdGVPbkxvYWQp
OwotICAgIGlmICghc2NyaXB0cykgewotICAgICAgICBzY3JpcHRzID0gSW5zcGVjdG9yT2JqZWN0
OjpjcmVhdGUoKTsKLSAgICAgICAgbV9zdGF0ZS0+c2V0T2JqZWN0KFBhZ2VBZ2VudFN0YXRlOjpw
YWdlQWdlbnRTY3JpcHRzVG9FdmFsdWF0ZU9uTG9hZCwgc2NyaXB0cyk7Ci0gICAgfQorICAgIGlm
ICghbV9zY3JpcHRzVG9FdmFsdWF0ZU9uTG9hZCkKKyAgICAgICAgbV9zY3JpcHRzVG9FdmFsdWF0
ZU9uTG9hZCA9IEluc3BlY3Rvck9iamVjdDo6Y3JlYXRlKCk7CisKICAgICAvLyBBc3N1cmUgd2Ug
ZG9uJ3Qgb3ZlcnJpZGUgZXhpc3RpbmcgaWRzIC0tIG1fbGFzdFNjcmlwdElkZW50aWZpZXIgY291
bGQgZ2V0IG91dCBvZiBzeW5jIFdSVCBhY3R1YWwKICAgICAvLyBzY3JpcHRzIG9uY2Ugd2UgcmVz
dG9yZWQgdGhlIHNjcmlwdHMgZnJvbSB0aGUgY29va2llIGR1cmluZyBuYXZpZ2F0aW9uLgogICAg
IGRvIHsKICAgICAgICAgKmlkZW50aWZpZXIgPSBTdHJpbmc6Om51bWJlcigrK21fbGFzdFNjcmlw
dElkZW50aWZpZXIpOwotICAgIH0gd2hpbGUgKHNjcmlwdHMtPmZpbmQoKmlkZW50aWZpZXIpICE9
IHNjcmlwdHMtPmVuZCgpKTsKLSAgICBzY3JpcHRzLT5zZXRTdHJpbmcoKmlkZW50aWZpZXIsIHNv
dXJjZSk7CisgICAgfSB3aGlsZSAobV9zY3JpcHRzVG9FdmFsdWF0ZU9uTG9hZC0+ZmluZCgqaWRl
bnRpZmllcikgIT0gbV9zY3JpcHRzVG9FdmFsdWF0ZU9uTG9hZC0+ZW5kKCkpOworCisgICAgbV9z
Y3JpcHRzVG9FdmFsdWF0ZU9uTG9hZC0+c2V0U3RyaW5nKCppZGVudGlmaWVyLCBzb3VyY2UpOwog
fQogCiB2b2lkIEluc3BlY3RvclBhZ2VBZ2VudDo6cmVtb3ZlU2NyaXB0VG9FdmFsdWF0ZU9uTG9h
ZChFcnJvclN0cmluZyogZXJyb3IsIGNvbnN0IFN0cmluZyYgaWRlbnRpZmllcikKIHsKLSAgICBS
ZWZQdHI8SW5zcGVjdG9yT2JqZWN0PiBzY3JpcHRzID0gbV9zdGF0ZS0+Z2V0T2JqZWN0KFBhZ2VB
Z2VudFN0YXRlOjpwYWdlQWdlbnRTY3JpcHRzVG9FdmFsdWF0ZU9uTG9hZCk7Ci0gICAgaWYgKCFz
Y3JpcHRzIHx8IHNjcmlwdHMtPmZpbmQoaWRlbnRpZmllcikgPT0gc2NyaXB0cy0+ZW5kKCkpIHsK
KyAgICBpZiAoIW1fc2NyaXB0c1RvRXZhbHVhdGVPbkxvYWQgfHwgbV9zY3JpcHRzVG9FdmFsdWF0
ZU9uTG9hZC0+ZmluZChpZGVudGlmaWVyKSA9PSBtX3NjcmlwdHNUb0V2YWx1YXRlT25Mb2FkLT5l
bmQoKSkgewogICAgICAgICAqZXJyb3IgPSAiU2NyaXB0IG5vdCBmb3VuZCI7CiAgICAgICAgIHJl
dHVybjsKICAgICB9Ci0gICAgc2NyaXB0cy0+cmVtb3ZlKGlkZW50aWZpZXIpOworCisgICAgbV9z
Y3JpcHRzVG9FdmFsdWF0ZU9uTG9hZC0+cmVtb3ZlKGlkZW50aWZpZXIpOwogfQogCiB2b2lkIElu
c3BlY3RvclBhZ2VBZ2VudDo6cmVsb2FkKEVycm9yU3RyaW5nKiwgY29uc3QgYm9vbCogY29uc3Qg
b3B0aW9uYWxJZ25vcmVDYWNoZSwgY29uc3QgU3RyaW5nKiBvcHRpb25hbFNjcmlwdFRvRXZhbHVh
dGVPbkxvYWQsIGNvbnN0IFN0cmluZyogb3B0aW9uYWxTY3JpcHRQcmVwcm9jZXNzb3IpCkBAIC04
MjgsMTUgKzgyMywxNSBAQCB2b2lkIEluc3BlY3RvclBhZ2VBZ2VudDo6ZGlkQ2xlYXJXaW5kb3dP
YmplY3RJbldvcmxkKEZyYW1lKiBmcmFtZSwgRE9NV3JhcHBlcldvcgogICAgIGlmICghbV9mcm9u
dGVuZCkKICAgICAgICAgcmV0dXJuOwogCi0gICAgUmVmUHRyPEluc3BlY3Rvck9iamVjdD4gc2Ny
aXB0cyA9IG1fc3RhdGUtPmdldE9iamVjdChQYWdlQWdlbnRTdGF0ZTo6cGFnZUFnZW50U2NyaXB0
c1RvRXZhbHVhdGVPbkxvYWQpOwotICAgIGlmIChzY3JpcHRzKSB7Ci0gICAgICAgIEluc3BlY3Rv
ck9iamVjdDo6Y29uc3RfaXRlcmF0b3IgZW5kID0gc2NyaXB0cy0+ZW5kKCk7Ci0gICAgICAgIGZv
ciAoSW5zcGVjdG9yT2JqZWN0Ojpjb25zdF9pdGVyYXRvciBpdCA9IHNjcmlwdHMtPmJlZ2luKCk7
IGl0ICE9IGVuZDsgKytpdCkgeworICAgIGlmIChtX3NjcmlwdHNUb0V2YWx1YXRlT25Mb2FkKSB7
CisgICAgICAgIEluc3BlY3Rvck9iamVjdDo6Y29uc3RfaXRlcmF0b3IgZW5kID0gbV9zY3JpcHRz
VG9FdmFsdWF0ZU9uTG9hZC0+ZW5kKCk7CisgICAgICAgIGZvciAoSW5zcGVjdG9yT2JqZWN0Ojpj
b25zdF9pdGVyYXRvciBpdCA9IG1fc2NyaXB0c1RvRXZhbHVhdGVPbkxvYWQtPmJlZ2luKCk7IGl0
ICE9IGVuZDsgKytpdCkgewogICAgICAgICAgICAgU3RyaW5nIHNjcmlwdFRleHQ7CiAgICAgICAg
ICAgICBpZiAoaXQtPnZhbHVlLT5hc1N0cmluZygmc2NyaXB0VGV4dCkpCiAgICAgICAgICAgICAg
ICAgZnJhbWUtPnNjcmlwdCgpLmV4ZWN1dGVTY3JpcHQoc2NyaXB0VGV4dCk7CiAgICAgICAgIH0K
ICAgICB9CisKICAgICBpZiAoIW1fc2NyaXB0VG9FdmFsdWF0ZU9uTG9hZE9uY2UuaXNFbXB0eSgp
KQogICAgICAgICBmcmFtZS0+c2NyaXB0KCkuZXhlY3V0ZVNjcmlwdChtX3NjcmlwdFRvRXZhbHVh
dGVPbkxvYWRPbmNlKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9J
bnNwZWN0b3JQYWdlQWdlbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JQ
YWdlQWdlbnQuaAppbmRleCA0ODAxYzMxLi43MGIxMTBiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yUGFnZUFnZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUv
aW5zcGVjdG9yL0luc3BlY3RvclBhZ2VBZ2VudC5oCkBAIC0yMTksNiArMjE5LDcgQEAgcHJpdmF0
ZToKICAgICBib29sIG1faWdub3JlU2NyaXB0c0VuYWJsZWROb3RpZmljYXRpb247CiAgICAgYm9v
bCBtX3Nob3dQYWludFJlY3RzOwogICAgIFN0cmluZyBtX2VtdWxhdGVkTWVkaWE7CisgICAgUmVm
UHRyPEluc3BlY3Rvck9iamVjdD4gbV9zY3JpcHRzVG9FdmFsdWF0ZU9uTG9hZDsKICAgICBSZWZQ
dHI8R2VvbG9jYXRpb25Qb3NpdGlvbj4gbV9nZW9sb2NhdGlvblBvc2l0aW9uOwogICAgIFJlZlB0
cjxHZW9sb2NhdGlvblBvc2l0aW9uPiBtX3BsYXRmb3JtR2VvbG9jYXRpb25Qb3NpdGlvbjsKICAg
ICBSZWZQdHI8RGV2aWNlT3JpZW50YXRpb25EYXRhPiBtX2RldmljZU9yaWVudGF0aW9uOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclJlc291cmNlQWdlbnQu
Y3BwIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclJlc291cmNlQWdlbnQuY3Bw
CmluZGV4IDkyMTgwNWYuLjA4OTBiOTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3Bl
Y3Rvci9JbnNwZWN0b3JSZXNvdXJjZUFnZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNw
ZWN0b3IvSW5zcGVjdG9yUmVzb3VyY2VBZ2VudC5jcHAKQEAgLTc3LDEwICs3Nyw2IEBACiAKIG5h
bWVzcGFjZSBXZWJDb3JlIHsKIAotbmFtZXNwYWNlIFJlc291cmNlQWdlbnRTdGF0ZSB7Ci1zdGF0
aWMgY29uc3QgY2hhciBleHRyYVJlcXVlc3RIZWFkZXJzW10gPSAiZXh0cmFSZXF1ZXN0SGVhZGVy
cyI7Ci19Ci0KIHZvaWQgSW5zcGVjdG9yUmVzb3VyY2VBZ2VudDo6c2V0RnJvbnRlbmQoSW5zcGVj
dG9yRnJvbnRlbmQqIGZyb250ZW5kKQogewogICAgIG1fZnJvbnRlbmQgPSBmcm9udGVuZC0+bmV0
d29yaygpOwpAQCAtMjAwLDkgKzE5Niw5IEBAIHZvaWQgSW5zcGVjdG9yUmVzb3VyY2VBZ2VudDo6
d2lsbFNlbmRSZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRMCiAKICAg
ICBtX3Jlc291cmNlc0RhdGEtPnNldFJlc291cmNlVHlwZShyZXF1ZXN0SWQsIHR5cGUpOwogCi0g
ICAgaWYgKFJlZlB0cjxJbnNwZWN0b3JPYmplY3Q+IGhlYWRlcnMgPSBtX3N0YXRlLT5nZXRPYmpl
Y3QoUmVzb3VyY2VBZ2VudFN0YXRlOjpleHRyYVJlcXVlc3RIZWFkZXJzKSkgewotICAgICAgICBJ
bnNwZWN0b3JPYmplY3Q6OmNvbnN0X2l0ZXJhdG9yIGVuZCA9IGhlYWRlcnMtPmVuZCgpOwotICAg
ICAgICBmb3IgKEluc3BlY3Rvck9iamVjdDo6Y29uc3RfaXRlcmF0b3IgaXQgPSBoZWFkZXJzLT5i
ZWdpbigpOyBpdCAhPSBlbmQ7ICsraXQpIHsKKyAgICBpZiAobV9leHRyYVJlcXVlc3RIZWFkZXJz
KSB7CisgICAgICAgIEluc3BlY3Rvck9iamVjdDo6Y29uc3RfaXRlcmF0b3IgZW5kID0gbV9leHRy
YVJlcXVlc3RIZWFkZXJzLT5lbmQoKTsKKyAgICAgICAgZm9yIChJbnNwZWN0b3JPYmplY3Q6OmNv
bnN0X2l0ZXJhdG9yIGl0ID0gbV9leHRyYVJlcXVlc3RIZWFkZXJzLT5iZWdpbigpOyBpdCAhPSBl
bmQ7ICsraXQpIHsKICAgICAgICAgICAgIFN0cmluZyB2YWx1ZTsKICAgICAgICAgICAgIGlmIChp
dC0+dmFsdWUtPmFzU3RyaW5nKCZ2YWx1ZSkpCiAgICAgICAgICAgICAgICAgcmVxdWVzdC5zZXRI
VFRQSGVhZGVyRmllbGQoaXQtPmtleSwgdmFsdWUpOwpAQCAtNTQ2LDYgKzU0Miw3IEBAIHZvaWQg
SW5zcGVjdG9yUmVzb3VyY2VBZ2VudDo6ZGlzYWJsZShFcnJvclN0cmluZyopCiAgICAgbV91c2Vy
QWdlbnRPdmVycmlkZSA9IFN0cmluZygpOwogICAgIG1faW5zdHJ1bWVudGluZ0FnZW50cy0+c2V0
SW5zcGVjdG9yUmVzb3VyY2VBZ2VudCgwKTsKICAgICBtX3Jlc291cmNlc0RhdGEtPmNsZWFyKCk7
CisgICAgbV9leHRyYVJlcXVlc3RIZWFkZXJzLmNsZWFyKCk7CiB9CiAKIHZvaWQgSW5zcGVjdG9y
UmVzb3VyY2VBZ2VudDo6c2V0VXNlckFnZW50T3ZlcnJpZGUoRXJyb3JTdHJpbmcqLCBjb25zdCBT
dHJpbmcmIHVzZXJBZ2VudCkKQEAgLTU1NSw3ICs1NTIsNyBAQCB2b2lkIEluc3BlY3RvclJlc291
cmNlQWdlbnQ6OnNldFVzZXJBZ2VudE92ZXJyaWRlKEVycm9yU3RyaW5nKiwgY29uc3QgU3RyaW5n
JiB1cwogCiB2b2lkIEluc3BlY3RvclJlc291cmNlQWdlbnQ6OnNldEV4dHJhSFRUUEhlYWRlcnMo
RXJyb3JTdHJpbmcqLCBjb25zdCBSZWZQdHI8SW5zcGVjdG9yT2JqZWN0PiYgaGVhZGVycykKIHsK
LSAgICBtX3N0YXRlLT5zZXRPYmplY3QoUmVzb3VyY2VBZ2VudFN0YXRlOjpleHRyYVJlcXVlc3RI
ZWFkZXJzLCBoZWFkZXJzKTsKKyAgICBtX2V4dHJhUmVxdWVzdEhlYWRlcnMgPSBoZWFkZXJzOwog
fQogCiB2b2lkIEluc3BlY3RvclJlc291cmNlQWdlbnQ6OmdldFJlc3BvbnNlQm9keShFcnJvclN0
cmluZyogZXJyb3JTdHJpbmcsIGNvbnN0IFN0cmluZyYgcmVxdWVzdElkLCBTdHJpbmcqIGNvbnRl
bnQsIGJvb2wqIGJhc2U2NEVuY29kZWQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNw
ZWN0b3IvSW5zcGVjdG9yUmVzb3VyY2VBZ2VudC5oIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L0luc3BlY3RvclJlc291cmNlQWdlbnQuaAppbmRleCA3MDcyMTAwLi40NjAwZGRlIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yUmVzb3VyY2VBZ2VudC5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JSZXNvdXJjZUFnZW50LmgKQEAg
LTE2Myw2ICsxNjMsNyBAQCBwcml2YXRlOgogICAgIGJvb2wgbV9lbmFibGVkOwogICAgIGJvb2wg
bV9jYWNoZURpc2FibGVkOwogICAgIGJvb2wgbV9sb2FkaW5nWEhSU3luY2hyb25vdXNseTsKKyAg
ICBSZWZQdHI8SW5zcGVjdG9yT2JqZWN0PiBtX2V4dHJhUmVxdWVzdEhlYWRlcnM7CiAKICAgICB0
eXBlZGVmIEhhc2hNYXA8VGhyZWFkYWJsZUxvYWRlckNsaWVudCosIFJlZlB0cjxYSFJSZXBsYXlE
YXRhPj4gUGVuZGluZ1hIUlJlcGxheURhdGFNYXA7CiAgICAgUGVuZGluZ1hIUlJlcGxheURhdGFN
YXAgbV9wZW5kaW5nWEhSUmVwbGF5RGF0YTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>