<?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>178583</bug_id>
          
          <creation_ts>2017-10-20 07:40:06 -0700</creation_ts>
          <short_desc>Enable ability to prevent scrolling in Element.focus()</short_desc>
          <delta_ts>2022-02-14 09:02:32 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Scrolling</component>
          <version>Safari Technology Preview</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=224262</see_also>
    
    <see_also>https://bugs.webkit.org/show_bug.cgi?id=236584</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>BrowserCompat, InRadar, WebExposed</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Jihye Hong">jihyerish</reporter>
          <assigned_to name="Rob Buis">rbuis</assigned_to>
          <cc>alden</cc>
    
    <cc>alex</cc>
    
    <cc>annulen</cc>
    
    <cc>benjaminkindle</cc>
    
    <cc>cdumez</cc>
    
    <cc>changseok</cc>
    
    <cc>charlie.croom</cc>
    
    <cc>chrisjshull</cc>
    
    <cc>clopez</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>cory</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>ian</cc>
    
    <cc>jihyerish</cc>
    
    <cc>kangil.han</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>kyle.bavender</cc>
    
    <cc>loic.yhuel</cc>
    
    <cc>mifenton</cc>
    
    <cc>mihaip</cc>
    
    <cc>mqr5815</cc>
    
    <cc>nate.whittaker</cc>
    
    <cc>rbuis</cc>
    
    <cc>rniwa</cc>
    
    <cc>ryuan.choi</cc>
    
    <cc>sam</cc>
    
    <cc>sergio</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>timdream</cc>
    
    <cc>vepomoc</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
    
    <cc>zcorpan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1362685</commentid>
    <comment_count>0</comment_count>
    <who name="Jihye Hong">jihyerish</who>
    <bug_when>2017-10-20 07:40:06 -0700</bug_when>
    <thetext>There is a spec proposal to disable automatic scroll into view on Element.focus().

Here is the summary of current situation: https://github.com/whatwg/html/pull/2787#issuecomment-338193107

The new dictionary type &quot;FocusOptions&quot; with the “preventScroll&quot; dictionary member is introduced.

The IDL of Element.focus() will change to: 

dictionary FocusOptions {
  boolean preventScroll = false;
};
void focus(optional FocusOptions options);

If preventScroll is omitted or false, then the element will be scrolled into view with UA-defined manners.
Otherwise, it disables scrolling triggered by focus().

Related tests:
https://github.com/w3c/web-platform-tests/pull/7915
https://github.com/w3c/web-platform-tests/pull/7917</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1371287</commentid>
    <comment_count>1</comment_count>
    <who name="Jihye Hong">jihyerish</who>
    <bug_when>2017-11-13 22:38:31 -0800</bug_when>
    <thetext>The spec proposal related to this issue was finally merged to the HTML Spec.
See the spec in here: 
https://html.spec.whatwg.org/#focus-management-apis</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1552267</commentid>
    <comment_count>2</comment_count>
    <who name="Alden Daniels">alden</who>
    <bug_when>2019-07-11 16:02:29 -0700</bug_when>
    <thetext>Update: This is now supported in both Chrome and 

See https://bugzilla.mozilla.org/show_bug.cgi?id=1374045 and

https://wpt.fyi/results/html/interaction/focus/processing-model/preventScroll.html?label=master&amp;product=chrome%5Bstable%5D&amp;product=edge%5Bstable%5D&amp;product=firefox%5Bexperimental%5D&amp;product=safari%5Bexperimental%5D&amp;aligned</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1671373</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-07-14 08:45:55 -0700</bug_when>
    <thetext>&lt;rdar://problem/65544961&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1692864</commentid>
    <comment_count>4</comment_count>
      <attachid>409976</attachid>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2020-09-29 02:05:46 -0700</bug_when>
    <thetext>Created attachment 409976
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1692870</commentid>
    <comment_count>5</comment_count>
      <attachid>409979</attachid>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2020-09-29 03:28:09 -0700</bug_when>
    <thetext>Created attachment 409979
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1692952</commentid>
    <comment_count>6</comment_count>
      <attachid>409979</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2020-09-29 09:30:37 -0700</bug_when>
    <thetext>Comment on attachment 409979
Patch

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

&gt; Source/WebCore/dom/Element.h:405
&gt; +    virtual void focus(bool restorePreviousSelection = true, FocusDirection = FocusDirectionNone, bool preventScroll = false);

I think it would be nicer for preventScroll to be an enum class.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1693336</commentid>
    <comment_count>7</comment_count>
      <attachid>410105</attachid>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2020-09-30 04:04:29 -0700</bug_when>
    <thetext>Created attachment 410105
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1694016</commentid>
    <comment_count>8</comment_count>
      <attachid>410308</attachid>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2020-10-02 03:43:45 -0700</bug_when>
    <thetext>Created attachment 410308
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1694109</commentid>
    <comment_count>9</comment_count>
      <attachid>410308</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2020-10-02 09:16:59 -0700</bug_when>
    <thetext>Comment on attachment 410308
Patch

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

&gt; Source/WebCore/dom/Element.h:406
&gt; +    void focus(const FocusOptions&amp;);
&gt; +    enum class PreventScroll { No, Yes };
&gt; +    virtual void focus(bool restorePreviousSelection = true, FocusDirection = FocusDirectionNone, PreventScroll = PreventScroll::No);

I think this might be a bit nicer if we just had the one focus(const FocusOptions&amp;) function, and added restorePreviousSelection and FocusDirection to the  FocusOptions struct (without exposing them to IDL of course). What do you think?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1694110</commentid>
    <comment_count>10</comment_count>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2020-10-02 09:19:47 -0700</bug_when>
    <thetext>(In reply to Sam Weinig from comment #9)
&gt; Comment on attachment 410308 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=410308&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/dom/Element.h:406
&gt; &gt; +    void focus(const FocusOptions&amp;);
&gt; &gt; +    enum class PreventScroll { No, Yes };
&gt; &gt; +    virtual void focus(bool restorePreviousSelection = true, FocusDirection = FocusDirectionNone, PreventScroll = PreventScroll::No);
&gt; 
&gt; I think this might be a bit nicer if we just had the one focus(const
&gt; FocusOptions&amp;) function, and added restorePreviousSelection and
&gt; FocusDirection to the  FocusOptions struct (without exposing them to IDL of
&gt; course). What do you think?

That is a good idea, I will give it a shot.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1694182</commentid>
    <comment_count>11</comment_count>
      <attachid>410349</attachid>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2020-10-02 12:19:49 -0700</bug_when>
    <thetext>Created attachment 410349
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1694192</commentid>
    <comment_count>12</comment_count>
      <attachid>410349</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2020-10-02 12:24:42 -0700</bug_when>
    <thetext>Comment on attachment 410349
Patch

How is the prevent scrolling stuff spec&apos;ed to work with nested overflow/iframe scrolling? Is scrolling prevented on all ancestors? If so, that needs testing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1696335</commentid>
    <comment_count>13</comment_count>
      <attachid>410349</attachid>
    <who name="Loïc Yhuel">loic.yhuel</who>
    <bug_when>2020-10-09 13:15:27 -0700</bug_when>
    <thetext>Comment on attachment 410349
Patch

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

I&apos;m not sure whether the code style guidelines mandate spaces inside braced init lists, and the WebKit code isn&apos;t consistent.
Here when initializing the different FocusOptions arguments, sometimes there are spaces, sometimes not.

&gt; Source/WebCore/ChangeLog:29
&gt; +        * dom/FocusOptions.h: Copied from Source/WebCore/html/HTMLOrForeignElement.idl.

not copied

&gt; Source/WebCore/dom/Element.h:405
&gt; +    enum class PreventScroll { No, Yes };

This is no longer used in this patch revision.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1719292</commentid>
    <comment_count>14</comment_count>
      <attachid>417535</attachid>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2021-01-13 08:26:44 -0800</bug_when>
    <thetext>Created attachment 417535
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1719819</commentid>
    <comment_count>15</comment_count>
      <attachid>417687</attachid>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2021-01-15 01:54:13 -0800</bug_when>
    <thetext>Created attachment 417687
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1719822</commentid>
    <comment_count>16</comment_count>
      <attachid>410349</attachid>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2021-01-15 01:57:09 -0800</bug_when>
    <thetext>Comment on attachment 410349
Patch

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

Loic, are you interested in taking over this bug? I will not have time to finish this patch for a while...

&gt;&gt; Source/WebCore/ChangeLog:29
&gt;&gt; +        * dom/FocusOptions.h: Copied from Source/WebCore/html/HTMLOrForeignElement.idl.
&gt; 
&gt; not copied

Removed.

&gt;&gt; Source/WebCore/dom/Element.h:405
&gt;&gt; +    enum class PreventScroll { No, Yes };
&gt; 
&gt; This is no longer used in this patch revision.

Removed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1723382</commentid>
    <comment_count>17</comment_count>
    <who name="Matt Ryan">mqr5815</who>
    <bug_when>2021-01-28 09:11:15 -0800</bug_when>
    <thetext>Commenting as an +1 for prioritization of this bug, as Safari support is the one remaining blocker for wide availability of this feature and support has been in other browsers for a long time.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1725646</commentid>
    <comment_count>18</comment_count>
    <who name="Charlie Croom">charlie.croom</who>
    <bug_when>2021-02-04 09:07:19 -0800</bug_when>
    <thetext>Throwing a +1 from Twitter into the mix too. We found this to be a really useful a11y tool to help with focus restoration from focus bound/locked contexts like dropdowns. It allows manual focus management and scrolling to play nicer together. (Although can be a foot gun if used wrong)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1727278</commentid>
    <comment_count>19</comment_count>
    <who name="Chris J. Shull">chrisjshull</who>
    <bug_when>2021-02-09 14:54:39 -0800</bug_when>
    <thetext>+1 from the Google Maps API.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1727994</commentid>
    <comment_count>20</comment_count>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2021-02-11 01:04:05 -0800</bug_when>
    <thetext>(In reply to Simon Fraser (smfr) from comment #12)
&gt; Comment on attachment 410349 [details]
&gt; Patch
&gt; 
&gt; How is the prevent scrolling stuff spec&apos;ed to work with nested
&gt; overflow/iframe scrolling? Is scrolling prevented on all ancestors? If so,
&gt; that needs testing.

Jihye, as spec author do you have some ideas about this? Are tests needed? This is the part the needs to be clarified before landing this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1728031</commentid>
    <comment_count>21</comment_count>
    <who name="Jihye Hong">jihyerish</who>
    <bug_when>2021-02-11 03:48:48 -0800</bug_when>
    <thetext>&gt;&gt; Comment on attachment 410349 [details]
&gt;&gt; Patch
&gt;&gt; 
&gt;&gt; How is the prevent scrolling stuff spec&apos;ed to work with nested
&gt;&gt; overflow/iframe scrolling? Is scrolling prevented on all ancestors? If so,
&gt;&gt; that needs testing.

&gt;Jihye, as spec author do you have some ideas about this? Are tests needed? This is the part the needs to be clarified before landing this.


For the nested scroll elements, the preventScroll option 
* Doesn&apos;t affect the ancestors of the element
* Affects the descenders of the element

The initial intention of the spec is to avoid the frequent scroll behavior triggered by focus.
So preventScroll option is given to a certain element and if the element is a scroll container, the option applies to all elements that belong to it.

I think it would be better to have TC about this such as:

if there are nested scroll elements
&lt;div id=&quot;scrollBox&quot; style=&quot;overflow-y: scroll;&quot;&gt;
  &lt;div class=&quot;bigbox&quot; id=&quot;1&quot; style=&quot;overflow-y: scroll;&quot; tabindex=1&gt;
    &lt;div class=&quot;box&quot; id=&quot;1_1&quot; tabindex=1&gt;1_1&lt;/div&gt;
    &lt;div class=&quot;box&quot; id=&quot;1_2&quot; tabindex=1&gt;1_2&lt;/div&gt;
    &lt;div class=&quot;box&quot; id=&quot;1_3&quot; tabindex=1&gt;1_3&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class=&quot;bigbox&quot; id=&quot;2&quot; style=&quot;overflow-y: scroll;&quot; tabindex=1&gt;
    &lt;div class=&quot;box&quot; id=&quot;2_1&quot; tabindex=1&gt;2_1&lt;/div&gt;
    &lt;div class=&quot;box&quot; id=&quot;2_2&quot; tabindex=1&gt;2_2&lt;/div&gt;
    &lt;div class=&quot;box&quot; id=&quot;2_3&quot; tabindex=1&gt;2_3&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class=&quot;bigbox&quot; id=&quot;3&quot; style=&quot;overflow-y: scroll;&quot; tabindex=1&gt;
    &lt;div class=&quot;box&quot; id=&quot;3_1&quot; tabindex=1&gt;3_1&lt;/div&gt;
    &lt;div class=&quot;box&quot; id=&quot;3_2&quot; tabindex=1&gt;3_2&lt;/div&gt;
    &lt;div class=&quot;box&quot; id=&quot;3_3&quot; tabindex=1&gt;3_3&lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;

1. Check whether preventScroll effects ancestor or not 
1) #2 element and #2_1 element are both partially visible from the viewport of #scrollBox
2) document.getElementById(&apos;2_1&apos;).focus({preventScroll: true});
Expected result: Focus moves to the element with id &quot;2_1&quot; and both #2 element and #2_1 element don&apos;t scroll inside the viewport of #scrollBox element

2. Check whether preventScroll effects descender or not 
1) #2 element and #2_1 element are both partially visible from the viewport of #scrollBox
2) document.getElementById(&apos;2&apos;).focus({preventScroll: true});
Expected result: Focus moves to the element with id &quot;2&quot; and both #2 element and #2_1 element don&apos;t scroll inside the viewport of #scrollBox element</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1728986</commentid>
    <comment_count>22</comment_count>
      <attachid>420239</attachid>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2021-02-14 03:46:23 -0800</bug_when>
    <thetext>Created attachment 420239
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1728987</commentid>
    <comment_count>23</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2021-02-14 03:47:18 -0800</bug_when>
    <thetext>This patch modifies the imported WPT tests. Please ensure that any changes on the tests (not coming from a WPT import) are exported to WPT. Please see https://trac.webkit.org/wiki/WPTExportProcess</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1729600</commentid>
    <comment_count>24</comment_count>
      <attachid>420442</attachid>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2021-02-16 02:22:57 -0800</bug_when>
    <thetext>Created attachment 420442
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1729803</commentid>
    <comment_count>25</comment_count>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2021-02-16 11:00:35 -0800</bug_when>
    <thetext>(In reply to Jihye Hong from comment #21)
&gt; I think it would be better to have TC about this such as:

Thanks you for the TC idea and review!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1741899</commentid>
    <comment_count>26</comment_count>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2021-03-19 14:36:25 -0700</bug_when>
    <thetext>This is ready for review :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1742398</commentid>
    <comment_count>27</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-03-22 12:55:20 -0700</bug_when>
    <thetext>Tools/Scripts/svn-apply failed to apply attachment 420442 to trunk.
Please resolve the conflicts and upload a new patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1742423</commentid>
    <comment_count>28</comment_count>
      <attachid>423926</attachid>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2021-03-22 13:25:38 -0700</bug_when>
    <thetext>Created attachment 423926
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1742521</commentid>
    <comment_count>29</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-03-22 15:29:57 -0700</bug_when>
    <thetext>Committed r274812: &lt;https://commits.webkit.org/r274812&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 423926.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1742859</commentid>
    <comment_count>30</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2021-03-23 09:45:56 -0700</bug_when>
    <thetext>*** Bug 219093 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1747746</commentid>
    <comment_count>31</comment_count>
      <attachid>423926</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2021-04-06 20:25:14 -0700</bug_when>
    <thetext>Comment on attachment 423926
Patch

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

&gt; Source/WebCore/dom/Element.cpp:3092
&gt; -    newTarget-&gt;revealFocusedElement(restorationMode);
&gt; +    if (!options.preventScroll)
&gt; +        newTarget-&gt;revealFocusedElement(options.selectionRestorationMode);

This is clearly wrong. We don&apos;t have to scroll but we most certainly need to update the selection.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>409976</attachid>
            <date>2020-09-29 02:05:46 -0700</date>
            <delta_ts>2020-09-29 03:28:05 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-178583-20200929100545.patch</filename>
            <type>text/plain</type>
            <size>22221</size>
            <attacher name="Rob Buis">rbuis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY3NjkyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTZhYTU0YTU1YTM5ZDgy
MzEzNjM4YmE1MDk1NzNhMTQ4OGQzOWZkNS4uNTkwYjlkZDVhMWM2ZWFhZTJhZDU3NWI4ZjY1NGQ2
NGE4MTA4NTNiNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDIwLTA5LTI5ICBSb2Ig
QnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgRW5hYmxlIGFiaWxpdHkgdG8gcHJl
dmVudCBzY3JvbGxpbmcgaW4gRWxlbWVudC5mb2N1cygpCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzg1ODMKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBXSVAuCisKKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4
dDoKKyAgICAgICAgKiBEZXJpdmVkU291cmNlcy1pbnB1dC54Y2ZpbGVsaXN0OgorICAgICAgICAq
IERlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0OgorICAgICAgICAqIERlcml2ZWRTb3Vy
Y2VzLm1ha2U6CisgICAgICAgICogSGVhZGVycy5jbWFrZToKKyAgICAgICAgKiBTb3VyY2VzLnR4
dDoKKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAg
ICogZG9tL0VsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RWxlbWVudDo6Zm9jdXMpOgor
ICAgICAgICAqIGRvbS9FbGVtZW50Lmg6CisgICAgICAgICogZG9tL0ZvY3VzT3B0aW9ucy5oOiBD
b3BpZWQgZnJvbSBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPckZvcmVpZ25FbGVtZW50LmlkbC4K
KyAgICAgICAgKiBkb20vRm9jdXNPcHRpb25zLmlkbDogQ29waWVkIGZyb20gU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MT3JGb3JlaWduRWxlbWVudC5pZGwuCisgICAgICAgICogaHRtbC9IVE1MTGFi
ZWxFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxMYWJlbEVsZW1lbnQ6OmZvY3Vz
KToKKyAgICAgICAgKiBodG1sL0hUTUxMYWJlbEVsZW1lbnQuaDoKKyAgICAgICAgKiBodG1sL0hU
TUxMZWdlbmRFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxMZWdlbmRFbGVtZW50
Ojpmb2N1cyk6CisgICAgICAgICogaHRtbC9IVE1MTGVnZW5kRWxlbWVudC5oOgorICAgICAgICAq
IGh0bWwvSFRNTE9yRm9yZWlnbkVsZW1lbnQuaWRsOgorCiAyMDIwLTA5LTI0ICBTaW1vbiBGcmFz
ZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgogCiAgICAgICAgIFdlYktpdExlZ2FjeSBzaG91
bGQgY2FsbCBQYWdlOjpmaW5hbGl6ZVJlbmRlcmluZ1VwZGF0ZSgpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dCBiL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0
CmluZGV4IDJjZWYwYzdkYjVlZGZkYmNiMjZkZDk4NDM5MGEwNTlmNGIzOWZhNjcuLjA1N2E1MmZi
NzVjNmJkYTFjM2E1OTExZTk5MGQ3MTk4NGE1MDJmMTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL0NNYWtlTGlzdHMudHh0CisrKyBiL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CkBA
IC04NzYsNiArODc2LDcgQEAgc2V0KFdlYkNvcmVfTk9OX1NWR19JRExfRklMRVMKICAgICBodG1s
L0RPTUZvcm1EYXRhLmlkbAogICAgIGh0bWwvRE9NVG9rZW5MaXN0LmlkbAogICAgIGh0bWwvRE9N
VVJMLmlkbAorICAgIGh0bWwvRm9jdXNPcHRpb25zLmlkbAogICAgIGh0bWwvSFRNTEFsbENvbGxl
Y3Rpb24uaWRsCiAgICAgaHRtbC9IVE1MQW5jaG9yRWxlbWVudC5pZGwKICAgICBodG1sL0hUTUxB
cHBsZXRFbGVtZW50LmlkbApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJj
ZXMtaW5wdXQueGNmaWxlbGlzdCBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLWlucHV0
LnhjZmlsZWxpc3QKaW5kZXggMTgxZWEwZmI4YjUwYjA2MjNiZWZlNjIzZGYxMjY0N2RhOGI0ZDJm
Ny4uYjhkNDgwNGVlY2I0OWUyMGY0NzY5OTg4NGYyZDE2OTIzM2E3NjgwNiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1pbnB1dC54Y2ZpbGVsaXN0CkBAIC03MjAsNiArNzIw
LDcgQEAgJChQUk9KRUNUX0RJUikvZG9tL0V2ZW50TmFtZXMuaW4KICQoUFJPSkVDVF9ESVIpL2Rv
bS9FdmVudFRhcmdldC5pZGwKICQoUFJPSkVDVF9ESVIpL2RvbS9FdmVudFRhcmdldEZhY3Rvcnku
aW4KICQoUFJPSkVDVF9ESVIpL2RvbS9Gb2N1c0V2ZW50LmlkbAorJChQUk9KRUNUX0RJUikvZG9t
L0ZvY3VzT3B0aW9ucy5pZGwKICQoUFJPSkVDVF9ESVIpL2RvbS9HbG9iYWxFdmVudEhhbmRsZXJz
K1BvaW50ZXJFdmVudHMuaWRsCiAkKFBST0pFQ1RfRElSKS9kb20vR2xvYmFsRXZlbnRIYW5kbGVy
cy5pZGwKICQoUFJPSkVDVF9ESVIpL2RvbS9IYXNoQ2hhbmdlRXZlbnQuaWRsCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1vdXRwdXQueGNmaWxlbGlzdCBiL1NvdXJj
ZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0CmluZGV4IDczNzMzZTY2
NDg0ZDBmNmU0YjM4YTFlZjc3ZDMxYTI1ZDU3ZDVmZDYuLjU4Y2ZmZDBhZGZiYzYzYzVhNTZkY2E0
ZjE1ZDZiZDgxY2M3YjBhMjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3Vy
Y2VzLW91dHB1dC54Y2ZpbGVsaXN0CisrKyBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2Vz
LW91dHB1dC54Y2ZpbGVsaXN0CkBAIC03NjIsNiArNzYyLDggQEAgJChCVUlMVF9QUk9EVUNUU19E
SVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNGaWxsTW9kZS5jcHAKICQoQlVJTFRfUFJPRFVD
VFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTRmlsbE1vZGUuaAogJChCVUlMVF9QUk9E
VUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNGb2N1c0V2ZW50LmNwcAogJChCVUlM
VF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNGb2N1c0V2ZW50LmgKKyQo
QlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTRm9jdXNPcHRpb25z
LmNwcAorJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNGb2N1
c09wdGlvbnMuaAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUv
SlNGb250RmFjZS5jcHAKICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJD
b3JlL0pTRm9udEZhY2UuaAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dl
YkNvcmUvSlNGb250RmFjZVNldC5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2
ZWRTb3VyY2VzLm1ha2UgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCmluZGV4
IGU2YmRmM2UyNWU5NjE0YTA4ZjBhMGRlN2M3MmI5NDg2NGQ2YTk5ZmQuLmE0MWE0ZTNjYzc0ODk2
ODY5NTVlODBmNTVjNTU1Y2E1N2NlZDRlZDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0Rl
cml2ZWRTb3VyY2VzLm1ha2UKKysrIGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFr
ZQpAQCAtNzUxLDYgKzc1MSw3IEBAIEpTX0JJTkRJTkdfSURMUyA9IFwKICAgICAkKFdlYkNvcmUp
L2RvbS9FdmVudE1vZGlmaWVySW5pdC5pZGwgXAogICAgICQoV2ViQ29yZSkvZG9tL0V2ZW50VGFy
Z2V0LmlkbCBcCiAgICAgJChXZWJDb3JlKS9kb20vRm9jdXNFdmVudC5pZGwgXAorICAgICQoV2Vi
Q29yZSkvZG9tL0ZvY3VzT3B0aW9ucy5pZGwgXAogICAgICQoV2ViQ29yZSkvZG9tL0dsb2JhbEV2
ZW50SGFuZGxlcnMuaWRsIFwKICAgICAkKFdlYkNvcmUpL2RvbS9HbG9iYWxFdmVudEhhbmRsZXJz
K1BvaW50ZXJFdmVudHMuaWRsIFwKICAgICAkKFdlYkNvcmUpL2RvbS9IYXNoQ2hhbmdlRXZlbnQu
aWRsIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UgYi9Tb3VyY2Uv
V2ViQ29yZS9IZWFkZXJzLmNtYWtlCmluZGV4IGVlOTg4ZjVjMzNiNmU4ZDFkNTUyMzM3ZWZkZDg5
NTNhOGY0MmNmMjIuLjI2MzI2ZjdhNGU0ZTliZDI5NjhhNTc4NDcyODI5MDVmNGFmZGYwODIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UKKysrIGIvU291cmNlL1dlYkNv
cmUvSGVhZGVycy5jbWFrZQpAQCAtNDMwLDYgKzQzMCw3IEBAIHNldChXZWJDb3JlX1BSSVZBVEVf
RlJBTUVXT1JLX0hFQURFUlMKICAgICBkb20vRXhjZXB0aW9uQ29kZS5oCiAgICAgZG9tL0V4Y2Vw
dGlvbkRhdGEuaAogICAgIGRvbS9FeGNlcHRpb25Pci5oCisgICAgZG9tL0ZvY3VzT3B0aW9ucy5o
CiAgICAgZG9tL0ZyYWdtZW50U2NyaXB0aW5nUGVybWlzc2lvbi5oCiAgICAgZG9tL0Z1bGxzY3Jl
ZW5NYW5hZ2VyLmgKICAgICBkb20vR0NSZWFjaGFibGVSZWYuaApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvU291cmNlcy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dAppbmRleCBh
NTcyY2U5NDIwZjQ0MGJhMzQ3MDdiZTVkNWNlNzFhZmM3OTRmMGQxLi44ZDE3YTlmNDBmNTZlMWFm
MzU5NzIxMTRhOTg0OTE2MTRmODZlZDVjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Tb3Vy
Y2VzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dApAQCAtMjg5Niw2ICsyODk2
LDcgQEAgSlNGaWxlU3lzdGVtRW50cnlDYWxsYmFjay5jcHAKIEpTRmlsZVN5c3RlbUZpbGVFbnRy
eS5jcHAKIEpTRmlsbE1vZGUuY3BwCiBKU0ZvY3VzRXZlbnQuY3BwCitKU0ZvY3VzT3B0aW9ucy5j
cHAKIEpTRm9udEZhY2UuY3BwCiBKU0ZvbnRGYWNlU2V0LmNwcAogSlNHUFVCaW5kR3JvdXBMYXlv
dXRCaW5kaW5nLmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qCmluZGV4IDViOWJhOWNlOWQ5MDZhNWUwMmVhOGQwYmZjMzFkOGRiNDk4NThk
ZGIuLjkzZDQwYTI5NWU2ODM0ZDU1MzU5MTk3YTU1ODk0NzQ5Yzk2NWIxMDQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9T
b3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTEyMDQs
NiArMTIwNCw3IEBACiAJCTQ0QTIwREI5MEY4NDE2NkMwMEIzRTFGRSAvKiBXZWJDb3JlVVJMUmVz
cG9uc2VJT1MuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDQ0QTIwREI4MEY4NDE2NkMwMEIzRTFGRSAvKiBXZWJDb3JlVVJMUmVzcG9uc2VJT1MuaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk0NEEyOEFBQzEy
REZCOEFDMDBBRTkyM0IgLyogTWF0aE1MRWxlbWVudEZhY3RvcnkuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ0QTI4QUFCMTJERkI4QUMwMEFFOTIzQiAv
KiBNYXRoTUxFbGVtZW50RmFjdG9yeS5oICovOyB9OwogCQk0NEEyOEFBRjEyREZCOEJGMDBBRTky
M0IgLyogTWF0aE1MTmFtZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDQ0QTI4QUFFMTJERkI4QkYwMEFFOTIzQiAvKiBNYXRoTUxOYW1lcy5oICovOyB9
OworCQk0NEM2RDhFOTI1MjIwODdGMDBEMzkzNzAgLyogRm9jdXNPcHRpb25zLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0NEM2RDhFMDI1MjIwODc2MDBE
MzkzNzAgLyogRm9jdXNPcHRpb25zLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKIAkJNDRDOTkxODYwRjNEMUVCRTAwNTg2NjcwIC8qIFNjcm9sbGJhclRo
ZW1lSU9TLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0
NEM5OTE4NTBGM0QxRUJFMDA1ODY2NzAgLyogU2Nyb2xsYmFyVGhlbWVJT1MuaCAqLzsgfTsKIAkJ
NDRDOTkxOUYwRjNEMjEwRTAwNTg2NjcwIC8qIFRoZW1lSU9TLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0NEM5OTE5RDBGM0QyMTBFMDA1ODY2NzAgLyog
VGhlbWVJT1MuaCAqLzsgfTsKIAkJNDREQUI1QjIxNUE2MjM1ODAwOTdDMUU0IC8qIEV4dGVuc2lv
bnNHTE9wZW5HTENvbW1vbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNDREQUI1QjAxNUE2MjM1ODAwOTdDMUU0IC8qIEV4dGVuc2lvbnNHTE9wZW5HTENv
bW1vbi5oICovOyB9OwpAQCAtNzg5NSw5ICs3ODk2LDEzIEBACiAJCTQ0OTZFMzlDMTM5ODEzNkMw
MDNFRTMyQSAvKiBKU1NWR0FuaW1hdGVNb3Rpb25FbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEpTU1ZHQW5pbWF0ZU1vdGlvbkVsZW1lbnQuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJNDQ5NkUzOUYxMzk4MTNBNTAwM0VFMzJBIC8qIEpTU1ZHTVBhdGhF
bGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTU1ZHTVBhdGhFbGVt
ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQ0OTZFM0ExMTM5ODEzQ0IwMDNF
RTMyQSAvKiBKU1NWR01QYXRoRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBKU1NWR01QYXRoRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTQ0QTBFQUFDMjUyMjBFOTIwMDQ5RTcxNiAvKiBKU0ZvY3VzT3B0aW9ucy5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBKU0ZvY3VzT3B0aW9ucy5oOyBwYXRoID0gRGVy
aXZlZFNvdXJjZXMvV2ViQ29yZS9KU0ZvY3VzT3B0aW9ucy5oOyBzb3VyY2VUcmVlID0gQlVJTFRf
UFJPRFVDVFNfRElSOyB9OworCQk0NEEwRUFBRTI1MjIwRTkyMDA0OUU3MTYgLyogSlNGb2N1c09w
dGlvbnMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gSlNGb2N1c09w
dGlvbnMuY3BwOyBwYXRoID0gRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0ZvY3VzT3B0aW9ucy5j
cHA7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CiAJCTQ0QTIwREI4MEY4NDE2
NkMwMEIzRTFGRSAvKiBXZWJDb3JlVVJMUmVzcG9uc2VJT1MuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gV2ViQ29yZVVSTFJlc3BvbnNlSU9TLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTQ0QTI4QUFCMTJERkI4QUMwMEFFOTIzQiAvKiBNYXRoTUxFbGVtZW50RmFj
dG9yeS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBNYXRoTUxFbGVtZW50RmFj
dG9yeS5oOyBwYXRoID0gRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9NYXRoTUxFbGVtZW50RmFjdG9y
eS5oOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OwogCQk0NEEyOEFBRTEyREZC
OEJGMDBBRTkyM0IgLyogTWF0aE1MTmFtZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBu
YW1lID0gTWF0aE1MTmFtZXMuaDsgcGF0aCA9IERlcml2ZWRTb3VyY2VzL1dlYkNvcmUvTWF0aE1M
TmFtZXMuaDsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJNDRBMkIxMDAy
NTIyMDNBMTAwRDFDNzc0IC8qIEZvY3VzT3B0aW9ucy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gRm9jdXNPcHRpb25zLmlk
bDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDRDNkQ4RTAyNTIyMDg3NjAwRDM5Mzcw
IC8qIEZvY3VzT3B0aW9ucy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGb2N1c09wdGlvbnMuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDRDOTkxODEwRjNEMUUwRDAwNTg2NjcwIC8qIFNjcm9s
bGJhclRoZW1lSU9TLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0g
U2Nyb2xsYmFyVGhlbWVJT1MubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQ0Qzk5
MTg1MEYzRDFFQkUwMDU4NjY3MCAvKiBTY3JvbGxiYXJUaGVtZUlPUy5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBTY3JvbGxiYXJUaGVtZUlPUy5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQk0NEM5OTE5RDBGM0QyMTBFMDA1ODY2NzAgLyogVGhlbWVJT1MuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVGhlbWVJT1MuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKQEAgLTIxMTgwLDYgKzIxMTg1LDggQEAKIAkJCQkxNERDRjNCMTFCNkJFMjA4
MDA2MkQ0QzIgLyogSlNDb3VudFF1ZXVpbmdTdHJhdGVneS5oICovLAogCQkJCTk5MDhCMEZEMUJD
QUQwN0QwMEVEMEY2NiAvKiBKU0RPTUJpbmRpbmdJbnRlcm5hbHNCdWlsdGlucy5jcHAgKi8sCiAJ
CQkJOUIwM0Q4MDYxQkIzMTEwRDAwQjc2NERBIC8qIEpTRE9NQmluZGluZ0ludGVybmFsc0J1aWx0
aW5zLmggKi8sCisJCQkJNDRBMEVBQUUyNTIyMEU5MjAwNDlFNzE2IC8qIEpTRm9jdXNPcHRpb25z
LmNwcCAqLywKKwkJCQk0NEEwRUFBQzI1MjIwRTkyMDA0OUU3MTYgLyogSlNGb2N1c09wdGlvbnMu
aCAqLywKIAkJCQlDMjgwODMzRDFDNkRDMjJDMDAxNDUxQjYgLyogSlNGb250RmFjZS5jcHAgKi8s
CiAJCQkJQzI4MDgzM0UxQzZEQzIyQzAwMTQ1MUI2IC8qIEpTRm9udEZhY2UuaCAqLywKIAkJCQkx
QzI0RUVBNjFDNzJBN0I0MDA4MEY4RkMgLyogSlNGb250RmFjZVNldC5jcHAgKi8sCkBAIC0yOTQz
Nyw2ICsyOTQ0NCw4IEBACiAJCQkJQjZEOUQyMzQxNEVBQkQyNjAwOTBENzVFIC8qIEZvY3VzRXZl
bnQuY3BwICovLAogCQkJCUI2RDlEMjMzMTRFQUJEMjYwMDkwRDc1RSAvKiBGb2N1c0V2ZW50Lmgg
Ki8sCiAJCQkJQjZEOUQyNzIxNEVBQkYwMzAwOTBENzVFIC8qIEZvY3VzRXZlbnQuaWRsICovLAor
CQkJCTQ0QzZEOEUwMjUyMjA4NzYwMEQzOTM3MCAvKiBGb2N1c09wdGlvbnMuaCAqLywKKwkJCQk0
NEEyQjEwMDI1MjIwM0ExMDBEMUM3NzQgLyogRm9jdXNPcHRpb25zLmlkbCAqLywKIAkJCQlBODUz
MTIzQzExRDA0NzFCMDBENEQwNzcgLyogRnJhZ21lbnRTY3JpcHRpbmdQZXJtaXNzaW9uLmggKi8s
CiAJCQkJQ0Q5MkY1MTcyMjYxMDM4MjAwRjg3QkIzIC8qIEZ1bGxzY3JlZW5NYW5hZ2VyLmNwcCAq
LywKIAkJCQlDRDkyRjUxNjIyNjEwMzgyMDBGODdCQjMgLyogRnVsbHNjcmVlbk1hbmFnZXIuaCAq
LywKQEAgLTMxMzg0LDYgKzMxMzkzLDcgQEAKIAkJCQkxNDk5M0JFNjBCMkYyQjFDMDA1MDQ5N0Yg
LyogRm9jdXNDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQkwNjIyODc4NDBCNERCMzIy
MDAwQzM0REYgLyogRm9jdXNEaXJlY3Rpb24uaCBpbiBIZWFkZXJzICovLAogCQkJCUI2RDlEMjM1
MTRFQUJEMjYwMDkwRDc1RSAvKiBGb2N1c0V2ZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk0NEM2
RDhFOTI1MjIwODdGMDBEMzkzNzAgLyogRm9jdXNPcHRpb25zLmggaW4gSGVhZGVycyAqLywKIAkJ
CQlCMkMzREE2NTBEMDA2Q0Q2MDBFRjZGMjYgLyogRm9udC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
MUFDMkQ4OUQxQjFFMjkxRjAwRDUyRTg3IC8qIEZvbnRBbnRpYWxpYXNpbmdTdGF0ZVNhdmVyLmgg
aW4gSGVhZGVycyAqLywKIAkJCQlGNEU1N0VEQzIxM0YzRjVGMDA0RUE5OEUgLyogRm9udEF0dHJp
YnV0ZUNoYW5nZXMuaCBpbiBIZWFkZXJzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
ZG9tL0VsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuY3BwCmluZGV4IDI3
NWI1ZDc1ODk3YTRhYTRjMTEyMDhiNzAwMmM5MDU1ZmI3NWJjNDcuLmM5NmRiM2EwMTU1OTlmNTI3
YzJmZjhkZDEzNjhkYzRlMWMwNzJkOWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9F
bGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5jcHAKQEAgLTMwMDUs
NyArMzAwNSwxMiBAQCBzdGF0aWMgUmVmUHRyPEVsZW1lbnQ+IGZpbmRGaXJzdFByb2dyYW1hdGlj
YWxseUZvY3VzYWJsZUVsZW1lbnRJbkNvbXBvc2VkVHJlZShFbAogICAgIHJldHVybiBudWxscHRy
OwogfQogCi12b2lkIEVsZW1lbnQ6OmZvY3VzKGJvb2wgcmVzdG9yZVByZXZpb3VzU2VsZWN0aW9u
LCBGb2N1c0RpcmVjdGlvbiBkaXJlY3Rpb24pCit2b2lkIEVsZW1lbnQ6OmZvY3VzKGNvbnN0IEZv
Y3VzT3B0aW9ucyYgb3B0aW9ucykKK3sKKyAgICBmb2N1cyh0cnVlLCBGb2N1c0RpcmVjdGlvbk5v
bmUsIG9wdGlvbnMucHJldmVudFNjcm9sbCk7Cit9CisKK3ZvaWQgRWxlbWVudDo6Zm9jdXMoYm9v
bCByZXN0b3JlUHJldmlvdXNTZWxlY3Rpb24sIEZvY3VzRGlyZWN0aW9uIGRpcmVjdGlvbiwgYm9v
bCBwcmV2ZW50U2Nyb2xsKQogewogICAgIGlmICghaXNDb25uZWN0ZWQoKSkKICAgICAgICAgcmV0
dXJuOwpAQCAtMzA1Myw3ICszMDU4LDggQEAgdm9pZCBFbGVtZW50Ojpmb2N1cyhib29sIHJlc3Rv
cmVQcmV2aW91c1NlbGVjdGlvbiwgRm9jdXNEaXJlY3Rpb24gZGlyZWN0aW9uKQogICAgICAgICAg
ICAgcmV0dXJuOwogICAgIH0KIAotICAgIG5ld1RhcmdldC0+cmV2ZWFsRm9jdXNlZEVsZW1lbnQo
cmVzdG9yZVByZXZpb3VzU2VsZWN0aW9uID8gU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlOjpSZXN0
b3JlIDogU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlOjpTZXREZWZhdWx0KTsKKyAgICBpZiAoIXBy
ZXZlbnRTY3JvbGwpCisgICAgICAgIG5ld1RhcmdldC0+cmV2ZWFsRm9jdXNlZEVsZW1lbnQocmVz
dG9yZVByZXZpb3VzU2VsZWN0aW9uID8gU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlOjpSZXN0b3Jl
IDogU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlOjpTZXREZWZhdWx0KTsKIH0KIAogdm9pZCBFbGVt
ZW50OjpyZXZlYWxGb2N1c2VkRWxlbWVudChTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGUgc2VsZWN0
aW9uTW9kZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmggYi9Tb3Vy
Y2UvV2ViQ29yZS9kb20vRWxlbWVudC5oCmluZGV4IDYxMWUxMTA4ZDFjZWUwZjYzMWE3Nzg3MzQ2
YWU5NWFiMjA4NGI2MTMuLjE5MTc3ZGUzNzgyMTA5N2VlZDkwYTFmNThiYjExOGE1NTg2ZTQxY2Qg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmgKKysrIGIvU291cmNlL1dl
YkNvcmUvZG9tL0VsZW1lbnQuaApAQCAtMjcsNiArMjcsNyBAQAogI2luY2x1ZGUgIkFYVGV4dFN0
YXRlQ2hhbmdlSW50ZW50LmgiCiAjaW5jbHVkZSAiRG9jdW1lbnQuaCIKICNpbmNsdWRlICJFbGVt
ZW50RGF0YS5oIgorI2luY2x1ZGUgIkZvY3VzT3B0aW9ucy5oIgogI2luY2x1ZGUgIkhUTUxOYW1l
cy5oIgogI2luY2x1ZGUgIlNjcm9sbFR5cGVzLmgiCiAjaW5jbHVkZSAiU2hhZG93Um9vdE1vZGUu
aCIKQEAgLTQwMCw3ICs0MDEsOCBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCBTdHJpbmcgdGFyZ2V0
KCkgY29uc3QgeyByZXR1cm4gU3RyaW5nKCk7IH0KIAogICAgIHN0YXRpYyBBWFRleHRTdGF0ZUNo
YW5nZUludGVudCBkZWZhdWx0Rm9jdXNUZXh0U3RhdGVDaGFuZ2VJbnRlbnQoKSB7IHJldHVybiBB
WFRleHRTdGF0ZUNoYW5nZUludGVudChBWFRleHRTdGF0ZUNoYW5nZVR5cGVTZWxlY3Rpb25Nb3Zl
LCBBWFRleHRTZWxlY3Rpb24geyBBWFRleHRTZWxlY3Rpb25EaXJlY3Rpb25EaXNjb250aWd1b3Vz
LCBBWFRleHRTZWxlY3Rpb25HcmFudWxhcml0eVVua25vd24sIHRydWUgfSk7IH0KLSAgICB2aXJ0
dWFsIHZvaWQgZm9jdXMoYm9vbCByZXN0b3JlUHJldmlvdXNTZWxlY3Rpb24gPSB0cnVlLCBGb2N1
c0RpcmVjdGlvbiA9IEZvY3VzRGlyZWN0aW9uTm9uZSk7CisgICAgdm9pZCBmb2N1cyhjb25zdCBG
b2N1c09wdGlvbnMmKTsKKyAgICB2aXJ0dWFsIHZvaWQgZm9jdXMoYm9vbCByZXN0b3JlUHJldmlv
dXNTZWxlY3Rpb24gPSB0cnVlLCBGb2N1c0RpcmVjdGlvbiA9IEZvY3VzRGlyZWN0aW9uTm9uZSwg
Ym9vbCBwcmV2ZW50U2Nyb2xsID0gZmFsc2UpOwogICAgIHZvaWQgcmV2ZWFsRm9jdXNlZEVsZW1l
bnQoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlKTsKICAgICB2aXJ0dWFsIFJlZlB0cjxFbGVtZW50
PiBmb2N1c0FwcGVhcmFuY2VVcGRhdGVUYXJnZXQoKTsKICAgICB2aXJ0dWFsIHZvaWQgdXBkYXRl
Rm9jdXNBcHBlYXJhbmNlKFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZSwgU2VsZWN0aW9uUmV2ZWFs
TW9kZSA9IFNlbGVjdGlvblJldmVhbE1vZGU6OlJldmVhbCk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9kb20vRm9jdXNPcHRpb25zLmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vRm9jdXNPcHRp
b25zLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uNGZlMDg3MzhkY2FmOWEyNjhjZDcxZjk5OGM4M2U3N2IxZjUyZjdi
MgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Gb2N1c09wdGlvbnMuaApA
QCAtMCwwICsxLDM0IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIwIElnYWxpYSBTLkwuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFy
ZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGlu
IGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJ
RUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1Q
TElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJU
SUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQ
TEUgSU5DLiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJ
QUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVO
VCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IK
KyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgor
ICovCisKKyNwcmFnbWEgb25jZQorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK3N0cnVjdCBGb2N1
c09wdGlvbnMgeworICAgIGJvb2wgcHJldmVudFNjcm9sbCB7IGZhbHNlIH07Cit9OworCit9IC8v
IG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRm9jdXNP
cHRpb25zLmlkbCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Gb2N1c09wdGlvbnMuaWRsCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjE3MzkwMjM5NzQ4NDNlZWYwNjQyZTA1N2Q2M2QwYzJiODE3OGJlMGMKLS0tIC9kZXYvbnVs
bAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRm9jdXNPcHRpb25zLmlkbApAQCAtMCwwICsxLDI4
IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIwIElnYWxpYSBTLkwuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAx
LiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAq
ICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBM
RSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgor
ICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7
IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVP
UlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKK2RpY3Rp
b25hcnkgRm9jdXNPcHRpb25zIHsKKyAgIGJvb2xlYW4gcHJldmVudFNjcm9sbCA9IGZhbHNlOwor
fTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExhYmVsRWxlbWVudC5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMYWJlbEVsZW1lbnQuY3BwCmluZGV4IDM3ZjljYTU2
ZTgwZDczMjQxMDNiMWExMjZmYzIyYzY2NWEwOGFkM2MuLjk3YzYzODJlM2Q2ODBiMDM5MGI4NTU3
Y2VlMmIxMTg0MGYwNjYwZDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExh
YmVsRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGFiZWxFbGVtZW50
LmNwcApAQCAtMTcyLDE0ICsxNzIsMTQgQEAgYm9vbCBIVE1MTGFiZWxFbGVtZW50Ojp3aWxsUmVz
cG9uZFRvTW91c2VDbGlja0V2ZW50cygpCiAgICAgcmV0dXJuIChlbGVtZW50ICYmIGVsZW1lbnQt
PndpbGxSZXNwb25kVG9Nb3VzZUNsaWNrRXZlbnRzKCkpIHx8IEhUTUxFbGVtZW50Ojp3aWxsUmVz
cG9uZFRvTW91c2VDbGlja0V2ZW50cygpOwogfQogCi12b2lkIEhUTUxMYWJlbEVsZW1lbnQ6OmZv
Y3VzKGJvb2wgcmVzdG9yZVByZXZpb3VzU2VsZWN0aW9uLCBGb2N1c0RpcmVjdGlvbiBkaXJlY3Rp
b24pCit2b2lkIEhUTUxMYWJlbEVsZW1lbnQ6OmZvY3VzKGJvb2wgcmVzdG9yZVByZXZpb3VzU2Vs
ZWN0aW9uLCBGb2N1c0RpcmVjdGlvbiBkaXJlY3Rpb24sIGJvb2wgcHJldmVudFNjcm9sbCkKIHsK
ICAgICBSZWY8SFRNTExhYmVsRWxlbWVudD4gcHJvdGVjdGVkVGhpcygqdGhpcyk7CiAgICAgaWYg
KGRvY3VtZW50KCkuaGF2ZVN0eWxlc2hlZXRzTG9hZGVkKCkpIHsKICAgICAgICAgZG9jdW1lbnQo
KS51cGRhdGVMYXlvdXQoKTsKICAgICAgICAgaWYgKGlzRm9jdXNhYmxlKCkpIHsKICAgICAgICAg
ICAgIC8vIFRoZSB2YWx1ZSBvZiByZXN0b3JlUHJldmlvdXNTZWxlY3Rpb24gaXMgbm90IHVzZWQg
Zm9yIGxhYmVsIGVsZW1lbnRzIGFzIGl0IGRvZXNuJ3Qgb3ZlcnJpZGUgdXBkYXRlRm9jdXNBcHBl
YXJhbmNlLgotICAgICAgICAgICAgRWxlbWVudDo6Zm9jdXMocmVzdG9yZVByZXZpb3VzU2VsZWN0
aW9uLCBkaXJlY3Rpb24pOworICAgICAgICAgICAgRWxlbWVudDo6Zm9jdXMocmVzdG9yZVByZXZp
b3VzU2VsZWN0aW9uLCBkaXJlY3Rpb24sIHByZXZlbnRTY3JvbGwpOwogICAgICAgICAgICAgcmV0
dXJuOwogICAgICAgICB9CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9I
VE1MTGFiZWxFbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMYWJlbEVsZW1lbnQu
aAppbmRleCA0NjYwZjA2Nzc3MzUxY2U2ZGM4OTVjODFiYjA3MjQ3YzljNDMyMGVlLi5lNGQ1MzA5
ZWZkNmQzNWM3NWFhZWZkMDVhNzFlNWViYTQ2MDQ3ZjgyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0hUTUxMYWJlbEVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxMYWJlbEVsZW1lbnQuaApAQCAtNTEsNyArNTEsNyBAQCBwcml2YXRlOgogICAgIC8vIE92ZXJy
aWRkZW4gdG8gZWl0aGVyIGNsaWNrKCkgb3IgZm9jdXMoKSB0aGUgY29ycmVzcG9uZGluZyBjb250
cm9sLgogICAgIHZvaWQgZGVmYXVsdEV2ZW50SGFuZGxlcihFdmVudCYpIGZpbmFsOwogCi0gICAg
dm9pZCBmb2N1cyhib29sIHJlc3RvcmVQcmV2aW91c1NlbGVjdGlvbiwgRm9jdXNEaXJlY3Rpb24p
IGZpbmFsOworICAgIHZvaWQgZm9jdXMoYm9vbCByZXN0b3JlUHJldmlvdXNTZWxlY3Rpb24sIEZv
Y3VzRGlyZWN0aW9uLCBib29sIHByZXZlbnRTY3JvbGwpIGZpbmFsOwogCiAgICAgYm9vbCBpc0lu
dGVyYWN0aXZlQ29udGVudCgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIHRydWU7IH0KIH07CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMZWdlbmRFbGVtZW50LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvSFRNTExlZ2VuZEVsZW1lbnQuY3BwCmluZGV4IGExZTU3Y2ZlNGQwYjFm
MjA4MDA3MWY0NzJkNDQ5ZjZiNjA4YTIyNzYuLmUwMWMxZWQyMDlhN2JiNjU4YTY4YzhkYWRjM2M2
YmRiMmQxMTkzZWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExlZ2VuZEVs
ZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExlZ2VuZEVsZW1lbnQuY3Bw
CkBAIC01NywxMiArNTcsMTIgQEAgUmVmUHRyPEhUTUxGb3JtQ29udHJvbEVsZW1lbnQ+IEhUTUxM
ZWdlbmRFbGVtZW50Ojphc3NvY2lhdGVkQ29udHJvbCgpCiAgICAgcmV0dXJuIGRlc2NlbmRhbnRz
T2ZUeXBlPEhUTUxGb3JtQ29udHJvbEVsZW1lbnQ+KCplbmNsb3NpbmdGaWVsZHNldCkuZmlyc3Qo
KTsKIH0KIAotdm9pZCBIVE1MTGVnZW5kRWxlbWVudDo6Zm9jdXMoYm9vbCByZXN0b3JlUHJldmlv
dXNTZWxlY3Rpb24sIEZvY3VzRGlyZWN0aW9uIGRpcmVjdGlvbikKK3ZvaWQgSFRNTExlZ2VuZEVs
ZW1lbnQ6OmZvY3VzKGJvb2wgcmVzdG9yZVByZXZpb3VzU2VsZWN0aW9uLCBGb2N1c0RpcmVjdGlv
biBkaXJlY3Rpb24sIGJvb2wgcHJldmVudFNjcm9sbCkKIHsKICAgICBpZiAoZG9jdW1lbnQoKS5o
YXZlU3R5bGVzaGVldHNMb2FkZWQoKSkgewogICAgICAgICBkb2N1bWVudCgpLnVwZGF0ZUxheW91
dElnbm9yZVBlbmRpbmdTdHlsZXNoZWV0cygpOwogICAgICAgICBpZiAoaXNGb2N1c2FibGUoKSkg
ewotICAgICAgICAgICAgRWxlbWVudDo6Zm9jdXMocmVzdG9yZVByZXZpb3VzU2VsZWN0aW9uLCBk
aXJlY3Rpb24pOworICAgICAgICAgICAgRWxlbWVudDo6Zm9jdXMocmVzdG9yZVByZXZpb3VzU2Vs
ZWN0aW9uLCBkaXJlY3Rpb24sIHByZXZlbnRTY3JvbGwpOwogICAgICAgICAgICAgcmV0dXJuOwog
ICAgICAgICB9CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGVn
ZW5kRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGVnZW5kRWxlbWVudC5oCmlu
ZGV4IDJkZjYyMjk3MWYxMzc5MjJkYzM4Yzg4NTQ5MmQyZjM4NTQ2ZjJhMWEuLmU1MjRkOGY0NjI3
ZjY5NDE0ZDU2OThiODY1YWM0N2ExODY0OWVkYTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTExlZ2VuZEVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxM
ZWdlbmRFbGVtZW50LmgKQEAgLTQzLDcgKzQzLDcgQEAgcHJpdmF0ZToKICAgICBSZWZQdHI8SFRN
TEZvcm1Db250cm9sRWxlbWVudD4gYXNzb2NpYXRlZENvbnRyb2woKTsKIAogICAgIGJvb2wgYWNj
ZXNzS2V5QWN0aW9uKGJvb2wgc2VuZE1vdXNlRXZlbnRzKSBmaW5hbDsKLSAgICB2b2lkIGZvY3Vz
KGJvb2wgcmVzdG9yZVByZXZpb3VzU2VsZWN0aW9uLCBGb2N1c0RpcmVjdGlvbikgZmluYWw7Cisg
ICAgdm9pZCBmb2N1cyhib29sIHJlc3RvcmVQcmV2aW91c1NlbGVjdGlvbiwgRm9jdXNEaXJlY3Rp
b24sIGJvb2wgcHJldmVudFNjcm9sbCkgZmluYWw7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJD
b3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPckZvcmVpZ25FbGVtZW50
LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE9yRm9yZWlnbkVsZW1lbnQuaWRsCmluZGV4
IGYzYjEzMzJlYmFmN2E4YzM5ZmIyNTRiYjVjOGMwMzZlNDNlMmUxODQuLmI0YTdkMTNhNzYwMWI3
M2ZmZjdkZjdmZDgyMzVlY2RjN2U1Y2EyYzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTE9yRm9yZWlnbkVsZW1lbnQuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRN
TE9yRm9yZWlnbkVsZW1lbnQuaWRsCkBAIC0zNCw3ICszNCw3IEBAIGludGVyZmFjZSBtaXhpbiBI
VE1MT3JGb3JlaWduRWxlbWVudCB7CiAgICAgLy8gRklYTUU6IEltcGxlbWVudCAnYXV0b2ZvY3Vz
Jy4KICAgICAvLyBbQ0VSZWFjdGlvbnNdIGF0dHJpYnV0ZSBib29sZWFuIGF1dG9mb2N1czsKICAg
ICBbQ0VSZWFjdGlvbnMsIEltcGxlbWVudGVkQXM9dGFiSW5kZXhGb3JCaW5kaW5nc10gYXR0cmli
dXRlIGxvbmcgdGFiSW5kZXg7Ci0gICAgLy8gRklNWEU6IGZvY3VzKCkgaXMgc3BlY2lmaWVkIHRv
IHRha2UgYW4gb3B0aW9uYWwgRm9jdXNPcHRpb25zLiBJbXBsZW1lbnQgdGhhdC4KLSAgICB1bmRl
ZmluZWQgZm9jdXMoKTsKKyAgICB1bmRlZmluZWQgZm9jdXMob3B0aW9uYWwgRm9jdXNPcHRpb25z
IG9wdGlvbnMpOwogICAgIHVuZGVmaW5lZCBibHVyKCk7CiB9OworCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L0NoYW5nZUxvZwppbmRleCA3YTQ1ZDBkYTFmNTc2MmYzYTgwNjg4MTQ2Nzk2OWFkYzNjMTg2MDM1
Li40N2RiMzNkYjNkMzNlY2NhZWI2NWRlNjBhZmRkOWQ2NGExYzY3ZTg1IDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMiBAQAorMjAyMC0wOS0yOSAgUm9iIEJ1aXMg
IDxyYnVpc0BpZ2FsaWEuY29tPgorCisgICAgICAgIEVuYWJsZSBhYmlsaXR5IHRvIHByZXZlbnQg
c2Nyb2xsaW5nIGluIEVsZW1lbnQuZm9jdXMoKQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc4NTgzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9pbnRlcmFjdGlv
bi9mb2N1cy9wcm9jZXNzaW5nLW1vZGVsL3ByZXZlbnRTY3JvbGwtdGV4dGFyZWEtZXhwZWN0ZWQu
dHh0OgorCiAyMDIwLTA5LTI3ICBSb2IgQnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CiAKICAgICAg
ICAgUmVzeW5jIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy90aGUtaWZyYW1lLWVs
ZW1lbnQgZnJvbSB1cHN0cmVhbQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2ludGVyYWN0aW9uL2ZvY3VzL3Byb2Nlc3NpbmctbW9k
ZWwvcHJldmVudFNjcm9sbC10ZXh0YXJlYS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvaW50ZXJhY3Rpb24vZm9jdXMvcHJvY2Vz
c2luZy1tb2RlbC9wcmV2ZW50U2Nyb2xsLXRleHRhcmVhLWV4cGVjdGVkLnR4dAppbmRleCAwOGFh
ZmIzMTYzNjA4NDkwODc5ODBlMDA1MDQyZDdjODVhZGE4NjViLi5jNzM0YTY5ZGU5YTVjZmY1YWQ1
NWVlZjljZGQxZDZkMmVlY2U2ZDNhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvaW50ZXJhY3Rpb24vZm9jdXMvcHJvY2Vzc2luZy1t
b2RlbC9wcmV2ZW50U2Nyb2xsLXRleHRhcmVhLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvaW50ZXJhY3Rpb24vZm9jdXMv
cHJvY2Vzc2luZy1tb2RlbC9wcmV2ZW50U2Nyb2xsLXRleHRhcmVhLWV4cGVjdGVkLnR4dApAQCAt
MSw0ICsxLDQgQEAKIAogCi1GQUlMIHByZXZlbnRTY3JvbGw6IHRydWUgb24gYSB0ZXh0YXJlYSBl
bGVtZW50IGFzc2VydF9lcXVhbHM6IFRFWFRBUkVBOiBTaG91bGQgbm90IGhhdmUgc2Nyb2xsZWQg
YWZ0ZXIgYSBjb3VwbGUgZXZlbnQgbG9vcCB0aWNrcyBleHBlY3RlZCAwIGJ1dCBnb3QgOTIwCitQ
QVNTIHByZXZlbnRTY3JvbGw6IHRydWUgb24gYSB0ZXh0YXJlYSBlbGVtZW50CiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>409979</attachid>
            <date>2020-09-29 03:28:09 -0700</date>
            <delta_ts>2020-09-30 04:04:25 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-178583-20200929112807.patch</filename>
            <type>text/plain</type>
            <size>24426</size>
            <attacher name="Rob Buis">rbuis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY3NjkyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTZhYTU0YTU1YTM5ZDgy
MzEzNjM4YmE1MDk1NzNhMTQ4OGQzOWZkNS4uNTkwYjlkZDVhMWM2ZWFhZTJhZDU3NWI4ZjY1NGQ2
NGE4MTA4NTNiNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDIwLTA5LTI5ICBSb2Ig
QnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgRW5hYmxlIGFiaWxpdHkgdG8gcHJl
dmVudCBzY3JvbGxpbmcgaW4gRWxlbWVudC5mb2N1cygpCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzg1ODMKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBXSVAuCisKKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4
dDoKKyAgICAgICAgKiBEZXJpdmVkU291cmNlcy1pbnB1dC54Y2ZpbGVsaXN0OgorICAgICAgICAq
IERlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0OgorICAgICAgICAqIERlcml2ZWRTb3Vy
Y2VzLm1ha2U6CisgICAgICAgICogSGVhZGVycy5jbWFrZToKKyAgICAgICAgKiBTb3VyY2VzLnR4
dDoKKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAg
ICogZG9tL0VsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RWxlbWVudDo6Zm9jdXMpOgor
ICAgICAgICAqIGRvbS9FbGVtZW50Lmg6CisgICAgICAgICogZG9tL0ZvY3VzT3B0aW9ucy5oOiBD
b3BpZWQgZnJvbSBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPckZvcmVpZ25FbGVtZW50LmlkbC4K
KyAgICAgICAgKiBkb20vRm9jdXNPcHRpb25zLmlkbDogQ29waWVkIGZyb20gU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MT3JGb3JlaWduRWxlbWVudC5pZGwuCisgICAgICAgICogaHRtbC9IVE1MTGFi
ZWxFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxMYWJlbEVsZW1lbnQ6OmZvY3Vz
KToKKyAgICAgICAgKiBodG1sL0hUTUxMYWJlbEVsZW1lbnQuaDoKKyAgICAgICAgKiBodG1sL0hU
TUxMZWdlbmRFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxMZWdlbmRFbGVtZW50
Ojpmb2N1cyk6CisgICAgICAgICogaHRtbC9IVE1MTGVnZW5kRWxlbWVudC5oOgorICAgICAgICAq
IGh0bWwvSFRNTE9yRm9yZWlnbkVsZW1lbnQuaWRsOgorCiAyMDIwLTA5LTI0ICBTaW1vbiBGcmFz
ZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgogCiAgICAgICAgIFdlYktpdExlZ2FjeSBzaG91
bGQgY2FsbCBQYWdlOjpmaW5hbGl6ZVJlbmRlcmluZ1VwZGF0ZSgpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dCBiL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0
CmluZGV4IDJjZWYwYzdkYjVlZGZkYmNiMjZkZDk4NDM5MGEwNTlmNGIzOWZhNjcuLmJjYWZjN2Fh
YmIyNWM2Mzc1OTNiYmNjMDVlMGQwNTk1OTI3MmYzYjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL0NNYWtlTGlzdHMudHh0CisrKyBiL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CkBA
IC04MDEsNiArODAxLDcgQEAgc2V0KFdlYkNvcmVfTk9OX1NWR19JRExfRklMRVMKICAgICBkb20v
RXZlbnRNb2RpZmllckluaXQuaWRsCiAgICAgZG9tL0V2ZW50VGFyZ2V0LmlkbAogICAgIGRvbS9G
b2N1c0V2ZW50LmlkbAorICAgIGRvbS9Gb2N1c09wdGlvbnMuaWRsCiAgICAgZG9tL0dsb2JhbEV2
ZW50SGFuZGxlcnMrUG9pbnRlckV2ZW50cy5pZGwKICAgICBkb20vR2xvYmFsRXZlbnRIYW5kbGVy
cy5pZGwKICAgICBkb20vSGFzaENoYW5nZUV2ZW50LmlkbApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvRGVyaXZlZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdCBiL1NvdXJjZS9XZWJDb3JlL0Rl
cml2ZWRTb3VyY2VzLWlucHV0LnhjZmlsZWxpc3QKaW5kZXggMTgxZWEwZmI4YjUwYjA2MjNiZWZl
NjIzZGYxMjY0N2RhOGI0ZDJmNy4uYjhkNDgwNGVlY2I0OWUyMGY0NzY5OTg4NGYyZDE2OTIzM2E3
NjgwNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtaW5wdXQueGNm
aWxlbGlzdAorKysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1pbnB1dC54Y2ZpbGVs
aXN0CkBAIC03MjAsNiArNzIwLDcgQEAgJChQUk9KRUNUX0RJUikvZG9tL0V2ZW50TmFtZXMuaW4K
ICQoUFJPSkVDVF9ESVIpL2RvbS9FdmVudFRhcmdldC5pZGwKICQoUFJPSkVDVF9ESVIpL2RvbS9F
dmVudFRhcmdldEZhY3RvcnkuaW4KICQoUFJPSkVDVF9ESVIpL2RvbS9Gb2N1c0V2ZW50LmlkbAor
JChQUk9KRUNUX0RJUikvZG9tL0ZvY3VzT3B0aW9ucy5pZGwKICQoUFJPSkVDVF9ESVIpL2RvbS9H
bG9iYWxFdmVudEhhbmRsZXJzK1BvaW50ZXJFdmVudHMuaWRsCiAkKFBST0pFQ1RfRElSKS9kb20v
R2xvYmFsRXZlbnRIYW5kbGVycy5pZGwKICQoUFJPSkVDVF9ESVIpL2RvbS9IYXNoQ2hhbmdlRXZl
bnQuaWRsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1vdXRwdXQu
eGNmaWxlbGlzdCBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVs
aXN0CmluZGV4IDczNzMzZTY2NDg0ZDBmNmU0YjM4YTFlZjc3ZDMxYTI1ZDU3ZDVmZDYuLjU4Y2Zm
ZDBhZGZiYzYzYzVhNTZkY2E0ZjE1ZDZiZDgxY2M3YjBhMjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0CisrKyBiL1NvdXJjZS9XZWJD
b3JlL0Rlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0CkBAIC03NjIsNiArNzYyLDggQEAg
JChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNGaWxsTW9kZS5j
cHAKICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTRmlsbE1v
ZGUuaAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNGb2N1
c0V2ZW50LmNwcAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUv
SlNGb2N1c0V2ZW50LmgKKyQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJD
b3JlL0pTRm9jdXNPcHRpb25zLmNwcAorJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3Vy
Y2VzL1dlYkNvcmUvSlNGb2N1c09wdGlvbnMuaAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2
ZWRTb3VyY2VzL1dlYkNvcmUvSlNGb250RmFjZS5jcHAKICQoQlVJTFRfUFJPRFVDVFNfRElSKS9E
ZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTRm9udEZhY2UuaAogJChCVUlMVF9QUk9EVUNUU19ESVIp
L0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNGb250RmFjZVNldC5jcHAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVk
U291cmNlcy5tYWtlCmluZGV4IGU2YmRmM2UyNWU5NjE0YTA4ZjBhMGRlN2M3MmI5NDg2NGQ2YTk5
ZmQuLmE0MWE0ZTNjYzc0ODk2ODY5NTVlODBmNTVjNTU1Y2E1N2NlZDRlZDUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKKysrIGIvU291cmNlL1dlYkNvcmUv
RGVyaXZlZFNvdXJjZXMubWFrZQpAQCAtNzUxLDYgKzc1MSw3IEBAIEpTX0JJTkRJTkdfSURMUyA9
IFwKICAgICAkKFdlYkNvcmUpL2RvbS9FdmVudE1vZGlmaWVySW5pdC5pZGwgXAogICAgICQoV2Vi
Q29yZSkvZG9tL0V2ZW50VGFyZ2V0LmlkbCBcCiAgICAgJChXZWJDb3JlKS9kb20vRm9jdXNFdmVu
dC5pZGwgXAorICAgICQoV2ViQ29yZSkvZG9tL0ZvY3VzT3B0aW9ucy5pZGwgXAogICAgICQoV2Vi
Q29yZSkvZG9tL0dsb2JhbEV2ZW50SGFuZGxlcnMuaWRsIFwKICAgICAkKFdlYkNvcmUpL2RvbS9H
bG9iYWxFdmVudEhhbmRsZXJzK1BvaW50ZXJFdmVudHMuaWRsIFwKICAgICAkKFdlYkNvcmUpL2Rv
bS9IYXNoQ2hhbmdlRXZlbnQuaWRsIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0hlYWRl
cnMuY21ha2UgYi9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlCmluZGV4IGVlOTg4ZjVjMzNi
NmU4ZDFkNTUyMzM3ZWZkZDg5NTNhOGY0MmNmMjIuLjI2MzI2ZjdhNGU0ZTliZDI5NjhhNTc4NDcy
ODI5MDVmNGFmZGYwODIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UK
KysrIGIvU291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZQpAQCAtNDMwLDYgKzQzMCw3IEBAIHNl
dChXZWJDb3JlX1BSSVZBVEVfRlJBTUVXT1JLX0hFQURFUlMKICAgICBkb20vRXhjZXB0aW9uQ29k
ZS5oCiAgICAgZG9tL0V4Y2VwdGlvbkRhdGEuaAogICAgIGRvbS9FeGNlcHRpb25Pci5oCisgICAg
ZG9tL0ZvY3VzT3B0aW9ucy5oCiAgICAgZG9tL0ZyYWdtZW50U2NyaXB0aW5nUGVybWlzc2lvbi5o
CiAgICAgZG9tL0Z1bGxzY3JlZW5NYW5hZ2VyLmgKICAgICBkb20vR0NSZWFjaGFibGVSZWYuaApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9T
b3VyY2VzLnR4dAppbmRleCBhNTcyY2U5NDIwZjQ0MGJhMzQ3MDdiZTVkNWNlNzFhZmM3OTRmMGQx
Li44ZDE3YTlmNDBmNTZlMWFmMzU5NzIxMTRhOTg0OTE2MTRmODZlZDVjIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4
dApAQCAtMjg5Niw2ICsyODk2LDcgQEAgSlNGaWxlU3lzdGVtRW50cnlDYWxsYmFjay5jcHAKIEpT
RmlsZVN5c3RlbUZpbGVFbnRyeS5jcHAKIEpTRmlsbE1vZGUuY3BwCiBKU0ZvY3VzRXZlbnQuY3Bw
CitKU0ZvY3VzT3B0aW9ucy5jcHAKIEpTRm9udEZhY2UuY3BwCiBKU0ZvbnRGYWNlU2V0LmNwcAog
SlNHUFVCaW5kR3JvdXBMYXlvdXRCaW5kaW5nLmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2Vi
Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDViOWJhOWNlOWQ5MDZhNWUwMmVh
OGQwYmZjMzFkOGRiNDk4NThkZGIuLjkzZDQwYTI5NWU2ODM0ZDU1MzU5MTk3YTU1ODk0NzQ5Yzk2
NWIxMDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0
LnBieHByb2oKQEAgLTEyMDQsNiArMTIwNCw3IEBACiAJCTQ0QTIwREI5MEY4NDE2NkMwMEIzRTFG
RSAvKiBXZWJDb3JlVVJMUmVzcG9uc2VJT1MuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDQ0QTIwREI4MEY4NDE2NkMwMEIzRTFGRSAvKiBXZWJDb3JlVVJM
UmVzcG9uc2VJT1MuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OwogCQk0NEEyOEFBQzEyREZCOEFDMDBBRTkyM0IgLyogTWF0aE1MRWxlbWVudEZhY3Rvcnku
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ0QTI4QUFC
MTJERkI4QUMwMEFFOTIzQiAvKiBNYXRoTUxFbGVtZW50RmFjdG9yeS5oICovOyB9OwogCQk0NEEy
OEFBRjEyREZCOEJGMDBBRTkyM0IgLyogTWF0aE1MTmFtZXMuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ0QTI4QUFFMTJERkI4QkYwMEFFOTIzQiAvKiBN
YXRoTUxOYW1lcy5oICovOyB9OworCQk0NEM2RDhFOTI1MjIwODdGMDBEMzkzNzAgLyogRm9jdXNP
cHRpb25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0
NEM2RDhFMDI1MjIwODc2MDBEMzkzNzAgLyogRm9jdXNPcHRpb25zLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJNDRDOTkxODYwRjNEMUVCRTAwNTg2
NjcwIC8qIFNjcm9sbGJhclRoZW1lSU9TLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA0NEM5OTE4NTBGM0QxRUJFMDA1ODY2NzAgLyogU2Nyb2xsYmFyVGhl
bWVJT1MuaCAqLzsgfTsKIAkJNDRDOTkxOUYwRjNEMjEwRTAwNTg2NjcwIC8qIFRoZW1lSU9TLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0NEM5OTE5RDBG
M0QyMTBFMDA1ODY2NzAgLyogVGhlbWVJT1MuaCAqLzsgfTsKIAkJNDREQUI1QjIxNUE2MjM1ODAw
OTdDMUU0IC8qIEV4dGVuc2lvbnNHTE9wZW5HTENvbW1vbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDREQUI1QjAxNUE2MjM1ODAwOTdDMUU0IC8qIEV4
dGVuc2lvbnNHTE9wZW5HTENvbW1vbi5oICovOyB9OwpAQCAtNzg5NSw5ICs3ODk2LDEzIEBACiAJ
CTQ0OTZFMzlDMTM5ODEzNkMwMDNFRTMyQSAvKiBKU1NWR0FuaW1hdGVNb3Rpb25FbGVtZW50Lmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTU1ZHQW5pbWF0ZU1vdGlvbkVsZW1l
bnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDQ5NkUzOUYxMzk4MTNBNTAwM0VF
MzJBIC8qIEpTU1ZHTVBhdGhFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEpTU1ZHTVBhdGhFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQ0
OTZFM0ExMTM5ODEzQ0IwMDNFRTMyQSAvKiBKU1NWR01QYXRoRWxlbWVudC5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1NWR01QYXRoRWxlbWVudC5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ0QTBFQUFDMjUyMjBFOTIwMDQ5RTcxNiAvKiBKU0Zv
Y3VzT3B0aW9ucy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBKU0ZvY3VzT3B0
aW9ucy5oOyBwYXRoID0gRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0ZvY3VzT3B0aW9ucy5oOyBz
b3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQk0NEEwRUFBRTI1MjIwRTkyMDA0
OUU3MTYgLyogSlNGb2N1c09wdGlvbnMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBuYW1lID0gSlNGb2N1c09wdGlvbnMuY3BwOyBwYXRoID0gRGVyaXZlZFNvdXJjZXMvV2ViQ29y
ZS9KU0ZvY3VzT3B0aW9ucy5jcHA7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07
CiAJCTQ0QTIwREI4MEY4NDE2NkMwMEIzRTFGRSAvKiBXZWJDb3JlVVJMUmVzcG9uc2VJT1MuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViQ29yZVVSTFJlc3BvbnNlSU9TLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQ0QTI4QUFCMTJERkI4QUMwMEFFOTIzQiAv
KiBNYXRoTUxFbGVtZW50RmFjdG9yeS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUg
PSBNYXRoTUxFbGVtZW50RmFjdG9yeS5oOyBwYXRoID0gRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9N
YXRoTUxFbGVtZW50RmFjdG9yeS5oOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9
OwogCQk0NEEyOEFBRTEyREZCOEJGMDBBRTkyM0IgLyogTWF0aE1MTmFtZXMuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gTWF0aE1MTmFtZXMuaDsgcGF0aCA9IERlcml2ZWRTb3Vy
Y2VzL1dlYkNvcmUvTWF0aE1MTmFtZXMuaDsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJ
UjsgfTsKKwkJNDRBMkIxMDAyNTIyMDNBMTAwRDFDNzc0IC8qIEZvY3VzT3B0aW9ucy5pZGwgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRo
ID0gRm9jdXNPcHRpb25zLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDRDNkQ4
RTAyNTIyMDg3NjAwRDM5MzcwIC8qIEZvY3VzT3B0aW9ucy5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGb2N1
c09wdGlvbnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDRDOTkxODEwRjNEMUUw
RDAwNTg2NjcwIC8qIFNjcm9sbGJhclRoZW1lSU9TLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAub2JqY3BwOyBwYXRoID0gU2Nyb2xsYmFyVGhlbWVJT1MubW07IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTQ0Qzk5MTg1MEYzRDFFQkUwMDU4NjY3MCAvKiBTY3JvbGxiYXJUaGVtZUlP
Uy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTY3JvbGxiYXJUaGVtZUlPUy5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0NEM5OTE5RDBGM0QyMTBFMDA1ODY2NzAg
LyogVGhlbWVJT1MuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVGhlbWVJT1Mu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTIxMTgwLDYgKzIxMTg1LDggQEAKIAkJ
CQkxNERDRjNCMTFCNkJFMjA4MDA2MkQ0QzIgLyogSlNDb3VudFF1ZXVpbmdTdHJhdGVneS5oICov
LAogCQkJCTk5MDhCMEZEMUJDQUQwN0QwMEVEMEY2NiAvKiBKU0RPTUJpbmRpbmdJbnRlcm5hbHNC
dWlsdGlucy5jcHAgKi8sCiAJCQkJOUIwM0Q4MDYxQkIzMTEwRDAwQjc2NERBIC8qIEpTRE9NQmlu
ZGluZ0ludGVybmFsc0J1aWx0aW5zLmggKi8sCisJCQkJNDRBMEVBQUUyNTIyMEU5MjAwNDlFNzE2
IC8qIEpTRm9jdXNPcHRpb25zLmNwcCAqLywKKwkJCQk0NEEwRUFBQzI1MjIwRTkyMDA0OUU3MTYg
LyogSlNGb2N1c09wdGlvbnMuaCAqLywKIAkJCQlDMjgwODMzRDFDNkRDMjJDMDAxNDUxQjYgLyog
SlNGb250RmFjZS5jcHAgKi8sCiAJCQkJQzI4MDgzM0UxQzZEQzIyQzAwMTQ1MUI2IC8qIEpTRm9u
dEZhY2UuaCAqLywKIAkJCQkxQzI0RUVBNjFDNzJBN0I0MDA4MEY4RkMgLyogSlNGb250RmFjZVNl
dC5jcHAgKi8sCkBAIC0yOTQzNyw2ICsyOTQ0NCw4IEBACiAJCQkJQjZEOUQyMzQxNEVBQkQyNjAw
OTBENzVFIC8qIEZvY3VzRXZlbnQuY3BwICovLAogCQkJCUI2RDlEMjMzMTRFQUJEMjYwMDkwRDc1
RSAvKiBGb2N1c0V2ZW50LmggKi8sCiAJCQkJQjZEOUQyNzIxNEVBQkYwMzAwOTBENzVFIC8qIEZv
Y3VzRXZlbnQuaWRsICovLAorCQkJCTQ0QzZEOEUwMjUyMjA4NzYwMEQzOTM3MCAvKiBGb2N1c09w
dGlvbnMuaCAqLywKKwkJCQk0NEEyQjEwMDI1MjIwM0ExMDBEMUM3NzQgLyogRm9jdXNPcHRpb25z
LmlkbCAqLywKIAkJCQlBODUzMTIzQzExRDA0NzFCMDBENEQwNzcgLyogRnJhZ21lbnRTY3JpcHRp
bmdQZXJtaXNzaW9uLmggKi8sCiAJCQkJQ0Q5MkY1MTcyMjYxMDM4MjAwRjg3QkIzIC8qIEZ1bGxz
Y3JlZW5NYW5hZ2VyLmNwcCAqLywKIAkJCQlDRDkyRjUxNjIyNjEwMzgyMDBGODdCQjMgLyogRnVs
bHNjcmVlbk1hbmFnZXIuaCAqLywKQEAgLTMxMzg0LDYgKzMxMzkzLDcgQEAKIAkJCQkxNDk5M0JF
NjBCMkYyQjFDMDA1MDQ5N0YgLyogRm9jdXNDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLywKIAkJ
CQkwNjIyODc4NDBCNERCMzIyMDAwQzM0REYgLyogRm9jdXNEaXJlY3Rpb24uaCBpbiBIZWFkZXJz
ICovLAogCQkJCUI2RDlEMjM1MTRFQUJEMjYwMDkwRDc1RSAvKiBGb2N1c0V2ZW50LmggaW4gSGVh
ZGVycyAqLywKKwkJCQk0NEM2RDhFOTI1MjIwODdGMDBEMzkzNzAgLyogRm9jdXNPcHRpb25zLmgg
aW4gSGVhZGVycyAqLywKIAkJCQlCMkMzREE2NTBEMDA2Q0Q2MDBFRjZGMjYgLyogRm9udC5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJMUFDMkQ4OUQxQjFFMjkxRjAwRDUyRTg3IC8qIEZvbnRBbnRpYWxp
YXNpbmdTdGF0ZVNhdmVyLmggaW4gSGVhZGVycyAqLywKIAkJCQlGNEU1N0VEQzIxM0YzRjVGMDA0
RUE5OEUgLyogRm9udEF0dHJpYnV0ZUNoYW5nZXMuaCBpbiBIZWFkZXJzICovLApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0Vs
ZW1lbnQuY3BwCmluZGV4IDI3NWI1ZDc1ODk3YTRhYTRjMTEyMDhiNzAwMmM5MDU1ZmI3NWJjNDcu
LmM5NmRiM2EwMTU1OTlmNTI3YzJmZjhkZDEzNjhkYzRlMWMwNzJkOWQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxl
bWVudC5jcHAKQEAgLTMwMDUsNyArMzAwNSwxMiBAQCBzdGF0aWMgUmVmUHRyPEVsZW1lbnQ+IGZp
bmRGaXJzdFByb2dyYW1hdGljYWxseUZvY3VzYWJsZUVsZW1lbnRJbkNvbXBvc2VkVHJlZShFbAog
ICAgIHJldHVybiBudWxscHRyOwogfQogCi12b2lkIEVsZW1lbnQ6OmZvY3VzKGJvb2wgcmVzdG9y
ZVByZXZpb3VzU2VsZWN0aW9uLCBGb2N1c0RpcmVjdGlvbiBkaXJlY3Rpb24pCit2b2lkIEVsZW1l
bnQ6OmZvY3VzKGNvbnN0IEZvY3VzT3B0aW9ucyYgb3B0aW9ucykKK3sKKyAgICBmb2N1cyh0cnVl
LCBGb2N1c0RpcmVjdGlvbk5vbmUsIG9wdGlvbnMucHJldmVudFNjcm9sbCk7Cit9CisKK3ZvaWQg
RWxlbWVudDo6Zm9jdXMoYm9vbCByZXN0b3JlUHJldmlvdXNTZWxlY3Rpb24sIEZvY3VzRGlyZWN0
aW9uIGRpcmVjdGlvbiwgYm9vbCBwcmV2ZW50U2Nyb2xsKQogewogICAgIGlmICghaXNDb25uZWN0
ZWQoKSkKICAgICAgICAgcmV0dXJuOwpAQCAtMzA1Myw3ICszMDU4LDggQEAgdm9pZCBFbGVtZW50
Ojpmb2N1cyhib29sIHJlc3RvcmVQcmV2aW91c1NlbGVjdGlvbiwgRm9jdXNEaXJlY3Rpb24gZGly
ZWN0aW9uKQogICAgICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIG5ld1RhcmdldC0+cmV2
ZWFsRm9jdXNlZEVsZW1lbnQocmVzdG9yZVByZXZpb3VzU2VsZWN0aW9uID8gU2VsZWN0aW9uUmVz
dG9yYXRpb25Nb2RlOjpSZXN0b3JlIDogU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlOjpTZXREZWZh
dWx0KTsKKyAgICBpZiAoIXByZXZlbnRTY3JvbGwpCisgICAgICAgIG5ld1RhcmdldC0+cmV2ZWFs
Rm9jdXNlZEVsZW1lbnQocmVzdG9yZVByZXZpb3VzU2VsZWN0aW9uID8gU2VsZWN0aW9uUmVzdG9y
YXRpb25Nb2RlOjpSZXN0b3JlIDogU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlOjpTZXREZWZhdWx0
KTsKIH0KIAogdm9pZCBFbGVtZW50OjpyZXZlYWxGb2N1c2VkRWxlbWVudChTZWxlY3Rpb25SZXN0
b3JhdGlvbk1vZGUgc2VsZWN0aW9uTW9kZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Rv
bS9FbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5oCmluZGV4IDYxMWUxMTA4
ZDFjZWUwZjYzMWE3Nzg3MzQ2YWU5NWFiMjA4NGI2MTMuLjE5MTc3ZGUzNzgyMTA5N2VlZDkwYTFm
NThiYjExOGE1NTg2ZTQxY2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuaApAQCAtMjcsNiArMjcsNyBAQAog
I2luY2x1ZGUgIkFYVGV4dFN0YXRlQ2hhbmdlSW50ZW50LmgiCiAjaW5jbHVkZSAiRG9jdW1lbnQu
aCIKICNpbmNsdWRlICJFbGVtZW50RGF0YS5oIgorI2luY2x1ZGUgIkZvY3VzT3B0aW9ucy5oIgog
I2luY2x1ZGUgIkhUTUxOYW1lcy5oIgogI2luY2x1ZGUgIlNjcm9sbFR5cGVzLmgiCiAjaW5jbHVk
ZSAiU2hhZG93Um9vdE1vZGUuaCIKQEAgLTQwMCw3ICs0MDEsOCBAQCBwdWJsaWM6CiAgICAgdmly
dHVhbCBTdHJpbmcgdGFyZ2V0KCkgY29uc3QgeyByZXR1cm4gU3RyaW5nKCk7IH0KIAogICAgIHN0
YXRpYyBBWFRleHRTdGF0ZUNoYW5nZUludGVudCBkZWZhdWx0Rm9jdXNUZXh0U3RhdGVDaGFuZ2VJ
bnRlbnQoKSB7IHJldHVybiBBWFRleHRTdGF0ZUNoYW5nZUludGVudChBWFRleHRTdGF0ZUNoYW5n
ZVR5cGVTZWxlY3Rpb25Nb3ZlLCBBWFRleHRTZWxlY3Rpb24geyBBWFRleHRTZWxlY3Rpb25EaXJl
Y3Rpb25EaXNjb250aWd1b3VzLCBBWFRleHRTZWxlY3Rpb25HcmFudWxhcml0eVVua25vd24sIHRy
dWUgfSk7IH0KLSAgICB2aXJ0dWFsIHZvaWQgZm9jdXMoYm9vbCByZXN0b3JlUHJldmlvdXNTZWxl
Y3Rpb24gPSB0cnVlLCBGb2N1c0RpcmVjdGlvbiA9IEZvY3VzRGlyZWN0aW9uTm9uZSk7CisgICAg
dm9pZCBmb2N1cyhjb25zdCBGb2N1c09wdGlvbnMmKTsKKyAgICB2aXJ0dWFsIHZvaWQgZm9jdXMo
Ym9vbCByZXN0b3JlUHJldmlvdXNTZWxlY3Rpb24gPSB0cnVlLCBGb2N1c0RpcmVjdGlvbiA9IEZv
Y3VzRGlyZWN0aW9uTm9uZSwgYm9vbCBwcmV2ZW50U2Nyb2xsID0gZmFsc2UpOwogICAgIHZvaWQg
cmV2ZWFsRm9jdXNlZEVsZW1lbnQoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlKTsKICAgICB2aXJ0
dWFsIFJlZlB0cjxFbGVtZW50PiBmb2N1c0FwcGVhcmFuY2VVcGRhdGVUYXJnZXQoKTsKICAgICB2
aXJ0dWFsIHZvaWQgdXBkYXRlRm9jdXNBcHBlYXJhbmNlKFNlbGVjdGlvblJlc3RvcmF0aW9uTW9k
ZSwgU2VsZWN0aW9uUmV2ZWFsTW9kZSA9IFNlbGVjdGlvblJldmVhbE1vZGU6OlJldmVhbCk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRm9jdXNPcHRpb25zLmggYi9Tb3VyY2UvV2Vi
Q29yZS9kb20vRm9jdXNPcHRpb25zLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNGZlMDg3MzhkY2FmOWEyNjhjZDcx
Zjk5OGM4M2U3N2IxZjUyZjdiMgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Rv
bS9Gb2N1c09wdGlvbnMuaApAQCAtMCwwICsxLDM0IEBACisvKgorICogQ29weXJpZ2h0IChDKSAy
MDIwIElnYWxpYSBTLkwuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cisg
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisg
KiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4g
Tk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBG
T1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExB
UlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NT
IE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikg
SE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNF
CisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCituYW1lc3BhY2UgV2ViQ29y
ZSB7CisKK3N0cnVjdCBGb2N1c09wdGlvbnMgeworICAgIGJvb2wgcHJldmVudFNjcm9sbCB7IGZh
bHNlIH07Cit9OworCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9kb20vRm9jdXNPcHRpb25zLmlkbCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Gb2N1c09w
dGlvbnMuaWRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjE3MzkwMjM5NzQ4NDNlZWYwNjQyZTA1N2Q2M2QwYzJiODE3
OGJlMGMKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRm9jdXNPcHRpb25z
LmlkbApAQCAtMCwwICsxLDI4IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIwIElnYWxpYSBT
LkwuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
KyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQor
ICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hB
TEwgQVBQTEUgSU5DLiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVD
VCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENPTlNF
UVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQUk9D
VVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFU
QSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVT
RUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFD
VCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9S
IE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElT
IFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFN
QUdFLgorICovCisKK2RpY3Rpb25hcnkgRm9jdXNPcHRpb25zIHsKKyAgIGJvb2xlYW4gcHJldmVu
dFNjcm9sbCA9IGZhbHNlOworfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRN
TExhYmVsRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMYWJlbEVsZW1lbnQu
Y3BwCmluZGV4IDM3ZjljYTU2ZTgwZDczMjQxMDNiMWExMjZmYzIyYzY2NWEwOGFkM2MuLjk3YzYz
ODJlM2Q2ODBiMDM5MGI4NTU3Y2VlMmIxMTg0MGYwNjYwZDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTExhYmVsRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRt
bC9IVE1MTGFiZWxFbGVtZW50LmNwcApAQCAtMTcyLDE0ICsxNzIsMTQgQEAgYm9vbCBIVE1MTGFi
ZWxFbGVtZW50Ojp3aWxsUmVzcG9uZFRvTW91c2VDbGlja0V2ZW50cygpCiAgICAgcmV0dXJuIChl
bGVtZW50ICYmIGVsZW1lbnQtPndpbGxSZXNwb25kVG9Nb3VzZUNsaWNrRXZlbnRzKCkpIHx8IEhU
TUxFbGVtZW50Ojp3aWxsUmVzcG9uZFRvTW91c2VDbGlja0V2ZW50cygpOwogfQogCi12b2lkIEhU
TUxMYWJlbEVsZW1lbnQ6OmZvY3VzKGJvb2wgcmVzdG9yZVByZXZpb3VzU2VsZWN0aW9uLCBGb2N1
c0RpcmVjdGlvbiBkaXJlY3Rpb24pCit2b2lkIEhUTUxMYWJlbEVsZW1lbnQ6OmZvY3VzKGJvb2wg
cmVzdG9yZVByZXZpb3VzU2VsZWN0aW9uLCBGb2N1c0RpcmVjdGlvbiBkaXJlY3Rpb24sIGJvb2wg
cHJldmVudFNjcm9sbCkKIHsKICAgICBSZWY8SFRNTExhYmVsRWxlbWVudD4gcHJvdGVjdGVkVGhp
cygqdGhpcyk7CiAgICAgaWYgKGRvY3VtZW50KCkuaGF2ZVN0eWxlc2hlZXRzTG9hZGVkKCkpIHsK
ICAgICAgICAgZG9jdW1lbnQoKS51cGRhdGVMYXlvdXQoKTsKICAgICAgICAgaWYgKGlzRm9jdXNh
YmxlKCkpIHsKICAgICAgICAgICAgIC8vIFRoZSB2YWx1ZSBvZiByZXN0b3JlUHJldmlvdXNTZWxl
Y3Rpb24gaXMgbm90IHVzZWQgZm9yIGxhYmVsIGVsZW1lbnRzIGFzIGl0IGRvZXNuJ3Qgb3ZlcnJp
ZGUgdXBkYXRlRm9jdXNBcHBlYXJhbmNlLgotICAgICAgICAgICAgRWxlbWVudDo6Zm9jdXMocmVz
dG9yZVByZXZpb3VzU2VsZWN0aW9uLCBkaXJlY3Rpb24pOworICAgICAgICAgICAgRWxlbWVudDo6
Zm9jdXMocmVzdG9yZVByZXZpb3VzU2VsZWN0aW9uLCBkaXJlY3Rpb24sIHByZXZlbnRTY3JvbGwp
OwogICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICB9CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGFiZWxFbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1s
L0hUTUxMYWJlbEVsZW1lbnQuaAppbmRleCA0NjYwZjA2Nzc3MzUxY2U2ZGM4OTVjODFiYjA3MjQ3
YzljNDMyMGVlLi5lNGQ1MzA5ZWZkNmQzNWM3NWFhZWZkMDVhNzFlNWViYTQ2MDQ3ZjgyIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMYWJlbEVsZW1lbnQuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxMYWJlbEVsZW1lbnQuaApAQCAtNTEsNyArNTEsNyBAQCBwcml2
YXRlOgogICAgIC8vIE92ZXJyaWRkZW4gdG8gZWl0aGVyIGNsaWNrKCkgb3IgZm9jdXMoKSB0aGUg
Y29ycmVzcG9uZGluZyBjb250cm9sLgogICAgIHZvaWQgZGVmYXVsdEV2ZW50SGFuZGxlcihFdmVu
dCYpIGZpbmFsOwogCi0gICAgdm9pZCBmb2N1cyhib29sIHJlc3RvcmVQcmV2aW91c1NlbGVjdGlv
biwgRm9jdXNEaXJlY3Rpb24pIGZpbmFsOworICAgIHZvaWQgZm9jdXMoYm9vbCByZXN0b3JlUHJl
dmlvdXNTZWxlY3Rpb24sIEZvY3VzRGlyZWN0aW9uLCBib29sIHByZXZlbnRTY3JvbGwpIGZpbmFs
OwogCiAgICAgYm9vbCBpc0ludGVyYWN0aXZlQ29udGVudCgpIGNvbnN0IGZpbmFsIHsgcmV0dXJu
IHRydWU7IH0KIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMZWdlbmRF
bGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExlZ2VuZEVsZW1lbnQuY3BwCmlu
ZGV4IGExZTU3Y2ZlNGQwYjFmMjA4MDA3MWY0NzJkNDQ5ZjZiNjA4YTIyNzYuLmUwMWMxZWQyMDlh
N2JiNjU4YTY4YzhkYWRjM2M2YmRiMmQxMTkzZWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTExlZ2VuZEVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRN
TExlZ2VuZEVsZW1lbnQuY3BwCkBAIC01NywxMiArNTcsMTIgQEAgUmVmUHRyPEhUTUxGb3JtQ29u
dHJvbEVsZW1lbnQ+IEhUTUxMZWdlbmRFbGVtZW50Ojphc3NvY2lhdGVkQ29udHJvbCgpCiAgICAg
cmV0dXJuIGRlc2NlbmRhbnRzT2ZUeXBlPEhUTUxGb3JtQ29udHJvbEVsZW1lbnQ+KCplbmNsb3Np
bmdGaWVsZHNldCkuZmlyc3QoKTsKIH0KIAotdm9pZCBIVE1MTGVnZW5kRWxlbWVudDo6Zm9jdXMo
Ym9vbCByZXN0b3JlUHJldmlvdXNTZWxlY3Rpb24sIEZvY3VzRGlyZWN0aW9uIGRpcmVjdGlvbikK
K3ZvaWQgSFRNTExlZ2VuZEVsZW1lbnQ6OmZvY3VzKGJvb2wgcmVzdG9yZVByZXZpb3VzU2VsZWN0
aW9uLCBGb2N1c0RpcmVjdGlvbiBkaXJlY3Rpb24sIGJvb2wgcHJldmVudFNjcm9sbCkKIHsKICAg
ICBpZiAoZG9jdW1lbnQoKS5oYXZlU3R5bGVzaGVldHNMb2FkZWQoKSkgewogICAgICAgICBkb2N1
bWVudCgpLnVwZGF0ZUxheW91dElnbm9yZVBlbmRpbmdTdHlsZXNoZWV0cygpOwogICAgICAgICBp
ZiAoaXNGb2N1c2FibGUoKSkgewotICAgICAgICAgICAgRWxlbWVudDo6Zm9jdXMocmVzdG9yZVBy
ZXZpb3VzU2VsZWN0aW9uLCBkaXJlY3Rpb24pOworICAgICAgICAgICAgRWxlbWVudDo6Zm9jdXMo
cmVzdG9yZVByZXZpb3VzU2VsZWN0aW9uLCBkaXJlY3Rpb24sIHByZXZlbnRTY3JvbGwpOwogICAg
ICAgICAgICAgcmV0dXJuOwogICAgICAgICB9CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvaHRtbC9IVE1MTGVnZW5kRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
TGVnZW5kRWxlbWVudC5oCmluZGV4IDJkZjYyMjk3MWYxMzc5MjJkYzM4Yzg4NTQ5MmQyZjM4NTQ2
ZjJhMWEuLmU1MjRkOGY0NjI3ZjY5NDE0ZDU2OThiODY1YWM0N2ExODY0OWVkYTEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExlZ2VuZEVsZW1lbnQuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxMZWdlbmRFbGVtZW50LmgKQEAgLTQzLDcgKzQzLDcgQEAgcHJpdmF0
ZToKICAgICBSZWZQdHI8SFRNTEZvcm1Db250cm9sRWxlbWVudD4gYXNzb2NpYXRlZENvbnRyb2wo
KTsKIAogICAgIGJvb2wgYWNjZXNzS2V5QWN0aW9uKGJvb2wgc2VuZE1vdXNlRXZlbnRzKSBmaW5h
bDsKLSAgICB2b2lkIGZvY3VzKGJvb2wgcmVzdG9yZVByZXZpb3VzU2VsZWN0aW9uLCBGb2N1c0Rp
cmVjdGlvbikgZmluYWw7CisgICAgdm9pZCBmb2N1cyhib29sIHJlc3RvcmVQcmV2aW91c1NlbGVj
dGlvbiwgRm9jdXNEaXJlY3Rpb24sIGJvb2wgcHJldmVudFNjcm9sbCkgZmluYWw7CiB9OwogCiB9
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxPckZvcmVpZ25FbGVtZW50LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE9yRm9yZWln
bkVsZW1lbnQuaWRsCmluZGV4IGYzYjEzMzJlYmFmN2E4YzM5ZmIyNTRiYjVjOGMwMzZlNDNlMmUx
ODQuLmI0YTdkMTNhNzYwMWI3M2ZmZjdkZjdmZDgyMzVlY2RjN2U1Y2EyYzIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE9yRm9yZWlnbkVsZW1lbnQuaWRsCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvSFRNTE9yRm9yZWlnbkVsZW1lbnQuaWRsCkBAIC0zNCw3ICszNCw3IEBA
IGludGVyZmFjZSBtaXhpbiBIVE1MT3JGb3JlaWduRWxlbWVudCB7CiAgICAgLy8gRklYTUU6IElt
cGxlbWVudCAnYXV0b2ZvY3VzJy4KICAgICAvLyBbQ0VSZWFjdGlvbnNdIGF0dHJpYnV0ZSBib29s
ZWFuIGF1dG9mb2N1czsKICAgICBbQ0VSZWFjdGlvbnMsIEltcGxlbWVudGVkQXM9dGFiSW5kZXhG
b3JCaW5kaW5nc10gYXR0cmlidXRlIGxvbmcgdGFiSW5kZXg7Ci0gICAgLy8gRklNWEU6IGZvY3Vz
KCkgaXMgc3BlY2lmaWVkIHRvIHRha2UgYW4gb3B0aW9uYWwgRm9jdXNPcHRpb25zLiBJbXBsZW1l
bnQgdGhhdC4KLSAgICB1bmRlZmluZWQgZm9jdXMoKTsKKyAgICB1bmRlZmluZWQgZm9jdXMob3B0
aW9uYWwgRm9jdXNPcHRpb25zIG9wdGlvbnMpOwogICAgIHVuZGVmaW5lZCBibHVyKCk7CiB9Owor
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKaW5kZXggMTM4NWE5MWZkMjJlYzI1ZDViNjhmZDg2MGE0NDhjZDAxOWViZmU3ZC4uOGQwNmEz
N2VkY2U4NDY2OGM4MGQ1Y2YxNjA1YmU2MTQ0Y2FlZGFjZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBA
CisyMDIwLTA5LTI5ICBSb2IgQnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgRW5h
YmxlIGFiaWxpdHkgdG8gcHJldmVudCBzY3JvbGxpbmcgaW4gRWxlbWVudC5mb2N1cygpCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzg1ODMKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHBsYXRmb3JtL2lv
cy13azIvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2ludGVyYWN0aW9uL2Zv
Y3VzL3Byb2Nlc3NpbmctbW9kZWwvcHJldmVudFNjcm9sbC10ZXh0YXJlYS1leHBlY3RlZC50eHQ6
IFJlbW92ZWQuCisgICAgICAgICogcGxhdGZvcm0vbWFjLXdrMS9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvaW50ZXJhY3Rpb24vZm9jdXMvcHJvY2Vzc2luZy1tb2RlbC9wcmV2
ZW50U2Nyb2xsLXRleHRhcmVhLWV4cGVjdGVkLnR4dDogUmVtb3ZlZC4KKwogMjAyMC0wOS0yNyAg
Um9iIEJ1aXMgIDxyYnVpc0BpZ2FsaWEuY29tPgogCiAgICAgICAgIFJlc3luYyB3ZWItcGxhdGZv
cm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvdGhlLWlmcmFtZS1lbGVtZW50IGZyb20gdXBzdHJlYW0K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCmluZGV4IDdhNDVkMGRhMWY1NzYyZjNhODA2ODgx
NDY3OTY5YWRjM2MxODYwMzUuLjQ3ZGIzM2RiM2QzM2VjY2FlYjY1ZGU2MGFmZGQ5ZDY0YTFjNjdl
ODUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEyIEBACisyMDIw
LTA5LTI5ICBSb2IgQnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgRW5hYmxlIGFi
aWxpdHkgdG8gcHJldmVudCBzY3JvbGxpbmcgaW4gRWxlbWVudC5mb2N1cygpCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzg1ODMKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0
cy9odG1sL2ludGVyYWN0aW9uL2ZvY3VzL3Byb2Nlc3NpbmctbW9kZWwvcHJldmVudFNjcm9sbC10
ZXh0YXJlYS1leHBlY3RlZC50eHQ6CisKIDIwMjAtMDktMjcgIFJvYiBCdWlzICA8cmJ1aXNAaWdh
bGlhLmNvbT4KIAogICAgICAgICBSZXN5bmMgd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50
aWNzL3RoZS1pZnJhbWUtZWxlbWVudCBmcm9tIHVwc3RyZWFtCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvaW50ZXJhY3Rpb24vZm9j
dXMvcHJvY2Vzc2luZy1tb2RlbC9wcmV2ZW50U2Nyb2xsLXRleHRhcmVhLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9pbnRlcmFj
dGlvbi9mb2N1cy9wcm9jZXNzaW5nLW1vZGVsL3ByZXZlbnRTY3JvbGwtdGV4dGFyZWEtZXhwZWN0
ZWQudHh0CmluZGV4IDA4YWFmYjMxNjM2MDg0OTA4Nzk4MGUwMDUwNDJkN2M4NWFkYTg2NWIuLmM3
MzRhNjlkZTlhNWNmZjVhZDU1ZWVmOWNkZDFkNmQyZWVjZTZkM2EgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9pbnRlcmFjdGlvbi9m
b2N1cy9wcm9jZXNzaW5nLW1vZGVsL3ByZXZlbnRTY3JvbGwtdGV4dGFyZWEtZXhwZWN0ZWQudHh0
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9p
bnRlcmFjdGlvbi9mb2N1cy9wcm9jZXNzaW5nLW1vZGVsL3ByZXZlbnRTY3JvbGwtdGV4dGFyZWEt
ZXhwZWN0ZWQudHh0CkBAIC0xLDQgKzEsNCBAQAogCiAKLUZBSUwgcHJldmVudFNjcm9sbDogdHJ1
ZSBvbiBhIHRleHRhcmVhIGVsZW1lbnQgYXNzZXJ0X2VxdWFsczogVEVYVEFSRUE6IFNob3VsZCBu
b3QgaGF2ZSBzY3JvbGxlZCBhZnRlciBhIGNvdXBsZSBldmVudCBsb29wIHRpY2tzIGV4cGVjdGVk
IDAgYnV0IGdvdCA5MjAKK1BBU1MgcHJldmVudFNjcm9sbDogdHJ1ZSBvbiBhIHRleHRhcmVhIGVs
ZW1lbnQKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zLXdrMi9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvaW50ZXJhY3Rpb24vZm9jdXMvcHJvY2Vzc2lu
Zy1tb2RlbC9wcmV2ZW50U2Nyb2xsLXRleHRhcmVhLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L3BsYXRmb3JtL2lvcy13azIvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2lu
dGVyYWN0aW9uL2ZvY3VzL3Byb2Nlc3NpbmctbW9kZWwvcHJldmVudFNjcm9sbC10ZXh0YXJlYS1l
eHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGM3MzRhNjlkZTlhNWNm
ZjVhZDU1ZWVmOWNkZDFkNmQyZWVjZTZkM2EuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zLXdrMi9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvaW50ZXJhY3Rpb24vZm9jdXMvcHJvY2Vzc2luZy1t
b2RlbC9wcmV2ZW50U2Nyb2xsLXRleHRhcmVhLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBA
IC0xLDQgKzAsMCBAQAotCi0KLVBBU1MgcHJldmVudFNjcm9sbDogdHJ1ZSBvbiBhIHRleHRhcmVh
IGVsZW1lbnQKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMS9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvaW50ZXJhY3Rpb24vZm9jdXMvcHJvY2Vz
c2luZy1tb2RlbC9wcmV2ZW50U2Nyb2xsLXRleHRhcmVhLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL3BsYXRmb3JtL21hYy13azEvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1s
L2ludGVyYWN0aW9uL2ZvY3VzL3Byb2Nlc3NpbmctbW9kZWwvcHJldmVudFNjcm9sbC10ZXh0YXJl
YS1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDUyYWJhYmJmYmQ3
MjdlY2RmYmJjZGRkNmNjOGUxMDBkM2RkOWNhZjUuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMS9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvaW50ZXJhY3Rpb24vZm9jdXMvcHJvY2Vzc2lu
Zy1tb2RlbC9wcmV2ZW50U2Nyb2xsLXRleHRhcmVhLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxs
CkBAIC0xLDQgKzAsMCBAQAotCi0KLUZBSUwgcHJldmVudFNjcm9sbDogdHJ1ZSBvbiBhIHRleHRh
cmVhIGVsZW1lbnQgYXNzZXJ0X2VxdWFsczogVEVYVEFSRUE6IFNob3VsZCBub3QgaGF2ZSBzY3Jv
bGxlZCBleHBlY3RlZCAwIGJ1dCBnb3QgOTIwCi0K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>410105</attachid>
            <date>2020-09-30 04:04:29 -0700</date>
            <delta_ts>2020-10-02 03:43:41 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-178583-20200930120428.patch</filename>
            <type>text/plain</type>
            <size>24536</size>
            <attacher name="Rob Buis">rbuis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY3NzgzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjM3NDdmNTg1MzIxZmE4
OTQzNTFlNTA5NzdhZmVlMzI2ZTVjNjYyNS4uYWZiZTc1YjZhYTA2ZDg5OGQ4NmIxYjgxYTRhYThh
ZDNmZmFhM2QxYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDIwLTA5LTMwICBSb2Ig
QnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgRW5hYmxlIGFiaWxpdHkgdG8gcHJl
dmVudCBzY3JvbGxpbmcgaW4gRWxlbWVudC5mb2N1cygpCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzg1ODMKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBXSVAuCisKKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4
dDoKKyAgICAgICAgKiBEZXJpdmVkU291cmNlcy1pbnB1dC54Y2ZpbGVsaXN0OgorICAgICAgICAq
IERlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0OgorICAgICAgICAqIERlcml2ZWRTb3Vy
Y2VzLm1ha2U6CisgICAgICAgICogSGVhZGVycy5jbWFrZToKKyAgICAgICAgKiBTb3VyY2VzLnR4
dDoKKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAg
ICogZG9tL0VsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RWxlbWVudDo6Zm9jdXMpOgor
ICAgICAgICAqIGRvbS9FbGVtZW50Lmg6CisgICAgICAgICogZG9tL0ZvY3VzT3B0aW9ucy5oOiBD
b3BpZWQgZnJvbSBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPckZvcmVpZ25FbGVtZW50LmlkbC4K
KyAgICAgICAgKiBkb20vRm9jdXNPcHRpb25zLmlkbDogQ29waWVkIGZyb20gU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MT3JGb3JlaWduRWxlbWVudC5pZGwuCisgICAgICAgICogaHRtbC9IVE1MTGFi
ZWxFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxMYWJlbEVsZW1lbnQ6OmZvY3Vz
KToKKyAgICAgICAgKiBodG1sL0hUTUxMYWJlbEVsZW1lbnQuaDoKKyAgICAgICAgKiBodG1sL0hU
TUxMZWdlbmRFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxMZWdlbmRFbGVtZW50
Ojpmb2N1cyk6CisgICAgICAgICogaHRtbC9IVE1MTGVnZW5kRWxlbWVudC5oOgorICAgICAgICAq
IGh0bWwvSFRNTE9yRm9yZWlnbkVsZW1lbnQuaWRsOgorCiAyMDIwLTA5LTI5ICBZdXN1a2UgU3V6
dWtpICA8eXN1enVraUBhcHBsZS5jb20+CiAKICAgICAgICAgQWx3YXlzIHVzZSBPcGVyYXRpb25Q
dHJUYWcgZm9yIGFsbCBvcGVyYXRpb25zIGFuZCBhbm5vdGF0ZSBvcGVyYXRpb25zIGluIENTUyBK
SVQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0IGIvU291cmNlL1dl
YkNvcmUvQ01ha2VMaXN0cy50eHQKaW5kZXggMmY0YmI1MzMxZDExZTY3ZGQ5ZDgxNzRlMTIwZTZk
YjVmYmEwOGZkYS4uYjQ1YTY1MzJkNTU5YmNkYjFmYTBhOWU4NDcxOTAzNGI3ZWM5ZTY2NSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIvU291cmNlL1dlYkNv
cmUvQ01ha2VMaXN0cy50eHQKQEAgLTgwNSw2ICs4MDUsNyBAQCBzZXQoV2ViQ29yZV9OT05fU1ZH
X0lETF9GSUxFUwogICAgIGRvbS9FdmVudE1vZGlmaWVySW5pdC5pZGwKICAgICBkb20vRXZlbnRU
YXJnZXQuaWRsCiAgICAgZG9tL0ZvY3VzRXZlbnQuaWRsCisgICAgZG9tL0ZvY3VzT3B0aW9ucy5p
ZGwKICAgICBkb20vR2xvYmFsRXZlbnRIYW5kbGVycytQb2ludGVyRXZlbnRzLmlkbAogICAgIGRv
bS9HbG9iYWxFdmVudEhhbmRsZXJzLmlkbAogICAgIGRvbS9IYXNoQ2hhbmdlRXZlbnQuaWRsCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1pbnB1dC54Y2ZpbGVsaXN0
IGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdAppbmRleCBh
NDI3NWJjOGMwMWMyY2FiNDY5NzA3OTc0YWNiZjZhZmM3ZWY3MTJiLi40NTcyNWY0N2FlOTRlYjg4
ZGI1NzJjYzczYWQzNzJhMzFlNGZjMDRkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9EZXJp
dmVkU291cmNlcy1pbnB1dC54Y2ZpbGVsaXN0CisrKyBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRT
b3VyY2VzLWlucHV0LnhjZmlsZWxpc3QKQEAgLTcyNCw2ICs3MjQsNyBAQCAkKFBST0pFQ1RfRElS
KS9kb20vRXZlbnROYW1lcy5pbgogJChQUk9KRUNUX0RJUikvZG9tL0V2ZW50VGFyZ2V0LmlkbAog
JChQUk9KRUNUX0RJUikvZG9tL0V2ZW50VGFyZ2V0RmFjdG9yeS5pbgogJChQUk9KRUNUX0RJUikv
ZG9tL0ZvY3VzRXZlbnQuaWRsCiskKFBST0pFQ1RfRElSKS9kb20vRm9jdXNPcHRpb25zLmlkbAog
JChQUk9KRUNUX0RJUikvZG9tL0dsb2JhbEV2ZW50SGFuZGxlcnMrUG9pbnRlckV2ZW50cy5pZGwK
ICQoUFJPSkVDVF9ESVIpL2RvbS9HbG9iYWxFdmVudEhhbmRsZXJzLmlkbAogJChQUk9KRUNUX0RJ
UikvZG9tL0hhc2hDaGFuZ2VFdmVudC5pZGwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0Rl
cml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0IGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNv
dXJjZXMtb3V0cHV0LnhjZmlsZWxpc3QKaW5kZXggZTQxNTkxYmFiYTE5M2E1MWE1Yzc5NjhlMDdj
YTkyMDBkYzkyZjlkZC4uNTI0N2ViZjhmMGI4YWZkOTg1NmRlNDc5ODYxOGQyZWIxZmQ2YmUzYSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxp
c3QKKysrIGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3QK
QEAgLTc3MCw2ICs3NzAsOCBAQCAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMv
V2ViQ29yZS9KU0ZpbGxNb2RlLmNwcAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3Vy
Y2VzL1dlYkNvcmUvSlNGaWxsTW9kZS5oCiAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNv
dXJjZXMvV2ViQ29yZS9KU0ZvY3VzRXZlbnQuY3BwCiAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVy
aXZlZFNvdXJjZXMvV2ViQ29yZS9KU0ZvY3VzRXZlbnQuaAorJChCVUlMVF9QUk9EVUNUU19ESVIp
L0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNGb2N1c09wdGlvbnMuY3BwCiskKEJVSUxUX1BST0RV
Q1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0ZvY3VzT3B0aW9ucy5oCiAkKEJVSUxU
X1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0ZvbnRGYWNlLmNwcAogJChC
VUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNGb250RmFjZS5oCiAk
KEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0ZvbnRGYWNlU2V0
LmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZSBiL1Nv
dXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKaW5kZXggOTVjZDlmZWNjMzU3MTAyMmUz
ODYyNGEyYTdhMmQzYTZhZTMwMGVmYi4uYmFiNzg5OTNjMGU2MmY5MGQxMWI5YWE5NTkzNGUyNjFh
NTllYTFhOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQor
KysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCkBAIC03NTUsNiArNzU1LDcg
QEAgSlNfQklORElOR19JRExTID0gXAogICAgICQoV2ViQ29yZSkvZG9tL0V2ZW50TW9kaWZpZXJJ
bml0LmlkbCBcCiAgICAgJChXZWJDb3JlKS9kb20vRXZlbnRUYXJnZXQuaWRsIFwKICAgICAkKFdl
YkNvcmUpL2RvbS9Gb2N1c0V2ZW50LmlkbCBcCisgICAgJChXZWJDb3JlKS9kb20vRm9jdXNPcHRp
b25zLmlkbCBcCiAgICAgJChXZWJDb3JlKS9kb20vR2xvYmFsRXZlbnRIYW5kbGVycy5pZGwgXAog
ICAgICQoV2ViQ29yZSkvZG9tL0dsb2JhbEV2ZW50SGFuZGxlcnMrUG9pbnRlckV2ZW50cy5pZGwg
XAogICAgICQoV2ViQ29yZSkvZG9tL0hhc2hDaGFuZ2VFdmVudC5pZGwgXApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZSBiL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21h
a2UKaW5kZXggMDc1ODE4NGJlODNiZGQzMTQ2NzA2NTcwNmRhZDkyYzBmZDQ5NWJjOC4uYTIyYTRi
MGNjZTAyZjZlNjAwMWNmNDg5MWJlMTFiZGJiNzY1YzE4MCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvSGVhZGVycy5jbWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlCkBA
IC00MzAsNiArNDMwLDcgQEAgc2V0KFdlYkNvcmVfUFJJVkFURV9GUkFNRVdPUktfSEVBREVSUwog
ICAgIGRvbS9FeGNlcHRpb25Db2RlLmgKICAgICBkb20vRXhjZXB0aW9uRGF0YS5oCiAgICAgZG9t
L0V4Y2VwdGlvbk9yLmgKKyAgICBkb20vRm9jdXNPcHRpb25zLmgKICAgICBkb20vRnJhZ21lbnRT
Y3JpcHRpbmdQZXJtaXNzaW9uLmgKICAgICBkb20vRnVsbHNjcmVlbk1hbmFnZXIuaAogICAgIGRv
bS9HQ1JlYWNoYWJsZVJlZi5oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4
dCBiL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0CmluZGV4IGEzN2Q0MDZhM2Y1OTU2MmI3YTkz
ZjM1MmM2NWUxNzc3Y2M3NWZjYmQuLmY2MzdkMTVlOGExYTc1NGUwNDgzZGVkNmI3ZmM4YTYzMDEz
ZGIzOWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0CisrKyBiL1NvdXJj
ZS9XZWJDb3JlL1NvdXJjZXMudHh0CkBAIC0yOTA1LDYgKzI5MDUsNyBAQCBKU0ZpbGVTeXN0ZW1F
bnRyeUNhbGxiYWNrLmNwcAogSlNGaWxlU3lzdGVtRmlsZUVudHJ5LmNwcAogSlNGaWxsTW9kZS5j
cHAKIEpTRm9jdXNFdmVudC5jcHAKK0pTRm9jdXNPcHRpb25zLmNwcAogSlNGb250RmFjZS5jcHAK
IEpTRm9udEZhY2VTZXQuY3BwCiBKU0dQVUJpbmRHcm91cExheW91dEJpbmRpbmcuY3BwCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2og
Yi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXgg
NGIwYzlmMGU0NjU4ZGIzOTU2ZjgyMTQyYTgyZDVlZjFmOWQyOTA5OS4uOGNkMzBlNWY0NTM1ZDIx
MjJjOWVlMzhmMjM0NGY5OTY5NmFlYmExNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2Vi
Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNv
cmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMTIwOCw2ICsxMjA4LDcgQEAKIAkJNDRB
MjBEQjkwRjg0MTY2QzAwQjNFMUZFIC8qIFdlYkNvcmVVUkxSZXNwb25zZUlPUy5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDRBMjBEQjgwRjg0MTY2QzAw
QjNFMUZFIC8qIFdlYkNvcmVVUkxSZXNwb25zZUlPUy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTQ0QTI4QUFDMTJERkI4QUMwMEFFOTIzQiAvKiBN
YXRoTUxFbGVtZW50RmFjdG9yeS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNDRBMjhBQUIxMkRGQjhBQzAwQUU5MjNCIC8qIE1hdGhNTEVsZW1lbnRGYWN0
b3J5LmggKi87IH07CiAJCTQ0QTI4QUFGMTJERkI4QkYwMEFFOTIzQiAvKiBNYXRoTUxOYW1lcy5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDRBMjhBQUUx
MkRGQjhCRjAwQUU5MjNCIC8qIE1hdGhNTE5hbWVzLmggKi87IH07CisJCTQ0QzZEOEU5MjUyMjA4
N0YwMEQzOTM3MCAvKiBGb2N1c09wdGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDQ0QzZEOEUwMjUyMjA4NzYwMEQzOTM3MCAvKiBGb2N1c09wdGlv
bnMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk0
NEM5OTE4NjBGM0QxRUJFMDA1ODY2NzAgLyogU2Nyb2xsYmFyVGhlbWVJT1MuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ0Qzk5MTg1MEYzRDFFQkUwMDU4
NjY3MCAvKiBTY3JvbGxiYXJUaGVtZUlPUy5oICovOyB9OwogCQk0NEM5OTE5RjBGM0QyMTBFMDA1
ODY2NzAgLyogVGhlbWVJT1MuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDQ0Qzk5MTlEMEYzRDIxMEUwMDU4NjY3MCAvKiBUaGVtZUlPUy5oICovOyB9Owog
CQk0NERBQjVCMjE1QTYyMzU4MDA5N0MxRTQgLyogRXh0ZW5zaW9uc0dMT3BlbkdMQ29tbW9uLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0NERBQjVCMDE1
QTYyMzU4MDA5N0MxRTQgLyogRXh0ZW5zaW9uc0dMT3BlbkdMQ29tbW9uLmggKi87IH07CkBAIC03
OTA4LDkgKzc5MDksMTMgQEAKIAkJNDQ5NkUzOUMxMzk4MTM2QzAwM0VFMzJBIC8qIEpTU1ZHQW5p
bWF0ZU1vdGlvbkVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNT
VkdBbmltYXRlTW90aW9uRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0
NDk2RTM5RjEzOTgxM0E1MDAzRUUzMkEgLyogSlNTVkdNUGF0aEVsZW1lbnQuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNTVkdNUGF0aEVsZW1lbnQuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJNDQ5NkUzQTExMzk4MTNDQjAwM0VFMzJBIC8qIEpTU1ZHTVBhdGhF
bGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTU1ZHTVBh
dGhFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDRBMEVBQUMyNTIy
MEU5MjAwNDlFNzE2IC8qIEpTRm9jdXNPcHRpb25zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgbmFtZSA9IEpTRm9jdXNPcHRpb25zLmg7IHBhdGggPSBEZXJpdmVkU291cmNlcy9XZWJDb3Jl
L0pTRm9jdXNPcHRpb25zLmg7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJ
CTQ0QTBFQUFFMjUyMjBFOTIwMDQ5RTcxNiAvKiBKU0ZvY3VzT3B0aW9ucy5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBKU0ZvY3VzT3B0aW9ucy5jcHA7IHBhdGggPSBE
ZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTRm9jdXNPcHRpb25zLmNwcDsgc291cmNlVHJlZSA9IEJV
SUxUX1BST0RVQ1RTX0RJUjsgfTsKIAkJNDRBMjBEQjgwRjg0MTY2QzAwQjNFMUZFIC8qIFdlYkNv
cmVVUkxSZXNwb25zZUlPUy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJD
b3JlVVJMUmVzcG9uc2VJT1MuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDRBMjhB
QUIxMkRGQjhBQzAwQUU5MjNCIC8qIE1hdGhNTEVsZW1lbnRGYWN0b3J5LmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgbmFtZSA9IE1hdGhNTEVsZW1lbnRGYWN0b3J5Lmg7IHBhdGggPSBEZXJp
dmVkU291cmNlcy9XZWJDb3JlL01hdGhNTEVsZW1lbnRGYWN0b3J5Lmg7IHNvdXJjZVRyZWUgPSBC
VUlMVF9QUk9EVUNUU19ESVI7IH07CiAJCTQ0QTI4QUFFMTJERkI4QkYwMEFFOTIzQiAvKiBNYXRo
TUxOYW1lcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBNYXRoTUxOYW1lcy5o
OyBwYXRoID0gRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9NYXRoTUxOYW1lcy5oOyBzb3VyY2VUcmVl
ID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQk0NEEyQjEwMDI1MjIwM0ExMDBEMUM3NzQgLyog
Rm9jdXNPcHRpb25zLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHRleHQ7IHBhdGggPSBGb2N1c09wdGlvbnMuaWRsOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk0NEM2RDhFMDI1MjIwODc2MDBEMzkzNzAgLyogRm9jdXNPcHRpb25zLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEZvY3VzT3B0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQk0NEM5OTE4MTBGM0QxRTBEMDA1ODY2NzAgLyogU2Nyb2xsYmFyVGhlbWVJT1MubW0gKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBTY3JvbGxiYXJUaGVtZUlPUy5t
bTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDRDOTkxODUwRjNEMUVCRTAwNTg2Njcw
IC8qIFNjcm9sbGJhclRoZW1lSU9TLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFNjcm9sbGJhclRoZW1lSU9TLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQ0Qzk5
MTlEMEYzRDIxMEUwMDU4NjY3MCAvKiBUaGVtZUlPUy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBUaGVtZUlPUy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMjEy
MTEsNiArMjEyMTYsOCBAQAogCQkJCTE0RENGM0IxMUI2QkUyMDgwMDYyRDRDMiAvKiBKU0NvdW50
UXVldWluZ1N0cmF0ZWd5LmggKi8sCiAJCQkJOTkwOEIwRkQxQkNBRDA3RDAwRUQwRjY2IC8qIEpT
RE9NQmluZGluZ0ludGVybmFsc0J1aWx0aW5zLmNwcCAqLywKIAkJCQk5QjAzRDgwNjFCQjMxMTBE
MDBCNzY0REEgLyogSlNET01CaW5kaW5nSW50ZXJuYWxzQnVpbHRpbnMuaCAqLywKKwkJCQk0NEEw
RUFBRTI1MjIwRTkyMDA0OUU3MTYgLyogSlNGb2N1c09wdGlvbnMuY3BwICovLAorCQkJCTQ0QTBF
QUFDMjUyMjBFOTIwMDQ5RTcxNiAvKiBKU0ZvY3VzT3B0aW9ucy5oICovLAogCQkJCUMyODA4MzNE
MUM2REMyMkMwMDE0NTFCNiAvKiBKU0ZvbnRGYWNlLmNwcCAqLywKIAkJCQlDMjgwODMzRTFDNkRD
MjJDMDAxNDUxQjYgLyogSlNGb250RmFjZS5oICovLAogCQkJCTFDMjRFRUE2MUM3MkE3QjQwMDgw
RjhGQyAvKiBKU0ZvbnRGYWNlU2V0LmNwcCAqLywKQEAgLTI5NDc1LDYgKzI5NDgyLDggQEAKIAkJ
CQlCNkQ5RDIzNDE0RUFCRDI2MDA5MEQ3NUUgLyogRm9jdXNFdmVudC5jcHAgKi8sCiAJCQkJQjZE
OUQyMzMxNEVBQkQyNjAwOTBENzVFIC8qIEZvY3VzRXZlbnQuaCAqLywKIAkJCQlCNkQ5RDI3MjE0
RUFCRjAzMDA5MEQ3NUUgLyogRm9jdXNFdmVudC5pZGwgKi8sCisJCQkJNDRDNkQ4RTAyNTIyMDg3
NjAwRDM5MzcwIC8qIEZvY3VzT3B0aW9ucy5oICovLAorCQkJCTQ0QTJCMTAwMjUyMjAzQTEwMEQx
Qzc3NCAvKiBGb2N1c09wdGlvbnMuaWRsICovLAogCQkJCUE4NTMxMjNDMTFEMDQ3MUIwMEQ0RDA3
NyAvKiBGcmFnbWVudFNjcmlwdGluZ1Blcm1pc3Npb24uaCAqLywKIAkJCQlDRDkyRjUxNzIyNjEw
MzgyMDBGODdCQjMgLyogRnVsbHNjcmVlbk1hbmFnZXIuY3BwICovLAogCQkJCUNEOTJGNTE2MjI2
MTAzODIwMEY4N0JCMyAvKiBGdWxsc2NyZWVuTWFuYWdlci5oICovLApAQCAtMzE0MzMsNiArMzE0
NDIsNyBAQAogCQkJCTE0OTkzQkU2MEIyRjJCMUMwMDUwNDk3RiAvKiBGb2N1c0NvbnRyb2xsZXIu
aCBpbiBIZWFkZXJzICovLAogCQkJCTA2MjI4Nzg0MEI0REIzMjIwMDBDMzRERiAvKiBGb2N1c0Rp
cmVjdGlvbi5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQjZEOUQyMzUxNEVBQkQyNjAwOTBENzVFIC8q
IEZvY3VzRXZlbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTQ0QzZEOEU5MjUyMjA4N0YwMEQzOTM3
MCAvKiBGb2N1c09wdGlvbnMuaCBpbiBIZWFkZXJzICovLAogCQkJCUIyQzNEQTY1MEQwMDZDRDYw
MEVGNkYyNiAvKiBGb250LmggaW4gSGVhZGVycyAqLywKIAkJCQkxQUMyRDg5RDFCMUUyOTFGMDBE
NTJFODcgLyogRm9udEFudGlhbGlhc2luZ1N0YXRlU2F2ZXIuaCBpbiBIZWFkZXJzICovLAogCQkJ
CUY0RTU3RURDMjEzRjNGNUYwMDRFQTk4RSAvKiBGb250QXR0cmlidXRlQ2hhbmdlcy5oIGluIEhl
YWRlcnMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5jcHAKaW5kZXggMjc1YjVkNzU4OTdhNGFhNGMxMTIw
OGI3MDAyYzkwNTVmYjc1YmM0Ny4uYjVjZGU4MTE4OGFhNDU0YWMxMWUzOWYwZTliMjg4ZWEzN2Nm
ODNmNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmNwcApAQCAtMzAwNSw3ICszMDA1LDEyIEBAIHN0YXRp
YyBSZWZQdHI8RWxlbWVudD4gZmluZEZpcnN0UHJvZ3JhbWF0aWNhbGx5Rm9jdXNhYmxlRWxlbWVu
dEluQ29tcG9zZWRUcmVlKEVsCiAgICAgcmV0dXJuIG51bGxwdHI7CiB9CiAKLXZvaWQgRWxlbWVu
dDo6Zm9jdXMoYm9vbCByZXN0b3JlUHJldmlvdXNTZWxlY3Rpb24sIEZvY3VzRGlyZWN0aW9uIGRp
cmVjdGlvbikKK3ZvaWQgRWxlbWVudDo6Zm9jdXMoY29uc3QgRm9jdXNPcHRpb25zJiBvcHRpb25z
KQoreworICAgIGZvY3VzKHRydWUsIEZvY3VzRGlyZWN0aW9uTm9uZSwgb3B0aW9ucy5wcmV2ZW50
U2Nyb2xsID8gUHJldmVudFNjcm9sbDo6WWVzIDogUHJldmVudFNjcm9sbDo6Tm8pOworfQorCit2
b2lkIEVsZW1lbnQ6OmZvY3VzKGJvb2wgcmVzdG9yZVByZXZpb3VzU2VsZWN0aW9uLCBGb2N1c0Rp
cmVjdGlvbiBkaXJlY3Rpb24sIFByZXZlbnRTY3JvbGwgcHJldmVudFNjcm9sbCkKIHsKICAgICBp
ZiAoIWlzQ29ubmVjdGVkKCkpCiAgICAgICAgIHJldHVybjsKQEAgLTMwNTMsNyArMzA1OCw4IEBA
IHZvaWQgRWxlbWVudDo6Zm9jdXMoYm9vbCByZXN0b3JlUHJldmlvdXNTZWxlY3Rpb24sIEZvY3Vz
RGlyZWN0aW9uIGRpcmVjdGlvbikKICAgICAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBu
ZXdUYXJnZXQtPnJldmVhbEZvY3VzZWRFbGVtZW50KHJlc3RvcmVQcmV2aW91c1NlbGVjdGlvbiA/
IFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZTo6UmVzdG9yZSA6IFNlbGVjdGlvblJlc3RvcmF0aW9u
TW9kZTo6U2V0RGVmYXVsdCk7CisgICAgaWYgKHByZXZlbnRTY3JvbGwgPT0gUHJldmVudFNjcm9s
bDo6Tm8pCisgICAgICAgIG5ld1RhcmdldC0+cmV2ZWFsRm9jdXNlZEVsZW1lbnQocmVzdG9yZVBy
ZXZpb3VzU2VsZWN0aW9uID8gU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlOjpSZXN0b3JlIDogU2Vs
ZWN0aW9uUmVzdG9yYXRpb25Nb2RlOjpTZXREZWZhdWx0KTsKIH0KIAogdm9pZCBFbGVtZW50Ojpy
ZXZlYWxGb2N1c2VkRWxlbWVudChTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGUgc2VsZWN0aW9uTW9k
ZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmggYi9Tb3VyY2UvV2Vi
Q29yZS9kb20vRWxlbWVudC5oCmluZGV4IDYxMWUxMTA4ZDFjZWUwZjYzMWE3Nzg3MzQ2YWU5NWFi
MjA4NGI2MTMuLjgwNGU3OTM2ZTAxZTQ5MjJjMTcwYThhY2Q1ZGFiNjI2NDgyMzQ5ODQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUv
ZG9tL0VsZW1lbnQuaApAQCAtMjcsNiArMjcsNyBAQAogI2luY2x1ZGUgIkFYVGV4dFN0YXRlQ2hh
bmdlSW50ZW50LmgiCiAjaW5jbHVkZSAiRG9jdW1lbnQuaCIKICNpbmNsdWRlICJFbGVtZW50RGF0
YS5oIgorI2luY2x1ZGUgIkZvY3VzT3B0aW9ucy5oIgogI2luY2x1ZGUgIkhUTUxOYW1lcy5oIgog
I2luY2x1ZGUgIlNjcm9sbFR5cGVzLmgiCiAjaW5jbHVkZSAiU2hhZG93Um9vdE1vZGUuaCIKQEAg
LTQwMCw3ICs0MDEsOSBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCBTdHJpbmcgdGFyZ2V0KCkgY29u
c3QgeyByZXR1cm4gU3RyaW5nKCk7IH0KIAogICAgIHN0YXRpYyBBWFRleHRTdGF0ZUNoYW5nZUlu
dGVudCBkZWZhdWx0Rm9jdXNUZXh0U3RhdGVDaGFuZ2VJbnRlbnQoKSB7IHJldHVybiBBWFRleHRT
dGF0ZUNoYW5nZUludGVudChBWFRleHRTdGF0ZUNoYW5nZVR5cGVTZWxlY3Rpb25Nb3ZlLCBBWFRl
eHRTZWxlY3Rpb24geyBBWFRleHRTZWxlY3Rpb25EaXJlY3Rpb25EaXNjb250aWd1b3VzLCBBWFRl
eHRTZWxlY3Rpb25HcmFudWxhcml0eVVua25vd24sIHRydWUgfSk7IH0KLSAgICB2aXJ0dWFsIHZv
aWQgZm9jdXMoYm9vbCByZXN0b3JlUHJldmlvdXNTZWxlY3Rpb24gPSB0cnVlLCBGb2N1c0RpcmVj
dGlvbiA9IEZvY3VzRGlyZWN0aW9uTm9uZSk7CisgICAgdm9pZCBmb2N1cyhjb25zdCBGb2N1c09w
dGlvbnMmKTsKKyAgICBlbnVtIGNsYXNzIFByZXZlbnRTY3JvbGwgeyBObywgWWVzIH07CisgICAg
dmlydHVhbCB2b2lkIGZvY3VzKGJvb2wgcmVzdG9yZVByZXZpb3VzU2VsZWN0aW9uID0gdHJ1ZSwg
Rm9jdXNEaXJlY3Rpb24gPSBGb2N1c0RpcmVjdGlvbk5vbmUsIFByZXZlbnRTY3JvbGwgPSBQcmV2
ZW50U2Nyb2xsOjpObyk7CiAgICAgdm9pZCByZXZlYWxGb2N1c2VkRWxlbWVudChTZWxlY3Rpb25S
ZXN0b3JhdGlvbk1vZGUpOwogICAgIHZpcnR1YWwgUmVmUHRyPEVsZW1lbnQ+IGZvY3VzQXBwZWFy
YW5jZVVwZGF0ZVRhcmdldCgpOwogICAgIHZpcnR1YWwgdm9pZCB1cGRhdGVGb2N1c0FwcGVhcmFu
Y2UoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlLCBTZWxlY3Rpb25SZXZlYWxNb2RlID0gU2VsZWN0
aW9uUmV2ZWFsTW9kZTo6UmV2ZWFsKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9G
b2N1c09wdGlvbnMuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Gb2N1c09wdGlvbnMuaApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi40ZmUwODczOGRjYWY5YTI2OGNkNzFmOTk4YzgzZTc3YjFmNTJmN2IyCi0tLSAvZGV2L251
bGwKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0ZvY3VzT3B0aW9ucy5oCkBAIC0wLDAgKzEsMzQg
QEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAgSWdhbGlhIFMuTC4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEu
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICog
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExF
IElOQy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCisg
KiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRV
VEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsg
T1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9S
WQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZ
LCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5H
IElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdt
YSBvbmNlCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworc3RydWN0IEZvY3VzT3B0aW9ucyB7Cisg
ICAgYm9vbCBwcmV2ZW50U2Nyb2xsIHsgZmFsc2UgfTsKK307CisKK30gLy8gbmFtZXNwYWNlIFdl
YkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Gb2N1c09wdGlvbnMuaWRsIGIv
U291cmNlL1dlYkNvcmUvZG9tL0ZvY3VzT3B0aW9ucy5pZGwKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMTczOTAyMzk3
NDg0M2VlZjA2NDJlMDU3ZDYzZDBjMmI4MTc4YmUwYwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2RvbS9Gb2N1c09wdGlvbnMuaWRsCkBAIC0wLDAgKzEsMjggQEAKKy8qCisgKiBD
b3B5cmlnaHQgKEMpIDIwMjAgSWdhbGlhIFMuTC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisg
KiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1
Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlv
bi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJ
UycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJ
U0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCisgKiBDT05UUklCVVRP
UlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lB
TCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1Ig
U0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1Mg
SU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElB
QklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisg
KiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBU
SEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworZGljdGlvbmFyeSBGb2N1c09w
dGlvbnMgeworICAgYm9vbGVhbiBwcmV2ZW50U2Nyb2xsID0gZmFsc2U7Cit9OwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGFiZWxFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2h0bWwvSFRNTExhYmVsRWxlbWVudC5jcHAKaW5kZXggMzdmOWNhNTZlODBkNzMyNDEwM2Ix
YTEyNmZjMjJjNjY1YTA4YWQzYy4uMzExNzIzYjQyNTc3NGNiMzA1ZTM4NWNkNzgzNGJjOTU0ZWRm
N2M0OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGFiZWxFbGVtZW50LmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMYWJlbEVsZW1lbnQuY3BwCkBAIC0xNzIs
MTQgKzE3MiwxNCBAQCBib29sIEhUTUxMYWJlbEVsZW1lbnQ6OndpbGxSZXNwb25kVG9Nb3VzZUNs
aWNrRXZlbnRzKCkKICAgICByZXR1cm4gKGVsZW1lbnQgJiYgZWxlbWVudC0+d2lsbFJlc3BvbmRU
b01vdXNlQ2xpY2tFdmVudHMoKSkgfHwgSFRNTEVsZW1lbnQ6OndpbGxSZXNwb25kVG9Nb3VzZUNs
aWNrRXZlbnRzKCk7CiB9CiAKLXZvaWQgSFRNTExhYmVsRWxlbWVudDo6Zm9jdXMoYm9vbCByZXN0
b3JlUHJldmlvdXNTZWxlY3Rpb24sIEZvY3VzRGlyZWN0aW9uIGRpcmVjdGlvbikKK3ZvaWQgSFRN
TExhYmVsRWxlbWVudDo6Zm9jdXMoYm9vbCByZXN0b3JlUHJldmlvdXNTZWxlY3Rpb24sIEZvY3Vz
RGlyZWN0aW9uIGRpcmVjdGlvbiwgUHJldmVudFNjcm9sbCBwcmV2ZW50U2Nyb2xsKQogewogICAg
IFJlZjxIVE1MTGFiZWxFbGVtZW50PiBwcm90ZWN0ZWRUaGlzKCp0aGlzKTsKICAgICBpZiAoZG9j
dW1lbnQoKS5oYXZlU3R5bGVzaGVldHNMb2FkZWQoKSkgewogICAgICAgICBkb2N1bWVudCgpLnVw
ZGF0ZUxheW91dCgpOwogICAgICAgICBpZiAoaXNGb2N1c2FibGUoKSkgewogICAgICAgICAgICAg
Ly8gVGhlIHZhbHVlIG9mIHJlc3RvcmVQcmV2aW91c1NlbGVjdGlvbiBpcyBub3QgdXNlZCBmb3Ig
bGFiZWwgZWxlbWVudHMgYXMgaXQgZG9lc24ndCBvdmVycmlkZSB1cGRhdGVGb2N1c0FwcGVhcmFu
Y2UuCi0gICAgICAgICAgICBFbGVtZW50Ojpmb2N1cyhyZXN0b3JlUHJldmlvdXNTZWxlY3Rpb24s
IGRpcmVjdGlvbik7CisgICAgICAgICAgICBFbGVtZW50Ojpmb2N1cyhyZXN0b3JlUHJldmlvdXNT
ZWxlY3Rpb24sIGRpcmVjdGlvbiwgcHJldmVudFNjcm9sbCk7CiAgICAgICAgICAgICByZXR1cm47
CiAgICAgICAgIH0KICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxM
YWJlbEVsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExhYmVsRWxlbWVudC5oCmlu
ZGV4IDQ2NjBmMDY3NzczNTFjZTZkYzg5NWM4MWJiMDcyNDdjOWM0MzIwZWUuLjkwYzY3YWI5ZDAy
NWEwZTlkZWY5MGFlZTVmOGMzN2MxODQ0ODE1ZTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTExhYmVsRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExh
YmVsRWxlbWVudC5oCkBAIC01MSw3ICs1MSw3IEBAIHByaXZhdGU6CiAgICAgLy8gT3ZlcnJpZGRl
biB0byBlaXRoZXIgY2xpY2soKSBvciBmb2N1cygpIHRoZSBjb3JyZXNwb25kaW5nIGNvbnRyb2wu
CiAgICAgdm9pZCBkZWZhdWx0RXZlbnRIYW5kbGVyKEV2ZW50JikgZmluYWw7CiAKLSAgICB2b2lk
IGZvY3VzKGJvb2wgcmVzdG9yZVByZXZpb3VzU2VsZWN0aW9uLCBGb2N1c0RpcmVjdGlvbikgZmlu
YWw7CisgICAgdm9pZCBmb2N1cyhib29sIHJlc3RvcmVQcmV2aW91c1NlbGVjdGlvbiwgRm9jdXNE
aXJlY3Rpb24sIFByZXZlbnRTY3JvbGwpIGZpbmFsOwogCiAgICAgYm9vbCBpc0ludGVyYWN0aXZl
Q29udGVudCgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIHRydWU7IH0KIH07CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMZWdlbmRFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTExlZ2VuZEVsZW1lbnQuY3BwCmluZGV4IGExZTU3Y2ZlNGQwYjFmMjA4MDA3MWY0
NzJkNDQ5ZjZiNjA4YTIyNzYuLjQzYzM4YWIyMTQ5MmU0MDgzNDY0MDA1ZTMzODNlOGNhM2UwOTg3
MzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExlZ2VuZEVsZW1lbnQuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExlZ2VuZEVsZW1lbnQuY3BwCkBAIC01Nywx
MiArNTcsMTIgQEAgUmVmUHRyPEhUTUxGb3JtQ29udHJvbEVsZW1lbnQ+IEhUTUxMZWdlbmRFbGVt
ZW50Ojphc3NvY2lhdGVkQ29udHJvbCgpCiAgICAgcmV0dXJuIGRlc2NlbmRhbnRzT2ZUeXBlPEhU
TUxGb3JtQ29udHJvbEVsZW1lbnQ+KCplbmNsb3NpbmdGaWVsZHNldCkuZmlyc3QoKTsKIH0KIAot
dm9pZCBIVE1MTGVnZW5kRWxlbWVudDo6Zm9jdXMoYm9vbCByZXN0b3JlUHJldmlvdXNTZWxlY3Rp
b24sIEZvY3VzRGlyZWN0aW9uIGRpcmVjdGlvbikKK3ZvaWQgSFRNTExlZ2VuZEVsZW1lbnQ6OmZv
Y3VzKGJvb2wgcmVzdG9yZVByZXZpb3VzU2VsZWN0aW9uLCBGb2N1c0RpcmVjdGlvbiBkaXJlY3Rp
b24sIFByZXZlbnRTY3JvbGwgcHJldmVudFNjcm9sbCkKIHsKICAgICBpZiAoZG9jdW1lbnQoKS5o
YXZlU3R5bGVzaGVldHNMb2FkZWQoKSkgewogICAgICAgICBkb2N1bWVudCgpLnVwZGF0ZUxheW91
dElnbm9yZVBlbmRpbmdTdHlsZXNoZWV0cygpOwogICAgICAgICBpZiAoaXNGb2N1c2FibGUoKSkg
ewotICAgICAgICAgICAgRWxlbWVudDo6Zm9jdXMocmVzdG9yZVByZXZpb3VzU2VsZWN0aW9uLCBk
aXJlY3Rpb24pOworICAgICAgICAgICAgRWxlbWVudDo6Zm9jdXMocmVzdG9yZVByZXZpb3VzU2Vs
ZWN0aW9uLCBkaXJlY3Rpb24sIHByZXZlbnRTY3JvbGwpOwogICAgICAgICAgICAgcmV0dXJuOwog
ICAgICAgICB9CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGVn
ZW5kRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGVnZW5kRWxlbWVudC5oCmlu
ZGV4IDJkZjYyMjk3MWYxMzc5MjJkYzM4Yzg4NTQ5MmQyZjM4NTQ2ZjJhMWEuLmMxYmU2YTI2YzZi
MmQ4MWNkNjdkOTA2Yzk5YTYxMGUyOGY0MGEzZWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTExlZ2VuZEVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxM
ZWdlbmRFbGVtZW50LmgKQEAgLTQzLDcgKzQzLDcgQEAgcHJpdmF0ZToKICAgICBSZWZQdHI8SFRN
TEZvcm1Db250cm9sRWxlbWVudD4gYXNzb2NpYXRlZENvbnRyb2woKTsKIAogICAgIGJvb2wgYWNj
ZXNzS2V5QWN0aW9uKGJvb2wgc2VuZE1vdXNlRXZlbnRzKSBmaW5hbDsKLSAgICB2b2lkIGZvY3Vz
KGJvb2wgcmVzdG9yZVByZXZpb3VzU2VsZWN0aW9uLCBGb2N1c0RpcmVjdGlvbikgZmluYWw7Cisg
ICAgdm9pZCBmb2N1cyhib29sIHJlc3RvcmVQcmV2aW91c1NlbGVjdGlvbiwgRm9jdXNEaXJlY3Rp
b24sIFByZXZlbnRTY3JvbGwpIGZpbmFsOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MT3JGb3JlaWduRWxlbWVudC5pZGwg
Yi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPckZvcmVpZ25FbGVtZW50LmlkbAppbmRleCBmM2Ix
MzMyZWJhZjdhOGMzOWZiMjU0YmI1YzhjMDM2ZTQzZTJlMTg0Li5iNGE3ZDEzYTc2MDFiNzNmZmY3
ZGY3ZmQ4MjM1ZWNkYzdlNWNhMmMyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxPckZvcmVpZ25FbGVtZW50LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPckZv
cmVpZ25FbGVtZW50LmlkbApAQCAtMzQsNyArMzQsNyBAQCBpbnRlcmZhY2UgbWl4aW4gSFRNTE9y
Rm9yZWlnbkVsZW1lbnQgewogICAgIC8vIEZJWE1FOiBJbXBsZW1lbnQgJ2F1dG9mb2N1cycuCiAg
ICAgLy8gW0NFUmVhY3Rpb25zXSBhdHRyaWJ1dGUgYm9vbGVhbiBhdXRvZm9jdXM7CiAgICAgW0NF
UmVhY3Rpb25zLCBJbXBsZW1lbnRlZEFzPXRhYkluZGV4Rm9yQmluZGluZ3NdIGF0dHJpYnV0ZSBs
b25nIHRhYkluZGV4OwotICAgIC8vIEZJTVhFOiBmb2N1cygpIGlzIHNwZWNpZmllZCB0byB0YWtl
IGFuIG9wdGlvbmFsIEZvY3VzT3B0aW9ucy4gSW1wbGVtZW50IHRoYXQuCi0gICAgdW5kZWZpbmVk
IGZvY3VzKCk7CisgICAgdW5kZWZpbmVkIGZvY3VzKG9wdGlvbmFsIEZvY3VzT3B0aW9ucyBvcHRp
b25zKTsKICAgICB1bmRlZmluZWQgYmx1cigpOwogfTsKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDY4NDNlMTdmY2U5NDU2
MDlmMDZiYTlmNGI3NzUzZGNhM2JhYWY5NTYuLmZiOTBiNzIwMzhkYjM5ZTMwNzdmYTE0MjEwODQz
YTA0NWRmZmI1MzIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAyMC0wOS0zMCAgUm9iIEJ1aXMg
IDxyYnVpc0BpZ2FsaWEuY29tPgorCisgICAgICAgIEVuYWJsZSBhYmlsaXR5IHRvIHByZXZlbnQg
c2Nyb2xsaW5nIGluIEVsZW1lbnQuZm9jdXMoKQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc4NTgzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9pb3Mtd2syL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9pbnRlcmFjdGlvbi9mb2N1cy9wcm9jZXNzaW5nLW1vZGVsL3By
ZXZlbnRTY3JvbGwtdGV4dGFyZWEtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIHBs
YXRmb3JtL21hYy13azEvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2ludGVy
YWN0aW9uL2ZvY3VzL3Byb2Nlc3NpbmctbW9kZWwvcHJldmVudFNjcm9sbC10ZXh0YXJlYS1leHBl
Y3RlZC50eHQ6IFJlbW92ZWQuCisKIDIwMjAtMDktMjkgIFJ5b3N1a2UgTml3YSAgPHJuaXdhQHdl
YmtpdC5vcmc+CiAKICAgICAgICAgQ3Jhc2ggd2hpbGUgbG9hZGluZyBhIGNvbmZsdWVuY2UgcGFn
ZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKaW5kZXggODNjYjQyZDViYTk0ZWYyNWMyNWMw
MTBhNWViMTVjZGJiMzE4OGFkZC4uY2ExY2ZlYjQ3MzRkODMwODc3YWU3OTQyMGRhNzFlOWY2Yzg3
MTI0MiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZworKysg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTIgQEAKKzIw
MjAtMDktMzAgIFJvYiBCdWlzICA8cmJ1aXNAaWdhbGlhLmNvbT4KKworICAgICAgICBFbmFibGUg
YWJpbGl0eSB0byBwcmV2ZW50IHNjcm9sbGluZyBpbiBFbGVtZW50LmZvY3VzKCkKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3ODU4MworCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRl
c3RzL2h0bWwvaW50ZXJhY3Rpb24vZm9jdXMvcHJvY2Vzc2luZy1tb2RlbC9wcmV2ZW50U2Nyb2xs
LXRleHRhcmVhLWV4cGVjdGVkLnR4dDoKKwogMjAyMC0wOS0yOSAgS2VpdGggTWlsbGVyICA8a2Vp
dGhfbWlsbGVyQGFwcGxlLmNvbT4KIAogICAgICAgICBDU1Mgc2VyaWFsaXphdGlvbiBleHBlY3Rz
IGNvbW1lbnRzIGJldHdlZW4gY2VydGFpbiB0b2tlbnMKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9pbnRlcmFjdGlvbi9mb2N1cy9w
cm9jZXNzaW5nLW1vZGVsL3ByZXZlbnRTY3JvbGwtdGV4dGFyZWEtZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2ludGVyYWN0aW9u
L2ZvY3VzL3Byb2Nlc3NpbmctbW9kZWwvcHJldmVudFNjcm9sbC10ZXh0YXJlYS1leHBlY3RlZC50
eHQKaW5kZXggMDhhYWZiMzE2MzYwODQ5MDg3OTgwZTAwNTA0MmQ3Yzg1YWRhODY1Yi4uYzczNGE2
OWRlOWE1Y2ZmNWFkNTVlZWY5Y2RkMWQ2ZDJlZWNlNmQzYSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2ludGVyYWN0aW9uL2ZvY3Vz
L3Byb2Nlc3NpbmctbW9kZWwvcHJldmVudFNjcm9sbC10ZXh0YXJlYS1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2ludGVy
YWN0aW9uL2ZvY3VzL3Byb2Nlc3NpbmctbW9kZWwvcHJldmVudFNjcm9sbC10ZXh0YXJlYS1leHBl
Y3RlZC50eHQKQEAgLTEsNCArMSw0IEBACiAKIAotRkFJTCBwcmV2ZW50U2Nyb2xsOiB0cnVlIG9u
IGEgdGV4dGFyZWEgZWxlbWVudCBhc3NlcnRfZXF1YWxzOiBURVhUQVJFQTogU2hvdWxkIG5vdCBo
YXZlIHNjcm9sbGVkIGFmdGVyIGEgY291cGxlIGV2ZW50IGxvb3AgdGlja3MgZXhwZWN0ZWQgMCBi
dXQgZ290IDkyMAorUEFTUyBwcmV2ZW50U2Nyb2xsOiB0cnVlIG9uIGEgdGV4dGFyZWEgZWxlbWVu
dAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3Mtd2syL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9pbnRlcmFjdGlvbi9mb2N1cy9wcm9jZXNzaW5nLW1v
ZGVsL3ByZXZlbnRTY3JvbGwtdGV4dGFyZWEtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vaW9zLXdrMi9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvaW50ZXJh
Y3Rpb24vZm9jdXMvcHJvY2Vzc2luZy1tb2RlbC9wcmV2ZW50U2Nyb2xsLXRleHRhcmVhLWV4cGVj
dGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYzczNGE2OWRlOWE1Y2ZmNWFk
NTVlZWY5Y2RkMWQ2ZDJlZWNlNmQzYS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3Mtd2syL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9pbnRlcmFjdGlvbi9mb2N1cy9wcm9jZXNzaW5nLW1vZGVs
L3ByZXZlbnRTY3JvbGwtdGV4dGFyZWEtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEs
NCArMCwwIEBACi0KLQotUEFTUyBwcmV2ZW50U2Nyb2xsOiB0cnVlIG9uIGEgdGV4dGFyZWEgZWxl
bWVudAotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2sxL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9pbnRlcmFjdGlvbi9mb2N1cy9wcm9jZXNzaW5n
LW1vZGVsL3ByZXZlbnRTY3JvbGwtdGV4dGFyZWEtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
cGxhdGZvcm0vbWFjLXdrMS9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvaW50
ZXJhY3Rpb24vZm9jdXMvcHJvY2Vzc2luZy1tb2RlbC9wcmV2ZW50U2Nyb2xsLXRleHRhcmVhLWV4
cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNTJhYmFiYmZiZDcyN2Vj
ZGZiYmNkZGQ2Y2M4ZTEwMGQzZGQ5Y2FmNS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2sxL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9pbnRlcmFjdGlvbi9mb2N1cy9wcm9jZXNzaW5nLW1v
ZGVsL3ByZXZlbnRTY3JvbGwtdGV4dGFyZWEtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAg
LTEsNCArMCwwIEBACi0KLQotRkFJTCBwcmV2ZW50U2Nyb2xsOiB0cnVlIG9uIGEgdGV4dGFyZWEg
ZWxlbWVudCBhc3NlcnRfZXF1YWxzOiBURVhUQVJFQTogU2hvdWxkIG5vdCBoYXZlIHNjcm9sbGVk
IGV4cGVjdGVkIDAgYnV0IGdvdCA5MjAKLQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>410308</attachid>
            <date>2020-10-02 03:43:45 -0700</date>
            <delta_ts>2020-10-02 12:19:45 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-178583-20201002114344.patch</filename>
            <type>text/plain</type>
            <size>24986</size>
            <attacher name="Rob Buis">rbuis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY3ODY5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOGEyOGQwNzYyNGJkNTRk
ZDc2MTBiNDcyMTdkNDBkZjdmNzg3NWNlYS4uYTczNmZkNDZkZTY5OGZhZDQxOTlkNTQxZGQyZmFj
MzA5ZDlkMjI3NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQwIEBACisyMDIwLTEwLTAyICBSb2Ig
QnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgRW5hYmxlIGFiaWxpdHkgdG8gcHJl
dmVudCBzY3JvbGxpbmcgaW4gRWxlbWVudC5mb2N1cygpCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzg1ODMKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgRm9jdXNPcHRpb25zIHBhcmFtZXRlciB0byB0
aGUgZm9jdXMgbWV0aG9kIFsxXSBib3RoCisgICAgICAgIHRvIHRoZSBJREwgYXMgdGhlIEMrKyBz
aWRlLiBDaGFuZ2UgRWxlbWVudC5mb2N1cyB0byBub3QKKyAgICAgICAgc2Nyb2xsIGlmIEZvY3Vz
T3B0aW9ucy5wcmV2ZW50U2Nyb2xsIGlzIHRydWUuCisKKyAgICAgICAgQmVoYXZpb3IgbWF0Y2hl
cyBDaHJvbWUgYW5kIEZpcmVmb3guCisKKyAgICAgICAgVGVzdDogaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9odG1sL2ludGVyYWN0aW9uL2ZvY3VzL3Byb2Nlc3NpbmctbW9kZWwvcHJl
dmVudFNjcm9sbC10ZXh0Lmh0bWwKKworICAgICAgICBbMV0gaHR0cHM6Ly9odG1sLnNwZWMud2hh
dHdnLm9yZy9tdWx0aXBhZ2UvaW50ZXJhY3Rpb24uaHRtbCNkb20tZm9jdXMKKworICAgICAgICAq
IENNYWtlTGlzdHMudHh0OgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLWlucHV0LnhjZmlsZWxp
c3Q6CisgICAgICAgICogRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3Q6CisgICAgICAg
ICogRGVyaXZlZFNvdXJjZXMubWFrZToKKyAgICAgICAgKiBIZWFkZXJzLmNtYWtlOgorICAgICAg
ICAqIFNvdXJjZXMudHh0OgorICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvajoKKyAgICAgICAgKiBkb20vRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpFbGVt
ZW50Ojpmb2N1cyk6CisgICAgICAgICogZG9tL0VsZW1lbnQuaDoKKyAgICAgICAgKiBkb20vRm9j
dXNPcHRpb25zLmg6IENvcGllZCBmcm9tIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE9yRm9yZWln
bkVsZW1lbnQuaWRsLgorICAgICAgICAqIGRvbS9Gb2N1c09wdGlvbnMuaWRsOiBDb3BpZWQgZnJv
bSBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPckZvcmVpZ25FbGVtZW50LmlkbC4KKyAgICAgICAg
KiBodG1sL0hUTUxMYWJlbEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTExhYmVs
RWxlbWVudDo6Zm9jdXMpOgorICAgICAgICAqIGh0bWwvSFRNTExhYmVsRWxlbWVudC5oOgorICAg
ICAgICAqIGh0bWwvSFRNTExlZ2VuZEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRN
TExlZ2VuZEVsZW1lbnQ6OmZvY3VzKToKKyAgICAgICAgKiBodG1sL0hUTUxMZWdlbmRFbGVtZW50
Lmg6CisgICAgICAgICogaHRtbC9IVE1MT3JGb3JlaWduRWxlbWVudC5pZGw6CisKIDIwMjAtMTAt
MDIgIEtpbW1vIEtpbm51bmVuICA8a2tpbm51bmVuQGFwcGxlLmNvbT4KIAogICAgICAgICBbaU9T
IFdLMV0gQ3Jhc2hlcyB3aGVuIHVzaW5nIEFOR0xFIFdlYkdMIGZyb20gYW5vdGhlciB0aHJlYWQK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0IGIvU291cmNlL1dlYkNv
cmUvQ01ha2VMaXN0cy50eHQKaW5kZXggMTk0MzgwMjNjNDM1OGIwNjA2MTAzYzY1YzQ3ZDU4OWY3
ZWU1YzM0Yy4uOWNhZDFlNzkzNDg4ODNjMGE3ODIwOWNhZTlmNDFmODUxMDgzZWY3MSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIvU291cmNlL1dlYkNvcmUv
Q01ha2VMaXN0cy50eHQKQEAgLTc5OSw2ICs3OTksNyBAQCBzZXQoV2ViQ29yZV9OT05fU1ZHX0lE
TF9GSUxFUwogICAgIGRvbS9FdmVudE1vZGlmaWVySW5pdC5pZGwKICAgICBkb20vRXZlbnRUYXJn
ZXQuaWRsCiAgICAgZG9tL0ZvY3VzRXZlbnQuaWRsCisgICAgZG9tL0ZvY3VzT3B0aW9ucy5pZGwK
ICAgICBkb20vR2xvYmFsRXZlbnRIYW5kbGVycytQb2ludGVyRXZlbnRzLmlkbAogICAgIGRvbS9H
bG9iYWxFdmVudEhhbmRsZXJzLmlkbAogICAgIGRvbS9IYXNoQ2hhbmdlRXZlbnQuaWRsCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1pbnB1dC54Y2ZpbGVsaXN0IGIv
U291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdAppbmRleCBhOGRj
Zjk2OTgyYTQwODI5OTc0NTgyNTgzNGI3MTYwYjQ1ZDI3ZjVmLi5mMDZiMWU1YjMwZmYyMDNhMGZh
MTIyM2JlM2QxYmMzMzczZWUwNDE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVk
U291cmNlcy1pbnB1dC54Y2ZpbGVsaXN0CisrKyBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3Vy
Y2VzLWlucHV0LnhjZmlsZWxpc3QKQEAgLTcyMiw2ICs3MjIsNyBAQCAkKFBST0pFQ1RfRElSKS9k
b20vRXZlbnROYW1lcy5pbgogJChQUk9KRUNUX0RJUikvZG9tL0V2ZW50VGFyZ2V0LmlkbAogJChQ
Uk9KRUNUX0RJUikvZG9tL0V2ZW50VGFyZ2V0RmFjdG9yeS5pbgogJChQUk9KRUNUX0RJUikvZG9t
L0ZvY3VzRXZlbnQuaWRsCiskKFBST0pFQ1RfRElSKS9kb20vRm9jdXNPcHRpb25zLmlkbAogJChQ
Uk9KRUNUX0RJUikvZG9tL0dsb2JhbEV2ZW50SGFuZGxlcnMrUG9pbnRlckV2ZW50cy5pZGwKICQo
UFJPSkVDVF9ESVIpL2RvbS9HbG9iYWxFdmVudEhhbmRsZXJzLmlkbAogJChQUk9KRUNUX0RJUikv
ZG9tL0hhc2hDaGFuZ2VFdmVudC5pZGwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2
ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0IGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJj
ZXMtb3V0cHV0LnhjZmlsZWxpc3QKaW5kZXggMzY3OTVlYTQxMzM4ZWRkYTg0YWQyODM0ZjY4OGRl
ZDMyMDRkZTBkOC4uZjAzY2VjZmI4ZTI5NDllZjQ2NWZlYjVkZTczZGVhNGRkYmViOWVlNSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3QK
KysrIGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3QKQEAg
LTc3Myw2ICs3NzMsOCBAQCAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2Vi
Q29yZS9KU0ZpbGxNb2RlLmNwcAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2Vz
L1dlYkNvcmUvSlNGaWxsTW9kZS5oCiAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJj
ZXMvV2ViQ29yZS9KU0ZvY3VzRXZlbnQuY3BwCiAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZl
ZFNvdXJjZXMvV2ViQ29yZS9KU0ZvY3VzRXZlbnQuaAorJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rl
cml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNGb2N1c09wdGlvbnMuY3BwCiskKEJVSUxUX1BST0RVQ1RT
X0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0ZvY3VzT3B0aW9ucy5oCiAkKEJVSUxUX1BS
T0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0ZvbnRGYWNlLmNwcAogJChCVUlM
VF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNGb250RmFjZS5oCiAkKEJV
SUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0ZvbnRGYWNlU2V0LmNw
cApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZSBiL1NvdXJj
ZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKaW5kZXggMmMxYzEwODlhZDVhYjZiNzU5ZjUw
NmRjMWFlOTAzY2ZmMjA2MDZmNi4uNDcxYWRiMDkwZmY4NzA2NTZmMDVjN2FjYjVlNzQxNzI0NTIz
YmZhZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCkBAIC03NTIsNiArNzUyLDcgQEAg
SlNfQklORElOR19JRExTID0gXAogICAgICQoV2ViQ29yZSkvZG9tL0V2ZW50TW9kaWZpZXJJbml0
LmlkbCBcCiAgICAgJChXZWJDb3JlKS9kb20vRXZlbnRUYXJnZXQuaWRsIFwKICAgICAkKFdlYkNv
cmUpL2RvbS9Gb2N1c0V2ZW50LmlkbCBcCisgICAgJChXZWJDb3JlKS9kb20vRm9jdXNPcHRpb25z
LmlkbCBcCiAgICAgJChXZWJDb3JlKS9kb20vR2xvYmFsRXZlbnRIYW5kbGVycy5pZGwgXAogICAg
ICQoV2ViQ29yZSkvZG9tL0dsb2JhbEV2ZW50SGFuZGxlcnMrUG9pbnRlckV2ZW50cy5pZGwgXAog
ICAgICQoV2ViQ29yZSkvZG9tL0hhc2hDaGFuZ2VFdmVudC5pZGwgXApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZSBiL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UK
aW5kZXggYzg3NDhhMjE2MjdjYzMzNGNlMjJiZTQ2OTNlNmZjODUzZmUzYTYwZC4uMmI4YWE2OTg4
MTg2ZGI0YTg5NjZhMzgzYTM0OTYzYTY5NzA2YzEyNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvSGVhZGVycy5jbWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlCkBAIC00
MjYsNiArNDI2LDcgQEAgc2V0KFdlYkNvcmVfUFJJVkFURV9GUkFNRVdPUktfSEVBREVSUwogICAg
IGRvbS9FeGNlcHRpb25Db2RlLmgKICAgICBkb20vRXhjZXB0aW9uRGF0YS5oCiAgICAgZG9tL0V4
Y2VwdGlvbk9yLmgKKyAgICBkb20vRm9jdXNPcHRpb25zLmgKICAgICBkb20vRnJhZ21lbnRTY3Jp
cHRpbmdQZXJtaXNzaW9uLmgKICAgICBkb20vRnVsbHNjcmVlbk1hbmFnZXIuaAogICAgIGRvbS9H
Q1JlYWNoYWJsZVJlZi5oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dCBi
L1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0CmluZGV4IGM3ZWNmZGQxNTVjNTI4MGQ1ODU0YmZi
NTJiZWJlYTAyODRhZGI3YTMuLjE2ZjdhZGZkNDIxYjc2MDk5NTk0ZmQwNDZkMWRjNDlhMjk2NDg1
NzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0CisrKyBiL1NvdXJjZS9X
ZWJDb3JlL1NvdXJjZXMudHh0CkBAIC0yOTA3LDYgKzI5MDcsNyBAQCBKU0ZpbGVTeXN0ZW1FbnRy
eUNhbGxiYWNrLmNwcAogSlNGaWxlU3lzdGVtRmlsZUVudHJ5LmNwcAogSlNGaWxsTW9kZS5jcHAK
IEpTRm9jdXNFdmVudC5jcHAKK0pTRm9jdXNPcHRpb25zLmNwcAogSlNGb250RmFjZS5jcHAKIEpT
Rm9udEZhY2VTZXQuY3BwCiBKU0dQVUJpbmRHcm91cExheW91dEJpbmRpbmcuY3BwCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9T
b3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggNmQz
OTdlZGQzNmZhYmE5M2MyOGU1YjNjZjM1NDIyMDI5ZWNmZTRjZC4uNWE0OWE0MGQ1NTAyOTZiYzA4
ODhjOWRlY2I3MjM0YTcxZjc5OTI4ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29y
ZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMTIwOCw2ICsxMjA4LDcgQEAKIAkJNDRBMjBE
QjkwRjg0MTY2QzAwQjNFMUZFIC8qIFdlYkNvcmVVUkxSZXNwb25zZUlPUy5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDRBMjBEQjgwRjg0MTY2QzAwQjNF
MUZFIC8qIFdlYkNvcmVVUkxSZXNwb25zZUlPUy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CiAJCTQ0QTI4QUFDMTJERkI4QUMwMEFFOTIzQiAvKiBNYXRo
TUxFbGVtZW50RmFjdG9yeS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNDRBMjhBQUIxMkRGQjhBQzAwQUU5MjNCIC8qIE1hdGhNTEVsZW1lbnRGYWN0b3J5
LmggKi87IH07CiAJCTQ0QTI4QUFGMTJERkI4QkYwMEFFOTIzQiAvKiBNYXRoTUxOYW1lcy5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDRBMjhBQUUxMkRG
QjhCRjAwQUU5MjNCIC8qIE1hdGhNTE5hbWVzLmggKi87IH07CisJCTQ0QzZEOEU5MjUyMjA4N0Yw
MEQzOTM3MCAvKiBGb2N1c09wdGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDQ0QzZEOEUwMjUyMjA4NzYwMEQzOTM3MCAvKiBGb2N1c09wdGlvbnMu
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk0NEM5
OTE4NjBGM0QxRUJFMDA1ODY2NzAgLyogU2Nyb2xsYmFyVGhlbWVJT1MuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ0Qzk5MTg1MEYzRDFFQkUwMDU4NjY3
MCAvKiBTY3JvbGxiYXJUaGVtZUlPUy5oICovOyB9OwogCQk0NEM5OTE5RjBGM0QyMTBFMDA1ODY2
NzAgLyogVGhlbWVJT1MuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDQ0Qzk5MTlEMEYzRDIxMEUwMDU4NjY3MCAvKiBUaGVtZUlPUy5oICovOyB9OwogCQk0
NERBQjVCMjE1QTYyMzU4MDA5N0MxRTQgLyogRXh0ZW5zaW9uc0dMT3BlbkdMQ29tbW9uLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0NERBQjVCMDE1QTYy
MzU4MDA5N0MxRTQgLyogRXh0ZW5zaW9uc0dMT3BlbkdMQ29tbW9uLmggKi87IH07CkBAIC03OTA2
LDkgKzc5MDcsMTMgQEAKIAkJNDQ5NkUzOUMxMzk4MTM2QzAwM0VFMzJBIC8qIEpTU1ZHQW5pbWF0
ZU1vdGlvbkVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNTVkdB
bmltYXRlTW90aW9uRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0NDk2
RTM5RjEzOTgxM0E1MDAzRUUzMkEgLyogSlNTVkdNUGF0aEVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gSlNTVkdNUGF0aEVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJNDQ5NkUzQTExMzk4MTNDQjAwM0VFMzJBIC8qIEpTU1ZHTVBhdGhFbGVt
ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTU1ZHTVBhdGhF
bGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDRBMEVBQUMyNTIyMEU5
MjAwNDlFNzE2IC8qIEpTRm9jdXNPcHRpb25zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
bmFtZSA9IEpTRm9jdXNPcHRpb25zLmg7IHBhdGggPSBEZXJpdmVkU291cmNlcy9XZWJDb3JlL0pT
Rm9jdXNPcHRpb25zLmg7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCTQ0
QTBFQUFFMjUyMjBFOTIwMDQ5RTcxNiAvKiBKU0ZvY3VzT3B0aW9ucy5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBKU0ZvY3VzT3B0aW9ucy5jcHA7IHBhdGggPSBEZXJp
dmVkU291cmNlcy9XZWJDb3JlL0pTRm9jdXNPcHRpb25zLmNwcDsgc291cmNlVHJlZSA9IEJVSUxU
X1BST0RVQ1RTX0RJUjsgfTsKIAkJNDRBMjBEQjgwRjg0MTY2QzAwQjNFMUZFIC8qIFdlYkNvcmVV
UkxSZXNwb25zZUlPUy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJDb3Jl
VVJMUmVzcG9uc2VJT1MuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDRBMjhBQUIx
MkRGQjhBQzAwQUU5MjNCIC8qIE1hdGhNTEVsZW1lbnRGYWN0b3J5LmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgbmFtZSA9IE1hdGhNTEVsZW1lbnRGYWN0b3J5Lmg7IHBhdGggPSBEZXJpdmVk
U291cmNlcy9XZWJDb3JlL01hdGhNTEVsZW1lbnRGYWN0b3J5Lmg7IHNvdXJjZVRyZWUgPSBCVUlM
VF9QUk9EVUNUU19ESVI7IH07CiAJCTQ0QTI4QUFFMTJERkI4QkYwMEFFOTIzQiAvKiBNYXRoTUxO
YW1lcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBNYXRoTUxOYW1lcy5oOyBw
YXRoID0gRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9NYXRoTUxOYW1lcy5oOyBzb3VyY2VUcmVlID0g
QlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQk0NEEyQjEwMDI1MjIwM0ExMDBEMUM3NzQgLyogRm9j
dXNPcHRpb25zLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHRleHQ7IHBhdGggPSBGb2N1c09wdGlvbnMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk0NEM2RDhFMDI1MjIwODc2MDBEMzkzNzAgLyogRm9jdXNPcHRpb25zLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEZvY3VzT3B0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQk0NEM5OTE4MTBGM0QxRTBEMDA1ODY2NzAgLyogU2Nyb2xsYmFyVGhlbWVJT1MubW0gKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBTY3JvbGxiYXJUaGVtZUlPUy5tbTsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDRDOTkxODUwRjNEMUVCRTAwNTg2NjcwIC8q
IFNjcm9sbGJhclRoZW1lSU9TLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNj
cm9sbGJhclRoZW1lSU9TLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQ0Qzk5MTlE
MEYzRDIxMEUwMDU4NjY3MCAvKiBUaGVtZUlPUy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBUaGVtZUlPUy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMjExODMs
NiArMjExODgsOCBAQAogCQkJCTE0RENGM0IxMUI2QkUyMDgwMDYyRDRDMiAvKiBKU0NvdW50UXVl
dWluZ1N0cmF0ZWd5LmggKi8sCiAJCQkJOTkwOEIwRkQxQkNBRDA3RDAwRUQwRjY2IC8qIEpTRE9N
QmluZGluZ0ludGVybmFsc0J1aWx0aW5zLmNwcCAqLywKIAkJCQk5QjAzRDgwNjFCQjMxMTBEMDBC
NzY0REEgLyogSlNET01CaW5kaW5nSW50ZXJuYWxzQnVpbHRpbnMuaCAqLywKKwkJCQk0NEEwRUFB
RTI1MjIwRTkyMDA0OUU3MTYgLyogSlNGb2N1c09wdGlvbnMuY3BwICovLAorCQkJCTQ0QTBFQUFD
MjUyMjBFOTIwMDQ5RTcxNiAvKiBKU0ZvY3VzT3B0aW9ucy5oICovLAogCQkJCUMyODA4MzNEMUM2
REMyMkMwMDE0NTFCNiAvKiBKU0ZvbnRGYWNlLmNwcCAqLywKIAkJCQlDMjgwODMzRTFDNkRDMjJD
MDAxNDUxQjYgLyogSlNGb250RmFjZS5oICovLAogCQkJCTFDMjRFRUE2MUM3MkE3QjQwMDgwRjhG
QyAvKiBKU0ZvbnRGYWNlU2V0LmNwcCAqLywKQEAgLTI5NDI2LDYgKzI5NDMzLDggQEAKIAkJCQlC
NkQ5RDIzNDE0RUFCRDI2MDA5MEQ3NUUgLyogRm9jdXNFdmVudC5jcHAgKi8sCiAJCQkJQjZEOUQy
MzMxNEVBQkQyNjAwOTBENzVFIC8qIEZvY3VzRXZlbnQuaCAqLywKIAkJCQlCNkQ5RDI3MjE0RUFC
RjAzMDA5MEQ3NUUgLyogRm9jdXNFdmVudC5pZGwgKi8sCisJCQkJNDRDNkQ4RTAyNTIyMDg3NjAw
RDM5MzcwIC8qIEZvY3VzT3B0aW9ucy5oICovLAorCQkJCTQ0QTJCMTAwMjUyMjAzQTEwMEQxQzc3
NCAvKiBGb2N1c09wdGlvbnMuaWRsICovLAogCQkJCUE4NTMxMjNDMTFEMDQ3MUIwMEQ0RDA3NyAv
KiBGcmFnbWVudFNjcmlwdGluZ1Blcm1pc3Npb24uaCAqLywKIAkJCQlDRDkyRjUxNzIyNjEwMzgy
MDBGODdCQjMgLyogRnVsbHNjcmVlbk1hbmFnZXIuY3BwICovLAogCQkJCUNEOTJGNTE2MjI2MTAz
ODIwMEY4N0JCMyAvKiBGdWxsc2NyZWVuTWFuYWdlci5oICovLApAQCAtMzEzOTQsNiArMzE0MDMs
NyBAQAogCQkJCTE0OTkzQkU2MEIyRjJCMUMwMDUwNDk3RiAvKiBGb2N1c0NvbnRyb2xsZXIuaCBp
biBIZWFkZXJzICovLAogCQkJCTA2MjI4Nzg0MEI0REIzMjIwMDBDMzRERiAvKiBGb2N1c0RpcmVj
dGlvbi5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQjZEOUQyMzUxNEVBQkQyNjAwOTBENzVFIC8qIEZv
Y3VzRXZlbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTQ0QzZEOEU5MjUyMjA4N0YwMEQzOTM3MCAv
KiBGb2N1c09wdGlvbnMuaCBpbiBIZWFkZXJzICovLAogCQkJCUIyQzNEQTY1MEQwMDZDRDYwMEVG
NkYyNiAvKiBGb250LmggaW4gSGVhZGVycyAqLywKIAkJCQkxQUMyRDg5RDFCMUUyOTFGMDBENTJF
ODcgLyogRm9udEFudGlhbGlhc2luZ1N0YXRlU2F2ZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCUY0
RTU3RURDMjEzRjNGNUYwMDRFQTk4RSAvKiBGb250QXR0cmlidXRlQ2hhbmdlcy5oIGluIEhlYWRl
cnMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9kb20vRWxlbWVudC5jcHAKaW5kZXggMjc1YjVkNzU4OTdhNGFhNGMxMTIwOGI3
MDAyYzkwNTVmYjc1YmM0Ny4uYjVjZGU4MTE4OGFhNDU0YWMxMWUzOWYwZTliMjg4ZWEzN2NmODNm
NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2RvbS9FbGVtZW50LmNwcApAQCAtMzAwNSw3ICszMDA1LDEyIEBAIHN0YXRpYyBS
ZWZQdHI8RWxlbWVudD4gZmluZEZpcnN0UHJvZ3JhbWF0aWNhbGx5Rm9jdXNhYmxlRWxlbWVudElu
Q29tcG9zZWRUcmVlKEVsCiAgICAgcmV0dXJuIG51bGxwdHI7CiB9CiAKLXZvaWQgRWxlbWVudDo6
Zm9jdXMoYm9vbCByZXN0b3JlUHJldmlvdXNTZWxlY3Rpb24sIEZvY3VzRGlyZWN0aW9uIGRpcmVj
dGlvbikKK3ZvaWQgRWxlbWVudDo6Zm9jdXMoY29uc3QgRm9jdXNPcHRpb25zJiBvcHRpb25zKQor
eworICAgIGZvY3VzKHRydWUsIEZvY3VzRGlyZWN0aW9uTm9uZSwgb3B0aW9ucy5wcmV2ZW50U2Ny
b2xsID8gUHJldmVudFNjcm9sbDo6WWVzIDogUHJldmVudFNjcm9sbDo6Tm8pOworfQorCit2b2lk
IEVsZW1lbnQ6OmZvY3VzKGJvb2wgcmVzdG9yZVByZXZpb3VzU2VsZWN0aW9uLCBGb2N1c0RpcmVj
dGlvbiBkaXJlY3Rpb24sIFByZXZlbnRTY3JvbGwgcHJldmVudFNjcm9sbCkKIHsKICAgICBpZiAo
IWlzQ29ubmVjdGVkKCkpCiAgICAgICAgIHJldHVybjsKQEAgLTMwNTMsNyArMzA1OCw4IEBAIHZv
aWQgRWxlbWVudDo6Zm9jdXMoYm9vbCByZXN0b3JlUHJldmlvdXNTZWxlY3Rpb24sIEZvY3VzRGly
ZWN0aW9uIGRpcmVjdGlvbikKICAgICAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBuZXdU
YXJnZXQtPnJldmVhbEZvY3VzZWRFbGVtZW50KHJlc3RvcmVQcmV2aW91c1NlbGVjdGlvbiA/IFNl
bGVjdGlvblJlc3RvcmF0aW9uTW9kZTo6UmVzdG9yZSA6IFNlbGVjdGlvblJlc3RvcmF0aW9uTW9k
ZTo6U2V0RGVmYXVsdCk7CisgICAgaWYgKHByZXZlbnRTY3JvbGwgPT0gUHJldmVudFNjcm9sbDo6
Tm8pCisgICAgICAgIG5ld1RhcmdldC0+cmV2ZWFsRm9jdXNlZEVsZW1lbnQocmVzdG9yZVByZXZp
b3VzU2VsZWN0aW9uID8gU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlOjpSZXN0b3JlIDogU2VsZWN0
aW9uUmVzdG9yYXRpb25Nb2RlOjpTZXREZWZhdWx0KTsKIH0KIAogdm9pZCBFbGVtZW50OjpyZXZl
YWxGb2N1c2VkRWxlbWVudChTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGUgc2VsZWN0aW9uTW9kZSkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29y
ZS9kb20vRWxlbWVudC5oCmluZGV4IDYxMWUxMTA4ZDFjZWUwZjYzMWE3Nzg3MzQ2YWU5NWFiMjA4
NGI2MTMuLjgwNGU3OTM2ZTAxZTQ5MjJjMTcwYThhY2Q1ZGFiNjI2NDgyMzQ5ODQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9t
L0VsZW1lbnQuaApAQCAtMjcsNiArMjcsNyBAQAogI2luY2x1ZGUgIkFYVGV4dFN0YXRlQ2hhbmdl
SW50ZW50LmgiCiAjaW5jbHVkZSAiRG9jdW1lbnQuaCIKICNpbmNsdWRlICJFbGVtZW50RGF0YS5o
IgorI2luY2x1ZGUgIkZvY3VzT3B0aW9ucy5oIgogI2luY2x1ZGUgIkhUTUxOYW1lcy5oIgogI2lu
Y2x1ZGUgIlNjcm9sbFR5cGVzLmgiCiAjaW5jbHVkZSAiU2hhZG93Um9vdE1vZGUuaCIKQEAgLTQw
MCw3ICs0MDEsOSBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCBTdHJpbmcgdGFyZ2V0KCkgY29uc3Qg
eyByZXR1cm4gU3RyaW5nKCk7IH0KIAogICAgIHN0YXRpYyBBWFRleHRTdGF0ZUNoYW5nZUludGVu
dCBkZWZhdWx0Rm9jdXNUZXh0U3RhdGVDaGFuZ2VJbnRlbnQoKSB7IHJldHVybiBBWFRleHRTdGF0
ZUNoYW5nZUludGVudChBWFRleHRTdGF0ZUNoYW5nZVR5cGVTZWxlY3Rpb25Nb3ZlLCBBWFRleHRT
ZWxlY3Rpb24geyBBWFRleHRTZWxlY3Rpb25EaXJlY3Rpb25EaXNjb250aWd1b3VzLCBBWFRleHRT
ZWxlY3Rpb25HcmFudWxhcml0eVVua25vd24sIHRydWUgfSk7IH0KLSAgICB2aXJ0dWFsIHZvaWQg
Zm9jdXMoYm9vbCByZXN0b3JlUHJldmlvdXNTZWxlY3Rpb24gPSB0cnVlLCBGb2N1c0RpcmVjdGlv
biA9IEZvY3VzRGlyZWN0aW9uTm9uZSk7CisgICAgdm9pZCBmb2N1cyhjb25zdCBGb2N1c09wdGlv
bnMmKTsKKyAgICBlbnVtIGNsYXNzIFByZXZlbnRTY3JvbGwgeyBObywgWWVzIH07CisgICAgdmly
dHVhbCB2b2lkIGZvY3VzKGJvb2wgcmVzdG9yZVByZXZpb3VzU2VsZWN0aW9uID0gdHJ1ZSwgRm9j
dXNEaXJlY3Rpb24gPSBGb2N1c0RpcmVjdGlvbk5vbmUsIFByZXZlbnRTY3JvbGwgPSBQcmV2ZW50
U2Nyb2xsOjpObyk7CiAgICAgdm9pZCByZXZlYWxGb2N1c2VkRWxlbWVudChTZWxlY3Rpb25SZXN0
b3JhdGlvbk1vZGUpOwogICAgIHZpcnR1YWwgUmVmUHRyPEVsZW1lbnQ+IGZvY3VzQXBwZWFyYW5j
ZVVwZGF0ZVRhcmdldCgpOwogICAgIHZpcnR1YWwgdm9pZCB1cGRhdGVGb2N1c0FwcGVhcmFuY2Uo
U2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlLCBTZWxlY3Rpb25SZXZlYWxNb2RlID0gU2VsZWN0aW9u
UmV2ZWFsTW9kZTo6UmV2ZWFsKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Gb2N1
c09wdGlvbnMuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Gb2N1c09wdGlvbnMuaApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li40ZmUwODczOGRjYWY5YTI2OGNkNzFmOTk4YzgzZTc3YjFmNTJmN2IyCi0tLSAvZGV2L251bGwK
KysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0ZvY3VzT3B0aW9ucy5oCkBAIC0wLDAgKzEsMzQgQEAK
Ky8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAgSWdhbGlhIFMuTC4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJl
ZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJp
Z2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz
dCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAg
ZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRp
c3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElO
Qy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMg
T0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBP
U0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCisgKiBD
T05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRB
TCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUg
R09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsgT1Ig
QlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQor
ICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBP
UiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElO
IEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBv
bmNlCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworc3RydWN0IEZvY3VzT3B0aW9ucyB7CisgICAg
Ym9vbCBwcmV2ZW50U2Nyb2xsIHsgZmFsc2UgfTsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Gb2N1c09wdGlvbnMuaWRsIGIvU291
cmNlL1dlYkNvcmUvZG9tL0ZvY3VzT3B0aW9ucy5pZGwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMTczOTAyMzk3NDg0
M2VlZjA2NDJlMDU3ZDYzZDBjMmI4MTc4YmUwYwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2RvbS9Gb2N1c09wdGlvbnMuaWRsCkBAIC0wLDAgKzEsMjggQEAKKy8qCisgKiBDb3B5
cmlnaHQgKEMpIDIwMjAgSWdhbGlhIFMuTC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBS
ZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9y
IHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRo
ZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9u
cyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2Ug
dGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlv
biBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4K
KyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycn
IEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB
QklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NM
QUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMg
QkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwK
KyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworZGljdGlvbmFyeSBGb2N1c09wdGlv
bnMgeworICAgYm9vbGVhbiBwcmV2ZW50U2Nyb2xsID0gZmFsc2U7Cit9OwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGFiZWxFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTExhYmVsRWxlbWVudC5jcHAKaW5kZXggMzdmOWNhNTZlODBkNzMyNDEwM2IxYTEy
NmZjMjJjNjY1YTA4YWQzYy4uMzExNzIzYjQyNTc3NGNiMzA1ZTM4NWNkNzgzNGJjOTU0ZWRmN2M0
OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGFiZWxFbGVtZW50LmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMYWJlbEVsZW1lbnQuY3BwCkBAIC0xNzIsMTQg
KzE3MiwxNCBAQCBib29sIEhUTUxMYWJlbEVsZW1lbnQ6OndpbGxSZXNwb25kVG9Nb3VzZUNsaWNr
RXZlbnRzKCkKICAgICByZXR1cm4gKGVsZW1lbnQgJiYgZWxlbWVudC0+d2lsbFJlc3BvbmRUb01v
dXNlQ2xpY2tFdmVudHMoKSkgfHwgSFRNTEVsZW1lbnQ6OndpbGxSZXNwb25kVG9Nb3VzZUNsaWNr
RXZlbnRzKCk7CiB9CiAKLXZvaWQgSFRNTExhYmVsRWxlbWVudDo6Zm9jdXMoYm9vbCByZXN0b3Jl
UHJldmlvdXNTZWxlY3Rpb24sIEZvY3VzRGlyZWN0aW9uIGRpcmVjdGlvbikKK3ZvaWQgSFRNTExh
YmVsRWxlbWVudDo6Zm9jdXMoYm9vbCByZXN0b3JlUHJldmlvdXNTZWxlY3Rpb24sIEZvY3VzRGly
ZWN0aW9uIGRpcmVjdGlvbiwgUHJldmVudFNjcm9sbCBwcmV2ZW50U2Nyb2xsKQogewogICAgIFJl
ZjxIVE1MTGFiZWxFbGVtZW50PiBwcm90ZWN0ZWRUaGlzKCp0aGlzKTsKICAgICBpZiAoZG9jdW1l
bnQoKS5oYXZlU3R5bGVzaGVldHNMb2FkZWQoKSkgewogICAgICAgICBkb2N1bWVudCgpLnVwZGF0
ZUxheW91dCgpOwogICAgICAgICBpZiAoaXNGb2N1c2FibGUoKSkgewogICAgICAgICAgICAgLy8g
VGhlIHZhbHVlIG9mIHJlc3RvcmVQcmV2aW91c1NlbGVjdGlvbiBpcyBub3QgdXNlZCBmb3IgbGFi
ZWwgZWxlbWVudHMgYXMgaXQgZG9lc24ndCBvdmVycmlkZSB1cGRhdGVGb2N1c0FwcGVhcmFuY2Uu
Ci0gICAgICAgICAgICBFbGVtZW50Ojpmb2N1cyhyZXN0b3JlUHJldmlvdXNTZWxlY3Rpb24sIGRp
cmVjdGlvbik7CisgICAgICAgICAgICBFbGVtZW50Ojpmb2N1cyhyZXN0b3JlUHJldmlvdXNTZWxl
Y3Rpb24sIGRpcmVjdGlvbiwgcHJldmVudFNjcm9sbCk7CiAgICAgICAgICAgICByZXR1cm47CiAg
ICAgICAgIH0KICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMYWJl
bEVsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExhYmVsRWxlbWVudC5oCmluZGV4
IDQ2NjBmMDY3NzczNTFjZTZkYzg5NWM4MWJiMDcyNDdjOWM0MzIwZWUuLjkwYzY3YWI5ZDAyNWEw
ZTlkZWY5MGFlZTVmOGMzN2MxODQ0ODE1ZTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTExhYmVsRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExhYmVs
RWxlbWVudC5oCkBAIC01MSw3ICs1MSw3IEBAIHByaXZhdGU6CiAgICAgLy8gT3ZlcnJpZGRlbiB0
byBlaXRoZXIgY2xpY2soKSBvciBmb2N1cygpIHRoZSBjb3JyZXNwb25kaW5nIGNvbnRyb2wuCiAg
ICAgdm9pZCBkZWZhdWx0RXZlbnRIYW5kbGVyKEV2ZW50JikgZmluYWw7CiAKLSAgICB2b2lkIGZv
Y3VzKGJvb2wgcmVzdG9yZVByZXZpb3VzU2VsZWN0aW9uLCBGb2N1c0RpcmVjdGlvbikgZmluYWw7
CisgICAgdm9pZCBmb2N1cyhib29sIHJlc3RvcmVQcmV2aW91c1NlbGVjdGlvbiwgRm9jdXNEaXJl
Y3Rpb24sIFByZXZlbnRTY3JvbGwpIGZpbmFsOwogCiAgICAgYm9vbCBpc0ludGVyYWN0aXZlQ29u
dGVudCgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIHRydWU7IH0KIH07CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxMZWdlbmRFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTExlZ2VuZEVsZW1lbnQuY3BwCmluZGV4IGExZTU3Y2ZlNGQwYjFmMjA4MDA3MWY0NzJk
NDQ5ZjZiNjA4YTIyNzYuLjQzYzM4YWIyMTQ5MmU0MDgzNDY0MDA1ZTMzODNlOGNhM2UwOTg3MzYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExlZ2VuZEVsZW1lbnQuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExlZ2VuZEVsZW1lbnQuY3BwCkBAIC01NywxMiAr
NTcsMTIgQEAgUmVmUHRyPEhUTUxGb3JtQ29udHJvbEVsZW1lbnQ+IEhUTUxMZWdlbmRFbGVtZW50
Ojphc3NvY2lhdGVkQ29udHJvbCgpCiAgICAgcmV0dXJuIGRlc2NlbmRhbnRzT2ZUeXBlPEhUTUxG
b3JtQ29udHJvbEVsZW1lbnQ+KCplbmNsb3NpbmdGaWVsZHNldCkuZmlyc3QoKTsKIH0KIAotdm9p
ZCBIVE1MTGVnZW5kRWxlbWVudDo6Zm9jdXMoYm9vbCByZXN0b3JlUHJldmlvdXNTZWxlY3Rpb24s
IEZvY3VzRGlyZWN0aW9uIGRpcmVjdGlvbikKK3ZvaWQgSFRNTExlZ2VuZEVsZW1lbnQ6OmZvY3Vz
KGJvb2wgcmVzdG9yZVByZXZpb3VzU2VsZWN0aW9uLCBGb2N1c0RpcmVjdGlvbiBkaXJlY3Rpb24s
IFByZXZlbnRTY3JvbGwgcHJldmVudFNjcm9sbCkKIHsKICAgICBpZiAoZG9jdW1lbnQoKS5oYXZl
U3R5bGVzaGVldHNMb2FkZWQoKSkgewogICAgICAgICBkb2N1bWVudCgpLnVwZGF0ZUxheW91dEln
bm9yZVBlbmRpbmdTdHlsZXNoZWV0cygpOwogICAgICAgICBpZiAoaXNGb2N1c2FibGUoKSkgewot
ICAgICAgICAgICAgRWxlbWVudDo6Zm9jdXMocmVzdG9yZVByZXZpb3VzU2VsZWN0aW9uLCBkaXJl
Y3Rpb24pOworICAgICAgICAgICAgRWxlbWVudDo6Zm9jdXMocmVzdG9yZVByZXZpb3VzU2VsZWN0
aW9uLCBkaXJlY3Rpb24sIHByZXZlbnRTY3JvbGwpOwogICAgICAgICAgICAgcmV0dXJuOwogICAg
ICAgICB9CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGVnZW5k
RWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGVnZW5kRWxlbWVudC5oCmluZGV4
IDJkZjYyMjk3MWYxMzc5MjJkYzM4Yzg4NTQ5MmQyZjM4NTQ2ZjJhMWEuLmMxYmU2YTI2YzZiMmQ4
MWNkNjdkOTA2Yzk5YTYxMGUyOGY0MGEzZWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTExlZ2VuZEVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMZWdl
bmRFbGVtZW50LmgKQEAgLTQzLDcgKzQzLDcgQEAgcHJpdmF0ZToKICAgICBSZWZQdHI8SFRNTEZv
cm1Db250cm9sRWxlbWVudD4gYXNzb2NpYXRlZENvbnRyb2woKTsKIAogICAgIGJvb2wgYWNjZXNz
S2V5QWN0aW9uKGJvb2wgc2VuZE1vdXNlRXZlbnRzKSBmaW5hbDsKLSAgICB2b2lkIGZvY3VzKGJv
b2wgcmVzdG9yZVByZXZpb3VzU2VsZWN0aW9uLCBGb2N1c0RpcmVjdGlvbikgZmluYWw7CisgICAg
dm9pZCBmb2N1cyhib29sIHJlc3RvcmVQcmV2aW91c1NlbGVjdGlvbiwgRm9jdXNEaXJlY3Rpb24s
IFByZXZlbnRTY3JvbGwpIGZpbmFsOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MT3JGb3JlaWduRWxlbWVudC5pZGwgYi9T
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPckZvcmVpZ25FbGVtZW50LmlkbAppbmRleCBmM2IxMzMy
ZWJhZjdhOGMzOWZiMjU0YmI1YzhjMDM2ZTQzZTJlMTg0Li5iNGE3ZDEzYTc2MDFiNzNmZmY3ZGY3
ZmQ4MjM1ZWNkYzdlNWNhMmMyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxP
ckZvcmVpZ25FbGVtZW50LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPckZvcmVp
Z25FbGVtZW50LmlkbApAQCAtMzQsNyArMzQsNyBAQCBpbnRlcmZhY2UgbWl4aW4gSFRNTE9yRm9y
ZWlnbkVsZW1lbnQgewogICAgIC8vIEZJWE1FOiBJbXBsZW1lbnQgJ2F1dG9mb2N1cycuCiAgICAg
Ly8gW0NFUmVhY3Rpb25zXSBhdHRyaWJ1dGUgYm9vbGVhbiBhdXRvZm9jdXM7CiAgICAgW0NFUmVh
Y3Rpb25zLCBJbXBsZW1lbnRlZEFzPXRhYkluZGV4Rm9yQmluZGluZ3NdIGF0dHJpYnV0ZSBsb25n
IHRhYkluZGV4OwotICAgIC8vIEZJTVhFOiBmb2N1cygpIGlzIHNwZWNpZmllZCB0byB0YWtlIGFu
IG9wdGlvbmFsIEZvY3VzT3B0aW9ucy4gSW1wbGVtZW50IHRoYXQuCi0gICAgdW5kZWZpbmVkIGZv
Y3VzKCk7CisgICAgdW5kZWZpbmVkIGZvY3VzKG9wdGlvbmFsIEZvY3VzT3B0aW9ucyBvcHRpb25z
KTsKICAgICB1bmRlZmluZWQgYmx1cigpOwogfTsKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDU0N2I1NGVkZWViMzdmNzlh
MjMzMGJmY2Q1MzdlY2RjMGY5MTA3OGIuLjgxZTkyMTJlZWRjM2M3NmI3MzQ3ZjAzM2I2N2ExNmUx
ZDExYzA4NjIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAyMC0xMC0wMiAgUm9iIEJ1aXMgIDxy
YnVpc0BpZ2FsaWEuY29tPgorCisgICAgICAgIEVuYWJsZSBhYmlsaXR5IHRvIHByZXZlbnQgc2Ny
b2xsaW5nIGluIEVsZW1lbnQuZm9jdXMoKQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTc4NTgzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9pb3Mtd2syL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9pbnRlcmFjdGlvbi9mb2N1cy9wcm9jZXNzaW5nLW1vZGVsL3ByZXZl
bnRTY3JvbGwtdGV4dGFyZWEtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIHBsYXRm
b3JtL21hYy13azEvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2ludGVyYWN0
aW9uL2ZvY3VzL3Byb2Nlc3NpbmctbW9kZWwvcHJldmVudFNjcm9sbC10ZXh0YXJlYS1leHBlY3Rl
ZC50eHQ6IFJlbW92ZWQuCisKIDIwMjAtMTAtMDEgIFNhbSBXZWluaWcgIDx3ZWluaWdAYXBwbGUu
Y29tPgogCiAgICAgICAgIFtXZWJJRExdIEFkZCBzdXBwb3J0IGZvciBub24tbnVsbGFibGUgb3B0
aW9uYWwgd3JhcHBlciB0eXBlIGFyZ3VtZW50cyB0byBvcGVyYXRpb25zCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL0NoYW5nZUxvZwppbmRleCBjYTdlZDQ3MmJjM2UyMDE2NGU4ODUyZTk5OTU5ZTUzZmJlMWU2
NDIxLi5hYjFlY2IzM2E2YjdiMzdmMzViYzAxMDkzM2YzN2ZmMDU1Y2Y5YmE4IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAyMC0xMC0wMiAgUm9iIEJ1
aXMgIDxyYnVpc0BpZ2FsaWEuY29tPgorCisgICAgICAgIEVuYWJsZSBhYmlsaXR5IHRvIHByZXZl
bnQgc2Nyb2xsaW5nIGluIEVsZW1lbnQuZm9jdXMoKQorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc4NTgzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgVXBkYXRlIGltcHJvdmVkIHRlc3QgcmVzdWx0LgorCisg
ICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvaW50ZXJhY3Rpb24vZm9jdXMvcHJvY2Vz
c2luZy1tb2RlbC9wcmV2ZW50U2Nyb2xsLXRleHRhcmVhLWV4cGVjdGVkLnR4dDoKKwogMjAyMC0x
MC0wMSAgUm9iIEJ1aXMgIDxyYnVpc0BpZ2FsaWEuY29tPgogCiAgICAgICAgIHVwZGF0ZSBGb3Jt
RGF0YSB0byBsYXRlc3Qgc3BlYyB3ZWJpZGwKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9pbnRlcmFjdGlvbi9mb2N1cy9wcm9jZXNz
aW5nLW1vZGVsL3ByZXZlbnRTY3JvbGwtdGV4dGFyZWEtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2ludGVyYWN0aW9uL2ZvY3Vz
L3Byb2Nlc3NpbmctbW9kZWwvcHJldmVudFNjcm9sbC10ZXh0YXJlYS1leHBlY3RlZC50eHQKaW5k
ZXggMDhhYWZiMzE2MzYwODQ5MDg3OTgwZTAwNTA0MmQ3Yzg1YWRhODY1Yi4uYzczNGE2OWRlOWE1
Y2ZmNWFkNTVlZWY5Y2RkMWQ2ZDJlZWNlNmQzYSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2ludGVyYWN0aW9uL2ZvY3VzL3Byb2Nl
c3NpbmctbW9kZWwvcHJldmVudFNjcm9sbC10ZXh0YXJlYS1leHBlY3RlZC50eHQKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2ludGVyYWN0aW9u
L2ZvY3VzL3Byb2Nlc3NpbmctbW9kZWwvcHJldmVudFNjcm9sbC10ZXh0YXJlYS1leHBlY3RlZC50
eHQKQEAgLTEsNCArMSw0IEBACiAKIAotRkFJTCBwcmV2ZW50U2Nyb2xsOiB0cnVlIG9uIGEgdGV4
dGFyZWEgZWxlbWVudCBhc3NlcnRfZXF1YWxzOiBURVhUQVJFQTogU2hvdWxkIG5vdCBoYXZlIHNj
cm9sbGVkIGFmdGVyIGEgY291cGxlIGV2ZW50IGxvb3AgdGlja3MgZXhwZWN0ZWQgMCBidXQgZ290
IDkyMAorUEFTUyBwcmV2ZW50U2Nyb2xsOiB0cnVlIG9uIGEgdGV4dGFyZWEgZWxlbWVudAogCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3Mtd2syL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9pbnRlcmFjdGlvbi9mb2N1cy9wcm9jZXNzaW5nLW1vZGVsL3By
ZXZlbnRTY3JvbGwtdGV4dGFyZWEtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
aW9zLXdrMi9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvaW50ZXJhY3Rpb24v
Zm9jdXMvcHJvY2Vzc2luZy1tb2RlbC9wcmV2ZW50U2Nyb2xsLXRleHRhcmVhLWV4cGVjdGVkLnR4
dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYzczNGE2OWRlOWE1Y2ZmNWFkNTVlZWY5
Y2RkMWQ2ZDJlZWNlNmQzYS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3Mtd2syL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9pbnRlcmFjdGlvbi9mb2N1cy9wcm9jZXNzaW5nLW1vZGVsL3ByZXZl
bnRTY3JvbGwtdGV4dGFyZWEtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsNCArMCww
IEBACi0KLQotUEFTUyBwcmV2ZW50U2Nyb2xsOiB0cnVlIG9uIGEgdGV4dGFyZWEgZWxlbWVudAot
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2sxL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9pbnRlcmFjdGlvbi9mb2N1cy9wcm9jZXNzaW5nLW1vZGVs
L3ByZXZlbnRTY3JvbGwtdGV4dGFyZWEtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vbWFjLXdrMS9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvaW50ZXJhY3Rp
b24vZm9jdXMvcHJvY2Vzc2luZy1tb2RlbC9wcmV2ZW50U2Nyb2xsLXRleHRhcmVhLWV4cGVjdGVk
LnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNTJhYmFiYmZiZDcyN2VjZGZiYmNk
ZGQ2Y2M4ZTEwMGQzZGQ5Y2FmNS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2sxL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9pbnRlcmFjdGlvbi9mb2N1cy9wcm9jZXNzaW5nLW1vZGVsL3By
ZXZlbnRTY3JvbGwtdGV4dGFyZWEtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsNCAr
MCwwIEBACi0KLQotRkFJTCBwcmV2ZW50U2Nyb2xsOiB0cnVlIG9uIGEgdGV4dGFyZWEgZWxlbWVu
dCBhc3NlcnRfZXF1YWxzOiBURVhUQVJFQTogU2hvdWxkIG5vdCBoYXZlIHNjcm9sbGVkIGV4cGVj
dGVkIDAgYnV0IGdvdCA5MjAKLQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>410349</attachid>
            <date>2020-10-02 12:19:49 -0700</date>
            <delta_ts>2021-01-13 08:26:38 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-178583-20201002201948.patch</filename>
            <type>text/plain</type>
            <size>27100</size>
            <attacher name="Rob Buis">rbuis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY3ODg3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzliNjBmZTYxMDYyMzI1
ODgzYzYwZTcyM2FiNDVkMWFmMjllOTI0MC4uZDMxNzE0MDM2YzYyYzAwZjI5OTJlNjlhZTFjY2Rl
OWYyMDZiZDNhMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ2IEBACisyMDIwLTEwLTAyICBSb2Ig
QnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgRW5hYmxlIGFiaWxpdHkgdG8gcHJl
dmVudCBzY3JvbGxpbmcgaW4gRWxlbWVudC5mb2N1cygpCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzg1ODMKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgRm9jdXNPcHRpb25zIHBhcmFtZXRlciB0byB0
aGUgZm9jdXMgbWV0aG9kIFsxXSBib3RoCisgICAgICAgIHRvIHRoZSBJREwgYXMgdGhlIEMrKyBz
aWRlLiBDaGFuZ2UgRWxlbWVudC5mb2N1cyB0byBub3QKKyAgICAgICAgc2Nyb2xsIGlmIEZvY3Vz
T3B0aW9ucy5wcmV2ZW50U2Nyb2xsIGlzIHRydWUuCisKKyAgICAgICAgQmVoYXZpb3IgbWF0Y2hl
cyBDaHJvbWUgYW5kIEZpcmVmb3guCisKKyAgICAgICAgVGVzdDogaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9odG1sL2ludGVyYWN0aW9uL2ZvY3VzL3Byb2Nlc3NpbmctbW9kZWwvcHJl
dmVudFNjcm9sbC10ZXh0Lmh0bWwKKworICAgICAgICBbMV0gaHR0cHM6Ly9odG1sLnNwZWMud2hh
dHdnLm9yZy9tdWx0aXBhZ2UvaW50ZXJhY3Rpb24uaHRtbCNkb20tZm9jdXMKKworICAgICAgICAq
IENNYWtlTGlzdHMudHh0OgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLWlucHV0LnhjZmlsZWxp
c3Q6CisgICAgICAgICogRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3Q6CisgICAgICAg
ICogRGVyaXZlZFNvdXJjZXMubWFrZToKKyAgICAgICAgKiBIZWFkZXJzLmNtYWtlOgorICAgICAg
ICAqIFNvdXJjZXMudHh0OgorICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvajoKKyAgICAgICAgKiBkb20vRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpFbGVt
ZW50Ojpmb2N1cyk6CisgICAgICAgICogZG9tL0VsZW1lbnQuaDoKKyAgICAgICAgKFdlYkNvcmU6
OkVsZW1lbnQ6OmZvY3VzKToKKyAgICAgICAgKiBkb20vRm9jdXNPcHRpb25zLmg6IENvcGllZCBm
cm9tIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE9yRm9yZWlnbkVsZW1lbnQuaWRsLgorICAgICAg
ICAqIGRvbS9Gb2N1c09wdGlvbnMuaWRsOiBDb3BpZWQgZnJvbSBTb3VyY2UvV2ViQ29yZS9odG1s
L0hUTUxPckZvcmVpZ25FbGVtZW50LmlkbC4KKyAgICAgICAgKiBodG1sL0hUTUxMYWJlbEVsZW1l
bnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTExhYmVsRWxlbWVudDo6Zm9jdXMpOgorICAg
ICAgICAqIGh0bWwvSFRNTExhYmVsRWxlbWVudC5oOgorICAgICAgICAqIGh0bWwvSFRNTExlZ2Vu
ZEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTExlZ2VuZEVsZW1lbnQ6OmZvY3Vz
KToKKyAgICAgICAgKiBodG1sL0hUTUxMZWdlbmRFbGVtZW50Lmg6CisgICAgICAgICogaHRtbC9I
VE1MT3JGb3JlaWduRWxlbWVudC5pZGw6CisgICAgICAgICogaHRtbC9JbnB1dFR5cGUuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6SW5wdXRUeXBlOjphY2Nlc3NLZXlBY3Rpb24pOgorICAgICAgICAq
IHBhZ2UvRm9jdXNDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZvY3VzQ29udHJv
bGxlcjo6YWR2YW5jZUZvY3VzSW5Eb2N1bWVudE9yZGVyKToKKyAgICAgICAgKFdlYkNvcmU6OkZv
Y3VzQ29udHJvbGxlcjo6YWR2YW5jZUZvY3VzRGlyZWN0aW9uYWxseUluQ29udGFpbmVyKToKKwog
MjAyMC0wOS0zMCAgQW50b2luZSBRdWludCAgPGdyYW91dHNAd2Via2l0Lm9yZz4KIAogICAgICAg
ICBBZGQgbm9uLWFuaW1hdGVkIHN1cHBvcnQgZm9yIHRoZSBDU1MgdHJhbnNsYXRlIHByb3BlcnR5
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dCBiL1NvdXJjZS9XZWJD
b3JlL0NNYWtlTGlzdHMudHh0CmluZGV4IDE5NDM4MDIzYzQzNThiMDYwNjEwM2M2NWM0N2Q1ODlm
N2VlNWMzNGMuLjljYWQxZTc5MzQ4ODgzYzBhNzgyMDljYWU5ZjQxZjg1MTA4M2VmNzEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CisrKyBiL1NvdXJjZS9XZWJDb3Jl
L0NNYWtlTGlzdHMudHh0CkBAIC03OTksNiArNzk5LDcgQEAgc2V0KFdlYkNvcmVfTk9OX1NWR19J
RExfRklMRVMKICAgICBkb20vRXZlbnRNb2RpZmllckluaXQuaWRsCiAgICAgZG9tL0V2ZW50VGFy
Z2V0LmlkbAogICAgIGRvbS9Gb2N1c0V2ZW50LmlkbAorICAgIGRvbS9Gb2N1c09wdGlvbnMuaWRs
CiAgICAgZG9tL0dsb2JhbEV2ZW50SGFuZGxlcnMrUG9pbnRlckV2ZW50cy5pZGwKICAgICBkb20v
R2xvYmFsRXZlbnRIYW5kbGVycy5pZGwKICAgICBkb20vSGFzaENoYW5nZUV2ZW50LmlkbApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdCBi
L1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLWlucHV0LnhjZmlsZWxpc3QKaW5kZXggYThk
Y2Y5Njk4MmE0MDgyOTk3NDU4MjU4MzRiNzE2MGI0NWQyN2Y1Zi4uZjA2YjFlNWIzMGZmMjAzYTBm
YTEyMjNiZTNkMWJjMzM3M2VlMDQxNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvRGVyaXZl
ZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdAorKysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291
cmNlcy1pbnB1dC54Y2ZpbGVsaXN0CkBAIC03MjIsNiArNzIyLDcgQEAgJChQUk9KRUNUX0RJUikv
ZG9tL0V2ZW50TmFtZXMuaW4KICQoUFJPSkVDVF9ESVIpL2RvbS9FdmVudFRhcmdldC5pZGwKICQo
UFJPSkVDVF9ESVIpL2RvbS9FdmVudFRhcmdldEZhY3RvcnkuaW4KICQoUFJPSkVDVF9ESVIpL2Rv
bS9Gb2N1c0V2ZW50LmlkbAorJChQUk9KRUNUX0RJUikvZG9tL0ZvY3VzT3B0aW9ucy5pZGwKICQo
UFJPSkVDVF9ESVIpL2RvbS9HbG9iYWxFdmVudEhhbmRsZXJzK1BvaW50ZXJFdmVudHMuaWRsCiAk
KFBST0pFQ1RfRElSKS9kb20vR2xvYmFsRXZlbnRIYW5kbGVycy5pZGwKICQoUFJPSkVDVF9ESVIp
L2RvbS9IYXNoQ2hhbmdlRXZlbnQuaWRsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9EZXJp
dmVkU291cmNlcy1vdXRwdXQueGNmaWxlbGlzdCBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3Vy
Y2VzLW91dHB1dC54Y2ZpbGVsaXN0CmluZGV4IDM2Nzk1ZWE0MTMzOGVkZGE4NGFkMjgzNGY2ODhk
ZWQzMjA0ZGUwZDguLmYwM2NlY2ZiOGUyOTQ5ZWY0NjVmZWI1ZGU3M2RlYTRkZGJlYjllZTUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0
CisrKyBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0CkBA
IC03NzMsNiArNzczLDggQEAgJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dl
YkNvcmUvSlNGaWxsTW9kZS5jcHAKICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNl
cy9XZWJDb3JlL0pTRmlsbE1vZGUuaAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3Vy
Y2VzL1dlYkNvcmUvSlNGb2N1c0V2ZW50LmNwcAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2
ZWRTb3VyY2VzL1dlYkNvcmUvSlNGb2N1c0V2ZW50LmgKKyQoQlVJTFRfUFJPRFVDVFNfRElSKS9E
ZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTRm9jdXNPcHRpb25zLmNwcAorJChCVUlMVF9QUk9EVUNU
U19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNGb2N1c09wdGlvbnMuaAogJChCVUlMVF9Q
Uk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNGb250RmFjZS5jcHAKICQoQlVJ
TFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTRm9udEZhY2UuaAogJChC
VUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNGb250RmFjZVNldC5j
cHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UgYi9Tb3Vy
Y2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCmluZGV4IDJjMWMxMDg5YWQ1YWI2Yjc1OWY1
MDZkYzFhZTkwM2NmZjIwNjA2ZjYuLjQ3MWFkYjA5MGZmODcwNjU2ZjA1YzdhY2I1ZTc0MTcyNDUy
M2JmYWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKKysr
IGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQpAQCAtNzUyLDYgKzc1Miw3IEBA
IEpTX0JJTkRJTkdfSURMUyA9IFwKICAgICAkKFdlYkNvcmUpL2RvbS9FdmVudE1vZGlmaWVySW5p
dC5pZGwgXAogICAgICQoV2ViQ29yZSkvZG9tL0V2ZW50VGFyZ2V0LmlkbCBcCiAgICAgJChXZWJD
b3JlKS9kb20vRm9jdXNFdmVudC5pZGwgXAorICAgICQoV2ViQ29yZSkvZG9tL0ZvY3VzT3B0aW9u
cy5pZGwgXAogICAgICQoV2ViQ29yZSkvZG9tL0dsb2JhbEV2ZW50SGFuZGxlcnMuaWRsIFwKICAg
ICAkKFdlYkNvcmUpL2RvbS9HbG9iYWxFdmVudEhhbmRsZXJzK1BvaW50ZXJFdmVudHMuaWRsIFwK
ICAgICAkKFdlYkNvcmUpL2RvbS9IYXNoQ2hhbmdlRXZlbnQuaWRsIFwKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UgYi9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtl
CmluZGV4IGVlMDNhMzQ1ODU4Njg0YzdhYjAwNGQzNGM5MWM2Y2NiZGQzM2U2YmQuLmY0YzUyYzI1
MmFkNzk2Y2U4ZmFlOTVhZDA0YjE3YzY1ZmIzNzJmMTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL0hlYWRlcnMuY21ha2UKKysrIGIvU291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZQpAQCAt
NDI2LDYgKzQyNiw3IEBAIHNldChXZWJDb3JlX1BSSVZBVEVfRlJBTUVXT1JLX0hFQURFUlMKICAg
ICBkb20vRXhjZXB0aW9uQ29kZS5oCiAgICAgZG9tL0V4Y2VwdGlvbkRhdGEuaAogICAgIGRvbS9F
eGNlcHRpb25Pci5oCisgICAgZG9tL0ZvY3VzT3B0aW9ucy5oCiAgICAgZG9tL0ZyYWdtZW50U2Ny
aXB0aW5nUGVybWlzc2lvbi5oCiAgICAgZG9tL0Z1bGxzY3JlZW5NYW5hZ2VyLmgKICAgICBkb20v
R0NSZWFjaGFibGVSZWYuaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQg
Yi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dAppbmRleCBjN2VjZmRkMTU1YzUyODBkNTg1NGJm
YjUyYmViZWEwMjg0YWRiN2EzLi4xNmY3YWRmZDQyMWI3NjA5OTU5NGZkMDQ2ZDFkYzQ5YTI5NjQ4
NTc5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9Tb3VyY2VzLnR4dApAQCAtMjkwNyw2ICsyOTA3LDcgQEAgSlNGaWxlU3lzdGVtRW50
cnlDYWxsYmFjay5jcHAKIEpTRmlsZVN5c3RlbUZpbGVFbnRyeS5jcHAKIEpTRmlsbE1vZGUuY3Bw
CiBKU0ZvY3VzRXZlbnQuY3BwCitKU0ZvY3VzT3B0aW9ucy5jcHAKIEpTRm9udEZhY2UuY3BwCiBK
U0ZvbnRGYWNlU2V0LmNwcAogSlNHUFVCaW5kR3JvdXBMYXlvdXRCaW5kaW5nLmNwcApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIv
U291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IGNh
MDBmOWUwYTI2YmYyMWE4YmNjOWZmNTUxMDIyZjc0Nzk4MTIwZGQuLjY3Mzg3NWIxYmY5Zjk0MWYw
ODhkMWYzNTY2MmNmMjdkMWM0Y2E2NTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNv
cmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3Jl
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTEyMDgsNiArMTIwOCw3IEBACiAJCTQ0QTIw
REI5MEY4NDE2NkMwMEIzRTFGRSAvKiBXZWJDb3JlVVJMUmVzcG9uc2VJT1MuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ0QTIwREI4MEY4NDE2NkMwMEIz
RTFGRSAvKiBXZWJDb3JlVVJMUmVzcG9uc2VJT1MuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk0NEEyOEFBQzEyREZCOEFDMDBBRTkyM0IgLyogTWF0
aE1MRWxlbWVudEZhY3RvcnkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDQ0QTI4QUFCMTJERkI4QUMwMEFFOTIzQiAvKiBNYXRoTUxFbGVtZW50RmFjdG9y
eS5oICovOyB9OwogCQk0NEEyOEFBRjEyREZCOEJGMDBBRTkyM0IgLyogTWF0aE1MTmFtZXMuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ0QTI4QUFFMTJE
RkI4QkYwMEFFOTIzQiAvKiBNYXRoTUxOYW1lcy5oICovOyB9OworCQk0NEM2RDhFOTI1MjIwODdG
MDBEMzkzNzAgLyogRm9jdXNPcHRpb25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA0NEM2RDhFMDI1MjIwODc2MDBEMzkzNzAgLyogRm9jdXNPcHRpb25z
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJNDRD
OTkxODYwRjNEMUVCRTAwNTg2NjcwIC8qIFNjcm9sbGJhclRoZW1lSU9TLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0NEM5OTE4NTBGM0QxRUJFMDA1ODY2
NzAgLyogU2Nyb2xsYmFyVGhlbWVJT1MuaCAqLzsgfTsKIAkJNDRDOTkxOUYwRjNEMjEwRTAwNTg2
NjcwIC8qIFRoZW1lSU9TLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA0NEM5OTE5RDBGM0QyMTBFMDA1ODY2NzAgLyogVGhlbWVJT1MuaCAqLzsgfTsKIAkJ
NDREQUI1QjIxNUE2MjM1ODAwOTdDMUU0IC8qIEV4dGVuc2lvbnNHTE9wZW5HTENvbW1vbi5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDREQUI1QjAxNUE2
MjM1ODAwOTdDMUU0IC8qIEV4dGVuc2lvbnNHTE9wZW5HTENvbW1vbi5oICovOyB9OwpAQCAtNzkw
Niw5ICs3OTA3LDEzIEBACiAJCTQ0OTZFMzlDMTM5ODEzNkMwMDNFRTMyQSAvKiBKU1NWR0FuaW1h
dGVNb3Rpb25FbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTU1ZH
QW5pbWF0ZU1vdGlvbkVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDQ5
NkUzOUYxMzk4MTNBNTAwM0VFMzJBIC8qIEpTU1ZHTVBhdGhFbGVtZW50LmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTU1ZHTVBhdGhFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTQ0OTZFM0ExMTM5ODEzQ0IwMDNFRTMyQSAvKiBKU1NWR01QYXRoRWxl
bWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1NWR01QYXRo
RWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ0QTBFQUFDMjUyMjBF
OTIwMDQ5RTcxNiAvKiBKU0ZvY3VzT3B0aW9ucy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IG5hbWUgPSBKU0ZvY3VzT3B0aW9ucy5oOyBwYXRoID0gRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9K
U0ZvY3VzT3B0aW9ucy5oOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQk0
NEEwRUFBRTI1MjIwRTkyMDA0OUU3MTYgLyogSlNGb2N1c09wdGlvbnMuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gSlNGb2N1c09wdGlvbnMuY3BwOyBwYXRoID0gRGVy
aXZlZFNvdXJjZXMvV2ViQ29yZS9KU0ZvY3VzT3B0aW9ucy5jcHA7IHNvdXJjZVRyZWUgPSBCVUlM
VF9QUk9EVUNUU19ESVI7IH07CiAJCTQ0QTIwREI4MEY4NDE2NkMwMEIzRTFGRSAvKiBXZWJDb3Jl
VVJMUmVzcG9uc2VJT1MuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViQ29y
ZVVSTFJlc3BvbnNlSU9TLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQ0QTI4QUFC
MTJERkI4QUMwMEFFOTIzQiAvKiBNYXRoTUxFbGVtZW50RmFjdG9yeS5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IG5hbWUgPSBNYXRoTUxFbGVtZW50RmFjdG9yeS5oOyBwYXRoID0gRGVyaXZl
ZFNvdXJjZXMvV2ViQ29yZS9NYXRoTUxFbGVtZW50RmFjdG9yeS5oOyBzb3VyY2VUcmVlID0gQlVJ
TFRfUFJPRFVDVFNfRElSOyB9OwogCQk0NEEyOEFBRTEyREZCOEJGMDBBRTkyM0IgLyogTWF0aE1M
TmFtZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gTWF0aE1MTmFtZXMuaDsg
cGF0aCA9IERlcml2ZWRTb3VyY2VzL1dlYkNvcmUvTWF0aE1MTmFtZXMuaDsgc291cmNlVHJlZSA9
IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJNDRBMkIxMDAyNTIyMDNBMTAwRDFDNzc0IC8qIEZv
Y3VzT3B0aW9ucy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSB0ZXh0OyBwYXRoID0gRm9jdXNPcHRpb25zLmlkbDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJNDRDNkQ4RTAyNTIyMDg3NjAwRDM5MzcwIC8qIEZvY3VzT3B0aW9ucy5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBGb2N1c09wdGlvbnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJNDRDOTkxODEwRjNEMUUwRDAwNTg2NjcwIC8qIFNjcm9sbGJhclRoZW1lSU9TLm1tICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gU2Nyb2xsYmFyVGhlbWVJT1MubW07
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQ0Qzk5MTg1MEYzRDFFQkUwMDU4NjY3MCAv
KiBTY3JvbGxiYXJUaGVtZUlPUy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBT
Y3JvbGxiYXJUaGVtZUlPUy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0NEM5OTE5
RDBGM0QyMTBFMDA1ODY2NzAgLyogVGhlbWVJT1MuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gVGhlbWVJT1MuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTIxMTgz
LDYgKzIxMTg4LDggQEAKIAkJCQkxNERDRjNCMTFCNkJFMjA4MDA2MkQ0QzIgLyogSlNDb3VudFF1
ZXVpbmdTdHJhdGVneS5oICovLAogCQkJCTk5MDhCMEZEMUJDQUQwN0QwMEVEMEY2NiAvKiBKU0RP
TUJpbmRpbmdJbnRlcm5hbHNCdWlsdGlucy5jcHAgKi8sCiAJCQkJOUIwM0Q4MDYxQkIzMTEwRDAw
Qjc2NERBIC8qIEpTRE9NQmluZGluZ0ludGVybmFsc0J1aWx0aW5zLmggKi8sCisJCQkJNDRBMEVB
QUUyNTIyMEU5MjAwNDlFNzE2IC8qIEpTRm9jdXNPcHRpb25zLmNwcCAqLywKKwkJCQk0NEEwRUFB
QzI1MjIwRTkyMDA0OUU3MTYgLyogSlNGb2N1c09wdGlvbnMuaCAqLywKIAkJCQlDMjgwODMzRDFD
NkRDMjJDMDAxNDUxQjYgLyogSlNGb250RmFjZS5jcHAgKi8sCiAJCQkJQzI4MDgzM0UxQzZEQzIy
QzAwMTQ1MUI2IC8qIEpTRm9udEZhY2UuaCAqLywKIAkJCQkxQzI0RUVBNjFDNzJBN0I0MDA4MEY4
RkMgLyogSlNGb250RmFjZVNldC5jcHAgKi8sCkBAIC0yOTQyNiw2ICsyOTQzMyw4IEBACiAJCQkJ
QjZEOUQyMzQxNEVBQkQyNjAwOTBENzVFIC8qIEZvY3VzRXZlbnQuY3BwICovLAogCQkJCUI2RDlE
MjMzMTRFQUJEMjYwMDkwRDc1RSAvKiBGb2N1c0V2ZW50LmggKi8sCiAJCQkJQjZEOUQyNzIxNEVB
QkYwMzAwOTBENzVFIC8qIEZvY3VzRXZlbnQuaWRsICovLAorCQkJCTQ0QzZEOEUwMjUyMjA4NzYw
MEQzOTM3MCAvKiBGb2N1c09wdGlvbnMuaCAqLywKKwkJCQk0NEEyQjEwMDI1MjIwM0ExMDBEMUM3
NzQgLyogRm9jdXNPcHRpb25zLmlkbCAqLywKIAkJCQlBODUzMTIzQzExRDA0NzFCMDBENEQwNzcg
LyogRnJhZ21lbnRTY3JpcHRpbmdQZXJtaXNzaW9uLmggKi8sCiAJCQkJQ0Q5MkY1MTcyMjYxMDM4
MjAwRjg3QkIzIC8qIEZ1bGxzY3JlZW5NYW5hZ2VyLmNwcCAqLywKIAkJCQlDRDkyRjUxNjIyNjEw
MzgyMDBGODdCQjMgLyogRnVsbHNjcmVlbk1hbmFnZXIuaCAqLywKQEAgLTMxMzk0LDYgKzMxNDAz
LDcgQEAKIAkJCQkxNDk5M0JFNjBCMkYyQjFDMDA1MDQ5N0YgLyogRm9jdXNDb250cm9sbGVyLmgg
aW4gSGVhZGVycyAqLywKIAkJCQkwNjIyODc4NDBCNERCMzIyMDAwQzM0REYgLyogRm9jdXNEaXJl
Y3Rpb24uaCBpbiBIZWFkZXJzICovLAogCQkJCUI2RDlEMjM1MTRFQUJEMjYwMDkwRDc1RSAvKiBG
b2N1c0V2ZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk0NEM2RDhFOTI1MjIwODdGMDBEMzkzNzAg
LyogRm9jdXNPcHRpb25zLmggaW4gSGVhZGVycyAqLywKIAkJCQlCMkMzREE2NTBEMDA2Q0Q2MDBF
RjZGMjYgLyogRm9udC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMUFDMkQ4OUQxQjFFMjkxRjAwRDUy
RTg3IC8qIEZvbnRBbnRpYWxpYXNpbmdTdGF0ZVNhdmVyLmggaW4gSGVhZGVycyAqLywKIAkJCQlG
NEU1N0VEQzIxM0YzRjVGMDA0RUE5OEUgLyogRm9udEF0dHJpYnV0ZUNoYW5nZXMuaCBpbiBIZWFk
ZXJzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuY3BwIGIvU291
cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuY3BwCmluZGV4IDI3NWI1ZDc1ODk3YTRhYTRjMTEyMDhi
NzAwMmM5MDU1ZmI3NWJjNDcuLjVhMDQ2YmU2MGI3NGNmNjc1Y2UzYjVjNmNjMTBiNjc0MWYyNjdj
MDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9kb20vRWxlbWVudC5jcHAKQEAgLTMwMDUsNyArMzAwNSw3IEBAIHN0YXRpYyBS
ZWZQdHI8RWxlbWVudD4gZmluZEZpcnN0UHJvZ3JhbWF0aWNhbGx5Rm9jdXNhYmxlRWxlbWVudElu
Q29tcG9zZWRUcmVlKEVsCiAgICAgcmV0dXJuIG51bGxwdHI7CiB9CiAKLXZvaWQgRWxlbWVudDo6
Zm9jdXMoYm9vbCByZXN0b3JlUHJldmlvdXNTZWxlY3Rpb24sIEZvY3VzRGlyZWN0aW9uIGRpcmVj
dGlvbikKK3ZvaWQgRWxlbWVudDo6Zm9jdXMoY29uc3QgRm9jdXNPcHRpb25zJiBvcHRpb25zKQog
ewogICAgIGlmICghaXNDb25uZWN0ZWQoKSkKICAgICAgICAgcmV0dXJuOwpAQCAtMzA0OSwxMSAr
MzA0OSwxMiBAQCB2b2lkIEVsZW1lbnQ6OmZvY3VzKGJvb2wgcmVzdG9yZVByZXZpb3VzU2VsZWN0
aW9uLCBGb2N1c0RpcmVjdGlvbiBkaXJlY3Rpb24pCiAgICAgICAgIC8vIEZvY3VzIGFuZCBjaGFu
Z2UgZXZlbnQgaGFuZGxlcnMgY2FuIGNhdXNlIHVzIHRvIGxvc2Ugb3VyIGxhc3QgcmVmLgogICAg
ICAgICAvLyBJZiBhIGZvY3VzIGV2ZW50IGhhbmRsZXIgY2hhbmdlcyB0aGUgZm9jdXMgdG8gYSBk
aWZmZXJlbnQgbm9kZSBpdAogICAgICAgICAvLyBkb2VzIG5vdCBtYWtlIHNlbnNlIHRvIGNvbnRp
bnVlIGFuZCB1cGRhdGUgYXBwZWFyZW5jZS4KLSAgICAgICAgaWYgKCFwYWdlLT5mb2N1c0NvbnRy
b2xsZXIoKS5zZXRGb2N1c2VkRWxlbWVudChuZXdUYXJnZXQuZ2V0KCksICpkb2N1bWVudC0+ZnJh
bWUoKSwgZGlyZWN0aW9uKSkKKyAgICAgICAgaWYgKCFwYWdlLT5mb2N1c0NvbnRyb2xsZXIoKS5z
ZXRGb2N1c2VkRWxlbWVudChuZXdUYXJnZXQuZ2V0KCksICpkb2N1bWVudC0+ZnJhbWUoKSwgb3B0
aW9ucy5kaXJlY3Rpb24pKQogICAgICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIG5ld1Rh
cmdldC0+cmV2ZWFsRm9jdXNlZEVsZW1lbnQocmVzdG9yZVByZXZpb3VzU2VsZWN0aW9uID8gU2Vs
ZWN0aW9uUmVzdG9yYXRpb25Nb2RlOjpSZXN0b3JlIDogU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2Rl
OjpTZXREZWZhdWx0KTsKKyAgICBpZiAoIW9wdGlvbnMucHJldmVudFNjcm9sbCkKKyAgICAgICAg
bmV3VGFyZ2V0LT5yZXZlYWxGb2N1c2VkRWxlbWVudChvcHRpb25zLnJlc3RvcmVQcmV2aW91c1Nl
bGVjdGlvbiA/IFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZTo6UmVzdG9yZSA6IFNlbGVjdGlvblJl
c3RvcmF0aW9uTW9kZTo6U2V0RGVmYXVsdCk7CiB9CiAKIHZvaWQgRWxlbWVudDo6cmV2ZWFsRm9j
dXNlZEVsZW1lbnQoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlIHNlbGVjdGlvbk1vZGUpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvZG9t
L0VsZW1lbnQuaAppbmRleCA2MTFlMTEwOGQxY2VlMGY2MzFhNzc4NzM0NmFlOTVhYjIwODRiNjEz
Li5kOTcxNjhmOGMyNmRmMmJiMzQ2Zjc3ZjRlOTEyOGJkODJiOWE3YWJhIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVt
ZW50LmgKQEAgLTI3LDYgKzI3LDcgQEAKICNpbmNsdWRlICJBWFRleHRTdGF0ZUNoYW5nZUludGVu
dC5oIgogI2luY2x1ZGUgIkRvY3VtZW50LmgiCiAjaW5jbHVkZSAiRWxlbWVudERhdGEuaCIKKyNp
bmNsdWRlICJGb2N1c09wdGlvbnMuaCIKICNpbmNsdWRlICJIVE1MTmFtZXMuaCIKICNpbmNsdWRl
ICJTY3JvbGxUeXBlcy5oIgogI2luY2x1ZGUgIlNoYWRvd1Jvb3RNb2RlLmgiCkBAIC00MDAsNyAr
NDAxLDggQEAgcHVibGljOgogICAgIHZpcnR1YWwgU3RyaW5nIHRhcmdldCgpIGNvbnN0IHsgcmV0
dXJuIFN0cmluZygpOyB9CiAKICAgICBzdGF0aWMgQVhUZXh0U3RhdGVDaGFuZ2VJbnRlbnQgZGVm
YXVsdEZvY3VzVGV4dFN0YXRlQ2hhbmdlSW50ZW50KCkgeyByZXR1cm4gQVhUZXh0U3RhdGVDaGFu
Z2VJbnRlbnQoQVhUZXh0U3RhdGVDaGFuZ2VUeXBlU2VsZWN0aW9uTW92ZSwgQVhUZXh0U2VsZWN0
aW9uIHsgQVhUZXh0U2VsZWN0aW9uRGlyZWN0aW9uRGlzY29udGlndW91cywgQVhUZXh0U2VsZWN0
aW9uR3JhbnVsYXJpdHlVbmtub3duLCB0cnVlIH0pOyB9Ci0gICAgdmlydHVhbCB2b2lkIGZvY3Vz
KGJvb2wgcmVzdG9yZVByZXZpb3VzU2VsZWN0aW9uID0gdHJ1ZSwgRm9jdXNEaXJlY3Rpb24gPSBG
b2N1c0RpcmVjdGlvbk5vbmUpOworICAgIHZpcnR1YWwgdm9pZCBmb2N1cyhjb25zdCBGb2N1c09w
dGlvbnMmID0geyB9KTsKKyAgICBlbnVtIGNsYXNzIFByZXZlbnRTY3JvbGwgeyBObywgWWVzIH07
CiAgICAgdm9pZCByZXZlYWxGb2N1c2VkRWxlbWVudChTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGUp
OwogICAgIHZpcnR1YWwgUmVmUHRyPEVsZW1lbnQ+IGZvY3VzQXBwZWFyYW5jZVVwZGF0ZVRhcmdl
dCgpOwogICAgIHZpcnR1YWwgdm9pZCB1cGRhdGVGb2N1c0FwcGVhcmFuY2UoU2VsZWN0aW9uUmVz
dG9yYXRpb25Nb2RlLCBTZWxlY3Rpb25SZXZlYWxNb2RlID0gU2VsZWN0aW9uUmV2ZWFsTW9kZTo6
UmV2ZWFsKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Gb2N1c09wdGlvbnMuaCBi
L1NvdXJjZS9XZWJDb3JlL2RvbS9Gb2N1c09wdGlvbnMuaApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jOGY1MjBmZWVl
OWI3NmIwOWM5NmE1NDY0NTRmMWIwYmRlNzYxMzYwCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNl
L1dlYkNvcmUvZG9tL0ZvY3VzT3B0aW9ucy5oCkBAIC0wLDAgKzEsMzggQEAKKy8qCisgKiBDb3B5
cmlnaHQgKEMpIDIwMjAgSWdhbGlhIFMuTC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBS
ZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9y
IHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRo
ZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9u
cyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2Ug
dGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlv
biBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4K
KyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycn
IEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB
QklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NM
QUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMg
QkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwK
KyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNs
dWRlICJGb2N1c0RpcmVjdGlvbi5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK3N0cnVjdCBG
b2N1c09wdGlvbnMgeworICAgIGJvb2wgcmVzdG9yZVByZXZpb3VzU2VsZWN0aW9uIHsgdHJ1ZSB9
OworICAgIEZvY3VzRGlyZWN0aW9uIGRpcmVjdGlvbiB7IEZvY3VzRGlyZWN0aW9uTm9uZSB9Owor
ICAgIGJvb2wgcHJldmVudFNjcm9sbCB7IGZhbHNlIH07Cit9OworCit9IC8vIG5hbWVzcGFjZSBX
ZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRm9jdXNPcHRpb25zLmlkbCBi
L1NvdXJjZS9XZWJDb3JlL2RvbS9Gb2N1c09wdGlvbnMuaWRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjE3MzkwMjM5
NzQ4NDNlZWYwNjQyZTA1N2Q2M2QwYzJiODE3OGJlMGMKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9kb20vRm9jdXNPcHRpb25zLmlkbApAQCAtMCwwICsxLDI4IEBACisvKgorICog
Q29weXJpZ2h0IChDKSAyMDIwIElnYWxpYSBTLkwuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgor
ICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRp
b24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMg
SVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNI
QU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBE
SVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgorICogQ09OVFJJQlVU
T1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJ
QUwsCisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9S
IFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNT
IElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJ
QUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAor
ICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZ
IE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0Yg
VEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKK2RpY3Rpb25hcnkgRm9jdXNP
cHRpb25zIHsKKyAgIGJvb2xlYW4gcHJldmVudFNjcm9sbCA9IGZhbHNlOworfTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExhYmVsRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0hUTUxMYWJlbEVsZW1lbnQuY3BwCmluZGV4IDM3ZjljYTU2ZTgwZDczMjQxMDNi
MWExMjZmYzIyYzY2NWEwOGFkM2MuLmIzMjAxYmY5YWQ3YjU2OTFmODkxNDdkMzk4M2YwMmRhMDVm
YTkwYzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExhYmVsRWxlbWVudC5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGFiZWxFbGVtZW50LmNwcApAQCAtMTcy
LDIxICsxNzIsMjEgQEAgYm9vbCBIVE1MTGFiZWxFbGVtZW50Ojp3aWxsUmVzcG9uZFRvTW91c2VD
bGlja0V2ZW50cygpCiAgICAgcmV0dXJuIChlbGVtZW50ICYmIGVsZW1lbnQtPndpbGxSZXNwb25k
VG9Nb3VzZUNsaWNrRXZlbnRzKCkpIHx8IEhUTUxFbGVtZW50Ojp3aWxsUmVzcG9uZFRvTW91c2VD
bGlja0V2ZW50cygpOwogfQogCi12b2lkIEhUTUxMYWJlbEVsZW1lbnQ6OmZvY3VzKGJvb2wgcmVz
dG9yZVByZXZpb3VzU2VsZWN0aW9uLCBGb2N1c0RpcmVjdGlvbiBkaXJlY3Rpb24pCit2b2lkIEhU
TUxMYWJlbEVsZW1lbnQ6OmZvY3VzKGNvbnN0IEZvY3VzT3B0aW9ucyYgb3B0aW9ucykKIHsKICAg
ICBSZWY8SFRNTExhYmVsRWxlbWVudD4gcHJvdGVjdGVkVGhpcygqdGhpcyk7CiAgICAgaWYgKGRv
Y3VtZW50KCkuaGF2ZVN0eWxlc2hlZXRzTG9hZGVkKCkpIHsKICAgICAgICAgZG9jdW1lbnQoKS51
cGRhdGVMYXlvdXQoKTsKICAgICAgICAgaWYgKGlzRm9jdXNhYmxlKCkpIHsKICAgICAgICAgICAg
IC8vIFRoZSB2YWx1ZSBvZiByZXN0b3JlUHJldmlvdXNTZWxlY3Rpb24gaXMgbm90IHVzZWQgZm9y
IGxhYmVsIGVsZW1lbnRzIGFzIGl0IGRvZXNuJ3Qgb3ZlcnJpZGUgdXBkYXRlRm9jdXNBcHBlYXJh
bmNlLgotICAgICAgICAgICAgRWxlbWVudDo6Zm9jdXMocmVzdG9yZVByZXZpb3VzU2VsZWN0aW9u
LCBkaXJlY3Rpb24pOworICAgICAgICAgICAgRWxlbWVudDo6Zm9jdXMob3B0aW9ucyk7CiAgICAg
ICAgICAgICByZXR1cm47CiAgICAgICAgIH0KICAgICB9CiAKICAgICAvLyBUbyBtYXRjaCBvdGhl
ciBicm93c2VycywgYWx3YXlzIHJlc3RvcmUgcHJldmlvdXMgc2VsZWN0aW9uLgogICAgIGlmIChh
dXRvIGVsZW1lbnQgPSBjb250cm9sKCkpCi0gICAgICAgIGVsZW1lbnQtPmZvY3VzKHRydWUsIGRp
cmVjdGlvbik7CisgICAgICAgIGVsZW1lbnQtPmZvY3VzKHt0cnVlLCBvcHRpb25zLmRpcmVjdGlv
biwgb3B0aW9ucy5wcmV2ZW50U2Nyb2xsfSk7CiB9CiAKIGJvb2wgSFRNTExhYmVsRWxlbWVudDo6
YWNjZXNzS2V5QWN0aW9uKGJvb2wgc2VuZE1vdXNlRXZlbnRzKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvaHRtbC9IVE1MTGFiZWxFbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxMYWJlbEVsZW1lbnQuaAppbmRleCA0NjYwZjA2Nzc3MzUxY2U2ZGM4OTVjODFiYjA3MjQ3Yzlj
NDMyMGVlLi5kNTZkNWI2Yjk0M2RkOWNmOTBlZDBkM2MzMGQxOWY0Mzc0NDgzNzYyIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMYWJlbEVsZW1lbnQuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxMYWJlbEVsZW1lbnQuaApAQCAtNTEsNyArNTEsNyBAQCBwcml2YXRl
OgogICAgIC8vIE92ZXJyaWRkZW4gdG8gZWl0aGVyIGNsaWNrKCkgb3IgZm9jdXMoKSB0aGUgY29y
cmVzcG9uZGluZyBjb250cm9sLgogICAgIHZvaWQgZGVmYXVsdEV2ZW50SGFuZGxlcihFdmVudCYp
IGZpbmFsOwogCi0gICAgdm9pZCBmb2N1cyhib29sIHJlc3RvcmVQcmV2aW91c1NlbGVjdGlvbiwg
Rm9jdXNEaXJlY3Rpb24pIGZpbmFsOworICAgIHZvaWQgZm9jdXMoY29uc3QgRm9jdXNPcHRpb25z
JikgZmluYWw7CiAKICAgICBib29sIGlzSW50ZXJhY3RpdmVDb250ZW50KCkgY29uc3QgZmluYWwg
eyByZXR1cm4gdHJ1ZTsgfQogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRN
TExlZ2VuZEVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGVnZW5kRWxlbWVu
dC5jcHAKaW5kZXggYTFlNTdjZmU0ZDBiMWYyMDgwMDcxZjQ3MmQ0NDlmNmI2MDhhMjI3Ni4uZDQ5
MTI2MDlhYjM1MzI2NWYxMDAzY2FlYTdjODQ5YWJhNTg4MjRlZCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvaHRtbC9IVE1MTGVnZW5kRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MTGVnZW5kRWxlbWVudC5jcHAKQEAgLTU3LDE5ICs1NywxOSBAQCBSZWZQdHI8SFRN
TEZvcm1Db250cm9sRWxlbWVudD4gSFRNTExlZ2VuZEVsZW1lbnQ6OmFzc29jaWF0ZWRDb250cm9s
KCkKICAgICByZXR1cm4gZGVzY2VuZGFudHNPZlR5cGU8SFRNTEZvcm1Db250cm9sRWxlbWVudD4o
KmVuY2xvc2luZ0ZpZWxkc2V0KS5maXJzdCgpOwogfQogCi12b2lkIEhUTUxMZWdlbmRFbGVtZW50
Ojpmb2N1cyhib29sIHJlc3RvcmVQcmV2aW91c1NlbGVjdGlvbiwgRm9jdXNEaXJlY3Rpb24gZGly
ZWN0aW9uKQordm9pZCBIVE1MTGVnZW5kRWxlbWVudDo6Zm9jdXMoY29uc3QgRm9jdXNPcHRpb25z
JiBvcHRpb25zKQogewogICAgIGlmIChkb2N1bWVudCgpLmhhdmVTdHlsZXNoZWV0c0xvYWRlZCgp
KSB7CiAgICAgICAgIGRvY3VtZW50KCkudXBkYXRlTGF5b3V0SWdub3JlUGVuZGluZ1N0eWxlc2hl
ZXRzKCk7CiAgICAgICAgIGlmIChpc0ZvY3VzYWJsZSgpKSB7Ci0gICAgICAgICAgICBFbGVtZW50
Ojpmb2N1cyhyZXN0b3JlUHJldmlvdXNTZWxlY3Rpb24sIGRpcmVjdGlvbik7CisgICAgICAgICAg
ICBFbGVtZW50Ojpmb2N1cyhvcHRpb25zKTsKICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAg
fQogICAgIH0KIAogICAgIC8vIFRvIG1hdGNoIG90aGVyIGJyb3dzZXJzJyBiZWhhdmlvciwgbmV2
ZXIgcmVzdG9yZSBwcmV2aW91cyBzZWxlY3Rpb24uCiAgICAgaWYgKGF1dG8gY29udHJvbCA9IGFz
c29jaWF0ZWRDb250cm9sKCkpCi0gICAgICAgIGNvbnRyb2wtPmZvY3VzKGZhbHNlLCBkaXJlY3Rp
b24pOworICAgICAgICBjb250cm9sLT5mb2N1cyh7IGZhbHNlLCBvcHRpb25zLmRpcmVjdGlvbiwg
b3B0aW9ucy5wcmV2ZW50U2Nyb2xsIH0pOwogfQogCiBib29sIEhUTUxMZWdlbmRFbGVtZW50Ojph
Y2Nlc3NLZXlBY3Rpb24oYm9vbCBzZW5kTW91c2VFdmVudHMpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxMZWdlbmRFbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxMZWdlbmRFbGVtZW50LmgKaW5kZXggMmRmNjIyOTcxZjEzNzkyMmRjMzhjODg1NDkyZDJmMzg1
NDZmMmExYS4uOTMyMTU5MDUwMzkzZTNjZWY2MWQyMzlmZDUwOGJlYzc1ZWFlYzU3YyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGVnZW5kRWxlbWVudC5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvSFRNTExlZ2VuZEVsZW1lbnQuaApAQCAtNDMsNyArNDMsNyBAQCBwcml2
YXRlOgogICAgIFJlZlB0cjxIVE1MRm9ybUNvbnRyb2xFbGVtZW50PiBhc3NvY2lhdGVkQ29udHJv
bCgpOwogCiAgICAgYm9vbCBhY2Nlc3NLZXlBY3Rpb24oYm9vbCBzZW5kTW91c2VFdmVudHMpIGZp
bmFsOwotICAgIHZvaWQgZm9jdXMoYm9vbCByZXN0b3JlUHJldmlvdXNTZWxlY3Rpb24sIEZvY3Vz
RGlyZWN0aW9uKSBmaW5hbDsKKyAgICB2b2lkIGZvY3VzKGNvbnN0IEZvY3VzT3B0aW9ucyYpIGZp
bmFsOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvaHRtbC9IVE1MT3JGb3JlaWduRWxlbWVudC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9odG1s
L0hUTUxPckZvcmVpZ25FbGVtZW50LmlkbAppbmRleCBmM2IxMzMyZWJhZjdhOGMzOWZiMjU0YmI1
YzhjMDM2ZTQzZTJlMTg0Li5iNGE3ZDEzYTc2MDFiNzNmZmY3ZGY3ZmQ4MjM1ZWNkYzdlNWNhMmMy
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPckZvcmVpZ25FbGVtZW50Lmlk
bAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPckZvcmVpZ25FbGVtZW50LmlkbApAQCAt
MzQsNyArMzQsNyBAQCBpbnRlcmZhY2UgbWl4aW4gSFRNTE9yRm9yZWlnbkVsZW1lbnQgewogICAg
IC8vIEZJWE1FOiBJbXBsZW1lbnQgJ2F1dG9mb2N1cycuCiAgICAgLy8gW0NFUmVhY3Rpb25zXSBh
dHRyaWJ1dGUgYm9vbGVhbiBhdXRvZm9jdXM7CiAgICAgW0NFUmVhY3Rpb25zLCBJbXBsZW1lbnRl
ZEFzPXRhYkluZGV4Rm9yQmluZGluZ3NdIGF0dHJpYnV0ZSBsb25nIHRhYkluZGV4OwotICAgIC8v
IEZJTVhFOiBmb2N1cygpIGlzIHNwZWNpZmllZCB0byB0YWtlIGFuIG9wdGlvbmFsIEZvY3VzT3B0
aW9ucy4gSW1wbGVtZW50IHRoYXQuCi0gICAgdW5kZWZpbmVkIGZvY3VzKCk7CisgICAgdW5kZWZp
bmVkIGZvY3VzKG9wdGlvbmFsIEZvY3VzT3B0aW9ucyBvcHRpb25zKTsKICAgICB1bmRlZmluZWQg
Ymx1cigpOwogfTsKKwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9JbnB1dFR5cGUu
Y3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9JbnB1dFR5cGUuY3BwCmluZGV4IDI3MDYxOGJhOWU1
NWY2Y2IyMzc3NTI1MTQ3OWNkYjE2MzU5YTgxZmYuLjgyY2E1ZjI3MzkzZmMwYmYwYmEwOWVhOGZi
OGE1ZjM0MWVkZTI4OTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSW5wdXRUeXBl
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0lucHV0VHlwZS5jcHAKQEAgLTU4Miw3ICs1
ODIsNyBAQCB2b2lkIElucHV0VHlwZTo6aGFuZGxlQmx1ckV2ZW50KCkKIGJvb2wgSW5wdXRUeXBl
OjphY2Nlc3NLZXlBY3Rpb24oYm9vbCkKIHsKICAgICBBU1NFUlQoZWxlbWVudCgpKTsKLSAgICBl
bGVtZW50KCktPmZvY3VzKGZhbHNlKTsKKyAgICBlbGVtZW50KCktPmZvY3VzKHtmYWxzZX0pOwog
ICAgIHJldHVybiBmYWxzZTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9G
b2N1c0NvbnRyb2xsZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Gb2N1c0NvbnRyb2xsZXIu
Y3BwCmluZGV4IDYyYTllYTQwY2NjZmI4YjVlY2UzODZjNjM2ZTYzNmJjYjAzZDk4OTMuLmE5YzRk
M2VjY2U2ZDQyZjU2NTBlZjM5NjllZjYyODhlNTFmZjE3ZjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvRm9jdXNDb250cm9sbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdl
L0ZvY3VzQ29udHJvbGxlci5jcHAKQEAgLTUzMyw3ICs1MzMsNyBAQCBib29sIEZvY3VzQ29udHJv
bGxlcjo6YWR2YW5jZUZvY3VzSW5Eb2N1bWVudE9yZGVyKEZvY3VzRGlyZWN0aW9uIGRpcmVjdGlv
biwgS2V5YgogICAgICAgICB9CiAgICAgfQogCi0gICAgZWxlbWVudC0+Zm9jdXMoZmFsc2UsIGRp
cmVjdGlvbik7CisgICAgZWxlbWVudC0+Zm9jdXMoe2ZhbHNlLCBkaXJlY3Rpb259KTsKICAgICBy
ZXR1cm4gdHJ1ZTsKIH0KIApAQCAtMTEwNyw3ICsxMTA3LDcgQEAgYm9vbCBGb2N1c0NvbnRyb2xs
ZXI6OmFkdmFuY2VGb2N1c0RpcmVjdGlvbmFsbHlJbkNvbnRhaW5lcihOb2RlKiBjb250YWluZXIs
IGNvbnMKICAgICBFbGVtZW50KiBlbGVtZW50ID0gZG93bmNhc3Q8RWxlbWVudD4oZm9jdXNDYW5k
aWRhdGUuZm9jdXNhYmxlTm9kZSk7CiAgICAgQVNTRVJUKGVsZW1lbnQpOwogCi0gICAgZWxlbWVu
dC0+Zm9jdXMoZmFsc2UsIGRpcmVjdGlvbik7CisgICAgZWxlbWVudC0+Zm9jdXMoe2ZhbHNlLCBk
aXJlY3Rpb259KTsKICAgICByZXR1cm4gdHJ1ZTsKIH0KIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDU4ZGYxYjFjNmY1YzQy
M2Y4ZTUyZGEwOGE0M2QxN2UxNTQ3OWZlZTguLmQxOGY5ZGMwYmE4NDdkNGE2MjIzMTVkZmVmYTQ0
MzRmMTFmMzMzOTYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAyMC0xMC0wMiAgUm9iIEJ1aXMg
IDxyYnVpc0BpZ2FsaWEuY29tPgorCisgICAgICAgIEVuYWJsZSBhYmlsaXR5IHRvIHByZXZlbnQg
c2Nyb2xsaW5nIGluIEVsZW1lbnQuZm9jdXMoKQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc4NTgzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9pb3Mtd2syL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9pbnRlcmFjdGlvbi9mb2N1cy9wcm9jZXNzaW5nLW1vZGVsL3By
ZXZlbnRTY3JvbGwtdGV4dGFyZWEtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIHBs
YXRmb3JtL21hYy13azEvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2ludGVy
YWN0aW9uL2ZvY3VzL3Byb2Nlc3NpbmctbW9kZWwvcHJldmVudFNjcm9sbC10ZXh0YXJlYS1leHBl
Y3RlZC50eHQ6IFJlbW92ZWQuCisKIDIwMjAtMDktMzAgIEFudG9pbmUgUXVpbnQgIDxncmFvdXRz
QHdlYmtpdC5vcmc+CiAKICAgICAgICAgQWRkIG5vbi1hbmltYXRlZCBzdXBwb3J0IGZvciB0aGUg
Q1NTIHRyYW5zbGF0ZSBwcm9wZXJ0eQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKaW5kZXgg
NDcxNmViYzgwODAxZGI2NmIxYjAyYTQxZGNiZDRiZjQ0N2JmOWRmMS4uNzk4OTlmYzQ2NzI0ZGE5
OTBiNzUwMDNjYzJkNDc5ZjIwMzY0OTlmNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMTQgQEAKKzIwMjAtMTAtMDIgIFJvYiBCdWlzICA8cmJ1aXNAaWdhbGlhLmNv
bT4KKworICAgICAgICBFbmFibGUgYWJpbGl0eSB0byBwcmV2ZW50IHNjcm9sbGluZyBpbiBFbGVt
ZW50LmZvY3VzKCkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTE3ODU4MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIFVwZGF0ZSBpbXByb3ZlZCB0ZXN0IHJlc3VsdC4KKworICAgICAgICAqIHdlYi1wbGF0Zm9y
bS10ZXN0cy9odG1sL2ludGVyYWN0aW9uL2ZvY3VzL3Byb2Nlc3NpbmctbW9kZWwvcHJldmVudFNj
cm9sbC10ZXh0YXJlYS1leHBlY3RlZC50eHQ6CisKIDIwMjAtMDktMzAgIEFudG9pbmUgUXVpbnQg
IDxncmFvdXRzQHdlYmtpdC5vcmc+CiAKICAgICAgICAgQWRkIG5vbi1hbmltYXRlZCBzdXBwb3J0
IGZvciB0aGUgQ1NTIHRyYW5zbGF0ZSBwcm9wZXJ0eQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2ludGVyYWN0aW9uL2ZvY3VzL3By
b2Nlc3NpbmctbW9kZWwvcHJldmVudFNjcm9sbC10ZXh0YXJlYS1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvaW50ZXJhY3Rpb24v
Zm9jdXMvcHJvY2Vzc2luZy1tb2RlbC9wcmV2ZW50U2Nyb2xsLXRleHRhcmVhLWV4cGVjdGVkLnR4
dAppbmRleCAwOGFhZmIzMTYzNjA4NDkwODc5ODBlMDA1MDQyZDdjODVhZGE4NjViLi5jNzM0YTY5
ZGU5YTVjZmY1YWQ1NWVlZjljZGQxZDZkMmVlY2U2ZDNhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvaW50ZXJhY3Rpb24vZm9jdXMv
cHJvY2Vzc2luZy1tb2RlbC9wcmV2ZW50U2Nyb2xsLXRleHRhcmVhLWV4cGVjdGVkLnR4dAorKysg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvaW50ZXJh
Y3Rpb24vZm9jdXMvcHJvY2Vzc2luZy1tb2RlbC9wcmV2ZW50U2Nyb2xsLXRleHRhcmVhLWV4cGVj
dGVkLnR4dApAQCAtMSw0ICsxLDQgQEAKIAogCi1GQUlMIHByZXZlbnRTY3JvbGw6IHRydWUgb24g
YSB0ZXh0YXJlYSBlbGVtZW50IGFzc2VydF9lcXVhbHM6IFRFWFRBUkVBOiBTaG91bGQgbm90IGhh
dmUgc2Nyb2xsZWQgYWZ0ZXIgYSBjb3VwbGUgZXZlbnQgbG9vcCB0aWNrcyBleHBlY3RlZCAwIGJ1
dCBnb3QgOTIwCitQQVNTIHByZXZlbnRTY3JvbGw6IHRydWUgb24gYSB0ZXh0YXJlYSBlbGVtZW50
CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy13azIvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2ludGVyYWN0aW9uL2ZvY3VzL3Byb2Nlc3NpbmctbW9k
ZWwvcHJldmVudFNjcm9sbC10ZXh0YXJlYS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS9pb3Mtd2syL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9pbnRlcmFj
dGlvbi9mb2N1cy9wcm9jZXNzaW5nLW1vZGVsL3ByZXZlbnRTY3JvbGwtdGV4dGFyZWEtZXhwZWN0
ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjNzM0YTY5ZGU5YTVjZmY1YWQ1
NWVlZjljZGQxZDZkMmVlY2U2ZDNhLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy13azIvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9odG1sL2ludGVyYWN0aW9uL2ZvY3VzL3Byb2Nlc3NpbmctbW9kZWwv
cHJldmVudFNjcm9sbC10ZXh0YXJlYS1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSw0
ICswLDAgQEAKLQotCi1QQVNTIHByZXZlbnRTY3JvbGw6IHRydWUgb24gYSB0ZXh0YXJlYSBlbGVt
ZW50Ci0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azEvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2ludGVyYWN0aW9uL2ZvY3VzL3Byb2Nlc3Npbmct
bW9kZWwvcHJldmVudFNjcm9sbC10ZXh0YXJlYS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS9tYWMtd2sxL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9pbnRl
cmFjdGlvbi9mb2N1cy9wcm9jZXNzaW5nLW1vZGVsL3ByZXZlbnRTY3JvbGwtdGV4dGFyZWEtZXhw
ZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1MmFiYWJiZmJkNzI3ZWNk
ZmJiY2RkZDZjYzhlMTAwZDNkZDljYWY1Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azEvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2ludGVyYWN0aW9uL2ZvY3VzL3Byb2Nlc3NpbmctbW9k
ZWwvcHJldmVudFNjcm9sbC10ZXh0YXJlYS1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAt
MSw0ICswLDAgQEAKLQotCi1GQUlMIHByZXZlbnRTY3JvbGw6IHRydWUgb24gYSB0ZXh0YXJlYSBl
bGVtZW50IGFzc2VydF9lcXVhbHM6IFRFWFRBUkVBOiBTaG91bGQgbm90IGhhdmUgc2Nyb2xsZWQg
ZXhwZWN0ZWQgMCBidXQgZ290IDkyMAotCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>417535</attachid>
            <date>2021-01-13 08:26:44 -0800</date>
            <delta_ts>2021-01-15 01:54:05 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-178583-20210113172642.patch</filename>
            <type>text/plain</type>
            <size>29590</size>
            <attacher name="Rob Buis">rbuis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcxNDM5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNWU5ZmYzODE3NDg5MWMy
ZDM0YmEwNzFjYzlkNmU0MzBlODQ4YjE5Yy4uZTY2NDVmMjIyMWQ4NTAxY2IxM2QyMzRlYWQzNTdi
Y2I4Zjk2ZDVkOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ2IEBACisyMDIxLTAxLTEzICBSb2Ig
QnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgRW5hYmxlIGFiaWxpdHkgdG8gcHJl
dmVudCBzY3JvbGxpbmcgaW4gRWxlbWVudC5mb2N1cygpCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzg1ODMKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgRm9jdXNPcHRpb25zIHBhcmFtZXRlciB0byB0
aGUgZm9jdXMgbWV0aG9kIFsxXSBib3RoCisgICAgICAgIHRvIHRoZSBJREwgYXMgdGhlIEMrKyBz
aWRlLiBDaGFuZ2UgRWxlbWVudC5mb2N1cyB0byBub3QKKyAgICAgICAgc2Nyb2xsIGlmIEZvY3Vz
T3B0aW9ucy5wcmV2ZW50U2Nyb2xsIGlzIHRydWUuCisKKyAgICAgICAgQmVoYXZpb3IgbWF0Y2hl
cyBDaHJvbWUgYW5kIEZpcmVmb3guCisKKyAgICAgICAgVGVzdDogaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9odG1sL2ludGVyYWN0aW9uL2ZvY3VzL3Byb2Nlc3NpbmctbW9kZWwvcHJl
dmVudFNjcm9sbC10ZXh0Lmh0bWwKKworICAgICAgICBbMV0gaHR0cHM6Ly9odG1sLnNwZWMud2hh
dHdnLm9yZy9tdWx0aXBhZ2UvaW50ZXJhY3Rpb24uaHRtbCNkb20tZm9jdXMKKworICAgICAgICAq
IENNYWtlTGlzdHMudHh0OgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLWlucHV0LnhjZmlsZWxp
c3Q6CisgICAgICAgICogRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3Q6CisgICAgICAg
ICogRGVyaXZlZFNvdXJjZXMubWFrZToKKyAgICAgICAgKiBIZWFkZXJzLmNtYWtlOgorICAgICAg
ICAqIFNvdXJjZXMudHh0OgorICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvajoKKyAgICAgICAgKiBkb20vRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpFbGVt
ZW50Ojpmb2N1cyk6CisgICAgICAgICogZG9tL0VsZW1lbnQuaDoKKyAgICAgICAgKFdlYkNvcmU6
OkVsZW1lbnQ6OmZvY3VzKToKKyAgICAgICAgKiBkb20vRm9jdXNPcHRpb25zLmg6IENvcGllZCBm
cm9tIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE9yRm9yZWlnbkVsZW1lbnQuaWRsLgorICAgICAg
ICAqIGRvbS9Gb2N1c09wdGlvbnMuaWRsOiBDb3BpZWQgZnJvbSBTb3VyY2UvV2ViQ29yZS9odG1s
L0hUTUxPckZvcmVpZ25FbGVtZW50LmlkbC4KKyAgICAgICAgKiBodG1sL0hUTUxMYWJlbEVsZW1l
bnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTExhYmVsRWxlbWVudDo6Zm9jdXMpOgorICAg
ICAgICAqIGh0bWwvSFRNTExhYmVsRWxlbWVudC5oOgorICAgICAgICAqIGh0bWwvSFRNTExlZ2Vu
ZEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTExlZ2VuZEVsZW1lbnQ6OmZvY3Vz
KToKKyAgICAgICAgKiBodG1sL0hUTUxMZWdlbmRFbGVtZW50Lmg6CisgICAgICAgICogaHRtbC9I
VE1MT3JGb3JlaWduRWxlbWVudC5pZGw6CisgICAgICAgICogaHRtbC9JbnB1dFR5cGUuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6SW5wdXRUeXBlOjphY2Nlc3NLZXlBY3Rpb24pOgorICAgICAgICAq
IHBhZ2UvRm9jdXNDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZvY3VzQ29udHJv
bGxlcjo6YWR2YW5jZUZvY3VzSW5Eb2N1bWVudE9yZGVyKToKKyAgICAgICAgKFdlYkNvcmU6OkZv
Y3VzQ29udHJvbGxlcjo6YWR2YW5jZUZvY3VzRGlyZWN0aW9uYWxseUluQ29udGFpbmVyKToKKwog
MjAyMS0wMS0xMyAgTWFydGluIFJvYmluc29uICA8bXJvYmluc29uQGlnYWxpYS5jb20+CiAKICAg
ICAgICAgU2Nyb2xsLXNuYXAgcG9pbnRzIHNob3VsZCBiZSB0cmlnZ2VyZWQgZHVyaW5nIHByb2dy
YW1tYXRpYyBzY3JvbGwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0
IGIvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKaW5kZXggNjQzZDdkOWJmNzk0ZDM2Y2Vi
Y2Y2NjM2YjYwNmU0ODdkMTkwZTRlZS4uZGFmZWIzYWQyM2Y3NjlkNWIzODAxYmNjNjU5ZTc2NTJh
Y2E3YWYzNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIv
U291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKQEAgLTg0Niw2ICs4NDYsNyBAQCBzZXQoV2Vi
Q29yZV9OT05fU1ZHX0lETF9GSUxFUwogICAgIGRvbS9FdmVudE1vZGlmaWVySW5pdC5pZGwKICAg
ICBkb20vRXZlbnRUYXJnZXQuaWRsCiAgICAgZG9tL0ZvY3VzRXZlbnQuaWRsCisgICAgZG9tL0Zv
Y3VzT3B0aW9ucy5pZGwKICAgICBkb20vR2xvYmFsRXZlbnRIYW5kbGVycytQb2ludGVyRXZlbnRz
LmlkbAogICAgIGRvbS9HbG9iYWxFdmVudEhhbmRsZXJzK1NlbGVjdGlvbi5pZGwKICAgICBkb20v
R2xvYmFsRXZlbnRIYW5kbGVycy5pZGwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2
ZWRTb3VyY2VzLWlucHV0LnhjZmlsZWxpc3QgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNl
cy1pbnB1dC54Y2ZpbGVsaXN0CmluZGV4IDgzMTdkNTVkYmFhOGQ3NWUzZDE5NTJmZTVkOTBiNjI2
ZWRmNzY4NTMuLjU0YmZhZjUwZjE2ZjU1ZjU2MGM3MDhjY2RkZDgxOWMxOWZiYWZlMTUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLWlucHV0LnhjZmlsZWxpc3QKKysr
IGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdApAQCAtNzY1
LDYgKzc2NSw3IEBAICQoUFJPSkVDVF9ESVIpL2RvbS9FdmVudE5hbWVzLmluCiAkKFBST0pFQ1Rf
RElSKS9kb20vRXZlbnRUYXJnZXQuaWRsCiAkKFBST0pFQ1RfRElSKS9kb20vRXZlbnRUYXJnZXRG
YWN0b3J5LmluCiAkKFBST0pFQ1RfRElSKS9kb20vRm9jdXNFdmVudC5pZGwKKyQoUFJPSkVDVF9E
SVIpL2RvbS9Gb2N1c09wdGlvbnMuaWRsCiAkKFBST0pFQ1RfRElSKS9kb20vR2xvYmFsRXZlbnRI
YW5kbGVycytQb2ludGVyRXZlbnRzLmlkbAogJChQUk9KRUNUX0RJUikvZG9tL0dsb2JhbEV2ZW50
SGFuZGxlcnMrU2VsZWN0aW9uLmlkbAogJChQUk9KRUNUX0RJUikvZG9tL0dsb2JhbEV2ZW50SGFu
ZGxlcnMuaWRsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1vdXRw
dXQueGNmaWxlbGlzdCBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2Zp
bGVsaXN0CmluZGV4IDMyZTBhMjkxZjgxNzYyNGFhYTVmMWEwY2RmMTdjNTQ4ODc1MGJhNzkuLmVl
YmVkMjhmM2I3MDYyODRjZTMwZDMyMjRlOTk1NzMwY2M5MTMyOWEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0CisrKyBiL1NvdXJjZS9X
ZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0CkBAIC04MTMsNiArODEzLDgg
QEAgJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNGaWxsTW9k
ZS5jcHAKICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTRmls
bE1vZGUuaAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNG
b2N1c0V2ZW50LmNwcAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNv
cmUvSlNGb2N1c0V2ZW50LmgKKyQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9X
ZWJDb3JlL0pTRm9jdXNPcHRpb25zLmNwcAorJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRT
b3VyY2VzL1dlYkNvcmUvSlNGb2N1c09wdGlvbnMuaAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rl
cml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNGb250RmFjZS5jcHAKICQoQlVJTFRfUFJPRFVDVFNfRElS
KS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTRm9udEZhY2UuaAogJChCVUlMVF9QUk9EVUNUU19E
SVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNGb250RmFjZVNldC5jcHAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UgYi9Tb3VyY2UvV2ViQ29yZS9EZXJp
dmVkU291cmNlcy5tYWtlCmluZGV4IDk1MWFiNmIwZmM0NGJjZmFkY2ExMGUzZDhjY2I3OWI3N2M2
MTBmMjcuLjI5ODc4MzIxN2ZjYzI5YzQ5Y2Q0OGM2MmExYzdiNTRhZTVkNmEyNWUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKKysrIGIvU291cmNlL1dlYkNv
cmUvRGVyaXZlZFNvdXJjZXMubWFrZQpAQCAtNzIwLDYgKzcyMCw3IEBAIEpTX0JJTkRJTkdfSURM
UyA6PSBcCiAgICAgJChXZWJDb3JlKS9kb20vRXZlbnRNb2RpZmllckluaXQuaWRsIFwKICAgICAk
KFdlYkNvcmUpL2RvbS9FdmVudFRhcmdldC5pZGwgXAogICAgICQoV2ViQ29yZSkvZG9tL0ZvY3Vz
RXZlbnQuaWRsIFwKKyAgICAkKFdlYkNvcmUpL2RvbS9Gb2N1c09wdGlvbnMuaWRsIFwKICAgICAk
KFdlYkNvcmUpL2RvbS9HbG9iYWxFdmVudEhhbmRsZXJzK1BvaW50ZXJFdmVudHMuaWRsIFwKICAg
ICAkKFdlYkNvcmUpL2RvbS9HbG9iYWxFdmVudEhhbmRsZXJzK1NlbGVjdGlvbi5pZGwgXAogICAg
ICQoV2ViQ29yZSkvZG9tL0dsb2JhbEV2ZW50SGFuZGxlcnMuaWRsIFwKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UgYi9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtl
CmluZGV4IGFkZTVjNjkwMjQyOTc2MjVjNzBkYWI3OTBhNWMyYzVhODc3N2VjNjEuLjU1YmU1OWZj
NWQ1ZGQ1MmQ1NDUwNDM1NDI0NGM0MzQwZTcwNGUwZTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL0hlYWRlcnMuY21ha2UKKysrIGIvU291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZQpAQCAt
NDUzLDYgKzQ1Myw3IEBAIHNldChXZWJDb3JlX1BSSVZBVEVfRlJBTUVXT1JLX0hFQURFUlMKICAg
ICBkb20vRXhjZXB0aW9uQ29kZS5oCiAgICAgZG9tL0V4Y2VwdGlvbkRhdGEuaAogICAgIGRvbS9F
eGNlcHRpb25Pci5oCisgICAgZG9tL0ZvY3VzT3B0aW9ucy5oCiAgICAgZG9tL0ZyYWdtZW50U2Ny
aXB0aW5nUGVybWlzc2lvbi5oCiAgICAgZG9tL0Z1bGxzY3JlZW5NYW5hZ2VyLmgKICAgICBkb20v
R0NSZWFjaGFibGVSZWYuaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQg
Yi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dAppbmRleCAxYjlmMGQ4Mzc4MjliZGYzZGE1ODVl
N2ZkMjNlMzEyMzY2YTdhNWZmLi45N2Q2OTE1ZjQ1Nzk5YzJjMzRkZjY3MDAzMGU5ZTdiZDE1Y2I1
MDYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9Tb3VyY2VzLnR4dApAQCAtMjk5MCw2ICsyOTkwLDcgQEAgSlNGaWxlU3lzdGVtRW50
cnlDYWxsYmFjay5jcHAKIEpTRmlsZVN5c3RlbUZpbGVFbnRyeS5jcHAKIEpTRmlsbE1vZGUuY3Bw
CiBKU0ZvY3VzRXZlbnQuY3BwCitKU0ZvY3VzT3B0aW9ucy5jcHAKIEpTRm9udEZhY2UuY3BwCiBK
U0ZvbnRGYWNlU2V0LmNwcAogSlNHUFVCaW5kR3JvdXBMYXlvdXRCaW5kaW5nLmNwcApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIv
U291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDQx
OWEwOTExODQzMWIzYmZiZWY1ZjAwNjZjMDEzMDQyMmYwNDdlY2YuLjUyZTZiMGE1ODZjMmRmMGNm
ZGQxNzE0MTg1NDI4ZjBhYWY4NTRiOTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNv
cmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3Jl
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTM1NzEsNiArMzU3MSw3IEBACiAJCUFBN0ZF
RUFEMTZBNEU3NEIwMDRDMEMzMyAvKiBKU1NwZWVjaFN5bnRoZXNpcy5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQUE3RkVFQUMxNkE0RTc0QjAwNEMwQzMz
IC8qIEpTU3BlZWNoU3ludGhlc2lzLmggKi87IH07CiAJCUFBQTcyOEY3MTZEMUQ4QkMwMEQzQkJD
NiAvKiBXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlcklPUy5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQUFBNzI4RjExNkQxRDhCQzAwRDNCQkM2IC8q
IFdlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVySU9TLmggKi87IH07CiAJCUFBQzA4Q0YzMTVG
OTQxRkQwMEYxRTE4OCAvKiBBY2Nlc3NpYmlsaXR5U1ZHUm9vdC5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQUFDMDhDRjExNUY5NDFGQzAwRjFFMTg4IC8q
IEFjY2Vzc2liaWxpdHlTVkdSb290LmggKi87IH07CisJCUFBREVGRTQ1MjVBRjRGRDYwMDQwREQ2
NyAvKiBGb2N1c09wdGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEFBREVGRTQzMjVBRjRGQ0IwMDQwREQ2NyAvKiBGb2N1c09wdGlvbnMuaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlBQjIzQTMyODA5
QkJBN0QwMDA2N0NDNTMgLyogQmVmb3JlVGV4dEluc2VydGVkRXZlbnQuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEFCMjNBMzI2MDlCQkE3RDAwMDY3Q0M1
MyAvKiBCZWZvcmVUZXh0SW5zZXJ0ZWRFdmVudC5oICovOyB9OwogCQlBQjI0N0E2RDBBRkQ2Mzgz
MDAzRkE1RkQgLyogUmVuZGVyU2xpZGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBBQjI0N0E2QjBBRkQ2MzgzMDAzRkE1RkQgLyogUmVuZGVyU2xpZGVy
LmggKi87IH07CiAJCUFCMzFDOTFFMTBBRTFCOEUwMDBDN0I5MiAvKiBMaW5lQ2xhbXBWYWx1ZS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQUIzMUM5MUQx
MEFFMUI4RTAwMEM3QjkyIC8qIExpbmVDbGFtcFZhbHVlLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKQEAgLTEzMDUzLDYgKzEzMDU0LDcgQEAKIAkJQUEy
QTVBQzYxNkE0ODVENTAwOTc1QTI1IC8qIFNwZWVjaFN5bnRoZXNpc1ZvaWNlLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IFNwZWVjaFN5bnRoZXNpc1ZvaWNlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJQUEyQTVBQzcxNkE0ODVENTAwOTc1QTI1IC8qIFNwZWVjaFN5bnRoZXNpc1Zv
aWNlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNwZWVjaFN5bnRoZXNpc1ZvaWNlLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCUFBMkE1QUM4MTZBNDg1RDUwMDk3NUEyNSAvKiBTcGVlY2hTeW50
aGVzaXNWb2ljZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSB0ZXh0OyBwYXRoID0gU3BlZWNoU3ludGhlc2lzVm9pY2UuaWRsOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlBQTJFMEQwOTI1QUY1MTA0MDA3NjkzQkEgLyogRm9jdXNPcHRp
b25zLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IHRleHQ7IHBhdGggPSBGb2N1c09wdGlvbnMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQlBQTQ3OEE3RDE2Q0Q3MEMzMDA3RDFCQjQgLyogV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdy
YXBwZXJNYWMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViQWNjZXNzaWJp
bGl0eU9iamVjdFdyYXBwZXJNYWMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQUE0
NzhBN0UxNkNENzBDMzAwN0QxQkI0IC8qIFdlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyTWFj
Lm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGV4cGxpY2l0RmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5vYmpjcHA7IGZpbGVFbmNvZGluZyA9IDQ7IHBhdGggPSBXZWJBY2Nlc3NpYmls
aXR5T2JqZWN0V3JhcHBlck1hYy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQUE0
QzNBNzQwQjJCMTY3OTAwMjMzNEEyIC8qIElubGluZVN0eWxlU2hlZXRPd25lci5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSW5saW5lU3R5bGVTaGVldE93bmVyLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTEzMDc3LDYgKzEzMDc5LDcgQEAKIAkJ
QUFDQzgzRDgyMzE2NTc2QjAwRUI2QkY1IC8qIEpTSFRNTE9yRm9yZWlnbkVsZW1lbnQuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gSlNIVE1MT3JGb3JlaWduRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCUFBRDlEMEIxMjFERkE4MEMwMDFCMTFDNyAvKiBMYXp5TG9hZElt
YWdlT2JzZXJ2ZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTGF6
eUxvYWRJbWFnZU9ic2VydmVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQUFE
OUQwQjMyMURGQTgwRTAwMUIxMUM3IC8qIExhenlMb2FkSW1hZ2VPYnNlcnZlci5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBMYXp5TG9hZEltYWdlT2JzZXJ2ZXIuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQUFERUZFNDMyNUFGNEZDQjAwNDBERDY3IC8qIEZvY3Vz
T3B0aW9ucy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGb2N1c09wdGlvbnMuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJQUFFMjdCNzQxNkNCRkMwRDAwNjIzMDQzIC8qIFBsYXRmb3JtU3BlZWNo
U3ludGhlc2l6ZXJNb2NrLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IFBsYXRmb3JtU3BlZWNoU3ludGhlc2l6ZXJNb2NrLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJQUFFMjdCNzUxNkNCRkMwRDAwNjIzMDQzIC8qIFBsYXRmb3JtU3BlZWNoU3ludGhl
c2l6ZXJNb2NrLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBsYXRmb3JtU3Bl
ZWNoU3ludGhlc2l6ZXJNb2NrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUFBRTM3
NTVEMTc0MjlCQ0MwMDYyMDBDMiAvKiBQbGF0Zm9ybVNwZWVjaFN5bnRoZXNpemVySU9TLm1tICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gUGxhdGZvcm1TcGVlY2hTeW50
aGVzaXplcklPUy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTMwMTI0LDYgKzMw
MTI3LDggQEAKIAkJCQlCNkQ5RDIzNDE0RUFCRDI2MDA5MEQ3NUUgLyogRm9jdXNFdmVudC5jcHAg
Ki8sCiAJCQkJQjZEOUQyMzMxNEVBQkQyNjAwOTBENzVFIC8qIEZvY3VzRXZlbnQuaCAqLywKIAkJ
CQlCNkQ5RDI3MjE0RUFCRjAzMDA5MEQ3NUUgLyogRm9jdXNFdmVudC5pZGwgKi8sCisJCQkJQUFE
RUZFNDMyNUFGNEZDQjAwNDBERDY3IC8qIEZvY3VzT3B0aW9ucy5oICovLAorCQkJCUFBMkUwRDA5
MjVBRjUxMDQwMDc2OTNCQSAvKiBGb2N1c09wdGlvbnMuaWRsICovLAogCQkJCUE4NTMxMjNDMTFE
MDQ3MUIwMEQ0RDA3NyAvKiBGcmFnbWVudFNjcmlwdGluZ1Blcm1pc3Npb24uaCAqLywKIAkJCQlD
RDkyRjUxNzIyNjEwMzgyMDBGODdCQjMgLyogRnVsbHNjcmVlbk1hbmFnZXIuY3BwICovLAogCQkJ
CUNEOTJGNTE2MjI2MTAzODIwMEY4N0JCMyAvKiBGdWxsc2NyZWVuTWFuYWdlci5oICovLApAQCAt
MzIxMDMsNiArMzIxMDgsNyBAQAogCQkJCTE0OTkzQkU2MEIyRjJCMUMwMDUwNDk3RiAvKiBGb2N1
c0NvbnRyb2xsZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTA2MjI4Nzg0MEI0REIzMjIwMDBDMzRE
RiAvKiBGb2N1c0RpcmVjdGlvbi5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQjZEOUQyMzUxNEVBQkQy
NjAwOTBENzVFIC8qIEZvY3VzRXZlbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUFBREVGRTQ1MjVB
RjRGRDYwMDQwREQ2NyAvKiBGb2N1c09wdGlvbnMuaCBpbiBIZWFkZXJzICovLAogCQkJCUIyQzNE
QTY1MEQwMDZDRDYwMEVGNkYyNiAvKiBGb250LmggaW4gSGVhZGVycyAqLywKIAkJCQkxQUMyRDg5
RDFCMUUyOTFGMDBENTJFODcgLyogRm9udEFudGlhbGlhc2luZ1N0YXRlU2F2ZXIuaCBpbiBIZWFk
ZXJzICovLAogCQkJCUY0RTU3RURDMjEzRjNGNUYwMDRFQTk4RSAvKiBGb250QXR0cmlidXRlQ2hh
bmdlcy5oIGluIEhlYWRlcnMgKi8sCkBAIC0zMzA0Niw3ICszMzA1Miw2IEBACiAJCQkJRTQ0NjE0
MTkwQ0Q2ODI2OTAwRkFEQTc1IC8qIEpTTWVkaWFFcnJvci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
Q0RGNzU2QTMyMTVDMjlFOTAwRUZDQjUwIC8qIEpTTWVkaWFLZXlFbmNyeXB0aW9uU2NoZW1lLmgg
aW4gSGVhZGVycyAqLywKIAkJCQkyRDlCRjcyODFEQkZEQjBEMDA3QTdEOTkgLyogSlNNZWRpYUtl
eU1lc3NhZ2VFdmVudC5oIGluIEhlYWRlcnMgKi8sCi0JCQkJRTQ0MEZENTMyNUE0QUZERjAwRjdD
ODQ5IC8qIE1hcmtlZFRleHRTdHlsZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMkQ5QkY3MjkxREJG
REIxMDAwN0E3RDk5IC8qIEpTTWVkaWFLZXlzLmggaW4gSGVhZGVycyAqLywKIAkJCQkyRDlCRjcy
QTFEQkZEQjEzMDA3QTdEOTkgLyogSlNNZWRpYUtleVNlc3Npb24uaCBpbiBIZWFkZXJzICovLAog
CQkJCUNERjRCNzFFMUUwMUUxMUEwMEUyMzVBMiAvKiBKU01lZGlhS2V5U2Vzc2lvblR5cGUuaCBp
biBIZWFkZXJzICovLApAQCAtMzM2MTMsNiArMzM2MTgsNyBAQAogCQkJCTdBRTZDOTNDMUJFMEM2
MDEwMEUxOUUwMyAvKiBNYWluVGhyZWFkU2hhcmVkVGltZXIuaCBpbiBIZWFkZXJzICovLAogCQkJ
CUU0NTFDNjMyMjM5NDAzMUEwMDk5MzE5MCAvKiBNYXJnaW5UeXBlcy5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJQ0UxODY2NDUxRjcyRTVCNDAwQTBDQUI2IC8qIE1hcmtlZFRleHQuaCBpbiBIZWFkZXJz
ICovLAorCQkJCUU0NDBGRDUzMjVBNEFGREYwMEY3Qzg0OSAvKiBNYXJrZWRUZXh0U3R5bGUuaCBp
biBIZWFkZXJzICovLAogCQkJCTkzMzA5REY4MDk5RTY0OTIwMDU2RTU4MSAvKiBtYXJrdXAuaCBp
biBIZWFkZXJzICovLAogCQkJCTk3MjhDMzE0MTI2OEU0MzkwMDQxRTg5QiAvKiBNYXJrdXBBY2N1
bXVsYXRvci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMDBDNjBFM0YxM0Q3NkQ3RTAwOTJBMjc1IC8q
IE1hcmt1cFRva2VuaXplcklubGluZXMuaCBpbiBIZWFkZXJzICovLApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQu
Y3BwCmluZGV4IGQxZWY1Y2ZlMjZhYTc2NTExYTJkNmRmOWI5MzQyNzUyMThlN2RkNGEuLmQ1OTdk
OGMxZDU5ZjVmYmQzMjhkMjg5ZjhhNDVhMDA3OWI5NDdhMGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2RvbS9FbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5j
cHAKQEAgLTMwMDMsNyArMzAwMyw3IEBAIHN0YXRpYyBSZWZQdHI8RWxlbWVudD4gZmluZEZpcnN0
UHJvZ3JhbWF0aWNhbGx5Rm9jdXNhYmxlRWxlbWVudEluQ29tcG9zZWRUcmVlKEVsCiAgICAgcmV0
dXJuIG51bGxwdHI7CiB9CiAKLXZvaWQgRWxlbWVudDo6Zm9jdXMoU2VsZWN0aW9uUmVzdG9yYXRp
b25Nb2RlIHJlc3RvcmF0aW9uTW9kZSwgRm9jdXNEaXJlY3Rpb24gZGlyZWN0aW9uKQordm9pZCBF
bGVtZW50Ojpmb2N1cyhjb25zdCBGb2N1c09wdGlvbnMmIG9wdGlvbnMpCiB7CiAgICAgaWYgKCFp
c0Nvbm5lY3RlZCgpKQogICAgICAgICByZXR1cm47CkBAIC0zMDQ3LDExICszMDQ3LDEyIEBAIHZv
aWQgRWxlbWVudDo6Zm9jdXMoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlIHJlc3RvcmF0aW9uTW9k
ZSwgRm9jdXNEaXJlY3Rpb24gZGlyCiAgICAgICAgIC8vIEZvY3VzIGFuZCBjaGFuZ2UgZXZlbnQg
aGFuZGxlcnMgY2FuIGNhdXNlIHVzIHRvIGxvc2Ugb3VyIGxhc3QgcmVmLgogICAgICAgICAvLyBJ
ZiBhIGZvY3VzIGV2ZW50IGhhbmRsZXIgY2hhbmdlcyB0aGUgZm9jdXMgdG8gYSBkaWZmZXJlbnQg
bm9kZSBpdAogICAgICAgICAvLyBkb2VzIG5vdCBtYWtlIHNlbnNlIHRvIGNvbnRpbnVlIGFuZCB1
cGRhdGUgYXBwZWFyZW5jZS4KLSAgICAgICAgaWYgKCFwYWdlLT5mb2N1c0NvbnRyb2xsZXIoKS5z
ZXRGb2N1c2VkRWxlbWVudChuZXdUYXJnZXQuZ2V0KCksICpkb2N1bWVudC0+ZnJhbWUoKSwgZGly
ZWN0aW9uKSkKKyAgICAgICAgaWYgKCFwYWdlLT5mb2N1c0NvbnRyb2xsZXIoKS5zZXRGb2N1c2Vk
RWxlbWVudChuZXdUYXJnZXQuZ2V0KCksICpkb2N1bWVudC0+ZnJhbWUoKSwgb3B0aW9ucy5kaXJl
Y3Rpb24pKQogICAgICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIG5ld1RhcmdldC0+cmV2
ZWFsRm9jdXNlZEVsZW1lbnQocmVzdG9yYXRpb25Nb2RlKTsKKyAgICBpZiAoIW9wdGlvbnMucHJl
dmVudFNjcm9sbCkKKyAgICAgICAgbmV3VGFyZ2V0LT5yZXZlYWxGb2N1c2VkRWxlbWVudChvcHRp
b25zLnNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZSk7CiB9CiAKIHZvaWQgRWxlbWVudDo6cmV2ZWFs
Rm9jdXNlZEVsZW1lbnQoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlIHNlbGVjdGlvbk1vZGUpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUv
ZG9tL0VsZW1lbnQuaAppbmRleCAwOTEzZDAxOTViYTA4NDQ1YzEzNjA1OGFiNzY3YTdiMWIyMGEw
Y2U4Li41ZjEyZjIxZjU2ODFhNWQ3M2IyZDI4YjJlMmUxY2IzYjA2NDI1MDk1IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9F
bGVtZW50LmgKQEAgLTI3LDYgKzI3LDcgQEAKICNpbmNsdWRlICJBWFRleHRTdGF0ZUNoYW5nZUlu
dGVudC5oIgogI2luY2x1ZGUgIkRvY3VtZW50LmgiCiAjaW5jbHVkZSAiRWxlbWVudERhdGEuaCIK
KyNpbmNsdWRlICJGb2N1c09wdGlvbnMuaCIKICNpbmNsdWRlICJIVE1MTmFtZXMuaCIKICNpbmNs
dWRlICJTY3JvbGxUeXBlcy5oIgogI2luY2x1ZGUgIlNoYWRvd1Jvb3RJbml0LmgiCkBAIC0zOTks
NyArNDAwLDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgU3RyaW5nIHRhcmdldCgpIGNvbnN0IHsg
cmV0dXJuIFN0cmluZygpOyB9CiAKICAgICBzdGF0aWMgQVhUZXh0U3RhdGVDaGFuZ2VJbnRlbnQg
ZGVmYXVsdEZvY3VzVGV4dFN0YXRlQ2hhbmdlSW50ZW50KCkgeyByZXR1cm4gQVhUZXh0U3RhdGVD
aGFuZ2VJbnRlbnQoQVhUZXh0U3RhdGVDaGFuZ2VUeXBlU2VsZWN0aW9uTW92ZSwgQVhUZXh0U2Vs
ZWN0aW9uIHsgQVhUZXh0U2VsZWN0aW9uRGlyZWN0aW9uRGlzY29udGlndW91cywgQVhUZXh0U2Vs
ZWN0aW9uR3JhbnVsYXJpdHlVbmtub3duLCB0cnVlIH0pOyB9Ci0gICAgdmlydHVhbCB2b2lkIGZv
Y3VzKFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZSA9IFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZTo6
UmVzdG9yZU9yU2VsZWN0QWxsLCBGb2N1c0RpcmVjdGlvbiA9IEZvY3VzRGlyZWN0aW9uOjpOb25l
KTsKKyAgICB2aXJ0dWFsIHZvaWQgZm9jdXMoY29uc3QgRm9jdXNPcHRpb25zJiA9IHsgfSk7CiAg
ICAgdm9pZCByZXZlYWxGb2N1c2VkRWxlbWVudChTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGUpOwog
ICAgIHZpcnR1YWwgUmVmUHRyPEVsZW1lbnQ+IGZvY3VzQXBwZWFyYW5jZVVwZGF0ZVRhcmdldCgp
OwogICAgIHZpcnR1YWwgdm9pZCB1cGRhdGVGb2N1c0FwcGVhcmFuY2UoU2VsZWN0aW9uUmVzdG9y
YXRpb25Nb2RlLCBTZWxlY3Rpb25SZXZlYWxNb2RlID0gU2VsZWN0aW9uUmV2ZWFsTW9kZTo6UmV2
ZWFsKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Gb2N1c09wdGlvbnMuaCBiL1Nv
dXJjZS9XZWJDb3JlL2RvbS9Gb2N1c09wdGlvbnMuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40YTFjOWIzZjAyNzQz
MGQzYWZjNjk3NjY0NmYxYTA1ZTY4ZGM4M2Y2Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dl
YkNvcmUvZG9tL0ZvY3VzT3B0aW9ucy5oCkBAIC0wLDAgKzEsMzggQEAKKy8qCisgKiBDb3B5cmln
aHQgKEMpIDIwMjAgSWdhbGlhIFMuTC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
CisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAq
CisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFO
RCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklM
SVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlN
RUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUg
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAq
IEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
IFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRl
ICJGb2N1c0RpcmVjdGlvbi5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK3N0cnVjdCBGb2N1
c09wdGlvbnMgeworICAgIFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZSBzZWxlY3Rpb25SZXN0b3Jh
dGlvbk1vZGUgeyBTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGU6OlJlc3RvcmVPclNlbGVjdEFsbCB9
OworICAgIEZvY3VzRGlyZWN0aW9uIGRpcmVjdGlvbiB7IEZvY3VzRGlyZWN0aW9uOjpOb25lIH07
CisgICAgYm9vbCBwcmV2ZW50U2Nyb2xsIHsgZmFsc2UgfTsKK307CisKK30gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Gb2N1c09wdGlvbnMuaWRs
IGIvU291cmNlL1dlYkNvcmUvZG9tL0ZvY3VzT3B0aW9ucy5pZGwKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMTczOTAy
Mzk3NDg0M2VlZjA2NDJlMDU3ZDYzZDBjMmI4MTc4YmUwYwotLS0gL2Rldi9udWxsCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2RvbS9Gb2N1c09wdGlvbnMuaWRsCkBAIC0wLDAgKzEsMjggQEAKKy8qCisg
KiBDb3B5cmlnaHQgKEMpIDIwMjAgSWdhbGlhIFMuTC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAq
CisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Cisg
KiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXBy
b2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1l
bnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1
dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBB
UyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJF
IERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCisgKiBDT05UUklC
VVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BF
Q0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMg
T1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5F
U1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0Yg
TElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JU
CisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBX
QVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworZGljdGlvbmFyeSBGb2N1
c09wdGlvbnMgeworICAgYm9vbGVhbiBwcmV2ZW50U2Nyb2xsID0gZmFsc2U7Cit9OwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUNvbnRyb2xFbGVtZW50LmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1Db250cm9sRWxlbWVudC5jcHAKaW5kZXggYjlkZjY2
OTUyY2RhYzgzNmM0MDY3MTEwNzZiZDY1MTczMmMzNWUzYy4uMmU2Zjk1ZTc0MDVhOTQ4OGFiMzk2
MGRjZDdlNDc3Zjg4Y2JkNDJlNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
Rm9ybUNvbnRyb2xFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3Jt
Q29udHJvbEVsZW1lbnQuY3BwCkBAIC0yNTQsMTEgKzI1NCwxMSBAQCB2b2lkIEhUTUxGb3JtQ29u
dHJvbEVsZW1lbnQ6OmRpZEF0dGFjaFJlbmRlcmVycygpCiAgICAgICAgIGF1dG8gZnJhbWVWaWV3
ID0gbWFrZVJlZlB0cihkb2N1bWVudCgpLnZpZXcoKSk7CiAgICAgICAgIGlmIChmcmFtZVZpZXcg
JiYgZnJhbWVWaWV3LT5sYXlvdXRDb250ZXh0KCkuaXNJbkxheW91dCgpKSB7CiAgICAgICAgICAg
ICBmcmFtZVZpZXctPnF1ZXVlUG9zdExheW91dENhbGxiYWNrKFtlbGVtZW50XSB7Ci0gICAgICAg
ICAgICAgICAgZWxlbWVudC0+Zm9jdXMoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlOjpQbGFjZUNh
cmV0QXRTdGFydCk7CisgICAgICAgICAgICAgICAgZWxlbWVudC0+Zm9jdXMoeyBTZWxlY3Rpb25S
ZXN0b3JhdGlvbk1vZGU6OlBsYWNlQ2FyZXRBdFN0YXJ0IH0pOwogICAgICAgICAgICAgfSk7CiAg
ICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICBTdHlsZTo6cXVldWVQb3N0UmVzb2x1dGlvbkNh
bGxiYWNrKFtlbGVtZW50XSB7Ci0gICAgICAgICAgICAgICAgZWxlbWVudC0+Zm9jdXMoU2VsZWN0
aW9uUmVzdG9yYXRpb25Nb2RlOjpQbGFjZUNhcmV0QXRTdGFydCk7CisgICAgICAgICAgICAgICAg
ZWxlbWVudC0+Zm9jdXMoeyBTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGU6OlBsYWNlQ2FyZXRBdFN0
YXJ0IH0pOwogICAgICAgICAgICAgfSk7CiAgICAgICAgIH0KICAgICB9CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMYWJlbEVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MTGFiZWxFbGVtZW50LmNwcAppbmRleCA0MjZmMTZiYzYxZDZkNWY4MGI2NmY0ZDZh
MGQ2MjY1NThlYTRiMjAzLi5jZTA5YzIwNGJjNjZjZGU2ZjRlNzM2MWQ2NzBjZGI1NjNmNDc1NzM3
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMYWJlbEVsZW1lbnQuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExhYmVsRWxlbWVudC5jcHAKQEAgLTE3MiwyMSAr
MTcyLDIxIEBAIGJvb2wgSFRNTExhYmVsRWxlbWVudDo6d2lsbFJlc3BvbmRUb01vdXNlQ2xpY2tF
dmVudHMoKQogICAgIHJldHVybiAoZWxlbWVudCAmJiBlbGVtZW50LT53aWxsUmVzcG9uZFRvTW91
c2VDbGlja0V2ZW50cygpKSB8fCBIVE1MRWxlbWVudDo6d2lsbFJlc3BvbmRUb01vdXNlQ2xpY2tF
dmVudHMoKTsKIH0KIAotdm9pZCBIVE1MTGFiZWxFbGVtZW50Ojpmb2N1cyhTZWxlY3Rpb25SZXN0
b3JhdGlvbk1vZGUgcmVzdG9yYXRpb25Nb2RlLCBGb2N1c0RpcmVjdGlvbiBkaXJlY3Rpb24pCit2
b2lkIEhUTUxMYWJlbEVsZW1lbnQ6OmZvY3VzKGNvbnN0IEZvY3VzT3B0aW9ucyYgb3B0aW9ucykK
IHsKICAgICBSZWY8SFRNTExhYmVsRWxlbWVudD4gcHJvdGVjdGVkVGhpcygqdGhpcyk7CiAgICAg
aWYgKGRvY3VtZW50KCkuaGF2ZVN0eWxlc2hlZXRzTG9hZGVkKCkpIHsKICAgICAgICAgZG9jdW1l
bnQoKS51cGRhdGVMYXlvdXQoKTsKICAgICAgICAgaWYgKGlzRm9jdXNhYmxlKCkpIHsKICAgICAg
ICAgICAgIC8vIFRoZSB2YWx1ZSBvZiByZXN0b3JhdGlvbk1vZGUgaXMgbm90IHVzZWQgZm9yIGxh
YmVsIGVsZW1lbnRzIGFzIGl0IGRvZXNuJ3Qgb3ZlcnJpZGUgdXBkYXRlRm9jdXNBcHBlYXJhbmNl
LgotICAgICAgICAgICAgRWxlbWVudDo6Zm9jdXMocmVzdG9yYXRpb25Nb2RlLCBkaXJlY3Rpb24p
OworICAgICAgICAgICAgRWxlbWVudDo6Zm9jdXMob3B0aW9ucyk7CiAgICAgICAgICAgICByZXR1
cm47CiAgICAgICAgIH0KICAgICB9CiAKICAgICAvLyBUbyBtYXRjaCBvdGhlciBicm93c2Vycywg
YWx3YXlzIHJlc3RvcmUgcHJldmlvdXMgc2VsZWN0aW9uLgogICAgIGlmIChhdXRvIGVsZW1lbnQg
PSBjb250cm9sKCkpCi0gICAgICAgIGVsZW1lbnQtPmZvY3VzKFNlbGVjdGlvblJlc3RvcmF0aW9u
TW9kZTo6UmVzdG9yZU9yU2VsZWN0QWxsLCBkaXJlY3Rpb24pOworICAgICAgICBlbGVtZW50LT5m
b2N1cyh7IFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZTo6UmVzdG9yZU9yU2VsZWN0QWxsLCBvcHRp
b25zLmRpcmVjdGlvbiB9KTsKIH0KIAogYm9vbCBIVE1MTGFiZWxFbGVtZW50OjphY2Nlc3NLZXlB
Y3Rpb24oYm9vbCBzZW5kTW91c2VFdmVudHMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0hUTUxMYWJlbEVsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExhYmVsRWxl
bWVudC5oCmluZGV4IDgwZTE1YzIyNTc5ZGRiODY1ZmRjMTE3NjA1OGJmZjJlMzNiZmRmOWEuLmQ1
NmQ1YjZiOTQzZGQ5Y2Y5MGVkMGQzYzMwZDE5ZjQzNzQ0ODM3NjIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvSFRNTExhYmVsRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTExhYmVsRWxlbWVudC5oCkBAIC01MSw3ICs1MSw3IEBAIHByaXZhdGU6CiAgICAgLy8g
T3ZlcnJpZGRlbiB0byBlaXRoZXIgY2xpY2soKSBvciBmb2N1cygpIHRoZSBjb3JyZXNwb25kaW5n
IGNvbnRyb2wuCiAgICAgdm9pZCBkZWZhdWx0RXZlbnRIYW5kbGVyKEV2ZW50JikgZmluYWw7CiAK
LSAgICB2b2lkIGZvY3VzKFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZSwgRm9jdXNEaXJlY3Rpb24p
IGZpbmFsOworICAgIHZvaWQgZm9jdXMoY29uc3QgRm9jdXNPcHRpb25zJikgZmluYWw7CiAKICAg
ICBib29sIGlzSW50ZXJhY3RpdmVDb250ZW50KCkgY29uc3QgZmluYWwgeyByZXR1cm4gdHJ1ZTsg
fQogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExlZ2VuZEVsZW1lbnQu
Y3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGVnZW5kRWxlbWVudC5jcHAKaW5kZXggZWQw
YTQwMTFjYTc0NTZjNGUyNDFlMTBjNWE2ZGMwMjczMTdkNjgyZC4uNWNlZWE2MTBiMDU0MmM0MzI1
MTkxODkwNWZlYzJjMDk0Yzk4MGYzNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9I
VE1MTGVnZW5kRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGVnZW5k
RWxlbWVudC5jcHAKQEAgLTU3LDE5ICs1NywxOSBAQCBSZWZQdHI8SFRNTEZvcm1Db250cm9sRWxl
bWVudD4gSFRNTExlZ2VuZEVsZW1lbnQ6OmFzc29jaWF0ZWRDb250cm9sKCkKICAgICByZXR1cm4g
ZGVzY2VuZGFudHNPZlR5cGU8SFRNTEZvcm1Db250cm9sRWxlbWVudD4oKmVuY2xvc2luZ0ZpZWxk
c2V0KS5maXJzdCgpOwogfQogCi12b2lkIEhUTUxMZWdlbmRFbGVtZW50Ojpmb2N1cyhTZWxlY3Rp
b25SZXN0b3JhdGlvbk1vZGUgcmVzdG9yYXRpb25Nb2RlLCBGb2N1c0RpcmVjdGlvbiBkaXJlY3Rp
b24pCit2b2lkIEhUTUxMZWdlbmRFbGVtZW50Ojpmb2N1cyhjb25zdCBGb2N1c09wdGlvbnMmIG9w
dGlvbnMpCiB7CiAgICAgaWYgKGRvY3VtZW50KCkuaGF2ZVN0eWxlc2hlZXRzTG9hZGVkKCkpIHsK
ICAgICAgICAgZG9jdW1lbnQoKS51cGRhdGVMYXlvdXRJZ25vcmVQZW5kaW5nU3R5bGVzaGVldHMo
KTsKICAgICAgICAgaWYgKGlzRm9jdXNhYmxlKCkpIHsKLSAgICAgICAgICAgIEVsZW1lbnQ6OmZv
Y3VzKHJlc3RvcmF0aW9uTW9kZSwgZGlyZWN0aW9uKTsKKyAgICAgICAgICAgIEVsZW1lbnQ6OmZv
Y3VzKHsgb3B0aW9ucy5zZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGUsIG9wdGlvbnMuZGlyZWN0aW9u
IH0pOwogICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICB9CiAgICAgfQogCiAgICAgLy8gVG8g
bWF0Y2ggb3RoZXIgYnJvd3NlcnMnIGJlaGF2aW9yLCBuZXZlciByZXN0b3JlIHByZXZpb3VzIHNl
bGVjdGlvbi4KICAgICBpZiAoYXV0byBjb250cm9sID0gYXNzb2NpYXRlZENvbnRyb2woKSkKLSAg
ICAgICAgY29udHJvbC0+Zm9jdXMoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlOjpTZWxlY3RBbGws
IGRpcmVjdGlvbik7CisgICAgICAgIGNvbnRyb2wtPmZvY3VzKHsgU2VsZWN0aW9uUmVzdG9yYXRp
b25Nb2RlOjpTZWxlY3RBbGwsIG9wdGlvbnMuZGlyZWN0aW9uIH0pOwogfQogCiBib29sIEhUTUxM
ZWdlbmRFbGVtZW50OjphY2Nlc3NLZXlBY3Rpb24oYm9vbCBzZW5kTW91c2VFdmVudHMpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMZWdlbmRFbGVtZW50LmggYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxMZWdlbmRFbGVtZW50LmgKaW5kZXggN2RjYjFiODUwYTI3ZTNiN2Fj
YjgwMjg3YzU3NGY4MzAyZmNhNjAyZi4uOTMyMTU5MDUwMzkzZTNjZWY2MWQyMzlmZDUwOGJlYzc1
ZWFlYzU3YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGVnZW5kRWxlbWVu
dC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExlZ2VuZEVsZW1lbnQuaApAQCAtNDMs
NyArNDMsNyBAQCBwcml2YXRlOgogICAgIFJlZlB0cjxIVE1MRm9ybUNvbnRyb2xFbGVtZW50PiBh
c3NvY2lhdGVkQ29udHJvbCgpOwogCiAgICAgYm9vbCBhY2Nlc3NLZXlBY3Rpb24oYm9vbCBzZW5k
TW91c2VFdmVudHMpIGZpbmFsOwotICAgIHZvaWQgZm9jdXMoU2VsZWN0aW9uUmVzdG9yYXRpb25N
b2RlLCBGb2N1c0RpcmVjdGlvbikgZmluYWw7CisgICAgdm9pZCBmb2N1cyhjb25zdCBGb2N1c09w
dGlvbnMmKSBmaW5hbDsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE9yRm9yZWlnbkVsZW1lbnQuaWRsIGIvU291cmNlL1dl
YkNvcmUvaHRtbC9IVE1MT3JGb3JlaWduRWxlbWVudC5pZGwKaW5kZXggOWQ2MmU0ZDg0MTc3ODQx
NmI1MjQxZDk2YmQ4MDdmOTQ2NmYzY2ExNC4uOTEzNDYwOWU5ZDIxZmVjMzlhOWVmMGY0Y2M1ZGY1
ZDI2YzUzZjM0NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MT3JGb3JlaWdu
RWxlbWVudC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MT3JGb3JlaWduRWxlbWVu
dC5pZGwKQEAgLTM0LDcgKzM0LDcgQEAgaW50ZXJmYWNlIG1peGluIEhUTUxPckZvcmVpZ25FbGVt
ZW50IHsKICAgICAvLyBGSVhNRTogSW1wbGVtZW50ICdhdXRvZm9jdXMnLgogICAgIC8vIFtDRVJl
YWN0aW9uc10gYXR0cmlidXRlIGJvb2xlYW4gYXV0b2ZvY3VzOwogICAgIFtDRVJlYWN0aW9ucywg
SW1wbGVtZW50ZWRBcz10YWJJbmRleEZvckJpbmRpbmdzXSBhdHRyaWJ1dGUgbG9uZyB0YWJJbmRl
eDsKLSAgICAvLyBGSU1YRTogZm9jdXMoKSBpcyBzcGVjaWZpZWQgdG8gdGFrZSBhbiBvcHRpb25h
bCBGb2N1c09wdGlvbnMuIEltcGxlbWVudCB0aGF0LgotICAgIHVuZGVmaW5lZCBmb2N1cygpOwor
ICAgIHVuZGVmaW5lZCBmb2N1cyhvcHRpb25hbCBGb2N1c09wdGlvbnMgb3B0aW9ucyk7CiAgICAg
dW5kZWZpbmVkIGJsdXIoKTsKIH07CisKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
SW5wdXRUeXBlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSW5wdXRUeXBlLmNwcAppbmRleCA4
ZWQ1MGM4ZGZjNTg3OGY0NjBmMjgxN2FiNTA2ZGIwN2E4NWNiYmU1Li41MjNhMjg3YjFmN2U1YjI5
N2ZmMWM0MjI2MjkxMmU3YzA2MjYzNjBhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1s
L0lucHV0VHlwZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9JbnB1dFR5cGUuY3BwCkBA
IC01ODIsNyArNTgyLDcgQEAgdm9pZCBJbnB1dFR5cGU6OmhhbmRsZUJsdXJFdmVudCgpCiBib29s
IElucHV0VHlwZTo6YWNjZXNzS2V5QWN0aW9uKGJvb2wpCiB7CiAgICAgQVNTRVJUKGVsZW1lbnQo
KSk7Ci0gICAgZWxlbWVudCgpLT5mb2N1cyhTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGU6OlNlbGVj
dEFsbCk7CisgICAgZWxlbWVudCgpLT5mb2N1cyh7IFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZTo6
U2VsZWN0QWxsIH0pOwogICAgIHJldHVybiBmYWxzZTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGFnZS9Gb2N1c0NvbnRyb2xsZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9G
b2N1c0NvbnRyb2xsZXIuY3BwCmluZGV4IDA3YWJhZDA2MGUwMTNlYjhiN2FjNTYwMGRkNDQxOTZk
MmIxYWE5ZmEuLjlhZDdjNDE3NjIyYTU5Y2U5OTAxYmQxN2ExNzhhY2QyMWFhOGIzZWEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRm9jdXNDb250cm9sbGVyLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL0ZvY3VzQ29udHJvbGxlci5jcHAKQEAgLTUzMyw3ICs1MzMsNyBAQCBi
b29sIEZvY3VzQ29udHJvbGxlcjo6YWR2YW5jZUZvY3VzSW5Eb2N1bWVudE9yZGVyKEZvY3VzRGly
ZWN0aW9uIGRpcmVjdGlvbiwgS2V5YgogICAgICAgICB9CiAgICAgfQogCi0gICAgZWxlbWVudC0+
Zm9jdXMoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlOjpTZWxlY3RBbGwsIGRpcmVjdGlvbik7Cisg
ICAgZWxlbWVudC0+Zm9jdXMoeyBTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGU6OlNlbGVjdEFsbCwg
ZGlyZWN0aW9uIH0pOwogICAgIHJldHVybiB0cnVlOwogfQogCkBAIC0xMTA3LDcgKzExMDcsNyBA
QCBib29sIEZvY3VzQ29udHJvbGxlcjo6YWR2YW5jZUZvY3VzRGlyZWN0aW9uYWxseUluQ29udGFp
bmVyKE5vZGUqIGNvbnRhaW5lciwgY29ucwogICAgIEVsZW1lbnQqIGVsZW1lbnQgPSBkb3duY2Fz
dDxFbGVtZW50Pihmb2N1c0NhbmRpZGF0ZS5mb2N1c2FibGVOb2RlKTsKICAgICBBU1NFUlQoZWxl
bWVudCk7CiAKLSAgICBlbGVtZW50LT5mb2N1cyhTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGU6OlNl
bGVjdEFsbCwgZGlyZWN0aW9uKTsKKyAgICBlbGVtZW50LT5mb2N1cyh7IFNlbGVjdGlvblJlc3Rv
cmF0aW9uTW9kZTo6U2VsZWN0QWxsLCBkaXJlY3Rpb24gfSk7CiAgICAgcmV0dXJuIHRydWU7CiB9
CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5n
ZUxvZwppbmRleCBiYjYwOTRhYzY4NDBjNjJiZjNkZWEwMDE0Mzc5NDI2YzQzN2Y1ZDE1Li4wNDhi
ZTk0NTM1YjZkY2ZkZDdmYmQ1ZTJmMzQyMWE2OTkzZmM4MjU0IDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjMg
QEAKKzIwMjEtMDEtMTMgIFJvYiBCdWlzICA8cmJ1aXNAaWdhbGlhLmNvbT4KKworICAgICAgICBF
bmFibGUgYWJpbGl0eSB0byBwcmV2ZW50IHNjcm9sbGluZyBpbiBFbGVtZW50LmZvY3VzKCkKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3ODU4MworCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogcGxhdGZvcm0v
aW9zLXdrMi9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvaW50ZXJhY3Rpb24v
Zm9jdXMvcHJvY2Vzc2luZy1tb2RlbC9wcmV2ZW50U2Nyb2xsLXRleHRhcmVhLWV4cGVjdGVkLnR4
dDogUmVtb3ZlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMtd2sxL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9pbnRlcmFjdGlvbi9mb2N1cy9wcm9jZXNzaW5nLW1vZGVsL3By
ZXZlbnRTY3JvbGwtdGV4dGFyZWEtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorCisyMDIxLTAxLTEz
ICBSb2IgQnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgRW5hYmxlIGFiaWxpdHkg
dG8gcHJldmVudCBzY3JvbGxpbmcgaW4gRWxlbWVudC5mb2N1cygpCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzg1ODMKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHBsYXRmb3JtL2lvcy13azIvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2ludGVyYWN0aW9uL2ZvY3VzL3Byb2Nlc3Np
bmctbW9kZWwvcHJldmVudFNjcm9sbC10ZXh0YXJlYS1leHBlY3RlZC50eHQ6IFJlbW92ZWQuCisg
ICAgICAgICogcGxhdGZvcm0vbWFjLXdrMS9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2h0bWwvaW50ZXJhY3Rpb24vZm9jdXMvcHJvY2Vzc2luZy1tb2RlbC9wcmV2ZW50U2Nyb2xsLXRl
eHRhcmVhLWV4cGVjdGVkLnR4dDogUmVtb3ZlZC4KKwogMjAyMS0wMS0xMyAgTWFydGluIFJvYmlu
c29uICA8bXJvYmluc29uQGlnYWxpYS5jb20+CiAKICAgICAgICAgU2Nyb2xsLXNuYXAgcG9pbnRz
IHNob3VsZCBiZSB0cmlnZ2VyZWQgZHVyaW5nIHByb2dyYW1tYXRpYyBzY3JvbGwKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2MvQ2hhbmdlTG9nCmluZGV4IGRiZWYyYzAwMGQ0MjBiODJhNWMxOGQ2YzJkZDBjOTcy
NDU5MTVjNmUuLmIwMDBmNzUyOTk1OWIxYTE2ZDJhZWQxYjcyMDdiZDg1ZjEyYzc2YzIgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDIxLTAxLTEzICBS
b2IgQnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgRW5hYmxlIGFiaWxpdHkgdG8g
cHJldmVudCBzY3JvbGxpbmcgaW4gRWxlbWVudC5mb2N1cygpCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzg1ODMKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBVcGRhdGUgaW1wcm92ZWQgdGVzdCByZXN1bHQu
CisKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9pbnRlcmFjdGlvbi9mb2N1cy9w
cm9jZXNzaW5nLW1vZGVsL3ByZXZlbnRTY3JvbGwtdGV4dGFyZWEtZXhwZWN0ZWQudHh0OgorCiAy
MDIxLTAxLTEzICBNYXJ0aW4gUm9iaW5zb24gIDxtcm9iaW5zb25AaWdhbGlhLmNvbT4KIAogICAg
ICAgICBTY3JvbGwtc25hcCBwb2ludHMgc2hvdWxkIGJlIHRyaWdnZXJlZCBkdXJpbmcgcHJvZ3Jh
bW1hdGljIHNjcm9sbApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9odG1sL2ludGVyYWN0aW9uL2ZvY3VzL3Byb2Nlc3NpbmctbW9kZWwvcHJl
dmVudFNjcm9sbC10ZXh0YXJlYS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvaW50ZXJhY3Rpb24vZm9jdXMvcHJvY2Vzc2luZy1t
b2RlbC9wcmV2ZW50U2Nyb2xsLXRleHRhcmVhLWV4cGVjdGVkLnR4dAppbmRleCAwOGFhZmIzMTYz
NjA4NDkwODc5ODBlMDA1MDQyZDdjODVhZGE4NjViLi5jNzM0YTY5ZGU5YTVjZmY1YWQ1NWVlZjlj
ZGQxZDZkMmVlY2U2ZDNhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2h0bWwvaW50ZXJhY3Rpb24vZm9jdXMvcHJvY2Vzc2luZy1tb2RlbC9w
cmV2ZW50U2Nyb2xsLXRleHRhcmVhLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvaW50ZXJhY3Rpb24vZm9jdXMvcHJvY2Vz
c2luZy1tb2RlbC9wcmV2ZW50U2Nyb2xsLXRleHRhcmVhLWV4cGVjdGVkLnR4dApAQCAtMSw0ICsx
LDQgQEAKIAogCi1GQUlMIHByZXZlbnRTY3JvbGw6IHRydWUgb24gYSB0ZXh0YXJlYSBlbGVtZW50
IGFzc2VydF9lcXVhbHM6IFRFWFRBUkVBOiBTaG91bGQgbm90IGhhdmUgc2Nyb2xsZWQgYWZ0ZXIg
YSBjb3VwbGUgZXZlbnQgbG9vcCB0aWNrcyBleHBlY3RlZCAwIGJ1dCBnb3QgOTIwCitQQVNTIHBy
ZXZlbnRTY3JvbGw6IHRydWUgb24gYSB0ZXh0YXJlYSBlbGVtZW50CiAKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL3BsYXRmb3JtL2lvcy13azIvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9odG1sL2ludGVyYWN0aW9uL2ZvY3VzL3Byb2Nlc3NpbmctbW9kZWwvcHJldmVudFNjcm9sbC10
ZXh0YXJlYS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3Mtd2syL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9pbnRlcmFjdGlvbi9mb2N1cy9wcm9jZXNz
aW5nLW1vZGVsL3ByZXZlbnRTY3JvbGwtdGV4dGFyZWEtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCBjNzM0YTY5ZGU5YTVjZmY1YWQ1NWVlZjljZGQxZDZkMmVlY2U2
ZDNhLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91
dFRlc3RzL3BsYXRmb3JtL2lvcy13azIvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9o
dG1sL2ludGVyYWN0aW9uL2ZvY3VzL3Byb2Nlc3NpbmctbW9kZWwvcHJldmVudFNjcm9sbC10ZXh0
YXJlYS1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSw0ICswLDAgQEAKLQotCi1QQVNT
IHByZXZlbnRTY3JvbGw6IHRydWUgb24gYSB0ZXh0YXJlYSBlbGVtZW50Ci0KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azEvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9odG1sL2ludGVyYWN0aW9uL2ZvY3VzL3Byb2Nlc3NpbmctbW9kZWwvcHJldmVudFNjcm9s
bC10ZXh0YXJlYS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2sxL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9pbnRlcmFjdGlvbi9mb2N1cy9wcm9j
ZXNzaW5nLW1vZGVsL3ByZXZlbnRTY3JvbGwtdGV4dGFyZWEtZXhwZWN0ZWQudHh0CmRlbGV0ZWQg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1MmFiYWJiZmJkNzI3ZWNkZmJiY2RkZDZjYzhlMTAwZDNk
ZDljYWY1Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xh
eW91dFRlc3RzL3BsYXRmb3JtL21hYy13azEvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9odG1sL2ludGVyYWN0aW9uL2ZvY3VzL3Byb2Nlc3NpbmctbW9kZWwvcHJldmVudFNjcm9sbC10
ZXh0YXJlYS1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSw0ICswLDAgQEAKLQotCi1G
QUlMIHByZXZlbnRTY3JvbGw6IHRydWUgb24gYSB0ZXh0YXJlYSBlbGVtZW50IGFzc2VydF9lcXVh
bHM6IFRFWFRBUkVBOiBTaG91bGQgbm90IGhhdmUgc2Nyb2xsZWQgZXhwZWN0ZWQgMCBidXQgZ290
IDkyMAotCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>417687</attachid>
            <date>2021-01-15 01:54:13 -0800</date>
            <delta_ts>2021-02-14 03:46:15 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-178583-20210115105411.patch</filename>
            <type>text/plain</type>
            <size>29067</size>
            <attacher name="Rob Buis">rbuis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcxNTEzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjNiYzcyMmEyNDUzYTIy
MGM2OGMyMDViMDlhNWJhZGNjYTFmYzAxMy4uYTg0ZDkyYzIxYWQxZjg1YjRlOGUyMGQwNjhhODI2
YjhlMjkyY2U2MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ2IEBACisyMDIxLTAxLTE1ICBSb2Ig
QnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgRW5hYmxlIGFiaWxpdHkgdG8gcHJl
dmVudCBzY3JvbGxpbmcgaW4gRWxlbWVudC5mb2N1cygpCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzg1ODMKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgRm9jdXNPcHRpb25zIHBhcmFtZXRlciB0byB0
aGUgZm9jdXMgbWV0aG9kIFsxXSBib3RoCisgICAgICAgIHRvIHRoZSBJREwgYXMgdGhlIEMrKyBz
aWRlLiBDaGFuZ2UgRWxlbWVudC5mb2N1cyB0byBub3QKKyAgICAgICAgc2Nyb2xsIGlmIEZvY3Vz
T3B0aW9ucy5wcmV2ZW50U2Nyb2xsIGlzIHRydWUuCisKKyAgICAgICAgQmVoYXZpb3IgbWF0Y2hl
cyBDaHJvbWUgYW5kIEZpcmVmb3guCisKKyAgICAgICAgVGVzdDogaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9odG1sL2ludGVyYWN0aW9uL2ZvY3VzL3Byb2Nlc3NpbmctbW9kZWwvcHJl
dmVudFNjcm9sbC10ZXh0Lmh0bWwKKworICAgICAgICBbMV0gaHR0cHM6Ly9odG1sLnNwZWMud2hh
dHdnLm9yZy9tdWx0aXBhZ2UvaW50ZXJhY3Rpb24uaHRtbCNkb20tZm9jdXMKKworICAgICAgICAq
IENNYWtlTGlzdHMudHh0OgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLWlucHV0LnhjZmlsZWxp
c3Q6CisgICAgICAgICogRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3Q6CisgICAgICAg
ICogRGVyaXZlZFNvdXJjZXMubWFrZToKKyAgICAgICAgKiBIZWFkZXJzLmNtYWtlOgorICAgICAg
ICAqIFNvdXJjZXMudHh0OgorICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvajoKKyAgICAgICAgKiBkb20vRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpFbGVt
ZW50Ojpmb2N1cyk6CisgICAgICAgICogZG9tL0VsZW1lbnQuaDoKKyAgICAgICAgKFdlYkNvcmU6
OkVsZW1lbnQ6OmZvY3VzKToKKyAgICAgICAgKiBkb20vRm9jdXNPcHRpb25zLmg6CisgICAgICAg
ICogZG9tL0ZvY3VzT3B0aW9ucy5pZGw6CisgICAgICAgICogaHRtbC9IVE1MTGFiZWxFbGVtZW50
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxMYWJlbEVsZW1lbnQ6OmZvY3VzKToKKyAgICAg
ICAgKiBodG1sL0hUTUxMYWJlbEVsZW1lbnQuaDoKKyAgICAgICAgKiBodG1sL0hUTUxMZWdlbmRF
bGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxMZWdlbmRFbGVtZW50Ojpmb2N1cyk6
CisgICAgICAgICogaHRtbC9IVE1MTGVnZW5kRWxlbWVudC5oOgorICAgICAgICAqIGh0bWwvSFRN
TE9yRm9yZWlnbkVsZW1lbnQuaWRsOgorICAgICAgICAqIGh0bWwvSW5wdXRUeXBlLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OklucHV0VHlwZTo6YWNjZXNzS2V5QWN0aW9uKToKKyAgICAgICAgKiBw
YWdlL0ZvY3VzQ29udHJvbGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGb2N1c0NvbnRyb2xs
ZXI6OmFkdmFuY2VGb2N1c0luRG9jdW1lbnRPcmRlcik6CisgICAgICAgIChXZWJDb3JlOjpGb2N1
c0NvbnRyb2xsZXI6OmFkdmFuY2VGb2N1c0RpcmVjdGlvbmFsbHlJbkNvbnRhaW5lcik6CisKIDIw
MjEtMDEtMTUgIFBoaWxpcHBlIE5vcm1hbmQgIDxwbm9ybWFuZEBpZ2FsaWEuY29tPgogCiAgICAg
ICAgIFtHU3RyZWFtZXJdIFVJPC0+V2ViUG9jZXNzIElQQyBuZWVkZWQgZm9yIGVudW1lcmF0ZURl
dmljZXMgc3VwcG9ydApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQg
Yi9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAppbmRleCA2NDNkN2Q5YmY3OTRkMzZjZWJj
ZjY2MzZiNjA2ZTQ4N2QxOTBlNGVlLi5kYWZlYjNhZDIzZjc2OWQ1YjM4MDFiY2M2NTllNzY1MmFj
YTdhZjM2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAorKysgYi9T
b3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dApAQCAtODQ2LDYgKzg0Niw3IEBAIHNldChXZWJD
b3JlX05PTl9TVkdfSURMX0ZJTEVTCiAgICAgZG9tL0V2ZW50TW9kaWZpZXJJbml0LmlkbAogICAg
IGRvbS9FdmVudFRhcmdldC5pZGwKICAgICBkb20vRm9jdXNFdmVudC5pZGwKKyAgICBkb20vRm9j
dXNPcHRpb25zLmlkbAogICAgIGRvbS9HbG9iYWxFdmVudEhhbmRsZXJzK1BvaW50ZXJFdmVudHMu
aWRsCiAgICAgZG9tL0dsb2JhbEV2ZW50SGFuZGxlcnMrU2VsZWN0aW9uLmlkbAogICAgIGRvbS9H
bG9iYWxFdmVudEhhbmRsZXJzLmlkbApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZl
ZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdCBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2Vz
LWlucHV0LnhjZmlsZWxpc3QKaW5kZXggODMxN2Q1NWRiYWE4ZDc1ZTNkMTk1MmZlNWQ5MGI2MjZl
ZGY3Njg1My4uNTRiZmFmNTBmMTZmNTVmNTYwYzcwOGNjZGRkODE5YzE5ZmJhZmUxNSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1pbnB1dC54Y2ZpbGVsaXN0CkBAIC03NjUs
NiArNzY1LDcgQEAgJChQUk9KRUNUX0RJUikvZG9tL0V2ZW50TmFtZXMuaW4KICQoUFJPSkVDVF9E
SVIpL2RvbS9FdmVudFRhcmdldC5pZGwKICQoUFJPSkVDVF9ESVIpL2RvbS9FdmVudFRhcmdldEZh
Y3RvcnkuaW4KICQoUFJPSkVDVF9ESVIpL2RvbS9Gb2N1c0V2ZW50LmlkbAorJChQUk9KRUNUX0RJ
UikvZG9tL0ZvY3VzT3B0aW9ucy5pZGwKICQoUFJPSkVDVF9ESVIpL2RvbS9HbG9iYWxFdmVudEhh
bmRsZXJzK1BvaW50ZXJFdmVudHMuaWRsCiAkKFBST0pFQ1RfRElSKS9kb20vR2xvYmFsRXZlbnRI
YW5kbGVycytTZWxlY3Rpb24uaWRsCiAkKFBST0pFQ1RfRElSKS9kb20vR2xvYmFsRXZlbnRIYW5k
bGVycy5pZGwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLW91dHB1
dC54Y2ZpbGVsaXN0IGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmls
ZWxpc3QKaW5kZXggMzJlMGEyOTFmODE3NjI0YWFhNWYxYTBjZGYxN2M1NDg4NzUwYmE3OS4uZWVi
ZWQyOGYzYjcwNjI4NGNlMzBkMzIyNGU5OTU3MzBjYzkxMzI5YSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3QKKysrIGIvU291cmNlL1dl
YkNvcmUvRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3QKQEAgLTgxMyw2ICs4MTMsOCBA
QCAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0ZpbGxNb2Rl
LmNwcAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNGaWxs
TW9kZS5oCiAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0Zv
Y3VzRXZlbnQuY3BwCiAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29y
ZS9KU0ZvY3VzRXZlbnQuaAorJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dl
YkNvcmUvSlNGb2N1c09wdGlvbnMuY3BwCiskKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNv
dXJjZXMvV2ViQ29yZS9KU0ZvY3VzT3B0aW9ucy5oCiAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVy
aXZlZFNvdXJjZXMvV2ViQ29yZS9KU0ZvbnRGYWNlLmNwcAogJChCVUlMVF9QUk9EVUNUU19ESVIp
L0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNGb250RmFjZS5oCiAkKEJVSUxUX1BST0RVQ1RTX0RJ
UikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0ZvbnRGYWNlU2V0LmNwcApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZSBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2
ZWRTb3VyY2VzLm1ha2UKaW5kZXggOTUxYWI2YjBmYzQ0YmNmYWRjYTEwZTNkOGNjYjc5Yjc3YzYx
MGYyNy4uMjk4NzgzMjE3ZmNjMjljNDljZDQ4YzYyYTFjN2I1NGFlNWQ2YTI1ZSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9EZXJpdmVkU291cmNlcy5tYWtlCkBAIC03MjAsNiArNzIwLDcgQEAgSlNfQklORElOR19JRExT
IDo9IFwKICAgICAkKFdlYkNvcmUpL2RvbS9FdmVudE1vZGlmaWVySW5pdC5pZGwgXAogICAgICQo
V2ViQ29yZSkvZG9tL0V2ZW50VGFyZ2V0LmlkbCBcCiAgICAgJChXZWJDb3JlKS9kb20vRm9jdXNF
dmVudC5pZGwgXAorICAgICQoV2ViQ29yZSkvZG9tL0ZvY3VzT3B0aW9ucy5pZGwgXAogICAgICQo
V2ViQ29yZSkvZG9tL0dsb2JhbEV2ZW50SGFuZGxlcnMrUG9pbnRlckV2ZW50cy5pZGwgXAogICAg
ICQoV2ViQ29yZSkvZG9tL0dsb2JhbEV2ZW50SGFuZGxlcnMrU2VsZWN0aW9uLmlkbCBcCiAgICAg
JChXZWJDb3JlKS9kb20vR2xvYmFsRXZlbnRIYW5kbGVycy5pZGwgXApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZSBiL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UK
aW5kZXggYWRlNWM2OTAyNDI5NzYyNWM3MGRhYjc5MGE1YzJjNWE4Nzc3ZWM2MS4uNTViZTU5ZmM1
ZDVkZDUyZDU0NTA0MzU0MjQ0YzQzNDBlNzA0ZTBlMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvSGVhZGVycy5jbWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlCkBAIC00
NTMsNiArNDUzLDcgQEAgc2V0KFdlYkNvcmVfUFJJVkFURV9GUkFNRVdPUktfSEVBREVSUwogICAg
IGRvbS9FeGNlcHRpb25Db2RlLmgKICAgICBkb20vRXhjZXB0aW9uRGF0YS5oCiAgICAgZG9tL0V4
Y2VwdGlvbk9yLmgKKyAgICBkb20vRm9jdXNPcHRpb25zLmgKICAgICBkb20vRnJhZ21lbnRTY3Jp
cHRpbmdQZXJtaXNzaW9uLmgKICAgICBkb20vRnVsbHNjcmVlbk1hbmFnZXIuaAogICAgIGRvbS9H
Q1JlYWNoYWJsZVJlZi5oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dCBi
L1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0CmluZGV4IDFiOWYwZDgzNzgyOWJkZjNkYTU4NWU3
ZmQyM2UzMTIzNjZhN2E1ZmYuLjk3ZDY5MTVmNDU3OTljMmMzNGRmNjcwMDMwZTllN2JkMTVjYjUw
NjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0CisrKyBiL1NvdXJjZS9X
ZWJDb3JlL1NvdXJjZXMudHh0CkBAIC0yOTkwLDYgKzI5OTAsNyBAQCBKU0ZpbGVTeXN0ZW1FbnRy
eUNhbGxiYWNrLmNwcAogSlNGaWxlU3lzdGVtRmlsZUVudHJ5LmNwcAogSlNGaWxsTW9kZS5jcHAK
IEpTRm9jdXNFdmVudC5jcHAKK0pTRm9jdXNPcHRpb25zLmNwcAogSlNGb250RmFjZS5jcHAKIEpT
Rm9udEZhY2VTZXQuY3BwCiBKU0dQVUJpbmRHcm91cExheW91dEJpbmRpbmcuY3BwCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9T
b3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggNDE5
YTA5MTE4NDMxYjNiZmJlZjVmMDA2NmMwMTMwNDIyZjA0N2VjZi4uNTJlNmIwYTU4NmMyZGYwY2Zk
ZDE3MTQxODU0MjhmMGFhZjg1NGI5NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29y
ZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMzU3MSw2ICszNTcxLDcgQEAKIAkJQUE3RkVF
QUQxNkE0RTc0QjAwNEMwQzMzIC8qIEpTU3BlZWNoU3ludGhlc2lzLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBQTdGRUVBQzE2QTRFNzRCMDA0QzBDMzMg
LyogSlNTcGVlY2hTeW50aGVzaXMuaCAqLzsgfTsKIAkJQUFBNzI4RjcxNkQxRDhCQzAwRDNCQkM2
IC8qIFdlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVySU9TLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBQUE3MjhGMTE2RDFEOEJDMDBEM0JCQzYgLyog
V2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJJT1MuaCAqLzsgfTsKIAkJQUFDMDhDRjMxNUY5
NDFGRDAwRjFFMTg4IC8qIEFjY2Vzc2liaWxpdHlTVkdSb290LmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBQUMwOENGMTE1Rjk0MUZDMDBGMUUxODggLyog
QWNjZXNzaWJpbGl0eVNWR1Jvb3QuaCAqLzsgfTsKKwkJQUFERUZFNDUyNUFGNEZENjAwNDBERDY3
IC8qIEZvY3VzT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQUFERUZFNDMyNUFGNEZDQjAwNDBERDY3IC8qIEZvY3VzT3B0aW9ucy5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUFCMjNBMzI4MDlC
QkE3RDAwMDY3Q0M1MyAvKiBCZWZvcmVUZXh0SW5zZXJ0ZWRFdmVudC5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQUIyM0EzMjYwOUJCQTdEMDAwNjdDQzUz
IC8qIEJlZm9yZVRleHRJbnNlcnRlZEV2ZW50LmggKi87IH07CiAJCUFCMjQ3QTZEMEFGRDYzODMw
MDNGQTVGRCAvKiBSZW5kZXJTbGlkZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEFCMjQ3QTZCMEFGRDYzODMwMDNGQTVGRCAvKiBSZW5kZXJTbGlkZXIu
aCAqLzsgfTsKIAkJQUIzMUM5MUUxMEFFMUI4RTAwMEM3QjkyIC8qIExpbmVDbGFtcFZhbHVlLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBQjMxQzkxRDEw
QUUxQjhFMDAwQzdCOTIgLyogTGluZUNsYW1wVmFsdWUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwpAQCAtMTMwNTMsNiArMTMwNTQsNyBAQAogCQlBQTJB
NUFDNjE2QTQ4NUQ1MDA5NzVBMjUgLyogU3BlZWNoU3ludGhlc2lzVm9pY2UuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gU3BlZWNoU3ludGhlc2lzVm9pY2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQlBQTJBNUFDNzE2QTQ4NUQ1MDA5NzVBMjUgLyogU3BlZWNoU3ludGhlc2lzVm9p
Y2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gU3BlZWNoU3ludGhlc2lzVm9pY2UuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJQUEyQTVBQzgxNkE0ODVENTAwOTc1QTI1IC8qIFNwZWVjaFN5bnRo
ZXNpc1ZvaWNlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHRleHQ7IHBhdGggPSBTcGVlY2hTeW50aGVzaXNWb2ljZS5pZGw7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUFBMkUwRDA5MjVBRjUxMDQwMDc2OTNCQSAvKiBGb2N1c09wdGlv
bnMuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0g
dGV4dDsgcGF0aCA9IEZvY3VzT3B0aW9ucy5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCUFBNDc4QTdEMTZDRDcwQzMwMDdEMUJCNCAvKiBXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3Jh
cHBlck1hYy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJBY2Nlc3NpYmls
aXR5T2JqZWN0V3JhcHBlck1hYy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlBQTQ3
OEE3RTE2Q0Q3MEMzMDA3RDFCQjQgLyogV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJNYWMu
bW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZXhwbGljaXRGaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLm9iamNwcDsgZmlsZUVuY29kaW5nID0gNDsgcGF0aCA9IFdlYkFjY2Vzc2liaWxp
dHlPYmplY3RXcmFwcGVyTWFjLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlBQTRD
M0E3NDBCMkIxNjc5MDAyMzM0QTIgLyogSW5saW5lU3R5bGVTaGVldE93bmVyLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJbmxpbmVTdHlsZVNoZWV0T3duZXIuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTMwNzcsNiArMTMwNzksNyBAQAogCQlB
QUNDODNEODIzMTY1NzZCMDBFQjZCRjUgLyogSlNIVE1MT3JGb3JlaWduRWxlbWVudC5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBKU0hUTUxPckZvcmVpZ25FbGVtZW50LmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJQUFEOUQwQjEyMURGQTgwQzAwMUIxMUM3IC8qIExhenlMb2FkSW1h
Z2VPYnNlcnZlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBMYXp5
TG9hZEltYWdlT2JzZXJ2ZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlBQUQ5
RDBCMzIxREZBODBFMDAxQjExQzcgLyogTGF6eUxvYWRJbWFnZU9ic2VydmVyLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IExhenlMb2FkSW1hZ2VPYnNlcnZlci5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlBQURFRkU0MzI1QUY0RkNCMDA0MERENjcgLyogRm9jdXNP
cHRpb25zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZvY3VzT3B0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQlBQUUyN0I3NDE2Q0JGQzBEMDA2MjMwNDMgLyogUGxhdGZvcm1TcGVlY2hT
eW50aGVzaXplck1vY2suY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
UGxhdGZvcm1TcGVlY2hTeW50aGVzaXplck1vY2suY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQlBQUUyN0I3NTE2Q0JGQzBEMDA2MjMwNDMgLyogUGxhdGZvcm1TcGVlY2hTeW50aGVz
aXplck1vY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGxhdGZvcm1TcGVl
Y2hTeW50aGVzaXplck1vY2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQUFFMzc1
NUQxNzQyOUJDQzAwNjIwMEMyIC8qIFBsYXRmb3JtU3BlZWNoU3ludGhlc2l6ZXJJT1MubW0gKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBQbGF0Zm9ybVNwZWVjaFN5bnRo
ZXNpemVySU9TLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMzAxMjQsNiArMzAx
MjcsOCBAQAogCQkJCUI2RDlEMjM0MTRFQUJEMjYwMDkwRDc1RSAvKiBGb2N1c0V2ZW50LmNwcCAq
LywKIAkJCQlCNkQ5RDIzMzE0RUFCRDI2MDA5MEQ3NUUgLyogRm9jdXNFdmVudC5oICovLAogCQkJ
CUI2RDlEMjcyMTRFQUJGMDMwMDkwRDc1RSAvKiBGb2N1c0V2ZW50LmlkbCAqLywKKwkJCQlBQURF
RkU0MzI1QUY0RkNCMDA0MERENjcgLyogRm9jdXNPcHRpb25zLmggKi8sCisJCQkJQUEyRTBEMDky
NUFGNTEwNDAwNzY5M0JBIC8qIEZvY3VzT3B0aW9ucy5pZGwgKi8sCiAJCQkJQTg1MzEyM0MxMUQw
NDcxQjAwRDREMDc3IC8qIEZyYWdtZW50U2NyaXB0aW5nUGVybWlzc2lvbi5oICovLAogCQkJCUNE
OTJGNTE3MjI2MTAzODIwMEY4N0JCMyAvKiBGdWxsc2NyZWVuTWFuYWdlci5jcHAgKi8sCiAJCQkJ
Q0Q5MkY1MTYyMjYxMDM4MjAwRjg3QkIzIC8qIEZ1bGxzY3JlZW5NYW5hZ2VyLmggKi8sCkBAIC0z
MjEwMyw2ICszMjEwOCw3IEBACiAJCQkJMTQ5OTNCRTYwQjJGMkIxQzAwNTA0OTdGIC8qIEZvY3Vz
Q29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMDYyMjg3ODQwQjREQjMyMjAwMEMzNERG
IC8qIEZvY3VzRGlyZWN0aW9uLmggaW4gSGVhZGVycyAqLywKIAkJCQlCNkQ5RDIzNTE0RUFCRDI2
MDA5MEQ3NUUgLyogRm9jdXNFdmVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQUFERUZFNDUyNUFG
NEZENjAwNDBERDY3IC8qIEZvY3VzT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQjJDM0RB
NjUwRDAwNkNENjAwRUY2RjI2IC8qIEZvbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCTFBQzJEODlE
MUIxRTI5MUYwMEQ1MkU4NyAvKiBGb250QW50aWFsaWFzaW5nU3RhdGVTYXZlci5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJRjRFNTdFREMyMTNGM0Y1RjAwNEVBOThFIC8qIEZvbnRBdHRyaWJ1dGVDaGFu
Z2VzLmggaW4gSGVhZGVycyAqLywKQEAgLTMzMDQ2LDcgKzMzMDUyLDYgQEAKIAkJCQlFNDQ2MTQx
OTBDRDY4MjY5MDBGQURBNzUgLyogSlNNZWRpYUVycm9yLmggaW4gSGVhZGVycyAqLywKIAkJCQlD
REY3NTZBMzIxNUMyOUU5MDBFRkNCNTAgLyogSlNNZWRpYUtleUVuY3J5cHRpb25TY2hlbWUuaCBp
biBIZWFkZXJzICovLAogCQkJCTJEOUJGNzI4MURCRkRCMEQwMDdBN0Q5OSAvKiBKU01lZGlhS2V5
TWVzc2FnZUV2ZW50LmggaW4gSGVhZGVycyAqLywKLQkJCQlFNDQwRkQ1MzI1QTRBRkRGMDBGN0M4
NDkgLyogTWFya2VkVGV4dFN0eWxlLmggaW4gSGVhZGVycyAqLywKIAkJCQkyRDlCRjcyOTFEQkZE
QjEwMDA3QTdEOTkgLyogSlNNZWRpYUtleXMuaCBpbiBIZWFkZXJzICovLAogCQkJCTJEOUJGNzJB
MURCRkRCMTMwMDdBN0Q5OSAvKiBKU01lZGlhS2V5U2Vzc2lvbi5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJQ0RGNEI3MUUxRTAxRTExQTAwRTIzNUEyIC8qIEpTTWVkaWFLZXlTZXNzaW9uVHlwZS5oIGlu
IEhlYWRlcnMgKi8sCkBAIC0zMzYxMyw2ICszMzYxOCw3IEBACiAJCQkJN0FFNkM5M0MxQkUwQzYw
MTAwRTE5RTAzIC8qIE1haW5UaHJlYWRTaGFyZWRUaW1lci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
RTQ1MUM2MzIyMzk0MDMxQTAwOTkzMTkwIC8qIE1hcmdpblR5cGVzLmggaW4gSGVhZGVycyAqLywK
IAkJCQlDRTE4NjY0NTFGNzJFNUI0MDBBMENBQjYgLyogTWFya2VkVGV4dC5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJRTQ0MEZENTMyNUE0QUZERjAwRjdDODQ5IC8qIE1hcmtlZFRleHRTdHlsZS5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJOTMzMDlERjgwOTlFNjQ5MjAwNTZFNTgxIC8qIG1hcmt1cC5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJOTcyOEMzMTQxMjY4RTQzOTAwNDFFODlCIC8qIE1hcmt1cEFjY3Vt
dWxhdG9yLmggaW4gSGVhZGVycyAqLywKIAkJCQkwMEM2MEUzRjEzRDc2RDdFMDA5MkEyNzUgLyog
TWFya3VwVG9rZW5pemVySW5saW5lcy5oIGluIEhlYWRlcnMgKi8sCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9kb20vRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5j
cHAKaW5kZXggY2M1ZTBkZTRiMTc0Njc0ODI2NDA1M2Q4YzVhY2M5MmY5OGRlZjJjZi4uMGNlYzc3
MGU1MzVkYzFhNTM4NGQxYmI5YzJlNmM2ZTJlM2RlY2NjOSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvZG9tL0VsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmNw
cApAQCAtMjk5OSw3ICsyOTk5LDcgQEAgc3RhdGljIFJlZlB0cjxFbGVtZW50PiBmaW5kRmlyc3RQ
cm9ncmFtYXRpY2FsbHlGb2N1c2FibGVFbGVtZW50SW5Db21wb3NlZFRyZWUoRWwKICAgICByZXR1
cm4gbnVsbHB0cjsKIH0KIAotdm9pZCBFbGVtZW50Ojpmb2N1cyhTZWxlY3Rpb25SZXN0b3JhdGlv
bk1vZGUgcmVzdG9yYXRpb25Nb2RlLCBGb2N1c0RpcmVjdGlvbiBkaXJlY3Rpb24pCit2b2lkIEVs
ZW1lbnQ6OmZvY3VzKGNvbnN0IEZvY3VzT3B0aW9ucyYgb3B0aW9ucykKIHsKICAgICBpZiAoIWlz
Q29ubmVjdGVkKCkpCiAgICAgICAgIHJldHVybjsKQEAgLTMwNDMsMTEgKzMwNDMsMTIgQEAgdm9p
ZCBFbGVtZW50Ojpmb2N1cyhTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGUgcmVzdG9yYXRpb25Nb2Rl
LCBGb2N1c0RpcmVjdGlvbiBkaXIKICAgICAgICAgLy8gRm9jdXMgYW5kIGNoYW5nZSBldmVudCBo
YW5kbGVycyBjYW4gY2F1c2UgdXMgdG8gbG9zZSBvdXIgbGFzdCByZWYuCiAgICAgICAgIC8vIElm
IGEgZm9jdXMgZXZlbnQgaGFuZGxlciBjaGFuZ2VzIHRoZSBmb2N1cyB0byBhIGRpZmZlcmVudCBu
b2RlIGl0CiAgICAgICAgIC8vIGRvZXMgbm90IG1ha2Ugc2Vuc2UgdG8gY29udGludWUgYW5kIHVw
ZGF0ZSBhcHBlYXJlbmNlLgotICAgICAgICBpZiAoIXBhZ2UtPmZvY3VzQ29udHJvbGxlcigpLnNl
dEZvY3VzZWRFbGVtZW50KG5ld1RhcmdldC5nZXQoKSwgKmRvY3VtZW50LT5mcmFtZSgpLCBkaXJl
Y3Rpb24pKQorICAgICAgICBpZiAoIXBhZ2UtPmZvY3VzQ29udHJvbGxlcigpLnNldEZvY3VzZWRF
bGVtZW50KG5ld1RhcmdldC5nZXQoKSwgKmRvY3VtZW50LT5mcmFtZSgpLCBvcHRpb25zLmRpcmVj
dGlvbikpCiAgICAgICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgbmV3VGFyZ2V0LT5yZXZl
YWxGb2N1c2VkRWxlbWVudChyZXN0b3JhdGlvbk1vZGUpOworICAgIGlmICghb3B0aW9ucy5wcmV2
ZW50U2Nyb2xsKQorICAgICAgICBuZXdUYXJnZXQtPnJldmVhbEZvY3VzZWRFbGVtZW50KG9wdGlv
bnMuc2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlKTsKIH0KIAogdm9pZCBFbGVtZW50OjpyZXZlYWxG
b2N1c2VkRWxlbWVudChTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGUgc2VsZWN0aW9uTW9kZSkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9k
b20vRWxlbWVudC5oCmluZGV4IDA5MTNkMDE5NWJhMDg0NDVjMTM2MDU4YWI3NjdhN2IxYjIwYTBj
ZTguLjVmMTJmMjFmNTY4MWE1ZDczYjJkMjhiMmUyZTFjYjNiMDY0MjUwOTUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0Vs
ZW1lbnQuaApAQCAtMjcsNiArMjcsNyBAQAogI2luY2x1ZGUgIkFYVGV4dFN0YXRlQ2hhbmdlSW50
ZW50LmgiCiAjaW5jbHVkZSAiRG9jdW1lbnQuaCIKICNpbmNsdWRlICJFbGVtZW50RGF0YS5oIgor
I2luY2x1ZGUgIkZvY3VzT3B0aW9ucy5oIgogI2luY2x1ZGUgIkhUTUxOYW1lcy5oIgogI2luY2x1
ZGUgIlNjcm9sbFR5cGVzLmgiCiAjaW5jbHVkZSAiU2hhZG93Um9vdEluaXQuaCIKQEAgLTM5OSw3
ICs0MDAsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCBTdHJpbmcgdGFyZ2V0KCkgY29uc3QgeyBy
ZXR1cm4gU3RyaW5nKCk7IH0KIAogICAgIHN0YXRpYyBBWFRleHRTdGF0ZUNoYW5nZUludGVudCBk
ZWZhdWx0Rm9jdXNUZXh0U3RhdGVDaGFuZ2VJbnRlbnQoKSB7IHJldHVybiBBWFRleHRTdGF0ZUNo
YW5nZUludGVudChBWFRleHRTdGF0ZUNoYW5nZVR5cGVTZWxlY3Rpb25Nb3ZlLCBBWFRleHRTZWxl
Y3Rpb24geyBBWFRleHRTZWxlY3Rpb25EaXJlY3Rpb25EaXNjb250aWd1b3VzLCBBWFRleHRTZWxl
Y3Rpb25HcmFudWxhcml0eVVua25vd24sIHRydWUgfSk7IH0KLSAgICB2aXJ0dWFsIHZvaWQgZm9j
dXMoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlID0gU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlOjpS
ZXN0b3JlT3JTZWxlY3RBbGwsIEZvY3VzRGlyZWN0aW9uID0gRm9jdXNEaXJlY3Rpb246Ok5vbmUp
OworICAgIHZpcnR1YWwgdm9pZCBmb2N1cyhjb25zdCBGb2N1c09wdGlvbnMmID0geyB9KTsKICAg
ICB2b2lkIHJldmVhbEZvY3VzZWRFbGVtZW50KFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZSk7CiAg
ICAgdmlydHVhbCBSZWZQdHI8RWxlbWVudD4gZm9jdXNBcHBlYXJhbmNlVXBkYXRlVGFyZ2V0KCk7
CiAgICAgdmlydHVhbCB2b2lkIHVwZGF0ZUZvY3VzQXBwZWFyYW5jZShTZWxlY3Rpb25SZXN0b3Jh
dGlvbk1vZGUsIFNlbGVjdGlvblJldmVhbE1vZGUgPSBTZWxlY3Rpb25SZXZlYWxNb2RlOjpSZXZl
YWwpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0ZvY3VzT3B0aW9ucy5oIGIvU291
cmNlL1dlYkNvcmUvZG9tL0ZvY3VzT3B0aW9ucy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjRhMWM5YjNmMDI3NDMw
ZDNhZmM2OTc2NjQ2ZjFhMDVlNjhkYzgzZjYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9kb20vRm9jdXNPcHRpb25zLmgKQEAgLTAsMCArMSwzOCBAQAorLyoKKyAqIENvcHlyaWdo
dCAoQykgMjAyMCBJZ2FsaWEgUy5MLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9m
IHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4K
KyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUg
YWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFu
ZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoK
KyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFTIElTJycgQU5E
IEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJ
VFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1F
RC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKKyAqIENPTlRSSUJVVE9SUyBCRSBM
SUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICog
RVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNF
UzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBMSUFCSUxJVFks
IFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0Yg
VEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUg
IkZvY3VzRGlyZWN0aW9uLmgiCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworc3RydWN0IEZvY3Vz
T3B0aW9ucyB7CisgICAgU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlIHNlbGVjdGlvblJlc3RvcmF0
aW9uTW9kZSB7IFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZTo6UmVzdG9yZU9yU2VsZWN0QWxsIH07
CisgICAgRm9jdXNEaXJlY3Rpb24gZGlyZWN0aW9uIHsgRm9jdXNEaXJlY3Rpb246Ok5vbmUgfTsK
KyAgICBib29sIHByZXZlbnRTY3JvbGwgeyBmYWxzZSB9OworfTsKKworfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0ZvY3VzT3B0aW9ucy5pZGwg
Yi9Tb3VyY2UvV2ViQ29yZS9kb20vRm9jdXNPcHRpb25zLmlkbApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xNzM5MDIz
OTc0ODQzZWVmMDY0MmUwNTdkNjNkMGMyYjgxNzhiZTBjCi0tLSAvZGV2L251bGwKKysrIGIvU291
cmNlL1dlYkNvcmUvZG9tL0ZvY3VzT3B0aW9ucy5pZGwKQEAgLTAsMCArMSwyOCBAQAorLyoKKyAq
IENvcHlyaWdodCAoQykgMjAyMCBJZ2FsaWEgUy5MLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoK
KyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVu
dGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0
aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFT
IElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJD
SEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUg
RElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKKyAqIENPTlRSSUJV
VE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVD
SUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVT
UyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQK
KyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCitkaWN0aW9uYXJ5IEZvY3Vz
T3B0aW9ucyB7CisgICBib29sZWFuIHByZXZlbnRTY3JvbGwgPSBmYWxzZTsKK307CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtQ29udHJvbEVsZW1lbnQuY3BwIGIvU291
cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUNvbnRyb2xFbGVtZW50LmNwcAppbmRleCBiOWRmNjY5
NTJjZGFjODM2YzQwNjcxMTA3NmJkNjUxNzMyYzM1ZTNjLi4yZTZmOTVlNzQwNWE5NDg4YWIzOTYw
ZGNkN2U0NzdmODhjYmQ0MmU2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxG
b3JtQ29udHJvbEVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1D
b250cm9sRWxlbWVudC5jcHAKQEAgLTI1NCwxMSArMjU0LDExIEBAIHZvaWQgSFRNTEZvcm1Db250
cm9sRWxlbWVudDo6ZGlkQXR0YWNoUmVuZGVyZXJzKCkKICAgICAgICAgYXV0byBmcmFtZVZpZXcg
PSBtYWtlUmVmUHRyKGRvY3VtZW50KCkudmlldygpKTsKICAgICAgICAgaWYgKGZyYW1lVmlldyAm
JiBmcmFtZVZpZXctPmxheW91dENvbnRleHQoKS5pc0luTGF5b3V0KCkpIHsKICAgICAgICAgICAg
IGZyYW1lVmlldy0+cXVldWVQb3N0TGF5b3V0Q2FsbGJhY2soW2VsZW1lbnRdIHsKLSAgICAgICAg
ICAgICAgICBlbGVtZW50LT5mb2N1cyhTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGU6OlBsYWNlQ2Fy
ZXRBdFN0YXJ0KTsKKyAgICAgICAgICAgICAgICBlbGVtZW50LT5mb2N1cyh7IFNlbGVjdGlvblJl
c3RvcmF0aW9uTW9kZTo6UGxhY2VDYXJldEF0U3RhcnQgfSk7CiAgICAgICAgICAgICB9KTsKICAg
ICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgIFN0eWxlOjpxdWV1ZVBvc3RSZXNvbHV0aW9uQ2Fs
bGJhY2soW2VsZW1lbnRdIHsKLSAgICAgICAgICAgICAgICBlbGVtZW50LT5mb2N1cyhTZWxlY3Rp
b25SZXN0b3JhdGlvbk1vZGU6OlBsYWNlQ2FyZXRBdFN0YXJ0KTsKKyAgICAgICAgICAgICAgICBl
bGVtZW50LT5mb2N1cyh7IFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZTo6UGxhY2VDYXJldEF0U3Rh
cnQgfSk7CiAgICAgICAgICAgICB9KTsKICAgICAgICAgfQogICAgIH0KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTExhYmVsRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0hUTUxMYWJlbEVsZW1lbnQuY3BwCmluZGV4IDQyNmYxNmJjNjFkNmQ1ZjgwYjY2ZjRkNmEw
ZDYyNjU1OGVhNGIyMDMuLmNlMDljMjA0YmM2NmNkZTZmNGU3MzYxZDY3MGNkYjU2M2Y0NzU3Mzcg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExhYmVsRWxlbWVudC5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGFiZWxFbGVtZW50LmNwcApAQCAtMTcyLDIxICsx
NzIsMjEgQEAgYm9vbCBIVE1MTGFiZWxFbGVtZW50Ojp3aWxsUmVzcG9uZFRvTW91c2VDbGlja0V2
ZW50cygpCiAgICAgcmV0dXJuIChlbGVtZW50ICYmIGVsZW1lbnQtPndpbGxSZXNwb25kVG9Nb3Vz
ZUNsaWNrRXZlbnRzKCkpIHx8IEhUTUxFbGVtZW50Ojp3aWxsUmVzcG9uZFRvTW91c2VDbGlja0V2
ZW50cygpOwogfQogCi12b2lkIEhUTUxMYWJlbEVsZW1lbnQ6OmZvY3VzKFNlbGVjdGlvblJlc3Rv
cmF0aW9uTW9kZSByZXN0b3JhdGlvbk1vZGUsIEZvY3VzRGlyZWN0aW9uIGRpcmVjdGlvbikKK3Zv
aWQgSFRNTExhYmVsRWxlbWVudDo6Zm9jdXMoY29uc3QgRm9jdXNPcHRpb25zJiBvcHRpb25zKQog
ewogICAgIFJlZjxIVE1MTGFiZWxFbGVtZW50PiBwcm90ZWN0ZWRUaGlzKCp0aGlzKTsKICAgICBp
ZiAoZG9jdW1lbnQoKS5oYXZlU3R5bGVzaGVldHNMb2FkZWQoKSkgewogICAgICAgICBkb2N1bWVu
dCgpLnVwZGF0ZUxheW91dCgpOwogICAgICAgICBpZiAoaXNGb2N1c2FibGUoKSkgewogICAgICAg
ICAgICAgLy8gVGhlIHZhbHVlIG9mIHJlc3RvcmF0aW9uTW9kZSBpcyBub3QgdXNlZCBmb3IgbGFi
ZWwgZWxlbWVudHMgYXMgaXQgZG9lc24ndCBvdmVycmlkZSB1cGRhdGVGb2N1c0FwcGVhcmFuY2Uu
Ci0gICAgICAgICAgICBFbGVtZW50Ojpmb2N1cyhyZXN0b3JhdGlvbk1vZGUsIGRpcmVjdGlvbik7
CisgICAgICAgICAgICBFbGVtZW50Ojpmb2N1cyhvcHRpb25zKTsKICAgICAgICAgICAgIHJldHVy
bjsKICAgICAgICAgfQogICAgIH0KIAogICAgIC8vIFRvIG1hdGNoIG90aGVyIGJyb3dzZXJzLCBh
bHdheXMgcmVzdG9yZSBwcmV2aW91cyBzZWxlY3Rpb24uCiAgICAgaWYgKGF1dG8gZWxlbWVudCA9
IGNvbnRyb2woKSkKLSAgICAgICAgZWxlbWVudC0+Zm9jdXMoU2VsZWN0aW9uUmVzdG9yYXRpb25N
b2RlOjpSZXN0b3JlT3JTZWxlY3RBbGwsIGRpcmVjdGlvbik7CisgICAgICAgIGVsZW1lbnQtPmZv
Y3VzKHsgU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlOjpSZXN0b3JlT3JTZWxlY3RBbGwsIG9wdGlv
bnMuZGlyZWN0aW9uIH0pOwogfQogCiBib29sIEhUTUxMYWJlbEVsZW1lbnQ6OmFjY2Vzc0tleUFj
dGlvbihib29sIHNlbmRNb3VzZUV2ZW50cykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTExhYmVsRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGFiZWxFbGVt
ZW50LmgKaW5kZXggODBlMTVjMjI1NzlkZGI4NjVmZGMxMTc2MDU4YmZmMmUzM2JmZGY5YS4uZDU2
ZDViNmI5NDNkZDljZjkwZWQwZDNjMzBkMTlmNDM3NDQ4Mzc2MiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvaHRtbC9IVE1MTGFiZWxFbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRt
bC9IVE1MTGFiZWxFbGVtZW50LmgKQEAgLTUxLDcgKzUxLDcgQEAgcHJpdmF0ZToKICAgICAvLyBP
dmVycmlkZGVuIHRvIGVpdGhlciBjbGljaygpIG9yIGZvY3VzKCkgdGhlIGNvcnJlc3BvbmRpbmcg
Y29udHJvbC4KICAgICB2b2lkIGRlZmF1bHRFdmVudEhhbmRsZXIoRXZlbnQmKSBmaW5hbDsKIAot
ICAgIHZvaWQgZm9jdXMoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlLCBGb2N1c0RpcmVjdGlvbikg
ZmluYWw7CisgICAgdm9pZCBmb2N1cyhjb25zdCBGb2N1c09wdGlvbnMmKSBmaW5hbDsKIAogICAg
IGJvb2wgaXNJbnRlcmFjdGl2ZUNvbnRlbnQoKSBjb25zdCBmaW5hbCB7IHJldHVybiB0cnVlOyB9
CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGVnZW5kRWxlbWVudC5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMZWdlbmRFbGVtZW50LmNwcAppbmRleCBlZDBh
NDAxMWNhNzQ1NmM0ZTI0MWUxMGM1YTZkYzAyNzMxN2Q2ODJkLi41Y2VlYTYxMGIwNTQyYzQzMjUx
OTE4OTA1ZmVjMmMwOTRjOTgwZjM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxMZWdlbmRFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMZWdlbmRF
bGVtZW50LmNwcApAQCAtNTcsMTkgKzU3LDE5IEBAIFJlZlB0cjxIVE1MRm9ybUNvbnRyb2xFbGVt
ZW50PiBIVE1MTGVnZW5kRWxlbWVudDo6YXNzb2NpYXRlZENvbnRyb2woKQogICAgIHJldHVybiBk
ZXNjZW5kYW50c09mVHlwZTxIVE1MRm9ybUNvbnRyb2xFbGVtZW50PigqZW5jbG9zaW5nRmllbGRz
ZXQpLmZpcnN0KCk7CiB9CiAKLXZvaWQgSFRNTExlZ2VuZEVsZW1lbnQ6OmZvY3VzKFNlbGVjdGlv
blJlc3RvcmF0aW9uTW9kZSByZXN0b3JhdGlvbk1vZGUsIEZvY3VzRGlyZWN0aW9uIGRpcmVjdGlv
bikKK3ZvaWQgSFRNTExlZ2VuZEVsZW1lbnQ6OmZvY3VzKGNvbnN0IEZvY3VzT3B0aW9ucyYgb3B0
aW9ucykKIHsKICAgICBpZiAoZG9jdW1lbnQoKS5oYXZlU3R5bGVzaGVldHNMb2FkZWQoKSkgewog
ICAgICAgICBkb2N1bWVudCgpLnVwZGF0ZUxheW91dElnbm9yZVBlbmRpbmdTdHlsZXNoZWV0cygp
OwogICAgICAgICBpZiAoaXNGb2N1c2FibGUoKSkgewotICAgICAgICAgICAgRWxlbWVudDo6Zm9j
dXMocmVzdG9yYXRpb25Nb2RlLCBkaXJlY3Rpb24pOworICAgICAgICAgICAgRWxlbWVudDo6Zm9j
dXMoeyBvcHRpb25zLnNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZSwgb3B0aW9ucy5kaXJlY3Rpb24g
fSk7CiAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgIH0KICAgICB9CiAKICAgICAvLyBUbyBt
YXRjaCBvdGhlciBicm93c2VycycgYmVoYXZpb3IsIG5ldmVyIHJlc3RvcmUgcHJldmlvdXMgc2Vs
ZWN0aW9uLgogICAgIGlmIChhdXRvIGNvbnRyb2wgPSBhc3NvY2lhdGVkQ29udHJvbCgpKQotICAg
ICAgICBjb250cm9sLT5mb2N1cyhTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGU6OlNlbGVjdEFsbCwg
ZGlyZWN0aW9uKTsKKyAgICAgICAgY29udHJvbC0+Zm9jdXMoeyBTZWxlY3Rpb25SZXN0b3JhdGlv
bk1vZGU6OlNlbGVjdEFsbCwgb3B0aW9ucy5kaXJlY3Rpb24gfSk7CiB9CiAKIGJvb2wgSFRNTExl
Z2VuZEVsZW1lbnQ6OmFjY2Vzc0tleUFjdGlvbihib29sIHNlbmRNb3VzZUV2ZW50cykKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExlZ2VuZEVsZW1lbnQuaCBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTExlZ2VuZEVsZW1lbnQuaAppbmRleCA3ZGNiMWI4NTBhMjdlM2I3YWNi
ODAyODdjNTc0ZjgzMDJmY2E2MDJmLi45MzIxNTkwNTAzOTNlM2NlZjYxZDIzOWZkNTA4YmVjNzVl
YWVjNTdjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMZWdlbmRFbGVtZW50
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGVnZW5kRWxlbWVudC5oCkBAIC00Myw3
ICs0Myw3IEBAIHByaXZhdGU6CiAgICAgUmVmUHRyPEhUTUxGb3JtQ29udHJvbEVsZW1lbnQ+IGFz
c29jaWF0ZWRDb250cm9sKCk7CiAKICAgICBib29sIGFjY2Vzc0tleUFjdGlvbihib29sIHNlbmRN
b3VzZUV2ZW50cykgZmluYWw7Ci0gICAgdm9pZCBmb2N1cyhTZWxlY3Rpb25SZXN0b3JhdGlvbk1v
ZGUsIEZvY3VzRGlyZWN0aW9uKSBmaW5hbDsKKyAgICB2b2lkIGZvY3VzKGNvbnN0IEZvY3VzT3B0
aW9ucyYpIGZpbmFsOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MT3JGb3JlaWduRWxlbWVudC5pZGwgYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0hUTUxPckZvcmVpZ25FbGVtZW50LmlkbAppbmRleCA5ZDYyZTRkODQxNzc4NDE2
YjUyNDFkOTZiZDgwN2Y5NDY2ZjNjYTE0Li45MTM0NjA5ZTlkMjFmZWMzOWE5ZWYwZjRjYzVkZjVk
MjZjNTNmMzQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPckZvcmVpZ25F
bGVtZW50LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPckZvcmVpZ25FbGVtZW50
LmlkbApAQCAtMzQsNyArMzQsNyBAQCBpbnRlcmZhY2UgbWl4aW4gSFRNTE9yRm9yZWlnbkVsZW1l
bnQgewogICAgIC8vIEZJWE1FOiBJbXBsZW1lbnQgJ2F1dG9mb2N1cycuCiAgICAgLy8gW0NFUmVh
Y3Rpb25zXSBhdHRyaWJ1dGUgYm9vbGVhbiBhdXRvZm9jdXM7CiAgICAgW0NFUmVhY3Rpb25zLCBJ
bXBsZW1lbnRlZEFzPXRhYkluZGV4Rm9yQmluZGluZ3NdIGF0dHJpYnV0ZSBsb25nIHRhYkluZGV4
OwotICAgIC8vIEZJTVhFOiBmb2N1cygpIGlzIHNwZWNpZmllZCB0byB0YWtlIGFuIG9wdGlvbmFs
IEZvY3VzT3B0aW9ucy4gSW1wbGVtZW50IHRoYXQuCi0gICAgdW5kZWZpbmVkIGZvY3VzKCk7Cisg
ICAgdW5kZWZpbmVkIGZvY3VzKG9wdGlvbmFsIEZvY3VzT3B0aW9ucyBvcHRpb25zKTsKICAgICB1
bmRlZmluZWQgYmx1cigpOwogfTsKKwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9J
bnB1dFR5cGUuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9JbnB1dFR5cGUuY3BwCmluZGV4IDQw
YjM3Y2U2ZmQ5YWQ3NDM3MWY1NGYwMmI5NmYzODM4NTM5N2E5NzEuLjMyN2VmNmE2YTM3ZTVmODBj
Mjg1OWE2YzdhNDM0ZDRmMmVhM2JjNDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
SW5wdXRUeXBlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0lucHV0VHlwZS5jcHAKQEAg
LTU4Miw3ICs1ODIsNyBAQCB2b2lkIElucHV0VHlwZTo6aGFuZGxlQmx1ckV2ZW50KCkKIGJvb2wg
SW5wdXRUeXBlOjphY2Nlc3NLZXlBY3Rpb24oYm9vbCkKIHsKICAgICBBU1NFUlQoZWxlbWVudCgp
KTsKLSAgICBlbGVtZW50KCktPmZvY3VzKFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZTo6U2VsZWN0
QWxsKTsKKyAgICBlbGVtZW50KCktPmZvY3VzKHsgU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlOjpT
ZWxlY3RBbGwgfSk7CiAgICAgcmV0dXJuIGZhbHNlOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL0ZvY3VzQ29udHJvbGxlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0Zv
Y3VzQ29udHJvbGxlci5jcHAKaW5kZXggMDdhYmFkMDYwZTAxM2ViOGI3YWM1NjAwZGQ0NDE5NmQy
YjFhYTlmYS4uOWFkN2M0MTc2MjJhNTljZTk5MDFiZDE3YTE3OGFjZDIxYWE4YjNlYSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9Gb2N1c0NvbnRyb2xsZXIuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvRm9jdXNDb250cm9sbGVyLmNwcApAQCAtNTMzLDcgKzUzMyw3IEBAIGJv
b2wgRm9jdXNDb250cm9sbGVyOjphZHZhbmNlRm9jdXNJbkRvY3VtZW50T3JkZXIoRm9jdXNEaXJl
Y3Rpb24gZGlyZWN0aW9uLCBLZXliCiAgICAgICAgIH0KICAgICB9CiAKLSAgICBlbGVtZW50LT5m
b2N1cyhTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGU6OlNlbGVjdEFsbCwgZGlyZWN0aW9uKTsKKyAg
ICBlbGVtZW50LT5mb2N1cyh7IFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZTo6U2VsZWN0QWxsLCBk
aXJlY3Rpb24gfSk7CiAgICAgcmV0dXJuIHRydWU7CiB9CiAKQEAgLTExMDcsNyArMTEwNyw3IEBA
IGJvb2wgRm9jdXNDb250cm9sbGVyOjphZHZhbmNlRm9jdXNEaXJlY3Rpb25hbGx5SW5Db250YWlu
ZXIoTm9kZSogY29udGFpbmVyLCBjb25zCiAgICAgRWxlbWVudCogZWxlbWVudCA9IGRvd25jYXN0
PEVsZW1lbnQ+KGZvY3VzQ2FuZGlkYXRlLmZvY3VzYWJsZU5vZGUpOwogICAgIEFTU0VSVChlbGVt
ZW50KTsKIAotICAgIGVsZW1lbnQtPmZvY3VzKFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZTo6U2Vs
ZWN0QWxsLCBkaXJlY3Rpb24pOworICAgIGVsZW1lbnQtPmZvY3VzKHsgU2VsZWN0aW9uUmVzdG9y
YXRpb25Nb2RlOjpTZWxlY3RBbGwsIGRpcmVjdGlvbiB9KTsKICAgICByZXR1cm4gdHJ1ZTsKIH0K
IApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCmluZGV4IGVjYzBiNDlhOGM0NzNkZDc0Yzg4NjM5MWY2NDBjYmNhZTY0M2JiZDguLmIwOTA5
MjlkNjU1OGFlNzIxZDIzODRiM2IyY2EyYTJmYjFkMGU1OGMgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBA
QAorMjAyMS0wMS0xNSAgUm9iIEJ1aXMgIDxyYnVpc0BpZ2FsaWEuY29tPgorCisgICAgICAgIEVu
YWJsZSBhYmlsaXR5IHRvIHByZXZlbnQgc2Nyb2xsaW5nIGluIEVsZW1lbnQuZm9jdXMoKQorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc4NTgzCisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhlIHRlc3QgcHJl
dmVudFNjcm9sbC10ZXh0YXJlYS5odG1sIG5vdyBwYXNzZXMgb24gYWxsIHBsYXRmb3Jtcy4KKwor
ICAgICAgICAqIHBsYXRmb3JtL2lvcy13azIvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9odG1sL2ludGVyYWN0aW9uL2ZvY3VzL3Byb2Nlc3NpbmctbW9kZWwvcHJldmVudFNjcm9sbC10
ZXh0YXJlYS1leHBlY3RlZC50eHQ6IFJlbW92ZWQuCisgICAgICAgICogcGxhdGZvcm0vbWFjLXdr
MS9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvaW50ZXJhY3Rpb24vZm9jdXMv
cHJvY2Vzc2luZy1tb2RlbC9wcmV2ZW50U2Nyb2xsLXRleHRhcmVhLWV4cGVjdGVkLnR4dDogUmVt
b3ZlZC4KKwogMjAyMS0wMS0xNCAgSnVsaWFuIEdvbnphbGV6ICA8anVsaWFuX2FfZ29uemFsZXpA
YXBwbGUuY29tPgogCiAgICAgICAgIENyYXNoIGZyb20gQ29tcG9zaXRlRWRpdENvbW1hbmQ6Om1v
dmVQYXJhZ3JhcGhzKCkgYmVpbmcgcGFzc2VkIG51bGwgZW5kCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0No
YW5nZUxvZwppbmRleCA4MTdiNjk4MjdlYjViYTBkZWIxN2U4MTQyZjEwNTU2NzkxYWM1NWNlLi43
ZDM1NDk4OTQ0NTZkY2FiZTFmMDIyMGI3Y2RjZjhlMjA5YzMwMWY3IDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAyMS0wMS0xNSAgUm9iIEJ1aXMgIDxy
YnVpc0BpZ2FsaWEuY29tPgorCisgICAgICAgIEVuYWJsZSBhYmlsaXR5IHRvIHByZXZlbnQgc2Ny
b2xsaW5nIGluIEVsZW1lbnQuZm9jdXMoKQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTc4NTgzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgVXBkYXRlIGltcHJvdmVkIHRlc3QgcmVzdWx0LgorCisgICAgICAg
ICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvaW50ZXJhY3Rpb24vZm9jdXMvcHJvY2Vzc2luZy1t
b2RlbC9wcmV2ZW50U2Nyb2xsLXRleHRhcmVhLWV4cGVjdGVkLnR4dDoKKwogMjAyMS0wMS0xNCAg
TWFydGluIFJvYmluc29uICA8bXJvYmluc29uQGlnYWxpYS5jb20+CiAKICAgICAgICAgW2Nzcy1z
Y3JvbGwtc25hcF0gc2Nyb2xsLXNuYXAtYWxpZ24gcGFyc2luZyBpcyBpbmNvcnJlY3QvYmFja3dh
cmRzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2h0bWwvaW50ZXJhY3Rpb24vZm9jdXMvcHJvY2Vzc2luZy1tb2RlbC9wcmV2ZW50U2Nyb2xs
LXRleHRhcmVhLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9pbnRlcmFjdGlvbi9mb2N1cy9wcm9jZXNzaW5nLW1vZGVsL3ByZXZl
bnRTY3JvbGwtdGV4dGFyZWEtZXhwZWN0ZWQudHh0CmluZGV4IDA4YWFmYjMxNjM2MDg0OTA4Nzk4
MGUwMDUwNDJkN2M4NWFkYTg2NWIuLmM3MzRhNjlkZTlhNWNmZjVhZDU1ZWVmOWNkZDFkNmQyZWVj
ZTZkM2EgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvaHRtbC9pbnRlcmFjdGlvbi9mb2N1cy9wcm9jZXNzaW5nLW1vZGVsL3ByZXZlbnRTY3Jv
bGwtdGV4dGFyZWEtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9pbnRlcmFjdGlvbi9mb2N1cy9wcm9jZXNzaW5nLW1vZGVs
L3ByZXZlbnRTY3JvbGwtdGV4dGFyZWEtZXhwZWN0ZWQudHh0CkBAIC0xLDQgKzEsNCBAQAogCiAK
LUZBSUwgcHJldmVudFNjcm9sbDogdHJ1ZSBvbiBhIHRleHRhcmVhIGVsZW1lbnQgYXNzZXJ0X2Vx
dWFsczogVEVYVEFSRUE6IFNob3VsZCBub3QgaGF2ZSBzY3JvbGxlZCBhZnRlciBhIGNvdXBsZSBl
dmVudCBsb29wIHRpY2tzIGV4cGVjdGVkIDAgYnV0IGdvdCA5MjAKK1BBU1MgcHJldmVudFNjcm9s
bDogdHJ1ZSBvbiBhIHRleHRhcmVhIGVsZW1lbnQKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
cGxhdGZvcm0vaW9zLXdrMi9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvaW50
ZXJhY3Rpb24vZm9jdXMvcHJvY2Vzc2luZy1tb2RlbC9wcmV2ZW50U2Nyb2xsLXRleHRhcmVhLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy13azIvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9odG1sL2ludGVyYWN0aW9uL2ZvY3VzL3Byb2Nlc3NpbmctbW9kZWwv
cHJldmVudFNjcm9sbC10ZXh0YXJlYS1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IGM3MzRhNjlkZTlhNWNmZjVhZDU1ZWVmOWNkZDFkNmQyZWVjZTZkM2EuLjAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vaW9zLXdrMi9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvaW50ZXJh
Y3Rpb24vZm9jdXMvcHJvY2Vzc2luZy1tb2RlbC9wcmV2ZW50U2Nyb2xsLXRleHRhcmVhLWV4cGVj
dGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDQgKzAsMCBAQAotCi0KLVBBU1MgcHJldmVudFNj
cm9sbDogdHJ1ZSBvbiBhIHRleHRhcmVhIGVsZW1lbnQKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vbWFjLXdrMS9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwv
aW50ZXJhY3Rpb24vZm9jdXMvcHJvY2Vzc2luZy1tb2RlbC9wcmV2ZW50U2Nyb2xsLXRleHRhcmVh
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azEvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2ludGVyYWN0aW9uL2ZvY3VzL3Byb2Nlc3NpbmctbW9k
ZWwvcHJldmVudFNjcm9sbC10ZXh0YXJlYS1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDUyYWJhYmJmYmQ3MjdlY2RmYmJjZGRkNmNjOGUxMDBkM2RkOWNhZjUuLjAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMv
cGxhdGZvcm0vbWFjLXdrMS9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvaW50
ZXJhY3Rpb24vZm9jdXMvcHJvY2Vzc2luZy1tb2RlbC9wcmV2ZW50U2Nyb2xsLXRleHRhcmVhLWV4
cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDQgKzAsMCBAQAotCi0KLUZBSUwgcHJldmVu
dFNjcm9sbDogdHJ1ZSBvbiBhIHRleHRhcmVhIGVsZW1lbnQgYXNzZXJ0X2VxdWFsczogVEVYVEFS
RUE6IFNob3VsZCBub3QgaGF2ZSBzY3JvbGxlZCBleHBlY3RlZCAwIGJ1dCBnb3QgOTIwCi0K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>420239</attachid>
            <date>2021-02-14 03:46:23 -0800</date>
            <delta_ts>2021-02-16 02:22:49 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-178583-20210214124620.patch</filename>
            <type>text/plain</type>
            <size>32330</size>
            <attacher name="Rob Buis">rbuis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcyODMyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNWRmZDJjZjM3ZjgzZDU5
ZjYyNzk4MzVhYjBkMmYyZWZjMWYxMDQ3NS4uNWMxOTNjMWI5MDQ0ZmM4YzNmYThiZjYxODg1YWE0
NWM1MTk3NjY1ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ5IEBACisyMDIxLTAyLTE0ICBSb2Ig
QnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgRW5hYmxlIGFiaWxpdHkgdG8gcHJl
dmVudCBzY3JvbGxpbmcgaW4gRWxlbWVudC5mb2N1cygpCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzg1ODMKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgRm9jdXNPcHRpb25zIHBhcmFtZXRlciB0byB0
aGUgZm9jdXMgbWV0aG9kIFsxXSBib3RoCisgICAgICAgIHRvIHRoZSBJREwgYXMgdGhlIEMrKyBz
aWRlLiBDaGFuZ2UgRWxlbWVudC5mb2N1cyB0byBub3QKKyAgICAgICAgc2Nyb2xsIGlmIEZvY3Vz
T3B0aW9ucy5wcmV2ZW50U2Nyb2xsIGlzIHRydWUuCisKKyAgICAgICAgQmVoYXZpb3IgbWF0Y2hl
cyBDaHJvbWUgYW5kIEZpcmVmb3guCisKKyAgICAgICAgVGVzdHM6IGltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9pbnRlcmFjdGlvbi9mb2N1cy9wcm9jZXNzaW5nLW1vZGVsL3By
ZXZlbnRTY3JvbGwtdGV4dGFyZWEuaHRtbAorICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9odG1sL2ludGVyYWN0aW9uL2ZvY3VzL3Byb2Nlc3NpbmctbW9kZWwv
cHJldmVudFNjcm9sbC1uZXN0ZWQtc2Nyb2xsLWVsZW1lbnRzLmh0bWwKKworICAgICAgICBbMV0g
aHR0cHM6Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2UvaW50ZXJhY3Rpb24uaHRtbCNk
b20tZm9jdXMKKworICAgICAgICAqIENNYWtlTGlzdHMudHh0OgorICAgICAgICAqIERlcml2ZWRT
b3VyY2VzLWlucHV0LnhjZmlsZWxpc3Q6CisgICAgICAgICogRGVyaXZlZFNvdXJjZXMtb3V0cHV0
LnhjZmlsZWxpc3Q6CisgICAgICAgICogRGVyaXZlZFNvdXJjZXMubWFrZToKKyAgICAgICAgKiBI
ZWFkZXJzLmNtYWtlOgorICAgICAgICAqIFNvdXJjZXMudHh0OgorICAgICAgICAqIFdlYkNvcmUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBkb20vRWxlbWVudC5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpFbGVtZW50Ojpmb2N1cyk6CisgICAgICAgICogZG9tL0VsZW1lbnQu
aDoKKyAgICAgICAgKFdlYkNvcmU6OkVsZW1lbnQ6OmZvY3VzKToKKyAgICAgICAgKiBkb20vRm9j
dXNPcHRpb25zLmg6IENvcGllZCBmcm9tIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE9yRm9yZWln
bkVsZW1lbnQuaWRsLgorICAgICAgICAqIGRvbS9Gb2N1c09wdGlvbnMuaWRsOiBDb3BpZWQgZnJv
bSBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPckZvcmVpZ25FbGVtZW50LmlkbC4KKyAgICAgICAg
KiBodG1sL0hUTUxGb3JtQ29udHJvbEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRN
TEZvcm1Db250cm9sRWxlbWVudDo6ZGlkQXR0YWNoUmVuZGVyZXJzKToKKyAgICAgICAgKiBodG1s
L0hUTUxMYWJlbEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTExhYmVsRWxlbWVu
dDo6Zm9jdXMpOgorICAgICAgICAqIGh0bWwvSFRNTExhYmVsRWxlbWVudC5oOgorICAgICAgICAq
IGh0bWwvSFRNTExlZ2VuZEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTExlZ2Vu
ZEVsZW1lbnQ6OmZvY3VzKToKKyAgICAgICAgKiBodG1sL0hUTUxMZWdlbmRFbGVtZW50Lmg6Cisg
ICAgICAgICogaHRtbC9IVE1MT3JGb3JlaWduRWxlbWVudC5pZGw6CisgICAgICAgICogaHRtbC9J
bnB1dFR5cGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SW5wdXRUeXBlOjphY2Nlc3NLZXlBY3Rp
b24pOgorICAgICAgICAqIHBhZ2UvRm9jdXNDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkZvY3VzQ29udHJvbGxlcjo6YWR2YW5jZUZvY3VzSW5Eb2N1bWVudE9yZGVyKToKKyAgICAg
ICAgKFdlYkNvcmU6OkZvY3VzQ29udHJvbGxlcjo6YWR2YW5jZUZvY3VzRGlyZWN0aW9uYWxseUlu
Q29udGFpbmVyKToKKwogMjAyMS0wMi0xMiAgSmVyIE5vYmxlICA8amVyLm5vYmxlQGFwcGxlLmNv
bT4KIAogICAgICAgICBbTWFjXSBTb3VuZCBkb2VzIG5vdCBwbGF5IG9uIFlvdVR1YmUgYWZ0ZXIg
c3dpdGNoaW5nIGJhY2sgdG8gZm9yZWdyb3VuZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
Q01ha2VMaXN0cy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAppbmRleCA3YWJl
OWY1ZmEzYjUxZDVlOTE1ZGE3YjM1Mzg3ZDhjODUzYTNkYWI3Li4yMjllZTczMGFlYTdmOGI0MzZj
MWM2NGU4NDIyNzI4ZDZmZjE2NTNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxp
c3RzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dApAQCAtODQ5LDYgKzg0
OSw3IEBAIHNldChXZWJDb3JlX05PTl9TVkdfSURMX0ZJTEVTCiAgICAgZG9tL0V2ZW50TW9kaWZp
ZXJJbml0LmlkbAogICAgIGRvbS9FdmVudFRhcmdldC5pZGwKICAgICBkb20vRm9jdXNFdmVudC5p
ZGwKKyAgICBkb20vRm9jdXNPcHRpb25zLmlkbAogICAgIGRvbS9HbG9iYWxFdmVudEhhbmRsZXJz
K1BvaW50ZXJFdmVudHMuaWRsCiAgICAgZG9tL0dsb2JhbEV2ZW50SGFuZGxlcnMrU2VsZWN0aW9u
LmlkbAogICAgIGRvbS9HbG9iYWxFdmVudEhhbmRsZXJzLmlkbApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdCBiL1NvdXJjZS9XZWJDb3Jl
L0Rlcml2ZWRTb3VyY2VzLWlucHV0LnhjZmlsZWxpc3QKaW5kZXggNjhjZmQ0YTA3MjYyNTM0OGFj
ZTU3YjkzZmRhNzczZWNiMmM2ODE3Zi4uMjE3Nzk3OGQ1ZWQzNGNkOWVjZTkyNzExYzc3YTU0YTdh
NGYyYTI2YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtaW5wdXQu
eGNmaWxlbGlzdAorKysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1pbnB1dC54Y2Zp
bGVsaXN0CkBAIC03NjgsNiArNzY4LDcgQEAgJChQUk9KRUNUX0RJUikvZG9tL0V2ZW50TmFtZXMu
aW4KICQoUFJPSkVDVF9ESVIpL2RvbS9FdmVudFRhcmdldC5pZGwKICQoUFJPSkVDVF9ESVIpL2Rv
bS9FdmVudFRhcmdldEZhY3RvcnkuaW4KICQoUFJPSkVDVF9ESVIpL2RvbS9Gb2N1c0V2ZW50Lmlk
bAorJChQUk9KRUNUX0RJUikvZG9tL0ZvY3VzT3B0aW9ucy5pZGwKICQoUFJPSkVDVF9ESVIpL2Rv
bS9HbG9iYWxFdmVudEhhbmRsZXJzK1BvaW50ZXJFdmVudHMuaWRsCiAkKFBST0pFQ1RfRElSKS9k
b20vR2xvYmFsRXZlbnRIYW5kbGVycytTZWxlY3Rpb24uaWRsCiAkKFBST0pFQ1RfRElSKS9kb20v
R2xvYmFsRXZlbnRIYW5kbGVycy5pZGwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2
ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0IGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJj
ZXMtb3V0cHV0LnhjZmlsZWxpc3QKaW5kZXggMTcyMzY0ZDliNTUxMTA5MjRkZDkzYzdkYWNjNjg2
MjlmZDc5YmU3Yy4uODUwYzQ4ZDc1MWVjNThkNWQ2ZDljYTA4NjJmMjA5MzQzZDNjMDkzMyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3QK
KysrIGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3QKQEAg
LTgxNyw2ICs4MTcsOCBAQCAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2Vi
Q29yZS9KU0ZpbGxNb2RlLmNwcAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2Vz
L1dlYkNvcmUvSlNGaWxsTW9kZS5oCiAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJj
ZXMvV2ViQ29yZS9KU0ZvY3VzRXZlbnQuY3BwCiAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZl
ZFNvdXJjZXMvV2ViQ29yZS9KU0ZvY3VzRXZlbnQuaAorJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rl
cml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNGb2N1c09wdGlvbnMuY3BwCiskKEJVSUxUX1BST0RVQ1RT
X0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0ZvY3VzT3B0aW9ucy5oCiAkKEJVSUxUX1BS
T0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0ZvbnRGYWNlLmNwcAogJChCVUlM
VF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNGb250RmFjZS5oCiAkKEJV
SUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0ZvbnRGYWNlU2V0LmNw
cApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZSBiL1NvdXJj
ZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKaW5kZXggZmJhOWVlNWEwMTM0OWZiNjFhYmNi
YWEyZDViMjQ0M2UwMjBjZTliOS4uMDI5MWI2ZWQyNDJmMjU0NzMzMDdjYmIzYmQ1MTNhMzgyNzc4
M2ZhMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCkBAIC03MjMsNiArNzIzLDcgQEAg
SlNfQklORElOR19JRExTIDo9IFwKICAgICAkKFdlYkNvcmUpL2RvbS9FdmVudE1vZGlmaWVySW5p
dC5pZGwgXAogICAgICQoV2ViQ29yZSkvZG9tL0V2ZW50VGFyZ2V0LmlkbCBcCiAgICAgJChXZWJD
b3JlKS9kb20vRm9jdXNFdmVudC5pZGwgXAorICAgICQoV2ViQ29yZSkvZG9tL0ZvY3VzT3B0aW9u
cy5pZGwgXAogICAgICQoV2ViQ29yZSkvZG9tL0dsb2JhbEV2ZW50SGFuZGxlcnMrUG9pbnRlckV2
ZW50cy5pZGwgXAogICAgICQoV2ViQ29yZSkvZG9tL0dsb2JhbEV2ZW50SGFuZGxlcnMrU2VsZWN0
aW9uLmlkbCBcCiAgICAgJChXZWJDb3JlKS9kb20vR2xvYmFsRXZlbnRIYW5kbGVycy5pZGwgXApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZSBiL1NvdXJjZS9XZWJDb3Jl
L0hlYWRlcnMuY21ha2UKaW5kZXggZjg4NTkxNWZlOGJlNzllNTEyNThmZmY4ZDgzMTgyYzk1ZDdk
MzJjYi4uN2MzN2U5NjUwM2IwZmZmOGVhY2MxZDc4YmFiMTI3NjZlYThhOTRlZCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9IZWFk
ZXJzLmNtYWtlCkBAIC00NjAsNiArNDYwLDcgQEAgc2V0KFdlYkNvcmVfUFJJVkFURV9GUkFNRVdP
UktfSEVBREVSUwogICAgIGRvbS9FeGNlcHRpb25Db2RlLmgKICAgICBkb20vRXhjZXB0aW9uRGF0
YS5oCiAgICAgZG9tL0V4Y2VwdGlvbk9yLmgKKyAgICBkb20vRm9jdXNPcHRpb25zLmgKICAgICBk
b20vRnJhZ21lbnRTY3JpcHRpbmdQZXJtaXNzaW9uLmgKICAgICBkb20vRnVsbHNjcmVlbk1hbmFn
ZXIuaAogICAgIGRvbS9HQ1JlYWNoYWJsZVJlZi5oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9Tb3VyY2VzLnR4dCBiL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0CmluZGV4IDA0NWNmMjcw
NmMwMzY3ZTRjZjkwYjMyZGRkNzkxNDZkNWZhMTFkZmYuLjI5NzE5Y2M3NDZiNjBmY2IxNGRkMWJj
NDBlNTUyNzQ4ZTQ1MzBjOWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0
CisrKyBiL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0CkBAIC0yOTk4LDYgKzI5OTgsNyBAQCBK
U0ZpbGVTeXN0ZW1FbnRyeUNhbGxiYWNrLmNwcAogSlNGaWxlU3lzdGVtRmlsZUVudHJ5LmNwcAog
SlNGaWxsTW9kZS5jcHAKIEpTRm9jdXNFdmVudC5jcHAKK0pTRm9jdXNPcHRpb25zLmNwcAogSlNG
b250RmFjZS5jcHAKIEpTRm9udEZhY2VTZXQuY3BwCiBKU0dQVUJpbmRHcm91cExheW91dEJpbmRp
bmcuY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2oKaW5kZXggOGMxNWViNjQ4MDM3MzA1ODA3YjcwM2QwYmRiYWIzZjNiZmE1NzE1Yi4uMTVi
Nzk3MTYzNGQ2MTI2NWNkNjQxNjBmNDJkMjVlZGViNDhlNzE1NCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMzU5MSw2ICszNTkx
LDcgQEAKIAkJQUE3RkVFQUQxNkE0RTc0QjAwNEMwQzMzIC8qIEpTU3BlZWNoU3ludGhlc2lzLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBQTdGRUVBQzE2
QTRFNzRCMDA0QzBDMzMgLyogSlNTcGVlY2hTeW50aGVzaXMuaCAqLzsgfTsKIAkJQUFBNzI4Rjcx
NkQxRDhCQzAwRDNCQkM2IC8qIFdlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVySU9TLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBQUE3MjhGMTE2RDFE
OEJDMDBEM0JCQzYgLyogV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJJT1MuaCAqLzsgfTsK
IAkJQUFDMDhDRjMxNUY5NDFGRDAwRjFFMTg4IC8qIEFjY2Vzc2liaWxpdHlTVkdSb290LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBQUMwOENGMTE1Rjk0
MUZDMDBGMUUxODggLyogQWNjZXNzaWJpbGl0eVNWR1Jvb3QuaCAqLzsgfTsKKwkJQUFERUZFNDUy
NUFGNEZENjAwNDBERDY3IC8qIEZvY3VzT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQUFERUZFNDMyNUFGNEZDQjAwNDBERDY3IC8qIEZvY3Vz
T3B0aW9ucy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CiAJCUFCMjNBMzI4MDlCQkE3RDAwMDY3Q0M1MyAvKiBCZWZvcmVUZXh0SW5zZXJ0ZWRFdmVudC5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQUIyM0EzMjYw
OUJCQTdEMDAwNjdDQzUzIC8qIEJlZm9yZVRleHRJbnNlcnRlZEV2ZW50LmggKi87IH07CiAJCUFC
MjQ3QTZEMEFGRDYzODMwMDNGQTVGRCAvKiBSZW5kZXJTbGlkZXIuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEFCMjQ3QTZCMEFGRDYzODMwMDNGQTVGRCAv
KiBSZW5kZXJTbGlkZXIuaCAqLzsgfTsKIAkJQUIzMUM5MUUxMEFFMUI4RTAwMEM3QjkyIC8qIExp
bmVDbGFtcFZhbHVlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBBQjMxQzkxRDEwQUUxQjhFMDAwQzdCOTIgLyogTGluZUNsYW1wVmFsdWUuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwpAQCAtMTMwOTgsNiArMTMw
OTksNyBAQAogCQlBQTJBNUFDNjE2QTQ4NUQ1MDA5NzVBMjUgLyogU3BlZWNoU3ludGhlc2lzVm9p
Y2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU3BlZWNoU3ludGhlc2lzVm9pY2UuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlBQTJBNUFDNzE2QTQ4NUQ1MDA5NzVBMjUgLyogU3Bl
ZWNoU3ludGhlc2lzVm9pY2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU3BlZWNoU3ludGhlc2lzVm9pY2Uu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQUEyQTVBQzgxNkE0ODVENTAwOTc1QTI1
IC8qIFNwZWVjaFN5bnRoZXNpc1ZvaWNlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTcGVlY2hTeW50aGVzaXNWb2ljZS5p
ZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUFBMkUwRDA5MjVBRjUxMDQwMDc2OTNC
QSAvKiBGb2N1c09wdGlvbnMuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEZvY3VzT3B0aW9ucy5pZGw7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCUFBNDc4QTdEMTZDRDcwQzMwMDdEMUJCNCAvKiBXZWJBY2Nlc3Np
YmlsaXR5T2JqZWN0V3JhcHBlck1hYy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlck1hYy5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQlBQTQ3OEE3RTE2Q0Q3MEMzMDA3RDFCQjQgLyogV2ViQWNjZXNzaWJpbGl0eU9i
amVjdFdyYXBwZXJNYWMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZXhwbGljaXRG
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgZmlsZUVuY29kaW5nID0gNDsgcGF0aCA9
IFdlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyTWFjLm1tOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQlBQTRDM0E3NDBCMkIxNjc5MDAyMzM0QTIgLyogSW5saW5lU3R5bGVTaGVldE93
bmVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJbmxpbmVTdHls
ZVNoZWV0T3duZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTMxMjIsNiAr
MTMxMjQsNyBAQAogCQlBQUNDODNEODIzMTY1NzZCMDBFQjZCRjUgLyogSlNIVE1MT3JGb3JlaWdu
RWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0hUTUxPckZvcmVpZ25FbGVtZW50LmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQUFEOUQwQjEyMURGQTgwQzAwMUIxMUM3
IC8qIExhenlMb2FkSW1hZ2VPYnNlcnZlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBMYXp5TG9hZEltYWdlT2JzZXJ2ZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQlBQUQ5RDBCMzIxREZBODBFMDAxQjExQzcgLyogTGF6eUxvYWRJbWFnZU9ic2Vy
dmVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IExhenlMb2FkSW1hZ2VPYnNl
cnZlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBQURFRkU0MzI1QUY0RkNCMDA0
MERENjcgLyogRm9jdXNPcHRpb25zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZvY3VzT3B0aW9ucy5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlBQUUyN0I3NDE2Q0JGQzBEMDA2MjMwNDMgLyog
UGxhdGZvcm1TcGVlY2hTeW50aGVzaXplck1vY2suY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gUGxhdGZvcm1TcGVlY2hTeW50aGVzaXplck1vY2suY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQlBQUUyN0I3NTE2Q0JGQzBEMDA2MjMwNDMgLyogUGxhdGZv
cm1TcGVlY2hTeW50aGVzaXplck1vY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gUGxhdGZvcm1TcGVlY2hTeW50aGVzaXplck1vY2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJQUFFMzc1NUQxNzQyOUJDQzAwNjIwMEMyIC8qIFBsYXRmb3JtU3BlZWNoU3ludGhl
c2l6ZXJJT1MubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBQbGF0
Zm9ybVNwZWVjaFN5bnRoZXNpemVySU9TLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpA
QCAtMzAxOTIsNiArMzAxOTUsOCBAQAogCQkJCUI2RDlEMjM0MTRFQUJEMjYwMDkwRDc1RSAvKiBG
b2N1c0V2ZW50LmNwcCAqLywKIAkJCQlCNkQ5RDIzMzE0RUFCRDI2MDA5MEQ3NUUgLyogRm9jdXNF
dmVudC5oICovLAogCQkJCUI2RDlEMjcyMTRFQUJGMDMwMDkwRDc1RSAvKiBGb2N1c0V2ZW50Lmlk
bCAqLywKKwkJCQlBQURFRkU0MzI1QUY0RkNCMDA0MERENjcgLyogRm9jdXNPcHRpb25zLmggKi8s
CisJCQkJQUEyRTBEMDkyNUFGNTEwNDAwNzY5M0JBIC8qIEZvY3VzT3B0aW9ucy5pZGwgKi8sCiAJ
CQkJQTg1MzEyM0MxMUQwNDcxQjAwRDREMDc3IC8qIEZyYWdtZW50U2NyaXB0aW5nUGVybWlzc2lv
bi5oICovLAogCQkJCUNEOTJGNTE3MjI2MTAzODIwMEY4N0JCMyAvKiBGdWxsc2NyZWVuTWFuYWdl
ci5jcHAgKi8sCiAJCQkJQ0Q5MkY1MTYyMjYxMDM4MjAwRjg3QkIzIC8qIEZ1bGxzY3JlZW5NYW5h
Z2VyLmggKi8sCkBAIC0zMjE3Niw2ICszMjE4MSw3IEBACiAJCQkJMTQ5OTNCRTYwQjJGMkIxQzAw
NTA0OTdGIC8qIEZvY3VzQ29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMDYyMjg3ODQw
QjREQjMyMjAwMEMzNERGIC8qIEZvY3VzRGlyZWN0aW9uLmggaW4gSGVhZGVycyAqLywKIAkJCQlC
NkQ5RDIzNTE0RUFCRDI2MDA5MEQ3NUUgLyogRm9jdXNFdmVudC5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJQUFERUZFNDUyNUFGNEZENjAwNDBERDY3IC8qIEZvY3VzT3B0aW9ucy5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJQjJDM0RBNjUwRDAwNkNENjAwRUY2RjI2IC8qIEZvbnQuaCBpbiBIZWFkZXJzICov
LAogCQkJCTFBQzJEODlEMUIxRTI5MUYwMEQ1MkU4NyAvKiBGb250QW50aWFsaWFzaW5nU3RhdGVT
YXZlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRjRFNTdFREMyMTNGM0Y1RjAwNEVBOThFIC8qIEZv
bnRBdHRyaWJ1dGVDaGFuZ2VzLmggaW4gSGVhZGVycyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2RvbS9FbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmNwcApp
bmRleCBmODg2YTBmY2Q3ZTkwZTUyMWU1ZWI3Yzc3Yzc3Njc3MzI0NGRiNzFhLi5mYTM1YjVjZjNj
YjllY2Y5M2E2ZmEwNzU2MGU4MTg0MGQ1MDIzY2YxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9kb20vRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuY3BwCkBA
IC0zMDAxLDcgKzMwMDEsNyBAQCBzdGF0aWMgUmVmUHRyPEVsZW1lbnQ+IGZpbmRGaXJzdFByb2dy
YW1hdGljYWxseUZvY3VzYWJsZUVsZW1lbnRJbkNvbXBvc2VkVHJlZShFbAogICAgIHJldHVybiBu
dWxscHRyOwogfQogCi12b2lkIEVsZW1lbnQ6OmZvY3VzKFNlbGVjdGlvblJlc3RvcmF0aW9uTW9k
ZSByZXN0b3JhdGlvbk1vZGUsIEZvY3VzRGlyZWN0aW9uIGRpcmVjdGlvbikKK3ZvaWQgRWxlbWVu
dDo6Zm9jdXMoY29uc3QgRm9jdXNPcHRpb25zJiBvcHRpb25zKQogewogICAgIGlmICghaXNDb25u
ZWN0ZWQoKSkKICAgICAgICAgcmV0dXJuOwpAQCAtMzA0NSwxMSArMzA0NSwxMiBAQCB2b2lkIEVs
ZW1lbnQ6OmZvY3VzKFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZSByZXN0b3JhdGlvbk1vZGUsIEZv
Y3VzRGlyZWN0aW9uIGRpcgogICAgICAgICAvLyBGb2N1cyBhbmQgY2hhbmdlIGV2ZW50IGhhbmRs
ZXJzIGNhbiBjYXVzZSB1cyB0byBsb3NlIG91ciBsYXN0IHJlZi4KICAgICAgICAgLy8gSWYgYSBm
b2N1cyBldmVudCBoYW5kbGVyIGNoYW5nZXMgdGhlIGZvY3VzIHRvIGEgZGlmZmVyZW50IG5vZGUg
aXQKICAgICAgICAgLy8gZG9lcyBub3QgbWFrZSBzZW5zZSB0byBjb250aW51ZSBhbmQgdXBkYXRl
IGFwcGVhcmVuY2UuCi0gICAgICAgIGlmICghcGFnZS0+Zm9jdXNDb250cm9sbGVyKCkuc2V0Rm9j
dXNlZEVsZW1lbnQobmV3VGFyZ2V0LmdldCgpLCAqZG9jdW1lbnQtPmZyYW1lKCksIGRpcmVjdGlv
bikpCisgICAgICAgIGlmICghcGFnZS0+Zm9jdXNDb250cm9sbGVyKCkuc2V0Rm9jdXNlZEVsZW1l
bnQobmV3VGFyZ2V0LmdldCgpLCAqZG9jdW1lbnQtPmZyYW1lKCksIG9wdGlvbnMuZGlyZWN0aW9u
KSkKICAgICAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBuZXdUYXJnZXQtPnJldmVhbEZv
Y3VzZWRFbGVtZW50KHJlc3RvcmF0aW9uTW9kZSk7CisgICAgaWYgKCFvcHRpb25zLnByZXZlbnRT
Y3JvbGwpCisgICAgICAgIG5ld1RhcmdldC0+cmV2ZWFsRm9jdXNlZEVsZW1lbnQob3B0aW9ucy5z
ZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGUpOwogfQogCiB2b2lkIEVsZW1lbnQ6OnJldmVhbEZvY3Vz
ZWRFbGVtZW50KFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZSBzZWxlY3Rpb25Nb2RlKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9F
bGVtZW50LmgKaW5kZXggOTZiZDc2MDNmZWQ3NDFlOTI3MWQ5YmI1YTJlYTYxOGM0MDc5ODQzYy4u
NTBiNWI4Y2JmZjZlN2RhMWJkODJiMjBhZDNiZDVlYTFkYWViYTZkNiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVu
dC5oCkBAIC0yNyw2ICsyNyw3IEBACiAjaW5jbHVkZSAiQVhUZXh0U3RhdGVDaGFuZ2VJbnRlbnQu
aCIKICNpbmNsdWRlICJEb2N1bWVudC5oIgogI2luY2x1ZGUgIkVsZW1lbnREYXRhLmgiCisjaW5j
bHVkZSAiRm9jdXNPcHRpb25zLmgiCiAjaW5jbHVkZSAiSFRNTE5hbWVzLmgiCiAjaW5jbHVkZSAi
U2Nyb2xsVHlwZXMuaCIKICNpbmNsdWRlICJTaGFkb3dSb290SW5pdC5oIgpAQCAtMzk5LDcgKzQw
MCw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIFN0cmluZyB0YXJnZXQoKSBjb25zdCB7IHJldHVy
biBTdHJpbmcoKTsgfQogCiAgICAgc3RhdGljIEFYVGV4dFN0YXRlQ2hhbmdlSW50ZW50IGRlZmF1
bHRGb2N1c1RleHRTdGF0ZUNoYW5nZUludGVudCgpIHsgcmV0dXJuIEFYVGV4dFN0YXRlQ2hhbmdl
SW50ZW50KEFYVGV4dFN0YXRlQ2hhbmdlVHlwZVNlbGVjdGlvbk1vdmUsIEFYVGV4dFNlbGVjdGlv
biB7IEFYVGV4dFNlbGVjdGlvbkRpcmVjdGlvbkRpc2NvbnRpZ3VvdXMsIEFYVGV4dFNlbGVjdGlv
bkdyYW51bGFyaXR5VW5rbm93biwgdHJ1ZSB9KTsgfQotICAgIHZpcnR1YWwgdm9pZCBmb2N1cyhT
ZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGUgPSBTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGU6OlJlc3Rv
cmVPclNlbGVjdEFsbCwgRm9jdXNEaXJlY3Rpb24gPSBGb2N1c0RpcmVjdGlvbjo6Tm9uZSk7Cisg
ICAgdmlydHVhbCB2b2lkIGZvY3VzKGNvbnN0IEZvY3VzT3B0aW9ucyYgPSB7IH0pOwogICAgIHZv
aWQgcmV2ZWFsRm9jdXNlZEVsZW1lbnQoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlKTsKICAgICB2
aXJ0dWFsIFJlZlB0cjxFbGVtZW50PiBmb2N1c0FwcGVhcmFuY2VVcGRhdGVUYXJnZXQoKTsKICAg
ICB2aXJ0dWFsIHZvaWQgdXBkYXRlRm9jdXNBcHBlYXJhbmNlKFNlbGVjdGlvblJlc3RvcmF0aW9u
TW9kZSwgU2VsZWN0aW9uUmV2ZWFsTW9kZSA9IFNlbGVjdGlvblJldmVhbE1vZGU6OlJldmVhbCk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRm9jdXNPcHRpb25zLmggYi9Tb3VyY2Uv
V2ViQ29yZS9kb20vRm9jdXNPcHRpb25zLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNGExYzliM2YwMjc0MzBkM2Fm
YzY5NzY2NDZmMWEwNWU2OGRjODNmNgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2RvbS9Gb2N1c09wdGlvbnMuaApAQCAtMCwwICsxLDM4IEBACisvKgorICogQ29weXJpZ2h0IChD
KSAyMDIwIElnYWxpYSBTLkwuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291
cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICog
Mi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29y
IG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICog
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5Z
CisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAg
SU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJM
RSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVN
UExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBM
T1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSAiRm9j
dXNEaXJlY3Rpb24uaCIKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitzdHJ1Y3QgRm9jdXNPcHRp
b25zIHsKKyAgICBTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGUgc2VsZWN0aW9uUmVzdG9yYXRpb25N
b2RlIHsgU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlOjpSZXN0b3JlT3JTZWxlY3RBbGwgfTsKKyAg
ICBGb2N1c0RpcmVjdGlvbiBkaXJlY3Rpb24geyBGb2N1c0RpcmVjdGlvbjo6Tm9uZSB9OworICAg
IGJvb2wgcHJldmVudFNjcm9sbCB7IGZhbHNlIH07Cit9OworCit9IC8vIG5hbWVzcGFjZSBXZWJD
b3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRm9jdXNPcHRpb25zLmlkbCBiL1Nv
dXJjZS9XZWJDb3JlL2RvbS9Gb2N1c09wdGlvbnMuaWRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjE3MzkwMjM5NzQ4
NDNlZWYwNjQyZTA1N2Q2M2QwYzJiODE3OGJlMGMKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9kb20vRm9jdXNPcHRpb25zLmlkbApAQCAtMCwwICsxLDI4IEBACisvKgorICogQ29w
eXJpZ2h0IChDKSAyMDIwIElnYWxpYSBTLkwuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNl
IHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRp
b24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
CisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMn
JyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVND
TEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgorICogQ09OVFJJQlVUT1JT
IEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUws
CisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNF
UlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElO
VEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJ
TElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICog
KElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9V
VCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKK2RpY3Rpb25hcnkgRm9jdXNPcHRp
b25zIHsKKyAgIGJvb2xlYW4gcHJldmVudFNjcm9sbCA9IGZhbHNlOworfTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1Db250cm9sRWxlbWVudC5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxGb3JtQ29udHJvbEVsZW1lbnQuY3BwCmluZGV4IDk1NzYwYzU1ZDUw
OGRhZTI0OTZlNmNhMGQ5OTM4Njk0NmQ0YzE5ODYuLmUzMjhmNDFlODMwODEyMWM4ZWFlYWU0ZTA3
NDBkZWNjY2M2NTdlZGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1D
b250cm9sRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUNvbnRy
b2xFbGVtZW50LmNwcApAQCAtMjU0LDExICsyNTQsMTEgQEAgdm9pZCBIVE1MRm9ybUNvbnRyb2xF
bGVtZW50OjpkaWRBdHRhY2hSZW5kZXJlcnMoKQogICAgICAgICBhdXRvIGZyYW1lVmlldyA9IG1h
a2VSZWZQdHIoZG9jdW1lbnQoKS52aWV3KCkpOwogICAgICAgICBpZiAoZnJhbWVWaWV3ICYmIGZy
YW1lVmlldy0+bGF5b3V0Q29udGV4dCgpLmlzSW5MYXlvdXQoKSkgewogICAgICAgICAgICAgZnJh
bWVWaWV3LT5xdWV1ZVBvc3RMYXlvdXRDYWxsYmFjayhbZWxlbWVudF0gewotICAgICAgICAgICAg
ICAgIGVsZW1lbnQtPmZvY3VzKFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZTo6UGxhY2VDYXJldEF0
U3RhcnQpOworICAgICAgICAgICAgICAgIGVsZW1lbnQtPmZvY3VzKHsgU2VsZWN0aW9uUmVzdG9y
YXRpb25Nb2RlOjpQbGFjZUNhcmV0QXRTdGFydCB9KTsKICAgICAgICAgICAgIH0pOwogICAgICAg
ICB9IGVsc2UgewogICAgICAgICAgICAgU3R5bGU6OnF1ZXVlUG9zdFJlc29sdXRpb25DYWxsYmFj
ayhbZWxlbWVudF0gewotICAgICAgICAgICAgICAgIGVsZW1lbnQtPmZvY3VzKFNlbGVjdGlvblJl
c3RvcmF0aW9uTW9kZTo6UGxhY2VDYXJldEF0U3RhcnQpOworICAgICAgICAgICAgICAgIGVsZW1l
bnQtPmZvY3VzKHsgU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlOjpQbGFjZUNhcmV0QXRTdGFydCB9
KTsKICAgICAgICAgICAgIH0pOwogICAgICAgICB9CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvaHRtbC9IVE1MTGFiZWxFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTExhYmVsRWxlbWVudC5jcHAKaW5kZXggZTVjNDMxMTBhYTgxNmQ1ZGFmMjQzNmJiMzNmNDNh
ZGIxNzY5MzYyNS4uOWRjMjA3ZWI3NmQ1NDdhM2FkYjllMTdjOWMwZmNjNThhNjVlNWE2YiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGFiZWxFbGVtZW50LmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMYWJlbEVsZW1lbnQuY3BwCkBAIC0xNzIsMjEgKzE3Miwy
MSBAQCBib29sIEhUTUxMYWJlbEVsZW1lbnQ6OndpbGxSZXNwb25kVG9Nb3VzZUNsaWNrRXZlbnRz
KCkKICAgICByZXR1cm4gKGVsZW1lbnQgJiYgZWxlbWVudC0+d2lsbFJlc3BvbmRUb01vdXNlQ2xp
Y2tFdmVudHMoKSkgfHwgSFRNTEVsZW1lbnQ6OndpbGxSZXNwb25kVG9Nb3VzZUNsaWNrRXZlbnRz
KCk7CiB9CiAKLXZvaWQgSFRNTExhYmVsRWxlbWVudDo6Zm9jdXMoU2VsZWN0aW9uUmVzdG9yYXRp
b25Nb2RlIHJlc3RvcmF0aW9uTW9kZSwgRm9jdXNEaXJlY3Rpb24gZGlyZWN0aW9uKQordm9pZCBI
VE1MTGFiZWxFbGVtZW50Ojpmb2N1cyhjb25zdCBGb2N1c09wdGlvbnMmIG9wdGlvbnMpCiB7CiAg
ICAgUmVmPEhUTUxMYWJlbEVsZW1lbnQ+IHByb3RlY3RlZFRoaXMoKnRoaXMpOwogICAgIGlmIChk
b2N1bWVudCgpLmhhdmVTdHlsZXNoZWV0c0xvYWRlZCgpKSB7CiAgICAgICAgIGRvY3VtZW50KCku
dXBkYXRlTGF5b3V0KCk7CiAgICAgICAgIGlmIChpc0ZvY3VzYWJsZSgpKSB7CiAgICAgICAgICAg
ICAvLyBUaGUgdmFsdWUgb2YgcmVzdG9yYXRpb25Nb2RlIGlzIG5vdCB1c2VkIGZvciBsYWJlbCBl
bGVtZW50cyBhcyBpdCBkb2Vzbid0IG92ZXJyaWRlIHVwZGF0ZUZvY3VzQXBwZWFyYW5jZS4KLSAg
ICAgICAgICAgIEVsZW1lbnQ6OmZvY3VzKHJlc3RvcmF0aW9uTW9kZSwgZGlyZWN0aW9uKTsKKyAg
ICAgICAgICAgIEVsZW1lbnQ6OmZvY3VzKG9wdGlvbnMpOwogICAgICAgICAgICAgcmV0dXJuOwog
ICAgICAgICB9CiAgICAgfQogCiAgICAgLy8gVG8gbWF0Y2ggb3RoZXIgYnJvd3NlcnMsIGFsd2F5
cyByZXN0b3JlIHByZXZpb3VzIHNlbGVjdGlvbi4KICAgICBpZiAoYXV0byBlbGVtZW50ID0gY29u
dHJvbCgpKQotICAgICAgICBlbGVtZW50LT5mb2N1cyhTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGU6
OlJlc3RvcmVPclNlbGVjdEFsbCwgZGlyZWN0aW9uKTsKKyAgICAgICAgZWxlbWVudC0+Zm9jdXMo
eyBTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGU6OlJlc3RvcmVPclNlbGVjdEFsbCwgb3B0aW9ucy5k
aXJlY3Rpb24gfSk7CiB9CiAKIGJvb2wgSFRNTExhYmVsRWxlbWVudDo6YWNjZXNzS2V5QWN0aW9u
KGJvb2wgc2VuZE1vdXNlRXZlbnRzKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9I
VE1MTGFiZWxFbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMYWJlbEVsZW1lbnQu
aAppbmRleCA2ODQ5ZGI5MmIzY2RkOWM5ZGRiZDExZjZkNDM1OGY1OWUxMjE4MjAyLi44NGM2OWMx
NzU1NWY5YWUzNjUxMWYwYjY1ODg5MDEyZmJiZjlmZjJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0hUTUxMYWJlbEVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxMYWJlbEVsZW1lbnQuaApAQCAtNTEsNyArNTEsNyBAQCBwcml2YXRlOgogICAgIC8vIE92ZXJy
aWRkZW4gdG8gZWl0aGVyIGNsaWNrKCkgb3IgZm9jdXMoKSB0aGUgY29ycmVzcG9uZGluZyBjb250
cm9sLgogICAgIHZvaWQgZGVmYXVsdEV2ZW50SGFuZGxlcihFdmVudCYpIGZpbmFsOwogCi0gICAg
dm9pZCBmb2N1cyhTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGUsIEZvY3VzRGlyZWN0aW9uKSBmaW5h
bDsKKyAgICB2b2lkIGZvY3VzKGNvbnN0IEZvY3VzT3B0aW9ucyYpIGZpbmFsOwogCiAgICAgYm9v
bCBpc0ludGVyYWN0aXZlQ29udGVudCgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIHRydWU7IH0KIH07
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMZWdlbmRFbGVtZW50LmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExlZ2VuZEVsZW1lbnQuY3BwCmluZGV4IGVkMGE0MDEx
Y2E3NDU2YzRlMjQxZTEwYzVhNmRjMDI3MzE3ZDY4MmQuLjVjZWVhNjEwYjA1NDJjNDMyNTE5MTg5
MDVmZWMyYzA5NGM5ODBmMzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExl
Z2VuZEVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExlZ2VuZEVsZW1l
bnQuY3BwCkBAIC01NywxOSArNTcsMTkgQEAgUmVmUHRyPEhUTUxGb3JtQ29udHJvbEVsZW1lbnQ+
IEhUTUxMZWdlbmRFbGVtZW50Ojphc3NvY2lhdGVkQ29udHJvbCgpCiAgICAgcmV0dXJuIGRlc2Nl
bmRhbnRzT2ZUeXBlPEhUTUxGb3JtQ29udHJvbEVsZW1lbnQ+KCplbmNsb3NpbmdGaWVsZHNldCku
Zmlyc3QoKTsKIH0KIAotdm9pZCBIVE1MTGVnZW5kRWxlbWVudDo6Zm9jdXMoU2VsZWN0aW9uUmVz
dG9yYXRpb25Nb2RlIHJlc3RvcmF0aW9uTW9kZSwgRm9jdXNEaXJlY3Rpb24gZGlyZWN0aW9uKQor
dm9pZCBIVE1MTGVnZW5kRWxlbWVudDo6Zm9jdXMoY29uc3QgRm9jdXNPcHRpb25zJiBvcHRpb25z
KQogewogICAgIGlmIChkb2N1bWVudCgpLmhhdmVTdHlsZXNoZWV0c0xvYWRlZCgpKSB7CiAgICAg
ICAgIGRvY3VtZW50KCkudXBkYXRlTGF5b3V0SWdub3JlUGVuZGluZ1N0eWxlc2hlZXRzKCk7CiAg
ICAgICAgIGlmIChpc0ZvY3VzYWJsZSgpKSB7Ci0gICAgICAgICAgICBFbGVtZW50Ojpmb2N1cyhy
ZXN0b3JhdGlvbk1vZGUsIGRpcmVjdGlvbik7CisgICAgICAgICAgICBFbGVtZW50Ojpmb2N1cyh7
IG9wdGlvbnMuc2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlLCBvcHRpb25zLmRpcmVjdGlvbiB9KTsK
ICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgfQogICAgIH0KIAogICAgIC8vIFRvIG1hdGNo
IG90aGVyIGJyb3dzZXJzJyBiZWhhdmlvciwgbmV2ZXIgcmVzdG9yZSBwcmV2aW91cyBzZWxlY3Rp
b24uCiAgICAgaWYgKGF1dG8gY29udHJvbCA9IGFzc29jaWF0ZWRDb250cm9sKCkpCi0gICAgICAg
IGNvbnRyb2wtPmZvY3VzKFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZTo6U2VsZWN0QWxsLCBkaXJl
Y3Rpb24pOworICAgICAgICBjb250cm9sLT5mb2N1cyh7IFNlbGVjdGlvblJlc3RvcmF0aW9uTW9k
ZTo6U2VsZWN0QWxsLCBvcHRpb25zLmRpcmVjdGlvbiB9KTsKIH0KIAogYm9vbCBIVE1MTGVnZW5k
RWxlbWVudDo6YWNjZXNzS2V5QWN0aW9uKGJvb2wgc2VuZE1vdXNlRXZlbnRzKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGVnZW5kRWxlbWVudC5oIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MTGVnZW5kRWxlbWVudC5oCmluZGV4IDdkY2IxYjg1MGEyN2UzYjdhY2I4MDI4
N2M1NzRmODMwMmZjYTYwMmYuLjkzMjE1OTA1MDM5M2UzY2VmNjFkMjM5ZmQ1MDhiZWM3NWVhZWM1
N2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExlZ2VuZEVsZW1lbnQuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMZWdlbmRFbGVtZW50LmgKQEAgLTQzLDcgKzQz
LDcgQEAgcHJpdmF0ZToKICAgICBSZWZQdHI8SFRNTEZvcm1Db250cm9sRWxlbWVudD4gYXNzb2Np
YXRlZENvbnRyb2woKTsKIAogICAgIGJvb2wgYWNjZXNzS2V5QWN0aW9uKGJvb2wgc2VuZE1vdXNl
RXZlbnRzKSBmaW5hbDsKLSAgICB2b2lkIGZvY3VzKFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZSwg
Rm9jdXNEaXJlY3Rpb24pIGZpbmFsOworICAgIHZvaWQgZm9jdXMoY29uc3QgRm9jdXNPcHRpb25z
JikgZmluYWw7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxPckZvcmVpZ25FbGVtZW50LmlkbCBiL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTE9yRm9yZWlnbkVsZW1lbnQuaWRsCmluZGV4IDlkNjJlNGQ4NDE3Nzg0MTZiNTI0
MWQ5NmJkODA3Zjk0NjZmM2NhMTQuLjkxMzQ2MDllOWQyMWZlYzM5YTllZjBmNGNjNWRmNWQyNmM1
M2YzNDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE9yRm9yZWlnbkVsZW1l
bnQuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE9yRm9yZWlnbkVsZW1lbnQuaWRs
CkBAIC0zNCw3ICszNCw3IEBAIGludGVyZmFjZSBtaXhpbiBIVE1MT3JGb3JlaWduRWxlbWVudCB7
CiAgICAgLy8gRklYTUU6IEltcGxlbWVudCAnYXV0b2ZvY3VzJy4KICAgICAvLyBbQ0VSZWFjdGlv
bnNdIGF0dHJpYnV0ZSBib29sZWFuIGF1dG9mb2N1czsKICAgICBbQ0VSZWFjdGlvbnMsIEltcGxl
bWVudGVkQXM9dGFiSW5kZXhGb3JCaW5kaW5nc10gYXR0cmlidXRlIGxvbmcgdGFiSW5kZXg7Ci0g
ICAgLy8gRklNWEU6IGZvY3VzKCkgaXMgc3BlY2lmaWVkIHRvIHRha2UgYW4gb3B0aW9uYWwgRm9j
dXNPcHRpb25zLiBJbXBsZW1lbnQgdGhhdC4KLSAgICB1bmRlZmluZWQgZm9jdXMoKTsKKyAgICB1
bmRlZmluZWQgZm9jdXMob3B0aW9uYWwgRm9jdXNPcHRpb25zIG9wdGlvbnMpOwogICAgIHVuZGVm
aW5lZCBibHVyKCk7CiB9OworCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0lucHV0
VHlwZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0lucHV0VHlwZS5jcHAKaW5kZXggN2VmNGY3
OWY3MGJjMjM5NzRiZDVkOTRlMjJhYmUxMzc3YjI1OWY1Mi4uYTJjNzAyNWE2MTM2ZGZlN2E2ZTNi
MTcxNzA4Njg1MTEzMTNmOTJkMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9JbnB1
dFR5cGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSW5wdXRUeXBlLmNwcApAQCAtNjM4
LDcgKzYzOCw3IEBAIHZvaWQgSW5wdXRUeXBlOjpoYW5kbGVCbHVyRXZlbnQoKQogYm9vbCBJbnB1
dFR5cGU6OmFjY2Vzc0tleUFjdGlvbihib29sKQogewogICAgIEFTU0VSVChlbGVtZW50KCkpOwot
ICAgIGVsZW1lbnQoKS0+Zm9jdXMoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlOjpTZWxlY3RBbGwp
OworICAgIGVsZW1lbnQoKS0+Zm9jdXMoeyBTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGU6OlNlbGVj
dEFsbCB9KTsKICAgICByZXR1cm4gZmFsc2U7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvRm9jdXNDb250cm9sbGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRm9jdXND
b250cm9sbGVyLmNwcAppbmRleCAwN2FiYWQwNjBlMDEzZWI4YjdhYzU2MDBkZDQ0MTk2ZDJiMWFh
OWZhLi45YWQ3YzQxNzYyMmE1OWNlOTkwMWJkMTdhMTc4YWNkMjFhYThiM2VhIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZvY3VzQ29udHJvbGxlci5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvcGFnZS9Gb2N1c0NvbnRyb2xsZXIuY3BwCkBAIC01MzMsNyArNTMzLDcgQEAgYm9vbCBG
b2N1c0NvbnRyb2xsZXI6OmFkdmFuY2VGb2N1c0luRG9jdW1lbnRPcmRlcihGb2N1c0RpcmVjdGlv
biBkaXJlY3Rpb24sIEtleWIKICAgICAgICAgfQogICAgIH0KIAotICAgIGVsZW1lbnQtPmZvY3Vz
KFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZTo6U2VsZWN0QWxsLCBkaXJlY3Rpb24pOworICAgIGVs
ZW1lbnQtPmZvY3VzKHsgU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlOjpTZWxlY3RBbGwsIGRpcmVj
dGlvbiB9KTsKICAgICByZXR1cm4gdHJ1ZTsKIH0KIApAQCAtMTEwNyw3ICsxMTA3LDcgQEAgYm9v
bCBGb2N1c0NvbnRyb2xsZXI6OmFkdmFuY2VGb2N1c0RpcmVjdGlvbmFsbHlJbkNvbnRhaW5lcihO
b2RlKiBjb250YWluZXIsIGNvbnMKICAgICBFbGVtZW50KiBlbGVtZW50ID0gZG93bmNhc3Q8RWxl
bWVudD4oZm9jdXNDYW5kaWRhdGUuZm9jdXNhYmxlTm9kZSk7CiAgICAgQVNTRVJUKGVsZW1lbnQp
OwogCi0gICAgZWxlbWVudC0+Zm9jdXMoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlOjpTZWxlY3RB
bGwsIGRpcmVjdGlvbik7CisgICAgZWxlbWVudC0+Zm9jdXMoeyBTZWxlY3Rpb25SZXN0b3JhdGlv
bk1vZGU6OlNlbGVjdEFsbCwgZGlyZWN0aW9uIH0pOwogICAgIHJldHVybiB0cnVlOwogfQogCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cK
aW5kZXggNjZmNDExM2M2OGRlNGU4OTM3ZjQ3NTdiZjI0YmZmMDVjM2ZiZmY4My4uYjRkN2JkYjhl
NWY5Nzg5ZDgzNjE0YWRjZDM2MGY3ZWJiNTRkMTkyOSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisy
MDIxLTAyLTEzICBSb2IgQnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgRW5hYmxl
IGFiaWxpdHkgdG8gcHJldmVudCBzY3JvbGxpbmcgaW4gRWxlbWVudC5mb2N1cygpCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzg1ODMKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGUgdGVzdCBwcmV2ZW50
U2Nyb2xsLXRleHRhcmVhLmh0bWwgbm93IHBhc3NlcyBvbiBhbGwgcGxhdGZvcm1zLgorCisgICAg
ICAgICogcGxhdGZvcm0vaW9zLXdrMi9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0
bWwvaW50ZXJhY3Rpb24vZm9jdXMvcHJvY2Vzc2luZy1tb2RlbC9wcmV2ZW50U2Nyb2xsLXRleHRh
cmVhLWV4cGVjdGVkLnR4dDogUmVtb3ZlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMtd2sxL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9pbnRlcmFjdGlvbi9mb2N1cy9wcm9j
ZXNzaW5nLW1vZGVsL3ByZXZlbnRTY3JvbGwtdGV4dGFyZWEtZXhwZWN0ZWQudHh0OiBSZW1vdmVk
LgorCiAyMDIxLTAyLTEyICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAgICAg
ICAgIFtNYWNdIFNvdW5kIGRvZXMgbm90IHBsYXkgb24gWW91VHViZSBhZnRlciBzd2l0Y2hpbmcg
YmFjayB0byBmb3JlZ3JvdW5kCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
Q2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwppbmRleCAwYTYw
ZmYxNDVkZjFkZmU4Mjg3ZjBiMzA5ZGQ1NGIxODUzNzAxYTliLi40MTVlYzVhZTgwNThiYWJiMjYz
YWVjMGU2NmJjMzRjNDA2M2RjYTBkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwxNiBAQAorMjAyMS0wMi0xNCAgUm9iIEJ1aXMgIDxyYnVpc0BpZ2FsaWEuY29tPgor
CisgICAgICAgIEVuYWJsZSBhYmlsaXR5IHRvIHByZXZlbnQgc2Nyb2xsaW5nIGluIEVsZW1lbnQu
Zm9jdXMoKQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTc4NTgzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
VXBkYXRlIGltcHJvdmVkIHRlc3QgcmVzdWx0LgorCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRl
c3RzL2h0bWwvaW50ZXJhY3Rpb24vZm9jdXMvcHJvY2Vzc2luZy1tb2RlbC9wcmV2ZW50U2Nyb2xs
LW5lc3RlZC1zY3JvbGwtZWxlbWVudHMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3
ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9pbnRlcmFjdGlvbi9mb2N1cy9wcm9jZXNzaW5nLW1vZGVs
L3ByZXZlbnRTY3JvbGwtbmVzdGVkLXNjcm9sbC1lbGVtZW50cy5odG1sOiBBZGRlZC4KKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9pbnRlcmFjdGlvbi9mb2N1cy9wcm9jZXNzaW5n
LW1vZGVsL3ByZXZlbnRTY3JvbGwtdGV4dGFyZWEtZXhwZWN0ZWQudHh0OgorCiAyMDIxLTAyLTEy
ICBTZXJnaW8gVmlsbGFyIFNlbmluICA8c3ZpbGxhckBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtj
c3MtZmxleGJveF0gQW5vdGhlciBXUFQgdGVzdCBpbXBvcnQKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9pbnRlcmFjdGlvbi9mb2N1
cy9wcm9jZXNzaW5nLW1vZGVsL3ByZXZlbnRTY3JvbGwtbmVzdGVkLXNjcm9sbC1lbGVtZW50cy1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2h0bWwvaW50ZXJhY3Rpb24vZm9jdXMvcHJvY2Vzc2luZy1tb2RlbC9wcmV2ZW50U2Nyb2xsLW5l
c3RlZC1zY3JvbGwtZWxlbWVudHMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjhhMWQ5Yjk1YWVl
ZmYxN2RlOWIwYWZiNDVjZjdkODI3OTU1Y2MwZTEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvaW50ZXJhY3Rpb24vZm9j
dXMvcHJvY2Vzc2luZy1tb2RlbC9wcmV2ZW50U2Nyb2xsLW5lc3RlZC1zY3JvbGwtZWxlbWVudHMt
ZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTIgQEAKKzFfMQorMV8yCisxXzMKKzJfMQorMl8yCisy
XzMKKzNfMQorM18yCiszXzMKKworUEFTUyBmb2N1cyhvcHRpb25zKSAtIHByZXZlbnRTY3JvbGwg
b24gbmVzdGVkIHNjcm9sbCBlbGVtZW50cworCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvaW50ZXJhY3Rpb24vZm9jdXMvcHJvY2Vz
c2luZy1tb2RlbC9wcmV2ZW50U2Nyb2xsLW5lc3RlZC1zY3JvbGwtZWxlbWVudHMuaHRtbCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9pbnRlcmFjdGlv
bi9mb2N1cy9wcm9jZXNzaW5nLW1vZGVsL3ByZXZlbnRTY3JvbGwtbmVzdGVkLXNjcm9sbC1lbGVt
ZW50cy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjhiYzZmNzRhNTRiNDlmNzJlYWE5MTQyNzM4MzU5MzRkZTBm
YTc0ODkKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvaW50ZXJhY3Rpb24vZm9jdXMvcHJvY2Vzc2luZy1tb2RlbC9wcmV2
ZW50U2Nyb2xsLW5lc3RlZC1zY3JvbGwtZWxlbWVudHMuaHRtbApAQCAtMCwwICsxLDYxIEBACis8
IWRvY3R5cGUgaHRtbD4KKzx0aXRsZT5mb2N1cyhvcHRpb25zKSAtIHByZXZlbnRTY3JvbGwgb24g
bmVzdGVkIHNjcm9sbCBlbGVtZW50czwvdGl0bGU+Cis8c2NyaXB0IHNyYz0vcmVzb3VyY2VzL3Rl
c3RoYXJuZXNzLmpzPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9L3Jlc291cmNlcy90ZXN0aGFybmVz
c3JlcG9ydC5qcz48L3NjcmlwdD4KKzxzdHlsZT4KKyAgI3Njcm9sbEJveCB7IHdpZHRoOiA0MDBw
eDsgaGVpZ2h0OiAzMDBweDsgYm9yZGVyOiAxcHggc29saWQgfQorICAuYmlnYm94IHsgd2lkdGg6
IDM4MHB4OyBoZWlnaHQ6IDMwMHB4OyBib3JkZXI6IDFweCBzb2xpZCB9CisgIC5ib3ggeyB3aWR0
aDogMzgwcHg7IGhlaWdodDogMTUwcHg7IGJvcmRlcjogMXB4IHNvbGlkIH0KKzwvc3R5bGU+Cis8
ZGl2IGlkPSJzY3JvbGxCb3giIHN0eWxlPSJvdmVyZmxvdy15OiBzY3JvbGw7Ij4KKyAgPGRpdiBj
bGFzcz0iYmlnYm94IiBpZD0iMSIgc3R5bGU9Im92ZXJmbG93LXk6IHNjcm9sbDsiIHRhYmluZGV4
PTE+CisgICAgPGRpdiBjbGFzcz0iYm94IiBpZD0iMV8xIiB0YWJpbmRleD0xPjFfMTwvZGl2Pgor
ICAgIDxkaXYgY2xhc3M9ImJveCIgaWQ9IjFfMiIgdGFiaW5kZXg9MT4xXzI8L2Rpdj4KKyAgICA8
ZGl2IGNsYXNzPSJib3giIGlkPSIxXzMiIHRhYmluZGV4PTE+MV8zPC9kaXY+CisgIDwvZGl2Pgor
ICA8ZGl2IGNsYXNzPSJiaWdib3giIGlkPSIyIiBzdHlsZT0ib3ZlcmZsb3cteTogc2Nyb2xsOyIg
dGFiaW5kZXg9MT4KKyAgICA8ZGl2IGNsYXNzPSJib3giIGlkPSIyXzEiIHRhYmluZGV4PTE+Ml8x
PC9kaXY+CisgICAgPGRpdiBjbGFzcz0iYm94IiBpZD0iMl8yIiB0YWJpbmRleD0xPjJfMjwvZGl2
PgorICAgIDxkaXYgY2xhc3M9ImJveCIgaWQ9IjJfMyIgdGFiaW5kZXg9MT4yXzM8L2Rpdj4KKyAg
PC9kaXY+CisgIDxkaXYgY2xhc3M9ImJpZ2JveCIgaWQ9IjMiIHN0eWxlPSJvdmVyZmxvdy15OiBz
Y3JvbGw7IiB0YWJpbmRleD0xPgorICAgIDxkaXYgY2xhc3M9ImJveCIgaWQ9IjNfMSIgdGFiaW5k
ZXg9MT4zXzE8L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJib3giIGlkPSIzXzIiIHRhYmluZGV4PTE+
M18yPC9kaXY+CisgICAgPGRpdiBjbGFzcz0iYm94IiBpZD0iM18zIiB0YWJpbmRleD0xPjNfMzwv
ZGl2PgorICA8L2Rpdj4KKzwvZGl2PgorPHNjcmlwdD4KK3Byb21pc2VfdGVzdChhc3luYyBmdW5j
dGlvbih0KSB7CisgIGF3YWl0IG5ldyBQcm9taXNlKHJlc29sdmUgPT4gd2luZG93LmFkZEV2ZW50
TGlzdGVuZXIoImxvYWQiLCByZXNvbHZlKSk7CisgIGxldCBkaXYyXzIgPSBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgiMl8yIik7CisgIGRpdjJfMi5mb2N1cyh7IHByZXZlbnRTY3JvbGw6IHRydWUg
fSk7CisKKyAgYXdhaXQgbmV3IFByb21pc2UocmVzb2x2ZSA9PiB7CisgICAgcmVxdWVzdEFuaW1h
dGlvbkZyYW1lKCgpID0+IHJlcXVlc3RBbmltYXRpb25GcmFtZShyZXNvbHZlKSk7CisgIH0pOwor
CisgIGFzc2VydF9lcXVhbHMoZG9jdW1lbnQuYWN0aXZlRWxlbWVudCwgZGl2Ml8yLCBgMl8yOiBz
aG91bGQgaGF2ZSBiZWVuIGZvY3VzZWRgKTsKKyAgYXNzZXJ0X2VxdWFscyhkaXYyXzIuc2Nyb2xs
VG9wLCAwLCAiMl8yOiBzaG91bGQgbm90IGhhdmUgc2Nyb2xsZWQiKTsKKyAgYXNzZXJ0X2VxdWFs
cyhkaXYyXzIucGFyZW50Tm9kZS5zY3JvbGxUb3AsIDAsICIyXzI6IHNob3VsZCBub3QgaGF2ZSBz
Y3JvbGxlZCBhbmNlc3RvciIpOworCisgIC8vIFJlc2V0IGZvY3VzCisgIGxldCBkaXYxXzEgPSBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgiMV8xIik7CisgIGRpdjFfMS5mb2N1cygpOworCisgIGF3
YWl0IG5ldyBQcm9taXNlKHJlc29sdmUgPT4geworICAgIHJlcXVlc3RBbmltYXRpb25GcmFtZSgo
KSA9PiByZXF1ZXN0QW5pbWF0aW9uRnJhbWUocmVzb2x2ZSkpOworICB9KTsKKyAgYXNzZXJ0X2Vx
dWFscyhkb2N1bWVudC5hY3RpdmVFbGVtZW50LCBkaXYxXzEsIGAxXzE6IHNob3VsZCBoYXZlIGJl
ZW4gZm9jdXNlZGApOworCisgIGxldCBkaXYyID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIjIi
KTsKKyAgZGl2Mi5mb2N1cyh7IHByZXZlbnRTY3JvbGw6IHRydWUgfSk7CisKKyAgYXdhaXQgbmV3
IFByb21pc2UocmVzb2x2ZSA9PiB7CisgICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHJl
cXVlc3RBbmltYXRpb25GcmFtZShyZXNvbHZlKSk7CisgIH0pOworCisgIGFzc2VydF9lcXVhbHMo
ZG9jdW1lbnQuYWN0aXZlRWxlbWVudCwgZGl2MiwgYGJveCAyOiBzaG91bGQgaGF2ZSBiZWVuIGZv
Y3VzZWRgKTsKKyAgYXNzZXJ0X2VxdWFscyhkaXYyLnNjcm9sbFRvcCwgMCwgImJveCAyOiBzaG91
bGQgbm90IGhhdmUgc2Nyb2xsZWQiKTsKKyAgYXNzZXJ0X2VxdWFscyhkaXYyLnBhcmVudE5vZGUu
c2Nyb2xsVG9wLCAwLCAiYm94IDI6IHNob3VsZCBub3QgaGF2ZSBzY3JvbGxlZCBhbmNlc3RvciIp
OworfSk7Cis8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9pbnRlcmFjdGlvbi9mb2N1cy9wcm9jZXNzaW5nLW1vZGVs
L3ByZXZlbnRTY3JvbGwtdGV4dGFyZWEtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2ludGVyYWN0aW9uL2ZvY3VzL3Byb2Nlc3Np
bmctbW9kZWwvcHJldmVudFNjcm9sbC10ZXh0YXJlYS1leHBlY3RlZC50eHQKaW5kZXggMDhhYWZi
MzE2MzYwODQ5MDg3OTgwZTAwNTA0MmQ3Yzg1YWRhODY1Yi4uYzczNGE2OWRlOWE1Y2ZmNWFkNTVl
ZWY5Y2RkMWQ2ZDJlZWNlNmQzYSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2ludGVyYWN0aW9uL2ZvY3VzL3Byb2Nlc3NpbmctbW9k
ZWwvcHJldmVudFNjcm9sbC10ZXh0YXJlYS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2ludGVyYWN0aW9uL2ZvY3VzL3By
b2Nlc3NpbmctbW9kZWwvcHJldmVudFNjcm9sbC10ZXh0YXJlYS1leHBlY3RlZC50eHQKQEAgLTEs
NCArMSw0IEBACiAKIAotRkFJTCBwcmV2ZW50U2Nyb2xsOiB0cnVlIG9uIGEgdGV4dGFyZWEgZWxl
bWVudCBhc3NlcnRfZXF1YWxzOiBURVhUQVJFQTogU2hvdWxkIG5vdCBoYXZlIHNjcm9sbGVkIGFm
dGVyIGEgY291cGxlIGV2ZW50IGxvb3AgdGlja3MgZXhwZWN0ZWQgMCBidXQgZ290IDkyMAorUEFT
UyBwcmV2ZW50U2Nyb2xsOiB0cnVlIG9uIGEgdGV4dGFyZWEgZWxlbWVudAogCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3Mtd2syL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvaHRtbC9pbnRlcmFjdGlvbi9mb2N1cy9wcm9jZXNzaW5nLW1vZGVsL3ByZXZlbnRTY3Jv
bGwtdGV4dGFyZWEtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zLXdrMi9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvaW50ZXJhY3Rpb24vZm9jdXMvcHJv
Y2Vzc2luZy1tb2RlbC9wcmV2ZW50U2Nyb2xsLXRleHRhcmVhLWV4cGVjdGVkLnR4dApkZWxldGVk
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYzczNGE2OWRlOWE1Y2ZmNWFkNTVlZWY5Y2RkMWQ2ZDJl
ZWNlNmQzYS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9M
YXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3Mtd2syL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvaHRtbC9pbnRlcmFjdGlvbi9mb2N1cy9wcm9jZXNzaW5nLW1vZGVsL3ByZXZlbnRTY3JvbGwt
dGV4dGFyZWEtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsNCArMCwwIEBACi0KLQot
UEFTUyBwcmV2ZW50U2Nyb2xsOiB0cnVlIG9uIGEgdGV4dGFyZWEgZWxlbWVudAotCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2sxL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvaHRtbC9pbnRlcmFjdGlvbi9mb2N1cy9wcm9jZXNzaW5nLW1vZGVsL3ByZXZlbnRT
Y3JvbGwtdGV4dGFyZWEtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdr
MS9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvaW50ZXJhY3Rpb24vZm9jdXMv
cHJvY2Vzc2luZy1tb2RlbC9wcmV2ZW50U2Nyb2xsLXRleHRhcmVhLWV4cGVjdGVkLnR4dApkZWxl
dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNTJhYmFiYmZiZDcyN2VjZGZiYmNkZGQ2Y2M4ZTEw
MGQzZGQ5Y2FmNS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0g
YS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2sxL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvaHRtbC9pbnRlcmFjdGlvbi9mb2N1cy9wcm9jZXNzaW5nLW1vZGVsL3ByZXZlbnRTY3Jv
bGwtdGV4dGFyZWEtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsNCArMCwwIEBACi0K
LQotRkFJTCBwcmV2ZW50U2Nyb2xsOiB0cnVlIG9uIGEgdGV4dGFyZWEgZWxlbWVudCBhc3NlcnRf
ZXF1YWxzOiBURVhUQVJFQTogU2hvdWxkIG5vdCBoYXZlIHNjcm9sbGVkIGV4cGVjdGVkIDAgYnV0
IGdvdCA5MjAKLQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>420442</attachid>
            <date>2021-02-16 02:22:57 -0800</date>
            <delta_ts>2021-03-22 13:25:25 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-178583-20210216112254.patch</filename>
            <type>text/plain</type>
            <size>32429</size>
            <attacher name="Rob Buis">rbuis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcyODk4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOGIxZWJiOGFjMzk4MzBj
NTFlNTgyNmY5OWI3YjI0N2U2NWQwYWYzMy4uZGM1YmVmYjQ4NmJkZGYwNjVlODhmNDMwNmJjMTkx
ZmU1OTIxM2I0NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ5IEBACisyMDIxLTAyLTE2ICBSb2Ig
QnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgRW5hYmxlIGFiaWxpdHkgdG8gcHJl
dmVudCBzY3JvbGxpbmcgaW4gRWxlbWVudC5mb2N1cygpCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzg1ODMKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgRm9jdXNPcHRpb25zIHBhcmFtZXRlciB0byB0
aGUgZm9jdXMgbWV0aG9kIFsxXSBib3RoCisgICAgICAgIHRvIHRoZSBJREwgYXMgdGhlIEMrKyBz
aWRlLiBDaGFuZ2UgRWxlbWVudC5mb2N1cyB0byBub3QKKyAgICAgICAgc2Nyb2xsIGlmIEZvY3Vz
T3B0aW9ucy5wcmV2ZW50U2Nyb2xsIGlzIHRydWUuCisKKyAgICAgICAgQmVoYXZpb3IgbWF0Y2hl
cyBDaHJvbWUgYW5kIEZpcmVmb3guCisKKyAgICAgICAgVGVzdHM6IGltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9pbnRlcmFjdGlvbi9mb2N1cy9wcm9jZXNzaW5nLW1vZGVsL3By
ZXZlbnRTY3JvbGwtdGV4dGFyZWEuaHRtbAorICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9odG1sL2ludGVyYWN0aW9uL2ZvY3VzL3Byb2Nlc3NpbmctbW9kZWwv
cHJldmVudFNjcm9sbC1uZXN0ZWQtc2Nyb2xsLWVsZW1lbnRzLmh0bWwKKworICAgICAgICBbMV0g
aHR0cHM6Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2UvaW50ZXJhY3Rpb24uaHRtbCNk
b20tZm9jdXMKKworICAgICAgICAqIENNYWtlTGlzdHMudHh0OgorICAgICAgICAqIERlcml2ZWRT
b3VyY2VzLWlucHV0LnhjZmlsZWxpc3Q6CisgICAgICAgICogRGVyaXZlZFNvdXJjZXMtb3V0cHV0
LnhjZmlsZWxpc3Q6CisgICAgICAgICogRGVyaXZlZFNvdXJjZXMubWFrZToKKyAgICAgICAgKiBI
ZWFkZXJzLmNtYWtlOgorICAgICAgICAqIFNvdXJjZXMudHh0OgorICAgICAgICAqIFdlYkNvcmUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBkb20vRWxlbWVudC5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpFbGVtZW50Ojpmb2N1cyk6CisgICAgICAgICogZG9tL0VsZW1lbnQu
aDoKKyAgICAgICAgKFdlYkNvcmU6OkVsZW1lbnQ6OmZvY3VzKToKKyAgICAgICAgKiBkb20vRm9j
dXNPcHRpb25zLmg6IENvcGllZCBmcm9tIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE9yRm9yZWln
bkVsZW1lbnQuaWRsLgorICAgICAgICAqIGRvbS9Gb2N1c09wdGlvbnMuaWRsOiBDb3BpZWQgZnJv
bSBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPckZvcmVpZ25FbGVtZW50LmlkbC4KKyAgICAgICAg
KiBodG1sL0hUTUxGb3JtQ29udHJvbEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRN
TEZvcm1Db250cm9sRWxlbWVudDo6ZGlkQXR0YWNoUmVuZGVyZXJzKToKKyAgICAgICAgKiBodG1s
L0hUTUxMYWJlbEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTExhYmVsRWxlbWVu
dDo6Zm9jdXMpOgorICAgICAgICAqIGh0bWwvSFRNTExhYmVsRWxlbWVudC5oOgorICAgICAgICAq
IGh0bWwvSFRNTExlZ2VuZEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTExlZ2Vu
ZEVsZW1lbnQ6OmZvY3VzKToKKyAgICAgICAgKiBodG1sL0hUTUxMZWdlbmRFbGVtZW50Lmg6Cisg
ICAgICAgICogaHRtbC9IVE1MT3JGb3JlaWduRWxlbWVudC5pZGw6CisgICAgICAgICogaHRtbC9J
bnB1dFR5cGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SW5wdXRUeXBlOjphY2Nlc3NLZXlBY3Rp
b24pOgorICAgICAgICAqIHBhZ2UvRm9jdXNDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkZvY3VzQ29udHJvbGxlcjo6YWR2YW5jZUZvY3VzSW5Eb2N1bWVudE9yZGVyKToKKyAgICAg
ICAgKFdlYkNvcmU6OkZvY3VzQ29udHJvbGxlcjo6YWR2YW5jZUZvY3VzRGlyZWN0aW9uYWxseUlu
Q29udGFpbmVyKToKKwogMjAyMS0wMi0xNiAgQW50b2luZSBRdWludCAgPGdyYW91dHNAd2Via2l0
Lm9yZz4KIAogICAgICAgICBTdHlsZTo6UmVzb2x2ZXI6OnN0eWxlRm9yS2V5ZnJhbWUoKSBzaG91
bGQgdGFrZSBpbiB0aGUgcGFyZW50IHN0eWxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
TWFrZUxpc3RzLnR4dCBiL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CmluZGV4IDdhYmU5
ZjVmYTNiNTFkNWU5MTVkYTdiMzUzODdkOGM4NTNhM2RhYjcuLjIyOWVlNzMwYWVhN2Y4YjQzNmMx
YzY0ZTg0MjI3MjhkNmZmMTY1M2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlz
dHMudHh0CisrKyBiL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CkBAIC04NDksNiArODQ5
LDcgQEAgc2V0KFdlYkNvcmVfTk9OX1NWR19JRExfRklMRVMKICAgICBkb20vRXZlbnRNb2RpZmll
ckluaXQuaWRsCiAgICAgZG9tL0V2ZW50VGFyZ2V0LmlkbAogICAgIGRvbS9Gb2N1c0V2ZW50Lmlk
bAorICAgIGRvbS9Gb2N1c09wdGlvbnMuaWRsCiAgICAgZG9tL0dsb2JhbEV2ZW50SGFuZGxlcnMr
UG9pbnRlckV2ZW50cy5pZGwKICAgICBkb20vR2xvYmFsRXZlbnRIYW5kbGVycytTZWxlY3Rpb24u
aWRsCiAgICAgZG9tL0dsb2JhbEV2ZW50SGFuZGxlcnMuaWRsCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9EZXJpdmVkU291cmNlcy1pbnB1dC54Y2ZpbGVsaXN0IGIvU291cmNlL1dlYkNvcmUv
RGVyaXZlZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdAppbmRleCA2OGNmZDRhMDcyNjI1MzQ4YWNl
NTdiOTNmZGE3NzNlY2IyYzY4MTdmLi4yMTc3OTc4ZDVlZDM0Y2Q5ZWNlOTI3MTFjNzdhNTRhN2E0
ZjJhMjZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1pbnB1dC54
Y2ZpbGVsaXN0CisrKyBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLWlucHV0LnhjZmls
ZWxpc3QKQEAgLTc2OCw2ICs3NjgsNyBAQCAkKFBST0pFQ1RfRElSKS9kb20vRXZlbnROYW1lcy5p
bgogJChQUk9KRUNUX0RJUikvZG9tL0V2ZW50VGFyZ2V0LmlkbAogJChQUk9KRUNUX0RJUikvZG9t
L0V2ZW50VGFyZ2V0RmFjdG9yeS5pbgogJChQUk9KRUNUX0RJUikvZG9tL0ZvY3VzRXZlbnQuaWRs
CiskKFBST0pFQ1RfRElSKS9kb20vRm9jdXNPcHRpb25zLmlkbAogJChQUk9KRUNUX0RJUikvZG9t
L0dsb2JhbEV2ZW50SGFuZGxlcnMrUG9pbnRlckV2ZW50cy5pZGwKICQoUFJPSkVDVF9ESVIpL2Rv
bS9HbG9iYWxFdmVudEhhbmRsZXJzK1NlbGVjdGlvbi5pZGwKICQoUFJPSkVDVF9ESVIpL2RvbS9H
bG9iYWxFdmVudEhhbmRsZXJzLmlkbApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZl
ZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3QgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNl
cy1vdXRwdXQueGNmaWxlbGlzdAppbmRleCAxNzIzNjRkOWI1NTExMDkyNGRkOTNjN2RhY2M2ODYy
OWZkNzliZTdjLi44NTBjNDhkNzUxZWM1OGQ1ZDZkOWNhMDg2MmYyMDkzNDNkM2MwOTMzIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1vdXRwdXQueGNmaWxlbGlzdAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1vdXRwdXQueGNmaWxlbGlzdApAQCAt
ODE3LDYgKzgxNyw4IEBAICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJD
b3JlL0pTRmlsbE1vZGUuY3BwCiAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMv
V2ViQ29yZS9KU0ZpbGxNb2RlLmgKICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNl
cy9XZWJDb3JlL0pTRm9jdXNFdmVudC5jcHAKICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVk
U291cmNlcy9XZWJDb3JlL0pTRm9jdXNFdmVudC5oCiskKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVy
aXZlZFNvdXJjZXMvV2ViQ29yZS9KU0ZvY3VzT3B0aW9ucy5jcHAKKyQoQlVJTFRfUFJPRFVDVFNf
RElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTRm9jdXNPcHRpb25zLmgKICQoQlVJTFRfUFJP
RFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTRm9udEZhY2UuY3BwCiAkKEJVSUxU
X1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0ZvbnRGYWNlLmgKICQoQlVJ
TFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTRm9udEZhY2VTZXQuY3Bw
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlIGIvU291cmNl
L1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQppbmRleCBmYmE5ZWU1YTAxMzQ5ZmI2MWFiY2Jh
YTJkNWIyNDQzZTAyMGNlOWI5Li4wMjkxYjZlZDI0MmYyNTQ3MzMwN2NiYjNiZDUxM2EzODI3Nzgz
ZmExIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCisrKyBi
L1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKQEAgLTcyMyw2ICs3MjMsNyBAQCBK
U19CSU5ESU5HX0lETFMgOj0gXAogICAgICQoV2ViQ29yZSkvZG9tL0V2ZW50TW9kaWZpZXJJbml0
LmlkbCBcCiAgICAgJChXZWJDb3JlKS9kb20vRXZlbnRUYXJnZXQuaWRsIFwKICAgICAkKFdlYkNv
cmUpL2RvbS9Gb2N1c0V2ZW50LmlkbCBcCisgICAgJChXZWJDb3JlKS9kb20vRm9jdXNPcHRpb25z
LmlkbCBcCiAgICAgJChXZWJDb3JlKS9kb20vR2xvYmFsRXZlbnRIYW5kbGVycytQb2ludGVyRXZl
bnRzLmlkbCBcCiAgICAgJChXZWJDb3JlKS9kb20vR2xvYmFsRXZlbnRIYW5kbGVycytTZWxlY3Rp
b24uaWRsIFwKICAgICAkKFdlYkNvcmUpL2RvbS9HbG9iYWxFdmVudEhhbmRsZXJzLmlkbCBcCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlIGIvU291cmNlL1dlYkNvcmUv
SGVhZGVycy5jbWFrZQppbmRleCBmODg1OTE1ZmU4YmU3OWU1MTI1OGZmZjhkODMxODJjOTVkN2Qz
MmNiLi43YzM3ZTk2NTAzYjBmZmY4ZWFjYzFkNzhiYWIxMjc2NmVhOGE5NGVkIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlCisrKyBiL1NvdXJjZS9XZWJDb3JlL0hlYWRl
cnMuY21ha2UKQEAgLTQ2MCw2ICs0NjAsNyBAQCBzZXQoV2ViQ29yZV9QUklWQVRFX0ZSQU1FV09S
S19IRUFERVJTCiAgICAgZG9tL0V4Y2VwdGlvbkNvZGUuaAogICAgIGRvbS9FeGNlcHRpb25EYXRh
LmgKICAgICBkb20vRXhjZXB0aW9uT3IuaAorICAgIGRvbS9Gb2N1c09wdGlvbnMuaAogICAgIGRv
bS9GcmFnbWVudFNjcmlwdGluZ1Blcm1pc3Npb24uaAogICAgIGRvbS9GdWxsc2NyZWVuTWFuYWdl
ci5oCiAgICAgZG9tL0dDUmVhY2hhYmxlUmVmLmgKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L1NvdXJjZXMudHh0IGIvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQKaW5kZXggNjdhMTRhZmU4
M2UwNDA4N2RlZjI1OTZmYzBhZDVjOTZhNzRiZTEwMS4uNmUzNjg1NDJhMTdmNDI4ZjRiMTdmNjY2
NTJhMDQ3ZDk4MDZhY2E5NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQK
KysrIGIvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQKQEAgLTMwMDEsNiArMzAwMSw3IEBAIEpT
RmlsZVN5c3RlbUVudHJ5Q2FsbGJhY2suY3BwCiBKU0ZpbGVTeXN0ZW1GaWxlRW50cnkuY3BwCiBK
U0ZpbGxNb2RlLmNwcAogSlNGb2N1c0V2ZW50LmNwcAorSlNGb2N1c09wdGlvbnMuY3BwCiBKU0Zv
bnRGYWNlLmNwcAogSlNGb250RmFjZVNldC5jcHAKIEpTR1BVQmluZEdyb3VwTGF5b3V0QmluZGlu
Zy5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvagppbmRleCAyOWUxOWE5MTdiNWJlMDRjM2NkZjFiZTNhYWUwZmI0YjdlZGRhY2I3Li42NjY2
OWYyZmRlOTM2NmNiM2ZkZGMyMTMxMmJhNjYzZDYzNTU3N2FkIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dl
YkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0zNTkyLDYgKzM1OTIs
NyBAQAogCQlBQTdGRUVBRDE2QTRFNzRCMDA0QzBDMzMgLyogSlNTcGVlY2hTeW50aGVzaXMuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEFBN0ZFRUFDMTZB
NEU3NEIwMDRDMEMzMyAvKiBKU1NwZWVjaFN5bnRoZXNpcy5oICovOyB9OwogCQlBQUE3MjhGNzE2
RDFEOEJDMDBEM0JCQzYgLyogV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJJT1MuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEFBQTcyOEYxMTZEMUQ4
QkMwMEQzQkJDNiAvKiBXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlcklPUy5oICovOyB9Owog
CQlBQUMwOENGMzE1Rjk0MUZEMDBGMUUxODggLyogQWNjZXNzaWJpbGl0eVNWR1Jvb3QuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEFBQzA4Q0YxMTVGOTQx
RkMwMEYxRTE4OCAvKiBBY2Nlc3NpYmlsaXR5U1ZHUm9vdC5oICovOyB9OworCQlBQURFRkU0NTI1
QUY0RkQ2MDA0MERENjcgLyogRm9jdXNPcHRpb25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBQURFRkU0MzI1QUY0RkNCMDA0MERENjcgLyogRm9jdXNP
cHRpb25zLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
IAkJQUIyM0EzMjgwOUJCQTdEMDAwNjdDQzUzIC8qIEJlZm9yZVRleHRJbnNlcnRlZEV2ZW50Lmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBQjIzQTMyNjA5
QkJBN0QwMDA2N0NDNTMgLyogQmVmb3JlVGV4dEluc2VydGVkRXZlbnQuaCAqLzsgfTsKIAkJQUIy
NDdBNkQwQUZENjM4MzAwM0ZBNUZEIC8qIFJlbmRlclNsaWRlci5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQUIyNDdBNkIwQUZENjM4MzAwM0ZBNUZEIC8q
IFJlbmRlclNsaWRlci5oICovOyB9OwogCQlBQjMxQzkxRTEwQUUxQjhFMDAwQzdCOTIgLyogTGlu
ZUNsYW1wVmFsdWUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEFCMzFDOTFEMTBBRTFCOEUwMDBDN0I5MiAvKiBMaW5lQ2xhbXBWYWx1ZS5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CkBAIC0xMzEwMSw2ICsxMzEw
Miw3IEBACiAJCUFBMkE1QUM2MTZBNDg1RDUwMDk3NUEyNSAvKiBTcGVlY2hTeW50aGVzaXNWb2lj
ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTcGVlY2hTeW50aGVzaXNWb2ljZS5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUFBMkE1QUM3MTZBNDg1RDUwMDk3NUEyNSAvKiBTcGVl
Y2hTeW50aGVzaXNWb2ljZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTcGVlY2hTeW50aGVzaXNWb2ljZS5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlBQTJBNUFDODE2QTQ4NUQ1MDA5NzVBMjUg
LyogU3BlZWNoU3ludGhlc2lzVm9pY2UuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFNwZWVjaFN5bnRoZXNpc1ZvaWNlLmlk
bDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQUEyRTBEMDkyNUFGNTEwNDAwNzY5M0JB
IC8qIEZvY3VzT3B0aW9ucy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gRm9jdXNPcHRpb25zLmlkbDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJQUE0NzhBN0QxNkNENzBDMzAwN0QxQkI0IC8qIFdlYkFjY2Vzc2li
aWxpdHlPYmplY3RXcmFwcGVyTWFjLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFdlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyTWFjLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCUFBNDc4QTdFMTZDRDcwQzMwMDdEMUJCNCAvKiBXZWJBY2Nlc3NpYmlsaXR5T2Jq
ZWN0V3JhcHBlck1hYy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBleHBsaWNpdEZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBmaWxlRW5jb2RpbmcgPSA0OyBwYXRoID0g
V2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJNYWMubW07IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCUFBNEMzQTc0MEIyQjE2NzkwMDIzMzRBMiAvKiBJbmxpbmVTdHlsZVNoZWV0T3du
ZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IElubGluZVN0eWxl
U2hlZXRPd25lci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xMzEyNSw2ICsx
MzEyNyw3IEBACiAJCUFBQ0M4M0Q4MjMxNjU3NkIwMEVCNkJGNSAvKiBKU0hUTUxPckZvcmVpZ25F
bGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTSFRNTE9yRm9yZWlnbkVsZW1lbnQuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlBQUQ5RDBCMTIxREZBODBDMDAxQjExQzcg
LyogTGF6eUxvYWRJbWFnZU9ic2VydmVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IExhenlMb2FkSW1hZ2VPYnNlcnZlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCUFBRDlEMEIzMjFERkE4MEUwMDFCMTFDNyAvKiBMYXp5TG9hZEltYWdlT2JzZXJ2
ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTGF6eUxvYWRJbWFnZU9ic2Vy
dmVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUFBREVGRTQzMjVBRjRGQ0IwMDQw
REQ2NyAvKiBGb2N1c09wdGlvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRm9jdXNPcHRpb25zLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUFBRTI3Qjc0MTZDQkZDMEQwMDYyMzA0MyAvKiBQ
bGF0Zm9ybVNwZWVjaFN5bnRoZXNpemVyTW9jay5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBQbGF0Zm9ybVNwZWVjaFN5bnRoZXNpemVyTW9jay5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCUFBRTI3Qjc1MTZDQkZDMEQwMDYyMzA0MyAvKiBQbGF0Zm9y
bVNwZWVjaFN5bnRoZXNpemVyTW9jay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBQbGF0Zm9ybVNwZWVjaFN5bnRoZXNpemVyTW9jay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQlBQUUzNzU1RDE3NDI5QkNDMDA2MjAwQzIgLyogUGxhdGZvcm1TcGVlY2hTeW50aGVz
aXplcklPUy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFBsYXRm
b3JtU3BlZWNoU3ludGhlc2l6ZXJJT1MubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBA
IC0zMDE5NCw2ICszMDE5Nyw4IEBACiAJCQkJQjZEOUQyMzQxNEVBQkQyNjAwOTBENzVFIC8qIEZv
Y3VzRXZlbnQuY3BwICovLAogCQkJCUI2RDlEMjMzMTRFQUJEMjYwMDkwRDc1RSAvKiBGb2N1c0V2
ZW50LmggKi8sCiAJCQkJQjZEOUQyNzIxNEVBQkYwMzAwOTBENzVFIC8qIEZvY3VzRXZlbnQuaWRs
ICovLAorCQkJCUFBREVGRTQzMjVBRjRGQ0IwMDQwREQ2NyAvKiBGb2N1c09wdGlvbnMuaCAqLywK
KwkJCQlBQTJFMEQwOTI1QUY1MTA0MDA3NjkzQkEgLyogRm9jdXNPcHRpb25zLmlkbCAqLywKIAkJ
CQlBODUzMTIzQzExRDA0NzFCMDBENEQwNzcgLyogRnJhZ21lbnRTY3JpcHRpbmdQZXJtaXNzaW9u
LmggKi8sCiAJCQkJQ0Q5MkY1MTcyMjYxMDM4MjAwRjg3QkIzIC8qIEZ1bGxzY3JlZW5NYW5hZ2Vy
LmNwcCAqLywKIAkJCQlDRDkyRjUxNjIyNjEwMzgyMDBGODdCQjMgLyogRnVsbHNjcmVlbk1hbmFn
ZXIuaCAqLywKQEAgLTMyMTc4LDYgKzMyMTgzLDcgQEAKIAkJCQkxNDk5M0JFNjBCMkYyQjFDMDA1
MDQ5N0YgLyogRm9jdXNDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQkwNjIyODc4NDBC
NERCMzIyMDAwQzM0REYgLyogRm9jdXNEaXJlY3Rpb24uaCBpbiBIZWFkZXJzICovLAogCQkJCUI2
RDlEMjM1MTRFQUJEMjYwMDkwRDc1RSAvKiBGb2N1c0V2ZW50LmggaW4gSGVhZGVycyAqLywKKwkJ
CQlBQURFRkU0NTI1QUY0RkQ2MDA0MERENjcgLyogRm9jdXNPcHRpb25zLmggaW4gSGVhZGVycyAq
LywKIAkJCQlCMkMzREE2NTBEMDA2Q0Q2MDBFRjZGMjYgLyogRm9udC5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJMUFDMkQ4OUQxQjFFMjkxRjAwRDUyRTg3IC8qIEZvbnRBbnRpYWxpYXNpbmdTdGF0ZVNh
dmVyLmggaW4gSGVhZGVycyAqLywKIAkJCQlGNEU1N0VEQzIxM0YzRjVGMDA0RUE5OEUgLyogRm9u
dEF0dHJpYnV0ZUNoYW5nZXMuaCBpbiBIZWFkZXJzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvZG9tL0VsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuY3BwCmlu
ZGV4IGY4ODZhMGZjZDdlOTBlNTIxZTVlYjdjNzdjNzc2NzczMjQ0ZGI3MWEuLmZhMzViNWNmM2Ni
OWVjZjkzYTZmYTA3NTYwZTgxODQwZDUwMjNjZjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2RvbS9FbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5jcHAKQEAg
LTMwMDEsNyArMzAwMSw3IEBAIHN0YXRpYyBSZWZQdHI8RWxlbWVudD4gZmluZEZpcnN0UHJvZ3Jh
bWF0aWNhbGx5Rm9jdXNhYmxlRWxlbWVudEluQ29tcG9zZWRUcmVlKEVsCiAgICAgcmV0dXJuIG51
bGxwdHI7CiB9CiAKLXZvaWQgRWxlbWVudDo6Zm9jdXMoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2Rl
IHJlc3RvcmF0aW9uTW9kZSwgRm9jdXNEaXJlY3Rpb24gZGlyZWN0aW9uKQordm9pZCBFbGVtZW50
Ojpmb2N1cyhjb25zdCBGb2N1c09wdGlvbnMmIG9wdGlvbnMpCiB7CiAgICAgaWYgKCFpc0Nvbm5l
Y3RlZCgpKQogICAgICAgICByZXR1cm47CkBAIC0zMDQ1LDExICszMDQ1LDEyIEBAIHZvaWQgRWxl
bWVudDo6Zm9jdXMoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlIHJlc3RvcmF0aW9uTW9kZSwgRm9j
dXNEaXJlY3Rpb24gZGlyCiAgICAgICAgIC8vIEZvY3VzIGFuZCBjaGFuZ2UgZXZlbnQgaGFuZGxl
cnMgY2FuIGNhdXNlIHVzIHRvIGxvc2Ugb3VyIGxhc3QgcmVmLgogICAgICAgICAvLyBJZiBhIGZv
Y3VzIGV2ZW50IGhhbmRsZXIgY2hhbmdlcyB0aGUgZm9jdXMgdG8gYSBkaWZmZXJlbnQgbm9kZSBp
dAogICAgICAgICAvLyBkb2VzIG5vdCBtYWtlIHNlbnNlIHRvIGNvbnRpbnVlIGFuZCB1cGRhdGUg
YXBwZWFyZW5jZS4KLSAgICAgICAgaWYgKCFwYWdlLT5mb2N1c0NvbnRyb2xsZXIoKS5zZXRGb2N1
c2VkRWxlbWVudChuZXdUYXJnZXQuZ2V0KCksICpkb2N1bWVudC0+ZnJhbWUoKSwgZGlyZWN0aW9u
KSkKKyAgICAgICAgaWYgKCFwYWdlLT5mb2N1c0NvbnRyb2xsZXIoKS5zZXRGb2N1c2VkRWxlbWVu
dChuZXdUYXJnZXQuZ2V0KCksICpkb2N1bWVudC0+ZnJhbWUoKSwgb3B0aW9ucy5kaXJlY3Rpb24p
KQogICAgICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIG5ld1RhcmdldC0+cmV2ZWFsRm9j
dXNlZEVsZW1lbnQocmVzdG9yYXRpb25Nb2RlKTsKKyAgICBpZiAoIW9wdGlvbnMucHJldmVudFNj
cm9sbCkKKyAgICAgICAgbmV3VGFyZ2V0LT5yZXZlYWxGb2N1c2VkRWxlbWVudChvcHRpb25zLnNl
bGVjdGlvblJlc3RvcmF0aW9uTW9kZSk7CiB9CiAKIHZvaWQgRWxlbWVudDo6cmV2ZWFsRm9jdXNl
ZEVsZW1lbnQoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlIHNlbGVjdGlvbk1vZGUpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvZG9tL0Vs
ZW1lbnQuaAppbmRleCA5NmJkNzYwM2ZlZDc0MWU5MjcxZDliYjVhMmVhNjE4YzQwNzk4NDNjLi41
MGI1YjhjYmZmNmU3ZGExYmQ4MmIyMGFkM2JkNWVhMWRhZWJhNmQ2IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9kb20vRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50
LmgKQEAgLTI3LDYgKzI3LDcgQEAKICNpbmNsdWRlICJBWFRleHRTdGF0ZUNoYW5nZUludGVudC5o
IgogI2luY2x1ZGUgIkRvY3VtZW50LmgiCiAjaW5jbHVkZSAiRWxlbWVudERhdGEuaCIKKyNpbmNs
dWRlICJGb2N1c09wdGlvbnMuaCIKICNpbmNsdWRlICJIVE1MTmFtZXMuaCIKICNpbmNsdWRlICJT
Y3JvbGxUeXBlcy5oIgogI2luY2x1ZGUgIlNoYWRvd1Jvb3RJbml0LmgiCkBAIC0zOTksNyArNDAw
LDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgU3RyaW5nIHRhcmdldCgpIGNvbnN0IHsgcmV0dXJu
IFN0cmluZygpOyB9CiAKICAgICBzdGF0aWMgQVhUZXh0U3RhdGVDaGFuZ2VJbnRlbnQgZGVmYXVs
dEZvY3VzVGV4dFN0YXRlQ2hhbmdlSW50ZW50KCkgeyByZXR1cm4gQVhUZXh0U3RhdGVDaGFuZ2VJ
bnRlbnQoQVhUZXh0U3RhdGVDaGFuZ2VUeXBlU2VsZWN0aW9uTW92ZSwgQVhUZXh0U2VsZWN0aW9u
IHsgQVhUZXh0U2VsZWN0aW9uRGlyZWN0aW9uRGlzY29udGlndW91cywgQVhUZXh0U2VsZWN0aW9u
R3JhbnVsYXJpdHlVbmtub3duLCB0cnVlIH0pOyB9Ci0gICAgdmlydHVhbCB2b2lkIGZvY3VzKFNl
bGVjdGlvblJlc3RvcmF0aW9uTW9kZSA9IFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZTo6UmVzdG9y
ZU9yU2VsZWN0QWxsLCBGb2N1c0RpcmVjdGlvbiA9IEZvY3VzRGlyZWN0aW9uOjpOb25lKTsKKyAg
ICB2aXJ0dWFsIHZvaWQgZm9jdXMoY29uc3QgRm9jdXNPcHRpb25zJiA9IHsgfSk7CiAgICAgdm9p
ZCByZXZlYWxGb2N1c2VkRWxlbWVudChTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGUpOwogICAgIHZp
cnR1YWwgUmVmUHRyPEVsZW1lbnQ+IGZvY3VzQXBwZWFyYW5jZVVwZGF0ZVRhcmdldCgpOwogICAg
IHZpcnR1YWwgdm9pZCB1cGRhdGVGb2N1c0FwcGVhcmFuY2UoU2VsZWN0aW9uUmVzdG9yYXRpb25N
b2RlLCBTZWxlY3Rpb25SZXZlYWxNb2RlID0gU2VsZWN0aW9uUmV2ZWFsTW9kZTo6UmV2ZWFsKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Gb2N1c09wdGlvbnMuaCBiL1NvdXJjZS9X
ZWJDb3JlL2RvbS9Gb2N1c09wdGlvbnMuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40YTFjOWIzZjAyNzQzMGQzYWZj
Njk3NjY0NmYxYTA1ZTY4ZGM4M2Y2Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUv
ZG9tL0ZvY3VzT3B0aW9ucy5oCkBAIC0wLDAgKzEsMzggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMp
IDIwMjAgSWdhbGlhIFMuTC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQK
KyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dp
bmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3Vy
Y2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAy
LiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3Zl
IGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Ig
b3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBU
SElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkK
KyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJ
TiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxF
IEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1Q
TEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExP
U1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9O
KSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBV
U0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlICJGb2N1
c0RpcmVjdGlvbi5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK3N0cnVjdCBGb2N1c09wdGlv
bnMgeworICAgIFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZSBzZWxlY3Rpb25SZXN0b3JhdGlvbk1v
ZGUgeyBTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGU6OlJlc3RvcmVPclNlbGVjdEFsbCB9OworICAg
IEZvY3VzRGlyZWN0aW9uIGRpcmVjdGlvbiB7IEZvY3VzRGlyZWN0aW9uOjpOb25lIH07CisgICAg
Ym9vbCBwcmV2ZW50U2Nyb2xsIHsgZmFsc2UgfTsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Gb2N1c09wdGlvbnMuaWRsIGIvU291
cmNlL1dlYkNvcmUvZG9tL0ZvY3VzT3B0aW9ucy5pZGwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMTczOTAyMzk3NDg0
M2VlZjA2NDJlMDU3ZDYzZDBjMmI4MTc4YmUwYwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2RvbS9Gb2N1c09wdGlvbnMuaWRsCkBAIC0wLDAgKzEsMjggQEAKKy8qCisgKiBDb3B5
cmlnaHQgKEMpIDIwMjAgSWdhbGlhIFMuTC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBS
ZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9y
IHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRo
ZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9u
cyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2Ug
dGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlv
biBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4K
KyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycn
IEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB
QklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NM
QUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMg
QkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwK
KyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworZGljdGlvbmFyeSBGb2N1c09wdGlv
bnMgeworICAgYm9vbGVhbiBwcmV2ZW50U2Nyb2xsID0gZmFsc2U7Cit9OwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUNvbnRyb2xFbGVtZW50LmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTEZvcm1Db250cm9sRWxlbWVudC5jcHAKaW5kZXggYzNjNmFmZmIzYjVm
YTk0NWVkYzFiMTNiNDAyY2ViNDYxYjFmODY1Yi4uNjZhNmE4MzdjNjU2OTIwZmM3NDU4NTBhMzY2
YTQ2Y2RiNDc1N2JjNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUNv
bnRyb2xFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtQ29udHJv
bEVsZW1lbnQuY3BwCkBAIC0yNTQsMTEgKzI1NCwxMSBAQCB2b2lkIEhUTUxGb3JtQ29udHJvbEVs
ZW1lbnQ6OmRpZEF0dGFjaFJlbmRlcmVycygpCiAgICAgICAgIGF1dG8gZnJhbWVWaWV3ID0gbWFr
ZVJlZlB0cihkb2N1bWVudCgpLnZpZXcoKSk7CiAgICAgICAgIGlmIChmcmFtZVZpZXcgJiYgZnJh
bWVWaWV3LT5sYXlvdXRDb250ZXh0KCkuaXNJbkxheW91dCgpKSB7CiAgICAgICAgICAgICBmcmFt
ZVZpZXctPnF1ZXVlUG9zdExheW91dENhbGxiYWNrKFtlbGVtZW50XSB7Ci0gICAgICAgICAgICAg
ICAgZWxlbWVudC0+Zm9jdXMoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlOjpQbGFjZUNhcmV0QXRT
dGFydCk7CisgICAgICAgICAgICAgICAgZWxlbWVudC0+Zm9jdXMoeyBTZWxlY3Rpb25SZXN0b3Jh
dGlvbk1vZGU6OlBsYWNlQ2FyZXRBdFN0YXJ0IH0pOwogICAgICAgICAgICAgfSk7CiAgICAgICAg
IH0gZWxzZSB7CiAgICAgICAgICAgICBTdHlsZTo6cXVldWVQb3N0UmVzb2x1dGlvbkNhbGxiYWNr
KFtlbGVtZW50XSB7Ci0gICAgICAgICAgICAgICAgZWxlbWVudC0+Zm9jdXMoU2VsZWN0aW9uUmVz
dG9yYXRpb25Nb2RlOjpQbGFjZUNhcmV0QXRTdGFydCk7CisgICAgICAgICAgICAgICAgZWxlbWVu
dC0+Zm9jdXMoeyBTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGU6OlBsYWNlQ2FyZXRBdFN0YXJ0IH0p
OwogICAgICAgICAgICAgfSk7CiAgICAgICAgIH0KICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxMYWJlbEVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9I
VE1MTGFiZWxFbGVtZW50LmNwcAppbmRleCBlNWM0MzExMGFhODE2ZDVkYWYyNDM2YmIzM2Y0M2Fk
YjE3NjkzNjI1Li45ZGMyMDdlYjc2ZDU0N2EzYWRiOWUxN2M5YzBmY2M1OGE2NWU1YTZiIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMYWJlbEVsZW1lbnQuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTExhYmVsRWxlbWVudC5jcHAKQEAgLTE3MiwyMSArMTcyLDIx
IEBAIGJvb2wgSFRNTExhYmVsRWxlbWVudDo6d2lsbFJlc3BvbmRUb01vdXNlQ2xpY2tFdmVudHMo
KQogICAgIHJldHVybiAoZWxlbWVudCAmJiBlbGVtZW50LT53aWxsUmVzcG9uZFRvTW91c2VDbGlj
a0V2ZW50cygpKSB8fCBIVE1MRWxlbWVudDo6d2lsbFJlc3BvbmRUb01vdXNlQ2xpY2tFdmVudHMo
KTsKIH0KIAotdm9pZCBIVE1MTGFiZWxFbGVtZW50Ojpmb2N1cyhTZWxlY3Rpb25SZXN0b3JhdGlv
bk1vZGUgcmVzdG9yYXRpb25Nb2RlLCBGb2N1c0RpcmVjdGlvbiBkaXJlY3Rpb24pCit2b2lkIEhU
TUxMYWJlbEVsZW1lbnQ6OmZvY3VzKGNvbnN0IEZvY3VzT3B0aW9ucyYgb3B0aW9ucykKIHsKICAg
ICBSZWY8SFRNTExhYmVsRWxlbWVudD4gcHJvdGVjdGVkVGhpcygqdGhpcyk7CiAgICAgaWYgKGRv
Y3VtZW50KCkuaGF2ZVN0eWxlc2hlZXRzTG9hZGVkKCkpIHsKICAgICAgICAgZG9jdW1lbnQoKS51
cGRhdGVMYXlvdXQoKTsKICAgICAgICAgaWYgKGlzRm9jdXNhYmxlKCkpIHsKICAgICAgICAgICAg
IC8vIFRoZSB2YWx1ZSBvZiByZXN0b3JhdGlvbk1vZGUgaXMgbm90IHVzZWQgZm9yIGxhYmVsIGVs
ZW1lbnRzIGFzIGl0IGRvZXNuJ3Qgb3ZlcnJpZGUgdXBkYXRlRm9jdXNBcHBlYXJhbmNlLgotICAg
ICAgICAgICAgRWxlbWVudDo6Zm9jdXMocmVzdG9yYXRpb25Nb2RlLCBkaXJlY3Rpb24pOworICAg
ICAgICAgICAgRWxlbWVudDo6Zm9jdXMob3B0aW9ucyk7CiAgICAgICAgICAgICByZXR1cm47CiAg
ICAgICAgIH0KICAgICB9CiAKICAgICAvLyBUbyBtYXRjaCBvdGhlciBicm93c2VycywgYWx3YXlz
IHJlc3RvcmUgcHJldmlvdXMgc2VsZWN0aW9uLgogICAgIGlmIChhdXRvIGVsZW1lbnQgPSBjb250
cm9sKCkpCi0gICAgICAgIGVsZW1lbnQtPmZvY3VzKFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZTo6
UmVzdG9yZU9yU2VsZWN0QWxsLCBkaXJlY3Rpb24pOworICAgICAgICBlbGVtZW50LT5mb2N1cyh7
IFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZTo6UmVzdG9yZU9yU2VsZWN0QWxsLCBvcHRpb25zLmRp
cmVjdGlvbiB9KTsKIH0KIAogYm9vbCBIVE1MTGFiZWxFbGVtZW50OjphY2Nlc3NLZXlBY3Rpb24o
Ym9vbCBzZW5kTW91c2VFdmVudHMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxMYWJlbEVsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExhYmVsRWxlbWVudC5o
CmluZGV4IDY4NDlkYjkyYjNjZGQ5YzlkZGJkMTFmNmQ0MzU4ZjU5ZTEyMTgyMDIuLjg0YzY5YzE3
NTU1ZjlhZTM2NTExZjBiNjU4ODkwMTJmYmJmOWZmMmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2h0bWwvSFRNTExhYmVsRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRN
TExhYmVsRWxlbWVudC5oCkBAIC01MSw3ICs1MSw3IEBAIHByaXZhdGU6CiAgICAgLy8gT3ZlcnJp
ZGRlbiB0byBlaXRoZXIgY2xpY2soKSBvciBmb2N1cygpIHRoZSBjb3JyZXNwb25kaW5nIGNvbnRy
b2wuCiAgICAgdm9pZCBkZWZhdWx0RXZlbnRIYW5kbGVyKEV2ZW50JikgZmluYWw7CiAKLSAgICB2
b2lkIGZvY3VzKFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZSwgRm9jdXNEaXJlY3Rpb24pIGZpbmFs
OworICAgIHZvaWQgZm9jdXMoY29uc3QgRm9jdXNPcHRpb25zJikgZmluYWw7CiAKICAgICBib29s
IGlzSW50ZXJhY3RpdmVDb250ZW50KCkgY29uc3QgZmluYWwgeyByZXR1cm4gdHJ1ZTsgfQogfTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExlZ2VuZEVsZW1lbnQuY3BwIGIv
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGVnZW5kRWxlbWVudC5jcHAKaW5kZXggZWQwYTQwMTFj
YTc0NTZjNGUyNDFlMTBjNWE2ZGMwMjczMTdkNjgyZC4uNWNlZWE2MTBiMDU0MmM0MzI1MTkxODkw
NWZlYzJjMDk0Yzk4MGYzNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGVn
ZW5kRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGVnZW5kRWxlbWVu
dC5jcHAKQEAgLTU3LDE5ICs1NywxOSBAQCBSZWZQdHI8SFRNTEZvcm1Db250cm9sRWxlbWVudD4g
SFRNTExlZ2VuZEVsZW1lbnQ6OmFzc29jaWF0ZWRDb250cm9sKCkKICAgICByZXR1cm4gZGVzY2Vu
ZGFudHNPZlR5cGU8SFRNTEZvcm1Db250cm9sRWxlbWVudD4oKmVuY2xvc2luZ0ZpZWxkc2V0KS5m
aXJzdCgpOwogfQogCi12b2lkIEhUTUxMZWdlbmRFbGVtZW50Ojpmb2N1cyhTZWxlY3Rpb25SZXN0
b3JhdGlvbk1vZGUgcmVzdG9yYXRpb25Nb2RlLCBGb2N1c0RpcmVjdGlvbiBkaXJlY3Rpb24pCit2
b2lkIEhUTUxMZWdlbmRFbGVtZW50Ojpmb2N1cyhjb25zdCBGb2N1c09wdGlvbnMmIG9wdGlvbnMp
CiB7CiAgICAgaWYgKGRvY3VtZW50KCkuaGF2ZVN0eWxlc2hlZXRzTG9hZGVkKCkpIHsKICAgICAg
ICAgZG9jdW1lbnQoKS51cGRhdGVMYXlvdXRJZ25vcmVQZW5kaW5nU3R5bGVzaGVldHMoKTsKICAg
ICAgICAgaWYgKGlzRm9jdXNhYmxlKCkpIHsKLSAgICAgICAgICAgIEVsZW1lbnQ6OmZvY3VzKHJl
c3RvcmF0aW9uTW9kZSwgZGlyZWN0aW9uKTsKKyAgICAgICAgICAgIEVsZW1lbnQ6OmZvY3VzKHsg
b3B0aW9ucy5zZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGUsIG9wdGlvbnMuZGlyZWN0aW9uIH0pOwog
ICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICB9CiAgICAgfQogCiAgICAgLy8gVG8gbWF0Y2gg
b3RoZXIgYnJvd3NlcnMnIGJlaGF2aW9yLCBuZXZlciByZXN0b3JlIHByZXZpb3VzIHNlbGVjdGlv
bi4KICAgICBpZiAoYXV0byBjb250cm9sID0gYXNzb2NpYXRlZENvbnRyb2woKSkKLSAgICAgICAg
Y29udHJvbC0+Zm9jdXMoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlOjpTZWxlY3RBbGwsIGRpcmVj
dGlvbik7CisgICAgICAgIGNvbnRyb2wtPmZvY3VzKHsgU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2Rl
OjpTZWxlY3RBbGwsIG9wdGlvbnMuZGlyZWN0aW9uIH0pOwogfQogCiBib29sIEhUTUxMZWdlbmRF
bGVtZW50OjphY2Nlc3NLZXlBY3Rpb24oYm9vbCBzZW5kTW91c2VFdmVudHMpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMZWdlbmRFbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxMZWdlbmRFbGVtZW50LmgKaW5kZXggN2RjYjFiODUwYTI3ZTNiN2FjYjgwMjg3
YzU3NGY4MzAyZmNhNjAyZi4uOTMyMTU5MDUwMzkzZTNjZWY2MWQyMzlmZDUwOGJlYzc1ZWFlYzU3
YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGVnZW5kRWxlbWVudC5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExlZ2VuZEVsZW1lbnQuaApAQCAtNDMsNyArNDMs
NyBAQCBwcml2YXRlOgogICAgIFJlZlB0cjxIVE1MRm9ybUNvbnRyb2xFbGVtZW50PiBhc3NvY2lh
dGVkQ29udHJvbCgpOwogCiAgICAgYm9vbCBhY2Nlc3NLZXlBY3Rpb24oYm9vbCBzZW5kTW91c2VF
dmVudHMpIGZpbmFsOwotICAgIHZvaWQgZm9jdXMoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlLCBG
b2N1c0RpcmVjdGlvbikgZmluYWw7CisgICAgdm9pZCBmb2N1cyhjb25zdCBGb2N1c09wdGlvbnMm
KSBmaW5hbDsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvSFRNTE9yRm9yZWlnbkVsZW1lbnQuaWRsIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MT3JGb3JlaWduRWxlbWVudC5pZGwKaW5kZXggOWQ2MmU0ZDg0MTc3ODQxNmI1MjQx
ZDk2YmQ4MDdmOTQ2NmYzY2ExNC4uOTEzNDYwOWU5ZDIxZmVjMzlhOWVmMGY0Y2M1ZGY1ZDI2YzUz
ZjM0NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MT3JGb3JlaWduRWxlbWVu
dC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MT3JGb3JlaWduRWxlbWVudC5pZGwK
QEAgLTM0LDcgKzM0LDcgQEAgaW50ZXJmYWNlIG1peGluIEhUTUxPckZvcmVpZ25FbGVtZW50IHsK
ICAgICAvLyBGSVhNRTogSW1wbGVtZW50ICdhdXRvZm9jdXMnLgogICAgIC8vIFtDRVJlYWN0aW9u
c10gYXR0cmlidXRlIGJvb2xlYW4gYXV0b2ZvY3VzOwogICAgIFtDRVJlYWN0aW9ucywgSW1wbGVt
ZW50ZWRBcz10YWJJbmRleEZvckJpbmRpbmdzXSBhdHRyaWJ1dGUgbG9uZyB0YWJJbmRleDsKLSAg
ICAvLyBGSU1YRTogZm9jdXMoKSBpcyBzcGVjaWZpZWQgdG8gdGFrZSBhbiBvcHRpb25hbCBGb2N1
c09wdGlvbnMuIEltcGxlbWVudCB0aGF0LgotICAgIHVuZGVmaW5lZCBmb2N1cygpOworICAgIHVu
ZGVmaW5lZCBmb2N1cyhvcHRpb25hbCBGb2N1c09wdGlvbnMgb3B0aW9ucyk7CiAgICAgdW5kZWZp
bmVkIGJsdXIoKTsKIH07CisKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSW5wdXRU
eXBlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSW5wdXRUeXBlLmNwcAppbmRleCA3ZWY0Zjc5
ZjcwYmMyMzk3NGJkNWQ5NGUyMmFiZTEzNzdiMjU5ZjUyLi5hMmM3MDI1YTYxMzZkZmU3YTZlM2Ix
NzE3MDg2ODUxMTMxM2Y5MmQzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0lucHV0
VHlwZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9JbnB1dFR5cGUuY3BwCkBAIC02Mzgs
NyArNjM4LDcgQEAgdm9pZCBJbnB1dFR5cGU6OmhhbmRsZUJsdXJFdmVudCgpCiBib29sIElucHV0
VHlwZTo6YWNjZXNzS2V5QWN0aW9uKGJvb2wpCiB7CiAgICAgQVNTRVJUKGVsZW1lbnQoKSk7Ci0g
ICAgZWxlbWVudCgpLT5mb2N1cyhTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGU6OlNlbGVjdEFsbCk7
CisgICAgZWxlbWVudCgpLT5mb2N1cyh7IFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZTo6U2VsZWN0
QWxsIH0pOwogICAgIHJldHVybiBmYWxzZTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGFnZS9Gb2N1c0NvbnRyb2xsZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Gb2N1c0Nv
bnRyb2xsZXIuY3BwCmluZGV4IDA3YWJhZDA2MGUwMTNlYjhiN2FjNTYwMGRkNDQxOTZkMmIxYWE5
ZmEuLjlhZDdjNDE3NjIyYTU5Y2U5OTAxYmQxN2ExNzhhY2QyMWFhOGIzZWEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvRm9jdXNDb250cm9sbGVyLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL0ZvY3VzQ29udHJvbGxlci5jcHAKQEAgLTUzMyw3ICs1MzMsNyBAQCBib29sIEZv
Y3VzQ29udHJvbGxlcjo6YWR2YW5jZUZvY3VzSW5Eb2N1bWVudE9yZGVyKEZvY3VzRGlyZWN0aW9u
IGRpcmVjdGlvbiwgS2V5YgogICAgICAgICB9CiAgICAgfQogCi0gICAgZWxlbWVudC0+Zm9jdXMo
U2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlOjpTZWxlY3RBbGwsIGRpcmVjdGlvbik7CisgICAgZWxl
bWVudC0+Zm9jdXMoeyBTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGU6OlNlbGVjdEFsbCwgZGlyZWN0
aW9uIH0pOwogICAgIHJldHVybiB0cnVlOwogfQogCkBAIC0xMTA3LDcgKzExMDcsNyBAQCBib29s
IEZvY3VzQ29udHJvbGxlcjo6YWR2YW5jZUZvY3VzRGlyZWN0aW9uYWxseUluQ29udGFpbmVyKE5v
ZGUqIGNvbnRhaW5lciwgY29ucwogICAgIEVsZW1lbnQqIGVsZW1lbnQgPSBkb3duY2FzdDxFbGVt
ZW50Pihmb2N1c0NhbmRpZGF0ZS5mb2N1c2FibGVOb2RlKTsKICAgICBBU1NFUlQoZWxlbWVudCk7
CiAKLSAgICBlbGVtZW50LT5mb2N1cyhTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGU6OlNlbGVjdEFs
bCwgZGlyZWN0aW9uKTsKKyAgICBlbGVtZW50LT5mb2N1cyh7IFNlbGVjdGlvblJlc3RvcmF0aW9u
TW9kZTo6U2VsZWN0QWxsLCBkaXJlY3Rpb24gfSk7CiAgICAgcmV0dXJuIHRydWU7CiB9CiAKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpp
bmRleCBiM2IyOTg2NTA5ZWU4YThjYWEwYzczNTM3NGY3NzZkNjIzY2E5NDhkLi45NzIwODVlMGM0
NWY3MDhjOWY0YjM4ZTU2OTJkM2M0YzlhY2QxNDM1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIw
MjEtMDItMTYgIFJvYiBCdWlzICA8cmJ1aXNAaWdhbGlhLmNvbT4KKworICAgICAgICBFbmFibGUg
YWJpbGl0eSB0byBwcmV2ZW50IHNjcm9sbGluZyBpbiBFbGVtZW50LmZvY3VzKCkKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3ODU4MworCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRoZSB0ZXN0IHByZXZlbnRT
Y3JvbGwtdGV4dGFyZWEuaHRtbCBub3cgcGFzc2VzIG9uIGFsbCBwbGF0Zm9ybXMuCisKKyAgICAg
ICAgKiBwbGF0Zm9ybS9pb3Mtd2syL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRt
bC9pbnRlcmFjdGlvbi9mb2N1cy9wcm9jZXNzaW5nLW1vZGVsL3ByZXZlbnRTY3JvbGwtdGV4dGFy
ZWEtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIHBsYXRmb3JtL21hYy13azEvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2ludGVyYWN0aW9uL2ZvY3VzL3Byb2Nl
c3NpbmctbW9kZWwvcHJldmVudFNjcm9sbC10ZXh0YXJlYS1leHBlY3RlZC50eHQ6IFJlbW92ZWQu
CisKIDIwMjEtMDItMTUgIEFsZXhleSBTaHZheWthICA8c2h2YWlrYWxlc2hAZ21haWwuY29tPgog
CiAgICAgICAgIFtKU0NdIFByb3BlcnR5U2xvdCBzaG91bGQgYWxsb3cgcGFzc2luZyBjdXN0b20g
c2V0dGVycwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKaW5kZXggODcyN2JjNzQ2M2JlOWFj
YWI5MjAxMmQ3YmU1MWUxYWYzNDg2ZWNhNS4uMGYwYTVhYzE0MDZhMGQzMDY5NmYyMzYwNjQ0NjI4
MjRkMzNiZDI2ZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxv
ZworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYg
QEAKKzIwMjEtMDItMTYgIFJvYiBCdWlzICA8cmJ1aXNAaWdhbGlhLmNvbT4KKworICAgICAgICBF
bmFibGUgYWJpbGl0eSB0byBwcmV2ZW50IHNjcm9sbGluZyBpbiBFbGVtZW50LmZvY3VzKCkKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3ODU4MworCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVwZGF0ZSBpbXBy
b3ZlZCB0ZXN0IHJlc3VsdC4KKworICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2lu
dGVyYWN0aW9uL2ZvY3VzL3Byb2Nlc3NpbmctbW9kZWwvcHJldmVudFNjcm9sbC1uZXN0ZWQtc2Ny
b2xsLWVsZW1lbnRzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3Jt
LXRlc3RzL2h0bWwvaW50ZXJhY3Rpb24vZm9jdXMvcHJvY2Vzc2luZy1tb2RlbC9wcmV2ZW50U2Ny
b2xsLW5lc3RlZC1zY3JvbGwtZWxlbWVudHMuaHRtbDogQWRkZWQuCisgICAgICAgICogd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvaW50ZXJhY3Rpb24vZm9jdXMvcHJvY2Vzc2luZy1tb2RlbC9wcmV2
ZW50U2Nyb2xsLXRleHRhcmVhLWV4cGVjdGVkLnR4dDoKKwogMjAyMS0wMi0xNSAgQWxleGV5IFNo
dmF5a2EgIDxzaHZhaWthbGVzaEBnbWFpbC5jb20+CiAKICAgICAgICAgW0pTQ10gUHJvcGVydHlT
bG90IHNob3VsZCBhbGxvdyBwYXNzaW5nIGN1c3RvbSBzZXR0ZXJzCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvaW50ZXJhY3Rpb24v
Zm9jdXMvcHJvY2Vzc2luZy1tb2RlbC9wcmV2ZW50U2Nyb2xsLW5lc3RlZC1zY3JvbGwtZWxlbWVu
dHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9odG1sL2ludGVyYWN0aW9uL2ZvY3VzL3Byb2Nlc3NpbmctbW9kZWwvcHJldmVudFNjcm9s
bC1uZXN0ZWQtc2Nyb2xsLWVsZW1lbnRzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44YTFkOWI5
NWFlZWZmMTdkZTliMGFmYjQ1Y2Y3ZDgyNzk1NWNjMGUxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2ludGVyYWN0aW9u
L2ZvY3VzL3Byb2Nlc3NpbmctbW9kZWwvcHJldmVudFNjcm9sbC1uZXN0ZWQtc2Nyb2xsLWVsZW1l
bnRzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEyIEBACisxXzEKKzFfMgorMV8zCisyXzEKKzJf
MgorMl8zCiszXzEKKzNfMgorM18zCisKK1BBU1MgZm9jdXMob3B0aW9ucykgLSBwcmV2ZW50U2Ny
b2xsIG9uIG5lc3RlZCBzY3JvbGwgZWxlbWVudHMKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2ludGVyYWN0aW9uL2ZvY3VzL3By
b2Nlc3NpbmctbW9kZWwvcHJldmVudFNjcm9sbC1uZXN0ZWQtc2Nyb2xsLWVsZW1lbnRzLmh0bWwg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvaW50ZXJh
Y3Rpb24vZm9jdXMvcHJvY2Vzc2luZy1tb2RlbC9wcmV2ZW50U2Nyb2xsLW5lc3RlZC1zY3JvbGwt
ZWxlbWVudHMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hN2FlNzZmNzMzYTM2M2NhMjliYjNhZTg3ZjMxOTcy
Mjc0NGVhOTk3Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9odG1sL2ludGVyYWN0aW9uL2ZvY3VzL3Byb2Nlc3NpbmctbW9kZWwv
cHJldmVudFNjcm9sbC1uZXN0ZWQtc2Nyb2xsLWVsZW1lbnRzLmh0bWwKQEAgLTAsMCArMSw2MiBA
QAorPCFkb2N0eXBlIGh0bWw+Cis8dGl0bGU+Zm9jdXMob3B0aW9ucykgLSBwcmV2ZW50U2Nyb2xs
IG9uIG5lc3RlZCBzY3JvbGwgZWxlbWVudHM8L3RpdGxlPgorPHNjcmlwdCBzcmM9L3Jlc291cmNl
cy90ZXN0aGFybmVzcy5qcz48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPS9yZXNvdXJjZXMvdGVzdGhh
cm5lc3NyZXBvcnQuanM+PC9zY3JpcHQ+Cis8c3R5bGU+CisgIC5zY3JvbGxCb3ggeyB3aWR0aDog
NDAwcHg7IGhlaWdodDogMzAwcHg7IGJvcmRlcjogMXB4IHNvbGlkIH0KKyAgLmJpZ2JveCB7IHdp
ZHRoOiAzODBweDsgaGVpZ2h0OiAzMDBweDsgYm9yZGVyOiAxcHggc29saWQgfQorICAuYm94IHsg
d2lkdGg6IDM4MHB4OyBoZWlnaHQ6IDE1MHB4OyBib3JkZXI6IDFweCBzb2xpZCB9Cis8L3N0eWxl
PgorPGRpdiBjbGFzcz0ic2Nyb2xsQm94IiBzdHlsZT0ib3ZlcmZsb3cteTogc2Nyb2xsOyI+Cisg
IDxkaXYgY2xhc3M9ImJpZ2JveCIgaWQ9IjEiIHN0eWxlPSJvdmVyZmxvdy15OiBzY3JvbGw7IiB0
YWJpbmRleD0xPgorICAgIDxkaXYgY2xhc3M9ImJveCIgaWQ9IjFfMSIgdGFiaW5kZXg9MT4xXzE8
L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJib3giIGlkPSIxXzIiIHRhYmluZGV4PTE+MV8yPC9kaXY+
CisgICAgPGRpdiBjbGFzcz0iYm94IiBpZD0iMV8zIiB0YWJpbmRleD0xPjFfMzwvZGl2PgorICA8
L2Rpdj4KKyAgPGRpdiBjbGFzcz0iYmlnYm94IiBpZD0iMiIgc3R5bGU9Im92ZXJmbG93LXk6IHNj
cm9sbDsiIHRhYmluZGV4PTE+CisgICAgPGRpdiBjbGFzcz0iYm94IiBpZD0iMl8xIiB0YWJpbmRl
eD0xPjJfMTwvZGl2PgorICAgIDxkaXYgY2xhc3M9ImJveCIgaWQ9IjJfMiIgdGFiaW5kZXg9MT4y
XzI8L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJib3giIGlkPSIyXzMiIHRhYmluZGV4PTE+Ml8zPC9k
aXY+CisgIDwvZGl2PgorICA8ZGl2IGNsYXNzPSJiaWdib3giIGlkPSIzIiBzdHlsZT0ib3ZlcmZs
b3cteTogc2Nyb2xsOyIgdGFiaW5kZXg9MT4KKyAgICA8ZGl2IGNsYXNzPSJib3giIGlkPSIzXzEi
IHRhYmluZGV4PTE+M18xPC9kaXY+CisgICAgPGRpdiBjbGFzcz0iYm94IiBpZD0iM18yIiB0YWJp
bmRleD0xPjNfMjwvZGl2PgorICAgIDxkaXYgY2xhc3M9ImJveCIgaWQ9IjNfMyIgdGFiaW5kZXg9
MT4zXzM8L2Rpdj4KKyAgPC9kaXY+Cis8L2Rpdj4KKzxzY3JpcHQ+Citwcm9taXNlX3Rlc3QoYXN5
bmMgZnVuY3Rpb24odCkgeworICBhd2FpdCBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHdpbmRvdy5h
ZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgcmVzb2x2ZSkpOworICBsZXQgZGl2Ml8yID0gZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoIjJfMiIpOworICBkaXYyXzIuZm9jdXMoeyBwcmV2ZW50U2Nyb2xs
OiB0cnVlIH0pOworCisgIGF3YWl0IG5ldyBQcm9taXNlKHJlc29sdmUgPT4geworICAgIHJlcXVl
c3RBbmltYXRpb25GcmFtZSgoKSA9PiByZXF1ZXN0QW5pbWF0aW9uRnJhbWUocmVzb2x2ZSkpOwor
ICB9KTsKKworICBhc3NlcnRfZXF1YWxzKGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQsIGRpdjJfMiwg
YGJveCAyXzI6IHNob3VsZCBoYXZlIGJlZW4gZm9jdXNlZGApOworICBhc3NlcnRfZXF1YWxzKGRp
djJfMi5zY3JvbGxUb3AsIDAsICJib3ggMl8yOiBzaG91bGQgbm90IGhhdmUgc2Nyb2xsZWQiKTsK
KyAgYXNzZXJ0X2VxdWFscyhkaXYyXzIucGFyZW50Tm9kZS5zY3JvbGxUb3AsIDAsICJib3ggMl8y
OiBzaG91bGQgbm90IGhhdmUgc2Nyb2xsZWQgYW5jZXN0b3IiKTsKKworICAvLyBSZXNldCBmb2N1
cworICBsZXQgZGl2MV8xID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIjFfMSIpOworICBkaXYx
XzEuZm9jdXMoKTsKKworICBhd2FpdCBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHsKKyAgICByZXF1
ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4gcmVxdWVzdEFuaW1hdGlvbkZyYW1lKHJlc29sdmUpKTsK
KyAgfSk7CisgIGFzc2VydF9lcXVhbHMoZG9jdW1lbnQuYWN0aXZlRWxlbWVudCwgZGl2MV8xLCBg
Ym94IDFfMTogc2hvdWxkIGhhdmUgYmVlbiBmb2N1c2VkYCk7CisKKyAgbGV0IGRpdjIgPSBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgiMiIpOworICBkaXYyLmZvY3VzKHsgcHJldmVudFNjcm9sbDog
dHJ1ZSB9KTsKKworICBhd2FpdCBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHsKKyAgICByZXF1ZXN0
QW5pbWF0aW9uRnJhbWUoKCkgPT4gcmVxdWVzdEFuaW1hdGlvbkZyYW1lKHJlc29sdmUpKTsKKyAg
fSk7CisKKyAgYXNzZXJ0X2VxdWFscyhkb2N1bWVudC5hY3RpdmVFbGVtZW50LCBkaXYyLCBgYm94
IDI6IHNob3VsZCBoYXZlIGJlZW4gZm9jdXNlZGApOworICBhc3NlcnRfZXF1YWxzKGRpdjIuc2Ny
b2xsVG9wLCAwLCAiYm94IDI6IHNob3VsZCBub3QgaGF2ZSBzY3JvbGxlZCIpOworICBhc3NlcnRf
ZXF1YWxzKGRpdjJfMi5zY3JvbGxUb3AsIDAsICJib3ggMl8yOiBzaG91bGQgbm90IGhhdmUgc2Ny
b2xsZWQiKTsKKyAgYXNzZXJ0X2VxdWFscyhkaXYyLnBhcmVudE5vZGUuc2Nyb2xsVG9wLCAwLCAi
Ym94IDI6IHNob3VsZCBub3QgaGF2ZSBzY3JvbGxlZCBhbmNlc3RvciIpOworfSk7Cis8L3Njcmlw
dD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvaHRtbC9pbnRlcmFjdGlvbi9mb2N1cy9wcm9jZXNzaW5nLW1vZGVsL3ByZXZlbnRTY3JvbGwt
dGV4dGFyZWEtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL2ludGVyYWN0aW9uL2ZvY3VzL3Byb2Nlc3NpbmctbW9kZWwvcHJldmVu
dFNjcm9sbC10ZXh0YXJlYS1leHBlY3RlZC50eHQKaW5kZXggMDhhYWZiMzE2MzYwODQ5MDg3OTgw
ZTAwNTA0MmQ3Yzg1YWRhODY1Yi4uYzczNGE2OWRlOWE1Y2ZmNWFkNTVlZWY5Y2RkMWQ2ZDJlZWNl
NmQzYSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9odG1sL2ludGVyYWN0aW9uL2ZvY3VzL3Byb2Nlc3NpbmctbW9kZWwvcHJldmVudFNjcm9s
bC10ZXh0YXJlYS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9odG1sL2ludGVyYWN0aW9uL2ZvY3VzL3Byb2Nlc3NpbmctbW9kZWwv
cHJldmVudFNjcm9sbC10ZXh0YXJlYS1leHBlY3RlZC50eHQKQEAgLTEsNCArMSw0IEBACiAKIAot
RkFJTCBwcmV2ZW50U2Nyb2xsOiB0cnVlIG9uIGEgdGV4dGFyZWEgZWxlbWVudCBhc3NlcnRfZXF1
YWxzOiBURVhUQVJFQTogU2hvdWxkIG5vdCBoYXZlIHNjcm9sbGVkIGFmdGVyIGEgY291cGxlIGV2
ZW50IGxvb3AgdGlja3MgZXhwZWN0ZWQgMCBidXQgZ290IDkyMAorUEFTUyBwcmV2ZW50U2Nyb2xs
OiB0cnVlIG9uIGEgdGV4dGFyZWEgZWxlbWVudAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS9pb3Mtd2syL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9pbnRl
cmFjdGlvbi9mb2N1cy9wcm9jZXNzaW5nLW1vZGVsL3ByZXZlbnRTY3JvbGwtdGV4dGFyZWEtZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zLXdrMi9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2h0bWwvaW50ZXJhY3Rpb24vZm9jdXMvcHJvY2Vzc2luZy1tb2RlbC9w
cmV2ZW50U2Nyb2xsLXRleHRhcmVhLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggYzczNGE2OWRlOWE1Y2ZmNWFkNTVlZWY5Y2RkMWQ2ZDJlZWNlNmQzYS4uMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS9pb3Mtd2syL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9pbnRlcmFj
dGlvbi9mb2N1cy9wcm9jZXNzaW5nLW1vZGVsL3ByZXZlbnRTY3JvbGwtdGV4dGFyZWEtZXhwZWN0
ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsNCArMCwwIEBACi0KLQotUEFTUyBwcmV2ZW50U2Ny
b2xsOiB0cnVlIG9uIGEgdGV4dGFyZWEgZWxlbWVudAotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS9tYWMtd2sxL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9p
bnRlcmFjdGlvbi9mb2N1cy9wcm9jZXNzaW5nLW1vZGVsL3ByZXZlbnRTY3JvbGwtdGV4dGFyZWEt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMS9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvaW50ZXJhY3Rpb24vZm9jdXMvcHJvY2Vzc2luZy1tb2Rl
bC9wcmV2ZW50U2Nyb2xsLXRleHRhcmVhLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggNTJhYmFiYmZiZDcyN2VjZGZiYmNkZGQ2Y2M4ZTEwMGQzZGQ5Y2FmNS4uMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS9tYWMtd2sxL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9pbnRl
cmFjdGlvbi9mb2N1cy9wcm9jZXNzaW5nLW1vZGVsL3ByZXZlbnRTY3JvbGwtdGV4dGFyZWEtZXhw
ZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsNCArMCwwIEBACi0KLQotRkFJTCBwcmV2ZW50
U2Nyb2xsOiB0cnVlIG9uIGEgdGV4dGFyZWEgZWxlbWVudCBhc3NlcnRfZXF1YWxzOiBURVhUQVJF
QTogU2hvdWxkIG5vdCBoYXZlIHNjcm9sbGVkIGV4cGVjdGVkIDAgYnV0IGdvdCA5MjAKLQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>423926</attachid>
            <date>2021-03-22 13:25:38 -0700</date>
            <delta_ts>2021-03-22 15:30:00 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-178583-20210322212535.patch</filename>
            <type>text/plain</type>
            <size>32517</size>
            <attacher name="Rob Buis">rbuis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc0Nzg2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTdjYzhkMDhiOWY5MTA2
MDAyYzA0MjlkNTBmZTk1YmMyYzhlZDQ5YS4uM2Q0YmNjZjFlOGIzNThlNGEyOTA0YTNiYjlkMjBl
NTExOGI3ZTEwYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ5IEBACisyMDIxLTAzLTIyICBSb2Ig
QnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgRW5hYmxlIGFiaWxpdHkgdG8gcHJl
dmVudCBzY3JvbGxpbmcgaW4gRWxlbWVudC5mb2N1cygpCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzg1ODMKKworICAgICAgICBSZXZpZXdlZCBieSBT
aW1vbiBGcmFzZXIuCisKKyAgICAgICAgQWRkIEZvY3VzT3B0aW9ucyBwYXJhbWV0ZXIgdG8gdGhl
IGZvY3VzIG1ldGhvZCBbMV0gYm90aAorICAgICAgICB0byB0aGUgSURMIGFzIHRoZSBDKysgc2lk
ZS4gQ2hhbmdlIEVsZW1lbnQuZm9jdXMgdG8gbm90CisgICAgICAgIHNjcm9sbCBpZiBGb2N1c09w
dGlvbnMucHJldmVudFNjcm9sbCBpcyB0cnVlLgorCisgICAgICAgIEJlaGF2aW9yIG1hdGNoZXMg
Q2hyb21lIGFuZCBGaXJlZm94LgorCisgICAgICAgIFRlc3RzOiBpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvaW50ZXJhY3Rpb24vZm9jdXMvcHJvY2Vzc2luZy1tb2RlbC9wcmV2
ZW50U2Nyb2xsLXRleHRhcmVhLmh0bWwKKyAgICAgICAgICAgICAgIGltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9pbnRlcmFjdGlvbi9mb2N1cy9wcm9jZXNzaW5nLW1vZGVsL3By
ZXZlbnRTY3JvbGwtbmVzdGVkLXNjcm9sbC1lbGVtZW50cy5odG1sCisKKyAgICAgICAgVGVzdDog
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2ludGVyYWN0aW9uL2ZvY3VzL3By
b2Nlc3NpbmctbW9kZWwvcHJldmVudFNjcm9sbC1uZXN0ZWQtc2Nyb2xsLWVsZW1lbnRzLmh0bWwK
KworICAgICAgICAqIENNYWtlTGlzdHMudHh0OgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLWlu
cHV0LnhjZmlsZWxpc3Q6CisgICAgICAgICogRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxp
c3Q6CisgICAgICAgICogRGVyaXZlZFNvdXJjZXMubWFrZToKKyAgICAgICAgKiBIZWFkZXJzLmNt
YWtlOgorICAgICAgICAqIFNvdXJjZXMudHh0OgorICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBkb20vRWxlbWVudC5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpFbGVtZW50Ojpmb2N1cyk6CisgICAgICAgICogZG9tL0VsZW1lbnQuaDoKKyAgICAg
ICAgKFdlYkNvcmU6OkVsZW1lbnQ6OmZvY3VzKToKKyAgICAgICAgKiBkb20vRm9jdXNPcHRpb25z
Lmg6IENvcGllZCBmcm9tIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE9yRm9yZWlnbkVsZW1lbnQu
aWRsLgorICAgICAgICAqIGRvbS9Gb2N1c09wdGlvbnMuaWRsOiBDb3BpZWQgZnJvbSBTb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxPckZvcmVpZ25FbGVtZW50LmlkbC4KKyAgICAgICAgKiBodG1sL0hU
TUxGb3JtQ29udHJvbEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTEZvcm1Db250
cm9sRWxlbWVudDo6ZGlkQXR0YWNoUmVuZGVyZXJzKToKKyAgICAgICAgKiBodG1sL0hUTUxMYWJl
bEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTExhYmVsRWxlbWVudDo6Zm9jdXMp
OgorICAgICAgICAqIGh0bWwvSFRNTExhYmVsRWxlbWVudC5oOgorICAgICAgICAqIGh0bWwvSFRN
TExlZ2VuZEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTExlZ2VuZEVsZW1lbnQ6
OmZvY3VzKToKKyAgICAgICAgKiBodG1sL0hUTUxMZWdlbmRFbGVtZW50Lmg6CisgICAgICAgICog
aHRtbC9IVE1MT3JGb3JlaWduRWxlbWVudC5pZGw6CisgICAgICAgICogaHRtbC9JbnB1dFR5cGUu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6SW5wdXRUeXBlOjphY2Nlc3NLZXlBY3Rpb24pOgorICAg
ICAgICAqIHBhZ2UvRm9jdXNDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZvY3Vz
Q29udHJvbGxlcjo6YWR2YW5jZUZvY3VzSW5Eb2N1bWVudE9yZGVyKToKKyAgICAgICAgKFdlYkNv
cmU6OkZvY3VzQ29udHJvbGxlcjo6YWR2YW5jZUZvY3VzRGlyZWN0aW9uYWxseUluQ29udGFpbmVy
KToKKwogMjAyMS0wMy0yMiAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CiAKICAg
ICAgICAgQXN5bmMgQ2xpcGJvYXJkIHJlYWQgcHJldmVudHMgV2ViUlRDIElPU3VyZmFjZXMgZnJv
bSBiZWluZyByZWxlYXNlZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50
eHQgYi9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAppbmRleCBhYjhmNTJmMTdjNjAwMTRk
YjgwMzZkNThmN2JhMmU1MWEzM2M0MmRiLi4zNjljYzg0M2RmMGE4NGE4YzFlYzJjYjgzZDlmNjU3
MGVlZTQyMWM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dApAQCAtODQ4LDYgKzg0OCw3IEBAIHNldChX
ZWJDb3JlX05PTl9TVkdfSURMX0ZJTEVTCiAgICAgZG9tL0V2ZW50TW9kaWZpZXJJbml0LmlkbAog
ICAgIGRvbS9FdmVudFRhcmdldC5pZGwKICAgICBkb20vRm9jdXNFdmVudC5pZGwKKyAgICBkb20v
Rm9jdXNPcHRpb25zLmlkbAogICAgIGRvbS9HbG9iYWxFdmVudEhhbmRsZXJzK1BvaW50ZXJFdmVu
dHMuaWRsCiAgICAgZG9tL0dsb2JhbEV2ZW50SGFuZGxlcnMrU2VsZWN0aW9uLmlkbAogICAgIGRv
bS9HbG9iYWxFdmVudEhhbmRsZXJzLmlkbApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvRGVy
aXZlZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdCBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3Vy
Y2VzLWlucHV0LnhjZmlsZWxpc3QKaW5kZXggN2UxZDg4OGRhYzVjOTBjYzhjYTA2YzBhYTAyMDJi
NmQ3ZjY3ZjA2Yi4uNGQ1ZTcyODBhOGI0Zjk4YTY1ZjRlY2IxNjEwYjI0NDBiMjkwOTlkZiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1pbnB1dC54Y2ZpbGVsaXN0CkBAIC04
NTUsNiArODU1LDcgQEAgJChQUk9KRUNUX0RJUikvZG9tL0V2ZW50TmFtZXMuaW4KICQoUFJPSkVD
VF9ESVIpL2RvbS9FdmVudFRhcmdldC5pZGwKICQoUFJPSkVDVF9ESVIpL2RvbS9FdmVudFRhcmdl
dEZhY3RvcnkuaW4KICQoUFJPSkVDVF9ESVIpL2RvbS9Gb2N1c0V2ZW50LmlkbAorJChQUk9KRUNU
X0RJUikvZG9tL0ZvY3VzT3B0aW9ucy5pZGwKICQoUFJPSkVDVF9ESVIpL2RvbS9HbG9iYWxFdmVu
dEhhbmRsZXJzK1BvaW50ZXJFdmVudHMuaWRsCiAkKFBST0pFQ1RfRElSKS9kb20vR2xvYmFsRXZl
bnRIYW5kbGVycytTZWxlY3Rpb24uaWRsCiAkKFBST0pFQ1RfRElSKS9kb20vR2xvYmFsRXZlbnRI
YW5kbGVycy5pZGwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLW91
dHB1dC54Y2ZpbGVsaXN0IGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtb3V0cHV0Lnhj
ZmlsZWxpc3QKaW5kZXggMThjOTFlYWQ5NWZmMjFmOWQ2MzQwOGI4MWY1ZjNlNzRiYzYzMTdlNS4u
MWNhYzlkNWMxMDkwYzNiZjU5YTYxNTg3YWZkNjFhZmVhNTY0MDBmMiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3QKKysrIGIvU291cmNl
L1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3QKQEAgLTgzMCw2ICs4MzAs
OCBAQCAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0ZpbGxN
b2RlLmNwcAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNG
aWxsTW9kZS5oCiAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9K
U0ZvY3VzRXZlbnQuY3BwCiAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2Vi
Q29yZS9KU0ZvY3VzRXZlbnQuaAorJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2Vz
L1dlYkNvcmUvSlNGb2N1c09wdGlvbnMuY3BwCiskKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZl
ZFNvdXJjZXMvV2ViQ29yZS9KU0ZvY3VzT3B0aW9ucy5oCiAkKEJVSUxUX1BST0RVQ1RTX0RJUikv
RGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0ZvbnRGYWNlLmNwcAogJChCVUlMVF9QUk9EVUNUU19E
SVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNGb250RmFjZS5oCiAkKEJVSUxUX1BST0RVQ1RT
X0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0ZvbnRGYWNlU2V0LmNwcApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZSBiL1NvdXJjZS9XZWJDb3JlL0Rl
cml2ZWRTb3VyY2VzLm1ha2UKaW5kZXggY2JhMGYzNTljYzRmMTViNDFmNTI0OTkzMzNkNDM0NjQy
MTQxNmMyYS4uNjBjMjE3YjczNDhiY2RhNTNhNmJjNGM2ODJjZmRlYTQ0OTQxMGJiNyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9EZXJpdmVkU291cmNlcy5tYWtlCkBAIC03MjcsNiArNzI3LDcgQEAgSlNfQklORElOR19J
RExTIDo9IFwKICAgICAkKFdlYkNvcmUpL2RvbS9FdmVudE1vZGlmaWVySW5pdC5pZGwgXAogICAg
ICQoV2ViQ29yZSkvZG9tL0V2ZW50VGFyZ2V0LmlkbCBcCiAgICAgJChXZWJDb3JlKS9kb20vRm9j
dXNFdmVudC5pZGwgXAorICAgICQoV2ViQ29yZSkvZG9tL0ZvY3VzT3B0aW9ucy5pZGwgXAogICAg
ICQoV2ViQ29yZSkvZG9tL0dsb2JhbEV2ZW50SGFuZGxlcnMrUG9pbnRlckV2ZW50cy5pZGwgXAog
ICAgICQoV2ViQ29yZSkvZG9tL0dsb2JhbEV2ZW50SGFuZGxlcnMrU2VsZWN0aW9uLmlkbCBcCiAg
ICAgJChXZWJDb3JlKS9kb20vR2xvYmFsRXZlbnRIYW5kbGVycy5pZGwgXApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZSBiL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21h
a2UKaW5kZXggMjE4NGZlMTg3MjdmNDQzMWEzMjQzODhkYzM2Yzc5MTBkYzY4YzQyZi4uMzUxOWE0
ZWY2MDQxYmE3YmZhOTNlZDZlM2NkMWNlNTFjMDk5OTBjNiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvSGVhZGVycy5jbWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlCkBA
IC00NjcsNiArNDY3LDcgQEAgc2V0KFdlYkNvcmVfUFJJVkFURV9GUkFNRVdPUktfSEVBREVSUwog
ICAgIGRvbS9FeGNlcHRpb25Db2RlLmgKICAgICBkb20vRXhjZXB0aW9uRGF0YS5oCiAgICAgZG9t
L0V4Y2VwdGlvbk9yLmgKKyAgICBkb20vRm9jdXNPcHRpb25zLmgKICAgICBkb20vRnJhZ21lbnRT
Y3JpcHRpbmdQZXJtaXNzaW9uLmgKICAgICBkb20vRnVsbHNjcmVlbk1hbmFnZXIuaAogICAgIGRv
bS9HQ1JlYWNoYWJsZVJlZi5oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4
dCBiL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0CmluZGV4IDU5YmFiMmUxOGM2YTk5MDRiNGE4
NjYwMDRhNmRiMzMzMDI5MTAzMjYuLjMwMGFhODA3ZDFmMGEyMDg2N2I1NjE3YmRiOWRjYjg4MTQ4
NmRlNDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0CisrKyBiL1NvdXJj
ZS9XZWJDb3JlL1NvdXJjZXMudHh0CkBAIC0zMDI0LDYgKzMwMjQsNyBAQCBKU0ZpbGVTeXN0ZW1F
bnRyeUNhbGxiYWNrLmNwcAogSlNGaWxlU3lzdGVtRmlsZUVudHJ5LmNwcAogSlNGaWxsTW9kZS5j
cHAKIEpTRm9jdXNFdmVudC5jcHAKK0pTRm9jdXNPcHRpb25zLmNwcAogSlNGb250RmFjZS5jcHAK
IEpTRm9udEZhY2VTZXQuY3BwCiBKU0dQVUJpbmRHcm91cExheW91dEJpbmRpbmcuY3BwCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2og
Yi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXgg
MWFkMGJlNzQ5ZmE4NTdkOGE2ODYwYWIwMWE5YmUzN2NkNmUyY2QxZS4uNDRlMjVmNmUzNmQ3OGFm
M2RlNTEzNDBlNDYxODI3YjMxZWNkNTQzMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2Vi
Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNv
cmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMzYxMiw2ICszNjEyLDcgQEAKIAkJQUE3
RkVFQUQxNkE0RTc0QjAwNEMwQzMzIC8qIEpTU3BlZWNoU3ludGhlc2lzLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBQTdGRUVBQzE2QTRFNzRCMDA0QzBD
MzMgLyogSlNTcGVlY2hTeW50aGVzaXMuaCAqLzsgfTsKIAkJQUFBNzI4RjcxNkQxRDhCQzAwRDNC
QkM2IC8qIFdlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVySU9TLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBQUE3MjhGMTE2RDFEOEJDMDBEM0JCQzYg
LyogV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJJT1MuaCAqLzsgfTsKIAkJQUFDMDhDRjMx
NUY5NDFGRDAwRjFFMTg4IC8qIEFjY2Vzc2liaWxpdHlTVkdSb290LmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBQUMwOENGMTE1Rjk0MUZDMDBGMUUxODgg
LyogQWNjZXNzaWJpbGl0eVNWR1Jvb3QuaCAqLzsgfTsKKwkJQUFERUZFNDUyNUFGNEZENjAwNDBE
RDY3IC8qIEZvY3VzT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQUFERUZFNDMyNUFGNEZDQjAwNDBERDY3IC8qIEZvY3VzT3B0aW9ucy5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUFCMjNBMzI4
MDlCQkE3RDAwMDY3Q0M1MyAvKiBCZWZvcmVUZXh0SW5zZXJ0ZWRFdmVudC5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQUIyM0EzMjYwOUJCQTdEMDAwNjdD
QzUzIC8qIEJlZm9yZVRleHRJbnNlcnRlZEV2ZW50LmggKi87IH07CiAJCUFCMjQ3QTZEMEFGRDYz
ODMwMDNGQTVGRCAvKiBSZW5kZXJTbGlkZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEFCMjQ3QTZCMEFGRDYzODMwMDNGQTVGRCAvKiBSZW5kZXJTbGlk
ZXIuaCAqLzsgfTsKIAkJQUIzMUM5MUUxMEFFMUI4RTAwMEM3QjkyIC8qIExpbmVDbGFtcFZhbHVl
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBQjMxQzkx
RDEwQUUxQjhFMDAwQzdCOTIgLyogTGluZUNsYW1wVmFsdWUuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwpAQCAtMTMxNzksNiArMTMxODAsNyBAQAogCQlB
QTJBNUFDNjE2QTQ4NUQ1MDA5NzVBMjUgLyogU3BlZWNoU3ludGhlc2lzVm9pY2UuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gU3BlZWNoU3ludGhlc2lzVm9pY2UuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQlBQTJBNUFDNzE2QTQ4NUQ1MDA5NzVBMjUgLyogU3BlZWNoU3ludGhlc2lz
Vm9pY2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU3BlZWNoU3ludGhlc2lzVm9pY2UuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQUEyQTVBQzgxNkE0ODVENTAwOTc1QTI1IC8qIFNwZWVjaFN5
bnRoZXNpc1ZvaWNlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTcGVlY2hTeW50aGVzaXNWb2ljZS5pZGw7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUFBMkUwRDA5MjVBRjUxMDQwMDc2OTNCQSAvKiBGb2N1c09w
dGlvbnMuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gdGV4dDsgcGF0aCA9IEZvY3VzT3B0aW9ucy5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCUFBNDc4QTdEMTZDRDcwQzMwMDdEMUJCNCAvKiBXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0
V3JhcHBlck1hYy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJBY2Nlc3Np
YmlsaXR5T2JqZWN0V3JhcHBlck1hYy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlB
QTQ3OEE3RTE2Q0Q3MEMzMDA3RDFCQjQgLyogV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJN
YWMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZXhwbGljaXRGaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLm9iamNwcDsgZmlsZUVuY29kaW5nID0gNDsgcGF0aCA9IFdlYkFjY2Vzc2li
aWxpdHlPYmplY3RXcmFwcGVyTWFjLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlB
QTRDM0E3NDBCMkIxNjc5MDAyMzM0QTIgLyogSW5saW5lU3R5bGVTaGVldE93bmVyLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJbmxpbmVTdHlsZVNoZWV0T3duZXIu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTMyMDMsNiArMTMyMDUsNyBAQAog
CQlBQUNDODNEODIzMTY1NzZCMDBFQjZCRjUgLyogSlNIVE1MT3JGb3JlaWduRWxlbWVudC5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBKU0hUTUxPckZvcmVpZ25FbGVtZW50LmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQUFEOUQwQjEyMURGQTgwQzAwMUIxMUM3IC8qIExhenlMb2Fk
SW1hZ2VPYnNlcnZlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBM
YXp5TG9hZEltYWdlT2JzZXJ2ZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlB
QUQ5RDBCMzIxREZBODBFMDAxQjExQzcgLyogTGF6eUxvYWRJbWFnZU9ic2VydmVyLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IExhenlMb2FkSW1hZ2VPYnNlcnZlci5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBQURFRkU0MzI1QUY0RkNCMDA0MERENjcgLyogRm9j
dXNPcHRpb25zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZvY3VzT3B0aW9ucy5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQlBQUUyN0I3NDE2Q0JGQzBEMDA2MjMwNDMgLyogUGxhdGZvcm1TcGVl
Y2hTeW50aGVzaXplck1vY2suY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gUGxhdGZvcm1TcGVlY2hTeW50aGVzaXplck1vY2suY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQlBQUUyN0I3NTE2Q0JGQzBEMDA2MjMwNDMgLyogUGxhdGZvcm1TcGVlY2hTeW50
aGVzaXplck1vY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGxhdGZvcm1T
cGVlY2hTeW50aGVzaXplck1vY2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQUFF
Mzc1NUQxNzQyOUJDQzAwNjIwMEMyIC8qIFBsYXRmb3JtU3BlZWNoU3ludGhlc2l6ZXJJT1MubW0g
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBQbGF0Zm9ybVNwZWVjaFN5
bnRoZXNpemVySU9TLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMzAzNDQsNiAr
MzAzNDcsOCBAQAogCQkJCUI2RDlEMjM0MTRFQUJEMjYwMDkwRDc1RSAvKiBGb2N1c0V2ZW50LmNw
cCAqLywKIAkJCQlCNkQ5RDIzMzE0RUFCRDI2MDA5MEQ3NUUgLyogRm9jdXNFdmVudC5oICovLAog
CQkJCUI2RDlEMjcyMTRFQUJGMDMwMDkwRDc1RSAvKiBGb2N1c0V2ZW50LmlkbCAqLywKKwkJCQlB
QURFRkU0MzI1QUY0RkNCMDA0MERENjcgLyogRm9jdXNPcHRpb25zLmggKi8sCisJCQkJQUEyRTBE
MDkyNUFGNTEwNDAwNzY5M0JBIC8qIEZvY3VzT3B0aW9ucy5pZGwgKi8sCiAJCQkJQTg1MzEyM0Mx
MUQwNDcxQjAwRDREMDc3IC8qIEZyYWdtZW50U2NyaXB0aW5nUGVybWlzc2lvbi5oICovLAogCQkJ
CUNEOTJGNTE3MjI2MTAzODIwMEY4N0JCMyAvKiBGdWxsc2NyZWVuTWFuYWdlci5jcHAgKi8sCiAJ
CQkJQ0Q5MkY1MTYyMjYxMDM4MjAwRjg3QkIzIC8qIEZ1bGxzY3JlZW5NYW5hZ2VyLmggKi8sCkBA
IC0zMjMzMiw2ICszMjMzNyw3IEBACiAJCQkJMTQ5OTNCRTYwQjJGMkIxQzAwNTA0OTdGIC8qIEZv
Y3VzQ29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMDYyMjg3ODQwQjREQjMyMjAwMEMz
NERGIC8qIEZvY3VzRGlyZWN0aW9uLmggaW4gSGVhZGVycyAqLywKIAkJCQlCNkQ5RDIzNTE0RUFC
RDI2MDA5MEQ3NUUgLyogRm9jdXNFdmVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQUFERUZFNDUy
NUFGNEZENjAwNDBERDY3IC8qIEZvY3VzT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQjJD
M0RBNjUwRDAwNkNENjAwRUY2RjI2IC8qIEZvbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCTFBQzJE
ODlEMUIxRTI5MUYwMEQ1MkU4NyAvKiBGb250QW50aWFsaWFzaW5nU3RhdGVTYXZlci5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJRjRFNTdFREMyMTNGM0Y1RjAwNEVBOThFIC8qIEZvbnRBdHRyaWJ1dGVD
aGFuZ2VzLmggaW4gSGVhZGVycyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9F
bGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmNwcAppbmRleCBmMGE1ZDdi
NjBhZTNkMjc2ZmRmYmUyODBlNDA1NGNjOTdhZDdhMzAzLi45Mzc1NjcyOWQzZGRiYmIzMWQyMTYz
ZWQ0OTllZGFmNjJhODgwZmQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVu
dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuY3BwCkBAIC0zMDQwLDcgKzMw
NDAsNyBAQCBzdGF0aWMgUmVmUHRyPEVsZW1lbnQ+IGZpbmRGaXJzdFByb2dyYW1hdGljYWxseUZv
Y3VzYWJsZUVsZW1lbnRJbkNvbXBvc2VkVHJlZShFbAogICAgIHJldHVybiBudWxscHRyOwogfQog
Ci12b2lkIEVsZW1lbnQ6OmZvY3VzKFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZSByZXN0b3JhdGlv
bk1vZGUsIEZvY3VzRGlyZWN0aW9uIGRpcmVjdGlvbikKK3ZvaWQgRWxlbWVudDo6Zm9jdXMoY29u
c3QgRm9jdXNPcHRpb25zJiBvcHRpb25zKQogewogICAgIGlmICghaXNDb25uZWN0ZWQoKSkKICAg
ICAgICAgcmV0dXJuOwpAQCAtMzA4NCwxMSArMzA4NCwxMiBAQCB2b2lkIEVsZW1lbnQ6OmZvY3Vz
KFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZSByZXN0b3JhdGlvbk1vZGUsIEZvY3VzRGlyZWN0aW9u
IGRpcgogICAgICAgICAvLyBGb2N1cyBhbmQgY2hhbmdlIGV2ZW50IGhhbmRsZXJzIGNhbiBjYXVz
ZSB1cyB0byBsb3NlIG91ciBsYXN0IHJlZi4KICAgICAgICAgLy8gSWYgYSBmb2N1cyBldmVudCBo
YW5kbGVyIGNoYW5nZXMgdGhlIGZvY3VzIHRvIGEgZGlmZmVyZW50IG5vZGUgaXQKICAgICAgICAg
Ly8gZG9lcyBub3QgbWFrZSBzZW5zZSB0byBjb250aW51ZSBhbmQgdXBkYXRlIGFwcGVhcmVuY2Uu
Ci0gICAgICAgIGlmICghcGFnZS0+Zm9jdXNDb250cm9sbGVyKCkuc2V0Rm9jdXNlZEVsZW1lbnQo
bmV3VGFyZ2V0LmdldCgpLCAqZG9jdW1lbnQtPmZyYW1lKCksIGRpcmVjdGlvbikpCisgICAgICAg
IGlmICghcGFnZS0+Zm9jdXNDb250cm9sbGVyKCkuc2V0Rm9jdXNlZEVsZW1lbnQobmV3VGFyZ2V0
LmdldCgpLCAqZG9jdW1lbnQtPmZyYW1lKCksIG9wdGlvbnMuZGlyZWN0aW9uKSkKICAgICAgICAg
ICAgIHJldHVybjsKICAgICB9CiAKLSAgICBuZXdUYXJnZXQtPnJldmVhbEZvY3VzZWRFbGVtZW50
KHJlc3RvcmF0aW9uTW9kZSk7CisgICAgaWYgKCFvcHRpb25zLnByZXZlbnRTY3JvbGwpCisgICAg
ICAgIG5ld1RhcmdldC0+cmV2ZWFsRm9jdXNlZEVsZW1lbnQob3B0aW9ucy5zZWxlY3Rpb25SZXN0
b3JhdGlvbk1vZGUpOwogfQogCiB2b2lkIEVsZW1lbnQ6OnJldmVhbEZvY3VzZWRFbGVtZW50KFNl
bGVjdGlvblJlc3RvcmF0aW9uTW9kZSBzZWxlY3Rpb25Nb2RlKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvZG9tL0VsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmgKaW5k
ZXggNmJiZjJjNGFlMGJhNjFhZTgyYjliN2RiYjIyNjAxOGIwOWQ4ZGVkOS4uODViOGI0NzRiNDBm
M2NhMWFjMjkyZmMzNDBkYTM3YmYzZDk1ZDU0YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
ZG9tL0VsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5oCkBAIC0yNyw2
ICsyNyw3IEBACiAjaW5jbHVkZSAiQVhUZXh0U3RhdGVDaGFuZ2VJbnRlbnQuaCIKICNpbmNsdWRl
ICJEb2N1bWVudC5oIgogI2luY2x1ZGUgIkVsZW1lbnREYXRhLmgiCisjaW5jbHVkZSAiRm9jdXNP
cHRpb25zLmgiCiAjaW5jbHVkZSAiSFRNTE5hbWVzLmgiCiAjaW5jbHVkZSAiU2Nyb2xsVHlwZXMu
aCIKICNpbmNsdWRlICJTaGFkb3dSb290SW5pdC5oIgpAQCAtNDAxLDcgKzQwMiw3IEBAIHB1Ymxp
YzoKICAgICB2aXJ0dWFsIFN0cmluZyB0YXJnZXQoKSBjb25zdCB7IHJldHVybiBTdHJpbmcoKTsg
fQogCiAgICAgc3RhdGljIEFYVGV4dFN0YXRlQ2hhbmdlSW50ZW50IGRlZmF1bHRGb2N1c1RleHRT
dGF0ZUNoYW5nZUludGVudCgpIHsgcmV0dXJuIEFYVGV4dFN0YXRlQ2hhbmdlSW50ZW50KEFYVGV4
dFN0YXRlQ2hhbmdlVHlwZVNlbGVjdGlvbk1vdmUsIEFYVGV4dFNlbGVjdGlvbiB7IEFYVGV4dFNl
bGVjdGlvbkRpcmVjdGlvbkRpc2NvbnRpZ3VvdXMsIEFYVGV4dFNlbGVjdGlvbkdyYW51bGFyaXR5
VW5rbm93biwgdHJ1ZSB9KTsgfQotICAgIHZpcnR1YWwgdm9pZCBmb2N1cyhTZWxlY3Rpb25SZXN0
b3JhdGlvbk1vZGUgPSBTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGU6OlJlc3RvcmVPclNlbGVjdEFs
bCwgRm9jdXNEaXJlY3Rpb24gPSBGb2N1c0RpcmVjdGlvbjo6Tm9uZSk7CisgICAgdmlydHVhbCB2
b2lkIGZvY3VzKGNvbnN0IEZvY3VzT3B0aW9ucyYgPSB7IH0pOwogICAgIHZvaWQgcmV2ZWFsRm9j
dXNlZEVsZW1lbnQoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlKTsKICAgICB2aXJ0dWFsIFJlZlB0
cjxFbGVtZW50PiBmb2N1c0FwcGVhcmFuY2VVcGRhdGVUYXJnZXQoKTsKICAgICB2aXJ0dWFsIHZv
aWQgdXBkYXRlRm9jdXNBcHBlYXJhbmNlKFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZSwgU2VsZWN0
aW9uUmV2ZWFsTW9kZSA9IFNlbGVjdGlvblJldmVhbE1vZGU6OlJldmVhbCk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9kb20vRm9jdXNPcHRpb25zLmggYi9Tb3VyY2UvV2ViQ29yZS9kb20v
Rm9jdXNPcHRpb25zLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNGExYzliM2YwMjc0MzBkM2FmYzY5NzY2NDZmMWEw
NWU2OGRjODNmNgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Gb2N1c09w
dGlvbnMuaApAQCAtMCwwICsxLDM4IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIwIElnYWxp
YSBTLkwuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVz
dCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRI
RQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBG
T1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQg
U0hBTEwgQVBQTEUgSU5DLiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQ
Uk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwg
REFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSAiRm9jdXNEaXJlY3Rpb24u
aCIKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitzdHJ1Y3QgRm9jdXNPcHRpb25zIHsKKyAgICBT
ZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGUgc2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlIHsgU2VsZWN0
aW9uUmVzdG9yYXRpb25Nb2RlOjpSZXN0b3JlT3JTZWxlY3RBbGwgfTsKKyAgICBGb2N1c0RpcmVj
dGlvbiBkaXJlY3Rpb24geyBGb2N1c0RpcmVjdGlvbjo6Tm9uZSB9OworICAgIGJvb2wgcHJldmVu
dFNjcm9sbCB7IGZhbHNlIH07Cit9OworCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRm9jdXNPcHRpb25zLmlkbCBiL1NvdXJjZS9XZWJDb3Jl
L2RvbS9Gb2N1c09wdGlvbnMuaWRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjE3MzkwMjM5NzQ4NDNlZWYwNjQyZTA1
N2Q2M2QwYzJiODE3OGJlMGMKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20v
Rm9jdXNPcHRpb25zLmlkbApAQCAtMCwwICsxLDI4IEBACisvKgorICogQ29weXJpZ2h0IChDKSAy
MDIwIElnYWxpYSBTLkwuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cisg
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisg
KiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4g
Tk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBG
T1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExB
UlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NT
IE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikg
SE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNF
CisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLgorICovCisKK2RpY3Rpb25hcnkgRm9jdXNPcHRpb25zIHsKKyAgIGJv
b2xlYW4gcHJldmVudFNjcm9sbCA9IGZhbHNlOworfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2h0bWwvSFRNTEZvcm1Db250cm9sRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1s
L0hUTUxGb3JtQ29udHJvbEVsZW1lbnQuY3BwCmluZGV4IDc4NzhiNTNmMjljNjc5MzlkMjg4ZDdi
OTk5ODQ3YWNhN2Y0MGQ4ZGMuLjRjMDBmNWY2ZDQzOGU0YjczNDIzZDZjYTg4MjA0ZjY0ZDhlMmQw
ZTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1Db250cm9sRWxlbWVu
dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUNvbnRyb2xFbGVtZW50LmNw
cApAQCAtMjU0LDExICsyNTQsMTEgQEAgdm9pZCBIVE1MRm9ybUNvbnRyb2xFbGVtZW50OjpkaWRB
dHRhY2hSZW5kZXJlcnMoKQogICAgICAgICBhdXRvIGZyYW1lVmlldyA9IG1ha2VSZWZQdHIoZG9j
dW1lbnQoKS52aWV3KCkpOwogICAgICAgICBpZiAoZnJhbWVWaWV3ICYmIGZyYW1lVmlldy0+bGF5
b3V0Q29udGV4dCgpLmlzSW5MYXlvdXQoKSkgewogICAgICAgICAgICAgZnJhbWVWaWV3LT5xdWV1
ZVBvc3RMYXlvdXRDYWxsYmFjayhbZWxlbWVudF0gewotICAgICAgICAgICAgICAgIGVsZW1lbnQt
PmZvY3VzKFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZTo6UGxhY2VDYXJldEF0U3RhcnQpOworICAg
ICAgICAgICAgICAgIGVsZW1lbnQtPmZvY3VzKHsgU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlOjpQ
bGFjZUNhcmV0QXRTdGFydCB9KTsKICAgICAgICAgICAgIH0pOwogICAgICAgICB9IGVsc2Ugewog
ICAgICAgICAgICAgU3R5bGU6OnF1ZXVlUG9zdFJlc29sdXRpb25DYWxsYmFjayhbZWxlbWVudF0g
ewotICAgICAgICAgICAgICAgIGVsZW1lbnQtPmZvY3VzKFNlbGVjdGlvblJlc3RvcmF0aW9uTW9k
ZTo6UGxhY2VDYXJldEF0U3RhcnQpOworICAgICAgICAgICAgICAgIGVsZW1lbnQtPmZvY3VzKHsg
U2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlOjpQbGFjZUNhcmV0QXRTdGFydCB9KTsKICAgICAgICAg
ICAgIH0pOwogICAgICAgICB9CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRt
bC9IVE1MTGFiZWxFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExhYmVsRWxl
bWVudC5jcHAKaW5kZXggZTVjNDMxMTBhYTgxNmQ1ZGFmMjQzNmJiMzNmNDNhZGIxNzY5MzYyNS4u
OWRjMjA3ZWI3NmQ1NDdhM2FkYjllMTdjOWMwZmNjNThhNjVlNWE2YiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGFiZWxFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxMYWJlbEVsZW1lbnQuY3BwCkBAIC0xNzIsMjEgKzE3MiwyMSBAQCBib29sIEhU
TUxMYWJlbEVsZW1lbnQ6OndpbGxSZXNwb25kVG9Nb3VzZUNsaWNrRXZlbnRzKCkKICAgICByZXR1
cm4gKGVsZW1lbnQgJiYgZWxlbWVudC0+d2lsbFJlc3BvbmRUb01vdXNlQ2xpY2tFdmVudHMoKSkg
fHwgSFRNTEVsZW1lbnQ6OndpbGxSZXNwb25kVG9Nb3VzZUNsaWNrRXZlbnRzKCk7CiB9CiAKLXZv
aWQgSFRNTExhYmVsRWxlbWVudDo6Zm9jdXMoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlIHJlc3Rv
cmF0aW9uTW9kZSwgRm9jdXNEaXJlY3Rpb24gZGlyZWN0aW9uKQordm9pZCBIVE1MTGFiZWxFbGVt
ZW50Ojpmb2N1cyhjb25zdCBGb2N1c09wdGlvbnMmIG9wdGlvbnMpCiB7CiAgICAgUmVmPEhUTUxM
YWJlbEVsZW1lbnQ+IHByb3RlY3RlZFRoaXMoKnRoaXMpOwogICAgIGlmIChkb2N1bWVudCgpLmhh
dmVTdHlsZXNoZWV0c0xvYWRlZCgpKSB7CiAgICAgICAgIGRvY3VtZW50KCkudXBkYXRlTGF5b3V0
KCk7CiAgICAgICAgIGlmIChpc0ZvY3VzYWJsZSgpKSB7CiAgICAgICAgICAgICAvLyBUaGUgdmFs
dWUgb2YgcmVzdG9yYXRpb25Nb2RlIGlzIG5vdCB1c2VkIGZvciBsYWJlbCBlbGVtZW50cyBhcyBp
dCBkb2Vzbid0IG92ZXJyaWRlIHVwZGF0ZUZvY3VzQXBwZWFyYW5jZS4KLSAgICAgICAgICAgIEVs
ZW1lbnQ6OmZvY3VzKHJlc3RvcmF0aW9uTW9kZSwgZGlyZWN0aW9uKTsKKyAgICAgICAgICAgIEVs
ZW1lbnQ6OmZvY3VzKG9wdGlvbnMpOwogICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICB9CiAg
ICAgfQogCiAgICAgLy8gVG8gbWF0Y2ggb3RoZXIgYnJvd3NlcnMsIGFsd2F5cyByZXN0b3JlIHBy
ZXZpb3VzIHNlbGVjdGlvbi4KICAgICBpZiAoYXV0byBlbGVtZW50ID0gY29udHJvbCgpKQotICAg
ICAgICBlbGVtZW50LT5mb2N1cyhTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGU6OlJlc3RvcmVPclNl
bGVjdEFsbCwgZGlyZWN0aW9uKTsKKyAgICAgICAgZWxlbWVudC0+Zm9jdXMoeyBTZWxlY3Rpb25S
ZXN0b3JhdGlvbk1vZGU6OlJlc3RvcmVPclNlbGVjdEFsbCwgb3B0aW9ucy5kaXJlY3Rpb24gfSk7
CiB9CiAKIGJvb2wgSFRNTExhYmVsRWxlbWVudDo6YWNjZXNzS2V5QWN0aW9uKGJvb2wgc2VuZE1v
dXNlRXZlbnRzKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGFiZWxFbGVt
ZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMYWJlbEVsZW1lbnQuaAppbmRleCA2ODQ5
ZGI5MmIzY2RkOWM5ZGRiZDExZjZkNDM1OGY1OWUxMjE4MjAyLi44NGM2OWMxNzU1NWY5YWUzNjUx
MWYwYjY1ODg5MDEyZmJiZjlmZjJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxMYWJlbEVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMYWJlbEVsZW1l
bnQuaApAQCAtNTEsNyArNTEsNyBAQCBwcml2YXRlOgogICAgIC8vIE92ZXJyaWRkZW4gdG8gZWl0
aGVyIGNsaWNrKCkgb3IgZm9jdXMoKSB0aGUgY29ycmVzcG9uZGluZyBjb250cm9sLgogICAgIHZv
aWQgZGVmYXVsdEV2ZW50SGFuZGxlcihFdmVudCYpIGZpbmFsOwogCi0gICAgdm9pZCBmb2N1cyhT
ZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGUsIEZvY3VzRGlyZWN0aW9uKSBmaW5hbDsKKyAgICB2b2lk
IGZvY3VzKGNvbnN0IEZvY3VzT3B0aW9ucyYpIGZpbmFsOwogCiAgICAgYm9vbCBpc0ludGVyYWN0
aXZlQ29udGVudCgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIHRydWU7IH0KIH07CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMZWdlbmRFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2h0bWwvSFRNTExlZ2VuZEVsZW1lbnQuY3BwCmluZGV4IGVkMGE0MDExY2E3NDU2YzRlMjQx
ZTEwYzVhNmRjMDI3MzE3ZDY4MmQuLjVjZWVhNjEwYjA1NDJjNDMyNTE5MTg5MDVmZWMyYzA5NGM5
ODBmMzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExlZ2VuZEVsZW1lbnQu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExlZ2VuZEVsZW1lbnQuY3BwCkBAIC01
NywxOSArNTcsMTkgQEAgUmVmUHRyPEhUTUxGb3JtQ29udHJvbEVsZW1lbnQ+IEhUTUxMZWdlbmRF
bGVtZW50Ojphc3NvY2lhdGVkQ29udHJvbCgpCiAgICAgcmV0dXJuIGRlc2NlbmRhbnRzT2ZUeXBl
PEhUTUxGb3JtQ29udHJvbEVsZW1lbnQ+KCplbmNsb3NpbmdGaWVsZHNldCkuZmlyc3QoKTsKIH0K
IAotdm9pZCBIVE1MTGVnZW5kRWxlbWVudDo6Zm9jdXMoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2Rl
IHJlc3RvcmF0aW9uTW9kZSwgRm9jdXNEaXJlY3Rpb24gZGlyZWN0aW9uKQordm9pZCBIVE1MTGVn
ZW5kRWxlbWVudDo6Zm9jdXMoY29uc3QgRm9jdXNPcHRpb25zJiBvcHRpb25zKQogewogICAgIGlm
IChkb2N1bWVudCgpLmhhdmVTdHlsZXNoZWV0c0xvYWRlZCgpKSB7CiAgICAgICAgIGRvY3VtZW50
KCkudXBkYXRlTGF5b3V0SWdub3JlUGVuZGluZ1N0eWxlc2hlZXRzKCk7CiAgICAgICAgIGlmIChp
c0ZvY3VzYWJsZSgpKSB7Ci0gICAgICAgICAgICBFbGVtZW50Ojpmb2N1cyhyZXN0b3JhdGlvbk1v
ZGUsIGRpcmVjdGlvbik7CisgICAgICAgICAgICBFbGVtZW50Ojpmb2N1cyh7IG9wdGlvbnMuc2Vs
ZWN0aW9uUmVzdG9yYXRpb25Nb2RlLCBvcHRpb25zLmRpcmVjdGlvbiB9KTsKICAgICAgICAgICAg
IHJldHVybjsKICAgICAgICAgfQogICAgIH0KIAogICAgIC8vIFRvIG1hdGNoIG90aGVyIGJyb3dz
ZXJzJyBiZWhhdmlvciwgbmV2ZXIgcmVzdG9yZSBwcmV2aW91cyBzZWxlY3Rpb24uCiAgICAgaWYg
KGF1dG8gY29udHJvbCA9IGFzc29jaWF0ZWRDb250cm9sKCkpCi0gICAgICAgIGNvbnRyb2wtPmZv
Y3VzKFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZTo6U2VsZWN0QWxsLCBkaXJlY3Rpb24pOworICAg
ICAgICBjb250cm9sLT5mb2N1cyh7IFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZTo6U2VsZWN0QWxs
LCBvcHRpb25zLmRpcmVjdGlvbiB9KTsKIH0KIAogYm9vbCBIVE1MTGVnZW5kRWxlbWVudDo6YWNj
ZXNzS2V5QWN0aW9uKGJvb2wgc2VuZE1vdXNlRXZlbnRzKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvaHRtbC9IVE1MTGVnZW5kRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
TGVnZW5kRWxlbWVudC5oCmluZGV4IDdkY2IxYjg1MGEyN2UzYjdhY2I4MDI4N2M1NzRmODMwMmZj
YTYwMmYuLjkzMjE1OTA1MDM5M2UzY2VmNjFkMjM5ZmQ1MDhiZWM3NWVhZWM1N2MgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExlZ2VuZEVsZW1lbnQuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxMZWdlbmRFbGVtZW50LmgKQEAgLTQzLDcgKzQzLDcgQEAgcHJpdmF0
ZToKICAgICBSZWZQdHI8SFRNTEZvcm1Db250cm9sRWxlbWVudD4gYXNzb2NpYXRlZENvbnRyb2wo
KTsKIAogICAgIGJvb2wgYWNjZXNzS2V5QWN0aW9uKGJvb2wgc2VuZE1vdXNlRXZlbnRzKSBmaW5h
bDsKLSAgICB2b2lkIGZvY3VzKFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZSwgRm9jdXNEaXJlY3Rp
b24pIGZpbmFsOworICAgIHZvaWQgZm9jdXMoY29uc3QgRm9jdXNPcHRpb25zJikgZmluYWw7CiB9
OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0hUTUxPckZvcmVpZ25FbGVtZW50LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE9y
Rm9yZWlnbkVsZW1lbnQuaWRsCmluZGV4IDlkNjJlNGQ4NDE3Nzg0MTZiNTI0MWQ5NmJkODA3Zjk0
NjZmM2NhMTQuLjkxMzQ2MDllOWQyMWZlYzM5YTllZjBmNGNjNWRmNWQyNmM1M2YzNDUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE9yRm9yZWlnbkVsZW1lbnQuaWRsCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE9yRm9yZWlnbkVsZW1lbnQuaWRsCkBAIC0zNCw3ICsz
NCw3IEBAIGludGVyZmFjZSBtaXhpbiBIVE1MT3JGb3JlaWduRWxlbWVudCB7CiAgICAgLy8gRklY
TUU6IEltcGxlbWVudCAnYXV0b2ZvY3VzJy4KICAgICAvLyBbQ0VSZWFjdGlvbnNdIGF0dHJpYnV0
ZSBib29sZWFuIGF1dG9mb2N1czsKICAgICBbQ0VSZWFjdGlvbnMsIEltcGxlbWVudGVkQXM9dGFi
SW5kZXhGb3JCaW5kaW5nc10gYXR0cmlidXRlIGxvbmcgdGFiSW5kZXg7Ci0gICAgLy8gRklNWEU6
IGZvY3VzKCkgaXMgc3BlY2lmaWVkIHRvIHRha2UgYW4gb3B0aW9uYWwgRm9jdXNPcHRpb25zLiBJ
bXBsZW1lbnQgdGhhdC4KLSAgICB1bmRlZmluZWQgZm9jdXMoKTsKKyAgICB1bmRlZmluZWQgZm9j
dXMob3B0aW9uYWwgRm9jdXNPcHRpb25zIG9wdGlvbnMpOwogICAgIHVuZGVmaW5lZCBibHVyKCk7
CiB9OworCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0lucHV0VHlwZS5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9odG1sL0lucHV0VHlwZS5jcHAKaW5kZXggN2VmNGY3OWY3MGJjMjM5NzRi
ZDVkOTRlMjJhYmUxMzc3YjI1OWY1Mi4uYTJjNzAyNWE2MTM2ZGZlN2E2ZTNiMTcxNzA4Njg1MTEz
MTNmOTJkMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9JbnB1dFR5cGUuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSW5wdXRUeXBlLmNwcApAQCAtNjM4LDcgKzYzOCw3IEBA
IHZvaWQgSW5wdXRUeXBlOjpoYW5kbGVCbHVyRXZlbnQoKQogYm9vbCBJbnB1dFR5cGU6OmFjY2Vz
c0tleUFjdGlvbihib29sKQogewogICAgIEFTU0VSVChlbGVtZW50KCkpOwotICAgIGVsZW1lbnQo
KS0+Zm9jdXMoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlOjpTZWxlY3RBbGwpOworICAgIGVsZW1l
bnQoKS0+Zm9jdXMoeyBTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGU6OlNlbGVjdEFsbCB9KTsKICAg
ICByZXR1cm4gZmFsc2U7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRm9j
dXNDb250cm9sbGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRm9jdXNDb250cm9sbGVyLmNw
cAppbmRleCBlYWRkYTc5MDk1OTdlYzI3YWU1YWE3MTlhNjk1YzMwNDI1MTAyNDkxLi42YzY0YWQ4
OWE5NjZhYjhmYjUwNmZhM2VhZDFiNDdlNWE1NWUyMGNkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL0ZvY3VzQ29udHJvbGxlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9G
b2N1c0NvbnRyb2xsZXIuY3BwCkBAIC01MzQsNyArNTM0LDcgQEAgYm9vbCBGb2N1c0NvbnRyb2xs
ZXI6OmFkdmFuY2VGb2N1c0luRG9jdW1lbnRPcmRlcihGb2N1c0RpcmVjdGlvbiBkaXJlY3Rpb24s
IEtleWIKICAgICB9CiAKICAgICBlbGVtZW50LT5zZXRIYXNGb2N1c1Zpc2libGUodHJ1ZSk7Ci0g
ICAgZWxlbWVudC0+Zm9jdXMoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlOjpTZWxlY3RBbGwsIGRp
cmVjdGlvbik7CisgICAgZWxlbWVudC0+Zm9jdXMoeyBTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGU6
OlNlbGVjdEFsbCwgZGlyZWN0aW9uIH0pOwogICAgIHJldHVybiB0cnVlOwogfQogCkBAIC0xMTA4
LDcgKzExMDgsNyBAQCBib29sIEZvY3VzQ29udHJvbGxlcjo6YWR2YW5jZUZvY3VzRGlyZWN0aW9u
YWxseUluQ29udGFpbmVyKE5vZGUqIGNvbnRhaW5lciwgY29ucwogICAgIEVsZW1lbnQqIGVsZW1l
bnQgPSBkb3duY2FzdDxFbGVtZW50Pihmb2N1c0NhbmRpZGF0ZS5mb2N1c2FibGVOb2RlKTsKICAg
ICBBU1NFUlQoZWxlbWVudCk7CiAKLSAgICBlbGVtZW50LT5mb2N1cyhTZWxlY3Rpb25SZXN0b3Jh
dGlvbk1vZGU6OlNlbGVjdEFsbCwgZGlyZWN0aW9uKTsKKyAgICBlbGVtZW50LT5mb2N1cyh7IFNl
bGVjdGlvblJlc3RvcmF0aW9uTW9kZTo6U2VsZWN0QWxsLCBkaXJlY3Rpb24gfSk7CiAgICAgcmV0
dXJuIHRydWU7CiB9CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91
dFRlc3RzL0NoYW5nZUxvZwppbmRleCA3MGNlYTZlMzYzYTc0YjJkNjRlYWUyNDE1NjY0OThhZTkw
MTE3ZWNlLi43MzNhMmQ1OTNhNDEyMWM4ZWEyZjYyNmU5ZjYyODkwNGIzZGIyMDJjIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTUgQEAKKzIwMjEtMDMtMjIgIFJvYiBCdWlzICA8cmJ1aXNAaWdhbGlhLmNvbT4K
KworICAgICAgICBFbmFibGUgYWJpbGl0eSB0byBwcmV2ZW50IHNjcm9sbGluZyBpbiBFbGVtZW50
LmZvY3VzKCkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTE3ODU4MworCisgICAgICAgIFJldmlld2VkIGJ5IFNpbW9uIEZyYXNlci4KKworICAgICAgICBU
aGUgdGVzdCBwcmV2ZW50U2Nyb2xsLXRleHRhcmVhLmh0bWwgbm93IHBhc3NlcyBvbiBhbGwgcGxh
dGZvcm1zLgorCisgICAgICAgICogcGxhdGZvcm0vaW9zLXdrMi9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvaW50ZXJhY3Rpb24vZm9jdXMvcHJvY2Vzc2luZy1tb2RlbC9wcmV2
ZW50U2Nyb2xsLXRleHRhcmVhLWV4cGVjdGVkLnR4dDogUmVtb3ZlZC4KKyAgICAgICAgKiBwbGF0
Zm9ybS9tYWMtd2sxL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9pbnRlcmFj
dGlvbi9mb2N1cy9wcm9jZXNzaW5nLW1vZGVsL3ByZXZlbnRTY3JvbGwtdGV4dGFyZWEtZXhwZWN0
ZWQudHh0OiBSZW1vdmVkLgorCiAyMDIxLTAzLTIyICBMYXVybyBNb3VyYSAgPGxtb3VyYUBpZ2Fs
aWEuY29tPgogCiAgICAgICAgIEdhcmRlbmluZyBzb21lIHBhc3NpbmcgdGVzdHMKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2MvQ2hhbmdlTG9nCmluZGV4IGYwNjNlZTM3NjMwNjJlYjNmYWMxZGQ2OGYxNjMyM2Zm
MWRmMjNlMzUuLjM0NmEwMDUzZTBkZDRjMDQzNjhhODQ0OTNkMjE4Zjk5ODBjNjhkMDQgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDIxLTAzLTIyICBS
b2IgQnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgRW5hYmxlIGFiaWxpdHkgdG8g
cHJldmVudCBzY3JvbGxpbmcgaW4gRWxlbWVudC5mb2N1cygpCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzg1ODMKKworICAgICAgICBSZXZpZXdlZCBi
eSBTaW1vbiBGcmFzZXIuCisKKyAgICAgICAgVXBkYXRlIGltcHJvdmVkIHRlc3QgcmVzdWx0Lgor
CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvaW50ZXJhY3Rpb24vZm9jdXMvcHJv
Y2Vzc2luZy1tb2RlbC9wcmV2ZW50U2Nyb2xsLW5lc3RlZC1zY3JvbGwtZWxlbWVudHMtZXhwZWN0
ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9pbnRlcmFj
dGlvbi9mb2N1cy9wcm9jZXNzaW5nLW1vZGVsL3ByZXZlbnRTY3JvbGwtbmVzdGVkLXNjcm9sbC1l
bGVtZW50cy5odG1sOiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9p
bnRlcmFjdGlvbi9mb2N1cy9wcm9jZXNzaW5nLW1vZGVsL3ByZXZlbnRTY3JvbGwtdGV4dGFyZWEt
ZXhwZWN0ZWQudHh0OgorCiAyMDIxLTAzLTIyICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5j
b20+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgdW5za2lwIGF1ZGlvd29ya2xldHByb2Nlc3Nvci1w
YXJhbS1nZXR0ZXItb3ZlcnJpZGRlbi5odHRwcy5odG1sIFdQVCB0ZXN0IGFzIGl0IGlzIG5vIGxv
bmdlciBmYWlsaW5nLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9odG1sL2ludGVyYWN0aW9uL2ZvY3VzL3Byb2Nlc3NpbmctbW9kZWwvcHJl
dmVudFNjcm9sbC1uZXN0ZWQtc2Nyb2xsLWVsZW1lbnRzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9pbnRlcmFjdGlvbi9mb2N1
cy9wcm9jZXNzaW5nLW1vZGVsL3ByZXZlbnRTY3JvbGwtbmVzdGVkLXNjcm9sbC1lbGVtZW50cy1l
eHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOGExZDliOTVhZWVmZjE3ZGU5YjBhZmI0NWNmN2Q4Mjc5
NTVjYzBlMQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC9pbnRlcmFjdGlvbi9mb2N1cy9wcm9jZXNzaW5nLW1vZGVsL3By
ZXZlbnRTY3JvbGwtbmVzdGVkLXNjcm9sbC1lbGVtZW50cy1leHBlY3RlZC50eHQKQEAgLTAsMCAr
MSwxMiBAQAorMV8xCisxXzIKKzFfMworMl8xCisyXzIKKzJfMworM18xCiszXzIKKzNfMworCitQ
QVNTIGZvY3VzKG9wdGlvbnMpIC0gcHJldmVudFNjcm9sbCBvbiBuZXN0ZWQgc2Nyb2xsIGVsZW1l
bnRzCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvaHRtbC9pbnRlcmFjdGlvbi9mb2N1cy9wcm9jZXNzaW5nLW1vZGVsL3ByZXZlbnRTY3Jv
bGwtbmVzdGVkLXNjcm9sbC1lbGVtZW50cy5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2ludGVyYWN0aW9uL2ZvY3VzL3Byb2Nlc3NpbmctbW9k
ZWwvcHJldmVudFNjcm9sbC1uZXN0ZWQtc2Nyb2xsLWVsZW1lbnRzLmh0bWwKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
YTdhZTc2ZjczM2EzNjNjYTI5YmIzYWU4N2YzMTk3MjI3NDRlYTk5NwotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9pbnRl
cmFjdGlvbi9mb2N1cy9wcm9jZXNzaW5nLW1vZGVsL3ByZXZlbnRTY3JvbGwtbmVzdGVkLXNjcm9s
bC1lbGVtZW50cy5odG1sCkBAIC0wLDAgKzEsNjIgQEAKKzwhZG9jdHlwZSBodG1sPgorPHRpdGxl
PmZvY3VzKG9wdGlvbnMpIC0gcHJldmVudFNjcm9sbCBvbiBuZXN0ZWQgc2Nyb2xsIGVsZW1lbnRz
PC90aXRsZT4KKzxzY3JpcHQgc3JjPS9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanM+PC9zY3JpcHQ+
Cis8c2NyaXB0IHNyYz0vcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzPjwvc2NyaXB0Pgor
PHN0eWxlPgorICAuc2Nyb2xsQm94IHsgd2lkdGg6IDQwMHB4OyBoZWlnaHQ6IDMwMHB4OyBib3Jk
ZXI6IDFweCBzb2xpZCB9CisgIC5iaWdib3ggeyB3aWR0aDogMzgwcHg7IGhlaWdodDogMzAwcHg7
IGJvcmRlcjogMXB4IHNvbGlkIH0KKyAgLmJveCB7IHdpZHRoOiAzODBweDsgaGVpZ2h0OiAxNTBw
eDsgYm9yZGVyOiAxcHggc29saWQgfQorPC9zdHlsZT4KKzxkaXYgY2xhc3M9InNjcm9sbEJveCIg
c3R5bGU9Im92ZXJmbG93LXk6IHNjcm9sbDsiPgorICA8ZGl2IGNsYXNzPSJiaWdib3giIGlkPSIx
IiBzdHlsZT0ib3ZlcmZsb3cteTogc2Nyb2xsOyIgdGFiaW5kZXg9MT4KKyAgICA8ZGl2IGNsYXNz
PSJib3giIGlkPSIxXzEiIHRhYmluZGV4PTE+MV8xPC9kaXY+CisgICAgPGRpdiBjbGFzcz0iYm94
IiBpZD0iMV8yIiB0YWJpbmRleD0xPjFfMjwvZGl2PgorICAgIDxkaXYgY2xhc3M9ImJveCIgaWQ9
IjFfMyIgdGFiaW5kZXg9MT4xXzM8L2Rpdj4KKyAgPC9kaXY+CisgIDxkaXYgY2xhc3M9ImJpZ2Jv
eCIgaWQ9IjIiIHN0eWxlPSJvdmVyZmxvdy15OiBzY3JvbGw7IiB0YWJpbmRleD0xPgorICAgIDxk
aXYgY2xhc3M9ImJveCIgaWQ9IjJfMSIgdGFiaW5kZXg9MT4yXzE8L2Rpdj4KKyAgICA8ZGl2IGNs
YXNzPSJib3giIGlkPSIyXzIiIHRhYmluZGV4PTE+Ml8yPC9kaXY+CisgICAgPGRpdiBjbGFzcz0i
Ym94IiBpZD0iMl8zIiB0YWJpbmRleD0xPjJfMzwvZGl2PgorICA8L2Rpdj4KKyAgPGRpdiBjbGFz
cz0iYmlnYm94IiBpZD0iMyIgc3R5bGU9Im92ZXJmbG93LXk6IHNjcm9sbDsiIHRhYmluZGV4PTE+
CisgICAgPGRpdiBjbGFzcz0iYm94IiBpZD0iM18xIiB0YWJpbmRleD0xPjNfMTwvZGl2PgorICAg
IDxkaXYgY2xhc3M9ImJveCIgaWQ9IjNfMiIgdGFiaW5kZXg9MT4zXzI8L2Rpdj4KKyAgICA8ZGl2
IGNsYXNzPSJib3giIGlkPSIzXzMiIHRhYmluZGV4PTE+M18zPC9kaXY+CisgIDwvZGl2PgorPC9k
aXY+Cis8c2NyaXB0PgorcHJvbWlzZV90ZXN0KGFzeW5jIGZ1bmN0aW9uKHQpIHsKKyAgYXdhaXQg
bmV3IFByb21pc2UocmVzb2x2ZSA9PiB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsIHJl
c29sdmUpKTsKKyAgbGV0IGRpdjJfMiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCIyXzIiKTsK
KyAgZGl2Ml8yLmZvY3VzKHsgcHJldmVudFNjcm9sbDogdHJ1ZSB9KTsKKworICBhd2FpdCBuZXcg
UHJvbWlzZShyZXNvbHZlID0+IHsKKyAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4gcmVx
dWVzdEFuaW1hdGlvbkZyYW1lKHJlc29sdmUpKTsKKyAgfSk7CisKKyAgYXNzZXJ0X2VxdWFscyhk
b2N1bWVudC5hY3RpdmVFbGVtZW50LCBkaXYyXzIsIGBib3ggMl8yOiBzaG91bGQgaGF2ZSBiZWVu
IGZvY3VzZWRgKTsKKyAgYXNzZXJ0X2VxdWFscyhkaXYyXzIuc2Nyb2xsVG9wLCAwLCAiYm94IDJf
Mjogc2hvdWxkIG5vdCBoYXZlIHNjcm9sbGVkIik7CisgIGFzc2VydF9lcXVhbHMoZGl2Ml8yLnBh
cmVudE5vZGUuc2Nyb2xsVG9wLCAwLCAiYm94IDJfMjogc2hvdWxkIG5vdCBoYXZlIHNjcm9sbGVk
IGFuY2VzdG9yIik7CisKKyAgLy8gUmVzZXQgZm9jdXMKKyAgbGV0IGRpdjFfMSA9IGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCIxXzEiKTsKKyAgZGl2MV8xLmZvY3VzKCk7CisKKyAgYXdhaXQgbmV3
IFByb21pc2UocmVzb2x2ZSA9PiB7CisgICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHJl
cXVlc3RBbmltYXRpb25GcmFtZShyZXNvbHZlKSk7CisgIH0pOworICBhc3NlcnRfZXF1YWxzKGRv
Y3VtZW50LmFjdGl2ZUVsZW1lbnQsIGRpdjFfMSwgYGJveCAxXzE6IHNob3VsZCBoYXZlIGJlZW4g
Zm9jdXNlZGApOworCisgIGxldCBkaXYyID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIjIiKTsK
KyAgZGl2Mi5mb2N1cyh7IHByZXZlbnRTY3JvbGw6IHRydWUgfSk7CisKKyAgYXdhaXQgbmV3IFBy
b21pc2UocmVzb2x2ZSA9PiB7CisgICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHJlcXVl
c3RBbmltYXRpb25GcmFtZShyZXNvbHZlKSk7CisgIH0pOworCisgIGFzc2VydF9lcXVhbHMoZG9j
dW1lbnQuYWN0aXZlRWxlbWVudCwgZGl2MiwgYGJveCAyOiBzaG91bGQgaGF2ZSBiZWVuIGZvY3Vz
ZWRgKTsKKyAgYXNzZXJ0X2VxdWFscyhkaXYyLnNjcm9sbFRvcCwgMCwgImJveCAyOiBzaG91bGQg
bm90IGhhdmUgc2Nyb2xsZWQiKTsKKyAgYXNzZXJ0X2VxdWFscyhkaXYyXzIuc2Nyb2xsVG9wLCAw
LCAiYm94IDJfMjogc2hvdWxkIG5vdCBoYXZlIHNjcm9sbGVkIik7CisgIGFzc2VydF9lcXVhbHMo
ZGl2Mi5wYXJlbnROb2RlLnNjcm9sbFRvcCwgMCwgImJveCAyOiBzaG91bGQgbm90IGhhdmUgc2Ny
b2xsZWQgYW5jZXN0b3IiKTsKK30pOworPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvaW50ZXJhY3Rpb24vZm9jdXMv
cHJvY2Vzc2luZy1tb2RlbC9wcmV2ZW50U2Nyb2xsLXRleHRhcmVhLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9pbnRlcmFjdGlv
bi9mb2N1cy9wcm9jZXNzaW5nLW1vZGVsL3ByZXZlbnRTY3JvbGwtdGV4dGFyZWEtZXhwZWN0ZWQu
dHh0CmluZGV4IDA4YWFmYjMxNjM2MDg0OTA4Nzk4MGUwMDUwNDJkN2M4NWFkYTg2NWIuLmM3MzRh
NjlkZTlhNWNmZjVhZDU1ZWVmOWNkZDFkNmQyZWVjZTZkM2EgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9pbnRlcmFjdGlvbi9mb2N1
cy9wcm9jZXNzaW5nLW1vZGVsL3ByZXZlbnRTY3JvbGwtdGV4dGFyZWEtZXhwZWN0ZWQudHh0Cisr
KyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9pbnRl
cmFjdGlvbi9mb2N1cy9wcm9jZXNzaW5nLW1vZGVsL3ByZXZlbnRTY3JvbGwtdGV4dGFyZWEtZXhw
ZWN0ZWQudHh0CkBAIC0xLDQgKzEsNCBAQAogCiAKLUZBSUwgcHJldmVudFNjcm9sbDogdHJ1ZSBv
biBhIHRleHRhcmVhIGVsZW1lbnQgYXNzZXJ0X2VxdWFsczogVEVYVEFSRUE6IFNob3VsZCBub3Qg
aGF2ZSBzY3JvbGxlZCBhZnRlciBhIGNvdXBsZSBldmVudCBsb29wIHRpY2tzIGV4cGVjdGVkIDAg
YnV0IGdvdCA5MjAKK1BBU1MgcHJldmVudFNjcm9sbDogdHJ1ZSBvbiBhIHRleHRhcmVhIGVsZW1l
bnQKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zLXdrMi9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvaW50ZXJhY3Rpb24vZm9jdXMvcHJvY2Vzc2luZy1t
b2RlbC9wcmV2ZW50U2Nyb2xsLXRleHRhcmVhLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3Bs
YXRmb3JtL2lvcy13azIvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2ludGVy
YWN0aW9uL2ZvY3VzL3Byb2Nlc3NpbmctbW9kZWwvcHJldmVudFNjcm9sbC10ZXh0YXJlYS1leHBl
Y3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGM3MzRhNjlkZTlhNWNmZjVh
ZDU1ZWVmOWNkZDFkNmQyZWVjZTZkM2EuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zLXdrMi9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvaW50ZXJhY3Rpb24vZm9jdXMvcHJvY2Vzc2luZy1tb2Rl
bC9wcmV2ZW50U2Nyb2xsLXRleHRhcmVhLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0x
LDQgKzAsMCBAQAotCi0KLVBBU1MgcHJldmVudFNjcm9sbDogdHJ1ZSBvbiBhIHRleHRhcmVhIGVs
ZW1lbnQKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMS9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvaW50ZXJhY3Rpb24vZm9jdXMvcHJvY2Vzc2lu
Zy1tb2RlbC9wcmV2ZW50U2Nyb2xsLXRleHRhcmVhLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L3BsYXRmb3JtL21hYy13azEvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2lu
dGVyYWN0aW9uL2ZvY3VzL3Byb2Nlc3NpbmctbW9kZWwvcHJldmVudFNjcm9sbC10ZXh0YXJlYS1l
eHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDUyYWJhYmJmYmQ3Mjdl
Y2RmYmJjZGRkNmNjOGUxMDBkM2RkOWNhZjUuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMS9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvaW50ZXJhY3Rpb24vZm9jdXMvcHJvY2Vzc2luZy1t
b2RlbC9wcmV2ZW50U2Nyb2xsLXRleHRhcmVhLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBA
IC0xLDQgKzAsMCBAQAotCi0KLUZBSUwgcHJldmVudFNjcm9sbDogdHJ1ZSBvbiBhIHRleHRhcmVh
IGVsZW1lbnQgYXNzZXJ0X2VxdWFsczogVEVYVEFSRUE6IFNob3VsZCBub3QgaGF2ZSBzY3JvbGxl
ZCBleHBlY3RlZCAwIGJ1dCBnb3QgOTIwCi0K
</data>

          </attachment>
      

    </bug>

</bugzilla>