<?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>29673</bug_id>
          
          <creation_ts>2009-09-23 01:02:06 -0700</creation_ts>
          <short_desc>In profiler, call tree nodes expansion doesn&apos;t respect current sorting</short_desc>
          <delta_ts>2009-10-20 16:10: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>0</everconfirmed>
          <reporter name="Mikhail Naganov">mnaganov</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>pfeldman</cc>
    
    <cc>timothy</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>149332</commentid>
    <comment_count>0</comment_count>
      <attachid>39978</attachid>
    <who name="Mikhail Naganov">mnaganov</who>
    <bug_when>2009-09-23 01:02:06 -0700</bug_when>
    <thetext>Created attachment 39978
Screenshot

When expanding nodes of a call tree, children revealed are not sorted according to the current sorting column.

To reproduce:
- collect a profile;
- open it and sort data, say, by the &quot;Calls&quot; column, observe that items shown are sorted;
- now expand a node, observe that children shown are not sorted by the &quot;Calls&quot; column.

See the attached screenshot.

I&apos;m planning to fix this issue.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>155390</commentid>
    <comment_count>1</comment_count>
      <attachid>41356</attachid>
    <who name="Mikhail Naganov">mnaganov</who>
    <bug_when>2009-10-17 07:02:38 -0700</bug_when>
    <thetext>Created attachment 41356
proposed patch

The patch may look big, but it&apos;s only because I swapped BottomUpProfileDataGridTree and Node declarations to be consistent with TopDownProfile.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>156314</commentid>
    <comment_count>2</comment_count>
      <attachid>41356</attachid>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2009-10-20 15:29:13 -0700</bug_when>
    <thetext>Comment on attachment 41356
proposed patch

You should call doPopulate _sharedPopulate. Using an underscore since it is private.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>156326</commentid>
    <comment_count>3</comment_count>
      <attachid>41532</attachid>
    <who name="Mikhail Naganov">mnaganov</who>
    <bug_when>2009-10-20 15:54:39 -0700</bug_when>
    <thetext>Created attachment 41532
a patch to submit: renamed doPopulate -&gt; _shouldPopulate</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>156327</commentid>
    <comment_count>4</comment_count>
    <who name="Mikhail Naganov">mnaganov</who>
    <bug_when>2009-10-20 15:58:29 -0700</bug_when>
    <thetext>Ugh, the comment is wrong. I renamed doPopulate to _sharedPopulate, as Timothy proposes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>156330</commentid>
    <comment_count>5</comment_count>
      <attachid>41532</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2009-10-20 16:10:53 -0700</bug_when>
    <thetext>Comment on attachment 41532
a patch to submit: renamed doPopulate -&gt; _shouldPopulate

Clearing flags on attachment: 41532

Committed r49891: &lt;http://trac.webkit.org/changeset/49891&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>156331</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2009-10-20 16:10:57 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>39978</attachid>
            <date>2009-09-23 01:02:06 -0700</date>
            <delta_ts>2009-09-23 01:02:06 -0700</delta_ts>
            <desc>Screenshot</desc>
            <filename>Picture 1.png</filename>
            <type>image/png</type>
            <size>40172</size>
            <attacher name="Mikhail Naganov">mnaganov</attacher>
            
              <data encoding="base64">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
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>41356</attachid>
            <date>2009-10-17 07:02:38 -0700</date>
            <delta_ts>2009-10-20 15:54:39 -0700</delta_ts>
            <desc>proposed patch</desc>
            <filename>fix-29673-patch</filename>
            <type>text/plain</type>
            <size>14061</size>
            <attacher name="Mikhail Naganov">mnaganov</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
