<?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>95426</bug_id>
          
          <creation_ts>2012-08-30 00:24:02 -0700</creation_ts>
          <short_desc>Web Inspector: [WebGL] Link WebGL calls to the source code where it was made</short_desc>
          <delta_ts>2012-08-31 02:55:52 -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="Andrey Adaikin">aandrey</reporter>
          <assigned_to name="Andrey Adaikin">aandrey</assigned_to>
          <cc>apavlov</cc>
    
    <cc>bweinstein</cc>
    
    <cc>joepeck</cc>
    
    <cc>keishi</cc>
    
    <cc>loislo</cc>
    
    <cc>pfeldman</cc>
    
    <cc>pmuellr</cc>
    
    <cc>rik</cc>
    
    <cc>timothy</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>yurys</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>708363</commentid>
    <comment_count>0</comment_count>
    <who name="Andrey Adaikin">aandrey</who>
    <bug_when>2012-08-30 00:24:02 -0700</bug_when>
    <thetext>Patch to follow.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>708366</commentid>
    <comment_count>1</comment_count>
      <attachid>161412</attachid>
    <who name="Andrey Adaikin">aandrey</who>
    <bug_when>2012-08-30 00:33:27 -0700</bug_when>
    <thetext>Created attachment 161412
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>708652</commentid>
    <comment_count>2</comment_count>
      <attachid>161412</attachid>
    <who name="Vsevolod Vlasov">vsevik</who>
    <bug_when>2012-08-30 08:37:16 -0700</bug_when>
    <thetext>Comment on attachment 161412
Patch

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

&gt; Source/WebCore/inspector/front-end/WebGLProfileView.js:58
&gt; +    this._linkifier = new WebInspector.Linkifier();

this._linkifier.reset() is never called.

&gt; Source/WebCore/inspector/front-end/WebGLProfileView.js:114
&gt; +                    var lineNumber = Math.max(0, call.lineNumber - 1) || 0;

Why not just call.lineNumber - 1 if they are one based?

&gt; Source/WebCore/inspector/front-end/WebGLProfileView.js:122
&gt; +                var args = call.arguments || [];

arguments is not optional in protocol, this check is probably redundant.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>708660</commentid>
    <comment_count>3</comment_count>
      <attachid>161412</attachid>
    <who name="Vsevolod Vlasov">vsevik</who>
    <bug_when>2012-08-30 08:43:37 -0700</bug_when>
    <thetext>Comment on attachment 161412
Patch

Please add this._linkifier.reset(), other than that looks good.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>709358</commentid>
    <comment_count>4</comment_count>
      <attachid>161632</attachid>
    <who name="Andrey Adaikin">aandrey</who>
    <bug_when>2012-08-31 01:01:27 -0700</bug_when>
    <thetext>Created attachment 161632
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>709439</commentid>
    <comment_count>5</comment_count>
      <attachid>161632</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-08-31 02:55:48 -0700</bug_when>
    <thetext>Comment on attachment 161632
Patch

Clearing flags on attachment: 161632

Committed r127243: &lt;http://trac.webkit.org/changeset/127243&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>709440</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-08-31 02:55:52 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>161412</attachid>
            <date>2012-08-30 00:33:27 -0700</date>
            <delta_ts>2012-08-31 01:01:21 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-95426-20120830113315.patch</filename>
            <type>text/plain</type>
            <size>13315</size>
            <attacher name="Andrey Adaikin">aandrey</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI2OTgyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTQzNmQzYjA3NDZhOTBj
