<?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>208367</bug_id>
          
          <creation_ts>2020-02-28 01:37:19 -0800</creation_ts>
          <short_desc>Add document about WTF malloc-related macros</short_desc>
          <delta_ts>2020-04-20 19:53:39 -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>Web Template Framework</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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Yusuke Suzuki">ysuzuki</reporter>
          <assigned_to name="Yusuke Suzuki">ysuzuki</assigned_to>
          <cc>benjamin</cc>
    
    <cc>cdumez</cc>
    
    <cc>clopez</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>darin</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1623914</commentid>
    <comment_count>0</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-02-28 01:37:19 -0800</bug_when>
    <thetext>Like, WTF_MAKE_FAST_ALLOCATED, WTF_MAKE_ISO_ALLOCATED etc.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1643683</commentid>
    <comment_count>1</comment_count>
      <attachid>397032</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-04-20 16:10:43 -0700</bug_when>
    <thetext>Created attachment 397032
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1643684</commentid>
    <comment_count>2</comment_count>
      <attachid>397033</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-04-20 16:14:27 -0700</bug_when>
    <thetext>Created attachment 397033
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1643686</commentid>
    <comment_count>3</comment_count>
      <attachid>397033</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2020-04-20 16:21:59 -0700</bug_when>
    <thetext>Comment on attachment 397033
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=397033&amp;action=review

&gt; Source/WTF/wtf/FastMalloc.h:31
&gt; +// allocation is handled bmalloc if bmalloc is available.

handled by bmalloc

&gt; Source/WTF/wtf/FastMalloc.h:35
&gt; +//   1. If your class / struct is derived one of the base class using WTF_MAKE_ISO_ALLOCATED / WTF_MAKE_ISO_ALLOCATED_EXPORT,

derived from a base class which uses

&gt; Source/WTF/wtf/FastMalloc.h:42
&gt; +// Let&apos;s explain the difference in details.

Let&apos;s explain the differences in detail.

&gt; Source/WTF/wtf/FastMalloc.h:46
&gt; +//     If you annotate class / struct with these macros, class / struct is allocated with FastMalloc (bmalloc if it is available).

I don&apos;t think you need to say &quot;If you annotate class / struct with these macros&quot;

&gt; Source/WTF/wtf/FastMalloc.h:49
&gt; +//     WTF_MAKE_FAST_ALLOCATED is for class and WTF_MAKE_STRUCT_FAST_ALLOCATED is for struct. The difference between them are how we

WTF_MAKE_FAST_ALLOCATED is for classes and WTF_MAKE_STRUCT_FAST_ALLOCATED is for structs

&gt; Source/WTF/wtf/FastMalloc.h:54
&gt; +//     If you annotate class / struct with these macros, in release build, this is completely the same to WTF_MAKE_FAST_ALLOCATED etc.

Normally, these are identical to WTF_MAKE_FAST_ALLOCATED.

&gt; Source/WTF/wtf/FastMalloc.h:55
&gt; +//     These macros act differently when MallocHeapBreakdown debugging feature is enabled. When this feature is enabled, bmalloc is switched

When the MallocHeapBreakdown debugging feature

&gt; Source/WTF/wtf/FastMalloc.h:56
&gt; +//     to using System Malloc internally, and bmalloc creates MallocZone per this annotation. MallocZone allows us to track heap usage

creates a named MallocZone</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1643688</commentid>
    <comment_count>4</comment_count>
      <attachid>397033</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-04-20 16:28:06 -0700</bug_when>
    <thetext>Comment on attachment 397033
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=397033&amp;action=review

Thanks

&gt;&gt; Source/WTF/wtf/FastMalloc.h:31
&gt;&gt; +// allocation is handled bmalloc if bmalloc is available.
&gt; 
&gt; handled by bmalloc

Fixed.

&gt;&gt; Source/WTF/wtf/FastMalloc.h:35
&gt;&gt; +//   1. If your class / struct is derived one of the base class using WTF_MAKE_ISO_ALLOCATED / WTF_MAKE_ISO_ALLOCATED_EXPORT,
&gt; 
&gt; derived from a base class which uses

Fixed.

&gt;&gt; Source/WTF/wtf/FastMalloc.h:42
&gt;&gt; +// Let&apos;s explain the difference in details.
&gt; 
&gt; Let&apos;s explain the differences in detail.

Fixed.

&gt;&gt; Source/WTF/wtf/FastMalloc.h:46
&gt;&gt; +//     If you annotate class / struct with these macros, class / struct is allocated with FastMalloc (bmalloc if it is available).
&gt; 
&gt; I don&apos;t think you need to say &quot;If you annotate class / struct with these macros&quot;

Removed.

&gt;&gt; Source/WTF/wtf/FastMalloc.h:49
&gt;&gt; +//     WTF_MAKE_FAST_ALLOCATED is for class and WTF_MAKE_STRUCT_FAST_ALLOCATED is for struct. The difference between them are how we
&gt; 
&gt; WTF_MAKE_FAST_ALLOCATED is for classes and WTF_MAKE_STRUCT_FAST_ALLOCATED is for structs

Fixed.

&gt;&gt; Source/WTF/wtf/FastMalloc.h:54
&gt;&gt; +//     If you annotate class / struct with these macros, in release build, this is completely the same to WTF_MAKE_FAST_ALLOCATED etc.
&gt; 
&gt; Normally, these are identical to WTF_MAKE_FAST_ALLOCATED.

Fixed.

&gt;&gt; Source/WTF/wtf/FastMalloc.h:55
&gt;&gt; +//     These macros act differently when MallocHeapBreakdown debugging feature is enabled. When this feature is enabled, bmalloc is switched
&gt; 
&gt; When the MallocHeapBreakdown debugging feature

Fixed.

&gt;&gt; Source/WTF/wtf/FastMalloc.h:56
&gt;&gt; +//     to using System Malloc internally, and bmalloc creates MallocZone per this annotation. MallocZone allows us to track heap usage
&gt; 
&gt; creates a named MallocZone

Fixed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1643691</commentid>
    <comment_count>5</comment_count>
      <attachid>397037</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-04-20 16:29:43 -0700</bug_when>
    <thetext>Created attachment 397037
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1643708</commentid>
    <comment_count>6</comment_count>
      <attachid>397037</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-04-20 17:47:29 -0700</bug_when>
    <thetext>Comment on attachment 397037
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=397037&amp;action=review

