<?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>92255</bug_id>
          
          <creation_ts>2012-07-25 08:13:21 -0700</creation_ts>
          <short_desc>Web Inspector: Add more jsdocs to InjectedScriptSource.js</short_desc>
          <delta_ts>2012-07-25 13:19:33 -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>678058</commentid>
    <comment_count>0</comment_count>
    <who name="Andrey Adaikin">aandrey</who>
    <bug_when>2012-07-25 08:13:21 -0700</bug_when>
    <thetext>Patch to follow.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>678059</commentid>
    <comment_count>1</comment_count>
      <attachid>154357</attachid>
    <who name="Andrey Adaikin">aandrey</who>
    <bug_when>2012-07-25 08:14:37 -0700</bug_when>
    <thetext>Created attachment 154357
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>678082</commentid>
    <comment_count>2</comment_count>
      <attachid>154357</attachid>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2012-07-25 08:28:35 -0700</bug_when>
    <thetext>Comment on attachment 154357
Patch

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

&gt; Source/WebCore/inspector/InjectedScriptSource.js:49
&gt; + * @type {!Object.&lt;string, boolean&gt;}

Here and below: we imply !</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>678148</commentid>
    <comment_count>3</comment_count>
      <attachid>154373</attachid>
    <who name="Andrey Adaikin">aandrey</who>
    <bug_when>2012-07-25 09:23:02 -0700</bug_when>
    <thetext>Created attachment 154373
removed exclimation marks</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>678384</commentid>
    <comment_count>4</comment_count>
      <attachid>154373</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-07-25 13:19:29 -0700</bug_when>
    <thetext>Comment on attachment 154373
removed exclimation marks

Clearing flags on attachment: 154373

Committed r123651: &lt;http://trac.webkit.org/changeset/123651&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>678385</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-07-25 13:19:33 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>154357</attachid>
            <date>2012-07-25 08:14:37 -0700</date>
            <delta_ts>2012-07-25 09:22:56 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-92255-20120725191427.patch</filename>
            <type>text/plain</type>
            <size>14568</size>
            <attacher name="Andrey Adaikin">aandrey</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTIzNDc3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOWI2NzNlMWRkYzdmOTYy
