<?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>169954</bug_id>
          
          <creation_ts>2017-03-22 02:54:10 -0700</creation_ts>
          <short_desc>WebAssembly: name ExecState consistently</short_desc>
          <delta_ts>2017-03-22 10:56:37 -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>JavaScriptCore</component>
          <version>WebKit 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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="JF Bastien">jfbastien</reporter>
          <assigned_to name="JF Bastien">jfbastien</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>fpizlo</cc>
    
    <cc>jfbastien</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1290029</commentid>
    <comment_count>0</comment_count>
    <who name="JF Bastien">jfbastien</who>
    <bug_when>2017-03-22 02:54:10 -0700</bug_when>
    <thetext>No functional change, just a rename for variables.

I copied over from other parts of the code, and we&apos;re now pretty inconsistent. `exec` seems to be preferred over `state`.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1290030</commentid>
    <comment_count>1</comment_count>
      <attachid>305091</attachid>
    <who name="JF Bastien">jfbastien</who>
    <bug_when>2017-03-22 02:55:56 -0700</bug_when>
    <thetext>Created attachment 305091
patch

I&apos;m not touching the error constructor files here, bug #165995 fixes them instead.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1290051</commentid>
    <comment_count>2</comment_count>
      <attachid>305091</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2017-03-22 08:07:28 -0700</bug_when>
    <thetext>Comment on attachment 305091
patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1290115</commentid>
    <comment_count>3</comment_count>
      <attachid>305091</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-03-22 10:56:33 -0700</bug_when>
    <thetext>Comment on attachment 305091
patch

Clearing flags on attachment: 305091

Committed r214261: &lt;http://trac.webkit.org/changeset/214261&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1290116</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-03-22 10:56:37 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>305091</attachid>
            <date>2017-03-22 02:55:56 -0700</date>
            <delta_ts>2017-03-22 10:56:33 -0700</delta_ts>
            <desc>patch</desc>
            <filename>0001-rename.patch</filename>
            <type>text/plain</type>
            <size>23054</size>
            <attacher name="JF Bastien">jfbastien</attacher>
            
              <data encoding="base64">RnJvbSA4ZWNiYTE3MGE1ZDc2ZmI4NTZkNjI5ZGI1ZjhhYjBmM2QxNmMwOTI4IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBKRiBCYXN0aWVuIDxqZmJhc3RpZW5AYXBwbGUuY29tPgpEYXRl
