<?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>231561</bug_id>
          
          <creation_ts>2021-10-12 00:08:28 -0700</creation_ts>
          <short_desc>[LFC][Integration] Add support for painting inline box decorations</short_desc>
          <delta_ts>2021-10-12 08:45:55 -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>
          
          <blocked>231556</blocked>
    
    <blocked>231562</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Antti Koivisto">koivisto</reporter>
          <assigned_to name="Antti Koivisto">koivisto</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>changseok</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</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>1803009</commentid>
    <comment_count>0</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2021-10-12 00:08:28 -0700</bug_when>
    <thetext>Borders, backgrounds etc</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1803010</commentid>
    <comment_count>1</comment_count>
      <attachid>440902</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2021-10-12 00:23:42 -0700</bug_when>
    <thetext>Created attachment 440902
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1803053</commentid>
    <comment_count>2</comment_count>
      <attachid>440914</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2021-10-12 02:50:42 -0700</bug_when>
    <thetext>Created attachment 440914
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1803085</commentid>
    <comment_count>3</comment_count>
      <attachid>440914</attachid>
    <who name="alan">zalan</who>
    <bug_when>2021-10-12 06:19:05 -0700</bug_when>
    <thetext>Comment on attachment 440914
Patch

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

&gt; Source/WebCore/ChangeLog:27
&gt; +        (WebCore::LayoutIntegration::LineLayout::paintTextBoxUsingPhysicalCoordinates): Deleted.

InlineBoxPainter does the coordinate flipping now?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1803091</commentid>
    <comment_count>4</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2021-10-12 07:07:51 -0700</bug_when>
    <thetext>&gt; InlineBoxPainter does the coordinate flipping now?

Always did.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1803094</commentid>
    <comment_count>5</comment_count>
      <attachid>440925</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2021-10-12 07:09:19 -0700</bug_when>
    <thetext>Created attachment 440925
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1803133</commentid>
    <comment_count>6</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-10-12 08:44:05 -0700</bug_when>
    <thetext>Committed r283981 (242827@main): &lt;https://commits.webkit.org/242827@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 440925.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1803137</commentid>
    <comment_count>7</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-10-12 08:45:55 -0700</bug_when>
    <thetext>&lt;rdar://problem/84148970&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>440902</attachid>
            <date>2021-10-12 00:23:42 -0700</date>
            <delta_ts>2021-10-12 02:50:36 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-231561-20211012102341.patch</filename>
            <type>text/plain</type>
            <size>12891</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgzOTAwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzUzNjM0YjcwYTQyNjdj
