<?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>46827</bug_id>
          
          <creation_ts>2010-09-29 11:26:46 -0700</creation_ts>
          <short_desc>AX: implement CSS3 Speech &quot;speak&quot;</short_desc>
          <delta_ts>2014-05-04 07:30:47 -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>Accessibility</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>OS X 10.5</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>46845</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="chris fleizach">cfleizach</reporter>
          <assigned_to name="chris fleizach">cfleizach</assigned_to>
          <cc>abarth</cc>
    
    <cc>bdakin</cc>
    
    <cc>eric</cc>
    
    <cc>mike</cc>
    
    <cc>senorblanco</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>287015</commentid>
    <comment_count>0</comment_count>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2010-09-29 11:26:46 -0700</bug_when>
    <thetext>As defined in
http://www.w3.org/TR/css3-speech/#speak

This will be very helpful in aiding how certain things are pronounced on the web. specifically numbers and punctuation</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>287016</commentid>
    <comment_count>1</comment_count>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2010-09-29 11:26:53 -0700</bug_when>
    <thetext>&lt;rdar://problem/8282101&gt; AX: implement CSS3 Speech &quot;speak&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>287021</commentid>
    <comment_count>2</comment_count>
      <attachid>69233</attachid>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2010-09-29 11:32:57 -0700</bug_when>
    <thetext>Created attachment 69233
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>287022</commentid>
    <comment_count>3</comment_count>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2010-09-29 11:33:34 -0700</bug_when>
    <thetext>there&apos;s no mac implementation yet, as no API has been defined. the first customer of this will be iOS</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>287078</commentid>
    <comment_count>4</comment_count>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2010-09-29 13:01:14 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/68680</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>287154</commentid>
    <comment_count>5</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-09-29 15:07:52 -0700</bug_when>
    <thetext>I think this broke a whole bunch of tests on Snow Leopard.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>287159</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-09-29 15:13:23 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/68680 might have broken GTK Linux 32-bit Release, GTK Linux 64-bit Debug, and Qt Linux Release minimal
The following changes are on the blame list:
http://trac.webkit.org/changeset/68680
http://trac.webkit.org/changeset/68679</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>287171</commentid>
    <comment_count>7</comment_count>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2010-09-29 15:37:08 -0700</bug_when>
    <thetext>Will resolve asap

