<?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>109154</bug_id>
          
          <creation_ts>2013-02-07 01:22:17 -0800</creation_ts>
          <short_desc>Web Inspector: home button behaviour is wrong in DTE</short_desc>
          <delta_ts>2013-02-18 01:30:26 -0800</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>
          
          <blocked>109416</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Andrey Lushnikov">lushnikov</reporter>
          <assigned_to name="Andrey Lushnikov">lushnikov</assigned_to>
          <cc>apavlov</cc>
    
    <cc>gavinp</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>haraken</cc>
    
    <cc>keishi</cc>
    
    <cc>loislo</cc>
    
    <cc>pfeldman</cc>
    
    <cc>pmuellr</cc>
    
    <cc>rakuco</cc>
    
    <cc>schenney</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>827164</commentid>
    <comment_count>0</comment_count>
    <who name="Andrey Lushnikov">lushnikov</who>
    <bug_when>2013-02-07 01:22:17 -0800</bug_when>
    <thetext>Home key button should trigger between first non-blank character of the line and first character of the line.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>827165</commentid>
    <comment_count>1</comment_count>
      <attachid>187022</attachid>
    <who name="Andrey Lushnikov">lushnikov</who>
    <bug_when>2013-02-07 01:25:33 -0800</bug_when>
    <thetext>Created attachment 187022
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>827188</commentid>
    <comment_count>2</comment_count>
      <attachid>187022</attachid>
    <who name="Vsevolod Vlasov">vsevik</who>
    <bug_when>2013-02-07 01:47:30 -0800</bug_when>
    <thetext>Comment on attachment 187022
Patch

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

We should test this.

&gt; Source/WebCore/inspector/front-end/DefaultTextEditor.js:1411
&gt; +        var firstNonblankCharacter = 0;

NonBlank</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>827219</commentid>
    <comment_count>3</comment_count>
      <attachid>187032</attachid>
    <who name="Andrey Lushnikov">lushnikov</who>
    <bug_when>2013-02-07 02:46:17 -0800</bug_when>
    <thetext>Created attachment 187032
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>827223</commentid>
    <comment_count>4</comment_count>
    <who name="Andrey Lushnikov">lushnikov</who>
    <bug_when>2013-02-07 02:48:02 -0800</bug_when>
    <thetext>*** Bug 109150 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>827317</commentid>
    <comment_count>5</comment_count>
      <attachid>187032</attachid>
    <who name="Vsevolod Vlasov">vsevik</who>
    <bug_when>2013-02-07 04:32:56 -0800</bug_when>
    <thetext>Comment on attachment 187032
Patch

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

&gt; LayoutTests/platform/mac/TestExpectations:257
&gt; +inspector/editor/text-editor-home-button.html [ Skip ]

Skip is actually not neccesary here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>827468</commentid>
    <comment_count>6</comment_count>
      <attachid>187032</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-02-07 07:01:45 -0800</bug_when>
    <thetext>Comment on attachment 187032
Patch

Rejecting attachment 187032 from commit-queue.

Failed to run &quot;[&apos;/mnt/git/webkit-commit-queue/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=queues.webkit.org&apos;, &apos;--bot-id=gce-cq-04&apos;, &apos;land-attachment&apos;, &apos;--force-clean&apos;, &apos;--non-interactive&apos;, &apos;--parent-command=commit-queue&apos;, 187032, &apos;--port=chromium-xvfb&apos;]&quot; exit_code: 2 cwd: /mnt/git/webkit-commit-queue

Last 500 characters of output:
WebKit/chromium/v8 --revision 13610 --non-interactive --force --accept theirs-conflict --ignore-externals&apos; in &apos;/mnt/git/webkit-commit-queue/Source/WebKit/chromium&apos;
33&gt;At revision 13610.

________ running &apos;/usr/bin/python tools/clang/scripts/update.py --mac-only&apos; in &apos;/mnt/git/webkit-commit-queue/Source/WebKit/chromium&apos;

________ running &apos;/usr/bin/python gyp_webkit&apos; in &apos;/mnt/git/webkit-commit-queue/Source/WebKit/chromium&apos;
Updating webkit projects from gyp files...
Total errors found: 0 in 3 files

Full output: http://queues.webkit.org/results/16428199</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>827488</commentid>
    <comment_count>7</comment_count>
      <attachid>187104</attachid>
    <who name="Andrey Lushnikov">lushnikov</who>
    <bug_when>2013-02-07 07:19:51 -0800</bug_when>
    <thetext>Created attachment 187104
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>827628</commentid>
    <comment_count>8</comment_count>
      <attachid>187104</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-02-07 09:48:18 -0800</bug_when>
    <thetext>Comment on attachment 187104
Patch

Clearing flags on attachment: 187104

Committed r142142: &lt;http://trac.webkit.org/changeset/142142&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>827629</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-02-07 09:48:24 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>827831</commentid>
    <comment_count>10</comment_count>
    <who name="Gavin Peters">gavinp</who>
    <bug_when>2013-02-07 13:12:30 -0800</bug_when>
    <thetext>Reverted r142142 for reason:

Mac expectations were not right.

Committed r142167: &lt;http://trac.webkit.org/changeset/142167&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>827833</commentid>
    <comment_count>11</comment_count>
    <who name="Gavin Peters">gavinp</who>
    <bug_when>2013-02-07 13:13:23 -0800</bug_when>
    <thetext>See  See http://test-results.appspot.com/dashboards/flakiness_dashboard.html#tests=inspector-protocol%2Fnmi-webaudio-leak-test.html and http://test-results.appspot.com/dashboards/flakiness_dashboard.html#tests=inspector-protocol%2Fnmi-webaudio.html .</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>828149</commentid>
    <comment_count>12</comment_count>
    <who name="Vsevolod Vlasov">vsevik</who>
    <bug_when>2013-02-07 20:57:43 -0800</bug_when>
    <thetext>Correct flakiness dashboard link: http://test-results.appspot.com/dashboards/flakiness_dashboard.html#tests=inspector%2Feditor%2Ftext-editor-home-button.html



Actual result:
This test verifies that home button triggers selection between first symbol of the line and first non-blank symbol of the line.

function foo()
{
    return 42;
}

Running: testFirstNonBlankCharacter
{&quot;startLine&quot;:2,&quot;startColumn&quot;:8,&quot;endLine&quot;:2,&quot;endColumn&quot;:8}
{&quot;startLine&quot;:2,&quot;startColumn&quot;:4,&quot;endLine&quot;:2,&quot;endColumn&quot;:4}

Running: testFirstNonBlankCharacterFromWhitespace
{&quot;startLine&quot;:2,&quot;startColumn&quot;:2,&quot;endLine&quot;:2,&quot;endColumn&quot;:2}
{&quot;startLine&quot;:2,&quot;startColumn&quot;:4,&quot;endLine&quot;:2,&quot;endColumn&quot;:4}

Running: testHomeButtonTriggering
{&quot;startLine&quot;:2,&quot;startColumn&quot;:2,&quot;endLine&quot;:2,&quot;endColumn&quot;:2}
{&quot;startLine&quot;:2,&quot;startColumn&quot;:4,&quot;endLine&quot;:2,&quot;endColumn&quot;:4}
{&quot;startLine&quot;:2,&quot;startColumn&quot;:0,&quot;endLine&quot;:2,&quot;endColumn&quot;:0}
{&quot;startLine&quot;:2,&quot;startColumn&quot;:4,&quot;endLine&quot;:2,&quot;endColumn&quot;:4}

Running: testHomeButtonDoesNotChangeCursor
{&quot;startLine&quot;:0,&quot;startColumn&quot;:2,&quot;endLine&quot;:0,&quot;endColumn&quot;:2}
{&quot;startLine&quot;:0,&quot;startColumn&quot;:0,&quot;endLine&quot;:0,&quot;endColumn&quot;:0}
{&quot;startLine&quot;:0,&quot;startColumn&quot;:0,&quot;endLine&quot;:0,&quot;endColumn&quot;:0}

Running: testHomeButtonWithShift
{&quot;startLine&quot;:0,&quot;startColumn&quot;:0,&quot;endLine&quot;:2,&quot;endColumn&quot;:8}
{&quot;startLine&quot;:0,&quot;startColumn&quot;:0,&quot;endLine&quot;:2,&quot;endColumn&quot;:4}
{&quot;startLine&quot;:0,&quot;startColumn&quot;:0,&quot;endLine&quot;:2,&quot;endColumn&quot;:4}
{&quot;startLine&quot;:0,&quot;startColumn&quot;:0,&quot;endLine&quot;:2,&quot;endColumn&quot;:4}

Running: testHomeButtonWithShiftInversed
{&quot;startLine&quot;:3,&quot;startColumn&quot;:1,&quot;endLine&quot;:2,&quot;endColumn&quot;:8}
{&quot;startLine&quot;:3,&quot;startColumn&quot;:1,&quot;endLine&quot;:2,&quot;endColumn&quot;:4}
{&quot;startLine&quot;:3,&quot;startColumn&quot;:1,&quot;endLine&quot;:2,&quot;endColumn&quot;:0}
{&quot;startLine&quot;:3,&quot;startColumn&quot;:1,&quot;endLine&quot;:2,&quot;endColumn&quot;:4}




Diff:
&lt; {&quot;startLine&quot;:0,&quot;startColumn&quot;:0,&quot;endLine&quot;:2,&quot;endColumn&quot;:0}
---
&gt; {&quot;startLine&quot;:0,&quot;startColumn&quot;:0,&quot;endLine&quot;:2,&quot;endColumn&quot;:4}</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>828350</commentid>
    <comment_count>13</comment_count>
      <attachid>187271</attachid>
    <who name="Andrey Lushnikov">lushnikov</who>
    <bug_when>2013-02-08 02:10:42 -0800</bug_when>
    <thetext>Created attachment 187271
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>828448</commentid>
    <comment_count>14</comment_count>
      <attachid>187271</attachid>
    <who name="Vsevolod Vlasov">vsevik</who>
    <bug_when>2013-02-08 04:54:55 -0800</bug_when>
    <thetext>Comment on attachment 187271
Patch

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

&gt; LayoutTests/inspector/editor/text-editor-home-button-expected.txt:28
&gt; +Running: testHomeButtonTriggering

Toggling</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>828495</commentid>
    <comment_count>15</comment_count>
      <attachid>187301</attachid>
    <who name="Andrey Lushnikov">lushnikov</who>
    <bug_when>2013-02-08 06:02:39 -0800</bug_when>
    <thetext>Created attachment 187301
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>829499</commentid>
    <comment_count>16</comment_count>
      <attachid>187301</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-02-11 01:35:54 -0800</bug_when>
    <thetext>Comment on attachment 187301
Patch

Clearing flags on attachment: 187301

Committed r142439: &lt;http://trac.webkit.org/changeset/142439&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>829500</commentid>
    <comment_count>17</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-02-11 01:36:00 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>829564</commentid>
    <comment_count>18</comment_count>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2013-02-11 03:49:31 -0800</bug_when>
    <thetext>inspector/editor/text-editor-home-button.html is failing on Mac. I&apos;ll mark the test as [Failure], so please take a look.

https://bugs.webkit.org/show_bug.cgi?id=109416</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>829726</commentid>
    <comment_count>19</comment_count>
    <who name="Stephen Chenney">schenney</who>
    <bug_when>2013-02-11 08:38:46 -0800</bug_when>
    <thetext>The test is failing on all Chromium Mac platforms.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>835184</commentid>
    <comment_count>20</comment_count>
    <who name="Andrey Lushnikov">lushnikov</who>
    <bug_when>2013-02-18 00:29:39 -0800</bug_when>
    <thetext>

*** This bug has been marked as a duplicate of bug 109416 ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>835221</commentid>
    <comment_count>21</comment_count>
    <who name="Vsevolod Vlasov">vsevik</who>
    <bug_when>2013-02-18 01:30:26 -0800</bug_when>
    <thetext>It is not correct to mark this bug as a duplicate of that one.
This one is about fixing home button behavior and it is resolved fixed now.
That one is about failing test.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>187022</attachid>
            <date>2013-02-07 01:25:33 -0800</date>
            <delta_ts>2013-02-07 02:46:14 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-109154-20130207132208.patch</filename>
            <type>text/plain</type>
            <size>2726</size>
            <attacher name="Andrey Lushnikov">lushnikov</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQyMDY3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTljOGRlNmQ0ZDJiMzRj
OWQ3MzE3Mzg3N2JiYjA1NjE3MGFhOTAxNS4uOTI1YTYyZDNhYTcwZjg5Yjc3NDVjMzcyZmVjMjVm
MTFjNjM2ZTk1MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDEzLTAyLTA3ICBBbmRy
ZXkgTHVzaG5pa292ICA8bHVzaG5pa292QGNocm9taXVtLm9yZz4KKworICAgICAgICBXZWIgSW5z
cGVjdG9yOiBob21lIGJ1dHRvbiBiZWhhdmlvdXIgaXMgd3JvbmcgaW4gRFRFCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDkxNTQKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBObyBuZXcgdGVzdHMuCisKKyAg
ICAgICAgSGFuZGxlIGhvbWUga2V5IHNob3J0Y3V0IGV4cGxpY2l0bHkgaW4gVGV4dEVkaXRvck1h
aW5QYW5lbC4KKworICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvRGVmYXVsdFRleHRFZGl0
b3IuanM6CisgICAgICAgIChXZWJJbnNwZWN0b3IuVGV4dEVkaXRvck1haW5QYW5lbC5wcm90b3R5
cGUuX3JlZ2lzdGVyU2hvcnRjdXRzKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5UZXh0RWRpdG9y
TWFpblBhbmVsLnByb3RvdHlwZS5faGFuZGxlSG9tZUtleSk6CisKIDIwMTMtMDItMDYgIFRvbSBT
ZXBleiAgPHRzZXBlekBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgZG9jdW1lbnQucmVmZXJyZXIg
bGVha2FnZSB3aXRoIFhTUyBBdWRpdG9yIHBhZ2UgYmxvY2sKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvRGVmYXVsdFRleHRFZGl0b3IuanMgYi9Tb3VyY2Uv
V2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0RlZmF1bHRUZXh0RWRpdG9yLmpzCmluZGV4IDY2
OTE0MjlhMjZkMTU2NzY1YjQ1YjA5ZDJkZWU3MGE1ZDFiZTk2ODEuLjc4YTI5OGU4YWExNWNiYzM0
NmIxMGIwZTBhYWEwNjc1ZTk1MjI3N2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3Bl
Y3Rvci9mcm9udC1lbmQvRGVmYXVsdFRleHRFZGl0b3IuanMKKysrIGIvU291cmNlL1dlYkNvcmUv
aW5zcGVjdG9yL2Zyb250LWVuZC9EZWZhdWx0VGV4dEVkaXRvci5qcwpAQCAtMTM5NSw2ICsxMzk1
LDM1IEBAIFdlYkluc3BlY3Rvci5UZXh0RWRpdG9yTWFpblBhbmVsLnByb3RvdHlwZSA9IHsKICAg
ICAgICAgdmFyIGhhbmRsZVNoaWZ0VGFiS2V5ID0gdGhpcy5faGFuZGxlVGFiS2V5UHJlc3MuYmlu
ZCh0aGlzLCB0cnVlKTsKICAgICAgICAgdGhpcy5fc2hvcnRjdXRzW1dlYkluc3BlY3Rvci5LZXli
b2FyZFNob3J0Y3V0Lm1ha2VLZXkoa2V5cy5UYWIuY29kZSldID0gaGFuZGxlVGFiS2V5OwogICAg
ICAgICB0aGlzLl9zaG9ydGN1dHNbV2ViSW5zcGVjdG9yLktleWJvYXJkU2hvcnRjdXQubWFrZUtl
eShrZXlzLlRhYi5jb2RlLCBtb2RpZmllcnMuU2hpZnQpXSA9IGhhbmRsZVNoaWZ0VGFiS2V5Owor
CisgICAgICAgIHRoaXMuX3Nob3J0Y3V0c1tXZWJJbnNwZWN0b3IuS2V5Ym9hcmRTaG9ydGN1dC5t
YWtlS2V5KGtleXMuSG9tZS5jb2RlLCBtb2RpZmllcnMuTm9uZSldID0gdGhpcy5faGFuZGxlSG9t
ZUtleS5iaW5kKHRoaXMsIGZhbHNlKTsKKyAgICAgICAgdGhpcy5fc2hvcnRjdXRzW1dlYkluc3Bl
Y3Rvci5LZXlib2FyZFNob3J0Y3V0Lm1ha2VLZXkoa2V5cy5Ib21lLmNvZGUsIG1vZGlmaWVycy5T
aGlmdCldID0gdGhpcy5faGFuZGxlSG9tZUtleS5iaW5kKHRoaXMsIHRydWUpOworICAgIH0sCisK
KyAgICAvKioKKyAgICAgKiBAcGFyYW0ge2Jvb2xlYW59IHNoaWZ0CisgICAgICovCisgICAgX2hh
bmRsZUhvbWVLZXk6IGZ1bmN0aW9uKHNoaWZ0KQorICAgIHsKKyAgICAgICAgdmFyIHNlbGVjdGlv
biA9IHRoaXMuc2VsZWN0aW9uKCk7CisKKyAgICAgICAgdmFyIGxpbmUgPSB0aGlzLl90ZXh0TW9k
ZWwubGluZShzZWxlY3Rpb24uZW5kTGluZSk7CisgICAgICAgIHZhciBmaXJzdE5vbmJsYW5rQ2hh
cmFjdGVyID0gMDsKKyAgICAgICAgd2hpbGUgKGZpcnN0Tm9uYmxhbmtDaGFyYWN0ZXIgPCBsaW5l
Lmxlbmd0aCkgeworICAgICAgICAgICAgdmFyIGNoYXIgPSBsaW5lLmNoYXJBdChmaXJzdE5vbmJs
YW5rQ2hhcmFjdGVyKTsKKyAgICAgICAgICAgIGlmIChjaGFyID09PSAiICIgfHwgY2hhciA9PT0g
Ilx0IikKKyAgICAgICAgICAgICAgICArK2ZpcnN0Tm9uYmxhbmtDaGFyYWN0ZXI7CisgICAgICAg
ICAgICBlbHNlCisgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKyAgICAgICAgaWYg
KGZpcnN0Tm9uYmxhbmtDaGFyYWN0ZXIgPj0gbGluZS5sZW5ndGggfHwgc2VsZWN0aW9uLmVuZENv
bHVtbiA9PT0gZmlyc3ROb25ibGFua0NoYXJhY3RlcikKKyAgICAgICAgICAgIHJldHVybiBmYWxz
ZTsKKworICAgICAgICBzZWxlY3Rpb24uZW5kQ29sdW1uID0gZmlyc3ROb25ibGFua0NoYXJhY3Rl
cjsKKyAgICAgICAgaWYgKCFzaGlmdCkKKyAgICAgICAgICAgIHNlbGVjdGlvbiA9IHNlbGVjdGlv
bi5jb2xsYXBzZVRvRW5kKCk7CisgICAgICAgIHRoaXMuX3Jlc3RvcmVTZWxlY3Rpb24oc2VsZWN0
aW9uKTsKKyAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgfSwKIAogICAgIC8qKgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>187032</attachid>
            <date>2013-02-07 02:46:17 -0800</date>
            <delta_ts>2013-02-07 07:19:46 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-109154-20130207144253.patch</filename>
            <type>text/plain</type>
            <size>12029</size>
            <attacher name="Andrey Lushnikov">lushnikov</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQyMDY3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTljOGRlNmQ0ZDJiMzRj