YzUwMmZiZWYzZTI3Y2EwZGU3ZmM1ODIzMy4uNTQyZTVmZDUxZDZkYjJhZDIxZmRlMmY4MjczNTUw
YjIwNTcyMmFkMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQxIEBACisyMDIxLTEwLTEyICBBbnR0
aSBLb2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KKworICAgICAgICBbTEZDXVtJbnRlZ3JhdGlv
bl0gQWRkIHN1cHBvcnQgZm9yIHBhaW50aW5nIGlubGluZSBib3ggZGVjb3JhdGlvbnMKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMTU2MQorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBjb2RlIGZvciBw
YWludGluZyBpbmxpbmUgYm94IGJhY2tncm91bmRzIGFuZCBib3JkZXJzIHdpdGggSW5saW5lQm94
UGFpbnRlci4KKyAgICAgICAgVGhpcyBwYXRjaCBkb2VzIG5vdCBlbmFibGUgYW55dGhpbmcgbmV3
IHlldC4KKworICAgICAgICAqIGxheW91dC9pbnRlZ3JhdGlvbi9JbmxpbmVJdGVyYXRvcklubGlu
ZUJveC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbmxpbmVJdGVyYXRvcjo6aW5saW5lQm94Rm9y
KToKKyAgICAgICAgKiBsYXlvdXQvaW50ZWdyYXRpb24vSW5saW5lSXRlcmF0b3JJbmxpbmVCb3gu
aDoKKyAgICAgICAgKiBsYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25Db3ZlcmFn
ZS5jcHA6CisKKyAgICAgICAgQWRkIGEgbmV3IGZsYWcgZm9yIGJhY2tncm91bmQtY2xpcDp0ZXh0
IHdoaWNoIGlzIG5vdCB5ZXQgc3VwcG9ydGVkIGJ5IGNvZGUuCisgICAgICAgIEl0IGJlY29tZXMg
cmVsZXZhbnQgd2hlbiBiYWNrZ3JvdW5kIHBhaW50aW5nIGlzIGVuYWJsZWQuCisKKyAgICAgICAg
KFdlYkNvcmU6OkxheW91dEludGVncmF0aW9uOjpwcmludFJlYXNvbik6CisgICAgICAgIChXZWJD
b3JlOjpMYXlvdXRJbnRlZ3JhdGlvbjo6Y2FuVXNlRm9yUmVuZGVySW5saW5lQ2hpbGQpOgorICAg
ICAgICAqIGxheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkNvdmVyYWdlLmg6Cisg
ICAgICAgICogbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uTGluZUxheW91dC5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXRJbnRlZ3JhdGlvbjo6TGluZUxheW91dDo6cGFp
bnQpOgorCisgICAgICAgIFBhaW50IGlubGluZSBib3hlcyB1c2luZyBJbmxpbmVCb3hQYWludGVy
LgorCisgICAgICAgIChXZWJDb3JlOjpMYXlvdXRJbnRlZ3JhdGlvbjo6TGluZUxheW91dDo6cGFp
bnRUZXh0Qm94VXNpbmdQaHlzaWNhbENvb3JkaW5hdGVzKTogRGVsZXRlZC4KKworICAgICAgICBT
aW1wbGlmeSB0aGUgaW50ZXJzZWN0aW9uIGNvZGUsIG1ha2UgaXQgYWxzbyB0YWtlIHggY29vcmRp
bmF0ZSBpbnRvIGFjY291bnQgYW5kIG1vdmUgaXQgdG8gcGFpbnQoKS4KKworICAgICAgICAqIGxh
eW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkxpbmVMYXlvdXQuaDoKKyAgICAgICAg
KiByZW5kZXJpbmcvSW5saW5lQm94UGFpbnRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbmxp
bmVCb3hQYWludGVyOjpJbmxpbmVCb3hQYWludGVyKToKKworICAgICAgICBUYWtlIElubGluZURp
c3BsYXk6OkJveC4KKworICAgICAgICAqIHJlbmRlcmluZy9JbmxpbmVCb3hQYWludGVyLmg6CisK
IDIwMjEtMTAtMTEgIFdlbnNvbiBIc2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CiAKICAg
ICAgICAgRXhwb3J0IHNvbWUgZGlzcGxheSBsaXN0IGl0ZW0gbWV0aG9kcyBmb3IgdXNlIGluIFdl
YktpdDIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9Jbmxp
bmVJdGVyYXRvcklubGluZUJveC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRp
b24vSW5saW5lSXRlcmF0b3JJbmxpbmVCb3guY3BwCmluZGV4IDMxNjE4ODQzNzAxMmZhY2ZlMDYy
ZmZjOGE5NDI0MzY0NWU1ZjY5NDMuLmU5NGY5MWRmZDdkZjc1OGJlY2MwZTgwM2VmYTY2MTIyOWFm
NDYyYzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9Jbmxp
bmVJdGVyYXRvcklubGluZUJveC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVn
cmF0aW9uL0lubGluZUl0ZXJhdG9ySW5saW5lQm94LmNwcApAQCAtOTEsNiArOTEsMTEgQEAgSW5s
aW5lQm94SXRlcmF0b3IgaW5saW5lQm94Rm9yKGNvbnN0IExlZ2FjeUlubGluZUZsb3dCb3gmIGxl
Z2FjeUlubGluZUZsb3dCb3gpCiB9CiAKICNpZiBFTkFCTEUoTEFZT1VUX0ZPUk1BVFRJTkdfQ09O
VEVYVCkKK0lubGluZUJveEl0ZXJhdG9yIGlubGluZUJveEZvcihjb25zdCBMYXlvdXRJbnRlZ3Jh
dGlvbjo6SW5saW5lQ29udGVudCYgY29udGVudCwgY29uc3QgSW5saW5lRGlzcGxheTo6Qm94JiBi
b3gpCit7CisgICAgcmV0dXJuIGlubGluZUJveEZvcihjb250ZW50LCBjb250ZW50LmluZGV4Rm9y
Qm94KGJveCkpOworfQorCiBJbmxpbmVCb3hJdGVyYXRvciBpbmxpbmVCb3hGb3IoY29uc3QgTGF5
b3V0SW50ZWdyYXRpb246OklubGluZUNvbnRlbnQmIGNvbnRlbnQsIHNpemVfdCBib3hJbmRleCkK
IHsKICAgICBBU1NFUlQoY29udGVudC5ib3hlc1tib3hJbmRleF0uaXNJbmxpbmVCb3goKSk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vSW5saW5lSXRlcmF0
b3JJbmxpbmVCb3guaCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9JbmxpbmVJ
dGVyYXRvcklubGluZUJveC5oCmluZGV4IDVhZGMwOGZjM2FhMWE0ZDI2MzllZjRiMGZhZDZiMTU0
MjJiODEyODIuLmYzN2U4NjhjMmM2NjZkNmEwYTQ5OTljOGM4YjBjN2ZiYmM3ZjUwZDcgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9JbmxpbmVJdGVyYXRvcklu
bGluZUJveC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9JbmxpbmVJ
dGVyYXRvcklubGluZUJveC5oCkBAIC02Nyw2ICs2Nyw3IEBAIHByaXZhdGU6CiAKIElubGluZUJv
eEl0ZXJhdG9yIGlubGluZUJveEZvcihjb25zdCBMZWdhY3lJbmxpbmVGbG93Qm94Jik7CiAjaWYg
RU5BQkxFKExBWU9VVF9GT1JNQVRUSU5HX0NPTlRFWFQpCitJbmxpbmVCb3hJdGVyYXRvciBpbmxp
bmVCb3hGb3IoY29uc3QgTGF5b3V0SW50ZWdyYXRpb246OklubGluZUNvbnRlbnQmLCBjb25zdCBJ
bmxpbmVEaXNwbGF5OjpCb3gmKTsKIElubGluZUJveEl0ZXJhdG9yIGlubGluZUJveEZvcihjb25z
dCBMYXlvdXRJbnRlZ3JhdGlvbjo6SW5saW5lQ29udGVudCYsIHNpemVfdCBib3hJbmRleCk7CiAj
ZW5kaWYKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xh
eW91dEludGVncmF0aW9uQ292ZXJhZ2UuY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVn
cmF0aW9uL0xheW91dEludGVncmF0aW9uQ292ZXJhZ2UuY3BwCmluZGV4IDBhYWZhYzY3NDAzNTA4
NmVhMWNlNWUwNTVjY2ZiNGIxMTQzOWJiZDYuLjRkMzkxMTllOWM0YmZjZDA0ZjFhYjJmNjk3Mzlh
YzNiNThlYjYzOTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlv
bi9MYXlvdXRJbnRlZ3JhdGlvbkNvdmVyYWdlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlv
dXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25Db3ZlcmFnZS5jcHAKQEAgLTIxMiw2ICsy
MTIsOSBAQCBzdGF0aWMgdm9pZCBwcmludFJlYXNvbihBdm9pZGFuY2VSZWFzb24gcmVhc29uLCBU
ZXh0U3RyZWFtJiBzdHJlYW0pCiAgICAgY2FzZSBBdm9pZGFuY2VSZWFzb246OklubGluZUJveEhh
c0JhY2tncm91bmQ6CiAgICAgICAgIHN0cmVhbSA8PCAiaW5saW5lIGJveCBoYXMgYmFja2dyb3Vu
ZCI7CiAgICAgICAgIGJyZWFrOworICAgIGNhc2UgQXZvaWRhbmNlUmVhc29uOjpJbmxpbmVCb3hI
YXNCYWNrZ3JvdW5kQ2xpcFRleHQ6CisgICAgICAgIHN0cmVhbSA8PCAiaW5saW5lIGJveCBoYXMg
YmFja2dyb3VuZC1jbGlwOiB0ZXh0IjsKKyAgICAgICAgYnJlYWs7CiAgICAgZGVmYXVsdDoKICAg
ICAgICAgYnJlYWs7CiAgICAgfQpAQCAtNDgxLDYgKzQ4NCw4IEBAIHN0YXRpYyBPcHRpb25TZXQ8
QXZvaWRhbmNlUmVhc29uPiBjYW5Vc2VGb3JSZW5kZXJJbmxpbmVDaGlsZChjb25zdCBSZW5kZXJJ
bmxpbmUmCiAgICAgICAgIFNFVF9SRUFTT05fQU5EX1JFVFVSTl9JRl9ORUVERUQoSW5saW5lQm94
SGFzQm9yZGVyT3JCb3JkZXJJbWFnZSwgcmVhc29ucywgaW5jbHVkZVJlYXNvbnMpOwogICAgIGlm
IChzdHlsZS5oYXNCYWNrZ3JvdW5kKCkpCiAgICAgICAgIFNFVF9SRUFTT05fQU5EX1JFVFVSTl9J
Rl9ORUVERUQoSW5saW5lQm94SGFzQmFja2dyb3VuZCwgcmVhc29ucywgaW5jbHVkZVJlYXNvbnMp
OworICAgIGlmIChzdHlsZS5iYWNrZ3JvdW5kQ2xpcCgpID09IEZpbGxCb3g6OlRleHQpCisgICAg
ICAgIFNFVF9SRUFTT05fQU5EX1JFVFVSTl9JRl9ORUVERUQoSW5saW5lQm94SGFzQmFja2dyb3Vu
ZENsaXBUZXh0LCByZWFzb25zLCBpbmNsdWRlUmVhc29ucyk7CiAgICAgaWYgKHN0eWxlLmhhc091
dGxpbmUoKSkKICAgICAgICAgU0VUX1JFQVNPTl9BTkRfUkVUVVJOX0lGX05FRURFRChDb250ZW50
SGFzT3V0bGluZSwgcmVhc29ucywgaW5jbHVkZVJlYXNvbnMpOwogICAgIGlmIChyZW5kZXJJbmxp
bmUuaXNJbkZsb3dQb3NpdGlvbmVkKCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlv
dXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25Db3ZlcmFnZS5oIGIvU291cmNlL1dlYkNv
cmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uQ292ZXJhZ2UuaAppbmRleCA3
YjBlNjQyNDdkNzMwYTMxMWNhYWU0ZGY5NTg3NDA4OGIwN2VjYTVlLi5iMWVmYjVhYWYzOWFjODMx
NmMwNDA4ZDkyMmUyYjdmNWE4NjhjZjJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sYXlv
dXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25Db3ZlcmFnZS5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkNvdmVyYWdlLmgKQEAg
LTkxLDcgKzkxLDcgQEAgZW51bSBjbGFzcyBBdm9pZGFuY2VSZWFzb24gOiB1aW50NjRfdCB7CiAg
ICAgTXVsdGlDb2x1bW5GbG93SXNGbG9hdGluZyAgICAgICAgICAgICAgICAgICAgPSAxTExVICA8
PCA1MCwKICAgICAvLyBVbnVzZWQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA9
IDFMTFUgIDw8IDUxLAogICAgIC8vIFVudXNlZCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgID0gMUxMVSAgPDwgNTIsCi0gICAgLy8gVW51c2VkICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgPSAxTExVICA8PCA1MywKKyAgICBJbmxpbmVCb3hIYXNCYWNrZ3JvdW5k
Q2xpcFRleHQgICAgICAgICAgICAgICA9IDFMTFUgIDw8IDUzLAogICAgIFVuc3VwcG9ydGVkRmll
bGRzZXQgICAgICAgICAgICAgICAgICAgICAgICAgID0gMUxMVSAgPDwgNTQsCiAgICAgQ2hpbGRC
b3hJc0Zsb2F0aW5nT3JQb3NpdGlvbmVkICAgICAgICAgICAgICAgPSAxTExVICA8PCA1NSwKICAg
ICBDb250ZW50SXNTVkcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA9IDFMTFUgIDw8
IDU2LApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91
dEludGVncmF0aW9uTGluZUxheW91dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdy
YXRpb24vTGF5b3V0SW50ZWdyYXRpb25MaW5lTGF5b3V0LmNwcAppbmRleCBlYTJiMjFiOThhNjM4
ZWIxNTNjYThkMzE2ZmNlMjRmOWIwNjQ1M2NmLi5jNDVlNzYyZDg4YzUwYmI5YTQ5YWFiMzk5ZWE3
ZmQ4MjFhZTRkNzE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRp
b24vTGF5b3V0SW50ZWdyYXRpb25MaW5lTGF5b3V0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9s
YXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25MaW5lTGF5b3V0LmNwcApAQCAtMzMs
NiArMzMsNyBAQAogI2luY2x1ZGUgIkhpdFRlc3RMb2NhdGlvbi5oIgogI2luY2x1ZGUgIkhpdFRl
c3RSZXF1ZXN0LmgiCiAjaW5jbHVkZSAiSGl0VGVzdFJlc3VsdC5oIgorI2luY2x1ZGUgIklubGlu
ZUJveFBhaW50ZXIuaCIKICNpbmNsdWRlICJJbmxpbmVEYW1hZ2UuaCIKICNpbmNsdWRlICJJbmxp
bmVGb3JtYXR0aW5nQ29udGV4dC5oIgogI2luY2x1ZGUgIklubGluZUZvcm1hdHRpbmdTdGF0ZS5o
IgpAQCAtNTA1LDE4ICs1MDYsMzkgQEAgdm9pZCBMaW5lTGF5b3V0OjpwYWludChQYWludEluZm8m
IHBhaW50SW5mbywgY29uc3QgTGF5b3V0UG9pbnQmIHBhaW50T2Zmc2V0KQogICAgIGlmIChwYWlu
dEluZm8ucGhhc2UgIT0gUGFpbnRQaGFzZTo6Rm9yZWdyb3VuZCAmJiBwYWludEluZm8ucGhhc2Ug
IT0gUGFpbnRQaGFzZTo6RXZlbnRSZWdpb24gJiYgcGFpbnRJbmZvLnBoYXNlICE9IFBhaW50UGhh
c2U6OlRleHRDbGlwICYmIHBhaW50SW5mby5waGFzZSAhPSBQYWludFBoYXNlOjpTZWxlY3Rpb24p
CiAgICAgICAgIHJldHVybjsKIAotICAgIGF1dG8gcGFpbnRSZWN0ID0gcGFpbnRJbmZvLnJlY3Q7
Ci0gICAgcGFpbnRSZWN0Lm1vdmVCeSgtcGFpbnRPZmZzZXQpOworICAgIGF1dG8gZGFtYWdlUmVj
dCA9IHBhaW50SW5mby5yZWN0OworICAgIGRhbWFnZVJlY3QubW92ZUJ5KC1wYWludE9mZnNldCk7
CiAKLSAgICBmb3IgKGF1dG8mIGJveCA6IG1faW5saW5lQ29udGVudC0+Ym94ZXNGb3JSZWN0KHBh
aW50UmVjdCkpIHsKKyAgICBhdXRvIGhhc0RhbWFnZSA9IFsmXShhdXRvJiBib3gpIHsKKyAgICAg
ICAgaWYgKGJveC5zdHlsZSgpLnZpc2liaWxpdHkoKSAhPSBWaXNpYmlsaXR5OjpWaXNpYmxlKQor
ICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICBhdXRvIHJlY3QgPSBlbmNsb3NpbmdM
YXlvdXRSZWN0KGJveC5pbmtPdmVyZmxvdygpKTsKKyAgICAgICAgZmxvdygpLmZsaXBGb3JXcml0
aW5nTW9kZShyZWN0KTsKKyAgICAgICAgcmV0dXJuIHJlY3QuaW50ZXJzZWN0cyhkYW1hZ2VSZWN0
KTsKKyAgICB9OworCisgICAgZm9yIChhdXRvJiBib3ggOiBtX2lubGluZUNvbnRlbnQtPmJveGVz
Rm9yUmVjdChkYW1hZ2VSZWN0KSkgewogICAgICAgICBpZiAoYm94LmlzTGluZUJyZWFrKCkpCiAg
ICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgaWYgKGJveC5pc0lubGluZUJveCgpKQorCisg
ICAgICAgIGlmIChib3guaXNJbmxpbmVCb3goKSkgeworICAgICAgICAgICAgaWYgKCFoYXNEYW1h
Z2UoYm94KSkKKyAgICAgICAgICAgICAgICBjb250aW51ZTsKKworICAgICAgICAgICAgSW5saW5l
Qm94UGFpbnRlciBwYWludGVyKCptX2lubGluZUNvbnRlbnQsIGJveCwgcGFpbnRJbmZvLCBwYWlu
dE9mZnNldCk7CisgICAgICAgICAgICBwYWludGVyLnBhaW50KCk7CiAgICAgICAgICAgICBjb250
aW51ZTsKKyAgICAgICAgfQorCiAgICAgICAgIGlmIChib3gudGV4dCgpKSB7Ci0gICAgICAgICAg
ICBwYWludFRleHRCb3hVc2luZ1BoeXNpY2FsQ29vcmRpbmF0ZXMocGFpbnRJbmZvLCBwYWludE9m
ZnNldCwgYm94KTsKKyAgICAgICAgICAgIGlmICghYm94LnRleHQoKS0+bGVuZ3RoKCkgfHwgIWhh
c0RhbWFnZShib3gpKQorICAgICAgICAgICAgICAgIGNvbnRpbnVlOworCisgICAgICAgICAgICBU
ZXh0Qm94UGFpbnRlciBwYWludGVyKCptX2lubGluZUNvbnRlbnQsIGJveCwgcGFpbnRJbmZvLCBw
YWludE9mZnNldCk7CisgICAgICAgICAgICBwYWludGVyLnBhaW50KCk7CiAgICAgICAgICAgICBj
b250aW51ZTsKICAgICAgICAgfQorCiAgICAgICAgIGlmIChhdXRvJiByZW5kZXJlciA9IG1fYm94
VHJlZS5yZW5kZXJlckZvckxheW91dEJveChib3gubGF5b3V0Qm94KCkpOyBpczxSZW5kZXJCb3g+
KHJlbmRlcmVyKSAmJiByZW5kZXJlci5pc1JlcGxhY2VkKCkpIHsKICAgICAgICAgICAgIGF1dG8m
IHJlbmRlckJveCA9IGRvd25jYXN0PFJlbmRlckJveD4ocmVuZGVyZXIpOwogICAgICAgICAgICAg
aWYgKCFyZW5kZXJCb3guaGFzU2VsZlBhaW50aW5nTGF5ZXIoKSAmJiBwYWludEluZm8uc2hvdWxk
UGFpbnRXaXRoaW5Sb290KHJlbmRlckJveCkpCkBAIC01OTMsNDQgKzYxNSw2IEBAIHZvaWQgTGlu
ZUxheW91dDo6Y2xlYXJJbmxpbmVDb250ZW50KCkKICAgICBtX2lubGluZUNvbnRlbnQgPSBudWxs
cHRyOwogfQogCi12b2lkIExpbmVMYXlvdXQ6OnBhaW50VGV4dEJveFVzaW5nUGh5c2ljYWxDb29y
ZGluYXRlcyhQYWludEluZm8mIHBhaW50SW5mbywgY29uc3QgTGF5b3V0UG9pbnQmIHBhaW50T2Zm
c2V0LCBjb25zdCBJbmxpbmVEaXNwbGF5OjpCb3gmIHRleHRCb3gpCi17Ci0gICAgYXV0byYgc3R5
bGUgPSB0ZXh0Qm94LnN0eWxlKCk7Ci0gICAgaWYgKHRleHRCb3guc3R5bGUoKS52aXNpYmlsaXR5
KCkgIT0gVmlzaWJpbGl0eTo6VmlzaWJsZSkKLSAgICAgICAgcmV0dXJuOwotCi0gICAgYXV0byYg
dGV4dENvbnRlbnQgPSAqdGV4dEJveC50ZXh0KCk7Ci0gICAgaWYgKCF0ZXh0Q29udGVudC5sZW5n
dGgoKSkKLSAgICAgICAgcmV0dXJuOwotCi0gICAgYXV0byYgZm9ybWF0dGluZ0NvbnRleHRSb290
ID0gZmxvdygpOwotICAgIGF1dG8gYmxvY2tJc0hvcml6b250YWxXcml0aW5nID0gZm9ybWF0dGlu
Z0NvbnRleHRSb290LnN0eWxlKCkuaXNIb3Jpem9udGFsV3JpdGluZ01vZGUoKTsKLSAgICBhdXRv
IHBoeXNpY2FsUGFpbnRPZmZzZXQgPSBwYWludE9mZnNldDsKLSAgICBpZiAoIWJsb2NrSXNIb3Jp
em9udGFsV3JpdGluZykgewotICAgICAgICAvLyBGSVhNRTogRmlndXJlIG91dCB3aHkgdGhpcyB0
cmFuc2xhdGUgaXMgcmVxdWlyZWQuCi0gICAgICAgIHBoeXNpY2FsUGFpbnRPZmZzZXQubW92ZSh7
IDAsIC10ZXh0Qm94LmxvZ2ljYWxSZWN0KCkuaGVpZ2h0KCkgfSk7Ci0gICAgfQotCi0gICAgYXV0
byBwaHlzaWNhbFJlY3QgPSBbJl0oY29uc3QgYXV0byYgcmVjdCkgLT4gRmxvYXRSZWN0IHsKLSAg
ICAgICAgaWYgKCFzdHlsZS5pc0ZsaXBwZWRCbG9ja3NXcml0aW5nTW9kZSgpKQotICAgICAgICAg
ICAgcmV0dXJuIHJlY3Q7Ci0gICAgICAgIGlmICghYmxvY2tJc0hvcml6b250YWxXcml0aW5nKQot
ICAgICAgICAgICAgcmV0dXJuIEZsb2F0UmVjdCB7IGZvcm1hdHRpbmdDb250ZXh0Um9vdC53aWR0
aCgpIC0gcmVjdC5ib3R0b20oKSwgcmVjdC5sZWZ0KCkgLCByZWN0LndpZHRoKCksIHJlY3QuaGVp
Z2h0KCkgfTsKLSAgICAgICAgQVNTRVJUX05PVF9JTVBMRU1FTlRFRF9ZRVQoKTsKLSAgICAgICAg
cmV0dXJuIHJlY3Q7Ci0gICAgfTsKLQotICAgIGF1dG8gdmlzdWFsT3ZlcmZsb3dSZWN0ID0gcGh5
c2ljYWxSZWN0KHRleHRCb3guaW5rT3ZlcmZsb3coKSk7Ci0KLSAgICBhdXRvIGRhbWFnZWRSZWN0
ID0gcGFpbnRJbmZvLnJlY3Q7Ci0gICAgZGFtYWdlZFJlY3QubW92ZUJ5KC1waHlzaWNhbFBhaW50
T2Zmc2V0KTsKLSAgICBpZiAoZGFtYWdlZFJlY3QueSgpID4gdmlzdWFsT3ZlcmZsb3dSZWN0Lm1h
eFkoKSB8fCBkYW1hZ2VkUmVjdC5tYXhZKCkgPCB2aXN1YWxPdmVyZmxvd1JlY3QueSgpKQotICAg
ICAgICByZXR1cm47Ci0KLSAgICBUZXh0Qm94UGFpbnRlciBwYWludGVyKCptX2lubGluZUNvbnRl
bnQsIHRleHRCb3gsIHBhaW50SW5mbywgcGFpbnRPZmZzZXQpOwotICAgIHBhaW50ZXIucGFpbnQo
KTsKLX0KLQogTGF5b3V0OjpJbmxpbmVEYW1hZ2UmIExpbmVMYXlvdXQ6OmVuc3VyZUxpbmVEYW1h
Z2UoKQogewogICAgIGlmICghbV9saW5lRGFtYWdlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uTGluZUxheW91dC5oIGIvU291
cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uTGluZUxheW91
dC5oCmluZGV4IGY2ZWI2YTM4NDFhNWY1NmE1NmNlOTAzM2M1ODkyMGQ2MWJmNmY2ZTQuLjkzZjEx
YTJlYTIwOWUzYzUyMjg2NDUyMjI5OGQ2N2QzZTNkYTFiMzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkxpbmVMYXlvdXQuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25M
aW5lTGF5b3V0LmgKQEAgLTEyNCw4ICsxMjQsNiBAQCBwcml2YXRlOgogICAgIElubGluZUNvbnRl
bnQmIGVuc3VyZUlubGluZUNvbnRlbnQoKTsKICAgICB2b2lkIHVwZGF0ZUxheW91dEJveERpbWVu
c2lvbnMoY29uc3QgUmVuZGVyQm94Jik7CiAKLSAgICB2b2lkIHBhaW50VGV4dEJveFVzaW5nUGh5
c2ljYWxDb29yZGluYXRlcyhQYWludEluZm8mLCBjb25zdCBMYXlvdXRQb2ludCYgcGFpbnRPZmZz
ZXQsIGNvbnN0IElubGluZURpc3BsYXk6OkJveCYpOwotCiAgICAgTGF5b3V0OjpJbmxpbmVEYW1h
Z2UmIGVuc3VyZUxpbmVEYW1hZ2UoKTsKIAogICAgIGNvbnN0IExheW91dDo6Q29udGFpbmVyQm94
JiByb290TGF5b3V0Qm94KCkgY29uc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvSW5saW5lQm94UGFpbnRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvSW5s
aW5lQm94UGFpbnRlci5jcHAKaW5kZXggZTMxNGRjMWQyZmQ2OGRlNzgwYjM0YmQ0OWYwN2M4MzZh
ZTkyN2M3Ni4uMzYwNmM3ZTNiOGRlYTdmOTM4NjNjNzJmZDhmNjJlZWNlMjhlNTVkNyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0lubGluZUJveFBhaW50ZXIuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9JbmxpbmVCb3hQYWludGVyLmNwcApAQCAtMzcsNyAr
MzcsMTkgQEAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogSW5saW5lQm94UGFpbnRlcjo6SW5saW5l
Qm94UGFpbnRlcihjb25zdCBMZWdhY3lJbmxpbmVGbG93Qm94JiBpbmxpbmVCb3gsIFBhaW50SW5m
byYgcGFpbnRJbmZvLCBjb25zdCBMYXlvdXRQb2ludCYgcGFpbnRPZmZzZXQpCi0gICAgOiBtX2lu
bGluZUJveCgqSW5saW5lSXRlcmF0b3I6OmlubGluZUJveEZvcihpbmxpbmVCb3gpKQorICAgIDog
SW5saW5lQm94UGFpbnRlcigqSW5saW5lSXRlcmF0b3I6OmlubGluZUJveEZvcihpbmxpbmVCb3gp
LCBwYWludEluZm8sIHBhaW50T2Zmc2V0KQoreworfQorCisjaWYgRU5BQkxFKExBWU9VVF9GT1JN
QVRUSU5HX0NPTlRFWFQpCitJbmxpbmVCb3hQYWludGVyOjpJbmxpbmVCb3hQYWludGVyKGNvbnN0
IExheW91dEludGVncmF0aW9uOjpJbmxpbmVDb250ZW50JiBpbmxpbmVDb250ZW50LCBjb25zdCBJ
bmxpbmVEaXNwbGF5OjpCb3gmIGJveCwgUGFpbnRJbmZvJiBwYWludEluZm8sIGNvbnN0IExheW91
dFBvaW50JiBwYWludE9mZnNldCkKKyAgICA6IElubGluZUJveFBhaW50ZXIoKklubGluZUl0ZXJh
dG9yOjppbmxpbmVCb3hGb3IoaW5saW5lQ29udGVudCwgYm94KSwgcGFpbnRJbmZvLCBwYWludE9m
ZnNldCkKK3sKK30KKyNlbmRpZgorCitJbmxpbmVCb3hQYWludGVyOjpJbmxpbmVCb3hQYWludGVy
KGNvbnN0IElubGluZUl0ZXJhdG9yOjpJbmxpbmVCb3gmIGlubGluZUJveCwgUGFpbnRJbmZvJiBw
YWludEluZm8sIGNvbnN0IExheW91dFBvaW50JiBwYWludE9mZnNldCkKKyAgICA6IG1faW5saW5l
Qm94KGlubGluZUJveCkKICAgICAsIG1fcGFpbnRJbmZvKHBhaW50SW5mbykKICAgICAsIG1fcGFp
bnRPZmZzZXQocGFpbnRPZmZzZXQpCiAgICAgLCBtX3JlbmRlcmVyKG1faW5saW5lQm94LnJlbmRl
cmVyKCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvSW5saW5lQm94UGFp
bnRlci5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0lubGluZUJveFBhaW50ZXIuaAppbmRl
eCBjNjM0MjNkYjkwMmRmZTgzZTI0ZjkyMWFmMjA1N2UyZDJkODI1MmZiLi4xZmQ1Yjg1YTdlM2U1
ZmFiYTVkYjc0ZDhmOTI2MGUxMzA3MWZjNTBiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvSW5saW5lQm94UGFpbnRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9JbmxpbmVCb3hQYWludGVyLmgKQEAgLTQyLDExICs0MiwxNiBAQCBzdHJ1Y3QgUGFpbnRJbmZv
OwogY2xhc3MgSW5saW5lQm94UGFpbnRlciB7CiBwdWJsaWM6CiAgICAgSW5saW5lQm94UGFpbnRl
cihjb25zdCBMZWdhY3lJbmxpbmVGbG93Qm94JiwgUGFpbnRJbmZvJiwgY29uc3QgTGF5b3V0UG9p
bnQmIHBhaW50T2Zmc2V0KTsKKyNpZiBFTkFCTEUoTEFZT1VUX0ZPUk1BVFRJTkdfQ09OVEVYVCkK
KyAgICBJbmxpbmVCb3hQYWludGVyKGNvbnN0IExheW91dEludGVncmF0aW9uOjpJbmxpbmVDb250
ZW50JiwgY29uc3QgSW5saW5lRGlzcGxheTo6Qm94JiwgUGFpbnRJbmZvJiwgY29uc3QgTGF5b3V0
UG9pbnQmIHBhaW50T2Zmc2V0KTsKKyNlbmRpZgogICAgIH5JbmxpbmVCb3hQYWludGVyKCk7CiAK
ICAgICB2b2lkIHBhaW50KCk7CiAKIHByaXZhdGU6CisgICAgSW5saW5lQm94UGFpbnRlcihjb25z
dCBJbmxpbmVJdGVyYXRvcjo6SW5saW5lQm94JiwgUGFpbnRJbmZvJiwgY29uc3QgTGF5b3V0UG9p
bnQmIHBhaW50T2Zmc2V0KTsKKwogICAgIHZvaWQgcGFpbnRNYXNrKCk7CiAgICAgdm9pZCBwYWlu
dERlY29yYXRpb25zKCk7CiAgICAgdm9pZCBwYWludEZpbGxMYXllcnMoY29uc3QgQ29sb3ImLCBj
b25zdCBGaWxsTGF5ZXImLCBjb25zdCBMYXlvdXRSZWN0JiBwYWludFJlY3QsIENvbXBvc2l0ZU9w
ZXJhdG9yKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>440914</attachid>
            <date>2021-10-12 02:50:42 -0700</date>
            <delta_ts>2021-10-12 07:09:14 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-231561-20211012125040.patch</filename>
            <type>text/plain</type>
            <size>13046</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgzOTAwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzUzNjM0YjcwYTQyNjdj