YjYwMzUzMDY3MjhiMTIxZGIwMDVlOTlhNS4uYzYxMGU5MzJhYWY3YWE0NzAzMThiMDI0N2M3ZDhk
MGEwMjJkMjJiMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDEyLTA4LTMwICBBbmRy
ZXkgQWRhaWtpbiAgPGFhbmRyZXlAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFdlYiBJbnNwZWN0
b3I6IFtXZWJHTF0gTGluayBXZWJHTCBjYWxscyB0byB0aGUgc291cmNlIGNvZGUgd2hlcmUgaXQg
d2FzIG1hZGUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTk1NDI2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
U2F2ZSBhIHN0YWNrIHRyYWNlIGZvciBldmVyeSBjYWxsIHdlIGNhcHR1cmUgYW5kIHJlcG9ydCB0
byB0aGUgZnJvbnRlbmQgc291cmNlVVJMLGxpbmVOdW1iZXIsY29sdW1uTnVtYmVyIHdlcmUgdGhl
IGNhbGwgd2FzIG1hZGUgZnJvbS4KKyAgICAgICAgUmlnaHQgbm93LCB0aGlzIHdpbGwgd29yayBv
bmx5IHdpdGggVjguCisKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5qZWN0ZWRTY3JpcHRFeHRlcm5z
LmpzOgorICAgICAgICAoQ2FsbFNpdGUucHJvdG90eXBlLmdldEZpbGVOYW1lKToKKyAgICAgICAg
KENhbGxTaXRlLnByb3RvdHlwZS5nZXRMaW5lTnVtYmVyKToKKyAgICAgICAgKENhbGxTaXRlLnBy
b3RvdHlwZS5nZXRDb2x1bW5OdW1iZXIpOgorICAgICAgICAqIGluc3BlY3Rvci9JbmplY3RlZFNj
cmlwdFdlYkdMTW9kdWxlU291cmNlLmpzOgorICAgICAgICAoLik6CisgICAgICAgICogaW5zcGVj
dG9yL0luc3BlY3Rvci5qc29uOgorICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvV2ViR0xQ
cm9maWxlVmlldy5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5XZWJHTFByb2ZpbGVWaWV3KToK
KyAgICAgICAgKFdlYkluc3BlY3Rvci5XZWJHTFByb2ZpbGVWaWV3LnByb3RvdHlwZS5fc2hvd1Ry
YWNlTG9nKToKKwogMjAxMi0wOC0yOSAgSmFtZXMgUm9iaW5zb24gIDxqYW1lc3JAY2hyb21pdW0u
b3JnPgogCiAgICAgICAgIFtjaHJvbWl1bV0gVXNlIGZsb2F0aW5nIHBvaW50IGxpdGVyYWxzIGlu
IGV4cHJlc3Npb25zIHRoYXQgaW5pdGlhbGl6ZSBmbG9hdHMKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9JbmplY3RlZFNjcmlwdEV4dGVybnMuanMgYi9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvSW5qZWN0ZWRTY3JpcHRFeHRlcm5zLmpzCmluZGV4IGEyNGY2OTc3M2UxYWVm
MjgyZDk4MmM5YTBjOWQ2ZTRkNjBmNWZmZjkuLjMxNzA4N2EwZDIwMmQ0YmEzMzY4MjY4NzJhNWVk
ZDRiMjE5MDNkZmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbmplY3Rl
ZFNjcmlwdEV4dGVybnMuanMKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luamVjdGVk
U2NyaXB0RXh0ZXJucy5qcwpAQCAtMTE0LDMgKzExNCwyMyBAQCBmdW5jdGlvbiBKYXZhU2NyaXB0
RnVuY3Rpb24oKQogfQogCiB2YXIgSW5zcGVjdG9yQmFja2VuZCA9IHsgfTsKKworLy8gaHR0cDov
L2NvZGUuZ29vZ2xlLmNvbS9wL3Y4L3dpa2kvSmF2YVNjcmlwdFN0YWNrVHJhY2VBcGkKKy8qKgor
ICogQGNvbnN0cnVjdG9yCisgKi8KK2Z1bmN0aW9uIENhbGxTaXRlKCkKK3sKK30KKy8qKgorICog
QHJldHVybiB7c3RyaW5nfQorICovCitDYWxsU2l0ZS5wcm90b3R5cGUuZ2V0RmlsZU5hbWUgPSBm
dW5jdGlvbigpIHsgfQorLyoqCisgKiBAcmV0dXJuIHtudW1iZXJ9CisgKi8KK0NhbGxTaXRlLnBy
b3RvdHlwZS5nZXRMaW5lTnVtYmVyID0gZnVuY3Rpb24oKSB7IH0KKy8qKgorICogQHJldHVybiB7
bnVtYmVyfQorICovCitDYWxsU2l0ZS5wcm90b3R5cGUuZ2V0Q29sdW1uTnVtYmVyID0gZnVuY3Rp
b24oKSB7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbmplY3RlZFNj
cmlwdFdlYkdMTW9kdWxlU291cmNlLmpzIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luamVj
dGVkU2NyaXB0V2ViR0xNb2R1bGVTb3VyY2UuanMKaW5kZXggMjRlMjk1Zjc1OTY5Y2ZjZGRiM2Ew
N2M4ZjExZGVhNWNlNThmNTE2My4uNTUyOTdiMDk0YTE4MzE0NGVhMjBhOWU4YTJlMjEwNjdmODUw
N2M2YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luamVjdGVkU2NyaXB0
V2ViR0xNb2R1bGVTb3VyY2UuanMKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luamVj
dGVkU2NyaXB0V2ViR0xNb2R1bGVTb3VyY2UuanMKQEAgLTEzNSw2ICsxMzUsOTUgQEAgdmFyIFR5
cGVVdGlscyA9IHsKIH0KIAogLyoqCisgKiBAaW50ZXJmYWNlCisgKi8KK2Z1bmN0aW9uIFN0YWNr
VHJhY2UoKQoreworfQorCitTdGFja1RyYWNlLnByb3RvdHlwZSA9IHsKKyAgICAvKioKKyAgICAg
KiBAcGFyYW0ge251bWJlcn0gaW5kZXgKKyAgICAgKiBAcmV0dXJuIHt7c291cmNlVVJMOiBzdHJp
bmcsIGxpbmVOdW1iZXI6IG51bWJlciwgY29sdW1uTnVtYmVyOiBudW1iZXJ9fQorICAgICAqLwor
ICAgIGNhbGxGcmFtZTogZnVuY3Rpb24oaW5kZXgpCisgICAgeworICAgIH0KK30KKworLyoqCisg
KiBAcGFyYW0ge251bWJlcj19IHN0YWNrVHJhY2VMaW1pdAorICogQHBhcmFtIHtGdW5jdGlvbj19
IHRvcE1vc3RGdW5jdGlvblRvSWdub3JlCisgKiBAcmV0dXJuIHtTdGFja1RyYWNlfQorICovCitT
dGFja1RyYWNlLmNyZWF0ZSA9IGZ1bmN0aW9uKHN0YWNrVHJhY2VMaW1pdCwgdG9wTW9zdEZ1bmN0
aW9uVG9JZ25vcmUpCit7CisgICAgaWYgKHR5cGVvZiBFcnJvci5jYXB0dXJlU3RhY2tUcmFjZSA9
PT0gImZ1bmN0aW9uIikKKyAgICAgICAgcmV0dXJuIG5ldyBTdGFja1RyYWNlVjgoc3RhY2tUcmFj
ZUxpbWl0LCB0b3BNb3N0RnVuY3Rpb25Ub0lnbm9yZSB8fCBhcmd1bWVudHMuY2FsbGVlKTsKKyAg
ICAvLyBGSVhNRTogU3VwcG9ydCBKU0MsIGFuZCBtYXliZSBvdGhlciBicm93c2Vycy4KKyAgICBy
ZXR1cm4gbnVsbDsKK30KKworLyoqCisgKiBAY29uc3RydWN0b3IKKyAqIEBpbXBsZW1lbnRzIHtT
dGFja1RyYWNlfQorICogQHBhcmFtIHtudW1iZXI9fSBzdGFja1RyYWNlTGltaXQKKyAqIEBwYXJh
bSB7RnVuY3Rpb249fSB0b3BNb3N0RnVuY3Rpb25Ub0lnbm9yZQorICogQHNlZSBodHRwOi8vY29k
ZS5nb29nbGUuY29tL3Avdjgvd2lraS9KYXZhU2NyaXB0U3RhY2tUcmFjZUFwaQorICovCitmdW5j
dGlvbiBTdGFja1RyYWNlVjgoc3RhY2tUcmFjZUxpbWl0LCB0b3BNb3N0RnVuY3Rpb25Ub0lnbm9y
ZSkKK3sKKyAgICBTdGFja1RyYWNlLmNhbGwodGhpcyk7CisgICAgdmFyIG9sZFN0YWNrVHJhY2VM
aW1pdCA9IEVycm9yLnN0YWNrVHJhY2VMaW1pdDsKKyAgICBpZiAodHlwZW9mIHN0YWNrVHJhY2VM
aW1pdCA9PT0gIm51bWJlciIpCisgICAgICAgIEVycm9yLnN0YWNrVHJhY2VMaW1pdCA9IHN0YWNr
VHJhY2VMaW1pdDsKKworICAgIHRoaXMuX2Vycm9yID0gLyoqIEB0eXBlIHt7c3RhY2s6IEFycmF5
fX0gKi8ge307CisgICAgRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UodGhpcy5fZXJyb3IsIHRvcE1v
c3RGdW5jdGlvblRvSWdub3JlIHx8IGFyZ3VtZW50cy5jYWxsZWUpOworCisgICAgRXJyb3Iuc3Rh
Y2tUcmFjZUxpbWl0ID0gb2xkU3RhY2tUcmFjZUxpbWl0OworfQorCitTdGFja1RyYWNlVjgucHJv
dG90eXBlID0geworICAgIC8qKgorICAgICAqIEBvdmVycmlkZQorICAgICAqIEBwYXJhbSB7bnVt
YmVyfSBpbmRleAorICAgICAqIEByZXR1cm4ge3tzb3VyY2VVUkw6IHN0cmluZywgbGluZU51bWJl
cjogbnVtYmVyLCBjb2x1bW5OdW1iZXI6IG51bWJlcn19CisgICAgICovCisgICAgY2FsbEZyYW1l
OiBmdW5jdGlvbihpbmRleCkKKyAgICB7CisgICAgICAgIGlmICghdGhpcy5fc3RhY2tUcmFjZSkK
KyAgICAgICAgICAgIHRoaXMuX3ByZXBhcmVTdGFja1RyYWNlKCk7CisgICAgICAgIHJldHVybiB0
aGlzLl9zdGFja1RyYWNlW2luZGV4XTsKKyAgICB9LAorCisgICAgX3ByZXBhcmVTdGFja1RyYWNl
OiBmdW5jdGlvbigpCisgICAgeworICAgICAgICB2YXIgb2xkUHJlcGFyZVN0YWNrVHJhY2UgPSBF
cnJvci5wcmVwYXJlU3RhY2tUcmFjZTsKKyAgICAgICAgLyoqCisgICAgICAgICAqIEBwYXJhbSB7
T2JqZWN0fSBlcnJvcgorICAgICAgICAgKiBAcGFyYW0ge0FycmF5LjxDYWxsU2l0ZT59IHN0cnVj
dHVyZWRTdGFja1RyYWNlCisgICAgICAgICAqIEByZXR1cm4ge0FycmF5Ljx7c291cmNlVVJMOiBz
dHJpbmcsIGxpbmVOdW1iZXI6IG51bWJlciwgY29sdW1uTnVtYmVyOiBudW1iZXJ9Pn0KKyAgICAg
ICAgICovCisgICAgICAgIEVycm9yLnByZXBhcmVTdGFja1RyYWNlID0gZnVuY3Rpb24oZXJyb3Is
IHN0cnVjdHVyZWRTdGFja1RyYWNlKQorICAgICAgICB7CisgICAgICAgICAgICByZXR1cm4gc3Ry
dWN0dXJlZFN0YWNrVHJhY2UubWFwKGZ1bmN0aW9uKGNhbGxTaXRlKSB7CisgICAgICAgICAgICAg
ICAgcmV0dXJuIHsKKyAgICAgICAgICAgICAgICAgICAgc291cmNlVVJMOiBjYWxsU2l0ZS5nZXRG
aWxlTmFtZSgpLAorICAgICAgICAgICAgICAgICAgICBsaW5lTnVtYmVyOiBjYWxsU2l0ZS5nZXRM
aW5lTnVtYmVyKCksCisgICAgICAgICAgICAgICAgICAgIGNvbHVtbk51bWJlcjogY2FsbFNpdGUu
Z2V0Q29sdW1uTnVtYmVyKCkKKyAgICAgICAgICAgICAgICB9OworICAgICAgICAgICAgfSk7Cisg
ICAgICAgIH0KKyAgICAgICAgdGhpcy5fc3RhY2tUcmFjZSA9IHRoaXMuX2Vycm9yLnN0YWNrOwor
ICAgICAgICBFcnJvci5wcmVwYXJlU3RhY2tUcmFjZSA9IG9sZFByZXBhcmVTdGFja1RyYWNlOwor
ICAgICAgICBkZWxldGUgdGhpcy5fZXJyb3I7IC8vIE5vIGxvbmdlciBuZWVkZWQsIGZyZWUgbWVt
b3J5LgorICAgIH0KK30KKworU3RhY2tUcmFjZVY4LnByb3RvdHlwZS5fX3Byb3RvX18gPSBTdGFj
a1RyYWNlLnByb3RvdHlwZTsKKworLyoqCiAgKiBAY29uc3RydWN0b3IKICAqLwogZnVuY3Rpb24g
Q2FjaGUoKQpAQCAtMTkzLDEzICsyODIsMTUgQEAgQ2FjaGUucHJvdG90eXBlID0gewogICogQHBh
cmFtIHtzdHJpbmd9IGZ1bmN0aW9uTmFtZQogICogQHBhcmFtIHtBcnJheXxBcmd1bWVudHN9IGFy
Z3MKICAqIEBwYXJhbSB7UmVzb3VyY2V8Kj19IHJlc3VsdAorICogQHBhcmFtIHtTdGFja1RyYWNl
PX0gc3RhY2tUcmFjZQogICovCi1mdW5jdGlvbiBDYWxsKHRoaXNPYmplY3QsIGZ1bmN0aW9uTmFt
ZSwgYXJncywgcmVzdWx0KQorZnVuY3Rpb24gQ2FsbCh0aGlzT2JqZWN0LCBmdW5jdGlvbk5hbWUs
IGFyZ3MsIHJlc3VsdCwgc3RhY2tUcmFjZSkKIHsKICAgICB0aGlzLl90aGlzT2JqZWN0ID0gdGhp
c09iamVjdDsKICAgICB0aGlzLl9mdW5jdGlvbk5hbWUgPSBmdW5jdGlvbk5hbWU7CiAgICAgdGhp
cy5fYXJncyA9IEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3MsIDApOwogICAgIHRoaXMu
X3Jlc3VsdCA9IHJlc3VsdDsKKyAgICB0aGlzLl9zdGFja1RyYWNlID0gc3RhY2tUcmFjZSB8fCBu
dWxsOwogfQogCiBDYWxsLnByb3RvdHlwZSA9IHsKQEAgLTIzNSw2ICszMjYsMjIgQEAgQ2FsbC5w
cm90b3R5cGUgPSB7CiAgICAgICAgIHJldHVybiB0aGlzLl9yZXN1bHQ7CiAgICAgfSwKIAorICAg
IC8qKgorICAgICAqIEByZXR1cm4ge1N0YWNrVHJhY2V9CisgICAgICovCisgICAgc3RhY2tUcmFj
ZTogZnVuY3Rpb24oKQorICAgIHsKKyAgICAgICAgcmV0dXJuIHRoaXMuX3N0YWNrVHJhY2U7Cisg
ICAgfSwKKworICAgIC8qKgorICAgICAqIEBwYXJhbSB7U3RhY2tUcmFjZX0gc3RhY2tUcmFjZQor
ICAgICAqLworICAgIHNldFN0YWNrVHJhY2U6IGZ1bmN0aW9uKHN0YWNrVHJhY2UpCisgICAgewor
ICAgICAgICB0aGlzLl9zdGFja1RyYWNlID0gc3RhY2tUcmFjZTsKKyAgICB9LAorCiAgICAgZnJl
ZXplOiBmdW5jdGlvbigpCiAgICAgewogICAgICAgICBpZiAodGhpcy5fZnJlZXplZCkKQEAgLTI1
OSw3ICszNjYsNyBAQCBDYWxsLnByb3RvdHlwZSA9IHsKICAgICAgICAgdmFyIGFyZ3MgPSB0aGlz
Ll9hcmdzLm1hcChmdW5jdGlvbihvYmopIHsKICAgICAgICAgICAgIHJldHVybiBSZXNvdXJjZS50
b1JlcGxheWFibGUob2JqLCBjYWNoZSk7CiAgICAgICAgIH0pOwotICAgICAgICByZXR1cm4gbmV3
IFJlcGxheWFibGVDYWxsKHRoaXNPYmplY3QsIHRoaXMuX2Z1bmN0aW9uTmFtZSwgYXJncywgcmVz
dWx0KTsKKyAgICAgICAgcmV0dXJuIG5ldyBSZXBsYXlhYmxlQ2FsbCh0aGlzT2JqZWN0LCB0aGlz
Ll9mdW5jdGlvbk5hbWUsIGFyZ3MsIHJlc3VsdCwgdGhpcy5fc3RhY2tUcmFjZSk7CiAgICAgfSwK
IAogICAgIC8qKgpAQCAtMjg2LDYgKzM5Myw3IEBAIENhbGwucHJvdG90eXBlID0gewogICAgICAg
ICB0aGlzLl9mdW5jdGlvbk5hbWUgPSByZXBsYXlhYmxlQ2FsbC5mdW5jdGlvbk5hbWUoKTsKICAg
ICAgICAgdGhpcy5fYXJncyA9IHJlcGxheUFyZ3M7CiAgICAgICAgIHRoaXMuX3Jlc3VsdCA9IHJl
cGxheVJlc3VsdDsKKyAgICAgICAgdGhpcy5fc3RhY2tUcmFjZSA9IHJlcGxheWFibGVDYWxsLnN0
YWNrVHJhY2UoKTsKICAgICAgICAgdGhpcy5fZnJlZXplZCA9IHRydWU7CiAgICAgICAgIHJldHVy
biB0aGlzOwogICAgIH0KQEAgLTI5NywxMyArNDA1LDE1IEBAIENhbGwucHJvdG90eXBlID0gewog
ICogQHBhcmFtIHtzdHJpbmd9IGZ1bmN0aW9uTmFtZQogICogQHBhcmFtIHtBcnJheS48UmVwbGF5
YWJsZVJlc291cmNlfCo+fSBhcmdzCiAgKiBAcGFyYW0ge1JlcGxheWFibGVSZXNvdXJjZXwqfSBy
ZXN1bHQKKyAqIEBwYXJhbSB7U3RhY2tUcmFjZX0gc3RhY2tUcmFjZQogICovCi1mdW5jdGlvbiBS
ZXBsYXlhYmxlQ2FsbCh0aGlzT2JqZWN0LCBmdW5jdGlvbk5hbWUsIGFyZ3MsIHJlc3VsdCkKK2Z1
bmN0aW9uIFJlcGxheWFibGVDYWxsKHRoaXNPYmplY3QsIGZ1bmN0aW9uTmFtZSwgYXJncywgcmVz
dWx0LCBzdGFja1RyYWNlKQogewogICAgIHRoaXMuX3RoaXNPYmplY3QgPSB0aGlzT2JqZWN0Owog
ICAgIHRoaXMuX2Z1bmN0aW9uTmFtZSA9IGZ1bmN0aW9uTmFtZTsKICAgICB0aGlzLl9hcmdzID0g
YXJnczsKICAgICB0aGlzLl9yZXN1bHQgPSByZXN1bHQ7CisgICAgdGhpcy5fc3RhY2tUcmFjZSA9
IHN0YWNrVHJhY2U7CiB9CiAKIFJlcGxheWFibGVDYWxsLnByb3RvdHlwZSA9IHsKQEAgLTM0MCw2
ICs0NTAsMTQgQEAgUmVwbGF5YWJsZUNhbGwucHJvdG90eXBlID0gewogICAgIH0sCiAKICAgICAv
KioKKyAgICAgKiBAcmV0dXJuIHtTdGFja1RyYWNlfQorICAgICAqLworICAgIHN0YWNrVHJhY2U6
IGZ1bmN0aW9uKCkKKyAgICB7CisgICAgICAgIHJldHVybiB0aGlzLl9zdGFja1RyYWNlOworICAg
IH0sCisKKyAgICAvKioKICAgICAgKiBAcGFyYW0ge0NhY2hlfSBjYWNoZQogICAgICAqIEByZXR1
cm4ge0NhbGx9CiAgICAgICovCkBAIC0xMzQzLDggKzE0NjEsMTEgQEAgV2ViR0xSZW5kZXJpbmdD
b250ZXh0UmVzb3VyY2UucHJvdG90eXBlID0gewogICAgICAgICAgICAgICAgIG1hbmFnZXIuY2Fw
dHVyZUFyZ3VtZW50cyhyZXNvdXJjZSwgYXJndW1lbnRzKTsKICAgICAgICAgICAgIHZhciB3cmFw
RnVuY3Rpb24gPSBuZXcgV2ViR0xSZW5kZXJpbmdDb250ZXh0UmVzb3VyY2UuV3JhcEZ1bmN0aW9u
KG9yaWdpbmFsT2JqZWN0LCBvcmlnaW5hbEZ1bmN0aW9uLCBmdW5jdGlvbk5hbWUsIGFyZ3VtZW50
cyk7CiAgICAgICAgICAgICBjdXN0b21XcmFwRnVuY3Rpb24uYXBwbHkod3JhcEZ1bmN0aW9uLCBh
cmd1bWVudHMpOwotICAgICAgICAgICAgaWYgKG1hbmFnZXIpCi0gICAgICAgICAgICAgICAgbWFu
YWdlci5yZXBvcnRDYWxsKHdyYXBGdW5jdGlvbi5jYWxsKCkpOworICAgICAgICAgICAgaWYgKG1h
bmFnZXIgJiYgbWFuYWdlci5jYXB0dXJpbmcoKSkgeworICAgICAgICAgICAgICAgIHZhciBjYWxs
ID0gd3JhcEZ1bmN0aW9uLmNhbGwoKTsKKyAgICAgICAgICAgICAgICBjYWxsLnNldFN0YWNrVHJh
Y2UoU3RhY2tUcmFjZS5jcmVhdGUoMSwgYXJndW1lbnRzLmNhbGxlZSkpOworICAgICAgICAgICAg
ICAgIG1hbmFnZXIucmVwb3J0Q2FsbChjYWxsKTsKKyAgICAgICAgICAgIH0KICAgICAgICAgICAg
IHJldHVybiB3cmFwRnVuY3Rpb24ucmVzdWx0KCk7CiAgICAgICAgIH07CiAgICAgfSwKQEAgLTEz
NjUsNyArMTQ4Niw4IEBAIFdlYkdMUmVuZGVyaW5nQ29udGV4dFJlc291cmNlLnByb3RvdHlwZSA9
IHsKICAgICAgICAgICAgICAgICByZXR1cm4gb3JpZ2luYWxGdW5jdGlvbi5hcHBseShvcmlnaW5h
bE9iamVjdCwgYXJndW1lbnRzKTsKICAgICAgICAgICAgIG1hbmFnZXIuY2FwdHVyZUFyZ3VtZW50
cyhyZXNvdXJjZSwgYXJndW1lbnRzKTsKICAgICAgICAgICAgIHZhciByZXN1bHQgPSBvcmlnaW5h
bEZ1bmN0aW9uLmFwcGx5KG9yaWdpbmFsT2JqZWN0LCBhcmd1bWVudHMpOwotICAgICAgICAgICAg
dmFyIGNhbGwgPSBuZXcgQ2FsbChyZXNvdXJjZSwgZnVuY3Rpb25OYW1lLCBhcmd1bWVudHMsIHJl
c3VsdCk7CisgICAgICAgICAgICB2YXIgc3RhY2tUcmFjZSA9IFN0YWNrVHJhY2UuY3JlYXRlKDEs
IGFyZ3VtZW50cy5jYWxsZWUpOworICAgICAgICAgICAgdmFyIGNhbGwgPSBuZXcgQ2FsbChyZXNv
dXJjZSwgZnVuY3Rpb25OYW1lLCBhcmd1bWVudHMsIHJlc3VsdCwgc3RhY2tUcmFjZSk7CiAgICAg
ICAgICAgICBtYW5hZ2VyLnJlcG9ydENhbGwoY2FsbCk7CiAgICAgICAgICAgICByZXR1cm4gcmVz
dWx0OwogICAgICAgICB9OwpAQCAtMTc2MCw5ICsxODgyLDIxIEBAIEluamVjdGVkU2NyaXB0LnBy
b3RvdHlwZSA9IHsKICAgICAgICAgdmFyIGNhbGxzID0gdHJhY2VMb2cucmVwbGF5YWJsZUNhbGxz
KCk7CiAgICAgICAgIGZvciAodmFyIGkgPSAwLCBuID0gY2FsbHMubGVuZ3RoOyBpIDwgbjsgKytp
KSB7CiAgICAgICAgICAgICB2YXIgY2FsbCA9IGNhbGxzW2ldOwotICAgICAgICAgICAgcmVzdWx0
LmNhbGxzLnB1c2goewotICAgICAgICAgICAgICAgIGZ1bmN0aW9uTmFtZTogY2FsbC5mdW5jdGlv
bk5hbWUoKSArICIoIiArIGNhbGwuYXJncygpLmpvaW4oIiwgIikgKyAiKSA9PiAiICsgY2FsbC5y
ZXN1bHQoKQorICAgICAgICAgICAgdmFyIGFyZ3MgPSBjYWxsLmFyZ3MoKS5tYXAoZnVuY3Rpb24o
YXJndW1lbnQpIHsKKyAgICAgICAgICAgICAgICByZXR1cm4gYXJndW1lbnQgKyAiIjsKICAgICAg
ICAgICAgIH0pOworICAgICAgICAgICAgdmFyIHN0YWNrVHJhY2UgPSBjYWxsLnN0YWNrVHJhY2Uo
KTsKKyAgICAgICAgICAgIHZhciBjYWxsRnJhbWUgPSBzdGFja1RyYWNlID8gc3RhY2tUcmFjZS5j
YWxsRnJhbWUoMCkgfHwge30gOiB7fTsKKyAgICAgICAgICAgIHZhciB0cmFjZUxvZ0l0ZW0gPSB7
CisgICAgICAgICAgICAgICAgZnVuY3Rpb25OYW1lOiBjYWxsLmZ1bmN0aW9uTmFtZSgpLAorICAg
ICAgICAgICAgICAgIGFyZ3VtZW50czogYXJncywKKyAgICAgICAgICAgICAgICBzb3VyY2VVUkw6
IGNhbGxGcmFtZS5zb3VyY2VVUkwsCisgICAgICAgICAgICAgICAgbGluZU51bWJlcjogY2FsbEZy
YW1lLmxpbmVOdW1iZXIsCisgICAgICAgICAgICAgICAgY29sdW1uTnVtYmVyOiBjYWxsRnJhbWUu
Y29sdW1uTnVtYmVyCisgICAgICAgICAgICB9OworICAgICAgICAgICAgaWYgKGNhbGwucmVzdWx0
KCkpCisgICAgICAgICAgICAgICAgdHJhY2VMb2dJdGVtLnJlc3VsdCA9IGNhbGwucmVzdWx0KCkg
KyAiIjsKKyAgICAgICAgICAgIHJlc3VsdC5jYWxscy5wdXNoKHRyYWNlTG9nSXRlbSk7CiAgICAg
ICAgIH0KICAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICB9LApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvci5qc29uIGIvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL0luc3BlY3Rvci5qc29uCmluZGV4IGRhZTM2ODk0OGU5NzFlZTYxYjk3ZDVkZDg2NjUyZGM4
ZmIzOTg5NTguLjk0ZjYxMmYwMDQ2ODkwZTcxYTI1N2IzYTUzOWNhMDJkYWZhMjAyOWQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3IuanNvbgorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yLmpzb24KQEAgLTMxNDksNyArMzE0OSwxMiBA
QAogICAgICAgICAgICAgICAgICJpZCI6ICJDYWxsIiwKICAgICAgICAgICAgICAgICAidHlwZSI6
ICJvYmplY3QiLAogICAgICAgICAgICAgICAgICJwcm9wZXJ0aWVzIjogWwotICAgICAgICAgICAg
ICAgICAgICB7ICJuYW1lIjogImZ1bmN0aW9uTmFtZSIsICJ0eXBlIjogInN0cmluZyIgfQorICAg
ICAgICAgICAgICAgICAgICB7ICJuYW1lIjogImZ1bmN0aW9uTmFtZSIsICJ0eXBlIjogInN0cmlu
ZyIgfSwKKyAgICAgICAgICAgICAgICAgICAgeyAibmFtZSI6ICJhcmd1bWVudHMiLCAidHlwZSI6
ICJhcnJheSIsICJpdGVtcyI6IHsgInR5cGUiOiAic3RyaW5nIiB9IH0sCisgICAgICAgICAgICAg
ICAgICAgIHsgIm5hbWUiOiAicmVzdWx0IiwgInR5cGUiOiAic3RyaW5nIiwgIm9wdGlvbmFsIjog
dHJ1ZSB9LAorICAgICAgICAgICAgICAgICAgICB7ICJuYW1lIjogInNvdXJjZVVSTCIsICJ0eXBl
IjogInN0cmluZyIsICJvcHRpb25hbCI6IHRydWUgfSwKKyAgICAgICAgICAgICAgICAgICAgeyAi
bmFtZSI6ICJsaW5lTnVtYmVyIiwgInR5cGUiOiAiaW50ZWdlciIsICJvcHRpb25hbCI6IHRydWUg
fSwKKyAgICAgICAgICAgICAgICAgICAgeyAibmFtZSI6ICJjb2x1bW5OdW1iZXIiLCAidHlwZSI6
ICJpbnRlZ2VyIiwgIm9wdGlvbmFsIjogdHJ1ZSB9CiAgICAgICAgICAgICAgICAgXQogICAgICAg
ICAgICAgfSwKICAgICAgICAgICAgIHsKQEAgLTMxNTcsNyArMzE2Miw3IEBACiAgICAgICAgICAg
ICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAgICAicHJvcGVydGllcyI6IFsK
ICAgICAgICAgICAgICAgICAgICAgeyAibmFtZSI6ICJpZCIsICIkcmVmIjogIlRyYWNlTG9nSWQi
IH0sCi0gICAgICAgICAgICAgICAgICAgIHsgIm5hbWUiOiAiY2FsbHMiLCAidHlwZSI6ICJhcnJh
eSIsICJpdGVtcyI6IHsgIiRyZWYiOiAiQ2FsbCIgfX0KKyAgICAgICAgICAgICAgICAgICAgeyAi
bmFtZSI6ICJjYWxscyIsICJ0eXBlIjogImFycmF5IiwgIml0ZW1zIjogeyAiJHJlZiI6ICJDYWxs
IiB9IH0KICAgICAgICAgICAgICAgICBdCiAgICAgICAgICAgICB9CiAgICAgICAgIF0sCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1dlYkdMUHJvZmlsZVZp
ZXcuanMgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1dlYkdMUHJvZmlsZVZp
ZXcuanMKaW5kZXggMDQ2NWY2MjU1YTZhM2IxZDRmYjlhZGY5ODFmYWExYjZkZTU1Y2Q5ZS4uZTc4
MWQ4Y2NkNDRmZGI2NmQ3NDAyNDJhOGExYzc0ZWI1Mjc4OTc1ZSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9XZWJHTFByb2ZpbGVWaWV3LmpzCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvV2ViR0xQcm9maWxlVmlldy5qcwpAQCAt
NTUsNiArNTUsOCBAQCBXZWJJbnNwZWN0b3IuV2ViR0xQcm9maWxlVmlldyA9IGZ1bmN0aW9uKHBy
b2ZpbGUpCiAgICAgdGhpcy5fZGVidWdJbmZvRWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1l
bnQoImRpdiIpOwogICAgIHJlcGxheUltYWdlQ29udGFpbmVyLmFwcGVuZENoaWxkKHRoaXMuX2Rl
YnVnSW5mb0VsZW1lbnQpOwogCisgICAgdGhpcy5fbGlua2lmaWVyID0gbmV3IFdlYkluc3BlY3Rv
ci5MaW5raWZpZXIoKTsKKwogICAgIHRoaXMuX3Nob3dUcmFjZUxvZygpOwogfQogCkBAIC0xMDUs
NyArMTA3LDIyIEBAIFdlYkluc3BlY3Rvci5XZWJHTFByb2ZpbGVWaWV3LnByb3RvdHlwZSA9IHsK
ICAgICAgICAgICAgICAgICB2YXIgdHJhY2VMb2dJdGVtID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVu
dCgiZGl2Iik7CiAgICAgICAgICAgICAgICAgdHJhY2VMb2dJdGVtLnRyYWNlTG9nSWQgPSB0cmFj
ZUxvZy5pZDsKICAgICAgICAgICAgICAgICB0cmFjZUxvZ0l0ZW0uc3RlcE5vID0gaTsKLSAgICAg
ICAgICAgICAgICB0cmFjZUxvZ0l0ZW0udGV4dENvbnRlbnQgPSAiKCIgKyAoaSsxKSArICIpICIg
KyBjYWxsLmZ1bmN0aW9uTmFtZTsKKyAgICAgICAgICAgICAgICB0cmFjZUxvZ0l0ZW0uYXBwZW5k
Q2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIigiICsgKGkrMSkgKyAiKSAiKSk7CisKKyAg
ICAgICAgICAgICAgICBpZiAoY2FsbC5zb3VyY2VVUkwpIHsKKyAgICAgICAgICAgICAgICAgICAg
Ly8gRklYTUUoNjI3MjUpOiBzdGFjayB0cmFjZSBsaW5lL2NvbHVtbiBudW1iZXJzIGFyZSBvbmUt
YmFzZWQuCisgICAgICAgICAgICAgICAgICAgIHZhciBsaW5lTnVtYmVyID0gTWF0aC5tYXgoMCwg
Y2FsbC5saW5lTnVtYmVyIC0gMSkgfHwgMDsKKyAgICAgICAgICAgICAgICAgICAgdmFyIGNvbHVt
bk51bWJlciA9IE1hdGgubWF4KDAsIGNhbGwuY29sdW1uTnVtYmVyIC0gMSkgfHwgMDsKKyAgICAg
ICAgICAgICAgICAgICAgdmFyIGxpbmtFbGVtZW50ID0gdGhpcy5fbGlua2lmaWVyLmxpbmtpZnlM
b2NhdGlvbihjYWxsLnNvdXJjZVVSTCwgbGluZU51bWJlciwgY29sdW1uTnVtYmVyKTsKKyAgICAg
ICAgICAgICAgICAgICAgbGlua0VsZW1lbnQudGV4dENvbnRlbnQgPSBjYWxsLmZ1bmN0aW9uTmFt
ZTsKKyAgICAgICAgICAgICAgICAgICAgdHJhY2VMb2dJdGVtLmFwcGVuZENoaWxkKGxpbmtFbGVt
ZW50KTsKKyAgICAgICAgICAgICAgICB9IGVsc2UKKyAgICAgICAgICAgICAgICAgICAgdHJhY2VM
b2dJdGVtLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKGNhbGwuZnVuY3Rpb25O
YW1lKSk7CisKKyAgICAgICAgICAgICAgICB2YXIgYXJncyA9IGNhbGwuYXJndW1lbnRzIHx8IFtd
OworICAgICAgICAgICAgICAgIHRyYWNlTG9nSXRlbS5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVh
dGVUZXh0Tm9kZSgiKCIgKyBhcmdzLmpvaW4oIiwgIikgKyAiKSIpKTsKKyAgICAgICAgICAgICAg
ICBpZiAoY2FsbC5yZXN1bHQpCisgICAgICAgICAgICAgICAgICAgIHRyYWNlTG9nSXRlbS5hcHBl
bmRDaGlsZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSgiID0+ICIgKyBjYWxsLnJlc3VsdCkpOwog
ICAgICAgICAgICAgICAgIHRoaXMuX3RyYWNlTG9nRWxlbWVudC5hcHBlbmRDaGlsZCh0cmFjZUxv
Z0l0ZW0pOwogICAgICAgICAgICAgfQogICAgICAgICB9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>161632</attachid>
            <date>2012-08-31 01:01:27 -0700</date>
            <delta_ts>2012-08-31 02:55:48 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-95426-20120831120114.patch</filename>
            <type>text/plain</type>
            <size>13483</size>
            <attacher name="Andrey Adaikin">aandrey</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI2OTgyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTQzNmQzYjA3NDZhOTBj
