<?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>205182</bug_id>
          
          <creation_ts>2019-12-12 14:51:49 -0800</creation_ts>
          <short_desc>Structure should have a bloom filter of seen identifiers</short_desc>
          <delta_ts>2019-12-13 18:09:23 -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>JavaScriptCore</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Saam Barati">saam</reporter>
          <assigned_to name="Saam Barati">saam</assigned_to>
          <cc>benjamin</cc>
    
    <cc>commit-queue</cc>
    
    <cc>fpizlo</cc>
    
    <cc>ggaren</cc>
    
    <cc>gskachkov</cc>
    
    <cc>guijemont</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>rmorisset</cc>
    
    <cc>ticaiolima</cc>
    
    <cc>tzagallo</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>ysuzuki</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1598150</commentid>
    <comment_count>0</comment_count>
    <who name="Saam Barati">saam</who>
    <bug_when>2019-12-12 14:51:49 -0800</bug_when>
    <thetext>To speed up ::get

Running perf tests now.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1598151</commentid>
    <comment_count>1</comment_count>
      <attachid>385552</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2019-12-12 14:52:14 -0800</bug_when>
    <thetext>Created attachment 385552
WIP

Will make a patch for review if perf results are good.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1598529</commentid>
    <comment_count>2</comment_count>
    <who name="Saam Barati">saam</who>
    <bug_when>2019-12-13 15:29:58 -0800</bug_when>
    <thetext>Seems like 0.5% faster on speedo2</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1598533</commentid>
    <comment_count>3</comment_count>
      <attachid>385651</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2019-12-13 15:42:50 -0800</bug_when>
    <thetext>Created attachment 385651
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1598534</commentid>
    <comment_count>4</comment_count>
      <attachid>385651</attachid>
    <who name="Tadeu Zagallo">tzagallo</who>
    <bug_when>2019-12-13 15:48:10 -0800</bug_when>
    <thetext>Comment on attachment 385651
patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1598535</commentid>
    <comment_count>5</comment_count>
      <attachid>385651</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2019-12-13 15:52:49 -0800</bug_when>
    <thetext>Comment on attachment 385651
patch

r=me too. We do not need to consider about static-hash-table here since we use this filter only when Structure::get is called, which means that static-hash-table thing is already considered in JSObject side. My suggestion is adding this rationale to ChangeLog.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1598560</commentid>
    <comment_count>6</comment_count>
      <attachid>385660</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2019-12-13 17:00:04 -0800</bug_when>
    <thetext>Created attachment 385660
patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1598583</commentid>
    <comment_count>7</comment_count>
      <attachid>385660</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-12-13 18:08:21 -0800</bug_when>
    <thetext>Comment on attachment 385660
patch for landing

Clearing flags on attachment: 385660

Committed r253517: &lt;https://trac.webkit.org/changeset/253517&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1598584</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-12-13 18:08:23 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1598585</commentid>
    <comment_count>9</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-12-13 18:09:23 -0800</bug_when>
    <thetext>&lt;rdar://problem/57932091&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>385552</attachid>
            <date>2019-12-12 14:52:14 -0800</date>
            <delta_ts>2019-12-13 15:42:50 -0800</delta_ts>
            <desc>WIP</desc>
            <filename>c-backup.diff</filename>
            <type>text/plain</type>
            <size>12146</size>
            <attacher name="Saam Barati">saam</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0NvbnNlcnZhdGl2ZVJvb3RzLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9Db25zZXJ2YXRpdmVSb290