OWQ3MzE3Mzg3N2JiYjA1NjE3MGFhOTAxNS4uNTcwY2QwMTRmNGU5Yzg0NDY1NzM1MDg1NDJlODQ2
Njk4YTAzN2E5NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDEzLTAyLTA3ICBBbmRy
ZXkgTHVzaG5pa292ICA8bHVzaG5pa292QGNocm9taXVtLm9yZz4KKworICAgICAgICBXZWIgSW5z
cGVjdG9yOiBob21lIGJ1dHRvbiBiZWhhdmlvdXIgaXMgd3JvbmcgaW4gRFRFCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDkxNTQKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBIYW5kbGUgaG9tZSBrZXkgc2hv
cnRjdXQgZXhwbGljaXRseSBpbiBUZXh0RWRpdG9yTWFpblBhbmVsLgorCisgICAgICAgIE5ldyB0
ZXN0OiBpbnNwZWN0b3IvZWRpdG9yL3RleHQtZWRpdG9yLWhvbWUtYnV0dG9uLmh0bWwKKworICAg
ICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvRGVmYXVsdFRleHRFZGl0b3IuanM6CisgICAgICAg
IChXZWJJbnNwZWN0b3IuVGV4dEVkaXRvck1haW5QYW5lbC5wcm90b3R5cGUuX3JlZ2lzdGVyU2hv
cnRjdXRzKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5UZXh0RWRpdG9yTWFpblBhbmVsLnByb3Rv
dHlwZS5faGFuZGxlSG9tZUtleSk6CisKIDIwMTMtMDItMDYgIFRvbSBTZXBleiAgPHRzZXBlekBj
aHJvbWl1bS5vcmc+CiAKICAgICAgICAgZG9jdW1lbnQucmVmZXJyZXIgbGVha2FnZSB3aXRoIFhT
UyBBdWRpdG9yIHBhZ2UgYmxvY2sKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rv
ci9mcm9udC1lbmQvRGVmYXVsdFRleHRFZGl0b3IuanMgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0
b3IvZnJvbnQtZW5kL0RlZmF1bHRUZXh0RWRpdG9yLmpzCmluZGV4IDY2OTE0MjlhMjZkMTU2NzY1
YjQ1YjA5ZDJkZWU3MGE1ZDFiZTk2ODEuLjNlOTA2NzY5ZjUyNjVmMzgwZmFjNTdlYTYwMmM4NzZj
MTczYTY5YTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQv
RGVmYXVsdFRleHRFZGl0b3IuanMKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250
LWVuZC9EZWZhdWx0VGV4dEVkaXRvci5qcwpAQCAtMTM5NSw2ICsxMzk1LDM1IEBAIFdlYkluc3Bl
Y3Rvci5UZXh0RWRpdG9yTWFpblBhbmVsLnByb3RvdHlwZSA9IHsKICAgICAgICAgdmFyIGhhbmRs
ZVNoaWZ0VGFiS2V5ID0gdGhpcy5faGFuZGxlVGFiS2V5UHJlc3MuYmluZCh0aGlzLCB0cnVlKTsK
ICAgICAgICAgdGhpcy5fc2hvcnRjdXRzW1dlYkluc3BlY3Rvci5LZXlib2FyZFNob3J0Y3V0Lm1h
a2VLZXkoa2V5cy5UYWIuY29kZSldID0gaGFuZGxlVGFiS2V5OwogICAgICAgICB0aGlzLl9zaG9y
dGN1dHNbV2ViSW5zcGVjdG9yLktleWJvYXJkU2hvcnRjdXQubWFrZUtleShrZXlzLlRhYi5jb2Rl
LCBtb2RpZmllcnMuU2hpZnQpXSA9IGhhbmRsZVNoaWZ0VGFiS2V5OworCisgICAgICAgIHRoaXMu
X3Nob3J0Y3V0c1tXZWJJbnNwZWN0b3IuS2V5Ym9hcmRTaG9ydGN1dC5tYWtlS2V5KGtleXMuSG9t
ZS5jb2RlLCBtb2RpZmllcnMuTm9uZSldID0gdGhpcy5faGFuZGxlSG9tZUtleS5iaW5kKHRoaXMs
IGZhbHNlKTsKKyAgICAgICAgdGhpcy5fc2hvcnRjdXRzW1dlYkluc3BlY3Rvci5LZXlib2FyZFNo
b3J0Y3V0Lm1ha2VLZXkoa2V5cy5Ib21lLmNvZGUsIG1vZGlmaWVycy5TaGlmdCldID0gdGhpcy5f
aGFuZGxlSG9tZUtleS5iaW5kKHRoaXMsIHRydWUpOworICAgIH0sCisKKyAgICAvKioKKyAgICAg
KiBAcGFyYW0ge2Jvb2xlYW59IHNoaWZ0CisgICAgICovCisgICAgX2hhbmRsZUhvbWVLZXk6IGZ1
bmN0aW9uKHNoaWZ0KQorICAgIHsKKyAgICAgICAgdmFyIHNlbGVjdGlvbiA9IHRoaXMuc2VsZWN0
aW9uKCk7CisKKyAgICAgICAgdmFyIGxpbmUgPSB0aGlzLl90ZXh0TW9kZWwubGluZShzZWxlY3Rp
b24uZW5kTGluZSk7CisgICAgICAgIHZhciBmaXJzdE5vbkJsYW5rQ2hhcmFjdGVyID0gMDsKKyAg
ICAgICAgd2hpbGUgKGZpcnN0Tm9uQmxhbmtDaGFyYWN0ZXIgPCBsaW5lLmxlbmd0aCkgeworICAg
ICAgICAgICAgdmFyIGNoYXIgPSBsaW5lLmNoYXJBdChmaXJzdE5vbkJsYW5rQ2hhcmFjdGVyKTsK
KyAgICAgICAgICAgIGlmIChjaGFyID09PSAiICIgfHwgY2hhciA9PT0gIlx0IikKKyAgICAgICAg
ICAgICAgICArK2ZpcnN0Tm9uQmxhbmtDaGFyYWN0ZXI7CisgICAgICAgICAgICBlbHNlCisgICAg
ICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKyAgICAgICAgaWYgKGZpcnN0Tm9uQmxhbmtD
aGFyYWN0ZXIgPj0gbGluZS5sZW5ndGggfHwgc2VsZWN0aW9uLmVuZENvbHVtbiA9PT0gZmlyc3RO
b25CbGFua0NoYXJhY3RlcikKKyAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgICAgICBz
ZWxlY3Rpb24uZW5kQ29sdW1uID0gZmlyc3ROb25CbGFua0NoYXJhY3RlcjsKKyAgICAgICAgaWYg
KCFzaGlmdCkKKyAgICAgICAgICAgIHNlbGVjdGlvbiA9IHNlbGVjdGlvbi5jb2xsYXBzZVRvRW5k
KCk7CisgICAgICAgIHRoaXMuX3Jlc3RvcmVTZWxlY3Rpb24oc2VsZWN0aW9uKTsKKyAgICAgICAg
cmV0dXJuIHRydWU7CiAgICAgfSwKIAogICAgIC8qKgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDc1NmE4YzZiNmYxZDQ4M2U1
ZDBkOGNkZjcxYzBlYzMyODZlYjI1MDcuLjFiYjlmN2EyMDNhMzE3ZWI5Nzg4MGJlZmQ4MDJmZGM1
MzFmZWQ0ZDggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOSBAQAorMjAxMy0wMi0wNyAgQW5kcmV5IEx1c2hu
aWtvdiAgPGx1c2huaWtvdkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgV2ViIEluc3BlY3Rvcjog
aG9tZSBidXR0b24gYmVoYXZpb3VyIGlzIHdyb25nIGluIERURQorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA5MTU0CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIGxheW91dCB0ZXN0IHRvIHZlcmlmeSBo
b21lIGJ1dHRvbiBiZWhhdmlvdXIuIEV4Y2x1ZGUgdGhpcyB0ZXN0IG9uCisgICAgICAgIHBsYXRm
b3JtcyB0aGF0IGRvIG5vdCBoYXZlIGV2ZW50U2VuZGVyIG9iamVjdCBpbiB0ZXN0IHNoZWxsLgor
CisgICAgICAgICogaW5zcGVjdG9yL2VkaXRvci90ZXh0LWVkaXRvci1ob21lLWJ1dHRvbi1leHBl
Y3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGluc3BlY3Rvci9lZGl0b3IvdGV4dC1lZGl0b3It
aG9tZS1idXR0b24uaHRtbDogQWRkZWQuCisgICAgICAgICogcGxhdGZvcm0vZWZsL1Rlc3RFeHBl
Y3RhdGlvbnM6CisgICAgICAgICogcGxhdGZvcm0vbWFjL1Rlc3RFeHBlY3RhdGlvbnM6CisgICAg
ICAgICogcGxhdGZvcm0vcXQvVGVzdEV4cGVjdGF0aW9uczoKKwogMjAxMy0wMi0wNiAgTWF0dCBG
YWxrZW5oYWdlbiAgPGZhbGtlbkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZCBn
YXJkZW5pbmcuIE1hcmtpbmcgYWxsIHdlYmdsL2NvbmZvcm1hbmNlIHRlc3RzIGFzIHNsb3cuCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZWRpdG9yL3RleHQtZWRpdG9yLWhvbWUt
YnV0dG9uLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9lZGl0b3IvdGV4dC1l
ZGl0b3ItaG9tZS1idXR0b24tZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjljMDZiODY0NzU3M2Uz
NDc1ZTUxODhhOGYxNDJmODdhNDUyMTY0MWEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9pbnNwZWN0b3IvZWRpdG9yL3RleHQtZWRpdG9yLWhvbWUtYnV0dG9uLWV4cGVjdGVkLnR4dApA
QCAtMCwwICsxLDM4IEBACitUaGlzIHRlc3QgdmVyaWZpZXMgdGhhdCBob21lIGJ1dHRvbiB0cmln
Z2VycyBzZWxlY3Rpb24gYmV0d2VlbiBmaXJzdCBzeW1ib2wgb2YgdGhlIGxpbmUgYW5kIGZpcnN0
IG5vbi1ibGFuayBzeW1ib2wgb2YgdGhlIGxpbmUuCisKK2Z1bmN0aW9uIGZvbygpCit7CisgICAg
cmV0dXJuIDQyOworfQorCitSdW5uaW5nOiB0ZXN0Rmlyc3ROb25CbGFua0NoYXJhY3RlcgoreyJz
dGFydExpbmUiOjIsInN0YXJ0Q29sdW1uIjo4LCJlbmRMaW5lIjoyLCJlbmRDb2x1bW4iOjh9Cit7
InN0YXJ0TGluZSI6Miwic3RhcnRDb2x1bW4iOjQsImVuZExpbmUiOjIsImVuZENvbHVtbiI6NH0K
KworUnVubmluZzogdGVzdEZpcnN0Tm9uQmxhbmtDaGFyYWN0ZXJGcm9tV2hpdGVzcGFjZQoreyJz
dGFydExpbmUiOjIsInN0YXJ0Q29sdW1uIjoyLCJlbmRMaW5lIjoyLCJlbmRDb2x1bW4iOjJ9Cit7
InN0YXJ0TGluZSI6Miwic3RhcnRDb2x1bW4iOjQsImVuZExpbmUiOjIsImVuZENvbHVtbiI6NH0K
KworUnVubmluZzogdGVzdEhvbWVCdXR0b25UcmlnZ2VyaW5nCit7InN0YXJ0TGluZSI6Miwic3Rh
cnRDb2x1bW4iOjIsImVuZExpbmUiOjIsImVuZENvbHVtbiI6Mn0KK3sic3RhcnRMaW5lIjoyLCJz
dGFydENvbHVtbiI6NCwiZW5kTGluZSI6MiwiZW5kQ29sdW1uIjo0fQoreyJzdGFydExpbmUiOjIs
InN0YXJ0Q29sdW1uIjowLCJlbmRMaW5lIjoyLCJlbmRDb2x1bW4iOjB9Cit7InN0YXJ0TGluZSI6
Miwic3RhcnRDb2x1bW4iOjQsImVuZExpbmUiOjIsImVuZENvbHVtbiI6NH0KKworUnVubmluZzog
dGVzdEhvbWVCdXR0b25Eb2VzTm90Q2hhbmdlQ3Vyc29yCit7InN0YXJ0TGluZSI6MCwic3RhcnRD
b2x1bW4iOjIsImVuZExpbmUiOjAsImVuZENvbHVtbiI6Mn0KK3sic3RhcnRMaW5lIjowLCJzdGFy
dENvbHVtbiI6MCwiZW5kTGluZSI6MCwiZW5kQ29sdW1uIjowfQoreyJzdGFydExpbmUiOjAsInN0
YXJ0Q29sdW1uIjowLCJlbmRMaW5lIjowLCJlbmRDb2x1bW4iOjB9CisKK1J1bm5pbmc6IHRlc3RI
b21lQnV0dG9uV2l0aFNoaWZ0Cit7InN0YXJ0TGluZSI6MCwic3RhcnRDb2x1bW4iOjAsImVuZExp
bmUiOjIsImVuZENvbHVtbiI6OH0KK3sic3RhcnRMaW5lIjowLCJzdGFydENvbHVtbiI6MCwiZW5k
TGluZSI6MiwiZW5kQ29sdW1uIjo0fQoreyJzdGFydExpbmUiOjAsInN0YXJ0Q29sdW1uIjowLCJl
bmRMaW5lIjoyLCJlbmRDb2x1bW4iOjB9Cit7InN0YXJ0TGluZSI6MCwic3RhcnRDb2x1bW4iOjAs
ImVuZExpbmUiOjIsImVuZENvbHVtbiI6NH0KKworUnVubmluZzogdGVzdEhvbWVCdXR0b25XaXRo
U2hpZnRJbnZlcnNlZAoreyJzdGFydExpbmUiOjMsInN0YXJ0Q29sdW1uIjoxLCJlbmRMaW5lIjoy
LCJlbmRDb2x1bW4iOjh9Cit7InN0YXJ0TGluZSI6Mywic3RhcnRDb2x1bW4iOjEsImVuZExpbmUi
OjIsImVuZENvbHVtbiI6NH0KK3sic3RhcnRMaW5lIjozLCJzdGFydENvbHVtbiI6MSwiZW5kTGlu
ZSI6MiwiZW5kQ29sdW1uIjowfQoreyJzdGFydExpbmUiOjMsInN0YXJ0Q29sdW1uIjoxLCJlbmRM
aW5lIjoyLCJlbmRDb2x1bW4iOjR9CisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2luc3BlY3Rv
ci9lZGl0b3IvdGV4dC1lZGl0b3ItaG9tZS1idXR0b24uaHRtbCBiL0xheW91dFRlc3RzL2luc3Bl
Y3Rvci9lZGl0b3IvdGV4dC1lZGl0b3ItaG9tZS1idXR0b24uaHRtbApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42OTkx
MDllODNlMDM5ODFmNDE2NDc0YTU1MmIzMmQ1NWY5Yzc4Njk1Ci0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvaW5zcGVjdG9yL2VkaXRvci90ZXh0LWVkaXRvci1ob21lLWJ1dHRvbi5odG1s
CkBAIC0wLDAgKzEsMTEwIEBACis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdCBzcmM9Ii4uLy4uL2h0
dHAvdGVzdHMvaW5zcGVjdG9yL2luc3BlY3Rvci10ZXN0LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQg
c3JjPSJlZGl0b3ItdGVzdC5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0PgorCitmdW5jdGlvbiB0ZXN0
KCkKK3sKK2Z1bmN0aW9uIGZvbygpCit7CisgICAgcmV0dXJuIDQyOworfQorICAgIHZhciB0ZXh0
RWRpdG9yID0gSW5zcGVjdG9yVGVzdC5jcmVhdGVUZXN0RWRpdG9yKCk7CisgICAgdGV4dEVkaXRv
ci5vdmVycmlkZVZpZXdwb3J0Rm9yVGVzdCgwLCB1bmRlZmluZWQsIDMpOworICAgIHRleHRFZGl0
b3IubWltZVR5cGUgPSAidGV4dC9qYXZhc2NyaXB0IjsKKyAgICB0ZXh0RWRpdG9yLnNldFJlYWRP
bmx5KGZhbHNlKTsKKyAgICB0ZXh0RWRpdG9yLmVsZW1lbnQuZm9jdXMoKTsKKworICAgIHRleHRF
ZGl0b3Iuc2V0VGV4dChmb28udG9TdHJpbmcoKSk7CisKKyAgICBJbnNwZWN0b3JUZXN0LmFkZFJl
c3VsdCh0ZXh0RWRpdG9yLnRleHQoKSk7CisKKyAgICBJbnNwZWN0b3JUZXN0LnJ1blRlc3RTdWl0
ZShbCisgICAgICAgIGZ1bmN0aW9uIHRlc3RGaXJzdE5vbkJsYW5rQ2hhcmFjdGVyKG5leHQpCisg
ICAgICAgIHsKKyAgICAgICAgICAgIHZhciBzZWxlY3Rpb24gPSBXZWJJbnNwZWN0b3IuVGV4dFJh
bmdlLmNyZWF0ZUZyb21Mb2NhdGlvbigyLCA4KTsKKyAgICAgICAgICAgIHRleHRFZGl0b3Iuc2V0
U2VsZWN0aW9uKHNlbGVjdGlvbik7CisgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmFkZFJlc3Vs
dCh0ZXh0RWRpdG9yLnNlbGVjdGlvbigpKTsKKyAgICAgICAgICAgIGV2ZW50U2VuZGVyLmtleURv
d24oImhvbWUiLCBbXSk7CisgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmFkZFJlc3VsdCh0ZXh0
RWRpdG9yLnNlbGVjdGlvbigpKTsKKyAgICAgICAgICAgIG5leHQoKTsKKyAgICAgICAgfSwKKwor
ICAgICAgICBmdW5jdGlvbiB0ZXN0Rmlyc3ROb25CbGFua0NoYXJhY3RlckZyb21XaGl0ZXNwYWNl
KG5leHQpCisgICAgICAgIHsKKyAgICAgICAgICAgIHZhciBzZWxlY3Rpb24gPSBXZWJJbnNwZWN0
b3IuVGV4dFJhbmdlLmNyZWF0ZUZyb21Mb2NhdGlvbigyLCAyKTsKKyAgICAgICAgICAgIHRleHRF
ZGl0b3Iuc2V0U2VsZWN0aW9uKHNlbGVjdGlvbik7CisgICAgICAgICAgICBJbnNwZWN0b3JUZXN0
LmFkZFJlc3VsdCh0ZXh0RWRpdG9yLnNlbGVjdGlvbigpKTsKKyAgICAgICAgICAgIGV2ZW50U2Vu
ZGVyLmtleURvd24oImhvbWUiLCBbXSk7CisgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmFkZFJl
c3VsdCh0ZXh0RWRpdG9yLnNlbGVjdGlvbigpKTsKKyAgICAgICAgICAgIG5leHQoKTsKKyAgICAg
ICAgfSwKKworICAgICAgICBmdW5jdGlvbiB0ZXN0SG9tZUJ1dHRvblRyaWdnZXJpbmcobmV4dCkK
KyAgICAgICAgeworICAgICAgICAgICAgdmFyIHNlbGVjdGlvbiA9IFdlYkluc3BlY3Rvci5UZXh0
UmFuZ2UuY3JlYXRlRnJvbUxvY2F0aW9uKDIsIDIpOworICAgICAgICAgICAgdGV4dEVkaXRvci5z
ZXRTZWxlY3Rpb24oc2VsZWN0aW9uKTsKKyAgICAgICAgICAgIEluc3BlY3RvclRlc3QuYWRkUmVz
dWx0KHRleHRFZGl0b3Iuc2VsZWN0aW9uKCkpOworICAgICAgICAgICAgZXZlbnRTZW5kZXIua2V5
RG93bigiaG9tZSIsIFtdKTsKKyAgICAgICAgICAgIEluc3BlY3RvclRlc3QuYWRkUmVzdWx0KHRl
eHRFZGl0b3Iuc2VsZWN0aW9uKCkpOworICAgICAgICAgICAgZXZlbnRTZW5kZXIua2V5RG93bigi
aG9tZSIsIFtdKTsKKyAgICAgICAgICAgIEluc3BlY3RvclRlc3QuYWRkUmVzdWx0KHRleHRFZGl0
b3Iuc2VsZWN0aW9uKCkpOworICAgICAgICAgICAgZXZlbnRTZW5kZXIua2V5RG93bigiaG9tZSIs
IFtdKTsKKyAgICAgICAgICAgIEluc3BlY3RvclRlc3QuYWRkUmVzdWx0KHRleHRFZGl0b3Iuc2Vs
ZWN0aW9uKCkpOworICAgICAgICAgICAgbmV4dCgpOworICAgICAgICB9LAorCisgICAgICAgIGZ1
bmN0aW9uIHRlc3RIb21lQnV0dG9uRG9lc05vdENoYW5nZUN1cnNvcihuZXh0KQorICAgICAgICB7
CisgICAgICAgICAgICB2YXIgc2VsZWN0aW9uID0gV2ViSW5zcGVjdG9yLlRleHRSYW5nZS5jcmVh
dGVGcm9tTG9jYXRpb24oMCwgMik7CisgICAgICAgICAgICB0ZXh0RWRpdG9yLnNldFNlbGVjdGlv
bihzZWxlY3Rpb24pOworICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5hZGRSZXN1bHQodGV4dEVk
aXRvci5zZWxlY3Rpb24oKSk7CisgICAgICAgICAgICBldmVudFNlbmRlci5rZXlEb3duKCJob21l
IiwgW10pOworICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5hZGRSZXN1bHQodGV4dEVkaXRvci5z
ZWxlY3Rpb24oKSk7CisgICAgICAgICAgICBldmVudFNlbmRlci5rZXlEb3duKCJob21lIiwgW10p
OworICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5hZGRSZXN1bHQodGV4dEVkaXRvci5zZWxlY3Rp
b24oKSk7CisgICAgICAgICAgICBuZXh0KCk7CisgICAgICAgIH0sCisKKyAgICAgICAgZnVuY3Rp
b24gdGVzdEhvbWVCdXR0b25XaXRoU2hpZnQobmV4dCkKKyAgICAgICAgeworICAgICAgICAgICAg
dmFyIHNlbGVjdGlvbiA9IG5ldyBXZWJJbnNwZWN0b3IuVGV4dFJhbmdlKDAsIDAsIDIsIDgpOwor
ICAgICAgICAgICAgdGV4dEVkaXRvci5zZXRTZWxlY3Rpb24oc2VsZWN0aW9uKTsKKyAgICAgICAg
ICAgIEluc3BlY3RvclRlc3QuYWRkUmVzdWx0KHRleHRFZGl0b3Iuc2VsZWN0aW9uKCkpOworICAg
ICAgICAgICAgZXZlbnRTZW5kZXIua2V5RG93bigiaG9tZSIsIFsic2hpZnRLZXkiXSk7CisgICAg
ICAgICAgICBJbnNwZWN0b3JUZXN0LmFkZFJlc3VsdCh0ZXh0RWRpdG9yLnNlbGVjdGlvbigpKTsK
KyAgICAgICAgICAgIGV2ZW50U2VuZGVyLmtleURvd24oImhvbWUiLCBbInNoaWZ0S2V5Il0pOwor
ICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5hZGRSZXN1bHQodGV4dEVkaXRvci5zZWxlY3Rpb24o
KSk7CisgICAgICAgICAgICBldmVudFNlbmRlci5rZXlEb3duKCJob21lIiwgWyJzaGlmdEtleSJd
KTsKKyAgICAgICAgICAgIEluc3BlY3RvclRlc3QuYWRkUmVzdWx0KHRleHRFZGl0b3Iuc2VsZWN0
aW9uKCkpOworICAgICAgICAgICAgbmV4dCgpOworICAgICAgICB9LAorCisgICAgICAgIGZ1bmN0
aW9uIHRlc3RIb21lQnV0dG9uV2l0aFNoaWZ0SW52ZXJzZWQobmV4dCkKKyAgICAgICAgeworICAg
ICAgICAgICAgdmFyIHNlbGVjdGlvbiA9IG5ldyBXZWJJbnNwZWN0b3IuVGV4dFJhbmdlKDMsIDEs
IDIsIDgpOworICAgICAgICAgICAgdGV4dEVkaXRvci5zZXRTZWxlY3Rpb24oc2VsZWN0aW9uKTsK
KyAgICAgICAgICAgIEluc3BlY3RvclRlc3QuYWRkUmVzdWx0KHRleHRFZGl0b3Iuc2VsZWN0aW9u
KCkpOworICAgICAgICAgICAgZXZlbnRTZW5kZXIua2V5RG93bigiaG9tZSIsIFsic2hpZnRLZXki
XSk7CisgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmFkZFJlc3VsdCh0ZXh0RWRpdG9yLnNlbGVj
dGlvbigpKTsKKyAgICAgICAgICAgIGV2ZW50U2VuZGVyLmtleURvd24oImhvbWUiLCBbInNoaWZ0
S2V5Il0pOworICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5hZGRSZXN1bHQodGV4dEVkaXRvci5z
ZWxlY3Rpb24oKSk7CisgICAgICAgICAgICBldmVudFNlbmRlci5rZXlEb3duKCJob21lIiwgWyJz
aGlmdEtleSJdKTsKKyAgICAgICAgICAgIEluc3BlY3RvclRlc3QuYWRkUmVzdWx0KHRleHRFZGl0
b3Iuc2VsZWN0aW9uKCkpOworICAgICAgICAgICAgbmV4dCgpOworICAgICAgICB9CisgICAgXSk7
Cit9CisKKzwvc2NyaXB0PgorPC9oZWFkPgorCis8Ym9keSBvbmxvYWQ9InJ1blRlc3QoKTsiPgor
PHA+CitUaGlzIHRlc3QgdmVyaWZpZXMgdGhhdCBob21lIGJ1dHRvbiB0cmlnZ2VycyBzZWxlY3Rp
b24gYmV0d2VlbiBmaXJzdCBzeW1ib2wgb2YgdGhlIGxpbmUKK2FuZCBmaXJzdCBub24tYmxhbmsg
c3ltYm9sIG9mIHRoZSBsaW5lLgorPC9wPgorCis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9lZmwvVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3Rz
L3BsYXRmb3JtL2VmbC9UZXN0RXhwZWN0YXRpb25zCmluZGV4IGM3Y2JmNjljMjQ2YjhlN2Y5ZTVl
OTg2MDJlNWMxY2QzMDdkNzliM2UuLjVmOWMzMDE1MDBhNmJjYTI5OWRjZTY5MjYyZWY4MzU4Zjhk
MTAyZjkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2VmbC9UZXN0RXhwZWN0YXRp
b25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2VmbC9UZXN0RXhwZWN0YXRpb25zCkBAIC0x
ODE5LDYgKzE4MTksNyBAQCB3ZWJraXQub3JnL2IvMTA2NzQzIG1lZGlhL3ZpZGVvLWNvbnRyb2xz
LWNhcHRpb25zLmh0bWwgWyBGYWlsdXJlIF0KICMgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTEwNjg4MwogaW5zcGVjdG9yL2VkaXRvci90ZXh0LWVkaXRvci1mb3JtYXR0
ZXIuaHRtbAogaW5zcGVjdG9yL2VkaXRvci90ZXh0LWVkaXRvci13b3JkLWp1bXBzLmh0bWwKK2lu
c3BlY3Rvci9lZGl0b3IvdGV4dC1lZGl0b3ItaG9tZS1idXR0b24uaHRtbAogCiAjIFJlbW92ZSBm
cm9tIGxpc3QgYWZ0ZXIgZW5hYmxpbmcgQ0FOVkFTX1BBVEgKIHdlYmtpdC5vcmcvYi8xMDg1MDgg
ZmFzdC9jYW52YXMvY2FudmFzLXBhdGgtY29uc3RydWN0b3JzLmh0bWwgWyBGYWlsdXJlIF0KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9UZXN0RXhwZWN0YXRpb25zIGIvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggZGQyYTQzNDMxNThi
MDEzODJiNGVkMGMwNDI3OWQ4MWFhMDczZTFjMS4uZGNkZGQ0M2Q1ODBhNzg1YWQ4ZWI4NTlmOWI4
NjIyYTM2MzMwY2JhOCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1Rlc3RF
eHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1Rlc3RFeHBlY3RhdGlv
bnMKQEAgLTI1NCw2ICsyNTQsNyBAQCBhbmltYXRpb25zL3BsYXktc3RhdGUuaHRtbAogIyBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA2NzkzCiBpbnNwZWN0b3IvZWRp
dG9yL3RleHQtZWRpdG9yLWZvcm1hdHRlci5odG1sIFsgU2tpcCBdCiBpbnNwZWN0b3IvZWRpdG9y
L3RleHQtZWRpdG9yLXdvcmQtanVtcHMuaHRtbCBbIFNraXAgXQoraW5zcGVjdG9yL2VkaXRvci90
ZXh0LWVkaXRvci1ob21lLWJ1dHRvbi5odG1sIFsgU2tpcCBdCiAKICMgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTcxMTIwCiBpbnNwZWN0b3IvZGVidWdnZXIvc2VsZWN0
ZWQtY2FsbC1mcmFtZS1hZnRlci1mb3JtYXR0aW5nLXNvdXJjZS5odG1sCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9wbGF0Zm9ybS9xdC9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vcXQvVGVzdEV4cGVjdGF0aW9ucwppbmRleCBhNTM2ZTZkOTJkNDMzYTJkMTIyNWIxNjAy
YmViY2VhYWEwMTQ3NzBjLi42ZTRhZjdlMjRhODNjNDJiZjFiMTg2YWNiZGVhOTc0Y2I4OTBjNjAz
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9xdC9UZXN0RXhwZWN0YXRpb25zCisr
KyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3F0L1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTI2MDIsNiAr
MjYwMiw3IEBAIHdlYmtpdC5vcmcvYi8zOTcyNSBmYXN0L2V2ZW50cy9kcmFnLWFuZC1kcm9wLWF1
dG9zY3JvbGwuaHRtbCBbIFNraXAgXQogIyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTA2ODgzCiBpbnNwZWN0b3IvZWRpdG9yL3RleHQtZWRpdG9yLWZvcm1hdHRlci5o
dG1sCiBpbnNwZWN0b3IvZWRpdG9yL3RleHQtZWRpdG9yLXdvcmQtanVtcHMuaHRtbAoraW5zcGVj
dG9yL2VkaXRvci90ZXh0LWVkaXRvci1ob21lLWJ1dHRvbi5odG1sCiAKICMgTmVlZHMgcmViYXNl
bGluZSBhZnRlciBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQ2NjQK
IHdlYmtpdC5vcmcvYi8xMDc0NzYgZmFzdC9ibG9jay9mbG9hdC8wMjQuaHRtbCBbIEZhaWx1cmUg
XQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>187104</attachid>
            <date>2013-02-07 07:19:51 -0800</date>
            <delta_ts>2013-02-08 02:10:36 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-109154-20130207191626.patch</filename>
            <type>text/plain</type>
            <size>12020</size>
            <attacher name="Andrey Lushnikov">lushnikov</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQyMTA3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNWNhZTkzYTM2ODAxMTQw
