<?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>22212</bug_id>
          
          <creation_ts>2008-11-12 12:40:30 -0800</creation_ts>
          <short_desc>[Transforms] redrawing turds when transforming element with abs. pos child</short_desc>
          <delta_ts>2008-11-12 17:32:25 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Layout and Rendering</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Mac</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></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>
          <cc>hyatt</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>98506</commentid>
    <comment_count>0</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2008-11-12 12:40:30 -0800</bug_when>
    <thetext>The testcase shows a redraw issue when transforming something with an absolute position child.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>98507</commentid>
    <comment_count>1</comment_count>
      <attachid>25101</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2008-11-12 12:40:48 -0800</bug_when>
    <thetext>Created attachment 25101
Testcase</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>98534</commentid>
    <comment_count>2</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2008-11-12 15:21:48 -0800</bug_when>
    <thetext>The issue here is that RenderObject::repaintAfterLayoutIfNeeded() falls into the &quot;just redraw the deltas&quot; codepath when redrawing the abs. positioned gray bar.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>98558</commentid>
    <comment_count>3</comment_count>
      <attachid>25109</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2008-11-12 17:22:12 -0800</bug_when>
    <thetext>Created attachment 25109
Patch, testcase, changelog</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>98559</commentid>
    <comment_count>4</comment_count>
      <attachid>25109</attachid>
    <who name="">mitz</who>
    <bug_when>2008-11-12 17:27:10 -0800</bug_when>
    <thetext>Comment on attachment 25109
Patch, testcase, changelog

&gt; +     #box {
&gt; +        position: relative;
&gt; +         margin: 50px;
&gt; +         width: 200px;
&gt; +         height: 200px;
&gt; +         border: 2px solid black;
&gt; +         -webkit-transform: rotate(0deg);
&gt; +
&gt; +     }

Tiny indentation problem here.

&gt; +        Finally, fix a bug in RenderBox::localToAbsoluteQuad() which was getting
&gt; +        borderTopExtra() from the object, rather than its container (as localToAbsolute()
&gt; +        does).

Do you have a test for this?

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>98560</commentid>
    <comment_count>5</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2008-11-12 17:31:11 -0800</bug_when>
    <thetext>&gt; Do you have a test for this?

It was exposed by LayoutTests/fast/dynamic/subtree-table-cell-height.html, so is covered.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>98561</commentid>
    <comment_count>6</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2008-11-12 17:32:25 -0800</bug_when>
    <thetext>Committed r38353
	M	WebCore/rendering/RenderFlexibleBox.cpp
	M	WebCore/rendering/RenderObject.cpp
	M	WebCore/rendering/RenderSVGContainer.cpp
	M	WebCore/rendering/RenderSVGViewportContainer.cpp
	M	WebCore/rendering/RenderObject.h
	M	WebCore/rendering/RenderLayer.cpp
	M	WebCore/rendering/RenderForeignObject.cpp
	M	WebCore/rendering/RenderPath.cpp
	M	WebCore/rendering/RenderBox.cpp
	M	WebCore/rendering/RenderBlock.cpp
	M	WebCore/rendering/RenderTable.cpp
	M	WebCore/rendering/RenderSVGImage.cpp
	M	WebCore/rendering/RenderSVGText.cpp
	M	WebCore/rendering/RenderReplaced.cpp
	M	WebCore/rendering/RenderSVGRoot.cpp
	M	WebCore/ChangeLog
	A	LayoutTests/platform/mac/fast/repaint/transform-absolute-child-expected.png
	A	LayoutTests/platform/mac/fast/repaint/transform-absolute-child-expected.txt
	A	LayoutTests/platform/mac/fast/repaint/transform-absolute-child-expected.checksum
	M	LayoutTests/ChangeLog
	A	LayoutTests/fast/repaint/transform-absolute-child.html
r38353 = d12c84b463bdb934ab22f7931948b30951f4e310 (trunk)
</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>25101</attachid>
            <date>2008-11-12 12:40:48 -0800</date>
            <delta_ts>2008-11-12 12:40:48 -0800</delta_ts>
            <desc>Testcase</desc>
            <filename>hover_transform.html</filename>
            <type>text/html</type>
            <size>969</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFs
Ly9FTiIKICAgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cgo8aHRtbCBs
YW5nPSJlbiI+CjxoZWFkPgogIDxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVu
dD0idGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04Ij4KICA8dGl0bGU+SG92ZXIgVHJhbnNmb3JtPC90
aXRsZT4KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiIG1lZGlhPSJzY3JlZW4iPgogICAgICNjb250
YWluZXIgewogICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgIGxlZnQ6IDUwcHg7
IHRvcDogNTBweDsKICAgICAgICAgd2lkdGg6IDIwMHB4OwogICAgICAgICBoZWlnaHQ6IDIwMHB4
OwogICAgICAgICBib3JkZXI6IDJweCBzb2xpZCBibGFjazsKICAgICAgICAtd2Via2l0LXRyYW5z
aXRpb24tcHJvcGVydHk6IC13ZWJraXQtdHJhbnNmb3JtOwogICAgICAgIC13ZWJraXQtdHJhbnNp
dGlvbi1kdXJhdGlvbjogMC41czsKICAgICB9CiAgICAgI2NvbnRhaW5lcjpob3ZlciB7CiAgICAg
ICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg0MGRlZyk7CiAgICAgfQogICAgICNjaGlsZCB7
CiAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgICAgd2lkdGg6IDUxMnB4OwogICAg
ICAgICBoZWlnaHQ6IDUwcHg7CiAgICAgICAgIHRvcDogNzVweDsKICAgICAgICAgbGVmdDogNzVw
eDsKICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZ3JheTsKICAgICAgICAgLXdlYmtpdC1ib3Jk
ZXItcmFkaXVzOiAyNXB4OwogICAgIH0KICA8L3N0eWxlPgo8L2hlYWQ+Cjxib2R5Pgo8ZGl2IGlk
PSJjb250YWluZXIiPgogICAgSSBzaG91bGQgcm90YXRlIGFib3V0IG15IGNlbnRlciBvbiBob3Zl
cgogICAgPGRpdiBpZD0iY2hpbGQiPgogICAgPC9kaXY+CjwvZGl2Pgo8L2JvZHk+CjwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>25109</attachid>
            <date>2008-11-12 17:22:12 -0800</date>
            <delta_ts>2008-11-12 17:27:10 -0800</delta_ts>
            <desc>Patch, testcase, changelog</desc>
            <filename>22212_patch.txt</filename>
            <type>text/plain</type>
            <size>16535</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA4MGU5YTFkLi42ZDM0NDNiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMDgtMTEt
MTIgIFNpbW9uIEZyYXNlciAgPHNpbW9uLmZyYXNlckBhcHBsZS5jb20+CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIyMjEyCisgICAgICAgIAorICAgICAgICBSZXBhaW50IHRlc3Qg
Zm9yIGEgdHJhbnNmb3JtIGNoYW5nZSBvbiBhbiBlbGVtZW50IHdpdGggYSBwb3NpdGlvbmVkIGNo
aWxkLgorICAgICAgICAKKyAgICAgICAgKiBmYXN0L3JlcGFpbnQvdHJhbnNmb3JtLWFic29sdXRl
LWNoaWxkLmh0bWw6IEFkZGVkLgorICAgICAgICAqIHBsYXRmb3JtL21hYy9mYXN0L3JlcGFpbnQv
dHJhbnNmb3JtLWFic29sdXRlLWNoaWxkLWV4cGVjdGVkLmNoZWNrc3VtOiBBZGRlZC4KKyAgICAg
ICAgKiBwbGF0Zm9ybS9tYWMvZmFzdC9yZXBhaW50L3RyYW5zZm9ybS1hYnNvbHV0ZS1jaGlsZC1l
eHBlY3RlZC5wbmc6IEFkZGVkLgorICAgICAgICAqIHBsYXRmb3JtL21hYy9mYXN0L3JlcGFpbnQv
dHJhbnNmb3JtLWFic29sdXRlLWNoaWxkLWV4cGVjdGVkLnR4dDogQWRkZWQuCisKIDIwMDgtMTEt
MTIgIERhbiBCZXJuc3RlaW4gIDxtaXR6QGFwcGxlLmNvbT4KIAogICAgICAgICAtIHJlbW92ZSBh
biBlbXB0eSBkaXJlY3RvcnkKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVwYWludC90
cmFuc2Zvcm0tYWJzb2x1dGUtY2hpbGQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVwYWludC90
cmFuc2Zvcm0tYWJzb2x1dGUtY2hpbGQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwLi5mMjU1Y2FhCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZXBh
aW50L3RyYW5zZm9ybS1hYnNvbHV0ZS1jaGlsZC5odG1sCkBAIC0wLDAgKzEsNDMgQEAKKzwhRE9D
VFlQRSBodG1sIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4i
CisgICAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzxodG1sIGxhbmc9
ImVuIj4KKzxoZWFkPgorICA8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9
InRleHQvaHRtbDsgY2hhcnNldD11dGYtOCI+CisgIDx0aXRsZT5UcmFuc2Zvcm0gd2l0aCBBYnMu
IFBvcyBjaGlsZDwvdGl0bGU+CisgIDxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyIgbWVkaWE9InNjcmVl
biI+CisgICAgICNib3ggeworICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CisgICAgICAgICBt
YXJnaW46IDUwcHg7CisgICAgICAgICB3aWR0aDogMjAwcHg7CisgICAgICAgICBoZWlnaHQ6IDIw
MHB4OworICAgICAgICAgYm9yZGVyOiAycHggc29saWQgYmxhY2s7CisgICAgICAgICAtd2Via2l0
LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpOworCisgICAgIH0KKyAgICAgI2JveC5yb3RhdGVkIHsK
KyAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg0MGRlZyk7CisgICAgIH0KKyAgICAg
I2NoaWxkIHsKKyAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKKyAgICAgICAgIHdpZHRoOiA0
MDBweDsKKyAgICAgICAgIGhlaWdodDogNTBweDsKKyAgICAgICAgIHRvcDogNzVweDsKKyAgICAg
ICAgIGxlZnQ6IDc1cHg7CisgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBncmF5OworICAgICB9
CisgIDwvc3R5bGU+CisgIDxzY3JpcHQgc3JjPSJyZXBhaW50LmpzIiB0eXBlPSJ0ZXh0L2phdmFz
Y3JpcHQiIGNoYXJzZXQ9InV0Zi04Ij48L3NjcmlwdD4KKyAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2ph
dmFzY3JpcHQiIGNoYXJzZXQ9InV0Zi04Ij4KKyAgICBmdW5jdGlvbiByZXBhaW50VGVzdCgpCisg
ICAgeworICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2JveCcpLmNsYXNzTmFtZSA9ICdy
b3RhdGVkJzsKKyAgICB9CisgIDwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHkgb25sb2FkPSJydW5S
ZXBhaW50VGVzdCgpIj4KKzxkaXYgaWQ9ImJveCI+CisgICAgPGRpdiBpZD0iY2hpbGQiPgorICAg
IDwvZGl2PgorPC9kaXY+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS9tYWMvZmFzdC9yZXBhaW50L3RyYW5zZm9ybS1hYnNvbHV0ZS1jaGlsZC1leHBl
Y3RlZC5jaGVja3N1bSBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9mYXN0L3JlcGFpbnQvdHJh
bnNmb3JtLWFic29sdXRlLWNoaWxkLWV4cGVjdGVkLmNoZWNrc3VtCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAuLjEzMmJhZmQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS9tYWMvZmFzdC9yZXBhaW50L3RyYW5zZm9ybS1hYnNvbHV0ZS1jaGlsZC1leHBl
Y3RlZC5jaGVja3N1bQpAQCAtMCwwICsxIEBACisyNjc2ZWZkZmMwZjdmYmNhMWFkNTY1OWU3NzE0
YjZiZApcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L3BsYXRmb3JtL21hYy9mYXN0L3JlcGFpbnQvdHJhbnNmb3JtLWFic29sdXRlLWNoaWxkLWV4cGVj
dGVkLnBuZyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9mYXN0L3JlcGFpbnQvdHJhbnNmb3Jt
LWFic29sdXRlLWNoaWxkLWV4cGVjdGVkLnBuZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwLi40Njc0MmI1CkJpbmFyeSBmaWxlcyAvZGV2L251bGwgYW5kIGIvTGF5b3V0VGVzdHMv
cGxhdGZvcm0vbWFjL2Zhc3QvcmVwYWludC90cmFuc2Zvcm0tYWJzb2x1dGUtY2hpbGQtZXhwZWN0
ZWQucG5nIGRpZmZlcgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2Zhc3Qv
cmVwYWludC90cmFuc2Zvcm0tYWJzb2x1dGUtY2hpbGQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vbWFjL2Zhc3QvcmVwYWludC90cmFuc2Zvcm0tYWJzb2x1dGUtY2hpbGQtZXhw
ZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjVjYzk4MmQKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvZmFzdC9yZXBhaW50L3Ry
YW5zZm9ybS1hYnNvbHV0ZS1jaGlsZC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw5IEBACitsYXll
ciBhdCAoMCwwKSBzaXplIDgwMHg2MDAKKyAgUmVuZGVyVmlldyBhdCAoMCwwKSBzaXplIDgwMHg2
MDAKK2xheWVyIGF0ICgwLDApIHNpemUgODAweDMwNAorICBSZW5kZXJCbG9jayB7SFRNTH0gYXQg
KDAsMCkgc2l6ZSA4MDB4MzA0CisgICAgUmVuZGVyQm9keSB7Qk9EWX0gYXQgKDgsNTApIHNpemUg
Nzg0eDIwNAorbGF5ZXIgYXQgKDU4LDUwKSBzaXplIDIwNHgyMDQKKyAgUmVuZGVyQmxvY2sgKHJl
bGF0aXZlIHBvc2l0aW9uZWQpIHtESVZ9IGF0ICg1MCwwKSBzaXplIDIwNHgyMDQgW2JvcmRlcjog
KDJweCBzb2xpZCAjMDAwMDAwKV0KK2xheWVyIGF0ICgxMzUsMTI3KSBzaXplIDQwMHg1MAorICBS
ZW5kZXJCbG9jayAocG9zaXRpb25lZCkge0RJVn0gYXQgKDc3LDc3KSBzaXplIDQwMHg1MCBbYmdj
b2xvcj0jODA4MDgwXQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9DaGFuZ2VMb2cgYi9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBlNmMzNmJiLi43YTkxZjdhIDEwMDY0NAotLS0gYS9XZWJDb3JlL0NoYW5n
ZUxvZworKysgYi9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDU4IEBACiAyMDA4LTExLTEy
ICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgogCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMjIxMgorCisgICAgICAgIFJlbmFtZSBhYnNvbHV0ZU91dGxpbmVC
b3goKSB0byBhYnNvbHV0ZU91dGxpbmVCb3VuZHMoKSwgdG8gaW5kaWNhdGUgdGhhdAorICAgICAg
ICBpdCBtYXkgYmUgdGhlIGJvdW5kaW5nIG91dGxpbmUgYm94IG9mIGEgdHJhbnNmb3JtZWQgZWxl
bWVudCwgYW5kIGZpeCBpdAorICAgICAgICB0byByZXNwZWN0IHRyYW5zZm9ybXMgYnkgbWFwcGlu
ZyB0aGUgb3V0bGluZSBib3ggdG8gYW4gYWJzb2x1dGUgcXVhZCBhbmQKKyAgICAgICAgdGFraW5n
IHRoZSBlbmNsb3NpbmcgcmVjdC4KKyAgICAgICAgCisgICAgICAgIFJlbmRlckJveDo6bG9jYWxU
b0Fic29sdXRlUXVhZCgpIGNhbiBubyBsb25nZXIgYXNzZXJ0IHRoYXQgdGhlcmUgaXMgbm8KKyAg
ICAgICAgTGF5b3V0U3RhdGUsIGJ1dCBMYXlvdXRTdGF0ZSBjYW5ub3QgYmUgdXNlZCBkdXJpbmcg
cXVhZCBtYXBwaW5nIChpdCBrbm93cworICAgICAgICBub3RoaW5nIGFib3V0IHRyYW5zZm9ybXMp
LgorICAgICAgICAKKyAgICAgICAgRmluYWxseSwgZml4IGEgYnVnIGluIFJlbmRlckJveDo6bG9j
YWxUb0Fic29sdXRlUXVhZCgpIHdoaWNoIHdhcyBnZXR0aW5nCisgICAgICAgIGJvcmRlclRvcEV4
dHJhKCkgZnJvbSB0aGUgb2JqZWN0LCByYXRoZXIgdGhhbiBpdHMgY29udGFpbmVyIChhcyBsb2Nh
bFRvQWJzb2x1dGUoKQorICAgICAgICBkb2VzKS4KKyAgICAgICAgCisgICAgICAgIFRlc3Q6IGZh
c3QvcmVwYWludC90cmFuc2Zvcm0tYWJzb2x1dGUtY2hpbGQuaHRtbAorCisgICAgICAgICogcmVu
ZGVyaW5nL1JlbmRlckJsb2NrLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJsb2NrOjps
YXlvdXRCbG9jayk6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlckJveC5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpSZW5kZXJCb3g6OmxvY2FsVG9BYnNvbHV0ZVF1YWQpOgorICAgICAgICAqIHJl
bmRlcmluZy9SZW5kZXJGbGV4aWJsZUJveC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJG
bGV4aWJsZUJveDo6bGF5b3V0QmxvY2spOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJGb3Jl
aWduT2JqZWN0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckZvcmVpZ25PYmplY3Q6Omxh
eW91dCk6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlckxheWVyLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OlJlbmRlckxheWVyOjp1cGRhdGVMYXllclBvc2l0aW9ucyk6CisgICAgICAgIChXZWJD
b3JlOjpSZW5kZXJMYXllcjo6c2V0SGFzVmlzaWJsZUNvbnRlbnQpOgorICAgICAgICAqIHJlbmRl
cmluZy9SZW5kZXJPYmplY3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyT2JqZWN0Ojpy
ZXBhaW50QWZ0ZXJMYXlvdXRJZk5lZWRlZCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJPYmpl
Y3Q6OmFic29sdXRlT3V0bGluZUJvdW5kcyk6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlck9i
amVjdC5oOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJQYXRoLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OlJlbmRlclBhdGg6OmxheW91dCk6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlclJl
cGxhY2VkLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclJlcGxhY2VkOjpsYXlvdXQpOgor
ICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJTVkdDb250YWluZXIuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6UmVuZGVyU1ZHQ29udGFpbmVyOjpsYXlvdXQpOgorICAgICAgICAqIHJlbmRlcmluZy9S
ZW5kZXJTVkdJbWFnZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJTVkdJbWFnZTo6bGF5
b3V0KToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyU1ZHUm9vdC5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpSZW5kZXJTVkdSb290OjpsYXlvdXQpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5k
ZXJTVkdUZXh0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclNWR1RleHQ6OmxheW91dCk6
CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlclNWR1ZpZXdwb3J0Q29udGFpbmVyLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlJlbmRlclNWR1ZpZXdwb3J0Q29udGFpbmVyOjpsYXlvdXQpOgorICAg
ICAgICAqIHJlbmRlcmluZy9SZW5kZXJUYWJsZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5k
ZXJUYWJsZTo6bGF5b3V0KToKKworMjAwOC0xMS0xMiAgU2ltb24gRnJhc2VyICA8c2ltb24uZnJh
c2VyQGFwcGxlLmNvbT4KKwogICAgICAgICBSZXZpZXdlZCBieSBEYXZlIEh5YXR0CiAKICAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxOTQyCmRpZmYgLS1n
aXQgYS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9jay5jcHAgYi9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJCbG9jay5jcHAKaW5kZXggY2JlNzNkZi4uNTQ4OWUxMSAxMDA2NDQKLS0tIGEvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2suY3BwCisrKyBiL1dlYkNvcmUvcmVuZGVyaW5nL1Jl
bmRlckJsb2NrLmNwcApAQCAtNTg5LDcgKzU4OSw3IEBAIHZvaWQgUmVuZGVyQmxvY2s6OmxheW91
dEJsb2NrKGJvb2wgcmVsYXlvdXRDaGlsZHJlbikKICAgICBib29sIGNoZWNrRm9yUmVwYWludCA9
IG1fZXZlckhhZExheW91dCAmJiBjaGVja0ZvclJlcGFpbnREdXJpbmdMYXlvdXQoKTsKICAgICBp
ZiAoY2hlY2tGb3JSZXBhaW50KSB7CiAgICAgICAgIG9sZEJvdW5kcyA9IGFic29sdXRlQ2xpcHBl
ZE92ZXJmbG93UmVjdCgpOwotICAgICAgICBvbGRPdXRsaW5lQm94ID0gYWJzb2x1dGVPdXRsaW5l
Qm94KCk7CisgICAgICAgIG9sZE91dGxpbmVCb3ggPSBhYnNvbHV0ZU91dGxpbmVCb3VuZHMoKTsK
ICAgICB9CiAKICAgICBMYXlvdXRTdGF0ZU1haW50YWluZXIgc3RhdGVQdXNoZXIodmlldygpLCB0
aGlzLCBJbnRTaXplKHhQb3MoKSwgeVBvcygpKSwgIW1faGFzQ29sdW1ucyAmJiAhaGFzUmVmbGVj
dGlvbigpKTsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveC5jcHAgYi9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3guY3BwCmluZGV4IDVmNTFlYjMuLjIzNmE0ODcgMTAw
NjQ0Ci0tLSBhL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveC5jcHAKKysrIGIvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyQm94LmNwcApAQCAtMTA1NCw5ICsxMDU0LDYgQEAgRmxvYXRQb2ludCBS
ZW5kZXJCb3g6OmFic29sdXRlVG9Mb2NhbChGbG9hdFBvaW50IGNvbnRhaW5lclBvaW50LCBib29s
IGZpeGVkLCBib28KIAogRmxvYXRRdWFkIFJlbmRlckJveDo6bG9jYWxUb0Fic29sdXRlUXVhZChj
b25zdCBGbG9hdFF1YWQmIGxvY2FsUXVhZCwgYm9vbCBmaXhlZCkgY29uc3QKIHsKLSAgICAvLyBX
ZSBkb24ndCBleHBlY3QgbG9jYWxUb0Fic29sdXRlUXVhZCgpIHRvIGJlIGNhbGxlZCBkdXJpbmcg
bGF5b3V0ICh5ZXQpCi0gICAgQVNTRVJUKCF2aWV3KCkgfHwgIXZpZXcoKS0+bGF5b3V0U3RhdGUo
KSk7Ci0KICAgICBpZiAoc3R5bGUoKS0+cG9zaXRpb24oKSA9PSBGaXhlZFBvc2l0aW9uKQogICAg
ICAgICBmaXhlZCA9IHRydWU7CiAKQEAgLTEwNzIsNyArMTA2OSw3IEBAIEZsb2F0UXVhZCBSZW5k
ZXJCb3g6OmxvY2FsVG9BYnNvbHV0ZVF1YWQoY29uc3QgRmxvYXRRdWFkJiBsb2NhbFF1YWQsIGJv
b2wgZml4ZWQpCiAKICAgICAgICAgLy8gVGFrZSBpbnRvIGFjY291bnQgc3BhY2UgYWJvdmUgYSB2
ZXJ0aWNhbGx5IGFsaWduZWQgdGFibGUgY2VsbAogICAgICAgICAvLyAoc2VlIGxvY2FsVG9BYnNv
bHV0ZUZvckNvbnRlbnQoKSkKLSAgICAgICAgcXVhZC5tb3ZlKDAuMGYsIHN0YXRpY19jYXN0PGZs
b2F0Pihib3JkZXJUb3BFeHRyYSgpKSk7CisgICAgICAgIHF1YWQubW92ZSgwLjBmLCBzdGF0aWNf
Y2FzdDxmbG9hdD4oby0+Ym9yZGVyVG9wRXh0cmEoKSkpOwogCiAgICAgICAgIHJldHVybiBvLT5s
b2NhbFRvQWJzb2x1dGVRdWFkKHF1YWQsIGZpeGVkKTsKICAgICB9CmRpZmYgLS1naXQgYS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJGbGV4aWJsZUJveC5jcHAgYi9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJGbGV4aWJsZUJveC5jcHAKaW5kZXggZWRkMWUwNC4uZTBkODg2NyAxMDA2NDQKLS0tIGEv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRmxleGlibGVCb3guY3BwCisrKyBiL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlckZsZXhpYmxlQm94LmNwcApAQCAtMjE2LDcgKzIxNiw3IEBAIHZvaWQgUmVu
ZGVyRmxleGlibGVCb3g6OmxheW91dEJsb2NrKGJvb2wgcmVsYXlvdXRDaGlsZHJlbikKICAgICBi
b29sIGNoZWNrRm9yUmVwYWludCA9IGNoZWNrRm9yUmVwYWludER1cmluZ0xheW91dCgpOwogICAg
IGlmIChjaGVja0ZvclJlcGFpbnQpIHsKICAgICAgICAgb2xkQm91bmRzID0gYWJzb2x1dGVDbGlw
cGVkT3ZlcmZsb3dSZWN0KCk7Ci0gICAgICAgIG9sZE91dGxpbmVCb3ggPSBhYnNvbHV0ZU91dGxp
bmVCb3goKTsKKyAgICAgICAgb2xkT3V0bGluZUJveCA9IGFic29sdXRlT3V0bGluZUJvdW5kcygp
OwogICAgIH0KIAogICAgIExheW91dFN0YXRlTWFpbnRhaW5lciBzdGF0ZVB1c2hlcih2aWV3KCks
IHRoaXMsIEludFNpemUobV94LCBtX3kpLCAhaGFzUmVmbGVjdGlvbigpKTsKZGlmZiAtLWdpdCBh
L1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckZvcmVpZ25PYmplY3QuY3BwIGIvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyRm9yZWlnbk9iamVjdC5jcHAKaW5kZXggNTA3MGI5Ny4uYzUyYzE1NyAxMDA2
NDQKLS0tIGEvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRm9yZWlnbk9iamVjdC5jcHAKKysrIGIv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRm9yZWlnbk9iamVjdC5jcHAKQEAgLTEwMiw3ICsxMDIs
NyBAQCB2b2lkIFJlbmRlckZvcmVpZ25PYmplY3Q6OmxheW91dCgpCiAgICAgYm9vbCBjaGVja0Zv
clJlcGFpbnQgPSBjaGVja0ZvclJlcGFpbnREdXJpbmdMYXlvdXQoKTsKICAgICBpZiAoY2hlY2tG
b3JSZXBhaW50KSB7CiAgICAgICAgIG9sZEJvdW5kcyA9IG1fYWJzb2x1dGVCb3VuZHM7Ci0gICAg
ICAgIG9sZE91dGxpbmVCb3ggPSBhYnNvbHV0ZU91dGxpbmVCb3goKTsKKyAgICAgICAgb2xkT3V0
bGluZUJveCA9IGFic29sdXRlT3V0bGluZUJvdW5kcygpOwogICAgIH0KICAgICAKICAgICBjYWxj
dWxhdGVMb2NhbFRyYW5zZm9ybSgpOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyTGF5ZXIuY3BwIGIvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuY3BwCmluZGV4IDA2
NzQ1ZTUuLjEyMGUxMjAgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVy
LmNwcAorKysgYi9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllci5jcHAKQEAgLTIyOCw3ICsy
MjgsNyBAQCB2b2lkIFJlbmRlckxheWVyOjp1cGRhdGVMYXllclBvc2l0aW9ucyhib29sIGRvRnVs
bFJlcGFpbnQsIGJvb2wgY2hlY2tGb3JSZXBhaW50KQogICAgICAgICBBU1NFUlQoIXZpZXctPmxh
eW91dFN0YXRlKCkpOwogCiAgICAgICAgIEludFJlY3QgbmV3UmVjdCA9IG1fb2JqZWN0LT5hYnNv
bHV0ZUNsaXBwZWRPdmVyZmxvd1JlY3QoKTsKLSAgICAgICAgSW50UmVjdCBuZXdPdXRsaW5lQm94
ID0gbV9vYmplY3QtPmFic29sdXRlT3V0bGluZUJveCgpOworICAgICAgICBJbnRSZWN0IG5ld091
dGxpbmVCb3ggPSBtX29iamVjdC0+YWJzb2x1dGVPdXRsaW5lQm91bmRzKCk7CiAgICAgICAgIGlm
IChjaGVja0ZvclJlcGFpbnQpIHsKICAgICAgICAgICAgIGlmICh2aWV3ICYmICF2aWV3LT5wcmlu
dGluZygpKSB7CiAgICAgICAgICAgICAgICAgaWYgKG1fbmVlZHNGdWxsUmVwYWludCkgewpAQCAt
Mjg1LDcgKzI4NSw3IEBAIHZvaWQgUmVuZGVyTGF5ZXI6OnNldEhhc1Zpc2libGVDb250ZW50KGJv
b2wgYikKICAgICBtX2hhc1Zpc2libGVDb250ZW50ID0gYjsKICAgICBpZiAobV9oYXNWaXNpYmxl
Q29udGVudCkgewogICAgICAgICBtX3JlcGFpbnRSZWN0ID0gcmVuZGVyZXIoKS0+YWJzb2x1dGVD
bGlwcGVkT3ZlcmZsb3dSZWN0KCk7Ci0gICAgICAgIG1fb3V0bGluZUJveCA9IHJlbmRlcmVyKCkt
PmFic29sdXRlT3V0bGluZUJveCgpOworICAgICAgICBtX291dGxpbmVCb3ggPSByZW5kZXJlcigp
LT5hYnNvbHV0ZU91dGxpbmVCb3VuZHMoKTsKICAgICAgICAgaWYgKCFpc092ZXJmbG93T25seSgp
KQogICAgICAgICAgICAgZGlydHlTdGFja2luZ0NvbnRleHRaT3JkZXJMaXN0cygpOwogICAgIH0K
ZGlmZiAtLWdpdCBhL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck9iamVjdC5jcHAgYi9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJPYmplY3QuY3BwCmluZGV4IDljYmMzMjcuLjUxZTViMDIgMTAwNjQ0
Ci0tLSBhL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck9iamVjdC5jcHAKKysrIGIvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmNwcApAQCAtMTg5OCw3ICsxODk4LDcgQEAgYm9vbCBSZW5k
ZXJPYmplY3Q6OnJlcGFpbnRBZnRlckxheW91dElmTmVlZGVkKGNvbnN0IEludFJlY3QmIG9sZEJv
dW5kcywgY29uc3QgSW4KICAgICBpZiAoIWZ1bGxSZXBhaW50ICYmIHN0eWxlKCktPmJvcmRlckZp
dCgpID09IEJvcmRlckZpdExpbmVzKQogICAgICAgICBmdWxsUmVwYWludCA9IHRydWU7CiAgICAg
aWYgKCFmdWxsUmVwYWludCkgewotICAgICAgICBuZXdPdXRsaW5lQm94ID0gYWJzb2x1dGVPdXRs
aW5lQm94KCk7CisgICAgICAgIG5ld091dGxpbmVCb3ggPSBhYnNvbHV0ZU91dGxpbmVCb3VuZHMo
KTsKICAgICAgICAgaWYgKG5ld091dGxpbmVCb3gubG9jYXRpb24oKSAhPSBvbGRPdXRsaW5lQm94
LmxvY2F0aW9uKCkgfHwgKG11c3RSZXBhaW50QmFja2dyb3VuZE9yQm9yZGVyKCkgJiYgKG5ld0Jv
dW5kcyAhPSBvbGRCb3VuZHMgfHwgbmV3T3V0bGluZUJveCAhPSBvbGRPdXRsaW5lQm94KSkpCiAg
ICAgICAgICAgICBmdWxsUmVwYWludCA9IHRydWU7CiAgICAgfQpAQCAtMzE0NiwxMyArMzE0Niwx
NSBAQCB2b2lkIFJlbmRlck9iamVjdDo6YWRqdXN0UmVjdEZvck91dGxpbmVBbmRTaGFkb3coSW50
UmVjdCYgcmVjdCkgY29uc3QKICAgICAgICAgcmVjdC5pbmZsYXRlKG91dGxpbmVTaXplKTsKIH0K
IAotSW50UmVjdCBSZW5kZXJPYmplY3Q6OmFic29sdXRlT3V0bGluZUJveCgpIGNvbnN0CitJbnRS
ZWN0IFJlbmRlck9iamVjdDo6YWJzb2x1dGVPdXRsaW5lQm91bmRzKCkgY29uc3QKIHsKICAgICBJ
bnRSZWN0IGJveCA9IGJvcmRlckJveCgpOwotICAgIEZsb2F0UG9pbnQgYWJzUG9zID0gbG9jYWxU
b0Fic29sdXRlKCk7Ci0gICAgYm94Lm1vdmUoYWJzUG9zLngoKSwgYWJzUG9zLnkoKSk7Ci0gICAg
Ym94Lm1vdmUodmlldygpLT5sYXlvdXREZWx0YSgpKTsKICAgICBhZGp1c3RSZWN0Rm9yT3V0bGlu
ZUFuZFNoYWRvdyhib3gpOworCisgICAgRmxvYXRRdWFkIGFic091dGxpbmVRdWFkID0gbG9jYWxU
b0Fic29sdXRlUXVhZChGbG9hdFJlY3QoYm94KSk7CisgICAgYm94ID0gYWJzT3V0bGluZVF1YWQu
ZW5jbG9zaW5nQm91bmRpbmdCb3goKTsKKyAgICBib3gubW92ZSh2aWV3KCktPmxheW91dERlbHRh
KCkpOworCiAgICAgcmV0dXJuIGJveDsKIH0KIApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyT2JqZWN0LmggYi9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3QuaAppbmRl
eCAwNDM1ZDY1Li45OWIyMzA5IDEwMDY0NAotLS0gYS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJP
YmplY3QuaAorKysgYi9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3QuaApAQCAtNjA3LDcg
KzYwNyw4IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIGludCBoZWlnaHQoKSBjb25zdCB7IHJldHVy
biAwOyB9CiAKICAgICB2aXJ0dWFsIEludFJlY3QgYm9yZGVyQm94KCkgY29uc3QgeyByZXR1cm4g
SW50UmVjdCgwLCAwLCB3aWR0aCgpLCBoZWlnaHQoKSk7IH0KLSAgICBJbnRSZWN0IGFic29sdXRl
T3V0bGluZUJveCgpIGNvbnN0OworICAgIC8vIEJvdW5kcyBvZiB0aGUgb3V0bGluZSBib3ggaW4g
YWJzb2x1dGUgY29vcmRzLiBSZXNwZWN0cyB0cmFuc2Zvcm1zCisgICAgSW50UmVjdCBhYnNvbHV0
ZU91dGxpbmVCb3VuZHMoKSBjb25zdDsKIAogICAgIC8vIFRoZSBoZWlnaHQgb2YgYSBibG9jayB3
aGVuIHlvdSBpbmNsdWRlIG5vcm1hbCBmbG93IG92ZXJmbG93IHNwaWxsYWdlIG91dCBvZiB0aGUg
Ym90dG9tCiAgICAgLy8gb2YgdGhlIGJsb2NrIChlLmcuLCBhIDxkaXYgc3R5bGU9ImhlaWdodDoy
NXB4Ij4gdGhhdCBoYXMgYSAxMDBweCB0YWxsIGltYWdlIGluc2lkZQpkaWZmIC0tZ2l0IGEvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyUGF0aC5jcHAgYi9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJQ
YXRoLmNwcAppbmRleCBmYTgzNjA4Li4wNjdlNGY2IDEwMDY0NAotLS0gYS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJQYXRoLmNwcAorKysgYi9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJQYXRoLmNw
cApAQCAtMTI3LDcgKzEyNyw3IEBAIHZvaWQgUmVuZGVyUGF0aDo6bGF5b3V0KCkKICAgICBib29s
IGNoZWNrRm9yUmVwYWludCA9IGNoZWNrRm9yUmVwYWludER1cmluZ0xheW91dCgpICYmIHNlbGZO
ZWVkc0xheW91dCgpOwogICAgIGlmIChjaGVja0ZvclJlcGFpbnQpIHsKICAgICAgICAgb2xkQm91
bmRzID0gbV9hYnNvbHV0ZUJvdW5kczsKLSAgICAgICAgb2xkT3V0bGluZUJveCA9IGFic29sdXRl
T3V0bGluZUJveCgpOworICAgICAgICBvbGRPdXRsaW5lQm94ID0gYWJzb2x1dGVPdXRsaW5lQm91
bmRzKCk7CiAgICAgfQogICAgICAgICAKICAgICBjYWxjdWxhdGVMb2NhbFRyYW5zZm9ybSgpOwpk
aWZmIC0tZ2l0IGEvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyUmVwbGFjZWQuY3BwIGIvV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyUmVwbGFjZWQuY3BwCmluZGV4IGVhZDk0YjIuLjBmYWYyYWEgMTAw
NjQ0Ci0tLSBhL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclJlcGxhY2VkLmNwcAorKysgYi9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJSZXBsYWNlZC5jcHAKQEAgLTgwLDcgKzgwLDcgQEAgdm9pZCBS
ZW5kZXJSZXBsYWNlZDo6bGF5b3V0KCkKICAgICBib29sIGNoZWNrRm9yUmVwYWludCA9IGNoZWNr
Rm9yUmVwYWludER1cmluZ0xheW91dCgpOwogICAgIGlmIChjaGVja0ZvclJlcGFpbnQpIHsKICAg
ICAgICAgb2xkQm91bmRzID0gYWJzb2x1dGVDbGlwcGVkT3ZlcmZsb3dSZWN0KCk7Ci0gICAgICAg
IG9sZE91dGxpbmVCb3ggPSBhYnNvbHV0ZU91dGxpbmVCb3goKTsKKyAgICAgICAgb2xkT3V0bGlu
ZUJveCA9IGFic29sdXRlT3V0bGluZUJvdW5kcygpOwogICAgIH0KICAgICAKICAgICBtX2hlaWdo
dCA9IG1pbmltdW1SZXBsYWNlZEhlaWdodCgpOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyU1ZHQ29udGFpbmVyLmNwcCBiL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclNWR0Nv
bnRhaW5lci5jcHAKaW5kZXggYTcyY2QxMi4uYWE0ZjQ5NiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyU1ZHQ29udGFpbmVyLmNwcAorKysgYi9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJTVkdDb250YWluZXIuY3BwCkBAIC0yMzcsNyArMjM3LDcgQEAgdm9pZCBSZW5kZXJTVkdD
b250YWluZXI6OmxheW91dCgpCiAgICAgYm9vbCBjaGVja0ZvclJlcGFpbnQgPSBjaGVja0ZvclJl
cGFpbnREdXJpbmdMYXlvdXQoKSAmJiBzZWxmV2lsbFBhaW50KCk7CiAgICAgaWYgKGNoZWNrRm9y
UmVwYWludCkgewogICAgICAgICBvbGRCb3VuZHMgPSBtX2Fic29sdXRlQm91bmRzOwotICAgICAg
ICBvbGRPdXRsaW5lQm94ID0gYWJzb2x1dGVPdXRsaW5lQm94KCk7CisgICAgICAgIG9sZE91dGxp
bmVCb3ggPSBhYnNvbHV0ZU91dGxpbmVCb3VuZHMoKTsKICAgICB9CiAgICAgCiAgICAgY2FsY3Vs
YXRlTG9jYWxUcmFuc2Zvcm0oKTsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
clNWR0ltYWdlLmNwcCBiL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclNWR0ltYWdlLmNwcAppbmRl
eCA3Yzc1NDE2Li41MmFkOWYxIDEwMDY0NAotLS0gYS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJT
VkdJbWFnZS5jcHAKKysrIGIvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyU1ZHSW1hZ2UuY3BwCkBA
IC0xNDEsNyArMTQxLDcgQEAgdm9pZCBSZW5kZXJTVkdJbWFnZTo6bGF5b3V0KCkKICAgICBib29s
IGNoZWNrRm9yUmVwYWludCA9IGNoZWNrRm9yUmVwYWludER1cmluZ0xheW91dCgpOwogICAgIGlm
IChjaGVja0ZvclJlcGFpbnQpIHsKICAgICAgICAgb2xkQm91bmRzID0gYWJzb2x1dGVDbGlwcGVk
T3ZlcmZsb3dSZWN0KCk7Ci0gICAgICAgIG9sZE91dGxpbmVCb3ggPSBhYnNvbHV0ZU91dGxpbmVC
b3goKTsKKyAgICAgICAgb2xkT3V0bGluZUJveCA9IGFic29sdXRlT3V0bGluZUJvdW5kcygpOwog
ICAgIH0KICAgICAKICAgICBjYWxjdWxhdGVMb2NhbFRyYW5zZm9ybSgpOwpkaWZmIC0tZ2l0IGEv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyU1ZHUm9vdC5jcHAgYi9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJTVkdSb290LmNwcAppbmRleCA1MzEzNzZkLi44MzNlYzMxIDEwMDY0NAotLS0gYS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJTVkdSb290LmNwcAorKysgYi9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJTVkdSb290LmNwcApAQCAtOTUsNyArOTUsNyBAQCB2b2lkIFJlbmRlclNWR1Jvb3Q6Omxh
eW91dCgpCiAgICAgSW50UmVjdCBvbGRPdXRsaW5lQm94OwogICAgIGJvb2wgY2hlY2tGb3JSZXBh
aW50ID0gY2hlY2tGb3JSZXBhaW50RHVyaW5nTGF5b3V0KCkgJiYgc2VsZk5lZWRzTGF5b3V0KCk7
CiAgICAgaWYgKGNoZWNrRm9yUmVwYWludCkKLSAgICAgICAgb2xkT3V0bGluZUJveCA9IGFic29s
dXRlT3V0bGluZUJveCgpOworICAgICAgICBvbGRPdXRsaW5lQm94ID0gYWJzb2x1dGVPdXRsaW5l
Qm91bmRzKCk7CiAKICAgICBjYWxjV2lkdGgoKTsKICAgICBjYWxjSGVpZ2h0KCk7CmRpZmYgLS1n
aXQgYS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJTVkdUZXh0LmNwcCBiL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlclNWR1RleHQuY3BwCmluZGV4IGEwMTNhNjcuLjBkMjNiY2IgMTAwNjQ0Ci0tLSBh
L1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclNWR1RleHQuY3BwCisrKyBiL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlclNWR1RleHQuY3BwCkBAIC04OSw3ICs4OSw3IEBAIHZvaWQgUmVuZGVyU1ZHVGV4
dDo6bGF5b3V0KCkKICAgICBib29sIGNoZWNrRm9yUmVwYWludCA9IGNoZWNrRm9yUmVwYWludER1
cmluZ0xheW91dCgpOwogICAgIGlmIChjaGVja0ZvclJlcGFpbnQpIHsKICAgICAgICAgb2xkQm91
bmRzID0gbV9hYnNvbHV0ZUJvdW5kczsKLSAgICAgICAgb2xkT3V0bGluZUJveCA9IGFic29sdXRl
T3V0bGluZUJveCgpOworICAgICAgICBvbGRPdXRsaW5lQm94ID0gYWJzb2x1dGVPdXRsaW5lQm91
bmRzKCk7CiAgICAgfQogCiAgICAgLy8gQmVzdCBndWVzcyBmb3IgYSByZWxhdGl2ZSBzdGFydGlu
ZyBwb2ludApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyU1ZHVmlld3BvcnRD
b250YWluZXIuY3BwIGIvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyU1ZHVmlld3BvcnRDb250YWlu
ZXIuY3BwCmluZGV4IGI2ZDUyN2IuLjkxYzdiYmEgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlclNWR1ZpZXdwb3J0Q29udGFpbmVyLmNwcAorKysgYi9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJTVkdWaWV3cG9ydENvbnRhaW5lci5jcHAKQEAgLTU3LDcgKzU3LDcgQEAgdm9pZCBS
ZW5kZXJTVkdWaWV3cG9ydENvbnRhaW5lcjo6bGF5b3V0KCkKICAgICBJbnRSZWN0IG9sZE91dGxp
bmVCb3g7CiAgICAgYm9vbCBjaGVja0ZvclJlcGFpbnQgPSBjaGVja0ZvclJlcGFpbnREdXJpbmdM
YXlvdXQoKSAmJiBzZWxmTmVlZHNMYXlvdXQoKTsKICAgICBpZiAoY2hlY2tGb3JSZXBhaW50KQot
ICAgICAgICBvbGRPdXRsaW5lQm94ID0gYWJzb2x1dGVPdXRsaW5lQm94KCk7CisgICAgICAgIG9s
ZE91dGxpbmVCb3ggPSBhYnNvbHV0ZU91dGxpbmVCb3VuZHMoKTsKIAogICAgIGNhbGNCb3VuZHMo
KTsgICAgCiAgICAgCmRpZmYgLS1naXQgYS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUYWJsZS5j
cHAgYi9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUYWJsZS5jcHAKaW5kZXggZjE1MDhlNC4uNDU2
MWQ1NyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGFibGUuY3BwCisrKyBi
L1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRhYmxlLmNwcApAQCAtMjYyLDcgKzI2Miw3IEBAIHZv
aWQgUmVuZGVyVGFibGU6OmxheW91dCgpCiAgICAgYm9vbCBjaGVja0ZvclJlcGFpbnQgPSBjaGVj
a0ZvclJlcGFpbnREdXJpbmdMYXlvdXQoKTsKICAgICBpZiAoY2hlY2tGb3JSZXBhaW50KSB7CiAg
ICAgICAgIG9sZEJvdW5kcyA9IGFic29sdXRlQ2xpcHBlZE92ZXJmbG93UmVjdCgpOwotICAgICAg
ICBvbGRPdXRsaW5lQm94ID0gYWJzb2x1dGVPdXRsaW5lQm94KCk7CisgICAgICAgIG9sZE91dGxp
bmVCb3ggPSBhYnNvbHV0ZU91dGxpbmVCb3VuZHMoKTsKICAgICB9CiAgICAgCiAgICAgTGF5b3V0
U3RhdGVNYWludGFpbmVyIHN0YXRlUHVzaGVyKHZpZXcoKSwgdGhpcywgSW50U2l6ZShtX3gsIG1f
eSkpOwo=
</data>
<flag name="review"
          id="11559"
          type_id="1"
          status="+"
          setter="mitz"
    />
          </attachment>
      

    </bug>

</bugzilla>