<?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>9310</bug_id>
          
          <creation_ts>2006-06-05 00:16:32 -0700</creation_ts>
          <short_desc>Add missing DOM prototypes and other DOM cleanup</short_desc>
          <delta_ts>2006-06-05 10:10:43 -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>DOM</component>
          <version>420+</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.4</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Geoffrey Garen">ggaren</reporter>
          <assigned_to name="Geoffrey Garen">ggaren</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>44750</commentid>
    <comment_count>0</comment_count>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2006-06-05 00:16:32 -0700</bug_when>
    <thetext>Patch coming.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>44751</commentid>
    <comment_count>1</comment_count>
      <attachid>8710</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2006-06-05 00:22:21 -0700</bug_when>
    <thetext>Created attachment 8710
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>44754</commentid>
    <comment_count>2</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2006-06-05 04:40:54 -0700</bug_when>
    <thetext>(In reply to comment #1)
&gt; Created an attachment (id=8710) [edit]
&gt; Patch

Was the build file change supposed to be a part of this patch?

WebCore/WebCore.xcodeproj/project.pbxproj
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>44766</commentid>
    <comment_count>3</comment_count>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2006-06-05 07:42:58 -0700</bug_when>
    <thetext>No. I wonder why XCode added that.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>44769</commentid>
    <comment_count>4</comment_count>
      <attachid>8710</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2006-06-05 08:21:52 -0700</bug_when>
    <thetext>Comment on attachment 8710
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>44781</commentid>
    <comment_count>5</comment_count>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2006-06-05 10:10:43 -0700</bug_when>
    <thetext>Committed revision 14735.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>8710</attachid>
            <date>2006-06-05 00:22:21 -0700</date>
            <delta_ts>2006-06-05 08:21:52 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>patch-prototypes.txt</filename>
            <type>text/plain</type>
            <size>24802</size>
            <attacher name="Geoffrey Garen">ggaren</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDE0NzMzKQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsMTcgQEAKKzIwMDYtMDYtMDQgIEdlb2ZmcmV5IEdhcmVuICA8
Z2dhcmVuQGFwcGxlLmNvbT4KKworICAgICAgICAtIE1lcmdlZCB0ZXN0LXByb3RvdHlwZXMuaHRt
bCBpbnRvIGdsb2JhbC1jb25zdHJ1Y3RvcnMuaHRtbAorICAgICAgICAtIEFkZGVkIHByb3RvdHlw
ZXMuaHRtbCwgd2hpY2ggdGVzdHMgZm9yIHNvbWUgbWlzc2luZyBwcm90b3R5cGVzIGluIERPTSBv
YmplY3RzCisgICAgICAgIAorICAgICAgICAqIGZhc3QvZG9tL2dsb2JhbC1jb25zdHJ1Y3RvcnMt
ZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3QvZG9tL2dsb2JhbC1jb25zdHJ1Y3RvcnMuaHRt
bDoKKyAgICAgICAgKiBmYXN0L2RvbS9wcm90b3R5cGVzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisg
ICAgICAgICogZmFzdC9kb20vcHJvdG90eXBlcy5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0
L2RvbS90ZXN0LXByb3RvdHlwZXMtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIGZh
c3QvZG9tL3Rlc3QtcHJvdG90eXBlcy5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIGZhc3QvZG9t
L3VuZGV0ZWN0YWJsZS1kb2N1bWVudC1hbGwtZXhwZWN0ZWQudHh0OiBVcGRhdGVkIHRvIHJlZmxl
Y3QKKyAgICAgICAgY2hhbmdlIGZyb20gIkhUTUxDb2xsZWN0aW9uIiB0byAiQ29sbGVjdGlvbiIK
KwogMjAwNi0wNi0wNCAgRGFyaW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+CiAKICAgICAgICAg
LSB0ZXN0IGZvciBodHRwOi8vYnVnemlsbGEub3BlbmRhcndpbi5vcmcvc2hvd19idWcuY2dpP2lk
PTkxNzYKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZG9tL3Byb3RvdHlwZXMuaHRtbAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2RvbS9wcm90b3R5cGVzLmh0bWwJKHJldmlzaW9uIDAp
CisrKyBMYXlvdXRUZXN0cy9mYXN0L2RvbS9wcm90b3R5cGVzLmh0bWwJKHJldmlzaW9uIDApCkBA
IC0wLDAgKzEsODMgQEAKKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0PgorZnVuY3Rpb24gcHJpbnQo
bWVzc2FnZSwgY29sb3IpIAoreworICAgIHZhciBwYXJhZ3JhcGggPSBkb2N1bWVudC5jcmVhdGVF
bGVtZW50KCJkaXYiKTsKKyAgICBwYXJhZ3JhcGguYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRl
VGV4dE5vZGUobWVzc2FnZSkpOworICAgIHBhcmFncmFwaC5zdHlsZS5mb250RmFtaWx5ID0gIm1v
bm9zcGFjZSI7CisgICAgaWYgKGNvbG9yKQorICAgICAgICBwYXJhZ3JhcGguc3R5bGUuY29sb3Ig
PSBjb2xvcjsKKyAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY29uc29sZSIpLmFwcGVuZENo
aWxkKHBhcmFncmFwaCk7Cit9CisKK2Z1bmN0aW9uIHNob3VsZEJlKGEsIGIpCit7CisgICAgdmFy
IGV2YWxBOworICAgIHRyeSB7CisgICAgICAgIGV2YWxBID0gZXZhbChhKTsKKyAgICB9IGNhdGNo
KGUpIHsKKyAgICAgICAgZXZhbEEgPSBlOworICAgIH0KKyAgICAKKyAgICBpZiAoZXZhbEEgPT0g
YikKKyAgICAgICAgcHJpbnQoIlBBU1M6ICIgKyBhICsgIiBzaG91bGQgYmUgIiArIGIgKyAiIGFu
ZCBpcy4iLCAiZ3JlZW4iKTsKKyAgICBlbHNlCisgICAgICAgIHByaW50KCJGQUlMOiAiICsgYSAr
ICIgc2hvdWxkIGJlICIgKyBiICsgIiBidXQgaW5zdGVhZCBpcyAiICsgZXZhbEEgKyAiLiIsICJy
ZWQiKTsKK30KKworZnVuY3Rpb24gdGVzdCgpIAoreworICAgIGlmICh3aW5kb3cubGF5b3V0VGVz
dENvbnRyb2xsZXIpCisgICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsK
KworICAgIHNob3VsZEJlKCJPYmplY3QucHJvdG90eXBlLmlzUHJvdG90eXBlT2Yod2luZG93LkRP
TUV4Y2VwdGlvbikiLCB0cnVlKTsKKyAgICBzaG91bGRCZSgiT2JqZWN0LnByb3RvdHlwZS5pc1By
b3RvdHlwZU9mKHdpbmRvdy5PcHRpb24pIiwgdHJ1ZSk7CisKKyAgICBkaXYgPSBkb2N1bWVudC5j
cmVhdGVFbGVtZW50KCdkaXYnKTsKKyAgICBkaXYuc3R5bGUuY29sb3IgPSAiYmxhY2siOworICAg
IGNzc1ZhbHVlID0gZGl2LnN0eWxlLmdldFByb3BlcnR5Q1NTVmFsdWUoJ2NvbG9yJyk7IC8vIGFj
dHVhbGx5IGEgQ1NTUHJpbWl0aXZlVmFsdWUKKyAgICBzaG91bGRCZSgiT2JqZWN0LnByb3RvdHlw
ZS5pc1Byb3RvdHlwZU9mKGNzc1ZhbHVlKSIsIHRydWUpOworICAgIAorICAgIHJnYkNvbG9yID0g
ZGl2LnN0eWxlLmdldFByb3BlcnR5Q1NTVmFsdWUoJ2NvbG9yJykuZ2V0UkdCQ29sb3JWYWx1ZSgp
OworICAgIHNob3VsZEJlKCJPYmplY3QucHJvdG90eXBlLmlzUHJvdG90eXBlT2YocmdiQ29sb3Ip
IiwgdHJ1ZSk7CisKKyAgICBkaXYuc3R5bGUuY2xpcCA9ICJyZWN0KDAsIDAsIDAsIDApIjsKKyAg
ICByZWN0ID0gZGl2LnN0eWxlLmdldFByb3BlcnR5Q1NTVmFsdWUoJ2NsaXAnKS5nZXRSZWN0VmFs
dWUoKTsKKyAgICBzaG91bGRCZSgiT2JqZWN0LnByb3RvdHlwZS5pc1Byb3RvdHlwZU9mKHJlY3Qp
IiwgdHJ1ZSk7CisKKyAgICBzdHlsZUVsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdz
dHlsZScpOworICAgIHN0eWxlRWxlbWVudC5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVUZXh0
Tm9kZSgiKiB7fSIpKTsKKyAgICBoZWFkRWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlU
YWdOYW1lKCdoZWFkJylbMF07CisgICAgaGVhZEVsZW1lbnQuYXBwZW5kQ2hpbGQoc3R5bGVFbGVt
ZW50KTsKKyAgICBzdHlsZVNoZWV0TGlzdCA9IGRvY3VtZW50LnN0eWxlU2hlZXRzOworICAgIHNo
b3VsZEJlKCJPYmplY3QucHJvdG90eXBlLmlzUHJvdG90eXBlT2Yoc3R5bGVTaGVldExpc3QpIiwg
dHJ1ZSk7CisKKyAgICBzdHlsZVNoZWV0ID0gc3R5bGVTaGVldExpc3RbMF07CisgICAgc2hvdWxk
QmUoIk9iamVjdC5wcm90b3R5cGUuaXNQcm90b3R5cGVPZihzdHlsZVNoZWV0KSIsIHRydWUpOwor
CisgICAgY3NzUnVsZSA9IHN0eWxlU2hlZXQuY3NzUnVsZXNbMF07CisgICAgc2hvdWxkQmUoIk9i
amVjdC5wcm90b3R5cGUuaXNQcm90b3R5cGVPZihjc3NSdWxlKSIsIHRydWUpOworCisgICAgbm9k
ZUxpc3QgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgnaHRtbCcpOworICAgIHNob3Vs
ZEJlKCJPYmplY3QucHJvdG90eXBlLmlzUHJvdG90eXBlT2Yobm9kZUxpc3QpIiwgdHJ1ZSk7CisK
KyAgICB2YXIgZm9ybSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2Zvcm0nKTsKKyAgICBmb3Jt
Lm5hbWUgPSAnbXlGb3JtJzsKKyAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGZvcm0pOwor
ICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZm9ybS5jbG9uZU5vZGUodHJ1ZSkpOworICAg
IG5hbWVkTm9kZXNDb2xsZWN0aW9uID0gZG9jdW1lbnQuZm9ybXMubXlGb3JtOworICAgIHNob3Vs
ZEJlKCJPYmplY3QucHJvdG90eXBlLmlzUHJvdG90eXBlT2YobmFtZWROb2Rlc0NvbGxlY3Rpb24p
IiwgdHJ1ZSk7Cit9Cis8L3NjcmlwdD4KKzwvaGVhZD4KKworPGJvZHkgb25sb2FkPSJ0ZXN0KCk7
Ij4KKzxwPlRoaXMgdGVzdCBjaGVja3Mgc29tZSBET00gb2JqZWN0IHByb3RvdHlwZXMgdGhhdCBX
ZWJLaXQgaGFzIGdvdHRlbiB3cm9uZyBpbiB0aGUgcGFzdC4KKyAgIElmIHRoZSB0ZXN0IHBhc3Nl
cywgeW91J2xsIHNlZSBhIHNlcmllcyBvZiAnUEFTUycgbWVzc2FnZXMgYmVsb3cuPC9wPgorPGhy
PgorCis8ZGl2IGlkPSdjb25zb2xlJz48L2Rpdj4KKworPC9ib2R5PgorPC9odG1sPgpJbmRleDog
TGF5b3V0VGVzdHMvZmFzdC9kb20vZ2xvYmFsLWNvbnN0cnVjdG9ycy1leHBlY3RlZC50eHQKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9kb20vZ2xvYmFsLWNvbnN0cnVjdG9ycy1leHBl
Y3RlZC50eHQJKHJldmlzaW9uIDE0NzMzKQorKysgTGF5b3V0VGVzdHMvZmFzdC9kb20vZ2xvYmFs
LWNvbnN0cnVjdG9ycy1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTEsNSArMSw5IEBA
Ci1UaGlzIHBhZ2UgdGVzdHMgZ2xvYmFsIGNvbnN0cnVjdG9yIG9iamVjdHMgbGlrZSB3aW5kb3cu
SFRNTERvY3VtZW50LiBJZiBpdCBwYXNzZXMsIHlvdSdsbCBzZWUgYSBzZXJpZXMgb2YgJ1BBU1Mn
IG1lc3NhZ2VzIGJlbG93LgorVGhpcyBwYWdlIHRlc3RzIGNvbnN0cnVjdG9ycyBhbmQgcHJvdG90
eXBlcyB0aGF0IFdlYktpdCBoYXMgZ290dGVuIHdyb25nIGluIHRoZSBwYXN0LiBJZiBpdCBwYXNz
ZXMsIHlvdSdsbCBzZWUgYSBzZXJpZXMgb2YgJ1BBU1MnIG1lc3NhZ2VzIGJlbG93LgogCitQQVNT
OiBET01QYXJzZXIucHJvdG90eXBlLmlzUHJvdG90eXBlT2YoZG9tUGFyc2VyKSBzaG91bGQgYmUg
dHJ1ZSBhbmQgaXMuCitQQVNTOiBYTUxIdHRwUmVxdWVzdC5wcm90b3R5cGUuaXNQcm90b3R5cGVP
Zih4bWxIdHRwUmVxdWVzdCkgc2hvdWxkIGJlIHRydWUgYW5kIGlzLgorUEFTUzogWE1MU2VyaWFs
aXplci5wcm90b3R5cGUuaXNQcm90b3R5cGVPZih4bWxTZXJpYWxpemVyKSBzaG91bGQgYmUgdHJ1
ZSBhbmQgaXMuCitQQVNTOiBYU0xUUHJvY2Vzc29yLnByb3RvdHlwZS5pc1Byb3RvdHlwZU9mKHhz
bHRQcm9jZXNzb3IpIHNob3VsZCBiZSB0cnVlIGFuZCBpcy4KIFBBU1M6IHdpbmRvdy5Eb2N1bWVu
dC5wcm90b3R5cGUuaXNQcm90b3R5cGVPZihkb2N1bWVudCkgc2hvdWxkIGJlIHRydWUgYW5kIGlz
LgogUEFTUzogd2luZG93LkhUTUxEb2N1bWVudC5wcm90b3R5cGUuaXNQcm90b3R5cGVPZihkb2N1
bWVudCkgc2hvdWxkIGJlIHRydWUgYW5kIGlzLgogUEFTUzogd2luZG93Lk5vZGUucHJvdG90eXBl
LmlzUHJvdG90eXBlT2YoZWxlbWVudCkgc2hvdWxkIGJlIHRydWUgYW5kIGlzLgpJbmRleDogTGF5
b3V0VGVzdHMvZmFzdC9kb20vZ2xvYmFsLWNvbnN0cnVjdG9ycy5odG1sCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IExheW91dFRlc3RzL2Zhc3QvZG9tL2dsb2JhbC1jb25zdHJ1Y3RvcnMuaHRtbAkocmV2aXNpb24g
MTQ3MzMpCisrKyBMYXlvdXRUZXN0cy9mYXN0L2RvbS9nbG9iYWwtY29uc3RydWN0b3JzLmh0bWwJ
KHdvcmtpbmcgY29weSkKQEAgLTE2LDkgKzE2LDYgQEAgZnVuY3Rpb24gcHJpbnQobWVzc2FnZSwg
Y29sb3IpIAogICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjb25zb2xlIikuYXBwZW5kQ2hp
bGQocGFyYWdyYXBoKTsKIH0KIAotdmFyIGVsZW1lbnQsIHJhbmdlLCBub2RlRmlsdGVyLCBjc3NS
dWxlLCBjc3NQcmltaXRpdmVWYWx1ZSwgY3NzU3R5bGVEZWNsYXJhdGlvbiwgZXZlbnQ7Ci12YXIg
b3JpZ2luYWxOb2RlQ29uc3RydWN0b3I7Ci0KIGZ1bmN0aW9uIHNob3VsZEJlKGEsIGIpCiB7CiAg
ICAgdmFyIGV2YWxBOwpAQCAtMzcsNyArMzQsMTkgQEAgZnVuY3Rpb24gdGVzdCgpIAogewogICAg
IGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCiAgICAgICAgIGxheW91dFRlc3RDb250
cm9sbGVyLmR1bXBBc1RleHQoKTsKLSAgICAgICAgCisKKyAgICBkb21QYXJzZXIgPSBuZXcgRE9N
UGFyc2VyKCk7CisgICAgc2hvdWxkQmUoIkRPTVBhcnNlci5wcm90b3R5cGUuaXNQcm90b3R5cGVP
Zihkb21QYXJzZXIpIiwgdHJ1ZSk7CisgICAgCisgICAgeG1sSHR0cFJlcXVlc3QgPSBuZXcgWE1M
SHR0cFJlcXVlc3QoKTsKKyAgICBzaG91bGRCZSgiWE1MSHR0cFJlcXVlc3QucHJvdG90eXBlLmlz
UHJvdG90eXBlT2YoeG1sSHR0cFJlcXVlc3QpIiwgdHJ1ZSk7CisgICAgCisgICAgeG1sU2VyaWFs
aXplciA9IG5ldyBYTUxTZXJpYWxpemVyKCk7CisgICAgc2hvdWxkQmUoIlhNTFNlcmlhbGl6ZXIu
cHJvdG90eXBlLmlzUHJvdG90eXBlT2YoeG1sU2VyaWFsaXplcikiLCB0cnVlKTsKKyAgICAKKyAg
ICB4c2x0UHJvY2Vzc29yID0gbmV3IFhTTFRQcm9jZXNzb3IoKTsKKyAgICBzaG91bGRCZSgiWFNM
VFByb2Nlc3Nvci5wcm90b3R5cGUuaXNQcm90b3R5cGVPZih4c2x0UHJvY2Vzc29yKSIsIHRydWUp
OworCiAgICAgc2hvdWxkQmUoIndpbmRvdy5Eb2N1bWVudC5wcm90b3R5cGUuaXNQcm90b3R5cGVP
Zihkb2N1bWVudCkiLCB0cnVlKTsKICAgICBzaG91bGRCZSgid2luZG93LkhUTUxEb2N1bWVudC5w
cm90b3R5cGUuaXNQcm90b3R5cGVPZihkb2N1bWVudCkiLCB0cnVlKTsKICAgICAKSW5kZXg6IExh
eW91dFRlc3RzL2Zhc3QvZG9tL3Rlc3QtcHJvdG90eXBlcy1leHBlY3RlZC50eHQKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9kb20vdGVzdC1wcm90b3R5cGVzLWV4cGVjdGVkLnR4dAko
cmV2aXNpb24gMTQ3MzMpCisrKyBMYXlvdXRUZXN0cy9mYXN0L2RvbS90ZXN0LXByb3RvdHlwZXMt
ZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzAsMCBAQAotVGhpcyBjaGVja3Mg
dGhhdCBET01QYXJzZXIsIFhNTEh0dHBSZXF1ZXN0LCBYTUxTZXJpYWxpemVyIGFuZCBYU0xUUHJv
Y2Vzc29yIGhhdmUgdGhlaXIgcHJvdG90eXBlcyBzZXQgY29ycmVjdGx5LiBJZiB0aGlzIHRlc3Qg
aXMgc3VjY2Vzc2Z1bCwgdGhlIHRleHQgIlNVQ0NFU1MiIHdpbGwgYmUgc2hvd24gYmVsb3cuCi1T
VUNDRVNTIQotCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS90ZXN0LXByb3RvdHlwZXMuaHRt
bAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2RvbS90ZXN0LXByb3RvdHlwZXMuaHRt
bAkocmV2aXNpb24gMTQ3MzMpCisrKyBMYXlvdXRUZXN0cy9mYXN0L2RvbS90ZXN0LXByb3RvdHlw
ZXMuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMSw0OCArMCwwIEBACi08aHRtbD4KLTxoZWFkPgot
PHNjcmlwdD4KLWZ1bmN0aW9uIGRlYnVnKHN0cikgewotICAgIHZhciBjID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoJ2NvbnNvbGUnKQotICAgIGMuaW5uZXJIVE1MICs9IChzdHIgKyAiPGJyPiIp
Ci19Ci0KLXZhciBudW1FcnJvcnMgPSAwOwotCi1mdW5jdGlvbiB0ZXN0UHJvdG90eXBlKG5hbWUp
Ci17Ci0gICAgZnVuYyA9IGV2YWwobmFtZSk7Ci0gICAgCi0gICAgaWYgKCFmdW5jLnByb3RvdHlw
ZSkgewotICAgICAgICBkZWJ1ZygiRkFJTFVSRTogIiArIG5hbWUgKyAiIGRpZCBub3QgaGF2ZSBh
IHByb3RvdHlwZSBkZWZpbmVkLiIpCi0gICAgICAgIG51bUVycm9ycysrOyAgICAgICAgCi0gICAg
ICAgIHJldHVybjsKLSAgICB9Ci0gICAgCi0gICAgLy8gQ3JlYXRlIGFuIG9iamVjdAotICAgIG8g
PSBuZXcgZnVuYygpCi0gICAgaWYgKCFmdW5jLnByb3RvdHlwZS5pc1Byb3RvdHlwZU9mKG8pKSB7
Ci0gICAgICAgIGRlYnVnKCdGQUlMVVJFOiBOZXdseSBjcmVhdGVkIG9iamVjdCBvZiB0eXBlICcg
KyBuYW1lICsgIiBkb2VzIG5vdCBoYXZlICIgKyBuYW1lICsgIi5wcm90b3R5cGUgaW4gaXQncyBw
cm90b3R5cGUgY2hhaW4uIik7Ci0gICAgICAgIG51bUVycm9ycysrOwotICAgIH0KLX0KLQotZnVu
Y3Rpb24gcnVuVGVzdHMoKSB7Ci0gICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikK
LSAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOwotICAgICAgICAKLSAg
ICB0ZXN0UHJvdG90eXBlKCJET01QYXJzZXIiKTsKLSAgICB0ZXN0UHJvdG90eXBlKCJYTUxIdHRw
UmVxdWVzdCIpOwotICAgIHRlc3RQcm90b3R5cGUoIlhNTFNlcmlhbGl6ZXIiKTsKLSAgICB0ZXN0
UHJvdG90eXBlKCJYU0xUUHJvY2Vzc29yIik7Ci0gICAgICAgIAotICAgIGlmIChudW1FcnJvcnMg
PT0gMCkKLSAgICAgICAgZGVidWcoJ1NVQ0NFU1MhJykKLX0KLTwvc2NyaXB0PgotPC9oZWFkPgot
PGJvZHkgb25sb2FkPSJydW5UZXN0cygpOyI+Ci1UaGlzIGNoZWNrcyB0aGF0IERPTVBhcnNlciwg
WE1MSHR0cFJlcXVlc3QsIFhNTFNlcmlhbGl6ZXIgYW5kIFhTTFRQcm9jZXNzb3IgaGF2ZSB0aGVp
ciBwcm90b3R5cGVzIHNldCBjb3JyZWN0bHkuIElmIHRoaXMgdGVzdCBpcyBzdWNjZXNzZnVsLCB0
aGUgdGV4dCAiU1VDQ0VTUyIgd2lsbCBiZSBzaG93biBiZWxvdy4KLTxwcmUgaWQ9ImNvbnNvbGUi
PjwvcHJlPgotPC9ib2R5PgotPC9odG1sPgotCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS91
bmRldGVjdGFibGUtZG9jdW1lbnQtYWxsLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9mYXN0L2RvbS91bmRldGVjdGFibGUtZG9jdW1lbnQtYWxsLWV4cGVjdGVkLnR4dAko
cmV2aXNpb24gMTQ3MzMpCisrKyBMYXlvdXRUZXN0cy9mYXN0L2RvbS91bmRldGVjdGFibGUtZG9j
dW1lbnQtYWxsLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMSw0ICsxLDQgQEAKIFRo
aXMgdGVzdHMgdGhhdCBkb2N1bWVudC5hbGwgc2hvdWxkIGJlIHVuZGV0ZWN0YWJsZSwgYW5kIHRo
YXQgaXQgc2hvdWxkIGJlIHBvc3NpYmxlIHRvIHNldCBkb2N1bWVudC5hbGwgdG8gc29tZXRoaW5n
IGVsc2UuIElmIHRoaXMgdGVzdCBpcyBzdWNjZXNzZnVsLCB0aGUgdGV4dCAiU1VDQ0VTUyIgc2hv
dWxkIGJlIHNob3duIGJlbG93LgotZG9jdW1lbnQuYWxsOiBbb2JqZWN0IEhUTUxDb2xsZWN0aW9u
XQorZG9jdW1lbnQuYWxsOiBbb2JqZWN0IENvbGxlY3Rpb25dCiBTVUNDRVNTIQogCkluZGV4OiBM
YXlvdXRUZXN0cy9mYXN0L2RvbS9wcm90b3R5cGVzLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9mYXN0L2RvbS9wcm90b3R5cGVzLWV4cGVjdGVkLnR4dAkocmV2aXNpb24g
MCkKKysrIExheW91dFRlc3RzL2Zhc3QvZG9tL3Byb3RvdHlwZXMtZXhwZWN0ZWQudHh0CShyZXZp
c2lvbiAwKQpAQCAtMCwwICsxLDEzIEBACitUaGlzIHRlc3QgY2hlY2tzIHNvbWUgRE9NIG9iamVj
dCBwcm90b3R5cGVzIHRoYXQgV2ViS2l0IGhhcyBnb3R0ZW4gd3JvbmcgaW4gdGhlIHBhc3QuIElm
IHRoZSB0ZXN0IHBhc3NlcywgeW91J2xsIHNlZSBhIHNlcmllcyBvZiAnUEFTUycgbWVzc2FnZXMg
YmVsb3cuCisKK1BBU1M6IE9iamVjdC5wcm90b3R5cGUuaXNQcm90b3R5cGVPZih3aW5kb3cuRE9N
RXhjZXB0aW9uKSBzaG91bGQgYmUgdHJ1ZSBhbmQgaXMuCitQQVNTOiBPYmplY3QucHJvdG90eXBl
LmlzUHJvdG90eXBlT2Yod2luZG93Lk9wdGlvbikgc2hvdWxkIGJlIHRydWUgYW5kIGlzLgorUEFT
UzogT2JqZWN0LnByb3RvdHlwZS5pc1Byb3RvdHlwZU9mKGNzc1ZhbHVlKSBzaG91bGQgYmUgdHJ1
ZSBhbmQgaXMuCitQQVNTOiBPYmplY3QucHJvdG90eXBlLmlzUHJvdG90eXBlT2YocmdiQ29sb3Ip
IHNob3VsZCBiZSB0cnVlIGFuZCBpcy4KK1BBU1M6IE9iamVjdC5wcm90b3R5cGUuaXNQcm90b3R5
cGVPZihyZWN0KSBzaG91bGQgYmUgdHJ1ZSBhbmQgaXMuCitQQVNTOiBPYmplY3QucHJvdG90eXBl
LmlzUHJvdG90eXBlT2Yoc3R5bGVTaGVldExpc3QpIHNob3VsZCBiZSB0cnVlIGFuZCBpcy4KK1BB
U1M6IE9iamVjdC5wcm90b3R5cGUuaXNQcm90b3R5cGVPZihzdHlsZVNoZWV0KSBzaG91bGQgYmUg
dHJ1ZSBhbmQgaXMuCitQQVNTOiBPYmplY3QucHJvdG90eXBlLmlzUHJvdG90eXBlT2YoY3NzUnVs
ZSkgc2hvdWxkIGJlIHRydWUgYW5kIGlzLgorUEFTUzogT2JqZWN0LnByb3RvdHlwZS5pc1Byb3Rv
dHlwZU9mKG5vZGVMaXN0KSBzaG91bGQgYmUgdHJ1ZSBhbmQgaXMuCitQQVNTOiBPYmplY3QucHJv
dG90eXBlLmlzUHJvdG90eXBlT2YobmFtZWROb2Rlc0NvbGxlY3Rpb24pIHNob3VsZCBiZSB0cnVl
IGFuZCBpcy4KKwpJbmRleDogV2ViQ29yZS9iaW5kaW5ncy9qcy9ranNfY3NzLmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gV2ViQ29yZS9iaW5kaW5ncy9qcy9ranNfY3NzLmgJKHJldmlzaW9uIDE0NzMzKQorKysg
V2ViQ29yZS9iaW5kaW5ncy9qcy9ranNfY3NzLmgJKHdvcmtpbmcgY29weSkKQEAgLTM2LDYgKzM2
LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgIGNsYXNzIENTU1N0eWxlU2hlZXQ7CiAgICAg
Y2xhc3MgQ1NTVmFsdWU7CiAgICAgY2xhc3MgQ1NTVmFsdWVMaXN0OworICAgIGNsYXNzIEpTQ1NT
UnVsZTsKICAgICBjbGFzcyBKU0NTU1N0eWxlRGVjbGFyYXRpb247CiAgICAgY2xhc3MgTWVkaWFM
aXN0OwogICAgIGNsYXNzIFN0eWxlU2hlZXQ7CkBAIC0xNTAsNyArMTUxLDYgQEAgbmFtZXNwYWNl
IEtKUyB7CiAKICAgY2xhc3MgRE9NQ1NTUnVsZSA6IHB1YmxpYyBET01PYmplY3QgewogICBwdWJs
aWM6Ci0gICAgRE9NQ1NTUnVsZShFeGVjU3RhdGUqLCBXZWJDb3JlOjpDU1NSdWxlKik7CiAgICAg
dmlydHVhbCB+RE9NQ1NTUnVsZSgpOwogICAgIHZpcnR1YWwgYm9vbCBnZXRPd25Qcm9wZXJ0eVNs
b3QoRXhlY1N0YXRlKiwgY29uc3QgSWRlbnRpZmllciYsIFByb3BlcnR5U2xvdCYpOwogICAgIEpT
VmFsdWUqIGdldFZhbHVlUHJvcGVydHkoRXhlY1N0YXRlKiwgaW50IHRva2VuKSBjb25zdDsKQEAg
LTE2NSw2ICsxNjUsOCBAQCBuYW1lc3BhY2UgS0pTIHsKICAgICAgICAgICAgSW1wb3J0X0hyZWYs
IEltcG9ydF9NZWRpYSwgSW1wb3J0X1N0eWxlU2hlZXQsIENoYXJzZXRfRW5jb2RpbmcgfTsKICAg
ICBXZWJDb3JlOjpDU1NSdWxlKiBpbXBsKCkgY29uc3QgeyByZXR1cm4gbV9pbXBsLmdldCgpOyB9
CiAgIHByaXZhdGU6CisgICAgZnJpZW5kIGNsYXNzIFdlYkNvcmU6OkpTQ1NTUnVsZTsKKyAgICBE
T01DU1NSdWxlKEV4ZWNTdGF0ZSosIFdlYkNvcmU6OkNTU1J1bGUqKTsKICAgICBSZWZQdHI8V2Vi
Q29yZTo6Q1NTUnVsZT4gbV9pbXBsOwogICB9OwogCkBAIC0xNzIsNyArMTc0LDcgQEAgbmFtZXNw
YWNlIEtKUyB7CiAKICAgY2xhc3MgRE9NQ1NTVmFsdWUgOiBwdWJsaWMgRE9NT2JqZWN0IHsKICAg
cHVibGljOgotICAgIERPTUNTU1ZhbHVlKEV4ZWNTdGF0ZSosIFdlYkNvcmU6OkNTU1ZhbHVlKiB2
KSA6IG1faW1wbCh2KSB7IH0KKyAgICBET01DU1NWYWx1ZShFeGVjU3RhdGUqLCBXZWJDb3JlOjpD
U1NWYWx1ZSopOwogICAgIHZpcnR1YWwgfkRPTUNTU1ZhbHVlKCk7CiAgICAgdmlydHVhbCBib29s
IGdldE93blByb3BlcnR5U2xvdChFeGVjU3RhdGUqLCBjb25zdCBJZGVudGlmaWVyJiwgUHJvcGVy
dHlTbG90Jik7CiAgICAgSlNWYWx1ZSogZ2V0VmFsdWVQcm9wZXJ0eShFeGVjU3RhdGUqLCBpbnQg
dG9rZW4pIGNvbnN0OwpAQCAtMTk0LDcgKzE5Niw3IEBAIG5hbWVzcGFjZSBLSlMgewogCiAgIGNs
YXNzIERPTVJHQkNvbG9yIDogcHVibGljIERPTU9iamVjdCB7CiAgIHB1YmxpYzoKLSAgICBET01S
R0JDb2xvcih1bnNpZ25lZCBjb2xvcikgOiBtX2NvbG9yKGNvbG9yKSB7IH0KKyAgICBET01SR0JD
b2xvcihFeGVjU3RhdGUqLCB1bnNpZ25lZCBjb2xvcik7CiAgICAgfkRPTVJHQkNvbG9yKCk7CiAg
ICAgdmlydHVhbCBib29sIGdldE93blByb3BlcnR5U2xvdChFeGVjU3RhdGUqLCBjb25zdCBJZGVu
dGlmaWVyJiwgUHJvcGVydHlTbG90Jik7CiAgICAgSlNWYWx1ZSogZ2V0VmFsdWVQcm9wZXJ0eShF
eGVjU3RhdGUqLCBpbnQgdG9rZW4pIGNvbnN0OwpAQCAtMjEwLDcgKzIxMiw3IEBAIG5hbWVzcGFj
ZSBLSlMgewogCiAgIGNsYXNzIERPTVJlY3QgOiBwdWJsaWMgRE9NT2JqZWN0IHsKICAgcHVibGlj
OgotICAgIERPTVJlY3QoRXhlY1N0YXRlKiwgV2ViQ29yZTo6UmVjdEltcGwqIHIpIDogbV9yZWN0
KHIpIHsgfQorICAgIERPTVJlY3QoRXhlY1N0YXRlKiwgV2ViQ29yZTo6UmVjdEltcGwqIHIpOwog
ICAgIH5ET01SZWN0KCk7CiAgICAgdmlydHVhbCBib29sIGdldE93blByb3BlcnR5U2xvdChFeGVj
U3RhdGUqLCBjb25zdCBJZGVudGlmaWVyJiwgUHJvcGVydHlTbG90Jik7CiAgICAgSlNWYWx1ZSog
Z2V0VmFsdWVQcm9wZXJ0eShFeGVjU3RhdGUqLCBpbnQgdG9rZW4pIGNvbnN0OwpJbmRleDogV2Vi
Q29yZS9iaW5kaW5ncy9qcy9ranNfZXZlbnRzLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9iaW5k
aW5ncy9qcy9ranNfZXZlbnRzLmgJKHJldmlzaW9uIDE0NzMzKQorKysgV2ViQ29yZS9iaW5kaW5n
cy9qcy9ranNfZXZlbnRzLmgJKHdvcmtpbmcgY29weSkKQEAgLTk0LDE5ICs5NCw2IEBAIG5hbWVz
cGFjZSBLSlMgewogCiAgICAgSlNWYWx1ZSogZ2V0Tm9kZUV2ZW50TGlzdGVuZXIoV2ViQ29yZTo6
Tm9kZSogbiwgY29uc3QgV2ViQ29yZTo6QXRvbWljU3RyaW5nJiBldmVudFR5cGUpOwogCi0gICAg
Ly8gQ29uc3RydWN0b3IgZm9yIEV2ZW50IC0gY3VycmVudGx5IG9ubHkgdXNlZCBmb3Igc29tZSBn
bG9iYWwgdmFycwotICAgIGNsYXNzIEV2ZW50Q29uc3RydWN0b3IgOiBwdWJsaWMgRE9NT2JqZWN0
IHsKLSAgICBwdWJsaWM6Ci0gICAgICAgIEV2ZW50Q29uc3RydWN0b3IoRXhlY1N0YXRlKikgeyB9
Ci0gICAgICAgIHZpcnR1YWwgYm9vbCBnZXRPd25Qcm9wZXJ0eVNsb3QoRXhlY1N0YXRlKiwgY29u
c3QgSWRlbnRpZmllciYsIFByb3BlcnR5U2xvdCYpOwotICAgICAgICBKU1ZhbHVlKiBnZXRWYWx1
ZVByb3BlcnR5KEV4ZWNTdGF0ZSosIGludCB0b2tlbikgY29uc3Q7Ci0gICAgICAgIC8vIG5vIHB1
dCAtIGFsbCByZWFkLW9ubHkKLSAgICAgICAgdmlydHVhbCBjb25zdCBDbGFzc0luZm8qIGNsYXNz
SW5mbygpIGNvbnN0IHsgcmV0dXJuICZpbmZvOyB9Ci0gICAgICAgIHN0YXRpYyBjb25zdCBDbGFz
c0luZm8gaW5mbzsKLSAgICB9OwotCi0gICAgSlNWYWx1ZSogZ2V0RXZlbnRDb25zdHJ1Y3RvcihF
eGVjU3RhdGUqKTsKLQogICAgIGNsYXNzIERPTUV2ZW50IDogcHVibGljIERPTU9iamVjdCB7CiAg
ICAgcHVibGljOgogICAgICAgICBET01FdmVudChFeGVjU3RhdGUqLCBXZWJDb3JlOjpFdmVudCop
OwpJbmRleDogV2ViQ29yZS9iaW5kaW5ncy9qcy9ranNfZG9tLmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBX
ZWJDb3JlL2JpbmRpbmdzL2pzL2tqc19kb20uY3BwCShyZXZpc2lvbiAxNDczMykKKysrIFdlYkNv
cmUvYmluZGluZ3MvanMva2pzX2RvbS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTcwOSw2ICs3MDks
MTIgQEAgS0pTX0lNUExFTUVOVF9QUk9UT0ZVTkMoRE9NTm9kZUxpc3RGdW5jKQogCiBjb25zdCBD
bGFzc0luZm8gRE9NTm9kZUxpc3Q6OmluZm8gPSB7ICJOb2RlTGlzdCIsIDAsICZET01Ob2RlTGlz
dFRhYmxlLCAwIH07CiAKK0RPTU5vZGVMaXN0OjpET01Ob2RlTGlzdChFeGVjU3RhdGUqIGV4ZWMs
IFdlYkNvcmU6Ok5vZGVMaXN0ICpsKSAKKzogbV9pbXBsKGwpIAoreyAKKyAgICBzZXRQcm90b3R5
cGUoZXhlYy0+bGV4aWNhbEludGVycHJldGVyKCktPmJ1aWx0aW5PYmplY3RQcm90b3R5cGUoKSk7
Cit9CisKIERPTU5vZGVMaXN0Ojp+RE9NTm9kZUxpc3QoKQogewogICBTY3JpcHRJbnRlcnByZXRl
cjo6Zm9yZ2V0RE9NT2JqZWN0KG1faW1wbC5nZXQoKSk7CkBAIC0xMDcwLDcgKzEwNzYsMTIgQEAg
Y29uc3QgQ2xhc3NJbmZvIERPTUV4Y2VwdGlvbkNvbnN0cnVjdG9yOgogQGVuZAogKi8KIAotYm9v
bCBET01FeGNlcHRpb25Db25zdHJ1Y3Rvcjo6Z2V0T3duUHJvcGVydHlTbG90KEV4ZWNTdGF0ZSog
ZXhlYywgY29uc3QgSWRlbnRpZmllciYgcHJvcGVydHlOYW1lLCBQcm9wZXJ0eVNsb3QmIHNsb3Qp
CitET01FeGNlcHRpb25Db25zdHJ1Y3Rvcjo6RE9NRXhjZXB0aW9uQ29uc3RydWN0b3IoRXhlY1N0
YXRlKiBleGVjKSAKK3sgCisgICAgc2V0UHJvdG90eXBlKGV4ZWMtPmxleGljYWxJbnRlcnByZXRl
cigpLT5idWlsdGluT2JqZWN0UHJvdG90eXBlKCkpOworfQorCitib29sIERPTUV4Y2VwdGlvbkNv
bnN0cnVjdG9yOjpnZXRPd25Qcm9wZXJ0eVNsb3QoRXhlY1N0YXRlICpleGVjLCBjb25zdCBJZGVu
dGlmaWVyJiBwcm9wZXJ0eU5hbWUsIFByb3BlcnR5U2xvdCYgc2xvdCkKIHsKICAgcmV0dXJuIGdl
dFN0YXRpY1ZhbHVlU2xvdDxET01FeGNlcHRpb25Db25zdHJ1Y3RvciwgRE9NT2JqZWN0PihleGVj
LCAmRE9NRXhjZXB0aW9uQ29uc3RydWN0b3JUYWJsZSwgdGhpcywgcHJvcGVydHlOYW1lLCBzbG90
KTsKIH0KQEAgLTEwODgsMTIgKzEwOTksMTUgQEAgSlNPYmplY3QqIGdldERPTUV4Y2VwdGlvbkNv
bnN0cnVjdG9yKEV4ZQogCiAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKK2NvbnN0IENsYXNzSW5mbyBE
T01OYW1lZE5vZGVzQ29sbGVjdGlvbjo6aW5mbyA9IHsgIkNvbGxlY3Rpb24iLCAwLCAwLCAwIH07
CisKIC8vIFN1Y2ggYSBjb2xsZWN0aW9uIGlzIHVzdWFsbHkgdmVyeSBzaG9ydC1saXZlZCwgaXQg
b25seSBleGlzdHMKIC8vIGZvciBjb25zdHJ1Y3RzIGxpa2UgZG9jdW1lbnQuZm9ybXMuPG5hbWU+
WzFdLAogLy8gc28gaXQgc2hvdWxkbid0IGJlIGEgcHJvYmxlbSB0aGF0IGl0J3Mgc3RvcmluZyBh
bGwgdGhlIG5vZGVzICh3aXRoIHRoZSBzYW1lIG5hbWUpLiAoRGF2aWQpCi1ET01OYW1lZE5vZGVz
Q29sbGVjdGlvbjo6RE9NTmFtZWROb2Rlc0NvbGxlY3Rpb24oRXhlY1N0YXRlKiwgY29uc3QgRGVw
cmVjYXRlZFZhbHVlTGlzdDwgUmVmUHRyPFdlYkNvcmU6Ok5vZGU+ID4mIG5vZGVzICkKLSAgICA6
IG1fbm9kZXMobm9kZXMpCitET01OYW1lZE5vZGVzQ29sbGVjdGlvbjo6RE9NTmFtZWROb2Rlc0Nv
bGxlY3Rpb24oRXhlY1N0YXRlKiBleGVjLCBjb25zdCBEZXByZWNhdGVkVmFsdWVMaXN0PCBSZWZQ
dHI8V2ViQ29yZTo6Tm9kZT4gPiYgbm9kZXMgKQorICA6IG1fbm9kZXMobm9kZXMpCiB7CisgICAg
c2V0UHJvdG90eXBlKGV4ZWMtPmxleGljYWxJbnRlcnByZXRlcigpLT5idWlsdGluT2JqZWN0UHJv
dG90eXBlKCkpOwogfQogCiBKU1ZhbHVlKiBET01OYW1lZE5vZGVzQ29sbGVjdGlvbjo6bGVuZ3Ro
R2V0dGVyKEV4ZWNTdGF0ZSogZXhlYywgSlNPYmplY3QqIG9yaWdpbmFsT2JqZWN0LCBjb25zdCBJ
ZGVudGlmaWVyJiBwcm9wZXJ0eU5hbWUsIGNvbnN0IFByb3BlcnR5U2xvdCYgc2xvdCkKSW5kZXg6
IFdlYkNvcmUvYmluZGluZ3MvanMva2pzX2Nzcy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9i
aW5kaW5ncy9qcy9ranNfY3NzLmNwcAkocmV2aXNpb24gMTQ3MzMpCisrKyBXZWJDb3JlL2JpbmRp
bmdzL2pzL2tqc19jc3MuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNzgsOSArMjc4LDEwIEBAIGNv
bnN0IENsYXNzSW5mbyBET01TdHlsZVNoZWV0OjppbmZvID0geyAKIEBlbmQKICovCiAKLURPTVN0
eWxlU2hlZXQ6OkRPTVN0eWxlU2hlZXQoRXhlY1N0YXRlKiwgV2ViQ29yZTo6U3R5bGVTaGVldCog
c3MpIAorRE9NU3R5bGVTaGVldDo6RE9NU3R5bGVTaGVldChFeGVjU3RhdGUqIGV4ZWMsIFdlYkNv
cmU6OlN0eWxlU2hlZXQqIHNzKSAKICAgOiBtX2ltcGwoc3MpIAogeworICAgIHNldFByb3RvdHlw
ZShleGVjLT5sZXhpY2FsSW50ZXJwcmV0ZXIoKS0+YnVpbHRpbk9iamVjdFByb3RvdHlwZSgpKTsK
IH0KIAogRE9NU3R5bGVTaGVldDo6RE9NU3R5bGVTaGVldChXZWJDb3JlOjpTdHlsZVNoZWV0ICpz
cykgCkBAIC0zNTksMTAgKzM2MCwxMSBAQCBjb25zdCBDbGFzc0luZm8gRE9NU3R5bGVTaGVldExp
c3Q6OmluZm8gCiAqLwogS0pTX0lNUExFTUVOVF9QUk9UT0ZVTkMoRE9NU3R5bGVTaGVldExpc3RG
dW5jKSAvLyBub3QgcmVhbGx5IGEgcHJvdG8sIGJ1dCBkb2Vzbid0IG1hdHRlcgogCi1ET01TdHls
ZVNoZWV0TGlzdDo6RE9NU3R5bGVTaGVldExpc3QoRXhlY1N0YXRlKiwgV2ViQ29yZTo6U3R5bGVT
aGVldExpc3QqIHNzbCwgV2ViQ29yZTo6RG9jdW1lbnQqIGRvYykKK0RPTVN0eWxlU2hlZXRMaXN0
OjpET01TdHlsZVNoZWV0TGlzdChFeGVjU3RhdGUqIGV4ZWMsIFdlYkNvcmU6OlN0eWxlU2hlZXRM
aXN0KiBzc2wsIFdlYkNvcmU6OkRvY3VtZW50KiBkb2MpCiAgIDogbV9pbXBsKHNzbCkKICAgLCBt
X2RvYyhkb2MpIAogeworICAgIHNldFByb3RvdHlwZShleGVjLT5sZXhpY2FsSW50ZXJwcmV0ZXIo
KS0+YnVpbHRpbk9iamVjdFByb3RvdHlwZSgpKTsKIH0KIAogRE9NU3R5bGVTaGVldExpc3Q6On5E
T01TdHlsZVNoZWV0TGlzdCgpCkBAIC02NDIsNyArNjQ0LDcgQEAgSlNWYWx1ZSogRE9NQ1NTU3R5
bGVTaGVldFByb3RvRnVuYzo6Y2FsbAogCiBLSlNfSU1QTEVNRU5UX1BST1RPRlVOQyhET01DU1NS
dWxlRnVuYykgLy8gTm90IGEgcHJvdG8sIGJ1dCBkb2Vzbid0IG1hdHRlcgogCi1ET01DU1NSdWxl
OjpET01DU1NSdWxlKEV4ZWNTdGF0ZSosIFdlYkNvcmU6OkNTU1J1bGUqIHIpCitET01DU1NSdWxl
OjpET01DU1NSdWxlKEV4ZWNTdGF0ZSogZXhlYywgV2ViQ29yZTo6Q1NTUnVsZSogcikKICAgOiBt
X2ltcGwocikgCiB7CiB9CkBAIC04NTYsNiArODU4LDEyIEBAIGNvbnN0IENsYXNzSW5mbyBET01D
U1NWYWx1ZTo6aW5mbyA9IHsgIkMKIEtKU19JTVBMRU1FTlRfUFJPVE9GVU5DKERPTUNTU1ZhbHVl
UHJvdG9GdW5jKQogS0pTX0lNUExFTUVOVF9QUk9UT1RZUEUoIkRPTUNTU1ZhbHVlIiwgRE9NQ1NT
VmFsdWVQcm90bywgRE9NQ1NTVmFsdWVQcm90b0Z1bmMpCiAKK0RPTUNTU1ZhbHVlOjpET01DU1NW
YWx1ZShFeGVjU3RhdGUqIGV4ZWMsIFdlYkNvcmU6OkNTU1ZhbHVlKiB2KSAKKzogbV9pbXBsKHYp
IAoreyAKKyAgICBzZXRQcm90b3R5cGUoRE9NQ1NTVmFsdWVQcm90bzo6c2VsZihleGVjKSk7Cit9
CisKIERPTUNTU1ZhbHVlOjp+RE9NQ1NTVmFsdWUoKQogewogICBTY3JpcHRJbnRlcnByZXRlcjo6
Zm9yZ2V0RE9NT2JqZWN0KG1faW1wbC5nZXQoKSk7CkBAIC05MDgsNyArOTE2LDcgQEAgSlNWYWx1
ZSogdG9KUyhFeGVjU3RhdGUqIGV4ZWMsIENTU1ZhbHVlIAogICAgIGVsc2UgaWYgKHYtPmlzUHJp
bWl0aXZlVmFsdWUoKSkKICAgICAgIHJldCA9IG5ldyBKU0NTU1ByaW1pdGl2ZVZhbHVlKGV4ZWMs
IHN0YXRpY19jYXN0PENTU1ByaW1pdGl2ZVZhbHVlKj4odikpOwogICAgIGVsc2UKLSAgICAgIHJl
dCA9IG5ldyBET01DU1NWYWx1ZShleGVjLHYpOworICAgICAgcmV0ID0gbmV3IERPTUNTU1ZhbHVl
KGV4ZWMsIHYpOwogICAgIGludGVycC0+cHV0RE9NT2JqZWN0KHYsIHJldCk7CiAgICAgcmV0dXJu
IHJldDsKICAgfQpAQCAtOTI1LDYgKzkzMywxMiBAQCBjb25zdCBDbGFzc0luZm8gRE9NUkdCQ29s
b3I6OmluZm8gPSB7ICJSCiAgIGJsdWUgIERPTVJHQkNvbG9yOjpCbHVlICAgICAgIERvbnREZWxl
dGV8UmVhZE9ubHkKIEBlbmQKICovCitET01SR0JDb2xvcjo6RE9NUkdCQ29sb3IoRXhlY1N0YXRl
KiBleGVjLCB1bnNpZ25lZCBjb2xvcikgCis6IG1fY29sb3IoY29sb3IpIAoreyAKKyAgICBzZXRQ
cm90b3R5cGUoZXhlYy0+bGV4aWNhbEludGVycHJldGVyKCktPmJ1aWx0aW5PYmplY3RQcm90b3R5
cGUoKSk7Cit9CisKIERPTVJHQkNvbG9yOjp+RE9NUkdCQ29sb3IoKQogewogICAvL3JnYkNvbG9y
cy5yZW1vdmUocmdiQ29sb3IuaGFuZGxlKCkpOwpAQCAtOTUyLDEwICs5NjYsMTAgQEAgSlNWYWx1
ZSogRE9NUkdCQ29sb3I6OmdldFZhbHVlUHJvcGVydHkoRQogICB9CiB9CiAKLUpTVmFsdWUqIGdl
dERPTVJHQkNvbG9yKEV4ZWNTdGF0ZSAqLCB1bnNpZ25lZCBjKQorSlNWYWx1ZSogZ2V0RE9NUkdC
Q29sb3IoRXhlY1N0YXRlKiBleGVjLCB1bnNpZ25lZCBjKQogewogICAvLyAjIyMgaW1wbGVtZW50
IGVxdWFscyBmb3IgUkdCQ29sb3Igc2luY2UgdGhleSdyZSBub3QgcmVmY291bnRlZCBvYmplY3Rz
Ci0gIHJldHVybiBuZXcgRE9NUkdCQ29sb3IoYyk7CisgIHJldHVybiBuZXcgRE9NUkdCQ29sb3Io
ZXhlYywgYyk7CiB9CiAKIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KQEAgLTk2OSw2ICs5ODMsMTIgQEAg
Y29uc3QgQ2xhc3NJbmZvIERPTVJlY3Q6OmluZm8gPSB7ICJSZWN0IgogICBsZWZ0ICAgRE9NUmVj
dDo6TGVmdCAgICBEb250RGVsZXRlfFJlYWRPbmx5CiBAZW5kCiAqLworRE9NUmVjdDo6RE9NUmVj
dChFeGVjU3RhdGUqIGV4ZWMsIFdlYkNvcmU6OlJlY3RJbXBsKiByKSAKKzogbV9yZWN0KHIpIAor
eyAKKyAgICBzZXRQcm90b3R5cGUoZXhlYy0+bGV4aWNhbEludGVycHJldGVyKCktPmJ1aWx0aW5P
YmplY3RQcm90b3R5cGUoKSk7Cit9CisKIERPTVJlY3Q6On5ET01SZWN0KCkKIHsKICAgU2NyaXB0
SW50ZXJwcmV0ZXI6OmZvcmdldERPTU9iamVjdChtX3JlY3QuZ2V0KCkpOwpJbmRleDogV2ViQ29y
ZS9iaW5kaW5ncy9qcy9KU0hUTUxPcHRpb25FbGVtZW50Q29uc3RydWN0b3IuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFdlYkNvcmUvYmluZGluZ3MvanMvSlNIVE1MT3B0aW9uRWxlbWVudENvbnN0cnVjdG9y
LmNwcAkocmV2aXNpb24gMTQ3MzMpCisrKyBXZWJDb3JlL2JpbmRpbmdzL2pzL0pTSFRNTE9wdGlv
bkVsZW1lbnRDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTMyLDYgKzMyLDcgQEAg
bmFtZXNwYWNlIFdlYkNvcmUgewogSlNIVE1MT3B0aW9uRWxlbWVudENvbnN0cnVjdG9yOjpKU0hU
TUxPcHRpb25FbGVtZW50Q29uc3RydWN0b3IoRXhlY1N0YXRlKiBleGVjLCBEb2N1bWVudCogZCkK
ICAgICA6IG1fZG9jKGQpCiB7CisgICAgc2V0UHJvdG90eXBlKGV4ZWMtPmxleGljYWxJbnRlcnBy
ZXRlcigpLT5idWlsdGluT2JqZWN0UHJvdG90eXBlKCkpOwogICAgIHB1dChleGVjLCBsZW5ndGhQ
cm9wZXJ0eU5hbWUsIGpzTnVtYmVyKDQpLCBSZWFkT25seXxEb250RGVsZXRlfERvbnRFbnVtKTsK
IH0KIApJbmRleDogV2ViQ29yZS9iaW5kaW5ncy9qcy9ranNfaHRtbC5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gV2ViQ29yZS9iaW5kaW5ncy9qcy9ranNfaHRtbC5jcHAJKHJldmlzaW9uIDE0NzMzKQorKysg
V2ViQ29yZS9iaW5kaW5ncy9qcy9ranNfaHRtbC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE1ODcs
NyArMTU4Nyw3IEBAIEtKU19ERUZJTkVfUFJPVE9UWVBFKEhUTUxDb2xsZWN0aW9uUHJvdG8KIEtK
U19JTVBMRU1FTlRfUFJPVE9GVU5DKEhUTUxDb2xsZWN0aW9uUHJvdG9GdW5jKQogS0pTX0lNUExF
TUVOVF9QUk9UT1RZUEUoIkhUTUxDb2xsZWN0aW9uIixIVE1MQ29sbGVjdGlvblByb3RvLEhUTUxD
b2xsZWN0aW9uUHJvdG9GdW5jKQogCi1jb25zdCBDbGFzc0luZm8gSlNIVE1MQ29sbGVjdGlvbjo6
aW5mbyA9IHsgIkhUTUxDb2xsZWN0aW9uIiwgMCwgMCwgMCB9OworY29uc3QgQ2xhc3NJbmZvIEpT
SFRNTENvbGxlY3Rpb246OmluZm8gPSB7ICJDb2xsZWN0aW9uIiwgMCwgMCwgMCB9OwogCiBKU0hU
TUxDb2xsZWN0aW9uOjpKU0hUTUxDb2xsZWN0aW9uKEV4ZWNTdGF0ZSogZXhlYywgSFRNTENvbGxl
Y3Rpb24gKmMpCiAgIDogbV9pbXBsKGMpIApJbmRleDogV2ViQ29yZS9iaW5kaW5ncy9qcy9ranNf
ZG9tLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9iaW5kaW5ncy9qcy9ranNfZG9tLmgJKHJldmlz
aW9uIDE0NzMzKQorKysgV2ViQ29yZS9iaW5kaW5ncy9qcy9ranNfZG9tLmgJKHdvcmtpbmcgY29w
eSkKQEAgLTc1LDcgKzc1LDcgQEAgbmFtZXNwYWNlIEtKUyB7CiAKICAgY2xhc3MgRE9NTm9kZUxp
c3QgOiBwdWJsaWMgRE9NT2JqZWN0IHsKICAgcHVibGljOgotICAgIERPTU5vZGVMaXN0KEV4ZWNT
dGF0ZSAqLCBXZWJDb3JlOjpOb2RlTGlzdCAqbCkgOiBtX2ltcGwobCkgeyB9CisgICAgRE9NTm9k
ZUxpc3QoRXhlY1N0YXRlICosIFdlYkNvcmU6Ok5vZGVMaXN0ICpsKTsKICAgICB+RE9NTm9kZUxp
c3QoKTsKICAgICB2aXJ0dWFsIGJvb2wgZ2V0T3duUHJvcGVydHlTbG90KEV4ZWNTdGF0ZSAqLCBj
b25zdCBJZGVudGlmaWVyJiwgUHJvcGVydHlTbG90Jik7CiAgICAgSlNWYWx1ZSAqZ2V0VmFsdWVQ
cm9wZXJ0eShFeGVjU3RhdGUgKmV4ZWMsIGludCB0b2tlbikgY29uc3Q7CkBAIC0xMjYsNyArMTI2
LDcgQEAgbmFtZXNwYWNlIEtKUyB7CiAgIC8vIENvbnN0cnVjdG9yIGZvciBET01FeGNlcHRpb24g
LSBjb25zdHJ1Y3RvciBzdHVmZiBub3QgaW1wbGVtZW50ZWQgeWV0CiAgIGNsYXNzIERPTUV4Y2Vw
dGlvbkNvbnN0cnVjdG9yIDogcHVibGljIERPTU9iamVjdCB7CiAgIHB1YmxpYzoKLSAgICBET01F
eGNlcHRpb25Db25zdHJ1Y3RvcihFeGVjU3RhdGUgKikgeyB9CisgICAgRE9NRXhjZXB0aW9uQ29u
c3RydWN0b3IoRXhlY1N0YXRlKik7CiAgICAgdmlydHVhbCBib29sIGdldE93blByb3BlcnR5U2xv
dChFeGVjU3RhdGUgKiwgY29uc3QgSWRlbnRpZmllciYsIFByb3BlcnR5U2xvdCYpOwogICAgIEpT
VmFsdWUgKmdldFZhbHVlUHJvcGVydHkoRXhlY1N0YXRlICpleGVjLCBpbnQgdG9rZW4pIGNvbnN0
OwogICAgIC8vIG5vIHB1dCAtIGFsbCByZWFkLW9ubHkKQEAgLTE0OSw3ICsxNDksOSBAQCBuYW1l
c3BhY2UgS0pTIHsKICAgcHVibGljOgogICAgIERPTU5hbWVkTm9kZXNDb2xsZWN0aW9uKEV4ZWNT
dGF0ZSAqZXhlYywgY29uc3QgRGVwcmVjYXRlZFZhbHVlTGlzdDwgUmVmUHRyPFdlYkNvcmU6Ok5v
ZGU+ID4mIG5vZGVzICk7CiAgICAgdmlydHVhbCBib29sIGdldE93blByb3BlcnR5U2xvdChFeGVj
U3RhdGUgKiwgY29uc3QgSWRlbnRpZmllciYsIFByb3BlcnR5U2xvdCYpOwotICBwcml2YXRlOgor
ICAgIHZpcnR1YWwgY29uc3QgQ2xhc3NJbmZvKiBjbGFzc0luZm8oKSBjb25zdCB7IHJldHVybiAm
aW5mbzsgfQorICAgIHN0YXRpYyBjb25zdCBDbGFzc0luZm8gaW5mbzsKK3ByaXZhdGU6CiAgICAg
c3RhdGljIEpTVmFsdWUgKmxlbmd0aEdldHRlcihFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0ICos
IGNvbnN0IElkZW50aWZpZXImLCBjb25zdCBQcm9wZXJ0eVNsb3QmIHNsb3QpOwogICAgIHN0YXRp
YyBKU1ZhbHVlICppbmRleEdldHRlcihFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0ICosIGNvbnN0
IElkZW50aWZpZXImLCBjb25zdCBQcm9wZXJ0eVNsb3QmIHNsb3QpOwogCkluZGV4OiBXZWJDb3Jl
L1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvago9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3Jl
L1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagkocmV2aXNpb24gMTQ3MzMpCisrKyBX
ZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagkod29ya2luZyBjb3B5KQpA
QCAtMTUyNCw2ICsxNTI0LDIzIEBACiAJCUZBRTA0MTkwMDk3NTk2QzkwMDA1NDBCRSAvKiBTVkdJ
bWFnZUxvYWRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gRkFFMDQxOEUwOTc1OTZDOTAwMDU0MEJFIC8qIFNWR0ltYWdlTG9hZGVyLmggKi87IH07CiAv
KiBFbmQgUEJYQnVpbGRGaWxlIHNlY3Rpb24gKi8KIAorLyogQmVnaW4gUEJYQnVpbGRTdHlsZSBz
ZWN0aW9uICovCisJCTE0NEI5REZEMEEzNDEyNUIwMDJERTJDQSAvKiBEZXZlbG9wbWVudCAqLyA9
IHsKKwkJCWlzYSA9IFBCWEJ1aWxkU3R5bGU7CisJCQlidWlsZFNldHRpbmdzID0geworCQkJCUNP
UFlfUEhBU0VfU1RSSVAgPSBOTzsKKwkJCX07CisJCQluYW1lID0gRGV2ZWxvcG1lbnQ7CisJCX07
CisJCTE0NEI5REZFMEEzNDEyNUIwMDJERTJDQSAvKiBEZXBsb3ltZW50ICovID0geworCQkJaXNh
ID0gUEJYQnVpbGRTdHlsZTsKKwkJCWJ1aWxkU2V0dGluZ3MgPSB7CisJCQkJQ09QWV9QSEFTRV9T
VFJJUCA9IFlFUzsKKwkJCX07CisJCQluYW1lID0gRGVwbG95bWVudDsKKwkJfTsKKy8qIEVuZCBQ
QlhCdWlsZFN0eWxlIHNlY3Rpb24gKi8KKwogLyogQmVnaW4gUEJYQ29udGFpbmVySXRlbVByb3h5
IHNlY3Rpb24gKi8KIAkJREQwNDFGRjAwOUQ5RTMyNTAwMTBBRjJBIC8qIFBCWENvbnRhaW5lckl0
ZW1Qcm94eSAqLyA9IHsKIAkJCWlzYSA9IFBCWENvbnRhaW5lckl0ZW1Qcm94eTsKQEAgLTYyMTYs
NiArNjIzMywxMiBAQAogCQkwODY3RDY5MEZFODQwMjhGQzAyQUFDMDcgLyogUHJvamVjdCBvYmpl
Y3QgKi8gPSB7CiAJCQlpc2EgPSBQQlhQcm9qZWN0OwogCQkJYnVpbGRDb25maWd1cmF0aW9uTGlz
dCA9IDE0OUMyODQzMDg5MDJCMTEwMDhBOUVGQyAvKiBCdWlsZCBjb25maWd1cmF0aW9uIGxpc3Qg
Zm9yIFBCWFByb2plY3QgIldlYkNvcmUiICovOworCQkJYnVpbGRTZXR0aW5ncyA9IHsKKwkJCX07
CisJCQlidWlsZFN0eWxlcyA9ICgKKwkJCQkxNDRCOURGRDBBMzQxMjVCMDAyREUyQ0EgLyogRGV2
ZWxvcG1lbnQgKi8sCisJCQkJMTQ0QjlERkUwQTM0MTI1QjAwMkRFMkNBIC8qIERlcGxveW1lbnQg
Ki8sCisJCQkpOwogCQkJaGFzU2Nhbm5lZEZvckVuY29kaW5ncyA9IDE7CiAJCQlrbm93blJlZ2lv
bnMgPSAoCiAJCQkJRW5nbGlzaCwKSW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFdlYkNvcmUvQ2hhbmdlTG9nCShyZXZpc2lvbiAxNDczMykKKysrIFdlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsNDUgQEAKKzIwMDYtMDYtMDQgIEdlb2ZmcmV5
IEdhcmVuICA8Z2dhcmVuQGFwcGxlLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICAtIGh0dHA6Ly9idWd6aWxsYS5vcGVuZGFyd2luLm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9OTMxMAorICAgICAgICBBZGQgbWlzc2luZyBET00gcHJvdG90eXBlcyBhbmQg
b3RoZXIgRE9NIGNsZWFudXAKKworICAgICAgICAtIEFkZGVkIHRoZSBidWlsdC1pbiBvYmplY3Qg
cHJvdG90eXBlIHRvIERPTSBvYmplY3RzIHRoYXQgd2VyZSBtaXNzaW5nIGl0CisgICAgICAgIHNv
IHRoYXQgcHJpbWl0aXZlIG9wZXJhdGlvbnMgbGlrZSA9PSB3b3JrIG9uIHRoZW0uCisgICAgICAg
IAorICAgICAgICAtIFJlbW92ZWQgZGVhZCBFdmVudENvbnN0cnVjdG9yIGNsYXNzIChpdCdzIGF1
dG9nZW5lcmF0ZWQgbm93KQorICAgICAgICAKKyAgICAgICAgLSBDaGFuZ2VkIEhUTUwgY29sbGVj
dGlvbnMgdG8gZGVzY3JpYmUgdGhlbXNlbHZlcyBhcyAiW29iamVjdCBDb2xsZWN0aW9uXSIsCisg
ICAgICAgIHRvIG1hdGNoIElFLgorICAgICAgICAKKyAgICAgICAgLSBNYWRlIERPTUNTU1J1bGUg
Y29uc3RydWN0b3IgcHJpdmF0ZSBiZWNhdXNlIEpTQ1NTUnVsZSBpcyB0aGUgY2xhc3MKKyAgICAg
ICAgdG8gdXNlLgorICAgICAgICAKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0hUTUxPcHRpb25F
bGVtZW50Q29uc3RydWN0b3IuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SlNIVE1MT3B0aW9uRWxl
bWVudENvbnN0cnVjdG9yOjpKU0hUTUxPcHRpb25FbGVtZW50Q29uc3RydWN0b3IpOgorICAgICAg
ICAqIGJpbmRpbmdzL2pzL2tqc19jc3MuY3BwOgorICAgICAgICAoS0pTOjpET01TdHlsZVNoZWV0
OjpET01TdHlsZVNoZWV0KToKKyAgICAgICAgKEtKUzo6RE9NU3R5bGVTaGVldExpc3Q6OkRPTVN0
eWxlU2hlZXRMaXN0KToKKyAgICAgICAgKEtKUzo6RE9NQ1NTUnVsZTo6RE9NQ1NTUnVsZSk6Cisg
ICAgICAgIChLSlM6OkRPTUNTU1ZhbHVlOjpET01DU1NWYWx1ZSk6CisgICAgICAgIChLSlM6OnRv
SlMpOgorICAgICAgICAoS0pTOjpET01SR0JDb2xvcjo6RE9NUkdCQ29sb3IpOgorICAgICAgICAo
S0pTOjpnZXRET01SR0JDb2xvcik6CisgICAgICAgIChLSlM6OkRPTVJlY3Q6OkRPTVJlY3QpOgor
ICAgICAgICAqIGJpbmRpbmdzL2pzL2tqc19jc3MuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9r
anNfZG9tLmNwcDoKKyAgICAgICAgKEtKUzo6RE9NTm9kZUxpc3Q6OkRPTU5vZGVMaXN0KToKKyAg
ICAgICAgKEtKUzo6RE9NRXhjZXB0aW9uQ29uc3RydWN0b3I6OkRPTUV4Y2VwdGlvbkNvbnN0cnVj
dG9yKToKKyAgICAgICAgKEtKUzo6RE9NRXhjZXB0aW9uQ29uc3RydWN0b3I6OmdldE93blByb3Bl
cnR5U2xvdCk6CisgICAgICAgIChLSlM6Oik6CisgICAgICAgIChLSlM6OkRPTU5hbWVkTm9kZXND
b2xsZWN0aW9uOjpET01OYW1lZE5vZGVzQ29sbGVjdGlvbik6CisgICAgICAgICogYmluZGluZ3Mv
anMva2pzX2RvbS5oOgorICAgICAgICAoS0pTOjpET01OYW1lZE5vZGVzQ29sbGVjdGlvbjo6Y2xh
c3NJbmZvKToKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9ranNfZXZlbnRzLmg6CisgICAgICAgICog
YmluZGluZ3MvanMva2pzX2h0bWwuY3BwOgorICAgICAgICAoS0pTOjopOgorCiAyMDA2LTA2LTA0
ICBEYXJpbiBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBN
YWNpZWouCg==
</data>
<flag name="review"
          id="2522"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>