<?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>104951</bug_id>
          
          <creation_ts>2012-12-13 14:09:03 -0800</creation_ts>
          <short_desc>Layout Test editing/selection/move-by-character-crash-test-textarea.html is flaky</short_desc>
          <delta_ts>2012-12-17 15:55:39 -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>Tools / Tests</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Eric Seidel (no email)">eric</reporter>
          <assigned_to name="Ryosuke Niwa">rniwa</assigned_to>
          <cc>dglazkov</cc>
    
    <cc>dpranke</cc>
    
    <cc>enrica</cc>
    
    <cc>max.hong.shen</cc>
    
    <cc>ojan</cc>
    
    <cc>rniwa</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>790911</commentid>
    <comment_count>0</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2012-12-13 14:09:03 -0800</bug_when>
    <thetext>The following layout test is flaky on most platforms (at least cr-linux and cr-win)

editing/selection/move-by-character-crash-test-textarea.html
http://trac.webkit.org/browser/trunk/LayoutTests/editing/selection/move-by-character-crash-test-textarea.html

It appears that the notifications are racy with the completion of the test?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>790912</commentid>
    <comment_count>1</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2012-12-13 14:09:31 -0800</bug_when>
    <thetext>http://test-results.appspot.com/dashboards/flakiness_dashboard.html#tests=editing%2Fselection%2Fmove-by-character-crash-test-textarea.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>790964</commentid>
    <comment_count>2</comment_count>
    <who name="Yi Shen">max.hong.shen</who>
    <bug_when>2012-12-13 14:47:40 -0800</bug_when>
    <thetext>Looking at it
