<?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>33232</bug_id>
          
          <creation_ts>2010-01-05 15:04:33 -0800</creation_ts>
          <short_desc>[v8] Move V8DOMWindowShell to ScriptController</short_desc>
          <delta_ts>2014-12-16 00:48:26 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebCore JavaScript</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Other</rep_platform>
          <op_sys>OS X 10.5</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>INVALID</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="Adam Barth">abarth</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>dglazkov</cc>
    
    <cc>kbalazs</cc>
    
    <cc>pkasting</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>177421</commentid>
    <comment_count>0</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-01-05 15:04:33 -0800</bug_when>
    <thetext>[v8] Move V8DOMWindowShell to ScriptController</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>177423</commentid>
    <comment_count>1</comment_count>
      <attachid>45934</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-01-05 15:07:11 -0800</bug_when>
    <thetext>Created attachment 45934
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>177424</commentid>
    <comment_count>2</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-01-05 15:07:31 -0800</bug_when>
    <thetext>I tried to keep this one small...  Not sure I succeeded.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>177429</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-01-05 15:10:18 -0800</bug_when>
    <thetext>style-queue ran check-webkit-style on attachment 45934 without any errors.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>177461</commentid>
    <comment_count>4</comment_count>
      <attachid>45934</attachid>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2010-01-05 16:35:48 -0800</bug_when>
    <thetext>Comment on attachment 45934
Patch

Rocking!

&gt; +    ~V8DOMWindowShell();

virtual?

&gt; +        // FIXME: I be we can clean this up a bit!

We be cleanin&apos; :D</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>177492</commentid>
    <comment_count>5</comment_count>
      <attachid>45934</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-01-05 17:39:06 -0800</bug_when>
    <thetext>Comment on attachment 45934
Patch

Waiting for the kr build to unbust before landing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>177526</commentid>
    <comment_count>6</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-01-05 19:09:34 -0800</bug_when>
    <thetext>Committed r52847: &lt;http://trac.webkit.org/changeset/52847&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>178300</commentid>
    <comment_count>7</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-01-07 12:01:15 -0800</bug_when>
    <thetext>Reverted r52847 for reason:

Might have caused a perf regression.

Committed r52937: &lt;http://trac.webkit.org/changeset/52937&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>178301</commentid>
    <comment_count>8</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-01-07 12:08:27 -0800</bug_when>
    <thetext>Committed r52938: &lt;http://trac.webkit.org/changeset/52938&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>178486</commentid>
    <comment_count>9</comment_count>
    <who name="Peter Kasting">pkasting</who>
    <bug_when>2010-01-07 18:42:45 -0800</bug_when>
    <thetext>Reopening, since the patch was backed out.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>178487</commentid>
    <comment_count>10</comment_count>
      <attachid>45934</attachid>
    <who name="Peter Kasting">pkasting</who>
    <bug_when>2010-01-07 18:43:11 -0800</bug_when>
    <thetext>Comment on attachment 45934
Patch

Clearing flags on patch that was backed out.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1055948</commentid>
    <comment_count>11</comment_count>
    <who name="Brian Burg">burg</who>
    <bug_when>2014-12-16 00:48:26 -0800</bug_when>
    <thetext>Closing some V8-related work items.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>45934</attachid>
            <date>2010-01-05 15:07:11 -0800</date>
            <delta_ts>2010-06-10 20:10:58 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-33232-20100105150709.patch</filename>
            <type>text/plain</type>
            <size>21152</size>
            <attacher name="Adam Barth">abarth</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