I love the idea of having comments. The shorter and simpler this can be, the better. Already good.

&gt; Source/WTF/wtf/FastMalloc.h:37
&gt; +//   2. If your class / struct is JavaScript exposed one, use WTF_MAKE_ISO_ALLOCATED.

I don’t know what &quot;JavaScript exposed&quot; means. Maybe we could be more specific and mechanical on how we can tell if a class or struct is &quot;JavaScript exposed&quot;?

&gt; Source/WTF/wtf/FastMalloc.h:47
&gt; +//     Because of performance and memory footprint, we encourage using FastMalloc for all the class / struct allocations if possible.

The issue is that if we don’t use WTF_MAKE_FAST_ALLOCATED then new/delete will use operator new/delete, which will use system malloc. And we want to minimize the use of system malloc, because bmalloc offers better performance and memory footprint. But that’s not stated here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1643736</commentid>
    <comment_count>7</comment_count>
      <attachid>397037</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-04-20 19:45:02 -0700</bug_when>
    <thetext>Comment on attachment 397037
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=397037&amp;action=review

&gt;&gt; Source/WTF/wtf/FastMalloc.h:37
&gt;&gt; +//   2. If your class / struct is JavaScript exposed one, use WTF_MAKE_ISO_ALLOCATED.
&gt; 
&gt; I don’t know what &quot;JavaScript exposed&quot; means. Maybe we could be more specific and mechanical on how we can tell if a class or struct is &quot;JavaScript exposed&quot;?

I should rewrite it with `DOM object`, maybe this is much better to clarify this.

&gt;&gt; Source/WTF/wtf/FastMalloc.h:47
&gt;&gt; +//     Because of performance and memory footprint, we encourage using FastMalloc for all the class / struct allocations if possible.
&gt; 
&gt; The issue is that if we don’t use WTF_MAKE_FAST_ALLOCATED then new/delete will use operator new/delete, which will use system malloc. And we want to minimize the use of system malloc, because bmalloc offers better performance and memory footprint. But that’s not stated here.

Nice, I&apos;ve noted about it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1643744</commentid>
    <comment_count>8</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-04-20 19:53:00 -0700</bug_when>
    <thetext>Committed r260409: &lt;https://trac.webkit.org/changeset/260409&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1643745</commentid>
    <comment_count>9</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-04-20 19:53:39 -0700</bug_when>
    <thetext>&lt;rdar://problem/62088206&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>397032</attachid>
            <date>2020-04-20 16:10:43 -0700</date>
            <delta_ts>2020-04-20 16:14:25 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208367-20200420161042.patch</filename>
            <type>text/plain</type>
            <size>4793</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYwNDA0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IGJhN2EzYmE5YTNmN2E3OTMzM2JjMWE0
