<?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>93323</bug_id>
          
          <creation_ts>2012-08-06 19:16:13 -0700</creation_ts>
          <short_desc>BindingSecurity::shouldAllowAccessToFrame shouldn&apos;t use a raw boolean parameter</short_desc>
          <delta_ts>2012-08-06 21:08:30 -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>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>75793</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Adam Barth">abarth</reporter>
          <assigned_to name="Adam Barth">abarth</assigned_to>
          <cc>eric</cc>
    
    <cc>haraken</cc>
    
    <cc>japhet</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>688691</commentid>
    <comment_count>0</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-08-06 19:16:13 -0700</bug_when>
    <thetext>BindingSecurity::shouldAllowAccessToFrame shouldn&apos;t use a raw boolean parameter</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>688693</commentid>
    <comment_count>1</comment_count>
      <attachid>156831</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-08-06 19:17:14 -0700</bug_when>
    <thetext>Created attachment 156831
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>688695</commentid>
    <comment_count>2</comment_count>
      <attachid>156831</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2012-08-06 19:18:42 -0700</bug_when>
    <thetext>Comment on attachment 156831
Patch

LGTM.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>688774</commentid>
    <comment_count>3</comment_count>
      <attachid>156831</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-08-06 21:08:26 -0700</bug_when>
    <thetext>Comment on attachment 156831
Patch

Clearing flags on attachment: 156831

Committed r124847: &lt;http://trac.webkit.org/changeset/124847&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>688775</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-08-06 21:08:30 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>156831</attachid>
            <date>2012-08-06 19:17:14 -0700</date>
            <delta_ts>2012-08-06 21:08:26 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-93323-20120806191650.patch</filename>
            <type>text/plain</type>
            <size>21371</size>
            <attacher name="Adam Barth">abarth</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI0ODA0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzRlNjAyNWE3ZWM2OGFj