YzhmOGU0YzVmMzcxMGI1OWMwYzc0MDYyOS4uZDkzZTlhNThkMDM0MzQ4Yzc3ZTgwMGQwZWMxNmNh
OTcyMmFiNDI2OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDEzLTAyLTA3ICBBbmRy
ZXkgTHVzaG5pa292ICA8bHVzaG5pa292QGNocm9taXVtLm9yZz4KKworICAgICAgICBXZWIgSW5z
cGVjdG9yOiBob21lIGJ1dHRvbiBiZWhhdmlvdXIgaXMgd3JvbmcgaW4gRFRFCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDkxNTQKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBIYW5kbGUgaG9tZSBrZXkgc2hv
cnRjdXQgZXhwbGljaXRseSBpbiBUZXh0RWRpdG9yTWFpblBhbmVsLgorCisgICAgICAgIE5ldyB0
ZXN0OiBpbnNwZWN0b3IvZWRpdG9yL3RleHQtZWRpdG9yLWhvbWUtYnV0dG9uLmh0bWwKKworICAg
ICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvRGVmYXVsdFRleHRFZGl0b3IuanM6CisgICAgICAg
IChXZWJJbnNwZWN0b3IuVGV4dEVkaXRvck1haW5QYW5lbC5wcm90b3R5cGUuX3JlZ2lzdGVyU2hv
cnRjdXRzKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5UZXh0RWRpdG9yTWFpblBhbmVsLnByb3Rv
dHlwZS5faGFuZGxlSG9tZUtleSk6CisKIDIwMTMtMDItMDcgIFZzZXZvbG9kIFZsYXNvdiAgPHZz
ZXZpa0BjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgV2ViIEluc3BlY3RvcjogQ2xvc3VyZSBjb21w
aWxhdGlvbiBmaXhlcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250
LWVuZC9EZWZhdWx0VGV4dEVkaXRvci5qcyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9u
dC1lbmQvRGVmYXVsdFRleHRFZGl0b3IuanMKaW5kZXggMDViOGUxYjFmZGY1OGFlODM4OTM0MjVj
NTVhOWFmNjVhNWFlYmZlMi4uMWJmNmNkNGI3NGM5NDg4MmE3YjY2ZmU3MjQ2MDZhOTg2MGE4NjI3
NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9EZWZhdWx0
VGV4dEVkaXRvci5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0Rl
ZmF1bHRUZXh0RWRpdG9yLmpzCkBAIC0xMzk3LDYgKzEzOTcsMzUgQEAgV2ViSW5zcGVjdG9yLlRl
eHRFZGl0b3JNYWluUGFuZWwucHJvdG90eXBlID0gewogICAgICAgICB2YXIgaGFuZGxlU2hpZnRU
YWJLZXkgPSB0aGlzLl9oYW5kbGVUYWJLZXlQcmVzcy5iaW5kKHRoaXMsIHRydWUpOwogICAgICAg
ICB0aGlzLl9zaG9ydGN1dHNbV2ViSW5zcGVjdG9yLktleWJvYXJkU2hvcnRjdXQubWFrZUtleShr
ZXlzLlRhYi5jb2RlKV0gPSBoYW5kbGVUYWJLZXk7CiAgICAgICAgIHRoaXMuX3Nob3J0Y3V0c1tX
ZWJJbnNwZWN0b3IuS2V5Ym9hcmRTaG9ydGN1dC5tYWtlS2V5KGtleXMuVGFiLmNvZGUsIG1vZGlm
aWVycy5TaGlmdCldID0gaGFuZGxlU2hpZnRUYWJLZXk7CisKKyAgICAgICAgdGhpcy5fc2hvcnRj
dXRzW1dlYkluc3BlY3Rvci5LZXlib2FyZFNob3J0Y3V0Lm1ha2VLZXkoa2V5cy5Ib21lLmNvZGUs
IG1vZGlmaWVycy5Ob25lKV0gPSB0aGlzLl9oYW5kbGVIb21lS2V5LmJpbmQodGhpcywgZmFsc2Up
OworICAgICAgICB0aGlzLl9zaG9ydGN1dHNbV2ViSW5zcGVjdG9yLktleWJvYXJkU2hvcnRjdXQu
bWFrZUtleShrZXlzLkhvbWUuY29kZSwgbW9kaWZpZXJzLlNoaWZ0KV0gPSB0aGlzLl9oYW5kbGVI
b21lS2V5LmJpbmQodGhpcywgdHJ1ZSk7CisgICAgfSwKKworICAgIC8qKgorICAgICAqIEBwYXJh
bSB7Ym9vbGVhbn0gc2hpZnQKKyAgICAgKi8KKyAgICBfaGFuZGxlSG9tZUtleTogZnVuY3Rpb24o
c2hpZnQpCisgICAgeworICAgICAgICB2YXIgc2VsZWN0aW9uID0gdGhpcy5zZWxlY3Rpb24oKTsK
KworICAgICAgICB2YXIgbGluZSA9IHRoaXMuX3RleHRNb2RlbC5saW5lKHNlbGVjdGlvbi5lbmRM
aW5lKTsKKyAgICAgICAgdmFyIGZpcnN0Tm9uQmxhbmtDaGFyYWN0ZXIgPSAwOworICAgICAgICB3
aGlsZSAoZmlyc3ROb25CbGFua0NoYXJhY3RlciA8IGxpbmUubGVuZ3RoKSB7CisgICAgICAgICAg
ICB2YXIgY2hhciA9IGxpbmUuY2hhckF0KGZpcnN0Tm9uQmxhbmtDaGFyYWN0ZXIpOworICAgICAg
ICAgICAgaWYgKGNoYXIgPT09ICIgIiB8fCBjaGFyID09PSAiXHQiKQorICAgICAgICAgICAgICAg
ICsrZmlyc3ROb25CbGFua0NoYXJhY3RlcjsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAg
ICAgICBicmVhazsKKyAgICAgICAgfQorICAgICAgICBpZiAoZmlyc3ROb25CbGFua0NoYXJhY3Rl
ciA+PSBsaW5lLmxlbmd0aCB8fCBzZWxlY3Rpb24uZW5kQ29sdW1uID09PSBmaXJzdE5vbkJsYW5r
Q2hhcmFjdGVyKQorICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgICAgIHNlbGVjdGlv
bi5lbmRDb2x1bW4gPSBmaXJzdE5vbkJsYW5rQ2hhcmFjdGVyOworICAgICAgICBpZiAoIXNoaWZ0
KQorICAgICAgICAgICAgc2VsZWN0aW9uID0gc2VsZWN0aW9uLmNvbGxhcHNlVG9FbmQoKTsKKyAg
ICAgICAgdGhpcy5fcmVzdG9yZVNlbGVjdGlvbihzZWxlY3Rpb24pOworICAgICAgICByZXR1cm4g
dHJ1ZTsKICAgICB9LAogCiAgICAgLyoqCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggN2ZlNzA2NjAwODUzNDU4NWQwODY1MzRk
NmQ2YTcxMzA2NTkwOGIwMS4uYzhkOTA5NTNjZjVlZDQ1NmI0NWYxYzgwM2RmYjhjMjg4ZmYzMDk3
NyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0No
YW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDEzLTAyLTA3ICBBbmRyZXkgTHVzaG5pa292ICA8
bHVzaG5pa292QGNocm9taXVtLm9yZz4KKworICAgICAgICBXZWIgSW5zcGVjdG9yOiBob21lIGJ1
dHRvbiBiZWhhdmlvdXIgaXMgd3JvbmcgaW4gRFRFCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDkxNTQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgbGF5b3V0IHRlc3QgdG8gdmVyaWZ5IGhvbWUgYnV0
dG9uIGJlaGF2aW91ci4gRXhjbHVkZSB0aGlzIHRlc3Qgb24KKyAgICAgICAgcGxhdGZvcm1zIHRo
YXQgZG8gbm90IGhhdmUgZXZlbnRTZW5kZXIgb2JqZWN0IGluIHRlc3Qgc2hlbGwuCisKKyAgICAg
ICAgKiBpbnNwZWN0b3IvZWRpdG9yL3RleHQtZWRpdG9yLWhvbWUtYnV0dG9uLWV4cGVjdGVkLnR4
dDogQWRkZWQuCisgICAgICAgICogaW5zcGVjdG9yL2VkaXRvci90ZXh0LWVkaXRvci1ob21lLWJ1
dHRvbi5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9lZmwvVGVzdEV4cGVjdGF0aW9u
czoKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvVGVzdEV4cGVjdGF0aW9uczoKKyAgICAgICAgKiBw
bGF0Zm9ybS9xdC9UZXN0RXhwZWN0YXRpb25zOgorCiAyMDEzLTAyLTA3ICBab2x0YW4gQXJ2YWkg
IDx6YXJ2YWlAaW5mLnUtc3plZ2VkLmh1PgogCiAgICAgICAgIFtRdF0gVW5yZXZpd2VkIGdhcmRl
bmluZy4gUmViYXNlbGluaW5nIGFuZCBza2lwcGluZyBuZXcgZmFpbHVyZXMuCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZWRpdG9yL3RleHQtZWRpdG9yLWhvbWUtYnV0dG9uLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9lZGl0b3IvdGV4dC1lZGl0b3ItaG9t
ZS1idXR0b24tZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjljMDZiODY0NzU3M2UzNDc1ZTUxODhh
OGYxNDJmODdhNDUyMTY0MWEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbnNwZWN0
b3IvZWRpdG9yL3RleHQtZWRpdG9yLWhvbWUtYnV0dG9uLWV4cGVjdGVkLnR4dApAQCAtMCwwICsx
LDM4IEBACitUaGlzIHRlc3QgdmVyaWZpZXMgdGhhdCBob21lIGJ1dHRvbiB0cmlnZ2VycyBzZWxl
Y3Rpb24gYmV0d2VlbiBmaXJzdCBzeW1ib2wgb2YgdGhlIGxpbmUgYW5kIGZpcnN0IG5vbi1ibGFu
ayBzeW1ib2wgb2YgdGhlIGxpbmUuCisKK2Z1bmN0aW9uIGZvbygpCit7CisgICAgcmV0dXJuIDQy
OworfQorCitSdW5uaW5nOiB0ZXN0Rmlyc3ROb25CbGFua0NoYXJhY3RlcgoreyJzdGFydExpbmUi
OjIsInN0YXJ0Q29sdW1uIjo4LCJlbmRMaW5lIjoyLCJlbmRDb2x1bW4iOjh9Cit7InN0YXJ0TGlu
ZSI6Miwic3RhcnRDb2x1bW4iOjQsImVuZExpbmUiOjIsImVuZENvbHVtbiI6NH0KKworUnVubmlu
ZzogdGVzdEZpcnN0Tm9uQmxhbmtDaGFyYWN0ZXJGcm9tV2hpdGVzcGFjZQoreyJzdGFydExpbmUi
OjIsInN0YXJ0Q29sdW1uIjoyLCJlbmRMaW5lIjoyLCJlbmRDb2x1bW4iOjJ9Cit7InN0YXJ0TGlu
ZSI6Miwic3RhcnRDb2x1bW4iOjQsImVuZExpbmUiOjIsImVuZENvbHVtbiI6NH0KKworUnVubmlu
ZzogdGVzdEhvbWVCdXR0b25UcmlnZ2VyaW5nCit7InN0YXJ0TGluZSI6Miwic3RhcnRDb2x1bW4i
OjIsImVuZExpbmUiOjIsImVuZENvbHVtbiI6Mn0KK3sic3RhcnRMaW5lIjoyLCJzdGFydENvbHVt
biI6NCwiZW5kTGluZSI6MiwiZW5kQ29sdW1uIjo0fQoreyJzdGFydExpbmUiOjIsInN0YXJ0Q29s
dW1uIjowLCJlbmRMaW5lIjoyLCJlbmRDb2x1bW4iOjB9Cit7InN0YXJ0TGluZSI6Miwic3RhcnRD
b2x1bW4iOjQsImVuZExpbmUiOjIsImVuZENvbHVtbiI6NH0KKworUnVubmluZzogdGVzdEhvbWVC
dXR0b25Eb2VzTm90Q2hhbmdlQ3Vyc29yCit7InN0YXJ0TGluZSI6MCwic3RhcnRDb2x1bW4iOjIs
ImVuZExpbmUiOjAsImVuZENvbHVtbiI6Mn0KK3sic3RhcnRMaW5lIjowLCJzdGFydENvbHVtbiI6
MCwiZW5kTGluZSI6MCwiZW5kQ29sdW1uIjowfQoreyJzdGFydExpbmUiOjAsInN0YXJ0Q29sdW1u
IjowLCJlbmRMaW5lIjowLCJlbmRDb2x1bW4iOjB9CisKK1J1bm5pbmc6IHRlc3RIb21lQnV0dG9u
V2l0aFNoaWZ0Cit7InN0YXJ0TGluZSI6MCwic3RhcnRDb2x1bW4iOjAsImVuZExpbmUiOjIsImVu
ZENvbHVtbiI6OH0KK3sic3RhcnRMaW5lIjowLCJzdGFydENvbHVtbiI6MCwiZW5kTGluZSI6Miwi
ZW5kQ29sdW1uIjo0fQoreyJzdGFydExpbmUiOjAsInN0YXJ0Q29sdW1uIjowLCJlbmRMaW5lIjoy
LCJlbmRDb2x1bW4iOjB9Cit7InN0YXJ0TGluZSI6MCwic3RhcnRDb2x1bW4iOjAsImVuZExpbmUi
OjIsImVuZENvbHVtbiI6NH0KKworUnVubmluZzogdGVzdEhvbWVCdXR0b25XaXRoU2hpZnRJbnZl
cnNlZAoreyJzdGFydExpbmUiOjMsInN0YXJ0Q29sdW1uIjoxLCJlbmRMaW5lIjoyLCJlbmRDb2x1
bW4iOjh9Cit7InN0YXJ0TGluZSI6Mywic3RhcnRDb2x1bW4iOjEsImVuZExpbmUiOjIsImVuZENv
bHVtbiI6NH0KK3sic3RhcnRMaW5lIjozLCJzdGFydENvbHVtbiI6MSwiZW5kTGluZSI6MiwiZW5k
Q29sdW1uIjowfQoreyJzdGFydExpbmUiOjMsInN0YXJ0Q29sdW1uIjoxLCJlbmRMaW5lIjoyLCJl
bmRDb2x1bW4iOjR9CisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9lZGl0b3Iv
dGV4dC1lZGl0b3ItaG9tZS1idXR0b24uaHRtbCBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9lZGl0
b3IvdGV4dC1lZGl0b3ItaG9tZS1idXR0b24uaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42OTkxMDllODNlMDM5
ODFmNDE2NDc0YTU1MmIzMmQ1NWY5Yzc4Njk1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvaW5zcGVjdG9yL2VkaXRvci90ZXh0LWVkaXRvci1ob21lLWJ1dHRvbi5odG1sCkBAIC0wLDAg
KzEsMTEwIEBACis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdCBzcmM9Ii4uLy4uL2h0dHAvdGVzdHMv
aW5zcGVjdG9yL2luc3BlY3Rvci10ZXN0LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJlZGl0
b3ItdGVzdC5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0PgorCitmdW5jdGlvbiB0ZXN0KCkKK3sKK2Z1
bmN0aW9uIGZvbygpCit7CisgICAgcmV0dXJuIDQyOworfQorICAgIHZhciB0ZXh0RWRpdG9yID0g
SW5zcGVjdG9yVGVzdC5jcmVhdGVUZXN0RWRpdG9yKCk7CisgICAgdGV4dEVkaXRvci5vdmVycmlk
ZVZpZXdwb3J0Rm9yVGVzdCgwLCB1bmRlZmluZWQsIDMpOworICAgIHRleHRFZGl0b3IubWltZVR5
cGUgPSAidGV4dC9qYXZhc2NyaXB0IjsKKyAgICB0ZXh0RWRpdG9yLnNldFJlYWRPbmx5KGZhbHNl
KTsKKyAgICB0ZXh0RWRpdG9yLmVsZW1lbnQuZm9jdXMoKTsKKworICAgIHRleHRFZGl0b3Iuc2V0
VGV4dChmb28udG9TdHJpbmcoKSk7CisKKyAgICBJbnNwZWN0b3JUZXN0LmFkZFJlc3VsdCh0ZXh0
RWRpdG9yLnRleHQoKSk7CisKKyAgICBJbnNwZWN0b3JUZXN0LnJ1blRlc3RTdWl0ZShbCisgICAg
ICAgIGZ1bmN0aW9uIHRlc3RGaXJzdE5vbkJsYW5rQ2hhcmFjdGVyKG5leHQpCisgICAgICAgIHsK
KyAgICAgICAgICAgIHZhciBzZWxlY3Rpb24gPSBXZWJJbnNwZWN0b3IuVGV4dFJhbmdlLmNyZWF0
ZUZyb21Mb2NhdGlvbigyLCA4KTsKKyAgICAgICAgICAgIHRleHRFZGl0b3Iuc2V0U2VsZWN0aW9u
KHNlbGVjdGlvbik7CisgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmFkZFJlc3VsdCh0ZXh0RWRp
dG9yLnNlbGVjdGlvbigpKTsKKyAgICAgICAgICAgIGV2ZW50U2VuZGVyLmtleURvd24oImhvbWUi
LCBbXSk7CisgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmFkZFJlc3VsdCh0ZXh0RWRpdG9yLnNl
bGVjdGlvbigpKTsKKyAgICAgICAgICAgIG5leHQoKTsKKyAgICAgICAgfSwKKworICAgICAgICBm
dW5jdGlvbiB0ZXN0Rmlyc3ROb25CbGFua0NoYXJhY3RlckZyb21XaGl0ZXNwYWNlKG5leHQpCisg
ICAgICAgIHsKKyAgICAgICAgICAgIHZhciBzZWxlY3Rpb24gPSBXZWJJbnNwZWN0b3IuVGV4dFJh
bmdlLmNyZWF0ZUZyb21Mb2NhdGlvbigyLCAyKTsKKyAgICAgICAgICAgIHRleHRFZGl0b3Iuc2V0
U2VsZWN0aW9uKHNlbGVjdGlvbik7CisgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmFkZFJlc3Vs
dCh0ZXh0RWRpdG9yLnNlbGVjdGlvbigpKTsKKyAgICAgICAgICAgIGV2ZW50U2VuZGVyLmtleURv
d24oImhvbWUiLCBbXSk7CisgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmFkZFJlc3VsdCh0ZXh0
RWRpdG9yLnNlbGVjdGlvbigpKTsKKyAgICAgICAgICAgIG5leHQoKTsKKyAgICAgICAgfSwKKwor
ICAgICAgICBmdW5jdGlvbiB0ZXN0SG9tZUJ1dHRvblRyaWdnZXJpbmcobmV4dCkKKyAgICAgICAg
eworICAgICAgICAgICAgdmFyIHNlbGVjdGlvbiA9IFdlYkluc3BlY3Rvci5UZXh0UmFuZ2UuY3Jl
YXRlRnJvbUxvY2F0aW9uKDIsIDIpOworICAgICAgICAgICAgdGV4dEVkaXRvci5zZXRTZWxlY3Rp
b24oc2VsZWN0aW9uKTsKKyAgICAgICAgICAgIEluc3BlY3RvclRlc3QuYWRkUmVzdWx0KHRleHRF
ZGl0b3Iuc2VsZWN0aW9uKCkpOworICAgICAgICAgICAgZXZlbnRTZW5kZXIua2V5RG93bigiaG9t
ZSIsIFtdKTsKKyAgICAgICAgICAgIEluc3BlY3RvclRlc3QuYWRkUmVzdWx0KHRleHRFZGl0b3Iu
c2VsZWN0aW9uKCkpOworICAgICAgICAgICAgZXZlbnRTZW5kZXIua2V5RG93bigiaG9tZSIsIFtd
KTsKKyAgICAgICAgICAgIEluc3BlY3RvclRlc3QuYWRkUmVzdWx0KHRleHRFZGl0b3Iuc2VsZWN0
aW9uKCkpOworICAgICAgICAgICAgZXZlbnRTZW5kZXIua2V5RG93bigiaG9tZSIsIFtdKTsKKyAg
ICAgICAgICAgIEluc3BlY3RvclRlc3QuYWRkUmVzdWx0KHRleHRFZGl0b3Iuc2VsZWN0aW9uKCkp
OworICAgICAgICAgICAgbmV4dCgpOworICAgICAgICB9LAorCisgICAgICAgIGZ1bmN0aW9uIHRl
c3RIb21lQnV0dG9uRG9lc05vdENoYW5nZUN1cnNvcihuZXh0KQorICAgICAgICB7CisgICAgICAg
ICAgICB2YXIgc2VsZWN0aW9uID0gV2ViSW5zcGVjdG9yLlRleHRSYW5nZS5jcmVhdGVGcm9tTG9j
YXRpb24oMCwgMik7CisgICAgICAgICAgICB0ZXh0RWRpdG9yLnNldFNlbGVjdGlvbihzZWxlY3Rp
b24pOworICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5hZGRSZXN1bHQodGV4dEVkaXRvci5zZWxl
Y3Rpb24oKSk7CisgICAgICAgICAgICBldmVudFNlbmRlci5rZXlEb3duKCJob21lIiwgW10pOwor
ICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5hZGRSZXN1bHQodGV4dEVkaXRvci5zZWxlY3Rpb24o
KSk7CisgICAgICAgICAgICBldmVudFNlbmRlci5rZXlEb3duKCJob21lIiwgW10pOworICAgICAg
ICAgICAgSW5zcGVjdG9yVGVzdC5hZGRSZXN1bHQodGV4dEVkaXRvci5zZWxlY3Rpb24oKSk7Cisg
ICAgICAgICAgICBuZXh0KCk7CisgICAgICAgIH0sCisKKyAgICAgICAgZnVuY3Rpb24gdGVzdEhv
bWVCdXR0b25XaXRoU2hpZnQobmV4dCkKKyAgICAgICAgeworICAgICAgICAgICAgdmFyIHNlbGVj
dGlvbiA9IG5ldyBXZWJJbnNwZWN0b3IuVGV4dFJhbmdlKDAsIDAsIDIsIDgpOworICAgICAgICAg
ICAgdGV4dEVkaXRvci5zZXRTZWxlY3Rpb24oc2VsZWN0aW9uKTsKKyAgICAgICAgICAgIEluc3Bl
Y3RvclRlc3QuYWRkUmVzdWx0KHRleHRFZGl0b3Iuc2VsZWN0aW9uKCkpOworICAgICAgICAgICAg
ZXZlbnRTZW5kZXIua2V5RG93bigiaG9tZSIsIFsic2hpZnRLZXkiXSk7CisgICAgICAgICAgICBJ
bnNwZWN0b3JUZXN0LmFkZFJlc3VsdCh0ZXh0RWRpdG9yLnNlbGVjdGlvbigpKTsKKyAgICAgICAg
ICAgIGV2ZW50U2VuZGVyLmtleURvd24oImhvbWUiLCBbInNoaWZ0S2V5Il0pOworICAgICAgICAg
ICAgSW5zcGVjdG9yVGVzdC5hZGRSZXN1bHQodGV4dEVkaXRvci5zZWxlY3Rpb24oKSk7CisgICAg
ICAgICAgICBldmVudFNlbmRlci5rZXlEb3duKCJob21lIiwgWyJzaGlmdEtleSJdKTsKKyAgICAg
ICAgICAgIEluc3BlY3RvclRlc3QuYWRkUmVzdWx0KHRleHRFZGl0b3Iuc2VsZWN0aW9uKCkpOwor
ICAgICAgICAgICAgbmV4dCgpOworICAgICAgICB9LAorCisgICAgICAgIGZ1bmN0aW9uIHRlc3RI
b21lQnV0dG9uV2l0aFNoaWZ0SW52ZXJzZWQobmV4dCkKKyAgICAgICAgeworICAgICAgICAgICAg
dmFyIHNlbGVjdGlvbiA9IG5ldyBXZWJJbnNwZWN0b3IuVGV4dFJhbmdlKDMsIDEsIDIsIDgpOwor
ICAgICAgICAgICAgdGV4dEVkaXRvci5zZXRTZWxlY3Rpb24oc2VsZWN0aW9uKTsKKyAgICAgICAg
ICAgIEluc3BlY3RvclRlc3QuYWRkUmVzdWx0KHRleHRFZGl0b3Iuc2VsZWN0aW9uKCkpOworICAg
ICAgICAgICAgZXZlbnRTZW5kZXIua2V5RG93bigiaG9tZSIsIFsic2hpZnRLZXkiXSk7CisgICAg
ICAgICAgICBJbnNwZWN0b3JUZXN0LmFkZFJlc3VsdCh0ZXh0RWRpdG9yLnNlbGVjdGlvbigpKTsK
KyAgICAgICAgICAgIGV2ZW50U2VuZGVyLmtleURvd24oImhvbWUiLCBbInNoaWZ0S2V5Il0pOwor
ICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5hZGRSZXN1bHQodGV4dEVkaXRvci5zZWxlY3Rpb24o
KSk7CisgICAgICAgICAgICBldmVudFNlbmRlci5rZXlEb3duKCJob21lIiwgWyJzaGlmdEtleSJd
KTsKKyAgICAgICAgICAgIEluc3BlY3RvclRlc3QuYWRkUmVzdWx0KHRleHRFZGl0b3Iuc2VsZWN0
aW9uKCkpOworICAgICAgICAgICAgbmV4dCgpOworICAgICAgICB9CisgICAgXSk7Cit9CisKKzwv
c2NyaXB0PgorPC9oZWFkPgorCis8Ym9keSBvbmxvYWQ9InJ1blRlc3QoKTsiPgorPHA+CitUaGlz
IHRlc3QgdmVyaWZpZXMgdGhhdCBob21lIGJ1dHRvbiB0cmlnZ2VycyBzZWxlY3Rpb24gYmV0d2Vl
biBmaXJzdCBzeW1ib2wgb2YgdGhlIGxpbmUKK2FuZCBmaXJzdCBub24tYmxhbmsgc3ltYm9sIG9m
IHRoZSBsaW5lLgorPC9wPgorCis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9lZmwvVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3Jt
L2VmbC9UZXN0RXhwZWN0YXRpb25zCmluZGV4IGM3Y2JmNjljMjQ2YjhlN2Y5ZTVlOTg2MDJlNWMx
Y2QzMDdkNzliM2UuLjVmOWMzMDE1MDBhNmJjYTI5OWRjZTY5MjYyZWY4MzU4ZjhkMTAyZjkgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2VmbC9UZXN0RXhwZWN0YXRpb25zCisrKyBi
L0xheW91dFRlc3RzL3BsYXRmb3JtL2VmbC9UZXN0RXhwZWN0YXRpb25zCkBAIC0xODE5LDYgKzE4
MTksNyBAQCB3ZWJraXQub3JnL2IvMTA2NzQzIG1lZGlhL3ZpZGVvLWNvbnRyb2xzLWNhcHRpb25z
Lmh0bWwgWyBGYWlsdXJlIF0KICMgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTEwNjg4MwogaW5zcGVjdG9yL2VkaXRvci90ZXh0LWVkaXRvci1mb3JtYXR0ZXIuaHRtbAog
aW5zcGVjdG9yL2VkaXRvci90ZXh0LWVkaXRvci13b3JkLWp1bXBzLmh0bWwKK2luc3BlY3Rvci9l
ZGl0b3IvdGV4dC1lZGl0b3ItaG9tZS1idXR0b24uaHRtbAogCiAjIFJlbW92ZSBmcm9tIGxpc3Qg
YWZ0ZXIgZW5hYmxpbmcgQ0FOVkFTX1BBVEgKIHdlYmtpdC5vcmcvYi8xMDg1MDggZmFzdC9jYW52
YXMvY2FudmFzLXBhdGgtY29uc3RydWN0b3JzLmh0bWwgWyBGYWlsdXJlIF0KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMv
cGxhdGZvcm0vbWFjL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggYmY2N2YyM2U4NTQ4YmM3ZDczOGU1
NjcxMjU0YzM1ZGU1MDI2NDI4OS4uOTU3NjEyODViODBlNWQ4ZjRkNzUwODQ4NjA0YTJmMDU4MDEz
ZGVhNyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1Rlc3RFeHBlY3RhdGlv
bnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTI1
NCw2ICsyNTQsNyBAQCBhbmltYXRpb25zL3BsYXktc3RhdGUuaHRtbAogIyBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA2NzkzCiBpbnNwZWN0b3IvZWRpdG9yL3RleHQt
ZWRpdG9yLWZvcm1hdHRlci5odG1sIFsgU2tpcCBdCiBpbnNwZWN0b3IvZWRpdG9yL3RleHQtZWRp
dG9yLXdvcmQtanVtcHMuaHRtbCBbIFNraXAgXQoraW5zcGVjdG9yL2VkaXRvci90ZXh0LWVkaXRv
ci1ob21lLWJ1dHRvbi5odG1sIFsgU2tpcCBdCiAKICMgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTcxMTIwCiBpbnNwZWN0b3IvZGVidWdnZXIvc2VsZWN0ZWQtY2FsbC1m
cmFtZS1hZnRlci1mb3JtYXR0aW5nLXNvdXJjZS5odG1sCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS9xdC9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vcXQv
VGVzdEV4cGVjdGF0aW9ucwppbmRleCA1YTY3OTFlZWNlZTBhZDExMDJlMjA1MzgxMGQzZDM1YzVi
NjBhYmNkLi44OGIxNmVkYzBkN2U3ZjhhYWM3YWQ5ODYyYjA3ZjU2YjUyMWQyYjY2IDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9xdC9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91
dFRlc3RzL3BsYXRmb3JtL3F0L1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTI2MDAsNiArMjYwMCw3IEBA
IHdlYmtpdC5vcmcvYi8zOTcyNSBmYXN0L2V2ZW50cy9kcmFnLWFuZC1kcm9wLWF1dG9zY3JvbGwu
aHRtbCBbIFNraXAgXQogIyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTA2ODgzCiBpbnNwZWN0b3IvZWRpdG9yL3RleHQtZWRpdG9yLWZvcm1hdHRlci5odG1sCiBpbnNw
ZWN0b3IvZWRpdG9yL3RleHQtZWRpdG9yLXdvcmQtanVtcHMuaHRtbAoraW5zcGVjdG9yL2VkaXRv
ci90ZXh0LWVkaXRvci1ob21lLWJ1dHRvbi5odG1sCiAKICMgTmVlZHMgcmViYXNlbGluZSBhZnRl
ciBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQ2NjQKIHdlYmtpdC5v
cmcvYi8xMDc0NzYgZmFzdC9ibG9jay9mbG9hdC8wMjQuaHRtbCBbIEZhaWx1cmUgXQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>187271</attachid>
            <date>2013-02-08 02:10:42 -0800</date>
            <delta_ts>2013-02-08 06:02:32 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-109154-20130208140716.patch</filename>
            <type>text/plain</type>
            <size>12403</size>
            <attacher name="Andrey Lushnikov">lushnikov</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQyMTA3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNWNhZTkzYTM2ODAxMTQw