YzUwMmZiZWYzZTI3Y2EwZGU3ZmM1ODIzMy4uZGJhMWExYjIyMDJlNzBiOTg5OTRmNTExYWViYTE2
ZjAxY2U5ZjVhNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQxIEBACisyMDIxLTEwLTEyICBBbnR0
aSBLb2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KKworICAgICAgICBbTEZDXVtJbnRlZ3JhdGlv
bl0gQWRkIHN1cHBvcnQgZm9yIHBhaW50aW5nIGlubGluZSBib3ggZGVjb3JhdGlvbnMKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMTU2MQorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBjb2RlIGZvciBw
YWludGluZyBpbmxpbmUgYm94IGJhY2tncm91bmRzIGFuZCBib3JkZXJzIHdpdGggSW5saW5lQm94
UGFpbnRlci4KKyAgICAgICAgVGhpcyBwYXRjaCBkb2VzIG5vdCBlbmFibGUgYW55dGhpbmcgbmV3
IHlldC4KKworICAgICAgICAqIGxheW91dC9pbnRlZ3JhdGlvbi9JbmxpbmVJdGVyYXRvcklubGlu
ZUJveC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbmxpbmVJdGVyYXRvcjo6aW5saW5lQm94Rm9y
KToKKyAgICAgICAgKiBsYXlvdXQvaW50ZWdyYXRpb24vSW5saW5lSXRlcmF0b3JJbmxpbmVCb3gu
aDoKKyAgICAgICAgKiBsYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25Db3ZlcmFn
ZS5jcHA6CisKKyAgICAgICAgQWRkIGEgbmV3IGZsYWcgZm9yIGJhY2tncm91bmQtY2xpcDp0ZXh0
IHdoaWNoIGlzIG5vdCB5ZXQgc3VwcG9ydGVkIGJ5IGNvZGUuCisgICAgICAgIEl0IGJlY29tZXMg
cmVsZXZhbnQgd2hlbiBiYWNrZ3JvdW5kIHBhaW50aW5nIGlzIGVuYWJsZWQuCisKKyAgICAgICAg
KFdlYkNvcmU6OkxheW91dEludGVncmF0aW9uOjpwcmludFJlYXNvbik6CisgICAgICAgIChXZWJD
b3JlOjpMYXlvdXRJbnRlZ3JhdGlvbjo6Y2FuVXNlRm9yUmVuZGVySW5saW5lQ2hpbGQpOgorICAg
ICAgICAqIGxheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkNvdmVyYWdlLmg6Cisg
ICAgICAgICogbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uTGluZUxheW91dC5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXRJbnRlZ3JhdGlvbjo6TGluZUxheW91dDo6cGFp
bnQpOgorCisgICAgICAgIFBhaW50IGlubGluZSBib3hlcyB1c2luZyBJbmxpbmVCb3hQYWludGVy
LgorCisgICAgICAgIChXZWJDb3JlOjpMYXlvdXRJbnRlZ3JhdGlvbjo6TGluZUxheW91dDo6cGFp
bnRUZXh0Qm94VXNpbmdQaHlzaWNhbENvb3JkaW5hdGVzKTogRGVsZXRlZC4KKworICAgICAgICBT
aW1wbGlmeSB0aGUgaW50ZXJzZWN0aW9uIGNvZGUgYW5kIG1vdmUgaXQgdG8gcGFpbnQoKS4KKwor
ICAgICAgICAqIGxheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkxpbmVMYXlvdXQu
aDoKKyAgICAgICAgKiByZW5kZXJpbmcvSW5saW5lQm94UGFpbnRlci5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpJbmxpbmVCb3hQYWludGVyOjpJbmxpbmVCb3hQYWludGVyKToKKworICAgICAgICBU
YWtlIElubGluZURpc3BsYXk6OkJveC4KKworICAgICAgICAqIHJlbmRlcmluZy9JbmxpbmVCb3hQ
YWludGVyLmg6CisKIDIwMjEtMTAtMTEgIFdlbnNvbiBIc2llaCAgPHdlbnNvbl9oc2llaEBhcHBs
ZS5jb20+CiAKICAgICAgICAgRXhwb3J0IHNvbWUgZGlzcGxheSBsaXN0IGl0ZW0gbWV0aG9kcyBm
b3IgdXNlIGluIFdlYktpdDIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRl
Z3JhdGlvbi9JbmxpbmVJdGVyYXRvcklubGluZUJveC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sYXlv
dXQvaW50ZWdyYXRpb24vSW5saW5lSXRlcmF0b3JJbmxpbmVCb3guY3BwCmluZGV4IDMxNjE4ODQz
NzAxMmZhY2ZlMDYyZmZjOGE5NDI0MzY0NWU1ZjY5NDMuLmU5NGY5MWRmZDdkZjc1OGJlY2MwZTgw
M2VmYTY2MTIyOWFmNDYyYzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRl
Z3JhdGlvbi9JbmxpbmVJdGVyYXRvcklubGluZUJveC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
bGF5b3V0L2ludGVncmF0aW9uL0lubGluZUl0ZXJhdG9ySW5saW5lQm94LmNwcApAQCAtOTEsNiAr
OTEsMTEgQEAgSW5saW5lQm94SXRlcmF0b3IgaW5saW5lQm94Rm9yKGNvbnN0IExlZ2FjeUlubGlu
ZUZsb3dCb3gmIGxlZ2FjeUlubGluZUZsb3dCb3gpCiB9CiAKICNpZiBFTkFCTEUoTEFZT1VUX0ZP
Uk1BVFRJTkdfQ09OVEVYVCkKK0lubGluZUJveEl0ZXJhdG9yIGlubGluZUJveEZvcihjb25zdCBM
YXlvdXRJbnRlZ3JhdGlvbjo6SW5saW5lQ29udGVudCYgY29udGVudCwgY29uc3QgSW5saW5lRGlz
cGxheTo6Qm94JiBib3gpCit7CisgICAgcmV0dXJuIGlubGluZUJveEZvcihjb250ZW50LCBjb250
ZW50LmluZGV4Rm9yQm94KGJveCkpOworfQorCiBJbmxpbmVCb3hJdGVyYXRvciBpbmxpbmVCb3hG
b3IoY29uc3QgTGF5b3V0SW50ZWdyYXRpb246OklubGluZUNvbnRlbnQmIGNvbnRlbnQsIHNpemVf
dCBib3hJbmRleCkKIHsKICAgICBBU1NFUlQoY29udGVudC5ib3hlc1tib3hJbmRleF0uaXNJbmxp
bmVCb3goKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24v
SW5saW5lSXRlcmF0b3JJbmxpbmVCb3guaCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3Jh
dGlvbi9JbmxpbmVJdGVyYXRvcklubGluZUJveC5oCmluZGV4IDVhZGMwOGZjM2FhMWE0ZDI2Mzll
ZjRiMGZhZDZiMTU0MjJiODEyODIuLmYzN2U4NjhjMmM2NjZkNmEwYTQ5OTljOGM4YjBjN2ZiYmM3
ZjUwZDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9Jbmxp
bmVJdGVyYXRvcklubGluZUJveC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3Jh
dGlvbi9JbmxpbmVJdGVyYXRvcklubGluZUJveC5oCkBAIC02Nyw2ICs2Nyw3IEBAIHByaXZhdGU6
CiAKIElubGluZUJveEl0ZXJhdG9yIGlubGluZUJveEZvcihjb25zdCBMZWdhY3lJbmxpbmVGbG93
Qm94Jik7CiAjaWYgRU5BQkxFKExBWU9VVF9GT1JNQVRUSU5HX0NPTlRFWFQpCitJbmxpbmVCb3hJ
dGVyYXRvciBpbmxpbmVCb3hGb3IoY29uc3QgTGF5b3V0SW50ZWdyYXRpb246OklubGluZUNvbnRl
bnQmLCBjb25zdCBJbmxpbmVEaXNwbGF5OjpCb3gmKTsKIElubGluZUJveEl0ZXJhdG9yIGlubGlu
ZUJveEZvcihjb25zdCBMYXlvdXRJbnRlZ3JhdGlvbjo6SW5saW5lQ29udGVudCYsIHNpemVfdCBi
b3hJbmRleCk7CiAjZW5kaWYKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2lu
dGVncmF0aW9uL0xheW91dEludGVncmF0aW9uQ292ZXJhZ2UuY3BwIGIvU291cmNlL1dlYkNvcmUv
bGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uQ292ZXJhZ2UuY3BwCmluZGV4IDBh
YWZhYzY3NDAzNTA4NmVhMWNlNWUwNTVjY2ZiNGIxMTQzOWJiZDYuLjRkMzkxMTllOWM0YmZjZDA0
ZjFhYjJmNjk3MzlhYzNiNThlYjYzOTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91
dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkNvdmVyYWdlLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25Db3ZlcmFnZS5jcHAK
QEAgLTIxMiw2ICsyMTIsOSBAQCBzdGF0aWMgdm9pZCBwcmludFJlYXNvbihBdm9pZGFuY2VSZWFz
b24gcmVhc29uLCBUZXh0U3RyZWFtJiBzdHJlYW0pCiAgICAgY2FzZSBBdm9pZGFuY2VSZWFzb246
OklubGluZUJveEhhc0JhY2tncm91bmQ6CiAgICAgICAgIHN0cmVhbSA8PCAiaW5saW5lIGJveCBo
YXMgYmFja2dyb3VuZCI7CiAgICAgICAgIGJyZWFrOworICAgIGNhc2UgQXZvaWRhbmNlUmVhc29u
OjpJbmxpbmVCb3hIYXNCYWNrZ3JvdW5kQ2xpcFRleHQ6CisgICAgICAgIHN0cmVhbSA8PCAiaW5s
aW5lIGJveCBoYXMgYmFja2dyb3VuZC1jbGlwOiB0ZXh0IjsKKyAgICAgICAgYnJlYWs7CiAgICAg
ZGVmYXVsdDoKICAgICAgICAgYnJlYWs7CiAgICAgfQpAQCAtNDgxLDYgKzQ4NCw4IEBAIHN0YXRp
YyBPcHRpb25TZXQ8QXZvaWRhbmNlUmVhc29uPiBjYW5Vc2VGb3JSZW5kZXJJbmxpbmVDaGlsZChj
b25zdCBSZW5kZXJJbmxpbmUmCiAgICAgICAgIFNFVF9SRUFTT05fQU5EX1JFVFVSTl9JRl9ORUVE
RUQoSW5saW5lQm94SGFzQm9yZGVyT3JCb3JkZXJJbWFnZSwgcmVhc29ucywgaW5jbHVkZVJlYXNv
bnMpOwogICAgIGlmIChzdHlsZS5oYXNCYWNrZ3JvdW5kKCkpCiAgICAgICAgIFNFVF9SRUFTT05f
QU5EX1JFVFVSTl9JRl9ORUVERUQoSW5saW5lQm94SGFzQmFja2dyb3VuZCwgcmVhc29ucywgaW5j
bHVkZVJlYXNvbnMpOworICAgIGlmIChzdHlsZS5iYWNrZ3JvdW5kQ2xpcCgpID09IEZpbGxCb3g6
OlRleHQpCisgICAgICAgIFNFVF9SRUFTT05fQU5EX1JFVFVSTl9JRl9ORUVERUQoSW5saW5lQm94
SGFzQmFja2dyb3VuZENsaXBUZXh0LCByZWFzb25zLCBpbmNsdWRlUmVhc29ucyk7CiAgICAgaWYg
KHN0eWxlLmhhc091dGxpbmUoKSkKICAgICAgICAgU0VUX1JFQVNPTl9BTkRfUkVUVVJOX0lGX05F
RURFRChDb250ZW50SGFzT3V0bGluZSwgcmVhc29ucywgaW5jbHVkZVJlYXNvbnMpOwogICAgIGlm
IChyZW5kZXJJbmxpbmUuaXNJbkZsb3dQb3NpdGlvbmVkKCkpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25Db3ZlcmFnZS5oIGIv
U291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uQ292ZXJh
Z2UuaAppbmRleCA3YjBlNjQyNDdkNzMwYTMxMWNhYWU0ZGY5NTg3NDA4OGIwN2VjYTVlLi5iMWVm
YjVhYWYzOWFjODMxNmMwNDA4ZDkyMmUyYjdmNWE4NjhjZjJlIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25Db3ZlcmFnZS5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkNv
dmVyYWdlLmgKQEAgLTkxLDcgKzkxLDcgQEAgZW51bSBjbGFzcyBBdm9pZGFuY2VSZWFzb24gOiB1
aW50NjRfdCB7CiAgICAgTXVsdGlDb2x1bW5GbG93SXNGbG9hdGluZyAgICAgICAgICAgICAgICAg
ICAgPSAxTExVICA8PCA1MCwKICAgICAvLyBVbnVzZWQgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICA9IDFMTFUgIDw8IDUxLAogICAgIC8vIFVudXNlZCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgID0gMUxMVSAgPDwgNTIsCi0gICAgLy8gVW51c2VkICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgPSAxTExVICA8PCA1MywKKyAgICBJbmxpbmVCb3hI
YXNCYWNrZ3JvdW5kQ2xpcFRleHQgICAgICAgICAgICAgICA9IDFMTFUgIDw8IDUzLAogICAgIFVu
c3VwcG9ydGVkRmllbGRzZXQgICAgICAgICAgICAgICAgICAgICAgICAgID0gMUxMVSAgPDwgNTQs
CiAgICAgQ2hpbGRCb3hJc0Zsb2F0aW5nT3JQb3NpdGlvbmVkICAgICAgICAgICAgICAgPSAxTExV
ICA8PCA1NSwKICAgICBDb250ZW50SXNTVkcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICA9IDFMTFUgIDw8IDU2LApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVn
cmF0aW9uL0xheW91dEludGVncmF0aW9uTGluZUxheW91dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9s
YXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25MaW5lTGF5b3V0LmNwcAppbmRleCBl
YTJiMjFiOThhNjM4ZWIxNTNjYThkMzE2ZmNlMjRmOWIwNjQ1M2NmLi42N2Q0MjJiNjg1MjVhN2Iz
NDlmMmEyYzliMjRmNTg1NzEyOTdlODdhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sYXlv
dXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25MaW5lTGF5b3V0LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25MaW5lTGF5b3V0
LmNwcApAQCAtMzMsNiArMzMsNyBAQAogI2luY2x1ZGUgIkhpdFRlc3RMb2NhdGlvbi5oIgogI2lu
Y2x1ZGUgIkhpdFRlc3RSZXF1ZXN0LmgiCiAjaW5jbHVkZSAiSGl0VGVzdFJlc3VsdC5oIgorI2lu
Y2x1ZGUgIklubGluZUJveFBhaW50ZXIuaCIKICNpbmNsdWRlICJJbmxpbmVEYW1hZ2UuaCIKICNp
bmNsdWRlICJJbmxpbmVGb3JtYXR0aW5nQ29udGV4dC5oIgogI2luY2x1ZGUgIklubGluZUZvcm1h
dHRpbmdTdGF0ZS5oIgpAQCAtNTA1LDE4ICs1MDYsNDAgQEAgdm9pZCBMaW5lTGF5b3V0OjpwYWlu
dChQYWludEluZm8mIHBhaW50SW5mbywgY29uc3QgTGF5b3V0UG9pbnQmIHBhaW50T2Zmc2V0KQog
ICAgIGlmIChwYWludEluZm8ucGhhc2UgIT0gUGFpbnRQaGFzZTo6Rm9yZWdyb3VuZCAmJiBwYWlu
dEluZm8ucGhhc2UgIT0gUGFpbnRQaGFzZTo6RXZlbnRSZWdpb24gJiYgcGFpbnRJbmZvLnBoYXNl
ICE9IFBhaW50UGhhc2U6OlRleHRDbGlwICYmIHBhaW50SW5mby5waGFzZSAhPSBQYWludFBoYXNl
OjpTZWxlY3Rpb24pCiAgICAgICAgIHJldHVybjsKIAotICAgIGF1dG8gcGFpbnRSZWN0ID0gcGFp
bnRJbmZvLnJlY3Q7Ci0gICAgcGFpbnRSZWN0Lm1vdmVCeSgtcGFpbnRPZmZzZXQpOworICAgIGF1
dG8gZGFtYWdlUmVjdCA9IHBhaW50SW5mby5yZWN0OworICAgIGRhbWFnZVJlY3QubW92ZUJ5KC1w
YWludE9mZnNldCk7CiAKLSAgICBmb3IgKGF1dG8mIGJveCA6IG1faW5saW5lQ29udGVudC0+Ym94
ZXNGb3JSZWN0KHBhaW50UmVjdCkpIHsKKyAgICBhdXRvIGhhc0RhbWFnZSA9IFsmXShhdXRvJiBi
b3gpIHsKKyAgICAgICAgaWYgKGJveC5zdHlsZSgpLnZpc2liaWxpdHkoKSAhPSBWaXNpYmlsaXR5
OjpWaXNpYmxlKQorICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICBhdXRvIHJlY3Qg
PSBlbmNsb3NpbmdMYXlvdXRSZWN0KGJveC5pbmtPdmVyZmxvdygpKTsKKyAgICAgICAgZmxvdygp
LmZsaXBGb3JXcml0aW5nTW9kZShyZWN0KTsKKyAgICAgICAgLy8gRklYTUU6IFRoaXMgc2hvdWxk
IHRlc3QgZm9yIGludGVyc2VjdGlvbiBidXQgaG9yaXpvbnRhbCBpbmsgb3ZlcmZsb3cgaXMgbWlz
Y29tcHV0ZWQgaW4gYSBmZXcgY2FzZXMgKGxpa2Ugd2l0aCBuZWdhdGl2ZSBsZXR0ZXItc3BhY2lu
ZykuCisgICAgICAgIHJldHVybiAhcmVjdC5pc0VtcHR5KCkgJiYgZGFtYWdlUmVjdC5tYXhZKCkg
PiByZWN0LnkoKSAmJiBkYW1hZ2VSZWN0LnkoKSA8IHJlY3QubWF4WSgpOworICAgIH07CisKKyAg
ICBmb3IgKGF1dG8mIGJveCA6IG1faW5saW5lQ29udGVudC0+Ym94ZXNGb3JSZWN0KGRhbWFnZVJl
Y3QpKSB7CiAgICAgICAgIGlmIChib3guaXNMaW5lQnJlYWsoKSkKICAgICAgICAgICAgIGNvbnRp
bnVlOwotICAgICAgICBpZiAoYm94LmlzSW5saW5lQm94KCkpCisKKyAgICAgICAgaWYgKGJveC5p
c0lubGluZUJveCgpKSB7CisgICAgICAgICAgICBpZiAoIWhhc0RhbWFnZShib3gpKQorICAgICAg
ICAgICAgICAgIGNvbnRpbnVlOworCisgICAgICAgICAgICBJbmxpbmVCb3hQYWludGVyIHBhaW50
ZXIoKm1faW5saW5lQ29udGVudCwgYm94LCBwYWludEluZm8sIHBhaW50T2Zmc2V0KTsKKyAgICAg
ICAgICAgIHBhaW50ZXIucGFpbnQoKTsKICAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICB9
CisKICAgICAgICAgaWYgKGJveC50ZXh0KCkpIHsKLSAgICAgICAgICAgIHBhaW50VGV4dEJveFVz
aW5nUGh5c2ljYWxDb29yZGluYXRlcyhwYWludEluZm8sIHBhaW50T2Zmc2V0LCBib3gpOworICAg
ICAgICAgICAgaWYgKCFib3gudGV4dCgpLT5sZW5ndGgoKSB8fCAhaGFzRGFtYWdlKGJveCkpCisg
ICAgICAgICAgICAgICAgY29udGludWU7CisKKyAgICAgICAgICAgIFRleHRCb3hQYWludGVyIHBh
aW50ZXIoKm1faW5saW5lQ29udGVudCwgYm94LCBwYWludEluZm8sIHBhaW50T2Zmc2V0KTsKKyAg
ICAgICAgICAgIHBhaW50ZXIucGFpbnQoKTsKICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAg
ICB9CisKICAgICAgICAgaWYgKGF1dG8mIHJlbmRlcmVyID0gbV9ib3hUcmVlLnJlbmRlcmVyRm9y
TGF5b3V0Qm94KGJveC5sYXlvdXRCb3goKSk7IGlzPFJlbmRlckJveD4ocmVuZGVyZXIpICYmIHJl
bmRlcmVyLmlzUmVwbGFjZWQoKSkgewogICAgICAgICAgICAgYXV0byYgcmVuZGVyQm94ID0gZG93
bmNhc3Q8UmVuZGVyQm94PihyZW5kZXJlcik7CiAgICAgICAgICAgICBpZiAoIXJlbmRlckJveC5o
YXNTZWxmUGFpbnRpbmdMYXllcigpICYmIHBhaW50SW5mby5zaG91bGRQYWludFdpdGhpblJvb3Qo
cmVuZGVyQm94KSkKQEAgLTU5Myw0NCArNjE2LDYgQEAgdm9pZCBMaW5lTGF5b3V0OjpjbGVhcklu
bGluZUNvbnRlbnQoKQogICAgIG1faW5saW5lQ29udGVudCA9IG51bGxwdHI7CiB9CiAKLXZvaWQg
TGluZUxheW91dDo6cGFpbnRUZXh0Qm94VXNpbmdQaHlzaWNhbENvb3JkaW5hdGVzKFBhaW50SW5m
byYgcGFpbnRJbmZvLCBjb25zdCBMYXlvdXRQb2ludCYgcGFpbnRPZmZzZXQsIGNvbnN0IElubGlu
ZURpc3BsYXk6OkJveCYgdGV4dEJveCkKLXsKLSAgICBhdXRvJiBzdHlsZSA9IHRleHRCb3guc3R5
bGUoKTsKLSAgICBpZiAodGV4dEJveC5zdHlsZSgpLnZpc2liaWxpdHkoKSAhPSBWaXNpYmlsaXR5
OjpWaXNpYmxlKQotICAgICAgICByZXR1cm47Ci0KLSAgICBhdXRvJiB0ZXh0Q29udGVudCA9ICp0
ZXh0Qm94LnRleHQoKTsKLSAgICBpZiAoIXRleHRDb250ZW50Lmxlbmd0aCgpKQotICAgICAgICBy
ZXR1cm47Ci0KLSAgICBhdXRvJiBmb3JtYXR0aW5nQ29udGV4dFJvb3QgPSBmbG93KCk7Ci0gICAg
YXV0byBibG9ja0lzSG9yaXpvbnRhbFdyaXRpbmcgPSBmb3JtYXR0aW5nQ29udGV4dFJvb3Quc3R5
bGUoKS5pc0hvcml6b250YWxXcml0aW5nTW9kZSgpOwotICAgIGF1dG8gcGh5c2ljYWxQYWludE9m
ZnNldCA9IHBhaW50T2Zmc2V0OwotICAgIGlmICghYmxvY2tJc0hvcml6b250YWxXcml0aW5nKSB7
Ci0gICAgICAgIC8vIEZJWE1FOiBGaWd1cmUgb3V0IHdoeSB0aGlzIHRyYW5zbGF0ZSBpcyByZXF1
aXJlZC4KLSAgICAgICAgcGh5c2ljYWxQYWludE9mZnNldC5tb3ZlKHsgMCwgLXRleHRCb3gubG9n
aWNhbFJlY3QoKS5oZWlnaHQoKSB9KTsKLSAgICB9Ci0KLSAgICBhdXRvIHBoeXNpY2FsUmVjdCA9
IFsmXShjb25zdCBhdXRvJiByZWN0KSAtPiBGbG9hdFJlY3QgewotICAgICAgICBpZiAoIXN0eWxl
LmlzRmxpcHBlZEJsb2Nrc1dyaXRpbmdNb2RlKCkpCi0gICAgICAgICAgICByZXR1cm4gcmVjdDsK
LSAgICAgICAgaWYgKCFibG9ja0lzSG9yaXpvbnRhbFdyaXRpbmcpCi0gICAgICAgICAgICByZXR1
cm4gRmxvYXRSZWN0IHsgZm9ybWF0dGluZ0NvbnRleHRSb290LndpZHRoKCkgLSByZWN0LmJvdHRv
bSgpLCByZWN0LmxlZnQoKSAsIHJlY3Qud2lkdGgoKSwgcmVjdC5oZWlnaHQoKSB9OwotICAgICAg
ICBBU1NFUlRfTk9UX0lNUExFTUVOVEVEX1lFVCgpOwotICAgICAgICByZXR1cm4gcmVjdDsKLSAg
ICB9OwotCi0gICAgYXV0byB2aXN1YWxPdmVyZmxvd1JlY3QgPSBwaHlzaWNhbFJlY3QodGV4dEJv
eC5pbmtPdmVyZmxvdygpKTsKLQotICAgIGF1dG8gZGFtYWdlZFJlY3QgPSBwYWludEluZm8ucmVj
dDsKLSAgICBkYW1hZ2VkUmVjdC5tb3ZlQnkoLXBoeXNpY2FsUGFpbnRPZmZzZXQpOwotICAgIGlm
IChkYW1hZ2VkUmVjdC55KCkgPiB2aXN1YWxPdmVyZmxvd1JlY3QubWF4WSgpIHx8IGRhbWFnZWRS
ZWN0Lm1heFkoKSA8IHZpc3VhbE92ZXJmbG93UmVjdC55KCkpCi0gICAgICAgIHJldHVybjsKLQot
ICAgIFRleHRCb3hQYWludGVyIHBhaW50ZXIoKm1faW5saW5lQ29udGVudCwgdGV4dEJveCwgcGFp
bnRJbmZvLCBwYWludE9mZnNldCk7Ci0gICAgcGFpbnRlci5wYWludCgpOwotfQotCiBMYXlvdXQ6
OklubGluZURhbWFnZSYgTGluZUxheW91dDo6ZW5zdXJlTGluZURhbWFnZSgpCiB7CiAgICAgaWYg
KCFtX2xpbmVEYW1hZ2UpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdy
YXRpb24vTGF5b3V0SW50ZWdyYXRpb25MaW5lTGF5b3V0LmggYi9Tb3VyY2UvV2ViQ29yZS9sYXlv
dXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25MaW5lTGF5b3V0LmgKaW5kZXggZjZlYjZh
Mzg0MWE1ZjU2YTU2Y2U5MDMzYzU4OTIwZDYxYmY2ZjZlNC4uOTNmMTFhMmVhMjA5ZTNjNTIyODY0
NTIyMjk4ZDY3ZDNlM2RhMWIzNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2lu
dGVncmF0aW9uL0xheW91dEludGVncmF0aW9uTGluZUxheW91dC5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkxpbmVMYXlvdXQuaApAQCAt
MTI0LDggKzEyNCw2IEBAIHByaXZhdGU6CiAgICAgSW5saW5lQ29udGVudCYgZW5zdXJlSW5saW5l
Q29udGVudCgpOwogICAgIHZvaWQgdXBkYXRlTGF5b3V0Qm94RGltZW5zaW9ucyhjb25zdCBSZW5k
ZXJCb3gmKTsKIAotICAgIHZvaWQgcGFpbnRUZXh0Qm94VXNpbmdQaHlzaWNhbENvb3JkaW5hdGVz
KFBhaW50SW5mbyYsIGNvbnN0IExheW91dFBvaW50JiBwYWludE9mZnNldCwgY29uc3QgSW5saW5l
RGlzcGxheTo6Qm94Jik7Ci0KICAgICBMYXlvdXQ6OklubGluZURhbWFnZSYgZW5zdXJlTGluZURh
bWFnZSgpOwogCiAgICAgY29uc3QgTGF5b3V0OjpDb250YWluZXJCb3gmIHJvb3RMYXlvdXRCb3go
KSBjb25zdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9JbmxpbmVCb3hQ
YWludGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9JbmxpbmVCb3hQYWludGVyLmNw
cAppbmRleCBlMzE0ZGMxZDJmZDY4ZGU3ODBiMzRiZDQ5ZjA3YzgzNmFlOTI3Yzc2Li4zNjA2Yzdl
M2I4ZGVhN2Y5Mzg2M2M3MmZkOGY2MmVlY2UyOGU1NWQ3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvSW5saW5lQm94UGFpbnRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL0lubGluZUJveFBhaW50ZXIuY3BwCkBAIC0zNyw3ICszNywxOSBAQAogbmFtZXNw
YWNlIFdlYkNvcmUgewogCiBJbmxpbmVCb3hQYWludGVyOjpJbmxpbmVCb3hQYWludGVyKGNvbnN0
IExlZ2FjeUlubGluZUZsb3dCb3gmIGlubGluZUJveCwgUGFpbnRJbmZvJiBwYWludEluZm8sIGNv
bnN0IExheW91dFBvaW50JiBwYWludE9mZnNldCkKLSAgICA6IG1faW5saW5lQm94KCpJbmxpbmVJ
dGVyYXRvcjo6aW5saW5lQm94Rm9yKGlubGluZUJveCkpCisgICAgOiBJbmxpbmVCb3hQYWludGVy
KCpJbmxpbmVJdGVyYXRvcjo6aW5saW5lQm94Rm9yKGlubGluZUJveCksIHBhaW50SW5mbywgcGFp
bnRPZmZzZXQpCit7Cit9CisKKyNpZiBFTkFCTEUoTEFZT1VUX0ZPUk1BVFRJTkdfQ09OVEVYVCkK
K0lubGluZUJveFBhaW50ZXI6OklubGluZUJveFBhaW50ZXIoY29uc3QgTGF5b3V0SW50ZWdyYXRp
b246OklubGluZUNvbnRlbnQmIGlubGluZUNvbnRlbnQsIGNvbnN0IElubGluZURpc3BsYXk6OkJv
eCYgYm94LCBQYWludEluZm8mIHBhaW50SW5mbywgY29uc3QgTGF5b3V0UG9pbnQmIHBhaW50T2Zm
c2V0KQorICAgIDogSW5saW5lQm94UGFpbnRlcigqSW5saW5lSXRlcmF0b3I6OmlubGluZUJveEZv
cihpbmxpbmVDb250ZW50LCBib3gpLCBwYWludEluZm8sIHBhaW50T2Zmc2V0KQoreworfQorI2Vu
ZGlmCisKK0lubGluZUJveFBhaW50ZXI6OklubGluZUJveFBhaW50ZXIoY29uc3QgSW5saW5lSXRl
cmF0b3I6OklubGluZUJveCYgaW5saW5lQm94LCBQYWludEluZm8mIHBhaW50SW5mbywgY29uc3Qg
TGF5b3V0UG9pbnQmIHBhaW50T2Zmc2V0KQorICAgIDogbV9pbmxpbmVCb3goaW5saW5lQm94KQog
ICAgICwgbV9wYWludEluZm8ocGFpbnRJbmZvKQogICAgICwgbV9wYWludE9mZnNldChwYWludE9m
ZnNldCkKICAgICAsIG1fcmVuZGVyZXIobV9pbmxpbmVCb3gucmVuZGVyZXIoKSkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9JbmxpbmVCb3hQYWludGVyLmggYi9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvSW5saW5lQm94UGFpbnRlci5oCmluZGV4IGM2MzQyM2RiOTAyZGZl
ODNlMjRmOTIxYWYyMDU3ZTJkMmQ4MjUyZmIuLjFmZDViODVhN2UzZTVmYWJhNWRiNzRkOGY5MjYw
ZTEzMDcxZmM1MGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9JbmxpbmVC
b3hQYWludGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0lubGluZUJveFBhaW50
ZXIuaApAQCAtNDIsMTEgKzQyLDE2IEBAIHN0cnVjdCBQYWludEluZm87CiBjbGFzcyBJbmxpbmVC
b3hQYWludGVyIHsKIHB1YmxpYzoKICAgICBJbmxpbmVCb3hQYWludGVyKGNvbnN0IExlZ2FjeUlu
bGluZUZsb3dCb3gmLCBQYWludEluZm8mLCBjb25zdCBMYXlvdXRQb2ludCYgcGFpbnRPZmZzZXQp
OworI2lmIEVOQUJMRShMQVlPVVRfRk9STUFUVElOR19DT05URVhUKQorICAgIElubGluZUJveFBh
aW50ZXIoY29uc3QgTGF5b3V0SW50ZWdyYXRpb246OklubGluZUNvbnRlbnQmLCBjb25zdCBJbmxp
bmVEaXNwbGF5OjpCb3gmLCBQYWludEluZm8mLCBjb25zdCBMYXlvdXRQb2ludCYgcGFpbnRPZmZz
ZXQpOworI2VuZGlmCiAgICAgfklubGluZUJveFBhaW50ZXIoKTsKIAogICAgIHZvaWQgcGFpbnQo
KTsKIAogcHJpdmF0ZToKKyAgICBJbmxpbmVCb3hQYWludGVyKGNvbnN0IElubGluZUl0ZXJhdG9y
OjpJbmxpbmVCb3gmLCBQYWludEluZm8mLCBjb25zdCBMYXlvdXRQb2ludCYgcGFpbnRPZmZzZXQp
OworCiAgICAgdm9pZCBwYWludE1hc2soKTsKICAgICB2b2lkIHBhaW50RGVjb3JhdGlvbnMoKTsK
ICAgICB2b2lkIHBhaW50RmlsbExheWVycyhjb25zdCBDb2xvciYsIGNvbnN0IEZpbGxMYXllciYs
IGNvbnN0IExheW91dFJlY3QmIHBhaW50UmVjdCwgQ29tcG9zaXRlT3BlcmF0b3IpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>440925</attachid>
            <date>2021-10-12 07:09:19 -0700</date>
            <delta_ts>2021-10-12 08:44:06 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-231561-20211012170917.patch</filename>
            <type>text/plain</type>
            <size>13024</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgzOTAwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzUzNjM0YjcwYTQyNjdj