cy5jcHAJKHJldmlzaW9uIDI1MzQxOCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0Nv
bnNlcnZhdGl2ZVJvb3RzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjYsNyArNjYsNyBAQCB2b2lk
IENvbnNlcnZhdGl2ZVJvb3RzOjpncm93KCkKIH0KIAogdGVtcGxhdGU8dHlwZW5hbWUgTWFya0hv
b2s+Ci1pbmxpbmUgdm9pZCBDb25zZXJ2YXRpdmVSb290czo6Z2VuZXJpY0FkZFBvaW50ZXIodm9p
ZCogcCwgSGVhcFZlcnNpb24gbWFya2luZ1ZlcnNpb24sIEhlYXBWZXJzaW9uIG5ld2x5QWxsb2Nh
dGVkVmVyc2lvbiwgVGlueUJsb29tRmlsdGVyIGZpbHRlciwgTWFya0hvb2smIG1hcmtIb29rKQor
aW5saW5lIHZvaWQgQ29uc2VydmF0aXZlUm9vdHM6OmdlbmVyaWNBZGRQb2ludGVyKHZvaWQqIHAs
IEhlYXBWZXJzaW9uIG1hcmtpbmdWZXJzaW9uLCBIZWFwVmVyc2lvbiBuZXdseUFsbG9jYXRlZFZl
cnNpb24sIFRpbnlCbG9vbUZpbHRlcjxCaXRzPiBmaWx0ZXIsIE1hcmtIb29rJiBtYXJrSG9vaykK
IHsKICAgICBwID0gcmVtb3ZlQXJyYXlQdHJUYWcocCk7CiAgICAgbWFya0hvb2subWFyayhwKTsK
QEAgLTk3LDcgKzk3LDcgQEAgdm9pZCBDb25zZXJ2YXRpdmVSb290czo6Z2VuZXJpY0FkZFNwYW4o
dgogICAgIFJFTEVBU0VfQVNTRVJUKGlzUG9pbnRlckFsaWduZWQoYmVnaW4pKTsKICAgICBSRUxF
QVNFX0FTU0VSVChpc1BvaW50ZXJBbGlnbmVkKGVuZCkpOwogCi0gICAgVGlueUJsb29tRmlsdGVy
IGZpbHRlciA9IG1faGVhcC5vYmplY3RTcGFjZSgpLmJsb2NrcygpLmZpbHRlcigpOyAvLyBNYWtl
IGEgbG9jYWwgY29weSBvZiBmaWx0ZXIgdG8gc2hvdyB0aGUgY29tcGlsZXIgaXQgd29uJ3QgYWxp
YXMsIGFuZCBjYW4gYmUgcmVnaXN0ZXItYWxsb2NhdGVkLgorICAgIFRpbnlCbG9vbUZpbHRlcjxC
aXRzPiBmaWx0ZXIgPSBtX2hlYXAub2JqZWN0U3BhY2UoKS5ibG9ja3MoKS5maWx0ZXIoKTsgLy8g
TWFrZSBhIGxvY2FsIGNvcHkgb2YgZmlsdGVyIHRvIHNob3cgdGhlIGNvbXBpbGVyIGl0IHdvbid0
IGFsaWFzLCBhbmQgY2FuIGJlIHJlZ2lzdGVyLWFsbG9jYXRlZC4KICAgICBIZWFwVmVyc2lvbiBt
YXJraW5nVmVyc2lvbiA9IG1faGVhcC5vYmplY3RTcGFjZSgpLm1hcmtpbmdWZXJzaW9uKCk7CiAg
ICAgSGVhcFZlcnNpb24gbmV3bHlBbGxvY2F0ZWRWZXJzaW9uID0gbV9oZWFwLm9iamVjdFNwYWNl
KCkubmV3bHlBbGxvY2F0ZWRWZXJzaW9uKCk7CiAgICAgZm9yIChjaGFyKiogaXQgPSBzdGF0aWNf
Y2FzdDxjaGFyKio+KGJlZ2luKTsgaXQgIT0gc3RhdGljX2Nhc3Q8Y2hhcioqPihlbmQpOyArK2l0
KQpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvQ29uc2VydmF0aXZlUm9vdHMuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9Db25zZXJ2YXRpdmVSb290
cy5oCShyZXZpc2lvbiAyNTM0MTgpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9Db25z
ZXJ2YXRpdmVSb290cy5oCSh3b3JraW5nIGNvcHkpCkBAIC00OSw3ICs0OSw3IEBAIHByaXZhdGU6
CiAgICAgc3RhdGljIGNvbnN0ZXhwciBzaXplX3Qgbm9uSW5saW5lQ2FwYWNpdHkgPSA4MTkyIC8g
c2l6ZW9mKEhlYXBDZWxsKik7CiAgICAgCiAgICAgdGVtcGxhdGU8dHlwZW5hbWUgTWFya0hvb2s+
Ci0gICAgdm9pZCBnZW5lcmljQWRkUG9pbnRlcih2b2lkKiwgSGVhcFZlcnNpb24gbWFya2luZ1Zl
cnNpb24sIEhlYXBWZXJzaW9uIG5ld2x5QWxsb2NhdGVkVmVyc2lvbiwgVGlueUJsb29tRmlsdGVy
LCBNYXJrSG9vayYpOworICAgIHZvaWQgZ2VuZXJpY0FkZFBvaW50ZXIodm9pZCosIEhlYXBWZXJz
aW9uIG1hcmtpbmdWZXJzaW9uLCBIZWFwVmVyc2lvbiBuZXdseUFsbG9jYXRlZFZlcnNpb24sIFRp
bnlCbG9vbUZpbHRlcjxCaXRzPiwgTWFya0hvb2smKTsKIAogICAgIHRlbXBsYXRlPHR5cGVuYW1l
IE1hcmtIb29rPgogICAgIHZvaWQgZ2VuZXJpY0FkZFNwYW4odm9pZCosIHZvaWQqIGVuZCwgTWFy
a0hvb2smKTsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0hlYXAuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0hlYXAuY3BwCShyZXZpc2lvbiAy
NTM0MTgpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtMjEwNCw2ICsyMTA0LDggQEAgdm9pZCBIZWFwOjpmaW5hbGl6ZSgpCiAgICAgaWYg
KEhhc093blByb3BlcnR5Q2FjaGUqIGNhY2hlID0gdm0oKS5oYXNPd25Qcm9wZXJ0eUNhY2hlKCkp
CiAgICAgICAgIGNhY2hlLT5jbGVhcigpOwogCisgICAgLy92bSgpLm1fY2FjaGVkR2V0QnlWYWxz
LmNsZWFyKCk7CisKICAgICBpbW11dGFibGVCdXR0ZXJmbHlUb1N0cmluZ0NhY2hlLmNsZWFyKCk7
CiAgICAgCiAgICAgZm9yIChjb25zdCBIZWFwRmluYWxpemVyQ2FsbGJhY2smIGNhbGxiYWNrIDog
bV9oZWFwRmluYWxpemVyQ2FsbGJhY2tzKQpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL2hl
YXAvSGVhcFNuYXBzaG90LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL2hl
YXAvSGVhcFNuYXBzaG90LmgJKHJldmlzaW9uIDI1MzQxOCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9oZWFwL0hlYXBTbmFwc2hvdC5oCSh3b3JraW5nIGNvcHkpCkBAIC01Miw3ICs1Miw3IEBA
IHByaXZhdGU6CiAgICAgc3RhdGljIGNvbnN0ZXhwciBpbnRwdHJfdCBDZWxsVG9Td2VlcFRhZyA9
IDE7CiAKICAgICBWZWN0b3I8SGVhcFNuYXBzaG90Tm9kZT4gbV9ub2RlczsKLSAgICBUaW55Qmxv
b21GaWx0ZXIgbV9maWx0ZXI7CisgICAgVGlueUJsb29tRmlsdGVyPEJpdHM+IG1fZmlsdGVyOwog
ICAgIEhlYXBTbmFwc2hvdCogbV9wcmV2aW91cyB7IG51bGxwdHIgfTsKICAgICB1bnNpZ25lZCBt
X2ZpcnN0T2JqZWN0SWRlbnRpZmllciB7IDAgfTsKICAgICB1bnNpZ25lZCBtX2xhc3RPYmplY3RJ
ZGVudGlmaWVyIHsgMCB9OwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVhcFV0
aWwuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwVXRpbC5o
CShyZXZpc2lvbiAyNTM0MTgpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwVXRp
bC5oCSh3b3JraW5nIGNvcHkpCkBAIC00Niw3ICs0Niw3IEBAIHB1YmxpYzoKICAgICAvLyBiZWZv
cmUgbGl2ZW5lc3MgZGF0YSBpcyBjbGVhcmVkIHRvIGJlIGFjY3VyYXRlLgogICAgIHRlbXBsYXRl
PHR5cGVuYW1lIEZ1bmM+CiAgICAgc3RhdGljIHZvaWQgZmluZEdDT2JqZWN0UG9pbnRlcnNGb3JN
YXJraW5nKAotICAgICAgICBIZWFwJiBoZWFwLCBIZWFwVmVyc2lvbiBtYXJraW5nVmVyc2lvbiwg
SGVhcFZlcnNpb24gbmV3bHlBbGxvY2F0ZWRWZXJzaW9uLCBUaW55Qmxvb21GaWx0ZXIgZmlsdGVy
LAorICAgICAgICBIZWFwJiBoZWFwLCBIZWFwVmVyc2lvbiBtYXJraW5nVmVyc2lvbiwgSGVhcFZl
cnNpb24gbmV3bHlBbGxvY2F0ZWRWZXJzaW9uLCBUaW55Qmxvb21GaWx0ZXI8Qml0cz4gZmlsdGVy
LAogICAgICAgICB2b2lkKiBwYXNzZWRQb2ludGVyLCBjb25zdCBGdW5jJiBmdW5jKQogICAgIHsK
ICAgICAgICAgY29uc3QgSGFzaFNldDxNYXJrZWRCbG9jayo+JiBzZXQgPSBoZWFwLm9iamVjdFNw
YWNlKCkuYmxvY2tzKCkuc2V0KCk7CkBAIC0xMjgsNyArMTI4LDcgQEAgcHVibGljOgogICAgICAg
ICAgICAgdHJ5UG9pbnRlcihhbGlnbmVkUG9pbnRlciAtIGNhbmRpZGF0ZS0+Y2VsbFNpemUoKSk7
CiAgICAgfQogICAgIAotICAgIHN0YXRpYyBib29sIGlzUG9pbnRlckdDT2JqZWN0SlNDZWxsKEhl
YXAmIGhlYXAsIFRpbnlCbG9vbUZpbHRlciBmaWx0ZXIsIEpTQ2VsbCogcG9pbnRlcikKKyAgICBz
dGF0aWMgYm9vbCBpc1BvaW50ZXJHQ09iamVjdEpTQ2VsbChIZWFwJiBoZWFwLCBUaW55Qmxvb21G
aWx0ZXI8Qml0cz4gZmlsdGVyLCBKU0NlbGwqIHBvaW50ZXIpCiAgICAgewogICAgICAgICAvLyBJ
dCBjb3VsZCBwb2ludCB0byBhIGxhcmdlIGFsbG9jYXRpb24uCiAgICAgICAgIGlmIChwb2ludGVy
LT5pc1ByZWNpc2VBbGxvY2F0aW9uKCkpIHsKQEAgLTE2NCw3ICsxNjQsNyBAQCBwdWJsaWM6CiAg
ICAgCiAgICAgLy8gVGhpcyBkb2VzIG5vdCBmaW5kIHRoZSBjZWxsIGlmIHRoZSBwb2ludGVyIGlz
IHBvaW50aW5nIGF0IHRoZSBtaWRkbGUgb2YgYSBKU0NlbGwuCiAgICAgc3RhdGljIGJvb2wgaXNW
YWx1ZUdDT2JqZWN0KAotICAgICAgICBIZWFwJiBoZWFwLCBUaW55Qmxvb21GaWx0ZXIgZmlsdGVy
LCBKU1ZhbHVlIHZhbHVlKQorICAgICAgICBIZWFwJiBoZWFwLCBUaW55Qmxvb21GaWx0ZXI8Qml0
cz4gZmlsdGVyLCBKU1ZhbHVlIHZhbHVlKQogICAgIHsKICAgICAgICAgQVNTRVJUKGhlYXAub2Jq
ZWN0U3BhY2UoKS5wcmVjaXNlQWxsb2NhdGlvblNldCgpKTsKICAgICAgICAgaWYgKCF2YWx1ZS5p
c0NlbGwoKSkKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL01hcmtlZEJsb2NrU2V0
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvTWFya2VkQmxvY2tT
ZXQuaAkocmV2aXNpb24gMjUzNDE4KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvTWFy
a2VkQmxvY2tTZXQuaAkod29ya2luZyBjb3B5KQpAQCAtMzgsMTMgKzM4LDEzIEBAIHB1YmxpYzoK
ICAgICB2b2lkIGFkZChNYXJrZWRCbG9jayopOwogICAgIHZvaWQgcmVtb3ZlKE1hcmtlZEJsb2Nr
Kik7CiAKLSAgICBUaW55Qmxvb21GaWx0ZXIgZmlsdGVyKCkgY29uc3Q7CisgICAgVGlueUJsb29t
RmlsdGVyPEJpdHM+IGZpbHRlcigpIGNvbnN0OwogICAgIGNvbnN0IEhhc2hTZXQ8TWFya2VkQmxv
Y2sqPiYgc2V0KCkgY29uc3Q7CiAKIHByaXZhdGU6CiAgICAgdm9pZCByZWNvbXB1dGVGaWx0ZXIo
KTsKIAotICAgIFRpbnlCbG9vbUZpbHRlciBtX2ZpbHRlcjsKKyAgICBUaW55Qmxvb21GaWx0ZXI8
Qml0cz4gbV9maWx0ZXI7CiAgICAgSGFzaFNldDxNYXJrZWRCbG9jayo+IG1fc2V0OwogfTsKIApA
QCAtNjQsMTMgKzY0LDEzIEBAIGlubGluZSB2b2lkIE1hcmtlZEJsb2NrU2V0OjpyZW1vdmUoTWFy
a2UKIAogaW5saW5lIHZvaWQgTWFya2VkQmxvY2tTZXQ6OnJlY29tcHV0ZUZpbHRlcigpCiB7Ci0g
ICAgVGlueUJsb29tRmlsdGVyIGZpbHRlcjsKKyAgICBUaW55Qmxvb21GaWx0ZXI8Qml0cz4gZmls
dGVyOwogICAgIGZvciAoSGFzaFNldDxNYXJrZWRCbG9jayo+OjppdGVyYXRvciBpdCA9IG1fc2V0
LmJlZ2luKCk7IGl0ICE9IG1fc2V0LmVuZCgpOyArK2l0KQogICAgICAgICBmaWx0ZXIuYWRkKHJl
aW50ZXJwcmV0X2Nhc3Q8Qml0cz4oKml0KSk7CiAgICAgbV9maWx0ZXIgPSBmaWx0ZXI7CiB9CiAK
LWlubGluZSBUaW55Qmxvb21GaWx0ZXIgTWFya2VkQmxvY2tTZXQ6OmZpbHRlcigpIGNvbnN0Citp
bmxpbmUgVGlueUJsb29tRmlsdGVyPEJpdHM+IE1hcmtlZEJsb2NrU2V0OjpmaWx0ZXIoKSBjb25z
dAogewogICAgIHJldHVybiBtX2ZpbHRlcjsKIH0KSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9oZWFwL1RpbnlCbG9vbUZpbHRlci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9oZWFwL1RpbnlCbG9vbUZpbHRlci5oCShyZXZpc2lvbiAyNTM0MTgpCisrKyBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvaGVhcC9UaW55Qmxvb21GaWx0ZXIuaAkod29ya2luZyBjb3B5KQpAQCAt
MjcsMzkgKzI3LDQ1IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi10eXBlZGVmIHVpbnRwdHJfdCBC
aXRzOwordXNpbmcgQml0cyA9IHVpbnRwdHJfdDsKIAordGVtcGxhdGUgPHR5cGVuYW1lIFQgPSBC
aXRzPgogY2xhc3MgVGlueUJsb29tRmlsdGVyIHsKIHB1YmxpYzoKICAgICBUaW55Qmxvb21GaWx0
ZXIoKSA9IGRlZmF1bHQ7Ci0gICAgVGlueUJsb29tRmlsdGVyKEJpdHMpOworICAgIFRpbnlCbG9v
bUZpbHRlcihUKTsKKyAgICBUaW55Qmxvb21GaWx0ZXIoY29uc3QgVGlueUJsb29tRmlsdGVyJikg
PSBkZWZhdWx0OwogCi0gICAgdm9pZCBhZGQoQml0cyk7CisgICAgdm9pZCBhZGQoVCk7CiAgICAg
dm9pZCBhZGQoVGlueUJsb29tRmlsdGVyJik7Ci0gICAgYm9vbCBydWxlT3V0KEJpdHMpIGNvbnN0
OyAvLyBUcnVlIGZvciAwLgorICAgIGJvb2wgcnVsZU91dChUKSBjb25zdDsgLy8gVHJ1ZSBmb3Ig
MC4KICAgICB2b2lkIHJlc2V0KCk7Ci0gICAgQml0cyBiaXRzKCkgY29uc3QgeyByZXR1cm4gbV9i
aXRzOyB9CisgICAgVCBiaXRzKCkgY29uc3QgeyByZXR1cm4gbV9iaXRzOyB9CiAKIHByaXZhdGU6
Ci0gICAgQml0cyBtX2JpdHMgeyAwIH07CisgICAgVCBtX2JpdHMgeyAwIH07CiB9OwogCi1pbmxp
bmUgVGlueUJsb29tRmlsdGVyOjpUaW55Qmxvb21GaWx0ZXIoQml0cyBiaXRzKQordGVtcGxhdGUg
PHR5cGVuYW1lIFQ+CitpbmxpbmUgVGlueUJsb29tRmlsdGVyPFQ+OjpUaW55Qmxvb21GaWx0ZXIo
VCBiaXRzKQogICAgIDogbV9iaXRzKGJpdHMpCiB7CiB9CiAKLWlubGluZSB2b2lkIFRpbnlCbG9v
bUZpbHRlcjo6YWRkKEJpdHMgYml0cykKK3RlbXBsYXRlIDx0eXBlbmFtZSBUPgoraW5saW5lIHZv
aWQgVGlueUJsb29tRmlsdGVyPFQ+OjphZGQoVCBiaXRzKQogewogICAgIG1fYml0cyB8PSBiaXRz
OwogfQogCi1pbmxpbmUgdm9pZCBUaW55Qmxvb21GaWx0ZXI6OmFkZChUaW55Qmxvb21GaWx0ZXIm
IG90aGVyKQordGVtcGxhdGUgPHR5cGVuYW1lIFQ+CitpbmxpbmUgdm9pZCBUaW55Qmxvb21GaWx0
ZXI8VD46OmFkZChUaW55Qmxvb21GaWx0ZXImIG90aGVyKQogewogICAgIG1fYml0cyB8PSBvdGhl
ci5tX2JpdHM7CiB9CiAKLWlubGluZSBib29sIFRpbnlCbG9vbUZpbHRlcjo6cnVsZU91dChCaXRz
IGJpdHMpIGNvbnN0Cit0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KK2lubGluZSBib29sIFRpbnlCbG9v
bUZpbHRlcjxUPjo6cnVsZU91dChUIGJpdHMpIGNvbnN0CiB7CiAgICAgaWYgKCFiaXRzKQogICAg
ICAgICByZXR1cm4gdHJ1ZTsKQEAgLTcwLDcgKzc2LDggQEAgaW5saW5lIGJvb2wgVGlueUJsb29t
RmlsdGVyOjpydWxlT3V0KEJpdAogICAgIHJldHVybiBmYWxzZTsKIH0KIAotaW5saW5lIHZvaWQg
VGlueUJsb29tRmlsdGVyOjpyZXNldCgpCit0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KK2lubGluZSB2
b2lkIFRpbnlCbG9vbUZpbHRlcjxUPjo6cmVzZXQoKQogewogICAgIG1fYml0cyA9IDA7CiB9Cklu
ZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJ1Y3R1cmUuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cnVjdHVyZS5jcHAJKHJldmlz
aW9uIDI1MzQxOCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cnVjdHVyZS5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTI0Nyw2ICsyNDcsMTEgQEAgU3RydWN0dXJlOjpTdHJ1Y3R1
cmUoVk0mIHZtKQogICAgIEFTU0VSVCghdGhpcy0+dHlwZUluZm8oKS5vdmVycmlkZXNHZXRDYWxs
RGF0YSgpIHx8IG1fY2xhc3NJbmZvLT5tZXRob2RUYWJsZS5nZXRDYWxsRGF0YSAhPSAmSlNDZWxs
OjpnZXRDYWxsRGF0YSk7CiB9CiAKKy8vdW5zaWduZWQgU3RydWN0dXJlOjpwcm9wZXJ0eUhhc2go
KSBjb25zdAorLy97CisvLyAgICByZXR1cm4gV1RGOjpQdHJIYXNoPHVpbnRwdHJfdD46Omhhc2go
bV9zZWVuUHJvcGVydGllcy5iaXRzKCkpOworLy99CisKIFN0cnVjdHVyZTo6U3RydWN0dXJlKFZN
JiB2bSwgU3RydWN0dXJlKiBwcmV2aW91cywgRGVmZXJyZWRTdHJ1Y3R1cmVUcmFuc2l0aW9uV2F0
Y2hwb2ludEZpcmUqIGRlZmVycmVkKQogICAgIDogSlNDZWxsKHZtLCB2bS5zdHJ1Y3R1cmVTdHJ1
Y3R1cmUuZ2V0KCkpCiAgICAgLCBtX2lubGluZUNhcGFjaXR5KHByZXZpb3VzLT5tX2lubGluZUNh
cGFjaXR5KQpAQCAtMjU2LDYgKzI2MSw3IEBAIFN0cnVjdHVyZTo6U3RydWN0dXJlKFZNJiB2bSwg
U3RydWN0dXJlKiAKICAgICAsIG1fdHJhbnNpdGlvbldhdGNocG9pbnRTZXQoSXNXYXRjaGVkKQog
ICAgICwgbV9vZmZzZXQoaW52YWxpZE9mZnNldCkKICAgICAsIG1fcHJvcGVydHlIYXNoKHByZXZp
b3VzLT5tX3Byb3BlcnR5SGFzaCkKKyAgICAsIG1fc2VlblByb3BlcnRpZXMocHJldmlvdXMtPm1f
c2VlblByb3BlcnRpZXMpCiB7CiAgICAgc2V0RGljdGlvbmFyeUtpbmQocHJldmlvdXMtPmRpY3Rp
b25hcnlLaW5kKCkpOwogICAgIHNldElzUGlubmVkUHJvcGVydHlUYWJsZShmYWxzZSk7CkluZGV4
OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJ1Y3R1cmUuaAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJ1Y3R1cmUuaAkocmV2aXNpb24gMjUz
NDE4KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RydWN0dXJlLmgJKHdvcmtp
bmcgY29weSkKQEAgLTQyLDYgKzQyLDcgQEAKICNpbmNsdWRlICJXYXRjaHBvaW50LmgiCiAjaW5j
bHVkZSAiV3JpdGVCYXJyaWVySW5saW5lcy5oIgogI2luY2x1ZGUgPHd0Zi9QcmludFN0cmVhbS5o
PgorI2luY2x1ZGUgIlRpbnlCbG9vbUZpbHRlci5oIgogCiBuYW1lc3BhY2UgV1RGIHsKIApAQCAt
NDM0LDcgKzQzNSw3IEBAIHB1YmxpYzoKICAgICBib29sIG1hc3F1ZXJhZGVzQXNVbmRlZmluZWQo
SlNHbG9iYWxPYmplY3QqIGxleGljYWxHbG9iYWxPYmplY3QpOwogCiAgICAgUHJvcGVydHlPZmZz
ZXQgZ2V0KFZNJiwgUHJvcGVydHlOYW1lKTsKLSAgICBQcm9wZXJ0eU9mZnNldCBnZXQoVk0mLCBQ
cm9wZXJ0eU5hbWUsIHVuc2lnbmVkJiBhdHRyaWJ1dGVzKTsKKyAgICBKU19FWFBPUlRfUFJJVkFU
RSBQcm9wZXJ0eU9mZnNldCBnZXQoVk0mLCBQcm9wZXJ0eU5hbWUsIHVuc2lnbmVkJiBhdHRyaWJ1
dGVzKTsKIAogICAgIC8vIFRoaXMgaXMgYSBzb21ld2hhdCBpbnRlcm5hbGlzaCBtZXRob2QuIEl0
IHdpbGwgY2FsbCB5b3VyIGZ1bmN0b3Igd2hpbGUgcG9zc2libHkgaG9sZGluZyB0aGUKICAgICAv
LyBTdHJ1Y3R1cmUncyBsb2NrLiBUaGVyZSBpcyBubyBndWFyYW50ZWUgd2hldGhlciB0aGUgbG9j
ayBpcyBoZWxkIG9yIG5vdCBpbiBhbnkgcGFydGljdWxhcgpAQCAtNjE0LDcgKzYxNSwxMiBAQCBw
dWJsaWM6CiAgICAgCiAgICAgQ29uY3VycmVudEpTTG9jayYgbG9jaygpIHsgcmV0dXJuIG1fbG9j
azsgfQogCi0gICAgdW5zaWduZWQgcHJvcGVydHlIYXNoKCkgY29uc3QgeyByZXR1cm4gbV9wcm9w
ZXJ0eUhhc2g7IH0KKyAgICAvL3Vuc2lnbmVkIHByb3BlcnR5SGFzaCgpIGNvbnN0OworICAgIHVu
c2lnbmVkIHByb3BlcnR5SGFzaCgpIGNvbnN0CisgICAgeworICAgICAgICAvL3JldHVybiBXVEY6
OlB0ckhhc2g8dWludHB0cl90Pjo6aGFzaChtX3NlZW5Qcm9wZXJ0aWVzLmJpdHMoKSk7CisgICAg
ICAgIHJldHVybiBtX3Byb3BlcnR5SGFzaDsKKyAgICB9CiAKICAgICBzdGF0aWMgYm9vbCBzaG91
bGRDb252ZXJ0VG9Qb2x5UHJvdG8oY29uc3QgU3RydWN0dXJlKiBhLCBjb25zdCBTdHJ1Y3R1cmUq
IGIpOwogCkBAIC03OTQsNiArODAwLDcgQEAgcHJpdmF0ZToKICAgICBQcm9wZXJ0eU9mZnNldCBt
X29mZnNldDsKIAogICAgIHVpbnQzMl90IG1fcHJvcGVydHlIYXNoOworICAgIFRpbnlCbG9vbUZp
bHRlcjx1aW50cHRyX3Q+IG1fc2VlblByb3BlcnRpZXM7CiAKICAgICBmcmllbmQgY2xhc3MgVk1J
bnNwZWN0b3I7CiB9OwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RydWN0
dXJlSW5saW5lcy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1N0cnVjdHVyZUlubGluZXMuaAkocmV2aXNpb24gMjUzNDE4KQorKysgU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvU3RydWN0dXJlSW5saW5lcy5oCSh3b3JraW5nIGNvcHkpCkBAIC0xNDEs
OSArMTQxLDIxIEBAIEFMV0FZU19JTkxJTkUgUHJvcGVydHlPZmZzZXQgU3RydWN0dXJlOjoKICAg
ICAKIEFMV0FZU19JTkxJTkUgUHJvcGVydHlPZmZzZXQgU3RydWN0dXJlOjpnZXQoVk0mIHZtLCBQ
cm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1lLCB1bnNpZ25lZCYgYXR0cmlidXRlcykKIHsKKyAgICAv
L3N0YXRpYyBkb3VibGUgdG90YWw7CisgICAgLy9zdGF0aWMgZG91YmxlIGhpdHM7CisgICAgLy9z
dGF0aWMgZG91YmxlIHJ1bGVPdXQ7CisgICAgLy8rK3RvdGFsOworCiAgICAgQVNTRVJUKCFpc0Nv
bXBpbGF0aW9uVGhyZWFkKCkpOwogICAgIEFTU0VSVChzdHJ1Y3R1cmUodm0pLT5jbGFzc0luZm8o
KSA9PSBpbmZvKCkpOwogCisgICAgaWYgKG1fc2VlblByb3BlcnRpZXMucnVsZU91dChiaXR3aXNl
X2Nhc3Q8dWludHB0cl90Pihwcm9wZXJ0eU5hbWUudWlkKCkpKSkgeworICAgICAgICAvLysrcnVs
ZU91dDsKKyAgICAgICAgLy9pZiAoc3RhdGljX2Nhc3Q8dWludDY0X3Q+KHJ1bGVPdXQpICUgMTAw
MCA9PSAwKQorICAgICAgICAvLyAgICBkYXRhTG9nTG4oIlN0cnVjdHVyZSBydWxlIG91dCByYXRl
OiAiLCBydWxlT3V0L3RvdGFsKTsKKyAgICAgICAgcmV0dXJuIGludmFsaWRPZmZzZXQ7CisgICAg
fQorCiAgICAgUHJvcGVydHlUYWJsZSogcHJvcGVydHlUYWJsZSA9IGVuc3VyZVByb3BlcnR5VGFi
bGVJZk5vdEVtcHR5KHZtKTsKICAgICBpZiAoIXByb3BlcnR5VGFibGUpCiAgICAgICAgIHJldHVy
biBpbnZhbGlkT2Zmc2V0OwpAQCAtMTUyLDEwICsxNjQsMTUgQEAgQUxXQVlTX0lOTElORSBQcm9w
ZXJ0eU9mZnNldCBTdHJ1Y3R1cmU6OgogICAgIGlmICghZW50cnkpCiAgICAgICAgIHJldHVybiBp
bnZhbGlkT2Zmc2V0OwogCisgICAgLy8rK2hpdHM7CisgICAgLy9pZiAoc3RhdGljX2Nhc3Q8dWlu
dDY0X3Q+KGhpdHMpICUgMTAwMCA9PSAwKQorICAgIC8vICAgIGRhdGFMb2dMbigiU3RydWN0dXJl
IGhpdCByYXRlOiAiLCBoaXRzL3RvdGFsKTsKKwogICAgIGF0dHJpYnV0ZXMgPSBlbnRyeS0+YXR0
cmlidXRlczsKICAgICByZXR1cm4gZW50cnktPm9mZnNldDsKIH0KIAorCiB0ZW1wbGF0ZTx0eXBl
bmFtZSBGdW5jdG9yPgogdm9pZCBTdHJ1Y3R1cmU6OmZvckVhY2hQcm9wZXJ0eUNvbmN1cnJlbnRs
eShjb25zdCBGdW5jdG9yJiBmdW5jdG9yKQogewpAQCAtNDQ3LDYgKzQ2NCw4IEBAIGlubGluZSBQ
cm9wZXJ0eU9mZnNldCBTdHJ1Y3R1cmU6OmFkZChWTSYKICAgICBQcm9wZXJ0eU9mZnNldCBuZXdP
ZmZzZXQgPSB0YWJsZS0+bmV4dE9mZnNldChtX2lubGluZUNhcGFjaXR5KTsKIAogICAgIG1fcHJv
cGVydHlIYXNoID0gbV9wcm9wZXJ0eUhhc2ggXiByZXAtPmV4aXN0aW5nU3ltYm9sQXdhcmVIYXNo
KCk7CisKKyAgICBtX3NlZW5Qcm9wZXJ0aWVzLmFkZChiaXR3aXNlX2Nhc3Q8dWludHB0cl90Pihy
ZXApKTsKICAgICAKICAgICBQcm9wZXJ0eU9mZnNldCBuZXdMYXN0T2Zmc2V0ID0gbV9vZmZzZXQ7
CiAgICAgdGFibGUtPmFkZChQcm9wZXJ0eU1hcEVudHJ5KHJlcCwgbmV3T2Zmc2V0LCBhdHRyaWJ1
dGVzKSwgbmV3TGFzdE9mZnNldCwgUHJvcGVydHlUYWJsZTo6UHJvcGVydHlPZmZzZXRNYXlDaGFu
Z2UpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>385651</attachid>
            <date>2019-12-13 15:42:50 -0800</date>
            <delta_ts>2019-12-13 17:00:04 -0800</delta_ts>
            <desc>patch</desc>
            <filename>a-backup.diff</filename>
            <type>text/plain</type>
            <size>3502</size>
            <attacher name="Saam Barati">saam</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMjUzNTAzKQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI1IEBA
