<?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>20892</bug_id>
          
          <creation_ts>2008-09-16 16:20:19 -0700</creation_ts>
          <short_desc>Transition starts running when it shouldn&apos;t</short_desc>
          <delta_ts>2008-09-19 17:54:08 -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>CSS</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="Chris Marrin">cmarrin</reporter>
          <assigned_to name="Chris Marrin">cmarrin</assigned_to>
          <cc>dino</cc>
    
    <cc>simon.fraser</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>91450</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Marrin">cmarrin</who>
    <bug_when>2008-09-16 16:20:19 -0700</bug_when>
    <thetext>Run the attached test case and notice that it fails. This test has an animation and transition on the same property (-webkit-transform). The transition is never started, it&apos;s property is never changed. But when the animation starts, the AnimationController thinks the transition should start, because the animation starts changing the property.

The fix is to have the animation remember the style just before it started and use that to test the transition against. Patch is attached.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>91451</commentid>
    <comment_count>1</comment_count>
      <attachid>23491</attachid>
    <who name="Chris Marrin">cmarrin</who>
    <bug_when>2008-09-16 16:21:12 -0700</bug_when>
    <thetext>Created attachment 23491
test case showing bug</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>91452</commentid>
    <comment_count>2</comment_count>
      <attachid>23492</attachid>
    <who name="Chris Marrin">cmarrin</who>
    <bug_when>2008-09-16 16:26:30 -0700</bug_when>
    <thetext>Created attachment 23492
Patch, including LayoutTest file</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>91833</commentid>
    <comment_count>3</comment_count>
      <attachid>23492</attachid>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2008-09-19 17:03:29 -0700</bug_when>
    <thetext>Comment on attachment 23492
Patch, including LayoutTest file

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>91834</commentid>
    <comment_count>4</comment_count>
    <who name="Chris Marrin">cmarrin</who>
    <bug_when>2008-09-19 17:04:23 -0700</bug_when>
    <thetext>The fix is basically to save the unanimated style when an animation is started, in that animation. Then, when starting a transition, I check to see if there is a current animation on the same prop. If so, I use the unanimated style as the fromStyle rather than the current style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>91847</commentid>
    <comment_count>5</comment_count>
    <who name="Dean Jackson">dino</who>
    <bug_when>2008-09-19 17:54:08 -0700</bug_when>
    <thetext>Committed r36687
	M	WebCore/ChangeLog
	M	WebCore/page/animation/ImplicitAnimation.h
	M	WebCore/page/animation/CompositeAnimation.cpp
	M	WebCore/page/animation/KeyframeAnimation.cpp
	M	WebCore/page/animation/CompositeAnimation.h
	M	WebCore/page/animation/KeyframeAnimation.h
	M	WebCore/page/animation/ImplicitAnimation.cpp
	M	LayoutTests/ChangeLog
	A	LayoutTests/animations/transition-and-animation-1-expected.txt
	A	LayoutTests/animations/transition-and-animation-1.html

</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>23491</attachid>
            <date>2008-09-16 16:21:12 -0700</date>
            <delta_ts>2008-09-16 16:21:12 -0700</delta_ts>
            <desc>test case showing bug</desc>
            <filename>transition-and-animation-1.html</filename>
            <type>text/html</type>
            <size>2190</size>
            <attacher name="Chris Marrin">cmarrin</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFs
Ly9FTiIKICAgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cgo8aHRtbCBs
YW5nPSJlbiI+CjxoZWFkPgogIDxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVu
dD0idGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04Ij4KICA8dGl0bGU+VHJhbnNpdGlvbi9BbmltYXRp
b24gVGVzdCAjMTwvdGl0bGU+CiAgPHN0eWxlIHR5cGU9InRleHQvY3NzIiBtZWRpYT0ic2NyZWVu
Ij4KICAgICNib3ggewogICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgICBsZWZ0OiAw
OwogICAgICAgIHRvcDogMTAwcHg7CiAgICAgICAgaGVpZ2h0OiAxMDBweDsKICAgICAgICB3aWR0
aDogMTAwcHg7CiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogYmx1ZTsKICAgICAgICAtd2Via2l0
LWFuaW1hdGlvbi1kdXJhdGlvbjogMC41czsKICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1p
bmctZnVuY3Rpb246IGxpbmVhcjsKICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiAiYW5p
bSI7CiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiAtd2Via2l0LXRyYW5zZm9y
bTsKICAgICAgICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDEwczsKICAgIH0KICAgIEAt
d2Via2l0LWtleWZyYW1lcyAiYW5pbSIgewogICAgICAgIGZyb20geyAtd2Via2l0LXRyYW5zZm9y
bTogdHJhbnNsYXRlWCgyMDBweCk7IH0KICAgICAgICB0byAgIHsgLXdlYmtpdC10cmFuc2Zvcm06
IHRyYW5zbGF0ZVgoMzAwcHgpOyB9CiAgICB9CiAgICA8L3N0eWxlPgogICAgPHNjcmlwdCB0eXBl
PSJ0ZXh0L2phdmFzY3JpcHQiIGNoYXJzZXQ9InV0Zi04Ij4KICAgIGlmICh3aW5kb3cubGF5b3V0
VGVzdENvbnRyb2xsZXIpIHsKICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0
KCk7CiAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIud2FpdFVudGlsRG9uZSgpOwogICAgfQog
ICAgCiAgICByZXN1bHQgPSAiUEFTUyI7CiAgICBjb25zdCBkZWZhdWx0VG9sZXJhbmNlID0gMC4y
OwogICAgCiAgICBmdW5jdGlvbiBpc0VxdWFsKGFjdHVhbCwgZGVzaXJlZCwgdG9sZXJhbmNlKQog
ICAgewogICAgICAgIGlmICh0b2xlcmFuY2UgPT0gdW5kZWZpbmVkIHx8IHRvbGVyYW5jZSA9PSAw
KQogICAgICAgICAgICB0b2xlcmFuY2UgPSBkZWZhdWx0VG9sZXJhbmNlOwogICAgICAgIHZhciBk
aWZmID0gTWF0aC5hYnMoYWN0dWFsIC0gZGVzaXJlZCk7CiAgICAgICAgcmV0dXJuIGRpZmYgPCB0
b2xlcmFuY2U7CiAgICB9CiAgICAKICAgIGZ1bmN0aW9uIHNuYXBzaG90KHdoaWNoKQogICAgewog
ICAgICAgIHZhciBtID0gd2luZG93LmdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoJ2JveCcpKS53ZWJraXRUcmFuc2Zvcm07CiAgICAgICAgaWYgKG0gIT0gIm5vbmUiKQog
ICAgICAgICAgICByZXN1bHQgPSAiRkFJTCh3YXM6IittKyIsIGV4cGVjdGVkOm5vbmUpIjsKICAg
IH0KCiAgICBmdW5jdGlvbiBzdGFydCgpCiAgICB7CiAgICAgICAgc2V0VGltZW91dCgic25hcHNo
b3QoKSIsIDU1MCk7CiAgICAgICAgCiAgICAgICAgd2luZG93LnNldFRpbWVvdXQoZnVuY3Rpb24o
KSB7CiAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdyZXN1bHQnKS5pbm5lckhU
TUwgPSByZXN1bHQ7CiAgICAgICAgICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIp
CiAgICAgICAgICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5ub3RpZnlEb25lKCk7CiAgICAg
ICAgfSwgNjAwKTsKICAgIH0KICAgIAogICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignd2Vi
a2l0QW5pbWF0aW9uU3RhcnQnLCBzdGFydCwgZmFsc2UpOwogICAgCiAgPC9zY3JpcHQ+CjwvaGVh
ZD4KPGJvZHk+ClRoaXMgdGVzdCBoYXMgYSB0cmFuc2l0aW9uIGFuZCBhbmltYXRpb24gb24gdGhl
IHNhbWUgcHJvcGVydHkgKC13ZWJraXQtdHJhbnNmb3JtKS4gQnV0IHRoZSB0cmFuc2l0aW9uIGlz
IG5ldmVyIHRyaWdnZXJlZCwKc28gbm90aGluZyBzaG91bGQgYmUgbW92aW5nIHdoZW4gdGhlIGFu
aW1hdGlvbiBmaW5pc2hlcy4KPGRpdiBpZD0iYm94Ij4KPC9kaXY+CjxkaXYgaWQ9InJlc3VsdCI+
CjwvZGl2Pgo8L2JvZHk+CjwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>23492</attachid>
            <date>2008-09-16 16:26:30 -0700</date>
            <delta_ts>2008-09-19 17:03:29 -0700</delta_ts>
            <desc>Patch, including LayoutTest file</desc>
            <filename>20892.patch</filename>
            <type>text/plain</type>
            <size>13509</size>
            <attacher name="Chris Marrin">cmarrin</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiAzNjUyNCkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjcgQEAKKzIwMDgtMDktMTYgIENocmlzIE1hcnJpbiAgPGNtYXJyaW5AYXBwbGUu
