<?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>207356</bug_id>
          
          <creation_ts>2020-02-06 14:35:44 -0800</creation_ts>
          <short_desc>[JSC] CodeBlock::shrinkToFit should shrink m_constantRegisters and m_constantsSourceCodeRepresentation in 64bit architectures</short_desc>
          <delta_ts>2020-02-07 02:06:30 -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>New Bugs</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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>207369</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Yusuke Suzuki">ysuzuki</reporter>
          <assigned_to name="Yusuke Suzuki">ysuzuki</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
    
    <cc>tzagallo</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1615826</commentid>
    <comment_count>0</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-02-06 14:35:44 -0800</bug_when>
    <thetext>[JSC] CodeBlock::shrinkToFit should shrink m_constantRegisters and m_constantsSourceCodeRepresentation in 64bit architectures</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1615831</commentid>
    <comment_count>1</comment_count>
      <attachid>389999</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-02-06 14:37:45 -0800</bug_when>
    <thetext>Created attachment 389999
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1615834</commentid>
    <comment_count>2</comment_count>
      <attachid>390001</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-02-06 14:40:40 -0800</bug_when>
    <thetext>Created attachment 390001
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1615867</commentid>
    <comment_count>3</comment_count>
      <attachid>390001</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2020-02-06 15:15:15 -0800</bug_when>
    <thetext>Comment on attachment 390001
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1615874</commentid>
    <comment_count>4</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-02-06 15:25:06 -0800</bug_when>
    <thetext>Committed r255987: &lt;https://trac.webkit.org/changeset/255987&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1615875</commentid>
    <comment_count>5</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-02-06 15:26:16 -0800</bug_when>
    <thetext>&lt;rdar://problem/59239933&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1615945</commentid>
    <comment_count>6</comment_count>
    <who name="Ryan Haddad">ryanhaddad</who>
    <bug_when>2020-02-06 17:24:08 -0800</bug_when>
    <thetext>This appears to have caused layout tests to exit early due to excessive timeouts, and caused test262 to time out after 20m without output

Layout tests: 
https://build.webkit.org/builders/Apple-Catalina-Release-WK2-Tests/builds/2755

test262:
https://build.webkit.org/builders/Apple-Catalina-Debug-Test262-Tests/builds/855</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1615947</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-02-06 17:25:23 -0800</bug_when>
    <thetext>Re-opened since this is blocked by bug 207369</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1616095</commentid>
    <comment_count>8</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-02-07 02:06:30 -0800</bug_when>
    <thetext>Committed r256015: &lt;https://trac.webkit.org/changeset/256015&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>389999</attachid>
            <date>2020-02-06 14:37:45 -0800</date>
            <delta_ts>2020-02-06 14:40:38 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-207356-20200206143745.patch</filename>
            <type>text/plain</type>
            <size>11692</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU1OTc2CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA3
