<?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>139559</bug_id>
          
          <creation_ts>2014-12-11 13:09:06 -0800</creation_ts>
          <short_desc>bmalloc should support system memory analysis tools (part 1)</short_desc>
          <delta_ts>2014-12-11 14:16:26 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Geoffrey Garen">ggaren</reporter>
          <assigned_to name="Geoffrey Garen">ggaren</assigned_to>
          <cc>barraclough</cc>
    
    <cc>commit-queue</cc>
    
    <cc>ddkilzer</cc>
    
    <cc>sam</cc>
    
    <cc>simon.fraser</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1054598</commentid>
    <comment_count>0</comment_count>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2014-12-11 13:09:06 -0800</bug_when>
    <thetext>bmalloc should support system memory analysis tools (part 1)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1054600</commentid>
    <comment_count>1</comment_count>
      <attachid>243142</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2014-12-11 13:16:16 -0800</bug_when>
    <thetext>Created attachment 243142
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1054603</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-12-11 13:17:57 -0800</bug_when>
    <thetext>Attachment 243142 did not pass style-queue:


ERROR: Source/bmalloc/bmalloc/VMHeap.cpp:30:  Found header this file implements after other header. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/bmalloc/bmalloc/Environment.cpp:26:  Found header this file implements before WebCore config.h. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
Total errors found: 2 in 13 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1054613</commentid>
    <comment_count>3</comment_count>
      <attachid>243142</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2014-12-11 13:58:19 -0800</bug_when>
    <thetext>Comment on attachment 243142
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1054616</commentid>
    <comment_count>4</comment_count>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2014-12-11 14:16:26 -0800</bug_when>
    <thetext>Committed r177181: &lt;http://trac.webkit.org/changeset/177181&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>243142</attachid>
            <date>2014-12-11 13:16:16 -0800</date>
            <delta_ts>2014-12-11 13:58:19 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-139559-20141211131658.patch</filename>
            <type>text/plain</type>
            <size>18248</size>
            <attacher name="Geoffrey Garen">ggaren</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9ibWFsbG9jL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvYm1h