NjkzYmE4Yy4uM2RkMWE4NyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsNSArMSw1MiBAQAogMjAxMC0wMS0wNSAgQWRhbSBCYXJ0aCAg
PGFiYXJ0aEB3ZWJraXQub3JnPgogCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIFt2OF0gTW92ZSBWOERPTVdpbmRvd1NoZWxsIHRvIFNjcmlwdENvbnRyb2xs
ZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTMzMjMy
CisKKyAgICAgICAgVGhpcyBwYXRjaCBtb3ZlcyBWOERPTVdpbmRvdyBzaGVsbCB0byBTY3JpcHRD
b250cm9sbGVyLCB3aGVyZSB0aGUKKyAgICAgICAgd2luZG93IHNoZWxscyBsaXZlIGluIEpTQyBs
YW5kLiAgVGhlIG5leHQgc3RlcCB3aWxsIGJlIHRvIGFsbG93IGZvcgorICAgICAgICBtb3JlIHRo
YW4gb25lIHdpbmRvdyBzaGVsbCBwZXIgc2NyaXB0IGNvbnRyb2xsZXIuCisKKyAgICAgICAgKiBi
aW5kaW5ncy92OC9TY3JpcHRDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcmlw
dENvbnRyb2xsZXI6OlNjcmlwdENvbnRyb2xsZXIpOgorICAgICAgICAoV2ViQ29yZTo6U2NyaXB0
Q29udHJvbGxlcjo6flNjcmlwdENvbnRyb2xsZXIpOgorICAgICAgICAoV2ViQ29yZTo6U2NyaXB0
Q29udHJvbGxlcjo6dXBkYXRlU2VjdXJpdHlPcmlnaW4pOgorICAgICAgICAoV2ViQ29yZTo6U2Ny
aXB0Q29udHJvbGxlcjo6ZXZhbHVhdGVJbklzb2xhdGVkV29ybGQpOgorICAgICAgICAoV2ViQ29y
ZTo6U2NyaXB0Q29udHJvbGxlcjo6aGF2ZUludGVycHJldGVyKToKKyAgICAgICAgKFdlYkNvcmU6
OlNjcmlwdENvbnRyb2xsZXI6Om1haW5Xb3JsZFdpbmRvd1NoZWxsKToKKyAgICAgICAgKFdlYkNv
cmU6OlNjcmlwdENvbnRyb2xsZXI6OmNsZWFyV2luZG93U2hlbGwpOgorICAgICAgICAoV2ViQ29y
ZTo6U2NyaXB0Q29udHJvbGxlcjo6Y2xlYXJGb3JDbG9zZSk6CisgICAgICAgIChXZWJDb3JlOjpT
Y3JpcHRDb250cm9sbGVyOjpkZXN0cm95V2luZG93U2hlbGwpOgorICAgICAgICAoV2ViQ29yZTo6
U2NyaXB0Q29udHJvbGxlcjo6dXBkYXRlRG9jdW1lbnQpOgorICAgICAgICAqIGJpbmRpbmdzL3Y4
L1NjcmlwdENvbnRyb2xsZXIuaDoKKyAgICAgICAgKiBiaW5kaW5ncy92OC9WOERPTVdpbmRvd1No
ZWxsLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlY4RE9NV2luZG93U2hlbGw6On5WOERPTVdpbmRv
d1NoZWxsKToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9WOERPTVdpbmRvd1NoZWxsLmg6CisgICAg
ICAgIChXZWJDb3JlOjpWOERPTVdpbmRvd1NoZWxsOjpsb2NhbEhhbmRsZUZvckNvbnRleHQpOgor
ICAgICAgICAqIGJpbmRpbmdzL3Y4L1Y4RE9NV3JhcHBlci5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpWOERPTVdyYXBwZXI6Omluc3RhbnRpYXRlVjhPYmplY3QpOgorICAgICAgICAoV2ViQ29yZTo6
VjhET01XcmFwcGVyOjpjb252ZXJ0RG9jdW1lbnRUb1Y4T2JqZWN0KToKKyAgICAgICAgKFdlYkNv
cmU6OlY4RE9NV3JhcHBlcjo6Y29udmVydE5ld05vZGVUb1Y4T2JqZWN0KToKKyAgICAgICAgKiBi
aW5kaW5ncy92OC9WOElzb2xhdGVkQ29udGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpWOElz
b2xhdGVkQ29udGV4dDo6VjhJc29sYXRlZENvbnRleHQpOgorICAgICAgICAqIGJpbmRpbmdzL3Y4
L1Y4UHJveHkuY3BwOgorICAgICAgICAoV2ViQ29yZTo6VjhQcm94eTo6VjhQcm94eSk6CisgICAg
ICAgIChXZWJDb3JlOjpWOFByb3h5Ojp+VjhQcm94eSk6CisgICAgICAgIChXZWJDb3JlOjpWOFBy
b3h5OjpoYW5kbGVPdXRPZk1lbW9yeSk6CisgICAgICAgIChXZWJDb3JlOjpWOFByb3h5OjpldmFs
dWF0ZUluSXNvbGF0ZWRXb3JsZCk6CisgICAgICAgIChXZWJDb3JlOjpWOFByb3h5OjpzZXRJbmpl
Y3RlZFNjcmlwdENvbnRleHREZWJ1Z0lkKToKKyAgICAgICAgKFdlYkNvcmU6OlY4UHJveHk6OmNv
bnRleHQpOgorICAgICAgICAoV2ViQ29yZTo6VjhQcm94eTo6bWFpbldvcmxkQ29udGV4dCk6Cisg
ICAgICAgIChXZWJDb3JlOjpWOFByb3h5OjpjdXJyZW50Q29udGV4dCk6CisgICAgICAgIChXZWJD
b3JlOjpWOFByb3h5OjpzZXRDb250ZXh0RGVidWdJZCk6CisgICAgICAgICogYmluZGluZ3Mvdjgv
VjhQcm94eS5oOgorICAgICAgICAqIGJpbmRpbmdzL3Y4L1dvcmxkQ29udGV4dEhhbmRsZS5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpXb3JsZENvbnRleHRIYW5kbGU6OmFkanVzdGVkQ29udGV4dCk6
CisKKzIwMTAtMDEtMDUgIEFkYW0gQmFydGggIDxhYmFydGhAd2Via2l0Lm9yZz4KKwogICAgICAg
ICBSdWJiZXIgc3RhbXBlZCBieSBEaW1pdHJpIEdsYXprb3YuCiAKICAgICAgICAgRml4IG5hbWVz
cGFjZSBpbmRlbnQgZm9yIFNjcmlwdENvbnRyb2xsZXIuCmRpZmYgLS1naXQgYS9XZWJDb3JlL2Jp
bmRpbmdzL3Y4L1NjcmlwdENvbnRyb2xsZXIuY3BwIGIvV2ViQ29yZS9iaW5kaW5ncy92OC9TY3Jp
cHRDb250cm9sbGVyLmNwcAppbmRleCAzMjk4Y2FkLi40NTZhMDM4IDEwMDY0NAotLS0gYS9XZWJD
b3JlL2JpbmRpbmdzL3Y4L1NjcmlwdENvbnRyb2xsZXIuY3BwCisrKyBiL1dlYkNvcmUvYmluZGlu
Z3MvdjgvU2NyaXB0Q29udHJvbGxlci5jcHAKQEAgLTEwNiw2ICsxMDYsNyBAQCBTY3JpcHRDb250
cm9sbGVyOjpTY3JpcHRDb250cm9sbGVyKEZyYW1lKiBmcmFtZSkKICAgICAsIG1fcHJvY2Vzc2lu
Z1RpbWVyQ2FsbGJhY2soZmFsc2UpCiAgICAgLCBtX3BhdXNlZChmYWxzZSkKICAgICAsIG1fcHJv
eHkobmV3IFY4UHJveHkoZnJhbWUpKQorICAgICwgbV93aW5kb3dTaGVsbChWOERPTVdpbmRvd1No
ZWxsOjpjcmVhdGUoZnJhbWUpKQogI2lmIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQogICAg
ICwgbV93aW5kb3dTY3JpcHROUE9iamVjdCgwKQogI2VuZGlmCkBAIC0xMTYsNiArMTE3LDcgQEAg
U2NyaXB0Q29udHJvbGxlcjo6U2NyaXB0Q29udHJvbGxlcihGcmFtZSogZnJhbWUpCiBTY3JpcHRD
b250cm9sbGVyOjp+U2NyaXB0Q29udHJvbGxlcigpCiB7CiAgICAgbV9wcm94eS0+ZGlzY29ubmVj
dEZyYW1lKCk7CisgICAgbV93aW5kb3dTaGVsbC5jbGVhcigpOwogfQogCiB2b2lkIFNjcmlwdENv
bnRyb2xsZXI6OmNsZWFyU2NyaXB0T2JqZWN0cygpCkBAIC0xNDAsNyArMTQyLDcgQEAgdm9pZCBT
Y3JpcHRDb250cm9sbGVyOjpjbGVhclNjcmlwdE9iamVjdHMoKQogCiB2b2lkIFNjcmlwdENvbnRy
b2xsZXI6OnVwZGF0ZVNlY3VyaXR5T3JpZ2luKCkKIHsKLSAgICBtX3Byb3h5LT53aW5kb3dTaGVs
bCgpLT51cGRhdGVTZWN1cml0eU9yaWdpbigpOworICAgIG1fd2luZG93U2hlbGwtPnVwZGF0ZVNl
Y3VyaXR5T3JpZ2luKCk7CiB9CiAKIHZvaWQgU2NyaXB0Q29udHJvbGxlcjo6dXBkYXRlUGxhdGZv
cm1TY3JpcHRPYmplY3RzKCkKQEAgLTIwNSw2ICsyMDcsOCBAQCBib29sIFNjcmlwdENvbnRyb2xs
ZXI6OmFueVBhZ2VJc1Byb2Nlc3NpbmdVc2VyR2VzdHVyZSgpIGNvbnN0CiAKIHZvaWQgU2NyaXB0
Q29udHJvbGxlcjo6ZXZhbHVhdGVJbklzb2xhdGVkV29ybGQodW5zaWduZWQgd29ybGRJRCwgY29u
c3QgVmVjdG9yPFNjcmlwdFNvdXJjZUNvZGU+JiBzb3VyY2VzKQogeworICAgIC8vIEZJWE1FOiBU
aGlzIHdpbGwgbmVlZCB0byBnZXQgcmVvcmdhbml6ZWQgb25jZSB3ZSBoYXZlIGEgd2luZG93U2hl
bGwgZm9yIHRoZSBpc29sYXRlZCB3b3JsZC4KKyAgICBtX3dpbmRvd1NoZWxsLT5pbml0Q29udGV4
dElmTmVlZGVkKCk7CiAgICAgbV9wcm94eS0+ZXZhbHVhdGVJbklzb2xhdGVkV29ybGQod29ybGRJ
RCwgc291cmNlcywgMCk7CiB9CiAKQEAgLTI5MSw3ICsyOTUsNyBAQCB2b2lkIFNjcmlwdENvbnRy
b2xsZXI6Omxvd01lbW9yeU5vdGlmaWNhdGlvbigpCiAKIGJvb2wgU2NyaXB0Q29udHJvbGxlcjo6
aGF2ZUludGVycHJldGVyKCkgY29uc3QKIHsKLSAgICByZXR1cm4gbV9wcm94eS0+d2luZG93U2hl
bGwoKS0+aXNDb250ZXh0SW5pdGlhbGl6ZWQoKTsKKyAgICByZXR1cm4gbV93aW5kb3dTaGVsbC0+
aXNDb250ZXh0SW5pdGlhbGl6ZWQoKTsKIH0KIAogYm9vbCBTY3JpcHRDb250cm9sbGVyOjppc0Vu
YWJsZWQoKSBjb25zdApAQCAtNDM1LDE1ICs0MzksMzIgQEAgTlBPYmplY3QqIFNjcmlwdENvbnRy
b2xsZXI6OmNyZWF0ZVNjcmlwdE9iamVjdEZvclBsdWdpbkVsZW1lbnQoSFRNTFBsdWdJbkVsZW1l
bnQKICAgICByZXR1cm4gbnBDcmVhdGVWOFNjcmlwdE9iamVjdCgwLCB2ODo6SGFuZGxlPHY4OjpP
YmplY3Q+OjpDYXN0KHY4cGx1Z2luKSwgd2luZG93KTsKIH0KIAorVjhET01XaW5kb3dTaGVsbCog
U2NyaXB0Q29udHJvbGxlcjo6bWFpbldvcmxkV2luZG93U2hlbGwoKSBjb25zdAoreworICAgIG1f
d2luZG93U2hlbGwtPmluaXRDb250ZXh0SWZOZWVkZWQoKTsKKyAgICByZXR1cm4gbV93aW5kb3dT
aGVsbC5nZXQoKTsKK30KIAogdm9pZCBTY3JpcHRDb250cm9sbGVyOjpjbGVhcldpbmRvd1NoZWxs
KCkKIHsKICAgICBtX21haW5Xb3JsZFNjcmlwdFN0YXRlLmNsZWFyKCk7CisgICAgbV9wcm94eS0+
cmVzZXRJc29sYXRlZFdvcmxkcygpOwogCiAgICAgLy8gVjggYmluZGluZyBleHBlY3RzIFNjcmlw
dENvbnRyb2xsZXI6OmNsZWFyV2luZG93U2hlbGwgb25seSBiZSBjYWxsZWQKLSAgICAvLyB3aGVu
IGEgZnJhbWUgaXMgbG9hZGluZyBhIG5ldyBwYWdlLiBWOFByb3h5OjpjbGVhckZvck5hdmlnYXRp
b24KKyAgICAvLyB3aGVuIGEgZnJhbWUgaXMgbG9hZGluZyBhIG5ldyBwYWdlLiBWOERPTVdpbmRv
d1NoZWxsOjpjbGVhckZvck5hdmlnYXRpb24KICAgICAvLyBjcmVhdGVzIGEgbmV3IGNvbnRleHQg
Zm9yIHRoZSBuZXcgcGFnZS4KLSAgICBtX3Byb3h5LT5jbGVhckZvck5hdmlnYXRpb24oKTsKKyAg
ICBtX3dpbmRvd1NoZWxsLT5jbGVhckZvck5hdmlnYXRpb24oKTsKK30KKwordm9pZCBTY3JpcHRD
b250cm9sbGVyOjpjbGVhckZvckNsb3NlKCkKK3sKKyAgICBtX3dpbmRvd1NoZWxsLT5jbGVhckZv
ckNsb3NlKCk7Cit9CisKK3ZvaWQgU2NyaXB0Q29udHJvbGxlcjo6ZGVzdHJveVdpbmRvd1NoZWxs
KCkKK3sKKyAgICBtX3dpbmRvd1NoZWxsLT5jbGVhckZvckNsb3NlKCk7CisgICAgbV93aW5kb3dT
aGVsbC0+ZGVzdHJveUdsb2JhbCgpOwogfQogCiB2b2lkIFNjcmlwdENvbnRyb2xsZXI6OmF0dGFj
aERlYnVnZ2VyKHZvaWQqKQpAQCAtNDUzLDcgKzQ3NCw3IEBAIHZvaWQgU2NyaXB0Q29udHJvbGxl
cjo6YXR0YWNoRGVidWdnZXIodm9pZCopCiAKIHZvaWQgU2NyaXB0Q29udHJvbGxlcjo6dXBkYXRl
RG9jdW1lbnQoKQogewotICAgIG1fcHJveHktPndpbmRvd1NoZWxsKCktPnVwZGF0ZURvY3VtZW50
KCk7CisgICAgbV93aW5kb3dTaGVsbC0+dXBkYXRlRG9jdW1lbnQoKTsKIH0KIAogfSAvLyBuYW1l
c3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9iaW5kaW5ncy92OC9TY3JpcHRDb250
cm9sbGVyLmggYi9XZWJDb3JlL2JpbmRpbmdzL3Y4L1NjcmlwdENvbnRyb2xsZXIuaAppbmRleCA5
YmE3ZDM4Li45NThlYmZiIDEwMDY0NAotLS0gYS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1NjcmlwdENv
bnRyb2xsZXIuaAorKysgYi9XZWJDb3JlL2JpbmRpbmdzL3Y4L1NjcmlwdENvbnRyb2xsZXIuaApA
QCAtNjMsNiArNjMsOCBAQCBwdWJsaWM6CiAgICAgLy8gb3IgdGhpcyBhY2Nlc3NvciBzaG91bGQg
YmUgbWFkZSBKU1Byb3h5KgogICAgIFY4UHJveHkqIHByb3h5KCkgeyByZXR1cm4gbV9wcm94eS5n
ZXQoKTsgfQogCisgICAgVjhET01XaW5kb3dTaGVsbCogbWFpbldvcmxkV2luZG93U2hlbGwoKSBj
b25zdDsKKwogICAgIFNjcmlwdFZhbHVlIGV4ZWN1dGVTY3JpcHQoY29uc3QgU2NyaXB0U291cmNl
Q29kZSYpOwogICAgIFNjcmlwdFZhbHVlIGV4ZWN1dGVTY3JpcHQoY29uc3QgU3RyaW5nJiBzY3Jp
cHQsIGJvb2wgZm9yY2VVc2VyR2VzdHVyZSA9IGZhbHNlKTsKIApAQCAtMTUzLDYgKzE1NSwxMSBA
QCBwdWJsaWM6CiAgICAgdm9pZCBjbGVhcldpbmRvd1NoZWxsKCk7CiAgICAgdm9pZCB1cGRhdGVE
b2N1bWVudCgpOwogCisgICAgdm9pZCBjbGVhckZvckNsb3NlKCk7CisKKyAgICAvLyBUaGlzIGlz
IHZlcnkgZGVzdHJ1Y3RpdmUgKGUuZy4sIG91dCBvZiBtZW1vcnkpLgorICAgIHZvaWQgZGVzdHJv
eVdpbmRvd1NoZWxsKCk7CisKICAgICB2b2lkIHVwZGF0ZVNlY3VyaXR5T3JpZ2luKCk7CiAgICAg
dm9pZCBjbGVhclNjcmlwdE9iamVjdHMoKTsKICAgICB2b2lkIHVwZGF0ZVBsYXRmb3JtU2NyaXB0
T2JqZWN0cygpOwpAQCAtMTgyLDcgKzE4OSwxMiBAQCBwcml2YXRlOgogICAgIGJvb2wgbV9wcm9j
ZXNzaW5nVGltZXJDYWxsYmFjazsKICAgICBib29sIG1fcGF1c2VkOwogCisgICAgLy8gRklYTUU6
IFY4UHJveHkgc2hvdWxkIGV2ZW50dWFsbHkgYmUgcmVtb3ZlZC4KICAgICBPd25QdHI8VjhQcm94
eT4gbV9wcm94eTsKKworICAgIC8vIEZvciB0aGUgbW9tZW50LCB3ZSBoYXZlIG9uZSBvZiB0aGVz
ZS4gIFNvb24gd2Ugd2lsbCBoYXZlIG9uZSBwZXIgRE9NV3JhcHBlcldvcmxkLgorICAgIFJlZlB0
cjxWOERPTVdpbmRvd1NoZWxsPiBtX3dpbmRvd1NoZWxsOworCiAgICAgdHlwZWRlZiBIYXNoTWFw
PFdpZGdldCosIE5QT2JqZWN0Kj4gUGx1Z2luT2JqZWN0TWFwOwogCiAgICAgLy8gQSBtYXBwaW5n
IGJldHdlZW4gV2lkZ2V0cyBhbmQgdGhlaXIgY29ycmVzcG9uZGluZyBzY3JpcHQgb2JqZWN0Lgpk
aWZmIC0tZ2l0IGEvV2ViQ29yZS9iaW5kaW5ncy92OC9WOERPTVdpbmRvd1NoZWxsLmNwcCBiL1dl
YkNvcmUvYmluZGluZ3MvdjgvVjhET01XaW5kb3dTaGVsbC5jcHAKaW5kZXggOTY4YWIwNS4uMDg4
MzI5YSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9iaW5kaW5ncy92OC9WOERPTVdpbmRvd1NoZWxsLmNw
cAorKysgYi9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4RE9NV2luZG93U2hlbGwuY3BwCkBAIC0xMDAs
NiArMTAwLDEyIEBAIFY4RE9NV2luZG93U2hlbGw6OlY4RE9NV2luZG93U2hlbGwoRnJhbWUqIGZy
YW1lKQogewogfQogCitWOERPTVdpbmRvd1NoZWxsOjp+VjhET01XaW5kb3dTaGVsbCgpCit7Cisg
ICAgY2xlYXJGb3JDbG9zZSgpOworICAgIGRlc3Ryb3lHbG9iYWwoKTsKK30KKwogYm9vbCBWOERP
TVdpbmRvd1NoZWxsOjppc0NvbnRleHRJbml0aWFsaXplZCgpCiB7CiAgICAgLy8gbV9jb250ZXh0
LCBtX2dsb2JhbCwgYW5kIG1fd3JhcHBlckJvaWxlcnBsYXRlcyBzaG91bGQKZGlmZiAtLWdpdCBh
L1dlYkNvcmUvYmluZGluZ3MvdjgvVjhET01XaW5kb3dTaGVsbC5oIGIvV2ViQ29yZS9iaW5kaW5n
cy92OC9WOERPTVdpbmRvd1NoZWxsLmgKaW5kZXggZGUxNDliZS4uM2RiOTAwMCAxMDA2NDQKLS0t
IGEvV2ViQ29yZS9iaW5kaW5ncy92OC9WOERPTVdpbmRvd1NoZWxsLmgKKysrIGIvV2ViQ29yZS9i
aW5kaW5ncy92OC9WOERPTVdpbmRvd1NoZWxsLmgKQEAgLTQ2LDggKzQ2LDEzIEBAIGNsYXNzIFY4
RE9NV2luZG93U2hlbGwgOiBwdWJsaWMgUmVmQ291bnRlZDxWOERPTVdpbmRvd1NoZWxsPiB7CiBw
dWJsaWM6CiAgICAgc3RhdGljIFBhc3NSZWZQdHI8VjhET01XaW5kb3dTaGVsbD4gY3JlYXRlKEZy
YW1lKik7CiAKKyAgICB+VjhET01XaW5kb3dTaGVsbCgpOworCiAgICAgdjg6OkhhbmRsZTx2ODo6
Q29udGV4dD4gY29udGV4dCgpIGNvbnN0IHsgcmV0dXJuIG1fY29udGV4dDsgfQogCisgICAgLy8g
VGhpcyBtZXRob2QgaXMgc2xvd2VyIHRoYW4gfGNvbnRleHQoKXwsIGJ1dCBzb21ldGltZXMgd2Ug
bmVlZCBsb2NhbCBoYW5kbGVzLgorICAgIHY4OjpMb2NhbDx2ODo6Q29udGV4dD4gbG9jYWxIYW5k
bGVGb3JDb250ZXh0KCkgY29uc3QgeyByZXR1cm4gdjg6OkxvY2FsPHY4OjpDb250ZXh0Pjo6TmV3
KG1fY29udGV4dCk7IH0KKwogICAgIC8vIFVwZGF0ZSBkb2N1bWVudCBvYmplY3Qgb2YgdGhlIGZy
YW1lLgogICAgIHZvaWQgdXBkYXRlRG9jdW1lbnQoKTsKIApAQCAtNjUsNyArNzAsNiBAQCBwdWJs
aWM6CiAKICAgICB2b2lkIGNsZWFyRm9yTmF2aWdhdGlvbigpOwogICAgIHZvaWQgY2xlYXJGb3JD
bG9zZSgpOwotCiAgICAgdm9pZCBkZXN0cm95R2xvYmFsKCk7CiAKICAgICBzdGF0aWMgdjg6Okhh
bmRsZTx2ODo6VmFsdWU+IGdldEhpZGRlbk9iamVjdFByb3RvdHlwZSh2ODo6SGFuZGxlPHY4OjpD
b250ZXh0Pik7CmRpZmYgLS1naXQgYS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4RE9NV3JhcHBlci5j
cHAgYi9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4RE9NV3JhcHBlci5jcHAKaW5kZXggNmIyMTJjMC4u
ODQ4YmQyYiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9iaW5kaW5ncy92OC9WOERPTVdyYXBwZXIuY3Bw
CisrKyBiL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhET01XcmFwcGVyLmNwcApAQCAtODAyLDcgKzgw
Miw3IEBAIHY4OjpMb2NhbDx2ODo6T2JqZWN0PiBWOERPTVdyYXBwZXI6Omluc3RhbnRpYXRlVjhP
YmplY3QoVjhQcm94eSogcHJveHksIFY4Q2xhc3NJCiAgICAgdjg6OkxvY2FsPHY4OjpPYmplY3Q+
IGluc3RhbmNlOwogICAgIGlmIChwcm94eSkKICAgICAgICAgLy8gRklYTUU6IEZpeCB0aGlzIHRv
IHdvcmsgcHJvcGVybHkgd2l0aCBpc29sYXRlZCB3b3JsZHMgKHNlZSBhYm92ZSkuCi0gICAgICAg
IGluc3RhbmNlID0gcHJveHktPndpbmRvd1NoZWxsKCktPmNyZWF0ZVdyYXBwZXJGcm9tQ2FjaGUo
ZGVzY3JpcHRvclR5cGUpOworICAgICAgICBpbnN0YW5jZSA9IHByb3h5LT5mcmFtZSgpLT5zY3Jp
cHQoKS0+bWFpbldvcmxkV2luZG93U2hlbGwoKS0+Y3JlYXRlV3JhcHBlckZyb21DYWNoZShkZXNj
cmlwdG9yVHlwZSk7CiAgICAgZWxzZSB7CiAgICAgICAgIHY4OjpMb2NhbDx2ODo6RnVuY3Rpb24+
IGZ1bmN0aW9uID0gZ2V0VGVtcGxhdGUoZGVzY3JpcHRvclR5cGUpLT5HZXRGdW5jdGlvbigpOwog
ICAgICAgICBpbnN0YW5jZSA9IFNhZmVBbGxvY2F0aW9uOjpuZXdJbnN0YW5jZShmdW5jdGlvbik7
CkBAIC0xMjA0LDggKzEyMDQsMTUgQEAgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4RE9NV3JhcHBl
cjo6Y29udmVydERvY3VtZW50VG9WOE9iamVjdChEb2N1bWVudCogZG9jdW1lbnQKICAgICAvLyBp
bnN0YW50aWF0ZSBhIGRvY3VtZW50IHdyYXBwZXIuICBUaGVyZWZvcmUsIHdlIGdldCB0aGUgcHJv
eHkgYmVmb3JlCiAgICAgLy8gY2hlY2tpbmcgaWYgdGhlIG5vZGUgYWxyZWFkeSBoYXMgYSB3cmFw
cGVyLgogICAgIFY4UHJveHkqIHByb3h5ID0gVjhQcm94eTo6cmV0cmlldmUoZG9jdW1lbnQtPmZy
YW1lKCkpOwotICAgIGlmIChwcm94eSkKLSAgICAgICAgcHJveHktPndpbmRvd1NoZWxsKCktPmlu
aXRDb250ZXh0SWZOZWVkZWQoKTsKKyAgICBpZiAocHJveHkpIHsKKyAgICAgICAgLy8gVGhpcyBj
b2RlIGxvb2tzIHdhY2t5OgorICAgICAgICAvLyAxKSBUaGUgdGVzdCBmb3IgfHByb3h5fCBhYm92
ZSBpcyByZWFsbHkgYSB0ZXN0IHdoZXRoZXIgSmF2YVNjcmlwdAorICAgICAgICAvLyAgICBpcyBl
bmFibGVkIGluIHRoaXMgZnJhbWUuICBJIGhhdmUgbm8gaWRlYSBpZiB0aGF0J3MgbmVlZGVkLgor
ICAgICAgICAvLyAyKSBDYWxsaW5nIGluaXRDb250ZXh0SWZOZWVkZWQgaGVyZSBpcyByZWR1bmRh
bnQgYmVjYXNlIGp1c3QKKyAgICAgICAgLy8gICAgZ3JhYmJpbmcgbWFpbldvcmxkV2luZG93U2hl
bGwoKSBhbHJlYWR5IGNhbGxzIGluaXRDb250ZXh0SWZOZWVkZWQuCisgICAgICAgIC8vIEZJWE1F
OiBJIGJlIHdlIGNhbiBjbGVhbiB0aGlzIHVwIGEgYml0IQorICAgICAgICBwcm94eS0+ZnJhbWUo
KS0+c2NyaXB0KCktPm1haW5Xb3JsZFdpbmRvd1NoZWxsKCktPmluaXRDb250ZXh0SWZOZWVkZWQo
KTsKKyAgICB9CiAKICAgICBET01XcmFwcGVyTWFwPE5vZGU+JiBkb21Ob2RlTWFwID0gZ2V0RE9N
Tm9kZU1hcCgpOwogICAgIHY4OjpIYW5kbGU8djg6Ok9iamVjdD4gd3JhcHBlciA9IGRvbU5vZGVN
YXAuZ2V0KGRvY3VtZW50KTsKQEAgLTEyOTQsOCArMTMwMSwxMCBAQCB2ODo6SGFuZGxlPHY4OjpW
YWx1ZT4gVjhET01XcmFwcGVyOjpjb252ZXJ0TmV3Tm9kZVRvVjhPYmplY3QoTm9kZSogbm9kZSwg
VjhQcm94eQogICAgIGRvbU5vZGVNYXAuc2V0KG5vZGUsIHY4OjpQZXJzaXN0ZW50PHY4OjpPYmpl
Y3Q+OjpOZXcocmVzdWx0KSk7CiAKICAgICBpZiAoaXNEb2N1bWVudCkgewotICAgICAgICBpZiAo
cHJveHkpCi0gICAgICAgICAgICBwcm94eS0+d2luZG93U2hlbGwoKS0+dXBkYXRlRG9jdW1lbnRX
cmFwcGVyKHJlc3VsdCk7CisgICAgICAgIGlmIChwcm94eSkgeworICAgICAgICAgICAgLy8gRklY
TUU6IERvbid0IHdlIG5lZWQgdG8gZG8gdGhpcyBmb3IgZXZlcnkgd29ybGQ/CisgICAgICAgICAg
ICBwcm94eS0+ZnJhbWUoKS0+c2NyaXB0KCktPm1haW5Xb3JsZFdpbmRvd1NoZWxsKCktPnVwZGF0
ZURvY3VtZW50V3JhcHBlcihyZXN1bHQpOworICAgICAgICB9CiAKICAgICAgICAgaWYgKHR5cGUg
PT0gVjhDbGFzc0luZGV4OjpIVE1MRE9DVU1FTlQpIHsKICAgICAgICAgICAgIC8vIENyZWF0ZSBt
YXJrZXIgb2JqZWN0IGFuZCBpbnNlcnQgaXQgaW4gdHdvIGludGVybmFsIGZpZWxkcy4KZGlmZiAt
LWdpdCBhL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhJc29sYXRlZENvbnRleHQuY3BwIGIvV2ViQ29y
ZS9iaW5kaW5ncy92OC9WOElzb2xhdGVkQ29udGV4dC5jcHAKaW5kZXggZThhNTFjYi4uNjYzYzZm
MiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9iaW5kaW5ncy92OC9WOElzb2xhdGVkQ29udGV4dC5jcHAK
KysrIGIvV2ViQ29yZS9iaW5kaW5ncy92OC9WOElzb2xhdGVkQ29udGV4dC5jcHAKQEAgLTUzLDkg
KzUzLDE1IEBAIHZvaWQgVjhJc29sYXRlZENvbnRleHQ6OmNvbnRleHRXZWFrUmVmZXJlbmNlQ2Fs
bGJhY2sodjg6OlBlcnNpc3RlbnQ8djg6OlZhbHVlPiBvCiBWOElzb2xhdGVkQ29udGV4dDo6VjhJ
c29sYXRlZENvbnRleHQoVjhQcm94eSogcHJveHksIGludCBleHRlbnNpb25Hcm91cCkKICAgICA6
IG1fd29ybGQoSXNvbGF0ZWRXb3JsZDo6Y3JlYXRlKCkpCiB7CisgICAgLy8gRklYTUU6IE5vbmUg
b2YgdGhpcyBjb2RlIGJlbG9uZ3MgaGVyZSEgQmFzaWNhbGx5LCBTY3JpcHRDb250cm9sbGVyCisg
ICAgLy8gc2hvdWxkIGNyZWF0ZSBhIG5ldyBET01XcmFwcGVyV29ybGQgYW5kIGEgbmV3IHdpbmRv
d1NoZWxsIGFuZCB0aGVuCisgICAgLy8gZXZhbHVhdGUgdGhlIHNjcmlwdC4KKworICAgIFY4RE9N
V2luZG93U2hlbGwqIG1haW5Xb3JsZFdpbmRvd1NoZWxsID0gcHJveHktPmZyYW1lKCktPnNjcmlw
dCgpLT5tYWluV29ybGRXaW5kb3dTaGVsbCgpOworCiAgICAgdjg6OkhhbmRsZVNjb3BlIHNjb3Bl
OwogICAgIC8vIEZJWE1FOiBXZSBzaG91bGQgYmUgY3JlYXRpbmcgYSBuZXcgVjhET01XaW5kb3dT
aGVsbCBoZXJlIGluc3RlYWQgb2YgcmlwaW5nIG91dCB0aGUgY29udGV4dC4KLSAgICBtX2NvbnRl
eHQgPSBTaGFyZWRQZXJzaXN0ZW50PHY4OjpDb250ZXh0Pjo6Y3JlYXRlKHByb3h5LT53aW5kb3dT
aGVsbCgpLT5jcmVhdGVOZXdDb250ZXh0KHY4OjpIYW5kbGU8djg6Ok9iamVjdD4oKSwgZXh0ZW5z
aW9uR3JvdXApKTsKKyAgICBtX2NvbnRleHQgPSBTaGFyZWRQZXJzaXN0ZW50PHY4OjpDb250ZXh0
Pjo6Y3JlYXRlKG1haW5Xb3JsZFdpbmRvd1NoZWxsLT5jcmVhdGVOZXdDb250ZXh0KHY4OjpIYW5k
bGU8djg6Ok9iamVjdD4oKSwgZXh0ZW5zaW9uR3JvdXApKTsKICAgICBpZiAobV9jb250ZXh0LT5n
ZXQoKS5Jc0VtcHR5KCkpCiAgICAgICAgIHJldHVybjsKIApAQCAtNjYsNyArNzIsNyBAQCBWOElz
b2xhdGVkQ29udGV4dDo6VjhJc29sYXRlZENvbnRleHQoVjhQcm94eSogcHJveHksIGludCBleHRl
bnNpb25Hcm91cCkKIAogICAgIFY4RE9NV2luZG93U2hlbGw6Omluc3RhbGxIaWRkZW5PYmplY3RQ
cm90b3R5cGUobV9jb250ZXh0LT5nZXQoKSk7CiAgICAgLy8gRklYTUU6IFRoaXMgd2lsbCBnbyBh
d2F5IG9uY2Ugd2UgaGF2ZSBhIHdpbmRvd1NoZWxsIGZvciB0aGUgaXNvbGF0ZWQgd29ybGQuCi0g
ICAgcHJveHktPndpbmRvd1NoZWxsKCktPmluc3RhbGxET01XaW5kb3cobV9jb250ZXh0LT5nZXQo
KSwgcHJveHktPmZyYW1lKCktPmRvbVdpbmRvdygpKTsKKyAgICBtYWluV29ybGRXaW5kb3dTaGVs
bC0+aW5zdGFsbERPTVdpbmRvdyhtX2NvbnRleHQtPmdldCgpLCBwcm94eS0+ZnJhbWUoKS0+ZG9t
V2luZG93KCkpOwogCiAgICAgLy8gVXNpbmcgdGhlIGRlZmF1bHQgc2VjdXJpdHkgdG9rZW4gbWVh
bnMgdGhhdCB0aGUgY2FuQWNjZXNzIGlzIGFsd2F5cwogICAgIC8vIGNhbGxlZCwgd2hpY2ggaXMg
c2xvdy4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhQcm94eS5jcHAgYi9XZWJD
b3JlL2JpbmRpbmdzL3Y4L1Y4UHJveHkuY3BwCmluZGV4IGU2ZTdmODkuLjQ0YjdjNTIgMTAwNjQ0
Ci0tLSBhL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhQcm94eS5jcHAKKysrIGIvV2ViQ29yZS9iaW5k
aW5ncy92OC9WOFByb3h5LmNwcApAQCAtMjEzLDcgKzIxMyw2IEBAIHN0YXRpYyB2b2lkIGhhbmRs
ZUZhdGFsRXJyb3JJblY4KCkKIAogVjhQcm94eTo6VjhQcm94eShGcmFtZSogZnJhbWUpCiAgICAg
OiBtX2ZyYW1lKGZyYW1lKQotICAgICwgbV93aW5kb3dTaGVsbChWOERPTVdpbmRvd1NoZWxsOjpj
cmVhdGUoZnJhbWUpKQogICAgICwgbV9pbmxpbmVDb2RlKGZhbHNlKQogICAgICwgbV90aW1lckNh
bGxiYWNrKGZhbHNlKQogICAgICwgbV9yZWN1cnNpb24oMCkKQEAgLTIyMiw4ICsyMjEsNyBAQCBW
OFByb3h5OjpWOFByb3h5KEZyYW1lKiBmcmFtZSkKIAogVjhQcm94eTo6flY4UHJveHkoKQogewot
ICAgIGNsZWFyRm9yQ2xvc2UoKTsKLSAgICB3aW5kb3dTaGVsbCgpLT5kZXN0cm95R2xvYmFsKCk7
CisgICAgcmVzZXRJc29sYXRlZFdvcmxkcygpOwogfQogCiB2ODo6SGFuZGxlPHY4OjpTY3JpcHQ+
IFY4UHJveHk6OmNvbXBpbGVTY3JpcHQodjg6OkhhbmRsZTx2ODo6U3RyaW5nPiBjb2RlLCBjb25z
dCBTdHJpbmcmIGZpbGVOYW1lLCBpbnQgYmFzZUxpbmUpCkBAIC0yNDYsMTMgKzI0NCw3IEBAIGJv
b2wgVjhQcm94eTo6aGFuZGxlT3V0T2ZNZW1vcnkoKQogICAgIC8vIFdhcm5pbmcsIGVycm9yLCBk
aXNhYmxlIEpTIGZvciB0aGlzIGZyYW1lPwogICAgIEZyYW1lKiBmcmFtZSA9IFY4UHJveHk6OnJl
dHJpZXZlRnJhbWUoY29udGV4dCk7CiAKLSAgICBWOFByb3h5KiBwcm94eSA9IFY4UHJveHk6OnJl
dHJpZXZlKGZyYW1lKTsKLSAgICBpZiAocHJveHkpIHsKLSAgICAgICAgLy8gQ2xlYW4gbV9jb250
ZXh0LCBhbmQgZXZlbnQgaGFuZGxlcnMuCi0gICAgICAgIHByb3h5LT5jbGVhckZvckNsb3NlKCk7
Ci0KLSAgICAgICAgcHJveHktPndpbmRvd1NoZWxsKCktPmRlc3Ryb3lHbG9iYWwoKTsKLSAgICB9
CisgICAgZnJhbWUtPnNjcmlwdCgpLT5kZXN0cm95V2luZG93U2hlbGwoKTsKIAogICAgIENocm9t
aXVtQnJpZGdlOjpub3RpZnlKU091dE9mTWVtb3J5KGZyYW1lKTsKIApAQCAtMjY2LDkgKzI1OCw2
IEBAIGJvb2wgVjhQcm94eTo6aGFuZGxlT3V0T2ZNZW1vcnkoKQogCiB2b2lkIFY4UHJveHk6OmV2
YWx1YXRlSW5Jc29sYXRlZFdvcmxkKGludCB3b3JsZElELCBjb25zdCBWZWN0b3I8U2NyaXB0U291
cmNlQ29kZT4mIHNvdXJjZXMsIGludCBleHRlbnNpb25Hcm91cCkKIHsKLSAgICAvLyBGSVhNRTog
VGhpcyB3aWxsIG5lZWQgdG8gZ2V0IHJlb3JnYW5pemVkIG9uY2Ugd2UgaGF2ZSBhIHdpbmRvd1No
ZWxsIGZvciB0aGUgaXNvbGF0ZWQgd29ybGQuCi0gICAgd2luZG93U2hlbGwoKS0+aW5pdENvbnRl
eHRJZk5lZWRlZCgpOwotCiAgICAgdjg6OkhhbmRsZVNjb3BlIGhhbmRsZVNjb3BlOwogICAgIFY4
SXNvbGF0ZWRDb250ZXh0KiBpc29sYXRlZENvbnRleHQgPSAwOwogCkBAIC0zMTQsNyArMzAzLDcg
QEAgYm9vbCBWOFByb3h5OjpzZXRJbmplY3RlZFNjcmlwdENvbnRleHREZWJ1Z0lkKHY4OjpIYW5k
bGU8djg6OkNvbnRleHQ+IHRhcmdldENvbnQKIHsKICAgICAvLyBTZXR1cCBjb250ZXh0IGlkIGZv
ciBKUyBkZWJ1Z2dlci4KICAgICB2ODo6Q29udGV4dDo6U2NvcGUgY29udGV4dFNjb3BlKHRhcmdl
dENvbnRleHQpOwotICAgIHY4OjpIYW5kbGU8djg6OkNvbnRleHQ+IGNvbnRleHQgPSB3aW5kb3dT
aGVsbCgpLT5jb250ZXh0KCk7CisgICAgdjg6OkhhbmRsZTx2ODo6Q29udGV4dD4gY29udGV4dCA9
IG1fZnJhbWUtPnNjcmlwdCgpLT5tYWluV29ybGRXaW5kb3dTaGVsbCgpLT5sb2NhbEhhbmRsZUZv
ckNvbnRleHQoKTsKICAgICBpZiAoY29udGV4dC5Jc0VtcHR5KCkpCiAgICAgICAgIHJldHVybiBm
YWxzZTsKICAgICBpbnQgZGVidWdJZCA9IGNvbnRleHREZWJ1Z0lkKGNvbnRleHQpOwpAQCAtNTg0
LDE4ICs1NzMsNiBAQCB2b2lkIFY4UHJveHk6OnJlc2V0SXNvbGF0ZWRXb3JsZHMoKQogICAgIG1f
aXNvbGF0ZWRXb3JsZHMuY2xlYXIoKTsKIH0KIAotdm9pZCBWOFByb3h5OjpjbGVhckZvckNsb3Nl
KCkKLXsKLSAgICByZXNldElzb2xhdGVkV29ybGRzKCk7Ci0gICAgd2luZG93U2hlbGwoKS0+Y2xl
YXJGb3JDbG9zZSgpOwotfQotCi12b2lkIFY4UHJveHk6OmNsZWFyRm9yTmF2aWdhdGlvbigpCi17
Ci0gICAgcmVzZXRJc29sYXRlZFdvcmxkcygpOwotICAgIHdpbmRvd1NoZWxsKCktPmNsZWFyRm9y
TmF2aWdhdGlvbigpOwotfQotCiB2b2lkIFY4UHJveHk6OnNldERPTUV4Y2VwdGlvbihpbnQgZXhj
ZXB0aW9uQ29kZSkKIHsKICAgICBpZiAoZXhjZXB0aW9uQ29kZSA8PSAwKQpAQCAtNjU1LDYgKzYz
Miw3IEBAIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBWOFByb3h5Ojp0aHJvd0Vycm9yKEVycm9yVHlw
ZSB0eXBlLCBjb25zdCBjaGFyKiBtZXNzYWdlKQogCiB2ODo6TG9jYWw8djg6OkNvbnRleHQ+IFY4
UHJveHk6OmNvbnRleHQoRnJhbWUqIGZyYW1lKQogeworICAgIC8vIEZJWE1FOiBNb3ZlIHRoaXMg
ZnVuY3Rpb24gdG8gU2NyaXB0Q29udHJvbGxlci4KICAgICB2ODo6TG9jYWw8djg6OkNvbnRleHQ+
IGNvbnRleHQgPSBWOFByb3h5OjptYWluV29ybGRDb250ZXh0KGZyYW1lKTsKICAgICBpZiAoY29u
dGV4dC5Jc0VtcHR5KCkpCiAgICAgICAgIHJldHVybiB2ODo6TG9jYWw8djg6OkNvbnRleHQ+KCk7
CkBAIC02NzAsMzIgKzY0OCwyOCBAQCB2ODo6TG9jYWw8djg6OkNvbnRleHQ+IFY4UHJveHk6OmNv
bnRleHQoRnJhbWUqIGZyYW1lKQogCiB2ODo6TG9jYWw8djg6OkNvbnRleHQ+IFY4UHJveHk6OmNv
bnRleHQoKQogeworICAgIC8vIEZJWE1FOiBNb3ZlIHRoaXMgZnVuY3Rpb24gdG8gU2NyaXB0Q29u
dHJvbGxlci4KICAgICBpZiAoVjhJc29sYXRlZENvbnRleHQqIGlzb2xhdGVkQ29udGV4dCA9IFY4
SXNvbGF0ZWRDb250ZXh0OjpnZXRFbnRlcmVkKCkpIHsKICAgICAgICAgUmVmUHRyPFNoYXJlZFBl
cnNpc3RlbnQ8djg6OkNvbnRleHQ+ID4gY29udGV4dCA9IGlzb2xhdGVkQ29udGV4dC0+c2hhcmVk
Q29udGV4dCgpOwogICAgICAgICBpZiAobV9mcmFtZSAhPSBWOFByb3h5OjpyZXRyaWV2ZUZyYW1l
KGNvbnRleHQtPmdldCgpKSkKICAgICAgICAgICAgIHJldHVybiB2ODo6TG9jYWw8djg6OkNvbnRl
eHQ+KCk7CiAgICAgICAgIHJldHVybiB2ODo6TG9jYWw8djg6OkNvbnRleHQ+OjpOZXcoY29udGV4
dC0+Z2V0KCkpOwogICAgIH0KLSAgICByZXR1cm4gbWFpbldvcmxkQ29udGV4dCgpOwotfQotCi12
ODo6TG9jYWw8djg6OkNvbnRleHQ+IFY4UHJveHk6Om1haW5Xb3JsZENvbnRleHQoKQotewotICAg
IHdpbmRvd1NoZWxsKCktPmluaXRDb250ZXh0SWZOZWVkZWQoKTsKLSAgICByZXR1cm4gdjg6Okxv
Y2FsPHY4OjpDb250ZXh0Pjo6TmV3KHdpbmRvd1NoZWxsKCktPmNvbnRleHQoKSk7CisgICAgcmV0
dXJuIG1fZnJhbWUtPnNjcmlwdCgpLT5tYWluV29ybGRXaW5kb3dTaGVsbCgpLT5sb2NhbEhhbmRs
ZUZvckNvbnRleHQoKTsKIH0KIAogdjg6OkxvY2FsPHY4OjpDb250ZXh0PiBWOFByb3h5OjptYWlu
V29ybGRDb250ZXh0KEZyYW1lKiBmcmFtZSkKIHsKLSAgICBWOFByb3h5KiBwcm94eSA9IHJldHJp
ZXZlKGZyYW1lKTsKLSAgICBpZiAoIXByb3h5KQorICAgIC8vIEZJWE1FOiBNb3ZlIHRoaXMgZnVu
Y3Rpb24gdG8gU2NyaXB0Q29udHJvbGxlci4KKyAgICBpZiAoIWZyYW1lLT5zY3JpcHQoKS0+aXNF
bmFibGVkKCkpCiAgICAgICAgIHJldHVybiB2ODo6TG9jYWw8djg6OkNvbnRleHQ+KCk7CiAKLSAg
ICByZXR1cm4gcHJveHktPm1haW5Xb3JsZENvbnRleHQoKTsKKyAgICByZXR1cm4gZnJhbWUtPnNj
cmlwdCgpLT5tYWluV29ybGRXaW5kb3dTaGVsbCgpLT5sb2NhbEhhbmRsZUZvckNvbnRleHQoKTsK
IH0KIAogdjg6OkxvY2FsPHY4OjpDb250ZXh0PiBWOFByb3h5OjpjdXJyZW50Q29udGV4dCgpCiB7
CisgICAgLy8gRklYTUU6IFdoeSBkb2VzIHRoaXMgZnVuY3Rpb24gZXhpc3Q/CiAgICAgcmV0dXJu
IHY4OjpDb250ZXh0OjpHZXRDdXJyZW50KCk7CiB9CiAKQEAgLTgzMCw3ICs4MDQsNyBAQCB2b2lk
IFY4UHJveHk6OnJlZ2lzdGVyRXh0ZW5zaW9uKHY4OjpFeHRlbnNpb24qIGV4dGVuc2lvbiwgaW50
IGV4dGVuc2lvbkdyb3VwKQogYm9vbCBWOFByb3h5OjpzZXRDb250ZXh0RGVidWdJZChpbnQgZGVi
dWdJZCkKIHsKICAgICBBU1NFUlQoZGVidWdJZCA+IDApOwotICAgIHY4OjpIYW5kbGU8djg6OkNv
bnRleHQ+IGNvbnRleHQgPSB3aW5kb3dTaGVsbCgpLT5jb250ZXh0KCk7CisgICAgdjg6OkxvY2Fs
PHY4OjpDb250ZXh0PiBjb250ZXh0ID0gbV9mcmFtZS0+c2NyaXB0KCktPm1haW5Xb3JsZFdpbmRv
d1NoZWxsKCktPmxvY2FsSGFuZGxlRm9yQ29udGV4dCgpOwogICAgIGlmIChjb250ZXh0LklzRW1w
dHkoKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIHY4OjpIYW5kbGVTY29wZSBzY29wZTsK
ZGlmZiAtLWdpdCBhL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhQcm94eS5oIGIvV2ViQ29yZS9iaW5k
aW5ncy92OC9WOFByb3h5LmgKaW5kZXggNTk4MzQwZC4uZDA3YmQwZSAxMDA2NDQKLS0tIGEvV2Vi
Q29yZS9iaW5kaW5ncy92OC9WOFByb3h5LmgKKysrIGIvV2ViQ29yZS9iaW5kaW5ncy92OC9WOFBy
b3h5LmgKQEAgLTE1Miw5ICsxNTIsNiBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKICAgICAgICAg
RnJhbWUqIGZyYW1lKCkgeyByZXR1cm4gbV9mcmFtZTsgfQogCi0gICAgICAgIHZvaWQgY2xlYXJG
b3JOYXZpZ2F0aW9uKCk7Ci0gICAgICAgIHZvaWQgY2xlYXJGb3JDbG9zZSgpOwotCiAgICAgICAg
IC8vIEZJWE1FOiBOZWVkIGNvbW1lbnQuIFVzZXIgR2VzdHVyZSByZWxhdGVkLgogICAgICAgICBi
b29sIGlubGluZUNvZGUoKSBjb25zdCB7IHJldHVybiBtX2lubGluZUNvZGU7IH0KICAgICAgICAg
dm9pZCBzZXRJbmxpbmVDb2RlKGJvb2wgdmFsdWUpIHsgbV9pbmxpbmVDb2RlID0gdmFsdWU7IH0K
QEAgLTMwOSwxMCArMzA2LDYgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICBzdGF0aWMg
Ym9vbCBzb3VyY2VOYW1lKFN0cmluZyYgcmVzdWx0KTsKIAogICAgICAgICB2ODo6TG9jYWw8djg6
OkNvbnRleHQ+IGNvbnRleHQoKTsKLSAgICAgICAgdjg6OkxvY2FsPHY4OjpDb250ZXh0PiBtYWlu
V29ybGRDb250ZXh0KCk7Ci0KLSAgICAgICAgLy8gRklYTUU6IFRoaXMgc2hvdWxkIGV2ZW50dWFs
bHkgdGFrZSBET01XcmFwcGVyV29ybGQgYXJndW1lbnQhCi0gICAgICAgIFY4RE9NV2luZG93U2hl
bGwqIHdpbmRvd1NoZWxsKCkgY29uc3QgeyByZXR1cm4gbV93aW5kb3dTaGVsbC5nZXQoKTsgfQog
CiAgICAgICAgIGJvb2wgc2V0Q29udGV4dERlYnVnSWQoaW50IGlkKTsKICAgICAgICAgc3RhdGlj
IGludCBjb250ZXh0RGVidWdJZCh2ODo6SGFuZGxlPHY4OjpDb250ZXh0Pik7CkBAIC0zMzUsMTMg
KzMyOCwxNCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIC8vIFJlcG9ydCBhbiB1bnNh
ZmUgYXR0ZW1wdCB0byBhY2Nlc3MgdGhlIGdpdmVuIGZyYW1lIG9uIHRoZSBjb25zb2xlLgogICAg
ICAgICBzdGF0aWMgdm9pZCByZXBvcnRVbnNhZmVBY2Nlc3NUbyhGcmFtZSogdGFyZ2V0LCBEZWxh
eVJlcG9ydGluZyBkZWxheSk7CiAKKyAgICAgICAgLy8gRklYTUU6IFRoaXMgc2hvdWxkIG1vdmUg
dG8gU2NyaXB0Q29udHJvbGxlci4KKyAgICAgICAgdm9pZCByZXNldElzb2xhdGVkV29ybGRzKCk7
CisKICAgICBwcml2YXRlOgogICAgICAgICAvLyBJZiBtX3JlY3Vyc2lvbkNvdW50IGlzIDAsIGxl
dCBMb2NhbFN0b3JhZ2Uga25vdyBzbyB3ZSBjYW4gcmVsZWFzZQogICAgICAgICAvLyB0aGUgc3Rv
cmFnZSBtdXRleC4KICAgICAgICAgdm9pZCByZWxlYXNlU3RvcmFnZU11dGV4KCk7CiAKLSAgICAg
ICAgdm9pZCByZXNldElzb2xhdGVkV29ybGRzKCk7Ci0KICAgICAgICAgLy8gUmV0dXJucyBmYWxz
ZSB3aGVuIHdlJ3JlIG91dCBvZiBtZW1vcnkgaW4gVjguCiAgICAgICAgIGJvb2wgc2V0SW5qZWN0
ZWRTY3JpcHRDb250ZXh0RGVidWdJZCh2ODo6SGFuZGxlPHY4OjpDb250ZXh0PiB0YXJnZXRDb250
ZXh0KTsKIApAQCAtMzcwLDkgKzM2NCw2IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogICAgICAg
ICBGcmFtZSogbV9mcmFtZTsKIAotICAgICAgICAvLyBGb3IgdGhlIG1vbWVudCwgd2UgaGF2ZSBv
bmUgb2YgdGhlc2UuICBTb29uIHdlIHdpbGwgaGF2ZSBvbmUgcGVyIERPTVdyYXBwZXJXb3JsZC4K
LSAgICAgICAgUmVmUHRyPFY4RE9NV2luZG93U2hlbGw+IG1fd2luZG93U2hlbGw7Ci0gICAgICAg
IAogICAgICAgICAvLyBVdGlsaXR5IGNvbnRleHQgaG9sZGluZyBKYXZhU2NyaXB0IGZ1bmN0aW9u
cyB1c2VkIGludGVybmFsbHkuCiAgICAgICAgIHN0YXRpYyB2ODo6UGVyc2lzdGVudDx2ODo6Q29u
dGV4dD4gbV91dGlsaXR5Q29udGV4dDsKIApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9iaW5kaW5ncy92
OC9Xb3JsZENvbnRleHRIYW5kbGUuY3BwIGIvV2ViQ29yZS9iaW5kaW5ncy92OC9Xb3JsZENvbnRl
eHRIYW5kbGUuY3BwCmluZGV4IDdiYTc2ZDMuLjA0ODc5YjQgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUv
YmluZGluZ3MvdjgvV29ybGRDb250ZXh0SGFuZGxlLmNwcAorKysgYi9XZWJDb3JlL2JpbmRpbmdz
L3Y4L1dvcmxkQ29udGV4dEhhbmRsZS5jcHAKQEAgLTMxLDYgKzMxLDcgQEAKICNpbmNsdWRlICJj
b25maWcuaCIKICNpbmNsdWRlICJXb3JsZENvbnRleHRIYW5kbGUuaCIKIAorI2luY2x1ZGUgIkZy
YW1lLmgiCiAjaW5jbHVkZSAiVjhJc29sYXRlZENvbnRleHQuaCIKIAogbmFtZXNwYWNlIFdlYkNv
cmUgewpAQCAtNDgsNyArNDksNyBAQCBXb3JsZENvbnRleHRIYW5kbGU6OldvcmxkQ29udGV4dEhh
bmRsZShXb3JsZFRvVXNlIHdvcmxkVG9Vc2UpCiB2ODo6TG9jYWw8djg6OkNvbnRleHQ+IFdvcmxk
Q29udGV4dEhhbmRsZTo6YWRqdXN0ZWRDb250ZXh0KFY4UHJveHkqIHByb3h5KSBjb25zdAogewog
ICAgIGlmIChtX3dvcmxkVG9Vc2UgPT0gVXNlTWFpbldvcmxkKQotICAgICAgICByZXR1cm4gcHJv
eHktPm1haW5Xb3JsZENvbnRleHQoKTsKKyAgICAgICAgcmV0dXJuIHByb3h5LT5mcmFtZSgpLT5z
Y3JpcHQoKS0+bWFpbldvcmxkV2luZG93U2hlbGwoKS0+bG9jYWxIYW5kbGVGb3JDb250ZXh0KCk7
CiAgICAgaWYgKCFtX2NvbnRleHQgfHwgbV9jb250ZXh0LT5nZXQoKS5Jc0VtcHR5KCkpCiAgICAg
ICAgIHJldHVybiBwcm94eS0+Y29udGV4dCgpOwogICAgIHJldHVybiB2ODo6TG9jYWw8djg6OkNv
bnRleHQ+OjpOZXcobV9jb250ZXh0LT5nZXQoKSk7CmRpZmYgLS1naXQgYS9XZWJLaXQvY2hyb21p
dW0vQ2hhbmdlTG9nIGIvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwppbmRleCBjMDNjNTU5Li4x
ZjM5NWRhIDEwMDY0NAotLS0gYS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCisrKyBiL1dlYktp
dC9jaHJvbWl1bS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAxMC0wMS0wNSAgQWRhbSBC
YXJ0aCAgPGFiYXJ0aEB3ZWJraXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIFt2OF0gTW92ZSBWOERPTVdpbmRvd1NoZWxsIHRvIFNjcmlwdENv
bnRyb2xsZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTMzMjMyCisKKyAgICAgICAgVXBkYXRlIEZyYW1lTG9hZGVyQ2xpZW50SW1wbC5jcHAgdG8gY2Fs
bCBjbGVhckZvckNsb3NlIG9uCisgICAgICAgIFNjcmlwdENvbnRyb2xsZXIgaW5zdGVhZCBvZiBv
biBWOFByb3h5LgorCisgICAgICAgICogc3JjL0ZyYW1lTG9hZGVyQ2xpZW50SW1wbC5jcHA6Cisg
ICAgICAgIChXZWJLaXQ6OkZyYW1lTG9hZGVyQ2xpZW50SW1wbDo6ZGV0YWNoZWRGcm9tUGFyZW50
Myk6CisKIDIwMTAtMDEtMDQgIE1hY2llaiBTdGFjaG93aWFrICA8bWpzQGFwcGxlLmNvbT4KIAog
ICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBGaXNoZXIuCmRpZmYgLS1naXQgYS9XZWJLaXQvY2hy
b21pdW0vc3JjL0ZyYW1lTG9hZGVyQ2xpZW50SW1wbC5jcHAgYi9XZWJLaXQvY2hyb21pdW0vc3Jj
L0ZyYW1lTG9hZGVyQ2xpZW50SW1wbC5jcHAKaW5kZXggY2RlZWJlZC4uY2RjOTQ5ZCAxMDA2NDQK
LS0tIGEvV2ViS2l0L2Nocm9taXVtL3NyYy9GcmFtZUxvYWRlckNsaWVudEltcGwuY3BwCisrKyBi
L1dlYktpdC9jaHJvbWl1bS9zcmMvRnJhbWVMb2FkZXJDbGllbnRJbXBsLmNwcApAQCAtMjE1LDgg
KzIxNSw4IEBAIHZvaWQgRnJhbWVMb2FkZXJDbGllbnRJbXBsOjpkZXRhY2hlZEZyb21QYXJlbnQz
KCkKICAgICAvLyB3aWxsIGNhdXNlIGEgY3Jhc2guICBJZiB5b3UgcmVtb3ZlL21vZGlmeSB0aGlz
LCBqdXN0IGVuc3VyZSB0aGF0IHlvdSBjYW4KICAgICAvLyBnbyB0byBhIHBhZ2UgYW5kIHRoZW4g
bmF2aWdhdGUgdG8gYSBuZXcgcGFnZSB3aXRob3V0IGdldHRpbmcgYW55IGFzc2VydHMKICAgICAv
LyBvciBjcmFzaGVzLgotICAgIG1fd2ViRnJhbWUtPmZyYW1lKCktPnNjcmlwdCgpLT5wcm94eSgp
LT5jbGVhckZvckNsb3NlKCk7Ci0gICAgCisgICAgbV93ZWJGcmFtZS0+ZnJhbWUoKS0+c2NyaXB0
KCktPmNsZWFyRm9yQ2xvc2UoKTsKKwogICAgIC8vIFN0b3AgY29tbXVuaWNhdGluZyB3aXRoIHRo
ZSBXZWJGcmFtZUNsaWVudCBhdCB0aGlzIHBvaW50IHNpbmNlIHdlIGFyZSBubwogICAgIC8vIGxv
bmdlciBhc3NvY2lhdGVkIHdpdGggdGhlIFBhZ2UuCiAgICAgbV93ZWJGcmFtZS0+ZHJvcENsaWVu
dCgpOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>