YzIzMzAzYmRlODhjNzgwZWNjZDc3MThjYWUzYzM5ZjI1ZmMzZmM2Li40M2NjZDhjMTg5OGQ4NDUy
YTBmZTcyZmRkOTRjZWIxM2M2MDc0ZWI3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwzMyBAQAorMjAyMC0wMi0wNiAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29t
PgorCisgICAgICAgIFtKU0NdIENvZGVCbG9jazo6c2hyaW5rVG9GaXQgc2hvdWxkIHNocmluayBt
X2NvbnN0YW50UmVnaXN0ZXJzIGFuZCBtX2NvbnN0YW50c1NvdXJjZUNvZGVSZXByZXNlbnRhdGlv
biBpbiA2NGJpdCBhcmNoaXRlY3R1cmVzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMDczNTYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBPbmx5IDMyYml0IGFyY2hpdGVjdHVyZXMgYXJlIHVzaW5nIG1fY29u
c3RhbnRSZWdpc3RlcnMncyBhZGRyZXNzLiA2NGJpdCBhcmNoaXRlY3R1cmVzIGFyZSBub3QgcmVs
eWluZyBvbiBtX2NvbnN0YW50UmVnaXN0ZXJzJ3MgYWRkcmVzcy4KKyAgICAgICAgVGhpcyBwYXRj
aGVzIGZpeGVzIHRoZSB0aGluZyBzbyB0aGF0IENvZGVCbG9jazo6c2hyaW5rVG9GaXQgd2lsbCBz
aHJpbmsgbV9jb25zdGFudFJlZ2lzdGVycyBhbmQgbV9jb25zdGFudHNTb3VyY2VDb2RlUmVwcmVz
ZW50YXRpb24KKyAgICAgICAgcmVnYXJkbGVzcyBvZiB3aGV0aGVyIHRoaXMgaXMgRWFybHlTaHJp
bmsgb3Igbm90LiBXZSBhbHNvIG1vdmUgREZHL0ZUTCdzIExhdGVTaHJpbmsgY2FsbCB0byB0aGUg
cGxhY2UgYWZ0ZXIgY2FsbGluZyBERkdDb21tb24gcmVhbGx5QWRkCisgICAgICAgIHNpbmNlIHRo
ZXkgY2FuIGFkZCBtb3JlIGNvbnN0YW50IHJlZ2lzdGVycy4KKworICAgICAgICAqIGJ5dGVjb2Rl
L0NvZGVCbG9jay5jcHA6CisgICAgICAgIChKU0M6OkNvZGVCbG9jazo6c2hyaW5rVG9GaXQpOgor
ICAgICAgICAqIGJ5dGVjb2RlL0NvZGVCbG9jay5oOgorICAgICAgICAqIGRmZy9ERkdKSVRDb21w
aWxlci5jcHA6CisgICAgICAgIChKU0M6OkRGRzo6SklUQ29tcGlsZXI6OmNvbXBpbGUpOgorICAg
ICAgICAoSlNDOjpERkc6OkpJVENvbXBpbGVyOjpjb21waWxlRnVuY3Rpb24pOgorICAgICAgICAq
IGRmZy9ERkdKSVRGaW5hbGl6ZXIuY3BwOgorICAgICAgICAoSlNDOjpERkc6OkpJVEZpbmFsaXpl
cjo6ZmluYWxpemVDb21tb24pOgorICAgICAgICAqIGRmZy9ERkdQbGFuLmNwcDoKKyAgICAgICAg
KEpTQzo6REZHOjpQbGFuOjpjb21waWxlSW5UaHJlYWRJbXBsKToKKyAgICAgICAgKEpTQzo6REZH
OjpQbGFuOjpmaW5hbGl6ZVdpdGhvdXROb3RpZnlpbmdDYWxsYmFjayk6CisgICAgICAgICogaml0
L0pJVC5jcHA6CisgICAgICAgIChKU0M6OkpJVDo6bGluayk6CisgICAgICAgICogaml0L0pJVC5o
OgorICAgICAgICAqIGppdC9KSVRJbmxpbmVzLmg6CisgICAgICAgIChKU0M6OkpJVDo6ZW1pdExv
YWREb3VibGUpOgorICAgICAgICAoSlNDOjpKSVQ6OmVtaXRMb2FkSW50MzJUb0RvdWJsZSk6IERl
bGV0ZWQuCisKIDIwMjAtMDItMDUgIERvbiBPbG1zdGVhZCAgPGRvbi5vbG1zdGVhZEBzb255LmNv
bT4KIAogICAgICAgICBbUGxheVN0YXRpb25dIEJ1aWxkIGEgc2hhcmVkIEphdmFTY3JpcHRDb3Jl
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvQ29kZUJsb2NrLmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9Db2RlQmxvY2suY3BwCmluZGV4IDBi
ZTkzYjlmM2M5NWE2YTE4OWQ4Y2E3NzI0NDhlNmJkOTA2MWZjMmYuLjExYTJkMmM2YzkyODViMjdh
ZDQ2MDE5OWVlYTEzNjdjOTM3YmZjZWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ieXRlY29kZS9Db2RlQmxvY2suY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRl
Y29kZS9Db2RlQmxvY2suY3BwCkBAIC0xOTU3LDEwICsxOTU3LDE2IEBAIHZvaWQgQ29kZUJsb2Nr
OjpzaHJpbmtUb0ZpdChTaHJpbmtNb2RlIHNocmlua01vZGUpCiB7CiAgICAgQ29uY3VycmVudEpT
TG9ja2VyIGxvY2tlcihtX2xvY2spOwogCi0gICAgaWYgKHNocmlua01vZGUgPT0gRWFybHlTaHJp
bmspIHsKKyNpZiBVU0UoSlNWQUxVRTMyXzY0KQorICAgIC8vIE9ubHkgMzJiaXQgQmFzZWxpbmUg
SklUIGlzIHRvdWNoaW5nIG1fY29uc3RhbnRSZWdpc3RlcnMgYWRkcmVzcyBkaXJlY3RseS4KKyAg
ICBpZiAoc2hyaW5rTW9kZSA9PSBTaHJpbmtNb2RlOjpFYXJseVNocmluaykKICAgICAgICAgbV9j
b25zdGFudFJlZ2lzdGVycy5zaHJpbmtUb0ZpdCgpOwotICAgICAgICBtX2NvbnN0YW50c1NvdXJj
ZUNvZGVSZXByZXNlbnRhdGlvbi5zaHJpbmtUb0ZpdCgpOwotICAgICAgICAKKyNlbHNlCisgICAg
bV9jb25zdGFudFJlZ2lzdGVycy5zaHJpbmtUb0ZpdCgpOworI2VuZGlmCisgICAgbV9jb25zdGFu
dHNTb3VyY2VDb2RlUmVwcmVzZW50YXRpb24uc2hyaW5rVG9GaXQoKTsKKworICAgIGlmIChzaHJp
bmtNb2RlID09IFNocmlua01vZGU6OkVhcmx5U2hyaW5rKSB7CiAgICAgICAgIGlmIChtX3JhcmVE
YXRhKSB7CiAgICAgICAgICAgICBtX3JhcmVEYXRhLT5tX3N3aXRjaEp1bXBUYWJsZXMuc2hyaW5r
VG9GaXQoKTsKICAgICAgICAgICAgIG1fcmFyZURhdGEtPm1fc3RyaW5nU3dpdGNoSnVtcFRhYmxl
cy5zaHJpbmtUb0ZpdCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVj
b2RlL0NvZGVCbG9jay5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0NvZGVCbG9j
ay5oCmluZGV4IDQ2OTc1MmMxNTA4NzRiYWNjNGE0MjAxZjgyNDdkMDlkZjgxM2IwZWYuLjQ2OGFh
NzI3OWY3Yjg2NmExZmE0MTNjMjdlZWRmNGQ2MmNiZjk1ZTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ieXRlY29kZS9Db2RlQmxvY2suaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvYnl0ZWNvZGUvQ29kZUJsb2NrLmgKQEAgLTYzNSwxNiArNjM1LDE2IEBAIGNsYXNzIENv
ZGVCbG9jayA6IHB1YmxpYyBKU0NlbGwgewogCiAgICAgRGlyZWN0RXZhbENvZGVDYWNoZSYgZGly
ZWN0RXZhbENvZGVDYWNoZSgpIHsgY3JlYXRlUmFyZURhdGFJZk5lY2Vzc2FyeSgpOyByZXR1cm4g
bV9yYXJlRGF0YS0+bV9kaXJlY3RFdmFsQ29kZUNhY2hlOyB9CiAKLSAgICBlbnVtIFNocmlua01v
ZGUgeworICAgIGVudW0gY2xhc3MgU2hyaW5rTW9kZSB7CiAgICAgICAgIC8vIFNocmluayBwcmlv
ciB0byBnZW5lcmF0aW5nIG1hY2hpbmUgY29kZSB0aGF0IG1heSBwb2ludCBkaXJlY3RseSBpbnRv
IHZlY3RvcnMuCiAgICAgICAgIEVhcmx5U2hyaW5rLAogCiAgICAgICAgIC8vIFNocmluayBhZnRl
ciBnZW5lcmF0aW5nIG1hY2hpbmUgY29kZSwgYW5kIGFmdGVyIHBvc3NpYmx5IGNyZWF0aW5nIG5l
dyB2ZWN0b3JzCiAgICAgICAgIC8vIGFuZCBhcHBlbmRpbmcgdG8gb3RoZXJzLiBBdCB0aGlzIHRp
bWUgaXQgaXMgbm90IHNhZmUgdG8gc2hyaW5rIGNlcnRhaW4gdmVjdG9ycwogICAgICAgICAvLyBi
ZWNhdXNlIHdlIHdvdWxkIGhhdmUgZ2VuZXJhdGVkIG1hY2hpbmUgY29kZSB0aGF0IHJlZmVyZW5j
ZXMgdGhlbSBkaXJlY3RseS4KLSAgICAgICAgTGF0ZVNocmluaworICAgICAgICBMYXRlU2hyaW5r
LAogICAgIH07Ci0gICAgdm9pZCBzaHJpbmtUb0ZpdChTaHJpbmtNb2RlKTsKKyAgICB2b2lkIHNo
cmlua1RvRml0KGNvbnN0IENvbmN1cnJlbnRKU0xvY2tlciYsIFNocmlua01vZGUpOwogCiAgICAg
Ly8gRnVuY3Rpb25zIGZvciBjb250cm9sbGluZyB3aGVuIEpJVHRpbmcga2lja3MgaW4sIGluIGEg
bWl4ZWQgbW9kZQogICAgIC8vIGV4ZWN1dGlvbiB3b3JsZC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9kZmcvREZHSklUQ29tcGlsZXIuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL2RmZy9ERkdKSVRDb21waWxlci5jcHAKaW5kZXggYjU3ZmVkOWI4NjgxNGIyMzUwMzM0ZWUx
NjhhZTEwOGI4ZjQ0NWJkNy4uZTNlMjA4ZDJkYTFjZDczOWJmYWNjOGMzNGM1NDk3Y2M1NjJkYjkz
NiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdKSVRDb21waWxlci5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdKSVRDb21waWxlci5jcHAKQEAg
LTM5Miw4ICszOTIsNiBAQCB2b2lkIEpJVENvbXBpbGVyOjpjb21waWxlKCkKICAgICBsaW5rKCps
aW5rQnVmZmVyKTsKICAgICBtX3NwZWN1bGF0aXZlLT5saW5rT1NSRW50cmllcygqbGlua0J1ZmZl
cik7CiAKLSAgICBjb2RlQmxvY2soKS0+c2hyaW5rVG9GaXQoQ29kZUJsb2NrOjpMYXRlU2hyaW5r
KTsKLQogICAgIGRpc2Fzc2VtYmxlKCpsaW5rQnVmZmVyKTsKIAogICAgIG1fZ3JhcGgubV9wbGFu
LnNldEZpbmFsaXplcihtYWtlVW5pcXVlPEpJVEZpbmFsaXplcj4oCkBAIC00OTMsOCArNDkxLDYg
QEAgdm9pZCBKSVRDb21waWxlcjo6Y29tcGlsZUZ1bmN0aW9uKCkKICAgICBsaW5rKCpsaW5rQnVm
ZmVyKTsKICAgICBtX3NwZWN1bGF0aXZlLT5saW5rT1NSRW50cmllcygqbGlua0J1ZmZlcik7CiAg
ICAgCi0gICAgY29kZUJsb2NrKCktPnNocmlua1RvRml0KENvZGVCbG9jazo6TGF0ZVNocmluayk7
Ci0KICAgICBpZiAocmVxdWlyZXNBcml0eUZpeHVwKQogICAgICAgICBsaW5rQnVmZmVyLT5saW5r
KGNhbGxBcml0eUZpeHVwLCBGdW5jdGlvblB0cjxKSVRUaHVua1B0clRhZz4odm0oKS5nZXRDVElT
dHViKGFyaXR5Rml4dXBHZW5lcmF0b3IpLmNvZGUoKSkpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvZGZnL0RGR0pJVEZpbmFsaXplci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvZGZnL0RGR0pJVEZpbmFsaXplci5jcHAKaW5kZXggMzU4MjY5NWEzYjAzMTM4N2JjNWYy
YzU5NmNhMjQ2YWJkODA0NTQ1OC4uNjNkYTc4YzQ4OTY4YWYwZWQyMGNhYTA0MmZiN2M2MWY0NGVk
MjNjOSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdKSVRGaW5hbGl6
ZXIuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHSklURmluYWxpemVyLmNw
cApAQCAtODMsMTMgKzgzLDYgQEAgdm9pZCBKSVRGaW5hbGl6ZXI6OmZpbmFsaXplQ29tbW9uKCkK
IHsKICAgICBDb2RlQmxvY2sqIGNvZGVCbG9jayA9IG1fcGxhbi5jb2RlQmxvY2soKTsKIAotICAg
IC8vIFNvbWUgSklUIGZpbmFsaXplcnMgbWF5IGhhdmUgYWRkZWQgbW9yZSBjb25zdGFudHMuIFNo
cmluay10by1maXQgdGhvc2UgdGhpbmdzIG5vdy4KLSAgICB7Ci0gICAgICAgIENvbmN1cnJlbnRK
U0xvY2tlciBsb2NrZXIoY29kZUJsb2NrLT5tX2xvY2spOwotICAgICAgICBjb2RlQmxvY2stPmNv
bnN0YW50cygpLnNocmlua1RvRml0KCk7Ci0gICAgICAgIGNvZGVCbG9jay0+Y29uc3RhbnRzU291
cmNlQ29kZVJlcHJlc2VudGF0aW9uKCkuc2hyaW5rVG9GaXQoKTsKLSAgICB9Ci0KICNpZiBFTkFC
TEUoRlRMX0pJVCkKICAgICBtX2ppdENvZGUtPm9wdGltaXplQWZ0ZXJXYXJtVXAoY29kZUJsb2Nr
KTsKICNlbmRpZiAvLyBFTkFCTEUoRlRMX0pJVCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9kZmcvREZHUGxhbi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1Bs
YW4uY3BwCmluZGV4IDVkODM3MjViZGZhOTExZThiY2JiY2YxMWI4MGEzNDdjNDA4N2Y4OGEuLmUw
NzhmMTgwZDIzZjc1N2MyMGUwMjNjZDI4MjBkNDA4YmZhY2U4OTQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHUGxhbi5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL2RmZy9ERkdQbGFuLmNwcApAQCAtMjc5LDcgKzI3OSwxMCBAQCBQbGFuOjpDb21waWxhdGlv
blBhdGggUGxhbjo6Y29tcGlsZUluVGhyZWFkSW1wbCgpCiAgICAgLy8gaW4gdGhlIENvZGVCbG9j
ay4gVGhpcyBpcyBhIGdvb2QgdGltZSB0byBwZXJmb3JtIGFuIGVhcmx5IHNocmluaywgd2hpY2gg
aXMgbW9yZQogICAgIC8vIHBvd2VyZnVsIHRoYW4gYSBsYXRlIG9uZS4gSXQncyBzYWZlIHRvIGRv
IHNvIGJlY2F1c2Ugd2UgaGF2ZW4ndCBnZW5lcmF0ZWQgYW55IGNvZGUKICAgICAvLyB0aGF0IHJl
ZmVyZW5jZXMgYW55IG9mIHRoZSB0YWJsZXMgZGlyZWN0bHksIHlldC4KLSAgICBtX2NvZGVCbG9j
ay0+c2hyaW5rVG9GaXQoQ29kZUJsb2NrOjpFYXJseVNocmluayk7CisgICAgeworICAgICAgICBD
b25jdXJyZW50SlNMb2NrZXIgbG9ja2VyKG1fY29kZUJsb2NrLT5tX2xvY2spOworICAgICAgICBt
X2NvZGVCbG9jay0+c2hyaW5rVG9GaXQobG9ja2VyLCBDb2RlQmxvY2s6OlNocmlua01vZGU6OkVh
cmx5U2hyaW5rKTsKKyAgICB9CiAKICAgICBpZiAodmFsaWRhdGlvbkVuYWJsZWQoKSkKICAgICAg
ICAgdmFsaWRhdGUoZGZnKTsKQEAgLTYxNyw2ICs2MjAsNyBAQCBDb21waWxhdGlvblJlc3VsdCBQ
bGFuOjpmaW5hbGl6ZVdpdGhvdXROb3RpZnlpbmdDYWxsYmFjaygpCiAgICAgICAgIHsKICAgICAg
ICAgICAgIENvbmN1cnJlbnRKU0xvY2tlciBsb2NrZXIobV9jb2RlQmxvY2stPm1fbG9jayk7CiAg
ICAgICAgICAgICBtX2NvZGVCbG9jay0+aml0Q29kZSgpLT5zaHJpbmtUb0ZpdChsb2NrZXIpOwor
ICAgICAgICAgICAgbV9jb2RlQmxvY2stPnNocmlua1RvRml0KGxvY2tlciwgQ29kZUJsb2NrOjpT
aHJpbmtNb2RlOjpMYXRlU2hyaW5rKTsKICAgICAgICAgfQogCiAgICAgICAgIGlmICh2YWxpZGF0
aW9uRW5hYmxlZCgpKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJ
VC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVC5jcHAKaW5kZXggMTNkM2Q5Njk2
NDQ3ODdkMTIyZjMzZWQzOGE4Yzc2MmFhNDE3MWVkOS4uNjg3MTFjZTVkZDczMDVkOTZjMWYwMTZm
YjIyN2M2YmI1ZmFhMzhkYiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9K
SVQuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklULmNwcApAQCAtOTQzLDcg
Kzk0MywxMCBAQCBDb21waWxhdGlvblJlc3VsdCBKSVQ6OmxpbmsoKQogICAgICAgICBzdGF0aWNf
Y2FzdDxkb3VibGU+KHJlc3VsdC5zaXplKCkpIC8KICAgICAgICAgc3RhdGljX2Nhc3Q8ZG91Ymxl
PihtX2NvZGVCbG9jay0+aW5zdHJ1Y3Rpb25zU2l6ZSgpKSk7CiAKLSAgICBtX2NvZGVCbG9jay0+
c2hyaW5rVG9GaXQoQ29kZUJsb2NrOjpMYXRlU2hyaW5rKTsKKyAgICB7CisgICAgICAgIENvbmN1
cnJlbnRKU0xvY2tlciBsb2NrZXIobV9jb2RlQmxvY2stPm1fbG9jayk7CisgICAgICAgIG1fY29k
ZUJsb2NrLT5zaHJpbmtUb0ZpdChsb2NrZXIsIENvZGVCbG9jazo6U2hyaW5rTW9kZTo6TGF0ZVNo
cmluayk7CisgICAgfQogICAgIG1fY29kZUJsb2NrLT5zZXRKSVRDb2RlKAogICAgICAgICBhZG9w
dFJlZigqbmV3IERpcmVjdEpJVENvZGUocmVzdWx0LCB3aXRoQXJpdHlDaGVjaywgSklUVHlwZTo6
QmFzZWxpbmVKSVQpKSk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQv
SklULmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVC5oCmluZGV4IDY5NTdhNzIyNTc1
NmI0NGM2ZGZlNzljOTM0MGU1NGRiN2U1ZTJlNzcuLjdiNDQwNzQ5NjMzMzZmY2I4OTQxZWJkMDVi
NTk3MzEyOWE5ZTg2NTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklU
LmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9KSVQuaApAQCAtMzM3LDkgKzMzNyw2
IEBAIG5hbWVzcGFjZSBKU0MgewogICAgICAgICB2b2lkIGNvbXBpbGVPcEVxSnVtcFNsb3coVmVj
dG9yPFNsb3dDYXNlRW50cnk+OjppdGVyYXRvciYsIENvbXBpbGVPcEVxVHlwZSwgaW50IGp1bXBU
YXJnZXQpOwogICAgICAgICBib29sIGlzT3BlcmFuZENvbnN0YW50RG91YmxlKFZpcnR1YWxSZWdp
c3Rlcik7CiAgICAgICAgIAotICAgICAgICB2b2lkIGVtaXRMb2FkRG91YmxlKFZpcnR1YWxSZWdp
c3RlciwgRlBSZWdpc3RlcklEIHZhbHVlKTsKLSAgICAgICAgdm9pZCBlbWl0TG9hZEludDMyVG9E
b3VibGUoVmlydHVhbFJlZ2lzdGVyLCBGUFJlZ2lzdGVySUQgdmFsdWUpOwotCiAgICAgICAgIGVu
dW0gV3JpdGVCYXJyaWVyTW9kZSB7IFVuY29uZGl0aW9uYWxXcml0ZUJhcnJpZXIsIFNob3VsZEZp
bHRlckJhc2UsIFNob3VsZEZpbHRlclZhbHVlLCBTaG91bGRGaWx0ZXJCYXNlQW5kVmFsdWUgfTsK
ICAgICAgICAgLy8gdmFsdWUgcmVnaXN0ZXIgaW4gd3JpdGUgYmFycmllciBpcyB1c2VkIGJlZm9y
ZSBhbnkgc2NyYXRjaCByZWdpc3RlcnMKICAgICAgICAgLy8gc28gbWF5IHNhZmVseSBiZSB0aGUg
c2FtZSBhcyBlaXRoZXIgb2YgdGhlIHNjcmF0Y2ggcmVnaXN0ZXJzLgpAQCAtNDE3LDYgKzQxNCw3
IEBAIG5hbWVzcGFjZSBKU0MgewogI2lmIFVTRShKU1ZBTFVFMzJfNjQpCiAgICAgICAgIGJvb2wg
Z2V0T3BlcmFuZENvbnN0YW50SW50KFZpcnR1YWxSZWdpc3RlciBvcDEsIFZpcnR1YWxSZWdpc3Rl
ciBvcDIsIFZpcnR1YWxSZWdpc3RlciYgb3AsIGludDMyX3QmIGNvbnN0YW50KTsKIAorICAgICAg
ICB2b2lkIGVtaXRMb2FkRG91YmxlKFZpcnR1YWxSZWdpc3RlciwgRlBSZWdpc3RlcklEIHZhbHVl
KTsKICAgICAgICAgdm9pZCBlbWl0TG9hZFRhZyhWaXJ0dWFsUmVnaXN0ZXIsIFJlZ2lzdGVySUQg
dGFnKTsKICAgICAgICAgdm9pZCBlbWl0TG9hZFBheWxvYWQoVmlydHVhbFJlZ2lzdGVyLCBSZWdp
c3RlcklEIHBheWxvYWQpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0
L0pJVElubGluZXMuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklUSW5saW5lcy5oCmlu
ZGV4IDE2NDNiZGE1YjlhMTNiNDg0MjY2ZWY2NzZhMTNjYjM4MTQ4N2FkNTAuLjIzZmY1YzgxYzFj
MDMyMjJmOTEyYTQ5OTMxZjI4MzZkYWRjZmFjYjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9qaXQvSklUSW5saW5lcy5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQv
SklUSW5saW5lcy5oCkBAIC0zNzcsNiArMzc3LDE1IEBAIEFMV0FZU19JTkxJTkUgdm9pZCBKSVQ6
OmVtaXRJbml0UmVnaXN0ZXIoVmlydHVhbFJlZ2lzdGVyIGRzdCkKIAogI2lmIFVTRShKU1ZBTFVF
MzJfNjQpCiAKK2lubGluZSB2b2lkIEpJVDo6ZW1pdExvYWREb3VibGUoVmlydHVhbFJlZ2lzdGVy
IHJlZywgRlBSZWdpc3RlcklEIHZhbHVlKQoreworICAgIGlmIChyZWcuaXNDb25zdGFudCgpKSB7
CisgICAgICAgIFdyaXRlQmFycmllcjxVbmtub3duPiYgaW5Db25zdGFudFBvb2wgPSBtX2NvZGVC
bG9jay0+Y29uc3RhbnRSZWdpc3RlcihyZWcpOworICAgICAgICBsb2FkRG91YmxlKFRydXN0ZWRJ
bW1QdHIoJmluQ29uc3RhbnRQb29sKSwgdmFsdWUpOworICAgIH0gZWxzZQorICAgICAgICBsb2Fk
RG91YmxlKGFkZHJlc3NGb3IocmVnKSwgdmFsdWUpOworfQorCiBpbmxpbmUgdm9pZCBKSVQ6OmVt
aXRMb2FkVGFnKFZpcnR1YWxSZWdpc3RlciByZWcsIFJlZ2lzdGVySUQgdGFnKQogewogICAgIGlm
IChyZWcuaXNDb25zdGFudCgpKSB7CkBAIC00NDAsMjUgKzQ0OSw2IEBAIGlubGluZSB2b2lkIEpJ
VDo6ZW1pdExvYWQyKFZpcnR1YWxSZWdpc3RlciByZWcxLCBSZWdpc3RlcklEIHRhZzEsIFJlZ2lz
dGVySUQgcGF5CiAgICAgZW1pdExvYWQocmVnMSwgdGFnMSwgcGF5bG9hZDEpOwogfQogCi1pbmxp
bmUgdm9pZCBKSVQ6OmVtaXRMb2FkRG91YmxlKFZpcnR1YWxSZWdpc3RlciByZWcsIEZQUmVnaXN0
ZXJJRCB2YWx1ZSkKLXsKLSAgICBpZiAocmVnLmlzQ29uc3RhbnQoKSkgewotICAgICAgICBXcml0
ZUJhcnJpZXI8VW5rbm93bj4mIGluQ29uc3RhbnRQb29sID0gbV9jb2RlQmxvY2stPmNvbnN0YW50
UmVnaXN0ZXIocmVnKTsKLSAgICAgICAgbG9hZERvdWJsZShUcnVzdGVkSW1tUHRyKCZpbkNvbnN0
YW50UG9vbCksIHZhbHVlKTsKLSAgICB9IGVsc2UKLSAgICAgICAgbG9hZERvdWJsZShhZGRyZXNz
Rm9yKHJlZyksIHZhbHVlKTsKLX0KLQotaW5saW5lIHZvaWQgSklUOjplbWl0TG9hZEludDMyVG9E
b3VibGUoVmlydHVhbFJlZ2lzdGVyIHJlZywgRlBSZWdpc3RlcklEIHZhbHVlKQotewotICAgIGlm
IChyZWcuaXNDb25zdGFudCgpKSB7Ci0gICAgICAgIFdyaXRlQmFycmllcjxVbmtub3duPiYgaW5D
b25zdGFudFBvb2wgPSBtX2NvZGVCbG9jay0+Y29uc3RhbnRSZWdpc3RlcihyZWcpOwotICAgICAg
ICBjaGFyKiBieXRlUG9pbnRlciA9IHJlaW50ZXJwcmV0X2Nhc3Q8Y2hhcio+KCZpbkNvbnN0YW50
UG9vbCk7Ci0gICAgICAgIGNvbnZlcnRJbnQzMlRvRG91YmxlKEFic29sdXRlQWRkcmVzcyhieXRl
UG9pbnRlciArIE9CSkVDVF9PRkZTRVRPRihKU1ZhbHVlLCB1LmFzQml0cy5wYXlsb2FkKSksIHZh
bHVlKTsKLSAgICB9IGVsc2UKLSAgICAgICAgY29udmVydEludDMyVG9Eb3VibGUocGF5bG9hZEZv
cihyZWcpLCB2YWx1ZSk7Ci19Ci0KIGlubGluZSB2b2lkIEpJVDo6ZW1pdFN0b3JlKFZpcnR1YWxS
ZWdpc3RlciByZWcsIFJlZ2lzdGVySUQgdGFnLCBSZWdpc3RlcklEIHBheWxvYWQsIFJlZ2lzdGVy
SUQgYmFzZSkKIHsKICAgICBzdG9yZTMyKHBheWxvYWQsIHBheWxvYWRGb3IocmVnLCBiYXNlKSk7
CkBAIC02MTQsMjQgKzYwNCw2IEBAIEFMV0FZU19JTkxJTkUgdm9pZCBKSVQ6OmVtaXRKdW1wU2xv
d0Nhc2VJZk5vdEpTQ2VsbChSZWdpc3RlcklEIHJlZywgVmlydHVhbFJlZ2lzCiAgICAgICAgIGVt
aXRKdW1wU2xvd0Nhc2VJZk5vdEpTQ2VsbChyZWcpOwogfQogCi1pbmxpbmUgdm9pZCBKSVQ6OmVt
aXRMb2FkRG91YmxlKFZpcnR1YWxSZWdpc3RlciByZWcsIEZQUmVnaXN0ZXJJRCB2YWx1ZSkKLXsK
LSAgICBpZiAocmVnLmlzQ29uc3RhbnQoKSkgewotICAgICAgICBXcml0ZUJhcnJpZXI8VW5rbm93
bj4mIGluQ29uc3RhbnRQb29sID0gbV9jb2RlQmxvY2stPmNvbnN0YW50UmVnaXN0ZXIocmVnKTsK
LSAgICAgICAgbG9hZERvdWJsZShUcnVzdGVkSW1tUHRyKCZpbkNvbnN0YW50UG9vbCksIHZhbHVl
KTsKLSAgICB9IGVsc2UKLSAgICAgICAgbG9hZERvdWJsZShhZGRyZXNzRm9yKHJlZyksIHZhbHVl
KTsKLX0KLQotaW5saW5lIHZvaWQgSklUOjplbWl0TG9hZEludDMyVG9Eb3VibGUoVmlydHVhbFJl
Z2lzdGVyIHJlZywgRlBSZWdpc3RlcklEIHZhbHVlKQotewotICAgIGlmIChyZWcuaXNDb25zdGFu
dCgpKSB7Ci0gICAgICAgIEFTU0VSVChpc09wZXJhbmRDb25zdGFudEludChyZWcpKTsKLSAgICAg
ICAgY29udmVydEludDMyVG9Eb3VibGUoSW1tMzIoZ2V0Q29uc3RhbnRPcGVyYW5kKHJlZykuYXNJ
bnQzMigpKSwgdmFsdWUpOwotICAgIH0gZWxzZQotICAgICAgICBjb252ZXJ0SW50MzJUb0RvdWJs
ZShhZGRyZXNzRm9yKHJlZyksIHZhbHVlKTsKLX0KLQogQUxXQVlTX0lOTElORSBKSVQ6OlBhdGNo
YWJsZUp1bXAgSklUOjplbWl0UGF0Y2hhYmxlSnVtcElmTm90SW50KFJlZ2lzdGVySUQgcmVnKQog
ewogICAgIHJldHVybiBwYXRjaGFibGVCcmFuY2g2NChCZWxvdywgcmVnLCBudW1iZXJUYWdSZWdp
c3Rlcik7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>390001</attachid>
            <date>2020-02-06 14:40:40 -0800</date>
            <delta_ts>2020-02-06 15:15:15 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-207356-20200206144038.patch</filename>
            <type>text/plain</type>
            <size>11877</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU1OTc2CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA3
