<?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>63865</bug_id>
          
          <creation_ts>2011-07-02 13:38:26 -0700</creation_ts>
          <short_desc>SVGAnimatedPath needs fallback for &apos;by&apos; animation</short_desc>
          <delta_ts>2011-07-07 11:44:05 -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>SVG</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>41761</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Dirk Schulze">krit</reporter>
          <assigned_to name="Dirk Schulze">krit</assigned_to>
          <cc>webkit.review.bot</cc>
    
    <cc>zimmermann</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>431630</commentid>
    <comment_count>0</comment_count>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2011-07-02 13:38:26 -0700</bug_when>
    <thetext>SVGAnimatedPath needs fallback for &apos;by&apos; animation.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>431632</commentid>
    <comment_count>1</comment_count>
      <attachid>99559</attachid>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2011-07-02 13:52:30 -0700</bug_when>
    <thetext>Created attachment 99559
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>431634</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-07-02 13:54:53 -0700</bug_when>
    <thetext>Attachment 99559 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;LayoutTests/ChangeLog&apos;, u&apos;LayoutTests/svg/...&quot; exit_code: 1

Source/WebCore/svg/SVGAnimatedPath.cpp:72:  The parameter type should use PassOwnPtr instead of OwnPtr.  [readability/pass_ptr] [5]
Source/WebCore/svg/SVGAnimatedPath.cpp:72:  The parameter type should use PassOwnPtr instead of OwnPtr.  [readability/pass_ptr] [5]
Total errors found: 2 in 7 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>433561</commentid>
    <comment_count>3</comment_count>
      <attachid>99559</attachid>
    <who name="Rob Buis">rwlbuis</who>
    <bug_when>2011-07-07 10:15:57 -0700</bug_when>
    <thetext>Comment on attachment 99559
Patch

LGTM</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>433627</commentid>
    <comment_count>4</comment_count>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2011-07-07 11:44:05 -0700</bug_when>
    <thetext>Committed r90582: &lt;http://trac.webkit.org/changeset/90582&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>99559</attachid>
            <date>2011-07-02 13:52:30 -0700</date>
            <delta_ts>2011-07-07 10:15:57 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-63865-20110702225226.patch</filename>
            <type>text/plain</type>
            <size>20788</size>
            <attacher name="Dirk Schulze">krit</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDkwMzE2KQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMzIgQEAKKzIwMTEtMDctMDIgIERpcmsgU2No
