<?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>142871</bug_id>
          
          <creation_ts>2015-03-19 12:16:47 -0700</creation_ts>
          <short_desc>DFGAllocator should use bmalloc&apos;s aligned allocator.</short_desc>
          <delta_ts>2015-03-19 14:20:14 -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>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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Andreas Kling">kling</reporter>
          <assigned_to name="Andreas Kling">kling</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>ggaren</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1078579</commentid>
    <comment_count>0</comment_count>
    <who name="Andreas Kling">kling</who>
    <bug_when>2015-03-19 12:16:47 -0700</bug_when>
    <thetext>This is the last client of PageAllocationAligned.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1078590</commentid>
    <comment_count>1</comment_count>
      <attachid>249049</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2015-03-19 12:30:13 -0700</bug_when>
    <thetext>Created attachment 249049
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1078609</commentid>
    <comment_count>2</comment_count>
      <attachid>249049</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2015-03-19 13:20:47 -0700</bug_when>
    <thetext>Comment on attachment 249049
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1078631</commentid>
    <comment_count>3</comment_count>
      <attachid>249049</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-03-19 14:20:10 -0700</bug_when>
    <thetext>Comment on attachment 249049
Patch

Clearing flags on attachment: 249049

Committed r181758: &lt;http://trac.webkit.org/changeset/181758&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1078632</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-03-19 14:20:14 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>249049</attachid>
            <date>2015-03-19 12:30:13 -0700</date>
            <delta_ts>2015-03-19 14:20:10 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-142871.diff</filename>
            <type>text/plain</type>
            <size>18392</size>
            <attacher name="Andreas Kling">kling</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQ2hhbmdlTG9nCmluZGV4IDhkMzBkOTQuLjQxNjZiNzIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDE1LTAzLTE5ICBBbmRyZWFzIEtsaW5n