YWZkNmU3ZmZlZmRiNTIyMDg2MmIzYTYwOS4uNDRjMjNjYzdjNmExOWU4YzIyZmY4Nzk5OWFhYzkz
Yjg3ZjhiNjVjYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEyIEBACisyMDEyLTA3LTI1ICBBbmRy
ZXkgQWRhaWtpbiAgPGFhbmRyZXlAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFdlYiBJbnNwZWN0
b3I6IEFkZCBtb3JlIGpzZG9jcyB0byBJbmplY3RlZFNjcmlwdFNvdXJjZS5qcworICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTIyNTUKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGluc3BlY3Rvci9JbmplY3Rl
ZFNjcmlwdFNvdXJjZS5qczoKKwogMjAxMi0wNy0yNCAgRG9taW5payBSw7Z0dHNjaGVzICA8ZG9t
aW5pay5yb3R0c2NoZXNAaW50ZWwuY29tPgogCiAgICAgICAgIEhhcmZCdXp6RmFjZU5HLmggZm9y
d2FyZCBkZWNsYXJhdGlvbnMgY29uZmxpY3Qgd2l0aCBuZXdlciB2ZXJzaW9ucyBvZiBIYXJmYnV6
egpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luamVjdGVkU2NyaXB0U291
cmNlLmpzIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luamVjdGVkU2NyaXB0U291cmNlLmpz
CmluZGV4IDc5ZTY1NjJhZWMxNjI1NzBlOGNjMjIzNDAyM2YyNjNkYTAxOWJhMTguLjBmZGQzOGYy
MTdmZDI4NGQ3ZWE3YTI3MGQxMDZiYjlhZGVhMjc5MGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9JbmplY3RlZFNjcmlwdFNvdXJjZS5qcworKysgYi9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvSW5qZWN0ZWRTY3JpcHRTb3VyY2UuanMKQEAgLTI4LDYgKzI4LDggQEAKIAog
LyoqCiAgKiBAcGFyYW0ge0luamVjdGVkU2NyaXB0SG9zdH0gSW5qZWN0ZWRTY3JpcHRIb3N0Cisg
KiBAcGFyYW0ge1dpbmRvd30gaW5zcGVjdGVkV2luZG93CisgKiBAcGFyYW0ge251bWJlcn0gaW5q
ZWN0ZWRTY3JpcHRJZAogICovCiAoZnVuY3Rpb24gKEluamVjdGVkU2NyaXB0SG9zdCwgaW5zcGVj
dGVkV2luZG93LCBpbmplY3RlZFNjcmlwdElkKSB7CiAKQEAgLTQzLDYgKzQ1LDEwIEBAIHZhciBJ
bmplY3RlZFNjcmlwdCA9IGZ1bmN0aW9uKCkKICAgICB0aGlzLl9tb2R1bGVzID0ge307CiB9CiAK
Ky8qKgorICogQHR5cGUgeyFPYmplY3QuPHN0cmluZywgYm9vbGVhbj59CisgKiBAY29uc3QKKyAq
LwogSW5qZWN0ZWRTY3JpcHQucHJpbWl0aXZlVHlwZXMgPSB7CiAgICAgdW5kZWZpbmVkOiB0cnVl
LAogICAgIGJvb2xlYW46IHRydWUsCkBAIC01MSwxMiArNTcsMjIgQEAgSW5qZWN0ZWRTY3JpcHQu
cHJpbWl0aXZlVHlwZXMgPSB7CiB9CiAKIEluamVjdGVkU2NyaXB0LnByb3RvdHlwZSA9IHsKKyAg
ICAvKioKKyAgICAgKiBAcGFyYW0geyp9IG9iamVjdAorICAgICAqIEByZXR1cm4ge2Jvb2xlYW59
CisgICAgICovCiAgICAgaXNQcmltaXRpdmVWYWx1ZTogZnVuY3Rpb24ob2JqZWN0KQogICAgIHsK
ICAgICAgICAgLy8gRklYTUUoMzM3MTYpOiB0eXBlb2YgZG9jdW1lbnQuYWxsIGlzIGFsd2F5cyAn
dW5kZWZpbmVkJy4KICAgICAgICAgcmV0dXJuIEluamVjdGVkU2NyaXB0LnByaW1pdGl2ZVR5cGVz
W3R5cGVvZiBvYmplY3RdICYmICF0aGlzLl9pc0hUTUxBbGxDb2xsZWN0aW9uKG9iamVjdCk7CiAg
ICAgfSwKIAorICAgIC8qKgorICAgICAqIEBwYXJhbSB7Kn0gb2JqZWN0CisgICAgICogQHBhcmFt
IHtzdHJpbmd9IGdyb3VwTmFtZQorICAgICAqIEBwYXJhbSB7Ym9vbGVhbn0gY2FuQWNjZXNzSW5z
cGVjdGVkV2luZG93CisgICAgICogQHJldHVybiB7IU9iamVjdH0KKyAgICAgKi8KICAgICB3cmFw
T2JqZWN0OiBmdW5jdGlvbihvYmplY3QsIGdyb3VwTmFtZSwgY2FuQWNjZXNzSW5zcGVjdGVkV2lu
ZG93KQogICAgIHsKICAgICAgICAgaWYgKGNhbkFjY2Vzc0luc3BlY3RlZFdpbmRvdykKQEAgLTcx
LDExICs4NywxOCBAQCBJbmplY3RlZFNjcmlwdC5wcm90b3R5cGUgPSB7CiAgICAgICAgIHJldHVy
biByZXN1bHQ7CiAgICAgfSwKIAorICAgIC8qKgorICAgICAqIEBwYXJhbSB7Kn0gb2JqZWN0Cisg
ICAgICovCiAgICAgaW5zcGVjdE5vZGU6IGZ1bmN0aW9uKG9iamVjdCkKICAgICB7CiAgICAgICAg
IHRoaXMuX2luc3BlY3Qob2JqZWN0KTsKICAgICB9LAogCisgICAgLyoqCisgICAgICogQHBhcmFt
IHsqfSBvYmplY3QKKyAgICAgKiBAcmV0dXJuIHsqfQorICAgICAqLwogICAgIF9pbnNwZWN0OiBm
dW5jdGlvbihvYmplY3QpCiAgICAgewogICAgICAgICBpZiAoYXJndW1lbnRzLmxlbmd0aCA9PT0g
MCkKQEAgLTEwMCw3ICsxMjMsMTMgQEAgSW5qZWN0ZWRTY3JpcHQucHJvdG90eXBlID0gewogICAg
ICAgICByZXR1cm4gb2JqZWN0OwogICAgIH0sCiAKLSAgICAvLyBUaGlzIG1ldGhvZCBjYW5ub3Qg
dGhyb3cuCisgICAgLyoqCisgICAgICogVGhpcyBtZXRob2QgY2Fubm90IHRocm93LgorICAgICAq
IEBwYXJhbSB7Kn0gb2JqZWN0CisgICAgICogQHBhcmFtIHtzdHJpbmc9fSBvYmplY3RHcm91cE5h
bWUKKyAgICAgKiBAcGFyYW0ge2Jvb2xlYW49fSBmb3JjZVZhbHVlVHlwZQorICAgICAqIEByZXR1
cm4geyFJbmplY3RlZFNjcmlwdC5SZW1vdGVPYmplY3R9CisgICAgICovCiAgICAgX3dyYXBPYmpl
Y3Q6IGZ1bmN0aW9uKG9iamVjdCwgb2JqZWN0R3JvdXBOYW1lLCBmb3JjZVZhbHVlVHlwZSkKICAg
ICB7CiAgICAgICAgIHRyeSB7CkBAIC0xMTUsNiArMTQ0LDExIEBAIEluamVjdGVkU2NyaXB0LnBy
b3RvdHlwZSA9IHsKICAgICAgICAgfQogICAgIH0sCiAKKyAgICAvKioKKyAgICAgKiBAcGFyYW0g
eyp9IG9iamVjdAorICAgICAqIEBwYXJhbSB7c3RyaW5nPX0gb2JqZWN0R3JvdXBOYW1lCisgICAg
ICogQHJldHVybiB7c3RyaW5nfQorICAgICAqLwogICAgIF9iaW5kOiBmdW5jdGlvbihvYmplY3Qs
IG9iamVjdEdyb3VwTmFtZSkKICAgICB7CiAgICAgICAgIHZhciBpZCA9IHRoaXMuX2xhc3RCb3Vu
ZE9iamVjdElkKys7CkBAIC0xMzIsMTEgKzE2NiwxOCBAQCBJbmplY3RlZFNjcmlwdC5wcm90b3R5
cGUgPSB7CiAgICAgICAgIHJldHVybiBvYmplY3RJZDsKICAgICB9LAogCisgICAgLyoqCisgICAg
ICogQHBhcmFtIHtzdHJpbmd9IG9iamVjdElkCisgICAgICogQHJldHVybiB7Kn0KKyAgICAgKi8K
ICAgICBfcGFyc2VPYmplY3RJZDogZnVuY3Rpb24ob2JqZWN0SWQpCiAgICAgewogICAgICAgICBy
ZXR1cm4gZXZhbCgiKCIgKyBvYmplY3RJZCArICIpIik7CiAgICAgfSwKIAorICAgIC8qKgorICAg
ICAqIEBwYXJhbSB7c3RyaW5nfSBvYmplY3RHcm91cE5hbWUKKyAgICAgKi8KICAgICByZWxlYXNl
T2JqZWN0R3JvdXA6IGZ1bmN0aW9uKG9iamVjdEdyb3VwTmFtZSkKICAgICB7CiAgICAgICAgIHZh
ciBncm91cCA9IHRoaXMuX29iamVjdEdyb3Vwc1tvYmplY3RHcm91cE5hbWVdOwpAQCAtMTQ3LDYg
KzE4OCwxMSBAQCBJbmplY3RlZFNjcmlwdC5wcm90b3R5cGUgPSB7CiAgICAgICAgIGRlbGV0ZSB0
aGlzLl9vYmplY3RHcm91cHNbb2JqZWN0R3JvdXBOYW1lXTsKICAgICB9LAogCisgICAgLyoqCisg
ICAgICogQHBhcmFtIHtzdHJpbmd9IG1ldGhvZE5hbWUKKyAgICAgKiBAcGFyYW0ge3N0cmluZ30g
YXJncworICAgICAqIEByZXR1cm4geyp9CisgICAgICovCiAgICAgZGlzcGF0Y2g6IGZ1bmN0aW9u
KG1ldGhvZE5hbWUsIGFyZ3MpCiAgICAgewogICAgICAgICB2YXIgYXJnc0FycmF5ID0gZXZhbCgi
KCIgKyBhcmdzICsgIikiKTsKQEAgLTE1OCw2ICsyMDQsMTEgQEAgSW5qZWN0ZWRTY3JpcHQucHJv
dG90eXBlID0gewogICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgIH0sCiAKKyAgICAvKioKKyAg
ICAgKiBAcGFyYW0ge3N0cmluZ30gb2JqZWN0SWQKKyAgICAgKiBAcGFyYW0ge2Jvb2xlYW59IG93
blByb3BlcnRpZXMKKyAgICAgKiBAcmV0dXJuIHshQXJyYXkuPE9iamVjdD58Ym9vbGVhbn0KKyAg
ICAgKi8KICAgICBnZXRQcm9wZXJ0aWVzOiBmdW5jdGlvbihvYmplY3RJZCwgb3duUHJvcGVydGll
cykKICAgICB7CiAgICAgICAgIHZhciBwYXJzZWRPYmplY3RJZCA9IHRoaXMuX3BhcnNlT2JqZWN0
SWQob2JqZWN0SWQpOwpAQCAtMTkyLDYgKzI0MywxMCBAQCBJbmplY3RlZFNjcmlwdC5wcm90b3R5
cGUgPSB7CiAgICAgICAgIHJldHVybiBkZXNjcmlwdG9yczsKICAgICB9LAogCisgICAgLyoqCisg
ICAgICogQHBhcmFtIHtzdHJpbmd9IGZ1bmN0aW9uSWQKKyAgICAgKiBAcmV0dXJuIHshT2JqZWN0
fHN0cmluZ30KKyAgICAgKi8KICAgICBnZXRGdW5jdGlvbkRldGFpbHM6IGZ1bmN0aW9uKGZ1bmN0
aW9uSWQpCiAgICAgewogICAgICAgICB2YXIgcGFyc2VkRnVuY3Rpb25JZCA9IHRoaXMuX3BhcnNl
T2JqZWN0SWQoZnVuY3Rpb25JZCk7CkBAIC0yMTEsMTggKzI2NiwyOSBAQCBJbmplY3RlZFNjcmlw
dC5wcm90b3R5cGUgPSB7CiAgICAgICAgIHJldHVybiBkZXRhaWxzOwogICAgIH0sCiAKKyAgICAv
KioKKyAgICAgKiBAcGFyYW0ge3N0cmluZ30gb2JqZWN0SWQKKyAgICAgKi8KICAgICByZWxlYXNl
T2JqZWN0OiBmdW5jdGlvbihvYmplY3RJZCkKICAgICB7CiAgICAgICAgIHZhciBwYXJzZWRPYmpl
Y3RJZCA9IHRoaXMuX3BhcnNlT2JqZWN0SWQob2JqZWN0SWQpOwogICAgICAgICB0aGlzLl9yZWxl
YXNlT2JqZWN0KHBhcnNlZE9iamVjdElkLmlkKTsKICAgICB9LAogCisgICAgLyoqCisgICAgICog
QHBhcmFtIHtzdHJpbmd9IGlkCisgICAgICovCiAgICAgX3JlbGVhc2VPYmplY3Q6IGZ1bmN0aW9u
KGlkKQogICAgIHsKICAgICAgICAgZGVsZXRlIHRoaXMuX2lkVG9XcmFwcGVkT2JqZWN0W2lkXTsK
ICAgICAgICAgZGVsZXRlIHRoaXMuX2lkVG9PYmplY3RHcm91cE5hbWVbaWRdOwogICAgIH0sCiAK
KyAgICAvKioKKyAgICAgKiBAcGFyYW0geyFPYmplY3R9IG9iamVjdAorICAgICAqIEBwYXJhbSB7
Ym9vbGVhbn0gb3duUHJvcGVydGllcworICAgICAqIEByZXR1cm4geyFBcnJheS48T2JqZWN0Pn0K
KyAgICAgKi8KICAgICBfcHJvcGVydHlEZXNjcmlwdG9yczogZnVuY3Rpb24ob2JqZWN0LCBvd25Q
cm9wZXJ0aWVzKQogICAgIHsKICAgICAgICAgdmFyIGRlc2NyaXB0b3JzID0gW107CkBAIC0yNjUs
MTEgKzMzMSwyNCBAQCBJbmplY3RlZFNjcmlwdC5wcm90b3R5cGUgPSB7CiAgICAgICAgIHJldHVy
biBkZXNjcmlwdG9yczsKICAgICB9LAogCisgICAgLyoqCisgICAgICogQHBhcmFtIHtzdHJpbmd9
IGV4cHJlc3Npb24KKyAgICAgKiBAcGFyYW0ge3N0cmluZ30gb2JqZWN0R3JvdXAKKyAgICAgKiBA
cGFyYW0ge2Jvb2xlYW59IGluamVjdENvbW1hbmRMaW5lQVBJCisgICAgICogQHBhcmFtIHtib29s
ZWFufSByZXR1cm5CeVZhbHVlCisgICAgICogQHJldHVybiB7Kn0KKyAgICAgKi8KICAgICBldmFs
dWF0ZTogZnVuY3Rpb24oZXhwcmVzc2lvbiwgb2JqZWN0R3JvdXAsIGluamVjdENvbW1hbmRMaW5l
QVBJLCByZXR1cm5CeVZhbHVlKQogICAgIHsKICAgICAgICAgcmV0dXJuIHRoaXMuX2V2YWx1YXRl
QW5kV3JhcChpbnNwZWN0ZWRXaW5kb3cuZXZhbCwgaW5zcGVjdGVkV2luZG93LCBleHByZXNzaW9u
LCBvYmplY3RHcm91cCwgZmFsc2UsIGluamVjdENvbW1hbmRMaW5lQVBJLCByZXR1cm5CeVZhbHVl
KTsKICAgICB9LAogCisgICAgLyoqCisgICAgICogQHBhcmFtIHtzdHJpbmd9IG9iamVjdElkCisg
ICAgICogQHBhcmFtIHtzdHJpbmd9IGV4cHJlc3Npb24KKyAgICAgKiBAcGFyYW0ge2Jvb2xlYW59
IHJldHVybkJ5VmFsdWUKKyAgICAgKiBAcmV0dXJuIHshT2JqZWN0fHN0cmluZ30KKyAgICAgKi8K
ICAgICBjYWxsRnVuY3Rpb25PbjogZnVuY3Rpb24ob2JqZWN0SWQsIGV4cHJlc3Npb24sIGFyZ3Ms
IHJldHVybkJ5VmFsdWUpCiAgICAgewogICAgICAgICB2YXIgcGFyc2VkT2JqZWN0SWQgPSB0aGlz
Ll9wYXJzZU9iamVjdElkKG9iamVjdElkKTsKQEAgLTMxMiw2ICszOTEsMTUgQEAgSW5qZWN0ZWRT
Y3JpcHQucHJvdG90eXBlID0gewogICAgICAgICB9CiAgICAgfSwKIAorICAgIC8qKgorICAgICAq
IEBwYXJhbSB7IUZ1bmN0aW9ufSBldmFsRnVuY3Rpb24KKyAgICAgKiBAcGFyYW0geyFPYmplY3R9
IG9iamVjdAorICAgICAqIEBwYXJhbSB7c3RyaW5nfSBvYmplY3RHcm91cAorICAgICAqIEBwYXJh
bSB7Ym9vbGVhbn0gaXNFdmFsT25DYWxsRnJhbWUKKyAgICAgKiBAcGFyYW0ge2Jvb2xlYW59IGlu
amVjdENvbW1hbmRMaW5lQVBJCisgICAgICogQHBhcmFtIHtib29sZWFufSByZXR1cm5CeVZhbHVl
CisgICAgICogQHJldHVybiB7Kn0KKyAgICAgKi8KICAgICBfZXZhbHVhdGVBbmRXcmFwOiBmdW5j
dGlvbihldmFsRnVuY3Rpb24sIG9iamVjdCwgZXhwcmVzc2lvbiwgb2JqZWN0R3JvdXAsIGlzRXZh
bE9uQ2FsbEZyYW1lLCBpbmplY3RDb21tYW5kTGluZUFQSSwgcmV0dXJuQnlWYWx1ZSkKICAgICB7
CiAgICAgICAgIHRyeSB7CkBAIC0zMjIsNiArNDEwLDExIEBAIEluamVjdGVkU2NyaXB0LnByb3Rv
dHlwZSA9IHsKICAgICAgICAgfQogICAgIH0sCiAKKyAgICAvKioKKyAgICAgKiBAcGFyYW0geyp9
IHZhbHVlCisgICAgICogQHBhcmFtIHtzdHJpbmd9IG9iamVjdEdyb3VwCisgICAgICogQHJldHVy
biB7IU9iamVjdH0KKyAgICAgKi8KICAgICBfY3JlYXRlVGhyb3duVmFsdWU6IGZ1bmN0aW9uKHZh
bHVlLCBvYmplY3RHcm91cCkKICAgICB7CiAgICAgICAgIHZhciByZW1vdGVPYmplY3QgPSB0aGlz
Ll93cmFwT2JqZWN0KHZhbHVlLCBvYmplY3RHcm91cCk7CkBAIC0zMzIsNiArNDI1LDE0IEBAIElu
amVjdGVkU2NyaXB0LnByb3RvdHlwZSA9IHsKICAgICAgICAgICAgICAgICAgcmVzdWx0OiByZW1v
dGVPYmplY3QgfTsKICAgICB9LAogCisgICAgLyoqCisgICAgICogQHBhcmFtIHshRnVuY3Rpb259
IGV2YWxGdW5jdGlvbgorICAgICAqIEBwYXJhbSB7IU9iamVjdH0gb2JqZWN0CisgICAgICogQHBh
cmFtIHtzdHJpbmd9IGV4cHJlc3Npb24KKyAgICAgKiBAcGFyYW0ge2Jvb2xlYW59IGlzRXZhbE9u
Q2FsbEZyYW1lCisgICAgICogQHBhcmFtIHtib29sZWFufSBpbmplY3RDb21tYW5kTGluZUFQSQor
ICAgICAqIEByZXR1cm4geyp9CisgICAgICovCiAgICAgX2V2YWx1YXRlT246IGZ1bmN0aW9uKGV2
YWxGdW5jdGlvbiwgb2JqZWN0LCBleHByZXNzaW9uLCBpc0V2YWxPbkNhbGxGcmFtZSwgaW5qZWN0
Q29tbWFuZExpbmVBUEkpCiAgICAgewogICAgICAgICAvLyBPbmx5IGluc3RhbGwgY29tbWFuZCBs
aW5lIGFwaSBvYmplY3QgZm9yIHRoZSB0aW1lIG9mIGV2YWx1YXRpb24uCkBAIC0zNTAsNiArNDUx
LDEwIEBAIEluamVjdGVkU2NyaXB0LnByb3RvdHlwZSA9IHsKICAgICAgICAgfQogICAgIH0sCiAK
KyAgICAvKioKKyAgICAgKiBAcGFyYW0ge09iamVjdH0gY2FsbEZyYW1lCisgICAgICogQHJldHVy
biB7IUFycmF5LjwhSW5qZWN0ZWRTY3JpcHQuQ2FsbEZyYW1lUHJveHk+fGJvb2xlYW59CisgICAg
ICovCiAgICAgd3JhcENhbGxGcmFtZXM6IGZ1bmN0aW9uKGNhbGxGcmFtZSkKICAgICB7CiAgICAg
ICAgIGlmICghY2FsbEZyYW1lKQpAQCAtMzY0LDYgKzQ2OSwxNSBAQCBJbmplY3RlZFNjcmlwdC5w
cm90b3R5cGUgPSB7CiAgICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgfSwKIAorICAgIC8qKgor
ICAgICAqIEBwYXJhbSB7T2JqZWN0fSB0b3BDYWxsRnJhbWUKKyAgICAgKiBAcGFyYW0ge3N0cmlu
Z30gY2FsbEZyYW1lSWQKKyAgICAgKiBAcGFyYW0ge3N0cmluZ30gZXhwcmVzc2lvbgorICAgICAq
IEBwYXJhbSB7c3RyaW5nfSBvYmplY3RHcm91cAorICAgICAqIEBwYXJhbSB7Ym9vbGVhbn0gaW5q
ZWN0Q29tbWFuZExpbmVBUEkKKyAgICAgKiBAcGFyYW0ge2Jvb2xlYW59IHJldHVybkJ5VmFsdWUK
KyAgICAgKiBAcmV0dXJuIHsqfQorICAgICAqLwogICAgIGV2YWx1YXRlT25DYWxsRnJhbWU6IGZ1
bmN0aW9uKHRvcENhbGxGcmFtZSwgY2FsbEZyYW1lSWQsIGV4cHJlc3Npb24sIG9iamVjdEdyb3Vw
LCBpbmplY3RDb21tYW5kTGluZUFQSSwgcmV0dXJuQnlWYWx1ZSkKICAgICB7CiAgICAgICAgIHZh
ciBjYWxsRnJhbWUgPSB0aGlzLl9jYWxsRnJhbWVGb3JJZCh0b3BDYWxsRnJhbWUsIGNhbGxGcmFt
ZUlkKTsKQEAgLTM3Miw2ICs0ODYsMTEgQEAgSW5qZWN0ZWRTY3JpcHQucHJvdG90eXBlID0gewog
ICAgICAgICByZXR1cm4gdGhpcy5fZXZhbHVhdGVBbmRXcmFwKGNhbGxGcmFtZS5ldmFsdWF0ZSwg
Y2FsbEZyYW1lLCBleHByZXNzaW9uLCBvYmplY3RHcm91cCwgdHJ1ZSwgaW5qZWN0Q29tbWFuZExp
bmVBUEksIHJldHVybkJ5VmFsdWUpOwogICAgIH0sCiAKKyAgICAvKioKKyAgICAgKiBAcGFyYW0g
e09iamVjdH0gdG9wQ2FsbEZyYW1lCisgICAgICogQHBhcmFtIHtzdHJpbmd9IGNhbGxGcmFtZUlk
CisgICAgICogQHJldHVybiB7Kn0KKyAgICAgKi8KICAgICByZXN0YXJ0RnJhbWU6IGZ1bmN0aW9u
KHRvcENhbGxGcmFtZSwgY2FsbEZyYW1lSWQpCiAgICAgewogICAgICAgICB2YXIgY2FsbEZyYW1l
ID0gdGhpcy5fY2FsbEZyYW1lRm9ySWQodG9wQ2FsbEZyYW1lLCBjYWxsRnJhbWVJZCk7CkBAIC0z
ODMsNiArNTAyLDExIEBAIEluamVjdGVkU2NyaXB0LnByb3RvdHlwZSA9IHsKICAgICAgICAgcmV0
dXJuIHJlc3VsdDsKICAgICB9LAogCisgICAgLyoqCisgICAgICogQHBhcmFtIHtPYmplY3R9IHRv
cENhbGxGcmFtZQorICAgICAqIEBwYXJhbSB7c3RyaW5nfSBjYWxsRnJhbWVJZAorICAgICAqIEBy
ZXR1cm4ge09iamVjdH0KKyAgICAgKi8KICAgICBfY2FsbEZyYW1lRm9ySWQ6IGZ1bmN0aW9uKHRv
cENhbGxGcmFtZSwgY2FsbEZyYW1lSWQpCiAgICAgewogICAgICAgICB2YXIgcGFyc2VkQ2FsbEZy
YW1lSWQgPSBldmFsKCIoIiArIGNhbGxGcmFtZUlkICsgIikiKTsKQEAgLTM5MywxNyArNTE3LDI5
IEBAIEluamVjdGVkU2NyaXB0LnByb3RvdHlwZSA9IHsKICAgICAgICAgcmV0dXJuIGNhbGxGcmFt
ZTsKICAgICB9LAogCisgICAgLyoqCisgICAgICogQHBhcmFtIHshT2JqZWN0fSBvYmplY3RJZAor
ICAgICAqIEByZXR1cm4ge09iamVjdH0KKyAgICAgKi8KICAgICBfb2JqZWN0Rm9ySWQ6IGZ1bmN0
aW9uKG9iamVjdElkKQogICAgIHsKICAgICAgICAgcmV0dXJuIHRoaXMuX2lkVG9XcmFwcGVkT2Jq
ZWN0W29iamVjdElkLmlkXTsKICAgICB9LAogCisgICAgLyoqCisgICAgICogQHBhcmFtIHtzdHJp
bmd9IG9iamVjdElkCisgICAgICogQHJldHVybiB7T2JqZWN0fQorICAgICAqLwogICAgIGZpbmRP
YmplY3RCeUlkOiBmdW5jdGlvbihvYmplY3RJZCkKICAgICB7CiAgICAgICAgIHZhciBwYXJzZWRP
YmplY3RJZCA9IHRoaXMuX3BhcnNlT2JqZWN0SWQob2JqZWN0SWQpOwogICAgICAgICByZXR1cm4g
dGhpcy5fb2JqZWN0Rm9ySWQocGFyc2VkT2JqZWN0SWQpOwogICAgIH0sCiAKKyAgICAvKioKKyAg
ICAgKiBAcGFyYW0ge3N0cmluZ30gb2JqZWN0SWQKKyAgICAgKiBAcmV0dXJuIHtOb2RlfQorICAg
ICAqLwogICAgIG5vZGVGb3JPYmplY3RJZDogZnVuY3Rpb24ob2JqZWN0SWQpCiAgICAgewogICAg
ICAgICB2YXIgb2JqZWN0ID0gdGhpcy5maW5kT2JqZWN0QnlJZChvYmplY3RJZCk7CkBAIC00MjUs
MTcgKzU2MSwyOSBAQCBJbmplY3RlZFNjcmlwdC5wcm90b3R5cGUgPSB7CiAgICAgICAgIHJldHVy
biBtb2R1bGU7CiAgICAgfSwKIAorICAgIC8qKgorICAgICAqIEBwYXJhbSB7Kn0gb2JqZWN0Cisg
ICAgICogQHJldHVybiB7Ym9vbGVhbn0KKyAgICAgKi8KICAgICBfaXNEZWZpbmVkOiBmdW5jdGlv
bihvYmplY3QpCiAgICAgewogICAgICAgICByZXR1cm4gb2JqZWN0IHx8IHRoaXMuX2lzSFRNTEFs
bENvbGxlY3Rpb24ob2JqZWN0KTsKICAgICB9LAogCisgICAgLyoqCisgICAgICogQHBhcmFtIHsq
fSBvYmplY3QKKyAgICAgKiBAcmV0dXJuIHtib29sZWFufQorICAgICAqLwogICAgIF9pc0hUTUxB
bGxDb2xsZWN0aW9uOiBmdW5jdGlvbihvYmplY3QpCiAgICAgewogICAgICAgICAvLyBkb2N1bWVu
dC5hbGwgaXMgcmVwb3J0ZWQgYXMgdW5kZWZpbmVkLCBidXQgd2Ugc3RpbGwgd2FudCB0byBwcm9j
ZXNzIGl0LgogICAgICAgICByZXR1cm4gKHR5cGVvZiBvYmplY3QgPT09ICJ1bmRlZmluZWQiKSAm
JiBJbmplY3RlZFNjcmlwdEhvc3QuaXNIVE1MQWxsQ29sbGVjdGlvbihvYmplY3QpOwogICAgIH0s
CiAKKyAgICAvKioKKyAgICAgKiBAcGFyYW0ge09iamVjdD89fSBvYmoKKyAgICAgKiBAcmV0dXJu
IHtzdHJpbmc/fQorICAgICAqLwogICAgIF9zdWJ0eXBlOiBmdW5jdGlvbihvYmopCiAgICAgewog
ICAgICAgICBpZiAob2JqID09PSBudWxsKQpAQCAtNDY1LDYgKzYxMywxMCBAQCBJbmplY3RlZFNj
cmlwdC5wcm90b3R5cGUgPSB7CiAgICAgICAgIHJldHVybiBudWxsOwogICAgIH0sCiAKKyAgICAv
KioKKyAgICAgKiBAcGFyYW0geyp9IG9iagorICAgICAqIEByZXR1cm4ge3N0cmluZz99CisgICAg
ICovCiAgICAgX2Rlc2NyaWJlOiBmdW5jdGlvbihvYmopCiAgICAgewogICAgICAgICBpZiAodGhp
cy5pc1ByaW1pdGl2ZVZhbHVlKG9iaikpCkBAIC01MDAsNiArNjUyLDEwIEBAIEluamVjdGVkU2Ny
aXB0LnByb3RvdHlwZSA9IHsKICAgICAgICAgcmV0dXJuIGNsYXNzTmFtZTsKICAgICB9LAogCisg
ICAgLyoqCisgICAgICogQHBhcmFtIHsqfSBvYmoKKyAgICAgKiBAcmV0dXJuIHtzdHJpbmd9Cisg
ICAgICovCiAgICAgX3RvU3RyaW5nOiBmdW5jdGlvbihvYmopCiAgICAgewogICAgICAgICAvLyBX
ZSBkb24ndCB1c2UgU3RyaW5nKG9iaikgYmVjYXVzZSBpbnNwZWN0ZWRXaW5kb3cuU3RyaW5nIGlz
IHVuZGVmaW5lZCBpZiBvd25pbmcgZnJhbWUgbmF2aWdhdGVkIHRvIGFub3RoZXIgcGFnZS4KQEAg
LTUwNyw2ICs2NjMsMTAgQEAgSW5qZWN0ZWRTY3JpcHQucHJvdG90eXBlID0gewogICAgIH0KIH0K
IAorLyoqCisgKiBAdHlwZSB7IUluamVjdGVkU2NyaXB0fQorICogQGNvbnN0CisgKi8KIHZhciBp
bmplY3RlZFNjcmlwdCA9IG5ldyBJbmplY3RlZFNjcmlwdCgpOwogCiAvKioKQEAgLTU0NCw2ICs3
MDQsNyBAQCBJbmplY3RlZFNjcmlwdC5SZW1vdGVPYmplY3QgPSBmdW5jdGlvbihvYmplY3QsIG9i
amVjdEdyb3VwTmFtZSwgZm9yY2VWYWx1ZVR5cGUpCiAvKioKICAqIEBjb25zdHJ1Y3RvcgogICog
QHBhcmFtIHtudW1iZXJ9IG9yZGluYWwKKyAqIEBwYXJhbSB7IU9iamVjdH0gY2FsbEZyYW1lCiAg
Ki8KIEluamVjdGVkU2NyaXB0LkNhbGxGcmFtZVByb3h5ID0gZnVuY3Rpb24ob3JkaW5hbCwgY2Fs
bEZyYW1lKQogewpAQCAtNTU1LDYgKzcxNiwxMCBAQCBJbmplY3RlZFNjcmlwdC5DYWxsRnJhbWVQ
cm94eSA9IGZ1bmN0aW9uKG9yZGluYWwsIGNhbGxGcmFtZSkKIH0KIAogSW5qZWN0ZWRTY3JpcHQu
Q2FsbEZyYW1lUHJveHkucHJvdG90eXBlID0geworICAgIC8qKgorICAgICAqIEBwYXJhbSB7IU9i
amVjdH0gY2FsbEZyYW1lCisgICAgICogQHJldHVybiB7IUFycmF5LjwhT2JqZWN0Pn0KKyAgICAg
Ki8KICAgICBfd3JhcFNjb3BlQ2hhaW46IGZ1bmN0aW9uKGNhbGxGcmFtZSkKICAgICB7CiAgICAg
ICAgIHZhciBzY29wZUNoYWluID0gY2FsbEZyYW1lLnNjb3BlQ2hhaW47CkBAIC01NjcsNiArNzMy
LDEyIEBAIEluamVjdGVkU2NyaXB0LkNhbGxGcmFtZVByb3h5LnByb3RvdHlwZSA9IHsKICAgICB9
CiB9CiAKKy8qKgorICogQHBhcmFtIHtudW1iZXJ9IHNjb3BlVHlwZUNvZGUKKyAqIEBwYXJhbSB7
Kn0gc2NvcGVPYmplY3QKKyAqIEBwYXJhbSB7c3RyaW5nfSBncm91cElkCisgKiBAcmV0dXJuIHsh
T2JqZWN0fQorICovCiBJbmplY3RlZFNjcmlwdC5DYWxsRnJhbWVQcm94eS5fY3JlYXRlU2NvcGVK
c29uID0gZnVuY3Rpb24oc2NvcGVUeXBlQ29kZSwgc2NvcGVPYmplY3QsIGdyb3VwSWQpIHsKICAg
ICBjb25zdCBHTE9CQUxfU0NPUEUgPSAwOwogICAgIGNvbnN0IExPQ0FMX1NDT1BFID0gMTsKQEAg
LTU4OSw5ICs3NjAsMTUgQEAgSW5qZWN0ZWRTY3JpcHQuQ2FsbEZyYW1lUHJveHkuX2NyZWF0ZVNj
b3BlSnNvbiA9IGZ1bmN0aW9uKHNjb3BlVHlwZUNvZGUsIHNjb3BlT2IKIAogLyoqCiAgKiBAY29u
c3RydWN0b3IKKyAqIEBwYXJhbSB7IUNvbW1hbmRMaW5lQVBJSW1wbH0gY29tbWFuZExpbmVBUElJ
bXBsCisgKiBAcGFyYW0ge09iamVjdH0gY2FsbEZyYW1lCiAgKi8KIGZ1bmN0aW9uIENvbW1hbmRM
aW5lQVBJKGNvbW1hbmRMaW5lQVBJSW1wbCwgY2FsbEZyYW1lKQogeworICAgIC8qKgorICAgICAq
IEBwYXJhbSB7c3RyaW5nfSBtZW1iZXIKKyAgICAgKiBAcmV0dXJuIHtib29sZWFufQorICAgICAq
LwogICAgIGZ1bmN0aW9uIGluU2NvcGVWYXJpYWJsZXMobWVtYmVyKQogICAgIHsKICAgICAgICAg
aWYgKCFjYWxsRnJhbWUpCkBAIC02MjIsNiArNzk5LDEwIEBAIGZ1bmN0aW9uIENvbW1hbmRMaW5l
QVBJKGNvbW1hbmRMaW5lQVBJSW1wbCwgY2FsbEZyYW1lKQogICAgIH0KIH0KIAorLyoqCisgKiBA
dHlwZSB7IUFycmF5LjxzdHJpbmc+fQorICogQGNvbnN0CisgKi8KIENvbW1hbmRMaW5lQVBJLm1l
bWJlcnNfID0gWwogICAgICIkIiwgIiQkIiwgIiR4IiwgImRpciIsICJkaXJ4bWwiLCAia2V5cyIs
ICJ2YWx1ZXMiLCAicHJvZmlsZSIsICJwcm9maWxlRW5kIiwKICAgICAibW9uaXRvckV2ZW50cyIs
ICJ1bm1vbml0b3JFdmVudHMiLCAiaW5zcGVjdCIsICJjb3B5IiwgImNsZWFyIiwgImdldEV2ZW50
TGlzdGVuZXJzIgpAQCAtNjk4LDYgKzg3OSwxMCBAQCBDb21tYW5kTGluZUFQSUltcGwucHJvdG90
eXBlID0gewogICAgICAgICByZXR1cm4gY29uc29sZS5wcm9maWxlRW5kLmFwcGx5KGNvbnNvbGUs
IGFyZ3VtZW50cykKICAgICB9LAogCisgICAgLyoqCisgICAgICogQHBhcmFtIHtPYmplY3R9IG9i
amVjdAorICAgICAqIEBwYXJhbSB7IUFycmF5LjxzdHJpbmc+fHN0cmluZz19IHR5cGVzCisgICAg
ICovCiAgICAgbW9uaXRvckV2ZW50czogZnVuY3Rpb24ob2JqZWN0LCB0eXBlcykKICAgICB7CiAg
ICAgICAgIGlmICghb2JqZWN0IHx8ICFvYmplY3QuYWRkRXZlbnRMaXN0ZW5lciB8fCAhb2JqZWN0
LnJlbW92ZUV2ZW50TGlzdGVuZXIpCkBAIC03MDksNiArODk0LDEwIEBAIENvbW1hbmRMaW5lQVBJ
SW1wbC5wcm90b3R5cGUgPSB7CiAgICAgICAgIH0KICAgICB9LAogCisgICAgLyoqCisgICAgICog
QHBhcmFtIHtPYmplY3R9IG9iamVjdAorICAgICAqIEBwYXJhbSB7IUFycmF5LjxzdHJpbmc+fHN0
cmluZz19IHR5cGVzCisgICAgICovCiAgICAgdW5tb25pdG9yRXZlbnRzOiBmdW5jdGlvbihvYmpl
Y3QsIHR5cGVzKQogICAgIHsKICAgICAgICAgaWYgKCFvYmplY3QgfHwgIW9iamVjdC5hZGRFdmVu
dExpc3RlbmVyIHx8ICFvYmplY3QucmVtb3ZlRXZlbnRMaXN0ZW5lcikKQEAgLTcxOCw2ICs5MDcs
MTAgQEAgQ29tbWFuZExpbmVBUElJbXBsLnByb3RvdHlwZSA9IHsKICAgICAgICAgICAgIG9iamVj
dC5yZW1vdmVFdmVudExpc3RlbmVyKHR5cGVzW2ldLCB0aGlzLl9sb2dFdmVudCwgZmFsc2UpOwog
ICAgIH0sCiAKKyAgICAvKioKKyAgICAgKiBAcGFyYW0geyp9IG9iamVjdAorICAgICAqIEByZXR1
cm4geyp9CisgICAgICovCiAgICAgaW5zcGVjdDogZnVuY3Rpb24ob2JqZWN0KQogICAgIHsKICAg
ICAgICAgcmV0dXJuIGluamVjdGVkU2NyaXB0Ll9pbnNwZWN0KG9iamVjdCk7CkBAIC03MzUsMTYg
KzkyOCwyNiBAQCBDb21tYW5kTGluZUFQSUltcGwucHJvdG90eXBlID0gewogICAgICAgICBJbmpl
Y3RlZFNjcmlwdEhvc3QuY2xlYXJDb25zb2xlTWVzc2FnZXMoKTsKICAgICB9LAogCisgICAgLyoq
CisgICAgICogQHBhcmFtIHtOb2RlfSBub2RlCisgICAgICovCiAgICAgZ2V0RXZlbnRMaXN0ZW5l
cnM6IGZ1bmN0aW9uKG5vZGUpCiAgICAgewogICAgICAgICByZXR1cm4gSW5qZWN0ZWRTY3JpcHRI
b3N0LmdldEV2ZW50TGlzdGVuZXJzKG5vZGUpOwogICAgIH0sCiAKKyAgICAvKioKKyAgICAgKiBA
cGFyYW0ge251bWJlcn0gbnVtCisgICAgICovCiAgICAgX2luc3BlY3RlZE9iamVjdDogZnVuY3Rp
b24obnVtKQogICAgIHsKICAgICAgICAgcmV0dXJuIEluamVjdGVkU2NyaXB0SG9zdC5pbnNwZWN0
ZWRPYmplY3QobnVtKTsKICAgICB9LAogCisgICAgLyoqCisgICAgICogQHBhcmFtIHshQXJyYXku
PHN0cmluZz58c3RyaW5nPX0gdHlwZXMKKyAgICAgKiBAcmV0dXJuIHshQXJyYXkuPHN0cmluZz59
CisgICAgICovCiAgICAgX25vcm1hbGl6ZUV2ZW50VHlwZXM6IGZ1bmN0aW9uKHR5cGVzKQogICAg
IHsKICAgICAgICAgaWYgKHR5cGVvZiB0eXBlcyA9PT0gInVuZGVmaW5lZCIpCkBAIC03NjgsNiAr
OTcxLDkgQEAgQ29tbWFuZExpbmVBUElJbXBsLnByb3RvdHlwZSA9IHsKICAgICAgICAgcmV0dXJu
IHJlc3VsdDsKICAgICB9LAogCisgICAgLyoqCisgICAgICogQHBhcmFtIHshRXZlbnR9IGV2ZW50
CisgICAgICovCiAgICAgX2xvZ0V2ZW50OiBmdW5jdGlvbihldmVudCkKICAgICB7CiAgICAgICAg
IGNvbnNvbGUubG9nKGV2ZW50LnR5cGUsIGV2ZW50KTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>154373</attachid>
            <date>2012-07-25 09:23:02 -0700</date>
            <delta_ts>2012-07-25 13:19:29 -0700</delta_ts>
            <desc>removed exclimation marks</desc>
            <filename>bug-92255-20120725202251.patch</filename>
            <type>text/plain</type>
            <size>15467</size>
            <attacher name="Andrey Adaikin">aandrey</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTIzNDc3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOWI2NzNlMWRkYzdmOTYy