YzhmOGU0YzVmMzcxMGI1OWMwYzc0MDYyOS4uZDkzZTlhNThkMDM0MzQ4Yzc3ZTgwMGQwZWMxNmNh
OTcyMmFiNDI2OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDEzLTAyLTA3ICBBbmRy
ZXkgTHVzaG5pa292ICA8bHVzaG5pa292QGNocm9taXVtLm9yZz4KKworICAgICAgICBXZWIgSW5z
cGVjdG9yOiBob21lIGJ1dHRvbiBiZWhhdmlvdXIgaXMgd3JvbmcgaW4gRFRFCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDkxNTQKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBIYW5kbGUgaG9tZSBrZXkgc2hv
cnRjdXQgZXhwbGljaXRseSBpbiBUZXh0RWRpdG9yTWFpblBhbmVsLgorCisgICAgICAgIE5ldyB0
ZXN0OiBpbnNwZWN0b3IvZWRpdG9yL3RleHQtZWRpdG9yLWhvbWUtYnV0dG9uLmh0bWwKKworICAg
ICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvRGVmYXVsdFRleHRFZGl0b3IuanM6CisgICAgICAg
IChXZWJJbnNwZWN0b3IuVGV4dEVkaXRvck1haW5QYW5lbC5wcm90b3R5cGUuX3JlZ2lzdGVyU2hv
cnRjdXRzKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5UZXh0RWRpdG9yTWFpblBhbmVsLnByb3Rv
dHlwZS5faGFuZGxlSG9tZUtleSk6CisKIDIwMTMtMDItMDcgIFZzZXZvbG9kIFZsYXNvdiAgPHZz
ZXZpa0BjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgV2ViIEluc3BlY3RvcjogQ2xvc3VyZSBjb21w
aWxhdGlvbiBmaXhlcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250
LWVuZC9EZWZhdWx0VGV4dEVkaXRvci5qcyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9u
dC1lbmQvRGVmYXVsdFRleHRFZGl0b3IuanMKaW5kZXggMDViOGUxYjFmZGY1OGFlODM4OTM0MjVj
NTVhOWFmNjVhNWFlYmZlMi4uODUxNDFjNzZlZDMwZjdjNjQ3NjdiNjNiZTRhMDE5NmJmZmI1Mzk5
NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9EZWZhdWx0
VGV4dEVkaXRvci5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0Rl
ZmF1bHRUZXh0RWRpdG9yLmpzCkBAIC0xMzk3LDYgKzEzOTcsMzcgQEAgV2ViSW5zcGVjdG9yLlRl
eHRFZGl0b3JNYWluUGFuZWwucHJvdG90eXBlID0gewogICAgICAgICB2YXIgaGFuZGxlU2hpZnRU
YWJLZXkgPSB0aGlzLl9oYW5kbGVUYWJLZXlQcmVzcy5iaW5kKHRoaXMsIHRydWUpOwogICAgICAg
ICB0aGlzLl9zaG9ydGN1dHNbV2ViSW5zcGVjdG9yLktleWJvYXJkU2hvcnRjdXQubWFrZUtleShr
ZXlzLlRhYi5jb2RlKV0gPSBoYW5kbGVUYWJLZXk7CiAgICAgICAgIHRoaXMuX3Nob3J0Y3V0c1tX
ZWJJbnNwZWN0b3IuS2V5Ym9hcmRTaG9ydGN1dC5tYWtlS2V5KGtleXMuVGFiLmNvZGUsIG1vZGlm
aWVycy5TaGlmdCldID0gaGFuZGxlU2hpZnRUYWJLZXk7CisKKyAgICAgICAgdmFyIGhvbWVLZXkg
PSBXZWJJbnNwZWN0b3IuaXNNYWMoKSA/IGtleXMuUmlnaHQgOiBrZXlzLkhvbWU7CisgICAgICAg
IHZhciBob21lTW9kaWZpZXIgPSBXZWJJbnNwZWN0b3IuaXNNYWMoKSA/IG1vZGlmaWVycy5NZXRh
IDogbW9kaWZpZXJzLk5vbmU7CisgICAgICAgIHRoaXMuX3Nob3J0Y3V0c1tXZWJJbnNwZWN0b3Iu
S2V5Ym9hcmRTaG9ydGN1dC5tYWtlS2V5KGhvbWVLZXkuY29kZSwgaG9tZU1vZGlmaWVyKV0gPSB0
aGlzLl9oYW5kbGVIb21lS2V5LmJpbmQodGhpcywgZmFsc2UpOworICAgICAgICB0aGlzLl9zaG9y
dGN1dHNbV2ViSW5zcGVjdG9yLktleWJvYXJkU2hvcnRjdXQubWFrZUtleShob21lS2V5LmNvZGUs
IGhvbWVNb2RpZmllciB8IG1vZGlmaWVycy5TaGlmdCldID0gdGhpcy5faGFuZGxlSG9tZUtleS5i
aW5kKHRoaXMsIHRydWUpOworICAgIH0sCisKKyAgICAvKioKKyAgICAgKiBAcGFyYW0ge2Jvb2xl
YW59IHNoaWZ0CisgICAgICovCisgICAgX2hhbmRsZUhvbWVLZXk6IGZ1bmN0aW9uKHNoaWZ0KQor
ICAgIHsKKyAgICAgICAgdmFyIHNlbGVjdGlvbiA9IHRoaXMuc2VsZWN0aW9uKCk7CisKKyAgICAg
ICAgdmFyIGxpbmUgPSB0aGlzLl90ZXh0TW9kZWwubGluZShzZWxlY3Rpb24uZW5kTGluZSk7Cisg
ICAgICAgIHZhciBmaXJzdE5vbkJsYW5rQ2hhcmFjdGVyID0gMDsKKyAgICAgICAgd2hpbGUgKGZp
cnN0Tm9uQmxhbmtDaGFyYWN0ZXIgPCBsaW5lLmxlbmd0aCkgeworICAgICAgICAgICAgdmFyIGNo
YXIgPSBsaW5lLmNoYXJBdChmaXJzdE5vbkJsYW5rQ2hhcmFjdGVyKTsKKyAgICAgICAgICAgIGlm
IChjaGFyID09PSAiICIgfHwgY2hhciA9PT0gIlx0IikKKyAgICAgICAgICAgICAgICArK2ZpcnN0
Tm9uQmxhbmtDaGFyYWN0ZXI7CisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgYnJl
YWs7CisgICAgICAgIH0KKyAgICAgICAgaWYgKGZpcnN0Tm9uQmxhbmtDaGFyYWN0ZXIgPj0gbGlu
ZS5sZW5ndGggfHwgc2VsZWN0aW9uLmVuZENvbHVtbiA9PT0gZmlyc3ROb25CbGFua0NoYXJhY3Rl
cikKKyAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgICAgICBzZWxlY3Rpb24uZW5kQ29s
dW1uID0gZmlyc3ROb25CbGFua0NoYXJhY3RlcjsKKyAgICAgICAgaWYgKCFzaGlmdCkKKyAgICAg
ICAgICAgIHNlbGVjdGlvbiA9IHNlbGVjdGlvbi5jb2xsYXBzZVRvRW5kKCk7CisgICAgICAgIHRo
aXMuX3Jlc3RvcmVTZWxlY3Rpb24oc2VsZWN0aW9uKTsKKyAgICAgICAgcmV0dXJuIHRydWU7CiAg
ICAgfSwKIAogICAgIC8qKgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDdmZTcwNjYwMDg1MzQ1ODVkMDg2NTM0ZDZkNmE3MTMw
NjU5MDhiMDEuLmM4ZDkwOTUzY2Y1ZWQ0NTZiNDVmMWM4MDNkZmI4YzI4OGZmMzA5NzcgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cK
QEAgLTEsMyArMSwxOSBAQAorMjAxMy0wMi0wNyAgQW5kcmV5IEx1c2huaWtvdiAgPGx1c2huaWtv
dkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgV2ViIEluc3BlY3RvcjogaG9tZSBidXR0b24gYmVo
YXZpb3VyIGlzIHdyb25nIGluIERURQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTA5MTU0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgQWRkIGxheW91dCB0ZXN0IHRvIHZlcmlmeSBob21lIGJ1dHRvbiBiZWhh
dmlvdXIuIEV4Y2x1ZGUgdGhpcyB0ZXN0IG9uCisgICAgICAgIHBsYXRmb3JtcyB0aGF0IGRvIG5v
dCBoYXZlIGV2ZW50U2VuZGVyIG9iamVjdCBpbiB0ZXN0IHNoZWxsLgorCisgICAgICAgICogaW5z
cGVjdG9yL2VkaXRvci90ZXh0LWVkaXRvci1ob21lLWJ1dHRvbi1leHBlY3RlZC50eHQ6IEFkZGVk
LgorICAgICAgICAqIGluc3BlY3Rvci9lZGl0b3IvdGV4dC1lZGl0b3ItaG9tZS1idXR0b24uaHRt
bDogQWRkZWQuCisgICAgICAgICogcGxhdGZvcm0vZWZsL1Rlc3RFeHBlY3RhdGlvbnM6CisgICAg
ICAgICogcGxhdGZvcm0vbWFjL1Rlc3RFeHBlY3RhdGlvbnM6CisgICAgICAgICogcGxhdGZvcm0v
cXQvVGVzdEV4cGVjdGF0aW9uczoKKwogMjAxMy0wMi0wNyAgWm9sdGFuIEFydmFpICA8emFydmFp
QGluZi51LXN6ZWdlZC5odT4KIAogICAgICAgICBbUXRdIFVucmV2aXdlZCBnYXJkZW5pbmcuIFJl
YmFzZWxpbmluZyBhbmQgc2tpcHBpbmcgbmV3IGZhaWx1cmVzLgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW5zcGVjdG9yL2VkaXRvci90ZXh0LWVkaXRvci1ob21lLWJ1dHRvbi1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZWRpdG9yL3RleHQtZWRpdG9yLWhvbWUtYnV0dG9u
LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mNTQxZjFkZjE3OGVmZjZkNDI4ZWZhZDYwMTZjNDVj
ZDEwMGNmNGZmCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2VkaXRv
ci90ZXh0LWVkaXRvci1ob21lLWJ1dHRvbi1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw5NSBAQAor
VGhpcyB0ZXN0IHZlcmlmaWVzIHRoYXQgaG9tZSBidXR0b24gdHJpZ2dlcnMgc2VsZWN0aW9uIGJl
dHdlZW4gZmlyc3Qgc3ltYm9sIG9mIHRoZSBsaW5lIGFuZCBmaXJzdCBub24tYmxhbmsgc3ltYm9s
IG9mIHRoZSBsaW5lLgorCitmdW5jdGlvbiBmb28oKQoreworICAgIHJldHVybiA0MjsKK30KKwor
UnVubmluZzogdGVzdEZpcnN0Tm9uQmxhbmtDaGFyYWN0ZXIKK2Z1bmN0aW9uIGZvbygpCit7Cisg
ICAgcmV0dXxybiA0MjsKK30KK2Z1bmN0aW9uIGZvbygpCit7CisgICAgfHJldHVybiA0MjsKK30K
KworUnVubmluZzogdGVzdEZpcnN0Tm9uQmxhbmtDaGFyYWN0ZXJGcm9tV2hpdGVzcGFjZQorZnVu
Y3Rpb24gZm9vKCkKK3sKKyAgfCAgcmV0dXJuIDQyOworfQorZnVuY3Rpb24gZm9vKCkKK3sKKyAg
ICB8cmV0dXJuIDQyOworfQorCitSdW5uaW5nOiB0ZXN0SG9tZUJ1dHRvblRyaWdnZXJpbmcKK2Z1
bmN0aW9uIGZvbygpCit7CisgIHwgIHJldHVybiA0MjsKK30KK2Z1bmN0aW9uIGZvbygpCit7Cisg
ICAgfHJldHVybiA0MjsKK30KK2Z1bmN0aW9uIGZvbygpCit7Cit8ICAgIHJldHVybiA0MjsKK30K
K2Z1bmN0aW9uIGZvbygpCit7CisgICAgfHJldHVybiA0MjsKK30KKworUnVubmluZzogdGVzdEhv
bWVCdXR0b25Eb2VzTm90Q2hhbmdlQ3Vyc29yCitmdXxuY3Rpb24gZm9vKCkKK3sKKyAgICByZXR1
cm4gNDI7Cit9Cit8ZnVuY3Rpb24gZm9vKCkKK3sKKyAgICByZXR1cm4gNDI7Cit9Cit8ZnVuY3Rp
b24gZm9vKCkKK3sKKyAgICByZXR1cm4gNDI7Cit9CisKK1J1bm5pbmc6IHRlc3RIb21lQnV0dG9u
V2l0aFNoaWZ0Cis+ZnVuY3Rpb24gZm9vKCkKK3sKKyAgICByZXR1PHJuIDQyOworfQorPmZ1bmN0
aW9uIGZvbygpCit7CisgICAgPHJldHVybiA0MjsKK30KKz5mdW5jdGlvbiBmb28oKQoreworPCAg
ICByZXR1cm4gNDI7Cit9Cis+ZnVuY3Rpb24gZm9vKCkKK3sKKyAgICA8cmV0dXJuIDQyOworfQor
CitSdW5uaW5nOiB0ZXN0SG9tZUJ1dHRvbldpdGhTaGlmdEludmVyc2VkCitmdW5jdGlvbiBmb28o
KQoreworICAgIHJldHU+cm4gNDI7Cit9PAorZnVuY3Rpb24gZm9vKCkKK3sKKyAgICA+cmV0dXJu
IDQyOworfTwKK2Z1bmN0aW9uIGZvbygpCit7Cis+ICAgIHJldHVybiA0MjsKK308CitmdW5jdGlv
biBmb28oKQoreworICAgID5yZXR1cm4gNDI7Cit9PAorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbnNwZWN0b3IvZWRpdG9yL3RleHQtZWRpdG9yLWhvbWUtYnV0dG9uLmh0bWwgYi9MYXlvdXRU
ZXN0cy9pbnNwZWN0b3IvZWRpdG9yL3RleHQtZWRpdG9yLWhvbWUtYnV0dG9uLmh0bWwKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uOTQ4YThkZjhlZDE2MWVmY2FhYmVlZmMwNzI1MzE2Njk3MWY1ZDBlMAotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9lZGl0b3IvdGV4dC1lZGl0b3ItaG9tZS1i
dXR0b24uaHRtbApAQCAtMCwwICsxLDE0NCBAQAorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQgc3Jj
PSIuLi8uLi9odHRwL3Rlc3RzL2luc3BlY3Rvci9pbnNwZWN0b3ItdGVzdC5qcyI+PC9zY3JpcHQ+
Cis8c2NyaXB0IHNyYz0iZWRpdG9yLXRlc3QuanMiPjwvc2NyaXB0PgorPHNjcmlwdD4KKworZnVu
Y3Rpb24gdGVzdCgpCit7CitmdW5jdGlvbiBmb28oKQoreworICAgIHJldHVybiA0MjsKK30KKyAg
ICB2YXIgdGV4dEVkaXRvciA9IEluc3BlY3RvclRlc3QuY3JlYXRlVGVzdEVkaXRvcigpOworICAg
IHRleHRFZGl0b3Iub3ZlcnJpZGVWaWV3cG9ydEZvclRlc3QoMCwgdW5kZWZpbmVkLCAzKTsKKyAg
ICB0ZXh0RWRpdG9yLm1pbWVUeXBlID0gInRleHQvamF2YXNjcmlwdCI7CisgICAgdGV4dEVkaXRv
ci5zZXRSZWFkT25seShmYWxzZSk7CisgICAgdGV4dEVkaXRvci5lbGVtZW50LmZvY3VzKCk7CisK
KyAgICB0ZXh0RWRpdG9yLnNldFRleHQoZm9vLnRvU3RyaW5nKCkpOworCisgICAgSW5zcGVjdG9y
VGVzdC5hZGRSZXN1bHQodGV4dEVkaXRvci50ZXh0KCkpOworCisgICAgZnVuY3Rpb24gdGV4dFdp
dGhTZWxlY3Rpb24odGV4dCwgc2VsZWN0aW9uKQorICAgIHsKKyAgICAgICAgaWYgKCFzZWxlY3Rp
b24pCisgICAgICAgICAgICByZXR1cm4gdGV4dDsKKworICAgICAgICBmdW5jdGlvbiBsaW5lV2l0
aEN1cnNvcihsaW5lLCBjb2x1bW4sIGN1cnNvckNoYXIpCisgICAgICAgIHsKKyAgICAgICAgICAg
IHJldHVybiBsaW5lLnN1YnN0cmluZygwLCBjb2x1bW4pICsgY3Vyc29yQ2hhciArIGxpbmUuc3Vi
c3RyaW5nKGNvbHVtbik7CisgICAgICAgIH0KKworICAgICAgICB2YXIgbGluZXMgPSB0ZXh0LnNw
bGl0KCJcbiIpOworICAgICAgICBzZWxlY3Rpb24gPSBzZWxlY3Rpb24ubm9ybWFsaXplKCk7Cisg
ICAgICAgIHZhciBlbmRDdXJzb3JDaGFyID0gc2VsZWN0aW9uLmlzRW1wdHkoKSA/ICJ8IiA6ICI8
IjsKKyAgICAgICAgbGluZXNbc2VsZWN0aW9uLmVuZExpbmVdID0gbGluZVdpdGhDdXJzb3IobGlu
ZXNbc2VsZWN0aW9uLmVuZExpbmVdLCBzZWxlY3Rpb24uZW5kQ29sdW1uLCBlbmRDdXJzb3JDaGFy
KTsKKyAgICAgICAgaWYgKCFzZWxlY3Rpb24uaXNFbXB0eSgpKSB7CisgICAgICAgICAgICBsaW5l
c1tzZWxlY3Rpb24uc3RhcnRMaW5lXSA9IGxpbmVXaXRoQ3Vyc29yKGxpbmVzW3NlbGVjdGlvbi5z
dGFydExpbmVdLCBzZWxlY3Rpb24uc3RhcnRDb2x1bW4sICI+Iik7CisgICAgICAgIH0KKyAgICAg
ICAgcmV0dXJuIGxpbmVzLmpvaW4oIlxuIik7CisgICAgfQorCisgICAgZnVuY3Rpb24gZHVtcFRl
eHRFZGl0b3JXaXRoU2VsZWN0aW9uKCkKKyAgICB7CisgICAgICAgIEluc3BlY3RvclRlc3QuYWRk
UmVzdWx0KHRleHRXaXRoU2VsZWN0aW9uKHRleHRFZGl0b3IudGV4dCgpLCB0ZXh0RWRpdG9yLnNl
bGVjdGlvbigpKSk7CisgICAgfQorCisgICAgZnVuY3Rpb24gaG9tZUJ1dHRvbihzaGlmdCkKKyAg
ICB7CisgICAgICAgIHZhciBrZXkgPSBXZWJJbnNwZWN0b3IuaXNNYWMoKSA/ICJsZWZ0QXJyb3ci
IDogImhvbWUiOworICAgICAgICB2YXIgbW9kaWZpZXJzID0gV2ViSW5zcGVjdG9yLmlzTWFjKCkg
PyBbIm1ldGFLZXkiXSA6IFtdOworICAgICAgICBpZiAoc2hpZnQpCisgICAgICAgICAgICBtb2Rp
ZmllcnMucHVzaCgic2hpZnRLZXkiKTsKKyAgICAgICAgZXZlbnRTZW5kZXIua2V5RG93bihrZXks
IG1vZGlmaWVycyk7CisgICAgfQorCisgICAgSW5zcGVjdG9yVGVzdC5ydW5UZXN0U3VpdGUoWwor
ICAgICAgICBmdW5jdGlvbiB0ZXN0Rmlyc3ROb25CbGFua0NoYXJhY3RlcihuZXh0KQorICAgICAg
ICB7CisgICAgICAgICAgICB2YXIgc2VsZWN0aW9uID0gV2ViSW5zcGVjdG9yLlRleHRSYW5nZS5j
cmVhdGVGcm9tTG9jYXRpb24oMiwgOCk7CisgICAgICAgICAgICB0ZXh0RWRpdG9yLnNldFNlbGVj
dGlvbihzZWxlY3Rpb24pOworICAgICAgICAgICAgZHVtcFRleHRFZGl0b3JXaXRoU2VsZWN0aW9u
KCk7CisgICAgICAgICAgICBob21lQnV0dG9uKGZhbHNlKTsKKyAgICAgICAgICAgIGR1bXBUZXh0
RWRpdG9yV2l0aFNlbGVjdGlvbigpOworICAgICAgICAgICAgbmV4dCgpOworICAgICAgICB9LAor
CisgICAgICAgIGZ1bmN0aW9uIHRlc3RGaXJzdE5vbkJsYW5rQ2hhcmFjdGVyRnJvbVdoaXRlc3Bh
Y2UobmV4dCkKKyAgICAgICAgeworICAgICAgICAgICAgdmFyIHNlbGVjdGlvbiA9IFdlYkluc3Bl
Y3Rvci5UZXh0UmFuZ2UuY3JlYXRlRnJvbUxvY2F0aW9uKDIsIDIpOworICAgICAgICAgICAgdGV4
dEVkaXRvci5zZXRTZWxlY3Rpb24oc2VsZWN0aW9uKTsKKyAgICAgICAgICAgIGR1bXBUZXh0RWRp
dG9yV2l0aFNlbGVjdGlvbigpOworICAgICAgICAgICAgaG9tZUJ1dHRvbihmYWxzZSk7CisgICAg
ICAgICAgICBkdW1wVGV4dEVkaXRvcldpdGhTZWxlY3Rpb24oKTsKKyAgICAgICAgICAgIG5leHQo
KTsKKyAgICAgICAgfSwKKworICAgICAgICBmdW5jdGlvbiB0ZXN0SG9tZUJ1dHRvblRyaWdnZXJp
bmcobmV4dCkKKyAgICAgICAgeworICAgICAgICAgICAgdmFyIHNlbGVjdGlvbiA9IFdlYkluc3Bl
Y3Rvci5UZXh0UmFuZ2UuY3JlYXRlRnJvbUxvY2F0aW9uKDIsIDIpOworICAgICAgICAgICAgdGV4
dEVkaXRvci5zZXRTZWxlY3Rpb24oc2VsZWN0aW9uKTsKKyAgICAgICAgICAgIGR1bXBUZXh0RWRp
dG9yV2l0aFNlbGVjdGlvbigpOworICAgICAgICAgICAgaG9tZUJ1dHRvbihmYWxzZSk7CisgICAg
ICAgICAgICBkdW1wVGV4dEVkaXRvcldpdGhTZWxlY3Rpb24oKTsKKyAgICAgICAgICAgIGhvbWVC
dXR0b24oZmFsc2UpOworICAgICAgICAgICAgZHVtcFRleHRFZGl0b3JXaXRoU2VsZWN0aW9uKCk7
CisgICAgICAgICAgICBob21lQnV0dG9uKGZhbHNlKTsKKyAgICAgICAgICAgIGR1bXBUZXh0RWRp
dG9yV2l0aFNlbGVjdGlvbigpOworICAgICAgICAgICAgbmV4dCgpOworICAgICAgICB9LAorCisg
ICAgICAgIGZ1bmN0aW9uIHRlc3RIb21lQnV0dG9uRG9lc05vdENoYW5nZUN1cnNvcihuZXh0KQor
ICAgICAgICB7CisgICAgICAgICAgICB2YXIgc2VsZWN0aW9uID0gV2ViSW5zcGVjdG9yLlRleHRS
YW5nZS5jcmVhdGVGcm9tTG9jYXRpb24oMCwgMik7CisgICAgICAgICAgICB0ZXh0RWRpdG9yLnNl
dFNlbGVjdGlvbihzZWxlY3Rpb24pOworICAgICAgICAgICAgZHVtcFRleHRFZGl0b3JXaXRoU2Vs
ZWN0aW9uKCk7CisgICAgICAgICAgICBob21lQnV0dG9uKGZhbHNlKTsKKyAgICAgICAgICAgIGR1
bXBUZXh0RWRpdG9yV2l0aFNlbGVjdGlvbigpOworICAgICAgICAgICAgaG9tZUJ1dHRvbihmYWxz
ZSk7CisgICAgICAgICAgICBkdW1wVGV4dEVkaXRvcldpdGhTZWxlY3Rpb24oKTsKKyAgICAgICAg
ICAgIG5leHQoKTsKKyAgICAgICAgfSwKKworICAgICAgICBmdW5jdGlvbiB0ZXN0SG9tZUJ1dHRv
bldpdGhTaGlmdChuZXh0KQorICAgICAgICB7CisgICAgICAgICAgICB2YXIgc2VsZWN0aW9uID0g
bmV3IFdlYkluc3BlY3Rvci5UZXh0UmFuZ2UoMCwgMCwgMiwgOCk7CisgICAgICAgICAgICB0ZXh0
RWRpdG9yLnNldFNlbGVjdGlvbihzZWxlY3Rpb24pOworICAgICAgICAgICAgZHVtcFRleHRFZGl0
b3JXaXRoU2VsZWN0aW9uKCk7CisgICAgICAgICAgICBob21lQnV0dG9uKHRydWUpOworICAgICAg
ICAgICAgZHVtcFRleHRFZGl0b3JXaXRoU2VsZWN0aW9uKCk7CisgICAgICAgICAgICBob21lQnV0
dG9uKHRydWUpOworICAgICAgICAgICAgZHVtcFRleHRFZGl0b3JXaXRoU2VsZWN0aW9uKCk7Cisg
ICAgICAgICAgICBob21lQnV0dG9uKHRydWUpOworICAgICAgICAgICAgZHVtcFRleHRFZGl0b3JX
aXRoU2VsZWN0aW9uKCk7CisgICAgICAgICAgICBuZXh0KCk7CisgICAgICAgIH0sCisKKyAgICAg
ICAgZnVuY3Rpb24gdGVzdEhvbWVCdXR0b25XaXRoU2hpZnRJbnZlcnNlZChuZXh0KQorICAgICAg
ICB7CisgICAgICAgICAgICB2YXIgc2VsZWN0aW9uID0gbmV3IFdlYkluc3BlY3Rvci5UZXh0UmFu
Z2UoMywgMSwgMiwgOCk7CisgICAgICAgICAgICB0ZXh0RWRpdG9yLnNldFNlbGVjdGlvbihzZWxl
Y3Rpb24pOworICAgICAgICAgICAgZHVtcFRleHRFZGl0b3JXaXRoU2VsZWN0aW9uKCk7CisgICAg
ICAgICAgICBob21lQnV0dG9uKHRydWUpOworICAgICAgICAgICAgZHVtcFRleHRFZGl0b3JXaXRo
U2VsZWN0aW9uKCk7CisgICAgICAgICAgICBob21lQnV0dG9uKHRydWUpOworICAgICAgICAgICAg
ZHVtcFRleHRFZGl0b3JXaXRoU2VsZWN0aW9uKCk7CisgICAgICAgICAgICBob21lQnV0dG9uKHRy
dWUpOworICAgICAgICAgICAgZHVtcFRleHRFZGl0b3JXaXRoU2VsZWN0aW9uKCk7CisgICAgICAg
ICAgICBuZXh0KCk7CisgICAgICAgIH0KKyAgICBdKTsKK30KKworPC9zY3JpcHQ+Cis8L2hlYWQ+
CisKKzxib2R5IG9ubG9hZD0icnVuVGVzdCgpOyI+Cis8cD4KK1RoaXMgdGVzdCB2ZXJpZmllcyB0
aGF0IGhvbWUgYnV0dG9uIHRyaWdnZXJzIHNlbGVjdGlvbiBiZXR3ZWVuIGZpcnN0IHN5bWJvbCBv
ZiB0aGUgbGluZQorYW5kIGZpcnN0IG5vbi1ibGFuayBzeW1ib2wgb2YgdGhlIGxpbmUuCis8L3A+
CisKKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2Vm
bC9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZWZsL1Rlc3RFeHBlY3Rh
dGlvbnMKaW5kZXggYzdjYmY2OWMyNDZiOGU3ZjllNWU5ODYwMmU1YzFjZDMwN2Q3OWIzZS4uNWY5
YzMwMTUwMGE2YmNhMjk5ZGNlNjkyNjJlZjgzNThmOGQxMDJmOSAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvcGxhdGZvcm0vZWZsL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vZWZsL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTE4MTksNiArMTgxOSw3IEBAIHdlYmtpdC5v
cmcvYi8xMDY3NDMgbWVkaWEvdmlkZW8tY29udHJvbHMtY2FwdGlvbnMuaHRtbCBbIEZhaWx1cmUg
XQogIyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA2ODgzCiBpbnNw
ZWN0b3IvZWRpdG9yL3RleHQtZWRpdG9yLWZvcm1hdHRlci5odG1sCiBpbnNwZWN0b3IvZWRpdG9y
L3RleHQtZWRpdG9yLXdvcmQtanVtcHMuaHRtbAoraW5zcGVjdG9yL2VkaXRvci90ZXh0LWVkaXRv
ci1ob21lLWJ1dHRvbi5odG1sCiAKICMgUmVtb3ZlIGZyb20gbGlzdCBhZnRlciBlbmFibGluZyBD
QU5WQVNfUEFUSAogd2Via2l0Lm9yZy9iLzEwODUwOCBmYXN0L2NhbnZhcy9jYW52YXMtcGF0aC1j
b25zdHJ1Y3RvcnMuaHRtbCBbIEZhaWx1cmUgXQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vbWFjL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvVGVz
dEV4cGVjdGF0aW9ucwppbmRleCBiZjY3ZjIzZTg1NDhiYzdkNzM4ZTU2NzEyNTRjMzVkZTUwMjY0
Mjg5Li45NTc2MTI4NWI4MGU1ZDhmNGQ3NTA4NDg2MDRhMmYwNTgwMTNkZWE3IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9tYWMvVGVzdEV4cGVjdGF0aW9ucwpAQCAtMjU0LDYgKzI1NCw3IEBAIGFu
aW1hdGlvbnMvcGxheS1zdGF0ZS5odG1sCiAjIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xMDY3OTMKIGluc3BlY3Rvci9lZGl0b3IvdGV4dC1lZGl0b3ItZm9ybWF0dGVy
Lmh0bWwgWyBTa2lwIF0KIGluc3BlY3Rvci9lZGl0b3IvdGV4dC1lZGl0b3Itd29yZC1qdW1wcy5o
dG1sIFsgU2tpcCBdCitpbnNwZWN0b3IvZWRpdG9yL3RleHQtZWRpdG9yLWhvbWUtYnV0dG9uLmh0
bWwgWyBTa2lwIF0KIAogIyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
NzExMjAKIGluc3BlY3Rvci9kZWJ1Z2dlci9zZWxlY3RlZC1jYWxsLWZyYW1lLWFmdGVyLWZvcm1h
dHRpbmctc291cmNlLmh0bWwKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3F0L1Rl
c3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9xdC9UZXN0RXhwZWN0YXRpb25z
CmluZGV4IDVhNjc5MWVlY2VlMGFkMTEwMmUyMDUzODEwZDNkMzVjNWI2MGFiY2QuLjg4YjE2ZWRj
MGQ3ZTdmOGFhYzdhZDk4NjJiMDdmNTZiNTIxZDJiNjYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L3BsYXRmb3JtL3F0L1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
cXQvVGVzdEV4cGVjdGF0aW9ucwpAQCAtMjYwMCw2ICsyNjAwLDcgQEAgd2Via2l0Lm9yZy9iLzM5
NzI1IGZhc3QvZXZlbnRzL2RyYWctYW5kLWRyb3AtYXV0b3Njcm9sbC5odG1sIFsgU2tpcCBdCiAj
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDY4ODMKIGluc3BlY3Rv
ci9lZGl0b3IvdGV4dC1lZGl0b3ItZm9ybWF0dGVyLmh0bWwKIGluc3BlY3Rvci9lZGl0b3IvdGV4
dC1lZGl0b3Itd29yZC1qdW1wcy5odG1sCitpbnNwZWN0b3IvZWRpdG9yL3RleHQtZWRpdG9yLWhv
bWUtYnV0dG9uLmh0bWwKIAogIyBOZWVkcyByZWJhc2VsaW5lIGFmdGVyIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDY2NAogd2Via2l0Lm9yZy9iLzEwNzQ3NiBmYXN0
L2Jsb2NrL2Zsb2F0LzAyNC5odG1sIFsgRmFpbHVyZSBdCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>187301</attachid>
            <date>2013-02-08 06:02:39 -0800</date>
            <delta_ts>2013-02-11 01:35:54 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-109154-20130208175912.patch</filename>
            <type>text/plain</type>
            <size>13101</size>
            <attacher name="Andrey Lushnikov">lushnikov</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQyMjUwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOThjNzI2MDk2YmUzYWZh
