<?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>231784</bug_id>
          
          <creation_ts>2021-10-14 16:45:21 -0700</creation_ts>
          <short_desc>[Cocoa] Web Inspector: remove _WKInspectorExtensionPrivateForTesting</short_desc>
          <delta_ts>2021-10-17 12:00:51 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Web Inspector</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</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="Blaze Burg">bburg</reporter>
          <assigned_to name="Blaze Burg">bburg</assigned_to>
          <cc>bburg</cc>
    
    <cc>inspector-bugzilla-changes</cc>
    
    <cc>pangle</cc>
    
    <cc>timothy</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1804591</commentid>
    <comment_count>0</comment_count>
    <who name="Blaze Burg">bburg</who>
    <bug_when>2021-10-14 16:45:21 -0700</bug_when>
    <thetext>Turns out this is needed to implement some parts of Web Extensions.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1804592</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-10-14 16:45:40 -0700</bug_when>
    <thetext>&lt;rdar://problem/84280608&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1804608</commentid>
    <comment_count>2</comment_count>
      <attachid>441307</attachid>
    <who name="Blaze Burg">bburg</who>
    <bug_when>2021-10-14 16:56:46 -0700</bug_when>
    <thetext>Created attachment 441307
Patch v1.0

This patch must land after a corresponding Safari change to stop using this header/method.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1804903</commentid>
    <comment_count>3</comment_count>
      <attachid>441401</attachid>
    <who name="Blaze Burg">bburg</who>
    <bug_when>2021-10-15 10:53:59 -0700</bug_when>
    <thetext>Created attachment 441401
Patch v1.0.1 (rebased)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1804909</commentid>
    <comment_count>4</comment_count>
      <attachid>441401</attachid>
    <who name="Patrick Angle">pangle</who>
    <bug_when>2021-10-15 11:02:32 -0700</bug_when>
    <thetext>Comment on attachment 441401
Patch v1.0.1 (rebased)

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

&gt; Source/WebKit/UIProcess/API/Cocoa/_WKInspectorExtension.h:85
&gt; +- (void)evaluateScript:(NSString *)scriptSource inTabWithIdentifier:(NSString *)tabIdentifier completionHandler:(void(^)(NSError * _Nullable, NSDictionary * _Nullable result))completionHandler;

Can this be above `reloadIgnoringCache` so it is next to the other `evaluateScript`?

&gt; Source/WebKit/UIProcess/API/Cocoa/_WKInspectorExtension.mm:126
&gt; +- (void)evaluateScript:(NSString *)scriptSource inTabWithIdentifier:(NSString *)extensionTabIdentifier completionHandler:(void(^)(NSError *, NSDictionary *))completionHandler

