<?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>112011</bug_id>
          
          <creation_ts>2013-03-11 08:03:11 -0700</creation_ts>
          <short_desc>Web Inspector: add per image statistics to the native memory snapshot</short_desc>
          <delta_ts>2013-03-11 08:49:57 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Web Inspector (Deprecated)</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Yury Semikhatsky">yurys</reporter>
          <assigned_to name="Yury Semikhatsky">yurys</assigned_to>
          <cc>apavlov</cc>
    
    <cc>keishi</cc>
    
    <cc>loislo</cc>
    
    <cc>pfeldman</cc>
    
    <cc>pmuellr</cc>
    
    <cc>vsevik</cc>
    
    <cc>web-inspector-bugs</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>yurys</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>852311</commentid>
    <comment_count>0</comment_count>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2013-03-11 08:03:11 -0700</bug_when>
    <thetext>We can display url-&gt;retained size for each CachedImage under Images section in the &quot;native memory distribution&quot; table.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>852312</commentid>
    <comment_count>1</comment_count>
      <attachid>192472</attachid>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2013-03-11 08:05:48 -0700</bug_when>
    <thetext>Created attachment 192472
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>852323</commentid>
    <comment_count>2</comment_count>
      <attachid>192472</attachid>
    <who name="Ilya Tikhonovsky">loislo</who>
    <bug_when>2013-03-11 08:14:30 -0700</bug_when>
    <thetext>Comment on attachment 192472
Patch

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

I&apos;d extract proxyConstructor part of the patch into a separate patch

&gt; Source/WebCore/inspector/front-end/HeapSnapshotProxy.js:186
&gt; +    this._worker = typeof InspectorTest !== &quot;undefined&quot; ? new WebInspector.HeapSnapshotRealWorker() : new WebInspector.HeapSnapshotFakeWorker();

please remove this</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>852363</commentid>
    <comment_count>3</comment_count>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2013-03-11 08:46:05 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; &gt; Source/WebCore/inspector/front-end/HeapSnapshotProxy.js:186
&gt; &gt; +    this._worker = typeof InspectorTest !== &quot;undefined&quot; ? new WebInspector.HeapSnapshotRealWorker() : new WebInspector.HeapSnapshotFakeWorker();
&gt; 
&gt; please remove this

Done.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>852366</commentid>
    <comment_count>4</comment_count>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2013-03-11 08:49:57 -0700</bug_when>
    <thetext>Committed r145367: &lt;http://trac.webkit.org/changeset/145367&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>192472</attachid>
            <date>2013-03-11 08:05:48 -0700</date>
            <delta_ts>2013-03-11 08:45:48 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-112011-20130311190147.patch</filename>
            <type>text/plain</type>
            <size>17132</size>
            <attacher name="Yury Semikhatsky">yurys</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ1MzU3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMWUyYmJjZjBjMDIxZWM1
NzU1NTk4OTk3YTZhMzljNDBlMTk1NTYzYi4uNDM4ZjE2N2JhMjU5OWM1YzBkOGM4ODUwOTRiZTNj
YzMxMzk2NDc4MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDQ2IEBACiAyMDEzLTAzLTExICBZdXJ5
IFNlbWlraGF0c2t5ICA8eXVyeXNAY2hyb21pdW0ub3JnPgogCisgICAgICAgIFdlYiBJbnNwZWN0
b3I6IGFkZCBwZXIgaW1hZ2Ugc3RhdGlzdGljcyB0byB0aGUgbmF0aXZlIG1lbW9yeSBzbmFwc2hv
dAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTEyMDEx
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkZWQg
cGVyLWltYWdlIHN0YXRpc3RpY3MgdG8gdGhlIG5hdGl2ZSBtZW1vcnkgZGlzdHJpYnV0aW9uIHRh
YmxlLgorCisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9IZWFwU25hcHNob3RQcm94eS5q
czoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3RXb3JrZXIpOgorICAgICAgICAo
V2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdFdvcmtlci5wcm90b3R5cGUuY3JlYXRlTG9hZGVyKToK
KyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3RXb3JrZXIucHJvdG90eXBlLndyYXBD
YWxsYmFjayk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90V29ya2VyLnByb3Rv
dHlwZS5jYWxsRmFjdG9yeU1ldGhvZCk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuSGVhcFNuYXBz
aG90UHJveHlPYmplY3QucHJvdG90eXBlLmNhbGxGYWN0b3J5TWV0aG9kKTogdGhlIG1ldGhvZCBu
b3cgYWNjZXB0cworICAgICAgICBwcm94eSBjb25zdHJ1Y3RvciBmdW5jdGlvbiBpbnN0ZWFkIG9m
IGl0cyBuYW1lLiBUaGlzIGVsaW1pbmF0ZXMgdW5uZWNlc3NhcnkgZnVuY3Rpb24gbG9va3VwLgor
ICAgICAgICAoV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdExvYWRlclByb3h5KToKKyAgICAgICAg
KFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3RMb2FkZXJQcm94eS5wcm90b3R5cGUuY2xvc2UpOgor
ICAgICAgICAoV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdFByb3h5LnByb3RvdHlwZS5jcmVhdGVF
ZGdlc1Byb3ZpZGVyKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3RQcm94eS5w
cm90b3R5cGUuY3JlYXRlUmV0YWluaW5nRWRnZXNQcm92aWRlcik6CisgICAgICAgIChXZWJJbnNw
ZWN0b3IuSGVhcFNuYXBzaG90UHJveHkucHJvdG90eXBlLmNyZWF0ZUFkZGVkTm9kZXNQcm92aWRl
cik6CisgICAgICAgIChXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90UHJveHkucHJvdG90eXBlLmNy
ZWF0ZURlbGV0ZWROb2Rlc1Byb3ZpZGVyKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU25h
cHNob3RQcm94eS5wcm90b3R5cGUuY3JlYXRlTm9kZXNQcm92aWRlcik6CisgICAgICAgIChXZWJJ
bnNwZWN0b3IuSGVhcFNuYXBzaG90UHJveHkucHJvdG90eXBlLmNyZWF0ZU5vZGVzUHJvdmlkZXJG
b3JDbGFzcyk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90UHJveHkucHJvdG90
eXBlLmNyZWF0ZU5vZGVzUHJvdmlkZXJGb3JEb21pbmF0b3IpOgorICAgICAgICAoV2ViSW5zcGVj
dG9yLk5hdGl2ZUhlYXBTbmFwc2hvdFByb3h5KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5OYXRp
dmVIZWFwU25hcHNob3RQcm94eS5wcm90b3R5cGUuaW1hZ2VzKToKKyAgICAgICAgKiBpbnNwZWN0
b3IvZnJvbnQtZW5kL0hlYXBTbmFwc2hvdFZpZXcuanM6CisgICAgICAgIChXZWJJbnNwZWN0b3Iu
SGVhcFByb2ZpbGVIZWFkZXIucHJvdG90eXBlLnNuYXBzaG90UHJveHlDb25zdHJ1Y3Rvcik6Cisg
ICAgICAgIChXZWJJbnNwZWN0b3IuSGVhcFByb2ZpbGVIZWFkZXIucHJvdG90eXBlLl9zZXR1cFdv
cmtlcik6CisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9OYXRpdmVIZWFwU25hcHNob3Qu
anM6CisgICAgICAgIChXZWJJbnNwZWN0b3IuTmF0aXZlSGVhcFNuYXBzaG90LnByb3RvdHlwZS5p
bWFnZXMpOgorICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvTmF0aXZlTWVtb3J5U25hcHNo
b3RWaWV3LmpzOgorICAgICAgICAoV2ViSW5zcGVjdG9yLk5hdGl2ZVNuYXBzaG90Tm9kZSk6Cisg
ICAgICAgIChXZWJJbnNwZWN0b3IuTmF0aXZlU25hcHNob3ROb2RlLnByb3RvdHlwZS5fY3JlYXRl
U2l6ZUNlbGwpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLk5hdGl2ZVNuYXBzaG90Tm9kZS5wcm90
b3R5cGUuX3BvcHVsYXRlKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5OYXRpdmVTbmFwc2hvdE5v
ZGUucHJvdG90eXBlLl9hZGRDaGlsZHJlbkZyb21HcmFwaCk6CisgICAgICAgIChXZWJJbnNwZWN0
b3IuTmF0aXZlU25hcHNob3ROb2RlLnByb3RvdHlwZS5fYWRkSW1hZ2VEZXRhaWxzLmRpZExvYWQu
ZGlkUmVjZWl2ZUltYWdlcyk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuTmF0aXZlU25hcHNob3RO
b2RlLnByb3RvdHlwZS5fYWRkSW1hZ2VEZXRhaWxzKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5O
YXRpdmVTbmFwc2hvdFByb2ZpbGVIZWFkZXIucHJvdG90eXBlLnNuYXBzaG90UHJveHlDb25zdHJ1
Y3Rvcik6CisKKzIwMTMtMDMtMTEgIFl1cnkgU2VtaWtoYXRza3kgIDx5dXJ5c0BjaHJvbWl1bS5v
cmc+CisKICAgICAgICAgV2ViIEluc3BlY3RvcjogZXh0cmFjdCBjb21tb24gcGFydHMgb2YgbmF0
aXZlIHByb2ZpbGVzCiAgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xMTE5NjUKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250
LWVuZC9IZWFwU25hcHNob3RQcm94eS5qcyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9u
dC1lbmQvSGVhcFNuYXBzaG90UHJveHkuanMKaW5kZXggMTQxNGNjMzBkNGJlY2E4NjZkMjY5OTMx
Y2RkYjAxMmM3YTYzNzgxYS4uNzZiNDZlM2FlM2U0NDQwZGY5NWQ5ZGRiM2I3MzU0YzI5MDRiZjZl
MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9IZWFwU25h
cHNob3RQcm94eS5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0hl
YXBTbmFwc2hvdFByb3h5LmpzCkBAIC0xODMsMTUgKzE4MywxNSBAQCBXZWJJbnNwZWN0b3IuSGVh
cFNuYXBzaG90V29ya2VyID0gZnVuY3Rpb24oKQogICAgIHRoaXMuX2NhbGxiYWNrcyA9IFtdOwog
ICAgIHRoaXMuX3ByZXZpb3VzQ2FsbGJhY2tzID0gW107CiAgICAgLy8gVGhlcmUgaXMgbm8gc3Vw
cG9ydCBmb3Igd29ya2VycyBpbiBDaHJvbWl1bSBEUlQuCi0gICAgdGhpcy5fd29ya2VyID0gdHlw
ZW9mIEluc3BlY3RvclRlc3QgPT09ICJ1bmRlZmluZWQiID8gbmV3IFdlYkluc3BlY3Rvci5IZWFw
U25hcHNob3RSZWFsV29ya2VyKCkgOiBuZXcgV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdEZha2VX
b3JrZXIoKTsKKyAgICB0aGlzLl93b3JrZXIgPSB0eXBlb2YgSW5zcGVjdG9yVGVzdCAhPT0gInVu
ZGVmaW5lZCIgPyBuZXcgV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdFJlYWxXb3JrZXIoKSA6IG5l
dyBXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90RmFrZVdvcmtlcigpOwogICAgIHRoaXMuX3dvcmtl
ci5hZGRFdmVudExpc3RlbmVyKCJtZXNzYWdlIiwgdGhpcy5fbWVzc2FnZVJlY2VpdmVkLCB0aGlz
KTsKIH0KIAogV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdFdvcmtlci5wcm90b3R5cGUgPSB7Ci0g
ICAgY3JlYXRlTG9hZGVyOiBmdW5jdGlvbihzbmFwc2hvdENvbnN0cnVjdG9yTmFtZSkKKyAgICBj
cmVhdGVMb2FkZXI6IGZ1bmN0aW9uKHNuYXBzaG90Q29uc3RydWN0b3JOYW1lLCBwcm94eUNvbnN0
cnVjdG9yKQogICAgIHsKICAgICAgICAgdmFyIG9iamVjdElkID0gdGhpcy5fbmV4dE9iamVjdElk
Kys7Ci0gICAgICAgIHZhciBwcm94eSA9IG5ldyBXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90TG9h
ZGVyUHJveHkodGhpcywgb2JqZWN0SWQsIHNuYXBzaG90Q29uc3RydWN0b3JOYW1lKTsKKyAgICAg
ICAgdmFyIHByb3h5ID0gbmV3IFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3RMb2FkZXJQcm94eSh0
aGlzLCBvYmplY3RJZCwgc25hcHNob3RDb25zdHJ1Y3Rvck5hbWUsIHByb3h5Q29uc3RydWN0b3Ip
OwogICAgICAgICB0aGlzLl9wb3N0TWVzc2FnZSh7Y2FsbElkOiB0aGlzLl9uZXh0Q2FsbElkKyss
IGRpc3Bvc2l0aW9uOiAiY3JlYXRlIiwgb2JqZWN0SWQ6IG9iamVjdElkLCBtZXRob2ROYW1lOiAi
V2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdExvYWRlciJ9KTsKICAgICAgICAgcmV0dXJuIHByb3h5
OwogICAgIH0sCkBAIC0yMTUsMjMgKzIxNSwyMiBAQCBXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90
V29ya2VyLnByb3RvdHlwZSA9IHsKICAgICAgICAgdGhpcy5fcG9zdE1lc3NhZ2Uoe2NhbGxJZDog
Y2FsbElkLCBkaXNwb3NpdGlvbjogImdldHRlciIsIG9iamVjdElkOiBvYmplY3RJZCwgbWV0aG9k
TmFtZTogZ2V0dGVyTmFtZX0pOwogICAgIH0sCiAKLSAgICBjYWxsRmFjdG9yeU1ldGhvZDogZnVu
Y3Rpb24oY2FsbGJhY2ssIG9iamVjdElkLCBtZXRob2ROYW1lLCBwcm94eUNvbnN0cnVjdG9yTmFt
ZSkKKyAgICBjYWxsRmFjdG9yeU1ldGhvZDogZnVuY3Rpb24oY2FsbGJhY2ssIG9iamVjdElkLCBt
ZXRob2ROYW1lLCBwcm94eUNvbnN0cnVjdG9yKQogICAgIHsKICAgICAgICAgdmFyIGNhbGxJZCA9
IHRoaXMuX25leHRDYWxsSWQrKzsKICAgICAgICAgdmFyIG1ldGhvZEFyZ3VtZW50cyA9IEFycmF5
LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywgNCk7CiAgICAgICAgIHZhciBuZXdPYmpl
Y3RJZCA9IHRoaXMuX25leHRPYmplY3RJZCsrOwotICAgICAgICB2YXIgcHJveHlDb25zdHJ1Y3Rv
ckZ1bmN0aW9uID0gdGhpcy5fZmluZEZ1bmN0aW9uKHByb3h5Q29uc3RydWN0b3JOYW1lKTsKICAg
ICAgICAgaWYgKGNhbGxiYWNrKSB7CiAgICAgICAgICAgICBmdW5jdGlvbiB3cmFwQ2FsbGJhY2so
cmVtb3RlUmVzdWx0KQogICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIGNhbGxiYWNrKHJl
bW90ZVJlc3VsdCA/IG5ldyBwcm94eUNvbnN0cnVjdG9yRnVuY3Rpb24odGhpcywgbmV3T2JqZWN0
SWQpIDogbnVsbCk7CisgICAgICAgICAgICAgICAgY2FsbGJhY2socmVtb3RlUmVzdWx0ID8gbmV3
IHByb3h5Q29uc3RydWN0b3IodGhpcywgbmV3T2JqZWN0SWQpIDogbnVsbCk7CiAgICAgICAgICAg
ICB9CiAgICAgICAgICAgICB0aGlzLl9jYWxsYmFja3NbY2FsbElkXSA9IHdyYXBDYWxsYmFjay5i
aW5kKHRoaXMpOwogICAgICAgICAgICAgdGhpcy5fcG9zdE1lc3NhZ2Uoe2NhbGxJZDogY2FsbElk
LCBkaXNwb3NpdGlvbjogImZhY3RvcnkiLCBvYmplY3RJZDogb2JqZWN0SWQsIG1ldGhvZE5hbWU6
IG1ldGhvZE5hbWUsIG1ldGhvZEFyZ3VtZW50czogbWV0aG9kQXJndW1lbnRzLCBuZXdPYmplY3RJ
ZDogbmV3T2JqZWN0SWR9KTsKICAgICAgICAgICAgIHJldHVybiBudWxsOwogICAgICAgICB9IGVs
c2UgewogICAgICAgICAgICAgdGhpcy5fcG9zdE1lc3NhZ2Uoe2NhbGxJZDogY2FsbElkLCBkaXNw
b3NpdGlvbjogImZhY3RvcnkiLCBvYmplY3RJZDogb2JqZWN0SWQsIG1ldGhvZE5hbWU6IG1ldGhv
ZE5hbWUsIG1ldGhvZEFyZ3VtZW50czogbWV0aG9kQXJndW1lbnRzLCBuZXdPYmplY3RJZDogbmV3
T2JqZWN0SWR9KTsKLSAgICAgICAgICAgIHJldHVybiBuZXcgcHJveHlDb25zdHJ1Y3RvckZ1bmN0
aW9uKHRoaXMsIG5ld09iamVjdElkKTsKKyAgICAgICAgICAgIHJldHVybiBuZXcgcHJveHlDb25z
dHJ1Y3Rvcih0aGlzLCBuZXdPYmplY3RJZCk7CiAgICAgICAgIH0KICAgICB9LAogCkBAIC0zMzEs
NyArMzMwLDcgQEAgV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdFByb3h5T2JqZWN0LnByb3RvdHlw
ZSA9IHsKICAgICAvKioKICAgICAgKiBAcGFyYW0gey4uLip9IHZhcl9hcmdzCiAgICAgICovCi0g
ICAgY2FsbEZhY3RvcnlNZXRob2Q6IGZ1bmN0aW9uKGNhbGxiYWNrLCBtZXRob2ROYW1lLCBwcm94
eUNvbnN0cnVjdG9yTmFtZSwgdmFyX2FyZ3MpCisgICAgY2FsbEZhY3RvcnlNZXRob2Q6IGZ1bmN0
aW9uKGNhbGxiYWNrLCBtZXRob2ROYW1lLCBwcm94eUNvbnN0cnVjdG9yLCB2YXJfYXJncykKICAg
ICB7CiAgICAgICAgIHJldHVybiB0aGlzLl9jYWxsV29ya2VyKCJjYWxsRmFjdG9yeU1ldGhvZCIs
IEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywgMCkpOwogICAgIH0sCkBAIC0z
NTksMTAgKzM1OCwxMSBAQCBXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90UHJveHlPYmplY3QucHJv
dG90eXBlID0gewogICogQGV4dGVuZHMge1dlYkluc3BlY3Rvci5IZWFwU25hcHNob3RQcm94eU9i
amVjdH0KICAqIEBpbXBsZW1lbnRzIHtXZWJJbnNwZWN0b3IuT3V0cHV0U3RyZWFtfQogICovCi1X
ZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90TG9hZGVyUHJveHkgPSBmdW5jdGlvbih3b3JrZXIsIG9i
amVjdElkLCBzbmFwc2hvdENvbnN0cnVjdG9yTmFtZSkKK1dlYkluc3BlY3Rvci5IZWFwU25hcHNo
b3RMb2FkZXJQcm94eSA9IGZ1bmN0aW9uKHdvcmtlciwgb2JqZWN0SWQsIHNuYXBzaG90Q29uc3Ry
dWN0b3JOYW1lLCBwcm94eUNvbnN0cnVjdG9yKQogewogICAgIFdlYkluc3BlY3Rvci5IZWFwU25h
cHNob3RQcm94eU9iamVjdC5jYWxsKHRoaXMsIHdvcmtlciwgb2JqZWN0SWQpOwogICAgIHRoaXMu
X3NuYXBzaG90Q29uc3RydWN0b3JOYW1lID0gc25hcHNob3RDb25zdHJ1Y3Rvck5hbWU7CisgICAg
dGhpcy5fcHJveHlDb25zdHJ1Y3RvciA9IHByb3h5Q29uc3RydWN0b3I7CiAgICAgdGhpcy5fcGVu
ZGluZ1NuYXBzaG90Q29uc3VtZXJzID0gW107CiB9CiAKQEAgLTM4OCw3ICszODgsNyBAQCBXZWJJ
bnNwZWN0b3IuSGVhcFNuYXBzaG90TG9hZGVyUHJveHkucHJvdG90eXBlID0gewogICAgIHsKICAg
ICAgICAgZnVuY3Rpb24gYnVpbGRTbmFwc2hvdCgpCiAgICAgICAgIHsKLSAgICAgICAgICAgIHRo
aXMuY2FsbEZhY3RvcnlNZXRob2QodXBkYXRlU3RhdGljRGF0YS5iaW5kKHRoaXMpLCAiYnVpbGRT
bmFwc2hvdCIsICJXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90UHJveHkiLCB0aGlzLl9zbmFwc2hv
dENvbnN0cnVjdG9yTmFtZSk7CisgICAgICAgICAgICB0aGlzLmNhbGxGYWN0b3J5TWV0aG9kKHVw
ZGF0ZVN0YXRpY0RhdGEuYmluZCh0aGlzKSwgImJ1aWxkU25hcHNob3QiLCB0aGlzLl9wcm94eUNv
bnN0cnVjdG9yLCB0aGlzLl9zbmFwc2hvdENvbnN0cnVjdG9yTmFtZSk7CiAgICAgICAgIH0KICAg
ICAgICAgZnVuY3Rpb24gdXBkYXRlU3RhdGljRGF0YShzbmFwc2hvdFByb3h5KQogICAgICAgICB7
CkBAIC00NDUsMzcgKzQ0NSwzNyBAQCBXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90UHJveHkucHJv
dG90eXBlID0gewogCiAgICAgY3JlYXRlRWRnZXNQcm92aWRlcjogZnVuY3Rpb24obm9kZUluZGV4
LCBzaG93SGlkZGVuRGF0YSkKICAgICB7Ci0gICAgICAgIHJldHVybiB0aGlzLmNhbGxGYWN0b3J5
TWV0aG9kKG51bGwsICJjcmVhdGVFZGdlc1Byb3ZpZGVyIiwgIldlYkluc3BlY3Rvci5IZWFwU25h
cHNob3RQcm92aWRlclByb3h5Iiwgbm9kZUluZGV4LCBzaG93SGlkZGVuRGF0YSk7CisgICAgICAg
IHJldHVybiB0aGlzLmNhbGxGYWN0b3J5TWV0aG9kKG51bGwsICJjcmVhdGVFZGdlc1Byb3ZpZGVy
IiwgV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdFByb3ZpZGVyUHJveHksIG5vZGVJbmRleCwgc2hv
d0hpZGRlbkRhdGEpOwogICAgIH0sCiAKICAgICBjcmVhdGVSZXRhaW5pbmdFZGdlc1Byb3ZpZGVy
OiBmdW5jdGlvbihub2RlSW5kZXgsIHNob3dIaWRkZW5EYXRhKQogICAgIHsKLSAgICAgICAgcmV0
dXJuIHRoaXMuY2FsbEZhY3RvcnlNZXRob2QobnVsbCwgImNyZWF0ZVJldGFpbmluZ0VkZ2VzUHJv
dmlkZXIiLCAiV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdFByb3ZpZGVyUHJveHkiLCBub2RlSW5k
ZXgsIHNob3dIaWRkZW5EYXRhKTsKKyAgICAgICAgcmV0dXJuIHRoaXMuY2FsbEZhY3RvcnlNZXRo
b2QobnVsbCwgImNyZWF0ZVJldGFpbmluZ0VkZ2VzUHJvdmlkZXIiLCBXZWJJbnNwZWN0b3IuSGVh
cFNuYXBzaG90UHJvdmlkZXJQcm94eSwgbm9kZUluZGV4LCBzaG93SGlkZGVuRGF0YSk7CiAgICAg
fSwKIAogICAgIGNyZWF0ZUFkZGVkTm9kZXNQcm92aWRlcjogZnVuY3Rpb24oYmFzZVNuYXBzaG90
SWQsIGNsYXNzTmFtZSkKICAgICB7Ci0gICAgICAgIHJldHVybiB0aGlzLmNhbGxGYWN0b3J5TWV0
aG9kKG51bGwsICJjcmVhdGVBZGRlZE5vZGVzUHJvdmlkZXIiLCAiV2ViSW5zcGVjdG9yLkhlYXBT
bmFwc2hvdFByb3ZpZGVyUHJveHkiLCBiYXNlU25hcHNob3RJZCwgY2xhc3NOYW1lKTsKKyAgICAg
ICAgcmV0dXJuIHRoaXMuY2FsbEZhY3RvcnlNZXRob2QobnVsbCwgImNyZWF0ZUFkZGVkTm9kZXNQ
cm92aWRlciIsIFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3RQcm92aWRlclByb3h5LCBiYXNlU25h
cHNob3RJZCwgY2xhc3NOYW1lKTsKICAgICB9LAogCiAgICAgY3JlYXRlRGVsZXRlZE5vZGVzUHJv
dmlkZXI6IGZ1bmN0aW9uKG5vZGVJbmRleGVzKQogICAgIHsKLSAgICAgICAgcmV0dXJuIHRoaXMu
Y2FsbEZhY3RvcnlNZXRob2QobnVsbCwgImNyZWF0ZURlbGV0ZWROb2Rlc1Byb3ZpZGVyIiwgIldl
Ykluc3BlY3Rvci5IZWFwU25hcHNob3RQcm92aWRlclByb3h5Iiwgbm9kZUluZGV4ZXMpOworICAg
ICAgICByZXR1cm4gdGhpcy5jYWxsRmFjdG9yeU1ldGhvZChudWxsLCAiY3JlYXRlRGVsZXRlZE5v
ZGVzUHJvdmlkZXIiLCBXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90UHJvdmlkZXJQcm94eSwgbm9k
ZUluZGV4ZXMpOwogICAgIH0sCiAKICAgICBjcmVhdGVOb2Rlc1Byb3ZpZGVyOiBmdW5jdGlvbihm
aWx0ZXIpCiAgICAgewotICAgICAgICByZXR1cm4gdGhpcy5jYWxsRmFjdG9yeU1ldGhvZChudWxs
LCAiY3JlYXRlTm9kZXNQcm92aWRlciIsICJXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90UHJvdmlk
ZXJQcm94eSIsIGZpbHRlcik7CisgICAgICAgIHJldHVybiB0aGlzLmNhbGxGYWN0b3J5TWV0aG9k
KG51bGwsICJjcmVhdGVOb2Rlc1Byb3ZpZGVyIiwgV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdFBy
b3ZpZGVyUHJveHksIGZpbHRlcik7CiAgICAgfSwKIAogICAgIGNyZWF0ZU5vZGVzUHJvdmlkZXJG
b3JDbGFzczogZnVuY3Rpb24oY2xhc3NOYW1lLCBhZ2dyZWdhdGVzS2V5KQogICAgIHsKLSAgICAg
ICAgcmV0dXJuIHRoaXMuY2FsbEZhY3RvcnlNZXRob2QobnVsbCwgImNyZWF0ZU5vZGVzUHJvdmlk
ZXJGb3JDbGFzcyIsICJXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90UHJvdmlkZXJQcm94eSIsIGNs
YXNzTmFtZSwgYWdncmVnYXRlc0tleSk7CisgICAgICAgIHJldHVybiB0aGlzLmNhbGxGYWN0b3J5
TWV0aG9kKG51bGwsICJjcmVhdGVOb2Rlc1Byb3ZpZGVyRm9yQ2xhc3MiLCBXZWJJbnNwZWN0b3Iu
SGVhcFNuYXBzaG90UHJvdmlkZXJQcm94eSwgY2xhc3NOYW1lLCBhZ2dyZWdhdGVzS2V5KTsKICAg
ICB9LAogCiAgICAgY3JlYXRlTm9kZXNQcm92aWRlckZvckRvbWluYXRvcjogZnVuY3Rpb24obm9k
ZUluZGV4KQogICAgIHsKLSAgICAgICAgcmV0dXJuIHRoaXMuY2FsbEZhY3RvcnlNZXRob2QobnVs
bCwgImNyZWF0ZU5vZGVzUHJvdmlkZXJGb3JEb21pbmF0b3IiLCAiV2ViSW5zcGVjdG9yLkhlYXBT
bmFwc2hvdFByb3ZpZGVyUHJveHkiLCBub2RlSW5kZXgpOworICAgICAgICByZXR1cm4gdGhpcy5j
YWxsRmFjdG9yeU1ldGhvZChudWxsLCAiY3JlYXRlTm9kZXNQcm92aWRlckZvckRvbWluYXRvciIs
IFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3RQcm92aWRlclByb3h5LCBub2RlSW5kZXgpOwogICAg
IH0sCiAKICAgICBkaXNwb3NlOiBmdW5jdGlvbigpCkBAIC01MTksNiArNTE5LDI0IEBAIFdlYklu
c3BlY3Rvci5IZWFwU25hcHNob3RQcm94eS5wcm90b3R5cGUgPSB7CiAKIC8qKgogICogQGNvbnN0
cnVjdG9yCisgKiBAZXh0ZW5kcyB7V2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdFByb3h5fQorICov
CitXZWJJbnNwZWN0b3IuTmF0aXZlSGVhcFNuYXBzaG90UHJveHkgPSBmdW5jdGlvbih3b3JrZXIs
IG9iamVjdElkKQoreworICAgIFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3RQcm94eS5jYWxsKHRo
aXMsIHdvcmtlciwgb2JqZWN0SWQpOworfQorCitXZWJJbnNwZWN0b3IuTmF0aXZlSGVhcFNuYXBz
aG90UHJveHkucHJvdG90eXBlID0geworICAgIGltYWdlczogZnVuY3Rpb24oY2FsbGJhY2spCisg
ICAgeworICAgICAgICB0aGlzLmNhbGxNZXRob2QoY2FsbGJhY2ssICJpbWFnZXMiKTsKKyAgICB9
LAorCisgICAgX19wcm90b19fOiBXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90UHJveHkucHJvdG90
eXBlCit9CisKKy8qKgorICogQGNvbnN0cnVjdG9yCiAgKiBAZXh0ZW5kcyB7V2ViSW5zcGVjdG9y
LkhlYXBTbmFwc2hvdFByb3h5T2JqZWN0fQogICovCiBXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90
UHJvdmlkZXJQcm94eSA9IGZ1bmN0aW9uKHdvcmtlciwgb2JqZWN0SWQpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0hlYXBTbmFwc2hvdFZpZXcuanMgYi9T
b3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0hlYXBTbmFwc2hvdFZpZXcuanMKaW5k
ZXggNWQwZThjODBhYTEwNDlmNGQ4ZGRiNGZkZTNjNzBmZmNiOGM0MGYwZi4uZDQ5YmYzY2Q0MDRh
M2RmNTYzMDNmYTNlZTQzNmU5YWE3YWFlODU0NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
aW5zcGVjdG9yL2Zyb250LWVuZC9IZWFwU25hcHNob3RWaWV3LmpzCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9mcm9udC1lbmQvSGVhcFNuYXBzaG90Vmlldy5qcwpAQCAtOTc4LDYgKzk3
OCwxMSBAQCBXZWJJbnNwZWN0b3IuSGVhcFByb2ZpbGVIZWFkZXIucHJvdG90eXBlID0gewogICAg
ICAgICByZXR1cm4gIkpTSGVhcFNuYXBzaG90IjsKICAgICB9LAogCisgICAgc25hcHNob3RQcm94
eUNvbnN0cnVjdG9yOiBmdW5jdGlvbigpCisgICAgeworICAgICAgICByZXR1cm4gV2ViSW5zcGVj
dG9yLkhlYXBTbmFwc2hvdFByb3h5OworICAgIH0sCisKICAgICBfc2V0dXBXb3JrZXI6IGZ1bmN0
aW9uKCkKICAgICB7CiAgICAgICAgIGZ1bmN0aW9uIHNldFByb2ZpbGVXYWl0KGV2ZW50KQpAQCAt
OTg2LDcgKzk5MSw3IEBAIFdlYkluc3BlY3Rvci5IZWFwUHJvZmlsZUhlYWRlci5wcm90b3R5cGUg
PSB7CiAgICAgICAgIH0KICAgICAgICAgdmFyIHdvcmtlciA9IG5ldyBXZWJJbnNwZWN0b3IuSGVh
cFNuYXBzaG90V29ya2VyKCk7CiAgICAgICAgIHdvcmtlci5hZGRFdmVudExpc3RlbmVyKCJ3YWl0
Iiwgc2V0UHJvZmlsZVdhaXQsIHRoaXMpOwotICAgICAgICB2YXIgbG9hZGVyUHJveHkgPSB3b3Jr
ZXIuY3JlYXRlTG9hZGVyKHRoaXMuc25hcHNob3RDb25zdHJ1Y3Rvck5hbWUoKSk7CisgICAgICAg
IHZhciBsb2FkZXJQcm94eSA9IHdvcmtlci5jcmVhdGVMb2FkZXIodGhpcy5zbmFwc2hvdENvbnN0
cnVjdG9yTmFtZSgpLCB0aGlzLnNuYXBzaG90UHJveHlDb25zdHJ1Y3RvcigpKTsKICAgICAgICAg
bG9hZGVyUHJveHkuYWRkQ29uc3VtZXIodGhpcy5fc25hcHNob3RSZWNlaXZlZC5iaW5kKHRoaXMp
KTsKICAgICAgICAgdGhpcy5fcmVjZWl2ZXIgPSBsb2FkZXJQcm94eTsKICAgICB9LApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9OYXRpdmVIZWFwU25hcHNo
b3QuanMgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL05hdGl2ZUhlYXBTbmFw
c2hvdC5qcwppbmRleCBmYjRiNWFmYWRmOTdmNzA3ZTAxYzNiNTE3MjBmYTc5OGE0NTQ0Nzk4Li41
Y2MxZmZiMmUzNGM0NTRmNGY3Yzk5MDNkNWMxZGRiMDFmZjJhN2ZiIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL05hdGl2ZUhlYXBTbmFwc2hvdC5qcworKysg
Yi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL05hdGl2ZUhlYXBTbmFwc2hvdC5q
cwpAQCAtNjksNiArNjksMjQgQEAgV2ViSW5zcGVjdG9yLk5hdGl2ZUhlYXBTbmFwc2hvdC5wcm90
b3R5cGUgPSB7CiAgICAgICAgIHJldHVybiBudWxsOwogICAgIH0sCiAKKyAgICBpbWFnZXM6IGZ1
bmN0aW9uKCkKKyAgICB7CisgICAgICAgIHZhciBhZ2dyZWdhdGVzQnlDbGFzc05hbWUgPSB0aGlz
LmFnZ3JlZ2F0ZXMoZmFsc2UsICJhbGxPYmplY3RzIik7CisgICAgICAgIHZhciBpbWFnZXMgPSBh
Z2dyZWdhdGVzQnlDbGFzc05hbWVbIldlYkNvcmU6OkNhY2hlZEltYWdlIl07CisgICAgICAgIHZh
ciByZXN1bHQgPSBbXTsKKyAgICAgICAgaWYgKCFpbWFnZXMpCisgICAgICAgICAgICByZXR1cm4g
cmVzdWx0OworICAgICAgICB2YXIgbm9kZSA9IHRoaXMucm9vdE5vZGUoKTsKKyAgICAgICAgZm9y
ICh2YXIgaSA9IDA7IGkgPCBpbWFnZXMuaWR4cy5sZW5ndGg7IGkrKykgeworICAgICAgICAgICAg
bm9kZS5ub2RlSW5kZXggPSBpbWFnZXMuaWR4c1tpXTsKKyAgICAgICAgICAgIHJlc3VsdC5wdXNo
KHsKKyAgICAgICAgICAgICAgICBuYW1lOiBub2RlLm5hbWUoKSwKKyAgICAgICAgICAgICAgICBz
aXplOiBub2RlLnJldGFpbmVkU2l6ZSgpLAorICAgICAgICAgICAgfSk7CisgICAgICAgIH0KKyAg
ICAgICAgcmV0dXJuIHJlc3VsdDsKKyAgICB9LAorCiAgICAgX19wcm90b19fOiBXZWJJbnNwZWN0
b3IuSGVhcFNuYXBzaG90LnByb3RvdHlwZQogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL2Zyb250LWVuZC9OYXRpdmVNZW1vcnlTbmFwc2hvdFZpZXcuanMgYi9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL05hdGl2ZU1lbW9yeVNuYXBzaG90Vmlldy5q
cwppbmRleCBkZDdkMDFhMDgwYmU1NmYzMmEzNjE5ZTNhMGMyMDM3YjhlMDJlYTUxLi4wNmVkOGUx
ZGZjOTRkNjQ1OGQ3ZDM0MTg2NjM3NDFhZmI2OTFiMTA4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL05hdGl2ZU1lbW9yeVNuYXBzaG90Vmlldy5qcworKysg
Yi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL05hdGl2ZU1lbW9yeVNuYXBzaG90
Vmlldy5qcwpAQCAtNjEsNyArNjEsNyBAQCBXZWJJbnNwZWN0b3IuTmF0aXZlU25hcHNob3REYXRh
R3JpZCA9IGZ1bmN0aW9uKHByb2ZpbGUpCiAgICAgfTsKICAgICBXZWJJbnNwZWN0b3IuRGF0YUdy
aWQuY2FsbCh0aGlzLCBjb2x1bW5zKTsKICAgICB0aGlzLl9wcm9maWxlID0gcHJvZmlsZTsKLSAg
ICB0aGlzLl90b3RhbE5vZGUgPSBuZXcgV2ViSW5zcGVjdG9yLk5hdGl2ZVNuYXBzaG90Tm9kZShw
cm9maWxlLl9tZW1vcnlCbG9jaywgcHJvZmlsZS5fbWVtb3J5QmxvY2spOworICAgIHRoaXMuX3Rv
dGFsTm9kZSA9IG5ldyBXZWJJbnNwZWN0b3IuTmF0aXZlU25hcHNob3ROb2RlKHByb2ZpbGUuX21l
bW9yeUJsb2NrLCBwcm9maWxlKTsKICAgICBpZiAoV2ViSW5zcGVjdG9yLnNldHRpbmdzLnNob3dO
YXRpdmVTbmFwc2hvdFVuaW5zdHJ1bWVudGVkU2l6ZS5nZXQoKSkgewogICAgICAgICB0aGlzLnNl
dFJvb3ROb2RlKG5ldyBXZWJJbnNwZWN0b3IuRGF0YUdyaWROb2RlKG51bGwsIHRydWUpKTsKICAg
ICAgICAgdGhpcy5yb290Tm9kZSgpLmFwcGVuZENoaWxkKHRoaXMuX3RvdGFsTm9kZSkKQEAgLTEw
NywxNSArMTA3LDE0IEBAIFdlYkluc3BlY3Rvci5OYXRpdmVTbmFwc2hvdERhdGFHcmlkLnByb3Rv
dHlwZSA9IHsKICAqIEBjb25zdHJ1Y3RvcgogICogQGV4dGVuZHMge1dlYkluc3BlY3Rvci5EYXRh
R3JpZE5vZGV9CiAgKiBAcGFyYW0ge01lbW9yeUFnZW50Lk1lbW9yeUJsb2NrfSBub2RlRGF0YQot
ICogQHBhcmFtIHtNZW1vcnlBZ2VudC5NZW1vcnlCbG9ja30gcm9vdE1lbW9yeUJsb2NrCiAgKi8K
LVdlYkluc3BlY3Rvci5OYXRpdmVTbmFwc2hvdE5vZGUgPSBmdW5jdGlvbihub2RlRGF0YSwgcm9v
dE1lbW9yeUJsb2NrKQorV2ViSW5zcGVjdG9yLk5hdGl2ZVNuYXBzaG90Tm9kZSA9IGZ1bmN0aW9u
KG5vZGVEYXRhLCBwcm9maWxlKQogewogICAgIHRoaXMuX25vZGVEYXRhID0gbm9kZURhdGE7Ci0g
ICAgdGhpcy5fcm9vdE1lbW9yeUJsb2NrID0gcm9vdE1lbW9yeUJsb2NrOworICAgIHRoaXMuX3By
b2ZpbGUgPSBwcm9maWxlOwogICAgIHZhciB2aWV3UHJvcGVydGllcyA9IFdlYkluc3BlY3Rvci5N
ZW1vcnlCbG9ja1ZpZXdQcm9wZXJ0aWVzLl9mb3JNZW1vcnlCbG9jayhub2RlRGF0YSk7CiAgICAg
dmFyIGRhdGEgPSB7IG5hbWU6IHZpZXdQcm9wZXJ0aWVzLl9kZXNjcmlwdGlvbiwgc2l6ZTogdGhp
cy5fbm9kZURhdGEuc2l6ZSB9OwotICAgIHZhciBoYXNDaGlsZHJlbiA9ICEhbm9kZURhdGEuY2hp
bGRyZW4gJiYgbm9kZURhdGEuY2hpbGRyZW4ubGVuZ3RoICE9PSAwOworICAgIHZhciBoYXNDaGls
ZHJlbiA9IHRoaXMuX2FkZENoaWxkcmVuRnJvbUdyYXBoKCk7CiAgICAgV2ViSW5zcGVjdG9yLkRh
dGFHcmlkTm9kZS5jYWxsKHRoaXMsIGRhdGEsIGhhc0NoaWxkcmVuKTsKICAgICB0aGlzLmFkZEV2
ZW50TGlzdGVuZXIoInBvcHVsYXRlIiwgdGhpcy5fcG9wdWxhdGUsIHRoaXMpOwogfQpAQCAtMTg1
LDcgKzE4NCw3IEBAIFdlYkluc3BlY3Rvci5OYXRpdmVTbmFwc2hvdE5vZGUucHJvdG90eXBlID0g
ewogICAgICAgICB9CiAKICAgICAgICAgdmFyIHNpemVLQiA9IHRoaXMuX25vZGVEYXRhLnNpemUg
LyAxMDI0OwotICAgICAgICB2YXIgdG90YWxTaXplID0gdGhpcy5fcm9vdE1lbW9yeUJsb2NrLnNp
emU7CisgICAgICAgIHZhciB0b3RhbFNpemUgPSB0aGlzLl9wcm9maWxlLl9tZW1vcnlCbG9jay5z
aXplOwogICAgICAgICB2YXIgcGVyY2VudGFnZSA9IHRoaXMuX25vZGVEYXRhLnNpemUgLyB0b3Rh
bFNpemUgICogMTAwOwogCiAgICAgICAgIHZhciBjZWxsID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVu
dCgidGQiKTsKQEAgLTIyMCwxNSArMjE5LDUyIEBAIFdlYkluc3BlY3Rvci5OYXRpdmVTbmFwc2hv
dE5vZGUucHJvdG90eXBlID0gewogCiAgICAgX3BvcHVsYXRlOiBmdW5jdGlvbigpIHsKICAgICAg
ICAgdGhpcy5yZW1vdmVFdmVudExpc3RlbmVyKCJwb3B1bGF0ZSIsIHRoaXMuX3BvcHVsYXRlLCB0
aGlzKTsKKyAgICAgICAgaWYgKHRoaXMuX25vZGVEYXRhLmNoaWxkcmVuKQorICAgICAgICAgICAg
dGhpcy5fYWRkQ2hpbGRyZW4oKTsKKyAgICB9LAorCisgICAgX2FkZENoaWxkcmVuOiBmdW5jdGlv
bigpCisgICAgewogICAgICAgICB0aGlzLl9ub2RlRGF0YS5jaGlsZHJlbi5zb3J0KHRoaXMuZGF0
YUdyaWQuX3NvcnRpbmdGdW5jdGlvbi5iaW5kKHRoaXMuZGF0YUdyaWQpKTsKIAogICAgICAgICBm
b3IgKHZhciBub2RlIGluIHRoaXMuX25vZGVEYXRhLmNoaWxkcmVuKSB7CiAgICAgICAgICAgICB2
YXIgbm9kZURhdGEgPSB0aGlzLl9ub2RlRGF0YS5jaGlsZHJlbltub2RlXTsKICAgICAgICAgICAg
IGlmIChXZWJJbnNwZWN0b3Iuc2V0dGluZ3Muc2hvd05hdGl2ZVNuYXBzaG90VW5pbnN0cnVtZW50
ZWRTaXplLmdldCgpIHx8IG5vZGVEYXRhLm5hbWUgIT09ICJPdGhlciIpCi0gICAgICAgICAgICAg
ICAgdGhpcy5hcHBlbmRDaGlsZChuZXcgV2ViSW5zcGVjdG9yLk5hdGl2ZVNuYXBzaG90Tm9kZShu
b2RlRGF0YSwgdGhpcy5fcm9vdE1lbW9yeUJsb2NrKSk7CisgICAgICAgICAgICAgICAgdGhpcy5h
cHBlbmRDaGlsZChuZXcgV2ViSW5zcGVjdG9yLk5hdGl2ZVNuYXBzaG90Tm9kZShub2RlRGF0YSwg
dGhpcy5fcHJvZmlsZSkpOwogICAgICAgICB9CiAgICAgfSwKIAorICAgIF9hZGRDaGlsZHJlbkZy
b21HcmFwaDogZnVuY3Rpb24oKQorICAgIHsKKyAgICAgICAgdmFyIG1lbW9yeUJsb2NrID0gdGhp
cy5fbm9kZURhdGE7CisgICAgICAgIGlmIChtZW1vcnlCbG9jay5jaGlsZHJlbikKKyAgICAgICAg
ICAgICByZXR1cm4gbWVtb3J5QmxvY2suY2hpbGRyZW4ubGVuZ3RoID4gMDsKKyAgICAgICAgaWYg
KG1lbW9yeUJsb2NrLm5hbWUgPT09ICJJbWFnZSIpIHsKKyAgICAgICAgICAgIHRoaXMuX2FkZElt
YWdlRGV0YWlscygpOworICAgICAgICAgICAgcmV0dXJuIHRydWU7CisgICAgICAgIH0KKyAgICAg
ICAgcmV0dXJuIGZhbHNlOworICAgIH0sCisKKyAgICBfYWRkSW1hZ2VEZXRhaWxzOiBmdW5jdGlv
bigpCisgICAgeworICAgICAgICAvKioKKyAgICAgICAgICogQHBhcmFtIHtXZWJJbnNwZWN0b3Iu
TmF0aXZlSGVhcFNuYXBzaG90UHJveHl9IHByb3h5CisgICAgICAgICAqLworICAgICAgICBmdW5j
dGlvbiBkaWRMb2FkKHByb3h5KQorICAgICAgICB7CisgICAgICAgICAgICBmdW5jdGlvbiBkaWRS
ZWNlaXZlSW1hZ2VzKHJlc3VsdCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICB0aGlz
Ll9ub2RlRGF0YS5jaGlsZHJlbiA9IHJlc3VsdDsKKyAgICAgICAgICAgICAgICBpZiAodGhpcy5l
eHBhbmRlZCkKKyAgICAgICAgICAgICAgICAgICAgdGhpcy5fYWRkQ2hpbGRyZW4oKTsKKyAgICAg
ICAgICAgIH0KKyAgICAgICAgICAgIHByb3h5LmltYWdlcyhkaWRSZWNlaXZlSW1hZ2VzLmJpbmQo
dGhpcykpOworCisgICAgICAgIH0KKyAgICAgICAgdGhpcy5fcHJvZmlsZS5sb2FkKGRpZExvYWQu
YmluZCh0aGlzKSk7CisgICAgfSwKKwogICAgIF9fcHJvdG9fXzogV2ViSW5zcGVjdG9yLkRhdGFH
cmlkTm9kZS5wcm90b3R5cGUKIH0KIApAQCAtNDI4LDYgKzQ2NCwxMSBAQCBXZWJJbnNwZWN0b3Iu
TmF0aXZlU25hcHNob3RQcm9maWxlSGVhZGVyLnByb3RvdHlwZSA9IHsKICAgICAgICAgcmV0dXJu
ICJOYXRpdmVIZWFwU25hcHNob3QiOwogICAgIH0sCiAKKyAgICBzbmFwc2hvdFByb3h5Q29uc3Ry
dWN0b3I6IGZ1bmN0aW9uKCkKKyAgICB7CisgICAgICAgIHJldHVybiBXZWJJbnNwZWN0b3IuTmF0
aXZlSGVhcFNuYXBzaG90UHJveHk7CisgICAgfSwKKwogICAgIGFkZE5hdGl2ZVNuYXBzaG90Q2h1
bms6IGZ1bmN0aW9uKGNodW5rKQogICAgIHsKICAgICAgICAgdGhpcy5fc3RyaW5ncyA9IHRoaXMu
X3N0cmluZ3MuY29uY2F0KGNodW5rLnN0cmluZ3MpOwo=
</data>
<flag name="review"
          id="213716"
          type_id="1"
          status="+"
          setter="pfeldman"
    />
    <flag name="commit-queue"
          id="213717"
          type_id="3"
          status="-"
          setter="yurys"
    />
          </attachment>
      

    </bug>

</bugzilla>