YWZkNmU3ZmZlZmRiNTIyMDg2MmIzYTYwOS4uNDRjMjNjYzdjNmExOWU4YzIyZmY4Nzk5OWFhYzkz
Yjg3ZjhiNjVjYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEyIEBACisyMDEyLTA3LTI1ICBBbmRy
ZXkgQWRhaWtpbiAgPGFhbmRyZXlAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFdlYiBJbnNwZWN0
b3I6IEFkZCBtb3JlIGpzZG9jcyB0byBJbmplY3RlZFNjcmlwdFNvdXJjZS5qcworICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTIyNTUKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGluc3BlY3Rvci9JbmplY3Rl
ZFNjcmlwdFNvdXJjZS5qczoKKwogMjAxMi0wNy0yNCAgRG9taW5payBSw7Z0dHNjaGVzICA8ZG9t
aW5pay5yb3R0c2NoZXNAaW50ZWwuY29tPgogCiAgICAgICAgIEhhcmZCdXp6RmFjZU5HLmggZm9y
d2FyZCBkZWNsYXJhdGlvbnMgY29uZmxpY3Qgd2l0aCBuZXdlciB2ZXJzaW9ucyBvZiBIYXJmYnV6
egpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luamVjdGVkU2NyaXB0U291
cmNlLmpzIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luamVjdGVkU2NyaXB0U291cmNlLmpz
CmluZGV4IDc5ZTY1NjJhZWMxNjI1NzBlOGNjMjIzNDAyM2YyNjNkYTAxOWJhMTguLjAzMzVjOTg2
ODY0YmY4Njg4NDVmZThhYzRlOWNhOTM3ZDdiYWU0MjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9JbmplY3RlZFNjcmlwdFNvdXJjZS5qcworKysgYi9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvSW5qZWN0ZWRTY3JpcHRTb3VyY2UuanMKQEAgLTI4LDYgKzI4LDggQEAKIAog
LyoqCiAgKiBAcGFyYW0ge0luamVjdGVkU2NyaXB0SG9zdH0gSW5qZWN0ZWRTY3JpcHRIb3N0Cisg
KiBAcGFyYW0ge1dpbmRvd30gaW5zcGVjdGVkV2luZG93CisgKiBAcGFyYW0ge251bWJlcn0gaW5q
ZWN0ZWRTY3JpcHRJZAogICovCiAoZnVuY3Rpb24gKEluamVjdGVkU2NyaXB0SG9zdCwgaW5zcGVj
dGVkV2luZG93LCBpbmplY3RlZFNjcmlwdElkKSB7CiAKQEAgLTQzLDYgKzQ1LDEwIEBAIHZhciBJ
bmplY3RlZFNjcmlwdCA9IGZ1bmN0aW9uKCkKICAgICB0aGlzLl9tb2R1bGVzID0ge307CiB9CiAK
Ky8qKgorICogQHR5cGUge09iamVjdC48c3RyaW5nLCBib29sZWFuPn0KKyAqIEBjb25zdAorICov
CiBJbmplY3RlZFNjcmlwdC5wcmltaXRpdmVUeXBlcyA9IHsKICAgICB1bmRlZmluZWQ6IHRydWUs
CiAgICAgYm9vbGVhbjogdHJ1ZSwKQEAgLTUxLDEyICs1NywyMiBAQCBJbmplY3RlZFNjcmlwdC5w
cmltaXRpdmVUeXBlcyA9IHsKIH0KIAogSW5qZWN0ZWRTY3JpcHQucHJvdG90eXBlID0geworICAg
IC8qKgorICAgICAqIEBwYXJhbSB7Kn0gb2JqZWN0CisgICAgICogQHJldHVybiB7Ym9vbGVhbn0K
KyAgICAgKi8KICAgICBpc1ByaW1pdGl2ZVZhbHVlOiBmdW5jdGlvbihvYmplY3QpCiAgICAgewog
ICAgICAgICAvLyBGSVhNRSgzMzcxNik6IHR5cGVvZiBkb2N1bWVudC5hbGwgaXMgYWx3YXlzICd1
bmRlZmluZWQnLgogICAgICAgICByZXR1cm4gSW5qZWN0ZWRTY3JpcHQucHJpbWl0aXZlVHlwZXNb
dHlwZW9mIG9iamVjdF0gJiYgIXRoaXMuX2lzSFRNTEFsbENvbGxlY3Rpb24ob2JqZWN0KTsKICAg
ICB9LAogCisgICAgLyoqCisgICAgICogQHBhcmFtIHsqfSBvYmplY3QKKyAgICAgKiBAcGFyYW0g
e3N0cmluZ30gZ3JvdXBOYW1lCisgICAgICogQHBhcmFtIHtib29sZWFufSBjYW5BY2Nlc3NJbnNw
ZWN0ZWRXaW5kb3cKKyAgICAgKiBAcmV0dXJuIHtPYmplY3R9CisgICAgICovCiAgICAgd3JhcE9i
amVjdDogZnVuY3Rpb24ob2JqZWN0LCBncm91cE5hbWUsIGNhbkFjY2Vzc0luc3BlY3RlZFdpbmRv
dykKICAgICB7CiAgICAgICAgIGlmIChjYW5BY2Nlc3NJbnNwZWN0ZWRXaW5kb3cpCkBAIC03MSwx
MSArODcsMTggQEAgSW5qZWN0ZWRTY3JpcHQucHJvdG90eXBlID0gewogICAgICAgICByZXR1cm4g
cmVzdWx0OwogICAgIH0sCiAKKyAgICAvKioKKyAgICAgKiBAcGFyYW0geyp9IG9iamVjdAorICAg
ICAqLwogICAgIGluc3BlY3ROb2RlOiBmdW5jdGlvbihvYmplY3QpCiAgICAgewogICAgICAgICB0
aGlzLl9pbnNwZWN0KG9iamVjdCk7CiAgICAgfSwKIAorICAgIC8qKgorICAgICAqIEBwYXJhbSB7
Kn0gb2JqZWN0CisgICAgICogQHJldHVybiB7Kn0KKyAgICAgKi8KICAgICBfaW5zcGVjdDogZnVu
Y3Rpb24ob2JqZWN0KQogICAgIHsKICAgICAgICAgaWYgKGFyZ3VtZW50cy5sZW5ndGggPT09IDAp
CkBAIC0xMDAsNyArMTIzLDEzIEBAIEluamVjdGVkU2NyaXB0LnByb3RvdHlwZSA9IHsKICAgICAg
ICAgcmV0dXJuIG9iamVjdDsKICAgICB9LAogCi0gICAgLy8gVGhpcyBtZXRob2QgY2Fubm90IHRo
cm93LgorICAgIC8qKgorICAgICAqIFRoaXMgbWV0aG9kIGNhbm5vdCB0aHJvdy4KKyAgICAgKiBA
cGFyYW0geyp9IG9iamVjdAorICAgICAqIEBwYXJhbSB7c3RyaW5nPX0gb2JqZWN0R3JvdXBOYW1l
CisgICAgICogQHBhcmFtIHtib29sZWFuPX0gZm9yY2VWYWx1ZVR5cGUKKyAgICAgKiBAcmV0dXJu
IHtJbmplY3RlZFNjcmlwdC5SZW1vdGVPYmplY3R9CisgICAgICovCiAgICAgX3dyYXBPYmplY3Q6
IGZ1bmN0aW9uKG9iamVjdCwgb2JqZWN0R3JvdXBOYW1lLCBmb3JjZVZhbHVlVHlwZSkKICAgICB7
CiAgICAgICAgIHRyeSB7CkBAIC0xMTUsNiArMTQ0LDExIEBAIEluamVjdGVkU2NyaXB0LnByb3Rv
dHlwZSA9IHsKICAgICAgICAgfQogICAgIH0sCiAKKyAgICAvKioKKyAgICAgKiBAcGFyYW0geyp9
IG9iamVjdAorICAgICAqIEBwYXJhbSB7c3RyaW5nPX0gb2JqZWN0R3JvdXBOYW1lCisgICAgICog
QHJldHVybiB7c3RyaW5nfQorICAgICAqLwogICAgIF9iaW5kOiBmdW5jdGlvbihvYmplY3QsIG9i
amVjdEdyb3VwTmFtZSkKICAgICB7CiAgICAgICAgIHZhciBpZCA9IHRoaXMuX2xhc3RCb3VuZE9i
amVjdElkKys7CkBAIC0xMzIsMTEgKzE2NiwxOCBAQCBJbmplY3RlZFNjcmlwdC5wcm90b3R5cGUg
PSB7CiAgICAgICAgIHJldHVybiBvYmplY3RJZDsKICAgICB9LAogCisgICAgLyoqCisgICAgICog
QHBhcmFtIHtzdHJpbmd9IG9iamVjdElkCisgICAgICogQHJldHVybiB7Kn0KKyAgICAgKi8KICAg
ICBfcGFyc2VPYmplY3RJZDogZnVuY3Rpb24ob2JqZWN0SWQpCiAgICAgewogICAgICAgICByZXR1
cm4gZXZhbCgiKCIgKyBvYmplY3RJZCArICIpIik7CiAgICAgfSwKIAorICAgIC8qKgorICAgICAq
IEBwYXJhbSB7c3RyaW5nfSBvYmplY3RHcm91cE5hbWUKKyAgICAgKi8KICAgICByZWxlYXNlT2Jq
ZWN0R3JvdXA6IGZ1bmN0aW9uKG9iamVjdEdyb3VwTmFtZSkKICAgICB7CiAgICAgICAgIHZhciBn
cm91cCA9IHRoaXMuX29iamVjdEdyb3Vwc1tvYmplY3RHcm91cE5hbWVdOwpAQCAtMTQ3LDYgKzE4
OCwxMSBAQCBJbmplY3RlZFNjcmlwdC5wcm90b3R5cGUgPSB7CiAgICAgICAgIGRlbGV0ZSB0aGlz
Ll9vYmplY3RHcm91cHNbb2JqZWN0R3JvdXBOYW1lXTsKICAgICB9LAogCisgICAgLyoqCisgICAg
ICogQHBhcmFtIHtzdHJpbmd9IG1ldGhvZE5hbWUKKyAgICAgKiBAcGFyYW0ge3N0cmluZ30gYXJn
cworICAgICAqIEByZXR1cm4geyp9CisgICAgICovCiAgICAgZGlzcGF0Y2g6IGZ1bmN0aW9uKG1l
dGhvZE5hbWUsIGFyZ3MpCiAgICAgewogICAgICAgICB2YXIgYXJnc0FycmF5ID0gZXZhbCgiKCIg
KyBhcmdzICsgIikiKTsKQEAgLTE1OCw2ICsyMDQsMTEgQEAgSW5qZWN0ZWRTY3JpcHQucHJvdG90
eXBlID0gewogICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgIH0sCiAKKyAgICAvKioKKyAgICAg
KiBAcGFyYW0ge3N0cmluZ30gb2JqZWN0SWQKKyAgICAgKiBAcGFyYW0ge2Jvb2xlYW59IG93blBy
b3BlcnRpZXMKKyAgICAgKiBAcmV0dXJuIHtBcnJheS48T2JqZWN0Pnxib29sZWFufQorICAgICAq
LwogICAgIGdldFByb3BlcnRpZXM6IGZ1bmN0aW9uKG9iamVjdElkLCBvd25Qcm9wZXJ0aWVzKQog
ICAgIHsKICAgICAgICAgdmFyIHBhcnNlZE9iamVjdElkID0gdGhpcy5fcGFyc2VPYmplY3RJZChv
YmplY3RJZCk7CkBAIC0xOTIsNiArMjQzLDEwIEBAIEluamVjdGVkU2NyaXB0LnByb3RvdHlwZSA9
IHsKICAgICAgICAgcmV0dXJuIGRlc2NyaXB0b3JzOwogICAgIH0sCiAKKyAgICAvKioKKyAgICAg
KiBAcGFyYW0ge3N0cmluZ30gZnVuY3Rpb25JZAorICAgICAqIEByZXR1cm4ge09iamVjdHxzdHJp
bmd9CisgICAgICovCiAgICAgZ2V0RnVuY3Rpb25EZXRhaWxzOiBmdW5jdGlvbihmdW5jdGlvbklk
KQogICAgIHsKICAgICAgICAgdmFyIHBhcnNlZEZ1bmN0aW9uSWQgPSB0aGlzLl9wYXJzZU9iamVj
dElkKGZ1bmN0aW9uSWQpOwpAQCAtMjExLDI1ICsyNjYsMzYgQEAgSW5qZWN0ZWRTY3JpcHQucHJv
dG90eXBlID0gewogICAgICAgICByZXR1cm4gZGV0YWlsczsKICAgICB9LAogCisgICAgLyoqCisg
ICAgICogQHBhcmFtIHtzdHJpbmd9IG9iamVjdElkCisgICAgICovCiAgICAgcmVsZWFzZU9iamVj
dDogZnVuY3Rpb24ob2JqZWN0SWQpCiAgICAgewogICAgICAgICB2YXIgcGFyc2VkT2JqZWN0SWQg
PSB0aGlzLl9wYXJzZU9iamVjdElkKG9iamVjdElkKTsKICAgICAgICAgdGhpcy5fcmVsZWFzZU9i
amVjdChwYXJzZWRPYmplY3RJZC5pZCk7CiAgICAgfSwKIAorICAgIC8qKgorICAgICAqIEBwYXJh
bSB7c3RyaW5nfSBpZAorICAgICAqLwogICAgIF9yZWxlYXNlT2JqZWN0OiBmdW5jdGlvbihpZCkK
ICAgICB7CiAgICAgICAgIGRlbGV0ZSB0aGlzLl9pZFRvV3JhcHBlZE9iamVjdFtpZF07CiAgICAg
ICAgIGRlbGV0ZSB0aGlzLl9pZFRvT2JqZWN0R3JvdXBOYW1lW2lkXTsKICAgICB9LAogCisgICAg
LyoqCisgICAgICogQHBhcmFtIHtPYmplY3R9IG9iamVjdAorICAgICAqIEBwYXJhbSB7Ym9vbGVh
bn0gb3duUHJvcGVydGllcworICAgICAqIEByZXR1cm4ge0FycmF5LjxPYmplY3Q+fQorICAgICAq
LwogICAgIF9wcm9wZXJ0eURlc2NyaXB0b3JzOiBmdW5jdGlvbihvYmplY3QsIG93blByb3BlcnRp
ZXMpCiAgICAgewogICAgICAgICB2YXIgZGVzY3JpcHRvcnMgPSBbXTsKICAgICAgICAgdmFyIG5h
bWVQcm9jZXNzZWQgPSB7fTsKICAgICAgICAgbmFtZVByb2Nlc3NlZFsiX19wcm90b19fIl0gPSBu
dWxsOwogICAgICAgICBmb3IgKHZhciBvID0gb2JqZWN0OyB0aGlzLl9pc0RlZmluZWQobyk7IG8g
PSBvLl9fcHJvdG9fXykgewotICAgICAgICAgICAgdmFyIG5hbWVzID0gT2JqZWN0LmdldE93blBy
b3BlcnR5TmFtZXMobyk7CisgICAgICAgICAgICB2YXIgbmFtZXMgPSBPYmplY3QuZ2V0T3duUHJv
cGVydHlOYW1lcygvKiogQHR5cGUgeyFPYmplY3R9ICovIChvKSk7CiAgICAgICAgICAgICBmb3Ig
KHZhciBpID0gMDsgaSA8IG5hbWVzLmxlbmd0aDsgKytpKSB7CiAgICAgICAgICAgICAgICAgdmFy
IG5hbWUgPSBuYW1lc1tpXTsKICAgICAgICAgICAgICAgICBpZiAobmFtZVByb2Nlc3NlZFtuYW1l
XSkKQEAgLTIzNyw3ICszMDMsNyBAQCBJbmplY3RlZFNjcmlwdC5wcm90b3R5cGUgPSB7CiAKICAg
ICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgICAgICBuYW1lUHJvY2Vzc2VkW25h
bWVdID0gdHJ1ZTsKLSAgICAgICAgICAgICAgICAgICAgdmFyIGRlc2NyaXB0b3IgPSBPYmplY3Qu
Z2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKG9iamVjdCwgbmFtZSk7CisgICAgICAgICAgICAgICAg
ICAgIHZhciBkZXNjcmlwdG9yID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcigvKiog
QHR5cGUgeyFPYmplY3R9ICovIChvYmplY3QpLCBuYW1lKTsKICAgICAgICAgICAgICAgICAgICAg
aWYgKCFkZXNjcmlwdG9yKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAvLyBOb3QgYWxsIGJp
bmRpbmdzIHByb3ZpZGUgcHJvcGVyIGRlc2NyaXB0b3JzLiBGYWxsIGJhY2sgdG8gdGhlIHdyaXRh
YmxlLCBjb25maWd1cmFibGUgcHJvcGVydHkuCiAgICAgICAgICAgICAgICAgICAgICAgICB0cnkg
ewpAQCAtMjY1LDExICszMzEsMjQgQEAgSW5qZWN0ZWRTY3JpcHQucHJvdG90eXBlID0gewogICAg
ICAgICByZXR1cm4gZGVzY3JpcHRvcnM7CiAgICAgfSwKIAorICAgIC8qKgorICAgICAqIEBwYXJh
bSB7c3RyaW5nfSBleHByZXNzaW9uCisgICAgICogQHBhcmFtIHtzdHJpbmd9IG9iamVjdEdyb3Vw
CisgICAgICogQHBhcmFtIHtib29sZWFufSBpbmplY3RDb21tYW5kTGluZUFQSQorICAgICAqIEBw
YXJhbSB7Ym9vbGVhbn0gcmV0dXJuQnlWYWx1ZQorICAgICAqIEByZXR1cm4geyp9CisgICAgICov
CiAgICAgZXZhbHVhdGU6IGZ1bmN0aW9uKGV4cHJlc3Npb24sIG9iamVjdEdyb3VwLCBpbmplY3RD
b21tYW5kTGluZUFQSSwgcmV0dXJuQnlWYWx1ZSkKICAgICB7CiAgICAgICAgIHJldHVybiB0aGlz
Ll9ldmFsdWF0ZUFuZFdyYXAoaW5zcGVjdGVkV2luZG93LmV2YWwsIGluc3BlY3RlZFdpbmRvdywg
ZXhwcmVzc2lvbiwgb2JqZWN0R3JvdXAsIGZhbHNlLCBpbmplY3RDb21tYW5kTGluZUFQSSwgcmV0
dXJuQnlWYWx1ZSk7CiAgICAgfSwKIAorICAgIC8qKgorICAgICAqIEBwYXJhbSB7c3RyaW5nfSBv
YmplY3RJZAorICAgICAqIEBwYXJhbSB7c3RyaW5nfSBleHByZXNzaW9uCisgICAgICogQHBhcmFt
IHtib29sZWFufSByZXR1cm5CeVZhbHVlCisgICAgICogQHJldHVybiB7T2JqZWN0fHN0cmluZ30K
KyAgICAgKi8KICAgICBjYWxsRnVuY3Rpb25PbjogZnVuY3Rpb24ob2JqZWN0SWQsIGV4cHJlc3Np
b24sIGFyZ3MsIHJldHVybkJ5VmFsdWUpCiAgICAgewogICAgICAgICB2YXIgcGFyc2VkT2JqZWN0
SWQgPSB0aGlzLl9wYXJzZU9iamVjdElkKG9iamVjdElkKTsKQEAgLTMxMiw2ICszOTEsMTUgQEAg
SW5qZWN0ZWRTY3JpcHQucHJvdG90eXBlID0gewogICAgICAgICB9CiAgICAgfSwKIAorICAgIC8q
KgorICAgICAqIEBwYXJhbSB7RnVuY3Rpb259IGV2YWxGdW5jdGlvbgorICAgICAqIEBwYXJhbSB7
T2JqZWN0fSBvYmplY3QKKyAgICAgKiBAcGFyYW0ge3N0cmluZ30gb2JqZWN0R3JvdXAKKyAgICAg
KiBAcGFyYW0ge2Jvb2xlYW59IGlzRXZhbE9uQ2FsbEZyYW1lCisgICAgICogQHBhcmFtIHtib29s
ZWFufSBpbmplY3RDb21tYW5kTGluZUFQSQorICAgICAqIEBwYXJhbSB7Ym9vbGVhbn0gcmV0dXJu
QnlWYWx1ZQorICAgICAqIEByZXR1cm4geyp9CisgICAgICovCiAgICAgX2V2YWx1YXRlQW5kV3Jh
cDogZnVuY3Rpb24oZXZhbEZ1bmN0aW9uLCBvYmplY3QsIGV4cHJlc3Npb24sIG9iamVjdEdyb3Vw
LCBpc0V2YWxPbkNhbGxGcmFtZSwgaW5qZWN0Q29tbWFuZExpbmVBUEksIHJldHVybkJ5VmFsdWUp
CiAgICAgewogICAgICAgICB0cnkgewpAQCAtMzIyLDYgKzQxMCwxMSBAQCBJbmplY3RlZFNjcmlw
dC5wcm90b3R5cGUgPSB7CiAgICAgICAgIH0KICAgICB9LAogCisgICAgLyoqCisgICAgICogQHBh
cmFtIHsqfSB2YWx1ZQorICAgICAqIEBwYXJhbSB7c3RyaW5nfSBvYmplY3RHcm91cAorICAgICAq
IEByZXR1cm4ge09iamVjdH0KKyAgICAgKi8KICAgICBfY3JlYXRlVGhyb3duVmFsdWU6IGZ1bmN0
aW9uKHZhbHVlLCBvYmplY3RHcm91cCkKICAgICB7CiAgICAgICAgIHZhciByZW1vdGVPYmplY3Qg
PSB0aGlzLl93cmFwT2JqZWN0KHZhbHVlLCBvYmplY3RHcm91cCk7CkBAIC0zMzIsNiArNDI1LDE0
IEBAIEluamVjdGVkU2NyaXB0LnByb3RvdHlwZSA9IHsKICAgICAgICAgICAgICAgICAgcmVzdWx0
OiByZW1vdGVPYmplY3QgfTsKICAgICB9LAogCisgICAgLyoqCisgICAgICogQHBhcmFtIHtGdW5j
dGlvbn0gZXZhbEZ1bmN0aW9uCisgICAgICogQHBhcmFtIHtPYmplY3R9IG9iamVjdAorICAgICAq
IEBwYXJhbSB7c3RyaW5nfSBleHByZXNzaW9uCisgICAgICogQHBhcmFtIHtib29sZWFufSBpc0V2
YWxPbkNhbGxGcmFtZQorICAgICAqIEBwYXJhbSB7Ym9vbGVhbn0gaW5qZWN0Q29tbWFuZExpbmVB
UEkKKyAgICAgKiBAcmV0dXJuIHsqfQorICAgICAqLwogICAgIF9ldmFsdWF0ZU9uOiBmdW5jdGlv
bihldmFsRnVuY3Rpb24sIG9iamVjdCwgZXhwcmVzc2lvbiwgaXNFdmFsT25DYWxsRnJhbWUsIGlu
amVjdENvbW1hbmRMaW5lQVBJKQogICAgIHsKICAgICAgICAgLy8gT25seSBpbnN0YWxsIGNvbW1h
bmQgbGluZSBhcGkgb2JqZWN0IGZvciB0aGUgdGltZSBvZiBldmFsdWF0aW9uLgpAQCAtMzUwLDYg
KzQ1MSwxMCBAQCBJbmplY3RlZFNjcmlwdC5wcm90b3R5cGUgPSB7CiAgICAgICAgIH0KICAgICB9
LAogCisgICAgLyoqCisgICAgICogQHBhcmFtIHtPYmplY3R9IGNhbGxGcmFtZQorICAgICAqIEBy
ZXR1cm4ge0FycmF5LjxJbmplY3RlZFNjcmlwdC5DYWxsRnJhbWVQcm94eT58Ym9vbGVhbn0KKyAg
ICAgKi8KICAgICB3cmFwQ2FsbEZyYW1lczogZnVuY3Rpb24oY2FsbEZyYW1lKQogICAgIHsKICAg
ICAgICAgaWYgKCFjYWxsRnJhbWUpCkBAIC0zNjQsNiArNDY5LDE1IEBAIEluamVjdGVkU2NyaXB0
LnByb3RvdHlwZSA9IHsKICAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICB9LAogCisgICAgLyoq
CisgICAgICogQHBhcmFtIHtPYmplY3R9IHRvcENhbGxGcmFtZQorICAgICAqIEBwYXJhbSB7c3Ry
aW5nfSBjYWxsRnJhbWVJZAorICAgICAqIEBwYXJhbSB7c3RyaW5nfSBleHByZXNzaW9uCisgICAg
ICogQHBhcmFtIHtzdHJpbmd9IG9iamVjdEdyb3VwCisgICAgICogQHBhcmFtIHtib29sZWFufSBp
bmplY3RDb21tYW5kTGluZUFQSQorICAgICAqIEBwYXJhbSB7Ym9vbGVhbn0gcmV0dXJuQnlWYWx1
ZQorICAgICAqIEByZXR1cm4geyp9CisgICAgICovCiAgICAgZXZhbHVhdGVPbkNhbGxGcmFtZTog
ZnVuY3Rpb24odG9wQ2FsbEZyYW1lLCBjYWxsRnJhbWVJZCwgZXhwcmVzc2lvbiwgb2JqZWN0R3Jv
dXAsIGluamVjdENvbW1hbmRMaW5lQVBJLCByZXR1cm5CeVZhbHVlKQogICAgIHsKICAgICAgICAg
dmFyIGNhbGxGcmFtZSA9IHRoaXMuX2NhbGxGcmFtZUZvcklkKHRvcENhbGxGcmFtZSwgY2FsbEZy
YW1lSWQpOwpAQCAtMzcyLDYgKzQ4NiwxMSBAQCBJbmplY3RlZFNjcmlwdC5wcm90b3R5cGUgPSB7
CiAgICAgICAgIHJldHVybiB0aGlzLl9ldmFsdWF0ZUFuZFdyYXAoY2FsbEZyYW1lLmV2YWx1YXRl
LCBjYWxsRnJhbWUsIGV4cHJlc3Npb24sIG9iamVjdEdyb3VwLCB0cnVlLCBpbmplY3RDb21tYW5k
TGluZUFQSSwgcmV0dXJuQnlWYWx1ZSk7CiAgICAgfSwKIAorICAgIC8qKgorICAgICAqIEBwYXJh
bSB7T2JqZWN0fSB0b3BDYWxsRnJhbWUKKyAgICAgKiBAcGFyYW0ge3N0cmluZ30gY2FsbEZyYW1l
SWQKKyAgICAgKiBAcmV0dXJuIHsqfQorICAgICAqLwogICAgIHJlc3RhcnRGcmFtZTogZnVuY3Rp
b24odG9wQ2FsbEZyYW1lLCBjYWxsRnJhbWVJZCkKICAgICB7CiAgICAgICAgIHZhciBjYWxsRnJh
bWUgPSB0aGlzLl9jYWxsRnJhbWVGb3JJZCh0b3BDYWxsRnJhbWUsIGNhbGxGcmFtZUlkKTsKQEAg
LTM4Myw2ICs1MDIsMTEgQEAgSW5qZWN0ZWRTY3JpcHQucHJvdG90eXBlID0gewogICAgICAgICBy
ZXR1cm4gcmVzdWx0OwogICAgIH0sCiAKKyAgICAvKioKKyAgICAgKiBAcGFyYW0ge09iamVjdH0g
dG9wQ2FsbEZyYW1lCisgICAgICogQHBhcmFtIHtzdHJpbmd9IGNhbGxGcmFtZUlkCisgICAgICog
QHJldHVybiB7T2JqZWN0fQorICAgICAqLwogICAgIF9jYWxsRnJhbWVGb3JJZDogZnVuY3Rpb24o
dG9wQ2FsbEZyYW1lLCBjYWxsRnJhbWVJZCkKICAgICB7CiAgICAgICAgIHZhciBwYXJzZWRDYWxs
RnJhbWVJZCA9IGV2YWwoIigiICsgY2FsbEZyYW1lSWQgKyAiKSIpOwpAQCAtMzkzLDE3ICs1MTcs
MjkgQEAgSW5qZWN0ZWRTY3JpcHQucHJvdG90eXBlID0gewogICAgICAgICByZXR1cm4gY2FsbEZy
YW1lOwogICAgIH0sCiAKKyAgICAvKioKKyAgICAgKiBAcGFyYW0ge09iamVjdH0gb2JqZWN0SWQK
KyAgICAgKiBAcmV0dXJuIHtPYmplY3R9CisgICAgICovCiAgICAgX29iamVjdEZvcklkOiBmdW5j
dGlvbihvYmplY3RJZCkKICAgICB7CiAgICAgICAgIHJldHVybiB0aGlzLl9pZFRvV3JhcHBlZE9i
amVjdFtvYmplY3RJZC5pZF07CiAgICAgfSwKIAorICAgIC8qKgorICAgICAqIEBwYXJhbSB7c3Ry
aW5nfSBvYmplY3RJZAorICAgICAqIEByZXR1cm4ge09iamVjdH0KKyAgICAgKi8KICAgICBmaW5k
T2JqZWN0QnlJZDogZnVuY3Rpb24ob2JqZWN0SWQpCiAgICAgewogICAgICAgICB2YXIgcGFyc2Vk
T2JqZWN0SWQgPSB0aGlzLl9wYXJzZU9iamVjdElkKG9iamVjdElkKTsKICAgICAgICAgcmV0dXJu
IHRoaXMuX29iamVjdEZvcklkKHBhcnNlZE9iamVjdElkKTsKICAgICB9LAogCisgICAgLyoqCisg
ICAgICogQHBhcmFtIHtzdHJpbmd9IG9iamVjdElkCisgICAgICogQHJldHVybiB7Tm9kZX0KKyAg
ICAgKi8KICAgICBub2RlRm9yT2JqZWN0SWQ6IGZ1bmN0aW9uKG9iamVjdElkKQogICAgIHsKICAg
ICAgICAgdmFyIG9iamVjdCA9IHRoaXMuZmluZE9iamVjdEJ5SWQob2JqZWN0SWQpOwpAQCAtNDI1
LDE3ICs1NjEsMjkgQEAgSW5qZWN0ZWRTY3JpcHQucHJvdG90eXBlID0gewogICAgICAgICByZXR1
cm4gbW9kdWxlOwogICAgIH0sCiAKKyAgICAvKioKKyAgICAgKiBAcGFyYW0geyp9IG9iamVjdAor
ICAgICAqIEByZXR1cm4ge2Jvb2xlYW59CisgICAgICovCiAgICAgX2lzRGVmaW5lZDogZnVuY3Rp
b24ob2JqZWN0KQogICAgIHsKICAgICAgICAgcmV0dXJuIG9iamVjdCB8fCB0aGlzLl9pc0hUTUxB
bGxDb2xsZWN0aW9uKG9iamVjdCk7CiAgICAgfSwKIAorICAgIC8qKgorICAgICAqIEBwYXJhbSB7
Kn0gb2JqZWN0CisgICAgICogQHJldHVybiB7Ym9vbGVhbn0KKyAgICAgKi8KICAgICBfaXNIVE1M
QWxsQ29sbGVjdGlvbjogZnVuY3Rpb24ob2JqZWN0KQogICAgIHsKICAgICAgICAgLy8gZG9jdW1l
bnQuYWxsIGlzIHJlcG9ydGVkIGFzIHVuZGVmaW5lZCwgYnV0IHdlIHN0aWxsIHdhbnQgdG8gcHJv
Y2VzcyBpdC4KICAgICAgICAgcmV0dXJuICh0eXBlb2Ygb2JqZWN0ID09PSAidW5kZWZpbmVkIikg
JiYgSW5qZWN0ZWRTY3JpcHRIb3N0LmlzSFRNTEFsbENvbGxlY3Rpb24ob2JqZWN0KTsKICAgICB9
LAogCisgICAgLyoqCisgICAgICogQHBhcmFtIHtPYmplY3Q9fSBvYmoKKyAgICAgKiBAcmV0dXJu
IHtzdHJpbmc/fQorICAgICAqLwogICAgIF9zdWJ0eXBlOiBmdW5jdGlvbihvYmopCiAgICAgewog
ICAgICAgICBpZiAob2JqID09PSBudWxsKQpAQCAtNDY1LDYgKzYxMywxMCBAQCBJbmplY3RlZFNj
cmlwdC5wcm90b3R5cGUgPSB7CiAgICAgICAgIHJldHVybiBudWxsOwogICAgIH0sCiAKKyAgICAv
KioKKyAgICAgKiBAcGFyYW0geyp9IG9iagorICAgICAqIEByZXR1cm4ge3N0cmluZz99CisgICAg
ICovCiAgICAgX2Rlc2NyaWJlOiBmdW5jdGlvbihvYmopCiAgICAgewogICAgICAgICBpZiAodGhp
cy5pc1ByaW1pdGl2ZVZhbHVlKG9iaikpCkBAIC01MDAsNiArNjUyLDEwIEBAIEluamVjdGVkU2Ny
aXB0LnByb3RvdHlwZSA9IHsKICAgICAgICAgcmV0dXJuIGNsYXNzTmFtZTsKICAgICB9LAogCisg
ICAgLyoqCisgICAgICogQHBhcmFtIHsqfSBvYmoKKyAgICAgKiBAcmV0dXJuIHtzdHJpbmd9Cisg
ICAgICovCiAgICAgX3RvU3RyaW5nOiBmdW5jdGlvbihvYmopCiAgICAgewogICAgICAgICAvLyBX
ZSBkb24ndCB1c2UgU3RyaW5nKG9iaikgYmVjYXVzZSBpbnNwZWN0ZWRXaW5kb3cuU3RyaW5nIGlz
IHVuZGVmaW5lZCBpZiBvd25pbmcgZnJhbWUgbmF2aWdhdGVkIHRvIGFub3RoZXIgcGFnZS4KQEAg
LTUwNyw2ICs2NjMsMTAgQEAgSW5qZWN0ZWRTY3JpcHQucHJvdG90eXBlID0gewogICAgIH0KIH0K
IAorLyoqCisgKiBAdHlwZSB7SW5qZWN0ZWRTY3JpcHR9CisgKiBAY29uc3QKKyAqLwogdmFyIGlu
amVjdGVkU2NyaXB0ID0gbmV3IEluamVjdGVkU2NyaXB0KCk7CiAKIC8qKgpAQCAtNTQ0LDYgKzcw
NCw3IEBAIEluamVjdGVkU2NyaXB0LlJlbW90ZU9iamVjdCA9IGZ1bmN0aW9uKG9iamVjdCwgb2Jq
ZWN0R3JvdXBOYW1lLCBmb3JjZVZhbHVlVHlwZSkKIC8qKgogICogQGNvbnN0cnVjdG9yCiAgKiBA
cGFyYW0ge251bWJlcn0gb3JkaW5hbAorICogQHBhcmFtIHtPYmplY3R9IGNhbGxGcmFtZQogICov
CiBJbmplY3RlZFNjcmlwdC5DYWxsRnJhbWVQcm94eSA9IGZ1bmN0aW9uKG9yZGluYWwsIGNhbGxG
cmFtZSkKIHsKQEAgLTU1NSw2ICs3MTYsMTAgQEAgSW5qZWN0ZWRTY3JpcHQuQ2FsbEZyYW1lUHJv
eHkgPSBmdW5jdGlvbihvcmRpbmFsLCBjYWxsRnJhbWUpCiB9CiAKIEluamVjdGVkU2NyaXB0LkNh
bGxGcmFtZVByb3h5LnByb3RvdHlwZSA9IHsKKyAgICAvKioKKyAgICAgKiBAcGFyYW0ge09iamVj
dH0gY2FsbEZyYW1lCisgICAgICogQHJldHVybiB7QXJyYXkuPE9iamVjdD59CisgICAgICovCiAg
ICAgX3dyYXBTY29wZUNoYWluOiBmdW5jdGlvbihjYWxsRnJhbWUpCiAgICAgewogICAgICAgICB2
YXIgc2NvcGVDaGFpbiA9IGNhbGxGcmFtZS5zY29wZUNoYWluOwpAQCAtNTY3LDYgKzczMiwxMiBA
QCBJbmplY3RlZFNjcmlwdC5DYWxsRnJhbWVQcm94eS5wcm90b3R5cGUgPSB7CiAgICAgfQogfQog
CisvKioKKyAqIEBwYXJhbSB7bnVtYmVyfSBzY29wZVR5cGVDb2RlCisgKiBAcGFyYW0geyp9IHNj
b3BlT2JqZWN0CisgKiBAcGFyYW0ge3N0cmluZ30gZ3JvdXBJZAorICogQHJldHVybiB7T2JqZWN0
fQorICovCiBJbmplY3RlZFNjcmlwdC5DYWxsRnJhbWVQcm94eS5fY3JlYXRlU2NvcGVKc29uID0g
ZnVuY3Rpb24oc2NvcGVUeXBlQ29kZSwgc2NvcGVPYmplY3QsIGdyb3VwSWQpIHsKICAgICBjb25z
dCBHTE9CQUxfU0NPUEUgPSAwOwogICAgIGNvbnN0IExPQ0FMX1NDT1BFID0gMTsKQEAgLTU4OSw5
ICs3NjAsMTUgQEAgSW5qZWN0ZWRTY3JpcHQuQ2FsbEZyYW1lUHJveHkuX2NyZWF0ZVNjb3BlSnNv
biA9IGZ1bmN0aW9uKHNjb3BlVHlwZUNvZGUsIHNjb3BlT2IKIAogLyoqCiAgKiBAY29uc3RydWN0
b3IKKyAqIEBwYXJhbSB7Q29tbWFuZExpbmVBUElJbXBsfSBjb21tYW5kTGluZUFQSUltcGwKKyAq
IEBwYXJhbSB7T2JqZWN0fSBjYWxsRnJhbWUKICAqLwogZnVuY3Rpb24gQ29tbWFuZExpbmVBUEko
Y29tbWFuZExpbmVBUElJbXBsLCBjYWxsRnJhbWUpCiB7CisgICAgLyoqCisgICAgICogQHBhcmFt
IHtzdHJpbmd9IG1lbWJlcgorICAgICAqIEByZXR1cm4ge2Jvb2xlYW59CisgICAgICovCiAgICAg
ZnVuY3Rpb24gaW5TY29wZVZhcmlhYmxlcyhtZW1iZXIpCiAgICAgewogICAgICAgICBpZiAoIWNh
bGxGcmFtZSkKQEAgLTYyMiw2ICs3OTksMTAgQEAgZnVuY3Rpb24gQ29tbWFuZExpbmVBUEkoY29t
bWFuZExpbmVBUElJbXBsLCBjYWxsRnJhbWUpCiAgICAgfQogfQogCisvKioKKyAqIEB0eXBlIHtB
cnJheS48c3RyaW5nPn0KKyAqIEBjb25zdAorICovCiBDb21tYW5kTGluZUFQSS5tZW1iZXJzXyA9
IFsKICAgICAiJCIsICIkJCIsICIkeCIsICJkaXIiLCAiZGlyeG1sIiwgImtleXMiLCAidmFsdWVz
IiwgInByb2ZpbGUiLCAicHJvZmlsZUVuZCIsCiAgICAgIm1vbml0b3JFdmVudHMiLCAidW5tb25p
dG9yRXZlbnRzIiwgImluc3BlY3QiLCAiY29weSIsICJjbGVhciIsICJnZXRFdmVudExpc3RlbmVy
cyIKQEAgLTY5OCw2ICs4NzksMTAgQEAgQ29tbWFuZExpbmVBUElJbXBsLnByb3RvdHlwZSA9IHsK
ICAgICAgICAgcmV0dXJuIGNvbnNvbGUucHJvZmlsZUVuZC5hcHBseShjb25zb2xlLCBhcmd1bWVu
dHMpCiAgICAgfSwKIAorICAgIC8qKgorICAgICAqIEBwYXJhbSB7T2JqZWN0fSBvYmplY3QKKyAg
ICAgKiBAcGFyYW0ge0FycmF5LjxzdHJpbmc+fHN0cmluZz19IHR5cGVzCisgICAgICovCiAgICAg
bW9uaXRvckV2ZW50czogZnVuY3Rpb24ob2JqZWN0LCB0eXBlcykKICAgICB7CiAgICAgICAgIGlm
ICghb2JqZWN0IHx8ICFvYmplY3QuYWRkRXZlbnRMaXN0ZW5lciB8fCAhb2JqZWN0LnJlbW92ZUV2
ZW50TGlzdGVuZXIpCkBAIC03MDksNiArODk0LDEwIEBAIENvbW1hbmRMaW5lQVBJSW1wbC5wcm90
b3R5cGUgPSB7CiAgICAgICAgIH0KICAgICB9LAogCisgICAgLyoqCisgICAgICogQHBhcmFtIHtP
YmplY3R9IG9iamVjdAorICAgICAqIEBwYXJhbSB7QXJyYXkuPHN0cmluZz58c3RyaW5nPX0gdHlw
ZXMKKyAgICAgKi8KICAgICB1bm1vbml0b3JFdmVudHM6IGZ1bmN0aW9uKG9iamVjdCwgdHlwZXMp
CiAgICAgewogICAgICAgICBpZiAoIW9iamVjdCB8fCAhb2JqZWN0LmFkZEV2ZW50TGlzdGVuZXIg
fHwgIW9iamVjdC5yZW1vdmVFdmVudExpc3RlbmVyKQpAQCAtNzE4LDYgKzkwNywxMCBAQCBDb21t
YW5kTGluZUFQSUltcGwucHJvdG90eXBlID0gewogICAgICAgICAgICAgb2JqZWN0LnJlbW92ZUV2
ZW50TGlzdGVuZXIodHlwZXNbaV0sIHRoaXMuX2xvZ0V2ZW50LCBmYWxzZSk7CiAgICAgfSwKIAor
ICAgIC8qKgorICAgICAqIEBwYXJhbSB7Kn0gb2JqZWN0CisgICAgICogQHJldHVybiB7Kn0KKyAg
ICAgKi8KICAgICBpbnNwZWN0OiBmdW5jdGlvbihvYmplY3QpCiAgICAgewogICAgICAgICByZXR1
cm4gaW5qZWN0ZWRTY3JpcHQuX2luc3BlY3Qob2JqZWN0KTsKQEAgLTczNSwxNiArOTI4LDI2IEBA
IENvbW1hbmRMaW5lQVBJSW1wbC5wcm90b3R5cGUgPSB7CiAgICAgICAgIEluamVjdGVkU2NyaXB0
SG9zdC5jbGVhckNvbnNvbGVNZXNzYWdlcygpOwogICAgIH0sCiAKKyAgICAvKioKKyAgICAgKiBA
cGFyYW0ge05vZGV9IG5vZGUKKyAgICAgKi8KICAgICBnZXRFdmVudExpc3RlbmVyczogZnVuY3Rp
b24obm9kZSkKICAgICB7CiAgICAgICAgIHJldHVybiBJbmplY3RlZFNjcmlwdEhvc3QuZ2V0RXZl
bnRMaXN0ZW5lcnMobm9kZSk7CiAgICAgfSwKIAorICAgIC8qKgorICAgICAqIEBwYXJhbSB7bnVt
YmVyfSBudW0KKyAgICAgKi8KICAgICBfaW5zcGVjdGVkT2JqZWN0OiBmdW5jdGlvbihudW0pCiAg
ICAgewogICAgICAgICByZXR1cm4gSW5qZWN0ZWRTY3JpcHRIb3N0Lmluc3BlY3RlZE9iamVjdChu
dW0pOwogICAgIH0sCiAKKyAgICAvKioKKyAgICAgKiBAcGFyYW0ge0FycmF5LjxzdHJpbmc+fHN0
cmluZz19IHR5cGVzCisgICAgICogQHJldHVybiB7QXJyYXkuPHN0cmluZz59CisgICAgICovCiAg
ICAgX25vcm1hbGl6ZUV2ZW50VHlwZXM6IGZ1bmN0aW9uKHR5cGVzKQogICAgIHsKICAgICAgICAg
aWYgKHR5cGVvZiB0eXBlcyA9PT0gInVuZGVmaW5lZCIpCkBAIC03NjgsNiArOTcxLDkgQEAgQ29t
bWFuZExpbmVBUElJbXBsLnByb3RvdHlwZSA9IHsKICAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAg
ICB9LAogCisgICAgLyoqCisgICAgICogQHBhcmFtIHtFdmVudH0gZXZlbnQKKyAgICAgKi8KICAg
ICBfbG9nRXZlbnQ6IGZ1bmN0aW9uKGV2ZW50KQogICAgIHsKICAgICAgICAgY29uc29sZS5sb2co
ZXZlbnQudHlwZSwgZXZlbnQpOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>