<?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>28754</bug_id>
          
          <creation_ts>2009-08-26 15:57:53 -0700</creation_ts>
          <short_desc>Positioned, compositing child jumps around as opacity transition runs</short_desc>
          <delta_ts>2009-08-31 11:38:30 -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>PC</rep_platform>
          <op_sys>OS X 10.5</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Simon Fraser (smfr)">simon.fraser</reporter>
          <assigned_to name="Simon Fraser (smfr)">simon.fraser</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>142984</commentid>
    <comment_count>0</comment_count>
      <attachid>38643</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2009-08-26 15:57:53 -0700</bug_when>
    <thetext>Created attachment 38643
Testcase

The attached testcase shows a bug where the inner child renders in the wrong place while the opacity transition is running, when accelerated compositing is enabled.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>142985</commentid>
    <comment_count>1</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2009-08-26 15:58:20 -0700</bug_when>
    <thetext>&lt;rdar://problem/7173461&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>143487</commentid>
    <comment_count>2</comment_count>
      <attachid>38765</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2009-08-28 17:24:38 -0700</bug_when>
    <thetext>Created attachment 38765
Simpler testcase</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>143493</commentid>
    <comment_count>3</comment_count>
      <attachid>38767</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2009-08-28 18:43:00 -0700</bug_when>
    <thetext>Created attachment 38767
Patch, testcases, changelogs</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>143522</commentid>
    <comment_count>4</comment_count>
      <attachid>38767</attachid>
    <who name="">mitz</who>
    <bug_when>2009-08-29 15:45:42 -0700</bug_when>
    <thetext>Comment on attachment 38767
Patch, testcases, changelogs

&gt; +    for ( ; curr &amp;&amp; !isPositionedContainer(curr); curr = curr-&gt;parent())
&gt; +    { }

Is this the WebKit style convention for empty loop bodies? It seems strange.

&gt;      for ( ; curr &amp;&amp; !curr-&gt;renderer()-&gt;isRenderView() &amp;&amp; !curr-&gt;transform(); curr = curr-&gt;parent())
&gt; -        { }
&gt; +    { }

Ditto.

&gt; +            RenderLayer* positionedAncestor = enclosingPositionedAncestor();

I think you can call parentLayer-&gt;enclosingPositionedAncestor() instead.

&gt; +            int thisX = 0, thisY = 0;

Please define each variable on a separate line.

&gt; +            convertToLayerCoords(positionedAncestor, thisX, thisY);
&gt; +            
&gt; +            int ancestorX = 0, ancestorY = 0;

Separate lines, please.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>143689</commentid>
    <comment_count>5</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2009-08-31 11:38:30 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/47900</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="0"
              isprivate="0"
          >
            <attachid>38643</attachid>
            <date>2009-08-26 15:57:53 -0700</date>
            <delta_ts>2009-08-28 17:24:38 -0700</delta_ts>
            <desc>Testcase</desc>
            <filename>overflow-opacity-transition.html</filename>
            <type>text/html</type>
            <size>1922</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFs
Ly9FTiIKICAgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cgo8aHRtbCBs
YW5nPSJlbiI+CjxoZWFkPgogIDxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVu
dD0idGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04Ij4KICA8dGl0bGU+T3ZlcmZsb3cgdHJhbnNpdGlv
bnM8L3RpdGxlPgogIDxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyIgbWVkaWE9InNjcmVlbiI+CiAgICAj
Y29udGFpbmVyIHsKICAgICAgaGVpZ2h0OiAzMDBweDsKICAgICAgd2lkdGg6IDQwMHB4OwogICAg
ICBtYXJnaW46IDUwcHg7CiAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgIHBvc2l0aW9uOiBh
YnNvbHV0ZTsKICAgICAgei1pbmRleDogMDsKICAgICAgYm9yZGVyOiAxcHggc29saWQgYmxhY2s7
CiAgICB9CiAgICAKICAgIC5jaGlsZCB7CiAgICAgIGhlaWdodDogOTAlOwogICAgICB3aWR0aDog
OTAlOwogICAgICBtYXJnaW46IDEwcHg7CiAgICAgIGJhY2tncm91bmQtY29sb3I6IGdyYXk7CiAg
ICAgIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAxczsKICAgIH0KICAgIC5pbm5lciB7CiAg
ICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgd2lkdGg6IDIwMHB4OwogICAgICBoZWlnaHQ6
IDIwMHB4OwogICAgICBib3JkZXI6IDRweCBzb2xpZCBibHVlOwogICAgICAtd2Via2l0LXRyYW5z
Zm9ybTogdHJhbnNsYXRlWigwKTsKICAgIH0KICA8L3N0eWxlPgogIDxzY3JpcHQgdHlwZT0idGV4
dC9qYXZhc2NyaXB0IiBjaGFyc2V0PSJ1dGYtOCI+CiAgICBmdW5jdGlvbiBzd2FwQ29udGVudHMo
KQogICAgewogICAgICB2YXIgY29udGFpbmVyID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2Nv
bnRhaW5lcicpOwogICAgICB2YXIgY3VyQ2hpbGQgPSBjb250YWluZXIuZmlyc3RDaGlsZDsKICAg
ICAgd2luZG93LmNvbnNvbGUubG9nKGN1ckNoaWxkKQogICAgICBjdXJDaGlsZC5zdHlsZS5wb3Np
dGlvbiA9ICdhYnNvbHV0ZSc7CiAgICAgIAogICAgICB2YXIgbmV3Q2hpbGQgPSBkb2N1bWVudC5j
cmVhdGVFbGVtZW50KCdkaXYnKTsKICAgICAgbmV3Q2hpbGQuY2xhc3NOYW1lID0gJ2NoaWxkJzsK
ICAgICAgdmFyIGlubmVyQ2hpbGQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTsKICAg
ICAgaW5uZXJDaGlsZC5jbGFzc05hbWUgPSAnaW5uZXInOwogICAgICBuZXdDaGlsZC5hcHBlbmRD
aGlsZChpbm5lckNoaWxkKQogICAgICAKICAgICAgY3VyQ2hpbGQuc3R5bGUub3BhY2l0eSA9IDE7
CiAgICAgIGN1ckNoaWxkLmFkZEV2ZW50TGlzdGVuZXIoJ3dlYmtpdFRyYW5zaXRpb25FbmQnLCBm
dW5jdGlvbigpIHsKICAgICAgICBjdXJDaGlsZC5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKGN1ckNo
aWxkKTsKICAgICAgfSwgZmFsc2UpOwogICAgICAKICAgICAgbmV3Q2hpbGQuc3R5bGUub3BhY2l0
eSA9IDA7CiAgICAgIGNvbnRhaW5lci5hcHBlbmRDaGlsZChuZXdDaGlsZCk7CiAgICAgIHdpbmRv
dy5zZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewogICAgICAgIG5ld0NoaWxkLnN0eWxlLm9wYWNpdHkg
PSAxOwogICAgICAgIGN1ckNoaWxkLnN0eWxlLm9wYWNpdHkgPSAwOwogICAgICB9LCAwKTsKICAg
IH0KICA8L3NjcmlwdD4KPC9oZWFkPgo8Ym9keT4KPHA+Qmx1ZSBib3ggc2hvdWxkIG5vdCBqdW1w
IGFyb3VuZCBhcyB0aGUgb3BhY2l0eSB0cmFuc2l0aW9uIHJ1bnMuPC9wPgogIDxidXR0b24gb25j
bGljaz0ic3dhcENvbnRlbnRzKCkiIHN0eWxlPSItd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRl
WigwKSI+U3dhcCBDaGlsZHJlbjwvYnV0dG9uPgo8ZGl2IGlkPSJjb250YWluZXIiPjxkaXYgY2xh
c3M9ImNoaWxkIj48L2Rpdj48L2Rpdj4KCjwvYm9keT4KPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>38765</attachid>
            <date>2009-08-28 17:24:38 -0700</date>
            <delta_ts>2009-08-28 17:24:38 -0700</delta_ts>
            <desc>Simpler testcase</desc>
            <filename>overflow-opacity-transition.html</filename>
            <type>text/html</type>
            <size>1087</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFs
Ly9FTiIKICAgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cgo8aHRtbCBs
YW5nPSJlbiI+CjxoZWFkPgogIDxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVu
dD0idGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04Ij4KICA8dGl0bGU+T3BhY2l0eSBhbmQgcG9zaXRp
b25pbmc8L3RpdGxlPgogIDxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyIgbWVkaWE9InNjcmVlbiI+CiAg
ICAuY29udGFpbmVyIHsKICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICBoZWlnaHQ6IDEy
MHB4OwogICAgICB3aWR0aDogMTIwcHg7CiAgICAgIHBhZGRpbmc6IDEwcHg7CiAgICAgIG1hcmdp
bjogNTBweDsKICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94OwogICAgICBib3Jk
ZXI6IDFweCBzb2xpZCBibGFjazsKICAgIH0KICAgIAogICAgLmNoaWxkIHsKICAgICAgaGVpZ2h0
OiAxMDBweDsKICAgICAgd2lkdGg6IDEwMHB4OwogICAgICBvcGFjaXR5OiAwLjg7CiAgICAgIGJh
Y2tncm91bmQtY29sb3I6IHJlZDsKICAgIH0KICAgIAogICAgLmlubmVyIHsKICAgICAgcG9zaXRp
b246IGFic29sdXRlOwogICAgICB3aWR0aDogMTAwcHg7CiAgICAgIGhlaWdodDogMTAwcHg7CiAg
ICAgIGJhY2tncm91bmQtY29sb3I6IGdyZWVuOwogICAgfQogICAgCiAgICAuY29tcG9zaXRpbmcg
ewogICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICAgIH0KICA8L3N0eWxl
Pgo8L2hlYWQ+Cjxib2R5Pgo8cD5Zb3Ugc2hvdWxkIHNlZSB0d28gZ3JlZW4gYm94ZXMgYmVsb3cs
IHdpdGggbm8gcmVkPC9wPgoKPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KICA8ZGl2IGNsYXNzPSJj
aGlsZCI+CiAgICA8ZGl2IGNsYXNzPSJpbm5lciI+PC9kaXY+CiAgPC9kaXY+CjwvZGl2PgoKPGRp
diBjbGFzcz0iY29udGFpbmVyIj4KICA8ZGl2IGNsYXNzPSJjaGlsZCI+CiAgICA8ZGl2IGNsYXNz
PSJpbm5lciBjb21wb3NpdGluZyI+PC9kaXY+CiAgPC9kaXY+CjwvZGl2PgoKPC9ib2R5Pgo8L2h0
bWw+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>38767</attachid>
            <date>2009-08-28 18:43:00 -0700</date>
            <delta_ts>2009-08-29 15:45:41 -0700</delta_ts>
            <desc>Patch, testcases, changelogs</desc>
            <filename>28754_patch.txt</filename>
            <type>text/plain</type>
            <size>12222</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA0OGU2ZTI5Li45YjQ3MGNkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzEgQEAKKzIwMDktMDgt
MjggIFNpbW9uIEZyYXNlciAgPHNpbW9uLmZyYXNlckBhcHBsZS5jb20+CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRml4IHBvc2l0aW9uaW5nIGVycm9y
IHdoZW4gYSBjb21wb3NpdGluZywgYWJzb2x1dGVseS1wb3NpdGlvbmVkIGVsZW1lbnQgaGFzIGFu
IGFuY2VzdG9yIHdpdGgKKyAgICAgICAgb3BhY2l0eS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI4NzU0CisgICAgICAgIAorICAgICAgICBGb3IgYWJz
b2x1dGVseS1wb3NpdGlvbmVkIGxheWVycywgY29udmVydFRvTGF5ZXJDb29yZHMoKSBqdW1wcyB0
byB0aGUgcG9zaXRpb25lZAorICAgICAgICBhbmNlc3Rvciwgc2luY2UgdGhlIGxheWVyIHggYW5k
IHkgYXJlIHJlbGF0aXZlIHRvIHRoYXQgYW5jZXN0b3IuIEhvd2V2ZXIsIHRoaXMgY291bGQKKyAg
ICAgICAgc2tpcCBvdmVyIHRoZSBhbmNlc3RvckxheWVyLCB0aHVzIGdpdmluZyB0aGUgd3Jvbmcg
cmVzdWx0LgorICAgICAgICAKKyAgICAgICAgRml4IGJ5IGR1cGxpY2F0aW5nIHRoZSBlbmNsb3Np
bmdQb3NpdGlvbmVkQW5jZXN0b3IoKSBsb2dpYyBpbiBjb252ZXJ0VG9MYXllckNvb3JkcygpLAor
ICAgICAgICBhbmQgY2hlY2tpbmcgZm9yIGFuY2VzdG9yTGF5ZXIgYWxvbmcgdGhlIHdheS4gSWYg
Zm91bmQsIGNvbXB1dGUgb2Zmc2V0IG9mIGJvdGggdG8KKyAgICAgICAgdGhlIGVuY2xvc2luZ1Bv
c2l0aW9uZWRBbmNlc3RvcigpIGFuZCBzdWJ0cmFjdC4KKyAgICAgICAgCisgICAgICAgIFRoaXMg
YWxzbyBmaXhlcyBhIHBvc2l0aW9uaW5nIGJ1ZyB3aXRoIGFicy4gcG9zaXRpb25lZCBlbGVtZW50
cyBpbiByZWZsZWN0aW9ucywKKyAgICAgICAgc28gdGhlcmUgaXMgYSBuZXcgcmVmbGVjdGlvbiB0
ZXN0IHdpdGggYSBwaXhlbCByZXN1bHQuCisgICAgICAgIAorICAgICAgICAqIGNvbXBvc2l0aW5n
L2dlb21ldHJ5L2Ficy1wb3NpdGlvbi1pbnNpZGUtb3BhY2l0eS5odG1sOiBBZGRlZC4KKyAgICAg
ICAgKiBmYXN0L3JlZmxlY3Rpb25zL2Ficy1wb3NpdGlvbi1pbi1yZWZsZWN0aW9uLmh0bWw6IEFk
ZGVkLgorICAgICAgICAqIHBsYXRmb3JtL21hYy9jb21wb3NpdGluZy9nZW9tZXRyeS9hYnMtcG9z
aXRpb24taW5zaWRlLW9wYWNpdHktZXhwZWN0ZWQuY2hlY2tzdW06IEFkZGVkLgorICAgICAgICAq
IHBsYXRmb3JtL21hYy9jb21wb3NpdGluZy9nZW9tZXRyeS9hYnMtcG9zaXRpb24taW5zaWRlLW9w
YWNpdHktZXhwZWN0ZWQucG5nOiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvY29tcG9z
aXRpbmcvZ2VvbWV0cnkvYWJzLXBvc2l0aW9uLWluc2lkZS1vcGFjaXR5LWV4cGVjdGVkLnR4dDog
QWRkZWQuCisgICAgICAgICogcGxhdGZvcm0vbWFjL2Zhc3QvcmVmbGVjdGlvbnMvYWJzLXBvc2l0
aW9uLWluLXJlZmxlY3Rpb24tZXhwZWN0ZWQuY2hlY2tzdW06IEFkZGVkLgorICAgICAgICAqIHBs
YXRmb3JtL21hYy9mYXN0L3JlZmxlY3Rpb25zL2Ficy1wb3NpdGlvbi1pbi1yZWZsZWN0aW9uLWV4
cGVjdGVkLnBuZzogQWRkZWQuCisgICAgICAgICogcGxhdGZvcm0vbWFjL2Zhc3QvcmVmbGVjdGlv
bnMvYWJzLXBvc2l0aW9uLWluLXJlZmxlY3Rpb24tZXhwZWN0ZWQudHh0OiBBZGRlZC4KKwogMjAw
OS0wOC0yOCAgSnVsaWUgUGFyZW50ICA8anBhcmVudEBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAg
UmV2aWV3ZWQgYnkgQWxleGV5IFByb3NrdXJ5YWtvdi4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2NvbXBvc2l0aW5nL2dlb21ldHJ5L2Ficy1wb3NpdGlvbi1pbnNpZGUtb3BhY2l0eS5odG1sIGIv
TGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvZ2VvbWV0cnkvYWJzLXBvc2l0aW9uLWluc2lkZS1vcGFj
aXR5Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uY2VlY2Y4ZgotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2dlb21ldHJ5L2Ficy1wb3Np
dGlvbi1pbnNpZGUtb3BhY2l0eS5odG1sCkBAIC0wLDAgKzEsNTEgQEAKKzwhRE9DVFlQRT4KKzxo
dG1sPgorPGhlYWQ+CisgIDx0aXRsZT5PcGFjaXR5IGFuZCBwb3NpdGlvbmluZzwvdGl0bGU+Cisg
IDxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyIgbWVkaWE9InNjcmVlbiI+CisgICAgLmNvbnRhaW5lciB7
CisgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CisgICAgICBoZWlnaHQ6IDEyMHB4OworICAgICAg
d2lkdGg6IDEyMHB4OworICAgICAgcGFkZGluZzogMTBweDsKKyAgICAgIG1hcmdpbjogNTBweDsK
KyAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDsKKyAgICAgIGJvcmRlcjogMXB4
IHNvbGlkIGJsYWNrOworICAgIH0KKyAgICAKKyAgICAuY2hpbGQgeworICAgICAgaGVpZ2h0OiAx
MDBweDsKKyAgICAgIHdpZHRoOiAxMDBweDsKKyAgICAgIG9wYWNpdHk6IDAuODsKKyAgICAgIGJh
Y2tncm91bmQtY29sb3I6IHJlZDsKKyAgICB9CisgICAgCisgICAgLmlubmVyIHsKKyAgICAgIHBv
c2l0aW9uOiBhYnNvbHV0ZTsKKyAgICAgIHdpZHRoOiAxMDBweDsKKyAgICAgIGhlaWdodDogMTAw
cHg7CisgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjsKKyAgICB9CisgICAgCisgICAgLmNv
bXBvc2l0aW5nIHsKKyAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOworICAg
IH0KKyAgPC9zdHlsZT4KKzwvaGVhZD4KKzxib2R5PgorPHA+WW91IHNob3VsZCBzZWUgdHdvIGdy
ZWVuIGJveGVzIGJlbG93LCB3aXRoIG5vIHJlZDwvcD4KKworPGRpdiBjbGFzcz0iY29udGFpbmVy
Ij4KKyAgPGRpdiBjbGFzcz0iY2hpbGQiPgorICAgIDxkaXYgY2xhc3M9ImlubmVyIj48L2Rpdj4K
KyAgPC9kaXY+Cis8L2Rpdj4KKworPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KKyAgPGRpdiBjbGFz
cz0iY2hpbGQiPgorICAgIDxkaXYgY2xhc3M9ImlubmVyIGNvbXBvc2l0aW5nIj48L2Rpdj4KKyAg
PC9kaXY+Cis8L2Rpdj4KKworPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvZmFzdC9yZWZsZWN0aW9ucy9hYnMtcG9zaXRpb24taW4tcmVmbGVjdGlvbi5odG1sIGIvTGF5
b3V0VGVzdHMvZmFzdC9yZWZsZWN0aW9ucy9hYnMtcG9zaXRpb24taW4tcmVmbGVjdGlvbi5odG1s
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjI1ZDA4MDAKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZmxlY3Rpb25zL2Ficy1wb3NpdGlvbi1pbi1yZWZs
ZWN0aW9uLmh0bWwKQEAgLTAsMCArMSw3IEBACis8cD4KKyAgICBUaGUgdGVhbCBib3hlcyBpbiB0
aGUgcmVmbGVjdGlvbiBzaG91bGQgYmUgcGxhY2VkIGNvcnJlY3RseS4KKzwvcD4KKzxkaXYgc3R5
bGU9Ii13ZWJraXQtYm94LXJlZmxlY3Q6IGJlbG93OyBoZWlnaHQ6IDEwMHB4OyB3aWR0aDogMTAw
cHg7IGJhY2tncm91bmQtY29sb3I6IGJsdWU7Ij4KKyAgICA8ZGl2IHN0eWxlPSJwb3NpdGlvbjog
YWJzb2x1dGU7IGhlaWdodDogNTBweDsgd2lkdGg6IDUwcHg7IGJhY2tncm91bmQtY29sb3I6IHRl
YWw7Ij48L2Rpdj4KKyAgICA8ZGl2IHN0eWxlPSJoZWlnaHQ6IDUwcHg7IHdpZHRoOiAxMDBweDsg
YmFja2dyb3VuZC1jb2xvcjogc2lsdmVyOyI+PC9kaXY+Cis8L2Rpdj4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL3BsYXRmb3JtL21hYy9jb21wb3NpdGluZy9nZW9tZXRyeS9hYnMtcG9zaXRpb24t
aW5zaWRlLW9wYWNpdHktZXhwZWN0ZWQuY2hlY2tzdW0gYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9t
YWMvY29tcG9zaXRpbmcvZ2VvbWV0cnkvYWJzLXBvc2l0aW9uLWluc2lkZS1vcGFjaXR5LWV4cGVj
dGVkLmNoZWNrc3VtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY2MDdiNDcK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvY29tcG9zaXRpbmcv
Z2VvbWV0cnkvYWJzLXBvc2l0aW9uLWluc2lkZS1vcGFjaXR5LWV4cGVjdGVkLmNoZWNrc3VtCkBA
IC0wLDAgKzEgQEAKKzM4ZmU4MjQxODg3OGZjOTlmNjQ2ZDBlNzFlMzI3MWM0ClwgTm8gbmV3bGlu
ZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2Nv
bXBvc2l0aW5nL2dlb21ldHJ5L2Ficy1wb3NpdGlvbi1pbnNpZGUtb3BhY2l0eS1leHBlY3RlZC5w
bmcgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvY29tcG9zaXRpbmcvZ2VvbWV0cnkvYWJzLXBv
c2l0aW9uLWluc2lkZS1vcGFjaXR5LWV4cGVjdGVkLnBuZwpuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwLi5hYzBlMDY3CkJpbmFyeSBmaWxlcyAvZGV2L251bGwgYW5kIGIvTGF5b3V0
VGVzdHMvcGxhdGZvcm0vbWFjL2NvbXBvc2l0aW5nL2dlb21ldHJ5L2Ficy1wb3NpdGlvbi1pbnNp
ZGUtb3BhY2l0eS1leHBlY3RlZC5wbmcgZGlmZmVyCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS9tYWMvY29tcG9zaXRpbmcvZ2VvbWV0cnkvYWJzLXBvc2l0aW9uLWluc2lkZS1vcGFj
aXR5LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9jb21wb3NpdGluZy9n
ZW9tZXRyeS9hYnMtcG9zaXRpb24taW5zaWRlLW9wYWNpdHktZXhwZWN0ZWQudHh0Cm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjEwNTI2YTgKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvY29tcG9zaXRpbmcvZ2VvbWV0cnkvYWJzLXBvc2l0aW9u
LWluc2lkZS1vcGFjaXR5LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDIwIEBACitsYXllciBhdCAo
MCwwKSBzaXplIDgwMHg2MDAKKyAgUmVuZGVyVmlldyBhdCAoMCwwKSBzaXplIDgwMHg2MDAKK2xh
eWVyIGF0ICgwLDApIHNpemUgODAweDYwMAorICBSZW5kZXJCbG9jayB7SFRNTH0gYXQgKDAsMCkg
c2l6ZSA4MDB4NjAwCisgICAgUmVuZGVyQm9keSB7Qk9EWX0gYXQgKDgsOCkgc2l6ZSA3ODR4NTQy
CisgICAgICBSZW5kZXJCbG9jayB7UH0gYXQgKDAsMCkgc2l6ZSA3ODR4MTgKKyAgICAgICAgUmVu
ZGVyVGV4dCB7I3RleHR9IGF0ICgwLDApIHNpemUgMzI5eDE4CisgICAgICAgICAgdGV4dCBydW4g
YXQgKDAsMCkgd2lkdGggMzI5OiAiWW91IHNob3VsZCBzZWUgdHdvIGdyZWVuIGJveGVzIGJlbG93
LCB3aXRoIG5vIHJlZCIKK2xheWVyIGF0ICg1OCw3Nikgc2l6ZSAxMjB4MTIwCisgIFJlbmRlckJs
b2NrIChyZWxhdGl2ZSBwb3NpdGlvbmVkKSB7RElWfSBhdCAoNTAsNjgpIHNpemUgMTIweDEyMCBb
Ym9yZGVyOiAoMXB4IHNvbGlkICMwMDAwMDApXQorbGF5ZXIgYXQgKDY5LDg3KSBzaXplIDEwMHgx
MDAKKyAgUmVuZGVyQmxvY2sge0RJVn0gYXQgKDExLDExKSBzaXplIDEwMHgxMDAgW2JnY29sb3I9
I0ZGMDAwMF0KK2xheWVyIGF0ICg2OSw4Nykgc2l6ZSAxMDB4MTAwCisgIFJlbmRlckJsb2NrIChw
b3NpdGlvbmVkKSB7RElWfSBhdCAoMTEsMTEpIHNpemUgMTAweDEwMCBbYmdjb2xvcj0jMDA4MDAw
XQorbGF5ZXIgYXQgKDU4LDI0Nikgc2l6ZSAxMjB4MTIwCisgIFJlbmRlckJsb2NrIChyZWxhdGl2
ZSBwb3NpdGlvbmVkKSB7RElWfSBhdCAoNTAsMjM4KSBzaXplIDEyMHgxMjAgW2JvcmRlcjogKDFw
eCBzb2xpZCAjMDAwMDAwKV0KK2xheWVyIGF0ICg2OSwyNTcpIHNpemUgMTAweDEwMAorICBSZW5k
ZXJCbG9jayB7RElWfSBhdCAoMTEsMTEpIHNpemUgMTAweDEwMCBbYmdjb2xvcj0jRkYwMDAwXQor
bGF5ZXIgYXQgKDY5LDI1Nykgc2l6ZSAxMDB4MTAwCisgIFJlbmRlckJsb2NrIChwb3NpdGlvbmVk
KSB7RElWfSBhdCAoMTEsMTEpIHNpemUgMTAweDEwMCBbYmdjb2xvcj0jMDA4MDAwXQpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2Zhc3QvcmVmbGVjdGlvbnMvYWJzLXBvc2l0
aW9uLWluLXJlZmxlY3Rpb24tZXhwZWN0ZWQuY2hlY2tzdW0gYi9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS9tYWMvZmFzdC9yZWZsZWN0aW9ucy9hYnMtcG9zaXRpb24taW4tcmVmbGVjdGlvbi1leHBlY3Rl
ZC5jaGVja3N1bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45N2VmOTU2Ci0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2Zhc3QvcmVmbGVjdGlv
bnMvYWJzLXBvc2l0aW9uLWluLXJlZmxlY3Rpb24tZXhwZWN0ZWQuY2hlY2tzdW0KQEAgLTAsMCAr
MSBAQAorMjdkYWUyMDc0ZDJkYjc0NTdlNTcyNGJkZjEzMjI2ZDgKXCBObyBuZXdsaW5lIGF0IGVu
ZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvZmFzdC9yZWZs
ZWN0aW9ucy9hYnMtcG9zaXRpb24taW4tcmVmbGVjdGlvbi1leHBlY3RlZC5wbmcgYi9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9tYWMvZmFzdC9yZWZsZWN0aW9ucy9hYnMtcG9zaXRpb24taW4tcmVmbGVj
dGlvbi1leHBlY3RlZC5wbmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDQy
OTUyOQpCaW5hcnkgZmlsZXMgL2Rldi9udWxsIGFuZCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21h
Yy9mYXN0L3JlZmxlY3Rpb25zL2Ficy1wb3NpdGlvbi1pbi1yZWZsZWN0aW9uLWV4cGVjdGVkLnBu
ZyBkaWZmZXIKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9mYXN0L3JlZmxl
Y3Rpb25zL2Ficy1wb3NpdGlvbi1pbi1yZWZsZWN0aW9uLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL3BsYXRmb3JtL21hYy9mYXN0L3JlZmxlY3Rpb25zL2Ficy1wb3NpdGlvbi1pbi1yZWZsZWN0
aW9uLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wYzg3
ZjhjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2Zhc3QvcmVm
bGVjdGlvbnMvYWJzLXBvc2l0aW9uLWluLXJlZmxlY3Rpb24tZXhwZWN0ZWQudHh0CkBAIC0wLDAg
KzEsMTMgQEAKK2xheWVyIGF0ICgwLDApIHNpemUgODAweDYwMAorICBSZW5kZXJWaWV3IGF0ICgw
LDApIHNpemUgODAweDYwMAorbGF5ZXIgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCisgIFJlbmRlckJs
b2NrIHtIVE1MfSBhdCAoMCwwKSBzaXplIDgwMHg2MDAKKyAgICBSZW5kZXJCb2R5IHtCT0RZfSBh
dCAoOCw4KSBzaXplIDc4NHg1ODQKKyAgICAgIFJlbmRlckJsb2NrIHtQfSBhdCAoMCwwKSBzaXpl
IDc4NHgxOAorICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSAzNjd4MTgK
KyAgICAgICAgICB0ZXh0IHJ1biBhdCAoMCwwKSB3aWR0aCAzNjc6ICJUaGUgdGVhbCBib3hlcyBp
biB0aGUgcmVmbGVjdGlvbiBzaG91bGQgYmUgcGxhY2VkIGNvcnJlY3RseS4iCitsYXllciBhdCAo
OCw0Mikgc2l6ZSAxMDB4MTAwCisgIFJlbmRlckJsb2NrIHtESVZ9IGF0ICgwLDM0KSBzaXplIDEw
MHgxMDAgW2JnY29sb3I9IzAwMDBGRl0KKyAgICBSZW5kZXJCbG9jayB7RElWfSBhdCAoMCwwKSBz
aXplIDEwMHg1MCBbYmdjb2xvcj0jQzBDMEMwXQorbGF5ZXIgYXQgKDgsNDIpIHNpemUgNTB4NTAK
KyAgUmVuZGVyQmxvY2sgKHBvc2l0aW9uZWQpIHtESVZ9IGF0ICg4LDQyKSBzaXplIDUweDUwIFti
Z2NvbG9yPSMwMDgwODBdCmRpZmYgLS1naXQgYS9XZWJDb3JlL0NoYW5nZUxvZyBiL1dlYkNvcmUv
Q2hhbmdlTG9nCmluZGV4IGUwYmE4ZTIuLjRlODUwMWIgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvQ2hh
bmdlTG9nCisrKyBiL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDUgKzEsMzMgQEAKIDIwMDktMDgt
MjggIFNpbW9uIEZyYXNlciAgPHNpbW9uLmZyYXNlckBhcHBsZS5jb20+CiAKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRml4IHBvc2l0aW9uaW5nIGVycm9y
IHdoZW4gYSBjb21wb3NpdGluZywgYWJzb2x1dGVseS1wb3NpdGlvbmVkIGVsZW1lbnQgaGFzIGFu
IGFuY2VzdG9yIHdpdGgKKyAgICAgICAgb3BhY2l0eS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI4NzU0CisgICAgICAgIAorICAgICAgICBGb3IgYWJz
b2x1dGVseS1wb3NpdGlvbmVkIGxheWVycywgY29udmVydFRvTGF5ZXJDb29yZHMoKSBqdW1wcyB0
byB0aGUgcG9zaXRpb25lZAorICAgICAgICBhbmNlc3Rvciwgc2luY2UgdGhlIGxheWVyIHggYW5k
IHkgYXJlIHJlbGF0aXZlIHRvIHRoYXQgYW5jZXN0b3IuIEhvd2V2ZXIsIHRoaXMgY291bGQKKyAg
ICAgICAgc2tpcCBvdmVyIHRoZSBhbmNlc3RvckxheWVyLCB0aHVzIGdpdmluZyB0aGUgd3Jvbmcg
cmVzdWx0LgorICAgICAgICAKKyAgICAgICAgRml4IGJ5IGR1cGxpY2F0aW5nIHRoZSBlbmNsb3Np
bmdQb3NpdGlvbmVkQW5jZXN0b3IoKSBsb2dpYyBpbiBjb252ZXJ0VG9MYXllckNvb3JkcygpLAor
ICAgICAgICBhbmQgY2hlY2tpbmcgZm9yIGFuY2VzdG9yTGF5ZXIgYWxvbmcgdGhlIHdheS4gSWYg
Zm91bmQsIGNvbXB1dGUgb2Zmc2V0IG9mIGJvdGggdG8KKyAgICAgICAgdGhlIGVuY2xvc2luZ1Bv
c2l0aW9uZWRBbmNlc3RvcigpIGFuZCBzdWJ0cmFjdC4KKyAgICAgICAgCisgICAgICAgIFRoaXMg
YWxzbyBmaXhlcyBhIHBvc2l0aW9uaW5nIGJ1ZyB3aXRoIGFicy4gcG9zaXRpb25lZCBlbGVtZW50
cyBpbiByZWZsZWN0aW9ucywKKyAgICAgICAgc28gdGhlcmUgaXMgYSBuZXcgcmVmbGVjdGlvbiB0
ZXN0IHdpdGggYSBwaXhlbCByZXN1bHQuCisKKyAgICAgICAgVGVzdHM6IGNvbXBvc2l0aW5nL2dl
b21ldHJ5L2Ficy1wb3NpdGlvbi1pbnNpZGUtb3BhY2l0eS5odG1sCisgICAgICAgICAgICAgICBm
YXN0L3JlZmxlY3Rpb25zL2Ficy1wb3NpdGlvbi1pbi1yZWZsZWN0aW9uLmh0bWwKKworICAgICAg
ICAqIHJlbmRlcmluZy9SZW5kZXJMYXllci5jcHA6CisgICAgICAgIChXZWJDb3JlOjppc1Bvc2l0
aW9uZWRDb250YWluZXIpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXI6OmVuY2xvc2lu
Z1Bvc2l0aW9uZWRBbmNlc3Rvcik6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXllcjo6ZW5j
bG9zaW5nVHJhbnNmb3JtZWRBbmNlc3Rvcik6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXll
cjo6Y29udmVydFRvTGF5ZXJDb29yZHMpOgorCisyMDA5LTA4LTI4ICBTaW1vbiBGcmFzZXIgIDxz
aW1vbi5mcmFzZXJAYXBwbGUuY29tPgorCiAgICAgICAgIFJldmlld2VkIGJ5IE1hcmsgUm93ZQog
CiAgICAgICAgIFdyYXAgV2Via2l0Q1NTVHJhbnNmb3JtVmFsdWVzIGluIHRoZSBjb3JyZWN0IGNs
YXNzIG9mIERPTSB3cmFwcGVyLgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
TGF5ZXIuY3BwIGIvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuY3BwCmluZGV4IDE3ODVm
OWIuLmQ2YzI4NjkgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmNw
cAorKysgYi9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllci5jcHAKQEAgLTYzOCwxMSArNjM4
LDE3IEBAIFJlbmRlckxheWVyKiBSZW5kZXJMYXllcjo6c3RhY2tpbmdDb250ZXh0KCkgY29uc3QK
ICAgICByZXR1cm4gbGF5ZXI7CiB9CiAKK3N0YXRpYyBpbmxpbmUgYm9vbCBpc1Bvc2l0aW9uZWRD
b250YWluZXIoUmVuZGVyTGF5ZXIqIGxheWVyKQoreworICAgIFJlbmRlck9iamVjdCogbyA9IGxh
eWVyLT5yZW5kZXJlcigpOworICAgIHJldHVybiBvLT5pc1JlbmRlclZpZXcoKSB8fCBvLT5pc1Bv
c2l0aW9uZWQoKSB8fCBvLT5pc1JlbFBvc2l0aW9uZWQoKSB8fCBsYXllci0+aGFzVHJhbnNmb3Jt
KCk7Cit9CisKIFJlbmRlckxheWVyKiBSZW5kZXJMYXllcjo6ZW5jbG9zaW5nUG9zaXRpb25lZEFu
Y2VzdG9yKCkgY29uc3QKIHsKICAgICBSZW5kZXJMYXllciogY3VyciA9IHBhcmVudCgpOwotICAg
IGZvciAoIDsgY3VyciAmJiAhY3Vyci0+cmVuZGVyZXIoKS0+aXNSZW5kZXJWaWV3KCkgJiYgIWN1
cnItPnJlbmRlcmVyKCktPmlzUG9zaXRpb25lZCgpICYmICFjdXJyLT5yZW5kZXJlcigpLT5pc1Jl
bFBvc2l0aW9uZWQoKSAmJiAhY3Vyci0+aGFzVHJhbnNmb3JtKCk7Ci0gICAgICAgICBjdXJyID0g
Y3Vyci0+cGFyZW50KCkpIHsgfQorICAgIGZvciAoIDsgY3VyciAmJiAhaXNQb3NpdGlvbmVkQ29u
dGFpbmVyKGN1cnIpOyBjdXJyID0gY3Vyci0+cGFyZW50KCkpCisgICAgeyB9CiAgICAgcmV0dXJu
IGN1cnI7CiB9CiAKQEAgLTY1MCw3ICs2NTYsNyBAQCBSZW5kZXJMYXllciogUmVuZGVyTGF5ZXI6
OmVuY2xvc2luZ1RyYW5zZm9ybWVkQW5jZXN0b3IoKSBjb25zdAogewogICAgIFJlbmRlckxheWVy
KiBjdXJyID0gcGFyZW50KCk7CiAgICAgZm9yICggOyBjdXJyICYmICFjdXJyLT5yZW5kZXJlcigp
LT5pc1JlbmRlclZpZXcoKSAmJiAhY3Vyci0+dHJhbnNmb3JtKCk7IGN1cnIgPSBjdXJyLT5wYXJl
bnQoKSkKLSAgICAgICAgeyB9CisgICAgeyB9CiAgICAgcmV0dXJuIGN1cnI7CiB9CiAKQEAgLTk1
NSwxMiArOTYxLDQyIEBAIFJlbmRlckxheWVyOjpjb252ZXJ0VG9MYXllckNvb3Jkcyhjb25zdCBS
ZW5kZXJMYXllciogYW5jZXN0b3JMYXllciwgaW50JiB4UG9zLCBpCiAgICAgfQogIAogICAgIFJl
bmRlckxheWVyKiBwYXJlbnRMYXllcjsKLSAgICBpZiAocmVuZGVyZXIoKS0+c3R5bGUoKS0+cG9z
aXRpb24oKSA9PSBBYnNvbHV0ZVBvc2l0aW9uKQotICAgICAgICBwYXJlbnRMYXllciA9IGVuY2xv
c2luZ1Bvc2l0aW9uZWRBbmNlc3RvcigpOwotICAgIGVsc2UKKyAgICBpZiAocmVuZGVyZXIoKS0+
c3R5bGUoKS0+cG9zaXRpb24oKSA9PSBBYnNvbHV0ZVBvc2l0aW9uKSB7CisgICAgICAgIC8vIERv
IHdoYXQgZW5jbG9zaW5nUG9zaXRpb25lZEFuY2VzdG9yKCkgZG9lcywgYnV0IGNoZWNrIGZvciBh
bmNlc3RvckxheWVyIGFsb25nIHRoZSB3YXkKKyAgICAgICAgcGFyZW50TGF5ZXIgPSBwYXJlbnQo
KTsKKyAgICAgICAgYm9vbCBmb3VuZEFuY2VzdG9yRmlyc3QgPSBmYWxzZTsKKyAgICAgICAgd2hp
bGUgKHBhcmVudExheWVyKSB7CisgICAgICAgICAgICBpZiAoaXNQb3NpdGlvbmVkQ29udGFpbmVy
KHBhcmVudExheWVyKSkKKyAgICAgICAgICAgICAgICBicmVhazsKKworICAgICAgICAgICAgaWYg
KHBhcmVudExheWVyID09IGFuY2VzdG9yTGF5ZXIpIHsKKyAgICAgICAgICAgICAgICBmb3VuZEFu
Y2VzdG9yRmlyc3QgPSB0cnVlOworICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAg
fQorCisgICAgICAgICAgICBwYXJlbnRMYXllciA9IHBhcmVudExheWVyLT5wYXJlbnQoKTsKKyAg
ICAgICAgfQorCisgICAgICAgIGlmIChmb3VuZEFuY2VzdG9yRmlyc3QpIHsKKyAgICAgICAgICAg
IC8vIEZvdW5kIGFuY2VzdG9yTGF5ZXIgYmVmb3JlIHRoZSBhYnMuIHBvc2l0aW9uZWQgY29udGFp
bmVyLCBzbyBjb21wdXRlIG9mZnNldCBvZiBib3RoIHJlbGF0aXZlCisgICAgICAgICAgICAvLyB0
byBlbmNsb3NpbmdQb3NpdGlvbmVkQW5jZXN0b3IgYW5kIHN1YnRyYWN0LgorICAgICAgICAgICAg
UmVuZGVyTGF5ZXIqIHBvc2l0aW9uZWRBbmNlc3RvciA9IGVuY2xvc2luZ1Bvc2l0aW9uZWRBbmNl
c3RvcigpOworCisgICAgICAgICAgICBpbnQgdGhpc1ggPSAwLCB0aGlzWSA9IDA7CisgICAgICAg
ICAgICBjb252ZXJ0VG9MYXllckNvb3Jkcyhwb3NpdGlvbmVkQW5jZXN0b3IsIHRoaXNYLCB0aGlz
WSk7CisgICAgICAgICAgICAKKyAgICAgICAgICAgIGludCBhbmNlc3RvclggPSAwLCBhbmNlc3Rv
clkgPSAwOworICAgICAgICAgICAgYW5jZXN0b3JMYXllci0+Y29udmVydFRvTGF5ZXJDb29yZHMo
cG9zaXRpb25lZEFuY2VzdG9yLCBhbmNlc3RvclgsIGFuY2VzdG9yWSk7CisgICAgICAgIAorICAg
ICAgICAgICAgeFBvcyArPSAodGhpc1ggLSBhbmNlc3RvclgpOworICAgICAgICAgICAgeVBvcyAr
PSAodGhpc1kgLSBhbmNlc3RvclkpOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9Cisg
ICAgfSBlbHNlCiAgICAgICAgIHBhcmVudExheWVyID0gcGFyZW50KCk7CiAgICAgCi0gICAgaWYg
KCFwYXJlbnRMYXllcikgcmV0dXJuOworICAgIGlmICghcGFyZW50TGF5ZXIpCisgICAgICAgIHJl
dHVybjsKICAgICAKICAgICBwYXJlbnRMYXllci0+Y29udmVydFRvTGF5ZXJDb29yZHMoYW5jZXN0
b3JMYXllciwgeFBvcywgeVBvcyk7CiAK
</data>
<flag name="review"
          id="19760"
          type_id="1"
          status="+"
          setter="mitz"
    />
          </attachment>
      

    </bug>

</bugzilla>