YTlkMzg0MWQxZDcxODE1MTUyY2RhZDY2ZC4uZmJlZjI2MmMzZGMyNjE0NTE1ZDU2OTZjNWI4NWIy
YmE4M2RmMWRiNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDEzLTAyLTA4ICBBbmRy
ZXkgTHVzaG5pa292ICA8bHVzaG5pa292QGNocm9taXVtLm9yZz4KKworICAgICAgICBXZWIgSW5z
cGVjdG9yOiBob21lIGJ1dHRvbiBiZWhhdmlvdXIgaXMgd3JvbmcgaW4gRFRFCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDkxNTQKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBIYW5kbGUgaG9tZSBrZXkgc2hv
cnRjdXQgZXhwbGljaXRseSBpbiBUZXh0RWRpdG9yTWFpblBhbmVsLgorCisgICAgICAgIE5ldyB0
ZXN0OiBpbnNwZWN0b3IvZWRpdG9yL3RleHQtZWRpdG9yLWhvbWUtYnV0dG9uLmh0bWwKKworICAg
ICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvRGVmYXVsdFRleHRFZGl0b3IuanM6CisgICAgICAg
IChXZWJJbnNwZWN0b3IuVGV4dEVkaXRvck1haW5QYW5lbC5wcm90b3R5cGUuX3JlZ2lzdGVyU2hv
cnRjdXRzKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5UZXh0RWRpdG9yTWFpblBhbmVsLnByb3Rv
dHlwZS5faGFuZGxlSG9tZUtleSk6CisKIDIwMTMtMDItMDggIERhbiBDYXJuZXkgIDxkY2FybmV5
QGdvb2dsZS5jb20+CiAKICAgICAgICAgW3Y4XSBpc29sYXRlIHBhcmFtZXRlciBhZGRlZCB0byBh
bGwgdjg6OnBlcmlzdGVudCBjYWxscwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL2Zyb250LWVuZC9EZWZhdWx0VGV4dEVkaXRvci5qcyBiL1NvdXJjZS9XZWJDb3JlL2luc3Bl
Y3Rvci9mcm9udC1lbmQvRGVmYXVsdFRleHRFZGl0b3IuanMKaW5kZXggMmFlODFkZTJlNDAyZjQ3
OGQ2OTdkNzllMDYyODZhOGQ1NTZhM2RjNS4uMmI0YmI1YmM0YTZkOGI5ODc3NmQxM2M3ZTk5MGYz
N2M3M2UwMTI2OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVu
ZC9EZWZhdWx0VGV4dEVkaXRvci5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJv
bnQtZW5kL0RlZmF1bHRUZXh0RWRpdG9yLmpzCkBAIC0xMzk3LDYgKzEzOTcsMzcgQEAgV2ViSW5z
cGVjdG9yLlRleHRFZGl0b3JNYWluUGFuZWwucHJvdG90eXBlID0gewogICAgICAgICB2YXIgaGFu
ZGxlU2hpZnRUYWJLZXkgPSB0aGlzLl9oYW5kbGVUYWJLZXlQcmVzcy5iaW5kKHRoaXMsIHRydWUp
OwogICAgICAgICB0aGlzLl9zaG9ydGN1dHNbV2ViSW5zcGVjdG9yLktleWJvYXJkU2hvcnRjdXQu
bWFrZUtleShrZXlzLlRhYi5jb2RlKV0gPSBoYW5kbGVUYWJLZXk7CiAgICAgICAgIHRoaXMuX3No
b3J0Y3V0c1tXZWJJbnNwZWN0b3IuS2V5Ym9hcmRTaG9ydGN1dC5tYWtlS2V5KGtleXMuVGFiLmNv
ZGUsIG1vZGlmaWVycy5TaGlmdCldID0gaGFuZGxlU2hpZnRUYWJLZXk7CisKKyAgICAgICAgdmFy
IGhvbWVLZXkgPSBXZWJJbnNwZWN0b3IuaXNNYWMoKSA/IGtleXMuUmlnaHQgOiBrZXlzLkhvbWU7
CisgICAgICAgIHZhciBob21lTW9kaWZpZXIgPSBXZWJJbnNwZWN0b3IuaXNNYWMoKSA/IG1vZGlm
aWVycy5NZXRhIDogbW9kaWZpZXJzLk5vbmU7CisgICAgICAgIHRoaXMuX3Nob3J0Y3V0c1tXZWJJ
bnNwZWN0b3IuS2V5Ym9hcmRTaG9ydGN1dC5tYWtlS2V5KGhvbWVLZXkuY29kZSwgaG9tZU1vZGlm
aWVyKV0gPSB0aGlzLl9oYW5kbGVIb21lS2V5LmJpbmQodGhpcywgZmFsc2UpOworICAgICAgICB0
aGlzLl9zaG9ydGN1dHNbV2ViSW5zcGVjdG9yLktleWJvYXJkU2hvcnRjdXQubWFrZUtleShob21l
S2V5LmNvZGUsIGhvbWVNb2RpZmllciB8IG1vZGlmaWVycy5TaGlmdCldID0gdGhpcy5faGFuZGxl
SG9tZUtleS5iaW5kKHRoaXMsIHRydWUpOworICAgIH0sCisKKyAgICAvKioKKyAgICAgKiBAcGFy
YW0ge2Jvb2xlYW59IHNoaWZ0CisgICAgICovCisgICAgX2hhbmRsZUhvbWVLZXk6IGZ1bmN0aW9u
KHNoaWZ0KQorICAgIHsKKyAgICAgICAgdmFyIHNlbGVjdGlvbiA9IHRoaXMuc2VsZWN0aW9uKCk7
CisKKyAgICAgICAgdmFyIGxpbmUgPSB0aGlzLl90ZXh0TW9kZWwubGluZShzZWxlY3Rpb24uZW5k
TGluZSk7CisgICAgICAgIHZhciBmaXJzdE5vbkJsYW5rQ2hhcmFjdGVyID0gMDsKKyAgICAgICAg
d2hpbGUgKGZpcnN0Tm9uQmxhbmtDaGFyYWN0ZXIgPCBsaW5lLmxlbmd0aCkgeworICAgICAgICAg
ICAgdmFyIGNoYXIgPSBsaW5lLmNoYXJBdChmaXJzdE5vbkJsYW5rQ2hhcmFjdGVyKTsKKyAgICAg
ICAgICAgIGlmIChjaGFyID09PSAiICIgfHwgY2hhciA9PT0gIlx0IikKKyAgICAgICAgICAgICAg
ICArK2ZpcnN0Tm9uQmxhbmtDaGFyYWN0ZXI7CisgICAgICAgICAgICBlbHNlCisgICAgICAgICAg
ICAgICAgYnJlYWs7CisgICAgICAgIH0KKyAgICAgICAgaWYgKGZpcnN0Tm9uQmxhbmtDaGFyYWN0
ZXIgPj0gbGluZS5sZW5ndGggfHwgc2VsZWN0aW9uLmVuZENvbHVtbiA9PT0gZmlyc3ROb25CbGFu
a0NoYXJhY3RlcikKKyAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgICAgICBzZWxlY3Rp
b24uZW5kQ29sdW1uID0gZmlyc3ROb25CbGFua0NoYXJhY3RlcjsKKyAgICAgICAgaWYgKCFzaGlm
dCkKKyAgICAgICAgICAgIHNlbGVjdGlvbiA9IHNlbGVjdGlvbi5jb2xsYXBzZVRvRW5kKCk7Cisg
ICAgICAgIHRoaXMuX3Jlc3RvcmVTZWxlY3Rpb24oc2VsZWN0aW9uKTsKKyAgICAgICAgcmV0dXJu
IHRydWU7CiAgICAgfSwKIAogICAgIC8qKgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGYzZWExNTljYzI1ZjI1NTFhNjgyMDZi
N2YwYTRiMDBmNDQ5YzgyNWQuLjVmNDA3NDEwNTFhODFhMzRmOGU4ZGQyMWYyOTM2NTI1Y2Y2MjAx
OWEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cKQEAgLTEsMyArMSwyMiBAQAorMjAxMy0wMi0wOCAgQW5kcmV5IEx1c2huaWtvdiAg
PGx1c2huaWtvdkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgV2ViIEluc3BlY3RvcjogaG9tZSBi
dXR0b24gYmVoYXZpb3VyIGlzIHdyb25nIGluIERURQorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA5MTU0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIGxheW91dCB0ZXN0IHRvIHZlcmlmeSBob21lIGJ1
dHRvbiBiZWhhdmlvdXIuIEV4Y2x1ZGUgdGhpcyB0ZXN0IG9uCisgICAgICAgIHBsYXRmb3JtcyB0
aGF0IGRvIG5vdCBoYXZlIGV2ZW50U2VuZGVyIG9iamVjdCBpbiB0ZXN0IHNoZWxsLgorCisgICAg
ICAgICogaW5zcGVjdG9yL2VkaXRvci9lZGl0b3ItdGVzdC5qczoKKyAgICAgICAgKGluaXRpYWxp
emVfRWRpdG9yVGVzdHMubGluZVdpdGhDdXJzb3IpOgorICAgICAgICAoaW5pdGlhbGl6ZV9FZGl0
b3JUZXN0cy5JbnNwZWN0b3JUZXN0LnRleHRXaXRoU2VsZWN0aW9uKTogQWRkZWQgaGVscGVyIG1l
dGhvZCB0byBhZGQgc2VsZWN0aW9uIHN5bWJvbHMgaW4gdGV4dC4KKyAgICAgICAgKiBpbnNwZWN0
b3IvZWRpdG9yL3RleHQtZWRpdG9yLWhvbWUtYnV0dG9uLWV4cGVjdGVkLnR4dDogQWRkZWQuCisg
ICAgICAgICogaW5zcGVjdG9yL2VkaXRvci90ZXh0LWVkaXRvci1ob21lLWJ1dHRvbi5odG1sOiBB
ZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9lZmwvVGVzdEV4cGVjdGF0aW9uczoKKyAgICAgICAg
KiBwbGF0Zm9ybS9tYWMvVGVzdEV4cGVjdGF0aW9uczoKKyAgICAgICAgKiBwbGF0Zm9ybS9xdC9U
ZXN0RXhwZWN0YXRpb25zOgorCiAyMDEzLTAyLTA4ICBNYXR0IEZhbGtlbmhhZ2VuICA8ZmFsa2Vu
QGNocm9taXVtLm9yZz4KIAogICAgICAgICBbY2hyb21pdW1dIFVucmV2aWV3ZWQgZ2FyZGVuaW5n
LiBBZGp1c3RpbmcgZXhwZWN0YXRpb25zIGZvciB0d28gaGlkcGkgdGVzdHMuCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZWRpdG9yL2VkaXRvci10ZXN0LmpzIGIvTGF5b3V0VGVz
dHMvaW5zcGVjdG9yL2VkaXRvci9lZGl0b3ItdGVzdC5qcwppbmRleCAxNTIzMTM4MDhhNDY1Mzk5
NjcyNzU1NTVhZGYyOGQ1MzQ4NTlkMTczLi5lNTRlMWI1ZjkyNzlhMDJhMDlkZDk2YzJhMjYxZmNl
ZWY0MjIxOGE3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZWRpdG9yL2VkaXRv
ci10ZXN0LmpzCisrKyBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9lZGl0b3IvZWRpdG9yLXRlc3Qu
anMKQEAgLTE5LDYgKzE5LDI2IEBAIEluc3BlY3RvclRlc3QuZmlsbEVkaXRvcldpdGhUZXh0ID0g
ZnVuY3Rpb24odGV4dEVkaXRvciwgbGluZUNvdW50KQogICAgIHRleHRNb2RlbC5zZXRUZXh0KGxp
bmVzLmpvaW4oIlxuIikpOwogfQogCitJbnNwZWN0b3JUZXN0LnRleHRXaXRoU2VsZWN0aW9uID0g
ZnVuY3Rpb24odGV4dCwgc2VsZWN0aW9uKQoreworICAgIGlmICghc2VsZWN0aW9uKQorICAgICAg
ICByZXR1cm4gdGV4dDsKKworICAgIGZ1bmN0aW9uIGxpbmVXaXRoQ3Vyc29yKGxpbmUsIGNvbHVt
biwgY3Vyc29yQ2hhcikKKyAgICB7CisgICAgICAgIHJldHVybiBsaW5lLnN1YnN0cmluZygwLCBj
b2x1bW4pICsgY3Vyc29yQ2hhciArIGxpbmUuc3Vic3RyaW5nKGNvbHVtbik7CisgICAgfQorCisg
ICAgdmFyIGxpbmVzID0gdGV4dC5zcGxpdCgiXG4iKTsKKyAgICBzZWxlY3Rpb24gPSBzZWxlY3Rp
b24ubm9ybWFsaXplKCk7CisgICAgdmFyIGVuZEN1cnNvckNoYXIgPSBzZWxlY3Rpb24uaXNFbXB0
eSgpID8gInwiIDogIjwiOworICAgIGxpbmVzW3NlbGVjdGlvbi5lbmRMaW5lXSA9IGxpbmVXaXRo
Q3Vyc29yKGxpbmVzW3NlbGVjdGlvbi5lbmRMaW5lXSwgc2VsZWN0aW9uLmVuZENvbHVtbiwgZW5k
Q3Vyc29yQ2hhcik7CisgICAgaWYgKCFzZWxlY3Rpb24uaXNFbXB0eSgpKSB7CisgICAgICAgIGxp
bmVzW3NlbGVjdGlvbi5zdGFydExpbmVdID0gbGluZVdpdGhDdXJzb3IobGluZXNbc2VsZWN0aW9u
LnN0YXJ0TGluZV0sIHNlbGVjdGlvbi5zdGFydENvbHVtbiwgIj4iKTsKKyAgICB9CisgICAgcmV0
dXJuIGxpbmVzLmpvaW4oIlxuIik7Cit9CisKIEluc3BlY3RvclRlc3QuaW5zZXJ0VGV4dExpbmUg
PSBmdW5jdGlvbihsaW5lKQogewogICAgIGZ1bmN0aW9uIGVudGVyKCkKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2luc3BlY3Rvci9lZGl0b3IvdGV4dC1lZGl0b3ItaG9tZS1idXR0b24tZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2VkaXRvci90ZXh0LWVkaXRvci1ob21lLWJ1
dHRvbi1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYWNiM2UwZDJhNDM3NTEzYWJkYzgxZmY4YWJl
YzY0ZTk3ZTI5MDNiYwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9l
ZGl0b3IvdGV4dC1lZGl0b3ItaG9tZS1idXR0b24tZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsOTUg
QEAKK1RoaXMgdGVzdCB2ZXJpZmllcyB0aGF0IGhvbWUgYnV0dG9uIHRyaWdnZXJzIHNlbGVjdGlv
biBiZXR3ZWVuIGZpcnN0IHN5bWJvbCBvZiB0aGUgbGluZSBhbmQgZmlyc3Qgbm9uLWJsYW5rIHN5
bWJvbCBvZiB0aGUgbGluZS4KKworZnVuY3Rpb24gZm9vKCkKK3sKKyAgICByZXR1cm4gNDI7Cit9
CisKK1J1bm5pbmc6IHRlc3RGaXJzdE5vbkJsYW5rQ2hhcmFjdGVyCitmdW5jdGlvbiBmb28oKQor
eworICAgIHJldHV8cm4gNDI7Cit9CitmdW5jdGlvbiBmb28oKQoreworICAgIHxyZXR1cm4gNDI7
Cit9CisKK1J1bm5pbmc6IHRlc3RGaXJzdE5vbkJsYW5rQ2hhcmFjdGVyRnJvbVdoaXRlc3BhY2UK
K2Z1bmN0aW9uIGZvbygpCit7CisgIHwgIHJldHVybiA0MjsKK30KK2Z1bmN0aW9uIGZvbygpCit7
CisgICAgfHJldHVybiA0MjsKK30KKworUnVubmluZzogdGVzdEhvbWVCdXR0b25Ub2dnbGluZwor
ZnVuY3Rpb24gZm9vKCkKK3sKKyAgfCAgcmV0dXJuIDQyOworfQorZnVuY3Rpb24gZm9vKCkKK3sK
KyAgICB8cmV0dXJuIDQyOworfQorZnVuY3Rpb24gZm9vKCkKK3sKK3wgICAgcmV0dXJuIDQyOwor
fQorZnVuY3Rpb24gZm9vKCkKK3sKKyAgICB8cmV0dXJuIDQyOworfQorCitSdW5uaW5nOiB0ZXN0
SG9tZUJ1dHRvbkRvZXNOb3RDaGFuZ2VDdXJzb3IKK2Z1fG5jdGlvbiBmb28oKQoreworICAgIHJl
dHVybiA0MjsKK30KK3xmdW5jdGlvbiBmb28oKQoreworICAgIHJldHVybiA0MjsKK30KK3xmdW5j
dGlvbiBmb28oKQoreworICAgIHJldHVybiA0MjsKK30KKworUnVubmluZzogdGVzdEhvbWVCdXR0
b25XaXRoU2hpZnQKKz5mdW5jdGlvbiBmb28oKQoreworICAgIHJldHU8cm4gNDI7Cit9Cis+ZnVu
Y3Rpb24gZm9vKCkKK3sKKyAgICA8cmV0dXJuIDQyOworfQorPmZ1bmN0aW9uIGZvbygpCit7Cis8
ICAgIHJldHVybiA0MjsKK30KKz5mdW5jdGlvbiBmb28oKQoreworICAgIDxyZXR1cm4gNDI7Cit9
CisKK1J1bm5pbmc6IHRlc3RIb21lQnV0dG9uV2l0aFNoaWZ0SW52ZXJzZWQKK2Z1bmN0aW9uIGZv
bygpCit7CisgICAgcmV0dT5ybiA0MjsKK308CitmdW5jdGlvbiBmb28oKQoreworICAgID5yZXR1
cm4gNDI7Cit9PAorZnVuY3Rpb24gZm9vKCkKK3sKKz4gICAgcmV0dXJuIDQyOworfTwKK2Z1bmN0
aW9uIGZvbygpCit7CisgICAgPnJldHVybiA0MjsKK308CisKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2luc3BlY3Rvci9lZGl0b3IvdGV4dC1lZGl0b3ItaG9tZS1idXR0b24uaHRtbCBiL0xheW91
dFRlc3RzL2luc3BlY3Rvci9lZGl0b3IvdGV4dC1lZGl0b3ItaG9tZS1idXR0b24uaHRtbApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5iYjYxY2NiMGEyZjI5ZTY2N2JhNGRlMGJjMGIyOWE3Yzg2YWIwZmE2Ci0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2VkaXRvci90ZXh0LWVkaXRvci1ob21l
LWJ1dHRvbi5odG1sCkBAIC0wLDAgKzEsMTI0IEBACis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdCBz
cmM9Ii4uLy4uL2h0dHAvdGVzdHMvaW5zcGVjdG9yL2luc3BlY3Rvci10ZXN0LmpzIj48L3Njcmlw
dD4KKzxzY3JpcHQgc3JjPSJlZGl0b3ItdGVzdC5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0PgorCitm
dW5jdGlvbiB0ZXN0KCkKK3sKK2Z1bmN0aW9uIGZvbygpCit7CisgICAgcmV0dXJuIDQyOworfQor
ICAgIHZhciB0ZXh0RWRpdG9yID0gSW5zcGVjdG9yVGVzdC5jcmVhdGVUZXN0RWRpdG9yKCk7Cisg
ICAgdGV4dEVkaXRvci5vdmVycmlkZVZpZXdwb3J0Rm9yVGVzdCgwLCB1bmRlZmluZWQsIDMpOwor
ICAgIHRleHRFZGl0b3IubWltZVR5cGUgPSAidGV4dC9qYXZhc2NyaXB0IjsKKyAgICB0ZXh0RWRp
dG9yLnNldFJlYWRPbmx5KGZhbHNlKTsKKyAgICB0ZXh0RWRpdG9yLmVsZW1lbnQuZm9jdXMoKTsK
KworICAgIHRleHRFZGl0b3Iuc2V0VGV4dChmb28udG9TdHJpbmcoKSk7CisKKyAgICBJbnNwZWN0
b3JUZXN0LmFkZFJlc3VsdCh0ZXh0RWRpdG9yLnRleHQoKSk7CisKKyAgICBmdW5jdGlvbiBkdW1w
VGV4dEVkaXRvcldpdGhTZWxlY3Rpb24oKQorICAgIHsKKyAgICAgICAgSW5zcGVjdG9yVGVzdC5h
ZGRSZXN1bHQoSW5zcGVjdG9yVGVzdC50ZXh0V2l0aFNlbGVjdGlvbih0ZXh0RWRpdG9yLnRleHQo
KSwgdGV4dEVkaXRvci5zZWxlY3Rpb24oKSkpOworICAgIH0KKworICAgIGZ1bmN0aW9uIGhvbWVC
dXR0b24oc2hpZnQpCisgICAgeworICAgICAgICB2YXIga2V5ID0gV2ViSW5zcGVjdG9yLmlzTWFj
KCkgPyAibGVmdEFycm93IiA6ICJob21lIjsKKyAgICAgICAgdmFyIG1vZGlmaWVycyA9IFdlYklu
c3BlY3Rvci5pc01hYygpID8gWyJtZXRhS2V5Il0gOiBbXTsKKyAgICAgICAgaWYgKHNoaWZ0KQor
ICAgICAgICAgICAgbW9kaWZpZXJzLnB1c2goInNoaWZ0S2V5Iik7CisgICAgICAgIGV2ZW50U2Vu
ZGVyLmtleURvd24oa2V5LCBtb2RpZmllcnMpOworICAgIH0KKworICAgIEluc3BlY3RvclRlc3Qu
cnVuVGVzdFN1aXRlKFsKKyAgICAgICAgZnVuY3Rpb24gdGVzdEZpcnN0Tm9uQmxhbmtDaGFyYWN0
ZXIobmV4dCkKKyAgICAgICAgeworICAgICAgICAgICAgdmFyIHNlbGVjdGlvbiA9IFdlYkluc3Bl
Y3Rvci5UZXh0UmFuZ2UuY3JlYXRlRnJvbUxvY2F0aW9uKDIsIDgpOworICAgICAgICAgICAgdGV4
dEVkaXRvci5zZXRTZWxlY3Rpb24oc2VsZWN0aW9uKTsKKyAgICAgICAgICAgIGR1bXBUZXh0RWRp
dG9yV2l0aFNlbGVjdGlvbigpOworICAgICAgICAgICAgaG9tZUJ1dHRvbihmYWxzZSk7CisgICAg
ICAgICAgICBkdW1wVGV4dEVkaXRvcldpdGhTZWxlY3Rpb24oKTsKKyAgICAgICAgICAgIG5leHQo
KTsKKyAgICAgICAgfSwKKworICAgICAgICBmdW5jdGlvbiB0ZXN0Rmlyc3ROb25CbGFua0NoYXJh
Y3RlckZyb21XaGl0ZXNwYWNlKG5leHQpCisgICAgICAgIHsKKyAgICAgICAgICAgIHZhciBzZWxl
Y3Rpb24gPSBXZWJJbnNwZWN0b3IuVGV4dFJhbmdlLmNyZWF0ZUZyb21Mb2NhdGlvbigyLCAyKTsK
KyAgICAgICAgICAgIHRleHRFZGl0b3Iuc2V0U2VsZWN0aW9uKHNlbGVjdGlvbik7CisgICAgICAg
ICAgICBkdW1wVGV4dEVkaXRvcldpdGhTZWxlY3Rpb24oKTsKKyAgICAgICAgICAgIGhvbWVCdXR0
b24oZmFsc2UpOworICAgICAgICAgICAgZHVtcFRleHRFZGl0b3JXaXRoU2VsZWN0aW9uKCk7Cisg
ICAgICAgICAgICBuZXh0KCk7CisgICAgICAgIH0sCisKKyAgICAgICAgZnVuY3Rpb24gdGVzdEhv
bWVCdXR0b25Ub2dnbGluZyhuZXh0KQorICAgICAgICB7CisgICAgICAgICAgICB2YXIgc2VsZWN0
aW9uID0gV2ViSW5zcGVjdG9yLlRleHRSYW5nZS5jcmVhdGVGcm9tTG9jYXRpb24oMiwgMik7Cisg
ICAgICAgICAgICB0ZXh0RWRpdG9yLnNldFNlbGVjdGlvbihzZWxlY3Rpb24pOworICAgICAgICAg
ICAgZHVtcFRleHRFZGl0b3JXaXRoU2VsZWN0aW9uKCk7CisgICAgICAgICAgICBob21lQnV0dG9u
KGZhbHNlKTsKKyAgICAgICAgICAgIGR1bXBUZXh0RWRpdG9yV2l0aFNlbGVjdGlvbigpOworICAg
ICAgICAgICAgaG9tZUJ1dHRvbihmYWxzZSk7CisgICAgICAgICAgICBkdW1wVGV4dEVkaXRvcldp
dGhTZWxlY3Rpb24oKTsKKyAgICAgICAgICAgIGhvbWVCdXR0b24oZmFsc2UpOworICAgICAgICAg
ICAgZHVtcFRleHRFZGl0b3JXaXRoU2VsZWN0aW9uKCk7CisgICAgICAgICAgICBuZXh0KCk7Cisg
ICAgICAgIH0sCisKKyAgICAgICAgZnVuY3Rpb24gdGVzdEhvbWVCdXR0b25Eb2VzTm90Q2hhbmdl
Q3Vyc29yKG5leHQpCisgICAgICAgIHsKKyAgICAgICAgICAgIHZhciBzZWxlY3Rpb24gPSBXZWJJ
bnNwZWN0b3IuVGV4dFJhbmdlLmNyZWF0ZUZyb21Mb2NhdGlvbigwLCAyKTsKKyAgICAgICAgICAg
IHRleHRFZGl0b3Iuc2V0U2VsZWN0aW9uKHNlbGVjdGlvbik7CisgICAgICAgICAgICBkdW1wVGV4
dEVkaXRvcldpdGhTZWxlY3Rpb24oKTsKKyAgICAgICAgICAgIGhvbWVCdXR0b24oZmFsc2UpOwor
ICAgICAgICAgICAgZHVtcFRleHRFZGl0b3JXaXRoU2VsZWN0aW9uKCk7CisgICAgICAgICAgICBo
b21lQnV0dG9uKGZhbHNlKTsKKyAgICAgICAgICAgIGR1bXBUZXh0RWRpdG9yV2l0aFNlbGVjdGlv
bigpOworICAgICAgICAgICAgbmV4dCgpOworICAgICAgICB9LAorCisgICAgICAgIGZ1bmN0aW9u
IHRlc3RIb21lQnV0dG9uV2l0aFNoaWZ0KG5leHQpCisgICAgICAgIHsKKyAgICAgICAgICAgIHZh
ciBzZWxlY3Rpb24gPSBuZXcgV2ViSW5zcGVjdG9yLlRleHRSYW5nZSgwLCAwLCAyLCA4KTsKKyAg
ICAgICAgICAgIHRleHRFZGl0b3Iuc2V0U2VsZWN0aW9uKHNlbGVjdGlvbik7CisgICAgICAgICAg
ICBkdW1wVGV4dEVkaXRvcldpdGhTZWxlY3Rpb24oKTsKKyAgICAgICAgICAgIGhvbWVCdXR0b24o
dHJ1ZSk7CisgICAgICAgICAgICBkdW1wVGV4dEVkaXRvcldpdGhTZWxlY3Rpb24oKTsKKyAgICAg
ICAgICAgIGhvbWVCdXR0b24odHJ1ZSk7CisgICAgICAgICAgICBkdW1wVGV4dEVkaXRvcldpdGhT
ZWxlY3Rpb24oKTsKKyAgICAgICAgICAgIGhvbWVCdXR0b24odHJ1ZSk7CisgICAgICAgICAgICBk
dW1wVGV4dEVkaXRvcldpdGhTZWxlY3Rpb24oKTsKKyAgICAgICAgICAgIG5leHQoKTsKKyAgICAg
ICAgfSwKKworICAgICAgICBmdW5jdGlvbiB0ZXN0SG9tZUJ1dHRvbldpdGhTaGlmdEludmVyc2Vk
KG5leHQpCisgICAgICAgIHsKKyAgICAgICAgICAgIHZhciBzZWxlY3Rpb24gPSBuZXcgV2ViSW5z
cGVjdG9yLlRleHRSYW5nZSgzLCAxLCAyLCA4KTsKKyAgICAgICAgICAgIHRleHRFZGl0b3Iuc2V0
U2VsZWN0aW9uKHNlbGVjdGlvbik7CisgICAgICAgICAgICBkdW1wVGV4dEVkaXRvcldpdGhTZWxl
Y3Rpb24oKTsKKyAgICAgICAgICAgIGhvbWVCdXR0b24odHJ1ZSk7CisgICAgICAgICAgICBkdW1w
VGV4dEVkaXRvcldpdGhTZWxlY3Rpb24oKTsKKyAgICAgICAgICAgIGhvbWVCdXR0b24odHJ1ZSk7
CisgICAgICAgICAgICBkdW1wVGV4dEVkaXRvcldpdGhTZWxlY3Rpb24oKTsKKyAgICAgICAgICAg
IGhvbWVCdXR0b24odHJ1ZSk7CisgICAgICAgICAgICBkdW1wVGV4dEVkaXRvcldpdGhTZWxlY3Rp
b24oKTsKKyAgICAgICAgICAgIG5leHQoKTsKKyAgICAgICAgfQorICAgIF0pOworfQorCis8L3Nj
cmlwdD4KKzwvaGVhZD4KKworPGJvZHkgb25sb2FkPSJydW5UZXN0KCk7Ij4KKzxwPgorVGhpcyB0
ZXN0IHZlcmlmaWVzIHRoYXQgaG9tZSBidXR0b24gdHJpZ2dlcnMgc2VsZWN0aW9uIGJldHdlZW4g
Zmlyc3Qgc3ltYm9sIG9mIHRoZSBsaW5lCithbmQgZmlyc3Qgbm9uLWJsYW5rIHN5bWJvbCBvZiB0
aGUgbGluZS4KKzwvcD4KKworPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vZWZsL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9l
ZmwvVGVzdEV4cGVjdGF0aW9ucwppbmRleCAxMGM3Nzk4ZGVjZTlkYWM4NjI2OGMxOWVhMTVmYjEy
NWNiZjM0ZGFhLi5lMDk3YTU0OTQwZTRiNGJmNTg3ZTBlMDAzYzVmMWNjODM0NmE1OTQ1IDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9lZmwvVGVzdEV4cGVjdGF0aW9ucworKysgYi9M
YXlvdXRUZXN0cy9wbGF0Zm9ybS9lZmwvVGVzdEV4cGVjdGF0aW9ucwpAQCAtMTgzNCw2ICsxODM0
LDcgQEAgd2Via2l0Lm9yZy9iLzEwNjc0MyBtZWRpYS92aWRlby1jb250cm9scy1jYXB0aW9ucy5o
dG1sIFsgRmFpbHVyZSBdCiAjIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xMDY4ODMKIGluc3BlY3Rvci9lZGl0b3IvdGV4dC1lZGl0b3ItZm9ybWF0dGVyLmh0bWwKIGlu
c3BlY3Rvci9lZGl0b3IvdGV4dC1lZGl0b3Itd29yZC1qdW1wcy5odG1sCitpbnNwZWN0b3IvZWRp
dG9yL3RleHQtZWRpdG9yLWhvbWUtYnV0dG9uLmh0bWwKIAogIyBSZW1vdmUgZnJvbSBsaXN0IGFm
dGVyIGVuYWJsaW5nIENBTlZBU19QQVRICiB3ZWJraXQub3JnL2IvMTA4NTA4IGZhc3QvY2FudmFz
L2NhbnZhcy1wYXRoLWNvbnN0cnVjdG9ycy5odG1sIFsgRmFpbHVyZSBdCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3Bs
YXRmb3JtL21hYy9UZXN0RXhwZWN0YXRpb25zCmluZGV4IGE4YTVjNTJkM2M5NDNiMjhmMTk2ZmRm
ZTU5YThiNDgwNjFlYmNmNmMuLmJmMmI0NWE2MmM4M2M0ZDI3ZjViODU3ZmRlZGQ0YjU4NzI5ZDkz
MDMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9UZXN0RXhwZWN0YXRpb25z
CisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9UZXN0RXhwZWN0YXRpb25zCkBAIC0yNTQs
NiArMjU0LDcgQEAgYW5pbWF0aW9ucy9wbGF5LXN0YXRlLmh0bWwKICMgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwNjc5MwogaW5zcGVjdG9yL2VkaXRvci90ZXh0LWVk
aXRvci1mb3JtYXR0ZXIuaHRtbCBbIFNraXAgXQogaW5zcGVjdG9yL2VkaXRvci90ZXh0LWVkaXRv
ci13b3JkLWp1bXBzLmh0bWwgWyBTa2lwIF0KK2luc3BlY3Rvci9lZGl0b3IvdGV4dC1lZGl0b3It
aG9tZS1idXR0b24uaHRtbCBbIFNraXAgXQogCiAjIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD03MTEyMAogaW5zcGVjdG9yL2RlYnVnZ2VyL3NlbGVjdGVkLWNhbGwtZnJh
bWUtYWZ0ZXItZm9ybWF0dGluZy1zb3VyY2UuaHRtbApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
cGxhdGZvcm0vcXQvVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3F0L1Rl
c3RFeHBlY3RhdGlvbnMKaW5kZXggODNjMmRmM2JkZGY2ZGI0NjBhM2FmYTQ0MmFlY2Q4NDA4MDk3
MzhhYS4uODljYTA2ZjJkYzNmODc0NTQ4YjUwNjc3YmQ0MmI1N2U0ZjAyNDg3ZiAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vcXQvVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9xdC9UZXN0RXhwZWN0YXRpb25zCkBAIC0yNjA3LDYgKzI2MDcsNyBAQCB3
ZWJraXQub3JnL2IvMzk3MjUgZmFzdC9ldmVudHMvZHJhZy1hbmQtZHJvcC1hdXRvc2Nyb2xsLmh0
bWwgWyBTa2lwIF0KICMgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEw
Njg4MwogaW5zcGVjdG9yL2VkaXRvci90ZXh0LWVkaXRvci1mb3JtYXR0ZXIuaHRtbAogaW5zcGVj
dG9yL2VkaXRvci90ZXh0LWVkaXRvci13b3JkLWp1bXBzLmh0bWwKK2luc3BlY3Rvci9lZGl0b3Iv
dGV4dC1lZGl0b3ItaG9tZS1idXR0b24uaHRtbAogCiAjIE5lZWRzIHJlYmFzZWxpbmUgYWZ0ZXIg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0NjY0CiB3ZWJraXQub3Jn
L2IvMTA3NDc2IGZhc3QvYmxvY2svZmxvYXQvMDI0Lmh0bWwgWyBGYWlsdXJlIF0K
</data>

          </attachment>
      

    </bug>

</bugzilla>