Y29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRy
YW5zaXRpb24gc3RhcnRzIHJ1bm5pbmcgd2hlbiBpdCBzaG91bGRuJ3QKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwODkyCisKKyAgICAgICAgVGVzdDog
YW5pbWF0aW9ucy90cmFuc2l0aW9uLWFuZC1hbmltYXRpb24tMS5odG1sCisKKyAgICAgICAgKiBw
YWdlL2FuaW1hdGlvbi9Db21wb3NpdGVBbmltYXRpb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6
Q29tcG9zaXRlQW5pbWF0aW9uOjp1cGRhdGVUcmFuc2l0aW9ucyk6CisgICAgICAgIChXZWJDb3Jl
OjpDb21wb3NpdGVBbmltYXRpb246OnVwZGF0ZUtleWZyYW1lQW5pbWF0aW9ucyk6CisgICAgICAg
IChXZWJDb3JlOjpDb21wb3NpdGVBbmltYXRpb246OmFuaW1hdGUpOgorICAgICAgICAoV2ViQ29y
ZTo6Q29tcG9zaXRlQW5pbWF0aW9uOjpnZXRBbmltYXRpb25Gb3JQcm9wZXJ0eSk6CisgICAgICAg
ICogcGFnZS9hbmltYXRpb24vQ29tcG9zaXRlQW5pbWF0aW9uLmg6CisgICAgICAgICogcGFnZS9h
bmltYXRpb24vSW1wbGljaXRBbmltYXRpb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6SW1wbGlj
aXRBbmltYXRpb246OnJlc2V0KToKKyAgICAgICAgKiBwYWdlL2FuaW1hdGlvbi9JbXBsaWNpdEFu
aW1hdGlvbi5oOgorICAgICAgICAqIHBhZ2UvYW5pbWF0aW9uL0tleWZyYW1lQW5pbWF0aW9uLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OktleWZyYW1lQW5pbWF0aW9uOjpoYXNBbmltYXRpb25Gb3JQ
cm9wZXJ0eSk6CisgICAgICAgICogcGFnZS9hbmltYXRpb24vS2V5ZnJhbWVBbmltYXRpb24uaDoK
KyAgICAgICAgKFdlYkNvcmU6OktleWZyYW1lQW5pbWF0aW9uOjpLZXlmcmFtZUFuaW1hdGlvbik6
CisgICAgICAgIChXZWJDb3JlOjpLZXlmcmFtZUFuaW1hdGlvbjo6dW5hbmltYXRlZFN0eWxlKToK
KwogMjAwOC0wOS0xNiAgRGFuIEJlcm5zdGVpbiAgPG1pdHpAYXBwbGUuY29tPgogCiAgICAgICAg
IFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgpJbmRleDogV2ViQ29yZS9wYWdlL2FuaW1hdGlvbi9D
b21wb3NpdGVBbmltYXRpb24uY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGFnZS9hbmltYXRp
b24vQ29tcG9zaXRlQW5pbWF0aW9uLmNwcAkocmV2aXNpb24gMzY1MjIpCisrKyBXZWJDb3JlL3Bh
Z2UvYW5pbWF0aW9uL0NvbXBvc2l0ZUFuaW1hdGlvbi5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTc4
LDYgKzc4LDExIEBAIHZvaWQgQ29tcG9zaXRlQW5pbWF0aW9uOjp1cGRhdGVUcmFuc2l0aW8KICAg
ICAgICAgICAgIC8vIEltcGxpY2l0QW5pbWF0aW9ucyBhcmUgYWx3YXlzIGhhc2hlZCBieSBhY3R1
YWwgcHJvcGVydGllcywgbmV2ZXIgY0FuaW1hdGVBbGwKICAgICAgICAgICAgIEFTU0VSVChwcm9w
ID4gZmlyc3RDU1NQcm9wZXJ0eSAmJiBwcm9wIDwgKGZpcnN0Q1NTUHJvcGVydHkgKyBudW1DU1NQ
cm9wZXJ0aWVzKSk7CiAKKyAgICAgICAgICAgIC8vIElmIHRoZXJlIGlzIGEgcnVubmluZyBhbmlt
YXRpb24gZm9yIHRoaXMgcHJvcGVydHksIHRoZSB0cmFuc2l0aW9uIGlzIG92ZXJyaWRkZW4KKyAg
ICAgICAgICAgIC8vIGFuZCB3ZSBoYXZlIHRvIHVzZSB0aGUgdW5hbmltYXRlZFN0eWxlIGZyb20g
dGhlIGFuaW1hdGlvbi4gV2UgZG8gdGhlIHRlc3QKKyAgICAgICAgICAgIC8vIGFnYWluc3QgdGhl
IHVuYW5pbWF0ZWQgc3R5bGUgaGVyZSwgYnV0IHdlICJvdmVycmlkZSIgdGhlIHRyYW5zaXRpb24g
bGF0ZXIuCisgICAgICAgICAgICBjb25zdCBLZXlmcmFtZUFuaW1hdGlvbioga2ZBbmltID0gZ2V0
QW5pbWF0aW9uRm9yUHJvcGVydHkocHJvcCk7CisKICAgICAgICAgICAgIC8vIFNlZSBpZiB0aGVy
ZSBpcyBhIGN1cnJlbnQgdHJhbnNpdGlvbiBmb3IgdGhpcyBwcm9wCiAgICAgICAgICAgICBJbXBs
aWNpdEFuaW1hdGlvbiogaW1wbEFuaW0gPSBtX3RyYW5zaXRpb25zLmdldChwcm9wKTsKICAgICAg
ICAgICAgIGJvb2wgZXF1YWwgPSB0cnVlOwpAQCAtOTIsNyArOTcsNyBAQCB2b2lkIENvbXBvc2l0
ZUFuaW1hdGlvbjo6dXBkYXRlVHJhbnNpdGlvCiAgICAgICAgICAgICAgICAgfQogICAgICAgICAg
ICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAvLyBTZWUgaWYgd2UgbmVlZCB0byBzdGFydCBh
IG5ldyB0cmFuc2l0aW9uCi0gICAgICAgICAgICAgICAgZXF1YWwgPSBBbmltYXRpb25CYXNlOjpw
cm9wZXJ0aWVzRXF1YWwocHJvcCwgY3VycmVudFN0eWxlLCB0YXJnZXRTdHlsZSk7CisgICAgICAg
ICAgICAgICAgZXF1YWwgPSBBbmltYXRpb25CYXNlOjpwcm9wZXJ0aWVzRXF1YWwocHJvcCwga2ZB
bmltID8ga2ZBbmltLT51bmFuaW1hdGVkU3R5bGUoKSA6IGN1cnJlbnRTdHlsZSwgdGFyZ2V0U3R5
bGUpOwogICAgICAgICAgICAgfQogCiAgICAgICAgICAgICBpZiAoIWVxdWFsKSB7CkBAIC0xNDYs
NyArMTUxLDcgQEAgdm9pZCBDb21wb3NpdGVBbmltYXRpb246OnVwZGF0ZUtleWZyYW1lQQogICAg
ICAgICAgICAgICAgIGtmQW5pbS0+c2V0SW5kZXgoaSk7CiAgICAgICAgICAgICB9IGVsc2UgaWYg
KChhbmltLT5kdXJhdGlvbigpIHx8IGFuaW0tPmRlbGF5KCkpICYmIGFuaW0tPml0ZXJhdGlvbkNv
dW50KCkKICAgICAgICAgICAgICAgICAgICAgICAgICYmIGFuaW0tPmtleWZyYW1lTGlzdCgpICYm
ICFhbmltLT5rZXlmcmFtZUxpc3QoKS0+aXNFbXB0eSgpKSB7Ci0gICAgICAgICAgICAgICAga2ZB
bmltID0gbmV3IEtleWZyYW1lQW5pbWF0aW9uKGNvbnN0X2Nhc3Q8QW5pbWF0aW9uKj4oYW5pbSks
IHJlbmRlcmVyLCBpLCB0aGlzKTsKKyAgICAgICAgICAgICAgICBrZkFuaW0gPSBuZXcgS2V5ZnJh
bWVBbmltYXRpb24oY29uc3RfY2FzdDxBbmltYXRpb24qPihhbmltKSwgcmVuZGVyZXIsIGksIHRo
aXMsIGN1cnJlbnRTdHlsZSA/IGN1cnJlbnRTdHlsZSA6IHRhcmdldFN0eWxlKTsKICAgICAgICAg
ICAgICAgICBtX2tleWZyYW1lQW5pbWF0aW9ucy5zZXQoa2ZBbmltLT5uYW1lKCkuaW1wbCgpLCBr
ZkFuaW0pOwogICAgICAgICAgICAgfQogICAgICAgICB9CkBAIC0xNzgsNiArMTgzLDkgQEAgUmVu
ZGVyU3R5bGUqIENvbXBvc2l0ZUFuaW1hdGlvbjo6YW5pbWF0ZQogewogICAgIFJlbmRlclN0eWxl
KiByZXN1bHRTdHlsZSA9IDA7CiAKKyAgICAvLyBVcGRhdGUgYW5pbWF0aW9ucyBmaXJzdCBzbyB3
ZSBjYW4gc2VlIGlmIGFueSB0cmFuc2l0aW9ucyBhcmUgb3ZlcnJpZGRlbgorICAgIHVwZGF0ZUtl
eWZyYW1lQW5pbWF0aW9ucyhyZW5kZXJlciwgY3VycmVudFN0eWxlLCB0YXJnZXRTdHlsZSk7CisK
ICAgICAvLyBXZSBkb24ndCBkbyBhbnkgdHJhbnNpdGlvbnMgaWYgd2UgZG9uJ3QgaGF2ZSBhIGN1
cnJlbnRTdHlsZSAob24gc3RhcnR1cCkKICAgICB1cGRhdGVUcmFuc2l0aW9ucyhyZW5kZXJlciwg
Y3VycmVudFN0eWxlLCB0YXJnZXRTdHlsZSk7CiAKQEAgLTE5MSw4ICsxOTksNiBAQCBSZW5kZXJT
dHlsZSogQ29tcG9zaXRlQW5pbWF0aW9uOjphbmltYXRlCiAgICAgICAgIH0KICAgICB9CiAKLSAg
ICB1cGRhdGVLZXlmcmFtZUFuaW1hdGlvbnMocmVuZGVyZXIsIGN1cnJlbnRTdHlsZSwgdGFyZ2V0
U3R5bGUpOwotCiAgICAgLy8gTm93IHRoYXQgd2UgaGF2ZSBhbmltYXRpb24gb2JqZWN0cyByZWFk
eSwgbGV0IHRoZW0ga25vdyBhYm91dCB0aGUgbmV3IGdvYWwgc3RhdGUuICBXZSB3YW50IHRoZW0K
ICAgICAvLyB0byBmaWxsIGluIGEgUmVuZGVyU3R5bGUqJiBvbmx5IGlmIG5lZWRlZC4KICAgICBp
ZiAodGFyZ2V0U3R5bGUtPmhhc0FuaW1hdGlvbnMoKSkgewpAQCAtMjQ2LDYgKzI1MiwyMiBAQCBi
b29sIENvbXBvc2l0ZUFuaW1hdGlvbjo6YW5pbWF0aW5nKCkKICAgICByZXR1cm4gZmFsc2U7CiB9
CiAKK2NvbnN0IEtleWZyYW1lQW5pbWF0aW9uKiBDb21wb3NpdGVBbmltYXRpb246OmdldEFuaW1h
dGlvbkZvclByb3BlcnR5KGludCBwcm9wZXJ0eSkgY29uc3QKK3sKKyAgICBjb25zdCBLZXlmcmFt
ZUFuaW1hdGlvbiogcmV0dmFsID0gMDsKKyAgICAKKyAgICAvLyBXZSB3YW50IHRvIHNlbmQgYmFj
ayB0aGUgbGFzdCBhbmltYXRpb24gd2l0aCB0aGUgcHJvcGVydHkgaWYgdGhlcmUgYXJlIG11bHRp
cGxlcy4KKyAgICAvLyBTbyB3ZSBuZWVkIHRvIGl0ZXJhdGUgdGhyb3VnaCBhbGwgYW5pbWF0aW9u
cworICAgIEFuaW1hdGlvbk5hbWVNYXA6OmNvbnN0X2l0ZXJhdG9yIGFuaW1hdGlvbnNFbmQgPSBt
X2tleWZyYW1lQW5pbWF0aW9ucy5lbmQoKTsKKyAgICBmb3IgKEFuaW1hdGlvbk5hbWVNYXA6OmNv
bnN0X2l0ZXJhdG9yIGl0ID0gbV9rZXlmcmFtZUFuaW1hdGlvbnMuYmVnaW4oKTsgaXQgIT0gYW5p
bWF0aW9uc0VuZDsgKytpdCkgeworICAgICAgICBjb25zdCBLZXlmcmFtZUFuaW1hdGlvbiogYW5p
bSA9IGl0LT5zZWNvbmQ7CisgICAgICAgIGlmIChhbmltLT5oYXNBbmltYXRpb25Gb3JQcm9wZXJ0
eShwcm9wZXJ0eSkpCisgICAgICAgICAgICByZXR2YWwgPSBhbmltOworICAgIH0KKyAgICAKKyAg
ICByZXR1cm4gcmV0dmFsOworfQorCiB2b2lkIENvbXBvc2l0ZUFuaW1hdGlvbjo6cmVzZXRUcmFu
c2l0aW9ucyhSZW5kZXJPYmplY3QqIHJlbmRlcmVyKQogewogICAgIENTU1Byb3BlcnR5VHJhbnNp
dGlvbnNNYXA6OmNvbnN0X2l0ZXJhdG9yIGVuZCA9IG1fdHJhbnNpdGlvbnMuZW5kKCk7CkluZGV4
OiBXZWJDb3JlL3BhZ2UvYW5pbWF0aW9uL0NvbXBvc2l0ZUFuaW1hdGlvbi5oCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFdlYkNvcmUvcGFnZS9hbmltYXRpb24vQ29tcG9zaXRlQW5pbWF0aW9uLmgJKHJldmlzaW9u
IDM2NTIyKQorKysgV2ViQ29yZS9wYWdlL2FuaW1hdGlvbi9Db21wb3NpdGVBbmltYXRpb24uaAko
d29ya2luZyBjb3B5KQpAQCAtNTksOCArNTksOCBAQCBwdWJsaWM6CiAKICAgICB2b2lkIHNldEFu
aW1hdGluZyhib29sKTsKICAgICBib29sIGFuaW1hdGluZygpOwotCi0gICAgYm9vbCBoYXNBbmlt
YXRpb25Gb3JQcm9wZXJ0eShpbnQgcHJvcCkgY29uc3QgeyByZXR1cm4gbV90cmFuc2l0aW9ucy5j
b250YWlucyhwcm9wKTsgfQorICAgIAorICAgIGNvbnN0IEtleWZyYW1lQW5pbWF0aW9uKiBnZXRB
bmltYXRpb25Gb3JQcm9wZXJ0eShpbnQgcHJvcGVydHkpIGNvbnN0OwogCiAgICAgdm9pZCByZXNl
dFRyYW5zaXRpb25zKFJlbmRlck9iamVjdCopOwogICAgIHZvaWQgcmVzZXRBbmltYXRpb25zKFJl
bmRlck9iamVjdCopOwpJbmRleDogV2ViQ29yZS9wYWdlL2FuaW1hdGlvbi9JbXBsaWNpdEFuaW1h
dGlvbi5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wYWdlL2FuaW1hdGlvbi9JbXBsaWNpdEFu
aW1hdGlvbi5jcHAJKHJldmlzaW9uIDM2NTIyKQorKysgV2ViQ29yZS9wYWdlL2FuaW1hdGlvbi9J
bXBsaWNpdEFuaW1hdGlvbi5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTExNiwxNyArMTE2LDE3IEBA
IHZvaWQgSW1wbGljaXRBbmltYXRpb246OnJlc2V0KFJlbmRlck9iamUKICAgICBBU1NFUlQoKCFt
X3RvU3R5bGUgJiYgIXRvKSB8fCBtX3RvU3R5bGUgIT0gdG8pOwogICAgIEFTU0VSVCgoIW1fZnJv
bVN0eWxlICYmICFmcm9tKSB8fCBtX2Zyb21TdHlsZSAhPSBmcm9tKTsKICAgICBpZiAobV9mcm9t
U3R5bGUpCi0gICAgICAgIG1fZnJvbVN0eWxlLT5kZXJlZihyZW5kZXJlci0+cmVuZGVyQXJlbmEo
KSk7CisgICAgICAgIGNvbnN0X2Nhc3Q8UmVuZGVyU3R5bGUqPihtX2Zyb21TdHlsZSktPmRlcmVm
KHJlbmRlcmVyLT5yZW5kZXJBcmVuYSgpKTsKICAgICBpZiAobV90b1N0eWxlKQotICAgICAgICBt
X3RvU3R5bGUtPmRlcmVmKHJlbmRlcmVyLT5yZW5kZXJBcmVuYSgpKTsKKyAgICAgICAgY29uc3Rf
Y2FzdDxSZW5kZXJTdHlsZSo+KG1fdG9TdHlsZSktPmRlcmVmKHJlbmRlcmVyLT5yZW5kZXJBcmVu
YSgpKTsKIAogICAgIG1fZnJvbVN0eWxlID0gY29uc3RfY2FzdDxSZW5kZXJTdHlsZSo+KGZyb20p
OyAgIC8vIGl0IGlzIHJlYWQtb25seSwgb3RoZXIgdGhhbiB0aGUgcmVmCiAgICAgaWYgKG1fZnJv
bVN0eWxlKQotICAgICAgICBtX2Zyb21TdHlsZS0+cmVmKCk7CisgICAgICAgIGNvbnN0X2Nhc3Q8
UmVuZGVyU3R5bGUqPihtX2Zyb21TdHlsZSktPnJlZigpOwogCiAgICAgbV90b1N0eWxlID0gY29u
c3RfY2FzdDxSZW5kZXJTdHlsZSo+KHRvKTsgICAgICAgLy8gaXQgaXMgcmVhZC1vbmx5LCBvdGhl
ciB0aGFuIHRoZSByZWYKICAgICBpZiAobV90b1N0eWxlKQotICAgICAgICBtX3RvU3R5bGUtPnJl
ZigpOworICAgICAgICBjb25zdF9jYXN0PFJlbmRlclN0eWxlKj4obV90b1N0eWxlKS0+cmVmKCk7
CiAKICAgICAvLyBSZXN0YXJ0IHRoZSB0cmFuc2l0aW9uCiAgICAgaWYgKGZyb20gJiYgdG8pCklu
ZGV4OiBXZWJDb3JlL3BhZ2UvYW5pbWF0aW9uL0ltcGxpY2l0QW5pbWF0aW9uLmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gV2ViQ29yZS9wYWdlL2FuaW1hdGlvbi9JbXBsaWNpdEFuaW1hdGlvbi5oCShyZXZpc2lv
biAzNjUyMikKKysrIFdlYkNvcmUvcGFnZS9hbmltYXRpb24vSW1wbGljaXRBbmltYXRpb24uaAko
d29ya2luZyBjb3B5KQpAQCAtNzQsOCArNzQsOCBAQCBwcml2YXRlOgogICAgIGJvb2wgbV9vdmVy
cmlkZGVuOyAgICAgICAgICAvLyB0cnVlIHdoZW4gdGhlcmUgaXMgYSBrZXlmcmFtZSBhbmltYXRp
b24gdGhhdCBvdmVycmlkZXMgdGhlIHRyYW5zaXRpb25pbmcgcHJvcGVydHkKIAogICAgIC8vIFRo
ZSB0d28gc3R5bGVzIHRoYXQgd2UgYXJlIGJsZW5kaW5nLgotICAgIFJlbmRlclN0eWxlKiBtX2Zy
b21TdHlsZTsKLSAgICBSZW5kZXJTdHlsZSogbV90b1N0eWxlOworICAgIGNvbnN0IFJlbmRlclN0
eWxlKiBtX2Zyb21TdHlsZTsKKyAgICBjb25zdCBSZW5kZXJTdHlsZSogbV90b1N0eWxlOwogfTsK
IAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpJbmRleDogV2ViQ29yZS9wYWdlL2FuaW1hdGlvbi9L
ZXlmcmFtZUFuaW1hdGlvbi5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wYWdlL2FuaW1hdGlv
bi9LZXlmcmFtZUFuaW1hdGlvbi5jcHAJKHJldmlzaW9uIDM2NTIyKQorKysgV2ViQ29yZS9wYWdl
L2FuaW1hdGlvbi9LZXlmcmFtZUFuaW1hdGlvbi5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTExOSw2
ICsxMTksMTcgQEAgdm9pZCBLZXlmcmFtZUFuaW1hdGlvbjo6YW5pbWF0ZShDb21wb3NpdAogICAg
IH0KIH0KIAorYm9vbCBLZXlmcmFtZUFuaW1hdGlvbjo6aGFzQW5pbWF0aW9uRm9yUHJvcGVydHko
aW50IHByb3BlcnR5KSBjb25zdAoreworICAgIEhhc2hTZXQ8aW50Pjo6Y29uc3RfaXRlcmF0b3Ig
ZW5kID0gbV9rZXlmcmFtZXMtPmVuZFByb3BlcnRpZXMoKTsKKyAgICBmb3IgKEhhc2hTZXQ8aW50
Pjo6Y29uc3RfaXRlcmF0b3IgaXQgPSBtX2tleWZyYW1lcy0+YmVnaW5Qcm9wZXJ0aWVzKCk7IGl0
ICE9IGVuZDsgKytpdCkgeworICAgICAgICBpZiAoKml0ID09IHByb3BlcnR5KQorICAgICAgICAg
ICAgcmV0dXJuIHRydWU7CisgICAgfQorICAgIAorICAgIHJldHVybiBmYWxzZTsKK30KKwogdm9p
ZCBLZXlmcmFtZUFuaW1hdGlvbjo6ZW5kQW5pbWF0aW9uKGJvb2wpCiB7CiAgICAgLy8gUmVzdG9y
ZSB0aGUgb3JpZ2luYWwgKHVuYW5pbWF0ZWQpIHN0eWxlCkluZGV4OiBXZWJDb3JlL3BhZ2UvYW5p
bWF0aW9uL0tleWZyYW1lQW5pbWF0aW9uLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wYWdlL2Fu
aW1hdGlvbi9LZXlmcmFtZUFuaW1hdGlvbi5oCShyZXZpc2lvbiAzNjUyMikKKysrIFdlYkNvcmUv
cGFnZS9hbmltYXRpb24vS2V5ZnJhbWVBbmltYXRpb24uaAkod29ya2luZyBjb3B5KQpAQCAtMzks
MTQgKzM5LDIwIEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIC8vIGZvciBhIHNpbmdsZSBSZW5kZXJP
YmplY3QuCiBjbGFzcyBLZXlmcmFtZUFuaW1hdGlvbiA6IHB1YmxpYyBBbmltYXRpb25CYXNlIHsK
IHB1YmxpYzoKLSAgICBLZXlmcmFtZUFuaW1hdGlvbihjb25zdCBBbmltYXRpb24qIGFuaW1hdGlv
biwgUmVuZGVyT2JqZWN0KiByZW5kZXJlciwgaW50IGluZGV4LCBDb21wb3NpdGVBbmltYXRpb24q
IGNvbXBBbmltKQorICAgIEtleWZyYW1lQW5pbWF0aW9uKGNvbnN0IEFuaW1hdGlvbiogYW5pbWF0
aW9uLCBSZW5kZXJPYmplY3QqIHJlbmRlcmVyLCBpbnQgaW5kZXgsIENvbXBvc2l0ZUFuaW1hdGlv
biogY29tcEFuaW0sIGNvbnN0IFJlbmRlclN0eWxlKiB1bmFuaW1hdGVkU3R5bGUpCiAgICAgICAg
IDogQW5pbWF0aW9uQmFzZShhbmltYXRpb24sIHJlbmRlcmVyLCBjb21wQW5pbSkKICAgICAgICAg
LCBtX2tleWZyYW1lcyhhbmltYXRpb24tPmtleWZyYW1lTGlzdCgpKQogICAgICAgICAsIG1fbmFt
ZShhbmltYXRpb24tPm5hbWUoKSkKICAgICAgICAgLCBtX2luZGV4KGluZGV4KQorICAgICAgICAs
IG1fdW5hbmltYXRlZFN0eWxlKDApCiAgICAgewogICAgICAgICAvLyBTZXQgdGhlIHRyYW5zZm9y
bSBhbmltYXRpb24gbGlzdAogICAgICAgICB2YWxpZGF0ZVRyYW5zZm9ybUZ1bmN0aW9uTGlzdCgp
OworICAgICAgICAKKyAgICAgICAgaWYgKHVuYW5pbWF0ZWRTdHlsZSkgeworICAgICAgICAgICAg
Y29uc3RfY2FzdDxSZW5kZXJTdHlsZSo+KHVuYW5pbWF0ZWRTdHlsZSktPnJlZigpOworICAgICAg
ICAgICAgbV91bmFuaW1hdGVkU3R5bGUgPSB1bmFuaW1hdGVkU3R5bGU7CisgICAgICAgIH0KICAg
ICB9CiAKICAgICB2aXJ0dWFsIH5LZXlmcmFtZUFuaW1hdGlvbigpOwpAQCAtNTksNiArNjUsMTAg
QEAgcHVibGljOgogICAgIHZvaWQgc2V0SW5kZXgoaW50IGkpIHsgbV9pbmRleCA9IGk7IH0KIAog
ICAgIHZpcnR1YWwgYm9vbCBzaG91bGRGaXJlRXZlbnRzKCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsg
fQorICAgIAorICAgIGJvb2wgaGFzQW5pbWF0aW9uRm9yUHJvcGVydHkoaW50IHByb3BlcnR5KSBj
b25zdDsKKyAgICAKKyAgICBjb25zdCBSZW5kZXJTdHlsZSogdW5hbmltYXRlZFN0eWxlKCkgY29u
c3QgeyByZXR1cm4gbV91bmFuaW1hdGVkU3R5bGU7IH0KIAogcHJvdGVjdGVkOgogICAgIHZpcnR1
YWwgdm9pZCBvbkFuaW1hdGlvblN0YXJ0KGRvdWJsZSBlbGFwc2VkVGltZSk7CkBAIC04Miw2ICs5
Miw5IEBAIHByaXZhdGU6CiAgICAgQXRvbWljU3RyaW5nIG1fbmFtZTsKICAgICAvLyBUaGUgb3Jk
ZXIgaW4gd2hpY2ggdGhpcyBhbmltYXRpb24gYXBwZWFycyBpbiB0aGUgYW5pbWF0aW9uLW5hbWUg
c3R5bGUuCiAgICAgaW50IG1faW5kZXg7CisKKyAgICAvLyBUaGUgc3R5bGUganVzdCBiZWZvcmUg
d2Ugc3RhcnRlZCBhbmltYXRpb24KKyAgICBjb25zdCBSZW5kZXJTdHlsZSogbV91bmFuaW1hdGVk
U3R5bGU7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCkluZGV4OiBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCShyZXZpc2lvbiAz
NjUyNCkKKysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsx
LDEzIEBACisyMDA4LTA5LTE2ICBDaHJpcyBNYXJyaW4gIDxjbWFycmluQGFwcGxlLmNvbT4KKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUcmFuc2l0aW9u
IHN0YXJ0cyBydW5uaW5nIHdoZW4gaXQgc2hvdWxkbid0CisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDg5MgorCisgICAgICAgICogYW5pbWF0aW9ucy90
cmFuc2l0aW9uLWFuZC1hbmltYXRpb24tMS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAq
IGFuaW1hdGlvbnMvdHJhbnNpdGlvbi1hbmQtYW5pbWF0aW9uLTEuaHRtbDogQWRkZWQuCisKIDIw
MDgtMDktMTYgIE1hcmsgUm93ZSAgPG1yb3dlQGFwcGxlLmNvbT4KIAogICAgICAgICBSdWJiZXIt
c3RhbXBlZCBieSBTYW0gV2VpbmlnLgpJbmRleDogTGF5b3V0VGVzdHMvYW5pbWF0aW9ucy90cmFu
c2l0aW9uLWFuZC1hbmltYXRpb24tMS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvYW5pbWF0aW9ucy90cmFuc2l0aW9uLWFuZC1hbmltYXRpb24tMS1leHBlY3RlZC50eHQJ
KHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9hbmltYXRpb25zL3RyYW5zaXRpb24tYW5kLWFu
aW1hdGlvbi0xLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwyIEBACitUaGlz
IHRlc3QgaGFzIGEgdHJhbnNpdGlvbiBhbmQgYW5pbWF0aW9uIG9uIHRoZSBzYW1lIHByb3BlcnR5
ICgtd2Via2l0LXRyYW5zZm9ybSkuIEJ1dCB0aGUgdHJhbnNpdGlvbiBpcyBuZXZlciB0cmlnZ2Vy
ZWQsIHNvIG5vdGhpbmcgc2hvdWxkIGJlIG1vdmluZyB3aGVuIHRoZSBhbmltYXRpb24gZmluaXNo
ZXMuCitQQVNTCkluZGV4OiBMYXlvdXRUZXN0cy9hbmltYXRpb25zL3RyYW5zaXRpb24tYW5kLWFu
aW1hdGlvbi0xLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvYW5pbWF0aW9ucy90cmFu
c2l0aW9uLWFuZC1hbmltYXRpb24tMS5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMv
YW5pbWF0aW9ucy90cmFuc2l0aW9uLWFuZC1hbmltYXRpb24tMS5odG1sCShyZXZpc2lvbiAwKQpA
QCAtMCwwICsxLDc0IEBACis8IURPQ1RZUEUgaHRtbCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwg
NC4wMSBUcmFuc2l0aW9uYWwvL0VOIgorICAgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xv
b3NlLmR0ZCI+CisKKzxodG1sIGxhbmc9ImVuIj4KKzxoZWFkPgorICA8bWV0YSBodHRwLWVxdWl2
PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD11dGYtOCI+CisgIDx0
aXRsZT5UcmFuc2l0aW9uL0FuaW1hdGlvbiBUZXN0ICMxPC90aXRsZT4KKyAgPHN0eWxlIHR5cGU9
InRleHQvY3NzIiBtZWRpYT0ic2NyZWVuIj4KKyAgICAjYm94IHsKKyAgICAgICAgcG9zaXRpb246
IGFic29sdXRlOworICAgICAgICBsZWZ0OiAwOworICAgICAgICB0b3A6IDEwMHB4OworICAgICAg
ICBoZWlnaHQ6IDEwMHB4OworICAgICAgICB3aWR0aDogMTAwcHg7CisgICAgICAgIGJhY2tncm91
bmQtY29sb3I6IGJsdWU7CisgICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjVz
OworICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjsKKyAg
ICAgICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogImFuaW0iOworICAgICAgICAtd2Via2l0LXRy
YW5zaXRpb24tcHJvcGVydHk6IC13ZWJraXQtdHJhbnNmb3JtOworICAgICAgICAtd2Via2l0LXRy
YW5zaXRpb24tZHVyYXRpb246IDEwczsKKyAgICB9CisgICAgQC13ZWJraXQta2V5ZnJhbWVzICJh
bmltIiB7CisgICAgICAgIGZyb20geyAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMDBw
eCk7IH0KKyAgICAgICAgdG8gICB7IC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDMwMHB4
KTsgfQorICAgIH0KKyAgICA8L3N0eWxlPgorICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2Ny
aXB0IiBjaGFyc2V0PSJ1dGYtOCI+CisgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxl
cikgeworICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7CisgICAgICAg
IGxheW91dFRlc3RDb250cm9sbGVyLndhaXRVbnRpbERvbmUoKTsKKyAgICB9CisgICAgCisgICAg
cmVzdWx0ID0gIlBBU1MiOworICAgIGNvbnN0IGRlZmF1bHRUb2xlcmFuY2UgPSAwLjI7CisgICAg
CisgICAgZnVuY3Rpb24gaXNFcXVhbChhY3R1YWwsIGRlc2lyZWQsIHRvbGVyYW5jZSkKKyAgICB7
CisgICAgICAgIGlmICh0b2xlcmFuY2UgPT0gdW5kZWZpbmVkIHx8IHRvbGVyYW5jZSA9PSAwKQor
ICAgICAgICAgICAgdG9sZXJhbmNlID0gZGVmYXVsdFRvbGVyYW5jZTsKKyAgICAgICAgdmFyIGRp
ZmYgPSBNYXRoLmFicyhhY3R1YWwgLSBkZXNpcmVkKTsKKyAgICAgICAgcmV0dXJuIGRpZmYgPCB0
b2xlcmFuY2U7CisgICAgfQorICAgIAorICAgIGZ1bmN0aW9uIHNuYXBzaG90KHdoaWNoKQorICAg
IHsKKyAgICAgICAgdmFyIG0gPSB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgnYm94JykpLndlYmtpdFRyYW5zZm9ybTsKKyAgICAgICAgaWYgKG0gIT0gIm5v
bmUiKQorICAgICAgICAgICAgcmVzdWx0ID0gIkZBSUwod2FzOiIrbSsiLCBleHBlY3RlZDpub25l
KSI7CisgICAgfQorCisgICAgZnVuY3Rpb24gc3RhcnQoKQorICAgIHsKKyAgICAgICAgc2V0VGlt
ZW91dCgic25hcHNob3QoKSIsIDU1MCk7CisgICAgICAgIAorICAgICAgICB3aW5kb3cuc2V0VGlt
ZW91dChmdW5jdGlvbigpIHsKKyAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdy
ZXN1bHQnKS5pbm5lckhUTUwgPSByZXN1bHQ7CisgICAgICAgICAgICBpZiAod2luZG93LmxheW91
dFRlc3RDb250cm9sbGVyKQorICAgICAgICAgICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLm5v
dGlmeURvbmUoKTsKKyAgICAgICAgfSwgNjAwKTsKKyAgICB9CisgICAgCisgICAgZG9jdW1lbnQu
YWRkRXZlbnRMaXN0ZW5lcignd2Via2l0QW5pbWF0aW9uU3RhcnQnLCBzdGFydCwgZmFsc2UpOwor
ICAgIAorICA8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorVGhpcyB0ZXN0IGhhcyBhIHRyYW5z
aXRpb24gYW5kIGFuaW1hdGlvbiBvbiB0aGUgc2FtZSBwcm9wZXJ0eSAoLXdlYmtpdC10cmFuc2Zv
cm0pLiBCdXQgdGhlIHRyYW5zaXRpb24gaXMgbmV2ZXIgdHJpZ2dlcmVkLAorc28gbm90aGluZyBz
aG91bGQgYmUgbW92aW5nIHdoZW4gdGhlIGFuaW1hdGlvbiBmaW5pc2hlcy4KKzxkaXYgaWQ9ImJv
eCI+Cis8L2Rpdj4KKzxkaXYgaWQ9InJlc3VsdCI+Cis8L2Rpdj4KKzwvYm9keT4KKzwvaHRtbD4K
</data>
<flag name="review"
          id="10506"
          type_id="1"
          status="+"
          setter="hyatt"
    />
          </attachment>
      

    </bug>

</bugzilla>