<?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>77051</bug_id>
          
          <creation_ts>2012-01-25 14:47:40 -0800</creation_ts>
          <short_desc>Layout/floats.html should be runnable by run-perf-tests</short_desc>
          <delta_ts>2012-03-14 18:17:16 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Layout and Rendering</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>
          
          <blocked>77037</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Ryosuke Niwa">rniwa</reporter>
          <assigned_to name="Alexandru Chiculita">achicu</assigned_to>
          <cc>abarth</cc>
    
    <cc>achicu</cc>
    
    <cc>hyatt</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>542652</commentid>
    <comment_count>0</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-01-25 14:47:40 -0800</bug_when>
    <thetext>run-perf-test should be able to run Layout/floats.html

We might want to consider splitting the test into multiple pieces and use runner.js.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>543986</commentid>
    <comment_count>1</comment_count>
      <attachid>124294</attachid>
    <who name="Alexandru Chiculita">achicu</who>
    <bug_when>2012-01-27 05:19:37 -0800</bug_when>
    <thetext>Created attachment 124294
Patch V1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>544224</commentid>
    <comment_count>2</comment_count>
      <attachid>124294</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-01-27 11:49:30 -0800</bug_when>
    <thetext>Comment on attachment 124294
Patch V1

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

&gt; PerformanceTests/Layout/resources/floats.js:7
&gt; +    var nextRandomIndex = 0;

Maybe we should move a function I&apos;m replacing Math.random with in https://bugs.webkit.org/attachment.cgi?id=124266&amp;action=review to runner.js so you can use it here?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>544877</commentid>
    <comment_count>3</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-01-29 21:41:38 -0800</bug_when>
    <thetext>I&apos;ve committed my patch so you should be able to move move Math.random from
http://trac.webkit.org/browser/trunk/PerformanceTests/DOM/resources/dom-perf.js#L120
to
http://trac.webkit.org/browser/trunk/PerformanceTests/resources/runner.js</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>545028</commentid>
    <comment_count>4</comment_count>
      <attachid>124527</attachid>
    <who name="Alexandru Chiculita">achicu</who>
    <bug_when>2012-01-30 05:08:37 -0800</bug_when>
    <thetext>Created attachment 124527
Patch V2

Moved Math.random to runner.js. Also, added a reset function to reset the seed after each run.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>545163</commentid>
    <comment_count>5</comment_count>
      <attachid>124527</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-01-30 09:29:42 -0800</bug_when>
    <thetext>Comment on attachment 124527
Patch V2

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

&gt; PerformanceTests/ChangeLog:9
&gt; +        Some tests take longer to run and I&apos;ve changed the number of iterations, so that each tests finishes under 1s per run.

Could you split this line into two before landing it? It&apos;s really long.

&gt; PerformanceTests/ChangeLog:12
&gt; +            Moved Math.random to runner.js.

We normally append the comment on the same line as the test name and : with one space. e.g.
* DOM/resources/dom-perf.js: Moved Math.random to runner.js.

&gt; PerformanceTests/ChangeLog:36
&gt; +            Moved the Math.random to runner.js to be used by all tests.
&gt; +            Added resetRandomSeed to bring the randomizer back to initial seed.
&gt; +            It is useful to get the same results at every run and minimize the
&gt; +            differences between runs.