ICA8YWtsaW5nQGFwcGxlLmNvbT4KKworICAgICAgICBERkdBbGxvY2F0b3Igc2hvdWxkIHVzZSBi
bWFsbG9jJ3MgYWxpZ25lZCBhbGxvY2F0b3IuCisgICAgICAgIDxodHRwczovL3dlYmtpdC5vcmcv
Yi8xNDI4NzE+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgU3dpdGNoIERGR0FsbG9jYXRvciB0byB1c2luZyBibWFsbG9jIHRocm91Z2ggZmFzdEFsaWdu
ZWRNYWxsb2MoKS4KKworICAgICAgICAqIGRmZy9ERkdBbGxvY2F0b3IuaDoKKyAgICAgICAgKEpT
Qzo6REZHOjpBbGxvY2F0b3I8VD46OmFsbG9jYXRlU2xvdyk6CisgICAgICAgIChKU0M6OkRGRzo6
QWxsb2NhdG9yPFQ+OjpmcmVlUmVnaW9uc1N0YXJ0aW5nQXQpOgorICAgICAgICAqIGhlYXAvQ29w
aWVkU3BhY2UuaDoKKyAgICAgICAgKiBoZWFwL01hcmtlZEJsb2NrLmg6CisgICAgICAgICogaGVh
cC9NYXJrZWRTcGFjZS5oOgorCiAyMDE1LTAzLTE4ICBKb3NlcGggUGVjb3Jhcm8gIDxwZWNvcmFy
b0BhcHBsZS5jb20+CiAKICAgICAgICAgRVM2IENsYXNzZXM6IEV4dGVuZHMgc2hvdWxkIGFjY2Vw
dCBhbiBleHByZXNzaW9uIHdpdGhvdXQgcGFyZW50aGVzaXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9kZmcvREZHQWxsb2NhdG9yLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
ZGZnL0RGR0FsbG9jYXRvci5oCmluZGV4IDA5ZmViOTQuLmYzODBkZjAgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHQWxsb2NhdG9yLmgKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2RmZy9ERkdBbGxvY2F0b3IuaApAQCAtMjksNyArMjksNiBAQAogI2lmIEVOQUJM
RShERkdfSklUKQogCiAjaW5jbHVkZSAiREZHQ29tbW9uLmgiCi0jaW5jbHVkZSA8d3RmL1BhZ2VB
bGxvY2F0aW9uQWxpZ25lZC5oPgogI2luY2x1ZGUgPHd0Zi9TdGRMaWJFeHRyYXMuaD4KIAogbmFt
ZXNwYWNlIEpTQyB7IG5hbWVzcGFjZSBERkcgewpAQCAtNzAsNyArNjksNyBAQCBwcml2YXRlOgog
ICAgICAgICBib29sIGlzSW5UaGlzUmVnaW9uKGNvbnN0IFQqIHBvaW50ZXIpIHsgcmV0dXJuIHN0
YXRpY19jYXN0PHVuc2lnbmVkPihwb2ludGVyIC0gZGF0YSgpKSA8IG51bWJlck9mVGhpbmdzUGVy
UmVnaW9uKCk7IH0KICAgICAgICAgc3RhdGljIFJlZ2lvbiogcmVnaW9uRm9yKGNvbnN0IFQqIHBv
aW50ZXIpIHsgcmV0dXJuIGJpdHdpc2VfY2FzdDxSZWdpb24qPihiaXR3aXNlX2Nhc3Q8dWludHB0
cl90Pihwb2ludGVyKSAmIH4oc2l6ZSgpIC0gMSkpOyB9CiAgICAgICAgIAotICAgICAgICBQYWdl
QWxsb2NhdGlvbkFsaWduZWQgbV9hbGxvY2F0aW9uOworICAgICAgICB2b2lkKiBtX2FsbG9jYXRp
b247CiAgICAgICAgIEFsbG9jYXRvciogbV9hbGxvY2F0b3I7CiAgICAgICAgIFJlZ2lvbiogbV9u
ZXh0OwogICAgIH07CkBAIC0yMDEsMTEgKzIwMCw5IEBAIHZvaWQqIEFsbG9jYXRvcjxUPjo6YWxs
b2NhdGVTbG93KCkKICAgICAKICAgICBpZiAobG9nQ29tcGlsYXRpb25DaGFuZ2VzKCkpCiAgICAg
ICAgIGRhdGFMb2coIkFsbG9jYXRpbmcgYW5vdGhlciBhbGxvY2F0b3IgcmVnaW9uLlxuIik7Ci0g
ICAgCi0gICAgUGFnZUFsbG9jYXRpb25BbGlnbmVkIGFsbG9jYXRpb24gPSBQYWdlQWxsb2NhdGlv
bkFsaWduZWQ6OmFsbG9jYXRlKFJlZ2lvbjo6c2l6ZSgpLCBSZWdpb246OnNpemUoKSwgT1NBbGxv
Y2F0b3I6OkpTR0NIZWFwUGFnZXMpOwotICAgIGlmICghc3RhdGljX2Nhc3Q8Ym9vbD4oYWxsb2Nh
dGlvbikpCi0gICAgICAgIENSQVNIKCk7Ci0gICAgUmVnaW9uKiByZWdpb24gPSBzdGF0aWNfY2Fz
dDxSZWdpb24qPihhbGxvY2F0aW9uLmJhc2UoKSk7CisKKyAgICB2b2lkKiBhbGxvY2F0aW9uID0g
ZmFzdEFsaWduZWRNYWxsb2MoUmVnaW9uOjpzaXplKCksIFJlZ2lvbjo6c2l6ZSgpKTsKKyAgICBS
ZWdpb24qIHJlZ2lvbiA9IHN0YXRpY19jYXN0PFJlZ2lvbio+KGFsbG9jYXRpb24pOwogICAgIHJl
Z2lvbi0+bV9hbGxvY2F0aW9uID0gYWxsb2NhdGlvbjsKICAgICByZWdpb24tPm1fYWxsb2NhdG9y
ID0gdGhpczsKICAgICBzdGFydEJ1bXBpbmdJbihyZWdpb24pOwpAQCAtMjIyLDcgKzIxOSw3IEBA
IHZvaWQgQWxsb2NhdG9yPFQ+OjpmcmVlUmVnaW9uc1N0YXJ0aW5nQXQodHlwZW5hbWUgQWxsb2Nh
dG9yPFQ+OjpSZWdpb24qIHJlZ2lvbikKIHsKICAgICB3aGlsZSAocmVnaW9uKSB7CiAgICAgICAg
IFJlZ2lvbiogbmV4dFJlZ2lvbiA9IHJlZ2lvbi0+bV9uZXh0OwotICAgICAgICByZWdpb24tPm1f
YWxsb2NhdGlvbi5kZWFsbG9jYXRlKCk7CisgICAgICAgIGZhc3RBbGlnbmVkRnJlZShyZWdpb24t
Pm1fYWxsb2NhdGlvbik7CiAgICAgICAgIHJlZ2lvbiA9IG5leHRSZWdpb247CiAgICAgfQogfQpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvQ29waWVkU3BhY2UuaCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0NvcGllZFNwYWNlLmgKaW5kZXggMzBiYTczNi4uYjNi
MjRkNiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvQ29waWVkU3BhY2Uu
aAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9Db3BpZWRTcGFjZS5oCkBAIC0zNSw3
ICszNSw2IEBACiAjaW5jbHVkZSA8d3RmL0RvdWJseUxpbmtlZExpc3QuaD4KICNpbmNsdWRlIDx3
dGYvSGFzaFNldC5oPgogI2luY2x1ZGUgPHd0Zi9PU0FsbG9jYXRvci5oPgotI2luY2x1ZGUgPHd0
Zi9QYWdlQWxsb2NhdGlvbkFsaWduZWQuaD4KICNpbmNsdWRlIDx3dGYvUGFnZUJsb2NrLmg+CiAj
aW5jbHVkZSA8d3RmL1NwaW5Mb2NrLmg+CiAjaW5jbHVkZSA8d3RmL1N0ZExpYkV4dHJhcy5oPgpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvTWFya2VkQmxvY2suaCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL01hcmtlZEJsb2NrLmgKaW5kZXggOWVjMjgwYi4uNTc2
ZWQ1MiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvTWFya2VkQmxvY2su
aAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9NYXJrZWRCbG9jay5oCkBAIC0zMCw3
ICszMCw2IEBACiAjaW5jbHVkZSA8d3RmL0RhdGFMb2cuaD4KICNpbmNsdWRlIDx3dGYvRG91Ymx5
TGlua2VkTGlzdC5oPgogI2luY2x1ZGUgPHd0Zi9IYXNoRnVuY3Rpb25zLmg+Ci0jaW5jbHVkZSA8
d3RmL1BhZ2VBbGxvY2F0aW9uQWxpZ25lZC5oPgogI2luY2x1ZGUgPHd0Zi9TdGRMaWJFeHRyYXMu
aD4KICNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9oZWFwL01hcmtlZFNwYWNlLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9N
YXJrZWRTcGFjZS5oCmluZGV4IDE4MzNmOWIuLjlmMzJlZTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9oZWFwL01hcmtlZFNwYWNlLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL2hlYXAvTWFya2VkU3BhY2UuaApAQCAtMjcsNyArMjcsNiBAQAogI2luY2x1ZGUgIk1hcmtl
ZEJsb2NrLmgiCiAjaW5jbHVkZSAiTWFya2VkQmxvY2tTZXQuaCIKICNpbmNsdWRlIDxhcnJheT4K
LSNpbmNsdWRlIDx3dGYvUGFnZUFsbG9jYXRpb25BbGlnbmVkLmg+CiAjaW5jbHVkZSA8d3RmL0Jp
dG1hcC5oPgogI2luY2x1ZGUgPHd0Zi9Eb3VibHlMaW5rZWRMaXN0Lmg+CiAjaW5jbHVkZSA8d3Rm
L0hhc2hTZXQuaD4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nIGIvU291cmNlL1dU
Ri9DaGFuZ2VMb2cKaW5kZXggNGJhMGFhYS4uMTgzOTQ2MSAxMDA2NDQKLS0tIGEvU291cmNlL1dU
Ri9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dURi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOSBAQAor
MjAxNS0wMy0xOSAgQW5kcmVhcyBLbGluZyAgPGFrbGluZ0BhcHBsZS5jb20+CisKKyAgICAgICAg
REZHQWxsb2NhdG9yIHNob3VsZCB1c2UgYm1hbGxvYydzIGFsaWduZWQgYWxsb2NhdG9yLgorICAg
ICAgICA8aHR0cHM6Ly93ZWJraXQub3JnL2IvMTQyODcxPgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFJlbW92ZSBQYWdlQWxsb2NhdGlvbkFsaWduZWQg
c2luY2UgaXQgaGFzIG5vIG1vcmUgY2xpZW50cy4KKworICAgICAgICAqIFdURi52Y3hwcm9qL1dU
Ri52Y3hwcm9qOgorICAgICAgICAqIFdURi52Y3hwcm9qL1dURi52Y3hwcm9qLmZpbHRlcnM6Cisg
ICAgICAgICogV1RGLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogd3RmL0NN
YWtlTGlzdHMudHh0OgorICAgICAgICAqIHd0Zi9QYWdlQWxsb2NhdGlvbkFsaWduZWQuY3BwOiBS
ZW1vdmVkLgorICAgICAgICAqIHd0Zi9QYWdlQWxsb2NhdGlvbkFsaWduZWQuaDogUmVtb3ZlZC4K
KwogMjAxNS0wMy0xOCAgRGhpIEF1cnJhaG1hbiAgPGRpb3JhaG1hbkByb2NreWJhcnMuY29tPgog
CiAgICAgICAgIEZpeCBTdHJpbmdWaWV3IG1pc3BsYWNlZCBpbXBsZW1lbnRhdGlvbnMgYWZ0ZXIg
cjE4MTUyNSBhbmQgcjE4MTU1OApkaWZmIC0tZ2l0IGEvU291cmNlL1dURi9XVEYudmN4cHJvai9X
VEYudmN4cHJvaiBiL1NvdXJjZS9XVEYvV1RGLnZjeHByb2ovV1RGLnZjeHByb2oKaW5kZXggZDVl
YjU1NS4uNWQxZGI3ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dURi9XVEYudmN4cHJvai9XVEYudmN4
cHJvagorKysgYi9Tb3VyY2UvV1RGL1dURi52Y3hwcm9qL1dURi52Y3hwcm9qCkBAIC0xMTMsNyAr
MTEzLDYgQEAKICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHd0ZlxOdW1iZXJPZkNvcmVzLmNw
cCIgLz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHd0ZlxPU0FsbG9jYXRvcldpbi5jcHAi
IC8+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlx3dGZcT1NSYW5kb21Tb3VyY2UuY3BwIiAv
PgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cd3RmXFBhZ2VBbGxvY2F0aW9uQWxpZ25lZC5j
cHAiIC8+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlx3dGZcUGFnZUJsb2NrLmNwcCIgLz4K
ICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHd0ZlxQYXJhbGxlbEpvYnNHZW5lcmljLmNwcCIg
Lz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHd0ZlxQcmludFN0cmVhbS5jcHAiIC8+CkBA
IC0yNDIsNyArMjQxLDYgQEAKICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHd0ZlxPd25QdHJD
b21tb24uaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHd0ZlxQYWNrZWRJbnRWZWN0
b3IuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHd0ZlxQYWdlQWxsb2NhdGlvbi5o
IiAvPgotICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cd3RmXFBhZ2VBbGxvY2F0aW9uQWxpZ25l
ZC5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cd3RmXFBhZ2VCbG9jay5oIiAvPgog
ICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cd3RmXFBhZ2VSZXNlcnZhdGlvbi5oIiAvPgogICAg
IDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cd3RmXFBhcmFsbGVsSm9icy5oIiAvPgpAQCAtNzc1LDQg
Kzc3Myw0IEBACiAgIDxJbXBvcnQgUHJvamVjdD0iJChWQ1RhcmdldHNQYXRoKVxNaWNyb3NvZnQu
Q3BwLnRhcmdldHMiIC8+CiAgIDxJbXBvcnRHcm91cCBMYWJlbD0iRXh0ZW5zaW9uVGFyZ2V0cyI+
CiAgIDwvSW1wb3J0R3JvdXA+Ci08L1Byb2plY3Q+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmls
ZQorPC9Qcm9qZWN0PgpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi9XVEYudmN4cHJvai9XVEYudmN4
cHJvai5maWx0ZXJzIGIvU291cmNlL1dURi9XVEYudmN4cHJvai9XVEYudmN4cHJvai5maWx0ZXJz
CmluZGV4IDNiMWRiY2MuLjU2MTk3MjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvV1RGLnZjeHBy
b2ovV1RGLnZjeHByb2ouZmlsdGVycworKysgYi9Tb3VyY2UvV1RGL1dURi52Y3hwcm9qL1dURi52
Y3hwcm9qLmZpbHRlcnMKQEAgLTE2OCw5ICsxNjgsNiBAQAogICAgIDxDbENvbXBpbGUgSW5jbHVk
ZT0iLi5cd3RmXE9TUmFuZG9tU291cmNlLmNwcCI+CiAgICAgICA8RmlsdGVyPnd0ZjwvRmlsdGVy
PgogICAgIDwvQ2xDb21waWxlPgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cd3RmXFBhZ2VB
bGxvY2F0aW9uQWxpZ25lZC5jcHAiPgotICAgICAgPEZpbHRlcj53dGY8L0ZpbHRlcj4KLSAgICA8
L0NsQ29tcGlsZT4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHd0ZlxQYWdlQmxvY2suY3Bw
Ij4KICAgICAgIDxGaWx0ZXI+d3RmPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+CkBAIC01NDAs
OSArNTM3LDYgQEAKICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHd0ZlxQYWdlQWxsb2NhdGlv
bi5oIj4KICAgICAgIDxGaWx0ZXI+d3RmPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1ZGU+Ci0gICAg
PENsSW5jbHVkZSBJbmNsdWRlPSIuLlx3dGZcUGFnZUFsbG9jYXRpb25BbGlnbmVkLmgiPgotICAg
ICAgPEZpbHRlcj53dGY8L0ZpbHRlcj4KLSAgICA8L0NsSW5jbHVkZT4KICAgICA8Q2xJbmNsdWRl
IEluY2x1ZGU9Ii4uXHd0ZlxQYWdlQmxvY2suaCI+CiAgICAgICA8RmlsdGVyPnd0ZjwvRmlsdGVy
PgogICAgIDwvQ2xJbmNsdWRlPgpAQCAtNzMwLDQgKzcyNCw0IEBACiAgICAgPE5vbmUgSW5jbHVk
ZT0iV1RGUG9zdEJ1aWxkLmNtZCIgLz4KICAgICA8Tm9uZSBJbmNsdWRlPSJXVEZQcmVCdWlsZC5j
bWQiIC8+CiAgIDwvSXRlbUdyb3VwPgotPC9Qcm9qZWN0PgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9m
IGZpbGUKKzwvUHJvamVjdD4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvV1RGLnhjb2RlcHJvai9w
cm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV1RGL1dURi54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
CmluZGV4IGE2ZWUxZTguLmM3MTYyNGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvV1RGLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dURi9XVEYueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvagpAQCAtMTg5LDggKzE4OSw2IEBACiAJCUE4QTQ3M0ZEMTUxQTgyNUIwMDQxMjNG
RiAvKiBPd25QdHJDb21tb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEE4QTQ3MkRFMTUxQTgyNUIwMDQxMjNGRiAvKiBPd25QdHJDb21tb24uaCAqLzsg
fTsKIAkJQThBNDczRkUxNTFBODI1QjAwNDEyM0ZGIC8qIFBhY2tlZEludFZlY3Rvci5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQThBNDcyREYxNTFBODI1
QjAwNDEyM0ZGIC8qIFBhY2tlZEludFZlY3Rvci5oICovOyB9OwogCQlBOEE0NzNGRjE1MUE4MjVC
MDA0MTIzRkYgLyogUGFnZUFsbG9jYXRpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEE4QTQ3MkUwMTUxQTgyNUIwMDQxMjNGRiAvKiBQYWdlQWxsb2Nh
dGlvbi5oICovOyB9OwotCQlBOEE0NzQwMDE1MUE4MjVCMDA0MTIzRkYgLyogUGFnZUFsbG9jYXRp
b25BbGlnbmVkLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEE4QTQ3MkUxMTUxQTgyNUIwMDQxMjNGRiAvKiBQYWdlQWxsb2NhdGlvbkFsaWduZWQuY3Bw
ICovOyB9OwotCQlBOEE0NzQwMTE1MUE4MjVCMDA0MTIzRkYgLyogUGFnZUFsbG9jYXRpb25BbGln
bmVkLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBOEE0
NzJFMjE1MUE4MjVCMDA0MTIzRkYgLyogUGFnZUFsbG9jYXRpb25BbGlnbmVkLmggKi87IH07CiAJ
CUE4QTQ3NDAyMTUxQTgyNUIwMDQxMjNGRiAvKiBQYWdlQmxvY2suY3BwIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQThBNDcyRTMxNTFBODI1QjAwNDEyM0ZG
IC8qIFBhZ2VCbG9jay5jcHAgKi87IH07CiAJCUE4QTQ3NDAzMTUxQTgyNUIwMDQxMjNGRiAvKiBQ
YWdlQmxvY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEE4QTQ3MkU0MTUxQTgyNUIwMDQxMjNGRiAvKiBQYWdlQmxvY2suaCAqLzsgfTsKIAkJQThBNDc0
MDQxNTFBODI1QjAwNDEyM0ZGIC8qIFBhZ2VSZXNlcnZhdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQThBNDcyRTUxNTFBODI1QjAwNDEyM0ZGIC8q
IFBhZ2VSZXNlcnZhdGlvbi5oICovOyB9OwpAQCAtNDgyLDggKzQ4MCw2IEBACiAJCUE4QTQ3MkRF
MTUxQTgyNUIwMDQxMjNGRiAvKiBPd25QdHJDb21tb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gT3duUHRyQ29tbW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CUE4QTQ3MkRGMTUxQTgyNUIwMDQxMjNGRiAvKiBQYWNrZWRJbnRWZWN0b3IuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGFja2VkSW50VmVjdG9yLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCUE4QTQ3MkUwMTUxQTgyNUIwMDQxMjNGRiAvKiBQYWdlQWxsb2NhdGlv
bi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQYWdlQWxsb2NhdGlvbi5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQlBOEE0NzJFMTE1MUE4MjVCMDA0MTIzRkYgLyog
UGFnZUFsbG9jYXRpb25BbGlnbmVkLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IFBhZ2VBbGxvY2F0aW9uQWxpZ25lZC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07Ci0JCUE4QTQ3MkUyMTUxQTgyNUIwMDQxMjNGRiAvKiBQYWdlQWxsb2NhdGlvbkFsaWduZWQu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGFnZUFsbG9jYXRpb25BbGlnbmVk
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUE4QTQ3MkUzMTUxQTgyNUIwMDQxMjNG
RiAvKiBQYWdlQmxvY2suY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
UGFnZUJsb2NrLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQThBNDcyRTQxNTFB
ODI1QjAwNDEyM0ZGIC8qIFBhZ2VCbG9jay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBQYWdlQmxvY2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQThBNDcyRTUx
NTFBODI1QjAwNDEyM0ZGIC8qIFBhZ2VSZXNlcnZhdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBQYWdlUmVzZXJ2YXRpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKQEAgLTgwNCw4ICs4MDAsNiBAQAogCQkJCUE4QTQ3MkRFMTUxQTgyNUIwMDQxMjNGRiAvKiBP
d25QdHJDb21tb24uaCAqLywKIAkJCQlBOEE0NzJERjE1MUE4MjVCMDA0MTIzRkYgLyogUGFja2Vk
SW50VmVjdG9yLmggKi8sCiAJCQkJQThBNDcyRTAxNTFBODI1QjAwNDEyM0ZGIC8qIFBhZ2VBbGxv
Y2F0aW9uLmggKi8sCi0JCQkJQThBNDcyRTExNTFBODI1QjAwNDEyM0ZGIC8qIFBhZ2VBbGxvY2F0
aW9uQWxpZ25lZC5jcHAgKi8sCi0JCQkJQThBNDcyRTIxNTFBODI1QjAwNDEyM0ZGIC8qIFBhZ2VB
bGxvY2F0aW9uQWxpZ25lZC5oICovLAogCQkJCUE4QTQ3MkUzMTUxQTgyNUIwMDQxMjNGRiAvKiBQ
YWdlQmxvY2suY3BwICovLAogCQkJCUE4QTQ3MkU0MTUxQTgyNUIwMDQxMjNGRiAvKiBQYWdlQmxv
Y2suaCAqLywKIAkJCQlBOEE0NzJFNTE1MUE4MjVCMDA0MTIzRkYgLyogUGFnZVJlc2VydmF0aW9u
LmggKi8sCkBAIC0xMTQzLDcgKzExMzcsNiBAQAogCQkJCTBGQjE0RTFCMTgxMEUxREMwMDlCNkI0
RCAvKiBCYWdUb0hhc2hNYXAuaCBpbiBIZWFkZXJzICovLAogCQkJCUE4QTQ3M0ZFMTUxQTgyNUIw
MDQxMjNGRiAvKiBQYWNrZWRJbnRWZWN0b3IuaCBpbiBIZWFkZXJzICovLAogCQkJCUE4QTQ3M0ZG
MTUxQTgyNUIwMDQxMjNGRiAvKiBQYWdlQWxsb2NhdGlvbi5oIGluIEhlYWRlcnMgKi8sCi0JCQkJ
QThBNDc0MDExNTFBODI1QjAwNDEyM0ZGIC8qIFBhZ2VBbGxvY2F0aW9uQWxpZ25lZC5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJQThBNDc0MDMxNTFBODI1QjAwNDEyM0ZGIC8qIFBhZ2VCbG9jay5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJQThBNDc0MDQxNTFBODI1QjAwNDEyM0ZGIC8qIFBhZ2VSZXNlcnZh
dGlvbi5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQThBNDc0MDUxNTFBODI1QjAwNDEyM0ZGIC8qIFBh
cmFsbGVsSm9icy5oIGluIEhlYWRlcnMgKi8sCkBAIC0xMzY0LDcgKzEzNTcsNiBAQAogCQkJCUE4
QTQ3M0Y3MTUxQTgyNUIwMDQxMjNGRiAvKiBPU0FsbG9jYXRvclBvc2l4LmNwcCBpbiBTb3VyY2Vz
ICovLAogCQkJCTkzRjE5OTNFMTlENzk1OEQwMEMyMzkwQiAvKiBTdHJpbmdWaWV3LmNwcCBpbiBT
b3VyY2VzICovLAogCQkJCUE4QTQ3M0Y5MTUxQTgyNUIwMDQxMjNGRiAvKiBPU1JhbmRvbVNvdXJj
ZS5jcHAgaW4gU291cmNlcyAqLywKLQkJCQlBOEE0NzQwMDE1MUE4MjVCMDA0MTIzRkYgLyogUGFn
ZUFsbG9jYXRpb25BbGlnbmVkLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUE4QTQ3NDAyMTUxQTgy
NUIwMDQxMjNGRiAvKiBQYWdlQmxvY2suY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMEY5RDMzNjIx
NjVEQkE3MzAwNUFEMzg3IC8qIFByaW50U3RyZWFtLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTE0
M0Y2MTFGMTU2NUYwRjkwMERCNTE0QSAvKiBSQU1TaXplLmNwcCBpbiBTb3VyY2VzICovLApkaWZm
IC0tZ2l0IGEvU291cmNlL1dURi93dGYvQ01ha2VMaXN0cy50eHQgYi9Tb3VyY2UvV1RGL3d0Zi9D
TWFrZUxpc3RzLnR4dAppbmRleCA3OWUwNTlmLi4xYjEyYTY4IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V1RGL3d0Zi9DTWFrZUxpc3RzLnR4dAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9DTWFrZUxpc3RzLnR4
dApAQCAtNTksNyArNTksNiBAQCBzZXQoV1RGX0hFQURFUlMKICAgICBPd25QdHIuaAogICAgIE93
blB0ckNvbW1vbi5oCiAgICAgUGFnZUFsbG9jYXRpb24uaAotICAgIFBhZ2VBbGxvY2F0aW9uQWxp
Z25lZC5oCiAgICAgUGFnZUJsb2NrLmgKICAgICBQYWdlUmVzZXJ2YXRpb24uaAogICAgIFBhcmFs
bGVsSm9icy5oCkBAIC0xNjUsNyArMTY0LDYgQEAgc2V0KFdURl9TT1VSQ0VTCiAgICAgTWV0YUFs
bG9jYXRvci5jcHAKICAgICBOdW1iZXJPZkNvcmVzLmNwcAogICAgIE9TUmFuZG9tU291cmNlLmNw
cAotICAgIFBhZ2VBbGxvY2F0aW9uQWxpZ25lZC5jcHAKICAgICBQYWdlQmxvY2suY3BwCiAgICAg
UGFyYWxsZWxKb2JzR2VuZXJpYy5jcHAKICAgICBQcmludFN0cmVhbS5jcHAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XVEYvd3RmL1BhZ2VBbGxvY2F0aW9uQWxpZ25lZC5jcHAgYi9Tb3VyY2UvV1RGL3d0
Zi9QYWdlQWxsb2NhdGlvbkFsaWduZWQuY3BwCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCBhYjU3NzI1Li4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XVEYvd3RmL1BhZ2VBbGxvY2F0aW9uQWxp
Z25lZC5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSw4NSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0
IChDKSAyMDEwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0g
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0g
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklC
VVRPUlMgYGBBUyBJUycnCi0gKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRT
IENPTlRSSUJVVE9SUwotICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgotICogQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKLSAqIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUwotICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KLSAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCi0gKiBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GCi0gKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2lu
Y2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIlBhZ2VBbGxvY2F0aW9uQWxpZ25lZC5oIgotCi1u
YW1lc3BhY2UgV1RGIHsKLQotUGFnZUFsbG9jYXRpb25BbGlnbmVkIFBhZ2VBbGxvY2F0aW9uQWxp
Z25lZDo6YWxsb2NhdGUoc2l6ZV90IHNpemUsIHNpemVfdCBhbGlnbm1lbnQsIE9TQWxsb2NhdG9y
OjpVc2FnZSB1c2FnZSwgYm9vbCB3cml0YWJsZSkKLXsKLSAgICBBU1NFUlQoaXNQYWdlQWxpZ25l
ZChzaXplKSk7Ci0gICAgQVNTRVJUKGlzUGFnZUFsaWduZWQoYWxpZ25tZW50KSk7Ci0gICAgQVNT
RVJUKGlzUG93ZXJPZlR3byhhbGlnbm1lbnQpKTsKLSAgICBBU1NFUlQoc2l6ZSA+PSBhbGlnbm1l
bnQpOwotICAgIHNpemVfdCBhbGlnbm1lbnRNYXNrID0gYWxpZ25tZW50IC0gMTsKLQotI2lmIE9T
KERBUldJTikKLSAgICBpbnQgZmxhZ3MgPSBWTV9GTEFHU19BTllXSEVSRTsKLSAgICBpZiAodXNh
Z2UgIT0gT1NBbGxvY2F0b3I6OlVua25vd25Vc2FnZSkKLSAgICAgICAgZmxhZ3MgfD0gdXNhZ2U7
Ci0gICAgaW50IHByb3RlY3Rpb24gPSBQUk9UX1JFQUQ7Ci0gICAgaWYgKHdyaXRhYmxlKQotICAg
ICAgICBwcm90ZWN0aW9uIHw9IFBST1RfV1JJVEU7Ci0KLSAgICB2bV9hZGRyZXNzX3QgYWRkcmVz
cyA9IDA7Ci0gICAgdm1fbWFwKGN1cnJlbnRfdGFzaygpLCAmYWRkcmVzcywgc2l6ZSwgYWxpZ25t
ZW50TWFzaywgZmxhZ3MsIE1FTU9SWV9PQkpFQ1RfTlVMTCwgMCwgRkFMU0UsIHByb3RlY3Rpb24s
IFBST1RfUkVBRCB8IFBST1RfV1JJVEUsIFZNX0lOSEVSSVRfREVGQVVMVCk7Ci0gICAgcmV0dXJu
IFBhZ2VBbGxvY2F0aW9uQWxpZ25lZChyZWludGVycHJldF9jYXN0PHZvaWQqPihhZGRyZXNzKSwg
c2l6ZSk7Ci0jZWxzZQotICAgIHNpemVfdCBhbGlnbm1lbnREZWx0YSA9IGFsaWdubWVudCAtIHBh
Z2VTaXplKCk7Ci0KLSAgICAvLyBSZXNlcmVydmUgd2l0aCBzdWZmY2llbnQgYWRkaXRpb25hbCBW
TSB0byBjb3JyZWN0bHkgYWxpZ24uCi0gICAgc2l6ZV90IHJlc2VydmF0aW9uU2l6ZSA9IHNpemUg
KyBhbGlnbm1lbnREZWx0YTsKLSAgICB2b2lkKiByZXNlcnZhdGlvbkJhc2UgPSBPU0FsbG9jYXRv
cjo6cmVzZXJ2ZVVuY29tbWl0dGVkKHJlc2VydmF0aW9uU2l6ZSwgdXNhZ2UsIHdyaXRhYmxlLCBm
YWxzZSk7Ci0KLSAgICAvLyBTZWxlY3QgYW4gYWxpZ25lZCByZWdpb24gd2l0aGluIHRoZSByZXNl
cnZhdGlvbiBhbmQgY29tbWl0LgotICAgIHZvaWQqIGFsaWduZWRCYXNlID0gcmVpbnRlcnByZXRf
Y2FzdDx1aW50cHRyX3Q+KHJlc2VydmF0aW9uQmFzZSkgJiBhbGlnbm1lbnRNYXNrCi0gICAgICAg
ID8gcmVpbnRlcnByZXRfY2FzdDx2b2lkKj4oKHJlaW50ZXJwcmV0X2Nhc3Q8dWludHB0cl90Pihy
ZXNlcnZhdGlvbkJhc2UpICYgfmFsaWdubWVudE1hc2spICsgYWxpZ25tZW50KQotICAgICAgICA6
IHJlc2VydmF0aW9uQmFzZTsKLSAgICBPU0FsbG9jYXRvcjo6Y29tbWl0KGFsaWduZWRCYXNlLCBz
aXplLCB3cml0YWJsZSwgZmFsc2UpOwotCi0gICAgcmV0dXJuIFBhZ2VBbGxvY2F0aW9uQWxpZ25l
ZChhbGlnbmVkQmFzZSwgc2l6ZSwgcmVzZXJ2YXRpb25CYXNlLCByZXNlcnZhdGlvblNpemUpOwot
I2VuZGlmCi19Ci0KLXZvaWQgUGFnZUFsbG9jYXRpb25BbGlnbmVkOjpkZWFsbG9jYXRlKCkKLXsK
LSAgICAvLyBDbGVhciBiYXNlICYgc2l6ZSBiZWZvcmUgY2FsbGluZyByZWxlYXNlOyBpZiB0aGlz
IGlzICppbnNpZGUqIGFsbG9jYXRpb24KLSAgICAvLyB0aGVuIHdlIHdvbid0IGJlIGFibGUgdG8g
Y2xlYXIgdGhlbiBhZnRlciBkZWFsbG9jYXRpbmcgdGhlIG1lbW9yeS4KLSAgICBQYWdlQWxsb2Nh
dGlvbkFsaWduZWQgdG1wOwotICAgIHN0ZDo6c3dhcCh0bXAsICp0aGlzKTsKLQotICAgIEFTU0VS
VCh0bXApOwotICAgIEFTU0VSVCghKnRoaXMpOwotCi0jaWYgT1MoREFSV0lOKQotICAgIHZtX2Rl
YWxsb2NhdGUoY3VycmVudF90YXNrKCksIHJlaW50ZXJwcmV0X2Nhc3Q8dm1fYWRkcmVzc190Pih0
bXAuYmFzZSgpKSwgdG1wLnNpemUoKSk7Ci0jZWxzZQotICAgIEFTU0VSVCh0bXAubV9yZXNlcnZh
dGlvbi5jb250YWlucyh0bXAuYmFzZSgpLCB0bXAuc2l6ZSgpKSk7Ci0gICAgT1NBbGxvY2F0b3I6
OmRlY29tbWl0QW5kUmVsZWFzZSh0bXAubV9yZXNlcnZhdGlvbi5iYXNlKCksIHRtcC5tX3Jlc2Vy
dmF0aW9uLnNpemUoKSk7Ci0jZW5kaWYKLX0KLQotfSAvLyBuYW1lc3BhY2UgV1RGCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV1RGL3d0Zi9QYWdlQWxsb2NhdGlvbkFsaWduZWQuaCBiL1NvdXJjZS9XVEYv
d3RmL1BhZ2VBbGxvY2F0aW9uQWxpZ25lZC5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCA1NTEzZDEzLi4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XVEYvd3RmL1BhZ2VBbGxvY2F0aW9uQWxp
Z25lZC5oCisrKyAvZGV2L251bGwKQEAgLTEsNzAgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAo
QykgMjAxMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291
cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICog
Mi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29y
IG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICog
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVU
T1JTIGBgQVMgSVMnJwotICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBUSEUgSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQ
T1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBD
T05UUklCVVRPUlMKLSAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKLSAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCi0gKiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1Ig
QlVTSU5FU1MKLSAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVP
UlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCi0gKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotICogQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRgotICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5k
ZWYgUGFnZUFsbG9jYXRpb25BbGlnbmVkX2gKLSNkZWZpbmUgUGFnZUFsbG9jYXRpb25BbGlnbmVk
X2gKLQotI2luY2x1ZGUgPHd0Zi9PU0FsbG9jYXRvci5oPgotI2luY2x1ZGUgPHd0Zi9QYWdlUmVz
ZXJ2YXRpb24uaD4KLQotbmFtZXNwYWNlIFdURiB7Ci0KLWNsYXNzIFBhZ2VBbGxvY2F0aW9uQWxp
Z25lZCA6IHByaXZhdGUgUGFnZUJsb2NrIHsKLXB1YmxpYzoKLSAgICBQYWdlQWxsb2NhdGlvbkFs
aWduZWQoKQotICAgIHsKLSAgICB9Ci0KLSAgICB1c2luZyBQYWdlQmxvY2s6Om9wZXJhdG9yIGJv
b2w7Ci0gICAgdXNpbmcgUGFnZUJsb2NrOjpzaXplOwotICAgIHVzaW5nIFBhZ2VCbG9jazo6YmFz
ZTsKLQotICAgIFdURl9FWFBPUlRfUFJJVkFURSBzdGF0aWMgUGFnZUFsbG9jYXRpb25BbGlnbmVk
IGFsbG9jYXRlKHNpemVfdCBzaXplLCBzaXplX3QgYWxpZ25tZW50LCBPU0FsbG9jYXRvcjo6VXNh
Z2UgdXNhZ2UgPSBPU0FsbG9jYXRvcjo6VW5rbm93blVzYWdlLCBib29sIHdyaXRhYmxlID0gdHJ1
ZSk7Ci0KLSAgICBXVEZfRVhQT1JUX1BSSVZBVEUgdm9pZCBkZWFsbG9jYXRlKCk7Ci0KLXByaXZh
dGU6Ci0jaWYgT1MoREFSV0lOKQotICAgIFBhZ2VBbGxvY2F0aW9uQWxpZ25lZCh2b2lkKiBiYXNl
LCBzaXplX3Qgc2l6ZSkKLSAgICAgICAgOiBQYWdlQmxvY2soYmFzZSwgc2l6ZSwgZmFsc2UpCi0g
ICAgewotICAgIH0KLSNlbHNlCi0gICAgUGFnZUFsbG9jYXRpb25BbGlnbmVkKHZvaWQqIGJhc2Us
IHNpemVfdCBzaXplLCB2b2lkKiByZXNlcnZhdGlvbkJhc2UsIHNpemVfdCByZXNlcnZhdGlvblNp
emUpCi0gICAgICAgIDogUGFnZUJsb2NrKGJhc2UsIHNpemUsIGZhbHNlKQotICAgICAgICAsIG1f
cmVzZXJ2YXRpb24ocmVzZXJ2YXRpb25CYXNlLCByZXNlcnZhdGlvblNpemUsIGZhbHNlKQotICAg
IHsKLSAgICB9Ci0KLSAgICBQYWdlQmxvY2sgbV9yZXNlcnZhdGlvbjsKLSNlbmRpZgotfTsKLQot
Ci19IC8vIG5hbWVzcGFjZSBXVEYKLQotdXNpbmcgV1RGOjpQYWdlQWxsb2NhdGlvbkFsaWduZWQ7
Ci0KLSNlbmRpZiAvLyBQYWdlQWxsb2NhdGlvbkFsaWduZWRfaAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>