YjYwMzUzMDY3MjhiMTIxZGIwMDVlOTlhNS4uYzYxMGU5MzJhYWY3YWE0NzAzMThiMDI0N2M3ZDhk
MGEwMjJkMjJiMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDEyLTA4LTMwICBBbmRy
ZXkgQWRhaWtpbiAgPGFhbmRyZXlAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFdlYiBJbnNwZWN0
b3I6IFtXZWJHTF0gTGluayBXZWJHTCBjYWxscyB0byB0aGUgc291cmNlIGNvZGUgd2hlcmUgaXQg
d2FzIG1hZGUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTk1NDI2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
U2F2ZSBhIHN0YWNrIHRyYWNlIGZvciBldmVyeSBjYWxsIHdlIGNhcHR1cmUgYW5kIHJlcG9ydCB0
byB0aGUgZnJvbnRlbmQgc291cmNlVVJMLGxpbmVOdW1iZXIsY29sdW1uTnVtYmVyIHdlcmUgdGhl
IGNhbGwgd2FzIG1hZGUgZnJvbS4KKyAgICAgICAgUmlnaHQgbm93LCB0aGlzIHdpbGwgd29yayBv
bmx5IHdpdGggVjguCisKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5qZWN0ZWRTY3JpcHRFeHRlcm5z
LmpzOgorICAgICAgICAoQ2FsbFNpdGUucHJvdG90eXBlLmdldEZpbGVOYW1lKToKKyAgICAgICAg
KENhbGxTaXRlLnByb3RvdHlwZS5nZXRMaW5lTnVtYmVyKToKKyAgICAgICAgKENhbGxTaXRlLnBy
b3RvdHlwZS5nZXRDb2x1bW5OdW1iZXIpOgorICAgICAgICAqIGluc3BlY3Rvci9JbmplY3RlZFNj
cmlwdFdlYkdMTW9kdWxlU291cmNlLmpzOgorICAgICAgICAoLik6CisgICAgICAgICogaW5zcGVj
dG9yL0luc3BlY3Rvci5qc29uOgorICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvV2ViR0xQ
cm9maWxlVmlldy5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5XZWJHTFByb2ZpbGVWaWV3KToK
KyAgICAgICAgKFdlYkluc3BlY3Rvci5XZWJHTFByb2ZpbGVWaWV3LnByb3RvdHlwZS5fc2hvd1Ry
YWNlTG9nKToKKwogMjAxMi0wOC0yOSAgSmFtZXMgUm9iaW5zb24gIDxqYW1lc3JAY2hyb21pdW0u
b3JnPgogCiAgICAgICAgIFtjaHJvbWl1bV0gVXNlIGZsb2F0aW5nIHBvaW50IGxpdGVyYWxzIGlu
IGV4cHJlc3Npb25zIHRoYXQgaW5pdGlhbGl6ZSBmbG9hdHMKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9JbmplY3RlZFNjcmlwdEV4dGVybnMuanMgYi9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvSW5qZWN0ZWRTY3JpcHRFeHRlcm5zLmpzCmluZGV4IGEyNGY2OTc3M2UxYWVm
MjgyZDk4MmM5YTBjOWQ2ZTRkNjBmNWZmZjkuLjMxNzA4N2EwZDIwMmQ0YmEzMzY4MjY4NzJhNWVk
ZDRiMjE5MDNkZmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbmplY3Rl
ZFNjcmlwdEV4dGVybnMuanMKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luamVjdGVk
U2NyaXB0RXh0ZXJucy5qcwpAQCAtMTE0LDMgKzExNCwyMyBAQCBmdW5jdGlvbiBKYXZhU2NyaXB0
RnVuY3Rpb24oKQogfQogCiB2YXIgSW5zcGVjdG9yQmFja2VuZCA9IHsgfTsKKworLy8gaHR0cDov
L2NvZGUuZ29vZ2xlLmNvbS9wL3Y4L3dpa2kvSmF2YVNjcmlwdFN0YWNrVHJhY2VBcGkKKy8qKgor
ICogQGNvbnN0cnVjdG9yCisgKi8KK2Z1bmN0aW9uIENhbGxTaXRlKCkKK3sKK30KKy8qKgorICog
QHJldHVybiB7c3RyaW5nfQorICovCitDYWxsU2l0ZS5wcm90b3R5cGUuZ2V0RmlsZU5hbWUgPSBm
dW5jdGlvbigpIHsgfQorLyoqCisgKiBAcmV0dXJuIHtudW1iZXJ9CisgKi8KK0NhbGxTaXRlLnBy
b3RvdHlwZS5nZXRMaW5lTnVtYmVyID0gZnVuY3Rpb24oKSB7IH0KKy8qKgorICogQHJldHVybiB7
bnVtYmVyfQorICovCitDYWxsU2l0ZS5wcm90b3R5cGUuZ2V0Q29sdW1uTnVtYmVyID0gZnVuY3Rp
b24oKSB7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbmplY3RlZFNj
cmlwdFdlYkdMTW9kdWxlU291cmNlLmpzIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luamVj
dGVkU2NyaXB0V2ViR0xNb2R1bGVTb3VyY2UuanMKaW5kZXggMjRlMjk1Zjc1OTY5Y2ZjZGRiM2Ew
N2M4ZjExZGVhNWNlNThmNTE2My4uNTUyOTdiMDk0YTE4MzE0NGVhMjBhOWU4YTJlMjEwNjdmODUw
N2M2YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luamVjdGVkU2NyaXB0
V2ViR0xNb2R1bGVTb3VyY2UuanMKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luamVj
dGVkU2NyaXB0V2ViR0xNb2R1bGVTb3VyY2UuanMKQEAgLTEzNSw2ICsxMzUsOTUgQEAgdmFyIFR5
cGVVdGlscyA9IHsKIH0KIAogLyoqCisgKiBAaW50ZXJmYWNlCisgKi8KK2Z1bmN0aW9uIFN0YWNr
VHJhY2UoKQoreworfQorCitTdGFja1RyYWNlLnByb3RvdHlwZSA9IHsKKyAgICAvKioKKyAgICAg
KiBAcGFyYW0ge251bWJlcn0gaW5kZXgKKyAgICAgKiBAcmV0dXJuIHt7c291cmNlVVJMOiBzdHJp
bmcsIGxpbmVOdW1iZXI6IG51bWJlciwgY29sdW1uTnVtYmVyOiBudW1iZXJ9fQorICAgICAqLwor
ICAgIGNhbGxGcmFtZTogZnVuY3Rpb24oaW5kZXgpCisgICAgeworICAgIH0KK30KKworLyoqCisg
KiBAcGFyYW0ge251bWJlcj19IHN0YWNrVHJhY2VMaW1pdAorICogQHBhcmFtIHtGdW5jdGlvbj19
IHRvcE1vc3RGdW5jdGlvblRvSWdub3JlCisgKiBAcmV0dXJuIHtTdGFja1RyYWNlfQorICovCitT
dGFja1RyYWNlLmNyZWF0ZSA9IGZ1bmN0aW9uKHN0YWNrVHJhY2VMaW1pdCwgdG9wTW9zdEZ1bmN0
aW9uVG9JZ25vcmUpCit7CisgICAgaWYgKHR5cGVvZiBFcnJvci5jYXB0dXJlU3RhY2tUcmFjZSA9
PT0gImZ1bmN0aW9uIikKKyAgICAgICAgcmV0dXJuIG5ldyBTdGFja1RyYWNlVjgoc3RhY2tUcmFj
ZUxpbWl0LCB0b3BNb3N0RnVuY3Rpb25Ub0lnbm9yZSB8fCBhcmd1bWVudHMuY2FsbGVlKTsKKyAg
ICAvLyBGSVhNRTogU3VwcG9ydCBKU0MsIGFuZCBtYXliZSBvdGhlciBicm93c2Vycy4KKyAgICBy
ZXR1cm4gbnVsbDsKK30KKworLyoqCisgKiBAY29uc3RydWN0b3IKKyAqIEBpbXBsZW1lbnRzIHtT
dGFja1RyYWNlfQorICogQHBhcmFtIHtudW1iZXI9fSBzdGFja1RyYWNlTGltaXQKKyAqIEBwYXJh
bSB7RnVuY3Rpb249fSB0b3BNb3N0RnVuY3Rpb25Ub0lnbm9yZQorICogQHNlZSBodHRwOi8vY29k
ZS5nb29nbGUuY29tL3Avdjgvd2lraS9KYXZhU2NyaXB0U3RhY2tUcmFjZUFwaQorICovCitmdW5j
dGlvbiBTdGFja1RyYWNlVjgoc3RhY2tUcmFjZUxpbWl0LCB0b3BNb3N0RnVuY3Rpb25Ub0lnbm9y
ZSkKK3sKKyAgICBTdGFja1RyYWNlLmNhbGwodGhpcyk7CisgICAgdmFyIG9sZFN0YWNrVHJhY2VM
aW1pdCA9IEVycm9yLnN0YWNrVHJhY2VMaW1pdDsKKyAgICBpZiAodHlwZW9mIHN0YWNrVHJhY2VM
aW1pdCA9PT0gIm51bWJlciIpCisgICAgICAgIEVycm9yLnN0YWNrVHJhY2VMaW1pdCA9IHN0YWNr
VHJhY2VMaW1pdDsKKworICAgIHRoaXMuX2Vycm9yID0gLyoqIEB0eXBlIHt7c3RhY2s6IEFycmF5
fX0gKi8ge307CisgICAgRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UodGhpcy5fZXJyb3IsIHRvcE1v
c3RGdW5jdGlvblRvSWdub3JlIHx8IGFyZ3VtZW50cy5jYWxsZWUpOworCisgICAgRXJyb3Iuc3Rh
Y2tUcmFjZUxpbWl0ID0gb2xkU3RhY2tUcmFjZUxpbWl0OworfQorCitTdGFja1RyYWNlVjgucHJv
dG90eXBlID0geworICAgIC8qKgorICAgICAqIEBvdmVycmlkZQorICAgICAqIEBwYXJhbSB7bnVt
YmVyfSBpbmRleAorICAgICAqIEByZXR1cm4ge3tzb3VyY2VVUkw6IHN0cmluZywgbGluZU51bWJl
cjogbnVtYmVyLCBjb2x1bW5OdW1iZXI6IG51bWJlcn19CisgICAgICovCisgICAgY2FsbEZyYW1l
OiBmdW5jdGlvbihpbmRleCkKKyAgICB7CisgICAgICAgIGlmICghdGhpcy5fc3RhY2tUcmFjZSkK
KyAgICAgICAgICAgIHRoaXMuX3ByZXBhcmVTdGFja1RyYWNlKCk7CisgICAgICAgIHJldHVybiB0
aGlzLl9zdGFja1RyYWNlW2luZGV4XTsKKyAgICB9LAorCisgICAgX3ByZXBhcmVTdGFja1RyYWNl
OiBmdW5jdGlvbigpCisgICAgeworICAgICAgICB2YXIgb2xkUHJlcGFyZVN0YWNrVHJhY2UgPSBF
cnJvci5wcmVwYXJlU3RhY2tUcmFjZTsKKyAgICAgICAgLyoqCisgICAgICAgICAqIEBwYXJhbSB7
T2JqZWN0fSBlcnJvcgorICAgICAgICAgKiBAcGFyYW0ge0FycmF5LjxDYWxsU2l0ZT59IHN0cnVj
dHVyZWRTdGFja1RyYWNlCisgICAgICAgICAqIEByZXR1cm4ge0FycmF5Ljx7c291cmNlVVJMOiBz
dHJpbmcsIGxpbmVOdW1iZXI6IG51bWJlciwgY29sdW1uTnVtYmVyOiBudW1iZXJ9Pn0KKyAgICAg
ICAgICovCisgICAgICAgIEVycm9yLnByZXBhcmVTdGFja1RyYWNlID0gZnVuY3Rpb24oZXJyb3Is
IHN0cnVjdHVyZWRTdGFja1RyYWNlKQorICAgICAgICB7CisgICAgICAgICAgICByZXR1cm4gc3Ry
dWN0dXJlZFN0YWNrVHJhY2UubWFwKGZ1bmN0aW9uKGNhbGxTaXRlKSB7CisgICAgICAgICAgICAg
ICAgcmV0dXJuIHsKKyAgICAgICAgICAgICAgICAgICAgc291cmNlVVJMOiBjYWxsU2l0ZS5nZXRG
aWxlTmFtZSgpLAorICAgICAgICAgICAgICAgICAgICBsaW5lTnVtYmVyOiBjYWxsU2l0ZS5nZXRM
aW5lTnVtYmVyKCksCisgICAgICAgICAgICAgICAgICAgIGNvbHVtbk51bWJlcjogY2FsbFNpdGUu
Z2V0Q29sdW1uTnVtYmVyKCkKKyAgICAgICAgICAgICAgICB9OworICAgICAgICAgICAgfSk7Cisg
ICAgICAgIH0KKyAgICAgICAgdGhpcy5fc3RhY2tUcmFjZSA9IHRoaXMuX2Vycm9yLnN0YWNrOwor
ICAgICAgICBFcnJvci5wcmVwYXJlU3RhY2tUcmFjZSA9IG9sZFByZXBhcmVTdGFja1RyYWNlOwor
ICAgICAgICBkZWxldGUgdGhpcy5fZXJyb3I7IC8vIE5vIGxvbmdlciBuZWVkZWQsIGZyZWUgbWVt
b3J5LgorICAgIH0KK30KKworU3RhY2tUcmFjZVY4LnByb3RvdHlwZS5fX3Byb3RvX18gPSBTdGFj
a1RyYWNlLnByb3RvdHlwZTsKKworLyoqCiAgKiBAY29uc3RydWN0b3IKICAqLwogZnVuY3Rpb24g
Q2FjaGUoKQpAQCAtMTkzLDEzICsyODIsMTUgQEAgQ2FjaGUucHJvdG90eXBlID0gewogICogQHBh
cmFtIHtzdHJpbmd9IGZ1bmN0aW9uTmFtZQogICogQHBhcmFtIHtBcnJheXxBcmd1bWVudHN9IGFy
Z3MKICAqIEBwYXJhbSB7UmVzb3VyY2V8Kj19IHJlc3VsdAorICogQHBhcmFtIHtTdGFja1RyYWNl
PX0gc3RhY2tUcmFjZQogICovCi1mdW5jdGlvbiBDYWxsKHRoaXNPYmplY3QsIGZ1bmN0aW9uTmFt
ZSwgYXJncywgcmVzdWx0KQorZnVuY3Rpb24gQ2FsbCh0aGlzT2JqZWN0LCBmdW5jdGlvbk5hbWUs
IGFyZ3MsIHJlc3VsdCwgc3RhY2tUcmFjZSkKIHsKICAgICB0aGlzLl90aGlzT2JqZWN0ID0gdGhp
c09iamVjdDsKICAgICB0aGlzLl9mdW5jdGlvbk5hbWUgPSBmdW5jdGlvbk5hbWU7CiAgICAgdGhp
cy5fYXJncyA9IEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3MsIDApOwogICAgIHRoaXMu
X3Jlc3VsdCA9IHJlc3VsdDsKKyAgICB0aGlzLl9zdGFja1RyYWNlID0gc3RhY2tUcmFjZSB8fCBu
dWxsOwogfQogCiBDYWxsLnByb3RvdHlwZSA9IHsKQEAgLTIzNSw2ICszMjYsMjIgQEAgQ2FsbC5w
cm90b3R5cGUgPSB7CiAgICAgICAgIHJldHVybiB0aGlzLl9yZXN1bHQ7CiAgICAgfSwKIAorICAg
IC8qKgorICAgICAqIEByZXR1cm4ge1N0YWNrVHJhY2V9CisgICAgICovCisgICAgc3RhY2tUcmFj
ZTogZnVuY3Rpb24oKQorICAgIHsKKyAgICAgICAgcmV0dXJuIHRoaXMuX3N0YWNrVHJhY2U7Cisg
ICAgfSwKKworICAgIC8qKgorICAgICAqIEBwYXJhbSB7U3RhY2tUcmFjZX0gc3RhY2tUcmFjZQor
ICAgICAqLworICAgIHNldFN0YWNrVHJhY2U6IGZ1bmN0aW9uKHN0YWNrVHJhY2UpCisgICAgewor
ICAgICAgICB0aGlzLl9zdGFja1RyYWNlID0gc3RhY2tUcmFjZTsKKyAgICB9LAorCiAgICAgZnJl
ZXplOiBmdW5jdGlvbigpCiAgICAgewogICAgICAgICBpZiAodGhpcy5fZnJlZXplZCkKQEAgLTI1
OSw3ICszNjYsNyBAQCBDYWxsLnByb3RvdHlwZSA9IHsKICAgICAgICAgdmFyIGFyZ3MgPSB0aGlz
Ll9hcmdzLm1hcChmdW5jdGlvbihvYmopIHsKICAgICAgICAgICAgIHJldHVybiBSZXNvdXJjZS50
b1JlcGxheWFibGUob2JqLCBjYWNoZSk7CiAgICAgICAgIH0pOwotICAgICAgICByZXR1cm4gbmV3
IFJlcGxheWFibGVDYWxsKHRoaXNPYmplY3QsIHRoaXMuX2Z1bmN0aW9uTmFtZSwgYXJncywgcmVz
dWx0KTsKKyAgICAgICAgcmV0dXJuIG5ldyBSZXBsYXlhYmxlQ2FsbCh0aGlzT2JqZWN0LCB0aGlz
Ll9mdW5jdGlvbk5hbWUsIGFyZ3MsIHJlc3VsdCwgdGhpcy5fc3RhY2tUcmFjZSk7CiAgICAgfSwK
IAogICAgIC8qKgpAQCAtMjg2LDYgKzM5Myw3IEBAIENhbGwucHJvdG90eXBlID0gewogICAgICAg
ICB0aGlzLl9mdW5jdGlvbk5hbWUgPSByZXBsYXlhYmxlQ2FsbC5mdW5jdGlvbk5hbWUoKTsKICAg
ICAgICAgdGhpcy5fYXJncyA9IHJlcGxheUFyZ3M7CiAgICAgICAgIHRoaXMuX3Jlc3VsdCA9IHJl
cGxheVJlc3VsdDsKKyAgICAgICAgdGhpcy5fc3RhY2tUcmFjZSA9IHJlcGxheWFibGVDYWxsLnN0
YWNrVHJhY2UoKTsKICAgICAgICAgdGhpcy5fZnJlZXplZCA9IHRydWU7CiAgICAgICAgIHJldHVy
biB0aGlzOwogICAgIH0KQEAgLTI5NywxMyArNDA1LDE1IEBAIENhbGwucHJvdG90eXBlID0gewog
ICogQHBhcmFtIHtzdHJpbmd9IGZ1bmN0aW9uTmFtZQogICogQHBhcmFtIHtBcnJheS48UmVwbGF5
YWJsZVJlc291cmNlfCo+fSBhcmdzCiAgKiBAcGFyYW0ge1JlcGxheWFibGVSZXNvdXJjZXwqfSBy
ZXN1bHQKKyAqIEBwYXJhbSB7U3RhY2tUcmFjZX0gc3RhY2tUcmFjZQogICovCi1mdW5jdGlvbiBS
ZXBsYXlhYmxlQ2FsbCh0aGlzT2JqZWN0LCBmdW5jdGlvbk5hbWUsIGFyZ3MsIHJlc3VsdCkKK2Z1
bmN0aW9uIFJlcGxheWFibGVDYWxsKHRoaXNPYmplY3QsIGZ1bmN0aW9uTmFtZSwgYXJncywgcmVz
dWx0LCBzdGFja1RyYWNlKQogewogICAgIHRoaXMuX3RoaXNPYmplY3QgPSB0aGlzT2JqZWN0Owog
ICAgIHRoaXMuX2Z1bmN0aW9uTmFtZSA9IGZ1bmN0aW9uTmFtZTsKICAgICB0aGlzLl9hcmdzID0g
YXJnczsKICAgICB0aGlzLl9yZXN1bHQgPSByZXN1bHQ7CisgICAgdGhpcy5fc3RhY2tUcmFjZSA9
IHN0YWNrVHJhY2U7CiB9CiAKIFJlcGxheWFibGVDYWxsLnByb3RvdHlwZSA9IHsKQEAgLTM0MCw2
ICs0NTAsMTQgQEAgUmVwbGF5YWJsZUNhbGwucHJvdG90eXBlID0gewogICAgIH0sCiAKICAgICAv
KioKKyAgICAgKiBAcmV0dXJuIHtTdGFja1RyYWNlfQorICAgICAqLworICAgIHN0YWNrVHJhY2U6
IGZ1bmN0aW9uKCkKKyAgICB7CisgICAgICAgIHJldHVybiB0aGlzLl9zdGFja1RyYWNlOworICAg
IH0sCisKKyAgICAvKioKICAgICAgKiBAcGFyYW0ge0NhY2hlfSBjYWNoZQogICAgICAqIEByZXR1
cm4ge0NhbGx9CiAgICAgICovCkBAIC0xMzQzLDggKzE0NjEsMTEgQEAgV2ViR0xSZW5kZXJpbmdD
b250ZXh0UmVzb3VyY2UucHJvdG90eXBlID0gewogICAgICAgICAgICAgICAgIG1hbmFnZXIuY2Fw
dHVyZUFyZ3VtZW50cyhyZXNvdXJjZSwgYXJndW1lbnRzKTsKICAgICAgICAgICAgIHZhciB3cmFw
RnVuY3Rpb24gPSBuZXcgV2ViR0xSZW5kZXJpbmdDb250ZXh0UmVzb3VyY2UuV3JhcEZ1bmN0aW9u
KG9yaWdpbmFsT2JqZWN0LCBvcmlnaW5hbEZ1bmN0aW9uLCBmdW5jdGlvbk5hbWUsIGFyZ3VtZW50
cyk7CiAgICAgICAgICAgICBjdXN0b21XcmFwRnVuY3Rpb24uYXBwbHkod3JhcEZ1bmN0aW9uLCBh
cmd1bWVudHMpOwotICAgICAgICAgICAgaWYgKG1hbmFnZXIpCi0gICAgICAgICAgICAgICAgbWFu
YWdlci5yZXBvcnRDYWxsKHdyYXBGdW5jdGlvbi5jYWxsKCkpOworICAgICAgICAgICAgaWYgKG1h
bmFnZXIgJiYgbWFuYWdlci5jYXB0dXJpbmcoKSkgeworICAgICAgICAgICAgICAgIHZhciBjYWxs
ID0gd3JhcEZ1bmN0aW9uLmNhbGwoKTsKKyAgICAgICAgICAgICAgICBjYWxsLnNldFN0YWNrVHJh
Y2UoU3RhY2tUcmFjZS5jcmVhdGUoMSwgYXJndW1lbnRzLmNhbGxlZSkpOworICAgICAgICAgICAg
ICAgIG1hbmFnZXIucmVwb3J0Q2FsbChjYWxsKTsKKyAgICAgICAgICAgIH0KICAgICAgICAgICAg
IHJldHVybiB3cmFwRnVuY3Rpb24ucmVzdWx0KCk7CiAgICAgICAgIH07CiAgICAgfSwKQEAgLTEz
NjUsNyArMTQ4Niw4IEBAIFdlYkdMUmVuZGVyaW5nQ29udGV4dFJlc291cmNlLnByb3RvdHlwZSA9
IHsKICAgICAgICAgICAgICAgICByZXR1cm4gb3JpZ2luYWxGdW5jdGlvbi5hcHBseShvcmlnaW5h
bE9iamVjdCwgYXJndW1lbnRzKTsKICAgICAgICAgICAgIG1hbmFnZXIuY2FwdHVyZUFyZ3VtZW50
cyhyZXNvdXJjZSwgYXJndW1lbnRzKTsKICAgICAgICAgICAgIHZhciByZXN1bHQgPSBvcmlnaW5h
bEZ1bmN0aW9uLmFwcGx5KG9yaWdpbmFsT2JqZWN0LCBhcmd1bWVudHMpOwotICAgICAgICAgICAg
dmFyIGNhbGwgPSBuZXcgQ2FsbChyZXNvdXJjZSwgZnVuY3Rpb25OYW1lLCBhcmd1bWVudHMsIHJl
c3VsdCk7CisgICAgICAgICAgICB2YXIgc3RhY2tUcmFjZSA9IFN0YWNrVHJhY2UuY3JlYXRlKDEs
IGFyZ3VtZW50cy5jYWxsZWUpOworICAgICAgICAgICAgdmFyIGNhbGwgPSBuZXcgQ2FsbChyZXNv
dXJjZSwgZnVuY3Rpb25OYW1lLCBhcmd1bWVudHMsIHJlc3VsdCwgc3RhY2tUcmFjZSk7CiAgICAg
ICAgICAgICBtYW5hZ2VyLnJlcG9ydENhbGwoY2FsbCk7CiAgICAgICAgICAgICByZXR1cm4gcmVz
dWx0OwogICAgICAgICB9OwpAQCAtMTc2MCw5ICsxODgyLDIxIEBAIEluamVjdGVkU2NyaXB0LnBy
b3RvdHlwZSA9IHsKICAgICAgICAgdmFyIGNhbGxzID0gdHJhY2VMb2cucmVwbGF5YWJsZUNhbGxz
KCk7CiAgICAgICAgIGZvciAodmFyIGkgPSAwLCBuID0gY2FsbHMubGVuZ3RoOyBpIDwgbjsgKytp
KSB7CiAgICAgICAgICAgICB2YXIgY2FsbCA9IGNhbGxzW2ldOwotICAgICAgICAgICAgcmVzdWx0
LmNhbGxzLnB1c2goewotICAgICAgICAgICAgICAgIGZ1bmN0aW9uTmFtZTogY2FsbC5mdW5jdGlv
bk5hbWUoKSArICIoIiArIGNhbGwuYXJncygpLmpvaW4oIiwgIikgKyAiKSA9PiAiICsgY2FsbC5y
ZXN1bHQoKQorICAgICAgICAgICAgdmFyIGFyZ3MgPSBjYWxsLmFyZ3MoKS5tYXAoZnVuY3Rpb24o
YXJndW1lbnQpIHsKKyAgICAgICAgICAgICAgICByZXR1cm4gYXJndW1lbnQgKyAiIjsKICAgICAg
ICAgICAgIH0pOworICAgICAgICAgICAgdmFyIHN0YWNrVHJhY2UgPSBjYWxsLnN0YWNrVHJhY2Uo
KTsKKyAgICAgICAgICAgIHZhciBjYWxsRnJhbWUgPSBzdGFja1RyYWNlID8gc3RhY2tUcmFjZS5j
YWxsRnJhbWUoMCkgfHwge30gOiB7fTsKKyAgICAgICAgICAgIHZhciB0cmFjZUxvZ0l0ZW0gPSB7
CisgICAgICAgICAgICAgICAgZnVuY3Rpb25OYW1lOiBjYWxsLmZ1bmN0aW9uTmFtZSgpLAorICAg
ICAgICAgICAgICAgIGFyZ3VtZW50czogYXJncywKKyAgICAgICAgICAgICAgICBzb3VyY2VVUkw6
IGNhbGxGcmFtZS5zb3VyY2VVUkwsCisgICAgICAgICAgICAgICAgbGluZU51bWJlcjogY2FsbEZy
YW1lLmxpbmVOdW1iZXIsCisgICAgICAgICAgICAgICAgY29sdW1uTnVtYmVyOiBjYWxsRnJhbWUu
Y29sdW1uTnVtYmVyCisgICAgICAgICAgICB9OworICAgICAgICAgICAgaWYgKGNhbGwucmVzdWx0
KCkpCisgICAgICAgICAgICAgICAgdHJhY2VMb2dJdGVtLnJlc3VsdCA9IGNhbGwucmVzdWx0KCkg
KyAiIjsKKyAgICAgICAgICAgIHJlc3VsdC5jYWxscy5wdXNoKHRyYWNlTG9nSXRlbSk7CiAgICAg
ICAgIH0KICAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICB9LApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvci5qc29uIGIvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL0luc3BlY3Rvci5qc29uCmluZGV4IGRhZTM2ODk0OGU5NzFlZTYxYjk3ZDVkZDg2NjUyZGM4
ZmIzOTg5NTguLjk0ZjYxMmYwMDQ2ODkwZTcxYTI1N2IzYTUzOWNhMDJkYWZhMjAyOWQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3IuanNvbgorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yLmpzb24KQEAgLTMxNDksNyArMzE0OSwxMiBA
QAogICAgICAgICAgICAgICAgICJpZCI6ICJDYWxsIiwKICAgICAgICAgICAgICAgICAidHlwZSI6
ICJvYmplY3QiLAogICAgICAgICAgICAgICAgICJwcm9wZXJ0aWVzIjogWwotICAgICAgICAgICAg
ICAgICAgICB7ICJuYW1lIjogImZ1bmN0aW9uTmFtZSIsICJ0eXBlIjogInN0cmluZyIgfQorICAg
ICAgICAgICAgICAgICAgICB7ICJuYW1lIjogImZ1bmN0aW9uTmFtZSIsICJ0eXBlIjogInN0cmlu
ZyIgfSwKKyAgICAgICAgICAgICAgICAgICAgeyAibmFtZSI6ICJhcmd1bWVudHMiLCAidHlwZSI6
ICJhcnJheSIsICJpdGVtcyI6IHsgInR5cGUiOiAic3RyaW5nIiB9IH0sCisgICAgICAgICAgICAg
ICAgICAgIHsgIm5hbWUiOiAicmVzdWx0IiwgInR5cGUiOiAic3RyaW5nIiwgIm9wdGlvbmFsIjog
dHJ1ZSB9LAorICAgICAgICAgICAgICAgICAgICB7ICJuYW1lIjogInNvdXJjZVVSTCIsICJ0eXBl
IjogInN0cmluZyIsICJvcHRpb25hbCI6IHRydWUgfSwKKyAgICAgICAgICAgICAgICAgICAgeyAi
bmFtZSI6ICJsaW5lTnVtYmVyIiwgInR5cGUiOiAiaW50ZWdlciIsICJvcHRpb25hbCI6IHRydWUg
fSwKKyAgICAgICAgICAgICAgICAgICAgeyAibmFtZSI6ICJjb2x1bW5OdW1iZXIiLCAidHlwZSI6
ICJpbnRlZ2VyIiwgIm9wdGlvbmFsIjogdHJ1ZSB9CiAgICAgICAgICAgICAgICAgXQogICAgICAg
ICAgICAgfSwKICAgICAgICAgICAgIHsKQEAgLTMxNTcsNyArMzE2Miw3IEBACiAgICAgICAgICAg
ICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAgICAicHJvcGVydGllcyI6IFsK
ICAgICAgICAgICAgICAgICAgICAgeyAibmFtZSI6ICJpZCIsICIkcmVmIjogIlRyYWNlTG9nSWQi
IH0sCi0gICAgICAgICAgICAgICAgICAgIHsgIm5hbWUiOiAiY2FsbHMiLCAidHlwZSI6ICJhcnJh
eSIsICJpdGVtcyI6IHsgIiRyZWYiOiAiQ2FsbCIgfX0KKyAgICAgICAgICAgICAgICAgICAgeyAi
bmFtZSI6ICJjYWxscyIsICJ0eXBlIjogImFycmF5IiwgIml0ZW1zIjogeyAiJHJlZiI6ICJDYWxs
IiB9IH0KICAgICAgICAgICAgICAgICBdCiAgICAgICAgICAgICB9CiAgICAgICAgIF0sCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1dlYkdMUHJvZmlsZVZp
ZXcuanMgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1dlYkdMUHJvZmlsZVZp
ZXcuanMKaW5kZXggMDQ2NWY2MjU1YTZhM2IxZDRmYjlhZGY5ODFmYWExYjZkZTU1Y2Q5ZS4uYTUw
NGY2M2VlZTZjMDVkZGFjZTY1MTA0ZTAxYmQ5YjFkNDdmMWRhZiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9XZWJHTFByb2ZpbGVWaWV3LmpzCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvV2ViR0xQcm9maWxlVmlldy5qcwpAQCAt
NTUsMTIgKzU1LDE1IEBAIFdlYkluc3BlY3Rvci5XZWJHTFByb2ZpbGVWaWV3ID0gZnVuY3Rpb24o
cHJvZmlsZSkKICAgICB0aGlzLl9kZWJ1Z0luZm9FbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxl
bWVudCgiZGl2Iik7CiAgICAgcmVwbGF5SW1hZ2VDb250YWluZXIuYXBwZW5kQ2hpbGQodGhpcy5f
ZGVidWdJbmZvRWxlbWVudCk7CiAKKyAgICB0aGlzLl9saW5raWZpZXIgPSBuZXcgV2ViSW5zcGVj
dG9yLkxpbmtpZmllcigpOworCiAgICAgdGhpcy5fc2hvd1RyYWNlTG9nKCk7CiB9CiAKIFdlYklu
c3BlY3Rvci5XZWJHTFByb2ZpbGVWaWV3LnByb3RvdHlwZSA9IHsKICAgICBkaXNwb3NlOiBmdW5j
dGlvbigpCiAgICAgeworICAgICAgICB0aGlzLl9saW5raWZpZXIucmVzZXQoKTsKICAgICAgICAg
V2ViR0xBZ2VudC5kcm9wVHJhY2VMb2codGhpcy5fcHJvZmlsZS50cmFjZUxvZ0lkKCkpOwogICAg
IH0sCiAKQEAgLTEwNSw3ICsxMDgsMjEgQEAgV2ViSW5zcGVjdG9yLldlYkdMUHJvZmlsZVZpZXcu
cHJvdG90eXBlID0gewogICAgICAgICAgICAgICAgIHZhciB0cmFjZUxvZ0l0ZW0gPSBkb2N1bWVu
dC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKICAgICAgICAgICAgICAgICB0cmFjZUxvZ0l0ZW0udHJh
Y2VMb2dJZCA9IHRyYWNlTG9nLmlkOwogICAgICAgICAgICAgICAgIHRyYWNlTG9nSXRlbS5zdGVw
Tm8gPSBpOwotICAgICAgICAgICAgICAgIHRyYWNlTG9nSXRlbS50ZXh0Q29udGVudCA9ICIoIiAr
IChpKzEpICsgIikgIiArIGNhbGwuZnVuY3Rpb25OYW1lOworICAgICAgICAgICAgICAgIHRyYWNl
TG9nSXRlbS5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSgiKCIgKyAoaSsxKSAr
ICIpICIpKTsKKworICAgICAgICAgICAgICAgIGlmIChjYWxsLnNvdXJjZVVSTCkgeworICAgICAg
ICAgICAgICAgICAgICAvLyBGSVhNRSg2MjcyNSk6IHN0YWNrIHRyYWNlIGxpbmUvY29sdW1uIG51
bWJlcnMgYXJlIG9uZS1iYXNlZC4KKyAgICAgICAgICAgICAgICAgICAgdmFyIGxpbmVOdW1iZXIg
PSBNYXRoLm1heCgwLCBjYWxsLmxpbmVOdW1iZXIgLSAxKSB8fCAwOworICAgICAgICAgICAgICAg
ICAgICB2YXIgY29sdW1uTnVtYmVyID0gTWF0aC5tYXgoMCwgY2FsbC5jb2x1bW5OdW1iZXIgLSAx
KSB8fCAwOworICAgICAgICAgICAgICAgICAgICB2YXIgbGlua0VsZW1lbnQgPSB0aGlzLl9saW5r
aWZpZXIubGlua2lmeUxvY2F0aW9uKGNhbGwuc291cmNlVVJMLCBsaW5lTnVtYmVyLCBjb2x1bW5O
dW1iZXIpOworICAgICAgICAgICAgICAgICAgICBsaW5rRWxlbWVudC50ZXh0Q29udGVudCA9IGNh
bGwuZnVuY3Rpb25OYW1lOworICAgICAgICAgICAgICAgICAgICB0cmFjZUxvZ0l0ZW0uYXBwZW5k
Q2hpbGQobGlua0VsZW1lbnQpOworICAgICAgICAgICAgICAgIH0gZWxzZQorICAgICAgICAgICAg
ICAgICAgICB0cmFjZUxvZ0l0ZW0uYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUo
Y2FsbC5mdW5jdGlvbk5hbWUpKTsKKworICAgICAgICAgICAgICAgIHRyYWNlTG9nSXRlbS5hcHBl
bmRDaGlsZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSgiKCIgKyBjYWxsLmFyZ3VtZW50cy5qb2lu
KCIsICIpICsgIikiKSk7CisgICAgICAgICAgICAgICAgaWYgKHR5cGVvZiBjYWxsLnJlc3VsdCAh
PT0gInVuZGVmaW5lZCIpCisgICAgICAgICAgICAgICAgICAgIHRyYWNlTG9nSXRlbS5hcHBlbmRD
aGlsZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSgiID0+ICIgKyBjYWxsLnJlc3VsdCkpOwogICAg
ICAgICAgICAgICAgIHRoaXMuX3RyYWNlTG9nRWxlbWVudC5hcHBlbmRDaGlsZCh0cmFjZUxvZ0l0
ZW0pOwogICAgICAgICAgICAgfQogICAgICAgICB9Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>