And when line wraps, we don&apos;t normally indent but instead align them to where ( is in (Math.random). (i.e. indented by exactly 8 spaces from the beginning).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>546400</commentid>
    <comment_count>6</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-01-31 12:59:22 -0800</bug_when>
    <thetext>I think this patch is out of date after http://trac.webkit.org/changeset/106379.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>571994</commentid>
    <comment_count>7</comment_count>
    <who name="Alexandru Chiculita">achicu</who>
    <bug_when>2012-03-06 11:06:46 -0800</bug_when>
    <thetext>(In reply to comment #6)
&gt; I think this patch is out of date after http://trac.webkit.org/changeset/106379.

Sorry, I&apos;ve been out for a while. Will get back to this one ASAP.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>578994</commentid>
    <comment_count>8</comment_count>
      <attachid>131966</attachid>
    <who name="Alexandru Chiculita">achicu</who>
    <bug_when>2012-03-14 17:56:30 -0700</bug_when>
    <thetext>Created attachment 131966
Rebased patch

Rebased patch, but changed the code to put the methods in PerfTestRunner, so I&apos;m sending it back to review.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>578996</commentid>
    <comment_count>9</comment_count>
      <attachid>131967</attachid>
    <who name="Alexandru Chiculita">achicu</who>
    <bug_when>2012-03-14 18:01:21 -0700</bug_when>
    <thetext>Created attachment 131967
Rebase #2</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>579001</commentid>
    <comment_count>10</comment_count>
    <who name="Alexandru Chiculita">achicu</who>
    <bug_when>2012-03-14 18:08:31 -0700</bug_when>
    <thetext>Landed in r110801: http://trac.webkit.org/changeset/110801</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>124294</attachid>
            <date>2012-01-27 05:19:37 -0800</date>
            <delta_ts>2012-01-30 05:08:37 -0800</delta_ts>
            <desc>Patch V1</desc>
            <filename>bug77051.patch</filename>
            <type>text/plain</type>
            <size>17189</size>
            <attacher name="Alexandru Chiculita">achicu</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1BlcmZvcm1hbmNlVGVzdHMvQ2hhbmdlTG9nIGIvUGVyZm9ybWFuY2VUZXN0
cy9DaGFuZ2VMb2cKaW5kZXggOTk0MTFhMy4uNjRjMzNiZiAxMDA2NDQKLS0tIGEvUGVyZm9ybWFu
Y2VUZXN0cy9DaGFuZ2VMb2cKKysrIGIvUGVyZm9ybWFuY2VUZXN0cy9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwzMiBAQAorMjAxMi0wMS0yNyAgQWxleGFuZHJ1IENoaWN1bGl0YSAgPGFjaGljdUBhZG9i
ZS5jb20+CisKKyAgICAgICAgTGF5b3V0L2Zsb2F0cy5odG1sIHNob3VsZCBiZSBydW5uYWJsZSBi
eSBydW4tcGVyZi10ZXN0cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9NzcwNTEKKyAgICAgICAgCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorICAgICAgICAKKyAgICAgICAgSSd2ZSBzcGxpdCBMYXlvdXQvZmxvYXRzLmh0bWwgaW50
byBtdWx0aXBsZSB0ZXN0cyBmb3IgZWFjaCBidXR0b24gaW4gdGhlIG9yaWdpbmFsIG1hbnVhbCB0
ZXN0LgorICAgICAgICBTb21lIHRlc3RzIHRha2UgbG9uZ2VyIHRvIHJ1biBhbmQgSSd2ZSBjaGFu
Z2VkIHRvIG51bWJlciBvZiBpdGVyYXRpb25zLCBzbyB0aGF0IGVhY2ggdGVzdHMgZmluaXNoZXMg
dW5kZXIgMXMgcGVyIGl0ZXJhdGlvbi4KKworICAgICAgICAqIExheW91dC9mbG9hdHMuaHRtbDog
UmVtb3ZlZC4KKyAgICAgICAgKiBMYXlvdXQvZmxvYXRzXzEwMF8xMDAuaHRtbDogQWRkZWQuCisg
ICAgICAgICogTGF5b3V0L2Zsb2F0c18xMDBfMTAwX25lc3RlZC5odG1sOiBBZGRlZC4KKyAgICAg
ICAgKiBMYXlvdXQvZmxvYXRzXzIwXzEwMC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBMYXlvdXQv
ZmxvYXRzXzIwXzEwMF9uZXN0ZWQuaHRtbDogQWRkZWQuCisgICAgICAgICogTGF5b3V0L2Zsb2F0
c18yXzEwMC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBMYXlvdXQvZmxvYXRzXzJfMTAwX25lc3Rl
ZC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBMYXlvdXQvZmxvYXRzXzUwXzEwMC5odG1sOiBBZGRl
ZC4KKyAgICAgICAgKiBMYXlvdXQvZmxvYXRzXzUwXzEwMF9uZXN0ZWQuaHRtbDogQWRkZWQuCisg
ICAgICAgICogTGF5b3V0L3Jlc291cmNlcy9mbG9hdHMuY3NzOiBBZGRlZC4KKyAgICAgICAgICAg
IEV4dHJhY3RlZCB0aGUgQ1NTIGZyb20gb2xkIGZsb2F0cy5odG1sLgorICAgICAgICAoLmNvbnRh
aW5lcik6CisgICAgICAgICguZmxvYXQpOgorICAgICAgICAoLmJpZyk6CisgICAgICAgICguZmxv
YXQtZW5kKToKKyAgICAgICAgKiBMYXlvdXQvcmVzb3VyY2VzL2Zsb2F0cy5qczogQWRkZWQuCisg
ICAgICAgICAgICBFeHRyYWN0ZWQgdGhlIHNjcmlwdCBmcm9tIG9sZCBmbG9hdHMuaHRtbC4KKyAg
ICAgICAgKiBTa2lwcGVkOgorCiAyMDEyLTAxLTI1ICBSeW9zdWtlIE5pd2EgIDxybml3YUB3ZWJr
aXQub3JnPgogCiAgICAgICAgIGh0bWw1LWZ1bGwtcmVuZGVyLmh0bWwgZmFpbHMgZHVlIHRvIGEg
bG9nCmRpZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3RzL0xheW91dC9mbG9hdHMuaHRtbCBiL1Bl
cmZvcm1hbmNlVGVzdHMvTGF5b3V0L2Zsb2F0cy5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCA1MmY5NWJhLi4wMDAwMDAwCi0tLSBhL1BlcmZvcm1hbmNlVGVzdHMvTGF5b3V0L2Zs
b2F0cy5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTA4ICswLDAgQEAKLTwhRE9DVFlQRSBodG1s
PgotPGh0bWw+Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDx0aXRsZT5GbG9hdHMgbGF5b3V0IHBlcmZv
cm1hbmNlIHRlc3RlcjwvdGl0bGU+Ci0gICAgICAgIDxzdHlsZT4KLSAgICAgICAgICAgIC5mbG9h
dCB7Ci0gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7Ci0gICAgICAgICAgICAgICAgd2lkdGg6
IDVweDsKLSAgICAgICAgICAgICAgICBoZWlnaHQ6IDVweDsKLSAgICAgICAgICAgICAgICBib3Jk
ZXI6IDFweCBzb2xpZCBncmVlbjsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIC5iaWcgewot
ICAgICAgICAgICAgICAgIHdpZHRoOiAxMHB4OwotICAgICAgICAgICAgfQotICAgICAgICAgICAg
LmZsb2F0LWVuZCB7Ci0gICAgICAgICAgICAgICAgY2xlYXI6bGVmdDsKLSAgICAgICAgICAgIH0K
LQotICAgICAgICAgICAgI2ZyYW1lcmF0ZV9wYW5lbCB7Ci0gICAgICAgICAgICAgICAgZGlzcGxh
eTogbm9uZTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICAgICAgPHNjcmlw
dD4KLSAgICAgICAgICAgIGZ1bmN0aW9uIGNyZWF0ZUVsZW1lbnQodGFnLCBwYXJlbnQsIGNsYXNz
TmFtZSwgaWQpCi0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgdmFyIGVsID0gZG9jdW1l
bnQuY3JlYXRlRWxlbWVudCh0YWcpOwotICAgICAgICAgICAgICAgIGVsLmNsYXNzTmFtZSA9IGNs
YXNzTmFtZTsKLSAgICAgICAgICAgICAgICBlbC5pZCA9IGlkOwotICAgICAgICAgICAgICAgIHBh
cmVudC5hcHBlbmRDaGlsZChlbCk7Ci0gICAgICAgICAgICAgICAgcmV0dXJuIGVsOwotICAgICAg
ICAgICAgfQotCi0gICAgICAgICAgICBmdW5jdGlvbiBjcmVhdGVTZXQod2lkdGgsIGhlaWdodCwg
bmVzdGVkKQotICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIHZhciBjb250YWluZXIgPSBj
cmVhdGVFbGVtZW50KCJkaXYiLCBkb2N1bWVudC5ib2R5LCAiY29udGFpbmVyIik7Ci0gICAgICAg
ICAgICAgICAgZm9yICh2YXIgeSA9IDA7IHkgPCBoZWlnaHQ7ICsreSkgewotICAgICAgICAgICAg
ICAgICAgICBmb3IgKHZhciB4ID0gMDsgeCA8IHdpZHRoOyArK3gpCi0gICAgICAgICAgICAgICAg
ICAgICAgICBjcmVhdGVFbGVtZW50KCJkaXYiLCBjb250YWluZXIsICJmbG9hdCIsICJmbG9hdCIg
KyB4ICsgIl8iICsgeSk7Ci0KLSAgICAgICAgICAgICAgICAgICAgdmFyIG5lc3RlZENvbnRhaW5l
ciA9IGNvbnRhaW5lcjsKLSAgICAgICAgICAgICAgICAgICAgZm9yICggOyBuZXN0ZWQgPiAwOyAt
LW5lc3RlZCkKLSAgICAgICAgICAgICAgICAgICAgICAgIG5lc3RlZENvbnRhaW5lciA9IGNyZWF0
ZUVsZW1lbnQoImRpdiIsIG5lc3RlZENvbnRhaW5lciwgIm5lc3RlZCIsICJuZXN0ZWQiICsgeCAr
ICJfIiArIG5lc3RlZCk7Ci0gICAgICAgICAgICAgICAgICAgIAotICAgICAgICAgICAgICAgICAg
ICBjcmVhdGVFbGVtZW50KCJkaXYiLCBjb250YWluZXIsICJmbG9hdC1lbmQiLCAiZW5kIiArIHgp
Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgfQotCi0gICAgICAgICAgICBmdW5jdGlv
biB0b2dnbGUoc3RyLCBzdHIxLCBzdHIyKQotICAgICAgICAgICAgewotICAgICAgICAgICAgICAg
IGlmIChzdHIgPT0gc3RyMSkKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHN0cjI7Ci0gICAg
ICAgICAgICAgICAgcmV0dXJuIHN0cjE7Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIGZ1
bmN0aW9uIHRlc3Qod2lkdGgsIGhlaWdodCwgbmVzdGVkKSAKLSAgICAgICAgICAgIHsKLSAgICAg
ICAgICAgICAgICBuZXN0ZWQgPSBuZXN0ZWQgfHwgMDsKLQotICAgICAgICAgICAgICAgIGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0X3BhbmVsIikuc3R5bGUuZGlzcGxheSA9ICJub25lIjsK
LSAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZnJhbWVyYXRlX3BhbmVs
Iikuc3R5bGUuZGlzcGxheSA9ICJibG9jayI7Ci0KLSAgICAgICAgICAgICAgICBjcmVhdGVTZXQo
d2lkdGgsIGhlaWdodCwgbmVzdGVkKTsKLSAgICAgICAgICAgICAgICB2YXIgdXBkYXRlcyA9IDA7
Ci0gICAgICAgICAgICAgICAgdmFyIHN0YXJ0VGltZSA9IG5ldyBEYXRlKCk7Ci0KLSAgICAgICAg
ICAgICAgICBmdW5jdGlvbiB1cGRhdGVUaW1lcigpCi0gICAgICAgICAgICAgICAgewotICAgICAg
ICAgICAgICAgICAgICArK3VwZGF0ZXM7Ci0KLSAgICAgICAgICAgICAgICAgICAgdmFyIG5ld1Rp
bWUgPSBuZXcgRGF0ZSgpOwotICAgICAgICAgICAgICAgICAgICB2YXIgZGVsdGFUaW1lID0gbmV3
VGltZSAtIHN0YXJ0VGltZTsKLQotICAgICAgICAgICAgICAgICAgICBpZiAoKGRlbHRhVGltZSA+
IDAgJiYgdXBkYXRlcyA+IDEwMCkgfHwgZGVsdGFUaW1lID4gMTAwMCkgewotICAgICAgICAgICAg
ICAgICAgICAgICAgdmFyIGZwcyA9IHVwZGF0ZXMgKiAxMDAgLyBkZWx0YVRpbWU7Ci0gICAgICAg
ICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZnBzIikuaW5uZXJIVE1M
ID0gZnBzOwotICAgICAgICAgICAgICAgICAgICAgICAgdXBkYXRlcyA9IDA7Ci0gICAgICAgICAg
ICAgICAgICAgICAgICBzdGFydFRpbWUgPSBuZXdUaW1lOwotICAgICAgICAgICAgICAgICAgICB9
Ci0gICAgICAgICAgICAgICAgfQotCi0gICAgICAgICAgICAgICAgZnVuY3Rpb24gdXBkYXRlKCkK
LSAgICAgICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgICAgIHZhciB4ID0gTWF0aC5mbG9v
cihNYXRoLnJhbmRvbSgpICogd2lkdGgpOwotICAgICAgICAgICAgICAgICAgICB2YXIgeSA9IE1h
dGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIGhlaWdodCk7Ci0gICAgICAgICAgICAgICAgICAgIHZh
ciBlbCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmbG9hdCIgKyB4ICsgIl8iICsgeSk7Ci0g
ICAgICAgICAgICAgICAgICAgIGVsLmNsYXNzTmFtZSA9IHRvZ2dsZShlbC5jbGFzc05hbWUsICJm
bG9hdCIsICJmbG9hdCBiaWciKTsKLSAgICAgICAgICAgICAgICAgICAgdXBkYXRlVGltZXIoKTsK
LSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgc2V0SW50ZXJ2YWwodXBkYXRlLCAw
KTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zY3JpcHQ+Ci0gICAgPC9oZWFkPgotICAgIDxi
b2R5PgotICAgICAgICA8ZGl2IGlkPSJmcmFtZXJhdGVfcGFuZWwiPkZyYW1lcmF0ZTogPHNwYW4g
aWQ9ImZwcyI+Y2FsY3VsYXRpbmcuLi48L3NwYW4+IGZwczwvZGl2PgotICAgICAgICA8ZGl2IGlk
PSJ0ZXN0X3BhbmVsIj4KLSAgICAgICAgICAgIDxwPkNob29zZSB0aGUgc2l6ZSBvZiB0aGUgdGVz
dDo8L3A+Ci0gICAgICAgICAgICA8YnV0dG9uIG9uY2xpY2s9InRlc3QoMiwgMTAwKSI+MiBieSAx
MDA8L2J1dHRvbj4KLSAgICAgICAgICAgIDxidXR0b24gb25jbGljaz0idGVzdCgyMCwgMTAwKSI+
MjAgYnkgMTAwPC9idXR0b24+Ci0gICAgICAgICAgICA8YnV0dG9uIG9uY2xpY2s9InRlc3QoNTAs
IDEwMCkiPjUwIGJ5IDEwMDwvYnV0dG9uPgotICAgICAgICAgICAgPGJ1dHRvbiBvbmNsaWNrPSJ0
ZXN0KDEwMCwgMTAwKSI+MTAwIGJ5IDEwMDwvYnV0dG9uPgotICAgICAgICAgICAgPHA+TmVzdGVk
IGRpdnM6PC9wPgotICAgICAgICAgICAgPGJ1dHRvbiBvbmNsaWNrPSJ0ZXN0KDIsIDEwMCwgMTAw
KSI+MiBieSAxMDAsIDEwMCBuZXN0ZWQ8L2J1dHRvbj4KLSAgICAgICAgICAgIDxidXR0b24gb25j
bGljaz0idGVzdCgyMCwgMTAwLCAxMDApIj4yMCBieSAxMDAsIDEwMCBuZXN0ZWQ8L2J1dHRvbj4K
LSAgICAgICAgICAgIDxidXR0b24gb25jbGljaz0idGVzdCg1MCwgMTAwLCAxMDApIj41MCBieSAx
MDAsIDEwMCBuZXN0ZWQ8L2J1dHRvbj4KLSAgICAgICAgICAgIDxidXR0b24gb25jbGljaz0idGVz
dCgxMDAsIDEwMCwgMTAwKSI+MTAwIGJ5IDEwMCwgMTAwIG5lc3RlZDwvYnV0dG9uPgotICAgICAg
ICA8L2Rpdj4KLSAgICA8L2JvZHk+Ci08L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmls
ZQpkaWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9MYXlvdXQvZmxvYXRzXzEwMF8xMDAuaHRt
bCBiL1BlcmZvcm1hbmNlVGVzdHMvTGF5b3V0L2Zsb2F0c18xMDBfMTAwLmh0bWwKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZmE3NTRlNAotLS0gL2Rldi9udWxsCisrKyBiL1Bl
cmZvcm1hbmNlVGVzdHMvTGF5b3V0L2Zsb2F0c18xMDBfMTAwLmh0bWwKQEAgLTAsMCArMSwxNSBA
QAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPHRpdGxlPkZs
b2F0cyBsYXlvdXQgcGVyZm9ybWFuY2UgdGVzdGVyIHdpdGggMiBjb2x1bW5zIGFuZCAxMDAgcm93
czwvdGl0bGU+CisgICAgICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0icmVzb3VyY2Vz
L2Zsb2F0cy5jc3MiIFRZUEU9InRleHQvY3NzIj48L2xpbms+CisgICAgICAgIDxzY3JpcHQgc3Jj
PSIuLi9yZXNvdXJjZXMvcnVubmVyLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9
InJlc291cmNlcy9mbG9hdHMuanMiPjwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8Ym9keT4K
KyAgICAgICAgPHByZSBpZD0ibG9nIj48L3ByZT4KKyAgICAgICAgPHNjcmlwdD4KKyAgICAgICAg
ICAgIHN0YXJ0KDEwLCBjcmVhdGVGbG9hdHNMYXlvdXRUZXN0RnVuY3Rpb24oMTAwLCAxMDAsIDAs
IDUpLCAxKTsKKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0t
Z2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9MYXlvdXQvZmxvYXRzXzEwMF8xMDBfbmVzdGVkLmh0bWwg
Yi9QZXJmb3JtYW5jZVRlc3RzL0xheW91dC9mbG9hdHNfMTAwXzEwMF9uZXN0ZWQuaHRtbApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kODNkYzQwCi0tLSAvZGV2L251bGwKKysr
IGIvUGVyZm9ybWFuY2VUZXN0cy9MYXlvdXQvZmxvYXRzXzEwMF8xMDBfbmVzdGVkLmh0bWwKQEAg
LTAsMCArMSwxNSBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAg
ICAgPHRpdGxlPkZsb2F0cyBsYXlvdXQgcGVyZm9ybWFuY2UgdGVzdGVyIHdpdGggMiBjb2x1bW5z
IGFuZCAxMDAgcm93czwvdGl0bGU+CisgICAgICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJl
Zj0icmVzb3VyY2VzL2Zsb2F0cy5jc3MiIFRZUEU9InRleHQvY3NzIj48L2xpbms+CisgICAgICAg
IDxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvcnVubmVyLmpzIj48L3NjcmlwdD4KKyAgICAgICAg
PHNjcmlwdCBzcmM9InJlc291cmNlcy9mbG9hdHMuanMiPjwvc2NyaXB0PgorICAgIDwvaGVhZD4K
KyAgICA8Ym9keT4KKyAgICAgICAgPHByZSBpZD0ibG9nIj48L3ByZT4KKyAgICAgICAgPHNjcmlw
dD4KKyAgICAgICAgICAgIHN0YXJ0KDEwLCBjcmVhdGVGbG9hdHNMYXlvdXRUZXN0RnVuY3Rpb24o
MTAwLCAxMDAsIDEwMCwgNSksIDEpOworICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2JvZHk+Cis8
L2h0bWw+CmRpZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3RzL0xheW91dC9mbG9hdHNfMjBfMTAw
Lmh0bWwgYi9QZXJmb3JtYW5jZVRlc3RzL0xheW91dC9mbG9hdHNfMjBfMTAwLmh0bWwKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzZjYzhkMwotLS0gL2Rldi9udWxsCisrKyBi
L1BlcmZvcm1hbmNlVGVzdHMvTGF5b3V0L2Zsb2F0c18yMF8xMDAuaHRtbApAQCAtMCwwICsxLDE1
IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8dGl0bGU+
RmxvYXRzIGxheW91dCBwZXJmb3JtYW5jZSB0ZXN0ZXIgd2l0aCAyIGNvbHVtbnMgYW5kIDEwMCBy
b3dzPC90aXRsZT4KKyAgICAgICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJyZXNvdXJj
ZXMvZmxvYXRzLmNzcyIgVFlQRT0idGV4dC9jc3MiPjwvbGluaz4KKyAgICAgICAgPHNjcmlwdCBz
cmM9Ii4uL3Jlc291cmNlcy9ydW5uZXIuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNy
Yz0icmVzb3VyY2VzL2Zsb2F0cy5qcyI+PC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxib2R5
PgorICAgICAgICA8cHJlIGlkPSJsb2ciPjwvcHJlPgorICAgICAgICA8c2NyaXB0PgorICAgICAg
ICAgICAgc3RhcnQoMTAsIGNyZWF0ZUZsb2F0c0xheW91dFRlc3RGdW5jdGlvbigyMCwgMTAwLCAw
LCAxMDApLCAxKTsKKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9ib2R5PgorPC9odG1sPgpkaWZm
IC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9MYXlvdXQvZmxvYXRzXzIwXzEwMF9uZXN0ZWQuaHRt
bCBiL1BlcmZvcm1hbmNlVGVzdHMvTGF5b3V0L2Zsb2F0c18yMF8xMDBfbmVzdGVkLmh0bWwKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzU3OGVhZAotLS0gL2Rldi9udWxsCisr
KyBiL1BlcmZvcm1hbmNlVGVzdHMvTGF5b3V0L2Zsb2F0c18yMF8xMDBfbmVzdGVkLmh0bWwKQEAg
LTAsMCArMSwxNSBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAg
ICAgPHRpdGxlPkZsb2F0cyBsYXlvdXQgcGVyZm9ybWFuY2UgdGVzdGVyIHdpdGggMiBjb2x1bW5z
IGFuZCAxMDAgcm93czwvdGl0bGU+CisgICAgICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJl
Zj0icmVzb3VyY2VzL2Zsb2F0cy5jc3MiIFRZUEU9InRleHQvY3NzIj48L2xpbms+CisgICAgICAg
IDxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvcnVubmVyLmpzIj48L3NjcmlwdD4KKyAgICAgICAg
PHNjcmlwdCBzcmM9InJlc291cmNlcy9mbG9hdHMuanMiPjwvc2NyaXB0PgorICAgIDwvaGVhZD4K
KyAgICA8Ym9keT4KKyAgICAgICAgPHByZSBpZD0ibG9nIj48L3ByZT4KKyAgICAgICAgPHNjcmlw
dD4KKyAgICAgICAgICAgIHN0YXJ0KDEwLCBjcmVhdGVGbG9hdHNMYXlvdXRUZXN0RnVuY3Rpb24o
MjAsIDEwMCwgMTAwLCAxMDApLCAxKTsKKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9ib2R5Pgor
PC9odG1sPgpkaWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9MYXlvdXQvZmxvYXRzXzJfMTAw
Lmh0bWwgYi9QZXJmb3JtYW5jZVRlc3RzL0xheW91dC9mbG9hdHNfMl8xMDAuaHRtbApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xM2M2NzBkCi0tLSAvZGV2L251bGwKKysrIGIv
UGVyZm9ybWFuY2VUZXN0cy9MYXlvdXQvZmxvYXRzXzJfMTAwLmh0bWwKQEAgLTAsMCArMSwxNSBA
QAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPHRpdGxlPkZs
b2F0cyBsYXlvdXQgcGVyZm9ybWFuY2UgdGVzdGVyIHdpdGggMiBjb2x1bW5zIGFuZCAxMDAgcm93
czwvdGl0bGU+CisgICAgICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0icmVzb3VyY2Vz
L2Zsb2F0cy5jc3MiIFRZUEU9InRleHQvY3NzIj48L2xpbms+CisgICAgICAgIDxzY3JpcHQgc3Jj
PSIuLi9yZXNvdXJjZXMvcnVubmVyLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9
InJlc291cmNlcy9mbG9hdHMuanMiPjwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8Ym9keT4K
KyAgICAgICAgPHByZSBpZD0ibG9nIj48L3ByZT4KKyAgICAgICAgPHNjcmlwdD4KKyAgICAgICAg
ICAgIHN0YXJ0KDEwLCBjcmVhdGVGbG9hdHNMYXlvdXRUZXN0RnVuY3Rpb24oMiwgMTAwLCAwLCA1
MDApLCAxKTsKKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0t
Z2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9MYXlvdXQvZmxvYXRzXzJfMTAwX25lc3RlZC5odG1sIGIv
UGVyZm9ybWFuY2VUZXN0cy9MYXlvdXQvZmxvYXRzXzJfMTAwX25lc3RlZC5odG1sCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY3YWVjZTMKLS0tIC9kZXYvbnVsbAorKysgYi9Q
ZXJmb3JtYW5jZVRlc3RzL0xheW91dC9mbG9hdHNfMl8xMDBfbmVzdGVkLmh0bWwKQEAgLTAsMCAr
MSwxNSBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPHRp
dGxlPkZsb2F0cyBsYXlvdXQgcGVyZm9ybWFuY2UgdGVzdGVyIHdpdGggMiBjb2x1bW5zIGFuZCAx
MDAgcm93czwvdGl0bGU+CisgICAgICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0icmVz
b3VyY2VzL2Zsb2F0cy5jc3MiIFRZUEU9InRleHQvY3NzIj48L2xpbms+CisgICAgICAgIDxzY3Jp
cHQgc3JjPSIuLi9yZXNvdXJjZXMvcnVubmVyLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlw
dCBzcmM9InJlc291cmNlcy9mbG9hdHMuanMiPjwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8
Ym9keT4KKyAgICAgICAgPHByZSBpZD0ibG9nIj48L3ByZT4KKyAgICAgICAgPHNjcmlwdD4KKyAg
ICAgICAgICAgIHN0YXJ0KDEwLCBjcmVhdGVGbG9hdHNMYXlvdXRUZXN0RnVuY3Rpb24oMiwgMTAw
LCAxMDAsIDUwMCksIDEpOworICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+
CmRpZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3RzL0xheW91dC9mbG9hdHNfNTBfMTAwLmh0bWwg
Yi9QZXJmb3JtYW5jZVRlc3RzL0xheW91dC9mbG9hdHNfNTBfMTAwLmh0bWwKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjYzYTAyNQotLS0gL2Rldi9udWxsCisrKyBiL1BlcmZv
cm1hbmNlVGVzdHMvTGF5b3V0L2Zsb2F0c181MF8xMDAuaHRtbApAQCAtMCwwICsxLDE1IEBACis8
IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8dGl0bGU+RmxvYXRz
IGxheW91dCBwZXJmb3JtYW5jZSB0ZXN0ZXIgd2l0aCAyIGNvbHVtbnMgYW5kIDEwMCByb3dzPC90
aXRsZT4KKyAgICAgICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJyZXNvdXJjZXMvZmxv
YXRzLmNzcyIgVFlQRT0idGV4dC9jc3MiPjwvbGluaz4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii4u
L3Jlc291cmNlcy9ydW5uZXIuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0icmVz
b3VyY2VzL2Zsb2F0cy5qcyI+PC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxib2R5PgorICAg
ICAgICA8cHJlIGlkPSJsb2ciPjwvcHJlPgorICAgICAgICA8c2NyaXB0PgorICAgICAgICAgICAg
c3RhcnQoMTAsIGNyZWF0ZUZsb2F0c0xheW91dFRlc3RGdW5jdGlvbig1MCwgMTAwLCAwLCAyMCks
IDEpOworICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQg
YS9QZXJmb3JtYW5jZVRlc3RzL0xheW91dC9mbG9hdHNfNTBfMTAwX25lc3RlZC5odG1sIGIvUGVy
Zm9ybWFuY2VUZXN0cy9MYXlvdXQvZmxvYXRzXzUwXzEwMF9uZXN0ZWQuaHRtbApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hZTI1NzU3Ci0tLSAvZGV2L251bGwKKysrIGIvUGVy
Zm9ybWFuY2VUZXN0cy9MYXlvdXQvZmxvYXRzXzUwXzEwMF9uZXN0ZWQuaHRtbApAQCAtMCwwICsx
LDE1IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8dGl0
bGU+RmxvYXRzIGxheW91dCBwZXJmb3JtYW5jZSB0ZXN0ZXIgd2l0aCAyIGNvbHVtbnMgYW5kIDEw
MCByb3dzPC90aXRsZT4KKyAgICAgICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJyZXNv
dXJjZXMvZmxvYXRzLmNzcyIgVFlQRT0idGV4dC9jc3MiPjwvbGluaz4KKyAgICAgICAgPHNjcmlw
dCBzcmM9Ii4uL3Jlc291cmNlcy9ydW5uZXIuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0
IHNyYz0icmVzb3VyY2VzL2Zsb2F0cy5qcyI+PC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxi
b2R5PgorICAgICAgICA8cHJlIGlkPSJsb2ciPjwvcHJlPgorICAgICAgICA8c2NyaXB0PgorICAg
ICAgICAgICAgc3RhcnQoMTAsIGNyZWF0ZUZsb2F0c0xheW91dFRlc3RGdW5jdGlvbig1MCwgMTAw
LCAxMDAsIDIwKSwgMSk7CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvYm9keT4KKzwvaHRtbD4K
ZGlmZiAtLWdpdCBhL1BlcmZvcm1hbmNlVGVzdHMvTGF5b3V0L3Jlc291cmNlcy9mbG9hdHMuY3Nz
IGIvUGVyZm9ybWFuY2VUZXN0cy9MYXlvdXQvcmVzb3VyY2VzL2Zsb2F0cy5jc3MKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTA5MzQyNgotLS0gL2Rldi9udWxsCisrKyBiL1Bl
cmZvcm1hbmNlVGVzdHMvTGF5b3V0L3Jlc291cmNlcy9mbG9hdHMuY3NzCkBAIC0wLDAgKzEsMTgg
QEAKKy5jb250YWluZXIgeworICAgIGRpc3BsYXk6IG5vbmU7Cit9CisKKy5mbG9hdCB7CisgICAg
ZmxvYXQ6IGxlZnQ7CisgICAgd2lkdGg6IDVweDsKKyAgICBoZWlnaHQ6IDVweDsKKyAgICBib3Jk
ZXI6IDFweCBzb2xpZCBncmVlbjsKK30KKworLmJpZyB7CisgICAgd2lkdGg6IDEwcHg7Cit9CisK
Ky5mbG9hdC1lbmQgeworICAgIGNsZWFyOmxlZnQ7Cit9ClwgTm8gbmV3bGluZSBhdCBlbmQgb2Yg
ZmlsZQpkaWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9MYXlvdXQvcmVzb3VyY2VzL2Zsb2F0
cy5qcyBiL1BlcmZvcm1hbmNlVGVzdHMvTGF5b3V0L3Jlc291cmNlcy9mbG9hdHMuanMKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzI2YTkzNwotLS0gL2Rldi9udWxsCisrKyBi
L1BlcmZvcm1hbmNlVGVzdHMvTGF5b3V0L3Jlc291cmNlcy9mbG9hdHMuanMKQEAgLTAsMCArMSw3
NiBAQAorKGZ1bmN0aW9uKCkgeworICAgIAorICAgIC8vIFByZWdlbmVyYXRlZCByYW5kb20gdmFs
dWVzLCBzbyB0aGF0IHdlIGdldCBhbG1vc3QgdGhlIHNhbWUgcmVzdWx0cyBmb3IgZXZlcnkgcnVu
LgorICAgIC8vIFRvIGdlbmVyYXRlIGl0IGFnYWluIHJ1biB0aGlzIGluIHRoZSBXZWJJbnNwZWN0
b3I6IAorICAgIC8vIHZhciBybmQgPSBbXTsgZm9yKHZhciBpPTA7IGkgPCAxMDA7IGkrKykgcm5k
LnB1c2goTWF0aC5yYW5kb20oKSk7IHJuZDsKKyAgICB2YXIgZ2VuZXJhdGVkUmFuZG9tID0gWzAu
NjAyMDI4Njg1NjIxOTE3MiwgMC45NjQxOTA5Njg1NDUxNTM3LCAwLjczOTQ1NDY3OTQyMzk0MzIs
IDAuNDMzMzY3MzgxMTA1MTk5NDYsIDAuNzg2ODY0ODE0MzQ4NTE4OCwgMC44NTMxMjQxMzkzNjQ4
MDg4LCAwLjM5NTcwMjM4MTg1MTE1MTYsIDAuMDk5NTA2ODg5OTM1NTgyODgsIDAuNjIzNjE1ODQ5
NzYzMTU1LCAwLjcxMDA4NDE2MTcyMTE3LCAwLjM5MzM2Mzg2MTU5OTkzNzEsIDAuOTgxMzQ4NDQ2
MzM3NTA2MiwgMC43MzA3NDAyNjUyMjIyNjYzLCAwLjM2OTE0MTQyNTIzODkyMjI0LCAwLjA3NTQx
MDM2OTc4MzYzOTkxLCAwLjU2MjUwNDkxMzg5MDczNDMsIDAuMTA3NjY5MjQxNzI2Mzk4NDcsIDAu
ODQwODc2MjExODc3OTEyMywgMC40MjYwODQ5NTM4MjU5MjA4LCAwLjAyNTI0MzY4NzQ0MzQzNTE5
MiwgMC4yMjM3NjU4NDA3NTM5MTI5MywgMC40MDEyMDEwNzMzMTMxMzE5MywgMC42NDkxNDE1MzA5
NzE5NzQxLCAwLjc3ODU5NjA4ODk4ODcwNjUsIDAuNjUxMzAwNTc0MTg3MTg5MywgMC42ODU4OTY2
NDQ4MzQ0MjksIDAuMzk1NTM5MzIxNzAzODM2MywgMC4zMzQzNzAxNDA2ODQ3Njg1NiwgMC43NTE1
MjMxMDAzMDUzNDg2LCAwLjA2OTQ0MzU4MDY5NDQ5NjYzLCAwLjU3OTI2MDc3NzkxNDg5NjYsIDAu
ODgxOTcwODI3MDAyMDc4MywgMC41MjQwMDkyOTk2OTczNTQ0LCAwLjYyNjc2MDI0MTgwODM2OTgs
IDAuMjIwNTU1MDU4NjgwNDc0NzYsIDAuMTU1MzM5Nzk2MDk2MDg2NSwgMC42NTE4Njc2NjQxODYy
ODQsIDAuNjE5NTAzODUyOTExMjkzNSwgMC44MTQ4OTA2NTI2NjIxNDMxLCAwLjMxMzUzOTI3MDMx
MTU5NCwgMC40MTMzMDE2OTgzOTc4NDUwMywgMC4xNTQxNjAxNDEyNDYzOTMzMiwgMC45NTczMjg2
MTc1NzI3ODQ0LCAwLjIxMzU1Mzg0MjM4OTk1NjEyLCAwLjkxODgwMDA3MTM0NzUwNDksIDAuNDA5
MDUyOTE4MTk5NDQ5OCwgMC4zMjE5NDIzMTQ3Mzg0MDc3MywgMC44NjIzNTg5Mzk2MDExMDg0LCAw
LjUxMjE0OTM0MDcwNTk0NjEsIDAuNjk2MzM0ODM5MzMyODQ4OCwgMC42NTQwMzM2ODkwNjExNzk4
LCAwLjIyMzkxOTUwMTA2MjQ4MjYsIDAuODA3MTM3ODA4MDYzOTk4OCwgMC4yODE5MDk2NTM5MTY5
NTUsIDAuMjY5ODUyNjA1MTgyNjc3NSwgMC4zNDA1MzQ0MTQ4NjMyMTM5LCAwLjM2MTI3NzE4OTU3
MTQxMDQsIDAuMjA4Nzg4NTA4MDgzNjcxMzMsIDAuNjg5ODc5MzUyOTI1MzQ1MywgMC4yNTQyOTA3
MTk1MTY1NzUzNCwgMC4zMzI3NzE3MjU5NTI2MjUzLCAwLjc4NDE0ODAxNDYxNjIyMTIsIDAuNTQy
OTY4MzM0Mzk3MzAxMSwgMC4wNjIyMjQ3MDA1ODEyODIzOCwgMC4zNTg2Mjc0OTI1NjE5MzY0LCAw
Ljk4ODQ2NzQxMjc2NzkzMTgsIDAuNDE5NzU4MDU3OTIwMjYyMiwgMC41NjM2NjYwODE5ODczMjE0
LCAwLjM5NDI5OTU4NjA3MDcwMTUsIDAuMDg4MTgzMTU1NTE2MTYyNTEsIDAuNjY2MjE5NTkwOTMw
MjY4MiwgMC4xMTMzOTc0MTI3MDA1Nzg1NywgMC45ODYzOTcxNjY1MDM1OTMzLCAwLjU3MDc2ODM4
ODY4NjcwMTcsIDAuNjIzNjQzMjA2NjY1MjkyNCwgMC4yODM4MTU5MDgyNDU3NDIzLCAwLjgzODQ0
MzAyMzE1MjY0OTQsIDAuNTE0ODY4NzMzMDA3NDYwOCwgMC45NzE3MzU0NDI5ODg1NzQ1LCAwLjY2
MzI5Mjc5ODIxMzY2MDcsIDAuOTE5NDE3NDg2MjkzMjQxNCwgMC40MDg1MjIyMTE5NDY1NDcwMywg
MC41MzkxNDYwNzY4ODc4NDYsIDAuODA5MTczNDE5MzczMTA5OSwgMC43MzIyMDAzMzMzODI5MzQz
LCAwLjI1MTczODYzMzk2MDQ4NTQ2LCAwLjA4Mzg4ODA4NDE2MjAyNjY0LCAwLjgzNDYyMzg5Nzkx
Mzg0MzQsIDAuOTYyMjgzNjAxNzUxNTUxLCAwLjI1NDMwMDI3NTExOTAyMTUzLCAwLjg1MTA4OTU2
NTc4MTg3NjQsIDAuMTYzNjM1Mzg5NDEzNjg0NiwgMC44NTYzNDk2OTgwMzUwNDY1LCAwLjE2OTA1
MjAxMTEwMDU3NTMzLCAwLjA0OTQyMDUzODEyNTU1OTY5LCAwLjgwOTA5NTUzNDQ5NjAwOTMsIDAu
MjcxMjE2NzU5OTIzODQ1NTMsIDAuNDQyMjIxMzI2Mjg3ODM1ODQsIDAuMjgwMjg3NzEzMjc4MDg1
LCAwLjI0MDE3MzEzODIxMjQxMjZdOworICAgIHZhciBuZXh0UmFuZG9tSW5kZXggPSAwOworICAg
IAorICAgIGZ1bmN0aW9uIG5leHRSYW5kb20oKSB7CisgICAgICAgIHZhciB2YWx1ZSA9IGdlbmVy
YXRlZFJhbmRvbVtuZXh0UmFuZG9tSW5kZXhdOworICAgICAgICBuZXh0UmFuZG9tSW5kZXggPSAo
bmV4dFJhbmRvbUluZGV4ICsgMSkgJSBnZW5lcmF0ZWRSYW5kb20ubGVuZ3RoOworICAgICAgICBy
ZXR1cm4gdmFsdWU7CisgICAgfQorICAgIAorICAgIGZ1bmN0aW9uIGNyZWF0ZUVsZW1lbnQodGFn
LCBwYXJlbnQsIGNsYXNzTmFtZSwgaWQpCisgICAgeworICAgICAgICB2YXIgZWwgPSBkb2N1bWVu
dC5jcmVhdGVFbGVtZW50KHRhZyk7CisgICAgICAgIGVsLmNsYXNzTmFtZSA9IGNsYXNzTmFtZTsK
KyAgICAgICAgaWYgKGlkKQorICAgICAgICAgICAgZWwuaWQgPSBpZDsKKyAgICAgICAgcGFyZW50
LmFwcGVuZENoaWxkKGVsKTsKKyAgICAgICAgcmV0dXJuIGVsOworICAgIH0KKworICAgIGZ1bmN0
aW9uIGNyZWF0ZVNldCh3aWR0aCwgaGVpZ2h0LCBuZXN0ZWQpCisgICAgeworICAgICAgICB2YXIg
Y29udGFpbmVyID0gY3JlYXRlRWxlbWVudCgiZGl2IiwgZG9jdW1lbnQuYm9keSwgImNvbnRhaW5l
ciIpOworICAgICAgICBmb3IgKHZhciB5ID0gMDsgeSA8IGhlaWdodDsgKyt5KSB7CisgICAgICAg
ICAgICBmb3IgKHZhciB4ID0gMDsgeCA8IHdpZHRoOyArK3gpCisgICAgICAgICAgICAgICAgY3Jl
YXRlRWxlbWVudCgiZGl2IiwgY29udGFpbmVyLCAiZmxvYXQiLCAiZmxvYXQiICsgeCArICJfIiAr
IHkpOworCisgICAgICAgICAgICB2YXIgbmVzdGVkQ29udGFpbmVyID0gY29udGFpbmVyOworICAg
ICAgICAgICAgZm9yICggOyBuZXN0ZWQgPiAwOyAtLW5lc3RlZCkKKyAgICAgICAgICAgICAgICBu
ZXN0ZWRDb250YWluZXIgPSBjcmVhdGVFbGVtZW50KCJkaXYiLCBuZXN0ZWRDb250YWluZXIsICJu
ZXN0ZWQiLCAibmVzdGVkIiArIHggKyAiXyIgKyBuZXN0ZWQpOworICAgICAgICAgICAgCisgICAg
ICAgICAgICBjcmVhdGVFbGVtZW50KCJkaXYiLCBjb250YWluZXIsICJmbG9hdC1lbmQiLCAiZW5k
IiArIHgpCisgICAgICAgIH0KKyAgICAgICAgcmV0dXJuIGNvbnRhaW5lcjsKKyAgICB9CisKKyAg
ICBmdW5jdGlvbiB0b2dnbGUoc3RyLCBzdHIxLCBzdHIyKQorICAgIHsKKyAgICAgICAgcmV0dXJu
IHN0ciA9PSBzdHIxID8gc3RyMiA6IHN0cjE7CisgICAgfQorICAgIAorICAgIGZ1bmN0aW9uIHJl
c2V0VGVzdCgpCisgICAgeworICAgICAgICBuZXh0UmFuZG9tSW5kZXggPSAwOworICAgICAgICB2
YXIgbGlzdCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5mbG9hdC5iaWciKTsKKyAgICAg
ICAgZm9yICh2YXIgaSA9IDA7IGkgPCBsaXN0Lmxlbmd0aDsgKytpKQorICAgICAgICAgICAgbGlz
dFtpXS5jbGFzc05hbWUgPSAiZmxvYXQiOworICAgIH0KKyAgICAKKyAgICBmdW5jdGlvbiBjcmVh
dGVUZXN0RnVuY3Rpb24od2lkdGgsIGhlaWdodCwgbmVzdGVkLCBydW5zKQorICAgIHsKKyAgICAg
ICAgdmFyIGNvbnRhaW5lciA9IGNyZWF0ZVNldCh3aWR0aCwgaGVpZ2h0LCBuZXN0ZWQpOworICAg
ICAgICBuZXN0ZWQgPSBuZXN0ZWQgfHwgMDsKKyAgICAgICAgcnVucyA9IHJ1bnMgfHwgMTA7Cisg
ICAgICAgIHJldHVybiBmdW5jdGlvbigpIAorICAgICAgICB7CisgICAgICAgICAgICBjb250YWlu
ZXIuc3R5bGUuZGlzcGxheSA9ICJibG9jayI7CisgICAgICAgICAgICBmb3IgKHZhciBpID0gMDsg
aSA8IHJ1bnM7ICsraSkgeworICAgICAgICAgICAgICAgIHZhciB4ID0gTWF0aC5mbG9vcihuZXh0
UmFuZG9tKCkgKiB3aWR0aCk7CisgICAgICAgICAgICAgICAgdmFyIHkgPSBNYXRoLmZsb29yKG5l
eHRSYW5kb20oKSAqIGhlaWdodCk7CisgICAgICAgICAgICAgICAgdmFyIGVsID0gZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoImZsb2F0IiArIHggKyAiXyIgKyB5KTsKKyAgICAgICAgICAgICAgICBl
bC5jbGFzc05hbWUgPSB0b2dnbGUoZWwuY2xhc3NOYW1lLCAiZmxvYXQiLCAiZmxvYXQgYmlnIik7
CisgICAgICAgICAgICAgICAgLy8gRm9yY2UgYSBsYXlvdXQuCisgICAgICAgICAgICAgICAgY29u
dGFpbmVyLmNsaWVudEhlaWdodDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIHJlc2V0VGVz
dCgpOworICAgICAgICAgICAgY29udGFpbmVyLnN0eWxlLmRpc3BsYXkgPSAibm9uZSI7CisgICAg
ICAgIH0KKyAgICB9CisgICAgCisgICAgd2luZG93LmNyZWF0ZUZsb2F0c0xheW91dFRlc3RGdW5j
dGlvbiA9IGNyZWF0ZVRlc3RGdW5jdGlvbjsKK30pKCk7CmRpZmYgLS1naXQgYS9QZXJmb3JtYW5j
ZVRlc3RzL1NraXBwZWQgYi9QZXJmb3JtYW5jZVRlc3RzL1NraXBwZWQKaW5kZXggYTUyMmM1YS4u
YmJkYzM2ZCAxMDA2NDQKLS0tIGEvUGVyZm9ybWFuY2VUZXN0cy9Ta2lwcGVkCisrKyBiL1BlcmZv
cm1hbmNlVGVzdHMvU2tpcHBlZApAQCAtMiw3ICsyLDYgQEAKIE11dGF0aW9uCiAKICMgRG8gbm90
IGNvbmZvcm0gdG8gV2ViS2l0IG9yIENocm9taXVtIHBlcmYgdGVzdCBzdHlsZXMKLUxheW91dAog
UGFnZUxvYWQKIFN1blNwaWRlcgogWFNTQXVkaXRvcgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>124527</attachid>
            <date>2012-01-30 05:08:37 -0800</date>
            <delta_ts>2012-03-14 17:56:30 -0700</delta_ts>
            <desc>Patch V2</desc>
            <filename>bug77051_1.patch</filename>
            <type>text/plain</type>
            <size>17417</size>
            <attacher name="Alexandru Chiculita">achicu</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1BlcmZvcm1hbmNlVGVzdHMvQ2hhbmdlTG9nIGIvUGVyZm9ybWFuY2VUZXN0
cy9DaGFuZ2VMb2cKaW5kZXggYzNhMmM4NC4uOTVlYjAzNSAxMDA2NDQKLS0tIGEvUGVyZm9ybWFu
Y2VUZXN0cy9DaGFuZ2VMb2cKKysrIGIvUGVyZm9ybWFuY2VUZXN0cy9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0MCBAQAorMjAxMi0wMS0zMCAgQWxleGFuZHJ1IENoaWN1bGl0YSAgPGFjaGljdUBhZG9i
ZS5jb20+CisKKyAgICAgICAgTGF5b3V0L2Zsb2F0cy5odG1sIHNob3VsZCBiZSBydW5uYWJsZSBi
eSBydW4tcGVyZi10ZXN0cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9NzcwNTEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBJJ3ZlIHNwbGl0IExheW91dC9mbG9hdHMuaHRtbCBpbnRvIG11bHRpcGxlIHRlc3Rz
IGZvciBlYWNoIGJ1dHRvbiBpbiB0aGUgb3JpZ2luYWwgbWFudWFsIHRlc3QuCisgICAgICAgIFNv
bWUgdGVzdHMgdGFrZSBsb25nZXIgdG8gcnVuIGFuZCBJJ3ZlIGNoYW5nZWQgdGhlIG51bWJlciBv
ZiBpdGVyYXRpb25zLCBzbyB0aGF0IGVhY2ggdGVzdHMgZmluaXNoZXMgdW5kZXIgMXMgcGVyIHJ1
bi4KKworICAgICAgICAqIERPTS9yZXNvdXJjZXMvZG9tLXBlcmYuanM6CisgICAgICAgICAgICBN
b3ZlZCBNYXRoLnJhbmRvbSB0byBydW5uZXIuanMuCisgICAgICAgICogTGF5b3V0L2Zsb2F0cy5o
dG1sOiBSZW1vdmVkLgorICAgICAgICAqIExheW91dC9mbG9hdHNfMTAwXzEwMC5odG1sOiBBZGRl
ZC4KKyAgICAgICAgKiBMYXlvdXQvZmxvYXRzXzEwMF8xMDBfbmVzdGVkLmh0bWw6IEFkZGVkLgor
ICAgICAgICAqIExheW91dC9mbG9hdHNfMjBfMTAwLmh0bWw6IEFkZGVkLgorICAgICAgICAqIExh
eW91dC9mbG9hdHNfMjBfMTAwX25lc3RlZC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBMYXlvdXQv
ZmxvYXRzXzJfMTAwLmh0bWw6IEFkZGVkLgorICAgICAgICAqIExheW91dC9mbG9hdHNfMl8xMDBf
bmVzdGVkLmh0bWw6IEFkZGVkLgorICAgICAgICAqIExheW91dC9mbG9hdHNfNTBfMTAwLmh0bWw6
IEFkZGVkLgorICAgICAgICAqIExheW91dC9mbG9hdHNfNTBfMTAwX25lc3RlZC5odG1sOiBBZGRl
ZC4KKyAgICAgICAgKiBMYXlvdXQvcmVzb3VyY2VzL2Zsb2F0cy5jc3M6IEFkZGVkLgorICAgICAg
ICAoLmNvbnRhaW5lcik6CisgICAgICAgICguZmxvYXQpOgorICAgICAgICAoLmJpZyk6CisgICAg
ICAgICguZmxvYXQtZW5kKToKKyAgICAgICAgKiBMYXlvdXQvcmVzb3VyY2VzL2Zsb2F0cy5qczog
QWRkZWQuCisgICAgICAgICAgICBFeHRyYWN0ZWQgdGhlIHNjcmlwdCBmcm9tIG9sZCBmbG9hdHMu
aHRtbC4KKyAgICAgICAgKiBTa2lwcGVkOgorICAgICAgICAqIHJlc291cmNlcy9ydW5uZXIuanM6
CisgICAgICAgIChyZXNldFJhbmRvbVNlZWQpOgorICAgICAgICAoTWF0aC5yYW5kb20pOgorICAg
ICAgICAgICAgTW92ZWQgdGhlIE1hdGgucmFuZG9tIHRvIHJ1bm5lci5qcyB0byBiZSB1c2VkIGJ5
IGFsbCB0ZXN0cy4KKyAgICAgICAgICAgIEFkZGVkIHJlc2V0UmFuZG9tU2VlZCB0byBicmluZyB0
aGUgcmFuZG9taXplciBiYWNrIHRvIGluaXRpYWwgc2VlZC4KKyAgICAgICAgICAgIEl0IGlzIHVz
ZWZ1bCB0byBnZXQgdGhlIHNhbWUgcmVzdWx0cyBhdCBldmVyeSBydW4gYW5kIG1pbmltaXplIHRo
ZQorICAgICAgICAgICAgZGlmZmVyZW5jZXMgYmV0d2VlbiBydW5zLgorCiAyMDEyLTAxLTI5ICBS
eW9zdWtlIE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgogCiAgICAgICAgIERPTS9ET01EaXZXYWxr
Lmh0bWwgcmVzdWx0IGlzIHVucmVsaWFibGUKZGlmZiAtLWdpdCBhL1BlcmZvcm1hbmNlVGVzdHMv
RE9NL3Jlc291cmNlcy9kb20tcGVyZi5qcyBiL1BlcmZvcm1hbmNlVGVzdHMvRE9NL3Jlc291cmNl
cy9kb20tcGVyZi5qcwppbmRleCBjODkyODM2Li5kOTNmMWY1IDEwMDY0NAotLS0gYS9QZXJmb3Jt
YW5jZVRlc3RzL0RPTS9yZXNvdXJjZXMvZG9tLXBlcmYuanMKKysrIGIvUGVyZm9ybWFuY2VUZXN0
cy9ET00vcmVzb3VyY2VzL2RvbS1wZXJmLmpzCkBAIC0xMTUsMjIgKzExNSw2IEBAIGZ1bmN0aW9u
IEdldFByb2ZpbGVyKCkgewogICAgIHJldHVybiBuZXcgUHNldWRvUHJvZmlsZXIoKTsKIH0KIAot
Ly8gVG8gbWFrZSB0aGUgYmVuY2htYXJrIHJlc3VsdHMgcHJlZGljdGFibGUsIHdlIHJlcGxhY2Ug
TWF0aC5yYW5kb20gd2l0aCBhCi0vLyAxMDAlIGRldGVybWluaXN0aWMgYWx0ZXJuYXRpdmUuCi1N
YXRoLnJhbmRvbSA9IChmdW5jdGlvbigpIHsKLSAgICB2YXIgc2VlZCA9IDQ5NzM0MzIxOwotICAg
IHJldHVybiBmdW5jdGlvbigpIHsKLSAgICAgICAgLy8gUm9iZXJ0IEplbmtpbnMnIDMyIGJpdCBp
bnRlZ2VyIGhhc2ggZnVuY3Rpb24uCi0gICAgICAgIHNlZWQgPSAoKHNlZWQgKyAweDdlZDU1ZDE2
KSArIChzZWVkIDw8IDEyKSkgICYgMHhmZmZmZmZmZjsKLSAgICAgICAgc2VlZCA9ICgoc2VlZCBe
IDB4Yzc2MWMyM2MpIF4gKHNlZWQgPj4+IDE5KSkgJiAweGZmZmZmZmZmOwotICAgICAgICBzZWVk
ID0gKChzZWVkICsgMHgxNjU2NjdiMSkgKyAoc2VlZCA8PCA1KSkgICAmIDB4ZmZmZmZmZmY7Ci0g
ICAgICAgIHNlZWQgPSAoKHNlZWQgKyAweGQzYTI2NDZjKSBeIChzZWVkIDw8IDkpKSAgICYgMHhm
ZmZmZmZmZjsKLSAgICAgICAgc2VlZCA9ICgoc2VlZCArIDB4ZmQ3MDQ2YzUpICsgKHNlZWQgPDwg
MykpICAgJiAweGZmZmZmZmZmOwotICAgICAgICBzZWVkID0gKChzZWVkIF4gMHhiNTVhNGYwOSkg
XiAoc2VlZCA+Pj4gMTYpKSAmIDB4ZmZmZmZmZmY7Ci0gICAgICAgIHJldHVybiAoc2VlZCAmIDB4
ZmZmZmZmZikgLyAweDEwMDAwMDAwOwotICAgIH07Ci19KSgpOwotCiBmdW5jdGlvbiBCZW5jaG1h
cmsobmFtZSwgcnVuLCBvcHRfc2V0dXAsIG9wdF9jbGVhbnVwLCBvcHRfc2hhcmVTZXR1cCkgewog
ICAgIHRoaXMubmFtZSA9IG5hbWU7CiAgICAgdGhpcy50aW1lVG9SdW4gPSA1MDA7IC8vIG1zCmRp
ZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3RzL0xheW91dC9mbG9hdHMuaHRtbCBiL1BlcmZvcm1h
bmNlVGVzdHMvTGF5b3V0L2Zsb2F0cy5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCA1MmY5NWJhLi4wMDAwMDAwCi0tLSBhL1BlcmZvcm1hbmNlVGVzdHMvTGF5b3V0L2Zsb2F0cy5o
dG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTA4ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPGh0
bWw+Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDx0aXRsZT5GbG9hdHMgbGF5b3V0IHBlcmZvcm1hbmNl
IHRlc3RlcjwvdGl0bGU+Ci0gICAgICAgIDxzdHlsZT4KLSAgICAgICAgICAgIC5mbG9hdCB7Ci0g
ICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7Ci0gICAgICAgICAgICAgICAgd2lkdGg6IDVweDsK
LSAgICAgICAgICAgICAgICBoZWlnaHQ6IDVweDsKLSAgICAgICAgICAgICAgICBib3JkZXI6IDFw
eCBzb2xpZCBncmVlbjsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIC5iaWcgewotICAgICAg
ICAgICAgICAgIHdpZHRoOiAxMHB4OwotICAgICAgICAgICAgfQotICAgICAgICAgICAgLmZsb2F0
LWVuZCB7Ci0gICAgICAgICAgICAgICAgY2xlYXI6bGVmdDsKLSAgICAgICAgICAgIH0KLQotICAg
ICAgICAgICAgI2ZyYW1lcmF0ZV9wYW5lbCB7Ci0gICAgICAgICAgICAgICAgZGlzcGxheTogbm9u
ZTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICAgICAgPHNjcmlwdD4KLSAg
ICAgICAgICAgIGZ1bmN0aW9uIGNyZWF0ZUVsZW1lbnQodGFnLCBwYXJlbnQsIGNsYXNzTmFtZSwg
aWQpCi0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgdmFyIGVsID0gZG9jdW1lbnQuY3Jl
YXRlRWxlbWVudCh0YWcpOwotICAgICAgICAgICAgICAgIGVsLmNsYXNzTmFtZSA9IGNsYXNzTmFt
ZTsKLSAgICAgICAgICAgICAgICBlbC5pZCA9IGlkOwotICAgICAgICAgICAgICAgIHBhcmVudC5h
cHBlbmRDaGlsZChlbCk7Ci0gICAgICAgICAgICAgICAgcmV0dXJuIGVsOwotICAgICAgICAgICAg
fQotCi0gICAgICAgICAgICBmdW5jdGlvbiBjcmVhdGVTZXQod2lkdGgsIGhlaWdodCwgbmVzdGVk
KQotICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIHZhciBjb250YWluZXIgPSBjcmVhdGVF
bGVtZW50KCJkaXYiLCBkb2N1bWVudC5ib2R5LCAiY29udGFpbmVyIik7Ci0gICAgICAgICAgICAg
ICAgZm9yICh2YXIgeSA9IDA7IHkgPCBoZWlnaHQ7ICsreSkgewotICAgICAgICAgICAgICAgICAg
ICBmb3IgKHZhciB4ID0gMDsgeCA8IHdpZHRoOyArK3gpCi0gICAgICAgICAgICAgICAgICAgICAg
ICBjcmVhdGVFbGVtZW50KCJkaXYiLCBjb250YWluZXIsICJmbG9hdCIsICJmbG9hdCIgKyB4ICsg
Il8iICsgeSk7Ci0KLSAgICAgICAgICAgICAgICAgICAgdmFyIG5lc3RlZENvbnRhaW5lciA9IGNv
bnRhaW5lcjsKLSAgICAgICAgICAgICAgICAgICAgZm9yICggOyBuZXN0ZWQgPiAwOyAtLW5lc3Rl
ZCkKLSAgICAgICAgICAgICAgICAgICAgICAgIG5lc3RlZENvbnRhaW5lciA9IGNyZWF0ZUVsZW1l
bnQoImRpdiIsIG5lc3RlZENvbnRhaW5lciwgIm5lc3RlZCIsICJuZXN0ZWQiICsgeCArICJfIiAr
IG5lc3RlZCk7Ci0gICAgICAgICAgICAgICAgICAgIAotICAgICAgICAgICAgICAgICAgICBjcmVh
dGVFbGVtZW50KCJkaXYiLCBjb250YWluZXIsICJmbG9hdC1lbmQiLCAiZW5kIiArIHgpCi0gICAg
ICAgICAgICAgICAgfQotICAgICAgICAgICAgfQotCi0gICAgICAgICAgICBmdW5jdGlvbiB0b2dn
bGUoc3RyLCBzdHIxLCBzdHIyKQotICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIGlmIChz
dHIgPT0gc3RyMSkKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHN0cjI7Ci0gICAgICAgICAg
ICAgICAgcmV0dXJuIHN0cjE7Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIGZ1bmN0aW9u
IHRlc3Qod2lkdGgsIGhlaWdodCwgbmVzdGVkKSAKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAg
ICAgICBuZXN0ZWQgPSBuZXN0ZWQgfHwgMDsKLQotICAgICAgICAgICAgICAgIGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJ0ZXN0X3BhbmVsIikuc3R5bGUuZGlzcGxheSA9ICJub25lIjsKLSAgICAg
ICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZnJhbWVyYXRlX3BhbmVsIikuc3R5
bGUuZGlzcGxheSA9ICJibG9jayI7Ci0KLSAgICAgICAgICAgICAgICBjcmVhdGVTZXQod2lkdGgs
IGhlaWdodCwgbmVzdGVkKTsKLSAgICAgICAgICAgICAgICB2YXIgdXBkYXRlcyA9IDA7Ci0gICAg
ICAgICAgICAgICAgdmFyIHN0YXJ0VGltZSA9IG5ldyBEYXRlKCk7Ci0KLSAgICAgICAgICAgICAg
ICBmdW5jdGlvbiB1cGRhdGVUaW1lcigpCi0gICAgICAgICAgICAgICAgewotICAgICAgICAgICAg
ICAgICAgICArK3VwZGF0ZXM7Ci0KLSAgICAgICAgICAgICAgICAgICAgdmFyIG5ld1RpbWUgPSBu
ZXcgRGF0ZSgpOwotICAgICAgICAgICAgICAgICAgICB2YXIgZGVsdGFUaW1lID0gbmV3VGltZSAt
IHN0YXJ0VGltZTsKLQotICAgICAgICAgICAgICAgICAgICBpZiAoKGRlbHRhVGltZSA+IDAgJiYg
dXBkYXRlcyA+IDEwMCkgfHwgZGVsdGFUaW1lID4gMTAwMCkgewotICAgICAgICAgICAgICAgICAg
ICAgICAgdmFyIGZwcyA9IHVwZGF0ZXMgKiAxMDAgLyBkZWx0YVRpbWU7Ci0gICAgICAgICAgICAg
ICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZnBzIikuaW5uZXJIVE1MID0gZnBz
OwotICAgICAgICAgICAgICAgICAgICAgICAgdXBkYXRlcyA9IDA7Ci0gICAgICAgICAgICAgICAg
ICAgICAgICBzdGFydFRpbWUgPSBuZXdUaW1lOwotICAgICAgICAgICAgICAgICAgICB9Ci0gICAg
ICAgICAgICAgICAgfQotCi0gICAgICAgICAgICAgICAgZnVuY3Rpb24gdXBkYXRlKCkKLSAgICAg
ICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgICAgIHZhciB4ID0gTWF0aC5mbG9vcihNYXRo
LnJhbmRvbSgpICogd2lkdGgpOwotICAgICAgICAgICAgICAgICAgICB2YXIgeSA9IE1hdGguZmxv
b3IoTWF0aC5yYW5kb20oKSAqIGhlaWdodCk7Ci0gICAgICAgICAgICAgICAgICAgIHZhciBlbCA9
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmbG9hdCIgKyB4ICsgIl8iICsgeSk7Ci0gICAgICAg
ICAgICAgICAgICAgIGVsLmNsYXNzTmFtZSA9IHRvZ2dsZShlbC5jbGFzc05hbWUsICJmbG9hdCIs
ICJmbG9hdCBiaWciKTsKLSAgICAgICAgICAgICAgICAgICAgdXBkYXRlVGltZXIoKTsKLSAgICAg
ICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgc2V0SW50ZXJ2YWwodXBkYXRlLCAwKTsKLSAg
ICAgICAgICAgIH0KLSAgICAgICAgPC9zY3JpcHQ+Ci0gICAgPC9oZWFkPgotICAgIDxib2R5Pgot
ICAgICAgICA8ZGl2IGlkPSJmcmFtZXJhdGVfcGFuZWwiPkZyYW1lcmF0ZTogPHNwYW4gaWQ9ImZw
cyI+Y2FsY3VsYXRpbmcuLi48L3NwYW4+IGZwczwvZGl2PgotICAgICAgICA8ZGl2IGlkPSJ0ZXN0
X3BhbmVsIj4KLSAgICAgICAgICAgIDxwPkNob29zZSB0aGUgc2l6ZSBvZiB0aGUgdGVzdDo8L3A+
Ci0gICAgICAgICAgICA8YnV0dG9uIG9uY2xpY2s9InRlc3QoMiwgMTAwKSI+MiBieSAxMDA8L2J1
dHRvbj4KLSAgICAgICAgICAgIDxidXR0b24gb25jbGljaz0idGVzdCgyMCwgMTAwKSI+MjAgYnkg
MTAwPC9idXR0b24+Ci0gICAgICAgICAgICA8YnV0dG9uIG9uY2xpY2s9InRlc3QoNTAsIDEwMCki
PjUwIGJ5IDEwMDwvYnV0dG9uPgotICAgICAgICAgICAgPGJ1dHRvbiBvbmNsaWNrPSJ0ZXN0KDEw
MCwgMTAwKSI+MTAwIGJ5IDEwMDwvYnV0dG9uPgotICAgICAgICAgICAgPHA+TmVzdGVkIGRpdnM6
PC9wPgotICAgICAgICAgICAgPGJ1dHRvbiBvbmNsaWNrPSJ0ZXN0KDIsIDEwMCwgMTAwKSI+MiBi
eSAxMDAsIDEwMCBuZXN0ZWQ8L2J1dHRvbj4KLSAgICAgICAgICAgIDxidXR0b24gb25jbGljaz0i
dGVzdCgyMCwgMTAwLCAxMDApIj4yMCBieSAxMDAsIDEwMCBuZXN0ZWQ8L2J1dHRvbj4KLSAgICAg
ICAgICAgIDxidXR0b24gb25jbGljaz0idGVzdCg1MCwgMTAwLCAxMDApIj41MCBieSAxMDAsIDEw
MCBuZXN0ZWQ8L2J1dHRvbj4KLSAgICAgICAgICAgIDxidXR0b24gb25jbGljaz0idGVzdCgxMDAs
IDEwMCwgMTAwKSI+MTAwIGJ5IDEwMCwgMTAwIG5lc3RlZDwvYnV0dG9uPgotICAgICAgICA8L2Rp
dj4KLSAgICA8L2JvZHk+Ci08L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZm
IC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9MYXlvdXQvZmxvYXRzXzEwMF8xMDAuaHRtbCBiL1Bl
cmZvcm1hbmNlVGVzdHMvTGF5b3V0L2Zsb2F0c18xMDBfMTAwLmh0bWwKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMC4uZmE3NTRlNAotLS0gL2Rldi9udWxsCisrKyBiL1BlcmZvcm1h
bmNlVGVzdHMvTGF5b3V0L2Zsb2F0c18xMDBfMTAwLmh0bWwKQEAgLTAsMCArMSwxNSBAQAorPCFE
T0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPHRpdGxlPkZsb2F0cyBs
YXlvdXQgcGVyZm9ybWFuY2UgdGVzdGVyIHdpdGggMiBjb2x1bW5zIGFuZCAxMDAgcm93czwvdGl0
bGU+CisgICAgICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0icmVzb3VyY2VzL2Zsb2F0
cy5jc3MiIFRZUEU9InRleHQvY3NzIj48L2xpbms+CisgICAgICAgIDxzY3JpcHQgc3JjPSIuLi9y
ZXNvdXJjZXMvcnVubmVyLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9InJlc291
cmNlcy9mbG9hdHMuanMiPjwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8Ym9keT4KKyAgICAg
ICAgPHByZSBpZD0ibG9nIj48L3ByZT4KKyAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIHN0
YXJ0KDEwLCBjcmVhdGVGbG9hdHNMYXlvdXRUZXN0RnVuY3Rpb24oMTAwLCAxMDAsIDAsIDUpLCAx
KTsKKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEv
UGVyZm9ybWFuY2VUZXN0cy9MYXlvdXQvZmxvYXRzXzEwMF8xMDBfbmVzdGVkLmh0bWwgYi9QZXJm
b3JtYW5jZVRlc3RzL0xheW91dC9mbG9hdHNfMTAwXzEwMF9uZXN0ZWQuaHRtbApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kODNkYzQwCi0tLSAvZGV2L251bGwKKysrIGIvUGVy
Zm9ybWFuY2VUZXN0cy9MYXlvdXQvZmxvYXRzXzEwMF8xMDBfbmVzdGVkLmh0bWwKQEAgLTAsMCAr
MSwxNSBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPHRp
dGxlPkZsb2F0cyBsYXlvdXQgcGVyZm9ybWFuY2UgdGVzdGVyIHdpdGggMiBjb2x1bW5zIGFuZCAx
MDAgcm93czwvdGl0bGU+CisgICAgICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0icmVz
b3VyY2VzL2Zsb2F0cy5jc3MiIFRZUEU9InRleHQvY3NzIj48L2xpbms+CisgICAgICAgIDxzY3Jp
cHQgc3JjPSIuLi9yZXNvdXJjZXMvcnVubmVyLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlw
dCBzcmM9InJlc291cmNlcy9mbG9hdHMuanMiPjwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8
Ym9keT4KKyAgICAgICAgPHByZSBpZD0ibG9nIj48L3ByZT4KKyAgICAgICAgPHNjcmlwdD4KKyAg
ICAgICAgICAgIHN0YXJ0KDEwLCBjcmVhdGVGbG9hdHNMYXlvdXRUZXN0RnVuY3Rpb24oMTAwLCAx
MDAsIDEwMCwgNSksIDEpOworICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+
CmRpZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3RzL0xheW91dC9mbG9hdHNfMjBfMTAwLmh0bWwg
Yi9QZXJmb3JtYW5jZVRlc3RzL0xheW91dC9mbG9hdHNfMjBfMTAwLmh0bWwKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzZjYzhkMwotLS0gL2Rldi9udWxsCisrKyBiL1BlcmZv
cm1hbmNlVGVzdHMvTGF5b3V0L2Zsb2F0c18yMF8xMDAuaHRtbApAQCAtMCwwICsxLDE1IEBACis8
IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8dGl0bGU+RmxvYXRz
IGxheW91dCBwZXJmb3JtYW5jZSB0ZXN0ZXIgd2l0aCAyIGNvbHVtbnMgYW5kIDEwMCByb3dzPC90
aXRsZT4KKyAgICAgICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJyZXNvdXJjZXMvZmxv
YXRzLmNzcyIgVFlQRT0idGV4dC9jc3MiPjwvbGluaz4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii4u
L3Jlc291cmNlcy9ydW5uZXIuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0icmVz
b3VyY2VzL2Zsb2F0cy5qcyI+PC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxib2R5PgorICAg
ICAgICA8cHJlIGlkPSJsb2ciPjwvcHJlPgorICAgICAgICA8c2NyaXB0PgorICAgICAgICAgICAg
c3RhcnQoMTAsIGNyZWF0ZUZsb2F0c0xheW91dFRlc3RGdW5jdGlvbigyMCwgMTAwLCAwLCAxMDAp
LCAxKTsKKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0
IGEvUGVyZm9ybWFuY2VUZXN0cy9MYXlvdXQvZmxvYXRzXzIwXzEwMF9uZXN0ZWQuaHRtbCBiL1Bl
cmZvcm1hbmNlVGVzdHMvTGF5b3V0L2Zsb2F0c18yMF8xMDBfbmVzdGVkLmh0bWwKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzU3OGVhZAotLS0gL2Rldi9udWxsCisrKyBiL1Bl
cmZvcm1hbmNlVGVzdHMvTGF5b3V0L2Zsb2F0c18yMF8xMDBfbmVzdGVkLmh0bWwKQEAgLTAsMCAr
MSwxNSBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPHRp
dGxlPkZsb2F0cyBsYXlvdXQgcGVyZm9ybWFuY2UgdGVzdGVyIHdpdGggMiBjb2x1bW5zIGFuZCAx
MDAgcm93czwvdGl0bGU+CisgICAgICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0icmVz
b3VyY2VzL2Zsb2F0cy5jc3MiIFRZUEU9InRleHQvY3NzIj48L2xpbms+CisgICAgICAgIDxzY3Jp
cHQgc3JjPSIuLi9yZXNvdXJjZXMvcnVubmVyLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlw
dCBzcmM9InJlc291cmNlcy9mbG9hdHMuanMiPjwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8
Ym9keT4KKyAgICAgICAgPHByZSBpZD0ibG9nIj48L3ByZT4KKyAgICAgICAgPHNjcmlwdD4KKyAg
ICAgICAgICAgIHN0YXJ0KDEwLCBjcmVhdGVGbG9hdHNMYXlvdXRUZXN0RnVuY3Rpb24oMjAsIDEw
MCwgMTAwLCAxMDApLCAxKTsKKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9ib2R5PgorPC9odG1s
PgpkaWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9MYXlvdXQvZmxvYXRzXzJfMTAwLmh0bWwg
Yi9QZXJmb3JtYW5jZVRlc3RzL0xheW91dC9mbG9hdHNfMl8xMDAuaHRtbApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwLi4xM2M2NzBkCi0tLSAvZGV2L251bGwKKysrIGIvUGVyZm9y
bWFuY2VUZXN0cy9MYXlvdXQvZmxvYXRzXzJfMTAwLmh0bWwKQEAgLTAsMCArMSwxNSBAQAorPCFE
T0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPHRpdGxlPkZsb2F0cyBs
YXlvdXQgcGVyZm9ybWFuY2UgdGVzdGVyIHdpdGggMiBjb2x1bW5zIGFuZCAxMDAgcm93czwvdGl0
bGU+CisgICAgICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0icmVzb3VyY2VzL2Zsb2F0
cy5jc3MiIFRZUEU9InRleHQvY3NzIj48L2xpbms+CisgICAgICAgIDxzY3JpcHQgc3JjPSIuLi9y
ZXNvdXJjZXMvcnVubmVyLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9InJlc291
cmNlcy9mbG9hdHMuanMiPjwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8Ym9keT4KKyAgICAg
ICAgPHByZSBpZD0ibG9nIj48L3ByZT4KKyAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIHN0
YXJ0KDEwLCBjcmVhdGVGbG9hdHNMYXlvdXRUZXN0RnVuY3Rpb24oMiwgMTAwLCAwLCA1MDApLCAx
KTsKKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEv
UGVyZm9ybWFuY2VUZXN0cy9MYXlvdXQvZmxvYXRzXzJfMTAwX25lc3RlZC5odG1sIGIvUGVyZm9y
bWFuY2VUZXN0cy9MYXlvdXQvZmxvYXRzXzJfMTAwX25lc3RlZC5odG1sCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY3YWVjZTMKLS0tIC9kZXYvbnVsbAorKysgYi9QZXJmb3Jt
YW5jZVRlc3RzL0xheW91dC9mbG9hdHNfMl8xMDBfbmVzdGVkLmh0bWwKQEAgLTAsMCArMSwxNSBA
QAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPHRpdGxlPkZs
b2F0cyBsYXlvdXQgcGVyZm9ybWFuY2UgdGVzdGVyIHdpdGggMiBjb2x1bW5zIGFuZCAxMDAgcm93
czwvdGl0bGU+CisgICAgICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0icmVzb3VyY2Vz
L2Zsb2F0cy5jc3MiIFRZUEU9InRleHQvY3NzIj48L2xpbms+CisgICAgICAgIDxzY3JpcHQgc3Jj
PSIuLi9yZXNvdXJjZXMvcnVubmVyLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9
InJlc291cmNlcy9mbG9hdHMuanMiPjwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8Ym9keT4K
KyAgICAgICAgPHByZSBpZD0ibG9nIj48L3ByZT4KKyAgICAgICAgPHNjcmlwdD4KKyAgICAgICAg
ICAgIHN0YXJ0KDEwLCBjcmVhdGVGbG9hdHNMYXlvdXRUZXN0RnVuY3Rpb24oMiwgMTAwLCAxMDAs
IDUwMCksIDEpOworICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYg
LS1naXQgYS9QZXJmb3JtYW5jZVRlc3RzL0xheW91dC9mbG9hdHNfNTBfMTAwLmh0bWwgYi9QZXJm
b3JtYW5jZVRlc3RzL0xheW91dC9mbG9hdHNfNTBfMTAwLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMC4uZjYzYTAyNQotLS0gL2Rldi9udWxsCisrKyBiL1BlcmZvcm1hbmNl
VGVzdHMvTGF5b3V0L2Zsb2F0c181MF8xMDAuaHRtbApAQCAtMCwwICsxLDE1IEBACis8IURPQ1RZ
UEUgaHRtbD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8dGl0bGU+RmxvYXRzIGxheW91
dCBwZXJmb3JtYW5jZSB0ZXN0ZXIgd2l0aCAyIGNvbHVtbnMgYW5kIDEwMCByb3dzPC90aXRsZT4K
KyAgICAgICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJyZXNvdXJjZXMvZmxvYXRzLmNz
cyIgVFlQRT0idGV4dC9jc3MiPjwvbGluaz4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii4uL3Jlc291
cmNlcy9ydW5uZXIuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0icmVzb3VyY2Vz
L2Zsb2F0cy5qcyI+PC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxib2R5PgorICAgICAgICA8
cHJlIGlkPSJsb2ciPjwvcHJlPgorICAgICAgICA8c2NyaXB0PgorICAgICAgICAgICAgc3RhcnQo
MTAsIGNyZWF0ZUZsb2F0c0xheW91dFRlc3RGdW5jdGlvbig1MCwgMTAwLCAwLCAyMCksIDEpOwor
ICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9QZXJm
b3JtYW5jZVRlc3RzL0xheW91dC9mbG9hdHNfNTBfMTAwX25lc3RlZC5odG1sIGIvUGVyZm9ybWFu
Y2VUZXN0cy9MYXlvdXQvZmxvYXRzXzUwXzEwMF9uZXN0ZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwLi5hZTI1NzU3Ci0tLSAvZGV2L251bGwKKysrIGIvUGVyZm9ybWFu
Y2VUZXN0cy9MYXlvdXQvZmxvYXRzXzUwXzEwMF9uZXN0ZWQuaHRtbApAQCAtMCwwICsxLDE1IEBA
Cis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8dGl0bGU+Rmxv
YXRzIGxheW91dCBwZXJmb3JtYW5jZSB0ZXN0ZXIgd2l0aCAyIGNvbHVtbnMgYW5kIDEwMCByb3dz
PC90aXRsZT4KKyAgICAgICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJyZXNvdXJjZXMv
ZmxvYXRzLmNzcyIgVFlQRT0idGV4dC9jc3MiPjwvbGluaz4KKyAgICAgICAgPHNjcmlwdCBzcmM9
Ii4uL3Jlc291cmNlcy9ydW5uZXIuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0i
cmVzb3VyY2VzL2Zsb2F0cy5qcyI+PC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxib2R5Pgor
ICAgICAgICA8cHJlIGlkPSJsb2ciPjwvcHJlPgorICAgICAgICA8c2NyaXB0PgorICAgICAgICAg
ICAgc3RhcnQoMTAsIGNyZWF0ZUZsb2F0c0xheW91dFRlc3RGdW5jdGlvbig1MCwgMTAwLCAxMDAs
IDIwKSwgMSk7CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAt
LWdpdCBhL1BlcmZvcm1hbmNlVGVzdHMvTGF5b3V0L3Jlc291cmNlcy9mbG9hdHMuY3NzIGIvUGVy
Zm9ybWFuY2VUZXN0cy9MYXlvdXQvcmVzb3VyY2VzL2Zsb2F0cy5jc3MKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMC4uYTA5MzQyNgotLS0gL2Rldi9udWxsCisrKyBiL1BlcmZvcm1h
bmNlVGVzdHMvTGF5b3V0L3Jlc291cmNlcy9mbG9hdHMuY3NzCkBAIC0wLDAgKzEsMTggQEAKKy5j
b250YWluZXIgeworICAgIGRpc3BsYXk6IG5vbmU7Cit9CisKKy5mbG9hdCB7CisgICAgZmxvYXQ6
IGxlZnQ7CisgICAgd2lkdGg6IDVweDsKKyAgICBoZWlnaHQ6IDVweDsKKyAgICBib3JkZXI6IDFw
eCBzb2xpZCBncmVlbjsKK30KKworLmJpZyB7CisgICAgd2lkdGg6IDEwcHg7Cit9CisKKy5mbG9h
dC1lbmQgeworICAgIGNsZWFyOmxlZnQ7Cit9ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpk
aWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9MYXlvdXQvcmVzb3VyY2VzL2Zsb2F0cy5qcyBi
L1BlcmZvcm1hbmNlVGVzdHMvTGF5b3V0L3Jlc291cmNlcy9mbG9hdHMuanMKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYmU1ZWYxMgotLS0gL2Rldi9udWxsCisrKyBiL1BlcmZv
cm1hbmNlVGVzdHMvTGF5b3V0L3Jlc291cmNlcy9mbG9hdHMuanMKQEAgLTAsMCArMSw1NyBAQAor
KGZ1bmN0aW9uKCkgeworICAgIGZ1bmN0aW9uIGNyZWF0ZUVsZW1lbnQodGFnLCBwYXJlbnQsIGNs
YXNzTmFtZSwgaWQpIHsKKyAgICAgICAgdmFyIGVsID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCh0
YWcpOworICAgICAgICBlbC5jbGFzc05hbWUgPSBjbGFzc05hbWU7CisgICAgICAgIGlmIChpZCkK
KyAgICAgICAgICAgIGVsLmlkID0gaWQ7CisgICAgICAgIHBhcmVudC5hcHBlbmRDaGlsZChlbCk7
CisgICAgICAgIHJldHVybiBlbDsKKyAgICB9CisKKyAgICBmdW5jdGlvbiBjcmVhdGVTZXQod2lk
dGgsIGhlaWdodCwgbmVzdGVkKSB7CisgICAgICAgIHZhciBjb250YWluZXIgPSBjcmVhdGVFbGVt
ZW50KCJkaXYiLCBkb2N1bWVudC5ib2R5LCAiY29udGFpbmVyIik7CisgICAgICAgIGZvciAodmFy
IHkgPSAwOyB5IDwgaGVpZ2h0OyArK3kpIHsKKyAgICAgICAgICAgIGZvciAodmFyIHggPSAwOyB4
IDwgd2lkdGg7ICsreCkKKyAgICAgICAgICAgICAgICBjcmVhdGVFbGVtZW50KCJkaXYiLCBjb250
YWluZXIsICJmbG9hdCIsICJmbG9hdCIgKyB4ICsgIl8iICsgeSk7CisKKyAgICAgICAgICAgIHZh
ciBuZXN0ZWRDb250YWluZXIgPSBjb250YWluZXI7CisgICAgICAgICAgICBmb3IgKCA7IG5lc3Rl
ZCA+IDA7IC0tbmVzdGVkKQorICAgICAgICAgICAgICAgIG5lc3RlZENvbnRhaW5lciA9IGNyZWF0
ZUVsZW1lbnQoImRpdiIsIG5lc3RlZENvbnRhaW5lciwgIm5lc3RlZCIsICJuZXN0ZWQiICsgeCAr
ICJfIiArIG5lc3RlZCk7CisgICAgICAgICAgICAKKyAgICAgICAgICAgIGNyZWF0ZUVsZW1lbnQo
ImRpdiIsIGNvbnRhaW5lciwgImZsb2F0LWVuZCIsICJlbmQiICsgeCkKKyAgICAgICAgfQorICAg
ICAgICByZXR1cm4gY29udGFpbmVyOworICAgIH0KKworICAgIGZ1bmN0aW9uIHRvZ2dsZShzdHIs
IHN0cjEsIHN0cjIpIHsKKyAgICAgICAgcmV0dXJuIHN0ciA9PSBzdHIxID8gc3RyMiA6IHN0cjE7
CisgICAgfQorICAgIAorICAgIGZ1bmN0aW9uIHJlc2V0VGVzdCgpIHsKKyAgICAgICAgcmVzZXRS
YW5kb21TZWVkKCk7CisgICAgICAgIHZhciBsaXN0ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFs
bCgiLmZsb2F0LmJpZyIpOworICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGxpc3QubGVuZ3Ro
OyArK2kpCisgICAgICAgICAgICBsaXN0W2ldLmNsYXNzTmFtZSA9ICJmbG9hdCI7CisgICAgfQor
ICAgIAorICAgIGZ1bmN0aW9uIGNyZWF0ZVRlc3RGdW5jdGlvbih3aWR0aCwgaGVpZ2h0LCBuZXN0
ZWQsIHJ1bnMpIHsKKyAgICAgICAgdmFyIGNvbnRhaW5lciA9IGNyZWF0ZVNldCh3aWR0aCwgaGVp
Z2h0LCBuZXN0ZWQpOworICAgICAgICBuZXN0ZWQgPSBuZXN0ZWQgfHwgMDsKKyAgICAgICAgcnVu
cyA9IHJ1bnMgfHwgMTA7CisgICAgICAgIHJldHVybiBmdW5jdGlvbigpIHsKKyAgICAgICAgICAg
IGNvbnRhaW5lci5zdHlsZS5kaXNwbGF5ID0gImJsb2NrIjsKKyAgICAgICAgICAgIGZvciAodmFy
IGkgPSAwOyBpIDwgcnVuczsgKytpKSB7CisgICAgICAgICAgICAgICAgdmFyIHggPSBNYXRoLmZs
b29yKE1hdGgucmFuZG9tKCkgKiB3aWR0aCk7CisgICAgICAgICAgICAgICAgdmFyIHkgPSBNYXRo
LmZsb29yKE1hdGgucmFuZG9tKCkgKiBoZWlnaHQpOworICAgICAgICAgICAgICAgIHZhciBlbCA9
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmbG9hdCIgKyB4ICsgIl8iICsgeSk7CisgICAgICAg
ICAgICAgICAgZWwuY2xhc3NOYW1lID0gdG9nZ2xlKGVsLmNsYXNzTmFtZSwgImZsb2F0IiwgImZs
b2F0IGJpZyIpOworICAgICAgICAgICAgICAgIC8vIEZvcmNlIGEgbGF5b3V0LgorICAgICAgICAg
ICAgICAgIGNvbnRhaW5lci5jbGllbnRIZWlnaHQ7CisgICAgICAgICAgICB9CisgICAgICAgICAg
ICByZXNldFRlc3QoKTsKKyAgICAgICAgICAgIGNvbnRhaW5lci5zdHlsZS5kaXNwbGF5ID0gIm5v
bmUiOworICAgICAgICB9CisgICAgfQorICAgIAorICAgIHdpbmRvdy5jcmVhdGVGbG9hdHNMYXlv
dXRUZXN0RnVuY3Rpb24gPSBjcmVhdGVUZXN0RnVuY3Rpb247Cit9KSgpOwpkaWZmIC0tZ2l0IGEv
UGVyZm9ybWFuY2VUZXN0cy9Ta2lwcGVkIGIvUGVyZm9ybWFuY2VUZXN0cy9Ta2lwcGVkCmluZGV4
IGE1MjJjNWEuLmJiZGMzNmQgMTAwNjQ0Ci0tLSBhL1BlcmZvcm1hbmNlVGVzdHMvU2tpcHBlZAor
KysgYi9QZXJmb3JtYW5jZVRlc3RzL1NraXBwZWQKQEAgLTIsNyArMiw2IEBACiBNdXRhdGlvbgog
CiAjIERvIG5vdCBjb25mb3JtIHRvIFdlYktpdCBvciBDaHJvbWl1bSBwZXJmIHRlc3Qgc3R5bGVz
Ci1MYXlvdXQKIFBhZ2VMb2FkCiBTdW5TcGlkZXIKIFhTU0F1ZGl0b3IKZGlmZiAtLWdpdCBhL1Bl
cmZvcm1hbmNlVGVzdHMvcmVzb3VyY2VzL3J1bm5lci5qcyBiL1BlcmZvcm1hbmNlVGVzdHMvcmVz
b3VyY2VzL3J1bm5lci5qcwppbmRleCBmYjQ3OWU0Li4wNzRlYzA2IDEwMDY0NAotLS0gYS9QZXJm
b3JtYW5jZVRlc3RzL3Jlc291cmNlcy9ydW5uZXIuanMKKysrIGIvUGVyZm9ybWFuY2VUZXN0cy9y
ZXNvdXJjZXMvcnVubmVyLmpzCkBAIC0xLDMgKzEsMjQgQEAKKy8vIFRvIG1ha2UgdGhlIGJlbmNo
bWFyayByZXN1bHRzIHByZWRpY3RhYmxlLCB3ZSByZXBsYWNlIE1hdGgucmFuZG9tIHdpdGggYQor
Ly8gMTAwJSBkZXRlcm1pbmlzdGljIGFsdGVybmF0aXZlLgordmFyIGluaXRpYWxSYW5kb21TZWVk
ID0gNDk3MzQzMjE7Cit2YXIgcmFuZG9tU2VlZCA9IGluaXRpYWxSYW5kb21TZWVkOworCitmdW5j
dGlvbiByZXNldFJhbmRvbVNlZWQoKSB7CisgICAgcmFuZG9tU2VlZCA9IGluaXRpYWxSYW5kb21T
ZWVkCit9CisKK01hdGgucmFuZG9tID0gZnVuY3Rpb24oKSB7CisgICAgLy8gUm9iZXJ0IEplbmtp
bnMnIDMyIGJpdCBpbnRlZ2VyIGhhc2ggZnVuY3Rpb24uCisgICAgcmFuZG9tU2VlZCA9ICgocmFu
ZG9tU2VlZCArIDB4N2VkNTVkMTYpICsgKHJhbmRvbVNlZWQgPDwgMTIpKSAgJiAweGZmZmZmZmZm
OworICAgIHJhbmRvbVNlZWQgPSAoKHJhbmRvbVNlZWQgXiAweGM3NjFjMjNjKSBeIChyYW5kb21T
ZWVkID4+PiAxOSkpICYgMHhmZmZmZmZmZjsKKyAgICByYW5kb21TZWVkID0gKChyYW5kb21TZWVk
ICsgMHgxNjU2NjdiMSkgKyAocmFuZG9tU2VlZCA8PCA1KSkgICAmIDB4ZmZmZmZmZmY7CisgICAg
cmFuZG9tU2VlZCA9ICgocmFuZG9tU2VlZCArIDB4ZDNhMjY0NmMpIF4gKHJhbmRvbVNlZWQgPDwg
OSkpICAgJiAweGZmZmZmZmZmOworICAgIHJhbmRvbVNlZWQgPSAoKHJhbmRvbVNlZWQgKyAweGZk
NzA0NmM1KSArIChyYW5kb21TZWVkIDw8IDMpKSAgICYgMHhmZmZmZmZmZjsKKyAgICByYW5kb21T
ZWVkID0gKChyYW5kb21TZWVkIF4gMHhiNTVhNGYwOSkgXiAocmFuZG9tU2VlZCA+Pj4gMTYpKSAm
IDB4ZmZmZmZmZmY7CisgICAgcmV0dXJuIChyYW5kb21TZWVkICYgMHhmZmZmZmZmKSAvIDB4MTAw
MDAwMDA7Cit9OworCisKIGZ1bmN0aW9uIGxvZyh0ZXh0KSB7CiAgICAgZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoImxvZyIpLmlubmVySFRNTCArPSB0ZXh0ICsgIlxuIjsKICAgICB3aW5kb3cuc2Ny
b2xsVG8oMCwgZG9jdW1lbnQuYm9keS5oZWlnaHQpOwo=
</data>
<flag name="review"
          id="125799"
          type_id="1"
          status="+"
          setter="rniwa"
    />
    <flag name="commit-queue"
          id="125800"
          type_id="3"
          status="-"
          setter="rniwa"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>131966</attachid>
            <date>2012-03-14 17:56:30 -0700</date>
            <delta_ts>2012-03-14 18:17:16 -0700</delta_ts>
            <desc>Rebased patch</desc>
            <filename>bug77051.patch</filename>
            <type>text/plain</type>
            <size>17417</size>
            <attacher name="Alexandru Chiculita">achicu</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1BlcmZvcm1hbmNlVGVzdHMvQ2hhbmdlTG9nIGIvUGVyZm9ybWFuY2VUZXN0
cy9DaGFuZ2VMb2cKaW5kZXggYzNhMmM4NC4uOTVlYjAzNSAxMDA2NDQKLS0tIGEvUGVyZm9ybWFu
Y2VUZXN0cy9DaGFuZ2VMb2cKKysrIGIvUGVyZm9ybWFuY2VUZXN0cy9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0MCBAQAorMjAxMi0wMS0zMCAgQWxleGFuZHJ1IENoaWN1bGl0YSAgPGFjaGljdUBhZG9i
ZS5jb20+CisKKyAgICAgICAgTGF5b3V0L2Zsb2F0cy5odG1sIHNob3VsZCBiZSBydW5uYWJsZSBi
eSBydW4tcGVyZi10ZXN0cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9NzcwNTEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBJJ3ZlIHNwbGl0IExheW91dC9mbG9hdHMuaHRtbCBpbnRvIG11bHRpcGxlIHRlc3Rz
IGZvciBlYWNoIGJ1dHRvbiBpbiB0aGUgb3JpZ2luYWwgbWFudWFsIHRlc3QuCisgICAgICAgIFNv
bWUgdGVzdHMgdGFrZSBsb25nZXIgdG8gcnVuIGFuZCBJJ3ZlIGNoYW5nZWQgdGhlIG51bWJlciBv
ZiBpdGVyYXRpb25zLCBzbyB0aGF0IGVhY2ggdGVzdHMgZmluaXNoZXMgdW5kZXIgMXMgcGVyIHJ1
bi4KKworICAgICAgICAqIERPTS9yZXNvdXJjZXMvZG9tLXBlcmYuanM6CisgICAgICAgICAgICBN
b3ZlZCBNYXRoLnJhbmRvbSB0byBydW5uZXIuanMuCisgICAgICAgICogTGF5b3V0L2Zsb2F0cy5o
dG1sOiBSZW1vdmVkLgorICAgICAgICAqIExheW91dC9mbG9hdHNfMTAwXzEwMC5odG1sOiBBZGRl
ZC4KKyAgICAgICAgKiBMYXlvdXQvZmxvYXRzXzEwMF8xMDBfbmVzdGVkLmh0bWw6IEFkZGVkLgor
ICAgICAgICAqIExheW91dC9mbG9hdHNfMjBfMTAwLmh0bWw6IEFkZGVkLgorICAgICAgICAqIExh
eW91dC9mbG9hdHNfMjBfMTAwX25lc3RlZC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBMYXlvdXQv
ZmxvYXRzXzJfMTAwLmh0bWw6IEFkZGVkLgorICAgICAgICAqIExheW91dC9mbG9hdHNfMl8xMDBf
bmVzdGVkLmh0bWw6IEFkZGVkLgorICAgICAgICAqIExheW91dC9mbG9hdHNfNTBfMTAwLmh0bWw6
IEFkZGVkLgorICAgICAgICAqIExheW91dC9mbG9hdHNfNTBfMTAwX25lc3RlZC5odG1sOiBBZGRl
ZC4KKyAgICAgICAgKiBMYXlvdXQvcmVzb3VyY2VzL2Zsb2F0cy5jc3M6IEFkZGVkLgorICAgICAg
ICAoLmNvbnRhaW5lcik6CisgICAgICAgICguZmxvYXQpOgorICAgICAgICAoLmJpZyk6CisgICAg
ICAgICguZmxvYXQtZW5kKToKKyAgICAgICAgKiBMYXlvdXQvcmVzb3VyY2VzL2Zsb2F0cy5qczog
QWRkZWQuCisgICAgICAgICAgICBFeHRyYWN0ZWQgdGhlIHNjcmlwdCBmcm9tIG9sZCBmbG9hdHMu
aHRtbC4KKyAgICAgICAgKiBTa2lwcGVkOgorICAgICAgICAqIHJlc291cmNlcy9ydW5uZXIuanM6
CisgICAgICAgIChyZXNldFJhbmRvbVNlZWQpOgorICAgICAgICAoTWF0aC5yYW5kb20pOgorICAg
ICAgICAgICAgTW92ZWQgdGhlIE1hdGgucmFuZG9tIHRvIHJ1bm5lci5qcyB0byBiZSB1c2VkIGJ5
IGFsbCB0ZXN0cy4KKyAgICAgICAgICAgIEFkZGVkIHJlc2V0UmFuZG9tU2VlZCB0byBicmluZyB0
aGUgcmFuZG9taXplciBiYWNrIHRvIGluaXRpYWwgc2VlZC4KKyAgICAgICAgICAgIEl0IGlzIHVz
ZWZ1bCB0byBnZXQgdGhlIHNhbWUgcmVzdWx0cyBhdCBldmVyeSBydW4gYW5kIG1pbmltaXplIHRo
ZQorICAgICAgICAgICAgZGlmZmVyZW5jZXMgYmV0d2VlbiBydW5zLgorCiAyMDEyLTAxLTI5ICBS
eW9zdWtlIE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgogCiAgICAgICAgIERPTS9ET01EaXZXYWxr
Lmh0bWwgcmVzdWx0IGlzIHVucmVsaWFibGUKZGlmZiAtLWdpdCBhL1BlcmZvcm1hbmNlVGVzdHMv
RE9NL3Jlc291cmNlcy9kb20tcGVyZi5qcyBiL1BlcmZvcm1hbmNlVGVzdHMvRE9NL3Jlc291cmNl
cy9kb20tcGVyZi5qcwppbmRleCBjODkyODM2Li5kOTNmMWY1IDEwMDY0NAotLS0gYS9QZXJmb3Jt
YW5jZVRlc3RzL0RPTS9yZXNvdXJjZXMvZG9tLXBlcmYuanMKKysrIGIvUGVyZm9ybWFuY2VUZXN0
cy9ET00vcmVzb3VyY2VzL2RvbS1wZXJmLmpzCkBAIC0xMTUsMjIgKzExNSw2IEBAIGZ1bmN0aW9u
IEdldFByb2ZpbGVyKCkgewogICAgIHJldHVybiBuZXcgUHNldWRvUHJvZmlsZXIoKTsKIH0KIAot
Ly8gVG8gbWFrZSB0aGUgYmVuY2htYXJrIHJlc3VsdHMgcHJlZGljdGFibGUsIHdlIHJlcGxhY2Ug
TWF0aC5yYW5kb20gd2l0aCBhCi0vLyAxMDAlIGRldGVybWluaXN0aWMgYWx0ZXJuYXRpdmUuCi1N
YXRoLnJhbmRvbSA9IChmdW5jdGlvbigpIHsKLSAgICB2YXIgc2VlZCA9IDQ5NzM0MzIxOwotICAg
IHJldHVybiBmdW5jdGlvbigpIHsKLSAgICAgICAgLy8gUm9iZXJ0IEplbmtpbnMnIDMyIGJpdCBp
bnRlZ2VyIGhhc2ggZnVuY3Rpb24uCi0gICAgICAgIHNlZWQgPSAoKHNlZWQgKyAweDdlZDU1ZDE2
KSArIChzZWVkIDw8IDEyKSkgICYgMHhmZmZmZmZmZjsKLSAgICAgICAgc2VlZCA9ICgoc2VlZCBe
IDB4Yzc2MWMyM2MpIF4gKHNlZWQgPj4+IDE5KSkgJiAweGZmZmZmZmZmOwotICAgICAgICBzZWVk
ID0gKChzZWVkICsgMHgxNjU2NjdiMSkgKyAoc2VlZCA8PCA1KSkgICAmIDB4ZmZmZmZmZmY7Ci0g
ICAgICAgIHNlZWQgPSAoKHNlZWQgKyAweGQzYTI2NDZjKSBeIChzZWVkIDw8IDkpKSAgICYgMHhm
ZmZmZmZmZjsKLSAgICAgICAgc2VlZCA9ICgoc2VlZCArIDB4ZmQ3MDQ2YzUpICsgKHNlZWQgPDwg
MykpICAgJiAweGZmZmZmZmZmOwotICAgICAgICBzZWVkID0gKChzZWVkIF4gMHhiNTVhNGYwOSkg
XiAoc2VlZCA+Pj4gMTYpKSAmIDB4ZmZmZmZmZmY7Ci0gICAgICAgIHJldHVybiAoc2VlZCAmIDB4
ZmZmZmZmZikgLyAweDEwMDAwMDAwOwotICAgIH07Ci19KSgpOwotCiBmdW5jdGlvbiBCZW5jaG1h
cmsobmFtZSwgcnVuLCBvcHRfc2V0dXAsIG9wdF9jbGVhbnVwLCBvcHRfc2hhcmVTZXR1cCkgewog
ICAgIHRoaXMubmFtZSA9IG5hbWU7CiAgICAgdGhpcy50aW1lVG9SdW4gPSA1MDA7IC8vIG1zCmRp
ZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3RzL0xheW91dC9mbG9hdHMuaHRtbCBiL1BlcmZvcm1h
bmNlVGVzdHMvTGF5b3V0L2Zsb2F0cy5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCA1MmY5NWJhLi4wMDAwMDAwCi0tLSBhL1BlcmZvcm1hbmNlVGVzdHMvTGF5b3V0L2Zsb2F0cy5o
dG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTA4ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPGh0
bWw+Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDx0aXRsZT5GbG9hdHMgbGF5b3V0IHBlcmZvcm1hbmNl
IHRlc3RlcjwvdGl0bGU+Ci0gICAgICAgIDxzdHlsZT4KLSAgICAgICAgICAgIC5mbG9hdCB7Ci0g
ICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7Ci0gICAgICAgICAgICAgICAgd2lkdGg6IDVweDsK
LSAgICAgICAgICAgICAgICBoZWlnaHQ6IDVweDsKLSAgICAgICAgICAgICAgICBib3JkZXI6IDFw
eCBzb2xpZCBncmVlbjsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIC5iaWcgewotICAgICAg
ICAgICAgICAgIHdpZHRoOiAxMHB4OwotICAgICAgICAgICAgfQotICAgICAgICAgICAgLmZsb2F0
LWVuZCB7Ci0gICAgICAgICAgICAgICAgY2xlYXI6bGVmdDsKLSAgICAgICAgICAgIH0KLQotICAg
ICAgICAgICAgI2ZyYW1lcmF0ZV9wYW5lbCB7Ci0gICAgICAgICAgICAgICAgZGlzcGxheTogbm9u
ZTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICAgICAgPHNjcmlwdD4KLSAg
ICAgICAgICAgIGZ1bmN0aW9uIGNyZWF0ZUVsZW1lbnQodGFnLCBwYXJlbnQsIGNsYXNzTmFtZSwg
aWQpCi0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgdmFyIGVsID0gZG9jdW1lbnQuY3Jl
YXRlRWxlbWVudCh0YWcpOwotICAgICAgICAgICAgICAgIGVsLmNsYXNzTmFtZSA9IGNsYXNzTmFt
ZTsKLSAgICAgICAgICAgICAgICBlbC5pZCA9IGlkOwotICAgICAgICAgICAgICAgIHBhcmVudC5h
cHBlbmRDaGlsZChlbCk7Ci0gICAgICAgICAgICAgICAgcmV0dXJuIGVsOwotICAgICAgICAgICAg
fQotCi0gICAgICAgICAgICBmdW5jdGlvbiBjcmVhdGVTZXQod2lkdGgsIGhlaWdodCwgbmVzdGVk
KQotICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIHZhciBjb250YWluZXIgPSBjcmVhdGVF
bGVtZW50KCJkaXYiLCBkb2N1bWVudC5ib2R5LCAiY29udGFpbmVyIik7Ci0gICAgICAgICAgICAg
ICAgZm9yICh2YXIgeSA9IDA7IHkgPCBoZWlnaHQ7ICsreSkgewotICAgICAgICAgICAgICAgICAg
ICBmb3IgKHZhciB4ID0gMDsgeCA8IHdpZHRoOyArK3gpCi0gICAgICAgICAgICAgICAgICAgICAg
ICBjcmVhdGVFbGVtZW50KCJkaXYiLCBjb250YWluZXIsICJmbG9hdCIsICJmbG9hdCIgKyB4ICsg
Il8iICsgeSk7Ci0KLSAgICAgICAgICAgICAgICAgICAgdmFyIG5lc3RlZENvbnRhaW5lciA9IGNv
bnRhaW5lcjsKLSAgICAgICAgICAgICAgICAgICAgZm9yICggOyBuZXN0ZWQgPiAwOyAtLW5lc3Rl
ZCkKLSAgICAgICAgICAgICAgICAgICAgICAgIG5lc3RlZENvbnRhaW5lciA9IGNyZWF0ZUVsZW1l
bnQoImRpdiIsIG5lc3RlZENvbnRhaW5lciwgIm5lc3RlZCIsICJuZXN0ZWQiICsgeCArICJfIiAr
IG5lc3RlZCk7Ci0gICAgICAgICAgICAgICAgICAgIAotICAgICAgICAgICAgICAgICAgICBjcmVh
dGVFbGVtZW50KCJkaXYiLCBjb250YWluZXIsICJmbG9hdC1lbmQiLCAiZW5kIiArIHgpCi0gICAg
ICAgICAgICAgICAgfQotICAgICAgICAgICAgfQotCi0gICAgICAgICAgICBmdW5jdGlvbiB0b2dn
bGUoc3RyLCBzdHIxLCBzdHIyKQotICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIGlmIChz
dHIgPT0gc3RyMSkKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHN0cjI7Ci0gICAgICAgICAg
ICAgICAgcmV0dXJuIHN0cjE7Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIGZ1bmN0aW9u
IHRlc3Qod2lkdGgsIGhlaWdodCwgbmVzdGVkKSAKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAg
ICAgICBuZXN0ZWQgPSBuZXN0ZWQgfHwgMDsKLQotICAgICAgICAgICAgICAgIGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJ0ZXN0X3BhbmVsIikuc3R5bGUuZGlzcGxheSA9ICJub25lIjsKLSAgICAg
ICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZnJhbWVyYXRlX3BhbmVsIikuc3R5
bGUuZGlzcGxheSA9ICJibG9jayI7Ci0KLSAgICAgICAgICAgICAgICBjcmVhdGVTZXQod2lkdGgs
IGhlaWdodCwgbmVzdGVkKTsKLSAgICAgICAgICAgICAgICB2YXIgdXBkYXRlcyA9IDA7Ci0gICAg
ICAgICAgICAgICAgdmFyIHN0YXJ0VGltZSA9IG5ldyBEYXRlKCk7Ci0KLSAgICAgICAgICAgICAg
ICBmdW5jdGlvbiB1cGRhdGVUaW1lcigpCi0gICAgICAgICAgICAgICAgewotICAgICAgICAgICAg
ICAgICAgICArK3VwZGF0ZXM7Ci0KLSAgICAgICAgICAgICAgICAgICAgdmFyIG5ld1RpbWUgPSBu
ZXcgRGF0ZSgpOwotICAgICAgICAgICAgICAgICAgICB2YXIgZGVsdGFUaW1lID0gbmV3VGltZSAt
IHN0YXJ0VGltZTsKLQotICAgICAgICAgICAgICAgICAgICBpZiAoKGRlbHRhVGltZSA+IDAgJiYg
dXBkYXRlcyA+IDEwMCkgfHwgZGVsdGFUaW1lID4gMTAwMCkgewotICAgICAgICAgICAgICAgICAg
ICAgICAgdmFyIGZwcyA9IHVwZGF0ZXMgKiAxMDAgLyBkZWx0YVRpbWU7Ci0gICAgICAgICAgICAg
ICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZnBzIikuaW5uZXJIVE1MID0gZnBz
OwotICAgICAgICAgICAgICAgICAgICAgICAgdXBkYXRlcyA9IDA7Ci0gICAgICAgICAgICAgICAg
ICAgICAgICBzdGFydFRpbWUgPSBuZXdUaW1lOwotICAgICAgICAgICAgICAgICAgICB9Ci0gICAg
ICAgICAgICAgICAgfQotCi0gICAgICAgICAgICAgICAgZnVuY3Rpb24gdXBkYXRlKCkKLSAgICAg
ICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgICAgIHZhciB4ID0gTWF0aC5mbG9vcihNYXRo
LnJhbmRvbSgpICogd2lkdGgpOwotICAgICAgICAgICAgICAgICAgICB2YXIgeSA9IE1hdGguZmxv
b3IoTWF0aC5yYW5kb20oKSAqIGhlaWdodCk7Ci0gICAgICAgICAgICAgICAgICAgIHZhciBlbCA9
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmbG9hdCIgKyB4ICsgIl8iICsgeSk7Ci0gICAgICAg
ICAgICAgICAgICAgIGVsLmNsYXNzTmFtZSA9IHRvZ2dsZShlbC5jbGFzc05hbWUsICJmbG9hdCIs
ICJmbG9hdCBiaWciKTsKLSAgICAgICAgICAgICAgICAgICAgdXBkYXRlVGltZXIoKTsKLSAgICAg
ICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgc2V0SW50ZXJ2YWwodXBkYXRlLCAwKTsKLSAg
ICAgICAgICAgIH0KLSAgICAgICAgPC9zY3JpcHQ+Ci0gICAgPC9oZWFkPgotICAgIDxib2R5Pgot
ICAgICAgICA8ZGl2IGlkPSJmcmFtZXJhdGVfcGFuZWwiPkZyYW1lcmF0ZTogPHNwYW4gaWQ9ImZw
cyI+Y2FsY3VsYXRpbmcuLi48L3NwYW4+IGZwczwvZGl2PgotICAgICAgICA8ZGl2IGlkPSJ0ZXN0
X3BhbmVsIj4KLSAgICAgICAgICAgIDxwPkNob29zZSB0aGUgc2l6ZSBvZiB0aGUgdGVzdDo8L3A+
Ci0gICAgICAgICAgICA8YnV0dG9uIG9uY2xpY2s9InRlc3QoMiwgMTAwKSI+MiBieSAxMDA8L2J1
dHRvbj4KLSAgICAgICAgICAgIDxidXR0b24gb25jbGljaz0idGVzdCgyMCwgMTAwKSI+MjAgYnkg
MTAwPC9idXR0b24+Ci0gICAgICAgICAgICA8YnV0dG9uIG9uY2xpY2s9InRlc3QoNTAsIDEwMCki
PjUwIGJ5IDEwMDwvYnV0dG9uPgotICAgICAgICAgICAgPGJ1dHRvbiBvbmNsaWNrPSJ0ZXN0KDEw
MCwgMTAwKSI+MTAwIGJ5IDEwMDwvYnV0dG9uPgotICAgICAgICAgICAgPHA+TmVzdGVkIGRpdnM6
PC9wPgotICAgICAgICAgICAgPGJ1dHRvbiBvbmNsaWNrPSJ0ZXN0KDIsIDEwMCwgMTAwKSI+MiBi
eSAxMDAsIDEwMCBuZXN0ZWQ8L2J1dHRvbj4KLSAgICAgICAgICAgIDxidXR0b24gb25jbGljaz0i
dGVzdCgyMCwgMTAwLCAxMDApIj4yMCBieSAxMDAsIDEwMCBuZXN0ZWQ8L2J1dHRvbj4KLSAgICAg
ICAgICAgIDxidXR0b24gb25jbGljaz0idGVzdCg1MCwgMTAwLCAxMDApIj41MCBieSAxMDAsIDEw
MCBuZXN0ZWQ8L2J1dHRvbj4KLSAgICAgICAgICAgIDxidXR0b24gb25jbGljaz0idGVzdCgxMDAs
IDEwMCwgMTAwKSI+MTAwIGJ5IDEwMCwgMTAwIG5lc3RlZDwvYnV0dG9uPgotICAgICAgICA8L2Rp
dj4KLSAgICA8L2JvZHk+Ci08L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZm
IC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9MYXlvdXQvZmxvYXRzXzEwMF8xMDAuaHRtbCBiL1Bl
cmZvcm1hbmNlVGVzdHMvTGF5b3V0L2Zsb2F0c18xMDBfMTAwLmh0bWwKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMC4uZmE3NTRlNAotLS0gL2Rldi9udWxsCisrKyBiL1BlcmZvcm1h
bmNlVGVzdHMvTGF5b3V0L2Zsb2F0c18xMDBfMTAwLmh0bWwKQEAgLTAsMCArMSwxNSBAQAorPCFE
T0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPHRpdGxlPkZsb2F0cyBs
YXlvdXQgcGVyZm9ybWFuY2UgdGVzdGVyIHdpdGggMiBjb2x1bW5zIGFuZCAxMDAgcm93czwvdGl0
bGU+CisgICAgICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0icmVzb3VyY2VzL2Zsb2F0
cy5jc3MiIFRZUEU9InRleHQvY3NzIj48L2xpbms+CisgICAgICAgIDxzY3JpcHQgc3JjPSIuLi9y
ZXNvdXJjZXMvcnVubmVyLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9InJlc291
cmNlcy9mbG9hdHMuanMiPjwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8Ym9keT4KKyAgICAg
ICAgPHByZSBpZD0ibG9nIj48L3ByZT4KKyAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIHN0
YXJ0KDEwLCBjcmVhdGVGbG9hdHNMYXlvdXRUZXN0RnVuY3Rpb24oMTAwLCAxMDAsIDAsIDUpLCAx
KTsKKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEv
UGVyZm9ybWFuY2VUZXN0cy9MYXlvdXQvZmxvYXRzXzEwMF8xMDBfbmVzdGVkLmh0bWwgYi9QZXJm
b3JtYW5jZVRlc3RzL0xheW91dC9mbG9hdHNfMTAwXzEwMF9uZXN0ZWQuaHRtbApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kODNkYzQwCi0tLSAvZGV2L251bGwKKysrIGIvUGVy
Zm9ybWFuY2VUZXN0cy9MYXlvdXQvZmxvYXRzXzEwMF8xMDBfbmVzdGVkLmh0bWwKQEAgLTAsMCAr
MSwxNSBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPHRp
dGxlPkZsb2F0cyBsYXlvdXQgcGVyZm9ybWFuY2UgdGVzdGVyIHdpdGggMiBjb2x1bW5zIGFuZCAx
MDAgcm93czwvdGl0bGU+CisgICAgICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0icmVz
b3VyY2VzL2Zsb2F0cy5jc3MiIFRZUEU9InRleHQvY3NzIj48L2xpbms+CisgICAgICAgIDxzY3Jp
cHQgc3JjPSIuLi9yZXNvdXJjZXMvcnVubmVyLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlw
dCBzcmM9InJlc291cmNlcy9mbG9hdHMuanMiPjwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8
Ym9keT4KKyAgICAgICAgPHByZSBpZD0ibG9nIj48L3ByZT4KKyAgICAgICAgPHNjcmlwdD4KKyAg
ICAgICAgICAgIHN0YXJ0KDEwLCBjcmVhdGVGbG9hdHNMYXlvdXRUZXN0RnVuY3Rpb24oMTAwLCAx
MDAsIDEwMCwgNSksIDEpOworICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+
CmRpZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3RzL0xheW91dC9mbG9hdHNfMjBfMTAwLmh0bWwg
Yi9QZXJmb3JtYW5jZVRlc3RzL0xheW91dC9mbG9hdHNfMjBfMTAwLmh0bWwKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzZjYzhkMwotLS0gL2Rldi9udWxsCisrKyBiL1BlcmZv
cm1hbmNlVGVzdHMvTGF5b3V0L2Zsb2F0c18yMF8xMDAuaHRtbApAQCAtMCwwICsxLDE1IEBACis8
IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8dGl0bGU+RmxvYXRz
IGxheW91dCBwZXJmb3JtYW5jZSB0ZXN0ZXIgd2l0aCAyIGNvbHVtbnMgYW5kIDEwMCByb3dzPC90
aXRsZT4KKyAgICAgICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJyZXNvdXJjZXMvZmxv
YXRzLmNzcyIgVFlQRT0idGV4dC9jc3MiPjwvbGluaz4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii4u
L3Jlc291cmNlcy9ydW5uZXIuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0icmVz
b3VyY2VzL2Zsb2F0cy5qcyI+PC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxib2R5PgorICAg
ICAgICA8cHJlIGlkPSJsb2ciPjwvcHJlPgorICAgICAgICA8c2NyaXB0PgorICAgICAgICAgICAg
c3RhcnQoMTAsIGNyZWF0ZUZsb2F0c0xheW91dFRlc3RGdW5jdGlvbigyMCwgMTAwLCAwLCAxMDAp
LCAxKTsKKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0
IGEvUGVyZm9ybWFuY2VUZXN0cy9MYXlvdXQvZmxvYXRzXzIwXzEwMF9uZXN0ZWQuaHRtbCBiL1Bl
cmZvcm1hbmNlVGVzdHMvTGF5b3V0L2Zsb2F0c18yMF8xMDBfbmVzdGVkLmh0bWwKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzU3OGVhZAotLS0gL2Rldi9udWxsCisrKyBiL1Bl
cmZvcm1hbmNlVGVzdHMvTGF5b3V0L2Zsb2F0c18yMF8xMDBfbmVzdGVkLmh0bWwKQEAgLTAsMCAr
MSwxNSBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPHRp
dGxlPkZsb2F0cyBsYXlvdXQgcGVyZm9ybWFuY2UgdGVzdGVyIHdpdGggMiBjb2x1bW5zIGFuZCAx
MDAgcm93czwvdGl0bGU+CisgICAgICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0icmVz
b3VyY2VzL2Zsb2F0cy5jc3MiIFRZUEU9InRleHQvY3NzIj48L2xpbms+CisgICAgICAgIDxzY3Jp
cHQgc3JjPSIuLi9yZXNvdXJjZXMvcnVubmVyLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlw
dCBzcmM9InJlc291cmNlcy9mbG9hdHMuanMiPjwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8
Ym9keT4KKyAgICAgICAgPHByZSBpZD0ibG9nIj48L3ByZT4KKyAgICAgICAgPHNjcmlwdD4KKyAg
ICAgICAgICAgIHN0YXJ0KDEwLCBjcmVhdGVGbG9hdHNMYXlvdXRUZXN0RnVuY3Rpb24oMjAsIDEw
MCwgMTAwLCAxMDApLCAxKTsKKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9ib2R5PgorPC9odG1s
PgpkaWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9MYXlvdXQvZmxvYXRzXzJfMTAwLmh0bWwg
Yi9QZXJmb3JtYW5jZVRlc3RzL0xheW91dC9mbG9hdHNfMl8xMDAuaHRtbApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwLi4xM2M2NzBkCi0tLSAvZGV2L251bGwKKysrIGIvUGVyZm9y
bWFuY2VUZXN0cy9MYXlvdXQvZmxvYXRzXzJfMTAwLmh0bWwKQEAgLTAsMCArMSwxNSBAQAorPCFE
T0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPHRpdGxlPkZsb2F0cyBs
YXlvdXQgcGVyZm9ybWFuY2UgdGVzdGVyIHdpdGggMiBjb2x1bW5zIGFuZCAxMDAgcm93czwvdGl0
bGU+CisgICAgICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0icmVzb3VyY2VzL2Zsb2F0
cy5jc3MiIFRZUEU9InRleHQvY3NzIj48L2xpbms+CisgICAgICAgIDxzY3JpcHQgc3JjPSIuLi9y
ZXNvdXJjZXMvcnVubmVyLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9InJlc291
cmNlcy9mbG9hdHMuanMiPjwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8Ym9keT4KKyAgICAg
ICAgPHByZSBpZD0ibG9nIj48L3ByZT4KKyAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIHN0
YXJ0KDEwLCBjcmVhdGVGbG9hdHNMYXlvdXRUZXN0RnVuY3Rpb24oMiwgMTAwLCAwLCA1MDApLCAx
KTsKKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEv
UGVyZm9ybWFuY2VUZXN0cy9MYXlvdXQvZmxvYXRzXzJfMTAwX25lc3RlZC5odG1sIGIvUGVyZm9y
bWFuY2VUZXN0cy9MYXlvdXQvZmxvYXRzXzJfMTAwX25lc3RlZC5odG1sCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY3YWVjZTMKLS0tIC9kZXYvbnVsbAorKysgYi9QZXJmb3Jt
YW5jZVRlc3RzL0xheW91dC9mbG9hdHNfMl8xMDBfbmVzdGVkLmh0bWwKQEAgLTAsMCArMSwxNSBA
QAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPHRpdGxlPkZs
b2F0cyBsYXlvdXQgcGVyZm9ybWFuY2UgdGVzdGVyIHdpdGggMiBjb2x1bW5zIGFuZCAxMDAgcm93
czwvdGl0bGU+CisgICAgICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0icmVzb3VyY2Vz
L2Zsb2F0cy5jc3MiIFRZUEU9InRleHQvY3NzIj48L2xpbms+CisgICAgICAgIDxzY3JpcHQgc3Jj
PSIuLi9yZXNvdXJjZXMvcnVubmVyLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9
InJlc291cmNlcy9mbG9hdHMuanMiPjwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8Ym9keT4K
KyAgICAgICAgPHByZSBpZD0ibG9nIj48L3ByZT4KKyAgICAgICAgPHNjcmlwdD4KKyAgICAgICAg
ICAgIHN0YXJ0KDEwLCBjcmVhdGVGbG9hdHNMYXlvdXRUZXN0RnVuY3Rpb24oMiwgMTAwLCAxMDAs
IDUwMCksIDEpOworICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYg
LS1naXQgYS9QZXJmb3JtYW5jZVRlc3RzL0xheW91dC9mbG9hdHNfNTBfMTAwLmh0bWwgYi9QZXJm
b3JtYW5jZVRlc3RzL0xheW91dC9mbG9hdHNfNTBfMTAwLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMC4uZjYzYTAyNQotLS0gL2Rldi9udWxsCisrKyBiL1BlcmZvcm1hbmNl
VGVzdHMvTGF5b3V0L2Zsb2F0c181MF8xMDAuaHRtbApAQCAtMCwwICsxLDE1IEBACis8IURPQ1RZ
UEUgaHRtbD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8dGl0bGU+RmxvYXRzIGxheW91
dCBwZXJmb3JtYW5jZSB0ZXN0ZXIgd2l0aCAyIGNvbHVtbnMgYW5kIDEwMCByb3dzPC90aXRsZT4K
KyAgICAgICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJyZXNvdXJjZXMvZmxvYXRzLmNz
cyIgVFlQRT0idGV4dC9jc3MiPjwvbGluaz4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii4uL3Jlc291
cmNlcy9ydW5uZXIuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0icmVzb3VyY2Vz
L2Zsb2F0cy5qcyI+PC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxib2R5PgorICAgICAgICA8
cHJlIGlkPSJsb2ciPjwvcHJlPgorICAgICAgICA8c2NyaXB0PgorICAgICAgICAgICAgc3RhcnQo
MTAsIGNyZWF0ZUZsb2F0c0xheW91dFRlc3RGdW5jdGlvbig1MCwgMTAwLCAwLCAyMCksIDEpOwor
ICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9QZXJm
b3JtYW5jZVRlc3RzL0xheW91dC9mbG9hdHNfNTBfMTAwX25lc3RlZC5odG1sIGIvUGVyZm9ybWFu
Y2VUZXN0cy9MYXlvdXQvZmxvYXRzXzUwXzEwMF9uZXN0ZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwLi5hZTI1NzU3Ci0tLSAvZGV2L251bGwKKysrIGIvUGVyZm9ybWFu
Y2VUZXN0cy9MYXlvdXQvZmxvYXRzXzUwXzEwMF9uZXN0ZWQuaHRtbApAQCAtMCwwICsxLDE1IEBA
Cis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8dGl0bGU+Rmxv
YXRzIGxheW91dCBwZXJmb3JtYW5jZSB0ZXN0ZXIgd2l0aCAyIGNvbHVtbnMgYW5kIDEwMCByb3dz
PC90aXRsZT4KKyAgICAgICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJyZXNvdXJjZXMv
ZmxvYXRzLmNzcyIgVFlQRT0idGV4dC9jc3MiPjwvbGluaz4KKyAgICAgICAgPHNjcmlwdCBzcmM9
Ii4uL3Jlc291cmNlcy9ydW5uZXIuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0i
cmVzb3VyY2VzL2Zsb2F0cy5qcyI+PC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxib2R5Pgor
ICAgICAgICA8cHJlIGlkPSJsb2ciPjwvcHJlPgorICAgICAgICA8c2NyaXB0PgorICAgICAgICAg
ICAgc3RhcnQoMTAsIGNyZWF0ZUZsb2F0c0xheW91dFRlc3RGdW5jdGlvbig1MCwgMTAwLCAxMDAs
IDIwKSwgMSk7CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAt
LWdpdCBhL1BlcmZvcm1hbmNlVGVzdHMvTGF5b3V0L3Jlc291cmNlcy9mbG9hdHMuY3NzIGIvUGVy
Zm9ybWFuY2VUZXN0cy9MYXlvdXQvcmVzb3VyY2VzL2Zsb2F0cy5jc3MKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMC4uYTA5MzQyNgotLS0gL2Rldi9udWxsCisrKyBiL1BlcmZvcm1h
bmNlVGVzdHMvTGF5b3V0L3Jlc291cmNlcy9mbG9hdHMuY3NzCkBAIC0wLDAgKzEsMTggQEAKKy5j
b250YWluZXIgeworICAgIGRpc3BsYXk6IG5vbmU7Cit9CisKKy5mbG9hdCB7CisgICAgZmxvYXQ6
IGxlZnQ7CisgICAgd2lkdGg6IDVweDsKKyAgICBoZWlnaHQ6IDVweDsKKyAgICBib3JkZXI6IDFw
eCBzb2xpZCBncmVlbjsKK30KKworLmJpZyB7CisgICAgd2lkdGg6IDEwcHg7Cit9CisKKy5mbG9h
dC1lbmQgeworICAgIGNsZWFyOmxlZnQ7Cit9ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpk
aWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9MYXlvdXQvcmVzb3VyY2VzL2Zsb2F0cy5qcyBi
L1BlcmZvcm1hbmNlVGVzdHMvTGF5b3V0L3Jlc291cmNlcy9mbG9hdHMuanMKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYmU1ZWYxMgotLS0gL2Rldi9udWxsCisrKyBiL1BlcmZv
cm1hbmNlVGVzdHMvTGF5b3V0L3Jlc291cmNlcy9mbG9hdHMuanMKQEAgLTAsMCArMSw1NyBAQAor
KGZ1bmN0aW9uKCkgeworICAgIGZ1bmN0aW9uIGNyZWF0ZUVsZW1lbnQodGFnLCBwYXJlbnQsIGNs
YXNzTmFtZSwgaWQpIHsKKyAgICAgICAgdmFyIGVsID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCh0
YWcpOworICAgICAgICBlbC5jbGFzc05hbWUgPSBjbGFzc05hbWU7CisgICAgICAgIGlmIChpZCkK
KyAgICAgICAgICAgIGVsLmlkID0gaWQ7CisgICAgICAgIHBhcmVudC5hcHBlbmRDaGlsZChlbCk7
CisgICAgICAgIHJldHVybiBlbDsKKyAgICB9CisKKyAgICBmdW5jdGlvbiBjcmVhdGVTZXQod2lk
dGgsIGhlaWdodCwgbmVzdGVkKSB7CisgICAgICAgIHZhciBjb250YWluZXIgPSBjcmVhdGVFbGVt
ZW50KCJkaXYiLCBkb2N1bWVudC5ib2R5LCAiY29udGFpbmVyIik7CisgICAgICAgIGZvciAodmFy
IHkgPSAwOyB5IDwgaGVpZ2h0OyArK3kpIHsKKyAgICAgICAgICAgIGZvciAodmFyIHggPSAwOyB4
IDwgd2lkdGg7ICsreCkKKyAgICAgICAgICAgICAgICBjcmVhdGVFbGVtZW50KCJkaXYiLCBjb250
YWluZXIsICJmbG9hdCIsICJmbG9hdCIgKyB4ICsgIl8iICsgeSk7CisKKyAgICAgICAgICAgIHZh
ciBuZXN0ZWRDb250YWluZXIgPSBjb250YWluZXI7CisgICAgICAgICAgICBmb3IgKCA7IG5lc3Rl
ZCA+IDA7IC0tbmVzdGVkKQorICAgICAgICAgICAgICAgIG5lc3RlZENvbnRhaW5lciA9IGNyZWF0
ZUVsZW1lbnQoImRpdiIsIG5lc3RlZENvbnRhaW5lciwgIm5lc3RlZCIsICJuZXN0ZWQiICsgeCAr
ICJfIiArIG5lc3RlZCk7CisgICAgICAgICAgICAKKyAgICAgICAgICAgIGNyZWF0ZUVsZW1lbnQo
ImRpdiIsIGNvbnRhaW5lciwgImZsb2F0LWVuZCIsICJlbmQiICsgeCkKKyAgICAgICAgfQorICAg
ICAgICByZXR1cm4gY29udGFpbmVyOworICAgIH0KKworICAgIGZ1bmN0aW9uIHRvZ2dsZShzdHIs
IHN0cjEsIHN0cjIpIHsKKyAgICAgICAgcmV0dXJuIHN0ciA9PSBzdHIxID8gc3RyMiA6IHN0cjE7
CisgICAgfQorICAgIAorICAgIGZ1bmN0aW9uIHJlc2V0VGVzdCgpIHsKKyAgICAgICAgcmVzZXRS
YW5kb21TZWVkKCk7CisgICAgICAgIHZhciBsaXN0ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFs
bCgiLmZsb2F0LmJpZyIpOworICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGxpc3QubGVuZ3Ro
OyArK2kpCisgICAgICAgICAgICBsaXN0W2ldLmNsYXNzTmFtZSA9ICJmbG9hdCI7CisgICAgfQor
ICAgIAorICAgIGZ1bmN0aW9uIGNyZWF0ZVRlc3RGdW5jdGlvbih3aWR0aCwgaGVpZ2h0LCBuZXN0
ZWQsIHJ1bnMpIHsKKyAgICAgICAgdmFyIGNvbnRhaW5lciA9IGNyZWF0ZVNldCh3aWR0aCwgaGVp
Z2h0LCBuZXN0ZWQpOworICAgICAgICBuZXN0ZWQgPSBuZXN0ZWQgfHwgMDsKKyAgICAgICAgcnVu
cyA9IHJ1bnMgfHwgMTA7CisgICAgICAgIHJldHVybiBmdW5jdGlvbigpIHsKKyAgICAgICAgICAg
IGNvbnRhaW5lci5zdHlsZS5kaXNwbGF5ID0gImJsb2NrIjsKKyAgICAgICAgICAgIGZvciAodmFy
IGkgPSAwOyBpIDwgcnVuczsgKytpKSB7CisgICAgICAgICAgICAgICAgdmFyIHggPSBNYXRoLmZs
b29yKE1hdGgucmFuZG9tKCkgKiB3aWR0aCk7CisgICAgICAgICAgICAgICAgdmFyIHkgPSBNYXRo
LmZsb29yKE1hdGgucmFuZG9tKCkgKiBoZWlnaHQpOworICAgICAgICAgICAgICAgIHZhciBlbCA9
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmbG9hdCIgKyB4ICsgIl8iICsgeSk7CisgICAgICAg
ICAgICAgICAgZWwuY2xhc3NOYW1lID0gdG9nZ2xlKGVsLmNsYXNzTmFtZSwgImZsb2F0IiwgImZs
b2F0IGJpZyIpOworICAgICAgICAgICAgICAgIC8vIEZvcmNlIGEgbGF5b3V0LgorICAgICAgICAg
ICAgICAgIGNvbnRhaW5lci5jbGllbnRIZWlnaHQ7CisgICAgICAgICAgICB9CisgICAgICAgICAg
ICByZXNldFRlc3QoKTsKKyAgICAgICAgICAgIGNvbnRhaW5lci5zdHlsZS5kaXNwbGF5ID0gIm5v
bmUiOworICAgICAgICB9CisgICAgfQorICAgIAorICAgIHdpbmRvdy5jcmVhdGVGbG9hdHNMYXlv
dXRUZXN0RnVuY3Rpb24gPSBjcmVhdGVUZXN0RnVuY3Rpb247Cit9KSgpOwpkaWZmIC0tZ2l0IGEv
UGVyZm9ybWFuY2VUZXN0cy9Ta2lwcGVkIGIvUGVyZm9ybWFuY2VUZXN0cy9Ta2lwcGVkCmluZGV4
IGE1MjJjNWEuLmJiZGMzNmQgMTAwNjQ0Ci0tLSBhL1BlcmZvcm1hbmNlVGVzdHMvU2tpcHBlZAor
KysgYi9QZXJmb3JtYW5jZVRlc3RzL1NraXBwZWQKQEAgLTIsNyArMiw2IEBACiBNdXRhdGlvbgog
CiAjIERvIG5vdCBjb25mb3JtIHRvIFdlYktpdCBvciBDaHJvbWl1bSBwZXJmIHRlc3Qgc3R5bGVz
Ci1MYXlvdXQKIFBhZ2VMb2FkCiBTdW5TcGlkZXIKIFhTU0F1ZGl0b3IKZGlmZiAtLWdpdCBhL1Bl
cmZvcm1hbmNlVGVzdHMvcmVzb3VyY2VzL3J1bm5lci5qcyBiL1BlcmZvcm1hbmNlVGVzdHMvcmVz
b3VyY2VzL3J1bm5lci5qcwppbmRleCBmYjQ3OWU0Li4wNzRlYzA2IDEwMDY0NAotLS0gYS9QZXJm
b3JtYW5jZVRlc3RzL3Jlc291cmNlcy9ydW5uZXIuanMKKysrIGIvUGVyZm9ybWFuY2VUZXN0cy9y
ZXNvdXJjZXMvcnVubmVyLmpzCkBAIC0xLDMgKzEsMjQgQEAKKy8vIFRvIG1ha2UgdGhlIGJlbmNo
bWFyayByZXN1bHRzIHByZWRpY3RhYmxlLCB3ZSByZXBsYWNlIE1hdGgucmFuZG9tIHdpdGggYQor
Ly8gMTAwJSBkZXRlcm1pbmlzdGljIGFsdGVybmF0aXZlLgordmFyIGluaXRpYWxSYW5kb21TZWVk
ID0gNDk3MzQzMjE7Cit2YXIgcmFuZG9tU2VlZCA9IGluaXRpYWxSYW5kb21TZWVkOworCitmdW5j
dGlvbiByZXNldFJhbmRvbVNlZWQoKSB7CisgICAgcmFuZG9tU2VlZCA9IGluaXRpYWxSYW5kb21T
ZWVkCit9CisKK01hdGgucmFuZG9tID0gZnVuY3Rpb24oKSB7CisgICAgLy8gUm9iZXJ0IEplbmtp
bnMnIDMyIGJpdCBpbnRlZ2VyIGhhc2ggZnVuY3Rpb24uCisgICAgcmFuZG9tU2VlZCA9ICgocmFu
ZG9tU2VlZCArIDB4N2VkNTVkMTYpICsgKHJhbmRvbVNlZWQgPDwgMTIpKSAgJiAweGZmZmZmZmZm
OworICAgIHJhbmRvbVNlZWQgPSAoKHJhbmRvbVNlZWQgXiAweGM3NjFjMjNjKSBeIChyYW5kb21T
ZWVkID4+PiAxOSkpICYgMHhmZmZmZmZmZjsKKyAgICByYW5kb21TZWVkID0gKChyYW5kb21TZWVk
ICsgMHgxNjU2NjdiMSkgKyAocmFuZG9tU2VlZCA8PCA1KSkgICAmIDB4ZmZmZmZmZmY7CisgICAg
cmFuZG9tU2VlZCA9ICgocmFuZG9tU2VlZCArIDB4ZDNhMjY0NmMpIF4gKHJhbmRvbVNlZWQgPDwg
OSkpICAgJiAweGZmZmZmZmZmOworICAgIHJhbmRvbVNlZWQgPSAoKHJhbmRvbVNlZWQgKyAweGZk
NzA0NmM1KSArIChyYW5kb21TZWVkIDw8IDMpKSAgICYgMHhmZmZmZmZmZjsKKyAgICByYW5kb21T
ZWVkID0gKChyYW5kb21TZWVkIF4gMHhiNTVhNGYwOSkgXiAocmFuZG9tU2VlZCA+Pj4gMTYpKSAm
IDB4ZmZmZmZmZmY7CisgICAgcmV0dXJuIChyYW5kb21TZWVkICYgMHhmZmZmZmZmKSAvIDB4MTAw
MDAwMDA7Cit9OworCisKIGZ1bmN0aW9uIGxvZyh0ZXh0KSB7CiAgICAgZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoImxvZyIpLmlubmVySFRNTCArPSB0ZXh0ICsgIlxuIjsKICAgICB3aW5kb3cuc2Ny
b2xsVG8oMCwgZG9jdW1lbnQuYm9keS5oZWlnaHQpOwo=
</data>
<flag name="review"
          id="135459"
          type_id="1"
          status="+"
          setter="rniwa"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>131967</attachid>
            <date>2012-03-14 18:01:21 -0700</date>
            <delta_ts>2012-03-14 18:15:58 -0700</delta_ts>
            <desc>Rebase #2</desc>
            <filename>bug77051_1.patch</filename>
            <type>text/plain</type>
            <size>17695</size>
            <attacher name="Alexandru Chiculita">achicu</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1BlcmZvcm1hbmNlVGVzdHMvQ2hhbmdlTG9nIGIvUGVyZm9ybWFuY2VUZXN0
cy9DaGFuZ2VMb2cKaW5kZXggNzJlNjhjMi4uM2ZhMmQ0YiAxMDA2NDQKLS0tIGEvUGVyZm9ybWFu
Y2VUZXN0cy9DaGFuZ2VMb2cKKysrIGIvUGVyZm9ybWFuY2VUZXN0cy9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0MCBAQAorMjAxMi0wMy0xNCAgQWxleGFuZHJ1IENoaWN1bGl0YSAgPGFjaGljdUBhZG9i
ZS5jb20+CisKKyAgICAgICAgTGF5b3V0L2Zsb2F0cy5odG1sIHNob3VsZCBiZSBydW5uYWJsZSBi
eSBydW4tcGVyZi10ZXN0cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9NzcwNTEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBJJ3ZlIHNwbGl0IExheW91dC9mbG9hdHMuaHRtbCBpbnRvIG11bHRpcGxlIHRlc3Rz
IGZvciBlYWNoIGJ1dHRvbiBpbiB0aGUgb3JpZ2luYWwgbWFudWFsIHRlc3QuCisgICAgICAgIFNv
bWUgdGVzdHMgdGFrZSBsb25nZXIgdG8gcnVuIGFuZCBJJ3ZlIGNoYW5nZWQgdGhlIG51bWJlciBv
ZiBpdGVyYXRpb25zLCBzbyB0aGF0IGVhY2ggdGVzdHMgZmluaXNoZXMgdW5kZXIgMzBzIHBlciBy
dW4uCisKKyAgICAgICAgKiBET00vcmVzb3VyY2VzL2RvbS1wZXJmLmpzOgorICAgICAgICAqIExh
eW91dC9mbG9hdHMuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBMYXlvdXQvZmxvYXRzXzEwMF8x
MDAuaHRtbDogQWRkZWQuCisgICAgICAgICogTGF5b3V0L2Zsb2F0c18xMDBfMTAwX25lc3RlZC5o
dG1sOiBBZGRlZC4KKyAgICAgICAgKiBMYXlvdXQvZmxvYXRzXzIwXzEwMC5odG1sOiBBZGRlZC4K
KyAgICAgICAgKiBMYXlvdXQvZmxvYXRzXzIwXzEwMF9uZXN0ZWQuaHRtbDogQWRkZWQuCisgICAg
ICAgICogTGF5b3V0L2Zsb2F0c18yXzEwMC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBMYXlvdXQv
ZmxvYXRzXzJfMTAwX25lc3RlZC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBMYXlvdXQvZmxvYXRz
XzUwXzEwMC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBMYXlvdXQvZmxvYXRzXzUwXzEwMF9uZXN0
ZWQuaHRtbDogQWRkZWQuCisgICAgICAgICogTGF5b3V0L3Jlc291cmNlcy9mbG9hdHMuY3NzOiBB
ZGRlZC4KKyAgICAgICAgKC5jb250YWluZXIpOgorICAgICAgICAoLmZsb2F0KToKKyAgICAgICAg
KC5iaWcpOgorICAgICAgICAoLmZsb2F0LWVuZCk6CisgICAgICAgICogTGF5b3V0L3Jlc291cmNl
cy9mbG9hdHMuanM6IEFkZGVkLgorICAgICAgICAoLik6CisgICAgICAgICogU2tpcHBlZDoKKyAg
ICAgICAgKiByZXNvdXJjZXMvcnVubmVyLmpzOgorICAgICAgICAoUGVyZlRlc3RSdW5uZXIucmVz
ZXRSYW5kb21TZWVkKToKKyAgICAgICAgKFBlcmZUZXN0UnVubmVyLnJhbmRvbSk6CisgICAgICAg
IChNYXRoLnJhbmRvbSk6CisgICAgICAgICAgICBNb3ZlZCB0aGUgTWF0aC5yYW5kb20gdG8gcnVu
bmVyLmpzIHRvIGJlIHVzZWQgYnkgYWxsIHRlc3RzLgorICAgICAgICAgICAgQWRkZWQgcmVzZXRS
YW5kb21TZWVkIHRvIGJyaW5nIHRoZSByYW5kb21pemVyIGJhY2sgdG8gaW5pdGlhbCBzZWVkLgor
ICAgICAgICAgICAgSXQgaXMgdXNlZnVsIHRvIGdldCB0aGUgc2FtZSByZXN1bHRzIGF0IGV2ZXJ5
IHJ1biBhbmQgbWluaW1pemUgdGhlCisgICAgICAgICAgICBkaWZmZXJlbmNlcyBiZXR3ZWVuIHJ1
bnMuCisKIDIwMTItMDMtMTQgIFNoZXJpZmYgQm90ICA8d2Via2l0LnJldmlldy5ib3RAZ21haWwu
Y29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHIxMTA1NTkuCmRpZmYgLS1n
aXQgYS9QZXJmb3JtYW5jZVRlc3RzL0RPTS9yZXNvdXJjZXMvZG9tLXBlcmYuanMgYi9QZXJmb3Jt
YW5jZVRlc3RzL0RPTS9yZXNvdXJjZXMvZG9tLXBlcmYuanMKaW5kZXggNDVlYjRjNi4uMTEyOTFh
MyAxMDA2NDQKLS0tIGEvUGVyZm9ybWFuY2VUZXN0cy9ET00vcmVzb3VyY2VzL2RvbS1wZXJmLmpz
CisrKyBiL1BlcmZvcm1hbmNlVGVzdHMvRE9NL3Jlc291cmNlcy9kb20tcGVyZi5qcwpAQCAtMTE1
LDIyICsxMTUsNiBAQCBmdW5jdGlvbiBHZXRQcm9maWxlcigpIHsKICAgICByZXR1cm4gbmV3IFBz
ZXVkb1Byb2ZpbGVyKCk7CiB9CiAKLS8vIFRvIG1ha2UgdGhlIGJlbmNobWFyayByZXN1bHRzIHBy
ZWRpY3RhYmxlLCB3ZSByZXBsYWNlIE1hdGgucmFuZG9tIHdpdGggYQotLy8gMTAwJSBkZXRlcm1p
bmlzdGljIGFsdGVybmF0aXZlLgotTWF0aC5yYW5kb20gPSAoZnVuY3Rpb24oKSB7Ci0gICAgdmFy
IHNlZWQgPSA0OTczNDMyMTsKLSAgICByZXR1cm4gZnVuY3Rpb24oKSB7Ci0gICAgICAgIC8vIFJv
YmVydCBKZW5raW5zJyAzMiBiaXQgaW50ZWdlciBoYXNoIGZ1bmN0aW9uLgotICAgICAgICBzZWVk
ID0gKChzZWVkICsgMHg3ZWQ1NWQxNikgKyAoc2VlZCA8PCAxMikpICAmIDB4ZmZmZmZmZmY7Ci0g
ICAgICAgIHNlZWQgPSAoKHNlZWQgXiAweGM3NjFjMjNjKSBeIChzZWVkID4+PiAxOSkpICYgMHhm
ZmZmZmZmZjsKLSAgICAgICAgc2VlZCA9ICgoc2VlZCArIDB4MTY1NjY3YjEpICsgKHNlZWQgPDwg
NSkpICAgJiAweGZmZmZmZmZmOwotICAgICAgICBzZWVkID0gKChzZWVkICsgMHhkM2EyNjQ2Yykg
XiAoc2VlZCA8PCA5KSkgICAmIDB4ZmZmZmZmZmY7Ci0gICAgICAgIHNlZWQgPSAoKHNlZWQgKyAw
eGZkNzA0NmM1KSArIChzZWVkIDw8IDMpKSAgICYgMHhmZmZmZmZmZjsKLSAgICAgICAgc2VlZCA9
ICgoc2VlZCBeIDB4YjU1YTRmMDkpIF4gKHNlZWQgPj4+IDE2KSkgJiAweGZmZmZmZmZmOwotICAg
ICAgICByZXR1cm4gKHNlZWQgJiAweGZmZmZmZmYpIC8gMHgxMDAwMDAwMDsKLSAgICB9OwotfSko
KTsKLQogZnVuY3Rpb24gQmVuY2htYXJrKG5hbWUsIHJ1biwgb3B0X3NldHVwLCBvcHRfY2xlYW51
cCwgb3B0X3NoYXJlU2V0dXApIHsKICAgICB0aGlzLm5hbWUgPSBuYW1lOwogICAgIHRoaXMudGlt
ZVRvUnVuID0gMTAwOyAvLyBtcy4KZGlmZiAtLWdpdCBhL1BlcmZvcm1hbmNlVGVzdHMvTGF5b3V0
L2Zsb2F0cy5odG1sIGIvUGVyZm9ybWFuY2VUZXN0cy9MYXlvdXQvZmxvYXRzLmh0bWwKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDUyZjk1YmEuLjAwMDAwMDAKLS0tIGEvUGVyZm9ybWFu
Y2VUZXN0cy9MYXlvdXQvZmxvYXRzLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxMDggKzAsMCBA
QAotPCFET0NUWVBFIGh0bWw+Ci08aHRtbD4KLSAgICA8aGVhZD4KLSAgICAgICAgPHRpdGxlPkZs
b2F0cyBsYXlvdXQgcGVyZm9ybWFuY2UgdGVzdGVyPC90aXRsZT4KLSAgICAgICAgPHN0eWxlPgot
ICAgICAgICAgICAgLmZsb2F0IHsKLSAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDsKLSAgICAg
ICAgICAgICAgICB3aWR0aDogNXB4OwotICAgICAgICAgICAgICAgIGhlaWdodDogNXB4OwotICAg
ICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGdyZWVuOwotICAgICAgICAgICAgfQotICAg
ICAgICAgICAgLmJpZyB7Ci0gICAgICAgICAgICAgICAgd2lkdGg6IDEwcHg7Ci0gICAgICAgICAg
ICB9Ci0gICAgICAgICAgICAuZmxvYXQtZW5kIHsKLSAgICAgICAgICAgICAgICBjbGVhcjpsZWZ0
OwotICAgICAgICAgICAgfQotCi0gICAgICAgICAgICAjZnJhbWVyYXRlX3BhbmVsIHsKLSAgICAg
ICAgICAgICAgICBkaXNwbGF5OiBub25lOwotICAgICAgICAgICAgfQotICAgICAgICA8L3N0eWxl
PgotICAgICAgICA8c2NyaXB0PgotICAgICAgICAgICAgZnVuY3Rpb24gY3JlYXRlRWxlbWVudCh0
YWcsIHBhcmVudCwgY2xhc3NOYW1lLCBpZCkKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAg
ICB2YXIgZWwgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KHRhZyk7Ci0gICAgICAgICAgICAgICAg
ZWwuY2xhc3NOYW1lID0gY2xhc3NOYW1lOwotICAgICAgICAgICAgICAgIGVsLmlkID0gaWQ7Ci0g
ICAgICAgICAgICAgICAgcGFyZW50LmFwcGVuZENoaWxkKGVsKTsKLSAgICAgICAgICAgICAgICBy
ZXR1cm4gZWw7Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIGZ1bmN0aW9uIGNyZWF0ZVNl
dCh3aWR0aCwgaGVpZ2h0LCBuZXN0ZWQpCi0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAg
dmFyIGNvbnRhaW5lciA9IGNyZWF0ZUVsZW1lbnQoImRpdiIsIGRvY3VtZW50LmJvZHksICJjb250
YWluZXIiKTsKLSAgICAgICAgICAgICAgICBmb3IgKHZhciB5ID0gMDsgeSA8IGhlaWdodDsgKyt5
KSB7Ci0gICAgICAgICAgICAgICAgICAgIGZvciAodmFyIHggPSAwOyB4IDwgd2lkdGg7ICsreCkK
LSAgICAgICAgICAgICAgICAgICAgICAgIGNyZWF0ZUVsZW1lbnQoImRpdiIsIGNvbnRhaW5lciwg
ImZsb2F0IiwgImZsb2F0IiArIHggKyAiXyIgKyB5KTsKLQotICAgICAgICAgICAgICAgICAgICB2
YXIgbmVzdGVkQ29udGFpbmVyID0gY29udGFpbmVyOwotICAgICAgICAgICAgICAgICAgICBmb3Ig
KCA7IG5lc3RlZCA+IDA7IC0tbmVzdGVkKQotICAgICAgICAgICAgICAgICAgICAgICAgbmVzdGVk
Q29udGFpbmVyID0gY3JlYXRlRWxlbWVudCgiZGl2IiwgbmVzdGVkQ29udGFpbmVyLCAibmVzdGVk
IiwgIm5lc3RlZCIgKyB4ICsgIl8iICsgbmVzdGVkKTsKLSAgICAgICAgICAgICAgICAgICAgCi0g
ICAgICAgICAgICAgICAgICAgIGNyZWF0ZUVsZW1lbnQoImRpdiIsIGNvbnRhaW5lciwgImZsb2F0
LWVuZCIsICJlbmQiICsgeCkKLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICB9Ci0KLSAg
ICAgICAgICAgIGZ1bmN0aW9uIHRvZ2dsZShzdHIsIHN0cjEsIHN0cjIpCi0gICAgICAgICAgICB7
Ci0gICAgICAgICAgICAgICAgaWYgKHN0ciA9PSBzdHIxKQotICAgICAgICAgICAgICAgICAgICBy
ZXR1cm4gc3RyMjsKLSAgICAgICAgICAgICAgICByZXR1cm4gc3RyMTsKLSAgICAgICAgICAgIH0K
LQotICAgICAgICAgICAgZnVuY3Rpb24gdGVzdCh3aWR0aCwgaGVpZ2h0LCBuZXN0ZWQpIAotICAg
ICAgICAgICAgewotICAgICAgICAgICAgICAgIG5lc3RlZCA9IG5lc3RlZCB8fCAwOwotCi0gICAg
ICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RfcGFuZWwiKS5zdHlsZS5k
aXNwbGF5ID0gIm5vbmUiOwotICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJmcmFtZXJhdGVfcGFuZWwiKS5zdHlsZS5kaXNwbGF5ID0gImJsb2NrIjsKLQotICAgICAgICAg
ICAgICAgIGNyZWF0ZVNldCh3aWR0aCwgaGVpZ2h0LCBuZXN0ZWQpOwotICAgICAgICAgICAgICAg
IHZhciB1cGRhdGVzID0gMDsKLSAgICAgICAgICAgICAgICB2YXIgc3RhcnRUaW1lID0gbmV3IERh
dGUoKTsKLQotICAgICAgICAgICAgICAgIGZ1bmN0aW9uIHVwZGF0ZVRpbWVyKCkKLSAgICAgICAg
ICAgICAgICB7Ci0gICAgICAgICAgICAgICAgICAgICsrdXBkYXRlczsKLQotICAgICAgICAgICAg
ICAgICAgICB2YXIgbmV3VGltZSA9IG5ldyBEYXRlKCk7Ci0gICAgICAgICAgICAgICAgICAgIHZh
ciBkZWx0YVRpbWUgPSBuZXdUaW1lIC0gc3RhcnRUaW1lOwotCi0gICAgICAgICAgICAgICAgICAg
IGlmICgoZGVsdGFUaW1lID4gMCAmJiB1cGRhdGVzID4gMTAwKSB8fCBkZWx0YVRpbWUgPiAxMDAw
KSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICB2YXIgZnBzID0gdXBkYXRlcyAqIDEwMCAvIGRl
bHRhVGltZTsKLSAgICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJmcHMiKS5pbm5lckhUTUwgPSBmcHM7Ci0gICAgICAgICAgICAgICAgICAgICAgICB1cGRhdGVz
ID0gMDsKLSAgICAgICAgICAgICAgICAgICAgICAgIHN0YXJ0VGltZSA9IG5ld1RpbWU7Ci0gICAg
ICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgICAgICBm
dW5jdGlvbiB1cGRhdGUoKQotICAgICAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICAgICAg
dmFyIHggPSBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiB3aWR0aCk7Ci0gICAgICAgICAgICAg
ICAgICAgIHZhciB5ID0gTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogaGVpZ2h0KTsKLSAgICAg
ICAgICAgICAgICAgICAgdmFyIGVsID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZsb2F0IiAr
IHggKyAiXyIgKyB5KTsKLSAgICAgICAgICAgICAgICAgICAgZWwuY2xhc3NOYW1lID0gdG9nZ2xl
KGVsLmNsYXNzTmFtZSwgImZsb2F0IiwgImZsb2F0IGJpZyIpOwotICAgICAgICAgICAgICAgICAg
ICB1cGRhdGVUaW1lcigpOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBzZXRJ
bnRlcnZhbCh1cGRhdGUsIDApOwotICAgICAgICAgICAgfQotICAgICAgICA8L3NjcmlwdD4KLSAg
ICA8L2hlYWQ+Ci0gICAgPGJvZHk+Ci0gICAgICAgIDxkaXYgaWQ9ImZyYW1lcmF0ZV9wYW5lbCI+
RnJhbWVyYXRlOiA8c3BhbiBpZD0iZnBzIj5jYWxjdWxhdGluZy4uLjwvc3Bhbj4gZnBzPC9kaXY+
Ci0gICAgICAgIDxkaXYgaWQ9InRlc3RfcGFuZWwiPgotICAgICAgICAgICAgPHA+Q2hvb3NlIHRo
ZSBzaXplIG9mIHRoZSB0ZXN0OjwvcD4KLSAgICAgICAgICAgIDxidXR0b24gb25jbGljaz0idGVz
dCgyLCAxMDApIj4yIGJ5IDEwMDwvYnV0dG9uPgotICAgICAgICAgICAgPGJ1dHRvbiBvbmNsaWNr
PSJ0ZXN0KDIwLCAxMDApIj4yMCBieSAxMDA8L2J1dHRvbj4KLSAgICAgICAgICAgIDxidXR0b24g
b25jbGljaz0idGVzdCg1MCwgMTAwKSI+NTAgYnkgMTAwPC9idXR0b24+Ci0gICAgICAgICAgICA8
YnV0dG9uIG9uY2xpY2s9InRlc3QoMTAwLCAxMDApIj4xMDAgYnkgMTAwPC9idXR0b24+Ci0gICAg
ICAgICAgICA8cD5OZXN0ZWQgZGl2czo8L3A+Ci0gICAgICAgICAgICA8YnV0dG9uIG9uY2xpY2s9
InRlc3QoMiwgMTAwLCAxMDApIj4yIGJ5IDEwMCwgMTAwIG5lc3RlZDwvYnV0dG9uPgotICAgICAg
ICAgICAgPGJ1dHRvbiBvbmNsaWNrPSJ0ZXN0KDIwLCAxMDAsIDEwMCkiPjIwIGJ5IDEwMCwgMTAw
IG5lc3RlZDwvYnV0dG9uPgotICAgICAgICAgICAgPGJ1dHRvbiBvbmNsaWNrPSJ0ZXN0KDUwLCAx
MDAsIDEwMCkiPjUwIGJ5IDEwMCwgMTAwIG5lc3RlZDwvYnV0dG9uPgotICAgICAgICAgICAgPGJ1
dHRvbiBvbmNsaWNrPSJ0ZXN0KDEwMCwgMTAwLCAxMDApIj4xMDAgYnkgMTAwLCAxMDAgbmVzdGVk
PC9idXR0b24+Ci0gICAgICAgIDwvZGl2PgotICAgIDwvYm9keT4KLTwvaHRtbD4KXCBObyBuZXds
aW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3RzL0xheW91dC9m
bG9hdHNfMTAwXzEwMC5odG1sIGIvUGVyZm9ybWFuY2VUZXN0cy9MYXlvdXQvZmxvYXRzXzEwMF8x
MDAuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hMGY1OTcwCi0tLSAv
ZGV2L251bGwKKysrIGIvUGVyZm9ybWFuY2VUZXN0cy9MYXlvdXQvZmxvYXRzXzEwMF8xMDAuaHRt
bApAQCAtMCwwICsxLDE1IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICAgIDxoZWFkPgor
ICAgICAgICA8dGl0bGU+RmxvYXRzIGxheW91dCBwZXJmb3JtYW5jZSB0ZXN0ZXIgd2l0aCAyIGNv
bHVtbnMgYW5kIDEwMCByb3dzPC90aXRsZT4KKyAgICAgICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0
IiBocmVmPSJyZXNvdXJjZXMvZmxvYXRzLmNzcyIgVFlQRT0idGV4dC9jc3MiPjwvbGluaz4KKyAg
ICAgICAgPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy9ydW5uZXIuanMiPjwvc2NyaXB0PgorICAg
ICAgICA8c2NyaXB0IHNyYz0icmVzb3VyY2VzL2Zsb2F0cy5qcyI+PC9zY3JpcHQ+CisgICAgPC9o
ZWFkPgorICAgIDxib2R5PgorICAgICAgICA8cHJlIGlkPSJsb2ciPjwvcHJlPgorICAgICAgICA8
c2NyaXB0PgorICAgICAgICAgICAgUGVyZlRlc3RSdW5uZXIucnVuKGNyZWF0ZUZsb2F0c0xheW91
dFRlc3RGdW5jdGlvbigxMDAsIDEwMCwgMCwgMyksIDEsIDIpOworICAgICAgICA8L3NjcmlwdD4K
KyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3RzL0xheW91
dC9mbG9hdHNfMTAwXzEwMF9uZXN0ZWQuaHRtbCBiL1BlcmZvcm1hbmNlVGVzdHMvTGF5b3V0L2Zs
b2F0c18xMDBfMTAwX25lc3RlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAuLjA5YWZkMGUKLS0tIC9kZXYvbnVsbAorKysgYi9QZXJmb3JtYW5jZVRlc3RzL0xheW91dC9m
bG9hdHNfMTAwXzEwMF9uZXN0ZWQuaHRtbApAQCAtMCwwICsxLDE1IEBACis8IURPQ1RZUEUgaHRt
bD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8dGl0bGU+RmxvYXRzIGxheW91dCBwZXJm
b3JtYW5jZSB0ZXN0ZXIgd2l0aCAyIGNvbHVtbnMgYW5kIDEwMCByb3dzPC90aXRsZT4KKyAgICAg
ICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJyZXNvdXJjZXMvZmxvYXRzLmNzcyIgVFlQ
RT0idGV4dC9jc3MiPjwvbGluaz4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy9y
dW5uZXIuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0icmVzb3VyY2VzL2Zsb2F0
cy5qcyI+PC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxib2R5PgorICAgICAgICA8cHJlIGlk
PSJsb2ciPjwvcHJlPgorICAgICAgICA8c2NyaXB0PgorICAgICAgICAgICAgUGVyZlRlc3RSdW5u
ZXIucnVuKGNyZWF0ZUZsb2F0c0xheW91dFRlc3RGdW5jdGlvbigxMDAsIDEwMCwgMTAwLCAzKSwg
MSwgMik7CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdp
dCBhL1BlcmZvcm1hbmNlVGVzdHMvTGF5b3V0L2Zsb2F0c18yMF8xMDAuaHRtbCBiL1BlcmZvcm1h
bmNlVGVzdHMvTGF5b3V0L2Zsb2F0c18yMF8xMDAuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwLi5hMjg2YmU1Ci0tLSAvZGV2L251bGwKKysrIGIvUGVyZm9ybWFuY2VUZXN0
cy9MYXlvdXQvZmxvYXRzXzIwXzEwMC5odG1sCkBAIC0wLDAgKzEsMTUgQEAKKzwhRE9DVFlQRSBo
dG1sPgorPGh0bWw+CisgICAgPGhlYWQ+CisgICAgICAgIDx0aXRsZT5GbG9hdHMgbGF5b3V0IHBl
cmZvcm1hbmNlIHRlc3RlciB3aXRoIDIgY29sdW1ucyBhbmQgMTAwIHJvd3M8L3RpdGxlPgorICAg
ICAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9InJlc291cmNlcy9mbG9hdHMuY3NzIiBU
WVBFPSJ0ZXh0L2NzcyI+PC9saW5rPgorICAgICAgICA8c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2Vz
L3J1bm5lci5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvZmxv
YXRzLmpzIj48L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHk+CisgICAgICAgIDxwcmUg
aWQ9ImxvZyI+PC9wcmU+CisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICBQZXJmVGVzdFJ1
bm5lci5ydW4oY3JlYXRlRmxvYXRzTGF5b3V0VGVzdEZ1bmN0aW9uKDIwLCAxMDAsIDAsIDEwMCks
IDEsIDcpOworICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1n
aXQgYS9QZXJmb3JtYW5jZVRlc3RzL0xheW91dC9mbG9hdHNfMjBfMTAwX25lc3RlZC5odG1sIGIv
UGVyZm9ybWFuY2VUZXN0cy9MYXlvdXQvZmxvYXRzXzIwXzEwMF9uZXN0ZWQuaHRtbApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lYjlhZWZlYwotLS0gL2Rldi9udWxsCisrKyBi
L1BlcmZvcm1hbmNlVGVzdHMvTGF5b3V0L2Zsb2F0c18yMF8xMDBfbmVzdGVkLmh0bWwKQEAgLTAs
MCArMSwxNSBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAg
PHRpdGxlPkZsb2F0cyBsYXlvdXQgcGVyZm9ybWFuY2UgdGVzdGVyIHdpdGggMiBjb2x1bW5zIGFu
ZCAxMDAgcm93czwvdGl0bGU+CisgICAgICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0i
cmVzb3VyY2VzL2Zsb2F0cy5jc3MiIFRZUEU9InRleHQvY3NzIj48L2xpbms+CisgICAgICAgIDxz
Y3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvcnVubmVyLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNj
cmlwdCBzcmM9InJlc291cmNlcy9mbG9hdHMuanMiPjwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAg
ICA8Ym9keT4KKyAgICAgICAgPHByZSBpZD0ibG9nIj48L3ByZT4KKyAgICAgICAgPHNjcmlwdD4K
KyAgICAgICAgICAgIFBlcmZUZXN0UnVubmVyLnJ1bihjcmVhdGVGbG9hdHNMYXlvdXRUZXN0RnVu
Y3Rpb24oMjAsIDEwMCwgMTAwLCAxMDApLCAxLCA2KTsKKyAgICAgICAgPC9zY3JpcHQ+CisgICAg
PC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9MYXlvdXQvZmxv
YXRzXzJfMTAwLmh0bWwgYi9QZXJmb3JtYW5jZVRlc3RzL0xheW91dC9mbG9hdHNfMl8xMDAuaHRt
bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41YTY5YjYwCi0tLSAvZGV2L251
bGwKKysrIGIvUGVyZm9ybWFuY2VUZXN0cy9MYXlvdXQvZmxvYXRzXzJfMTAwLmh0bWwKQEAgLTAs
MCArMSwxNSBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAg
PHRpdGxlPkZsb2F0cyBsYXlvdXQgcGVyZm9ybWFuY2UgdGVzdGVyIHdpdGggMiBjb2x1bW5zIGFu
ZCAxMDAgcm93czwvdGl0bGU+CisgICAgICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0i
cmVzb3VyY2VzL2Zsb2F0cy5jc3MiIFRZUEU9InRleHQvY3NzIj48L2xpbms+CisgICAgICAgIDxz
Y3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvcnVubmVyLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNj
cmlwdCBzcmM9InJlc291cmNlcy9mbG9hdHMuanMiPjwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAg
ICA8Ym9keT4KKyAgICAgICAgPHByZSBpZD0ibG9nIj48L3ByZT4KKyAgICAgICAgPHNjcmlwdD4K
KyAgICAgICAgICAgIFBlcmZUZXN0UnVubmVyLnJ1bihjcmVhdGVGbG9hdHNMYXlvdXRUZXN0RnVu
Y3Rpb24oMiwgMTAwLCAwLCA1MDApLCAxLCAxMCk7CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwv
Ym9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL1BlcmZvcm1hbmNlVGVzdHMvTGF5b3V0L2Zsb2F0
c18yXzEwMF9uZXN0ZWQuaHRtbCBiL1BlcmZvcm1hbmNlVGVzdHMvTGF5b3V0L2Zsb2F0c18yXzEw
MF9uZXN0ZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hYmNkNjVl
Ci0tLSAvZGV2L251bGwKKysrIGIvUGVyZm9ybWFuY2VUZXN0cy9MYXlvdXQvZmxvYXRzXzJfMTAw
X25lc3RlZC5odG1sCkBAIC0wLDAgKzEsMTUgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cisg
ICAgPGhlYWQ+CisgICAgICAgIDx0aXRsZT5GbG9hdHMgbGF5b3V0IHBlcmZvcm1hbmNlIHRlc3Rl
ciB3aXRoIDIgY29sdW1ucyBhbmQgMTAwIHJvd3M8L3RpdGxlPgorICAgICAgICA8bGluayByZWw9
InN0eWxlc2hlZXQiIGhyZWY9InJlc291cmNlcy9mbG9hdHMuY3NzIiBUWVBFPSJ0ZXh0L2NzcyI+
PC9saW5rPgorICAgICAgICA8c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL3J1bm5lci5qcyI+PC9z
Y3JpcHQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvZmxvYXRzLmpzIj48L3Njcmlw
dD4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHk+CisgICAgICAgIDxwcmUgaWQ9ImxvZyI+PC9wcmU+
CisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICBQZXJmVGVzdFJ1bm5lci5ydW4oY3JlYXRl
RmxvYXRzTGF5b3V0VGVzdEZ1bmN0aW9uKDIsIDEwMCwgMTAwLCAyNTApLCAxLCAxMCk7CisgICAg
ICAgIDwvc2NyaXB0PgorICAgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL1BlcmZvcm1h
bmNlVGVzdHMvTGF5b3V0L2Zsb2F0c181MF8xMDAuaHRtbCBiL1BlcmZvcm1hbmNlVGVzdHMvTGF5
b3V0L2Zsb2F0c181MF8xMDAuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
Li42YTUwZmI2Ci0tLSAvZGV2L251bGwKKysrIGIvUGVyZm9ybWFuY2VUZXN0cy9MYXlvdXQvZmxv
YXRzXzUwXzEwMC5odG1sCkBAIC0wLDAgKzEsMTUgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+
CisgICAgPGhlYWQ+CisgICAgICAgIDx0aXRsZT5GbG9hdHMgbGF5b3V0IHBlcmZvcm1hbmNlIHRl
c3RlciB3aXRoIDIgY29sdW1ucyBhbmQgMTAwIHJvd3M8L3RpdGxlPgorICAgICAgICA8bGluayBy
ZWw9InN0eWxlc2hlZXQiIGhyZWY9InJlc291cmNlcy9mbG9hdHMuY3NzIiBUWVBFPSJ0ZXh0L2Nz
cyI+PC9saW5rPgorICAgICAgICA8c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL3J1bm5lci5qcyI+
PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvZmxvYXRzLmpzIj48L3Nj
cmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHk+CisgICAgICAgIDxwcmUgaWQ9ImxvZyI+PC9w
cmU+CisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICBQZXJmVGVzdFJ1bm5lci5ydW4oY3Jl
YXRlRmxvYXRzTGF5b3V0VGVzdEZ1bmN0aW9uKDUwLCAxMDAsIDAsIDIwKSwgMSwgNSk7CisgICAg
ICAgIDwvc2NyaXB0PgorICAgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL1BlcmZvcm1h
bmNlVGVzdHMvTGF5b3V0L2Zsb2F0c181MF8xMDBfbmVzdGVkLmh0bWwgYi9QZXJmb3JtYW5jZVRl
c3RzL0xheW91dC9mbG9hdHNfNTBfMTAwX25lc3RlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAuLjEwOTU2Y2YKLS0tIC9kZXYvbnVsbAorKysgYi9QZXJmb3JtYW5jZVRl
c3RzL0xheW91dC9mbG9hdHNfNTBfMTAwX25lc3RlZC5odG1sCkBAIC0wLDAgKzEsMTUgQEAKKzwh
RE9DVFlQRSBodG1sPgorPGh0bWw+CisgICAgPGhlYWQ+CisgICAgICAgIDx0aXRsZT5GbG9hdHMg
bGF5b3V0IHBlcmZvcm1hbmNlIHRlc3RlciB3aXRoIDIgY29sdW1ucyBhbmQgMTAwIHJvd3M8L3Rp
dGxlPgorICAgICAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9InJlc291cmNlcy9mbG9h
dHMuY3NzIiBUWVBFPSJ0ZXh0L2NzcyI+PC9saW5rPgorICAgICAgICA8c2NyaXB0IHNyYz0iLi4v
cmVzb3VyY2VzL3J1bm5lci5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSJyZXNv
dXJjZXMvZmxvYXRzLmpzIj48L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHk+CisgICAg
ICAgIDxwcmUgaWQ9ImxvZyI+PC9wcmU+CisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICBQ
ZXJmVGVzdFJ1bm5lci5ydW4oY3JlYXRlRmxvYXRzTGF5b3V0VGVzdEZ1bmN0aW9uKDUwLCAxMDAs
IDEwMCwgMjApLCAxLCA1KTsKKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9ib2R5PgorPC9odG1s
PgpkaWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9MYXlvdXQvcmVzb3VyY2VzL2Zsb2F0cy5j
c3MgYi9QZXJmb3JtYW5jZVRlc3RzL0xheW91dC9yZXNvdXJjZXMvZmxvYXRzLmNzcwpuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hMDkzNDI2Ci0tLSAvZGV2L251bGwKKysrIGIv
UGVyZm9ybWFuY2VUZXN0cy9MYXlvdXQvcmVzb3VyY2VzL2Zsb2F0cy5jc3MKQEAgLTAsMCArMSwx
OCBAQAorLmNvbnRhaW5lciB7CisgICAgZGlzcGxheTogbm9uZTsKK30KKworLmZsb2F0IHsKKyAg
ICBmbG9hdDogbGVmdDsKKyAgICB3aWR0aDogNXB4OworICAgIGhlaWdodDogNXB4OworICAgIGJv
cmRlcjogMXB4IHNvbGlkIGdyZWVuOworfQorCisuYmlnIHsKKyAgICB3aWR0aDogMTBweDsKK30K
KworLmZsb2F0LWVuZCB7CisgICAgY2xlYXI6bGVmdDsKK30KXCBObyBuZXdsaW5lIGF0IGVuZCBv
ZiBmaWxlCmRpZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3RzL0xheW91dC9yZXNvdXJjZXMvZmxv
YXRzLmpzIGIvUGVyZm9ybWFuY2VUZXN0cy9MYXlvdXQvcmVzb3VyY2VzL2Zsb2F0cy5qcwpuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40NTljMmY0Ci0tLSAvZGV2L251bGwKKysr
IGIvUGVyZm9ybWFuY2VUZXN0cy9MYXlvdXQvcmVzb3VyY2VzL2Zsb2F0cy5qcwpAQCAtMCwwICsx
LDU3IEBACisoZnVuY3Rpb24oKSB7CisgICAgZnVuY3Rpb24gY3JlYXRlRWxlbWVudCh0YWcsIHBh
cmVudCwgY2xhc3NOYW1lLCBpZCkgeworICAgICAgICB2YXIgZWwgPSBkb2N1bWVudC5jcmVhdGVF
bGVtZW50KHRhZyk7CisgICAgICAgIGVsLmNsYXNzTmFtZSA9IGNsYXNzTmFtZTsKKyAgICAgICAg
aWYgKGlkKQorICAgICAgICAgICAgZWwuaWQgPSBpZDsKKyAgICAgICAgcGFyZW50LmFwcGVuZENo
aWxkKGVsKTsKKyAgICAgICAgcmV0dXJuIGVsOworICAgIH0KKworICAgIGZ1bmN0aW9uIGNyZWF0
ZVNldCh3aWR0aCwgaGVpZ2h0LCBuZXN0ZWQpIHsKKyAgICAgICAgdmFyIGNvbnRhaW5lciA9IGNy
ZWF0ZUVsZW1lbnQoImRpdiIsIGRvY3VtZW50LmJvZHksICJjb250YWluZXIiKTsKKyAgICAgICAg
Zm9yICh2YXIgeSA9IDA7IHkgPCBoZWlnaHQ7ICsreSkgeworICAgICAgICAgICAgZm9yICh2YXIg
eCA9IDA7IHggPCB3aWR0aDsgKyt4KQorICAgICAgICAgICAgICAgIGNyZWF0ZUVsZW1lbnQoImRp
diIsIGNvbnRhaW5lciwgImZsb2F0IiwgImZsb2F0IiArIHggKyAiXyIgKyB5KTsKKworICAgICAg
ICAgICAgdmFyIG5lc3RlZENvbnRhaW5lciA9IGNvbnRhaW5lcjsKKyAgICAgICAgICAgIGZvciAo
IDsgbmVzdGVkID4gMDsgLS1uZXN0ZWQpCisgICAgICAgICAgICAgICAgbmVzdGVkQ29udGFpbmVy
ID0gY3JlYXRlRWxlbWVudCgiZGl2IiwgbmVzdGVkQ29udGFpbmVyLCAibmVzdGVkIiwgIm5lc3Rl
ZCIgKyB4ICsgIl8iICsgbmVzdGVkKTsKKyAgICAgICAgICAgIAorICAgICAgICAgICAgY3JlYXRl
RWxlbWVudCgiZGl2IiwgY29udGFpbmVyLCAiZmxvYXQtZW5kIiwgImVuZCIgKyB4KQorICAgICAg
ICB9CisgICAgICAgIHJldHVybiBjb250YWluZXI7CisgICAgfQorCisgICAgZnVuY3Rpb24gdG9n
Z2xlKHN0ciwgc3RyMSwgc3RyMikgeworICAgICAgICByZXR1cm4gc3RyID09IHN0cjEgPyBzdHIy
IDogc3RyMTsKKyAgICB9CisgICAgCisgICAgZnVuY3Rpb24gcmVzZXRUZXN0KCkgeworICAgICAg
ICBQZXJmVGVzdFJ1bm5lci5yZXNldFJhbmRvbVNlZWQoKTsKKyAgICAgICAgdmFyIGxpc3QgPSBk
b2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIuZmxvYXQuYmlnIik7CisgICAgICAgIGZvciAodmFy
IGkgPSAwOyBpIDwgbGlzdC5sZW5ndGg7ICsraSkKKyAgICAgICAgICAgIGxpc3RbaV0uY2xhc3NO
YW1lID0gImZsb2F0IjsKKyAgICB9CisgICAgCisgICAgZnVuY3Rpb24gY3JlYXRlVGVzdEZ1bmN0
aW9uKHdpZHRoLCBoZWlnaHQsIG5lc3RlZCwgcnVucykgeworICAgICAgICB2YXIgY29udGFpbmVy
ID0gY3JlYXRlU2V0KHdpZHRoLCBoZWlnaHQsIG5lc3RlZCk7CisgICAgICAgIG5lc3RlZCA9IG5l
c3RlZCB8fCAwOworICAgICAgICBydW5zID0gcnVucyB8fCAxMDsKKyAgICAgICAgcmV0dXJuIGZ1
bmN0aW9uKCkgeworICAgICAgICAgICAgY29udGFpbmVyLnN0eWxlLmRpc3BsYXkgPSAiYmxvY2si
OworICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBydW5zOyArK2kpIHsKKyAgICAgICAg
ICAgICAgICB2YXIgeCA9IE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIHdpZHRoKTsKKyAgICAg
ICAgICAgICAgICB2YXIgeSA9IE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIGhlaWdodCk7Cisg
ICAgICAgICAgICAgICAgdmFyIGVsID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZsb2F0IiAr
IHggKyAiXyIgKyB5KTsKKyAgICAgICAgICAgICAgICBlbC5jbGFzc05hbWUgPSB0b2dnbGUoZWwu
Y2xhc3NOYW1lLCAiZmxvYXQiLCAiZmxvYXQgYmlnIik7CisgICAgICAgICAgICAgICAgLy8gRm9y
Y2UgYSBsYXlvdXQuCisgICAgICAgICAgICAgICAgY29udGFpbmVyLmNsaWVudEhlaWdodDsKKyAg
ICAgICAgICAgIH0KKyAgICAgICAgICAgIHJlc2V0VGVzdCgpOworICAgICAgICAgICAgY29udGFp
bmVyLnN0eWxlLmRpc3BsYXkgPSAibm9uZSI7CisgICAgICAgIH0KKyAgICB9CisgICAgCisgICAg
d2luZG93LmNyZWF0ZUZsb2F0c0xheW91dFRlc3RGdW5jdGlvbiA9IGNyZWF0ZVRlc3RGdW5jdGlv
bjsKK30pKCk7CmRpZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3RzL1NraXBwZWQgYi9QZXJmb3Jt
YW5jZVRlc3RzL1NraXBwZWQKaW5kZXggM2I0OGEwOC4uMDhhZDdlNiAxMDA2NDQKLS0tIGEvUGVy
Zm9ybWFuY2VUZXN0cy9Ta2lwcGVkCisrKyBiL1BlcmZvcm1hbmNlVGVzdHMvU2tpcHBlZApAQCAt
Miw3ICsyLDYgQEAKIE11dGF0aW9uCiAKICMgRG8gbm90IGNvbmZvcm0gdG8gV2ViS2l0IG9yIENo
cm9taXVtIHBlcmYgdGVzdCBzdHlsZXMKLUxheW91dAogUGFnZUxvYWQKIFN1blNwaWRlcgogWFNT
QXVkaXRvcgpkaWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9yZXNvdXJjZXMvcnVubmVyLmpz
IGIvUGVyZm9ybWFuY2VUZXN0cy9yZXNvdXJjZXMvcnVubmVyLmpzCmluZGV4IGY3YjE0NzMuLjlh
N2Q5YWQgMTAwNjQ0Ci0tLSBhL1BlcmZvcm1hbmNlVGVzdHMvcmVzb3VyY2VzL3J1bm5lci5qcwor
KysgYi9QZXJmb3JtYW5jZVRlc3RzL3Jlc291cmNlcy9ydW5uZXIuanMKQEAgLTEsNiArMSwyNyBA
QAogCiB2YXIgUGVyZlRlc3RSdW5uZXIgPSB7fTsKIAorLy8gVG8gbWFrZSB0aGUgYmVuY2htYXJr
IHJlc3VsdHMgcHJlZGljdGFibGUsIHdlIHJlcGxhY2UgTWF0aC5yYW5kb20gd2l0aCBhCisvLyAx
MDAlIGRldGVybWluaXN0aWMgYWx0ZXJuYXRpdmUuCitQZXJmVGVzdFJ1bm5lci5yYW5kb21TZWVk
ID0gUGVyZlRlc3RSdW5uZXIuaW5pdGlhbFJhbmRvbVNlZWQgPSA0OTczNDMyMTsKKworUGVyZlRl
c3RSdW5uZXIucmVzZXRSYW5kb21TZWVkID0gZnVuY3Rpb24oKSB7CisgICAgUGVyZlRlc3RSdW5u
ZXIucmFuZG9tU2VlZCA9IFBlcmZUZXN0UnVubmVyLmluaXRpYWxSYW5kb21TZWVkCit9CisKK1Bl
cmZUZXN0UnVubmVyLnJhbmRvbSA9IE1hdGgucmFuZG9tID0gZnVuY3Rpb24oKSB7CisgICAgLy8g
Um9iZXJ0IEplbmtpbnMnIDMyIGJpdCBpbnRlZ2VyIGhhc2ggZnVuY3Rpb24uCisgICAgdmFyIHJh
bmRvbVNlZWQgPSBQZXJmVGVzdFJ1bm5lci5yYW5kb21TZWVkOworICAgIHJhbmRvbVNlZWQgPSAo
KHJhbmRvbVNlZWQgKyAweDdlZDU1ZDE2KSArIChyYW5kb21TZWVkIDw8IDEyKSkgICYgMHhmZmZm
ZmZmZjsKKyAgICByYW5kb21TZWVkID0gKChyYW5kb21TZWVkIF4gMHhjNzYxYzIzYykgXiAocmFu
ZG9tU2VlZCA+Pj4gMTkpKSAmIDB4ZmZmZmZmZmY7CisgICAgcmFuZG9tU2VlZCA9ICgocmFuZG9t
U2VlZCArIDB4MTY1NjY3YjEpICsgKHJhbmRvbVNlZWQgPDwgNSkpICAgJiAweGZmZmZmZmZmOwor
ICAgIHJhbmRvbVNlZWQgPSAoKHJhbmRvbVNlZWQgKyAweGQzYTI2NDZjKSBeIChyYW5kb21TZWVk
IDw8IDkpKSAgICYgMHhmZmZmZmZmZjsKKyAgICByYW5kb21TZWVkID0gKChyYW5kb21TZWVkICsg
MHhmZDcwNDZjNSkgKyAocmFuZG9tU2VlZCA8PCAzKSkgICAmIDB4ZmZmZmZmZmY7CisgICAgcmFu
ZG9tU2VlZCA9ICgocmFuZG9tU2VlZCBeIDB4YjU1YTRmMDkpIF4gKHJhbmRvbVNlZWQgPj4+IDE2
KSkgJiAweGZmZmZmZmZmOworICAgIFBlcmZUZXN0UnVubmVyLnJhbmRvbVNlZWQgPSByYW5kb21T
ZWVkOworICAgIHJldHVybiAocmFuZG9tU2VlZCAmIDB4ZmZmZmZmZikgLyAweDEwMDAwMDAwOwor
fTsKKwogUGVyZlRlc3RSdW5uZXIubG9nID0gZnVuY3Rpb24gKHRleHQpIHsKICAgICBpZiAoIWRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJsb2ciKSkgewogICAgICAgICB2YXIgcHJlID0gZG9jdW1l
bnQuY3JlYXRlRWxlbWVudCgncHJlJyk7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>