<?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>203059</bug_id>
          
          <creation_ts>2019-10-16 15:36:29 -0700</creation_ts>
          <short_desc>Add Swift modulemap for WebKit Private APIs</short_desc>
          <delta_ts>2023-03-23 13:51:25 -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>New Bugs</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="Dean Jackson">dino</reporter>
          <assigned_to name="Dean Jackson">dino</assigned_to>
          <cc>aroben</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>jer.noble</cc>
    
    <cc>philipj</cc>
    
    <cc>sergio</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1580732</commentid>
    <comment_count>0</comment_count>
    <who name="Dean Jackson">dino</who>
    <bug_when>2019-10-16 15:36:29 -0700</bug_when>
    <thetext>Add Swift modulemap for WebKit Private APIs</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1580735</commentid>
    <comment_count>1</comment_count>
      <attachid>381125</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2019-10-16 15:39:50 -0700</bug_when>
    <thetext>Created attachment 381125
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1580736</commentid>
    <comment_count>2</comment_count>
      <attachid>381125</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2019-10-16 15:42:00 -0700</bug_when>
    <thetext>Comment on attachment 381125
Patch

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

&gt; Source/WebKit/Shared/API/Cocoa/WebKitPrivate.h:28
&gt; +#import &lt;WebKit/WKPreferencesPrivate.h&gt;

This is still hilariously incomplete. Should we just add everything?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1580739</commentid>
    <comment_count>3</comment_count>
      <attachid>381125</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2019-10-16 15:47:56 -0700</bug_when>
    <thetext>Comment on attachment 381125
Patch

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

&gt;&gt; Source/WebKit/Shared/API/Cocoa/WebKitPrivate.h:28
&gt;&gt; +#import &lt;WebKit/WKPreferencesPrivate.h&gt;
&gt; 
&gt; This is still hilariously incomplete. Should we just add everything?

Will do separately. (even though it is a bit of a cheat that this patch is doing the single one I care about right now)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1580741</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-10-16 15:49:39 -0700</bug_when>
    <thetext>&lt;rdar://problem/56350290&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1580743</commentid>
    <comment_count>5</comment_count>
    <who name="Dean Jackson">dino</who>
    <bug_when>2019-10-16 15:49:57 -0700</bug_when>
    <thetext>Committed r251215: &lt;https://trac.webkit.org/changeset/251215&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1732644</commentid>
    <comment_count>6</comment_count>
    <who name="Dean Jackson">dino</who>
    <bug_when>2021-02-23 12:08:11 -0800</bug_when>
    <thetext>This got rolled out almost immediately. Time to try it again.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1732745</commentid>
    <comment_count>7</comment_count>
      <attachid>421377</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2021-02-23 17:16:40 -0800</bug_when>
    <thetext>Created attachment 421377
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1732751</commentid>
    <comment_count>8</comment_count>
      <attachid>421377</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2021-02-23 17:35:21 -0800</bug_when>
    <thetext>Comment on attachment 421377
Patch

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

&gt; Source/WebKit/Shared/API/Cocoa/WebKit.h:2
&gt; + * Copyright (C) 2014-2021 Apple Inc. All rights reserved.

I think this file needs a .in extension or something now?

&gt; Source/WebKit/Shared/API/Cocoa/WebKitPrivate.h:2
&gt; + * Copyright (C) 2014-2021 Apple Inc. All rights reserved.

Ditto</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1733008</commentid>
    <comment_count>9</comment_count>
      <attachid>421377</attachid>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2021-02-24 11:56:30 -0800</bug_when>
    <thetext>Comment on attachment 421377
Patch

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

&gt; Source/WebKit/Scripts/generate-umbrella-header.py:1
&gt; +#!/usr/bin/python

Does this file need a license too? (Maybe even the module maps?)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1733078</commentid>
    <comment_count>10</comment_count>
      <attachid>421377</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2021-02-24 14:23:27 -0800</bug_when>
    <thetext>Comment on attachment 421377
Patch

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

&gt;&gt; Source/WebKit/Scripts/generate-umbrella-header.py:1
&gt;&gt; +#!/usr/bin/python
&gt; 
&gt; Does this file need a license too? (Maybe even the module maps?)

The existing module maps did not. But yes, this should.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1733111</commentid>
    <comment_count>11</comment_count>
      <attachid>421468</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2021-02-24 15:21:28 -0800</bug_when>
    <thetext>Created attachment 421468
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1733116</commentid>
    <comment_count>12</comment_count>
      <attachid>421471</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2021-02-24 15:24:44 -0800</bug_when>
    <thetext>Created attachment 421471
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1733117</commentid>
    <comment_count>13</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2021-02-24 15:28:16 -0800</bug_when>
    <thetext>Is Python code here tested with both Python 2 and Python 3?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1733517</commentid>
    <comment_count>14</comment_count>
    <who name="Dean Jackson">dino</who>
    <bug_when>2021-02-25 14:24:47 -0800</bug_when>
    <thetext>(In reply to Alexey Proskuryakov from comment #13)
&gt; Is Python code here tested with both Python 2 and Python 3?

Yes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1733518</commentid>
    <comment_count>15</comment_count>
    <who name="Dean Jackson">dino</who>
    <bug_when>2021-02-25 14:25:31 -0800</bug_when>
    <thetext>These failures are because the bot needs a clean build.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1733525</commentid>
    <comment_count>16</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2021-02-25 14:38:42 -0800</bug_when>
    <thetext>Is there a way to not require a clean build? We are way conditioned to allowing ourselves that, but it&apos;s never correct behavior.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1733540</commentid>
    <comment_count>17</comment_count>
    <who name="Dean Jackson">dino</who>
    <bug_when>2021-02-25 15:17:03 -0800</bug_when>
    <thetext>(In reply to Alexey Proskuryakov from comment #16)
&gt; Is there a way to not require a clean build? We are way conditioned to
&gt; allowing ourselves that, but it&apos;s never correct behavior.

Are you asking me? I have no idea why TAPI fails on a non-clean bot build, so no, I don&apos;t know how to stop requiring it.

Truitt tickled the mac bots, which shows that a clean build succeeds.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1733548</commentid>
    <comment_count>18</comment_count>
      <attachid>421471</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2021-02-25 15:29:04 -0800</bug_when>
    <thetext>Comment on attachment 421471
Patch

It helps to know that it was an InstallAPI failure. Generally speaking, we cannot do much to fix incremental builds when API/SPI headers get renamed, and an old version is still present in the file system due to incremental nature of the build. We could and maybe should get into the habit of adding scripts to clean those up, but we haven&apos;t yet.

This patch makes NSURLDownloadSPI.h non-private, which appears unacceptable given its name. So InstallAPI inadvertently pointed out a real problem for once.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1733550</commentid>
    <comment_count>19</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2021-02-25 15:31:02 -0800</bug_when>
    <thetext>If I&apos;m missing something and it is acceptable, please fell encourage to r? again.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1733559</commentid>
    <comment_count>20</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2021-02-25 15:36:39 -0800</bug_when>
    <thetext>
&gt; This patch makes NSURLDownloadSPI.h non-private, which appears unacceptable
&gt; given its name.

Not given its name, but given that WebDownload.h is private, and imports it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1733639</commentid>
    <comment_count>21</comment_count>
      <attachid>421471</attachid>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2021-02-25 19:20:36 -0800</bug_when>
    <thetext>Comment on attachment 421471
Patch

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

&gt; Source/WebKitLegacy/WebKitLegacy.xcodeproj/project.pbxproj:-690
&gt; -		E1531BD82187B954002E3F81 /* NSURLDownloadSPI.h in Headers */ = {isa = PBXBuildFile; fileRef = E1531BD72187B8F2002E3F81 /* NSURLDownloadSPI.h */; settings = {ATTRIBUTES = (Private, ); }; };

Looks like we need to undo this change since WebDownload.h imports this header and WebDownload.h is a private header.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1733876</commentid>
    <comment_count>22</comment_count>
      <attachid>421677</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2021-02-26 10:58:43 -0800</bug_when>
    <thetext>Created attachment 421677
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1733877</commentid>
    <comment_count>23</comment_count>
    <who name="Dean Jackson">dino</who>
    <bug_when>2021-02-26 10:59:39 -0800</bug_when>
    <thetext>
The problem is that if you import the system NSURLDownload you&apos;ll get a clash if you then import NSURLDownloadSPI. TestWebKitAPI hits this.

This new patch adds the same guards that WebDownload does, so it shouldn&apos;t cause a clash if you include the umbrella.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1733878</commentid>
    <comment_count>24</comment_count>
      <attachid>421677</attachid>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2021-02-26 11:01:09 -0800</bug_when>
    <thetext>Comment on attachment 421677
Patch

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

There are bunch of modularization-related warnings we could enable too:

-Watimport-in-framework-header
-Wframework-include-private-from-public
-Wincomplete-framework-module-declaration
-Wincomplete-umbrella
-Wnon-modular-include-in-framework-module
-Wnon-modular-include-in-module
-Wquoted-include-in-framework-header

&gt; Source/WebKit/WebKit.xcodeproj/xcshareddata/xcschemes/WebKit.xcscheme:34
&gt; -      buildConfiguration = &quot;Release&quot;
&gt; +      buildConfiguration = &quot;Debug&quot;

You probably didn&apos;t leave to mean this change in.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1744841</commentid>
    <comment_count>25</comment_count>
    <who name="Dean Jackson">dino</who>
    <bug_when>2021-03-29 12:51:50 -0700</bug_when>
    <thetext>
-Watimport-in-framework-header
No config equivalent

-Wframework-include-private-from-public
CLANG_WARN_FRAMEWORK_INCLUDE_PRIVATE_FROM_PUBLIC=YES

-Wincomplete-framework-module-declaration
No config equivalent

-Wincomplete-umbrella
No config equivalent

-Wnon-modular-include-in-framework-module
CLANG_ALLOW_NON_MODULAR_INCLUDES_IN_FRAMEWORK_MODULES=NO
(this is the default)

-Wnon-modular-include-in-module
No config equivalen

-Wquoted-include-in-framework-header
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER=YES</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1744869</commentid>
    <comment_count>26</comment_count>
    <who name="Dean Jackson">dino</who>
    <bug_when>2021-03-29 13:23:55 -0700</bug_when>
    <thetext>This is going to take a bit of cleanup in JSC and WebCore.

For example WebKit&apos;s APICustomHeaderFields.h includes WebCore&apos;s CustomHeaderFields.h which has a quoted include.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1744883</commentid>
    <comment_count>27</comment_count>
      <attachid>424572</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2021-03-29 13:33:24 -0700</bug_when>
    <thetext>Created attachment 424572
WIP - does not compile</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1919472</commentid>
    <comment_count>28</comment_count>
    <who name="Ian Anderson">iana</who>
    <bug_when>2022-12-14 23:16:13 -0800</bug_when>
    <thetext>Pull request: https://github.com/WebKit/WebKit/pull/7674</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1943489</commentid>
    <comment_count>29</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2023-03-23 13:51:23 -0700</bug_when>
    <thetext>Committed 262032@main (db17513feb3f): &lt;https://commits.webkit.org/262032@main&gt;

Reviewed commits have been landed. Closing PR #7674 and removing active labels.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>381125</attachid>
            <date>2019-10-16 15:39:50 -0700</date>
            <delta_ts>2021-02-23 17:16:36 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-203059-20191017093949.patch</filename>
            <type>text/plain</type>
            <size>4657</size>
            <attacher name="Dean Jackson">dino</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjUxMTQ4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDEyY2MwMzUzNjk4MGMwY2Zi
NDIzZTNhNDAwYjU2NzE1NjI3YTAyMTMuLmNhYjhhNmVkMWNkOTJmOWVkM2Q4OTBhZjBkYmJkMzk3
NzgxODMzYzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjEgQEAKKzIwMTktMTAtMTYgIERlYW4gSmFj
a3NvbiAgPGRpbm9AYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBTd2lmdCBtb2R1bGVtYXAgZm9y
IFdlYktpdCBQcml2YXRlIEFQSXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTIwMzA1OQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIFByb3ZpZGUgYSBTd2lmdCBtb2R1bGVtYXAgZm9yIFdlYktpdF9Qcml2YXRl
LCBhbmQKKyAgICAgICAgZW5zdXJlIFdLUHJlZmVyZW5jZXNQcml2YXRlLmggaXMgZXhwb3NlZC4K
KworICAgICAgICBSZW5hbWVkIE9TWC5tb2R1bGVtYXAgdG8gbWFjT1MubW9kdWxlbWFwIHdoaWxl
IGhlcmUuCisKKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9XZWJLaXQueGNjb25maWc6CisgICAg
ICAgICogTW9kdWxlcy9pT1MucHJpdmF0ZS5tb2R1bGVtYXA6IEFkZGVkLgorICAgICAgICAqIE1v
ZHVsZXMvbWFjT1MubW9kdWxlbWFwOiBSZW5hbWVkIGZyb20gU291cmNlL1dlYktpdC9Nb2R1bGVz
L09TWC5tb2R1bGVtYXAuCisgICAgICAgICogTW9kdWxlcy9tYWNPUy5wcml2YXRlLm1vZHVsZW1h
cDogQWRkZWQuCisgICAgICAgICogU2hhcmVkL0FQSS9Db2NvYS9XZWJLaXRQcml2YXRlLmg6IElu
Y2x1ZGUgV0tQcmVmZXJlbmNlc1ByaXZhdGUuaC4KKwogMjAxOS0xMC0xNSAgQWxleCBDaHJpc3Rl
bnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIHJv
bGxpbmcgb3V0IHIyNTExMzguCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NvbmZpZ3VyYXRp
b25zL1dlYktpdC54Y2NvbmZpZyBiL1NvdXJjZS9XZWJLaXQvQ29uZmlndXJhdGlvbnMvV2ViS2l0
LnhjY29uZmlnCmluZGV4IGZlYTI1ZWVkNmUzYjIwNDA3NmEwZmMwMzEwMTVmOGQ5MjgyOTExNGEu
LmI2N2YxYzJhMThmYmUwN2UzNjU5ZDJhODZhOTAzMWZlN2M5MmY4ZTIgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvQ29uZmlndXJhdGlvbnMvV2ViS2l0LnhjY29uZmlnCisrKyBiL1NvdXJjZS9X
ZWJLaXQvQ29uZmlndXJhdGlvbnMvV2ViS2l0LnhjY29uZmlnCkBAIC0zMCw3ICszMCwxMCBAQCBJ
TkZPUExJU1RfRklMRSA9IEluZm8ucGxpc3Q7CiBERUZJTkVTX01PRFVMRSA9IFlFUzsKIE1PRFVM
RU1BUF9GSUxFID0gJChNT0RVTEVNQVBfRklMRV8kKFdLX0NPQ09BX1RPVUNIKSk7CiBNT0RVTEVN
QVBfRklMRV9jb2NvYXRvdWNoID0gTW9kdWxlcy9pT1MubW9kdWxlbWFwOwotTU9EVUxFTUFQX0ZJ
TEVfID0gTW9kdWxlcy9PU1gubW9kdWxlbWFwOworTU9EVUxFTUFQX0ZJTEVfID0gTW9kdWxlcy9t
YWNPUy5tb2R1bGVtYXA7CitNT0RVTEVNQVBfUFJJVkFURV9GSUxFID0gJChNT0RVTEVNQVBfUFJJ
VkFURV9GSUxFXyQoV0tfQ09DT0FfVE9VQ0gpKTsKK01PRFVMRU1BUF9QUklWQVRFX0ZJTEVfY29j
b2F0b3VjaCA9IE1vZHVsZXMvaU9TLnByaXZhdGUubW9kdWxlbWFwOworTU9EVUxFTUFQX1BSSVZB
VEVfRklMRV8gPSBNb2R1bGVzL21hY09TLnByaXZhdGUubW9kdWxlbWFwOwogCiBJTlNUQUxMX1BB
VEggPSAkKFdFQktJVF9GUkFNRVdPUktTX0RJUik7CiBEWUxJQl9JTlNUQUxMX05BTUVfQkFTRSA9
ICQoRFlMSUJfSU5TVEFMTF9OQU1FX0JBU0VfJChXS19VU0VfQUxURVJOQVRFX0ZSQU1FV09SS1Nf
RElSKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L01vZHVsZXMvT1NYLm1vZHVsZW1hcCBi
L1NvdXJjZS9XZWJLaXQvTW9kdWxlcy9PU1gubW9kdWxlbWFwCmRlbGV0ZWQgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCA4OWNhMDc0ZjQ3ODI4YzczNjRhMWQxZmRhMDk4ZjQ3ZWY5N2Y0MGY4Li4wMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJLaXQv
TW9kdWxlcy9PU1gubW9kdWxlbWFwCisrKyAvZGV2L251bGwKQEAgLTEsMTggKzAsMCBAQAotZnJh
bWV3b3JrIG1vZHVsZSBXZWJLaXQgW3N5c3RlbV0gW2V4dGVybl9jXSB7Ci0gIHVtYnJlbGxhIGhl
YWRlciAiV2ViS2l0LmgiCi0gIG1vZHVsZSAqIHsgZXhwb3J0ICogfQotICBleHBvcnQgKgotICAK
LSAgZXhwbGljaXQgbW9kdWxlIE5QQVBJIHsKLSAgICBoZWFkZXIgIm5wdHlwZXMuaCIKLSAgICBo
ZWFkZXIgIm5wYXBpLmgiCi0gICAgaGVhZGVyICJucGZ1bmN0aW9ucy5oIgotICAgIGhlYWRlciAi
bnBydW50aW1lLmgiCi0gICAgZXhwb3J0ICoKLSAgfQotCi0gIGV4cGxpY2l0IG1vZHVsZSBET01Q
cm9ncmVzc0V2ZW50IHsKLSAgICBoZWFkZXIgIkRPTVByb2dyZXNzRXZlbnQuaCIKLSAgICBleHBv
cnQgKgotICB9Ci19CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L01vZHVsZXMvaU9TLnByaXZh
dGUubW9kdWxlbWFwIGIvU291cmNlL1dlYktpdC9Nb2R1bGVzL2lPUy5wcml2YXRlLm1vZHVsZW1h
cApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi4wMmQ4MmU5YTc0NTFlZjQyZjA4YzhmMGJiYzMzOGYzMWYwNTU5YjY2Ci0t
LSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9Nb2R1bGVzL2lPUy5wcml2YXRlLm1vZHVs
ZW1hcApAQCAtMCwwICsxLDUgQEAKK2ZyYW1ld29yayBtb2R1bGUgV2ViS2l0X1ByaXZhdGUgW3N5
c3RlbV0gW2V4dGVybl9jXSB7CisgIHVtYnJlbGxhIGhlYWRlciAiV2ViS2l0UHJpdmF0ZS5oIgor
ICBtb2R1bGUgKiB7IGV4cG9ydCAqIH0KKyAgZXhwb3J0ICoKK30KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvTW9kdWxlcy9tYWNPUy5tb2R1bGVtYXAgYi9Tb3VyY2UvV2ViS2l0L01vZHVsZXMv
bWFjT1MubW9kdWxlbWFwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjg5Y2EwNzRmNDc4MjhjNzM2NGExZDFmZGEwOThm
NDdlZjk3ZjQwZjgKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L01vZHVsZXMvbWFj
T1MubW9kdWxlbWFwCkBAIC0wLDAgKzEsMTggQEAKK2ZyYW1ld29yayBtb2R1bGUgV2ViS2l0IFtz
eXN0ZW1dIFtleHRlcm5fY10geworICB1bWJyZWxsYSBoZWFkZXIgIldlYktpdC5oIgorICBtb2R1
bGUgKiB7IGV4cG9ydCAqIH0KKyAgZXhwb3J0ICoKKyAgCisgIGV4cGxpY2l0IG1vZHVsZSBOUEFQ
SSB7CisgICAgaGVhZGVyICJucHR5cGVzLmgiCisgICAgaGVhZGVyICJucGFwaS5oIgorICAgIGhl
YWRlciAibnBmdW5jdGlvbnMuaCIKKyAgICBoZWFkZXIgIm5wcnVudGltZS5oIgorICAgIGV4cG9y
dCAqCisgIH0KKworICBleHBsaWNpdCBtb2R1bGUgRE9NUHJvZ3Jlc3NFdmVudCB7CisgICAgaGVh
ZGVyICJET01Qcm9ncmVzc0V2ZW50LmgiCisgICAgZXhwb3J0ICoKKyAgfQorfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9Nb2R1bGVzL21hY09TLnByaXZhdGUubW9kdWxlbWFwIGIvU291cmNl
L1dlYktpdC9Nb2R1bGVzL21hY09TLnByaXZhdGUubW9kdWxlbWFwCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjAyZDgy
ZTlhNzQ1MWVmNDJmMDhjOGYwYmJjMzM4ZjMxZjA1NTliNjYKLS0tIC9kZXYvbnVsbAorKysgYi9T
b3VyY2UvV2ViS2l0L01vZHVsZXMvbWFjT1MucHJpdmF0ZS5tb2R1bGVtYXAKQEAgLTAsMCArMSw1
IEBACitmcmFtZXdvcmsgbW9kdWxlIFdlYktpdF9Qcml2YXRlIFtzeXN0ZW1dIFtleHRlcm5fY10g
eworICB1bWJyZWxsYSBoZWFkZXIgIldlYktpdFByaXZhdGUuaCIKKyAgbW9kdWxlICogeyBleHBv
cnQgKiB9CisgIGV4cG9ydCAqCit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9B
UEkvQ29jb2EvV2ViS2l0UHJpdmF0ZS5oIGIvU291cmNlL1dlYktpdC9TaGFyZWQvQVBJL0NvY29h
L1dlYktpdFByaXZhdGUuaAppbmRleCAxOGJmMGM1ZDhhNjNhZmUzOTAzMmZiNDQ3YjUyMjVlNTIx
ODc2YmVhLi42ZWMzYjRkM2QzOGViZDI0OTM3MmU3MDFjY2JhNjdmNTQ5Yzc3OTFmIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9BUEkvQ29jb2EvV2ViS2l0UHJpdmF0ZS5oCisrKyBi
L1NvdXJjZS9XZWJLaXQvU2hhcmVkL0FQSS9Db2NvYS9XZWJLaXRQcml2YXRlLmgKQEAgLTI1LDYg
KzI1LDcgQEAKIAogI2ltcG9ydCA8V2ViS2l0L1dLSGlzdG9yeURlbGVnYXRlUHJpdmF0ZS5oPgog
I2ltcG9ydCA8V2ViS2l0L1dLTmF2aWdhdGlvblByaXZhdGUuaD4KKyNpbXBvcnQgPFdlYktpdC9X
S1ByZWZlcmVuY2VzUHJpdmF0ZS5oPgogI2ltcG9ydCA8V2ViS2l0L1dLUHJvY2Vzc1Bvb2xQcml2
YXRlLmg+CiAjaW1wb3J0IDxXZWJLaXQvV0tVSURlbGVnYXRlUHJpdmF0ZS5oPgogI2ltcG9ydCA8
V2ViS2l0L1dLV2ViVmlld0NvbmZpZ3VyYXRpb25Qcml2YXRlLmg+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>421377</attachid>
            <date>2021-02-23 17:16:40 -0800</date>
            <delta_ts>2021-02-24 15:21:24 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-203059-20210224121639.patch</filename>
            <type>text/plain</type>
            <size>21468</size>
            <attacher name="Dean Jackson">dino</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjczMzE2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDMzNTczMmVlYzg2MmZiYjM3
YzZjOGE5ZmZkZDYzMzRhMjUyZmExYzYuLjNmYzkxMDZiNzFlMDRhNzI4OTk4ZDY2ZTM2ZjhmZDc0
NWJkZmQ4NjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzcgQEAKKzIwMjEtMDItMjMgIERlYW4gSmFj
a3NvbiAgPGRpbm9AYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBTd2lmdCBtb2R1bGVtYXAgZm9y
IFdlYktpdCBQcml2YXRlIEFQSXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTIwMzA1OQorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNTYzNTAyOTA+CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUHJvdmlkZSBh
IFN3aWZ0IG1vZHVsZW1hcCBmb3IgV2ViS2l0X1ByaXZhdGUsIGFuZAorICAgICAgICBlbnN1cmUg
dGhhdCBhbGwgUHJpdmF0ZUhlYWRlcnMgYXJlIGluY2x1ZGVkIGluIG91ciB1bWJyZWxsYQorICAg
ICAgICBoZWFkZXIgKGJlY2F1c2Ugd2UgZG9uJ3Qga25vdyB3aG8gaXMgaW5jbHVkaW5nIHRoZSB2
YXJpb3VzCisgICAgICAgIGZpbGVzKS4KKworICAgICAgICBVc2VkIHRoZSBzYW1lIGFwcHJvYWNo
IHRvIGdlbmVyYXRlZCB0aGUgcHVibGljIHVtYnJlbGxhIGhlYWRlci4KKyAgICAgICAgSW4gYm90
aCBjYXNlcyB0aGlzIGhhcyBhZGRlZCBhIGxvdCBvZiBleHRyYSBpbXBvcnQgc3RhdGVtZW50cywK
KyAgICAgICAgYnV0IGhvcGVmdWxseSB0aGF0IGlzIG9rLgorCisgICAgICAgIFJlbmFtZWQgT1NY
Lm1vZHVsZW1hcCB0byBtYWNPUy5tb2R1bGVtYXAgd2hpbGUgaGVyZS4KKworICAgICAgICAqIENv
bmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWc6CisgICAgICAgICogQ29uZmlndXJhdGlvbnMvV2Vi
S2l0LnhjY29uZmlnOgorICAgICAgICAqIE1vZHVsZXMvaU9TLnByaXZhdGUubW9kdWxlbWFwOiBB
ZGRlZC4KKyAgICAgICAgKiBNb2R1bGVzL21hY09TLm1vZHVsZW1hcDogUmVuYW1lZCBmcm9tIFNv
dXJjZS9XZWJLaXQvTW9kdWxlcy9PU1gubW9kdWxlbWFwLgorICAgICAgICAqIE1vZHVsZXMvbWFj
T1MucHJpdmF0ZS5tb2R1bGVtYXA6IEFkZGVkLgorICAgICAgICAqIFNjcmlwdHMvZ2VuZXJhdGUt
dW1icmVsbGEtaGVhZGVyLnB5OiBBZGRlZC4gR2VuZXJhdGVzIHRoZSB1bWJyZWxsYSBoZWFkZXIg
ZmlsZS4KKyAgICAgICAgKGdlbmVyYXRlX3VtYnJlbGxhX2hlYWRlcik6CisgICAgICAgICogU2hh
cmVkL0FQSS9Db2NvYS9XZWJLaXQuaDoKKyAgICAgICAgKiBTaGFyZWQvQVBJL0NvY29hL1dlYktp
dFByaXZhdGUuaDoKKyAgICAgICAgKiBXZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoK
KyAgICAgICAgKiBXZWJLaXQueGNvZGVwcm9qL3hjc2hhcmVkZGF0YS94Y3NjaGVtZXMvV2ViS2l0
Lnhjc2NoZW1lOgorICAgICAgICAqIFNoYXJlZC9BUEkvYy9XS0ltbWVkaWF0ZUFjdGlvblR5cGVz
Lmg6IFJlbW92ZSB1bnVzZWQgI2RlZmluZSB0aGF0IHdhcyBjbGFzaGluZyB3aXRoIHRoZSB0eXBl
IHRoYXQKKyAgICAgICAgaGFkIGJlZW4gZGVmaW5lZCBlbHNld2hlcmUuCisgICAgICAgICogVUlQ
cm9jZXNzL0FQSS9Db2NvYS9XS0NvbnRleHRNZW51RWxlbWVudEluZm9Qcml2YXRlLmg6IEd1YXJk
IHRoaXMgZm9yIGlPUy4KKwogMjAyMS0wMi0yMyAgS2ltbW8gS2lubnVuZW4gIDxra2lubnVuZW5A
YXBwbGUuY29tPgogCiAgICAgICAgIFJFR1JFU1NJT04ocjI3MzIwNCk6IHdlYmtpdHB5IHRlc3Rz
IGZhaWwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvQ2hhbmdlTG9nIGIvU291cmNl
L1dlYktpdExlZ2FjeS9DaGFuZ2VMb2cKaW5kZXggMDY0ZDE5YmU4ZjNjNjc1MzE2NThjYzE4NWI4
NTZmNDZlYjNhNmE4MS4uNDRhMjEwMzIzMGE5YmJkMmY4YWEyNjhkZmEyNjk0ODUxNThjNmI4YSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dl
YktpdExlZ2FjeS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAyMS0wMi0yMyAgRGVhbiBK
YWNrc29uICA8ZGlub0BhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIFN3aWZ0IG1vZHVsZW1hcCBm
b3IgV2ViS2l0IFByaXZhdGUgQVBJcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MjAzMDU5CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS81NjM1MDI5MD4K
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBEb24ndCBm
b3J3YXJkIE5TVVJMRG93bmxvYWRTUEkuaCBpbnRvIHRoZSBmcmFtZXdvcmsuCisKKyAgICAgICAg
KiBXZWJLaXRMZWdhY3kueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKwogMjAyMS0wMi0wOCAg
Q29tbWl0IFF1ZXVlICA8Y29tbWl0LXF1ZXVlQHdlYmtpdC5vcmc+CiAKICAgICAgICAgVW5yZXZp
ZXdlZCwgcmV2ZXJ0aW5nIHIyNzI0ODAsIHIyNzI0ODEsIGFuZCByMjcyNTAwLgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9Db25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnIGIvU291cmNlL1dl
YktpdC9Db25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnCmluZGV4IGUyODI5ODRmNGY0NDBmZTZl
NzEzNTEwNDdhYTdkZTk0OGQ4MWFmZTAuLmZhZDNlZmNiYTJjNWI4YjhhYTU0M2YzMDZjNTdhMWQ4
OWY1ZTY4OTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ29uZmlndXJhdGlvbnMvQmFzZS54
Y2NvbmZpZworKysgYi9Tb3VyY2UvV2ViS2l0L0NvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWcK
QEAgLTM0LDYgKzM0LDcgQEAgQUxXQVlTX1NFQVJDSF9VU0VSX1BBVEhTID0gTk87CiBDTEFOR19D
WFhfTEFOR1VBR0VfU1RBTkRBUkQgPSBnbnUrKzF6OwogQ0xBTkdfQ1hYX0xJQlJBUlkgPSBsaWJj
Kys7CiBDTEFOR19FTkFCTEVfT0JKQ19XRUFLID0gWUVTOworQ0xBTkdfTU9EVUxFU19FTkFCTEVf
VkVSSUZJRVJfVE9PTCA9IFlFUzsKIENMQU5HX1dBUk5fQkxPQ0tfQ0FQVFVSRV9BVVRPUkVMRUFT
SU5HID0gWUVTOwogQ0xBTkdfV0FSTl9CT09MX0NPTlZFUlNJT04gPSBZRVM7CiBDTEFOR19XQVJO
X0NPTU1BID0gWUVTOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9Db25maWd1cmF0aW9ucy9X
ZWJLaXQueGNjb25maWcgYi9Tb3VyY2UvV2ViS2l0L0NvbmZpZ3VyYXRpb25zL1dlYktpdC54Y2Nv
bmZpZwppbmRleCAxMTNmMTAxMTc3MzMyMTI4YTE1NjY1MmQ3ZjNhNjcwMjk1ZDQxODgyLi5kOTMy
Y2JmNTE2NmRhZDY0ZGFmNzE4OWRlNGJmNjM3ZDBkYmUwNDMxIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L0NvbmZpZ3VyYXRpb25zL1dlYktpdC54Y2NvbmZpZworKysgYi9Tb3VyY2UvV2ViS2l0
L0NvbmZpZ3VyYXRpb25zL1dlYktpdC54Y2NvbmZpZwpAQCAtMzEsNyArMzEsMTAgQEAgSU5GT1BM
SVNUX0ZJTEUgPSBJbmZvLnBsaXN0OwogREVGSU5FU19NT0RVTEUgPSBZRVM7CiBNT0RVTEVNQVBf
RklMRSA9ICQoTU9EVUxFTUFQX0ZJTEVfJChXS19DT0NPQV9UT1VDSCkpOwogTU9EVUxFTUFQX0ZJ
TEVfY29jb2F0b3VjaCA9IE1vZHVsZXMvaU9TLm1vZHVsZW1hcDsKLU1PRFVMRU1BUF9GSUxFXyA9
IE1vZHVsZXMvT1NYLm1vZHVsZW1hcDsKK01PRFVMRU1BUF9GSUxFXyA9IE1vZHVsZXMvbWFjT1Mu
bW9kdWxlbWFwOworTU9EVUxFTUFQX1BSSVZBVEVfRklMRSA9ICQoTU9EVUxFTUFQX1BSSVZBVEVf
RklMRV8kKFdLX0NPQ09BX1RPVUNIKSk7CitNT0RVTEVNQVBfUFJJVkFURV9GSUxFX2NvY29hdG91
Y2ggPSBNb2R1bGVzL2lPUy5wcml2YXRlLm1vZHVsZW1hcDsKK01PRFVMRU1BUF9QUklWQVRFX0ZJ
TEVfID0gTW9kdWxlcy9tYWNPUy5wcml2YXRlLm1vZHVsZW1hcDsKIAogSU5TVEFMTF9QQVRIID0g
JChXRUJLSVRfRlJBTUVXT1JLU19ESVIpOwogRFlMSUJfSU5TVEFMTF9OQU1FX0JBU0UgPSAkKERZ
TElCX0lOU1RBTExfTkFNRV9CQVNFXyQoV0tfVVNFX0FMVEVSTkFURV9GUkFNRVdPUktTX0RJUikp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9Nb2R1bGVzL09TWC5tb2R1bGVtYXAgYi9Tb3Vy
Y2UvV2ViS2l0L01vZHVsZXMvT1NYLm1vZHVsZW1hcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggODljYTA3NGY0NzgyOGM3MzY0YTFkMWZkYTA5OGY0N2VmOTdmNDBmOC4uMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViS2l0L01vZHVs
ZXMvT1NYLm1vZHVsZW1hcAorKysgL2Rldi9udWxsCkBAIC0xLDE4ICswLDAgQEAKLWZyYW1ld29y
ayBtb2R1bGUgV2ViS2l0IFtzeXN0ZW1dIFtleHRlcm5fY10gewotICB1bWJyZWxsYSBoZWFkZXIg
IldlYktpdC5oIgotICBtb2R1bGUgKiB7IGV4cG9ydCAqIH0KLSAgZXhwb3J0ICoKLSAgCi0gIGV4
cGxpY2l0IG1vZHVsZSBOUEFQSSB7Ci0gICAgaGVhZGVyICJucHR5cGVzLmgiCi0gICAgaGVhZGVy
ICJucGFwaS5oIgotICAgIGhlYWRlciAibnBmdW5jdGlvbnMuaCIKLSAgICBoZWFkZXIgIm5wcnVu
dGltZS5oIgotICAgIGV4cG9ydCAqCi0gIH0KLQotICBleHBsaWNpdCBtb2R1bGUgRE9NUHJvZ3Jl
c3NFdmVudCB7Ci0gICAgaGVhZGVyICJET01Qcm9ncmVzc0V2ZW50LmgiCi0gICAgZXhwb3J0ICoK
LSAgfQotfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9Nb2R1bGVzL2lPUy5wcml2YXRlLm1v
ZHVsZW1hcCBiL1NvdXJjZS9XZWJLaXQvTW9kdWxlcy9pT1MucHJpdmF0ZS5tb2R1bGVtYXAKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uMDJkODJlOWE3NDUxZWY0MmYwOGM4ZjBiYmMzMzhmMzFmMDU1OWI2NgotLS0gL2Rl
di9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvTW9kdWxlcy9pT1MucHJpdmF0ZS5tb2R1bGVtYXAK
QEAgLTAsMCArMSw1IEBACitmcmFtZXdvcmsgbW9kdWxlIFdlYktpdF9Qcml2YXRlIFtzeXN0ZW1d
IFtleHRlcm5fY10geworICB1bWJyZWxsYSBoZWFkZXIgIldlYktpdFByaXZhdGUuaCIKKyAgbW9k
dWxlICogeyBleHBvcnQgKiB9CisgIGV4cG9ydCAqCit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L01vZHVsZXMvbWFjT1MubW9kdWxlbWFwIGIvU291cmNlL1dlYktpdC9Nb2R1bGVzL21hY09T
Lm1vZHVsZW1hcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44OWNhMDc0ZjQ3ODI4YzczNjRhMWQxZmRhMDk4ZjQ3ZWY5
N2Y0MGY4Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9Nb2R1bGVzL21hY09TLm1v
ZHVsZW1hcApAQCAtMCwwICsxLDE4IEBACitmcmFtZXdvcmsgbW9kdWxlIFdlYktpdCBbc3lzdGVt
XSBbZXh0ZXJuX2NdIHsKKyAgdW1icmVsbGEgaGVhZGVyICJXZWJLaXQuaCIKKyAgbW9kdWxlICog
eyBleHBvcnQgKiB9CisgIGV4cG9ydCAqCisgIAorICBleHBsaWNpdCBtb2R1bGUgTlBBUEkgewor
ICAgIGhlYWRlciAibnB0eXBlcy5oIgorICAgIGhlYWRlciAibnBhcGkuaCIKKyAgICBoZWFkZXIg
Im5wZnVuY3Rpb25zLmgiCisgICAgaGVhZGVyICJucHJ1bnRpbWUuaCIKKyAgICBleHBvcnQgKgor
ICB9CisKKyAgZXhwbGljaXQgbW9kdWxlIERPTVByb2dyZXNzRXZlbnQgeworICAgIGhlYWRlciAi
RE9NUHJvZ3Jlc3NFdmVudC5oIgorICAgIGV4cG9ydCAqCisgIH0KK30KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvTW9kdWxlcy9tYWNPUy5wcml2YXRlLm1vZHVsZW1hcCBiL1NvdXJjZS9XZWJL
aXQvTW9kdWxlcy9tYWNPUy5wcml2YXRlLm1vZHVsZW1hcApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wMmQ4MmU5YTc0
NTFlZjQyZjA4YzhmMGJiYzMzOGYzMWYwNTU5YjY2Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNl
L1dlYktpdC9Nb2R1bGVzL21hY09TLnByaXZhdGUubW9kdWxlbWFwCkBAIC0wLDAgKzEsNSBAQAor
ZnJhbWV3b3JrIG1vZHVsZSBXZWJLaXRfUHJpdmF0ZSBbc3lzdGVtXSBbZXh0ZXJuX2NdIHsKKyAg
dW1icmVsbGEgaGVhZGVyICJXZWJLaXRQcml2YXRlLmgiCisgIG1vZHVsZSAqIHsgZXhwb3J0ICog
fQorICBleHBvcnQgKgorfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TY3JpcHRzL2dlbmVy
YXRlLXVtYnJlbGxhLWhlYWRlci5weSBiL1NvdXJjZS9XZWJLaXQvU2NyaXB0cy9nZW5lcmF0ZS11
bWJyZWxsYS1oZWFkZXIucHkKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOWE4YWZjOTQ3ODFjMThjZmQzMjEyMGRhOTlk
YmE3YTNlNWY2YzcwOQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvU2NyaXB0cy9n
ZW5lcmF0ZS11bWJyZWxsYS1oZWFkZXIucHkKQEAgLTAsMCArMSw3MCBAQAorIyEvdXNyL2Jpbi9w
eXRob24KKworaW1wb3J0IGZpbGVjbXAKK2ltcG9ydCBvcworaW1wb3J0IHJlCisKKworZGVmIGdl
bmVyYXRlX3VtYnJlbGxhX2hlYWRlcihpbnB1dF9maWxlbmFtZSwgb3V0cHV0X2ZpbGVuYW1lLCB0
ZW1wb3V0cHV0X2ZpbGVuYW1lLCBoZWFkZXJfZGlybmFtZSwgZnJhbWV3b3JrX25hbWUsIG1vZHVs
ZW1hcF9maWxlbmFtZSk6CisgICAgaW5jbHVkZV9wYXR0ZXJuID0gcmUuY29tcGlsZShyIlwjKGlu
Y2x1ZGV8aW1wb3J0KVxzK1w8IiArIGZyYW1ld29ya19uYW1lICsgciJcLyguKilcPiIpCisgICAg
ZXhjbHVkZV9wYXR0ZXJuID0gcmUuY29tcGlsZShyJ1xzKmV4Y2x1ZGVccytoZWFkZXJccysiKC4q
KSInKQorCisgICAgZXhpc3RpbmdfZnJhbWV3b3JrX2hlYWRlcnMgPSBzZXQoKQorICAgIG91dHB1
dF9oZWFkZXJzID0gW10KKyAgICBibG9ja2xpc3QgPSB7CisgICAgICAgICIlc1ByaXZhdGUuaCIg
JSBmcmFtZXdvcmtfbmFtZSwKKyAgICAgICAgIiVzLmgiICUgZnJhbWV3b3JrX25hbWUsCisgICAg
fQorCisgICAgd2l0aCBvcGVuKG1vZHVsZW1hcF9maWxlbmFtZSwgInIiKSBhcyBtb2R1bGVtYXBf
ZmlsZToKKyAgICAgICAgZm9yIGxpbmUgaW4gbW9kdWxlbWFwX2ZpbGU6CisgICAgICAgICAgICBt
YXRjaCA9IGV4Y2x1ZGVfcGF0dGVybi5zZWFyY2gobGluZSkKKyAgICAgICAgICAgIGlmIG1hdGNo
OgorICAgICAgICAgICAgICAgIGV4aXN0aW5nX2ZyYW1ld29ya19oZWFkZXJzLmFkZChtYXRjaC5n
cm91cCgxKSkKKworICAgIHdpdGggb3Blbih0ZW1wb3V0cHV0X2ZpbGVuYW1lIG9yIG91dHB1dF9m
aWxlbmFtZSwgIncrIikgYXMgb3V0cHV0X2ZpbGU6CisgICAgICAgIHdpdGggb3BlbihpbnB1dF9m
aWxlbmFtZSwgInIiKSBhcyBpbnB1dF9maWxlOgorICAgICAgICAgICAgZm9yIGxpbmUgaW4gaW5w
dXRfZmlsZToKKyAgICAgICAgICAgICAgICBtYXRjaCA9IGluY2x1ZGVfcGF0dGVybi5zZWFyY2go
bGluZSkKKyAgICAgICAgICAgICAgICBpZiBtYXRjaDoKKyAgICAgICAgICAgICAgICAgICAgZXhp
c3RpbmdfZnJhbWV3b3JrX2hlYWRlcnMuYWRkKG1hdGNoLmdyb3VwKDIpKQorCisgICAgICAgICAg
ICAgICAgb3V0cHV0X2ZpbGUud3JpdGUobGluZSkKKworICAgICAgICBmb3IgKGRpcnBhdGgsIGRp
cm5hbWVzLCBmaWxlbmFtZXMpIGluIG9zLndhbGsoaGVhZGVyX2Rpcm5hbWUpOgorICAgICAgICAg
ICAgZm9yIGZpbGUgaW4gZmlsZW5hbWVzOgorICAgICAgICAgICAgICAgIHBhdGggPSBvcy5wYXRo
LnJlbHBhdGgob3MucGF0aC5qb2luKGRpcnBhdGgsIGZpbGUpLCBzdGFydD1oZWFkZXJfZGlybmFt
ZSkKKworICAgICAgICAgICAgICAgIGlmIHBhdGggaW4gYmxvY2tsaXN0IG9yIHBhdGggaW4gZXhp
c3RpbmdfZnJhbWV3b3JrX2hlYWRlcnMgb3Igbm90IHBhdGguZW5kc3dpdGgoIi5oIik6CisgICAg
ICAgICAgICAgICAgICAgIGNvbnRpbnVlCisKKyAgICAgICAgICAgICAgICBvdXRwdXRfaGVhZGVy
cy5hcHBlbmQocGF0aCkKKworICAgICAgICBvdXRwdXRfaGVhZGVycy5zb3J0KCkKKyAgICAgICAg
b3V0cHV0X2ZpbGUud3JpdGUoIlxuXG4iKQorCisgICAgICAgIGZvciBvdXRwdXRfaGVhZGVyIGlu
IG91dHB1dF9oZWFkZXJzOgorICAgICAgICAgICAgb3V0cHV0X2ZpbGUud3JpdGUoIiNpbXBvcnQg
PCVzLyVzPlxuIiAlIChmcmFtZXdvcmtfbmFtZSwgb3V0cHV0X2hlYWRlcikpCisKKyAgICBpZiB0
ZW1wb3V0cHV0X2ZpbGVuYW1lIGFuZCAobm90IG9zLnBhdGguZXhpc3RzKG91dHB1dF9maWxlbmFt
ZSkgb3Igbm90IGZpbGVjbXAuY21wKG91dHB1dF9maWxlbmFtZSwgdGVtcG91dHB1dF9maWxlbmFt
ZSkpOgorICAgICAgICBvcy5yZW5hbWUodGVtcG91dHB1dF9maWxlbmFtZSwgb3V0cHV0X2ZpbGVu
YW1lKQorCisKK2lmIF9fbmFtZV9fID09ICJfX21haW5fXyI6CisgICAgaW1wb3J0IGFyZ3BhcnNl
CisgICAgaW1wb3J0IHN5cworCisgICAgcGFyc2VyID0gYXJncGFyc2UuQXJndW1lbnRQYXJzZXIo
KQorICAgIHBhcnNlci5hZGRfYXJndW1lbnQoIi0taW5wdXQiLCB0eXBlPXN0ciwgZGVmYXVsdD1O
b25lLCBoZWxwPSJJbnB1dCBoZWFkZXIgZmlsZSAoaWUuICR7U1JDUk9PVH0vV2ViS2l0UHJpdmF0
ZS5oKSIpCisgICAgcGFyc2VyLmFkZF9hcmd1bWVudCgiLS1vdXRwdXQiLCB0eXBlPXN0ciwgZGVm
YXVsdD1Ob25lLCBoZWxwPSJPdXRwdXQgaGVhZGVyIGZpbGUgKGllLiAke0RTVFJPT1R9L1dlYktp
dC5mcmFtZXdvcmsvUHJpdmF0ZUhlYWRlcnMvV2ViS2l0UHJpdmF0ZS5oKSIpCisgICAgcGFyc2Vy
LmFkZF9hcmd1bWVudCgiLS10ZW1wb3V0cHV0IiwgdHlwZT1zdHIsIGRlZmF1bHQ9Tm9uZSwgaGVs
cD0iVGVtcG9yYXJ5IG91dHB1dCBmaWxlIChpZS4gJHtUQVJHRVRfVEVNUF9ESVJ9L1dlYktpdFBy
aXZhdGUuaFxuSWYgc2V0LCB0aGUgaGVhZGVyIHdpbGwgYmUgZ2VuZXJhdGVkIHRvIHRoaXMgcGF0
aCwgYW5kIHRoZSBvdXRwdXQgcGF0aCB3aWxsIG9ubHkgYmUgdG91Y2hlZCBpZiB0aGUgZmlsZSBj
b250ZW50cyBoYXZlIGNoYW5nZWQuIikKKyAgICBwYXJzZXIuYWRkX2FyZ3VtZW50KCItLWhlYWRl
cnMiLCB0eXBlPXN0ciwgZGVmYXVsdD1Ob25lLCBoZWxwPSJIZWFkZXIgZGlyZWN0b3J5IChpZS4g
JHtEU1RST09UfS9XZWJLaXQuZnJhbWV3b3JrL1ByaXZhdGVIZWFkZXJzKSIpCisgICAgcGFyc2Vy
LmFkZF9hcmd1bWVudCgiLS1mcmFtZXdvcmsiLCB0eXBlPXN0ciwgZGVmYXVsdD1Ob25lLCBoZWxw
PSJGcmFtZXdvcmsgbmFtZSAoaWUuIFdlYktpdCkiKQorICAgIHBhcnNlci5hZGRfYXJndW1lbnQo
Ii0tbW9kdWxlbWFwIiwgdHlwZT1zdHIsIGRlZmF1bHQ9Tm9uZSwgaGVscD0iTW9kdWxlIG1hcCBm
aWxlIChpZS4gbW9kdWxlLnByaXZhdGUubW9kdWxlbWFwKSIpCisgICAgYXJncyA9IHBhcnNlci5w
YXJzZV9hcmdzKCkKKworICAgIGlmIGFyZ3MuaW5wdXQgaXMgTm9uZSBvciBhcmdzLm91dHB1dCBp
cyBOb25lIG9yIGFyZ3MuaGVhZGVycyBpcyBOb25lIG9yIGFyZ3MuZnJhbWV3b3JrIGlzIE5vbmUg
b3IgYXJncy5tb2R1bGVtYXAgaXMgTm9uZToKKyAgICAgICAgcGFyc2VyLnByaW50X2hlbHAoKQor
ICAgICAgICBzeXMuZXhpdCgxKQorCisgICAgZ2VuZXJhdGVfdW1icmVsbGFfaGVhZGVyKGFyZ3Mu
aW5wdXQsIGFyZ3Mub3V0cHV0LCBhcmdzLnRlbXBvdXRwdXQsIGFyZ3MuaGVhZGVycywgYXJncy5m
cmFtZXdvcmssIGFyZ3MubW9kdWxlbWFwKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFy
ZWQvQVBJL0NvY29hL1dlYktpdC5oIGIvU291cmNlL1dlYktpdC9TaGFyZWQvQVBJL0NvY29hL1dl
YktpdC5oCmluZGV4IGYwNDU5OTU4ZTEzZjFhZTJlY2M4ZmM4NjkyMWMxMGRjN2QyMmI4MWEuLjEy
MjBhOTVjMWNjN2EwODcyMGY1NDgzOTZmNzUzYTYzNWE0ZTRhODMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvU2hhcmVkL0FQSS9Db2NvYS9XZWJLaXQuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1No
YXJlZC9BUEkvQ29jb2EvV2ViS2l0LmgKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0
IChDKSAyMDE0IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAo
QykgMjAxNC0yMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtMjMsNDkgKzIzLDYgQEAKICAqIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaW1wb3J0IDxXZWJLaXQvTlNBdHRyaWJ1dGVkU3Ry
aW5nLmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tCYWNrRm9yd2FyZExpc3QuaD4KLSNpbXBvcnQgPFdl
YktpdC9XS0JhY2tGb3J3YXJkTGlzdEl0ZW0uaD4KLSNpbXBvcnQgPFdlYktpdC9XS0NvbnRlbnRS
dWxlTGlzdC5oPgotI2ltcG9ydCA8V2ViS2l0L1dLQ29udGVudFJ1bGVMaXN0U3RvcmUuaD4KLSNp
bXBvcnQgPFdlYktpdC9XS0NvbnRlbnRXb3JsZC5oPgotI2ltcG9ydCA8V2ViS2l0L1dLQ29udGV4
dE1lbnVFbGVtZW50SW5mby5oPgotI2ltcG9ydCA8V2ViS2l0L1dLRG93bmxvYWQuaD4KLSNpbXBv
cnQgPFdlYktpdC9XS0Rvd25sb2FkRGVsZWdhdGUuaD4KLSNpbXBvcnQgPFdlYktpdC9XS0Vycm9y
Lmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tGaW5kQ29uZmlndXJhdGlvbi5oPgotI2ltcG9ydCA8V2Vi
S2l0L1dLRmluZFJlc3VsdC5oPgotI2ltcG9ydCA8V2ViS2l0L1dLRm91bmRhdGlvbi5oPgotI2lt
cG9ydCA8V2ViS2l0L1dLRnJhbWVJbmZvLmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tIVFRQQ29va2ll
U3RvcmUuaD4KLSNpbXBvcnQgPFdlYktpdC9XS05hdmlnYXRpb24uaD4KLSNpbXBvcnQgPFdlYktp
dC9XS05hdmlnYXRpb25BY3Rpb24uaD4KLSNpbXBvcnQgPFdlYktpdC9XS05hdmlnYXRpb25EZWxl
Z2F0ZS5oPgotI2ltcG9ydCA8V2ViS2l0L1dLTmF2aWdhdGlvblJlc3BvbnNlLmg+Ci0jaW1wb3J0
IDxXZWJLaXQvV0tPcGVuUGFuZWxQYXJhbWV0ZXJzLmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tQREZD
b25maWd1cmF0aW9uLmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tQcmVmZXJlbmNlcy5oPgotI2ltcG9y
dCA8V2ViS2l0L1dLUHJldmlld0FjdGlvbkl0ZW0uaD4KLSNpbXBvcnQgPFdlYktpdC9XS1ByZXZp
ZXdBY3Rpb25JdGVtSWRlbnRpZmllcnMuaD4KLSNpbXBvcnQgPFdlYktpdC9XS1ByZXZpZXdFbGVt
ZW50SW5mby5oPgotI2ltcG9ydCA8V2ViS2l0L1dLUHJvY2Vzc1Bvb2wuaD4KLSNpbXBvcnQgPFdl
YktpdC9XS1NjcmlwdE1lc3NhZ2UuaD4KLSNpbXBvcnQgPFdlYktpdC9XS1NjcmlwdE1lc3NhZ2VI
YW5kbGVyLmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tTY3JpcHRNZXNzYWdlSGFuZGxlcldpdGhSZXBs
eS5oPgotI2ltcG9ydCA8V2ViS2l0L1dLU2VjdXJpdHlPcmlnaW4uaD4KLSNpbXBvcnQgPFdlYktp
dC9XS1NuYXBzaG90Q29uZmlndXJhdGlvbi5oPgotI2ltcG9ydCA8V2ViS2l0L1dLVUlEZWxlZ2F0
ZS5oPgotI2ltcG9ydCA8V2ViS2l0L1dLVVJMU2NoZW1lSGFuZGxlci5oPgotI2ltcG9ydCA8V2Vi
S2l0L1dLVVJMU2NoZW1lVGFzay5oPgotI2ltcG9ydCA8V2ViS2l0L1dLVXNlckNvbnRlbnRDb250
cm9sbGVyLmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tVc2VyU2NyaXB0Lmg+Ci0jaW1wb3J0IDxXZWJL
aXQvV0tXZWJWaWV3Lmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tXZWJWaWV3Q29uZmlndXJhdGlvbi5o
PgotI2ltcG9ydCA8V2ViS2l0L1dLV2VicGFnZVByZWZlcmVuY2VzLmg+Ci0jaW1wb3J0IDxXZWJL
aXQvV0tXZWJzaXRlRGF0YVJlY29yZC5oPgotI2ltcG9ydCA8V2ViS2l0L1dLV2Vic2l0ZURhdGFT
dG9yZS5oPgotI2ltcG9ydCA8V2ViS2l0L1dLV2luZG93RmVhdHVyZXMuaD4KLQogI2lmICFkZWZp
bmVkKFRBUkdFVF9PU19NQUNDQVRBTFlTVCkgfHwgIVRBUkdFVF9PU19NQUNDQVRBTFlTVAogI2lt
cG9ydCA8V2ViS2l0L1dlYktpdExlZ2FjeS5oPgogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L1NoYXJlZC9BUEkvQ29jb2EvV2ViS2l0UHJpdmF0ZS5oIGIvU291cmNlL1dlYktpdC9T
aGFyZWQvQVBJL0NvY29hL1dlYktpdFByaXZhdGUuaAppbmRleCAxOGJmMGM1ZDhhNjNhZmUzOTAz
MmZiNDQ3YjUyMjVlNTIxODc2YmVhLi45MTRkNzdjYTI1MWViZTBmOTYyNWJhYjdmNTVlNGExNGEz
ZWU0MTljIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9BUEkvQ29jb2EvV2ViS2l0
UHJpdmF0ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0FQSS9Db2NvYS9XZWJLaXRQcml2
YXRlLmgKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDE0IEFwcGxlIElu
Yy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAxNC0yMDIxIEFwcGxl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cwpAQCAtMjIsMTkgKzIyLDMgQEAKICAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKICAqIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KICAqLwotCi0jaW1wb3J0IDxXZWJLaXQvV0tIaXN0b3J5RGVsZWdh
dGVQcml2YXRlLmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tOYXZpZ2F0aW9uUHJpdmF0ZS5oPgotI2lt
cG9ydCA8V2ViS2l0L1dLUHJvY2Vzc1Bvb2xQcml2YXRlLmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tV
SURlbGVnYXRlUHJpdmF0ZS5oPgotI2ltcG9ydCA8V2ViS2l0L1dLV2ViVmlld0NvbmZpZ3VyYXRp
b25Qcml2YXRlLmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tXZWJWaWV3UHJpdmF0ZS5oPgotI2ltcG9y
dCA8V2ViS2l0L19XS0FjdGl2YXRlZEVsZW1lbnRJbmZvLmg+Ci0jaW1wb3J0IDxXZWJLaXQvX1dL
QXR0YWNobWVudC5oPgotI2ltcG9ydCA8V2ViS2l0L19XS0VsZW1lbnRBY3Rpb24uaD4KLSNpbXBv
cnQgPFdlYktpdC9fV0tGb2N1c2VkRWxlbWVudEluZm8uaD4KLSNpbXBvcnQgPFdlYktpdC9fV0tG
b3JtSW5wdXRTZXNzaW9uLmg+Ci0jaW1wb3J0IDxXZWJLaXQvX1dLSW5wdXREZWxlZ2F0ZS5oPgot
I2ltcG9ydCA8V2ViS2l0L19XS1Byb2Nlc3NQb29sQ29uZmlndXJhdGlvbi5oPgotI2ltcG9ydCA8
V2ViS2l0L19XS1RodW1ibmFpbFZpZXcuaD4KLSNpbXBvcnQgPFdlYktpdC9fV0tWaXNpdGVkTGlu
a1N0b3JlLmg+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9BUEkvYy9XS0ltbWVk
aWF0ZUFjdGlvblR5cGVzLmggYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9BUEkvYy9XS0ltbWVkaWF0
ZUFjdGlvblR5cGVzLmgKaW5kZXggNWZkYzI5YTllZTkxNDJmNDQ0MzRlNDc0ZGYxOGZiYzc4Yzc4
N2U0Yi4uNWVjMzQ5ZmQ5ZmFkYzZhMTM0MjAxNmZjZmU1NzVhYTA4MTVmMjI4ZiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9TaGFyZWQvQVBJL2MvV0tJbW1lZGlhdGVBY3Rpb25UeXBlcy5oCisr
KyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0FQSS9jL1dLSW1tZWRpYXRlQWN0aW9uVHlwZXMuaApA
QCAtNDEsMTAgKzQxLDYgQEAgZW51bSB7CiAgICAga1dLSW1tZWRpYXRlQWN0aW9uVGVsTGluawog
fTsKIAotI2lmbmRlZiBfV0tJbW1lZGlhdGVBY3Rpb25UeXBlIAotI2RlZmluZSBfV0tJbW1lZGlh
dGVBY3Rpb25UeXBlIHVpbnQzMl90Ci0jZW5kaWYKLQogI2lmZGVmIF9fY3BsdXNwbHVzCiB9CiAj
ZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS0Nv
bnRleHRNZW51RWxlbWVudEluZm9Qcml2YXRlLmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9B
UEkvQ29jb2EvV0tDb250ZXh0TWVudUVsZW1lbnRJbmZvUHJpdmF0ZS5oCmluZGV4IDA5MjQ4Mzll
MjA5MDJhZjY5ZjdiNTNjZWFhNjBhZDMyYzRmYTg3MjkuLjYxOWJiNDA4NDkzOGQ2ZGRjNDFjY2Jl
NjAyZjE4NzgwOTFiZWFjNGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQ
SS9Db2NvYS9XS0NvbnRleHRNZW51RWxlbWVudEluZm9Qcml2YXRlLmgKKysrIGIvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL1dLQ29udGV4dE1lbnVFbGVtZW50SW5mb1ByaXZhdGUu
aApAQCAtMjUsNiArMjUsMTAgQEAKIAogI2ltcG9ydCA8V2ViS2l0L1dLQ29udGV4dE1lbnVFbGVt
ZW50SW5mby5oPgogCisjaWYgVEFSR0VUX09TX0lQSE9ORQorCitOU19BU1NVTUVfTk9OTlVMTF9C
RUdJTgorCiBAY2xhc3MgX1dLQWN0aXZhdGVkRWxlbWVudEluZm87CiAKIEBpbnRlcmZhY2UgV0tD
b250ZXh0TWVudUVsZW1lbnRJbmZvIChXS1ByaXZhdGUpCkBAIC0zMiwzICszNiw3IEBACiBAcHJv
cGVydHkgKG5vbmF0b21pYywgY29weSwgcmVhZG9ubHkpIF9XS0FjdGl2YXRlZEVsZW1lbnRJbmZv
ICpfYWN0aXZhdGVkRWxlbWVudEluZm87CiAKIEBlbmQKKworTlNfQVNTVU1FX05PTk5VTExfRU5E
CisKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2oKaW5kZXggMzE5ZjJlNGM3NzhjZDRkNWY0M2YwNTYxN2Y1MzEzMzljNmFiYjkwZS4uOTg1
NjE1NjJhZWU2NDRmMTVlMzYzOWExMTExZWVhZWRkYmQ2OTk2YiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2Vi
S2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0yNTAsOCArMjUwLDYgQEAK
IAkJMUE1RTREQTQxMkQzQkQzRDAwOTlBMkJCIC8qIFRleHRDaGVja2VyU3RhdGUuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBNUU0REEzMTJEM0JEM0Qw
MDk5QTJCQiAvKiBUZXh0Q2hlY2tlclN0YXRlLmggKi87IH07CiAJCTFBNjAyMjRDMThDMTZCOUYw
MEMzRThDOSAvKiBWaXNpdGVkTGlua1N0b3JlTWVzc2FnZVJlY2VpdmVyLmNwcCBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBNjAyMjRBMThDMTZCOUYwMEMz
RThDOSAvKiBWaXNpdGVkTGlua1N0b3JlTWVzc2FnZVJlY2VpdmVyLmNwcCAqLzsgfTsKIAkJMUE2
MDIyNEQxOEMxNkI5RjAwQzNFOEM5IC8qIFZpc2l0ZWRMaW5rU3RvcmVNZXNzYWdlcy5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUE2MDIyNEIxOEMxNkI5
RjAwQzNFOEM5IC8qIFZpc2l0ZWRMaW5rU3RvcmVNZXNzYWdlcy5oICovOyB9OwotCQkxQTYyODBD
NTE5MTk5NDlGMDA2QUQ5RjkgLyogV2ViS2l0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSAxQTYyODBDNDE5MTk5NDlGMDA2QUQ5RjkgLyogV2ViS2l0Lmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHVibGljLCApOyB9OyB9OwotCQkxQTYyODBD
NzE5MTk5NTBDMDA2QUQ5RjkgLyogV2ViS2l0UHJpdmF0ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUE2MjgwQzYxOTE5OTUwQzAwNkFEOUY5IC8qIFdl
YktpdFByaXZhdGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OwogCQkxQTYyODBGMzE5MTk5ODJBMDA2QUQ5RjkgLyogV2ViS2l0Lm0gaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTYyODBGMjE5MTk5ODJBMDA2QUQ5
RjkgLyogV2ViS2l0Lm0gKi87IH07CiAJCTFBNjQyMEU1MTJEQ0UyRkYwMENBQUUyQyAvKiBTaGFy
ZWFibGVCaXRtYXAuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDFBNjQyMEUzMTJEQ0UyRkYwMENBQUUyQyAvKiBTaGFyZWFibGVCaXRtYXAuaCAqLzsgfTsK
IAkJMUE2NDIyOTkxMkREMDI5MjAwQ0FBRTJDIC8qIERyYXdpbmdBcmVhTWVzc2FnZVJlY2VpdmVy
LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBNjQy
Mjk3MTJERDAyOTIwMENBQUUyQyAvKiBEcmF3aW5nQXJlYU1lc3NhZ2VSZWNlaXZlci5jcHAgKi87
IH07CkBAIC0xMjI3NCwxMCArMTIyNzIsOCBAQAogCQkJCUE1NUJBODJCMUJBMzhFNjEwMDdDRDMz
RCAvKiBXZWJJbnNwZWN0b3JVdGlsaXRpZXMuaCBpbiBIZWFkZXJzICovLAogCQkJCTJEQTk0NEEw
MTg4NEU0RjAwMEVEODZEQiAvKiBXZWJJT1NFdmVudEZhY3RvcnkuaCBpbiBIZWFkZXJzICovLAog
CQkJCTFBODVFNDcyMUUzMDNGMzcwMDkxNDU5OSAvKiBXZWJLaXQuYXBpbm90ZXMgaW4gSGVhZGVy
cyAqLywKLQkJCQkxQTYyODBDNTE5MTk5NDlGMDA2QUQ5RjkgLyogV2ViS2l0LmggaW4gSGVhZGVy
cyAqLywKIAkJCQlCQ0I2MzQ3ODExNkJGMTA2MDA2MDMyMTUgLyogV2ViS2l0Ml9DLmggaW4gSGVh
ZGVycyAqLywKIAkJCQlCQzlCQTUwNTE2OTdDNDUzMDBFNDQ2MTYgLyogV2ViS2l0MkluaXRpYWxp
emUuaCBpbiBIZWFkZXJzICovLAotCQkJCTFBNjI4MEM3MTkxOTk1MEMwMDZBRDlGOSAvKiBXZWJL
aXRQcml2YXRlLmggaW4gSGVhZGVycyAqLywKIAkJCQlDRDAwM0E1MzE5RDQ5QjVEMDA1QUJDRTAg
LyogV2ViTWVkaWFLZXlTdG9yYWdlTWFuYWdlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOUFDQzA3
QjcyNUM4MUQzNDAwREM2Mzg2IC8qIFdlYk1lZGlhS2V5U3lzdGVtQ2xpZW50LmggaW4gSGVhZGVy
cyAqLywKIAkJCQk5QjVCRUMyNjI0MDBGNEE5MDA3MEM2RUYgLyogV2ViTWVkaWFTdHJhdGVneS5o
IGluIEhlYWRlcnMgKi8sCkBAIC0xMjkyNCw2ICsxMjkyMCw3IEBACiAJCQkJMUE2MjgwQzgxOTE5
OTU2QjAwNkFEOUY5IC8qIE1pZ3JhdGUgV2ViS2l0TGVnYWN5IEhlYWRlcnMgKi8sCiAJCQkJMzc1
QTI0ODgxN0U1MDQ4RTAwQzlBMDg2IC8qIFBvc3Rwcm9jZXNzIFdLQmFzZS5oICovLAogCQkJCTFB
RDk4RUNGMTkxRDg2NzMwMENBQTZERiAvKiBQb3N0cHJvY2VzcyBXS0ZvdW5kYXRpb24uaCAqLywK
KwkJCQkzMUQ2MkI2NDI1RTVBMjk4MDAxMzUwODkgLyogR2VuZXJhdGUgVW1icmVsbGEgSGVhZGVy
cyAqLywKIAkJCQlGNEVGQkFENTIyNTQwQ0JCMDAwNDlCQTYgLyogUmVwbGFjZSBXZWJLaXRBZGRp
dGlvbnMgaW4gRnJhbWV3b3JrIEhlYWRlcnMgKi8sCiAJCQkJMUExRDIxMTUxOTFEOTYzODAwMDE2
MTlGIC8qIFBvc3Rwcm9jZXNzIEZyYW1ld29yayBIZWFkZXJzICovLAogCQkJCTJFMTZCNkY0MjAx
OUJDMjUwMDg5OTZENiAvKiBDb3B5IEFkZGl0aW9uYWwgUmVzb3VyY2VzICovLApAQCAtMTMzMzks
NiArMTMzMzYsMzIgQEAKIAkJCXNoZWxsUGF0aCA9IC9iaW4vc2g7CiAJCQlzaGVsbFNjcmlwdCA9
ICJzZXQgLWVcblxuUkVMQVRJVkVfU09VUkNFX1BBVEg9XCJ1c3IvbG9jYWwvaW5jbHVkZS9XZWJL
aXRBZGRpdGlvbnMvV2ViS2l0L0FkZGl0aW9uYWxSZXNvdXJjZXNcIlxuU09VUkNFX1BBVEg9XCIk
QlVJTFRfUFJPRFVDVFNfRElSLyRSRUxBVElWRV9TT1VSQ0VfUEFUSFwiXG5cbmlmIFtbICEgLWQg
XCIkU09VUkNFX1BBVEhcIiBdXTsgdGhlblxuICAgIFNPVVJDRV9QQVRIPVwiJFNES19ESVIvJFJF
TEFUSVZFX1NPVVJDRV9QQVRIXCJcbmZpXG5cbmlmIFtbIC1kIFwiJFNPVVJDRV9QQVRIXCIgXV07
IHRoZW5cbiAgICBkaXR0byAkU09VUkNFX1BBVEggXCIkQlVJTFRfUFJPRFVDVFNfRElSLyRVTkxP
Q0FMSVpFRF9SRVNPVVJDRVNfRk9MREVSX1BBVEhcIlxuZmlcbiI7CiAJCX07CisJCTMxRDYyQjY0
MjVFNUEyOTgwMDEzNTA4OSAvKiBHZW5lcmF0ZSBVbWJyZWxsYSBIZWFkZXJzICovID0geworCQkJ
aXNhID0gUEJYU2hlbGxTY3JpcHRCdWlsZFBoYXNlOworCQkJYnVpbGRBY3Rpb25NYXNrID0gMjE0
NzQ4MzY0NzsKKwkJCWZpbGVzID0gKAorCQkJKTsKKwkJCWlucHV0RmlsZUxpc3RQYXRocyA9ICgK
KwkJCSk7CisJCQlpbnB1dFBhdGhzID0gKAorCQkJCSIkKFNSQ1JPT1QpL1NjcmlwdHMvZ2VuZXJh
dGUtdW1icmVsbGEtaGVhZGVycy5weSIsCisJCQkJIiQoU1JDUk9PVCkvU2hhcmVkL0FQSS9Db2Nv
YS9XZWJLaXRQcml2YXRlLmgiLAorCQkJCSIkKFNSQ1JPT1QpLyQoTU9EVUxFTUFQX1BSSVZBVEVf
RklMRSkiLAorCQkJCSIkKFBST0pFQ1RfRklMRV9QQVRIKS9wcm9qZWN0LnBieHByb2oiLAorCQkJ
CSIkKFNSQ1JPT1QpL1NoYXJlZC9BUEkvQ29jb2EvV2ViS2l0LmgiLAorCQkJCSIkKFNSQ1JPT1Qp
LyQoTU9EVUxFTUFQX0ZJTEUpIiwKKwkJCSk7CisJCQluYW1lID0gIkdlbmVyYXRlIFVtYnJlbGxh
IEhlYWRlcnMiOworCQkJb3V0cHV0RmlsZUxpc3RQYXRocyA9ICgKKwkJCSk7CisJCQlvdXRwdXRQ
YXRocyA9ICgKKwkJCQkiJChCVUlMVF9QUk9EVUNUU19ESVIpLyQoUFJJVkFURV9IRUFERVJTX0ZP
TERFUl9QQVRIKS9XZWJLaXRQcml2YXRlLmgiLAorCQkJCSIkKEJVSUxEX1BST0RVQ1RTX0RJUikv
JChIRUFERVJTX0ZPTERFUl9QQVRIKS9XZWJLaXQuaCIsCisJCQkpOworCQkJcnVuT25seUZvckRl
cGxveW1lbnRQb3N0cHJvY2Vzc2luZyA9IDA7CisJCQlzaGVsbFBhdGggPSAvYmluL3NoOworCQkJ
c2hlbGxTY3JpcHQgPSAiXCIke1NSQ1JPT1R9L1NjcmlwdHMvZ2VuZXJhdGUtdW1icmVsbGEtaGVh
ZGVyLnB5XCIgLS1pbnB1dCBcIiR7U1JDUk9PVH0vU2hhcmVkL0FQSS9Db2NvYS9XZWJLaXRQcml2
YXRlLmhcIiAtLW91dHB1dCBcIiR7QlVJTFRfUFJPRFVDVFNfRElSfS8ke1BSSVZBVEVfSEVBREVS
U19GT0xERVJfUEFUSH0vV2ViS2l0UHJpdmF0ZS5oXCIgLS10ZW1wb3V0cHV0IFwiJHtUQVJHRVRf
VEVNUF9ESVJ9L1dlYktpdFByaXZhdGUuaFwiIC0taGVhZGVycyBcIiR7QlVJTFRfUFJPRFVDVFNf
RElSfS8ke1BSSVZBVEVfSEVBREVSU19GT0xERVJfUEFUSH1cIiAtLWZyYW1ld29yayBcIiR7UFJP
RFVDVF9NT0RVTEVfTkFNRX1cIiAtLW1vZHVsZW1hcCBcIiR7U1JDUk9PVH0vJHtNT0RVTEVNQVBf
UFJJVkFURV9GSUxFfVwiXG5cIiR7U1JDUk9PVH0vU2NyaXB0cy9nZW5lcmF0ZS11bWJyZWxsYS1o
ZWFkZXIucHlcIiAtLWlucHV0IFwiJHtTUkNST09UfS9TaGFyZWQvQVBJL0NvY29hL1dlYktpdC5o
XCIgLS1vdXRwdXQgXCIke0JVSUxUX1BST0RVQ1RTX0RJUn0vJHtQVUJMSUNfSEVBREVSU19GT0xE
RVJfUEFUSH0vV2ViS2l0LmhcIiAtLXRlbXBvdXRwdXQgXCIke1RBUkdFVF9URU1QX0RJUn0vV2Vi
S2l0LmhcIiAtLWhlYWRlcnMgXCIke0JVSUxUX1BST0RVQ1RTX0RJUn0vJHtQVUJMSUNfSEVBREVS
U19GT0xERVJfUEFUSH1cIiAtLWZyYW1ld29yayBcIiR7UFJPRFVDVF9NT0RVTEVfTkFNRX1cIiAt
LW1vZHVsZW1hcCBcIiR7U1JDUk9PVH0vJHtNT0RVTEVNQVBfRklMRX1cIlxuIjsKKwkJfTsKIAkJ
MzcxM0YwMjMxNDI5MDYzRDAwMzYzODdGIC8qIENoZWNrIEZvciBJbmFwcHJvcHJpYXRlIE9iamVj
dGl2ZS1DIENsYXNzIE5hbWVzICovID0gewogCQkJaXNhID0gUEJYU2hlbGxTY3JpcHRCdWlsZFBo
YXNlOwogCQkJYnVpbGRBY3Rpb25NYXNrID0gMjE0NzQ4MzY0NzsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXRMZWdhY3kvV2ViS2l0TGVnYWN5Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9T
b3VyY2UvV2ViS2l0TGVnYWN5L1dlYktpdExlZ2FjeS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
CmluZGV4IDdlMWM1MGJkMzdmMGRmMzFhNjI5NjU3NTA3NzBlYzUxODY0ZmU4OTUuLjlhZTg3OTFm
NTUzZmEwMmUzMzBiMmU1YWM3MTY2NjBhNDY2MTg4ZWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXRMZWdhY3kvV2ViS2l0TGVnYWN5Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291
cmNlL1dlYktpdExlZ2FjeS9XZWJLaXRMZWdhY3kueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpA
QCAtNjg3LDcgKzY4Nyw3IEBACiAJCUREODk2ODIwMDlBQTg3MjQwMDk3RTdGMCAvKiBXZWJFbGVt
ZW50RGljdGlvbmFyeS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gREQ4OTY4MUUwOUFBODcyNDAwOTdFN0YwIC8qIFdlYkVsZW1lbnREaWN0aW9uYXJ5Lmgg
Ki87IH07CiAJCUREODk2ODIxMDlBQTg3MjQwMDk3RTdGMCAvKiBXZWJFbGVtZW50RGljdGlvbmFy
eS5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEREODk2
ODFGMDlBQTg3MjQwMDk3RTdGMCAvKiBXZWJFbGVtZW50RGljdGlvbmFyeS5tbSAqLzsgfTsKIAkJ
RTEzRTc4MkMxRTVBNzM2NTAwMTg0OUQxIC8qIFdlYkNyZWF0ZUZyYWdtZW50SW50ZXJuYWwuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxM0U3ODJCMUU1
QTczNjUwMDE4NDlEMSAvKiBXZWJDcmVhdGVGcmFnbWVudEludGVybmFsLmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKLQkJRTE1MzFCRDgyMTg3Qjk1NDAw
MkUzRjgxIC8qIE5TVVJMRG93bmxvYWRTUEkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEUxNTMxQkQ3MjE4N0I4RjIwMDJFM0Y4MSAvKiBOU1VSTERvd25s
b2FkU1BJLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
KwkJRTE1MzFCRDgyMTg3Qjk1NDAwMkUzRjgxIC8qIE5TVVJMRG93bmxvYWRTUEkuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxNTMxQkQ3MjE4N0I4RjIw
MDJFM0Y4MSAvKiBOU1VSTERvd25sb2FkU1BJLmggKi87IH07CiAJCUUxNTY2MzE5MEZCNjFDMUYw
MEMxOTlDQSAvKiBXZWJEb3dubG9hZC5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEUxNTY2MzE4MEZCNjFDMUYwMEMxOTlDQSAvKiBXZWJEb3dubG9hZC5t
bSAqLzsgfTsKIAkJRTE2OTgzNjIxMTM0NkQxQjAwODk0MTE1IC8qIFByb3h5UnVudGltZU9iamVj
dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTE2OTgz
NjExMTM0NkQxQjAwODk0MTE1IC8qIFByb3h5UnVudGltZU9iamVjdC5oICovOyB9OwogCQlFMTY5
ODM2QzExMzQ2RDU2MDA4OTQxMTUgLyogUHJveHlSdW50aW1lT2JqZWN0Lm1tIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTE2OTgzNkIxMTM0NkQ1NjAwODk0
MTE1IC8qIFByb3h5UnVudGltZU9iamVjdC5tbSAqLzsgfTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>421468</attachid>
            <date>2021-02-24 15:21:28 -0800</date>
            <delta_ts>2021-02-24 15:24:39 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-203059-20210225102126.patch</filename>
            <type>text/plain</type>
            <size>29720</size>
            <attacher name="Dean Jackson">dino</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjczMzE2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDMzNTczMmVlYzg2MmZiYjM3
YzZjOGE5ZmZkZDYzMzRhMjUyZmExYzYuLjllNzYyNDAyNDgxZmExNGI2MWFkMjE2NTI1MmY3Yjhh
NDBiYzM3MDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzcgQEAKKzIwMjEtMDItMjMgIERlYW4gSmFj
a3NvbiAgPGRpbm9AYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBTd2lmdCBtb2R1bGVtYXAgZm9y
IFdlYktpdCBQcml2YXRlIEFQSXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTIwMzA1OQorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNTYzNTAyOTA+CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUHJvdmlkZSBh
IFN3aWZ0IG1vZHVsZW1hcCBmb3IgV2ViS2l0X1ByaXZhdGUsIGFuZAorICAgICAgICBlbnN1cmUg
dGhhdCBhbGwgUHJpdmF0ZUhlYWRlcnMgYXJlIGluY2x1ZGVkIGluIG91ciB1bWJyZWxsYQorICAg
ICAgICBoZWFkZXIgKGJlY2F1c2Ugd2UgZG9uJ3Qga25vdyB3aG8gaXMgaW5jbHVkaW5nIHRoZSB2
YXJpb3VzCisgICAgICAgIGZpbGVzKS4KKworICAgICAgICBVc2VkIHRoZSBzYW1lIGFwcHJvYWNo
IHRvIGdlbmVyYXRlZCB0aGUgcHVibGljIHVtYnJlbGxhIGhlYWRlci4KKyAgICAgICAgSW4gYm90
aCBjYXNlcyB0aGlzIGhhcyBhZGRlZCBhIGxvdCBvZiBleHRyYSBpbXBvcnQgc3RhdGVtZW50cywK
KyAgICAgICAgYnV0IGhvcGVmdWxseSB0aGF0IGlzIG9rLgorCisgICAgICAgIFJlbmFtZWQgT1NY
Lm1vZHVsZW1hcCB0byBtYWNPUy5tb2R1bGVtYXAgd2hpbGUgaGVyZS4KKworICAgICAgICAqIENv
bmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWc6CisgICAgICAgICogQ29uZmlndXJhdGlvbnMvV2Vi
S2l0LnhjY29uZmlnOgorICAgICAgICAqIE1vZHVsZXMvaU9TLnByaXZhdGUubW9kdWxlbWFwOiBB
ZGRlZC4KKyAgICAgICAgKiBNb2R1bGVzL21hY09TLm1vZHVsZW1hcDogUmVuYW1lZCBmcm9tIFNv
dXJjZS9XZWJLaXQvTW9kdWxlcy9PU1gubW9kdWxlbWFwLgorICAgICAgICAqIE1vZHVsZXMvbWFj
T1MucHJpdmF0ZS5tb2R1bGVtYXA6IEFkZGVkLgorICAgICAgICAqIFNjcmlwdHMvZ2VuZXJhdGUt
dW1icmVsbGEtaGVhZGVyLnB5OiBBZGRlZC4gR2VuZXJhdGVzIHRoZSB1bWJyZWxsYSBoZWFkZXIg
ZmlsZS4KKyAgICAgICAgKGdlbmVyYXRlX3VtYnJlbGxhX2hlYWRlcik6CisgICAgICAgICogU2hh
cmVkL0FQSS9Db2NvYS9XZWJLaXQuaCAtPiBXZWJLaXQuaC5pbjogUmVuYW1lZCBzaW5jZSBpdCBp
cyBpbnB1dCB0byBhIGdlbmVyYXRlZCBmaWxlLgorICAgICAgICAqIFNoYXJlZC9BUEkvQ29jb2Ev
V2ViS2l0UHJpdmF0ZS5oIC0+IFdlYktpdFByaXZhdGUuaC5pbjogRGl0dG8uCisgICAgICAgICog
V2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogV2ViS2l0Lnhjb2Rl
cHJvai94Y3NoYXJlZGRhdGEveGNzY2hlbWVzL1dlYktpdC54Y3NjaGVtZToKKyAgICAgICAgKiBT
aGFyZWQvQVBJL2MvV0tJbW1lZGlhdGVBY3Rpb25UeXBlcy5oOiBSZW1vdmUgdW51c2VkICNkZWZp
bmUgdGhhdCB3YXMgY2xhc2hpbmcgd2l0aCB0aGUgdHlwZSB0aGF0CisgICAgICAgIGhhZCBiZWVu
IGRlZmluZWQgZWxzZXdoZXJlLgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2EvV0tDb250
ZXh0TWVudUVsZW1lbnRJbmZvUHJpdmF0ZS5oOiBHdWFyZCB0aGlzIGZvciBpT1MuCisKIDIwMjEt
MDItMjMgIEtpbW1vIEtpbm51bmVuICA8a2tpbm51bmVuQGFwcGxlLmNvbT4KIAogICAgICAgICBS
RUdSRVNTSU9OKHIyNzMyMDQpOiB3ZWJraXRweSB0ZXN0cyBmYWlsCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0TGVnYWN5L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvQ2hhbmdlTG9n
CmluZGV4IDA2NGQxOWJlOGYzYzY3NTMxNjU4Y2MxODViODU2ZjQ2ZWIzYTZhODEuLjQ0YTIxMDMy
MzBhOWJiZDJmOGFhMjY4ZGZhMjY5NDg1MTU4YzZiOGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXRMZWdhY3kvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTUgQEAKKzIwMjEtMDItMjMgIERlYW4gSmFja3NvbiAgPGRpbm9AYXBwbGUuY29t
PgorCisgICAgICAgIEFkZCBTd2lmdCBtb2R1bGVtYXAgZm9yIFdlYktpdCBQcml2YXRlIEFQSXMK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwMzA1OQor
ICAgICAgICA8cmRhcjovL3Byb2JsZW0vNTYzNTAyOTA+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRG9uJ3QgZm9yd2FyZCBOU1VSTERvd25sb2FkU1BJ
LmggaW50byB0aGUgZnJhbWV3b3JrLgorCisgICAgICAgICogV2ViS2l0TGVnYWN5Lnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2o6CisKIDIwMjEtMDItMDggIENvbW1pdCBRdWV1ZSAgPGNvbW1pdC1x
dWV1ZUB3ZWJraXQub3JnPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIHJldmVydGluZyByMjcyNDgw
LCByMjcyNDgxLCBhbmQgcjI3MjUwMC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ29uZmln
dXJhdGlvbnMvQmFzZS54Y2NvbmZpZyBiL1NvdXJjZS9XZWJLaXQvQ29uZmlndXJhdGlvbnMvQmFz
ZS54Y2NvbmZpZwppbmRleCBlMjgyOTg0ZjRmNDQwZmU2ZTcxMzUxMDQ3YWE3ZGU5NDhkODFhZmUw
Li5mYWQzZWZjYmEyYzViOGI4YWE1NDNmMzA2YzU3YTFkODlmNWU2ODkxIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L0NvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWcKKysrIGIvU291cmNlL1dl
YktpdC9Db25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnCkBAIC0zNCw2ICszNCw3IEBAIEFMV0FZ
U19TRUFSQ0hfVVNFUl9QQVRIUyA9IE5POwogQ0xBTkdfQ1hYX0xBTkdVQUdFX1NUQU5EQVJEID0g
Z251KysxejsKIENMQU5HX0NYWF9MSUJSQVJZID0gbGliYysrOwogQ0xBTkdfRU5BQkxFX09CSkNf
V0VBSyA9IFlFUzsKK0NMQU5HX01PRFVMRVNfRU5BQkxFX1ZFUklGSUVSX1RPT0wgPSBZRVM7CiBD
TEFOR19XQVJOX0JMT0NLX0NBUFRVUkVfQVVUT1JFTEVBU0lORyA9IFlFUzsKIENMQU5HX1dBUk5f
Qk9PTF9DT05WRVJTSU9OID0gWUVTOwogQ0xBTkdfV0FSTl9DT01NQSA9IFlFUzsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvQ29uZmlndXJhdGlvbnMvV2ViS2l0LnhjY29uZmlnIGIvU291cmNl
L1dlYktpdC9Db25maWd1cmF0aW9ucy9XZWJLaXQueGNjb25maWcKaW5kZXggMTEzZjEwMTE3NzMz
MjEyOGExNTY2NTJkN2YzYTY3MDI5NWQ0MTg4Mi4uZDkzMmNiZjUxNjZkYWQ2NGRhZjcxODlkZTRi
ZjYzN2QwZGJlMDQzMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9Db25maWd1cmF0aW9ucy9X
ZWJLaXQueGNjb25maWcKKysrIGIvU291cmNlL1dlYktpdC9Db25maWd1cmF0aW9ucy9XZWJLaXQu
eGNjb25maWcKQEAgLTMxLDcgKzMxLDEwIEBAIElORk9QTElTVF9GSUxFID0gSW5mby5wbGlzdDsK
IERFRklORVNfTU9EVUxFID0gWUVTOwogTU9EVUxFTUFQX0ZJTEUgPSAkKE1PRFVMRU1BUF9GSUxF
XyQoV0tfQ09DT0FfVE9VQ0gpKTsKIE1PRFVMRU1BUF9GSUxFX2NvY29hdG91Y2ggPSBNb2R1bGVz
L2lPUy5tb2R1bGVtYXA7Ci1NT0RVTEVNQVBfRklMRV8gPSBNb2R1bGVzL09TWC5tb2R1bGVtYXA7
CitNT0RVTEVNQVBfRklMRV8gPSBNb2R1bGVzL21hY09TLm1vZHVsZW1hcDsKK01PRFVMRU1BUF9Q
UklWQVRFX0ZJTEUgPSAkKE1PRFVMRU1BUF9QUklWQVRFX0ZJTEVfJChXS19DT0NPQV9UT1VDSCkp
OworTU9EVUxFTUFQX1BSSVZBVEVfRklMRV9jb2NvYXRvdWNoID0gTW9kdWxlcy9pT1MucHJpdmF0
ZS5tb2R1bGVtYXA7CitNT0RVTEVNQVBfUFJJVkFURV9GSUxFXyA9IE1vZHVsZXMvbWFjT1MucHJp
dmF0ZS5tb2R1bGVtYXA7CiAKIElOU1RBTExfUEFUSCA9ICQoV0VCS0lUX0ZSQU1FV09SS1NfRElS
KTsKIERZTElCX0lOU1RBTExfTkFNRV9CQVNFID0gJChEWUxJQl9JTlNUQUxMX05BTUVfQkFTRV8k
KFdLX1VTRV9BTFRFUk5BVEVfRlJBTUVXT1JLU19ESVIpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvTW9kdWxlcy9PU1gubW9kdWxlbWFwIGIvU291cmNlL1dlYktpdC9Nb2R1bGVzL09TWC5t
b2R1bGVtYXAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDg5Y2EwNzRmNDc4MjhjNzM2
NGExZDFmZGEwOThmNDdlZjk3ZjQwZjguLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYktpdC9Nb2R1bGVzL09TWC5tb2R1bGVtYXAKKysrIC9k
ZXYvbnVsbApAQCAtMSwxOCArMCwwIEBACi1mcmFtZXdvcmsgbW9kdWxlIFdlYktpdCBbc3lzdGVt
XSBbZXh0ZXJuX2NdIHsKLSAgdW1icmVsbGEgaGVhZGVyICJXZWJLaXQuaCIKLSAgbW9kdWxlICog
eyBleHBvcnQgKiB9Ci0gIGV4cG9ydCAqCi0gIAotICBleHBsaWNpdCBtb2R1bGUgTlBBUEkgewot
ICAgIGhlYWRlciAibnB0eXBlcy5oIgotICAgIGhlYWRlciAibnBhcGkuaCIKLSAgICBoZWFkZXIg
Im5wZnVuY3Rpb25zLmgiCi0gICAgaGVhZGVyICJucHJ1bnRpbWUuaCIKLSAgICBleHBvcnQgKgot
ICB9Ci0KLSAgZXhwbGljaXQgbW9kdWxlIERPTVByb2dyZXNzRXZlbnQgewotICAgIGhlYWRlciAi
RE9NUHJvZ3Jlc3NFdmVudC5oIgotICAgIGV4cG9ydCAqCi0gIH0KLX0KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvTW9kdWxlcy9pT1MucHJpdmF0ZS5tb2R1bGVtYXAgYi9Tb3VyY2UvV2ViS2l0
L01vZHVsZXMvaU9TLnByaXZhdGUubW9kdWxlbWFwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjAyZDgyZTlhNzQ1MWVm
NDJmMDhjOGYwYmJjMzM4ZjMxZjA1NTliNjYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2Vi
S2l0L01vZHVsZXMvaU9TLnByaXZhdGUubW9kdWxlbWFwCkBAIC0wLDAgKzEsNSBAQAorZnJhbWV3
b3JrIG1vZHVsZSBXZWJLaXRfUHJpdmF0ZSBbc3lzdGVtXSBbZXh0ZXJuX2NdIHsKKyAgdW1icmVs
bGEgaGVhZGVyICJXZWJLaXRQcml2YXRlLmgiCisgIG1vZHVsZSAqIHsgZXhwb3J0ICogfQorICBl
eHBvcnQgKgorfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9Nb2R1bGVzL21hY09TLm1vZHVs
ZW1hcCBiL1NvdXJjZS9XZWJLaXQvTW9kdWxlcy9tYWNPUy5tb2R1bGVtYXAKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
ODljYTA3NGY0NzgyOGM3MzY0YTFkMWZkYTA5OGY0N2VmOTdmNDBmOAotLS0gL2Rldi9udWxsCisr
KyBiL1NvdXJjZS9XZWJLaXQvTW9kdWxlcy9tYWNPUy5tb2R1bGVtYXAKQEAgLTAsMCArMSwxOCBA
QAorZnJhbWV3b3JrIG1vZHVsZSBXZWJLaXQgW3N5c3RlbV0gW2V4dGVybl9jXSB7CisgIHVtYnJl
bGxhIGhlYWRlciAiV2ViS2l0LmgiCisgIG1vZHVsZSAqIHsgZXhwb3J0ICogfQorICBleHBvcnQg
KgorICAKKyAgZXhwbGljaXQgbW9kdWxlIE5QQVBJIHsKKyAgICBoZWFkZXIgIm5wdHlwZXMuaCIK
KyAgICBoZWFkZXIgIm5wYXBpLmgiCisgICAgaGVhZGVyICJucGZ1bmN0aW9ucy5oIgorICAgIGhl
YWRlciAibnBydW50aW1lLmgiCisgICAgZXhwb3J0ICoKKyAgfQorCisgIGV4cGxpY2l0IG1vZHVs
ZSBET01Qcm9ncmVzc0V2ZW50IHsKKyAgICBoZWFkZXIgIkRPTVByb2dyZXNzRXZlbnQuaCIKKyAg
ICBleHBvcnQgKgorICB9Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L01vZHVsZXMvbWFj
T1MucHJpdmF0ZS5tb2R1bGVtYXAgYi9Tb3VyY2UvV2ViS2l0L01vZHVsZXMvbWFjT1MucHJpdmF0
ZS5tb2R1bGVtYXAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDJkODJlOWE3NDUxZWY0MmYwOGM4ZjBiYmMzMzhmMzFm
MDU1OWI2NgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvTW9kdWxlcy9tYWNPUy5w
cml2YXRlLm1vZHVsZW1hcApAQCAtMCwwICsxLDUgQEAKK2ZyYW1ld29yayBtb2R1bGUgV2ViS2l0
X1ByaXZhdGUgW3N5c3RlbV0gW2V4dGVybl9jXSB7CisgIHVtYnJlbGxhIGhlYWRlciAiV2ViS2l0
UHJpdmF0ZS5oIgorICBtb2R1bGUgKiB7IGV4cG9ydCAqIH0KKyAgZXhwb3J0ICoKK30KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvU2NyaXB0cy9nZW5lcmF0ZS11bWJyZWxsYS1oZWFkZXIucHkg
Yi9Tb3VyY2UvV2ViS2l0L1NjcmlwdHMvZ2VuZXJhdGUtdW1icmVsbGEtaGVhZGVyLnB5Cm5ldyBm
aWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjlhOGFmYzk0NzgxYzE4Y2ZkMzIxMjBkYTk5ZGJhN2EzZTVmNmM3MDkKLS0tIC9kZXYv
bnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L1NjcmlwdHMvZ2VuZXJhdGUtdW1icmVsbGEtaGVhZGVy
LnB5CkBAIC0wLDAgKzEsNzAgQEAKKyMhL3Vzci9iaW4vcHl0aG9uCisKK2ltcG9ydCBmaWxlY21w
CitpbXBvcnQgb3MKK2ltcG9ydCByZQorCisKK2RlZiBnZW5lcmF0ZV91bWJyZWxsYV9oZWFkZXIo
aW5wdXRfZmlsZW5hbWUsIG91dHB1dF9maWxlbmFtZSwgdGVtcG91dHB1dF9maWxlbmFtZSwgaGVh
ZGVyX2Rpcm5hbWUsIGZyYW1ld29ya19uYW1lLCBtb2R1bGVtYXBfZmlsZW5hbWUpOgorICAgIGlu
Y2x1ZGVfcGF0dGVybiA9IHJlLmNvbXBpbGUociJcIyhpbmNsdWRlfGltcG9ydClccytcPCIgKyBm
cmFtZXdvcmtfbmFtZSArIHIiXC8oLiopXD4iKQorICAgIGV4Y2x1ZGVfcGF0dGVybiA9IHJlLmNv
bXBpbGUocidccypleGNsdWRlXHMraGVhZGVyXHMrIiguKikiJykKKworICAgIGV4aXN0aW5nX2Zy
YW1ld29ya19oZWFkZXJzID0gc2V0KCkKKyAgICBvdXRwdXRfaGVhZGVycyA9IFtdCisgICAgYmxv
Y2tsaXN0ID0geworICAgICAgICAiJXNQcml2YXRlLmgiICUgZnJhbWV3b3JrX25hbWUsCisgICAg
ICAgICIlcy5oIiAlIGZyYW1ld29ya19uYW1lLAorICAgIH0KKworICAgIHdpdGggb3Blbihtb2R1
bGVtYXBfZmlsZW5hbWUsICJyIikgYXMgbW9kdWxlbWFwX2ZpbGU6CisgICAgICAgIGZvciBsaW5l
IGluIG1vZHVsZW1hcF9maWxlOgorICAgICAgICAgICAgbWF0Y2ggPSBleGNsdWRlX3BhdHRlcm4u
c2VhcmNoKGxpbmUpCisgICAgICAgICAgICBpZiBtYXRjaDoKKyAgICAgICAgICAgICAgICBleGlz
dGluZ19mcmFtZXdvcmtfaGVhZGVycy5hZGQobWF0Y2guZ3JvdXAoMSkpCisKKyAgICB3aXRoIG9w
ZW4odGVtcG91dHB1dF9maWxlbmFtZSBvciBvdXRwdXRfZmlsZW5hbWUsICJ3KyIpIGFzIG91dHB1
dF9maWxlOgorICAgICAgICB3aXRoIG9wZW4oaW5wdXRfZmlsZW5hbWUsICJyIikgYXMgaW5wdXRf
ZmlsZToKKyAgICAgICAgICAgIGZvciBsaW5lIGluIGlucHV0X2ZpbGU6CisgICAgICAgICAgICAg
ICAgbWF0Y2ggPSBpbmNsdWRlX3BhdHRlcm4uc2VhcmNoKGxpbmUpCisgICAgICAgICAgICAgICAg
aWYgbWF0Y2g6CisgICAgICAgICAgICAgICAgICAgIGV4aXN0aW5nX2ZyYW1ld29ya19oZWFkZXJz
LmFkZChtYXRjaC5ncm91cCgyKSkKKworICAgICAgICAgICAgICAgIG91dHB1dF9maWxlLndyaXRl
KGxpbmUpCisKKyAgICAgICAgZm9yIChkaXJwYXRoLCBkaXJuYW1lcywgZmlsZW5hbWVzKSBpbiBv
cy53YWxrKGhlYWRlcl9kaXJuYW1lKToKKyAgICAgICAgICAgIGZvciBmaWxlIGluIGZpbGVuYW1l
czoKKyAgICAgICAgICAgICAgICBwYXRoID0gb3MucGF0aC5yZWxwYXRoKG9zLnBhdGguam9pbihk
aXJwYXRoLCBmaWxlKSwgc3RhcnQ9aGVhZGVyX2Rpcm5hbWUpCisKKyAgICAgICAgICAgICAgICBp
ZiBwYXRoIGluIGJsb2NrbGlzdCBvciBwYXRoIGluIGV4aXN0aW5nX2ZyYW1ld29ya19oZWFkZXJz
IG9yIG5vdCBwYXRoLmVuZHN3aXRoKCIuaCIpOgorICAgICAgICAgICAgICAgICAgICBjb250aW51
ZQorCisgICAgICAgICAgICAgICAgb3V0cHV0X2hlYWRlcnMuYXBwZW5kKHBhdGgpCisKKyAgICAg
ICAgb3V0cHV0X2hlYWRlcnMuc29ydCgpCisgICAgICAgIG91dHB1dF9maWxlLndyaXRlKCJcblxu
IikKKworICAgICAgICBmb3Igb3V0cHV0X2hlYWRlciBpbiBvdXRwdXRfaGVhZGVyczoKKyAgICAg
ICAgICAgIG91dHB1dF9maWxlLndyaXRlKCIjaW1wb3J0IDwlcy8lcz5cbiIgJSAoZnJhbWV3b3Jr
X25hbWUsIG91dHB1dF9oZWFkZXIpKQorCisgICAgaWYgdGVtcG91dHB1dF9maWxlbmFtZSBhbmQg
KG5vdCBvcy5wYXRoLmV4aXN0cyhvdXRwdXRfZmlsZW5hbWUpIG9yIG5vdCBmaWxlY21wLmNtcChv
dXRwdXRfZmlsZW5hbWUsIHRlbXBvdXRwdXRfZmlsZW5hbWUpKToKKyAgICAgICAgb3MucmVuYW1l
KHRlbXBvdXRwdXRfZmlsZW5hbWUsIG91dHB1dF9maWxlbmFtZSkKKworCitpZiBfX25hbWVfXyA9
PSAiX19tYWluX18iOgorICAgIGltcG9ydCBhcmdwYXJzZQorICAgIGltcG9ydCBzeXMKKworICAg
IHBhcnNlciA9IGFyZ3BhcnNlLkFyZ3VtZW50UGFyc2VyKCkKKyAgICBwYXJzZXIuYWRkX2FyZ3Vt
ZW50KCItLWlucHV0IiwgdHlwZT1zdHIsIGRlZmF1bHQ9Tm9uZSwgaGVscD0iSW5wdXQgaGVhZGVy
IGZpbGUgKGllLiAke1NSQ1JPT1R9L1dlYktpdFByaXZhdGUuaCkiKQorICAgIHBhcnNlci5hZGRf
YXJndW1lbnQoIi0tb3V0cHV0IiwgdHlwZT1zdHIsIGRlZmF1bHQ9Tm9uZSwgaGVscD0iT3V0cHV0
IGhlYWRlciBmaWxlIChpZS4gJHtEU1RST09UfS9XZWJLaXQuZnJhbWV3b3JrL1ByaXZhdGVIZWFk
ZXJzL1dlYktpdFByaXZhdGUuaCkiKQorICAgIHBhcnNlci5hZGRfYXJndW1lbnQoIi0tdGVtcG91
dHB1dCIsIHR5cGU9c3RyLCBkZWZhdWx0PU5vbmUsIGhlbHA9IlRlbXBvcmFyeSBvdXRwdXQgZmls
ZSAoaWUuICR7VEFSR0VUX1RFTVBfRElSfS9XZWJLaXRQcml2YXRlLmhcbklmIHNldCwgdGhlIGhl
YWRlciB3aWxsIGJlIGdlbmVyYXRlZCB0byB0aGlzIHBhdGgsIGFuZCB0aGUgb3V0cHV0IHBhdGgg
d2lsbCBvbmx5IGJlIHRvdWNoZWQgaWYgdGhlIGZpbGUgY29udGVudHMgaGF2ZSBjaGFuZ2VkLiIp
CisgICAgcGFyc2VyLmFkZF9hcmd1bWVudCgiLS1oZWFkZXJzIiwgdHlwZT1zdHIsIGRlZmF1bHQ9
Tm9uZSwgaGVscD0iSGVhZGVyIGRpcmVjdG9yeSAoaWUuICR7RFNUUk9PVH0vV2ViS2l0LmZyYW1l
d29yay9Qcml2YXRlSGVhZGVycykiKQorICAgIHBhcnNlci5hZGRfYXJndW1lbnQoIi0tZnJhbWV3
b3JrIiwgdHlwZT1zdHIsIGRlZmF1bHQ9Tm9uZSwgaGVscD0iRnJhbWV3b3JrIG5hbWUgKGllLiBX
ZWJLaXQpIikKKyAgICBwYXJzZXIuYWRkX2FyZ3VtZW50KCItLW1vZHVsZW1hcCIsIHR5cGU9c3Ry
LCBkZWZhdWx0PU5vbmUsIGhlbHA9Ik1vZHVsZSBtYXAgZmlsZSAoaWUuIG1vZHVsZS5wcml2YXRl
Lm1vZHVsZW1hcCkiKQorICAgIGFyZ3MgPSBwYXJzZXIucGFyc2VfYXJncygpCisKKyAgICBpZiBh
cmdzLmlucHV0IGlzIE5vbmUgb3IgYXJncy5vdXRwdXQgaXMgTm9uZSBvciBhcmdzLmhlYWRlcnMg
aXMgTm9uZSBvciBhcmdzLmZyYW1ld29yayBpcyBOb25lIG9yIGFyZ3MubW9kdWxlbWFwIGlzIE5v
bmU6CisgICAgICAgIHBhcnNlci5wcmludF9oZWxwKCkKKyAgICAgICAgc3lzLmV4aXQoMSkKKwor
ICAgIGdlbmVyYXRlX3VtYnJlbGxhX2hlYWRlcihhcmdzLmlucHV0LCBhcmdzLm91dHB1dCwgYXJn
cy50ZW1wb3V0cHV0LCBhcmdzLmhlYWRlcnMsIGFyZ3MuZnJhbWV3b3JrLCBhcmdzLm1vZHVsZW1h
cCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0FQSS9Db2NvYS9XZWJLaXQuaCBi
L1NvdXJjZS9XZWJLaXQvU2hhcmVkL0FQSS9Db2NvYS9XZWJLaXQuaApkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggZjA0NTk5NThlMTNmMWFlMmVjYzhmYzg2OTIxYzEwZGM3ZDIyYjgxYS4u
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L1NoYXJlZC9BUEkvQ29jb2EvV2ViS2l0LmgKKysrIC9kZXYvbnVsbApAQCAtMSw3MSArMCww
IEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDE0IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEu
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29w
eXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICog
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExF
IElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCi0gKiBBTkQgQU5ZIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAq
IFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUwotICogQkUgTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgotICog
Q09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YKLSAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNF
LCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwotICogSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KLSAqIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpCi0gKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCi0gKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCi0gKi8KLQotI2ltcG9ydCA8V2ViS2l0L05TQXR0cmlidXRlZFN0cmluZy5oPgot
I2ltcG9ydCA8V2ViS2l0L1dLQmFja0ZvcndhcmRMaXN0Lmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tC
YWNrRm9yd2FyZExpc3RJdGVtLmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tDb250ZW50UnVsZUxpc3Qu
aD4KLSNpbXBvcnQgPFdlYktpdC9XS0NvbnRlbnRSdWxlTGlzdFN0b3JlLmg+Ci0jaW1wb3J0IDxX
ZWJLaXQvV0tDb250ZW50V29ybGQuaD4KLSNpbXBvcnQgPFdlYktpdC9XS0NvbnRleHRNZW51RWxl
bWVudEluZm8uaD4KLSNpbXBvcnQgPFdlYktpdC9XS0Rvd25sb2FkLmg+Ci0jaW1wb3J0IDxXZWJL
aXQvV0tEb3dubG9hZERlbGVnYXRlLmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tFcnJvci5oPgotI2lt
cG9ydCA8V2ViS2l0L1dLRmluZENvbmZpZ3VyYXRpb24uaD4KLSNpbXBvcnQgPFdlYktpdC9XS0Zp
bmRSZXN1bHQuaD4KLSNpbXBvcnQgPFdlYktpdC9XS0ZvdW5kYXRpb24uaD4KLSNpbXBvcnQgPFdl
YktpdC9XS0ZyYW1lSW5mby5oPgotI2ltcG9ydCA8V2ViS2l0L1dLSFRUUENvb2tpZVN0b3JlLmg+
Ci0jaW1wb3J0IDxXZWJLaXQvV0tOYXZpZ2F0aW9uLmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tOYXZp
Z2F0aW9uQWN0aW9uLmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tOYXZpZ2F0aW9uRGVsZWdhdGUuaD4K
LSNpbXBvcnQgPFdlYktpdC9XS05hdmlnYXRpb25SZXNwb25zZS5oPgotI2ltcG9ydCA8V2ViS2l0
L1dLT3BlblBhbmVsUGFyYW1ldGVycy5oPgotI2ltcG9ydCA8V2ViS2l0L1dLUERGQ29uZmlndXJh
dGlvbi5oPgotI2ltcG9ydCA8V2ViS2l0L1dLUHJlZmVyZW5jZXMuaD4KLSNpbXBvcnQgPFdlYktp
dC9XS1ByZXZpZXdBY3Rpb25JdGVtLmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tQcmV2aWV3QWN0aW9u
SXRlbUlkZW50aWZpZXJzLmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tQcmV2aWV3RWxlbWVudEluZm8u
aD4KLSNpbXBvcnQgPFdlYktpdC9XS1Byb2Nlc3NQb29sLmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tT
Y3JpcHRNZXNzYWdlLmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tTY3JpcHRNZXNzYWdlSGFuZGxlci5o
PgotI2ltcG9ydCA8V2ViS2l0L1dLU2NyaXB0TWVzc2FnZUhhbmRsZXJXaXRoUmVwbHkuaD4KLSNp
bXBvcnQgPFdlYktpdC9XS1NlY3VyaXR5T3JpZ2luLmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tTbmFw
c2hvdENvbmZpZ3VyYXRpb24uaD4KLSNpbXBvcnQgPFdlYktpdC9XS1VJRGVsZWdhdGUuaD4KLSNp
bXBvcnQgPFdlYktpdC9XS1VSTFNjaGVtZUhhbmRsZXIuaD4KLSNpbXBvcnQgPFdlYktpdC9XS1VS
TFNjaGVtZVRhc2suaD4KLSNpbXBvcnQgPFdlYktpdC9XS1VzZXJDb250ZW50Q29udHJvbGxlci5o
PgotI2ltcG9ydCA8V2ViS2l0L1dLVXNlclNjcmlwdC5oPgotI2ltcG9ydCA8V2ViS2l0L1dLV2Vi
Vmlldy5oPgotI2ltcG9ydCA8V2ViS2l0L1dLV2ViVmlld0NvbmZpZ3VyYXRpb24uaD4KLSNpbXBv
cnQgPFdlYktpdC9XS1dlYnBhZ2VQcmVmZXJlbmNlcy5oPgotI2ltcG9ydCA8V2ViS2l0L1dLV2Vi
c2l0ZURhdGFSZWNvcmQuaD4KLSNpbXBvcnQgPFdlYktpdC9XS1dlYnNpdGVEYXRhU3RvcmUuaD4K
LSNpbXBvcnQgPFdlYktpdC9XS1dpbmRvd0ZlYXR1cmVzLmg+Ci0KLSNpZiAhZGVmaW5lZChUQVJH
RVRfT1NfTUFDQ0FUQUxZU1QpIHx8ICFUQVJHRVRfT1NfTUFDQ0FUQUxZU1QKLSNpbXBvcnQgPFdl
YktpdC9XZWJLaXRMZWdhY3kuaD4KLSNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9T
aGFyZWQvQVBJL0NvY29hL1dlYktpdC5oLmluIGIvU291cmNlL1dlYktpdC9TaGFyZWQvQVBJL0Nv
Y29hL1dlYktpdC5oLmluCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjEyMjBhOTVjMWNjN2EwODcyMGY1NDgzOTZmNzUz
YTYzNWE0ZTRhODMKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9BUEkv
Q29jb2EvV2ViS2l0LmguaW4KQEAgLTAsMCArMSwyOCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykg
MjAxNC0yMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklC
VVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRT
IENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lm
ICFkZWZpbmVkKFRBUkdFVF9PU19NQUNDQVRBTFlTVCkgfHwgIVRBUkdFVF9PU19NQUNDQVRBTFlT
VAorI2ltcG9ydCA8V2ViS2l0L1dlYktpdExlZ2FjeS5oPgorI2VuZGlmCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L1NoYXJlZC9BUEkvQ29jb2EvV2ViS2l0UHJpdmF0ZS5oIGIvU291cmNlL1dl
YktpdC9TaGFyZWQvQVBJL0NvY29hL1dlYktpdFByaXZhdGUuaApkZWxldGVkIGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMThiZjBjNWQ4YTYzYWZlMzkwMzJmYjQ0N2I1MjI1ZTUyMTg3NmJlYS4uMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViS2l0
L1NoYXJlZC9BUEkvQ29jb2EvV2ViS2l0UHJpdmF0ZS5oCisrKyAvZGV2L251bGwKQEAgLTEsNDAg
KzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxNCBBcHBsZSBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0g
KiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
IGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUK
LSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRo
IHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBB
UFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwotICogQU5EIEFOWSBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
Ci0gKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVO
VCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKLSAqIEJFIExJQUJMRSBGT1Ig
QU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IK
LSAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFBST0NVUkVNRU5UIE9GCi0gKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9G
IFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKLSAqIElOVEVSUlVQVElPTikgSE9X
RVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCi0g
KiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VO
Q0UgT1IgT1RIRVJXSVNFKQotICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9G
IFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgotICogVEhFIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLgotICovCi0KLSNpbXBvcnQgPFdlYktpdC9XS0hpc3RvcnlEZWxlZ2F0ZVBy
aXZhdGUuaD4KLSNpbXBvcnQgPFdlYktpdC9XS05hdmlnYXRpb25Qcml2YXRlLmg+Ci0jaW1wb3J0
IDxXZWJLaXQvV0tQcm9jZXNzUG9vbFByaXZhdGUuaD4KLSNpbXBvcnQgPFdlYktpdC9XS1VJRGVs
ZWdhdGVQcml2YXRlLmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tXZWJWaWV3Q29uZmlndXJhdGlvblBy
aXZhdGUuaD4KLSNpbXBvcnQgPFdlYktpdC9XS1dlYlZpZXdQcml2YXRlLmg+Ci0jaW1wb3J0IDxX
ZWJLaXQvX1dLQWN0aXZhdGVkRWxlbWVudEluZm8uaD4KLSNpbXBvcnQgPFdlYktpdC9fV0tBdHRh
Y2htZW50Lmg+Ci0jaW1wb3J0IDxXZWJLaXQvX1dLRWxlbWVudEFjdGlvbi5oPgotI2ltcG9ydCA8
V2ViS2l0L19XS0ZvY3VzZWRFbGVtZW50SW5mby5oPgotI2ltcG9ydCA8V2ViS2l0L19XS0Zvcm1J
bnB1dFNlc3Npb24uaD4KLSNpbXBvcnQgPFdlYktpdC9fV0tJbnB1dERlbGVnYXRlLmg+Ci0jaW1w
b3J0IDxXZWJLaXQvX1dLUHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uLmg+Ci0jaW1wb3J0IDxXZWJL
aXQvX1dLVGh1bWJuYWlsVmlldy5oPgotI2ltcG9ydCA8V2ViS2l0L19XS1Zpc2l0ZWRMaW5rU3Rv
cmUuaD4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0FQSS9Db2NvYS9XZWJLaXRQ
cml2YXRlLmguaW4gYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9BUEkvQ29jb2EvV2ViS2l0UHJpdmF0
ZS5oLmluCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjkxNGQ3N2NhMjUxZWJlMGY5NjI1YmFiN2Y1NWU0YTE0YTNlZTQx
OWMKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9BUEkvQ29jb2EvV2Vi
S2l0UHJpdmF0ZS5oLmluCkBAIC0wLDAgKzEsMjQgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIw
MTQtMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291
cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICog
Mi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29y
IG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICog
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVU
T1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQ
T1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBD
T05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1Ig
QlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVP
UlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9BUEkvYy9XS0ltbWVkaWF0ZUFjdGlvblR5cGVzLmgg
Yi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9BUEkvYy9XS0ltbWVkaWF0ZUFjdGlvblR5cGVzLmgKaW5k
ZXggNWZkYzI5YTllZTkxNDJmNDQ0MzRlNDc0ZGYxOGZiYzc4Yzc4N2U0Yi4uNWVjMzQ5ZmQ5ZmFk
YzZhMTM0MjAxNmZjZmU1NzVhYTA4MTVmMjI4ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9T
aGFyZWQvQVBJL2MvV0tJbW1lZGlhdGVBY3Rpb25UeXBlcy5oCisrKyBiL1NvdXJjZS9XZWJLaXQv
U2hhcmVkL0FQSS9jL1dLSW1tZWRpYXRlQWN0aW9uVHlwZXMuaApAQCAtNDEsMTAgKzQxLDYgQEAg
ZW51bSB7CiAgICAga1dLSW1tZWRpYXRlQWN0aW9uVGVsTGluawogfTsKIAotI2lmbmRlZiBfV0tJ
bW1lZGlhdGVBY3Rpb25UeXBlIAotI2RlZmluZSBfV0tJbW1lZGlhdGVBY3Rpb25UeXBlIHVpbnQz
Ml90Ci0jZW5kaWYKLQogI2lmZGVmIF9fY3BsdXNwbHVzCiB9CiAjZW5kaWYKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS0NvbnRleHRNZW51RWxlbWVudElu
Zm9Qcml2YXRlLmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tDb250ZXh0
TWVudUVsZW1lbnRJbmZvUHJpdmF0ZS5oCmluZGV4IDA5MjQ4MzllMjA5MDJhZjY5ZjdiNTNjZWFh
NjBhZDMyYzRmYTg3MjkuLjYxOWJiNDA4NDkzOGQ2ZGRjNDFjY2JlNjAyZjE4NzgwOTFiZWFjNGEg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS0NvbnRleHRN
ZW51RWxlbWVudEluZm9Qcml2YXRlLmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJ
L0NvY29hL1dLQ29udGV4dE1lbnVFbGVtZW50SW5mb1ByaXZhdGUuaApAQCAtMjUsNiArMjUsMTAg
QEAKIAogI2ltcG9ydCA8V2ViS2l0L1dLQ29udGV4dE1lbnVFbGVtZW50SW5mby5oPgogCisjaWYg
VEFSR0VUX09TX0lQSE9ORQorCitOU19BU1NVTUVfTk9OTlVMTF9CRUdJTgorCiBAY2xhc3MgX1dL
QWN0aXZhdGVkRWxlbWVudEluZm87CiAKIEBpbnRlcmZhY2UgV0tDb250ZXh0TWVudUVsZW1lbnRJ
bmZvIChXS1ByaXZhdGUpCkBAIC0zMiwzICszNiw3IEBACiBAcHJvcGVydHkgKG5vbmF0b21pYywg
Y29weSwgcmVhZG9ubHkpIF9XS0FjdGl2YXRlZEVsZW1lbnRJbmZvICpfYWN0aXZhdGVkRWxlbWVu
dEluZm87CiAKIEBlbmQKKworTlNfQVNTVU1FX05PTk5VTExfRU5ECisKKyNlbmRpZgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1Nv
dXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggMzE5ZjJl
NGM3NzhjZDRkNWY0M2YwNTYxN2Y1MzEzMzljNmFiYjkwZS4uOTk5MmJmYWEzZDMxYTVmNWJjZDQx
OTY3NDhlZWVkZWMyNDFiNjBjZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJLaXQueGNv
ZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qCkBAIC0yNTAsOCArMjUwLDYgQEAKIAkJMUE1RTREQTQxMkQzQkQz
RDAwOTlBMkJCIC8qIFRleHRDaGVja2VyU3RhdGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBNUU0REEzMTJEM0JEM0QwMDk5QTJCQiAvKiBUZXh0Q2hl
Y2tlclN0YXRlLmggKi87IH07CiAJCTFBNjAyMjRDMThDMTZCOUYwMEMzRThDOSAvKiBWaXNpdGVk
TGlua1N0b3JlTWVzc2FnZVJlY2VpdmVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDFBNjAyMjRBMThDMTZCOUYwMEMzRThDOSAvKiBWaXNpdGVkTGlu
a1N0b3JlTWVzc2FnZVJlY2VpdmVyLmNwcCAqLzsgfTsKIAkJMUE2MDIyNEQxOEMxNkI5RjAwQzNF
OEM5IC8qIFZpc2l0ZWRMaW5rU3RvcmVNZXNzYWdlcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUE2MDIyNEIxOEMxNkI5RjAwQzNFOEM5IC8qIFZpc2l0
ZWRMaW5rU3RvcmVNZXNzYWdlcy5oICovOyB9OwotCQkxQTYyODBDNTE5MTk5NDlGMDA2QUQ5Rjkg
LyogV2ViS2l0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAxQTYyODBDNDE5MTk5NDlGMDA2QUQ5RjkgLyogV2ViS2l0LmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHVibGljLCApOyB9OyB9OwotCQkxQTYyODBDNzE5MTk5NTBDMDA2QUQ5Rjkg
LyogV2ViS2l0UHJpdmF0ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gMUE2MjgwQzYxOTE5OTUwQzAwNkFEOUY5IC8qIFdlYktpdFByaXZhdGUuaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQkxQTYyODBGMzE5
MTk5ODJBMDA2QUQ5RjkgLyogV2ViS2l0Lm0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSAxQTYyODBGMjE5MTk5ODJBMDA2QUQ5RjkgLyogV2ViS2l0Lm0gKi87
IH07CiAJCTFBNjQyMEU1MTJEQ0UyRkYwMENBQUUyQyAvKiBTaGFyZWFibGVCaXRtYXAuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBNjQyMEUzMTJEQ0Uy
RkYwMENBQUUyQyAvKiBTaGFyZWFibGVCaXRtYXAuaCAqLzsgfTsKIAkJMUE2NDIyOTkxMkREMDI5
MjAwQ0FBRTJDIC8qIERyYXdpbmdBcmVhTWVzc2FnZVJlY2VpdmVyLmNwcCBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBNjQyMjk3MTJERDAyOTIwMENBQUUy
QyAvKiBEcmF3aW5nQXJlYU1lc3NhZ2VSZWNlaXZlci5jcHAgKi87IH07CkBAIC0yNjYxLDggKzI2
NTksOCBAQAogCQkxQTYwMjI0OTE4QzE2QjA4MDBDM0U4QzkgLyogVmlzaXRlZExpbmtTdG9yZS5t
ZXNzYWdlcy5pbiAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHRleHQ7IHBhdGggPSBWaXNpdGVkTGlua1N0b3JlLm1lc3NhZ2VzLmluOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQkxQTYwMjI0QTE4QzE2QjlGMDBDM0U4QzkgLyogVmlzaXRlZExp
bmtTdG9yZU1lc3NhZ2VSZWNlaXZlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IG5hbWUgPSBWaXNpdGVkTGlua1N0b3JlTWVzc2FnZVJlY2VpdmVyLmNwcDsgcGF0aCA9IERlcml2
ZWRTb3VyY2VzL1dlYktpdDIvVmlzaXRlZExpbmtTdG9yZU1lc3NhZ2VSZWNlaXZlci5jcHA7IHNv
dXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CiAJCTFBNjAyMjRCMThDMTZCOUYwMEMz
RThDOSAvKiBWaXNpdGVkTGlua1N0b3JlTWVzc2FnZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBuYW1lID0gVmlzaXRlZExpbmtTdG9yZU1lc3NhZ2VzLmg7IHBhdGggPSBEZXJpdmVkU291
cmNlcy9XZWJLaXQyL1Zpc2l0ZWRMaW5rU3RvcmVNZXNzYWdlcy5oOyBzb3VyY2VUcmVlID0gQlVJ
TFRfUFJPRFVDVFNfRElSOyB9OwotCQkxQTYyODBDNDE5MTk5NDlGMDA2QUQ5RjkgLyogV2ViS2l0
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYktpdC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwotCQkxQTYyODBDNjE5MTk5NTBDMDA2QUQ5RjkgLyogV2ViS2l0UHJp
dmF0ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJLaXRQcml2YXRlLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBNjI4MEM0MTkxOTk0OUYwMDZBRDlGOSAv
KiBXZWJLaXQuaC5pbiAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBXZWJLaXQuaC5pbjsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUE2MjgwQzYxOTE5OTUwQzAwNkFEOUY5IC8qIFdlYktp
dFByaXZhdGUuaC5pbiAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBXZWJLaXRQcml2YXRlLmguaW47
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFBNjI4MEYyMTkxOTk4MkEwMDZBRDlGOSAv
KiBXZWJLaXQubSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5vYmpjOyBwYXRoID0gV2ViS2l0Lm07
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFBNjQyMEUyMTJEQ0UyRkYwMENBQUUyQyAv
KiBTaGFyZWFibGVCaXRtYXAuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gU2hhcmVhYmxlQml0bWFwLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUE2
NDIwRTMxMkRDRTJGRjAwQ0FBRTJDIC8qIFNoYXJlYWJsZUJpdG1hcC5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBTaGFyZWFibGVCaXRtYXAuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKQEAgLTgxOTYsOSArODE5NCw5IEBACiAJCQkJMUFDMTMzODExODU5MEIwNTAwRjNF
QzA1IC8qIFJlbW90ZU9iamVjdFJlZ2lzdHJ5Lm1lc3NhZ2VzLmluICovLAogCQkJCTFBQzEzMzdE
MTg1OTBBRTQwMEYzRUMwNSAvKiBSZW1vdGVPYmplY3RSZWdpc3RyeS5tbSAqLywKIAkJCQkxQTg1
RTQ3MDFFMzAzRjI0MDA5MTQ1OTkgLyogV2ViS2l0LmFwaW5vdGVzICovLAotCQkJCTFBNjI4MEM0
MTkxOTk0OUYwMDZBRDlGOSAvKiBXZWJLaXQuaCAqLywKKwkJCQkxQTYyODBDNDE5MTk5NDlGMDA2
QUQ5RjkgLyogV2ViS2l0LmguaW4gKi8sCiAJCQkJMUE2MjgwRjIxOTE5OTgyQTAwNkFEOUY5IC8q
IFdlYktpdC5tICovLAotCQkJCTFBNjI4MEM2MTkxOTk1MEMwMDZBRDlGOSAvKiBXZWJLaXRQcml2
YXRlLmggKi8sCisJCQkJMUE2MjgwQzYxOTE5OTUwQzAwNkFEOUY5IC8qIFdlYktpdFByaXZhdGUu
aC5pbiAqLywKIAkJCQkxQUUwMEQ0QjE4MkQ2RUIwMDAwODdERDcgLyogV0tCcm93c2luZ0NvbnRl
eHRIYW5kbGUuaCAqLywKIAkJCQkxQUUwMEQ0QTE4MkQ2RUIwMDAwODdERDcgLyogV0tCcm93c2lu
Z0NvbnRleHRIYW5kbGUubW0gKi8sCiAJCQkJMUFFMDBENEUxODJENkY1MDAwMDg3REQ3IC8qIFdL
QnJvd3NpbmdDb250ZXh0SGFuZGxlSW50ZXJuYWwuaCAqLywKQEAgLTEyMjc0LDEwICsxMjI3Miw4
IEBACiAJCQkJQTU1QkE4MkIxQkEzOEU2MTAwN0NEMzNEIC8qIFdlYkluc3BlY3RvclV0aWxpdGll
cy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMkRBOTQ0QTAxODg0RTRGMDAwRUQ4NkRCIC8qIFdlYklP
U0V2ZW50RmFjdG9yeS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMUE4NUU0NzIxRTMwM0YzNzAwOTE0
NTk5IC8qIFdlYktpdC5hcGlub3RlcyBpbiBIZWFkZXJzICovLAotCQkJCTFBNjI4MEM1MTkxOTk0
OUYwMDZBRDlGOSAvKiBXZWJLaXQuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDQjYzNDc4MTE2QkYx
MDYwMDYwMzIxNSAvKiBXZWJLaXQyX0MuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDOUJBNTA1MTY5
N0M0NTMwMEU0NDYxNiAvKiBXZWJLaXQySW5pdGlhbGl6ZS5oIGluIEhlYWRlcnMgKi8sCi0JCQkJ
MUE2MjgwQzcxOTE5OTUwQzAwNkFEOUY5IC8qIFdlYktpdFByaXZhdGUuaCBpbiBIZWFkZXJzICov
LAogCQkJCUNEMDAzQTUzMTlENDlCNUQwMDVBQkNFMCAvKiBXZWJNZWRpYUtleVN0b3JhZ2VNYW5h
Z2VyLmggaW4gSGVhZGVycyAqLywKIAkJCQk5QUNDMDdCNzI1QzgxRDM0MDBEQzYzODYgLyogV2Vi
TWVkaWFLZXlTeXN0ZW1DbGllbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCTlCNUJFQzI2MjQwMEY0
QTkwMDcwQzZFRiAvKiBXZWJNZWRpYVN0cmF0ZWd5LmggaW4gSGVhZGVycyAqLywKQEAgLTEyOTI0
LDYgKzEyOTIwLDcgQEAKIAkJCQkxQTYyODBDODE5MTk5NTZCMDA2QUQ5RjkgLyogTWlncmF0ZSBX
ZWJLaXRMZWdhY3kgSGVhZGVycyAqLywKIAkJCQkzNzVBMjQ4ODE3RTUwNDhFMDBDOUEwODYgLyog
UG9zdHByb2Nlc3MgV0tCYXNlLmggKi8sCiAJCQkJMUFEOThFQ0YxOTFEODY3MzAwQ0FBNkRGIC8q
IFBvc3Rwcm9jZXNzIFdLRm91bmRhdGlvbi5oICovLAorCQkJCTMxRDYyQjY0MjVFNUEyOTgwMDEz
NTA4OSAvKiBHZW5lcmF0ZSBVbWJyZWxsYSBIZWFkZXJzICovLAogCQkJCUY0RUZCQUQ1MjI1NDBD
QkIwMDA0OUJBNiAvKiBSZXBsYWNlIFdlYktpdEFkZGl0aW9ucyBpbiBGcmFtZXdvcmsgSGVhZGVy
cyAqLywKIAkJCQkxQTFEMjExNTE5MUQ5NjM4MDAwMTYxOUYgLyogUG9zdHByb2Nlc3MgRnJhbWV3
b3JrIEhlYWRlcnMgKi8sCiAJCQkJMkUxNkI2RjQyMDE5QkMyNTAwODk5NkQ2IC8qIENvcHkgQWRk
aXRpb25hbCBSZXNvdXJjZXMgKi8sCkBAIC0xMzMzOSw2ICsxMzMzNiwzMiBAQAogCQkJc2hlbGxQ
YXRoID0gL2Jpbi9zaDsKIAkJCXNoZWxsU2NyaXB0ID0gInNldCAtZVxuXG5SRUxBVElWRV9TT1VS
Q0VfUEFUSD1cInVzci9sb2NhbC9pbmNsdWRlL1dlYktpdEFkZGl0aW9ucy9XZWJLaXQvQWRkaXRp
b25hbFJlc291cmNlc1wiXG5TT1VSQ0VfUEFUSD1cIiRCVUlMVF9QUk9EVUNUU19ESVIvJFJFTEFU
SVZFX1NPVVJDRV9QQVRIXCJcblxuaWYgW1sgISAtZCBcIiRTT1VSQ0VfUEFUSFwiIF1dOyB0aGVu
XG4gICAgU09VUkNFX1BBVEg9XCIkU0RLX0RJUi8kUkVMQVRJVkVfU09VUkNFX1BBVEhcIlxuZmlc
blxuaWYgW1sgLWQgXCIkU09VUkNFX1BBVEhcIiBdXTsgdGhlblxuICAgIGRpdHRvICRTT1VSQ0Vf
UEFUSCBcIiRCVUlMVF9QUk9EVUNUU19ESVIvJFVOTE9DQUxJWkVEX1JFU09VUkNFU19GT0xERVJf
UEFUSFwiXG5maVxuIjsKIAkJfTsKKwkJMzFENjJCNjQyNUU1QTI5ODAwMTM1MDg5IC8qIEdlbmVy
YXRlIFVtYnJlbGxhIEhlYWRlcnMgKi8gPSB7CisJCQlpc2EgPSBQQlhTaGVsbFNjcmlwdEJ1aWxk
UGhhc2U7CisJCQlidWlsZEFjdGlvbk1hc2sgPSAyMTQ3NDgzNjQ3OworCQkJZmlsZXMgPSAoCisJ
CQkpOworCQkJaW5wdXRGaWxlTGlzdFBhdGhzID0gKAorCQkJKTsKKwkJCWlucHV0UGF0aHMgPSAo
CisJCQkJIiQoU1JDUk9PVCkvU2NyaXB0cy9nZW5lcmF0ZS11bWJyZWxsYS1oZWFkZXJzLnB5IiwK
KwkJCQkiJChTUkNST09UKS9TaGFyZWQvQVBJL0NvY29hL1dlYktpdFByaXZhdGUuaC5pbiIsCisJ
CQkJIiQoU1JDUk9PVCkvJChNT0RVTEVNQVBfUFJJVkFURV9GSUxFKSIsCisJCQkJIiQoUFJPSkVD
VF9GSUxFX1BBVEgpL3Byb2plY3QucGJ4cHJvaiIsCisJCQkJIiQoU1JDUk9PVCkvU2hhcmVkL0FQ
SS9Db2NvYS9XZWJLaXQuaC5pbiIsCisJCQkJIiQoU1JDUk9PVCkvJChNT0RVTEVNQVBfRklMRSki
LAorCQkJKTsKKwkJCW5hbWUgPSAiR2VuZXJhdGUgVW1icmVsbGEgSGVhZGVycyI7CisJCQlvdXRw
dXRGaWxlTGlzdFBhdGhzID0gKAorCQkJKTsKKwkJCW91dHB1dFBhdGhzID0gKAorCQkJCSIkKEJV
SUxUX1BST0RVQ1RTX0RJUikvJChQUklWQVRFX0hFQURFUlNfRk9MREVSX1BBVEgpL1dlYktpdFBy
aXZhdGUuaCIsCisJCQkJIiQoQlVJTERfUFJPRFVDVFNfRElSKS8kKEhFQURFUlNfRk9MREVSX1BB
VEgpL1dlYktpdC5oIiwKKwkJCSk7CisJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNz
aW5nID0gMDsKKwkJCXNoZWxsUGF0aCA9IC9iaW4vc2g7CisJCQlzaGVsbFNjcmlwdCA9ICJcIiR7
U1JDUk9PVH0vU2NyaXB0cy9nZW5lcmF0ZS11bWJyZWxsYS1oZWFkZXIucHlcIiAtLWlucHV0IFwi
JHtTUkNST09UfS9TaGFyZWQvQVBJL0NvY29hL1dlYktpdFByaXZhdGUuaC5pblwiIC0tb3V0cHV0
IFwiJHtCVUlMVF9QUk9EVUNUU19ESVJ9LyR7UFJJVkFURV9IRUFERVJTX0ZPTERFUl9QQVRIfS9X
ZWJLaXRQcml2YXRlLmhcIiAtLXRlbXBvdXRwdXQgXCIke1RBUkdFVF9URU1QX0RJUn0vV2ViS2l0
UHJpdmF0ZS5oXCIgLS1oZWFkZXJzIFwiJHtCVUlMVF9QUk9EVUNUU19ESVJ9LyR7UFJJVkFURV9I
RUFERVJTX0ZPTERFUl9QQVRIfVwiIC0tZnJhbWV3b3JrIFwiJHtQUk9EVUNUX01PRFVMRV9OQU1F
fVwiIC0tbW9kdWxlbWFwIFwiJHtTUkNST09UfS8ke01PRFVMRU1BUF9QUklWQVRFX0ZJTEV9XCJc
blwiJHtTUkNST09UfS9TY3JpcHRzL2dlbmVyYXRlLXVtYnJlbGxhLWhlYWRlci5weVwiIC0taW5w
dXQgXCIke1NSQ1JPT1R9L1NoYXJlZC9BUEkvQ29jb2EvV2ViS2l0LmguaW5cIiAtLW91dHB1dCBc
IiR7QlVJTFRfUFJPRFVDVFNfRElSfS8ke1BVQkxJQ19IRUFERVJTX0ZPTERFUl9QQVRIfS9XZWJL
aXQuaFwiIC0tdGVtcG91dHB1dCBcIiR7VEFSR0VUX1RFTVBfRElSfS9XZWJLaXQuaFwiIC0taGVh
ZGVycyBcIiR7QlVJTFRfUFJPRFVDVFNfRElSfS8ke1BVQkxJQ19IRUFERVJTX0ZPTERFUl9QQVRI
fVwiIC0tZnJhbWV3b3JrIFwiJHtQUk9EVUNUX01PRFVMRV9OQU1FfVwiIC0tbW9kdWxlbWFwIFwi
JHtTUkNST09UfS8ke01PRFVMRU1BUF9GSUxFfVwiXG4iOworCQl9OwogCQkzNzEzRjAyMzE0Mjkw
NjNEMDAzNjM4N0YgLyogQ2hlY2sgRm9yIEluYXBwcm9wcmlhdGUgT2JqZWN0aXZlLUMgQ2xhc3Mg
TmFtZXMgKi8gPSB7CiAJCQlpc2EgPSBQQlhTaGVsbFNjcmlwdEJ1aWxkUGhhc2U7CiAJCQlidWls
ZEFjdGlvbk1hc2sgPSAyMTQ3NDgzNjQ3OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2Fj
eS9XZWJLaXRMZWdhY3kueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJLaXRM
ZWdhY3kvV2ViS2l0TGVnYWN5Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggN2UxYzUw
YmQzN2YwZGYzMWE2Mjk2NTc1MDc3MGVjNTE4NjRmZTg5NS4uOWFlODc5MWY1NTNmYTAyZTMzMGIy
ZTVhYzcxNjY2MGE0NjYxODhlZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9XZWJL
aXRMZWdhY3kueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViS2l0TGVn
YWN5L1dlYktpdExlZ2FjeS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC02ODcsNyArNjg3
LDcgQEAKIAkJREQ4OTY4MjAwOUFBODcyNDAwOTdFN0YwIC8qIFdlYkVsZW1lbnREaWN0aW9uYXJ5
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERDg5Njgx
RTA5QUE4NzI0MDA5N0U3RjAgLyogV2ViRWxlbWVudERpY3Rpb25hcnkuaCAqLzsgfTsKIAkJREQ4
OTY4MjEwOUFBODcyNDAwOTdFN0YwIC8qIFdlYkVsZW1lbnREaWN0aW9uYXJ5Lm1tIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREQ4OTY4MUYwOUFBODcyNDAw
OTdFN0YwIC8qIFdlYkVsZW1lbnREaWN0aW9uYXJ5Lm1tICovOyB9OwogCQlFMTNFNzgyQzFFNUE3
MzY1MDAxODQ5RDEgLyogV2ViQ3JlYXRlRnJhZ21lbnRJbnRlcm5hbC5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTEzRTc4MkIxRTVBNzM2NTAwMTg0OUQx
IC8qIFdlYkNyZWF0ZUZyYWdtZW50SW50ZXJuYWwuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OwotCQlFMTUzMUJEODIxODdCOTU0MDAyRTNGODEgLyogTlNV
UkxEb3dubG9hZFNQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gRTE1MzFCRDcyMTg3QjhGMjAwMkUzRjgxIC8qIE5TVVJMRG93bmxvYWRTUEkuaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlFMTUzMUJEODIx
ODdCOTU0MDAyRTNGODEgLyogTlNVUkxEb3dubG9hZFNQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTE1MzFCRDcyMTg3QjhGMjAwMkUzRjgxIC8qIE5T
VVJMRG93bmxvYWRTUEkuaCAqLzsgfTsKIAkJRTE1NjYzMTkwRkI2MUMxRjAwQzE5OUNBIC8qIFdl
YkRvd25sb2FkLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gRTE1NjYzMTgwRkI2MUMxRjAwQzE5OUNBIC8qIFdlYkRvd25sb2FkLm1tICovOyB9OwogCQlF
MTY5ODM2MjExMzQ2RDFCMDA4OTQxMTUgLyogUHJveHlSdW50aW1lT2JqZWN0LmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMTY5ODM2MTExMzQ2RDFCMDA4
OTQxMTUgLyogUHJveHlSdW50aW1lT2JqZWN0LmggKi87IH07CiAJCUUxNjk4MzZDMTEzNDZENTYw
MDg5NDExNSAvKiBQcm94eVJ1bnRpbWVPYmplY3QubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMTY5ODM2QjExMzQ2RDU2MDA4OTQxMTUgLyogUHJveHlS
dW50aW1lT2JqZWN0Lm1tICovOyB9Owo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>421471</attachid>
            <date>2021-02-24 15:24:44 -0800</date>
            <delta_ts>2021-02-26 10:58:38 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-203059-20210225102442.patch</filename>
            <type>text/plain</type>
            <size>31077</size>
            <attacher name="Dean Jackson">dino</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjczMzE2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDMzNTczMmVlYzg2MmZiYjM3
YzZjOGE5ZmZkZDYzMzRhMjUyZmExYzYuLjllNzYyNDAyNDgxZmExNGI2MWFkMjE2NTI1MmY3Yjhh
NDBiYzM3MDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzcgQEAKKzIwMjEtMDItMjMgIERlYW4gSmFj
a3NvbiAgPGRpbm9AYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBTd2lmdCBtb2R1bGVtYXAgZm9y
IFdlYktpdCBQcml2YXRlIEFQSXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTIwMzA1OQorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNTYzNTAyOTA+CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUHJvdmlkZSBh
IFN3aWZ0IG1vZHVsZW1hcCBmb3IgV2ViS2l0X1ByaXZhdGUsIGFuZAorICAgICAgICBlbnN1cmUg
dGhhdCBhbGwgUHJpdmF0ZUhlYWRlcnMgYXJlIGluY2x1ZGVkIGluIG91ciB1bWJyZWxsYQorICAg
ICAgICBoZWFkZXIgKGJlY2F1c2Ugd2UgZG9uJ3Qga25vdyB3aG8gaXMgaW5jbHVkaW5nIHRoZSB2
YXJpb3VzCisgICAgICAgIGZpbGVzKS4KKworICAgICAgICBVc2VkIHRoZSBzYW1lIGFwcHJvYWNo
IHRvIGdlbmVyYXRlZCB0aGUgcHVibGljIHVtYnJlbGxhIGhlYWRlci4KKyAgICAgICAgSW4gYm90
aCBjYXNlcyB0aGlzIGhhcyBhZGRlZCBhIGxvdCBvZiBleHRyYSBpbXBvcnQgc3RhdGVtZW50cywK
KyAgICAgICAgYnV0IGhvcGVmdWxseSB0aGF0IGlzIG9rLgorCisgICAgICAgIFJlbmFtZWQgT1NY
Lm1vZHVsZW1hcCB0byBtYWNPUy5tb2R1bGVtYXAgd2hpbGUgaGVyZS4KKworICAgICAgICAqIENv
bmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWc6CisgICAgICAgICogQ29uZmlndXJhdGlvbnMvV2Vi
S2l0LnhjY29uZmlnOgorICAgICAgICAqIE1vZHVsZXMvaU9TLnByaXZhdGUubW9kdWxlbWFwOiBB
ZGRlZC4KKyAgICAgICAgKiBNb2R1bGVzL21hY09TLm1vZHVsZW1hcDogUmVuYW1lZCBmcm9tIFNv
dXJjZS9XZWJLaXQvTW9kdWxlcy9PU1gubW9kdWxlbWFwLgorICAgICAgICAqIE1vZHVsZXMvbWFj
T1MucHJpdmF0ZS5tb2R1bGVtYXA6IEFkZGVkLgorICAgICAgICAqIFNjcmlwdHMvZ2VuZXJhdGUt
dW1icmVsbGEtaGVhZGVyLnB5OiBBZGRlZC4gR2VuZXJhdGVzIHRoZSB1bWJyZWxsYSBoZWFkZXIg
ZmlsZS4KKyAgICAgICAgKGdlbmVyYXRlX3VtYnJlbGxhX2hlYWRlcik6CisgICAgICAgICogU2hh
cmVkL0FQSS9Db2NvYS9XZWJLaXQuaCAtPiBXZWJLaXQuaC5pbjogUmVuYW1lZCBzaW5jZSBpdCBp
cyBpbnB1dCB0byBhIGdlbmVyYXRlZCBmaWxlLgorICAgICAgICAqIFNoYXJlZC9BUEkvQ29jb2Ev
V2ViS2l0UHJpdmF0ZS5oIC0+IFdlYktpdFByaXZhdGUuaC5pbjogRGl0dG8uCisgICAgICAgICog
V2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogV2ViS2l0Lnhjb2Rl
cHJvai94Y3NoYXJlZGRhdGEveGNzY2hlbWVzL1dlYktpdC54Y3NjaGVtZToKKyAgICAgICAgKiBT
aGFyZWQvQVBJL2MvV0tJbW1lZGlhdGVBY3Rpb25UeXBlcy5oOiBSZW1vdmUgdW51c2VkICNkZWZp
bmUgdGhhdCB3YXMgY2xhc2hpbmcgd2l0aCB0aGUgdHlwZSB0aGF0CisgICAgICAgIGhhZCBiZWVu
IGRlZmluZWQgZWxzZXdoZXJlLgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2EvV0tDb250
ZXh0TWVudUVsZW1lbnRJbmZvUHJpdmF0ZS5oOiBHdWFyZCB0aGlzIGZvciBpT1MuCisKIDIwMjEt
MDItMjMgIEtpbW1vIEtpbm51bmVuICA8a2tpbm51bmVuQGFwcGxlLmNvbT4KIAogICAgICAgICBS
RUdSRVNTSU9OKHIyNzMyMDQpOiB3ZWJraXRweSB0ZXN0cyBmYWlsCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0TGVnYWN5L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvQ2hhbmdlTG9n
CmluZGV4IDA2NGQxOWJlOGYzYzY3NTMxNjU4Y2MxODViODU2ZjQ2ZWIzYTZhODEuLjQ0YTIxMDMy
MzBhOWJiZDJmOGFhMjY4ZGZhMjY5NDg1MTU4YzZiOGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXRMZWdhY3kvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTUgQEAKKzIwMjEtMDItMjMgIERlYW4gSmFja3NvbiAgPGRpbm9AYXBwbGUuY29t
PgorCisgICAgICAgIEFkZCBTd2lmdCBtb2R1bGVtYXAgZm9yIFdlYktpdCBQcml2YXRlIEFQSXMK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwMzA1OQor
ICAgICAgICA8cmRhcjovL3Byb2JsZW0vNTYzNTAyOTA+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRG9uJ3QgZm9yd2FyZCBOU1VSTERvd25sb2FkU1BJ
LmggaW50byB0aGUgZnJhbWV3b3JrLgorCisgICAgICAgICogV2ViS2l0TGVnYWN5Lnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2o6CisKIDIwMjEtMDItMDggIENvbW1pdCBRdWV1ZSAgPGNvbW1pdC1x
dWV1ZUB3ZWJraXQub3JnPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIHJldmVydGluZyByMjcyNDgw
LCByMjcyNDgxLCBhbmQgcjI3MjUwMC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ29uZmln
dXJhdGlvbnMvQmFzZS54Y2NvbmZpZyBiL1NvdXJjZS9XZWJLaXQvQ29uZmlndXJhdGlvbnMvQmFz
ZS54Y2NvbmZpZwppbmRleCBlMjgyOTg0ZjRmNDQwZmU2ZTcxMzUxMDQ3YWE3ZGU5NDhkODFhZmUw
Li5mYWQzZWZjYmEyYzViOGI4YWE1NDNmMzA2YzU3YTFkODlmNWU2ODkxIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L0NvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWcKKysrIGIvU291cmNlL1dl
YktpdC9Db25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnCkBAIC0zNCw2ICszNCw3IEBAIEFMV0FZ
U19TRUFSQ0hfVVNFUl9QQVRIUyA9IE5POwogQ0xBTkdfQ1hYX0xBTkdVQUdFX1NUQU5EQVJEID0g
Z251KysxejsKIENMQU5HX0NYWF9MSUJSQVJZID0gbGliYysrOwogQ0xBTkdfRU5BQkxFX09CSkNf
V0VBSyA9IFlFUzsKK0NMQU5HX01PRFVMRVNfRU5BQkxFX1ZFUklGSUVSX1RPT0wgPSBZRVM7CiBD
TEFOR19XQVJOX0JMT0NLX0NBUFRVUkVfQVVUT1JFTEVBU0lORyA9IFlFUzsKIENMQU5HX1dBUk5f
Qk9PTF9DT05WRVJTSU9OID0gWUVTOwogQ0xBTkdfV0FSTl9DT01NQSA9IFlFUzsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvQ29uZmlndXJhdGlvbnMvV2ViS2l0LnhjY29uZmlnIGIvU291cmNl
L1dlYktpdC9Db25maWd1cmF0aW9ucy9XZWJLaXQueGNjb25maWcKaW5kZXggMTEzZjEwMTE3NzMz
MjEyOGExNTY2NTJkN2YzYTY3MDI5NWQ0MTg4Mi4uZDkzMmNiZjUxNjZkYWQ2NGRhZjcxODlkZTRi
ZjYzN2QwZGJlMDQzMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9Db25maWd1cmF0aW9ucy9X
ZWJLaXQueGNjb25maWcKKysrIGIvU291cmNlL1dlYktpdC9Db25maWd1cmF0aW9ucy9XZWJLaXQu
eGNjb25maWcKQEAgLTMxLDcgKzMxLDEwIEBAIElORk9QTElTVF9GSUxFID0gSW5mby5wbGlzdDsK
IERFRklORVNfTU9EVUxFID0gWUVTOwogTU9EVUxFTUFQX0ZJTEUgPSAkKE1PRFVMRU1BUF9GSUxF
XyQoV0tfQ09DT0FfVE9VQ0gpKTsKIE1PRFVMRU1BUF9GSUxFX2NvY29hdG91Y2ggPSBNb2R1bGVz
L2lPUy5tb2R1bGVtYXA7Ci1NT0RVTEVNQVBfRklMRV8gPSBNb2R1bGVzL09TWC5tb2R1bGVtYXA7
CitNT0RVTEVNQVBfRklMRV8gPSBNb2R1bGVzL21hY09TLm1vZHVsZW1hcDsKK01PRFVMRU1BUF9Q
UklWQVRFX0ZJTEUgPSAkKE1PRFVMRU1BUF9QUklWQVRFX0ZJTEVfJChXS19DT0NPQV9UT1VDSCkp
OworTU9EVUxFTUFQX1BSSVZBVEVfRklMRV9jb2NvYXRvdWNoID0gTW9kdWxlcy9pT1MucHJpdmF0
ZS5tb2R1bGVtYXA7CitNT0RVTEVNQVBfUFJJVkFURV9GSUxFXyA9IE1vZHVsZXMvbWFjT1MucHJp
dmF0ZS5tb2R1bGVtYXA7CiAKIElOU1RBTExfUEFUSCA9ICQoV0VCS0lUX0ZSQU1FV09SS1NfRElS
KTsKIERZTElCX0lOU1RBTExfTkFNRV9CQVNFID0gJChEWUxJQl9JTlNUQUxMX05BTUVfQkFTRV8k
KFdLX1VTRV9BTFRFUk5BVEVfRlJBTUVXT1JLU19ESVIpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvTW9kdWxlcy9PU1gubW9kdWxlbWFwIGIvU291cmNlL1dlYktpdC9Nb2R1bGVzL09TWC5t
b2R1bGVtYXAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDg5Y2EwNzRmNDc4MjhjNzM2
NGExZDFmZGEwOThmNDdlZjk3ZjQwZjguLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYktpdC9Nb2R1bGVzL09TWC5tb2R1bGVtYXAKKysrIC9k
ZXYvbnVsbApAQCAtMSwxOCArMCwwIEBACi1mcmFtZXdvcmsgbW9kdWxlIFdlYktpdCBbc3lzdGVt
XSBbZXh0ZXJuX2NdIHsKLSAgdW1icmVsbGEgaGVhZGVyICJXZWJLaXQuaCIKLSAgbW9kdWxlICog
eyBleHBvcnQgKiB9Ci0gIGV4cG9ydCAqCi0gIAotICBleHBsaWNpdCBtb2R1bGUgTlBBUEkgewot
ICAgIGhlYWRlciAibnB0eXBlcy5oIgotICAgIGhlYWRlciAibnBhcGkuaCIKLSAgICBoZWFkZXIg
Im5wZnVuY3Rpb25zLmgiCi0gICAgaGVhZGVyICJucHJ1bnRpbWUuaCIKLSAgICBleHBvcnQgKgot
ICB9Ci0KLSAgZXhwbGljaXQgbW9kdWxlIERPTVByb2dyZXNzRXZlbnQgewotICAgIGhlYWRlciAi
RE9NUHJvZ3Jlc3NFdmVudC5oIgotICAgIGV4cG9ydCAqCi0gIH0KLX0KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvTW9kdWxlcy9pT1MucHJpdmF0ZS5tb2R1bGVtYXAgYi9Tb3VyY2UvV2ViS2l0
L01vZHVsZXMvaU9TLnByaXZhdGUubW9kdWxlbWFwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjAyZDgyZTlhNzQ1MWVm
NDJmMDhjOGYwYmJjMzM4ZjMxZjA1NTliNjYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2Vi
S2l0L01vZHVsZXMvaU9TLnByaXZhdGUubW9kdWxlbWFwCkBAIC0wLDAgKzEsNSBAQAorZnJhbWV3
b3JrIG1vZHVsZSBXZWJLaXRfUHJpdmF0ZSBbc3lzdGVtXSBbZXh0ZXJuX2NdIHsKKyAgdW1icmVs
bGEgaGVhZGVyICJXZWJLaXRQcml2YXRlLmgiCisgIG1vZHVsZSAqIHsgZXhwb3J0ICogfQorICBl
eHBvcnQgKgorfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9Nb2R1bGVzL21hY09TLm1vZHVs
ZW1hcCBiL1NvdXJjZS9XZWJLaXQvTW9kdWxlcy9tYWNPUy5tb2R1bGVtYXAKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
ODljYTA3NGY0NzgyOGM3MzY0YTFkMWZkYTA5OGY0N2VmOTdmNDBmOAotLS0gL2Rldi9udWxsCisr
KyBiL1NvdXJjZS9XZWJLaXQvTW9kdWxlcy9tYWNPUy5tb2R1bGVtYXAKQEAgLTAsMCArMSwxOCBA
QAorZnJhbWV3b3JrIG1vZHVsZSBXZWJLaXQgW3N5c3RlbV0gW2V4dGVybl9jXSB7CisgIHVtYnJl
bGxhIGhlYWRlciAiV2ViS2l0LmgiCisgIG1vZHVsZSAqIHsgZXhwb3J0ICogfQorICBleHBvcnQg
KgorICAKKyAgZXhwbGljaXQgbW9kdWxlIE5QQVBJIHsKKyAgICBoZWFkZXIgIm5wdHlwZXMuaCIK
KyAgICBoZWFkZXIgIm5wYXBpLmgiCisgICAgaGVhZGVyICJucGZ1bmN0aW9ucy5oIgorICAgIGhl
YWRlciAibnBydW50aW1lLmgiCisgICAgZXhwb3J0ICoKKyAgfQorCisgIGV4cGxpY2l0IG1vZHVs
ZSBET01Qcm9ncmVzc0V2ZW50IHsKKyAgICBoZWFkZXIgIkRPTVByb2dyZXNzRXZlbnQuaCIKKyAg
ICBleHBvcnQgKgorICB9Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L01vZHVsZXMvbWFj
T1MucHJpdmF0ZS5tb2R1bGVtYXAgYi9Tb3VyY2UvV2ViS2l0L01vZHVsZXMvbWFjT1MucHJpdmF0
ZS5tb2R1bGVtYXAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDJkODJlOWE3NDUxZWY0MmYwOGM4ZjBiYmMzMzhmMzFm
MDU1OWI2NgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvTW9kdWxlcy9tYWNPUy5w
cml2YXRlLm1vZHVsZW1hcApAQCAtMCwwICsxLDUgQEAKK2ZyYW1ld29yayBtb2R1bGUgV2ViS2l0
X1ByaXZhdGUgW3N5c3RlbV0gW2V4dGVybl9jXSB7CisgIHVtYnJlbGxhIGhlYWRlciAiV2ViS2l0
UHJpdmF0ZS5oIgorICBtb2R1bGUgKiB7IGV4cG9ydCAqIH0KKyAgZXhwb3J0ICoKK30KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvU2NyaXB0cy9nZW5lcmF0ZS11bWJyZWxsYS1oZWFkZXIucHkg
Yi9Tb3VyY2UvV2ViS2l0L1NjcmlwdHMvZ2VuZXJhdGUtdW1icmVsbGEtaGVhZGVyLnB5Cm5ldyBm
aWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjhmYWFjYjQ0NWRlNmViYWVlZDU4ZWQ3ZjA2NDc4OWQwOTYzY2RjNTEKLS0tIC9kZXYv
bnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L1NjcmlwdHMvZ2VuZXJhdGUtdW1icmVsbGEtaGVhZGVy
LnB5CkBAIC0wLDAgKzEsOTIgQEAKKyMhL3Vzci9iaW4vZW52IHB5dGhvbgorIworIyBDb3B5cmln
aHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorIworIyBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKKyMgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCisjIGFyZSBtZXQ6CisjIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291
cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorIyAgICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorIyAy
LiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZSBjb3B5cmlnaHQKKyMgICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyMgICAgIGRvY3VtZW50YXRpb24gYW5kL29y
IG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisjCisjIFRI
SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9S
UyBgYEFTIElTJycgQU5ECisjIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisjIFdBUlJBTlRJRVMgT0Yg
TUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUK
KyMgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJ
QlVUT1JTIEJFIExJQUJMRSBGT1IKKyMgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
IFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIyBEQU1BR0VTIChJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UgorIyBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNT
IElOVEVSUlVQVElPTikgSE9XRVZFUgorIyBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElB
QklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLAorIyBPUiBUT1JU
IChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBP
VVQgT0YgVEhFIFVTRQorIyBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorCitpbXBvcnQgZmlsZWNtcAoraW1wb3J0IG9z
CitpbXBvcnQgcmUKKworCitkZWYgZ2VuZXJhdGVfdW1icmVsbGFfaGVhZGVyKGlucHV0X2ZpbGVu
YW1lLCBvdXRwdXRfZmlsZW5hbWUsIHRlbXBvdXRwdXRfZmlsZW5hbWUsIGhlYWRlcl9kaXJuYW1l
LCBmcmFtZXdvcmtfbmFtZSwgbW9kdWxlbWFwX2ZpbGVuYW1lKToKKyAgICBpbmNsdWRlX3BhdHRl
cm4gPSByZS5jb21waWxlKHIiXCMoaW5jbHVkZXxpbXBvcnQpXHMrXDwiICsgZnJhbWV3b3JrX25h
bWUgKyByIlwvKC4qKVw+IikKKyAgICBleGNsdWRlX3BhdHRlcm4gPSByZS5jb21waWxlKHInXHMq
ZXhjbHVkZVxzK2hlYWRlclxzKyIoLiopIicpCisKKyAgICBleGlzdGluZ19mcmFtZXdvcmtfaGVh
ZGVycyA9IHNldCgpCisgICAgb3V0cHV0X2hlYWRlcnMgPSBbXQorICAgIGJsb2NrbGlzdCA9IHsK
KyAgICAgICAgIiVzUHJpdmF0ZS5oIiAlIGZyYW1ld29ya19uYW1lLAorICAgICAgICAiJXMuaCIg
JSBmcmFtZXdvcmtfbmFtZSwKKyAgICB9CisKKyAgICB3aXRoIG9wZW4obW9kdWxlbWFwX2ZpbGVu
YW1lLCAiciIpIGFzIG1vZHVsZW1hcF9maWxlOgorICAgICAgICBmb3IgbGluZSBpbiBtb2R1bGVt
YXBfZmlsZToKKyAgICAgICAgICAgIG1hdGNoID0gZXhjbHVkZV9wYXR0ZXJuLnNlYXJjaChsaW5l
KQorICAgICAgICAgICAgaWYgbWF0Y2g6CisgICAgICAgICAgICAgICAgZXhpc3RpbmdfZnJhbWV3
b3JrX2hlYWRlcnMuYWRkKG1hdGNoLmdyb3VwKDEpKQorCisgICAgd2l0aCBvcGVuKHRlbXBvdXRw
dXRfZmlsZW5hbWUgb3Igb3V0cHV0X2ZpbGVuYW1lLCAidysiKSBhcyBvdXRwdXRfZmlsZToKKyAg
ICAgICAgd2l0aCBvcGVuKGlucHV0X2ZpbGVuYW1lLCAiciIpIGFzIGlucHV0X2ZpbGU6CisgICAg
ICAgICAgICBmb3IgbGluZSBpbiBpbnB1dF9maWxlOgorICAgICAgICAgICAgICAgIG1hdGNoID0g
aW5jbHVkZV9wYXR0ZXJuLnNlYXJjaChsaW5lKQorICAgICAgICAgICAgICAgIGlmIG1hdGNoOgor
ICAgICAgICAgICAgICAgICAgICBleGlzdGluZ19mcmFtZXdvcmtfaGVhZGVycy5hZGQobWF0Y2gu
Z3JvdXAoMikpCisKKyAgICAgICAgICAgICAgICBvdXRwdXRfZmlsZS53cml0ZShsaW5lKQorCisg
ICAgICAgIGZvciAoZGlycGF0aCwgZGlybmFtZXMsIGZpbGVuYW1lcykgaW4gb3Mud2FsayhoZWFk
ZXJfZGlybmFtZSk6CisgICAgICAgICAgICBmb3IgZmlsZSBpbiBmaWxlbmFtZXM6CisgICAgICAg
ICAgICAgICAgcGF0aCA9IG9zLnBhdGgucmVscGF0aChvcy5wYXRoLmpvaW4oZGlycGF0aCwgZmls
ZSksIHN0YXJ0PWhlYWRlcl9kaXJuYW1lKQorCisgICAgICAgICAgICAgICAgaWYgcGF0aCBpbiBi
bG9ja2xpc3Qgb3IgcGF0aCBpbiBleGlzdGluZ19mcmFtZXdvcmtfaGVhZGVycyBvciBub3QgcGF0
aC5lbmRzd2l0aCgiLmgiKToKKyAgICAgICAgICAgICAgICAgICAgY29udGludWUKKworICAgICAg
ICAgICAgICAgIG91dHB1dF9oZWFkZXJzLmFwcGVuZChwYXRoKQorCisgICAgICAgIG91dHB1dF9o
ZWFkZXJzLnNvcnQoKQorICAgICAgICBvdXRwdXRfZmlsZS53cml0ZSgiXG5cbiIpCisKKyAgICAg
ICAgZm9yIG91dHB1dF9oZWFkZXIgaW4gb3V0cHV0X2hlYWRlcnM6CisgICAgICAgICAgICBvdXRw
dXRfZmlsZS53cml0ZSgiI2ltcG9ydCA8JXMvJXM+XG4iICUgKGZyYW1ld29ya19uYW1lLCBvdXRw
dXRfaGVhZGVyKSkKKworICAgIGlmIHRlbXBvdXRwdXRfZmlsZW5hbWUgYW5kIChub3Qgb3MucGF0
aC5leGlzdHMob3V0cHV0X2ZpbGVuYW1lKSBvciBub3QgZmlsZWNtcC5jbXAob3V0cHV0X2ZpbGVu
YW1lLCB0ZW1wb3V0cHV0X2ZpbGVuYW1lKSk6CisgICAgICAgIG9zLnJlbmFtZSh0ZW1wb3V0cHV0
X2ZpbGVuYW1lLCBvdXRwdXRfZmlsZW5hbWUpCisKKworaWYgX19uYW1lX18gPT0gIl9fbWFpbl9f
IjoKKyAgICBpbXBvcnQgYXJncGFyc2UKKyAgICBpbXBvcnQgc3lzCisKKyAgICBwYXJzZXIgPSBh
cmdwYXJzZS5Bcmd1bWVudFBhcnNlcigpCisgICAgcGFyc2VyLmFkZF9hcmd1bWVudCgiLS1pbnB1
dCIsIHR5cGU9c3RyLCBkZWZhdWx0PU5vbmUsIGhlbHA9IklucHV0IGhlYWRlciBmaWxlIChpZS4g
JHtTUkNST09UfS9XZWJLaXRQcml2YXRlLmgpIikKKyAgICBwYXJzZXIuYWRkX2FyZ3VtZW50KCIt
LW91dHB1dCIsIHR5cGU9c3RyLCBkZWZhdWx0PU5vbmUsIGhlbHA9Ik91dHB1dCBoZWFkZXIgZmls
ZSAoaWUuICR7RFNUUk9PVH0vV2ViS2l0LmZyYW1ld29yay9Qcml2YXRlSGVhZGVycy9XZWJLaXRQ
cml2YXRlLmgpIikKKyAgICBwYXJzZXIuYWRkX2FyZ3VtZW50KCItLXRlbXBvdXRwdXQiLCB0eXBl
PXN0ciwgZGVmYXVsdD1Ob25lLCBoZWxwPSJUZW1wb3Jhcnkgb3V0cHV0IGZpbGUgKGllLiAke1RB
UkdFVF9URU1QX0RJUn0vV2ViS2l0UHJpdmF0ZS5oXG5JZiBzZXQsIHRoZSBoZWFkZXIgd2lsbCBi
ZSBnZW5lcmF0ZWQgdG8gdGhpcyBwYXRoLCBhbmQgdGhlIG91dHB1dCBwYXRoIHdpbGwgb25seSBi
ZSB0b3VjaGVkIGlmIHRoZSBmaWxlIGNvbnRlbnRzIGhhdmUgY2hhbmdlZC4iKQorICAgIHBhcnNl
ci5hZGRfYXJndW1lbnQoIi0taGVhZGVycyIsIHR5cGU9c3RyLCBkZWZhdWx0PU5vbmUsIGhlbHA9
IkhlYWRlciBkaXJlY3RvcnkgKGllLiAke0RTVFJPT1R9L1dlYktpdC5mcmFtZXdvcmsvUHJpdmF0
ZUhlYWRlcnMpIikKKyAgICBwYXJzZXIuYWRkX2FyZ3VtZW50KCItLWZyYW1ld29yayIsIHR5cGU9
c3RyLCBkZWZhdWx0PU5vbmUsIGhlbHA9IkZyYW1ld29yayBuYW1lIChpZS4gV2ViS2l0KSIpCisg
ICAgcGFyc2VyLmFkZF9hcmd1bWVudCgiLS1tb2R1bGVtYXAiLCB0eXBlPXN0ciwgZGVmYXVsdD1O
b25lLCBoZWxwPSJNb2R1bGUgbWFwIGZpbGUgKGllLiBtb2R1bGUucHJpdmF0ZS5tb2R1bGVtYXAp
IikKKyAgICBhcmdzID0gcGFyc2VyLnBhcnNlX2FyZ3MoKQorCisgICAgaWYgYXJncy5pbnB1dCBp
cyBOb25lIG9yIGFyZ3Mub3V0cHV0IGlzIE5vbmUgb3IgYXJncy5oZWFkZXJzIGlzIE5vbmUgb3Ig
YXJncy5mcmFtZXdvcmsgaXMgTm9uZSBvciBhcmdzLm1vZHVsZW1hcCBpcyBOb25lOgorICAgICAg
ICBwYXJzZXIucHJpbnRfaGVscCgpCisgICAgICAgIHN5cy5leGl0KDEpCisKKyAgICBnZW5lcmF0
ZV91bWJyZWxsYV9oZWFkZXIoYXJncy5pbnB1dCwgYXJncy5vdXRwdXQsIGFyZ3MudGVtcG91dHB1
dCwgYXJncy5oZWFkZXJzLCBhcmdzLmZyYW1ld29yaywgYXJncy5tb2R1bGVtYXApCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9BUEkvQ29jb2EvV2ViS2l0LmggYi9Tb3VyY2UvV2Vi
S2l0L1NoYXJlZC9BUEkvQ29jb2EvV2ViS2l0LmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IGYwNDU5OTU4ZTEzZjFhZTJlY2M4ZmM4NjkyMWMxMGRjN2QyMmI4MWEuLjAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYktpdC9TaGFyZWQv
QVBJL0NvY29hL1dlYktpdC5oCisrKyAvZGV2L251bGwKQEAgLTEsNzEgKzAsMCBAQAotLyoKLSAq
IENvcHlyaWdodCAoQykgMjAxNCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgot
ICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRp
b24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJ
VFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwotICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBUSEUgSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNV
TEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJ
TkMuIE9SIElUUyBDT05UUklCVVRPUlMKLSAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKLSAqIENPTlNFUVVFTlRJ
QUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9G
Ci0gKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1Ig
UFJPRklUUzsgT1IgQlVTSU5FU1MKLSAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCi0gKiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNF
KQotICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRgotICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgot
ICovCi0KLSNpbXBvcnQgPFdlYktpdC9OU0F0dHJpYnV0ZWRTdHJpbmcuaD4KLSNpbXBvcnQgPFdl
YktpdC9XS0JhY2tGb3J3YXJkTGlzdC5oPgotI2ltcG9ydCA8V2ViS2l0L1dLQmFja0ZvcndhcmRM
aXN0SXRlbS5oPgotI2ltcG9ydCA8V2ViS2l0L1dLQ29udGVudFJ1bGVMaXN0Lmg+Ci0jaW1wb3J0
IDxXZWJLaXQvV0tDb250ZW50UnVsZUxpc3RTdG9yZS5oPgotI2ltcG9ydCA8V2ViS2l0L1dLQ29u
dGVudFdvcmxkLmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tDb250ZXh0TWVudUVsZW1lbnRJbmZvLmg+
Ci0jaW1wb3J0IDxXZWJLaXQvV0tEb3dubG9hZC5oPgotI2ltcG9ydCA8V2ViS2l0L1dLRG93bmxv
YWREZWxlZ2F0ZS5oPgotI2ltcG9ydCA8V2ViS2l0L1dLRXJyb3IuaD4KLSNpbXBvcnQgPFdlYktp
dC9XS0ZpbmRDb25maWd1cmF0aW9uLmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tGaW5kUmVzdWx0Lmg+
Ci0jaW1wb3J0IDxXZWJLaXQvV0tGb3VuZGF0aW9uLmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tGcmFt
ZUluZm8uaD4KLSNpbXBvcnQgPFdlYktpdC9XS0hUVFBDb29raWVTdG9yZS5oPgotI2ltcG9ydCA8
V2ViS2l0L1dLTmF2aWdhdGlvbi5oPgotI2ltcG9ydCA8V2ViS2l0L1dLTmF2aWdhdGlvbkFjdGlv
bi5oPgotI2ltcG9ydCA8V2ViS2l0L1dLTmF2aWdhdGlvbkRlbGVnYXRlLmg+Ci0jaW1wb3J0IDxX
ZWJLaXQvV0tOYXZpZ2F0aW9uUmVzcG9uc2UuaD4KLSNpbXBvcnQgPFdlYktpdC9XS09wZW5QYW5l
bFBhcmFtZXRlcnMuaD4KLSNpbXBvcnQgPFdlYktpdC9XS1BERkNvbmZpZ3VyYXRpb24uaD4KLSNp
bXBvcnQgPFdlYktpdC9XS1ByZWZlcmVuY2VzLmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tQcmV2aWV3
QWN0aW9uSXRlbS5oPgotI2ltcG9ydCA8V2ViS2l0L1dLUHJldmlld0FjdGlvbkl0ZW1JZGVudGlm
aWVycy5oPgotI2ltcG9ydCA8V2ViS2l0L1dLUHJldmlld0VsZW1lbnRJbmZvLmg+Ci0jaW1wb3J0
IDxXZWJLaXQvV0tQcm9jZXNzUG9vbC5oPgotI2ltcG9ydCA8V2ViS2l0L1dLU2NyaXB0TWVzc2Fn
ZS5oPgotI2ltcG9ydCA8V2ViS2l0L1dLU2NyaXB0TWVzc2FnZUhhbmRsZXIuaD4KLSNpbXBvcnQg
PFdlYktpdC9XS1NjcmlwdE1lc3NhZ2VIYW5kbGVyV2l0aFJlcGx5Lmg+Ci0jaW1wb3J0IDxXZWJL
aXQvV0tTZWN1cml0eU9yaWdpbi5oPgotI2ltcG9ydCA8V2ViS2l0L1dLU25hcHNob3RDb25maWd1
cmF0aW9uLmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tVSURlbGVnYXRlLmg+Ci0jaW1wb3J0IDxXZWJL
aXQvV0tVUkxTY2hlbWVIYW5kbGVyLmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tVUkxTY2hlbWVUYXNr
Lmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tVc2VyQ29udGVudENvbnRyb2xsZXIuaD4KLSNpbXBvcnQg
PFdlYktpdC9XS1VzZXJTY3JpcHQuaD4KLSNpbXBvcnQgPFdlYktpdC9XS1dlYlZpZXcuaD4KLSNp
bXBvcnQgPFdlYktpdC9XS1dlYlZpZXdDb25maWd1cmF0aW9uLmg+Ci0jaW1wb3J0IDxXZWJLaXQv
V0tXZWJwYWdlUHJlZmVyZW5jZXMuaD4KLSNpbXBvcnQgPFdlYktpdC9XS1dlYnNpdGVEYXRhUmVj
b3JkLmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tXZWJzaXRlRGF0YVN0b3JlLmg+Ci0jaW1wb3J0IDxX
ZWJLaXQvV0tXaW5kb3dGZWF0dXJlcy5oPgotCi0jaWYgIWRlZmluZWQoVEFSR0VUX09TX01BQ0NB
VEFMWVNUKSB8fCAhVEFSR0VUX09TX01BQ0NBVEFMWVNUCi0jaW1wb3J0IDxXZWJLaXQvV2ViS2l0
TGVnYWN5Lmg+Ci0jZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0FQSS9D
b2NvYS9XZWJLaXQuaC5pbiBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0FQSS9Db2NvYS9XZWJLaXQu
aC5pbgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi4xMjIwYTk1YzFjYzdhMDg3MjBmNTQ4Mzk2Zjc1M2E2MzVhNGU0YTgz
Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9TaGFyZWQvQVBJL0NvY29hL1dlYktp
dC5oLmluCkBAIC0wLDAgKzEsMjggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQtMjAyMSBB
cHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUg
bXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0
cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmln
aHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMg
SVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNI
QU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBE
SVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRP
UlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ
RUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RT
IE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MK
KyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElB
QklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9S
VCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkg
V0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgor
ICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpZiAhZGVmaW5lZChU
QVJHRVRfT1NfTUFDQ0FUQUxZU1QpIHx8ICFUQVJHRVRfT1NfTUFDQ0FUQUxZU1QKKyNpbXBvcnQg
PFdlYktpdC9XZWJLaXRMZWdhY3kuaD4KKyNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9TaGFyZWQvQVBJL0NvY29hL1dlYktpdFByaXZhdGUuaCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVk
L0FQSS9Db2NvYS9XZWJLaXRQcml2YXRlLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDE4YmYwYzVkOGE2M2FmZTM5MDMyZmI0NDdiNTIyNWU1MjE4NzZiZWEuLjAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYktpdC9TaGFyZWQvQVBJ
L0NvY29hL1dlYktpdFByaXZhdGUuaAorKysgL2Rldi9udWxsCkBAIC0xLDQwICswLDAgQEAKLS8q
Ci0gKiBDb3B5cmlnaHQgKEMpIDIwMTQgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgot
ICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQK
LSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJp
YnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBB
TkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKLSAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBM
SUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogVEhFIElN
UExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFS
VElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQ
TEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCi0gKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCi0gKiBDT05TRVFV
RU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVO
VCBPRgotICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCi0gKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgotICogQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkKLSAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YKLSAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KLSAqLwotCi0jaW1wb3J0IDxXZWJLaXQvV0tIaXN0b3J5RGVsZWdhdGVQcml2YXRlLmg+Ci0j
aW1wb3J0IDxXZWJLaXQvV0tOYXZpZ2F0aW9uUHJpdmF0ZS5oPgotI2ltcG9ydCA8V2ViS2l0L1dL
UHJvY2Vzc1Bvb2xQcml2YXRlLmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tVSURlbGVnYXRlUHJpdmF0
ZS5oPgotI2ltcG9ydCA8V2ViS2l0L1dLV2ViVmlld0NvbmZpZ3VyYXRpb25Qcml2YXRlLmg+Ci0j
aW1wb3J0IDxXZWJLaXQvV0tXZWJWaWV3UHJpdmF0ZS5oPgotI2ltcG9ydCA8V2ViS2l0L19XS0Fj
dGl2YXRlZEVsZW1lbnRJbmZvLmg+Ci0jaW1wb3J0IDxXZWJLaXQvX1dLQXR0YWNobWVudC5oPgot
I2ltcG9ydCA8V2ViS2l0L19XS0VsZW1lbnRBY3Rpb24uaD4KLSNpbXBvcnQgPFdlYktpdC9fV0tG
b2N1c2VkRWxlbWVudEluZm8uaD4KLSNpbXBvcnQgPFdlYktpdC9fV0tGb3JtSW5wdXRTZXNzaW9u
Lmg+Ci0jaW1wb3J0IDxXZWJLaXQvX1dLSW5wdXREZWxlZ2F0ZS5oPgotI2ltcG9ydCA8V2ViS2l0
L19XS1Byb2Nlc3NQb29sQ29uZmlndXJhdGlvbi5oPgotI2ltcG9ydCA8V2ViS2l0L19XS1RodW1i
bmFpbFZpZXcuaD4KLSNpbXBvcnQgPFdlYktpdC9fV0tWaXNpdGVkTGlua1N0b3JlLmg+CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9BUEkvQ29jb2EvV2ViS2l0UHJpdmF0ZS5oLmlu
IGIvU291cmNlL1dlYktpdC9TaGFyZWQvQVBJL0NvY29hL1dlYktpdFByaXZhdGUuaC5pbgpuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi45MTRkNzdjYTI1MWViZTBmOTYyNWJhYjdmNTVlNGExNGEzZWU0MTljCi0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL1dlYktpdC9TaGFyZWQvQVBJL0NvY29hL1dlYktpdFByaXZhdGUu
aC5pbgpAQCAtMCwwICsxLDI0IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0LTIwMjEgQXBw
bGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElT
JycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElT
Q0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JT
CisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVD
SUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisg
KiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJ
TElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQg
KElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAq
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9TaGFyZWQvQVBJL2MvV0tJbW1lZGlhdGVBY3Rpb25UeXBlcy5oIGIvU291cmNlL1dl
YktpdC9TaGFyZWQvQVBJL2MvV0tJbW1lZGlhdGVBY3Rpb25UeXBlcy5oCmluZGV4IDVmZGMyOWE5
ZWU5MTQyZjQ0NDM0ZTQ3NGRmMThmYmM3OGM3ODdlNGIuLjVlYzM0OWZkOWZhZGM2YTEzNDIwMTZm
Y2ZlNTc1YWEwODE1ZjIyOGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0FQSS9j
L1dLSW1tZWRpYXRlQWN0aW9uVHlwZXMuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9BUEkv
Yy9XS0ltbWVkaWF0ZUFjdGlvblR5cGVzLmgKQEAgLTQxLDEwICs0MSw2IEBAIGVudW0gewogICAg
IGtXS0ltbWVkaWF0ZUFjdGlvblRlbExpbmsKIH07CiAKLSNpZm5kZWYgX1dLSW1tZWRpYXRlQWN0
aW9uVHlwZSAKLSNkZWZpbmUgX1dLSW1tZWRpYXRlQWN0aW9uVHlwZSB1aW50MzJfdAotI2VuZGlm
Ci0KICNpZmRlZiBfX2NwbHVzcGx1cwogfQogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tDb250ZXh0TWVudUVsZW1lbnRJbmZvUHJpdmF0ZS5o
IGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL1dLQ29udGV4dE1lbnVFbGVtZW50
SW5mb1ByaXZhdGUuaAppbmRleCAwOTI0ODM5ZTIwOTAyYWY2OWY3YjUzY2VhYTYwYWQzMmM0ZmE4
NzI5Li42MTliYjQwODQ5MzhkNmRkYzQxY2NiZTYwMmYxODc4MDkxYmVhYzRhIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tDb250ZXh0TWVudUVsZW1lbnRJ
bmZvUHJpdmF0ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS0Nv
bnRleHRNZW51RWxlbWVudEluZm9Qcml2YXRlLmgKQEAgLTI1LDYgKzI1LDEwIEBACiAKICNpbXBv
cnQgPFdlYktpdC9XS0NvbnRleHRNZW51RWxlbWVudEluZm8uaD4KIAorI2lmIFRBUkdFVF9PU19J
UEhPTkUKKworTlNfQVNTVU1FX05PTk5VTExfQkVHSU4KKwogQGNsYXNzIF9XS0FjdGl2YXRlZEVs
ZW1lbnRJbmZvOwogCiBAaW50ZXJmYWNlIFdLQ29udGV4dE1lbnVFbGVtZW50SW5mbyAoV0tQcml2
YXRlKQpAQCAtMzIsMyArMzYsNyBAQAogQHByb3BlcnR5IChub25hdG9taWMsIGNvcHksIHJlYWRv
bmx5KSBfV0tBY3RpdmF0ZWRFbGVtZW50SW5mbyAqX2FjdGl2YXRlZEVsZW1lbnRJbmZvOwogCiBA
ZW5kCisKK05TX0FTU1VNRV9OT05OVUxMX0VORAorCisjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViS2l0
L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDMxOWYyZTRjNzc4Y2Q0ZDVm
NDNmMDU2MTdmNTMxMzM5YzZhYmI5MGUuLjk5OTJiZmFhM2QzMWE1ZjViY2Q0MTk2NzQ4ZWVlZGVj
MjQxYjYwY2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3Qu
cGJ4cHJvagpAQCAtMjUwLDggKzI1MCw2IEBACiAJCTFBNUU0REE0MTJEM0JEM0QwMDk5QTJCQiAv
KiBUZXh0Q2hlY2tlclN0YXRlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSAxQTVFNERBMzEyRDNCRDNEMDA5OUEyQkIgLyogVGV4dENoZWNrZXJTdGF0ZS5o
ICovOyB9OwogCQkxQTYwMjI0QzE4QzE2QjlGMDBDM0U4QzkgLyogVmlzaXRlZExpbmtTdG9yZU1l
c3NhZ2VSZWNlaXZlci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSAxQTYwMjI0QTE4QzE2QjlGMDBDM0U4QzkgLyogVmlzaXRlZExpbmtTdG9yZU1lc3Nh
Z2VSZWNlaXZlci5jcHAgKi87IH07CiAJCTFBNjAyMjREMThDMTZCOUYwMEMzRThDOSAvKiBWaXNp
dGVkTGlua1N0b3JlTWVzc2FnZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDFBNjAyMjRCMThDMTZCOUYwMEMzRThDOSAvKiBWaXNpdGVkTGlua1N0b3Jl
TWVzc2FnZXMuaCAqLzsgfTsKLQkJMUE2MjgwQzUxOTE5OTQ5RjAwNkFEOUY5IC8qIFdlYktpdC5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUE2MjgwQzQx
OTE5OTQ5RjAwNkFEOUY5IC8qIFdlYktpdC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFB1YmxpYywgKTsgfTsgfTsKLQkJMUE2MjgwQzcxOTE5OTUwQzAwNkFEOUY5IC8qIFdlYktpdFBy
aXZhdGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFB
NjI4MEM2MTkxOTk1MEMwMDZBRDlGOSAvKiBXZWJLaXRQcml2YXRlLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMUE2MjgwRjMxOTE5OTgyQTAwNkFE
OUY5IC8qIFdlYktpdC5tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMUE2MjgwRjIxOTE5OTgyQTAwNkFEOUY5IC8qIFdlYktpdC5tICovOyB9OwogCQkxQTY0
MjBFNTEyRENFMkZGMDBDQUFFMkMgLyogU2hhcmVhYmxlQml0bWFwLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTY0MjBFMzEyRENFMkZGMDBDQUFFMkMg
LyogU2hhcmVhYmxlQml0bWFwLmggKi87IH07CiAJCTFBNjQyMjk5MTJERDAyOTIwMENBQUUyQyAv
KiBEcmF3aW5nQXJlYU1lc3NhZ2VSZWNlaXZlci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTY0MjI5NzEyREQwMjkyMDBDQUFFMkMgLyogRHJhd2lu
Z0FyZWFNZXNzYWdlUmVjZWl2ZXIuY3BwICovOyB9OwpAQCAtMjY2MSw4ICsyNjU5LDggQEAKIAkJ
MUE2MDIyNDkxOEMxNkIwODAwQzNFOEM5IC8qIFZpc2l0ZWRMaW5rU3RvcmUubWVzc2FnZXMuaW4g
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBw
YXRoID0gVmlzaXRlZExpbmtTdG9yZS5tZXNzYWdlcy5pbjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJMUE2MDIyNEExOEMxNkI5RjAwQzNFOEM5IC8qIFZpc2l0ZWRMaW5rU3RvcmVNZXNz
YWdlUmVjZWl2ZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVmlz
aXRlZExpbmtTdG9yZU1lc3NhZ2VSZWNlaXZlci5jcHA7IHBhdGggPSBEZXJpdmVkU291cmNlcy9X
ZWJLaXQyL1Zpc2l0ZWRMaW5rU3RvcmVNZXNzYWdlUmVjZWl2ZXIuY3BwOyBzb3VyY2VUcmVlID0g
QlVJTFRfUFJPRFVDVFNfRElSOyB9OwogCQkxQTYwMjI0QjE4QzE2QjlGMDBDM0U4QzkgLyogVmlz
aXRlZExpbmtTdG9yZU1lc3NhZ2VzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9
IFZpc2l0ZWRMaW5rU3RvcmVNZXNzYWdlcy5oOyBwYXRoID0gRGVyaXZlZFNvdXJjZXMvV2ViS2l0
Mi9WaXNpdGVkTGlua1N0b3JlTWVzc2FnZXMuaDsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RT
X0RJUjsgfTsKLQkJMUE2MjgwQzQxOTE5OTQ5RjAwNkFEOUY5IC8qIFdlYktpdC5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJLaXQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKLQkJMUE2MjgwQzYxOTE5OTUwQzAwNkFEOUY5IC8qIFdlYktpdFByaXZhdGUuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViS2l0UHJpdmF0ZS5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQkxQTYyODBDNDE5MTk5NDlGMDA2QUQ5RjkgLyogV2ViS2l0Lmgu
aW4gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gV2ViS2l0LmguaW47IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTFBNjI4MEM2MTkxOTk1MEMwMDZBRDlGOSAvKiBXZWJLaXRQcml2YXRlLmgu
aW4gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gV2ViS2l0UHJpdmF0ZS5oLmluOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQkxQTYyODBGMjE5MTk5ODJBMDA2QUQ5RjkgLyogV2ViS2l0Lm0g
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMub2JqYzsgcGF0aCA9IFdlYktpdC5tOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQkxQTY0MjBFMjEyRENFMkZGMDBDQUFFMkMgLyogU2hhcmVhYmxl
Qml0bWFwLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNoYXJlYWJs
ZUJpdG1hcC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFBNjQyMEUzMTJEQ0Uy
RkYwMENBQUUyQyAvKiBTaGFyZWFibGVCaXRtYXAuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gU2hhcmVhYmxlQml0bWFwLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBA
IC04MTk2LDkgKzgxOTQsOSBAQAogCQkJCTFBQzEzMzgxMTg1OTBCMDUwMEYzRUMwNSAvKiBSZW1v
dGVPYmplY3RSZWdpc3RyeS5tZXNzYWdlcy5pbiAqLywKIAkJCQkxQUMxMzM3RDE4NTkwQUU0MDBG
M0VDMDUgLyogUmVtb3RlT2JqZWN0UmVnaXN0cnkubW0gKi8sCiAJCQkJMUE4NUU0NzAxRTMwM0Yy
NDAwOTE0NTk5IC8qIFdlYktpdC5hcGlub3RlcyAqLywKLQkJCQkxQTYyODBDNDE5MTk5NDlGMDA2
QUQ5RjkgLyogV2ViS2l0LmggKi8sCisJCQkJMUE2MjgwQzQxOTE5OTQ5RjAwNkFEOUY5IC8qIFdl
YktpdC5oLmluICovLAogCQkJCTFBNjI4MEYyMTkxOTk4MkEwMDZBRDlGOSAvKiBXZWJLaXQubSAq
LywKLQkJCQkxQTYyODBDNjE5MTk5NTBDMDA2QUQ5RjkgLyogV2ViS2l0UHJpdmF0ZS5oICovLAor
CQkJCTFBNjI4MEM2MTkxOTk1MEMwMDZBRDlGOSAvKiBXZWJLaXRQcml2YXRlLmguaW4gKi8sCiAJ
CQkJMUFFMDBENEIxODJENkVCMDAwMDg3REQ3IC8qIFdLQnJvd3NpbmdDb250ZXh0SGFuZGxlLmgg
Ki8sCiAJCQkJMUFFMDBENEExODJENkVCMDAwMDg3REQ3IC8qIFdLQnJvd3NpbmdDb250ZXh0SGFu
ZGxlLm1tICovLAogCQkJCTFBRTAwRDRFMTgyRDZGNTAwMDA4N0RENyAvKiBXS0Jyb3dzaW5nQ29u
dGV4dEhhbmRsZUludGVybmFsLmggKi8sCkBAIC0xMjI3NCwxMCArMTIyNzIsOCBAQAogCQkJCUE1
NUJBODJCMUJBMzhFNjEwMDdDRDMzRCAvKiBXZWJJbnNwZWN0b3JVdGlsaXRpZXMuaCBpbiBIZWFk
ZXJzICovLAogCQkJCTJEQTk0NEEwMTg4NEU0RjAwMEVEODZEQiAvKiBXZWJJT1NFdmVudEZhY3Rv
cnkuaCBpbiBIZWFkZXJzICovLAogCQkJCTFBODVFNDcyMUUzMDNGMzcwMDkxNDU5OSAvKiBXZWJL
aXQuYXBpbm90ZXMgaW4gSGVhZGVycyAqLywKLQkJCQkxQTYyODBDNTE5MTk5NDlGMDA2QUQ5Rjkg
LyogV2ViS2l0LmggaW4gSGVhZGVycyAqLywKIAkJCQlCQ0I2MzQ3ODExNkJGMTA2MDA2MDMyMTUg
LyogV2ViS2l0Ml9DLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzlCQTUwNTE2OTdDNDUzMDBFNDQ2
MTYgLyogV2ViS2l0MkluaXRpYWxpemUuaCBpbiBIZWFkZXJzICovLAotCQkJCTFBNjI4MEM3MTkx
OTk1MEMwMDZBRDlGOSAvKiBXZWJLaXRQcml2YXRlLmggaW4gSGVhZGVycyAqLywKIAkJCQlDRDAw
M0E1MzE5RDQ5QjVEMDA1QUJDRTAgLyogV2ViTWVkaWFLZXlTdG9yYWdlTWFuYWdlci5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJOUFDQzA3QjcyNUM4MUQzNDAwREM2Mzg2IC8qIFdlYk1lZGlhS2V5U3lz
dGVtQ2xpZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQk5QjVCRUMyNjI0MDBGNEE5MDA3MEM2RUYg
LyogV2ViTWVkaWFTdHJhdGVneS5oIGluIEhlYWRlcnMgKi8sCkBAIC0xMjkyNCw2ICsxMjkyMCw3
IEBACiAJCQkJMUE2MjgwQzgxOTE5OTU2QjAwNkFEOUY5IC8qIE1pZ3JhdGUgV2ViS2l0TGVnYWN5
IEhlYWRlcnMgKi8sCiAJCQkJMzc1QTI0ODgxN0U1MDQ4RTAwQzlBMDg2IC8qIFBvc3Rwcm9jZXNz
IFdLQmFzZS5oICovLAogCQkJCTFBRDk4RUNGMTkxRDg2NzMwMENBQTZERiAvKiBQb3N0cHJvY2Vz
cyBXS0ZvdW5kYXRpb24uaCAqLywKKwkJCQkzMUQ2MkI2NDI1RTVBMjk4MDAxMzUwODkgLyogR2Vu
ZXJhdGUgVW1icmVsbGEgSGVhZGVycyAqLywKIAkJCQlGNEVGQkFENTIyNTQwQ0JCMDAwNDlCQTYg
LyogUmVwbGFjZSBXZWJLaXRBZGRpdGlvbnMgaW4gRnJhbWV3b3JrIEhlYWRlcnMgKi8sCiAJCQkJ
MUExRDIxMTUxOTFEOTYzODAwMDE2MTlGIC8qIFBvc3Rwcm9jZXNzIEZyYW1ld29yayBIZWFkZXJz
ICovLAogCQkJCTJFMTZCNkY0MjAxOUJDMjUwMDg5OTZENiAvKiBDb3B5IEFkZGl0aW9uYWwgUmVz
b3VyY2VzICovLApAQCAtMTMzMzksNiArMTMzMzYsMzIgQEAKIAkJCXNoZWxsUGF0aCA9IC9iaW4v
c2g7CiAJCQlzaGVsbFNjcmlwdCA9ICJzZXQgLWVcblxuUkVMQVRJVkVfU09VUkNFX1BBVEg9XCJ1
c3IvbG9jYWwvaW5jbHVkZS9XZWJLaXRBZGRpdGlvbnMvV2ViS2l0L0FkZGl0aW9uYWxSZXNvdXJj
ZXNcIlxuU09VUkNFX1BBVEg9XCIkQlVJTFRfUFJPRFVDVFNfRElSLyRSRUxBVElWRV9TT1VSQ0Vf
UEFUSFwiXG5cbmlmIFtbICEgLWQgXCIkU09VUkNFX1BBVEhcIiBdXTsgdGhlblxuICAgIFNPVVJD
RV9QQVRIPVwiJFNES19ESVIvJFJFTEFUSVZFX1NPVVJDRV9QQVRIXCJcbmZpXG5cbmlmIFtbIC1k
IFwiJFNPVVJDRV9QQVRIXCIgXV07IHRoZW5cbiAgICBkaXR0byAkU09VUkNFX1BBVEggXCIkQlVJ
TFRfUFJPRFVDVFNfRElSLyRVTkxPQ0FMSVpFRF9SRVNPVVJDRVNfRk9MREVSX1BBVEhcIlxuZmlc
biI7CiAJCX07CisJCTMxRDYyQjY0MjVFNUEyOTgwMDEzNTA4OSAvKiBHZW5lcmF0ZSBVbWJyZWxs
YSBIZWFkZXJzICovID0geworCQkJaXNhID0gUEJYU2hlbGxTY3JpcHRCdWlsZFBoYXNlOworCQkJ
YnVpbGRBY3Rpb25NYXNrID0gMjE0NzQ4MzY0NzsKKwkJCWZpbGVzID0gKAorCQkJKTsKKwkJCWlu
cHV0RmlsZUxpc3RQYXRocyA9ICgKKwkJCSk7CisJCQlpbnB1dFBhdGhzID0gKAorCQkJCSIkKFNS
Q1JPT1QpL1NjcmlwdHMvZ2VuZXJhdGUtdW1icmVsbGEtaGVhZGVycy5weSIsCisJCQkJIiQoU1JD
Uk9PVCkvU2hhcmVkL0FQSS9Db2NvYS9XZWJLaXRQcml2YXRlLmguaW4iLAorCQkJCSIkKFNSQ1JP
T1QpLyQoTU9EVUxFTUFQX1BSSVZBVEVfRklMRSkiLAorCQkJCSIkKFBST0pFQ1RfRklMRV9QQVRI
KS9wcm9qZWN0LnBieHByb2oiLAorCQkJCSIkKFNSQ1JPT1QpL1NoYXJlZC9BUEkvQ29jb2EvV2Vi
S2l0LmguaW4iLAorCQkJCSIkKFNSQ1JPT1QpLyQoTU9EVUxFTUFQX0ZJTEUpIiwKKwkJCSk7CisJ
CQluYW1lID0gIkdlbmVyYXRlIFVtYnJlbGxhIEhlYWRlcnMiOworCQkJb3V0cHV0RmlsZUxpc3RQ
YXRocyA9ICgKKwkJCSk7CisJCQlvdXRwdXRQYXRocyA9ICgKKwkJCQkiJChCVUlMVF9QUk9EVUNU
U19ESVIpLyQoUFJJVkFURV9IRUFERVJTX0ZPTERFUl9QQVRIKS9XZWJLaXRQcml2YXRlLmgiLAor
CQkJCSIkKEJVSUxEX1BST0RVQ1RTX0RJUikvJChIRUFERVJTX0ZPTERFUl9QQVRIKS9XZWJLaXQu
aCIsCisJCQkpOworCQkJcnVuT25seUZvckRlcGxveW1lbnRQb3N0cHJvY2Vzc2luZyA9IDA7CisJ
CQlzaGVsbFBhdGggPSAvYmluL3NoOworCQkJc2hlbGxTY3JpcHQgPSAiXCIke1NSQ1JPT1R9L1Nj
cmlwdHMvZ2VuZXJhdGUtdW1icmVsbGEtaGVhZGVyLnB5XCIgLS1pbnB1dCBcIiR7U1JDUk9PVH0v
U2hhcmVkL0FQSS9Db2NvYS9XZWJLaXRQcml2YXRlLmguaW5cIiAtLW91dHB1dCBcIiR7QlVJTFRf
UFJPRFVDVFNfRElSfS8ke1BSSVZBVEVfSEVBREVSU19GT0xERVJfUEFUSH0vV2ViS2l0UHJpdmF0
ZS5oXCIgLS10ZW1wb3V0cHV0IFwiJHtUQVJHRVRfVEVNUF9ESVJ9L1dlYktpdFByaXZhdGUuaFwi
IC0taGVhZGVycyBcIiR7QlVJTFRfUFJPRFVDVFNfRElSfS8ke1BSSVZBVEVfSEVBREVSU19GT0xE
RVJfUEFUSH1cIiAtLWZyYW1ld29yayBcIiR7UFJPRFVDVF9NT0RVTEVfTkFNRX1cIiAtLW1vZHVs
ZW1hcCBcIiR7U1JDUk9PVH0vJHtNT0RVTEVNQVBfUFJJVkFURV9GSUxFfVwiXG5cIiR7U1JDUk9P
VH0vU2NyaXB0cy9nZW5lcmF0ZS11bWJyZWxsYS1oZWFkZXIucHlcIiAtLWlucHV0IFwiJHtTUkNS
T09UfS9TaGFyZWQvQVBJL0NvY29hL1dlYktpdC5oLmluXCIgLS1vdXRwdXQgXCIke0JVSUxUX1BS
T0RVQ1RTX0RJUn0vJHtQVUJMSUNfSEVBREVSU19GT0xERVJfUEFUSH0vV2ViS2l0LmhcIiAtLXRl
bXBvdXRwdXQgXCIke1RBUkdFVF9URU1QX0RJUn0vV2ViS2l0LmhcIiAtLWhlYWRlcnMgXCIke0JV
SUxUX1BST0RVQ1RTX0RJUn0vJHtQVUJMSUNfSEVBREVSU19GT0xERVJfUEFUSH1cIiAtLWZyYW1l
d29yayBcIiR7UFJPRFVDVF9NT0RVTEVfTkFNRX1cIiAtLW1vZHVsZW1hcCBcIiR7U1JDUk9PVH0v
JHtNT0RVTEVNQVBfRklMRX1cIlxuIjsKKwkJfTsKIAkJMzcxM0YwMjMxNDI5MDYzRDAwMzYzODdG
IC8qIENoZWNrIEZvciBJbmFwcHJvcHJpYXRlIE9iamVjdGl2ZS1DIENsYXNzIE5hbWVzICovID0g
ewogCQkJaXNhID0gUEJYU2hlbGxTY3JpcHRCdWlsZFBoYXNlOwogCQkJYnVpbGRBY3Rpb25NYXNr
ID0gMjE0NzQ4MzY0NzsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvV2ViS2l0TGVn
YWN5Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L1dlYktp
dExlZ2FjeS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDdlMWM1MGJkMzdmMGRmMzFh
NjI5NjU3NTA3NzBlYzUxODY0ZmU4OTUuLjlhZTg3OTFmNTUzZmEwMmUzMzBiMmU1YWM3MTY2NjBh
NDY2MTg4ZWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvV2ViS2l0TGVnYWN5Lnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9XZWJLaXRM
ZWdhY3kueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtNjg3LDcgKzY4Nyw3IEBACiAJCURE
ODk2ODIwMDlBQTg3MjQwMDk3RTdGMCAvKiBXZWJFbGVtZW50RGljdGlvbmFyeS5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREQ4OTY4MUUwOUFBODcyNDAw
OTdFN0YwIC8qIFdlYkVsZW1lbnREaWN0aW9uYXJ5LmggKi87IH07CiAJCUREODk2ODIxMDlBQTg3
MjQwMDk3RTdGMCAvKiBXZWJFbGVtZW50RGljdGlvbmFyeS5tbSBpbiBTb3VyY2VzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEREODk2ODFGMDlBQTg3MjQwMDk3RTdGMCAvKiBX
ZWJFbGVtZW50RGljdGlvbmFyeS5tbSAqLzsgfTsKIAkJRTEzRTc4MkMxRTVBNzM2NTAwMTg0OUQx
IC8qIFdlYkNyZWF0ZUZyYWdtZW50SW50ZXJuYWwuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxM0U3ODJCMUU1QTczNjUwMDE4NDlEMSAvKiBXZWJDcmVh
dGVGcmFnbWVudEludGVybmFsLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKLQkJRTE1MzFCRDgyMTg3Qjk1NDAwMkUzRjgxIC8qIE5TVVJMRG93bmxvYWRT
UEkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxNTMx
QkQ3MjE4N0I4RjIwMDJFM0Y4MSAvKiBOU1VSTERvd25sb2FkU1BJLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJRTE1MzFCRDgyMTg3Qjk1NDAwMkUz
RjgxIC8qIE5TVVJMRG93bmxvYWRTUEkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEUxNTMxQkQ3MjE4N0I4RjIwMDJFM0Y4MSAvKiBOU1VSTERvd25sb2Fk
U1BJLmggKi87IH07CiAJCUUxNTY2MzE5MEZCNjFDMUYwMEMxOTlDQSAvKiBXZWJEb3dubG9hZC5t
bSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxNTY2MzE4
MEZCNjFDMUYwMEMxOTlDQSAvKiBXZWJEb3dubG9hZC5tbSAqLzsgfTsKIAkJRTE2OTgzNjIxMTM0
NkQxQjAwODk0MTE1IC8qIFByb3h5UnVudGltZU9iamVjdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTE2OTgzNjExMTM0NkQxQjAwODk0MTE1IC8qIFBy
b3h5UnVudGltZU9iamVjdC5oICovOyB9OwogCQlFMTY5ODM2QzExMzQ2RDU2MDA4OTQxMTUgLyog
UHJveHlSdW50aW1lT2JqZWN0Lm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gRTE2OTgzNkIxMTM0NkQ1NjAwODk0MTE1IC8qIFByb3h5UnVudGltZU9iamVj
dC5tbSAqLzsgfTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>421677</attachid>
            <date>2021-02-26 10:58:43 -0800</date>
            <delta_ts>2021-12-12 08:44:08 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-203059-20210227055841.patch</filename>
            <type>text/plain</type>
            <size>30678</size>
            <attacher name="Dean Jackson">dino</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjczMzE2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDMzNTczMmVlYzg2MmZiYjM3
YzZjOGE5ZmZkZDYzMzRhMjUyZmExYzYuLjhjZjgxODZjZmJhNDNlMGU2MGNmNDEyNTc0Yjc4ZjJi
ZWQ0OTkwNWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzcgQEAKKzIwMjEtMDItMjYgIERlYW4gSmFj
a3NvbiAgPGRpbm9AYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBTd2lmdCBtb2R1bGVtYXAgZm9y
IFdlYktpdCBQcml2YXRlIEFQSXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTIwMzA1OQorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNTYzNTAyOTA+CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUHJvdmlkZSBh
IFN3aWZ0IG1vZHVsZW1hcCBmb3IgV2ViS2l0X1ByaXZhdGUsIGFuZAorICAgICAgICBlbnN1cmUg
dGhhdCBhbGwgUHJpdmF0ZUhlYWRlcnMgYXJlIGluY2x1ZGVkIGluIG91ciB1bWJyZWxsYQorICAg
ICAgICBoZWFkZXIgKGJlY2F1c2Ugd2UgZG9uJ3Qga25vdyB3aG8gaXMgaW5jbHVkaW5nIHRoZSB2
YXJpb3VzCisgICAgICAgIGZpbGVzKS4KKworICAgICAgICBVc2VkIHRoZSBzYW1lIGFwcHJvYWNo
IHRvIGdlbmVyYXRlZCB0aGUgcHVibGljIHVtYnJlbGxhIGhlYWRlci4KKyAgICAgICAgSW4gYm90
aCBjYXNlcyB0aGlzIGhhcyBhZGRlZCBhIGxvdCBvZiBleHRyYSBpbXBvcnQgc3RhdGVtZW50cywK
KyAgICAgICAgYnV0IGhvcGVmdWxseSB0aGF0IGlzIG9rLgorCisgICAgICAgIFJlbmFtZWQgT1NY
Lm1vZHVsZW1hcCB0byBtYWNPUy5tb2R1bGVtYXAgd2hpbGUgaGVyZS4KKworICAgICAgICAqIENv
bmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWc6CisgICAgICAgICogQ29uZmlndXJhdGlvbnMvV2Vi
S2l0LnhjY29uZmlnOgorICAgICAgICAqIE1vZHVsZXMvaU9TLnByaXZhdGUubW9kdWxlbWFwOiBB
ZGRlZC4KKyAgICAgICAgKiBNb2R1bGVzL21hY09TLm1vZHVsZW1hcDogUmVuYW1lZCBmcm9tIFNv
dXJjZS9XZWJLaXQvTW9kdWxlcy9PU1gubW9kdWxlbWFwLgorICAgICAgICAqIE1vZHVsZXMvbWFj
T1MucHJpdmF0ZS5tb2R1bGVtYXA6IEFkZGVkLgorICAgICAgICAqIFNjcmlwdHMvZ2VuZXJhdGUt
dW1icmVsbGEtaGVhZGVyLnB5OiBBZGRlZC4gR2VuZXJhdGVzIHRoZSB1bWJyZWxsYSBoZWFkZXIg
ZmlsZS4KKyAgICAgICAgKGdlbmVyYXRlX3VtYnJlbGxhX2hlYWRlcik6CisgICAgICAgICogU2hh
cmVkL0FQSS9Db2NvYS9XZWJLaXQuaCAtPiBXZWJLaXQuaC5pbjogUmVuYW1lZCBzaW5jZSBpdCBp
cyBpbnB1dCB0byBhIGdlbmVyYXRlZCBmaWxlLgorICAgICAgICAqIFNoYXJlZC9BUEkvQ29jb2Ev
V2ViS2l0UHJpdmF0ZS5oIC0+IFdlYktpdFByaXZhdGUuaC5pbjogRGl0dG8uCisgICAgICAgICog
V2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogV2ViS2l0Lnhjb2Rl
cHJvai94Y3NoYXJlZGRhdGEveGNzY2hlbWVzL1dlYktpdC54Y3NjaGVtZToKKyAgICAgICAgKiBT
aGFyZWQvQVBJL2MvV0tJbW1lZGlhdGVBY3Rpb25UeXBlcy5oOiBSZW1vdmUgdW51c2VkICNkZWZp
bmUgdGhhdCB3YXMgY2xhc2hpbmcgd2l0aCB0aGUgdHlwZSB0aGF0CisgICAgICAgIGhhZCBiZWVu
IGRlZmluZWQgZWxzZXdoZXJlLgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2EvV0tDb250
ZXh0TWVudUVsZW1lbnRJbmZvUHJpdmF0ZS5oOiBHdWFyZCB0aGlzIGZvciBpT1MuCisKIDIwMjEt
MDItMjMgIEtpbW1vIEtpbm51bmVuICA8a2tpbm51bmVuQGFwcGxlLmNvbT4KIAogICAgICAgICBS
RUdSRVNTSU9OKHIyNzMyMDQpOiB3ZWJraXRweSB0ZXN0cyBmYWlsCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0TGVnYWN5L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvQ2hhbmdlTG9n
CmluZGV4IDA2NGQxOWJlOGYzYzY3NTMxNjU4Y2MxODViODU2ZjQ2ZWIzYTZhODEuLjA3ZWU3MGQ4
Y2IzYWIwMzE4MTdiNWFkYjQ0YzEzYWMzMWQ5YTMwNjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXRMZWdhY3kvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTYgQEAKKzIwMjEtMDItMjYgIERlYW4gSmFja3NvbiAgPGRpbm9AYXBwbGUuY29t
PgorCisgICAgICAgIEFkZCBTd2lmdCBtb2R1bGVtYXAgZm9yIFdlYktpdCBQcml2YXRlIEFQSXMK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwMzA1OQor
ICAgICAgICA8cmRhcjovL3Byb2JsZW0vNTYzNTAyOTA+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgR3VhcmQgTlNVUkxEb3dubG9hZFNQSS5oIGZyb20g
cmVkZWZpbmluZyBOU1VSTERvd25sb2FkCisgICAgICAgIHdoZW4gaXQgZG9lc24ndCBuZWVkIHRv
LgorCisgICAgICAgICogL21hYy9NaXNjL05TVVJMRG93bmxvYWRTUEkuaDoKKwogMjAyMS0wMi0w
OCAgQ29tbWl0IFF1ZXVlICA8Y29tbWl0LXF1ZXVlQHdlYmtpdC5vcmc+CiAKICAgICAgICAgVW5y
ZXZpZXdlZCwgcmV2ZXJ0aW5nIHIyNzI0ODAsIHIyNzI0ODEsIGFuZCByMjcyNTAwLgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9Db25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnIGIvU291cmNl
L1dlYktpdC9Db25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnCmluZGV4IGUyODI5ODRmNGY0NDBm
ZTZlNzEzNTEwNDdhYTdkZTk0OGQ4MWFmZTAuLmZhZDNlZmNiYTJjNWI4YjhhYTU0M2YzMDZjNTdh
MWQ4OWY1ZTY4OTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ29uZmlndXJhdGlvbnMvQmFz
ZS54Y2NvbmZpZworKysgYi9Tb3VyY2UvV2ViS2l0L0NvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25m
aWcKQEAgLTM0LDYgKzM0LDcgQEAgQUxXQVlTX1NFQVJDSF9VU0VSX1BBVEhTID0gTk87CiBDTEFO
R19DWFhfTEFOR1VBR0VfU1RBTkRBUkQgPSBnbnUrKzF6OwogQ0xBTkdfQ1hYX0xJQlJBUlkgPSBs
aWJjKys7CiBDTEFOR19FTkFCTEVfT0JKQ19XRUFLID0gWUVTOworQ0xBTkdfTU9EVUxFU19FTkFC
TEVfVkVSSUZJRVJfVE9PTCA9IFlFUzsKIENMQU5HX1dBUk5fQkxPQ0tfQ0FQVFVSRV9BVVRPUkVM
RUFTSU5HID0gWUVTOwogQ0xBTkdfV0FSTl9CT09MX0NPTlZFUlNJT04gPSBZRVM7CiBDTEFOR19X
QVJOX0NPTU1BID0gWUVTOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9Db25maWd1cmF0aW9u
cy9XZWJLaXQueGNjb25maWcgYi9Tb3VyY2UvV2ViS2l0L0NvbmZpZ3VyYXRpb25zL1dlYktpdC54
Y2NvbmZpZwppbmRleCAxMTNmMTAxMTc3MzMyMTI4YTE1NjY1MmQ3ZjNhNjcwMjk1ZDQxODgyLi5k
OTMyY2JmNTE2NmRhZDY0ZGFmNzE4OWRlNGJmNjM3ZDBkYmUwNDMxIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L0NvbmZpZ3VyYXRpb25zL1dlYktpdC54Y2NvbmZpZworKysgYi9Tb3VyY2UvV2Vi
S2l0L0NvbmZpZ3VyYXRpb25zL1dlYktpdC54Y2NvbmZpZwpAQCAtMzEsNyArMzEsMTAgQEAgSU5G
T1BMSVNUX0ZJTEUgPSBJbmZvLnBsaXN0OwogREVGSU5FU19NT0RVTEUgPSBZRVM7CiBNT0RVTEVN
QVBfRklMRSA9ICQoTU9EVUxFTUFQX0ZJTEVfJChXS19DT0NPQV9UT1VDSCkpOwogTU9EVUxFTUFQ
X0ZJTEVfY29jb2F0b3VjaCA9IE1vZHVsZXMvaU9TLm1vZHVsZW1hcDsKLU1PRFVMRU1BUF9GSUxF
XyA9IE1vZHVsZXMvT1NYLm1vZHVsZW1hcDsKK01PRFVMRU1BUF9GSUxFXyA9IE1vZHVsZXMvbWFj
T1MubW9kdWxlbWFwOworTU9EVUxFTUFQX1BSSVZBVEVfRklMRSA9ICQoTU9EVUxFTUFQX1BSSVZB
VEVfRklMRV8kKFdLX0NPQ09BX1RPVUNIKSk7CitNT0RVTEVNQVBfUFJJVkFURV9GSUxFX2NvY29h
dG91Y2ggPSBNb2R1bGVzL2lPUy5wcml2YXRlLm1vZHVsZW1hcDsKK01PRFVMRU1BUF9QUklWQVRF
X0ZJTEVfID0gTW9kdWxlcy9tYWNPUy5wcml2YXRlLm1vZHVsZW1hcDsKIAogSU5TVEFMTF9QQVRI
ID0gJChXRUJLSVRfRlJBTUVXT1JLU19ESVIpOwogRFlMSUJfSU5TVEFMTF9OQU1FX0JBU0UgPSAk
KERZTElCX0lOU1RBTExfTkFNRV9CQVNFXyQoV0tfVVNFX0FMVEVSTkFURV9GUkFNRVdPUktTX0RJ
UikpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9Nb2R1bGVzL09TWC5tb2R1bGVtYXAgYi9T
b3VyY2UvV2ViS2l0L01vZHVsZXMvT1NYLm1vZHVsZW1hcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggODljYTA3NGY0NzgyOGM3MzY0YTFkMWZkYTA5OGY0N2VmOTdmNDBmOC4uMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViS2l0L01v
ZHVsZXMvT1NYLm1vZHVsZW1hcAorKysgL2Rldi9udWxsCkBAIC0xLDE4ICswLDAgQEAKLWZyYW1l
d29yayBtb2R1bGUgV2ViS2l0IFtzeXN0ZW1dIFtleHRlcm5fY10gewotICB1bWJyZWxsYSBoZWFk
ZXIgIldlYktpdC5oIgotICBtb2R1bGUgKiB7IGV4cG9ydCAqIH0KLSAgZXhwb3J0ICoKLSAgCi0g
IGV4cGxpY2l0IG1vZHVsZSBOUEFQSSB7Ci0gICAgaGVhZGVyICJucHR5cGVzLmgiCi0gICAgaGVh
ZGVyICJucGFwaS5oIgotICAgIGhlYWRlciAibnBmdW5jdGlvbnMuaCIKLSAgICBoZWFkZXIgIm5w
cnVudGltZS5oIgotICAgIGV4cG9ydCAqCi0gIH0KLQotICBleHBsaWNpdCBtb2R1bGUgRE9NUHJv
Z3Jlc3NFdmVudCB7Ci0gICAgaGVhZGVyICJET01Qcm9ncmVzc0V2ZW50LmgiCi0gICAgZXhwb3J0
ICoKLSAgfQotfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9Nb2R1bGVzL2lPUy5wcml2YXRl
Lm1vZHVsZW1hcCBiL1NvdXJjZS9XZWJLaXQvTW9kdWxlcy9pT1MucHJpdmF0ZS5tb2R1bGVtYXAK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uMDJkODJlOWE3NDUxZWY0MmYwOGM4ZjBiYmMzMzhmMzFmMDU1OWI2NgotLS0g
L2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvTW9kdWxlcy9pT1MucHJpdmF0ZS5tb2R1bGVt
YXAKQEAgLTAsMCArMSw1IEBACitmcmFtZXdvcmsgbW9kdWxlIFdlYktpdF9Qcml2YXRlIFtzeXN0
ZW1dIFtleHRlcm5fY10geworICB1bWJyZWxsYSBoZWFkZXIgIldlYktpdFByaXZhdGUuaCIKKyAg
bW9kdWxlICogeyBleHBvcnQgKiB9CisgIGV4cG9ydCAqCit9CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L01vZHVsZXMvbWFjT1MubW9kdWxlbWFwIGIvU291cmNlL1dlYktpdC9Nb2R1bGVzL21h
Y09TLm1vZHVsZW1hcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44OWNhMDc0ZjQ3ODI4YzczNjRhMWQxZmRhMDk4ZjQ3
ZWY5N2Y0MGY4Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9Nb2R1bGVzL21hY09T
Lm1vZHVsZW1hcApAQCAtMCwwICsxLDE4IEBACitmcmFtZXdvcmsgbW9kdWxlIFdlYktpdCBbc3lz
dGVtXSBbZXh0ZXJuX2NdIHsKKyAgdW1icmVsbGEgaGVhZGVyICJXZWJLaXQuaCIKKyAgbW9kdWxl
ICogeyBleHBvcnQgKiB9CisgIGV4cG9ydCAqCisgIAorICBleHBsaWNpdCBtb2R1bGUgTlBBUEkg
eworICAgIGhlYWRlciAibnB0eXBlcy5oIgorICAgIGhlYWRlciAibnBhcGkuaCIKKyAgICBoZWFk
ZXIgIm5wZnVuY3Rpb25zLmgiCisgICAgaGVhZGVyICJucHJ1bnRpbWUuaCIKKyAgICBleHBvcnQg
KgorICB9CisKKyAgZXhwbGljaXQgbW9kdWxlIERPTVByb2dyZXNzRXZlbnQgeworICAgIGhlYWRl
ciAiRE9NUHJvZ3Jlc3NFdmVudC5oIgorICAgIGV4cG9ydCAqCisgIH0KK30KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvTW9kdWxlcy9tYWNPUy5wcml2YXRlLm1vZHVsZW1hcCBiL1NvdXJjZS9X
ZWJLaXQvTW9kdWxlcy9tYWNPUy5wcml2YXRlLm1vZHVsZW1hcApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wMmQ4MmU5
YTc0NTFlZjQyZjA4YzhmMGJiYzMzOGYzMWYwNTU5YjY2Ci0tLSAvZGV2L251bGwKKysrIGIvU291
cmNlL1dlYktpdC9Nb2R1bGVzL21hY09TLnByaXZhdGUubW9kdWxlbWFwCkBAIC0wLDAgKzEsNSBA
QAorZnJhbWV3b3JrIG1vZHVsZSBXZWJLaXRfUHJpdmF0ZSBbc3lzdGVtXSBbZXh0ZXJuX2NdIHsK
KyAgdW1icmVsbGEgaGVhZGVyICJXZWJLaXRQcml2YXRlLmgiCisgIG1vZHVsZSAqIHsgZXhwb3J0
ICogfQorICBleHBvcnQgKgorfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TY3JpcHRzL2dl
bmVyYXRlLXVtYnJlbGxhLWhlYWRlci5weSBiL1NvdXJjZS9XZWJLaXQvU2NyaXB0cy9nZW5lcmF0
ZS11bWJyZWxsYS1oZWFkZXIucHkKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNTZjNmE3OTBjYmMwNjViOGVlMzdhZWJh
NjA0OTQxYmEzYWEwYmVkZQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvU2NyaXB0
cy9nZW5lcmF0ZS11bWJyZWxsYS1oZWFkZXIucHkKQEAgLTAsMCArMSw5MiBAQAorIyEvdXNyL2Jp
bi9lbnYgcHl0aG9uMworIworIyBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmln
aHRzIHJlc2VydmVkLgorIworIyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQg
YmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyMgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisjIGFyZSBtZXQ6Cisj
IDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
IGNvcHlyaWdodAorIyAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyLgorIyAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyMgICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUK
KyMgICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRo
IHRoZSBkaXN0cmlidXRpb24uCisjCisjIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQ
TEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECisjIEFOWSBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRI
RSBJTVBMSUVECisjIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyMgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hB
TEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IKKyMgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VR
VUVOVElBTAorIyBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VS
RU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUgorIyBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERB
VEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUgorIyBDQVVT
RUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLAorIyBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhF
UldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorIyBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgor
CitpbXBvcnQgZmlsZWNtcAoraW1wb3J0IG9zCitpbXBvcnQgcmUKKworCitkZWYgZ2VuZXJhdGVf
dW1icmVsbGFfaGVhZGVyKGlucHV0X2ZpbGVuYW1lLCBvdXRwdXRfZmlsZW5hbWUsIHRlbXBvdXRw
dXRfZmlsZW5hbWUsIGhlYWRlcl9kaXJuYW1lLCBmcmFtZXdvcmtfbmFtZSwgbW9kdWxlbWFwX2Zp
bGVuYW1lKToKKyAgICBpbmNsdWRlX3BhdHRlcm4gPSByZS5jb21waWxlKHIiXCMoaW5jbHVkZXxp
bXBvcnQpXHMrXDwiICsgZnJhbWV3b3JrX25hbWUgKyByIlwvKC4qKVw+IikKKyAgICBleGNsdWRl
X3BhdHRlcm4gPSByZS5jb21waWxlKHInXHMqZXhjbHVkZVxzK2hlYWRlclxzKyIoLiopIicpCisK
KyAgICBleGlzdGluZ19mcmFtZXdvcmtfaGVhZGVycyA9IHNldCgpCisgICAgb3V0cHV0X2hlYWRl
cnMgPSBbXQorICAgIGJsb2NrbGlzdCA9IHsKKyAgICAgICAgIiVzUHJpdmF0ZS5oIiAlIGZyYW1l
d29ya19uYW1lLAorICAgICAgICAiJXMuaCIgJSBmcmFtZXdvcmtfbmFtZSwKKyAgICB9CisKKyAg
ICB3aXRoIG9wZW4obW9kdWxlbWFwX2ZpbGVuYW1lLCAiciIpIGFzIG1vZHVsZW1hcF9maWxlOgor
ICAgICAgICBmb3IgbGluZSBpbiBtb2R1bGVtYXBfZmlsZToKKyAgICAgICAgICAgIG1hdGNoID0g
ZXhjbHVkZV9wYXR0ZXJuLnNlYXJjaChsaW5lKQorICAgICAgICAgICAgaWYgbWF0Y2g6CisgICAg
ICAgICAgICAgICAgZXhpc3RpbmdfZnJhbWV3b3JrX2hlYWRlcnMuYWRkKG1hdGNoLmdyb3VwKDEp
KQorCisgICAgd2l0aCBvcGVuKHRlbXBvdXRwdXRfZmlsZW5hbWUgb3Igb3V0cHV0X2ZpbGVuYW1l
LCAidysiKSBhcyBvdXRwdXRfZmlsZToKKyAgICAgICAgd2l0aCBvcGVuKGlucHV0X2ZpbGVuYW1l
LCAiciIpIGFzIGlucHV0X2ZpbGU6CisgICAgICAgICAgICBmb3IgbGluZSBpbiBpbnB1dF9maWxl
OgorICAgICAgICAgICAgICAgIG1hdGNoID0gaW5jbHVkZV9wYXR0ZXJuLnNlYXJjaChsaW5lKQor
ICAgICAgICAgICAgICAgIGlmIG1hdGNoOgorICAgICAgICAgICAgICAgICAgICBleGlzdGluZ19m
cmFtZXdvcmtfaGVhZGVycy5hZGQobWF0Y2guZ3JvdXAoMikpCisKKyAgICAgICAgICAgICAgICBv
dXRwdXRfZmlsZS53cml0ZShsaW5lKQorCisgICAgICAgIGZvciAoZGlycGF0aCwgZGlybmFtZXMs
IGZpbGVuYW1lcykgaW4gb3Mud2FsayhoZWFkZXJfZGlybmFtZSk6CisgICAgICAgICAgICBmb3Ig
ZmlsZSBpbiBmaWxlbmFtZXM6CisgICAgICAgICAgICAgICAgcGF0aCA9IG9zLnBhdGgucmVscGF0
aChvcy5wYXRoLmpvaW4oZGlycGF0aCwgZmlsZSksIHN0YXJ0PWhlYWRlcl9kaXJuYW1lKQorCisg
ICAgICAgICAgICAgICAgaWYgcGF0aCBpbiBibG9ja2xpc3Qgb3IgcGF0aCBpbiBleGlzdGluZ19m
cmFtZXdvcmtfaGVhZGVycyBvciBub3QgcGF0aC5lbmRzd2l0aCgiLmgiKToKKyAgICAgICAgICAg
ICAgICAgICAgY29udGludWUKKworICAgICAgICAgICAgICAgIG91dHB1dF9oZWFkZXJzLmFwcGVu
ZChwYXRoKQorCisgICAgICAgIG91dHB1dF9oZWFkZXJzLnNvcnQoKQorICAgICAgICBvdXRwdXRf
ZmlsZS53cml0ZSgiXG5cbiIpCisKKyAgICAgICAgZm9yIG91dHB1dF9oZWFkZXIgaW4gb3V0cHV0
X2hlYWRlcnM6CisgICAgICAgICAgICBvdXRwdXRfZmlsZS53cml0ZSgiI2ltcG9ydCA8JXMvJXM+
XG4iICUgKGZyYW1ld29ya19uYW1lLCBvdXRwdXRfaGVhZGVyKSkKKworICAgIGlmIHRlbXBvdXRw
dXRfZmlsZW5hbWUgYW5kIChub3Qgb3MucGF0aC5leGlzdHMob3V0cHV0X2ZpbGVuYW1lKSBvciBu
b3QgZmlsZWNtcC5jbXAob3V0cHV0X2ZpbGVuYW1lLCB0ZW1wb3V0cHV0X2ZpbGVuYW1lKSk6Cisg
ICAgICAgIG9zLnJlbmFtZSh0ZW1wb3V0cHV0X2ZpbGVuYW1lLCBvdXRwdXRfZmlsZW5hbWUpCisK
KworaWYgX19uYW1lX18gPT0gIl9fbWFpbl9fIjoKKyAgICBpbXBvcnQgYXJncGFyc2UKKyAgICBp
bXBvcnQgc3lzCisKKyAgICBwYXJzZXIgPSBhcmdwYXJzZS5Bcmd1bWVudFBhcnNlcigpCisgICAg
cGFyc2VyLmFkZF9hcmd1bWVudCgiLS1pbnB1dCIsIHR5cGU9c3RyLCBkZWZhdWx0PU5vbmUsIGhl
bHA9IklucHV0IGhlYWRlciBmaWxlIChpZS4gJHtTUkNST09UfS9XZWJLaXRQcml2YXRlLmgpIikK
KyAgICBwYXJzZXIuYWRkX2FyZ3VtZW50KCItLW91dHB1dCIsIHR5cGU9c3RyLCBkZWZhdWx0PU5v
bmUsIGhlbHA9Ik91dHB1dCBoZWFkZXIgZmlsZSAoaWUuICR7RFNUUk9PVH0vV2ViS2l0LmZyYW1l
d29yay9Qcml2YXRlSGVhZGVycy9XZWJLaXRQcml2YXRlLmgpIikKKyAgICBwYXJzZXIuYWRkX2Fy
Z3VtZW50KCItLXRlbXBvdXRwdXQiLCB0eXBlPXN0ciwgZGVmYXVsdD1Ob25lLCBoZWxwPSJUZW1w
b3Jhcnkgb3V0cHV0IGZpbGUgKGllLiAke1RBUkdFVF9URU1QX0RJUn0vV2ViS2l0UHJpdmF0ZS5o
XG5JZiBzZXQsIHRoZSBoZWFkZXIgd2lsbCBiZSBnZW5lcmF0ZWQgdG8gdGhpcyBwYXRoLCBhbmQg
dGhlIG91dHB1dCBwYXRoIHdpbGwgb25seSBiZSB0b3VjaGVkIGlmIHRoZSBmaWxlIGNvbnRlbnRz
IGhhdmUgY2hhbmdlZC4iKQorICAgIHBhcnNlci5hZGRfYXJndW1lbnQoIi0taGVhZGVycyIsIHR5
cGU9c3RyLCBkZWZhdWx0PU5vbmUsIGhlbHA9IkhlYWRlciBkaXJlY3RvcnkgKGllLiAke0RTVFJP
T1R9L1dlYktpdC5mcmFtZXdvcmsvUHJpdmF0ZUhlYWRlcnMpIikKKyAgICBwYXJzZXIuYWRkX2Fy
Z3VtZW50KCItLWZyYW1ld29yayIsIHR5cGU9c3RyLCBkZWZhdWx0PU5vbmUsIGhlbHA9IkZyYW1l
d29yayBuYW1lIChpZS4gV2ViS2l0KSIpCisgICAgcGFyc2VyLmFkZF9hcmd1bWVudCgiLS1tb2R1
bGVtYXAiLCB0eXBlPXN0ciwgZGVmYXVsdD1Ob25lLCBoZWxwPSJNb2R1bGUgbWFwIGZpbGUgKGll
LiBtb2R1bGUucHJpdmF0ZS5tb2R1bGVtYXApIikKKyAgICBhcmdzID0gcGFyc2VyLnBhcnNlX2Fy
Z3MoKQorCisgICAgaWYgYXJncy5pbnB1dCBpcyBOb25lIG9yIGFyZ3Mub3V0cHV0IGlzIE5vbmUg
b3IgYXJncy5oZWFkZXJzIGlzIE5vbmUgb3IgYXJncy5mcmFtZXdvcmsgaXMgTm9uZSBvciBhcmdz
Lm1vZHVsZW1hcCBpcyBOb25lOgorICAgICAgICBwYXJzZXIucHJpbnRfaGVscCgpCisgICAgICAg
IHN5cy5leGl0KDEpCisKKyAgICBnZW5lcmF0ZV91bWJyZWxsYV9oZWFkZXIoYXJncy5pbnB1dCwg
YXJncy5vdXRwdXQsIGFyZ3MudGVtcG91dHB1dCwgYXJncy5oZWFkZXJzLCBhcmdzLmZyYW1ld29y
aywgYXJncy5tb2R1bGVtYXApCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9BUEkv
Q29jb2EvV2ViS2l0LmggYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9BUEkvQ29jb2EvV2ViS2l0LmgK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGYwNDU5OTU4ZTEzZjFhZTJlY2M4ZmM4Njky
MWMxMGRjN2QyMmI4MWEuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAK
LS0tIGEvU291cmNlL1dlYktpdC9TaGFyZWQvQVBJL0NvY29hL1dlYktpdC5oCisrKyAvZGV2L251
bGwKQEAgLTEsNzEgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxNCBBcHBsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAq
IGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRh
aW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBw
cm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwotICog
QU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sCi0gKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVE
LiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKLSAqIEJF
IExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVY
RU1QTEFSWSwgT1IKLSAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCi0gKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKLSAqIElOVEVS
UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOCi0gKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgotICogVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbXBvcnQgPFdlYktpdC9OU0F0dHJp
YnV0ZWRTdHJpbmcuaD4KLSNpbXBvcnQgPFdlYktpdC9XS0JhY2tGb3J3YXJkTGlzdC5oPgotI2lt
cG9ydCA8V2ViS2l0L1dLQmFja0ZvcndhcmRMaXN0SXRlbS5oPgotI2ltcG9ydCA8V2ViS2l0L1dL
Q29udGVudFJ1bGVMaXN0Lmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tDb250ZW50UnVsZUxpc3RTdG9y
ZS5oPgotI2ltcG9ydCA8V2ViS2l0L1dLQ29udGVudFdvcmxkLmg+Ci0jaW1wb3J0IDxXZWJLaXQv
V0tDb250ZXh0TWVudUVsZW1lbnRJbmZvLmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tEb3dubG9hZC5o
PgotI2ltcG9ydCA8V2ViS2l0L1dLRG93bmxvYWREZWxlZ2F0ZS5oPgotI2ltcG9ydCA8V2ViS2l0
L1dLRXJyb3IuaD4KLSNpbXBvcnQgPFdlYktpdC9XS0ZpbmRDb25maWd1cmF0aW9uLmg+Ci0jaW1w
b3J0IDxXZWJLaXQvV0tGaW5kUmVzdWx0Lmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tGb3VuZGF0aW9u
Lmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tGcmFtZUluZm8uaD4KLSNpbXBvcnQgPFdlYktpdC9XS0hU
VFBDb29raWVTdG9yZS5oPgotI2ltcG9ydCA8V2ViS2l0L1dLTmF2aWdhdGlvbi5oPgotI2ltcG9y
dCA8V2ViS2l0L1dLTmF2aWdhdGlvbkFjdGlvbi5oPgotI2ltcG9ydCA8V2ViS2l0L1dLTmF2aWdh
dGlvbkRlbGVnYXRlLmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tOYXZpZ2F0aW9uUmVzcG9uc2UuaD4K
LSNpbXBvcnQgPFdlYktpdC9XS09wZW5QYW5lbFBhcmFtZXRlcnMuaD4KLSNpbXBvcnQgPFdlYktp
dC9XS1BERkNvbmZpZ3VyYXRpb24uaD4KLSNpbXBvcnQgPFdlYktpdC9XS1ByZWZlcmVuY2VzLmg+
Ci0jaW1wb3J0IDxXZWJLaXQvV0tQcmV2aWV3QWN0aW9uSXRlbS5oPgotI2ltcG9ydCA8V2ViS2l0
L1dLUHJldmlld0FjdGlvbkl0ZW1JZGVudGlmaWVycy5oPgotI2ltcG9ydCA8V2ViS2l0L1dLUHJl
dmlld0VsZW1lbnRJbmZvLmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tQcm9jZXNzUG9vbC5oPgotI2lt
cG9ydCA8V2ViS2l0L1dLU2NyaXB0TWVzc2FnZS5oPgotI2ltcG9ydCA8V2ViS2l0L1dLU2NyaXB0
TWVzc2FnZUhhbmRsZXIuaD4KLSNpbXBvcnQgPFdlYktpdC9XS1NjcmlwdE1lc3NhZ2VIYW5kbGVy
V2l0aFJlcGx5Lmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tTZWN1cml0eU9yaWdpbi5oPgotI2ltcG9y
dCA8V2ViS2l0L1dLU25hcHNob3RDb25maWd1cmF0aW9uLmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tV
SURlbGVnYXRlLmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tVUkxTY2hlbWVIYW5kbGVyLmg+Ci0jaW1w
b3J0IDxXZWJLaXQvV0tVUkxTY2hlbWVUYXNrLmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tVc2VyQ29u
dGVudENvbnRyb2xsZXIuaD4KLSNpbXBvcnQgPFdlYktpdC9XS1VzZXJTY3JpcHQuaD4KLSNpbXBv
cnQgPFdlYktpdC9XS1dlYlZpZXcuaD4KLSNpbXBvcnQgPFdlYktpdC9XS1dlYlZpZXdDb25maWd1
cmF0aW9uLmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tXZWJwYWdlUHJlZmVyZW5jZXMuaD4KLSNpbXBv
cnQgPFdlYktpdC9XS1dlYnNpdGVEYXRhUmVjb3JkLmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tXZWJz
aXRlRGF0YVN0b3JlLmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tXaW5kb3dGZWF0dXJlcy5oPgotCi0j
aWYgIWRlZmluZWQoVEFSR0VUX09TX01BQ0NBVEFMWVNUKSB8fCAhVEFSR0VUX09TX01BQ0NBVEFM
WVNUCi0jaW1wb3J0IDxXZWJLaXQvV2ViS2l0TGVnYWN5Lmg+Ci0jZW5kaWYKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvU2hhcmVkL0FQSS9Db2NvYS9XZWJLaXQuaC5pbiBiL1NvdXJjZS9XZWJL
aXQvU2hhcmVkL0FQSS9Db2NvYS9XZWJLaXQuaC5pbgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xMjIwYTk1YzFjYzdh
MDg3MjBmNTQ4Mzk2Zjc1M2E2MzVhNGU0YTgzCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dl
YktpdC9TaGFyZWQvQVBJL0NvY29hL1dlYktpdC5oLmluCkBAIC0wLDAgKzEsMjggQEAKKy8qCisg
KiBDb3B5cmlnaHQgKEMpIDIwMTQtMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRp
c3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdo
dAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3Qg
cmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRv
Y3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0
cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMu
IEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElN
UExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUg
SU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQ
QVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBB
UFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVD
VCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNF
UVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVN
RU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFU
QSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVT
RUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFD
VCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RI
RVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09G
VFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFN
QUdFLgorICovCisKKyNpZiAhZGVmaW5lZChUQVJHRVRfT1NfTUFDQ0FUQUxZU1QpIHx8ICFUQVJH
RVRfT1NfTUFDQ0FUQUxZU1QKKyNpbXBvcnQgPFdlYktpdC9XZWJLaXRMZWdhY3kuaD4KKyNlbmRp
ZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvQVBJL0NvY29hL1dlYktpdFByaXZh
dGUuaCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0FQSS9Db2NvYS9XZWJLaXRQcml2YXRlLmgKZGVs
ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDE4YmYwYzVkOGE2M2FmZTM5MDMyZmI0NDdiNTIy
NWU1MjE4NzZiZWEuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0t
IGEvU291cmNlL1dlYktpdC9TaGFyZWQvQVBJL0NvY29hL1dlYktpdFByaXZhdGUuaAorKysgL2Rl
di9udWxsCkBAIC0xLDQwICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTQgQXBwbGUg
SW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0
aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
Ci0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3Qg
cmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0
aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0g
KiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlh
bHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycK
LSAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLAotICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFC
SUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xB
SU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCi0g
KiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFM
LCBFWEVNUExBUlksIE9SCi0gKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgotICogU1VCU1RJVFVURSBHT09EUyBPUiBT
RVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCi0gKiBJ
TlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElU
WSwgV0hFVEhFUiBJTgotICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElO
Q0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKLSAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBP
VVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKLSAqIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW1wb3J0IDxXZWJLaXQvV0tI
aXN0b3J5RGVsZWdhdGVQcml2YXRlLmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tOYXZpZ2F0aW9uUHJp
dmF0ZS5oPgotI2ltcG9ydCA8V2ViS2l0L1dLUHJvY2Vzc1Bvb2xQcml2YXRlLmg+Ci0jaW1wb3J0
IDxXZWJLaXQvV0tVSURlbGVnYXRlUHJpdmF0ZS5oPgotI2ltcG9ydCA8V2ViS2l0L1dLV2ViVmll
d0NvbmZpZ3VyYXRpb25Qcml2YXRlLmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tXZWJWaWV3UHJpdmF0
ZS5oPgotI2ltcG9ydCA8V2ViS2l0L19XS0FjdGl2YXRlZEVsZW1lbnRJbmZvLmg+Ci0jaW1wb3J0
IDxXZWJLaXQvX1dLQXR0YWNobWVudC5oPgotI2ltcG9ydCA8V2ViS2l0L19XS0VsZW1lbnRBY3Rp
b24uaD4KLSNpbXBvcnQgPFdlYktpdC9fV0tGb2N1c2VkRWxlbWVudEluZm8uaD4KLSNpbXBvcnQg
PFdlYktpdC9fV0tGb3JtSW5wdXRTZXNzaW9uLmg+Ci0jaW1wb3J0IDxXZWJLaXQvX1dLSW5wdXRE
ZWxlZ2F0ZS5oPgotI2ltcG9ydCA8V2ViS2l0L19XS1Byb2Nlc3NQb29sQ29uZmlndXJhdGlvbi5o
PgotI2ltcG9ydCA8V2ViS2l0L19XS1RodW1ibmFpbFZpZXcuaD4KLSNpbXBvcnQgPFdlYktpdC9f
V0tWaXNpdGVkTGlua1N0b3JlLmg+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9B
UEkvQ29jb2EvV2ViS2l0UHJpdmF0ZS5oLmluIGIvU291cmNlL1dlYktpdC9TaGFyZWQvQVBJL0Nv
Y29hL1dlYktpdFByaXZhdGUuaC5pbgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45MTRkNzdjYTI1MWViZTBmOTYyNWJh
YjdmNTVlNGExNGEzZWU0MTljCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9TaGFy
ZWQvQVBJL0NvY29hL1dlYktpdFByaXZhdGUuaC5pbgpAQCAtMCwwICsxLDI0IEBACisvKgorICog
Q29weXJpZ2h0IChDKSAyMDE0LTIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
ICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJp
YnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBB
TkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBM
SUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElN
UExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFS
VElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQ
TEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFV
RU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVO
VCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KKyAqLwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvQVBJL2MvV0tJbW1lZGlh
dGVBY3Rpb25UeXBlcy5oIGIvU291cmNlL1dlYktpdC9TaGFyZWQvQVBJL2MvV0tJbW1lZGlhdGVB
Y3Rpb25UeXBlcy5oCmluZGV4IDVmZGMyOWE5ZWU5MTQyZjQ0NDM0ZTQ3NGRmMThmYmM3OGM3ODdl
NGIuLjVlYzM0OWZkOWZhZGM2YTEzNDIwMTZmY2ZlNTc1YWEwODE1ZjIyOGYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvU2hhcmVkL0FQSS9jL1dLSW1tZWRpYXRlQWN0aW9uVHlwZXMuaAorKysg
Yi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9BUEkvYy9XS0ltbWVkaWF0ZUFjdGlvblR5cGVzLmgKQEAg
LTQxLDEwICs0MSw2IEBAIGVudW0gewogICAgIGtXS0ltbWVkaWF0ZUFjdGlvblRlbExpbmsKIH07
CiAKLSNpZm5kZWYgX1dLSW1tZWRpYXRlQWN0aW9uVHlwZSAKLSNkZWZpbmUgX1dLSW1tZWRpYXRl
QWN0aW9uVHlwZSB1aW50MzJfdAotI2VuZGlmCi0KICNpZmRlZiBfX2NwbHVzcGx1cwogfQogI2Vu
ZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tDb250
ZXh0TWVudUVsZW1lbnRJbmZvUHJpdmF0ZS5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJ
L0NvY29hL1dLQ29udGV4dE1lbnVFbGVtZW50SW5mb1ByaXZhdGUuaAppbmRleCAwOTI0ODM5ZTIw
OTAyYWY2OWY3YjUzY2VhYTYwYWQzMmM0ZmE4NzI5Li42MTliYjQwODQ5MzhkNmRkYzQxY2NiZTYw
MmYxODc4MDkxYmVhYzRhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkv
Q29jb2EvV0tDb250ZXh0TWVudUVsZW1lbnRJbmZvUHJpdmF0ZS5oCisrKyBiL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS0NvbnRleHRNZW51RWxlbWVudEluZm9Qcml2YXRlLmgK
QEAgLTI1LDYgKzI1LDEwIEBACiAKICNpbXBvcnQgPFdlYktpdC9XS0NvbnRleHRNZW51RWxlbWVu
dEluZm8uaD4KIAorI2lmIFRBUkdFVF9PU19JUEhPTkUKKworTlNfQVNTVU1FX05PTk5VTExfQkVH
SU4KKwogQGNsYXNzIF9XS0FjdGl2YXRlZEVsZW1lbnRJbmZvOwogCiBAaW50ZXJmYWNlIFdLQ29u
dGV4dE1lbnVFbGVtZW50SW5mbyAoV0tQcml2YXRlKQpAQCAtMzIsMyArMzYsNyBAQAogQHByb3Bl
cnR5IChub25hdG9taWMsIGNvcHksIHJlYWRvbmx5KSBfV0tBY3RpdmF0ZWRFbGVtZW50SW5mbyAq
X2FjdGl2YXRlZEVsZW1lbnRJbmZvOwogCiBAZW5kCisKK05TX0FTU1VNRV9OT05OVUxMX0VORAor
CisjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qCmluZGV4IDMxOWYyZTRjNzc4Y2Q0ZDVmNDNmMDU2MTdmNTMxMzM5YzZhYmI5MGUuLjk5OTJi
ZmFhM2QzMWE1ZjViY2Q0MTk2NzQ4ZWVlZGVjMjQxYjYwY2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYktp
dC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMjUwLDggKzI1MCw2IEBACiAJ
CTFBNUU0REE0MTJEM0JEM0QwMDk5QTJCQiAvKiBUZXh0Q2hlY2tlclN0YXRlLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTVFNERBMzEyRDNCRDNEMDA5
OUEyQkIgLyogVGV4dENoZWNrZXJTdGF0ZS5oICovOyB9OwogCQkxQTYwMjI0QzE4QzE2QjlGMDBD
M0U4QzkgLyogVmlzaXRlZExpbmtTdG9yZU1lc3NhZ2VSZWNlaXZlci5jcHAgaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTYwMjI0QTE4QzE2QjlGMDBDM0U4
QzkgLyogVmlzaXRlZExpbmtTdG9yZU1lc3NhZ2VSZWNlaXZlci5jcHAgKi87IH07CiAJCTFBNjAy
MjREMThDMTZCOUYwMEMzRThDOSAvKiBWaXNpdGVkTGlua1N0b3JlTWVzc2FnZXMuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBNjAyMjRCMThDMTZCOUYw
MEMzRThDOSAvKiBWaXNpdGVkTGlua1N0b3JlTWVzc2FnZXMuaCAqLzsgfTsKLQkJMUE2MjgwQzUx
OTE5OTQ5RjAwNkFEOUY5IC8qIFdlYktpdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMUE2MjgwQzQxOTE5OTQ5RjAwNkFEOUY5IC8qIFdlYktpdC5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFB1YmxpYywgKTsgfTsgfTsKLQkJMUE2MjgwQzcx
OTE5OTUwQzAwNkFEOUY5IC8qIFdlYktpdFByaXZhdGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBNjI4MEM2MTkxOTk1MEMwMDZBRDlGOSAvKiBXZWJL
aXRQcml2YXRlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKIAkJMUE2MjgwRjMxOTE5OTgyQTAwNkFEOUY5IC8qIFdlYktpdC5tIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUE2MjgwRjIxOTE5OTgyQTAwNkFEOUY5
IC8qIFdlYktpdC5tICovOyB9OwogCQkxQTY0MjBFNTEyRENFMkZGMDBDQUFFMkMgLyogU2hhcmVh
YmxlQml0bWFwLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAxQTY0MjBFMzEyRENFMkZGMDBDQUFFMkMgLyogU2hhcmVhYmxlQml0bWFwLmggKi87IH07CiAJ
CTFBNjQyMjk5MTJERDAyOTIwMENBQUUyQyAvKiBEcmF3aW5nQXJlYU1lc3NhZ2VSZWNlaXZlci5j
cHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTY0MjI5
NzEyREQwMjkyMDBDQUFFMkMgLyogRHJhd2luZ0FyZWFNZXNzYWdlUmVjZWl2ZXIuY3BwICovOyB9
OwpAQCAtMjY2MSw4ICsyNjU5LDggQEAKIAkJMUE2MDIyNDkxOEMxNkIwODAwQzNFOEM5IC8qIFZp
c2l0ZWRMaW5rU3RvcmUubWVzc2FnZXMuaW4gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gVmlzaXRlZExpbmtTdG9yZS5tZXNzYWdl
cy5pbjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUE2MDIyNEExOEMxNkI5RjAwQzNF
OEM5IC8qIFZpc2l0ZWRMaW5rU3RvcmVNZXNzYWdlUmVjZWl2ZXIuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVmlzaXRlZExpbmtTdG9yZU1lc3NhZ2VSZWNlaXZlci5j
cHA7IHBhdGggPSBEZXJpdmVkU291cmNlcy9XZWJLaXQyL1Zpc2l0ZWRMaW5rU3RvcmVNZXNzYWdl
UmVjZWl2ZXIuY3BwOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OwogCQkxQTYw
MjI0QjE4QzE2QjlGMDBDM0U4QzkgLyogVmlzaXRlZExpbmtTdG9yZU1lc3NhZ2VzLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IFZpc2l0ZWRMaW5rU3RvcmVNZXNzYWdlcy5oOyBw
YXRoID0gRGVyaXZlZFNvdXJjZXMvV2ViS2l0Mi9WaXNpdGVkTGlua1N0b3JlTWVzc2FnZXMuaDsg
c291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKLQkJMUE2MjgwQzQxOTE5OTQ5RjAw
NkFEOUY5IC8qIFdlYktpdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJL
aXQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJMUE2MjgwQzYxOTE5OTUwQzAwNkFE
OUY5IC8qIFdlYktpdFByaXZhdGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
V2ViS2l0UHJpdmF0ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQTYyODBDNDE5
MTk5NDlGMDA2QUQ5RjkgLyogV2ViS2l0LmguaW4gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gV2Vi
S2l0LmguaW47IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBNjI4MEM2MTkxOTk1MEMw
MDZBRDlGOSAvKiBXZWJLaXRQcml2YXRlLmguaW4gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gV2Vi
S2l0UHJpdmF0ZS5oLmluOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQTYyODBGMjE5
MTk5ODJBMDA2QUQ5RjkgLyogV2ViS2l0Lm0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMub2JqYzsg
cGF0aCA9IFdlYktpdC5tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQTY0MjBFMjEy
RENFMkZGMDBDQUFFMkMgLyogU2hhcmVhYmxlQml0bWFwLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IFNoYXJlYWJsZUJpdG1hcC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTFBNjQyMEUzMTJEQ0UyRkYwMENBQUUyQyAvKiBTaGFyZWFibGVCaXRtYXAu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2hhcmVhYmxlQml0bWFwLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC04MTk2LDkgKzgxOTQsOSBAQAogCQkJCTFBQzEz
MzgxMTg1OTBCMDUwMEYzRUMwNSAvKiBSZW1vdGVPYmplY3RSZWdpc3RyeS5tZXNzYWdlcy5pbiAq
LywKIAkJCQkxQUMxMzM3RDE4NTkwQUU0MDBGM0VDMDUgLyogUmVtb3RlT2JqZWN0UmVnaXN0cnku
bW0gKi8sCiAJCQkJMUE4NUU0NzAxRTMwM0YyNDAwOTE0NTk5IC8qIFdlYktpdC5hcGlub3RlcyAq
LywKLQkJCQkxQTYyODBDNDE5MTk5NDlGMDA2QUQ5RjkgLyogV2ViS2l0LmggKi8sCisJCQkJMUE2
MjgwQzQxOTE5OTQ5RjAwNkFEOUY5IC8qIFdlYktpdC5oLmluICovLAogCQkJCTFBNjI4MEYyMTkx
OTk4MkEwMDZBRDlGOSAvKiBXZWJLaXQubSAqLywKLQkJCQkxQTYyODBDNjE5MTk5NTBDMDA2QUQ5
RjkgLyogV2ViS2l0UHJpdmF0ZS5oICovLAorCQkJCTFBNjI4MEM2MTkxOTk1MEMwMDZBRDlGOSAv
KiBXZWJLaXRQcml2YXRlLmguaW4gKi8sCiAJCQkJMUFFMDBENEIxODJENkVCMDAwMDg3REQ3IC8q
IFdLQnJvd3NpbmdDb250ZXh0SGFuZGxlLmggKi8sCiAJCQkJMUFFMDBENEExODJENkVCMDAwMDg3
REQ3IC8qIFdLQnJvd3NpbmdDb250ZXh0SGFuZGxlLm1tICovLAogCQkJCTFBRTAwRDRFMTgyRDZG
NTAwMDA4N0RENyAvKiBXS0Jyb3dzaW5nQ29udGV4dEhhbmRsZUludGVybmFsLmggKi8sCkBAIC0x
MjI3NCwxMCArMTIyNzIsOCBAQAogCQkJCUE1NUJBODJCMUJBMzhFNjEwMDdDRDMzRCAvKiBXZWJJ
bnNwZWN0b3JVdGlsaXRpZXMuaCBpbiBIZWFkZXJzICovLAogCQkJCTJEQTk0NEEwMTg4NEU0RjAw
MEVEODZEQiAvKiBXZWJJT1NFdmVudEZhY3RvcnkuaCBpbiBIZWFkZXJzICovLAogCQkJCTFBODVF
NDcyMUUzMDNGMzcwMDkxNDU5OSAvKiBXZWJLaXQuYXBpbm90ZXMgaW4gSGVhZGVycyAqLywKLQkJ
CQkxQTYyODBDNTE5MTk5NDlGMDA2QUQ5RjkgLyogV2ViS2l0LmggaW4gSGVhZGVycyAqLywKIAkJ
CQlCQ0I2MzQ3ODExNkJGMTA2MDA2MDMyMTUgLyogV2ViS2l0Ml9DLmggaW4gSGVhZGVycyAqLywK
IAkJCQlCQzlCQTUwNTE2OTdDNDUzMDBFNDQ2MTYgLyogV2ViS2l0MkluaXRpYWxpemUuaCBpbiBI
ZWFkZXJzICovLAotCQkJCTFBNjI4MEM3MTkxOTk1MEMwMDZBRDlGOSAvKiBXZWJLaXRQcml2YXRl
LmggaW4gSGVhZGVycyAqLywKIAkJCQlDRDAwM0E1MzE5RDQ5QjVEMDA1QUJDRTAgLyogV2ViTWVk
aWFLZXlTdG9yYWdlTWFuYWdlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOUFDQzA3QjcyNUM4MUQz
NDAwREM2Mzg2IC8qIFdlYk1lZGlhS2V5U3lzdGVtQ2xpZW50LmggaW4gSGVhZGVycyAqLywKIAkJ
CQk5QjVCRUMyNjI0MDBGNEE5MDA3MEM2RUYgLyogV2ViTWVkaWFTdHJhdGVneS5oIGluIEhlYWRl
cnMgKi8sCkBAIC0xMjkyNCw2ICsxMjkyMCw3IEBACiAJCQkJMUE2MjgwQzgxOTE5OTU2QjAwNkFE
OUY5IC8qIE1pZ3JhdGUgV2ViS2l0TGVnYWN5IEhlYWRlcnMgKi8sCiAJCQkJMzc1QTI0ODgxN0U1
MDQ4RTAwQzlBMDg2IC8qIFBvc3Rwcm9jZXNzIFdLQmFzZS5oICovLAogCQkJCTFBRDk4RUNGMTkx
RDg2NzMwMENBQTZERiAvKiBQb3N0cHJvY2VzcyBXS0ZvdW5kYXRpb24uaCAqLywKKwkJCQkzMUQ2
MkI2NDI1RTVBMjk4MDAxMzUwODkgLyogR2VuZXJhdGUgVW1icmVsbGEgSGVhZGVycyAqLywKIAkJ
CQlGNEVGQkFENTIyNTQwQ0JCMDAwNDlCQTYgLyogUmVwbGFjZSBXZWJLaXRBZGRpdGlvbnMgaW4g
RnJhbWV3b3JrIEhlYWRlcnMgKi8sCiAJCQkJMUExRDIxMTUxOTFEOTYzODAwMDE2MTlGIC8qIFBv
c3Rwcm9jZXNzIEZyYW1ld29yayBIZWFkZXJzICovLAogCQkJCTJFMTZCNkY0MjAxOUJDMjUwMDg5
OTZENiAvKiBDb3B5IEFkZGl0aW9uYWwgUmVzb3VyY2VzICovLApAQCAtMTMzMzksNiArMTMzMzYs
MzIgQEAKIAkJCXNoZWxsUGF0aCA9IC9iaW4vc2g7CiAJCQlzaGVsbFNjcmlwdCA9ICJzZXQgLWVc
blxuUkVMQVRJVkVfU09VUkNFX1BBVEg9XCJ1c3IvbG9jYWwvaW5jbHVkZS9XZWJLaXRBZGRpdGlv
bnMvV2ViS2l0L0FkZGl0aW9uYWxSZXNvdXJjZXNcIlxuU09VUkNFX1BBVEg9XCIkQlVJTFRfUFJP
RFVDVFNfRElSLyRSRUxBVElWRV9TT1VSQ0VfUEFUSFwiXG5cbmlmIFtbICEgLWQgXCIkU09VUkNF
X1BBVEhcIiBdXTsgdGhlblxuICAgIFNPVVJDRV9QQVRIPVwiJFNES19ESVIvJFJFTEFUSVZFX1NP
VVJDRV9QQVRIXCJcbmZpXG5cbmlmIFtbIC1kIFwiJFNPVVJDRV9QQVRIXCIgXV07IHRoZW5cbiAg
ICBkaXR0byAkU09VUkNFX1BBVEggXCIkQlVJTFRfUFJPRFVDVFNfRElSLyRVTkxPQ0FMSVpFRF9S
RVNPVVJDRVNfRk9MREVSX1BBVEhcIlxuZmlcbiI7CiAJCX07CisJCTMxRDYyQjY0MjVFNUEyOTgw
MDEzNTA4OSAvKiBHZW5lcmF0ZSBVbWJyZWxsYSBIZWFkZXJzICovID0geworCQkJaXNhID0gUEJY
U2hlbGxTY3JpcHRCdWlsZFBoYXNlOworCQkJYnVpbGRBY3Rpb25NYXNrID0gMjE0NzQ4MzY0NzsK
KwkJCWZpbGVzID0gKAorCQkJKTsKKwkJCWlucHV0RmlsZUxpc3RQYXRocyA9ICgKKwkJCSk7CisJ
CQlpbnB1dFBhdGhzID0gKAorCQkJCSIkKFNSQ1JPT1QpL1NjcmlwdHMvZ2VuZXJhdGUtdW1icmVs
bGEtaGVhZGVycy5weSIsCisJCQkJIiQoU1JDUk9PVCkvU2hhcmVkL0FQSS9Db2NvYS9XZWJLaXRQ
cml2YXRlLmguaW4iLAorCQkJCSIkKFNSQ1JPT1QpLyQoTU9EVUxFTUFQX1BSSVZBVEVfRklMRSki
LAorCQkJCSIkKFBST0pFQ1RfRklMRV9QQVRIKS9wcm9qZWN0LnBieHByb2oiLAorCQkJCSIkKFNS
Q1JPT1QpL1NoYXJlZC9BUEkvQ29jb2EvV2ViS2l0LmguaW4iLAorCQkJCSIkKFNSQ1JPT1QpLyQo
TU9EVUxFTUFQX0ZJTEUpIiwKKwkJCSk7CisJCQluYW1lID0gIkdlbmVyYXRlIFVtYnJlbGxhIEhl
YWRlcnMiOworCQkJb3V0cHV0RmlsZUxpc3RQYXRocyA9ICgKKwkJCSk7CisJCQlvdXRwdXRQYXRo
cyA9ICgKKwkJCQkiJChCVUlMVF9QUk9EVUNUU19ESVIpLyQoUFJJVkFURV9IRUFERVJTX0ZPTERF
Ul9QQVRIKS9XZWJLaXRQcml2YXRlLmgiLAorCQkJCSIkKEJVSUxEX1BST0RVQ1RTX0RJUikvJChI
RUFERVJTX0ZPTERFUl9QQVRIKS9XZWJLaXQuaCIsCisJCQkpOworCQkJcnVuT25seUZvckRlcGxv
eW1lbnRQb3N0cHJvY2Vzc2luZyA9IDA7CisJCQlzaGVsbFBhdGggPSAvYmluL3NoOworCQkJc2hl
bGxTY3JpcHQgPSAiXCIke1NSQ1JPT1R9L1NjcmlwdHMvZ2VuZXJhdGUtdW1icmVsbGEtaGVhZGVy
LnB5XCIgLS1pbnB1dCBcIiR7U1JDUk9PVH0vU2hhcmVkL0FQSS9Db2NvYS9XZWJLaXRQcml2YXRl
LmguaW5cIiAtLW91dHB1dCBcIiR7QlVJTFRfUFJPRFVDVFNfRElSfS8ke1BSSVZBVEVfSEVBREVS
U19GT0xERVJfUEFUSH0vV2ViS2l0UHJpdmF0ZS5oXCIgLS10ZW1wb3V0cHV0IFwiJHtUQVJHRVRf
VEVNUF9ESVJ9L1dlYktpdFByaXZhdGUuaFwiIC0taGVhZGVycyBcIiR7QlVJTFRfUFJPRFVDVFNf
RElSfS8ke1BSSVZBVEVfSEVBREVSU19GT0xERVJfUEFUSH1cIiAtLWZyYW1ld29yayBcIiR7UFJP
RFVDVF9NT0RVTEVfTkFNRX1cIiAtLW1vZHVsZW1hcCBcIiR7U1JDUk9PVH0vJHtNT0RVTEVNQVBf
UFJJVkFURV9GSUxFfVwiXG5cIiR7U1JDUk9PVH0vU2NyaXB0cy9nZW5lcmF0ZS11bWJyZWxsYS1o
ZWFkZXIucHlcIiAtLWlucHV0IFwiJHtTUkNST09UfS9TaGFyZWQvQVBJL0NvY29hL1dlYktpdC5o
LmluXCIgLS1vdXRwdXQgXCIke0JVSUxUX1BST0RVQ1RTX0RJUn0vJHtQVUJMSUNfSEVBREVSU19G
T0xERVJfUEFUSH0vV2ViS2l0LmhcIiAtLXRlbXBvdXRwdXQgXCIke1RBUkdFVF9URU1QX0RJUn0v
V2ViS2l0LmhcIiAtLWhlYWRlcnMgXCIke0JVSUxUX1BST0RVQ1RTX0RJUn0vJHtQVUJMSUNfSEVB
REVSU19GT0xERVJfUEFUSH1cIiAtLWZyYW1ld29yayBcIiR7UFJPRFVDVF9NT0RVTEVfTkFNRX1c
IiAtLW1vZHVsZW1hcCBcIiR7U1JDUk9PVH0vJHtNT0RVTEVNQVBfRklMRX1cIlxuIjsKKwkJfTsK
IAkJMzcxM0YwMjMxNDI5MDYzRDAwMzYzODdGIC8qIENoZWNrIEZvciBJbmFwcHJvcHJpYXRlIE9i
amVjdGl2ZS1DIENsYXNzIE5hbWVzICovID0gewogCQkJaXNhID0gUEJYU2hlbGxTY3JpcHRCdWls
ZFBoYXNlOwogCQkJYnVpbGRBY3Rpb25NYXNrID0gMjE0NzQ4MzY0NzsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai94Y3NoYXJlZGRhdGEveGNzY2hlbWVzL1dlYktp
dC54Y3NjaGVtZSBiL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai94Y3NoYXJlZGRhdGEv
eGNzY2hlbWVzL1dlYktpdC54Y3NjaGVtZQppbmRleCA2MTAzOWIxYzcxNzM4ZjMyMzNkYjhiMzU5
ODQzYzQ0YzgzZWY5YzlmLi4yMThkYjJiMzc2OTkwYzQ1OGI1ZTk4M2IxNWQ4MmY5ZGM0YTMxODZh
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2oveGNzaGFyZWRkYXRh
L3hjc2NoZW1lcy9XZWJLaXQueGNzY2hlbWUKKysrIGIvU291cmNlL1dlYktpdC9XZWJLaXQueGNv
ZGVwcm9qL3hjc2hhcmVkZGF0YS94Y3NjaGVtZXMvV2ViS2l0Lnhjc2NoZW1lCkBAIC0zMSw3ICsz
MSw3IEBACiAgICAgICA8L1Rlc3RhYmxlcz4KICAgIDwvVGVzdEFjdGlvbj4KICAgIDxMYXVuY2hB
Y3Rpb24KLSAgICAgIGJ1aWxkQ29uZmlndXJhdGlvbiA9ICJSZWxlYXNlIgorICAgICAgYnVpbGRD
b25maWd1cmF0aW9uID0gIkRlYnVnIgogICAgICAgc2VsZWN0ZWREZWJ1Z2dlcklkZW50aWZpZXIg
PSAiWGNvZGUuRGVidWdnZXJGb3VuZGF0aW9uLkRlYnVnZ2VyLkxMREIiCiAgICAgICBzZWxlY3Rl
ZExhdW5jaGVySWRlbnRpZmllciA9ICJYY29kZS5EZWJ1Z2dlckZvdW5kYXRpb24uTGF1bmNoZXIu
TExEQiIKICAgICAgIGxhdW5jaFN0eWxlID0gIjAiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
TGVnYWN5L21hYy9NaXNjL05TVVJMRG93bmxvYWRTUEkuaCBiL1NvdXJjZS9XZWJLaXRMZWdhY3kv
bWFjL01pc2MvTlNVUkxEb3dubG9hZFNQSS5oCmluZGV4IGRiNzZiYTFkNDE0YWUzNzQxMGRiNjk5
MDIyNGFhYjc4MDI5MWRlOTguLjhiODQ5NzkwOTBlNDY4NzUyMzg0OTI2MDhkYWY3NzE2NTI2ZTJi
NjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL01pc2MvTlNVUkxEb3dubG9h
ZFNQSS5oCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL01pc2MvTlNVUkxEb3dubG9hZFNQ
SS5oCkBAIC0yMyw3ICsyMywxMCBAQAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgogICovCiAKKworI2lmIFRBUkdFVF9PU19JUEhPTkUgJiYgIShkZWZpbmVkIFVTRV9BUFBMRV9J
TlRFUk5BTF9TREsgJiYgVVNFX0FQUExFX0lOVEVSTkFMX1NESykKIEBpbnRlcmZhY2UgTlNVUkxE
b3dubG9hZCA6IE5TT2JqZWN0CiBAZW5kCisjZW5kaWYKIAogQHByb3RvY29sIE5TVVJMRG93bmxv
YWREZWxlZ2F0ZTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>424572</attachid>
            <date>2021-03-29 13:33:24 -0700</date>
            <delta_ts>2021-03-31 11:25:46 -0700</delta_ts>
            <desc>WIP - does not compile</desc>
            <filename>bug-203059-20210330073323.patch</filename>
            <type>text/plain</type>
            <size>31985</size>
            <attacher name="Dean Jackson">dino</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc1MTY2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDIzN2U4MjJmNzk4ZTZkZjI2
YjkzNzBhY2Q1YmIwMzEwNDlkNTE4YzguLmUyYThmNjYwMWYxODEzMzQwYWZiMGFkMjkxMTJlYzI0
OTk2OTAzNjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzcgQEAKKzIwMjEtMDMtMjkgIERlYW4gSmFj
a3NvbiAgPGRpbm9AYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBTd2lmdCBtb2R1bGVtYXAgZm9y
IFdlYktpdCBQcml2YXRlIEFQSXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTIwMzA1OQorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNTYzNTAyOTA+CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUHJvdmlkZSBh
IFN3aWZ0IG1vZHVsZW1hcCBmb3IgV2ViS2l0X1ByaXZhdGUsIGFuZAorICAgICAgICBlbnN1cmUg
dGhhdCBhbGwgUHJpdmF0ZUhlYWRlcnMgYXJlIGluY2x1ZGVkIGluIG91ciB1bWJyZWxsYQorICAg
ICAgICBoZWFkZXIgKGJlY2F1c2Ugd2UgZG9uJ3Qga25vdyB3aG8gaXMgaW5jbHVkaW5nIHRoZSB2
YXJpb3VzCisgICAgICAgIGZpbGVzKS4KKworICAgICAgICBVc2VkIHRoZSBzYW1lIGFwcHJvYWNo
IHRvIGdlbmVyYXRlZCB0aGUgcHVibGljIHVtYnJlbGxhIGhlYWRlci4KKyAgICAgICAgSW4gYm90
aCBjYXNlcyB0aGlzIGhhcyBhZGRlZCBhIGxvdCBvZiBleHRyYSBpbXBvcnQgc3RhdGVtZW50cywK
KyAgICAgICAgYnV0IGhvcGVmdWxseSB0aGF0IGlzIG9rLgorCisgICAgICAgIFJlbmFtZWQgT1NY
Lm1vZHVsZW1hcCB0byBtYWNPUy5tb2R1bGVtYXAgd2hpbGUgaGVyZS4KKworICAgICAgICAqIENv
bmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWc6CisgICAgICAgICogQ29uZmlndXJhdGlvbnMvV2Vi
S2l0LnhjY29uZmlnOgorICAgICAgICAqIE1vZHVsZXMvaU9TLnByaXZhdGUubW9kdWxlbWFwOiBB
ZGRlZC4KKyAgICAgICAgKiBNb2R1bGVzL21hY09TLm1vZHVsZW1hcDogUmVuYW1lZCBmcm9tIFNv
dXJjZS9XZWJLaXQvTW9kdWxlcy9PU1gubW9kdWxlbWFwLgorICAgICAgICAqIE1vZHVsZXMvbWFj
T1MucHJpdmF0ZS5tb2R1bGVtYXA6IEFkZGVkLgorICAgICAgICAqIFNjcmlwdHMvZ2VuZXJhdGUt
dW1icmVsbGEtaGVhZGVyLnB5OiBBZGRlZC4gR2VuZXJhdGVzIHRoZSB1bWJyZWxsYSBoZWFkZXIg
ZmlsZS4KKyAgICAgICAgKGdlbmVyYXRlX3VtYnJlbGxhX2hlYWRlcik6CisgICAgICAgICogU2hh
cmVkL0FQSS9Db2NvYS9XZWJLaXQuaCAtPiBXZWJLaXQuaC5pbjogUmVuYW1lZCBzaW5jZSBpdCBp
cyBpbnB1dCB0byBhIGdlbmVyYXRlZCBmaWxlLgorICAgICAgICAqIFNoYXJlZC9BUEkvQ29jb2Ev
V2ViS2l0UHJpdmF0ZS5oIC0+IFdlYktpdFByaXZhdGUuaC5pbjogRGl0dG8uCisgICAgICAgICog
V2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogV2ViS2l0Lnhjb2Rl
cHJvai94Y3NoYXJlZGRhdGEveGNzY2hlbWVzL1dlYktpdC54Y3NjaGVtZToKKyAgICAgICAgKiBT
aGFyZWQvQVBJL2MvV0tJbW1lZGlhdGVBY3Rpb25UeXBlcy5oOiBSZW1vdmUgdW51c2VkICNkZWZp
bmUgdGhhdCB3YXMgY2xhc2hpbmcgd2l0aCB0aGUgdHlwZSB0aGF0CisgICAgICAgIGhhZCBiZWVu
IGRlZmluZWQgZWxzZXdoZXJlLgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2EvV0tDb250
ZXh0TWVudUVsZW1lbnRJbmZvUHJpdmF0ZS5oOiBHdWFyZCB0aGlzIGZvciBpT1MuCisKIDIwMjEt
MDMtMjkgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KIAogICAg
ICAgICBNaWdyYXRlIF9XS1VzZXJDb250ZW50RXh0ZW5zaW9uIGFuZCBvbGRlciB2ZXJzaW9ucyBv
ZiBXS0NvbnRlbnRSdWxlTGlzdCB0byBXS0NvbnRlbnRSdWxlTGlzdCBkdXJpbmcgbG9va3VwCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXRM
ZWdhY3kvQ2hhbmdlTG9nCmluZGV4IGMzMGI2ODI3MTRkMjcxYmQwMzI4OGVmOWI0ODI2ZGRiZWQy
MWJjMTcuLjk3ODA5MWRkYmNkYmE0Yjc3Mjc4NTZjNDAzODk2ZWIwZjcyNGI3MDAgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdh
Y3kvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMjEtMDMtMjkgIERlYW4gSmFja3NvbiAg
PGRpbm9AYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBTd2lmdCBtb2R1bGVtYXAgZm9yIFdlYktp
dCBQcml2YXRlIEFQSXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIwMzA1OQorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNTYzNTAyOTA+CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgR3VhcmQgTlNVUkxEb3du
bG9hZFNQSS5oIGZyb20gcmVkZWZpbmluZyBOU1VSTERvd25sb2FkCisgICAgICAgIHdoZW4gaXQg
ZG9lc24ndCBuZWVkIHRvLgorCisgICAgICAgICogL21hYy9NaXNjL05TVVJMRG93bmxvYWRTUEku
aDoKKwogMjAyMS0wMy0yOCAgU2FtIFdlaW5pZyAgPHdlaW5pZ0BhcHBsZS5jb20+CiAKICAgICAg
ICAgUmVtb3ZlIEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFICYgRU5BQkxFX0lOREVYRURfREFUQUJB
U0VfSU5fV09SS0VSUywgaXQgc2VlbXMgbGlrZSBpdCBpcyBvbiBmb3IgYWxsIHBvcnRzCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWcgYi9Tb3Vy
Y2UvV2ViS2l0L0NvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWcKaW5kZXggYmE4MWRmNGU0N2Jm
Zjc3YzM4MmZlZGU3YzVkYWNjZWFkYzUxNmY4OS4uNWIyN2YwYzkyYWQxNTdmY2M1MDJmY2NmZTdj
NmE2MzM1NGM4ZjU2YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9Db25maWd1cmF0aW9ucy9C
YXNlLnhjY29uZmlnCisrKyBiL1NvdXJjZS9XZWJLaXQvQ29uZmlndXJhdGlvbnMvQmFzZS54Y2Nv
bmZpZwpAQCAtMzEsOSArMzEsMTEgQEAgVVNFX0lOVEVSTkFMX1NES19SZWxlYXNlID0gJChIQVZF
X0lOVEVSTkFMX1NESyk7CiAKIEFMV0FZU19TRUFSQ0hfVVNFUl9QQVRIUyA9IE5POwogCitDTEFO
R19BTExPV19OT05fTU9EVUxBUl9JTkNMVURFU19JTl9GUkFNRVdPUktfTU9EVUxFUyA9IE5POwog
Q0xBTkdfQ1hYX0xBTkdVQUdFX1NUQU5EQVJEID0gZ251KysxejsKIENMQU5HX0NYWF9MSUJSQVJZ
ID0gbGliYysrOwogQ0xBTkdfRU5BQkxFX09CSkNfV0VBSyA9IFlFUzsKK0NMQU5HX01PRFVMRVNf
RU5BQkxFX1ZFUklGSUVSX1RPT0wgPSBZRVM7CiBDTEFOR19XQVJOX0JMT0NLX0NBUFRVUkVfQVVU
T1JFTEVBU0lORyA9IFlFUzsKIENMQU5HX1dBUk5fQk9PTF9DT05WRVJTSU9OID0gWUVTOwogQ0xB
TkdfV0FSTl9DT01NQSA9IFlFUzsKQEAgLTQxLDEwICs0MywxMiBAQCBDTEFOR19XQVJOX0NPTlNU
QU5UX0NPTlZFUlNJT04gPSBZRVM7CiBDTEFOR19XQVJOX0NYWDBYX0VYVEVOU0lPTlMgPSBOTzsK
IENMQU5HX1dBUk5fRU1QVFlfQk9EWSA9IFlFUzsKIENMQU5HX1dBUk5fRU5VTV9DT05WRVJTSU9O
ID0gWUVTOworQ0xBTkdfV0FSTl9GUkFNRVdPUktfSU5DTFVERV9QUklWQVRFX0ZST01fUFVCTElD
ID0gWUVTOwogQ0xBTkdfV0FSTl9JTkZJTklURV9SRUNVUlNJT04gPSBZRVM7CiBDTEFOR19XQVJO
X0lOVF9DT05WRVJTSU9OID0gWUVTOwogQ0xBTkdfV0FSTl9OT05fTElURVJBTF9OVUxMX0NPTlZF
UlNJT04gPSBZRVM7CiBDTEFOR19XQVJOX09CSkNfTElURVJBTF9DT05WRVJTSU9OID0gWUVTOwor
Q0xBTkdfV0FSTl9RVU9URURfSU5DTFVERV9JTl9GUkFNRVdPUktfSEVBREVSID0gWUVTOwogQ0xB
TkdfV0FSTl9SQU5HRV9MT09QX0FOQUxZU0lTID0gWUVTOwogQ0xBTkdfV0FSTl9TVFJJQ1RfUFJP
VE9UWVBFUyA9IFlFUzsKIENMQU5HX1dBUk5fU1VTUElDSU9VU19NT1ZFID0gWUVTOwpAQCAtODYs
NyArOTAsNyBAQCBHQ0NfV0FSTl9VTlVTRURfRlVOQ1RJT04gPSBZRVM7CiBHQ0NfV0FSTl9VTlVT
RURfVkFSSUFCTEUgPSBZRVM7CiBPVEhFUl9NSUdGTEFHUyA9IC1GJChCVUlMVF9QUk9EVUNUU19E
SVIpOwogUFJFQklORElORyA9IE5POwotV0FSTklOR19DRkxBR1MgPSAtV2FsbCAtV2V4dHJhIC1X
Y2FzdC1xdWFsIC1XY2hhci1zdWJzY3JpcHRzIC1XY29uZGl0aW9uYWwtdW5pbml0aWFsaXplZCAt
V2V4dHJhLXRva2VucyAtV2Zvcm1hdC1zZWN1cml0eSAtV2luaXQtc2VsZiAtV21pc3NpbmctZm9y
bWF0LWF0dHJpYnV0ZSAtV21pc3Npbmctbm9yZXR1cm4gLVduby11bnVzZWQtcGFyYW1ldGVyIC1X
cGFja2VkIC1XcG9pbnRlci1hcml0aCAtV3JlZHVuZGFudC1kZWNscyAtV3VuZGVmIC1Xd3JpdGUt
c3RyaW5ncyAtV2V4aXQtdGltZS1kZXN0cnVjdG9ycyAtV2dsb2JhbC1jb25zdHJ1Y3RvcnMgLVd0
YXV0b2xvZ2ljYWwtY29tcGFyZSAtV2ltcGxpY2l0LWZhbGx0aHJvdWdoIC1XdmxhIC1XbGl0ZXJh
bC1jb252ZXJzaW9uOworV0FSTklOR19DRkxBR1MgPSAtV2FsbCAtV2V4dHJhIC1XY2FzdC1xdWFs
IC1XY2hhci1zdWJzY3JpcHRzIC1XY29uZGl0aW9uYWwtdW5pbml0aWFsaXplZCAtV2V4dHJhLXRv
a2VucyAtV2Zvcm1hdC1zZWN1cml0eSAtV2luaXQtc2VsZiAtV21pc3NpbmctZm9ybWF0LWF0dHJp
YnV0ZSAtV21pc3Npbmctbm9yZXR1cm4gLVduby11bnVzZWQtcGFyYW1ldGVyIC1XcGFja2VkIC1X
cG9pbnRlci1hcml0aCAtV3JlZHVuZGFudC1kZWNscyAtV3VuZGVmIC1Xd3JpdGUtc3RyaW5ncyAt
V2V4aXQtdGltZS1kZXN0cnVjdG9ycyAtV2dsb2JhbC1jb25zdHJ1Y3RvcnMgLVd0YXV0b2xvZ2lj
YWwtY29tcGFyZSAtV2ltcGxpY2l0LWZhbGx0aHJvdWdoIC1XdmxhIC1XbGl0ZXJhbC1jb252ZXJz
aW9uIC1XYXRpbXBvcnQtaW4tZnJhbWV3b3JrLWhlYWRlciAtV2luY29tcGxldGUtZnJhbWV3b3Jr
LW1vZHVsZS1kZWNsYXJhdGlvbiAtV2luY29tcGxldGUtdW1icmVsbGEgLVdub24tbW9kdWxhci1p
bmNsdWRlLWluLW1vZHVsZTsKIAogVEFSR0VUX01BQ09TX0xFR0FDWV9WRVJTSU9OX0lERU5USUZJ
RVIgPSAkKFRBUkdFVF9NQUNPU19MRUdBQ1lfVkVSU0lPTl9JREVOVElGSUVSXyQoTUFDT1NYX0RF
UExPWU1FTlRfVEFSR0VUOmJhc2UpKQogVEFSR0VUX01BQ09TX0xFR0FDWV9WRVJTSU9OX0lERU5U
SUZJRVJfMTAgPSAxMCQoTUFDT1NYX0RFUExPWU1FTlRfVEFSR0VUOnN1ZmZpeDppZGVudGlmaWVy
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9Db25maWd1cmF0aW9ucy9XZWJLaXQueGNjb25m
aWcgYi9Tb3VyY2UvV2ViS2l0L0NvbmZpZ3VyYXRpb25zL1dlYktpdC54Y2NvbmZpZwppbmRleCA4
N2VhZDVjZjJkOTFmOTk1YzU2MDZmMWQ5OWEzMjIwMzIwZWY3NzU2Li4yYmFkOWIxYjA5ZWE3MThi
ZjQ1N2JkNGU3YTc0ZjdjZGYxYmM4ZGE5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NvbmZp
Z3VyYXRpb25zL1dlYktpdC54Y2NvbmZpZworKysgYi9Tb3VyY2UvV2ViS2l0L0NvbmZpZ3VyYXRp
b25zL1dlYktpdC54Y2NvbmZpZwpAQCAtMzEsNyArMzEsMTAgQEAgSU5GT1BMSVNUX0ZJTEUgPSBJ
bmZvLnBsaXN0OwogREVGSU5FU19NT0RVTEUgPSBZRVM7CiBNT0RVTEVNQVBfRklMRSA9ICQoTU9E
VUxFTUFQX0ZJTEVfJChXS19DT0NPQV9UT1VDSCkpOwogTU9EVUxFTUFQX0ZJTEVfY29jb2F0b3Vj
aCA9IE1vZHVsZXMvaU9TLm1vZHVsZW1hcDsKLU1PRFVMRU1BUF9GSUxFXyA9IE1vZHVsZXMvT1NY
Lm1vZHVsZW1hcDsKK01PRFVMRU1BUF9GSUxFXyA9IE1vZHVsZXMvbWFjT1MubW9kdWxlbWFwOwor
TU9EVUxFTUFQX1BSSVZBVEVfRklMRSA9ICQoTU9EVUxFTUFQX1BSSVZBVEVfRklMRV8kKFdLX0NP
Q09BX1RPVUNIKSk7CitNT0RVTEVNQVBfUFJJVkFURV9GSUxFX2NvY29hdG91Y2ggPSBNb2R1bGVz
L2lPUy5wcml2YXRlLm1vZHVsZW1hcDsKK01PRFVMRU1BUF9QUklWQVRFX0ZJTEVfID0gTW9kdWxl
cy9tYWNPUy5wcml2YXRlLm1vZHVsZW1hcDsKIAogSU5TVEFMTF9QQVRIID0gJChXRUJLSVRfRlJB
TUVXT1JLU19ESVIpOwogRFlMSUJfSU5TVEFMTF9OQU1FX0JBU0UgPSAkKERZTElCX0lOU1RBTExf
TkFNRV9CQVNFXyQoV0tfVVNFX0FMVEVSTkFURV9GUkFNRVdPUktTX0RJUikpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9Nb2R1bGVzL09TWC5tb2R1bGVtYXAgYi9Tb3VyY2UvV2ViS2l0L01v
ZHVsZXMvT1NYLm1vZHVsZW1hcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggODljYTA3
NGY0NzgyOGM3MzY0YTFkMWZkYTA5OGY0N2VmOTdmNDBmOC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViS2l0L01vZHVsZXMvT1NYLm1vZHVs
ZW1hcAorKysgL2Rldi9udWxsCkBAIC0xLDE4ICswLDAgQEAKLWZyYW1ld29yayBtb2R1bGUgV2Vi
S2l0IFtzeXN0ZW1dIFtleHRlcm5fY10gewotICB1bWJyZWxsYSBoZWFkZXIgIldlYktpdC5oIgot
ICBtb2R1bGUgKiB7IGV4cG9ydCAqIH0KLSAgZXhwb3J0ICoKLSAgCi0gIGV4cGxpY2l0IG1vZHVs
ZSBOUEFQSSB7Ci0gICAgaGVhZGVyICJucHR5cGVzLmgiCi0gICAgaGVhZGVyICJucGFwaS5oIgot
ICAgIGhlYWRlciAibnBmdW5jdGlvbnMuaCIKLSAgICBoZWFkZXIgIm5wcnVudGltZS5oIgotICAg
IGV4cG9ydCAqCi0gIH0KLQotICBleHBsaWNpdCBtb2R1bGUgRE9NUHJvZ3Jlc3NFdmVudCB7Ci0g
ICAgaGVhZGVyICJET01Qcm9ncmVzc0V2ZW50LmgiCi0gICAgZXhwb3J0ICoKLSAgfQotfQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9Nb2R1bGVzL2lPUy5wcml2YXRlLm1vZHVsZW1hcCBiL1Nv
dXJjZS9XZWJLaXQvTW9kdWxlcy9pT1MucHJpdmF0ZS5tb2R1bGVtYXAKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDJk
ODJlOWE3NDUxZWY0MmYwOGM4ZjBiYmMzMzhmMzFmMDU1OWI2NgotLS0gL2Rldi9udWxsCisrKyBi
L1NvdXJjZS9XZWJLaXQvTW9kdWxlcy9pT1MucHJpdmF0ZS5tb2R1bGVtYXAKQEAgLTAsMCArMSw1
IEBACitmcmFtZXdvcmsgbW9kdWxlIFdlYktpdF9Qcml2YXRlIFtzeXN0ZW1dIFtleHRlcm5fY10g
eworICB1bWJyZWxsYSBoZWFkZXIgIldlYktpdFByaXZhdGUuaCIKKyAgbW9kdWxlICogeyBleHBv
cnQgKiB9CisgIGV4cG9ydCAqCit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L01vZHVsZXMv
bWFjT1MubW9kdWxlbWFwIGIvU291cmNlL1dlYktpdC9Nb2R1bGVzL21hY09TLm1vZHVsZW1hcApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi44OWNhMDc0ZjQ3ODI4YzczNjRhMWQxZmRhMDk4ZjQ3ZWY5N2Y0MGY4Ci0tLSAv
ZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9Nb2R1bGVzL21hY09TLm1vZHVsZW1hcApAQCAt
MCwwICsxLDE4IEBACitmcmFtZXdvcmsgbW9kdWxlIFdlYktpdCBbc3lzdGVtXSBbZXh0ZXJuX2Nd
IHsKKyAgdW1icmVsbGEgaGVhZGVyICJXZWJLaXQuaCIKKyAgbW9kdWxlICogeyBleHBvcnQgKiB9
CisgIGV4cG9ydCAqCisgIAorICBleHBsaWNpdCBtb2R1bGUgTlBBUEkgeworICAgIGhlYWRlciAi
bnB0eXBlcy5oIgorICAgIGhlYWRlciAibnBhcGkuaCIKKyAgICBoZWFkZXIgIm5wZnVuY3Rpb25z
LmgiCisgICAgaGVhZGVyICJucHJ1bnRpbWUuaCIKKyAgICBleHBvcnQgKgorICB9CisKKyAgZXhw
bGljaXQgbW9kdWxlIERPTVByb2dyZXNzRXZlbnQgeworICAgIGhlYWRlciAiRE9NUHJvZ3Jlc3NF
dmVudC5oIgorICAgIGV4cG9ydCAqCisgIH0KK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
TW9kdWxlcy9tYWNPUy5wcml2YXRlLm1vZHVsZW1hcCBiL1NvdXJjZS9XZWJLaXQvTW9kdWxlcy9t
YWNPUy5wcml2YXRlLm1vZHVsZW1hcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wMmQ4MmU5YTc0NTFlZjQyZjA4Yzhm
MGJiYzMzOGYzMWYwNTU5YjY2Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9Nb2R1
bGVzL21hY09TLnByaXZhdGUubW9kdWxlbWFwCkBAIC0wLDAgKzEsNSBAQAorZnJhbWV3b3JrIG1v
ZHVsZSBXZWJLaXRfUHJpdmF0ZSBbc3lzdGVtXSBbZXh0ZXJuX2NdIHsKKyAgdW1icmVsbGEgaGVh
ZGVyICJXZWJLaXRQcml2YXRlLmgiCisgIG1vZHVsZSAqIHsgZXhwb3J0ICogfQorICBleHBvcnQg
KgorfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TY3JpcHRzL2dlbmVyYXRlLXVtYnJlbGxh
LWhlYWRlci5weSBiL1NvdXJjZS9XZWJLaXQvU2NyaXB0cy9nZW5lcmF0ZS11bWJyZWxsYS1oZWFk
ZXIucHkKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uNTZjNmE3OTBjYmMwNjViOGVlMzdhZWJhNjA0OTQxYmEzYWEwYmVk
ZQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvU2NyaXB0cy9nZW5lcmF0ZS11bWJy
ZWxsYS1oZWFkZXIucHkKQEAgLTAsMCArMSw5MiBAQAorIyEvdXNyL2Jpbi9lbnYgcHl0aG9uMwor
IworIyBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
IworIyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKKyMgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisjIGFyZSBtZXQ6CisjIDEuICBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorIyAg
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyLgorIyAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyMgICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyMgICAgIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRp
b24uCisjCisjIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRT
IENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECisjIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisjIFdB
UlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIg
UFVSUE9TRSBBUkUKKyMgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBP
UiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IKKyMgQU5ZIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIyBEQU1B
R0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJ
VFVURSBHT09EUyBPUgorIyBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7
IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUgorIyBDQVVTRUQgQU5EIE9OIEFOWSBU
SEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZ
LAorIyBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorIyBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorCitpbXBvcnQgZmlsZWNt
cAoraW1wb3J0IG9zCitpbXBvcnQgcmUKKworCitkZWYgZ2VuZXJhdGVfdW1icmVsbGFfaGVhZGVy
KGlucHV0X2ZpbGVuYW1lLCBvdXRwdXRfZmlsZW5hbWUsIHRlbXBvdXRwdXRfZmlsZW5hbWUsIGhl
YWRlcl9kaXJuYW1lLCBmcmFtZXdvcmtfbmFtZSwgbW9kdWxlbWFwX2ZpbGVuYW1lKToKKyAgICBp
bmNsdWRlX3BhdHRlcm4gPSByZS5jb21waWxlKHIiXCMoaW5jbHVkZXxpbXBvcnQpXHMrXDwiICsg
ZnJhbWV3b3JrX25hbWUgKyByIlwvKC4qKVw+IikKKyAgICBleGNsdWRlX3BhdHRlcm4gPSByZS5j
b21waWxlKHInXHMqZXhjbHVkZVxzK2hlYWRlclxzKyIoLiopIicpCisKKyAgICBleGlzdGluZ19m
cmFtZXdvcmtfaGVhZGVycyA9IHNldCgpCisgICAgb3V0cHV0X2hlYWRlcnMgPSBbXQorICAgIGJs
b2NrbGlzdCA9IHsKKyAgICAgICAgIiVzUHJpdmF0ZS5oIiAlIGZyYW1ld29ya19uYW1lLAorICAg
ICAgICAiJXMuaCIgJSBmcmFtZXdvcmtfbmFtZSwKKyAgICB9CisKKyAgICB3aXRoIG9wZW4obW9k
dWxlbWFwX2ZpbGVuYW1lLCAiciIpIGFzIG1vZHVsZW1hcF9maWxlOgorICAgICAgICBmb3IgbGlu
ZSBpbiBtb2R1bGVtYXBfZmlsZToKKyAgICAgICAgICAgIG1hdGNoID0gZXhjbHVkZV9wYXR0ZXJu
LnNlYXJjaChsaW5lKQorICAgICAgICAgICAgaWYgbWF0Y2g6CisgICAgICAgICAgICAgICAgZXhp
c3RpbmdfZnJhbWV3b3JrX2hlYWRlcnMuYWRkKG1hdGNoLmdyb3VwKDEpKQorCisgICAgd2l0aCBv
cGVuKHRlbXBvdXRwdXRfZmlsZW5hbWUgb3Igb3V0cHV0X2ZpbGVuYW1lLCAidysiKSBhcyBvdXRw
dXRfZmlsZToKKyAgICAgICAgd2l0aCBvcGVuKGlucHV0X2ZpbGVuYW1lLCAiciIpIGFzIGlucHV0
X2ZpbGU6CisgICAgICAgICAgICBmb3IgbGluZSBpbiBpbnB1dF9maWxlOgorICAgICAgICAgICAg
ICAgIG1hdGNoID0gaW5jbHVkZV9wYXR0ZXJuLnNlYXJjaChsaW5lKQorICAgICAgICAgICAgICAg
IGlmIG1hdGNoOgorICAgICAgICAgICAgICAgICAgICBleGlzdGluZ19mcmFtZXdvcmtfaGVhZGVy
cy5hZGQobWF0Y2guZ3JvdXAoMikpCisKKyAgICAgICAgICAgICAgICBvdXRwdXRfZmlsZS53cml0
ZShsaW5lKQorCisgICAgICAgIGZvciAoZGlycGF0aCwgZGlybmFtZXMsIGZpbGVuYW1lcykgaW4g
b3Mud2FsayhoZWFkZXJfZGlybmFtZSk6CisgICAgICAgICAgICBmb3IgZmlsZSBpbiBmaWxlbmFt
ZXM6CisgICAgICAgICAgICAgICAgcGF0aCA9IG9zLnBhdGgucmVscGF0aChvcy5wYXRoLmpvaW4o
ZGlycGF0aCwgZmlsZSksIHN0YXJ0PWhlYWRlcl9kaXJuYW1lKQorCisgICAgICAgICAgICAgICAg
aWYgcGF0aCBpbiBibG9ja2xpc3Qgb3IgcGF0aCBpbiBleGlzdGluZ19mcmFtZXdvcmtfaGVhZGVy
cyBvciBub3QgcGF0aC5lbmRzd2l0aCgiLmgiKToKKyAgICAgICAgICAgICAgICAgICAgY29udGlu
dWUKKworICAgICAgICAgICAgICAgIG91dHB1dF9oZWFkZXJzLmFwcGVuZChwYXRoKQorCisgICAg
ICAgIG91dHB1dF9oZWFkZXJzLnNvcnQoKQorICAgICAgICBvdXRwdXRfZmlsZS53cml0ZSgiXG5c
biIpCisKKyAgICAgICAgZm9yIG91dHB1dF9oZWFkZXIgaW4gb3V0cHV0X2hlYWRlcnM6CisgICAg
ICAgICAgICBvdXRwdXRfZmlsZS53cml0ZSgiI2ltcG9ydCA8JXMvJXM+XG4iICUgKGZyYW1ld29y
a19uYW1lLCBvdXRwdXRfaGVhZGVyKSkKKworICAgIGlmIHRlbXBvdXRwdXRfZmlsZW5hbWUgYW5k
IChub3Qgb3MucGF0aC5leGlzdHMob3V0cHV0X2ZpbGVuYW1lKSBvciBub3QgZmlsZWNtcC5jbXAo
b3V0cHV0X2ZpbGVuYW1lLCB0ZW1wb3V0cHV0X2ZpbGVuYW1lKSk6CisgICAgICAgIG9zLnJlbmFt
ZSh0ZW1wb3V0cHV0X2ZpbGVuYW1lLCBvdXRwdXRfZmlsZW5hbWUpCisKKworaWYgX19uYW1lX18g
PT0gIl9fbWFpbl9fIjoKKyAgICBpbXBvcnQgYXJncGFyc2UKKyAgICBpbXBvcnQgc3lzCisKKyAg
ICBwYXJzZXIgPSBhcmdwYXJzZS5Bcmd1bWVudFBhcnNlcigpCisgICAgcGFyc2VyLmFkZF9hcmd1
bWVudCgiLS1pbnB1dCIsIHR5cGU9c3RyLCBkZWZhdWx0PU5vbmUsIGhlbHA9IklucHV0IGhlYWRl
ciBmaWxlIChpZS4gJHtTUkNST09UfS9XZWJLaXRQcml2YXRlLmgpIikKKyAgICBwYXJzZXIuYWRk
X2FyZ3VtZW50KCItLW91dHB1dCIsIHR5cGU9c3RyLCBkZWZhdWx0PU5vbmUsIGhlbHA9Ik91dHB1
dCBoZWFkZXIgZmlsZSAoaWUuICR7RFNUUk9PVH0vV2ViS2l0LmZyYW1ld29yay9Qcml2YXRlSGVh
ZGVycy9XZWJLaXRQcml2YXRlLmgpIikKKyAgICBwYXJzZXIuYWRkX2FyZ3VtZW50KCItLXRlbXBv
dXRwdXQiLCB0eXBlPXN0ciwgZGVmYXVsdD1Ob25lLCBoZWxwPSJUZW1wb3Jhcnkgb3V0cHV0IGZp
bGUgKGllLiAke1RBUkdFVF9URU1QX0RJUn0vV2ViS2l0UHJpdmF0ZS5oXG5JZiBzZXQsIHRoZSBo
ZWFkZXIgd2lsbCBiZSBnZW5lcmF0ZWQgdG8gdGhpcyBwYXRoLCBhbmQgdGhlIG91dHB1dCBwYXRo
IHdpbGwgb25seSBiZSB0b3VjaGVkIGlmIHRoZSBmaWxlIGNvbnRlbnRzIGhhdmUgY2hhbmdlZC4i
KQorICAgIHBhcnNlci5hZGRfYXJndW1lbnQoIi0taGVhZGVycyIsIHR5cGU9c3RyLCBkZWZhdWx0
PU5vbmUsIGhlbHA9IkhlYWRlciBkaXJlY3RvcnkgKGllLiAke0RTVFJPT1R9L1dlYktpdC5mcmFt
ZXdvcmsvUHJpdmF0ZUhlYWRlcnMpIikKKyAgICBwYXJzZXIuYWRkX2FyZ3VtZW50KCItLWZyYW1l
d29yayIsIHR5cGU9c3RyLCBkZWZhdWx0PU5vbmUsIGhlbHA9IkZyYW1ld29yayBuYW1lIChpZS4g
V2ViS2l0KSIpCisgICAgcGFyc2VyLmFkZF9hcmd1bWVudCgiLS1tb2R1bGVtYXAiLCB0eXBlPXN0
ciwgZGVmYXVsdD1Ob25lLCBoZWxwPSJNb2R1bGUgbWFwIGZpbGUgKGllLiBtb2R1bGUucHJpdmF0
ZS5tb2R1bGVtYXApIikKKyAgICBhcmdzID0gcGFyc2VyLnBhcnNlX2FyZ3MoKQorCisgICAgaWYg
YXJncy5pbnB1dCBpcyBOb25lIG9yIGFyZ3Mub3V0cHV0IGlzIE5vbmUgb3IgYXJncy5oZWFkZXJz
IGlzIE5vbmUgb3IgYXJncy5mcmFtZXdvcmsgaXMgTm9uZSBvciBhcmdzLm1vZHVsZW1hcCBpcyBO
b25lOgorICAgICAgICBwYXJzZXIucHJpbnRfaGVscCgpCisgICAgICAgIHN5cy5leGl0KDEpCisK
KyAgICBnZW5lcmF0ZV91bWJyZWxsYV9oZWFkZXIoYXJncy5pbnB1dCwgYXJncy5vdXRwdXQsIGFy
Z3MudGVtcG91dHB1dCwgYXJncy5oZWFkZXJzLCBhcmdzLmZyYW1ld29yaywgYXJncy5tb2R1bGVt
YXApCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9BUEkvQ29jb2EvV2ViS2l0Lmgg
Yi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9BUEkvQ29jb2EvV2ViS2l0LmgKZGVsZXRlZCBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IGYwNDU5OTU4ZTEzZjFhZTJlY2M4ZmM4NjkyMWMxMGRjN2QyMmI4MWEu
LjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dl
YktpdC9TaGFyZWQvQVBJL0NvY29hL1dlYktpdC5oCisrKyAvZGV2L251bGwKQEAgLTEsNzEgKzAs
MCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxNCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAx
LiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAq
ICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBM
RSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwotICogQU5EIEFOWSBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0g
KiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBG
T1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBT
SEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKLSAqIEJFIExJQUJMRSBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKLSAq
IENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBS
T0NVUkVNRU5UIE9GCi0gKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVT
RSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKLSAqIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCi0gKiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IgT1RIRVJXSVNFKQotICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRI
SVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgotICogVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgotICovCi0KLSNpbXBvcnQgPFdlYktpdC9OU0F0dHJpYnV0ZWRTdHJpbmcuaD4K
LSNpbXBvcnQgPFdlYktpdC9XS0JhY2tGb3J3YXJkTGlzdC5oPgotI2ltcG9ydCA8V2ViS2l0L1dL
QmFja0ZvcndhcmRMaXN0SXRlbS5oPgotI2ltcG9ydCA8V2ViS2l0L1dLQ29udGVudFJ1bGVMaXN0
Lmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tDb250ZW50UnVsZUxpc3RTdG9yZS5oPgotI2ltcG9ydCA8
V2ViS2l0L1dLQ29udGVudFdvcmxkLmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tDb250ZXh0TWVudUVs
ZW1lbnRJbmZvLmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tEb3dubG9hZC5oPgotI2ltcG9ydCA8V2Vi
S2l0L1dLRG93bmxvYWREZWxlZ2F0ZS5oPgotI2ltcG9ydCA8V2ViS2l0L1dLRXJyb3IuaD4KLSNp
bXBvcnQgPFdlYktpdC9XS0ZpbmRDb25maWd1cmF0aW9uLmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tG
aW5kUmVzdWx0Lmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tGb3VuZGF0aW9uLmg+Ci0jaW1wb3J0IDxX
ZWJLaXQvV0tGcmFtZUluZm8uaD4KLSNpbXBvcnQgPFdlYktpdC9XS0hUVFBDb29raWVTdG9yZS5o
PgotI2ltcG9ydCA8V2ViS2l0L1dLTmF2aWdhdGlvbi5oPgotI2ltcG9ydCA8V2ViS2l0L1dLTmF2
aWdhdGlvbkFjdGlvbi5oPgotI2ltcG9ydCA8V2ViS2l0L1dLTmF2aWdhdGlvbkRlbGVnYXRlLmg+
Ci0jaW1wb3J0IDxXZWJLaXQvV0tOYXZpZ2F0aW9uUmVzcG9uc2UuaD4KLSNpbXBvcnQgPFdlYktp
dC9XS09wZW5QYW5lbFBhcmFtZXRlcnMuaD4KLSNpbXBvcnQgPFdlYktpdC9XS1BERkNvbmZpZ3Vy
YXRpb24uaD4KLSNpbXBvcnQgPFdlYktpdC9XS1ByZWZlcmVuY2VzLmg+Ci0jaW1wb3J0IDxXZWJL
aXQvV0tQcmV2aWV3QWN0aW9uSXRlbS5oPgotI2ltcG9ydCA8V2ViS2l0L1dLUHJldmlld0FjdGlv
bkl0ZW1JZGVudGlmaWVycy5oPgotI2ltcG9ydCA8V2ViS2l0L1dLUHJldmlld0VsZW1lbnRJbmZv
Lmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tQcm9jZXNzUG9vbC5oPgotI2ltcG9ydCA8V2ViS2l0L1dL
U2NyaXB0TWVzc2FnZS5oPgotI2ltcG9ydCA8V2ViS2l0L1dLU2NyaXB0TWVzc2FnZUhhbmRsZXIu
aD4KLSNpbXBvcnQgPFdlYktpdC9XS1NjcmlwdE1lc3NhZ2VIYW5kbGVyV2l0aFJlcGx5Lmg+Ci0j
aW1wb3J0IDxXZWJLaXQvV0tTZWN1cml0eU9yaWdpbi5oPgotI2ltcG9ydCA8V2ViS2l0L1dLU25h
cHNob3RDb25maWd1cmF0aW9uLmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tVSURlbGVnYXRlLmg+Ci0j
aW1wb3J0IDxXZWJLaXQvV0tVUkxTY2hlbWVIYW5kbGVyLmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tV
UkxTY2hlbWVUYXNrLmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tVc2VyQ29udGVudENvbnRyb2xsZXIu
aD4KLSNpbXBvcnQgPFdlYktpdC9XS1VzZXJTY3JpcHQuaD4KLSNpbXBvcnQgPFdlYktpdC9XS1dl
YlZpZXcuaD4KLSNpbXBvcnQgPFdlYktpdC9XS1dlYlZpZXdDb25maWd1cmF0aW9uLmg+Ci0jaW1w
b3J0IDxXZWJLaXQvV0tXZWJwYWdlUHJlZmVyZW5jZXMuaD4KLSNpbXBvcnQgPFdlYktpdC9XS1dl
YnNpdGVEYXRhUmVjb3JkLmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tXZWJzaXRlRGF0YVN0b3JlLmg+
Ci0jaW1wb3J0IDxXZWJLaXQvV0tXaW5kb3dGZWF0dXJlcy5oPgotCi0jaWYgIWRlZmluZWQoVEFS
R0VUX09TX01BQ0NBVEFMWVNUKSB8fCAhVEFSR0VUX09TX01BQ0NBVEFMWVNUCi0jaW1wb3J0IDxX
ZWJLaXQvV2ViS2l0TGVnYWN5Lmg+Ci0jZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
U2hhcmVkL0FQSS9Db2NvYS9XZWJLaXQuaC5pbiBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0FQSS9D
b2NvYS9XZWJLaXQuaC5pbgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xMjIwYTk1YzFjYzdhMDg3MjBmNTQ4Mzk2Zjc1
M2E2MzVhNGU0YTgzCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9TaGFyZWQvQVBJ
L0NvY29hL1dlYktpdC5oLmluCkBAIC0wLDAgKzEsMjggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMp
IDIwMTQtMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgor
ICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgor
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJ
QlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElU
UyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsg
T1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBU
SEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNp
ZiAhZGVmaW5lZChUQVJHRVRfT1NfTUFDQ0FUQUxZU1QpIHx8ICFUQVJHRVRfT1NfTUFDQ0FUQUxZ
U1QKKyNpbXBvcnQgPFdlYktpdC9XZWJLaXRMZWdhY3kuaD4KKyNlbmRpZgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9TaGFyZWQvQVBJL0NvY29hL1dlYktpdFByaXZhdGUuaCBiL1NvdXJjZS9X
ZWJLaXQvU2hhcmVkL0FQSS9Db2NvYS9XZWJLaXRQcml2YXRlLmgKZGVsZXRlZCBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDE4YmYwYzVkOGE2M2FmZTM5MDMyZmI0NDdiNTIyNWU1MjE4NzZiZWEuLjAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYktp
dC9TaGFyZWQvQVBJL0NvY29hL1dlYktpdFByaXZhdGUuaAorKysgL2Rldi9udWxsCkBAIC0xLDQw
ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTQgQXBwbGUgSW5jLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0Ogot
ICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92
ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkg
Zm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhl
Ci0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkg
QVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKLSAqIEFORCBBTlkgRVhQ
UkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LAotICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5F
U1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZF
TlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCi0gKiBCRSBMSUFCTEUgRk9S
IEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9S
Ci0gKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBQUk9DVVJFTUVOVCBPRgotICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBP
RiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCi0gKiBJTlRFUlJVUFRJT04pIEhP
V0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgot
ICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SIE9USEVSV0lTRSkKLSAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBP
RiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKLSAqIFRIRSBQT1NTSUJJTElUWSBP
RiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW1wb3J0IDxXZWJLaXQvV0tIaXN0b3J5RGVsZWdhdGVQ
cml2YXRlLmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tOYXZpZ2F0aW9uUHJpdmF0ZS5oPgotI2ltcG9y
dCA8V2ViS2l0L1dLUHJvY2Vzc1Bvb2xQcml2YXRlLmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tVSURl
bGVnYXRlUHJpdmF0ZS5oPgotI2ltcG9ydCA8V2ViS2l0L1dLV2ViVmlld0NvbmZpZ3VyYXRpb25Q
cml2YXRlLmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tXZWJWaWV3UHJpdmF0ZS5oPgotI2ltcG9ydCA8
V2ViS2l0L19XS0FjdGl2YXRlZEVsZW1lbnRJbmZvLmg+Ci0jaW1wb3J0IDxXZWJLaXQvX1dLQXR0
YWNobWVudC5oPgotI2ltcG9ydCA8V2ViS2l0L19XS0VsZW1lbnRBY3Rpb24uaD4KLSNpbXBvcnQg
PFdlYktpdC9fV0tGb2N1c2VkRWxlbWVudEluZm8uaD4KLSNpbXBvcnQgPFdlYktpdC9fV0tGb3Jt
SW5wdXRTZXNzaW9uLmg+Ci0jaW1wb3J0IDxXZWJLaXQvX1dLSW5wdXREZWxlZ2F0ZS5oPgotI2lt
cG9ydCA8V2ViS2l0L19XS1Byb2Nlc3NQb29sQ29uZmlndXJhdGlvbi5oPgotI2ltcG9ydCA8V2Vi
S2l0L19XS1RodW1ibmFpbFZpZXcuaD4KLSNpbXBvcnQgPFdlYktpdC9fV0tWaXNpdGVkTGlua1N0
b3JlLmg+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9BUEkvQ29jb2EvV2ViS2l0
UHJpdmF0ZS5oLmluIGIvU291cmNlL1dlYktpdC9TaGFyZWQvQVBJL0NvY29hL1dlYktpdFByaXZh
dGUuaC5pbgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi45MTRkNzdjYTI1MWViZTBmOTYyNWJhYjdmNTVlNGExNGEzZWU0
MTljCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9TaGFyZWQvQVBJL0NvY29hL1dl
YktpdFByaXZhdGUuaC5pbgpAQCAtMCwwICsxLDI0IEBACisvKgorICogQ29weXJpZ2h0IChDKSAy
MDE0LTIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAq
IDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAq
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJV
VE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVS
UE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMg
Q09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMg
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9S
IEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhF
T1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvQVBJL2MvV0tJbW1lZGlhdGVBY3Rpb25UeXBlcy5o
IGIvU291cmNlL1dlYktpdC9TaGFyZWQvQVBJL2MvV0tJbW1lZGlhdGVBY3Rpb25UeXBlcy5oCmlu
ZGV4IDVmZGMyOWE5ZWU5MTQyZjQ0NDM0ZTQ3NGRmMThmYmM3OGM3ODdlNGIuLjVlYzM0OWZkOWZh
ZGM2YTEzNDIwMTZmY2ZlNTc1YWEwODE1ZjIyOGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
U2hhcmVkL0FQSS9jL1dLSW1tZWRpYXRlQWN0aW9uVHlwZXMuaAorKysgYi9Tb3VyY2UvV2ViS2l0
L1NoYXJlZC9BUEkvYy9XS0ltbWVkaWF0ZUFjdGlvblR5cGVzLmgKQEAgLTQxLDEwICs0MSw2IEBA
IGVudW0gewogICAgIGtXS0ltbWVkaWF0ZUFjdGlvblRlbExpbmsKIH07CiAKLSNpZm5kZWYgX1dL
SW1tZWRpYXRlQWN0aW9uVHlwZSAKLSNkZWZpbmUgX1dLSW1tZWRpYXRlQWN0aW9uVHlwZSB1aW50
MzJfdAotI2VuZGlmCi0KICNpZmRlZiBfX2NwbHVzcGx1cwogfQogI2VuZGlmCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tDb250ZXh0TWVudUVsZW1lbnRJ
bmZvUHJpdmF0ZS5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL1dLQ29udGV4
dE1lbnVFbGVtZW50SW5mb1ByaXZhdGUuaAppbmRleCAwOTI0ODM5ZTIwOTAyYWY2OWY3YjUzY2Vh
YTYwYWQzMmM0ZmE4NzI5Li42MTliYjQwODQ5MzhkNmRkYzQxY2NiZTYwMmYxODc4MDkxYmVhYzRh
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tDb250ZXh0
TWVudUVsZW1lbnRJbmZvUHJpdmF0ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQ
SS9Db2NvYS9XS0NvbnRleHRNZW51RWxlbWVudEluZm9Qcml2YXRlLmgKQEAgLTI1LDYgKzI1LDEw
IEBACiAKICNpbXBvcnQgPFdlYktpdC9XS0NvbnRleHRNZW51RWxlbWVudEluZm8uaD4KIAorI2lm
IFRBUkdFVF9PU19JUEhPTkUKKworTlNfQVNTVU1FX05PTk5VTExfQkVHSU4KKwogQGNsYXNzIF9X
S0FjdGl2YXRlZEVsZW1lbnRJbmZvOwogCiBAaW50ZXJmYWNlIFdLQ29udGV4dE1lbnVFbGVtZW50
SW5mbyAoV0tQcml2YXRlKQpAQCAtMzIsMyArMzYsNyBAQAogQHByb3BlcnR5IChub25hdG9taWMs
IGNvcHksIHJlYWRvbmx5KSBfV0tBY3RpdmF0ZWRFbGVtZW50SW5mbyAqX2FjdGl2YXRlZEVsZW1l
bnRJbmZvOwogCiBAZW5kCisKK05TX0FTU1VNRV9OT05OVUxMX0VORAorCisjZW5kaWYKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9T
b3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDdlZmY0
ZjI2ZTMzNTEyMmIwZjZlYjU5Y2I4MDE0YzExYmFkZTBlZWYuLjU3NWZiNzU3MDZiYTk0MzkxNmY4
N2EwZjc5NmE3NmIxODNmMTBiNWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMjUwLDggKzI1MCw2IEBACiAJCTFBNUU0REE0MTJEM0JE
M0QwMDk5QTJCQiAvKiBUZXh0Q2hlY2tlclN0YXRlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTVFNERBMzEyRDNCRDNEMDA5OUEyQkIgLyogVGV4dENo
ZWNrZXJTdGF0ZS5oICovOyB9OwogCQkxQTYwMjI0QzE4QzE2QjlGMDBDM0U4QzkgLyogVmlzaXRl
ZExpbmtTdG9yZU1lc3NhZ2VSZWNlaXZlci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSAxQTYwMjI0QTE4QzE2QjlGMDBDM0U4QzkgLyogVmlzaXRlZExp
bmtTdG9yZU1lc3NhZ2VSZWNlaXZlci5jcHAgKi87IH07CiAJCTFBNjAyMjREMThDMTZCOUYwMEMz
RThDOSAvKiBWaXNpdGVkTGlua1N0b3JlTWVzc2FnZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBNjAyMjRCMThDMTZCOUYwMEMzRThDOSAvKiBWaXNp
dGVkTGlua1N0b3JlTWVzc2FnZXMuaCAqLzsgfTsKLQkJMUE2MjgwQzUxOTE5OTQ5RjAwNkFEOUY5
IC8qIFdlYktpdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gMUE2MjgwQzQxOTE5OTQ5RjAwNkFEOUY5IC8qIFdlYktpdC5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFB1YmxpYywgKTsgfTsgfTsKLQkJMUE2MjgwQzcxOTE5OTUwQzAwNkFEOUY5
IC8qIFdlYktpdFByaXZhdGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDFBNjI4MEM2MTkxOTk1MEMwMDZBRDlGOSAvKiBXZWJLaXRQcml2YXRlLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMUE2MjgwRjMx
OTE5OTgyQTAwNkFEOUY5IC8qIFdlYktpdC5tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMUE2MjgwRjIxOTE5OTgyQTAwNkFEOUY5IC8qIFdlYktpdC5tICov
OyB9OwogCQkxQTY0MjBFNTEyRENFMkZGMDBDQUFFMkMgLyogU2hhcmVhYmxlQml0bWFwLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTY0MjBFMzEyRENF
MkZGMDBDQUFFMkMgLyogU2hhcmVhYmxlQml0bWFwLmggKi87IH07CiAJCTFBNjQyMjk5MTJERDAy
OTIwMENBQUUyQyAvKiBEcmF3aW5nQXJlYU1lc3NhZ2VSZWNlaXZlci5jcHAgaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTY0MjI5NzEyREQwMjkyMDBDQUFF
MkMgLyogRHJhd2luZ0FyZWFNZXNzYWdlUmVjZWl2ZXIuY3BwICovOyB9OwpAQCAtMjY2NCw4ICsy
NjYyLDggQEAKIAkJMUE2MDIyNDkxOEMxNkIwODAwQzNFOEM5IC8qIFZpc2l0ZWRMaW5rU3RvcmUu
bWVzc2FnZXMuaW4gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5
cGUgPSB0ZXh0OyBwYXRoID0gVmlzaXRlZExpbmtTdG9yZS5tZXNzYWdlcy5pbjsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUE2MDIyNEExOEMxNkI5RjAwQzNFOEM5IC8qIFZpc2l0ZWRM
aW5rU3RvcmVNZXNzYWdlUmVjZWl2ZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBuYW1lID0gVmlzaXRlZExpbmtTdG9yZU1lc3NhZ2VSZWNlaXZlci5jcHA7IHBhdGggPSBEZXJp
dmVkU291cmNlcy9XZWJLaXQyL1Zpc2l0ZWRMaW5rU3RvcmVNZXNzYWdlUmVjZWl2ZXIuY3BwOyBz
b3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OwogCQkxQTYwMjI0QjE4QzE2QjlGMDBD
M0U4QzkgLyogVmlzaXRlZExpbmtTdG9yZU1lc3NhZ2VzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgbmFtZSA9IFZpc2l0ZWRMaW5rU3RvcmVNZXNzYWdlcy5oOyBwYXRoID0gRGVyaXZlZFNv
dXJjZXMvV2ViS2l0Mi9WaXNpdGVkTGlua1N0b3JlTWVzc2FnZXMuaDsgc291cmNlVHJlZSA9IEJV
SUxUX1BST0RVQ1RTX0RJUjsgfTsKLQkJMUE2MjgwQzQxOTE5OTQ5RjAwNkFEOUY5IC8qIFdlYktp
dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJLaXQuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKLQkJMUE2MjgwQzYxOTE5OTUwQzAwNkFEOUY5IC8qIFdlYktpdFBy
aXZhdGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViS2l0UHJpdmF0ZS5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQTYyODBDNDE5MTk5NDlGMDA2QUQ5Rjkg
LyogV2ViS2l0LmguaW4gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gV2ViS2l0LmguaW47IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBNjI4MEM2MTkxOTk1MEMwMDZBRDlGOSAvKiBXZWJL
aXRQcml2YXRlLmguaW4gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gV2ViS2l0UHJpdmF0ZS5oLmlu
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQTYyODBGMjE5MTk5ODJBMDA2QUQ5Rjkg
LyogV2ViS2l0Lm0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMub2JqYzsgcGF0aCA9IFdlYktpdC5t
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQTY0MjBFMjEyRENFMkZGMDBDQUFFMkMg
LyogU2hhcmVhYmxlQml0bWFwLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IFNoYXJlYWJsZUJpdG1hcC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFB
NjQyMEUzMTJEQ0UyRkYwMENBQUUyQyAvKiBTaGFyZWFibGVCaXRtYXAuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gU2hhcmVhYmxlQml0bWFwLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CkBAIC04MjExLDkgKzgyMDksOSBAQAogCQkJCTFBQzEzMzgxMTg1OTBCMDUwMEYz
RUMwNSAvKiBSZW1vdGVPYmplY3RSZWdpc3RyeS5tZXNzYWdlcy5pbiAqLywKIAkJCQkxQUMxMzM3
RDE4NTkwQUU0MDBGM0VDMDUgLyogUmVtb3RlT2JqZWN0UmVnaXN0cnkubW0gKi8sCiAJCQkJMUE4
NUU0NzAxRTMwM0YyNDAwOTE0NTk5IC8qIFdlYktpdC5hcGlub3RlcyAqLywKLQkJCQkxQTYyODBD
NDE5MTk5NDlGMDA2QUQ5RjkgLyogV2ViS2l0LmggKi8sCisJCQkJMUE2MjgwQzQxOTE5OTQ5RjAw
NkFEOUY5IC8qIFdlYktpdC5oLmluICovLAogCQkJCTFBNjI4MEYyMTkxOTk4MkEwMDZBRDlGOSAv
KiBXZWJLaXQubSAqLywKLQkJCQkxQTYyODBDNjE5MTk5NTBDMDA2QUQ5RjkgLyogV2ViS2l0UHJp
dmF0ZS5oICovLAorCQkJCTFBNjI4MEM2MTkxOTk1MEMwMDZBRDlGOSAvKiBXZWJLaXRQcml2YXRl
LmguaW4gKi8sCiAJCQkJMUFFMDBENEIxODJENkVCMDAwMDg3REQ3IC8qIFdLQnJvd3NpbmdDb250
ZXh0SGFuZGxlLmggKi8sCiAJCQkJMUFFMDBENEExODJENkVCMDAwMDg3REQ3IC8qIFdLQnJvd3Np
bmdDb250ZXh0SGFuZGxlLm1tICovLAogCQkJCTFBRTAwRDRFMTgyRDZGNTAwMDA4N0RENyAvKiBX
S0Jyb3dzaW5nQ29udGV4dEhhbmRsZUludGVybmFsLmggKi8sCkBAIC0xMjMwNCwxMCArMTIzMDIs
OCBAQAogCQkJCUE1NUJBODJCMUJBMzhFNjEwMDdDRDMzRCAvKiBXZWJJbnNwZWN0b3JVdGlsaXRp
ZXMuaCBpbiBIZWFkZXJzICovLAogCQkJCTJEQTk0NEEwMTg4NEU0RjAwMEVEODZEQiAvKiBXZWJJ
T1NFdmVudEZhY3RvcnkuaCBpbiBIZWFkZXJzICovLAogCQkJCTFBODVFNDcyMUUzMDNGMzcwMDkx
NDU5OSAvKiBXZWJLaXQuYXBpbm90ZXMgaW4gSGVhZGVycyAqLywKLQkJCQkxQTYyODBDNTE5MTk5
NDlGMDA2QUQ5RjkgLyogV2ViS2l0LmggaW4gSGVhZGVycyAqLywKIAkJCQlCQ0I2MzQ3ODExNkJG
MTA2MDA2MDMyMTUgLyogV2ViS2l0Ml9DLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzlCQTUwNTE2
OTdDNDUzMDBFNDQ2MTYgLyogV2ViS2l0MkluaXRpYWxpemUuaCBpbiBIZWFkZXJzICovLAotCQkJ
CTFBNjI4MEM3MTkxOTk1MEMwMDZBRDlGOSAvKiBXZWJLaXRQcml2YXRlLmggaW4gSGVhZGVycyAq
LywKIAkJCQlDRDAwM0E1MzE5RDQ5QjVEMDA1QUJDRTAgLyogV2ViTWVkaWFLZXlTdG9yYWdlTWFu
YWdlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOUFDQzA3QjcyNUM4MUQzNDAwREM2Mzg2IC8qIFdl
Yk1lZGlhS2V5U3lzdGVtQ2xpZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQk5QjVCRUMyNjI0MDBG
NEE5MDA3MEM2RUYgLyogV2ViTWVkaWFTdHJhdGVneS5oIGluIEhlYWRlcnMgKi8sCkBAIC0xMjk1
Myw2ICsxMjk0OSw3IEBACiAJCQkJMUE2MjgwQzgxOTE5OTU2QjAwNkFEOUY5IC8qIE1pZ3JhdGUg
V2ViS2l0TGVnYWN5IEhlYWRlcnMgKi8sCiAJCQkJMzc1QTI0ODgxN0U1MDQ4RTAwQzlBMDg2IC8q
IFBvc3Rwcm9jZXNzIFdLQmFzZS5oICovLAogCQkJCTFBRDk4RUNGMTkxRDg2NzMwMENBQTZERiAv
KiBQb3N0cHJvY2VzcyBXS0ZvdW5kYXRpb24uaCAqLywKKwkJCQkzMUQ2MkI2NDI1RTVBMjk4MDAx
MzUwODkgLyogR2VuZXJhdGUgVW1icmVsbGEgSGVhZGVycyAqLywKIAkJCQlGNEVGQkFENTIyNTQw
Q0JCMDAwNDlCQTYgLyogUmVwbGFjZSBXZWJLaXRBZGRpdGlvbnMgaW4gRnJhbWV3b3JrIEhlYWRl
cnMgKi8sCiAJCQkJMUExRDIxMTUxOTFEOTYzODAwMDE2MTlGIC8qIFBvc3Rwcm9jZXNzIEZyYW1l
d29yayBIZWFkZXJzICovLAogCQkJCTJFMTZCNkY0MjAxOUJDMjUwMDg5OTZENiAvKiBDb3B5IEFk
ZGl0aW9uYWwgUmVzb3VyY2VzICovLApAQCAtMTMzNjcsNiArMTMzNjQsMzIgQEAKIAkJCXNoZWxs
UGF0aCA9IC9iaW4vc2g7CiAJCQlzaGVsbFNjcmlwdCA9ICJzZXQgLWVcblxuUkVMQVRJVkVfU09V
UkNFX1BBVEg9XCJ1c3IvbG9jYWwvaW5jbHVkZS9XZWJLaXRBZGRpdGlvbnMvV2ViS2l0L0FkZGl0
aW9uYWxSZXNvdXJjZXNcIlxuU09VUkNFX1BBVEg9XCIkQlVJTFRfUFJPRFVDVFNfRElSLyRSRUxB
VElWRV9TT1VSQ0VfUEFUSFwiXG5cbmlmIFtbICEgLWQgXCIkU09VUkNFX1BBVEhcIiBdXTsgdGhl
blxuICAgIFNPVVJDRV9QQVRIPVwiJFNES19ESVIvJFJFTEFUSVZFX1NPVVJDRV9QQVRIXCJcbmZp
XG5cbmlmIFtbIC1kIFwiJFNPVVJDRV9QQVRIXCIgXV07IHRoZW5cbiAgICBkaXR0byAkU09VUkNF
X1BBVEggXCIkQlVJTFRfUFJPRFVDVFNfRElSLyRVTkxPQ0FMSVpFRF9SRVNPVVJDRVNfRk9MREVS
X1BBVEhcIlxuZmlcbiI7CiAJCX07CisJCTMxRDYyQjY0MjVFNUEyOTgwMDEzNTA4OSAvKiBHZW5l
cmF0ZSBVbWJyZWxsYSBIZWFkZXJzICovID0geworCQkJaXNhID0gUEJYU2hlbGxTY3JpcHRCdWls
ZFBoYXNlOworCQkJYnVpbGRBY3Rpb25NYXNrID0gMjE0NzQ4MzY0NzsKKwkJCWZpbGVzID0gKAor
CQkJKTsKKwkJCWlucHV0RmlsZUxpc3RQYXRocyA9ICgKKwkJCSk7CisJCQlpbnB1dFBhdGhzID0g
KAorCQkJCSIkKFNSQ1JPT1QpL1NjcmlwdHMvZ2VuZXJhdGUtdW1icmVsbGEtaGVhZGVycy5weSIs
CisJCQkJIiQoU1JDUk9PVCkvU2hhcmVkL0FQSS9Db2NvYS9XZWJLaXRQcml2YXRlLmguaW4iLAor
CQkJCSIkKFNSQ1JPT1QpLyQoTU9EVUxFTUFQX1BSSVZBVEVfRklMRSkiLAorCQkJCSIkKFBST0pF
Q1RfRklMRV9QQVRIKS9wcm9qZWN0LnBieHByb2oiLAorCQkJCSIkKFNSQ1JPT1QpL1NoYXJlZC9B
UEkvQ29jb2EvV2ViS2l0LmguaW4iLAorCQkJCSIkKFNSQ1JPT1QpLyQoTU9EVUxFTUFQX0ZJTEUp
IiwKKwkJCSk7CisJCQluYW1lID0gIkdlbmVyYXRlIFVtYnJlbGxhIEhlYWRlcnMiOworCQkJb3V0
cHV0RmlsZUxpc3RQYXRocyA9ICgKKwkJCSk7CisJCQlvdXRwdXRQYXRocyA9ICgKKwkJCQkiJChC
VUlMVF9QUk9EVUNUU19ESVIpLyQoUFJJVkFURV9IRUFERVJTX0ZPTERFUl9QQVRIKS9XZWJLaXRQ
cml2YXRlLmgiLAorCQkJCSIkKEJVSUxEX1BST0RVQ1RTX0RJUikvJChIRUFERVJTX0ZPTERFUl9Q
QVRIKS9XZWJLaXQuaCIsCisJCQkpOworCQkJcnVuT25seUZvckRlcGxveW1lbnRQb3N0cHJvY2Vz
c2luZyA9IDA7CisJCQlzaGVsbFBhdGggPSAvYmluL3NoOworCQkJc2hlbGxTY3JpcHQgPSAiXCIk
e1NSQ1JPT1R9L1NjcmlwdHMvZ2VuZXJhdGUtdW1icmVsbGEtaGVhZGVyLnB5XCIgLS1pbnB1dCBc
IiR7U1JDUk9PVH0vU2hhcmVkL0FQSS9Db2NvYS9XZWJLaXRQcml2YXRlLmguaW5cIiAtLW91dHB1
dCBcIiR7QlVJTFRfUFJPRFVDVFNfRElSfS8ke1BSSVZBVEVfSEVBREVSU19GT0xERVJfUEFUSH0v
V2ViS2l0UHJpdmF0ZS5oXCIgLS10ZW1wb3V0cHV0IFwiJHtUQVJHRVRfVEVNUF9ESVJ9L1dlYktp
dFByaXZhdGUuaFwiIC0taGVhZGVycyBcIiR7QlVJTFRfUFJPRFVDVFNfRElSfS8ke1BSSVZBVEVf
SEVBREVSU19GT0xERVJfUEFUSH1cIiAtLWZyYW1ld29yayBcIiR7UFJPRFVDVF9NT0RVTEVfTkFN
RX1cIiAtLW1vZHVsZW1hcCBcIiR7U1JDUk9PVH0vJHtNT0RVTEVNQVBfUFJJVkFURV9GSUxFfVwi
XG5cIiR7U1JDUk9PVH0vU2NyaXB0cy9nZW5lcmF0ZS11bWJyZWxsYS1oZWFkZXIucHlcIiAtLWlu
cHV0IFwiJHtTUkNST09UfS9TaGFyZWQvQVBJL0NvY29hL1dlYktpdC5oLmluXCIgLS1vdXRwdXQg
XCIke0JVSUxUX1BST0RVQ1RTX0RJUn0vJHtQVUJMSUNfSEVBREVSU19GT0xERVJfUEFUSH0vV2Vi
S2l0LmhcIiAtLXRlbXBvdXRwdXQgXCIke1RBUkdFVF9URU1QX0RJUn0vV2ViS2l0LmhcIiAtLWhl
YWRlcnMgXCIke0JVSUxUX1BST0RVQ1RTX0RJUn0vJHtQVUJMSUNfSEVBREVSU19GT0xERVJfUEFU
SH1cIiAtLWZyYW1ld29yayBcIiR7UFJPRFVDVF9NT0RVTEVfTkFNRX1cIiAtLW1vZHVsZW1hcCBc
IiR7U1JDUk9PVH0vJHtNT0RVTEVNQVBfRklMRX1cIlxuIjsKKwkJfTsKIAkJMzcxM0YwMjMxNDI5
MDYzRDAwMzYzODdGIC8qIENoZWNrIEZvciBJbmFwcHJvcHJpYXRlIE9iamVjdGl2ZS1DIENsYXNz
IE5hbWVzICovID0gewogCQkJaXNhID0gUEJYU2hlbGxTY3JpcHRCdWlsZFBoYXNlOwogCQkJYnVp
bGRBY3Rpb25NYXNrID0gMjE0NzQ4MzY0NzsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdh
Y3kvbWFjL01pc2MvTlNVUkxEb3dubG9hZFNQSS5oIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMv
TWlzYy9OU1VSTERvd25sb2FkU1BJLmgKaW5kZXggZGI3NmJhMWQ0MTRhZTM3NDEwZGI2OTkwMjI0
YWFiNzgwMjkxZGU5OC4uOGI4NDk3OTA5MGU0Njg3NTIzODQ5MjYwOGRhZjc3MTY1MjZlMmI2MSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvTWlzYy9OU1VSTERvd25sb2FkU1BJ
LmgKKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvTWlzYy9OU1VSTERvd25sb2FkU1BJLmgK
QEAgLTIzLDcgKzIzLDEwIEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAg
Ki8KIAorCisjaWYgVEFSR0VUX09TX0lQSE9ORSAmJiAhKGRlZmluZWQgVVNFX0FQUExFX0lOVEVS
TkFMX1NESyAmJiBVU0VfQVBQTEVfSU5URVJOQUxfU0RLKQogQGludGVyZmFjZSBOU1VSTERvd25s
b2FkIDogTlNPYmplY3QKIEBlbmQKKyNlbmRpZgogCiBAcHJvdG9jb2wgTlNVUkxEb3dubG9hZERl
bGVnYXRlOwo=
</data>
<flag name="commit-queue"
          id="444540"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
      

    </bug>

</bugzilla>