<?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>112113</bug_id>
          
          <creation_ts>2013-03-12 01:08:06 -0700</creation_ts>
          <short_desc>Web Inspector: [REGRESSION] StepInto (F11) and StepOut (Shift-F11) shortcuts toggle Inspector window full-screen state</short_desc>
          <delta_ts>2013-03-12 08:21: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>P1</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Alexander Pavlov (apavlov)">apavlov</reporter>
          <assigned_to name="Eugene Klyuchnikov">eustas</assigned_to>
          <cc>apavlov</cc>
    
    <cc>keishi</cc>
    
    <cc>loislo</cc>
    
    <cc>pfeldman</cc>
    
    <cc>pmuellr</cc>
    
    <cc>vsevik</cc>
    
    <cc>web-inspector-bugs</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>yurys</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>853170</commentid>
    <comment_count>0</comment_count>
    <who name="Alexander Pavlov (apavlov)">apavlov</who>
    <bug_when>2013-03-12 01:08:06 -0700</bug_when>
    <thetext>Caused by http://trac.webkit.org/changeset/145045 (some shortcut handlers still do not return boolean values).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>853224</commentid>
    <comment_count>1</comment_count>
      <attachid>192678</attachid>
    <who name="Eugene Klyuchnikov">eustas</who>
    <bug_when>2013-03-12 02:25:25 -0700</bug_when>
    <thetext>Created attachment 192678
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>853234</commentid>
    <comment_count>2</comment_count>
      <attachid>192678</attachid>
    <who name="Alexander Pavlov (apavlov)">apavlov</who>
    <bug_when>2013-03-12 02:37:30 -0700</bug_when>
    <thetext>Comment on attachment 192678
Patch

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

&gt; Source/WebCore/inspector/front-end/CallStackSidebarPane.js:134
&gt; +     * @param {function(!Array.&lt;!WebInspector.KeyboardShortcut.Descriptor&gt;, function(?Event=):boolean)} registerShortcutDelegate

Do we really use both null and undefined here? Sounds bad. There&apos;s a bunch of similar annotations. Can it be fixed?

&gt; Source/WebCore/inspector/front-end/Panel.js:264
&gt; +        console.trace();

Remove this

&gt; Source/WebCore/inspector/front-end/ScriptsPanel.js:722
&gt; +            return false;

vsevik and I have discussed this. Do we really want to toggle fullscreen when NOT on a breakpoint?

&gt; Source/WebCore/inspector/front-end/ScriptsPanel.js:740
&gt; +            return false;

Ditto.

&gt; Source/WebCore/inspector/front-end/TimelinePanel.js:369
&gt; +        contextMenu.appendItem(WebInspector.UIString(&quot;Load Timeline data\u2026&quot;), this._selectFileToLoad.bind(this), this._operationInProgress);

This change is in fact not necessary but ok for the consistency.

&gt; Source/WebCore/inspector/front-end/TimelinePanel.js:579
&gt; +     * @param {?Event|WebInspector.Event=} event

Looks nasty. Please remove the &quot;event&quot; argument altogether.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>853399</commentid>
    <comment_count>3</comment_count>
      <attachid>192678</attachid>
    <who name="Eugene Klyuchnikov">eustas</who>
    <bug_when>2013-03-12 06:11:25 -0700</bug_when>
    <thetext>Comment on attachment 192678
Patch

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

&gt;&gt; Source/WebCore/inspector/front-end/CallStackSidebarPane.js:134
&gt;&gt; +     * @param {function(!Array.&lt;!WebInspector.KeyboardShortcut.Descriptor&gt;, function(?Event=):boolean)} registerShortcutDelegate
&gt; 
&gt; Do we really use both null and undefined here? Sounds bad. There&apos;s a bunch of similar annotations. Can it be fixed?

Done. Removed &quot;?&quot;.

&gt;&gt; Source/WebCore/inspector/front-end/Panel.js:264
&gt;&gt; +        console.trace();
&gt; 
&gt; Remove this

oops. Fixed.

&gt;&gt; Source/WebCore/inspector/front-end/ScriptsPanel.js:722
&gt;&gt; +            return false;
&gt; 
&gt; vsevik and I have discussed this. Do we really want to toggle fullscreen when NOT on a breakpoint?

Fixed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>853400</commentid>
    <comment_count>4</comment_count>
      <attachid>192721</attachid>
    <who name="Eugene Klyuchnikov">eustas</who>
    <bug_when>2013-03-12 06:12:23 -0700</bug_when>
    <thetext>Created attachment 192721
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>853429</commentid>
    <comment_count>5</comment_count>
      <attachid>192721</attachid>
    <who name="Alexander Pavlov (apavlov)">apavlov</who>
    <bug_when>2013-03-12 07:13:19 -0700</bug_when>
    <thetext>Comment on attachment 192721
Patch

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

Good, only a few JSDoc nits.

&gt; Source/WebCore/inspector/front-end/CallStackSidebarPane.js:73
&gt; +     */

@return {boolean}

&gt; Source/WebCore/inspector/front-end/CallStackSidebarPane.js:85
&gt; +     */

Ditto.

&gt; Source/WebCore/inspector/front-end/ScriptsPanel.js:772
&gt; +     * @param {Event=} event

Is it here only for the frontend compilability?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>853462</commentid>
    <comment_count>6</comment_count>
      <attachid>192721</attachid>
    <who name="Eugene Klyuchnikov">eustas</who>
    <bug_when>2013-03-12 07:57:03 -0700</bug_when>
    <thetext>Comment on attachment 192721
Patch

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

&gt;&gt; Source/WebCore/inspector/front-end/CallStackSidebarPane.js:73
&gt;&gt; +     */
&gt; 
&gt; @return {boolean}

Fixed.

&gt;&gt; Source/WebCore/inspector/front-end/CallStackSidebarPane.js:85
&gt;&gt; +     */
&gt; 
&gt; Ditto.

Fixed.

&gt;&gt; Source/WebCore/inspector/front-end/ScriptsPanel.js:772
&gt;&gt; +     * @param {Event=} event
&gt; 
&gt; Is it here only for the frontend compilability?

Well, if we remove parameter description, it won&apos;t hurt compilability =)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>853463</commentid>
    <comment_count>7</comment_count>
      <attachid>192736</attachid>
    <who name="Eugene Klyuchnikov">eustas</who>
    <bug_when>2013-03-12 07:59:26 -0700</bug_when>
    <thetext>Created attachment 192736
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>853486</commentid>
    <comment_count>8</comment_count>
      <attachid>192736</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-03-12 08:21:48 -0700</bug_when>
    <thetext>Comment on attachment 192736
Patch

Clearing flags on attachment: 192736

Committed r145548: &lt;http://trac.webkit.org/changeset/145548&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>853487</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-03-12 08:21:52 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>192678</attachid>
            <date>2013-03-12 02:25:25 -0700</date>
            <delta_ts>2013-03-12 06:12:19 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-112113-20130312132123.patch</filename>
            <type>text/plain</type>
            <size>11519</size>
            <attacher name="Eugene Klyuchnikov">eustas</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ1NDg3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggODBmZTQ3ZDQ3YTQ5MTVk