Ditto _WKInspectorExtension.h:85</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1804910</commentid>
    <comment_count>5</comment_count>
    <who name="Blaze Burg">bburg</who>
    <bug_when>2021-10-15 11:04:44 -0700</bug_when>
    <thetext>(In reply to Patrick Angle from comment #4)
&gt; Comment on attachment 441401 [details]
&gt; Patch v1.0.1 (rebased)
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=441401&amp;action=review
&gt; 
&gt; &gt; Source/WebKit/UIProcess/API/Cocoa/_WKInspectorExtension.h:85
&gt; &gt; +- (void)evaluateScript:(NSString *)scriptSource inTabWithIdentifier:(NSString *)tabIdentifier completionHandler:(void(^)(NSError * _Nullable, NSDictionary * _Nullable result))completionHandler;
&gt; 
&gt; Can this be above `reloadIgnoringCache` so it is next to the other
&gt; `evaluateScript`?
&gt; 
&gt; &gt; Source/WebKit/UIProcess/API/Cocoa/_WKInspectorExtension.mm:126
&gt; &gt; +- (void)evaluateScript:(NSString *)scriptSource inTabWithIdentifier:(NSString *)extensionTabIdentifier completionHandler:(void(^)(NSError *, NSDictionary *))completionHandler
&gt; 
&gt; Ditto _WKInspectorExtension.h:85

Sure!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1804913</commentid>
    <comment_count>6</comment_count>
      <attachid>441405</attachid>
    <who name="Blaze Burg">bburg</who>
    <bug_when>2021-10-15 11:08:25 -0700</bug_when>
    <thetext>Created attachment 441405
Patch v1.1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1805124</commentid>
    <comment_count>7</comment_count>
    <who name="Blaze Burg">bburg</who>
    <bug_when>2021-10-15 16:39:32 -0700</bug_when>
    <thetext>(In reply to BJ Burg from comment #6)
&gt; Created attachment 441405 [details]
&gt; Patch v1.1

Looks like I forgot one.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1805125</commentid>
    <comment_count>8</comment_count>
      <attachid>441455</attachid>
    <who name="Blaze Burg">bburg</who>
    <bug_when>2021-10-15 16:43:47 -0700</bug_when>
    <thetext>Created attachment 441455
Patch v1.1.1 (rebased)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1805192</commentid>
    <comment_count>9</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-10-15 20:33:39 -0700</bug_when>
    <thetext>ChangeLog entry in Source/WebKit/ChangeLog contains OOPS!.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1805399</commentid>
    <comment_count>10</comment_count>
    <who name="Blaze Burg">bburg</who>
    <bug_when>2021-10-17 12:00:51 -0700</bug_when>
    <thetext>Committed r284337 (243132@main): &lt;https://commits.webkit.org/243132@main&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>441307</attachid>
            <date>2021-10-14 16:56:46 -0700</date>
            <delta_ts>2021-10-15 10:53:57 -0700</delta_ts>
            <desc>Patch v1.0</desc>
            <filename>bug-231784-20211014165645.patch</filename>
            <type>text/plain</type>
            <size>22374</size>
            <attacher name="Blaze Burg">bburg</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgzOTIxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGFmNDgwMDZjZjhiNGVmNDU1
MTgzNzkxZTgyNTU1N2EyODI0NjhlNGEuLmUyMjExMjM1NmE3ZWExM2Y1NDgyOGY2NWVmNmVjYTYz
OTBiZmI3ZDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjIgQEAKKzIwMjEtMTAtMTQgIEJKIEJ1cmcg
IDxiYnVyZ0BhcHBsZS5jb20+CisKKyAgICAgICAgW0NvY29hXSBXZWIgSW5zcGVjdG9yOiByZW1v
dmUgX1dLSW5zcGVjdG9yRXh0ZW5zaW9uUHJpdmF0ZUZvclRlc3RpbmcKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMTc4NAorICAgICAgICA8cmRhcjov
L3Byb2JsZW0vODQyODA2MDg+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgUHJvbW90ZSB0aGUgb25seSBtZXRob2QgdG8gYmUgQVBJIGZvciBfV0tJbnNw
ZWN0b3JFeHRlbnNpb24uIEl0IGlzIG5lZWRlZAorICAgICAgICB0byBpbXBsZW1lbnQgc29tZSBw
YXJ0cyBvZiB0aGUgZGV2dG9vbHMgQVBJLgorCisgICAgICAgICogU291cmNlc0NvY29hLnR4dDoK
KyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0NvY29hL19XS0luc3BlY3RvckV4dGVuc2lvbi5oOgor
ICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLSW5zcGVjdG9yRXh0ZW5zaW9uLm1tOgor
ICAgICAgICAoLVtfV0tJbnNwZWN0b3JFeHRlbnNpb24gZXZhbHVhdGVTY3JpcHQ6aW5UYWJXaXRo
SWRlbnRpZmllcjpjb21wbGV0aW9uSGFuZGxlcjpdKToKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJ
L0NvY29hL19XS0luc3BlY3RvckV4dGVuc2lvblByaXZhdGVGb3JUZXN0aW5nLmg6IFJlbW92ZWQu
CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tJbnNwZWN0b3JFeHRlbnNpb25UZXN0
aW5nLm1tOiBSZW1vdmVkLgorICAgICAgICAqIFdlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qOgorCiAyMDIxLTEwLTEzICBCSiBCdXJnICA8YmJ1cmdAYXBwbGUuY29tPgogCiAgICAgICAg
IFtDb2NvYV0gV2ViIEluc3BlY3RvcjogaGFuZGxlIFByb21pc2Ugb2JqZWN0cyByZXR1cm5lZCBm
cm9tIGV2YWx1YXRlU2NyaXB0SW5FeHRlbnNpb25UYWIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvU291cmNlc0NvY29hLnR4dCBiL1NvdXJjZS9XZWJLaXQvU291cmNlc0NvY29hLnR4dAppbmRl
eCAzNzIyZWY4ZjVmM2VjN2MwY2FiZjVmNzA5ZTI5ZDU2YmRjYzcxYjczLi4zYzdiNGFlZGM4MDc4
OWI1NGI5ZmM4NjlmMTNlMDE0MDUyYzk2MTNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1Nv
dXJjZXNDb2NvYS50eHQKKysrIGIvU291cmNlL1dlYktpdC9Tb3VyY2VzQ29jb2EudHh0CkBAIC0y
ODgsNyArMjg4LDYgQEAgVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tJbnNwZWN0b3JDb25maWd1cmF0
aW9uLm1tCiBVSVByb2Nlc3MvQVBJL0NvY29hL19XS0luc3BlY3RvclRlc3RpbmcubW0KIFVJUHJv
Y2Vzcy9BUEkvQ29jb2EvX1dLSW5zcGVjdG9yRGVidWdnYWJsZUluZm8ubW0KIFVJUHJvY2Vzcy9B
UEkvQ29jb2EvX1dLSW5zcGVjdG9yRXh0ZW5zaW9uLm1tCi1VSVByb2Nlc3MvQVBJL0NvY29hL19X
S0luc3BlY3RvckV4dGVuc2lvblRlc3RpbmcubW0KIFVJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLSW5z
cGVjdG9yV2luZG93Lm1tCiBVSVByb2Nlc3MvQVBJL0NvY29hL19XS0ludGVybmFsRGVidWdGZWF0
dXJlLm1tCiBVSVByb2Nlc3MvQVBJL0NvY29hL19XS0xpbmtJY29uUGFyYW1ldGVycy5tbQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL19XS0luc3BlY3RvckV4
dGVuc2lvbi5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL19XS0luc3BlY3Rv
ckV4dGVuc2lvbi5oCmluZGV4IGYxZDcxNDA0NTJjMzdjZjQ1MWU2YWJkNmY2NzdmYzE3NjUzMGNh
MTkuLmQxYjU4NDkxNWQ5MmQ1Njg3YmI2NmFhYzhhZGE4MDU4OTQ5NmFiNTggMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tJbnNwZWN0b3JFeHRlbnNpb24u
aAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLSW5zcGVjdG9yRXh0
ZW5zaW9uLmgKQEAgLTc0LDYgKzc0LDE2IEBAIFdLX0NMQVNTX0FWQUlMQUJMRShtYWNvcygxMi4w
KSkKICAqLwogLSAodm9pZClyZWxvYWRJZ25vcmluZ0NhY2hlOihCT09MKWlnbm9yZUNhY2hlIHVz
ZXJBZ2VudDooTlNTdHJpbmcgKil1c2VyQWdlbnQgaW5qZWN0ZWRTY3JpcHQ6KE5TU3RyaW5nICop
aW5qZWN0ZWRTY3JpcHQgY29tcGxldGlvbkhhbmRsZXI6KHZvaWQoXikoTlNFcnJvciAqIF9OdWxs
YWJsZSkpY29tcGxldGlvbkhhbmRsZXI7CiAKKy8qKgorICogQGFic3RyYWN0IEV2YWx1YXRlcyBK
YXZhU2NyaXB0IGluIHRoZSBjb250ZXh0IG9mIGEgV2ViIEluc3BlY3RvciB0YWIgY3JlYXRlZCBi
eSB0aGlzIF9XS0luc3BlY3RvckV4dGVuc2lvbi4KKyAqIEBwYXJhbSBzY3JpcHRTb3VyY2UgVGhl
IEphdmFTY3JpcHQgY29kZSB0byBiZSBldmFsdWF0ZWQuCisgKiBAcGFyYW0gdGFiSWRlbnRpZmll
ciBJZGVudGlmaWVyIGZvciB0aGUgV2ViIEluc3BlY3RvciB0YWIgaW4gd2hpY2ggdG8gZXZhbHVh
dGUgSmF2YVNjcmlwdC4KKyAqIEBwYXJhbSBjb21wbGV0aW9uSGFuZGxlciBBIGJsb2NrIHRvIGlu
dm9rZSB3aGVuIHRoZSBvcGVyYXRpb24gY29tcGxldGVzIG9yIGZhaWxzLgorICogQGRpc2N1c3Np
b24gVGhlIGNvbXBsZXRpb25IYW5kbGVyIGlzIHBhc3NlZCBhbiBOU0pTT05TZXJpYWxpemF0aW9u
LWNvbXBhdGlibGUgTlNPYmplY3QgcmVwcmVzZW50aW5nIHRoZSBldmFsdWF0aW9uIHJlc3VsdCwg
b3IgYW4gZXJyb3IuCisgKiBzY3JpcHRTb3VyY2UgaXMgdHJlYXRlZCBhcyBhIHRvcC1sZXZlbCBl
dmFsdWF0aW9uLiBCeSBkZWZhdWx0LCB0aGUgc2NyaXB0IGlzIGV2YWx1YXRlZCBpbiB0aGUgaW5z
cGVjdGVkIHBhZ2UncyBzY3JpcHQgY29udGV4dC4KKyAqLworLSAodm9pZClldmFsdWF0ZVNjcmlw
dDooTlNTdHJpbmcgKilzY3JpcHRTb3VyY2UgaW5UYWJXaXRoSWRlbnRpZmllcjooTlNTdHJpbmcg
Kil0YWJJZGVudGlmaWVyIGNvbXBsZXRpb25IYW5kbGVyOih2b2lkKF4pKE5TRXJyb3IgKiBfTnVs
bGFibGUsIE5TRGljdGlvbmFyeSAqIF9OdWxsYWJsZSByZXN1bHQpKWNvbXBsZXRpb25IYW5kbGVy
OworCiBAcHJvcGVydHkgKHJlYWRvbmx5LCBub25hdG9taWMpIE5TU3RyaW5nICpleHRlbnNpb25J
RDsKIAogLyoqCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2Ev
X1dLSW5zcGVjdG9yRXh0ZW5zaW9uLm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0Nv
Y29hL19XS0luc3BlY3RvckV4dGVuc2lvbi5tbQppbmRleCA0NjU2MWQzNDMxNGE3OWQ0MmM1N2U1
OWJmNzkyN2FkMWZhNDUxMDQ1Li42M2M5Mzg5YTNlZDA2NmE5YzRhODEwZDFjOGU2MWNiZDk0YWU4
NmVjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLSW5z
cGVjdG9yRXh0ZW5zaW9uLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2Nv
YS9fV0tJbnNwZWN0b3JFeHRlbnNpb24ubW0KQEAgLTI4LDYgKzI4LDcgQEAKIAogI2lmIEVOQUJM
RShJTlNQRUNUT1JfRVhURU5TSU9OUykKIAorI2ltcG9ydCAiQVBJU2VyaWFsaXplZFNjcmlwdFZh
bHVlLmgiCiAjaW1wb3J0ICJJbnNwZWN0b3JFeHRlbnNpb25EZWxlZ2F0ZS5oIgogI2ltcG9ydCAi
SW5zcGVjdG9yRXh0ZW5zaW9uVHlwZXMuaCIKICNpbXBvcnQgIldLRXJyb3IuaCIKQEAgLTEyMiw2
ICsxMjMsMjUgQEAgLSAodm9pZClyZWxvYWRJZ25vcmluZ0NhY2hlOihCT09MKWlnbm9yZUNhY2hl
IHVzZXJBZ2VudDooTlNTdHJpbmcgKil1c2VyQWdlbnQgaW4KICAgICB9KTsKIH0KIAorLSAodm9p
ZClldmFsdWF0ZVNjcmlwdDooTlNTdHJpbmcgKilzY3JpcHRTb3VyY2UgaW5UYWJXaXRoSWRlbnRp
ZmllcjooTlNTdHJpbmcgKilleHRlbnNpb25UYWJJZGVudGlmaWVyIGNvbXBsZXRpb25IYW5kbGVy
Oih2b2lkKF4pKE5TRXJyb3IgKiwgTlNEaWN0aW9uYXJ5ICopKWNvbXBsZXRpb25IYW5kbGVyCit7
CisgICAgX2V4dGVuc2lvbi0+ZXZhbHVhdGVTY3JpcHRJbkV4dGVuc2lvblRhYihleHRlbnNpb25U
YWJJZGVudGlmaWVyLCBzY3JpcHRTb3VyY2UsIFtwcm90ZWN0ZWRTZWxmID0gcmV0YWluUHRyKHNl
bGYpLCBjYXB0dXJlZEJsb2NrID0gbWFrZUJsb2NrUHRyKFdURk1vdmUoY29tcGxldGlvbkhhbmRs
ZXIpKV0gKEluc3BlY3Rvcjo6RXh0ZW5zaW9uRXZhbHVhdGlvblJlc3VsdCYmIHJlc3VsdCkgbXV0
YWJsZSB7CisgICAgICAgIGlmICghcmVzdWx0KSB7CisgICAgICAgICAgICBjYXB0dXJlZEJsb2Nr
KFtOU0Vycm9yIGVycm9yV2l0aERvbWFpbjpXS0Vycm9yRG9tYWluIGNvZGU6V0tFcnJvclVua25v
d24gdXNlckluZm86QHsgTlNMb2NhbGl6ZWRGYWlsdXJlUmVhc29uRXJyb3JLZXk6IEluc3BlY3Rv
cjo6ZXh0ZW5zaW9uRXJyb3JUb1N0cmluZyhyZXN1bHQuZXJyb3IoKSkgfV0sIG5pbCk7CisgICAg
ICAgICAgICByZXR1cm47CisgICAgICAgIH0KKyAgICAgICAgCisgICAgICAgIGF1dG8gdmFsdWVP
ckV4Y2VwdGlvbiA9IHJlc3VsdC52YWx1ZSgpOworICAgICAgICBpZiAoIXZhbHVlT3JFeGNlcHRp
b24pIHsKKyAgICAgICAgICAgIGNhcHR1cmVkQmxvY2sobnNFcnJvckZyb21FeGNlcHRpb25EZXRh
aWxzKHZhbHVlT3JFeGNlcHRpb24uZXJyb3IoKSkuZ2V0KCksIG5pbCk7CisgICAgICAgICAgICBy
ZXR1cm47CisgICAgICAgIH0KKworICAgICAgICBpZCBib2R5ID0gQVBJOjpTZXJpYWxpemVkU2Ny
aXB0VmFsdWU6OmRlc2VyaWFsaXplKHZhbHVlT3JFeGNlcHRpb24udmFsdWUoKS0+aW50ZXJuYWxS
ZXByZXNlbnRhdGlvbigpLCAwKTsKKyAgICAgICAgY2FwdHVyZWRCbG9jayhuaWwsIGJvZHkpOwor
ICAgIH0pOworfQorCiAvLyBNQVJLOiBQcm9wZXJ0aWVzLgogCiAtIChOU1N0cmluZyAqKWV4dGVu
c2lvbklECmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dL
SW5zcGVjdG9yRXh0ZW5zaW9uUHJpdmF0ZUZvclRlc3RpbmcuaCBiL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL0FQSS9Db2NvYS9fV0tJbnNwZWN0b3JFeHRlbnNpb25Qcml2YXRlRm9yVGVzdGluZy5o
CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwZDVhMTU2OGFhZGE0M2NjZTIwNmExNWUw
ODFiOWE0NjI1ZjNhZGM1Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tJbnNwZWN0b3JFeHRl
bnNpb25Qcml2YXRlRm9yVGVzdGluZy5oCisrKyAvZGV2L251bGwKQEAgLTEsMzggKzAsMCBAQAot
LyoKLSAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
Ci0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRp
c3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdo
dAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3Qg
cmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRv
Y3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0
cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMu
IEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwotICogQU5EIEFOWSBFWFBSRVNTIE9SIElN
UExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBUSEUg
SU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQ
QVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBB
UFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKLSAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVD
VCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKLSAqIENPTlNF
UVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVN
RU5UIE9GCi0gKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFU
QSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKLSAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVT
RUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCi0gKiBDT05UUkFD
VCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RI
RVJXSVNFKQotICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09G
VFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgotICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFN
QUdFLgotICovCi0KLSNpbXBvcnQgIl9XS0luc3BlY3RvckV4dGVuc2lvbi5oIgotCi0jaWYgIVRB
UkdFVF9PU19JUEhPTkUKLQotTlNfQVNTVU1FX05PTk5VTExfQkVHSU4KLQotQGludGVyZmFjZSBf
V0tJbnNwZWN0b3JFeHRlbnNpb24gKFdLVGVzdGluZykKLS0gKHZvaWQpX2V2YWx1YXRlU2NyaXB0
OihOU1N0cmluZyAqKXNjcmlwdFNvdXJjZSBpbkV4dGVuc2lvblRhYldpdGhJZGVudGlmaWVyOihO
U1N0cmluZyAqKWV4dGVuc2lvblRhYklkZW50aWZpZXIgY29tcGxldGlvbkhhbmRsZXI6KHZvaWQo
XikoTlNFcnJvciAqIF9OdWxsYWJsZSwgTlNEaWN0aW9uYXJ5ICogX051bGxhYmxlIHJlc3VsdCkp
Y29tcGxldGlvbkhhbmRsZXI7Ci1AZW5kCi0KLU5TX0FTU1VNRV9OT05OVUxMX0VORAotCi0jZW5k
aWYgLy8gIVRBUkdFVF9PU19JUEhPTkUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL0FQSS9Db2NvYS9fV0tJbnNwZWN0b3JFeHRlbnNpb25UZXN0aW5nLm1tIGIvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL19XS0luc3BlY3RvckV4dGVuc2lvblRlc3RpbmcubW0K
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDQxYzZhNmYwOGFhMGI5YTY1OGE4OWJjMGY3
YzNhYzAzMTViOGQ4OGUuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAK
LS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL19XS0luc3BlY3RvckV4dGVu
c2lvblRlc3RpbmcubW0KKysrIC9kZXYvbnVsbApAQCAtMSw2NSArMCwwIEBACi0vKgotICogQ29w
eXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBS
ZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9y
IHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRo
ZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9u
cyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2Ug
dGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlv
biBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4K
LSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBD
T05UUklCVVRPUlMgYGBBUyBJUycnCi0gKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJS
QU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFRIRSBJTVBMSUVEIFdB
UlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIK
LSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4g
T1IgSVRTIENPTlRSSUJVVE9SUwotICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVD
VCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgotICogQ09OU0VRVUVOVElBTCBE
QU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKLSAq
IFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9G
SVRTOyBPUiBCVVNJTkVTUwotICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04g
QU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KLSAqIENPTlRSQUNULCBTVFJJQ1Qg
TElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCi0g
KiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GCi0gKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8K
LQotI2ltcG9ydCAiY29uZmlnLmgiCi0KLSNpZiBFTkFCTEUoSU5TUEVDVE9SX0VYVEVOU0lPTlMp
Ci0KLSNpbXBvcnQgIkFQSVNlcmlhbGl6ZWRTY3JpcHRWYWx1ZS5oIgotI2ltcG9ydCAiSW5zcGVj
dG9yRXh0ZW5zaW9uVHlwZXMuaCIKLSNpbXBvcnQgIldLRXJyb3IuaCIKLSNpbXBvcnQgIldLV2Vi
Vmlld0ludGVybmFsLmgiCi0jaW1wb3J0ICJfV0tJbnNwZWN0b3JFeHRlbnNpb25JbnRlcm5hbC5o
IgotI2ltcG9ydCAiX1dLSW5zcGVjdG9yRXh0ZW5zaW9uUHJpdmF0ZUZvclRlc3RpbmcuaCIKLSNp
bXBvcnQgPFdlYkNvcmUvRXhjZXB0aW9uRGV0YWlscy5oPgotI2ltcG9ydCA8V2ViQ29yZS9XZWJD
b3JlT2JqQ0V4dHJhcy5oPgotI2ltcG9ydCA8d3RmL0Jsb2NrUHRyLmg+Ci0KLS8vIFRoaXMgZmls
ZSBleGlzdHMgdG8gY2VudHJhbGl6ZSBhbGwgZnJhZ2lsZSBjb2RlIHRoYXQgaXMgdXNlZCBieSBf
V0tJbnNwZWN0b3JFeHRlbnNpb24gQVBJIHRlc3RzLgotCi1AaW1wbGVtZW50YXRpb24gX1dLSW5z
cGVjdG9yRXh0ZW5zaW9uIChXS1Rlc3RpbmcpCi0KLS0gKHZvaWQpX2V2YWx1YXRlU2NyaXB0OihO
U1N0cmluZyAqKXNjcmlwdFNvdXJjZSBpbkV4dGVuc2lvblRhYldpdGhJZGVudGlmaWVyOihOU1N0
cmluZyAqKWV4dGVuc2lvblRhYklkZW50aWZpZXIgY29tcGxldGlvbkhhbmRsZXI6KHZvaWQoXiko
TlNFcnJvciAqLCBOU0RpY3Rpb25hcnkgKikpY29tcGxldGlvbkhhbmRsZXIKLXsKLSAgICBfZXh0
ZW5zaW9uLT5ldmFsdWF0ZVNjcmlwdEluRXh0ZW5zaW9uVGFiKGV4dGVuc2lvblRhYklkZW50aWZp
ZXIsIHNjcmlwdFNvdXJjZSwgW3Byb3RlY3RlZFNlbGYgPSByZXRhaW5QdHIoc2VsZiksIGNhcHR1
cmVkQmxvY2sgPSBtYWtlQmxvY2tQdHIoV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpXSAoSW5z
cGVjdG9yOjpFeHRlbnNpb25FdmFsdWF0aW9uUmVzdWx0JiYgcmVzdWx0KSBtdXRhYmxlIHsKLSAg
ICAgICAgaWYgKCFyZXN1bHQpIHsKLSAgICAgICAgICAgIGNhcHR1cmVkQmxvY2soW05TRXJyb3Ig
ZXJyb3JXaXRoRG9tYWluOldLRXJyb3JEb21haW4gY29kZTpXS0Vycm9yVW5rbm93biB1c2VySW5m
bzpAeyBOU0xvY2FsaXplZEZhaWx1cmVSZWFzb25FcnJvcktleTogSW5zcGVjdG9yOjpleHRlbnNp
b25FcnJvclRvU3RyaW5nKHJlc3VsdC5lcnJvcigpKSB9XSwgbmlsKTsKLSAgICAgICAgICAgIHJl
dHVybjsKLSAgICAgICAgfQotICAgICAgICAKLSAgICAgICAgYXV0byB2YWx1ZU9yRXhjZXB0aW9u
ID0gcmVzdWx0LnZhbHVlKCk7Ci0gICAgICAgIGlmICghdmFsdWVPckV4Y2VwdGlvbikgewotICAg
ICAgICAgICAgY2FwdHVyZWRCbG9jayhuc0Vycm9yRnJvbUV4Y2VwdGlvbkRldGFpbHModmFsdWVP
ckV4Y2VwdGlvbi5lcnJvcigpKS5nZXQoKSwgbmlsKTsKLSAgICAgICAgICAgIHJldHVybjsKLSAg
ICAgICAgfQotCi0gICAgICAgIGlkIGJvZHkgPSBBUEk6OlNlcmlhbGl6ZWRTY3JpcHRWYWx1ZTo6
ZGVzZXJpYWxpemUodmFsdWVPckV4Y2VwdGlvbi52YWx1ZSgpLT5pbnRlcm5hbFJlcHJlc2VudGF0
aW9uKCksIDApOwotICAgICAgICBjYXB0dXJlZEJsb2NrKG5pbCwgYm9keSk7Ci0gICAgfSk7Ci19
Ci0KLUBlbmQKLQotI2VuZGlmIC8vIEVOQUJMRShJTlNQRUNUT1JfRVhURU5TSU9OUykKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9T
b3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IGU3OWFj
MDhlOWFjOTdhNTA4NjEwZmQ5MGI3ZDE5YzFmOTgzN2Y0ZWYuLjE4NTkwYzZkZjM4ZjBiNzFjOTA0
ZjU0MGRkMmEwMTgzMWIzNjA5MTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMTU3NSw4ICsxNTc1LDYgQEAKIAkJOTlCMTY3NjQyNTJC
QkU2MjAwNzMxNDBFIC8qIFdlYkluc3BlY3RvclVJRXh0ZW5zaW9uQ29udHJvbGxlci5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTlCMTY3NjEyNTJCQkU2
MTAwNzMxNDBFIC8qIFdlYkluc3BlY3RvclVJRXh0ZW5zaW9uQ29udHJvbGxlci5oICovOyB9Owog
CQk5OUMzQUUyRDFEQURBNkFEMDBBRjVDMTYgLyogV2ViQXV0b21hdGlvblNlc3Npb25NYWNyb3Mu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk5QzNBRTJD
MURBREE2QTcwMEFGNUMxNiAvKiBXZWJBdXRvbWF0aW9uU2Vzc2lvbk1hY3Jvcy5oICovOyB9Owog
CQk5OUM2MDdFQjI2RkE5RDQ5MDBBMDk1M0YgLyogX1dLSW5zcGVjdG9ySUJBY3Rpb25zLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5OUM2MDdFQTI2RkE5
RDQ4MDBBMDk1M0YgLyogX1dLSW5zcGVjdG9ySUJBY3Rpb25zLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKLQkJOTlDNjA3RjAyNkZCOTFFODAwQTA5NTNG
IC8qIF9XS0luc3BlY3RvckV4dGVuc2lvblByaXZhdGVGb3JUZXN0aW5nLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5OUM2MDdFRTI2RkI5MUU4MDBBMDk1
M0YgLyogX1dLSW5zcGVjdG9yRXh0ZW5zaW9uUHJpdmF0ZUZvclRlc3RpbmcuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwotCQk5OUM2MDdGMTI2RkI5MUU5
MDBBMDk1M0YgLyogX1dLSW5zcGVjdG9yRXh0ZW5zaW9uVGVzdGluZy5tbSBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk5QzYwN0VGMjZGQjkxRTgwMEEwOTUz
RiAvKiBfV0tJbnNwZWN0b3JFeHRlbnNpb25UZXN0aW5nLm1tICovOyB9OwogCQk5OUM4MUQ1QTFD
MjBFN0UyMDA1QzRDODIgLyogQXV0b21hdGlvbkNsaWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTlDODFENTUxQzIwREZCRTAwNUM0QzgyIC8qIEF1
dG9tYXRpb25DbGllbnQuaCAqLzsgfTsKIAkJOTlDODFENUQxQzIxRjM4QjAwNUM0QzgyIC8qIEFQ
SUF1dG9tYXRpb25DbGllbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDk5QzgxRDVCMUMyMEU4MTcwMDVDNEM4MiAvKiBBUElBdXRvbWF0aW9uQ2xpZW50
LmggKi87IH07CiAJCTk5RTcxNEM1MUMxMjRBMDQwMDY2NUIzQSAvKiBfV0tBdXRvbWF0aW9uRGVs
ZWdhdGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk5
RTcxNEMxMUMxMjQ5RTYwMDY2NUIzQSAvKiBfV0tBdXRvbWF0aW9uRGVsZWdhdGUuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwpAQCAtNTEzMiw4ICs1MTMw
LDYgQEAKIAkJOTlDM0FFMjYxREFEOTQ4NTAwQUY1QzE2IC8qIFdlYkF1dG9tYXRpb25TZXNzaW9u
Q29jb2EubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBXZWJBdXRv
bWF0aW9uU2Vzc2lvbkNvY29hLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5OUMz
QUUyQzFEQURBNkE3MDBBRjVDMTYgLyogV2ViQXV0b21hdGlvblNlc3Npb25NYWNyb3MuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViQXV0b21hdGlvblNlc3Npb25NYWNyb3Mu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTlDNjA3RUEyNkZBOUQ0ODAwQTA5NTNG
IC8qIF9XS0luc3BlY3RvcklCQWN0aW9ucy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBfV0tJbnNwZWN0b3JJQkFjdGlvbnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
LQkJOTlDNjA3RUUyNkZCOTFFODAwQTA5NTNGIC8qIF9XS0luc3BlY3RvckV4dGVuc2lvblByaXZh
dGVGb3JUZXN0aW5nLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IF9XS0luc3Bl
Y3RvckV4dGVuc2lvblByaXZhdGVGb3JUZXN0aW5nLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07Ci0JCTk5QzYwN0VGMjZGQjkxRTgwMEEwOTUzRiAvKiBfV0tJbnNwZWN0b3JFeHRlbnNpb25U
ZXN0aW5nLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gX1dLSW5z
cGVjdG9yRXh0ZW5zaW9uVGVzdGluZy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
OTlDODFENTUxQzIwREZCRTAwNUM0QzgyIC8qIEF1dG9tYXRpb25DbGllbnQuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQXV0b21hdGlvbkNsaWVudC5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQk5OUM4MUQ1NjFDMjBERkJFMDA1QzRDODIgLyogQXV0b21hdGlvbkNs
aWVudC5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IEF1dG9tYXRp
b25DbGllbnQubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTk5QzgxRDVCMUMyMEU4
MTcwMDVDNEM4MiAvKiBBUElBdXRvbWF0aW9uQ2xpZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEFQSUF1dG9tYXRpb25DbGllbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKQEAgLTgyMjYsOCArODIyMiw2IEBACiAJCQkJOTk2QjJCQTAyNUUyNTkxMTAwNzE5Mzc5
IC8qIF9XS0luc3BlY3RvckV4dGVuc2lvbkRlbGVnYXRlLmggKi8sCiAJCQkJOTk3OTY1QTIyNTMx
MjhDNzAwQjMxQUUzIC8qIF9XS0luc3BlY3RvckV4dGVuc2lvbkhvc3QuaCAqLywKIAkJCQk5OUIx
Njc1NTI1MkJCN0UxMDA3MzE0MEUgLyogX1dLSW5zcGVjdG9yRXh0ZW5zaW9uSW50ZXJuYWwuaCAq
LywKLQkJCQk5OUM2MDdFRTI2RkI5MUU4MDBBMDk1M0YgLyogX1dLSW5zcGVjdG9yRXh0ZW5zaW9u
UHJpdmF0ZUZvclRlc3RpbmcuaCAqLywKLQkJCQk5OUM2MDdFRjI2RkI5MUU4MDBBMDk1M0YgLyog
X1dLSW5zcGVjdG9yRXh0ZW5zaW9uVGVzdGluZy5tbSAqLywKIAkJCQk5OUM2MDdFQTI2RkE5RDQ4
MDBBMDk1M0YgLyogX1dLSW5zcGVjdG9ySUJBY3Rpb25zLmggKi8sCiAJCQkJNUNBRkRFNDQyMTMw
ODQzNjAwQjFGN0UxIC8qIF9XS0luc3BlY3RvckludGVybmFsLmggKi8sCiAJCQkJOTk3OUNBNTcy
MzdGNDlGMDAwMzlFQzA1IC8qIF9XS0luc3BlY3RvclByaXZhdGUuaCAqLywKQEAgLTEyMDIxLDcg
KzEyMDE1LDYgQEAKIAkJCQk5OTZCMkJBMTI1RTI1OTExMDA3MTkzNzkgLyogX1dLSW5zcGVjdG9y
RXh0ZW5zaW9uRGVsZWdhdGUuaCBpbiBIZWFkZXJzICovLAogCQkJCTk5Nzk2NUEzMjUzMTI4Qzcw
MEIzMUFFMyAvKiBfV0tJbnNwZWN0b3JFeHRlbnNpb25Ib3N0LmggaW4gSGVhZGVycyAqLywKIAkJ
CQk5OUIxNjc1ODI1MkJCN0UxMDA3MzE0MEUgLyogX1dLSW5zcGVjdG9yRXh0ZW5zaW9uSW50ZXJu
YWwuaCBpbiBIZWFkZXJzICovLAotCQkJCTk5QzYwN0YwMjZGQjkxRTgwMEEwOTUzRiAvKiBfV0tJ
bnNwZWN0b3JFeHRlbnNpb25Qcml2YXRlRm9yVGVzdGluZy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
OTlDNjA3RUIyNkZBOUQ0OTAwQTA5NTNGIC8qIF9XS0luc3BlY3RvcklCQWN0aW9ucy5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJNUNBRkRFNDcyMTMwODQ2QTAwQjFGN0UxIC8qIF9XS0luc3BlY3Rvcklu
dGVybmFsLmggaW4gSGVhZGVycyAqLywKIAkJCQk5OTc5Q0E1ODIzN0Y0OUYxMDAzOUVDMDUgLyog
X1dLSW5zcGVjdG9yUHJpdmF0ZS5oIGluIEhlYWRlcnMgKi8sCkBAIC0xNDQ0Niw3ICsxNDQzOSw2
IEBACiAJCQkJNTc5MEE2ODEyNTY3QTFBQzAwNzdDNUE3IC8qIF9XS0F1dGhlbnRpY2F0b3JSZXNw
b25zZS5tbSBpbiBTb3VyY2VzICovLAogCQkJCTU3OTBBNjY3MjU2NzlDRUEwMDc3QzVBNyAvKiBf
V0tBdXRoZW50aWNhdG9yU2VsZWN0aW9uQ3JpdGVyaWEubW0gaW4gU291cmNlcyAqLywKIAkJCQk1
Q0JENTk1QzIyODBFREY0MDAyQjIyQUEgLyogX1dLQ3VzdG9tSGVhZGVyRmllbGRzLm1tIGluIFNv
dXJjZXMgKi8sCi0JCQkJOTlDNjA3RjEyNkZCOTFFOTAwQTA5NTNGIC8qIF9XS0luc3BlY3RvckV4
dGVuc2lvblRlc3RpbmcubW0gaW4gU291cmNlcyAqLywKIAkJCQk1NzkwQTY3NTI1Njc5Rjc0MDA3
N0M1QTcgLyogX1dLUHVibGljS2V5Q3JlZGVudGlhbENyZWF0aW9uT3B0aW9ucy5tbSBpbiBTb3Vy
Y2VzICovLAogCQkJCTU3OTBBNjZEMjU2NzlFQjcwMDc3QzVBNyAvKiBfV0tQdWJsaWNLZXlDcmVk
ZW50aWFsRGVzY3JpcHRvci5tbSBpbiBTb3VyY2VzICovLAogCQkJCTU3OTBBNjU3MjU2Nzk5REEw
MDc3QzVBNyAvKiBfV0tQdWJsaWNLZXlDcmVkZW50aWFsRW50aXR5Lm1tIGluIFNvdXJjZXMgKi8s
CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggOWU4
ZTIxZjc1Y2FkYWE0MDRmOThlNjNkNTVhYzRmMjUwOWNmYjM4Mi4uN2UxNGY3ODU3ZTU0MDNhMzg3
OTkwNTBjMjc3YTgxY2EyNWRhMzk5ZSAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBi
L1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDIxLTEwLTE0ICBCSiBCdXJnICA8
YmJ1cmdAYXBwbGUuY29tPgorCisgICAgICAgIFtDb2NvYV0gV2ViIEluc3BlY3RvcjogcmVtb3Zl
IF9XS0luc3BlY3RvckV4dGVuc2lvblByaXZhdGVGb3JUZXN0aW5nCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzE3ODQKKyAgICAgICAgPHJkYXI6Ly9w
cm9ibGVtLzg0MjgwNjA4PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9XS0luc3BlY3RvckV4
dGVuc2lvbi5tbToKKyAgICAgICAgKFRFU1QpOgorCiAyMDIxLTEwLTEzICBCSiBCdXJnICA8YmJ1
cmdAYXBwbGUuY29tPgogCiAgICAgICAgIFtDb2NvYV0gV2ViIEluc3BlY3RvcjogaGFuZGxlIFBy
b21pc2Ugb2JqZWN0cyByZXR1cm5lZCBmcm9tIGV2YWx1YXRlU2NyaXB0SW5FeHRlbnNpb25UYWIK
ZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvV0tJbnNw
ZWN0b3JFeHRlbnNpb24ubW0gYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29h
L1dLSW5zcGVjdG9yRXh0ZW5zaW9uLm1tCmluZGV4IDFkN2UzZWU0YmMxZDQ0YjhkNDdmZmNiOWYy
Y2MzOGQ1YTA4Y2EzMTEuLjRiOTA1ZjZiNTE0ZWFjYjAzYmE1ZDBhNWYyODA5MzFkZTE2YTY3ZWMg
MTAwNjQ0Ci0tLSBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvV0tJbnNw
ZWN0b3JFeHRlbnNpb24ubW0KKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRD
b2NvYS9XS0luc3BlY3RvckV4dGVuc2lvbi5tbQpAQCAtMzYsNyArMzYsNiBAQAogI2ltcG9ydCA8
V2ViS2l0L19XS0luc3BlY3RvckNvbmZpZ3VyYXRpb24uaD4KICNpbXBvcnQgPFdlYktpdC9fV0tJ
bnNwZWN0b3JFeHRlbnNpb24uaD4KICNpbXBvcnQgPFdlYktpdC9fV0tJbnNwZWN0b3JFeHRlbnNp
b25EZWxlZ2F0ZS5oPgotI2ltcG9ydCA8V2ViS2l0L19XS0luc3BlY3RvckV4dGVuc2lvblByaXZh
dGVGb3JUZXN0aW5nLmg+CiAjaW1wb3J0IDxXZWJLaXQvX1dLSW5zcGVjdG9yUHJpdmF0ZUZvclRl
c3RpbmcuaD4KICNpbXBvcnQgPHd0Zi9SZXRhaW5QdHIuaD4KIApAQCAtMTU4LDcgKzE1Nyw3IEBA
IFRFU1QoV0tJbnNwZWN0b3JFeHRlbnNpb24sIENhbkV2YWx1YXRlU2NyaXB0SW5FeHRlbnNpb25U
YWIpCiAgICAgLy8gUmVhZCBiYWNrIGEgdmFsdWUgdGhhdCBpcyBzZXQgaW4gdGhlIDxpZnJhbWU+
J3Mgc2NyaXB0IGNvbnRleHQuCiAgICAgcGVuZGluZ0NhbGxiYWNrV2FzQ2FsbGVkID0gZmFsc2U7
CiAgICAgYXV0byBzY3JpcHRTb3VyY2UyID0gQCJ3aW5kb3cuX3NlY3JldFZhbHVlIjsKLSAgICBb
c2hhcmVkSW5zcGVjdG9yRXh0ZW5zaW9uIF9ldmFsdWF0ZVNjcmlwdDpzY3JpcHRTb3VyY2UyIGlu
RXh0ZW5zaW9uVGFiV2l0aElkZW50aWZpZXI6c2hhcmVkRXh0ZW5zaW9uVGFiSWRlbnRpZmllci5n
ZXQoKSBjb21wbGV0aW9uSGFuZGxlcjpeKE5TRXJyb3IgKiBfTnVsbGFibGUgZXJyb3IsIE5TRGlj
dGlvbmFyeSAqIF9OdWxsYWJsZSByZXN1bHQpIHsKKyAgICBbc2hhcmVkSW5zcGVjdG9yRXh0ZW5z
aW9uIGV2YWx1YXRlU2NyaXB0OnNjcmlwdFNvdXJjZTIgaW5UYWJXaXRoSWRlbnRpZmllcjpzaGFy
ZWRFeHRlbnNpb25UYWJJZGVudGlmaWVyLmdldCgpIGNvbXBsZXRpb25IYW5kbGVyOl4oTlNFcnJv
ciAqIF9OdWxsYWJsZSBlcnJvciwgTlNEaWN0aW9uYXJ5ICogX051bGxhYmxlIHJlc3VsdCkgewog
ICAgICAgICBFWFBFQ1RfTlVMTChlcnJvcik7CiAgICAgICAgIEVYUEVDVF9OT1RfTlVMTChyZXN1
bHQpOwogICAgICAgICBFWFBFQ1RfTlNfRVFVQUwocmVzdWx0W0AiYW5zd2VyIl0sIEA0Mik7CkBA
IC0xNzAsNyArMTY5LDcgQEAgVEVTVChXS0luc3BlY3RvckV4dGVuc2lvbiwgQ2FuRXZhbHVhdGVT
Y3JpcHRJbkV4dGVuc2lvblRhYikKICAgICAvLyBDaGVjayB0byBzZWUgdGhhdCBzY3JpcHQgaXMg
YWN0dWFsbHkgYmVpbmcgZXZhbHVhdGVkIGluIHRoZSA8aWZyYW1lPidzIHNjcmlwdCBjb250ZXh0
LgogICAgIHBlbmRpbmdDYWxsYmFja1dhc0NhbGxlZCA9IGZhbHNlOwogICAgIGF1dG8gc2NyaXB0
U291cmNlMyA9IEAid2luZG93LnRvcCAhPT0gd2luZG93IjsKLSAgICBbc2hhcmVkSW5zcGVjdG9y
RXh0ZW5zaW9uIF9ldmFsdWF0ZVNjcmlwdDpzY3JpcHRTb3VyY2UzIGluRXh0ZW5zaW9uVGFiV2l0
aElkZW50aWZpZXI6c2hhcmVkRXh0ZW5zaW9uVGFiSWRlbnRpZmllci5nZXQoKSBjb21wbGV0aW9u
SGFuZGxlcjpeKE5TRXJyb3IgKiBfTnVsbGFibGUgZXJyb3IsIE5TRGljdGlvbmFyeSAqIF9OdWxs
YWJsZSByZXN1bHQpIHsKKyAgICBbc2hhcmVkSW5zcGVjdG9yRXh0ZW5zaW9uIGV2YWx1YXRlU2Ny
aXB0OnNjcmlwdFNvdXJjZTMgaW5UYWJXaXRoSWRlbnRpZmllcjpzaGFyZWRFeHRlbnNpb25UYWJJ
ZGVudGlmaWVyLmdldCgpIGNvbXBsZXRpb25IYW5kbGVyOl4oTlNFcnJvciAqIF9OdWxsYWJsZSBl
cnJvciwgTlNEaWN0aW9uYXJ5ICogX051bGxhYmxlIHJlc3VsdCkgewogICAgICAgICBFWFBFQ1Rf
TlVMTChlcnJvcik7CiAgICAgICAgIEVYUEVDVF9OT1RfTlVMTChyZXN1bHQpOwogICAgICAgICBF
WFBFQ1RfTlNfRVFVQUwocmVzdWx0LCBAWUVTKTsKQEAgLTI0OSw3ICsyNDgsNyBAQCBURVNUKFdL
SW5zcGVjdG9yRXh0ZW5zaW9uLCBFeHRlbnNpb25UYWJJc1BlcnNpc3RlbnQpCiAKICAgICAvLyBS
ZWFkIGJhY2sgYSB2YWx1ZSB0aGF0IGlzIHVuaXF1ZSB0byB0aGUgPGlmcmFtZT4ncyBzY3JpcHQg
Y29udGV4dC4KICAgICBwZW5kaW5nQ2FsbGJhY2tXYXNDYWxsZWQgPSBmYWxzZTsKLSAgICBbc2hh
cmVkSW5zcGVjdG9yRXh0ZW5zaW9uIF9ldmFsdWF0ZVNjcmlwdDpzY3JpcHRTb3VyY2UgaW5FeHRl
bnNpb25UYWJXaXRoSWRlbnRpZmllcjpzaGFyZWRFeHRlbnNpb25UYWJJZGVudGlmaWVyLmdldCgp
IGNvbXBsZXRpb25IYW5kbGVyOl4oTlNFcnJvciAqIF9OdWxsYWJsZSBlcnJvciwgTlNEaWN0aW9u
YXJ5ICogX051bGxhYmxlIHJlc3VsdCkgeworICAgIFtzaGFyZWRJbnNwZWN0b3JFeHRlbnNpb24g
ZXZhbHVhdGVTY3JpcHQ6c2NyaXB0U291cmNlIGluVGFiV2l0aElkZW50aWZpZXI6c2hhcmVkRXh0
ZW5zaW9uVGFiSWRlbnRpZmllci5nZXQoKSBjb21wbGV0aW9uSGFuZGxlcjpeKE5TRXJyb3IgKiBf
TnVsbGFibGUgZXJyb3IsIE5TRGljdGlvbmFyeSAqIF9OdWxsYWJsZSByZXN1bHQpIHsKICAgICAg
ICAgRVhQRUNUX05VTEwoZXJyb3IpOwogICAgICAgICBFWFBFQ1RfTk9UX05VTEwocmVzdWx0KTsK
ICAgICAgICAgZXZhbHVhdGlvblJlc3VsdCA9IHJlc3VsdDsKQEAgLTI2NSw3ICsyNjQsNyBAQCBU
RVNUKFdLSW5zcGVjdG9yRXh0ZW5zaW9uLCBFeHRlbnNpb25UYWJJc1BlcnNpc3RlbnQpCiAgICAg
Ly8gQ2hlY2sgdGhlIHVuaXF1ZSB2YWx1ZSBhZ2Fpbiwgd2hpbGUgdGhlIDxpZnJhbWU+IGlzIGJl
aW5nIGhpZGRlbi4gSWYgdGhlIDxpZnJhbWU+IGlzCiAgICAgLy8gZGV0YWNoZWQgZnJvbSB0aGUg
RE9NLCB0aGVuIHRoaXMgZXZhbHVhdGlvbiB3aWxsIGZhaWwgb3IgaGFuZy4KICAgICBwZW5kaW5n
Q2FsbGJhY2tXYXNDYWxsZWQgPSBmYWxzZTsKLSAgICBbc2hhcmVkSW5zcGVjdG9yRXh0ZW5zaW9u
IF9ldmFsdWF0ZVNjcmlwdDpzY3JpcHRTb3VyY2UgaW5FeHRlbnNpb25UYWJXaXRoSWRlbnRpZmll
cjpzaGFyZWRFeHRlbnNpb25UYWJJZGVudGlmaWVyLmdldCgpIGNvbXBsZXRpb25IYW5kbGVyOl4o
TlNFcnJvciAqIF9OdWxsYWJsZSBlcnJvciwgTlNEaWN0aW9uYXJ5ICogX051bGxhYmxlIHJlc3Vs
dCkgeworICAgIFtzaGFyZWRJbnNwZWN0b3JFeHRlbnNpb24gZXZhbHVhdGVTY3JpcHQ6c2NyaXB0
U291cmNlIGluVGFiV2l0aElkZW50aWZpZXI6c2hhcmVkRXh0ZW5zaW9uVGFiSWRlbnRpZmllci5n
ZXQoKSBjb21wbGV0aW9uSGFuZGxlcjpeKE5TRXJyb3IgKiBfTnVsbGFibGUgZXJyb3IsIE5TRGlj
dGlvbmFyeSAqIF9OdWxsYWJsZSByZXN1bHQpIHsKICAgICAgICAgRVhQRUNUX05VTEwoZXJyb3Ip
OwogICAgICAgICBFWFBFQ1RfTk9UX05VTEwocmVzdWx0KTsKICAgICAgICAgRVhQRUNUX05TX0VR
VUFMKHJlc3VsdCwgZXZhbHVhdGlvblJlc3VsdC5nZXQoKSk7CkBAIC0yODcsNyArMjg2LDcgQEAg
VEVTVChXS0luc3BlY3RvckV4dGVuc2lvbiwgRXh0ZW5zaW9uVGFiSXNQZXJzaXN0ZW50KQogCiAg
ICAgLy8gQ2hlY2sgdGhlIHVuaXF1ZSB2YWx1ZSBhZ2FpbiBhZnRlciByZXNlbGVjdGluZyB0aGUg
ZXh0ZW5zaW9uIHRhYi4KICAgICBwZW5kaW5nQ2FsbGJhY2tXYXNDYWxsZWQgPSBmYWxzZTsKLSAg
ICBbc2hhcmVkSW5zcGVjdG9yRXh0ZW5zaW9uIF9ldmFsdWF0ZVNjcmlwdDpzY3JpcHRTb3VyY2Ug
aW5FeHRlbnNpb25UYWJXaXRoSWRlbnRpZmllcjpzaGFyZWRFeHRlbnNpb25UYWJJZGVudGlmaWVy
LmdldCgpIGNvbXBsZXRpb25IYW5kbGVyOl4oTlNFcnJvciAqIF9OdWxsYWJsZSBlcnJvciwgTlNE
aWN0aW9uYXJ5ICogX051bGxhYmxlIHJlc3VsdCkgeworICAgIFtzaGFyZWRJbnNwZWN0b3JFeHRl
bnNpb24gZXZhbHVhdGVTY3JpcHQ6c2NyaXB0U291cmNlIGluVGFiV2l0aElkZW50aWZpZXI6c2hh
cmVkRXh0ZW5zaW9uVGFiSWRlbnRpZmllci5nZXQoKSBjb21wbGV0aW9uSGFuZGxlcjpeKE5TRXJy
b3IgKiBfTnVsbGFibGUgZXJyb3IsIE5TRGljdGlvbmFyeSAqIF9OdWxsYWJsZSByZXN1bHQpIHsK
ICAgICAgICAgRVhQRUNUX05VTEwoZXJyb3IpOwogICAgICAgICBFWFBFQ1RfTk9UX05VTEwocmVz
dWx0KTsKICAgICAgICAgRVhQRUNUX05TX0VRVUFMKHJlc3VsdCwgZXZhbHVhdGlvblJlc3VsdC5n
ZXQoKSk7CkBAIC0zNjYsNyArMzY1LDcgQEAgVEVTVChXS0luc3BlY3RvckV4dGVuc2lvbiwgRXZh
bHVhdGVTY3JpcHRJbkV4dGVuc2lvblRhYkNhblJldHVyblByb21pc2VzKQogICAgIGF1dG8gc2Ny
aXB0U291cmNlID0gW05TU3RyaW5nIHN0cmluZ1dpdGhGb3JtYXQ6QCJQcm9taXNlLnJlc29sdmUo
XCIlQFwiKSIsIHNlY3JldFN0cmluZ107CiAKICAgICBwZW5kaW5nQ2FsbGJhY2tXYXNDYWxsZWQg
PSBmYWxzZTsKLSAgICBbc2hhcmVkSW5zcGVjdG9yRXh0ZW5zaW9uIF9ldmFsdWF0ZVNjcmlwdDpz
Y3JpcHRTb3VyY2UgaW5FeHRlbnNpb25UYWJXaXRoSWRlbnRpZmllcjpzaGFyZWRFeHRlbnNpb25U
YWJJZGVudGlmaWVyLmdldCgpIGNvbXBsZXRpb25IYW5kbGVyOl4oTlNFcnJvciAqIF9OdWxsYWJs
ZSBlcnJvciwgTlNEaWN0aW9uYXJ5ICogX051bGxhYmxlIHJlc3VsdCkgeworICAgIFtzaGFyZWRJ
bnNwZWN0b3JFeHRlbnNpb24gZXZhbHVhdGVTY3JpcHQ6c2NyaXB0U291cmNlIGluVGFiV2l0aElk
ZW50aWZpZXI6c2hhcmVkRXh0ZW5zaW9uVGFiSWRlbnRpZmllci5nZXQoKSBjb21wbGV0aW9uSGFu
ZGxlcjpeKE5TRXJyb3IgKiBfTnVsbGFibGUgZXJyb3IsIE5TRGljdGlvbmFyeSAqIF9OdWxsYWJs
ZSByZXN1bHQpIHsKICAgICAgICAgRVhQRUNUX05VTEwoZXJyb3IpOwogICAgICAgICBFWFBFQ1Rf
Tk9UX05VTEwocmVzdWx0KTsKICAgICAgICAgRVhQRUNUX05TX0VRVUFMKHJlc3VsdCwgc2VjcmV0
U3RyaW5nKTsKQEAgLTM3Niw3ICszNzUsNyBAQCBURVNUKFdLSW5zcGVjdG9yRXh0ZW5zaW9uLCBF
dmFsdWF0ZVNjcmlwdEluRXh0ZW5zaW9uVGFiQ2FuUmV0dXJuUHJvbWlzZXMpCiAgICAgVGVzdFdl
YktpdEFQSTo6VXRpbDo6cnVuKCZwZW5kaW5nQ2FsbGJhY2tXYXNDYWxsZWQpOwogCiAgICAgcGVu
ZGluZ0NhbGxiYWNrV2FzQ2FsbGVkID0gZmFsc2U7Ci0gICAgW3NoYXJlZEluc3BlY3RvckV4dGVu
c2lvbiBfZXZhbHVhdGVTY3JpcHQ6QCIoKCgiIGluRXh0ZW5zaW9uVGFiV2l0aElkZW50aWZpZXI6
c2hhcmVkRXh0ZW5zaW9uVGFiSWRlbnRpZmllci5nZXQoKSBjb21wbGV0aW9uSGFuZGxlcjpeKE5T
RXJyb3IgKiBfTnVsbGFibGUgZXJyb3IsIE5TRGljdGlvbmFyeSAqIF9OdWxsYWJsZSByZXN1bHQp
IHsKKyAgICBbc2hhcmVkSW5zcGVjdG9yRXh0ZW5zaW9uIF9ldmFsdWF0ZVNjcmlwdDpAIigoIiBp
blRhYldpdGhJZGVudGlmaWVyOnNoYXJlZEV4dGVuc2lvblRhYklkZW50aWZpZXIuZ2V0KCkgY29t
cGxldGlvbkhhbmRsZXI6XihOU0Vycm9yICogX051bGxhYmxlIGVycm9yLCBOU0RpY3Rpb25hcnkg
KiBfTnVsbGFibGUgcmVzdWx0KSB7CiAgICAgICAgIEVYUEVDVF9OT1RfTlVMTChlcnJvcik7CiAg
ICAgICAgIEVYUEVDVF9OVUxMKHJlc3VsdCk7CiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>441401</attachid>
            <date>2021-10-15 10:53:59 -0700</date>
            <delta_ts>2021-10-15 11:08:23 -0700</delta_ts>
            <desc>Patch v1.0.1 (rebased)</desc>
            <filename>bug-231784-20211015105358.patch</filename>
            <type>text/plain</type>
            <size>20939</size>
            <attacher name="Blaze Burg">bburg</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg0MjUxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDIwNWQ5MGU3YWNkNmE3YTFm
ZDM4ZDY3ZjRkZTYwMmY3MGZjM2NiZmMuLjAwMDYxZWU0MTM1OTVlMmExODIyZGIxNzQ3MWRjZDlk
OGU2ODAyYTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjIgQEAKKzIwMjEtMTAtMTUgIEJKIEJ1cmcg
IDxiYnVyZ0BhcHBsZS5jb20+CisKKyAgICAgICAgW0NvY29hXSBXZWIgSW5zcGVjdG9yOiByZW1v
dmUgX1dLSW5zcGVjdG9yRXh0ZW5zaW9uUHJpdmF0ZUZvclRlc3RpbmcKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMTc4NAorICAgICAgICA8cmRhcjov
L3Byb2JsZW0vODQyODA2MDg+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgUHJvbW90ZSB0aGUgb25seSBtZXRob2QgdG8gYmUgQVBJIGZvciBfV0tJbnNw
ZWN0b3JFeHRlbnNpb24uIEl0IGlzIG5lZWRlZAorICAgICAgICB0byBpbXBsZW1lbnQgc29tZSBw
YXJ0cyBvZiB0aGUgZGV2dG9vbHMgQVBJLgorCisgICAgICAgICogU291cmNlc0NvY29hLnR4dDoK
KyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0NvY29hL19XS0luc3BlY3RvckV4dGVuc2lvbi5oOgor
ICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLSW5zcGVjdG9yRXh0ZW5zaW9uLm1tOgor
ICAgICAgICAoLVtfV0tJbnNwZWN0b3JFeHRlbnNpb24gZXZhbHVhdGVTY3JpcHQ6aW5UYWJXaXRo
SWRlbnRpZmllcjpjb21wbGV0aW9uSGFuZGxlcjpdKToKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJ
L0NvY29hL19XS0luc3BlY3RvckV4dGVuc2lvblByaXZhdGVGb3JUZXN0aW5nLmg6IFJlbW92ZWQu
CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tJbnNwZWN0b3JFeHRlbnNpb25UZXN0
aW5nLm1tOiBSZW1vdmVkLgorICAgICAgICAqIFdlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qOgorCiAyMDIxLTEwLTE1ICBLYXRlIENoZW5leSAgPGthdGhlcmluZV9jaGVuZXlAYXBwbGUu
Y29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQgbWFjY2F0YWx5c3QgYnVpbGQgZml4LgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9Tb3VyY2VzQ29jb2EudHh0IGIvU291cmNlL1dlYktpdC9Tb3Vy
Y2VzQ29jb2EudHh0CmluZGV4IGZkOTQ5ZDg5YjAwZWY0YTM0NzcxNjgzYzczZWI3MWE5OGYwNTFh
NmYuLjdkODUwMDM0ZWQ2YjVlMjJmMDBhNTE4MzkyYzJmOWM2NTY3Y2NhNDQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvU291cmNlc0NvY29hLnR4dAorKysgYi9Tb3VyY2UvV2ViS2l0L1NvdXJj
ZXNDb2NvYS50eHQKQEAgLTI4OCw3ICsyODgsNiBAQCBVSVByb2Nlc3MvQVBJL0NvY29hL19XS0lu
c3BlY3RvckNvbmZpZ3VyYXRpb24ubW0KIFVJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLSW5zcGVjdG9y
VGVzdGluZy5tbQogVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tJbnNwZWN0b3JEZWJ1Z2dhYmxlSW5m
by5tbQogVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tJbnNwZWN0b3JFeHRlbnNpb24ubW0KLVVJUHJv
Y2Vzcy9BUEkvQ29jb2EvX1dLSW5zcGVjdG9yRXh0ZW5zaW9uVGVzdGluZy5tbQogVUlQcm9jZXNz
L0FQSS9Db2NvYS9fV0tJbnNwZWN0b3JXaW5kb3cubW0KIFVJUHJvY2Vzcy9BUEkvQ29jb2EvX1dL
SW50ZXJuYWxEZWJ1Z0ZlYXR1cmUubW0KIFVJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLTGlua0ljb25Q
YXJhbWV0ZXJzLm1tCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29j
b2EvX1dLSW5zcGVjdG9yRXh0ZW5zaW9uLmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkv
Q29jb2EvX1dLSW5zcGVjdG9yRXh0ZW5zaW9uLmgKaW5kZXggZjFkNzE0MDQ1MmMzN2NmNDUxZTZh
YmQ2ZjY3N2ZjMTc2NTMwY2ExOS4uZDFiNTg0OTE1ZDkyZDU2ODdiYjY2YWFjOGFkYTgwNTg5NDk2
YWI1OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL19XS0lu
c3BlY3RvckV4dGVuc2lvbi5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2Nv
YS9fV0tJbnNwZWN0b3JFeHRlbnNpb24uaApAQCAtNzQsNiArNzQsMTYgQEAgV0tfQ0xBU1NfQVZB
SUxBQkxFKG1hY29zKDEyLjApKQogICovCiAtICh2b2lkKXJlbG9hZElnbm9yaW5nQ2FjaGU6KEJP
T0wpaWdub3JlQ2FjaGUgdXNlckFnZW50OihOU1N0cmluZyAqKXVzZXJBZ2VudCBpbmplY3RlZFNj
cmlwdDooTlNTdHJpbmcgKilpbmplY3RlZFNjcmlwdCBjb21wbGV0aW9uSGFuZGxlcjoodm9pZChe
KShOU0Vycm9yICogX051bGxhYmxlKSljb21wbGV0aW9uSGFuZGxlcjsKIAorLyoqCisgKiBAYWJz
dHJhY3QgRXZhbHVhdGVzIEphdmFTY3JpcHQgaW4gdGhlIGNvbnRleHQgb2YgYSBXZWIgSW5zcGVj
dG9yIHRhYiBjcmVhdGVkIGJ5IHRoaXMgX1dLSW5zcGVjdG9yRXh0ZW5zaW9uLgorICogQHBhcmFt
IHNjcmlwdFNvdXJjZSBUaGUgSmF2YVNjcmlwdCBjb2RlIHRvIGJlIGV2YWx1YXRlZC4KKyAqIEBw
YXJhbSB0YWJJZGVudGlmaWVyIElkZW50aWZpZXIgZm9yIHRoZSBXZWIgSW5zcGVjdG9yIHRhYiBp
biB3aGljaCB0byBldmFsdWF0ZSBKYXZhU2NyaXB0LgorICogQHBhcmFtIGNvbXBsZXRpb25IYW5k
bGVyIEEgYmxvY2sgdG8gaW52b2tlIHdoZW4gdGhlIG9wZXJhdGlvbiBjb21wbGV0ZXMgb3IgZmFp
bHMuCisgKiBAZGlzY3Vzc2lvbiBUaGUgY29tcGxldGlvbkhhbmRsZXIgaXMgcGFzc2VkIGFuIE5T
SlNPTlNlcmlhbGl6YXRpb24tY29tcGF0aWJsZSBOU09iamVjdCByZXByZXNlbnRpbmcgdGhlIGV2
YWx1YXRpb24gcmVzdWx0LCBvciBhbiBlcnJvci4KKyAqIHNjcmlwdFNvdXJjZSBpcyB0cmVhdGVk
IGFzIGEgdG9wLWxldmVsIGV2YWx1YXRpb24uIEJ5IGRlZmF1bHQsIHRoZSBzY3JpcHQgaXMgZXZh
bHVhdGVkIGluIHRoZSBpbnNwZWN0ZWQgcGFnZSdzIHNjcmlwdCBjb250ZXh0LgorICovCistICh2
b2lkKWV2YWx1YXRlU2NyaXB0OihOU1N0cmluZyAqKXNjcmlwdFNvdXJjZSBpblRhYldpdGhJZGVu
dGlmaWVyOihOU1N0cmluZyAqKXRhYklkZW50aWZpZXIgY29tcGxldGlvbkhhbmRsZXI6KHZvaWQo
XikoTlNFcnJvciAqIF9OdWxsYWJsZSwgTlNEaWN0aW9uYXJ5ICogX051bGxhYmxlIHJlc3VsdCkp
Y29tcGxldGlvbkhhbmRsZXI7CisKIEBwcm9wZXJ0eSAocmVhZG9ubHksIG5vbmF0b21pYykgTlNT
dHJpbmcgKmV4dGVuc2lvbklEOwogCiAvKioKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL0FQSS9Db2NvYS9fV0tJbnNwZWN0b3JFeHRlbnNpb24ubW0gYi9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLSW5zcGVjdG9yRXh0ZW5zaW9uLm1tCmluZGV4IDQ2NTYx
ZDM0MzE0YTc5ZDQyYzU3ZTU5YmY3OTI3YWQxZmE0NTEwNDUuLjYzYzkzODlhM2VkMDY2YTljNGE4
MTBkMWM4ZTYxY2JkOTRhZTg2ZWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L0FQSS9Db2NvYS9fV0tJbnNwZWN0b3JFeHRlbnNpb24ubW0KKysrIGIvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvQVBJL0NvY29hL19XS0luc3BlY3RvckV4dGVuc2lvbi5tbQpAQCAtMjgsNiArMjgs
NyBAQAogCiAjaWYgRU5BQkxFKElOU1BFQ1RPUl9FWFRFTlNJT05TKQogCisjaW1wb3J0ICJBUElT
ZXJpYWxpemVkU2NyaXB0VmFsdWUuaCIKICNpbXBvcnQgIkluc3BlY3RvckV4dGVuc2lvbkRlbGVn
YXRlLmgiCiAjaW1wb3J0ICJJbnNwZWN0b3JFeHRlbnNpb25UeXBlcy5oIgogI2ltcG9ydCAiV0tF
cnJvci5oIgpAQCAtMTIyLDYgKzEyMywyNSBAQCAtICh2b2lkKXJlbG9hZElnbm9yaW5nQ2FjaGU6
KEJPT0wpaWdub3JlQ2FjaGUgdXNlckFnZW50OihOU1N0cmluZyAqKXVzZXJBZ2VudCBpbgogICAg
IH0pOwogfQogCistICh2b2lkKWV2YWx1YXRlU2NyaXB0OihOU1N0cmluZyAqKXNjcmlwdFNvdXJj
ZSBpblRhYldpdGhJZGVudGlmaWVyOihOU1N0cmluZyAqKWV4dGVuc2lvblRhYklkZW50aWZpZXIg
Y29tcGxldGlvbkhhbmRsZXI6KHZvaWQoXikoTlNFcnJvciAqLCBOU0RpY3Rpb25hcnkgKikpY29t
cGxldGlvbkhhbmRsZXIKK3sKKyAgICBfZXh0ZW5zaW9uLT5ldmFsdWF0ZVNjcmlwdEluRXh0ZW5z
aW9uVGFiKGV4dGVuc2lvblRhYklkZW50aWZpZXIsIHNjcmlwdFNvdXJjZSwgW3Byb3RlY3RlZFNl
bGYgPSByZXRhaW5QdHIoc2VsZiksIGNhcHR1cmVkQmxvY2sgPSBtYWtlQmxvY2tQdHIoV1RGTW92
ZShjb21wbGV0aW9uSGFuZGxlcikpXSAoSW5zcGVjdG9yOjpFeHRlbnNpb25FdmFsdWF0aW9uUmVz
dWx0JiYgcmVzdWx0KSBtdXRhYmxlIHsKKyAgICAgICAgaWYgKCFyZXN1bHQpIHsKKyAgICAgICAg
ICAgIGNhcHR1cmVkQmxvY2soW05TRXJyb3IgZXJyb3JXaXRoRG9tYWluOldLRXJyb3JEb21haW4g
Y29kZTpXS0Vycm9yVW5rbm93biB1c2VySW5mbzpAeyBOU0xvY2FsaXplZEZhaWx1cmVSZWFzb25F
cnJvcktleTogSW5zcGVjdG9yOjpleHRlbnNpb25FcnJvclRvU3RyaW5nKHJlc3VsdC5lcnJvcigp
KSB9XSwgbmlsKTsKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQorICAgICAgICAKKyAg
ICAgICAgYXV0byB2YWx1ZU9yRXhjZXB0aW9uID0gcmVzdWx0LnZhbHVlKCk7CisgICAgICAgIGlm
ICghdmFsdWVPckV4Y2VwdGlvbikgeworICAgICAgICAgICAgY2FwdHVyZWRCbG9jayhuc0Vycm9y
RnJvbUV4Y2VwdGlvbkRldGFpbHModmFsdWVPckV4Y2VwdGlvbi5lcnJvcigpKS5nZXQoKSwgbmls
KTsKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQorCisgICAgICAgIGlkIGJvZHkgPSBB
UEk6OlNlcmlhbGl6ZWRTY3JpcHRWYWx1ZTo6ZGVzZXJpYWxpemUodmFsdWVPckV4Y2VwdGlvbi52
YWx1ZSgpLT5pbnRlcm5hbFJlcHJlc2VudGF0aW9uKCksIDApOworICAgICAgICBjYXB0dXJlZEJs
b2NrKG5pbCwgYm9keSk7CisgICAgfSk7Cit9CisKIC8vIE1BUks6IFByb3BlcnRpZXMuCiAKIC0g
KE5TU3RyaW5nICopZXh0ZW5zaW9uSUQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL0FQSS9Db2NvYS9fV0tJbnNwZWN0b3JFeHRlbnNpb25Qcml2YXRlRm9yVGVzdGluZy5oIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL19XS0luc3BlY3RvckV4dGVuc2lvblBy
aXZhdGVGb3JUZXN0aW5nLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDBkNWExNTY4
YWFkYTQzY2NlMjA2YTE1ZTA4MWI5YTQ2MjVmM2FkYzUuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29h
L19XS0luc3BlY3RvckV4dGVuc2lvblByaXZhdGVGb3JUZXN0aW5nLmgKKysrIC9kZXYvbnVsbApA
QCAtMSwzOCArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJl
IG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
IGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3Zp
ZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJ
REVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCi0gKiBBTkQg
QU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywKLSAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElO
IE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUwotICogQkUgTElB
QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBM
QVJZLCBPUgotICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKLSAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwotICogSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4KLSAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCi0gKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRI
RSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCi0gKiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2ltcG9ydCAiX1dLSW5zcGVjdG9yRXh0ZW5z
aW9uLmgiCi0KLSNpZiAhVEFSR0VUX09TX0lQSE9ORQotCi1OU19BU1NVTUVfTk9OTlVMTF9CRUdJ
TgotCi1AaW50ZXJmYWNlIF9XS0luc3BlY3RvckV4dGVuc2lvbiAoV0tUZXN0aW5nKQotLSAodm9p
ZClfZXZhbHVhdGVTY3JpcHQ6KE5TU3RyaW5nICopc2NyaXB0U291cmNlIGluRXh0ZW5zaW9uVGFi
V2l0aElkZW50aWZpZXI6KE5TU3RyaW5nICopZXh0ZW5zaW9uVGFiSWRlbnRpZmllciBjb21wbGV0
aW9uSGFuZGxlcjoodm9pZCheKShOU0Vycm9yICogX051bGxhYmxlLCBOU0RpY3Rpb25hcnkgKiBf
TnVsbGFibGUgcmVzdWx0KSljb21wbGV0aW9uSGFuZGxlcjsKLUBlbmQKLQotTlNfQVNTVU1FX05P
Tk5VTExfRU5ECi0KLSNlbmRpZiAvLyAhVEFSR0VUX09TX0lQSE9ORQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL19XS0luc3BlY3RvckV4dGVuc2lvblRlc3Rp
bmcubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLSW5zcGVjdG9yRXh0
ZW5zaW9uVGVzdGluZy5tbQpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNDFjNmE2ZjA4
YWEwYjlhNjU4YTg5YmMwZjdjM2FjMDMxNWI4ZDg4ZS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2Ev
X1dLSW5zcGVjdG9yRXh0ZW5zaW9uVGVzdGluZy5tbQorKysgL2Rldi9udWxsCkBAIC0xLDY1ICsw
LDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICog
MS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBj
b3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0g
KiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQ
TEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKLSAqIEFORCBBTlkgRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAot
ICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCi0gKiBCRSBMSUFCTEUgRk9SIEFO
WSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCi0g
KiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQ
Uk9DVVJFTUVOVCBPRgotICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBV
U0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCi0gKiBJTlRFUlJVUFRJT04pIEhPV0VW
RVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgotICog
Q09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SIE9USEVSV0lTRSkKLSAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKLSAqIFRIRSBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4KLSAqLwotCi0jaW1wb3J0ICJjb25maWcuaCIKLQotI2lmIEVOQUJMRShJTlNQ
RUNUT1JfRVhURU5TSU9OUykKLQotI2ltcG9ydCAiQVBJU2VyaWFsaXplZFNjcmlwdFZhbHVlLmgi
Ci0jaW1wb3J0ICJJbnNwZWN0b3JFeHRlbnNpb25UeXBlcy5oIgotI2ltcG9ydCAiV0tFcnJvci5o
IgotI2ltcG9ydCAiV0tXZWJWaWV3SW50ZXJuYWwuaCIKLSNpbXBvcnQgIl9XS0luc3BlY3RvckV4
dGVuc2lvbkludGVybmFsLmgiCi0jaW1wb3J0ICJfV0tJbnNwZWN0b3JFeHRlbnNpb25Qcml2YXRl
Rm9yVGVzdGluZy5oIgotI2ltcG9ydCA8V2ViQ29yZS9FeGNlcHRpb25EZXRhaWxzLmg+Ci0jaW1w
b3J0IDxXZWJDb3JlL1dlYkNvcmVPYmpDRXh0cmFzLmg+Ci0jaW1wb3J0IDx3dGYvQmxvY2tQdHIu
aD4KLQotLy8gVGhpcyBmaWxlIGV4aXN0cyB0byBjZW50cmFsaXplIGFsbCBmcmFnaWxlIGNvZGUg
dGhhdCBpcyB1c2VkIGJ5IF9XS0luc3BlY3RvckV4dGVuc2lvbiBBUEkgdGVzdHMuCi0KLUBpbXBs
ZW1lbnRhdGlvbiBfV0tJbnNwZWN0b3JFeHRlbnNpb24gKFdLVGVzdGluZykKLQotLSAodm9pZClf
ZXZhbHVhdGVTY3JpcHQ6KE5TU3RyaW5nICopc2NyaXB0U291cmNlIGluRXh0ZW5zaW9uVGFiV2l0
aElkZW50aWZpZXI6KE5TU3RyaW5nICopZXh0ZW5zaW9uVGFiSWRlbnRpZmllciBjb21wbGV0aW9u
SGFuZGxlcjoodm9pZCheKShOU0Vycm9yICosIE5TRGljdGlvbmFyeSAqKSljb21wbGV0aW9uSGFu
ZGxlcgotewotICAgIF9leHRlbnNpb24tPmV2YWx1YXRlU2NyaXB0SW5FeHRlbnNpb25UYWIoZXh0
ZW5zaW9uVGFiSWRlbnRpZmllciwgc2NyaXB0U291cmNlLCBbcHJvdGVjdGVkU2VsZiA9IHJldGFp
blB0cihzZWxmKSwgY2FwdHVyZWRCbG9jayA9IG1ha2VCbG9ja1B0cihXVEZNb3ZlKGNvbXBsZXRp
b25IYW5kbGVyKSldIChJbnNwZWN0b3I6OkV4dGVuc2lvbkV2YWx1YXRpb25SZXN1bHQmJiByZXN1
bHQpIG11dGFibGUgewotICAgICAgICBpZiAoIXJlc3VsdCkgewotICAgICAgICAgICAgY2FwdHVy
ZWRCbG9jayhbTlNFcnJvciBlcnJvcldpdGhEb21haW46V0tFcnJvckRvbWFpbiBjb2RlOldLRXJy
b3JVbmtub3duIHVzZXJJbmZvOkB7IE5TTG9jYWxpemVkRmFpbHVyZVJlYXNvbkVycm9yS2V5OiBJ
bnNwZWN0b3I6OmV4dGVuc2lvbkVycm9yVG9TdHJpbmcocmVzdWx0LmVycm9yKCkpIH1dLCBuaWwp
OwotICAgICAgICAgICAgcmV0dXJuOwotICAgICAgICB9Ci0gICAgICAgIAotICAgICAgICBhdXRv
IHZhbHVlT3JFeGNlcHRpb24gPSByZXN1bHQudmFsdWUoKTsKLSAgICAgICAgaWYgKCF2YWx1ZU9y
RXhjZXB0aW9uKSB7Ci0gICAgICAgICAgICBjYXB0dXJlZEJsb2NrKG5zRXJyb3JGcm9tRXhjZXB0
aW9uRGV0YWlscyh2YWx1ZU9yRXhjZXB0aW9uLmVycm9yKCkpLmdldCgpLCBuaWwpOwotICAgICAg
ICAgICAgcmV0dXJuOwotICAgICAgICB9Ci0KLSAgICAgICAgaWQgYm9keSA9IEFQSTo6U2VyaWFs
aXplZFNjcmlwdFZhbHVlOjpkZXNlcmlhbGl6ZSh2YWx1ZU9yRXhjZXB0aW9uLnZhbHVlKCktPmlu
dGVybmFsUmVwcmVzZW50YXRpb24oKSwgMCk7Ci0gICAgICAgIGNhcHR1cmVkQmxvY2sobmlsLCBi
b2R5KTsKLSAgICB9KTsKLX0KLQotQGVuZAotCi0jZW5kaWYgLy8gRU5BQkxFKElOU1BFQ1RPUl9F
WFRFTlNJT05TKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2oKaW5kZXggZGNmNGMwZjdiOGM0NjVlY2FlNzUzNzZjYjdmNjNjMTE5MjBhYTFlNS4uMjM0
OGUwNzhkODcxY2RkNjVmNTY5NDgyZGViNGI0Mjc5YzAzYmNiNiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2Vi
S2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0xNjA3LDggKzE2MDcsNiBA
QAogCQk5OUIxNjc2NDI1MkJCRTYyMDA3MzE0MEUgLyogV2ViSW5zcGVjdG9yVUlFeHRlbnNpb25D
b250cm9sbGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA5OUIxNjc2MTI1MkJCRTYxMDA3MzE0MEUgLyogV2ViSW5zcGVjdG9yVUlFeHRlbnNpb25Db250
cm9sbGVyLmggKi87IH07CiAJCTk5QzNBRTJEMURBREE2QUQwMEFGNUMxNiAvKiBXZWJBdXRvbWF0
aW9uU2Vzc2lvbk1hY3Jvcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gOTlDM0FFMkMxREFEQTZBNzAwQUY1QzE2IC8qIFdlYkF1dG9tYXRpb25TZXNzaW9u
TWFjcm9zLmggKi87IH07CiAJCTk5QzYwN0VCMjZGQTlENDkwMEEwOTUzRiAvKiBfV0tJbnNwZWN0
b3JJQkFjdGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDk5QzYwN0VBMjZGQTlENDgwMEEwOTUzRiAvKiBfV0tJbnNwZWN0b3JJQkFjdGlvbnMuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwotCQk5OUM2MDdG
MDI2RkI5MUU4MDBBMDk1M0YgLyogX1dLSW5zcGVjdG9yRXh0ZW5zaW9uUHJpdmF0ZUZvclRlc3Rp
bmcuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk5QzYw
N0VFMjZGQjkxRTgwMEEwOTUzRiAvKiBfV0tJbnNwZWN0b3JFeHRlbnNpb25Qcml2YXRlRm9yVGVz
dGluZy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07Ci0J
CTk5QzYwN0YxMjZGQjkxRTkwMEEwOTUzRiAvKiBfV0tJbnNwZWN0b3JFeHRlbnNpb25UZXN0aW5n
Lm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTlDNjA3
RUYyNkZCOTFFODAwQTA5NTNGIC8qIF9XS0luc3BlY3RvckV4dGVuc2lvblRlc3RpbmcubW0gKi87
IH07CiAJCTk5QzgxRDVBMUMyMEU3RTIwMDVDNEM4MiAvKiBBdXRvbWF0aW9uQ2xpZW50LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5OUM4MUQ1NTFDMjBE
RkJFMDA1QzRDODIgLyogQXV0b21hdGlvbkNsaWVudC5oICovOyB9OwogCQk5OUM4MUQ1RDFDMjFG
MzhCMDA1QzRDODIgLyogQVBJQXV0b21hdGlvbkNsaWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTlDODFENUIxQzIwRTgxNzAwNUM0QzgyIC8qIEFQ
SUF1dG9tYXRpb25DbGllbnQuaCAqLzsgfTsKIAkJOTlFNzE0QzUxQzEyNEEwNDAwNjY1QjNBIC8q
IF9XS0F1dG9tYXRpb25EZWxlZ2F0ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gOTlFNzE0QzExQzEyNDlFNjAwNjY1QjNBIC8qIF9XS0F1dG9tYXRpb25E
ZWxlZ2F0ZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CkBAIC01MjA1LDggKzUyMDMsNiBAQAogCQk5OUMzQUUyNjFEQUQ5NDg1MDBBRjVDMTYgLyogV2Vi
QXV0b21hdGlvblNlc3Npb25Db2NvYS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNw
cDsgcGF0aCA9IFdlYkF1dG9tYXRpb25TZXNzaW9uQ29jb2EubW07IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTk5QzNBRTJDMURBREE2QTcwMEFGNUMxNiAvKiBXZWJBdXRvbWF0aW9uU2Vz
c2lvbk1hY3Jvcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJBdXRvbWF0
aW9uU2Vzc2lvbk1hY3Jvcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5OUM2MDdF
QTI2RkE5RDQ4MDBBMDk1M0YgLyogX1dLSW5zcGVjdG9ySUJBY3Rpb25zLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IF9XS0luc3BlY3RvcklCQWN0aW9ucy5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwotCQk5OUM2MDdFRTI2RkI5MUU4MDBBMDk1M0YgLyogX1dLSW5zcGVj
dG9yRXh0ZW5zaW9uUHJpdmF0ZUZvclRlc3RpbmcuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gX1dLSW5zcGVjdG9yRXh0ZW5zaW9uUHJpdmF0ZUZvclRlc3RpbmcuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJOTlDNjA3RUYyNkZCOTFFODAwQTA5NTNGIC8qIF9XS0lu
c3BlY3RvckV4dGVuc2lvblRlc3RpbmcubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpj
cHA7IHBhdGggPSBfV0tJbnNwZWN0b3JFeHRlbnNpb25UZXN0aW5nLm1tOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQk5OUM4MUQ1NTFDMjBERkJFMDA1QzRDODIgLyogQXV0b21hdGlvbkNs
aWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBdXRvbWF0aW9uQ2xpZW50
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTk5QzgxRDU2MUMyMERGQkUwMDVDNEM4
MiAvKiBBdXRvbWF0aW9uQ2xpZW50Lm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3Bw
OyBwYXRoID0gQXV0b21hdGlvbkNsaWVudC5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJOTlDODFENUIxQzIwRTgxNzAwNUM0QzgyIC8qIEFQSUF1dG9tYXRpb25DbGllbnQuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQVBJQXV0b21hdGlvbkNsaWVudC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtODMyNiw4ICs4MzIyLDYgQEAKIAkJCQk5OTZCMkJB
MDI1RTI1OTExMDA3MTkzNzkgLyogX1dLSW5zcGVjdG9yRXh0ZW5zaW9uRGVsZWdhdGUuaCAqLywK
IAkJCQk5OTc5NjVBMjI1MzEyOEM3MDBCMzFBRTMgLyogX1dLSW5zcGVjdG9yRXh0ZW5zaW9uSG9z
dC5oICovLAogCQkJCTk5QjE2NzU1MjUyQkI3RTEwMDczMTQwRSAvKiBfV0tJbnNwZWN0b3JFeHRl
bnNpb25JbnRlcm5hbC5oICovLAotCQkJCTk5QzYwN0VFMjZGQjkxRTgwMEEwOTUzRiAvKiBfV0tJ
bnNwZWN0b3JFeHRlbnNpb25Qcml2YXRlRm9yVGVzdGluZy5oICovLAotCQkJCTk5QzYwN0VGMjZG
QjkxRTgwMEEwOTUzRiAvKiBfV0tJbnNwZWN0b3JFeHRlbnNpb25UZXN0aW5nLm1tICovLAogCQkJ
CTk5QzYwN0VBMjZGQTlENDgwMEEwOTUzRiAvKiBfV0tJbnNwZWN0b3JJQkFjdGlvbnMuaCAqLywK
IAkJCQk1Q0FGREU0NDIxMzA4NDM2MDBCMUY3RTEgLyogX1dLSW5zcGVjdG9ySW50ZXJuYWwuaCAq
LywKIAkJCQk5OTc5Q0E1NzIzN0Y0OUYwMDAzOUVDMDUgLyogX1dLSW5zcGVjdG9yUHJpdmF0ZS5o
ICovLApAQCAtMTIxNjUsNyArMTIxNTksNiBAQAogCQkJCTk5NkIyQkExMjVFMjU5MTEwMDcxOTM3
OSAvKiBfV0tJbnNwZWN0b3JFeHRlbnNpb25EZWxlZ2F0ZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
OTk3OTY1QTMyNTMxMjhDNzAwQjMxQUUzIC8qIF9XS0luc3BlY3RvckV4dGVuc2lvbkhvc3QuaCBp
biBIZWFkZXJzICovLAogCQkJCTk5QjE2NzU4MjUyQkI3RTEwMDczMTQwRSAvKiBfV0tJbnNwZWN0
b3JFeHRlbnNpb25JbnRlcm5hbC5oIGluIEhlYWRlcnMgKi8sCi0JCQkJOTlDNjA3RjAyNkZCOTFF
ODAwQTA5NTNGIC8qIF9XS0luc3BlY3RvckV4dGVuc2lvblByaXZhdGVGb3JUZXN0aW5nLmggaW4g
SGVhZGVycyAqLywKIAkJCQk5OUM2MDdFQjI2RkE5RDQ5MDBBMDk1M0YgLyogX1dLSW5zcGVjdG9y
SUJBY3Rpb25zLmggaW4gSGVhZGVycyAqLywKIAkJCQk1Q0FGREU0NzIxMzA4NDZBMDBCMUY3RTEg
LyogX1dLSW5zcGVjdG9ySW50ZXJuYWwuaCBpbiBIZWFkZXJzICovLAogCQkJCTk5NzlDQTU4MjM3
RjQ5RjEwMDM5RUMwNSAvKiBfV0tJbnNwZWN0b3JQcml2YXRlLmggaW4gSGVhZGVycyAqLywKQEAg
LTE0Njg5LDcgKzE0NjgyLDYgQEAKIAkJCQk1NzkwQTY4MTI1NjdBMUFDMDA3N0M1QTcgLyogX1dL
QXV0aGVudGljYXRvclJlc3BvbnNlLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJNTc5MEE2NjcyNTY3
OUNFQTAwNzdDNUE3IC8qIF9XS0F1dGhlbnRpY2F0b3JTZWxlY3Rpb25Dcml0ZXJpYS5tbSBpbiBT
b3VyY2VzICovLAogCQkJCTVDQkQ1OTVDMjI4MEVERjQwMDJCMjJBQSAvKiBfV0tDdXN0b21IZWFk
ZXJGaWVsZHMubW0gaW4gU291cmNlcyAqLywKLQkJCQk5OUM2MDdGMTI2RkI5MUU5MDBBMDk1M0Yg
LyogX1dLSW5zcGVjdG9yRXh0ZW5zaW9uVGVzdGluZy5tbSBpbiBTb3VyY2VzICovLAogCQkJCTU3
OTBBNjc1MjU2NzlGNzQwMDc3QzVBNyAvKiBfV0tQdWJsaWNLZXlDcmVkZW50aWFsQ3JlYXRpb25P
cHRpb25zLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJNTc5MEE2NkQyNTY3OUVCNzAwNzdDNUE3IC8q
IF9XS1B1YmxpY0tleUNyZWRlbnRpYWxEZXNjcmlwdG9yLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJ
NTc5MEE2NTcyNTY3OTlEQTAwNzdDNUE3IC8qIF9XS1B1YmxpY0tleUNyZWRlbnRpYWxFbnRpdHku
bW0gaW4gU291cmNlcyAqLywKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0No
YW5nZUxvZwppbmRleCA4MWZhMjMxNWMyNzk2MGVmYmJhZTJhYWRhNDUxZmE0M2Y3MGFhYTg5Li4x
NmQxYWNjMDBiZTg3MzBjNDQwNTc2ZDE3NGI1MTQ4NzBkMDEzZDhjIDEwMDY0NAotLS0gYS9Ub29s
cy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMjEt
MTAtMTUgIEJKIEJ1cmcgIDxiYnVyZ0BhcHBsZS5jb20+CisKKyAgICAgICAgW0NvY29hXSBXZWIg
SW5zcGVjdG9yOiByZW1vdmUgX1dLSW5zcGVjdG9yRXh0ZW5zaW9uUHJpdmF0ZUZvclRlc3RpbmcK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMTc4NAor
ICAgICAgICA8cmRhcjovL3Byb2JsZW0vODQyODA2MDg+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENv
Y29hL1dLSW5zcGVjdG9yRXh0ZW5zaW9uLm1tOgorICAgICAgICAoVEVTVCk6CisKIDIwMjEtMTAt
MTQgIEpvaG4gV2lsYW5kZXIgIDx3aWxhbmRlckBhcHBsZS5jb20+CiAKICAgICAgICAgVGVzdFdl
YktpdEFQSS5Qcml2YXRlQ2xpY2tNZWFzdXJlbWVudC5GcmF1ZFByZXZlbnRpb24gaXMgYSBjb25z
dGFudCB0aW1lb3V0CmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktp
dENvY29hL1dLSW5zcGVjdG9yRXh0ZW5zaW9uLm1tIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0
cy9XZWJLaXRDb2NvYS9XS0luc3BlY3RvckV4dGVuc2lvbi5tbQppbmRleCBhNjQwNDQzZjRlYjM5
MWJlM2IwYzE0ZjRmNDJhMWJiNTg0M2VhMzFhLi4xYTQ1MjlhZWM1MDQyMDMxYjI0YjJmNmU1YmY3
OGI3Zjg0YzM3ZTMxIDEwMDY0NAotLS0gYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktp
dENvY29hL1dLSW5zcGVjdG9yRXh0ZW5zaW9uLm1tCisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkv
VGVzdHMvV2ViS2l0Q29jb2EvV0tJbnNwZWN0b3JFeHRlbnNpb24ubW0KQEAgLTM2LDcgKzM2LDYg
QEAKICNpbXBvcnQgPFdlYktpdC9fV0tJbnNwZWN0b3JDb25maWd1cmF0aW9uLmg+CiAjaW1wb3J0
IDxXZWJLaXQvX1dLSW5zcGVjdG9yRXh0ZW5zaW9uLmg+CiAjaW1wb3J0IDxXZWJLaXQvX1dLSW5z
cGVjdG9yRXh0ZW5zaW9uRGVsZWdhdGUuaD4KLSNpbXBvcnQgPFdlYktpdC9fV0tJbnNwZWN0b3JF
eHRlbnNpb25Qcml2YXRlRm9yVGVzdGluZy5oPgogI2ltcG9ydCA8V2ViS2l0L19XS0luc3BlY3Rv
clByaXZhdGVGb3JUZXN0aW5nLmg+CiAjaW1wb3J0IDx3dGYvUmV0YWluUHRyLmg+CiAKQEAgLTE1
OCw3ICsxNTcsNyBAQCBURVNUKFdLSW5zcGVjdG9yRXh0ZW5zaW9uLCBDYW5FdmFsdWF0ZVNjcmlw
dEluRXh0ZW5zaW9uVGFiKQogICAgIC8vIFJlYWQgYmFjayBhIHZhbHVlIHRoYXQgaXMgc2V0IGlu
IHRoZSA8aWZyYW1lPidzIHNjcmlwdCBjb250ZXh0LgogICAgIHBlbmRpbmdDYWxsYmFja1dhc0Nh
bGxlZCA9IGZhbHNlOwogICAgIGF1dG8gc2NyaXB0U291cmNlMiA9IEAid2luZG93Ll9zZWNyZXRW
YWx1ZSI7Ci0gICAgW3NoYXJlZEluc3BlY3RvckV4dGVuc2lvbiBfZXZhbHVhdGVTY3JpcHQ6c2Ny
aXB0U291cmNlMiBpbkV4dGVuc2lvblRhYldpdGhJZGVudGlmaWVyOnNoYXJlZEV4dGVuc2lvblRh
YklkZW50aWZpZXIuZ2V0KCkgY29tcGxldGlvbkhhbmRsZXI6XihOU0Vycm9yICogX051bGxhYmxl
IGVycm9yLCBOU0RpY3Rpb25hcnkgKiBfTnVsbGFibGUgcmVzdWx0KSB7CisgICAgW3NoYXJlZElu
c3BlY3RvckV4dGVuc2lvbiBldmFsdWF0ZVNjcmlwdDpzY3JpcHRTb3VyY2UyIGluVGFiV2l0aElk
ZW50aWZpZXI6c2hhcmVkRXh0ZW5zaW9uVGFiSWRlbnRpZmllci5nZXQoKSBjb21wbGV0aW9uSGFu
ZGxlcjpeKE5TRXJyb3IgKiBfTnVsbGFibGUgZXJyb3IsIE5TRGljdGlvbmFyeSAqIF9OdWxsYWJs
ZSByZXN1bHQpIHsKICAgICAgICAgRVhQRUNUX05VTEwoZXJyb3IpOwogICAgICAgICBFWFBFQ1Rf
Tk9UX05VTEwocmVzdWx0KTsKICAgICAgICAgRVhQRUNUX05TX0VRVUFMKHJlc3VsdFtAImFuc3dl
ciJdLCBANDIpOwpAQCAtMTcwLDcgKzE2OSw3IEBAIFRFU1QoV0tJbnNwZWN0b3JFeHRlbnNpb24s
IENhbkV2YWx1YXRlU2NyaXB0SW5FeHRlbnNpb25UYWIpCiAgICAgLy8gQ2hlY2sgdG8gc2VlIHRo
YXQgc2NyaXB0IGlzIGFjdHVhbGx5IGJlaW5nIGV2YWx1YXRlZCBpbiB0aGUgPGlmcmFtZT4ncyBz
Y3JpcHQgY29udGV4dC4KICAgICBwZW5kaW5nQ2FsbGJhY2tXYXNDYWxsZWQgPSBmYWxzZTsKICAg
ICBhdXRvIHNjcmlwdFNvdXJjZTMgPSBAIndpbmRvdy50b3AgIT09IHdpbmRvdyI7Ci0gICAgW3No
YXJlZEluc3BlY3RvckV4dGVuc2lvbiBfZXZhbHVhdGVTY3JpcHQ6c2NyaXB0U291cmNlMyBpbkV4
dGVuc2lvblRhYldpdGhJZGVudGlmaWVyOnNoYXJlZEV4dGVuc2lvblRhYklkZW50aWZpZXIuZ2V0
KCkgY29tcGxldGlvbkhhbmRsZXI6XihOU0Vycm9yICogX051bGxhYmxlIGVycm9yLCBOU0RpY3Rp
b25hcnkgKiBfTnVsbGFibGUgcmVzdWx0KSB7CisgICAgW3NoYXJlZEluc3BlY3RvckV4dGVuc2lv
biBldmFsdWF0ZVNjcmlwdDpzY3JpcHRTb3VyY2UzIGluVGFiV2l0aElkZW50aWZpZXI6c2hhcmVk
RXh0ZW5zaW9uVGFiSWRlbnRpZmllci5nZXQoKSBjb21wbGV0aW9uSGFuZGxlcjpeKE5TRXJyb3Ig
KiBfTnVsbGFibGUgZXJyb3IsIE5TRGljdGlvbmFyeSAqIF9OdWxsYWJsZSByZXN1bHQpIHsKICAg
ICAgICAgRVhQRUNUX05VTEwoZXJyb3IpOwogICAgICAgICBFWFBFQ1RfTk9UX05VTEwocmVzdWx0
KTsKICAgICAgICAgRVhQRUNUX05TX0VRVUFMKHJlc3VsdCwgQFlFUyk7CkBAIC0yNDksNyArMjQ4
LDcgQEAgVEVTVChXS0luc3BlY3RvckV4dGVuc2lvbiwgRXh0ZW5zaW9uVGFiSXNQZXJzaXN0ZW50
KQogCiAgICAgLy8gUmVhZCBiYWNrIGEgdmFsdWUgdGhhdCBpcyB1bmlxdWUgdG8gdGhlIDxpZnJh
bWU+J3Mgc2NyaXB0IGNvbnRleHQuCiAgICAgcGVuZGluZ0NhbGxiYWNrV2FzQ2FsbGVkID0gZmFs
c2U7Ci0gICAgW3NoYXJlZEluc3BlY3RvckV4dGVuc2lvbiBfZXZhbHVhdGVTY3JpcHQ6c2NyaXB0
U291cmNlIGluRXh0ZW5zaW9uVGFiV2l0aElkZW50aWZpZXI6c2hhcmVkRXh0ZW5zaW9uVGFiSWRl
bnRpZmllci5nZXQoKSBjb21wbGV0aW9uSGFuZGxlcjpeKE5TRXJyb3IgKiBfTnVsbGFibGUgZXJy
b3IsIE5TRGljdGlvbmFyeSAqIF9OdWxsYWJsZSByZXN1bHQpIHsKKyAgICBbc2hhcmVkSW5zcGVj
dG9yRXh0ZW5zaW9uIGV2YWx1YXRlU2NyaXB0OnNjcmlwdFNvdXJjZSBpblRhYldpdGhJZGVudGlm
aWVyOnNoYXJlZEV4dGVuc2lvblRhYklkZW50aWZpZXIuZ2V0KCkgY29tcGxldGlvbkhhbmRsZXI6
XihOU0Vycm9yICogX051bGxhYmxlIGVycm9yLCBOU0RpY3Rpb25hcnkgKiBfTnVsbGFibGUgcmVz
dWx0KSB7CiAgICAgICAgIEVYUEVDVF9OVUxMKGVycm9yKTsKICAgICAgICAgRVhQRUNUX05PVF9O
VUxMKHJlc3VsdCk7CiAgICAgICAgIGV2YWx1YXRpb25SZXN1bHQgPSByZXN1bHQ7CkBAIC0yNjUs
NyArMjY0LDcgQEAgVEVTVChXS0luc3BlY3RvckV4dGVuc2lvbiwgRXh0ZW5zaW9uVGFiSXNQZXJz
aXN0ZW50KQogICAgIC8vIENoZWNrIHRoZSB1bmlxdWUgdmFsdWUgYWdhaW4sIHdoaWxlIHRoZSA8
aWZyYW1lPiBpcyBiZWluZyBoaWRkZW4uIElmIHRoZSA8aWZyYW1lPiBpcwogICAgIC8vIGRldGFj
aGVkIGZyb20gdGhlIERPTSwgdGhlbiB0aGlzIGV2YWx1YXRpb24gd2lsbCBmYWlsIG9yIGhhbmcu
CiAgICAgcGVuZGluZ0NhbGxiYWNrV2FzQ2FsbGVkID0gZmFsc2U7Ci0gICAgW3NoYXJlZEluc3Bl
Y3RvckV4dGVuc2lvbiBfZXZhbHVhdGVTY3JpcHQ6c2NyaXB0U291cmNlIGluRXh0ZW5zaW9uVGFi
V2l0aElkZW50aWZpZXI6c2hhcmVkRXh0ZW5zaW9uVGFiSWRlbnRpZmllci5nZXQoKSBjb21wbGV0
aW9uSGFuZGxlcjpeKE5TRXJyb3IgKiBfTnVsbGFibGUgZXJyb3IsIE5TRGljdGlvbmFyeSAqIF9O
dWxsYWJsZSByZXN1bHQpIHsKKyAgICBbc2hhcmVkSW5zcGVjdG9yRXh0ZW5zaW9uIGV2YWx1YXRl
U2NyaXB0OnNjcmlwdFNvdXJjZSBpblRhYldpdGhJZGVudGlmaWVyOnNoYXJlZEV4dGVuc2lvblRh
YklkZW50aWZpZXIuZ2V0KCkgY29tcGxldGlvbkhhbmRsZXI6XihOU0Vycm9yICogX051bGxhYmxl
IGVycm9yLCBOU0RpY3Rpb25hcnkgKiBfTnVsbGFibGUgcmVzdWx0KSB7CiAgICAgICAgIEVYUEVD
VF9OVUxMKGVycm9yKTsKICAgICAgICAgRVhQRUNUX05PVF9OVUxMKHJlc3VsdCk7CiAgICAgICAg
IEVYUEVDVF9OU19FUVVBTChyZXN1bHQsIGV2YWx1YXRpb25SZXN1bHQuZ2V0KCkpOwpAQCAtMjg3
LDcgKzI4Niw3IEBAIFRFU1QoV0tJbnNwZWN0b3JFeHRlbnNpb24sIEV4dGVuc2lvblRhYklzUGVy
c2lzdGVudCkKIAogICAgIC8vIENoZWNrIHRoZSB1bmlxdWUgdmFsdWUgYWdhaW4gYWZ0ZXIgcmVz
ZWxlY3RpbmcgdGhlIGV4dGVuc2lvbiB0YWIuCiAgICAgcGVuZGluZ0NhbGxiYWNrV2FzQ2FsbGVk
ID0gZmFsc2U7Ci0gICAgW3NoYXJlZEluc3BlY3RvckV4dGVuc2lvbiBfZXZhbHVhdGVTY3JpcHQ6
c2NyaXB0U291cmNlIGluRXh0ZW5zaW9uVGFiV2l0aElkZW50aWZpZXI6c2hhcmVkRXh0ZW5zaW9u
VGFiSWRlbnRpZmllci5nZXQoKSBjb21wbGV0aW9uSGFuZGxlcjpeKE5TRXJyb3IgKiBfTnVsbGFi
bGUgZXJyb3IsIE5TRGljdGlvbmFyeSAqIF9OdWxsYWJsZSByZXN1bHQpIHsKKyAgICBbc2hhcmVk
SW5zcGVjdG9yRXh0ZW5zaW9uIGV2YWx1YXRlU2NyaXB0OnNjcmlwdFNvdXJjZSBpblRhYldpdGhJ
ZGVudGlmaWVyOnNoYXJlZEV4dGVuc2lvblRhYklkZW50aWZpZXIuZ2V0KCkgY29tcGxldGlvbkhh
bmRsZXI6XihOU0Vycm9yICogX051bGxhYmxlIGVycm9yLCBOU0RpY3Rpb25hcnkgKiBfTnVsbGFi
bGUgcmVzdWx0KSB7CiAgICAgICAgIEVYUEVDVF9OVUxMKGVycm9yKTsKICAgICAgICAgRVhQRUNU
X05PVF9OVUxMKHJlc3VsdCk7CiAgICAgICAgIEVYUEVDVF9OU19FUVVBTChyZXN1bHQsIGV2YWx1
YXRpb25SZXN1bHQuZ2V0KCkpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>441405</attachid>
            <date>2021-10-15 11:08:25 -0700</date>
            <delta_ts>2021-10-15 16:43:45 -0700</delta_ts>
            <desc>Patch v1.1</desc>
            <filename>bug-231784-20211015110824.patch</filename>
            <type>text/plain</type>
            <size>22461</size>
            <attacher name="Blaze Burg">bburg</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg0MjUxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDIwNWQ5MGU3YWNkNmE3YTFm
ZDM4ZDY3ZjRkZTYwMmY3MGZjM2NiZmMuLjAwMDYxZWU0MTM1OTVlMmExODIyZGIxNzQ3MWRjZDlk
OGU2ODAyYTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjIgQEAKKzIwMjEtMTAtMTUgIEJKIEJ1cmcg
IDxiYnVyZ0BhcHBsZS5jb20+CisKKyAgICAgICAgW0NvY29hXSBXZWIgSW5zcGVjdG9yOiByZW1v
dmUgX1dLSW5zcGVjdG9yRXh0ZW5zaW9uUHJpdmF0ZUZvclRlc3RpbmcKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMTc4NAorICAgICAgICA8cmRhcjov
L3Byb2JsZW0vODQyODA2MDg+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgUHJvbW90ZSB0aGUgb25seSBtZXRob2QgdG8gYmUgQVBJIGZvciBfV0tJbnNw
ZWN0b3JFeHRlbnNpb24uIEl0IGlzIG5lZWRlZAorICAgICAgICB0byBpbXBsZW1lbnQgc29tZSBw
YXJ0cyBvZiB0aGUgZGV2dG9vbHMgQVBJLgorCisgICAgICAgICogU291cmNlc0NvY29hLnR4dDoK
KyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0NvY29hL19XS0luc3BlY3RvckV4dGVuc2lvbi5oOgor
ICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLSW5zcGVjdG9yRXh0ZW5zaW9uLm1tOgor
ICAgICAgICAoLVtfV0tJbnNwZWN0b3JFeHRlbnNpb24gZXZhbHVhdGVTY3JpcHQ6aW5UYWJXaXRo
SWRlbnRpZmllcjpjb21wbGV0aW9uSGFuZGxlcjpdKToKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJ
L0NvY29hL19XS0luc3BlY3RvckV4dGVuc2lvblByaXZhdGVGb3JUZXN0aW5nLmg6IFJlbW92ZWQu
CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tJbnNwZWN0b3JFeHRlbnNpb25UZXN0
aW5nLm1tOiBSZW1vdmVkLgorICAgICAgICAqIFdlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qOgorCiAyMDIxLTEwLTE1ICBLYXRlIENoZW5leSAgPGthdGhlcmluZV9jaGVuZXlAYXBwbGUu
Y29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQgbWFjY2F0YWx5c3QgYnVpbGQgZml4LgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9Tb3VyY2VzQ29jb2EudHh0IGIvU291cmNlL1dlYktpdC9Tb3Vy
Y2VzQ29jb2EudHh0CmluZGV4IGZkOTQ5ZDg5YjAwZWY0YTM0NzcxNjgzYzczZWI3MWE5OGYwNTFh
NmYuLjdkODUwMDM0ZWQ2YjVlMjJmMDBhNTE4MzkyYzJmOWM2NTY3Y2NhNDQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvU291cmNlc0NvY29hLnR4dAorKysgYi9Tb3VyY2UvV2ViS2l0L1NvdXJj
ZXNDb2NvYS50eHQKQEAgLTI4OCw3ICsyODgsNiBAQCBVSVByb2Nlc3MvQVBJL0NvY29hL19XS0lu
c3BlY3RvckNvbmZpZ3VyYXRpb24ubW0KIFVJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLSW5zcGVjdG9y
VGVzdGluZy5tbQogVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tJbnNwZWN0b3JEZWJ1Z2dhYmxlSW5m
by5tbQogVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tJbnNwZWN0b3JFeHRlbnNpb24ubW0KLVVJUHJv
Y2Vzcy9BUEkvQ29jb2EvX1dLSW5zcGVjdG9yRXh0ZW5zaW9uVGVzdGluZy5tbQogVUlQcm9jZXNz
L0FQSS9Db2NvYS9fV0tJbnNwZWN0b3JXaW5kb3cubW0KIFVJUHJvY2Vzcy9BUEkvQ29jb2EvX1dL
SW50ZXJuYWxEZWJ1Z0ZlYXR1cmUubW0KIFVJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLTGlua0ljb25Q
YXJhbWV0ZXJzLm1tCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29j
b2EvX1dLSW5zcGVjdG9yRXh0ZW5zaW9uLmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkv
Q29jb2EvX1dLSW5zcGVjdG9yRXh0ZW5zaW9uLmgKaW5kZXggZjFkNzE0MDQ1MmMzN2NmNDUxZTZh
YmQ2ZjY3N2ZjMTc2NTMwY2ExOS4uMGU5MzdlMjU3NmE4NTA0ZDFhYWYxNTE4ZWE3Y2M5MDUxMWY5
YTQzMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL19XS0lu
c3BlY3RvckV4dGVuc2lvbi5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2Nv
YS9fV0tJbnNwZWN0b3JFeHRlbnNpb24uaApAQCAtNjUsNiArNjUsMTYgQEAgV0tfQ0xBU1NfQVZB
SUxBQkxFKG1hY29zKDEyLjApKQogICovCiAtICh2b2lkKWV2YWx1YXRlU2NyaXB0OihOU1N0cmlu
ZyAqKXNjcmlwdFNvdXJjZSBmcmFtZVVSTDooTlNVUkwgKilmcmFtZVVSTCBjb250ZXh0U2VjdXJp
dHlPcmlnaW46KE5TVVJMICopY29udGV4dFNlY3VyaXR5T3JpZ2luIHVzZUNvbnRlbnRTY3JpcHRD
b250ZXh0OihCT09MKXVzZUNvbnRlbnRTY3JpcHRDb250ZXh0IGNvbXBsZXRpb25IYW5kbGVyOih2
b2lkKF4pKE5TRXJyb3IgKiBfTnVsbGFibGUsIE5TRGljdGlvbmFyeSAqIF9OdWxsYWJsZSByZXN1
bHQpKWNvbXBsZXRpb25IYW5kbGVyOwogCisvKioKKyAqIEBhYnN0cmFjdCBFdmFsdWF0ZXMgSmF2
YVNjcmlwdCBpbiB0aGUgY29udGV4dCBvZiBhIFdlYiBJbnNwZWN0b3IgdGFiIGNyZWF0ZWQgYnkg
dGhpcyBfV0tJbnNwZWN0b3JFeHRlbnNpb24uCisgKiBAcGFyYW0gc2NyaXB0U291cmNlIFRoZSBK
YXZhU2NyaXB0IGNvZGUgdG8gYmUgZXZhbHVhdGVkLgorICogQHBhcmFtIHRhYklkZW50aWZpZXIg
SWRlbnRpZmllciBmb3IgdGhlIFdlYiBJbnNwZWN0b3IgdGFiIGluIHdoaWNoIHRvIGV2YWx1YXRl
IEphdmFTY3JpcHQuCisgKiBAcGFyYW0gY29tcGxldGlvbkhhbmRsZXIgQSBibG9jayB0byBpbnZv
a2Ugd2hlbiB0aGUgb3BlcmF0aW9uIGNvbXBsZXRlcyBvciBmYWlscy4KKyAqIEBkaXNjdXNzaW9u
IFRoZSBjb21wbGV0aW9uSGFuZGxlciBpcyBwYXNzZWQgYW4gTlNKU09OU2VyaWFsaXphdGlvbi1j
b21wYXRpYmxlIE5TT2JqZWN0IHJlcHJlc2VudGluZyB0aGUgZXZhbHVhdGlvbiByZXN1bHQsIG9y
IGFuIGVycm9yLgorICogc2NyaXB0U291cmNlIGlzIHRyZWF0ZWQgYXMgYSB0b3AtbGV2ZWwgZXZh
bHVhdGlvbi4gQnkgZGVmYXVsdCwgdGhlIHNjcmlwdCBpcyBldmFsdWF0ZWQgaW4gdGhlIGluc3Bl
Y3RlZCBwYWdlJ3Mgc2NyaXB0IGNvbnRleHQuCisgKi8KKy0gKHZvaWQpZXZhbHVhdGVTY3JpcHQ6
KE5TU3RyaW5nICopc2NyaXB0U291cmNlIGluVGFiV2l0aElkZW50aWZpZXI6KE5TU3RyaW5nICop
dGFiSWRlbnRpZmllciBjb21wbGV0aW9uSGFuZGxlcjoodm9pZCheKShOU0Vycm9yICogX051bGxh
YmxlLCBOU0RpY3Rpb25hcnkgKiBfTnVsbGFibGUgcmVzdWx0KSljb21wbGV0aW9uSGFuZGxlcjsK
KwogLyoqCiAgKiBAYWJzdHJhY3QgUmVsb2FkcyB0aGUgaW5zcGVjdGVkIHBhZ2Ugb24gYmVoYWxm
IG9mIHRoZSBfV0tJbnNwZWN0b3JFeHRlbnNpb24uCiAgKiBAcGFyYW0gaWdub3JlQ2FjaGUgSWYg
WUVTLCByZWxvYWRzIHRoZSBwYWdlIHdoaWxlIGlnbm9yaW5nIHRoZSBjYWNoZS4KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tJbnNwZWN0b3JFeHRlbnNp
b24ubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLSW5zcGVjdG9yRXh0
ZW5zaW9uLm1tCmluZGV4IDQ2NTYxZDM0MzE0YTc5ZDQyYzU3ZTU5YmY3OTI3YWQxZmE0NTEwNDUu
LjY2YmI3NzU3Yjg4NGQzNjIxMWVjM2IyOWRkZTllYWIyMjZiMmEwY2UgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tJbnNwZWN0b3JFeHRlbnNpb24ubW0K
KysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL19XS0luc3BlY3RvckV4dGVu
c2lvbi5tbQpAQCAtMjgsNiArMjgsNyBAQAogCiAjaWYgRU5BQkxFKElOU1BFQ1RPUl9FWFRFTlNJ
T05TKQogCisjaW1wb3J0ICJBUElTZXJpYWxpemVkU2NyaXB0VmFsdWUuaCIKICNpbXBvcnQgIklu
c3BlY3RvckV4dGVuc2lvbkRlbGVnYXRlLmgiCiAjaW1wb3J0ICJJbnNwZWN0b3JFeHRlbnNpb25U
eXBlcy5oIgogI2ltcG9ydCAiV0tFcnJvci5oIgpAQCAtMTAyLDYgKzEwMywyNSBAQCAtICh2b2lk
KWV2YWx1YXRlU2NyaXB0OihOU1N0cmluZyAqKXNjcmlwdFNvdXJjZSBmcmFtZVVSTDooTlNVUkwg
KilmcmFtZVVSTCBjb250ZQogICAgIH0pOwogfQogCistICh2b2lkKWV2YWx1YXRlU2NyaXB0OihO
U1N0cmluZyAqKXNjcmlwdFNvdXJjZSBpblRhYldpdGhJZGVudGlmaWVyOihOU1N0cmluZyAqKWV4
dGVuc2lvblRhYklkZW50aWZpZXIgY29tcGxldGlvbkhhbmRsZXI6KHZvaWQoXikoTlNFcnJvciAq
LCBOU0RpY3Rpb25hcnkgKikpY29tcGxldGlvbkhhbmRsZXIKK3sKKyAgICBfZXh0ZW5zaW9uLT5l
dmFsdWF0ZVNjcmlwdEluRXh0ZW5zaW9uVGFiKGV4dGVuc2lvblRhYklkZW50aWZpZXIsIHNjcmlw
dFNvdXJjZSwgW3Byb3RlY3RlZFNlbGYgPSByZXRhaW5QdHIoc2VsZiksIGNhcHR1cmVkQmxvY2sg
PSBtYWtlQmxvY2tQdHIoV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpXSAoSW5zcGVjdG9yOjpF
eHRlbnNpb25FdmFsdWF0aW9uUmVzdWx0JiYgcmVzdWx0KSBtdXRhYmxlIHsKKyAgICAgICAgaWYg
KCFyZXN1bHQpIHsKKyAgICAgICAgICAgIGNhcHR1cmVkQmxvY2soW05TRXJyb3IgZXJyb3JXaXRo
RG9tYWluOldLRXJyb3JEb21haW4gY29kZTpXS0Vycm9yVW5rbm93biB1c2VySW5mbzpAeyBOU0xv
Y2FsaXplZEZhaWx1cmVSZWFzb25FcnJvcktleTogSW5zcGVjdG9yOjpleHRlbnNpb25FcnJvclRv
U3RyaW5nKHJlc3VsdC5lcnJvcigpKSB9XSwgbmlsKTsKKyAgICAgICAgICAgIHJldHVybjsKKyAg
ICAgICAgfQorICAgICAgICAKKyAgICAgICAgYXV0byB2YWx1ZU9yRXhjZXB0aW9uID0gcmVzdWx0
LnZhbHVlKCk7CisgICAgICAgIGlmICghdmFsdWVPckV4Y2VwdGlvbikgeworICAgICAgICAgICAg
Y2FwdHVyZWRCbG9jayhuc0Vycm9yRnJvbUV4Y2VwdGlvbkRldGFpbHModmFsdWVPckV4Y2VwdGlv
bi5lcnJvcigpKS5nZXQoKSwgbmlsKTsKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQor
CisgICAgICAgIGlkIGJvZHkgPSBBUEk6OlNlcmlhbGl6ZWRTY3JpcHRWYWx1ZTo6ZGVzZXJpYWxp
emUodmFsdWVPckV4Y2VwdGlvbi52YWx1ZSgpLT5pbnRlcm5hbFJlcHJlc2VudGF0aW9uKCksIDAp
OworICAgICAgICBjYXB0dXJlZEJsb2NrKG5pbCwgYm9keSk7CisgICAgfSk7Cit9CisKIC0gKHZv
aWQpcmVsb2FkSWdub3JpbmdDYWNoZTooQk9PTClpZ25vcmVDYWNoZSB1c2VyQWdlbnQ6KE5TU3Ry
aW5nICopdXNlckFnZW50IGluamVjdGVkU2NyaXB0OihOU1N0cmluZyAqKWluamVjdGVkU2NyaXB0
IGNvbXBsZXRpb25IYW5kbGVyOih2b2lkKF4pKE5TRXJyb3IgKikpY29tcGxldGlvbkhhbmRsZXIK
IHsKICAgICBzdGQ6Om9wdGlvbmFsPFN0cmluZz4gb3B0aW9uYWxVc2VyQWdlbnQgPSB1c2VyQWdl
bnQgPyBzdGQ6Om1ha2Vfb3B0aW9uYWwoU3RyaW5nKHVzZXJBZ2VudCkpIDogc3RkOjpudWxsb3B0
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL19XS0luc3Bl
Y3RvckV4dGVuc2lvblByaXZhdGVGb3JUZXN0aW5nLmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9BUEkvQ29jb2EvX1dLSW5zcGVjdG9yRXh0ZW5zaW9uUHJpdmF0ZUZvclRlc3RpbmcuaApkZWxl
dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMGQ1YTE1NjhhYWRhNDNjY2UyMDZhMTVlMDgxYjlh
NDYyNWYzYWRjNS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0g
YS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLSW5zcGVjdG9yRXh0ZW5zaW9u
UHJpdmF0ZUZvclRlc3RpbmcuaAorKysgL2Rldi9udWxsCkBAIC0xLDM4ICswLDAgQEAKLS8qCi0g
KiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoK
LSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVu
dGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0
aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQg
SVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKLSAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVE
IFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogVEhFIElNUExJ
RUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElD
VUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUg
SU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCi0gKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElO
RElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCi0gKiBDT05TRVFVRU5U
SUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBP
RgotICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9S
IFBST0ZJVFM7IE9SIEJVU0lORVNTCi0gKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgotICogQ09OVFJBQ1QsIFNU
UklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lT
RSkKLSAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YKLSAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
LSAqLwotCi0jaW1wb3J0ICJfV0tJbnNwZWN0b3JFeHRlbnNpb24uaCIKLQotI2lmICFUQVJHRVRf
T1NfSVBIT05FCi0KLU5TX0FTU1VNRV9OT05OVUxMX0JFR0lOCi0KLUBpbnRlcmZhY2UgX1dLSW5z
cGVjdG9yRXh0ZW5zaW9uIChXS1Rlc3RpbmcpCi0tICh2b2lkKV9ldmFsdWF0ZVNjcmlwdDooTlNT
dHJpbmcgKilzY3JpcHRTb3VyY2UgaW5FeHRlbnNpb25UYWJXaXRoSWRlbnRpZmllcjooTlNTdHJp
bmcgKilleHRlbnNpb25UYWJJZGVudGlmaWVyIGNvbXBsZXRpb25IYW5kbGVyOih2b2lkKF4pKE5T
RXJyb3IgKiBfTnVsbGFibGUsIE5TRGljdGlvbmFyeSAqIF9OdWxsYWJsZSByZXN1bHQpKWNvbXBs
ZXRpb25IYW5kbGVyOwotQGVuZAotCi1OU19BU1NVTUVfTk9OTlVMTF9FTkQKLQotI2VuZGlmIC8v
ICFUQVJHRVRfT1NfSVBIT05FCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9B
UEkvQ29jb2EvX1dLSW5zcGVjdG9yRXh0ZW5zaW9uVGVzdGluZy5tbSBiL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tJbnNwZWN0b3JFeHRlbnNpb25UZXN0aW5nLm1tCmRlbGV0
ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA0MWM2YTZmMDhhYTBiOWE2NThhODliYzBmN2MzYWMw
MzE1YjhkODhlLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBh
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tJbnNwZWN0b3JFeHRlbnNpb25U
ZXN0aW5nLm1tCisrKyAvZGV2L251bGwKQEAgLTEsNjUgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdo
dCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgot
ICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgot
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJ
QlVUT1JTIGBgQVMgSVMnJwotICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBUSEUgSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElU
UyBDT05UUklCVVRPUlMKLSAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKLSAqIENPTlNFUVVFTlRJQUwgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCi0gKiBTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsg
T1IgQlVTSU5FU1MKLSAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBU
SEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCi0gKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotICogQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRgotICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNp
bXBvcnQgImNvbmZpZy5oIgotCi0jaWYgRU5BQkxFKElOU1BFQ1RPUl9FWFRFTlNJT05TKQotCi0j
aW1wb3J0ICJBUElTZXJpYWxpemVkU2NyaXB0VmFsdWUuaCIKLSNpbXBvcnQgIkluc3BlY3RvckV4
dGVuc2lvblR5cGVzLmgiCi0jaW1wb3J0ICJXS0Vycm9yLmgiCi0jaW1wb3J0ICJXS1dlYlZpZXdJ
bnRlcm5hbC5oIgotI2ltcG9ydCAiX1dLSW5zcGVjdG9yRXh0ZW5zaW9uSW50ZXJuYWwuaCIKLSNp
bXBvcnQgIl9XS0luc3BlY3RvckV4dGVuc2lvblByaXZhdGVGb3JUZXN0aW5nLmgiCi0jaW1wb3J0
IDxXZWJDb3JlL0V4Y2VwdGlvbkRldGFpbHMuaD4KLSNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZU9i
akNFeHRyYXMuaD4KLSNpbXBvcnQgPHd0Zi9CbG9ja1B0ci5oPgotCi0vLyBUaGlzIGZpbGUgZXhp
c3RzIHRvIGNlbnRyYWxpemUgYWxsIGZyYWdpbGUgY29kZSB0aGF0IGlzIHVzZWQgYnkgX1dLSW5z
cGVjdG9yRXh0ZW5zaW9uIEFQSSB0ZXN0cy4KLQotQGltcGxlbWVudGF0aW9uIF9XS0luc3BlY3Rv
ckV4dGVuc2lvbiAoV0tUZXN0aW5nKQotCi0tICh2b2lkKV9ldmFsdWF0ZVNjcmlwdDooTlNTdHJp
bmcgKilzY3JpcHRTb3VyY2UgaW5FeHRlbnNpb25UYWJXaXRoSWRlbnRpZmllcjooTlNTdHJpbmcg
KilleHRlbnNpb25UYWJJZGVudGlmaWVyIGNvbXBsZXRpb25IYW5kbGVyOih2b2lkKF4pKE5TRXJy
b3IgKiwgTlNEaWN0aW9uYXJ5ICopKWNvbXBsZXRpb25IYW5kbGVyCi17Ci0gICAgX2V4dGVuc2lv
bi0+ZXZhbHVhdGVTY3JpcHRJbkV4dGVuc2lvblRhYihleHRlbnNpb25UYWJJZGVudGlmaWVyLCBz
Y3JpcHRTb3VyY2UsIFtwcm90ZWN0ZWRTZWxmID0gcmV0YWluUHRyKHNlbGYpLCBjYXB0dXJlZEJs
b2NrID0gbWFrZUJsb2NrUHRyKFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKV0gKEluc3BlY3Rv
cjo6RXh0ZW5zaW9uRXZhbHVhdGlvblJlc3VsdCYmIHJlc3VsdCkgbXV0YWJsZSB7Ci0gICAgICAg
IGlmICghcmVzdWx0KSB7Ci0gICAgICAgICAgICBjYXB0dXJlZEJsb2NrKFtOU0Vycm9yIGVycm9y
V2l0aERvbWFpbjpXS0Vycm9yRG9tYWluIGNvZGU6V0tFcnJvclVua25vd24gdXNlckluZm86QHsg
TlNMb2NhbGl6ZWRGYWlsdXJlUmVhc29uRXJyb3JLZXk6IEluc3BlY3Rvcjo6ZXh0ZW5zaW9uRXJy
b3JUb1N0cmluZyhyZXN1bHQuZXJyb3IoKSkgfV0sIG5pbCk7Ci0gICAgICAgICAgICByZXR1cm47
Ci0gICAgICAgIH0KLSAgICAgICAgCi0gICAgICAgIGF1dG8gdmFsdWVPckV4Y2VwdGlvbiA9IHJl
c3VsdC52YWx1ZSgpOwotICAgICAgICBpZiAoIXZhbHVlT3JFeGNlcHRpb24pIHsKLSAgICAgICAg
ICAgIGNhcHR1cmVkQmxvY2sobnNFcnJvckZyb21FeGNlcHRpb25EZXRhaWxzKHZhbHVlT3JFeGNl
cHRpb24uZXJyb3IoKSkuZ2V0KCksIG5pbCk7Ci0gICAgICAgICAgICByZXR1cm47Ci0gICAgICAg
IH0KLQotICAgICAgICBpZCBib2R5ID0gQVBJOjpTZXJpYWxpemVkU2NyaXB0VmFsdWU6OmRlc2Vy
aWFsaXplKHZhbHVlT3JFeGNlcHRpb24udmFsdWUoKS0+aW50ZXJuYWxSZXByZXNlbnRhdGlvbigp
LCAwKTsKLSAgICAgICAgY2FwdHVyZWRCbG9jayhuaWwsIGJvZHkpOwotICAgIH0pOwotfQotCi1A
ZW5kCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5TUEVDVE9SX0VYVEVOU0lPTlMpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNl
L1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCBkY2Y0YzBmN2I4
YzQ2NWVjYWU3NTM3NmNiN2Y2M2MxMTkyMGFhMWU1Li5iMmYxMGRlZGQxMTJkZGJjNzlhOWNjMzlk
YTk3MTg0NjQwOThhZWY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9w
cm9qZWN0LnBieHByb2oKQEAgLTE2MDcsOCArMTYwNyw2IEBACiAJCTk5QjE2NzY0MjUyQkJFNjIw
MDczMTQwRSAvKiBXZWJJbnNwZWN0b3JVSUV4dGVuc2lvbkNvbnRyb2xsZXIuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk5QjE2NzYxMjUyQkJFNjEwMDcz
MTQwRSAvKiBXZWJJbnNwZWN0b3JVSUV4dGVuc2lvbkNvbnRyb2xsZXIuaCAqLzsgfTsKIAkJOTlD
M0FFMkQxREFEQTZBRDAwQUY1QzE2IC8qIFdlYkF1dG9tYXRpb25TZXNzaW9uTWFjcm9zLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5OUMzQUUyQzFEQURB
NkE3MDBBRjVDMTYgLyogV2ViQXV0b21hdGlvblNlc3Npb25NYWNyb3MuaCAqLzsgfTsKIAkJOTlD
NjA3RUIyNkZBOUQ0OTAwQTA5NTNGIC8qIF9XS0luc3BlY3RvcklCQWN0aW9ucy5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTlDNjA3RUEyNkZBOUQ0ODAw
QTA5NTNGIC8qIF9XS0luc3BlY3RvcklCQWN0aW9ucy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07Ci0JCTk5QzYwN0YwMjZGQjkxRTgwMEEwOTUzRiAvKiBf
V0tJbnNwZWN0b3JFeHRlbnNpb25Qcml2YXRlRm9yVGVzdGluZy5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTlDNjA3RUUyNkZCOTFFODAwQTA5NTNGIC8q
IF9XS0luc3BlY3RvckV4dGVuc2lvblByaXZhdGVGb3JUZXN0aW5nLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKLQkJOTlDNjA3RjEyNkZCOTFFOTAwQTA5
NTNGIC8qIF9XS0luc3BlY3RvckV4dGVuc2lvblRlc3RpbmcubW0gaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5OUM2MDdFRjI2RkI5MUU4MDBBMDk1M0YgLyog
X1dLSW5zcGVjdG9yRXh0ZW5zaW9uVGVzdGluZy5tbSAqLzsgfTsKIAkJOTlDODFENUExQzIwRTdF
MjAwNUM0QzgyIC8qIEF1dG9tYXRpb25DbGllbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk5QzgxRDU1MUMyMERGQkUwMDVDNEM4MiAvKiBBdXRvbWF0
aW9uQ2xpZW50LmggKi87IH07CiAJCTk5QzgxRDVEMUMyMUYzOEIwMDVDNEM4MiAvKiBBUElBdXRv
bWF0aW9uQ2xpZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA5OUM4MUQ1QjFDMjBFODE3MDA1QzRDODIgLyogQVBJQXV0b21hdGlvbkNsaWVudC5oICov
OyB9OwogCQk5OUU3MTRDNTFDMTI0QTA0MDA2NjVCM0EgLyogX1dLQXV0b21hdGlvbkRlbGVnYXRl
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5OUU3MTRD
MTFDMTI0OUU2MDA2NjVCM0EgLyogX1dLQXV0b21hdGlvbkRlbGVnYXRlLmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKQEAgLTUyMDUsOCArNTIwMyw2IEBA
CiAJCTk5QzNBRTI2MURBRDk0ODUwMEFGNUMxNiAvKiBXZWJBdXRvbWF0aW9uU2Vzc2lvbkNvY29h
Lm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gV2ViQXV0b21hdGlv
blNlc3Npb25Db2NvYS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTlDM0FFMkMx
REFEQTZBNzAwQUY1QzE2IC8qIFdlYkF1dG9tYXRpb25TZXNzaW9uTWFjcm9zLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkF1dG9tYXRpb25TZXNzaW9uTWFjcm9zLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTk5QzYwN0VBMjZGQTlENDgwMEEwOTUzRiAvKiBf
V0tJbnNwZWN0b3JJQkFjdGlvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
X1dLSW5zcGVjdG9ySUJBY3Rpb25zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTk5
QzYwN0VFMjZGQjkxRTgwMEEwOTUzRiAvKiBfV0tJbnNwZWN0b3JFeHRlbnNpb25Qcml2YXRlRm9y
VGVzdGluZy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBfV0tJbnNwZWN0b3JF
eHRlbnNpb25Qcml2YXRlRm9yVGVzdGluZy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owot
CQk5OUM2MDdFRjI2RkI5MUU4MDBBMDk1M0YgLyogX1dLSW5zcGVjdG9yRXh0ZW5zaW9uVGVzdGlu
Zy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IF9XS0luc3BlY3Rv
ckV4dGVuc2lvblRlc3RpbmcubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTk5Qzgx
RDU1MUMyMERGQkUwMDVDNEM4MiAvKiBBdXRvbWF0aW9uQ2xpZW50LmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEF1dG9tYXRpb25DbGllbnQuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJOTlDODFENTYxQzIwREZCRTAwNUM0QzgyIC8qIEF1dG9tYXRpb25DbGllbnQu
bW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBBdXRvbWF0aW9uQ2xp
ZW50Lm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5OUM4MUQ1QjFDMjBFODE3MDA1
QzRDODIgLyogQVBJQXV0b21hdGlvbkNsaWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBBUElBdXRvbWF0aW9uQ2xpZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CkBAIC04MzI2LDggKzgzMjIsNiBAQAogCQkJCTk5NkIyQkEwMjVFMjU5MTEwMDcxOTM3OSAvKiBf
V0tJbnNwZWN0b3JFeHRlbnNpb25EZWxlZ2F0ZS5oICovLAogCQkJCTk5Nzk2NUEyMjUzMTI4Qzcw
MEIzMUFFMyAvKiBfV0tJbnNwZWN0b3JFeHRlbnNpb25Ib3N0LmggKi8sCiAJCQkJOTlCMTY3NTUy
NTJCQjdFMTAwNzMxNDBFIC8qIF9XS0luc3BlY3RvckV4dGVuc2lvbkludGVybmFsLmggKi8sCi0J
CQkJOTlDNjA3RUUyNkZCOTFFODAwQTA5NTNGIC8qIF9XS0luc3BlY3RvckV4dGVuc2lvblByaXZh
dGVGb3JUZXN0aW5nLmggKi8sCi0JCQkJOTlDNjA3RUYyNkZCOTFFODAwQTA5NTNGIC8qIF9XS0lu
c3BlY3RvckV4dGVuc2lvblRlc3RpbmcubW0gKi8sCiAJCQkJOTlDNjA3RUEyNkZBOUQ0ODAwQTA5
NTNGIC8qIF9XS0luc3BlY3RvcklCQWN0aW9ucy5oICovLAogCQkJCTVDQUZERTQ0MjEzMDg0MzYw
MEIxRjdFMSAvKiBfV0tJbnNwZWN0b3JJbnRlcm5hbC5oICovLAogCQkJCTk5NzlDQTU3MjM3RjQ5
RjAwMDM5RUMwNSAvKiBfV0tJbnNwZWN0b3JQcml2YXRlLmggKi8sCkBAIC0xMjE2NSw3ICsxMjE1
OSw2IEBACiAJCQkJOTk2QjJCQTEyNUUyNTkxMTAwNzE5Mzc5IC8qIF9XS0luc3BlY3RvckV4dGVu
c2lvbkRlbGVnYXRlLmggaW4gSGVhZGVycyAqLywKIAkJCQk5OTc5NjVBMzI1MzEyOEM3MDBCMzFB
RTMgLyogX1dLSW5zcGVjdG9yRXh0ZW5zaW9uSG9zdC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTlC
MTY3NTgyNTJCQjdFMTAwNzMxNDBFIC8qIF9XS0luc3BlY3RvckV4dGVuc2lvbkludGVybmFsLmgg
aW4gSGVhZGVycyAqLywKLQkJCQk5OUM2MDdGMDI2RkI5MUU4MDBBMDk1M0YgLyogX1dLSW5zcGVj
dG9yRXh0ZW5zaW9uUHJpdmF0ZUZvclRlc3RpbmcuaCBpbiBIZWFkZXJzICovLAogCQkJCTk5QzYw
N0VCMjZGQTlENDkwMEEwOTUzRiAvKiBfV0tJbnNwZWN0b3JJQkFjdGlvbnMuaCBpbiBIZWFkZXJz
ICovLAogCQkJCTVDQUZERTQ3MjEzMDg0NkEwMEIxRjdFMSAvKiBfV0tJbnNwZWN0b3JJbnRlcm5h
bC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTk3OUNBNTgyMzdGNDlGMTAwMzlFQzA1IC8qIF9XS0lu
c3BlY3RvclByaXZhdGUuaCBpbiBIZWFkZXJzICovLApAQCAtMTIzMTQsNyArMTIzMDcsNiBAQAog
CQkJCTdDODlEMjk0MUE2NzEyMkYwMDNBNUZERSAvKiBBUElVc2VyU2NyaXB0LmggaW4gSGVhZGVy
cyAqLywKIAkJCQkyRDg3ODYyNDFCREI1OEZGMDBEMDJBQkIgLyogQVBJVXNlclN0eWxlU2hlZXQu
aCBpbiBIZWFkZXJzICovLAogCQkJCUM1RTFBRkVEMTZCMjEwMTcwMDZDQzFGMiAvKiBBUElXZWJB
cmNoaXZlLmggaW4gSGVhZGVycyAqLywKLQkJCQk1MTI3MTQ4MzI3MDI0RjAzMDAxOTcwMzQgLyog
V2ViTm90aWZpY2F0aW9uUHJvdmlkZXJDb2NvYS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQzVFMUFG
RUYxNkIyMTAyOTAwNkNDMUYyIC8qIEFQSVdlYkFyY2hpdmVSZXNvdXJjZS5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJNTc5RjFCRkMyM0M4MTFDRjAwQzdENEI0IC8qIEFQSVdlYkF1dGhlbnRpY2F0aW9u
QXNzZXJ0aW9uUmVzcG9uc2UuaCBpbiBIZWFkZXJzICovLAogCQkJCTU3RUJFMjZBMjM0Njc2QzUw
MDhEOEFGOSAvKiBBUElXZWJBdXRoZW50aWNhdGlvblBhbmVsLmggaW4gSGVhZGVycyAqLywKQEAg
LTEzMDE2LDYgKzEzMDA4LDcgQEAKIAkJCQkzMUJBOTI0RTE0ODgzMTI2MDA2MkVEQjUgLyogV2Vi
Tm90aWZpY2F0aW9uTWFuYWdlck1lc3NhZ2VzLmggaW4gSGVhZGVycyAqLywKIAkJCQkzMUEyRUM0
QjE0ODk5N0MyMDA4MTBENzEgLyogV2ViTm90aWZpY2F0aW9uTWFuYWdlclByb3h5LmggaW4gSGVh
ZGVycyAqLywKIAkJCQkzMUEyRUM0RTE0ODk5N0MyMDA4MTBENzEgLyogV2ViTm90aWZpY2F0aW9u
UHJvdmlkZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTUxMjcxNDgzMjcwMjRGMDMwMDE5NzAzNCAv
KiBXZWJOb3RpZmljYXRpb25Qcm92aWRlckNvY29hLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzg1
N0Y4NTEyQjgyRDBCMDBFREVCMkUgLyogV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIuaCBpbiBI
ZWFkZXJzICovLAogCQkJCUJDMURGRUE0MTJCMzFGODcwMDVERjczMCAvKiBXZWJPcGVuUGFuZWxS
ZXN1bHRMaXN0ZW5lclByb3h5LmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzAzMkQ4RjEwRjQzN0Ew
MDA1OEMxNUEgLyogV2ViUGFnZS5oIGluIEhlYWRlcnMgKi8sCkBAIC0xNDY4OSw3ICsxNDY4Miw2
IEBACiAJCQkJNTc5MEE2ODEyNTY3QTFBQzAwNzdDNUE3IC8qIF9XS0F1dGhlbnRpY2F0b3JSZXNw
b25zZS5tbSBpbiBTb3VyY2VzICovLAogCQkJCTU3OTBBNjY3MjU2NzlDRUEwMDc3QzVBNyAvKiBf
V0tBdXRoZW50aWNhdG9yU2VsZWN0aW9uQ3JpdGVyaWEubW0gaW4gU291cmNlcyAqLywKIAkJCQk1
Q0JENTk1QzIyODBFREY0MDAyQjIyQUEgLyogX1dLQ3VzdG9tSGVhZGVyRmllbGRzLm1tIGluIFNv
dXJjZXMgKi8sCi0JCQkJOTlDNjA3RjEyNkZCOTFFOTAwQTA5NTNGIC8qIF9XS0luc3BlY3RvckV4
dGVuc2lvblRlc3RpbmcubW0gaW4gU291cmNlcyAqLywKIAkJCQk1NzkwQTY3NTI1Njc5Rjc0MDA3
N0M1QTcgLyogX1dLUHVibGljS2V5Q3JlZGVudGlhbENyZWF0aW9uT3B0aW9ucy5tbSBpbiBTb3Vy
Y2VzICovLAogCQkJCTU3OTBBNjZEMjU2NzlFQjcwMDc3QzVBNyAvKiBfV0tQdWJsaWNLZXlDcmVk
ZW50aWFsRGVzY3JpcHRvci5tbSBpbiBTb3VyY2VzICovLAogCQkJCTU3OTBBNjU3MjU2Nzk5REEw
MDc3QzVBNyAvKiBfV0tQdWJsaWNLZXlDcmVkZW50aWFsRW50aXR5Lm1tIGluIFNvdXJjZXMgKi8s
CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggODFm
YTIzMTVjMjc5NjBlZmJiYWUyYWFkYTQ1MWZhNDNmNzBhYWE4OS4uMTZkMWFjYzAwYmU4NzMwYzQ0
MDU3NmQxNzRiNTE0ODcwZDAxM2Q4YyAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBi
L1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDIxLTEwLTE1ICBCSiBCdXJnICA8
YmJ1cmdAYXBwbGUuY29tPgorCisgICAgICAgIFtDb2NvYV0gV2ViIEluc3BlY3RvcjogcmVtb3Zl
IF9XS0luc3BlY3RvckV4dGVuc2lvblByaXZhdGVGb3JUZXN0aW5nCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzE3ODQKKyAgICAgICAgPHJkYXI6Ly9w
cm9ibGVtLzg0MjgwNjA4PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9XS0luc3BlY3RvckV4
dGVuc2lvbi5tbToKKyAgICAgICAgKFRFU1QpOgorCiAyMDIxLTEwLTE0ICBKb2huIFdpbGFuZGVy
ICA8d2lsYW5kZXJAYXBwbGUuY29tPgogCiAgICAgICAgIFRlc3RXZWJLaXRBUEkuUHJpdmF0ZUNs
aWNrTWVhc3VyZW1lbnQuRnJhdWRQcmV2ZW50aW9uIGlzIGEgY29uc3RhbnQgdGltZW91dApkaWZm
IC0tZ2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9XS0luc3BlY3Rv
ckV4dGVuc2lvbi5tbSBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvV0tJ
bnNwZWN0b3JFeHRlbnNpb24ubW0KaW5kZXggYTY0MDQ0M2Y0ZWIzOTFiZTNiMGMxNGY0ZjQyYTFi
YjU4NDNlYTMxYS4uMWE0NTI5YWVjNTA0MjAzMWIyNGIyZjZlNWJmNzhiN2Y4NGMzN2UzMSAxMDA2
NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9XS0luc3BlY3Rv
ckV4dGVuc2lvbi5tbQorKysgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29h
L1dLSW5zcGVjdG9yRXh0ZW5zaW9uLm1tCkBAIC0zNiw3ICszNiw2IEBACiAjaW1wb3J0IDxXZWJL
aXQvX1dLSW5zcGVjdG9yQ29uZmlndXJhdGlvbi5oPgogI2ltcG9ydCA8V2ViS2l0L19XS0luc3Bl
Y3RvckV4dGVuc2lvbi5oPgogI2ltcG9ydCA8V2ViS2l0L19XS0luc3BlY3RvckV4dGVuc2lvbkRl
bGVnYXRlLmg+Ci0jaW1wb3J0IDxXZWJLaXQvX1dLSW5zcGVjdG9yRXh0ZW5zaW9uUHJpdmF0ZUZv
clRlc3RpbmcuaD4KICNpbXBvcnQgPFdlYktpdC9fV0tJbnNwZWN0b3JQcml2YXRlRm9yVGVzdGlu
Zy5oPgogI2ltcG9ydCA8d3RmL1JldGFpblB0ci5oPgogCkBAIC0xNTgsNyArMTU3LDcgQEAgVEVT
VChXS0luc3BlY3RvckV4dGVuc2lvbiwgQ2FuRXZhbHVhdGVTY3JpcHRJbkV4dGVuc2lvblRhYikK
ICAgICAvLyBSZWFkIGJhY2sgYSB2YWx1ZSB0aGF0IGlzIHNldCBpbiB0aGUgPGlmcmFtZT4ncyBz
Y3JpcHQgY29udGV4dC4KICAgICBwZW5kaW5nQ2FsbGJhY2tXYXNDYWxsZWQgPSBmYWxzZTsKICAg
ICBhdXRvIHNjcmlwdFNvdXJjZTIgPSBAIndpbmRvdy5fc2VjcmV0VmFsdWUiOwotICAgIFtzaGFy
ZWRJbnNwZWN0b3JFeHRlbnNpb24gX2V2YWx1YXRlU2NyaXB0OnNjcmlwdFNvdXJjZTIgaW5FeHRl
bnNpb25UYWJXaXRoSWRlbnRpZmllcjpzaGFyZWRFeHRlbnNpb25UYWJJZGVudGlmaWVyLmdldCgp
IGNvbXBsZXRpb25IYW5kbGVyOl4oTlNFcnJvciAqIF9OdWxsYWJsZSBlcnJvciwgTlNEaWN0aW9u
YXJ5ICogX051bGxhYmxlIHJlc3VsdCkgeworICAgIFtzaGFyZWRJbnNwZWN0b3JFeHRlbnNpb24g
ZXZhbHVhdGVTY3JpcHQ6c2NyaXB0U291cmNlMiBpblRhYldpdGhJZGVudGlmaWVyOnNoYXJlZEV4
dGVuc2lvblRhYklkZW50aWZpZXIuZ2V0KCkgY29tcGxldGlvbkhhbmRsZXI6XihOU0Vycm9yICog
X051bGxhYmxlIGVycm9yLCBOU0RpY3Rpb25hcnkgKiBfTnVsbGFibGUgcmVzdWx0KSB7CiAgICAg
ICAgIEVYUEVDVF9OVUxMKGVycm9yKTsKICAgICAgICAgRVhQRUNUX05PVF9OVUxMKHJlc3VsdCk7
CiAgICAgICAgIEVYUEVDVF9OU19FUVVBTChyZXN1bHRbQCJhbnN3ZXIiXSwgQDQyKTsKQEAgLTE3
MCw3ICsxNjksNyBAQCBURVNUKFdLSW5zcGVjdG9yRXh0ZW5zaW9uLCBDYW5FdmFsdWF0ZVNjcmlw
dEluRXh0ZW5zaW9uVGFiKQogICAgIC8vIENoZWNrIHRvIHNlZSB0aGF0IHNjcmlwdCBpcyBhY3R1
YWxseSBiZWluZyBldmFsdWF0ZWQgaW4gdGhlIDxpZnJhbWU+J3Mgc2NyaXB0IGNvbnRleHQuCiAg
ICAgcGVuZGluZ0NhbGxiYWNrV2FzQ2FsbGVkID0gZmFsc2U7CiAgICAgYXV0byBzY3JpcHRTb3Vy
Y2UzID0gQCJ3aW5kb3cudG9wICE9PSB3aW5kb3ciOwotICAgIFtzaGFyZWRJbnNwZWN0b3JFeHRl
bnNpb24gX2V2YWx1YXRlU2NyaXB0OnNjcmlwdFNvdXJjZTMgaW5FeHRlbnNpb25UYWJXaXRoSWRl
bnRpZmllcjpzaGFyZWRFeHRlbnNpb25UYWJJZGVudGlmaWVyLmdldCgpIGNvbXBsZXRpb25IYW5k
bGVyOl4oTlNFcnJvciAqIF9OdWxsYWJsZSBlcnJvciwgTlNEaWN0aW9uYXJ5ICogX051bGxhYmxl
IHJlc3VsdCkgeworICAgIFtzaGFyZWRJbnNwZWN0b3JFeHRlbnNpb24gZXZhbHVhdGVTY3JpcHQ6
c2NyaXB0U291cmNlMyBpblRhYldpdGhJZGVudGlmaWVyOnNoYXJlZEV4dGVuc2lvblRhYklkZW50
aWZpZXIuZ2V0KCkgY29tcGxldGlvbkhhbmRsZXI6XihOU0Vycm9yICogX051bGxhYmxlIGVycm9y
LCBOU0RpY3Rpb25hcnkgKiBfTnVsbGFibGUgcmVzdWx0KSB7CiAgICAgICAgIEVYUEVDVF9OVUxM
KGVycm9yKTsKICAgICAgICAgRVhQRUNUX05PVF9OVUxMKHJlc3VsdCk7CiAgICAgICAgIEVYUEVD
VF9OU19FUVVBTChyZXN1bHQsIEBZRVMpOwpAQCAtMjQ5LDcgKzI0OCw3IEBAIFRFU1QoV0tJbnNw
ZWN0b3JFeHRlbnNpb24sIEV4dGVuc2lvblRhYklzUGVyc2lzdGVudCkKIAogICAgIC8vIFJlYWQg
YmFjayBhIHZhbHVlIHRoYXQgaXMgdW5pcXVlIHRvIHRoZSA8aWZyYW1lPidzIHNjcmlwdCBjb250
ZXh0LgogICAgIHBlbmRpbmdDYWxsYmFja1dhc0NhbGxlZCA9IGZhbHNlOwotICAgIFtzaGFyZWRJ
bnNwZWN0b3JFeHRlbnNpb24gX2V2YWx1YXRlU2NyaXB0OnNjcmlwdFNvdXJjZSBpbkV4dGVuc2lv
blRhYldpdGhJZGVudGlmaWVyOnNoYXJlZEV4dGVuc2lvblRhYklkZW50aWZpZXIuZ2V0KCkgY29t
cGxldGlvbkhhbmRsZXI6XihOU0Vycm9yICogX051bGxhYmxlIGVycm9yLCBOU0RpY3Rpb25hcnkg
KiBfTnVsbGFibGUgcmVzdWx0KSB7CisgICAgW3NoYXJlZEluc3BlY3RvckV4dGVuc2lvbiBldmFs
dWF0ZVNjcmlwdDpzY3JpcHRTb3VyY2UgaW5UYWJXaXRoSWRlbnRpZmllcjpzaGFyZWRFeHRlbnNp
b25UYWJJZGVudGlmaWVyLmdldCgpIGNvbXBsZXRpb25IYW5kbGVyOl4oTlNFcnJvciAqIF9OdWxs
YWJsZSBlcnJvciwgTlNEaWN0aW9uYXJ5ICogX051bGxhYmxlIHJlc3VsdCkgewogICAgICAgICBF
WFBFQ1RfTlVMTChlcnJvcik7CiAgICAgICAgIEVYUEVDVF9OT1RfTlVMTChyZXN1bHQpOwogICAg
ICAgICBldmFsdWF0aW9uUmVzdWx0ID0gcmVzdWx0OwpAQCAtMjY1LDcgKzI2NCw3IEBAIFRFU1Qo
V0tJbnNwZWN0b3JFeHRlbnNpb24sIEV4dGVuc2lvblRhYklzUGVyc2lzdGVudCkKICAgICAvLyBD
aGVjayB0aGUgdW5pcXVlIHZhbHVlIGFnYWluLCB3aGlsZSB0aGUgPGlmcmFtZT4gaXMgYmVpbmcg
aGlkZGVuLiBJZiB0aGUgPGlmcmFtZT4gaXMKICAgICAvLyBkZXRhY2hlZCBmcm9tIHRoZSBET00s
IHRoZW4gdGhpcyBldmFsdWF0aW9uIHdpbGwgZmFpbCBvciBoYW5nLgogICAgIHBlbmRpbmdDYWxs
YmFja1dhc0NhbGxlZCA9IGZhbHNlOwotICAgIFtzaGFyZWRJbnNwZWN0b3JFeHRlbnNpb24gX2V2
YWx1YXRlU2NyaXB0OnNjcmlwdFNvdXJjZSBpbkV4dGVuc2lvblRhYldpdGhJZGVudGlmaWVyOnNo
YXJlZEV4dGVuc2lvblRhYklkZW50aWZpZXIuZ2V0KCkgY29tcGxldGlvbkhhbmRsZXI6XihOU0Vy
cm9yICogX051bGxhYmxlIGVycm9yLCBOU0RpY3Rpb25hcnkgKiBfTnVsbGFibGUgcmVzdWx0KSB7
CisgICAgW3NoYXJlZEluc3BlY3RvckV4dGVuc2lvbiBldmFsdWF0ZVNjcmlwdDpzY3JpcHRTb3Vy
Y2UgaW5UYWJXaXRoSWRlbnRpZmllcjpzaGFyZWRFeHRlbnNpb25UYWJJZGVudGlmaWVyLmdldCgp
IGNvbXBsZXRpb25IYW5kbGVyOl4oTlNFcnJvciAqIF9OdWxsYWJsZSBlcnJvciwgTlNEaWN0aW9u
YXJ5ICogX051bGxhYmxlIHJlc3VsdCkgewogICAgICAgICBFWFBFQ1RfTlVMTChlcnJvcik7CiAg
ICAgICAgIEVYUEVDVF9OT1RfTlVMTChyZXN1bHQpOwogICAgICAgICBFWFBFQ1RfTlNfRVFVQUwo
cmVzdWx0LCBldmFsdWF0aW9uUmVzdWx0LmdldCgpKTsKQEAgLTI4Nyw3ICsyODYsNyBAQCBURVNU
KFdLSW5zcGVjdG9yRXh0ZW5zaW9uLCBFeHRlbnNpb25UYWJJc1BlcnNpc3RlbnQpCiAKICAgICAv
LyBDaGVjayB0aGUgdW5pcXVlIHZhbHVlIGFnYWluIGFmdGVyIHJlc2VsZWN0aW5nIHRoZSBleHRl
bnNpb24gdGFiLgogICAgIHBlbmRpbmdDYWxsYmFja1dhc0NhbGxlZCA9IGZhbHNlOwotICAgIFtz
aGFyZWRJbnNwZWN0b3JFeHRlbnNpb24gX2V2YWx1YXRlU2NyaXB0OnNjcmlwdFNvdXJjZSBpbkV4
dGVuc2lvblRhYldpdGhJZGVudGlmaWVyOnNoYXJlZEV4dGVuc2lvblRhYklkZW50aWZpZXIuZ2V0
KCkgY29tcGxldGlvbkhhbmRsZXI6XihOU0Vycm9yICogX051bGxhYmxlIGVycm9yLCBOU0RpY3Rp
b25hcnkgKiBfTnVsbGFibGUgcmVzdWx0KSB7CisgICAgW3NoYXJlZEluc3BlY3RvckV4dGVuc2lv
biBldmFsdWF0ZVNjcmlwdDpzY3JpcHRTb3VyY2UgaW5UYWJXaXRoSWRlbnRpZmllcjpzaGFyZWRF
eHRlbnNpb25UYWJJZGVudGlmaWVyLmdldCgpIGNvbXBsZXRpb25IYW5kbGVyOl4oTlNFcnJvciAq
IF9OdWxsYWJsZSBlcnJvciwgTlNEaWN0aW9uYXJ5ICogX051bGxhYmxlIHJlc3VsdCkgewogICAg
ICAgICBFWFBFQ1RfTlVMTChlcnJvcik7CiAgICAgICAgIEVYUEVDVF9OT1RfTlVMTChyZXN1bHQp
OwogICAgICAgICBFWFBFQ1RfTlNfRVFVQUwocmVzdWx0LCBldmFsdWF0aW9uUmVzdWx0LmdldCgp
KTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>441455</attachid>
            <date>2021-10-15 16:43:47 -0700</date>
            <delta_ts>2021-10-15 20:33:40 -0700</delta_ts>
            <desc>Patch v1.1.1 (rebased)</desc>
            <filename>bug-231784-20211015164346.patch</filename>
            <type>text/plain</type>
            <size>23761</size>
            <attacher name="Blaze Burg">bburg</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg0Mjg3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGI0N2Y5OTA1ZWRkNmZhZTg4
NjFlMmQyODI4NzZkZDMzYTcxOWY4ODcuLjBmMWViYTFlYmQxZDM5OWM4N2MxNjI2ZDhjNWE0NDll
YjhlMTVkNzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjIgQEAKKzIwMjEtMTAtMTUgIEJKIEJ1cmcg
IDxiYnVyZ0BhcHBsZS5jb20+CisKKyAgICAgICAgW0NvY29hXSBXZWIgSW5zcGVjdG9yOiByZW1v
dmUgX1dLSW5zcGVjdG9yRXh0ZW5zaW9uUHJpdmF0ZUZvclRlc3RpbmcKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMTc4NAorICAgICAgICA8cmRhcjov
L3Byb2JsZW0vODQyODA2MDg+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgUHJvbW90ZSB0aGUgb25seSBtZXRob2QgdG8gYmUgQVBJIGZvciBfV0tJbnNw
ZWN0b3JFeHRlbnNpb24uIEl0IGlzIG5lZWRlZAorICAgICAgICB0byBpbXBsZW1lbnQgc29tZSBw
YXJ0cyBvZiB0aGUgZGV2dG9vbHMgQVBJLgorCisgICAgICAgICogU291cmNlc0NvY29hLnR4dDoK
KyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0NvY29hL19XS0luc3BlY3RvckV4dGVuc2lvbi5oOgor
ICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLSW5zcGVjdG9yRXh0ZW5zaW9uLm1tOgor
ICAgICAgICAoLVtfV0tJbnNwZWN0b3JFeHRlbnNpb24gZXZhbHVhdGVTY3JpcHQ6aW5UYWJXaXRo
SWRlbnRpZmllcjpjb21wbGV0aW9uSGFuZGxlcjpdKToKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJ
L0NvY29hL19XS0luc3BlY3RvckV4dGVuc2lvblByaXZhdGVGb3JUZXN0aW5nLmg6IFJlbW92ZWQu
CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tJbnNwZWN0b3JFeHRlbnNpb25UZXN0
aW5nLm1tOiBSZW1vdmVkLgorICAgICAgICAqIFdlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qOgorCiAyMDIxLTEwLTE1ICBDb21taXQgUXVldWUgIDxjb21taXQtcXVldWVAd2Via2l0Lm9y
Zz4KIAogICAgICAgICBVbnJldmlld2VkLCByZXZlcnRpbmcgcjI4MzkyNS4KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvU291cmNlc0NvY29hLnR4dCBiL1NvdXJjZS9XZWJLaXQvU291cmNlc0Nv
Y29hLnR4dAppbmRleCBmZDk0OWQ4OWIwMGVmNGEzNDc3MTY4M2M3M2ViNzFhOThmMDUxYTZmLi43
ZDg1MDAzNGVkNmI1ZTIyZjAwYTUxODM5MmMyZjljNjU2N2NjYTQ0IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L1NvdXJjZXNDb2NvYS50eHQKKysrIGIvU291cmNlL1dlYktpdC9Tb3VyY2VzQ29j
b2EudHh0CkBAIC0yODgsNyArMjg4LDYgQEAgVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tJbnNwZWN0
b3JDb25maWd1cmF0aW9uLm1tCiBVSVByb2Nlc3MvQVBJL0NvY29hL19XS0luc3BlY3RvclRlc3Rp
bmcubW0KIFVJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLSW5zcGVjdG9yRGVidWdnYWJsZUluZm8ubW0K
IFVJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLSW5zcGVjdG9yRXh0ZW5zaW9uLm1tCi1VSVByb2Nlc3Mv
QVBJL0NvY29hL19XS0luc3BlY3RvckV4dGVuc2lvblRlc3RpbmcubW0KIFVJUHJvY2Vzcy9BUEkv
Q29jb2EvX1dLSW5zcGVjdG9yV2luZG93Lm1tCiBVSVByb2Nlc3MvQVBJL0NvY29hL19XS0ludGVy
bmFsRGVidWdGZWF0dXJlLm1tCiBVSVByb2Nlc3MvQVBJL0NvY29hL19XS0xpbmtJY29uUGFyYW1l
dGVycy5tbQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL19X
S0luc3BlY3RvckV4dGVuc2lvbi5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29h
L19XS0luc3BlY3RvckV4dGVuc2lvbi5oCmluZGV4IGYxZDcxNDA0NTJjMzdjZjQ1MWU2YWJkNmY2
NzdmYzE3NjUzMGNhMTkuLjMzYThhYTljNzkyNDUwYjg3MzY3NzRlZTQ2MDJjMzZiYjBlNWY2YTAg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tJbnNwZWN0
b3JFeHRlbnNpb24uaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dL
SW5zcGVjdG9yRXh0ZW5zaW9uLmgKQEAgLTY1LDYgKzY1LDE2IEBAIFdLX0NMQVNTX0FWQUlMQUJM
RShtYWNvcygxMi4wKSkKICAqLwogLSAodm9pZClldmFsdWF0ZVNjcmlwdDooTlNTdHJpbmcgKilz
Y3JpcHRTb3VyY2UgZnJhbWVVUkw6KE5TVVJMICopZnJhbWVVUkwgY29udGV4dFNlY3VyaXR5T3Jp
Z2luOihOU1VSTCAqKWNvbnRleHRTZWN1cml0eU9yaWdpbiB1c2VDb250ZW50U2NyaXB0Q29udGV4
dDooQk9PTCl1c2VDb250ZW50U2NyaXB0Q29udGV4dCBjb21wbGV0aW9uSGFuZGxlcjoodm9pZChe
KShOU0Vycm9yICogX051bGxhYmxlLCBOU0RpY3Rpb25hcnkgKiBfTnVsbGFibGUgcmVzdWx0KSlj
b21wbGV0aW9uSGFuZGxlcjsKIAorLyoqCisgKiBAYWJzdHJhY3QgRXZhbHVhdGVzIEphdmFTY3Jp
cHQgaW4gdGhlIGNvbnRleHQgb2YgYSBXZWIgSW5zcGVjdG9yIHRhYiBjcmVhdGVkIGJ5IHRoaXMg
X1dLSW5zcGVjdG9yRXh0ZW5zaW9uLgorICogQHBhcmFtIHNjcmlwdFNvdXJjZSBUaGUgSmF2YVNj
cmlwdCBjb2RlIHRvIGJlIGV2YWx1YXRlZC4KKyAqIEBwYXJhbSB0YWJJZGVudGlmaWVyIElkZW50
aWZpZXIgZm9yIHRoZSBXZWIgSW5zcGVjdG9yIHRhYiBpbiB3aGljaCB0byBldmFsdWF0ZSBKYXZh
U2NyaXB0LgorICogQHBhcmFtIGNvbXBsZXRpb25IYW5kbGVyIEEgYmxvY2sgdG8gaW52b2tlIHdo
ZW4gdGhlIG9wZXJhdGlvbiBjb21wbGV0ZXMgb3IgZmFpbHMuCisgKiBAZGlzY3Vzc2lvbiBUaGUg
Y29tcGxldGlvbkhhbmRsZXIgaXMgcGFzc2VkIGFuIE5TSlNPTlNlcmlhbGl6YXRpb24tY29tcGF0
aWJsZSBOU09iamVjdCByZXByZXNlbnRpbmcgdGhlIGV2YWx1YXRpb24gcmVzdWx0LCBvciBhbiBl
cnJvci4KKyAqIHNjcmlwdFNvdXJjZSBpcyB0cmVhdGVkIGFzIGEgdG9wLWxldmVsIGV2YWx1YXRp
b24uCisgKi8KKy0gKHZvaWQpZXZhbHVhdGVTY3JpcHQ6KE5TU3RyaW5nICopc2NyaXB0U291cmNl
IGluVGFiV2l0aElkZW50aWZpZXI6KE5TU3RyaW5nICopdGFiSWRlbnRpZmllciBjb21wbGV0aW9u
SGFuZGxlcjoodm9pZCheKShOU0Vycm9yICogX051bGxhYmxlLCBOU0RpY3Rpb25hcnkgKiBfTnVs
bGFibGUgcmVzdWx0KSljb21wbGV0aW9uSGFuZGxlcjsKKwogLyoqCiAgKiBAYWJzdHJhY3QgUmVs
b2FkcyB0aGUgaW5zcGVjdGVkIHBhZ2Ugb24gYmVoYWxmIG9mIHRoZSBfV0tJbnNwZWN0b3JFeHRl
bnNpb24uCiAgKiBAcGFyYW0gaWdub3JlQ2FjaGUgSWYgWUVTLCByZWxvYWRzIHRoZSBwYWdlIHdo
aWxlIGlnbm9yaW5nIHRoZSBjYWNoZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL0FQSS9Db2NvYS9fV0tJbnNwZWN0b3JFeHRlbnNpb24ubW0gYi9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9BUEkvQ29jb2EvX1dLSW5zcGVjdG9yRXh0ZW5zaW9uLm1tCmluZGV4IDQ2NTYxZDM0
MzE0YTc5ZDQyYzU3ZTU5YmY3OTI3YWQxZmE0NTEwNDUuLjY2YmI3NzU3Yjg4NGQzNjIxMWVjM2Iy
OWRkZTllYWIyMjZiMmEwY2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQ
SS9Db2NvYS9fV0tJbnNwZWN0b3JFeHRlbnNpb24ubW0KKysrIGIvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvQVBJL0NvY29hL19XS0luc3BlY3RvckV4dGVuc2lvbi5tbQpAQCAtMjgsNiArMjgsNyBA
QAogCiAjaWYgRU5BQkxFKElOU1BFQ1RPUl9FWFRFTlNJT05TKQogCisjaW1wb3J0ICJBUElTZXJp
YWxpemVkU2NyaXB0VmFsdWUuaCIKICNpbXBvcnQgIkluc3BlY3RvckV4dGVuc2lvbkRlbGVnYXRl
LmgiCiAjaW1wb3J0ICJJbnNwZWN0b3JFeHRlbnNpb25UeXBlcy5oIgogI2ltcG9ydCAiV0tFcnJv
ci5oIgpAQCAtMTAyLDYgKzEwMywyNSBAQCAtICh2b2lkKWV2YWx1YXRlU2NyaXB0OihOU1N0cmlu
ZyAqKXNjcmlwdFNvdXJjZSBmcmFtZVVSTDooTlNVUkwgKilmcmFtZVVSTCBjb250ZQogICAgIH0p
OwogfQogCistICh2b2lkKWV2YWx1YXRlU2NyaXB0OihOU1N0cmluZyAqKXNjcmlwdFNvdXJjZSBp
blRhYldpdGhJZGVudGlmaWVyOihOU1N0cmluZyAqKWV4dGVuc2lvblRhYklkZW50aWZpZXIgY29t
cGxldGlvbkhhbmRsZXI6KHZvaWQoXikoTlNFcnJvciAqLCBOU0RpY3Rpb25hcnkgKikpY29tcGxl
dGlvbkhhbmRsZXIKK3sKKyAgICBfZXh0ZW5zaW9uLT5ldmFsdWF0ZVNjcmlwdEluRXh0ZW5zaW9u
VGFiKGV4dGVuc2lvblRhYklkZW50aWZpZXIsIHNjcmlwdFNvdXJjZSwgW3Byb3RlY3RlZFNlbGYg
PSByZXRhaW5QdHIoc2VsZiksIGNhcHR1cmVkQmxvY2sgPSBtYWtlQmxvY2tQdHIoV1RGTW92ZShj
b21wbGV0aW9uSGFuZGxlcikpXSAoSW5zcGVjdG9yOjpFeHRlbnNpb25FdmFsdWF0aW9uUmVzdWx0
JiYgcmVzdWx0KSBtdXRhYmxlIHsKKyAgICAgICAgaWYgKCFyZXN1bHQpIHsKKyAgICAgICAgICAg
IGNhcHR1cmVkQmxvY2soW05TRXJyb3IgZXJyb3JXaXRoRG9tYWluOldLRXJyb3JEb21haW4gY29k
ZTpXS0Vycm9yVW5rbm93biB1c2VySW5mbzpAeyBOU0xvY2FsaXplZEZhaWx1cmVSZWFzb25FcnJv
cktleTogSW5zcGVjdG9yOjpleHRlbnNpb25FcnJvclRvU3RyaW5nKHJlc3VsdC5lcnJvcigpKSB9
XSwgbmlsKTsKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQorICAgICAgICAKKyAgICAg
ICAgYXV0byB2YWx1ZU9yRXhjZXB0aW9uID0gcmVzdWx0LnZhbHVlKCk7CisgICAgICAgIGlmICgh
dmFsdWVPckV4Y2VwdGlvbikgeworICAgICAgICAgICAgY2FwdHVyZWRCbG9jayhuc0Vycm9yRnJv
bUV4Y2VwdGlvbkRldGFpbHModmFsdWVPckV4Y2VwdGlvbi5lcnJvcigpKS5nZXQoKSwgbmlsKTsK
KyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQorCisgICAgICAgIGlkIGJvZHkgPSBBUEk6
OlNlcmlhbGl6ZWRTY3JpcHRWYWx1ZTo6ZGVzZXJpYWxpemUodmFsdWVPckV4Y2VwdGlvbi52YWx1
ZSgpLT5pbnRlcm5hbFJlcHJlc2VudGF0aW9uKCksIDApOworICAgICAgICBjYXB0dXJlZEJsb2Nr
KG5pbCwgYm9keSk7CisgICAgfSk7Cit9CisKIC0gKHZvaWQpcmVsb2FkSWdub3JpbmdDYWNoZToo
Qk9PTClpZ25vcmVDYWNoZSB1c2VyQWdlbnQ6KE5TU3RyaW5nICopdXNlckFnZW50IGluamVjdGVk
U2NyaXB0OihOU1N0cmluZyAqKWluamVjdGVkU2NyaXB0IGNvbXBsZXRpb25IYW5kbGVyOih2b2lk
KF4pKE5TRXJyb3IgKikpY29tcGxldGlvbkhhbmRsZXIKIHsKICAgICBzdGQ6Om9wdGlvbmFsPFN0
cmluZz4gb3B0aW9uYWxVc2VyQWdlbnQgPSB1c2VyQWdlbnQgPyBzdGQ6Om1ha2Vfb3B0aW9uYWwo
U3RyaW5nKHVzZXJBZ2VudCkpIDogc3RkOjpudWxsb3B0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL19XS0luc3BlY3RvckV4dGVuc2lvblByaXZhdGVGb3JU
ZXN0aW5nLmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLSW5zcGVjdG9y
RXh0ZW5zaW9uUHJpdmF0ZUZvclRlc3RpbmcuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMGQ1YTE1NjhhYWRhNDNjY2UyMDZhMTVlMDgxYjlhNDYyNWYzYWRjNS4uMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9BUEkvQ29jb2EvX1dLSW5zcGVjdG9yRXh0ZW5zaW9uUHJpdmF0ZUZvclRlc3RpbmcuaAorKysg
L2Rldi9udWxsCkBAIC0xLDM4ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBw
bGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0
Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElT
JycKLSAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLAotICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElT
Q0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JT
Ci0gKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVD
SUFMLCBFWEVNUExBUlksIE9SCi0gKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgotICogU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCi0g
KiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJ
TElUWSwgV0hFVEhFUiBJTgotICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQg
KElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKLSAqIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKLSAq
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW1wb3J0ICJfV0tJbnNw
ZWN0b3JFeHRlbnNpb24uaCIKLQotI2lmICFUQVJHRVRfT1NfSVBIT05FCi0KLU5TX0FTU1VNRV9O
T05OVUxMX0JFR0lOCi0KLUBpbnRlcmZhY2UgX1dLSW5zcGVjdG9yRXh0ZW5zaW9uIChXS1Rlc3Rp
bmcpCi0tICh2b2lkKV9ldmFsdWF0ZVNjcmlwdDooTlNTdHJpbmcgKilzY3JpcHRTb3VyY2UgaW5F
eHRlbnNpb25UYWJXaXRoSWRlbnRpZmllcjooTlNTdHJpbmcgKilleHRlbnNpb25UYWJJZGVudGlm
aWVyIGNvbXBsZXRpb25IYW5kbGVyOih2b2lkKF4pKE5TRXJyb3IgKiBfTnVsbGFibGUsIE5TRGlj
dGlvbmFyeSAqIF9OdWxsYWJsZSByZXN1bHQpKWNvbXBsZXRpb25IYW5kbGVyOwotQGVuZAotCi1O
U19BU1NVTUVfTk9OTlVMTF9FTkQKLQotI2VuZGlmIC8vICFUQVJHRVRfT1NfSVBIT05FCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLSW5zcGVjdG9yRXh0
ZW5zaW9uVGVzdGluZy5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tJ
bnNwZWN0b3JFeHRlbnNpb25UZXN0aW5nLm1tCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCA0MWM2YTZmMDhhYTBiOWE2NThhODliYzBmN2MzYWMwMzE1YjhkODhlLi4wMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L0FQSS9Db2NvYS9fV0tJbnNwZWN0b3JFeHRlbnNpb25UZXN0aW5nLm1tCisrKyAvZGV2L251bGwK
QEAgLTEsNjUgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFy
ZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGlu
IGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwotICogQU5E
IEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sCi0gKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJ
TiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKLSAqIEJFIExJ
QUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1Q
TEFSWSwgT1IKLSAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCi0gKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKLSAqIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOCi0gKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgotICogVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbXBvcnQgImNvbmZpZy5oIgotCi0jaWYg
RU5BQkxFKElOU1BFQ1RPUl9FWFRFTlNJT05TKQotCi0jaW1wb3J0ICJBUElTZXJpYWxpemVkU2Ny
aXB0VmFsdWUuaCIKLSNpbXBvcnQgIkluc3BlY3RvckV4dGVuc2lvblR5cGVzLmgiCi0jaW1wb3J0
ICJXS0Vycm9yLmgiCi0jaW1wb3J0ICJXS1dlYlZpZXdJbnRlcm5hbC5oIgotI2ltcG9ydCAiX1dL
SW5zcGVjdG9yRXh0ZW5zaW9uSW50ZXJuYWwuaCIKLSNpbXBvcnQgIl9XS0luc3BlY3RvckV4dGVu
c2lvblByaXZhdGVGb3JUZXN0aW5nLmgiCi0jaW1wb3J0IDxXZWJDb3JlL0V4Y2VwdGlvbkRldGFp
bHMuaD4KLSNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZU9iakNFeHRyYXMuaD4KLSNpbXBvcnQgPHd0
Zi9CbG9ja1B0ci5oPgotCi0vLyBUaGlzIGZpbGUgZXhpc3RzIHRvIGNlbnRyYWxpemUgYWxsIGZy
YWdpbGUgY29kZSB0aGF0IGlzIHVzZWQgYnkgX1dLSW5zcGVjdG9yRXh0ZW5zaW9uIEFQSSB0ZXN0
cy4KLQotQGltcGxlbWVudGF0aW9uIF9XS0luc3BlY3RvckV4dGVuc2lvbiAoV0tUZXN0aW5nKQot
Ci0tICh2b2lkKV9ldmFsdWF0ZVNjcmlwdDooTlNTdHJpbmcgKilzY3JpcHRTb3VyY2UgaW5FeHRl
bnNpb25UYWJXaXRoSWRlbnRpZmllcjooTlNTdHJpbmcgKilleHRlbnNpb25UYWJJZGVudGlmaWVy
IGNvbXBsZXRpb25IYW5kbGVyOih2b2lkKF4pKE5TRXJyb3IgKiwgTlNEaWN0aW9uYXJ5ICopKWNv
bXBsZXRpb25IYW5kbGVyCi17Ci0gICAgX2V4dGVuc2lvbi0+ZXZhbHVhdGVTY3JpcHRJbkV4dGVu
c2lvblRhYihleHRlbnNpb25UYWJJZGVudGlmaWVyLCBzY3JpcHRTb3VyY2UsIFtwcm90ZWN0ZWRT
ZWxmID0gcmV0YWluUHRyKHNlbGYpLCBjYXB0dXJlZEJsb2NrID0gbWFrZUJsb2NrUHRyKFdURk1v
dmUoY29tcGxldGlvbkhhbmRsZXIpKV0gKEluc3BlY3Rvcjo6RXh0ZW5zaW9uRXZhbHVhdGlvblJl
c3VsdCYmIHJlc3VsdCkgbXV0YWJsZSB7Ci0gICAgICAgIGlmICghcmVzdWx0KSB7Ci0gICAgICAg
ICAgICBjYXB0dXJlZEJsb2NrKFtOU0Vycm9yIGVycm9yV2l0aERvbWFpbjpXS0Vycm9yRG9tYWlu
IGNvZGU6V0tFcnJvclVua25vd24gdXNlckluZm86QHsgTlNMb2NhbGl6ZWRGYWlsdXJlUmVhc29u
RXJyb3JLZXk6IEluc3BlY3Rvcjo6ZXh0ZW5zaW9uRXJyb3JUb1N0cmluZyhyZXN1bHQuZXJyb3Io
KSkgfV0sIG5pbCk7Ci0gICAgICAgICAgICByZXR1cm47Ci0gICAgICAgIH0KLSAgICAgICAgCi0g
ICAgICAgIGF1dG8gdmFsdWVPckV4Y2VwdGlvbiA9IHJlc3VsdC52YWx1ZSgpOwotICAgICAgICBp
ZiAoIXZhbHVlT3JFeGNlcHRpb24pIHsKLSAgICAgICAgICAgIGNhcHR1cmVkQmxvY2sobnNFcnJv
ckZyb21FeGNlcHRpb25EZXRhaWxzKHZhbHVlT3JFeGNlcHRpb24uZXJyb3IoKSkuZ2V0KCksIG5p
bCk7Ci0gICAgICAgICAgICByZXR1cm47Ci0gICAgICAgIH0KLQotICAgICAgICBpZCBib2R5ID0g
QVBJOjpTZXJpYWxpemVkU2NyaXB0VmFsdWU6OmRlc2VyaWFsaXplKHZhbHVlT3JFeGNlcHRpb24u
dmFsdWUoKS0+aW50ZXJuYWxSZXByZXNlbnRhdGlvbigpLCAwKTsKLSAgICAgICAgY2FwdHVyZWRC
bG9jayhuaWwsIGJvZHkpOwotICAgIH0pOwotfQotCi1AZW5kCi0KLSNlbmRpZiAvLyBFTkFCTEUo
SU5TUEVDVE9SX0VYVEVOU0lPTlMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYktpdC54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvagppbmRleCBkY2Y0YzBmN2I4YzQ2NWVjYWU3NTM3NmNiN2Y2M2MxMTky
MGFhMWU1Li5iMmYxMGRlZGQxMTJkZGJjNzlhOWNjMzlkYTk3MTg0NjQwOThhZWY2IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBi
L1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTE2MDcs
OCArMTYwNyw2IEBACiAJCTk5QjE2NzY0MjUyQkJFNjIwMDczMTQwRSAvKiBXZWJJbnNwZWN0b3JV
SUV4dGVuc2lvbkNvbnRyb2xsZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDk5QjE2NzYxMjUyQkJFNjEwMDczMTQwRSAvKiBXZWJJbnNwZWN0b3JVSUV4
dGVuc2lvbkNvbnRyb2xsZXIuaCAqLzsgfTsKIAkJOTlDM0FFMkQxREFEQTZBRDAwQUY1QzE2IC8q
IFdlYkF1dG9tYXRpb25TZXNzaW9uTWFjcm9zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA5OUMzQUUyQzFEQURBNkE3MDBBRjVDMTYgLyogV2ViQXV0b21h
dGlvblNlc3Npb25NYWNyb3MuaCAqLzsgfTsKIAkJOTlDNjA3RUIyNkZBOUQ0OTAwQTA5NTNGIC8q
IF9XS0luc3BlY3RvcklCQWN0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gOTlDNjA3RUEyNkZBOUQ0ODAwQTA5NTNGIC8qIF9XS0luc3BlY3RvcklC
QWN0aW9ucy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
Ci0JCTk5QzYwN0YwMjZGQjkxRTgwMEEwOTUzRiAvKiBfV0tJbnNwZWN0b3JFeHRlbnNpb25Qcml2
YXRlRm9yVGVzdGluZy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gOTlDNjA3RUUyNkZCOTFFODAwQTA5NTNGIC8qIF9XS0luc3BlY3RvckV4dGVuc2lvblBy
aXZhdGVGb3JUZXN0aW5nLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKLQkJOTlDNjA3RjEyNkZCOTFFOTAwQTA5NTNGIC8qIF9XS0luc3BlY3RvckV4dGVu
c2lvblRlc3RpbmcubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA5OUM2MDdFRjI2RkI5MUU4MDBBMDk1M0YgLyogX1dLSW5zcGVjdG9yRXh0ZW5zaW9uVGVz
dGluZy5tbSAqLzsgfTsKIAkJOTlDODFENUExQzIwRTdFMjAwNUM0QzgyIC8qIEF1dG9tYXRpb25D
bGllbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk5
QzgxRDU1MUMyMERGQkUwMDVDNEM4MiAvKiBBdXRvbWF0aW9uQ2xpZW50LmggKi87IH07CiAJCTk5
QzgxRDVEMUMyMUYzOEIwMDVDNEM4MiAvKiBBUElBdXRvbWF0aW9uQ2xpZW50LmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5OUM4MUQ1QjFDMjBFODE3MDA1
QzRDODIgLyogQVBJQXV0b21hdGlvbkNsaWVudC5oICovOyB9OwogCQk5OUU3MTRDNTFDMTI0QTA0
MDA2NjVCM0EgLyogX1dLQXV0b21hdGlvbkRlbGVnYXRlLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5OUU3MTRDMTFDMTI0OUU2MDA2NjVCM0EgLyogX1dL
QXV0b21hdGlvbkRlbGVnYXRlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKQEAgLTUyMDUsOCArNTIwMyw2IEBACiAJCTk5QzNBRTI2MURBRDk0ODUwMEFG
NUMxNiAvKiBXZWJBdXRvbWF0aW9uU2Vzc2lvbkNvY29hLm1tICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAub2JqY3BwOyBwYXRoID0gV2ViQXV0b21hdGlvblNlc3Npb25Db2NvYS5tbTsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTlDM0FFMkMxREFEQTZBNzAwQUY1QzE2IC8qIFdlYkF1
dG9tYXRpb25TZXNzaW9uTWFjcm9zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFdlYkF1dG9tYXRpb25TZXNzaW9uTWFjcm9zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTk5QzYwN0VBMjZGQTlENDgwMEEwOTUzRiAvKiBfV0tJbnNwZWN0b3JJQkFjdGlvbnMuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gX1dLSW5zcGVjdG9ySUJBY3Rpb25zLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTk5QzYwN0VFMjZGQjkxRTgwMEEwOTUzRiAv
KiBfV0tJbnNwZWN0b3JFeHRlbnNpb25Qcml2YXRlRm9yVGVzdGluZy5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBfV0tJbnNwZWN0b3JFeHRlbnNpb25Qcml2YXRlRm9yVGVzdGlu
Zy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQk5OUM2MDdFRjI2RkI5MUU4MDBBMDk1
M0YgLyogX1dLSW5zcGVjdG9yRXh0ZW5zaW9uVGVzdGluZy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLm9iamNwcDsgcGF0aCA9IF9XS0luc3BlY3RvckV4dGVuc2lvblRlc3RpbmcubW07IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTk5QzgxRDU1MUMyMERGQkUwMDVDNEM4MiAvKiBB
dXRvbWF0aW9uQ2xpZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEF1dG9t
YXRpb25DbGllbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTlDODFENTYxQzIw
REZCRTAwNUM0QzgyIC8qIEF1dG9tYXRpb25DbGllbnQubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5vYmpjcHA7IHBhdGggPSBBdXRvbWF0aW9uQ2xpZW50Lm1tOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQk5OUM4MUQ1QjFDMjBFODE3MDA1QzRDODIgLyogQVBJQXV0b21hdGlvbkNs
aWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBUElBdXRvbWF0aW9uQ2xp
ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC04MzI2LDggKzgzMjIsNiBAQAog
CQkJCTk5NkIyQkEwMjVFMjU5MTEwMDcxOTM3OSAvKiBfV0tJbnNwZWN0b3JFeHRlbnNpb25EZWxl
Z2F0ZS5oICovLAogCQkJCTk5Nzk2NUEyMjUzMTI4QzcwMEIzMUFFMyAvKiBfV0tJbnNwZWN0b3JF
eHRlbnNpb25Ib3N0LmggKi8sCiAJCQkJOTlCMTY3NTUyNTJCQjdFMTAwNzMxNDBFIC8qIF9XS0lu
c3BlY3RvckV4dGVuc2lvbkludGVybmFsLmggKi8sCi0JCQkJOTlDNjA3RUUyNkZCOTFFODAwQTA5
NTNGIC8qIF9XS0luc3BlY3RvckV4dGVuc2lvblByaXZhdGVGb3JUZXN0aW5nLmggKi8sCi0JCQkJ
OTlDNjA3RUYyNkZCOTFFODAwQTA5NTNGIC8qIF9XS0luc3BlY3RvckV4dGVuc2lvblRlc3Rpbmcu
bW0gKi8sCiAJCQkJOTlDNjA3RUEyNkZBOUQ0ODAwQTA5NTNGIC8qIF9XS0luc3BlY3RvcklCQWN0
aW9ucy5oICovLAogCQkJCTVDQUZERTQ0MjEzMDg0MzYwMEIxRjdFMSAvKiBfV0tJbnNwZWN0b3JJ
bnRlcm5hbC5oICovLAogCQkJCTk5NzlDQTU3MjM3RjQ5RjAwMDM5RUMwNSAvKiBfV0tJbnNwZWN0
b3JQcml2YXRlLmggKi8sCkBAIC0xMjE2NSw3ICsxMjE1OSw2IEBACiAJCQkJOTk2QjJCQTEyNUUy
NTkxMTAwNzE5Mzc5IC8qIF9XS0luc3BlY3RvckV4dGVuc2lvbkRlbGVnYXRlLmggaW4gSGVhZGVy
cyAqLywKIAkJCQk5OTc5NjVBMzI1MzEyOEM3MDBCMzFBRTMgLyogX1dLSW5zcGVjdG9yRXh0ZW5z
aW9uSG9zdC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTlCMTY3NTgyNTJCQjdFMTAwNzMxNDBFIC8q
IF9XS0luc3BlY3RvckV4dGVuc2lvbkludGVybmFsLmggaW4gSGVhZGVycyAqLywKLQkJCQk5OUM2
MDdGMDI2RkI5MUU4MDBBMDk1M0YgLyogX1dLSW5zcGVjdG9yRXh0ZW5zaW9uUHJpdmF0ZUZvclRl
c3RpbmcuaCBpbiBIZWFkZXJzICovLAogCQkJCTk5QzYwN0VCMjZGQTlENDkwMEEwOTUzRiAvKiBf
V0tJbnNwZWN0b3JJQkFjdGlvbnMuaCBpbiBIZWFkZXJzICovLAogCQkJCTVDQUZERTQ3MjEzMDg0
NkEwMEIxRjdFMSAvKiBfV0tJbnNwZWN0b3JJbnRlcm5hbC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
OTk3OUNBNTgyMzdGNDlGMTAwMzlFQzA1IC8qIF9XS0luc3BlY3RvclByaXZhdGUuaCBpbiBIZWFk
ZXJzICovLApAQCAtMTIzMTQsNyArMTIzMDcsNiBAQAogCQkJCTdDODlEMjk0MUE2NzEyMkYwMDNB
NUZERSAvKiBBUElVc2VyU2NyaXB0LmggaW4gSGVhZGVycyAqLywKIAkJCQkyRDg3ODYyNDFCREI1
OEZGMDBEMDJBQkIgLyogQVBJVXNlclN0eWxlU2hlZXQuaCBpbiBIZWFkZXJzICovLAogCQkJCUM1
RTFBRkVEMTZCMjEwMTcwMDZDQzFGMiAvKiBBUElXZWJBcmNoaXZlLmggaW4gSGVhZGVycyAqLywK
LQkJCQk1MTI3MTQ4MzI3MDI0RjAzMDAxOTcwMzQgLyogV2ViTm90aWZpY2F0aW9uUHJvdmlkZXJD
b2NvYS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQzVFMUFGRUYxNkIyMTAyOTAwNkNDMUYyIC8qIEFQ
SVdlYkFyY2hpdmVSZXNvdXJjZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNTc5RjFCRkMyM0M4MTFD
RjAwQzdENEI0IC8qIEFQSVdlYkF1dGhlbnRpY2F0aW9uQXNzZXJ0aW9uUmVzcG9uc2UuaCBpbiBI
ZWFkZXJzICovLAogCQkJCTU3RUJFMjZBMjM0Njc2QzUwMDhEOEFGOSAvKiBBUElXZWJBdXRoZW50
aWNhdGlvblBhbmVsLmggaW4gSGVhZGVycyAqLywKQEAgLTEzMDE2LDYgKzEzMDA4LDcgQEAKIAkJ
CQkzMUJBOTI0RTE0ODgzMTI2MDA2MkVEQjUgLyogV2ViTm90aWZpY2F0aW9uTWFuYWdlck1lc3Nh
Z2VzLmggaW4gSGVhZGVycyAqLywKIAkJCQkzMUEyRUM0QjE0ODk5N0MyMDA4MTBENzEgLyogV2Vi
Tm90aWZpY2F0aW9uTWFuYWdlclByb3h5LmggaW4gSGVhZGVycyAqLywKIAkJCQkzMUEyRUM0RTE0
ODk5N0MyMDA4MTBENzEgLyogV2ViTm90aWZpY2F0aW9uUHJvdmlkZXIuaCBpbiBIZWFkZXJzICov
LAorCQkJCTUxMjcxNDgzMjcwMjRGMDMwMDE5NzAzNCAvKiBXZWJOb3RpZmljYXRpb25Qcm92aWRl
ckNvY29hLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzg1N0Y4NTEyQjgyRDBCMDBFREVCMkUgLyog
V2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDMURGRUE0
MTJCMzFGODcwMDVERjczMCAvKiBXZWJPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lclByb3h5LmggaW4g
SGVhZGVycyAqLywKIAkJCQlCQzAzMkQ4RjEwRjQzN0EwMDA1OEMxNUEgLyogV2ViUGFnZS5oIGlu
IEhlYWRlcnMgKi8sCkBAIC0xNDY4OSw3ICsxNDY4Miw2IEBACiAJCQkJNTc5MEE2ODEyNTY3QTFB
QzAwNzdDNUE3IC8qIF9XS0F1dGhlbnRpY2F0b3JSZXNwb25zZS5tbSBpbiBTb3VyY2VzICovLAog
CQkJCTU3OTBBNjY3MjU2NzlDRUEwMDc3QzVBNyAvKiBfV0tBdXRoZW50aWNhdG9yU2VsZWN0aW9u
Q3JpdGVyaWEubW0gaW4gU291cmNlcyAqLywKIAkJCQk1Q0JENTk1QzIyODBFREY0MDAyQjIyQUEg
LyogX1dLQ3VzdG9tSGVhZGVyRmllbGRzLm1tIGluIFNvdXJjZXMgKi8sCi0JCQkJOTlDNjA3RjEy
NkZCOTFFOTAwQTA5NTNGIC8qIF9XS0luc3BlY3RvckV4dGVuc2lvblRlc3RpbmcubW0gaW4gU291
cmNlcyAqLywKIAkJCQk1NzkwQTY3NTI1Njc5Rjc0MDA3N0M1QTcgLyogX1dLUHVibGljS2V5Q3Jl
ZGVudGlhbENyZWF0aW9uT3B0aW9ucy5tbSBpbiBTb3VyY2VzICovLAogCQkJCTU3OTBBNjZEMjU2
NzlFQjcwMDc3QzVBNyAvKiBfV0tQdWJsaWNLZXlDcmVkZW50aWFsRGVzY3JpcHRvci5tbSBpbiBT
b3VyY2VzICovLAogCQkJCTU3OTBBNjU3MjU2Nzk5REEwMDc3QzVBNyAvKiBfV0tQdWJsaWNLZXlD
cmVkZW50aWFsRW50aXR5Lm1tIGluIFNvdXJjZXMgKi8sCmRpZmYgLS1naXQgYS9Ub29scy9DaGFu
Z2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggNzRiYmFmYjI3MWFlZTQyYjBhYWNhZDExNTlk
OTYwZjU5MDM0M2E4Zi4uYjIzYmY2MDMzMjc2MDhiM2M5MTlkMGViYzRjZGEzNmVjZjdlZmI1MyAx
MDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDE0IEBACisyMDIxLTEwLTE1ICBCSiBCdXJnICA8YmJ1cmdAYXBwbGUuY29tPgorCisgICAg
ICAgIFtDb2NvYV0gV2ViIEluc3BlY3RvcjogcmVtb3ZlIF9XS0luc3BlY3RvckV4dGVuc2lvblBy
aXZhdGVGb3JUZXN0aW5nCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yMzE3ODQKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzg0MjgwNjA4PgorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogVGVzdFdlYktpdEFQ
SS9UZXN0cy9XZWJLaXRDb2NvYS9XS0luc3BlY3RvckV4dGVuc2lvbi5tbToKKyAgICAgICAgKFRF
U1QpOgorCiAyMDIxLTEwLTE1ICBKb25hdGhhbiBCZWRhcmQgIDxqYmVkYXJkQGFwcGxlLmNvbT4K
IAogICAgICAgICBbd2Via2l0c2NtcHldIEFsbG93IHJlcG9zaXRvcmllcyB0byBkZWZpbmUgY3Vz
dG9tIHNldHVwIGNvbW1hbmRzCmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3Rz
L1dlYktpdENvY29hL1dLSW5zcGVjdG9yRXh0ZW5zaW9uLm1tIGIvVG9vbHMvVGVzdFdlYktpdEFQ
SS9UZXN0cy9XZWJLaXRDb2NvYS9XS0luc3BlY3RvckV4dGVuc2lvbi5tbQppbmRleCAxZDdlM2Vl
NGJjMWQ0NGI4ZDQ3ZmZjYjlmMmNjMzhkNWEwOGNhMzExLi5jOTM4NDQ3ODA4MTBlMGRhNmNkYzE5
YzMwYzg4ZDQzMmQxYWVlZjM5IDEwMDY0NAotLS0gYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3Rz
L1dlYktpdENvY29hL1dLSW5zcGVjdG9yRXh0ZW5zaW9uLm1tCisrKyBiL1Rvb2xzL1Rlc3RXZWJL
aXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvV0tJbnNwZWN0b3JFeHRlbnNpb24ubW0KQEAgLTM2LDcg
KzM2LDYgQEAKICNpbXBvcnQgPFdlYktpdC9fV0tJbnNwZWN0b3JDb25maWd1cmF0aW9uLmg+CiAj
aW1wb3J0IDxXZWJLaXQvX1dLSW5zcGVjdG9yRXh0ZW5zaW9uLmg+CiAjaW1wb3J0IDxXZWJLaXQv
X1dLSW5zcGVjdG9yRXh0ZW5zaW9uRGVsZWdhdGUuaD4KLSNpbXBvcnQgPFdlYktpdC9fV0tJbnNw
ZWN0b3JFeHRlbnNpb25Qcml2YXRlRm9yVGVzdGluZy5oPgogI2ltcG9ydCA8V2ViS2l0L19XS0lu
c3BlY3RvclByaXZhdGVGb3JUZXN0aW5nLmg+CiAjaW1wb3J0IDx3dGYvUmV0YWluUHRyLmg+CiAK
QEAgLTE1OCw3ICsxNTcsNyBAQCBURVNUKFdLSW5zcGVjdG9yRXh0ZW5zaW9uLCBDYW5FdmFsdWF0
ZVNjcmlwdEluRXh0ZW5zaW9uVGFiKQogICAgIC8vIFJlYWQgYmFjayBhIHZhbHVlIHRoYXQgaXMg
c2V0IGluIHRoZSA8aWZyYW1lPidzIHNjcmlwdCBjb250ZXh0LgogICAgIHBlbmRpbmdDYWxsYmFj
a1dhc0NhbGxlZCA9IGZhbHNlOwogICAgIGF1dG8gc2NyaXB0U291cmNlMiA9IEAid2luZG93Ll9z
ZWNyZXRWYWx1ZSI7Ci0gICAgW3NoYXJlZEluc3BlY3RvckV4dGVuc2lvbiBfZXZhbHVhdGVTY3Jp
cHQ6c2NyaXB0U291cmNlMiBpbkV4dGVuc2lvblRhYldpdGhJZGVudGlmaWVyOnNoYXJlZEV4dGVu
c2lvblRhYklkZW50aWZpZXIuZ2V0KCkgY29tcGxldGlvbkhhbmRsZXI6XihOU0Vycm9yICogX051
bGxhYmxlIGVycm9yLCBOU0RpY3Rpb25hcnkgKiBfTnVsbGFibGUgcmVzdWx0KSB7CisgICAgW3No
YXJlZEluc3BlY3RvckV4dGVuc2lvbiBldmFsdWF0ZVNjcmlwdDpzY3JpcHRTb3VyY2UyIGluVGFi
V2l0aElkZW50aWZpZXI6c2hhcmVkRXh0ZW5zaW9uVGFiSWRlbnRpZmllci5nZXQoKSBjb21wbGV0
aW9uSGFuZGxlcjpeKE5TRXJyb3IgKiBfTnVsbGFibGUgZXJyb3IsIE5TRGljdGlvbmFyeSAqIF9O
dWxsYWJsZSByZXN1bHQpIHsKICAgICAgICAgRVhQRUNUX05VTEwoZXJyb3IpOwogICAgICAgICBF
WFBFQ1RfTk9UX05VTEwocmVzdWx0KTsKICAgICAgICAgRVhQRUNUX05TX0VRVUFMKHJlc3VsdFtA
ImFuc3dlciJdLCBANDIpOwpAQCAtMTcwLDcgKzE2OSw3IEBAIFRFU1QoV0tJbnNwZWN0b3JFeHRl
bnNpb24sIENhbkV2YWx1YXRlU2NyaXB0SW5FeHRlbnNpb25UYWIpCiAgICAgLy8gQ2hlY2sgdG8g
c2VlIHRoYXQgc2NyaXB0IGlzIGFjdHVhbGx5IGJlaW5nIGV2YWx1YXRlZCBpbiB0aGUgPGlmcmFt
ZT4ncyBzY3JpcHQgY29udGV4dC4KICAgICBwZW5kaW5nQ2FsbGJhY2tXYXNDYWxsZWQgPSBmYWxz
ZTsKICAgICBhdXRvIHNjcmlwdFNvdXJjZTMgPSBAIndpbmRvdy50b3AgIT09IHdpbmRvdyI7Ci0g
ICAgW3NoYXJlZEluc3BlY3RvckV4dGVuc2lvbiBfZXZhbHVhdGVTY3JpcHQ6c2NyaXB0U291cmNl
MyBpbkV4dGVuc2lvblRhYldpdGhJZGVudGlmaWVyOnNoYXJlZEV4dGVuc2lvblRhYklkZW50aWZp
ZXIuZ2V0KCkgY29tcGxldGlvbkhhbmRsZXI6XihOU0Vycm9yICogX051bGxhYmxlIGVycm9yLCBO
U0RpY3Rpb25hcnkgKiBfTnVsbGFibGUgcmVzdWx0KSB7CisgICAgW3NoYXJlZEluc3BlY3RvckV4
dGVuc2lvbiBldmFsdWF0ZVNjcmlwdDpzY3JpcHRTb3VyY2UzIGluVGFiV2l0aElkZW50aWZpZXI6
c2hhcmVkRXh0ZW5zaW9uVGFiSWRlbnRpZmllci5nZXQoKSBjb21wbGV0aW9uSGFuZGxlcjpeKE5T
RXJyb3IgKiBfTnVsbGFibGUgZXJyb3IsIE5TRGljdGlvbmFyeSAqIF9OdWxsYWJsZSByZXN1bHQp
IHsKICAgICAgICAgRVhQRUNUX05VTEwoZXJyb3IpOwogICAgICAgICBFWFBFQ1RfTk9UX05VTEwo
cmVzdWx0KTsKICAgICAgICAgRVhQRUNUX05TX0VRVUFMKHJlc3VsdCwgQFlFUyk7CkBAIC0yNDks
NyArMjQ4LDcgQEAgVEVTVChXS0luc3BlY3RvckV4dGVuc2lvbiwgRXh0ZW5zaW9uVGFiSXNQZXJz
aXN0ZW50KQogCiAgICAgLy8gUmVhZCBiYWNrIGEgdmFsdWUgdGhhdCBpcyB1bmlxdWUgdG8gdGhl
IDxpZnJhbWU+J3Mgc2NyaXB0IGNvbnRleHQuCiAgICAgcGVuZGluZ0NhbGxiYWNrV2FzQ2FsbGVk
ID0gZmFsc2U7Ci0gICAgW3NoYXJlZEluc3BlY3RvckV4dGVuc2lvbiBfZXZhbHVhdGVTY3JpcHQ6
c2NyaXB0U291cmNlIGluRXh0ZW5zaW9uVGFiV2l0aElkZW50aWZpZXI6c2hhcmVkRXh0ZW5zaW9u
VGFiSWRlbnRpZmllci5nZXQoKSBjb21wbGV0aW9uSGFuZGxlcjpeKE5TRXJyb3IgKiBfTnVsbGFi
bGUgZXJyb3IsIE5TRGljdGlvbmFyeSAqIF9OdWxsYWJsZSByZXN1bHQpIHsKKyAgICBbc2hhcmVk
SW5zcGVjdG9yRXh0ZW5zaW9uIGV2YWx1YXRlU2NyaXB0OnNjcmlwdFNvdXJjZSBpblRhYldpdGhJ
ZGVudGlmaWVyOnNoYXJlZEV4dGVuc2lvblRhYklkZW50aWZpZXIuZ2V0KCkgY29tcGxldGlvbkhh
bmRsZXI6XihOU0Vycm9yICogX051bGxhYmxlIGVycm9yLCBOU0RpY3Rpb25hcnkgKiBfTnVsbGFi
bGUgcmVzdWx0KSB7CiAgICAgICAgIEVYUEVDVF9OVUxMKGVycm9yKTsKICAgICAgICAgRVhQRUNU
X05PVF9OVUxMKHJlc3VsdCk7CiAgICAgICAgIGV2YWx1YXRpb25SZXN1bHQgPSByZXN1bHQ7CkBA
IC0yNjUsNyArMjY0LDcgQEAgVEVTVChXS0luc3BlY3RvckV4dGVuc2lvbiwgRXh0ZW5zaW9uVGFi
SXNQZXJzaXN0ZW50KQogICAgIC8vIENoZWNrIHRoZSB1bmlxdWUgdmFsdWUgYWdhaW4sIHdoaWxl
IHRoZSA8aWZyYW1lPiBpcyBiZWluZyBoaWRkZW4uIElmIHRoZSA8aWZyYW1lPiBpcwogICAgIC8v
IGRldGFjaGVkIGZyb20gdGhlIERPTSwgdGhlbiB0aGlzIGV2YWx1YXRpb24gd2lsbCBmYWlsIG9y
IGhhbmcuCiAgICAgcGVuZGluZ0NhbGxiYWNrV2FzQ2FsbGVkID0gZmFsc2U7Ci0gICAgW3NoYXJl
ZEluc3BlY3RvckV4dGVuc2lvbiBfZXZhbHVhdGVTY3JpcHQ6c2NyaXB0U291cmNlIGluRXh0ZW5z
aW9uVGFiV2l0aElkZW50aWZpZXI6c2hhcmVkRXh0ZW5zaW9uVGFiSWRlbnRpZmllci5nZXQoKSBj
b21wbGV0aW9uSGFuZGxlcjpeKE5TRXJyb3IgKiBfTnVsbGFibGUgZXJyb3IsIE5TRGljdGlvbmFy
eSAqIF9OdWxsYWJsZSByZXN1bHQpIHsKKyAgICBbc2hhcmVkSW5zcGVjdG9yRXh0ZW5zaW9uIGV2
YWx1YXRlU2NyaXB0OnNjcmlwdFNvdXJjZSBpblRhYldpdGhJZGVudGlmaWVyOnNoYXJlZEV4dGVu
c2lvblRhYklkZW50aWZpZXIuZ2V0KCkgY29tcGxldGlvbkhhbmRsZXI6XihOU0Vycm9yICogX051
bGxhYmxlIGVycm9yLCBOU0RpY3Rpb25hcnkgKiBfTnVsbGFibGUgcmVzdWx0KSB7CiAgICAgICAg
IEVYUEVDVF9OVUxMKGVycm9yKTsKICAgICAgICAgRVhQRUNUX05PVF9OVUxMKHJlc3VsdCk7CiAg
ICAgICAgIEVYUEVDVF9OU19FUVVBTChyZXN1bHQsIGV2YWx1YXRpb25SZXN1bHQuZ2V0KCkpOwpA
QCAtMjg3LDcgKzI4Niw3IEBAIFRFU1QoV0tJbnNwZWN0b3JFeHRlbnNpb24sIEV4dGVuc2lvblRh
YklzUGVyc2lzdGVudCkKIAogICAgIC8vIENoZWNrIHRoZSB1bmlxdWUgdmFsdWUgYWdhaW4gYWZ0
ZXIgcmVzZWxlY3RpbmcgdGhlIGV4dGVuc2lvbiB0YWIuCiAgICAgcGVuZGluZ0NhbGxiYWNrV2Fz
Q2FsbGVkID0gZmFsc2U7Ci0gICAgW3NoYXJlZEluc3BlY3RvckV4dGVuc2lvbiBfZXZhbHVhdGVT
Y3JpcHQ6c2NyaXB0U291cmNlIGluRXh0ZW5zaW9uVGFiV2l0aElkZW50aWZpZXI6c2hhcmVkRXh0
ZW5zaW9uVGFiSWRlbnRpZmllci5nZXQoKSBjb21wbGV0aW9uSGFuZGxlcjpeKE5TRXJyb3IgKiBf
TnVsbGFibGUgZXJyb3IsIE5TRGljdGlvbmFyeSAqIF9OdWxsYWJsZSByZXN1bHQpIHsKKyAgICBb
c2hhcmVkSW5zcGVjdG9yRXh0ZW5zaW9uIGV2YWx1YXRlU2NyaXB0OnNjcmlwdFNvdXJjZSBpblRh
YldpdGhJZGVudGlmaWVyOnNoYXJlZEV4dGVuc2lvblRhYklkZW50aWZpZXIuZ2V0KCkgY29tcGxl
dGlvbkhhbmRsZXI6XihOU0Vycm9yICogX051bGxhYmxlIGVycm9yLCBOU0RpY3Rpb25hcnkgKiBf
TnVsbGFibGUgcmVzdWx0KSB7CiAgICAgICAgIEVYUEVDVF9OVUxMKGVycm9yKTsKICAgICAgICAg
RVhQRUNUX05PVF9OVUxMKHJlc3VsdCk7CiAgICAgICAgIEVYUEVDVF9OU19FUVVBTChyZXN1bHQs
IGV2YWx1YXRpb25SZXN1bHQuZ2V0KCkpOwpAQCAtMzY2LDcgKzM2NSw3IEBAIFRFU1QoV0tJbnNw
ZWN0b3JFeHRlbnNpb24sIEV2YWx1YXRlU2NyaXB0SW5FeHRlbnNpb25UYWJDYW5SZXR1cm5Qcm9t
aXNlcykKICAgICBhdXRvIHNjcmlwdFNvdXJjZSA9IFtOU1N0cmluZyBzdHJpbmdXaXRoRm9ybWF0
OkAiUHJvbWlzZS5yZXNvbHZlKFwiJUBcIikiLCBzZWNyZXRTdHJpbmddOwogCiAgICAgcGVuZGlu
Z0NhbGxiYWNrV2FzQ2FsbGVkID0gZmFsc2U7Ci0gICAgW3NoYXJlZEluc3BlY3RvckV4dGVuc2lv
biBfZXZhbHVhdGVTY3JpcHQ6c2NyaXB0U291cmNlIGluRXh0ZW5zaW9uVGFiV2l0aElkZW50aWZp
ZXI6c2hhcmVkRXh0ZW5zaW9uVGFiSWRlbnRpZmllci5nZXQoKSBjb21wbGV0aW9uSGFuZGxlcjpe
KE5TRXJyb3IgKiBfTnVsbGFibGUgZXJyb3IsIE5TRGljdGlvbmFyeSAqIF9OdWxsYWJsZSByZXN1
bHQpIHsKKyAgICBbc2hhcmVkSW5zcGVjdG9yRXh0ZW5zaW9uIGV2YWx1YXRlU2NyaXB0OnNjcmlw
dFNvdXJjZSBpblRhYldpdGhJZGVudGlmaWVyOnNoYXJlZEV4dGVuc2lvblRhYklkZW50aWZpZXIu
Z2V0KCkgY29tcGxldGlvbkhhbmRsZXI6XihOU0Vycm9yICogX051bGxhYmxlIGVycm9yLCBOU0Rp
Y3Rpb25hcnkgKiBfTnVsbGFibGUgcmVzdWx0KSB7CiAgICAgICAgIEVYUEVDVF9OVUxMKGVycm9y
KTsKICAgICAgICAgRVhQRUNUX05PVF9OVUxMKHJlc3VsdCk7CiAgICAgICAgIEVYUEVDVF9OU19F
UVVBTChyZXN1bHQsIHNlY3JldFN0cmluZyk7CkBAIC0zNzYsNyArMzc1LDcgQEAgVEVTVChXS0lu
c3BlY3RvckV4dGVuc2lvbiwgRXZhbHVhdGVTY3JpcHRJbkV4dGVuc2lvblRhYkNhblJldHVyblBy
b21pc2VzKQogICAgIFRlc3RXZWJLaXRBUEk6OlV0aWw6OnJ1bigmcGVuZGluZ0NhbGxiYWNrV2Fz
Q2FsbGVkKTsKIAogICAgIHBlbmRpbmdDYWxsYmFja1dhc0NhbGxlZCA9IGZhbHNlOwotICAgIFtz
aGFyZWRJbnNwZWN0b3JFeHRlbnNpb24gX2V2YWx1YXRlU2NyaXB0OkAiKCgoIiBpbkV4dGVuc2lv
blRhYldpdGhJZGVudGlmaWVyOnNoYXJlZEV4dGVuc2lvblRhYklkZW50aWZpZXIuZ2V0KCkgY29t
cGxldGlvbkhhbmRsZXI6XihOU0Vycm9yICogX051bGxhYmxlIGVycm9yLCBOU0RpY3Rpb25hcnkg
KiBfTnVsbGFibGUgcmVzdWx0KSB7CisgICAgW3NoYXJlZEluc3BlY3RvckV4dGVuc2lvbiBldmFs
dWF0ZVNjcmlwdDpAIigoKCIgaW5UYWJXaXRoSWRlbnRpZmllcjpzaGFyZWRFeHRlbnNpb25UYWJJ
ZGVudGlmaWVyLmdldCgpIGNvbXBsZXRpb25IYW5kbGVyOl4oTlNFcnJvciAqIF9OdWxsYWJsZSBl
cnJvciwgTlNEaWN0aW9uYXJ5ICogX051bGxhYmxlIHJlc3VsdCkgewogICAgICAgICBFWFBFQ1Rf
Tk9UX05VTEwoZXJyb3IpOwogICAgICAgICBFWFBFQ1RfTlVMTChyZXN1bHQpOwogCg==
</data>
<flag name="commit-queue"
          id="465716"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
      

    </bug>

</bugzilla>