<?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>101854</bug_id>
          
          <creation_ts>2012-11-10 21:12:56 -0800</creation_ts>
          <short_desc>BasicShapes &apos;circle&apos;, &apos;rectangle&apos;, &apos;ellipse&apos; should be animatable with themselves</short_desc>
          <delta_ts>2012-11-12 20:52:33 -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>CSS</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>95389</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Dirk Schulze">krit</reporter>
          <assigned_to name="Dirk Schulze">krit</assigned_to>
          <cc>eric</cc>
    
    <cc>kling</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>763774</commentid>
    <comment_count>0</comment_count>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2012-11-10 21:12:56 -0800</bug_when>
    <thetext>BasicShapes &apos;circle&apos;, &apos;rectangle&apos;, &apos;ellipse&apos; should be animatable with them selfs. A patch on this bug will just concentrate on these three functions. Animation between polygons will follow.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>763778</commentid>
    <comment_count>1</comment_count>
      <attachid>173485</attachid>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2012-11-10 21:27:47 -0800</bug_when>
    <thetext>Created attachment 173485
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>763779</commentid>
    <comment_count>2</comment_count>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2012-11-10 21:31:43 -0800</bug_when>
    <thetext>s/each self/themselves/ + s/them selfs/themselves/ in the patch locally.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>764486</commentid>
    <comment_count>3</comment_count>
      <attachid>173485</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2012-11-12 09:27:07 -0800</bug_when>
    <thetext>Comment on attachment 173485
Patch

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

r=me with some minor tweaks.

&gt; Source/WebCore/page/animation/CSSPropertyAnimation.cpp:131
&gt; +    // Other clip-path operations then BasicShapes can not be animated.

s/then/than/

&gt; Source/WebCore/rendering/style/BasicShapes.cpp:65
&gt; +    return result;

We should use &quot;return result.release();&quot; here.

&gt; Source/WebCore/rendering/style/BasicShapes.cpp:90
&gt; +    return result;

Ditto.

&gt; Source/WebCore/rendering/style/BasicShapes.cpp:116
&gt; +    return result;

Ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>765186</commentid>
    <comment_count>4</comment_count>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2012-11-12 20:52:33 -0800</bug_when>
    <thetext>Committed r134352: &lt;http://trac.webkit.org/changeset/134352&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>173485</attachid>
            <date>2012-11-10 21:27:47 -0800</date>
            <delta_ts>2012-11-12 09:27:07 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-101854-20121110212552.patch</filename>
            <type>text/plain</type>
            <size>18742</size>
            <attacher name="Dirk Schulze">krit</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM0MTY4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYmNiMjdkNDRhMTczMzA0
ODFjZmY2NzcyZTQ5ODAwZTFjNDRlZTYxNy4uZmIxNTAzYjJjMDc2NTJhOWVlN2VjYTYxNzExYWIw
MjQwNGRkNDY0NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQxIEBACisyMDEyLTExLTEwICBEaXJr
IFNjaHVsemUgIDxrcml0QHdlYmtpdC5vcmc+CisKKyAgICAgICAgQmFzaWNTaGFwZXMgJ2NpcmNs
ZScsICdyZWN0YW5nbGUnLCAnZWxsaXBzZScgc2hvdWxkIGJlIGFuaW1hdGFibGUgd2l0aCB0aGVt
IHNlbGZzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
MDE4NTQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBU
aGUgYmFzaWMgc2hhcGVzIEJhc2ljU2hhcGVDaXJjbGUsIEJhc2ljU2hhcGVFbGxpcHNlIGFuZCBC
YXNpY1NoYXBlUmVjdGFuZ2xlIHNob3VsZAorICAgICAgICBibGVuZCB3aXRoIGVhY2ggc2VsZi4g
VGhpcyBwYXRjaCBpbnRyb2R1Y2VzIHNpbXBsZSBpbnRlcnBvbGF0aW9uIG9mIEJhc2ljU2hhcGVz
IGZvcgorICAgICAgICB0aGUgLXdlYmtpdC1jbGlwLXBhdGggcHJvcGVydHkuCisKKyAgICAgICAg
VGVzdDogY3NzMy9tYXNraW5nL2NsaXAtcGF0aC1hbmltYXRpb24uaHRtbAorCisgICAgICAgICog
cGFnZS9hbmltYXRpb24vQ1NTUHJvcGVydHlBbmltYXRpb24uY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6YmxlbmRGdW5jKTogQWRkZWQgYSBuZXcgZnVuY3Rpb24gdGhhdCBibGVuZHMgYmV0d2VlbiB0
d28gQmFzaWNTaGFwZSBvYmplY3RzLgorICAgICAgICAgICAgSXQgc2tpcHMgYmxlbmRpbmcgb24g
PGNsaXBQYXRoPiByZWZlcmVuY2VzLCBwb2x5Z29ucyBhbmQgaWYgdGhlIHNoYXBlcyBhcmUgbm90
IG9mCisgICAgICAgICAgICB0aGUgc2FtZSB0eXBlLgorICAgICAgICAoV2ViQ29yZSk6CisgICAg
ICAgIChQcm9wZXJ0eVdyYXBwZXJDbGlwUGF0aCk6IEFkZGVkIG5ldyB3cmFwcGVyIGZvciBDbGlw
UGF0aFNoYXBlcy4KKyAgICAgICAgKFdlYkNvcmU6OlByb3BlcnR5V3JhcHBlckNsaXBQYXRoOjpQ
cm9wZXJ0eVdyYXBwZXJDbGlwUGF0aCk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6Q1NTUHJv
cGVydHlBbmltYXRpb246OmVuc3VyZVByb3BlcnR5TWFwKTogQWRkIC13ZWJraXQtY2xpcC1wYXRo
IHRvIGFuaW1hdGFibGUKKyAgICAgICAgICAgIHByb3BlcnRpZXMuCisgICAgICAgICogcmVuZGVy
aW5nL3N0eWxlL0Jhc2ljU2hhcGVzLmNwcDoKKyAgICAgICAgICAgIFRoZSBibGVuZGluZyBpcyBk
b25lIGJ5IGVhY2ggc2hhcGUgaXRzZWxmLiBUaGlzIGlzIHNpbWlsYXIgdG8gRmlsdGVyT3BlcmF0
aW9ucyBvcgorICAgICAgICAgICAgVHJhbnNmb3JtT3BlcmF0aW9ucy4KKyAgICAgICAgKFdlYkNv
cmU6OkJhc2ljU2hhcGVSZWN0YW5nbGU6OmJsZW5kKToKKyAgICAgICAgKFdlYkNvcmUpOgorICAg
ICAgICAoV2ViQ29yZTo6QmFzaWNTaGFwZUNpcmNsZTo6YmxlbmQpOgorICAgICAgICAoV2ViQ29y
ZTo6QmFzaWNTaGFwZUVsbGlwc2U6OmJsZW5kKToKKyAgICAgICAgKFdlYkNvcmU6OkJhc2ljU2hh
cGVQb2x5Z29uOjpibGVuZCk6CisgICAgICAgICogcmVuZGVyaW5nL3N0eWxlL0Jhc2ljU2hhcGVz
Lmg6CisgICAgICAgICAgICBBZGRlZCBuZXcgYmxlbmRpbmcgZnVuY3Rpb25zIHRvIGhlYWRlci4K
KyAgICAgICAgKEJhc2ljU2hhcGUpOgorICAgICAgICAoQmFzaWNTaGFwZVJlY3RhbmdsZSk6Cisg
ICAgICAgIChCYXNpY1NoYXBlQ2lyY2xlKToKKyAgICAgICAgKEJhc2ljU2hhcGVFbGxpcHNlKToK
KyAgICAgICAgKEJhc2ljU2hhcGVQb2x5Z29uKToKKwogMjAxMi0xMS0xMCAgU2hlcmlmZiBCb3Qg
IDx3ZWJraXQucmV2aWV3LmJvdEBnbWFpbC5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgcm9s
bGluZyBvdXQgcjEzNDA2OS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvYW5pbWF0
aW9uL0NTU1Byb3BlcnR5QW5pbWF0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvYW5pbWF0
aW9uL0NTU1Byb3BlcnR5QW5pbWF0aW9uLmNwcAppbmRleCBlYWRjODMxYThjYmY4M2Y4ZGE4YmI0
MWQ0NjY2ZTE0YTVhMzVhMjJkLi43M2E4M2EwMmQ2YjM5YTNkMWY2NDE3NWNhMjlmYjZiNmRiODcw
Y2EyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL2FuaW1hdGlvbi9DU1NQcm9wZXJ0
eUFuaW1hdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9hbmltYXRpb24vQ1NTUHJv
cGVydHlBbmltYXRpb24uY3BwCkBAIC0zNSw2ICszNSw3IEBACiAjaW5jbHVkZSAiQ1NTSW1hZ2VW
YWx1ZS5oIgogI2luY2x1ZGUgIkNTU1ByaW1pdGl2ZVZhbHVlLmgiCiAjaW5jbHVkZSAiQ1NTUHJv
cGVydHlOYW1lcy5oIgorI2luY2x1ZGUgIkNsaXBQYXRoT3BlcmF0aW9uLmgiCiAjaW5jbHVkZSAi
RmxvYXRDb252ZXJzaW9uLmgiCiAjaW5jbHVkZSAiSWRlbnRpdHlUcmFuc2Zvcm1PcGVyYXRpb24u
aCIKICNpbmNsdWRlICJNYXRyaXgzRFRyYW5zZm9ybU9wZXJhdGlvbi5oIgpAQCAtMTI1LDYgKzEy
NiwyNiBAQCBzdGF0aWMgaW5saW5lIFRyYW5zZm9ybU9wZXJhdGlvbnMgYmxlbmRGdW5jKGNvbnN0
IEFuaW1hdGlvbkJhc2UqIGFuaW0sIGNvbnN0IFRyYQogICAgIHJldHVybiB0by5ibGVuZEJ5VXNp
bmdNYXRyaXhJbnRlcnBvbGF0aW9uKGZyb20sIHByb2dyZXNzLCBhbmltLT5yZW5kZXJlcigpLT5p
c0JveCgpID8gdG9SZW5kZXJCb3goYW5pbS0+cmVuZGVyZXIoKSktPmJvcmRlckJveFJlY3QoKS5z
aXplKCkgOiBMYXlvdXRTaXplKCkpOwogfQogCitzdGF0aWMgaW5saW5lIFBhc3NSZWZQdHI8Q2xp
cFBhdGhPcGVyYXRpb24+IGJsZW5kRnVuYyhjb25zdCBBbmltYXRpb25CYXNlKiwgQ2xpcFBhdGhP
cGVyYXRpb24qIGZyb20sIENsaXBQYXRoT3BlcmF0aW9uKiB0bywgZG91YmxlIHByb2dyZXNzKQor
eworICAgIC8vIE90aGVyIGNsaXAtcGF0aCBvcGVyYXRpb25zIHRoZW4gQmFzaWNTaGFwZXMgY2Fu
IG5vdCBiZSBhbmltYXRlZC4KKyAgICBpZiAoZnJvbS0+Z2V0T3BlcmF0aW9uVHlwZSgpICE9IENs
aXBQYXRoT3BlcmF0aW9uOjpTSEFQRSB8fCB0by0+Z2V0T3BlcmF0aW9uVHlwZSgpICE9IENsaXBQ
YXRoT3BlcmF0aW9uOjpTSEFQRSkKKyAgICAgICAgcmV0dXJuIHRvOworCisgICAgY29uc3QgQmFz
aWNTaGFwZSogZnJvbVNoYXBlID0gc3RhdGljX2Nhc3Q8U2hhcGVDbGlwUGF0aE9wZXJhdGlvbio+
KGZyb20pLT5iYXNpY1NoYXBlKCk7CisgICAgY29uc3QgQmFzaWNTaGFwZSogdG9TaGFwZSA9IHN0
YXRpY19jYXN0PFNoYXBlQ2xpcFBhdGhPcGVyYXRpb24qPih0byktPmJhc2ljU2hhcGUoKTsKKwor
ICAgIC8vIEZJWE1FOiBTdXBwb3J0IGFuaW1hdGlvbnMgYmV0d2VlbiBkaWZmZXJlbnQgc2hhcGVz
IGluIHRoZSBmdXR1cmUuCisgICAgaWYgKGZyb21TaGFwZS0+dHlwZSgpICE9IHRvU2hhcGUtPnR5
cGUoKSkKKyAgICAgICAgcmV0dXJuIHRvOworCisgICAgLy8gRklYTUU6IFN1cHBvcnQgYW5pbWF0
aW9ucyBiZXR3ZWVuIHBvbHlnb25zIGluIHRoZSBmdXR1cmUuCisgICAgaWYgKGZyb21TaGFwZS0+
dHlwZSgpID09IEJhc2ljU2hhcGU6OkJBU0lDX1NIQVBFX1BPTFlHT04pCisgICAgICAgIHJldHVy
biB0bzsKKworICAgIHJldHVybiBTaGFwZUNsaXBQYXRoT3BlcmF0aW9uOjpjcmVhdGUodG9TaGFw
ZS0+YmxlbmQoZnJvbVNoYXBlLCBwcm9ncmVzcykpOworfQorCiAjaWYgRU5BQkxFKENTU19GSUxU
RVJTKQogc3RhdGljIGlubGluZSBQYXNzUmVmUHRyPEZpbHRlck9wZXJhdGlvbj4gYmxlbmRGdW5j
KGNvbnN0IEFuaW1hdGlvbkJhc2UqIGFuaW0sIEZpbHRlck9wZXJhdGlvbiogZnJvbU9wLCBGaWx0
ZXJPcGVyYXRpb24qIHRvT3AsIGRvdWJsZSBwcm9ncmVzcywgYm9vbCBibGVuZFRvUGFzc3Rocm91
Z2ggPSBmYWxzZSkKIHsKQEAgLTM2OCw2ICszODksMTQgQEAgcHJvdGVjdGVkOgogfTsKIAogCitj
bGFzcyBQcm9wZXJ0eVdyYXBwZXJDbGlwUGF0aCA6IHB1YmxpYyBSZWZDb3VudGVkUHJvcGVydHlX
cmFwcGVyPENsaXBQYXRoT3BlcmF0aW9uPiB7CitwdWJsaWM6CisgICAgUHJvcGVydHlXcmFwcGVy
Q2xpcFBhdGgoQ1NTUHJvcGVydHlJRCBwcm9wLCBDbGlwUGF0aE9wZXJhdGlvbiogKFJlbmRlclN0
eWxlOjoqZ2V0dGVyKSgpIGNvbnN0LCB2b2lkIChSZW5kZXJTdHlsZTo6KnNldHRlcikoUGFzc1Jl
ZlB0cjxDbGlwUGF0aE9wZXJhdGlvbj4pKQorICAgICAgICA6IFJlZkNvdW50ZWRQcm9wZXJ0eVdy
YXBwZXI8Q2xpcFBhdGhPcGVyYXRpb24+KHByb3AsIGdldHRlciwgc2V0dGVyKQorICAgIHsKKyAg
ICB9Cit9OworCiBjbGFzcyBTdHlsZUltYWdlUHJvcGVydHlXcmFwcGVyIDogcHVibGljIFJlZkNv
dW50ZWRQcm9wZXJ0eVdyYXBwZXI8U3R5bGVJbWFnZT4gewogcHVibGljOgogICAgIFN0eWxlSW1h
Z2VQcm9wZXJ0eVdyYXBwZXIoQ1NTUHJvcGVydHlJRCBwcm9wLCBTdHlsZUltYWdlKiAoUmVuZGVy
U3R5bGU6OipnZXR0ZXIpKCkgY29uc3QsIHZvaWQgKFJlbmRlclN0eWxlOjoqc2V0dGVyKShQYXNz
UmVmUHRyPFN0eWxlSW1hZ2U+KSkKQEAgLTExMTQsNiArMTE0Myw4IEBAIHZvaWQgQ1NTUHJvcGVy
dHlBbmltYXRpb246OmVuc3VyZVByb3BlcnR5TWFwKCkKICNlbmRpZgogI2VuZGlmCiAKKyAgICBn
UHJvcGVydHlXcmFwcGVycy0+YXBwZW5kKG5ldyBQcm9wZXJ0eVdyYXBwZXJDbGlwUGF0aChDU1NQ
cm9wZXJ0eVdlYmtpdENsaXBQYXRoLCAmUmVuZGVyU3R5bGU6OmNsaXBQYXRoLCAmUmVuZGVyU3R5
bGU6OnNldENsaXBQYXRoKSk7CisKICAgICBnUHJvcGVydHlXcmFwcGVycy0+YXBwZW5kKG5ldyBQ
cm9wZXJ0eVdyYXBwZXJWaXNpdGVkQWZmZWN0ZWRDb2xvcihDU1NQcm9wZXJ0eVdlYmtpdENvbHVt
blJ1bGVDb2xvciwgTWF5YmVJbnZhbGlkQ29sb3IsICZSZW5kZXJTdHlsZTo6Y29sdW1uUnVsZUNv
bG9yLCAmUmVuZGVyU3R5bGU6OnNldENvbHVtblJ1bGVDb2xvciwgJlJlbmRlclN0eWxlOjp2aXNp
dGVkTGlua0NvbHVtblJ1bGVDb2xvciwgJlJlbmRlclN0eWxlOjpzZXRWaXNpdGVkTGlua0NvbHVt
blJ1bGVDb2xvcikpOwogICAgIGdQcm9wZXJ0eVdyYXBwZXJzLT5hcHBlbmQobmV3IFByb3BlcnR5
V3JhcHBlclZpc2l0ZWRBZmZlY3RlZENvbG9yKENTU1Byb3BlcnR5V2Via2l0VGV4dFN0cm9rZUNv
bG9yLCBNYXliZUludmFsaWRDb2xvciwgJlJlbmRlclN0eWxlOjp0ZXh0U3Ryb2tlQ29sb3IsICZS
ZW5kZXJTdHlsZTo6c2V0VGV4dFN0cm9rZUNvbG9yLCAmUmVuZGVyU3R5bGU6OnZpc2l0ZWRMaW5r
VGV4dFN0cm9rZUNvbG9yLCAmUmVuZGVyU3R5bGU6OnNldFZpc2l0ZWRMaW5rVGV4dFN0cm9rZUNv
bG9yKSk7CiAgICAgZ1Byb3BlcnR5V3JhcHBlcnMtPmFwcGVuZChuZXcgUHJvcGVydHlXcmFwcGVy
VmlzaXRlZEFmZmVjdGVkQ29sb3IoQ1NTUHJvcGVydHlXZWJraXRUZXh0RmlsbENvbG9yLCBNYXli
ZUludmFsaWRDb2xvciwgJlJlbmRlclN0eWxlOjp0ZXh0RmlsbENvbG9yLCAmUmVuZGVyU3R5bGU6
OnNldFRleHRGaWxsQ29sb3IsICZSZW5kZXJTdHlsZTo6dmlzaXRlZExpbmtUZXh0RmlsbENvbG9y
LCAmUmVuZGVyU3R5bGU6OnNldFZpc2l0ZWRMaW5rVGV4dEZpbGxDb2xvcikpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL0Jhc2ljU2hhcGVzLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9CYXNpY1NoYXBlcy5jcHAKaW5kZXggMjljYTQ1ZDAx
ZTY5ODI0MTIzNDk0MDNlMDMyZDE1ZjQ4NjEwYjFlNi4uMDJmNDZiZmU1YTM2NWMzYTJiYmY3ZDYx
YTM2MWE0NjNhY2NjZjRiMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0
eWxlL0Jhc2ljU2hhcGVzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUv
QmFzaWNTaGFwZXMuY3BwCkBAIC0zMiw2ICszMiw3IEBACiAjaW5jbHVkZSAiQmFzaWNTaGFwZXMu
aCIKICNpbmNsdWRlICJGbG9hdFJlY3QuaCIKICNpbmNsdWRlICJMZW5ndGhGdW5jdGlvbnMuaCIK
KyNpbmNsdWRlICJOb3RJbXBsZW1lbnRlZC5oIgogI2luY2x1ZGUgIlBhdGguaCIKIAogbmFtZXNw
YWNlIFdlYkNvcmUgewpAQCAtNDcsNiArNDgsMjMgQEAgdm9pZCBCYXNpY1NoYXBlUmVjdGFuZ2xl
OjpwYXRoKFBhdGgmIHBhdGgsIGNvbnN0IEZsb2F0UmVjdCYgYm91bmRpbmdCb3gpCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgbV9jb3JuZXJSYWRpdXNZLmlzVW5kZWZpbmVkKCkg
PyAwIDogZmxvYXRWYWx1ZUZvckxlbmd0aChtX2Nvcm5lclJhZGl1c1ksIGJvdW5kaW5nQm94Lmhl
aWdodCgpKSkpOwogfQogCitQYXNzUmVmUHRyPEJhc2ljU2hhcGU+IEJhc2ljU2hhcGVSZWN0YW5n
bGU6OmJsZW5kKGNvbnN0IEJhc2ljU2hhcGUqIG90aGVyLCBkb3VibGUgcHJvZ3Jlc3MpIGNvbnN0
Cit7CisgICAgQVNTRVJUKHR5cGUoKSA9PSBvdGhlci0+dHlwZSgpKTsKKworICAgIGNvbnN0IEJh
c2ljU2hhcGVSZWN0YW5nbGUqIG8gPSBzdGF0aWNfY2FzdDxjb25zdCBCYXNpY1NoYXBlUmVjdGFu
Z2xlKj4ob3RoZXIpOworICAgIFJlZlB0cjxCYXNpY1NoYXBlUmVjdGFuZ2xlPiByZXN1bHQgPSAg
QmFzaWNTaGFwZVJlY3RhbmdsZTo6Y3JlYXRlKCk7CisgICAgcmVzdWx0LT5zZXRYKG1feC5ibGVu
ZChvLT54KCksIHByb2dyZXNzKSk7CisgICAgcmVzdWx0LT5zZXRZKG1feS5ibGVuZChvLT55KCks
IHByb2dyZXNzKSk7CisgICAgcmVzdWx0LT5zZXRXaWR0aChtX3dpZHRoLmJsZW5kKG8tPndpZHRo
KCksIHByb2dyZXNzKSk7CisgICAgcmVzdWx0LT5zZXRIZWlnaHQobV9oZWlnaHQuYmxlbmQoby0+
aGVpZ2h0KCksIHByb2dyZXNzKSk7CisgICAgaWYgKCFtX2Nvcm5lclJhZGl1c1guaXNVbmRlZmlu
ZWQoKSAmJiAhby0+Y29ybmVyUmFkaXVzWCgpLmlzVW5kZWZpbmVkKCkpCisgICAgICAgIHJlc3Vs
dC0+c2V0Q29ybmVyUmFkaXVzWChtX2Nvcm5lclJhZGl1c1guYmxlbmQoby0+Y29ybmVyUmFkaXVz
WCgpLCBwcm9ncmVzcykpOworICAgIGlmICghbV9jb3JuZXJSYWRpdXNZLmlzVW5kZWZpbmVkKCkg
JiYgIW8tPmNvcm5lclJhZGl1c1koKS5pc1VuZGVmaW5lZCgpKQorICAgICAgICByZXN1bHQtPnNl
dENvcm5lclJhZGl1c1kobV9jb3JuZXJSYWRpdXNZLmJsZW5kKG8tPmNvcm5lclJhZGl1c1koKSwg
cHJvZ3Jlc3MpKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorCiB2b2lkIEJhc2ljU2hhcGVDaXJj
bGU6OnBhdGgoUGF0aCYgcGF0aCwgY29uc3QgRmxvYXRSZWN0JiBib3VuZGluZ0JveCkKIHsKICAg
ICBBU1NFUlQocGF0aC5pc0VtcHR5KCkpOwpAQCAtNjAsNiArNzgsMTggQEAgdm9pZCBCYXNpY1No
YXBlQ2lyY2xlOjpwYXRoKFBhdGgmIHBhdGgsIGNvbnN0IEZsb2F0UmVjdCYgYm91bmRpbmdCb3gp
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByYWRpdXMgKiAyKSk7CiB9CiAKK1Bhc3NS
ZWZQdHI8QmFzaWNTaGFwZT4gQmFzaWNTaGFwZUNpcmNsZTo6YmxlbmQoY29uc3QgQmFzaWNTaGFw
ZSogb3RoZXIsIGRvdWJsZSBwcm9ncmVzcykgY29uc3QKK3sKKyAgICBBU1NFUlQodHlwZSgpID09
IG90aGVyLT50eXBlKCkpOworCisgICAgY29uc3QgQmFzaWNTaGFwZUNpcmNsZSogbyA9IHN0YXRp
Y19jYXN0PGNvbnN0IEJhc2ljU2hhcGVDaXJjbGUqPihvdGhlcik7CisgICAgUmVmUHRyPEJhc2lj
U2hhcGVDaXJjbGU+IHJlc3VsdCA9ICBCYXNpY1NoYXBlQ2lyY2xlOjpjcmVhdGUoKTsKKyAgICBy
ZXN1bHQtPnNldENlbnRlclgobV9jZW50ZXJYLmJsZW5kKG8tPmNlbnRlclgoKSwgcHJvZ3Jlc3Mp
KTsKKyAgICByZXN1bHQtPnNldENlbnRlclkobV9jZW50ZXJZLmJsZW5kKG8tPmNlbnRlclkoKSwg
cHJvZ3Jlc3MpKTsKKyAgICByZXN1bHQtPnNldFJhZGl1cyhtX3JhZGl1cy5ibGVuZChvLT5yYWRp
dXMoKSwgcHJvZ3Jlc3MpKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorCiB2b2lkIEJhc2ljU2hh
cGVFbGxpcHNlOjpwYXRoKFBhdGgmIHBhdGgsIGNvbnN0IEZsb2F0UmVjdCYgYm91bmRpbmdCb3gp
CiB7CiAgICAgQVNTRVJUKHBhdGguaXNFbXB0eSgpKTsKQEAgLTczLDYgKzEwMywxOSBAQCB2b2lk
IEJhc2ljU2hhcGVFbGxpcHNlOjpwYXRoKFBhdGgmIHBhdGgsIGNvbnN0IEZsb2F0UmVjdCYgYm91
bmRpbmdCb3gpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByYWRpdXNZICogMikpOwog
fQogCitQYXNzUmVmUHRyPEJhc2ljU2hhcGU+IEJhc2ljU2hhcGVFbGxpcHNlOjpibGVuZChjb25z
dCBCYXNpY1NoYXBlKiBvdGhlciwgZG91YmxlIHByb2dyZXNzKSBjb25zdAoreworICAgIEFTU0VS
VCh0eXBlKCkgPT0gb3RoZXItPnR5cGUoKSk7CisKKyAgICBjb25zdCBCYXNpY1NoYXBlRWxsaXBz
ZSogbyA9IHN0YXRpY19jYXN0PGNvbnN0IEJhc2ljU2hhcGVFbGxpcHNlKj4ob3RoZXIpOworICAg
IFJlZlB0cjxCYXNpY1NoYXBlRWxsaXBzZT4gcmVzdWx0ID0gIEJhc2ljU2hhcGVFbGxpcHNlOjpj
cmVhdGUoKTsKKyAgICByZXN1bHQtPnNldENlbnRlclgobV9jZW50ZXJYLmJsZW5kKG8tPmNlbnRl
clgoKSwgcHJvZ3Jlc3MpKTsKKyAgICByZXN1bHQtPnNldENlbnRlclkobV9jZW50ZXJZLmJsZW5k
KG8tPmNlbnRlclkoKSwgcHJvZ3Jlc3MpKTsKKyAgICByZXN1bHQtPnNldFJhZGl1c1gobV9yYWRp
dXNYLmJsZW5kKG8tPnJhZGl1c1goKSwgcHJvZ3Jlc3MpKTsKKyAgICByZXN1bHQtPnNldFJhZGl1
c1kobV9yYWRpdXNZLmJsZW5kKG8tPnJhZGl1c1koKSwgcHJvZ3Jlc3MpKTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorCiB2b2lkIEJhc2ljU2hhcGVQb2x5Z29uOjpwYXRoKFBhdGgmIHBhdGgsIGNv
bnN0IEZsb2F0UmVjdCYgYm91bmRpbmdCb3gpCiB7CiAgICAgQVNTRVJUKHBhdGguaXNFbXB0eSgp
KTsKQEAgLTkwLDQgKzEzMywxMCBAQCB2b2lkIEJhc2ljU2hhcGVQb2x5Z29uOjpwYXRoKFBhdGgm
IHBhdGgsIGNvbnN0IEZsb2F0UmVjdCYgYm91bmRpbmdCb3gpCiAgICAgfQogICAgIHBhdGguY2xv
c2VTdWJwYXRoKCk7CiB9CisKK1Bhc3NSZWZQdHI8QmFzaWNTaGFwZT4gQmFzaWNTaGFwZVBvbHln
b246OmJsZW5kKGNvbnN0IEJhc2ljU2hhcGUqLCBkb3VibGUpIGNvbnN0Cit7CisgICAgbm90SW1w
bGVtZW50ZWQoKTsKKyAgICByZXR1cm4gQmFzaWNTaGFwZVBvbHlnb246OmNyZWF0ZSgpOworfQog
fQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL0Jhc2ljU2hhcGVz
LmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvQmFzaWNTaGFwZXMuaAppbmRleCBh
ZDExODI2NzYwYWEzMzQ2NzlkZjhlNzgyYmQ3OTYyOGRjMWY3YTEyLi43OTg5Mzc0ZjVlNTc1YTVm
Y2U2NTY4YTNmMjQ0NWI5YjQ5MWJkZTQyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvc3R5bGUvQmFzaWNTaGFwZXMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
c3R5bGUvQmFzaWNTaGFwZXMuaApAQCAtNTQsNiArNTQsNyBAQCBwdWJsaWM6CiAKICAgICB2aXJ0
dWFsIHZvaWQgcGF0aChQYXRoJiwgY29uc3QgRmxvYXRSZWN0JikgPSAwOwogICAgIHZpcnR1YWwg
V2luZFJ1bGUgd2luZFJ1bGUoKSBjb25zdCB7IHJldHVybiBSVUxFX05PTlpFUk87IH0KKyAgICB2
aXJ0dWFsIFBhc3NSZWZQdHI8QmFzaWNTaGFwZT4gYmxlbmQoY29uc3QgQmFzaWNTaGFwZSosIGRv
dWJsZSkgY29uc3QgPSAwOwogCiAgICAgdmlydHVhbCBUeXBlIHR5cGUoKSBjb25zdCA9IDA7CiBw
cm90ZWN0ZWQ6CkBAIC03OCw3ICs3OSw4IEBAIHB1YmxpYzoKICAgICB2b2lkIHNldENvcm5lclJh
ZGl1c1goTGVuZ3RoIHJhZGl1c1gpIHsgbV9jb3JuZXJSYWRpdXNYID0gcmFkaXVzWDsgfQogICAg
IHZvaWQgc2V0Q29ybmVyUmFkaXVzWShMZW5ndGggcmFkaXVzWSkgeyBtX2Nvcm5lclJhZGl1c1kg
PSByYWRpdXNZOyB9CiAKLSAgICB2aXJ0dWFsIHZvaWQgcGF0aChQYXRoJiwgY29uc3QgRmxvYXRS
ZWN0Jik7CisgICAgdmlydHVhbCB2b2lkIHBhdGgoUGF0aCYsIGNvbnN0IEZsb2F0UmVjdCYpIE9W
RVJSSURFOworICAgIHZpcnR1YWwgUGFzc1JlZlB0cjxCYXNpY1NoYXBlPiBibGVuZChjb25zdCBC
YXNpY1NoYXBlKiwgZG91YmxlKSBjb25zdCBPVkVSUklERTsKIAogICAgIHZpcnR1YWwgVHlwZSB0
eXBlKCkgY29uc3QgeyByZXR1cm4gQkFTSUNfU0hBUEVfUkVDVEFOR0xFOyB9CiBwcml2YXRlOgpA
QCAtMTA3LDcgKzEwOSw4IEBAIHB1YmxpYzoKICAgICB2b2lkIHNldENlbnRlclkoTGVuZ3RoIGNl
bnRlclkpIHsgbV9jZW50ZXJZID0gY2VudGVyWTsgfQogICAgIHZvaWQgc2V0UmFkaXVzKExlbmd0
aCByYWRpdXMpIHsgbV9yYWRpdXMgPSByYWRpdXM7IH0KIAotICAgIHZpcnR1YWwgdm9pZCBwYXRo
KFBhdGgmLCBjb25zdCBGbG9hdFJlY3QmKTsKKyAgICB2aXJ0dWFsIHZvaWQgcGF0aChQYXRoJiwg
Y29uc3QgRmxvYXRSZWN0JikgT1ZFUlJJREU7CisgICAgdmlydHVhbCBQYXNzUmVmUHRyPEJhc2lj
U2hhcGU+IGJsZW5kKGNvbnN0IEJhc2ljU2hhcGUqLCBkb3VibGUpIGNvbnN0IE9WRVJSSURFOwog
CiAgICAgdmlydHVhbCBUeXBlIHR5cGUoKSBjb25zdCB7IHJldHVybiBCQVNJQ19TSEFQRV9DSVJD
TEU7IH0KIHByaXZhdGU6CkBAIC0xMzIsNyArMTM1LDggQEAgcHVibGljOgogICAgIHZvaWQgc2V0
UmFkaXVzWChMZW5ndGggcmFkaXVzWCkgeyBtX3JhZGl1c1ggPSByYWRpdXNYOyB9CiAgICAgdm9p
ZCBzZXRSYWRpdXNZKExlbmd0aCByYWRpdXNZKSB7IG1fcmFkaXVzWSA9IHJhZGl1c1k7IH0KIAot
ICAgIHZpcnR1YWwgdm9pZCBwYXRoKFBhdGgmLCBjb25zdCBGbG9hdFJlY3QmKTsKKyAgICB2aXJ0
dWFsIHZvaWQgcGF0aChQYXRoJiwgY29uc3QgRmxvYXRSZWN0JikgT1ZFUlJJREU7CisgICAgdmly
dHVhbCBQYXNzUmVmUHRyPEJhc2ljU2hhcGU+IGJsZW5kKGNvbnN0IEJhc2ljU2hhcGUqLCBkb3Vi
bGUpIGNvbnN0IE9WRVJSSURFOwogCiAgICAgdmlydHVhbCBUeXBlIHR5cGUoKSBjb25zdCB7IHJl
dHVybiBCQVNJQ19TSEFQRV9FTExJUFNFOyB9IAogcHJpdmF0ZToKQEAgLTE1NSw3ICsxNTksOSBA
QCBwdWJsaWM6CiAgICAgdm9pZCBzZXRXaW5kUnVsZShXaW5kUnVsZSB3aW5kUnVsZSkgeyBtX3dp
bmRSdWxlID0gd2luZFJ1bGU7IH0KICAgICB2b2lkIGFwcGVuZFBvaW50KExlbmd0aCB4LCBMZW5n
dGggeSkgeyBtX3ZhbHVlcy5hcHBlbmQoeCk7IG1fdmFsdWVzLmFwcGVuZCh5KTsgfQogCi0gICAg
dmlydHVhbCB2b2lkIHBhdGgoUGF0aCYsIGNvbnN0IEZsb2F0UmVjdCYpOworICAgIHZpcnR1YWwg
dm9pZCBwYXRoKFBhdGgmLCBjb25zdCBGbG9hdFJlY3QmKSBPVkVSUklERTsKKyAgICB2aXJ0dWFs
IFBhc3NSZWZQdHI8QmFzaWNTaGFwZT4gYmxlbmQoY29uc3QgQmFzaWNTaGFwZSosIGRvdWJsZSkg
Y29uc3QgT1ZFUlJJREU7CisKICAgICB2aXJ0dWFsIFdpbmRSdWxlIHdpbmRSdWxlKCkgY29uc3Qg
eyByZXR1cm4gbV93aW5kUnVsZTsgfQogCiAgICAgdmlydHVhbCBUeXBlIHR5cGUoKSBjb25zdCB7
IHJldHVybiBCQVNJQ19TSEFQRV9QT0xZR09OOyB9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggMDQ3YjllMzI5OTRiYTU3M2I3
MmFiYmVkYzU4N2NlNzE1ZTY4NzFiZS4uNGE3YTQ2MTQyOGI4ZWIzM2IwYTA4NGIxYmFhMDkwMmNk
YjJjY2VhNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRl
c3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDEyLTExLTEwICBEaXJrIFNjaHVsemUg
IDxrcml0QHdlYmtpdC5vcmc+CisKKyAgICAgICAgQmFzaWNTaGFwZXMgJ2NpcmNsZScsICdyZWN0
YW5nbGUnLCAnZWxsaXBzZScgc2hvdWxkIGJlIGFuaW1hdGFibGUgd2l0aCB0aGVtIHNlbGZzCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDE4NTQKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGRlZCBhbiBh
bmltdGF0aW9uIHRlc3QgZm9yIC13ZWJraXQtY2xpcC1wYXRoIGFuZCB0ZXN0ZWQgdGhlIGJhc2lj
IHNoYXBlcy4KKworICAgICAgICAqIGFuaW1hdGlvbnMvcmVzb3VyY2VzL2FuaW1hdGlvbi10ZXN0
LWhlbHBlcnMuanM6CisgICAgICAgIChwYXJzZUJhc2ljU2hhcGUpOgorICAgICAgICAoYmFzaWNT
aGFwZVBhcmFtZXRlcnNNYXRjaCk6CisgICAgICAgIChnZXRQcm9wZXJ0eVZhbHVlKToKKyAgICAg
ICAgKGNvbXBhcmVQcm9wZXJ0eVZhbHVlKToKKyAgICAgICAgKiBjc3MzL21hc2tpbmcvY2xpcC1w
YXRoLWFuaW1hdGlvbi1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGNzczMvbWFza2lu
Zy9jbGlwLXBhdGgtYW5pbWF0aW9uLmh0bWw6IEFkZGVkLgorCiAyMDEyLTExLTEwICBNaWtlIFdl
c3QgIDxta3dzdEBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgV2ViIEluc3BlY3RvcjogTXVsdGlw
bGUgJyVjJyBmb3JtYXR0aW5nIG9wdGlvbnMgc2hvdWxkIGFsbCBoYXZlIGVmZmVjdC4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2FuaW1hdGlvbnMvcmVzb3VyY2VzL2FuaW1hdGlvbi10ZXN0LWhl
bHBlcnMuanMgYi9MYXlvdXRUZXN0cy9hbmltYXRpb25zL3Jlc291cmNlcy9hbmltYXRpb24tdGVz
dC1oZWxwZXJzLmpzCmluZGV4IDIwZWY5YzRhNzMzOTU2ZjU0NDEzMTFjYTcwODBmZWExOWFmMWQw
MDguLjcyYjQxODE5NDdmOGVjMTBhN2ViZjcxNzJkYjgyZjQyZDJjOWVkNzkgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2FuaW1hdGlvbnMvcmVzb3VyY2VzL2FuaW1hdGlvbi10ZXN0LWhlbHBlcnMu
anMKKysrIGIvTGF5b3V0VGVzdHMvYW5pbWF0aW9ucy9yZXNvdXJjZXMvYW5pbWF0aW9uLXRlc3Qt
aGVscGVycy5qcwpAQCAtNTksNiArNTksNTggQEAgZnVuY3Rpb24gcGFyc2VDcm9zc0ZhZGUocykK
ICAgICByZXR1cm4geyJmcm9tIjogbWF0Y2hlc1sxXSwgInRvIjogbWF0Y2hlc1syXSwgInBlcmNl
bnQiOiBwYXJzZUZsb2F0KG1hdGNoZXNbM10pfQogfQogCitmdW5jdGlvbiBwYXJzZUJhc2ljU2hh
cGUocykKK3sKKyAgICB2YXIgc2hhcGVGdW5jdGlvbiA9IHMubWF0Y2goLyhcdyspXCgoLispXCkv
KTsKKyAgICBpZiAoIXNoYXBlRnVuY3Rpb24pCisgICAgICAgIHJldHVybiBudWxsOworCisgICAg
dmFyIG1hdGNoZXM7CisgICAgc3dpdGNoIChzaGFwZUZ1bmN0aW9uWzFdKSB7CisgICAgY2FzZSAi
cmVjdGFuZ2xlIjoKKyAgICAgICAgbWF0Y2hlcyA9IHMubWF0Y2goInJlY3RhbmdsZVxcKCguKilc
XHMqLFxccyooLiopXFxzKixcXHMqKC4qKVxcLFxccyooLiopXFwpIik7CisgICAgICAgIGJyZWFr
OworICAgIGNhc2UgImNpcmNsZSI6CisgICAgICAgIG1hdGNoZXMgPSBzLm1hdGNoKCJjaXJjbGVc
XCgoLiopXFxzKixcXHMqKC4qKVxccyosXFxzKiguKilcXCkiKTsKKyAgICAgICAgYnJlYWs7Cisg
ICAgY2FzZSAiZWxsaXBzZSI6CisgICAgICAgIG1hdGNoZXMgPSBzLm1hdGNoKCJlbGxpcHNlXFwo
KC4qKVxccyosXFxzKiguKilcXHMqLFxccyooLiopXFwsXFxzKiguKilcXCkiKTsKKyAgICAgICAg
YnJlYWs7CisgICAgZGVmYXVsdDoKKyAgICAgICAgcmV0dXJuIG51bGw7CisgICAgfQorCisgICAg
aWYgKCFtYXRjaGVzKQorICAgICAgICByZXR1cm4gbnVsbDsKKworICAgIG1hdGNoZXMuc2hpZnQo
KTsKKworICAgIC8vIE5vcm1hbGl6ZSBwZXJjZW50YWdlIHZhbHVlcy4KKyAgICBmb3IgKHZhciBp
ID0gMDsgaSA8IG1hdGNoZXMubGVuZ3RoOyArK2kpIHsKKyAgICAgICAgdmFyIHBhcmFtID0gbWF0
Y2hlc1tpXTsKKyAgICAgICAgbWF0Y2hlc1tpXSA9IHBhcnNlRmxvYXQobWF0Y2hlc1tpXSk7Cisg
ICAgICAgIGlmIChwYXJhbS5pbmRleE9mKCclJykgIT0gLTEpCisgICAgICAgICAgICBtYXRjaGVz
W2ldID0gbWF0Y2hlc1tpXSAvIDEwMDsKKyAgICB9CisKKyAgICByZXR1cm4geyJzaGFwZSI6IHNo
YXBlRnVuY3Rpb25bMV0sICJwYXJhbXMiOiBtYXRjaGVzfTsKK30KKworZnVuY3Rpb24gYmFzaWNT
aGFwZVBhcmFtZXRlcnNNYXRjaChwYXJhbUxpc3QxLCBwYXJhbUxpc3QyLCB0b2xlcmFuY2UpCit7
CisgICAgaWYgKHBhcmFtTGlzdDEuc2hhcGUgIT0gcGFyYW1MaXN0Mi5zaGFwZQorICAgICAgICB8
fCBwYXJhbUxpc3QxLnBhcmFtcy5sZW5ndGggIT0gcGFyYW1MaXN0Mi5wYXJhbXMubGVuZ3RoKQor
ICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBwYXJhbUxpc3Qx
LnBhcmFtcy5sZW5ndGg7ICsraSkgeworICAgICAgICB2YXIgcGFyYW0xID0gcGFyYW1MaXN0MS5w
YXJhbXNbaV0sIAorICAgICAgICAgICAgcGFyYW0yID0gcGFyYW1MaXN0Mi5wYXJhbXNbaV07Cisg
ICAgICAgIHZhciBtYXRjaCA9IGlzQ2xvc2VFbm91Z2gocGFyYW0xLCBwYXJhbTIsIHRvbGVyYW5j
ZSk7CisgICAgICAgIGlmICghbWF0Y2gpCisgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisgICAg
fQorICAgIHJldHVybiB0cnVlOworfQorCiAvLyBSZXR1cm4gYW4gYXJyYXkgb2YgbnVtZXJpYyBm
aWx0ZXIgcGFyYW1zIGluIDAtMS4KIGZ1bmN0aW9uIGdldEZpbHRlclBhcmFtZXRlcnMocykKIHsK
QEAgLTI0Myw2ICsyOTUsNyBAQCBmdW5jdGlvbiBnZXRQcm9wZXJ0eVZhbHVlKHByb3BlcnR5LCBl
bGVtZW50SWQsIGlmcmFtZUlkKQogICAgICAgICAgICAgICAgfHwgcHJvcGVydHkgPT0gIndlYmtp
dE1hc2tJbWFnZSIKICAgICAgICAgICAgICAgIHx8IHByb3BlcnR5ID09ICJ3ZWJraXRNYXNrQm94
SW1hZ2UiCiAgICAgICAgICAgICAgICB8fCBwcm9wZXJ0eSA9PSAid2Via2l0RmlsdGVyIgorICAg
ICAgICAgICAgICAgfHwgcHJvcGVydHkgPT0gIndlYmtpdENsaXBQYXRoIgogICAgICAgICAgICAg
ICAgfHwgIXByb3BlcnR5LmluZGV4T2YoIndlYmtpdFRyYW5zZm9ybSIpKSB7CiAgICAgICAgIGNv
bXB1dGVkVmFsdWUgPSB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShlbGVtZW50KVtwcm9wZXJ0eS5z
cGxpdCgiLiIpWzBdXTsKICAgICB9IGVsc2UgewpAQCAtMjc1LDYgKzMyOCwxMiBAQCBmdW5jdGlv
biBjb21wYXJlUHJvcGVydHlWYWx1ZShwcm9wZXJ0eSwgY29tcHV0ZWRWYWx1ZSwgZXhwZWN0ZWRW
YWx1ZSwgdG9sZXJhbmNlKQogICAgICAgICB2YXIgZmlsdGVyUGFyYW1ldGVycyA9IGdldEZpbHRl
clBhcmFtZXRlcnMoY29tcHV0ZWRWYWx1ZSk7CiAgICAgICAgIHZhciBmaWx0ZXIyUGFyYW1ldGVy
cyA9IGdldEZpbHRlclBhcmFtZXRlcnMoZXhwZWN0ZWRWYWx1ZSk7CiAgICAgICAgIHJlc3VsdCA9
IGZpbHRlclBhcmFtZXRlcnNNYXRjaChmaWx0ZXJQYXJhbWV0ZXJzLCBmaWx0ZXIyUGFyYW1ldGVy
cywgdG9sZXJhbmNlKTsKKyAgICB9IGVsc2UgaWYgKHByb3BlcnR5ID09ICJ3ZWJraXRDbGlwUGF0
aCIpIHsKKyAgICAgICAgdmFyIGNsaXBQYXRoUGFyYW1ldGVycyA9IHBhcnNlQmFzaWNTaGFwZShj
b21wdXRlZFZhbHVlKTsKKyAgICAgICAgdmFyIGNsaXBQYXRoUGFyYW1ldGVyczIgPSBwYXJzZUJh
c2ljU2hhcGUoZXhwZWN0ZWRWYWx1ZSk7CisgICAgICAgIGlmICghY2xpcFBhdGhQYXJhbWV0ZXJz
IHx8ICFjbGlwUGF0aFBhcmFtZXRlcnMyKQorICAgICAgICAgICAgcmVzdWx0ID0gZmFsc2U7Cisg
ICAgICAgIHJlc3VsdCA9IGJhc2ljU2hhcGVQYXJhbWV0ZXJzTWF0Y2goY2xpcFBhdGhQYXJhbWV0
ZXJzLCBjbGlwUGF0aFBhcmFtZXRlcnMyLCB0b2xlcmFuY2UpOwogICAgIH0gZWxzZSBpZiAocHJv
cGVydHkgPT0gImJhY2tncm91bmRJbWFnZSIKICAgICAgICAgICAgICAgIHx8IHByb3BlcnR5ID09
ICJib3JkZXJJbWFnZVNvdXJjZSIKICAgICAgICAgICAgICAgIHx8IHByb3BlcnR5ID09ICJsaXN0
U3R5bGVJbWFnZSIKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvbWFza2luZy9jbGlwLXBh
dGgtYW5pbWF0aW9uLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvbWFza2luZy9jbGlw
LXBhdGgtYW5pbWF0aW9uLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45YzdjY2ZlMTk2MTkwZDM5
YmJmNzdhNTBlYTExOWJlZDhjMTlkYmRjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
Y3NzMy9tYXNraW5nL2NsaXAtcGF0aC1hbmltYXRpb24tZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEs
NSBAQAorICAKK1BBU1MgLSAid2Via2l0Q2xpcFBhdGgiIHByb3BlcnR5IGZvciAicmVjdGFuZ2xl
LWJveCIgZWxlbWVudCBhdCAxcyBzYXcgc29tZXRoaW5nIGNsb3NlIHRvOiByZWN0YW5nbGUoMTAl
LCAxMCUsIDgwJSwgODAlKQorUEFTUyAtICJ3ZWJraXRDbGlwUGF0aCIgcHJvcGVydHkgZm9yICJj
aXJjbGUtYm94IiBlbGVtZW50IGF0IDFzIHNhdyBzb21ldGhpbmcgY2xvc2UgdG86IGNpcmNsZSgz
NSUsIDM1JSwgMzUlKQorUEFTUyAtICJ3ZWJraXRDbGlwUGF0aCIgcHJvcGVydHkgZm9yICJlbGxp
cHNlLWJveCIgZWxlbWVudCBhdCAxcyBzYXcgc29tZXRoaW5nIGNsb3NlIHRvOiBlbGxpcHNlKDM1
JSwgMzUlLCAzNSUsIDMwJSkKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9tYXNraW5n
L2NsaXAtcGF0aC1hbmltYXRpb24uaHRtbCBiL0xheW91dFRlc3RzL2NzczMvbWFza2luZy9jbGlw
LXBhdGgtYW5pbWF0aW9uLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMmY1M2Q5NDQ2NWNhZTEzYmZjY2NlYTZj
MzZkNjExZTMzZjQ5YzY3NgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2NzczMvbWFz
a2luZy9jbGlwLXBhdGgtYW5pbWF0aW9uLmh0bWwKQEAgLTAsMCArMSw2NCBAQAorPCFET0NUWVBF
IGh0bWw+CisKKzxodG1sPgorPGhlYWQ+CisgIDxzdHlsZT4KKyAgICAuYm94IHsKKyAgICAgICAg
aGVpZ2h0OiAxMDBweDsKKyAgICAgICAgd2lkdGg6IDEwMHB4OworICAgICAgICBtYXJnaW46IDEw
cHg7CisgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGJsdWU7CisgICAgICAgIGRpc3BsYXk6IGlu
bGluZS1ibG9jazsKKyAgICB9CisKKyAgICAjcmVjdGFuZ2xlLWJveCB7CisgICAgICAtd2Via2l0
LWFuaW1hdGlvbjogcmVjdGFuZ2xlLWFuaW0gMnMgbGluZWFyCisgICAgfQorCisgICAgI2NpcmNs
ZS1ib3ggeworICAgICAgLXdlYmtpdC1hbmltYXRpb246IGNpcmNsZS1hbmltIDJzIGxpbmVhcgor
ICAgIH0KKworICAgICNlbGxpcHNlLWJveCB7CisgICAgICAtd2Via2l0LWFuaW1hdGlvbjogZWxs
aXBzZS1hbmltIDJzIGxpbmVhcgorICAgIH0KKworCisgICAgQC13ZWJraXQta2V5ZnJhbWVzIHJl
Y3RhbmdsZS1hbmltIHsKKyAgICAgICAgZnJvbSB7IC13ZWJraXQtY2xpcC1wYXRoOiByZWN0YW5n
bGUoMCUsIDAlLCAxMDAlLCAxMDAlKTsgfQorICAgICAgICB0byAgIHsgLXdlYmtpdC1jbGlwLXBh
dGg6IHJlY3RhbmdsZSgyMCUsIDIwJSwgNjAlLCA2MCUpOyB9CisgICAgfQorCisgICAgQC13ZWJr
aXQta2V5ZnJhbWVzIGNpcmNsZS1hbmltIHsKKyAgICAgICAgZnJvbSB7IC13ZWJraXQtY2xpcC1w
YXRoOiBjaXJjbGUoNTAlLCA1MCUsIDUwJSk7IH0KKyAgICAgICAgdG8gICB7IC13ZWJraXQtY2xp
cC1wYXRoOiBjaXJjbGUoMjAlLCAyMCUsIDIwJSk7IH0KKyAgICB9CisKKyAgICBALXdlYmtpdC1r
ZXlmcmFtZXMgZWxsaXBzZS1hbmltIHsKKyAgICAgICAgZnJvbSB7IC13ZWJraXQtY2xpcC1wYXRo
OiBlbGxpcHNlKDUwJSwgNTAlLCA1MCUsIDQwJSk7IH0KKyAgICAgICAgdG8gICB7IC13ZWJraXQt
Y2xpcC1wYXRoOiBlbGxpcHNlKDIwJSwgMjAlLCAyMCUsIDIwJSk7IH0KKyAgICB9CisKKyAgPC9z
dHlsZT4KKyAgPHNjcmlwdCBzcmM9Ii4uLy4uL2FuaW1hdGlvbnMvcmVzb3VyY2VzL2FuaW1hdGlv
bi10ZXN0LWhlbHBlcnMuanMiPjwvc2NyaXB0PgorICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNj
cmlwdCI+CisgICAgY29uc3QgZXhwZWN0ZWRWYWx1ZXMgPSBbCisgICAgICAvLyBbYW5pbWF0aW9u
LW5hbWUsIHRpbWUsIGVsZW1lbnQtaWQsIHByb3BlcnR5LCBleHBlY3RlZC12YWx1ZSwgdG9sZXJh
bmNlXQorICAgICAgWyJyZWN0YW5nbGUtYW5pbSIsICAxLCAicmVjdGFuZ2xlLWJveCIsICJ3ZWJr
aXRDbGlwUGF0aCIsICdyZWN0YW5nbGUoMTAlLCAxMCUsIDgwJSwgODAlKScsIDAuMDVdLAorICAg
ICAgWyJjaXJjbGUtYW5pbSIsICAxLCAiY2lyY2xlLWJveCIsICJ3ZWJraXRDbGlwUGF0aCIsICdj
aXJjbGUoMzUlLCAzNSUsIDM1JSknLCAwLjA1XSwKKyAgICAgIFsiZWxsaXBzZS1hbmltIiwgIDEs
ICJlbGxpcHNlLWJveCIsICJ3ZWJraXRDbGlwUGF0aCIsICdlbGxpcHNlKDM1JSwgMzUlLCAzNSUs
IDMwJSknLCAwLjA1XSwKKyAgICBdOworICAgIAorICAgIHJ1bkFuaW1hdGlvblRlc3QoZXhwZWN0
ZWRWYWx1ZXMpOworICA8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorCis8ZGl2IGNsYXNzPSJi
b3giIGlkPSJyZWN0YW5nbGUtYm94Ij48L2Rpdj4KKzxkaXYgY2xhc3M9ImJveCIgaWQ9ImNpcmNs
ZS1ib3giPjwvZGl2PgorPGRpdiBjbGFzcz0iYm94IiBpZD0iZWxsaXBzZS1ib3giPjwvZGl2Pgor
Cis8ZGl2IGlkPSJyZXN1bHQiPgorPC9kaXY+Cis8L2JvZHk+Cis8L2h0bWw+Cg==
</data>
<flag name="review"
          id="188188"
          type_id="1"
          status="+"
          setter="kling"
    />
          </attachment>
      

    </bug>

</bugzilla>