ZDdhZmJmZmRlNmUxNzZmYjYuLmY1MTM2ODA3OGMzYzBiYzdkYjkwMzdhNmJkNjRiZDNkNmM3Yjg2
NGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMjAtMDQtMjAgIFl1c3VrZSBTdXp1a2kgIDx5c3V6
dWtpQGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgZG9jdW1lbnQgYWJvdXQgV1RGIG1hbGxvYy1y
ZWxhdGVkIG1hY3JvcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjA4MzY3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgVGhpcyBhZGRzIGRvY3VtZW50IGFib3V0IFdURiBtYWxsb2MtcmVsYXRlZCBtYWNyb3Mg
c2luY2Ugd2UgaGF2ZSBidW5jaCBvZiBtYWNyb3Mgbm93LgorCisgICAgICAgICogd3RmL0Zhc3RN
YWxsb2MuaDoKKwogMjAyMC0wNC0yMCAgRGFyaW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+CiAK
ICAgICAgICAgUkVHUkVTU0lPTiAocjI1Mzk4Nyk6IFN0cmluZ0ltcGw6OmFkb3B0KFZlY3RvciYm
KSBjb3BpZXMgb25seSBoYWxmIG9mIHRoZSBjaGFyYWN0ZXJzIGluIHRoZSBWZWN0b3Igd2hlbiBj
b3B5aW5nIGFjcm9zcyBtYWxsb2Mgem9uZXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL0Zh
c3RNYWxsb2MuaCBiL1NvdXJjZS9XVEYvd3RmL0Zhc3RNYWxsb2MuaAppbmRleCBjODA3Njg5Njdh
MWY5OTVmODgxMTJmYjYxMDFlN2U2ZDQ4OTkxYjdjLi42OThmMWE3ZjFiMjFiMDhjYTk0NzA3NDQ5
NDM2NDE1NTI0MDAyNmNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi9GYXN0TWFsbG9jLmgK
KysrIGIvU291cmNlL1dURi93dGYvRmFzdE1hbGxvYy5oCkBAIC0yNyw2ICsyNyw0OCBAQAogCiBu
YW1lc3BhY2UgV1RGIHsKIAorLy8gVGhlcmUgYXJlIHNldmVyYWwgbWFsbG9jLXJlbGF0ZWQgbWFj
cm9zIHRvIGFubm90YXRlIGNsYXNzIC8gc3RydWN0LiBJZiB0aGVzZSBhbm5vdGF0aW9ucyBhcmUg
YXR0YWNoZWQsCisvLyBhbGxvY2F0aW9uIGlzIGhhbmRsZWQgYm1hbGxvYyBpZiBibWFsbG9jIGlz
IGF2YWlsYWJsZS4KKy8vCisvLyBUTFRSOyBIZXJlIGlzIGEgcXVpY2sgZ3VpZGFuY2UuCisvLwor
Ly8gICAxLiBJZiB5b3VyIGNsYXNzIC8gc3RydWN0IGlzIGRlcml2ZWQgb25lIG9mIHRoZSBiYXNl
IGNsYXNzIHVzaW5nIFdURl9NQUtFX0lTT19BTExPQ0FURUQgLyBXVEZfTUFLRV9JU09fQUxMT0NB
VEVEX0VYUE9SVCwKKy8vICAgICAgeW91IG11c3QgdXNlIFdURl9NQUtFX0lTT19BTExPQ0FURUQg
LyBXVEZfTUFLRV9JU09fQUxMT0NBVEVEX0VYUE9SVC4KKy8vICAgMi4gSWYgeW91ciBjbGFzcyAv
IHN0cnVjdCBpcyBKYXZhU2NyaXB0IGV4cG9zZWQgb25lLCB1c2UgV1RGX01BS0VfSVNPX0FMTE9D
QVRFRC4KKy8vICAgMy4gSWYgeW91ciBjbGFzcyAvIHN0cnVjdCBpcyBwYXJ0aWN1bGFybHkgbWVt
b3J5IGNvbnN1bWluZyBhbmQgaWYgeW91IHRoaW5rIHRyYWNraW5nIGZvb3RwcmludCBvZiB5b3Vy
IGNsYXNzIGlzIGhlbHBmdWwgZm9yIG1lbW9yeS1yZWR1Y3Rpb24gd29yaywKKy8vICAgICAgdXNl
IFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEX1dJVEhfSEVBUF9JREVOVElGSUVSIC8gV1RGX01BS0Vf
RkFTVF9BTExPQ0FURURfV0lUSF9IRUFQX0lERU5USUZJRVIuCisvLyAgIDQuIE90aGVyd2lzZSwg
dXNlIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEIC8gV1RGX01BS0VfU1RSVUNUX0ZBU1RfQUxMT0NB
VEVELgorLy8KKy8vIExldCdzIGV4cGxhaW4gdGhlIGRpZmZlcmVuY2UgaW4gZGV0YWlscy4KKy8v
CisvLyAtIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVECisvLyAtIFdURl9NQUtFX1NUUlVDVF9GQVNU
X0FMTE9DQVRFRAorLy8gICAgIElmIHlvdSBhbm5vdGF0ZSBjbGFzcyAvIHN0cnVjdCB3aXRoIHRo
ZXNlIG1hY3JvcywgY2xhc3MgLyBzdHJ1Y3QgaXMgYWxsb2NhdGVkIHdpdGggRmFzdE1hbGxvYyAo
Ym1hbGxvYyBpZiBpdCBpcyBhdmFpbGFibGUpLgorLy8gICAgIEJlY2F1c2Ugb2YgcGVyZm9ybWFu
Y2UgYW5kIG1lbW9yeSBmb290cHJpbnQsIHdlIGVuY291cmFnZSB1c2luZyBGYXN0TWFsbG9jIGZv
ciBhbGwgdGhlIGNsYXNzIC8gc3RydWN0IGFsbG9jYXRpb25zIGlmIHBvc3NpYmxlLgorLy8gICAg
IFRoZXNlIGFubm90YXRpb25zIHNob3VsZCBiZSB0aGUgZGVmYXVsdCBjaG9pY2UgZm9yIGFsbG9j
YXRpb25zLgorLy8gICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEIGlzIGZvciBjbGFzcyBhbmQg
V1RGX01BS0VfU1RSVUNUX0ZBU1RfQUxMT0NBVEVEIGlzIGZvciBzdHJ1Y3QuIFRoZSBkaWZmZXJl
bmNlIGJldHdlZW4gdGhlbSBhcmUgaG93IHdlCisvLyAgICAgdXNlIGBwdWJsaWM6YCAvIGBwcml2
YXRlOmAgYWNjZXNzIHNwZWNpZmllcnMgaW4gdGhlIGV4cGFuZGVkIG1hY3JvLgorLy8KKy8vIC0g
V1RGX01BS0VfRkFTVF9BTExPQ0FURURfV0lUSF9IRUFQX0lERU5USUZJRVIoQ2xhc3NOYW1lKQor
Ly8gLSBXVEZfTUFLRV9TVFJVQ1RfRkFTVF9BTExPQ0FURURfV0lUSF9IRUFQX0lERU5USUZJRVIo
Q2xhc3NOYW1lKQorLy8gICAgIElmIHlvdSBhbm5vdGF0ZSBjbGFzcyAvIHN0cnVjdCB3aXRoIHRo
ZXNlIG1hY3JvcywgaW4gcmVsZWFzZSBidWlsZCwgdGhpcyBpcyBjb21wbGV0ZWx5IHRoZSBzYW1l
IHRvIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEIGV0Yy4KKy8vICAgICBUaGVzZSBtYWNyb3MgYWN0
IGRpZmZlcmVudGx5IHdoZW4gTWFsbG9jSGVhcEJyZWFrZG93biBkZWJ1Z2dpbmcgZmVhdHVyZSBp
cyBlbmFibGVkLiBXaGVuIHRoaXMgZmVhdHVyZSBpcyBlbmFibGVkLCBibWFsbG9jIGlzIHN3aXRj
aGVkCisvLyAgICAgdG8gdXNpbmcgU3lzdGVtIE1hbGxvYyBpbnRlcm5hbGx5LCBhbmQgYm1hbGxv
YyBjcmVhdGVzIE1hbGxvY1pvbmUgcGVyIHRoaXMgYW5ub3RhdGlvbi4gTWFsbG9jWm9uZSBhbGxv
d3MgdXMgdG8gdHJhY2sgaGVhcCB1c2FnZQorLy8gICAgIHBlciB0aGlzIGFubm90YXRpb24sIG9m
ZmVyaW5nIHF1aWNrIHdheSBvZiBicmVha2luZyBkb3duIG1lbW9yeSB1c2FnZS4KKy8vICAgICBU
byBlbmFibGUgTWFsbG9jSGVhcEJyZWFrZG93biwgc2V0IEVOQUJMRV9NQUxMT0NfSEVBUF9CUkVB
S0RPV04gaW4gV1RGIGFuZCBCRU5BQkxFX01BTExPQ19IRUFQX0JSRUFLRE9XTiBpbiBibWFsbG9j
LgorLy8gICAgIEZvciB0aGUgZGV0YWlscyBvZiBNYWxsb2NIZWFwQnJlYWtkb3duLCBwbGVhc2Ug
bG9vayBhdCBDaGFuZ2VMb2cgb2YgaHR0cHM6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0LzI1
Mzk4Ny93ZWJraXQuCisvLworLy8gLSBXVEZfTUFLRV9JU09fQUxMT0NBVEVEKENsYXNzTmFtZSkK
Ky8vIC0gV1RGX01BS0VfSVNPX0FMTE9DQVRFRF9FWFBPUlQoQ2xhc3NOYW1lLCBleHBvcnRNYWNy
bykKKy8vICAgICBJZiB0aGlzIGFubm90YXRpb24gaXMgc3BlY2lmaWVkLCB5b3VyIGNsYXNzIGlz
IGFsbG9jYXRlZCBmcm9tIGJtYWxsb2MgSXNvSGVhcC4gSXNvSGVhcCBhc3NpZ25zIHZpcnR1YWwg
YWRkcmVzcyBvbmx5IGZvciBwYXJ0aWN1bGFyIHR5cGUsCisvLyAgICAgc28gdGhhdCB0aGlzIGF2
b2lkcyB1c2UtYWZ0ZXItZnJlZSBiYXNlZCB0eXBlIHB1bm5pbmcuIFdlIGFyZSBhZG9wdGluZyBJ
c29IZWFwIG1haW5seSBmb3IgY2xhc3Mvc3RydWN0IHdoaWNoIGlzIGV4cG9zZWQgdG8gdXNlciBK
YXZhU2NyaXB0LgorLy8gICAgIEZvciBlYXhtcGxlLCBhbGwgdGhlIGRlcml2ZWQgY2xhc3NlcyBv
ZiBTY3JpcHRXcmFwcGFibGUgbXVzdCBiZSBhbGxvY2F0ZWQgaW4gSXNvSGVhcC4KKy8vICAgICBV
bmxpa2UgdGhlIG90aGVyIG1hY3JvcywgeW91IG5lZWQgdG8gYW5ub3RhdGUgZWFjaCBkZXJpdmVk
IGNsYXNzIHdpdGggV1RGX01BS0VfSVNPX0FMTE9DQVRFRCBpZiB5b3VyIGJhc2UgY2xhc3MgaXMg
YW5ub3RhdGVkIHdpdGggV1RGX01BS0VfSVNPX0FMTE9DQVRFRC4KKy8vICAgICBXaGVuIHlvdSBh
bm5vdGF0ZSB0aGUgY2xhc3Mgd2l0aCBXVEZfTUFLRV9JU09fQUxMT0NBVEVEKFhYWCksIHlvdSBu
ZWVkIHRvIGFkZCBXVEZfTUFLRV9JU09fQUxMT0NBVEVEX0lNUEwoWFhYKSBpbiBjcHAgZmlsZSBz
aWRlLgorLy8gICAgIEJlY2F1c2UgV1RGX01BS0VfSVNPX0FMTE9DQVRFRF9JTVBMIGRlZmluZXMg
ZnVuY3Rpb25zIGluIGNwcCBzaWRlLCB5b3Ugc29tZXRpbWVzIG5lZWQgdG8gYW5ub3RhdGUgdGhl
c2UgZnVuY3Rpb25zIHdpdGggZXhwb3J0IG1hY3JvcyB3aGVuIHlvdXIgY2xhc3MgaXMKKy8vICAg
ICB1c2VkIG91dHNpZGUgb2YgdGhlIGNvbXBvbmVudCBkZWZpbmluZyB5b3VyIGNsYXNzIChlLmcu
IHlvdXIgY2xhc3MgaXMgaW4gV2ViQ29yZSBhbmQgaXQgaXMgYWxzbyB1c2VkIGluIFdlYktpdCku
IEluIHRoaXMgY2FzZSwgeW91IGNhbiB1c2UgV1RGX01BS0VfSVNPX0FMTE9DQVRFRF9FWFBPUlQK
Ky8vICAgICB0byBhbm5vdGF0ZSB0aGVzZSBmdW5jdGlvbnMgd2l0aCBhcHByb3ByaWF0ZSBleHBv
cnQgbWFjcm9zOiBlLmcuIFdURl9NQUtFX0lTT19BTExPQ0FURURfRVhQT1JUKElEQlRyYW5zYWN0
aW9uLCBXRUJDT1JFX0VYUE9SVCkuCisKICNpZiAhZGVmaW5lZChOREVCVUcpCiBXVEZfRVhQT1JU
X1BSSVZBVEUgdm9pZCBmYXN0U2V0TWF4U2luZ2xlQWxsb2NhdGlvblNpemUoc2l6ZV90KTsKICNl
bmRpZgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>397033</attachid>
            <date>2020-04-20 16:14:27 -0700</date>
            <delta_ts>2020-04-20 16:29:41 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208367-20200420161426.patch</filename>
            <type>text/plain</type>
            <size>4793</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYwNDA0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IGJhN2EzYmE5YTNmN2E3OTMzM2JjMWE0