(In reply to comment #6)
&gt; http://trac.webkit.org/changeset/68680 might have broken GTK Linux 32-bit Release, GTK Linux 64-bit Debug, and Qt Linux Release minimal
&gt; The following changes are on the blame list:
&gt; http://trac.webkit.org/changeset/68680
&gt; http://trac.webkit.org/changeset/68679</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>287181</commentid>
    <comment_count>8</comment_count>
    <who name="Stephen White">senorblanco</who>
    <bug_when>2010-09-29 15:54:20 -0700</bug_when>
    <thetext>(In reply to comment #7)
&gt; Will resolve asap
&gt; 
&gt; (In reply to comment #6)
&gt; &gt; http://trac.webkit.org/changeset/68680 might have broken GTK Linux 32-bit Release, GTK Linux 64-bit Debug, and Qt Linux Release minimal
&gt; &gt; The following changes are on the blame list:
&gt; &gt; http://trac.webkit.org/changeset/68680
&gt; &gt; http://trac.webkit.org/changeset/68679

BTW, if this patch does get reverted for whatever reason, pls revert r68685 as well (it contains new Chrome baselines resulting from this patch).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>287218</commentid>
    <comment_count>9</comment_count>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2010-09-29 16:52:00 -0700</bug_when>
    <thetext>fix for GTK layout test
http://trac.webkit.org/changeset/68714</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>287236</commentid>
    <comment_count>10</comment_count>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2010-09-29 17:15:42 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/68728</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>287248</commentid>
    <comment_count>11</comment_count>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2010-09-29 17:32:33 -0700</bug_when>
    <thetext>this should get things working again (except QT minimal, which i am trying to force rebuild)

http://trac.webkit.org/changeset/68730</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1006482</commentid>
    <comment_count>12</comment_count>
    <who name="Mike Gifford">mike</who>
    <bug_when>2014-05-04 07:30:47 -0700</bug_when>
    <thetext>According to http://css3test.com this is still a problem.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>69233</attachid>
            <date>2010-09-29 11:32:57 -0700</date>
            <delta_ts>2010-09-29 12:52:30 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-46827-20100929113256.patch</filename>
            <type>text/plain</type>
            <size>22044</size>
            <attacher name="chris fleizach">cfleizach</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA2ODY2OSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsNDMgQEAKKzIwMTAtMDktMjkgIENocmlzIEZsZWl6YWNoICA8Y2ZsZWl6YWNoQGFw
cGxlLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBBWDogaW1wbGVtZW50IENTUzMgU3BlZWNoICJzcGVhayIKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQ2ODI3CisKKyAgICAgICAgU3VwcG9ydCB0aGUg
InNwZWFrIiBzdHlsZSBhcyBkZWZpbmVkIGluCisgICAgICAgIGh0dHA6Ly93d3cudzMub3JnL1RS
L2NzczMtc3BlZWNoLyNzcGVhaworCisgICAgICAgIFRoaXMgcHV0cyBhbGwgdGhlIHBpZWNlcyBp
biBwbGFjZSBmb3IgYSBwbGF0Zm9ybSB0byBzdXBwb3J0IHRoaXMgYWJpbGl0eSwgYnV0IHRoZXJl
J3Mgbm8gcGxhdGZvcm0gaW1wbGVtZW50YXRpb24geWV0LgorCisgICAgICAgIFRlc3Q6IHBsYXRm
b3JtL21hYy9hY2Nlc3NpYmlsaXR5L2Nzcy1zcGVlY2gtc3BlYWsuaHRtbAorCisgICAgICAgICog
YWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5T2JqZWN0Lmg6CisgICAgICAgIChXZWJDb3JlOjpB
Y2Nlc3NpYmlsaXR5T2JqZWN0OjpzcGVha1Byb3BlcnR5KToKKyAgICAgICAgKiBhY2Nlc3NpYmls
aXR5L0FjY2Vzc2liaWxpdHlSZW5kZXJPYmplY3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6QWNj
ZXNzaWJpbGl0eVJlbmRlck9iamVjdDo6c3BlYWtQcm9wZXJ0eSk6CisgICAgICAgICogYWNjZXNz
aWJpbGl0eS9BY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0Lmg6CisgICAgICAgICogYWNjZXNzaWJp
bGl0eS9tYWMvQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXIubW06CisgICAgICAgICgtW0FjY2Vz
c2liaWxpdHlPYmplY3RXcmFwcGVyIGFjY2Vzc2liaWxpdHlBdHRyaWJ1dGVWYWx1ZTpdKToKKyAg
ICAgICAgKiBjc3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkNTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbjo6Z2V0UHJvcGVydHlDU1NWYWx1ZSk6
CisgICAgICAgICogY3NzL0NTU1ByaW1pdGl2ZVZhbHVlTWFwcGluZ3MuaDoKKyAgICAgICAgKFdl
YkNvcmU6OkNTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZSk6CisgICAgICAgIChX
ZWJDb3JlOjpDU1NQcmltaXRpdmVWYWx1ZTo6b3BlcmF0b3IgRVNwZWFrKToKKyAgICAgICAgKiBj
c3MvQ1NTUHJvcGVydHlOYW1lcy5pbjoKKyAgICAgICAgKiBjc3MvQ1NTU3R5bGVTZWxlY3Rvci5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NTdHlsZVNlbGVjdG9yOjphcHBseVByb3BlcnR5KToK
KyAgICAgICAgKiBjc3MvQ1NTVmFsdWVLZXl3b3Jkcy5pbjoKKyAgICAgICAgKiByZW5kZXJpbmcv
c3R5bGUvUmVuZGVyU3R5bGUuaDoKKyAgICAgICAgKFdlYkNvcmU6OkluaGVyaXRlZEZsYWdzOjpz
cGVhayk6CisgICAgICAgIChXZWJDb3JlOjpJbmhlcml0ZWRGbGFnczo6c2V0U3BlYWspOgorICAg
ICAgICAoV2ViQ29yZTo6SW5oZXJpdGVkRmxhZ3M6OmluaXRpYWxTcGVhayk6CisgICAgICAgICog
cmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmg6CisgICAgICAgICogcmVuZGVy
aW5nL3N0eWxlL1N0eWxlUmFyZUluaGVyaXRlZERhdGEuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
U3R5bGVSYXJlSW5oZXJpdGVkRGF0YTo6U3R5bGVSYXJlSW5oZXJpdGVkRGF0YSk6CisgICAgICAg
IChXZWJDb3JlOjpTdHlsZVJhcmVJbmhlcml0ZWREYXRhOjpvcGVyYXRvcj09KToKKyAgICAgICAg
KiByZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlSW5oZXJpdGVkRGF0YS5oOgorCiAyMDEwLTA5LTI5
ICBNYXR0IFBlcnJ5ICA8bXBjb21wbGV0ZUBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3
ZWQgYnkgRGFyaW4gRmlzaGVyLgpJbmRleDogV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2li
aWxpdHlPYmplY3QuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNz
aWJpbGl0eU9iamVjdC5oCShyZXZpc2lvbiA2ODQ2MCkKKysrIFdlYkNvcmUvYWNjZXNzaWJpbGl0
eS9BY2Nlc3NpYmlsaXR5T2JqZWN0LmgJKHdvcmtpbmcgY29weSkKQEAgLTUzNiw2ICs1MzYsOSBA
QCBwdWJsaWM6CiAgICAgCiAgICAgYm9vbCBzdXBwb3J0c0FSSUFBdHRyaWJ1dGVzKCkgY29uc3Q7
CiAgICAgCisgICAgLy8gQ1NTMyBTcGVlY2ggcHJvcGVydGllcy4KKyAgICB2aXJ0dWFsIEVTcGVh
ayBzcGVha1Byb3BlcnR5KCkgY29uc3QgeyByZXR1cm4gU3BlYWtOb3JtYWw7IH0KKyAgICAKICNp
ZiBIQVZFKEFDQ0VTU0lCSUxJVFkpCiAjaWYgUExBVEZPUk0oR1RLKQogICAgIEFjY2Vzc2liaWxp
dHlPYmplY3RXcmFwcGVyKiB3cmFwcGVyKCkgY29uc3Q7CkluZGV4OiBXZWJDb3JlL2FjY2Vzc2li
aWxpdHkvQWNjZXNzaWJpbGl0eVJlbmRlck9iamVjdC5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29y
ZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlSZW5kZXJPYmplY3QuY3BwCShyZXZpc2lvbiA2
ODQ2MCkKKysrIFdlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0
LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTQ4Nyw2ICsxNDg3LDE0IEBAIEFjY2Vzc2liaWxpdHlP
YmplY3QqIEFjY2Vzc2liaWxpdHlSZW5kZXIKICAgICByZXR1cm4gZmlyc3RBY2Nlc3NpYmxlT2Jq
ZWN0RnJvbU5vZGUobGlua2VkTm9kZSk7CiB9CiAKK0VTcGVhayBBY2Nlc3NpYmlsaXR5UmVuZGVy
T2JqZWN0OjpzcGVha1Byb3BlcnR5KCkgY29uc3QKK3sKKyAgICBpZiAoIW1fcmVuZGVyZXIpCisg
ICAgICAgIHJldHVybiBBY2Nlc3NpYmlsaXR5T2JqZWN0OjpzcGVha1Byb3BlcnR5KCk7CisgICAg
CisgICAgcmV0dXJuIG1fcmVuZGVyZXItPnN0eWxlKCktPnNwZWFrKCk7Cit9CisgICAgCiB2b2lk
IEFjY2Vzc2liaWxpdHlSZW5kZXJPYmplY3Q6OmFkZFJhZGlvQnV0dG9uR3JvdXBNZW1iZXJzKEFj
Y2Vzc2liaWxpdHlDaGlsZHJlblZlY3RvciYgbGlua2VkVUlFbGVtZW50cykgY29uc3QKIHsKICAg
ICBpZiAoIW1fcmVuZGVyZXIgfHwgcm9sZVZhbHVlKCkgIT0gUmFkaW9CdXR0b25Sb2xlKQpJbmRl
eDogV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlSZW5kZXJPYmplY3QuaAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBXZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eVJlbmRlck9iamVj
dC5oCShyZXZpc2lvbiA2ODQ2MCkKKysrIFdlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmls
aXR5UmVuZGVyT2JqZWN0LmgJKHdvcmtpbmcgY29weSkKQEAgLTMwMSw2ICszMDEsOCBAQCBwcml2
YXRlOgogICAgIFN0cmluZyBhY2Nlc3NpYmlsaXR5RGVzY3JpcHRpb25Gb3JFbGVtZW50cyhWZWN0
b3I8RWxlbWVudCo+ICZlbGVtZW50cykgY29uc3Q7CiAgICAgdm9pZCBlbGVtZW50c0Zyb21BdHRy
aWJ1dGUoVmVjdG9yPEVsZW1lbnQqPiYgZWxlbWVudHMsIGNvbnN0IFF1YWxpZmllZE5hbWUmIG5h
bWUpIGNvbnN0OwogICAgIAorICAgIHZpcnR1YWwgRVNwZWFrIHNwZWFrUHJvcGVydHkoKSBjb25z
dDsKKyAgICAKICAgICB2aXJ0dWFsIGNvbnN0IEF0b21pY1N0cmluZyYgYXJpYUxpdmVSZWdpb25T
dGF0dXMoKSBjb25zdDsKICAgICB2aXJ0dWFsIGNvbnN0IEF0b21pY1N0cmluZyYgYXJpYUxpdmVS
ZWdpb25SZWxldmFudCgpIGNvbnN0OwogICAgIHZpcnR1YWwgYm9vbCBhcmlhTGl2ZVJlZ2lvbkF0
b21pYygpIGNvbnN0OwpJbmRleDogV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L21hYy9BY2Nlc3NpYmls
aXR5T2JqZWN0V3JhcHBlci5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2FjY2Vzc2liaWxpdHkv
bWFjL0FjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyLm1tCShyZXZpc2lvbiA2ODQ2MSkKKysrIFdl
YkNvcmUvYWNjZXNzaWJpbGl0eS9tYWMvQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXIubW0JKHdv
cmtpbmcgY29weSkKQEAgLTE4ODgsNiArMTg4OCwyNiBAQCAtIChpZClhY2Nlc3NpYmlsaXR5QXR0
cmlidXRlVmFsdWU6KE5TU3RyCiAgICAgaWYgKFthdHRyaWJ1dGVOYW1lIGlzRXF1YWxUb1N0cmlu
ZzpAIkFYQ2xpY2tQb2ludCJdKQogICAgICAgICByZXR1cm4gW05TVmFsdWUgdmFsdWVXaXRoUG9p
bnQ6bV9vYmplY3QtPmNsaWNrUG9pbnQoKV07CiAgICAgCisgICAgLy8gVGhpcyBpcyB1c2VkIGJ5
IERSVCB0byB2ZXJpZnkgQ1NTMyBzcGVlY2ggd29ya3MuCisgICAgaWYgKFthdHRyaWJ1dGVOYW1l
IGlzRXF1YWxUb1N0cmluZzpAIkFYRFJUU3BlZWNoQXR0cmlidXRlIl0pIHsKKyAgICAgICAgRVNw
ZWFrIHNwZWFrUHJvcGVydHkgPSBtX29iamVjdC0+c3BlYWtQcm9wZXJ0eSgpOworICAgICAgICBz
d2l0Y2ggKHNwZWFrUHJvcGVydHkpIHsKKyAgICAgICAgY2FzZSBTcGVha05vbmU6CisgICAgICAg
ICAgICByZXR1cm4gQCJub25lIjsKKyAgICAgICAgY2FzZSBTcGVha1NwZWxsT3V0OgorICAgICAg
ICAgICAgcmV0dXJuIEAic3BlbGwtb3V0IjsKKyAgICAgICAgY2FzZSBTcGVha0RpZ2l0czoKKyAg
ICAgICAgICAgIHJldHVybiBAImRpZ2l0cyI7CisgICAgICAgIGNhc2UgU3BlYWtMaXRlcmFsUHVu
Y3R1YXRpb246CisgICAgICAgICAgICByZXR1cm4gQCJsaXRlcmFsLXB1bmN0dWF0aW9uIjsKKyAg
ICAgICAgY2FzZSBTcGVha05vUHVuY3R1YXRpb246CisgICAgICAgICAgICByZXR1cm4gQCJuby1w
dW5jdHVhdGlvbiI7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgIGNhc2UgU3BlYWtOb3JtYWw6
CisgICAgICAgICAgICByZXR1cm4gQCJub3JtYWwiOworICAgICAgICB9CisgICAgfQorICAgIAog
ICAgIHJldHVybiBuaWw7CiB9CiAKSW5kZXg6IFdlYkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVE
ZWNsYXJhdGlvbi5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9jc3MvQ1NTQ29tcHV0ZWRTdHls
ZURlY2xhcmF0aW9uLmNwcAkocmV2aXNpb24gNjg0NjApCisrKyBXZWJDb3JlL2Nzcy9DU1NDb21w
dXRlZFN0eWxlRGVjbGFyYXRpb24uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMjMsNiArMTIzLDcg
QEAgc3RhdGljIGNvbnN0IGludCBjb21wdXRlZFByb3BlcnRpZXNbXSA9IAogICAgIENTU1Byb3Bl
cnR5UG9zaXRpb24sCiAgICAgQ1NTUHJvcGVydHlSZXNpemUsCiAgICAgQ1NTUHJvcGVydHlSaWdo
dCwKKyAgICBDU1NQcm9wZXJ0eVNwZWFrLAogICAgIENTU1Byb3BlcnR5VGFibGVMYXlvdXQsCiAg
ICAgQ1NTUHJvcGVydHlUZXh0QWxpZ24sCiAgICAgQ1NTUHJvcGVydHlUZXh0RGVjb3JhdGlvbiwK
QEAgLTE0MDksNiArMTQxMCw4IEBAIFBhc3NSZWZQdHI8Q1NTVmFsdWU+IENTU0NvbXB1dGVkU3R5
bGVEZWMKICAgICAgICAgICAgIHJlY3QtPnNldExlZnQoem9vbUFkanVzdGVkUGl4ZWxWYWx1ZShz
dHlsZS0+Y2xpcCgpLmxlZnQoKS52YWx1ZSgpLCBzdHlsZS5nZXQoKSkpOwogICAgICAgICAgICAg
cmV0dXJuIENTU1ByaW1pdGl2ZVZhbHVlOjpjcmVhdGUocmVjdC5yZWxlYXNlKCkpOwogICAgICAg
ICB9CisgICAgICAgIGNhc2UgQ1NTUHJvcGVydHlTcGVhazoKKyAgICAgICAgICAgIHJldHVybiBD
U1NQcmltaXRpdmVWYWx1ZTo6Y3JlYXRlKHN0eWxlLT5zcGVhaygpKTsKICAgICAgICAgY2FzZSBD
U1NQcm9wZXJ0eVdlYmtpdFRyYW5zZm9ybToKICAgICAgICAgICAgIHJldHVybiBjb21wdXRlZFRy
YW5zZm9ybShyZW5kZXJlciwgc3R5bGUuZ2V0KCkpOwogICAgICAgICBjYXNlIENTU1Byb3BlcnR5
V2Via2l0VHJhbnNmb3JtT3JpZ2luOiB7CkluZGV4OiBXZWJDb3JlL2Nzcy9DU1NQcmltaXRpdmVW
YWx1ZU1hcHBpbmdzLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9jc3MvQ1NTUHJpbWl0aXZlVmFs
dWVNYXBwaW5ncy5oCShyZXZpc2lvbiA2ODQ2MCkKKysrIFdlYkNvcmUvY3NzL0NTU1ByaW1pdGl2
ZVZhbHVlTWFwcGluZ3MuaAkod29ya2luZyBjb3B5KQpAQCAtMjczMCw2ICsyNzMwLDUzIEBAIHRl
bXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGUKICAgICB9CiB9CiAKK3RlbXBs
YXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZShFU3BlYWsg
ZSkKKyAgICA6IG1fdHlwZShDU1NfSURFTlQpCisgICAgLCBtX2hhc0NhY2hlZENTU1RleHQoZmFs
c2UpCit7CisgICAgc3dpdGNoIChlKSB7CisgICAgY2FzZSBTcGVha05vbmU6CisgICAgICAgIG1f
dmFsdWUuaWRlbnQgPSBDU1NWYWx1ZU5vbmU7CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgU3Bl
YWtOb3JtYWw6CisgICAgICAgIG1fdmFsdWUuaWRlbnQgPSBDU1NWYWx1ZU5vcm1hbDsKKyAgICAg
ICAgYnJlYWs7CisgICAgY2FzZSBTcGVha1NwZWxsT3V0OgorICAgICAgICBtX3ZhbHVlLmlkZW50
ID0gQ1NTVmFsdWVTcGVsbE91dDsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBTcGVha0RpZ2l0
czoKKyAgICAgICAgbV92YWx1ZS5pZGVudCA9IENTU1ZhbHVlRGlnaXRzOworICAgICAgICBicmVh
azsKKyAgICBjYXNlIFNwZWFrTGl0ZXJhbFB1bmN0dWF0aW9uOgorICAgICAgICBtX3ZhbHVlLmlk
ZW50ID0gQ1NTVmFsdWVMaXRlcmFsUHVuY3R1YXRpb247CisgICAgICAgIGJyZWFrOworICAgIGNh
c2UgU3BlYWtOb1B1bmN0dWF0aW9uOgorICAgICAgICBtX3ZhbHVlLmlkZW50ID0gQ1NTVmFsdWVO
b1B1bmN0dWF0aW9uOworICAgICAgICBicmVhazsKKyAgICB9Cit9CisgICAgCit0ZW1wbGF0ZTw+
IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6b3BlcmF0b3IgRVNwZWFrKCkgY29uc3QKK3sKKyAg
ICBzd2l0Y2ggKG1fdmFsdWUuaWRlbnQpIHsKKyAgICBjYXNlIENTU1ZhbHVlTm9uZToKKyAgICAg
ICAgcmV0dXJuIFNwZWFrTm9uZTsKKyAgICBjYXNlIENTU1ZhbHVlTm9ybWFsOgorICAgICAgICBy
ZXR1cm4gU3BlYWtOb3JtYWw7CisgICAgY2FzZSBDU1NWYWx1ZVNwZWxsT3V0OgorICAgICAgICBy
ZXR1cm4gU3BlYWtTcGVsbE91dDsKKyAgICBjYXNlIENTU1ZhbHVlRGlnaXRzOgorICAgICAgICBy
ZXR1cm4gU3BlYWtEaWdpdHM7CisgICAgY2FzZSBDU1NWYWx1ZUxpdGVyYWxQdW5jdHVhdGlvbjoK
KyAgICAgICAgcmV0dXJuIFNwZWFrTGl0ZXJhbFB1bmN0dWF0aW9uOworICAgIGNhc2UgQ1NTVmFs
dWVOb1B1bmN0dWF0aW9uOgorICAgICAgICByZXR1cm4gU3BlYWtOb1B1bmN0dWF0aW9uOworICAg
IGRlZmF1bHQ6CisgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgICAgICByZXR1cm4g
U3BlYWtOb3JtYWw7CisgICAgfQorfQorICAgIAogI2VuZGlmCiAKIH0KSW5kZXg6IFdlYkNvcmUv
Y3NzL0NTU1Byb3BlcnR5TmFtZXMuaW4KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9jc3MvQ1NTUHJv
cGVydHlOYW1lcy5pbgkocmV2aXNpb24gNjg0NjApCisrKyBXZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0
eU5hbWVzLmluCSh3b3JraW5nIGNvcHkpCkBAIC0xMjMsNiArMTIzLDcgQEAgcmVzaXplCiByaWdo
dAogc2l6ZQogc3JjCitzcGVhawogdGFibGUtbGF5b3V0CiB0ZXh0LWFsaWduCiB0ZXh0LWRlY29y
YXRpb24KSW5kZXg6IFdlYkNvcmUvY3NzL0NTU1N0eWxlU2VsZWN0b3IuY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFdlYkNvcmUvY3NzL0NTU1N0eWxlU2VsZWN0b3IuY3BwCShyZXZpc2lvbiA2ODQ2MCkKKysr
IFdlYkNvcmUvY3NzL0NTU1N0eWxlU2VsZWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC01NDgx
LDYgKzU0ODEsMTIgQEAgdm9pZCBDU1NTdHlsZVNlbGVjdG9yOjphcHBseVByb3BlcnR5KGludAog
ICAgIGNhc2UgQ1NTUHJvcGVydHlTaXplOgogICAgICAgICBhcHBseVBhZ2VTaXplUHJvcGVydHko
dmFsdWUpOwogICAgICAgICByZXR1cm47CisgICAgCisgICAgY2FzZSBDU1NQcm9wZXJ0eVNwZWFr
OgorICAgICAgICBIQU5ETEVfSU5IRVJJVF9BTkRfSU5JVElBTChzcGVhaywgU3BlYWspOworICAg
ICAgICBtX3N0eWxlLT5zZXRTcGVhaygqcHJpbWl0aXZlVmFsdWUpOworICAgICAgICByZXR1cm47
CisgICAgICAgICAgICAKICAgICBjYXNlIENTU1Byb3BlcnR5SW52YWxpZDoKICAgICAgICAgcmV0
dXJuOwogCkluZGV4OiBXZWJDb3JlL2Nzcy9DU1NWYWx1ZUtleXdvcmRzLmluCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFdlYkNvcmUvY3NzL0NTU1ZhbHVlS2V5d29yZHMuaW4JKHJldmlzaW9uIDY4NDYwKQorKysg
V2ViQ29yZS9jc3MvQ1NTVmFsdWVLZXl3b3Jkcy5pbgkod29ya2luZyBjb3B5KQpAQCAtNzE0LDYg
KzcxNCwxNCBAQCBzdHJva2UKICNub25lCiAKICMKKyMgQ1NTX1BST1BfU1BFRUNICisjCitzcGVs
bC1vdXQKK2RpZ2l0cworbGl0ZXJhbC1wdW5jdHVhdGlvbgorbm8tcHVuY3R1YXRpb24KKworIwog
IyAtd2Via2l0LWZvbnQtc21vb3RoaW5nCiAjCiAjIGF1dG8KSW5kZXg6IFdlYkNvcmUvcmVuZGVy
aW5nL3N0eWxlL1JlbmRlclN0eWxlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9yZW5kZXJpbmcv
c3R5bGUvUmVuZGVyU3R5bGUuaAkocmV2aXNpb24gNjg0NjApCisrKyBXZWJDb3JlL3JlbmRlcmlu
Zy9zdHlsZS9SZW5kZXJTdHlsZS5oCSh3b3JraW5nIGNvcHkpCkBAIC03NDUsNiArNzQ1LDggQEAg
cHVibGljOgogICAgIEVCbG9ja0Zsb3dEaXJlY3Rpb24gYmxvY2tGbG93KCkgY29uc3QgeyByZXR1
cm4gc3RhdGljX2Nhc3Q8RUJsb2NrRmxvd0RpcmVjdGlvbj4oaW5oZXJpdGVkX2ZsYWdzLl9ibG9j
a0Zsb3cpOyB9CiAgICAgYm9vbCBpc1ZlcnRpY2FsQmxvY2tGbG93KCkgY29uc3QgeyByZXR1cm4g
YmxvY2tGbG93KCkgPT0gVG9wVG9Cb3R0b21CbG9ja0Zsb3cgfHwgYmxvY2tGbG93KCkgPT0gQm90
dG9tVG9Ub3BCbG9ja0Zsb3c7IH0KIAorICAgIEVTcGVhayBzcGVhaygpIHsgcmV0dXJuIHN0YXRp
Y19jYXN0PEVTcGVhaz4ocmFyZUluaGVyaXRlZERhdGEtPnNwZWFrKTsgfQorICAgICAgICAKIC8v
IGF0dHJpYnV0ZSBzZXR0ZXIgbWV0aG9kcwogCiAgICAgdm9pZCBzZXREaXNwbGF5KEVEaXNwbGF5
IHYpIHsgbm9uaW5oZXJpdGVkX2ZsYWdzLl9lZmZlY3RpdmVEaXNwbGF5ID0gdjsgfQpAQCAtMTAz
Nyw2ICsxMDM5LDcgQEAgcHVibGljOgogICAgIHZvaWQgc2V0VHJhbnNmb3JtT3JpZ2luWChMZW5n
dGggbCkgeyBTRVRfVkFSKHJhcmVOb25Jbmhlcml0ZWREYXRhLmFjY2VzcygpLT5tX3RyYW5zZm9y
bSwgbV94LCBsKTsgfQogICAgIHZvaWQgc2V0VHJhbnNmb3JtT3JpZ2luWShMZW5ndGggbCkgeyBT
RVRfVkFSKHJhcmVOb25Jbmhlcml0ZWREYXRhLmFjY2VzcygpLT5tX3RyYW5zZm9ybSwgbV95LCBs
KTsgfQogICAgIHZvaWQgc2V0VHJhbnNmb3JtT3JpZ2luWihmbG9hdCBmKSB7IFNFVF9WQVIocmFy
ZU5vbkluaGVyaXRlZERhdGEuYWNjZXNzKCktPm1fdHJhbnNmb3JtLCBtX3osIGYpOyB9CisgICAg
dm9pZCBzZXRTcGVhayhFU3BlYWsgcykgeyBTRVRfVkFSKHJhcmVJbmhlcml0ZWREYXRhLCBzcGVh
aywgcyk7IH0KICAgICAvLyBFbmQgQ1NTMyBTZXR0ZXJzCiAKICAgICAvLyBBcHBsZS1zcGVjaWZp
YyBwcm9wZXJ0eSBzZXR0ZXJzCkBAIC0xMjI2LDYgKzEyMjksNyBAQCBwdWJsaWM6CiAgICAgc3Rh
dGljIEVLSFRNTExpbmVCcmVhayBpbml0aWFsS0hUTUxMaW5lQnJlYWsoKSB7IHJldHVybiBMQk5P
Uk1BTDsgfQogICAgIHN0YXRpYyBFTWF0Y2hOZWFyZXN0TWFpbEJsb2NrcXVvdGVDb2xvciBpbml0
aWFsTWF0Y2hOZWFyZXN0TWFpbEJsb2NrcXVvdGVDb2xvcigpIHsgcmV0dXJuIEJDTk9STUFMOyB9
CiAgICAgc3RhdGljIGNvbnN0IEF0b21pY1N0cmluZyYgaW5pdGlhbEhpZ2hsaWdodCgpIHsgcmV0
dXJuIG51bGxBdG9tOyB9CisgICAgc3RhdGljIEVTcGVhayBpbml0aWFsU3BlYWsoKSB7IHJldHVy
biBTcGVha05vcm1hbDsgfQogICAgIHN0YXRpYyBIeXBoZW5zIGluaXRpYWxIeXBoZW5zKCkgeyBy
ZXR1cm4gSHlwaGVuc01hbnVhbDsgfQogICAgIHN0YXRpYyBjb25zdCBBdG9taWNTdHJpbmcmIGlu
aXRpYWxIeXBoZW5hdGlvblN0cmluZygpIHsgcmV0dXJuIG51bGxBdG9tOyB9CiAgICAgc3RhdGlj
IGNvbnN0IEF0b21pY1N0cmluZyYgaW5pdGlhbEh5cGhlbmF0aW9uTG9jYWxlKCkgeyByZXR1cm4g
bnVsbEF0b207IH0KSW5kZXg6IFdlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29u
c3RhbnRzLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5
bGVDb25zdGFudHMuaAkocmV2aXNpb24gNjg0NjApCisrKyBXZWJDb3JlL3JlbmRlcmluZy9zdHls
ZS9SZW5kZXJTdHlsZUNvbnN0YW50cy5oCSh3b3JraW5nIGNvcHkpCkBAIC00MTUsNiArNDE1LDgg
QEAgZW51bSBFTGluZUNsYW1wVHlwZSB7IExpbmVDbGFtcExpbmVDb3VudAogCiBlbnVtIEh5cGhl
bnMgeyBIeXBoZW5zTm9uZSwgSHlwaGVuc01hbnVhbCwgSHlwaGVuc0F1dG8gfTsKIAorZW51bSBF
U3BlYWsgeyBTcGVha05vbmUsIFNwZWFrTm9ybWFsLCBTcGVha1NwZWxsT3V0LCBTcGVha0RpZ2l0
cywgU3BlYWtMaXRlcmFsUHVuY3R1YXRpb24sIFNwZWFrTm9QdW5jdHVhdGlvbiB9OworICAgIAog
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCiAjZW5kaWYgLy8gUmVuZGVyU3R5bGVDb25zdGFudHNf
aApJbmRleDogV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlSW5oZXJpdGVkRGF0YS5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlSW5oZXJp
dGVkRGF0YS5jcHAJKHJldmlzaW9uIDY4NDYwKQorKysgV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUv
U3R5bGVSYXJlSW5oZXJpdGVkRGF0YS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQ0LDYgKzQ0LDcg
QEAgU3R5bGVSYXJlSW5oZXJpdGVkRGF0YTo6U3R5bGVSYXJlSW5oZXJpdAogICAgICwgcmVzaXpl
KFJlbmRlclN0eWxlOjppbml0aWFsUmVzaXplKCkpCiAgICAgLCB1c2VyU2VsZWN0KFJlbmRlclN0
eWxlOjppbml0aWFsVXNlclNlbGVjdCgpKQogICAgICwgY29sb3JTcGFjZShEZXZpY2VDb2xvclNw
YWNlKQorICAgICwgc3BlYWsoU3BlYWtOb3JtYWwpCiAgICAgLCBoeXBoZW5zKEh5cGhlbnNNYW51
YWwpCiB7CiB9CkBAIC03MCw2ICs3MSw3IEBAIFN0eWxlUmFyZUluaGVyaXRlZERhdGE6OlN0eWxl
UmFyZUluaGVyaXQKICAgICAsIHJlc2l6ZShvLnJlc2l6ZSkKICAgICAsIHVzZXJTZWxlY3Qoby51
c2VyU2VsZWN0KQogICAgICwgY29sb3JTcGFjZShvLmNvbG9yU3BhY2UpCisgICAgLCBzcGVhayhv
LnNwZWFrKQogICAgICwgaHlwaGVucyhvLmh5cGhlbnMpCiAgICAgLCBoeXBoZW5hdGlvblN0cmlu
ZyhvLmh5cGhlbmF0aW9uU3RyaW5nKQogICAgICwgaHlwaGVuYXRpb25Mb2NhbGUoby5oeXBoZW5h
dGlvbkxvY2FsZSkKQEAgLTExMiw2ICsxMTQsNyBAQCBib29sIFN0eWxlUmFyZUluaGVyaXRlZERh
dGE6Om9wZXJhdG9yPT0oCiAgICAgICAgICYmIHJlc2l6ZSA9PSBvLnJlc2l6ZQogICAgICAgICAm
JiB1c2VyU2VsZWN0ID09IG8udXNlclNlbGVjdAogICAgICAgICAmJiBjb2xvclNwYWNlID09IG8u
Y29sb3JTcGFjZQorICAgICAgICAmJiBzcGVhayA9PSBvLnNwZWFrCiAgICAgICAgICYmIGh5cGhl
bnMgPT0gby5oeXBoZW5zCiAgICAgICAgICYmIGh5cGhlbmF0aW9uU3RyaW5nID09IG8uaHlwaGVu
YXRpb25TdHJpbmcKICAgICAgICAgJiYgaHlwaGVuYXRpb25Mb2NhbGUgPT0gby5oeXBoZW5hdGlv
bkxvY2FsZTsKSW5kZXg6IFdlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZUluaGVyaXRl
ZERhdGEuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVJ
bmhlcml0ZWREYXRhLmgJKHJldmlzaW9uIDY4NDYwKQorKysgV2ViQ29yZS9yZW5kZXJpbmcvc3R5
bGUvU3R5bGVSYXJlSW5oZXJpdGVkRGF0YS5oCSh3b3JraW5nIGNvcHkpCkBAIC03Nyw2ICs3Nyw3
IEBAIHB1YmxpYzoKICAgICB1bnNpZ25lZCByZXNpemUgOiAyOyAvLyBFUmVzaXplCiAgICAgdW5z
aWduZWQgdXNlclNlbGVjdCA6IDE7ICAvLyBFVXNlclNlbGVjdAogICAgIHVuc2lnbmVkIGNvbG9y
U3BhY2UgOiAxOyAvLyBDb2xvclNwYWNlCisgICAgdW5zaWduZWQgc3BlYWsgOiAzOyAvLyBFU3Bl
YWsKICAgICB1bnNpZ25lZCBoeXBoZW5zIDogMjsgLy8gSHlwaGVucwogCiAgICAgQXRvbWljU3Ry
aW5nIGh5cGhlbmF0aW9uU3RyaW5nOwpJbmRleDogV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFdlYktpdFRvb2xzL0NoYW5nZUxvZwkocmV2aXNpb24gNjg2NjkpCisrKyBXZWJL
aXRUb29scy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxOCBAQAorMjAxMC0w
OS0yOSAgQ2hyaXMgRmxlaXphY2ggIDxjZmxlaXphY2hAYXBwbGUuY29tPgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFYOiBpbXBsZW1lbnQgQ1NTMyBT
cGVlY2ggInNwZWFrIgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9NDY4MjcKKworICAgICAgICAqIER1bXBSZW5kZXJUcmVlL0FjY2Vzc2liaWxpdHlVSUVs
ZW1lbnQuY3BwOgorICAgICAgICAoc3BlYWtDYWxsYmFjayk6CisgICAgICAgIChBY2Nlc3NpYmls
aXR5VUlFbGVtZW50OjpzcGVhayk6CisgICAgICAgIChBY2Nlc3NpYmlsaXR5VUlFbGVtZW50Ojpn
ZXRKU0NsYXNzKToKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9BY2Nlc3NpYmlsaXR5VUlFbGVt
ZW50Lmg6CisgICAgICAgICogRHVtcFJlbmRlclRyZWUvbWFjL0FjY2Vzc2liaWxpdHlVSUVsZW1l
bnRNYWMubW06CisgICAgICAgIChBY2Nlc3NpYmlsaXR5VUlFbGVtZW50OjpzcGVhayk6CisKIDIw
MTAtMDktMjkgIFNpbW9uIEZyYXNlciAgPHNpbW9uLmZyYXNlckBhcHBsZS5jb20+CiAKICAgICAg
ICAgTm8gcmV2aWV3LgpJbmRleDogV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvQWNjZXNzaWJp
bGl0eVVJRWxlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRy
ZWUvQWNjZXNzaWJpbGl0eVVJRWxlbWVudC5jcHAJKHJldmlzaW9uIDY4NDYwKQorKysgV2ViS2l0
VG9vbHMvRHVtcFJlbmRlclRyZWUvQWNjZXNzaWJpbGl0eVVJRWxlbWVudC5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTY3OSw2ICs2NzksMTIgQEAgc3RhdGljIEpTVmFsdWVSZWYgaXNJZ25vcmVkQ2Fs
bGJhY2soSlNDbwogICAgIHJldHVybiBKU1ZhbHVlTWFrZUJvb2xlYW4oY29udGV4dCwgdG9BWEVs
ZW1lbnQodGhpc09iamVjdCktPmlzSWdub3JlZCgpKTsKIH0KIAorc3RhdGljIEpTVmFsdWVSZWYg
c3BlYWtDYWxsYmFjayhKU0NvbnRleHRSZWYgY29udGV4dCwgSlNPYmplY3RSZWYgdGhpc09iamVj
dCwgSlNTdHJpbmdSZWYsIEpTVmFsdWVSZWYqKQoreworICAgIEpTUmV0YWluUHRyPEpTU3RyaW5n
UmVmPiBzcGVha1N0cmluZyhBZG9wdCwgdG9BWEVsZW1lbnQodGhpc09iamVjdCktPnNwZWFrKCkp
OworICAgIHJldHVybiBKU1ZhbHVlTWFrZVN0cmluZyhjb250ZXh0LCBzcGVha1N0cmluZy5nZXQo
KSk7Cit9CisKIHN0YXRpYyBKU1ZhbHVlUmVmIGdldEhhc1BvcHVwQ2FsbGJhY2soSlNDb250ZXh0
UmVmIGNvbnRleHQsIEpTT2JqZWN0UmVmIHRoaXNPYmplY3QsIEpTU3RyaW5nUmVmLCBKU1ZhbHVl
UmVmKikKIHsKICAgICByZXR1cm4gSlNWYWx1ZU1ha2VCb29sZWFuKGNvbnRleHQsIHRvQVhFbGVt
ZW50KHRoaXNPYmplY3QpLT5oYXNQb3B1cCgpKTsKQEAgLTczNyw2ICs3NDMsMTEgQEAgc3RhdGlj
IEpTVmFsdWVSZWYgcmVtb3ZlTm90aWZpY2F0aW9uTGlzdAogCiAvLyBJbXBsZW1lbnRhdGlvbgog
CisvLyBVbnN1cHBvcnRlZCBtZXRob2RzIG9uIHZhcmlvdXMgcGxhdGZvcm1zLgorI2lmICFQTEFU
Rk9STShNQUMpCitKU1N0cmluZ1JlZiBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50OjpzcGVhaygpIHsg
cmV0dXJuIDA7IH0KKyNlbmRpZgorCiAjaWYgIVNVUFBPUlRTX0FYX1RFWFRNQVJLRVJTCiAKIEFj
Y2Vzc2liaWxpdHlUZXh0TWFya2VyUmFuZ2UgQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6dGV4dE1h
cmtlclJhbmdlRm9yRWxlbWVudChBY2Nlc3NpYmlsaXR5VUlFbGVtZW50KikKQEAgLTgzNyw2ICs4
NDgsNyBAQCBKU0NsYXNzUmVmIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OmdldEpTCiAgICAgICAg
IHsgImFyaWFJc0dyYWJiZWQiLCBnZXRBUklBSXNHcmFiYmVkQ2FsbGJhY2ssIDAsIGtKU1Byb3Bl
cnR5QXR0cmlidXRlUmVhZE9ubHkgfCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZURvbnREZWxldGUgfSwK
ICAgICAgICAgeyAiYXJpYURyb3BFZmZlY3RzIiwgZ2V0QVJJQURyb3BFZmZlY3RzQ2FsbGJhY2ss
IDAsIGtKU1Byb3BlcnR5QXR0cmlidXRlUmVhZE9ubHkgfCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZURv
bnREZWxldGUgfSwKICAgICAgICAgeyAiaXNJZ25vcmVkIiwgaXNJZ25vcmVkQ2FsbGJhY2ssIDAs
IGtKU1Byb3BlcnR5QXR0cmlidXRlUmVhZE9ubHkgfCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZURvbnRE
ZWxldGUgfSwKKyAgICAgICAgeyAic3BlYWsiLCBzcGVha0NhbGxiYWNrLCAwLCBrSlNQcm9wZXJ0
eUF0dHJpYnV0ZVJlYWRPbmx5IHwga0pTUHJvcGVydHlBdHRyaWJ1dGVEb250RGVsZXRlIH0sCiAg
ICAgICAgIHsgMCwgMCwgMCwgMCB9CiAgICAgfTsKIApJbmRleDogV2ViS2l0VG9vbHMvRHVtcFJl
bmRlclRyZWUvQWNjZXNzaWJpbGl0eVVJRWxlbWVudC5oCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdFRv
b2xzL0R1bXBSZW5kZXJUcmVlL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnQuaAkocmV2aXNpb24gNjg0
NjApCisrKyBXZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50
LmgJKHdvcmtpbmcgY29weSkKQEAgLTE0Nyw2ICsxNDcsOSBAQCBwdWJsaWM6CiAgICAgSlNTdHJp
bmdSZWYgZG9jdW1lbnRVUkkoKTsKICAgICBKU1N0cmluZ1JlZiB1cmwoKTsKIAorICAgIC8vIENT
UzMtc3BlZWNoIHByb3BlcnRpZXMuCisgICAgSlNTdHJpbmdSZWYgc3BlYWsoKTsKKyAgICAKICAg
ICAvLyBUYWJsZS1zcGVjaWZpYyBhdHRyaWJ1dGVzCiAgICAgSlNTdHJpbmdSZWYgYXR0cmlidXRl
c09mQ29sdW1uSGVhZGVycygpOwogICAgIEpTU3RyaW5nUmVmIGF0dHJpYnV0ZXNPZlJvd0hlYWRl
cnMoKTsKSW5kZXg6IFdlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL21hYy9BY2Nlc3NpYmlsaXR5
VUlFbGVtZW50TWFjLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVl
L21hYy9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50TWFjLm1tCShyZXZpc2lvbiA2ODQ2MCkKKysrIFdl
YktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL21hYy9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50TWFjLm1t
CSh3b3JraW5nIGNvcHkpCkBAIC03ODAsNiArNzgwLDE3IEBAIGludCBBY2Nlc3NpYmlsaXR5VUlF
bGVtZW50OjpoaWVyYXJjaGljYWwKICAgICByZXR1cm4gMDsKIH0KIAorSlNTdHJpbmdSZWYgQWNj
ZXNzaWJpbGl0eVVJRWxlbWVudDo6c3BlYWsoKQoreworICAgIEJFR0lOX0FYX09CSkNfRVhDRVBU
SU9OUworICAgIGlkIHZhbHVlID0gW21fZWxlbWVudCBhY2Nlc3NpYmlsaXR5QXR0cmlidXRlVmFs
dWU6QCJBWERSVFNwZWVjaEF0dHJpYnV0ZSJdOworICAgIGlmIChbdmFsdWUgaXNLaW5kT2ZDbGFz
czpbTlNTdHJpbmcgY2xhc3NdXSkKKyAgICAgICAgcmV0dXJuIFt2YWx1ZSBjcmVhdGVKU1N0cmlu
Z1JlZl07CisgICAgRU5EX0FYX09CSkNfRVhDRVBUSU9OUworICAgICAgICAKKyAgICByZXR1cm4g
MDsKK30KKwogYm9vbCBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50OjphcmlhSXNHcmFiYmVkKCkgY29u
c3QKIHsKICAgICBCRUdJTl9BWF9PQkpDX0VYQ0VQVElPTlMKSW5kZXg6IExheW91dFRlc3RzL0No
YW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHJldmlzaW9uIDY4
NjY5KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEs
MTMgQEAKKzIwMTAtMDktMjkgIENocmlzIEZsZWl6YWNoICA8Y2ZsZWl6YWNoQGFwcGxlLmNvbT4K
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBWDogaW1w
bGVtZW50IENTUzMgU3BlZWNoICJzcGVhayIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTQ2ODI3CisKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvYWNjZXNz
aWJpbGl0eS9jc3Mtc3BlZWNoLXNwZWFrLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICog
cGxhdGZvcm0vbWFjL2FjY2Vzc2liaWxpdHkvY3NzLXNwZWVjaC1zcGVhay5odG1sOiBBZGRlZC4K
KwogMjAxMC0wOS0yOSAgTWFydGluIFJvYmluc29uICA8bXJvYmluc29uQGlnYWxpYS5jb20+CiAK
ICAgICAgICAgUmV2aWV3ZWQgYnkgQ2hyaXMgRmxlaXphY2guCkluZGV4OiBMYXlvdXRUZXN0cy9w
bGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9jc3Mtc3BlZWNoLXNwZWFrLWV4cGVjdGVkLnR4dAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9jc3Mt
c3BlZWNoLXNwZWFrLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL3Bs
YXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L2Nzcy1zcGVlY2gtc3BlYWstZXhwZWN0ZWQudHh0CShy
ZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI1IEBACitJbml0aWFsCitObyBzcGVlY2gKK05vcm1hbAor
U3BlbGxvdXQKK0RpZ2l0cworTGl0ZXJhbAorTm8gcHVuY3R1YXRpb24KK3Rlc3QKK1RoaXMgdGVz
dHMgdGhhdCB1c2luZyB0aGUgQ1NTMy1zcGVlY2ggcHJvcGVydHkgJ3NwZWFrJyB3b3JrcyBhcyBm
cm9tIGEgV2ViQ29yZSBsZXZlbCAobm90IGEgcGxhdGZvcm0gbGV2ZWwsIHRoYXQgaXMgdXAgdG8g
dGhlIHBsYXRmb3JtcykKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQ
QVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgYWNj
ZXNzaWJpbGl0eUNvbnRyb2xsZXIuZm9jdXNlZEVsZW1lbnQuY2hpbGRBdEluZGV4KDApLnNwZWFr
IGlzICdub3JtYWwnCitQQVNTIGFjY2Vzc2liaWxpdHlDb250cm9sbGVyLmZvY3VzZWRFbGVtZW50
LmNoaWxkQXRJbmRleCgwKS5zcGVhayBpcyAnbm9uZScKK1BBU1MgYWNjZXNzaWJpbGl0eUNvbnRy
b2xsZXIuZm9jdXNlZEVsZW1lbnQuY2hpbGRBdEluZGV4KDApLnNwZWFrIGlzICdub3JtYWwnCitQ
QVNTIGFjY2Vzc2liaWxpdHlDb250cm9sbGVyLmZvY3VzZWRFbGVtZW50LmNoaWxkQXRJbmRleCgw
KS5zcGVhayBpcyAnc3BlbGwtb3V0JworUEFTUyBhY2Nlc3NpYmlsaXR5Q29udHJvbGxlci5mb2N1
c2VkRWxlbWVudC5jaGlsZEF0SW5kZXgoMCkuc3BlYWsgaXMgJ2RpZ2l0cycKK1BBU1MgYWNjZXNz
aWJpbGl0eUNvbnRyb2xsZXIuZm9jdXNlZEVsZW1lbnQuY2hpbGRBdEluZGV4KDApLnNwZWFrIGlz
ICdsaXRlcmFsLXB1bmN0dWF0aW9uJworUEFTUyBhY2Nlc3NpYmlsaXR5Q29udHJvbGxlci5mb2N1
c2VkRWxlbWVudC5jaGlsZEF0SW5kZXgoMCkuc3BlYWsgaXMgJ25vLXB1bmN0dWF0aW9uJworUEFT
UyBhY2Nlc3NpYmlsaXR5Q29udHJvbGxlci5mb2N1c2VkRWxlbWVudC5jaGlsZEF0SW5kZXgoMCku
c3BlYWsgaXMgJ2RpZ2l0cycKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVT
VCBDT01QTEVURQorCkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0
eS9jc3Mtc3BlZWNoLXNwZWFrLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZv
cm0vbWFjL2FjY2Vzc2liaWxpdHkvY3NzLXNwZWVjaC1zcGVhay5odG1sCShyZXZpc2lvbiAwKQor
KysgTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2FjY2Vzc2liaWxpdHkvY3NzLXNwZWVjaC1zcGVh
ay5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDc2IEBACis8IURPQ1RZUEUgSFRNTCBQVUJM
SUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJz
dHlsZXNoZWV0IiBocmVmPSIuLi8uLi8uLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxl
LmNzcyI+Cis8c2NyaXB0PgordmFyIHN1Y2Nlc3NmdWxseVBhcnNlZCA9IGZhbHNlOworPC9zY3Jp
cHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUu
anMiPjwvc2NyaXB0PgorPHN0eWxlPgorZGl2LnNwZWVjaC1ub25lIHsgc3BlYWs6IG5vbmU7IH0K
K2Rpdi5zcGVlY2gtbm9ybWFsIHsgc3BlYWs6IG5vcm1hbDsgfQorZGl2LnNwZWVjaC1zcGVsbG91
dCB7IHNwZWFrOiBzcGVsbC1vdXQ7IH0KK2Rpdi5zcGVlY2gtZGlnaXRzIHsgc3BlYWs6IGRpZ2l0
czsgfQorZGl2LnNwZWVjaC1saXRlcmFscHVuYyB7IHNwZWFrOiBsaXRlcmFsLXB1bmN0dWF0aW9u
OyB9CitkaXYuc3BlZWNoLW5vcHVuYyB7IHNwZWFrOiBuby1wdW5jdHVhdGlvbjsgfQorPC9zdHls
ZT4KKzwvaGVhZD4KKzxib2R5IGlkPSJib2R5Ij4KKworCis8ZGl2IHRhYmluZGV4PSIwIiBpZD0i
aW5pdGlhbCIgPkluaXRpYWw8L2Rpdj4KKzxkaXYgdGFiaW5kZXg9IjAiIGlkPSJzcGVlY2gtbm9u
ZSIgY2xhc3M9InNwZWVjaC1ub25lIj5ObyBzcGVlY2g8L2Rpdj4KKzxkaXYgdGFiaW5kZXg9IjAi
IGlkPSJzcGVlY2gtbm9ybWFsIiBjbGFzcz0ic3BlZWNoLW5vcm1hbCI+Tm9ybWFsPC9kaXY+Cis8
ZGl2IHRhYmluZGV4PSIwIiBpZD0ic3BlZWNoLXNwZWxsb3V0IiBjbGFzcz0ic3BlZWNoLXNwZWxs
b3V0Ij5TcGVsbG91dDwvZGl2PgorPGRpdiB0YWJpbmRleD0iMCIgaWQ9InNwZWVjaC1kaWdpdHMi
IGNsYXNzPSJzcGVlY2gtZGlnaXRzIj5EaWdpdHM8L2Rpdj4KKzxkaXYgdGFiaW5kZXg9IjAiIGlk
PSJzcGVlY2gtbGl0ZXJhbHB1bmMiIGNsYXNzPSJzcGVlY2gtbGl0ZXJhbHB1bmMiPkxpdGVyYWw8
L2Rpdj4KKzxkaXYgdGFiaW5kZXg9IjAiIGlkPSJzcGVlY2gtbm9wdW5jIiBjbGFzcz0ic3BlZWNo
LW5vcHVuYyI+Tm8gcHVuY3R1YXRpb248L2Rpdj4KKworPGRpdiBzdHlsZT0nc3BlYWs6IGRpZ2l0
czsnPgorIDxkaXY+CisgIDxkaXY+CisgICAgPGEgaWQ9InRlc3RsaW5rIiB0YWJpbmRleD0iMCIg
aHJlZj0iIyI+dGVzdDwvYT4KKyAgPC9kaXY+CisgPC9kaXY+Cis8L2Rpdj4KKworPHAgaWQ9ImRl
c2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKworPHNjcmlwdD4KKwor
ICAgIGRlc2NyaXB0aW9uKCJUaGlzIHRlc3RzIHRoYXQgdXNpbmcgdGhlIENTUzMtc3BlZWNoIHBy
b3BlcnR5ICdzcGVhaycgd29ya3MgYXMgZnJvbSBhIFdlYkNvcmUgbGV2ZWwgKG5vdCBhIHBsYXRm
b3JtIGxldmVsLCB0aGF0IGlzIHVwIHRvIHRoZSBwbGF0Zm9ybXMpIik7CisKKyAgICBpZiAod2lu
ZG93LmFjY2Vzc2liaWxpdHlDb250cm9sbGVyKSB7CisKKyAgICAgICAgICBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgiaW5pdGlhbCIpLmZvY3VzKCk7CisgICAgICAgICAgc2hvdWxkQmUoImFjY2Vz
c2liaWxpdHlDb250cm9sbGVyLmZvY3VzZWRFbGVtZW50LmNoaWxkQXRJbmRleCgwKS5zcGVhayIs
ICInbm9ybWFsJyIpOworCisgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNwZWVj
aC1ub25lIikuZm9jdXMoKTsKKyAgICAgICAgICBzaG91bGRCZSgiYWNjZXNzaWJpbGl0eUNvbnRy
b2xsZXIuZm9jdXNlZEVsZW1lbnQuY2hpbGRBdEluZGV4KDApLnNwZWFrIiwgIidub25lJyIpOwor
CisgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNwZWVjaC1ub3JtYWwiKS5mb2N1
cygpOworICAgICAgICAgIHNob3VsZEJlKCJhY2Nlc3NpYmlsaXR5Q29udHJvbGxlci5mb2N1c2Vk
RWxlbWVudC5jaGlsZEF0SW5kZXgoMCkuc3BlYWsiLCAiJ25vcm1hbCciKTsKKworICAgICAgICAg
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzcGVlY2gtc3BlbGxvdXQiKS5mb2N1cygpOworICAg
ICAgICAgIHNob3VsZEJlKCJhY2Nlc3NpYmlsaXR5Q29udHJvbGxlci5mb2N1c2VkRWxlbWVudC5j
aGlsZEF0SW5kZXgoMCkuc3BlYWsiLCAiJ3NwZWxsLW91dCciKTsKKworICAgICAgICAgIGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJzcGVlY2gtZGlnaXRzIikuZm9jdXMoKTsKKyAgICAgICAgICBz
aG91bGRCZSgiYWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIuZm9jdXNlZEVsZW1lbnQuY2hpbGRBdElu
ZGV4KDApLnNwZWFrIiwgIidkaWdpdHMnIik7CisKKyAgICAgICAgICBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgic3BlZWNoLWxpdGVyYWxwdW5jIikuZm9jdXMoKTsKKyAgICAgICAgICBzaG91bGRC
ZSgiYWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIuZm9jdXNlZEVsZW1lbnQuY2hpbGRBdEluZGV4KDAp
LnNwZWFrIiwgIidsaXRlcmFsLXB1bmN0dWF0aW9uJyIpOworCisgICAgICAgICAgZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoInNwZWVjaC1ub3B1bmMiKS5mb2N1cygpOworICAgICAgICAgIHNob3Vs
ZEJlKCJhY2Nlc3NpYmlsaXR5Q29udHJvbGxlci5mb2N1c2VkRWxlbWVudC5jaGlsZEF0SW5kZXgo
MCkuc3BlYWsiLCAiJ25vLXB1bmN0dWF0aW9uJyIpOworCisgICAgICAgICAgZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoInRlc3RsaW5rIikuZm9jdXMoKTsKKyAgICAgICAgICBzaG91bGRCZSgiYWNj
ZXNzaWJpbGl0eUNvbnRyb2xsZXIuZm9jdXNlZEVsZW1lbnQuY2hpbGRBdEluZGV4KDApLnNwZWFr
IiwgIidkaWdpdHMnIik7CisgICAgfQorCisgICAgc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsK
Kzwvc2NyaXB0PgorCis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMt
dGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4K
</data>
<flag name="review"
          id="58887"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>