YmUyNWNlNDkzMjFjOGJlOTU4MGYxZTU1Yy4uNjM4YjM1ODFmMmQ5M2ZlZjdjNmVhMTg5ODI2YmQ1
OGQzN2IxZTA0YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDEzLTAzLTEyICBFdWdl
bmUgS2x5dWNobmlrb3YgIDxldXN0YXNAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFdlYiBJbnNw
ZWN0b3I6IFtSRUdSRVNTSU9OXSBTdGVwSW50byAoRjExKSBhbmQgU3RlcE91dCAoU2hpZnQtRjEx
KSBzaG9ydGN1dHMgdG9nZ2xlIEluc3BlY3RvciB3aW5kb3cgZnVsbC1zY3JlZW4gc3RhdGUKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTExMjExMworCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVwZGF0ZWQgaGFu
ZGxlcnMgbWlzc2VkIGluIGZpcnN0IHBhdGNoLiBBZGRlZCBKU0RvY3MgdG8gYWxsIGhhbmRsZXJz
LgorCisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9QYW5lbC5qczogRml4ZWQgSlNEb2Nz
LgorICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvQ2FsbFN0YWNrU2lkZWJhclBhbmUuanM6
CisgICAgICAgIEFkZGVkIHJldHVybiB2YWx1ZXMuIEFkZGVkIEpTRG9jcy4KKyAgICAgICAgKiBp
bnNwZWN0b3IvZnJvbnQtZW5kL1NjcmlwdHNQYW5lbC5qczogRGl0dG8uCisgICAgICAgICogaW5z
cGVjdG9yL2Zyb250LWVuZC9Hb1RvTGluZURpYWxvZy5qczogQWRkZWQgSlNEb2NzLgorICAgICAg
ICAqIGluc3BlY3Rvci9mcm9udC1lbmQvVGltZWxpbmVQYW5lbC5qczogRGl0dG8uCisKIDIwMTMt
MDMtMTEgIFNpbW9uIEZyYXNlciAgPHNpbW9uLmZyYXNlckBhcHBsZS5jb20+CiAKICAgICAgICAg
V2UnbGwgZ2V0IHRoZXJlIGV2ZW50dWFsbHkuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9p
bnNwZWN0b3IvZnJvbnQtZW5kL0NhbGxTdGFja1NpZGViYXJQYW5lLmpzIGIvU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL2Zyb250LWVuZC9DYWxsU3RhY2tTaWRlYmFyUGFuZS5qcwppbmRleCA1MjA5
N2RkNzRlMWYxNTI3NDgxNzAzZTBlODE5MDM5ZGNlZjJjYTZlLi41M2YwNjEzYTdiYTQxZGYzZmVh
ZWQwNzEwMTNhZDgxZTczYWQ5MTY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0
b3IvZnJvbnQtZW5kL0NhbGxTdGFja1NpZGViYXJQYW5lLmpzCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2luc3BlY3Rvci9mcm9udC1lbmQvQ2FsbFN0YWNrU2lkZWJhclBhbmUuanMKQEAgLTY4LDI5ICs2
OCw0MyBAQCBXZWJJbnNwZWN0b3IuQ2FsbFN0YWNrU2lkZWJhclBhbmUucHJvdG90eXBlID0gewog
ICAgICAgICB9CiAgICAgfSwKIAotICAgIF9zZWxlY3ROZXh0Q2FsbEZyYW1lT25TdGFjazogZnVu
Y3Rpb24oKQorICAgIC8qKgorICAgICAqIEBwYXJhbSB7P0V2ZW50PX0gZXZlbnQKKyAgICAgKi8K
KyAgICBfc2VsZWN0TmV4dENhbGxGcmFtZU9uU3RhY2s6IGZ1bmN0aW9uKGV2ZW50KQogICAgIHsK
ICAgICAgICAgdmFyIGluZGV4ID0gdGhpcy5fc2VsZWN0ZWRDYWxsRnJhbWVJbmRleCgpOwogICAg
ICAgICBpZiAoaW5kZXggPT0gLTEpCi0gICAgICAgICAgICByZXR1cm47Ci0gICAgICAgIHRoaXMu
X3NlbGVjdGVkUGxhY2FyZEJ5SW5kZXgoaW5kZXggKyAxKTsKKyAgICAgICAgICAgIHJldHVybiBm
YWxzZTsKKyAgICAgICAgcmV0dXJuIHRoaXMuX3NlbGVjdGVkUGxhY2FyZEJ5SW5kZXgoaW5kZXgg
KyAxKTsKICAgICB9LAogCi0gICAgX3NlbGVjdFByZXZpb3VzQ2FsbEZyYW1lT25TdGFjazogZnVu
Y3Rpb24oKQorICAgIC8qKgorICAgICAqIEBwYXJhbSB7P0V2ZW50PX0gZXZlbnQKKyAgICAgKi8K
KyAgICBfc2VsZWN0UHJldmlvdXNDYWxsRnJhbWVPblN0YWNrOiBmdW5jdGlvbihldmVudCkKICAg
ICB7CiAgICAgICAgIHZhciBpbmRleCA9IHRoaXMuX3NlbGVjdGVkQ2FsbEZyYW1lSW5kZXgoKTsK
ICAgICAgICAgaWYgKGluZGV4ID09IC0xKQotICAgICAgICAgICAgcmV0dXJuOwotICAgICAgICB0
aGlzLl9zZWxlY3RlZFBsYWNhcmRCeUluZGV4KGluZGV4IC0gMSk7CisgICAgICAgICAgICByZXR1
cm4gZmFsc2U7CisgICAgICAgIHJldHVybiB0aGlzLl9zZWxlY3RlZFBsYWNhcmRCeUluZGV4KGlu
ZGV4IC0gMSk7CiAgICAgfSwKIAorICAgIC8qKgorICAgICAqIEBwYXJhbSB7bnVtYmVyfSBpbmRl
eAorICAgICAqIEByZXR1cm4ge2Jvb2xlYW59CisgICAgICovCiAgICAgX3NlbGVjdGVkUGxhY2Fy
ZEJ5SW5kZXg6IGZ1bmN0aW9uKGluZGV4KQogICAgIHsKICAgICAgICAgaWYgKGluZGV4IDwgMCB8
fCBpbmRleCA+PSB0aGlzLnBsYWNhcmRzLmxlbmd0aCkKLSAgICAgICAgICAgIHJldHVybjsKKyAg
ICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgdGhpcy5fcGxhY2FyZFNlbGVjdGVkKHRo
aXMucGxhY2FyZHNbaW5kZXhdKQorICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9LAogCisgICAg
LyoqCisgICAgICogQHJldHVybiB7bnVtYmVyfQorICAgICAqLwogICAgIF9zZWxlY3RlZENhbGxG
cmFtZUluZGV4OiBmdW5jdGlvbigpCiAgICAgewogICAgICAgICBpZiAoIXRoaXMuX21vZGVsLnNl
bGVjdGVkQ2FsbEZyYW1lKCkpCkBAIC0xMTcsNyArMTMxLDcgQEAgV2ViSW5zcGVjdG9yLkNhbGxT
dGFja1NpZGViYXJQYW5lLnByb3RvdHlwZSA9IHsKICAgICB9LAogCiAgICAgLyoqCi0gICAgICog
QHBhcmFtIHtmdW5jdGlvbighQXJyYXkuPCFXZWJJbnNwZWN0b3IuS2V5Ym9hcmRTaG9ydGN1dC5E
ZXNjcmlwdG9yPiwgZnVuY3Rpb24oS2V5Ym9hcmRFdmVudCkpfSByZWdpc3RlclNob3J0Y3V0RGVs
ZWdhdGUKKyAgICAgKiBAcGFyYW0ge2Z1bmN0aW9uKCFBcnJheS48IVdlYkluc3BlY3Rvci5LZXli
b2FyZFNob3J0Y3V0LkRlc2NyaXB0b3I+LCBmdW5jdGlvbig/RXZlbnQ9KTpib29sZWFuKX0gcmVn
aXN0ZXJTaG9ydGN1dERlbGVnYXRlCiAgICAgICovCiAgICAgcmVnaXN0ZXJTaG9ydGN1dHM6IGZ1
bmN0aW9uKHJlZ2lzdGVyU2hvcnRjdXREZWxlZ2F0ZSkKICAgICB7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0dvVG9MaW5lRGlhbG9nLmpzIGIvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Hb1RvTGluZURpYWxvZy5qcwppbmRleCBkZTFi
OWE2Y2NhYTdjNWU2MTdjOWEwZjYzN2Q1NTk2MzExOWQ5NjEwLi5hMTMwYTYyNmE1ZjM5ODdjYWVj
ZjFmNjdiZjFhYjAyYzk4ZjQyNDliIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0
b3IvZnJvbnQtZW5kL0dvVG9MaW5lRGlhbG9nLmpzCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3Bl
Y3Rvci9mcm9udC1lbmQvR29Ub0xpbmVEaWFsb2cuanMKQEAgLTY0LDkgKzY0LDEwIEBAIFdlYklu
c3BlY3Rvci5Hb1RvTGluZURpYWxvZy5pbnN0YWxsID0gZnVuY3Rpb24ocGFuZWwsIHZpZXdHZXR0
ZXIpCiAKIC8qKgogICogQHBhcmFtIHtmdW5jdGlvbigpOj9XZWJJbnNwZWN0b3IuVmlld30gdmll
d0dldHRlcgorICogQHBhcmFtIHs/RXZlbnQ9fSBldmVudAogICogQHJldHVybiB7Ym9vbGVhbn0K
ICAqLwotV2ViSW5zcGVjdG9yLkdvVG9MaW5lRGlhbG9nLl9zaG93ID0gZnVuY3Rpb24odmlld0dl
dHRlcikKK1dlYkluc3BlY3Rvci5Hb1RvTGluZURpYWxvZy5fc2hvdyA9IGZ1bmN0aW9uKHZpZXdH
ZXR0ZXIsIGV2ZW50KQogewogICAgIHZhciBzb3VyY2VWaWV3ID0gdmlld0dldHRlcigpOwogICAg
IGlmICghc291cmNlVmlldyB8fCAhc291cmNlVmlldy5jYW5IaWdobGlnaHRMaW5lKCkpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1BhbmVsLmpzIGIvU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9QYW5lbC5qcwppbmRleCA5NjI0MjUyNGE2
N2Q3ZjdiZjlmZTQ2YjM0NGY5ZjNlYzliZDcyYzI0Li5hYTE4YTYxMTBkM2MwNTg5MTg0NGY0MjFm
NGQ1ZTc0NDA2M2NlNWQzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJv
bnQtZW5kL1BhbmVsLmpzCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQv
UGFuZWwuanMKQEAgLTM5LDcgKzM5LDcgQEAgV2ViSW5zcGVjdG9yLlBhbmVsID0gZnVuY3Rpb24o
bmFtZSkKICAgICB0aGlzLmVsZW1lbnQuYWRkU3R5bGVDbGFzcyhuYW1lKTsKICAgICB0aGlzLl9w
YW5lbE5hbWUgPSBuYW1lOwogCi0gICAgdGhpcy5fc2hvcnRjdXRzID0ge307CisgICAgdGhpcy5f
c2hvcnRjdXRzID0gLyoqICFPYmplY3QuPG51bWJlciwgZnVuY3Rpb24oP0V2ZW50PSk6Ym9vbGVh
bj4gKi8gKHt9KTsKIAogICAgIFdlYkluc3BlY3Rvci5zZXR0aW5nc1t0aGlzLl9zaWRlYmFyV2lk
dGhTZXR0aW5nTmFtZSgpXSA9IFdlYkluc3BlY3Rvci5zZXR0aW5ncy5jcmVhdGVTZXR0aW5nKHRo
aXMuX3NpZGViYXJXaWR0aFNldHRpbmdOYW1lKCksIHVuZGVmaW5lZCk7CiB9CkBAIC0yNTcsMTAg
KzI1NywxMSBAQCBXZWJJbnNwZWN0b3IuUGFuZWwucHJvdG90eXBlID0gewogCiAgICAgLyoqCiAg
ICAgICogQHBhcmFtIHshQXJyYXkuPCFXZWJJbnNwZWN0b3IuS2V5Ym9hcmRTaG9ydGN1dC5EZXNj
cmlwdG9yPn0ga2V5cwotICAgICAqIEBwYXJhbSB7ZnVuY3Rpb24oS2V5Ym9hcmRFdmVudCk6Ym9v
bGVhbn0gaGFuZGxlcgorICAgICAqIEBwYXJhbSB7ZnVuY3Rpb24oP0V2ZW50PSk6Ym9vbGVhbn0g
aGFuZGxlcgogICAgICAqLwogICAgIHJlZ2lzdGVyU2hvcnRjdXRzOiBmdW5jdGlvbihrZXlzLCBo
YW5kbGVyKQogICAgIHsKKyAgICAgICAgY29uc29sZS50cmFjZSgpOwogICAgICAgICBmb3IgKHZh
ciBpID0gMDsgaSA8IGtleXMubGVuZ3RoOyArK2kpCiAgICAgICAgICAgICB0aGlzLl9zaG9ydGN1
dHNba2V5c1tpXS5rZXldID0gaGFuZGxlcjsKICAgICB9LApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TY3JpcHRzUGFuZWwuanMgYi9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1NjcmlwdHNQYW5lbC5qcwppbmRleCA0NzFmNGEwMzg0ZDE5
ZWQ2NGRlMWIzNjllZWIxYjk4OTFjZTcyYmQ5Li40ZDQxNTQ0NjM0N2ViOTcyNGVkYjU1M2Y4ZjUz
Mjc3OTVlNDdmZDk1IDEwMDc1NQotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQt
ZW5kL1NjcmlwdHNQYW5lbC5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQt
ZW5kL1NjcmlwdHNQYW5lbC5qcwpAQCAtNjc0LDcgKzY3NCwxMSBAQCBXZWJJbnNwZWN0b3IuU2Ny
aXB0c1BhbmVsLnByb3RvdHlwZSA9IHsKICAgICAgICAgV2ViSW5zcGVjdG9yLnNldHRpbmdzLnBh
dXNlT25FeGNlcHRpb25TdGF0ZVN0cmluZy5zZXQobmV4dFN0YXRlTWFwW3RoaXMuX3BhdXNlT25F
eGNlcHRpb25CdXR0b24uc3RhdGVdKTsKICAgICB9LAogCi0gICAgX3RvZ2dsZVBhdXNlOiBmdW5j
dGlvbigpCisgICAgLyoqCisgICAgICogQHBhcmFtIHs/RXZlbnQ9fSBldmVudAorICAgICAqIEBy
ZXR1cm4ge2Jvb2xlYW59CisgICAgICovCisgICAgX3RvZ2dsZVBhdXNlOiBmdW5jdGlvbihldmVu
dCkKICAgICB7CiAgICAgICAgIGlmICh0aGlzLl9wYXVzZWQpIHsKICAgICAgICAgICAgIHRoaXMu
X3BhdXNlZCA9IGZhbHNlOwpAQCAtNjg3LDEyICs2OTEsMTcgQEAgV2ViSW5zcGVjdG9yLlNjcmlw
dHNQYW5lbC5wcm90b3R5cGUgPSB7CiAgICAgICAgIH0KIAogICAgICAgICB0aGlzLl9jbGVhcklu
dGVyZmFjZSgpOworICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9LAogCi0gICAgX3N0ZXBPdmVy
Q2xpY2tlZDogZnVuY3Rpb24oKQorICAgIC8qKgorICAgICAqIEBwYXJhbSB7P0V2ZW50PX0gZXZl
bnQKKyAgICAgKiBAcmV0dXJuIHtib29sZWFufQorICAgICAqLworICAgIF9zdGVwT3ZlckNsaWNr
ZWQ6IGZ1bmN0aW9uKGV2ZW50KQogICAgIHsKICAgICAgICAgaWYgKCF0aGlzLl9wYXVzZWQpCi0g
ICAgICAgICAgICByZXR1cm47CisgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAKICAgICAgICAg
dGhpcy5fcGF1c2VkID0gZmFsc2U7CiAgICAgICAgIHRoaXMuX3N0ZXBwaW5nID0gdHJ1ZTsKQEAg
LTcwMCwxMiArNzA5LDE3IEBAIFdlYkluc3BlY3Rvci5TY3JpcHRzUGFuZWwucHJvdG90eXBlID0g
ewogICAgICAgICB0aGlzLl9jbGVhckludGVyZmFjZSgpOwogCiAgICAgICAgIERlYnVnZ2VyQWdl
bnQuc3RlcE92ZXIoKTsKKyAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgfSwKIAotICAgIF9zdGVw
SW50b0NsaWNrZWQ6IGZ1bmN0aW9uKCkKKyAgICAvKioKKyAgICAgKiBAcGFyYW0gez9FdmVudD19
IGV2ZW50CisgICAgICogQHJldHVybiB7Ym9vbGVhbn0KKyAgICAgKi8KKyAgICBfc3RlcEludG9D
bGlja2VkOiBmdW5jdGlvbihldmVudCkKICAgICB7CiAgICAgICAgIGlmICghdGhpcy5fcGF1c2Vk
KQotICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogCiAgICAg
ICAgIHRoaXMuX3BhdXNlZCA9IGZhbHNlOwogICAgICAgICB0aGlzLl9zdGVwcGluZyA9IHRydWU7
CkBAIC03MTMsMTIgKzcyNywxNyBAQCBXZWJJbnNwZWN0b3IuU2NyaXB0c1BhbmVsLnByb3RvdHlw
ZSA9IHsKICAgICAgICAgdGhpcy5fY2xlYXJJbnRlcmZhY2UoKTsKIAogICAgICAgICBEZWJ1Z2dl
ckFnZW50LnN0ZXBJbnRvKCk7CisgICAgICAgIHJldHVybiB0cnVlOwogICAgIH0sCiAKLSAgICBf
c3RlcE91dENsaWNrZWQ6IGZ1bmN0aW9uKCkKKyAgICAvKioKKyAgICAgKiBAcGFyYW0gez9FdmVu
dD19IGV2ZW50CisgICAgICogQHJldHVybiB7Ym9vbGVhbn0KKyAgICAgKi8KKyAgICBfc3RlcE91
dENsaWNrZWQ6IGZ1bmN0aW9uKGV2ZW50KQogICAgIHsKICAgICAgICAgaWYgKCF0aGlzLl9wYXVz
ZWQpCi0gICAgICAgICAgICByZXR1cm47CisgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAKICAg
ICAgICAgdGhpcy5fcGF1c2VkID0gZmFsc2U7CiAgICAgICAgIHRoaXMuX3N0ZXBwaW5nID0gdHJ1
ZTsKQEAgLTcyNiw2ICs3NDUsNyBAQCBXZWJJbnNwZWN0b3IuU2NyaXB0c1BhbmVsLnByb3RvdHlw
ZSA9IHsKICAgICAgICAgdGhpcy5fY2xlYXJJbnRlcmZhY2UoKTsKIAogICAgICAgICBEZWJ1Z2dl
ckFnZW50LnN0ZXBPdXQoKTsKKyAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgfSwKIAogICAgIF90
b2dnbGVCcmVha3BvaW50c0NsaWNrZWQ6IGZ1bmN0aW9uKGV2ZW50KQpAQCAtNzQ4LDcgKzc2OCwx
MSBAQCBXZWJJbnNwZWN0b3IuU2NyaXB0c1BhbmVsLnByb3RvdHlwZSA9IHsKICAgICAgICAgfQog
ICAgIH0sCiAKLSAgICBfZXZhbHVhdGVTZWxlY3Rpb25JbkNvbnNvbGU6IGZ1bmN0aW9uKCkKKyAg
ICAvKioKKyAgICAgKiBAcGFyYW0gez9FdmVudD19IGV2ZW50CisgICAgICogQHJldHVybiB7Ym9v
bGVhbn0KKyAgICAgKi8KKyAgICBfZXZhbHVhdGVTZWxlY3Rpb25JbkNvbnNvbGU6IGZ1bmN0aW9u
KGV2ZW50KQogICAgIHsKICAgICAgICAgdmFyIHNlbGVjdGlvbiA9IHdpbmRvdy5nZXRTZWxlY3Rp
b24oKTsKICAgICAgICAgaWYgKHNlbGVjdGlvbi50eXBlICE9PSAiUmFuZ2UiIHx8IHNlbGVjdGlv
bi5pc0NvbGxhcHNlZCkKQEAgLTgxNCw3ICs4MzgsNyBAQCBXZWJJbnNwZWN0b3IuU2NyaXB0c1Bh
bmVsLnByb3RvdHlwZSA9IHsKICAgICAvKioKICAgICAgKiBAcGFyYW0ge3N0cmluZ30gYnV0dG9u
SWQKICAgICAgKiBAcGFyYW0ge3N0cmluZ30gYnV0dG9uVGl0bGUKLSAgICAgKiBAcGFyYW0ge2Z1
bmN0aW9uKEV2ZW50KX0gaGFuZGxlcgorICAgICAqIEBwYXJhbSB7ZnVuY3Rpb24oP0V2ZW50PSk6
Ym9vbGVhbn0gaGFuZGxlcgogICAgICAqIEBwYXJhbSB7IUFycmF5LjwhV2ViSW5zcGVjdG9yLktl
eWJvYXJkU2hvcnRjdXQuRGVzY3JpcHRvcj59IHNob3J0Y3V0cwogICAgICAqLwogICAgIF9jcmVh
dGVCdXR0b25BbmRSZWdpc3RlclNob3J0Y3V0czogZnVuY3Rpb24oYnV0dG9uSWQsIGJ1dHRvblRp
dGxlLCBoYW5kbGVyLCBzaG9ydGN1dHMpCkBAIC05NTUsNyArOTc5LDExIEBAIFdlYkluc3BlY3Rv
ci5TY3JpcHRzUGFuZWwucHJvdG90eXBlID0gewogICAgICAgICB0aGlzLnNpZGViYXJQYW5lcy53
YXRjaEV4cHJlc3Npb25zLmFkZEV4cHJlc3Npb24oZXhwcmVzc2lvbik7CiAgICAgfSwKIAotICAg
IF90b2dnbGVCcmVha3BvaW50OiBmdW5jdGlvbigpCisgICAgLyoqCisgICAgICogQHBhcmFtIHs/
RXZlbnQ9fSBldmVudAorICAgICAqIEByZXR1cm4ge2Jvb2xlYW59CisgICAgICovCisgICAgX3Rv
Z2dsZUJyZWFrcG9pbnQ6IGZ1bmN0aW9uKGV2ZW50KQogICAgIHsKICAgICAgICAgdmFyIHNvdXJj
ZUZyYW1lID0gdGhpcy52aXNpYmxlVmlldzsKICAgICAgICAgaWYgKCFzb3VyY2VGcmFtZSkKQEAg
LTk2OSw3ICs5OTcsMTEgQEAgV2ViSW5zcGVjdG9yLlNjcmlwdHNQYW5lbC5wcm90b3R5cGUgPSB7
CiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICB9LAogCi0gICAgX3Nob3dPdXRsaW5lRGlhbG9n
OiBmdW5jdGlvbigpCisgICAgLyoqCisgICAgICogQHBhcmFtIHs/RXZlbnQ9fSBldmVudAorICAg
ICAqIEByZXR1cm4ge2Jvb2xlYW59CisgICAgICovCisgICAgX3Nob3dPdXRsaW5lRGlhbG9nOiBm
dW5jdGlvbihldmVudCkKICAgICB7CiAgICAgICAgIHZhciB1aVNvdXJjZUNvZGUgPSB0aGlzLl9l
ZGl0b3JDb250YWluZXIuY3VycmVudEZpbGUoKTsKICAgICAgICAgaWYgKCF1aVNvdXJjZUNvZGUp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1RpbWVsaW5l
UGFuZWwuanMgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1RpbWVsaW5lUGFu
ZWwuanMKaW5kZXggN2RmNjViZDBmZDNlMzIyMzUxMTIwZjEwNjM0MTg3NGNjZTI4YmJkMC4uZjFk
YTIyNjFlOTliNzY0NWQ5NjI3MDI5OTZhNTJhNzEzYjgzYWY3MCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9UaW1lbGluZVBhbmVsLmpzCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvVGltZWxpbmVQYW5lbC5qcwpAQCAtMzQ0LDcg
KzM0NCw3IEBAIFdlYkluc3BlY3Rvci5UaW1lbGluZVBhbmVsLnByb3RvdHlwZSA9IHsKICAgICAg
ICAgdGhpcy5yZWdpc3RlclNob3J0Y3V0cyhXZWJJbnNwZWN0b3IuVGltZWxpbmVQYW5lbERlc2Ny
aXB0b3IuU2hvcnRjdXRLZXlzLlN0YXJ0U3RvcFJlY29yZGluZywgdGhpcy5fdG9nZ2xlVGltZWxp
bmVCdXR0b25DbGlja2VkLmJpbmQodGhpcykpOwogICAgICAgICBpZiAoSW5zcGVjdG9yRnJvbnRl
bmRIb3N0LmNhblNhdmUoKSkKICAgICAgICAgICAgIHRoaXMucmVnaXN0ZXJTaG9ydGN1dHMoV2Vi
SW5zcGVjdG9yLlRpbWVsaW5lUGFuZWxEZXNjcmlwdG9yLlNob3J0Y3V0S2V5cy5TYXZlVG9GaWxl
LCB0aGlzLl9zYXZlVG9GaWxlLmJpbmQodGhpcykpOwotICAgICAgICB0aGlzLnJlZ2lzdGVyU2hv
cnRjdXRzKFdlYkluc3BlY3Rvci5UaW1lbGluZVBhbmVsRGVzY3JpcHRvci5TaG9ydGN1dEtleXMu
TG9hZEZyb21GaWxlLCB0aGlzLl9maWxlU2VsZWN0b3JFbGVtZW50LmNsaWNrLmJpbmQodGhpcy5f
ZmlsZVNlbGVjdG9yRWxlbWVudCkpOworICAgICAgICB0aGlzLnJlZ2lzdGVyU2hvcnRjdXRzKFdl
Ykluc3BlY3Rvci5UaW1lbGluZVBhbmVsRGVzY3JpcHRvci5TaG9ydGN1dEtleXMuTG9hZEZyb21G
aWxlLCB0aGlzLl9zZWxlY3RGaWxlVG9Mb2FkLmJpbmQodGhpcykpOwogICAgIH0sCiAKICAgICBf
Y3JlYXRlRmlsZVNlbGVjdG9yOiBmdW5jdGlvbigpCkBAIC0zNjYsMTEgKzM2NiwxNSBAQCBXZWJJ
bnNwZWN0b3IuVGltZWxpbmVQYW5lbC5wcm90b3R5cGUgPSB7CiAgICAgICAgIHZhciBjb250ZXh0
TWVudSA9IG5ldyBXZWJJbnNwZWN0b3IuQ29udGV4dE1lbnUoZXZlbnQpOwogICAgICAgICBpZiAo
SW5zcGVjdG9yRnJvbnRlbmRIb3N0LmNhblNhdmUoKSkKICAgICAgICAgICAgIGNvbnRleHRNZW51
LmFwcGVuZEl0ZW0oV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJTYXZlIFRpbWVsaW5lIGRhdGFcdTIw
MjYiKSwgdGhpcy5fc2F2ZVRvRmlsZS5iaW5kKHRoaXMpLCB0aGlzLl9vcGVyYXRpb25JblByb2dy
ZXNzKTsKLSAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kSXRlbShXZWJJbnNwZWN0b3IuVUlTdHJp
bmcoIkxvYWQgVGltZWxpbmUgZGF0YVx1MjAyNiIpLCB0aGlzLl9maWxlU2VsZWN0b3JFbGVtZW50
LmNsaWNrLmJpbmQodGhpcy5fZmlsZVNlbGVjdG9yRWxlbWVudCksIHRoaXMuX29wZXJhdGlvbklu
UHJvZ3Jlc3MpOworICAgICAgICBjb250ZXh0TWVudS5hcHBlbmRJdGVtKFdlYkluc3BlY3Rvci5V
SVN0cmluZygiTG9hZCBUaW1lbGluZSBkYXRhXHUyMDI2IiksIHRoaXMuX3NlbGVjdEZpbGVUb0xv
YWQuYmluZCh0aGlzKSwgdGhpcy5fb3BlcmF0aW9uSW5Qcm9ncmVzcyk7CiAgICAgICAgIGNvbnRl
eHRNZW51LnNob3coKTsKICAgICB9LAogCi0gICAgX3NhdmVUb0ZpbGU6IGZ1bmN0aW9uKCkKKyAg
ICAvKioKKyAgICAgKiBAcGFyYW0gez9FdmVudD19IGV2ZW50CisgICAgICogQHJldHVybiB7Ym9v
bGVhbn0KKyAgICAgKi8KKyAgICBfc2F2ZVRvRmlsZTogZnVuY3Rpb24oZXZlbnQpCiAgICAgewog
ICAgICAgICBpZiAodGhpcy5fb3BlcmF0aW9uSW5Qcm9ncmVzcykKICAgICAgICAgICAgIHJldHVy
biBmYWxzZTsKQEAgLTM3OCw2ICszODIsMTUgQEAgV2ViSW5zcGVjdG9yLlRpbWVsaW5lUGFuZWwu
cHJvdG90eXBlID0gewogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9LAogCisgICAgLyoqCisg
ICAgICogQHBhcmFtIHs/RXZlbnQ9fSBldmVudAorICAgICAqIEByZXR1cm4ge2Jvb2xlYW59Cisg
ICAgICovCisgICAgX3NlbGVjdEZpbGVUb0xvYWQ6IGZ1bmN0aW9uKGV2ZW50KSB7CisgICAgICAg
IHRoaXMuX2ZpbGVTZWxlY3RvckVsZW1lbnQuY2xpY2soKTsKKyAgICAgICAgcmV0dXJuIHRydWU7
CisgICAgfSwKKwogICAgIF9sb2FkRnJvbUZpbGU6IGZ1bmN0aW9uKCkKICAgICB7CiAgICAgICAg
IHZhciBwcm9ncmVzc0luZGljYXRvciA9IHRoaXMuX3ByZXBhcmVUb0xvYWRUaW1lbGluZSgpOwpA
QCAtNTYyLDcgKzU3NSwxMSBAQCBXZWJJbnNwZWN0b3IuVGltZWxpbmVQYW5lbC5wcm90b3R5cGUg
PSB7CiAgICAgICAgIH0KICAgICB9LAogCi0gICAgX3RvZ2dsZVRpbWVsaW5lQnV0dG9uQ2xpY2tl
ZDogZnVuY3Rpb24oKQorICAgIC8qKgorICAgICAqIEBwYXJhbSB7P0V2ZW50fFdlYkluc3BlY3Rv
ci5FdmVudD19IGV2ZW50CisgICAgICogQHJldHVybiB7Ym9vbGVhbn0KKyAgICAgKi8KKyAgICBf
dG9nZ2xlVGltZWxpbmVCdXR0b25DbGlja2VkOiBmdW5jdGlvbihldmVudCkKICAgICB7CiAgICAg
ICAgIGlmICh0aGlzLl9vcGVyYXRpb25JblByb2dyZXNzKQogICAgICAgICAgICAgcmV0dXJuIGZh
bHNlOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>192721</attachid>
            <date>2013-03-12 06:12:23 -0700</date>
            <delta_ts>2013-03-12 07:59:21 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-112113-20130312170821.patch</filename>
            <type>text/plain</type>
            <size>11415</size>
            <attacher name="Eugene Klyuchnikov">eustas</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ1NTM3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTI4OWE3ZTUxN2ExOTA5