dWx6ZSAgPGtyaXRAd2Via2l0Lm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBTVkdBbmltYXRlZFBhdGggbmVlZHMgZmFsbGJhY2sgZm9yICdieScg
YW5pbWF0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD02Mzg2NQorICAgICAgICAKKyAgICAgICAgQWRkZWQgZmFsbGJhY2sgdG8gJ3RvJyBhbmltYXRp
b24gZm9yICdieScgYW5pbWF0ZWQgU1ZHQW5pbWF0ZWRQYXRoQW5pbWF0b3IuCisgICAgICAgIAor
ICAgICAgICBDbGVudXAgb2YgU1ZHQW5pbWF0ZUVsZW1lbnQuIFJlbW92ZWQgYWxsIHN3aXRjaGVz
IHNpbmNlIHdlIHN1cHBvcnQgYWxsIEFuaW1hdGVkVHlwZXMKKyAgICAgICAgd2l0aCB0aGUgZXhj
ZXB0aW9uIG9mIEFuaW1hdGVkRW51bWVyYXRpb24uIEFuaW1hdGVkRW51bWVyYXRpb24gZ2V0cyBh
bmltYXRlZCBhcyBBbmltYXRlZFN0cmluZyBhdCB0aGUgbW9tZW50LiAKKworICAgICAgICBUZXN0
OiBzdmcvYW5pbWF0aW9ucy9zdmdwYXRoLWFuaW1hdGlvbi0xLmh0bWwKKworICAgICAgICAqIHN2
Zy9TVkdBbmltYXRlRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpnZXRQcm9wZXJ0eVZh
bHVlKToKKyAgICAgICAgKFdlYkNvcmU6OmluaGVyaXRzRnJvbVByb3BlcnR5KToKKyAgICAgICAg
KFdlYkNvcmU6OmF0dHJpYnV0ZVZhbHVlSXNDdXJyZW50Q29sb3IpOgorICAgICAgICAoV2ViQ29y
ZTo6U1ZHQW5pbWF0ZUVsZW1lbnQ6OmFkanVzdEZvckN1cnJlbnRDb2xvcik6CisgICAgICAgIChX
ZWJDb3JlOjpTVkdBbmltYXRlRWxlbWVudDo6ZGV0ZXJtaW5lQW5pbWF0ZWRBdHRyaWJ1dGVUeXBl
KToKKyAgICAgICAgKFdlYkNvcmU6OlNWR0FuaW1hdGVFbGVtZW50OjpjYWxjdWxhdGVBbmltYXRl
ZFZhbHVlKToKKyAgICAgICAgKFdlYkNvcmU6OlNWR0FuaW1hdGVFbGVtZW50OjpjYWxjdWxhdGVG
cm9tQW5kVG9WYWx1ZXMpOgorICAgICAgICAoV2ViQ29yZTo6U1ZHQW5pbWF0ZUVsZW1lbnQ6OmNh
bGN1bGF0ZUZyb21BbmRCeVZhbHVlcyk6CisgICAgICAgIChXZWJDb3JlOjpTVkdBbmltYXRlRWxl
bWVudDo6cmVzZXRUb0Jhc2VWYWx1ZSk6CisgICAgICAgIChXZWJDb3JlOjpTVkdBbmltYXRlRWxl
bWVudDo6YXBwbHlSZXN1bHRzVG9UYXJnZXQpOgorICAgICAgICAoV2ViQ29yZTo6U1ZHQW5pbWF0
ZUVsZW1lbnQ6OmNhbGN1bGF0ZURpc3RhbmNlKToKKyAgICAgICAgKiBzdmcvU1ZHQW5pbWF0ZWRQ
YXRoLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR0FuaW1hdGVkUGF0aEFuaW1hdG9yOjpjYWxj
dWxhdGVGcm9tQW5kQnlWYWx1ZXMpOgorCiAyMDExLTA3LTAxICBNaWNoYWVsIE5vcmRtYW4gIDxt
aWNoYWVsbkBnb29nbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEZpc2hlci4K
SW5kZXg6IFNvdXJjZS9XZWJDb3JlL3N2Zy9TVkdBbmltYXRlRWxlbWVudC5jcHAKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYkNvcmUvc3ZnL1NWR0FuaW1hdGVFbGVtZW50LmNwcAkocmV2aXNpb24g
OTAyMTgpCisrKyBTb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQW5pbWF0ZUVsZW1lbnQuY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC01NiwyMiArNTYsMzggQEAgU1ZHQW5pbWF0ZUVsZW1lbnQ6On5TVkdBbmlt
YXRlRWxlbWVudCgpCiB7CiB9CiAKLXZvaWQgU1ZHQW5pbWF0ZUVsZW1lbnQ6OmFkanVzdEZvckN1
cnJlbnRDb2xvcihTVkdFbGVtZW50KiB0YXJnZXRFbGVtZW50LCBDb2xvciYgY29sb3IpCitzdGF0
aWMgaW5saW5lIHZvaWQgZ2V0UHJvcGVydHlWYWx1ZShTVkdFbGVtZW50KiBzdmdQYXJlbnQsIGNv
bnN0IFF1YWxpZmllZE5hbWUmIGF0dHJpYnV0ZU5hbWUsIFN0cmluZyYgdmFsdWUpCit7CisgICAg
QVNTRVJUKHN2Z1BhcmVudC0+aXNTdHlsZWQoKSk7CisgICAgdmFsdWUgPSBjb21wdXRlZFN0eWxl
KHN2Z1BhcmVudCktPmdldFByb3BlcnR5VmFsdWUoY3NzUHJvcGVydHlJRChhdHRyaWJ1dGVOYW1l
LmxvY2FsTmFtZSgpKSk7Cit9CisKK3N0YXRpYyBib29sIGluaGVyaXRzRnJvbVByb3BlcnR5KFNW
R0VsZW1lbnQqIHRhcmdldEVsZW1lbnQsIGNvbnN0IFF1YWxpZmllZE5hbWUmIGF0dHJpYnV0ZU5h
bWUsIGNvbnN0IFN0cmluZyYgdmFsdWUpCiB7CiAgICAgQVNTRVJUKHRhcmdldEVsZW1lbnQpOwor
ICAgIERFRklORV9TVEFUSUNfTE9DQUwoY29uc3QgQXRvbWljU3RyaW5nLCBpbmhlcml0LCAoImlu
aGVyaXQiKSk7CiAgICAgCisgICAgaWYgKHZhbHVlLmlzRW1wdHkoKSB8fCB2YWx1ZSAhPSBpbmhl
cml0IHx8ICF0YXJnZXRFbGVtZW50LT5pc1N0eWxlZCgpKQorICAgICAgICByZXR1cm4gZmFsc2U7
CisgICAgcmV0dXJuIFNWR1N0eWxlZEVsZW1lbnQ6OmlzQW5pbWF0YWJsZUNTU1Byb3BlcnR5KGF0
dHJpYnV0ZU5hbWUpOworfQorCitzdGF0aWMgYm9vbCBhdHRyaWJ1dGVWYWx1ZUlzQ3VycmVudENv
bG9yKGNvbnN0IFN0cmluZyYgdmFsdWUpCit7CisgICAgREVGSU5FX1NUQVRJQ19MT0NBTChjb25z
dCBBdG9taWNTdHJpbmcsIGN1cnJlbnRDb2xvciwgKCJjdXJyZW50Q29sb3IiKSk7CisgICAgcmV0
dXJuIHZhbHVlID09IGN1cnJlbnRDb2xvcjsKK30KKwordm9pZCBTVkdBbmltYXRlRWxlbWVudDo6
YWRqdXN0Rm9yQ3VycmVudENvbG9yKFNWR0VsZW1lbnQqIHRhcmdldEVsZW1lbnQsIENvbG9yJiBj
b2xvcikKK3sKKyAgICBBU1NFUlQodGFyZ2V0RWxlbWVudCk7CisKICAgICBpZiAoUmVuZGVyT2Jq
ZWN0KiB0YXJnZXRSZW5kZXJlciA9IHRhcmdldEVsZW1lbnQtPnJlbmRlcmVyKCkpCiAgICAgICAg
IGNvbG9yID0gdGFyZ2V0UmVuZGVyZXItPnN0eWxlKCktPnZpc2l0ZWREZXBlbmRlbnRDb2xvcihD
U1NQcm9wZXJ0eUNvbG9yKTsKICAgICBlbHNlCiAgICAgICAgIGNvbG9yID0gQ29sb3IoKTsKIH0K
IAotc3RhdGljIGlubGluZSB2b2lkIGdldFByb3BlcnR5VmFsdWUoU1ZHRWxlbWVudCogc3ZnUGFy
ZW50LCBjb25zdCBRdWFsaWZpZWROYW1lJiBhdHRyaWJ1dGVOYW1lLCBTdHJpbmcmIHZhbHVlKQot
ewotICAgIEFTU0VSVChzdmdQYXJlbnQtPmlzU3R5bGVkKCkpOwotICAgIHZhbHVlID0gY29tcHV0
ZWRTdHlsZShzdmdQYXJlbnQpLT5nZXRQcm9wZXJ0eVZhbHVlKGNzc1Byb3BlcnR5SUQoYXR0cmli
dXRlTmFtZS5sb2NhbE5hbWUoKSkpOwotfQotCiB2b2lkIFNWR0FuaW1hdGVFbGVtZW50OjphZGp1
c3RGb3JJbmhlcml0YW5jZShTVkdFbGVtZW50KiB0YXJnZXRFbGVtZW50LCBjb25zdCBRdWFsaWZp
ZWROYW1lJiBhdHRyaWJ1dGVOYW1lLCBTdHJpbmcmIHZhbHVlKQogewogICAgIC8vIEZJWE1FOiBB
dCB0aGUgbW9tZW50IHRoZSBjb21wdXRlZCBzdHlsZSBnZXRzIHJldHVybmVkIGFzIGEgU3RyaW5n
IGFuZCBuZWVkcyB0byBnZXQgcGFyc2VkIGFnYWluLgpAQCAtMTAxLDExMCArMTE3LDE5IEBAIEFu
aW1hdGVkQXR0cmlidXRlVHlwZSBTVkdBbmltYXRlRWxlbWVudDoKICAgICBBU1NFUlQodGFyZ2V0
RWxlbWVudCk7CiAKICAgICBBbmltYXRlZEF0dHJpYnV0ZVR5cGUgdHlwZSA9IHRhcmdldEVsZW1l
bnQtPmFuaW1hdGVkUHJvcGVydHlUeXBlRm9yQXR0cmlidXRlKGF0dHJpYnV0ZU5hbWUoKSk7Ci0g
ICAgaWYgKHR5cGUgPT0gQW5pbWF0ZWRVbmtub3duIHx8IChoYXNUYWdOYW1lKFNWR05hbWVzOjph
bmltYXRlQ29sb3JUYWcpICYmIHR5cGUgIT0gQW5pbWF0ZWRDb2xvcikpCisgICAgaWYgKGhhc1Rh
Z05hbWUoU1ZHTmFtZXM6OmFuaW1hdGVDb2xvclRhZykgJiYgdHlwZSAhPSBBbmltYXRlZENvbG9y
KQogICAgICAgICByZXR1cm4gQW5pbWF0ZWRVbmtub3duOwogCi0gICAgLy8gRklYTUU6IEFuaW1h
dG9yIGZvciBBbmltYXRlZEVudW1lcmF0aW9uIG1pc3NpbmcuCi0gICAgc3dpdGNoICh0eXBlKSB7
Ci0gICAgY2FzZSBBbmltYXRlZEFuZ2xlOgotICAgICAgICByZXR1cm4gQW5pbWF0ZWRBbmdsZTsK
LSAgICBjYXNlIEFuaW1hdGVkQm9vbGVhbjoKLSAgICAgICAgcmV0dXJuIEFuaW1hdGVkQm9vbGVh
bjsKLSAgICBjYXNlIEFuaW1hdGVkRW51bWVyYXRpb246Ci0gICAgY2FzZSBBbmltYXRlZFN0cmlu
ZzoKKyAgICAvLyBGSVhNRTogQW5pbWF0b3IgZm9yIEFuaW1hdGVkRW51bWVyYXRpb24gbWlzc2lu
Zy4gRmFsbGluZyBiYWNrIHRvIFN0cmluZyBhbmltYXRpb24uCisgICAgaWYgKHR5cGUgPT0gQW5p
bWF0ZWRFbnVtZXJhdGlvbikKICAgICAgICAgcmV0dXJuIEFuaW1hdGVkU3RyaW5nOwotICAgIGNh
c2UgQW5pbWF0ZWRDb2xvcjoKLSAgICAgICAgcmV0dXJuIEFuaW1hdGVkQ29sb3I7Ci0gICAgY2Fz
ZSBBbmltYXRlZEludGVnZXI6Ci0gICAgICAgIHJldHVybiBBbmltYXRlZEludGVnZXI7Ci0gICAg
Y2FzZSBBbmltYXRlZExlbmd0aDoKLSAgICAgICAgcmV0dXJuIEFuaW1hdGVkTGVuZ3RoOwotICAg
IGNhc2UgQW5pbWF0ZWRMZW5ndGhMaXN0OgotICAgICAgICByZXR1cm4gQW5pbWF0ZWRMZW5ndGhM
aXN0OwotICAgIGNhc2UgQW5pbWF0ZWROdW1iZXI6Ci0gICAgICAgIHJldHVybiBBbmltYXRlZE51
bWJlcjsKLSAgICBjYXNlIEFuaW1hdGVkTnVtYmVyTGlzdDoKLSAgICAgICAgcmV0dXJuIEFuaW1h
dGVkTnVtYmVyTGlzdDsKLSAgICBjYXNlIEFuaW1hdGVkTnVtYmVyT3B0aW9uYWxOdW1iZXI6Ci0g
ICAgICAgIHJldHVybiBBbmltYXRlZE51bWJlck9wdGlvbmFsTnVtYmVyOwotICAgIGNhc2UgQW5p
bWF0ZWRQYXRoOgotICAgICAgICByZXR1cm4gQW5pbWF0ZWRQYXRoOwotICAgIGNhc2UgQW5pbWF0
ZWRQb2ludHM6Ci0gICAgICAgIHJldHVybiBBbmltYXRlZFBvaW50czsKLSAgICBjYXNlIEFuaW1h
dGVkUHJlc2VydmVBc3BlY3RSYXRpbzoKLSAgICAgICAgcmV0dXJuIEFuaW1hdGVkUHJlc2VydmVB
c3BlY3RSYXRpbzsKLSAgICBjYXNlIEFuaW1hdGVkUmVjdDoKLSAgICAgICAgcmV0dXJuIEFuaW1h
dGVkUmVjdDsKLSAgICBjYXNlIEFuaW1hdGVkVHJhbnNmb3JtTGlzdDoKLSAgICBjYXNlIEFuaW1h
dGVkVW5rbm93bjoKLSAgICAgICAgLy8gQW5pbWF0aW9ucyBvZiB0cmFuc2Zvcm0gbGlzdHMgYXJl
IG5vdCBhbGxvd2VkIGZvciA8YW5pbWF0ZT4gb3IgPHNldD4KLSAgICAgICAgLy8gaHR0cDovL3d3
dy53My5vcmcvVFIvU1ZHL2FuaW1hdGUuaHRtbCNBbmltYXRpb25BdHRyaWJ1dGVzQW5kUHJvcGVy
dGllcwotICAgICAgICByZXR1cm4gQW5pbWF0ZWRVbmtub3duOwotICAgIH0KIAotICAgIEFTU0VS
VF9OT1RfUkVBQ0hFRCgpOwotICAgIHJldHVybiBBbmltYXRlZFVua25vd247Ci19Ci0KLXZvaWQg
U1ZHQW5pbWF0ZUVsZW1lbnQ6OmNhbGN1bGF0ZUFuaW1hdGVkVmFsdWUoZmxvYXQgcGVyY2VudGFn
ZSwgdW5zaWduZWQgcmVwZWF0LCBTVkdTTUlMRWxlbWVudCogcmVzdWx0RWxlbWVudCkKLXsKLSAg
ICBBU1NFUlQocGVyY2VudGFnZSA+PSAwICYmIHBlcmNlbnRhZ2UgPD0gMSk7Ci0gICAgQVNTRVJU
KHJlc3VsdEVsZW1lbnQpOwotICAgIFNWR0VsZW1lbnQqIHRhcmdldEVsZW1lbnQgPSB0aGlzLT50
YXJnZXRFbGVtZW50KCk7Ci0gICAgaWYgKCF0YXJnZXRFbGVtZW50KQotICAgICAgICByZXR1cm47
Ci0gICAgCi0gICAgaWYgKGhhc1RhZ05hbWUoU1ZHTmFtZXM6OnNldFRhZykpCi0gICAgICAgIHBl
cmNlbnRhZ2UgPSAxOwotICAgIGlmICghcmVzdWx0RWxlbWVudC0+aGFzVGFnTmFtZShTVkdOYW1l
czo6YW5pbWF0ZVRhZykgJiYgIXJlc3VsdEVsZW1lbnQtPmhhc1RhZ05hbWUoU1ZHTmFtZXM6OmFu
aW1hdGVDb2xvclRhZykgCi0gICAgICAgICYmICFyZXN1bHRFbGVtZW50LT5oYXNUYWdOYW1lKFNW
R05hbWVzOjpzZXRUYWcpKQotICAgICAgICByZXR1cm47Ci0gICAgU1ZHQW5pbWF0ZUVsZW1lbnQq
IHJlc3VsdHMgPSBzdGF0aWNfY2FzdDxTVkdBbmltYXRlRWxlbWVudCo+KHJlc3VsdEVsZW1lbnQp
OwotICAgIC8vIENhbid0IGFjY3VtdWxhdGUgb3ZlciBhIHN0cmluZyBwcm9wZXJ0eS4KLSAgICBp
ZiAocmVzdWx0cy0+bV9hbmltYXRlZEF0dHJpYnV0ZVR5cGUgPT0gQW5pbWF0ZWRTdHJpbmcgJiYg
bV9hbmltYXRlZEF0dHJpYnV0ZVR5cGUgIT0gQW5pbWF0ZWRTdHJpbmcpCi0gICAgICAgIHJldHVy
bjsKLSAgICBzd2l0Y2ggKG1fYW5pbWF0ZWRBdHRyaWJ1dGVUeXBlKSB7Ci0gICAgY2FzZSBBbmlt
YXRlZEFuZ2xlOgotICAgIGNhc2UgQW5pbWF0ZWRCb29sZWFuOgotICAgIGNhc2UgQW5pbWF0ZWRD
b2xvcjoKLSAgICBjYXNlIEFuaW1hdGVkSW50ZWdlcjoKLSAgICBjYXNlIEFuaW1hdGVkTGVuZ3Ro
OgotICAgIGNhc2UgQW5pbWF0ZWRMZW5ndGhMaXN0OgotICAgIGNhc2UgQW5pbWF0ZWROdW1iZXI6
Ci0gICAgY2FzZSBBbmltYXRlZE51bWJlckxpc3Q6Ci0gICAgY2FzZSBBbmltYXRlZE51bWJlck9w
dGlvbmFsTnVtYmVyOgotICAgIGNhc2UgQW5pbWF0ZWRQYXRoOgotICAgIGNhc2UgQW5pbWF0ZWRQ
b2ludHM6Ci0gICAgY2FzZSBBbmltYXRlZFByZXNlcnZlQXNwZWN0UmF0aW86Ci0gICAgY2FzZSBB
bmltYXRlZFJlY3Q6Ci0gICAgY2FzZSBBbmltYXRlZFN0cmluZzogewotICAgICAgICBBU1NFUlQo
bV9hbmltYXRvcik7Ci0gICAgICAgIEFTU0VSVChyZXN1bHRzLT5tX2FuaW1hdGVkVHlwZSk7Ci0g
ICAgICAgIC8vIFRhcmdldCBlbGVtZW50IG1pZ2h0IGhhdmUgY2hhbmdlZC4KLSAgICAgICAgbV9h
bmltYXRvci0+c2V0Q29udGV4dEVsZW1lbnQodGFyZ2V0RWxlbWVudCk7Ci0gICAgICAgIG1fYW5p
bWF0b3ItPmNhbGN1bGF0ZUFuaW1hdGVkVmFsdWUocGVyY2VudGFnZSwgcmVwZWF0LCBtX2Zyb21U
eXBlLCBtX3RvVHlwZSwgcmVzdWx0cy0+bV9hbmltYXRlZFR5cGUpOwotICAgICAgICByZXR1cm47
Ci0gICAgfQotICAgIGRlZmF1bHQ6Ci0gICAgICAgIGJyZWFrOwotICAgIH0KLSAgICBBU1NFUlRf
Tk9UX1JFQUNIRUQoKTsKLX0KLQotc3RhdGljIGJvb2wgaW5oZXJpdHNGcm9tUHJvcGVydHkoU1ZH
RWxlbWVudCogdGFyZ2V0RWxlbWVudCwgY29uc3QgUXVhbGlmaWVkTmFtZSYgYXR0cmlidXRlTmFt
ZSwgY29uc3QgU3RyaW5nJiB2YWx1ZSkKLXsKLSAgICBBU1NFUlQodGFyZ2V0RWxlbWVudCk7Ci0g
ICAgREVGSU5FX1NUQVRJQ19MT0NBTChjb25zdCBBdG9taWNTdHJpbmcsIGluaGVyaXQsICgiaW5o
ZXJpdCIpKTsKLQotICAgIGlmICh2YWx1ZS5pc0VtcHR5KCkgfHwgdmFsdWUgIT0gaW5oZXJpdCB8
fCAhdGFyZ2V0RWxlbWVudC0+aXNTdHlsZWQoKSkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotICAg
IHJldHVybiBTVkdTdHlsZWRFbGVtZW50Ojppc0FuaW1hdGFibGVDU1NQcm9wZXJ0eShhdHRyaWJ1
dGVOYW1lKTsKLX0KKyAgICAvLyBBbmltYXRpb25zIG9mIHRyYW5zZm9ybSBsaXN0cyBhcmUgbm90
IGFsbG93ZWQgZm9yIDxhbmltYXRlPiBvciA8c2V0PgorICAgIC8vIGh0dHA6Ly93d3cudzMub3Jn
L1RSL1NWRy9hbmltYXRlLmh0bWwjQW5pbWF0aW9uQXR0cmlidXRlc0FuZFByb3BlcnRpZXMKKyAg
ICBpZiAodHlwZSA9PSBBbmltYXRlZFRyYW5zZm9ybUxpc3QpCisgICAgICAgIHJldHVybiBBbmlt
YXRlZFVua25vd247CiAKLXN0YXRpYyBib29sIGF0dHJpYnV0ZVZhbHVlSXNDdXJyZW50Q29sb3Io
Y29uc3QgU3RyaW5nJiB2YWx1ZSkKLXsKLSAgICBERUZJTkVfU1RBVElDX0xPQ0FMKGNvbnN0IEF0
b21pY1N0cmluZywgY3VycmVudENvbG9yLCAoImN1cnJlbnRDb2xvciIpKTsKLSAgICByZXR1cm4g
dmFsdWUgPT0gY3VycmVudENvbG9yOworICAgIHJldHVybiB0eXBlOwogfQogCiB2b2lkIFNWR0Fu
aW1hdGVFbGVtZW50OjpkZXRlcm1pbmVQcm9wZXJ0eVZhbHVlVHlwZXMoY29uc3QgU3RyaW5nJiBm
cm9tLCBjb25zdCBTdHJpbmcmIHRvKQpAQCAtMjI2LDM2ICsxNTEsNDYgQEAgdm9pZCBTVkdBbmlt
YXRlRWxlbWVudDo6ZGV0ZXJtaW5lUHJvcGVydAogICAgICAgICBtX3RvUHJvcGVydHlWYWx1ZVR5
cGUgPSBDdXJyZW50Q29sb3JWYWx1ZTsKIH0KIAordm9pZCBTVkdBbmltYXRlRWxlbWVudDo6Y2Fs
Y3VsYXRlQW5pbWF0ZWRWYWx1ZShmbG9hdCBwZXJjZW50YWdlLCB1bnNpZ25lZCByZXBlYXQsIFNW
R1NNSUxFbGVtZW50KiByZXN1bHRFbGVtZW50KQoreworICAgIEFTU0VSVChyZXN1bHRFbGVtZW50
KTsKKyAgICBBU1NFUlQocGVyY2VudGFnZSA+PSAwICYmIHBlcmNlbnRhZ2UgPD0gMSk7CisgICAg
QVNTRVJUKG1fYW5pbWF0ZWRBdHRyaWJ1dGVUeXBlICE9IEFuaW1hdGVkRW51bWVyYXRpb24pOwor
ICAgIEFTU0VSVChtX2FuaW1hdGVkQXR0cmlidXRlVHlwZSAhPSBBbmltYXRlZFRyYW5zZm9ybUxp
c3QpOworICAgIEFTU0VSVChtX2FuaW1hdGVkQXR0cmlidXRlVHlwZSAhPSBBbmltYXRlZFVua25v
d24pOworICAgIEFTU0VSVChtX2FuaW1hdG9yKTsKKyAgICBBU1NFUlQobV9mcm9tVHlwZSk7Cisg
ICAgQVNTRVJUKG1fdG9UeXBlKTsKKworICAgIFNWR0FuaW1hdGVFbGVtZW50KiByZXN1bHRBbmlt
YXRpb25FbGVtZW50ID0gc3RhdGljX2Nhc3Q8U1ZHQW5pbWF0ZUVsZW1lbnQqPihyZXN1bHRFbGVt
ZW50KTsKKyAgICBBU1NFUlQocmVzdWx0QW5pbWF0aW9uRWxlbWVudC0+bV9hbmltYXRlZFR5cGUp
OworICAgIEFTU0VSVChyZXN1bHRBbmltYXRpb25FbGVtZW50LT5tX2FuaW1hdGVkQXR0cmlidXRl
VHlwZSA9PSBtX2FuaW1hdGVkQXR0cmlidXRlVHlwZSk7CisgICAgQVNTRVJUKHJlc3VsdEFuaW1h
dGlvbkVsZW1lbnQtPmhhc1RhZ05hbWUoU1ZHTmFtZXM6OmFuaW1hdGVUYWcpCisgICAgICAgIHx8
IHJlc3VsdEFuaW1hdGlvbkVsZW1lbnQtPmhhc1RhZ05hbWUoU1ZHTmFtZXM6OmFuaW1hdGVDb2xv
clRhZykgCisgICAgICAgIHx8IHJlc3VsdEFuaW1hdGlvbkVsZW1lbnQtPmhhc1RhZ05hbWUoU1ZH
TmFtZXM6OnNldFRhZykpOworCisgICAgaWYgKGhhc1RhZ05hbWUoU1ZHTmFtZXM6OnNldFRhZykp
CisgICAgICAgIHBlcmNlbnRhZ2UgPSAxOworCisgICAgU1ZHRWxlbWVudCogdGFyZ2V0RWxlbWVu
dCA9IHRoaXMtPnRhcmdldEVsZW1lbnQoKTsKKyAgICBpZiAoIXRhcmdldEVsZW1lbnQpCisgICAg
ICAgIHJldHVybjsKKworICAgIC8vIFRhcmdldCBlbGVtZW50IG1pZ2h0IGhhdmUgY2hhbmdlZC4K
KyAgICBtX2FuaW1hdG9yLT5zZXRDb250ZXh0RWxlbWVudCh0YXJnZXRFbGVtZW50KTsKKyAgICBt
X2FuaW1hdG9yLT5jYWxjdWxhdGVBbmltYXRlZFZhbHVlKHBlcmNlbnRhZ2UsIHJlcGVhdCwgbV9m
cm9tVHlwZSwgbV90b1R5cGUsIHJlc3VsdEFuaW1hdGlvbkVsZW1lbnQtPm1fYW5pbWF0ZWRUeXBl
KTsKK30KKwogYm9vbCBTVkdBbmltYXRlRWxlbWVudDo6Y2FsY3VsYXRlRnJvbUFuZFRvVmFsdWVz
KGNvbnN0IFN0cmluZyYgZnJvbVN0cmluZywgY29uc3QgU3RyaW5nJiB0b1N0cmluZykKIHsKICAg
ICBTVkdFbGVtZW50KiB0YXJnZXRFbGVtZW50ID0gdGhpcy0+dGFyZ2V0RWxlbWVudCgpOwogICAg
IGlmICghdGFyZ2V0RWxlbWVudCkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCi0gICAgLy8gRklY
TUU6IE5lZWRzIG1vcmUgc29saWQgd2F5IGRldGVybWluZSB0YXJnZXQgYXR0cmlidXRlIHR5cGUu
CiAgICAgbV9hbmltYXRlZEF0dHJpYnV0ZVR5cGUgPSBkZXRlcm1pbmVBbmltYXRlZEF0dHJpYnV0
ZVR5cGUodGFyZ2V0RWxlbWVudCk7Ci0gICAgc3dpdGNoIChtX2FuaW1hdGVkQXR0cmlidXRlVHlw
ZSkgewotICAgIGNhc2UgQW5pbWF0ZWRBbmdsZToKLSAgICBjYXNlIEFuaW1hdGVkQm9vbGVhbjoK
LSAgICBjYXNlIEFuaW1hdGVkQ29sb3I6Ci0gICAgY2FzZSBBbmltYXRlZEludGVnZXI6Ci0gICAg
Y2FzZSBBbmltYXRlZExlbmd0aDoKLSAgICBjYXNlIEFuaW1hdGVkTGVuZ3RoTGlzdDoKLSAgICBj
YXNlIEFuaW1hdGVkTnVtYmVyOgotICAgIGNhc2UgQW5pbWF0ZWROdW1iZXJMaXN0OgotICAgIGNh
c2UgQW5pbWF0ZWROdW1iZXJPcHRpb25hbE51bWJlcjoKLSAgICBjYXNlIEFuaW1hdGVkUGF0aDoK
LSAgICBjYXNlIEFuaW1hdGVkUG9pbnRzOgotICAgIGNhc2UgQW5pbWF0ZWRQcmVzZXJ2ZUFzcGVj
dFJhdGlvOgotICAgIGNhc2UgQW5pbWF0ZWRSZWN0OgotICAgIGNhc2UgQW5pbWF0ZWRTdHJpbmc6
Ci0gICAgICAgIGVuc3VyZUFuaW1hdG9yKCktPmNhbGN1bGF0ZUZyb21BbmRUb1ZhbHVlcyhtX2Zy
b21UeXBlLCBtX3RvVHlwZSwgZnJvbVN0cmluZywgdG9TdHJpbmcpOwotICAgICAgICByZXR1cm4g
dHJ1ZTsKLSAgICBkZWZhdWx0OgotICAgICAgICBicmVhazsKLSAgICB9Ci0gICAgQVNTRVJUX05P
VF9SRUFDSEVEKCk7Ci0gICAgcmV0dXJuIGZhbHNlOworCisgICAgZW5zdXJlQW5pbWF0b3IoKS0+
Y2FsY3VsYXRlRnJvbUFuZFRvVmFsdWVzKG1fZnJvbVR5cGUsIG1fdG9UeXBlLCBmcm9tU3RyaW5n
LCB0b1N0cmluZyk7CisgICAgcmV0dXJuIHRydWU7CiB9CiAKIGJvb2wgU1ZHQW5pbWF0ZUVsZW1l
bnQ6OmNhbGN1bGF0ZUZyb21BbmRCeVZhbHVlcyhjb25zdCBTdHJpbmcmIGZyb21TdHJpbmcsIGNv
bnN0IFN0cmluZyYgYnlTdHJpbmcpCkBAIC0yNjYsMzAgKzIwMSw5IEBAIGJvb2wgU1ZHQW5pbWF0
ZUVsZW1lbnQ6OmNhbGN1bGF0ZUZyb21BbmQKIAogICAgIEFTU0VSVCghaGFzVGFnTmFtZShTVkdO
YW1lczo6c2V0VGFnKSk7CiAgICAgbV9hbmltYXRlZEF0dHJpYnV0ZVR5cGUgPSBkZXRlcm1pbmVB
bmltYXRlZEF0dHJpYnV0ZVR5cGUodGFyZ2V0RWxlbWVudCk7Ci0gICAgc3dpdGNoIChtX2FuaW1h
dGVkQXR0cmlidXRlVHlwZSkgewotICAgIGNhc2UgQW5pbWF0ZWRBbmdsZToKLSAgICBjYXNlIEFu
aW1hdGVkQm9vbGVhbjoKLSAgICBjYXNlIEFuaW1hdGVkQ29sb3I6Ci0gICAgY2FzZSBBbmltYXRl
ZEludGVnZXI6Ci0gICAgY2FzZSBBbmltYXRlZExlbmd0aDoKLSAgICBjYXNlIEFuaW1hdGVkTGVu
Z3RoTGlzdDoKLSAgICBjYXNlIEFuaW1hdGVkTnVtYmVyOgotICAgIGNhc2UgQW5pbWF0ZWROdW1i
ZXJMaXN0OgotICAgIGNhc2UgQW5pbWF0ZWROdW1iZXJPcHRpb25hbE51bWJlcjoKLSAgICBjYXNl
IEFuaW1hdGVkUG9pbnRzOgotICAgIGNhc2UgQW5pbWF0ZWRQcmVzZXJ2ZUFzcGVjdFJhdGlvOgot
ICAgIGNhc2UgQW5pbWF0ZWRSZWN0OgotICAgIGNhc2UgQW5pbWF0ZWRTdHJpbmc6Ci0gICAgICAg
IGVuc3VyZUFuaW1hdG9yKCktPmNhbGN1bGF0ZUZyb21BbmRCeVZhbHVlcyhtX2Zyb21UeXBlLCBt
X3RvVHlwZSwgZnJvbVN0cmluZywgYnlTdHJpbmcpOwotICAgICAgICByZXR1cm4gdHJ1ZTsKLSAg
ICBjYXNlIEFuaW1hdGVkUGF0aDoKLSAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7IC8vIFRo
aXMgc3RhdGUgaXMgbm90IHJlYWNoYWJsZSBmb3Igbm93LgotICAgICAgICBicmVhazsKLSAgICBk
ZWZhdWx0OgotICAgICAgICBicmVhazsKLSAgICB9Ci0gICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7
Ci0gICAgcmV0dXJuIGZhbHNlOworCisgICAgZW5zdXJlQW5pbWF0b3IoKS0+Y2FsY3VsYXRlRnJv
bUFuZEJ5VmFsdWVzKG1fZnJvbVR5cGUsIG1fdG9UeXBlLCBmcm9tU3RyaW5nLCBieVN0cmluZyk7
CisgICAgcmV0dXJuIHRydWU7CiB9CiAKIHZvaWQgU1ZHQW5pbWF0ZUVsZW1lbnQ6OnJlc2V0VG9C
YXNlVmFsdWUoY29uc3QgU3RyaW5nJiBiYXNlU3RyaW5nKQpAQCAtMjk3LDU3ICsyMTEsMjEgQEAg
dm9pZCBTVkdBbmltYXRlRWxlbWVudDo6cmVzZXRUb0Jhc2VWYWx1ZQogICAgIFNWR0VsZW1lbnQq
IHRhcmdldEVsZW1lbnQgPSB0aGlzLT50YXJnZXRFbGVtZW50KCk7CiAgICAgQVNTRVJUKHRhcmdl
dEVsZW1lbnQpOwogICAgIG1fYW5pbWF0ZWRBdHRyaWJ1dGVUeXBlID0gZGV0ZXJtaW5lQW5pbWF0
ZWRBdHRyaWJ1dGVUeXBlKHRhcmdldEVsZW1lbnQpOwotICAgIHN3aXRjaCAobV9hbmltYXRlZEF0
dHJpYnV0ZVR5cGUpIHsKLSAgICBjYXNlIEFuaW1hdGVkQW5nbGU6Ci0gICAgY2FzZSBBbmltYXRl
ZEJvb2xlYW46Ci0gICAgY2FzZSBBbmltYXRlZENvbG9yOgotICAgIGNhc2UgQW5pbWF0ZWRJbnRl
Z2VyOgotICAgIGNhc2UgQW5pbWF0ZWRMZW5ndGg6Ci0gICAgY2FzZSBBbmltYXRlZExlbmd0aExp
c3Q6Ci0gICAgY2FzZSBBbmltYXRlZE51bWJlcjoKLSAgICBjYXNlIEFuaW1hdGVkTnVtYmVyTGlz
dDoKLSAgICBjYXNlIEFuaW1hdGVkTnVtYmVyT3B0aW9uYWxOdW1iZXI6Ci0gICAgY2FzZSBBbmlt
YXRlZFBhdGg6Ci0gICAgY2FzZSBBbmltYXRlZFBvaW50czoKLSAgICBjYXNlIEFuaW1hdGVkUHJl
c2VydmVBc3BlY3RSYXRpbzoKLSAgICBjYXNlIEFuaW1hdGVkUmVjdDoKLSAgICBjYXNlIEFuaW1h
dGVkU3RyaW5nOiB7Ci0gICAgICAgIGlmICghbV9hbmltYXRlZFR5cGUpCi0gICAgICAgICAgICBt
X2FuaW1hdGVkVHlwZSA9IGVuc3VyZUFuaW1hdG9yKCktPmNvbnN0cnVjdEZyb21TdHJpbmcoYmFz
ZVN0cmluZyk7Ci0gICAgICAgIGVsc2UKLSAgICAgICAgICAgIG1fYW5pbWF0ZWRUeXBlLT5zZXRW
YWx1ZUFzU3RyaW5nKGF0dHJpYnV0ZU5hbWUoKSwgYmFzZVN0cmluZyk7Ci0gICAgICAgIHJldHVy
bjsKLSAgICB9Ci0gICAgZGVmYXVsdDoKLSAgICAgICAgYnJlYWs7Ci0gICAgfQotICAgIEFTU0VS
VF9OT1RfUkVBQ0hFRCgpOworCisgICAgaWYgKCFtX2FuaW1hdGVkVHlwZSkKKyAgICAgICAgbV9h
bmltYXRlZFR5cGUgPSBlbnN1cmVBbmltYXRvcigpLT5jb25zdHJ1Y3RGcm9tU3RyaW5nKGJhc2VT
dHJpbmcpOworICAgIGVsc2UKKyAgICAgICAgbV9hbmltYXRlZFR5cGUtPnNldFZhbHVlQXNTdHJp
bmcoYXR0cmlidXRlTmFtZSgpLCBiYXNlU3RyaW5nKTsKIH0KICAgICAKIHZvaWQgU1ZHQW5pbWF0
ZUVsZW1lbnQ6OmFwcGx5UmVzdWx0c1RvVGFyZ2V0KCkKIHsKLSAgICBTdHJpbmcgdmFsdWVUb0Fw
cGx5OwotICAgIHN3aXRjaCAobV9hbmltYXRlZEF0dHJpYnV0ZVR5cGUpIHsKLSAgICBjYXNlIEFu
aW1hdGVkQW5nbGU6Ci0gICAgY2FzZSBBbmltYXRlZEJvb2xlYW46Ci0gICAgY2FzZSBBbmltYXRl
ZENvbG9yOgotICAgIGNhc2UgQW5pbWF0ZWRJbnRlZ2VyOgotICAgIGNhc2UgQW5pbWF0ZWRMZW5n
dGg6Ci0gICAgY2FzZSBBbmltYXRlZExlbmd0aExpc3Q6Ci0gICAgY2FzZSBBbmltYXRlZE51bWJl
cjoKLSAgICBjYXNlIEFuaW1hdGVkTnVtYmVyTGlzdDoKLSAgICBjYXNlIEFuaW1hdGVkTnVtYmVy
T3B0aW9uYWxOdW1iZXI6Ci0gICAgY2FzZSBBbmltYXRlZFBhdGg6Ci0gICAgY2FzZSBBbmltYXRl
ZFBvaW50czoKLSAgICBjYXNlIEFuaW1hdGVkUHJlc2VydmVBc3BlY3RSYXRpbzoKLSAgICBjYXNl
IEFuaW1hdGVkUmVjdDoKLSAgICBjYXNlIEFuaW1hdGVkU3RyaW5nOgotICAgICAgICB2YWx1ZVRv
QXBwbHkgPSBtX2FuaW1hdGVkVHlwZS0+dmFsdWVBc1N0cmluZygpOwotICAgICAgICBicmVhazsK
LSAgICBkZWZhdWx0OgotICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICB9Ci0gICAg
c2V0VGFyZ2V0QXR0cmlidXRlQW5pbWF0ZWRWYWx1ZSh2YWx1ZVRvQXBwbHkpOworICAgIEFTU0VS
VChtX2FuaW1hdGVkQXR0cmlidXRlVHlwZSAhPSBBbmltYXRlZEVudW1lcmF0aW9uKTsKKyAgICBB
U1NFUlQobV9hbmltYXRlZEF0dHJpYnV0ZVR5cGUgIT0gQW5pbWF0ZWRUcmFuc2Zvcm1MaXN0KTsK
KyAgICBBU1NFUlQobV9hbmltYXRlZEF0dHJpYnV0ZVR5cGUgIT0gQW5pbWF0ZWRVbmtub3duKTsK
KyAgICBBU1NFUlQobV9hbmltYXRlZFR5cGUpOworCisgICAgc2V0VGFyZ2V0QXR0cmlidXRlQW5p
bWF0ZWRWYWx1ZShtX2FuaW1hdGVkVHlwZS0+dmFsdWVBc1N0cmluZygpKTsKIH0KICAgICAKIGZs
b2F0IFNWR0FuaW1hdGVFbGVtZW50OjpjYWxjdWxhdGVEaXN0YW5jZShjb25zdCBTdHJpbmcmIGZy
b21TdHJpbmcsIGNvbnN0IFN0cmluZyYgdG9TdHJpbmcpCkBAIC0zNTcsMjcgKzIzNSw4IEBAIGZs
b2F0IFNWR0FuaW1hdGVFbGVtZW50OjpjYWxjdWxhdGVEaXN0YW4KICAgICBpZiAoIXRhcmdldEVs
ZW1lbnQpCiAgICAgICAgIHJldHVybiAtMTsKICAgICBtX2FuaW1hdGVkQXR0cmlidXRlVHlwZSA9
IGRldGVybWluZUFuaW1hdGVkQXR0cmlidXRlVHlwZSh0YXJnZXRFbGVtZW50KTsKLSAgICBzd2l0
Y2ggKG1fYW5pbWF0ZWRBdHRyaWJ1dGVUeXBlKSB7Ci0gICAgY2FzZSBBbmltYXRlZEFuZ2xlOgot
ICAgIGNhc2UgQW5pbWF0ZWRCb29sZWFuOgotICAgIGNhc2UgQW5pbWF0ZWRDb2xvcjoKLSAgICBj
YXNlIEFuaW1hdGVkSW50ZWdlcjoKLSAgICBjYXNlIEFuaW1hdGVkTGVuZ3RoOgotICAgIGNhc2Ug
QW5pbWF0ZWRMZW5ndGhMaXN0OgotICAgIGNhc2UgQW5pbWF0ZWROdW1iZXI6Ci0gICAgY2FzZSBB
bmltYXRlZE51bWJlckxpc3Q6Ci0gICAgY2FzZSBBbmltYXRlZE51bWJlck9wdGlvbmFsTnVtYmVy
OgotICAgIGNhc2UgQW5pbWF0ZWRQYXRoOgotICAgIGNhc2UgQW5pbWF0ZWRQb2ludHM6Ci0gICAg
Y2FzZSBBbmltYXRlZFByZXNlcnZlQXNwZWN0UmF0aW86Ci0gICAgY2FzZSBBbmltYXRlZFJlY3Q6
Ci0gICAgY2FzZSBBbmltYXRlZFN0cmluZzoKLSAgICAgICAgcmV0dXJuIGVuc3VyZUFuaW1hdG9y
KCktPmNhbGN1bGF0ZURpc3RhbmNlKGZyb21TdHJpbmcsIHRvU3RyaW5nKTsKLSAgICBkZWZhdWx0
OgotICAgICAgICBicmVhazsKLSAgICB9Ci0gICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0gICAg
cmV0dXJuIC0xOworICAgIAorICAgIHJldHVybiBlbnN1cmVBbmltYXRvcigpLT5jYWxjdWxhdGVE
aXN0YW5jZShmcm9tU3RyaW5nLCB0b1N0cmluZyk7CiB9CiAKIFNWR0FuaW1hdGVkVHlwZUFuaW1h
dG9yKiBTVkdBbmltYXRlRWxlbWVudDo6ZW5zdXJlQW5pbWF0b3IoKQpJbmRleDogU291cmNlL1dl
YkNvcmUvc3ZnL1NWR0FuaW1hdGVkUGF0aC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNv
cmUvc3ZnL1NWR0FuaW1hdGVkUGF0aC5jcHAJKHJldmlzaW9uIDkwMjE4KQorKysgU291cmNlL1dl
YkNvcmUvc3ZnL1NWR0FuaW1hdGVkUGF0aC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTY5LDkgKzY5
LDEwIEBAIHZvaWQgU1ZHQW5pbWF0ZWRQYXRoQW5pbWF0b3I6OmNhbGN1bGF0ZUYKICAgICBmcm9t
ID0gU1ZHQW5pbWF0ZWRUeXBlOjpjcmVhdGVQYXRoKFNWR1BhdGhCeXRlU3RyZWFtOjpjcmVhdGUo
KSk7CiB9CiAKLXZvaWQgU1ZHQW5pbWF0ZWRQYXRoQW5pbWF0b3I6OmNhbGN1bGF0ZUZyb21BbmRC
eVZhbHVlcyhPd25QdHI8U1ZHQW5pbWF0ZWRUeXBlPiYsIE93blB0cjxTVkdBbmltYXRlZFR5cGU+
JiwgY29uc3QgU3RyaW5nJiwgY29uc3QgU3RyaW5nJikKK3ZvaWQgU1ZHQW5pbWF0ZWRQYXRoQW5p
bWF0b3I6OmNhbGN1bGF0ZUZyb21BbmRCeVZhbHVlcyhPd25QdHI8U1ZHQW5pbWF0ZWRUeXBlPiYg
ZnJvbSwgT3duUHRyPFNWR0FuaW1hdGVkVHlwZT4mIGJ5LCBjb25zdCBTdHJpbmcmIGZyb21TdHJp
bmcsIGNvbnN0IFN0cmluZyYgYnlTdHJpbmcpCiB7Ci0gICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7
CisgICAgLy8gRmFsbGJhY2sgdG8gZnJvbS10byBhbmltYXRpb24sIHNpbmNlIGZyb20tYnkgYW5p
bWF0aW9uIGRvZXMgbm90IG1ha2Ugc2Vuc2UuCisgICAgY2FsY3VsYXRlRnJvbUFuZFRvVmFsdWVz
KGZyb20sIGJ5LCBmcm9tU3RyaW5nLCBieVN0cmluZyk7CiB9CiAKIHZvaWQgU1ZHQW5pbWF0ZWRQ
YXRoQW5pbWF0b3I6OmNhbGN1bGF0ZUFuaW1hdGVkVmFsdWUoZmxvYXQgcGVyY2VudGFnZSwgdW5z
aWduZWQsIE93blB0cjxTVkdBbmltYXRlZFR5cGU+JiBmcm9tLCBPd25QdHI8U1ZHQW5pbWF0ZWRU
eXBlPiYgdG8sIE93blB0cjxTVkdBbmltYXRlZFR5cGU+JiBhbmltYXRlZCkKSW5kZXg6IExheW91
dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDkwMzE2KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjAgQEAKKzIwMTEtMDctMDIgIERpcmsgU2NodWx6ZSAgPGtyaXRAd2Via2l0Lm9y
Zz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBTVkdB
bmltYXRlZFBhdGggbmVlZHMgZmFsbGJhY2sgZm9yICdieScgYW5pbWF0aW9uCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02Mzg2NQorCisgICAgICAgIFRl
c3QgZmFsbGJhY2sgdG8gJ3RvJyBhbmltYXRpb24gZm9yICdieScgYW5pbWF0ZWQgU1ZHUGF0aC4K
KworICAgICAgICAqIHN2Zy9hbmltYXRpb25zL3NjcmlwdC10ZXN0cy9zdmdwYXRoLWFuaW1hdGlv
bi0xLmpzOiBBZGRlZC4KKyAgICAgICAgKHNhbXBsZTEpOgorICAgICAgICAoc2FtcGxlMik6Cisg
ICAgICAgIChzYW1wbGUzKToKKyAgICAgICAgKGV4ZWN1dGVUZXN0KToKKyAgICAgICAgKiBzdmcv
YW5pbWF0aW9ucy9zdmdwYXRoLWFuaW1hdGlvbi0xLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAg
ICAgICogc3ZnL2FuaW1hdGlvbnMvc3ZncGF0aC1hbmltYXRpb24tMS5odG1sOiBBZGRlZC4KKwog
MjAxMS0wNy0wMiAgS2VudCBUYW11cmEgIDx0a2VudEBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAg
W0dUS10gVXBkYXRlIGV4cGVjdGF0aW9uIG9mIGZhc3QvZm9ybXMvaW5wdXQtZmlsZS1yZS1yZW5k
ZXIuaHRtbApJbmRleDogTGF5b3V0VGVzdHMvc3ZnL2FuaW1hdGlvbnMvc3ZncGF0aC1hbmltYXRp
b24tMS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvc3ZnL2FuaW1hdGlv
bnMvc3ZncGF0aC1hbmltYXRpb24tMS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlv
dXRUZXN0cy9zdmcvYW5pbWF0aW9ucy9zdmdwYXRoLWFuaW1hdGlvbi0xLWV4cGVjdGVkLnR4dAko
cmV2aXNpb24gMCkKQEAgLTAsMCArMSwxOSBAQAorU1ZHIDEuMSBkeW5hbWljIGFuaW1hdGlvbiB0
ZXN0cworCitUZXN0IGZhbGxiYWNrIHRvICd0bycgYW5pbWF0aW9uIGlmIHVzZXIgc3BlY2lmaWVz
ICdieScgYW5pbWF0aW9uIG9uIHBhdGguIFlvdSBzaG91bGQgc2VlIGEgZ3JlZW4gMTAweDEwMCBw
YXRoIGFuZCBvbmx5IFBBU1MgbWVzc2FnZXMKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEg
c2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgor
CisKK1BBU1MgcGF0aC5wYXRoU2VnTGlzdC5nZXRJdGVtKDApLnggaXMgNDAKK1BBU1MgcGF0aC5w
YXRoU2VnTGlzdC5nZXRJdGVtKDApLnkgaXMgNDAKK1BBU1MgcGF0aC5wYXRoU2VnTGlzdC5nZXRJ
dGVtKDApLnggaXMgMjAKK1BBU1MgcGF0aC5wYXRoU2VnTGlzdC5nZXRJdGVtKDApLnkgaXMgMjAK
K1BBU1MgcGF0aC5wYXRoU2VnTGlzdC5nZXRJdGVtKDApLnggaXMgMAorUEFTUyBwYXRoLnBhdGhT
ZWdMaXN0LmdldEl0ZW0oMCkueSBpcyAwCitQQVNTIHBhdGgucGF0aFNlZ0xpc3QuZ2V0SXRlbSgw
KS54IGlzIDQwCitQQVNTIHBhdGgucGF0aFNlZ0xpc3QuZ2V0SXRlbSgwKS55IGlzIDQwCitQQVNT
IHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpJbmRleDogTGF5
b3V0VGVzdHMvc3ZnL2FuaW1hdGlvbnMvc3ZncGF0aC1hbmltYXRpb24tMS5odG1sCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIExheW91dFRlc3RzL3N2Zy9hbmltYXRpb25zL3N2Z3BhdGgtYW5pbWF0aW9uLTEuaHRt
bAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL3N2Zy9hbmltYXRpb25zL3N2Z3BhdGgtYW5p
bWF0aW9uLTEuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxNSBAQAorPCFET0NUWVBFIEhU
TUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxsaW5r
IHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1z
dHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3Qt
cHJlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi9keW5hbWljLXVwZGF0ZXMvcmVzb3Vy
Y2VzL1NWR1Rlc3RDYXNlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvU1ZH
QW5pbWF0aW9uVGVzdENhc2UuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8aDE+U1ZH
IDEuMSBkeW5hbWljIGFuaW1hdGlvbiB0ZXN0czwvaDE+Cis8cCBpZD0iZGVzY3JpcHRpb24iPjwv
cD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdCBzcmM9InNjcmlwdC10ZXN0cy9z
dmdwYXRoLWFuaW1hdGlvbi0xLmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KSW5kZXg6
IExheW91dFRlc3RzL3N2Zy9hbmltYXRpb25zL3NjcmlwdC10ZXN0cy9zdmdwYXRoLWFuaW1hdGlv
bi0xLmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3N2Zy9hbmltYXRpb25zL3NjcmlwdC10
ZXN0cy9zdmdwYXRoLWFuaW1hdGlvbi0xLmpzCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMv
c3ZnL2FuaW1hdGlvbnMvc2NyaXB0LXRlc3RzL3N2Z3BhdGgtYW5pbWF0aW9uLTEuanMJKHJldmlz
aW9uIDApCkBAIC0wLDAgKzEsNTMgQEAKK2Rlc2NyaXB0aW9uKCJUZXN0IGZhbGxiYWNrIHRvICd0
bycgYW5pbWF0aW9uIGlmIHVzZXIgc3BlY2lmaWVzICdieScgYW5pbWF0aW9uIG9uIHBhdGguIFlv
dSBzaG91bGQgc2VlIGEgZ3JlZW4gMTAweDEwMCBwYXRoIGFuZCBvbmx5IFBBU1MgbWVzc2FnZXMi
KTsKK2NyZWF0ZVNWR1Rlc3RDYXNlKCk7CisvLyBGSVhNRTogV2Ugc2hvdWxkIG1vdmUgdG8gYW5p
bWF0ZVBhdGhTZWdMaXN0LCBvbmNlIGl0IGlzIGltcGxlbWVudGVkLgorCisvLyBTZXR1cCB0ZXN0
IGRvY3VtZW50Cit2YXIgcGF0aCA9IGNyZWF0ZVNWR0VsZW1lbnQoInBhdGgiKTsKK3BhdGguc2V0
QXR0cmlidXRlKCJpZCIsICJwYXRoIik7CitwYXRoLnNldEF0dHJpYnV0ZSgiZCIsICJNIDQwIDQw
IEwgNjAgNDAgTCA2MCA2MCBMIDQwIDYwIHoiKTsKK3BhdGguc2V0QXR0cmlidXRlKCJmaWxsIiwg
ImdyZWVuIik7CitwYXRoLnNldEF0dHJpYnV0ZSgib25jbGljayIsICJleGVjdXRlVGVzdCgpIik7
CisKK3ZhciBhbmltYXRlID0gY3JlYXRlU1ZHRWxlbWVudCgiYW5pbWF0ZSIpOworYW5pbWF0ZS5z
ZXRBdHRyaWJ1dGUoImlkIiwgImFuaW1hdGlvbiIpOworYW5pbWF0ZS5zZXRBdHRyaWJ1dGUoImF0
dHJpYnV0ZU5hbWUiLCAiZCIpOworYW5pbWF0ZS5zZXRBdHRyaWJ1dGUoImZyb20iLCAiTSA0MCA0
MCBMIDYwIDQwIEwgNjAgNjAgTCA0MCA2MCB6Iik7CithbmltYXRlLnNldEF0dHJpYnV0ZSgiYnki
LCAiTSAwIDAgTCAxMDAgMCBMIDEwMCAxMDAgTCAwIDEwMCB6Iik7CithbmltYXRlLnNldEF0dHJp
YnV0ZSgiYmVnaW4iLCAiY2xpY2siKTsKK2FuaW1hdGUuc2V0QXR0cmlidXRlKCJkdXIiLCAiNHMi
KTsKK3BhdGguYXBwZW5kQ2hpbGQoYW5pbWF0ZSk7Cityb290U1ZHRWxlbWVudC5hcHBlbmRDaGls
ZChwYXRoKTsKKworLy8gU2V0dXAgYW5pbWF0aW9uIHRlc3QKK2Z1bmN0aW9uIHNhbXBsZTEoKSB7
CisgICAgLy8gQ2hlY2sgaW5pdGlhbC9lbmQgY29uZGl0aW9ucworICAgIHNob3VsZEJlKCJwYXRo
LnBhdGhTZWdMaXN0LmdldEl0ZW0oMCkueCIsICI0MCIpOworICAgIHNob3VsZEJlKCJwYXRoLnBh
dGhTZWdMaXN0LmdldEl0ZW0oMCkueSIsICI0MCIpOworfQorCitmdW5jdGlvbiBzYW1wbGUyKCkg
eworICAgIHNob3VsZEJlQ2xvc2VFbm91Z2goInBhdGgucGF0aFNlZ0xpc3QuZ2V0SXRlbSgwKS54
IiwgIjIwIiwgMC4wMSk7CisgICAgc2hvdWxkQmVDbG9zZUVub3VnaCgicGF0aC5wYXRoU2VnTGlz
dC5nZXRJdGVtKDApLnkiLCAiMjAiLCAwLjAxKTsKK30KKworZnVuY3Rpb24gc2FtcGxlMygpIHsK
KyAgICBzaG91bGRCZUNsb3NlRW5vdWdoKCJwYXRoLnBhdGhTZWdMaXN0LmdldEl0ZW0oMCkueCIs
ICIwIiwgMC4wMSk7CisgICAgc2hvdWxkQmVDbG9zZUVub3VnaCgicGF0aC5wYXRoU2VnTGlzdC5n
ZXRJdGVtKDApLnkiLCAiMCIsIDAuMDEpOworfQorCitmdW5jdGlvbiBleGVjdXRlVGVzdCgpIHsK
KyAgICBjb25zdCBleHBlY3RlZFZhbHVlcyA9IFsKKyAgICAgICAgLy8gW2FuaW1hdGlvbklkLCB0
aW1lLCBlbGVtZW50SWQsIHNhbXBsZUNhbGxiYWNrXQorICAgICAgICBbImFuaW1hdGlvbiIsIDAu
MCwgICAgInBhdGgiLCBzYW1wbGUxXSwKKyAgICAgICAgWyJhbmltYXRpb24iLCAyLjAsICAgICJw
YXRoIiwgc2FtcGxlMl0sCisgICAgICAgIFsiYW5pbWF0aW9uIiwgMy45OTk5LCAicGF0aCIsIHNh
bXBsZTNdLAorICAgICAgICBbImFuaW1hdGlvbiIsIDQuMCAsICAgInBhdGgiLCBzYW1wbGUxXQor
ICAgIF07CisKKyAgICBydW5BbmltYXRpb25UZXN0KGV4cGVjdGVkVmFsdWVzKTsKK30KKworLy8g
QmVnaW4gdGVzdCBhc3luYword2luZG93LnNldFRpbWVvdXQoInRyaWdnZXJVcGRhdGUoNTAsIDUw
KSIsIDApOwordmFyIHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7Cg==
</data>
<flag name="review"
          id="94075"
          type_id="1"
          status="+"
          setter="rwlbuis"
    />
          </attachment>
      

    </bug>

</bugzilla>