CisyMDE5LTEyLTEzICBTYWFtIEJhcmF0aSAgPHNiYXJhdGlAYXBwbGUuY29tPgorCisgICAgICAg
IFN0cnVjdHVyZSBzaG91bGQgaGF2ZSBhIGJsb29tIGZpbHRlciBvZiBzZWVuIGlkZW50aWZpZXJz
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDUxODIK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIHBh
dGNoIGFkZHMgYSBibG9vbSBmaWx0ZXIgb2Ygc2VlbiBpZGVudGlmaWVycyB0byBTdHJ1Y3R1cmUu
IFRoaXMgdXN1YWxseSBhbGxvd3MKKyAgICAgICAgdXMgdG8gcXVpY2tseSBkZXRlcm1pbmUgaWYg
YSBTdHJ1Y3R1cmUgKmhhcyBub3QqIHNlZW4gYSBwYXJ0aWN1bGFyIHByb3BlcnR5LiBCYXNlZAor
ICAgICAgICBvbiBzb21lIGxvZ2dpbmcgSSBhZGRlZCBpbiBKZXRTdHJlYW0yIGFuZCBTcGVlZG9t
ZXRlcjIsIDcwJSBvZiBjYWxscyB0byBTdHJ1Y3R1cmU6OmdldCAKKyAgICAgICAgcmVzdWx0IGlu
IHVzIHJldHVybmluZyBpbnZhbGlkT2Zmc2V0IChlLmcsIHRoZSBwcm9wZXJ0eSBkb2VzIG5vdCBl
eGlzdCkuIFRoaXMgcGF0Y2gKKyAgICAgICAgYWxsb3dzIHRoYXQgcGF0aCB0byBiZSBldmVuIGZh
c3Rlci4KKyAgICAgICAgCisgICAgICAgIFRoaXMgcGF0Y2ggYXBwZWFycyB0byBiZSBhIDAuNSUg
cHJvZ3Jlc3Npb24gb24gU3BlZWRvbWV0ZXIyLgorCisgICAgICAgICogcnVudGltZS9TdHJ1Y3R1
cmUuY3BwOgorICAgICAgICAoSlNDOjpTdHJ1Y3R1cmU6OlN0cnVjdHVyZSk6CisgICAgICAgICog
cnVudGltZS9TdHJ1Y3R1cmUuaDoKKyAgICAgICAgKiBydW50aW1lL1N0cnVjdHVyZUlubGluZXMu
aDoKKyAgICAgICAgKEpTQzo6U3RydWN0dXJlOjpnZXQpOgorICAgICAgICAoSlNDOjpTdHJ1Y3R1
cmU6OmFkZCk6CisKIDIwMTktMTItMTMgIFNhYW0gQmFyYXRpICA8c2JhcmF0aUBhcHBsZS5jb20+
CiAKICAgICAgICAgQWRkIGEgSGVhcDo6ZmluYWxpemUgZnVuY3Rpb24gdGhhdCB0YWtlcyBXVEY6
OkZ1bmN0aW9uPHZvaWQoKT4KSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0
cnVjdHVyZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
U3RydWN0dXJlLmNwcAkocmV2aXNpb24gMjUzNTAzKQorKysgU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvU3RydWN0dXJlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjU2LDYgKzI1Niw3IEBA
IFN0cnVjdHVyZTo6U3RydWN0dXJlKFZNJiB2bSwgU3RydWN0dXJlKiAKICAgICAsIG1fdHJhbnNp
dGlvbldhdGNocG9pbnRTZXQoSXNXYXRjaGVkKQogICAgICwgbV9vZmZzZXQoaW52YWxpZE9mZnNl
dCkKICAgICAsIG1fcHJvcGVydHlIYXNoKHByZXZpb3VzLT5tX3Byb3BlcnR5SGFzaCkKKyAgICAs
IG1fc2VlblByb3BlcnRpZXMocHJldmlvdXMtPm1fc2VlblByb3BlcnRpZXMpCiB7CiAgICAgc2V0
RGljdGlvbmFyeUtpbmQocHJldmlvdXMtPmRpY3Rpb25hcnlLaW5kKCkpOwogICAgIHNldElzUGlu
bmVkUHJvcGVydHlUYWJsZShmYWxzZSk7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9TdHJ1Y3R1cmUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9TdHJ1Y3R1cmUuaAkocmV2aXNpb24gMjUzNTAzKQorKysgU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvU3RydWN0dXJlLmgJKHdvcmtpbmcgY29weSkKQEAgLTQyLDYgKzQyLDcgQEAK
ICNpbmNsdWRlICJXYXRjaHBvaW50LmgiCiAjaW5jbHVkZSAiV3JpdGVCYXJyaWVySW5saW5lcy5o
IgogI2luY2x1ZGUgPHd0Zi9QcmludFN0cmVhbS5oPgorI2luY2x1ZGUgIlRpbnlCbG9vbUZpbHRl
ci5oIgogCiBuYW1lc3BhY2UgV1RGIHsKIApAQCAtNzk0LDYgKzc5NSw3IEBAIHByaXZhdGU6CiAg
ICAgUHJvcGVydHlPZmZzZXQgbV9vZmZzZXQ7CiAKICAgICB1aW50MzJfdCBtX3Byb3BlcnR5SGFz
aDsKKyAgICBUaW55Qmxvb21GaWx0ZXIgbV9zZWVuUHJvcGVydGllczsKIAogICAgIGZyaWVuZCBj
bGFzcyBWTUluc3BlY3RvcjsKIH07CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9TdHJ1Y3R1cmVJbmxpbmVzLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvU3RydWN0dXJlSW5saW5lcy5oCShyZXZpc2lvbiAyNTM1MDMpCisrKyBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJ1Y3R1cmVJbmxpbmVzLmgJKHdvcmtpbmcgY29weSkK
QEAgLTE0NCw2ICsxNDQsOSBAQCBBTFdBWVNfSU5MSU5FIFByb3BlcnR5T2Zmc2V0IFN0cnVjdHVy
ZTo6CiAgICAgQVNTRVJUKCFpc0NvbXBpbGF0aW9uVGhyZWFkKCkpOwogICAgIEFTU0VSVChzdHJ1
Y3R1cmUodm0pLT5jbGFzc0luZm8oKSA9PSBpbmZvKCkpOwogCisgICAgaWYgKG1fc2VlblByb3Bl
cnRpZXMucnVsZU91dChiaXR3aXNlX2Nhc3Q8dWludHB0cl90Pihwcm9wZXJ0eU5hbWUudWlkKCkp
KSkKKyAgICAgICAgcmV0dXJuIGludmFsaWRPZmZzZXQ7CisKICAgICBQcm9wZXJ0eVRhYmxlKiBw
cm9wZXJ0eVRhYmxlID0gZW5zdXJlUHJvcGVydHlUYWJsZUlmTm90RW1wdHkodm0pOwogICAgIGlm
ICghcHJvcGVydHlUYWJsZSkKICAgICAgICAgcmV0dXJuIGludmFsaWRPZmZzZXQ7CkBAIC00NDcs
NiArNDUwLDggQEAgaW5saW5lIFByb3BlcnR5T2Zmc2V0IFN0cnVjdHVyZTo6YWRkKFZNJgogICAg
IFByb3BlcnR5T2Zmc2V0IG5ld09mZnNldCA9IHRhYmxlLT5uZXh0T2Zmc2V0KG1faW5saW5lQ2Fw
YWNpdHkpOwogCiAgICAgbV9wcm9wZXJ0eUhhc2ggPSBtX3Byb3BlcnR5SGFzaCBeIHJlcC0+ZXhp
c3RpbmdTeW1ib2xBd2FyZUhhc2goKTsKKworICAgIG1fc2VlblByb3BlcnRpZXMuYWRkKGJpdHdp
c2VfY2FzdDx1aW50cHRyX3Q+KHJlcCkpOwogICAgIAogICAgIFByb3BlcnR5T2Zmc2V0IG5ld0xh
c3RPZmZzZXQgPSBtX29mZnNldDsKICAgICB0YWJsZS0+YWRkKFByb3BlcnR5TWFwRW50cnkocmVw
LCBuZXdPZmZzZXQsIGF0dHJpYnV0ZXMpLCBuZXdMYXN0T2Zmc2V0LCBQcm9wZXJ0eVRhYmxlOjpQ
cm9wZXJ0eU9mZnNldE1heUNoYW5nZSk7Cg==
</data>
<flag name="review"
          id="401449"
          type_id="1"
          status="+"
          setter="tzagallo"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>385660</attachid>
            <date>2019-12-13 17:00:04 -0800</date>
            <delta_ts>2019-12-13 18:08:21 -0800</delta_ts>
            <desc>patch for landing</desc>
            <filename>a-backup.diff</filename>
            <type>text/plain</type>
            <size>4092</size>
            <attacher name="Saam Barati">saam</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMjUzNTAzKQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI4IEBA