YjcwNDNmOWZlZjU0ZDUyYzRlNGFmYWEwZS4uYjc0NDE4YzRjYjljNTI4ZjE1Zjc5MzAyOTk0OWNk
ZTExNjJiMDNjMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDIxIEBACiAyMDEzLTAzLTEyICBFdWdl
bmUgS2x5dWNobmlrb3YgIDxldXN0YXNAY2hyb21pdW0ub3JnPgogCisgICAgICAgIFdlYiBJbnNw
ZWN0b3I6IFtSRUdSRVNTSU9OXSBTdGVwSW50byAoRjExKSBhbmQgU3RlcE91dCAoU2hpZnQtRjEx
KSBzaG9ydGN1dHMgdG9nZ2xlIEluc3BlY3RvciB3aW5kb3cgZnVsbC1zY3JlZW4gc3RhdGUKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTExMjExMworCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVwZGF0ZWQgaGFu
ZGxlcnMgbWlzc2VkIGluIGZpcnN0IHBhdGNoLiBBZGRlZCBKU0RvY3MgdG8gYWxsIGhhbmRsZXJz
LgorCisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9QYW5lbC5qczogRml4ZWQgSlNEb2Nz
LgorICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvQ2FsbFN0YWNrU2lkZWJhclBhbmUuanM6
CisgICAgICAgIEFkZGVkIHJldHVybiB2YWx1ZXMuIEFkZGVkIEpTRG9jcy4KKyAgICAgICAgKiBp
bnNwZWN0b3IvZnJvbnQtZW5kL1NjcmlwdHNQYW5lbC5qczogRGl0dG8uCisgICAgICAgICogaW5z
cGVjdG9yL2Zyb250LWVuZC9Hb1RvTGluZURpYWxvZy5qczogQWRkZWQgSlNEb2NzLgorICAgICAg
ICAqIGluc3BlY3Rvci9mcm9udC1lbmQvVGltZWxpbmVQYW5lbC5qczogRGl0dG8uCisKKzIwMTMt
MDMtMTIgIEV1Z2VuZSBLbHl1Y2huaWtvdiAgPGV1c3Rhc0BjaHJvbWl1bS5vcmc+CisKICAgICAg
ICAgV2ViIEluc3BlY3RvcjogRml4IEpTRG9jcyBpbiBUaW1lbGluZVBhbmVsLmpzCiAgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTIxMzcKIApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9DYWxsU3RhY2tTaWRlYmFy
UGFuZS5qcyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvQ2FsbFN0YWNrU2lk
ZWJhclBhbmUuanMKaW5kZXggNTIwOTdkZDc0ZTFmMTUyNzQ4MTcwM2UwZTgxOTAzOWRjZWYyY2E2
ZS4uNzk0OWM0OGEzMmI1ZDNiZGY4ZWIzYTNkMGJhZjZjZTJiMGQzODFhOSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9DYWxsU3RhY2tTaWRlYmFyUGFuZS5q
cworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0NhbGxTdGFja1NpZGVi
YXJQYW5lLmpzCkBAIC02OCwyMiArNjgsMzMgQEAgV2ViSW5zcGVjdG9yLkNhbGxTdGFja1NpZGVi
YXJQYW5lLnByb3RvdHlwZSA9IHsKICAgICAgICAgfQogICAgIH0sCiAKLSAgICBfc2VsZWN0TmV4
dENhbGxGcmFtZU9uU3RhY2s6IGZ1bmN0aW9uKCkKKyAgICAvKioKKyAgICAgKiBAcGFyYW0ge0V2
ZW50PX0gZXZlbnQKKyAgICAgKi8KKyAgICBfc2VsZWN0TmV4dENhbGxGcmFtZU9uU3RhY2s6IGZ1
bmN0aW9uKGV2ZW50KQogICAgIHsKICAgICAgICAgdmFyIGluZGV4ID0gdGhpcy5fc2VsZWN0ZWRD
YWxsRnJhbWVJbmRleCgpOwogICAgICAgICBpZiAoaW5kZXggPT0gLTEpCi0gICAgICAgICAgICBy
ZXR1cm47CisgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgdGhpcy5fc2VsZWN0ZWRQ
bGFjYXJkQnlJbmRleChpbmRleCArIDEpOworICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9LAog
Ci0gICAgX3NlbGVjdFByZXZpb3VzQ2FsbEZyYW1lT25TdGFjazogZnVuY3Rpb24oKQorICAgIC8q
KgorICAgICAqIEBwYXJhbSB7RXZlbnQ9fSBldmVudAorICAgICAqLworICAgIF9zZWxlY3RQcmV2
aW91c0NhbGxGcmFtZU9uU3RhY2s6IGZ1bmN0aW9uKGV2ZW50KQogICAgIHsKICAgICAgICAgdmFy
IGluZGV4ID0gdGhpcy5fc2VsZWN0ZWRDYWxsRnJhbWVJbmRleCgpOwogICAgICAgICBpZiAoaW5k
ZXggPT0gLTEpCi0gICAgICAgICAgICByZXR1cm47CisgICAgICAgICAgICByZXR1cm4gdHJ1ZTsK
ICAgICAgICAgdGhpcy5fc2VsZWN0ZWRQbGFjYXJkQnlJbmRleChpbmRleCAtIDEpOworICAgICAg
ICByZXR1cm4gdHJ1ZTsKICAgICB9LAogCisgICAgLyoqCisgICAgICogQHBhcmFtIHtudW1iZXJ9
IGluZGV4CisgICAgICovCiAgICAgX3NlbGVjdGVkUGxhY2FyZEJ5SW5kZXg6IGZ1bmN0aW9uKGlu
ZGV4KQogICAgIHsKICAgICAgICAgaWYgKGluZGV4IDwgMCB8fCBpbmRleCA+PSB0aGlzLnBsYWNh
cmRzLmxlbmd0aCkKQEAgLTkxLDYgKzEwMiw5IEBAIFdlYkluc3BlY3Rvci5DYWxsU3RhY2tTaWRl
YmFyUGFuZS5wcm90b3R5cGUgPSB7CiAgICAgICAgIHRoaXMuX3BsYWNhcmRTZWxlY3RlZCh0aGlz
LnBsYWNhcmRzW2luZGV4XSkKICAgICB9LAogCisgICAgLyoqCisgICAgICogQHJldHVybiB7bnVt
YmVyfQorICAgICAqLwogICAgIF9zZWxlY3RlZENhbGxGcmFtZUluZGV4OiBmdW5jdGlvbigpCiAg
ICAgewogICAgICAgICBpZiAoIXRoaXMuX21vZGVsLnNlbGVjdGVkQ2FsbEZyYW1lKCkpCkBAIC0x
MTcsNyArMTMxLDcgQEAgV2ViSW5zcGVjdG9yLkNhbGxTdGFja1NpZGViYXJQYW5lLnByb3RvdHlw
ZSA9IHsKICAgICB9LAogCiAgICAgLyoqCi0gICAgICogQHBhcmFtIHtmdW5jdGlvbighQXJyYXku
PCFXZWJJbnNwZWN0b3IuS2V5Ym9hcmRTaG9ydGN1dC5EZXNjcmlwdG9yPiwgZnVuY3Rpb24oS2V5
Ym9hcmRFdmVudCkpfSByZWdpc3RlclNob3J0Y3V0RGVsZWdhdGUKKyAgICAgKiBAcGFyYW0ge2Z1
bmN0aW9uKCFBcnJheS48IVdlYkluc3BlY3Rvci5LZXlib2FyZFNob3J0Y3V0LkRlc2NyaXB0b3I+
LCBmdW5jdGlvbihFdmVudD0pOmJvb2xlYW4pfSByZWdpc3RlclNob3J0Y3V0RGVsZWdhdGUKICAg
ICAgKi8KICAgICByZWdpc3RlclNob3J0Y3V0czogZnVuY3Rpb24ocmVnaXN0ZXJTaG9ydGN1dERl
bGVnYXRlKQogICAgIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9u
dC1lbmQvR29Ub0xpbmVEaWFsb2cuanMgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQt
ZW5kL0dvVG9MaW5lRGlhbG9nLmpzCmluZGV4IGRlMWI5YTZjY2FhN2M1ZTYxN2M5YTBmNjM3ZDU1
OTYzMTE5ZDk2MTAuLjRhMTg5MWY2ODEyMTRlYmQ2NDMyODhhM2JkN2JhNTlkMmZmMzBjZDkgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvR29Ub0xpbmVEaWFs
b2cuanMKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Hb1RvTGluZURp
YWxvZy5qcwpAQCAtNjQsOSArNjQsMTAgQEAgV2ViSW5zcGVjdG9yLkdvVG9MaW5lRGlhbG9nLmlu
c3RhbGwgPSBmdW5jdGlvbihwYW5lbCwgdmlld0dldHRlcikKIAogLyoqCiAgKiBAcGFyYW0ge2Z1
bmN0aW9uKCk6P1dlYkluc3BlY3Rvci5WaWV3fSB2aWV3R2V0dGVyCisgKiBAcGFyYW0ge0V2ZW50
PX0gZXZlbnQKICAqIEByZXR1cm4ge2Jvb2xlYW59CiAgKi8KLVdlYkluc3BlY3Rvci5Hb1RvTGlu
ZURpYWxvZy5fc2hvdyA9IGZ1bmN0aW9uKHZpZXdHZXR0ZXIpCitXZWJJbnNwZWN0b3IuR29Ub0xp
bmVEaWFsb2cuX3Nob3cgPSBmdW5jdGlvbih2aWV3R2V0dGVyLCBldmVudCkKIHsKICAgICB2YXIg
c291cmNlVmlldyA9IHZpZXdHZXR0ZXIoKTsKICAgICBpZiAoIXNvdXJjZVZpZXcgfHwgIXNvdXJj
ZVZpZXcuY2FuSGlnaGxpZ2h0TGluZSgpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL2Zyb250LWVuZC9QYW5lbC5qcyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9u
dC1lbmQvUGFuZWwuanMKaW5kZXggOTYyNDI1MjRhNjdkN2Y3YmY5ZmU0NmIzNDRmOWYzZWM5YmQ3
MmMyNC4uYjk3ZDFhMGZkOGZlNGEzMjg4YWNjNDU2M2JkZmNjYjIyMzQ0M2MzZCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9QYW5lbC5qcworKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1BhbmVsLmpzCkBAIC0zOSw3ICszOSw3IEBA
IFdlYkluc3BlY3Rvci5QYW5lbCA9IGZ1bmN0aW9uKG5hbWUpCiAgICAgdGhpcy5lbGVtZW50LmFk
ZFN0eWxlQ2xhc3MobmFtZSk7CiAgICAgdGhpcy5fcGFuZWxOYW1lID0gbmFtZTsKIAotICAgIHRo
aXMuX3Nob3J0Y3V0cyA9IHt9OworICAgIHRoaXMuX3Nob3J0Y3V0cyA9IC8qKiAhT2JqZWN0Ljxu
dW1iZXIsIGZ1bmN0aW9uKEV2ZW50PSk6Ym9vbGVhbj4gKi8gKHt9KTsKIAogICAgIFdlYkluc3Bl
Y3Rvci5zZXR0aW5nc1t0aGlzLl9zaWRlYmFyV2lkdGhTZXR0aW5nTmFtZSgpXSA9IFdlYkluc3Bl
Y3Rvci5zZXR0aW5ncy5jcmVhdGVTZXR0aW5nKHRoaXMuX3NpZGViYXJXaWR0aFNldHRpbmdOYW1l
KCksIHVuZGVmaW5lZCk7CiB9CkBAIC0yNTcsNyArMjU3LDcgQEAgV2ViSW5zcGVjdG9yLlBhbmVs
LnByb3RvdHlwZSA9IHsKIAogICAgIC8qKgogICAgICAqIEBwYXJhbSB7IUFycmF5LjwhV2ViSW5z
cGVjdG9yLktleWJvYXJkU2hvcnRjdXQuRGVzY3JpcHRvcj59IGtleXMKLSAgICAgKiBAcGFyYW0g
e2Z1bmN0aW9uKEtleWJvYXJkRXZlbnQpOmJvb2xlYW59IGhhbmRsZXIKKyAgICAgKiBAcGFyYW0g
e2Z1bmN0aW9uKEV2ZW50PSk6Ym9vbGVhbn0gaGFuZGxlcgogICAgICAqLwogICAgIHJlZ2lzdGVy
U2hvcnRjdXRzOiBmdW5jdGlvbihrZXlzLCBoYW5kbGVyKQogICAgIHsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU2NyaXB0c1BhbmVsLmpzIGIvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TY3JpcHRzUGFuZWwuanMKaW5kZXggZTViMTVm
ODhmNzhkZjQ4ZDI5NjAxMDJlMzVlMjBmYzE2ZmYxYWYyOS4uMGI1Y2UzM2U0NTRhY2M0ODBlYjMy
NWUwOGYyM2U5OTI3YTY2MTlkMiAxMDA3NTUKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L2Zyb250LWVuZC9TY3JpcHRzUGFuZWwuanMKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L2Zyb250LWVuZC9TY3JpcHRzUGFuZWwuanMKQEAgLTY3NCw3ICs2NzQsMTEgQEAgV2ViSW5zcGVj
dG9yLlNjcmlwdHNQYW5lbC5wcm90b3R5cGUgPSB7CiAgICAgICAgIFdlYkluc3BlY3Rvci5zZXR0
aW5ncy5wYXVzZU9uRXhjZXB0aW9uU3RhdGVTdHJpbmcuc2V0KG5leHRTdGF0ZU1hcFt0aGlzLl9w
YXVzZU9uRXhjZXB0aW9uQnV0dG9uLnN0YXRlXSk7CiAgICAgfSwKIAotICAgIF90b2dnbGVQYXVz
ZTogZnVuY3Rpb24oKQorICAgIC8qKgorICAgICAqIEBwYXJhbSB7RXZlbnQ9fSBldmVudAorICAg
ICAqIEByZXR1cm4ge2Jvb2xlYW59CisgICAgICovCisgICAgX3RvZ2dsZVBhdXNlOiBmdW5jdGlv
bihldmVudCkKICAgICB7CiAgICAgICAgIGlmICh0aGlzLl9wYXVzZWQpIHsKICAgICAgICAgICAg
IHRoaXMuX3BhdXNlZCA9IGZhbHNlOwpAQCAtNjg3LDEyICs2OTEsMTcgQEAgV2ViSW5zcGVjdG9y
LlNjcmlwdHNQYW5lbC5wcm90b3R5cGUgPSB7CiAgICAgICAgIH0KIAogICAgICAgICB0aGlzLl9j
bGVhckludGVyZmFjZSgpOworICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9LAogCi0gICAgX3N0
ZXBPdmVyQ2xpY2tlZDogZnVuY3Rpb24oKQorICAgIC8qKgorICAgICAqIEBwYXJhbSB7RXZlbnQ9
fSBldmVudAorICAgICAqIEByZXR1cm4ge2Jvb2xlYW59CisgICAgICovCisgICAgX3N0ZXBPdmVy
Q2xpY2tlZDogZnVuY3Rpb24oZXZlbnQpCiAgICAgewogICAgICAgICBpZiAoIXRoaXMuX3BhdXNl
ZCkKLSAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgICAgIHJldHVybiB0cnVlOwogCiAgICAg
ICAgIHRoaXMuX3BhdXNlZCA9IGZhbHNlOwogICAgICAgICB0aGlzLl9zdGVwcGluZyA9IHRydWU7
CkBAIC03MDAsMTIgKzcwOSwxNyBAQCBXZWJJbnNwZWN0b3IuU2NyaXB0c1BhbmVsLnByb3RvdHlw
ZSA9IHsKICAgICAgICAgdGhpcy5fY2xlYXJJbnRlcmZhY2UoKTsKIAogICAgICAgICBEZWJ1Z2dl
ckFnZW50LnN0ZXBPdmVyKCk7CisgICAgICAgIHJldHVybiB0cnVlOwogICAgIH0sCiAKLSAgICBf
c3RlcEludG9DbGlja2VkOiBmdW5jdGlvbigpCisgICAgLyoqCisgICAgICogQHBhcmFtIHtFdmVu
dD19IGV2ZW50CisgICAgICogQHJldHVybiB7Ym9vbGVhbn0KKyAgICAgKi8KKyAgICBfc3RlcElu
dG9DbGlja2VkOiBmdW5jdGlvbihldmVudCkKICAgICB7CiAgICAgICAgIGlmICghdGhpcy5fcGF1
c2VkKQotICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAKICAg
ICAgICAgdGhpcy5fcGF1c2VkID0gZmFsc2U7CiAgICAgICAgIHRoaXMuX3N0ZXBwaW5nID0gdHJ1
ZTsKQEAgLTcxMywxMiArNzI3LDE3IEBAIFdlYkluc3BlY3Rvci5TY3JpcHRzUGFuZWwucHJvdG90
eXBlID0gewogICAgICAgICB0aGlzLl9jbGVhckludGVyZmFjZSgpOwogCiAgICAgICAgIERlYnVn
Z2VyQWdlbnQuc3RlcEludG8oKTsKKyAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgfSwKIAotICAg
IF9zdGVwT3V0Q2xpY2tlZDogZnVuY3Rpb24oKQorICAgIC8qKgorICAgICAqIEBwYXJhbSB7RXZl
bnQ9fSBldmVudAorICAgICAqIEByZXR1cm4ge2Jvb2xlYW59CisgICAgICovCisgICAgX3N0ZXBP
dXRDbGlja2VkOiBmdW5jdGlvbihldmVudCkKICAgICB7CiAgICAgICAgIGlmICghdGhpcy5fcGF1
c2VkKQotICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAKICAg
ICAgICAgdGhpcy5fcGF1c2VkID0gZmFsc2U7CiAgICAgICAgIHRoaXMuX3N0ZXBwaW5nID0gdHJ1
ZTsKQEAgLTcyNiw2ICs3NDUsNyBAQCBXZWJJbnNwZWN0b3IuU2NyaXB0c1BhbmVsLnByb3RvdHlw
ZSA9IHsKICAgICAgICAgdGhpcy5fY2xlYXJJbnRlcmZhY2UoKTsKIAogICAgICAgICBEZWJ1Z2dl
ckFnZW50LnN0ZXBPdXQoKTsKKyAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgfSwKIAogICAgIF90
b2dnbGVCcmVha3BvaW50c0NsaWNrZWQ6IGZ1bmN0aW9uKGV2ZW50KQpAQCAtNzQ4LDcgKzc2OCwx
MSBAQCBXZWJJbnNwZWN0b3IuU2NyaXB0c1BhbmVsLnByb3RvdHlwZSA9IHsKICAgICAgICAgfQog
ICAgIH0sCiAKLSAgICBfZXZhbHVhdGVTZWxlY3Rpb25JbkNvbnNvbGU6IGZ1bmN0aW9uKCkKKyAg
ICAvKioKKyAgICAgKiBAcGFyYW0ge0V2ZW50PX0gZXZlbnQKKyAgICAgKiBAcmV0dXJuIHtib29s
ZWFufQorICAgICAqLworICAgIF9ldmFsdWF0ZVNlbGVjdGlvbkluQ29uc29sZTogZnVuY3Rpb24o
ZXZlbnQpCiAgICAgewogICAgICAgICB2YXIgc2VsZWN0aW9uID0gd2luZG93LmdldFNlbGVjdGlv
bigpOwogICAgICAgICBpZiAoc2VsZWN0aW9uLnR5cGUgIT09ICJSYW5nZSIgfHwgc2VsZWN0aW9u
LmlzQ29sbGFwc2VkKQpAQCAtODE0LDcgKzgzOCw3IEBAIFdlYkluc3BlY3Rvci5TY3JpcHRzUGFu
ZWwucHJvdG90eXBlID0gewogICAgIC8qKgogICAgICAqIEBwYXJhbSB7c3RyaW5nfSBidXR0b25J
ZAogICAgICAqIEBwYXJhbSB7c3RyaW5nfSBidXR0b25UaXRsZQotICAgICAqIEBwYXJhbSB7ZnVu
Y3Rpb24oRXZlbnQpfSBoYW5kbGVyCisgICAgICogQHBhcmFtIHtmdW5jdGlvbihFdmVudD0pOmJv
b2xlYW59IGhhbmRsZXIKICAgICAgKiBAcGFyYW0geyFBcnJheS48IVdlYkluc3BlY3Rvci5LZXli
b2FyZFNob3J0Y3V0LkRlc2NyaXB0b3I+fSBzaG9ydGN1dHMKICAgICAgKi8KICAgICBfY3JlYXRl
QnV0dG9uQW5kUmVnaXN0ZXJTaG9ydGN1dHM6IGZ1bmN0aW9uKGJ1dHRvbklkLCBidXR0b25UaXRs
ZSwgaGFuZGxlciwgc2hvcnRjdXRzKQpAQCAtOTU1LDcgKzk3OSwxMSBAQCBXZWJJbnNwZWN0b3Iu
U2NyaXB0c1BhbmVsLnByb3RvdHlwZSA9IHsKICAgICAgICAgdGhpcy5zaWRlYmFyUGFuZXMud2F0
Y2hFeHByZXNzaW9ucy5hZGRFeHByZXNzaW9uKGV4cHJlc3Npb24pOwogICAgIH0sCiAKLSAgICBf
dG9nZ2xlQnJlYWtwb2ludDogZnVuY3Rpb24oKQorICAgIC8qKgorICAgICAqIEBwYXJhbSB7RXZl
bnQ9fSBldmVudAorICAgICAqIEByZXR1cm4ge2Jvb2xlYW59CisgICAgICovCisgICAgX3RvZ2ds
ZUJyZWFrcG9pbnQ6IGZ1bmN0aW9uKGV2ZW50KQogICAgIHsKICAgICAgICAgdmFyIHNvdXJjZUZy
YW1lID0gdGhpcy52aXNpYmxlVmlldzsKICAgICAgICAgaWYgKCFzb3VyY2VGcmFtZSkKQEAgLTk2
OSw3ICs5OTcsMTEgQEAgV2ViSW5zcGVjdG9yLlNjcmlwdHNQYW5lbC5wcm90b3R5cGUgPSB7CiAg
ICAgICAgIHJldHVybiBmYWxzZTsKICAgICB9LAogCi0gICAgX3Nob3dPdXRsaW5lRGlhbG9nOiBm
dW5jdGlvbigpCisgICAgLyoqCisgICAgICogQHBhcmFtIHtFdmVudD19IGV2ZW50CisgICAgICog
QHJldHVybiB7Ym9vbGVhbn0KKyAgICAgKi8KKyAgICBfc2hvd091dGxpbmVEaWFsb2c6IGZ1bmN0
aW9uKGV2ZW50KQogICAgIHsKICAgICAgICAgdmFyIHVpU291cmNlQ29kZSA9IHRoaXMuX2VkaXRv
ckNvbnRhaW5lci5jdXJyZW50RmlsZSgpOwogICAgICAgICBpZiAoIXVpU291cmNlQ29kZSkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvVGltZWxpbmVQYW5l
bC5qcyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvVGltZWxpbmVQYW5lbC5q
cwppbmRleCA3ODcxZWJkZWZhNzZiYjQ4OWViZTY3ZDM2NTA0ZTIzZGE4MWZkOWFkLi42MzJhZWQx
Yjg5YmQxZWE4MTk1YjQwNmFiOTA1ZTVhMWQ1ODE2ZGNiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1RpbWVsaW5lUGFuZWwuanMKKysrIGIvU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9UaW1lbGluZVBhbmVsLmpzCkBAIC0zNDQsNyArMzQ0
LDcgQEAgV2ViSW5zcGVjdG9yLlRpbWVsaW5lUGFuZWwucHJvdG90eXBlID0gewogICAgICAgICB0
aGlzLnJlZ2lzdGVyU2hvcnRjdXRzKFdlYkluc3BlY3Rvci5UaW1lbGluZVBhbmVsRGVzY3JpcHRv
ci5TaG9ydGN1dEtleXMuU3RhcnRTdG9wUmVjb3JkaW5nLCB0aGlzLl90b2dnbGVUaW1lbGluZUJ1
dHRvbkNsaWNrZWQuYmluZCh0aGlzKSk7CiAgICAgICAgIGlmIChJbnNwZWN0b3JGcm9udGVuZEhv
c3QuY2FuU2F2ZSgpKQogICAgICAgICAgICAgdGhpcy5yZWdpc3RlclNob3J0Y3V0cyhXZWJJbnNw
ZWN0b3IuVGltZWxpbmVQYW5lbERlc2NyaXB0b3IuU2hvcnRjdXRLZXlzLlNhdmVUb0ZpbGUsIHRo
aXMuX3NhdmVUb0ZpbGUuYmluZCh0aGlzKSk7Ci0gICAgICAgIHRoaXMucmVnaXN0ZXJTaG9ydGN1
dHMoV2ViSW5zcGVjdG9yLlRpbWVsaW5lUGFuZWxEZXNjcmlwdG9yLlNob3J0Y3V0S2V5cy5Mb2Fk
RnJvbUZpbGUsIHRoaXMuX2ZpbGVTZWxlY3RvckVsZW1lbnQuY2xpY2suYmluZCh0aGlzLl9maWxl
U2VsZWN0b3JFbGVtZW50KSk7CisgICAgICAgIHRoaXMucmVnaXN0ZXJTaG9ydGN1dHMoV2ViSW5z
cGVjdG9yLlRpbWVsaW5lUGFuZWxEZXNjcmlwdG9yLlNob3J0Y3V0S2V5cy5Mb2FkRnJvbUZpbGUs
IHRoaXMuX3NlbGVjdEZpbGVUb0xvYWQuYmluZCh0aGlzKSk7CiAgICAgfSwKIAogICAgIF9jcmVh
dGVGaWxlU2VsZWN0b3I6IGZ1bmN0aW9uKCkKQEAgLTM2MSwxOSArMzYxLDMyIEBAIFdlYkluc3Bl
Y3Rvci5UaW1lbGluZVBhbmVsLnByb3RvdHlwZSA9IHsKICAgICAgICAgdmFyIGNvbnRleHRNZW51
ID0gbmV3IFdlYkluc3BlY3Rvci5Db250ZXh0TWVudShldmVudCk7CiAgICAgICAgIGlmIChJbnNw
ZWN0b3JGcm9udGVuZEhvc3QuY2FuU2F2ZSgpKQogICAgICAgICAgICAgY29udGV4dE1lbnUuYXBw
ZW5kSXRlbShXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIlNhdmUgVGltZWxpbmUgZGF0YVx1MjAyNiIp
LCB0aGlzLl9zYXZlVG9GaWxlLmJpbmQodGhpcyksIHRoaXMuX29wZXJhdGlvbkluUHJvZ3Jlc3Mp
OwotICAgICAgICBjb250ZXh0TWVudS5hcHBlbmRJdGVtKFdlYkluc3BlY3Rvci5VSVN0cmluZygi
TG9hZCBUaW1lbGluZSBkYXRhXHUyMDI2IiksIHRoaXMuX2ZpbGVTZWxlY3RvckVsZW1lbnQuY2xp
Y2suYmluZCh0aGlzLl9maWxlU2VsZWN0b3JFbGVtZW50KSwgdGhpcy5fb3BlcmF0aW9uSW5Qcm9n
cmVzcyk7CisgICAgICAgIGNvbnRleHRNZW51LmFwcGVuZEl0ZW0oV2ViSW5zcGVjdG9yLlVJU3Ry
aW5nKCJMb2FkIFRpbWVsaW5lIGRhdGFcdTIwMjYiKSwgdGhpcy5fc2VsZWN0RmlsZVRvTG9hZC5i
aW5kKHRoaXMpLCB0aGlzLl9vcGVyYXRpb25JblByb2dyZXNzKTsKICAgICAgICAgY29udGV4dE1l
bnUuc2hvdygpOwogICAgIH0sCiAKLSAgICBfc2F2ZVRvRmlsZTogZnVuY3Rpb24oKQorICAgIC8q
KgorICAgICAqIEBwYXJhbSB7RXZlbnQ9fSBldmVudAorICAgICAqIEByZXR1cm4ge2Jvb2xlYW59
CisgICAgICovCisgICAgX3NhdmVUb0ZpbGU6IGZ1bmN0aW9uKGV2ZW50KQogICAgIHsKICAgICAg
ICAgaWYgKHRoaXMuX29wZXJhdGlvbkluUHJvZ3Jlc3MpCi0gICAgICAgICAgICByZXR1cm4gZmFs
c2U7CisgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgdGhpcy5fbW9kZWwuc2F2ZVRv
RmlsZSgpOwogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9LAogCiAgICAgLyoqCisgICAgICog
QHBhcmFtIHtFdmVudD19IGV2ZW50CisgICAgICogQHJldHVybiB7Ym9vbGVhbn0KKyAgICAgKi8K
KyAgICBfc2VsZWN0RmlsZVRvTG9hZDogZnVuY3Rpb24oZXZlbnQpIHsKKyAgICAgICAgdGhpcy5f
ZmlsZVNlbGVjdG9yRWxlbWVudC5jbGljaygpOworICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICB9
LAorCisgICAgLyoqCiAgICAgICogQHBhcmFtIHshRmlsZX0gZmlsZQogICAgICAqLwogICAgIF9s
b2FkRnJvbUZpbGU6IGZ1bmN0aW9uKGZpbGUpCkBAIC01NjAsMTAgKzU3MywxMyBAQCBXZWJJbnNw
ZWN0b3IuVGltZWxpbmVQYW5lbC5wcm90b3R5cGUgPSB7CiAgICAgICAgIH0KICAgICB9LAogCisg
ICAgLyoqCisgICAgICogQHJldHVybiB7Ym9vbGVhbn0KKyAgICAgKi8KICAgICBfdG9nZ2xlVGlt
ZWxpbmVCdXR0b25DbGlja2VkOiBmdW5jdGlvbigpCiAgICAgewogICAgICAgICBpZiAodGhpcy5f
b3BlcmF0aW9uSW5Qcm9ncmVzcykKLSAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAgICAg
ICAgIHJldHVybiB0cnVlOwogICAgICAgICBpZiAodGhpcy50b2dnbGVUaW1lbGluZUJ1dHRvbi50
b2dnbGVkKSB7CiAgICAgICAgICAgICB0aGlzLl9tb2RlbC5zdG9wUmVjb3JkKCk7CiAgICAgICAg
ICAgICB0aGlzLnRvZ2dsZVRpbWVsaW5lQnV0dG9uLnRpdGxlID0gV2ViSW5zcGVjdG9yLlVJU3Ry
aW5nKCJSZWNvcmQiKTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>192736</attachid>
            <date>2013-03-12 07:59:26 -0700</date>
            <delta_ts>2013-03-12 08:21:48 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-112113-20130312185524.patch</filename>
            <type>text/plain</type>
            <size>11369</size>
            <attacher name="Eugene Klyuchnikov">eustas</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ1NTM3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTI4OWE3ZTUxN2ExOTA5