YzUwMmZiZWYzZTI3Y2EwZGU3ZmM1ODIzMy4uMGRkYmY0M2Q2OWI0ODQzOGRiM2M3MGE1ODAyZDNk
OWYwNGI4NzA5MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQxIEBACisyMDIxLTEwLTEyICBBbnR0
aSBLb2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KKworICAgICAgICBbTEZDXVtJbnRlZ3JhdGlv
bl0gQWRkIHN1cHBvcnQgZm9yIHBhaW50aW5nIGlubGluZSBib3ggZGVjb3JhdGlvbnMKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMTU2MQorCisgICAg
ICAgIFJldmlld2VkIGJ5IEFsYW4gQnVqdGFzLgorCisgICAgICAgIEFkZCBjb2RlIGZvciBwYWlu
dGluZyBpbmxpbmUgYm94IGJhY2tncm91bmRzIGFuZCBib3JkZXJzIHdpdGggSW5saW5lQm94UGFp
bnRlci4KKyAgICAgICAgVGhpcyBwYXRjaCBkb2VzIG5vdCBlbmFibGUgYW55dGhpbmcgbmV3IHll
dC4KKworICAgICAgICAqIGxheW91dC9pbnRlZ3JhdGlvbi9JbmxpbmVJdGVyYXRvcklubGluZUJv
eC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbmxpbmVJdGVyYXRvcjo6aW5saW5lQm94Rm9yKToK
KyAgICAgICAgKiBsYXlvdXQvaW50ZWdyYXRpb24vSW5saW5lSXRlcmF0b3JJbmxpbmVCb3guaDoK
KyAgICAgICAgKiBsYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25Db3ZlcmFnZS5j
cHA6CisKKyAgICAgICAgQWRkIGEgbmV3IGZsYWcgZm9yIGJhY2tncm91bmQtY2xpcDp0ZXh0IHdo
aWNoIGlzIG5vdCB5ZXQgc3VwcG9ydGVkIGJ5IGNvZGUuCisgICAgICAgIEl0IGJlY29tZXMgcmVs
ZXZhbnQgd2hlbiBiYWNrZ3JvdW5kIHBhaW50aW5nIGlzIGVuYWJsZWQuCisKKyAgICAgICAgKFdl
YkNvcmU6OkxheW91dEludGVncmF0aW9uOjpwcmludFJlYXNvbik6CisgICAgICAgIChXZWJDb3Jl
OjpMYXlvdXRJbnRlZ3JhdGlvbjo6Y2FuVXNlRm9yUmVuZGVySW5saW5lQ2hpbGQpOgorICAgICAg
ICAqIGxheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkNvdmVyYWdlLmg6CisgICAg
ICAgICogbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uTGluZUxheW91dC5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXRJbnRlZ3JhdGlvbjo6TGluZUxheW91dDo6cGFpbnQp
OgorCisgICAgICAgIFBhaW50IGlubGluZSBib3hlcyB1c2luZyBJbmxpbmVCb3hQYWludGVyLgor
CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXRJbnRlZ3JhdGlvbjo6TGluZUxheW91dDo6cGFpbnRU
ZXh0Qm94VXNpbmdQaHlzaWNhbENvb3JkaW5hdGVzKTogRGVsZXRlZC4KKworICAgICAgICBTaW1w
bGlmeSB0aGUgaW50ZXJzZWN0aW9uIGNvZGUgYW5kIG1vdmUgaXQgdG8gcGFpbnQoKS4KKworICAg
ICAgICAqIGxheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkxpbmVMYXlvdXQuaDoK
KyAgICAgICAgKiByZW5kZXJpbmcvSW5saW5lQm94UGFpbnRlci5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpJbmxpbmVCb3hQYWludGVyOjpJbmxpbmVCb3hQYWludGVyKToKKworICAgICAgICBUYWtl
IElubGluZURpc3BsYXk6OkJveC4KKworICAgICAgICAqIHJlbmRlcmluZy9JbmxpbmVCb3hQYWlu
dGVyLmg6CisKIDIwMjEtMTAtMTEgIFdlbnNvbiBIc2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5j
b20+CiAKICAgICAgICAgRXhwb3J0IHNvbWUgZGlzcGxheSBsaXN0IGl0ZW0gbWV0aG9kcyBmb3Ig
dXNlIGluIFdlYktpdDIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3Jh
dGlvbi9JbmxpbmVJdGVyYXRvcklubGluZUJveC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQv
aW50ZWdyYXRpb24vSW5saW5lSXRlcmF0b3JJbmxpbmVCb3guY3BwCmluZGV4IDMxNjE4ODQzNzAx
MmZhY2ZlMDYyZmZjOGE5NDI0MzY0NWU1ZjY5NDMuLmU5NGY5MWRmZDdkZjc1OGJlY2MwZTgwM2Vm
YTY2MTIyOWFmNDYyYzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3Jh
dGlvbi9JbmxpbmVJdGVyYXRvcklubGluZUJveC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbGF5
b3V0L2ludGVncmF0aW9uL0lubGluZUl0ZXJhdG9ySW5saW5lQm94LmNwcApAQCAtOTEsNiArOTEs
MTEgQEAgSW5saW5lQm94SXRlcmF0b3IgaW5saW5lQm94Rm9yKGNvbnN0IExlZ2FjeUlubGluZUZs
b3dCb3gmIGxlZ2FjeUlubGluZUZsb3dCb3gpCiB9CiAKICNpZiBFTkFCTEUoTEFZT1VUX0ZPUk1B
VFRJTkdfQ09OVEVYVCkKK0lubGluZUJveEl0ZXJhdG9yIGlubGluZUJveEZvcihjb25zdCBMYXlv
dXRJbnRlZ3JhdGlvbjo6SW5saW5lQ29udGVudCYgY29udGVudCwgY29uc3QgSW5saW5lRGlzcGxh
eTo6Qm94JiBib3gpCit7CisgICAgcmV0dXJuIGlubGluZUJveEZvcihjb250ZW50LCBjb250ZW50
LmluZGV4Rm9yQm94KGJveCkpOworfQorCiBJbmxpbmVCb3hJdGVyYXRvciBpbmxpbmVCb3hGb3Io
Y29uc3QgTGF5b3V0SW50ZWdyYXRpb246OklubGluZUNvbnRlbnQmIGNvbnRlbnQsIHNpemVfdCBi
b3hJbmRleCkKIHsKICAgICBBU1NFUlQoY29udGVudC5ib3hlc1tib3hJbmRleF0uaXNJbmxpbmVC
b3goKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vSW5s
aW5lSXRlcmF0b3JJbmxpbmVCb3guaCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlv
bi9JbmxpbmVJdGVyYXRvcklubGluZUJveC5oCmluZGV4IDVhZGMwOGZjM2FhMWE0ZDI2MzllZjRi
MGZhZDZiMTU0MjJiODEyODIuLmYzN2U4NjhjMmM2NjZkNmEwYTQ5OTljOGM4YjBjN2ZiYmM3ZjUw
ZDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9JbmxpbmVJ
dGVyYXRvcklubGluZUJveC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlv
bi9JbmxpbmVJdGVyYXRvcklubGluZUJveC5oCkBAIC02Nyw2ICs2Nyw3IEBAIHByaXZhdGU6CiAK
IElubGluZUJveEl0ZXJhdG9yIGlubGluZUJveEZvcihjb25zdCBMZWdhY3lJbmxpbmVGbG93Qm94
Jik7CiAjaWYgRU5BQkxFKExBWU9VVF9GT1JNQVRUSU5HX0NPTlRFWFQpCitJbmxpbmVCb3hJdGVy
YXRvciBpbmxpbmVCb3hGb3IoY29uc3QgTGF5b3V0SW50ZWdyYXRpb246OklubGluZUNvbnRlbnQm
LCBjb25zdCBJbmxpbmVEaXNwbGF5OjpCb3gmKTsKIElubGluZUJveEl0ZXJhdG9yIGlubGluZUJv
eEZvcihjb25zdCBMYXlvdXRJbnRlZ3JhdGlvbjo6SW5saW5lQ29udGVudCYsIHNpemVfdCBib3hJ
bmRleCk7CiAjZW5kaWYKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVn
cmF0aW9uL0xheW91dEludGVncmF0aW9uQ292ZXJhZ2UuY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5
b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uQ292ZXJhZ2UuY3BwCmluZGV4IDBhYWZh
YzY3NDAzNTA4NmVhMWNlNWUwNTVjY2ZiNGIxMTQzOWJiZDYuLjRkMzkxMTllOWM0YmZjZDA0ZjFh
YjJmNjk3MzlhYzNiNThlYjYzOTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9p
bnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkNvdmVyYWdlLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25Db3ZlcmFnZS5jcHAKQEAg
LTIxMiw2ICsyMTIsOSBAQCBzdGF0aWMgdm9pZCBwcmludFJlYXNvbihBdm9pZGFuY2VSZWFzb24g
cmVhc29uLCBUZXh0U3RyZWFtJiBzdHJlYW0pCiAgICAgY2FzZSBBdm9pZGFuY2VSZWFzb246Oklu
bGluZUJveEhhc0JhY2tncm91bmQ6CiAgICAgICAgIHN0cmVhbSA8PCAiaW5saW5lIGJveCBoYXMg
YmFja2dyb3VuZCI7CiAgICAgICAgIGJyZWFrOworICAgIGNhc2UgQXZvaWRhbmNlUmVhc29uOjpJ
bmxpbmVCb3hIYXNCYWNrZ3JvdW5kQ2xpcFRleHQ6CisgICAgICAgIHN0cmVhbSA8PCAiaW5saW5l
IGJveCBoYXMgYmFja2dyb3VuZC1jbGlwOiB0ZXh0IjsKKyAgICAgICAgYnJlYWs7CiAgICAgZGVm
YXVsdDoKICAgICAgICAgYnJlYWs7CiAgICAgfQpAQCAtNDgxLDYgKzQ4NCw4IEBAIHN0YXRpYyBP
cHRpb25TZXQ8QXZvaWRhbmNlUmVhc29uPiBjYW5Vc2VGb3JSZW5kZXJJbmxpbmVDaGlsZChjb25z
dCBSZW5kZXJJbmxpbmUmCiAgICAgICAgIFNFVF9SRUFTT05fQU5EX1JFVFVSTl9JRl9ORUVERUQo
SW5saW5lQm94SGFzQm9yZGVyT3JCb3JkZXJJbWFnZSwgcmVhc29ucywgaW5jbHVkZVJlYXNvbnMp
OwogICAgIGlmIChzdHlsZS5oYXNCYWNrZ3JvdW5kKCkpCiAgICAgICAgIFNFVF9SRUFTT05fQU5E
X1JFVFVSTl9JRl9ORUVERUQoSW5saW5lQm94SGFzQmFja2dyb3VuZCwgcmVhc29ucywgaW5jbHVk
ZVJlYXNvbnMpOworICAgIGlmIChzdHlsZS5iYWNrZ3JvdW5kQ2xpcCgpID09IEZpbGxCb3g6OlRl
eHQpCisgICAgICAgIFNFVF9SRUFTT05fQU5EX1JFVFVSTl9JRl9ORUVERUQoSW5saW5lQm94SGFz
QmFja2dyb3VuZENsaXBUZXh0LCByZWFzb25zLCBpbmNsdWRlUmVhc29ucyk7CiAgICAgaWYgKHN0
eWxlLmhhc091dGxpbmUoKSkKICAgICAgICAgU0VUX1JFQVNPTl9BTkRfUkVUVVJOX0lGX05FRURF
RChDb250ZW50SGFzT3V0bGluZSwgcmVhc29ucywgaW5jbHVkZVJlYXNvbnMpOwogICAgIGlmIChy
ZW5kZXJJbmxpbmUuaXNJbkZsb3dQb3NpdGlvbmVkKCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25Db3ZlcmFnZS5oIGIvU291
cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uQ292ZXJhZ2Uu
aAppbmRleCA3YjBlNjQyNDdkNzMwYTMxMWNhYWU0ZGY5NTg3NDA4OGIwN2VjYTVlLi5iMWVmYjVh
YWYzOWFjODMxNmMwNDA4ZDkyMmUyYjdmNWE4NjhjZjJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25Db3ZlcmFnZS5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkNvdmVy
YWdlLmgKQEAgLTkxLDcgKzkxLDcgQEAgZW51bSBjbGFzcyBBdm9pZGFuY2VSZWFzb24gOiB1aW50
NjRfdCB7CiAgICAgTXVsdGlDb2x1bW5GbG93SXNGbG9hdGluZyAgICAgICAgICAgICAgICAgICAg
PSAxTExVICA8PCA1MCwKICAgICAvLyBVbnVzZWQgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICA9IDFMTFUgIDw8IDUxLAogICAgIC8vIFVudXNlZCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgID0gMUxMVSAgPDwgNTIsCi0gICAgLy8gVW51c2VkICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgPSAxTExVICA8PCA1MywKKyAgICBJbmxpbmVCb3hIYXNC
YWNrZ3JvdW5kQ2xpcFRleHQgICAgICAgICAgICAgICA9IDFMTFUgIDw8IDUzLAogICAgIFVuc3Vw
cG9ydGVkRmllbGRzZXQgICAgICAgICAgICAgICAgICAgICAgICAgID0gMUxMVSAgPDwgNTQsCiAg
ICAgQ2hpbGRCb3hJc0Zsb2F0aW5nT3JQb3NpdGlvbmVkICAgICAgICAgICAgICAgPSAxTExVICA8
PCA1NSwKICAgICBDb250ZW50SXNTVkcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA9
IDFMTFUgIDw8IDU2LApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0
aW9uL0xheW91dEludGVncmF0aW9uTGluZUxheW91dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sYXlv
dXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25MaW5lTGF5b3V0LmNwcAppbmRleCBlYTJi
MjFiOThhNjM4ZWIxNTNjYThkMzE2ZmNlMjRmOWIwNjQ1M2NmLi40NGM4NWY4M2QzZDIxNDBhMGIy
OGRlYzIzZTIxZDdiM2I5NTIyODk3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQv
aW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25MaW5lTGF5b3V0LmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25MaW5lTGF5b3V0LmNw
cApAQCAtMzMsNiArMzMsNyBAQAogI2luY2x1ZGUgIkhpdFRlc3RMb2NhdGlvbi5oIgogI2luY2x1
ZGUgIkhpdFRlc3RSZXF1ZXN0LmgiCiAjaW5jbHVkZSAiSGl0VGVzdFJlc3VsdC5oIgorI2luY2x1
ZGUgIklubGluZUJveFBhaW50ZXIuaCIKICNpbmNsdWRlICJJbmxpbmVEYW1hZ2UuaCIKICNpbmNs
dWRlICJJbmxpbmVGb3JtYXR0aW5nQ29udGV4dC5oIgogI2luY2x1ZGUgIklubGluZUZvcm1hdHRp
bmdTdGF0ZS5oIgpAQCAtNTA1LDE4ICs1MDYsNDAgQEAgdm9pZCBMaW5lTGF5b3V0OjpwYWludChQ
YWludEluZm8mIHBhaW50SW5mbywgY29uc3QgTGF5b3V0UG9pbnQmIHBhaW50T2Zmc2V0KQogICAg
IGlmIChwYWludEluZm8ucGhhc2UgIT0gUGFpbnRQaGFzZTo6Rm9yZWdyb3VuZCAmJiBwYWludElu
Zm8ucGhhc2UgIT0gUGFpbnRQaGFzZTo6RXZlbnRSZWdpb24gJiYgcGFpbnRJbmZvLnBoYXNlICE9
IFBhaW50UGhhc2U6OlRleHRDbGlwICYmIHBhaW50SW5mby5waGFzZSAhPSBQYWludFBoYXNlOjpT
ZWxlY3Rpb24pCiAgICAgICAgIHJldHVybjsKIAotICAgIGF1dG8gcGFpbnRSZWN0ID0gcGFpbnRJ
bmZvLnJlY3Q7Ci0gICAgcGFpbnRSZWN0Lm1vdmVCeSgtcGFpbnRPZmZzZXQpOworICAgIGF1dG8g
ZGFtYWdlUmVjdCA9IHBhaW50SW5mby5yZWN0OworICAgIGRhbWFnZVJlY3QubW92ZUJ5KC1wYWlu
dE9mZnNldCk7CiAKLSAgICBmb3IgKGF1dG8mIGJveCA6IG1faW5saW5lQ29udGVudC0+Ym94ZXNG
b3JSZWN0KHBhaW50UmVjdCkpIHsKKyAgICBhdXRvIGhhc0RhbWFnZSA9IFsmXShhdXRvJiBib3gp
IHsKKyAgICAgICAgaWYgKGJveC5zdHlsZSgpLnZpc2liaWxpdHkoKSAhPSBWaXNpYmlsaXR5OjpW
aXNpYmxlKQorICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICBhdXRvIHJlY3QgPSBl
bmNsb3NpbmdMYXlvdXRSZWN0KGJveC5pbmtPdmVyZmxvdygpKTsKKyAgICAgICAgZmxvdygpLmZs
aXBGb3JXcml0aW5nTW9kZShyZWN0KTsKKyAgICAgICAgLy8gRklYTUU6IFRoaXMgc2hvdWxkIHRl
c3QgZm9yIGludGVyc2VjdGlvbiBidXQgaG9yaXpvbnRhbCBpbmsgb3ZlcmZsb3cgaXMgbWlzY29t
cHV0ZWQgaW4gYSBmZXcgY2FzZXMgKGxpa2Ugd2l0aCBuZWdhdGl2ZSBsZXR0ZXItc3BhY2luZyku
CisgICAgICAgIHJldHVybiBkYW1hZ2VSZWN0Lm1heFkoKSA+IHJlY3QueSgpICYmIGRhbWFnZVJl
Y3QueSgpIDwgcmVjdC5tYXhZKCk7CisgICAgfTsKKworICAgIGZvciAoYXV0byYgYm94IDogbV9p
bmxpbmVDb250ZW50LT5ib3hlc0ZvclJlY3QoZGFtYWdlUmVjdCkpIHsKICAgICAgICAgaWYgKGJv
eC5pc0xpbmVCcmVhaygpKQogICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAgIGlmIChib3gu
aXNJbmxpbmVCb3goKSkKKworICAgICAgICBpZiAoYm94LmlzSW5saW5lQm94KCkpIHsKKyAgICAg
ICAgICAgIGlmICghaGFzRGFtYWdlKGJveCkpCisgICAgICAgICAgICAgICAgY29udGludWU7CisK
KyAgICAgICAgICAgIElubGluZUJveFBhaW50ZXIgcGFpbnRlcigqbV9pbmxpbmVDb250ZW50LCBi
b3gsIHBhaW50SW5mbywgcGFpbnRPZmZzZXQpOworICAgICAgICAgICAgcGFpbnRlci5wYWludCgp
OwogICAgICAgICAgICAgY29udGludWU7CisgICAgICAgIH0KKwogICAgICAgICBpZiAoYm94LnRl
eHQoKSkgewotICAgICAgICAgICAgcGFpbnRUZXh0Qm94VXNpbmdQaHlzaWNhbENvb3JkaW5hdGVz
KHBhaW50SW5mbywgcGFpbnRPZmZzZXQsIGJveCk7CisgICAgICAgICAgICBpZiAoIWJveC50ZXh0
KCktPmxlbmd0aCgpIHx8ICFoYXNEYW1hZ2UoYm94KSkKKyAgICAgICAgICAgICAgICBjb250aW51
ZTsKKworICAgICAgICAgICAgVGV4dEJveFBhaW50ZXIgcGFpbnRlcigqbV9pbmxpbmVDb250ZW50
LCBib3gsIHBhaW50SW5mbywgcGFpbnRPZmZzZXQpOworICAgICAgICAgICAgcGFpbnRlci5wYWlu
dCgpOwogICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgIH0KKwogICAgICAgICBpZiAoYXV0
byYgcmVuZGVyZXIgPSBtX2JveFRyZWUucmVuZGVyZXJGb3JMYXlvdXRCb3goYm94LmxheW91dEJv
eCgpKTsgaXM8UmVuZGVyQm94PihyZW5kZXJlcikgJiYgcmVuZGVyZXIuaXNSZXBsYWNlZCgpKSB7
CiAgICAgICAgICAgICBhdXRvJiByZW5kZXJCb3ggPSBkb3duY2FzdDxSZW5kZXJCb3g+KHJlbmRl
cmVyKTsKICAgICAgICAgICAgIGlmICghcmVuZGVyQm94Lmhhc1NlbGZQYWludGluZ0xheWVyKCkg
JiYgcGFpbnRJbmZvLnNob3VsZFBhaW50V2l0aGluUm9vdChyZW5kZXJCb3gpKQpAQCAtNTkzLDQ0
ICs2MTYsNiBAQCB2b2lkIExpbmVMYXlvdXQ6OmNsZWFySW5saW5lQ29udGVudCgpCiAgICAgbV9p
bmxpbmVDb250ZW50ID0gbnVsbHB0cjsKIH0KIAotdm9pZCBMaW5lTGF5b3V0OjpwYWludFRleHRC
b3hVc2luZ1BoeXNpY2FsQ29vcmRpbmF0ZXMoUGFpbnRJbmZvJiBwYWludEluZm8sIGNvbnN0IExh
eW91dFBvaW50JiBwYWludE9mZnNldCwgY29uc3QgSW5saW5lRGlzcGxheTo6Qm94JiB0ZXh0Qm94
KQotewotICAgIGF1dG8mIHN0eWxlID0gdGV4dEJveC5zdHlsZSgpOwotICAgIGlmICh0ZXh0Qm94
LnN0eWxlKCkudmlzaWJpbGl0eSgpICE9IFZpc2liaWxpdHk6OlZpc2libGUpCi0gICAgICAgIHJl
dHVybjsKLQotICAgIGF1dG8mIHRleHRDb250ZW50ID0gKnRleHRCb3gudGV4dCgpOwotICAgIGlm
ICghdGV4dENvbnRlbnQubGVuZ3RoKCkpCi0gICAgICAgIHJldHVybjsKLQotICAgIGF1dG8mIGZv
cm1hdHRpbmdDb250ZXh0Um9vdCA9IGZsb3coKTsKLSAgICBhdXRvIGJsb2NrSXNIb3Jpem9udGFs
V3JpdGluZyA9IGZvcm1hdHRpbmdDb250ZXh0Um9vdC5zdHlsZSgpLmlzSG9yaXpvbnRhbFdyaXRp
bmdNb2RlKCk7Ci0gICAgYXV0byBwaHlzaWNhbFBhaW50T2Zmc2V0ID0gcGFpbnRPZmZzZXQ7Ci0g
ICAgaWYgKCFibG9ja0lzSG9yaXpvbnRhbFdyaXRpbmcpIHsKLSAgICAgICAgLy8gRklYTUU6IEZp
Z3VyZSBvdXQgd2h5IHRoaXMgdHJhbnNsYXRlIGlzIHJlcXVpcmVkLgotICAgICAgICBwaHlzaWNh
bFBhaW50T2Zmc2V0Lm1vdmUoeyAwLCAtdGV4dEJveC5sb2dpY2FsUmVjdCgpLmhlaWdodCgpIH0p
OwotICAgIH0KLQotICAgIGF1dG8gcGh5c2ljYWxSZWN0ID0gWyZdKGNvbnN0IGF1dG8mIHJlY3Qp
IC0+IEZsb2F0UmVjdCB7Ci0gICAgICAgIGlmICghc3R5bGUuaXNGbGlwcGVkQmxvY2tzV3JpdGlu
Z01vZGUoKSkKLSAgICAgICAgICAgIHJldHVybiByZWN0OwotICAgICAgICBpZiAoIWJsb2NrSXNI
b3Jpem9udGFsV3JpdGluZykKLSAgICAgICAgICAgIHJldHVybiBGbG9hdFJlY3QgeyBmb3JtYXR0
aW5nQ29udGV4dFJvb3Qud2lkdGgoKSAtIHJlY3QuYm90dG9tKCksIHJlY3QubGVmdCgpICwgcmVj
dC53aWR0aCgpLCByZWN0LmhlaWdodCgpIH07Ci0gICAgICAgIEFTU0VSVF9OT1RfSU1QTEVNRU5U
RURfWUVUKCk7Ci0gICAgICAgIHJldHVybiByZWN0OwotICAgIH07Ci0KLSAgICBhdXRvIHZpc3Vh
bE92ZXJmbG93UmVjdCA9IHBoeXNpY2FsUmVjdCh0ZXh0Qm94Lmlua092ZXJmbG93KCkpOwotCi0g
ICAgYXV0byBkYW1hZ2VkUmVjdCA9IHBhaW50SW5mby5yZWN0OwotICAgIGRhbWFnZWRSZWN0Lm1v
dmVCeSgtcGh5c2ljYWxQYWludE9mZnNldCk7Ci0gICAgaWYgKGRhbWFnZWRSZWN0LnkoKSA+IHZp
c3VhbE92ZXJmbG93UmVjdC5tYXhZKCkgfHwgZGFtYWdlZFJlY3QubWF4WSgpIDwgdmlzdWFsT3Zl
cmZsb3dSZWN0LnkoKSkKLSAgICAgICAgcmV0dXJuOwotCi0gICAgVGV4dEJveFBhaW50ZXIgcGFp
bnRlcigqbV9pbmxpbmVDb250ZW50LCB0ZXh0Qm94LCBwYWludEluZm8sIHBhaW50T2Zmc2V0KTsK
LSAgICBwYWludGVyLnBhaW50KCk7Ci19Ci0KIExheW91dDo6SW5saW5lRGFtYWdlJiBMaW5lTGF5
b3V0OjplbnN1cmVMaW5lRGFtYWdlKCkKIHsKICAgICBpZiAoIW1fbGluZURhbWFnZSkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlv
bkxpbmVMYXlvdXQuaCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJ
bnRlZ3JhdGlvbkxpbmVMYXlvdXQuaAppbmRleCBmNmViNmEzODQxYTVmNTZhNTZjZTkwMzNjNTg5
MjBkNjFiZjZmNmU0Li45M2YxMWEyZWEyMDllM2M1MjI4NjQ1MjIyOThkNjdkM2UzZGExYjM3IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdy
YXRpb25MaW5lTGF5b3V0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9u
L0xheW91dEludGVncmF0aW9uTGluZUxheW91dC5oCkBAIC0xMjQsOCArMTI0LDYgQEAgcHJpdmF0
ZToKICAgICBJbmxpbmVDb250ZW50JiBlbnN1cmVJbmxpbmVDb250ZW50KCk7CiAgICAgdm9pZCB1
cGRhdGVMYXlvdXRCb3hEaW1lbnNpb25zKGNvbnN0IFJlbmRlckJveCYpOwogCi0gICAgdm9pZCBw
YWludFRleHRCb3hVc2luZ1BoeXNpY2FsQ29vcmRpbmF0ZXMoUGFpbnRJbmZvJiwgY29uc3QgTGF5
b3V0UG9pbnQmIHBhaW50T2Zmc2V0LCBjb25zdCBJbmxpbmVEaXNwbGF5OjpCb3gmKTsKLQogICAg
IExheW91dDo6SW5saW5lRGFtYWdlJiBlbnN1cmVMaW5lRGFtYWdlKCk7CiAKICAgICBjb25zdCBM
YXlvdXQ6OkNvbnRhaW5lckJveCYgcm9vdExheW91dEJveCgpIGNvbnN0OwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0lubGluZUJveFBhaW50ZXIuY3BwIGIvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL0lubGluZUJveFBhaW50ZXIuY3BwCmluZGV4IGUzMTRkYzFkMmZkNjhk
ZTc4MGIzNGJkNDlmMDdjODM2YWU5MjdjNzYuLjM2MDZjN2UzYjhkZWE3ZjkzODYzYzcyZmQ4ZjYy
ZWVjZTI4ZTU1ZDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9JbmxpbmVC
b3hQYWludGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvSW5saW5lQm94UGFp
bnRlci5jcHAKQEAgLTM3LDcgKzM3LDE5IEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIElubGlu
ZUJveFBhaW50ZXI6OklubGluZUJveFBhaW50ZXIoY29uc3QgTGVnYWN5SW5saW5lRmxvd0JveCYg
aW5saW5lQm94LCBQYWludEluZm8mIHBhaW50SW5mbywgY29uc3QgTGF5b3V0UG9pbnQmIHBhaW50
T2Zmc2V0KQotICAgIDogbV9pbmxpbmVCb3goKklubGluZUl0ZXJhdG9yOjppbmxpbmVCb3hGb3Io
aW5saW5lQm94KSkKKyAgICA6IElubGluZUJveFBhaW50ZXIoKklubGluZUl0ZXJhdG9yOjppbmxp
bmVCb3hGb3IoaW5saW5lQm94KSwgcGFpbnRJbmZvLCBwYWludE9mZnNldCkKK3sKK30KKworI2lm
IEVOQUJMRShMQVlPVVRfRk9STUFUVElOR19DT05URVhUKQorSW5saW5lQm94UGFpbnRlcjo6SW5s
aW5lQm94UGFpbnRlcihjb25zdCBMYXlvdXRJbnRlZ3JhdGlvbjo6SW5saW5lQ29udGVudCYgaW5s
aW5lQ29udGVudCwgY29uc3QgSW5saW5lRGlzcGxheTo6Qm94JiBib3gsIFBhaW50SW5mbyYgcGFp
bnRJbmZvLCBjb25zdCBMYXlvdXRQb2ludCYgcGFpbnRPZmZzZXQpCisgICAgOiBJbmxpbmVCb3hQ
YWludGVyKCpJbmxpbmVJdGVyYXRvcjo6aW5saW5lQm94Rm9yKGlubGluZUNvbnRlbnQsIGJveCks
IHBhaW50SW5mbywgcGFpbnRPZmZzZXQpCit7Cit9CisjZW5kaWYKKworSW5saW5lQm94UGFpbnRl
cjo6SW5saW5lQm94UGFpbnRlcihjb25zdCBJbmxpbmVJdGVyYXRvcjo6SW5saW5lQm94JiBpbmxp
bmVCb3gsIFBhaW50SW5mbyYgcGFpbnRJbmZvLCBjb25zdCBMYXlvdXRQb2ludCYgcGFpbnRPZmZz
ZXQpCisgICAgOiBtX2lubGluZUJveChpbmxpbmVCb3gpCiAgICAgLCBtX3BhaW50SW5mbyhwYWlu
dEluZm8pCiAgICAgLCBtX3BhaW50T2Zmc2V0KHBhaW50T2Zmc2V0KQogICAgICwgbV9yZW5kZXJl
cihtX2lubGluZUJveC5yZW5kZXJlcigpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL0lubGluZUJveFBhaW50ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9Jbmxp
bmVCb3hQYWludGVyLmgKaW5kZXggYzYzNDIzZGI5MDJkZmU4M2UyNGY5MjFhZjIwNTdlMmQyZDgy
NTJmYi4uMWZkNWI4NWE3ZTNlNWZhYmE1ZGI3NGQ4ZjkyNjBlMTMwNzFmYzUwYiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0lubGluZUJveFBhaW50ZXIuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvSW5saW5lQm94UGFpbnRlci5oCkBAIC00MiwxMSArNDIsMTYg
QEAgc3RydWN0IFBhaW50SW5mbzsKIGNsYXNzIElubGluZUJveFBhaW50ZXIgewogcHVibGljOgog
ICAgIElubGluZUJveFBhaW50ZXIoY29uc3QgTGVnYWN5SW5saW5lRmxvd0JveCYsIFBhaW50SW5m
byYsIGNvbnN0IExheW91dFBvaW50JiBwYWludE9mZnNldCk7CisjaWYgRU5BQkxFKExBWU9VVF9G
T1JNQVRUSU5HX0NPTlRFWFQpCisgICAgSW5saW5lQm94UGFpbnRlcihjb25zdCBMYXlvdXRJbnRl
Z3JhdGlvbjo6SW5saW5lQ29udGVudCYsIGNvbnN0IElubGluZURpc3BsYXk6OkJveCYsIFBhaW50
SW5mbyYsIGNvbnN0IExheW91dFBvaW50JiBwYWludE9mZnNldCk7CisjZW5kaWYKICAgICB+SW5s
aW5lQm94UGFpbnRlcigpOwogCiAgICAgdm9pZCBwYWludCgpOwogCiBwcml2YXRlOgorICAgIElu
bGluZUJveFBhaW50ZXIoY29uc3QgSW5saW5lSXRlcmF0b3I6OklubGluZUJveCYsIFBhaW50SW5m
byYsIGNvbnN0IExheW91dFBvaW50JiBwYWludE9mZnNldCk7CisKICAgICB2b2lkIHBhaW50TWFz
aygpOwogICAgIHZvaWQgcGFpbnREZWNvcmF0aW9ucygpOwogICAgIHZvaWQgcGFpbnRGaWxsTGF5
ZXJzKGNvbnN0IENvbG9yJiwgY29uc3QgRmlsbExheWVyJiwgY29uc3QgTGF5b3V0UmVjdCYgcGFp
bnRSZWN0LCBDb21wb3NpdGVPcGVyYXRvcik7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>