ZDY1NzlhOS4uY2MyNGI4MSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNiBAQAorMjAwOS0xMC0xNyAgTWlraGFpbCBOYWdh
bm92ICA8bW5hZ2Fub3ZAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFdlYiBJbnNwZWN0b3I6IHBvcHVsYXRlIGNoaWxkIG5vZGVz
IGJlZm9yZSBzb3J0aW5nIHRoZW0uCisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTI5NjczCisKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL0Jv
dHRvbVVwUHJvZmlsZURhdGFHcmlkVHJlZS5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5Cb3R0
b21VcFByb2ZpbGVEYXRhR3JpZE5vZGUpOiBTd2FwcGVkIHdpdGggQm90dG9tVXBQcm9maWxlRGF0
YUdyaWRUcmVlIHRvIGJlIGNvbnNpc3RlbnQgd2l0aCBUb3BEb3duUHJvZmlsZURhdGFHcmlkTm9k
ZS4KKyAgICAgICAgKFdlYkluc3BlY3Rvci5Cb3R0b21VcFByb2ZpbGVEYXRhR3JpZE5vZGUucHJv
dG90eXBlLl90YWtlUHJvcGVydGllc0Zyb21Qcm9maWxlRGF0YUdyaWROb2RlKToKKyAgICAgICAg
KFdlYkluc3BlY3Rvci5Cb3R0b21VcFByb2ZpbGVEYXRhR3JpZE5vZGUucHJvdG90eXBlLl9rZWVw
T25seUNoaWxkKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5Cb3R0b21VcFByb2ZpbGVEYXRhR3Jp
ZE5vZGUucHJvdG90eXBlLl9leGNsdWRlKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5Cb3R0b21V
cFByb2ZpbGVEYXRhR3JpZE5vZGUucHJvdG90eXBlLl9tZXJnZSk6CisgICAgICAgIChXZWJJbnNw
ZWN0b3IuQm90dG9tVXBQcm9maWxlRGF0YUdyaWROb2RlLnByb3RvdHlwZS5kb1BvcHVsYXRlKToK
KyAgICAgICAgKFdlYkluc3BlY3Rvci5Cb3R0b21VcFByb2ZpbGVEYXRhR3JpZFRyZWUucHJvdG90
eXBlLmV4Y2x1ZGUpOgorICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvUHJvZmlsZURhdGFH
cmlkVHJlZS5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5Qcm9maWxlRGF0YUdyaWROb2RlLnBy
b3RvdHlwZS5zb3J0KTogQWRkZWQgbWlzc2luZyBwYXJlbnRoZXNlcy4KKyAgICAgICAgKFdlYklu
c3BlY3Rvci5Qcm9maWxlRGF0YUdyaWROb2RlLnByb3RvdHlwZS5nZXQgX3BhcmVudCk6CisgICAg
ICAgIChXZWJJbnNwZWN0b3IuUHJvZmlsZURhdGFHcmlkTm9kZS5wcm90b3R5cGUuX3BvcHVsYXRl
KToKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL1RvcERvd25Qcm9maWxlRGF0YUdyaWRU
cmVlLmpzOgorICAgICAgICAoV2ViSW5zcGVjdG9yLlRvcERvd25Qcm9maWxlRGF0YUdyaWROb2Rl
LnByb3RvdHlwZS5kb1BvcHVsYXRlKToKKwogMjAwOS0xMC0xNiAgSm9uIEhvbmV5Y3V0dCAgPGpo
b25leWN1dHRAYXBwbGUuY29tPgogCiAgICAgICAgIEFkZCBTUEkgdG8gZGV0ZXJtaW5lIHdoZXRo
ZXIgYSBwbHVnLWluIGhhcyBldmVyIGJlZW4gaGFsdGVkLgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9p
bnNwZWN0b3IvZnJvbnQtZW5kL0JvdHRvbVVwUHJvZmlsZURhdGFHcmlkVHJlZS5qcyBiL1dlYkNv
cmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Cb3R0b21VcFByb2ZpbGVEYXRhR3JpZFRyZWUuanMKaW5k
ZXggODliNGRkYy4uZDI5OGNiZCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQt
ZW5kL0JvdHRvbVVwUHJvZmlsZURhdGFHcmlkVHJlZS5qcworKysgYi9XZWJDb3JlL2luc3BlY3Rv
ci9mcm9udC1lbmQvQm90dG9tVXBQcm9maWxlRGF0YUdyaWRUcmVlLmpzCkBAIC0yOSw2ICsyOSwx
MTAgQEAKIC8vIGVhY2ggY2hpbGQgc3RpbGwgcmVwcmVzZW50IHRoZSByb290IG5vZGUuIFdlIGhh
dmUgdG8gYmUgcGFydGljdWxhcmx5IGNhcmVmdWwgb2YgcmVjdXJzaW9uIHdpdGggdGhpcyBtb2Rl
CiAvLyBiZWNhdXNlIGEgcm9vdCBub2RlIGNhbiByZXByZXNlbnQgaXRzZWxmIEFORCBhbiBhbmNl
c3Rvci4KIAorV2ViSW5zcGVjdG9yLkJvdHRvbVVwUHJvZmlsZURhdGFHcmlkTm9kZSA9IGZ1bmN0
aW9uKC8qUHJvZmlsZVZpZXcqLyBwcm9maWxlVmlldywgLypQcm9maWxlTm9kZSovIHByb2ZpbGVO
b2RlLCAvKkJvdHRvbVVwUHJvZmlsZURhdGFHcmlkVHJlZSovIG93bmluZ1RyZWUpCit7CisgICAg
Ly8gSW4gYm90dG9tIHVwIG1vZGUsIG91ciBwYXJlbnRzIGFyZSBvdXIgY2hpbGRyZW4gc2luY2Ug
d2UgZGlzcGxheSBhbiBpbnZlcnRlZCB0cmVlLgorICAgIC8vIEhvd2V2ZXIsIHdlIGRvbid0IHdh
bnQgdG8gc2hvdyB0aGUgdmVyeSB0b3AgcGFyZW50IHNpbmNlIGl0IGlzIHJlZHVuZGFudC4KKyAg
ICB2YXIgaGFzQ2hpbGRyZW4gPSAhIShwcm9maWxlTm9kZS5wYXJlbnQgJiYgcHJvZmlsZU5vZGUu
cGFyZW50LnBhcmVudCk7CisKKyAgICBXZWJJbnNwZWN0b3IuUHJvZmlsZURhdGFHcmlkTm9kZS5j
YWxsKHRoaXMsIHByb2ZpbGVWaWV3LCBwcm9maWxlTm9kZSwgb3duaW5nVHJlZSwgaGFzQ2hpbGRy
ZW4pOworCisgICAgdGhpcy5fcmVtYWluaW5nTm9kZUluZm9zID0gW107Cit9CisKK1dlYkluc3Bl
Y3Rvci5Cb3R0b21VcFByb2ZpbGVEYXRhR3JpZE5vZGUucHJvdG90eXBlID0geworICAgIF90YWtl
UHJvcGVydGllc0Zyb21Qcm9maWxlRGF0YUdyaWROb2RlOiBmdW5jdGlvbigvKlByb2ZpbGVEYXRh
R3JpZE5vZGUqLyBwcm9maWxlRGF0YUdyaWROb2RlKQorICAgIHsKKyAgICAgICAgdGhpcy5fc2F2
ZSgpOworCisgICAgICAgIHRoaXMuc2VsZlRpbWUgPSBwcm9maWxlRGF0YUdyaWROb2RlLnNlbGZU
aW1lOworICAgICAgICB0aGlzLnRvdGFsVGltZSA9IHByb2ZpbGVEYXRhR3JpZE5vZGUudG90YWxU
aW1lOworICAgICAgICB0aGlzLm51bWJlck9mQ2FsbHMgPSBwcm9maWxlRGF0YUdyaWROb2RlLm51
bWJlck9mQ2FsbHM7CisgICAgfSwKKworICAgIC8vIFdoZW4gZm9jdXNpbmcsIHdlIGtlZXAganVz
dCB0aGUgbWVtYmVycyBvZiB0aGUgY2FsbHN0YWNrLgorICAgIF9rZWVwT25seUNoaWxkOiBmdW5j
dGlvbigvKlByb2ZpbGVEYXRhR3JpZE5vZGUqLyBjaGlsZCkKKyAgICB7CisgICAgICAgIHRoaXMu
X3NhdmUoKTsKKworICAgICAgICB0aGlzLnJlbW92ZUNoaWxkcmVuKCk7CisgICAgICAgIHRoaXMu
YXBwZW5kQ2hpbGQoY2hpbGQpOworICAgIH0sCisKKyAgICBfZXhjbHVkZTogZnVuY3Rpb24oYUNh
bGxVSUQpCisgICAgeworICAgICAgICBpZiAodGhpcy5fcmVtYWluaW5nTm9kZUluZm9zKQorICAg
ICAgICAgICAgdGhpcy5fcG9wdWxhdGUoKTsKKworICAgICAgICB0aGlzLl9zYXZlKCk7CisKKyAg
ICAgICAgdmFyIGNoaWxkcmVuID0gdGhpcy5jaGlsZHJlbjsKKyAgICAgICAgdmFyIGluZGV4ID0g
dGhpcy5jaGlsZHJlbi5sZW5ndGg7CisKKyAgICAgICAgd2hpbGUgKGluZGV4LS0pCisgICAgICAg
ICAgICBjaGlsZHJlbltpbmRleF0uX2V4Y2x1ZGUoYUNhbGxVSUQpOworCisgICAgICAgIHZhciBj
aGlsZCA9IHRoaXMuY2hpbGRyZW5CeUNhbGxVSURbYUNhbGxVSURdOworCisgICAgICAgIGlmIChj
aGlsZCkKKyAgICAgICAgICAgIHRoaXMuX21lcmdlKGNoaWxkLCB0cnVlKTsKKyAgICB9LAorCisg
ICAgX21lcmdlOiBmdW5jdGlvbigvKlByb2ZpbGVEYXRhR3JpZE5vZGUqLyBjaGlsZCwgLypCb29s
ZWFuKi8gc2hvdWxkQWJzb3JiKQorICAgIHsKKyAgICAgICAgdGhpcy5zZWxmVGltZSAtPSBjaGls
ZC5zZWxmVGltZTsKKworICAgICAgICBXZWJJbnNwZWN0b3IuUHJvZmlsZURhdGFHcmlkTm9kZS5w
cm90b3R5cGUuX21lcmdlLmNhbGwodGhpcywgY2hpbGQsIHNob3VsZEFic29yYik7CisgICAgfSwK
KworICAgIGRvUG9wdWxhdGU6IGZ1bmN0aW9uKCkKKyAgICB7CisgICAgICAgIHZhciByZW1haW5p
bmdOb2RlSW5mb3MgPSB0aGlzLl9yZW1haW5pbmdOb2RlSW5mb3M7CisgICAgICAgIHZhciBjb3Vu
dCA9IHJlbWFpbmluZ05vZGVJbmZvcy5sZW5ndGg7CisKKyAgICAgICAgZm9yICh2YXIgaW5kZXgg
PSAwOyBpbmRleCA8IGNvdW50OyArK2luZGV4KSB7CisgICAgICAgICAgICB2YXIgbm9kZUluZm8g
PSByZW1haW5pbmdOb2RlSW5mb3NbaW5kZXhdOworICAgICAgICAgICAgdmFyIGFuY2VzdG9yID0g
bm9kZUluZm8uYW5jZXN0b3I7CisgICAgICAgICAgICB2YXIgZm9jdXNOb2RlID0gbm9kZUluZm8u
Zm9jdXNOb2RlOworICAgICAgICAgICAgdmFyIGNoaWxkID0gdGhpcy5maW5kQ2hpbGQoYW5jZXN0
b3IpOworCisgICAgICAgICAgICAvLyBJZiB3ZSBhbHJlYWR5IGhhdmUgdGhpcyBjaGlsZCwgdGhl
biBtZXJnZSB0aGUgZGF0YSB0b2dldGhlci4KKyAgICAgICAgICAgIGlmIChjaGlsZCkgeworICAg
ICAgICAgICAgICAgIHZhciB0b3RhbFRpbWVBY2NvdW50ZWRGb3IgPSBub2RlSW5mby50b3RhbFRp
bWVBY2NvdW50ZWRGb3I7CisKKyAgICAgICAgICAgICAgICBjaGlsZC5zZWxmVGltZSArPSBmb2N1
c05vZGUuc2VsZlRpbWU7CisgICAgICAgICAgICAgICAgY2hpbGQubnVtYmVyT2ZDYWxscyArPSBm
b2N1c05vZGUubnVtYmVyT2ZDYWxsczsKKworICAgICAgICAgICAgICAgIGlmICghdG90YWxUaW1l
QWNjb3VudGVkRm9yKQorICAgICAgICAgICAgICAgICAgICBjaGlsZC50b3RhbFRpbWUgKz0gZm9j
dXNOb2RlLnRvdGFsVGltZTsKKyAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAg
Ly8gSWYgbm90LCBhZGQgaXQgYXMgYSB0cnVlIGFuY2VzdG9yLgorICAgICAgICAgICAgICAgIC8v
IEluIGhlYXZ5IG1vZGUsIHdlIHRha2Ugb3VyIHZpc3VhbCBpZGVudGl0eSBmcm9tIGFuY2VzdG9y
IG5vZGUuLi4KKyAgICAgICAgICAgICAgICB2YXIgY2hpbGQgPSBuZXcgV2ViSW5zcGVjdG9yLkJv
dHRvbVVwUHJvZmlsZURhdGFHcmlkTm9kZSh0aGlzLnByb2ZpbGVWaWV3LCBhbmNlc3RvciwgdGhp
cy50cmVlKTsKKworICAgICAgICAgICAgICAgIGlmIChhbmNlc3RvciAhPT0gZm9jdXNOb2RlKSB7
CisgICAgICAgICAgICAgICAgICAgIC8vIGJ1dCB0aGUgYWN0dWFsIHN0YXRpc3RpY3MgZnJvbSB0
aGUgInJvb3QiIG5vZGUgKGJvdHRvbSBvZiB0aGUgY2FsbHN0YWNrKS4KKyAgICAgICAgICAgICAg
ICAgICAgY2hpbGQuc2VsZlRpbWUgPSBmb2N1c05vZGUuc2VsZlRpbWU7CisgICAgICAgICAgICAg
ICAgICAgIGNoaWxkLnRvdGFsVGltZSA9IGZvY3VzTm9kZS50b3RhbFRpbWU7CisgICAgICAgICAg
ICAgICAgICAgIGNoaWxkLm51bWJlck9mQ2FsbHMgPSBmb2N1c05vZGUubnVtYmVyT2ZDYWxsczsK
KyAgICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAgICB0aGlzLmFwcGVuZENoaWxkKGNo
aWxkKTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgdmFyIHBhcmVudCA9IGFuY2VzdG9y
LnBhcmVudDsKKyAgICAgICAgICAgIGlmIChwYXJlbnQgJiYgcGFyZW50LnBhcmVudCkgeworICAg
ICAgICAgICAgICAgIG5vZGVJbmZvLmFuY2VzdG9yID0gcGFyZW50OworICAgICAgICAgICAgICAg
IGNoaWxkLl9yZW1haW5pbmdOb2RlSW5mb3MucHVzaChub2RlSW5mbyk7CisgICAgICAgICAgICB9
CisgICAgICAgIH0KKworICAgICAgICBkZWxldGUgdGhpcy5fcmVtYWluaW5nTm9kZUluZm9zOwor
ICAgIH0KK30KKworV2ViSW5zcGVjdG9yLkJvdHRvbVVwUHJvZmlsZURhdGFHcmlkTm9kZS5wcm90
b3R5cGUuX19wcm90b19fID0gV2ViSW5zcGVjdG9yLlByb2ZpbGVEYXRhR3JpZE5vZGUucHJvdG90
eXBlOworCiBXZWJJbnNwZWN0b3IuQm90dG9tVXBQcm9maWxlRGF0YUdyaWRUcmVlID0gZnVuY3Rp
b24oLypQcm9maWxlVmlldyovIGFQcm9maWxlVmlldywgLypQcm9maWxlTm9kZSovIGFQcm9maWxl
Tm9kZSkKIHsKICAgICBXZWJJbnNwZWN0b3IuUHJvZmlsZURhdGFHcmlkVHJlZS5jYWxsKHRoaXMs
IGFQcm9maWxlVmlldywgYVByb2ZpbGVOb2RlKTsKQEAgLTEzOSwxMTQgKzI0MywxMCBAQCBXZWJJ
bnNwZWN0b3IuQm90dG9tVXBQcm9maWxlRGF0YUdyaWRUcmVlLnByb3RvdHlwZSA9IHsKIAogICAg
ICAgICBpZiAodGhpcy5sYXN0Q29tcGFyYXRvcikKICAgICAgICAgICAgIHRoaXMuc29ydCh0aGlz
Lmxhc3RDb21wYXJhdG9yLCB0cnVlKTsKLSAgICB9Ci19Ci0KLVdlYkluc3BlY3Rvci5Cb3R0b21V
cFByb2ZpbGVEYXRhR3JpZFRyZWUucHJvdG90eXBlLl9fcHJvdG9fXyA9IFdlYkluc3BlY3Rvci5Q
cm9maWxlRGF0YUdyaWRUcmVlLnByb3RvdHlwZTsKLQotV2ViSW5zcGVjdG9yLkJvdHRvbVVwUHJv
ZmlsZURhdGFHcmlkTm9kZSA9IGZ1bmN0aW9uKC8qUHJvZmlsZVZpZXcqLyBwcm9maWxlVmlldywg
LypQcm9maWxlTm9kZSovIHByb2ZpbGVOb2RlLCAvKkJvdHRvbVVwUHJvZmlsZURhdGFHcmlkVHJl
ZSovIG93bmluZ1RyZWUpCi17Ci0gICAgLy8gSW4gYm90dG9tIHVwIG1vZGUsIG91ciBwYXJlbnRz
IGFyZSBvdXIgY2hpbGRyZW4gc2luY2Ugd2UgZGlzcGxheSBhbiBpbnZlcnRlZCB0cmVlLgotICAg
IC8vIEhvd2V2ZXIsIHdlIGRvbid0IHdhbnQgdG8gc2hvdyB0aGUgdmVyeSB0b3AgcGFyZW50IHNp
bmNlIGl0IGlzIHJlZHVuZGFudC4KLSAgICB2YXIgaGFzQ2hpbGRyZW4gPSAhIShwcm9maWxlTm9k
ZS5wYXJlbnQgJiYgcHJvZmlsZU5vZGUucGFyZW50LnBhcmVudCk7Ci0KLSAgICBXZWJJbnNwZWN0
b3IuUHJvZmlsZURhdGFHcmlkTm9kZS5jYWxsKHRoaXMsIHByb2ZpbGVWaWV3LCBwcm9maWxlTm9k
ZSwgb3duaW5nVHJlZSwgaGFzQ2hpbGRyZW4pOwotCi0gICAgdGhpcy5fcmVtYWluaW5nTm9kZUlu
Zm9zID0gW107Ci19Ci0KLVdlYkluc3BlY3Rvci5Cb3R0b21VcFByb2ZpbGVEYXRhR3JpZE5vZGUu
cHJvdG90eXBlID0gewotICAgIF90YWtlUHJvcGVydGllc0Zyb21Qcm9maWxlRGF0YUdyaWROb2Rl
OiBmdW5jdGlvbigvKlByb2ZpbGVEYXRhR3JpZE5vZGUqLyBwcm9maWxlRGF0YUdyaWROb2RlKQot
ICAgIHsKLSAgICAgICAgdGhpcy5fc2F2ZSgpOwotCi0gICAgICAgIHRoaXMuc2VsZlRpbWUgPSBw
cm9maWxlRGF0YUdyaWROb2RlLnNlbGZUaW1lOwotICAgICAgICB0aGlzLnRvdGFsVGltZSA9IHBy
b2ZpbGVEYXRhR3JpZE5vZGUudG90YWxUaW1lOwotICAgICAgICB0aGlzLm51bWJlck9mQ2FsbHMg
PSBwcm9maWxlRGF0YUdyaWROb2RlLm51bWJlck9mQ2FsbHM7Ci0gICAgfSwKLQotICAgIC8vIFdo
ZW4gZm9jdXNpbmcsIHdlIGtlZXAganVzdCB0aGUgbWVtYmVycyBvZiB0aGUgY2FsbHN0YWNrLgot
ICAgIF9rZWVwT25seUNoaWxkOiBmdW5jdGlvbigvKlByb2ZpbGVEYXRhR3JpZE5vZGUqLyBjaGls
ZCkKLSAgICB7Ci0gICAgICAgIHRoaXMuX3NhdmUoKTsKLQotICAgICAgICB0aGlzLnJlbW92ZUNo
aWxkcmVuKCk7Ci0gICAgICAgIHRoaXMuYXBwZW5kQ2hpbGQoY2hpbGQpOwotICAgIH0sCi0KLSAg
ICBfZXhjbHVkZTogZnVuY3Rpb24oYUNhbGxVSUQpCi0gICAgewotICAgICAgICBpZiAodGhpcy5f
cmVtYWluaW5nTm9kZUluZm9zKQotICAgICAgICAgICAgdGhpcy5fcG9wdWxhdGUoKTsKLQotICAg
ICAgICB0aGlzLl9zYXZlKCk7Ci0KLSAgICAgICAgdmFyIGNoaWxkcmVuID0gdGhpcy5jaGlsZHJl
bjsKLSAgICAgICAgdmFyIGluZGV4ID0gdGhpcy5jaGlsZHJlbi5sZW5ndGg7Ci0KLSAgICAgICAg
d2hpbGUgKGluZGV4LS0pCi0gICAgICAgICAgICBjaGlsZHJlbltpbmRleF0uX2V4Y2x1ZGUoYUNh
bGxVSUQpOwotCi0gICAgICAgIHZhciBjaGlsZCA9IHRoaXMuY2hpbGRyZW5CeUNhbGxVSURbYUNh
bGxVSURdOwotCi0gICAgICAgIGlmIChjaGlsZCkKLSAgICAgICAgICAgIHRoaXMuX21lcmdlKGNo
aWxkLCB0cnVlKTsKLSAgICB9LAotCi0gICAgX21lcmdlOiBmdW5jdGlvbigvKlByb2ZpbGVEYXRh
R3JpZE5vZGUqLyBjaGlsZCwgLypCb29sZWFuKi8gc2hvdWxkQWJzb3JiKQotICAgIHsKLSAgICAg
ICAgdGhpcy5zZWxmVGltZSAtPSBjaGlsZC5zZWxmVGltZTsKLQotICAgICAgICBXZWJJbnNwZWN0
b3IuUHJvZmlsZURhdGFHcmlkTm9kZS5wcm90b3R5cGUuX21lcmdlLmNhbGwodGhpcywgY2hpbGQs
IHNob3VsZEFic29yYik7CiAgICAgfSwKIAotICAgIF9wb3B1bGF0ZTogZnVuY3Rpb24oZXZlbnQp
Ci0gICAgewotICAgICAgICB2YXIgcmVtYWluaW5nTm9kZUluZm9zID0gdGhpcy5fcmVtYWluaW5n
Tm9kZUluZm9zOwotICAgICAgICB2YXIgY291bnQgPSByZW1haW5pbmdOb2RlSW5mb3MubGVuZ3Ro
OwotCi0gICAgICAgIGZvciAodmFyIGluZGV4ID0gMDsgaW5kZXggPCBjb3VudDsgKytpbmRleCkg
ewotICAgICAgICAgICAgdmFyIG5vZGVJbmZvID0gcmVtYWluaW5nTm9kZUluZm9zW2luZGV4XTsK
LSAgICAgICAgICAgIHZhciBhbmNlc3RvciA9IG5vZGVJbmZvLmFuY2VzdG9yOwotICAgICAgICAg
ICAgdmFyIGZvY3VzTm9kZSA9IG5vZGVJbmZvLmZvY3VzTm9kZTsKLSAgICAgICAgICAgIHZhciBj
aGlsZCA9IHRoaXMuZmluZENoaWxkKGFuY2VzdG9yKTsKLQotICAgICAgICAgICAgLy8gSWYgd2Ug
YWxyZWFkeSBoYXZlIHRoaXMgY2hpbGQsIHRoZW4gbWVyZ2UgdGhlIGRhdGEgdG9nZXRoZXIuCi0g
ICAgICAgICAgICBpZiAoY2hpbGQpIHsKLSAgICAgICAgICAgICAgICB2YXIgdG90YWxUaW1lQWNj
b3VudGVkRm9yID0gbm9kZUluZm8udG90YWxUaW1lQWNjb3VudGVkRm9yOwotCi0gICAgICAgICAg
ICAgICAgY2hpbGQuc2VsZlRpbWUgKz0gZm9jdXNOb2RlLnNlbGZUaW1lOwotICAgICAgICAgICAg
ICAgIGNoaWxkLm51bWJlck9mQ2FsbHMgKz0gZm9jdXNOb2RlLm51bWJlck9mQ2FsbHM7Ci0KLSAg
ICAgICAgICAgICAgICBpZiAoIXRvdGFsVGltZUFjY291bnRlZEZvcikKLSAgICAgICAgICAgICAg
ICAgICAgY2hpbGQudG90YWxUaW1lICs9IGZvY3VzTm9kZS50b3RhbFRpbWU7Ci0gICAgICAgICAg
ICB9IGVsc2UgewotICAgICAgICAgICAgICAgIC8vIElmIG5vdCwgYWRkIGl0IGFzIGEgdHJ1ZSBh
bmNlc3Rvci4KLSAgICAgICAgICAgICAgICAvLyBJbiBoZWF2eSBtb2RlLCB3ZSB0YWtlIG91ciB2
aXN1YWwgaWRlbnRpdHkgZnJvbSBhbmNlc3RvciBub2RlLi4uCi0gICAgICAgICAgICAgICAgdmFy
IGNoaWxkID0gbmV3IFdlYkluc3BlY3Rvci5Cb3R0b21VcFByb2ZpbGVEYXRhR3JpZE5vZGUodGhp
cy5wcm9maWxlVmlldywgYW5jZXN0b3IsIHRoaXMudHJlZSk7Ci0KLSAgICAgICAgICAgICAgICBp
ZiAoYW5jZXN0b3IgIT09IGZvY3VzTm9kZSkgewotICAgICAgICAgICAgICAgICAgICAvLyBidXQg
dGhlIGFjdHVhbCBzdGF0aXN0aWNzIGZyb20gdGhlICJyb290IiBub2RlIChib3R0b20gb2YgdGhl
IGNhbGxzdGFjaykuCi0gICAgICAgICAgICAgICAgICAgIGNoaWxkLnNlbGZUaW1lID0gZm9jdXNO
b2RlLnNlbGZUaW1lOwotICAgICAgICAgICAgICAgICAgICBjaGlsZC50b3RhbFRpbWUgPSBmb2N1
c05vZGUudG90YWxUaW1lOwotICAgICAgICAgICAgICAgICAgICBjaGlsZC5udW1iZXJPZkNhbGxz
ID0gZm9jdXNOb2RlLm51bWJlck9mQ2FsbHM7Ci0gICAgICAgICAgICAgICAgfQotCi0gICAgICAg
ICAgICAgICAgdGhpcy5hcHBlbmRDaGlsZChjaGlsZCk7Ci0gICAgICAgICAgICB9Ci0KLSAgICAg
ICAgICAgIHZhciBwYXJlbnQgPSBhbmNlc3Rvci5wYXJlbnQ7Ci0gICAgICAgICAgICBpZiAocGFy
ZW50ICYmIHBhcmVudC5wYXJlbnQpIHsKLSAgICAgICAgICAgICAgICBub2RlSW5mby5hbmNlc3Rv
ciA9IHBhcmVudDsKLSAgICAgICAgICAgICAgICBjaGlsZC5fcmVtYWluaW5nTm9kZUluZm9zLnB1
c2gobm9kZUluZm8pOwotICAgICAgICAgICAgfQotICAgICAgICB9Ci0KLSAgICAgICAgZGVsZXRl
IHRoaXMuX3JlbWFpbmluZ05vZGVJbmZvczsKLQotICAgICAgICBpZiAodGhpcy5yZW1vdmVFdmVu
dExpc3RlbmVyKQotICAgICAgICAgICAgdGhpcy5yZW1vdmVFdmVudExpc3RlbmVyKCJwb3B1bGF0
ZSIsIHRoaXMuX3BvcHVsYXRlLCB0aGlzKTsKLSAgICB9CisgICAgZG9Qb3B1bGF0ZTogV2ViSW5z
cGVjdG9yLkJvdHRvbVVwUHJvZmlsZURhdGFHcmlkTm9kZS5wcm90b3R5cGUuZG9Qb3B1bGF0ZQog
fQogCi1XZWJJbnNwZWN0b3IuQm90dG9tVXBQcm9maWxlRGF0YUdyaWROb2RlLnByb3RvdHlwZS5f
X3Byb3RvX18gPSBXZWJJbnNwZWN0b3IuUHJvZmlsZURhdGFHcmlkTm9kZS5wcm90b3R5cGU7CitX
ZWJJbnNwZWN0b3IuQm90dG9tVXBQcm9maWxlRGF0YUdyaWRUcmVlLnByb3RvdHlwZS5fX3Byb3Rv
X18gPSBXZWJJbnNwZWN0b3IuUHJvZmlsZURhdGFHcmlkVHJlZS5wcm90b3R5cGU7CisKZGlmZiAt
LWdpdCBhL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Qcm9maWxlRGF0YUdyaWRUcmVlLmpz
IGIvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1Byb2ZpbGVEYXRhR3JpZFRyZWUuanMKaW5k
ZXggM2ZiMGUwMC4uMDcxNjJjYiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQt
ZW5kL1Byb2ZpbGVEYXRhR3JpZFRyZWUuanMKKysrIGIvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQt
ZW5kL1Byb2ZpbGVEYXRhR3JpZFRyZWUuanMKQEAgLTEyNiwyMCArMTI2LDYgQEAgV2ViSW5zcGVj
dG9yLlByb2ZpbGVEYXRhR3JpZE5vZGUucHJvdG90eXBlID0gewogICAgICAgICB0aGlzLnByb2Zp
bGVWaWV3Ll9kYXRhR3JpZE5vZGVEZXNlbGVjdGVkKHRoaXMpOwogICAgIH0sCiAKLSAgICBleHBh
bmQ6IGZ1bmN0aW9uKCkKLSAgICB7Ci0gICAgICAgIGlmICghdGhpcy5wYXJlbnQpIHsKLSAgICAg
ICAgICAgIHZhciBjdXJyZW50Q29tcGFyYXRvciA9IHRoaXMucGFyZW50Lmxhc3RDb21wYXJhdG9y
OwotCi0gICAgICAgICAgICBpZiAoIWN1cnJlbnRDb21wYXJhdG9yIHx8IChjdXJyZW50Q29tcGFy
YXRvciA9PT0gdGhpcy5sYXN0Q29tcGFyYXRvcikpCi0gICAgICAgICAgICAgICAgcmV0dXJuOwot
Ci0gICAgICAgICAgICB0aGlzLnNvcnQoY3VycmVudENvbXBhcmF0b3IpOwotICAgICAgICB9Ci0K
LSAgICAgICAgV2ViSW5zcGVjdG9yLkRhdGFHcmlkTm9kZS5wcm90b3R5cGUuZXhwYW5kLmNhbGwo
dGhpcyk7Ci0gICAgfSwKLQogICAgIHNvcnQ6IGZ1bmN0aW9uKC8qRnVuY3Rpb24qLyBjb21wYXJh
dG9yLCAvKkJvb2xlYW4qLyBmb3JjZSkKICAgICB7CiAgICAgICAgIHZhciBncmlkTm9kZUdyb3Vw
cyA9IFtbdGhpc11dOwpAQCAtMTUzLDcgKzEzOSw3IEBAIFdlYkluc3BlY3Rvci5Qcm9maWxlRGF0
YUdyaWROb2RlLnByb3RvdHlwZSA9IHsKIAogICAgICAgICAgICAgICAgIC8vIElmIHRoZSBncmlk
IG5vZGUgaXMgY29sbGFwc2VkLCB0aGVuIGRvbid0IHNvcnQgY2hpbGRyZW4gKHNhdmUgb3BlcmF0
aW9uIGZvciBsYXRlcikuCiAgICAgICAgICAgICAgICAgLy8gSWYgdGhlIGdyaWQgbm9kZSBoYXMg
dGhlIHNhbWUgc29ydGluZyBhcyBwcmV2aW91c2x5LCB0aGVuIHRoZXJlIGlzIG5vIHBvaW50IGlu
IHNvcnRpbmcgaXQgYWdhaW4uCi0gICAgICAgICAgICAgICAgaWYgKCFmb3JjZSAmJiAhZ3JpZE5v
ZGUuZXhwYW5kZWQgfHwgZ3JpZE5vZGUubGFzdENvbXBhcmF0b3IgPT09IGNvbXBhcmF0b3IpIHsK
KyAgICAgICAgICAgICAgICBpZiAoIWZvcmNlICYmICghZ3JpZE5vZGUuZXhwYW5kZWQgfHwgZ3Jp
ZE5vZGUubGFzdENvbXBhcmF0b3IgPT09IGNvbXBhcmF0b3IpKSB7CiAgICAgICAgICAgICAgICAg
ICAgIGlmIChncmlkTm9kZS5jaGlsZHJlbi5sZW5ndGgpCiAgICAgICAgICAgICAgICAgICAgICAg
ICBncmlkTm9kZS5zaG91bGRSZWZyZXNoQ2hpbGRyZW4gPSB0cnVlOwogICAgICAgICAgICAgICAg
ICAgICBjb250aW51ZTsKQEAgLTIyNCw2ICsyMTAsMjYgQEAgV2ViSW5zcGVjdG9yLlByb2ZpbGVE
YXRhR3JpZE5vZGUucHJvdG90eXBlID0gewogICAgICAgICByZXR1cm4gdGhpcy50b3RhbFRpbWUg
LyB0aGlzLnRyZWUudG90YWxUaW1lICogMTAwLjA7CiAgICAgfSwKIAorICAgIGdldCBfcGFyZW50
KCkKKyAgICB7CisgICAgICAgIHJldHVybiB0aGlzLnBhcmVudCAhPT0gdGhpcy5kYXRhR3JpZCA/
IHRoaXMucGFyZW50IDogdGhpcy50cmVlOworICAgIH0sCisKKyAgICBfcG9wdWxhdGU6IGZ1bmN0
aW9uKGV2ZW50KQorICAgIHsKKyAgICAgICAgdGhpcy5kb1BvcHVsYXRlKCk7CisKKyAgICAgICAg
aWYgKHRoaXMuX3BhcmVudCkgeworICAgICAgICAgICAgdmFyIGN1cnJlbnRDb21wYXJhdG9yID0g
dGhpcy5fcGFyZW50Lmxhc3RDb21wYXJhdG9yOworCisgICAgICAgICAgICBpZiAoY3VycmVudENv
bXBhcmF0b3IpCisgICAgICAgICAgICAgICAgdGhpcy5zb3J0KGN1cnJlbnRDb21wYXJhdG9yLCB0
cnVlKTsKKyAgICAgICAgfQorCisgICAgICAgIGlmICh0aGlzLnJlbW92ZUV2ZW50TGlzdGVuZXIp
CisgICAgICAgICAgICB0aGlzLnJlbW92ZUV2ZW50TGlzdGVuZXIoInBvcHVsYXRlIiwgdGhpcy5f
cG9wdWxhdGUsIHRoaXMpOworICAgIH0sCisKICAgICAvLyBXaGVuIGZvY3VzaW5nIGFuZCBjb2xs
YXBzaW5nIHdlIG1vZGlmeSBsb3RzIG9mIG5vZGVzIGluIHRoZSB0cmVlLgogICAgIC8vIFRoaXMg
YWxsb3dzIHVzIHRvIHJlc3RvcmUgdGhlbSBhbGwgdG8gdGhlaXIgb3JpZ2luYWwgc3RhdGUgd2hl
biB3ZSByZXZlcnQuCiAgICAgX3NhdmU6IGZ1bmN0aW9uKCkKZGlmZiAtLWdpdCBhL1dlYkNvcmUv
aW5zcGVjdG9yL2Zyb250LWVuZC9Ub3BEb3duUHJvZmlsZURhdGFHcmlkVHJlZS5qcyBiL1dlYkNv
cmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Ub3BEb3duUHJvZmlsZURhdGFHcmlkVHJlZS5qcwppbmRl
eCBiOWQ4Yjk0Li5lMWE2NzFjIDEwMDY0NAotLS0gYS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1l
bmQvVG9wRG93blByb2ZpbGVEYXRhR3JpZFRyZWUuanMKKysrIGIvV2ViQ29yZS9pbnNwZWN0b3Iv
ZnJvbnQtZW5kL1RvcERvd25Qcm9maWxlRGF0YUdyaWRUcmVlLmpzCkBAIC0zMyw3ICszMyw3IEBA
IFdlYkluc3BlY3Rvci5Ub3BEb3duUHJvZmlsZURhdGFHcmlkTm9kZSA9IGZ1bmN0aW9uKC8qUHJv
ZmlsZVZpZXcqLyBwcm9maWxlVmlldywKIH0KIAogV2ViSW5zcGVjdG9yLlRvcERvd25Qcm9maWxl
RGF0YUdyaWROb2RlLnByb3RvdHlwZSA9IHsKLSAgICBfcG9wdWxhdGU6IGZ1bmN0aW9uKGV2ZW50
KQorICAgIGRvUG9wdWxhdGU6IGZ1bmN0aW9uKCkKICAgICB7CiAgICAgICAgIHZhciBjaGlsZHJl
biA9IHRoaXMuX3JlbWFpbmluZ0NoaWxkcmVuOwogICAgICAgICB2YXIgY2hpbGRyZW5MZW5ndGgg
PSBjaGlsZHJlbi5sZW5ndGg7CkBAIC00MSw5ICs0MSw2IEBAIFdlYkluc3BlY3Rvci5Ub3BEb3du
UHJvZmlsZURhdGFHcmlkTm9kZS5wcm90b3R5cGUgPSB7CiAgICAgICAgIGZvciAodmFyIGkgPSAw
OyBpIDwgY2hpbGRyZW5MZW5ndGg7ICsraSkKICAgICAgICAgICAgIHRoaXMuYXBwZW5kQ2hpbGQo
bmV3IFdlYkluc3BlY3Rvci5Ub3BEb3duUHJvZmlsZURhdGFHcmlkTm9kZSh0aGlzLnByb2ZpbGVW
aWV3LCBjaGlsZHJlbltpXSwgdGhpcy50cmVlKSk7CiAKLSAgICAgICAgaWYgKHRoaXMucmVtb3Zl
RXZlbnRMaXN0ZW5lcikKLSAgICAgICAgICAgIHRoaXMucmVtb3ZlRXZlbnRMaXN0ZW5lcigicG9w
dWxhdGUiLCB0aGlzLl9wb3B1bGF0ZSwgdGhpcyk7Ci0KICAgICAgICAgdGhpcy5fcmVtYWluaW5n
Q2hpbGRyZW4gPSBudWxsOwogICAgIH0sCiAKQEAgLTEwNSw3ICsxMDIsOSBAQCBXZWJJbnNwZWN0
b3IuVG9wRG93blByb2ZpbGVEYXRhR3JpZFRyZWUucHJvdG90eXBlID0gewogICAgICAgICAgICAg
dGhpcy5zb3J0KHRoaXMubGFzdENvbXBhcmF0b3IsIHRydWUpOwogICAgIH0sCiAKLSAgICBfbWVy
Z2U6IFdlYkluc3BlY3Rvci5Ub3BEb3duUHJvZmlsZURhdGFHcmlkTm9kZS5wcm90b3R5cGUuX21l
cmdlCisgICAgX21lcmdlOiBXZWJJbnNwZWN0b3IuVG9wRG93blByb2ZpbGVEYXRhR3JpZE5vZGUu
cHJvdG90eXBlLl9tZXJnZSwKKworICAgIGRvUG9wdWxhdGU6IFdlYkluc3BlY3Rvci5Ub3BEb3du
UHJvZmlsZURhdGFHcmlkTm9kZS5wcm90b3R5cGUuZG9Qb3B1bGF0ZQogfQogCiBXZWJJbnNwZWN0
b3IuVG9wRG93blByb2ZpbGVEYXRhR3JpZFRyZWUucHJvdG90eXBlLl9fcHJvdG9fXyA9IFdlYklu
c3BlY3Rvci5Qcm9maWxlRGF0YUdyaWRUcmVlLnByb3RvdHlwZTsK
</data>
<flag name="review"
          id="22729"
          type_id="1"
          status="+"
          setter="timothy"
    />
    <flag name="commit-queue"
          id="22945"
          type_id="3"
          status="-"
          setter="timothy"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>41532</attachid>
            <date>2009-10-20 15:54:39 -0700</date>
            <delta_ts>2009-10-20 16:10:53 -0700</delta_ts>
            <desc>a patch to submit: renamed doPopulate -&gt; _shouldPopulate</desc>
            <filename>fix-29673-patch</filename>
            <type>text/plain</type>
            <size>14106</size>
            <attacher name="Mikhail Naganov">mnaganov</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