YjcwNDNmOWZlZjU0ZDUyYzRlNGFmYWEwZS4uYjc0NDE4YzRjYjljNTI4ZjE1Zjc5MzAyOTk0OWNk
ZTExNjJiMDNjMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDIxIEBACiAyMDEzLTAzLTEyICBFdWdl
bmUgS2x5dWNobmlrb3YgIDxldXN0YXNAY2hyb21pdW0ub3JnPgogCisgICAgICAgIFdlYiBJbnNw
ZWN0b3I6IFtSRUdSRVNTSU9OXSBTdGVwSW50byAoRjExKSBhbmQgU3RlcE91dCAoU2hpZnQtRjEx
KSBzaG9ydGN1dHMgdG9nZ2xlIEluc3BlY3RvciB3aW5kb3cgZnVsbC1zY3JlZW4gc3RhdGUKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTExMjExMworCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVwZGF0ZWQgaGFu
ZGxlcnMgbWlzc2VkIGluIGZpcnN0IHBhdGNoLiBBZGRlZCBKU0RvY3MgdG8gYWxsIGhhbmRsZXJz
LgorCisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9QYW5lbC5qczogRml4ZWQgSlNEb2Nz
LgorICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvQ2FsbFN0YWNrU2lkZWJhclBhbmUuanM6
CisgICAgICAgIEFkZGVkIHJldHVybiB2YWx1ZXMuIEFkZGVkIEpTRG9jcy4KKyAgICAgICAgKiBp
bnNwZWN0b3IvZnJvbnQtZW5kL1NjcmlwdHNQYW5lbC5qczogRGl0dG8uCisgICAgICAgICogaW5z
cGVjdG9yL2Zyb250LWVuZC9Hb1RvTGluZURpYWxvZy5qczogQWRkZWQgSlNEb2NzLgorICAgICAg
ICAqIGluc3BlY3Rvci9mcm9udC1lbmQvVGltZWxpbmVQYW5lbC5qczogRGl0dG8uCisKKzIwMTMt
MDMtMTIgIEV1Z2VuZSBLbHl1Y2huaWtvdiAgPGV1c3Rhc0BjaHJvbWl1bS5vcmc+CisKICAgICAg
ICAgV2ViIEluc3BlY3RvcjogRml4IEpTRG9jcyBpbiBUaW1lbGluZVBhbmVsLmpzCiAgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTIxMzcKIApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9DYWxsU3RhY2tTaWRlYmFy
UGFuZS5qcyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvQ2FsbFN0YWNrU2lk
ZWJhclBhbmUuanMKaW5kZXggNTIwOTdkZDc0ZTFmMTUyNzQ4MTcwM2UwZTgxOTAzOWRjZWYyY2E2
ZS4uNTJiMjJiZDAwYzA1ZDU5OTM2M2E3YjkxN2Y4NzYwNmI2YzYxODMxMyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9DYWxsU3RhY2tTaWRlYmFyUGFuZS5q
cworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0NhbGxTdGFja1NpZGVi
YXJQYW5lLmpzCkBAIC02OCwyMiArNjgsMzUgQEAgV2ViSW5zcGVjdG9yLkNhbGxTdGFja1NpZGVi
YXJQYW5lLnByb3RvdHlwZSA9IHsKICAgICAgICAgfQogICAgIH0sCiAKLSAgICBfc2VsZWN0TmV4
dENhbGxGcmFtZU9uU3RhY2s6IGZ1bmN0aW9uKCkKKyAgICAvKioKKyAgICAgKiBAcGFyYW0ge0V2
ZW50PX0gZXZlbnQKKyAgICAgKiBAcmV0dXJuIHtib29sZWFufQorICAgICAqLworICAgIF9zZWxl
Y3ROZXh0Q2FsbEZyYW1lT25TdGFjazogZnVuY3Rpb24oZXZlbnQpCiAgICAgewogICAgICAgICB2
YXIgaW5kZXggPSB0aGlzLl9zZWxlY3RlZENhbGxGcmFtZUluZGV4KCk7CiAgICAgICAgIGlmIChp
bmRleCA9PSAtMSkKLSAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgICAgIHJldHVybiB0cnVl
OwogICAgICAgICB0aGlzLl9zZWxlY3RlZFBsYWNhcmRCeUluZGV4KGluZGV4ICsgMSk7CisgICAg
ICAgIHJldHVybiB0cnVlOwogICAgIH0sCiAKLSAgICBfc2VsZWN0UHJldmlvdXNDYWxsRnJhbWVP
blN0YWNrOiBmdW5jdGlvbigpCisgICAgLyoqCisgICAgICogQHBhcmFtIHtFdmVudD19IGV2ZW50
CisgICAgICogQHJldHVybiB7Ym9vbGVhbn0KKyAgICAgKi8KKyAgICBfc2VsZWN0UHJldmlvdXND
YWxsRnJhbWVPblN0YWNrOiBmdW5jdGlvbihldmVudCkKICAgICB7CiAgICAgICAgIHZhciBpbmRl
eCA9IHRoaXMuX3NlbGVjdGVkQ2FsbEZyYW1lSW5kZXgoKTsKICAgICAgICAgaWYgKGluZGV4ID09
IC0xKQotICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAg
ICAgIHRoaXMuX3NlbGVjdGVkUGxhY2FyZEJ5SW5kZXgoaW5kZXggLSAxKTsKKyAgICAgICAgcmV0
dXJuIHRydWU7CiAgICAgfSwKIAorICAgIC8qKgorICAgICAqIEBwYXJhbSB7bnVtYmVyfSBpbmRl
eAorICAgICAqLwogICAgIF9zZWxlY3RlZFBsYWNhcmRCeUluZGV4OiBmdW5jdGlvbihpbmRleCkK
ICAgICB7CiAgICAgICAgIGlmIChpbmRleCA8IDAgfHwgaW5kZXggPj0gdGhpcy5wbGFjYXJkcy5s
ZW5ndGgpCkBAIC05MSw2ICsxMDQsOSBAQCBXZWJJbnNwZWN0b3IuQ2FsbFN0YWNrU2lkZWJhclBh
bmUucHJvdG90eXBlID0gewogICAgICAgICB0aGlzLl9wbGFjYXJkU2VsZWN0ZWQodGhpcy5wbGFj
YXJkc1tpbmRleF0pCiAgICAgfSwKIAorICAgIC8qKgorICAgICAqIEByZXR1cm4ge251bWJlcn0K
KyAgICAgKi8KICAgICBfc2VsZWN0ZWRDYWxsRnJhbWVJbmRleDogZnVuY3Rpb24oKQogICAgIHsK
ICAgICAgICAgaWYgKCF0aGlzLl9tb2RlbC5zZWxlY3RlZENhbGxGcmFtZSgpKQpAQCAtMTE3LDcg
KzEzMyw3IEBAIFdlYkluc3BlY3Rvci5DYWxsU3RhY2tTaWRlYmFyUGFuZS5wcm90b3R5cGUgPSB7
CiAgICAgfSwKIAogICAgIC8qKgotICAgICAqIEBwYXJhbSB7ZnVuY3Rpb24oIUFycmF5LjwhV2Vi
SW5zcGVjdG9yLktleWJvYXJkU2hvcnRjdXQuRGVzY3JpcHRvcj4sIGZ1bmN0aW9uKEtleWJvYXJk
RXZlbnQpKX0gcmVnaXN0ZXJTaG9ydGN1dERlbGVnYXRlCisgICAgICogQHBhcmFtIHtmdW5jdGlv
bighQXJyYXkuPCFXZWJJbnNwZWN0b3IuS2V5Ym9hcmRTaG9ydGN1dC5EZXNjcmlwdG9yPiwgZnVu
Y3Rpb24oRXZlbnQ9KTpib29sZWFuKX0gcmVnaXN0ZXJTaG9ydGN1dERlbGVnYXRlCiAgICAgICov
CiAgICAgcmVnaXN0ZXJTaG9ydGN1dHM6IGZ1bmN0aW9uKHJlZ2lzdGVyU2hvcnRjdXREZWxlZ2F0
ZSkKICAgICB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5k
L0dvVG9MaW5lRGlhbG9nLmpzIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9H
b1RvTGluZURpYWxvZy5qcwppbmRleCBkZTFiOWE2Y2NhYTdjNWU2MTdjOWEwZjYzN2Q1NTk2MzEx
OWQ5NjEwLi40YTE4OTFmNjgxMjE0ZWJkNjQzMjg4YTNiZDdiYTU5ZDJmZjMwY2Q5IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0dvVG9MaW5lRGlhbG9nLmpz
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvR29Ub0xpbmVEaWFsb2cu
anMKQEAgLTY0LDkgKzY0LDEwIEBAIFdlYkluc3BlY3Rvci5Hb1RvTGluZURpYWxvZy5pbnN0YWxs
ID0gZnVuY3Rpb24ocGFuZWwsIHZpZXdHZXR0ZXIpCiAKIC8qKgogICogQHBhcmFtIHtmdW5jdGlv
bigpOj9XZWJJbnNwZWN0b3IuVmlld30gdmlld0dldHRlcgorICogQHBhcmFtIHtFdmVudD19IGV2
ZW50CiAgKiBAcmV0dXJuIHtib29sZWFufQogICovCi1XZWJJbnNwZWN0b3IuR29Ub0xpbmVEaWFs
b2cuX3Nob3cgPSBmdW5jdGlvbih2aWV3R2V0dGVyKQorV2ViSW5zcGVjdG9yLkdvVG9MaW5lRGlh
bG9nLl9zaG93ID0gZnVuY3Rpb24odmlld0dldHRlciwgZXZlbnQpCiB7CiAgICAgdmFyIHNvdXJj
ZVZpZXcgPSB2aWV3R2V0dGVyKCk7CiAgICAgaWYgKCFzb3VyY2VWaWV3IHx8ICFzb3VyY2VWaWV3
LmNhbkhpZ2hsaWdodExpbmUoKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rv
ci9mcm9udC1lbmQvUGFuZWwuanMgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5k
L1BhbmVsLmpzCmluZGV4IDk2MjQyNTI0YTY3ZDdmN2JmOWZlNDZiMzQ0ZjlmM2VjOWJkNzJjMjQu
LmI5N2QxYTBmZDhmZTRhMzI4OGFjYzQ1NjNiZGZjY2IyMjM0NDNjM2QgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvUGFuZWwuanMKKysrIGIvU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9QYW5lbC5qcwpAQCAtMzksNyArMzksNyBAQCBXZWJJ
bnNwZWN0b3IuUGFuZWwgPSBmdW5jdGlvbihuYW1lKQogICAgIHRoaXMuZWxlbWVudC5hZGRTdHls
ZUNsYXNzKG5hbWUpOwogICAgIHRoaXMuX3BhbmVsTmFtZSA9IG5hbWU7CiAKLSAgICB0aGlzLl9z
aG9ydGN1dHMgPSB7fTsKKyAgICB0aGlzLl9zaG9ydGN1dHMgPSAvKiogIU9iamVjdC48bnVtYmVy
LCBmdW5jdGlvbihFdmVudD0pOmJvb2xlYW4+ICovICh7fSk7CiAKICAgICBXZWJJbnNwZWN0b3Iu
c2V0dGluZ3NbdGhpcy5fc2lkZWJhcldpZHRoU2V0dGluZ05hbWUoKV0gPSBXZWJJbnNwZWN0b3Iu
c2V0dGluZ3MuY3JlYXRlU2V0dGluZyh0aGlzLl9zaWRlYmFyV2lkdGhTZXR0aW5nTmFtZSgpLCB1
bmRlZmluZWQpOwogfQpAQCAtMjU3LDcgKzI1Nyw3IEBAIFdlYkluc3BlY3Rvci5QYW5lbC5wcm90
b3R5cGUgPSB7CiAKICAgICAvKioKICAgICAgKiBAcGFyYW0geyFBcnJheS48IVdlYkluc3BlY3Rv
ci5LZXlib2FyZFNob3J0Y3V0LkRlc2NyaXB0b3I+fSBrZXlzCi0gICAgICogQHBhcmFtIHtmdW5j
dGlvbihLZXlib2FyZEV2ZW50KTpib29sZWFufSBoYW5kbGVyCisgICAgICogQHBhcmFtIHtmdW5j
dGlvbihFdmVudD0pOmJvb2xlYW59IGhhbmRsZXIKICAgICAgKi8KICAgICByZWdpc3RlclNob3J0
Y3V0czogZnVuY3Rpb24oa2V5cywgaGFuZGxlcikKICAgICB7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1NjcmlwdHNQYW5lbC5qcyBiL1NvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU2NyaXB0c1BhbmVsLmpzCmluZGV4IGU1YjE1Zjg4Zjc4
ZGY0OGQyOTYwMTAyZTM1ZTIwZmMxNmZmMWFmMjkuLmEzOGEzMmE0Y2RkMDNmMThiMTNjZmE2N2Fj
MTg4MzMwYzkwMDMwYmQgMTAwNzU1Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9u
dC1lbmQvU2NyaXB0c1BhbmVsLmpzCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9u
dC1lbmQvU2NyaXB0c1BhbmVsLmpzCkBAIC02NzQsNyArNjc0LDExIEBAIFdlYkluc3BlY3Rvci5T
Y3JpcHRzUGFuZWwucHJvdG90eXBlID0gewogICAgICAgICBXZWJJbnNwZWN0b3Iuc2V0dGluZ3Mu
cGF1c2VPbkV4Y2VwdGlvblN0YXRlU3RyaW5nLnNldChuZXh0U3RhdGVNYXBbdGhpcy5fcGF1c2VP
bkV4Y2VwdGlvbkJ1dHRvbi5zdGF0ZV0pOwogICAgIH0sCiAKLSAgICBfdG9nZ2xlUGF1c2U6IGZ1
bmN0aW9uKCkKKyAgICAvKioKKyAgICAgKiBAcGFyYW0ge0V2ZW50PX0gZXZlbnQKKyAgICAgKiBA
cmV0dXJuIHtib29sZWFufQorICAgICAqLworICAgIF90b2dnbGVQYXVzZTogZnVuY3Rpb24oZXZl
bnQpCiAgICAgewogICAgICAgICBpZiAodGhpcy5fcGF1c2VkKSB7CiAgICAgICAgICAgICB0aGlz
Ll9wYXVzZWQgPSBmYWxzZTsKQEAgLTY4NywxMiArNjkxLDE3IEBAIFdlYkluc3BlY3Rvci5TY3Jp
cHRzUGFuZWwucHJvdG90eXBlID0gewogICAgICAgICB9CiAKICAgICAgICAgdGhpcy5fY2xlYXJJ
bnRlcmZhY2UoKTsKKyAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgfSwKIAotICAgIF9zdGVwT3Zl
ckNsaWNrZWQ6IGZ1bmN0aW9uKCkKKyAgICAvKioKKyAgICAgKiBAcGFyYW0ge0V2ZW50PX0gZXZl
bnQKKyAgICAgKiBAcmV0dXJuIHtib29sZWFufQorICAgICAqLworICAgIF9zdGVwT3ZlckNsaWNr
ZWQ6IGZ1bmN0aW9uKGV2ZW50KQogICAgIHsKICAgICAgICAgaWYgKCF0aGlzLl9wYXVzZWQpCi0g
ICAgICAgICAgICByZXR1cm47CisgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKIAogICAgICAgICB0
aGlzLl9wYXVzZWQgPSBmYWxzZTsKICAgICAgICAgdGhpcy5fc3RlcHBpbmcgPSB0cnVlOwpAQCAt
NzAwLDEyICs3MDksMTcgQEAgV2ViSW5zcGVjdG9yLlNjcmlwdHNQYW5lbC5wcm90b3R5cGUgPSB7
CiAgICAgICAgIHRoaXMuX2NsZWFySW50ZXJmYWNlKCk7CiAKICAgICAgICAgRGVidWdnZXJBZ2Vu
dC5zdGVwT3ZlcigpOworICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9LAogCi0gICAgX3N0ZXBJ
bnRvQ2xpY2tlZDogZnVuY3Rpb24oKQorICAgIC8qKgorICAgICAqIEBwYXJhbSB7RXZlbnQ9fSBl
dmVudAorICAgICAqIEByZXR1cm4ge2Jvb2xlYW59CisgICAgICovCisgICAgX3N0ZXBJbnRvQ2xp
Y2tlZDogZnVuY3Rpb24oZXZlbnQpCiAgICAgewogICAgICAgICBpZiAoIXRoaXMuX3BhdXNlZCkK
LSAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgICAgIHJldHVybiB0cnVlOwogCiAgICAgICAg
IHRoaXMuX3BhdXNlZCA9IGZhbHNlOwogICAgICAgICB0aGlzLl9zdGVwcGluZyA9IHRydWU7CkBA
IC03MTMsMTIgKzcyNywxNyBAQCBXZWJJbnNwZWN0b3IuU2NyaXB0c1BhbmVsLnByb3RvdHlwZSA9
IHsKICAgICAgICAgdGhpcy5fY2xlYXJJbnRlcmZhY2UoKTsKIAogICAgICAgICBEZWJ1Z2dlckFn
ZW50LnN0ZXBJbnRvKCk7CisgICAgICAgIHJldHVybiB0cnVlOwogICAgIH0sCiAKLSAgICBfc3Rl
cE91dENsaWNrZWQ6IGZ1bmN0aW9uKCkKKyAgICAvKioKKyAgICAgKiBAcGFyYW0ge0V2ZW50PX0g
ZXZlbnQKKyAgICAgKiBAcmV0dXJuIHtib29sZWFufQorICAgICAqLworICAgIF9zdGVwT3V0Q2xp
Y2tlZDogZnVuY3Rpb24oZXZlbnQpCiAgICAgewogICAgICAgICBpZiAoIXRoaXMuX3BhdXNlZCkK
LSAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgICAgIHJldHVybiB0cnVlOwogCiAgICAgICAg
IHRoaXMuX3BhdXNlZCA9IGZhbHNlOwogICAgICAgICB0aGlzLl9zdGVwcGluZyA9IHRydWU7CkBA
IC03MjYsNiArNzQ1LDcgQEAgV2ViSW5zcGVjdG9yLlNjcmlwdHNQYW5lbC5wcm90b3R5cGUgPSB7
CiAgICAgICAgIHRoaXMuX2NsZWFySW50ZXJmYWNlKCk7CiAKICAgICAgICAgRGVidWdnZXJBZ2Vu
dC5zdGVwT3V0KCk7CisgICAgICAgIHJldHVybiB0cnVlOwogICAgIH0sCiAKICAgICBfdG9nZ2xl
QnJlYWtwb2ludHNDbGlja2VkOiBmdW5jdGlvbihldmVudCkKQEAgLTc0OCw3ICs3NjgsMTEgQEAg
V2ViSW5zcGVjdG9yLlNjcmlwdHNQYW5lbC5wcm90b3R5cGUgPSB7CiAgICAgICAgIH0KICAgICB9
LAogCi0gICAgX2V2YWx1YXRlU2VsZWN0aW9uSW5Db25zb2xlOiBmdW5jdGlvbigpCisgICAgLyoq
CisgICAgICogQHBhcmFtIHtFdmVudD19IGV2ZW50CisgICAgICogQHJldHVybiB7Ym9vbGVhbn0K
KyAgICAgKi8KKyAgICBfZXZhbHVhdGVTZWxlY3Rpb25JbkNvbnNvbGU6IGZ1bmN0aW9uKGV2ZW50
KQogICAgIHsKICAgICAgICAgdmFyIHNlbGVjdGlvbiA9IHdpbmRvdy5nZXRTZWxlY3Rpb24oKTsK
ICAgICAgICAgaWYgKHNlbGVjdGlvbi50eXBlICE9PSAiUmFuZ2UiIHx8IHNlbGVjdGlvbi5pc0Nv
bGxhcHNlZCkKQEAgLTgxNCw3ICs4MzgsNyBAQCBXZWJJbnNwZWN0b3IuU2NyaXB0c1BhbmVsLnBy
b3RvdHlwZSA9IHsKICAgICAvKioKICAgICAgKiBAcGFyYW0ge3N0cmluZ30gYnV0dG9uSWQKICAg
ICAgKiBAcGFyYW0ge3N0cmluZ30gYnV0dG9uVGl0bGUKLSAgICAgKiBAcGFyYW0ge2Z1bmN0aW9u
KEV2ZW50KX0gaGFuZGxlcgorICAgICAqIEBwYXJhbSB7ZnVuY3Rpb24oRXZlbnQ9KTpib29sZWFu
fSBoYW5kbGVyCiAgICAgICogQHBhcmFtIHshQXJyYXkuPCFXZWJJbnNwZWN0b3IuS2V5Ym9hcmRT
aG9ydGN1dC5EZXNjcmlwdG9yPn0gc2hvcnRjdXRzCiAgICAgICovCiAgICAgX2NyZWF0ZUJ1dHRv
bkFuZFJlZ2lzdGVyU2hvcnRjdXRzOiBmdW5jdGlvbihidXR0b25JZCwgYnV0dG9uVGl0bGUsIGhh
bmRsZXIsIHNob3J0Y3V0cykKQEAgLTk1NSw2ICs5NzksOSBAQCBXZWJJbnNwZWN0b3IuU2NyaXB0
c1BhbmVsLnByb3RvdHlwZSA9IHsKICAgICAgICAgdGhpcy5zaWRlYmFyUGFuZXMud2F0Y2hFeHBy
ZXNzaW9ucy5hZGRFeHByZXNzaW9uKGV4cHJlc3Npb24pOwogICAgIH0sCiAKKyAgICAvKioKKyAg
ICAgKiBAcmV0dXJuIHtib29sZWFufQorICAgICAqLwogICAgIF90b2dnbGVCcmVha3BvaW50OiBm
dW5jdGlvbigpCiAgICAgewogICAgICAgICB2YXIgc291cmNlRnJhbWUgPSB0aGlzLnZpc2libGVW
aWV3OwpAQCAtOTY5LDcgKzk5NiwxMSBAQCBXZWJJbnNwZWN0b3IuU2NyaXB0c1BhbmVsLnByb3Rv
dHlwZSA9IHsKICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIH0sCiAKLSAgICBfc2hvd091dGxp
bmVEaWFsb2c6IGZ1bmN0aW9uKCkKKyAgICAvKioKKyAgICAgKiBAcGFyYW0ge0V2ZW50PX0gZXZl
bnQKKyAgICAgKiBAcmV0dXJuIHtib29sZWFufQorICAgICAqLworICAgIF9zaG93T3V0bGluZURp
YWxvZzogZnVuY3Rpb24oZXZlbnQpCiAgICAgewogICAgICAgICB2YXIgdWlTb3VyY2VDb2RlID0g
dGhpcy5fZWRpdG9yQ29udGFpbmVyLmN1cnJlbnRGaWxlKCk7CiAgICAgICAgIGlmICghdWlTb3Vy
Y2VDb2RlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9U
aW1lbGluZVBhbmVsLmpzIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9UaW1l
bGluZVBhbmVsLmpzCmluZGV4IDc4NzFlYmRlZmE3NmJiNDg5ZWJlNjdkMzY1MDRlMjNkYTgxZmQ5
YWQuLjYzMmFlZDFiODliZDFlYTgxOTViNDA2YWI5MDVlNWExZDU4MTZkY2IgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvVGltZWxpbmVQYW5lbC5qcworKysg
Yi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1RpbWVsaW5lUGFuZWwuanMKQEAg
LTM0NCw3ICszNDQsNyBAQCBXZWJJbnNwZWN0b3IuVGltZWxpbmVQYW5lbC5wcm90b3R5cGUgPSB7
CiAgICAgICAgIHRoaXMucmVnaXN0ZXJTaG9ydGN1dHMoV2ViSW5zcGVjdG9yLlRpbWVsaW5lUGFu
ZWxEZXNjcmlwdG9yLlNob3J0Y3V0S2V5cy5TdGFydFN0b3BSZWNvcmRpbmcsIHRoaXMuX3RvZ2ds
ZVRpbWVsaW5lQnV0dG9uQ2xpY2tlZC5iaW5kKHRoaXMpKTsKICAgICAgICAgaWYgKEluc3BlY3Rv
ckZyb250ZW5kSG9zdC5jYW5TYXZlKCkpCiAgICAgICAgICAgICB0aGlzLnJlZ2lzdGVyU2hvcnRj
dXRzKFdlYkluc3BlY3Rvci5UaW1lbGluZVBhbmVsRGVzY3JpcHRvci5TaG9ydGN1dEtleXMuU2F2
ZVRvRmlsZSwgdGhpcy5fc2F2ZVRvRmlsZS5iaW5kKHRoaXMpKTsKLSAgICAgICAgdGhpcy5yZWdp
c3RlclNob3J0Y3V0cyhXZWJJbnNwZWN0b3IuVGltZWxpbmVQYW5lbERlc2NyaXB0b3IuU2hvcnRj
dXRLZXlzLkxvYWRGcm9tRmlsZSwgdGhpcy5fZmlsZVNlbGVjdG9yRWxlbWVudC5jbGljay5iaW5k
KHRoaXMuX2ZpbGVTZWxlY3RvckVsZW1lbnQpKTsKKyAgICAgICAgdGhpcy5yZWdpc3RlclNob3J0
Y3V0cyhXZWJJbnNwZWN0b3IuVGltZWxpbmVQYW5lbERlc2NyaXB0b3IuU2hvcnRjdXRLZXlzLkxv
YWRGcm9tRmlsZSwgdGhpcy5fc2VsZWN0RmlsZVRvTG9hZC5iaW5kKHRoaXMpKTsKICAgICB9LAog
CiAgICAgX2NyZWF0ZUZpbGVTZWxlY3RvcjogZnVuY3Rpb24oKQpAQCAtMzYxLDE5ICszNjEsMzIg
QEAgV2ViSW5zcGVjdG9yLlRpbWVsaW5lUGFuZWwucHJvdG90eXBlID0gewogICAgICAgICB2YXIg
Y29udGV4dE1lbnUgPSBuZXcgV2ViSW5zcGVjdG9yLkNvbnRleHRNZW51KGV2ZW50KTsKICAgICAg
ICAgaWYgKEluc3BlY3RvckZyb250ZW5kSG9zdC5jYW5TYXZlKCkpCiAgICAgICAgICAgICBjb250
ZXh0TWVudS5hcHBlbmRJdGVtKFdlYkluc3BlY3Rvci5VSVN0cmluZygiU2F2ZSBUaW1lbGluZSBk
YXRhXHUyMDI2IiksIHRoaXMuX3NhdmVUb0ZpbGUuYmluZCh0aGlzKSwgdGhpcy5fb3BlcmF0aW9u
SW5Qcm9ncmVzcyk7Ci0gICAgICAgIGNvbnRleHRNZW51LmFwcGVuZEl0ZW0oV2ViSW5zcGVjdG9y
LlVJU3RyaW5nKCJMb2FkIFRpbWVsaW5lIGRhdGFcdTIwMjYiKSwgdGhpcy5fZmlsZVNlbGVjdG9y
RWxlbWVudC5jbGljay5iaW5kKHRoaXMuX2ZpbGVTZWxlY3RvckVsZW1lbnQpLCB0aGlzLl9vcGVy
YXRpb25JblByb2dyZXNzKTsKKyAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kSXRlbShXZWJJbnNw
ZWN0b3IuVUlTdHJpbmcoIkxvYWQgVGltZWxpbmUgZGF0YVx1MjAyNiIpLCB0aGlzLl9zZWxlY3RG
aWxlVG9Mb2FkLmJpbmQodGhpcyksIHRoaXMuX29wZXJhdGlvbkluUHJvZ3Jlc3MpOwogICAgICAg
ICBjb250ZXh0TWVudS5zaG93KCk7CiAgICAgfSwKIAotICAgIF9zYXZlVG9GaWxlOiBmdW5jdGlv
bigpCisgICAgLyoqCisgICAgICogQHBhcmFtIHtFdmVudD19IGV2ZW50CisgICAgICogQHJldHVy
biB7Ym9vbGVhbn0KKyAgICAgKi8KKyAgICBfc2F2ZVRvRmlsZTogZnVuY3Rpb24oZXZlbnQpCiAg
ICAgewogICAgICAgICBpZiAodGhpcy5fb3BlcmF0aW9uSW5Qcm9ncmVzcykKLSAgICAgICAgICAg
IHJldHVybiBmYWxzZTsKKyAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgICB0aGlzLl9t
b2RlbC5zYXZlVG9GaWxlKCk7CiAgICAgICAgIHJldHVybiB0cnVlOwogICAgIH0sCiAKICAgICAv
KioKKyAgICAgKiBAcGFyYW0ge0V2ZW50PX0gZXZlbnQKKyAgICAgKiBAcmV0dXJuIHtib29sZWFu
fQorICAgICAqLworICAgIF9zZWxlY3RGaWxlVG9Mb2FkOiBmdW5jdGlvbihldmVudCkgeworICAg
ICAgICB0aGlzLl9maWxlU2VsZWN0b3JFbGVtZW50LmNsaWNrKCk7CisgICAgICAgIHJldHVybiB0
cnVlOworICAgIH0sCisKKyAgICAvKioKICAgICAgKiBAcGFyYW0geyFGaWxlfSBmaWxlCiAgICAg
ICovCiAgICAgX2xvYWRGcm9tRmlsZTogZnVuY3Rpb24oZmlsZSkKQEAgLTU2MCwxMCArNTczLDEz
IEBAIFdlYkluc3BlY3Rvci5UaW1lbGluZVBhbmVsLnByb3RvdHlwZSA9IHsKICAgICAgICAgfQog
ICAgIH0sCiAKKyAgICAvKioKKyAgICAgKiBAcmV0dXJuIHtib29sZWFufQorICAgICAqLwogICAg
IF90b2dnbGVUaW1lbGluZUJ1dHRvbkNsaWNrZWQ6IGZ1bmN0aW9uKCkKICAgICB7CiAgICAgICAg
IGlmICh0aGlzLl9vcGVyYXRpb25JblByb2dyZXNzKQotICAgICAgICAgICAgcmV0dXJuIGZhbHNl
OworICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgIGlmICh0aGlzLnRvZ2dsZVRpbWVs
aW5lQnV0dG9uLnRvZ2dsZWQpIHsKICAgICAgICAgICAgIHRoaXMuX21vZGVsLnN0b3BSZWNvcmQo
KTsKICAgICAgICAgICAgIHRoaXMudG9nZ2xlVGltZWxpbmVCdXR0b24udGl0bGUgPSBXZWJJbnNw
ZWN0b3IuVUlTdHJpbmcoIlJlY29yZCIpOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>