<?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>218074</bug_id>
          
          <creation_ts>2020-10-22 03:17:04 -0700</creation_ts>
          <short_desc>[LFC][Integration] Allow all replaced elements</short_desc>
          <delta_ts>2020-10-26 07:00:38 -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>Layout and Rendering</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="Antti Koivisto">koivisto</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>changseok</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>jbedard</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>pdr</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>zalan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1700591</commentid>
    <comment_count>0</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2020-10-22 03:17:04 -0700</bug_when>
    <thetext>Expand beyond images</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1700592</commentid>
    <comment_count>1</comment_count>
      <attachid>412081</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2020-10-22 03:21:41 -0700</bug_when>
    <thetext>Created attachment 412081
for bots</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1700605</commentid>
    <comment_count>2</comment_count>
      <attachid>412087</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2020-10-22 05:25:02 -0700</bug_when>
    <thetext>Created attachment 412087
for bots</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1700962</commentid>
    <comment_count>3</comment_count>
      <attachid>412165</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2020-10-23 02:04:13 -0700</bug_when>
    <thetext>Created attachment 412165
for bots</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1700981</commentid>
    <comment_count>4</comment_count>
      <attachid>412169</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2020-10-23 04:28:07 -0700</bug_when>
    <thetext>Created attachment 412169
for bots</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1700984</commentid>
    <comment_count>5</comment_count>
      <attachid>412170</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2020-10-23 05:33:17 -0700</bug_when>
    <thetext>Created attachment 412170
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1700986</commentid>
    <comment_count>6</comment_count>
      <attachid>412171</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2020-10-23 05:35:50 -0700</bug_when>
    <thetext>Created attachment 412171
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1701373</commentid>
    <comment_count>7</comment_count>
      <attachid>412298</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2020-10-26 02:44:24 -0700</bug_when>
    <thetext>Created attachment 412298
for bots</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1701429</commentid>
    <comment_count>8</comment_count>
      <attachid>412315</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2020-10-26 06:27:44 -0700</bug_when>
    <thetext>Created attachment 412315
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1701442</commentid>
    <comment_count>9</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-10-26 06:59:03 -0700</bug_when>
    <thetext>Committed r268976: &lt;https://trac.webkit.org/changeset/268976&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 412315.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1701445</commentid>
    <comment_count>10</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-10-26 07:00:38 -0700</bug_when>
    <thetext>&lt;rdar://problem/70678143&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>412081</attachid>
            <date>2020-10-22 03:21:41 -0700</date>
            <delta_ts>2020-10-22 05:25:02 -0700</delta_ts>
            <desc>for bots</desc>
            <filename>lfc-replaced.patch</filename>
            <type>text/plain</type>
            <size>6235</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRl
Z3JhdGlvbkJveFRyZWUuY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xh
eW91dEludGVncmF0aW9uQm94VHJlZS5jcHAKaW5kZXggZmU4MmNjZjdjYWVkLi5hNmUwYTUwZWE3
ZTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJ
bnRlZ3JhdGlvbkJveFRyZWUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3Jh
dGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkJveFRyZWUuY3BwCkBAIC03MSwxMCArNzEsOSBAQCB2b2lk
IEJveFRyZWU6OmJ1aWxkVHJlZSgpCiAgICAgICAgICAgICBjbG9uZWRTdHlsZS5zZXRGbG9hdGlu
ZyhGbG9hdDo6Tm8pOwogICAgICAgICAgICAgY2xvbmVkU3R5bGUuc2V0UG9zaXRpb24oUG9zaXRp
b25UeXBlOjpTdGF0aWMpOwogICAgICAgICAgICAgY2hpbGRCb3ggPSBtYWtlVW5pcXVlPExheW91
dDo6TGluZUJyZWFrQm94Pihkb3duY2FzdDxSZW5kZXJMaW5lQnJlYWs+KGNoaWxkUmVuZGVyZXIp
LmlzV0JSKCksIFdURk1vdmUoY2xvbmVkU3R5bGUpKTsKLSAgICAgICAgfSBlbHNlIGlmIChpczxS
ZW5kZXJJbWFnZT4oY2hpbGRSZW5kZXJlcikpIHsKLSAgICAgICAgICAgIGF1dG8mIGltYWdlID0g
ZG93bmNhc3Q8UmVuZGVySW1hZ2U+KGNoaWxkUmVuZGVyZXIpOwotICAgICAgICAgICAgYXV0byBj
bG9uZWRTdHlsZSA9IFJlbmRlclN0eWxlOjpjbG9uZShpbWFnZS5zdHlsZSgpKTsKLSAgICAgICAg
ICAgIGNoaWxkQm94ID0gbWFrZVVuaXF1ZTxMYXlvdXQ6OlJlcGxhY2VkQm94PihMYXlvdXQ6OkJv
eDo6RWxlbWVudEF0dHJpYnV0ZXMgeyBMYXlvdXQ6OkJveDo6RWxlbWVudFR5cGU6OkltYWdlIH0s
IFdURk1vdmUoY2xvbmVkU3R5bGUpKTsKKyAgICAgICAgfSBlbHNlIGlmIChpczxSZW5kZXJCb3g+
KGNoaWxkUmVuZGVyZXIpKSB7CisgICAgICAgICAgICBhdXRvIGNsb25lZFN0eWxlID0gUmVuZGVy
U3R5bGU6OmNsb25lKGNoaWxkUmVuZGVyZXIuc3R5bGUoKSk7CisgICAgICAgICAgICBjaGlsZEJv
eCA9IG1ha2VVbmlxdWU8TGF5b3V0OjpSZXBsYWNlZEJveD4oTGF5b3V0OjpCb3g6OkVsZW1lbnRB
dHRyaWJ1dGVzIHsgaXM8UmVuZGVySW1hZ2U+KGNoaWxkUmVuZGVyZXIpID8gTGF5b3V0OjpCb3g6
OkVsZW1lbnRUeXBlOjpJbWFnZSA6IExheW91dDo6Qm94OjpFbGVtZW50VHlwZTo6R2VuZXJpY0Vs
ZW1lbnQgfSwgV1RGTW92ZShjbG9uZWRTdHlsZSkpOwogICAgICAgICB9CiAgICAgICAgIEFTU0VS
VChjaGlsZEJveCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3Jh
dGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkNvdmVyYWdlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xheW91
dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkNvdmVyYWdlLmNwcAppbmRleCBmNTcxYjJl
MTUzYWIuLmQ5NzhiZWIwOWFmNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2lu
dGVncmF0aW9uL0xheW91dEludGVncmF0aW9uQ292ZXJhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkNvdmVyYWdlLmNwcApAQCAt
NDMsNiArNDMsNyBAQAogI2lmIEVOQUJMRShMQVlPVVRfRk9STUFUVElOR19DT05URVhUKQogCiAj
ZGVmaW5lIEFMTE9XX0lOTElORV9JTUFHRVMgMAorI2RlZmluZSBBTExPV19SRVBMQUNFRCAxCiAK
ICNpZm5kZWYgTkRFQlVHCiAjZGVmaW5lIFNFVF9SRUFTT05fQU5EX1JFVFVSTl9JRl9ORUVERUQo
cmVhc29uLCByZWFzb25zLCBpbmNsdWRlUmVhc29ucykgeyBcCkBAIC0zMTksMjEgKzMyMCwzMSBA
QCBPcHRpb25TZXQ8QXZvaWRhbmNlUmVhc29uPiBjYW5Vc2VGb3JMaW5lTGF5b3V0V2l0aFJlYXNv
bihjb25zdCBSZW5kZXJCbG9ja0Zsb3cmCiAgICAgICAgIH0KICAgICAgICAgaWYgKGlzPFJlbmRl
ckxpbmVCcmVhaz4oKmNoaWxkKSkKICAgICAgICAgICAgIGNvbnRpbnVlOwotI2lmIEFMTE9XX0lO
TElORV9JTUFHRVMKLSAgICAgICAgaWYgKGlzPFJlbmRlckltYWdlPigqY2hpbGQpKSB7Ci0gICAg
ICAgICAgICBhdXRvJiBpbWFnZSA9IGRvd25jYXN0PFJlbmRlckltYWdlPigqY2hpbGQpOwotICAg
ICAgICAgICAgaWYgKGltYWdlLmltYWdlTWFwKCkpCi0gICAgICAgICAgICAgICAgU0VUX1JFQVNP
Tl9BTkRfUkVUVVJOX0lGX05FRURFRChGbG93SGFzTm9uU3VwcG9ydGVkQ2hpbGQsIHJlYXNvbnMs
IGluY2x1ZGVSZWFzb25zKTsgICAgICAgICAgICAgICAgCi0gICAgICAgICAgICBpZiAoaW1hZ2Uu
aXNGbG9hdGluZygpIHx8IGltYWdlLmlzUG9zaXRpb25lZCgpKQorI2lmIEFMTE9XX0lOTElORV9J
TUFHRVMgfHwgQUxMT1dfUkVQTEFDRUQKKyAgICAgICAgaWYgKGlzPFJlbmRlckJveD4oKmNoaWxk
KSAmJiBjaGlsZC0+aXNSZXBsYWNlZCgpKSB7CisgICAgICAgICAgICBhdXRvJiByZXBsYWNlZCA9
IGRvd25jYXN0PFJlbmRlckJveD4oKmNoaWxkKTsKKyAgICAgICAgICAgIGlmIChyZXBsYWNlZC5p
c0Zsb2F0aW5nKCkgfHwgcmVwbGFjZWQuaXNQb3NpdGlvbmVkKCkpCiAgICAgICAgICAgICAgICAg
U0VUX1JFQVNPTl9BTkRfUkVUVVJOX0lGX05FRURFRChGbG93SGFzTm9uU3VwcG9ydGVkQ2hpbGQs
IHJlYXNvbnMsIGluY2x1ZGVSZWFzb25zKTsKLSAgICAgICAgICAgIGF1dG8mIHN0eWxlID0gaW1h
Z2Uuc3R5bGUoKTsKKyAgICAgICAgICAgIGlmIChyZXBsYWNlZC5pc0xpc3RNYXJrZXIoKSkKKyAg
ICAgICAgICAgICAgICBTRVRfUkVBU09OX0FORF9SRVRVUk5fSUZfTkVFREVEKEZsb3dIYXNOb25T
dXBwb3J0ZWRDaGlsZCwgcmVhc29ucywgaW5jbHVkZVJlYXNvbnMpOworCisgICAgICAgICAgICBh
dXRvJiBzdHlsZSA9IHJlcGxhY2VkLnN0eWxlKCk7CiAgICAgICAgICAgICBpZiAoc3R5bGUudmVy
dGljYWxBbGlnbigpICE9IFZlcnRpY2FsQWxpZ246OkJhc2VsaW5lKQogICAgICAgICAgICAgICAg
IFNFVF9SRUFTT05fQU5EX1JFVFVSTl9JRl9ORUVERUQoRmxvd0hhc05vblN1cHBvcnRlZENoaWxk
LCByZWFzb25zLCBpbmNsdWRlUmVhc29ucyk7CiAgICAgICAgICAgICBpZiAoc3R5bGUud2lkdGgo
KS5pc1BlcmNlbnQoKSB8fCBzdHlsZS5oZWlnaHQoKS5pc1BlcmNlbnQoKSkKICAgICAgICAgICAg
ICAgICBTRVRfUkVBU09OX0FORF9SRVRVUk5fSUZfTkVFREVEKEZsb3dIYXNOb25TdXBwb3J0ZWRD
aGlsZCwgcmVhc29ucywgaW5jbHVkZVJlYXNvbnMpOwogICAgICAgICAgICAgaWYgKHN0eWxlLm9i
amVjdEZpdCgpICE9IFJlbmRlclN0eWxlOjppbml0aWFsT2JqZWN0Rml0KCkpCiAgICAgICAgICAg
ICAgICAgU0VUX1JFQVNPTl9BTkRfUkVUVVJOX0lGX05FRURFRChGbG93SGFzTm9uU3VwcG9ydGVk
Q2hpbGQsIHJlYXNvbnMsIGluY2x1ZGVSZWFzb25zKTsKKworICAgICAgICAgICAgaWYgKGlzPFJl
bmRlckltYWdlPihyZXBsYWNlZCkpIHsKKyAgICAgICAgICAgICAgICBhdXRvJiBpbWFnZSA9IGRv
d25jYXN0PFJlbmRlckltYWdlPihyZXBsYWNlZCk7CisgICAgICAgICAgICAgICAgaWYgKGltYWdl
LmltYWdlTWFwKCkpCisgICAgICAgICAgICAgICAgICAgIFNFVF9SRUFTT05fQU5EX1JFVFVSTl9J
Rl9ORUVERUQoRmxvd0hhc05vblN1cHBvcnRlZENoaWxkLCByZWFzb25zLCBpbmNsdWRlUmVhc29u
cyk7CisgICAgICAgICAgICAgICAgY29udGludWU7CisgICAgICAgICAgICB9CisjaWYgQUxMT1df
UkVQTEFDRUQKICAgICAgICAgICAgIGNvbnRpbnVlOworI2VuZGlmCiAgICAgICAgIH0KICNlbmRp
ZgogICAgICAgICBTRVRfUkVBU09OX0FORF9SRVRVUk5fSUZfTkVFREVEKEZsb3dIYXNOb25TdXBw
b3J0ZWRDaGlsZCwgcmVhc29ucywgaW5jbHVkZVJlYXNvbnMpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uTGluZUxheW91dC5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25M
aW5lTGF5b3V0LmNwcAppbmRleCAzMDZlOGI2ZDg1ZTcuLjIxNWRhMTRiMjc1MSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uTGlu
ZUxheW91dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91
dEludGVncmF0aW9uTGluZUxheW91dC5jcHAKQEAgLTY3LDcgKzY3LDEwIEBAIExpbmVMYXlvdXQ6
On5MaW5lTGF5b3V0KCkgPSBkZWZhdWx0OwogCiBMaW5lTGF5b3V0KiBMaW5lTGF5b3V0Ojpjb250
YWluaW5nKFJlbmRlck9iamVjdCYgcmVuZGVyZXIpCiB7Ci0gICAgaWYgKCFpczxSZW5kZXJUZXh0
PihyZW5kZXJlcikgJiYgIWlzPFJlbmRlckxpbmVCcmVhaz4ocmVuZGVyZXIpICYmICFpczxSZW5k
ZXJJbWFnZT4ocmVuZGVyZXIpKQorICAgIGlmICghcmVuZGVyZXIuaXNJbmxpbmUoKSkKKyAgICAg
ICAgcmV0dXJuIG51bGxwdHI7CisKKyAgICBpZiAocmVuZGVyZXIuaXNSZXBsaWNhKCkpCiAgICAg
ICAgIHJldHVybiBudWxscHRyOwogICAgIAogICAgIGlmIChhdXRvKiBwYXJlbnQgPSByZW5kZXJl
ci5wYXJlbnQoKSkgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
ckJsb2NrRmxvdy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2tGbG93
LmNwcAppbmRleCBkYzA2OGYzNGVlMGMuLjM2M2Y5MGYzZDU4MyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrRmxvdy5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrRmxvdy5jcHAKQEAgLTM2NjMsOCArMzY2Myw4IEBAIHZv
aWQgUmVuZGVyQmxvY2tGbG93OjpsYXlvdXRMRkNMaW5lcyhib29sIHJlbGF5b3V0Q2hpbGRyZW4s
IExheW91dFVuaXQmIHJlcGFpbnRMCiAgICAgZm9yIChhdXRvJiByZW5kZXJlciA6IGNoaWxkcmVu
T2ZUeXBlPFJlbmRlck9iamVjdD4oKnRoaXMpKSB7CiAgICAgICAgIGlmICghcmVsYXlvdXRDaGls
ZHJlbiAmJiAhcmVuZGVyZXIubmVlZHNMYXlvdXQoKSkKICAgICAgICAgICAgIGNvbnRpbnVlOwot
ICAgICAgICBpZiAoaXM8UmVuZGVyUmVwbGFjZWQ+KHJlbmRlcmVyKSkgewotICAgICAgICAgICAg
YXV0byYgcmVwbGFjZWQgPSBkb3duY2FzdDxSZW5kZXJSZXBsYWNlZD4ocmVuZGVyZXIpOworICAg
ICAgICBpZiAoaXM8UmVuZGVyQm94PihyZW5kZXJlcikpIHsKKyAgICAgICAgICAgIGF1dG8mIHJl
cGxhY2VkID0gZG93bmNhc3Q8UmVuZGVyQm94PihyZW5kZXJlcik7CiAgICAgICAgICAgICByZXBs
YWNlZC5zZXROZWVkc0xheW91dChNYXJrT25seVRoaXMpOwogICAgICAgICAgICAgcmVwbGFjZWQu
bGF5b3V0SWZOZWVkZWQoKTsKICAgICAgICAgICAgIGxheW91dEZvcm1hdHRpbmdDb250ZXh0TGlu
ZUxheW91dC51cGRhdGVSZXBsYWNlZERpbWVuc2lvbnMocmVwbGFjZWQpOwpkaWZmIC0tZ2l0IGEv
VG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvY29udHJvbGxlcnMvbGF5b3V0X3Rl
c3RfcnVubmVyLnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvY29udHJv
bGxlcnMvbGF5b3V0X3Rlc3RfcnVubmVyLnB5CmluZGV4IDFmZTYwYjhjMGQxYy4uMWM3YjFkZjE3
YjNiIDEwMDY0NAotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9jb250
cm9sbGVycy9sYXlvdXRfdGVzdF9ydW5uZXIucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRw
eS9sYXlvdXRfdGVzdHMvY29udHJvbGxlcnMvbGF5b3V0X3Rlc3RfcnVubmVyLnB5CkBAIC0xNjYs
NiArMTY2LDcgQEAgY2xhc3MgTGF5b3V0VGVzdFJ1bm5lcihvYmplY3QpOgogICAgICAgICAgICAg
ICAgIHNlbGYuX21hcmtfaW50ZXJydXB0ZWRfdGVzdHNfYXNfc2tpcHBlZChydW5fcmVzdWx0cykK
ICAgICAgICAgICAgICAgICByYWlzZSBUZXN0UnVuSW50ZXJydXB0ZWRFeGNlcHRpb24obWVzc2Fn
ZSkKIAorICAgICAgICBzZWxmLl9vcHRpb25zLmV4aXRfYWZ0ZXJfbl9mYWlsdXJlcyA9IE5vbmUK
ICAgICAgICAgaW50ZXJydXB0X2lmX2F0X2ZhaWx1cmVfbGltaXQoCiAgICAgICAgICAgICBzZWxm
Ll9vcHRpb25zLmV4aXRfYWZ0ZXJfbl9mYWlsdXJlcywKICAgICAgICAgICAgIHJ1bl9yZXN1bHRz
LnVuZXhwZWN0ZWRfZmFpbHVyZXMsCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>412087</attachid>
            <date>2020-10-22 05:25:02 -0700</date>
            <delta_ts>2020-10-23 02:04:13 -0700</delta_ts>
            <desc>for bots</desc>
            <filename>lfc-replaced-2.patch</filename>
            <type>text/plain</type>
            <size>6536</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRl
Z3JhdGlvbkJveFRyZWUuY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xh
eW91dEludGVncmF0aW9uQm94VHJlZS5jcHAKaW5kZXggZmU4MmNjZjdjYWVkLi5hNmUwYTUwZWE3
ZTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJ
bnRlZ3JhdGlvbkJveFRyZWUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3Jh
dGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkJveFRyZWUuY3BwCkBAIC03MSwxMCArNzEsOSBAQCB2b2lk
IEJveFRyZWU6OmJ1aWxkVHJlZSgpCiAgICAgICAgICAgICBjbG9uZWRTdHlsZS5zZXRGbG9hdGlu
ZyhGbG9hdDo6Tm8pOwogICAgICAgICAgICAgY2xvbmVkU3R5bGUuc2V0UG9zaXRpb24oUG9zaXRp
b25UeXBlOjpTdGF0aWMpOwogICAgICAgICAgICAgY2hpbGRCb3ggPSBtYWtlVW5pcXVlPExheW91
dDo6TGluZUJyZWFrQm94Pihkb3duY2FzdDxSZW5kZXJMaW5lQnJlYWs+KGNoaWxkUmVuZGVyZXIp
LmlzV0JSKCksIFdURk1vdmUoY2xvbmVkU3R5bGUpKTsKLSAgICAgICAgfSBlbHNlIGlmIChpczxS
ZW5kZXJJbWFnZT4oY2hpbGRSZW5kZXJlcikpIHsKLSAgICAgICAgICAgIGF1dG8mIGltYWdlID0g
ZG93bmNhc3Q8UmVuZGVySW1hZ2U+KGNoaWxkUmVuZGVyZXIpOwotICAgICAgICAgICAgYXV0byBj
bG9uZWRTdHlsZSA9IFJlbmRlclN0eWxlOjpjbG9uZShpbWFnZS5zdHlsZSgpKTsKLSAgICAgICAg
ICAgIGNoaWxkQm94ID0gbWFrZVVuaXF1ZTxMYXlvdXQ6OlJlcGxhY2VkQm94PihMYXlvdXQ6OkJv
eDo6RWxlbWVudEF0dHJpYnV0ZXMgeyBMYXlvdXQ6OkJveDo6RWxlbWVudFR5cGU6OkltYWdlIH0s
IFdURk1vdmUoY2xvbmVkU3R5bGUpKTsKKyAgICAgICAgfSBlbHNlIGlmIChpczxSZW5kZXJCb3g+
KGNoaWxkUmVuZGVyZXIpKSB7CisgICAgICAgICAgICBhdXRvIGNsb25lZFN0eWxlID0gUmVuZGVy
U3R5bGU6OmNsb25lKGNoaWxkUmVuZGVyZXIuc3R5bGUoKSk7CisgICAgICAgICAgICBjaGlsZEJv
eCA9IG1ha2VVbmlxdWU8TGF5b3V0OjpSZXBsYWNlZEJveD4oTGF5b3V0OjpCb3g6OkVsZW1lbnRB
dHRyaWJ1dGVzIHsgaXM8UmVuZGVySW1hZ2U+KGNoaWxkUmVuZGVyZXIpID8gTGF5b3V0OjpCb3g6
OkVsZW1lbnRUeXBlOjpJbWFnZSA6IExheW91dDo6Qm94OjpFbGVtZW50VHlwZTo6R2VuZXJpY0Vs
ZW1lbnQgfSwgV1RGTW92ZShjbG9uZWRTdHlsZSkpOwogICAgICAgICB9CiAgICAgICAgIEFTU0VS
VChjaGlsZEJveCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3Jh
dGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkNvdmVyYWdlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xheW91
dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkNvdmVyYWdlLmNwcAppbmRleCBmNTcxYjJl
MTUzYWIuLmZiM2M1MzRjY2I2NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2lu
dGVncmF0aW9uL0xheW91dEludGVncmF0aW9uQ292ZXJhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkNvdmVyYWdlLmNwcApAQCAt
NDMsNiArNDMsNyBAQAogI2lmIEVOQUJMRShMQVlPVVRfRk9STUFUVElOR19DT05URVhUKQogCiAj
ZGVmaW5lIEFMTE9XX0lOTElORV9JTUFHRVMgMAorI2RlZmluZSBBTExPV19SRVBMQUNFRCAxCiAK
ICNpZm5kZWYgTkRFQlVHCiAjZGVmaW5lIFNFVF9SRUFTT05fQU5EX1JFVFVSTl9JRl9ORUVERUQo
cmVhc29uLCByZWFzb25zLCBpbmNsdWRlUmVhc29ucykgeyBcCkBAIC0zMTksMjEgKzMyMCwzNSBA
QCBPcHRpb25TZXQ8QXZvaWRhbmNlUmVhc29uPiBjYW5Vc2VGb3JMaW5lTGF5b3V0V2l0aFJlYXNv
bihjb25zdCBSZW5kZXJCbG9ja0Zsb3cmCiAgICAgICAgIH0KICAgICAgICAgaWYgKGlzPFJlbmRl
ckxpbmVCcmVhaz4oKmNoaWxkKSkKICAgICAgICAgICAgIGNvbnRpbnVlOwotI2lmIEFMTE9XX0lO
TElORV9JTUFHRVMKLSAgICAgICAgaWYgKGlzPFJlbmRlckltYWdlPigqY2hpbGQpKSB7Ci0gICAg
ICAgICAgICBhdXRvJiBpbWFnZSA9IGRvd25jYXN0PFJlbmRlckltYWdlPigqY2hpbGQpOwotICAg
ICAgICAgICAgaWYgKGltYWdlLmltYWdlTWFwKCkpCi0gICAgICAgICAgICAgICAgU0VUX1JFQVNP
Tl9BTkRfUkVUVVJOX0lGX05FRURFRChGbG93SGFzTm9uU3VwcG9ydGVkQ2hpbGQsIHJlYXNvbnMs
IGluY2x1ZGVSZWFzb25zKTsgICAgICAgICAgICAgICAgCi0gICAgICAgICAgICBpZiAoaW1hZ2Uu
aXNGbG9hdGluZygpIHx8IGltYWdlLmlzUG9zaXRpb25lZCgpKQorI2lmIEFMTE9XX0lOTElORV9J
TUFHRVMgfHwgQUxMT1dfUkVQTEFDRUQKKyAgICAgICAgaWYgKGlzPFJlbmRlckJveD4oKmNoaWxk
KSAmJiBjaGlsZC0+aXNSZXBsYWNlZCgpKSB7CisgICAgICAgICAgICBhdXRvJiByZXBsYWNlZCA9
IGRvd25jYXN0PFJlbmRlckJveD4oKmNoaWxkKTsKKyAgICAgICAgICAgIGlmIChyZXBsYWNlZC5p
c0Zsb2F0aW5nKCkgfHwgcmVwbGFjZWQuaXNQb3NpdGlvbmVkKCkpCiAgICAgICAgICAgICAgICAg
U0VUX1JFQVNPTl9BTkRfUkVUVVJOX0lGX05FRURFRChGbG93SGFzTm9uU3VwcG9ydGVkQ2hpbGQs
IHJlYXNvbnMsIGluY2x1ZGVSZWFzb25zKTsKLSAgICAgICAgICAgIGF1dG8mIHN0eWxlID0gaW1h
Z2Uuc3R5bGUoKTsKKyAgICAgICAgICAgIGlmIChyZXBsYWNlZC5pc0xpc3RNYXJrZXIoKSkKKyAg
ICAgICAgICAgICAgICBTRVRfUkVBU09OX0FORF9SRVRVUk5fSUZfTkVFREVEKEZsb3dIYXNOb25T
dXBwb3J0ZWRDaGlsZCwgcmVhc29ucywgaW5jbHVkZVJlYXNvbnMpOworICAgICAgICAgICAgaWYg
KHJlcGxhY2VkLmlzU1ZHUm9vdCgpKQorICAgICAgICAgICAgICAgIFNFVF9SRUFTT05fQU5EX1JF
VFVSTl9JRl9ORUVERUQoRmxvd0hhc05vblN1cHBvcnRlZENoaWxkLCByZWFzb25zLCBpbmNsdWRl
UmVhc29ucyk7CisKKyAgICAgICAgICAgIGF1dG8mIHN0eWxlID0gcmVwbGFjZWQuc3R5bGUoKTsK
ICAgICAgICAgICAgIGlmIChzdHlsZS52ZXJ0aWNhbEFsaWduKCkgIT0gVmVydGljYWxBbGlnbjo6
QmFzZWxpbmUpCiAgICAgICAgICAgICAgICAgU0VUX1JFQVNPTl9BTkRfUkVUVVJOX0lGX05FRURF
RChGbG93SGFzTm9uU3VwcG9ydGVkQ2hpbGQsIHJlYXNvbnMsIGluY2x1ZGVSZWFzb25zKTsKICAg
ICAgICAgICAgIGlmIChzdHlsZS53aWR0aCgpLmlzUGVyY2VudCgpIHx8IHN0eWxlLmhlaWdodCgp
LmlzUGVyY2VudCgpKQogICAgICAgICAgICAgICAgIFNFVF9SRUFTT05fQU5EX1JFVFVSTl9JRl9O
RUVERUQoRmxvd0hhc05vblN1cHBvcnRlZENoaWxkLCByZWFzb25zLCBpbmNsdWRlUmVhc29ucyk7
CiAgICAgICAgICAgICBpZiAoc3R5bGUub2JqZWN0Rml0KCkgIT0gUmVuZGVyU3R5bGU6OmluaXRp
YWxPYmplY3RGaXQoKSkKICAgICAgICAgICAgICAgICBTRVRfUkVBU09OX0FORF9SRVRVUk5fSUZf
TkVFREVEKEZsb3dIYXNOb25TdXBwb3J0ZWRDaGlsZCwgcmVhc29ucywgaW5jbHVkZVJlYXNvbnMp
OworICAgICAgICAgICAgaWYgKHN0eWxlLmJveFNpemluZygpID09IEJveFNpemluZzo6Qm9yZGVy
Qm94KQorICAgICAgICAgICAgICAgIFNFVF9SRUFTT05fQU5EX1JFVFVSTl9JRl9ORUVERUQoRmxv
d0hhc05vblN1cHBvcnRlZENoaWxkLCByZWFzb25zLCBpbmNsdWRlUmVhc29ucyk7CisKKyAgICAg
ICAgICAgIGlmIChpczxSZW5kZXJJbWFnZT4ocmVwbGFjZWQpKSB7CisgICAgICAgICAgICAgICAg
YXV0byYgaW1hZ2UgPSBkb3duY2FzdDxSZW5kZXJJbWFnZT4ocmVwbGFjZWQpOworICAgICAgICAg
ICAgICAgIGlmIChpbWFnZS5pbWFnZU1hcCgpKQorICAgICAgICAgICAgICAgICAgICBTRVRfUkVB
U09OX0FORF9SRVRVUk5fSUZfTkVFREVEKEZsb3dIYXNOb25TdXBwb3J0ZWRDaGlsZCwgcmVhc29u
cywgaW5jbHVkZVJlYXNvbnMpOworICAgICAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICAg
ICAgfQorI2lmIEFMTE9XX1JFUExBQ0VECiAgICAgICAgICAgICBjb250aW51ZTsKKyNlbmRpZgog
ICAgICAgICB9CiAjZW5kaWYKICAgICAgICAgU0VUX1JFQVNPTl9BTkRfUkVUVVJOX0lGX05FRURF
RChGbG93SGFzTm9uU3VwcG9ydGVkQ2hpbGQsIHJlYXNvbnMsIGluY2x1ZGVSZWFzb25zKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3Jh
dGlvbkxpbmVMYXlvdXQuY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xh
eW91dEludGVncmF0aW9uTGluZUxheW91dC5jcHAKaW5kZXggMzA2ZThiNmQ4NWU3Li4yMTVkYTE0
YjI3NTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlv
dXRJbnRlZ3JhdGlvbkxpbmVMYXlvdXQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9p
bnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkxpbmVMYXlvdXQuY3BwCkBAIC02Nyw3ICs2Nywx
MCBAQCBMaW5lTGF5b3V0Ojp+TGluZUxheW91dCgpID0gZGVmYXVsdDsKIAogTGluZUxheW91dCog
TGluZUxheW91dDo6Y29udGFpbmluZyhSZW5kZXJPYmplY3QmIHJlbmRlcmVyKQogewotICAgIGlm
ICghaXM8UmVuZGVyVGV4dD4ocmVuZGVyZXIpICYmICFpczxSZW5kZXJMaW5lQnJlYWs+KHJlbmRl
cmVyKSAmJiAhaXM8UmVuZGVySW1hZ2U+KHJlbmRlcmVyKSkKKyAgICBpZiAoIXJlbmRlcmVyLmlz
SW5saW5lKCkpCisgICAgICAgIHJldHVybiBudWxscHRyOworCisgICAgaWYgKHJlbmRlcmVyLmlz
UmVwbGljYSgpKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICAKICAgICBpZiAoYXV0byog
cGFyZW50ID0gcmVuZGVyZXIucGFyZW50KCkpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJCbG9ja0Zsb3cuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlckJsb2NrRmxvdy5jcHAKaW5kZXggZGMwNjhmMzRlZTBjLi4zNjNmOTBmM2Q1ODMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9ja0Zsb3cuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9ja0Zsb3cuY3BwCkBAIC0zNjYz
LDggKzM2NjMsOCBAQCB2b2lkIFJlbmRlckJsb2NrRmxvdzo6bGF5b3V0TEZDTGluZXMoYm9vbCBy
ZWxheW91dENoaWxkcmVuLCBMYXlvdXRVbml0JiByZXBhaW50TAogICAgIGZvciAoYXV0byYgcmVu
ZGVyZXIgOiBjaGlsZHJlbk9mVHlwZTxSZW5kZXJPYmplY3Q+KCp0aGlzKSkgewogICAgICAgICBp
ZiAoIXJlbGF5b3V0Q2hpbGRyZW4gJiYgIXJlbmRlcmVyLm5lZWRzTGF5b3V0KCkpCiAgICAgICAg
ICAgICBjb250aW51ZTsKLSAgICAgICAgaWYgKGlzPFJlbmRlclJlcGxhY2VkPihyZW5kZXJlcikp
IHsKLSAgICAgICAgICAgIGF1dG8mIHJlcGxhY2VkID0gZG93bmNhc3Q8UmVuZGVyUmVwbGFjZWQ+
KHJlbmRlcmVyKTsKKyAgICAgICAgaWYgKGlzPFJlbmRlckJveD4ocmVuZGVyZXIpKSB7CisgICAg
ICAgICAgICBhdXRvJiByZXBsYWNlZCA9IGRvd25jYXN0PFJlbmRlckJveD4ocmVuZGVyZXIpOwog
ICAgICAgICAgICAgcmVwbGFjZWQuc2V0TmVlZHNMYXlvdXQoTWFya09ubHlUaGlzKTsKICAgICAg
ICAgICAgIHJlcGxhY2VkLmxheW91dElmTmVlZGVkKCk7CiAgICAgICAgICAgICBsYXlvdXRGb3Jt
YXR0aW5nQ29udGV4dExpbmVMYXlvdXQudXBkYXRlUmVwbGFjZWREaW1lbnNpb25zKHJlcGxhY2Vk
KTsKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL2NvbnRy
b2xsZXJzL2xheW91dF90ZXN0X3J1bm5lci5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5
b3V0X3Rlc3RzL2NvbnRyb2xsZXJzL2xheW91dF90ZXN0X3J1bm5lci5weQppbmRleCAxZmU2MGI4
YzBkMWMuLjFjN2IxZGYxN2IzYiAxMDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9s
YXlvdXRfdGVzdHMvY29udHJvbGxlcnMvbGF5b3V0X3Rlc3RfcnVubmVyLnB5CisrKyBiL1Rvb2xz
L1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL2NvbnRyb2xsZXJzL2xheW91dF90ZXN0X3J1
bm5lci5weQpAQCAtMTY2LDYgKzE2Niw3IEBAIGNsYXNzIExheW91dFRlc3RSdW5uZXIob2JqZWN0
KToKICAgICAgICAgICAgICAgICBzZWxmLl9tYXJrX2ludGVycnVwdGVkX3Rlc3RzX2FzX3NraXBw
ZWQocnVuX3Jlc3VsdHMpCiAgICAgICAgICAgICAgICAgcmFpc2UgVGVzdFJ1bkludGVycnVwdGVk
RXhjZXB0aW9uKG1lc3NhZ2UpCiAKKyAgICAgICAgc2VsZi5fb3B0aW9ucy5leGl0X2FmdGVyX25f
ZmFpbHVyZXMgPSBOb25lCiAgICAgICAgIGludGVycnVwdF9pZl9hdF9mYWlsdXJlX2xpbWl0KAog
ICAgICAgICAgICAgc2VsZi5fb3B0aW9ucy5leGl0X2FmdGVyX25fZmFpbHVyZXMsCiAgICAgICAg
ICAgICBydW5fcmVzdWx0cy51bmV4cGVjdGVkX2ZhaWx1cmVzLAo=
</data>
<flag name="commit-queue"
          id="428460"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>412165</attachid>
            <date>2020-10-23 02:04:13 -0700</date>
            <delta_ts>2020-10-23 04:28:07 -0700</delta_ts>
            <desc>for bots</desc>
            <filename>lfc-replaced-3.patch</filename>
            <type>text/plain</type>
            <size>9773</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRl
Z3JhdGlvbkJveFRyZWUuY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xh
eW91dEludGVncmF0aW9uQm94VHJlZS5jcHAKaW5kZXggZmU4MmNjZjdjYWVkLi5hNmUwYTUwZWE3
ZTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJ
bnRlZ3JhdGlvbkJveFRyZWUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3Jh
dGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkJveFRyZWUuY3BwCkBAIC03MSwxMCArNzEsOSBAQCB2b2lk
IEJveFRyZWU6OmJ1aWxkVHJlZSgpCiAgICAgICAgICAgICBjbG9uZWRTdHlsZS5zZXRGbG9hdGlu
ZyhGbG9hdDo6Tm8pOwogICAgICAgICAgICAgY2xvbmVkU3R5bGUuc2V0UG9zaXRpb24oUG9zaXRp
b25UeXBlOjpTdGF0aWMpOwogICAgICAgICAgICAgY2hpbGRCb3ggPSBtYWtlVW5pcXVlPExheW91
dDo6TGluZUJyZWFrQm94Pihkb3duY2FzdDxSZW5kZXJMaW5lQnJlYWs+KGNoaWxkUmVuZGVyZXIp
LmlzV0JSKCksIFdURk1vdmUoY2xvbmVkU3R5bGUpKTsKLSAgICAgICAgfSBlbHNlIGlmIChpczxS
ZW5kZXJJbWFnZT4oY2hpbGRSZW5kZXJlcikpIHsKLSAgICAgICAgICAgIGF1dG8mIGltYWdlID0g
ZG93bmNhc3Q8UmVuZGVySW1hZ2U+KGNoaWxkUmVuZGVyZXIpOwotICAgICAgICAgICAgYXV0byBj
bG9uZWRTdHlsZSA9IFJlbmRlclN0eWxlOjpjbG9uZShpbWFnZS5zdHlsZSgpKTsKLSAgICAgICAg
ICAgIGNoaWxkQm94ID0gbWFrZVVuaXF1ZTxMYXlvdXQ6OlJlcGxhY2VkQm94PihMYXlvdXQ6OkJv
eDo6RWxlbWVudEF0dHJpYnV0ZXMgeyBMYXlvdXQ6OkJveDo6RWxlbWVudFR5cGU6OkltYWdlIH0s
IFdURk1vdmUoY2xvbmVkU3R5bGUpKTsKKyAgICAgICAgfSBlbHNlIGlmIChpczxSZW5kZXJCb3g+
KGNoaWxkUmVuZGVyZXIpKSB7CisgICAgICAgICAgICBhdXRvIGNsb25lZFN0eWxlID0gUmVuZGVy
U3R5bGU6OmNsb25lKGNoaWxkUmVuZGVyZXIuc3R5bGUoKSk7CisgICAgICAgICAgICBjaGlsZEJv
eCA9IG1ha2VVbmlxdWU8TGF5b3V0OjpSZXBsYWNlZEJveD4oTGF5b3V0OjpCb3g6OkVsZW1lbnRB
dHRyaWJ1dGVzIHsgaXM8UmVuZGVySW1hZ2U+KGNoaWxkUmVuZGVyZXIpID8gTGF5b3V0OjpCb3g6
OkVsZW1lbnRUeXBlOjpJbWFnZSA6IExheW91dDo6Qm94OjpFbGVtZW50VHlwZTo6R2VuZXJpY0Vs
ZW1lbnQgfSwgV1RGTW92ZShjbG9uZWRTdHlsZSkpOwogICAgICAgICB9CiAgICAgICAgIEFTU0VS
VChjaGlsZEJveCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3Jh
dGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkNvdmVyYWdlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xheW91
dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkNvdmVyYWdlLmNwcAppbmRleCBmNTcxYjJl
MTUzYWIuLjBlMmIxOTRhZGY4ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2lu
dGVncmF0aW9uL0xheW91dEludGVncmF0aW9uQ292ZXJhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkNvdmVyYWdlLmNwcApAQCAt
NDIsNyArNDIsOSBAQAogCiAjaWYgRU5BQkxFKExBWU9VVF9GT1JNQVRUSU5HX0NPTlRFWFQpCiAK
LSNkZWZpbmUgQUxMT1dfSU5MSU5FX0lNQUdFUyAwCisjZGVmaW5lIEFMTE9XX0lNQUdFUyAwCisj
ZGVmaW5lIEFMTE9XX0FMTF9SRVBMQUNFRCAxCisjZGVmaW5lIEFMTE9XX0lOTElORV9CTE9DS19B
TkRfUkVQTEFDRUQgMAogCiAjaWZuZGVmIE5ERUJVRwogI2RlZmluZSBTRVRfUkVBU09OX0FORF9S
RVRVUk5fSUZfTkVFREVEKHJlYXNvbiwgcmVhc29ucywgaW5jbHVkZVJlYXNvbnMpIHsgXApAQCAt
MjQ1LDYgKzI0Nyw2MiBAQCBzdGF0aWMgT3B0aW9uU2V0PEF2b2lkYW5jZVJlYXNvbj4gY2FuVXNl
Rm9yU3R5bGUoY29uc3QgUmVuZGVyU3R5bGUmIHN0eWxlLCBJbmNsdQogICAgIHJldHVybiByZWFz
b25zOwogfQogCitzdGF0aWMgT3B0aW9uU2V0PEF2b2lkYW5jZVJlYXNvbj4gY2FuVXNlRm9yQ2hp
bGQoY29uc3QgUmVuZGVyT2JqZWN0JiBjaGlsZCwgSW5jbHVkZVJlYXNvbnMgaW5jbHVkZVJlYXNv
bnMpCit7CisgICAgT3B0aW9uU2V0PEF2b2lkYW5jZVJlYXNvbj4gcmVhc29uczsKKyAgICBpZiAo
Y2hpbGQuc2VsZWN0aW9uU3RhdGUoKSAhPSBSZW5kZXJPYmplY3Q6OkhpZ2hsaWdodFN0YXRlOjpO
b25lKQorICAgICAgICBTRVRfUkVBU09OX0FORF9SRVRVUk5fSUZfTkVFREVEKEZsb3dDaGlsZElz
U2VsZWN0ZWQsIHJlYXNvbnMsIGluY2x1ZGVSZWFzb25zKTsKKyAgICBpZiAoaXM8UmVuZGVyVGV4
dD4oY2hpbGQpKSB7CisgICAgICAgIGNvbnN0IGF1dG8mIHJlbmRlclRleHQgPSBkb3duY2FzdDxS
ZW5kZXJUZXh0PihjaGlsZCk7CisgICAgICAgIGlmIChyZW5kZXJUZXh0LnRleHROb2RlKCkgJiYg
IXJlbmRlclRleHQuZG9jdW1lbnQoKS5tYXJrZXJzKCkubWFya2Vyc0ZvcigqcmVuZGVyVGV4dC50
ZXh0Tm9kZSgpKS5pc0VtcHR5KCkpCisgICAgICAgICAgICBTRVRfUkVBU09OX0FORF9SRVRVUk5f
SUZfTkVFREVEKEZsb3dJbmNsdWRlc0RvY3VtZW50TWFya2VycywgcmVhc29ucywgaW5jbHVkZVJl
YXNvbnMpOworICAgICAgICByZXR1cm4gcmVhc29uczsKKyAgICB9CisgICAgCisgICAgaWYgKGlz
PFJlbmRlckxpbmVCcmVhaz4oY2hpbGQpKQorICAgICAgICByZXR1cm4gcmVhc29uczsKKworI2lm
IEFMTE9XX0lNQUdFUyB8fCBBTExPV19BTExfUkVQTEFDRUQgfHwgQUxMT1dfSU5MSU5FX0JMT0NL
X0FORF9SRVBMQUNFRAorICAgIGlmIChpczxSZW5kZXJCb3g+KGNoaWxkKSAmJiBjaGlsZC5pc1Jl
cGxhY2VkKCkpIHsKKyNpZiBBTExPV19BTExfUkVQTEFDRUQKKyAgICAgICAgaWYgKCFpczxSZW5k
ZXJSZXBsYWNlZD4oY2hpbGQpKQorICAgICAgICAgICAgU0VUX1JFQVNPTl9BTkRfUkVUVVJOX0lG
X05FRURFRChGbG93SGFzTm9uU3VwcG9ydGVkQ2hpbGQsIHJlYXNvbnMsIGluY2x1ZGVSZWFzb25z
KTsKKyNlbGlmIEFMTE9XX0lNQUdFUworICAgICAgICBpZiAoIWlzPFJlbmRlckltYWdlPihjaGls
ZCkpCisgICAgICAgICAgICBTRVRfUkVBU09OX0FORF9SRVRVUk5fSUZfTkVFREVEKEZsb3dIYXNO
b25TdXBwb3J0ZWRDaGlsZCwgcmVhc29ucywgaW5jbHVkZVJlYXNvbnMpOworI2VuZGlmCisgICAg
ICAgIGF1dG8mIHJlcGxhY2VkID0gZG93bmNhc3Q8UmVuZGVyQm94PihjaGlsZCk7CisgICAgICAg
IGlmIChyZXBsYWNlZC5pc0Zsb2F0aW5nKCkgfHwgcmVwbGFjZWQuaXNQb3NpdGlvbmVkKCkpCisg
ICAgICAgICAgICBTRVRfUkVBU09OX0FORF9SRVRVUk5fSUZfTkVFREVEKEZsb3dIYXNOb25TdXBw
b3J0ZWRDaGlsZCwgcmVhc29ucywgaW5jbHVkZVJlYXNvbnMpOworICAgICAgICBpZiAocmVwbGFj
ZWQuaXNMaXN0TWFya2VyKCkpCisgICAgICAgICAgICBTRVRfUkVBU09OX0FORF9SRVRVUk5fSUZf
TkVFREVEKEZsb3dIYXNOb25TdXBwb3J0ZWRDaGlsZCwgcmVhc29ucywgaW5jbHVkZVJlYXNvbnMp
OworICAgICAgICBpZiAocmVwbGFjZWQuaXNTVkdSb290KCkpCisgICAgICAgICAgICBTRVRfUkVB
U09OX0FORF9SRVRVUk5fSUZfTkVFREVEKEZsb3dIYXNOb25TdXBwb3J0ZWRDaGlsZCwgcmVhc29u
cywgaW5jbHVkZVJlYXNvbnMpOworCisgICAgICAgIGF1dG8mIHN0eWxlID0gcmVwbGFjZWQuc3R5
bGUoKTsKKyAgICAgICAgaWYgKHN0eWxlLnZlcnRpY2FsQWxpZ24oKSAhPSBWZXJ0aWNhbEFsaWdu
OjpCYXNlbGluZSkKKyAgICAgICAgICAgIFNFVF9SRUFTT05fQU5EX1JFVFVSTl9JRl9ORUVERUQo
Rmxvd0hhc05vblN1cHBvcnRlZENoaWxkLCByZWFzb25zLCBpbmNsdWRlUmVhc29ucyk7CisgICAg
ICAgIGlmIChzdHlsZS53aWR0aCgpLmlzUGVyY2VudCgpIHx8IHN0eWxlLmhlaWdodCgpLmlzUGVy
Y2VudCgpKQorICAgICAgICAgICAgU0VUX1JFQVNPTl9BTkRfUkVUVVJOX0lGX05FRURFRChGbG93
SGFzTm9uU3VwcG9ydGVkQ2hpbGQsIHJlYXNvbnMsIGluY2x1ZGVSZWFzb25zKTsKKyAgICAgICAg
aWYgKHN0eWxlLm9iamVjdEZpdCgpICE9IFJlbmRlclN0eWxlOjppbml0aWFsT2JqZWN0Rml0KCkp
CisgICAgICAgICAgICBTRVRfUkVBU09OX0FORF9SRVRVUk5fSUZfTkVFREVEKEZsb3dIYXNOb25T
dXBwb3J0ZWRDaGlsZCwgcmVhc29ucywgaW5jbHVkZVJlYXNvbnMpOworICAgICAgICBpZiAoc3R5
bGUuYm94U2l6aW5nKCkgPT0gQm94U2l6aW5nOjpCb3JkZXJCb3gpCisgICAgICAgICAgICBTRVRf
UkVBU09OX0FORF9SRVRVUk5fSUZfTkVFREVEKEZsb3dIYXNOb25TdXBwb3J0ZWRDaGlsZCwgcmVh
c29ucywgaW5jbHVkZVJlYXNvbnMpOworCisgICAgICAgIGlmIChpczxSZW5kZXJJbWFnZT4ocmVw
bGFjZWQpKSB7CisgICAgICAgICAgICBhdXRvJiBpbWFnZSA9IGRvd25jYXN0PFJlbmRlckltYWdl
PihyZXBsYWNlZCk7CisgICAgICAgICAgICBpZiAoaW1hZ2UuaW1hZ2VNYXAoKSkKKyAgICAgICAg
ICAgICAgICBTRVRfUkVBU09OX0FORF9SRVRVUk5fSUZfTkVFREVEKEZsb3dIYXNOb25TdXBwb3J0
ZWRDaGlsZCwgcmVhc29ucywgaW5jbHVkZVJlYXNvbnMpOworICAgICAgICB9CisgICAgICAgIHJl
dHVybiByZWFzb25zOworICAgIH0KKyNlbmRpZgorCisgICAgU0VUX1JFQVNPTl9BTkRfUkVUVVJO
X0lGX05FRURFRChGbG93SGFzTm9uU3VwcG9ydGVkQ2hpbGQsIHJlYXNvbnMsIGluY2x1ZGVSZWFz
b25zKTsKKyAgICByZXR1cm4gcmVhc29uczsKK30KKworCiBPcHRpb25TZXQ8QXZvaWRhbmNlUmVh
c29uPiBjYW5Vc2VGb3JMaW5lTGF5b3V0V2l0aFJlYXNvbihjb25zdCBSZW5kZXJCbG9ja0Zsb3cm
IGZsb3csIEluY2x1ZGVSZWFzb25zIGluY2x1ZGVSZWFzb25zKQogewogICAgIE9wdGlvblNldDxB
dm9pZGFuY2VSZWFzb24+IHJlYXNvbnM7CkBAIC0zMDksMzUgKzM2Nyw5IEBAIE9wdGlvblNldDxB
dm9pZGFuY2VSZWFzb24+IGNhblVzZUZvckxpbmVMYXlvdXRXaXRoUmVhc29uKGNvbnN0IFJlbmRl
ckJsb2NrRmxvdyYKICAgICAvLyBUaGlzIGN1cnJlbnRseSBjb3ZlcnMgPGJsb2NrZmxvdz4jdGV4
dDwvYmxvY2tmbG93PiwgPGJsb2NrZmxvdz4jdGV4dDxicj48L2Jsb2NrZmxvdz4gYW5kIG11dGlw
bGUgKHNpYmxpbmcpIFJlbmRlclRleHQgY2FzZXMuCiAgICAgLy8gVGhlIDxibG9ja2Zsb3c+PGlu
bGluZT4jdGV4dDwvaW5saW5lPjwvYmxvY2tmbG93PiBjYXNlIGlzIGFsc28gcG9wdWxhciBhbmQg
c2hvdWxkIGJlIHJlbGF0aXZlbHkgZWFzeSB0byBjb3Zlci4KICAgICBmb3IgKGNvbnN0IGF1dG8q
IGNoaWxkID0gZmxvdy5maXJzdENoaWxkKCk7IGNoaWxkOyBjaGlsZCA9IGNoaWxkLT5uZXh0U2li
bGluZygpKSB7Ci0gICAgICAgIGlmIChjaGlsZC0+c2VsZWN0aW9uU3RhdGUoKSAhPSBSZW5kZXJP
YmplY3Q6OkhpZ2hsaWdodFN0YXRlOjpOb25lKQotICAgICAgICAgICAgU0VUX1JFQVNPTl9BTkRf
UkVUVVJOX0lGX05FRURFRChGbG93Q2hpbGRJc1NlbGVjdGVkLCByZWFzb25zLCBpbmNsdWRlUmVh
c29ucyk7Ci0gICAgICAgIGlmIChpczxSZW5kZXJUZXh0PigqY2hpbGQpKSB7Ci0gICAgICAgICAg
ICBjb25zdCBhdXRvJiByZW5kZXJUZXh0ID0gZG93bmNhc3Q8UmVuZGVyVGV4dD4oKmNoaWxkKTsK
LSAgICAgICAgICAgIGlmIChyZW5kZXJUZXh0LnRleHROb2RlKCkgJiYgIXJlbmRlclRleHQuZG9j
dW1lbnQoKS5tYXJrZXJzKCkubWFya2Vyc0ZvcigqcmVuZGVyVGV4dC50ZXh0Tm9kZSgpKS5pc0Vt
cHR5KCkpCi0gICAgICAgICAgICAgICAgU0VUX1JFQVNPTl9BTkRfUkVUVVJOX0lGX05FRURFRChG
bG93SW5jbHVkZXNEb2N1bWVudE1hcmtlcnMsIHJlYXNvbnMsIGluY2x1ZGVSZWFzb25zKTsKLSAg
ICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICB9Ci0gICAgICAgIGlmIChpczxSZW5kZXJMaW5l
QnJlYWs+KCpjaGlsZCkpCi0gICAgICAgICAgICBjb250aW51ZTsKLSNpZiBBTExPV19JTkxJTkVf
SU1BR0VTCi0gICAgICAgIGlmIChpczxSZW5kZXJJbWFnZT4oKmNoaWxkKSkgewotICAgICAgICAg
ICAgYXV0byYgaW1hZ2UgPSBkb3duY2FzdDxSZW5kZXJJbWFnZT4oKmNoaWxkKTsKLSAgICAgICAg
ICAgIGlmIChpbWFnZS5pbWFnZU1hcCgpKQotICAgICAgICAgICAgICAgIFNFVF9SRUFTT05fQU5E
X1JFVFVSTl9JRl9ORUVERUQoRmxvd0hhc05vblN1cHBvcnRlZENoaWxkLCByZWFzb25zLCBpbmNs
dWRlUmVhc29ucyk7ICAgICAgICAgICAgICAgIAotICAgICAgICAgICAgaWYgKGltYWdlLmlzRmxv
YXRpbmcoKSB8fCBpbWFnZS5pc1Bvc2l0aW9uZWQoKSkKLSAgICAgICAgICAgICAgICBTRVRfUkVB
U09OX0FORF9SRVRVUk5fSUZfTkVFREVEKEZsb3dIYXNOb25TdXBwb3J0ZWRDaGlsZCwgcmVhc29u
cywgaW5jbHVkZVJlYXNvbnMpOwotICAgICAgICAgICAgYXV0byYgc3R5bGUgPSBpbWFnZS5zdHls
ZSgpOwotICAgICAgICAgICAgaWYgKHN0eWxlLnZlcnRpY2FsQWxpZ24oKSAhPSBWZXJ0aWNhbEFs
aWduOjpCYXNlbGluZSkKLSAgICAgICAgICAgICAgICBTRVRfUkVBU09OX0FORF9SRVRVUk5fSUZf
TkVFREVEKEZsb3dIYXNOb25TdXBwb3J0ZWRDaGlsZCwgcmVhc29ucywgaW5jbHVkZVJlYXNvbnMp
OwotICAgICAgICAgICAgaWYgKHN0eWxlLndpZHRoKCkuaXNQZXJjZW50KCkgfHwgc3R5bGUuaGVp
Z2h0KCkuaXNQZXJjZW50KCkpCi0gICAgICAgICAgICAgICAgU0VUX1JFQVNPTl9BTkRfUkVUVVJO
X0lGX05FRURFRChGbG93SGFzTm9uU3VwcG9ydGVkQ2hpbGQsIHJlYXNvbnMsIGluY2x1ZGVSZWFz
b25zKTsKLSAgICAgICAgICAgIGlmIChzdHlsZS5vYmplY3RGaXQoKSAhPSBSZW5kZXJTdHlsZTo6
aW5pdGlhbE9iamVjdEZpdCgpKQotICAgICAgICAgICAgICAgIFNFVF9SRUFTT05fQU5EX1JFVFVS
Tl9JRl9ORUVERUQoRmxvd0hhc05vblN1cHBvcnRlZENoaWxkLCByZWFzb25zLCBpbmNsdWRlUmVh
c29ucyk7Ci0gICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgfQotI2VuZGlmCi0gICAgICAg
IFNFVF9SRUFTT05fQU5EX1JFVFVSTl9JRl9ORUVERUQoRmxvd0hhc05vblN1cHBvcnRlZENoaWxk
LCByZWFzb25zLCBpbmNsdWRlUmVhc29ucyk7Ci0gICAgICAgIGJyZWFrOworICAgICAgICBhdXRv
IGNoaWxkUmVhc29ucyA9IGNhblVzZUZvckNoaWxkKCpjaGlsZCwgaW5jbHVkZVJlYXNvbnMpOwor
ICAgICAgICBpZiAoY2hpbGRSZWFzb25zKQorICAgICAgICAgICAgQUREX1JFQVNPTlNfQU5EX1JF
VFVSTl9JRl9ORUVERUQoY2hpbGRSZWFzb25zLCByZWFzb25zLCBpbmNsdWRlUmVhc29ucyk7CiAg
ICAgfQogICAgIGF1dG8gc3R5bGVSZWFzb25zID0gY2FuVXNlRm9yU3R5bGUoZmxvdy5zdHlsZSgp
LCBpbmNsdWRlUmVhc29ucyk7CiAgICAgaWYgKHN0eWxlUmVhc29ucykKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkxpbmVMYXlv
dXQuY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0
aW9uTGluZUxheW91dC5jcHAKaW5kZXggMzA2ZThiNmQ4NWU3Li4yMTVkYTE0YjI3NTEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlv
bkxpbmVMYXlvdXQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9M
YXlvdXRJbnRlZ3JhdGlvbkxpbmVMYXlvdXQuY3BwCkBAIC02Nyw3ICs2NywxMCBAQCBMaW5lTGF5
b3V0Ojp+TGluZUxheW91dCgpID0gZGVmYXVsdDsKIAogTGluZUxheW91dCogTGluZUxheW91dDo6
Y29udGFpbmluZyhSZW5kZXJPYmplY3QmIHJlbmRlcmVyKQogewotICAgIGlmICghaXM8UmVuZGVy
VGV4dD4ocmVuZGVyZXIpICYmICFpczxSZW5kZXJMaW5lQnJlYWs+KHJlbmRlcmVyKSAmJiAhaXM8
UmVuZGVySW1hZ2U+KHJlbmRlcmVyKSkKKyAgICBpZiAoIXJlbmRlcmVyLmlzSW5saW5lKCkpCisg
ICAgICAgIHJldHVybiBudWxscHRyOworCisgICAgaWYgKHJlbmRlcmVyLmlzUmVwbGljYSgpKQog
ICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICAKICAgICBpZiAoYXV0byogcGFyZW50ID0gcmVu
ZGVyZXIucGFyZW50KCkpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJCbG9ja0Zsb3cuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2Nr
Rmxvdy5jcHAKaW5kZXggZGMwNjhmMzRlZTBjLi4zNjNmOTBmM2Q1ODMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9ja0Zsb3cuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9ja0Zsb3cuY3BwCkBAIC0zNjYzLDggKzM2NjMsOCBA
QCB2b2lkIFJlbmRlckJsb2NrRmxvdzo6bGF5b3V0TEZDTGluZXMoYm9vbCByZWxheW91dENoaWxk
cmVuLCBMYXlvdXRVbml0JiByZXBhaW50TAogICAgIGZvciAoYXV0byYgcmVuZGVyZXIgOiBjaGls
ZHJlbk9mVHlwZTxSZW5kZXJPYmplY3Q+KCp0aGlzKSkgewogICAgICAgICBpZiAoIXJlbGF5b3V0
Q2hpbGRyZW4gJiYgIXJlbmRlcmVyLm5lZWRzTGF5b3V0KCkpCiAgICAgICAgICAgICBjb250aW51
ZTsKLSAgICAgICAgaWYgKGlzPFJlbmRlclJlcGxhY2VkPihyZW5kZXJlcikpIHsKLSAgICAgICAg
ICAgIGF1dG8mIHJlcGxhY2VkID0gZG93bmNhc3Q8UmVuZGVyUmVwbGFjZWQ+KHJlbmRlcmVyKTsK
KyAgICAgICAgaWYgKGlzPFJlbmRlckJveD4ocmVuZGVyZXIpKSB7CisgICAgICAgICAgICBhdXRv
JiByZXBsYWNlZCA9IGRvd25jYXN0PFJlbmRlckJveD4ocmVuZGVyZXIpOwogICAgICAgICAgICAg
cmVwbGFjZWQuc2V0TmVlZHNMYXlvdXQoTWFya09ubHlUaGlzKTsKICAgICAgICAgICAgIHJlcGxh
Y2VkLmxheW91dElmTmVlZGVkKCk7CiAgICAgICAgICAgICBsYXlvdXRGb3JtYXR0aW5nQ29udGV4
dExpbmVMYXlvdXQudXBkYXRlUmVwbGFjZWREaW1lbnNpb25zKHJlcGxhY2VkKTsKZGlmZiAtLWdp
dCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL2NvbnRyb2xsZXJzL2xheW91
dF90ZXN0X3J1bm5lci5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL2Nv
bnRyb2xsZXJzL2xheW91dF90ZXN0X3J1bm5lci5weQppbmRleCAxZmU2MGI4YzBkMWMuLjFjN2Ix
ZGYxN2IzYiAxMDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMv
Y29udHJvbGxlcnMvbGF5b3V0X3Rlc3RfcnVubmVyLnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Vi
a2l0cHkvbGF5b3V0X3Rlc3RzL2NvbnRyb2xsZXJzL2xheW91dF90ZXN0X3J1bm5lci5weQpAQCAt
MTY2LDYgKzE2Niw3IEBAIGNsYXNzIExheW91dFRlc3RSdW5uZXIob2JqZWN0KToKICAgICAgICAg
ICAgICAgICBzZWxmLl9tYXJrX2ludGVycnVwdGVkX3Rlc3RzX2FzX3NraXBwZWQocnVuX3Jlc3Vs
dHMpCiAgICAgICAgICAgICAgICAgcmFpc2UgVGVzdFJ1bkludGVycnVwdGVkRXhjZXB0aW9uKG1l
c3NhZ2UpCiAKKyAgICAgICAgc2VsZi5fb3B0aW9ucy5leGl0X2FmdGVyX25fZmFpbHVyZXMgPSBO
b25lCiAgICAgICAgIGludGVycnVwdF9pZl9hdF9mYWlsdXJlX2xpbWl0KAogICAgICAgICAgICAg
c2VsZi5fb3B0aW9ucy5leGl0X2FmdGVyX25fZmFpbHVyZXMsCiAgICAgICAgICAgICBydW5fcmVz
dWx0cy51bmV4cGVjdGVkX2ZhaWx1cmVzLAo=
</data>
<flag name="commit-queue"
          id="428566"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>412169</attachid>
            <date>2020-10-23 04:28:07 -0700</date>
            <delta_ts>2020-10-23 05:33:17 -0700</delta_ts>
            <desc>for bots</desc>
            <filename>lfc-replaced-4.patch</filename>
            <type>text/plain</type>
            <size>11089</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRl
Z3JhdGlvbkJveFRyZWUuY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xh
eW91dEludGVncmF0aW9uQm94VHJlZS5jcHAKaW5kZXggZmU4MmNjZjdjYWVkLi5hNmUwYTUwZWE3
ZTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJ
bnRlZ3JhdGlvbkJveFRyZWUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3Jh
dGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkJveFRyZWUuY3BwCkBAIC03MSwxMCArNzEsOSBAQCB2b2lk
IEJveFRyZWU6OmJ1aWxkVHJlZSgpCiAgICAgICAgICAgICBjbG9uZWRTdHlsZS5zZXRGbG9hdGlu
ZyhGbG9hdDo6Tm8pOwogICAgICAgICAgICAgY2xvbmVkU3R5bGUuc2V0UG9zaXRpb24oUG9zaXRp
b25UeXBlOjpTdGF0aWMpOwogICAgICAgICAgICAgY2hpbGRCb3ggPSBtYWtlVW5pcXVlPExheW91
dDo6TGluZUJyZWFrQm94Pihkb3duY2FzdDxSZW5kZXJMaW5lQnJlYWs+KGNoaWxkUmVuZGVyZXIp
LmlzV0JSKCksIFdURk1vdmUoY2xvbmVkU3R5bGUpKTsKLSAgICAgICAgfSBlbHNlIGlmIChpczxS
ZW5kZXJJbWFnZT4oY2hpbGRSZW5kZXJlcikpIHsKLSAgICAgICAgICAgIGF1dG8mIGltYWdlID0g
ZG93bmNhc3Q8UmVuZGVySW1hZ2U+KGNoaWxkUmVuZGVyZXIpOwotICAgICAgICAgICAgYXV0byBj
bG9uZWRTdHlsZSA9IFJlbmRlclN0eWxlOjpjbG9uZShpbWFnZS5zdHlsZSgpKTsKLSAgICAgICAg
ICAgIGNoaWxkQm94ID0gbWFrZVVuaXF1ZTxMYXlvdXQ6OlJlcGxhY2VkQm94PihMYXlvdXQ6OkJv
eDo6RWxlbWVudEF0dHJpYnV0ZXMgeyBMYXlvdXQ6OkJveDo6RWxlbWVudFR5cGU6OkltYWdlIH0s
IFdURk1vdmUoY2xvbmVkU3R5bGUpKTsKKyAgICAgICAgfSBlbHNlIGlmIChpczxSZW5kZXJCb3g+
KGNoaWxkUmVuZGVyZXIpKSB7CisgICAgICAgICAgICBhdXRvIGNsb25lZFN0eWxlID0gUmVuZGVy
U3R5bGU6OmNsb25lKGNoaWxkUmVuZGVyZXIuc3R5bGUoKSk7CisgICAgICAgICAgICBjaGlsZEJv
eCA9IG1ha2VVbmlxdWU8TGF5b3V0OjpSZXBsYWNlZEJveD4oTGF5b3V0OjpCb3g6OkVsZW1lbnRB
dHRyaWJ1dGVzIHsgaXM8UmVuZGVySW1hZ2U+KGNoaWxkUmVuZGVyZXIpID8gTGF5b3V0OjpCb3g6
OkVsZW1lbnRUeXBlOjpJbWFnZSA6IExheW91dDo6Qm94OjpFbGVtZW50VHlwZTo6R2VuZXJpY0Vs
ZW1lbnQgfSwgV1RGTW92ZShjbG9uZWRTdHlsZSkpOwogICAgICAgICB9CiAgICAgICAgIEFTU0VS
VChjaGlsZEJveCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3Jh
dGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkNvdmVyYWdlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xheW91
dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkNvdmVyYWdlLmNwcAppbmRleCBmNTcxYjJl
MTUzYWIuLjBlMmIxOTRhZGY4ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2lu
dGVncmF0aW9uL0xheW91dEludGVncmF0aW9uQ292ZXJhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkNvdmVyYWdlLmNwcApAQCAt
NDIsNyArNDIsOSBAQAogCiAjaWYgRU5BQkxFKExBWU9VVF9GT1JNQVRUSU5HX0NPTlRFWFQpCiAK
LSNkZWZpbmUgQUxMT1dfSU5MSU5FX0lNQUdFUyAwCisjZGVmaW5lIEFMTE9XX0lNQUdFUyAwCisj
ZGVmaW5lIEFMTE9XX0FMTF9SRVBMQUNFRCAxCisjZGVmaW5lIEFMTE9XX0lOTElORV9CTE9DS19B
TkRfUkVQTEFDRUQgMAogCiAjaWZuZGVmIE5ERUJVRwogI2RlZmluZSBTRVRfUkVBU09OX0FORF9S
RVRVUk5fSUZfTkVFREVEKHJlYXNvbiwgcmVhc29ucywgaW5jbHVkZVJlYXNvbnMpIHsgXApAQCAt
MjQ1LDYgKzI0Nyw2MiBAQCBzdGF0aWMgT3B0aW9uU2V0PEF2b2lkYW5jZVJlYXNvbj4gY2FuVXNl
Rm9yU3R5bGUoY29uc3QgUmVuZGVyU3R5bGUmIHN0eWxlLCBJbmNsdQogICAgIHJldHVybiByZWFz
b25zOwogfQogCitzdGF0aWMgT3B0aW9uU2V0PEF2b2lkYW5jZVJlYXNvbj4gY2FuVXNlRm9yQ2hp
bGQoY29uc3QgUmVuZGVyT2JqZWN0JiBjaGlsZCwgSW5jbHVkZVJlYXNvbnMgaW5jbHVkZVJlYXNv
bnMpCit7CisgICAgT3B0aW9uU2V0PEF2b2lkYW5jZVJlYXNvbj4gcmVhc29uczsKKyAgICBpZiAo
Y2hpbGQuc2VsZWN0aW9uU3RhdGUoKSAhPSBSZW5kZXJPYmplY3Q6OkhpZ2hsaWdodFN0YXRlOjpO
b25lKQorICAgICAgICBTRVRfUkVBU09OX0FORF9SRVRVUk5fSUZfTkVFREVEKEZsb3dDaGlsZElz
U2VsZWN0ZWQsIHJlYXNvbnMsIGluY2x1ZGVSZWFzb25zKTsKKyAgICBpZiAoaXM8UmVuZGVyVGV4
dD4oY2hpbGQpKSB7CisgICAgICAgIGNvbnN0IGF1dG8mIHJlbmRlclRleHQgPSBkb3duY2FzdDxS
ZW5kZXJUZXh0PihjaGlsZCk7CisgICAgICAgIGlmIChyZW5kZXJUZXh0LnRleHROb2RlKCkgJiYg
IXJlbmRlclRleHQuZG9jdW1lbnQoKS5tYXJrZXJzKCkubWFya2Vyc0ZvcigqcmVuZGVyVGV4dC50
ZXh0Tm9kZSgpKS5pc0VtcHR5KCkpCisgICAgICAgICAgICBTRVRfUkVBU09OX0FORF9SRVRVUk5f
SUZfTkVFREVEKEZsb3dJbmNsdWRlc0RvY3VtZW50TWFya2VycywgcmVhc29ucywgaW5jbHVkZVJl
YXNvbnMpOworICAgICAgICByZXR1cm4gcmVhc29uczsKKyAgICB9CisgICAgCisgICAgaWYgKGlz
PFJlbmRlckxpbmVCcmVhaz4oY2hpbGQpKQorICAgICAgICByZXR1cm4gcmVhc29uczsKKworI2lm
IEFMTE9XX0lNQUdFUyB8fCBBTExPV19BTExfUkVQTEFDRUQgfHwgQUxMT1dfSU5MSU5FX0JMT0NL
X0FORF9SRVBMQUNFRAorICAgIGlmIChpczxSZW5kZXJCb3g+KGNoaWxkKSAmJiBjaGlsZC5pc1Jl
cGxhY2VkKCkpIHsKKyNpZiBBTExPV19BTExfUkVQTEFDRUQKKyAgICAgICAgaWYgKCFpczxSZW5k
ZXJSZXBsYWNlZD4oY2hpbGQpKQorICAgICAgICAgICAgU0VUX1JFQVNPTl9BTkRfUkVUVVJOX0lG
X05FRURFRChGbG93SGFzTm9uU3VwcG9ydGVkQ2hpbGQsIHJlYXNvbnMsIGluY2x1ZGVSZWFzb25z
KTsKKyNlbGlmIEFMTE9XX0lNQUdFUworICAgICAgICBpZiAoIWlzPFJlbmRlckltYWdlPihjaGls
ZCkpCisgICAgICAgICAgICBTRVRfUkVBU09OX0FORF9SRVRVUk5fSUZfTkVFREVEKEZsb3dIYXNO
b25TdXBwb3J0ZWRDaGlsZCwgcmVhc29ucywgaW5jbHVkZVJlYXNvbnMpOworI2VuZGlmCisgICAg
ICAgIGF1dG8mIHJlcGxhY2VkID0gZG93bmNhc3Q8UmVuZGVyQm94PihjaGlsZCk7CisgICAgICAg
IGlmIChyZXBsYWNlZC5pc0Zsb2F0aW5nKCkgfHwgcmVwbGFjZWQuaXNQb3NpdGlvbmVkKCkpCisg
ICAgICAgICAgICBTRVRfUkVBU09OX0FORF9SRVRVUk5fSUZfTkVFREVEKEZsb3dIYXNOb25TdXBw
b3J0ZWRDaGlsZCwgcmVhc29ucywgaW5jbHVkZVJlYXNvbnMpOworICAgICAgICBpZiAocmVwbGFj
ZWQuaXNMaXN0TWFya2VyKCkpCisgICAgICAgICAgICBTRVRfUkVBU09OX0FORF9SRVRVUk5fSUZf
TkVFREVEKEZsb3dIYXNOb25TdXBwb3J0ZWRDaGlsZCwgcmVhc29ucywgaW5jbHVkZVJlYXNvbnMp
OworICAgICAgICBpZiAocmVwbGFjZWQuaXNTVkdSb290KCkpCisgICAgICAgICAgICBTRVRfUkVB
U09OX0FORF9SRVRVUk5fSUZfTkVFREVEKEZsb3dIYXNOb25TdXBwb3J0ZWRDaGlsZCwgcmVhc29u
cywgaW5jbHVkZVJlYXNvbnMpOworCisgICAgICAgIGF1dG8mIHN0eWxlID0gcmVwbGFjZWQuc3R5
bGUoKTsKKyAgICAgICAgaWYgKHN0eWxlLnZlcnRpY2FsQWxpZ24oKSAhPSBWZXJ0aWNhbEFsaWdu
OjpCYXNlbGluZSkKKyAgICAgICAgICAgIFNFVF9SRUFTT05fQU5EX1JFVFVSTl9JRl9ORUVERUQo
Rmxvd0hhc05vblN1cHBvcnRlZENoaWxkLCByZWFzb25zLCBpbmNsdWRlUmVhc29ucyk7CisgICAg
ICAgIGlmIChzdHlsZS53aWR0aCgpLmlzUGVyY2VudCgpIHx8IHN0eWxlLmhlaWdodCgpLmlzUGVy
Y2VudCgpKQorICAgICAgICAgICAgU0VUX1JFQVNPTl9BTkRfUkVUVVJOX0lGX05FRURFRChGbG93
SGFzTm9uU3VwcG9ydGVkQ2hpbGQsIHJlYXNvbnMsIGluY2x1ZGVSZWFzb25zKTsKKyAgICAgICAg
aWYgKHN0eWxlLm9iamVjdEZpdCgpICE9IFJlbmRlclN0eWxlOjppbml0aWFsT2JqZWN0Rml0KCkp
CisgICAgICAgICAgICBTRVRfUkVBU09OX0FORF9SRVRVUk5fSUZfTkVFREVEKEZsb3dIYXNOb25T
dXBwb3J0ZWRDaGlsZCwgcmVhc29ucywgaW5jbHVkZVJlYXNvbnMpOworICAgICAgICBpZiAoc3R5
bGUuYm94U2l6aW5nKCkgPT0gQm94U2l6aW5nOjpCb3JkZXJCb3gpCisgICAgICAgICAgICBTRVRf
UkVBU09OX0FORF9SRVRVUk5fSUZfTkVFREVEKEZsb3dIYXNOb25TdXBwb3J0ZWRDaGlsZCwgcmVh
c29ucywgaW5jbHVkZVJlYXNvbnMpOworCisgICAgICAgIGlmIChpczxSZW5kZXJJbWFnZT4ocmVw
bGFjZWQpKSB7CisgICAgICAgICAgICBhdXRvJiBpbWFnZSA9IGRvd25jYXN0PFJlbmRlckltYWdl
PihyZXBsYWNlZCk7CisgICAgICAgICAgICBpZiAoaW1hZ2UuaW1hZ2VNYXAoKSkKKyAgICAgICAg
ICAgICAgICBTRVRfUkVBU09OX0FORF9SRVRVUk5fSUZfTkVFREVEKEZsb3dIYXNOb25TdXBwb3J0
ZWRDaGlsZCwgcmVhc29ucywgaW5jbHVkZVJlYXNvbnMpOworICAgICAgICB9CisgICAgICAgIHJl
dHVybiByZWFzb25zOworICAgIH0KKyNlbmRpZgorCisgICAgU0VUX1JFQVNPTl9BTkRfUkVUVVJO
X0lGX05FRURFRChGbG93SGFzTm9uU3VwcG9ydGVkQ2hpbGQsIHJlYXNvbnMsIGluY2x1ZGVSZWFz
b25zKTsKKyAgICByZXR1cm4gcmVhc29uczsKK30KKworCiBPcHRpb25TZXQ8QXZvaWRhbmNlUmVh
c29uPiBjYW5Vc2VGb3JMaW5lTGF5b3V0V2l0aFJlYXNvbihjb25zdCBSZW5kZXJCbG9ja0Zsb3cm
IGZsb3csIEluY2x1ZGVSZWFzb25zIGluY2x1ZGVSZWFzb25zKQogewogICAgIE9wdGlvblNldDxB
dm9pZGFuY2VSZWFzb24+IHJlYXNvbnM7CkBAIC0zMDksMzUgKzM2Nyw5IEBAIE9wdGlvblNldDxB
dm9pZGFuY2VSZWFzb24+IGNhblVzZUZvckxpbmVMYXlvdXRXaXRoUmVhc29uKGNvbnN0IFJlbmRl
ckJsb2NrRmxvdyYKICAgICAvLyBUaGlzIGN1cnJlbnRseSBjb3ZlcnMgPGJsb2NrZmxvdz4jdGV4
dDwvYmxvY2tmbG93PiwgPGJsb2NrZmxvdz4jdGV4dDxicj48L2Jsb2NrZmxvdz4gYW5kIG11dGlw
bGUgKHNpYmxpbmcpIFJlbmRlclRleHQgY2FzZXMuCiAgICAgLy8gVGhlIDxibG9ja2Zsb3c+PGlu
bGluZT4jdGV4dDwvaW5saW5lPjwvYmxvY2tmbG93PiBjYXNlIGlzIGFsc28gcG9wdWxhciBhbmQg
c2hvdWxkIGJlIHJlbGF0aXZlbHkgZWFzeSB0byBjb3Zlci4KICAgICBmb3IgKGNvbnN0IGF1dG8q
IGNoaWxkID0gZmxvdy5maXJzdENoaWxkKCk7IGNoaWxkOyBjaGlsZCA9IGNoaWxkLT5uZXh0U2li
bGluZygpKSB7Ci0gICAgICAgIGlmIChjaGlsZC0+c2VsZWN0aW9uU3RhdGUoKSAhPSBSZW5kZXJP
YmplY3Q6OkhpZ2hsaWdodFN0YXRlOjpOb25lKQotICAgICAgICAgICAgU0VUX1JFQVNPTl9BTkRf
UkVUVVJOX0lGX05FRURFRChGbG93Q2hpbGRJc1NlbGVjdGVkLCByZWFzb25zLCBpbmNsdWRlUmVh
c29ucyk7Ci0gICAgICAgIGlmIChpczxSZW5kZXJUZXh0PigqY2hpbGQpKSB7Ci0gICAgICAgICAg
ICBjb25zdCBhdXRvJiByZW5kZXJUZXh0ID0gZG93bmNhc3Q8UmVuZGVyVGV4dD4oKmNoaWxkKTsK
LSAgICAgICAgICAgIGlmIChyZW5kZXJUZXh0LnRleHROb2RlKCkgJiYgIXJlbmRlclRleHQuZG9j
dW1lbnQoKS5tYXJrZXJzKCkubWFya2Vyc0ZvcigqcmVuZGVyVGV4dC50ZXh0Tm9kZSgpKS5pc0Vt
cHR5KCkpCi0gICAgICAgICAgICAgICAgU0VUX1JFQVNPTl9BTkRfUkVUVVJOX0lGX05FRURFRChG
bG93SW5jbHVkZXNEb2N1bWVudE1hcmtlcnMsIHJlYXNvbnMsIGluY2x1ZGVSZWFzb25zKTsKLSAg
ICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICB9Ci0gICAgICAgIGlmIChpczxSZW5kZXJMaW5l
QnJlYWs+KCpjaGlsZCkpCi0gICAgICAgICAgICBjb250aW51ZTsKLSNpZiBBTExPV19JTkxJTkVf
SU1BR0VTCi0gICAgICAgIGlmIChpczxSZW5kZXJJbWFnZT4oKmNoaWxkKSkgewotICAgICAgICAg
ICAgYXV0byYgaW1hZ2UgPSBkb3duY2FzdDxSZW5kZXJJbWFnZT4oKmNoaWxkKTsKLSAgICAgICAg
ICAgIGlmIChpbWFnZS5pbWFnZU1hcCgpKQotICAgICAgICAgICAgICAgIFNFVF9SRUFTT05fQU5E
X1JFVFVSTl9JRl9ORUVERUQoRmxvd0hhc05vblN1cHBvcnRlZENoaWxkLCByZWFzb25zLCBpbmNs
dWRlUmVhc29ucyk7ICAgICAgICAgICAgICAgIAotICAgICAgICAgICAgaWYgKGltYWdlLmlzRmxv
YXRpbmcoKSB8fCBpbWFnZS5pc1Bvc2l0aW9uZWQoKSkKLSAgICAgICAgICAgICAgICBTRVRfUkVB
U09OX0FORF9SRVRVUk5fSUZfTkVFREVEKEZsb3dIYXNOb25TdXBwb3J0ZWRDaGlsZCwgcmVhc29u
cywgaW5jbHVkZVJlYXNvbnMpOwotICAgICAgICAgICAgYXV0byYgc3R5bGUgPSBpbWFnZS5zdHls
ZSgpOwotICAgICAgICAgICAgaWYgKHN0eWxlLnZlcnRpY2FsQWxpZ24oKSAhPSBWZXJ0aWNhbEFs
aWduOjpCYXNlbGluZSkKLSAgICAgICAgICAgICAgICBTRVRfUkVBU09OX0FORF9SRVRVUk5fSUZf
TkVFREVEKEZsb3dIYXNOb25TdXBwb3J0ZWRDaGlsZCwgcmVhc29ucywgaW5jbHVkZVJlYXNvbnMp
OwotICAgICAgICAgICAgaWYgKHN0eWxlLndpZHRoKCkuaXNQZXJjZW50KCkgfHwgc3R5bGUuaGVp
Z2h0KCkuaXNQZXJjZW50KCkpCi0gICAgICAgICAgICAgICAgU0VUX1JFQVNPTl9BTkRfUkVUVVJO
X0lGX05FRURFRChGbG93SGFzTm9uU3VwcG9ydGVkQ2hpbGQsIHJlYXNvbnMsIGluY2x1ZGVSZWFz
b25zKTsKLSAgICAgICAgICAgIGlmIChzdHlsZS5vYmplY3RGaXQoKSAhPSBSZW5kZXJTdHlsZTo6
aW5pdGlhbE9iamVjdEZpdCgpKQotICAgICAgICAgICAgICAgIFNFVF9SRUFTT05fQU5EX1JFVFVS
Tl9JRl9ORUVERUQoRmxvd0hhc05vblN1cHBvcnRlZENoaWxkLCByZWFzb25zLCBpbmNsdWRlUmVh
c29ucyk7Ci0gICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgfQotI2VuZGlmCi0gICAgICAg
IFNFVF9SRUFTT05fQU5EX1JFVFVSTl9JRl9ORUVERUQoRmxvd0hhc05vblN1cHBvcnRlZENoaWxk
LCByZWFzb25zLCBpbmNsdWRlUmVhc29ucyk7Ci0gICAgICAgIGJyZWFrOworICAgICAgICBhdXRv
IGNoaWxkUmVhc29ucyA9IGNhblVzZUZvckNoaWxkKCpjaGlsZCwgaW5jbHVkZVJlYXNvbnMpOwor
ICAgICAgICBpZiAoY2hpbGRSZWFzb25zKQorICAgICAgICAgICAgQUREX1JFQVNPTlNfQU5EX1JF
VFVSTl9JRl9ORUVERUQoY2hpbGRSZWFzb25zLCByZWFzb25zLCBpbmNsdWRlUmVhc29ucyk7CiAg
ICAgfQogICAgIGF1dG8gc3R5bGVSZWFzb25zID0gY2FuVXNlRm9yU3R5bGUoZmxvdy5zdHlsZSgp
LCBpbmNsdWRlUmVhc29ucyk7CiAgICAgaWYgKHN0eWxlUmVhc29ucykKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkxpbmVMYXlv
dXQuY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0
aW9uTGluZUxheW91dC5jcHAKaW5kZXggMzA2ZThiNmQ4NWU3Li5iNGU2NTc0Y2JlODQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlv
bkxpbmVMYXlvdXQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9M
YXlvdXRJbnRlZ3JhdGlvbkxpbmVMYXlvdXQuY3BwCkBAIC02Nyw3ICs2NywxMCBAQCBMaW5lTGF5
b3V0Ojp+TGluZUxheW91dCgpID0gZGVmYXVsdDsKIAogTGluZUxheW91dCogTGluZUxheW91dDo6
Y29udGFpbmluZyhSZW5kZXJPYmplY3QmIHJlbmRlcmVyKQogewotICAgIGlmICghaXM8UmVuZGVy
VGV4dD4ocmVuZGVyZXIpICYmICFpczxSZW5kZXJMaW5lQnJlYWs+KHJlbmRlcmVyKSAmJiAhaXM8
UmVuZGVySW1hZ2U+KHJlbmRlcmVyKSkKKyAgICBpZiAoIXJlbmRlcmVyLmlzSW5saW5lKCkpCisg
ICAgICAgIHJldHVybiBudWxscHRyOworCisgICAgaWYgKHJlbmRlcmVyLmlzUmVwbGljYSgpKQog
ICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICAKICAgICBpZiAoYXV0byogcGFyZW50ID0gcmVu
ZGVyZXIucGFyZW50KCkpIHsKQEAgLTUxOCw5ICs1MjEsMjMgQEAgYm9vbCBMaW5lTGF5b3V0Ojpo
aXRUZXN0KGNvbnN0IEhpdFRlc3RSZXF1ZXN0JiByZXF1ZXN0LCBIaXRUZXN0UmVzdWx0JiByZXN1
bHQsIGMKIAogICAgICAgICBhdXRvJiByZW5kZXJlciA9IG1fYm94VHJlZS5yZW5kZXJlckZvckxh
eW91dEJveChydW4ubGF5b3V0Qm94KCkpOwogCi0gICAgICAgIHJlbmRlcmVyLnVwZGF0ZUhpdFRl
c3RSZXN1bHQocmVzdWx0LCBsb2NhdGlvbkluQ29udGFpbmVyLnBvaW50KCkgLSB0b0xheW91dFNp
emUoYWNjdW11bGF0ZWRPZmZzZXQpKTsKLSAgICAgICAgaWYgKHJlc3VsdC5hZGROb2RlVG9MaXN0
QmFzZWRUZXN0UmVzdWx0KHJlbmRlcmVyLm5vZGVGb3JIaXRUZXN0KCksIHJlcXVlc3QsIGxvY2F0
aW9uSW5Db250YWluZXIsIHJ1blJlY3QpID09IEhpdFRlc3RQcm9ncmVzczo6U3RvcCkKLSAgICAg
ICAgICAgIHJldHVybiB0cnVlOworICAgICAgICBpZiAoaXM8UmVuZGVyVGV4dD4ocmVuZGVyZXIp
KSB7CisgICAgICAgICAgICByZW5kZXJlci51cGRhdGVIaXRUZXN0UmVzdWx0KHJlc3VsdCwgbG9j
YXRpb25JbkNvbnRhaW5lci5wb2ludCgpIC0gdG9MYXlvdXRTaXplKGFjY3VtdWxhdGVkT2Zmc2V0
KSk7CisgICAgICAgICAgICBpZiAocmVzdWx0LmFkZE5vZGVUb0xpc3RCYXNlZFRlc3RSZXN1bHQo
cmVuZGVyZXIubm9kZUZvckhpdFRlc3QoKSwgcmVxdWVzdCwgbG9jYXRpb25JbkNvbnRhaW5lciwg
cnVuUmVjdCkgPT0gSGl0VGVzdFByb2dyZXNzOjpTdG9wKQorICAgICAgICAgICAgICAgIHJldHVy
biB0cnVlOworICAgICAgICAgICAgY29udGludWU7CisgICAgICAgIH0KKworICAgICAgICBpZiAo
aXM8UmVuZGVyQm94PihyZW5kZXJlcikpIHsKKyAgICAgICAgICAgIGF1dG8mIHJlbmRlckJveCA9
IGRvd25jYXN0PFJlbmRlckJveD4ocmVuZGVyZXIpOworICAgICAgICAgICAgaWYgKHJlbmRlckJv
eC5oYXNTZWxmUGFpbnRpbmdMYXllcigpKQorICAgICAgICAgICAgICAgIGNvbnRpbnVlOworICAg
ICAgICAgICAgCisgICAgICAgICAgICBpZiAocmVuZGVyQm94LmhpdFRlc3QocmVxdWVzdCwgcmVz
dWx0LCBsb2NhdGlvbkluQ29udGFpbmVyLCBhY2N1bXVsYXRlZE9mZnNldCkpIHsKKyAgICAgICAg
ICAgICAgICByZW5kZXJCb3gudXBkYXRlSGl0VGVzdFJlc3VsdChyZXN1bHQsIGxvY2F0aW9uSW5D
b250YWluZXIucG9pbnQoKSAtIHRvTGF5b3V0U2l6ZShhY2N1bXVsYXRlZE9mZnNldCkpOworICAg
ICAgICAgICAgICAgIHJldHVybiB0cnVlOworICAgICAgICAgICAgfQorICAgICAgICB9CiAgICAg
fQogCiAgICAgcmV0dXJuIGZhbHNlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlckJsb2NrRmxvdy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
QmxvY2tGbG93LmNwcAppbmRleCBkYzA2OGYzNGVlMGMuLjM2M2Y5MGYzZDU4MyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrRmxvdy5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrRmxvdy5jcHAKQEAgLTM2NjMsOCArMzY2
Myw4IEBAIHZvaWQgUmVuZGVyQmxvY2tGbG93OjpsYXlvdXRMRkNMaW5lcyhib29sIHJlbGF5b3V0
Q2hpbGRyZW4sIExheW91dFVuaXQmIHJlcGFpbnRMCiAgICAgZm9yIChhdXRvJiByZW5kZXJlciA6
IGNoaWxkcmVuT2ZUeXBlPFJlbmRlck9iamVjdD4oKnRoaXMpKSB7CiAgICAgICAgIGlmICghcmVs
YXlvdXRDaGlsZHJlbiAmJiAhcmVuZGVyZXIubmVlZHNMYXlvdXQoKSkKICAgICAgICAgICAgIGNv
bnRpbnVlOwotICAgICAgICBpZiAoaXM8UmVuZGVyUmVwbGFjZWQ+KHJlbmRlcmVyKSkgewotICAg
ICAgICAgICAgYXV0byYgcmVwbGFjZWQgPSBkb3duY2FzdDxSZW5kZXJSZXBsYWNlZD4ocmVuZGVy
ZXIpOworICAgICAgICBpZiAoaXM8UmVuZGVyQm94PihyZW5kZXJlcikpIHsKKyAgICAgICAgICAg
IGF1dG8mIHJlcGxhY2VkID0gZG93bmNhc3Q8UmVuZGVyQm94PihyZW5kZXJlcik7CiAgICAgICAg
ICAgICByZXBsYWNlZC5zZXROZWVkc0xheW91dChNYXJrT25seVRoaXMpOwogICAgICAgICAgICAg
cmVwbGFjZWQubGF5b3V0SWZOZWVkZWQoKTsKICAgICAgICAgICAgIGxheW91dEZvcm1hdHRpbmdD
b250ZXh0TGluZUxheW91dC51cGRhdGVSZXBsYWNlZERpbWVuc2lvbnMocmVwbGFjZWQpOwpkaWZm
IC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvY29udHJvbGxlcnMv
bGF5b3V0X3Rlc3RfcnVubmVyLnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVz
dHMvY29udHJvbGxlcnMvbGF5b3V0X3Rlc3RfcnVubmVyLnB5CmluZGV4IDFmZTYwYjhjMGQxYy4u
MWM3YjFkZjE3YjNiIDEwMDY0NAotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90
ZXN0cy9jb250cm9sbGVycy9sYXlvdXRfdGVzdF9ydW5uZXIucHkKKysrIGIvVG9vbHMvU2NyaXB0
cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvY29udHJvbGxlcnMvbGF5b3V0X3Rlc3RfcnVubmVyLnB5
CkBAIC0xNjYsNiArMTY2LDcgQEAgY2xhc3MgTGF5b3V0VGVzdFJ1bm5lcihvYmplY3QpOgogICAg
ICAgICAgICAgICAgIHNlbGYuX21hcmtfaW50ZXJydXB0ZWRfdGVzdHNfYXNfc2tpcHBlZChydW5f
cmVzdWx0cykKICAgICAgICAgICAgICAgICByYWlzZSBUZXN0UnVuSW50ZXJydXB0ZWRFeGNlcHRp
b24obWVzc2FnZSkKIAorICAgICAgICBzZWxmLl9vcHRpb25zLmV4aXRfYWZ0ZXJfbl9mYWlsdXJl
cyA9IE5vbmUKICAgICAgICAgaW50ZXJydXB0X2lmX2F0X2ZhaWx1cmVfbGltaXQoCiAgICAgICAg
ICAgICBzZWxmLl9vcHRpb25zLmV4aXRfYWZ0ZXJfbl9mYWlsdXJlcywKICAgICAgICAgICAgIHJ1
bl9yZXN1bHRzLnVuZXhwZWN0ZWRfZmFpbHVyZXMsCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>412170</attachid>
            <date>2020-10-23 05:33:17 -0700</date>
            <delta_ts>2020-10-23 05:35:50 -0700</delta_ts>
            <desc>patch</desc>
            <filename>lfc-replaced-5.patch</filename>
            <type>text/plain</type>
            <size>12600</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBkNWU5Nzg3MzZhZGEuLjNhNjU1MzgwMmY1NyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAt
MSwzICsxLDI3IEBACisyMDIwLTEwLTIzICBBbnR0aSBLb2l2aXN0byAgPGFudHRpQGFwcGxlLmNv
bT4KKworICAgICAgICBbTEZDXVtJbnRlZ3JhdGlvbl0gQWxsb3cgYWxsIHJlcGxhY2VkIGVsZW1l
bnRzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTgw
NzQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQg
I2RlZmluZSB0byBhbGxvdyBhbGwgUmVuZGVyUmVwbGFjZWQgaW4gbW9kZXJuIGxpbmUgbGF5b3V0
LgorICAgICAgICBEaXNhYmxlZCBmb3Igbm93LgorCisgICAgICAgICogbGF5b3V0L2ludGVncmF0
aW9uL0xheW91dEludGVncmF0aW9uQm94VHJlZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpMYXlv
dXRJbnRlZ3JhdGlvbjo6Qm94VHJlZTo6YnVpbGRUcmVlKToKKyAgICAgICAgKiBsYXlvdXQvaW50
ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25Db3ZlcmFnZS5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpMYXlvdXRJbnRlZ3JhdGlvbjo6Y2FuVXNlRm9yQ2hpbGQpOgorICAgICAgICAoV2ViQ29yZTo6
TGF5b3V0SW50ZWdyYXRpb246OmNhblVzZUZvckxpbmVMYXlvdXRXaXRoUmVhc29uKToKKyAgICAg
ICAgKiBsYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25MaW5lTGF5b3V0LmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkxheW91dEludGVncmF0aW9uOjpMaW5lTGF5b3V0Ojpjb250YWlu
aW5nKToKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dEludGVncmF0aW9uOjpMaW5lTGF5b3V0Ojpo
aXRUZXN0KToKKworICAgICAgICBJbXBsZW1lbnQgaGl0IHRlc3RpbmcuCisKKyAgICAgICAgKiBy
ZW5kZXJpbmcvUmVuZGVyQmxvY2tGbG93LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJs
b2NrRmxvdzo6bGF5b3V0TEZDTGluZXMpOgorCiAyMDIwLTEwLTIxICBDYXJsb3MgQWxiZXJ0byBM
b3BleiBQZXJleiAgPGNsb3BlekBpZ2FsaWEuY29tPgogCiAgICAgICAgIFJFR1JFU1NJT04ocjI2
ODc5OCk6IEZpeCBidWlsZCB3aXRob3V0IEVOQUJMRV9MQVlPVVRfRk9STUFUVElOR19DT05URVhU
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50
ZWdyYXRpb25Cb3hUcmVlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9M
YXlvdXRJbnRlZ3JhdGlvbkJveFRyZWUuY3BwCmluZGV4IGZlODJjY2Y3Y2FlZC4uYTZlMGE1MGVh
N2UwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0
SW50ZWdyYXRpb25Cb3hUcmVlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdy
YXRpb24vTGF5b3V0SW50ZWdyYXRpb25Cb3hUcmVlLmNwcApAQCAtNzEsMTAgKzcxLDkgQEAgdm9p
ZCBCb3hUcmVlOjpidWlsZFRyZWUoKQogICAgICAgICAgICAgY2xvbmVkU3R5bGUuc2V0RmxvYXRp
bmcoRmxvYXQ6Ok5vKTsKICAgICAgICAgICAgIGNsb25lZFN0eWxlLnNldFBvc2l0aW9uKFBvc2l0
aW9uVHlwZTo6U3RhdGljKTsKICAgICAgICAgICAgIGNoaWxkQm94ID0gbWFrZVVuaXF1ZTxMYXlv
dXQ6OkxpbmVCcmVha0JveD4oZG93bmNhc3Q8UmVuZGVyTGluZUJyZWFrPihjaGlsZFJlbmRlcmVy
KS5pc1dCUigpLCBXVEZNb3ZlKGNsb25lZFN0eWxlKSk7Ci0gICAgICAgIH0gZWxzZSBpZiAoaXM8
UmVuZGVySW1hZ2U+KGNoaWxkUmVuZGVyZXIpKSB7Ci0gICAgICAgICAgICBhdXRvJiBpbWFnZSA9
IGRvd25jYXN0PFJlbmRlckltYWdlPihjaGlsZFJlbmRlcmVyKTsKLSAgICAgICAgICAgIGF1dG8g
Y2xvbmVkU3R5bGUgPSBSZW5kZXJTdHlsZTo6Y2xvbmUoaW1hZ2Uuc3R5bGUoKSk7Ci0gICAgICAg
ICAgICBjaGlsZEJveCA9IG1ha2VVbmlxdWU8TGF5b3V0OjpSZXBsYWNlZEJveD4oTGF5b3V0OjpC
b3g6OkVsZW1lbnRBdHRyaWJ1dGVzIHsgTGF5b3V0OjpCb3g6OkVsZW1lbnRUeXBlOjpJbWFnZSB9
LCBXVEZNb3ZlKGNsb25lZFN0eWxlKSk7CisgICAgICAgIH0gZWxzZSBpZiAoaXM8UmVuZGVyQm94
PihjaGlsZFJlbmRlcmVyKSkgeworICAgICAgICAgICAgYXV0byBjbG9uZWRTdHlsZSA9IFJlbmRl
clN0eWxlOjpjbG9uZShjaGlsZFJlbmRlcmVyLnN0eWxlKCkpOworICAgICAgICAgICAgY2hpbGRC
b3ggPSBtYWtlVW5pcXVlPExheW91dDo6UmVwbGFjZWRCb3g+KExheW91dDo6Qm94OjpFbGVtZW50
QXR0cmlidXRlcyB7IGlzPFJlbmRlckltYWdlPihjaGlsZFJlbmRlcmVyKSA/IExheW91dDo6Qm94
OjpFbGVtZW50VHlwZTo6SW1hZ2UgOiBMYXlvdXQ6OkJveDo6RWxlbWVudFR5cGU6OkdlbmVyaWNF
bGVtZW50IH0sIFdURk1vdmUoY2xvbmVkU3R5bGUpKTsKICAgICAgICAgfQogICAgICAgICBBU1NF
UlQoY2hpbGRCb3gpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdy
YXRpb24vTGF5b3V0SW50ZWdyYXRpb25Db3ZlcmFnZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sYXlv
dXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25Db3ZlcmFnZS5jcHAKaW5kZXggZjU3MWIy
ZTE1M2FiLi4xNDcxZjRlOTlmOTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9p
bnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkNvdmVyYWdlLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25Db3ZlcmFnZS5jcHAKQEAg
LTQyLDcgKzQyLDkgQEAKIAogI2lmIEVOQUJMRShMQVlPVVRfRk9STUFUVElOR19DT05URVhUKQog
Ci0jZGVmaW5lIEFMTE9XX0lOTElORV9JTUFHRVMgMAorI2RlZmluZSBBTExPV19JTUFHRVMgMAor
I2RlZmluZSBBTExPV19BTExfUkVQTEFDRUQgMAorI2RlZmluZSBBTExPV19JTkxJTkVfQkxPQ0tf
QU5EX1JFUExBQ0VEIDAKIAogI2lmbmRlZiBOREVCVUcKICNkZWZpbmUgU0VUX1JFQVNPTl9BTkRf
UkVUVVJOX0lGX05FRURFRChyZWFzb24sIHJlYXNvbnMsIGluY2x1ZGVSZWFzb25zKSB7IFwKQEAg
LTI0NSw2ICsyNDcsNjYgQEAgc3RhdGljIE9wdGlvblNldDxBdm9pZGFuY2VSZWFzb24+IGNhblVz
ZUZvclN0eWxlKGNvbnN0IFJlbmRlclN0eWxlJiBzdHlsZSwgSW5jbHUKICAgICByZXR1cm4gcmVh
c29uczsKIH0KIAorc3RhdGljIE9wdGlvblNldDxBdm9pZGFuY2VSZWFzb24+IGNhblVzZUZvckNo
aWxkKGNvbnN0IFJlbmRlck9iamVjdCYgY2hpbGQsIEluY2x1ZGVSZWFzb25zIGluY2x1ZGVSZWFz
b25zKQoreworICAgIE9wdGlvblNldDxBdm9pZGFuY2VSZWFzb24+IHJlYXNvbnM7CisgICAgaWYg
KGNoaWxkLnNlbGVjdGlvblN0YXRlKCkgIT0gUmVuZGVyT2JqZWN0OjpIaWdobGlnaHRTdGF0ZTo6
Tm9uZSkKKyAgICAgICAgU0VUX1JFQVNPTl9BTkRfUkVUVVJOX0lGX05FRURFRChGbG93Q2hpbGRJ
c1NlbGVjdGVkLCByZWFzb25zLCBpbmNsdWRlUmVhc29ucyk7CisgICAgaWYgKGlzPFJlbmRlclRl
eHQ+KGNoaWxkKSkgeworICAgICAgICBjb25zdCBhdXRvJiByZW5kZXJUZXh0ID0gZG93bmNhc3Q8
UmVuZGVyVGV4dD4oY2hpbGQpOworICAgICAgICBpZiAocmVuZGVyVGV4dC50ZXh0Tm9kZSgpICYm
ICFyZW5kZXJUZXh0LmRvY3VtZW50KCkubWFya2VycygpLm1hcmtlcnNGb3IoKnJlbmRlclRleHQu
dGV4dE5vZGUoKSkuaXNFbXB0eSgpKQorICAgICAgICAgICAgU0VUX1JFQVNPTl9BTkRfUkVUVVJO
X0lGX05FRURFRChGbG93SW5jbHVkZXNEb2N1bWVudE1hcmtlcnMsIHJlYXNvbnMsIGluY2x1ZGVS
ZWFzb25zKTsKKyAgICAgICAgcmV0dXJuIHJlYXNvbnM7CisgICAgfQorCisgICAgaWYgKGlzPFJl
bmRlckxpbmVCcmVhaz4oY2hpbGQpKQorICAgICAgICByZXR1cm4gcmVhc29uczsKKworI2lmIEFM
TE9XX0lNQUdFUyB8fCBBTExPV19BTExfUkVQTEFDRUQgfHwgQUxMT1dfSU5MSU5FX0JMT0NLX0FO
RF9SRVBMQUNFRAorICAgIGlmIChpczxSZW5kZXJCb3g+KGNoaWxkKSkgeworICAgICAgICBhdXRv
JiByZW5kZXJCb3ggPSBkb3duY2FzdDxSZW5kZXJCb3g+KGNoaWxkKTsKKyAgICAgICAgaWYgKCFy
ZW5kZXJCb3guaXNSZXBsYWNlZCgpKQorICAgICAgICAgICAgU0VUX1JFQVNPTl9BTkRfUkVUVVJO
X0lGX05FRURFRChGbG93SGFzTm9uU3VwcG9ydGVkQ2hpbGQsIHJlYXNvbnMsIGluY2x1ZGVSZWFz
b25zKQorICAgICAgICBpZiAocmVuZGVyQm94LmlzRmxvYXRpbmcoKSB8fCByZW5kZXJCb3guaXNQ
b3NpdGlvbmVkKCkpCisgICAgICAgICAgICBTRVRfUkVBU09OX0FORF9SRVRVUk5fSUZfTkVFREVE
KEZsb3dIYXNOb25TdXBwb3J0ZWRDaGlsZCwgcmVhc29ucywgaW5jbHVkZVJlYXNvbnMpCisjaWYg
QUxMT1dfQUxMX1JFUExBQ0VECisgICAgICAgIGlmICghaXM8UmVuZGVyUmVwbGFjZWQ+KHJlbmRl
ckJveCkpCisgICAgICAgICAgICBTRVRfUkVBU09OX0FORF9SRVRVUk5fSUZfTkVFREVEKEZsb3dI
YXNOb25TdXBwb3J0ZWRDaGlsZCwgcmVhc29ucywgaW5jbHVkZVJlYXNvbnMpOworI2VsaWYgQUxM
T1dfSU1BR0VTCisgICAgICAgIGlmICghaXM8UmVuZGVySW1hZ2U+KHJlbmRlckJveCkpCisgICAg
ICAgICAgICBTRVRfUkVBU09OX0FORF9SRVRVUk5fSUZfTkVFREVEKEZsb3dIYXNOb25TdXBwb3J0
ZWRDaGlsZCwgcmVhc29ucywgaW5jbHVkZVJlYXNvbnMpOworI2VuZGlmCisgICAgICAgIGlmIChy
ZW5kZXJCb3guaXNMaXN0TWFya2VyKCkpCisgICAgICAgICAgICBTRVRfUkVBU09OX0FORF9SRVRV
Uk5fSUZfTkVFREVEKEZsb3dIYXNOb25TdXBwb3J0ZWRDaGlsZCwgcmVhc29ucywgaW5jbHVkZVJl
YXNvbnMpOworICAgICAgICBpZiAocmVuZGVyQm94LmlzU1ZHUm9vdCgpKQorICAgICAgICAgICAg
U0VUX1JFQVNPTl9BTkRfUkVUVVJOX0lGX05FRURFRChGbG93SGFzTm9uU3VwcG9ydGVkQ2hpbGQs
IHJlYXNvbnMsIGluY2x1ZGVSZWFzb25zKTsKKyAgICAgICAgaWYgKHJlbmRlckJveC5pc1J1YnlS
dW4oKSkKKyAgICAgICAgICAgIFNFVF9SRUFTT05fQU5EX1JFVFVSTl9JRl9ORUVERUQoRmxvd0hh
c05vblN1cHBvcnRlZENoaWxkLCByZWFzb25zLCBpbmNsdWRlUmVhc29ucyk7CisKKyAgICAgICAg
YXV0byYgc3R5bGUgPSByZW5kZXJCb3guc3R5bGUoKTsKKyAgICAgICAgaWYgKHN0eWxlLnZlcnRp
Y2FsQWxpZ24oKSAhPSBWZXJ0aWNhbEFsaWduOjpCYXNlbGluZSkKKyAgICAgICAgICAgIFNFVF9S
RUFTT05fQU5EX1JFVFVSTl9JRl9ORUVERUQoRmxvd0hhc05vblN1cHBvcnRlZENoaWxkLCByZWFz
b25zLCBpbmNsdWRlUmVhc29ucyk7CisgICAgICAgIGlmIChzdHlsZS53aWR0aCgpLmlzUGVyY2Vu
dCgpIHx8IHN0eWxlLmhlaWdodCgpLmlzUGVyY2VudCgpKQorICAgICAgICAgICAgU0VUX1JFQVNP
Tl9BTkRfUkVUVVJOX0lGX05FRURFRChGbG93SGFzTm9uU3VwcG9ydGVkQ2hpbGQsIHJlYXNvbnMs
IGluY2x1ZGVSZWFzb25zKTsKKyAgICAgICAgaWYgKHN0eWxlLm9iamVjdEZpdCgpICE9IFJlbmRl
clN0eWxlOjppbml0aWFsT2JqZWN0Rml0KCkpCisgICAgICAgICAgICBTRVRfUkVBU09OX0FORF9S
RVRVUk5fSUZfTkVFREVEKEZsb3dIYXNOb25TdXBwb3J0ZWRDaGlsZCwgcmVhc29ucywgaW5jbHVk
ZVJlYXNvbnMpOworICAgICAgICBpZiAoc3R5bGUuYm94U2l6aW5nKCkgPT0gQm94U2l6aW5nOjpC
b3JkZXJCb3gpCisgICAgICAgICAgICBTRVRfUkVBU09OX0FORF9SRVRVUk5fSUZfTkVFREVEKEZs
b3dIYXNOb25TdXBwb3J0ZWRDaGlsZCwgcmVhc29ucywgaW5jbHVkZVJlYXNvbnMpOworCisgICAg
ICAgIGlmIChpczxSZW5kZXJJbWFnZT4ocmVuZGVyQm94KSkgeworICAgICAgICAgICAgYXV0byYg
aW1hZ2UgPSBkb3duY2FzdDxSZW5kZXJJbWFnZT4ocmVuZGVyQm94KTsKKyAgICAgICAgICAgIGlm
IChpbWFnZS5pbWFnZU1hcCgpKQorICAgICAgICAgICAgICAgIFNFVF9SRUFTT05fQU5EX1JFVFVS
Tl9JRl9ORUVERUQoRmxvd0hhc05vblN1cHBvcnRlZENoaWxkLCByZWFzb25zLCBpbmNsdWRlUmVh
c29ucyk7CisgICAgICAgIH0KKyAgICAgICAgcmV0dXJuIHJlYXNvbnM7CisgICAgfQorI2VuZGlm
CisKKyAgICBTRVRfUkVBU09OX0FORF9SRVRVUk5fSUZfTkVFREVEKEZsb3dIYXNOb25TdXBwb3J0
ZWRDaGlsZCwgcmVhc29ucywgaW5jbHVkZVJlYXNvbnMpOworICAgIHJldHVybiByZWFzb25zOwor
fQorCisKIE9wdGlvblNldDxBdm9pZGFuY2VSZWFzb24+IGNhblVzZUZvckxpbmVMYXlvdXRXaXRo
UmVhc29uKGNvbnN0IFJlbmRlckJsb2NrRmxvdyYgZmxvdywgSW5jbHVkZVJlYXNvbnMgaW5jbHVk
ZVJlYXNvbnMpCiB7CiAgICAgT3B0aW9uU2V0PEF2b2lkYW5jZVJlYXNvbj4gcmVhc29uczsKQEAg
LTMwOSwzNSArMzcxLDkgQEAgT3B0aW9uU2V0PEF2b2lkYW5jZVJlYXNvbj4gY2FuVXNlRm9yTGlu
ZUxheW91dFdpdGhSZWFzb24oY29uc3QgUmVuZGVyQmxvY2tGbG93JgogICAgIC8vIFRoaXMgY3Vy
cmVudGx5IGNvdmVycyA8YmxvY2tmbG93PiN0ZXh0PC9ibG9ja2Zsb3c+LCA8YmxvY2tmbG93PiN0
ZXh0PGJyPjwvYmxvY2tmbG93PiBhbmQgbXV0aXBsZSAoc2libGluZykgUmVuZGVyVGV4dCBjYXNl
cy4KICAgICAvLyBUaGUgPGJsb2NrZmxvdz48aW5saW5lPiN0ZXh0PC9pbmxpbmU+PC9ibG9ja2Zs
b3c+IGNhc2UgaXMgYWxzbyBwb3B1bGFyIGFuZCBzaG91bGQgYmUgcmVsYXRpdmVseSBlYXN5IHRv
IGNvdmVyLgogICAgIGZvciAoY29uc3QgYXV0byogY2hpbGQgPSBmbG93LmZpcnN0Q2hpbGQoKTsg
Y2hpbGQ7IGNoaWxkID0gY2hpbGQtPm5leHRTaWJsaW5nKCkpIHsKLSAgICAgICAgaWYgKGNoaWxk
LT5zZWxlY3Rpb25TdGF0ZSgpICE9IFJlbmRlck9iamVjdDo6SGlnaGxpZ2h0U3RhdGU6Ok5vbmUp
Ci0gICAgICAgICAgICBTRVRfUkVBU09OX0FORF9SRVRVUk5fSUZfTkVFREVEKEZsb3dDaGlsZElz
U2VsZWN0ZWQsIHJlYXNvbnMsIGluY2x1ZGVSZWFzb25zKTsKLSAgICAgICAgaWYgKGlzPFJlbmRl
clRleHQ+KCpjaGlsZCkpIHsKLSAgICAgICAgICAgIGNvbnN0IGF1dG8mIHJlbmRlclRleHQgPSBk
b3duY2FzdDxSZW5kZXJUZXh0PigqY2hpbGQpOwotICAgICAgICAgICAgaWYgKHJlbmRlclRleHQu
dGV4dE5vZGUoKSAmJiAhcmVuZGVyVGV4dC5kb2N1bWVudCgpLm1hcmtlcnMoKS5tYXJrZXJzRm9y
KCpyZW5kZXJUZXh0LnRleHROb2RlKCkpLmlzRW1wdHkoKSkKLSAgICAgICAgICAgICAgICBTRVRf
UkVBU09OX0FORF9SRVRVUk5fSUZfTkVFREVEKEZsb3dJbmNsdWRlc0RvY3VtZW50TWFya2Vycywg
cmVhc29ucywgaW5jbHVkZVJlYXNvbnMpOwotICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAg
IH0KLSAgICAgICAgaWYgKGlzPFJlbmRlckxpbmVCcmVhaz4oKmNoaWxkKSkKLSAgICAgICAgICAg
IGNvbnRpbnVlOwotI2lmIEFMTE9XX0lOTElORV9JTUFHRVMKLSAgICAgICAgaWYgKGlzPFJlbmRl
ckltYWdlPigqY2hpbGQpKSB7Ci0gICAgICAgICAgICBhdXRvJiBpbWFnZSA9IGRvd25jYXN0PFJl
bmRlckltYWdlPigqY2hpbGQpOwotICAgICAgICAgICAgaWYgKGltYWdlLmltYWdlTWFwKCkpCi0g
ICAgICAgICAgICAgICAgU0VUX1JFQVNPTl9BTkRfUkVUVVJOX0lGX05FRURFRChGbG93SGFzTm9u
U3VwcG9ydGVkQ2hpbGQsIHJlYXNvbnMsIGluY2x1ZGVSZWFzb25zKTsgICAgICAgICAgICAgICAg
Ci0gICAgICAgICAgICBpZiAoaW1hZ2UuaXNGbG9hdGluZygpIHx8IGltYWdlLmlzUG9zaXRpb25l
ZCgpKQotICAgICAgICAgICAgICAgIFNFVF9SRUFTT05fQU5EX1JFVFVSTl9JRl9ORUVERUQoRmxv
d0hhc05vblN1cHBvcnRlZENoaWxkLCByZWFzb25zLCBpbmNsdWRlUmVhc29ucyk7Ci0gICAgICAg
ICAgICBhdXRvJiBzdHlsZSA9IGltYWdlLnN0eWxlKCk7Ci0gICAgICAgICAgICBpZiAoc3R5bGUu
dmVydGljYWxBbGlnbigpICE9IFZlcnRpY2FsQWxpZ246OkJhc2VsaW5lKQotICAgICAgICAgICAg
ICAgIFNFVF9SRUFTT05fQU5EX1JFVFVSTl9JRl9ORUVERUQoRmxvd0hhc05vblN1cHBvcnRlZENo
aWxkLCByZWFzb25zLCBpbmNsdWRlUmVhc29ucyk7Ci0gICAgICAgICAgICBpZiAoc3R5bGUud2lk
dGgoKS5pc1BlcmNlbnQoKSB8fCBzdHlsZS5oZWlnaHQoKS5pc1BlcmNlbnQoKSkKLSAgICAgICAg
ICAgICAgICBTRVRfUkVBU09OX0FORF9SRVRVUk5fSUZfTkVFREVEKEZsb3dIYXNOb25TdXBwb3J0
ZWRDaGlsZCwgcmVhc29ucywgaW5jbHVkZVJlYXNvbnMpOwotICAgICAgICAgICAgaWYgKHN0eWxl
Lm9iamVjdEZpdCgpICE9IFJlbmRlclN0eWxlOjppbml0aWFsT2JqZWN0Rml0KCkpCi0gICAgICAg
ICAgICAgICAgU0VUX1JFQVNPTl9BTkRfUkVUVVJOX0lGX05FRURFRChGbG93SGFzTm9uU3VwcG9y
dGVkQ2hpbGQsIHJlYXNvbnMsIGluY2x1ZGVSZWFzb25zKTsKLSAgICAgICAgICAgIGNvbnRpbnVl
OwotICAgICAgICB9Ci0jZW5kaWYKLSAgICAgICAgU0VUX1JFQVNPTl9BTkRfUkVUVVJOX0lGX05F
RURFRChGbG93SGFzTm9uU3VwcG9ydGVkQ2hpbGQsIHJlYXNvbnMsIGluY2x1ZGVSZWFzb25zKTsK
LSAgICAgICAgYnJlYWs7CisgICAgICAgIGF1dG8gY2hpbGRSZWFzb25zID0gY2FuVXNlRm9yQ2hp
bGQoKmNoaWxkLCBpbmNsdWRlUmVhc29ucyk7CisgICAgICAgIGlmIChjaGlsZFJlYXNvbnMpCisg
ICAgICAgICAgICBBRERfUkVBU09OU19BTkRfUkVUVVJOX0lGX05FRURFRChjaGlsZFJlYXNvbnMs
IHJlYXNvbnMsIGluY2x1ZGVSZWFzb25zKTsKICAgICB9CiAgICAgYXV0byBzdHlsZVJlYXNvbnMg
PSBjYW5Vc2VGb3JTdHlsZShmbG93LnN0eWxlKCksIGluY2x1ZGVSZWFzb25zKTsKICAgICBpZiAo
c3R5bGVSZWFzb25zKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0
aW9uL0xheW91dEludGVncmF0aW9uTGluZUxheW91dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sYXlv
dXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25MaW5lTGF5b3V0LmNwcAppbmRleCAzMDZl
OGI2ZDg1ZTcuLmI0ZTY1NzRjYmU4NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0
L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uTGluZUxheW91dC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uTGluZUxheW91dC5j
cHAKQEAgLTY3LDcgKzY3LDEwIEBAIExpbmVMYXlvdXQ6On5MaW5lTGF5b3V0KCkgPSBkZWZhdWx0
OwogCiBMaW5lTGF5b3V0KiBMaW5lTGF5b3V0Ojpjb250YWluaW5nKFJlbmRlck9iamVjdCYgcmVu
ZGVyZXIpCiB7Ci0gICAgaWYgKCFpczxSZW5kZXJUZXh0PihyZW5kZXJlcikgJiYgIWlzPFJlbmRl
ckxpbmVCcmVhaz4ocmVuZGVyZXIpICYmICFpczxSZW5kZXJJbWFnZT4ocmVuZGVyZXIpKQorICAg
IGlmICghcmVuZGVyZXIuaXNJbmxpbmUoKSkKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisKKyAg
ICBpZiAocmVuZGVyZXIuaXNSZXBsaWNhKCkpCiAgICAgICAgIHJldHVybiBudWxscHRyOwogICAg
IAogICAgIGlmIChhdXRvKiBwYXJlbnQgPSByZW5kZXJlci5wYXJlbnQoKSkgewpAQCAtNTE4LDkg
KzUyMSwyMyBAQCBib29sIExpbmVMYXlvdXQ6OmhpdFRlc3QoY29uc3QgSGl0VGVzdFJlcXVlc3Qm
IHJlcXVlc3QsIEhpdFRlc3RSZXN1bHQmIHJlc3VsdCwgYwogCiAgICAgICAgIGF1dG8mIHJlbmRl
cmVyID0gbV9ib3hUcmVlLnJlbmRlcmVyRm9yTGF5b3V0Qm94KHJ1bi5sYXlvdXRCb3goKSk7CiAK
LSAgICAgICAgcmVuZGVyZXIudXBkYXRlSGl0VGVzdFJlc3VsdChyZXN1bHQsIGxvY2F0aW9uSW5D
b250YWluZXIucG9pbnQoKSAtIHRvTGF5b3V0U2l6ZShhY2N1bXVsYXRlZE9mZnNldCkpOwotICAg
ICAgICBpZiAocmVzdWx0LmFkZE5vZGVUb0xpc3RCYXNlZFRlc3RSZXN1bHQocmVuZGVyZXIubm9k
ZUZvckhpdFRlc3QoKSwgcmVxdWVzdCwgbG9jYXRpb25JbkNvbnRhaW5lciwgcnVuUmVjdCkgPT0g
SGl0VGVzdFByb2dyZXNzOjpTdG9wKQotICAgICAgICAgICAgcmV0dXJuIHRydWU7CisgICAgICAg
IGlmIChpczxSZW5kZXJUZXh0PihyZW5kZXJlcikpIHsKKyAgICAgICAgICAgIHJlbmRlcmVyLnVw
ZGF0ZUhpdFRlc3RSZXN1bHQocmVzdWx0LCBsb2NhdGlvbkluQ29udGFpbmVyLnBvaW50KCkgLSB0
b0xheW91dFNpemUoYWNjdW11bGF0ZWRPZmZzZXQpKTsKKyAgICAgICAgICAgIGlmIChyZXN1bHQu
YWRkTm9kZVRvTGlzdEJhc2VkVGVzdFJlc3VsdChyZW5kZXJlci5ub2RlRm9ySGl0VGVzdCgpLCBy
ZXF1ZXN0LCBsb2NhdGlvbkluQ29udGFpbmVyLCBydW5SZWN0KSA9PSBIaXRUZXN0UHJvZ3Jlc3M6
OlN0b3ApCisgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7CisgICAgICAgICAgICBjb250aW51
ZTsKKyAgICAgICAgfQorCisgICAgICAgIGlmIChpczxSZW5kZXJCb3g+KHJlbmRlcmVyKSkgewor
ICAgICAgICAgICAgYXV0byYgcmVuZGVyQm94ID0gZG93bmNhc3Q8UmVuZGVyQm94PihyZW5kZXJl
cik7CisgICAgICAgICAgICBpZiAocmVuZGVyQm94Lmhhc1NlbGZQYWludGluZ0xheWVyKCkpCisg
ICAgICAgICAgICAgICAgY29udGludWU7CisgICAgICAgICAgICAKKyAgICAgICAgICAgIGlmIChy
ZW5kZXJCb3guaGl0VGVzdChyZXF1ZXN0LCByZXN1bHQsIGxvY2F0aW9uSW5Db250YWluZXIsIGFj
Y3VtdWxhdGVkT2Zmc2V0KSkgeworICAgICAgICAgICAgICAgIHJlbmRlckJveC51cGRhdGVIaXRU
ZXN0UmVzdWx0KHJlc3VsdCwgbG9jYXRpb25JbkNvbnRhaW5lci5wb2ludCgpIC0gdG9MYXlvdXRT
aXplKGFjY3VtdWxhdGVkT2Zmc2V0KSk7CisgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7Cisg
ICAgICAgICAgICB9CisgICAgICAgIH0KICAgICB9CiAKICAgICByZXR1cm4gZmFsc2U7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2tGbG93LmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9ja0Zsb3cuY3BwCmluZGV4IGRjMDY4ZjM0
ZWUwYy4uMzYzZjkwZjNkNTgzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyQmxvY2tGbG93LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
QmxvY2tGbG93LmNwcApAQCAtMzY2Myw4ICszNjYzLDggQEAgdm9pZCBSZW5kZXJCbG9ja0Zsb3c6
OmxheW91dExGQ0xpbmVzKGJvb2wgcmVsYXlvdXRDaGlsZHJlbiwgTGF5b3V0VW5pdCYgcmVwYWlu
dEwKICAgICBmb3IgKGF1dG8mIHJlbmRlcmVyIDogY2hpbGRyZW5PZlR5cGU8UmVuZGVyT2JqZWN0
PigqdGhpcykpIHsKICAgICAgICAgaWYgKCFyZWxheW91dENoaWxkcmVuICYmICFyZW5kZXJlci5u
ZWVkc0xheW91dCgpKQogICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAgIGlmIChpczxSZW5k
ZXJSZXBsYWNlZD4ocmVuZGVyZXIpKSB7Ci0gICAgICAgICAgICBhdXRvJiByZXBsYWNlZCA9IGRv
d25jYXN0PFJlbmRlclJlcGxhY2VkPihyZW5kZXJlcik7CisgICAgICAgIGlmIChpczxSZW5kZXJC
b3g+KHJlbmRlcmVyKSkgeworICAgICAgICAgICAgYXV0byYgcmVwbGFjZWQgPSBkb3duY2FzdDxS
ZW5kZXJCb3g+KHJlbmRlcmVyKTsKICAgICAgICAgICAgIHJlcGxhY2VkLnNldE5lZWRzTGF5b3V0
KE1hcmtPbmx5VGhpcyk7CiAgICAgICAgICAgICByZXBsYWNlZC5sYXlvdXRJZk5lZWRlZCgpOwog
ICAgICAgICAgICAgbGF5b3V0Rm9ybWF0dGluZ0NvbnRleHRMaW5lTGF5b3V0LnVwZGF0ZVJlcGxh
Y2VkRGltZW5zaW9ucyhyZXBsYWNlZCk7CmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtp
dHB5L2xheW91dF90ZXN0cy9jb250cm9sbGVycy9sYXlvdXRfdGVzdF9ydW5uZXIucHkgYi9Ub29s
cy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9jb250cm9sbGVycy9sYXlvdXRfdGVzdF9y
dW5uZXIucHkKaW5kZXggMWZlNjBiOGMwZDFjLi4xYzdiMWRmMTdiM2IgMTAwNjQ0Ci0tLSBhL1Rv
b2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL2NvbnRyb2xsZXJzL2xheW91dF90ZXN0
X3J1bm5lci5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9jb250
cm9sbGVycy9sYXlvdXRfdGVzdF9ydW5uZXIucHkKQEAgLTE2Niw2ICsxNjYsNyBAQCBjbGFzcyBM
YXlvdXRUZXN0UnVubmVyKG9iamVjdCk6CiAgICAgICAgICAgICAgICAgc2VsZi5fbWFya19pbnRl
cnJ1cHRlZF90ZXN0c19hc19za2lwcGVkKHJ1bl9yZXN1bHRzKQogICAgICAgICAgICAgICAgIHJh
aXNlIFRlc3RSdW5JbnRlcnJ1cHRlZEV4Y2VwdGlvbihtZXNzYWdlKQogCisgICAgICAgIHNlbGYu
X29wdGlvbnMuZXhpdF9hZnRlcl9uX2ZhaWx1cmVzID0gTm9uZQogICAgICAgICBpbnRlcnJ1cHRf
aWZfYXRfZmFpbHVyZV9saW1pdCgKICAgICAgICAgICAgIHNlbGYuX29wdGlvbnMuZXhpdF9hZnRl
cl9uX2ZhaWx1cmVzLAogICAgICAgICAgICAgcnVuX3Jlc3VsdHMudW5leHBlY3RlZF9mYWlsdXJl
cywK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>412171</attachid>
            <date>2020-10-23 05:35:50 -0700</date>
            <delta_ts>2020-10-26 06:27:44 -0700</delta_ts>
            <desc>patch</desc>
            <filename>lfc-replaced-6.patch</filename>
            <type>text/plain</type>
            <size>11881</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBkNWU5Nzg3MzZhZGEuLjNhNjU1MzgwMmY1NyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAt
MSwzICsxLDI3IEBACisyMDIwLTEwLTIzICBBbnR0aSBLb2l2aXN0byAgPGFudHRpQGFwcGxlLmNv
bT4KKworICAgICAgICBbTEZDXVtJbnRlZ3JhdGlvbl0gQWxsb3cgYWxsIHJlcGxhY2VkIGVsZW1l
bnRzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTgw
NzQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQg
I2RlZmluZSB0byBhbGxvdyBhbGwgUmVuZGVyUmVwbGFjZWQgaW4gbW9kZXJuIGxpbmUgbGF5b3V0
LgorICAgICAgICBEaXNhYmxlZCBmb3Igbm93LgorCisgICAgICAgICogbGF5b3V0L2ludGVncmF0
aW9uL0xheW91dEludGVncmF0aW9uQm94VHJlZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpMYXlv
dXRJbnRlZ3JhdGlvbjo6Qm94VHJlZTo6YnVpbGRUcmVlKToKKyAgICAgICAgKiBsYXlvdXQvaW50
ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25Db3ZlcmFnZS5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpMYXlvdXRJbnRlZ3JhdGlvbjo6Y2FuVXNlRm9yQ2hpbGQpOgorICAgICAgICAoV2ViQ29yZTo6
TGF5b3V0SW50ZWdyYXRpb246OmNhblVzZUZvckxpbmVMYXlvdXRXaXRoUmVhc29uKToKKyAgICAg
ICAgKiBsYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25MaW5lTGF5b3V0LmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkxheW91dEludGVncmF0aW9uOjpMaW5lTGF5b3V0Ojpjb250YWlu
aW5nKToKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dEludGVncmF0aW9uOjpMaW5lTGF5b3V0Ojpo
aXRUZXN0KToKKworICAgICAgICBJbXBsZW1lbnQgaGl0IHRlc3RpbmcuCisKKyAgICAgICAgKiBy
ZW5kZXJpbmcvUmVuZGVyQmxvY2tGbG93LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJs
b2NrRmxvdzo6bGF5b3V0TEZDTGluZXMpOgorCiAyMDIwLTEwLTIxICBDYXJsb3MgQWxiZXJ0byBM
b3BleiBQZXJleiAgPGNsb3BlekBpZ2FsaWEuY29tPgogCiAgICAgICAgIFJFR1JFU1NJT04ocjI2
ODc5OCk6IEZpeCBidWlsZCB3aXRob3V0IEVOQUJMRV9MQVlPVVRfRk9STUFUVElOR19DT05URVhU
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50
ZWdyYXRpb25Cb3hUcmVlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9M
YXlvdXRJbnRlZ3JhdGlvbkJveFRyZWUuY3BwCmluZGV4IGZlODJjY2Y3Y2FlZC4uYTZlMGE1MGVh
N2UwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0
SW50ZWdyYXRpb25Cb3hUcmVlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdy
YXRpb24vTGF5b3V0SW50ZWdyYXRpb25Cb3hUcmVlLmNwcApAQCAtNzEsMTAgKzcxLDkgQEAgdm9p
ZCBCb3hUcmVlOjpidWlsZFRyZWUoKQogICAgICAgICAgICAgY2xvbmVkU3R5bGUuc2V0RmxvYXRp
bmcoRmxvYXQ6Ok5vKTsKICAgICAgICAgICAgIGNsb25lZFN0eWxlLnNldFBvc2l0aW9uKFBvc2l0
aW9uVHlwZTo6U3RhdGljKTsKICAgICAgICAgICAgIGNoaWxkQm94ID0gbWFrZVVuaXF1ZTxMYXlv
dXQ6OkxpbmVCcmVha0JveD4oZG93bmNhc3Q8UmVuZGVyTGluZUJyZWFrPihjaGlsZFJlbmRlcmVy
KS5pc1dCUigpLCBXVEZNb3ZlKGNsb25lZFN0eWxlKSk7Ci0gICAgICAgIH0gZWxzZSBpZiAoaXM8
UmVuZGVySW1hZ2U+KGNoaWxkUmVuZGVyZXIpKSB7Ci0gICAgICAgICAgICBhdXRvJiBpbWFnZSA9
IGRvd25jYXN0PFJlbmRlckltYWdlPihjaGlsZFJlbmRlcmVyKTsKLSAgICAgICAgICAgIGF1dG8g
Y2xvbmVkU3R5bGUgPSBSZW5kZXJTdHlsZTo6Y2xvbmUoaW1hZ2Uuc3R5bGUoKSk7Ci0gICAgICAg
ICAgICBjaGlsZEJveCA9IG1ha2VVbmlxdWU8TGF5b3V0OjpSZXBsYWNlZEJveD4oTGF5b3V0OjpC
b3g6OkVsZW1lbnRBdHRyaWJ1dGVzIHsgTGF5b3V0OjpCb3g6OkVsZW1lbnRUeXBlOjpJbWFnZSB9
LCBXVEZNb3ZlKGNsb25lZFN0eWxlKSk7CisgICAgICAgIH0gZWxzZSBpZiAoaXM8UmVuZGVyQm94
PihjaGlsZFJlbmRlcmVyKSkgeworICAgICAgICAgICAgYXV0byBjbG9uZWRTdHlsZSA9IFJlbmRl
clN0eWxlOjpjbG9uZShjaGlsZFJlbmRlcmVyLnN0eWxlKCkpOworICAgICAgICAgICAgY2hpbGRC
b3ggPSBtYWtlVW5pcXVlPExheW91dDo6UmVwbGFjZWRCb3g+KExheW91dDo6Qm94OjpFbGVtZW50
QXR0cmlidXRlcyB7IGlzPFJlbmRlckltYWdlPihjaGlsZFJlbmRlcmVyKSA/IExheW91dDo6Qm94
OjpFbGVtZW50VHlwZTo6SW1hZ2UgOiBMYXlvdXQ6OkJveDo6RWxlbWVudFR5cGU6OkdlbmVyaWNF
bGVtZW50IH0sIFdURk1vdmUoY2xvbmVkU3R5bGUpKTsKICAgICAgICAgfQogICAgICAgICBBU1NF
UlQoY2hpbGRCb3gpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdy
YXRpb24vTGF5b3V0SW50ZWdyYXRpb25Db3ZlcmFnZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sYXlv
dXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25Db3ZlcmFnZS5jcHAKaW5kZXggZjU3MWIy
ZTE1M2FiLi4xNDcxZjRlOTlmOTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9p
bnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkNvdmVyYWdlLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25Db3ZlcmFnZS5jcHAKQEAg
LTQyLDcgKzQyLDkgQEAKIAogI2lmIEVOQUJMRShMQVlPVVRfRk9STUFUVElOR19DT05URVhUKQog
Ci0jZGVmaW5lIEFMTE9XX0lOTElORV9JTUFHRVMgMAorI2RlZmluZSBBTExPV19JTUFHRVMgMAor
I2RlZmluZSBBTExPV19BTExfUkVQTEFDRUQgMAorI2RlZmluZSBBTExPV19JTkxJTkVfQkxPQ0tf
QU5EX1JFUExBQ0VEIDAKIAogI2lmbmRlZiBOREVCVUcKICNkZWZpbmUgU0VUX1JFQVNPTl9BTkRf
UkVUVVJOX0lGX05FRURFRChyZWFzb24sIHJlYXNvbnMsIGluY2x1ZGVSZWFzb25zKSB7IFwKQEAg
LTI0NSw2ICsyNDcsNjYgQEAgc3RhdGljIE9wdGlvblNldDxBdm9pZGFuY2VSZWFzb24+IGNhblVz
ZUZvclN0eWxlKGNvbnN0IFJlbmRlclN0eWxlJiBzdHlsZSwgSW5jbHUKICAgICByZXR1cm4gcmVh
c29uczsKIH0KIAorc3RhdGljIE9wdGlvblNldDxBdm9pZGFuY2VSZWFzb24+IGNhblVzZUZvckNo
aWxkKGNvbnN0IFJlbmRlck9iamVjdCYgY2hpbGQsIEluY2x1ZGVSZWFzb25zIGluY2x1ZGVSZWFz
b25zKQoreworICAgIE9wdGlvblNldDxBdm9pZGFuY2VSZWFzb24+IHJlYXNvbnM7CisgICAgaWYg
KGNoaWxkLnNlbGVjdGlvblN0YXRlKCkgIT0gUmVuZGVyT2JqZWN0OjpIaWdobGlnaHRTdGF0ZTo6
Tm9uZSkKKyAgICAgICAgU0VUX1JFQVNPTl9BTkRfUkVUVVJOX0lGX05FRURFRChGbG93Q2hpbGRJ
c1NlbGVjdGVkLCByZWFzb25zLCBpbmNsdWRlUmVhc29ucyk7CisgICAgaWYgKGlzPFJlbmRlclRl
eHQ+KGNoaWxkKSkgeworICAgICAgICBjb25zdCBhdXRvJiByZW5kZXJUZXh0ID0gZG93bmNhc3Q8
UmVuZGVyVGV4dD4oY2hpbGQpOworICAgICAgICBpZiAocmVuZGVyVGV4dC50ZXh0Tm9kZSgpICYm
ICFyZW5kZXJUZXh0LmRvY3VtZW50KCkubWFya2VycygpLm1hcmtlcnNGb3IoKnJlbmRlclRleHQu
dGV4dE5vZGUoKSkuaXNFbXB0eSgpKQorICAgICAgICAgICAgU0VUX1JFQVNPTl9BTkRfUkVUVVJO
X0lGX05FRURFRChGbG93SW5jbHVkZXNEb2N1bWVudE1hcmtlcnMsIHJlYXNvbnMsIGluY2x1ZGVS
ZWFzb25zKTsKKyAgICAgICAgcmV0dXJuIHJlYXNvbnM7CisgICAgfQorCisgICAgaWYgKGlzPFJl
bmRlckxpbmVCcmVhaz4oY2hpbGQpKQorICAgICAgICByZXR1cm4gcmVhc29uczsKKworI2lmIEFM
TE9XX0lNQUdFUyB8fCBBTExPV19BTExfUkVQTEFDRUQgfHwgQUxMT1dfSU5MSU5FX0JMT0NLX0FO
RF9SRVBMQUNFRAorICAgIGlmIChpczxSZW5kZXJCb3g+KGNoaWxkKSkgeworICAgICAgICBhdXRv
JiByZW5kZXJCb3ggPSBkb3duY2FzdDxSZW5kZXJCb3g+KGNoaWxkKTsKKyAgICAgICAgaWYgKCFy
ZW5kZXJCb3guaXNSZXBsYWNlZCgpKQorICAgICAgICAgICAgU0VUX1JFQVNPTl9BTkRfUkVUVVJO
X0lGX05FRURFRChGbG93SGFzTm9uU3VwcG9ydGVkQ2hpbGQsIHJlYXNvbnMsIGluY2x1ZGVSZWFz
b25zKQorICAgICAgICBpZiAocmVuZGVyQm94LmlzRmxvYXRpbmcoKSB8fCByZW5kZXJCb3guaXNQ
b3NpdGlvbmVkKCkpCisgICAgICAgICAgICBTRVRfUkVBU09OX0FORF9SRVRVUk5fSUZfTkVFREVE
KEZsb3dIYXNOb25TdXBwb3J0ZWRDaGlsZCwgcmVhc29ucywgaW5jbHVkZVJlYXNvbnMpCisjaWYg
QUxMT1dfQUxMX1JFUExBQ0VECisgICAgICAgIGlmICghaXM8UmVuZGVyUmVwbGFjZWQ+KHJlbmRl
ckJveCkpCisgICAgICAgICAgICBTRVRfUkVBU09OX0FORF9SRVRVUk5fSUZfTkVFREVEKEZsb3dI
YXNOb25TdXBwb3J0ZWRDaGlsZCwgcmVhc29ucywgaW5jbHVkZVJlYXNvbnMpOworI2VsaWYgQUxM
T1dfSU1BR0VTCisgICAgICAgIGlmICghaXM8UmVuZGVySW1hZ2U+KHJlbmRlckJveCkpCisgICAg
ICAgICAgICBTRVRfUkVBU09OX0FORF9SRVRVUk5fSUZfTkVFREVEKEZsb3dIYXNOb25TdXBwb3J0
ZWRDaGlsZCwgcmVhc29ucywgaW5jbHVkZVJlYXNvbnMpOworI2VuZGlmCisgICAgICAgIGlmIChy
ZW5kZXJCb3guaXNMaXN0TWFya2VyKCkpCisgICAgICAgICAgICBTRVRfUkVBU09OX0FORF9SRVRV
Uk5fSUZfTkVFREVEKEZsb3dIYXNOb25TdXBwb3J0ZWRDaGlsZCwgcmVhc29ucywgaW5jbHVkZVJl
YXNvbnMpOworICAgICAgICBpZiAocmVuZGVyQm94LmlzU1ZHUm9vdCgpKQorICAgICAgICAgICAg
U0VUX1JFQVNPTl9BTkRfUkVUVVJOX0lGX05FRURFRChGbG93SGFzTm9uU3VwcG9ydGVkQ2hpbGQs
IHJlYXNvbnMsIGluY2x1ZGVSZWFzb25zKTsKKyAgICAgICAgaWYgKHJlbmRlckJveC5pc1J1YnlS
dW4oKSkKKyAgICAgICAgICAgIFNFVF9SRUFTT05fQU5EX1JFVFVSTl9JRl9ORUVERUQoRmxvd0hh
c05vblN1cHBvcnRlZENoaWxkLCByZWFzb25zLCBpbmNsdWRlUmVhc29ucyk7CisKKyAgICAgICAg
YXV0byYgc3R5bGUgPSByZW5kZXJCb3guc3R5bGUoKTsKKyAgICAgICAgaWYgKHN0eWxlLnZlcnRp
Y2FsQWxpZ24oKSAhPSBWZXJ0aWNhbEFsaWduOjpCYXNlbGluZSkKKyAgICAgICAgICAgIFNFVF9S
RUFTT05fQU5EX1JFVFVSTl9JRl9ORUVERUQoRmxvd0hhc05vblN1cHBvcnRlZENoaWxkLCByZWFz
b25zLCBpbmNsdWRlUmVhc29ucyk7CisgICAgICAgIGlmIChzdHlsZS53aWR0aCgpLmlzUGVyY2Vu
dCgpIHx8IHN0eWxlLmhlaWdodCgpLmlzUGVyY2VudCgpKQorICAgICAgICAgICAgU0VUX1JFQVNP
Tl9BTkRfUkVUVVJOX0lGX05FRURFRChGbG93SGFzTm9uU3VwcG9ydGVkQ2hpbGQsIHJlYXNvbnMs
IGluY2x1ZGVSZWFzb25zKTsKKyAgICAgICAgaWYgKHN0eWxlLm9iamVjdEZpdCgpICE9IFJlbmRl
clN0eWxlOjppbml0aWFsT2JqZWN0Rml0KCkpCisgICAgICAgICAgICBTRVRfUkVBU09OX0FORF9S
RVRVUk5fSUZfTkVFREVEKEZsb3dIYXNOb25TdXBwb3J0ZWRDaGlsZCwgcmVhc29ucywgaW5jbHVk
ZVJlYXNvbnMpOworICAgICAgICBpZiAoc3R5bGUuYm94U2l6aW5nKCkgPT0gQm94U2l6aW5nOjpC
b3JkZXJCb3gpCisgICAgICAgICAgICBTRVRfUkVBU09OX0FORF9SRVRVUk5fSUZfTkVFREVEKEZs
b3dIYXNOb25TdXBwb3J0ZWRDaGlsZCwgcmVhc29ucywgaW5jbHVkZVJlYXNvbnMpOworCisgICAg
ICAgIGlmIChpczxSZW5kZXJJbWFnZT4ocmVuZGVyQm94KSkgeworICAgICAgICAgICAgYXV0byYg
aW1hZ2UgPSBkb3duY2FzdDxSZW5kZXJJbWFnZT4ocmVuZGVyQm94KTsKKyAgICAgICAgICAgIGlm
IChpbWFnZS5pbWFnZU1hcCgpKQorICAgICAgICAgICAgICAgIFNFVF9SRUFTT05fQU5EX1JFVFVS
Tl9JRl9ORUVERUQoRmxvd0hhc05vblN1cHBvcnRlZENoaWxkLCByZWFzb25zLCBpbmNsdWRlUmVh
c29ucyk7CisgICAgICAgIH0KKyAgICAgICAgcmV0dXJuIHJlYXNvbnM7CisgICAgfQorI2VuZGlm
CisKKyAgICBTRVRfUkVBU09OX0FORF9SRVRVUk5fSUZfTkVFREVEKEZsb3dIYXNOb25TdXBwb3J0
ZWRDaGlsZCwgcmVhc29ucywgaW5jbHVkZVJlYXNvbnMpOworICAgIHJldHVybiByZWFzb25zOwor
fQorCisKIE9wdGlvblNldDxBdm9pZGFuY2VSZWFzb24+IGNhblVzZUZvckxpbmVMYXlvdXRXaXRo
UmVhc29uKGNvbnN0IFJlbmRlckJsb2NrRmxvdyYgZmxvdywgSW5jbHVkZVJlYXNvbnMgaW5jbHVk
ZVJlYXNvbnMpCiB7CiAgICAgT3B0aW9uU2V0PEF2b2lkYW5jZVJlYXNvbj4gcmVhc29uczsKQEAg
LTMwOSwzNSArMzcxLDkgQEAgT3B0aW9uU2V0PEF2b2lkYW5jZVJlYXNvbj4gY2FuVXNlRm9yTGlu
ZUxheW91dFdpdGhSZWFzb24oY29uc3QgUmVuZGVyQmxvY2tGbG93JgogICAgIC8vIFRoaXMgY3Vy
cmVudGx5IGNvdmVycyA8YmxvY2tmbG93PiN0ZXh0PC9ibG9ja2Zsb3c+LCA8YmxvY2tmbG93PiN0
ZXh0PGJyPjwvYmxvY2tmbG93PiBhbmQgbXV0aXBsZSAoc2libGluZykgUmVuZGVyVGV4dCBjYXNl
cy4KICAgICAvLyBUaGUgPGJsb2NrZmxvdz48aW5saW5lPiN0ZXh0PC9pbmxpbmU+PC9ibG9ja2Zs
b3c+IGNhc2UgaXMgYWxzbyBwb3B1bGFyIGFuZCBzaG91bGQgYmUgcmVsYXRpdmVseSBlYXN5IHRv
IGNvdmVyLgogICAgIGZvciAoY29uc3QgYXV0byogY2hpbGQgPSBmbG93LmZpcnN0Q2hpbGQoKTsg
Y2hpbGQ7IGNoaWxkID0gY2hpbGQtPm5leHRTaWJsaW5nKCkpIHsKLSAgICAgICAgaWYgKGNoaWxk
LT5zZWxlY3Rpb25TdGF0ZSgpICE9IFJlbmRlck9iamVjdDo6SGlnaGxpZ2h0U3RhdGU6Ok5vbmUp
Ci0gICAgICAgICAgICBTRVRfUkVBU09OX0FORF9SRVRVUk5fSUZfTkVFREVEKEZsb3dDaGlsZElz
U2VsZWN0ZWQsIHJlYXNvbnMsIGluY2x1ZGVSZWFzb25zKTsKLSAgICAgICAgaWYgKGlzPFJlbmRl
clRleHQ+KCpjaGlsZCkpIHsKLSAgICAgICAgICAgIGNvbnN0IGF1dG8mIHJlbmRlclRleHQgPSBk
b3duY2FzdDxSZW5kZXJUZXh0PigqY2hpbGQpOwotICAgICAgICAgICAgaWYgKHJlbmRlclRleHQu
dGV4dE5vZGUoKSAmJiAhcmVuZGVyVGV4dC5kb2N1bWVudCgpLm1hcmtlcnMoKS5tYXJrZXJzRm9y
KCpyZW5kZXJUZXh0LnRleHROb2RlKCkpLmlzRW1wdHkoKSkKLSAgICAgICAgICAgICAgICBTRVRf
UkVBU09OX0FORF9SRVRVUk5fSUZfTkVFREVEKEZsb3dJbmNsdWRlc0RvY3VtZW50TWFya2Vycywg
cmVhc29ucywgaW5jbHVkZVJlYXNvbnMpOwotICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAg
IH0KLSAgICAgICAgaWYgKGlzPFJlbmRlckxpbmVCcmVhaz4oKmNoaWxkKSkKLSAgICAgICAgICAg
IGNvbnRpbnVlOwotI2lmIEFMTE9XX0lOTElORV9JTUFHRVMKLSAgICAgICAgaWYgKGlzPFJlbmRl
ckltYWdlPigqY2hpbGQpKSB7Ci0gICAgICAgICAgICBhdXRvJiBpbWFnZSA9IGRvd25jYXN0PFJl
bmRlckltYWdlPigqY2hpbGQpOwotICAgICAgICAgICAgaWYgKGltYWdlLmltYWdlTWFwKCkpCi0g
ICAgICAgICAgICAgICAgU0VUX1JFQVNPTl9BTkRfUkVUVVJOX0lGX05FRURFRChGbG93SGFzTm9u
U3VwcG9ydGVkQ2hpbGQsIHJlYXNvbnMsIGluY2x1ZGVSZWFzb25zKTsgICAgICAgICAgICAgICAg
Ci0gICAgICAgICAgICBpZiAoaW1hZ2UuaXNGbG9hdGluZygpIHx8IGltYWdlLmlzUG9zaXRpb25l
ZCgpKQotICAgICAgICAgICAgICAgIFNFVF9SRUFTT05fQU5EX1JFVFVSTl9JRl9ORUVERUQoRmxv
d0hhc05vblN1cHBvcnRlZENoaWxkLCByZWFzb25zLCBpbmNsdWRlUmVhc29ucyk7Ci0gICAgICAg
ICAgICBhdXRvJiBzdHlsZSA9IGltYWdlLnN0eWxlKCk7Ci0gICAgICAgICAgICBpZiAoc3R5bGUu
dmVydGljYWxBbGlnbigpICE9IFZlcnRpY2FsQWxpZ246OkJhc2VsaW5lKQotICAgICAgICAgICAg
ICAgIFNFVF9SRUFTT05fQU5EX1JFVFVSTl9JRl9ORUVERUQoRmxvd0hhc05vblN1cHBvcnRlZENo
aWxkLCByZWFzb25zLCBpbmNsdWRlUmVhc29ucyk7Ci0gICAgICAgICAgICBpZiAoc3R5bGUud2lk
dGgoKS5pc1BlcmNlbnQoKSB8fCBzdHlsZS5oZWlnaHQoKS5pc1BlcmNlbnQoKSkKLSAgICAgICAg
ICAgICAgICBTRVRfUkVBU09OX0FORF9SRVRVUk5fSUZfTkVFREVEKEZsb3dIYXNOb25TdXBwb3J0
ZWRDaGlsZCwgcmVhc29ucywgaW5jbHVkZVJlYXNvbnMpOwotICAgICAgICAgICAgaWYgKHN0eWxl
Lm9iamVjdEZpdCgpICE9IFJlbmRlclN0eWxlOjppbml0aWFsT2JqZWN0Rml0KCkpCi0gICAgICAg
ICAgICAgICAgU0VUX1JFQVNPTl9BTkRfUkVUVVJOX0lGX05FRURFRChGbG93SGFzTm9uU3VwcG9y
dGVkQ2hpbGQsIHJlYXNvbnMsIGluY2x1ZGVSZWFzb25zKTsKLSAgICAgICAgICAgIGNvbnRpbnVl
OwotICAgICAgICB9Ci0jZW5kaWYKLSAgICAgICAgU0VUX1JFQVNPTl9BTkRfUkVUVVJOX0lGX05F
RURFRChGbG93SGFzTm9uU3VwcG9ydGVkQ2hpbGQsIHJlYXNvbnMsIGluY2x1ZGVSZWFzb25zKTsK
LSAgICAgICAgYnJlYWs7CisgICAgICAgIGF1dG8gY2hpbGRSZWFzb25zID0gY2FuVXNlRm9yQ2hp
bGQoKmNoaWxkLCBpbmNsdWRlUmVhc29ucyk7CisgICAgICAgIGlmIChjaGlsZFJlYXNvbnMpCisg
ICAgICAgICAgICBBRERfUkVBU09OU19BTkRfUkVUVVJOX0lGX05FRURFRChjaGlsZFJlYXNvbnMs
IHJlYXNvbnMsIGluY2x1ZGVSZWFzb25zKTsKICAgICB9CiAgICAgYXV0byBzdHlsZVJlYXNvbnMg
PSBjYW5Vc2VGb3JTdHlsZShmbG93LnN0eWxlKCksIGluY2x1ZGVSZWFzb25zKTsKICAgICBpZiAo
c3R5bGVSZWFzb25zKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0
aW9uL0xheW91dEludGVncmF0aW9uTGluZUxheW91dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sYXlv
dXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25MaW5lTGF5b3V0LmNwcAppbmRleCAzMDZl
OGI2ZDg1ZTcuLmI0ZTY1NzRjYmU4NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0
L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uTGluZUxheW91dC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uTGluZUxheW91dC5j
cHAKQEAgLTY3LDcgKzY3LDEwIEBAIExpbmVMYXlvdXQ6On5MaW5lTGF5b3V0KCkgPSBkZWZhdWx0
OwogCiBMaW5lTGF5b3V0KiBMaW5lTGF5b3V0Ojpjb250YWluaW5nKFJlbmRlck9iamVjdCYgcmVu
ZGVyZXIpCiB7Ci0gICAgaWYgKCFpczxSZW5kZXJUZXh0PihyZW5kZXJlcikgJiYgIWlzPFJlbmRl
ckxpbmVCcmVhaz4ocmVuZGVyZXIpICYmICFpczxSZW5kZXJJbWFnZT4ocmVuZGVyZXIpKQorICAg
IGlmICghcmVuZGVyZXIuaXNJbmxpbmUoKSkKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisKKyAg
ICBpZiAocmVuZGVyZXIuaXNSZXBsaWNhKCkpCiAgICAgICAgIHJldHVybiBudWxscHRyOwogICAg
IAogICAgIGlmIChhdXRvKiBwYXJlbnQgPSByZW5kZXJlci5wYXJlbnQoKSkgewpAQCAtNTE4LDkg
KzUyMSwyMyBAQCBib29sIExpbmVMYXlvdXQ6OmhpdFRlc3QoY29uc3QgSGl0VGVzdFJlcXVlc3Qm
IHJlcXVlc3QsIEhpdFRlc3RSZXN1bHQmIHJlc3VsdCwgYwogCiAgICAgICAgIGF1dG8mIHJlbmRl
cmVyID0gbV9ib3hUcmVlLnJlbmRlcmVyRm9yTGF5b3V0Qm94KHJ1bi5sYXlvdXRCb3goKSk7CiAK
LSAgICAgICAgcmVuZGVyZXIudXBkYXRlSGl0VGVzdFJlc3VsdChyZXN1bHQsIGxvY2F0aW9uSW5D
b250YWluZXIucG9pbnQoKSAtIHRvTGF5b3V0U2l6ZShhY2N1bXVsYXRlZE9mZnNldCkpOwotICAg
ICAgICBpZiAocmVzdWx0LmFkZE5vZGVUb0xpc3RCYXNlZFRlc3RSZXN1bHQocmVuZGVyZXIubm9k
ZUZvckhpdFRlc3QoKSwgcmVxdWVzdCwgbG9jYXRpb25JbkNvbnRhaW5lciwgcnVuUmVjdCkgPT0g
SGl0VGVzdFByb2dyZXNzOjpTdG9wKQotICAgICAgICAgICAgcmV0dXJuIHRydWU7CisgICAgICAg
IGlmIChpczxSZW5kZXJUZXh0PihyZW5kZXJlcikpIHsKKyAgICAgICAgICAgIHJlbmRlcmVyLnVw
ZGF0ZUhpdFRlc3RSZXN1bHQocmVzdWx0LCBsb2NhdGlvbkluQ29udGFpbmVyLnBvaW50KCkgLSB0
b0xheW91dFNpemUoYWNjdW11bGF0ZWRPZmZzZXQpKTsKKyAgICAgICAgICAgIGlmIChyZXN1bHQu
YWRkTm9kZVRvTGlzdEJhc2VkVGVzdFJlc3VsdChyZW5kZXJlci5ub2RlRm9ySGl0VGVzdCgpLCBy
ZXF1ZXN0LCBsb2NhdGlvbkluQ29udGFpbmVyLCBydW5SZWN0KSA9PSBIaXRUZXN0UHJvZ3Jlc3M6
OlN0b3ApCisgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7CisgICAgICAgICAgICBjb250aW51
ZTsKKyAgICAgICAgfQorCisgICAgICAgIGlmIChpczxSZW5kZXJCb3g+KHJlbmRlcmVyKSkgewor
ICAgICAgICAgICAgYXV0byYgcmVuZGVyQm94ID0gZG93bmNhc3Q8UmVuZGVyQm94PihyZW5kZXJl
cik7CisgICAgICAgICAgICBpZiAocmVuZGVyQm94Lmhhc1NlbGZQYWludGluZ0xheWVyKCkpCisg
ICAgICAgICAgICAgICAgY29udGludWU7CisgICAgICAgICAgICAKKyAgICAgICAgICAgIGlmIChy
ZW5kZXJCb3guaGl0VGVzdChyZXF1ZXN0LCByZXN1bHQsIGxvY2F0aW9uSW5Db250YWluZXIsIGFj
Y3VtdWxhdGVkT2Zmc2V0KSkgeworICAgICAgICAgICAgICAgIHJlbmRlckJveC51cGRhdGVIaXRU
ZXN0UmVzdWx0KHJlc3VsdCwgbG9jYXRpb25JbkNvbnRhaW5lci5wb2ludCgpIC0gdG9MYXlvdXRT
aXplKGFjY3VtdWxhdGVkT2Zmc2V0KSk7CisgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7Cisg
ICAgICAgICAgICB9CisgICAgICAgIH0KICAgICB9CiAKICAgICByZXR1cm4gZmFsc2U7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2tGbG93LmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9ja0Zsb3cuY3BwCmluZGV4IGRjMDY4ZjM0
ZWUwYy4uMzYzZjkwZjNkNTgzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyQmxvY2tGbG93LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
QmxvY2tGbG93LmNwcApAQCAtMzY2Myw4ICszNjYzLDggQEAgdm9pZCBSZW5kZXJCbG9ja0Zsb3c6
OmxheW91dExGQ0xpbmVzKGJvb2wgcmVsYXlvdXRDaGlsZHJlbiwgTGF5b3V0VW5pdCYgcmVwYWlu
dEwKICAgICBmb3IgKGF1dG8mIHJlbmRlcmVyIDogY2hpbGRyZW5PZlR5cGU8UmVuZGVyT2JqZWN0
PigqdGhpcykpIHsKICAgICAgICAgaWYgKCFyZWxheW91dENoaWxkcmVuICYmICFyZW5kZXJlci5u
ZWVkc0xheW91dCgpKQogICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAgIGlmIChpczxSZW5k
ZXJSZXBsYWNlZD4ocmVuZGVyZXIpKSB7Ci0gICAgICAgICAgICBhdXRvJiByZXBsYWNlZCA9IGRv
d25jYXN0PFJlbmRlclJlcGxhY2VkPihyZW5kZXJlcik7CisgICAgICAgIGlmIChpczxSZW5kZXJC
b3g+KHJlbmRlcmVyKSkgeworICAgICAgICAgICAgYXV0byYgcmVwbGFjZWQgPSBkb3duY2FzdDxS
ZW5kZXJCb3g+KHJlbmRlcmVyKTsKICAgICAgICAgICAgIHJlcGxhY2VkLnNldE5lZWRzTGF5b3V0
KE1hcmtPbmx5VGhpcyk7CiAgICAgICAgICAgICByZXBsYWNlZC5sYXlvdXRJZk5lZWRlZCgpOwog
ICAgICAgICAgICAgbGF5b3V0Rm9ybWF0dGluZ0NvbnRleHRMaW5lTGF5b3V0LnVwZGF0ZVJlcGxh
Y2VkRGltZW5zaW9ucyhyZXBsYWNlZCk7Cg==
</data>
<flag name="review"
          id="428569"
          type_id="1"
          status="+"
          setter="zalan"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>412298</attachid>
            <date>2020-10-26 02:44:24 -0700</date>
            <delta_ts>2020-10-26 06:27:44 -0700</delta_ts>
            <desc>for bots</desc>
            <filename>lfc-replaced-7.patch</filename>
            <type>text/plain</type>
            <size>13364</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA0ODA2MDE2YTQwZjQuLjVkMzkwNTExZGE0NiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAt
MTg3Myw2ICsxODczLDMwIEBACiAKICAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0RPTUNvbnZlcnRS
ZWNvcmQuaDoKIAorMjAyMC0xMC0yMyAgQW50dGkgS29pdmlzdG8gIDxhbnR0aUBhcHBsZS5jb20+
CisKKyAgICAgICAgW0xGQ11bSW50ZWdyYXRpb25dIEFsbG93IGFsbCByZXBsYWNlZCBlbGVtZW50
cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE4MDc0
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkICNk
ZWZpbmUgdG8gYWxsb3cgYWxsIFJlbmRlclJlcGxhY2VkIGluIG1vZGVybiBsaW5lIGxheW91dC4K
KyAgICAgICAgRGlzYWJsZWQgZm9yIG5vdy4KKworICAgICAgICAqIGxheW91dC9pbnRlZ3JhdGlv
bi9MYXlvdXRJbnRlZ3JhdGlvbkJveFRyZWUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0
SW50ZWdyYXRpb246OkJveFRyZWU6OmJ1aWxkVHJlZSk6CisgICAgICAgICogbGF5b3V0L2ludGVn
cmF0aW9uL0xheW91dEludGVncmF0aW9uQ292ZXJhZ2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
TGF5b3V0SW50ZWdyYXRpb246OmNhblVzZUZvckNoaWxkKToKKyAgICAgICAgKFdlYkNvcmU6Okxh
eW91dEludGVncmF0aW9uOjpjYW5Vc2VGb3JMaW5lTGF5b3V0V2l0aFJlYXNvbik6CisgICAgICAg
ICogbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uTGluZUxheW91dC5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpMYXlvdXRJbnRlZ3JhdGlvbjo6TGluZUxheW91dDo6Y29udGFpbmlu
Zyk6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXRJbnRlZ3JhdGlvbjo6TGluZUxheW91dDo6aGl0
VGVzdCk6CisKKyAgICAgICAgSW1wbGVtZW50IGhpdCB0ZXN0aW5nLgorCisgICAgICAgICogcmVu
ZGVyaW5nL1JlbmRlckJsb2NrRmxvdy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJCbG9j
a0Zsb3c6OmxheW91dExGQ0xpbmVzKToKKwogMjAyMC0xMC0yMSAgQ2FybG9zIEFsYmVydG8gTG9w
ZXogUGVyZXogIDxjbG9wZXpAaWdhbGlhLmNvbT4KIAogICAgICAgICBSRUdSRVNTSU9OKHIyNjg3
OTgpOiBGaXggYnVpbGQgd2l0aG91dCBFTkFCTEVfTEFZT1VUX0ZPUk1BVFRJTkdfQ09OVEVYVApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVn
cmF0aW9uQm94VHJlZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5
b3V0SW50ZWdyYXRpb25Cb3hUcmVlLmNwcAppbmRleCBmZTgyY2NmN2NhZWQuLjkwMmM3OTU1NWI4
ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dElu
dGVncmF0aW9uQm94VHJlZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0
aW9uL0xheW91dEludGVncmF0aW9uQm94VHJlZS5jcHAKQEAgLTcxLDEwICs3MSwxMiBAQCB2b2lk
IEJveFRyZWU6OmJ1aWxkVHJlZSgpCiAgICAgICAgICAgICBjbG9uZWRTdHlsZS5zZXRGbG9hdGlu
ZyhGbG9hdDo6Tm8pOwogICAgICAgICAgICAgY2xvbmVkU3R5bGUuc2V0UG9zaXRpb24oUG9zaXRp
b25UeXBlOjpTdGF0aWMpOwogICAgICAgICAgICAgY2hpbGRCb3ggPSBtYWtlVW5pcXVlPExheW91
dDo6TGluZUJyZWFrQm94Pihkb3duY2FzdDxSZW5kZXJMaW5lQnJlYWs+KGNoaWxkUmVuZGVyZXIp
LmlzV0JSKCksIFdURk1vdmUoY2xvbmVkU3R5bGUpKTsKLSAgICAgICAgfSBlbHNlIGlmIChpczxS
ZW5kZXJJbWFnZT4oY2hpbGRSZW5kZXJlcikpIHsKLSAgICAgICAgICAgIGF1dG8mIGltYWdlID0g
ZG93bmNhc3Q8UmVuZGVySW1hZ2U+KGNoaWxkUmVuZGVyZXIpOwotICAgICAgICAgICAgYXV0byBj
bG9uZWRTdHlsZSA9IFJlbmRlclN0eWxlOjpjbG9uZShpbWFnZS5zdHlsZSgpKTsKLSAgICAgICAg
ICAgIGNoaWxkQm94ID0gbWFrZVVuaXF1ZTxMYXlvdXQ6OlJlcGxhY2VkQm94PihMYXlvdXQ6OkJv
eDo6RWxlbWVudEF0dHJpYnV0ZXMgeyBMYXlvdXQ6OkJveDo6RWxlbWVudFR5cGU6OkltYWdlIH0s
IFdURk1vdmUoY2xvbmVkU3R5bGUpKTsKKyAgICAgICAgfSBlbHNlIGlmIChpczxSZW5kZXJSZXBs
YWNlZD4oY2hpbGRSZW5kZXJlcikpIHsKKyAgICAgICAgICAgIGF1dG8gY2xvbmVkU3R5bGUgPSBS
ZW5kZXJTdHlsZTo6Y2xvbmUoY2hpbGRSZW5kZXJlci5zdHlsZSgpKTsKKyAgICAgICAgICAgIGNo
aWxkQm94ID0gbWFrZVVuaXF1ZTxMYXlvdXQ6OlJlcGxhY2VkQm94PihMYXlvdXQ6OkJveDo6RWxl
bWVudEF0dHJpYnV0ZXMgeyBpczxSZW5kZXJJbWFnZT4oY2hpbGRSZW5kZXJlcikgPyBMYXlvdXQ6
OkJveDo6RWxlbWVudFR5cGU6OkltYWdlIDogTGF5b3V0OjpCb3g6OkVsZW1lbnRUeXBlOjpHZW5l
cmljRWxlbWVudCB9LCBXVEZNb3ZlKGNsb25lZFN0eWxlKSk7CisgICAgICAgIH0gZWxzZSBpZiAo
aXM8UmVuZGVyQm94PihjaGlsZFJlbmRlcmVyKSkgeworICAgICAgICAgICAgYXV0byBjbG9uZWRT
dHlsZSA9IFJlbmRlclN0eWxlOjpjbG9uZShjaGlsZFJlbmRlcmVyLnN0eWxlKCkpOworICAgICAg
ICAgICAgY2hpbGRCb3ggPSBtYWtlVW5pcXVlPExheW91dDo6UmVwbGFjZWRCb3g+KExheW91dDo6
Qm94OjpFbGVtZW50QXR0cmlidXRlcyB7IExheW91dDo6Qm94OjpFbGVtZW50VHlwZTo6R2VuZXJp
Y0VsZW1lbnQgfSwgV1RGTW92ZShjbG9uZWRTdHlsZSkpOwogICAgICAgICB9CiAgICAgICAgIEFT
U0VSVChjaGlsZEJveCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRl
Z3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkNvdmVyYWdlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xh
eW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkNvdmVyYWdlLmNwcAppbmRleCBmNTcx
YjJlMTUzYWIuLjYzNTY0N2EwNGJjMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0
L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uQ292ZXJhZ2UuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkNvdmVyYWdlLmNwcApA
QCAtNDIsNyArNDIsOSBAQAogCiAjaWYgRU5BQkxFKExBWU9VVF9GT1JNQVRUSU5HX0NPTlRFWFQp
CiAKLSNkZWZpbmUgQUxMT1dfSU5MSU5FX0lNQUdFUyAwCisjZGVmaW5lIEFMTE9XX0lNQUdFUyAw
CisjZGVmaW5lIEFMTE9XX0FMTF9SRVBMQUNFRCAxCisjZGVmaW5lIEFMTE9XX0lOTElORV9CTE9D
SyAwCiAKICNpZm5kZWYgTkRFQlVHCiAjZGVmaW5lIFNFVF9SRUFTT05fQU5EX1JFVFVSTl9JRl9O
RUVERUQocmVhc29uLCByZWFzb25zLCBpbmNsdWRlUmVhc29ucykgeyBcCkBAIC0yNDUsNiArMjQ3
LDc2IEBAIHN0YXRpYyBPcHRpb25TZXQ8QXZvaWRhbmNlUmVhc29uPiBjYW5Vc2VGb3JTdHlsZShj
b25zdCBSZW5kZXJTdHlsZSYgc3R5bGUsIEluY2x1CiAgICAgcmV0dXJuIHJlYXNvbnM7CiB9CiAK
K3N0YXRpYyBPcHRpb25TZXQ8QXZvaWRhbmNlUmVhc29uPiBjYW5Vc2VGb3JDaGlsZChjb25zdCBS
ZW5kZXJPYmplY3QmIGNoaWxkLCBJbmNsdWRlUmVhc29ucyBpbmNsdWRlUmVhc29ucykKK3sKKyAg
ICBPcHRpb25TZXQ8QXZvaWRhbmNlUmVhc29uPiByZWFzb25zOworICAgIGlmIChjaGlsZC5zZWxl
Y3Rpb25TdGF0ZSgpICE9IFJlbmRlck9iamVjdDo6SGlnaGxpZ2h0U3RhdGU6Ok5vbmUpCisgICAg
ICAgIFNFVF9SRUFTT05fQU5EX1JFVFVSTl9JRl9ORUVERUQoRmxvd0NoaWxkSXNTZWxlY3RlZCwg
cmVhc29ucywgaW5jbHVkZVJlYXNvbnMpOworICAgIGlmIChpczxSZW5kZXJUZXh0PihjaGlsZCkp
IHsKKyAgICAgICAgY29uc3QgYXV0byYgcmVuZGVyVGV4dCA9IGRvd25jYXN0PFJlbmRlclRleHQ+
KGNoaWxkKTsKKyAgICAgICAgaWYgKHJlbmRlclRleHQudGV4dE5vZGUoKSAmJiAhcmVuZGVyVGV4
dC5kb2N1bWVudCgpLm1hcmtlcnMoKS5tYXJrZXJzRm9yKCpyZW5kZXJUZXh0LnRleHROb2RlKCkp
LmlzRW1wdHkoKSkKKyAgICAgICAgICAgIFNFVF9SRUFTT05fQU5EX1JFVFVSTl9JRl9ORUVERUQo
Rmxvd0luY2x1ZGVzRG9jdW1lbnRNYXJrZXJzLCByZWFzb25zLCBpbmNsdWRlUmVhc29ucyk7Cisg
ICAgICAgIHJldHVybiByZWFzb25zOworICAgIH0KKworICAgIGlmIChpczxSZW5kZXJMaW5lQnJl
YWs+KGNoaWxkKSkKKyAgICAgICAgcmV0dXJuIHJlYXNvbnM7CisKKyNpZiBBTExPV19JTUFHRVMg
fHwgQUxMT1dfQUxMX1JFUExBQ0VECisgICAgaWYgKGlzPFJlbmRlclJlcGxhY2VkPihjaGlsZCkp
IHsKKyAgICAgICAgYXV0byYgcmVwbGFjZWQgPSBkb3duY2FzdDxSZW5kZXJSZXBsYWNlZD4oY2hp
bGQpOworICAgICAgICBpZiAocmVwbGFjZWQuaXNGbG9hdGluZygpIHx8IHJlcGxhY2VkLmlzUG9z
aXRpb25lZCgpKQorICAgICAgICAgICAgU0VUX1JFQVNPTl9BTkRfUkVUVVJOX0lGX05FRURFRChG
bG93SGFzTm9uU3VwcG9ydGVkQ2hpbGQsIHJlYXNvbnMsIGluY2x1ZGVSZWFzb25zKQorCisgICAg
ICAgIGlmIChyZXBsYWNlZC5pc1NWR1Jvb3QoKSkKKyAgICAgICAgICAgIFNFVF9SRUFTT05fQU5E
X1JFVFVSTl9JRl9ORUVERUQoRmxvd0hhc05vblN1cHBvcnRlZENoaWxkLCByZWFzb25zLCBpbmNs
dWRlUmVhc29ucyk7CisKKyAgICAgICAgYXV0byYgc3R5bGUgPSByZXBsYWNlZC5zdHlsZSgpOwor
ICAgICAgICBpZiAoc3R5bGUudmVydGljYWxBbGlnbigpICE9IFZlcnRpY2FsQWxpZ246OkJhc2Vs
aW5lKQorICAgICAgICAgICAgU0VUX1JFQVNPTl9BTkRfUkVUVVJOX0lGX05FRURFRChGbG93SGFz
Tm9uU3VwcG9ydGVkQ2hpbGQsIHJlYXNvbnMsIGluY2x1ZGVSZWFzb25zKTsKKyAgICAgICAgaWYg
KHN0eWxlLndpZHRoKCkuaXNQZXJjZW50KCkgfHwgc3R5bGUuaGVpZ2h0KCkuaXNQZXJjZW50KCkp
CisgICAgICAgICAgICBTRVRfUkVBU09OX0FORF9SRVRVUk5fSUZfTkVFREVEKEZsb3dIYXNOb25T
dXBwb3J0ZWRDaGlsZCwgcmVhc29ucywgaW5jbHVkZVJlYXNvbnMpOworICAgICAgICBpZiAoc3R5
bGUub2JqZWN0Rml0KCkgIT0gUmVuZGVyU3R5bGU6OmluaXRpYWxPYmplY3RGaXQoKSkKKyAgICAg
ICAgICAgIFNFVF9SRUFTT05fQU5EX1JFVFVSTl9JRl9ORUVERUQoRmxvd0hhc05vblN1cHBvcnRl
ZENoaWxkLCByZWFzb25zLCBpbmNsdWRlUmVhc29ucyk7CisKKyAgICAgICAgaWYgKGlzPFJlbmRl
ckltYWdlPihyZXBsYWNlZCkpIHsKKyAgICAgICAgICAgIGF1dG8mIGltYWdlID0gZG93bmNhc3Q8
UmVuZGVySW1hZ2U+KHJlcGxhY2VkKTsKKyAgICAgICAgICAgIGlmIChpbWFnZS5pbWFnZU1hcCgp
KQorICAgICAgICAgICAgICAgIFNFVF9SRUFTT05fQU5EX1JFVFVSTl9JRl9ORUVERUQoRmxvd0hh
c05vblN1cHBvcnRlZENoaWxkLCByZWFzb25zLCBpbmNsdWRlUmVhc29ucyk7CisgICAgICAgICAg
ICByZXR1cm4gcmVhc29uczsKKyAgICAgICAgfQorI2lmICFBTExPV19BTExfUkVQTEFDRUQKKyAg
ICAgICAgU0VUX1JFQVNPTl9BTkRfUkVUVVJOX0lGX05FRURFRChGbG93SGFzTm9uU3VwcG9ydGVk
Q2hpbGQsIHJlYXNvbnMsIGluY2x1ZGVSZWFzb25zKTsKKyNlbmRpZgorICAgICAgICByZXR1cm4g
cmVhc29uczsKKyAgICB9CisjZW5kaWYKKworI2lmIEFMTE9XX0lOTElORV9CTE9DSworICAgIGlm
IChpczxSZW5kZXJCbG9jaz4oY2hpbGQpKSB7CisgICAgICAgIGF1dG8mIGJsb2NrID0gZG93bmNh
c3Q8UmVuZGVyQmxvY2s+KGNoaWxkKTsKKyAgICAgICAgaWYgKCFibG9jay5pc1JlcGxhY2VkKCkg
fHwgIWJsb2NrLmlzSW5saW5lKCkpCisgICAgICAgICAgICBTRVRfUkVBU09OX0FORF9SRVRVUk5f
SUZfTkVFREVEKEZsb3dIYXNOb25TdXBwb3J0ZWRDaGlsZCwgcmVhc29ucywgaW5jbHVkZVJlYXNv
bnMpCisgICAgICAgIGlmIChibG9jay5pc0Zsb2F0aW5nKCkgfHwgYmxvY2suaXNQb3NpdGlvbmVk
KCkpCisgICAgICAgICAgICBTRVRfUkVBU09OX0FORF9SRVRVUk5fSUZfTkVFREVEKEZsb3dIYXNO
b25TdXBwb3J0ZWRDaGlsZCwgcmVhc29ucywgaW5jbHVkZVJlYXNvbnMpCisgICAgICAgIGlmIChi
bG9jay5pc1J1YnlSdW4oKSkKKyAgICAgICAgICAgIFNFVF9SRUFTT05fQU5EX1JFVFVSTl9JRl9O
RUVERUQoRmxvd0hhc05vblN1cHBvcnRlZENoaWxkLCByZWFzb25zLCBpbmNsdWRlUmVhc29ucyk7
CisKKyAgICAgICAgYXV0byYgc3R5bGUgPSBibG9jay5zdHlsZSgpOworICAgICAgICBpZiAoc3R5
bGUudmVydGljYWxBbGlnbigpICE9IFZlcnRpY2FsQWxpZ246OkJhc2VsaW5lKQorICAgICAgICAg
ICAgU0VUX1JFQVNPTl9BTkRfUkVUVVJOX0lGX05FRURFRChGbG93SGFzTm9uU3VwcG9ydGVkQ2hp
bGQsIHJlYXNvbnMsIGluY2x1ZGVSZWFzb25zKTsKKyAgICAgICAgaWYgKHN0eWxlLndpZHRoKCku
aXNQZXJjZW50KCkgfHwgc3R5bGUuaGVpZ2h0KCkuaXNQZXJjZW50KCkpCisgICAgICAgICAgICBT
RVRfUkVBU09OX0FORF9SRVRVUk5fSUZfTkVFREVEKEZsb3dIYXNOb25TdXBwb3J0ZWRDaGlsZCwg
cmVhc29ucywgaW5jbHVkZVJlYXNvbnMpOworCisgICAgICAgIHJldHVybiByZWFzb25zOworICAg
IH0KKyNlbmRpZgorCisgICAgU0VUX1JFQVNPTl9BTkRfUkVUVVJOX0lGX05FRURFRChGbG93SGFz
Tm9uU3VwcG9ydGVkQ2hpbGQsIHJlYXNvbnMsIGluY2x1ZGVSZWFzb25zKTsKKyAgICByZXR1cm4g
cmVhc29uczsKK30KKworCiBPcHRpb25TZXQ8QXZvaWRhbmNlUmVhc29uPiBjYW5Vc2VGb3JMaW5l
TGF5b3V0V2l0aFJlYXNvbihjb25zdCBSZW5kZXJCbG9ja0Zsb3cmIGZsb3csIEluY2x1ZGVSZWFz
b25zIGluY2x1ZGVSZWFzb25zKQogewogICAgIE9wdGlvblNldDxBdm9pZGFuY2VSZWFzb24+IHJl
YXNvbnM7CkBAIC0zMDksMzUgKzM4MSw5IEBAIE9wdGlvblNldDxBdm9pZGFuY2VSZWFzb24+IGNh
blVzZUZvckxpbmVMYXlvdXRXaXRoUmVhc29uKGNvbnN0IFJlbmRlckJsb2NrRmxvdyYKICAgICAv
LyBUaGlzIGN1cnJlbnRseSBjb3ZlcnMgPGJsb2NrZmxvdz4jdGV4dDwvYmxvY2tmbG93PiwgPGJs
b2NrZmxvdz4jdGV4dDxicj48L2Jsb2NrZmxvdz4gYW5kIG11dGlwbGUgKHNpYmxpbmcpIFJlbmRl
clRleHQgY2FzZXMuCiAgICAgLy8gVGhlIDxibG9ja2Zsb3c+PGlubGluZT4jdGV4dDwvaW5saW5l
PjwvYmxvY2tmbG93PiBjYXNlIGlzIGFsc28gcG9wdWxhciBhbmQgc2hvdWxkIGJlIHJlbGF0aXZl
bHkgZWFzeSB0byBjb3Zlci4KICAgICBmb3IgKGNvbnN0IGF1dG8qIGNoaWxkID0gZmxvdy5maXJz
dENoaWxkKCk7IGNoaWxkOyBjaGlsZCA9IGNoaWxkLT5uZXh0U2libGluZygpKSB7Ci0gICAgICAg
IGlmIChjaGlsZC0+c2VsZWN0aW9uU3RhdGUoKSAhPSBSZW5kZXJPYmplY3Q6OkhpZ2hsaWdodFN0
YXRlOjpOb25lKQotICAgICAgICAgICAgU0VUX1JFQVNPTl9BTkRfUkVUVVJOX0lGX05FRURFRChG
bG93Q2hpbGRJc1NlbGVjdGVkLCByZWFzb25zLCBpbmNsdWRlUmVhc29ucyk7Ci0gICAgICAgIGlm
IChpczxSZW5kZXJUZXh0PigqY2hpbGQpKSB7Ci0gICAgICAgICAgICBjb25zdCBhdXRvJiByZW5k
ZXJUZXh0ID0gZG93bmNhc3Q8UmVuZGVyVGV4dD4oKmNoaWxkKTsKLSAgICAgICAgICAgIGlmIChy
ZW5kZXJUZXh0LnRleHROb2RlKCkgJiYgIXJlbmRlclRleHQuZG9jdW1lbnQoKS5tYXJrZXJzKCku
bWFya2Vyc0ZvcigqcmVuZGVyVGV4dC50ZXh0Tm9kZSgpKS5pc0VtcHR5KCkpCi0gICAgICAgICAg
ICAgICAgU0VUX1JFQVNPTl9BTkRfUkVUVVJOX0lGX05FRURFRChGbG93SW5jbHVkZXNEb2N1bWVu
dE1hcmtlcnMsIHJlYXNvbnMsIGluY2x1ZGVSZWFzb25zKTsKLSAgICAgICAgICAgIGNvbnRpbnVl
OwotICAgICAgICB9Ci0gICAgICAgIGlmIChpczxSZW5kZXJMaW5lQnJlYWs+KCpjaGlsZCkpCi0g
ICAgICAgICAgICBjb250aW51ZTsKLSNpZiBBTExPV19JTkxJTkVfSU1BR0VTCi0gICAgICAgIGlm
IChpczxSZW5kZXJJbWFnZT4oKmNoaWxkKSkgewotICAgICAgICAgICAgYXV0byYgaW1hZ2UgPSBk
b3duY2FzdDxSZW5kZXJJbWFnZT4oKmNoaWxkKTsKLSAgICAgICAgICAgIGlmIChpbWFnZS5pbWFn
ZU1hcCgpKQotICAgICAgICAgICAgICAgIFNFVF9SRUFTT05fQU5EX1JFVFVSTl9JRl9ORUVERUQo
Rmxvd0hhc05vblN1cHBvcnRlZENoaWxkLCByZWFzb25zLCBpbmNsdWRlUmVhc29ucyk7ICAgICAg
ICAgICAgICAgIAotICAgICAgICAgICAgaWYgKGltYWdlLmlzRmxvYXRpbmcoKSB8fCBpbWFnZS5p
c1Bvc2l0aW9uZWQoKSkKLSAgICAgICAgICAgICAgICBTRVRfUkVBU09OX0FORF9SRVRVUk5fSUZf
TkVFREVEKEZsb3dIYXNOb25TdXBwb3J0ZWRDaGlsZCwgcmVhc29ucywgaW5jbHVkZVJlYXNvbnMp
OwotICAgICAgICAgICAgYXV0byYgc3R5bGUgPSBpbWFnZS5zdHlsZSgpOwotICAgICAgICAgICAg
aWYgKHN0eWxlLnZlcnRpY2FsQWxpZ24oKSAhPSBWZXJ0aWNhbEFsaWduOjpCYXNlbGluZSkKLSAg
ICAgICAgICAgICAgICBTRVRfUkVBU09OX0FORF9SRVRVUk5fSUZfTkVFREVEKEZsb3dIYXNOb25T
dXBwb3J0ZWRDaGlsZCwgcmVhc29ucywgaW5jbHVkZVJlYXNvbnMpOwotICAgICAgICAgICAgaWYg
KHN0eWxlLndpZHRoKCkuaXNQZXJjZW50KCkgfHwgc3R5bGUuaGVpZ2h0KCkuaXNQZXJjZW50KCkp
Ci0gICAgICAgICAgICAgICAgU0VUX1JFQVNPTl9BTkRfUkVUVVJOX0lGX05FRURFRChGbG93SGFz
Tm9uU3VwcG9ydGVkQ2hpbGQsIHJlYXNvbnMsIGluY2x1ZGVSZWFzb25zKTsKLSAgICAgICAgICAg
IGlmIChzdHlsZS5vYmplY3RGaXQoKSAhPSBSZW5kZXJTdHlsZTo6aW5pdGlhbE9iamVjdEZpdCgp
KQotICAgICAgICAgICAgICAgIFNFVF9SRUFTT05fQU5EX1JFVFVSTl9JRl9ORUVERUQoRmxvd0hh
c05vblN1cHBvcnRlZENoaWxkLCByZWFzb25zLCBpbmNsdWRlUmVhc29ucyk7Ci0gICAgICAgICAg
ICBjb250aW51ZTsKLSAgICAgICAgfQotI2VuZGlmCi0gICAgICAgIFNFVF9SRUFTT05fQU5EX1JF
VFVSTl9JRl9ORUVERUQoRmxvd0hhc05vblN1cHBvcnRlZENoaWxkLCByZWFzb25zLCBpbmNsdWRl
UmVhc29ucyk7Ci0gICAgICAgIGJyZWFrOworICAgICAgICBhdXRvIGNoaWxkUmVhc29ucyA9IGNh
blVzZUZvckNoaWxkKCpjaGlsZCwgaW5jbHVkZVJlYXNvbnMpOworICAgICAgICBpZiAoY2hpbGRS
ZWFzb25zKQorICAgICAgICAgICAgQUREX1JFQVNPTlNfQU5EX1JFVFVSTl9JRl9ORUVERUQoY2hp
bGRSZWFzb25zLCByZWFzb25zLCBpbmNsdWRlUmVhc29ucyk7CiAgICAgfQogICAgIGF1dG8gc3R5
bGVSZWFzb25zID0gY2FuVXNlRm9yU3R5bGUoZmxvdy5zdHlsZSgpLCBpbmNsdWRlUmVhc29ucyk7
CiAgICAgaWYgKHN0eWxlUmVhc29ucykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91
dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkxpbmVMYXlvdXQuY3BwIGIvU291cmNlL1dl
YkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uTGluZUxheW91dC5jcHAK
aW5kZXggMTE4YzJmYzJjY2EyLi4yM2QxZTYwZDk5NDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkxpbmVMYXlvdXQuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkxp
bmVMYXlvdXQuY3BwCkBAIC02OCw3ICs2OCwxMCBAQCBMaW5lTGF5b3V0Ojp+TGluZUxheW91dCgp
ID0gZGVmYXVsdDsKIAogTGluZUxheW91dCogTGluZUxheW91dDo6Y29udGFpbmluZyhSZW5kZXJP
YmplY3QmIHJlbmRlcmVyKQogewotICAgIGlmICghaXM8UmVuZGVyVGV4dD4ocmVuZGVyZXIpICYm
ICFpczxSZW5kZXJMaW5lQnJlYWs+KHJlbmRlcmVyKSAmJiAhaXM8UmVuZGVySW1hZ2U+KHJlbmRl
cmVyKSkKKyAgICBpZiAoIXJlbmRlcmVyLmlzSW5saW5lKCkpCisgICAgICAgIHJldHVybiBudWxs
cHRyOworCisgICAgaWYgKHJlbmRlcmVyLmlzUmVwbGljYSgpKQogICAgICAgICByZXR1cm4gbnVs
bHB0cjsKICAgICAKICAgICBpZiAoYXV0byogcGFyZW50ID0gcmVuZGVyZXIucGFyZW50KCkpIHsK
QEAgLTUxOSw5ICs1MjIsMjMgQEAgYm9vbCBMaW5lTGF5b3V0OjpoaXRUZXN0KGNvbnN0IEhpdFRl
c3RSZXF1ZXN0JiByZXF1ZXN0LCBIaXRUZXN0UmVzdWx0JiByZXN1bHQsIGMKIAogICAgICAgICBh
dXRvJiByZW5kZXJlciA9IG1fYm94VHJlZS5yZW5kZXJlckZvckxheW91dEJveChydW4ubGF5b3V0
Qm94KCkpOwogCi0gICAgICAgIHJlbmRlcmVyLnVwZGF0ZUhpdFRlc3RSZXN1bHQocmVzdWx0LCBs
b2NhdGlvbkluQ29udGFpbmVyLnBvaW50KCkgLSB0b0xheW91dFNpemUoYWNjdW11bGF0ZWRPZmZz
ZXQpKTsKLSAgICAgICAgaWYgKHJlc3VsdC5hZGROb2RlVG9MaXN0QmFzZWRUZXN0UmVzdWx0KHJl
bmRlcmVyLm5vZGVGb3JIaXRUZXN0KCksIHJlcXVlc3QsIGxvY2F0aW9uSW5Db250YWluZXIsIHJ1
blJlY3QpID09IEhpdFRlc3RQcm9ncmVzczo6U3RvcCkKLSAgICAgICAgICAgIHJldHVybiB0cnVl
OworICAgICAgICBpZiAoaXM8UmVuZGVyVGV4dD4ocmVuZGVyZXIpKSB7CisgICAgICAgICAgICBy
ZW5kZXJlci51cGRhdGVIaXRUZXN0UmVzdWx0KHJlc3VsdCwgbG9jYXRpb25JbkNvbnRhaW5lci5w
b2ludCgpIC0gdG9MYXlvdXRTaXplKGFjY3VtdWxhdGVkT2Zmc2V0KSk7CisgICAgICAgICAgICBp
ZiAocmVzdWx0LmFkZE5vZGVUb0xpc3RCYXNlZFRlc3RSZXN1bHQocmVuZGVyZXIubm9kZUZvckhp
dFRlc3QoKSwgcmVxdWVzdCwgbG9jYXRpb25JbkNvbnRhaW5lciwgcnVuUmVjdCkgPT0gSGl0VGVz
dFByb2dyZXNzOjpTdG9wKQorICAgICAgICAgICAgICAgIHJldHVybiB0cnVlOworICAgICAgICAg
ICAgY29udGludWU7CisgICAgICAgIH0KKworICAgICAgICBpZiAoaXM8UmVuZGVyQm94PihyZW5k
ZXJlcikpIHsKKyAgICAgICAgICAgIGF1dG8mIHJlbmRlckJveCA9IGRvd25jYXN0PFJlbmRlckJv
eD4ocmVuZGVyZXIpOworICAgICAgICAgICAgaWYgKHJlbmRlckJveC5oYXNTZWxmUGFpbnRpbmdM
YXllcigpKQorICAgICAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICAgICAgCisgICAgICAg
ICAgICBpZiAocmVuZGVyQm94LmhpdFRlc3QocmVxdWVzdCwgcmVzdWx0LCBsb2NhdGlvbkluQ29u
dGFpbmVyLCBhY2N1bXVsYXRlZE9mZnNldCkpIHsKKyAgICAgICAgICAgICAgICByZW5kZXJCb3gu
dXBkYXRlSGl0VGVzdFJlc3VsdChyZXN1bHQsIGxvY2F0aW9uSW5Db250YWluZXIucG9pbnQoKSAt
IHRvTGF5b3V0U2l6ZShhY2N1bXVsYXRlZE9mZnNldCkpOworICAgICAgICAgICAgICAgIHJldHVy
biB0cnVlOworICAgICAgICAgICAgfQorICAgICAgICB9CiAgICAgfQogCiAgICAgcmV0dXJuIGZh
bHNlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrRmxv
dy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2tGbG93LmNwcAppbmRl
eCBhNTMyZGYzZGU0YjAuLjg1Yjk5ODQzMTk5NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlckJsb2NrRmxvdy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlckJsb2NrRmxvdy5jcHAKQEAgLTM2NjksMTMgKzM2NjksMjAgQEAgdm9pZCBSZW5k
ZXJCbG9ja0Zsb3c6OmxheW91dExGQ0xpbmVzKGJvb2wgcmVsYXlvdXRDaGlsZHJlbiwgTGF5b3V0
VW5pdCYgcmVwYWludEwKICAgICAgICAgICAgIHJlbmRlcmVyLnNldE5lZWRzTGF5b3V0KE1hcmtP
bmx5VGhpcyk7CiAgICAgICAgIGlmICghcmVuZGVyZXIubmVlZHNMYXlvdXQoKSAmJiAhbmVlZHNV
cGRhdGVSZXBsYWNlZERpbWVuc2lvbnMpCiAgICAgICAgICAgICBjb250aW51ZTsKLQogICAgICAg
ICBpZiAoaXM8UmVuZGVyUmVwbGFjZWQ+KHJlbmRlcmVyKSkgewogICAgICAgICAgICAgYXV0byYg
cmVwbGFjZWQgPSBkb3duY2FzdDxSZW5kZXJSZXBsYWNlZD4ocmVuZGVyZXIpOwogICAgICAgICAg
ICAgcmVwbGFjZWQubGF5b3V0SWZOZWVkZWQoKTsKICAgICAgICAgICAgIGxheW91dEZvcm1hdHRp
bmdDb250ZXh0TGluZUxheW91dC51cGRhdGVSZXBsYWNlZERpbWVuc2lvbnMocmVwbGFjZWQpOwog
ICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgIH0KKyAgICAgICAgaWYgKGlzPFJlbmRlckJv
eD4ocmVuZGVyZXIpKSB7CisgICAgICAgICAgICBhdXRvJiBib3ggPSBkb3duY2FzdDxSZW5kZXJC
b3g+KHJlbmRlcmVyKTsKKyAgICAgICAgICAgIGJveC5sYXlvdXRJZk5lZWRlZCgpOworICAgICAg
ICAgICAgLy8gRklYTUU6IFRha2luZyB0aGUgc2FtZSBwYXRoIGFzIHJlcGxhY2VkIGZvciBub3cu
CisgICAgICAgICAgICBsYXlvdXRGb3JtYXR0aW5nQ29udGV4dExpbmVMYXlvdXQudXBkYXRlUmVw
bGFjZWREaW1lbnNpb25zKGJveCk7CisgICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgfQor
CiAgICAgICAgIHJlbmRlcmVyLmNsZWFyTmVlZHNMYXlvdXQoKTsKICAgICB9CiAKZGlmZiAtLWdp
dCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL2NvbnRyb2xsZXJzL2xheW91
dF90ZXN0X3J1bm5lci5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL2Nv
bnRyb2xsZXJzL2xheW91dF90ZXN0X3J1bm5lci5weQppbmRleCAxZmU2MGI4YzBkMWMuLjFjN2Ix
ZGYxN2IzYiAxMDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMv
Y29udHJvbGxlcnMvbGF5b3V0X3Rlc3RfcnVubmVyLnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Vi
a2l0cHkvbGF5b3V0X3Rlc3RzL2NvbnRyb2xsZXJzL2xheW91dF90ZXN0X3J1bm5lci5weQpAQCAt
MTY2LDYgKzE2Niw3IEBAIGNsYXNzIExheW91dFRlc3RSdW5uZXIob2JqZWN0KToKICAgICAgICAg
ICAgICAgICBzZWxmLl9tYXJrX2ludGVycnVwdGVkX3Rlc3RzX2FzX3NraXBwZWQocnVuX3Jlc3Vs
dHMpCiAgICAgICAgICAgICAgICAgcmFpc2UgVGVzdFJ1bkludGVycnVwdGVkRXhjZXB0aW9uKG1l
c3NhZ2UpCiAKKyAgICAgICAgc2VsZi5fb3B0aW9ucy5leGl0X2FmdGVyX25fZmFpbHVyZXMgPSBO
b25lCiAgICAgICAgIGludGVycnVwdF9pZl9hdF9mYWlsdXJlX2xpbWl0KAogICAgICAgICAgICAg
c2VsZi5fb3B0aW9ucy5leGl0X2FmdGVyX25fZmFpbHVyZXMsCiAgICAgICAgICAgICBydW5fcmVz
dWx0cy51bmV4cGVjdGVkX2ZhaWx1cmVzLAo=
</data>
<flag name="commit-queue"
          id="428722"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>412315</attachid>
            <date>2020-10-26 06:27:44 -0700</date>
            <delta_ts>2020-10-26 06:59:03 -0700</delta_ts>
            <desc>patch</desc>
            <filename>lfc-replaced-8.patch</filename>
            <type>text/plain</type>
            <size>12339</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA0ODA2MDE2YTQwZjQuLjFkZmUyNzNiYjc3OSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAt
MSwzICsxLDI5IEBACisyMDIwLTEwLTIzICBBbnR0aSBLb2l2aXN0byAgPGFudHRpQGFwcGxlLmNv
bT4KKworICAgICAgICBbTEZDXVtJbnRlZ3JhdGlvbl0gQWxsb3cgYWxsIHJlcGxhY2VkIGVsZW1l
bnRzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTgw
NzQKKworICAgICAgICBSZXZpZXdlZCBieSBaYWxhbiBCdWp0YXMuCisKKyAgICAgICAgQWRkIGEg
I2RlZmluZSB0byBhbGxvdyBhbGwgUmVuZGVyUmVwbGFjZWQgaW4gbW9kZXJuIGxpbmUgbGF5b3V0
LgorICAgICAgICBBbHNvIGFkZCBvbmUgZm9yIGlubGluZS1ibG9ja3MuCisKKyAgICAgICAgQm90
aCBhcmUgZGlzYWJsZWQgZm9yIG5vdy4KKworICAgICAgICAqIGxheW91dC9pbnRlZ3JhdGlvbi9M
YXlvdXRJbnRlZ3JhdGlvbkJveFRyZWUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0SW50
ZWdyYXRpb246OkJveFRyZWU6OmJ1aWxkVHJlZSk6CisgICAgICAgICogbGF5b3V0L2ludGVncmF0
aW9uL0xheW91dEludGVncmF0aW9uQ292ZXJhZ2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TGF5
b3V0SW50ZWdyYXRpb246OmNhblVzZUZvckNoaWxkKToKKyAgICAgICAgKFdlYkNvcmU6OkxheW91
dEludGVncmF0aW9uOjpjYW5Vc2VGb3JMaW5lTGF5b3V0V2l0aFJlYXNvbik6CisgICAgICAgICog
bGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uTGluZUxheW91dC5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpMYXlvdXRJbnRlZ3JhdGlvbjo6TGluZUxheW91dDo6Y29udGFpbmluZyk6
CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXRJbnRlZ3JhdGlvbjo6TGluZUxheW91dDo6aGl0VGVz
dCk6CisKKyAgICAgICAgSW1wbGVtZW50IGhpdCB0ZXN0aW5nLgorCisgICAgICAgICogcmVuZGVy
aW5nL1JlbmRlckJsb2NrRmxvdy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJCbG9ja0Zs
b3c6OmxheW91dExGQ0xpbmVzKToKKwogMjAyMC0xMC0yNSAgU2FtIFdlaW5pZyAgPHdlaW5pZ0Bh
cHBsZS5jb20+CiAKICAgICAgICAgUmVtb3ZlIG5vbi1zdGFuZGFyZCAnY3NzJy8nQ3NzJyBwcmVm
aXhlZCBwcm9wZXJ0aWVzIG9uIENTU1N0eWxlRGVjbGFyYXRpb24KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkJveFRyZWUuY3Bw
IGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uQm94
VHJlZS5jcHAKaW5kZXggZmU4MmNjZjdjYWVkLi5mNDMzMDdkY2M2YmMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkJveFRyZWUu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3Jh
dGlvbkJveFRyZWUuY3BwCkBAIC03MSwxMCArNzEsMTIgQEAgdm9pZCBCb3hUcmVlOjpidWlsZFRy
ZWUoKQogICAgICAgICAgICAgY2xvbmVkU3R5bGUuc2V0RmxvYXRpbmcoRmxvYXQ6Ok5vKTsKICAg
ICAgICAgICAgIGNsb25lZFN0eWxlLnNldFBvc2l0aW9uKFBvc2l0aW9uVHlwZTo6U3RhdGljKTsK
ICAgICAgICAgICAgIGNoaWxkQm94ID0gbWFrZVVuaXF1ZTxMYXlvdXQ6OkxpbmVCcmVha0JveD4o
ZG93bmNhc3Q8UmVuZGVyTGluZUJyZWFrPihjaGlsZFJlbmRlcmVyKS5pc1dCUigpLCBXVEZNb3Zl
KGNsb25lZFN0eWxlKSk7Ci0gICAgICAgIH0gZWxzZSBpZiAoaXM8UmVuZGVySW1hZ2U+KGNoaWxk
UmVuZGVyZXIpKSB7Ci0gICAgICAgICAgICBhdXRvJiBpbWFnZSA9IGRvd25jYXN0PFJlbmRlcklt
YWdlPihjaGlsZFJlbmRlcmVyKTsKLSAgICAgICAgICAgIGF1dG8gY2xvbmVkU3R5bGUgPSBSZW5k
ZXJTdHlsZTo6Y2xvbmUoaW1hZ2Uuc3R5bGUoKSk7Ci0gICAgICAgICAgICBjaGlsZEJveCA9IG1h
a2VVbmlxdWU8TGF5b3V0OjpSZXBsYWNlZEJveD4oTGF5b3V0OjpCb3g6OkVsZW1lbnRBdHRyaWJ1
dGVzIHsgTGF5b3V0OjpCb3g6OkVsZW1lbnRUeXBlOjpJbWFnZSB9LCBXVEZNb3ZlKGNsb25lZFN0
eWxlKSk7CisgICAgICAgIH0gZWxzZSBpZiAoaXM8UmVuZGVyUmVwbGFjZWQ+KGNoaWxkUmVuZGVy
ZXIpKSB7CisgICAgICAgICAgICBhdXRvIGNsb25lZFN0eWxlID0gUmVuZGVyU3R5bGU6OmNsb25l
KGNoaWxkUmVuZGVyZXIuc3R5bGUoKSk7CisgICAgICAgICAgICBjaGlsZEJveCA9IG1ha2VVbmlx
dWU8TGF5b3V0OjpSZXBsYWNlZEJveD4oTGF5b3V0OjpCb3g6OkVsZW1lbnRBdHRyaWJ1dGVzIHsg
aXM8UmVuZGVySW1hZ2U+KGNoaWxkUmVuZGVyZXIpID8gTGF5b3V0OjpCb3g6OkVsZW1lbnRUeXBl
OjpJbWFnZSA6IExheW91dDo6Qm94OjpFbGVtZW50VHlwZTo6R2VuZXJpY0VsZW1lbnQgfSwgV1RG
TW92ZShjbG9uZWRTdHlsZSkpOworICAgICAgICB9IGVsc2UgaWYgKGlzPFJlbmRlckJsb2NrPihj
aGlsZFJlbmRlcmVyKSkgeworICAgICAgICAgICAgYXV0byBjbG9uZWRTdHlsZSA9IFJlbmRlclN0
eWxlOjpjbG9uZShjaGlsZFJlbmRlcmVyLnN0eWxlKCkpOworICAgICAgICAgICAgY2hpbGRCb3gg
PSBtYWtlVW5pcXVlPExheW91dDo6UmVwbGFjZWRCb3g+KExheW91dDo6Qm94OjpFbGVtZW50QXR0
cmlidXRlcyB7IExheW91dDo6Qm94OjpFbGVtZW50VHlwZTo6R2VuZXJpY0VsZW1lbnQgfSwgV1RG
TW92ZShjbG9uZWRTdHlsZSkpOwogICAgICAgICB9CiAgICAgICAgIEFTU0VSVChjaGlsZEJveCk7
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJ
bnRlZ3JhdGlvbkNvdmVyYWdlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlv
bi9MYXlvdXRJbnRlZ3JhdGlvbkNvdmVyYWdlLmNwcAppbmRleCBmNTcxYjJlMTUzYWIuLjZkOWUy
MWJmOGRhMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xh
eW91dEludGVncmF0aW9uQ292ZXJhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9p
bnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkNvdmVyYWdlLmNwcApAQCAtNDIsNyArNDIsOSBA
QAogCiAjaWYgRU5BQkxFKExBWU9VVF9GT1JNQVRUSU5HX0NPTlRFWFQpCiAKLSNkZWZpbmUgQUxM
T1dfSU5MSU5FX0lNQUdFUyAwCisjZGVmaW5lIEFMTE9XX0lNQUdFUyAwCisjZGVmaW5lIEFMTE9X
X0FMTF9SRVBMQUNFRCAwCisjZGVmaW5lIEFMTE9XX0lOTElORV9CTE9DSyAwCiAKICNpZm5kZWYg
TkRFQlVHCiAjZGVmaW5lIFNFVF9SRUFTT05fQU5EX1JFVFVSTl9JRl9ORUVERUQocmVhc29uLCBy
ZWFzb25zLCBpbmNsdWRlUmVhc29ucykgeyBcCkBAIC0yNDUsNiArMjQ3LDc2IEBAIHN0YXRpYyBP
cHRpb25TZXQ8QXZvaWRhbmNlUmVhc29uPiBjYW5Vc2VGb3JTdHlsZShjb25zdCBSZW5kZXJTdHls
ZSYgc3R5bGUsIEluY2x1CiAgICAgcmV0dXJuIHJlYXNvbnM7CiB9CiAKK3N0YXRpYyBPcHRpb25T
ZXQ8QXZvaWRhbmNlUmVhc29uPiBjYW5Vc2VGb3JDaGlsZChjb25zdCBSZW5kZXJPYmplY3QmIGNo
aWxkLCBJbmNsdWRlUmVhc29ucyBpbmNsdWRlUmVhc29ucykKK3sKKyAgICBPcHRpb25TZXQ8QXZv
aWRhbmNlUmVhc29uPiByZWFzb25zOworICAgIGlmIChjaGlsZC5zZWxlY3Rpb25TdGF0ZSgpICE9
IFJlbmRlck9iamVjdDo6SGlnaGxpZ2h0U3RhdGU6Ok5vbmUpCisgICAgICAgIFNFVF9SRUFTT05f
QU5EX1JFVFVSTl9JRl9ORUVERUQoRmxvd0NoaWxkSXNTZWxlY3RlZCwgcmVhc29ucywgaW5jbHVk
ZVJlYXNvbnMpOworICAgIGlmIChpczxSZW5kZXJUZXh0PihjaGlsZCkpIHsKKyAgICAgICAgY29u
c3QgYXV0byYgcmVuZGVyVGV4dCA9IGRvd25jYXN0PFJlbmRlclRleHQ+KGNoaWxkKTsKKyAgICAg
ICAgaWYgKHJlbmRlclRleHQudGV4dE5vZGUoKSAmJiAhcmVuZGVyVGV4dC5kb2N1bWVudCgpLm1h
cmtlcnMoKS5tYXJrZXJzRm9yKCpyZW5kZXJUZXh0LnRleHROb2RlKCkpLmlzRW1wdHkoKSkKKyAg
ICAgICAgICAgIFNFVF9SRUFTT05fQU5EX1JFVFVSTl9JRl9ORUVERUQoRmxvd0luY2x1ZGVzRG9j
dW1lbnRNYXJrZXJzLCByZWFzb25zLCBpbmNsdWRlUmVhc29ucyk7CisgICAgICAgIHJldHVybiBy
ZWFzb25zOworICAgIH0KKworICAgIGlmIChpczxSZW5kZXJMaW5lQnJlYWs+KGNoaWxkKSkKKyAg
ICAgICAgcmV0dXJuIHJlYXNvbnM7CisKKyNpZiBBTExPV19JTUFHRVMgfHwgQUxMT1dfQUxMX1JF
UExBQ0VECisgICAgaWYgKGlzPFJlbmRlclJlcGxhY2VkPihjaGlsZCkpIHsKKyAgICAgICAgYXV0
byYgcmVwbGFjZWQgPSBkb3duY2FzdDxSZW5kZXJSZXBsYWNlZD4oY2hpbGQpOworICAgICAgICBp
ZiAocmVwbGFjZWQuaXNGbG9hdGluZygpIHx8IHJlcGxhY2VkLmlzUG9zaXRpb25lZCgpKQorICAg
ICAgICAgICAgU0VUX1JFQVNPTl9BTkRfUkVUVVJOX0lGX05FRURFRChGbG93SGFzTm9uU3VwcG9y
dGVkQ2hpbGQsIHJlYXNvbnMsIGluY2x1ZGVSZWFzb25zKQorCisgICAgICAgIGlmIChyZXBsYWNl
ZC5pc1NWR1Jvb3QoKSkKKyAgICAgICAgICAgIFNFVF9SRUFTT05fQU5EX1JFVFVSTl9JRl9ORUVE
RUQoRmxvd0hhc05vblN1cHBvcnRlZENoaWxkLCByZWFzb25zLCBpbmNsdWRlUmVhc29ucyk7CisK
KyAgICAgICAgYXV0byYgc3R5bGUgPSByZXBsYWNlZC5zdHlsZSgpOworICAgICAgICBpZiAoc3R5
bGUudmVydGljYWxBbGlnbigpICE9IFZlcnRpY2FsQWxpZ246OkJhc2VsaW5lKQorICAgICAgICAg
ICAgU0VUX1JFQVNPTl9BTkRfUkVUVVJOX0lGX05FRURFRChGbG93SGFzTm9uU3VwcG9ydGVkQ2hp
bGQsIHJlYXNvbnMsIGluY2x1ZGVSZWFzb25zKTsKKyAgICAgICAgaWYgKHN0eWxlLndpZHRoKCku
aXNQZXJjZW50KCkgfHwgc3R5bGUuaGVpZ2h0KCkuaXNQZXJjZW50KCkpCisgICAgICAgICAgICBT
RVRfUkVBU09OX0FORF9SRVRVUk5fSUZfTkVFREVEKEZsb3dIYXNOb25TdXBwb3J0ZWRDaGlsZCwg
cmVhc29ucywgaW5jbHVkZVJlYXNvbnMpOworICAgICAgICBpZiAoc3R5bGUub2JqZWN0Rml0KCkg
IT0gUmVuZGVyU3R5bGU6OmluaXRpYWxPYmplY3RGaXQoKSkKKyAgICAgICAgICAgIFNFVF9SRUFT
T05fQU5EX1JFVFVSTl9JRl9ORUVERUQoRmxvd0hhc05vblN1cHBvcnRlZENoaWxkLCByZWFzb25z
LCBpbmNsdWRlUmVhc29ucyk7CisKKyAgICAgICAgaWYgKGlzPFJlbmRlckltYWdlPihyZXBsYWNl
ZCkpIHsKKyAgICAgICAgICAgIGF1dG8mIGltYWdlID0gZG93bmNhc3Q8UmVuZGVySW1hZ2U+KHJl
cGxhY2VkKTsKKyAgICAgICAgICAgIGlmIChpbWFnZS5pbWFnZU1hcCgpKQorICAgICAgICAgICAg
ICAgIFNFVF9SRUFTT05fQU5EX1JFVFVSTl9JRl9ORUVERUQoRmxvd0hhc05vblN1cHBvcnRlZENo
aWxkLCByZWFzb25zLCBpbmNsdWRlUmVhc29ucyk7CisgICAgICAgICAgICByZXR1cm4gcmVhc29u
czsKKyAgICAgICAgfQorI2lmICFBTExPV19BTExfUkVQTEFDRUQKKyAgICAgICAgU0VUX1JFQVNP
Tl9BTkRfUkVUVVJOX0lGX05FRURFRChGbG93SGFzTm9uU3VwcG9ydGVkQ2hpbGQsIHJlYXNvbnMs
IGluY2x1ZGVSZWFzb25zKTsKKyNlbmRpZgorICAgICAgICByZXR1cm4gcmVhc29uczsKKyAgICB9
CisjZW5kaWYKKworI2lmIEFMTE9XX0lOTElORV9CTE9DSworICAgIGlmIChpczxSZW5kZXJCbG9j
az4oY2hpbGQpKSB7CisgICAgICAgIGF1dG8mIGJsb2NrID0gZG93bmNhc3Q8UmVuZGVyQmxvY2s+
KGNoaWxkKTsKKyAgICAgICAgaWYgKCFibG9jay5pc1JlcGxhY2VkKCkgfHwgIWJsb2NrLmlzSW5s
aW5lKCkpCisgICAgICAgICAgICBTRVRfUkVBU09OX0FORF9SRVRVUk5fSUZfTkVFREVEKEZsb3dI
YXNOb25TdXBwb3J0ZWRDaGlsZCwgcmVhc29ucywgaW5jbHVkZVJlYXNvbnMpCisgICAgICAgIGlm
IChibG9jay5pc0Zsb2F0aW5nKCkgfHwgYmxvY2suaXNQb3NpdGlvbmVkKCkpCisgICAgICAgICAg
ICBTRVRfUkVBU09OX0FORF9SRVRVUk5fSUZfTkVFREVEKEZsb3dIYXNOb25TdXBwb3J0ZWRDaGls
ZCwgcmVhc29ucywgaW5jbHVkZVJlYXNvbnMpCisgICAgICAgIGlmIChibG9jay5pc1J1YnlSdW4o
KSkKKyAgICAgICAgICAgIFNFVF9SRUFTT05fQU5EX1JFVFVSTl9JRl9ORUVERUQoRmxvd0hhc05v
blN1cHBvcnRlZENoaWxkLCByZWFzb25zLCBpbmNsdWRlUmVhc29ucyk7CisKKyAgICAgICAgYXV0
byYgc3R5bGUgPSBibG9jay5zdHlsZSgpOworICAgICAgICBpZiAoc3R5bGUudmVydGljYWxBbGln
bigpICE9IFZlcnRpY2FsQWxpZ246OkJhc2VsaW5lKQorICAgICAgICAgICAgU0VUX1JFQVNPTl9B
TkRfUkVUVVJOX0lGX05FRURFRChGbG93SGFzTm9uU3VwcG9ydGVkQ2hpbGQsIHJlYXNvbnMsIGlu
Y2x1ZGVSZWFzb25zKTsKKyAgICAgICAgaWYgKHN0eWxlLndpZHRoKCkuaXNQZXJjZW50KCkgfHwg
c3R5bGUuaGVpZ2h0KCkuaXNQZXJjZW50KCkpCisgICAgICAgICAgICBTRVRfUkVBU09OX0FORF9S
RVRVUk5fSUZfTkVFREVEKEZsb3dIYXNOb25TdXBwb3J0ZWRDaGlsZCwgcmVhc29ucywgaW5jbHVk
ZVJlYXNvbnMpOworCisgICAgICAgIHJldHVybiByZWFzb25zOworICAgIH0KKyNlbmRpZgorCisg
ICAgU0VUX1JFQVNPTl9BTkRfUkVUVVJOX0lGX05FRURFRChGbG93SGFzTm9uU3VwcG9ydGVkQ2hp
bGQsIHJlYXNvbnMsIGluY2x1ZGVSZWFzb25zKTsKKyAgICByZXR1cm4gcmVhc29uczsKK30KKwor
CiBPcHRpb25TZXQ8QXZvaWRhbmNlUmVhc29uPiBjYW5Vc2VGb3JMaW5lTGF5b3V0V2l0aFJlYXNv
bihjb25zdCBSZW5kZXJCbG9ja0Zsb3cmIGZsb3csIEluY2x1ZGVSZWFzb25zIGluY2x1ZGVSZWFz
b25zKQogewogICAgIE9wdGlvblNldDxBdm9pZGFuY2VSZWFzb24+IHJlYXNvbnM7CkBAIC0zMDks
MzUgKzM4MSw5IEBAIE9wdGlvblNldDxBdm9pZGFuY2VSZWFzb24+IGNhblVzZUZvckxpbmVMYXlv
dXRXaXRoUmVhc29uKGNvbnN0IFJlbmRlckJsb2NrRmxvdyYKICAgICAvLyBUaGlzIGN1cnJlbnRs
eSBjb3ZlcnMgPGJsb2NrZmxvdz4jdGV4dDwvYmxvY2tmbG93PiwgPGJsb2NrZmxvdz4jdGV4dDxi
cj48L2Jsb2NrZmxvdz4gYW5kIG11dGlwbGUgKHNpYmxpbmcpIFJlbmRlclRleHQgY2FzZXMuCiAg
ICAgLy8gVGhlIDxibG9ja2Zsb3c+PGlubGluZT4jdGV4dDwvaW5saW5lPjwvYmxvY2tmbG93PiBj
YXNlIGlzIGFsc28gcG9wdWxhciBhbmQgc2hvdWxkIGJlIHJlbGF0aXZlbHkgZWFzeSB0byBjb3Zl
ci4KICAgICBmb3IgKGNvbnN0IGF1dG8qIGNoaWxkID0gZmxvdy5maXJzdENoaWxkKCk7IGNoaWxk
OyBjaGlsZCA9IGNoaWxkLT5uZXh0U2libGluZygpKSB7Ci0gICAgICAgIGlmIChjaGlsZC0+c2Vs
ZWN0aW9uU3RhdGUoKSAhPSBSZW5kZXJPYmplY3Q6OkhpZ2hsaWdodFN0YXRlOjpOb25lKQotICAg
ICAgICAgICAgU0VUX1JFQVNPTl9BTkRfUkVUVVJOX0lGX05FRURFRChGbG93Q2hpbGRJc1NlbGVj
dGVkLCByZWFzb25zLCBpbmNsdWRlUmVhc29ucyk7Ci0gICAgICAgIGlmIChpczxSZW5kZXJUZXh0
PigqY2hpbGQpKSB7Ci0gICAgICAgICAgICBjb25zdCBhdXRvJiByZW5kZXJUZXh0ID0gZG93bmNh
c3Q8UmVuZGVyVGV4dD4oKmNoaWxkKTsKLSAgICAgICAgICAgIGlmIChyZW5kZXJUZXh0LnRleHRO
b2RlKCkgJiYgIXJlbmRlclRleHQuZG9jdW1lbnQoKS5tYXJrZXJzKCkubWFya2Vyc0ZvcigqcmVu
ZGVyVGV4dC50ZXh0Tm9kZSgpKS5pc0VtcHR5KCkpCi0gICAgICAgICAgICAgICAgU0VUX1JFQVNP
Tl9BTkRfUkVUVVJOX0lGX05FRURFRChGbG93SW5jbHVkZXNEb2N1bWVudE1hcmtlcnMsIHJlYXNv
bnMsIGluY2x1ZGVSZWFzb25zKTsKLSAgICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICB9Ci0g
ICAgICAgIGlmIChpczxSZW5kZXJMaW5lQnJlYWs+KCpjaGlsZCkpCi0gICAgICAgICAgICBjb250
aW51ZTsKLSNpZiBBTExPV19JTkxJTkVfSU1BR0VTCi0gICAgICAgIGlmIChpczxSZW5kZXJJbWFn
ZT4oKmNoaWxkKSkgewotICAgICAgICAgICAgYXV0byYgaW1hZ2UgPSBkb3duY2FzdDxSZW5kZXJJ
bWFnZT4oKmNoaWxkKTsKLSAgICAgICAgICAgIGlmIChpbWFnZS5pbWFnZU1hcCgpKQotICAgICAg
ICAgICAgICAgIFNFVF9SRUFTT05fQU5EX1JFVFVSTl9JRl9ORUVERUQoRmxvd0hhc05vblN1cHBv
cnRlZENoaWxkLCByZWFzb25zLCBpbmNsdWRlUmVhc29ucyk7ICAgICAgICAgICAgICAgIAotICAg
ICAgICAgICAgaWYgKGltYWdlLmlzRmxvYXRpbmcoKSB8fCBpbWFnZS5pc1Bvc2l0aW9uZWQoKSkK
LSAgICAgICAgICAgICAgICBTRVRfUkVBU09OX0FORF9SRVRVUk5fSUZfTkVFREVEKEZsb3dIYXNO
b25TdXBwb3J0ZWRDaGlsZCwgcmVhc29ucywgaW5jbHVkZVJlYXNvbnMpOwotICAgICAgICAgICAg
YXV0byYgc3R5bGUgPSBpbWFnZS5zdHlsZSgpOwotICAgICAgICAgICAgaWYgKHN0eWxlLnZlcnRp
Y2FsQWxpZ24oKSAhPSBWZXJ0aWNhbEFsaWduOjpCYXNlbGluZSkKLSAgICAgICAgICAgICAgICBT
RVRfUkVBU09OX0FORF9SRVRVUk5fSUZfTkVFREVEKEZsb3dIYXNOb25TdXBwb3J0ZWRDaGlsZCwg
cmVhc29ucywgaW5jbHVkZVJlYXNvbnMpOwotICAgICAgICAgICAgaWYgKHN0eWxlLndpZHRoKCku
aXNQZXJjZW50KCkgfHwgc3R5bGUuaGVpZ2h0KCkuaXNQZXJjZW50KCkpCi0gICAgICAgICAgICAg
ICAgU0VUX1JFQVNPTl9BTkRfUkVUVVJOX0lGX05FRURFRChGbG93SGFzTm9uU3VwcG9ydGVkQ2hp
bGQsIHJlYXNvbnMsIGluY2x1ZGVSZWFzb25zKTsKLSAgICAgICAgICAgIGlmIChzdHlsZS5vYmpl
Y3RGaXQoKSAhPSBSZW5kZXJTdHlsZTo6aW5pdGlhbE9iamVjdEZpdCgpKQotICAgICAgICAgICAg
ICAgIFNFVF9SRUFTT05fQU5EX1JFVFVSTl9JRl9ORUVERUQoRmxvd0hhc05vblN1cHBvcnRlZENo
aWxkLCByZWFzb25zLCBpbmNsdWRlUmVhc29ucyk7Ci0gICAgICAgICAgICBjb250aW51ZTsKLSAg
ICAgICAgfQotI2VuZGlmCi0gICAgICAgIFNFVF9SRUFTT05fQU5EX1JFVFVSTl9JRl9ORUVERUQo
Rmxvd0hhc05vblN1cHBvcnRlZENoaWxkLCByZWFzb25zLCBpbmNsdWRlUmVhc29ucyk7Ci0gICAg
ICAgIGJyZWFrOworICAgICAgICBhdXRvIGNoaWxkUmVhc29ucyA9IGNhblVzZUZvckNoaWxkKCpj
aGlsZCwgaW5jbHVkZVJlYXNvbnMpOworICAgICAgICBpZiAoY2hpbGRSZWFzb25zKQorICAgICAg
ICAgICAgQUREX1JFQVNPTlNfQU5EX1JFVFVSTl9JRl9ORUVERUQoY2hpbGRSZWFzb25zLCByZWFz
b25zLCBpbmNsdWRlUmVhc29ucyk7CiAgICAgfQogICAgIGF1dG8gc3R5bGVSZWFzb25zID0gY2Fu
VXNlRm9yU3R5bGUoZmxvdy5zdHlsZSgpLCBpbmNsdWRlUmVhc29ucyk7CiAgICAgaWYgKHN0eWxl
UmVhc29ucykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9M
YXlvdXRJbnRlZ3JhdGlvbkxpbmVMYXlvdXQuY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2lu
dGVncmF0aW9uL0xheW91dEludGVncmF0aW9uTGluZUxheW91dC5jcHAKaW5kZXggMTE4YzJmYzJj
Y2EyLi4yM2QxZTYwZDk5NDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRl
Z3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkxpbmVMYXlvdXQuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkxpbmVMYXlvdXQuY3BwCkBA
IC02OCw3ICs2OCwxMCBAQCBMaW5lTGF5b3V0Ojp+TGluZUxheW91dCgpID0gZGVmYXVsdDsKIAog
TGluZUxheW91dCogTGluZUxheW91dDo6Y29udGFpbmluZyhSZW5kZXJPYmplY3QmIHJlbmRlcmVy
KQogewotICAgIGlmICghaXM8UmVuZGVyVGV4dD4ocmVuZGVyZXIpICYmICFpczxSZW5kZXJMaW5l
QnJlYWs+KHJlbmRlcmVyKSAmJiAhaXM8UmVuZGVySW1hZ2U+KHJlbmRlcmVyKSkKKyAgICBpZiAo
IXJlbmRlcmVyLmlzSW5saW5lKCkpCisgICAgICAgIHJldHVybiBudWxscHRyOworCisgICAgaWYg
KHJlbmRlcmVyLmlzUmVwbGljYSgpKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICAKICAg
ICBpZiAoYXV0byogcGFyZW50ID0gcmVuZGVyZXIucGFyZW50KCkpIHsKQEAgLTUxOSw5ICs1MjIs
MjMgQEAgYm9vbCBMaW5lTGF5b3V0OjpoaXRUZXN0KGNvbnN0IEhpdFRlc3RSZXF1ZXN0JiByZXF1
ZXN0LCBIaXRUZXN0UmVzdWx0JiByZXN1bHQsIGMKIAogICAgICAgICBhdXRvJiByZW5kZXJlciA9
IG1fYm94VHJlZS5yZW5kZXJlckZvckxheW91dEJveChydW4ubGF5b3V0Qm94KCkpOwogCi0gICAg
ICAgIHJlbmRlcmVyLnVwZGF0ZUhpdFRlc3RSZXN1bHQocmVzdWx0LCBsb2NhdGlvbkluQ29udGFp
bmVyLnBvaW50KCkgLSB0b0xheW91dFNpemUoYWNjdW11bGF0ZWRPZmZzZXQpKTsKLSAgICAgICAg
aWYgKHJlc3VsdC5hZGROb2RlVG9MaXN0QmFzZWRUZXN0UmVzdWx0KHJlbmRlcmVyLm5vZGVGb3JI
aXRUZXN0KCksIHJlcXVlc3QsIGxvY2F0aW9uSW5Db250YWluZXIsIHJ1blJlY3QpID09IEhpdFRl
c3RQcm9ncmVzczo6U3RvcCkKLSAgICAgICAgICAgIHJldHVybiB0cnVlOworICAgICAgICBpZiAo
aXM8UmVuZGVyVGV4dD4ocmVuZGVyZXIpKSB7CisgICAgICAgICAgICByZW5kZXJlci51cGRhdGVI
aXRUZXN0UmVzdWx0KHJlc3VsdCwgbG9jYXRpb25JbkNvbnRhaW5lci5wb2ludCgpIC0gdG9MYXlv
dXRTaXplKGFjY3VtdWxhdGVkT2Zmc2V0KSk7CisgICAgICAgICAgICBpZiAocmVzdWx0LmFkZE5v
ZGVUb0xpc3RCYXNlZFRlc3RSZXN1bHQocmVuZGVyZXIubm9kZUZvckhpdFRlc3QoKSwgcmVxdWVz
dCwgbG9jYXRpb25JbkNvbnRhaW5lciwgcnVuUmVjdCkgPT0gSGl0VGVzdFByb2dyZXNzOjpTdG9w
KQorICAgICAgICAgICAgICAgIHJldHVybiB0cnVlOworICAgICAgICAgICAgY29udGludWU7Cisg
ICAgICAgIH0KKworICAgICAgICBpZiAoaXM8UmVuZGVyQm94PihyZW5kZXJlcikpIHsKKyAgICAg
ICAgICAgIGF1dG8mIHJlbmRlckJveCA9IGRvd25jYXN0PFJlbmRlckJveD4ocmVuZGVyZXIpOwor
ICAgICAgICAgICAgaWYgKHJlbmRlckJveC5oYXNTZWxmUGFpbnRpbmdMYXllcigpKQorICAgICAg
ICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICAgICAgCisgICAgICAgICAgICBpZiAocmVuZGVy
Qm94LmhpdFRlc3QocmVxdWVzdCwgcmVzdWx0LCBsb2NhdGlvbkluQ29udGFpbmVyLCBhY2N1bXVs
YXRlZE9mZnNldCkpIHsKKyAgICAgICAgICAgICAgICByZW5kZXJCb3gudXBkYXRlSGl0VGVzdFJl
c3VsdChyZXN1bHQsIGxvY2F0aW9uSW5Db250YWluZXIucG9pbnQoKSAtIHRvTGF5b3V0U2l6ZShh
Y2N1bXVsYXRlZE9mZnNldCkpOworICAgICAgICAgICAgICAgIHJldHVybiB0cnVlOworICAgICAg
ICAgICAgfQorICAgICAgICB9CiAgICAgfQogCiAgICAgcmV0dXJuIGZhbHNlOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrRmxvdy5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2tGbG93LmNwcAppbmRleCBhNTMyZGYzZGU0YjAu
LmNjODE5NTkwZTI5ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
ckJsb2NrRmxvdy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2Nr
Rmxvdy5jcHAKQEAgLTM2NzYsNiArMzY3NiwxNCBAQCB2b2lkIFJlbmRlckJsb2NrRmxvdzo6bGF5
b3V0TEZDTGluZXMoYm9vbCByZWxheW91dENoaWxkcmVuLCBMYXlvdXRVbml0JiByZXBhaW50TAog
ICAgICAgICAgICAgbGF5b3V0Rm9ybWF0dGluZ0NvbnRleHRMaW5lTGF5b3V0LnVwZGF0ZVJlcGxh
Y2VkRGltZW5zaW9ucyhyZXBsYWNlZCk7CiAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAg
fQorICAgICAgICBpZiAoaXM8UmVuZGVyQmxvY2s+KHJlbmRlcmVyKSkgeworICAgICAgICAgICAg
YXV0byYgYmxvY2sgPSBkb3duY2FzdDxSZW5kZXJCbG9jaz4ocmVuZGVyZXIpOworICAgICAgICAg
ICAgYmxvY2subGF5b3V0SWZOZWVkZWQoKTsKKyAgICAgICAgICAgIC8vIEZJWE1FOiBUYWtpbmcg
dGhlIHNhbWUgcGF0aCBhcyByZXBsYWNlZCBmb3Igbm93LgorICAgICAgICAgICAgbGF5b3V0Rm9y
bWF0dGluZ0NvbnRleHRMaW5lTGF5b3V0LnVwZGF0ZVJlcGxhY2VkRGltZW5zaW9ucyhibG9jayk7
CisgICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgfQorCiAgICAgICAgIHJlbmRlcmVyLmNs
ZWFyTmVlZHNMYXlvdXQoKTsKICAgICB9CiAK
</data>

          </attachment>
      

    </bug>

</bugzilla>