ZDdhZmJmZmRlNmUxNzZmYjYuLmY1MTM2ODA3OGMzYzBiYzdkYjkwMzdhNmJkNjRiZDNkNmM3Yjg2
NGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMjAtMDQtMjAgIFl1c3VrZSBTdXp1a2kgIDx5c3V6
dWtpQGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgZG9jdW1lbnQgYWJvdXQgV1RGIG1hbGxvYy1y
ZWxhdGVkIG1hY3JvcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjA4MzY3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgVGhpcyBhZGRzIGRvY3VtZW50IGFib3V0IFdURiBtYWxsb2MtcmVsYXRlZCBtYWNyb3Mg
c2luY2Ugd2UgaGF2ZSBidW5jaCBvZiBtYWNyb3Mgbm93LgorCisgICAgICAgICogd3RmL0Zhc3RN
YWxsb2MuaDoKKwogMjAyMC0wNC0yMCAgRGFyaW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+CiAK
ICAgICAgICAgUkVHUkVTU0lPTiAocjI1Mzk4Nyk6IFN0cmluZ0ltcGw6OmFkb3B0KFZlY3RvciYm
KSBjb3BpZXMgb25seSBoYWxmIG9mIHRoZSBjaGFyYWN0ZXJzIGluIHRoZSBWZWN0b3Igd2hlbiBj
b3B5aW5nIGFjcm9zcyBtYWxsb2Mgem9uZXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL0Zh
c3RNYWxsb2MuaCBiL1NvdXJjZS9XVEYvd3RmL0Zhc3RNYWxsb2MuaAppbmRleCBjODA3Njg5Njdh
MWY5OTVmODgxMTJmYjYxMDFlN2U2ZDQ4OTkxYjdjLi42YmMwMzkxYTdmOGE3NWRhN2E1ZGU3MjI1
YzQ5ZjUxYWU4OWMxMWM2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi9GYXN0TWFsbG9jLmgK
KysrIGIvU291cmNlL1dURi93dGYvRmFzdE1hbGxvYy5oCkBAIC0yNyw2ICsyNyw0OCBAQAogCiBu
YW1lc3BhY2UgV1RGIHsKIAorLy8gVGhlcmUgYXJlIHNldmVyYWwgbWFsbG9jLXJlbGF0ZWQgbWFj
cm9zIHRvIGFubm90YXRlIGNsYXNzIC8gc3RydWN0LiBJZiB0aGVzZSBhbm5vdGF0aW9ucyBhcmUg
YXR0YWNoZWQsCisvLyBhbGxvY2F0aW9uIGlzIGhhbmRsZWQgYm1hbGxvYyBpZiBibWFsbG9jIGlz
IGF2YWlsYWJsZS4KKy8vCisvLyBUTERSOyBIZXJlIGlzIGEgcXVpY2sgZ3VpZGFuY2UuCisvLwor
Ly8gICAxLiBJZiB5b3VyIGNsYXNzIC8gc3RydWN0IGlzIGRlcml2ZWQgb25lIG9mIHRoZSBiYXNl
IGNsYXNzIHVzaW5nIFdURl9NQUtFX0lTT19BTExPQ0FURUQgLyBXVEZfTUFLRV9JU09fQUxMT0NB
VEVEX0VYUE9SVCwKKy8vICAgICAgeW91IG11c3QgdXNlIFdURl9NQUtFX0lTT19BTExPQ0FURUQg
LyBXVEZfTUFLRV9JU09fQUxMT0NBVEVEX0VYUE9SVC4KKy8vICAgMi4gSWYgeW91ciBjbGFzcyAv
IHN0cnVjdCBpcyBKYXZhU2NyaXB0IGV4cG9zZWQgb25lLCB1c2UgV1RGX01BS0VfSVNPX0FMTE9D
QVRFRC4KKy8vICAgMy4gSWYgeW91ciBjbGFzcyAvIHN0cnVjdCBpcyBwYXJ0aWN1bGFybHkgbWVt
b3J5IGNvbnN1bWluZyBhbmQgaWYgeW91IHRoaW5rIHRyYWNraW5nIGZvb3RwcmludCBvZiB5b3Vy
IGNsYXNzIGlzIGhlbHBmdWwgZm9yIG1lbW9yeS1yZWR1Y3Rpb24gd29yaywKKy8vICAgICAgdXNl
IFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEX1dJVEhfSEVBUF9JREVOVElGSUVSIC8gV1RGX01BS0Vf
RkFTVF9BTExPQ0FURURfV0lUSF9IRUFQX0lERU5USUZJRVIuCisvLyAgIDQuIE90aGVyd2lzZSwg
dXNlIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEIC8gV1RGX01BS0VfU1RSVUNUX0ZBU1RfQUxMT0NB
VEVELgorLy8KKy8vIExldCdzIGV4cGxhaW4gdGhlIGRpZmZlcmVuY2UgaW4gZGV0YWlscy4KKy8v
CisvLyAtIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVECisvLyAtIFdURl9NQUtFX1NUUlVDVF9GQVNU
X0FMTE9DQVRFRAorLy8gICAgIElmIHlvdSBhbm5vdGF0ZSBjbGFzcyAvIHN0cnVjdCB3aXRoIHRo
ZXNlIG1hY3JvcywgY2xhc3MgLyBzdHJ1Y3QgaXMgYWxsb2NhdGVkIHdpdGggRmFzdE1hbGxvYyAo
Ym1hbGxvYyBpZiBpdCBpcyBhdmFpbGFibGUpLgorLy8gICAgIEJlY2F1c2Ugb2YgcGVyZm9ybWFu
Y2UgYW5kIG1lbW9yeSBmb290cHJpbnQsIHdlIGVuY291cmFnZSB1c2luZyBGYXN0TWFsbG9jIGZv
ciBhbGwgdGhlIGNsYXNzIC8gc3RydWN0IGFsbG9jYXRpb25zIGlmIHBvc3NpYmxlLgorLy8gICAg
IFRoZXNlIGFubm90YXRpb25zIHNob3VsZCBiZSB0aGUgZGVmYXVsdCBjaG9pY2UgZm9yIGFsbG9j
YXRpb25zLgorLy8gICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEIGlzIGZvciBjbGFzcyBhbmQg
V1RGX01BS0VfU1RSVUNUX0ZBU1RfQUxMT0NBVEVEIGlzIGZvciBzdHJ1Y3QuIFRoZSBkaWZmZXJl
bmNlIGJldHdlZW4gdGhlbSBhcmUgaG93IHdlCisvLyAgICAgdXNlIGBwdWJsaWM6YCAvIGBwcml2
YXRlOmAgYWNjZXNzIHNwZWNpZmllcnMgaW4gdGhlIGV4cGFuZGVkIG1hY3JvLgorLy8KKy8vIC0g
V1RGX01BS0VfRkFTVF9BTExPQ0FURURfV0lUSF9IRUFQX0lERU5USUZJRVIoQ2xhc3NOYW1lKQor
Ly8gLSBXVEZfTUFLRV9TVFJVQ1RfRkFTVF9BTExPQ0FURURfV0lUSF9IRUFQX0lERU5USUZJRVIo
Q2xhc3NOYW1lKQorLy8gICAgIElmIHlvdSBhbm5vdGF0ZSBjbGFzcyAvIHN0cnVjdCB3aXRoIHRo
ZXNlIG1hY3JvcywgaW4gcmVsZWFzZSBidWlsZCwgdGhpcyBpcyBjb21wbGV0ZWx5IHRoZSBzYW1l
IHRvIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEIGV0Yy4KKy8vICAgICBUaGVzZSBtYWNyb3MgYWN0
IGRpZmZlcmVudGx5IHdoZW4gTWFsbG9jSGVhcEJyZWFrZG93biBkZWJ1Z2dpbmcgZmVhdHVyZSBp
cyBlbmFibGVkLiBXaGVuIHRoaXMgZmVhdHVyZSBpcyBlbmFibGVkLCBibWFsbG9jIGlzIHN3aXRj
aGVkCisvLyAgICAgdG8gdXNpbmcgU3lzdGVtIE1hbGxvYyBpbnRlcm5hbGx5LCBhbmQgYm1hbGxv
YyBjcmVhdGVzIE1hbGxvY1pvbmUgcGVyIHRoaXMgYW5ub3RhdGlvbi4gTWFsbG9jWm9uZSBhbGxv
d3MgdXMgdG8gdHJhY2sgaGVhcCB1c2FnZQorLy8gICAgIHBlciB0aGlzIGFubm90YXRpb24sIG9m
ZmVyaW5nIHF1aWNrIHdheSBvZiBicmVha2luZyBkb3duIG1lbW9yeSB1c2FnZS4KKy8vICAgICBU
byBlbmFibGUgTWFsbG9jSGVhcEJyZWFrZG93biwgc2V0IEVOQUJMRV9NQUxMT0NfSEVBUF9CUkVB
S0RPV04gaW4gV1RGIGFuZCBCRU5BQkxFX01BTExPQ19IRUFQX0JSRUFLRE9XTiBpbiBibWFsbG9j
LgorLy8gICAgIEZvciB0aGUgZGV0YWlscyBvZiBNYWxsb2NIZWFwQnJlYWtkb3duLCBwbGVhc2Ug
bG9vayBhdCBDaGFuZ2VMb2cgb2YgaHR0cHM6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0LzI1
Mzk4Ny93ZWJraXQuCisvLworLy8gLSBXVEZfTUFLRV9JU09fQUxMT0NBVEVEKENsYXNzTmFtZSkK
Ky8vIC0gV1RGX01BS0VfSVNPX0FMTE9DQVRFRF9FWFBPUlQoQ2xhc3NOYW1lLCBleHBvcnRNYWNy
bykKKy8vICAgICBJZiB0aGlzIGFubm90YXRpb24gaXMgc3BlY2lmaWVkLCB5b3VyIGNsYXNzIGlz
IGFsbG9jYXRlZCBmcm9tIGJtYWxsb2MgSXNvSGVhcC4gSXNvSGVhcCBhc3NpZ25zIHZpcnR1YWwg
YWRkcmVzcyBvbmx5IGZvciBwYXJ0aWN1bGFyIHR5cGUsCisvLyAgICAgc28gdGhhdCB0aGlzIGF2
b2lkcyB1c2UtYWZ0ZXItZnJlZSBiYXNlZCB0eXBlIHB1bm5pbmcuIFdlIGFyZSBhZG9wdGluZyBJ
c29IZWFwIG1haW5seSBmb3IgY2xhc3Mvc3RydWN0IHdoaWNoIGlzIGV4cG9zZWQgdG8gdXNlciBK
YXZhU2NyaXB0LgorLy8gICAgIEZvciBlYXhtcGxlLCBhbGwgdGhlIGRlcml2ZWQgY2xhc3NlcyBv
ZiBTY3JpcHRXcmFwcGFibGUgbXVzdCBiZSBhbGxvY2F0ZWQgaW4gSXNvSGVhcC4KKy8vICAgICBV
bmxpa2UgdGhlIG90aGVyIG1hY3JvcywgeW91IG5lZWQgdG8gYW5ub3RhdGUgZWFjaCBkZXJpdmVk
IGNsYXNzIHdpdGggV1RGX01BS0VfSVNPX0FMTE9DQVRFRCBpZiB5b3VyIGJhc2UgY2xhc3MgaXMg
YW5ub3RhdGVkIHdpdGggV1RGX01BS0VfSVNPX0FMTE9DQVRFRC4KKy8vICAgICBXaGVuIHlvdSBh
bm5vdGF0ZSB0aGUgY2xhc3Mgd2l0aCBXVEZfTUFLRV9JU09fQUxMT0NBVEVEKFhYWCksIHlvdSBu
ZWVkIHRvIGFkZCBXVEZfTUFLRV9JU09fQUxMT0NBVEVEX0lNUEwoWFhYKSBpbiBjcHAgZmlsZSBz
aWRlLgorLy8gICAgIEJlY2F1c2UgV1RGX01BS0VfSVNPX0FMTE9DQVRFRF9JTVBMIGRlZmluZXMg
ZnVuY3Rpb25zIGluIGNwcCBzaWRlLCB5b3Ugc29tZXRpbWVzIG5lZWQgdG8gYW5ub3RhdGUgdGhl
c2UgZnVuY3Rpb25zIHdpdGggZXhwb3J0IG1hY3JvcyB3aGVuIHlvdXIgY2xhc3MgaXMKKy8vICAg
ICB1c2VkIG91dHNpZGUgb2YgdGhlIGNvbXBvbmVudCBkZWZpbmluZyB5b3VyIGNsYXNzIChlLmcu
IHlvdXIgY2xhc3MgaXMgaW4gV2ViQ29yZSBhbmQgaXQgaXMgYWxzbyB1c2VkIGluIFdlYktpdCku
IEluIHRoaXMgY2FzZSwgeW91IGNhbiB1c2UgV1RGX01BS0VfSVNPX0FMTE9DQVRFRF9FWFBPUlQK
Ky8vICAgICB0byBhbm5vdGF0ZSB0aGVzZSBmdW5jdGlvbnMgd2l0aCBhcHByb3ByaWF0ZSBleHBv
cnQgbWFjcm9zOiBlLmcuIFdURl9NQUtFX0lTT19BTExPQ0FURURfRVhQT1JUKElEQlRyYW5zYWN0
aW9uLCBXRUJDT1JFX0VYUE9SVCkuCisKICNpZiAhZGVmaW5lZChOREVCVUcpCiBXVEZfRVhQT1JU
X1BSSVZBVEUgdm9pZCBmYXN0U2V0TWF4U2luZ2xlQWxsb2NhdGlvblNpemUoc2l6ZV90KTsKICNl
bmRpZgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>397037</attachid>
            <date>2020-04-20 16:29:43 -0700</date>
            <delta_ts>2020-04-20 17:47:29 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208367-20200420162942.patch</filename>
            <type>text/plain</type>
            <size>4662</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYwNDA0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IGJhN2EzYmE5YTNmN2E3OTMzM2JjMWE0