OiBXZWQsIDIyIE1hciAyMDE3IDAyOjU1OjA5IC0wNzAwClN1YmplY3Q6IFtQQVRDSF0gcmVuYW1l
CgotLS0KIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cgICAgICAgICAgICAgICAgICAg
IHwgNDAgKysrKysrKysrKysrKysrKysrKysrKwogLi4uL3dhc20vanMvSlNXZWJBc3NlbWJseUNv
bXBpbGVFcnJvci5jcHAgICAgICAgICAgfCAxMCArKystLS0KIC4uLi93YXNtL2pzL0pTV2ViQXNz
ZW1ibHlDb21waWxlRXJyb3IuaCAgICAgICAgICAgIHwgIDQgKy0tCiAuLi4vd2FzbS9qcy9KU1dl
YkFzc2VtYmx5TGlua0Vycm9yLmNwcCAgICAgICAgICAgICB8IDEwICsrKy0tLQogLi4uL3dhc20v
anMvSlNXZWJBc3NlbWJseUxpbmtFcnJvci5oICAgICAgICAgICAgICAgfCAgNCArLS0KIC4uLi93
YXNtL2pzL0pTV2ViQXNzZW1ibHlSdW50aW1lRXJyb3IuY3BwICAgICAgICAgIHwgIDQgKy0tCiAu
Li4vd2FzbS9qcy9KU1dlYkFzc2VtYmx5UnVudGltZUVycm9yLmggICAgICAgICAgICB8ICA0ICst
LQogLi4uL3dhc20vanMvV2ViQXNzZW1ibHlJbnN0YW5jZUNvbnN0cnVjdG9yLmNwcCAgICAgfCAg
NiArKy0tCiAuLi4vd2FzbS9qcy9XZWJBc3NlbWJseU1lbW9yeUNvbnN0cnVjdG9yLmNwcCAgICAg
ICB8ICA2ICsrLS0KIC4uLi93YXNtL2pzL1dlYkFzc2VtYmx5TW9kdWxlQ29uc3RydWN0b3IuY3Bw
ICAgICAgIHwgMTQgKysrKy0tLS0KIC4uLi93YXNtL2pzL1dlYkFzc2VtYmx5TW9kdWxlUmVjb3Jk
LmNwcCAgICAgICAgICAgIHwgMjYgKysrKysrKy0tLS0tLS0KIC4uLi93YXNtL2pzL1dlYkFzc2Vt
Ymx5UHJvdG90eXBlLmNwcCAgICAgICAgICAgICAgIHwgMTIgKysrLS0tLQogLi4uL3dhc20vanMv
V2ViQXNzZW1ibHlUYWJsZUNvbnN0cnVjdG9yLmNwcCAgICAgICAgfCAgNiArKy0tCiAxMyBmaWxl
cyBjaGFuZ2VkLCA5MyBpbnNlcnRpb25zKCspLCA1MyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L0NoYW5nZUxvZwppbmRleCA3NWJmYjU4Li41ZGY3NzJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VM
b2cKQEAgLTEsMyArMSw0MyBAQAorMjAxNy0wMy0yMiAgSkYgQmFzdGllbiAgPGpmYmFzdGllbkBh
cHBsZS5jb20+CisKKyAgICAgICAgV2ViQXNzZW1ibHk6IG5hbWUgRXhlY1N0YXRlIGNvbnNpc3Rl
bnRseQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY5
OTU0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTm8g
ZnVuY3Rpb25hbCBjaGFuZ2UuCisKKyAgICAgICAgKiB3YXNtL2pzL0pTV2ViQXNzZW1ibHlDb21w
aWxlRXJyb3IuY3BwOgorICAgICAgICAoSlNDOjpKU1dlYkFzc2VtYmx5Q29tcGlsZUVycm9yOjpj
cmVhdGUpOgorICAgICAgICAoSlNDOjpjcmVhdGVKU1dlYkFzc2VtYmx5Q29tcGlsZUVycm9yKToK
KyAgICAgICAgKiB3YXNtL2pzL0pTV2ViQXNzZW1ibHlDb21waWxlRXJyb3IuaDoKKyAgICAgICAg
KEpTQzo6SlNXZWJBc3NlbWJseUNvbXBpbGVFcnJvcjo6Y3JlYXRlKToKKyAgICAgICAgKiB3YXNt
L2pzL0pTV2ViQXNzZW1ibHlMaW5rRXJyb3IuY3BwOgorICAgICAgICAoSlNDOjpKU1dlYkFzc2Vt
Ymx5TGlua0Vycm9yOjpjcmVhdGUpOgorICAgICAgICAoSlNDOjpjcmVhdGVKU1dlYkFzc2VtYmx5
TGlua0Vycm9yKToKKyAgICAgICAgKiB3YXNtL2pzL0pTV2ViQXNzZW1ibHlMaW5rRXJyb3IuaDoK
KyAgICAgICAgKEpTQzo6SlNXZWJBc3NlbWJseUxpbmtFcnJvcjo6Y3JlYXRlKToKKyAgICAgICAg
KiB3YXNtL2pzL0pTV2ViQXNzZW1ibHlSdW50aW1lRXJyb3IuY3BwOgorICAgICAgICAoSlNDOjpK
U1dlYkFzc2VtYmx5UnVudGltZUVycm9yOjpjcmVhdGUpOgorICAgICAgICAqIHdhc20vanMvSlNX
ZWJBc3NlbWJseVJ1bnRpbWVFcnJvci5oOgorICAgICAgICAoSlNDOjpKU1dlYkFzc2VtYmx5UnVu
dGltZUVycm9yOjpjcmVhdGUpOgorICAgICAgICAqIHdhc20vanMvV2ViQXNzZW1ibHlJbnN0YW5j
ZUNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Y2FsbEpTV2ViQXNzZW1ibHlJbnN0YW5j
ZSk6CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJseU1lbW9yeUNvbnN0cnVjdG9yLmNwcDoK
KyAgICAgICAgKEpTQzo6Y2FsbEpTV2ViQXNzZW1ibHlNZW1vcnkpOgorICAgICAgICAqIHdhc20v
anMvV2ViQXNzZW1ibHlNb2R1bGVDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OmNhbGxK
U1dlYkFzc2VtYmx5TW9kdWxlKToKKyAgICAgICAgKEpTQzo6V2ViQXNzZW1ibHlNb2R1bGVDb25z
dHJ1Y3Rvcjo6Y3JlYXRlTW9kdWxlKToKKyAgICAgICAgKiB3YXNtL2pzL1dlYkFzc2VtYmx5TW9k
dWxlUmVjb3JkLmNwcDoKKyAgICAgICAgKEpTQzo6V2ViQXNzZW1ibHlNb2R1bGVSZWNvcmQ6Omxp
bmspOgorICAgICAgICAoSlNDOjpkYXRhU2VnbWVudEZhaWwpOgorICAgICAgICAoSlNDOjpXZWJB
c3NlbWJseU1vZHVsZVJlY29yZDo6ZXZhbHVhdGUpOgorICAgICAgICAqIHdhc20vanMvV2ViQXNz
ZW1ibHlQcm90b3R5cGUuY3BwOgorICAgICAgICAoSlNDOjp3ZWJBc3NlbWJseUZ1bmN0aW9uVmFs
aWRhdGUpOgorICAgICAgICAoSlNDOjp3ZWJBc3NlbWJseUZ1bmN0aW9uQ29tcGlsZSk6CisgICAg
ICAgICogd2FzbS9qcy9XZWJBc3NlbWJseVRhYmxlQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAo
SlNDOjpjYWxsSlNXZWJBc3NlbWJseVRhYmxlKToKKwogMjAxNy0wMy0yMSAgTWFyayBMYW0gIDxt
YXJrLmxhbUBhcHBsZS5jb20+CiAKICAgICAgICAgVGhlIERGRyBJbnRlZ2VyIENoZWNrIENvbWJp
bmluZyBwaGFzZSBzaG91bGQgZm9yY2UgYW4gT1NSIGV4aXQgZm9yIENoZWNrSW5Cb3VuZHMgb24g
YSBuZWdhdGl2ZSBjb25zdGFudCBtaW4gYm91bmQuCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5Q29tcGlsZUVycm9yLmNwcCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTV2ViQXNzZW1ibHlDb21waWxlRXJyb3IuY3BwCmluZGV4
IGU0ODU4ODkuLjYzMWJiYjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNt
L2pzL0pTV2ViQXNzZW1ibHlDb21waWxlRXJyb3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS93YXNtL2pzL0pTV2ViQXNzZW1ibHlDb21waWxlRXJyb3IuY3BwCkBAIC0zMiwxMiArMzIs
MTIgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLUpTV2ViQXNzZW1ibHlDb21waWxlRXJyb3IqIEpT
V2ViQXNzZW1ibHlDb21waWxlRXJyb3I6OmNyZWF0ZShFeGVjU3RhdGUqIHN0YXRlLCBWTSYgdm0s
IFN0cnVjdHVyZSogc3RydWN0dXJlLCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UpCitKU1dlYkFzc2Vt
Ymx5Q29tcGlsZUVycm9yKiBKU1dlYkFzc2VtYmx5Q29tcGlsZUVycm9yOjpjcmVhdGUoRXhlY1N0
YXRlKiBleGVjLCBWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBjb25zdCBTdHJpbmcmIG1l
c3NhZ2UpCiB7CiAgICAgYXV0byogaW5zdGFuY2UgPSBuZXcgKE5vdE51bGwsIGFsbG9jYXRlQ2Vs
bDxKU1dlYkFzc2VtYmx5Q29tcGlsZUVycm9yPih2bS5oZWFwKSkgSlNXZWJBc3NlbWJseUNvbXBp
bGVFcnJvcih2bSwgc3RydWN0dXJlKTsKICAgICBpbnN0YW5jZS0+bV9zb3VyY2VBcHBlbmRlciA9
IGRlZmF1bHRTb3VyY2VBcHBlbmRlcjsKICAgICBib29sIHVzZUN1cnJlbnRGcmFtZSA9IHRydWU7
Ci0gICAgaW5zdGFuY2UtPmZpbmlzaENyZWF0aW9uKHN0YXRlLCB2bSwgbWVzc2FnZSwgdXNlQ3Vy
cmVudEZyYW1lKTsKKyAgICBpbnN0YW5jZS0+ZmluaXNoQ3JlYXRpb24oZXhlYywgdm0sIG1lc3Nh
Z2UsIHVzZUN1cnJlbnRGcmFtZSk7CiAgICAgcmV0dXJuIGluc3RhbmNlOwogfQogCkBAIC00OSwx
MSArNDksMTEgQEAgSlNXZWJBc3NlbWJseUNvbXBpbGVFcnJvcjo6SlNXZWJBc3NlbWJseUNvbXBp
bGVFcnJvcihWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXIKIGNvbnN0IENsYXNzSW5mbyBKU1dl
YkFzc2VtYmx5Q29tcGlsZUVycm9yOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseS5Db21waWxlRXJy
b3IiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV2ViQXNzZW1ibHlD
b21waWxlRXJyb3IpIH07CiAKICAgICAKLUpTT2JqZWN0KiBjcmVhdGVKU1dlYkFzc2VtYmx5Q29t
cGlsZUVycm9yKEV4ZWNTdGF0ZSogc3RhdGUsIFZNJiB2bSwgY29uc3QgU3RyaW5nJiBtZXNzYWdl
KQorSlNPYmplY3QqIGNyZWF0ZUpTV2ViQXNzZW1ibHlDb21waWxlRXJyb3IoRXhlY1N0YXRlKiBl
eGVjLCBWTSYgdm0sIGNvbnN0IFN0cmluZyYgbWVzc2FnZSkKIHsKICAgICBBU1NFUlQoIW1lc3Nh
Z2UuaXNFbXB0eSgpKTsKLSAgICBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0ID0gc3RhdGUt
PmxleGljYWxHbG9iYWxPYmplY3QoKTsKLSAgICByZXR1cm4gSlNXZWJBc3NlbWJseUNvbXBpbGVF
cnJvcjo6Y3JlYXRlKHN0YXRlLCB2bSwgZ2xvYmFsT2JqZWN0LT5XZWJBc3NlbWJseUNvbXBpbGVF
cnJvclN0cnVjdHVyZSgpLCBtZXNzYWdlKTsKKyAgICBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2Jq
ZWN0ID0gZXhlYy0+bGV4aWNhbEdsb2JhbE9iamVjdCgpOworICAgIHJldHVybiBKU1dlYkFzc2Vt
Ymx5Q29tcGlsZUVycm9yOjpjcmVhdGUoZXhlYywgdm0sIGdsb2JhbE9iamVjdC0+V2ViQXNzZW1i
bHlDb21waWxlRXJyb3JTdHJ1Y3R1cmUoKSwgbWVzc2FnZSk7CiB9CiAKIH0gLy8gbmFtZXNwYWNl
IEpTQwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3Nl
bWJseUNvbXBpbGVFcnJvci5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJB
c3NlbWJseUNvbXBpbGVFcnJvci5oCmluZGV4IDA0ZTNmMmEuLmY2Y2Q5ODcgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTV2ViQXNzZW1ibHlDb21waWxlRXJyb3Iu
aAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5Q29tcGls
ZUVycm9yLmgKQEAgLTM2LDkgKzM2LDkgQEAgcHVibGljOgogICAgIHR5cGVkZWYgRXJyb3JJbnN0
YW5jZSBCYXNlOwogCiAgICAgc3RhdGljIEpTV2ViQXNzZW1ibHlDb21waWxlRXJyb3IqIGNyZWF0
ZShFeGVjU3RhdGUqLCBWTSYsIFN0cnVjdHVyZSosIGNvbnN0IFN0cmluZyYpOwotICAgIHN0YXRp
YyBKU1dlYkFzc2VtYmx5Q29tcGlsZUVycm9yKiBjcmVhdGUoRXhlY1N0YXRlKiBzdGF0ZSwgVk0m
IHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNWYWx1ZSBtZXNzYWdlKQorICAgIHN0YXRpYyBK
U1dlYkFzc2VtYmx5Q29tcGlsZUVycm9yKiBjcmVhdGUoRXhlY1N0YXRlKiBleGVjLCBWTSYgdm0s
IFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU1ZhbHVlIG1lc3NhZ2UpCiAgICAgewotICAgICAgICBy
ZXR1cm4gY3JlYXRlKHN0YXRlLCB2bSwgc3RydWN0dXJlLCBtZXNzYWdlLmlzVW5kZWZpbmVkKCkg
PyBTdHJpbmcoKSA6IG1lc3NhZ2UudG9XVEZTdHJpbmcoc3RhdGUpKTsKKyAgICAgICAgcmV0dXJu
IGNyZWF0ZShleGVjLCB2bSwgc3RydWN0dXJlLCBtZXNzYWdlLmlzVW5kZWZpbmVkKCkgPyBTdHJp
bmcoKSA6IG1lc3NhZ2UudG9XVEZTdHJpbmcoZXhlYykpOwogICAgIH0KIAogICAgIERFQ0xBUkVf
SU5GTzsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTV2ViQXNz
ZW1ibHlMaW5rRXJyb3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJB
c3NlbWJseUxpbmtFcnJvci5jcHAKaW5kZXggZWY1MmZlOC4uOTI3OTg1OCAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseUxpbmtFcnJvci5jcHAK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseUxpbmtFcnJv
ci5jcHAKQEAgLTMyLDEyICszMiwxMiBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotSlNXZWJBc3Nl
bWJseUxpbmtFcnJvciogSlNXZWJBc3NlbWJseUxpbmtFcnJvcjo6Y3JlYXRlKEV4ZWNTdGF0ZSog
c3RhdGUsIFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIGNvbnN0IFN0cmluZyYgbWVzc2Fn
ZSkKK0pTV2ViQXNzZW1ibHlMaW5rRXJyb3IqIEpTV2ViQXNzZW1ibHlMaW5rRXJyb3I6OmNyZWF0
ZShFeGVjU3RhdGUqIGV4ZWMsIFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIGNvbnN0IFN0
cmluZyYgbWVzc2FnZSkKIHsKICAgICBhdXRvKiBpbnN0YW5jZSA9IG5ldyAoTm90TnVsbCwgYWxs
b2NhdGVDZWxsPEpTV2ViQXNzZW1ibHlMaW5rRXJyb3I+KHZtLmhlYXApKSBKU1dlYkFzc2VtYmx5
TGlua0Vycm9yKHZtLCBzdHJ1Y3R1cmUpOwogICAgIGluc3RhbmNlLT5tX3NvdXJjZUFwcGVuZGVy
ID0gZGVmYXVsdFNvdXJjZUFwcGVuZGVyOwogICAgIGJvb2wgdXNlQ3VycmVudEZyYW1lID0gdHJ1
ZTsKLSAgICBpbnN0YW5jZS0+ZmluaXNoQ3JlYXRpb24oc3RhdGUsIHZtLCBtZXNzYWdlLCB1c2VD
dXJyZW50RnJhbWUpOworICAgIGluc3RhbmNlLT5maW5pc2hDcmVhdGlvbihleGVjLCB2bSwgbWVz
c2FnZSwgdXNlQ3VycmVudEZyYW1lKTsKICAgICByZXR1cm4gaW5zdGFuY2U7CiB9CiAKQEAgLTQ5
LDExICs0OSwxMSBAQCBKU1dlYkFzc2VtYmx5TGlua0Vycm9yOjpKU1dlYkFzc2VtYmx5TGlua0Vy
cm9yKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiBjb25zdCBDbGFzc0luZm8gSlNXZWJB
c3NlbWJseUxpbmtFcnJvcjo6c19pbmZvID0geyAiV2ViQXNzZW1ibHkuTGlua0Vycm9yIiwgJkJh
c2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dlYkFzc2VtYmx5TGlua0Vycm9y
KSB9OwogCiAgICAgCi1KU09iamVjdCogY3JlYXRlSlNXZWJBc3NlbWJseUxpbmtFcnJvcihFeGVj
U3RhdGUqIHN0YXRlLCBWTSYgdm0sIGNvbnN0IFN0cmluZyYgbWVzc2FnZSkKK0pTT2JqZWN0KiBj
cmVhdGVKU1dlYkFzc2VtYmx5TGlua0Vycm9yKEV4ZWNTdGF0ZSogZXhlYywgVk0mIHZtLCBjb25z
dCBTdHJpbmcmIG1lc3NhZ2UpCiB7CiAgICAgQVNTRVJUKCFtZXNzYWdlLmlzRW1wdHkoKSk7Ci0g
ICAgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCA9IHN0YXRlLT5sZXhpY2FsR2xvYmFsT2Jq
ZWN0KCk7Ci0gICAgcmV0dXJuIEpTV2ViQXNzZW1ibHlMaW5rRXJyb3I6OmNyZWF0ZShzdGF0ZSwg
dm0sIGdsb2JhbE9iamVjdC0+V2ViQXNzZW1ibHlMaW5rRXJyb3JTdHJ1Y3R1cmUoKSwgbWVzc2Fn
ZSk7CisgICAgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCA9IGV4ZWMtPmxleGljYWxHbG9i
YWxPYmplY3QoKTsKKyAgICByZXR1cm4gSlNXZWJBc3NlbWJseUxpbmtFcnJvcjo6Y3JlYXRlKGV4
ZWMsIHZtLCBnbG9iYWxPYmplY3QtPldlYkFzc2VtYmx5TGlua0Vycm9yU3RydWN0dXJlKCksIG1l
c3NhZ2UpOwogfQogCiB9IC8vIG5hbWVzcGFjZSBKU0MKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS93YXNtL2pzL0pTV2ViQXNzZW1ibHlMaW5rRXJyb3IuaCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS93YXNtL2pzL0pTV2ViQXNzZW1ibHlMaW5rRXJyb3IuaAppbmRleCBmMjY1MWVi
Li40MTcyZTY0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dl
YkFzc2VtYmx5TGlua0Vycm9yLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMv
SlNXZWJBc3NlbWJseUxpbmtFcnJvci5oCkBAIC0zNiw5ICszNiw5IEBAIHB1YmxpYzoKICAgICB0
eXBlZGVmIEVycm9ySW5zdGFuY2UgQmFzZTsKIAogICAgIHN0YXRpYyBKU1dlYkFzc2VtYmx5TGlu
a0Vycm9yKiBjcmVhdGUoRXhlY1N0YXRlKiwgVk0mLCBTdHJ1Y3R1cmUqLCBjb25zdCBTdHJpbmcm
KTsKLSAgICBzdGF0aWMgSlNXZWJBc3NlbWJseUxpbmtFcnJvciogY3JlYXRlKEV4ZWNTdGF0ZSog
c3RhdGUsIFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTVmFsdWUgbWVzc2FnZSkKKyAg
ICBzdGF0aWMgSlNXZWJBc3NlbWJseUxpbmtFcnJvciogY3JlYXRlKEV4ZWNTdGF0ZSogZXhlYywg
Vk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNWYWx1ZSBtZXNzYWdlKQogICAgIHsKLSAg
ICAgICAgcmV0dXJuIGNyZWF0ZShzdGF0ZSwgdm0sIHN0cnVjdHVyZSwgbWVzc2FnZS5pc1VuZGVm
aW5lZCgpID8gU3RyaW5nKCkgOiBtZXNzYWdlLnRvV1RGU3RyaW5nKHN0YXRlKSk7CisgICAgICAg
IHJldHVybiBjcmVhdGUoZXhlYywgdm0sIHN0cnVjdHVyZSwgbWVzc2FnZS5pc1VuZGVmaW5lZCgp
ID8gU3RyaW5nKCkgOiBtZXNzYWdlLnRvV1RGU3RyaW5nKGV4ZWMpKTsKICAgICB9CiAKICAgICBE
RUNMQVJFX0lORk87CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9K
U1dlYkFzc2VtYmx5UnVudGltZUVycm9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNt
L2pzL0pTV2ViQXNzZW1ibHlSdW50aW1lRXJyb3IuY3BwCmluZGV4IGUyMTJhMzcuLjVjYmJjMGYw
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5
UnVudGltZUVycm9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dl
YkFzc2VtYmx5UnVudGltZUVycm9yLmNwcApAQCAtMzIsMTIgKzMyLDEyIEBACiAKIG5hbWVzcGFj
ZSBKU0MgewogCi1KU1dlYkFzc2VtYmx5UnVudGltZUVycm9yKiBKU1dlYkFzc2VtYmx5UnVudGlt
ZUVycm9yOjpjcmVhdGUoRXhlY1N0YXRlKiBzdGF0ZSwgVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVj
dHVyZSwgY29uc3QgU3RyaW5nJiBtZXNzYWdlKQorSlNXZWJBc3NlbWJseVJ1bnRpbWVFcnJvciog
SlNXZWJBc3NlbWJseVJ1bnRpbWVFcnJvcjo6Y3JlYXRlKEV4ZWNTdGF0ZSogZXhlYywgVk0mIHZt
LCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgY29uc3QgU3RyaW5nJiBtZXNzYWdlKQogewogICAgIGF1
dG8qIGluc3RhbmNlID0gbmV3IChOb3ROdWxsLCBhbGxvY2F0ZUNlbGw8SlNXZWJBc3NlbWJseVJ1
bnRpbWVFcnJvcj4odm0uaGVhcCkpIEpTV2ViQXNzZW1ibHlSdW50aW1lRXJyb3Iodm0sIHN0cnVj
dHVyZSk7CiAgICAgaW5zdGFuY2UtPm1fc291cmNlQXBwZW5kZXIgPSBkZWZhdWx0U291cmNlQXBw
ZW5kZXI7CiAgICAgYm9vbCB1c2VDdXJyZW50RnJhbWUgPSB0cnVlOwotICAgIGluc3RhbmNlLT5m
aW5pc2hDcmVhdGlvbihzdGF0ZSwgdm0sIG1lc3NhZ2UsIHVzZUN1cnJlbnRGcmFtZSk7CisgICAg
aW5zdGFuY2UtPmZpbmlzaENyZWF0aW9uKGV4ZWMsIHZtLCBtZXNzYWdlLCB1c2VDdXJyZW50RnJh
bWUpOwogICAgIHJldHVybiBpbnN0YW5jZTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseVJ1bnRpbWVFcnJvci5oIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseVJ1bnRpbWVFcnJvci5oCmluZGV4IDVh
YzYzMGQuLjIyYTllN2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pz
L0pTV2ViQXNzZW1ibHlSdW50aW1lRXJyb3IuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
d2FzbS9qcy9KU1dlYkFzc2VtYmx5UnVudGltZUVycm9yLmgKQEAgLTM2LDkgKzM2LDkgQEAgcHVi
bGljOgogICAgIHR5cGVkZWYgRXJyb3JJbnN0YW5jZSBCYXNlOwogCiAgICAgc3RhdGljIEpTV2Vi
QXNzZW1ibHlSdW50aW1lRXJyb3IqIGNyZWF0ZShFeGVjU3RhdGUqLCBWTSYsIFN0cnVjdHVyZSos
IGNvbnN0IFN0cmluZyYpOwotICAgIHN0YXRpYyBKU1dlYkFzc2VtYmx5UnVudGltZUVycm9yKiBj
cmVhdGUoRXhlY1N0YXRlKiBzdGF0ZSwgVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNW
YWx1ZSBtZXNzYWdlKQorICAgIHN0YXRpYyBKU1dlYkFzc2VtYmx5UnVudGltZUVycm9yKiBjcmVh
dGUoRXhlY1N0YXRlKiBleGVjLCBWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU1ZhbHVl
IG1lc3NhZ2UpCiAgICAgewotICAgICAgICByZXR1cm4gY3JlYXRlKHN0YXRlLCB2bSwgc3RydWN0
dXJlLCBtZXNzYWdlLmlzVW5kZWZpbmVkKCkgPyBTdHJpbmcoKSA6IG1lc3NhZ2UudG9XVEZTdHJp
bmcoc3RhdGUpKTsKKyAgICAgICAgcmV0dXJuIGNyZWF0ZShleGVjLCB2bSwgc3RydWN0dXJlLCBt
ZXNzYWdlLmlzVW5kZWZpbmVkKCkgPyBTdHJpbmcoKSA6IG1lc3NhZ2UudG9XVEZTdHJpbmcoZXhl
YykpOwogICAgIH0KIAogICAgIERFQ0xBUkVfSU5GTzsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5SW5zdGFuY2VDb25zdHJ1Y3Rvci5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUluc3RhbmNlQ29uc3RydWN0
b3IuY3BwCmluZGV4IDdmMDczMDUuLmFjMzE4MWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5SW5zdGFuY2VDb25zdHJ1Y3Rvci5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlJbnN0YW5jZUNvbnN0cnVj
dG9yLmNwcApAQCAtMzE5LDExICszMTksMTEgQEAgSlNXZWJBc3NlbWJseUluc3RhbmNlKiBXZWJB
c3NlbWJseUluc3RhbmNlQ29uc3RydWN0b3I6OmNyZWF0ZUluc3RhbmNlKEV4ZWNTdGF0ZSoKICAg
ICByZXR1cm4gaW5zdGFuY2U7CiB9CiAKLXN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9D
QUxMIGNhbGxKU1dlYkFzc2VtYmx5SW5zdGFuY2UoRXhlY1N0YXRlKiBzdGF0ZSkKK3N0YXRpYyBF
bmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNhbGxKU1dlYkFzc2VtYmx5SW5zdGFuY2UoRXhl
Y1N0YXRlKiBleGVjKQogewotICAgIFZNJiB2bSA9IHN0YXRlLT52bSgpOworICAgIFZNJiB2bSA9
IGV4ZWMtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwot
ICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUodGhyb3dDb25zdHJ1Y3RvckNhbm5vdEJlQ2FsbGVk
QXNGdW5jdGlvblR5cGVFcnJvcihzdGF0ZSwgc2NvcGUsICJXZWJBc3NlbWJseS5JbnN0YW5jZSIp
KTsKKyAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHRocm93Q29uc3RydWN0b3JDYW5ub3RCZUNh
bGxlZEFzRnVuY3Rpb25UeXBlRXJyb3IoZXhlYywgc2NvcGUsICJXZWJBc3NlbWJseS5JbnN0YW5j
ZSIpKTsKIH0KIAogV2ViQXNzZW1ibHlJbnN0YW5jZUNvbnN0cnVjdG9yKiBXZWJBc3NlbWJseUlu
c3RhbmNlQ29uc3RydWN0b3I6OmNyZWF0ZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBX
ZWJBc3NlbWJseUluc3RhbmNlUHJvdG90eXBlKiB0aGlzUHJvdG90eXBlKQpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlNZW1vcnlDb25zdHJ1Y3Rv
ci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseU1lbW9yeUNv
bnN0cnVjdG9yLmNwcAppbmRleCA1MTEyOWUzLi5jZmU4YjlmIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseU1lbW9yeUNvbnN0cnVjdG9yLmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseU1lbW9yeUNvbnN0
cnVjdG9yLmNwcApAQCAtMTAzLDExICsxMDMsMTEgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpT
Q19IT1NUX0NBTEwgY29uc3RydWN0SlNXZWJBc3NlbWJseU1lbW9yeShFeGVjU3RhdGUqIGV4ZWMK
ICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKEpTV2ViQXNzZW1ibHlNZW1vcnk6OmNyZWF0ZSh2
bSwgZXhlYy0+bGV4aWNhbEdsb2JhbE9iamVjdCgpLT5XZWJBc3NlbWJseU1lbW9yeVN0cnVjdHVy
ZSgpLCBhZG9wdFJlZigqbWVtb3J5LmxlYWtSZWYoKSkpKTsKIH0KIAotc3RhdGljIEVuY29kZWRK
U1ZhbHVlIEpTQ19IT1NUX0NBTEwgY2FsbEpTV2ViQXNzZW1ibHlNZW1vcnkoRXhlY1N0YXRlKiBz
dGF0ZSkKK3N0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNhbGxKU1dlYkFzc2Vt
Ymx5TWVtb3J5KEV4ZWNTdGF0ZSogZXhlYykKIHsKLSAgICBWTSYgdm0gPSBzdGF0ZS0+dm0oKTsK
KyAgICBWTSYgdm0gPSBleGVjLT52bSgpOwogICAgIGF1dG8gdGhyb3dTY29wZSA9IERFQ0xBUkVf
VEhST1dfU0NPUEUodm0pOwotICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUodGhyb3dDb25zdHJ1
Y3RvckNhbm5vdEJlQ2FsbGVkQXNGdW5jdGlvblR5cGVFcnJvcihzdGF0ZSwgdGhyb3dTY29wZSwg
IldlYkFzc2VtYmx5Lk1lbW9yeSIpKTsKKyAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHRocm93
Q29uc3RydWN0b3JDYW5ub3RCZUNhbGxlZEFzRnVuY3Rpb25UeXBlRXJyb3IoZXhlYywgdGhyb3dT
Y29wZSwgIldlYkFzc2VtYmx5Lk1lbW9yeSIpKTsKIH0KIAogV2ViQXNzZW1ibHlNZW1vcnlDb25z
dHJ1Y3RvciogV2ViQXNzZW1ibHlNZW1vcnlDb25zdHJ1Y3Rvcjo6Y3JlYXRlKFZNJiB2bSwgU3Ry
dWN0dXJlKiBzdHJ1Y3R1cmUsIFdlYkFzc2VtYmx5TWVtb3J5UHJvdG90eXBlKiB0aGlzUHJvdG90
eXBlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1i
bHlNb2R1bGVDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9X
ZWJBc3NlbWJseU1vZHVsZUNvbnN0cnVjdG9yLmNwcAppbmRleCBjNDViYzNmLi41OTcwOWY1IDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseU1vZHVs
ZUNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJB
c3NlbWJseU1vZHVsZUNvbnN0cnVjdG9yLmNwcApAQCAtNjMsMjUgKzYzLDI1IEBAIHN0YXRpYyBF
bmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnN0cnVjdEpTV2ViQXNzZW1ibHlNb2R1bGUo
RXhlY1N0YXRlKiBleGVjCiAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShXZWJBc3NlbWJseU1v
ZHVsZUNvbnN0cnVjdG9yOjpjcmVhdGVNb2R1bGUoZXhlYywgZXhlYy0+YXJndW1lbnQoMCksIHN0
cnVjdHVyZSkpOwogfQogCi1zdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjYWxs
SlNXZWJBc3NlbWJseU1vZHVsZShFeGVjU3RhdGUqIHN0YXRlKQorc3RhdGljIEVuY29kZWRKU1Zh
bHVlIEpTQ19IT1NUX0NBTEwgY2FsbEpTV2ViQXNzZW1ibHlNb2R1bGUoRXhlY1N0YXRlKiBleGVj
KQogewotICAgIFZNJiB2bSA9IHN0YXRlLT52bSgpOworICAgIFZNJiB2bSA9IGV4ZWMtPnZtKCk7
CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwotICAgIHJldHVybiBK
U1ZhbHVlOjplbmNvZGUodGhyb3dDb25zdHJ1Y3RvckNhbm5vdEJlQ2FsbGVkQXNGdW5jdGlvblR5
cGVFcnJvcihzdGF0ZSwgc2NvcGUsICJXZWJBc3NlbWJseS5Nb2R1bGUiKSk7CisgICAgcmV0dXJu
IEpTVmFsdWU6OmVuY29kZSh0aHJvd0NvbnN0cnVjdG9yQ2Fubm90QmVDYWxsZWRBc0Z1bmN0aW9u
VHlwZUVycm9yKGV4ZWMsIHNjb3BlLCAiV2ViQXNzZW1ibHkuTW9kdWxlIikpOwogfQogCi1KU1Zh
bHVlIFdlYkFzc2VtYmx5TW9kdWxlQ29uc3RydWN0b3I6OmNyZWF0ZU1vZHVsZShFeGVjU3RhdGUq
IHN0YXRlLCBKU1ZhbHVlIGJ1ZmZlciwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCitKU1ZhbHVlIFdl
YkFzc2VtYmx5TW9kdWxlQ29uc3RydWN0b3I6OmNyZWF0ZU1vZHVsZShFeGVjU3RhdGUqIGV4ZWMs
IEpTVmFsdWUgYnVmZmVyLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKIHsKLSAgICBWTSYgdm0gPSBz
dGF0ZS0+dm0oKTsKKyAgICBWTSYgdm0gPSBleGVjLT52bSgpOwogICAgIGF1dG8gc2NvcGUgPSBE
RUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKIAogICAgIHNpemVfdCBieXRlT2Zmc2V0OwogICAgIHNp
emVfdCBieXRlU2l6ZTsKLSAgICB1aW50OF90KiBiYXNlID0gZ2V0V2FzbUJ1ZmZlckZyb21WYWx1
ZShzdGF0ZSwgYnVmZmVyLCBieXRlT2Zmc2V0LCBieXRlU2l6ZSk7CisgICAgdWludDhfdCogYmFz
ZSA9IGdldFdhc21CdWZmZXJGcm9tVmFsdWUoZXhlYywgYnVmZmVyLCBieXRlT2Zmc2V0LCBieXRl
U2l6ZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgeyB9KTsKIAogICAgIHNjb3Bl
LnJlbGVhc2UoKTsKLSAgICByZXR1cm4gSlNXZWJBc3NlbWJseU1vZHVsZTo6Y3JlYXRlKHZtLCBz
dGF0ZSwgc3RydWN0dXJlLCBiYXNlICsgYnl0ZU9mZnNldCwgYnl0ZVNpemUpOworICAgIHJldHVy
biBKU1dlYkFzc2VtYmx5TW9kdWxlOjpjcmVhdGUodm0sIGV4ZWMsIHN0cnVjdHVyZSwgYmFzZSAr
IGJ5dGVPZmZzZXQsIGJ5dGVTaXplKTsKIH0KIAogV2ViQXNzZW1ibHlNb2R1bGVDb25zdHJ1Y3Rv
ciogV2ViQXNzZW1ibHlNb2R1bGVDb25zdHJ1Y3Rvcjo6Y3JlYXRlKFZNJiB2bSwgU3RydWN0dXJl
KiBzdHJ1Y3R1cmUsIFdlYkFzc2VtYmx5TW9kdWxlUHJvdG90eXBlKiB0aGlzUHJvdG90eXBlKQpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlNb2R1
bGVSZWNvcmQuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlN
b2R1bGVSZWNvcmQuY3BwCmluZGV4IDVmOWJmMmMuLmZmZmVlNWMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5TW9kdWxlUmVjb3JkLmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseU1vZHVsZVJlY29yZC5j
cHAKQEAgLTg1LDEyICs4NSwxMiBAQCB2b2lkIFdlYkFzc2VtYmx5TW9kdWxlUmVjb3JkOjp2aXNp
dENoaWxkcmVuKEpTQ2VsbCogY2VsbCwgU2xvdFZpc2l0b3ImIHZpc2l0b3IpCiAgICAgdmlzaXRv
ci5hcHBlbmQodGhpc09iamVjdC0+bV9zdGFydEZ1bmN0aW9uKTsKIH0KIAotdm9pZCBXZWJBc3Nl
bWJseU1vZHVsZVJlY29yZDo6bGluayhFeGVjU3RhdGUqIHN0YXRlLCBKU1dlYkFzc2VtYmx5SW5z
dGFuY2UqIGluc3RhbmNlKQordm9pZCBXZWJBc3NlbWJseU1vZHVsZVJlY29yZDo6bGluayhFeGVj
U3RhdGUqIGV4ZWMsIEpTV2ViQXNzZW1ibHlJbnN0YW5jZSogaW5zdGFuY2UpCiB7Ci0gICAgVk0m
IHZtID0gc3RhdGUtPnZtKCk7CisgICAgVk0mIHZtID0gZXhlYy0+dm0oKTsKICAgICBhdXRvIHNj
b3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAgICAgVU5VU0VEX1BBUkFNKHNjb3BlKTsK
LSAgICBhdXRvKiBnbG9iYWxPYmplY3QgPSBzdGF0ZS0+bGV4aWNhbEdsb2JhbE9iamVjdCgpOwor
ICAgIGF1dG8qIGdsb2JhbE9iamVjdCA9IGV4ZWMtPmxleGljYWxHbG9iYWxPYmplY3QoKTsKIAog
ICAgIEpTV2ViQXNzZW1ibHlNb2R1bGUqIG1vZHVsZSA9IGluc3RhbmNlLT5tb2R1bGUoKTsKICAg
ICBKU1dlYkFzc2VtYmx5Q29kZUJsb2NrKiBjb2RlQmxvY2sgPSBpbnN0YW5jZS0+Y29kZUJsb2Nr
KCk7CkBAIC0xNTgsNyArMTU4LDcgQEAgdm9pZCBXZWJBc3NlbWJseU1vZHVsZVJlY29yZDo6bGlu
ayhFeGVjU3RhdGUqIHN0YXRlLCBKU1dlYkFzc2VtYmx5SW5zdGFuY2UqIGluc3QKICAgICAgICAg
ICAgICAgICBicmVhazsKIAogICAgICAgICAgICAgY2FzZSBXYXNtOjpJNjQ6Ci0gICAgICAgICAg
ICAgICAgdGhyb3dFeGNlcHRpb24oc3RhdGUsIHNjb3BlLCBjcmVhdGVKU1dlYkFzc2VtYmx5TGlu
a0Vycm9yKHN0YXRlLCB2bSwgQVNDSUlMaXRlcmFsKCJleHBvcnRlZCBnbG9iYWwgY2Fubm90IGJl
IGFuIGk2NCIpKSk7CisgICAgICAgICAgICAgICAgdGhyb3dFeGNlcHRpb24oZXhlYywgc2NvcGUs
IGNyZWF0ZUpTV2ViQXNzZW1ibHlMaW5rRXJyb3IoZXhlYywgdm0sIEFTQ0lJTGl0ZXJhbCgiZXhw
b3J0ZWQgZ2xvYmFsIGNhbm5vdCBiZSBhbiBpNjQiKSkpOwogICAgICAgICAgICAgICAgIHJldHVy
bjsKIAogICAgICAgICAgICAgY2FzZSBXYXNtOjpGMzI6CkBAIC0xNzksNyArMTc5LDcgQEAgdm9p
ZCBXZWJBc3NlbWJseU1vZHVsZVJlY29yZDo6bGluayhFeGVjU3RhdGUqIHN0YXRlLCBKU1dlYkFz
c2VtYmx5SW5zdGFuY2UqIGluc3QKICAgICAgICAgYm9vbCBzaG91bGRUaHJvd1JlYWRPbmx5RXJy
b3IgPSBmYWxzZTsKICAgICAgICAgYm9vbCBpZ25vcmVSZWFkT25seUVycm9ycyA9IHRydWU7CiAg
ICAgICAgIGJvb2wgcHV0UmVzdWx0ID0gZmFsc2U7Ci0gICAgICAgIHN5bWJvbFRhYmxlUHV0VG91
Y2hXYXRjaHBvaW50U2V0KG1vZHVsZUVudmlyb25tZW50LCBzdGF0ZSwgZXhwLmZpZWxkLCBleHBv
cnRlZFZhbHVlLCBzaG91bGRUaHJvd1JlYWRPbmx5RXJyb3IsIGlnbm9yZVJlYWRPbmx5RXJyb3Jz
LCBwdXRSZXN1bHQpOworICAgICAgICBzeW1ib2xUYWJsZVB1dFRvdWNoV2F0Y2hwb2ludFNldCht
b2R1bGVFbnZpcm9ubWVudCwgZXhlYywgZXhwLmZpZWxkLCBleHBvcnRlZFZhbHVlLCBzaG91bGRU
aHJvd1JlYWRPbmx5RXJyb3IsIGlnbm9yZVJlYWRPbmx5RXJyb3JzLCBwdXRSZXN1bHQpOwogICAg
ICAgICBSRUxFQVNFX0FTU0VSVChwdXRSZXN1bHQpOwogICAgIH0KIApAQCAtMjA4LDE0ICsyMDgs
MTQgQEAgdm9pZCBXZWJBc3NlbWJseU1vZHVsZVJlY29yZDo6bGluayhFeGVjU3RhdGUqIHN0YXRl
LCBKU1dlYkFzc2VtYmx5SW5zdGFuY2UqIGluc3QKIH0KIAogdGVtcGxhdGUgPHR5cGVuYW1lIFNj
b3BlLCB0eXBlbmFtZSBNLCB0eXBlbmFtZSBOLCB0eXBlbmFtZSAuLi5BcmdzPgotTkVWRVJfSU5M
SU5FIHN0YXRpYyBKU1ZhbHVlIGRhdGFTZWdtZW50RmFpbChFeGVjU3RhdGUqIHN0YXRlLCBWTSYg
dm0sIFNjb3BlJiBzY29wZSwgTSBtZW1vcnlTaXplLCBOIHNlZ21lbnRTaXplLCBOIG9mZnNldCwg
QXJncy4uLiBhcmdzKQorTkVWRVJfSU5MSU5FIHN0YXRpYyBKU1ZhbHVlIGRhdGFTZWdtZW50RmFp
bChFeGVjU3RhdGUqIGV4ZWMsIFZNJiB2bSwgU2NvcGUmIHNjb3BlLCBNIG1lbW9yeVNpemUsIE4g
c2VnbWVudFNpemUsIE4gb2Zmc2V0LCBBcmdzLi4uIGFyZ3MpCiB7Ci0gICAgcmV0dXJuIHRocm93
RXhjZXB0aW9uKHN0YXRlLCBzY29wZSwgY3JlYXRlSlNXZWJBc3NlbWJseUxpbmtFcnJvcihzdGF0
ZSwgdm0sIG1ha2VTdHJpbmcoQVNDSUlMaXRlcmFsKCJJbnZhbGlkIGRhdGEgc2VnbWVudCBpbml0
aWFsaXphdGlvbjogc2VnbWVudCBvZiAiKSwgU3RyaW5nOjpudW1iZXIoc2VnbWVudFNpemUpLCBB
U0NJSUxpdGVyYWwoIiBieXRlcyBtZW1vcnkgb2YgIiksIFN0cmluZzo6bnVtYmVyKG1lbW9yeVNp
emUpLCBBU0NJSUxpdGVyYWwoIiBieXRlcywgYXQgb2Zmc2V0ICIpLCBTdHJpbmc6Om51bWJlcihv
ZmZzZXQpLCBhcmdzLi4uKSkpOworICAgIHJldHVybiB0aHJvd0V4Y2VwdGlvbihleGVjLCBzY29w
ZSwgY3JlYXRlSlNXZWJBc3NlbWJseUxpbmtFcnJvcihleGVjLCB2bSwgbWFrZVN0cmluZyhBU0NJ
SUxpdGVyYWwoIkludmFsaWQgZGF0YSBzZWdtZW50IGluaXRpYWxpemF0aW9uOiBzZWdtZW50IG9m
ICIpLCBTdHJpbmc6Om51bWJlcihzZWdtZW50U2l6ZSksIEFTQ0lJTGl0ZXJhbCgiIGJ5dGVzIG1l
bW9yeSBvZiAiKSwgU3RyaW5nOjpudW1iZXIobWVtb3J5U2l6ZSksIEFTQ0lJTGl0ZXJhbCgiIGJ5
dGVzLCBhdCBvZmZzZXQgIiksIFN0cmluZzo6bnVtYmVyKG9mZnNldCksIGFyZ3MuLi4pKSk7CiB9
CiAKLUpTVmFsdWUgV2ViQXNzZW1ibHlNb2R1bGVSZWNvcmQ6OmV2YWx1YXRlKEV4ZWNTdGF0ZSog
c3RhdGUpCitKU1ZhbHVlIFdlYkFzc2VtYmx5TW9kdWxlUmVjb3JkOjpldmFsdWF0ZShFeGVjU3Rh
dGUqIGV4ZWMpCiB7Ci0gICAgVk0mIHZtID0gc3RhdGUtPnZtKCk7CisgICAgVk0mIHZtID0gZXhl
Yy0+dm0oKTsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAKICAg
ICB7CkBAIC0yNDEsNyArMjQxLDcgQEAgSlNWYWx1ZSBXZWJBc3NlbWJseU1vZHVsZVJlY29yZDo6
ZXZhbHVhdGUoRXhlY1N0YXRlKiBzdGF0ZSkKIAogICAgICAgICAgICAgdWludDY0X3QgbGFzdFdy
aXR0ZW5JbmRleCA9IHN0YXRpY19jYXN0PHVpbnQ2NF90Pih0YWJsZUluZGV4KSArIHN0YXRpY19j
YXN0PHVpbnQ2NF90PihlbGVtZW50LmZ1bmN0aW9uSW5kaWNlcy5zaXplKCkpIC0gMTsKICAgICAg
ICAgICAgIGlmIChsYXN0V3JpdHRlbkluZGV4ID49IHRhYmxlLT5zaXplKCkpCi0gICAgICAgICAg
ICAgICAgcmV0dXJuIHRocm93RXhjZXB0aW9uKHN0YXRlLCBzY29wZSwgY3JlYXRlSlNXZWJBc3Nl
bWJseUxpbmtFcnJvcihzdGF0ZSwgdm0sIEFTQ0lJTGl0ZXJhbCgiRWxlbWVudCBpcyB0cnlpbmcg
dG8gc2V0IGFuIG91dCBvZiBib3VuZHMgdGFibGUgaW5kZXgiKSkpOworICAgICAgICAgICAgICAg
IHJldHVybiB0aHJvd0V4Y2VwdGlvbihleGVjLCBzY29wZSwgY3JlYXRlSlNXZWJBc3NlbWJseUxp
bmtFcnJvcihleGVjLCB2bSwgQVNDSUlMaXRlcmFsKCJFbGVtZW50IGlzIHRyeWluZyB0byBzZXQg
YW4gb3V0IG9mIGJvdW5kcyB0YWJsZSBpbmRleCIpKSk7CiAKICAgICAgICAgICAgIGZvciAodWlu
dDMyX3QgaSA9IDA7IGkgPCBlbGVtZW50LmZ1bmN0aW9uSW5kaWNlcy5zaXplKCk7ICsraSkgewog
ICAgICAgICAgICAgICAgIC8vIEZJWE1FOiBUaGlzIGVzc2VudGlhbGx5IG1lYW5zIHdlJ3JlIGV4
cG9ydGluZyBhbiBpbXBvcnQuCkBAIC0zMDAsOSArMzAwLDkgQEAgSlNWYWx1ZSBXZWJBc3NlbWJs
eU1vZHVsZVJlY29yZDo6ZXZhbHVhdGUoRXhlY1N0YXRlKiBzdGF0ZSkKICAgICAgICAgICAgICAg
ICAgICAgICAgIG9mZnNldCA9IHNlZ21lbnQtPm9mZnNldC5jb25zdFZhbHVlKCk7CiAKICAgICAg
ICAgICAgICAgICAgICAgaWYgKFVOTElLRUxZKHNpemVJbkJ5dGVzIDwgc2VnbWVudC0+c2l6ZUlu
Qnl0ZXMpKQotICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGRhdGFTZWdtZW50RmFpbChz
dGF0ZSwgdm0sIHNjb3BlLCBzaXplSW5CeXRlcywgc2VnbWVudC0+c2l6ZUluQnl0ZXMsIG9mZnNl
dCwgQVNDSUlMaXRlcmFsKCIsIHNlZ21lbnQgaXMgdG9vIGJpZyIpKTsKKyAgICAgICAgICAgICAg
ICAgICAgICAgIHJldHVybiBkYXRhU2VnbWVudEZhaWwoZXhlYywgdm0sIHNjb3BlLCBzaXplSW5C
eXRlcywgc2VnbWVudC0+c2l6ZUluQnl0ZXMsIG9mZnNldCwgQVNDSUlMaXRlcmFsKCIsIHNlZ21l
bnQgaXMgdG9vIGJpZyIpKTsKICAgICAgICAgICAgICAgICAgICAgaWYgKFVOTElLRUxZKG9mZnNl
dCA+IHNpemVJbkJ5dGVzIC0gc2VnbWVudC0+c2l6ZUluQnl0ZXMpKQotICAgICAgICAgICAgICAg
ICAgICAgICAgcmV0dXJuIGRhdGFTZWdtZW50RmFpbChzdGF0ZSwgdm0sIHNjb3BlLCBzaXplSW5C
eXRlcywgc2VnbWVudC0+c2l6ZUluQnl0ZXMsIG9mZnNldCwgQVNDSUlMaXRlcmFsKCIsIHNlZ21l
bnQgd3JpdGVzIG91dHNpZGUgb2YgbWVtb3J5IikpOworICAgICAgICAgICAgICAgICAgICAgICAg
cmV0dXJuIGRhdGFTZWdtZW50RmFpbChleGVjLCB2bSwgc2NvcGUsIHNpemVJbkJ5dGVzLCBzZWdt
ZW50LT5zaXplSW5CeXRlcywgb2Zmc2V0LCBBU0NJSUxpdGVyYWwoIiwgc2VnbWVudCB3cml0ZXMg
b3V0c2lkZSBvZiBtZW1vcnkiKSk7CiAgICAgICAgICAgICAgICAgICAgIFJFTEVBU0VfQVNTRVJU
KG1lbW9yeSk7CiAgICAgICAgICAgICAgICAgICAgIG1lbWNweShtZW1vcnkgKyBvZmZzZXQsICZz
ZWdtZW50LT5ieXRlKDApLCBzZWdtZW50LT5zaXplSW5CeXRlcyk7CiAgICAgICAgICAgICAgICAg
fQpAQCAtMzEzLDcgKzMxMyw3IEBAIEpTVmFsdWUgV2ViQXNzZW1ibHlNb2R1bGVSZWNvcmQ6OmV2
YWx1YXRlKEV4ZWNTdGF0ZSogc3RhdGUpCiAgICAgaWYgKEpTT2JqZWN0KiBzdGFydEZ1bmN0aW9u
ID0gbV9zdGFydEZ1bmN0aW9uLmdldCgpKSB7CiAgICAgICAgIENhbGxEYXRhIGNhbGxEYXRhOwog
ICAgICAgICBDYWxsVHlwZSBjYWxsVHlwZSA9IEpTQzo6Z2V0Q2FsbERhdGEoc3RhcnRGdW5jdGlv
biwgY2FsbERhdGEpOwotICAgICAgICBjYWxsKHN0YXRlLCBzdGFydEZ1bmN0aW9uLCBjYWxsVHlw
ZSwgY2FsbERhdGEsIGpzVW5kZWZpbmVkKCksIHN0YXRlLT5lbXB0eUxpc3QoKSk7CisgICAgICAg
IGNhbGwoZXhlYywgc3RhcnRGdW5jdGlvbiwgY2FsbFR5cGUsIGNhbGxEYXRhLCBqc1VuZGVmaW5l
ZCgpLCBleGVjLT5lbXB0eUxpc3QoKSk7CiAgICAgICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2Nv
cGUsIHsgfSk7CiAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2Fz
bS9qcy9XZWJBc3NlbWJseVByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2Fz
bS9qcy9XZWJBc3NlbWJseVByb3RvdHlwZS5jcHAKaW5kZXggMmQ0ZTAwNC4uMmUxNzk3NyAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlQcm90b3R5
cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5UHJv
dG90eXBlLmNwcApAQCAtMzMsMTggKzMzLDE4IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1zdGF0
aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCB3ZWJBc3NlbWJseUZ1bmN0aW9uVmFsaWRh
dGUoRXhlY1N0YXRlKiBzdGF0ZSkKK3N0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxM
IHdlYkFzc2VtYmx5RnVuY3Rpb25WYWxpZGF0ZShFeGVjU3RhdGUqIGV4ZWMpCiB7Ci0gICAgVk0m
IHZtID0gc3RhdGUtPnZtKCk7CisgICAgVk0mIHZtID0gZXhlYy0+dm0oKTsKICAgICBhdXRvIHNj
b3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7Ci0gICAgcmV0dXJuIEpTVmFsdWU6OmVuY29k
ZSh0aHJvd0V4Y2VwdGlvbihzdGF0ZSwgc2NvcGUsIGNyZWF0ZUVycm9yKHN0YXRlLCBBU0NJSUxp
dGVyYWwoIldlYkFzc2VtYmx5IGRvZXNuJ3QgeWV0IGltcGxlbWVudCB0aGUgdmFsaWRhdGUgZnVu
Y3Rpb24gcHJvcGVydHkiKSkpKTsKKyAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHRocm93RXhj
ZXB0aW9uKGV4ZWMsIHNjb3BlLCBjcmVhdGVFcnJvcihleGVjLCBBU0NJSUxpdGVyYWwoIldlYkFz
c2VtYmx5IGRvZXNuJ3QgeWV0IGltcGxlbWVudCB0aGUgdmFsaWRhdGUgZnVuY3Rpb24gcHJvcGVy
dHkiKSkpKTsKIH0KIAotc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgd2ViQXNz
ZW1ibHlGdW5jdGlvbkNvbXBpbGUoRXhlY1N0YXRlKiBzdGF0ZSkKK3N0YXRpYyBFbmNvZGVkSlNW
YWx1ZSBKU0NfSE9TVF9DQUxMIHdlYkFzc2VtYmx5RnVuY3Rpb25Db21waWxlKEV4ZWNTdGF0ZSog
ZXhlYykKIHsKLSAgICBWTSYgdm0gPSBzdGF0ZS0+dm0oKTsKKyAgICBWTSYgdm0gPSBleGVjLT52
bSgpOwogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKLSAgICByZXR1
cm4gSlNWYWx1ZTo6ZW5jb2RlKHRocm93RXhjZXB0aW9uKHN0YXRlLCBzY29wZSwgY3JlYXRlRXJy
b3Ioc3RhdGUsIEFTQ0lJTGl0ZXJhbCgiV2ViQXNzZW1ibHkgZG9lc24ndCB5ZXQgaW1wbGVtZW50
IHRoZSBjb21waWxlIGZ1bmN0aW9uIHByb3BlcnR5IikpKSk7CisgICAgcmV0dXJuIEpTVmFsdWU6
OmVuY29kZSh0aHJvd0V4Y2VwdGlvbihleGVjLCBzY29wZSwgY3JlYXRlRXJyb3IoZXhlYywgQVND
SUlMaXRlcmFsKCJXZWJBc3NlbWJseSBkb2Vzbid0IHlldCBpbXBsZW1lbnQgdGhlIGNvbXBpbGUg
ZnVuY3Rpb24gcHJvcGVydHkiKSkpKTsKIH0KIAogfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlUYWJsZUNvbnN0cnVjdG9yLmNwcCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5VGFibGVDb25zdHJ1Y3Rvci5jcHAK
aW5kZXggMTJkMjdhYi4uODhmNTYzYyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3dhc20vanMvV2ViQXNzZW1ibHlUYWJsZUNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseVRhYmxlQ29uc3RydWN0b3IuY3BwCkBAIC05
NCwxMSArOTQsMTEgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29uc3Ry
dWN0SlNXZWJBc3NlbWJseVRhYmxlKEV4ZWNTdGF0ZSogZXhlYykKICAgICByZXR1cm4gSlNWYWx1
ZTo6ZW5jb2RlKEpTV2ViQXNzZW1ibHlUYWJsZTo6Y3JlYXRlKGV4ZWMsIHZtLCBleGVjLT5sZXhp
Y2FsR2xvYmFsT2JqZWN0KCktPldlYkFzc2VtYmx5VGFibGVTdHJ1Y3R1cmUoKSwgaW5pdGlhbCwg
bWF4aW11bSkpOwogfQogCi1zdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjYWxs
SlNXZWJBc3NlbWJseVRhYmxlKEV4ZWNTdGF0ZSogc3RhdGUpCitzdGF0aWMgRW5jb2RlZEpTVmFs
dWUgSlNDX0hPU1RfQ0FMTCBjYWxsSlNXZWJBc3NlbWJseVRhYmxlKEV4ZWNTdGF0ZSogZXhlYykK
IHsKLSAgICBWTSYgdm0gPSBzdGF0ZS0+dm0oKTsKKyAgICBWTSYgdm0gPSBleGVjLT52bSgpOwog
ICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKLSAgICByZXR1cm4gSlNW
YWx1ZTo6ZW5jb2RlKHRocm93Q29uc3RydWN0b3JDYW5ub3RCZUNhbGxlZEFzRnVuY3Rpb25UeXBl
RXJyb3Ioc3RhdGUsIHNjb3BlLCAiV2ViQXNzZW1ibHkuVGFibGUiKSk7CisgICAgcmV0dXJuIEpT
VmFsdWU6OmVuY29kZSh0aHJvd0NvbnN0cnVjdG9yQ2Fubm90QmVDYWxsZWRBc0Z1bmN0aW9uVHlw
ZUVycm9yKGV4ZWMsIHNjb3BlLCAiV2ViQXNzZW1ibHkuVGFibGUiKSk7CiB9CiAKIFdlYkFzc2Vt
Ymx5VGFibGVDb25zdHJ1Y3RvciogV2ViQXNzZW1ibHlUYWJsZUNvbnN0cnVjdG9yOjpjcmVhdGUo
Vk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgV2ViQXNzZW1ibHlUYWJsZVByb3RvdHlwZSog
dGhpc1Byb3RvdHlwZSkKLS0gCjIuOS4zCgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>