(In reply to comment #1)
&gt; http://test-results.appspot.com/dashboards/flakiness_dashboard.html#tests=editing%2Fselection%2Fmove-by-character-crash-test-textarea.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791024</commentid>
    <comment_count>3</comment_count>
    <who name="Yi Shen">max.hong.shen</who>
    <bug_when>2012-12-13 15:39:43 -0800</bug_when>
    <thetext>It seems I need to turn off the TestRunner&apos;s dumpEditingCallbacks flag, otherwise, it gives some extra output on some platform ...

EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification
EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification
PASS</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791089</commentid>
    <comment_count>4</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2012-12-13 16:29:47 -0800</bug_when>
    <thetext>Seems reasonable.  It&apos;s possible that it turns it on automagically for you in editing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791093</commentid>
    <comment_count>5</comment_count>
      <attachid>179372</attachid>
    <who name="Yi Shen">max.hong.shen</who>
    <bug_when>2012-12-13 16:31:41 -0800</bug_when>
    <thetext>Created attachment 179372
fix the flaky test</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791224</commentid>
    <comment_count>6</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2012-12-13 18:48:19 -0800</bug_when>
    <thetext>I&apos;m confused by this fix.  Could you please explain it better in the ChangeLog?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791235</commentid>
    <comment_count>7</comment_count>
      <attachid>179372</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-12-13 19:06:33 -0800</bug_when>
    <thetext>Comment on attachment 179372
fix the flaky test

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

&gt; LayoutTests/editing/selection/move-by-character-crash-test-textarea.html:-8
&gt; -onload = function() {

Why does this help? DRT already waits for load event.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791725</commentid>
    <comment_count>8</comment_count>
      <attachid>179502</attachid>
    <who name="Yi Shen">max.hong.shen</who>
    <bug_when>2012-12-14 11:29:44 -0800</bug_when>
    <thetext>Created attachment 179502
Fix the flaky test by turning on the dumpEditingCallbacks</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791732</commentid>
    <comment_count>9</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2012-12-14 11:38:04 -0800</bug_when>
    <thetext>Why does this help?  Wasn&apos;t the failure because we sometimes saw editing callbacks in this test?  Perhaps those were bleeding through from the test before this one?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791736</commentid>
    <comment_count>10</comment_count>
    <who name="Yi Shen">max.hong.shen</who>
    <bug_when>2012-12-14 11:52:10 -0800</bug_when>
    <thetext>Eric, sorry for the confusion. I tried to turn off the dumpEditingCallbacks flag yesterday, but there is no such JS interface. This flag is suppose to remain off by default, however, it is turned on for some reason on some build. (Is it possible that we are using a global TestRunner?)

Then I checked other similar tests under the editing/selection, and found most of them don&apos;t use the onload function, but call their test function after the &lt;/body&gt; tag. (Niwa, that&apos;s why I move the onload function). Since I don&apos;t have an environment to reproduce this flaky issue ( I have tried both my mac and linux build), I uploaded the patch and was hoping the contribution system can help me test it. But it seems it doesn&apos;t work in that way.

For the new patch, I turned on the dumpEditingCallbacks flag, then updated the expected file.  Please let me know if you think it is not a good idea to do so.

(In reply to comment #9)
&gt; Why does this help?  Wasn&apos;t the failure because we sometimes saw editing callbacks in this test?  Perhaps those were bleeding through from the test before this one?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791739</commentid>
    <comment_count>11</comment_count>
    <who name="Yi Shen">max.hong.shen</who>
    <bug_when>2012-12-14 11:56:29 -0800</bug_when>
    <thetext>I have same guess. But can&apos;t verify it since none of my builds can reproduce this flaky issue.
(In reply to comment #9)
&gt;  Perhaps those were bleeding through from the test before this one?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791827</commentid>
    <comment_count>12</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-12-14 13:53:01 -0800</bug_when>
    <thetext>(In reply to comment #9)
&gt; Why does this help?  Wasn&apos;t the failure because we sometimes saw editing callbacks in this test?  Perhaps those were bleeding through from the test before this one?

Yup.

12:21:06.552 1152 worker/2 editing/selection/move-by-character-6.html passed
12:21:06.609 1154 worker/3 fast/backgrounds/background-origin-root-element.html passed
12:21:06.768 1151 worker/1 http/tests/security/mixedContent/empty-url-plugin-in-frame.html passed
12:21:06.772 1162 worker/7 editing/style/style-text-node-without-editable-parent.html passed
12:21:06.838 1158 worker/5 fast/block/block-size-integer-overflow.html passed
12:21:06.857 1160 worker/6 fast/backgrounds/size/backgroundSize20.html passed
12:21:06.880 1134 [8074/26903] editing/selection/move-by-character-crash-test-textarea.html failed unexpectedly (text diff)
12:21:06.874 1152 worker/2 editing/selection/move-by-character-crash-test-textarea.html failed:
12:21:06.874 1152 worker/2  text diff

editing/selection/move-by-character-6.html sets commandDelay but never calls waitUntilDone or notifyDone.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791925</commentid>
    <comment_count>13</comment_count>
      <attachid>179546</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-12-14 15:45:20 -0800</bug_when>
    <thetext>Created attachment 179546
Fixes the bug</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791927</commentid>
    <comment_count>14</comment_count>
      <attachid>179547</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-12-14 15:46:10 -0800</bug_when>
    <thetext>Created attachment 179547
Reveted unrelated WebCore change</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791940</commentid>
    <comment_count>15</comment_count>
    <who name="Yi Shen">max.hong.shen</who>
    <bug_when>2012-12-14 16:09:36 -0800</bug_when>
    <thetext>You can remove the variable &quot;commandCount&quot;, right? Because the queueCommand doesn&apos;t need second parameter anymore.

&gt; queueCommand(execSetSelectionCommand.bind(execSetSelectionCommand, sn, so, en, eo), commandCount * commandDelay);

Also, I am still curious why move-by-character-6.html isn&apos;t flaky ...

(In reply to comment #14)
&gt; Created an attachment (id=179547) [details]
&gt; Reveted unrelated WebCore change

(In reply to comment #14)
&gt; Created an attachment (id=179547) [details]
&gt; Reveted unrelated WebCore change</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791995</commentid>
    <comment_count>16</comment_count>
      <attachid>179547</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-12-14 17:44:26 -0800</bug_when>
    <thetext>Comment on attachment 179547
Reveted unrelated WebCore change

Attachment 179547 did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/15323859

New failing tests:
editing/selection/move-by-character-6.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>792057</commentid>
    <comment_count>17</comment_count>
      <attachid>179547</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2012-12-14 23:39:39 -0800</bug_when>
    <thetext>Comment on attachment 179547
Reveted unrelated WebCore change

Wow.  So this was just pooping all over lots of other tests?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>792058</commentid>
    <comment_count>18</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2012-12-14 23:40:02 -0800</bug_when>
    <thetext>Or just the one following test?  Don&apos;t we have code to kill timers before starting the next test?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>792065</commentid>
    <comment_count>19</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-12-15 00:55:49 -0800</bug_when>
    <thetext>(In reply to comment #17)
&gt; (From update of attachment 179547 [details])
&gt; Wow.  So this was just pooping all over lots of other tests?

Probably not. Just one test.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>793101</commentid>
    <comment_count>20</comment_count>
      <attachid>179547</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2012-12-17 15:49:05 -0800</bug_when>
    <thetext>Comment on attachment 179547
Reveted unrelated WebCore change

Is that the expected number of editing delegate log messages now?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>793102</commentid>
    <comment_count>21</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-12-17 15:50:01 -0800</bug_when>
    <thetext>(In reply to comment #20)
&gt; (From update of attachment 179547 [details])
&gt; Is that the expected number of editing delegate log messages now?

Yes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>793108</commentid>
    <comment_count>22</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-12-17 15:55:13 -0800</bug_when>
    <thetext>Committed r137953: &lt;http://trac.webkit.org/changeset/137953&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>179372</attachid>
            <date>2012-12-13 16:31:41 -0800</date>
            <delta_ts>2012-12-14 11:29:44 -0800</delta_ts>
            <desc>fix the flaky test</desc>
            <filename>104951v1.patch</filename>
            <type>text/plain</type>
            <size>2475</size>
            <attacher name="Yi Shen">max.hong.shen</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDEzNzY4MSkKKysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29y
a2luZyBjb3B5KQpAQCAtMSwzICsxLDE0IEBACisyMDEyLTEyLTEzICBZaSBTaGVuICA8bWF4Lmhv
bmcuc2hlbkBnbWFpbC5jb20+CisKKyAgICAgICAgTGF5b3V0IFRlc3QgZWRpdGluZy9zZWxlY3Rp
b24vbW92ZS1ieS1jaGFyYWN0ZXItY3Jhc2gtdGVzdC10ZXh0YXJlYS5odG1sIGlzIGZsYWt5Cisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDQ5NTEgICAg
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRml4IHRo
ZSBmbGFreSB0ZXN0LgorCisgICAgICAgICogZWRpdGluZy9zZWxlY3Rpb24vbW92ZS1ieS1jaGFy
YWN0ZXItY3Jhc2gtdGVzdC10ZXh0YXJlYS5odG1sOgorCiAyMDEyLTEyLTEzICBKYW1lcyBTaW1v
bnNlbiAgPHNpbW9uamFtQGNocm9taXVtLm9yZz4KIAogICAgICAgICBbUmVzb3VyY2UgVGltaW5n
XSBEb24ndCByZXBvcnQgcmVzb3VyY2VzIHdpdGggZGF0YTogdXJscwpJbmRleDogTGF5b3V0VGVz
dHMvZWRpdGluZy9zZWxlY3Rpb24vbW92ZS1ieS1jaGFyYWN0ZXItY3Jhc2gtdGVzdC10ZXh0YXJl
YS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL21vdmUt
YnktY2hhcmFjdGVyLWNyYXNoLXRlc3QtdGV4dGFyZWEuaHRtbAkocmV2aXNpb24gMTM3Njc4KQor
KysgTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vbW92ZS1ieS1jaGFyYWN0ZXItY3Jhc2gt
dGVzdC10ZXh0YXJlYS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC00LDI4ICs0LDI1IEBACiBUaGlz
IHRlc3Qgc2V0cyBjYXJldCBhdCB0aGUgYmVnaW5uaW5nIG9mIGJhY2t3YXJkIHRleHQgYW5kIG1v
dmluZyB0aGUgY2hhcmFjdGVyIHRvIGxlZnQgYW5kIHJpZ2h0LiAgV2ViS2l0IHNob3VsZCBub3Qg
Y3Jhc2ggYW5kIHlvdSBzaG91bGQgc2VlIFBBU1MgYmVsb3c6CiA8dGV4dGFyZWEgaWQ9ImVkaXRv
ciI+JiM4MjM4O0xUUgogPC90ZXh0YXJlYT4KKzwvYm9keT4KIDxzY3JpcHQ+Ci1vbmxvYWQgPSBm
dW5jdGlvbigpIHsKLSAgICB2YXIgc2VsID0gd2luZG93LmdldFNlbGVjdGlvbigpOwotICAgIHNl
bC5lbXB0eSgpOwotICAgIHZhciB0ZXN0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImVkaXRv
ciIpOwotICAgIHRlc3QuZm9jdXMoKTsKLSAgICB0ZXN0LnNlbGVjdGlvbkRpcmVjdGlvbiA9ICdu
b25lJzsKLSAgICB0ZXN0LnNlbGVjdGlvblN0YXJ0ID0gMDsKLSAgICB0ZXN0LnNlbGVjdGlvbkVu
ZCA9IDA7Ci0gICAgZ2V0U2VsZWN0aW9uKCkubW9kaWZ5KCJtb3ZlIiwgImxlZnQiLCAiY2hhcmFj
dGVyIik7Ci0gICAgZ2V0U2VsZWN0aW9uKCkubW9kaWZ5KCJtb3ZlIiwgImxlZnQiLCAiY2hhcmFj
dGVyIik7Ci0gICAgdGVzdC5zZWxlY3Rpb25EaXJlY3Rpb24gPSAnbm9uZSc7Ci0gICAgdGVzdC5z
ZWxlY3Rpb25TdGFydCA9IDE7Ci0gICAgdGVzdC5zZWxlY3Rpb25FbmQgPSAxOwotICAgIGdldFNl
bGVjdGlvbigpLm1vZGlmeSgibW92ZSIsICJyaWdodCIsICJjaGFyYWN0ZXIiKTsKLSAgICBnZXRT
ZWxlY3Rpb24oKS5tb2RpZnkoIm1vdmUiLCAicmlnaHQiLCAiY2hhcmFjdGVyIik7Ci0gICAgZG9j
dW1lbnQuYm9keS5pbm5lckhUTUwgPSAiUEFTUyI7Ci19OwotCiBpZiAod2luZG93LnRlc3RSdW5u
ZXIpCiAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CiAKK3ZhciBzZWwgPSB3aW5kb3cuZ2V0
U2VsZWN0aW9uKCk7CitzZWwuZW1wdHkoKTsKK3ZhciB0ZXN0ID0gZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoImVkaXRvciIpOwordGVzdC5mb2N1cygpOwordGVzdC5zZWxlY3Rpb25EaXJlY3Rpb24g
PSAnbm9uZSc7Cit0ZXN0LnNlbGVjdGlvblN0YXJ0ID0gMDsKK3Rlc3Quc2VsZWN0aW9uRW5kID0g
MDsKK2dldFNlbGVjdGlvbigpLm1vZGlmeSgibW92ZSIsICJsZWZ0IiwgImNoYXJhY3RlciIpOwor
Z2V0U2VsZWN0aW9uKCkubW9kaWZ5KCJtb3ZlIiwgImxlZnQiLCAiY2hhcmFjdGVyIik7Cit0ZXN0
LnNlbGVjdGlvbkRpcmVjdGlvbiA9ICdub25lJzsKK3Rlc3Quc2VsZWN0aW9uU3RhcnQgPSAxOwor
dGVzdC5zZWxlY3Rpb25FbmQgPSAxOworZ2V0U2VsZWN0aW9uKCkubW9kaWZ5KCJtb3ZlIiwgInJp
Z2h0IiwgImNoYXJhY3RlciIpOworZ2V0U2VsZWN0aW9uKCkubW9kaWZ5KCJtb3ZlIiwgInJpZ2h0
IiwgImNoYXJhY3RlciIpOworZG9jdW1lbnQuYm9keS5pbm5lckhUTUwgPSAiUEFTUyI7CiA8L3Nj
cmlwdD4KLTwvYm9keT4KIDwvaHRtbD4K
</data>
<flag name="commit-queue"
          id="196220"
          type_id="3"
          status="-"
          setter="max.hong.shen"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>179502</attachid>
            <date>2012-12-14 11:29:44 -0800</date>
            <delta_ts>2012-12-14 15:45:15 -0800</delta_ts>
            <desc>Fix the flaky test by turning on the dumpEditingCallbacks</desc>
            <filename>104951v2.patch</filename>
            <type>text/plain</type>
            <size>3426</size>
            <attacher name="Yi Shen">max.hong.shen</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDEzNzc1NikKKysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29y
a2luZyBjb3B5KQpAQCAtMSwzICsxLDE1IEBACisyMDEyLTEyLTE0ICBZaSBTaGVuICA8bWF4Lmhv
bmcuc2hlbkBnbWFpbC5jb20+CisKKyAgICAgICAgTGF5b3V0IFRlc3QgZWRpdGluZy9zZWxlY3Rp
b24vbW92ZS1ieS1jaGFyYWN0ZXItY3Jhc2gtdGVzdC10ZXh0YXJlYS5odG1sIGlzIGZsYWt5Cisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDQ5NTEgICAg
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRml4IHRo
ZSBmbGFreSB0ZXN0IGJ5IHR1cm5pbmcgb24gdGhlIGR1bXBFZGl0aW5nQ2FsbGJhY2tzLgorCisg
ICAgICAgICogZWRpdGluZy9zZWxlY3Rpb24vbW92ZS1ieS1jaGFyYWN0ZXItY3Jhc2gtdGVzdC10
ZXh0YXJlYS1leHBlY3RlZC50eHQ6CisgICAgICAgICogZWRpdGluZy9zZWxlY3Rpb24vbW92ZS1i
eS1jaGFyYWN0ZXItY3Jhc2gtdGVzdC10ZXh0YXJlYS5odG1sOgorCiAyMDEyLTEyLTE0ICBNaWNo
ZWxhbmdlbG8gRGUgU2ltb25lICA8bWljaGVsYW5nZWxvQHdlYmtpdC5vcmc+CiAKICAgICAgICAg
W0NTUyBTaGFkZXJzXSBSZW1vdmUgY29kZSBmb3IgdGhlIG90aGVyIG1lc2ggYm94IHR5cGVzIChi
b3JkZXItYm94IHwgcGFkZGluZy1ib3ggfCBjb250ZW50LWJveCkKSW5kZXg6IExheW91dFRlc3Rz
L2VkaXRpbmcvc2VsZWN0aW9uL21vdmUtYnktY2hhcmFjdGVyLWNyYXNoLXRlc3QtdGV4dGFyZWEt
ZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9u
L21vdmUtYnktY2hhcmFjdGVyLWNyYXNoLXRlc3QtdGV4dGFyZWEtZXhwZWN0ZWQudHh0CShyZXZp
c2lvbiAxMzc2NzgpCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9tb3ZlLWJ5LWNo
YXJhY3Rlci1jcmFzaC10ZXN0LXRleHRhcmVhLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpA
QCAtMSArMSw1IEBACitFRElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9u
OldlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb25Ob3RpZmljYXRpb24KK0VESVRJTkcgREVMRUdBVEU6
IHdlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb246V2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbk5vdGlm
aWNhdGlvbgorRURJVElORyBERUxFR0FURTogd2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbjpXZWJW
aWV3RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZpY2F0aW9uCitFRElUSU5HIERFTEVHQVRFOiB3ZWJW
aWV3RGlkQ2hhbmdlU2VsZWN0aW9uOldlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb25Ob3RpZmljYXRp
b24KIFBBU1MKSW5kZXg6IExheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL21vdmUtYnktY2hh
cmFjdGVyLWNyYXNoLXRlc3QtdGV4dGFyZWEuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0
cy9lZGl0aW5nL3NlbGVjdGlvbi9tb3ZlLWJ5LWNoYXJhY3Rlci1jcmFzaC10ZXN0LXRleHRhcmVh
Lmh0bWwJKHJldmlzaW9uIDEzNzY3OCkKKysrIExheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9u
L21vdmUtYnktY2hhcmFjdGVyLWNyYXNoLXRlc3QtdGV4dGFyZWEuaHRtbAkod29ya2luZyBjb3B5
KQpAQCAtNCwyOCArNCwyOCBAQAogVGhpcyB0ZXN0IHNldHMgY2FyZXQgYXQgdGhlIGJlZ2lubmlu
ZyBvZiBiYWNrd2FyZCB0ZXh0IGFuZCBtb3ZpbmcgdGhlIGNoYXJhY3RlciB0byBsZWZ0IGFuZCBy
aWdodC4gIFdlYktpdCBzaG91bGQgbm90IGNyYXNoIGFuZCB5b3Ugc2hvdWxkIHNlZSBQQVNTIGJl
bG93OgogPHRleHRhcmVhIGlkPSJlZGl0b3IiPiYjODIzODtMVFIKIDwvdGV4dGFyZWE+Cis8L2Jv
ZHk+CiA8c2NyaXB0Pgotb25sb2FkID0gZnVuY3Rpb24oKSB7Ci0gICAgdmFyIHNlbCA9IHdpbmRv
dy5nZXRTZWxlY3Rpb24oKTsKLSAgICBzZWwuZW1wdHkoKTsKLSAgICB2YXIgdGVzdCA9IGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJlZGl0b3IiKTsKLSAgICB0ZXN0LmZvY3VzKCk7Ci0gICAgdGVz
dC5zZWxlY3Rpb25EaXJlY3Rpb24gPSAnbm9uZSc7Ci0gICAgdGVzdC5zZWxlY3Rpb25TdGFydCA9
IDA7Ci0gICAgdGVzdC5zZWxlY3Rpb25FbmQgPSAwOwotICAgIGdldFNlbGVjdGlvbigpLm1vZGlm
eSgibW92ZSIsICJsZWZ0IiwgImNoYXJhY3RlciIpOwotICAgIGdldFNlbGVjdGlvbigpLm1vZGlm
eSgibW92ZSIsICJsZWZ0IiwgImNoYXJhY3RlciIpOwotICAgIHRlc3Quc2VsZWN0aW9uRGlyZWN0
aW9uID0gJ25vbmUnOwotICAgIHRlc3Quc2VsZWN0aW9uU3RhcnQgPSAxOwotICAgIHRlc3Quc2Vs
ZWN0aW9uRW5kID0gMTsKLSAgICBnZXRTZWxlY3Rpb24oKS5tb2RpZnkoIm1vdmUiLCAicmlnaHQi
LCAiY2hhcmFjdGVyIik7Ci0gICAgZ2V0U2VsZWN0aW9uKCkubW9kaWZ5KCJtb3ZlIiwgInJpZ2h0
IiwgImNoYXJhY3RlciIpOwotICAgIGRvY3VtZW50LmJvZHkuaW5uZXJIVE1MID0gIlBBU1MiOwot
fTsKLQotaWYgKHdpbmRvdy50ZXN0UnVubmVyKQoraWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CiAg
ICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisgICAgdGVzdFJ1bm5lci5kdW1wRWRpdGluZ0Nh
bGxiYWNrcygpOworfQogCit2YXIgc2VsID0gd2luZG93LmdldFNlbGVjdGlvbigpOworc2VsLmVt
cHR5KCk7Cit2YXIgdGVzdCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJlZGl0b3IiKTsKK3Rl
c3QuZm9jdXMoKTsKK3Rlc3Quc2VsZWN0aW9uRGlyZWN0aW9uID0gJ25vbmUnOwordGVzdC5zZWxl
Y3Rpb25TdGFydCA9IDA7Cit0ZXN0LnNlbGVjdGlvbkVuZCA9IDA7CitnZXRTZWxlY3Rpb24oKS5t
b2RpZnkoIm1vdmUiLCAibGVmdCIsICJjaGFyYWN0ZXIiKTsKK2dldFNlbGVjdGlvbigpLm1vZGlm
eSgibW92ZSIsICJsZWZ0IiwgImNoYXJhY3RlciIpOwordGVzdC5zZWxlY3Rpb25EaXJlY3Rpb24g
PSAnbm9uZSc7Cit0ZXN0LnNlbGVjdGlvblN0YXJ0ID0gMTsKK3Rlc3Quc2VsZWN0aW9uRW5kID0g
MTsKK2dldFNlbGVjdGlvbigpLm1vZGlmeSgibW92ZSIsICJyaWdodCIsICJjaGFyYWN0ZXIiKTsK
K2dldFNlbGVjdGlvbigpLm1vZGlmeSgibW92ZSIsICJyaWdodCIsICJjaGFyYWN0ZXIiKTsKKwor
ZG9jdW1lbnQuYm9keS5pbm5lckhUTUwgPSAiUEFTUyI7CiA8L3NjcmlwdD4KLTwvYm9keT4KIDwv
aHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>179546</attachid>
            <date>2012-12-14 15:45:20 -0800</date>
            <delta_ts>2012-12-14 15:46:07 -0800</delta_ts>
            <desc>Fixes the bug</desc>
            <filename>bug-104951-20121214154240.patch</filename>
            <type>text/plain</type>
            <size>27755</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZXhwLmluCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJDb3JlL1dlYkNvcmUuZXhwLmluCShyZXZpc2lvbiAxMzc3ODIpCisrKyBTb3VyY2UvV2Vi
Q29yZS9XZWJDb3JlLmV4cC5pbgkod29ya2luZyBjb3B5KQpAQCAtMTQ4Myw2ICsxNDgzLDcgQEAg
X19aTks3V2ViQ29yZTlQYWdlQ2FjaGUxMGZyYW1lQ291bnRFdgogX19aTks3V2ViQ29yZTlQYWdl
Q2FjaGUyMWF1dG9yZWxlYXNlZFBhZ2VDb3VudEV2CiBfX1pUVk43V2ViQ29yZTEyQ2hyb21lQ2xp
ZW50RQogX19aVFZON1dlYkNvcmUxNExvYWRlclN0cmF0ZWd5RQorX19aVFZON1dlYkNvcmUxNkRh
dGFiYXNlU3RyYXRlZ3lFCiBfX1pUVk43V2ViQ29yZTE2SWNvbkRhdGFiYXNlQmFzZUUKIF9fWlRW
TjdXZWJDb3JlMTdGcmFtZUxvYWRlckNsaWVudEUKIF9fWlRWTjdXZWJDb3JlMjVIaXN0b3J5UHJv
cGVydHlMaXN0V3JpdGVyRQpJbmRleDogTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIExheW91dFRlc3RzL0NoYW5nZUxvZwkocmV2aXNpb24gMTM3NzgyKQorKysgTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsNzYgQEAKKzIwMTItMTItMTQg
IFJ5b3N1a2UgTml3YSAgPHJuaXdhQHdlYmtpdC5vcmc+CisKKyAgICAgICAgTGF5b3V0IFRlc3Qg
ZWRpdGluZy9zZWxlY3Rpb24vbW92ZS1ieS1jaGFyYWN0ZXItY3Jhc2gtdGVzdC10ZXh0YXJlYS5o
dG1sIGlzIGZsYWt5CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xMDQ5NTEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBUaGUgcHJvYmxlbSB3YXMgdGhhdCBlZGl0aW5nL3NlbGVjdGlvbi9tb3ZlLWJ5LWNoYXJh
Y3Rlci02Lmh0bWwgd2FzIHJ1bm5pbmcgZWRpdGluZyBjb21tYW5kcworICAgICAgICBpbiBhIHRp
bWVyIHdpdGhvdXQgbWFraW5nIHRoZSB0ZXN0IHJ1bm5lciB3YWl0LiBGaXhlZCB0aGUgYnVnIGJ5
IGNhbGxpbmcgd2FpdFVudGlsRG9uZSBhbmQKKyAgICAgICAgbm90aWZ5RG9uZSBhdCBhcHByb3By
aWF0ZSBwbGFjZXMgaW4gZWRpdGluZy5qcy4KKworICAgICAgICBXZSBkb24ndCBuZWVkIHRvIHJl
YmFzZWxpbmUgb3RoZXIgdGVzdHMgc2luY2UgdGhpcyBpcyB0aGUgb25seSB0ZXN0IHRoYXQgdXNl
cyBjb21tYW5kRGVsYXkuCisKKyAgICAgICAgKiBlZGl0aW5nL2VkaXRpbmcuanM6CisgICAgICAg
IChzZXRTZWxlY3Rpb25Db21tYW5kKToKKyAgICAgICAgKHRyYW5zcG9zZUNoYXJhY3RlcnNDb21t
YW5kKToKKyAgICAgICAgKG1vdmVTZWxlY3Rpb25MZWZ0QnlDaGFyYWN0ZXJDb21tYW5kKToKKyAg
ICAgICAgKG1vdmVTZWxlY3Rpb25SaWdodEJ5Q2hhcmFjdGVyQ29tbWFuZCk6CisgICAgICAgIChl
eHRlbmRTZWxlY3Rpb25MZWZ0QnlDaGFyYWN0ZXJDb21tYW5kKToKKyAgICAgICAgKGV4dGVuZFNl
bGVjdGlvblJpZ2h0QnlDaGFyYWN0ZXJDb21tYW5kKToKKyAgICAgICAgKG1vdmVTZWxlY3Rpb25G
b3J3YXJkQnlDaGFyYWN0ZXJDb21tYW5kKToKKyAgICAgICAgKGV4dGVuZFNlbGVjdGlvbkZvcndh
cmRCeUNoYXJhY3RlckNvbW1hbmQpOgorICAgICAgICAobW92ZVNlbGVjdGlvbkZvcndhcmRCeVdv
cmRDb21tYW5kKToKKyAgICAgICAgKGV4dGVuZFNlbGVjdGlvbkZvcndhcmRCeVdvcmRDb21tYW5k
KToKKyAgICAgICAgKG1vdmVTZWxlY3Rpb25Gb3J3YXJkQnlTZW50ZW5jZUNvbW1hbmQpOgorICAg
ICAgICAoZXh0ZW5kU2VsZWN0aW9uRm9yd2FyZEJ5U2VudGVuY2VDb21tYW5kKToKKyAgICAgICAg
KG1vdmVTZWxlY3Rpb25Gb3J3YXJkQnlMaW5lQ29tbWFuZCk6CisgICAgICAgIChleHRlbmRTZWxl
Y3Rpb25Gb3J3YXJkQnlMaW5lQ29tbWFuZCk6CisgICAgICAgIChtb3ZlU2VsZWN0aW9uRm9yd2Fy
ZEJ5TGluZUJvdW5kYXJ5Q29tbWFuZCk6CisgICAgICAgIChleHRlbmRTZWxlY3Rpb25Gb3J3YXJk
QnlMaW5lQm91bmRhcnlDb21tYW5kKToKKyAgICAgICAgKG1vdmVTZWxlY3Rpb25CYWNrd2FyZEJ5
Q2hhcmFjdGVyQ29tbWFuZCk6CisgICAgICAgIChleHRlbmRTZWxlY3Rpb25CYWNrd2FyZEJ5Q2hh
cmFjdGVyQ29tbWFuZCk6CisgICAgICAgIChtb3ZlU2VsZWN0aW9uQmFja3dhcmRCeVdvcmRDb21t
YW5kKToKKyAgICAgICAgKGV4dGVuZFNlbGVjdGlvbkJhY2t3YXJkQnlXb3JkQ29tbWFuZCk6Cisg
ICAgICAgIChtb3ZlU2VsZWN0aW9uQmFja3dhcmRCeVNlbnRlbmNlQ29tbWFuZCk6CisgICAgICAg
IChleHRlbmRTZWxlY3Rpb25CYWNrd2FyZEJ5U2VudGVuY2VDb21tYW5kKToKKyAgICAgICAgKG1v
dmVTZWxlY3Rpb25CYWNrd2FyZEJ5TGluZUNvbW1hbmQpOgorICAgICAgICAoZXh0ZW5kU2VsZWN0
aW9uQmFja3dhcmRCeUxpbmVDb21tYW5kKToKKyAgICAgICAgKGV4dGVuZFNlbGVjdGlvbkJhY2t3
YXJkQnlMaW5lQm91bmRhcnlDb21tYW5kKToKKyAgICAgICAgKG1vdmVTZWxlY3Rpb25CYWNrd2Fy
ZEJ5TGluZUJvdW5kYXJ5Q29tbWFuZCk6CisgICAgICAgIChib2xkQ29tbWFuZCk6CisgICAgICAg
ICh1bmRlcmxpbmVDb21tYW5kKToKKyAgICAgICAgKGZvbnROYW1lQ29tbWFuZCk6CisgICAgICAg
IChmb250U2l6ZUNvbW1hbmQpOgorICAgICAgICAoZm9udFNpemVEZWx0YUNvbW1hbmQpOgorICAg
ICAgICAoaXRhbGljQ29tbWFuZCk6CisgICAgICAgIChqdXN0aWZ5Q2VudGVyQ29tbWFuZCk6Cisg
ICAgICAgIChqdXN0aWZ5TGVmdENvbW1hbmQpOgorICAgICAgICAoanVzdGlmeVJpZ2h0Q29tbWFu
ZCk6CisgICAgICAgIChpbnNlcnRIVE1MQ29tbWFuZCk6CisgICAgICAgIChpbnNlcnRJbWFnZUNv
bW1hbmQpOgorICAgICAgICAoaW5zZXJ0TGluZUJyZWFrQ29tbWFuZCk6CisgICAgICAgIChpbnNl
cnRQYXJhZ3JhcGhDb21tYW5kKToKKyAgICAgICAgKGluc2VydE5ld2xpbmVJblF1b3RlZENvbnRl
bnRDb21tYW5kKToKKyAgICAgICAgKHR5cGVDaGFyYWN0ZXJDb21tYW5kKToKKyAgICAgICAgKHNl
bGVjdEFsbENvbW1hbmQpOgorICAgICAgICAoc3RyaWtldGhyb3VnaENvbW1hbmQpOgorICAgICAg
ICAodW5kb0NvbW1hbmQpOgorICAgICAgICAocmVkb0NvbW1hbmQpOgorICAgICAgICAoY2hhbmdl
Um9vdFNpemUpOgorICAgICAgICAoY3V0Q29tbWFuZCk6CisgICAgICAgIChjb3B5Q29tbWFuZCk6
CisgICAgICAgIChwYXN0ZUNvbW1hbmQpOgorICAgICAgICAoY3JlYXRlTGlua0NvbW1hbmQpOgor
ICAgICAgICAodW5saW5rQ29tbWFuZCk6CisgICAgICAgIChwYXN0ZUFuZE1hdGNoU3R5bGVDb21t
YW5kKToKKyAgICAgICAgKGRlbGV0ZUNvbW1hbmQpOgorICAgICAgICAoZm9yd2FyZERlbGV0ZUNv
bW1hbmQpOgorICAgICAgICAoYmFja0NvbG9yQ29tbWFuZCk6CisgICAgICAgIChmb3JlQ29sb3JD
b21tYW5kKToKKyAgICAgICAgKGV4ZWN1dGVDb21tYW5kKToKKyAgICAgICAgKiBwbGF0Zm9ybS9t
YWMvZWRpdGluZy9zZWxlY3Rpb24vbW92ZS1ieS1jaGFyYWN0ZXItNi1leHBlY3RlZC50eHQ6IFJl
YmFzZWxpbmVkLgorCiAyMDEyLTEyLTE0ICBCZXRoIERha2luICA8YmRha2luQGFwcGxlLmNvbT4K
IAogICAgICAgICBVcGRhdGluZyB0aGVzZSByZXN1bHRzIGFnYWluIHNpbmNlIHRoaXMgZmFpbGlu
ZyB0ZXN0IGhhcyBzdGFydGVkIGZhaWxpbmcgaW4gYSBuZXcgCkluZGV4OiBMYXlvdXRUZXN0cy9l
ZGl0aW5nL2VkaXRpbmcuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0
aW5nLmpzCShyZXZpc2lvbiAxMzc3ODIpCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRpbmcu
anMJKHdvcmtpbmcgY29weSkKQEAgLTE2LDcgKzE2LDcgQEAgZnVuY3Rpb24gZXhlY1NldFNlbGVj
dGlvbkNvbW1hbmQoc24sIHNvLAogLy8gQXJncyBhcmUgc3RhcnROb2RlLCBzdGFydE9mZnNldCwg
ZW5kTm9kZSwgZW5kT2Zmc2V0CiBmdW5jdGlvbiBzZXRTZWxlY3Rpb25Db21tYW5kKHNuLCBzbywg
ZW4sIGVvKSB7CiAgICAgaWYgKGNvbW1hbmREZWxheSA+IDApIHsKLSAgICAgICAgd2luZG93LnNl
dFRpbWVvdXQoZXhlY1NldFNlbGVjdGlvbkNvbW1hbmQsIGNvbW1hbmRDb3VudCAqIGNvbW1hbmRE
ZWxheSwgc24sIHNvLCBlbiwgZW8pOworICAgICAgICBxdWV1ZUNvbW1hbmQoZXhlY1NldFNlbGVj
dGlvbkNvbW1hbmQuYmluZChleGVjU2V0U2VsZWN0aW9uQ29tbWFuZCwgc24sIHNvLCBlbiwgZW8p
LCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkpOwogICAgICAgICBjb21tYW5kQ291bnQrKzsK
ICAgICB9IGVsc2UKICAgICAgICAgZXhlY1NldFNlbGVjdGlvbkNvbW1hbmQoc24sIHNvLCBlbiwg
ZW8pOwpAQCAtMjksNyArMjksNyBAQCBmdW5jdGlvbiBleGVjVHJhbnNwb3NlQ2hhcmFjdGVyc0Nv
bW1hbmQoCiB9CiBmdW5jdGlvbiB0cmFuc3Bvc2VDaGFyYWN0ZXJzQ29tbWFuZCgpIHsKICAgICBp
ZiAoY29tbWFuZERlbGF5ID4gMCkgewotICAgICAgICB3aW5kb3cuc2V0VGltZW91dChleGVjVHJh
bnNwb3NlQ2hhcmFjdGVyc0NvbW1hbmQsIGNvbW1hbmRDb3VudCAqIGNvbW1hbmREZWxheSk7Cisg
ICAgICAgIHF1ZXVlQ29tbWFuZChleGVjVHJhbnNwb3NlQ2hhcmFjdGVyc0NvbW1hbmQsIGNvbW1h
bmRDb3VudCAqIGNvbW1hbmREZWxheSk7CiAgICAgICAgIGNvbW1hbmRDb3VudCsrOwogICAgIH0K
ICAgICBlbHNlIHsKQEAgLTQ0LDcgKzQ0LDcgQEAgZnVuY3Rpb24gZXhlY01vdmVTZWxlY3Rpb25M
ZWZ0QnlDaGFyYWN0ZQogfQogZnVuY3Rpb24gbW92ZVNlbGVjdGlvbkxlZnRCeUNoYXJhY3RlckNv
bW1hbmQoKSB7CiAgICAgaWYgKGNvbW1hbmREZWxheSA+IDApIHsKLSAgICAgICAgd2luZG93LnNl
dFRpbWVvdXQoZXhlY01vdmVTZWxlY3Rpb25MZWZ0QnlDaGFyYWN0ZXJDb21tYW5kLCBjb21tYW5k
Q291bnQgKiBjb21tYW5kRGVsYXkpOworICAgICAgICBxdWV1ZUNvbW1hbmQoZXhlY01vdmVTZWxl
Y3Rpb25MZWZ0QnlDaGFyYWN0ZXJDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkp
OwogICAgICAgICBjb21tYW5kQ291bnQrKzsKICAgICB9CiAgICAgZWxzZSB7CkBAIC01OSw3ICs1
OSw3IEBAIGZ1bmN0aW9uIGV4ZWNNb3ZlU2VsZWN0aW9uUmlnaHRCeUNoYXJhY3QKIH0KIGZ1bmN0
aW9uIG1vdmVTZWxlY3Rpb25SaWdodEJ5Q2hhcmFjdGVyQ29tbWFuZCgpIHsKICAgICBpZiAoY29t
bWFuZERlbGF5ID4gMCkgewotICAgICAgICB3aW5kb3cuc2V0VGltZW91dChleGVjTW92ZVNlbGVj
dGlvblJpZ2h0QnlDaGFyYWN0ZXJDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkp
OworICAgICAgICBxdWV1ZUNvbW1hbmQoZXhlY01vdmVTZWxlY3Rpb25SaWdodEJ5Q2hhcmFjdGVy
Q29tbWFuZCwgY29tbWFuZENvdW50ICogY29tbWFuZERlbGF5KTsKICAgICAgICAgY29tbWFuZENv
dW50Kys7CiAgICAgfQogICAgIGVsc2UgewpAQCAtNzQsNyArNzQsNyBAQCBmdW5jdGlvbiBleGVj
RXh0ZW5kU2VsZWN0aW9uTGVmdEJ5Q2hhcmFjCiB9CiBmdW5jdGlvbiBleHRlbmRTZWxlY3Rpb25M
ZWZ0QnlDaGFyYWN0ZXJDb21tYW5kKCkgewogICAgIGlmIChjb21tYW5kRGVsYXkgPiAwKSB7Ci0g
ICAgICAgIHdpbmRvdy5zZXRUaW1lb3V0KGV4ZWNFeHRlbmRTZWxlY3Rpb25MZWZ0QnlDaGFyYWN0
ZXJDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkpOworICAgICAgICBxdWV1ZUNv
bW1hbmQoZXhlY0V4dGVuZFNlbGVjdGlvbkxlZnRCeUNoYXJhY3RlckNvbW1hbmQsIGNvbW1hbmRD
b3VudCAqIGNvbW1hbmREZWxheSk7CiAgICAgICAgIGNvbW1hbmRDb3VudCsrOwogICAgIH0KICAg
ICBlbHNlIHsKQEAgLTg5LDcgKzg5LDcgQEAgZnVuY3Rpb24gZXhlY0V4dGVuZFNlbGVjdGlvblJp
Z2h0QnlDaGFyYQogfQogZnVuY3Rpb24gZXh0ZW5kU2VsZWN0aW9uUmlnaHRCeUNoYXJhY3RlckNv
bW1hbmQoKSB7CiAgICAgaWYgKGNvbW1hbmREZWxheSA+IDApIHsKLSAgICAgICAgd2luZG93LnNl
dFRpbWVvdXQoZXhlY0V4dGVuZFNlbGVjdGlvblJpZ2h0QnlDaGFyYWN0ZXJDb21tYW5kLCBjb21t
YW5kQ291bnQgKiBjb21tYW5kRGVsYXkpOworICAgICAgICBxdWV1ZUNvbW1hbmQoZXhlY0V4dGVu
ZFNlbGVjdGlvblJpZ2h0QnlDaGFyYWN0ZXJDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5k
RGVsYXkpOwogICAgICAgICBjb21tYW5kQ291bnQrKzsKICAgICB9CiAgICAgZWxzZSB7CkBAIC0x
MDQsNyArMTA0LDcgQEAgZnVuY3Rpb24gZXhlY01vdmVTZWxlY3Rpb25Gb3J3YXJkQnlDaGFyYQog
fQogZnVuY3Rpb24gbW92ZVNlbGVjdGlvbkZvcndhcmRCeUNoYXJhY3RlckNvbW1hbmQoKSB7CiAg
ICAgaWYgKGNvbW1hbmREZWxheSA+IDApIHsKLSAgICAgICAgd2luZG93LnNldFRpbWVvdXQoZXhl
Y01vdmVTZWxlY3Rpb25Gb3J3YXJkQnlDaGFyYWN0ZXJDb21tYW5kLCBjb21tYW5kQ291bnQgKiBj
b21tYW5kRGVsYXkpOworICAgICAgICBxdWV1ZUNvbW1hbmQoZXhlY01vdmVTZWxlY3Rpb25Gb3J3
YXJkQnlDaGFyYWN0ZXJDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkpOwogICAg
ICAgICBjb21tYW5kQ291bnQrKzsKICAgICB9CiAgICAgZWxzZSB7CkBAIC0xMTksNyArMTE5LDcg
QEAgZnVuY3Rpb24gZXhlY0V4dGVuZFNlbGVjdGlvbkZvcndhcmRCeUNoYQogfQogZnVuY3Rpb24g
ZXh0ZW5kU2VsZWN0aW9uRm9yd2FyZEJ5Q2hhcmFjdGVyQ29tbWFuZCgpIHsKICAgICBpZiAoY29t
bWFuZERlbGF5ID4gMCkgewotICAgICAgICB3aW5kb3cuc2V0VGltZW91dChleGVjRXh0ZW5kU2Vs
ZWN0aW9uRm9yd2FyZEJ5Q2hhcmFjdGVyQ29tbWFuZCwgY29tbWFuZENvdW50ICogY29tbWFuZERl
bGF5KTsKKyAgICAgICAgcXVldWVDb21tYW5kKGV4ZWNFeHRlbmRTZWxlY3Rpb25Gb3J3YXJkQnlD
aGFyYWN0ZXJDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkpOwogICAgICAgICBj
b21tYW5kQ291bnQrKzsKICAgICB9CiAgICAgZWxzZSB7CkBAIC0xMzQsNyArMTM0LDcgQEAgZnVu
Y3Rpb24gZXhlY01vdmVTZWxlY3Rpb25Gb3J3YXJkQnlXb3JkQwogfQogZnVuY3Rpb24gbW92ZVNl
bGVjdGlvbkZvcndhcmRCeVdvcmRDb21tYW5kKCkgewogICAgIGlmIChjb21tYW5kRGVsYXkgPiAw
KSB7Ci0gICAgICAgIHdpbmRvdy5zZXRUaW1lb3V0KGV4ZWNNb3ZlU2VsZWN0aW9uRm9yd2FyZEJ5
V29yZENvbW1hbmQsIGNvbW1hbmRDb3VudCAqIGNvbW1hbmREZWxheSk7CisgICAgICAgIHF1ZXVl
Q29tbWFuZChleGVjTW92ZVNlbGVjdGlvbkZvcndhcmRCeVdvcmRDb21tYW5kLCBjb21tYW5kQ291
bnQgKiBjb21tYW5kRGVsYXkpOwogICAgICAgICBjb21tYW5kQ291bnQrKzsKICAgICB9CiAgICAg
ZWxzZSB7CkBAIC0xNDksNyArMTQ5LDcgQEAgZnVuY3Rpb24gZXhlY0V4dGVuZFNlbGVjdGlvbkZv
cndhcmRCeVdvcgogfQogZnVuY3Rpb24gZXh0ZW5kU2VsZWN0aW9uRm9yd2FyZEJ5V29yZENvbW1h
bmQoKSB7CiAgICAgaWYgKGNvbW1hbmREZWxheSA+IDApIHsKLSAgICAgICAgd2luZG93LnNldFRp
bWVvdXQoZXhlY0V4dGVuZFNlbGVjdGlvbkZvcndhcmRCeVdvcmRDb21tYW5kLCBjb21tYW5kQ291
bnQgKiBjb21tYW5kRGVsYXkpOworICAgICAgICBxdWV1ZUNvbW1hbmQoZXhlY0V4dGVuZFNlbGVj
dGlvbkZvcndhcmRCeVdvcmRDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkpOwog
ICAgICAgICBjb21tYW5kQ291bnQrKzsKICAgICB9CiAgICAgZWxzZSB7CkBAIC0xNjQsNyArMTY0
LDcgQEAgZnVuY3Rpb24gZXhlY01vdmVTZWxlY3Rpb25Gb3J3YXJkQnlTZW50ZQogfQogZnVuY3Rp
b24gbW92ZVNlbGVjdGlvbkZvcndhcmRCeVNlbnRlbmNlQ29tbWFuZCgpIHsKICAgICBpZiAoY29t
bWFuZERlbGF5ID4gMCkgewotICAgICAgICB3aW5kb3cuc2V0VGltZW91dChleGVjTW92ZVNlbGVj
dGlvbkZvcndhcmRCeVNlbnRlbmNlQ29tbWFuZCwgY29tbWFuZENvdW50ICogY29tbWFuZERlbGF5
KTsKKyAgICAgICAgcXVldWVDb21tYW5kKGV4ZWNNb3ZlU2VsZWN0aW9uRm9yd2FyZEJ5U2VudGVu
Y2VDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkpOwogICAgICAgICBjb21tYW5k
Q291bnQrKzsKICAgICB9CiAgICAgZWxzZSB7CkBAIC0xNzksNyArMTc5LDcgQEAgZnVuY3Rpb24g
ZXhlY0V4dGVuZFNlbGVjdGlvbkZvcndhcmRCeVNlbgogfQogZnVuY3Rpb24gZXh0ZW5kU2VsZWN0
aW9uRm9yd2FyZEJ5U2VudGVuY2VDb21tYW5kKCkgewogICAgIGlmIChjb21tYW5kRGVsYXkgPiAw
KSB7Ci0gICAgICAgIHdpbmRvdy5zZXRUaW1lb3V0KGV4ZWNFeHRlbmRTZWxlY3Rpb25Gb3J3YXJk
QnlTZW50ZW5jZUNvbW1hbmQsIGNvbW1hbmRDb3VudCAqIGNvbW1hbmREZWxheSk7CisgICAgICAg
IHF1ZXVlQ29tbWFuZChleGVjRXh0ZW5kU2VsZWN0aW9uRm9yd2FyZEJ5U2VudGVuY2VDb21tYW5k
LCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkpOwogICAgICAgICBjb21tYW5kQ291bnQrKzsK
ICAgICB9CiAgICAgZWxzZSB7CkBAIC0xOTQsNyArMTk0LDcgQEAgZnVuY3Rpb24gZXhlY01vdmVT
ZWxlY3Rpb25Gb3J3YXJkQnlMaW5lQwogfQogZnVuY3Rpb24gbW92ZVNlbGVjdGlvbkZvcndhcmRC
eUxpbmVDb21tYW5kKCkgewogICAgIGlmIChjb21tYW5kRGVsYXkgPiAwKSB7Ci0gICAgICAgIHdp
bmRvdy5zZXRUaW1lb3V0KGV4ZWNNb3ZlU2VsZWN0aW9uRm9yd2FyZEJ5TGluZUNvbW1hbmQsIGNv
bW1hbmRDb3VudCAqIGNvbW1hbmREZWxheSk7CisgICAgICAgIHF1ZXVlQ29tbWFuZChleGVjTW92
ZVNlbGVjdGlvbkZvcndhcmRCeUxpbmVDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVs
YXkpOwogICAgICAgICBjb21tYW5kQ291bnQrKzsKICAgICB9CiAgICAgZWxzZSB7CkBAIC0yMDks
NyArMjA5LDcgQEAgZnVuY3Rpb24gZXhlY0V4dGVuZFNlbGVjdGlvbkZvcndhcmRCeUxpbgogfQog
ZnVuY3Rpb24gZXh0ZW5kU2VsZWN0aW9uRm9yd2FyZEJ5TGluZUNvbW1hbmQoKSB7CiAgICAgaWYg
KGNvbW1hbmREZWxheSA+IDApIHsKLSAgICAgICAgd2luZG93LnNldFRpbWVvdXQoZXhlY0V4dGVu
ZFNlbGVjdGlvbkZvcndhcmRCeUxpbmVDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVs
YXkpOworICAgICAgICBxdWV1ZUNvbW1hbmQoZXhlY0V4dGVuZFNlbGVjdGlvbkZvcndhcmRCeUxp
bmVDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkpOwogICAgICAgICBjb21tYW5k
Q291bnQrKzsKICAgICB9CiAgICAgZWxzZSB7CkBAIC0yMjQsNyArMjI0LDcgQEAgZnVuY3Rpb24g
ZXhlY01vdmVTZWxlY3Rpb25Gb3J3YXJkQnlMaW5lQgogfQogZnVuY3Rpb24gbW92ZVNlbGVjdGlv
bkZvcndhcmRCeUxpbmVCb3VuZGFyeUNvbW1hbmQoKSB7CiAgICAgaWYgKGNvbW1hbmREZWxheSA+
IDApIHsKLSAgICAgICAgd2luZG93LnNldFRpbWVvdXQoZXhlY01vdmVTZWxlY3Rpb25Gb3J3YXJk
QnlMaW5lQm91bmRhcnlDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkpOworICAg
ICAgICBxdWV1ZUNvbW1hbmQoZXhlY01vdmVTZWxlY3Rpb25Gb3J3YXJkQnlMaW5lQm91bmRhcnlD
b21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkpOwogICAgICAgICBjb21tYW5kQ291
bnQrKzsKICAgICB9CiAgICAgZWxzZSB7CkBAIC0yMzksNyArMjM5LDcgQEAgZnVuY3Rpb24gZXhl
Y0V4dGVuZFNlbGVjdGlvbkZvcndhcmRCeUxpbgogfQogZnVuY3Rpb24gZXh0ZW5kU2VsZWN0aW9u
Rm9yd2FyZEJ5TGluZUJvdW5kYXJ5Q29tbWFuZCgpIHsKICAgICBpZiAoY29tbWFuZERlbGF5ID4g
MCkgewotICAgICAgICB3aW5kb3cuc2V0VGltZW91dChleGVjRXh0ZW5kU2VsZWN0aW9uRm9yd2Fy
ZEJ5TGluZUJvdW5kYXJ5Q29tbWFuZCwgY29tbWFuZENvdW50ICogY29tbWFuZERlbGF5KTsKKyAg
ICAgICAgcXVldWVDb21tYW5kKGV4ZWNFeHRlbmRTZWxlY3Rpb25Gb3J3YXJkQnlMaW5lQm91bmRh
cnlDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkpOwogICAgICAgICBjb21tYW5k
Q291bnQrKzsKICAgICB9CiAgICAgZWxzZSB7CkBAIC0yNTQsNyArMjU0LDcgQEAgZnVuY3Rpb24g
ZXhlY01vdmVTZWxlY3Rpb25CYWNrd2FyZEJ5Q2hhcgogfQogZnVuY3Rpb24gbW92ZVNlbGVjdGlv
bkJhY2t3YXJkQnlDaGFyYWN0ZXJDb21tYW5kKCkgewogICAgIGlmIChjb21tYW5kRGVsYXkgPiAw
KSB7Ci0gICAgICAgIHdpbmRvdy5zZXRUaW1lb3V0KGV4ZWNNb3ZlU2VsZWN0aW9uQmFja3dhcmRC
eUNoYXJhY3RlckNvbW1hbmQsIGNvbW1hbmRDb3VudCAqIGNvbW1hbmREZWxheSk7CisgICAgICAg
IHF1ZXVlQ29tbWFuZChleGVjTW92ZVNlbGVjdGlvbkJhY2t3YXJkQnlDaGFyYWN0ZXJDb21tYW5k
LCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkpOwogICAgICAgICBjb21tYW5kQ291bnQrKzsK
ICAgICB9CiAgICAgZWxzZSB7CkBAIC0yNjksNyArMjY5LDcgQEAgZnVuY3Rpb24gZXhlY0V4dGVu
ZFNlbGVjdGlvbkJhY2t3YXJkQnlDaAogfQogZnVuY3Rpb24gZXh0ZW5kU2VsZWN0aW9uQmFja3dh
cmRCeUNoYXJhY3RlckNvbW1hbmQoKSB7CiAgICAgaWYgKGNvbW1hbmREZWxheSA+IDApIHsKLSAg
ICAgICAgd2luZG93LnNldFRpbWVvdXQoZXhlY0V4dGVuZFNlbGVjdGlvbkJhY2t3YXJkQnlDaGFy
YWN0ZXJDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkpOworICAgICAgICBxdWV1
ZUNvbW1hbmQoZXhlY0V4dGVuZFNlbGVjdGlvbkJhY2t3YXJkQnlDaGFyYWN0ZXJDb21tYW5kLCBj
b21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkpOwogICAgICAgICBjb21tYW5kQ291bnQrKzsKICAg
ICB9CiAgICAgZWxzZSB7CkBAIC0yODQsNyArMjg0LDcgQEAgZnVuY3Rpb24gZXhlY01vdmVTZWxl
Y3Rpb25CYWNrd2FyZEJ5V29yZAogfQogZnVuY3Rpb24gbW92ZVNlbGVjdGlvbkJhY2t3YXJkQnlX
b3JkQ29tbWFuZCgpIHsKICAgICBpZiAoY29tbWFuZERlbGF5ID4gMCkgewotICAgICAgICB3aW5k
b3cuc2V0VGltZW91dChleGVjTW92ZVNlbGVjdGlvbkJhY2t3YXJkQnlXb3JkQ29tbWFuZCwgY29t
bWFuZENvdW50ICogY29tbWFuZERlbGF5KTsKKyAgICAgICAgcXVldWVDb21tYW5kKGV4ZWNNb3Zl
U2VsZWN0aW9uQmFja3dhcmRCeVdvcmRDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVs
YXkpOwogICAgICAgICBjb21tYW5kQ291bnQrKzsKICAgICB9CiAgICAgZWxzZSB7CkBAIC0yOTks
NyArMjk5LDcgQEAgZnVuY3Rpb24gZXhlY0V4dGVuZFNlbGVjdGlvbkJhY2t3YXJkQnlXbwogfQog
ZnVuY3Rpb24gZXh0ZW5kU2VsZWN0aW9uQmFja3dhcmRCeVdvcmRDb21tYW5kKCkgewogICAgIGlm
IChjb21tYW5kRGVsYXkgPiAwKSB7Ci0gICAgICAgIHdpbmRvdy5zZXRUaW1lb3V0KGV4ZWNFeHRl
bmRTZWxlY3Rpb25CYWNrd2FyZEJ5V29yZENvbW1hbmQsIGNvbW1hbmRDb3VudCAqIGNvbW1hbmRE
ZWxheSk7CisgICAgICAgIHF1ZXVlQ29tbWFuZChleGVjRXh0ZW5kU2VsZWN0aW9uQmFja3dhcmRC
eVdvcmRDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkpOwogICAgICAgICBjb21t
YW5kQ291bnQrKzsKICAgICB9CiAgICAgZWxzZSB7CkBAIC0zMTQsNyArMzE0LDcgQEAgZnVuY3Rp
b24gZXhlY01vdmVTZWxlY3Rpb25CYWNrd2FyZEJ5U2VudAogfQogZnVuY3Rpb24gbW92ZVNlbGVj
dGlvbkJhY2t3YXJkQnlTZW50ZW5jZUNvbW1hbmQoKSB7CiAgICAgaWYgKGNvbW1hbmREZWxheSA+
IDApIHsKLSAgICAgICAgd2luZG93LnNldFRpbWVvdXQoZXhlY01vdmVTZWxlY3Rpb25CYWNrd2Fy
ZEJ5U2VudGVuY2VDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkpOworICAgICAg
ICBxdWV1ZUNvbW1hbmQoZXhlY01vdmVTZWxlY3Rpb25CYWNrd2FyZEJ5U2VudGVuY2VDb21tYW5k
LCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkpOwogICAgICAgICBjb21tYW5kQ291bnQrKzsK
ICAgICB9CiAgICAgZWxzZSB7CkBAIC0zMjksNyArMzI5LDcgQEAgZnVuY3Rpb24gZXhlY0V4dGVu
ZFNlbGVjdGlvbkJhY2t3YXJkQnlTZQogfQogZnVuY3Rpb24gZXh0ZW5kU2VsZWN0aW9uQmFja3dh
cmRCeVNlbnRlbmNlQ29tbWFuZCgpIHsKICAgICBpZiAoY29tbWFuZERlbGF5ID4gMCkgewotICAg
ICAgICB3aW5kb3cuc2V0VGltZW91dChleGVjRXh0ZW5kU2VsZWN0aW9uQmFja3dhcmRCeVNlbnRl
bmNlQ29tbWFuZCwgY29tbWFuZENvdW50ICogY29tbWFuZERlbGF5KTsKKyAgICAgICAgcXVldWVD
b21tYW5kKGV4ZWNFeHRlbmRTZWxlY3Rpb25CYWNrd2FyZEJ5U2VudGVuY2VDb21tYW5kLCBjb21t
YW5kQ291bnQgKiBjb21tYW5kRGVsYXkpOwogICAgICAgICBjb21tYW5kQ291bnQrKzsKICAgICB9
CiAgICAgZWxzZSB7CkBAIC0zNDQsNyArMzQ0LDcgQEAgZnVuY3Rpb24gZXhlY01vdmVTZWxlY3Rp
b25CYWNrd2FyZEJ5TGluZQogfQogZnVuY3Rpb24gbW92ZVNlbGVjdGlvbkJhY2t3YXJkQnlMaW5l
Q29tbWFuZCgpIHsKICAgICBpZiAoY29tbWFuZERlbGF5ID4gMCkgewotICAgICAgICB3aW5kb3cu
c2V0VGltZW91dChleGVjTW92ZVNlbGVjdGlvbkJhY2t3YXJkQnlMaW5lQ29tbWFuZCwgY29tbWFu
ZENvdW50ICogY29tbWFuZERlbGF5KTsKKyAgICAgICAgcXVldWVDb21tYW5kKGV4ZWNNb3ZlU2Vs
ZWN0aW9uQmFja3dhcmRCeUxpbmVDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkp
OwogICAgICAgICBjb21tYW5kQ291bnQrKzsKICAgICB9CiAgICAgZWxzZSB7CkBAIC0zNTksNyAr
MzU5LDcgQEAgZnVuY3Rpb24gZXhlY0V4dGVuZFNlbGVjdGlvbkJhY2t3YXJkQnlMaQogfQogZnVu
Y3Rpb24gZXh0ZW5kU2VsZWN0aW9uQmFja3dhcmRCeUxpbmVDb21tYW5kKCkgewogICAgIGlmIChj
b21tYW5kRGVsYXkgPiAwKSB7Ci0gICAgICAgIHdpbmRvdy5zZXRUaW1lb3V0KGV4ZWNFeHRlbmRT
ZWxlY3Rpb25CYWNrd2FyZEJ5TGluZUNvbW1hbmQsIGNvbW1hbmRDb3VudCAqIGNvbW1hbmREZWxh
eSk7CisgICAgICAgIHF1ZXVlQ29tbWFuZChleGVjRXh0ZW5kU2VsZWN0aW9uQmFja3dhcmRCeUxp
bmVDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkpOwogICAgICAgICBjb21tYW5k
Q291bnQrKzsKICAgICB9CiAgICAgZWxzZSB7CkBAIC0zNzQsNyArMzc0LDcgQEAgZnVuY3Rpb24g
ZXhlY0V4dGVuZFNlbGVjdGlvbkJhY2t3YXJkQnlMaQogfQogZnVuY3Rpb24gZXh0ZW5kU2VsZWN0
aW9uQmFja3dhcmRCeUxpbmVCb3VuZGFyeUNvbW1hbmQoKSB7CiAgICAgaWYgKGNvbW1hbmREZWxh
eSA+IDApIHsKLSAgICAgICAgd2luZG93LnNldFRpbWVvdXQoZXhlY0V4dGVuZFNlbGVjdGlvbkJh
Y2t3YXJkQnlMaW5lQm91bmRhcnlDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkp
OworICAgICAgICBxdWV1ZUNvbW1hbmQoZXhlY0V4dGVuZFNlbGVjdGlvbkJhY2t3YXJkQnlMaW5l
Qm91bmRhcnlDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkpOwogICAgICAgICBj
b21tYW5kQ291bnQrKzsKICAgICB9CiAgICAgZWxzZSB7CkBAIC0zODksNyArMzg5LDcgQEAgZnVu
Y3Rpb24gZXhlY01vdmVTZWxlY3Rpb25CYWNrd2FyZEJ5TGluZQogfQogZnVuY3Rpb24gbW92ZVNl
bGVjdGlvbkJhY2t3YXJkQnlMaW5lQm91bmRhcnlDb21tYW5kKCkgewogICAgIGlmIChjb21tYW5k
RGVsYXkgPiAwKSB7Ci0gICAgICAgIHdpbmRvdy5zZXRUaW1lb3V0KGV4ZWNNb3ZlU2VsZWN0aW9u
QmFja3dhcmRCeUxpbmVCb3VuZGFyeUNvbW1hbmQsIGNvbW1hbmRDb3VudCAqIGNvbW1hbmREZWxh
eSk7CisgICAgICAgIHF1ZXVlQ29tbWFuZChleGVjTW92ZVNlbGVjdGlvbkJhY2t3YXJkQnlMaW5l
Qm91bmRhcnlDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkpOwogICAgICAgICBj
b21tYW5kQ291bnQrKzsKICAgICB9CiAgICAgZWxzZSB7CkBAIC00MjIsNyArNDIyLDcgQEAgZnVu
Y3Rpb24gZXhlY0JvbGRDb21tYW5kKCkgewogfQogZnVuY3Rpb24gYm9sZENvbW1hbmQoKSB7CiAg
ICAgaWYgKGNvbW1hbmREZWxheSA+IDApIHsKLSAgICAgICAgd2luZG93LnNldFRpbWVvdXQoZXhl
Y0JvbGRDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkpOworICAgICAgICBxdWV1
ZUNvbW1hbmQoZXhlY0JvbGRDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkpOwog
ICAgICAgICBjb21tYW5kQ291bnQrKzsKICAgICB9CiAgICAgZWxzZSB7CkBAIC00MzgsNyArNDM4
LDcgQEAgZnVuY3Rpb24gZXhlY1VuZGVybGluZUNvbW1hbmQoKSB7CiB9CiBmdW5jdGlvbiB1bmRl
cmxpbmVDb21tYW5kKCkgewogICAgIGlmIChjb21tYW5kRGVsYXkgPiAwKSB7Ci0gICAgICAgIHdp
bmRvdy5zZXRUaW1lb3V0KGV4ZWNVbmRlcmxpbmVDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21t
YW5kRGVsYXkpOworICAgICAgICBxdWV1ZUNvbW1hbmQoZXhlY1VuZGVybGluZUNvbW1hbmQsIGNv
bW1hbmRDb3VudCAqIGNvbW1hbmREZWxheSk7CiAgICAgICAgIGNvbW1hbmRDb3VudCsrOwogICAg
IH0KICAgICBlbHNlIHsKQEAgLTQ1NCw3ICs0NTQsNyBAQCBmdW5jdGlvbiBleGVjRm9udE5hbWVD
b21tYW5kKCkgewogfQogZnVuY3Rpb24gZm9udE5hbWVDb21tYW5kKCkgewogICAgIGlmIChjb21t
YW5kRGVsYXkgPiAwKSB7Ci0gICAgICAgIHdpbmRvdy5zZXRUaW1lb3V0KGV4ZWNGb250TmFtZUNv
bW1hbmQsIGNvbW1hbmRDb3VudCAqIGNvbW1hbmREZWxheSk7CisgICAgICAgIHF1ZXVlQ29tbWFu
ZChleGVjRm9udE5hbWVDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkpOwogICAg
ICAgICBjb21tYW5kQ291bnQrKzsKICAgICB9CiAgICAgZWxzZSB7CkBAIC00NzIsNyArNDcyLDcg
QEAgZnVuY3Rpb24gZXhlY0ZvbnRTaXplQ29tbWFuZChzKSB7CiB9CiBmdW5jdGlvbiBmb250U2l6
ZUNvbW1hbmQocykgewogICAgIGlmIChjb21tYW5kRGVsYXkgPiAwKSB7Ci0gICAgICAgIHdpbmRv
dy5zZXRUaW1lb3V0KGV4ZWNGb250U2l6ZUNvbW1hbmQsIGNvbW1hbmRDb3VudCAqIGNvbW1hbmRE
ZWxheSwgcyk7CisgICAgICAgIHF1ZXVlQ29tbWFuZChleGVjRm9udFNpemVDb21tYW5kLCBjb21t
YW5kQ291bnQgKiBjb21tYW5kRGVsYXksIHMpOwogICAgICAgICBjb21tYW5kQ291bnQrKzsKICAg
ICB9CiAgICAgZWxzZSB7CkBAIC00OTAsNyArNDkwLDcgQEAgZnVuY3Rpb24gZXhlY0ZvbnRTaXpl
RGVsdGFDb21tYW5kKHMpIHsKIH0KIGZ1bmN0aW9uIGZvbnRTaXplRGVsdGFDb21tYW5kKHMpIHsK
ICAgICBpZiAoY29tbWFuZERlbGF5ID4gMCkgewotICAgICAgICB3aW5kb3cuc2V0VGltZW91dChl
eGVjRm9udFNpemVEZWx0YUNvbW1hbmQsIGNvbW1hbmRDb3VudCAqIGNvbW1hbmREZWxheSwgcyk7
CisgICAgICAgIHF1ZXVlQ29tbWFuZChleGVjRm9udFNpemVEZWx0YUNvbW1hbmQuYmluZChleGVj
Rm9udFNpemVEZWx0YUNvbW1hbmQsIHMpLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkpOwog
ICAgICAgICBjb21tYW5kQ291bnQrKzsKICAgICB9CiAgICAgZWxzZSB7CkBAIC01MDYsNyArNTA2
LDcgQEAgZnVuY3Rpb24gZXhlY0l0YWxpY0NvbW1hbmQoKSB7CiB9CiBmdW5jdGlvbiBpdGFsaWND
b21tYW5kKCkgewogICAgIGlmIChjb21tYW5kRGVsYXkgPiAwKSB7Ci0gICAgICAgIHdpbmRvdy5z
ZXRUaW1lb3V0KGV4ZWNJdGFsaWNDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkp
OworICAgICAgICBxdWV1ZUNvbW1hbmQoZXhlY0l0YWxpY0NvbW1hbmQsIGNvbW1hbmRDb3VudCAq
IGNvbW1hbmREZWxheSk7CiAgICAgICAgIGNvbW1hbmRDb3VudCsrOwogICAgIH0KICAgICBlbHNl
IHsKQEAgLTUyMyw3ICs1MjMsNyBAQCBmdW5jdGlvbiBleGVjSnVzdGlmeUNlbnRlckNvbW1hbmQo
KSB7CiB9CiBmdW5jdGlvbiBqdXN0aWZ5Q2VudGVyQ29tbWFuZCgpIHsKICAgICBpZiAoY29tbWFu
ZERlbGF5ID4gMCkgewotICAgICAgICB3aW5kb3cuc2V0VGltZW91dChleGVjSnVzdGlmeUNlbnRl
ckNvbW1hbmQsIGNvbW1hbmRDb3VudCAqIGNvbW1hbmREZWxheSk7CisgICAgICAgIHF1ZXVlQ29t
bWFuZChleGVjSnVzdGlmeUNlbnRlckNvbW1hbmQsIGNvbW1hbmRDb3VudCAqIGNvbW1hbmREZWxh
eSk7CiAgICAgICAgIGNvbW1hbmRDb3VudCsrOwogICAgIH0KICAgICBlbHNlIHsKQEAgLTU0MCw3
ICs1NDAsNyBAQCBmdW5jdGlvbiBleGVjSnVzdGlmeUxlZnRDb21tYW5kKCkgewogfQogZnVuY3Rp
b24ganVzdGlmeUxlZnRDb21tYW5kKCkgewogICAgIGlmIChjb21tYW5kRGVsYXkgPiAwKSB7Ci0g
ICAgICAgIHdpbmRvdy5zZXRUaW1lb3V0KGV4ZWNKdXN0aWZ5TGVmdENvbW1hbmQsIGNvbW1hbmRD
b3VudCAqIGNvbW1hbmREZWxheSk7CisgICAgICAgIHF1ZXVlQ29tbWFuZChleGVjSnVzdGlmeUxl
ZnRDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkpOwogICAgICAgICBjb21tYW5k
Q291bnQrKzsKICAgICB9CiAgICAgZWxzZSB7CkBAIC01NTcsNyArNTU3LDcgQEAgZnVuY3Rpb24g
ZXhlY0p1c3RpZnlSaWdodENvbW1hbmQoKSB7CiB9CiBmdW5jdGlvbiBqdXN0aWZ5UmlnaHRDb21t
YW5kKCkgewogICAgIGlmIChjb21tYW5kRGVsYXkgPiAwKSB7Ci0gICAgICAgIHdpbmRvdy5zZXRU
aW1lb3V0KGV4ZWNKdXN0aWZ5UmlnaHRDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVs
YXkpOworICAgICAgICBxdWV1ZUNvbW1hbmQoZXhlY0p1c3RpZnlSaWdodENvbW1hbmQsIGNvbW1h
bmRDb3VudCAqIGNvbW1hbmREZWxheSk7CiAgICAgICAgIGNvbW1hbmRDb3VudCsrOwogICAgIH0K
ICAgICBlbHNlIHsKQEAgLTU3Myw3ICs1NzMsNyBAQCBmdW5jdGlvbiBleGVjSW5zZXJ0SFRNTENv
bW1hbmQoaHRtbCkgewogfQogZnVuY3Rpb24gaW5zZXJ0SFRNTENvbW1hbmQoaHRtbCkgewogICAg
IGlmIChjb21tYW5kRGVsYXkgPiAwKSB7Ci0gICAgICAgIHdpbmRvdy5zZXRUaW1lb3V0KGV4ZWNJ
bnNlcnRIVE1MQ29tbWFuZCwgY29tbWFuZENvdW50ICogY29tbWFuZERlbGF5LCBodG1sKTsKKyAg
ICAgICAgcXVldWVDb21tYW5kKGV4ZWNJbnNlcnRIVE1MQ29tbWFuZC5iaW5kKGV4ZWNJbnNlcnRI
VE1MQ29tbWFuZCwgaHRtbCksIGNvbW1hbmRDb3VudCAqIGNvbW1hbmREZWxheSk7CiAgICAgICAg
IGNvbW1hbmRDb3VudCsrOwogICAgIH0KICAgICBlbHNlIHsKQEAgLTU4OSw3ICs1ODksNyBAQCBm
dW5jdGlvbiBleGVjSW5zZXJ0SW1hZ2VDb21tYW5kKGltZ1NyYykgCiB9CiBmdW5jdGlvbiBpbnNl
cnRJbWFnZUNvbW1hbmQoaW1nU3JjKSB7CiAgICAgaWYgKGNvbW1hbmREZWxheSA+IDApIHsKLSAg
ICAgICAgd2luZG93LnNldFRpbWVvdXQoZXhlY0luc2VydEltYWdlQ29tbWFuZCwgY29tbWFuZENv
dW50ICogY29tbWFuZERlbGF5LCBpbWdTcmMpOworICAgICAgICBxdWV1ZUNvbW1hbmQoZXhlY0lu
c2VydEltYWdlQ29tbWFuZC5iaW5kKGV4ZWNJbnNlcnRJbWFnZUNvbW1hbmQsIGltZ1NyYyksIGNv
bW1hbmRDb3VudCAqIGNvbW1hbmREZWxheSk7CiAgICAgICAgIGNvbW1hbmRDb3VudCsrOwogICAg
IH0KICAgICBlbHNlIHsKQEAgLTYwNSw3ICs2MDUsNyBAQCBmdW5jdGlvbiBleGVjSW5zZXJ0TGlu
ZUJyZWFrQ29tbWFuZCgpIHsKIH0KIGZ1bmN0aW9uIGluc2VydExpbmVCcmVha0NvbW1hbmQoKSB7
CiAgICAgaWYgKGNvbW1hbmREZWxheSA+IDApIHsKLSAgICAgICAgd2luZG93LnNldFRpbWVvdXQo
ZXhlY0luc2VydExpbmVCcmVha0NvbW1hbmQsIGNvbW1hbmRDb3VudCAqIGNvbW1hbmREZWxheSk7
CisgICAgICAgIHF1ZXVlQ29tbWFuZChleGVjSW5zZXJ0TGluZUJyZWFrQ29tbWFuZCwgY29tbWFu
ZENvdW50ICogY29tbWFuZERlbGF5KTsKICAgICAgICAgY29tbWFuZENvdW50Kys7CiAgICAgfQog
ICAgIGVsc2UgewpAQCAtNjIxLDcgKzYyMSw3IEBAIGZ1bmN0aW9uIGV4ZWNJbnNlcnRQYXJhZ3Jh
cGhDb21tYW5kKCkgewogfQogZnVuY3Rpb24gaW5zZXJ0UGFyYWdyYXBoQ29tbWFuZCgpIHsKICAg
ICBpZiAoY29tbWFuZERlbGF5ID4gMCkgewotICAgICAgICB3aW5kb3cuc2V0VGltZW91dChleGVj
SW5zZXJ0UGFyYWdyYXBoQ29tbWFuZCwgY29tbWFuZENvdW50ICogY29tbWFuZERlbGF5KTsKKyAg
ICAgICAgcXVldWVDb21tYW5kKGV4ZWNJbnNlcnRQYXJhZ3JhcGhDb21tYW5kLCBjb21tYW5kQ291
bnQgKiBjb21tYW5kRGVsYXkpOwogICAgICAgICBjb21tYW5kQ291bnQrKzsKICAgICB9CiAgICAg
ZWxzZSB7CkBAIC02MzcsNyArNjM3LDcgQEAgZnVuY3Rpb24gZXhlY0luc2VydE5ld2xpbmVJblF1
b3RlZENvbnRlbgogfQogZnVuY3Rpb24gaW5zZXJ0TmV3bGluZUluUXVvdGVkQ29udGVudENvbW1h
bmQoKSB7CiAgICAgaWYgKGNvbW1hbmREZWxheSA+IDApIHsKLSAgICAgICAgd2luZG93LnNldFRp
bWVvdXQoZXhlY0luc2VydE5ld2xpbmVJblF1b3RlZENvbnRlbnRDb21tYW5kLCBjb21tYW5kQ291
bnQgKiBjb21tYW5kRGVsYXkpOworICAgICAgICBxdWV1ZUNvbW1hbmQoZXhlY0luc2VydE5ld2xp
bmVJblF1b3RlZENvbnRlbnRDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkpOwog
ICAgICAgICBjb21tYW5kQ291bnQrKzsKICAgICB9CiAgICAgZWxzZSB7CkBAIC02NTUsNyArNjU1
LDcgQEAgZnVuY3Rpb24gZXhlY1R5cGVDaGFyYWN0ZXJDb21tYW5kKGMpIHsKIH0KIGZ1bmN0aW9u
IHR5cGVDaGFyYWN0ZXJDb21tYW5kKGMpIHsKICAgICBpZiAoY29tbWFuZERlbGF5ID4gMCkgewot
ICAgICAgICB3aW5kb3cuc2V0VGltZW91dChleGVjVHlwZUNoYXJhY3RlckNvbW1hbmQsIGNvbW1h
bmRDb3VudCAqIGNvbW1hbmREZWxheSwgYyk7CisgICAgICAgIHF1ZXVlQ29tbWFuZChleGVjVHlw
ZUNoYXJhY3RlckNvbW1hbmQuYmluZChleGVjVHlwZUNoYXJhY3RlckNvbW1hbmQsIGMpLCBjb21t
YW5kQ291bnQgKiBjb21tYW5kRGVsYXkpOwogICAgICAgICBjb21tYW5kQ291bnQrKzsKICAgICB9
CiAgICAgZWxzZSB7CkBAIC02NzAsNyArNjcwLDcgQEAgZnVuY3Rpb24gZXhlY1NlbGVjdEFsbENv
bW1hbmQoKSB7CiB9CiBmdW5jdGlvbiBzZWxlY3RBbGxDb21tYW5kKCkgewogICAgIGlmIChjb21t
YW5kRGVsYXkgPiAwKSB7Ci0gICAgICAgIHdpbmRvdy5zZXRUaW1lb3V0KGV4ZWNTZWxlY3RBbGxD
b21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkpOworICAgICAgICBxdWV1ZUNvbW1h
bmQoZXhlY1NlbGVjdEFsbENvbW1hbmQsIGNvbW1hbmRDb3VudCAqIGNvbW1hbmREZWxheSk7CiAg
ICAgICAgIGNvbW1hbmRDb3VudCsrOwogICAgIH0KICAgICBlbHNlIHsKQEAgLTY4Niw3ICs2ODYs
NyBAQCBmdW5jdGlvbiBleGVjU3RyaWtldGhyb3VnaENvbW1hbmQoKSB7CiB9CiBmdW5jdGlvbiBz
dHJpa2V0aHJvdWdoQ29tbWFuZCgpIHsKICAgICBpZiAoY29tbWFuZERlbGF5ID4gMCkgewotICAg
ICAgICB3aW5kb3cuc2V0VGltZW91dChleGVjU3RyaWtldGhyb3VnaENvbW1hbmQsIGNvbW1hbmRD
b3VudCAqIGNvbW1hbmREZWxheSk7CisgICAgICAgIHF1ZXVlQ29tbWFuZChleGVjU3RyaWtldGhy
b3VnaENvbW1hbmQsIGNvbW1hbmRDb3VudCAqIGNvbW1hbmREZWxheSk7CiAgICAgICAgIGNvbW1h
bmRDb3VudCsrOwogICAgIH0KICAgICBlbHNlIHsKQEAgLTcwMiw3ICs3MDIsNyBAQCBmdW5jdGlv
biBleGVjVW5kb0NvbW1hbmQoKSB7CiB9CiBmdW5jdGlvbiB1bmRvQ29tbWFuZCgpIHsKICAgICBp
ZiAoY29tbWFuZERlbGF5ID4gMCkgewotICAgICAgICB3aW5kb3cuc2V0VGltZW91dChleGVjVW5k
b0NvbW1hbmQsIGNvbW1hbmRDb3VudCAqIGNvbW1hbmREZWxheSk7CisgICAgICAgIHF1ZXVlQ29t
bWFuZChleGVjVW5kb0NvbW1hbmQsIGNvbW1hbmRDb3VudCAqIGNvbW1hbmREZWxheSk7CiAgICAg
ICAgIGNvbW1hbmRDb3VudCsrOwogICAgIH0KICAgICBlbHNlIHsKQEAgLTcxOCw3ICs3MTgsNyBA
QCBmdW5jdGlvbiBleGVjUmVkb0NvbW1hbmQoKSB7CiB9CiBmdW5jdGlvbiByZWRvQ29tbWFuZCgp
IHsKICAgICBpZiAoY29tbWFuZERlbGF5ID4gMCkgewotICAgICAgICB3aW5kb3cuc2V0VGltZW91
dChleGVjUmVkb0NvbW1hbmQsIGNvbW1hbmRDb3VudCAqIGNvbW1hbmREZWxheSk7CisgICAgICAg
IHF1ZXVlQ29tbWFuZChleGVjUmVkb0NvbW1hbmQsIGNvbW1hbmRDb3VudCAqIGNvbW1hbmREZWxh
eSk7CiAgICAgICAgIGNvbW1hbmRDb3VudCsrOwogICAgIH0KICAgICBlbHNlIHsKQEAgLTczMyw3
ICs3MzMsNyBAQCBmdW5jdGlvbiBleGVjQ2hhbmdlUm9vdFNpemUoKSB7CiB9CiBmdW5jdGlvbiBj
aGFuZ2VSb290U2l6ZSgpIHsKICAgICBpZiAoY29tbWFuZERlbGF5ID4gMCkgewotICAgICAgICB3
aW5kb3cuc2V0VGltZW91dChleGVjQ2hhbmdlUm9vdFNpemUsIGNvbW1hbmRDb3VudCAqIGNvbW1h
bmREZWxheSk7CisgICAgICAgIHF1ZXVlQ29tbWFuZChleGVjQ2hhbmdlUm9vdFNpemUsIGNvbW1h
bmRDb3VudCAqIGNvbW1hbmREZWxheSk7CiAgICAgICAgIGNvbW1hbmRDb3VudCsrOwogICAgIH0K
ICAgICBlbHNlIHsKQEAgLTc0OSw3ICs3NDksNyBAQCBmdW5jdGlvbiBleGVjQ3V0Q29tbWFuZCgp
IHsKIH0KIGZ1bmN0aW9uIGN1dENvbW1hbmQoKSB7CiAgICAgaWYgKGNvbW1hbmREZWxheSA+IDAp
IHsKLSAgICAgICAgd2luZG93LnNldFRpbWVvdXQoZXhlY0N1dENvbW1hbmQsIGNvbW1hbmRDb3Vu
dCAqIGNvbW1hbmREZWxheSk7CisgICAgICAgIHF1ZXVlQ29tbWFuZChleGVjQ3V0Q29tbWFuZCwg
Y29tbWFuZENvdW50ICogY29tbWFuZERlbGF5KTsKICAgICAgICAgY29tbWFuZENvdW50Kys7CiAg
ICAgfQogICAgIGVsc2UgewpAQCAtNzY1LDcgKzc2NSw3IEBAIGZ1bmN0aW9uIGV4ZWNDb3B5Q29t
bWFuZCgpIHsKIH0KIGZ1bmN0aW9uIGNvcHlDb21tYW5kKCkgewogICAgIGlmIChjb21tYW5kRGVs
YXkgPiAwKSB7Ci0gICAgICAgIHdpbmRvdy5zZXRUaW1lb3V0KGV4ZWNDb3B5Q29tbWFuZCwgY29t
bWFuZENvdW50ICogY29tbWFuZERlbGF5KTsKKyAgICAgICAgcXVldWVDb21tYW5kKGV4ZWNDb3B5
Q29tbWFuZCwgY29tbWFuZENvdW50ICogY29tbWFuZERlbGF5KTsKICAgICAgICAgY29tbWFuZENv
dW50Kys7CiAgICAgfQogICAgIGVsc2UgewpAQCAtNzgxLDcgKzc4MSw3IEBAIGZ1bmN0aW9uIGV4
ZWNQYXN0ZUNvbW1hbmQoKSB7CiB9CiBmdW5jdGlvbiBwYXN0ZUNvbW1hbmQoKSB7CiAgICAgaWYg
KGNvbW1hbmREZWxheSA+IDApIHsKLSAgICAgICAgd2luZG93LnNldFRpbWVvdXQoZXhlY1Bhc3Rl
Q29tbWFuZCwgY29tbWFuZENvdW50ICogY29tbWFuZERlbGF5KTsKKyAgICAgICAgcXVldWVDb21t
YW5kKGV4ZWNQYXN0ZUNvbW1hbmQsIGNvbW1hbmRDb3VudCAqIGNvbW1hbmREZWxheSk7CiAgICAg
ICAgIGNvbW1hbmRDb3VudCsrOwogICAgIH0KICAgICBlbHNlIHsKQEAgLTc5Nyw3ICs3OTcsNyBA
QCBmdW5jdGlvbiBleGVjQ3JlYXRlTGlua0NvbW1hbmQodXJsKSB7CiB9CiBmdW5jdGlvbiBjcmVh
dGVMaW5rQ29tbWFuZCh1cmwpIHsKICAgICBpZiAoY29tbWFuZERlbGF5ID4gMCkgewotICAgICAg
ICB3aW5kb3cuc2V0VGltZW91dChleGVjQ3JlYXRlTGlua0NvbW1hbmQsIGNvbW1hbmRDb3VudCAq
IGNvbW1hbmREZWxheSwgdXJsKTsKKyAgICAgICAgcXVldWVDb21tYW5kKGV4ZWNDcmVhdGVMaW5r
Q29tbWFuZC5iaW5kKGV4ZWNDcmVhdGVMaW5rQ29tbWFuZCwgdXJsKSwgY29tbWFuZENvdW50ICog
Y29tbWFuZERlbGF5KTsKICAgICAgICAgY29tbWFuZENvdW50Kys7CiAgICAgfSBlbHNlCiAgICAg
ICAgIGV4ZWNDcmVhdGVMaW5rQ29tbWFuZCh1cmwpOwpAQCAtODExLDcgKzgxMSw3IEBAIGZ1bmN0
aW9uIGV4ZWNVbmxpbmtDb21tYW5kKCkgewogfQogZnVuY3Rpb24gdW5saW5rQ29tbWFuZCgpIHsK
ICAgICBpZiAoY29tbWFuZERlbGF5ID4gMCkgewotICAgICAgICB3aW5kb3cuc2V0VGltZW91dChl
eGVjVW5saW5rQ29tbWFuZCwgY29tbWFuZENvdW50ICogY29tbWFuZERlbGF5KTsKKyAgICAgICAg
cXVldWVDb21tYW5kKGV4ZWNVbmxpbmtDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVs
YXkpOwogICAgICAgICBjb21tYW5kQ291bnQrKzsKICAgICB9IGVsc2UKICAgICAgICAgZXhlY1Vu
bGlua0NvbW1hbmQoKTsKQEAgLTgyNSw3ICs4MjUsNyBAQCBmdW5jdGlvbiBleGVjUGFzdGVBbmRN
YXRjaFN0eWxlQ29tbWFuZCgpCiB9CiBmdW5jdGlvbiBwYXN0ZUFuZE1hdGNoU3R5bGVDb21tYW5k
KCkgewogICAgIGlmIChjb21tYW5kRGVsYXkgPiAwKSB7Ci0gICAgICAgIHdpbmRvdy5zZXRUaW1l
b3V0KGV4ZWNQYXN0ZUFuZE1hdGNoU3R5bGVDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5k
RGVsYXkpOworICAgICAgICBxdWV1ZUNvbW1hbmQoZXhlY1Bhc3RlQW5kTWF0Y2hTdHlsZUNvbW1h
bmQsIGNvbW1hbmRDb3VudCAqIGNvbW1hbmREZWxheSk7CiAgICAgICAgIGNvbW1hbmRDb3VudCsr
OwogICAgIH0KICAgICBlbHNlIHsKQEAgLTg0MSw3ICs4NDEsNyBAQCBmdW5jdGlvbiBleGVjRGVs
ZXRlQ29tbWFuZCgpIHsKIH0KIGZ1bmN0aW9uIGRlbGV0ZUNvbW1hbmQoKSB7CiAgICAgaWYgKGNv
bW1hbmREZWxheSA+IDApIHsKLSAgICAgICAgd2luZG93LnNldFRpbWVvdXQoZXhlY0RlbGV0ZUNv
bW1hbmQsIGNvbW1hbmRDb3VudCAqIGNvbW1hbmREZWxheSk7CisgICAgICAgIHF1ZXVlQ29tbWFu
ZChleGVjRGVsZXRlQ29tbWFuZCwgY29tbWFuZENvdW50ICogY29tbWFuZERlbGF5KTsKICAgICAg
ICAgY29tbWFuZENvdW50Kys7CiAgICAgfQogICAgIGVsc2UgewpAQCAtODU3LDcgKzg1Nyw3IEBA
IGZ1bmN0aW9uIGV4ZWNGb3J3YXJkRGVsZXRlQ29tbWFuZCgpIHsKIH0KIGZ1bmN0aW9uIGZvcndh
cmREZWxldGVDb21tYW5kKCkgewogICAgIGlmIChjb21tYW5kRGVsYXkgPiAwKSB7Ci0gICAgICAg
IHdpbmRvdy5zZXRUaW1lb3V0KGV4ZWNGb3J3YXJkRGVsZXRlQ29tbWFuZCwgY29tbWFuZENvdW50
ICogY29tbWFuZERlbGF5KTsKKyAgICAgICAgcXVldWVDb21tYW5kKGV4ZWNGb3J3YXJkRGVsZXRl
Q29tbWFuZCwgY29tbWFuZENvdW50ICogY29tbWFuZERlbGF5KTsKICAgICAgICAgY29tbWFuZENv
dW50Kys7CiAgICAgfQogICAgIGVsc2UgewpAQCAtODY3LDYgKzg2NywzMiBAQCBmdW5jdGlvbiBm
b3J3YXJkRGVsZXRlQ29tbWFuZCgpIHsKIAogLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tCiAKKyhmdW5jdGlvbiAoKSB7CisgICAgdmFyIHF1ZXVlID0gW107
CisgICAgdmFyIGkgPSAwOworICAgIHZhciB0aW1lcjsKKworICAgIGZ1bmN0aW9uIHF1ZXVlQ29t
bWFuZChjYWxsYmFjaykgeworICAgICAgICBxdWV1ZS5wdXNoKGNhbGxiYWNrKTsKKyAgICAgICAg
aWYgKCF0aW1lcikgeworICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAg
ICAgICAgICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOworICAgICAgICAgICAgdGltZXIg
PSBzZXRUaW1lb3V0KHJ1bkNvbW1hbmQsIGNvbW1hbmREZWxheSk7CisgICAgICAgIH0KKyAgICB9
CisKKyAgICBmdW5jdGlvbiBydW5Db21tYW5kKCkgeworICAgICAgICBxdWV1ZVtpXSgpOworICAg
ICAgICBpKys7CisgICAgICAgIGlmIChpIDwgcXVldWUubGVuZ3RoKQorICAgICAgICAgICAgc2V0
VGltZW91dChydW5Db21tYW5kLCBjb21tYW5kRGVsYXkpOworICAgICAgICBlbHNlIGlmICh3aW5k
b3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgIHRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOworICAg
IH0KKyAgICAKKyAgICB3aW5kb3cucXVldWVDb21tYW5kID0gcXVldWVDb21tYW5kOworfSkoKTsK
KwogZnVuY3Rpb24gcnVuRWRpdGluZ1Rlc3QoKSB7CiAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVy
KQogICAgICAgICB0ZXN0UnVubmVyLmR1bXBFZGl0aW5nQ2FsbGJhY2tzKCk7CkBAIC05MTQsNyAr
OTQwLDcgQEAgZnVuY3Rpb24gZXhlY0JhY2tDb2xvckNvbW1hbmQoKSB7CiB9CiBmdW5jdGlvbiBi
YWNrQ29sb3JDb21tYW5kKCkgewogICAgIGlmIChjb21tYW5kRGVsYXkgPiAwKSB7Ci0gICAgICAg
IHdpbmRvdy5zZXRUaW1lb3V0KGV4ZWNCYWNrQ29sb3JDb21tYW5kLCBjb21tYW5kQ291bnQgKiBj
b21tYW5kRGVsYXkpOworICAgICAgICBxdWV1ZUNvbW1hbmQoZXhlY0JhY2tDb2xvckNvbW1hbmQs
IGNvbW1hbmRDb3VudCAqIGNvbW1hbmREZWxheSk7CiAgICAgICAgIGNvbW1hbmRDb3VudCsrOwog
ICAgIH0KICAgICBlbHNlIHsKQEAgLTkyOSw3ICs5NTUsNyBAQCBmdW5jdGlvbiBleGVjRm9yZUNv
bG9yQ29tbWFuZChjb2xvcikgewogfQogZnVuY3Rpb24gZm9yZUNvbG9yQ29tbWFuZChjb2xvcikg
ewogICAgIGlmIChjb21tYW5kRGVsYXkgPiAwKSB7Ci0gICAgICAgIHdpbmRvdy5zZXRUaW1lb3V0
KGV4ZWNGb3JlQ29sb3JDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXksIGNvbG9y
KTsKKyAgICAgICAgcXVldWVDb21tYW5kKGV4ZWNGb3JlQ29sb3JDb21tYW5kLmJpbmQoZXhlY0Zv
cmVDb2xvckNvbW1hbmQsIGNvbG9yKSwgY29tbWFuZENvdW50ICogY29tbWFuZERlbGF5KTsKICAg
ICAgICAgY29tbWFuZENvdW50Kys7CiAgICAgfSBlbHNlCiAgICAgICAgIGV4ZWNGb3JlQ29sb3JD
b21tYW5kKGNvbG9yKTsKQEAgLTk0NCw3ICs5NzAsNyBAQCBmdW5jdGlvbiBydW5Db21tYW5kKGNv
bW1hbmQsIGFyZzEsIGFyZzIpCiAKIGZ1bmN0aW9uIGV4ZWN1dGVDb21tYW5kKGNvbW1hbmQsYXJn
MSxhcmcyKSB7CiAgICAgaWYgKGNvbW1hbmREZWxheSA+IDApIHsKLSAgICAgICAgd2luZG93LnNl
dFRpbWVvdXQocnVuQ29tbWFuZCwgY29tbWFuZENvdW50ICogY29tbWFuZERlbGF5KTsKKyAgICAg
ICAgcXVldWVDb21tYW5kKHJ1bkNvbW1hbmQsIGNvbW1hbmRDb3VudCAqIGNvbW1hbmREZWxheSk7
CiAgICAgICAgIGNvbW1hbmRDb3VudCsrOwogICAgIH0KICAgICBlbHNlIHsKSW5kZXg6IExheW91
dFRlc3RzL3BsYXRmb3JtL21hYy9lZGl0aW5nL3NlbGVjdGlvbi9tb3ZlLWJ5LWNoYXJhY3Rlci02
LWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvZWRp
dGluZy9zZWxlY3Rpb24vbW92ZS1ieS1jaGFyYWN0ZXItNi1leHBlY3RlZC50eHQJKHJldmlzaW9u
IDEzNzc4MikKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9lZGl0aW5nL3NlbGVjdGlvbi9t
b3ZlLWJ5LWNoYXJhY3Rlci02LWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMSw2ICsx
LDI4IEBACiBFRElUSU5HIERFTEVHQVRFOiBzaG91bGRCZWdpbkVkaXRpbmdJbkRPTVJhbmdlOnJh
bmdlIGZyb20gMCBvZiBESVYgPiBCT0RZID4gSFRNTCA+ICNkb2N1bWVudCB0byAzIG9mIERJViA+
IEJPRFkgPiBIVE1MID4gI2RvY3VtZW50CiBFRElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlkQmVn
aW5FZGl0aW5nOldlYlZpZXdEaWRCZWdpbkVkaXRpbmdOb3RpZmljYXRpb24KIEVESVRJTkcgREVM
RUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb246V2ViVmlld0RpZENoYW5nZVNlbGVjdGlv
bk5vdGlmaWNhdGlvbgorRURJVElORyBERUxFR0FURTogd2ViVmlld0RpZENoYW5nZVNlbGVjdGlv
bjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZpY2F0aW9uCitFRElUSU5HIERFTEVHQVRF
OiB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uOldlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb25Ob3Rp
ZmljYXRpb24KK0VESVRJTkcgREVMRUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb246V2Vi
Vmlld0RpZENoYW5nZVNlbGVjdGlvbk5vdGlmaWNhdGlvbgorRURJVElORyBERUxFR0FURTogd2Vi
Vmlld0RpZENoYW5nZVNlbGVjdGlvbjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZpY2F0
aW9uCitFRElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uOldlYlZpZXdE
aWRDaGFuZ2VTZWxlY3Rpb25Ob3RpZmljYXRpb24KK0VESVRJTkcgREVMRUdBVEU6IHdlYlZpZXdE
aWRDaGFuZ2VTZWxlY3Rpb246V2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbk5vdGlmaWNhdGlvbgor
RURJVElORyBERUxFR0FURTogd2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbjpXZWJWaWV3RGlkQ2hh
bmdlU2VsZWN0aW9uTm90aWZpY2F0aW9uCitFRElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hh
bmdlU2VsZWN0aW9uOldlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb25Ob3RpZmljYXRpb24KK0VESVRJ
TkcgREVMRUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb246V2ViVmlld0RpZENoYW5nZVNl
bGVjdGlvbk5vdGlmaWNhdGlvbgorRURJVElORyBERUxFR0FURTogd2ViVmlld0RpZENoYW5nZVNl
bGVjdGlvbjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZpY2F0aW9uCitFRElUSU5HIERF
TEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uOldlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rp
b25Ob3RpZmljYXRpb24KK0VESVRJTkcgREVMRUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rp
b246V2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbk5vdGlmaWNhdGlvbgorRURJVElORyBERUxFR0FU
RTogd2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uTm90
aWZpY2F0aW9uCitFRElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uOldl
YlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb25Ob3RpZmljYXRpb24KK0VESVRJTkcgREVMRUdBVEU6IHdl
YlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb246V2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbk5vdGlmaWNh
dGlvbgorRURJVElORyBERUxFR0FURTogd2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbjpXZWJWaWV3
RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZpY2F0aW9uCitFRElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3
RGlkQ2hhbmdlU2VsZWN0aW9uOldlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb25Ob3RpZmljYXRpb24K
K0VESVRJTkcgREVMRUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb246V2ViVmlld0RpZENo
YW5nZVNlbGVjdGlvbk5vdGlmaWNhdGlvbgorRURJVElORyBERUxFR0FURTogd2ViVmlld0RpZENo
YW5nZVNlbGVjdGlvbjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZpY2F0aW9uCitFRElU
SU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uOldlYlZpZXdEaWRDaGFuZ2VT
ZWxlY3Rpb25Ob3RpZmljYXRpb24KK0VESVRJTkcgREVMRUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2VT
ZWxlY3Rpb246V2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbk5vdGlmaWNhdGlvbgorRURJVElORyBE
RUxFR0FURTogd2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0
aW9uTm90aWZpY2F0aW9uCiBsYXllciBhdCAoMCwwKSBzaXplIDgwMHg2MDAKICAgUmVuZGVyVmll
dyBhdCAoMCwwKSBzaXplIDgwMHg2MDAKIGxheWVyIGF0ICgwLDApIHNpemUgODAweDYwMAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>179547</attachid>
            <date>2012-12-14 15:46:10 -0800</date>
            <delta_ts>2012-12-17 15:49:04 -0800</delta_ts>
            <desc>Reveted unrelated WebCore change</desc>
            <filename>bug-104951-20121214154329.patch</filename>
            <type>text/plain</type>
            <size>27225</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDEzNzc4MikKKysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29y
a2luZyBjb3B5KQpAQCAtMSwzICsxLDc2IEBACisyMDEyLTEyLTE0ICBSeW9zdWtlIE5pd2EgIDxy
bml3YUB3ZWJraXQub3JnPgorCisgICAgICAgIExheW91dCBUZXN0IGVkaXRpbmcvc2VsZWN0aW9u
L21vdmUtYnktY2hhcmFjdGVyLWNyYXNoLXRlc3QtdGV4dGFyZWEuaHRtbCBpcyBmbGFreQorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA0OTUxCisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhlIHByb2JsZW0g
d2FzIHRoYXQgZWRpdGluZy9zZWxlY3Rpb24vbW92ZS1ieS1jaGFyYWN0ZXItNi5odG1sIHdhcyBy
dW5uaW5nIGVkaXRpbmcgY29tbWFuZHMKKyAgICAgICAgaW4gYSB0aW1lciB3aXRob3V0IG1ha2lu
ZyB0aGUgdGVzdCBydW5uZXIgd2FpdC4gRml4ZWQgdGhlIGJ1ZyBieSBjYWxsaW5nIHdhaXRVbnRp
bERvbmUgYW5kCisgICAgICAgIG5vdGlmeURvbmUgYXQgYXBwcm9wcmlhdGUgcGxhY2VzIGluIGVk
aXRpbmcuanMuCisKKyAgICAgICAgV2UgZG9uJ3QgbmVlZCB0byByZWJhc2VsaW5lIG90aGVyIHRl
c3RzIHNpbmNlIHRoaXMgaXMgdGhlIG9ubHkgdGVzdCB0aGF0IHVzZXMgY29tbWFuZERlbGF5Lgor
CisgICAgICAgICogZWRpdGluZy9lZGl0aW5nLmpzOgorICAgICAgICAoc2V0U2VsZWN0aW9uQ29t
bWFuZCk6CisgICAgICAgICh0cmFuc3Bvc2VDaGFyYWN0ZXJzQ29tbWFuZCk6CisgICAgICAgICht
b3ZlU2VsZWN0aW9uTGVmdEJ5Q2hhcmFjdGVyQ29tbWFuZCk6CisgICAgICAgIChtb3ZlU2VsZWN0
aW9uUmlnaHRCeUNoYXJhY3RlckNvbW1hbmQpOgorICAgICAgICAoZXh0ZW5kU2VsZWN0aW9uTGVm
dEJ5Q2hhcmFjdGVyQ29tbWFuZCk6CisgICAgICAgIChleHRlbmRTZWxlY3Rpb25SaWdodEJ5Q2hh
cmFjdGVyQ29tbWFuZCk6CisgICAgICAgIChtb3ZlU2VsZWN0aW9uRm9yd2FyZEJ5Q2hhcmFjdGVy
Q29tbWFuZCk6CisgICAgICAgIChleHRlbmRTZWxlY3Rpb25Gb3J3YXJkQnlDaGFyYWN0ZXJDb21t
YW5kKToKKyAgICAgICAgKG1vdmVTZWxlY3Rpb25Gb3J3YXJkQnlXb3JkQ29tbWFuZCk6CisgICAg
ICAgIChleHRlbmRTZWxlY3Rpb25Gb3J3YXJkQnlXb3JkQ29tbWFuZCk6CisgICAgICAgIChtb3Zl
U2VsZWN0aW9uRm9yd2FyZEJ5U2VudGVuY2VDb21tYW5kKToKKyAgICAgICAgKGV4dGVuZFNlbGVj
dGlvbkZvcndhcmRCeVNlbnRlbmNlQ29tbWFuZCk6CisgICAgICAgIChtb3ZlU2VsZWN0aW9uRm9y
d2FyZEJ5TGluZUNvbW1hbmQpOgorICAgICAgICAoZXh0ZW5kU2VsZWN0aW9uRm9yd2FyZEJ5TGlu
ZUNvbW1hbmQpOgorICAgICAgICAobW92ZVNlbGVjdGlvbkZvcndhcmRCeUxpbmVCb3VuZGFyeUNv
bW1hbmQpOgorICAgICAgICAoZXh0ZW5kU2VsZWN0aW9uRm9yd2FyZEJ5TGluZUJvdW5kYXJ5Q29t
bWFuZCk6CisgICAgICAgIChtb3ZlU2VsZWN0aW9uQmFja3dhcmRCeUNoYXJhY3RlckNvbW1hbmQp
OgorICAgICAgICAoZXh0ZW5kU2VsZWN0aW9uQmFja3dhcmRCeUNoYXJhY3RlckNvbW1hbmQpOgor
ICAgICAgICAobW92ZVNlbGVjdGlvbkJhY2t3YXJkQnlXb3JkQ29tbWFuZCk6CisgICAgICAgIChl
eHRlbmRTZWxlY3Rpb25CYWNrd2FyZEJ5V29yZENvbW1hbmQpOgorICAgICAgICAobW92ZVNlbGVj
dGlvbkJhY2t3YXJkQnlTZW50ZW5jZUNvbW1hbmQpOgorICAgICAgICAoZXh0ZW5kU2VsZWN0aW9u
QmFja3dhcmRCeVNlbnRlbmNlQ29tbWFuZCk6CisgICAgICAgIChtb3ZlU2VsZWN0aW9uQmFja3dh
cmRCeUxpbmVDb21tYW5kKToKKyAgICAgICAgKGV4dGVuZFNlbGVjdGlvbkJhY2t3YXJkQnlMaW5l
Q29tbWFuZCk6CisgICAgICAgIChleHRlbmRTZWxlY3Rpb25CYWNrd2FyZEJ5TGluZUJvdW5kYXJ5
Q29tbWFuZCk6CisgICAgICAgIChtb3ZlU2VsZWN0aW9uQmFja3dhcmRCeUxpbmVCb3VuZGFyeUNv
bW1hbmQpOgorICAgICAgICAoYm9sZENvbW1hbmQpOgorICAgICAgICAodW5kZXJsaW5lQ29tbWFu
ZCk6CisgICAgICAgIChmb250TmFtZUNvbW1hbmQpOgorICAgICAgICAoZm9udFNpemVDb21tYW5k
KToKKyAgICAgICAgKGZvbnRTaXplRGVsdGFDb21tYW5kKToKKyAgICAgICAgKGl0YWxpY0NvbW1h
bmQpOgorICAgICAgICAoanVzdGlmeUNlbnRlckNvbW1hbmQpOgorICAgICAgICAoanVzdGlmeUxl
ZnRDb21tYW5kKToKKyAgICAgICAgKGp1c3RpZnlSaWdodENvbW1hbmQpOgorICAgICAgICAoaW5z
ZXJ0SFRNTENvbW1hbmQpOgorICAgICAgICAoaW5zZXJ0SW1hZ2VDb21tYW5kKToKKyAgICAgICAg
KGluc2VydExpbmVCcmVha0NvbW1hbmQpOgorICAgICAgICAoaW5zZXJ0UGFyYWdyYXBoQ29tbWFu
ZCk6CisgICAgICAgIChpbnNlcnROZXdsaW5lSW5RdW90ZWRDb250ZW50Q29tbWFuZCk6CisgICAg
ICAgICh0eXBlQ2hhcmFjdGVyQ29tbWFuZCk6CisgICAgICAgIChzZWxlY3RBbGxDb21tYW5kKToK
KyAgICAgICAgKHN0cmlrZXRocm91Z2hDb21tYW5kKToKKyAgICAgICAgKHVuZG9Db21tYW5kKToK
KyAgICAgICAgKHJlZG9Db21tYW5kKToKKyAgICAgICAgKGNoYW5nZVJvb3RTaXplKToKKyAgICAg
ICAgKGN1dENvbW1hbmQpOgorICAgICAgICAoY29weUNvbW1hbmQpOgorICAgICAgICAocGFzdGVD
b21tYW5kKToKKyAgICAgICAgKGNyZWF0ZUxpbmtDb21tYW5kKToKKyAgICAgICAgKHVubGlua0Nv
bW1hbmQpOgorICAgICAgICAocGFzdGVBbmRNYXRjaFN0eWxlQ29tbWFuZCk6CisgICAgICAgIChk
ZWxldGVDb21tYW5kKToKKyAgICAgICAgKGZvcndhcmREZWxldGVDb21tYW5kKToKKyAgICAgICAg
KGJhY2tDb2xvckNvbW1hbmQpOgorICAgICAgICAoZm9yZUNvbG9yQ29tbWFuZCk6CisgICAgICAg
IChleGVjdXRlQ29tbWFuZCk6CisgICAgICAgICogcGxhdGZvcm0vbWFjL2VkaXRpbmcvc2VsZWN0
aW9uL21vdmUtYnktY2hhcmFjdGVyLTYtZXhwZWN0ZWQudHh0OiBSZWJhc2VsaW5lZC4KKwogMjAx
Mi0xMi0xNCAgQmV0aCBEYWtpbiAgPGJkYWtpbkBhcHBsZS5jb20+CiAKICAgICAgICAgVXBkYXRp
bmcgdGhlc2UgcmVzdWx0cyBhZ2FpbiBzaW5jZSB0aGlzIGZhaWxpbmcgdGVzdCBoYXMgc3RhcnRl
ZCBmYWlsaW5nIGluIGEgbmV3IApJbmRleDogTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0aW5nLmpz
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGluZy5qcwkocmV2aXNpb24g
MTM3NzgyKQorKysgTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0aW5nLmpzCSh3b3JraW5nIGNvcHkp
CkBAIC0xNiw3ICsxNiw3IEBAIGZ1bmN0aW9uIGV4ZWNTZXRTZWxlY3Rpb25Db21tYW5kKHNuLCBz
bywKIC8vIEFyZ3MgYXJlIHN0YXJ0Tm9kZSwgc3RhcnRPZmZzZXQsIGVuZE5vZGUsIGVuZE9mZnNl
dAogZnVuY3Rpb24gc2V0U2VsZWN0aW9uQ29tbWFuZChzbiwgc28sIGVuLCBlbykgewogICAgIGlm
IChjb21tYW5kRGVsYXkgPiAwKSB7Ci0gICAgICAgIHdpbmRvdy5zZXRUaW1lb3V0KGV4ZWNTZXRT
ZWxlY3Rpb25Db21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXksIHNuLCBzbywgZW4s
IGVvKTsKKyAgICAgICAgcXVldWVDb21tYW5kKGV4ZWNTZXRTZWxlY3Rpb25Db21tYW5kLmJpbmQo
ZXhlY1NldFNlbGVjdGlvbkNvbW1hbmQsIHNuLCBzbywgZW4sIGVvKSwgY29tbWFuZENvdW50ICog
Y29tbWFuZERlbGF5KTsKICAgICAgICAgY29tbWFuZENvdW50Kys7CiAgICAgfSBlbHNlCiAgICAg
ICAgIGV4ZWNTZXRTZWxlY3Rpb25Db21tYW5kKHNuLCBzbywgZW4sIGVvKTsKQEAgLTI5LDcgKzI5
LDcgQEAgZnVuY3Rpb24gZXhlY1RyYW5zcG9zZUNoYXJhY3RlcnNDb21tYW5kKAogfQogZnVuY3Rp
b24gdHJhbnNwb3NlQ2hhcmFjdGVyc0NvbW1hbmQoKSB7CiAgICAgaWYgKGNvbW1hbmREZWxheSA+
IDApIHsKLSAgICAgICAgd2luZG93LnNldFRpbWVvdXQoZXhlY1RyYW5zcG9zZUNoYXJhY3RlcnND
b21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkpOworICAgICAgICBxdWV1ZUNvbW1h
bmQoZXhlY1RyYW5zcG9zZUNoYXJhY3RlcnNDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5k
RGVsYXkpOwogICAgICAgICBjb21tYW5kQ291bnQrKzsKICAgICB9CiAgICAgZWxzZSB7CkBAIC00
NCw3ICs0NCw3IEBAIGZ1bmN0aW9uIGV4ZWNNb3ZlU2VsZWN0aW9uTGVmdEJ5Q2hhcmFjdGUKIH0K
IGZ1bmN0aW9uIG1vdmVTZWxlY3Rpb25MZWZ0QnlDaGFyYWN0ZXJDb21tYW5kKCkgewogICAgIGlm
IChjb21tYW5kRGVsYXkgPiAwKSB7Ci0gICAgICAgIHdpbmRvdy5zZXRUaW1lb3V0KGV4ZWNNb3Zl
U2VsZWN0aW9uTGVmdEJ5Q2hhcmFjdGVyQ29tbWFuZCwgY29tbWFuZENvdW50ICogY29tbWFuZERl
bGF5KTsKKyAgICAgICAgcXVldWVDb21tYW5kKGV4ZWNNb3ZlU2VsZWN0aW9uTGVmdEJ5Q2hhcmFj
dGVyQ29tbWFuZCwgY29tbWFuZENvdW50ICogY29tbWFuZERlbGF5KTsKICAgICAgICAgY29tbWFu
ZENvdW50Kys7CiAgICAgfQogICAgIGVsc2UgewpAQCAtNTksNyArNTksNyBAQCBmdW5jdGlvbiBl
eGVjTW92ZVNlbGVjdGlvblJpZ2h0QnlDaGFyYWN0CiB9CiBmdW5jdGlvbiBtb3ZlU2VsZWN0aW9u
UmlnaHRCeUNoYXJhY3RlckNvbW1hbmQoKSB7CiAgICAgaWYgKGNvbW1hbmREZWxheSA+IDApIHsK
LSAgICAgICAgd2luZG93LnNldFRpbWVvdXQoZXhlY01vdmVTZWxlY3Rpb25SaWdodEJ5Q2hhcmFj
dGVyQ29tbWFuZCwgY29tbWFuZENvdW50ICogY29tbWFuZERlbGF5KTsKKyAgICAgICAgcXVldWVD
b21tYW5kKGV4ZWNNb3ZlU2VsZWN0aW9uUmlnaHRCeUNoYXJhY3RlckNvbW1hbmQsIGNvbW1hbmRD
b3VudCAqIGNvbW1hbmREZWxheSk7CiAgICAgICAgIGNvbW1hbmRDb3VudCsrOwogICAgIH0KICAg
ICBlbHNlIHsKQEAgLTc0LDcgKzc0LDcgQEAgZnVuY3Rpb24gZXhlY0V4dGVuZFNlbGVjdGlvbkxl
ZnRCeUNoYXJhYwogfQogZnVuY3Rpb24gZXh0ZW5kU2VsZWN0aW9uTGVmdEJ5Q2hhcmFjdGVyQ29t
bWFuZCgpIHsKICAgICBpZiAoY29tbWFuZERlbGF5ID4gMCkgewotICAgICAgICB3aW5kb3cuc2V0
VGltZW91dChleGVjRXh0ZW5kU2VsZWN0aW9uTGVmdEJ5Q2hhcmFjdGVyQ29tbWFuZCwgY29tbWFu
ZENvdW50ICogY29tbWFuZERlbGF5KTsKKyAgICAgICAgcXVldWVDb21tYW5kKGV4ZWNFeHRlbmRT
ZWxlY3Rpb25MZWZ0QnlDaGFyYWN0ZXJDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVs
YXkpOwogICAgICAgICBjb21tYW5kQ291bnQrKzsKICAgICB9CiAgICAgZWxzZSB7CkBAIC04OSw3
ICs4OSw3IEBAIGZ1bmN0aW9uIGV4ZWNFeHRlbmRTZWxlY3Rpb25SaWdodEJ5Q2hhcmEKIH0KIGZ1
bmN0aW9uIGV4dGVuZFNlbGVjdGlvblJpZ2h0QnlDaGFyYWN0ZXJDb21tYW5kKCkgewogICAgIGlm
IChjb21tYW5kRGVsYXkgPiAwKSB7Ci0gICAgICAgIHdpbmRvdy5zZXRUaW1lb3V0KGV4ZWNFeHRl
bmRTZWxlY3Rpb25SaWdodEJ5Q2hhcmFjdGVyQ29tbWFuZCwgY29tbWFuZENvdW50ICogY29tbWFu
ZERlbGF5KTsKKyAgICAgICAgcXVldWVDb21tYW5kKGV4ZWNFeHRlbmRTZWxlY3Rpb25SaWdodEJ5
Q2hhcmFjdGVyQ29tbWFuZCwgY29tbWFuZENvdW50ICogY29tbWFuZERlbGF5KTsKICAgICAgICAg
Y29tbWFuZENvdW50Kys7CiAgICAgfQogICAgIGVsc2UgewpAQCAtMTA0LDcgKzEwNCw3IEBAIGZ1
bmN0aW9uIGV4ZWNNb3ZlU2VsZWN0aW9uRm9yd2FyZEJ5Q2hhcmEKIH0KIGZ1bmN0aW9uIG1vdmVT
ZWxlY3Rpb25Gb3J3YXJkQnlDaGFyYWN0ZXJDb21tYW5kKCkgewogICAgIGlmIChjb21tYW5kRGVs
YXkgPiAwKSB7Ci0gICAgICAgIHdpbmRvdy5zZXRUaW1lb3V0KGV4ZWNNb3ZlU2VsZWN0aW9uRm9y
d2FyZEJ5Q2hhcmFjdGVyQ29tbWFuZCwgY29tbWFuZENvdW50ICogY29tbWFuZERlbGF5KTsKKyAg
ICAgICAgcXVldWVDb21tYW5kKGV4ZWNNb3ZlU2VsZWN0aW9uRm9yd2FyZEJ5Q2hhcmFjdGVyQ29t
bWFuZCwgY29tbWFuZENvdW50ICogY29tbWFuZERlbGF5KTsKICAgICAgICAgY29tbWFuZENvdW50
Kys7CiAgICAgfQogICAgIGVsc2UgewpAQCAtMTE5LDcgKzExOSw3IEBAIGZ1bmN0aW9uIGV4ZWNF
eHRlbmRTZWxlY3Rpb25Gb3J3YXJkQnlDaGEKIH0KIGZ1bmN0aW9uIGV4dGVuZFNlbGVjdGlvbkZv
cndhcmRCeUNoYXJhY3RlckNvbW1hbmQoKSB7CiAgICAgaWYgKGNvbW1hbmREZWxheSA+IDApIHsK
LSAgICAgICAgd2luZG93LnNldFRpbWVvdXQoZXhlY0V4dGVuZFNlbGVjdGlvbkZvcndhcmRCeUNo
YXJhY3RlckNvbW1hbmQsIGNvbW1hbmRDb3VudCAqIGNvbW1hbmREZWxheSk7CisgICAgICAgIHF1
ZXVlQ29tbWFuZChleGVjRXh0ZW5kU2VsZWN0aW9uRm9yd2FyZEJ5Q2hhcmFjdGVyQ29tbWFuZCwg
Y29tbWFuZENvdW50ICogY29tbWFuZERlbGF5KTsKICAgICAgICAgY29tbWFuZENvdW50Kys7CiAg
ICAgfQogICAgIGVsc2UgewpAQCAtMTM0LDcgKzEzNCw3IEBAIGZ1bmN0aW9uIGV4ZWNNb3ZlU2Vs
ZWN0aW9uRm9yd2FyZEJ5V29yZEMKIH0KIGZ1bmN0aW9uIG1vdmVTZWxlY3Rpb25Gb3J3YXJkQnlX
b3JkQ29tbWFuZCgpIHsKICAgICBpZiAoY29tbWFuZERlbGF5ID4gMCkgewotICAgICAgICB3aW5k
b3cuc2V0VGltZW91dChleGVjTW92ZVNlbGVjdGlvbkZvcndhcmRCeVdvcmRDb21tYW5kLCBjb21t
YW5kQ291bnQgKiBjb21tYW5kRGVsYXkpOworICAgICAgICBxdWV1ZUNvbW1hbmQoZXhlY01vdmVT
ZWxlY3Rpb25Gb3J3YXJkQnlXb3JkQ29tbWFuZCwgY29tbWFuZENvdW50ICogY29tbWFuZERlbGF5
KTsKICAgICAgICAgY29tbWFuZENvdW50Kys7CiAgICAgfQogICAgIGVsc2UgewpAQCAtMTQ5LDcg
KzE0OSw3IEBAIGZ1bmN0aW9uIGV4ZWNFeHRlbmRTZWxlY3Rpb25Gb3J3YXJkQnlXb3IKIH0KIGZ1
bmN0aW9uIGV4dGVuZFNlbGVjdGlvbkZvcndhcmRCeVdvcmRDb21tYW5kKCkgewogICAgIGlmIChj
b21tYW5kRGVsYXkgPiAwKSB7Ci0gICAgICAgIHdpbmRvdy5zZXRUaW1lb3V0KGV4ZWNFeHRlbmRT
ZWxlY3Rpb25Gb3J3YXJkQnlXb3JkQ29tbWFuZCwgY29tbWFuZENvdW50ICogY29tbWFuZERlbGF5
KTsKKyAgICAgICAgcXVldWVDb21tYW5kKGV4ZWNFeHRlbmRTZWxlY3Rpb25Gb3J3YXJkQnlXb3Jk
Q29tbWFuZCwgY29tbWFuZENvdW50ICogY29tbWFuZERlbGF5KTsKICAgICAgICAgY29tbWFuZENv
dW50Kys7CiAgICAgfQogICAgIGVsc2UgewpAQCAtMTY0LDcgKzE2NCw3IEBAIGZ1bmN0aW9uIGV4
ZWNNb3ZlU2VsZWN0aW9uRm9yd2FyZEJ5U2VudGUKIH0KIGZ1bmN0aW9uIG1vdmVTZWxlY3Rpb25G
b3J3YXJkQnlTZW50ZW5jZUNvbW1hbmQoKSB7CiAgICAgaWYgKGNvbW1hbmREZWxheSA+IDApIHsK
LSAgICAgICAgd2luZG93LnNldFRpbWVvdXQoZXhlY01vdmVTZWxlY3Rpb25Gb3J3YXJkQnlTZW50
ZW5jZUNvbW1hbmQsIGNvbW1hbmRDb3VudCAqIGNvbW1hbmREZWxheSk7CisgICAgICAgIHF1ZXVl
Q29tbWFuZChleGVjTW92ZVNlbGVjdGlvbkZvcndhcmRCeVNlbnRlbmNlQ29tbWFuZCwgY29tbWFu
ZENvdW50ICogY29tbWFuZERlbGF5KTsKICAgICAgICAgY29tbWFuZENvdW50Kys7CiAgICAgfQog
ICAgIGVsc2UgewpAQCAtMTc5LDcgKzE3OSw3IEBAIGZ1bmN0aW9uIGV4ZWNFeHRlbmRTZWxlY3Rp
b25Gb3J3YXJkQnlTZW4KIH0KIGZ1bmN0aW9uIGV4dGVuZFNlbGVjdGlvbkZvcndhcmRCeVNlbnRl
bmNlQ29tbWFuZCgpIHsKICAgICBpZiAoY29tbWFuZERlbGF5ID4gMCkgewotICAgICAgICB3aW5k
b3cuc2V0VGltZW91dChleGVjRXh0ZW5kU2VsZWN0aW9uRm9yd2FyZEJ5U2VudGVuY2VDb21tYW5k
LCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkpOworICAgICAgICBxdWV1ZUNvbW1hbmQoZXhl
Y0V4dGVuZFNlbGVjdGlvbkZvcndhcmRCeVNlbnRlbmNlQ29tbWFuZCwgY29tbWFuZENvdW50ICog
Y29tbWFuZERlbGF5KTsKICAgICAgICAgY29tbWFuZENvdW50Kys7CiAgICAgfQogICAgIGVsc2Ug
ewpAQCAtMTk0LDcgKzE5NCw3IEBAIGZ1bmN0aW9uIGV4ZWNNb3ZlU2VsZWN0aW9uRm9yd2FyZEJ5
TGluZUMKIH0KIGZ1bmN0aW9uIG1vdmVTZWxlY3Rpb25Gb3J3YXJkQnlMaW5lQ29tbWFuZCgpIHsK
ICAgICBpZiAoY29tbWFuZERlbGF5ID4gMCkgewotICAgICAgICB3aW5kb3cuc2V0VGltZW91dChl
eGVjTW92ZVNlbGVjdGlvbkZvcndhcmRCeUxpbmVDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21t
YW5kRGVsYXkpOworICAgICAgICBxdWV1ZUNvbW1hbmQoZXhlY01vdmVTZWxlY3Rpb25Gb3J3YXJk
QnlMaW5lQ29tbWFuZCwgY29tbWFuZENvdW50ICogY29tbWFuZERlbGF5KTsKICAgICAgICAgY29t
bWFuZENvdW50Kys7CiAgICAgfQogICAgIGVsc2UgewpAQCAtMjA5LDcgKzIwOSw3IEBAIGZ1bmN0
aW9uIGV4ZWNFeHRlbmRTZWxlY3Rpb25Gb3J3YXJkQnlMaW4KIH0KIGZ1bmN0aW9uIGV4dGVuZFNl
bGVjdGlvbkZvcndhcmRCeUxpbmVDb21tYW5kKCkgewogICAgIGlmIChjb21tYW5kRGVsYXkgPiAw
KSB7Ci0gICAgICAgIHdpbmRvdy5zZXRUaW1lb3V0KGV4ZWNFeHRlbmRTZWxlY3Rpb25Gb3J3YXJk
QnlMaW5lQ29tbWFuZCwgY29tbWFuZENvdW50ICogY29tbWFuZERlbGF5KTsKKyAgICAgICAgcXVl
dWVDb21tYW5kKGV4ZWNFeHRlbmRTZWxlY3Rpb25Gb3J3YXJkQnlMaW5lQ29tbWFuZCwgY29tbWFu
ZENvdW50ICogY29tbWFuZERlbGF5KTsKICAgICAgICAgY29tbWFuZENvdW50Kys7CiAgICAgfQog
ICAgIGVsc2UgewpAQCAtMjI0LDcgKzIyNCw3IEBAIGZ1bmN0aW9uIGV4ZWNNb3ZlU2VsZWN0aW9u
Rm9yd2FyZEJ5TGluZUIKIH0KIGZ1bmN0aW9uIG1vdmVTZWxlY3Rpb25Gb3J3YXJkQnlMaW5lQm91
bmRhcnlDb21tYW5kKCkgewogICAgIGlmIChjb21tYW5kRGVsYXkgPiAwKSB7Ci0gICAgICAgIHdp
bmRvdy5zZXRUaW1lb3V0KGV4ZWNNb3ZlU2VsZWN0aW9uRm9yd2FyZEJ5TGluZUJvdW5kYXJ5Q29t
bWFuZCwgY29tbWFuZENvdW50ICogY29tbWFuZERlbGF5KTsKKyAgICAgICAgcXVldWVDb21tYW5k
KGV4ZWNNb3ZlU2VsZWN0aW9uRm9yd2FyZEJ5TGluZUJvdW5kYXJ5Q29tbWFuZCwgY29tbWFuZENv
dW50ICogY29tbWFuZERlbGF5KTsKICAgICAgICAgY29tbWFuZENvdW50Kys7CiAgICAgfQogICAg
IGVsc2UgewpAQCAtMjM5LDcgKzIzOSw3IEBAIGZ1bmN0aW9uIGV4ZWNFeHRlbmRTZWxlY3Rpb25G
b3J3YXJkQnlMaW4KIH0KIGZ1bmN0aW9uIGV4dGVuZFNlbGVjdGlvbkZvcndhcmRCeUxpbmVCb3Vu
ZGFyeUNvbW1hbmQoKSB7CiAgICAgaWYgKGNvbW1hbmREZWxheSA+IDApIHsKLSAgICAgICAgd2lu
ZG93LnNldFRpbWVvdXQoZXhlY0V4dGVuZFNlbGVjdGlvbkZvcndhcmRCeUxpbmVCb3VuZGFyeUNv
bW1hbmQsIGNvbW1hbmRDb3VudCAqIGNvbW1hbmREZWxheSk7CisgICAgICAgIHF1ZXVlQ29tbWFu
ZChleGVjRXh0ZW5kU2VsZWN0aW9uRm9yd2FyZEJ5TGluZUJvdW5kYXJ5Q29tbWFuZCwgY29tbWFu
ZENvdW50ICogY29tbWFuZERlbGF5KTsKICAgICAgICAgY29tbWFuZENvdW50Kys7CiAgICAgfQog
ICAgIGVsc2UgewpAQCAtMjU0LDcgKzI1NCw3IEBAIGZ1bmN0aW9uIGV4ZWNNb3ZlU2VsZWN0aW9u
QmFja3dhcmRCeUNoYXIKIH0KIGZ1bmN0aW9uIG1vdmVTZWxlY3Rpb25CYWNrd2FyZEJ5Q2hhcmFj
dGVyQ29tbWFuZCgpIHsKICAgICBpZiAoY29tbWFuZERlbGF5ID4gMCkgewotICAgICAgICB3aW5k
b3cuc2V0VGltZW91dChleGVjTW92ZVNlbGVjdGlvbkJhY2t3YXJkQnlDaGFyYWN0ZXJDb21tYW5k
LCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkpOworICAgICAgICBxdWV1ZUNvbW1hbmQoZXhl
Y01vdmVTZWxlY3Rpb25CYWNrd2FyZEJ5Q2hhcmFjdGVyQ29tbWFuZCwgY29tbWFuZENvdW50ICog
Y29tbWFuZERlbGF5KTsKICAgICAgICAgY29tbWFuZENvdW50Kys7CiAgICAgfQogICAgIGVsc2Ug
ewpAQCAtMjY5LDcgKzI2OSw3IEBAIGZ1bmN0aW9uIGV4ZWNFeHRlbmRTZWxlY3Rpb25CYWNrd2Fy
ZEJ5Q2gKIH0KIGZ1bmN0aW9uIGV4dGVuZFNlbGVjdGlvbkJhY2t3YXJkQnlDaGFyYWN0ZXJDb21t
YW5kKCkgewogICAgIGlmIChjb21tYW5kRGVsYXkgPiAwKSB7Ci0gICAgICAgIHdpbmRvdy5zZXRU
aW1lb3V0KGV4ZWNFeHRlbmRTZWxlY3Rpb25CYWNrd2FyZEJ5Q2hhcmFjdGVyQ29tbWFuZCwgY29t
bWFuZENvdW50ICogY29tbWFuZERlbGF5KTsKKyAgICAgICAgcXVldWVDb21tYW5kKGV4ZWNFeHRl
bmRTZWxlY3Rpb25CYWNrd2FyZEJ5Q2hhcmFjdGVyQ29tbWFuZCwgY29tbWFuZENvdW50ICogY29t
bWFuZERlbGF5KTsKICAgICAgICAgY29tbWFuZENvdW50Kys7CiAgICAgfQogICAgIGVsc2UgewpA
QCAtMjg0LDcgKzI4NCw3IEBAIGZ1bmN0aW9uIGV4ZWNNb3ZlU2VsZWN0aW9uQmFja3dhcmRCeVdv
cmQKIH0KIGZ1bmN0aW9uIG1vdmVTZWxlY3Rpb25CYWNrd2FyZEJ5V29yZENvbW1hbmQoKSB7CiAg
ICAgaWYgKGNvbW1hbmREZWxheSA+IDApIHsKLSAgICAgICAgd2luZG93LnNldFRpbWVvdXQoZXhl
Y01vdmVTZWxlY3Rpb25CYWNrd2FyZEJ5V29yZENvbW1hbmQsIGNvbW1hbmRDb3VudCAqIGNvbW1h
bmREZWxheSk7CisgICAgICAgIHF1ZXVlQ29tbWFuZChleGVjTW92ZVNlbGVjdGlvbkJhY2t3YXJk
QnlXb3JkQ29tbWFuZCwgY29tbWFuZENvdW50ICogY29tbWFuZERlbGF5KTsKICAgICAgICAgY29t
bWFuZENvdW50Kys7CiAgICAgfQogICAgIGVsc2UgewpAQCAtMjk5LDcgKzI5OSw3IEBAIGZ1bmN0
aW9uIGV4ZWNFeHRlbmRTZWxlY3Rpb25CYWNrd2FyZEJ5V28KIH0KIGZ1bmN0aW9uIGV4dGVuZFNl
bGVjdGlvbkJhY2t3YXJkQnlXb3JkQ29tbWFuZCgpIHsKICAgICBpZiAoY29tbWFuZERlbGF5ID4g
MCkgewotICAgICAgICB3aW5kb3cuc2V0VGltZW91dChleGVjRXh0ZW5kU2VsZWN0aW9uQmFja3dh
cmRCeVdvcmRDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkpOworICAgICAgICBx
dWV1ZUNvbW1hbmQoZXhlY0V4dGVuZFNlbGVjdGlvbkJhY2t3YXJkQnlXb3JkQ29tbWFuZCwgY29t
bWFuZENvdW50ICogY29tbWFuZERlbGF5KTsKICAgICAgICAgY29tbWFuZENvdW50Kys7CiAgICAg
fQogICAgIGVsc2UgewpAQCAtMzE0LDcgKzMxNCw3IEBAIGZ1bmN0aW9uIGV4ZWNNb3ZlU2VsZWN0
aW9uQmFja3dhcmRCeVNlbnQKIH0KIGZ1bmN0aW9uIG1vdmVTZWxlY3Rpb25CYWNrd2FyZEJ5U2Vu
dGVuY2VDb21tYW5kKCkgewogICAgIGlmIChjb21tYW5kRGVsYXkgPiAwKSB7Ci0gICAgICAgIHdp
bmRvdy5zZXRUaW1lb3V0KGV4ZWNNb3ZlU2VsZWN0aW9uQmFja3dhcmRCeVNlbnRlbmNlQ29tbWFu
ZCwgY29tbWFuZENvdW50ICogY29tbWFuZERlbGF5KTsKKyAgICAgICAgcXVldWVDb21tYW5kKGV4
ZWNNb3ZlU2VsZWN0aW9uQmFja3dhcmRCeVNlbnRlbmNlQ29tbWFuZCwgY29tbWFuZENvdW50ICog
Y29tbWFuZERlbGF5KTsKICAgICAgICAgY29tbWFuZENvdW50Kys7CiAgICAgfQogICAgIGVsc2Ug
ewpAQCAtMzI5LDcgKzMyOSw3IEBAIGZ1bmN0aW9uIGV4ZWNFeHRlbmRTZWxlY3Rpb25CYWNrd2Fy
ZEJ5U2UKIH0KIGZ1bmN0aW9uIGV4dGVuZFNlbGVjdGlvbkJhY2t3YXJkQnlTZW50ZW5jZUNvbW1h
bmQoKSB7CiAgICAgaWYgKGNvbW1hbmREZWxheSA+IDApIHsKLSAgICAgICAgd2luZG93LnNldFRp
bWVvdXQoZXhlY0V4dGVuZFNlbGVjdGlvbkJhY2t3YXJkQnlTZW50ZW5jZUNvbW1hbmQsIGNvbW1h
bmRDb3VudCAqIGNvbW1hbmREZWxheSk7CisgICAgICAgIHF1ZXVlQ29tbWFuZChleGVjRXh0ZW5k
U2VsZWN0aW9uQmFja3dhcmRCeVNlbnRlbmNlQ29tbWFuZCwgY29tbWFuZENvdW50ICogY29tbWFu
ZERlbGF5KTsKICAgICAgICAgY29tbWFuZENvdW50Kys7CiAgICAgfQogICAgIGVsc2UgewpAQCAt
MzQ0LDcgKzM0NCw3IEBAIGZ1bmN0aW9uIGV4ZWNNb3ZlU2VsZWN0aW9uQmFja3dhcmRCeUxpbmUK
IH0KIGZ1bmN0aW9uIG1vdmVTZWxlY3Rpb25CYWNrd2FyZEJ5TGluZUNvbW1hbmQoKSB7CiAgICAg
aWYgKGNvbW1hbmREZWxheSA+IDApIHsKLSAgICAgICAgd2luZG93LnNldFRpbWVvdXQoZXhlY01v
dmVTZWxlY3Rpb25CYWNrd2FyZEJ5TGluZUNvbW1hbmQsIGNvbW1hbmRDb3VudCAqIGNvbW1hbmRE
ZWxheSk7CisgICAgICAgIHF1ZXVlQ29tbWFuZChleGVjTW92ZVNlbGVjdGlvbkJhY2t3YXJkQnlM
aW5lQ29tbWFuZCwgY29tbWFuZENvdW50ICogY29tbWFuZERlbGF5KTsKICAgICAgICAgY29tbWFu
ZENvdW50Kys7CiAgICAgfQogICAgIGVsc2UgewpAQCAtMzU5LDcgKzM1OSw3IEBAIGZ1bmN0aW9u
IGV4ZWNFeHRlbmRTZWxlY3Rpb25CYWNrd2FyZEJ5TGkKIH0KIGZ1bmN0aW9uIGV4dGVuZFNlbGVj
dGlvbkJhY2t3YXJkQnlMaW5lQ29tbWFuZCgpIHsKICAgICBpZiAoY29tbWFuZERlbGF5ID4gMCkg
ewotICAgICAgICB3aW5kb3cuc2V0VGltZW91dChleGVjRXh0ZW5kU2VsZWN0aW9uQmFja3dhcmRC
eUxpbmVDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkpOworICAgICAgICBxdWV1
ZUNvbW1hbmQoZXhlY0V4dGVuZFNlbGVjdGlvbkJhY2t3YXJkQnlMaW5lQ29tbWFuZCwgY29tbWFu
ZENvdW50ICogY29tbWFuZERlbGF5KTsKICAgICAgICAgY29tbWFuZENvdW50Kys7CiAgICAgfQog
ICAgIGVsc2UgewpAQCAtMzc0LDcgKzM3NCw3IEBAIGZ1bmN0aW9uIGV4ZWNFeHRlbmRTZWxlY3Rp
b25CYWNrd2FyZEJ5TGkKIH0KIGZ1bmN0aW9uIGV4dGVuZFNlbGVjdGlvbkJhY2t3YXJkQnlMaW5l
Qm91bmRhcnlDb21tYW5kKCkgewogICAgIGlmIChjb21tYW5kRGVsYXkgPiAwKSB7Ci0gICAgICAg
IHdpbmRvdy5zZXRUaW1lb3V0KGV4ZWNFeHRlbmRTZWxlY3Rpb25CYWNrd2FyZEJ5TGluZUJvdW5k
YXJ5Q29tbWFuZCwgY29tbWFuZENvdW50ICogY29tbWFuZERlbGF5KTsKKyAgICAgICAgcXVldWVD
b21tYW5kKGV4ZWNFeHRlbmRTZWxlY3Rpb25CYWNrd2FyZEJ5TGluZUJvdW5kYXJ5Q29tbWFuZCwg
Y29tbWFuZENvdW50ICogY29tbWFuZERlbGF5KTsKICAgICAgICAgY29tbWFuZENvdW50Kys7CiAg
ICAgfQogICAgIGVsc2UgewpAQCAtMzg5LDcgKzM4OSw3IEBAIGZ1bmN0aW9uIGV4ZWNNb3ZlU2Vs
ZWN0aW9uQmFja3dhcmRCeUxpbmUKIH0KIGZ1bmN0aW9uIG1vdmVTZWxlY3Rpb25CYWNrd2FyZEJ5
TGluZUJvdW5kYXJ5Q29tbWFuZCgpIHsKICAgICBpZiAoY29tbWFuZERlbGF5ID4gMCkgewotICAg
ICAgICB3aW5kb3cuc2V0VGltZW91dChleGVjTW92ZVNlbGVjdGlvbkJhY2t3YXJkQnlMaW5lQm91
bmRhcnlDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkpOworICAgICAgICBxdWV1
ZUNvbW1hbmQoZXhlY01vdmVTZWxlY3Rpb25CYWNrd2FyZEJ5TGluZUJvdW5kYXJ5Q29tbWFuZCwg
Y29tbWFuZENvdW50ICogY29tbWFuZERlbGF5KTsKICAgICAgICAgY29tbWFuZENvdW50Kys7CiAg
ICAgfQogICAgIGVsc2UgewpAQCAtNDIyLDcgKzQyMiw3IEBAIGZ1bmN0aW9uIGV4ZWNCb2xkQ29t
bWFuZCgpIHsKIH0KIGZ1bmN0aW9uIGJvbGRDb21tYW5kKCkgewogICAgIGlmIChjb21tYW5kRGVs
YXkgPiAwKSB7Ci0gICAgICAgIHdpbmRvdy5zZXRUaW1lb3V0KGV4ZWNCb2xkQ29tbWFuZCwgY29t
bWFuZENvdW50ICogY29tbWFuZERlbGF5KTsKKyAgICAgICAgcXVldWVDb21tYW5kKGV4ZWNCb2xk
Q29tbWFuZCwgY29tbWFuZENvdW50ICogY29tbWFuZERlbGF5KTsKICAgICAgICAgY29tbWFuZENv
dW50Kys7CiAgICAgfQogICAgIGVsc2UgewpAQCAtNDM4LDcgKzQzOCw3IEBAIGZ1bmN0aW9uIGV4
ZWNVbmRlcmxpbmVDb21tYW5kKCkgewogfQogZnVuY3Rpb24gdW5kZXJsaW5lQ29tbWFuZCgpIHsK
ICAgICBpZiAoY29tbWFuZERlbGF5ID4gMCkgewotICAgICAgICB3aW5kb3cuc2V0VGltZW91dChl
eGVjVW5kZXJsaW5lQ29tbWFuZCwgY29tbWFuZENvdW50ICogY29tbWFuZERlbGF5KTsKKyAgICAg
ICAgcXVldWVDb21tYW5kKGV4ZWNVbmRlcmxpbmVDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21t
YW5kRGVsYXkpOwogICAgICAgICBjb21tYW5kQ291bnQrKzsKICAgICB9CiAgICAgZWxzZSB7CkBA
IC00NTQsNyArNDU0LDcgQEAgZnVuY3Rpb24gZXhlY0ZvbnROYW1lQ29tbWFuZCgpIHsKIH0KIGZ1
bmN0aW9uIGZvbnROYW1lQ29tbWFuZCgpIHsKICAgICBpZiAoY29tbWFuZERlbGF5ID4gMCkgewot
ICAgICAgICB3aW5kb3cuc2V0VGltZW91dChleGVjRm9udE5hbWVDb21tYW5kLCBjb21tYW5kQ291
bnQgKiBjb21tYW5kRGVsYXkpOworICAgICAgICBxdWV1ZUNvbW1hbmQoZXhlY0ZvbnROYW1lQ29t
bWFuZCwgY29tbWFuZENvdW50ICogY29tbWFuZERlbGF5KTsKICAgICAgICAgY29tbWFuZENvdW50
Kys7CiAgICAgfQogICAgIGVsc2UgewpAQCAtNDcyLDcgKzQ3Miw3IEBAIGZ1bmN0aW9uIGV4ZWNG
b250U2l6ZUNvbW1hbmQocykgewogfQogZnVuY3Rpb24gZm9udFNpemVDb21tYW5kKHMpIHsKICAg
ICBpZiAoY29tbWFuZERlbGF5ID4gMCkgewotICAgICAgICB3aW5kb3cuc2V0VGltZW91dChleGVj
Rm9udFNpemVDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXksIHMpOworICAgICAg
ICBxdWV1ZUNvbW1hbmQoZXhlY0ZvbnRTaXplQ29tbWFuZCwgY29tbWFuZENvdW50ICogY29tbWFu
ZERlbGF5LCBzKTsKICAgICAgICAgY29tbWFuZENvdW50Kys7CiAgICAgfQogICAgIGVsc2UgewpA
QCAtNDkwLDcgKzQ5MCw3IEBAIGZ1bmN0aW9uIGV4ZWNGb250U2l6ZURlbHRhQ29tbWFuZChzKSB7
CiB9CiBmdW5jdGlvbiBmb250U2l6ZURlbHRhQ29tbWFuZChzKSB7CiAgICAgaWYgKGNvbW1hbmRE
ZWxheSA+IDApIHsKLSAgICAgICAgd2luZG93LnNldFRpbWVvdXQoZXhlY0ZvbnRTaXplRGVsdGFD
b21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXksIHMpOworICAgICAgICBxdWV1ZUNv
bW1hbmQoZXhlY0ZvbnRTaXplRGVsdGFDb21tYW5kLmJpbmQoZXhlY0ZvbnRTaXplRGVsdGFDb21t
YW5kLCBzKSwgY29tbWFuZENvdW50ICogY29tbWFuZERlbGF5KTsKICAgICAgICAgY29tbWFuZENv
dW50Kys7CiAgICAgfQogICAgIGVsc2UgewpAQCAtNTA2LDcgKzUwNiw3IEBAIGZ1bmN0aW9uIGV4
ZWNJdGFsaWNDb21tYW5kKCkgewogfQogZnVuY3Rpb24gaXRhbGljQ29tbWFuZCgpIHsKICAgICBp
ZiAoY29tbWFuZERlbGF5ID4gMCkgewotICAgICAgICB3aW5kb3cuc2V0VGltZW91dChleGVjSXRh
bGljQ29tbWFuZCwgY29tbWFuZENvdW50ICogY29tbWFuZERlbGF5KTsKKyAgICAgICAgcXVldWVD
b21tYW5kKGV4ZWNJdGFsaWNDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkpOwog
ICAgICAgICBjb21tYW5kQ291bnQrKzsKICAgICB9CiAgICAgZWxzZSB7CkBAIC01MjMsNyArNTIz
LDcgQEAgZnVuY3Rpb24gZXhlY0p1c3RpZnlDZW50ZXJDb21tYW5kKCkgewogfQogZnVuY3Rpb24g
anVzdGlmeUNlbnRlckNvbW1hbmQoKSB7CiAgICAgaWYgKGNvbW1hbmREZWxheSA+IDApIHsKLSAg
ICAgICAgd2luZG93LnNldFRpbWVvdXQoZXhlY0p1c3RpZnlDZW50ZXJDb21tYW5kLCBjb21tYW5k
Q291bnQgKiBjb21tYW5kRGVsYXkpOworICAgICAgICBxdWV1ZUNvbW1hbmQoZXhlY0p1c3RpZnlD
ZW50ZXJDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkpOwogICAgICAgICBjb21t
YW5kQ291bnQrKzsKICAgICB9CiAgICAgZWxzZSB7CkBAIC01NDAsNyArNTQwLDcgQEAgZnVuY3Rp
b24gZXhlY0p1c3RpZnlMZWZ0Q29tbWFuZCgpIHsKIH0KIGZ1bmN0aW9uIGp1c3RpZnlMZWZ0Q29t
bWFuZCgpIHsKICAgICBpZiAoY29tbWFuZERlbGF5ID4gMCkgewotICAgICAgICB3aW5kb3cuc2V0
VGltZW91dChleGVjSnVzdGlmeUxlZnRDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVs
YXkpOworICAgICAgICBxdWV1ZUNvbW1hbmQoZXhlY0p1c3RpZnlMZWZ0Q29tbWFuZCwgY29tbWFu
ZENvdW50ICogY29tbWFuZERlbGF5KTsKICAgICAgICAgY29tbWFuZENvdW50Kys7CiAgICAgfQog
ICAgIGVsc2UgewpAQCAtNTU3LDcgKzU1Nyw3IEBAIGZ1bmN0aW9uIGV4ZWNKdXN0aWZ5UmlnaHRD
b21tYW5kKCkgewogfQogZnVuY3Rpb24ganVzdGlmeVJpZ2h0Q29tbWFuZCgpIHsKICAgICBpZiAo
Y29tbWFuZERlbGF5ID4gMCkgewotICAgICAgICB3aW5kb3cuc2V0VGltZW91dChleGVjSnVzdGlm
eVJpZ2h0Q29tbWFuZCwgY29tbWFuZENvdW50ICogY29tbWFuZERlbGF5KTsKKyAgICAgICAgcXVl
dWVDb21tYW5kKGV4ZWNKdXN0aWZ5UmlnaHRDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5k
RGVsYXkpOwogICAgICAgICBjb21tYW5kQ291bnQrKzsKICAgICB9CiAgICAgZWxzZSB7CkBAIC01
NzMsNyArNTczLDcgQEAgZnVuY3Rpb24gZXhlY0luc2VydEhUTUxDb21tYW5kKGh0bWwpIHsKIH0K
IGZ1bmN0aW9uIGluc2VydEhUTUxDb21tYW5kKGh0bWwpIHsKICAgICBpZiAoY29tbWFuZERlbGF5
ID4gMCkgewotICAgICAgICB3aW5kb3cuc2V0VGltZW91dChleGVjSW5zZXJ0SFRNTENvbW1hbmQs
IGNvbW1hbmRDb3VudCAqIGNvbW1hbmREZWxheSwgaHRtbCk7CisgICAgICAgIHF1ZXVlQ29tbWFu
ZChleGVjSW5zZXJ0SFRNTENvbW1hbmQuYmluZChleGVjSW5zZXJ0SFRNTENvbW1hbmQsIGh0bWwp
LCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkpOwogICAgICAgICBjb21tYW5kQ291bnQrKzsK
ICAgICB9CiAgICAgZWxzZSB7CkBAIC01ODksNyArNTg5LDcgQEAgZnVuY3Rpb24gZXhlY0luc2Vy
dEltYWdlQ29tbWFuZChpbWdTcmMpIAogfQogZnVuY3Rpb24gaW5zZXJ0SW1hZ2VDb21tYW5kKGlt
Z1NyYykgewogICAgIGlmIChjb21tYW5kRGVsYXkgPiAwKSB7Ci0gICAgICAgIHdpbmRvdy5zZXRU
aW1lb3V0KGV4ZWNJbnNlcnRJbWFnZUNvbW1hbmQsIGNvbW1hbmRDb3VudCAqIGNvbW1hbmREZWxh
eSwgaW1nU3JjKTsKKyAgICAgICAgcXVldWVDb21tYW5kKGV4ZWNJbnNlcnRJbWFnZUNvbW1hbmQu
YmluZChleGVjSW5zZXJ0SW1hZ2VDb21tYW5kLCBpbWdTcmMpLCBjb21tYW5kQ291bnQgKiBjb21t
YW5kRGVsYXkpOwogICAgICAgICBjb21tYW5kQ291bnQrKzsKICAgICB9CiAgICAgZWxzZSB7CkBA
IC02MDUsNyArNjA1LDcgQEAgZnVuY3Rpb24gZXhlY0luc2VydExpbmVCcmVha0NvbW1hbmQoKSB7
CiB9CiBmdW5jdGlvbiBpbnNlcnRMaW5lQnJlYWtDb21tYW5kKCkgewogICAgIGlmIChjb21tYW5k
RGVsYXkgPiAwKSB7Ci0gICAgICAgIHdpbmRvdy5zZXRUaW1lb3V0KGV4ZWNJbnNlcnRMaW5lQnJl
YWtDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkpOworICAgICAgICBxdWV1ZUNv
bW1hbmQoZXhlY0luc2VydExpbmVCcmVha0NvbW1hbmQsIGNvbW1hbmRDb3VudCAqIGNvbW1hbmRE
ZWxheSk7CiAgICAgICAgIGNvbW1hbmRDb3VudCsrOwogICAgIH0KICAgICBlbHNlIHsKQEAgLTYy
MSw3ICs2MjEsNyBAQCBmdW5jdGlvbiBleGVjSW5zZXJ0UGFyYWdyYXBoQ29tbWFuZCgpIHsKIH0K
IGZ1bmN0aW9uIGluc2VydFBhcmFncmFwaENvbW1hbmQoKSB7CiAgICAgaWYgKGNvbW1hbmREZWxh
eSA+IDApIHsKLSAgICAgICAgd2luZG93LnNldFRpbWVvdXQoZXhlY0luc2VydFBhcmFncmFwaENv
bW1hbmQsIGNvbW1hbmRDb3VudCAqIGNvbW1hbmREZWxheSk7CisgICAgICAgIHF1ZXVlQ29tbWFu
ZChleGVjSW5zZXJ0UGFyYWdyYXBoQ29tbWFuZCwgY29tbWFuZENvdW50ICogY29tbWFuZERlbGF5
KTsKICAgICAgICAgY29tbWFuZENvdW50Kys7CiAgICAgfQogICAgIGVsc2UgewpAQCAtNjM3LDcg
KzYzNyw3IEBAIGZ1bmN0aW9uIGV4ZWNJbnNlcnROZXdsaW5lSW5RdW90ZWRDb250ZW4KIH0KIGZ1
bmN0aW9uIGluc2VydE5ld2xpbmVJblF1b3RlZENvbnRlbnRDb21tYW5kKCkgewogICAgIGlmIChj
b21tYW5kRGVsYXkgPiAwKSB7Ci0gICAgICAgIHdpbmRvdy5zZXRUaW1lb3V0KGV4ZWNJbnNlcnRO
ZXdsaW5lSW5RdW90ZWRDb250ZW50Q29tbWFuZCwgY29tbWFuZENvdW50ICogY29tbWFuZERlbGF5
KTsKKyAgICAgICAgcXVldWVDb21tYW5kKGV4ZWNJbnNlcnROZXdsaW5lSW5RdW90ZWRDb250ZW50
Q29tbWFuZCwgY29tbWFuZENvdW50ICogY29tbWFuZERlbGF5KTsKICAgICAgICAgY29tbWFuZENv
dW50Kys7CiAgICAgfQogICAgIGVsc2UgewpAQCAtNjU1LDcgKzY1NSw3IEBAIGZ1bmN0aW9uIGV4
ZWNUeXBlQ2hhcmFjdGVyQ29tbWFuZChjKSB7CiB9CiBmdW5jdGlvbiB0eXBlQ2hhcmFjdGVyQ29t
bWFuZChjKSB7CiAgICAgaWYgKGNvbW1hbmREZWxheSA+IDApIHsKLSAgICAgICAgd2luZG93LnNl
dFRpbWVvdXQoZXhlY1R5cGVDaGFyYWN0ZXJDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5k
RGVsYXksIGMpOworICAgICAgICBxdWV1ZUNvbW1hbmQoZXhlY1R5cGVDaGFyYWN0ZXJDb21tYW5k
LmJpbmQoZXhlY1R5cGVDaGFyYWN0ZXJDb21tYW5kLCBjKSwgY29tbWFuZENvdW50ICogY29tbWFu
ZERlbGF5KTsKICAgICAgICAgY29tbWFuZENvdW50Kys7CiAgICAgfQogICAgIGVsc2UgewpAQCAt
NjcwLDcgKzY3MCw3IEBAIGZ1bmN0aW9uIGV4ZWNTZWxlY3RBbGxDb21tYW5kKCkgewogfQogZnVu
Y3Rpb24gc2VsZWN0QWxsQ29tbWFuZCgpIHsKICAgICBpZiAoY29tbWFuZERlbGF5ID4gMCkgewot
ICAgICAgICB3aW5kb3cuc2V0VGltZW91dChleGVjU2VsZWN0QWxsQ29tbWFuZCwgY29tbWFuZENv
dW50ICogY29tbWFuZERlbGF5KTsKKyAgICAgICAgcXVldWVDb21tYW5kKGV4ZWNTZWxlY3RBbGxD
b21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkpOwogICAgICAgICBjb21tYW5kQ291
bnQrKzsKICAgICB9CiAgICAgZWxzZSB7CkBAIC02ODYsNyArNjg2LDcgQEAgZnVuY3Rpb24gZXhl
Y1N0cmlrZXRocm91Z2hDb21tYW5kKCkgewogfQogZnVuY3Rpb24gc3RyaWtldGhyb3VnaENvbW1h
bmQoKSB7CiAgICAgaWYgKGNvbW1hbmREZWxheSA+IDApIHsKLSAgICAgICAgd2luZG93LnNldFRp
bWVvdXQoZXhlY1N0cmlrZXRocm91Z2hDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVs
YXkpOworICAgICAgICBxdWV1ZUNvbW1hbmQoZXhlY1N0cmlrZXRocm91Z2hDb21tYW5kLCBjb21t
YW5kQ291bnQgKiBjb21tYW5kRGVsYXkpOwogICAgICAgICBjb21tYW5kQ291bnQrKzsKICAgICB9
CiAgICAgZWxzZSB7CkBAIC03MDIsNyArNzAyLDcgQEAgZnVuY3Rpb24gZXhlY1VuZG9Db21tYW5k
KCkgewogfQogZnVuY3Rpb24gdW5kb0NvbW1hbmQoKSB7CiAgICAgaWYgKGNvbW1hbmREZWxheSA+
IDApIHsKLSAgICAgICAgd2luZG93LnNldFRpbWVvdXQoZXhlY1VuZG9Db21tYW5kLCBjb21tYW5k
Q291bnQgKiBjb21tYW5kRGVsYXkpOworICAgICAgICBxdWV1ZUNvbW1hbmQoZXhlY1VuZG9Db21t
YW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkpOwogICAgICAgICBjb21tYW5kQ291bnQr
KzsKICAgICB9CiAgICAgZWxzZSB7CkBAIC03MTgsNyArNzE4LDcgQEAgZnVuY3Rpb24gZXhlY1Jl
ZG9Db21tYW5kKCkgewogfQogZnVuY3Rpb24gcmVkb0NvbW1hbmQoKSB7CiAgICAgaWYgKGNvbW1h
bmREZWxheSA+IDApIHsKLSAgICAgICAgd2luZG93LnNldFRpbWVvdXQoZXhlY1JlZG9Db21tYW5k
LCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkpOworICAgICAgICBxdWV1ZUNvbW1hbmQoZXhl
Y1JlZG9Db21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkpOwogICAgICAgICBjb21t
YW5kQ291bnQrKzsKICAgICB9CiAgICAgZWxzZSB7CkBAIC03MzMsNyArNzMzLDcgQEAgZnVuY3Rp
b24gZXhlY0NoYW5nZVJvb3RTaXplKCkgewogfQogZnVuY3Rpb24gY2hhbmdlUm9vdFNpemUoKSB7
CiAgICAgaWYgKGNvbW1hbmREZWxheSA+IDApIHsKLSAgICAgICAgd2luZG93LnNldFRpbWVvdXQo
ZXhlY0NoYW5nZVJvb3RTaXplLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkpOworICAgICAg
ICBxdWV1ZUNvbW1hbmQoZXhlY0NoYW5nZVJvb3RTaXplLCBjb21tYW5kQ291bnQgKiBjb21tYW5k
RGVsYXkpOwogICAgICAgICBjb21tYW5kQ291bnQrKzsKICAgICB9CiAgICAgZWxzZSB7CkBAIC03
NDksNyArNzQ5LDcgQEAgZnVuY3Rpb24gZXhlY0N1dENvbW1hbmQoKSB7CiB9CiBmdW5jdGlvbiBj
dXRDb21tYW5kKCkgewogICAgIGlmIChjb21tYW5kRGVsYXkgPiAwKSB7Ci0gICAgICAgIHdpbmRv
dy5zZXRUaW1lb3V0KGV4ZWNDdXRDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkp
OworICAgICAgICBxdWV1ZUNvbW1hbmQoZXhlY0N1dENvbW1hbmQsIGNvbW1hbmRDb3VudCAqIGNv
bW1hbmREZWxheSk7CiAgICAgICAgIGNvbW1hbmRDb3VudCsrOwogICAgIH0KICAgICBlbHNlIHsK
QEAgLTc2NSw3ICs3NjUsNyBAQCBmdW5jdGlvbiBleGVjQ29weUNvbW1hbmQoKSB7CiB9CiBmdW5j
dGlvbiBjb3B5Q29tbWFuZCgpIHsKICAgICBpZiAoY29tbWFuZERlbGF5ID4gMCkgewotICAgICAg
ICB3aW5kb3cuc2V0VGltZW91dChleGVjQ29weUNvbW1hbmQsIGNvbW1hbmRDb3VudCAqIGNvbW1h
bmREZWxheSk7CisgICAgICAgIHF1ZXVlQ29tbWFuZChleGVjQ29weUNvbW1hbmQsIGNvbW1hbmRD
b3VudCAqIGNvbW1hbmREZWxheSk7CiAgICAgICAgIGNvbW1hbmRDb3VudCsrOwogICAgIH0KICAg
ICBlbHNlIHsKQEAgLTc4MSw3ICs3ODEsNyBAQCBmdW5jdGlvbiBleGVjUGFzdGVDb21tYW5kKCkg
ewogfQogZnVuY3Rpb24gcGFzdGVDb21tYW5kKCkgewogICAgIGlmIChjb21tYW5kRGVsYXkgPiAw
KSB7Ci0gICAgICAgIHdpbmRvdy5zZXRUaW1lb3V0KGV4ZWNQYXN0ZUNvbW1hbmQsIGNvbW1hbmRD
b3VudCAqIGNvbW1hbmREZWxheSk7CisgICAgICAgIHF1ZXVlQ29tbWFuZChleGVjUGFzdGVDb21t
YW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkpOwogICAgICAgICBjb21tYW5kQ291bnQr
KzsKICAgICB9CiAgICAgZWxzZSB7CkBAIC03OTcsNyArNzk3LDcgQEAgZnVuY3Rpb24gZXhlY0Ny
ZWF0ZUxpbmtDb21tYW5kKHVybCkgewogfQogZnVuY3Rpb24gY3JlYXRlTGlua0NvbW1hbmQodXJs
KSB7CiAgICAgaWYgKGNvbW1hbmREZWxheSA+IDApIHsKLSAgICAgICAgd2luZG93LnNldFRpbWVv
dXQoZXhlY0NyZWF0ZUxpbmtDb21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXksIHVy
bCk7CisgICAgICAgIHF1ZXVlQ29tbWFuZChleGVjQ3JlYXRlTGlua0NvbW1hbmQuYmluZChleGVj
Q3JlYXRlTGlua0NvbW1hbmQsIHVybCksIGNvbW1hbmRDb3VudCAqIGNvbW1hbmREZWxheSk7CiAg
ICAgICAgIGNvbW1hbmRDb3VudCsrOwogICAgIH0gZWxzZQogICAgICAgICBleGVjQ3JlYXRlTGlu
a0NvbW1hbmQodXJsKTsKQEAgLTgxMSw3ICs4MTEsNyBAQCBmdW5jdGlvbiBleGVjVW5saW5rQ29t
bWFuZCgpIHsKIH0KIGZ1bmN0aW9uIHVubGlua0NvbW1hbmQoKSB7CiAgICAgaWYgKGNvbW1hbmRE
ZWxheSA+IDApIHsKLSAgICAgICAgd2luZG93LnNldFRpbWVvdXQoZXhlY1VubGlua0NvbW1hbmQs
IGNvbW1hbmRDb3VudCAqIGNvbW1hbmREZWxheSk7CisgICAgICAgIHF1ZXVlQ29tbWFuZChleGVj
VW5saW5rQ29tbWFuZCwgY29tbWFuZENvdW50ICogY29tbWFuZERlbGF5KTsKICAgICAgICAgY29t
bWFuZENvdW50Kys7CiAgICAgfSBlbHNlCiAgICAgICAgIGV4ZWNVbmxpbmtDb21tYW5kKCk7CkBA
IC04MjUsNyArODI1LDcgQEAgZnVuY3Rpb24gZXhlY1Bhc3RlQW5kTWF0Y2hTdHlsZUNvbW1hbmQo
KQogfQogZnVuY3Rpb24gcGFzdGVBbmRNYXRjaFN0eWxlQ29tbWFuZCgpIHsKICAgICBpZiAoY29t
bWFuZERlbGF5ID4gMCkgewotICAgICAgICB3aW5kb3cuc2V0VGltZW91dChleGVjUGFzdGVBbmRN
YXRjaFN0eWxlQ29tbWFuZCwgY29tbWFuZENvdW50ICogY29tbWFuZERlbGF5KTsKKyAgICAgICAg
cXVldWVDb21tYW5kKGV4ZWNQYXN0ZUFuZE1hdGNoU3R5bGVDb21tYW5kLCBjb21tYW5kQ291bnQg
KiBjb21tYW5kRGVsYXkpOwogICAgICAgICBjb21tYW5kQ291bnQrKzsKICAgICB9CiAgICAgZWxz
ZSB7CkBAIC04NDEsNyArODQxLDcgQEAgZnVuY3Rpb24gZXhlY0RlbGV0ZUNvbW1hbmQoKSB7CiB9
CiBmdW5jdGlvbiBkZWxldGVDb21tYW5kKCkgewogICAgIGlmIChjb21tYW5kRGVsYXkgPiAwKSB7
Ci0gICAgICAgIHdpbmRvdy5zZXRUaW1lb3V0KGV4ZWNEZWxldGVDb21tYW5kLCBjb21tYW5kQ291
bnQgKiBjb21tYW5kRGVsYXkpOworICAgICAgICBxdWV1ZUNvbW1hbmQoZXhlY0RlbGV0ZUNvbW1h
bmQsIGNvbW1hbmRDb3VudCAqIGNvbW1hbmREZWxheSk7CiAgICAgICAgIGNvbW1hbmRDb3VudCsr
OwogICAgIH0KICAgICBlbHNlIHsKQEAgLTg1Nyw3ICs4NTcsNyBAQCBmdW5jdGlvbiBleGVjRm9y
d2FyZERlbGV0ZUNvbW1hbmQoKSB7CiB9CiBmdW5jdGlvbiBmb3J3YXJkRGVsZXRlQ29tbWFuZCgp
IHsKICAgICBpZiAoY29tbWFuZERlbGF5ID4gMCkgewotICAgICAgICB3aW5kb3cuc2V0VGltZW91
dChleGVjRm9yd2FyZERlbGV0ZUNvbW1hbmQsIGNvbW1hbmRDb3VudCAqIGNvbW1hbmREZWxheSk7
CisgICAgICAgIHF1ZXVlQ29tbWFuZChleGVjRm9yd2FyZERlbGV0ZUNvbW1hbmQsIGNvbW1hbmRD
b3VudCAqIGNvbW1hbmREZWxheSk7CiAgICAgICAgIGNvbW1hbmRDb3VudCsrOwogICAgIH0KICAg
ICBlbHNlIHsKQEAgLTg2Nyw2ICs4NjcsMzIgQEAgZnVuY3Rpb24gZm9yd2FyZERlbGV0ZUNvbW1h
bmQoKSB7CiAKIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LQogCisoZnVuY3Rpb24gKCkgeworICAgIHZhciBxdWV1ZSA9IFtdOworICAgIHZhciBpID0gMDsK
KyAgICB2YXIgdGltZXI7CisKKyAgICBmdW5jdGlvbiBxdWV1ZUNvbW1hbmQoY2FsbGJhY2spIHsK
KyAgICAgICAgcXVldWUucHVzaChjYWxsYmFjayk7CisgICAgICAgIGlmICghdGltZXIpIHsKKyAg
ICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgICB0ZXN0UnVu
bmVyLndhaXRVbnRpbERvbmUoKTsKKyAgICAgICAgICAgIHRpbWVyID0gc2V0VGltZW91dChydW5D
b21tYW5kLCBjb21tYW5kRGVsYXkpOworICAgICAgICB9CisgICAgfQorCisgICAgZnVuY3Rpb24g
cnVuQ29tbWFuZCgpIHsKKyAgICAgICAgcXVldWVbaV0oKTsKKyAgICAgICAgaSsrOworICAgICAg
ICBpZiAoaSA8IHF1ZXVlLmxlbmd0aCkKKyAgICAgICAgICAgIHNldFRpbWVvdXQocnVuQ29tbWFu
ZCwgY29tbWFuZERlbGF5KTsKKyAgICAgICAgZWxzZSBpZiAod2luZG93LnRlc3RSdW5uZXIpCisg
ICAgICAgICAgICB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKKyAgICB9CisgICAgCisgICAgd2lu
ZG93LnF1ZXVlQ29tbWFuZCA9IHF1ZXVlQ29tbWFuZDsKK30pKCk7CisKIGZ1bmN0aW9uIHJ1bkVk
aXRpbmdUZXN0KCkgewogICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKICAgICAgICAgdGVzdFJ1
bm5lci5kdW1wRWRpdGluZ0NhbGxiYWNrcygpOwpAQCAtOTE0LDcgKzk0MCw3IEBAIGZ1bmN0aW9u
IGV4ZWNCYWNrQ29sb3JDb21tYW5kKCkgewogfQogZnVuY3Rpb24gYmFja0NvbG9yQ29tbWFuZCgp
IHsKICAgICBpZiAoY29tbWFuZERlbGF5ID4gMCkgewotICAgICAgICB3aW5kb3cuc2V0VGltZW91
dChleGVjQmFja0NvbG9yQ29tbWFuZCwgY29tbWFuZENvdW50ICogY29tbWFuZERlbGF5KTsKKyAg
ICAgICAgcXVldWVDb21tYW5kKGV4ZWNCYWNrQ29sb3JDb21tYW5kLCBjb21tYW5kQ291bnQgKiBj
b21tYW5kRGVsYXkpOwogICAgICAgICBjb21tYW5kQ291bnQrKzsKICAgICB9CiAgICAgZWxzZSB7
CkBAIC05MjksNyArOTU1LDcgQEAgZnVuY3Rpb24gZXhlY0ZvcmVDb2xvckNvbW1hbmQoY29sb3Ip
IHsKIH0KIGZ1bmN0aW9uIGZvcmVDb2xvckNvbW1hbmQoY29sb3IpIHsKICAgICBpZiAoY29tbWFu
ZERlbGF5ID4gMCkgewotICAgICAgICB3aW5kb3cuc2V0VGltZW91dChleGVjRm9yZUNvbG9yQ29t
bWFuZCwgY29tbWFuZENvdW50ICogY29tbWFuZERlbGF5LCBjb2xvcik7CisgICAgICAgIHF1ZXVl
Q29tbWFuZChleGVjRm9yZUNvbG9yQ29tbWFuZC5iaW5kKGV4ZWNGb3JlQ29sb3JDb21tYW5kLCBj
b2xvciksIGNvbW1hbmRDb3VudCAqIGNvbW1hbmREZWxheSk7CiAgICAgICAgIGNvbW1hbmRDb3Vu
dCsrOwogICAgIH0gZWxzZQogICAgICAgICBleGVjRm9yZUNvbG9yQ29tbWFuZChjb2xvcik7CkBA
IC05NDQsNyArOTcwLDcgQEAgZnVuY3Rpb24gcnVuQ29tbWFuZChjb21tYW5kLCBhcmcxLCBhcmcy
KQogCiBmdW5jdGlvbiBleGVjdXRlQ29tbWFuZChjb21tYW5kLGFyZzEsYXJnMikgewogICAgIGlm
IChjb21tYW5kRGVsYXkgPiAwKSB7Ci0gICAgICAgIHdpbmRvdy5zZXRUaW1lb3V0KHJ1bkNvbW1h
bmQsIGNvbW1hbmRDb3VudCAqIGNvbW1hbmREZWxheSk7CisgICAgICAgIHF1ZXVlQ29tbWFuZChy
dW5Db21tYW5kLCBjb21tYW5kQ291bnQgKiBjb21tYW5kRGVsYXkpOwogICAgICAgICBjb21tYW5k
Q291bnQrKzsKICAgICB9CiAgICAgZWxzZSB7CkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9t
YWMvZWRpdGluZy9zZWxlY3Rpb24vbW92ZS1ieS1jaGFyYWN0ZXItNi1leHBlY3RlZC50eHQKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2VkaXRpbmcvc2VsZWN0aW9uL21v
dmUtYnktY2hhcmFjdGVyLTYtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAxMzc3ODIpCisrKyBMYXlv
dXRUZXN0cy9wbGF0Zm9ybS9tYWMvZWRpdGluZy9zZWxlY3Rpb24vbW92ZS1ieS1jaGFyYWN0ZXIt
Ni1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTEsNiArMSwyOCBAQAogRURJVElORyBE
RUxFR0FURTogc2hvdWxkQmVnaW5FZGl0aW5nSW5ET01SYW5nZTpyYW5nZSBmcm9tIDAgb2YgRElW
ID4gQk9EWSA+IEhUTUwgPiAjZG9jdW1lbnQgdG8gMyBvZiBESVYgPiBCT0RZID4gSFRNTCA+ICNk
b2N1bWVudAogRURJVElORyBERUxFR0FURTogd2ViVmlld0RpZEJlZ2luRWRpdGluZzpXZWJWaWV3
RGlkQmVnaW5FZGl0aW5nTm90aWZpY2F0aW9uCiBFRElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlk
Q2hhbmdlU2VsZWN0aW9uOldlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb25Ob3RpZmljYXRpb24KK0VE
SVRJTkcgREVMRUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb246V2ViVmlld0RpZENoYW5n
ZVNlbGVjdGlvbk5vdGlmaWNhdGlvbgorRURJVElORyBERUxFR0FURTogd2ViVmlld0RpZENoYW5n
ZVNlbGVjdGlvbjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZpY2F0aW9uCitFRElUSU5H
IERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uOldlYlZpZXdEaWRDaGFuZ2VTZWxl
Y3Rpb25Ob3RpZmljYXRpb24KK0VESVRJTkcgREVMRUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2VTZWxl
Y3Rpb246V2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbk5vdGlmaWNhdGlvbgorRURJVElORyBERUxF
R0FURTogd2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9u
Tm90aWZpY2F0aW9uCitFRElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9u
OldlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb25Ob3RpZmljYXRpb24KK0VESVRJTkcgREVMRUdBVEU6
IHdlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb246V2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbk5vdGlm
aWNhdGlvbgorRURJVElORyBERUxFR0FURTogd2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbjpXZWJW
aWV3RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZpY2F0aW9uCitFRElUSU5HIERFTEVHQVRFOiB3ZWJW
aWV3RGlkQ2hhbmdlU2VsZWN0aW9uOldlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb25Ob3RpZmljYXRp
b24KK0VESVRJTkcgREVMRUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb246V2ViVmlld0Rp
ZENoYW5nZVNlbGVjdGlvbk5vdGlmaWNhdGlvbgorRURJVElORyBERUxFR0FURTogd2ViVmlld0Rp
ZENoYW5nZVNlbGVjdGlvbjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZpY2F0aW9uCitF
RElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uOldlYlZpZXdEaWRDaGFu
Z2VTZWxlY3Rpb25Ob3RpZmljYXRpb24KK0VESVRJTkcgREVMRUdBVEU6IHdlYlZpZXdEaWRDaGFu
Z2VTZWxlY3Rpb246V2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbk5vdGlmaWNhdGlvbgorRURJVElO
RyBERUxFR0FURTogd2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbjpXZWJWaWV3RGlkQ2hhbmdlU2Vs
ZWN0aW9uTm90aWZpY2F0aW9uCitFRElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2Vs
ZWN0aW9uOldlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb25Ob3RpZmljYXRpb24KK0VESVRJTkcgREVM
RUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb246V2ViVmlld0RpZENoYW5nZVNlbGVjdGlv
bk5vdGlmaWNhdGlvbgorRURJVElORyBERUxFR0FURTogd2ViVmlld0RpZENoYW5nZVNlbGVjdGlv
bjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZpY2F0aW9uCitFRElUSU5HIERFTEVHQVRF
OiB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uOldlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb25Ob3Rp
ZmljYXRpb24KK0VESVRJTkcgREVMRUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb246V2Vi
Vmlld0RpZENoYW5nZVNlbGVjdGlvbk5vdGlmaWNhdGlvbgorRURJVElORyBERUxFR0FURTogd2Vi
Vmlld0RpZENoYW5nZVNlbGVjdGlvbjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZpY2F0
aW9uCitFRElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uOldlYlZpZXdE
aWRDaGFuZ2VTZWxlY3Rpb25Ob3RpZmljYXRpb24KK0VESVRJTkcgREVMRUdBVEU6IHdlYlZpZXdE
aWRDaGFuZ2VTZWxlY3Rpb246V2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbk5vdGlmaWNhdGlvbgog
bGF5ZXIgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCiAgIFJlbmRlclZpZXcgYXQgKDAsMCkgc2l6ZSA4
MDB4NjAwCiBsYXllciBhdCAoMCwwKSBzaXplIDgwMHg2MDAK
</data>
<flag name="review"
          id="196457"
          type_id="1"
          status="+"
          setter="eric"
    />
    <flag name="commit-queue"
          id="196479"
          type_id="3"
          status="-"
          setter="webkit.review.bot"
    />
          </attachment>
      

    </bug>

</bugzilla>