ZDdhZmJmZmRlNmUxNzZmYjYuLmY1MTM2ODA3OGMzYzBiYzdkYjkwMzdhNmJkNjRiZDNkNmM3Yjg2
NGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMjAtMDQtMjAgIFl1c3VrZSBTdXp1a2kgIDx5c3V6
dWtpQGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgZG9jdW1lbnQgYWJvdXQgV1RGIG1hbGxvYy1y
ZWxhdGVkIG1hY3JvcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjA4MzY3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgVGhpcyBhZGRzIGRvY3VtZW50IGFib3V0IFdURiBtYWxsb2MtcmVsYXRlZCBtYWNyb3Mg
c2luY2Ugd2UgaGF2ZSBidW5jaCBvZiBtYWNyb3Mgbm93LgorCisgICAgICAgICogd3RmL0Zhc3RN
YWxsb2MuaDoKKwogMjAyMC0wNC0yMCAgRGFyaW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+CiAK
ICAgICAgICAgUkVHUkVTU0lPTiAocjI1Mzk4Nyk6IFN0cmluZ0ltcGw6OmFkb3B0KFZlY3RvciYm
KSBjb3BpZXMgb25seSBoYWxmIG9mIHRoZSBjaGFyYWN0ZXJzIGluIHRoZSBWZWN0b3Igd2hlbiBj
b3B5aW5nIGFjcm9zcyBtYWxsb2Mgem9uZXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL0Zh
c3RNYWxsb2MuaCBiL1NvdXJjZS9XVEYvd3RmL0Zhc3RNYWxsb2MuaAppbmRleCBjODA3Njg5Njdh
MWY5OTVmODgxMTJmYjYxMDFlN2U2ZDQ4OTkxYjdjLi40MjQyMDY5NDM5NmEzZDM5MjQwYTQxMmE0
NTg3OGM2NGQ5NmZiMTY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi9GYXN0TWFsbG9jLmgK
KysrIGIvU291cmNlL1dURi93dGYvRmFzdE1hbGxvYy5oCkBAIC0yNyw2ICsyNyw0OCBAQAogCiBu
YW1lc3BhY2UgV1RGIHsKIAorLy8gVGhlcmUgYXJlIHNldmVyYWwgbWFsbG9jLXJlbGF0ZWQgbWFj
cm9zIHRvIGFubm90YXRlIGNsYXNzIC8gc3RydWN0LiBJZiB0aGVzZSBhbm5vdGF0aW9ucyBhcmUg
YXR0YWNoZWQsCisvLyBhbGxvY2F0aW9uIGlzIGhhbmRsZWQgYnkgYm1hbGxvYyBpZiBibWFsbG9j
IGlzIGF2YWlsYWJsZS4KKy8vCisvLyBUTERSOyBIZXJlIGlzIGEgcXVpY2sgZ3VpZGFuY2UuCisv
LworLy8gICAxLiBJZiB5b3VyIGNsYXNzIC8gc3RydWN0IGlzIGRlcml2ZWQgZnJvbSBhIGJhc2Ug
Y2xhc3Mgd2hpY2ggdXNlcyBXVEZfTUFLRV9JU09fQUxMT0NBVEVEIC8gV1RGX01BS0VfSVNPX0FM
TE9DQVRFRF9FWFBPUlQsCisvLyAgICAgIHlvdSBtdXN0IHVzZSBXVEZfTUFLRV9JU09fQUxMT0NB
VEVEIC8gV1RGX01BS0VfSVNPX0FMTE9DQVRFRF9FWFBPUlQuCisvLyAgIDIuIElmIHlvdXIgY2xh
c3MgLyBzdHJ1Y3QgaXMgSmF2YVNjcmlwdCBleHBvc2VkIG9uZSwgdXNlIFdURl9NQUtFX0lTT19B
TExPQ0FURUQuCisvLyAgIDMuIElmIHlvdXIgY2xhc3MgLyBzdHJ1Y3QgaXMgcGFydGljdWxhcmx5
IG1lbW9yeSBjb25zdW1pbmcgYW5kIGlmIHlvdSB0aGluayB0cmFja2luZyBmb290cHJpbnQgb2Yg
eW91ciBjbGFzcyBpcyBoZWxwZnVsIGZvciBtZW1vcnktcmVkdWN0aW9uIHdvcmssCisvLyAgICAg
IHVzZSBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRF9XSVRIX0hFQVBfSURFTlRJRklFUiAvIFdURl9N
QUtFX0ZBU1RfQUxMT0NBVEVEX1dJVEhfSEVBUF9JREVOVElGSUVSLgorLy8gICA0LiBPdGhlcndp
c2UsIHVzZSBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRCAvIFdURl9NQUtFX1NUUlVDVF9GQVNUX0FM
TE9DQVRFRC4KKy8vCisvLyBMZXQncyBleHBsYWluIHRoZSBkaWZmZXJlbmNlcyBpbiBkZXRhaWwu
CisvLworLy8gLSBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRAorLy8gLSBXVEZfTUFLRV9TVFJVQ1Rf
RkFTVF9BTExPQ0FURUQKKy8vICAgICBjbGFzcyAvIHN0cnVjdCBpcyBhbGxvY2F0ZWQgd2l0aCBG
YXN0TWFsbG9jIChibWFsbG9jIGlmIGl0IGlzIGF2YWlsYWJsZSkuCisvLyAgICAgQmVjYXVzZSBv
ZiBwZXJmb3JtYW5jZSBhbmQgbWVtb3J5IGZvb3RwcmludCwgd2UgZW5jb3VyYWdlIHVzaW5nIEZh
c3RNYWxsb2MgZm9yIGFsbCB0aGUgY2xhc3MgLyBzdHJ1Y3QgYWxsb2NhdGlvbnMgaWYgcG9zc2li
bGUuCisvLyAgICAgVGhlc2UgYW5ub3RhdGlvbnMgc2hvdWxkIGJlIHRoZSBkZWZhdWx0IGNob2lj
ZSBmb3IgYWxsb2NhdGlvbnMuCisvLyAgICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQgaXMgZm9y
IGNsYXNzZXMgYW5kIFdURl9NQUtFX1NUUlVDVF9GQVNUX0FMTE9DQVRFRCBpcyBmb3Igc3RydWN0
cy4gVGhlIGRpZmZlcmVuY2UgYmV0d2VlbiB0aGVtIGlzIGhvdyB3ZQorLy8gICAgIHVzZSBgcHVi
bGljOmAgLyBgcHJpdmF0ZTpgIGFjY2VzcyBzcGVjaWZpZXJzIGluIHRoZSBleHBhbmRlZCBtYWNy
by4KKy8vCisvLyAtIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEX1dJVEhfSEVBUF9JREVOVElGSUVS
KENsYXNzTmFtZSkKKy8vIC0gV1RGX01BS0VfU1RSVUNUX0ZBU1RfQUxMT0NBVEVEX1dJVEhfSEVB
UF9JREVOVElGSUVSKENsYXNzTmFtZSkKKy8vICAgICBOb3JtYWxseSwgdGhlc2UgYXJlIGlkZW50
aWNhbCB0byBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRC4KKy8vICAgICBXaGVuIHRoZSBNYWxsb2NI
ZWFwQnJlYWtkb3duIGRlYnVnZ2luZyBmZWF0dXJlIGlzIGVuYWJsZWQsIHRoZXNlIG1hY3JvcyBh
Y3QgZGlmZmVyZW50bHkuIGJtYWxsb2MgaXMgc3dpdGNoZWQKKy8vICAgICB0byB1c2luZyBTeXN0
ZW0gTWFsbG9jIGludGVybmFsbHksIGFuZCBibWFsbG9jIGNyZWF0ZXMgYSBuYW1lZCBNYWxsb2Na
b25lIHBlciB0aGlzIGFubm90YXRpb24uIE1hbGxvY1pvbmUgYWxsb3dzIHVzIHRvIHRyYWNrIGhl
YXAgdXNhZ2UKKy8vICAgICBwZXIgdGhpcyBhbm5vdGF0aW9uLCBvZmZlcmluZyBxdWljayB3YXkg
b2YgYnJlYWtpbmcgZG93biBtZW1vcnkgdXNhZ2UuCisvLyAgICAgVG8gZW5hYmxlIE1hbGxvY0hl
YXBCcmVha2Rvd24sIHNldCBFTkFCTEVfTUFMTE9DX0hFQVBfQlJFQUtET1dOIGluIFdURiBhbmQg
QkVOQUJMRV9NQUxMT0NfSEVBUF9CUkVBS0RPV04gaW4gYm1hbGxvYy4KKy8vICAgICBGb3IgdGhl
IGRldGFpbHMgb2YgTWFsbG9jSGVhcEJyZWFrZG93biwgcGxlYXNlIGxvb2sgYXQgQ2hhbmdlTG9n
IG9mIGh0dHBzOi8vdHJhYy53ZWJraXQub3JnL2NoYW5nZXNldC8yNTM5ODcvd2Via2l0LgorLy8K
Ky8vIC0gV1RGX01BS0VfSVNPX0FMTE9DQVRFRChDbGFzc05hbWUpCisvLyAtIFdURl9NQUtFX0lT
T19BTExPQ0FURURfRVhQT1JUKENsYXNzTmFtZSwgZXhwb3J0TWFjcm8pCisvLyAgICAgSWYgdGhp
cyBhbm5vdGF0aW9uIGlzIHNwZWNpZmllZCwgeW91ciBjbGFzcyBpcyBhbGxvY2F0ZWQgZnJvbSBi
bWFsbG9jIElzb0hlYXAuIElzb0hlYXAgYXNzaWducyB2aXJ0dWFsIGFkZHJlc3Mgb25seSBmb3Ig
cGFydGljdWxhciB0eXBlLAorLy8gICAgIHNvIHRoYXQgdGhpcyBhdm9pZHMgdXNlLWFmdGVyLWZy
ZWUgYmFzZWQgdHlwZSBwdW5uaW5nLiBXZSBhcmUgYWRvcHRpbmcgSXNvSGVhcCBtYWlubHkgZm9y
IGNsYXNzL3N0cnVjdCB3aGljaCBpcyBleHBvc2VkIHRvIHVzZXIgSmF2YVNjcmlwdC4KKy8vICAg
ICBGb3IgZWF4bXBsZSwgYWxsIHRoZSBkZXJpdmVkIGNsYXNzZXMgb2YgU2NyaXB0V3JhcHBhYmxl
IG11c3QgYmUgYWxsb2NhdGVkIGluIElzb0hlYXAuCisvLyAgICAgVW5saWtlIHRoZSBvdGhlciBt
YWNyb3MsIHlvdSBuZWVkIHRvIGFubm90YXRlIGVhY2ggZGVyaXZlZCBjbGFzcyB3aXRoIFdURl9N
QUtFX0lTT19BTExPQ0FURUQgaWYgeW91ciBiYXNlIGNsYXNzIGlzIGFubm90YXRlZCB3aXRoIFdU
Rl9NQUtFX0lTT19BTExPQ0FURUQuCisvLyAgICAgV2hlbiB5b3UgYW5ub3RhdGUgdGhlIGNsYXNz
IHdpdGggV1RGX01BS0VfSVNPX0FMTE9DQVRFRChYWFgpLCB5b3UgbmVlZCB0byBhZGQgV1RGX01B
S0VfSVNPX0FMTE9DQVRFRF9JTVBMKFhYWCkgaW4gY3BwIGZpbGUgc2lkZS4KKy8vICAgICBCZWNh
dXNlIFdURl9NQUtFX0lTT19BTExPQ0FURURfSU1QTCBkZWZpbmVzIGZ1bmN0aW9ucyBpbiBjcHAg
c2lkZSwgeW91IHNvbWV0aW1lcyBuZWVkIHRvIGFubm90YXRlIHRoZXNlIGZ1bmN0aW9ucyB3aXRo
IGV4cG9ydCBtYWNyb3Mgd2hlbiB5b3VyIGNsYXNzIGlzCisvLyAgICAgdXNlZCBvdXRzaWRlIG9m
IHRoZSBjb21wb25lbnQgZGVmaW5pbmcgeW91ciBjbGFzcyAoZS5nLiB5b3VyIGNsYXNzIGlzIGlu
IFdlYkNvcmUgYW5kIGl0IGlzIGFsc28gdXNlZCBpbiBXZWJLaXQpLiBJbiB0aGlzIGNhc2UsIHlv
dSBjYW4gdXNlIFdURl9NQUtFX0lTT19BTExPQ0FURURfRVhQT1JUCisvLyAgICAgdG8gYW5ub3Rh
dGUgdGhlc2UgZnVuY3Rpb25zIHdpdGggYXBwcm9wcmlhdGUgZXhwb3J0IG1hY3JvczogZS5nLiBX
VEZfTUFLRV9JU09fQUxMT0NBVEVEX0VYUE9SVChJREJUcmFuc2FjdGlvbiwgV0VCQ09SRV9FWFBP
UlQpLgorCiAjaWYgIWRlZmluZWQoTkRFQlVHKQogV1RGX0VYUE9SVF9QUklWQVRFIHZvaWQgZmFz
dFNldE1heFNpbmdsZUFsbG9jYXRpb25TaXplKHNpemVfdCk7CiAjZW5kaWYK
</data>
<flag name="review"
          id="412457"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>