YzIzMzAzYmRlODhjNzgwZWNjZDc3MThjYWUzYzM5ZjI1ZmMzZmM2Li40M2NjZDhjMTg5OGQ4NDUy
YTBmZTcyZmRkOTRjZWIxM2M2MDc0ZWI3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwzMyBAQAorMjAyMC0wMi0wNiAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29t
PgorCisgICAgICAgIFtKU0NdIENvZGVCbG9jazo6c2hyaW5rVG9GaXQgc2hvdWxkIHNocmluayBt
X2NvbnN0YW50UmVnaXN0ZXJzIGFuZCBtX2NvbnN0YW50c1NvdXJjZUNvZGVSZXByZXNlbnRhdGlv
biBpbiA2NGJpdCBhcmNoaXRlY3R1cmVzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMDczNTYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBPbmx5IDMyYml0IGFyY2hpdGVjdHVyZXMgYXJlIHVzaW5nIG1fY29u
c3RhbnRSZWdpc3RlcnMncyBhZGRyZXNzLiA2NGJpdCBhcmNoaXRlY3R1cmVzIGFyZSBub3QgcmVs
eWluZyBvbiBtX2NvbnN0YW50UmVnaXN0ZXJzJ3MgYWRkcmVzcy4KKyAgICAgICAgVGhpcyBwYXRj
aGVzIGZpeGVzIHRoZSB0aGluZyBzbyB0aGF0IENvZGVCbG9jazo6c2hyaW5rVG9GaXQgd2lsbCBz
aHJpbmsgbV9jb25zdGFudFJlZ2lzdGVycyBhbmQgbV9jb25zdGFudHNTb3VyY2VDb2RlUmVwcmVz
ZW50YXRpb24KKyAgICAgICAgcmVnYXJkbGVzcyBvZiB3aGV0aGVyIHRoaXMgaXMgRWFybHlTaHJp
bmsgb3Igbm90LiBXZSBhbHNvIG1vdmUgREZHL0ZUTCdzIExhdGVTaHJpbmsgY2FsbCB0byB0aGUg
cGxhY2UgYWZ0ZXIgY2FsbGluZyBERkdDb21tb24gcmVhbGx5QWRkCisgICAgICAgIHNpbmNlIHRo
ZXkgY2FuIGFkZCBtb3JlIGNvbnN0YW50IHJlZ2lzdGVycy4KKworICAgICAgICAqIGJ5dGVjb2Rl
L0NvZGVCbG9jay5jcHA6CisgICAgICAgIChKU0M6OkNvZGVCbG9jazo6c2hyaW5rVG9GaXQpOgor
ICAgICAgICAqIGJ5dGVjb2RlL0NvZGVCbG9jay5oOgorICAgICAgICAqIGRmZy9ERkdKSVRDb21w
aWxlci5jcHA6CisgICAgICAgIChKU0M6OkRGRzo6SklUQ29tcGlsZXI6OmNvbXBpbGUpOgorICAg
ICAgICAoSlNDOjpERkc6OkpJVENvbXBpbGVyOjpjb21waWxlRnVuY3Rpb24pOgorICAgICAgICAq
IGRmZy9ERkdKSVRGaW5hbGl6ZXIuY3BwOgorICAgICAgICAoSlNDOjpERkc6OkpJVEZpbmFsaXpl
cjo6ZmluYWxpemVDb21tb24pOgorICAgICAgICAqIGRmZy9ERkdQbGFuLmNwcDoKKyAgICAgICAg
KEpTQzo6REZHOjpQbGFuOjpjb21waWxlSW5UaHJlYWRJbXBsKToKKyAgICAgICAgKEpTQzo6REZH
OjpQbGFuOjpmaW5hbGl6ZVdpdGhvdXROb3RpZnlpbmdDYWxsYmFjayk6CisgICAgICAgICogaml0
L0pJVC5jcHA6CisgICAgICAgIChKU0M6OkpJVDo6bGluayk6CisgICAgICAgICogaml0L0pJVC5o
OgorICAgICAgICAqIGppdC9KSVRJbmxpbmVzLmg6CisgICAgICAgIChKU0M6OkpJVDo6ZW1pdExv
YWREb3VibGUpOgorICAgICAgICAoSlNDOjpKSVQ6OmVtaXRMb2FkSW50MzJUb0RvdWJsZSk6IERl
bGV0ZWQuCisKIDIwMjAtMDItMDUgIERvbiBPbG1zdGVhZCAgPGRvbi5vbG1zdGVhZEBzb255LmNv
bT4KIAogICAgICAgICBbUGxheVN0YXRpb25dIEJ1aWxkIGEgc2hhcmVkIEphdmFTY3JpcHRDb3Jl
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvQ29kZUJsb2NrLmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9Db2RlQmxvY2suY3BwCmluZGV4IDBi
ZTkzYjlmM2M5NWE2YTE4OWQ4Y2E3NzI0NDhlNmJkOTA2MWZjMmYuLjYyZjY1YTVjNjUzY2VjYTk3
NmFjNTRlMmE0ZjE4NDQ4ZmE0NzJjZjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ieXRlY29kZS9Db2RlQmxvY2suY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRl
Y29kZS9Db2RlQmxvY2suY3BwCkBAIC0xOTUzLDE0ICsxOTUzLDIwIEBAIGJvb2wgQ29kZUJsb2Nr
OjpoYXNPcERlYnVnRm9yTGluZUFuZENvbHVtbih1bnNpZ25lZCBsaW5lLCBPcHRpb25hbDx1bnNp
Z25lZD4gY29sCiAgICAgcmV0dXJuIGZhbHNlOwogfQogCi12b2lkIENvZGVCbG9jazo6c2hyaW5r
VG9GaXQoU2hyaW5rTW9kZSBzaHJpbmtNb2RlKQordm9pZCBDb2RlQmxvY2s6OnNocmlua1RvRml0
KGNvbnN0IENvbmN1cnJlbnRKU0xvY2tlciYsIFNocmlua01vZGUgc2hyaW5rTW9kZSkKIHsKICAg
ICBDb25jdXJyZW50SlNMb2NrZXIgbG9ja2VyKG1fbG9jayk7CiAKLSAgICBpZiAoc2hyaW5rTW9k
ZSA9PSBFYXJseVNocmluaykgeworI2lmIFVTRShKU1ZBTFVFMzJfNjQpCisgICAgLy8gT25seSAz
MmJpdCBCYXNlbGluZSBKSVQgaXMgdG91Y2hpbmcgbV9jb25zdGFudFJlZ2lzdGVycyBhZGRyZXNz
IGRpcmVjdGx5LgorICAgIGlmIChzaHJpbmtNb2RlID09IFNocmlua01vZGU6OkVhcmx5U2hyaW5r
KQogICAgICAgICBtX2NvbnN0YW50UmVnaXN0ZXJzLnNocmlua1RvRml0KCk7Ci0gICAgICAgIG1f
Y29uc3RhbnRzU291cmNlQ29kZVJlcHJlc2VudGF0aW9uLnNocmlua1RvRml0KCk7Ci0gICAgICAg
IAorI2Vsc2UKKyAgICBtX2NvbnN0YW50UmVnaXN0ZXJzLnNocmlua1RvRml0KCk7CisjZW5kaWYK
KyAgICBtX2NvbnN0YW50c1NvdXJjZUNvZGVSZXByZXNlbnRhdGlvbi5zaHJpbmtUb0ZpdCgpOwor
CisgICAgaWYgKHNocmlua01vZGUgPT0gU2hyaW5rTW9kZTo6RWFybHlTaHJpbmspIHsKICAgICAg
ICAgaWYgKG1fcmFyZURhdGEpIHsKICAgICAgICAgICAgIG1fcmFyZURhdGEtPm1fc3dpdGNoSnVt
cFRhYmxlcy5zaHJpbmtUb0ZpdCgpOwogICAgICAgICAgICAgbV9yYXJlRGF0YS0+bV9zdHJpbmdT
d2l0Y2hKdW1wVGFibGVzLnNocmlua1RvRml0KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvYnl0ZWNvZGUvQ29kZUJsb2NrLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0
ZWNvZGUvQ29kZUJsb2NrLmgKaW5kZXggNDY5NzUyYzE1MDg3NGJhY2M0YTQyMDFmODI0N2QwOWRm
ODEzYjBlZi4uNDY4YWE3Mjc5ZjdiODY2YTFmYTQxM2MyN2VlZGY0ZDYyY2JmOTVlMSAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0NvZGVCbG9jay5oCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9Db2RlQmxvY2suaApAQCAtNjM1LDE2ICs2MzUs
MTYgQEAgY2xhc3MgQ29kZUJsb2NrIDogcHVibGljIEpTQ2VsbCB7CiAKICAgICBEaXJlY3RFdmFs
Q29kZUNhY2hlJiBkaXJlY3RFdmFsQ29kZUNhY2hlKCkgeyBjcmVhdGVSYXJlRGF0YUlmTmVjZXNz
YXJ5KCk7IHJldHVybiBtX3JhcmVEYXRhLT5tX2RpcmVjdEV2YWxDb2RlQ2FjaGU7IH0KIAotICAg
IGVudW0gU2hyaW5rTW9kZSB7CisgICAgZW51bSBjbGFzcyBTaHJpbmtNb2RlIHsKICAgICAgICAg
Ly8gU2hyaW5rIHByaW9yIHRvIGdlbmVyYXRpbmcgbWFjaGluZSBjb2RlIHRoYXQgbWF5IHBvaW50
IGRpcmVjdGx5IGludG8gdmVjdG9ycy4KICAgICAgICAgRWFybHlTaHJpbmssCiAKICAgICAgICAg
Ly8gU2hyaW5rIGFmdGVyIGdlbmVyYXRpbmcgbWFjaGluZSBjb2RlLCBhbmQgYWZ0ZXIgcG9zc2li
bHkgY3JlYXRpbmcgbmV3IHZlY3RvcnMKICAgICAgICAgLy8gYW5kIGFwcGVuZGluZyB0byBvdGhl
cnMuIEF0IHRoaXMgdGltZSBpdCBpcyBub3Qgc2FmZSB0byBzaHJpbmsgY2VydGFpbiB2ZWN0b3Jz
CiAgICAgICAgIC8vIGJlY2F1c2Ugd2Ugd291bGQgaGF2ZSBnZW5lcmF0ZWQgbWFjaGluZSBjb2Rl
IHRoYXQgcmVmZXJlbmNlcyB0aGVtIGRpcmVjdGx5LgotICAgICAgICBMYXRlU2hyaW5rCisgICAg
ICAgIExhdGVTaHJpbmssCiAgICAgfTsKLSAgICB2b2lkIHNocmlua1RvRml0KFNocmlua01vZGUp
OworICAgIHZvaWQgc2hyaW5rVG9GaXQoY29uc3QgQ29uY3VycmVudEpTTG9ja2VyJiwgU2hyaW5r
TW9kZSk7CiAKICAgICAvLyBGdW5jdGlvbnMgZm9yIGNvbnRyb2xsaW5nIHdoZW4gSklUdGluZyBr
aWNrcyBpbiwgaW4gYSBtaXhlZCBtb2RlCiAgICAgLy8gZXhlY3V0aW9uIHdvcmxkLgpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdKSVRDb21waWxlci5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0pJVENvbXBpbGVyLmNwcAppbmRleCBiNTdmZWQ5Yjg2
ODE0YjIzNTAzMzRlZTE2OGFlMTA4YjhmNDQ1YmQ3Li5lM2UyMDhkMmRhMWNkNzM5YmZhY2M4YzM0
YzU0OTdjYzU2MmRiOTM2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RG
R0pJVENvbXBpbGVyLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0pJVENv
bXBpbGVyLmNwcApAQCAtMzkyLDggKzM5Miw2IEBAIHZvaWQgSklUQ29tcGlsZXI6OmNvbXBpbGUo
KQogICAgIGxpbmsoKmxpbmtCdWZmZXIpOwogICAgIG1fc3BlY3VsYXRpdmUtPmxpbmtPU1JFbnRy
aWVzKCpsaW5rQnVmZmVyKTsKIAotICAgIGNvZGVCbG9jaygpLT5zaHJpbmtUb0ZpdChDb2RlQmxv
Y2s6OkxhdGVTaHJpbmspOwotCiAgICAgZGlzYXNzZW1ibGUoKmxpbmtCdWZmZXIpOwogCiAgICAg
bV9ncmFwaC5tX3BsYW4uc2V0RmluYWxpemVyKG1ha2VVbmlxdWU8SklURmluYWxpemVyPigKQEAg
LTQ5Myw4ICs0OTEsNiBAQCB2b2lkIEpJVENvbXBpbGVyOjpjb21waWxlRnVuY3Rpb24oKQogICAg
IGxpbmsoKmxpbmtCdWZmZXIpOwogICAgIG1fc3BlY3VsYXRpdmUtPmxpbmtPU1JFbnRyaWVzKCps
aW5rQnVmZmVyKTsKICAgICAKLSAgICBjb2RlQmxvY2soKS0+c2hyaW5rVG9GaXQoQ29kZUJsb2Nr
OjpMYXRlU2hyaW5rKTsKLQogICAgIGlmIChyZXF1aXJlc0FyaXR5Rml4dXApCiAgICAgICAgIGxp
bmtCdWZmZXItPmxpbmsoY2FsbEFyaXR5Rml4dXAsIEZ1bmN0aW9uUHRyPEpJVFRodW5rUHRyVGFn
Pih2bSgpLmdldENUSVN0dWIoYXJpdHlGaXh1cEdlbmVyYXRvcikuY29kZSgpKSk7CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHSklURmluYWxpemVyLmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHSklURmluYWxpemVyLmNwcAppbmRleCAzNTgyNjk1
YTNiMDMxMzg3YmM1ZjJjNTk2Y2EyNDZhYmQ4MDQ1NDU4Li42M2RhNzhjNDg5NjhhZjBlZDIwY2Fh
MDQyZmI3YzYxZjQ0ZWQyM2M5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZn
L0RGR0pJVEZpbmFsaXplci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdK
SVRGaW5hbGl6ZXIuY3BwCkBAIC04MywxMyArODMsNiBAQCB2b2lkIEpJVEZpbmFsaXplcjo6Zmlu
YWxpemVDb21tb24oKQogewogICAgIENvZGVCbG9jayogY29kZUJsb2NrID0gbV9wbGFuLmNvZGVC
bG9jaygpOwogCi0gICAgLy8gU29tZSBKSVQgZmluYWxpemVycyBtYXkgaGF2ZSBhZGRlZCBtb3Jl
IGNvbnN0YW50cy4gU2hyaW5rLXRvLWZpdCB0aG9zZSB0aGluZ3Mgbm93LgotICAgIHsKLSAgICAg
ICAgQ29uY3VycmVudEpTTG9ja2VyIGxvY2tlcihjb2RlQmxvY2stPm1fbG9jayk7Ci0gICAgICAg
IGNvZGVCbG9jay0+Y29uc3RhbnRzKCkuc2hyaW5rVG9GaXQoKTsKLSAgICAgICAgY29kZUJsb2Nr
LT5jb25zdGFudHNTb3VyY2VDb2RlUmVwcmVzZW50YXRpb24oKS5zaHJpbmtUb0ZpdCgpOwotICAg
IH0KLQogI2lmIEVOQUJMRShGVExfSklUKQogICAgIG1faml0Q29kZS0+b3B0aW1pemVBZnRlcldh
cm1VcChjb2RlQmxvY2spOwogI2VuZGlmIC8vIEVOQUJMRShGVExfSklUKQpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdQbGFuLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9kZmcvREZHUGxhbi5jcHAKaW5kZXggNWQ4MzcyNWJkZmE5MTFlOGJjYmJjZjExYjgwYTM0
N2M0MDg3Zjg4YS4uZTA3OGYxODBkMjNmNzU3YzIwZTAyM2NkMjgyMGQ0MDhiZmFjZTg5NCAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdQbGFuLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1BsYW4uY3BwCkBAIC0yNzksNyArMjc5LDEwIEBAIFBs
YW46OkNvbXBpbGF0aW9uUGF0aCBQbGFuOjpjb21waWxlSW5UaHJlYWRJbXBsKCkKICAgICAvLyBp
biB0aGUgQ29kZUJsb2NrLiBUaGlzIGlzIGEgZ29vZCB0aW1lIHRvIHBlcmZvcm0gYW4gZWFybHkg
c2hyaW5rLCB3aGljaCBpcyBtb3JlCiAgICAgLy8gcG93ZXJmdWwgdGhhbiBhIGxhdGUgb25lLiBJ
dCdzIHNhZmUgdG8gZG8gc28gYmVjYXVzZSB3ZSBoYXZlbid0IGdlbmVyYXRlZCBhbnkgY29kZQog
ICAgIC8vIHRoYXQgcmVmZXJlbmNlcyBhbnkgb2YgdGhlIHRhYmxlcyBkaXJlY3RseSwgeWV0Lgot
ICAgIG1fY29kZUJsb2NrLT5zaHJpbmtUb0ZpdChDb2RlQmxvY2s6OkVhcmx5U2hyaW5rKTsKKyAg
ICB7CisgICAgICAgIENvbmN1cnJlbnRKU0xvY2tlciBsb2NrZXIobV9jb2RlQmxvY2stPm1fbG9j
ayk7CisgICAgICAgIG1fY29kZUJsb2NrLT5zaHJpbmtUb0ZpdChsb2NrZXIsIENvZGVCbG9jazo6
U2hyaW5rTW9kZTo6RWFybHlTaHJpbmspOworICAgIH0KIAogICAgIGlmICh2YWxpZGF0aW9uRW5h
YmxlZCgpKQogICAgICAgICB2YWxpZGF0ZShkZmcpOwpAQCAtNjE3LDYgKzYyMCw3IEBAIENvbXBp
bGF0aW9uUmVzdWx0IFBsYW46OmZpbmFsaXplV2l0aG91dE5vdGlmeWluZ0NhbGxiYWNrKCkKICAg
ICAgICAgewogICAgICAgICAgICAgQ29uY3VycmVudEpTTG9ja2VyIGxvY2tlcihtX2NvZGVCbG9j
ay0+bV9sb2NrKTsKICAgICAgICAgICAgIG1fY29kZUJsb2NrLT5qaXRDb2RlKCktPnNocmlua1Rv
Rml0KGxvY2tlcik7CisgICAgICAgICAgICBtX2NvZGVCbG9jay0+c2hyaW5rVG9GaXQobG9ja2Vy
LCBDb2RlQmxvY2s6OlNocmlua01vZGU6OkxhdGVTaHJpbmspOwogICAgICAgICB9CiAKICAgICAg
ICAgaWYgKHZhbGlkYXRpb25FbmFibGVkKCkpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9qaXQvSklULmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklULmNwcApp
bmRleCAxM2QzZDk2OTY0NDc4N2QxMjJmMzNlZDM4YThjNzYyYWE0MTcxZWQ5Li42ODcxMWNlNWRk
NzMwNWQ5NmMxZjAxNmZiMjI3YzZiYjVmYWEzOGRiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvaml0L0pJVC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9KSVQu
Y3BwCkBAIC05NDMsNyArOTQzLDEwIEBAIENvbXBpbGF0aW9uUmVzdWx0IEpJVDo6bGluaygpCiAg
ICAgICAgIHN0YXRpY19jYXN0PGRvdWJsZT4ocmVzdWx0LnNpemUoKSkgLwogICAgICAgICBzdGF0
aWNfY2FzdDxkb3VibGU+KG1fY29kZUJsb2NrLT5pbnN0cnVjdGlvbnNTaXplKCkpKTsKIAotICAg
IG1fY29kZUJsb2NrLT5zaHJpbmtUb0ZpdChDb2RlQmxvY2s6OkxhdGVTaHJpbmspOworICAgIHsK
KyAgICAgICAgQ29uY3VycmVudEpTTG9ja2VyIGxvY2tlcihtX2NvZGVCbG9jay0+bV9sb2NrKTsK
KyAgICAgICAgbV9jb2RlQmxvY2stPnNocmlua1RvRml0KGxvY2tlciwgQ29kZUJsb2NrOjpTaHJp
bmtNb2RlOjpMYXRlU2hyaW5rKTsKKyAgICB9CiAgICAgbV9jb2RlQmxvY2stPnNldEpJVENvZGUo
CiAgICAgICAgIGFkb3B0UmVmKCpuZXcgRGlyZWN0SklUQ29kZShyZXN1bHQsIHdpdGhBcml0eUNo
ZWNrLCBKSVRUeXBlOjpCYXNlbGluZUpJVCkpKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2ppdC9KSVQuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklULmgKaW5k
ZXggNjk1N2E3MjI1NzU2YjQ0YzZkZmU3OWM5MzQwZTU0ZGI3ZTVlMmU3Ny4uN2I0NDA3NDk2MzMz
NmZjYjg5NDFlYmQwNWI1OTczMTI5YTllODY1NSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2ppdC9KSVQuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVC5oCkBA
IC0zMzcsOSArMzM3LDYgQEAgbmFtZXNwYWNlIEpTQyB7CiAgICAgICAgIHZvaWQgY29tcGlsZU9w
RXFKdW1wU2xvdyhWZWN0b3I8U2xvd0Nhc2VFbnRyeT46Oml0ZXJhdG9yJiwgQ29tcGlsZU9wRXFU
eXBlLCBpbnQganVtcFRhcmdldCk7CiAgICAgICAgIGJvb2wgaXNPcGVyYW5kQ29uc3RhbnREb3Vi
bGUoVmlydHVhbFJlZ2lzdGVyKTsKICAgICAgICAgCi0gICAgICAgIHZvaWQgZW1pdExvYWREb3Vi
bGUoVmlydHVhbFJlZ2lzdGVyLCBGUFJlZ2lzdGVySUQgdmFsdWUpOwotICAgICAgICB2b2lkIGVt
aXRMb2FkSW50MzJUb0RvdWJsZShWaXJ0dWFsUmVnaXN0ZXIsIEZQUmVnaXN0ZXJJRCB2YWx1ZSk7
Ci0KICAgICAgICAgZW51bSBXcml0ZUJhcnJpZXJNb2RlIHsgVW5jb25kaXRpb25hbFdyaXRlQmFy
cmllciwgU2hvdWxkRmlsdGVyQmFzZSwgU2hvdWxkRmlsdGVyVmFsdWUsIFNob3VsZEZpbHRlckJh
c2VBbmRWYWx1ZSB9OwogICAgICAgICAvLyB2YWx1ZSByZWdpc3RlciBpbiB3cml0ZSBiYXJyaWVy
IGlzIHVzZWQgYmVmb3JlIGFueSBzY3JhdGNoIHJlZ2lzdGVycwogICAgICAgICAvLyBzbyBtYXkg
c2FmZWx5IGJlIHRoZSBzYW1lIGFzIGVpdGhlciBvZiB0aGUgc2NyYXRjaCByZWdpc3RlcnMuCkBA
IC00MTcsNiArNDE0LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAjaWYgVVNFKEpTVkFMVUUzMl82NCkK
ICAgICAgICAgYm9vbCBnZXRPcGVyYW5kQ29uc3RhbnRJbnQoVmlydHVhbFJlZ2lzdGVyIG9wMSwg
VmlydHVhbFJlZ2lzdGVyIG9wMiwgVmlydHVhbFJlZ2lzdGVyJiBvcCwgaW50MzJfdCYgY29uc3Rh
bnQpOwogCisgICAgICAgIHZvaWQgZW1pdExvYWREb3VibGUoVmlydHVhbFJlZ2lzdGVyLCBGUFJl
Z2lzdGVySUQgdmFsdWUpOwogICAgICAgICB2b2lkIGVtaXRMb2FkVGFnKFZpcnR1YWxSZWdpc3Rl
ciwgUmVnaXN0ZXJJRCB0YWcpOwogICAgICAgICB2b2lkIGVtaXRMb2FkUGF5bG9hZChWaXJ0dWFs
UmVnaXN0ZXIsIFJlZ2lzdGVySUQgcGF5bG9hZCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9qaXQvSklUSW5saW5lcy5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9K
SVRJbmxpbmVzLmgKaW5kZXggMTY0M2JkYTViOWExM2I0ODQyNjZlZjY3NmExM2NiMzgxNDg3YWQ1
MC4uMjNmZjVjODFjMWMwMzIyMmY5MTJhNDk5MzFmMjgzNmRhZGNmYWNiNyAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9KSVRJbmxpbmVzLmgKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2ppdC9KSVRJbmxpbmVzLmgKQEAgLTM3Nyw2ICszNzcsMTUgQEAgQUxXQVlTX0lO
TElORSB2b2lkIEpJVDo6ZW1pdEluaXRSZWdpc3RlcihWaXJ0dWFsUmVnaXN0ZXIgZHN0KQogCiAj
aWYgVVNFKEpTVkFMVUUzMl82NCkKIAoraW5saW5lIHZvaWQgSklUOjplbWl0TG9hZERvdWJsZShW
aXJ0dWFsUmVnaXN0ZXIgcmVnLCBGUFJlZ2lzdGVySUQgdmFsdWUpCit7CisgICAgaWYgKHJlZy5p
c0NvbnN0YW50KCkpIHsKKyAgICAgICAgV3JpdGVCYXJyaWVyPFVua25vd24+JiBpbkNvbnN0YW50
UG9vbCA9IG1fY29kZUJsb2NrLT5jb25zdGFudFJlZ2lzdGVyKHJlZyk7CisgICAgICAgIGxvYWRE
b3VibGUoVHJ1c3RlZEltbVB0cigmaW5Db25zdGFudFBvb2wpLCB2YWx1ZSk7CisgICAgfSBlbHNl
CisgICAgICAgIGxvYWREb3VibGUoYWRkcmVzc0ZvcihyZWcpLCB2YWx1ZSk7Cit9CisKIGlubGlu
ZSB2b2lkIEpJVDo6ZW1pdExvYWRUYWcoVmlydHVhbFJlZ2lzdGVyIHJlZywgUmVnaXN0ZXJJRCB0
YWcpCiB7CiAgICAgaWYgKHJlZy5pc0NvbnN0YW50KCkpIHsKQEAgLTQ0MCwyNSArNDQ5LDYgQEAg
aW5saW5lIHZvaWQgSklUOjplbWl0TG9hZDIoVmlydHVhbFJlZ2lzdGVyIHJlZzEsIFJlZ2lzdGVy
SUQgdGFnMSwgUmVnaXN0ZXJJRCBwYXkKICAgICBlbWl0TG9hZChyZWcxLCB0YWcxLCBwYXlsb2Fk
MSk7CiB9CiAKLWlubGluZSB2b2lkIEpJVDo6ZW1pdExvYWREb3VibGUoVmlydHVhbFJlZ2lzdGVy
IHJlZywgRlBSZWdpc3RlcklEIHZhbHVlKQotewotICAgIGlmIChyZWcuaXNDb25zdGFudCgpKSB7
Ci0gICAgICAgIFdyaXRlQmFycmllcjxVbmtub3duPiYgaW5Db25zdGFudFBvb2wgPSBtX2NvZGVC
bG9jay0+Y29uc3RhbnRSZWdpc3RlcihyZWcpOwotICAgICAgICBsb2FkRG91YmxlKFRydXN0ZWRJ
bW1QdHIoJmluQ29uc3RhbnRQb29sKSwgdmFsdWUpOwotICAgIH0gZWxzZQotICAgICAgICBsb2Fk
RG91YmxlKGFkZHJlc3NGb3IocmVnKSwgdmFsdWUpOwotfQotCi1pbmxpbmUgdm9pZCBKSVQ6OmVt
aXRMb2FkSW50MzJUb0RvdWJsZShWaXJ0dWFsUmVnaXN0ZXIgcmVnLCBGUFJlZ2lzdGVySUQgdmFs
dWUpCi17Ci0gICAgaWYgKHJlZy5pc0NvbnN0YW50KCkpIHsKLSAgICAgICAgV3JpdGVCYXJyaWVy
PFVua25vd24+JiBpbkNvbnN0YW50UG9vbCA9IG1fY29kZUJsb2NrLT5jb25zdGFudFJlZ2lzdGVy
KHJlZyk7Ci0gICAgICAgIGNoYXIqIGJ5dGVQb2ludGVyID0gcmVpbnRlcnByZXRfY2FzdDxjaGFy
Kj4oJmluQ29uc3RhbnRQb29sKTsKLSAgICAgICAgY29udmVydEludDMyVG9Eb3VibGUoQWJzb2x1
dGVBZGRyZXNzKGJ5dGVQb2ludGVyICsgT0JKRUNUX09GRlNFVE9GKEpTVmFsdWUsIHUuYXNCaXRz
LnBheWxvYWQpKSwgdmFsdWUpOwotICAgIH0gZWxzZQotICAgICAgICBjb252ZXJ0SW50MzJUb0Rv
dWJsZShwYXlsb2FkRm9yKHJlZyksIHZhbHVlKTsKLX0KLQogaW5saW5lIHZvaWQgSklUOjplbWl0
U3RvcmUoVmlydHVhbFJlZ2lzdGVyIHJlZywgUmVnaXN0ZXJJRCB0YWcsIFJlZ2lzdGVySUQgcGF5
bG9hZCwgUmVnaXN0ZXJJRCBiYXNlKQogewogICAgIHN0b3JlMzIocGF5bG9hZCwgcGF5bG9hZEZv
cihyZWcsIGJhc2UpKTsKQEAgLTYxNCwyNCArNjA0LDYgQEAgQUxXQVlTX0lOTElORSB2b2lkIEpJ
VDo6ZW1pdEp1bXBTbG93Q2FzZUlmTm90SlNDZWxsKFJlZ2lzdGVySUQgcmVnLCBWaXJ0dWFsUmVn
aXMKICAgICAgICAgZW1pdEp1bXBTbG93Q2FzZUlmTm90SlNDZWxsKHJlZyk7CiB9CiAKLWlubGlu
ZSB2b2lkIEpJVDo6ZW1pdExvYWREb3VibGUoVmlydHVhbFJlZ2lzdGVyIHJlZywgRlBSZWdpc3Rl
cklEIHZhbHVlKQotewotICAgIGlmIChyZWcuaXNDb25zdGFudCgpKSB7Ci0gICAgICAgIFdyaXRl
QmFycmllcjxVbmtub3duPiYgaW5Db25zdGFudFBvb2wgPSBtX2NvZGVCbG9jay0+Y29uc3RhbnRS
ZWdpc3RlcihyZWcpOwotICAgICAgICBsb2FkRG91YmxlKFRydXN0ZWRJbW1QdHIoJmluQ29uc3Rh
bnRQb29sKSwgdmFsdWUpOwotICAgIH0gZWxzZQotICAgICAgICBsb2FkRG91YmxlKGFkZHJlc3NG
b3IocmVnKSwgdmFsdWUpOwotfQotCi1pbmxpbmUgdm9pZCBKSVQ6OmVtaXRMb2FkSW50MzJUb0Rv
dWJsZShWaXJ0dWFsUmVnaXN0ZXIgcmVnLCBGUFJlZ2lzdGVySUQgdmFsdWUpCi17Ci0gICAgaWYg
KHJlZy5pc0NvbnN0YW50KCkpIHsKLSAgICAgICAgQVNTRVJUKGlzT3BlcmFuZENvbnN0YW50SW50
KHJlZykpOwotICAgICAgICBjb252ZXJ0SW50MzJUb0RvdWJsZShJbW0zMihnZXRDb25zdGFudE9w
ZXJhbmQocmVnKS5hc0ludDMyKCkpLCB2YWx1ZSk7Ci0gICAgfSBlbHNlCi0gICAgICAgIGNvbnZl
cnRJbnQzMlRvRG91YmxlKGFkZHJlc3NGb3IocmVnKSwgdmFsdWUpOwotfQotCiBBTFdBWVNfSU5M
SU5FIEpJVDo6UGF0Y2hhYmxlSnVtcCBKSVQ6OmVtaXRQYXRjaGFibGVKdW1wSWZOb3RJbnQoUmVn
aXN0ZXJJRCByZWcpCiB7CiAgICAgcmV0dXJuIHBhdGNoYWJsZUJyYW5jaDY0KEJlbG93LCByZWcs
IG51bWJlclRhZ1JlZ2lzdGVyKTsK
</data>
<flag name="review"
          id="405659"
          type_id="1"
          status="+"
          setter="mark.lam"
    />
          </attachment>
      

    </bug>

</bugzilla>