bGxvYy9DaGFuZ2VMb2cJKHJldmlzaW9uIDE3NzE3NikKKysrIFNvdXJjZS9ibWFsbG9jL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDU5IEBACisyMDE0LTEyLTExICBHZW9mZnJl
eSBHYXJlbiAgPGdnYXJlbkBhcHBsZS5jb20+CisKKyAgICAgICAgYm1hbGxvYyBzaG91bGQgc3Vw
cG9ydCBzeXN0ZW0gbWVtb3J5IGFuYWx5c2lzIHRvb2xzIChwYXJ0IDEpCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzk1NTkKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIHBhdGNoIGFkZHMgdGhlIGhv
b2tzIHRvIGRpc2FibGUgYm1hbGxvYyBhdCBydW50aW1lIGlmIGNlcnRhaW4KKyAgICAgICAgZW52
aXJvbm1lbnQgdmFyaWFibGVzIGFyZSBzZXQsIGJ1dCBkb2Vzbid0IGFjdHVhbGx5IHJlYWQgZnJv
bSB0aGUKKyAgICAgICAgZW52aXJvbm1lbnQgeWV0LgorCisgICAgICAgIE5vIHBlcmZvcm1hbmNl
IGNoYW5nZS4KKworICAgICAgICAqIGJtYWxsb2MueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajog
QWRkZWQgdGhlIEVudmlyb25tZW50IGNsYXNzLCB3aGljaAorICAgICAgICB3ZSdsbCB1c2UgdG8g
cmVhZCBlbnZpcm9ubWVudCB2YXJpYWJsZXMgYW5kIHNlZSBpZiBtZW1vcnkgYW5hbHlzaXMgdG9v
bHMKKyAgICAgICAgaGF2ZSBiZWVuIGVuYWJsZWQuCisKKyAgICAgICAgKiBibWFsbG9jL0FsbG9j
YXRvci5jcHA6CisgICAgICAgIChibWFsbG9jOjpBbGxvY2F0b3I6OkFsbG9jYXRvcik6CisgICAg
ICAgIChibWFsbG9jOjpBbGxvY2F0b3I6OmFsbG9jYXRlU2xvd0Nhc2UpOiBBZGRlZCBhIGhvb2sg
dG8gZGlzYWJsZSBibWFsbG9jCisgICAgICAgIG9uIHRoZSBhbGxvY2F0aW9uIHBhdGguIFdlIGNh
Y2hlIHRoZSBzZXR0aW5nIHRvIG1ha2UgdGhlIGNoZWNrIGZhc3QuCisKKyAgICAgICAgKiBibWFs
bG9jL0FsbG9jYXRvci5oOiBJbnRlcmZhY2UgY2hhbmdlcy4KKworICAgICAgICAqIGJtYWxsb2Mv
Q2FjaGUuY3BwOgorICAgICAgICAoYm1hbGxvYzo6Q2FjaGU6OkNhY2hlKTogUGFzcyBhIGhlYXAg
cG9pbnRlciB0aHJvdWdoIHRvIG91ciBhbGxvY2F0b3IKKyAgICAgICAgYW5kIGRlYWxsb2NhdG9y
LiBUaGlzIG1haW4gcHVycG9zZSBpcyB0byBlbmFibGUgdGhlbSB0byBxdWVyeSB0aGUKKyAgICAg
ICAgZW52aXJvbm1lbnQgZm9yIHdoZXRoZXIgYm1hbGxvYyBpcyBlbmFibGVkOyBidXQgdGhpcyBp
cyBhbHNvIGEgc2xpZ2h0bHkKKyAgICAgICAgY2xlYW5lciB3YXkgdG8gZ3VhcmFudGVlIHRvIHRo
ZW0gdGhhdCB0aGUgSGVhcCBoYXMgYmVlbiBwcmUtaW5pdGlhbGl6ZWQuCisKKyAgICAgICAgKiBi
bWFsbG9jL0RlYWxsb2NhdG9yLmNwcDoKKyAgICAgICAgKGJtYWxsb2M6OkRlYWxsb2NhdG9yOjpE
ZWFsbG9jYXRvcik6IElmIGJtYWxsb2MgaXMgZGlzYWJsZSwgYXJ0aWZpY2lhbGx5CisgICAgICAg
IGZpbGwgdGhlIG9iamVjdCBsb2cgdG8gZm9yY2UgdXMgdG8gdGFrZSB0aGUgc2xvdyBwYXRoIG9u
IGFsbCBkZWFsbG9jYXRpb25zLgorCisgICAgICAgIChibWFsbG9jOjpEZWFsbG9jYXRvcjo6ZGVh
bGxvY2F0ZVNsb3dDYXNlKTogRG8gdGhlIGRpc2FibGVkIGNoZWNrLgorCisgICAgICAgICogYm1h
bGxvYy9EZWFsbG9jYXRvci5oOiBJbnRlcmZhY2UgY2hhbmdlcy4KKworICAgICAgICAqIGJtYWxs
b2MvRW52aXJvbm1lbnQuY3BwOiBBZGRlZC4KKyAgICAgICAgKGJtYWxsb2M6OkVudmlyb25tZW50
OjpFbnZpcm9ubWVudCk6CisgICAgICAgIChibWFsbG9jOjpFbnZpcm9ubWVudDo6Y29tcHV0ZUlz
Qm1hbGxvY0VuYWJsZWQpOgorICAgICAgICAqIGJtYWxsb2MvRW52aXJvbm1lbnQuaDogQWRkZWQu
CisgICAgICAgIChibWFsbG9jOjpFbnZpcm9ubWVudDo6aXNCbWFsbG9jRW5hYmxlZCk6IFRoaXMg
aXMgdGhlIGNsYXNzIHRoYXQgd2lsbAorICAgICAgICBlbmNhcHN1bGF0ZSBsb29raW5nIGZvciBl
bnZpcm9ubWVudCB2YXJpYWJsZXMgdGhhdCB0dXJuIG9uIGhlYXAKKyAgICAgICAgYW5hbHlzaXMg
dG9vbHMuCisKKyAgICAgICAgKiBibWFsbG9jL0hlYXAuaDoKKyAgICAgICAgKGJtYWxsb2M6Okhl
YXA6OmVudmlyb25tZW50KToKKworICAgICAgICAqIGJtYWxsb2MvTXV0ZXguaDoKKyAgICAgICAg
KGJtYWxsb2M6Ok11dGV4OjpNdXRleCk6CisgICAgICAgICogYm1hbGxvYy9TdGF0aWNNdXRleC5o
OiBBIGxpdHRsZSByZWZhY3RvcmluZyB0byBjbGFyaWZ5IHRoZXNlIGNvbW1lbnRzLAorICAgICAg
ICBzaW5jZSBJIGdvdCBzdXBlciBjb25mdXNlZCBhYm91dCB0aGVtIHdoaWxlIHdyaXRpbmcgdGhp
cyBwYXRjaC4KKworICAgICAgICAqIGJtYWxsb2MvVk1IZWFwLmNwcDogRml4ZWQgYW4gI2luY2x1
ZGUuCisKIDIwMTQtMTItMDkgIERhdmlkIEtpbHplciAgPGRka2lsemVyQGFwcGxlLmNvbT4KIAog
ICAgICAgICBTd2l0Y2ggZnJvbSB1c2luZyBQTEFURk9STV9OQU1FIHRvIFNESyBzZWxlY3RvcnMg
aW4gQU5HTEUsIGJtYWxsb2MsIGd0ZXN0LCBKYXZhU2NyaXB0Q29yZSwgV1RGCkluZGV4OiBTb3Vy
Y2UvYm1hbGxvYy9ibWFsbG9jLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL2JtYWxsb2MvYm1hbGxvYy54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCShyZXZp
c2lvbiAxNzY4MDIpCisrKyBTb3VyY2UvYm1hbGxvYy9ibWFsbG9jLnhjb2RlcHJvai9wcm9qZWN0
LnBieHByb2oJKHdvcmtpbmcgY29weSkKQEAgLTE3LDYgKzE3LDggQEAKIAkJMTQzQ0I4MUQxOTAy
MkJDOTAwQjE2QTQ1IC8qIFN0YXRpY011dGV4LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSAxNDNDQjgxQjE5MDIyQkM5MDBCMTZBNDUgLyogU3RhdGljTXV0
ZXguaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQkx
NDQ4QzMwMDE4RjM3NTQ2MDA1MDI4MzkgLyogbWJtYWxsb2MuY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMTQ0OEMyRkYxOEYzNzU0MzAwNTAyODM5IC8q
IG1ibWFsbG9jLmNwcCAqLzsgfTsKIAkJMTQ0OEMzMDExOEYzNzU0QzAwNTAyODM5IC8qIGJtYWxs
b2MuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDE0NDhD
MkZFMThGMzc1NDMwMDUwMjgzOSAvKiBibWFsbG9jLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMTQ4OTVEOTExQTNBMzE5QzAwMDYyMzVEIC8qIEVu
dmlyb25tZW50LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDE0ODk1RDhGMUEzQTMxOUMwMDA2MjM1RCAvKiBFbnZpcm9ubWVudC5jcHAgKi87IH07CisJ
CTE0ODk1RDkyMUEzQTMxOUMwMDA2MjM1RCAvKiBFbnZpcm9ubWVudC5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMTQ4OTVEOTAxQTNBMzE5QzAwMDYyMzVE
IC8qIEVudmlyb25tZW50LmggKi87IH07CiAJCTE0QzkxOUM5MThGQ0M1OUYwMDI4REI0MyAvKiBC
UGxhdGZvcm0uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDE0QzkxOUM4MThGQ0M1OUYwMDI4REI0MyAvKiBCUGxhdGZvcm0uaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQkxNENDMzk0QzE4RUE4ODU4MDA0QUZF
MzQgLyogbGliYm1hbGxvYy5hIGluIEZyYW1ld29ya3MgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gMTRGMjcxQkUxOEVBMzk2MzAwOEMxNTJGIC8qIGxpYmJtYWxsb2MuYSAqLzsg
fTsKIAkJMTRERDc4OEMxOEY0OENBRTAwOTUwNzAyIC8qIExhcmdlQ2h1bmsuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDE0N0FBQTg4MThDRDE3Q0UwMDIy
MDFFNCAvKiBMYXJnZUNodW5rLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKQEAgLTEyMCw2ICsxMjIsOCBAQAogCQkxNDdBQUE5NzE4Q0U1RkI2MDAyMjAx
RTQgLyogU21hbGxUcmFpdHMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gU21h
bGxUcmFpdHMuaDsgcGF0aCA9IGJtYWxsb2MvU21hbGxUcmFpdHMuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJMTQ4NTY1NUUxOEE0M0FGOTAwRUQ2OTQyIC8qIEJvdW5kYXJ5VGFnLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IEJvdW5kYXJ5VGFnLmg7IHBhdGggPSBi
bWFsbG9jL0JvdW5kYXJ5VGFnLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTE0ODU2
NTYwMThBNDNEQkEwMEVENjk0MiAvKiBPYmplY3RUeXBlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgbmFtZSA9IE9iamVjdFR5cGUuaDsgcGF0aCA9IGJtYWxsb2MvT2JqZWN0VHlwZS5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxNDg5NUQ4RjFBM0EzMTlDMDAwNjIzNUQgLyog
RW52aXJvbm1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gRW52
aXJvbm1lbnQuY3BwOyBwYXRoID0gYm1hbGxvYy9FbnZpcm9ubWVudC5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTE0ODk1RDkwMUEzQTMxOUMwMDA2MjM1RCAvKiBFbnZpcm9ubWVu
dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBFbnZpcm9ubWVudC5oOyBwYXRo
ID0gYm1hbGxvYy9FbnZpcm9ubWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkx
NEI2NTBDNTE4RjM5RjQ4MDA3NTE5NjggLyogQmFzZS54Y2NvbmZpZyAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQueGNjb25maWc7IHBhdGggPSBC
YXNlLnhjY29uZmlnOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxNEI2NTBDNjE4RjM5
RjQ4MDA3NTE5NjggLyogYm1hbGxvYy54Y2NvbmZpZyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQueGNjb25maWc7IHBhdGggPSBibWFsbG9jLnhj
Y29uZmlnOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxNEI2NTBDNzE4RjM5RjQ4MDA3
NTE5NjggLyogRGVidWdSZWxlYXNlLnhjY29uZmlnICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dC54Y2NvbmZpZzsgcGF0aCA9IERlYnVnUmVsZWFz
ZS54Y2NvbmZpZzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTI0Niw2ICsyNTAsOCBA
QAogCQkJaXNhID0gUEJYR3JvdXA7CiAJCQljaGlsZHJlbiA9ICgKIAkJCQkxNDBGQTAwMjE5Q0U0
MjlDMDBGRkQzQzggLyogQnVtcFJhbmdlLmggKi8sCisJCQkJMTQ4OTVEOEYxQTNBMzE5QzAwMDYy
MzVEIC8qIEVudmlyb25tZW50LmNwcCAqLywKKwkJCQkxNDg5NUQ5MDFBM0EzMTlDMDAwNjIzNUQg
LyogRW52aXJvbm1lbnQuaCAqLywKIAkJCQkxNERBMzIwRTE4ODc1RDlGMDA3MjY5RTAgLyogSGVh
cC5jcHAgKi8sCiAJCQkJMTREQTMyMEMxODg3NUIwOTAwNzI2OUUwIC8qIEhlYXAuaCAqLywKIAkJ
CQkxNDBGQTAwNDE5Q0U0QjY4MDBGRkQzQzggLyogTGluZU1ldGFkYXRhLmggKi8sCkBAIC0zMjIs
NiArMzI4LDcgQEAKIAkJCQkxNERENzhCQTE4RjQ4RDZCMDA5NTA3MDIgLyogUGFnZS5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJMTRERDc4QkIxOEY0OEQ2QjAwOTUwNzAyIC8qIFNtYWxsQ2h1bmsuaCBp
biBIZWFkZXJzICovLAogCQkJCTE0REQ3OEM5MThGNDhENzUwMDk1MDcwMiAvKiBJbmxpbmUuaCBp
biBIZWFkZXJzICovLAorCQkJCTE0ODk1RDkyMUEzQTMxOUMwMDA2MjM1RCAvKiBFbnZpcm9ubWVu
dC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMTQwMDI3NEExOEY4OUMyMzAwMTE1Qzk3IC8qIFZNSGVh
cC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMTQwMDI3NDkxOEY4OUMxMzAwMTE1Qzk3IC8qIEhlYXAu
aCBpbiBIZWFkZXJzICovLAogCQkJCTE0REQ3OEI4MThGNDhENkIwMDk1MDcwMiAvKiBNZWRpdW1Q
YWdlLmggaW4gSGVhZGVycyAqLywKQEAgLTQyMSw2ICs0MjgsNyBAQAogCQkJCTE0M0NCODFDMTkw
MjJCQzkwMEIxNkE0NSAvKiBTdGF0aWNNdXRleC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkxNEYy
NzFDNjE4RUEzOTgzMDA4QzE1MkYgLyogU2VncmVnYXRlZEZyZWVMaXN0LmNwcCBpbiBTb3VyY2Vz
ICovLAogCQkJCTE0RjI3MUMzMThFQTM5NzgwMDhDMTUyRiAvKiBBbGxvY2F0b3IuY3BwIGluIFNv
dXJjZXMgKi8sCisJCQkJMTQ4OTVEOTExQTNBMzE5QzAwMDYyMzVEIC8qIEVudmlyb25tZW50LmNw
cCBpbiBTb3VyY2VzICovLAogCQkJCTE0RjI3MUM3MThFQTM5OTAwMDhDMTUyRiAvKiBIZWFwLmNw
cCBpbiBTb3VyY2VzICovLAogCQkJCTE0RjI3MUM5MThFQTM5OTAwMDhDMTUyRiAvKiBWTUhlYXAu
Y3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMTRGMjcxQzgxOEVBMzk5MDAwOEMxNTJGIC8qIE9iamVj
dFR5cGUuY3BwIGluIFNvdXJjZXMgKi8sCkluZGV4OiBTb3VyY2UvYm1hbGxvYy9ibWFsbG9jL0Fs
bG9jYXRvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL2JtYWxsb2MvYm1hbGxvYy9BbGxvY2F0
b3IuY3BwCShyZXZpc2lvbiAxNzY4MDIpCisrKyBTb3VyY2UvYm1hbGxvYy9ibWFsbG9jL0FsbG9j
YXRvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTM1LDggKzM1LDkgQEAgdXNpbmcgbmFtZXNwYWNl
IHN0ZDsKIAogbmFtZXNwYWNlIGJtYWxsb2MgewogCi1BbGxvY2F0b3I6OkFsbG9jYXRvcihEZWFs
bG9jYXRvciYgZGVhbGxvY2F0b3IpCi0gICAgOiBtX2RlYWxsb2NhdG9yKGRlYWxsb2NhdG9yKQor
QWxsb2NhdG9yOjpBbGxvY2F0b3IoSGVhcCogaGVhcCwgRGVhbGxvY2F0b3ImIGRlYWxsb2NhdG9y
KQorICAgIDogbV9pc0JtYWxsb2NFbmFibGVkKGhlYXAtPmVudmlyb25tZW50KCkuaXNCbWFsbG9j
RW5hYmxlZCgpKQorICAgICwgbV9kZWFsbG9jYXRvcihkZWFsbG9jYXRvcikKIHsKICAgICBmb3Ig
KHVuc2lnbmVkIHNob3J0IHNpemUgPSBhbGlnbm1lbnQ7IHNpemUgPD0gbWVkaXVtTWF4OyBzaXpl
ICs9IGFsaWdubWVudCkKICAgICAgICAgbV9idW1wQWxsb2NhdG9yc1tzaXplQ2xhc3Moc2l6ZSld
LmluaXQoc2l6ZSk7CkBAIC0xMDMsNiArMTA0LDkgQEAgTk9fSU5MSU5FIHZvaWQqIEFsbG9jYXRv
cjo6YWxsb2NhdGVYTGFyZwogCiB2b2lkKiBBbGxvY2F0b3I6OmFsbG9jYXRlU2xvd0Nhc2Uoc2l6
ZV90IHNpemUpCiB7CisgICAgaWYgKCFtX2lzQm1hbGxvY0VuYWJsZWQpCisgICAgICAgIHJldHVy
biBtYWxsb2Moc2l6ZSk7CisKICAgICBpZiAoc2l6ZSA8PSBtZWRpdW1NYXgpIHsKICAgICAgICAg
c2l6ZV90IHNpemVDbGFzcyA9IGJtYWxsb2M6OnNpemVDbGFzcyhzaXplKTsKICAgICAgICAgQnVt
cEFsbG9jYXRvciYgYWxsb2NhdG9yID0gbV9idW1wQWxsb2NhdG9yc1tzaXplQ2xhc3NdOwpJbmRl
eDogU291cmNlL2JtYWxsb2MvYm1hbGxvYy9BbGxvY2F0b3IuaAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvYm1hbGxvYy9ibWFsbG9jL0FsbG9jYXRvci5oCShyZXZpc2lvbiAxNzY4MDIpCisrKyBTb3Vy
Y2UvYm1hbGxvYy9ibWFsbG9jL0FsbG9jYXRvci5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNywyMSAr
MjcsMTggQEAKICNkZWZpbmUgQWxsb2NhdG9yX2gKIAogI2luY2x1ZGUgIkJ1bXBBbGxvY2F0b3Iu
aCIKLSNpbmNsdWRlICJGaXhlZFZlY3Rvci5oIgotI2luY2x1ZGUgIkhlYXAuaCIKLSNpbmNsdWRl
ICJTaXplcy5oIgotI2luY2x1ZGUgIlNtYWxsTGluZS5oIgogI2luY2x1ZGUgPGFycmF5PgogCiBu
YW1lc3BhY2UgYm1hbGxvYyB7CiAKIGNsYXNzIERlYWxsb2NhdG9yOworY2xhc3MgSGVhcDsKIAog
Ly8gUGVyLWNhY2hlIG9iamVjdCBhbGxvY2F0b3IuCiAKIGNsYXNzIEFsbG9jYXRvciB7CiBwdWJs
aWM6Ci0gICAgQWxsb2NhdG9yKERlYWxsb2NhdG9yJik7CisgICAgQWxsb2NhdG9yKEhlYXAqLCBE
ZWFsbG9jYXRvciYpOwogICAgIH5BbGxvY2F0b3IoKTsKIAogICAgIHZvaWQqIGFsbG9jYXRlKHNp
emVfdCk7CkBAIC01OCwxMCArNTUsMTEgQEAgcHJpdmF0ZToKICAgICBCdW1wUmFuZ2UgYWxsb2Nh
dGVCdW1wUmFuZ2Uoc2l6ZV90IHNpemVDbGFzcyk7CiAgICAgQnVtcFJhbmdlIGFsbG9jYXRlQnVt
cFJhbmdlU2xvd0Nhc2Uoc2l6ZV90IHNpemVDbGFzcyk7CiAgICAgCi0gICAgRGVhbGxvY2F0b3Im
IG1fZGVhbGxvY2F0b3I7Ci0KICAgICBzdGQ6OmFycmF5PEJ1bXBBbGxvY2F0b3IsIG1lZGl1bU1h
eCAvIGFsaWdubWVudD4gbV9idW1wQWxsb2NhdG9yczsKICAgICBzdGQ6OmFycmF5PEJ1bXBSYW5n
ZUNhY2hlLCBtZWRpdW1NYXggLyBhbGlnbm1lbnQ+IG1fYnVtcFJhbmdlQ2FjaGVzOworCisgICAg
Ym9vbCBtX2lzQm1hbGxvY0VuYWJsZWQ7CisgICAgRGVhbGxvY2F0b3ImIG1fZGVhbGxvY2F0b3I7
CiB9OwogCiBpbmxpbmUgYm9vbCBBbGxvY2F0b3I6OmFsbG9jYXRlRmFzdENhc2Uoc2l6ZV90IHNp
emUsIHZvaWQqJiBvYmplY3QpCkluZGV4OiBTb3VyY2UvYm1hbGxvYy9ibWFsbG9jL0NhY2hlLmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvYm1hbGxvYy9ibWFsbG9jL0NhY2hlLmNwcAkocmV2aXNp
b24gMTc2ODAyKQorKysgU291cmNlL2JtYWxsb2MvYm1hbGxvYy9DYWNoZS5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTQxLDExICs0MSw5IEBAIHZvaWQgQ2FjaGU6Om9wZXJhdG9yIGRlbGV0ZSh2b2lk
KiBwLCBzaXoKIH0KIAogQ2FjaGU6OkNhY2hlKCkKLSAgICA6IG1fZGVhbGxvY2F0b3IoKQotICAg
ICwgbV9hbGxvY2F0b3IobV9kZWFsbG9jYXRvcikKKyAgICA6IG1fZGVhbGxvY2F0b3IoUGVyUHJv
Y2VzczxIZWFwPjo6Z2V0KCkpCisgICAgLCBtX2FsbG9jYXRvcihQZXJQcm9jZXNzPEhlYXA+Ojpn
ZXQoKSwgbV9kZWFsbG9jYXRvcikKIHsKLSAgICAvLyBFbnN1cmUgdGhhdCB0aGUgaGVhcCBleGlz
dHMsIHNvIEFsbG9jYXRvciBhbmQgRGVhbGxvY2F0b3IgY2FuIGFzc3VtZSBpdCBkb2VzLgotICAg
IFBlclByb2Nlc3M8SGVhcD46OmdldCgpOwogfQogICAgIAogdm9pZCBDYWNoZTo6c2NhdmVuZ2Uo
KQpJbmRleDogU291cmNlL2JtYWxsb2MvYm1hbGxvYy9EZWFsbG9jYXRvci5jcHAKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL2JtYWxsb2MvYm1hbGxvYy9EZWFsbG9jYXRvci5jcHAJKHJldmlzaW9uIDE3
NjgwMikKKysrIFNvdXJjZS9ibWFsbG9jL2JtYWxsb2MvRGVhbGxvY2F0b3IuY3BwCSh3b3JraW5n
IGNvcHkpCkBAIC0zOCw4ICszOCwxNCBAQCB1c2luZyBuYW1lc3BhY2Ugc3RkOwogCiBuYW1lc3Bh
Y2UgYm1hbGxvYyB7CiAKLURlYWxsb2NhdG9yOjpEZWFsbG9jYXRvcigpCitEZWFsbG9jYXRvcjo6
RGVhbGxvY2F0b3IoSGVhcCogaGVhcCkKKyAgICA6IG1faXNCbWFsbG9jRW5hYmxlZChoZWFwLT5l
bnZpcm9ubWVudCgpLmlzQm1hbGxvY0VuYWJsZWQoKSkKIHsKKyAgICBpZiAoIW1faXNCbWFsbG9j
RW5hYmxlZCkgeworICAgICAgICAvLyBGaWxsIHRoZSBvYmplY3QgbG9nIGluIG9yZGVyIHRvIGRp
c2FibGUgdGhlIGZhc3QgcGF0aC4KKyAgICAgICAgd2hpbGUgKG1fb2JqZWN0TG9nLnNpemUoKSAh
PSBtX29iamVjdExvZy5jYXBhY2l0eSgpKQorICAgICAgICAgICAgbV9vYmplY3RMb2cucHVzaChu
dWxscHRyKTsKKyAgICB9CiB9CiAKIERlYWxsb2NhdG9yOjp+RGVhbGxvY2F0b3IoKQpAQCAtODYs
NiArOTIsMTEgQEAgdm9pZCBEZWFsbG9jYXRvcjo6cHJvY2Vzc09iamVjdExvZygpCiB2b2lkIERl
YWxsb2NhdG9yOjpkZWFsbG9jYXRlU2xvd0Nhc2Uodm9pZCogb2JqZWN0KQogewogICAgIEJBU1NF
UlQoIWRlYWxsb2NhdGVGYXN0Q2FzZShvYmplY3QpKTsKKyAgICAKKyAgICBpZiAoIW1faXNCbWFs
bG9jRW5hYmxlZCkgeworICAgICAgICBmcmVlKG9iamVjdCk7CisgICAgICAgIHJldHVybjsKKyAg
ICB9CiAKICAgICBpZiAoIW9iamVjdCkKICAgICAgICAgcmV0dXJuOwpJbmRleDogU291cmNlL2Jt
YWxsb2MvYm1hbGxvYy9EZWFsbG9jYXRvci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9ibWFsbG9j
L2JtYWxsb2MvRGVhbGxvY2F0b3IuaAkocmV2aXNpb24gMTc2ODAyKQorKysgU291cmNlL2JtYWxs
b2MvYm1hbGxvYy9EZWFsbG9jYXRvci5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNywxNyArMjcsMTYg
QEAKICNkZWZpbmUgRGVhbGxvY2F0b3JfaAogCiAjaW5jbHVkZSAiRml4ZWRWZWN0b3IuaCIKLSNp
bmNsdWRlICJNZWRpdW1MaW5lLmgiCi0jaW5jbHVkZSAiU2l6ZXMuaCIKLSNpbmNsdWRlICJTbWFs
bExpbmUuaCIKIAogbmFtZXNwYWNlIGJtYWxsb2MgewogCitjbGFzcyBIZWFwOworCiAvLyBQZXIt
Y2FjaGUgb2JqZWN0IGRlYWxsb2NhdG9yLgogCiBjbGFzcyBEZWFsbG9jYXRvciB7CiBwdWJsaWM6
Ci0gICAgRGVhbGxvY2F0b3IoKTsKKyAgICBEZWFsbG9jYXRvcihIZWFwKik7CiAgICAgfkRlYWxs
b2NhdG9yKCk7CiAKICAgICB2b2lkIGRlYWxsb2NhdGUodm9pZCopOwpAQCAtNTIsNiArNTEsNyBA
QCBwcml2YXRlOgogICAgIHZvaWQgcHJvY2Vzc09iamVjdExvZygpOwogCiAgICAgRml4ZWRWZWN0
b3I8dm9pZCosIGRlYWxsb2NhdG9yTG9nQ2FwYWNpdHk+IG1fb2JqZWN0TG9nOworICAgIGJvb2wg
bV9pc0JtYWxsb2NFbmFibGVkOwogfTsKIAogaW5saW5lIGJvb2wgRGVhbGxvY2F0b3I6OmRlYWxs
b2NhdGVGYXN0Q2FzZSh2b2lkKiBvYmplY3QpCkluZGV4OiBTb3VyY2UvYm1hbGxvYy9ibWFsbG9j
L0Vudmlyb25tZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvYm1hbGxvYy9ibWFsbG9jL0Vu
dmlyb25tZW50LmNwcAkocmV2aXNpb24gMCkKKysrIFNvdXJjZS9ibWFsbG9jL2JtYWxsb2MvRW52
aXJvbm1lbnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsNDAgQEAKKy8qCisgKiBDb3B5
cmlnaHQgKEMpIDIwMTQgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgor
ICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFTIElTJycg
QU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFC
SUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xB
SU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKKyAqIENPTlRSSUJVVE9SUyBC
RSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAor
ICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBMSUFCSUxJ
VFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJ
TkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCisgKi8KKworI2luY2x1ZGUgIkVudmlyb25tZW50
LmgiCisKK25hbWVzcGFjZSBibWFsbG9jIHsKKworRW52aXJvbm1lbnQ6OkVudmlyb25tZW50KCkK
KyAgICA6IG1faXNCbWFsbG9jRW5hYmxlZChjb21wdXRlSXNCbWFsbG9jRW5hYmxlZCgpKQorewor
fQorCitib29sIEVudmlyb25tZW50Ojpjb21wdXRlSXNCbWFsbG9jRW5hYmxlZCgpCit7CisgICAg
cmV0dXJuIHRydWU7Cit9CisKK30gLy8gbmFtZXNwYWNlIGJtYWxsb2MKSW5kZXg6IFNvdXJjZS9i
bWFsbG9jL2JtYWxsb2MvRW52aXJvbm1lbnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvYm1hbGxv
Yy9ibWFsbG9jL0Vudmlyb25tZW50LmgJKHJldmlzaW9uIDApCisrKyBTb3VyY2UvYm1hbGxvYy9i
bWFsbG9jL0Vudmlyb25tZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSw0NSBAQAorLyoK
KyAqIENvcHlyaWdodCAoQykgMjAxNCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisg
KgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAor
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmli
dXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBg
QVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1F
UkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFS
RSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgorICogQ09OVFJJ
QlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ
RUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RT
IE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lO
RVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9G
IExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9S
VAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkg
V0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKKyAqLworCisjaWZuZGVmIEVudmly
b25tZW50X2gKKyNkZWZpbmUgRW52aXJvbm1lbnRfaAorCituYW1lc3BhY2UgYm1hbGxvYyB7CisK
K2NsYXNzIEVudmlyb25tZW50IHsKK3B1YmxpYzoKKyAgICBFbnZpcm9ubWVudCgpOworICAgIAor
ICAgIGJvb2wgaXNCbWFsbG9jRW5hYmxlZCgpIHsgcmV0dXJuIG1faXNCbWFsbG9jRW5hYmxlZDsg
fQorCitwcml2YXRlOgorICAgIGJvb2wgY29tcHV0ZUlzQm1hbGxvY0VuYWJsZWQoKTsKKworICAg
IGJvb2wgbV9pc0JtYWxsb2NFbmFibGVkOworfTsKKworfSAvLyBuYW1lc3BhY2UgYm1hbGxvYwor
CisjZW5kaWYgLy8gRW52aXJvbm1lbnRfaApJbmRleDogU291cmNlL2JtYWxsb2MvYm1hbGxvYy9I
ZWFwLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL2JtYWxsb2MvYm1hbGxvYy9IZWFwLmgJKHJldmlz
aW9uIDE3NjgwMikKKysrIFNvdXJjZS9ibWFsbG9jL2JtYWxsb2MvSGVhcC5oCSh3b3JraW5nIGNv
cHkpCkBAIC0yNyw2ICsyNyw3IEBACiAjZGVmaW5lIEhlYXBfaAogCiAjaW5jbHVkZSAiQnVtcFJh
bmdlLmgiCisjaW5jbHVkZSAiRW52aXJvbm1lbnQuaCIKICNpbmNsdWRlICJMaW5lTWV0YWRhdGEu
aCIKICNpbmNsdWRlICJNZWRpdW1DaHVuay5oIgogI2luY2x1ZGUgIk1lZGl1bUxpbmUuaCIKQEAg
LTQ5LDYgKzUwLDggQEAgY2xhc3MgRW5kVGFnOwogY2xhc3MgSGVhcCB7CiBwdWJsaWM6CiAgICAg
SGVhcChzdGQ6OmxvY2tfZ3VhcmQ8U3RhdGljTXV0ZXg+Jik7CisgICAgCisgICAgRW52aXJvbm1l
bnQmIGVudmlyb25tZW50KCkgeyByZXR1cm4gbV9lbnZpcm9ubWVudDsgfQogCiAgICAgdm9pZCBy
ZWZpbGxTbWFsbEJ1bXBSYW5nZUNhY2hlKHN0ZDo6bG9ja19ndWFyZDxTdGF0aWNNdXRleD4mLCBz
aXplX3Qgc2l6ZUNsYXNzLCBCdW1wUmFuZ2VDYWNoZSYpOwogICAgIHZvaWQgZGVyZWZTbWFsbExp
bmUoc3RkOjpsb2NrX2d1YXJkPFN0YXRpY011dGV4PiYsIFNtYWxsTGluZSopOwpAQCAtMTAxLDYg
KzEwNCw4IEBAIHByaXZhdGU6CiAKICAgICBib29sIG1faXNBbGxvY2F0aW5nUGFnZXM7CiAKKyAg
ICBFbnZpcm9ubWVudCBtX2Vudmlyb25tZW50OworCiAgICAgVk1IZWFwIG1fdm1IZWFwOwogICAg
IEFzeW5jVGFzazxIZWFwLCBkZWNsdHlwZSgmSGVhcDo6Y29uY3VycmVudFNjYXZlbmdlKT4gbV9z
Y2F2ZW5nZXI7CiB9OwpJbmRleDogU291cmNlL2JtYWxsb2MvYm1hbGxvYy9NdXRleC5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9ibWFsbG9jL2JtYWxsb2MvTXV0ZXguaAkocmV2aXNpb24gMTc2ODAy
KQorKysgU291cmNlL2JtYWxsb2MvYm1hbGxvYy9NdXRleC5oCSh3b3JraW5nIGNvcHkpCkBAIC0y
OCw3ICsyOCw3IEBACiAKICNpbmNsdWRlICJTdGF0aWNNdXRleC5oIgogCi0vLyBBIGZhc3QgcmVw
bGFjZW1lbnQgZm9yIHN0ZDo6bXV0ZXguCisvLyBBIGZhc3QgcmVwbGFjZW1lbnQgZm9yIHN0ZDo6
bXV0ZXgsIGZvciB1c2UgaW4gc3RhbmRhcmQgc3RvcmFnZS4KIAogbmFtZXNwYWNlIGJtYWxsb2Mg
ewogCkBAIC0zOSw2ICszOSw3IEBAIHB1YmxpYzoKIAogaW5saW5lIE11dGV4OjpNdXRleCgpCiB7
CisgICAgLy8gU3RhdGljTXV0ZXggcmVxdWlyZXMgZXhwbGljaXQgaW5pdGlhbGl6YXRpb24gd2hl
biB1c2VkIGluIG5vbi1zdGF0aWMgc3RvcmFnZS4KICAgICBpbml0KCk7CiB9CiAKSW5kZXg6IFNv
dXJjZS9ibWFsbG9jL2JtYWxsb2MvU3RhdGljTXV0ZXguaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
Ym1hbGxvYy9ibWFsbG9jL1N0YXRpY011dGV4LmgJKHJldmlzaW9uIDE3NjgwMikKKysrIFNvdXJj
ZS9ibWFsbG9jL2JtYWxsb2MvU3RhdGljTXV0ZXguaAkod29ya2luZyBjb3B5KQpAQCAtMjksMjQg
KzI5LDI0IEBACiAjaW5jbHVkZSAiQkFzc2VydC5oIgogI2luY2x1ZGUgPGF0b21pYz4KIAotLy8g
QSBmYXN0IHJlcGxhY2VtZW50IGZvciBzdGQ6Om11dGV4IGZvciB1c2UgaW4gc3RhdGljIHN0b3Jh
Z2UsIHdoZXJlIGdsb2JhbAotLy8gY29uc3RydWN0b3JzIGFuZCBleGl0LXRpbWUgZGVzdHJ1Y3Rv
cnMgYXJlIHByb2hpYml0ZWQuCisvLyBBIGZhc3QgcmVwbGFjZW1lbnQgZm9yIHN0ZDo6bXV0ZXgs
IGZvciB1c2UgaW4gc3RhdGljIHN0b3JhZ2UuCisKKy8vIFVzZSBTdGF0aWNNdXRleCBpbiBzdGF0
aWMgc3RvcmFnZSwgd2hlcmUgZ2xvYmFsIGNvbnN0cnVjdG9ycyBhbmQgZXhpdC10aW1lCisvLyBk
ZXN0cnVjdG9ycyBhcmUgcHJvaGliaXRlZCwgYnV0IGFsbCBtZW1vcnkgaXMgemVyby1pbml0aWFs
aXplZCBhdXRvbWF0aWNhbGx5LgogCiBuYW1lc3BhY2UgYm1hbGxvYyB7CiAKIGNsYXNzIFN0YXRp
Y011dGV4IHsKK3Byb3RlY3RlZDoKKyAgICAvLyBTdWJjbGFzc2VzIHRoYXQgc3VwcG9ydCBub24t
c3RhdGljIHN0b3JhZ2UgbXVzdCB1c2UgZXhwbGljaXQgaW5pdGlhbGl6YXRpb24uCisgICAgdm9p
ZCBpbml0KCk7CisKIHB1YmxpYzoKICAgICB2b2lkIGxvY2soKTsKICAgICBib29sIHRyeV9sb2Nr
KCk7CiAgICAgdm9pZCB1bmxvY2soKTsKIAogcHJpdmF0ZToKLSAgICBmcmllbmQgY2xhc3MgTXV0
ZXg7Ci0KLSAgICAvLyBTdGF0aWMgc3RvcmFnZSB3aWxsIHplcm8taW5pdGlhbGl6ZSB1cyBhdXRv
bWF0aWNhbGx5LCBidXQgTXV0ZXggbmVlZHMgYW4KLSAgICAvLyBBUEkgZm9yIGV4cGxpY2l0IGlu
aXRpYWxpemF0aW9uLgotICAgIHZvaWQgaW5pdCgpOwotCiAgICAgdm9pZCBsb2NrU2xvd0Nhc2Uo
KTsKIAogICAgIHN0ZDo6YXRvbWljX2ZsYWcgbV9mbGFnOwpJbmRleDogU291cmNlL2JtYWxsb2Mv
Ym1hbGxvYy9WTUhlYXAuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9ibWFsbG9jL2JtYWxsb2Mv
Vk1IZWFwLmNwcAkocmV2aXNpb24gMTc2ODAyKQorKysgU291cmNlL2JtYWxsb2MvYm1hbGxvYy9W
TUhlYXAuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCwxMCArMjQsMTAgQEAKICAqLwogCiAjaW5j
bHVkZSAiQm91bmRhcnlUYWdJbmxpbmVzLmgiCi0jaW5jbHVkZSAiSGVhcC5oIgogI2luY2x1ZGUg
IkxhcmdlQ2h1bmsuaCIKICNpbmNsdWRlICJMaW5lLmgiCiAjaW5jbHVkZSAiUGVyUHJvY2Vzcy5o
IgorI2luY2x1ZGUgIlZNSGVhcC5oIgogI2luY2x1ZGUgPHRocmVhZD4KIAogbmFtZXNwYWNlIGJt
YWxsb2Mgewo=
</data>
<flag name="review"
          id="267995"
          type_id="1"
          status="+"
          setter="mark.lam"
    />
          </attachment>
      

    </bug>

</bugzilla>