Mzc3NGFhOTdjNWEzNmE4MWM0OTMwMWJmOC4uYzY4MmE2MTMwNTM1NGQxMzFiODc5NmZmNWM4NmY3
ZjAyMzE2ZmQzNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDU1IEBACiAyMDEyLTA4LTA2ICBBZGFt
IEJhcnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+CiAKKyAgICAgICAgQmluZGluZ1NlY3VyaXR5Ojpz
aG91bGRBbGxvd0FjY2Vzc1RvRnJhbWUgc2hvdWxkbid0IHVzZSBhIHJhdyBib29sZWFuIHBhcmFt
ZXRlcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTMz
MjMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBcyBy
ZXF1ZXN0ZWQgYnkgRXJpYy4gVGhpcyBwYXRjaCBhbHNvIHJlbmFtZXMgdGhlIGZ1bmN0aW9uIHRv
IG1hdGNoIGl0cworICAgICAgICBjb3VudGVycGFydCBpbiB0aGUgSmF2YVNjcmlwdENvcmUgYmlu
ZGluZ3MuCisKKyAgICAgICAgKiBiaW5kaW5ncy9nZW5lcmljL0JpbmRpbmdTZWN1cml0eS5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpjYW5BY2Nlc3NEb2N1bWVudCk6CisgICAgICAgIChXZWJDb3Jl
OjpCaW5kaW5nU2VjdXJpdHk6OnNob3VsZEFsbG93QWNjZXNzVG9GcmFtZSk6CisgICAgICAgIChX
ZWJDb3JlOjpCaW5kaW5nU2VjdXJpdHk6OnNob3VsZEFsbG93QWNjZXNzVG9Ob2RlKToKKyAgICAg
ICAgKFdlYkNvcmU6OkJpbmRpbmdTZWN1cml0eTo6YWxsb3dTZXR0aW5nRnJhbWVTcmNUb0phdmFz
Y3JpcHRVcmwpOgorICAgICAgICAqIGJpbmRpbmdzL2dlbmVyaWMvQmluZGluZ1NlY3VyaXR5Lmg6
CisgICAgICAgIChCaW5kaW5nU2VjdXJpdHkpOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMv
Q29kZUdlbmVyYXRvclY4LnBtOgorICAgICAgICAoR2VuZXJhdGVEb21haW5TYWZlRnVuY3Rpb25H
ZXR0ZXIpOgorICAgICAgICAoR2VuZXJhdGVSZXBsYWNlYWJsZUF0dHJTZXR0ZXIpOgorICAgICAg
ICAoR2VuZXJhdGVGdW5jdGlvbkNhbGxiYWNrKToKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvVjgvVjhUZXN0QWN0aXZlRE9NT2JqZWN0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlRl
c3RBY3RpdmVET01PYmplY3RWOEludGVybmFsOjpleGNpdGluZ0Z1bmN0aW9uQ2FsbGJhY2spOgor
ICAgICAgICAoV2ViQ29yZTo6VGVzdEFjdGl2ZURPTU9iamVjdFY4SW50ZXJuYWw6OnBvc3RNZXNz
YWdlQXR0ckdldHRlcik6CisgICAgICAgICogYmluZGluZ3MvdjgvU2NyaXB0Q29udHJvbGxlci5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpTY3JpcHRDb250cm9sbGVyOjpjYW5BY2Nlc3NGcm9tQ3Vy
cmVudE9yaWdpbik6CisgICAgICAgICogYmluZGluZ3MvdjgvY3VzdG9tL1Y4RE9NV2luZG93Q3Vz
dG9tLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OldpbmRvd1NldFRpbWVvdXRJbXBsKToKKyAgICAg
ICAgKFdlYkNvcmU6OlY4RE9NV2luZG93OjpldmVudEFjY2Vzc29yR2V0dGVyKToKKyAgICAgICAg
KFdlYkNvcmU6OlY4RE9NV2luZG93OjpldmVudEFjY2Vzc29yU2V0dGVyKToKKyAgICAgICAgKFdl
YkNvcmU6OlY4RE9NV2luZG93OjpvcGVuZXJBY2Nlc3NvclNldHRlcik6CisgICAgICAgIChXZWJD
b3JlOjpWOERPTVdpbmRvdzo6YWRkRXZlbnRMaXN0ZW5lckNhbGxiYWNrKToKKyAgICAgICAgKFdl
YkNvcmU6OlY4RE9NV2luZG93OjpyZW1vdmVFdmVudExpc3RlbmVyQ2FsbGJhY2spOgorICAgICAg
ICAoV2ViQ29yZTo6VjhET01XaW5kb3c6OnNob3dNb2RhbERpYWxvZ0NhbGxiYWNrKToKKyAgICAg
ICAgKFdlYkNvcmU6OlY4RE9NV2luZG93OjpvcGVuQ2FsbGJhY2spOgorICAgICAgICAoV2ViQ29y
ZTo6VjhET01XaW5kb3c6Om5hbWVkU2VjdXJpdHlDaGVjayk6CisgICAgICAgIChXZWJDb3JlOjpW
OERPTVdpbmRvdzo6aW5kZXhlZFNlY3VyaXR5Q2hlY2spOgorICAgICAgICAqIGJpbmRpbmdzL3Y4
L2N1c3RvbS9WOEhpc3RvcnlDdXN0b20uY3BwOgorICAgICAgICAoV2ViQ29yZTo6VjhIaXN0b3J5
OjppbmRleGVkU2VjdXJpdHlDaGVjayk6CisgICAgICAgIChXZWJDb3JlOjpWOEhpc3Rvcnk6Om5h
bWVkU2VjdXJpdHlDaGVjayk6CisgICAgICAgICogYmluZGluZ3MvdjgvY3VzdG9tL1Y4SW5qZWN0
ZWRTY3JpcHRNYW5hZ2VyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkluamVjdGVkU2NyaXB0TWFu
YWdlcjo6Y2FuQWNjZXNzSW5zcGVjdGVkV2luZG93KToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9j
dXN0b20vVjhMb2NhdGlvbkN1c3RvbS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpWOExvY2F0aW9u
OjpyZWxvYWRBY2Nlc3NvckdldHRlcik6CisgICAgICAgIChXZWJDb3JlOjpWOExvY2F0aW9uOjpy
ZXBsYWNlQWNjZXNzb3JHZXR0ZXIpOgorICAgICAgICAoV2ViQ29yZTo6VjhMb2NhdGlvbjo6YXNz
aWduQWNjZXNzb3JHZXR0ZXIpOgorICAgICAgICAoV2ViQ29yZTo6VjhMb2NhdGlvbjo6dG9TdHJp
bmdDYWxsYmFjayk6CisgICAgICAgIChXZWJDb3JlOjpWOExvY2F0aW9uOjppbmRleGVkU2VjdXJp
dHlDaGVjayk6CisgICAgICAgIChXZWJDb3JlOjpWOExvY2F0aW9uOjpuYW1lZFNlY3VyaXR5Q2hl
Y2spOgorCisyMDEyLTA4LTA2ICBBZGFtIEJhcnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+CisKICAg
ICAgICAgSlNDIHNob3VsZCB1c2UgQmluZGluZ1N0YXRlIHRvIGRldGVybWluZSB0aGUgYWN0aXZl
RE9NV2luZG93CiAgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD05MzMwNwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL0Jp
bmRpbmdTZWN1cml0eS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL0JpbmRp
bmdTZWN1cml0eS5jcHAKaW5kZXggZjcwZDNhNzNiNzJiYWQ4ZDY1NjIyNjkyMjkyNTU0NWY1ZWZl
NWJiZi4uMzZjOTU1MzQyMjJmMGY4ZTExMmM3NjhmNWRkYzc1YjZkZjYyMGUxOSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvZ2VuZXJpYy9CaW5kaW5nU2VjdXJpdHkuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvQmluZGluZ1NlY3VyaXR5LmNwcApA
QCAtNDIsNyArNDIsNyBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLXN0YXRpYyBib29sIGNh
bkFjY2Vzc0RvY3VtZW50KEJpbmRpbmdTdGF0ZSogc3RhdGUsIERvY3VtZW50KiB0YXJnZXREb2N1
bWVudCwgYm9vbCByZXBvcnRFcnJvcikKK3N0YXRpYyBib29sIGNhbkFjY2Vzc0RvY3VtZW50KEJp
bmRpbmdTdGF0ZSogc3RhdGUsIERvY3VtZW50KiB0YXJnZXREb2N1bWVudCwgU2VjdXJpdHlSZXBv
cnRpbmdPcHRpb24gcmVwb3J0aW5nT3B0aW9uID0gUmVwb3J0U2VjdXJpdHlFcnJvcikKIHsKICAg
ICBpZiAoIXRhcmdldERvY3VtZW50KQogICAgICAgICByZXR1cm4gZmFsc2U7CkBAIC01NCwyNSAr
NTQsMjUgQEAgc3RhdGljIGJvb2wgY2FuQWNjZXNzRG9jdW1lbnQoQmluZGluZ1N0YXRlKiBzdGF0
ZSwgRG9jdW1lbnQqIHRhcmdldERvY3VtZW50LCBib28KICAgICBpZiAoYWN0aXZlLT5zZWN1cml0
eU9yaWdpbigpLT5jYW5BY2Nlc3ModGFyZ2V0RG9jdW1lbnQtPnNlY3VyaXR5T3JpZ2luKCkpKQog
ICAgICAgICByZXR1cm4gdHJ1ZTsKIAotICAgIGlmIChyZXBvcnRFcnJvcikKKyAgICBpZiAocmVw
b3J0aW5nT3B0aW9uID09IFJlcG9ydFNlY3VyaXR5RXJyb3IpCiAgICAgICAgIGltbWVkaWF0ZWx5
UmVwb3J0VW5zYWZlQWNjZXNzVG8oc3RhdGUsIHRhcmdldERvY3VtZW50KTsKIAogICAgIHJldHVy
biBmYWxzZTsKIH0KIAotYm9vbCBCaW5kaW5nU2VjdXJpdHk6OmNhbkFjY2Vzc0ZyYW1lKEJpbmRp
bmdTdGF0ZSogc3RhdGUsIEZyYW1lKiB0YXJnZXQsIGJvb2wgcmVwb3J0RXJyb3IpCitib29sIEJp
bmRpbmdTZWN1cml0eTo6c2hvdWxkQWxsb3dBY2Nlc3NUb0ZyYW1lKEJpbmRpbmdTdGF0ZSogc3Rh
dGUsIEZyYW1lKiB0YXJnZXQsIFNlY3VyaXR5UmVwb3J0aW5nT3B0aW9uIHJlcG9ydGluZ09wdGlv
bikKIHsKLSAgICByZXR1cm4gdGFyZ2V0ICYmIGNhbkFjY2Vzc0RvY3VtZW50KHN0YXRlLCB0YXJn
ZXQtPmRvY3VtZW50KCksIHJlcG9ydEVycm9yKTsKKyAgICByZXR1cm4gdGFyZ2V0ICYmIGNhbkFj
Y2Vzc0RvY3VtZW50KHN0YXRlLCB0YXJnZXQtPmRvY3VtZW50KCksIHJlcG9ydGluZ09wdGlvbik7
CiB9CiAKIGJvb2wgQmluZGluZ1NlY3VyaXR5OjpzaG91bGRBbGxvd0FjY2Vzc1RvTm9kZShCaW5k
aW5nU3RhdGUqIHN0YXRlLCBOb2RlKiB0YXJnZXQpCiB7Ci0gICAgcmV0dXJuIHRhcmdldCAmJiBj
YW5BY2Nlc3NEb2N1bWVudChzdGF0ZSwgdGFyZ2V0LT5kb2N1bWVudCgpLCB0cnVlKTsKKyAgICBy
ZXR1cm4gdGFyZ2V0ICYmIGNhbkFjY2Vzc0RvY3VtZW50KHN0YXRlLCB0YXJnZXQtPmRvY3VtZW50
KCkpOwogfQogCiBib29sIEJpbmRpbmdTZWN1cml0eTo6YWxsb3dTZXR0aW5nRnJhbWVTcmNUb0ph
dmFzY3JpcHRVcmwoQmluZGluZ1N0YXRlKiBzdGF0ZSwgSFRNTEZyYW1lRWxlbWVudEJhc2UqIGZy
YW1lLCBjb25zdCBTdHJpbmcmIHZhbHVlKQogewotICAgIHJldHVybiAhcHJvdG9jb2xJc0phdmFT
Y3JpcHQoc3RyaXBMZWFkaW5nQW5kVHJhaWxpbmdIVE1MU3BhY2VzKHZhbHVlKSkgfHwgY2FuQWNj
ZXNzRG9jdW1lbnQoc3RhdGUsIGZyYW1lLT5jb250ZW50RG9jdW1lbnQoKSwgdHJ1ZSk7CisgICAg
cmV0dXJuICFwcm90b2NvbElzSmF2YVNjcmlwdChzdHJpcExlYWRpbmdBbmRUcmFpbGluZ0hUTUxT
cGFjZXModmFsdWUpKSB8fCBjYW5BY2Nlc3NEb2N1bWVudChzdGF0ZSwgZnJhbWUtPmNvbnRlbnRE
b2N1bWVudCgpKTsKIH0KIAogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
Z2VuZXJpYy9CaW5kaW5nU2VjdXJpdHkuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVy
aWMvQmluZGluZ1NlY3VyaXR5LmgKaW5kZXggZTZjNjUzOGZlMDdjMDcwNDM3ZjVmYzAyOTU1OTNj
OTgzZjIyYWIyZC4uOTlkN2YwMDk3NzExYzQwNzMwMTBhZjhkYjVhZmY3NjgzODQzMzhlNyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvZ2VuZXJpYy9CaW5kaW5nU2VjdXJpdHku
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL0JpbmRpbmdTZWN1cml0eS5o
CkBAIC0zOSwxMCArMzksMTUgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogY2xhc3MgSFRNTEZyYW1l
RWxlbWVudEJhc2U7CiBjbGFzcyBOb2RlOwogCitlbnVtIFNlY3VyaXR5UmVwb3J0aW5nT3B0aW9u
IHsKKyAgICBEb05vdFJlcG9ydFNlY3VyaXR5RXJyb3IsCisgICAgUmVwb3J0U2VjdXJpdHlFcnJv
ciwKK307CisKIGNsYXNzIEJpbmRpbmdTZWN1cml0eSB7CiBwdWJsaWM6Ci0gICAgc3RhdGljIGJv
b2wgc2hvdWxkQWxsb3dBY2Nlc3NUb05vZGUoQmluZGluZ1N0YXRlKiwgTm9kZSogdGFyZ2V0KTsK
LSAgICBzdGF0aWMgYm9vbCBjYW5BY2Nlc3NGcmFtZShCaW5kaW5nU3RhdGUqLCBGcmFtZSosIGJv
b2wgcmVwb3J0RXJyb3IpOworICAgIHN0YXRpYyBib29sIHNob3VsZEFsbG93QWNjZXNzVG9Ob2Rl
KEJpbmRpbmdTdGF0ZSosIE5vZGUqKTsKKyAgICBzdGF0aWMgYm9vbCBzaG91bGRBbGxvd0FjY2Vz
c1RvRnJhbWUoQmluZGluZ1N0YXRlKiwgRnJhbWUqLCBTZWN1cml0eVJlcG9ydGluZ09wdGlvbiA9
IFJlcG9ydFNlY3VyaXR5RXJyb3IpOwogICAgIHN0YXRpYyBib29sIGFsbG93U2V0dGluZ0ZyYW1l
U3JjVG9KYXZhc2NyaXB0VXJsKEJpbmRpbmdTdGF0ZSosIEhUTUxGcmFtZUVsZW1lbnRCYXNlKiwg
Y29uc3QgU3RyaW5nJiB2YWx1ZSk7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JWOC5wbSBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvclY4LnBtCmluZGV4IDZmMTZmZWM4ZjUzODA2NGIyYmU5
NjE1ZDk1MmUwMTlmNTIwOWFiODQuLjEwYjJjNjUxMTIxODU2NTVmMDc1MTAyMGNjMjQ1ZjhhNGJh
MzM5MjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdl
bmVyYXRvclY4LnBtCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdl
bmVyYXRvclY4LnBtCkBAIC03NjgsNyArNzY4LDcgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZh
bHVlPiAke2Z1bmNOYW1lfUF0dHJHZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIGMK
ICAgICAgICAgcmV0dXJuIHByaXZhdGVUZW1wbGF0ZS0+R2V0RnVuY3Rpb24oKTsKICAgICB9CiAg
ICAgJHtpbXBsQ2xhc3NOYW1lfSogaW1wID0gJHtjbGFzc05hbWV9Ojp0b05hdGl2ZShob2xkZXIp
OwotICAgIGlmICghQmluZGluZ1NlY3VyaXR5OjpjYW5BY2Nlc3NGcmFtZShCaW5kaW5nU3RhdGU6
Omluc3RhbmNlKCksIGltcC0+ZnJhbWUoKSwgZmFsc2UpKSB7CisgICAgaWYgKCFCaW5kaW5nU2Vj
dXJpdHk6OnNob3VsZEFsbG93QWNjZXNzVG9GcmFtZShCaW5kaW5nU3RhdGU6Omluc3RhbmNlKCks
IGltcC0+ZnJhbWUoKSwgRG9Ob3RSZXBvcnRTZWN1cml0eUVycm9yKSkgewogICAgICAgICBzdGF0
aWMgdjg6OlBlcnNpc3RlbnQ8djg6OkZ1bmN0aW9uVGVtcGxhdGU+IHNoYXJlZFRlbXBsYXRlID0g
djg6OlBlcnNpc3RlbnQ8djg6OkZ1bmN0aW9uVGVtcGxhdGU+OjpOZXcoJG5ld1RlbXBsYXRlU3Ry
aW5nKTsKICAgICAgICAgcmV0dXJuIHNoYXJlZFRlbXBsYXRlLT5HZXRGdW5jdGlvbigpOwogICAg
IH0KQEAgLTEwOTMsNyArMTA5Myw3IEBAIEVORAogICAgIGlmICgkaW1wbENsYXNzTmFtZSBlcSAi
RE9NV2luZG93IiB8fCAkZGF0YU5vZGUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJDaGVja1NlY3Vy
aXR5In0pIHsKICAgICAgICAgcHVzaChAaW1wbENvbnRlbnREZWNscywgPDxFTkQpOwogICAgICR7
aW1wbENsYXNzTmFtZX0qIGltcCA9IFY4JHtpbXBsQ2xhc3NOYW1lfTo6dG9OYXRpdmUoaW5mby5I
b2xkZXIoKSk7Ci0gICAgaWYgKCFCaW5kaW5nU2VjdXJpdHk6OmNhbkFjY2Vzc0ZyYW1lKEJpbmRp
bmdTdGF0ZTo6aW5zdGFuY2UoKSwgaW1wLT5mcmFtZSgpLCB0cnVlKSkKKyAgICBpZiAoIUJpbmRp
bmdTZWN1cml0eTo6c2hvdWxkQWxsb3dBY2Nlc3NUb0ZyYW1lKEJpbmRpbmdTdGF0ZTo6aW5zdGFu
Y2UoKSwgaW1wLT5mcmFtZSgpKSkKICAgICAgICAgcmV0dXJuOwogRU5ECiAgICAgfQpAQCAtMTUw
MCw3ICsxNTAwLDcgQEAgRU5ECiAgICAgICAgICYmICEkZnVuY3Rpb24tPnNpZ25hdHVyZS0+ZXh0
ZW5kZWRBdHRyaWJ1dGVzLT57IkRvTm90Q2hlY2tTZWN1cml0eSJ9KSB7CiAgICAgICAgICMgV2Ug
aGF2ZSBub3QgZmluZCByZWFsIHVzZSBjYXNlcyB5ZXQuCiAgICAgICAgIHB1c2goQGltcGxDb250
ZW50RGVjbHMsIDw8RU5EKTsKLSAgICBpZiAoIUJpbmRpbmdTZWN1cml0eTo6Y2FuQWNjZXNzRnJh
bWUoQmluZGluZ1N0YXRlOjppbnN0YW5jZSgpLCBpbXAtPmZyYW1lKCksIHRydWUpKQorICAgIGlm
ICghQmluZGluZ1NlY3VyaXR5OjpzaG91bGRBbGxvd0FjY2Vzc1RvRnJhbWUoQmluZGluZ1N0YXRl
OjppbnN0YW5jZSgpLCBpbXAtPmZyYW1lKCkpKQogICAgICAgICByZXR1cm4gdjhVbmRlZmluZWQo
KTsKIEVORAogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9WOC9WOFRlc3RBY3RpdmVET01PYmplY3QuY3BwIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdEFjdGl2ZURPTU9iamVjdC5jcHAKaW5kZXggODcw
ZDk5NmQxMjZjMDk4MjA3MjcyMDFhODc5MjdiM2ZjZTMzMjVhMC4uMDlhNTJkMThmNmI0Zjk3ZTcx
MGY3NGIwZTk5MjU3NDljZTRiYTVmYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdEFjdGl2ZURPTU9iamVjdC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdEFjdGl2ZURPTU9iamVjdC5j
cHAKQEAgLTU0LDcgKzU0LDcgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBleGNpdGlu
Z0Z1bmN0aW9uQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJncykKICAgICBpZiAoYXJn
cy5MZW5ndGgoKSA8IDEpCiAgICAgICAgIHJldHVybiBWOFByb3h5Ojp0aHJvd05vdEVub3VnaEFy
Z3VtZW50c0Vycm9yKGFyZ3MuR2V0SXNvbGF0ZSgpKTsKICAgICBUZXN0QWN0aXZlRE9NT2JqZWN0
KiBpbXAgPSBWOFRlc3RBY3RpdmVET01PYmplY3Q6OnRvTmF0aXZlKGFyZ3MuSG9sZGVyKCkpOwot
ICAgIGlmICghQmluZGluZ1NlY3VyaXR5OjpjYW5BY2Nlc3NGcmFtZShCaW5kaW5nU3RhdGU6Omlu
c3RhbmNlKCksIGltcC0+ZnJhbWUoKSwgdHJ1ZSkpCisgICAgaWYgKCFCaW5kaW5nU2VjdXJpdHk6
OnNob3VsZEFsbG93QWNjZXNzVG9GcmFtZShCaW5kaW5nU3RhdGU6Omluc3RhbmNlKCksIGltcC0+
ZnJhbWUoKSkpCiAgICAgICAgIHJldHVybiB2OFVuZGVmaW5lZCgpOwogICAgIEVYQ0VQVElPTl9C
TE9DSyhOb2RlKiwgbmV4dENoaWxkLCBWOE5vZGU6Okhhc0luc3RhbmNlKE1BWUJFX01JU1NJTkdf
UEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCkpID8gVjhOb2RlOjp0b05hdGl2
ZSh2ODo6SGFuZGxlPHY4OjpPYmplY3Q+OjpDYXN0KE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFy
Z3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCkpKSA6IDApOwogICAgIGltcC0+ZXhjaXRpbmdGdW5j
dGlvbihuZXh0Q2hpbGQpOwpAQCAtODMsNyArODMsNyBAQCBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6
VmFsdWU+IHBvc3RNZXNzYWdlQXR0ckdldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwg
YwogICAgICAgICByZXR1cm4gcHJpdmF0ZVRlbXBsYXRlLT5HZXRGdW5jdGlvbigpOwogICAgIH0K
ICAgICBUZXN0QWN0aXZlRE9NT2JqZWN0KiBpbXAgPSBWOFRlc3RBY3RpdmVET01PYmplY3Q6OnRv
TmF0aXZlKGhvbGRlcik7Ci0gICAgaWYgKCFCaW5kaW5nU2VjdXJpdHk6OmNhbkFjY2Vzc0ZyYW1l
KEJpbmRpbmdTdGF0ZTo6aW5zdGFuY2UoKSwgaW1wLT5mcmFtZSgpLCBmYWxzZSkpIHsKKyAgICBp
ZiAoIUJpbmRpbmdTZWN1cml0eTo6c2hvdWxkQWxsb3dBY2Nlc3NUb0ZyYW1lKEJpbmRpbmdTdGF0
ZTo6aW5zdGFuY2UoKSwgaW1wLT5mcmFtZSgpLCBEb05vdFJlcG9ydFNlY3VyaXR5RXJyb3IpKSB7
CiAgICAgICAgIHN0YXRpYyB2ODo6UGVyc2lzdGVudDx2ODo6RnVuY3Rpb25UZW1wbGF0ZT4gc2hh
cmVkVGVtcGxhdGUgPSB2ODo6UGVyc2lzdGVudDx2ODo6RnVuY3Rpb25UZW1wbGF0ZT46Ok5ldyh2
ODo6RnVuY3Rpb25UZW1wbGF0ZTo6TmV3KFRlc3RBY3RpdmVET01PYmplY3RWOEludGVybmFsOjpw
b3N0TWVzc2FnZUNhbGxiYWNrLCB2OFVuZGVmaW5lZCgpLCB2ODo6U2lnbmF0dXJlOjpOZXcoVjhU
ZXN0QWN0aXZlRE9NT2JqZWN0OjpHZXRSYXdUZW1wbGF0ZSgpKSkpOwogICAgICAgICByZXR1cm4g
c2hhcmVkVGVtcGxhdGUtPkdldEZ1bmN0aW9uKCk7CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvdjgvU2NyaXB0Q29udHJvbGxlci5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy92OC9TY3JpcHRDb250cm9sbGVyLmNwcAppbmRleCA3ZTQ5MGQ5ZjUyMWMyNzQx
YmVkY2Q4MjQwMjk5MGYwM2VhNzM1YTlkLi45NTAxYjNkY2VmOTlkMDFmMmY4ZTUzMzdjNjNlMjM3
MWVjMzkzM2E2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9TY3JpcHRD
b250cm9sbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9TY3JpcHRDb250
cm9sbGVyLmNwcApAQCAtOTcsNyArOTcsNyBAQCBGcmFtZSogU2NyaXB0Q29udHJvbGxlcjo6cmV0
cmlldmVGcmFtZUZvckN1cnJlbnRDb250ZXh0KCkKIAogYm9vbCBTY3JpcHRDb250cm9sbGVyOjpj
YW5BY2Nlc3NGcm9tQ3VycmVudE9yaWdpbihGcmFtZSAqZnJhbWUpCiB7Ci0gICAgcmV0dXJuICF2
ODo6Q29udGV4dDo6SW5Db250ZXh0KCkgfHwgQmluZGluZ1NlY3VyaXR5OjpjYW5BY2Nlc3NGcmFt
ZShCaW5kaW5nU3RhdGU6Omluc3RhbmNlKCksIGZyYW1lLCB0cnVlKTsKKyAgICByZXR1cm4gIXY4
OjpDb250ZXh0OjpJbkNvbnRleHQoKSB8fCBCaW5kaW5nU2VjdXJpdHk6OnNob3VsZEFsbG93QWNj
ZXNzVG9GcmFtZShCaW5kaW5nU3RhdGU6Omluc3RhbmNlKCksIGZyYW1lKTsKIH0KIAogU2NyaXB0
Q29udHJvbGxlcjo6U2NyaXB0Q29udHJvbGxlcihGcmFtZSogZnJhbWUpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhET01XaW5kb3dDdXN0b20uY3BwIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4RE9NV2luZG93Q3VzdG9tLmNwcApp
bmRleCBjN2NiZjYxMGQ0OWNiZGE3Nzk4ZTM4Nzg0OTUzNzRjY2Y5ZDdlMGJjLi5hODEyZjgzMzQ0
MmNkYjA3ZTZmNzM4YzdlYjc5NGM4OGRmYTI4NjEwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy92OC9jdXN0b20vVjhET01XaW5kb3dDdXN0b20uY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOERPTVdpbmRvd0N1c3RvbS5jcHAKQEAgLTEwNyw3
ICsxMDcsNyBAQCB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gV2luZG93U2V0VGltZW91dEltcGwoY29u
c3Qgdjg6OkFyZ3VtZW50cyYgYXJncywgYm9vbCBzaW5nbAogICAgIGlmIChhcmd1bWVudENvdW50
ID49IDIpCiAgICAgICAgIHRpbWVvdXQgPSBhcmdzWzFdLT5JbnQzMlZhbHVlKCk7CiAKLSAgICBp
ZiAoIUJpbmRpbmdTZWN1cml0eTo6Y2FuQWNjZXNzRnJhbWUoQmluZGluZ1N0YXRlOjppbnN0YW5j
ZSgpLCBpbXAtPmZyYW1lKCksIHRydWUpKQorICAgIGlmICghQmluZGluZ1NlY3VyaXR5OjpzaG91
bGRBbGxvd0FjY2Vzc1RvRnJhbWUoQmluZGluZ1N0YXRlOjppbnN0YW5jZSgpLCBpbXAtPmZyYW1l
KCkpKQogICAgICAgICByZXR1cm4gdjg6OlVuZGVmaW5lZCgpOwogCiAgICAgaW50IGlkOwpAQCAt
MTUyLDcgKzE1Miw3IEBAIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBWOERPTVdpbmRvdzo6ZXZlbnRB
Y2Nlc3NvckdldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtCiAgICAgICAgIHJldHVybiB2
ODo6VW5kZWZpbmVkKCk7CiAKICAgICBGcmFtZSogZnJhbWUgPSBWOERPTVdpbmRvdzo6dG9OYXRp
dmUoaG9sZGVyKS0+ZnJhbWUoKTsKLSAgICBpZiAoIUJpbmRpbmdTZWN1cml0eTo6Y2FuQWNjZXNz
RnJhbWUoQmluZGluZ1N0YXRlOjppbnN0YW5jZSgpLCBmcmFtZSwgdHJ1ZSkpCisgICAgaWYgKCFC
aW5kaW5nU2VjdXJpdHk6OnNob3VsZEFsbG93QWNjZXNzVG9GcmFtZShCaW5kaW5nU3RhdGU6Omlu
c3RhbmNlKCksIGZyYW1lKSkKICAgICAgICAgcmV0dXJuIHY4OjpVbmRlZmluZWQoKTsKIAogICAg
IHY4OjpMb2NhbDx2ODo6Q29udGV4dD4gY29udGV4dCA9IFY4UHJveHk6OmNvbnRleHQoZnJhbWUp
OwpAQCAtMTczLDcgKzE3Myw3IEBAIHZvaWQgVjhET01XaW5kb3c6OmV2ZW50QWNjZXNzb3JTZXR0
ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6CiAgICAgICAgIHJl
dHVybjsKIAogICAgIEZyYW1lKiBmcmFtZSA9IFY4RE9NV2luZG93Ojp0b05hdGl2ZShob2xkZXIp
LT5mcmFtZSgpOwotICAgIGlmICghQmluZGluZ1NlY3VyaXR5OjpjYW5BY2Nlc3NGcmFtZShCaW5k
aW5nU3RhdGU6Omluc3RhbmNlKCksIGZyYW1lLCB0cnVlKSkKKyAgICBpZiAoIUJpbmRpbmdTZWN1
cml0eTo6c2hvdWxkQWxsb3dBY2Nlc3NUb0ZyYW1lKEJpbmRpbmdTdGF0ZTo6aW5zdGFuY2UoKSwg
ZnJhbWUpKQogICAgICAgICByZXR1cm47CiAKICAgICB2ODo6TG9jYWw8djg6OkNvbnRleHQ+IGNv
bnRleHQgPSBWOFByb3h5Ojpjb250ZXh0KGZyYW1lKTsKQEAgLTIwNSw3ICsyMDUsNyBAQCB2b2lk
IFY4RE9NV2luZG93OjpvcGVuZXJBY2Nlc3NvclNldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4g
bmFtZSwgdjg6OkxvY2FsPHY4OgogewogICAgIERPTVdpbmRvdyogaW1wID0gVjhET01XaW5kb3c6
OnRvTmF0aXZlKGluZm8uSG9sZGVyKCkpOwogCi0gICAgaWYgKCFCaW5kaW5nU2VjdXJpdHk6OmNh
bkFjY2Vzc0ZyYW1lKEJpbmRpbmdTdGF0ZTo6aW5zdGFuY2UoKSwgaW1wLT5mcmFtZSgpLCB0cnVl
KSkKKyAgICBpZiAoIUJpbmRpbmdTZWN1cml0eTo6c2hvdWxkQWxsb3dBY2Nlc3NUb0ZyYW1lKEJp
bmRpbmdTdGF0ZTo6aW5zdGFuY2UoKSwgaW1wLT5mcmFtZSgpKSkKICAgICAgICAgcmV0dXJuOwog
CiAgICAgLy8gT3BlbmVyIGNhbiBiZSBzaGFkb3dlZCBpZiBpdCBpcyBpbiB0aGUgc2FtZSBkb21h
aW4uCkBAIC0yMzQsNyArMjM0LDcgQEAgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4RE9NV2luZG93
OjphZGRFdmVudExpc3RlbmVyQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cyYKIAogICAgIERP
TVdpbmRvdyogaW1wID0gVjhET01XaW5kb3c6OnRvTmF0aXZlKGFyZ3MuSG9sZGVyKCkpOwogCi0g
ICAgaWYgKCFCaW5kaW5nU2VjdXJpdHk6OmNhbkFjY2Vzc0ZyYW1lKEJpbmRpbmdTdGF0ZTo6aW5z
dGFuY2UoKSwgaW1wLT5mcmFtZSgpLCB0cnVlKSkKKyAgICBpZiAoIUJpbmRpbmdTZWN1cml0eTo6
c2hvdWxkQWxsb3dBY2Nlc3NUb0ZyYW1lKEJpbmRpbmdTdGF0ZTo6aW5zdGFuY2UoKSwgaW1wLT5m
cmFtZSgpKSkKICAgICAgICAgcmV0dXJuIHY4OjpVbmRlZmluZWQoKTsKIAogICAgIERvY3VtZW50
KiBkb2MgPSBpbXAtPmRvY3VtZW50KCk7CkBAIC0yNjYsNyArMjY2LDcgQEAgdjg6OkhhbmRsZTx2
ODo6VmFsdWU+IFY4RE9NV2luZG93OjpyZW1vdmVFdmVudExpc3RlbmVyQ2FsbGJhY2soY29uc3Qg
djg6OkFyZ3VtZW4KIAogICAgIERPTVdpbmRvdyogaW1wID0gVjhET01XaW5kb3c6OnRvTmF0aXZl
KGFyZ3MuSG9sZGVyKCkpOwogCi0gICAgaWYgKCFCaW5kaW5nU2VjdXJpdHk6OmNhbkFjY2Vzc0Zy
YW1lKEJpbmRpbmdTdGF0ZTo6aW5zdGFuY2UoKSwgaW1wLT5mcmFtZSgpLCB0cnVlKSkKKyAgICBp
ZiAoIUJpbmRpbmdTZWN1cml0eTo6c2hvdWxkQWxsb3dBY2Nlc3NUb0ZyYW1lKEJpbmRpbmdTdGF0
ZTo6aW5zdGFuY2UoKSwgaW1wLT5mcmFtZSgpKSkKICAgICAgICAgcmV0dXJuIHY4OjpVbmRlZmlu
ZWQoKTsKIAogICAgIERvY3VtZW50KiBkb2MgPSBpbXAtPmRvY3VtZW50KCk7CkBAIC00MzMsNyAr
NDMzLDcgQEAgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4RE9NV2luZG93OjpzaG93TW9kYWxEaWFs
b2dDYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzJgogICAgIElOQ19TVEFUUygiRE9NLkRPTVdp
bmRvdy5zaG93TW9kYWxEaWFsb2coKSIpOwogICAgIERPTVdpbmRvdyogaW1wbCA9IFY4RE9NV2lu
ZG93Ojp0b05hdGl2ZShhcmdzLkhvbGRlcigpKTsKICAgICBCaW5kaW5nU3RhdGUqIHN0YXRlID0g
QmluZGluZ1N0YXRlOjppbnN0YW5jZSgpOwotICAgIGlmICghQmluZGluZ1NlY3VyaXR5OjpjYW5B
Y2Nlc3NGcmFtZShzdGF0ZSwgaW1wbC0+ZnJhbWUoKSwgdHJ1ZSkpCisgICAgaWYgKCFCaW5kaW5n
U2VjdXJpdHk6OnNob3VsZEFsbG93QWNjZXNzVG9GcmFtZShzdGF0ZSwgaW1wbC0+ZnJhbWUoKSkp
CiAgICAgICAgIHJldHVybiB2ODo6VW5kZWZpbmVkKCk7CiAKICAgICAvLyBGSVhNRTogSGFuZGxl
IGV4Y2VwdGlvbnMgcHJvcGVybHkuCkBAIC00NTEsNyArNDUxLDcgQEAgdjg6OkhhbmRsZTx2ODo6
VmFsdWU+IFY4RE9NV2luZG93OjpvcGVuQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJn
cykKICAgICBJTkNfU1RBVFMoIkRPTS5ET01XaW5kb3cub3BlbigpIik7CiAgICAgRE9NV2luZG93
KiBpbXBsID0gVjhET01XaW5kb3c6OnRvTmF0aXZlKGFyZ3MuSG9sZGVyKCkpOwogICAgIEJpbmRp
bmdTdGF0ZSogc3RhdGUgPSBCaW5kaW5nU3RhdGU6Omluc3RhbmNlKCk7Ci0gICAgaWYgKCFCaW5k
aW5nU2VjdXJpdHk6OmNhbkFjY2Vzc0ZyYW1lKHN0YXRlLCBpbXBsLT5mcmFtZSgpLCB0cnVlKSkK
KyAgICBpZiAoIUJpbmRpbmdTZWN1cml0eTo6c2hvdWxkQWxsb3dBY2Nlc3NUb0ZyYW1lKHN0YXRl
LCBpbXBsLT5mcmFtZSgpKSkKICAgICAgICAgcmV0dXJuIHY4OjpVbmRlZmluZWQoKTsKIAogICAg
IC8vIEZJWE1FOiBIYW5kbGUgZXhjZXB0aW9ucyBwcm9wZXJseS4KQEAgLTU3MCw3ICs1NzAsNyBA
QCBib29sIFY4RE9NV2luZG93OjpuYW1lZFNlY3VyaXR5Q2hlY2sodjg6OkxvY2FsPHY4OjpPYmpl
Y3Q+IGhvc3QsIHY4OjpMb2NhbDx2ODo6VgogICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAg
fQogCi0gICAgcmV0dXJuIEJpbmRpbmdTZWN1cml0eTo6Y2FuQWNjZXNzRnJhbWUoQmluZGluZ1N0
YXRlOjppbnN0YW5jZSgpLCB0YXJnZXQsIGZhbHNlKTsKKyAgICByZXR1cm4gQmluZGluZ1NlY3Vy
aXR5OjpzaG91bGRBbGxvd0FjY2Vzc1RvRnJhbWUoQmluZGluZ1N0YXRlOjppbnN0YW5jZSgpLCB0
YXJnZXQsIERvTm90UmVwb3J0U2VjdXJpdHlFcnJvcik7CiB9CiAKIGJvb2wgVjhET01XaW5kb3c6
OmluZGV4ZWRTZWN1cml0eUNoZWNrKHY4OjpMb2NhbDx2ODo6T2JqZWN0PiBob3N0LCB1aW50MzJf
dCBpbmRleCwgdjg6OkFjY2Vzc1R5cGUgdHlwZSwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4pCkBAIC01
OTUsNyArNTk1LDcgQEAgYm9vbCBWOERPTVdpbmRvdzo6aW5kZXhlZFNlY3VyaXR5Q2hlY2sodjg6
OkxvY2FsPHY4OjpPYmplY3Q+IGhvc3QsIHVpbnQzMl90IGluZGUKICAgICBpZiAodHlwZSA9PSB2
ODo6QUNDRVNTX0dFVCAmJiBjaGlsZEZyYW1lICYmICFob3N0LT5IYXNSZWFsSW5kZXhlZFByb3Bl
cnR5KGluZGV4KSkKICAgICAgICAgcmV0dXJuIHRydWU7CiAKLSAgICByZXR1cm4gQmluZGluZ1Nl
Y3VyaXR5OjpjYW5BY2Nlc3NGcmFtZShCaW5kaW5nU3RhdGU6Omluc3RhbmNlKCksIHRhcmdldCwg
ZmFsc2UpOworICAgIHJldHVybiBCaW5kaW5nU2VjdXJpdHk6OnNob3VsZEFsbG93QWNjZXNzVG9G
cmFtZShCaW5kaW5nU3RhdGU6Omluc3RhbmNlKCksIHRhcmdldCwgRG9Ob3RSZXBvcnRTZWN1cml0
eUVycm9yKTsKIH0KIAogdjg6OkhhbmRsZTx2ODo6VmFsdWU+IHRvVjgoRE9NV2luZG93KiB3aW5k
b3csIHY4OjpJc29sYXRlKiBpc29sYXRlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvdjgvY3VzdG9tL1Y4SGlzdG9yeUN1c3RvbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy92OC9jdXN0b20vVjhIaXN0b3J5Q3VzdG9tLmNwcAppbmRleCAyZjRkNjZlZjllY2YxMmY4
ZDBlNmE0MDU0NzcxMmY3ZWQ3YTM2NjI5Li43OWI1YjA3NTQ5ODZiNTk5MTFjYjIwNmJhMzdmMjM5
MGQyM2Q1MGE5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20v
VjhIaXN0b3J5Q3VzdG9tLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0
b20vVjhIaXN0b3J5Q3VzdG9tLmNwcApAQCAtMTExLDE2ICsxMTEsMTQgQEAgdjg6OkhhbmRsZTx2
ODo6VmFsdWU+IFY4SGlzdG9yeTo6cmVwbGFjZVN0YXRlQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3Vt
ZW50cyYgYXJncykKIAogYm9vbCBWOEhpc3Rvcnk6OmluZGV4ZWRTZWN1cml0eUNoZWNrKHY4OjpM
b2NhbDx2ODo6T2JqZWN0PiBob3N0LCB1aW50MzJfdCBpbmRleCwgdjg6OkFjY2Vzc1R5cGUgdHlw
ZSwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4pCiB7Ci0gICAgLy8gT25seSBhbGxvdyBzYW1lIG9yaWdp
biBhY2Nlc3MuCiAgICAgSGlzdG9yeSogaGlzdG9yeSA9IFY4SGlzdG9yeTo6dG9OYXRpdmUoaG9z
dCk7Ci0gICAgcmV0dXJuIEJpbmRpbmdTZWN1cml0eTo6Y2FuQWNjZXNzRnJhbWUoQmluZGluZ1N0
YXRlOjppbnN0YW5jZSgpLCBoaXN0b3J5LT5mcmFtZSgpLCBmYWxzZSk7CisgICAgcmV0dXJuIEJp
bmRpbmdTZWN1cml0eTo6c2hvdWxkQWxsb3dBY2Nlc3NUb0ZyYW1lKEJpbmRpbmdTdGF0ZTo6aW5z
dGFuY2UoKSwgaGlzdG9yeS0+ZnJhbWUoKSwgRG9Ob3RSZXBvcnRTZWN1cml0eUVycm9yKTsKIH0K
IAogYm9vbCBWOEhpc3Rvcnk6Om5hbWVkU2VjdXJpdHlDaGVjayh2ODo6TG9jYWw8djg6Ok9iamVj
dD4gaG9zdCwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4ga2V5LCB2ODo6QWNjZXNzVHlwZSB0eXBlLCB2
ODo6TG9jYWw8djg6OlZhbHVlPikKIHsKLSAgICAvLyBPbmx5IGFsbG93IHNhbWUgb3JpZ2luIGFj
Y2Vzcy4KICAgICBIaXN0b3J5KiBoaXN0b3J5ID0gVjhIaXN0b3J5Ojp0b05hdGl2ZShob3N0KTsK
LSAgICByZXR1cm4gQmluZGluZ1NlY3VyaXR5OjpjYW5BY2Nlc3NGcmFtZShCaW5kaW5nU3RhdGU6
Omluc3RhbmNlKCksIGhpc3RvcnktPmZyYW1lKCksIGZhbHNlKTsKKyAgICByZXR1cm4gQmluZGlu
Z1NlY3VyaXR5OjpzaG91bGRBbGxvd0FjY2Vzc1RvRnJhbWUoQmluZGluZ1N0YXRlOjppbnN0YW5j
ZSgpLCBoaXN0b3J5LT5mcmFtZSgpLCBEb05vdFJlcG9ydFNlY3VyaXR5RXJyb3IpOwogfQogCiB9
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy92OC9jdXN0b20vVjhJbmplY3RlZFNjcmlwdE1hbmFnZXIuY3BwIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvdjgvY3VzdG9tL1Y4SW5qZWN0ZWRTY3JpcHRNYW5hZ2VyLmNwcAppbmRleCA4OThl
ODk2ZTg2YTdjMzRkNzZiYmQyYWYwNjFhOTJkMDI5NWJmNTk2Li5mYmQ4ZDNhZDk4ODdmMjg1ZWZm
Y2ExZjcwMGU5MGVjY2U1ZjAyNjg4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy92OC9jdXN0b20vVjhJbmplY3RlZFNjcmlwdE1hbmFnZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOEluamVjdGVkU2NyaXB0TWFuYWdlci5jcHAKQEAgLTEy
Myw3ICsxMjMsNyBAQCBib29sIEluamVjdGVkU2NyaXB0TWFuYWdlcjo6Y2FuQWNjZXNzSW5zcGVj
dGVkV2luZG93KFNjcmlwdFN0YXRlKiBzY3JpcHRTdGF0ZSkKICAgICBGcmFtZSogZnJhbWUgPSBW
OERPTVdpbmRvdzo6dG9OYXRpdmUoaG9sZGVyKS0+ZnJhbWUoKTsKIAogICAgIHY4OjpDb250ZXh0
OjpTY29wZSBjb250ZXh0U2NvcGUoY29udGV4dCk7Ci0gICAgcmV0dXJuIEJpbmRpbmdTZWN1cml0
eTo6Y2FuQWNjZXNzRnJhbWUoQmluZGluZ1N0YXRlOjppbnN0YW5jZSgpLCBmcmFtZSwgZmFsc2Up
OworICAgIHJldHVybiBCaW5kaW5nU2VjdXJpdHk6OnNob3VsZEFsbG93QWNjZXNzVG9GcmFtZShC
aW5kaW5nU3RhdGU6Omluc3RhbmNlKCksIGZyYW1lLCBEb05vdFJlcG9ydFNlY3VyaXR5RXJyb3Ip
OwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy92OC9jdXN0b20vVjhMb2NhdGlvbkN1c3RvbS5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy92OC9jdXN0b20vVjhMb2NhdGlvbkN1c3RvbS5jcHAKaW5kZXggNDJmMDJmOWI1
OWQ2NjA0YmU0NjVmMjYxMzBlMmZjYTk0NWYzNGE1NC4uY2U2ODk4NTc0NDU1NDAzMjEwN2NlYzE0
OTQwYzQzZjc1MDhiMWJmYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvdjgv
Y3VzdG9tL1Y4TG9jYXRpb25DdXN0b20uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3Y4L2N1c3RvbS9WOExvY2F0aW9uQ3VzdG9tLmNwcApAQCAtMTU2LDcgKzE1Niw3IEBAIHY4OjpI
YW5kbGU8djg6OlZhbHVlPiBWOExvY2F0aW9uOjpyZWxvYWRBY2Nlc3NvckdldHRlcih2ODo6TG9j
YWw8djg6OlN0cmluZz4gbmFtCiAgICAgICAgIHJldHVybiBwcml2YXRlVGVtcGxhdGUtPkdldEZ1
bmN0aW9uKCk7CiAgICAgfQogICAgIExvY2F0aW9uKiBpbXAgPSBWOExvY2F0aW9uOjp0b05hdGl2
ZShob2xkZXIpOwotICAgIGlmICghQmluZGluZ1NlY3VyaXR5OjpjYW5BY2Nlc3NGcmFtZShCaW5k
aW5nU3RhdGU6Omluc3RhbmNlKCksIGltcC0+ZnJhbWUoKSwgZmFsc2UpKSB7CisgICAgaWYgKCFC
aW5kaW5nU2VjdXJpdHk6OnNob3VsZEFsbG93QWNjZXNzVG9GcmFtZShCaW5kaW5nU3RhdGU6Omlu
c3RhbmNlKCksIGltcC0+ZnJhbWUoKSwgRG9Ob3RSZXBvcnRTZWN1cml0eUVycm9yKSkgewogICAg
ICAgICBzdGF0aWMgdjg6OlBlcnNpc3RlbnQ8djg6OkZ1bmN0aW9uVGVtcGxhdGU+IHNoYXJlZFRl
bXBsYXRlID0gdjg6OlBlcnNpc3RlbnQ8djg6OkZ1bmN0aW9uVGVtcGxhdGU+OjpOZXcodjg6OkZ1
bmN0aW9uVGVtcGxhdGU6Ok5ldyhWOExvY2F0aW9uOjpyZWxvYWRDYWxsYmFjaywgdjg6OkhhbmRs
ZTx2ODo6VmFsdWU+KCksIHY4OjpTaWduYXR1cmU6Ok5ldyhWOExvY2F0aW9uOjpHZXRSYXdUZW1w
bGF0ZSgpKSkpOwogICAgICAgICByZXR1cm4gc2hhcmVkVGVtcGxhdGUtPkdldEZ1bmN0aW9uKCk7
CiAgICAgfQpAQCAtMTc0LDcgKzE3NCw3IEBAIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBWOExvY2F0
aW9uOjpyZXBsYWNlQWNjZXNzb3JHZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hCiAgICAg
ICAgIHJldHVybiBwcml2YXRlVGVtcGxhdGUtPkdldEZ1bmN0aW9uKCk7CiAgICAgfQogICAgIExv
Y2F0aW9uKiBpbXAgPSBWOExvY2F0aW9uOjp0b05hdGl2ZShob2xkZXIpOwotICAgIGlmICghQmlu
ZGluZ1NlY3VyaXR5OjpjYW5BY2Nlc3NGcmFtZShCaW5kaW5nU3RhdGU6Omluc3RhbmNlKCksIGlt
cC0+ZnJhbWUoKSwgZmFsc2UpKSB7CisgICAgaWYgKCFCaW5kaW5nU2VjdXJpdHk6OnNob3VsZEFs
bG93QWNjZXNzVG9GcmFtZShCaW5kaW5nU3RhdGU6Omluc3RhbmNlKCksIGltcC0+ZnJhbWUoKSwg
RG9Ob3RSZXBvcnRTZWN1cml0eUVycm9yKSkgewogICAgICAgICBzdGF0aWMgdjg6OlBlcnNpc3Rl
bnQ8djg6OkZ1bmN0aW9uVGVtcGxhdGU+IHNoYXJlZFRlbXBsYXRlID0gdjg6OlBlcnNpc3RlbnQ8
djg6OkZ1bmN0aW9uVGVtcGxhdGU+OjpOZXcodjg6OkZ1bmN0aW9uVGVtcGxhdGU6Ok5ldyhWOExv
Y2F0aW9uOjpyZXBsYWNlQ2FsbGJhY2ssIHY4OjpIYW5kbGU8djg6OlZhbHVlPigpLCB2ODo6U2ln
bmF0dXJlOjpOZXcoVjhMb2NhdGlvbjo6R2V0UmF3VGVtcGxhdGUoKSkpKTsKICAgICAgICAgcmV0
dXJuIHNoYXJlZFRlbXBsYXRlLT5HZXRGdW5jdGlvbigpOwogICAgIH0KQEAgLTE5Myw3ICsxOTMs
NyBAQCB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhMb2NhdGlvbjo6YXNzaWduQWNjZXNzb3JHZXR0
ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbQogICAgICAgICByZXR1cm4gcHJpdmF0ZVRlbXBs
YXRlLT5HZXRGdW5jdGlvbigpOwogICAgIH0KICAgICBMb2NhdGlvbiogaW1wID0gVjhMb2NhdGlv
bjo6dG9OYXRpdmUoaG9sZGVyKTsKLSAgICBpZiAoIUJpbmRpbmdTZWN1cml0eTo6Y2FuQWNjZXNz
RnJhbWUoQmluZGluZ1N0YXRlOjppbnN0YW5jZSgpLCBpbXAtPmZyYW1lKCksIGZhbHNlKSkgewor
ICAgIGlmICghQmluZGluZ1NlY3VyaXR5OjpzaG91bGRBbGxvd0FjY2Vzc1RvRnJhbWUoQmluZGlu
Z1N0YXRlOjppbnN0YW5jZSgpLCBpbXAtPmZyYW1lKCksIERvTm90UmVwb3J0U2VjdXJpdHlFcnJv
cikpIHsKICAgICAgICAgc3RhdGljIHY4OjpQZXJzaXN0ZW50PHY4OjpGdW5jdGlvblRlbXBsYXRl
PiBzaGFyZWRUZW1wbGF0ZSA9IHY4OjpQZXJzaXN0ZW50PHY4OjpGdW5jdGlvblRlbXBsYXRlPjo6
TmV3KHY4OjpGdW5jdGlvblRlbXBsYXRlOjpOZXcoVjhMb2NhdGlvbjo6YXNzaWduQ2FsbGJhY2ss
IHY4OjpIYW5kbGU8djg6OlZhbHVlPigpLCB2ODo6U2lnbmF0dXJlOjpOZXcoVjhMb2NhdGlvbjo6
R2V0UmF3VGVtcGxhdGUoKSkpKTsKICAgICAgICAgcmV0dXJuIHNoYXJlZFRlbXBsYXRlLT5HZXRG
dW5jdGlvbigpOwogICAgIH0KQEAgLTI1MSw3ICsyNTEsNyBAQCB2ODo6SGFuZGxlPHY4OjpWYWx1
ZT4gVjhMb2NhdGlvbjo6dG9TdHJpbmdDYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdz
KQogICAgIElOQ19TVEFUUygiRE9NLkxvY2F0aW9uLnRvU3RyaW5nIik7CiAgICAgdjg6OkhhbmRs
ZTx2ODo6T2JqZWN0PiBob2xkZXIgPSBhcmdzLkhvbGRlcigpOwogICAgIExvY2F0aW9uKiBpbXAg
PSBWOExvY2F0aW9uOjp0b05hdGl2ZShob2xkZXIpOwotICAgIGlmICghQmluZGluZ1NlY3VyaXR5
OjpjYW5BY2Nlc3NGcmFtZShCaW5kaW5nU3RhdGU6Omluc3RhbmNlKCksIGltcC0+ZnJhbWUoKSwg
dHJ1ZSkpCisgICAgaWYgKCFCaW5kaW5nU2VjdXJpdHk6OnNob3VsZEFsbG93QWNjZXNzVG9GcmFt
ZShCaW5kaW5nU3RhdGU6Omluc3RhbmNlKCksIGltcC0+ZnJhbWUoKSkpCiAgICAgICAgIHJldHVy
biB2ODo6VW5kZWZpbmVkKCk7CiAgICAgU3RyaW5nIHJlc3VsdCA9IGltcC0+aHJlZigpOwogICAg
IHJldHVybiB2OFN0cmluZyhyZXN1bHQsIGFyZ3MuR2V0SXNvbGF0ZSgpKTsKQEAgLTI2MSwxNCAr
MjYxLDE0IEBAIGJvb2wgVjhMb2NhdGlvbjo6aW5kZXhlZFNlY3VyaXR5Q2hlY2sodjg6OkxvY2Fs
PHY4OjpPYmplY3Q+IGhvc3QsIHVpbnQzMl90IGluZGV4CiB7CiAgICAgLy8gT25seSBhbGxvdyBz
YW1lIG9yaWdpbiBhY2Nlc3MKICAgICBMb2NhdGlvbiogaW1wID0gIFY4TG9jYXRpb246OnRvTmF0
aXZlKGhvc3QpOwotICAgIHJldHVybiBCaW5kaW5nU2VjdXJpdHk6OmNhbkFjY2Vzc0ZyYW1lKEJp
bmRpbmdTdGF0ZTo6aW5zdGFuY2UoKSwgaW1wLT5mcmFtZSgpLCBmYWxzZSk7CisgICAgcmV0dXJu
IEJpbmRpbmdTZWN1cml0eTo6c2hvdWxkQWxsb3dBY2Nlc3NUb0ZyYW1lKEJpbmRpbmdTdGF0ZTo6
aW5zdGFuY2UoKSwgaW1wLT5mcmFtZSgpLCBEb05vdFJlcG9ydFNlY3VyaXR5RXJyb3IpOwogfQog
CiBib29sIFY4TG9jYXRpb246Om5hbWVkU2VjdXJpdHlDaGVjayh2ODo6TG9jYWw8djg6Ok9iamVj
dD4gaG9zdCwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4ga2V5LCB2ODo6QWNjZXNzVHlwZSB0eXBlLCB2
ODo6TG9jYWw8djg6OlZhbHVlPikKIHsKICAgICAvLyBPbmx5IGFsbG93IHNhbWUgb3JpZ2luIGFj
Y2VzcwogICAgIExvY2F0aW9uKiBpbXAgPSBWOExvY2F0aW9uOjp0b05hdGl2ZShob3N0KTsKLSAg
ICByZXR1cm4gQmluZGluZ1NlY3VyaXR5OjpjYW5BY2Nlc3NGcmFtZShCaW5kaW5nU3RhdGU6Omlu
c3RhbmNlKCksIGltcC0+ZnJhbWUoKSwgZmFsc2UpOworICAgIHJldHVybiBCaW5kaW5nU2VjdXJp
dHk6OnNob3VsZEFsbG93QWNjZXNzVG9GcmFtZShCaW5kaW5nU3RhdGU6Omluc3RhbmNlKCksIGlt
cC0+ZnJhbWUoKSwgRG9Ob3RSZXBvcnRTZWN1cml0eUVycm9yKTsKIH0KIAogdjg6OkhhbmRsZTx2
ODo6VmFsdWU+IHRvVjgoTG9jYXRpb24qIGltcGwsIHY4OjpJc29sYXRlKiBpc29sYXRlKQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>