CisyMDE5LTEyLTEzICBTYWFtIEJhcmF0aSAgPHNiYXJhdGlAYXBwbGUuY29tPgorCisgICAgICAg
IFN0cnVjdHVyZSBzaG91bGQgaGF2ZSBhIGJsb29tIGZpbHRlciBvZiBzZWVuIGlkZW50aWZpZXJz
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDUxODIK
KworICAgICAgICBSZXZpZXdlZCBieSBZdXN1a2UgU3V6dWtpIGFuZCBUYWRldSBaYWdhbGxvLgor
CisgICAgICAgIFRoaXMgcGF0Y2ggYWRkcyBhIGJsb29tIGZpbHRlciBvZiBzZWVuIGlkZW50aWZp
ZXJzIHRvIFN0cnVjdHVyZS4gVGhpcyB1c3VhbGx5IGFsbG93cworICAgICAgICB1cyB0byBxdWlj
a2x5IGRldGVybWluZSBpZiBhIFN0cnVjdHVyZSAqaGFzIG5vdCogc2VlbiBhIHBhcnRpY3VsYXIg
cHJvcGVydHkuIEJhc2VkCisgICAgICAgIG9uIHNvbWUgbG9nZ2luZyBJIGFkZGVkIGluIEpldFN0
cmVhbTIgYW5kIFNwZWVkb21ldGVyMiwgNzAlIG9mIGNhbGxzIHRvIFN0cnVjdHVyZTo6Z2V0IAor
ICAgICAgICByZXN1bHQgaW4gdXMgcmV0dXJuaW5nIGludmFsaWRPZmZzZXQgKGUuZywgdGhlIHBy
b3BlcnR5IGRvZXMgbm90IGV4aXN0KS4gVGhpcyBwYXRjaAorICAgICAgICBhbGxvd3MgdGhhdCBw
YXRoIHRvIGJlIGV2ZW4gZmFzdGVyLiBUaGlzIGJsb29tIGZpbHRlciBpcyBqdXN0IG1vZGVsaW5n
IHdoYXQgZ29lcyBpbnNpZGUKKyAgICAgICAgU3RydWN0dXJlJ3MgcHJvcGVydHkgdGFibGUuIEZv
ciB0aGF0IHJlYXNvbiwgd2UgZG9uJ3QgbmVlZCB0byBjb25zaWRlciB0aGluZ3MgaW5zaWRlIAor
ICAgICAgICB0aGUgc3RhdGljIHByb3BlcnR5IHRhYmxlLiBXZSByZWFzb24gYWJvdXQgdGhlIHN0
YXRpYyAgcHJvcGVydHkgdGFibGUgaW5zaWRlIEpTT2JqZWN0J3MKKyAgICAgICAgcHJvcGVydHkg
bG9va3VwLgorICAgICAgICAKKyAgICAgICAgVGhpcyBwYXRjaCBhcHBlYXJzIHRvIGJlIGEgMC41
JSBwcm9ncmVzc2lvbiBvbiBTcGVlZG9tZXRlcjIuCisKKyAgICAgICAgKiBydW50aW1lL1N0cnVj
dHVyZS5jcHA6CisgICAgICAgIChKU0M6OlN0cnVjdHVyZTo6U3RydWN0dXJlKToKKyAgICAgICAg
KiBydW50aW1lL1N0cnVjdHVyZS5oOgorICAgICAgICAqIHJ1bnRpbWUvU3RydWN0dXJlSW5saW5l
cy5oOgorICAgICAgICAoSlNDOjpTdHJ1Y3R1cmU6OmdldCk6CisgICAgICAgIChKU0M6OlN0cnVj
dHVyZTo6YWRkKToKKwogMjAxOS0xMi0xMyAgU2FhbSBCYXJhdGkgIDxzYmFyYXRpQGFwcGxlLmNv
bT4KIAogICAgICAgICBBZGQgYSBIZWFwOjpmaW5hbGl6ZSBmdW5jdGlvbiB0aGF0IHRha2VzIFdU
Rjo6RnVuY3Rpb248dm9pZCgpPgpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
U3RydWN0dXJlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9TdHJ1Y3R1cmUuY3BwCShyZXZpc2lvbiAyNTM1MDMpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9TdHJ1Y3R1cmUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNTYsNiArMjU2LDcg
QEAgU3RydWN0dXJlOjpTdHJ1Y3R1cmUoVk0mIHZtLCBTdHJ1Y3R1cmUqIAogICAgICwgbV90cmFu
c2l0aW9uV2F0Y2hwb2ludFNldChJc1dhdGNoZWQpCiAgICAgLCBtX29mZnNldChpbnZhbGlkT2Zm
c2V0KQogICAgICwgbV9wcm9wZXJ0eUhhc2gocHJldmlvdXMtPm1fcHJvcGVydHlIYXNoKQorICAg
ICwgbV9zZWVuUHJvcGVydGllcyhwcmV2aW91cy0+bV9zZWVuUHJvcGVydGllcykKIHsKICAgICBz
ZXREaWN0aW9uYXJ5S2luZChwcmV2aW91cy0+ZGljdGlvbmFyeUtpbmQoKSk7CiAgICAgc2V0SXNQ
aW5uZWRQcm9wZXJ0eVRhYmxlKGZhbHNlKTsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1N0cnVjdHVyZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1N0cnVjdHVyZS5oCShyZXZpc2lvbiAyNTM1MDMpCisrKyBTb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9TdHJ1Y3R1cmUuaAkod29ya2luZyBjb3B5KQpAQCAtMzEsNiArMzEsNyBA
QAogI2luY2x1ZGUgIkpTQ0pTVmFsdWUuaCIKICNpbmNsdWRlICJKU0Nhc3QuaCIKICNpbmNsdWRl
ICJKU1R5cGUuaCIKKyNpbmNsdWRlICJKU1R5cGVJbmZvLmgiCiAjaW5jbHVkZSAiUHJvcGVydHlO
YW1lLmgiCiAjaW5jbHVkZSAiUHJvcGVydHlOYW1lQXJyYXkuaCIKICNpbmNsdWRlICJQcm9wZXJ0
eU9mZnNldC5oIgpAQCAtMzgsNyArMzksNyBAQAogI2luY2x1ZGUgIlN0cnVjdHVyZUlEQmxvYi5o
IgogI2luY2x1ZGUgIlN0cnVjdHVyZVJhcmVEYXRhLmgiCiAjaW5jbHVkZSAiU3RydWN0dXJlVHJh
bnNpdGlvblRhYmxlLmgiCi0jaW5jbHVkZSAiSlNUeXBlSW5mby5oIgorI2luY2x1ZGUgIlRpbnlC
bG9vbUZpbHRlci5oIgogI2luY2x1ZGUgIldhdGNocG9pbnQuaCIKICNpbmNsdWRlICJXcml0ZUJh
cnJpZXJJbmxpbmVzLmgiCiAjaW5jbHVkZSA8d3RmL1ByaW50U3RyZWFtLmg+CkBAIC03OTQsNiAr
Nzk1LDcgQEAgcHJpdmF0ZToKICAgICBQcm9wZXJ0eU9mZnNldCBtX29mZnNldDsKIAogICAgIHVp
bnQzMl90IG1fcHJvcGVydHlIYXNoOworICAgIFRpbnlCbG9vbUZpbHRlciBtX3NlZW5Qcm9wZXJ0
aWVzOwogCiAgICAgZnJpZW5kIGNsYXNzIFZNSW5zcGVjdG9yOwogfTsKSW5kZXg6IFNvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cnVjdHVyZUlubGluZXMuaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJ1Y3R1cmVJbmxpbmVzLmgJKHJldmlzaW9u
IDI1MzUwMykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cnVjdHVyZUlubGlu
ZXMuaAkod29ya2luZyBjb3B5KQpAQCAtMTQ0LDYgKzE0NCw5IEBAIEFMV0FZU19JTkxJTkUgUHJv
cGVydHlPZmZzZXQgU3RydWN0dXJlOjoKICAgICBBU1NFUlQoIWlzQ29tcGlsYXRpb25UaHJlYWQo
KSk7CiAgICAgQVNTRVJUKHN0cnVjdHVyZSh2bSktPmNsYXNzSW5mbygpID09IGluZm8oKSk7CiAK
KyAgICBpZiAobV9zZWVuUHJvcGVydGllcy5ydWxlT3V0KGJpdHdpc2VfY2FzdDx1aW50cHRyX3Q+
KHByb3BlcnR5TmFtZS51aWQoKSkpKQorICAgICAgICByZXR1cm4gaW52YWxpZE9mZnNldDsKKwog
ICAgIFByb3BlcnR5VGFibGUqIHByb3BlcnR5VGFibGUgPSBlbnN1cmVQcm9wZXJ0eVRhYmxlSWZO
b3RFbXB0eSh2bSk7CiAgICAgaWYgKCFwcm9wZXJ0eVRhYmxlKQogICAgICAgICByZXR1cm4gaW52
YWxpZE9mZnNldDsKQEAgLTQ0Nyw2ICs0NTAsOCBAQCBpbmxpbmUgUHJvcGVydHlPZmZzZXQgU3Ry
dWN0dXJlOjphZGQoVk0mCiAgICAgUHJvcGVydHlPZmZzZXQgbmV3T2Zmc2V0ID0gdGFibGUtPm5l
eHRPZmZzZXQobV9pbmxpbmVDYXBhY2l0eSk7CiAKICAgICBtX3Byb3BlcnR5SGFzaCA9IG1fcHJv
cGVydHlIYXNoIF4gcmVwLT5leGlzdGluZ1N5bWJvbEF3YXJlSGFzaCgpOworCisgICAgbV9zZWVu
UHJvcGVydGllcy5hZGQoYml0d2lzZV9jYXN0PHVpbnRwdHJfdD4ocmVwKSk7CiAgICAgCiAgICAg
UHJvcGVydHlPZmZzZXQgbmV3TGFzdE9mZnNldCA9IG1fb2Zmc2V0OwogICAgIHRhYmxlLT5hZGQo
UHJvcGVydHlNYXBFbnRyeShyZXAsIG5ld09mZnNldCwgYXR0cmlidXRlcyksIG5ld0xhc3RPZmZz
ZXQsIFByb3BlcnR5VGFibGU6OlByb3BlcnR5T2Zmc2V0TWF5Q2hhbmdlKTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>