ZDY1NzlhOS4uY2MyNGI4MSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNiBAQAorMjAwOS0xMC0xNyAgTWlraGFpbCBOYWdh
bm92ICA8bW5hZ2Fub3ZAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFdlYiBJbnNwZWN0b3I6IHBvcHVsYXRlIGNoaWxkIG5vZGVz
IGJlZm9yZSBzb3J0aW5nIHRoZW0uCisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTI5NjczCisKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL0Jv
dHRvbVVwUHJvZmlsZURhdGFHcmlkVHJlZS5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5Cb3R0
b21VcFByb2ZpbGVEYXRhR3JpZE5vZGUpOiBTd2FwcGVkIHdpdGggQm90dG9tVXBQcm9maWxlRGF0
YUdyaWRUcmVlIHRvIGJlIGNvbnNpc3RlbnQgd2l0aCBUb3BEb3duUHJvZmlsZURhdGFHcmlkTm9k
ZS4KKyAgICAgICAgKFdlYkluc3BlY3Rvci5Cb3R0b21VcFByb2ZpbGVEYXRhR3JpZE5vZGUucHJv
dG90eXBlLl90YWtlUHJvcGVydGllc0Zyb21Qcm9maWxlRGF0YUdyaWROb2RlKToKKyAgICAgICAg
KFdlYkluc3BlY3Rvci5Cb3R0b21VcFByb2ZpbGVEYXRhR3JpZE5vZGUucHJvdG90eXBlLl9rZWVw
T25seUNoaWxkKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5Cb3R0b21VcFByb2ZpbGVEYXRhR3Jp
ZE5vZGUucHJvdG90eXBlLl9leGNsdWRlKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5Cb3R0b21V
cFByb2ZpbGVEYXRhR3JpZE5vZGUucHJvdG90eXBlLl9tZXJnZSk6CisgICAgICAgIChXZWJJbnNw
ZWN0b3IuQm90dG9tVXBQcm9maWxlRGF0YUdyaWROb2RlLnByb3RvdHlwZS5fc2hhcmVkUG9wdWxh
dGUpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkJvdHRvbVVwUHJvZmlsZURhdGFHcmlkVHJlZS5w
cm90b3R5cGUuZXhjbHVkZSk6CisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9Qcm9maWxl
RGF0YUdyaWRUcmVlLmpzOgorICAgICAgICAoV2ViSW5zcGVjdG9yLlByb2ZpbGVEYXRhR3JpZE5v
ZGUucHJvdG90eXBlLnNvcnQpOiBBZGRlZCBtaXNzaW5nIHBhcmVudGhlc2VzLgorICAgICAgICAo
V2ViSW5zcGVjdG9yLlByb2ZpbGVEYXRhR3JpZE5vZGUucHJvdG90eXBlLmdldCBfcGFyZW50KToK
KyAgICAgICAgKFdlYkluc3BlY3Rvci5Qcm9maWxlRGF0YUdyaWROb2RlLnByb3RvdHlwZS5fcG9w
dWxhdGUpOgorICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvVG9wRG93blByb2ZpbGVEYXRh
R3JpZFRyZWUuanM6CisgICAgICAgIChXZWJJbnNwZWN0b3IuVG9wRG93blByb2ZpbGVEYXRhR3Jp
ZE5vZGUucHJvdG90eXBlLl9zaGFyZWRQb3B1bGF0ZSk6CisKIDIwMDktMTAtMTYgIEpvbiBIb25l
eWN1dHQgIDxqaG9uZXljdXR0QGFwcGxlLmNvbT4KIAogICAgICAgICBBZGQgU1BJIHRvIGRldGVy
bWluZSB3aGV0aGVyIGEgcGx1Zy1pbiBoYXMgZXZlciBiZWVuIGhhbHRlZC4KZGlmZiAtLWdpdCBh
L1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Cb3R0b21VcFByb2ZpbGVEYXRhR3JpZFRyZWUu
anMgYi9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvQm90dG9tVXBQcm9maWxlRGF0YUdyaWRU
cmVlLmpzCmluZGV4IDg5YjRkZGMuLmQyOThjYmQgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaW5zcGVj
dG9yL2Zyb250LWVuZC9Cb3R0b21VcFByb2ZpbGVEYXRhR3JpZFRyZWUuanMKKysrIGIvV2ViQ29y
ZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0JvdHRvbVVwUHJvZmlsZURhdGFHcmlkVHJlZS5qcwpAQCAt
MjksNiArMjksMTEwIEBACiAvLyBlYWNoIGNoaWxkIHN0aWxsIHJlcHJlc2VudCB0aGUgcm9vdCBu
b2RlLiBXZSBoYXZlIHRvIGJlIHBhcnRpY3VsYXJseSBjYXJlZnVsIG9mIHJlY3Vyc2lvbiB3aXRo
IHRoaXMgbW9kZQogLy8gYmVjYXVzZSBhIHJvb3Qgbm9kZSBjYW4gcmVwcmVzZW50IGl0c2VsZiBB
TkQgYW4gYW5jZXN0b3IuCiAKK1dlYkluc3BlY3Rvci5Cb3R0b21VcFByb2ZpbGVEYXRhR3JpZE5v
ZGUgPSBmdW5jdGlvbigvKlByb2ZpbGVWaWV3Ki8gcHJvZmlsZVZpZXcsIC8qUHJvZmlsZU5vZGUq
LyBwcm9maWxlTm9kZSwgLypCb3R0b21VcFByb2ZpbGVEYXRhR3JpZFRyZWUqLyBvd25pbmdUcmVl
KQoreworICAgIC8vIEluIGJvdHRvbSB1cCBtb2RlLCBvdXIgcGFyZW50cyBhcmUgb3VyIGNoaWxk
cmVuIHNpbmNlIHdlIGRpc3BsYXkgYW4gaW52ZXJ0ZWQgdHJlZS4KKyAgICAvLyBIb3dldmVyLCB3
ZSBkb24ndCB3YW50IHRvIHNob3cgdGhlIHZlcnkgdG9wIHBhcmVudCBzaW5jZSBpdCBpcyByZWR1
bmRhbnQuCisgICAgdmFyIGhhc0NoaWxkcmVuID0gISEocHJvZmlsZU5vZGUucGFyZW50ICYmIHBy
b2ZpbGVOb2RlLnBhcmVudC5wYXJlbnQpOworCisgICAgV2ViSW5zcGVjdG9yLlByb2ZpbGVEYXRh
R3JpZE5vZGUuY2FsbCh0aGlzLCBwcm9maWxlVmlldywgcHJvZmlsZU5vZGUsIG93bmluZ1RyZWUs
IGhhc0NoaWxkcmVuKTsKKworICAgIHRoaXMuX3JlbWFpbmluZ05vZGVJbmZvcyA9IFtdOworfQor
CitXZWJJbnNwZWN0b3IuQm90dG9tVXBQcm9maWxlRGF0YUdyaWROb2RlLnByb3RvdHlwZSA9IHsK
KyAgICBfdGFrZVByb3BlcnRpZXNGcm9tUHJvZmlsZURhdGFHcmlkTm9kZTogZnVuY3Rpb24oLypQ
cm9maWxlRGF0YUdyaWROb2RlKi8gcHJvZmlsZURhdGFHcmlkTm9kZSkKKyAgICB7CisgICAgICAg
IHRoaXMuX3NhdmUoKTsKKworICAgICAgICB0aGlzLnNlbGZUaW1lID0gcHJvZmlsZURhdGFHcmlk
Tm9kZS5zZWxmVGltZTsKKyAgICAgICAgdGhpcy50b3RhbFRpbWUgPSBwcm9maWxlRGF0YUdyaWRO
b2RlLnRvdGFsVGltZTsKKyAgICAgICAgdGhpcy5udW1iZXJPZkNhbGxzID0gcHJvZmlsZURhdGFH
cmlkTm9kZS5udW1iZXJPZkNhbGxzOworICAgIH0sCisKKyAgICAvLyBXaGVuIGZvY3VzaW5nLCB3
ZSBrZWVwIGp1c3QgdGhlIG1lbWJlcnMgb2YgdGhlIGNhbGxzdGFjay4KKyAgICBfa2VlcE9ubHlD
aGlsZDogZnVuY3Rpb24oLypQcm9maWxlRGF0YUdyaWROb2RlKi8gY2hpbGQpCisgICAgeworICAg
ICAgICB0aGlzLl9zYXZlKCk7CisKKyAgICAgICAgdGhpcy5yZW1vdmVDaGlsZHJlbigpOworICAg
ICAgICB0aGlzLmFwcGVuZENoaWxkKGNoaWxkKTsKKyAgICB9LAorCisgICAgX2V4Y2x1ZGU6IGZ1
bmN0aW9uKGFDYWxsVUlEKQorICAgIHsKKyAgICAgICAgaWYgKHRoaXMuX3JlbWFpbmluZ05vZGVJ
bmZvcykKKyAgICAgICAgICAgIHRoaXMuX3BvcHVsYXRlKCk7CisKKyAgICAgICAgdGhpcy5fc2F2
ZSgpOworCisgICAgICAgIHZhciBjaGlsZHJlbiA9IHRoaXMuY2hpbGRyZW47CisgICAgICAgIHZh
ciBpbmRleCA9IHRoaXMuY2hpbGRyZW4ubGVuZ3RoOworCisgICAgICAgIHdoaWxlIChpbmRleC0t
KQorICAgICAgICAgICAgY2hpbGRyZW5baW5kZXhdLl9leGNsdWRlKGFDYWxsVUlEKTsKKworICAg
ICAgICB2YXIgY2hpbGQgPSB0aGlzLmNoaWxkcmVuQnlDYWxsVUlEW2FDYWxsVUlEXTsKKworICAg
ICAgICBpZiAoY2hpbGQpCisgICAgICAgICAgICB0aGlzLl9tZXJnZShjaGlsZCwgdHJ1ZSk7Cisg
ICAgfSwKKworICAgIF9tZXJnZTogZnVuY3Rpb24oLypQcm9maWxlRGF0YUdyaWROb2RlKi8gY2hp
bGQsIC8qQm9vbGVhbiovIHNob3VsZEFic29yYikKKyAgICB7CisgICAgICAgIHRoaXMuc2VsZlRp
bWUgLT0gY2hpbGQuc2VsZlRpbWU7CisKKyAgICAgICAgV2ViSW5zcGVjdG9yLlByb2ZpbGVEYXRh
R3JpZE5vZGUucHJvdG90eXBlLl9tZXJnZS5jYWxsKHRoaXMsIGNoaWxkLCBzaG91bGRBYnNvcmIp
OworICAgIH0sCisKKyAgICBfc2hhcmVkUG9wdWxhdGU6IGZ1bmN0aW9uKCkKKyAgICB7CisgICAg
ICAgIHZhciByZW1haW5pbmdOb2RlSW5mb3MgPSB0aGlzLl9yZW1haW5pbmdOb2RlSW5mb3M7Cisg
ICAgICAgIHZhciBjb3VudCA9IHJlbWFpbmluZ05vZGVJbmZvcy5sZW5ndGg7CisKKyAgICAgICAg
Zm9yICh2YXIgaW5kZXggPSAwOyBpbmRleCA8IGNvdW50OyArK2luZGV4KSB7CisgICAgICAgICAg
ICB2YXIgbm9kZUluZm8gPSByZW1haW5pbmdOb2RlSW5mb3NbaW5kZXhdOworICAgICAgICAgICAg
dmFyIGFuY2VzdG9yID0gbm9kZUluZm8uYW5jZXN0b3I7CisgICAgICAgICAgICB2YXIgZm9jdXNO
b2RlID0gbm9kZUluZm8uZm9jdXNOb2RlOworICAgICAgICAgICAgdmFyIGNoaWxkID0gdGhpcy5m
aW5kQ2hpbGQoYW5jZXN0b3IpOworCisgICAgICAgICAgICAvLyBJZiB3ZSBhbHJlYWR5IGhhdmUg
dGhpcyBjaGlsZCwgdGhlbiBtZXJnZSB0aGUgZGF0YSB0b2dldGhlci4KKyAgICAgICAgICAgIGlm
IChjaGlsZCkgeworICAgICAgICAgICAgICAgIHZhciB0b3RhbFRpbWVBY2NvdW50ZWRGb3IgPSBu
b2RlSW5mby50b3RhbFRpbWVBY2NvdW50ZWRGb3I7CisKKyAgICAgICAgICAgICAgICBjaGlsZC5z
ZWxmVGltZSArPSBmb2N1c05vZGUuc2VsZlRpbWU7CisgICAgICAgICAgICAgICAgY2hpbGQubnVt
YmVyT2ZDYWxscyArPSBmb2N1c05vZGUubnVtYmVyT2ZDYWxsczsKKworICAgICAgICAgICAgICAg
IGlmICghdG90YWxUaW1lQWNjb3VudGVkRm9yKQorICAgICAgICAgICAgICAgICAgICBjaGlsZC50
b3RhbFRpbWUgKz0gZm9jdXNOb2RlLnRvdGFsVGltZTsKKyAgICAgICAgICAgIH0gZWxzZSB7Cisg
ICAgICAgICAgICAgICAgLy8gSWYgbm90LCBhZGQgaXQgYXMgYSB0cnVlIGFuY2VzdG9yLgorICAg
ICAgICAgICAgICAgIC8vIEluIGhlYXZ5IG1vZGUsIHdlIHRha2Ugb3VyIHZpc3VhbCBpZGVudGl0
eSBmcm9tIGFuY2VzdG9yIG5vZGUuLi4KKyAgICAgICAgICAgICAgICB2YXIgY2hpbGQgPSBuZXcg
V2ViSW5zcGVjdG9yLkJvdHRvbVVwUHJvZmlsZURhdGFHcmlkTm9kZSh0aGlzLnByb2ZpbGVWaWV3
LCBhbmNlc3RvciwgdGhpcy50cmVlKTsKKworICAgICAgICAgICAgICAgIGlmIChhbmNlc3RvciAh
PT0gZm9jdXNOb2RlKSB7CisgICAgICAgICAgICAgICAgICAgIC8vIGJ1dCB0aGUgYWN0dWFsIHN0
YXRpc3RpY3MgZnJvbSB0aGUgInJvb3QiIG5vZGUgKGJvdHRvbSBvZiB0aGUgY2FsbHN0YWNrKS4K
KyAgICAgICAgICAgICAgICAgICAgY2hpbGQuc2VsZlRpbWUgPSBmb2N1c05vZGUuc2VsZlRpbWU7
CisgICAgICAgICAgICAgICAgICAgIGNoaWxkLnRvdGFsVGltZSA9IGZvY3VzTm9kZS50b3RhbFRp
bWU7CisgICAgICAgICAgICAgICAgICAgIGNoaWxkLm51bWJlck9mQ2FsbHMgPSBmb2N1c05vZGUu
bnVtYmVyT2ZDYWxsczsKKyAgICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAgICB0aGlz
LmFwcGVuZENoaWxkKGNoaWxkKTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgdmFyIHBh
cmVudCA9IGFuY2VzdG9yLnBhcmVudDsKKyAgICAgICAgICAgIGlmIChwYXJlbnQgJiYgcGFyZW50
LnBhcmVudCkgeworICAgICAgICAgICAgICAgIG5vZGVJbmZvLmFuY2VzdG9yID0gcGFyZW50Owor
ICAgICAgICAgICAgICAgIGNoaWxkLl9yZW1haW5pbmdOb2RlSW5mb3MucHVzaChub2RlSW5mbyk7
CisgICAgICAgICAgICB9CisgICAgICAgIH0KKworICAgICAgICBkZWxldGUgdGhpcy5fcmVtYWlu
aW5nTm9kZUluZm9zOworICAgIH0KK30KKworV2ViSW5zcGVjdG9yLkJvdHRvbVVwUHJvZmlsZURh
dGFHcmlkTm9kZS5wcm90b3R5cGUuX19wcm90b19fID0gV2ViSW5zcGVjdG9yLlByb2ZpbGVEYXRh
R3JpZE5vZGUucHJvdG90eXBlOworCiBXZWJJbnNwZWN0b3IuQm90dG9tVXBQcm9maWxlRGF0YUdy
aWRUcmVlID0gZnVuY3Rpb24oLypQcm9maWxlVmlldyovIGFQcm9maWxlVmlldywgLypQcm9maWxl
Tm9kZSovIGFQcm9maWxlTm9kZSkKIHsKICAgICBXZWJJbnNwZWN0b3IuUHJvZmlsZURhdGFHcmlk
VHJlZS5jYWxsKHRoaXMsIGFQcm9maWxlVmlldywgYVByb2ZpbGVOb2RlKTsKQEAgLTEzOSwxMTQg
KzI0MywxMCBAQCBXZWJJbnNwZWN0b3IuQm90dG9tVXBQcm9maWxlRGF0YUdyaWRUcmVlLnByb3Rv
dHlwZSA9IHsKIAogICAgICAgICBpZiAodGhpcy5sYXN0Q29tcGFyYXRvcikKICAgICAgICAgICAg
IHRoaXMuc29ydCh0aGlzLmxhc3RDb21wYXJhdG9yLCB0cnVlKTsKLSAgICB9Ci19Ci0KLVdlYklu
c3BlY3Rvci5Cb3R0b21VcFByb2ZpbGVEYXRhR3JpZFRyZWUucHJvdG90eXBlLl9fcHJvdG9fXyA9
IFdlYkluc3BlY3Rvci5Qcm9maWxlRGF0YUdyaWRUcmVlLnByb3RvdHlwZTsKLQotV2ViSW5zcGVj
dG9yLkJvdHRvbVVwUHJvZmlsZURhdGFHcmlkTm9kZSA9IGZ1bmN0aW9uKC8qUHJvZmlsZVZpZXcq
LyBwcm9maWxlVmlldywgLypQcm9maWxlTm9kZSovIHByb2ZpbGVOb2RlLCAvKkJvdHRvbVVwUHJv
ZmlsZURhdGFHcmlkVHJlZSovIG93bmluZ1RyZWUpCi17Ci0gICAgLy8gSW4gYm90dG9tIHVwIG1v
ZGUsIG91ciBwYXJlbnRzIGFyZSBvdXIgY2hpbGRyZW4gc2luY2Ugd2UgZGlzcGxheSBhbiBpbnZl
cnRlZCB0cmVlLgotICAgIC8vIEhvd2V2ZXIsIHdlIGRvbid0IHdhbnQgdG8gc2hvdyB0aGUgdmVy
eSB0b3AgcGFyZW50IHNpbmNlIGl0IGlzIHJlZHVuZGFudC4KLSAgICB2YXIgaGFzQ2hpbGRyZW4g
PSAhIShwcm9maWxlTm9kZS5wYXJlbnQgJiYgcHJvZmlsZU5vZGUucGFyZW50LnBhcmVudCk7Ci0K
LSAgICBXZWJJbnNwZWN0b3IuUHJvZmlsZURhdGFHcmlkTm9kZS5jYWxsKHRoaXMsIHByb2ZpbGVW
aWV3LCBwcm9maWxlTm9kZSwgb3duaW5nVHJlZSwgaGFzQ2hpbGRyZW4pOwotCi0gICAgdGhpcy5f
cmVtYWluaW5nTm9kZUluZm9zID0gW107Ci19Ci0KLVdlYkluc3BlY3Rvci5Cb3R0b21VcFByb2Zp
bGVEYXRhR3JpZE5vZGUucHJvdG90eXBlID0gewotICAgIF90YWtlUHJvcGVydGllc0Zyb21Qcm9m
aWxlRGF0YUdyaWROb2RlOiBmdW5jdGlvbigvKlByb2ZpbGVEYXRhR3JpZE5vZGUqLyBwcm9maWxl
RGF0YUdyaWROb2RlKQotICAgIHsKLSAgICAgICAgdGhpcy5fc2F2ZSgpOwotCi0gICAgICAgIHRo
aXMuc2VsZlRpbWUgPSBwcm9maWxlRGF0YUdyaWROb2RlLnNlbGZUaW1lOwotICAgICAgICB0aGlz
LnRvdGFsVGltZSA9IHByb2ZpbGVEYXRhR3JpZE5vZGUudG90YWxUaW1lOwotICAgICAgICB0aGlz
Lm51bWJlck9mQ2FsbHMgPSBwcm9maWxlRGF0YUdyaWROb2RlLm51bWJlck9mQ2FsbHM7Ci0gICAg
fSwKLQotICAgIC8vIFdoZW4gZm9jdXNpbmcsIHdlIGtlZXAganVzdCB0aGUgbWVtYmVycyBvZiB0
aGUgY2FsbHN0YWNrLgotICAgIF9rZWVwT25seUNoaWxkOiBmdW5jdGlvbigvKlByb2ZpbGVEYXRh
R3JpZE5vZGUqLyBjaGlsZCkKLSAgICB7Ci0gICAgICAgIHRoaXMuX3NhdmUoKTsKLQotICAgICAg
ICB0aGlzLnJlbW92ZUNoaWxkcmVuKCk7Ci0gICAgICAgIHRoaXMuYXBwZW5kQ2hpbGQoY2hpbGQp
OwotICAgIH0sCi0KLSAgICBfZXhjbHVkZTogZnVuY3Rpb24oYUNhbGxVSUQpCi0gICAgewotICAg
ICAgICBpZiAodGhpcy5fcmVtYWluaW5nTm9kZUluZm9zKQotICAgICAgICAgICAgdGhpcy5fcG9w
dWxhdGUoKTsKLQotICAgICAgICB0aGlzLl9zYXZlKCk7Ci0KLSAgICAgICAgdmFyIGNoaWxkcmVu
ID0gdGhpcy5jaGlsZHJlbjsKLSAgICAgICAgdmFyIGluZGV4ID0gdGhpcy5jaGlsZHJlbi5sZW5n
dGg7Ci0KLSAgICAgICAgd2hpbGUgKGluZGV4LS0pCi0gICAgICAgICAgICBjaGlsZHJlbltpbmRl
eF0uX2V4Y2x1ZGUoYUNhbGxVSUQpOwotCi0gICAgICAgIHZhciBjaGlsZCA9IHRoaXMuY2hpbGRy
ZW5CeUNhbGxVSURbYUNhbGxVSURdOwotCi0gICAgICAgIGlmIChjaGlsZCkKLSAgICAgICAgICAg
IHRoaXMuX21lcmdlKGNoaWxkLCB0cnVlKTsKLSAgICB9LAotCi0gICAgX21lcmdlOiBmdW5jdGlv
bigvKlByb2ZpbGVEYXRhR3JpZE5vZGUqLyBjaGlsZCwgLypCb29sZWFuKi8gc2hvdWxkQWJzb3Ji
KQotICAgIHsKLSAgICAgICAgdGhpcy5zZWxmVGltZSAtPSBjaGlsZC5zZWxmVGltZTsKLQotICAg
ICAgICBXZWJJbnNwZWN0b3IuUHJvZmlsZURhdGFHcmlkTm9kZS5wcm90b3R5cGUuX21lcmdlLmNh
bGwodGhpcywgY2hpbGQsIHNob3VsZEFic29yYik7CiAgICAgfSwKIAotICAgIF9wb3B1bGF0ZTog
ZnVuY3Rpb24oZXZlbnQpCi0gICAgewotICAgICAgICB2YXIgcmVtYWluaW5nTm9kZUluZm9zID0g
dGhpcy5fcmVtYWluaW5nTm9kZUluZm9zOwotICAgICAgICB2YXIgY291bnQgPSByZW1haW5pbmdO
b2RlSW5mb3MubGVuZ3RoOwotCi0gICAgICAgIGZvciAodmFyIGluZGV4ID0gMDsgaW5kZXggPCBj
b3VudDsgKytpbmRleCkgewotICAgICAgICAgICAgdmFyIG5vZGVJbmZvID0gcmVtYWluaW5nTm9k
ZUluZm9zW2luZGV4XTsKLSAgICAgICAgICAgIHZhciBhbmNlc3RvciA9IG5vZGVJbmZvLmFuY2Vz
dG9yOwotICAgICAgICAgICAgdmFyIGZvY3VzTm9kZSA9IG5vZGVJbmZvLmZvY3VzTm9kZTsKLSAg
ICAgICAgICAgIHZhciBjaGlsZCA9IHRoaXMuZmluZENoaWxkKGFuY2VzdG9yKTsKLQotICAgICAg
ICAgICAgLy8gSWYgd2UgYWxyZWFkeSBoYXZlIHRoaXMgY2hpbGQsIHRoZW4gbWVyZ2UgdGhlIGRh
dGEgdG9nZXRoZXIuCi0gICAgICAgICAgICBpZiAoY2hpbGQpIHsKLSAgICAgICAgICAgICAgICB2
YXIgdG90YWxUaW1lQWNjb3VudGVkRm9yID0gbm9kZUluZm8udG90YWxUaW1lQWNjb3VudGVkRm9y
OwotCi0gICAgICAgICAgICAgICAgY2hpbGQuc2VsZlRpbWUgKz0gZm9jdXNOb2RlLnNlbGZUaW1l
OwotICAgICAgICAgICAgICAgIGNoaWxkLm51bWJlck9mQ2FsbHMgKz0gZm9jdXNOb2RlLm51bWJl
ck9mQ2FsbHM7Ci0KLSAgICAgICAgICAgICAgICBpZiAoIXRvdGFsVGltZUFjY291bnRlZEZvcikK
LSAgICAgICAgICAgICAgICAgICAgY2hpbGQudG90YWxUaW1lICs9IGZvY3VzTm9kZS50b3RhbFRp
bWU7Ci0gICAgICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgICAgIC8vIElmIG5vdCwgYWRk
IGl0IGFzIGEgdHJ1ZSBhbmNlc3Rvci4KLSAgICAgICAgICAgICAgICAvLyBJbiBoZWF2eSBtb2Rl
LCB3ZSB0YWtlIG91ciB2aXN1YWwgaWRlbnRpdHkgZnJvbSBhbmNlc3RvciBub2RlLi4uCi0gICAg
ICAgICAgICAgICAgdmFyIGNoaWxkID0gbmV3IFdlYkluc3BlY3Rvci5Cb3R0b21VcFByb2ZpbGVE
YXRhR3JpZE5vZGUodGhpcy5wcm9maWxlVmlldywgYW5jZXN0b3IsIHRoaXMudHJlZSk7Ci0KLSAg
ICAgICAgICAgICAgICBpZiAoYW5jZXN0b3IgIT09IGZvY3VzTm9kZSkgewotICAgICAgICAgICAg
ICAgICAgICAvLyBidXQgdGhlIGFjdHVhbCBzdGF0aXN0aWNzIGZyb20gdGhlICJyb290IiBub2Rl
IChib3R0b20gb2YgdGhlIGNhbGxzdGFjaykuCi0gICAgICAgICAgICAgICAgICAgIGNoaWxkLnNl
bGZUaW1lID0gZm9jdXNOb2RlLnNlbGZUaW1lOwotICAgICAgICAgICAgICAgICAgICBjaGlsZC50
b3RhbFRpbWUgPSBmb2N1c05vZGUudG90YWxUaW1lOwotICAgICAgICAgICAgICAgICAgICBjaGls
ZC5udW1iZXJPZkNhbGxzID0gZm9jdXNOb2RlLm51bWJlck9mQ2FsbHM7Ci0gICAgICAgICAgICAg
ICAgfQotCi0gICAgICAgICAgICAgICAgdGhpcy5hcHBlbmRDaGlsZChjaGlsZCk7Ci0gICAgICAg
ICAgICB9Ci0KLSAgICAgICAgICAgIHZhciBwYXJlbnQgPSBhbmNlc3Rvci5wYXJlbnQ7Ci0gICAg
ICAgICAgICBpZiAocGFyZW50ICYmIHBhcmVudC5wYXJlbnQpIHsKLSAgICAgICAgICAgICAgICBu
b2RlSW5mby5hbmNlc3RvciA9IHBhcmVudDsKLSAgICAgICAgICAgICAgICBjaGlsZC5fcmVtYWlu
aW5nTm9kZUluZm9zLnB1c2gobm9kZUluZm8pOwotICAgICAgICAgICAgfQotICAgICAgICB9Ci0K
LSAgICAgICAgZGVsZXRlIHRoaXMuX3JlbWFpbmluZ05vZGVJbmZvczsKLQotICAgICAgICBpZiAo
dGhpcy5yZW1vdmVFdmVudExpc3RlbmVyKQotICAgICAgICAgICAgdGhpcy5yZW1vdmVFdmVudExp
c3RlbmVyKCJwb3B1bGF0ZSIsIHRoaXMuX3BvcHVsYXRlLCB0aGlzKTsKLSAgICB9CisgICAgX3No
YXJlZFBvcHVsYXRlOiBXZWJJbnNwZWN0b3IuQm90dG9tVXBQcm9maWxlRGF0YUdyaWROb2RlLnBy
b3RvdHlwZS5fc2hhcmVkUG9wdWxhdGUKIH0KIAotV2ViSW5zcGVjdG9yLkJvdHRvbVVwUHJvZmls
ZURhdGFHcmlkTm9kZS5wcm90b3R5cGUuX19wcm90b19fID0gV2ViSW5zcGVjdG9yLlByb2ZpbGVE
YXRhR3JpZE5vZGUucHJvdG90eXBlOworV2ViSW5zcGVjdG9yLkJvdHRvbVVwUHJvZmlsZURhdGFH
cmlkVHJlZS5wcm90b3R5cGUuX19wcm90b19fID0gV2ViSW5zcGVjdG9yLlByb2ZpbGVEYXRhR3Jp
ZFRyZWUucHJvdG90eXBlOworCmRpZmYgLS1naXQgYS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1l
bmQvUHJvZmlsZURhdGFHcmlkVHJlZS5qcyBiL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Q
cm9maWxlRGF0YUdyaWRUcmVlLmpzCmluZGV4IDNmYjBlMDAuLjA3MTYyY2IgMTAwNjQ0Ci0tLSBh
L1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Qcm9maWxlRGF0YUdyaWRUcmVlLmpzCisrKyBi
L1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Qcm9maWxlRGF0YUdyaWRUcmVlLmpzCkBAIC0x
MjYsMjAgKzEyNiw2IEBAIFdlYkluc3BlY3Rvci5Qcm9maWxlRGF0YUdyaWROb2RlLnByb3RvdHlw
ZSA9IHsKICAgICAgICAgdGhpcy5wcm9maWxlVmlldy5fZGF0YUdyaWROb2RlRGVzZWxlY3RlZCh0
aGlzKTsKICAgICB9LAogCi0gICAgZXhwYW5kOiBmdW5jdGlvbigpCi0gICAgewotICAgICAgICBp
ZiAoIXRoaXMucGFyZW50KSB7Ci0gICAgICAgICAgICB2YXIgY3VycmVudENvbXBhcmF0b3IgPSB0
aGlzLnBhcmVudC5sYXN0Q29tcGFyYXRvcjsKLQotICAgICAgICAgICAgaWYgKCFjdXJyZW50Q29t
cGFyYXRvciB8fCAoY3VycmVudENvbXBhcmF0b3IgPT09IHRoaXMubGFzdENvbXBhcmF0b3IpKQot
ICAgICAgICAgICAgICAgIHJldHVybjsKLQotICAgICAgICAgICAgdGhpcy5zb3J0KGN1cnJlbnRD
b21wYXJhdG9yKTsKLSAgICAgICAgfQotCi0gICAgICAgIFdlYkluc3BlY3Rvci5EYXRhR3JpZE5v
ZGUucHJvdG90eXBlLmV4cGFuZC5jYWxsKHRoaXMpOwotICAgIH0sCi0KICAgICBzb3J0OiBmdW5j
dGlvbigvKkZ1bmN0aW9uKi8gY29tcGFyYXRvciwgLypCb29sZWFuKi8gZm9yY2UpCiAgICAgewog
ICAgICAgICB2YXIgZ3JpZE5vZGVHcm91cHMgPSBbW3RoaXNdXTsKQEAgLTE1Myw3ICsxMzksNyBA
QCBXZWJJbnNwZWN0b3IuUHJvZmlsZURhdGFHcmlkTm9kZS5wcm90b3R5cGUgPSB7CiAKICAgICAg
ICAgICAgICAgICAvLyBJZiB0aGUgZ3JpZCBub2RlIGlzIGNvbGxhcHNlZCwgdGhlbiBkb24ndCBz
b3J0IGNoaWxkcmVuIChzYXZlIG9wZXJhdGlvbiBmb3IgbGF0ZXIpLgogICAgICAgICAgICAgICAg
IC8vIElmIHRoZSBncmlkIG5vZGUgaGFzIHRoZSBzYW1lIHNvcnRpbmcgYXMgcHJldmlvdXNseSwg
dGhlbiB0aGVyZSBpcyBubyBwb2ludCBpbiBzb3J0aW5nIGl0IGFnYWluLgotICAgICAgICAgICAg
ICAgIGlmICghZm9yY2UgJiYgIWdyaWROb2RlLmV4cGFuZGVkIHx8IGdyaWROb2RlLmxhc3RDb21w
YXJhdG9yID09PSBjb21wYXJhdG9yKSB7CisgICAgICAgICAgICAgICAgaWYgKCFmb3JjZSAmJiAo
IWdyaWROb2RlLmV4cGFuZGVkIHx8IGdyaWROb2RlLmxhc3RDb21wYXJhdG9yID09PSBjb21wYXJh
dG9yKSkgewogICAgICAgICAgICAgICAgICAgICBpZiAoZ3JpZE5vZGUuY2hpbGRyZW4ubGVuZ3Ro
KQogICAgICAgICAgICAgICAgICAgICAgICAgZ3JpZE5vZGUuc2hvdWxkUmVmcmVzaENoaWxkcmVu
ID0gdHJ1ZTsKICAgICAgICAgICAgICAgICAgICAgY29udGludWU7CkBAIC0yMjQsNiArMjEwLDI2
IEBAIFdlYkluc3BlY3Rvci5Qcm9maWxlRGF0YUdyaWROb2RlLnByb3RvdHlwZSA9IHsKICAgICAg
ICAgcmV0dXJuIHRoaXMudG90YWxUaW1lIC8gdGhpcy50cmVlLnRvdGFsVGltZSAqIDEwMC4wOwog
ICAgIH0sCiAKKyAgICBnZXQgX3BhcmVudCgpCisgICAgeworICAgICAgICByZXR1cm4gdGhpcy5w
YXJlbnQgIT09IHRoaXMuZGF0YUdyaWQgPyB0aGlzLnBhcmVudCA6IHRoaXMudHJlZTsKKyAgICB9
LAorCisgICAgX3BvcHVsYXRlOiBmdW5jdGlvbihldmVudCkKKyAgICB7CisgICAgICAgIHRoaXMu
X3NoYXJlZFBvcHVsYXRlKCk7CisKKyAgICAgICAgaWYgKHRoaXMuX3BhcmVudCkgeworICAgICAg
ICAgICAgdmFyIGN1cnJlbnRDb21wYXJhdG9yID0gdGhpcy5fcGFyZW50Lmxhc3RDb21wYXJhdG9y
OworCisgICAgICAgICAgICBpZiAoY3VycmVudENvbXBhcmF0b3IpCisgICAgICAgICAgICAgICAg
dGhpcy5zb3J0KGN1cnJlbnRDb21wYXJhdG9yLCB0cnVlKTsKKyAgICAgICAgfQorCisgICAgICAg
IGlmICh0aGlzLnJlbW92ZUV2ZW50TGlzdGVuZXIpCisgICAgICAgICAgICB0aGlzLnJlbW92ZUV2
ZW50TGlzdGVuZXIoInBvcHVsYXRlIiwgdGhpcy5fcG9wdWxhdGUsIHRoaXMpOworICAgIH0sCisK
ICAgICAvLyBXaGVuIGZvY3VzaW5nIGFuZCBjb2xsYXBzaW5nIHdlIG1vZGlmeSBsb3RzIG9mIG5v
ZGVzIGluIHRoZSB0cmVlLgogICAgIC8vIFRoaXMgYWxsb3dzIHVzIHRvIHJlc3RvcmUgdGhlbSBh
bGwgdG8gdGhlaXIgb3JpZ2luYWwgc3RhdGUgd2hlbiB3ZSByZXZlcnQuCiAgICAgX3NhdmU6IGZ1
bmN0aW9uKCkKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Ub3BEb3du
UHJvZmlsZURhdGFHcmlkVHJlZS5qcyBiL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Ub3BE
b3duUHJvZmlsZURhdGFHcmlkVHJlZS5qcwppbmRleCBiOWQ4Yjk0Li5lMWE2NzFjIDEwMDY0NAot
LS0gYS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvVG9wRG93blByb2ZpbGVEYXRhR3JpZFRy
ZWUuanMKKysrIGIvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1RvcERvd25Qcm9maWxlRGF0
YUdyaWRUcmVlLmpzCkBAIC0zMyw3ICszMyw3IEBAIFdlYkluc3BlY3Rvci5Ub3BEb3duUHJvZmls
ZURhdGFHcmlkTm9kZSA9IGZ1bmN0aW9uKC8qUHJvZmlsZVZpZXcqLyBwcm9maWxlVmlldywKIH0K
IAogV2ViSW5zcGVjdG9yLlRvcERvd25Qcm9maWxlRGF0YUdyaWROb2RlLnByb3RvdHlwZSA9IHsK
LSAgICBfcG9wdWxhdGU6IGZ1bmN0aW9uKGV2ZW50KQorICAgIF9zaGFyZWRQb3B1bGF0ZTogZnVu
Y3Rpb24oKQogICAgIHsKICAgICAgICAgdmFyIGNoaWxkcmVuID0gdGhpcy5fcmVtYWluaW5nQ2hp
bGRyZW47CiAgICAgICAgIHZhciBjaGlsZHJlbkxlbmd0aCA9IGNoaWxkcmVuLmxlbmd0aDsKQEAg
LTQxLDkgKzQxLDYgQEAgV2ViSW5zcGVjdG9yLlRvcERvd25Qcm9maWxlRGF0YUdyaWROb2RlLnBy
b3RvdHlwZSA9IHsKICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBjaGlsZHJlbkxlbmd0aDsg
KytpKQogICAgICAgICAgICAgdGhpcy5hcHBlbmRDaGlsZChuZXcgV2ViSW5zcGVjdG9yLlRvcERv
d25Qcm9maWxlRGF0YUdyaWROb2RlKHRoaXMucHJvZmlsZVZpZXcsIGNoaWxkcmVuW2ldLCB0aGlz
LnRyZWUpKTsKIAotICAgICAgICBpZiAodGhpcy5yZW1vdmVFdmVudExpc3RlbmVyKQotICAgICAg
ICAgICAgdGhpcy5yZW1vdmVFdmVudExpc3RlbmVyKCJwb3B1bGF0ZSIsIHRoaXMuX3BvcHVsYXRl
LCB0aGlzKTsKLQogICAgICAgICB0aGlzLl9yZW1haW5pbmdDaGlsZHJlbiA9IG51bGw7CiAgICAg
fSwKIApAQCAtMTA1LDcgKzEwMiw5IEBAIFdlYkluc3BlY3Rvci5Ub3BEb3duUHJvZmlsZURhdGFH
cmlkVHJlZS5wcm90b3R5cGUgPSB7CiAgICAgICAgICAgICB0aGlzLnNvcnQodGhpcy5sYXN0Q29t
cGFyYXRvciwgdHJ1ZSk7CiAgICAgfSwKIAotICAgIF9tZXJnZTogV2ViSW5zcGVjdG9yLlRvcERv
d25Qcm9maWxlRGF0YUdyaWROb2RlLnByb3RvdHlwZS5fbWVyZ2UKKyAgICBfbWVyZ2U6IFdlYklu
c3BlY3Rvci5Ub3BEb3duUHJvZmlsZURhdGFHcmlkTm9kZS5wcm90b3R5cGUuX21lcmdlLAorCisg
ICAgX3NoYXJlZFBvcHVsYXRlOiBXZWJJbnNwZWN0b3IuVG9wRG93blByb2ZpbGVEYXRhR3JpZE5v
ZGUucHJvdG90eXBlLl9zaGFyZWRQb3B1bGF0ZQogfQogCiBXZWJJbnNwZWN0b3IuVG9wRG93blBy
b2ZpbGVEYXRhR3JpZFRyZWUucHJvdG90eXBlLl9fcHJvdG9fXyA9IFdlYkluc3BlY3Rvci5Qcm9m
aWxlRGF0YUdyaWRUcmVlLnByb3RvdHlwZTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>