<?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>237487</bug_id>
          
          <creation_ts>2022-03-04 15:07:10 -0800</creation_ts>
          <short_desc>-webkit-border-image should be a shorthand</short_desc>
          <delta_ts>2022-04-06 08:12:48 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>CSS</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>238102</dependson>
          <blocked>238125</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Oriol Brufau">obrufau</reporter>
          <assigned_to name="Oriol Brufau">obrufau</assigned_to>
          <cc>changseok</cc>
    
    <cc>clopez</cc>
    
    <cc>darin</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>joepeck</cc>
    
    <cc>koivisto</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>macpherson</cc>
    
    <cc>menard</cc>
    
    <cc>pdr</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1848431</commentid>
    <comment_count>0</comment_count>
    <who name="Oriol Brufau">obrufau</who>
    <bug_when>2022-03-04 15:07:10 -0800</bug_when>
    <thetext>Like border-image, -webkit-border-image should be a shorthand of border-image-*.
It can keep its quirk of adding &apos;fill&apos; to border-image-slice.
But it should be a shorthand because otherwise this doesn&apos;t work:

    &lt;!DOCTYPE html&gt;
    &lt;style&gt;
    @layer {
      #target {
        display: block;
        width: 100px;
        height: 100px;
        border-image: url(&apos;data:image/svg+xml,&lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; viewBox=&quot;0 0 2 2&quot; width=&quot;8&quot; height=&quot;8&quot;&gt;&lt;circle cx=&quot;1&quot; cy=&quot;1&quot; r=&quot;1&quot;&gt;&lt;/circle&gt;&lt;/svg&gt;&apos;) 4 / 16px;
      }
    }
    @layer {
      #target {
        all: revert-layer;
      }
    }
    &lt;/style&gt;
    &lt;div id=&quot;target&quot;&gt;&lt;/div&gt;

For starters, revert-layer doesn&apos;t work due to bug 236272 since &apos;border-image-*&apos; are deferred properties.
But even after applying the patch for that bug, it will still not work, because the &apos;all&apos; shorthand will revert both &apos;border-image-*&apos; and &apos;-webkit-border-image&apos;.
And since &apos;-webkit-border-image&apos; is treated as a totally independent property, and it doesn&apos;t appear in any declaration (other than in &apos;all&apos;), it&apos;s unset.
Since it&apos;s around the end of the &apos;all&apos; expansion, then it takes precedence over &apos;border-image-*&apos;.
This would be fine if &apos;-webkit-border-image&apos; was just a shorthand of &apos;border-image-*&apos;.

It should also be a shorthand of the &apos;border-*-width&apos; properties, since it may set them. Otherwise:

  &lt;div id=&quot;target&quot; style=&quot;-webkit-border-image: 4 / 10px; border-style: solid; border-width: 20px;&quot;&gt;&lt;/div&gt;
  &lt;script&gt;document.body.append(getComputedStyle(target).borderWidth);&lt;/script&gt;

is 10px, should be 20px.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1848549</commentid>
    <comment_count>1</comment_count>
      <attachid>453918</attachid>
    <who name="Oriol Brufau">obrufau</who>
    <bug_when>2022-03-05 12:32:47 -0800</bug_when>
    <thetext>Created attachment 453918
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1848563</commentid>
    <comment_count>2</comment_count>
      <attachid>453921</attachid>
    <who name="Oriol Brufau">obrufau</who>
    <bug_when>2022-03-05 14:29:34 -0800</bug_when>
    <thetext>Created attachment 453921
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1849012</commentid>
    <comment_count>3</comment_count>
      <attachid>454046</attachid>
    <who name="Oriol Brufau">obrufau</who>
    <bug_when>2022-03-07 15:59:54 -0800</bug_when>
    <thetext>Created attachment 454046
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1850161</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2022-03-10 10:19:26 -0800</bug_when>
    <thetext>&lt;rdar://problem/90106626&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1851155</commentid>
    <comment_count>5</comment_count>
      <attachid>454667</attachid>
    <who name="Oriol Brufau">obrufau</who>
    <bug_when>2022-03-14 23:15:21 -0700</bug_when>
    <thetext>Created attachment 454667
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1851156</commentid>
    <comment_count>6</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2022-03-14 23:17:37 -0700</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>1851172</commentid>
    <comment_count>7</comment_count>
      <attachid>454668</attachid>
    <who name="Oriol Brufau">obrufau</who>
    <bug_when>2022-03-14 23:50:41 -0700</bug_when>
    <thetext>Created attachment 454668
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1853067</commentid>
    <comment_count>8</comment_count>
      <attachid>455197</attachid>
    <who name="Oriol Brufau">obrufau</who>
    <bug_when>2022-03-20 09:08:07 -0700</bug_when>
    <thetext>Created attachment 455197
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1853078</commentid>
    <comment_count>9</comment_count>
      <attachid>455200</attachid>
    <who name="Oriol Brufau">obrufau</who>
    <bug_when>2022-03-20 10:34:27 -0700</bug_when>
    <thetext>Created attachment 455200
Patch for EWS</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1853460</commentid>
    <comment_count>10</comment_count>
    <who name="Oriol Brufau">obrufau</who>
    <bug_when>2022-03-21 18:17:02 -0700</bug_when>
    <thetext>&gt; It should also be a shorthand of the &apos;border-*-width&apos; properties, since it
&gt; may set them. Otherwise:
&gt; 
&gt;   &lt;div id=&quot;target&quot; style=&quot;-webkit-border-image: 4 / 10px; border-style:
&gt; solid; border-width: 20px;&quot;&gt;&lt;/div&gt;
&gt;  
&gt; &lt;script&gt;document.body.append(getComputedStyle(target).borderWidth);&lt;/script&gt;
&gt; 
&gt; is 10px, should be 20px.

It&apos;s actually 20px now as a side-effect of bug 236199.

But after further thought, this may not be the best model. Because if we say that -webkit-border-image is a shorthand whose expansion may include border-*-width or not depending on the value, then it gets tricky if it&apos;s assigned to a variable.

Should border-*-width be set to a pending-substitution value? If not, and border-image-width end up having a length, then the border-*-width won&apos;t be affected. But if they are set to the pending-substitution value, and border-*-width isn&apos;t a length, then border-*-width will be reset to the initial value... I guess I could make it so that the pending-substitution value is not applied, now border-*-width are applied in parse order so the previous declaration will have been applied. But it seems quite hacky since it wouldn&apos;t work with other properties.

So it may actually be better to implement this in a way analogous to border-*-width computing to 0 when border-*-style is none or hidden: https://webkit-search.igalia.com/webkit/source/Source/WebCore/rendering/style/BorderData.h#69

    float borderLeftWidth() const
    {
        if (m_left.style() == BorderStyle::None || m_left.style() == BorderStyle::Hidden)
            return 0; 
        return m_left.width();
    }

This means I will need a flag to track whether the border image comes from -webkit-border-image. I guess I can make it set border-image-width to some special internal value.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1857394</commentid>
    <comment_count>11</comment_count>
      <attachid>456400</attachid>
    <who name="Oriol Brufau">obrufau</who>
    <bug_when>2022-04-01 14:09:36 -0700</bug_when>
    <thetext>Created attachment 456400
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1857398</commentid>
    <comment_count>12</comment_count>
      <attachid>456404</attachid>
    <who name="Oriol Brufau">obrufau</who>
    <bug_when>2022-04-01 14:25:33 -0700</bug_when>
    <thetext>Created attachment 456404
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1857470</commentid>
    <comment_count>13</comment_count>
      <attachid>456423</attachid>
    <who name="Oriol Brufau">obrufau</who>
    <bug_when>2022-04-01 18:04:30 -0700</bug_when>
    <thetext>Created attachment 456423
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1857576</commentid>
    <comment_count>14</comment_count>
      <attachid>456458</attachid>
    <who name="Oriol Brufau">obrufau</who>
    <bug_when>2022-04-02 08:11:42 -0700</bug_when>
    <thetext>Created attachment 456458
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1858726</commentid>
    <comment_count>15</comment_count>
      <attachid>456458</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2022-04-06 01:46:10 -0700</bug_when>
    <thetext>Comment on attachment 456458
Patch

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

&gt; Source/WebCore/css/CSSBorderImageWidthValue.h:48
&gt; +    Quad* widths() const { return m_widths ? m_widths-&gt;quadValue() : nullptr; }
&gt; +
&gt; +    bool equals(const CSSBorderImageWidthValue&amp;) const;
&gt; +
&gt; +    RefPtr&lt;CSSPrimitiveValue&gt; m_widths;

Why do these structures need to be so complex? Here we have CSSBorderImageWidthValue which contains a CSSPrimitiveValue which is just a wrapper around a Quad. And then the Quad just wraps 4 CSSPrimitiveValues. Why can&apos;t this type just contain Quad directly? Or contain 4 CSSPrimitiveValues directly without a Quad?

It this patch some sort of step towards making this saner?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1858786</commentid>
    <comment_count>16</comment_count>
    <who name="Oriol Brufau">obrufau</who>
    <bug_when>2022-04-06 04:53:46 -0700</bug_when>
    <thetext>(In reply to Antti Koivisto from comment #15)
&gt; Comment on attachment 456458 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=456458&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/css/CSSBorderImageWidthValue.h:48
&gt; &gt; +    Quad* widths() const { return m_widths ? m_widths-&gt;quadValue() : nullptr; }
&gt; &gt; +
&gt; &gt; +    bool equals(const CSSBorderImageWidthValue&amp;) const;
&gt; &gt; +
&gt; &gt; +    RefPtr&lt;CSSPrimitiveValue&gt; m_widths;
&gt; 
&gt; Why do these structures need to be so complex? Here we have
&gt; CSSBorderImageWidthValue which contains a CSSPrimitiveValue which is just a
&gt; wrapper around a Quad. And then the Quad just wraps 4 CSSPrimitiveValues.
&gt; Why can&apos;t this type just contain Quad directly? Or contain 4
&gt; CSSPrimitiveValues directly without a Quad?
&gt; 
&gt; It this patch some sort of step towards making this saner?

No, I just thought it would be nice to copy the same approach as CSSBorderImageSliceValue.

But if you don&apos;t like these structures, I can probably do it without adding this CSSBorderImageWidthValue structure.

I don&apos;t plan to do further work in -webkit-border-image

I&apos;m only doing this change because it&apos;s the only case of deferred properties where instead of having a pair of longhands, we have a longhand -webkit-border-image that maps into multiple longhands. But that&apos;s a mess with revert-layer and such.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1858790</commentid>
    <comment_count>17</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2022-04-06 05:18:02 -0700</bug_when>
    <thetext>Ok. I guess this stuff with Quads is better cleaned separately anyway.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1858833</commentid>
    <comment_count>18</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-04-06 08:12:44 -0700</bug_when>
    <thetext>Committed r292467 (249318@main): &lt;https://commits.webkit.org/249318@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 456458.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>453918</attachid>
            <date>2022-03-05 12:32:47 -0800</date>
            <delta_ts>2022-03-05 14:48:53 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-237487-20220305213245.patch</filename>
            <type>text/plain</type>
            <size>14167</size>
            <attacher name="Oriol Brufau">obrufau</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkwNzk2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZWM3NjI3YTk1ZDkyNTBi
ZTQzNzBkMTZkMTQ4NGQzMDBiMWRmYmI2Yy4uMWRiMTJlYmQyMDI2MzE1OWYzNmYzMTc0NDU0YTc1
ZDZlOGY4OTRjOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM1IEBACisyMDIyLTAzLTA1ICBPcmlv
bCBCcnVmYXUgIDxvYnJ1ZmF1QGlnYWxpYS5jb20+CisKKyAgICAgICAgW2Nzc10gVHVybiAtd2Vi
a2l0LWJvcmRlci1pbWFnZSBpbnRvIGEgc2hvcnRoYW5kCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzc0ODcKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGUgJy13ZWJraXQtYm9yZGVyLWltYWdlJyBwcm9w
ZXJ0eSB3YXMgY29uc2lkZXJlZCB0byBiZSBhIGxvbmdoYW5kLAorICAgICAgICBzaGFyaW5nIGNv
bXB1dGVkIHZhbHVlcyB3aXRoIHRoZSB2YXJpb3VzICdib3JkZXItaW1hZ2UtKicuCisKKyAgICAg
ICAgVGhpcyBwYXRjaCB0dXJucyBpdCBpbnRvIGEgbG9uZ2hhbmQgb2YgJ2JvcmRlci1pbWFnZS0q
JywgYW5kIGFsc28gb2YKKyAgICAgICAgJ2JvcmRlci0qLXdpZHRoJy4gVGhlIGxhdHRlciBpcyBi
ZWNhdXNlIEknbSBwcmVzZXJ2aW5nIHRoZSBsZWdhY3kKKyAgICAgICAgYmVoYXZpb3Igb2YgbWFr
aW5nIHRoZSBib3JkZXIgaW1hZ2Ugd2lkdGhzIGFsc28gc2V0IHRoZSBib3JkZXIgd2lkdGhzCisg
ICAgICAgIGlmIHRoZXkgYXJlIGEgbGVuZ3RoLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cyAoT09Q
UyEpLgorCisgICAgICAgICogY3NzL0NTU1Byb3BlcnRpZXMuanNvbjoKKyAgICAgICAgKiBjc3Mv
Q1NTVG9TdHlsZU1hcC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NUb1N0eWxlTWFwOjptYXBO
aW5lUGllY2VJbWFnZSk6CisgICAgICAgICogY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlci5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpjb25zdW1lQm9yZGVySW1hZ2VXaWR0aCk6CisgICAgICAg
IChXZWJDb3JlOjpjb25zdW1lQm9yZGVySW1hZ2VDb21wb25lbnRzKToKKyAgICAgICAgKFdlYkNv
cmU6OmNvbnN1bWVXZWJraXRCb3JkZXJJbWFnZSk6CisgICAgICAgIChXZWJDb3JlOjpDU1NQcm9w
ZXJ0eVBhcnNlcjo6cGFyc2VTaW5nbGVWYWx1ZSk6CisgICAgICAgIChXZWJDb3JlOjpDU1NQcm9w
ZXJ0eVBhcnNlcjo6Y29uc3VtZUJvcmRlckltYWdlKToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1By
b3BlcnR5UGFyc2VyOjpwYXJzZVNob3J0aGFuZCk6CisgICAgICAgICogc3R5bGUvUHJvcGVydHlD
YXNjYWRlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlOjpzaG91bGRBcHBseVByb3BlcnR5
SW5QYXJzZU9yZGVyKToKKyAgICAgICAgKiBzdHlsZS9TdHlsZUJ1aWxkZXJDb252ZXJ0ZXIuaDoK
KyAgICAgICAgKFdlYkNvcmU6OlN0eWxlOjpCdWlsZGVyQ29udmVydGVyOjpjb252ZXJ0Qm9yZGVy
SW1hZ2UpOiBEZWxldGVkLgorCiAyMDIyLTAzLTAzICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFz
ZXJAYXBwbGUuY29tPgogCiAgICAgICAgIG5hc2EuZ292IHBhZ2Ugd2l0aCBmaXhlZCBiYWNrZ3Jv
dW5kcyBwYWludHMgaW5jb3JyZWN0bHkgb24gc2Nyb2xsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTUHJvcGVydGllcy5qc29uIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3Bl
cnRpZXMuanNvbgppbmRleCAxMjM4ZDQ3NGI3MjBiYmIxYzM1NWUxNmE0ZjA4ODlhYjMzNDYyODUz
Li44NDE5NzJjMjEyZTE3ZDdmZGFmMGExYTY4YjJkMjU2ZGVmMjk0NmRlIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVydGllcy5qc29uCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9DU1NQcm9wZXJ0aWVzLmpzb24KQEAgLTUzODEsOCArNTM4MSwyMCBAQAogICAgICAgICB9
LAogICAgICAgICAiLXdlYmtpdC1ib3JkZXItaW1hZ2UiOiB7CiAgICAgICAgICAgICAiY29kZWdl
bi1wcm9wZXJ0aWVzIjogewotICAgICAgICAgICAgICAgICJpbml0aWFsIjogImluaXRpYWxOaW5l
UGllY2VJbWFnZSIsCi0gICAgICAgICAgICAgICAgImNvbnZlcnRlciI6ICJCb3JkZXJJbWFnZTxD
U1NQcm9wZXJ0eVdlYmtpdEJvcmRlckltYWdlPiIKKyAgICAgICAgICAgICAgICAibG9uZ2hhbmRz
IjogWworICAgICAgICAgICAgICAgICAgICAiYm9yZGVyLXRvcC13aWR0aCIsCisgICAgICAgICAg
ICAgICAgICAgICJib3JkZXItcmlnaHQtd2lkdGgiLAorICAgICAgICAgICAgICAgICAgICAiYm9y
ZGVyLWJvdHRvbS13aWR0aCIsCisgICAgICAgICAgICAgICAgICAgICJib3JkZXItbGVmdC13aWR0
aCIsCisgICAgICAgICAgICAgICAgICAgICJib3JkZXItaW1hZ2Utc291cmNlIiwKKyAgICAgICAg
ICAgICAgICAgICAgImJvcmRlci1pbWFnZS1zbGljZSIsCisgICAgICAgICAgICAgICAgICAgICJi
b3JkZXItaW1hZ2Utd2lkdGgiLAorICAgICAgICAgICAgICAgICAgICAiYm9yZGVyLWltYWdlLW91
dHNldCIsCisgICAgICAgICAgICAgICAgICAgICJib3JkZXItaW1hZ2UtcmVwZWF0IgorICAgICAg
ICAgICAgICAgIF0KKyAgICAgICAgICAgIH0sCisgICAgICAgICAgICAic3RhdHVzIjogeworICAg
ICAgICAgICAgICAgICJjb21tZW50IjogIkRpZmZlcnMgZnJvbSBib3JkZXItaW1hZ2UgaW4gdGhh
dCBpdCBhbHdheXMgaW5jbHVkZXMgdGhlICdmaWxsJyBrZXl3b3JkIGluICdib3JkZXItaW1hZ2Ut
c2xpY2UnLCBhbmQgaXQgc2V0cyAnYm9yZGVyLSotd2lkdGgnIGlmIHRoZSBjb3JyZXNwb25kaW5n
IHNsaWNlIG9mZnNldCBpcy4iCiAgICAgICAgICAgICB9CiAgICAgICAgIH0sCiAgICAgICAgICIt
d2Via2l0LWJvcmRlci1yYWRpdXMiOiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3Mv
Q1NTVG9TdHlsZU1hcC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVG9TdHlsZU1hcC5jcHAK
aW5kZXggOTQ2NjA1MTM1MDUzYWI1ZDM2ODc4Y2NiZjMyMTViOTNhNzEyNThhOS4uNzE5OTc4Njdi
MWY4YTZmYTE1YTEyYjBmMjM1NmJkZGNlZmZkNjEyOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvY3NzL0NTU1RvU3R5bGVNYXAuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NUb1N0
eWxlTWFwLmNwcApAQCAtNTAzLDIwICs1MDMsNiBAQCB2b2lkIENTU1RvU3R5bGVNYXA6Om1hcE5p
bmVQaWVjZUltYWdlKENTU1Byb3BlcnR5SUQgcHJvcGVydHksIENTU1ZhbHVlKiB2YWx1ZSwgTgog
ICAgICAgICAgICAgbWFwTmluZVBpZWNlSW1hZ2VSZXBlYXQoY3VycmVudCwgaW1hZ2UpOwogICAg
ICAgICB9CiAgICAgfQotCi0gICAgaWYgKHByb3BlcnR5ID09IENTU1Byb3BlcnR5V2Via2l0Qm9y
ZGVySW1hZ2UpIHsKLSAgICAgICAgLy8gV2UgaGF2ZSB0byBwcmVzZXJ2ZSB0aGUgbGVnYWN5IGJl
aGF2aW9yIG9mIC13ZWJraXQtYm9yZGVyLWltYWdlIGFuZCBtYWtlIHRoZSBib3JkZXIgc2xpY2Vz
Ci0gICAgICAgIC8vIGFsc28gc2V0IHRoZSBib3JkZXIgd2lkdGhzLiBXZSBkb24ndCBuZWVkIHRv
IHdvcnJ5IGFib3V0IHBlcmNlbnRhZ2VzLCBzaW5jZSB3ZSBkb24ndCBldmVuIHN1cHBvcnQKLSAg
ICAgICAgLy8gdGhvc2Ugb24gcmVhbCBib3JkZXJzIHlldC4KLSAgICAgICAgaWYgKGltYWdlLmJv
cmRlclNsaWNlcygpLnRvcCgpLmlzRml4ZWQoKSkKLSAgICAgICAgICAgIHN0eWxlKCktPnNldEJv
cmRlclRvcFdpZHRoKGltYWdlLmJvcmRlclNsaWNlcygpLnRvcCgpLnZhbHVlKCkpOwotICAgICAg
ICBpZiAoaW1hZ2UuYm9yZGVyU2xpY2VzKCkucmlnaHQoKS5pc0ZpeGVkKCkpCi0gICAgICAgICAg
ICBzdHlsZSgpLT5zZXRCb3JkZXJSaWdodFdpZHRoKGltYWdlLmJvcmRlclNsaWNlcygpLnJpZ2h0
KCkudmFsdWUoKSk7Ci0gICAgICAgIGlmIChpbWFnZS5ib3JkZXJTbGljZXMoKS5ib3R0b20oKS5p
c0ZpeGVkKCkpCi0gICAgICAgICAgICBzdHlsZSgpLT5zZXRCb3JkZXJCb3R0b21XaWR0aChpbWFn
ZS5ib3JkZXJTbGljZXMoKS5ib3R0b20oKS52YWx1ZSgpKTsKLSAgICAgICAgaWYgKGltYWdlLmJv
cmRlclNsaWNlcygpLmxlZnQoKS5pc0ZpeGVkKCkpCi0gICAgICAgICAgICBzdHlsZSgpLT5zZXRC
b3JkZXJMZWZ0V2lkdGgoaW1hZ2UuYm9yZGVyU2xpY2VzKCkubGVmdCgpLnZhbHVlKCkpOwotICAg
IH0KIH0KIAogdm9pZCBDU1NUb1N0eWxlTWFwOjptYXBOaW5lUGllY2VJbWFnZVNsaWNlKENTU1Zh
bHVlJiB2YWx1ZSwgTmluZVBpZWNlSW1hZ2UmIGltYWdlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9j
c3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VyLmNwcAppbmRleCA3YWY4MmJiMTFiZjliYmQwYmJl
OGVjYWYyMTg2NDQ3MDQ1MDY2YzJkLi5kMmFjNWZhZThkNTFiMGYwOTk3N2NkYjY3NDBhN2MzYmMy
NTkyM2ZhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1Byb3BlcnR5
UGFyc2VyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFy
c2VyLmNwcApAQCAtMzAzNyw3ICszMDM3LDcgQEAgc3RhdGljIFJlZlB0cjxDU1NWYWx1ZT4gY29u
c3VtZUJvcmRlckltYWdlT3V0c2V0KENTU1BhcnNlclRva2VuUmFuZ2UmIHJhbmdlKQogICAgIHJl
dHVybiBDU1NWYWx1ZVBvb2w6OnNpbmdsZXRvbigpLmNyZWF0ZVZhbHVlKFdURk1vdmUocXVhZCkp
OwogfQogCi1zdGF0aWMgUmVmUHRyPENTU1ZhbHVlPiBjb25zdW1lQm9yZGVySW1hZ2VXaWR0aChD
U1NQYXJzZXJUb2tlblJhbmdlJiByYW5nZSkKK3N0YXRpYyBSZWZQdHI8Q1NTUHJpbWl0aXZlVmFs
dWU+IGNvbnN1bWVCb3JkZXJJbWFnZVdpZHRoKENTU1BhcnNlclRva2VuUmFuZ2UmIHJhbmdlKQog
ewogICAgIFJlZlB0cjxDU1NQcmltaXRpdmVWYWx1ZT4gd2lkdGhzWzRdOwogCkBAIC0zMDY3LDcg
KzMwNjcsNyBAQCBzdGF0aWMgUmVmUHRyPENTU1ZhbHVlPiBjb25zdW1lQm9yZGVySW1hZ2VXaWR0
aChDU1NQYXJzZXJUb2tlblJhbmdlJiByYW5nZSkKIH0KIAogc3RhdGljIGJvb2wgY29uc3VtZUJv
cmRlckltYWdlQ29tcG9uZW50cyhDU1NQcm9wZXJ0eUlEIHByb3BlcnR5LCBDU1NQYXJzZXJUb2tl
blJhbmdlJiByYW5nZSwgY29uc3QgQ1NTUGFyc2VyQ29udGV4dCYgY29udGV4dCwgUmVmUHRyPENT
U1ZhbHVlPiYgc291cmNlLAotICAgIFJlZlB0cjxDU1NWYWx1ZT4mIHNsaWNlLCBSZWZQdHI8Q1NT
VmFsdWU+JiB3aWR0aCwgUmVmUHRyPENTU1ZhbHVlPiYgb3V0c2V0LCBSZWZQdHI8Q1NTVmFsdWU+
JiByZXBlYXQpCisgICAgUmVmUHRyPENTU1ZhbHVlPiYgc2xpY2UsIFJlZlB0cjxDU1NQcmltaXRp
dmVWYWx1ZT4mIHdpZHRoLCBSZWZQdHI8Q1NTVmFsdWU+JiBvdXRzZXQsIFJlZlB0cjxDU1NWYWx1
ZT4mIHJlcGVhdCkKIHsKICAgICBkbyB7CiAgICAgICAgIGlmICghc291cmNlKSB7CkBAIC0zMTA4
LDcgKzMxMDgsNyBAQCBzdGF0aWMgUmVmUHRyPENTU1ZhbHVlPiBjb25zdW1lV2Via2l0Qm9yZGVy
SW1hZ2UoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eSwgQ1NTUGFycwogewogICAgIFJlZlB0cjxDU1NW
YWx1ZT4gc291cmNlOwogICAgIFJlZlB0cjxDU1NWYWx1ZT4gc2xpY2U7Ci0gICAgUmVmUHRyPENT
U1ZhbHVlPiB3aWR0aDsKKyAgICBSZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+IHdpZHRoOwogICAg
IFJlZlB0cjxDU1NWYWx1ZT4gb3V0c2V0OwogICAgIFJlZlB0cjxDU1NWYWx1ZT4gcmVwZWF0Owog
ICAgIGlmIChjb25zdW1lQm9yZGVySW1hZ2VDb21wb25lbnRzKHByb3BlcnR5LCByYW5nZSwgY29u
dGV4dCwgc291cmNlLCBzbGljZSwgd2lkdGgsIG91dHNldCwgcmVwZWF0KSkKQEAgLTQ2MjIsNyAr
NDYyMiw2IEBAIFJlZlB0cjxDU1NWYWx1ZT4gQ1NTUHJvcGVydHlQYXJzZXI6OnBhcnNlU2luZ2xl
VmFsdWUoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eSwgQ1NTCiAgICAgY2FzZSBDU1NQcm9wZXJ0eUJv
cmRlckltYWdlV2lkdGg6CiAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdE1hc2tCb3hJbWFnZVdp
ZHRoOgogICAgICAgICByZXR1cm4gY29uc3VtZUJvcmRlckltYWdlV2lkdGgobV9yYW5nZSk7Ci0g
ICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEJvcmRlckltYWdlOgogICAgIGNhc2UgQ1NTUHJvcGVy
dHlXZWJraXRNYXNrQm94SW1hZ2U6CiAgICAgICAgIHJldHVybiBjb25zdW1lV2Via2l0Qm9yZGVy
SW1hZ2UocHJvcGVydHksIG1fcmFuZ2UsIG1fY29udGV4dCk7CiAgICAgY2FzZSBDU1NQcm9wZXJ0
eVdlYmtpdEJveFJlZmxlY3Q6CkBAIC01NTQyLDcgKzU1NDEsNyBAQCBib29sIENTU1Byb3BlcnR5
UGFyc2VyOjpjb25zdW1lQm9yZGVySW1hZ2UoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eSwgYm9vbCBp
bXBvcnRhbgogewogICAgIFJlZlB0cjxDU1NWYWx1ZT4gc291cmNlOwogICAgIFJlZlB0cjxDU1NW
YWx1ZT4gc2xpY2U7Ci0gICAgUmVmUHRyPENTU1ZhbHVlPiB3aWR0aDsKKyAgICBSZWZQdHI8Q1NT
UHJpbWl0aXZlVmFsdWU+IHdpZHRoOwogICAgIFJlZlB0cjxDU1NWYWx1ZT4gb3V0c2V0OwogICAg
IFJlZlB0cjxDU1NWYWx1ZT4gcmVwZWF0OwogICAgIApAQCAtNTU1MCwxOCArNTU0OSwzMyBAQCBi
b29sIENTU1Byb3BlcnR5UGFyc2VyOjpjb25zdW1lQm9yZGVySW1hZ2UoQ1NTUHJvcGVydHlJRCBw
cm9wZXJ0eSwgYm9vbCBpbXBvcnRhbgogICAgICAgICBhdXRvJiB2YWx1ZVBvb2wgPSBDU1NWYWx1
ZVBvb2w6OnNpbmdsZXRvbigpOwogICAgICAgICBzd2l0Y2ggKHByb3BlcnR5KSB7CiAgICAgICAg
IGNhc2UgQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2U6Ci0gICAgICAgICAgICBhZGRQcm9w
ZXJ0eVdpdGhJbXBsaWNpdERlZmF1bHQoQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2VTb3Vy
Y2UsIENTU1Byb3BlcnR5V2Via2l0TWFza0JveEltYWdlLCBXVEZNb3ZlKHNvdXJjZSksIHZhbHVl
UG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQpOwotICAgICAgICAg
ICAgYWRkUHJvcGVydHlXaXRoSW1wbGljaXREZWZhdWx0KENTU1Byb3BlcnR5V2Via2l0TWFza0Jv
eEltYWdlU2xpY2UsIENTU1Byb3BlcnR5V2Via2l0TWFza0JveEltYWdlLCBXVEZNb3ZlKHNsaWNl
KSwgdmFsdWVQb29sLmNyZWF0ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCksIGltcG9ydGFudCk7Ci0g
ICAgICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNpdERlZmF1bHQoQ1NTUHJvcGVydHlXZWJr
aXRNYXNrQm94SW1hZ2VXaWR0aCwgQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2UsIFdURk1v
dmUod2lkdGgpLCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFsdWUoKSwgaW1wb3J0
YW50KTsKLSAgICAgICAgICAgIGFkZFByb3BlcnR5V2l0aEltcGxpY2l0RGVmYXVsdChDU1NQcm9w
ZXJ0eVdlYmtpdE1hc2tCb3hJbWFnZU91dHNldCwgQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1h
Z2UsIFdURk1vdmUob3V0c2V0KSwgdmFsdWVQb29sLmNyZWF0ZUltcGxpY2l0SW5pdGlhbFZhbHVl
KCksIGltcG9ydGFudCk7Ci0gICAgICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNpdERlZmF1
bHQoQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2VSZXBlYXQsIENTU1Byb3BlcnR5V2Via2l0
TWFza0JveEltYWdlLCBXVEZNb3ZlKHJlcGVhdCksIHZhbHVlUG9vbC5jcmVhdGVJbXBsaWNpdElu
aXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQpOworICAgICAgICAgICAgYWRkUHJvcGVydHlXaXRoSW1w
bGljaXREZWZhdWx0KENTU1Byb3BlcnR5V2Via2l0TWFza0JveEltYWdlU291cmNlLCBwcm9wZXJ0
eSwgV1RGTW92ZShzb3VyY2UpLCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFsdWUo
KSwgaW1wb3J0YW50KTsKKyAgICAgICAgICAgIGFkZFByb3BlcnR5V2l0aEltcGxpY2l0RGVmYXVs
dChDU1NQcm9wZXJ0eVdlYmtpdE1hc2tCb3hJbWFnZVNsaWNlLCBwcm9wZXJ0eSwgV1RGTW92ZShz
bGljZSksIHZhbHVlUG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQp
OworICAgICAgICAgICAgYWRkUHJvcGVydHlXaXRoSW1wbGljaXREZWZhdWx0KENTU1Byb3BlcnR5
V2Via2l0TWFza0JveEltYWdlV2lkdGgsIHByb3BlcnR5LCBXVEZNb3ZlKHdpZHRoKSwgdmFsdWVQ
b29sLmNyZWF0ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCksIGltcG9ydGFudCk7CisgICAgICAgICAg
ICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNpdERlZmF1bHQoQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94
SW1hZ2VPdXRzZXQsIHByb3BlcnR5LCBXVEZNb3ZlKG91dHNldCksIHZhbHVlUG9vbC5jcmVhdGVJ
bXBsaWNpdEluaXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQpOworICAgICAgICAgICAgYWRkUHJvcGVy
dHlXaXRoSW1wbGljaXREZWZhdWx0KENTU1Byb3BlcnR5V2Via2l0TWFza0JveEltYWdlUmVwZWF0
LCBwcm9wZXJ0eSwgV1RGTW92ZShyZXBlYXQpLCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0
aWFsVmFsdWUoKSwgaW1wb3J0YW50KTsKICAgICAgICAgICAgIHJldHVybiB0cnVlOworICAgICAg
ICBjYXNlIENTU1Byb3BlcnR5V2Via2l0Qm9yZGVySW1hZ2U6CisgICAgICAgICAgICAvLyBXZSBo
YXZlIHRvIHByZXNlcnZlIHRoZSBsZWdhY3kgYmVoYXZpb3Igb2YgLXdlYmtpdC1ib3JkZXItaW1h
Z2UgYW5kIG1ha2UgdGhlIGJvcmRlciBzbGljZXMKKyAgICAgICAgICAgIC8vIGFsc28gc2V0IHRo
ZSBib3JkZXIgd2lkdGhzLiBXZSBkb24ndCBuZWVkIHRvIHdvcnJ5IGFib3V0IHBlcmNlbnRhZ2Vz
LCBzaW5jZSB3ZSBkb24ndCBldmVuIHN1cHBvcnQKKyAgICAgICAgICAgIC8vIHRob3NlIG9uIHJl
YWwgYm9yZGVycyB5ZXQuCisgICAgICAgICAgICBpZiAoUXVhZCogcXVhZCA9IHdpZHRoID8gd2lk
dGgtPnF1YWRWYWx1ZSgpIDogbnVsbHB0cikgeworICAgICAgICAgICAgICAgIGF1dG8gYWRkUHJv
cGVydHlJZkxlbmd0aCA9IFsmXShDU1NQcm9wZXJ0eUlEIGxvbmdoYW5kLCBSZWZQdHI8Q1NTUHJp
bWl0aXZlVmFsdWU+IHZhbHVlKSB7CisgICAgICAgICAgICAgICAgICAgIGlmICh2YWx1ZSAmJiB2
YWx1ZS0+aXNMZW5ndGgoKSkKKyAgICAgICAgICAgICAgICAgICAgICAgIGFkZFByb3BlcnR5KGxv
bmdoYW5kLCBDU1NQcm9wZXJ0eVdlYmtpdEJvcmRlckltYWdlLCB2YWx1ZS5yZWxlYXNlTm9uTnVs
bCgpLCBpbXBvcnRhbnQpOworICAgICAgICAgICAgICAgIH07CisgICAgICAgICAgICAgICAgYWRk
UHJvcGVydHlJZkxlbmd0aChDU1NQcm9wZXJ0eUJvcmRlclRvcFdpZHRoLCBxdWFkLT50b3AoKSk7
CisgICAgICAgICAgICAgICAgYWRkUHJvcGVydHlJZkxlbmd0aChDU1NQcm9wZXJ0eUJvcmRlclJp
Z2h0V2lkdGgsIHF1YWQtPnJpZ2h0KCkpOworICAgICAgICAgICAgICAgIGFkZFByb3BlcnR5SWZM
ZW5ndGgoQ1NTUHJvcGVydHlCb3JkZXJCb3R0b21XaWR0aCwgcXVhZC0+Ym90dG9tKCkpOworICAg
ICAgICAgICAgICAgIGFkZFByb3BlcnR5SWZMZW5ndGgoQ1NTUHJvcGVydHlCb3JkZXJMZWZ0V2lk
dGgsIHF1YWQtPmxlZnQoKSk7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBGQUxMVEhST1VH
SDsKICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlckltYWdlOgotICAgICAgICAgICAgYWRk
UHJvcGVydHlXaXRoSW1wbGljaXREZWZhdWx0KENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VTb3VyY2Us
IENTU1Byb3BlcnR5Qm9yZGVySW1hZ2UsIFdURk1vdmUoc291cmNlKSwgdmFsdWVQb29sLmNyZWF0
ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCksIGltcG9ydGFudCk7Ci0gICAgICAgICAgICBhZGRQcm9w
ZXJ0eVdpdGhJbXBsaWNpdERlZmF1bHQoQ1NTUHJvcGVydHlCb3JkZXJJbWFnZVNsaWNlLCBDU1NQ
cm9wZXJ0eUJvcmRlckltYWdlLCBXVEZNb3ZlKHNsaWNlKSwgdmFsdWVQb29sLmNyZWF0ZUltcGxp
Y2l0SW5pdGlhbFZhbHVlKCksIGltcG9ydGFudCk7Ci0gICAgICAgICAgICBhZGRQcm9wZXJ0eVdp
dGhJbXBsaWNpdERlZmF1bHQoQ1NTUHJvcGVydHlCb3JkZXJJbWFnZVdpZHRoLCBDU1NQcm9wZXJ0
eUJvcmRlckltYWdlLCBXVEZNb3ZlKHdpZHRoKSwgdmFsdWVQb29sLmNyZWF0ZUltcGxpY2l0SW5p
dGlhbFZhbHVlKCksIGltcG9ydGFudCk7Ci0gICAgICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJbXBs
aWNpdERlZmF1bHQoQ1NTUHJvcGVydHlCb3JkZXJJbWFnZU91dHNldCwgQ1NTUHJvcGVydHlCb3Jk
ZXJJbWFnZSwgV1RGTW92ZShvdXRzZXQpLCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFs
VmFsdWUoKSwgaW1wb3J0YW50KTsKLSAgICAgICAgICAgIGFkZFByb3BlcnR5V2l0aEltcGxpY2l0
RGVmYXVsdChDU1NQcm9wZXJ0eUJvcmRlckltYWdlUmVwZWF0LCBDU1NQcm9wZXJ0eUJvcmRlcklt
YWdlLCBXVEZNb3ZlKHJlcGVhdCksIHZhbHVlUG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1
ZSgpLCBpbXBvcnRhbnQpOworICAgICAgICAgICAgYWRkUHJvcGVydHlXaXRoSW1wbGljaXREZWZh
dWx0KENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VTb3VyY2UsIHByb3BlcnR5LCBXVEZNb3ZlKHNvdXJj
ZSksIHZhbHVlUG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQpOwor
ICAgICAgICAgICAgYWRkUHJvcGVydHlXaXRoSW1wbGljaXREZWZhdWx0KENTU1Byb3BlcnR5Qm9y
ZGVySW1hZ2VTbGljZSwgcHJvcGVydHksIFdURk1vdmUoc2xpY2UpLCB2YWx1ZVBvb2wuY3JlYXRl
SW1wbGljaXRJbml0aWFsVmFsdWUoKSwgaW1wb3J0YW50KTsKKyAgICAgICAgICAgIGFkZFByb3Bl
cnR5V2l0aEltcGxpY2l0RGVmYXVsdChDU1NQcm9wZXJ0eUJvcmRlckltYWdlV2lkdGgsIHByb3Bl
cnR5LCBXVEZNb3ZlKHdpZHRoKSwgdmFsdWVQb29sLmNyZWF0ZUltcGxpY2l0SW5pdGlhbFZhbHVl
KCksIGltcG9ydGFudCk7CisgICAgICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNpdERlZmF1
bHQoQ1NTUHJvcGVydHlCb3JkZXJJbWFnZU91dHNldCwgcHJvcGVydHksIFdURk1vdmUob3V0c2V0
KSwgdmFsdWVQb29sLmNyZWF0ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCksIGltcG9ydGFudCk7Cisg
ICAgICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNpdERlZmF1bHQoQ1NTUHJvcGVydHlCb3Jk
ZXJJbWFnZVJlcGVhdCwgcHJvcGVydHksIFdURk1vdmUocmVwZWF0KSwgdmFsdWVQb29sLmNyZWF0
ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCksIGltcG9ydGFudCk7CiAgICAgICAgICAgICByZXR1cm4g
dHJ1ZTsKICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgp
OwpAQCAtNjQzMCw2ICs2NDQ0LDcgQEAgYm9vbCBDU1NQcm9wZXJ0eVBhcnNlcjo6cGFyc2VTaG9y
dGhhbmQoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eSwgYm9vbCBpbXBvcnRhbnQpCiAgICAgICAgIHJl
dHVybiB0cnVlOwogICAgIH0KICAgICBjYXNlIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2U6CisgICAg
Y2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEJvcmRlckltYWdlOgogICAgICAgICByZXR1cm4gY29uc3Vt
ZUJvcmRlckltYWdlKHByb3BlcnR5LCBpbXBvcnRhbnQpOwogICAgIGNhc2UgQ1NTUHJvcGVydHlQ
YWdlQnJlYWtBZnRlcjoKICAgICBjYXNlIENTU1Byb3BlcnR5UGFnZUJyZWFrQmVmb3JlOgpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3R5bGUvUHJvcGVydHlDYXNjYWRlLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL3N0eWxlL1Byb3BlcnR5Q2FzY2FkZS5jcHAKaW5kZXggOWU5YjI5YjdjNDU0NDg2
MTUyZWVhM2FlZThjNzZkZWQ3YWQ3ODEwZS4uYWMwNDcxYjQ5NDg0N2E3MWY1NjBlNDBiYjFmNDJl
Njg2MTRiYmM0ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3R5bGUvUHJvcGVydHlDYXNj
YWRlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9Qcm9wZXJ0eUNhc2NhZGUuY3BwCkBA
IC00NywxMyArNDcsNiBAQCBzdGF0aWMgaW5saW5lIGJvb2wgc2hvdWxkQXBwbHlQcm9wZXJ0eUlu
UGFyc2VPcmRlcihDU1NQcm9wZXJ0eUlEIHByb3BlcnR5SUQpCiAgICAgY2FzZSBDU1NQcm9wZXJ0
eUJhY2tncm91bmRPcmlnaW46CiAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEJhY2tncm91bmRT
aXplOgogICAgIGNhc2UgQ1NTUHJvcGVydHlCYWNrZ3JvdW5kU2l6ZToKLSAgICBjYXNlIENTU1By
b3BlcnR5V2Via2l0Qm9yZGVySW1hZ2U6Ci0gICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlckltYWdl
OgotICAgIGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJJbWFnZVNsaWNlOgotICAgIGNhc2UgQ1NTUHJv
cGVydHlCb3JkZXJJbWFnZVNvdXJjZToKLSAgICBjYXNlIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VP
dXRzZXQ6Ci0gICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlckltYWdlUmVwZWF0OgotICAgIGNhc2Ug
Q1NTUHJvcGVydHlCb3JkZXJJbWFnZVdpZHRoOgogICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRC
b3hTaGFkb3c6CiAgICAgY2FzZSBDU1NQcm9wZXJ0eUJveFNoYWRvdzoKICAgICBjYXNlIENTU1By
b3BlcnR5V2Via2l0VGV4dERlY29yYXRpb246CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9z
dHlsZS9TdHlsZUJ1aWxkZXJDb252ZXJ0ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxl
QnVpbGRlckNvbnZlcnRlci5oCmluZGV4IDc0NjRmODRkOGJmNmIyYjJhMzMxMjNkNTkyYmUyOTJm
MTRjYzI4ZGUuLmM4MDM1OTkxOWIzZGYzYjNiNDU0Yzc4Y2ExMmQ2ZGUxNDg3NGM3YzIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlQnVpbGRlckNvbnZlcnRlci5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlQnVpbGRlckNvbnZlcnRlci5oCkBAIC04NSw3ICs4
NSw2IEBAIHB1YmxpYzoKICAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBUPiBzdGF0aWMgVCBjb252ZXJ0
TnVtYmVyKEJ1aWxkZXJTdGF0ZSYsIGNvbnN0IENTU1ZhbHVlJik7CiAgICAgdGVtcGxhdGU8dHlw
ZW5hbWUgVD4gc3RhdGljIFQgY29udmVydE51bWJlck9yQXV0byhCdWlsZGVyU3RhdGUmLCBjb25z
dCBDU1NWYWx1ZSYpOwogICAgIHN0YXRpYyBzaG9ydCBjb252ZXJ0V2Via2l0SHlwaGVuYXRlTGlt
aXRMaW5lcyhCdWlsZGVyU3RhdGUmLCBjb25zdCBDU1NWYWx1ZSYpOwotICAgIHRlbXBsYXRlPENT
U1Byb3BlcnR5SUQ+IHN0YXRpYyBOaW5lUGllY2VJbWFnZSBjb252ZXJ0Qm9yZGVySW1hZ2UoQnVp
bGRlclN0YXRlJiwgQ1NTVmFsdWUmKTsKICAgICB0ZW1wbGF0ZTxDU1NQcm9wZXJ0eUlEPiBzdGF0
aWMgTmluZVBpZWNlSW1hZ2UgY29udmVydEJvcmRlck1hc2soQnVpbGRlclN0YXRlJiwgQ1NTVmFs
dWUmKTsKICAgICB0ZW1wbGF0ZTxDU1NQcm9wZXJ0eUlEPiBzdGF0aWMgUmVmUHRyPFN0eWxlSW1h
Z2U+IGNvbnZlcnRTdHlsZUltYWdlKEJ1aWxkZXJTdGF0ZSYsIENTU1ZhbHVlJik7CiAgICAgc3Rh
dGljIEltYWdlT3JpZW50YXRpb24gY29udmVydEltYWdlT3JpZW50YXRpb24oQnVpbGRlclN0YXRl
JiwgY29uc3QgQ1NTVmFsdWUmKTsKQEAgLTQ2NCwxNCArNDYzLDYgQEAgaW5saW5lIHNob3J0IEJ1
aWxkZXJDb252ZXJ0ZXI6OmNvbnZlcnRXZWJraXRIeXBoZW5hdGVMaW1pdExpbmVzKEJ1aWxkZXJT
dGF0ZSYsIGMKICAgICByZXR1cm4gcHJpbWl0aXZlVmFsdWUudmFsdWU8c2hvcnQ+KENTU1VuaXRU
eXBlOjpDU1NfTlVNQkVSKTsKIH0KIAotdGVtcGxhdGU8Q1NTUHJvcGVydHlJRCBwcm9wZXJ0eT4K
LWlubGluZSBOaW5lUGllY2VJbWFnZSBCdWlsZGVyQ29udmVydGVyOjpjb252ZXJ0Qm9yZGVySW1h
Z2UoQnVpbGRlclN0YXRlJiBidWlsZGVyU3RhdGUsIENTU1ZhbHVlJiB2YWx1ZSkKLXsKLSAgICBO
aW5lUGllY2VJbWFnZSBpbWFnZTsKLSAgICBidWlsZGVyU3RhdGUuc3R5bGVNYXAoKS5tYXBOaW5l
UGllY2VJbWFnZShwcm9wZXJ0eSwgJnZhbHVlLCBpbWFnZSk7Ci0gICAgcmV0dXJuIGltYWdlOwot
fQotCiB0ZW1wbGF0ZTxDU1NQcm9wZXJ0eUlEIHByb3BlcnR5PgogaW5saW5lIE5pbmVQaWVjZUlt
YWdlIEJ1aWxkZXJDb252ZXJ0ZXI6OmNvbnZlcnRCb3JkZXJNYXNrKEJ1aWxkZXJTdGF0ZSYgYnVp
bGRlclN0YXRlLCBDU1NWYWx1ZSYgdmFsdWUpCiB7Cg==
</data>
<flag name="commit-queue"
          id="481432"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>453921</attachid>
            <date>2022-03-05 14:29:34 -0800</date>
            <delta_ts>2022-03-07 15:59:49 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-237487-20220305232932.patch</filename>
            <type>text/plain</type>
            <size>16336</size>
            <attacher name="Oriol Brufau">obrufau</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkwNzk2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZWM3NjI3YTk1ZDkyNTBi
ZTQzNzBkMTZkMTQ4NGQzMDBiMWRmYmI2Yy4uN2VjY2JkZjUzN2Y4ZmRkZjE4ZjdkYjc0MTdjMmU5
YzYwODU4ZWY1OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM4IEBACisyMDIyLTAzLTA1ICBPcmlv
bCBCcnVmYXUgIDxvYnJ1ZmF1QGlnYWxpYS5jb20+CisKKyAgICAgICAgW2Nzc10gVHVybiAtd2Vi
a2l0LWJvcmRlci1pbWFnZSBpbnRvIGEgc2hvcnRoYW5kCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzc0ODcKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGUgJy13ZWJraXQtYm9yZGVyLWltYWdlJyBwcm9w
ZXJ0eSB3YXMgY29uc2lkZXJlZCB0byBiZSBhIGxvbmdoYW5kLAorICAgICAgICBzaGFyaW5nIGNv
bXB1dGVkIHZhbHVlcyB3aXRoIHRoZSB2YXJpb3VzICdib3JkZXItaW1hZ2UtKicuCisKKyAgICAg
ICAgVGhpcyBwYXRjaCB0dXJucyBpdCBpbnRvIGEgbG9uZ2hhbmQgb2YgJ2JvcmRlci1pbWFnZS0q
JywgYW5kIGFsc28gb2YKKyAgICAgICAgJ2JvcmRlci0qLXdpZHRoJy4gVGhlIGxhdHRlciBpcyBi
ZWNhdXNlIEknbSBwcmVzZXJ2aW5nIHRoZSBsZWdhY3kKKyAgICAgICAgYmVoYXZpb3Igb2YgbWFr
aW5nIHRoZSBib3JkZXIgaW1hZ2Ugd2lkdGhzIGFsc28gc2V0IHRoZSBib3JkZXIgd2lkdGhzCisg
ICAgICAgIGlmIHRoZXkgYXJlIGEgbGVuZ3RoLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cyAoT09Q
UyEpLgorCisgICAgICAgICogY3NzL0NTU1Byb3BlcnRpZXMuanNvbjoKKyAgICAgICAgKiBjc3Mv
Q1NTVG9TdHlsZU1hcC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NUb1N0eWxlTWFwOjptYXBO
aW5lUGllY2VJbWFnZSk6CisgICAgICAgICogY3NzL0NTU1RvU3R5bGVNYXAuaDoKKyAgICAgICAg
KiBjc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmNv
bnN1bWVCb3JkZXJJbWFnZVdpZHRoKToKKyAgICAgICAgKFdlYkNvcmU6OmNvbnN1bWVCb3JkZXJJ
bWFnZUNvbXBvbmVudHMpOgorICAgICAgICAoV2ViQ29yZTo6Y29uc3VtZVdlYmtpdEJvcmRlcklt
YWdlKToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1Byb3BlcnR5UGFyc2VyOjpwYXJzZVNpbmdsZVZh
bHVlKToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1Byb3BlcnR5UGFyc2VyOjpjb25zdW1lQm9yZGVy
SW1hZ2UpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUHJvcGVydHlQYXJzZXI6OnBhcnNlU2hvcnRo
YW5kKToKKyAgICAgICAgKiBzdHlsZS9Qcm9wZXJ0eUNhc2NhZGUuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6U3R5bGU6OnNob3VsZEFwcGx5UHJvcGVydHlJblBhcnNlT3JkZXIpOgorICAgICAgICAq
IHN0eWxlL1N0eWxlQnVpbGRlckNvbnZlcnRlci5oOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGU6
OkJ1aWxkZXJDb252ZXJ0ZXI6OmNvbnZlcnRCb3JkZXJNYXNrKToKKyAgICAgICAgKFdlYkNvcmU6
OlN0eWxlOjpCdWlsZGVyQ29udmVydGVyOjpjb252ZXJ0UmVmbGVjdGlvbik6CisgICAgICAgIChX
ZWJDb3JlOjpTdHlsZTo6QnVpbGRlckNvbnZlcnRlcjo6Y29udmVydEJvcmRlckltYWdlKTogRGVs
ZXRlZC4KKwogMjAyMi0wMy0wMyAgU2ltb24gRnJhc2VyICA8c2ltb24uZnJhc2VyQGFwcGxlLmNv
bT4KIAogICAgICAgICBuYXNhLmdvdiBwYWdlIHdpdGggZml4ZWQgYmFja2dyb3VuZHMgcGFpbnRz
IGluY29ycmVjdGx5IG9uIHNjcm9sbApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NT
U1Byb3BlcnRpZXMuanNvbiBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0aWVzLmpzb24K
aW5kZXggMTIzOGQ0NzRiNzIwYmJiMWMzNTVlMTZhNGYwODg5YWIzMzQ2Mjg1My4uODQxOTcyYzIx
MmUxN2Q3ZmRhZjBhMWE2OGIyZDI1NmRlZjI5NDZkZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvY3NzL0NTU1Byb3BlcnRpZXMuanNvbgorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJv
cGVydGllcy5qc29uCkBAIC01MzgxLDggKzUzODEsMjAgQEAKICAgICAgICAgfSwKICAgICAgICAg
Ii13ZWJraXQtYm9yZGVyLWltYWdlIjogewogICAgICAgICAgICAgImNvZGVnZW4tcHJvcGVydGll
cyI6IHsKLSAgICAgICAgICAgICAgICAiaW5pdGlhbCI6ICJpbml0aWFsTmluZVBpZWNlSW1hZ2Ui
LAotICAgICAgICAgICAgICAgICJjb252ZXJ0ZXIiOiAiQm9yZGVySW1hZ2U8Q1NTUHJvcGVydHlX
ZWJraXRCb3JkZXJJbWFnZT4iCisgICAgICAgICAgICAgICAgImxvbmdoYW5kcyI6IFsKKyAgICAg
ICAgICAgICAgICAgICAgImJvcmRlci10b3Atd2lkdGgiLAorICAgICAgICAgICAgICAgICAgICAi
Ym9yZGVyLXJpZ2h0LXdpZHRoIiwKKyAgICAgICAgICAgICAgICAgICAgImJvcmRlci1ib3R0b20t
d2lkdGgiLAorICAgICAgICAgICAgICAgICAgICAiYm9yZGVyLWxlZnQtd2lkdGgiLAorICAgICAg
ICAgICAgICAgICAgICAiYm9yZGVyLWltYWdlLXNvdXJjZSIsCisgICAgICAgICAgICAgICAgICAg
ICJib3JkZXItaW1hZ2Utc2xpY2UiLAorICAgICAgICAgICAgICAgICAgICAiYm9yZGVyLWltYWdl
LXdpZHRoIiwKKyAgICAgICAgICAgICAgICAgICAgImJvcmRlci1pbWFnZS1vdXRzZXQiLAorICAg
ICAgICAgICAgICAgICAgICAiYm9yZGVyLWltYWdlLXJlcGVhdCIKKyAgICAgICAgICAgICAgICBd
CisgICAgICAgICAgICB9LAorICAgICAgICAgICAgInN0YXR1cyI6IHsKKyAgICAgICAgICAgICAg
ICAiY29tbWVudCI6ICJEaWZmZXJzIGZyb20gYm9yZGVyLWltYWdlIGluIHRoYXQgaXQgYWx3YXlz
IGluY2x1ZGVzIHRoZSAnZmlsbCcga2V5d29yZCBpbiAnYm9yZGVyLWltYWdlLXNsaWNlJywgYW5k
IGl0IHNldHMgJ2JvcmRlci0qLXdpZHRoJyBpZiB0aGUgY29ycmVzcG9uZGluZyBzbGljZSBvZmZz
ZXQgaXMuIgogICAgICAgICAgICAgfQogICAgICAgICB9LAogICAgICAgICAiLXdlYmtpdC1ib3Jk
ZXItcmFkaXVzIjogewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1RvU3R5bGVN
YXAuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1RvU3R5bGVNYXAuY3BwCmluZGV4IDk0NjYw
NTEzNTA1M2FiNWQzNjg3OGNjYmYzMjE1YjkzYTcxMjU4YTkuLjQxOWZlYjk3YTU2YmE2M2NjYzNi
ODhjYzkwZDdlNDhhNzAyMzVhZTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NU
b1N0eWxlTWFwLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVG9TdHlsZU1hcC5jcHAK
QEAgLTQ3MSw3ICs0NzEsNyBAQCB2b2lkIENTU1RvU3R5bGVNYXA6Om1hcEFuaW1hdGlvbkNvbXBv
c2l0ZU9wZXJhdGlvbihBbmltYXRpb24mIGFuaW1hdGlvbiwgY29uc3QgQwogICAgICAgICBhbmlt
YXRpb24uc2V0Q29tcG9zaXRlT3BlcmF0aW9uKCpjb21wb3NpdGVPcGVyYXRpb24pOwogfQogCi12
b2lkIENTU1RvU3R5bGVNYXA6Om1hcE5pbmVQaWVjZUltYWdlKENTU1Byb3BlcnR5SUQgcHJvcGVy
dHksIENTU1ZhbHVlKiB2YWx1ZSwgTmluZVBpZWNlSW1hZ2UmIGltYWdlKQordm9pZCBDU1NUb1N0
eWxlTWFwOjptYXBOaW5lUGllY2VJbWFnZShDU1NWYWx1ZSogdmFsdWUsIE5pbmVQaWVjZUltYWdl
JiBpbWFnZSkKIHsKICAgICAvLyBJZiB3ZSdyZSBub3QgYSB2YWx1ZSBsaXN0LCB0aGVuIHdlIGFy
ZSAibm9uZSIgYW5kIGRvbid0IG5lZWQgdG8gYWx0ZXIgdGhlIGVtcHR5IGltYWdlIGF0IGFsbC4K
ICAgICBpZiAoIWlzPENTU1ZhbHVlTGlzdD4odmFsdWUpKQpAQCAtNTAzLDIwICs1MDMsNiBAQCB2
b2lkIENTU1RvU3R5bGVNYXA6Om1hcE5pbmVQaWVjZUltYWdlKENTU1Byb3BlcnR5SUQgcHJvcGVy
dHksIENTU1ZhbHVlKiB2YWx1ZSwgTgogICAgICAgICAgICAgbWFwTmluZVBpZWNlSW1hZ2VSZXBl
YXQoY3VycmVudCwgaW1hZ2UpOwogICAgICAgICB9CiAgICAgfQotCi0gICAgaWYgKHByb3BlcnR5
ID09IENTU1Byb3BlcnR5V2Via2l0Qm9yZGVySW1hZ2UpIHsKLSAgICAgICAgLy8gV2UgaGF2ZSB0
byBwcmVzZXJ2ZSB0aGUgbGVnYWN5IGJlaGF2aW9yIG9mIC13ZWJraXQtYm9yZGVyLWltYWdlIGFu
ZCBtYWtlIHRoZSBib3JkZXIgc2xpY2VzCi0gICAgICAgIC8vIGFsc28gc2V0IHRoZSBib3JkZXIg
d2lkdGhzLiBXZSBkb24ndCBuZWVkIHRvIHdvcnJ5IGFib3V0IHBlcmNlbnRhZ2VzLCBzaW5jZSB3
ZSBkb24ndCBldmVuIHN1cHBvcnQKLSAgICAgICAgLy8gdGhvc2Ugb24gcmVhbCBib3JkZXJzIHll
dC4KLSAgICAgICAgaWYgKGltYWdlLmJvcmRlclNsaWNlcygpLnRvcCgpLmlzRml4ZWQoKSkKLSAg
ICAgICAgICAgIHN0eWxlKCktPnNldEJvcmRlclRvcFdpZHRoKGltYWdlLmJvcmRlclNsaWNlcygp
LnRvcCgpLnZhbHVlKCkpOwotICAgICAgICBpZiAoaW1hZ2UuYm9yZGVyU2xpY2VzKCkucmlnaHQo
KS5pc0ZpeGVkKCkpCi0gICAgICAgICAgICBzdHlsZSgpLT5zZXRCb3JkZXJSaWdodFdpZHRoKGlt
YWdlLmJvcmRlclNsaWNlcygpLnJpZ2h0KCkudmFsdWUoKSk7Ci0gICAgICAgIGlmIChpbWFnZS5i
b3JkZXJTbGljZXMoKS5ib3R0b20oKS5pc0ZpeGVkKCkpCi0gICAgICAgICAgICBzdHlsZSgpLT5z
ZXRCb3JkZXJCb3R0b21XaWR0aChpbWFnZS5ib3JkZXJTbGljZXMoKS5ib3R0b20oKS52YWx1ZSgp
KTsKLSAgICAgICAgaWYgKGltYWdlLmJvcmRlclNsaWNlcygpLmxlZnQoKS5pc0ZpeGVkKCkpCi0g
ICAgICAgICAgICBzdHlsZSgpLT5zZXRCb3JkZXJMZWZ0V2lkdGgoaW1hZ2UuYm9yZGVyU2xpY2Vz
KCkubGVmdCgpLnZhbHVlKCkpOwotICAgIH0KIH0KIAogdm9pZCBDU1NUb1N0eWxlTWFwOjptYXBO
aW5lUGllY2VJbWFnZVNsaWNlKENTU1ZhbHVlJiB2YWx1ZSwgTmluZVBpZWNlSW1hZ2UmIGltYWdl
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1RvU3R5bGVNYXAuaCBiL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9DU1NUb1N0eWxlTWFwLmgKaW5kZXggNGM5YmI0NGNiOTMyODhkZjc2NGUw
NTkwYTM2ZGJlYzdiMWZmNzhjOS4uZmVhNzVkYjk0ZjFiZmI5ZDJjZDJhOTQyODZkZTIwNDkwN2M2
MmQ1NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1RvU3R5bGVNYXAuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVG9TdHlsZU1hcC5oCkBAIC03MCw3ICs3MCw3IEBAIHB1
YmxpYzoKICAgICB2b2lkIG1hcEFuaW1hdGlvblRpbWluZ0Z1bmN0aW9uKEFuaW1hdGlvbiYsIGNv
bnN0IENTU1ZhbHVlJik7CiAgICAgdm9pZCBtYXBBbmltYXRpb25Db21wb3NpdGVPcGVyYXRpb24o
QW5pbWF0aW9uJiwgY29uc3QgQ1NTVmFsdWUmKTsKIAotICAgIHZvaWQgbWFwTmluZVBpZWNlSW1h
Z2UoQ1NTUHJvcGVydHlJRCwgQ1NTVmFsdWUqLCBOaW5lUGllY2VJbWFnZSYpOworICAgIHZvaWQg
bWFwTmluZVBpZWNlSW1hZ2UoQ1NTVmFsdWUqLCBOaW5lUGllY2VJbWFnZSYpOwogICAgIHZvaWQg
bWFwTmluZVBpZWNlSW1hZ2VTbGljZShDU1NWYWx1ZSYsIE5pbmVQaWVjZUltYWdlJik7CiAgICAg
TGVuZ3RoQm94IG1hcE5pbmVQaWVjZUltYWdlUXVhZChDU1NWYWx1ZSYpOwogICAgIHZvaWQgbWFw
TmluZVBpZWNlSW1hZ2VSZXBlYXQoQ1NTVmFsdWUmLCBOaW5lUGllY2VJbWFnZSYpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlci5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VyLmNwcAppbmRleCA3YWY4
MmJiMTFiZjliYmQwYmJlOGVjYWYyMTg2NDQ3MDQ1MDY2YzJkLi5kMmFjNWZhZThkNTFiMGYwOTk3
N2NkYjY3NDBhN2MzYmMyNTkyM2ZhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFy
c2VyL0NTU1Byb3BlcnR5UGFyc2VyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2Vy
L0NTU1Byb3BlcnR5UGFyc2VyLmNwcApAQCAtMzAzNyw3ICszMDM3LDcgQEAgc3RhdGljIFJlZlB0
cjxDU1NWYWx1ZT4gY29uc3VtZUJvcmRlckltYWdlT3V0c2V0KENTU1BhcnNlclRva2VuUmFuZ2Um
IHJhbmdlKQogICAgIHJldHVybiBDU1NWYWx1ZVBvb2w6OnNpbmdsZXRvbigpLmNyZWF0ZVZhbHVl
KFdURk1vdmUocXVhZCkpOwogfQogCi1zdGF0aWMgUmVmUHRyPENTU1ZhbHVlPiBjb25zdW1lQm9y
ZGVySW1hZ2VXaWR0aChDU1NQYXJzZXJUb2tlblJhbmdlJiByYW5nZSkKK3N0YXRpYyBSZWZQdHI8
Q1NTUHJpbWl0aXZlVmFsdWU+IGNvbnN1bWVCb3JkZXJJbWFnZVdpZHRoKENTU1BhcnNlclRva2Vu
UmFuZ2UmIHJhbmdlKQogewogICAgIFJlZlB0cjxDU1NQcmltaXRpdmVWYWx1ZT4gd2lkdGhzWzRd
OwogCkBAIC0zMDY3LDcgKzMwNjcsNyBAQCBzdGF0aWMgUmVmUHRyPENTU1ZhbHVlPiBjb25zdW1l
Qm9yZGVySW1hZ2VXaWR0aChDU1NQYXJzZXJUb2tlblJhbmdlJiByYW5nZSkKIH0KIAogc3RhdGlj
IGJvb2wgY29uc3VtZUJvcmRlckltYWdlQ29tcG9uZW50cyhDU1NQcm9wZXJ0eUlEIHByb3BlcnR5
LCBDU1NQYXJzZXJUb2tlblJhbmdlJiByYW5nZSwgY29uc3QgQ1NTUGFyc2VyQ29udGV4dCYgY29u
dGV4dCwgUmVmUHRyPENTU1ZhbHVlPiYgc291cmNlLAotICAgIFJlZlB0cjxDU1NWYWx1ZT4mIHNs
aWNlLCBSZWZQdHI8Q1NTVmFsdWU+JiB3aWR0aCwgUmVmUHRyPENTU1ZhbHVlPiYgb3V0c2V0LCBS
ZWZQdHI8Q1NTVmFsdWU+JiByZXBlYXQpCisgICAgUmVmUHRyPENTU1ZhbHVlPiYgc2xpY2UsIFJl
ZlB0cjxDU1NQcmltaXRpdmVWYWx1ZT4mIHdpZHRoLCBSZWZQdHI8Q1NTVmFsdWU+JiBvdXRzZXQs
IFJlZlB0cjxDU1NWYWx1ZT4mIHJlcGVhdCkKIHsKICAgICBkbyB7CiAgICAgICAgIGlmICghc291
cmNlKSB7CkBAIC0zMTA4LDcgKzMxMDgsNyBAQCBzdGF0aWMgUmVmUHRyPENTU1ZhbHVlPiBjb25z
dW1lV2Via2l0Qm9yZGVySW1hZ2UoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eSwgQ1NTUGFycwogewog
ICAgIFJlZlB0cjxDU1NWYWx1ZT4gc291cmNlOwogICAgIFJlZlB0cjxDU1NWYWx1ZT4gc2xpY2U7
Ci0gICAgUmVmUHRyPENTU1ZhbHVlPiB3aWR0aDsKKyAgICBSZWZQdHI8Q1NTUHJpbWl0aXZlVmFs
dWU+IHdpZHRoOwogICAgIFJlZlB0cjxDU1NWYWx1ZT4gb3V0c2V0OwogICAgIFJlZlB0cjxDU1NW
YWx1ZT4gcmVwZWF0OwogICAgIGlmIChjb25zdW1lQm9yZGVySW1hZ2VDb21wb25lbnRzKHByb3Bl
cnR5LCByYW5nZSwgY29udGV4dCwgc291cmNlLCBzbGljZSwgd2lkdGgsIG91dHNldCwgcmVwZWF0
KSkKQEAgLTQ2MjIsNyArNDYyMiw2IEBAIFJlZlB0cjxDU1NWYWx1ZT4gQ1NTUHJvcGVydHlQYXJz
ZXI6OnBhcnNlU2luZ2xlVmFsdWUoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eSwgQ1NTCiAgICAgY2Fz
ZSBDU1NQcm9wZXJ0eUJvcmRlckltYWdlV2lkdGg6CiAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtp
dE1hc2tCb3hJbWFnZVdpZHRoOgogICAgICAgICByZXR1cm4gY29uc3VtZUJvcmRlckltYWdlV2lk
dGgobV9yYW5nZSk7Ci0gICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEJvcmRlckltYWdlOgogICAg
IGNhc2UgQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2U6CiAgICAgICAgIHJldHVybiBjb25z
dW1lV2Via2l0Qm9yZGVySW1hZ2UocHJvcGVydHksIG1fcmFuZ2UsIG1fY29udGV4dCk7CiAgICAg
Y2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEJveFJlZmxlY3Q6CkBAIC01NTQyLDcgKzU1NDEsNyBAQCBi
b29sIENTU1Byb3BlcnR5UGFyc2VyOjpjb25zdW1lQm9yZGVySW1hZ2UoQ1NTUHJvcGVydHlJRCBw
cm9wZXJ0eSwgYm9vbCBpbXBvcnRhbgogewogICAgIFJlZlB0cjxDU1NWYWx1ZT4gc291cmNlOwog
ICAgIFJlZlB0cjxDU1NWYWx1ZT4gc2xpY2U7Ci0gICAgUmVmUHRyPENTU1ZhbHVlPiB3aWR0aDsK
KyAgICBSZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+IHdpZHRoOwogICAgIFJlZlB0cjxDU1NWYWx1
ZT4gb3V0c2V0OwogICAgIFJlZlB0cjxDU1NWYWx1ZT4gcmVwZWF0OwogICAgIApAQCAtNTU1MCwx
OCArNTU0OSwzMyBAQCBib29sIENTU1Byb3BlcnR5UGFyc2VyOjpjb25zdW1lQm9yZGVySW1hZ2Uo
Q1NTUHJvcGVydHlJRCBwcm9wZXJ0eSwgYm9vbCBpbXBvcnRhbgogICAgICAgICBhdXRvJiB2YWx1
ZVBvb2wgPSBDU1NWYWx1ZVBvb2w6OnNpbmdsZXRvbigpOwogICAgICAgICBzd2l0Y2ggKHByb3Bl
cnR5KSB7CiAgICAgICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2U6Ci0gICAg
ICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNpdERlZmF1bHQoQ1NTUHJvcGVydHlXZWJraXRN
YXNrQm94SW1hZ2VTb3VyY2UsIENTU1Byb3BlcnR5V2Via2l0TWFza0JveEltYWdlLCBXVEZNb3Zl
KHNvdXJjZSksIHZhbHVlUG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgpLCBpbXBvcnRh
bnQpOwotICAgICAgICAgICAgYWRkUHJvcGVydHlXaXRoSW1wbGljaXREZWZhdWx0KENTU1Byb3Bl
cnR5V2Via2l0TWFza0JveEltYWdlU2xpY2UsIENTU1Byb3BlcnR5V2Via2l0TWFza0JveEltYWdl
LCBXVEZNb3ZlKHNsaWNlKSwgdmFsdWVQb29sLmNyZWF0ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCks
IGltcG9ydGFudCk7Ci0gICAgICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNpdERlZmF1bHQo
Q1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2VXaWR0aCwgQ1NTUHJvcGVydHlXZWJraXRNYXNr
Qm94SW1hZ2UsIFdURk1vdmUod2lkdGgpLCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFs
VmFsdWUoKSwgaW1wb3J0YW50KTsKLSAgICAgICAgICAgIGFkZFByb3BlcnR5V2l0aEltcGxpY2l0
RGVmYXVsdChDU1NQcm9wZXJ0eVdlYmtpdE1hc2tCb3hJbWFnZU91dHNldCwgQ1NTUHJvcGVydHlX
ZWJraXRNYXNrQm94SW1hZ2UsIFdURk1vdmUob3V0c2V0KSwgdmFsdWVQb29sLmNyZWF0ZUltcGxp
Y2l0SW5pdGlhbFZhbHVlKCksIGltcG9ydGFudCk7Ci0gICAgICAgICAgICBhZGRQcm9wZXJ0eVdp
dGhJbXBsaWNpdERlZmF1bHQoQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2VSZXBlYXQsIENT
U1Byb3BlcnR5V2Via2l0TWFza0JveEltYWdlLCBXVEZNb3ZlKHJlcGVhdCksIHZhbHVlUG9vbC5j
cmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQpOworICAgICAgICAgICAgYWRk
UHJvcGVydHlXaXRoSW1wbGljaXREZWZhdWx0KENTU1Byb3BlcnR5V2Via2l0TWFza0JveEltYWdl
U291cmNlLCBwcm9wZXJ0eSwgV1RGTW92ZShzb3VyY2UpLCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGlj
aXRJbml0aWFsVmFsdWUoKSwgaW1wb3J0YW50KTsKKyAgICAgICAgICAgIGFkZFByb3BlcnR5V2l0
aEltcGxpY2l0RGVmYXVsdChDU1NQcm9wZXJ0eVdlYmtpdE1hc2tCb3hJbWFnZVNsaWNlLCBwcm9w
ZXJ0eSwgV1RGTW92ZShzbGljZSksIHZhbHVlUG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1
ZSgpLCBpbXBvcnRhbnQpOworICAgICAgICAgICAgYWRkUHJvcGVydHlXaXRoSW1wbGljaXREZWZh
dWx0KENTU1Byb3BlcnR5V2Via2l0TWFza0JveEltYWdlV2lkdGgsIHByb3BlcnR5LCBXVEZNb3Zl
KHdpZHRoKSwgdmFsdWVQb29sLmNyZWF0ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCksIGltcG9ydGFu
dCk7CisgICAgICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNpdERlZmF1bHQoQ1NTUHJvcGVy
dHlXZWJraXRNYXNrQm94SW1hZ2VPdXRzZXQsIHByb3BlcnR5LCBXVEZNb3ZlKG91dHNldCksIHZh
bHVlUG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQpOworICAgICAg
ICAgICAgYWRkUHJvcGVydHlXaXRoSW1wbGljaXREZWZhdWx0KENTU1Byb3BlcnR5V2Via2l0TWFz
a0JveEltYWdlUmVwZWF0LCBwcm9wZXJ0eSwgV1RGTW92ZShyZXBlYXQpLCB2YWx1ZVBvb2wuY3Jl
YXRlSW1wbGljaXRJbml0aWFsVmFsdWUoKSwgaW1wb3J0YW50KTsKICAgICAgICAgICAgIHJldHVy
biB0cnVlOworICAgICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0Qm9yZGVySW1hZ2U6CisgICAg
ICAgICAgICAvLyBXZSBoYXZlIHRvIHByZXNlcnZlIHRoZSBsZWdhY3kgYmVoYXZpb3Igb2YgLXdl
YmtpdC1ib3JkZXItaW1hZ2UgYW5kIG1ha2UgdGhlIGJvcmRlciBzbGljZXMKKyAgICAgICAgICAg
IC8vIGFsc28gc2V0IHRoZSBib3JkZXIgd2lkdGhzLiBXZSBkb24ndCBuZWVkIHRvIHdvcnJ5IGFi
b3V0IHBlcmNlbnRhZ2VzLCBzaW5jZSB3ZSBkb24ndCBldmVuIHN1cHBvcnQKKyAgICAgICAgICAg
IC8vIHRob3NlIG9uIHJlYWwgYm9yZGVycyB5ZXQuCisgICAgICAgICAgICBpZiAoUXVhZCogcXVh
ZCA9IHdpZHRoID8gd2lkdGgtPnF1YWRWYWx1ZSgpIDogbnVsbHB0cikgeworICAgICAgICAgICAg
ICAgIGF1dG8gYWRkUHJvcGVydHlJZkxlbmd0aCA9IFsmXShDU1NQcm9wZXJ0eUlEIGxvbmdoYW5k
LCBSZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+IHZhbHVlKSB7CisgICAgICAgICAgICAgICAgICAg
IGlmICh2YWx1ZSAmJiB2YWx1ZS0+aXNMZW5ndGgoKSkKKyAgICAgICAgICAgICAgICAgICAgICAg
IGFkZFByb3BlcnR5KGxvbmdoYW5kLCBDU1NQcm9wZXJ0eVdlYmtpdEJvcmRlckltYWdlLCB2YWx1
ZS5yZWxlYXNlTm9uTnVsbCgpLCBpbXBvcnRhbnQpOworICAgICAgICAgICAgICAgIH07CisgICAg
ICAgICAgICAgICAgYWRkUHJvcGVydHlJZkxlbmd0aChDU1NQcm9wZXJ0eUJvcmRlclRvcFdpZHRo
LCBxdWFkLT50b3AoKSk7CisgICAgICAgICAgICAgICAgYWRkUHJvcGVydHlJZkxlbmd0aChDU1NQ
cm9wZXJ0eUJvcmRlclJpZ2h0V2lkdGgsIHF1YWQtPnJpZ2h0KCkpOworICAgICAgICAgICAgICAg
IGFkZFByb3BlcnR5SWZMZW5ndGgoQ1NTUHJvcGVydHlCb3JkZXJCb3R0b21XaWR0aCwgcXVhZC0+
Ym90dG9tKCkpOworICAgICAgICAgICAgICAgIGFkZFByb3BlcnR5SWZMZW5ndGgoQ1NTUHJvcGVy
dHlCb3JkZXJMZWZ0V2lkdGgsIHF1YWQtPmxlZnQoKSk7CisgICAgICAgICAgICB9CisgICAgICAg
ICAgICBGQUxMVEhST1VHSDsKICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlckltYWdlOgot
ICAgICAgICAgICAgYWRkUHJvcGVydHlXaXRoSW1wbGljaXREZWZhdWx0KENTU1Byb3BlcnR5Qm9y
ZGVySW1hZ2VTb3VyY2UsIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2UsIFdURk1vdmUoc291cmNlKSwg
dmFsdWVQb29sLmNyZWF0ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCksIGltcG9ydGFudCk7Ci0gICAg
ICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNpdERlZmF1bHQoQ1NTUHJvcGVydHlCb3JkZXJJ
bWFnZVNsaWNlLCBDU1NQcm9wZXJ0eUJvcmRlckltYWdlLCBXVEZNb3ZlKHNsaWNlKSwgdmFsdWVQ
b29sLmNyZWF0ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCksIGltcG9ydGFudCk7Ci0gICAgICAgICAg
ICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNpdERlZmF1bHQoQ1NTUHJvcGVydHlCb3JkZXJJbWFnZVdp
ZHRoLCBDU1NQcm9wZXJ0eUJvcmRlckltYWdlLCBXVEZNb3ZlKHdpZHRoKSwgdmFsdWVQb29sLmNy
ZWF0ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCksIGltcG9ydGFudCk7Ci0gICAgICAgICAgICBhZGRQ
cm9wZXJ0eVdpdGhJbXBsaWNpdERlZmF1bHQoQ1NTUHJvcGVydHlCb3JkZXJJbWFnZU91dHNldCwg
Q1NTUHJvcGVydHlCb3JkZXJJbWFnZSwgV1RGTW92ZShvdXRzZXQpLCB2YWx1ZVBvb2wuY3JlYXRl
SW1wbGljaXRJbml0aWFsVmFsdWUoKSwgaW1wb3J0YW50KTsKLSAgICAgICAgICAgIGFkZFByb3Bl
cnR5V2l0aEltcGxpY2l0RGVmYXVsdChDU1NQcm9wZXJ0eUJvcmRlckltYWdlUmVwZWF0LCBDU1NQ
cm9wZXJ0eUJvcmRlckltYWdlLCBXVEZNb3ZlKHJlcGVhdCksIHZhbHVlUG9vbC5jcmVhdGVJbXBs
aWNpdEluaXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQpOworICAgICAgICAgICAgYWRkUHJvcGVydHlX
aXRoSW1wbGljaXREZWZhdWx0KENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VTb3VyY2UsIHByb3BlcnR5
LCBXVEZNb3ZlKHNvdXJjZSksIHZhbHVlUG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgp
LCBpbXBvcnRhbnQpOworICAgICAgICAgICAgYWRkUHJvcGVydHlXaXRoSW1wbGljaXREZWZhdWx0
KENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VTbGljZSwgcHJvcGVydHksIFdURk1vdmUoc2xpY2UpLCB2
YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFsdWUoKSwgaW1wb3J0YW50KTsKKyAgICAg
ICAgICAgIGFkZFByb3BlcnR5V2l0aEltcGxpY2l0RGVmYXVsdChDU1NQcm9wZXJ0eUJvcmRlcklt
YWdlV2lkdGgsIHByb3BlcnR5LCBXVEZNb3ZlKHdpZHRoKSwgdmFsdWVQb29sLmNyZWF0ZUltcGxp
Y2l0SW5pdGlhbFZhbHVlKCksIGltcG9ydGFudCk7CisgICAgICAgICAgICBhZGRQcm9wZXJ0eVdp
dGhJbXBsaWNpdERlZmF1bHQoQ1NTUHJvcGVydHlCb3JkZXJJbWFnZU91dHNldCwgcHJvcGVydHks
IFdURk1vdmUob3V0c2V0KSwgdmFsdWVQb29sLmNyZWF0ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCks
IGltcG9ydGFudCk7CisgICAgICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNpdERlZmF1bHQo
Q1NTUHJvcGVydHlCb3JkZXJJbWFnZVJlcGVhdCwgcHJvcGVydHksIFdURk1vdmUocmVwZWF0KSwg
dmFsdWVQb29sLmNyZWF0ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCksIGltcG9ydGFudCk7CiAgICAg
ICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgIEFTU0VS
VF9OT1RfUkVBQ0hFRCgpOwpAQCAtNjQzMCw2ICs2NDQ0LDcgQEAgYm9vbCBDU1NQcm9wZXJ0eVBh
cnNlcjo6cGFyc2VTaG9ydGhhbmQoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eSwgYm9vbCBpbXBvcnRh
bnQpCiAgICAgICAgIHJldHVybiB0cnVlOwogICAgIH0KICAgICBjYXNlIENTU1Byb3BlcnR5Qm9y
ZGVySW1hZ2U6CisgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEJvcmRlckltYWdlOgogICAgICAg
ICByZXR1cm4gY29uc3VtZUJvcmRlckltYWdlKHByb3BlcnR5LCBpbXBvcnRhbnQpOwogICAgIGNh
c2UgQ1NTUHJvcGVydHlQYWdlQnJlYWtBZnRlcjoKICAgICBjYXNlIENTU1Byb3BlcnR5UGFnZUJy
ZWFrQmVmb3JlOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3R5bGUvUHJvcGVydHlDYXNj
YWRlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1Byb3BlcnR5Q2FzY2FkZS5jcHAKaW5kZXgg
OWU5YjI5YjdjNDU0NDg2MTUyZWVhM2FlZThjNzZkZWQ3YWQ3ODEwZS4uYWMwNDcxYjQ5NDg0N2E3
MWY1NjBlNDBiYjFmNDJlNjg2MTRiYmM0ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3R5
bGUvUHJvcGVydHlDYXNjYWRlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9Qcm9wZXJ0
eUNhc2NhZGUuY3BwCkBAIC00NywxMyArNDcsNiBAQCBzdGF0aWMgaW5saW5lIGJvb2wgc2hvdWxk
QXBwbHlQcm9wZXJ0eUluUGFyc2VPcmRlcihDU1NQcm9wZXJ0eUlEIHByb3BlcnR5SUQpCiAgICAg
Y2FzZSBDU1NQcm9wZXJ0eUJhY2tncm91bmRPcmlnaW46CiAgICAgY2FzZSBDU1NQcm9wZXJ0eVdl
YmtpdEJhY2tncm91bmRTaXplOgogICAgIGNhc2UgQ1NTUHJvcGVydHlCYWNrZ3JvdW5kU2l6ZToK
LSAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0Qm9yZGVySW1hZ2U6Ci0gICAgY2FzZSBDU1NQcm9w
ZXJ0eUJvcmRlckltYWdlOgotICAgIGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJJbWFnZVNsaWNlOgot
ICAgIGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJJbWFnZVNvdXJjZToKLSAgICBjYXNlIENTU1Byb3Bl
cnR5Qm9yZGVySW1hZ2VPdXRzZXQ6Ci0gICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlckltYWdlUmVw
ZWF0OgotICAgIGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJJbWFnZVdpZHRoOgogICAgIGNhc2UgQ1NT
UHJvcGVydHlXZWJraXRCb3hTaGFkb3c6CiAgICAgY2FzZSBDU1NQcm9wZXJ0eUJveFNoYWRvdzoK
ICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0VGV4dERlY29yYXRpb246CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZUJ1aWxkZXJDb252ZXJ0ZXIuaCBiL1NvdXJjZS9XZWJD
b3JlL3N0eWxlL1N0eWxlQnVpbGRlckNvbnZlcnRlci5oCmluZGV4IDc0NjRmODRkOGJmNmIyYjJh
MzMxMjNkNTkyYmUyOTJmMTRjYzI4ZGUuLmI3MWI4OTIxZDU0NDFiMTUyYTczMzYzYjY0MzVmZTI4
ZmU4ODFmZjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlQnVpbGRlckNv
bnZlcnRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlQnVpbGRlckNvbnZlcnRl
ci5oCkBAIC04NSw3ICs4NSw2IEBAIHB1YmxpYzoKICAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBUPiBz
dGF0aWMgVCBjb252ZXJ0TnVtYmVyKEJ1aWxkZXJTdGF0ZSYsIGNvbnN0IENTU1ZhbHVlJik7CiAg
ICAgdGVtcGxhdGU8dHlwZW5hbWUgVD4gc3RhdGljIFQgY29udmVydE51bWJlck9yQXV0byhCdWls
ZGVyU3RhdGUmLCBjb25zdCBDU1NWYWx1ZSYpOwogICAgIHN0YXRpYyBzaG9ydCBjb252ZXJ0V2Vi
a2l0SHlwaGVuYXRlTGltaXRMaW5lcyhCdWlsZGVyU3RhdGUmLCBjb25zdCBDU1NWYWx1ZSYpOwot
ICAgIHRlbXBsYXRlPENTU1Byb3BlcnR5SUQ+IHN0YXRpYyBOaW5lUGllY2VJbWFnZSBjb252ZXJ0
Qm9yZGVySW1hZ2UoQnVpbGRlclN0YXRlJiwgQ1NTVmFsdWUmKTsKICAgICB0ZW1wbGF0ZTxDU1NQ
cm9wZXJ0eUlEPiBzdGF0aWMgTmluZVBpZWNlSW1hZ2UgY29udmVydEJvcmRlck1hc2soQnVpbGRl
clN0YXRlJiwgQ1NTVmFsdWUmKTsKICAgICB0ZW1wbGF0ZTxDU1NQcm9wZXJ0eUlEPiBzdGF0aWMg
UmVmUHRyPFN0eWxlSW1hZ2U+IGNvbnZlcnRTdHlsZUltYWdlKEJ1aWxkZXJTdGF0ZSYsIENTU1Zh
bHVlJik7CiAgICAgc3RhdGljIEltYWdlT3JpZW50YXRpb24gY29udmVydEltYWdlT3JpZW50YXRp
b24oQnVpbGRlclN0YXRlJiwgY29uc3QgQ1NTVmFsdWUmKTsKQEAgLTQ2NCwxOSArNDYzLDExIEBA
IGlubGluZSBzaG9ydCBCdWlsZGVyQ29udmVydGVyOjpjb252ZXJ0V2Via2l0SHlwaGVuYXRlTGlt
aXRMaW5lcyhCdWlsZGVyU3RhdGUmLCBjCiAgICAgcmV0dXJuIHByaW1pdGl2ZVZhbHVlLnZhbHVl
PHNob3J0PihDU1NVbml0VHlwZTo6Q1NTX05VTUJFUik7CiB9CiAKLXRlbXBsYXRlPENTU1Byb3Bl
cnR5SUQgcHJvcGVydHk+Ci1pbmxpbmUgTmluZVBpZWNlSW1hZ2UgQnVpbGRlckNvbnZlcnRlcjo6
Y29udmVydEJvcmRlckltYWdlKEJ1aWxkZXJTdGF0ZSYgYnVpbGRlclN0YXRlLCBDU1NWYWx1ZSYg
dmFsdWUpCi17Ci0gICAgTmluZVBpZWNlSW1hZ2UgaW1hZ2U7Ci0gICAgYnVpbGRlclN0YXRlLnN0
eWxlTWFwKCkubWFwTmluZVBpZWNlSW1hZ2UocHJvcGVydHksICZ2YWx1ZSwgaW1hZ2UpOwotICAg
IHJldHVybiBpbWFnZTsKLX0KLQogdGVtcGxhdGU8Q1NTUHJvcGVydHlJRCBwcm9wZXJ0eT4KIGlu
bGluZSBOaW5lUGllY2VJbWFnZSBCdWlsZGVyQ29udmVydGVyOjpjb252ZXJ0Qm9yZGVyTWFzayhC
dWlsZGVyU3RhdGUmIGJ1aWxkZXJTdGF0ZSwgQ1NTVmFsdWUmIHZhbHVlKQogewogICAgIE5pbmVQ
aWVjZUltYWdlIGltYWdlKE5pbmVQaWVjZUltYWdlOjpUeXBlOjpNYXNrKTsKLSAgICBidWlsZGVy
U3RhdGUuc3R5bGVNYXAoKS5tYXBOaW5lUGllY2VJbWFnZShwcm9wZXJ0eSwgJnZhbHVlLCBpbWFn
ZSk7CisgICAgYnVpbGRlclN0YXRlLnN0eWxlTWFwKCkubWFwTmluZVBpZWNlSW1hZ2UoJnZhbHVl
LCBpbWFnZSk7CiAgICAgcmV0dXJuIGltYWdlOwogfQogCkBAIC04MDksNyArODAwLDcgQEAgaW5s
aW5lIFJlZlB0cjxTdHlsZVJlZmxlY3Rpb24+IEJ1aWxkZXJDb252ZXJ0ZXI6OmNvbnZlcnRSZWZs
ZWN0aW9uKEJ1aWxkZXJTdGF0ZSYKICAgICByZWZsZWN0aW9uLT5zZXRPZmZzZXQocmVmbGVjdFZh
bHVlLm9mZnNldCgpLmNvbnZlcnRUb0xlbmd0aDxGaXhlZEludGVnZXJDb252ZXJzaW9uIHwgUGVy
Y2VudENvbnZlcnNpb24gfCBDYWxjdWxhdGVkQ29udmVyc2lvbj4oYnVpbGRlclN0YXRlLmNzc1Rv
TGVuZ3RoQ29udmVyc2lvbkRhdGEoKSkpOwogCiAgICAgTmluZVBpZWNlSW1hZ2UgbWFzayhOaW5l
UGllY2VJbWFnZTo6VHlwZTo6TWFzayk7Ci0gICAgYnVpbGRlclN0YXRlLnN0eWxlTWFwKCkubWFw
TmluZVBpZWNlSW1hZ2UoQ1NTUHJvcGVydHlXZWJraXRCb3hSZWZsZWN0LCByZWZsZWN0VmFsdWUu
bWFzaygpLCBtYXNrKTsKKyAgICBidWlsZGVyU3RhdGUuc3R5bGVNYXAoKS5tYXBOaW5lUGllY2VJ
bWFnZShyZWZsZWN0VmFsdWUubWFzaygpLCBtYXNrKTsKICAgICByZWZsZWN0aW9uLT5zZXRNYXNr
KG1hc2spOwogCiAgICAgcmV0dXJuIHJlZmxlY3Rpb247Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>454046</attachid>
            <date>2022-03-07 15:59:54 -0800</date>
            <delta_ts>2022-03-14 23:15:15 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-237487-20220308005953.patch</filename>
            <type>text/plain</type>
            <size>39562</size>
            <attacher name="Oriol Brufau">obrufau</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkwOTAyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjdkNjg1YjA3YzMxYTdi
NWVhZWY2N2JhZmY0YzEwYzNhOTJlNmMxOS4uOTA0NGMwZTU5OWM3MmFjMmZjMGU5OWFiM2VhODk0
ZDllMGIzMzRhNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUwIEBACisyMDIyLTAzLTA3ICBPcmlv
bCBCcnVmYXUgIDxvYnJ1ZmF1QGlnYWxpYS5jb20+CisKKyAgICAgICAgW2Nzc10gVHVybiAtd2Vi
a2l0LWJvcmRlci1pbWFnZSBpbnRvIGEgc2hvcnRoYW5kCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzc0ODcKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGUgJy13ZWJraXQtYm9yZGVyLWltYWdlJyBwcm9w
ZXJ0eSB3YXMgY29uc2lkZXJlZCB0byBiZSBhIGxvbmdoYW5kLAorICAgICAgICBzaGFyaW5nIGNv
bXB1dGVkIHZhbHVlcyB3aXRoIHRoZSB2YXJpb3VzICdib3JkZXItaW1hZ2UtKicuCisKKyAgICAg
ICAgVGhpcyBwYXRjaCB0dXJucyBpdCBpbnRvIGEgbG9uZ2hhbmQgb2YgJ2JvcmRlci1pbWFnZS0q
JywgYW5kIGFsc28gb2YKKyAgICAgICAgJ2JvcmRlci0qLXdpZHRoJy4gVGhlIGxhdHRlciBpcyBi
ZWNhdXNlIEknbSBwcmVzZXJ2aW5nIHRoZSBsZWdhY3kKKyAgICAgICAgYmVoYXZpb3Igb2YgbWFr
aW5nIHRoZSBib3JkZXIgaW1hZ2Ugd2lkdGhzIGFsc28gc2V0IHRoZSBib3JkZXIgd2lkdGhzCisg
ICAgICAgIGlmIHRoZXkgYXJlIGEgbGVuZ3RoLgorCisgICAgICAgIFRlc3RzOiBmYXN0L2Nzcy9n
ZXRDb21wdXRlZFN0eWxlL2NvbXB1dGVkLXN0eWxlLmh0bWwKKyAgICAgICAgICAgICAgIGZhc3Qv
Y3NzL2dldENvbXB1dGVkU3R5bGUvY29tcHV0ZWQtc3R5bGUtd2l0aG91dC1yZW5kZXJlci5odG1s
CisgICAgICAgICAgICAgICBmYXN0L2Nzcy9pbWFnZS1zZXQtcGFyc2luZy5odG1sCisgICAgICAg
ICAgICAgICBmYXN0L2Nzcy91cmktdG9rZW4tcGFyc2luZy5odG1sCisgICAgICAgICAgICAgICBp
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS9nZXRDb21wdXRlZFN0eWxl
LWRldGFjaGVkLXN1YnRyZWUuaHRtbAorICAgICAgICAgICAgICAgc3ZnL2Nzcy9nZXRDb21wdXRl
ZFN0eWxlLWJhc2ljLnhodG1sCisKKyAgICAgICAgKiBjc3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xh
cmF0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OnZhbHVlRm9yTmluZVBpZWNlSW1hZ2UpOgor
ICAgICAgICAoV2ViQ29yZTo6dmFsdWVGb3JSZWZsZWN0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6
OkNvbXB1dGVkU3R5bGVFeHRyYWN0b3I6OnZhbHVlRm9yUHJvcGVydHlJblN0eWxlKToKKyAgICAg
ICAgKiBjc3MvQ1NTUHJvcGVydGllcy5qc29uOgorICAgICAgICAqIGNzcy9DU1NUb1N0eWxlTWFw
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1RvU3R5bGVNYXA6Om1hcE5pbmVQaWVjZUltYWdl
KToKKyAgICAgICAgKiBjc3MvQ1NTVG9TdHlsZU1hcC5oOgorICAgICAgICAqIGNzcy9TdHlsZVBy
b3BlcnRpZXMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVQcm9wZXJ0aWVzOjpnZXRQcm9w
ZXJ0eVZhbHVlIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlUHJvcGVydGllczo6YXNU
ZXh0IGNvbnN0KToKKyAgICAgICAgKiBjc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VyLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OmNvbnN1bWVCb3JkZXJJbWFnZVdpZHRoKToKKyAgICAgICAgKFdl
YkNvcmU6OmNvbnN1bWVCb3JkZXJJbWFnZUNvbXBvbmVudHMpOgorICAgICAgICAoV2ViQ29yZTo6
Y29uc3VtZVdlYmtpdEJvcmRlckltYWdlKToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1Byb3BlcnR5
UGFyc2VyOjpwYXJzZVNpbmdsZVZhbHVlKToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1Byb3BlcnR5
UGFyc2VyOjpjb25zdW1lQm9yZGVySW1hZ2UpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUHJvcGVy
dHlQYXJzZXI6OnBhcnNlU2hvcnRoYW5kKToKKyAgICAgICAgKiBzdHlsZS9Qcm9wZXJ0eUNhc2Nh
ZGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGU6OnNob3VsZEFwcGx5UHJvcGVydHlJblBh
cnNlT3JkZXIpOgorICAgICAgICAqIHN0eWxlL1N0eWxlQnVpbGRlckNvbnZlcnRlci5oOgorICAg
ICAgICAoV2ViQ29yZTo6U3R5bGU6OkJ1aWxkZXJDb252ZXJ0ZXI6OmNvbnZlcnRCb3JkZXJNYXNr
KToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlOjpCdWlsZGVyQ29udmVydGVyOjpjb252ZXJ0UmVm
bGVjdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6QnVpbGRlckNvbnZlcnRlcjo6Y29u
dmVydEJvcmRlckltYWdlKTogRGVsZXRlZC4KKwogMjAyMi0wMy0wNyAgQ2hyaXMgRHVtZXogIDxj
ZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAgIE9wdGltaXplIHRoZSBwYXNzaW5nIG9mIGRhdGEg
YWNyb3NzIHRocmVhZHMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDb21wdXRl
ZFN0eWxlRGVjbGFyYXRpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5
bGVEZWNsYXJhdGlvbi5jcHAKaW5kZXggZTk0NTE3NzEzNmU2MTFmZDhiNmIwMDA2MjcyZWFmMTA2
YmMwNDllNi4uZTdhMTRjYTQ4OGE2M2E0MTQ1NTJmNmQzYTBjNzZjZTVjMzM5NjRhYyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAK
QEAgLTIyNCw3ICsyMjQsNyBAQCBzdGF0aWMgUmVmPENTU1ZhbHVlPiB2YWx1ZUZvck5pbmVQaWVj
ZUltYWdlUmVwZWF0KGNvbnN0IE5pbmVQaWVjZUltYWdlJiBpbWFnZSkKICAgICByZXR1cm4gY3Nz
VmFsdWVQb29sLmNyZWF0ZVZhbHVlKFBhaXI6OmNyZWF0ZShXVEZNb3ZlKGhvcml6b250YWxSZXBl
YXQpLCBXVEZNb3ZlKHZlcnRpY2FsUmVwZWF0KSkpOwogfQogCi1zdGF0aWMgUmVmPENTU1ZhbHVl
PiB2YWx1ZUZvck5pbmVQaWVjZUltYWdlKGNvbnN0IE5pbmVQaWVjZUltYWdlJiBpbWFnZSwgY29u
c3QgUmVuZGVyU3R5bGUmIHN0eWxlKQorc3RhdGljIFJlZlB0cjxDU1NWYWx1ZT4gdmFsdWVGb3JO
aW5lUGllY2VJbWFnZShDU1NQcm9wZXJ0eUlEIHByb3BlcnR5SUQsIGNvbnN0IE5pbmVQaWVjZUlt
YWdlJiBpbWFnZSwgY29uc3QgUmVuZGVyU3R5bGUmIHN0eWxlKQogewogICAgIGlmICghaW1hZ2Uu
aGFzSW1hZ2UoKSkKICAgICAgICAgcmV0dXJuIENTU1ZhbHVlUG9vbDo6c2luZ2xldG9uKCkuY3Jl
YXRlSWRlbnRpZmllclZhbHVlKENTU1ZhbHVlTm9uZSk7CkBAIC0yMzMsNiArMjMzLDIwIEBAIHN0
YXRpYyBSZWY8Q1NTVmFsdWU+IHZhbHVlRm9yTmluZVBpZWNlSW1hZ2UoY29uc3QgTmluZVBpZWNl
SW1hZ2UmIGltYWdlLCBjb25zdCBSCiAgICAgaWYgKGltYWdlLmltYWdlKCkpCiAgICAgICAgIGlt
YWdlVmFsdWUgPSBpbWFnZS5pbWFnZSgpLT5jc3NWYWx1ZSgpOwogCisgICAgaWYgKHByb3BlcnR5
SUQgPT0gQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJJbWFnZSkgeworICAgICAgICAvLyAtd2Via2l0
LWJvcmRlci1pbWFnZSBoYXMgYSBsZWdhY3kgYmVoYXZpb3IgdGhhdCBtYWtlcyBmaXhlZCBib3Jk
ZXIgc2xpY2VzIGFsc28gc2V0IHRoZSBib3JkZXIgd2lkdGhzLgorICAgICAgICAvLyBTbyBpZiB0
aGV5IGFyZSBmaXhlZCBidXQgdGhlIGJvcmRlciB3aWR0aHMgZG9uJ3QgbWF0Y2gsIC13ZWJraXQt
Ym9yZGVyLWltYWdlIGNhbid0IHJlcHJlc2VudCB0aGUgY3VycmVudCBzdGF0ZS4KKyAgICAgICAg
Y29uc3QgYXV0byYgYm9yZGVyU2xpY2VzID0gaW1hZ2UuYm9yZGVyU2xpY2VzKCk7CisgICAgICAg
IGlmIChib3JkZXJTbGljZXMudG9wKCkuaXNGaXhlZCgpICYmIGJvcmRlclNsaWNlcy50b3AoKS52
YWx1ZSgpICE9IHN0eWxlLmJvcmRlclRvcFdpZHRoKCkpCisgICAgICAgICAgICByZXR1cm4gbnVs
bHB0cjsKKyAgICAgICAgaWYgKGJvcmRlclNsaWNlcy5yaWdodCgpLmlzRml4ZWQoKSAmJiBib3Jk
ZXJTbGljZXMucmlnaHQoKS52YWx1ZSgpICE9IHN0eWxlLmJvcmRlclJpZ2h0V2lkdGgoKSkKKyAg
ICAgICAgICAgIHJldHVybiBudWxscHRyOworICAgICAgICBpZiAoYm9yZGVyU2xpY2VzLmJvdHRv
bSgpLmlzRml4ZWQoKSAmJiBib3JkZXJTbGljZXMuYm90dG9tKCkudmFsdWUoKSAhPSBzdHlsZS5i
b3JkZXJCb3R0b21XaWR0aCgpKQorICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgICAg
IGlmIChib3JkZXJTbGljZXMubGVmdCgpLmlzRml4ZWQoKSAmJiBib3JkZXJTbGljZXMubGVmdCgp
LnZhbHVlKCkgIT0gc3R5bGUuYm9yZGVyTGVmdFdpZHRoKCkpCisgICAgICAgICAgICByZXR1cm4g
bnVsbHB0cjsKKyAgICB9CisKICAgICBhdXRvIGltYWdlU2xpY2VzID0gdmFsdWVGb3JOaW5lUGll
Y2VJbWFnZVNsaWNlKGltYWdlKTsKICAgICBhdXRvIGJvcmRlclNsaWNlcyA9IHZhbHVlRm9yTmlu
ZVBpZWNlSW1hZ2VRdWFkKGltYWdlLmJvcmRlclNsaWNlcygpLCBzdHlsZSk7CiAgICAgYXV0byBv
dXRzZXQgPSB2YWx1ZUZvck5pbmVQaWVjZUltYWdlUXVhZChpbWFnZS5vdXRzZXQoKSwgc3R5bGUp
OwpAQCAtMjg0LDcgKzI5OCw3IEBAIHN0YXRpYyBSZWY8Q1NTVmFsdWU+IHZhbHVlRm9yUmVmbGVj
dGlvbihjb25zdCBTdHlsZVJlZmxlY3Rpb24qIHJlZmxlY3Rpb24sIGNvbnN0CiAgICAgICAgIGJy
ZWFrOwogICAgIH0KIAotICAgIHJldHVybiBDU1NSZWZsZWN0VmFsdWU6OmNyZWF0ZShkaXJlY3Rp
b24ucmVsZWFzZU5vbk51bGwoKSwgb2Zmc2V0LnJlbGVhc2VOb25OdWxsKCksIHZhbHVlRm9yTmlu
ZVBpZWNlSW1hZ2UocmVmbGVjdGlvbi0+bWFzaygpLCBzdHlsZSkpOworICAgIHJldHVybiBDU1NS
ZWZsZWN0VmFsdWU6OmNyZWF0ZShkaXJlY3Rpb24ucmVsZWFzZU5vbk51bGwoKSwgb2Zmc2V0LnJl
bGVhc2VOb25OdWxsKCksIHZhbHVlRm9yTmluZVBpZWNlSW1hZ2UoQ1NTUHJvcGVydHlXZWJraXRC
b3hSZWZsZWN0LCByZWZsZWN0aW9uLT5tYXNrKCksIHN0eWxlKSk7CiB9CiAKIHN0YXRpYyBSZWY8
Q1NTVmFsdWVMaXN0PiBjcmVhdGVQb3NpdGlvbkxpc3RGb3JMYXllcihDU1NQcm9wZXJ0eUlEIHBy
b3BlcnR5SUQsIGNvbnN0IEZpbGxMYXllciYgbGF5ZXIsIGNvbnN0IFJlbmRlclN0eWxlJiBzdHls
ZSkKQEAgLTM3ODcsNyArMzgwMSw3IEBAIFJlZlB0cjxDU1NWYWx1ZT4gQ29tcHV0ZWRTdHlsZUV4
dHJhY3Rvcjo6dmFsdWVGb3JQcm9wZXJ0eUluU3R5bGUoY29uc3QgUmVuZGVyU3R5CiAgICAgICAg
IGNhc2UgQ1NTUHJvcGVydHlCYWNrZmFjZVZpc2liaWxpdHk6CiAgICAgICAgICAgICByZXR1cm4g
Y3NzVmFsdWVQb29sLmNyZWF0ZUlkZW50aWZpZXJWYWx1ZSgoc3R5bGUuYmFja2ZhY2VWaXNpYmls
aXR5KCkgPT0gQmFja2ZhY2VWaXNpYmlsaXR5OjpIaWRkZW4pID8gQ1NTVmFsdWVIaWRkZW4gOiBD
U1NWYWx1ZVZpc2libGUpOwogICAgICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0Qm9yZGVySW1h
Z2U6Ci0gICAgICAgICAgICByZXR1cm4gdmFsdWVGb3JOaW5lUGllY2VJbWFnZShzdHlsZS5ib3Jk
ZXJJbWFnZSgpLCBzdHlsZSk7CisgICAgICAgICAgICByZXR1cm4gdmFsdWVGb3JOaW5lUGllY2VJ
bWFnZShwcm9wZXJ0eUlELCBzdHlsZS5ib3JkZXJJbWFnZSgpLCBzdHlsZSk7CiAgICAgICAgIGNh
c2UgQ1NTUHJvcGVydHlCb3JkZXJJbWFnZU91dHNldDoKICAgICAgICAgICAgIHJldHVybiB2YWx1
ZUZvck5pbmVQaWVjZUltYWdlUXVhZChzdHlsZS5ib3JkZXJJbWFnZSgpLm91dHNldCgpLCBzdHls
ZSk7CiAgICAgICAgIGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJJbWFnZVJlcGVhdDoKQEAgLTM3OTcs
NyArMzgxMSw3IEBAIFJlZlB0cjxDU1NWYWx1ZT4gQ29tcHV0ZWRTdHlsZUV4dHJhY3Rvcjo6dmFs
dWVGb3JQcm9wZXJ0eUluU3R5bGUoY29uc3QgUmVuZGVyU3R5CiAgICAgICAgIGNhc2UgQ1NTUHJv
cGVydHlCb3JkZXJJbWFnZVdpZHRoOgogICAgICAgICAgICAgcmV0dXJuIHZhbHVlRm9yTmluZVBp
ZWNlSW1hZ2VRdWFkKHN0eWxlLmJvcmRlckltYWdlKCkuYm9yZGVyU2xpY2VzKCksIHN0eWxlKTsK
ICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdE1hc2tCb3hJbWFnZToKLSAgICAgICAgICAg
IHJldHVybiB2YWx1ZUZvck5pbmVQaWVjZUltYWdlKHN0eWxlLm1hc2tCb3hJbWFnZSgpLCBzdHls
ZSk7CisgICAgICAgICAgICByZXR1cm4gdmFsdWVGb3JOaW5lUGllY2VJbWFnZShwcm9wZXJ0eUlE
LCBzdHlsZS5tYXNrQm94SW1hZ2UoKSwgc3R5bGUpOwogICAgICAgICBjYXNlIENTU1Byb3BlcnR5
V2Via2l0TWFza0JveEltYWdlT3V0c2V0OgogICAgICAgICAgICAgcmV0dXJuIHZhbHVlRm9yTmlu
ZVBpZWNlSW1hZ2VRdWFkKHN0eWxlLm1hc2tCb3hJbWFnZSgpLm91dHNldCgpLCBzdHlsZSk7CiAg
ICAgICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2VSZXBlYXQ6CkBAIC00MDM0
LDcgKzQwNDgsNyBAQCBSZWZQdHI8Q1NTVmFsdWU+IENvbXB1dGVkU3R5bGVFeHRyYWN0b3I6OnZh
bHVlRm9yUHJvcGVydHlJblN0eWxlKGNvbnN0IFJlbmRlclN0eQogICAgICAgICBjYXNlIENTU1By
b3BlcnR5Qm9yZGVyTGVmdDoKICAgICAgICAgICAgIHJldHVybiBnZXRDU1NQcm9wZXJ0eVZhbHVl
c0ZvclNob3J0aGFuZFByb3BlcnRpZXMoYm9yZGVyTGVmdFNob3J0aGFuZCgpKTsKICAgICAgICAg
Y2FzZSBDU1NQcm9wZXJ0eUJvcmRlckltYWdlOgotICAgICAgICAgICAgcmV0dXJuIHZhbHVlRm9y
TmluZVBpZWNlSW1hZ2Uoc3R5bGUuYm9yZGVySW1hZ2UoKSwgc3R5bGUpOworICAgICAgICAgICAg
cmV0dXJuIHZhbHVlRm9yTmluZVBpZWNlSW1hZ2UocHJvcGVydHlJRCwgc3R5bGUuYm9yZGVySW1h
Z2UoKSwgc3R5bGUpOwogICAgICAgICBjYXNlIENTU1Byb3BlcnR5Qm9yZGVySW5saW5lOiB7CiAg
ICAgICAgICAgICBhdXRvIHZhbHVlID0gcHJvcGVydHlWYWx1ZShDU1NQcm9wZXJ0eUJvcmRlcklu
bGluZVN0YXJ0LCBEb05vdFVwZGF0ZUxheW91dCk7CiAgICAgICAgICAgICBpZiAoIWNvbXBhcmVD
U1NWYWx1ZVB0cjxDU1NWYWx1ZT4odmFsdWUsIHByb3BlcnR5VmFsdWUoQ1NTUHJvcGVydHlCb3Jk
ZXJJbmxpbmVFbmQsIERvTm90VXBkYXRlTGF5b3V0KSkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTUHJvcGVydGllcy5qc29uIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3Bl
cnRpZXMuanNvbgppbmRleCBkYjhkZjIxOGUzZWEyNmFmZWNhODk5MzM2YTQ2OWU5ZDU5MTk1ODJh
Li5hN2VjMjMxNzhkZjkyMTdhY2YwNWQ1ZDI0NGViNzQ5N2FiMzU1MTk2IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVydGllcy5qc29uCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9DU1NQcm9wZXJ0aWVzLmpzb24KQEAgLTUzODEsOCArNTM4MSwyMCBAQAogICAgICAgICB9
LAogICAgICAgICAiLXdlYmtpdC1ib3JkZXItaW1hZ2UiOiB7CiAgICAgICAgICAgICAiY29kZWdl
bi1wcm9wZXJ0aWVzIjogewotICAgICAgICAgICAgICAgICJpbml0aWFsIjogImluaXRpYWxOaW5l
UGllY2VJbWFnZSIsCi0gICAgICAgICAgICAgICAgImNvbnZlcnRlciI6ICJCb3JkZXJJbWFnZTxD
U1NQcm9wZXJ0eVdlYmtpdEJvcmRlckltYWdlPiIKKyAgICAgICAgICAgICAgICAibG9uZ2hhbmRz
IjogWworICAgICAgICAgICAgICAgICAgICAiYm9yZGVyLXRvcC13aWR0aCIsCisgICAgICAgICAg
ICAgICAgICAgICJib3JkZXItcmlnaHQtd2lkdGgiLAorICAgICAgICAgICAgICAgICAgICAiYm9y
ZGVyLWJvdHRvbS13aWR0aCIsCisgICAgICAgICAgICAgICAgICAgICJib3JkZXItbGVmdC13aWR0
aCIsCisgICAgICAgICAgICAgICAgICAgICJib3JkZXItaW1hZ2Utc291cmNlIiwKKyAgICAgICAg
ICAgICAgICAgICAgImJvcmRlci1pbWFnZS1zbGljZSIsCisgICAgICAgICAgICAgICAgICAgICJi
b3JkZXItaW1hZ2Utd2lkdGgiLAorICAgICAgICAgICAgICAgICAgICAiYm9yZGVyLWltYWdlLW91
dHNldCIsCisgICAgICAgICAgICAgICAgICAgICJib3JkZXItaW1hZ2UtcmVwZWF0IgorICAgICAg
ICAgICAgICAgIF0KKyAgICAgICAgICAgIH0sCisgICAgICAgICAgICAic3RhdHVzIjogeworICAg
ICAgICAgICAgICAgICJjb21tZW50IjogIkRpZmZlcnMgZnJvbSBib3JkZXItaW1hZ2UgaW4gdGhh
dCBpdCBhbHdheXMgaW5jbHVkZXMgdGhlICdmaWxsJyBrZXl3b3JkIGluICdib3JkZXItaW1hZ2Ut
c2xpY2UnLCBhbmQgaXQgc2V0cyAnYm9yZGVyLSotd2lkdGgnIGlmIHRoZSBjb3JyZXNwb25kaW5n
IHNsaWNlIG9mZnNldCBpcy4iCiAgICAgICAgICAgICB9CiAgICAgICAgIH0sCiAgICAgICAgICIt
d2Via2l0LWJvcmRlci1yYWRpdXMiOiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3Mv
Q1NTVG9TdHlsZU1hcC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVG9TdHlsZU1hcC5jcHAK
aW5kZXggOTQ2NjA1MTM1MDUzYWI1ZDM2ODc4Y2NiZjMyMTViOTNhNzEyNThhOS4uNDE5ZmViOTdh
NTZiYTYzY2NjM2I4OGNjOTBkN2U0OGE3MDIzNWFlMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvY3NzL0NTU1RvU3R5bGVNYXAuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NUb1N0
eWxlTWFwLmNwcApAQCAtNDcxLDcgKzQ3MSw3IEBAIHZvaWQgQ1NTVG9TdHlsZU1hcDo6bWFwQW5p
bWF0aW9uQ29tcG9zaXRlT3BlcmF0aW9uKEFuaW1hdGlvbiYgYW5pbWF0aW9uLCBjb25zdCBDCiAg
ICAgICAgIGFuaW1hdGlvbi5zZXRDb21wb3NpdGVPcGVyYXRpb24oKmNvbXBvc2l0ZU9wZXJhdGlv
bik7CiB9CiAKLXZvaWQgQ1NTVG9TdHlsZU1hcDo6bWFwTmluZVBpZWNlSW1hZ2UoQ1NTUHJvcGVy
dHlJRCBwcm9wZXJ0eSwgQ1NTVmFsdWUqIHZhbHVlLCBOaW5lUGllY2VJbWFnZSYgaW1hZ2UpCit2
b2lkIENTU1RvU3R5bGVNYXA6Om1hcE5pbmVQaWVjZUltYWdlKENTU1ZhbHVlKiB2YWx1ZSwgTmlu
ZVBpZWNlSW1hZ2UmIGltYWdlKQogewogICAgIC8vIElmIHdlJ3JlIG5vdCBhIHZhbHVlIGxpc3Qs
IHRoZW4gd2UgYXJlICJub25lIiBhbmQgZG9uJ3QgbmVlZCB0byBhbHRlciB0aGUgZW1wdHkgaW1h
Z2UgYXQgYWxsLgogICAgIGlmICghaXM8Q1NTVmFsdWVMaXN0Pih2YWx1ZSkpCkBAIC01MDMsMjAg
KzUwMyw2IEBAIHZvaWQgQ1NTVG9TdHlsZU1hcDo6bWFwTmluZVBpZWNlSW1hZ2UoQ1NTUHJvcGVy
dHlJRCBwcm9wZXJ0eSwgQ1NTVmFsdWUqIHZhbHVlLCBOCiAgICAgICAgICAgICBtYXBOaW5lUGll
Y2VJbWFnZVJlcGVhdChjdXJyZW50LCBpbWFnZSk7CiAgICAgICAgIH0KICAgICB9Ci0KLSAgICBp
ZiAocHJvcGVydHkgPT0gQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJJbWFnZSkgewotICAgICAgICAv
LyBXZSBoYXZlIHRvIHByZXNlcnZlIHRoZSBsZWdhY3kgYmVoYXZpb3Igb2YgLXdlYmtpdC1ib3Jk
ZXItaW1hZ2UgYW5kIG1ha2UgdGhlIGJvcmRlciBzbGljZXMKLSAgICAgICAgLy8gYWxzbyBzZXQg
dGhlIGJvcmRlciB3aWR0aHMuIFdlIGRvbid0IG5lZWQgdG8gd29ycnkgYWJvdXQgcGVyY2VudGFn
ZXMsIHNpbmNlIHdlIGRvbid0IGV2ZW4gc3VwcG9ydAotICAgICAgICAvLyB0aG9zZSBvbiByZWFs
IGJvcmRlcnMgeWV0LgotICAgICAgICBpZiAoaW1hZ2UuYm9yZGVyU2xpY2VzKCkudG9wKCkuaXNG
aXhlZCgpKQotICAgICAgICAgICAgc3R5bGUoKS0+c2V0Qm9yZGVyVG9wV2lkdGgoaW1hZ2UuYm9y
ZGVyU2xpY2VzKCkudG9wKCkudmFsdWUoKSk7Ci0gICAgICAgIGlmIChpbWFnZS5ib3JkZXJTbGlj
ZXMoKS5yaWdodCgpLmlzRml4ZWQoKSkKLSAgICAgICAgICAgIHN0eWxlKCktPnNldEJvcmRlclJp
Z2h0V2lkdGgoaW1hZ2UuYm9yZGVyU2xpY2VzKCkucmlnaHQoKS52YWx1ZSgpKTsKLSAgICAgICAg
aWYgKGltYWdlLmJvcmRlclNsaWNlcygpLmJvdHRvbSgpLmlzRml4ZWQoKSkKLSAgICAgICAgICAg
IHN0eWxlKCktPnNldEJvcmRlckJvdHRvbVdpZHRoKGltYWdlLmJvcmRlclNsaWNlcygpLmJvdHRv
bSgpLnZhbHVlKCkpOwotICAgICAgICBpZiAoaW1hZ2UuYm9yZGVyU2xpY2VzKCkubGVmdCgpLmlz
Rml4ZWQoKSkKLSAgICAgICAgICAgIHN0eWxlKCktPnNldEJvcmRlckxlZnRXaWR0aChpbWFnZS5i
b3JkZXJTbGljZXMoKS5sZWZ0KCkudmFsdWUoKSk7Ci0gICAgfQogfQogCiB2b2lkIENTU1RvU3R5
bGVNYXA6Om1hcE5pbmVQaWVjZUltYWdlU2xpY2UoQ1NTVmFsdWUmIHZhbHVlLCBOaW5lUGllY2VJ
bWFnZSYgaW1hZ2UpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVG9TdHlsZU1h
cC5oIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1RvU3R5bGVNYXAuaAppbmRleCA0YzliYjQ0Y2I5
MzI4OGRmNzY0ZTA1OTBhMzZkYmVjN2IxZmY3OGM5Li5mZWE3NWRiOTRmMWJmYjlkMmNkMmE5NDI4
NmRlMjA0OTA3YzYyZDU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVG9TdHls
ZU1hcC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NUb1N0eWxlTWFwLmgKQEAgLTcwLDcg
KzcwLDcgQEAgcHVibGljOgogICAgIHZvaWQgbWFwQW5pbWF0aW9uVGltaW5nRnVuY3Rpb24oQW5p
bWF0aW9uJiwgY29uc3QgQ1NTVmFsdWUmKTsKICAgICB2b2lkIG1hcEFuaW1hdGlvbkNvbXBvc2l0
ZU9wZXJhdGlvbihBbmltYXRpb24mLCBjb25zdCBDU1NWYWx1ZSYpOwogCi0gICAgdm9pZCBtYXBO
aW5lUGllY2VJbWFnZShDU1NQcm9wZXJ0eUlELCBDU1NWYWx1ZSosIE5pbmVQaWVjZUltYWdlJik7
CisgICAgdm9pZCBtYXBOaW5lUGllY2VJbWFnZShDU1NWYWx1ZSosIE5pbmVQaWVjZUltYWdlJik7
CiAgICAgdm9pZCBtYXBOaW5lUGllY2VJbWFnZVNsaWNlKENTU1ZhbHVlJiwgTmluZVBpZWNlSW1h
Z2UmKTsKICAgICBMZW5ndGhCb3ggbWFwTmluZVBpZWNlSW1hZ2VRdWFkKENTU1ZhbHVlJik7CiAg
ICAgdm9pZCBtYXBOaW5lUGllY2VJbWFnZVJlcGVhdChDU1NWYWx1ZSYsIE5pbmVQaWVjZUltYWdl
Jik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVQcm9wZXJ0aWVzLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVByb3BlcnRpZXMuY3BwCmluZGV4IGYyZTVhOWI0YTQ5
ZDQwMWY0YWQzODYxZTRkYzViNGRkYmMzOWZlNGMuLmZkMTc2MGE3MDNmNTA1ZDBjZjMyNzQ0OTI1
ZjZhZGZmMzRjODU4MGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVByb3Bl
cnRpZXMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVByb3BlcnRpZXMuY3BwCkBA
IC0yMTcsNiArMjE3LDggQEAgU3RyaW5nIFN0eWxlUHJvcGVydGllczo6Z2V0UHJvcGVydHlWYWx1
ZShDU1NQcm9wZXJ0eUlEIHByb3BlcnR5SUQpIGNvbnN0CiAgICAgICAgIHJldHVybiBnZXRTaG9y
dGhhbmRWYWx1ZShib3JkZXJCbG9ja1N0YXJ0U2hvcnRoYW5kKCkpOwogICAgIGNhc2UgQ1NTUHJv
cGVydHlCb3JkZXJCbG9ja0VuZDoKICAgICAgICAgcmV0dXJuIGdldFNob3J0aGFuZFZhbHVlKGJv
cmRlckJsb2NrRW5kU2hvcnRoYW5kKCkpOworICAgIGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJJbWFn
ZToKKyAgICAgICAgcmV0dXJuIGdldFNob3J0aGFuZFZhbHVlKGJvcmRlckltYWdlU2hvcnRoYW5k
KCkpOwogICAgIGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJJbmxpbmU6CiAgICAgICAgIHJldHVybiBi
b3JkZXJQcm9wZXJ0eVZhbHVlKGJvcmRlcklubGluZVdpZHRoU2hvcnRoYW5kKCksIGJvcmRlcklu
bGluZVN0eWxlU2hvcnRoYW5kKCksIGJvcmRlcklubGluZUNvbG9yU2hvcnRoYW5kKCkpOwogICAg
IGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJJbmxpbmVDb2xvcjoKQEAgLTEzMzcsNiArMTMzOSwxMyBA
QCBTdHJpbmcgU3R5bGVQcm9wZXJ0aWVzOjphc1RleHQoKSBjb25zdAogICAgICAgICAgICAgY2Fz
ZSBDU1NQcm9wZXJ0eVdlYmtpdEJvcmRlclZlcnRpY2FsU3BhY2luZzoKICAgICAgICAgICAgICAg
ICBzaG9ydGhhbmRQcm9wZXJ0eUlEID0gQ1NTUHJvcGVydHlCb3JkZXJTcGFjaW5nOwogICAgICAg
ICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlckltYWdl
U291cmNlOgorICAgICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlckltYWdlU2xpY2U6Cisg
ICAgICAgICAgICBjYXNlIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VXaWR0aDoKKyAgICAgICAgICAg
IGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJJbWFnZU91dHNldDoKKyAgICAgICAgICAgIGNhc2UgQ1NT
UHJvcGVydHlCb3JkZXJJbWFnZVJlcGVhdDoKKyAgICAgICAgICAgICAgICBzaG9ydGhhbmRQcm9w
ZXJ0eUlEID0gQ1NTUHJvcGVydHlCb3JkZXJJbWFnZTsKKyAgICAgICAgICAgICAgICBicmVhazsK
ICAgICAgICAgICAgIGNhc2UgQ1NTUHJvcGVydHlGb250RmFtaWx5OgogICAgICAgICAgICAgY2Fz
ZSBDU1NQcm9wZXJ0eUxpbmVIZWlnaHQ6CiAgICAgICAgICAgICBjYXNlIENTU1Byb3BlcnR5Rm9u
dFNpemU6CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1Byb3BlcnR5
UGFyc2VyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXIu
Y3BwCmluZGV4IDQ2MDYxODQ0NmY2NTE5ZGNlOTI0MTI0MzVjYjNlYmU4NjVmMmEwMWYuLjc4ZTgz
ZWU4MmE3NzczYzY2YWI5M2JmMGFhMTk5NGE0MmNkMzU5NjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXIuY3BwCkBAIC0zMDM3LDcgKzMwMzcsNyBA
QCBzdGF0aWMgUmVmUHRyPENTU1ZhbHVlPiBjb25zdW1lQm9yZGVySW1hZ2VPdXRzZXQoQ1NTUGFy
c2VyVG9rZW5SYW5nZSYgcmFuZ2UpCiAgICAgcmV0dXJuIENTU1ZhbHVlUG9vbDo6c2luZ2xldG9u
KCkuY3JlYXRlVmFsdWUoV1RGTW92ZShxdWFkKSk7CiB9CiAKLXN0YXRpYyBSZWZQdHI8Q1NTVmFs
dWU+IGNvbnN1bWVCb3JkZXJJbWFnZVdpZHRoKENTU1BhcnNlclRva2VuUmFuZ2UmIHJhbmdlKQor
c3RhdGljIFJlZlB0cjxDU1NQcmltaXRpdmVWYWx1ZT4gY29uc3VtZUJvcmRlckltYWdlV2lkdGgo
Q1NTUGFyc2VyVG9rZW5SYW5nZSYgcmFuZ2UpCiB7CiAgICAgUmVmUHRyPENTU1ByaW1pdGl2ZVZh
bHVlPiB3aWR0aHNbNF07CiAKQEAgLTMwNjcsNyArMzA2Nyw3IEBAIHN0YXRpYyBSZWZQdHI8Q1NT
VmFsdWU+IGNvbnN1bWVCb3JkZXJJbWFnZVdpZHRoKENTU1BhcnNlclRva2VuUmFuZ2UmIHJhbmdl
KQogfQogCiBzdGF0aWMgYm9vbCBjb25zdW1lQm9yZGVySW1hZ2VDb21wb25lbnRzKENTU1Byb3Bl
cnR5SUQgcHJvcGVydHksIENTU1BhcnNlclRva2VuUmFuZ2UmIHJhbmdlLCBjb25zdCBDU1NQYXJz
ZXJDb250ZXh0JiBjb250ZXh0LCBSZWZQdHI8Q1NTVmFsdWU+JiBzb3VyY2UsCi0gICAgUmVmUHRy
PENTU1ZhbHVlPiYgc2xpY2UsIFJlZlB0cjxDU1NWYWx1ZT4mIHdpZHRoLCBSZWZQdHI8Q1NTVmFs
dWU+JiBvdXRzZXQsIFJlZlB0cjxDU1NWYWx1ZT4mIHJlcGVhdCkKKyAgICBSZWZQdHI8Q1NTVmFs
dWU+JiBzbGljZSwgUmVmUHRyPENTU1ByaW1pdGl2ZVZhbHVlPiYgd2lkdGgsIFJlZlB0cjxDU1NW
YWx1ZT4mIG91dHNldCwgUmVmUHRyPENTU1ZhbHVlPiYgcmVwZWF0KQogewogICAgIGRvIHsKICAg
ICAgICAgaWYgKCFzb3VyY2UpIHsKQEAgLTMxMDgsNyArMzEwOCw3IEBAIHN0YXRpYyBSZWZQdHI8
Q1NTVmFsdWU+IGNvbnN1bWVXZWJraXRCb3JkZXJJbWFnZShDU1NQcm9wZXJ0eUlEIHByb3BlcnR5
LCBDU1NQYXJzCiB7CiAgICAgUmVmUHRyPENTU1ZhbHVlPiBzb3VyY2U7CiAgICAgUmVmUHRyPENT
U1ZhbHVlPiBzbGljZTsKLSAgICBSZWZQdHI8Q1NTVmFsdWU+IHdpZHRoOworICAgIFJlZlB0cjxD
U1NQcmltaXRpdmVWYWx1ZT4gd2lkdGg7CiAgICAgUmVmUHRyPENTU1ZhbHVlPiBvdXRzZXQ7CiAg
ICAgUmVmUHRyPENTU1ZhbHVlPiByZXBlYXQ7CiAgICAgaWYgKGNvbnN1bWVCb3JkZXJJbWFnZUNv
bXBvbmVudHMocHJvcGVydHksIHJhbmdlLCBjb250ZXh0LCBzb3VyY2UsIHNsaWNlLCB3aWR0aCwg
b3V0c2V0LCByZXBlYXQpKQpAQCAtNDYyMiw3ICs0NjIyLDYgQEAgUmVmUHRyPENTU1ZhbHVlPiBD
U1NQcm9wZXJ0eVBhcnNlcjo6cGFyc2VTaW5nbGVWYWx1ZShDU1NQcm9wZXJ0eUlEIHByb3BlcnR5
LCBDU1MKICAgICBjYXNlIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VXaWR0aDoKICAgICBjYXNlIENT
U1Byb3BlcnR5V2Via2l0TWFza0JveEltYWdlV2lkdGg6CiAgICAgICAgIHJldHVybiBjb25zdW1l
Qm9yZGVySW1hZ2VXaWR0aChtX3JhbmdlKTsKLSAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0Qm9y
ZGVySW1hZ2U6CiAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdE1hc2tCb3hJbWFnZToKICAgICAg
ICAgcmV0dXJuIGNvbnN1bWVXZWJraXRCb3JkZXJJbWFnZShwcm9wZXJ0eSwgbV9yYW5nZSwgbV9j
b250ZXh0KTsKICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0Qm94UmVmbGVjdDoKQEAgLTU1NDIs
NyArNTU0MSw3IEBAIGJvb2wgQ1NTUHJvcGVydHlQYXJzZXI6OmNvbnN1bWVCb3JkZXJJbWFnZShD
U1NQcm9wZXJ0eUlEIHByb3BlcnR5LCBib29sIGltcG9ydGFuCiB7CiAgICAgUmVmUHRyPENTU1Zh
bHVlPiBzb3VyY2U7CiAgICAgUmVmUHRyPENTU1ZhbHVlPiBzbGljZTsKLSAgICBSZWZQdHI8Q1NT
VmFsdWU+IHdpZHRoOworICAgIFJlZlB0cjxDU1NQcmltaXRpdmVWYWx1ZT4gd2lkdGg7CiAgICAg
UmVmUHRyPENTU1ZhbHVlPiBvdXRzZXQ7CiAgICAgUmVmUHRyPENTU1ZhbHVlPiByZXBlYXQ7CiAg
ICAgCkBAIC01NTUwLDE4ICs1NTQ5LDMzIEBAIGJvb2wgQ1NTUHJvcGVydHlQYXJzZXI6OmNvbnN1
bWVCb3JkZXJJbWFnZShDU1NQcm9wZXJ0eUlEIHByb3BlcnR5LCBib29sIGltcG9ydGFuCiAgICAg
ICAgIGF1dG8mIHZhbHVlUG9vbCA9IENTU1ZhbHVlUG9vbDo6c2luZ2xldG9uKCk7CiAgICAgICAg
IHN3aXRjaCAocHJvcGVydHkpIHsKICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdE1hc2tC
b3hJbWFnZToKLSAgICAgICAgICAgIGFkZFByb3BlcnR5V2l0aEltcGxpY2l0RGVmYXVsdChDU1NQ
cm9wZXJ0eVdlYmtpdE1hc2tCb3hJbWFnZVNvdXJjZSwgQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94
SW1hZ2UsIFdURk1vdmUoc291cmNlKSwgdmFsdWVQb29sLmNyZWF0ZUltcGxpY2l0SW5pdGlhbFZh
bHVlKCksIGltcG9ydGFudCk7Ci0gICAgICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNpdERl
ZmF1bHQoQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2VTbGljZSwgQ1NTUHJvcGVydHlXZWJr
aXRNYXNrQm94SW1hZ2UsIFdURk1vdmUoc2xpY2UpLCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJ
bml0aWFsVmFsdWUoKSwgaW1wb3J0YW50KTsKLSAgICAgICAgICAgIGFkZFByb3BlcnR5V2l0aElt
cGxpY2l0RGVmYXVsdChDU1NQcm9wZXJ0eVdlYmtpdE1hc2tCb3hJbWFnZVdpZHRoLCBDU1NQcm9w
ZXJ0eVdlYmtpdE1hc2tCb3hJbWFnZSwgV1RGTW92ZSh3aWR0aCksIHZhbHVlUG9vbC5jcmVhdGVJ
bXBsaWNpdEluaXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQpOwotICAgICAgICAgICAgYWRkUHJvcGVy
dHlXaXRoSW1wbGljaXREZWZhdWx0KENTU1Byb3BlcnR5V2Via2l0TWFza0JveEltYWdlT3V0c2V0
LCBDU1NQcm9wZXJ0eVdlYmtpdE1hc2tCb3hJbWFnZSwgV1RGTW92ZShvdXRzZXQpLCB2YWx1ZVBv
b2wuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFsdWUoKSwgaW1wb3J0YW50KTsKLSAgICAgICAgICAg
IGFkZFByb3BlcnR5V2l0aEltcGxpY2l0RGVmYXVsdChDU1NQcm9wZXJ0eVdlYmtpdE1hc2tCb3hJ
bWFnZVJlcGVhdCwgQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2UsIFdURk1vdmUocmVwZWF0
KSwgdmFsdWVQb29sLmNyZWF0ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCksIGltcG9ydGFudCk7Cisg
ICAgICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNpdERlZmF1bHQoQ1NTUHJvcGVydHlXZWJr
aXRNYXNrQm94SW1hZ2VTb3VyY2UsIHByb3BlcnR5LCBXVEZNb3ZlKHNvdXJjZSksIHZhbHVlUG9v
bC5jcmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQpOworICAgICAgICAgICAg
YWRkUHJvcGVydHlXaXRoSW1wbGljaXREZWZhdWx0KENTU1Byb3BlcnR5V2Via2l0TWFza0JveElt
YWdlU2xpY2UsIHByb3BlcnR5LCBXVEZNb3ZlKHNsaWNlKSwgdmFsdWVQb29sLmNyZWF0ZUltcGxp
Y2l0SW5pdGlhbFZhbHVlKCksIGltcG9ydGFudCk7CisgICAgICAgICAgICBhZGRQcm9wZXJ0eVdp
dGhJbXBsaWNpdERlZmF1bHQoQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2VXaWR0aCwgcHJv
cGVydHksIFdURk1vdmUod2lkdGgpLCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFs
dWUoKSwgaW1wb3J0YW50KTsKKyAgICAgICAgICAgIGFkZFByb3BlcnR5V2l0aEltcGxpY2l0RGVm
YXVsdChDU1NQcm9wZXJ0eVdlYmtpdE1hc2tCb3hJbWFnZU91dHNldCwgcHJvcGVydHksIFdURk1v
dmUob3V0c2V0KSwgdmFsdWVQb29sLmNyZWF0ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCksIGltcG9y
dGFudCk7CisgICAgICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNpdERlZmF1bHQoQ1NTUHJv
cGVydHlXZWJraXRNYXNrQm94SW1hZ2VSZXBlYXQsIHByb3BlcnR5LCBXVEZNb3ZlKHJlcGVhdCks
IHZhbHVlUG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQpOwogICAg
ICAgICAgICAgcmV0dXJuIHRydWU7CisgICAgICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRCb3Jk
ZXJJbWFnZToKKyAgICAgICAgICAgIC8vIFdlIGhhdmUgdG8gcHJlc2VydmUgdGhlIGxlZ2FjeSBi
ZWhhdmlvciBvZiAtd2Via2l0LWJvcmRlci1pbWFnZSBhbmQgbWFrZSB0aGUgYm9yZGVyIHNsaWNl
cworICAgICAgICAgICAgLy8gYWxzbyBzZXQgdGhlIGJvcmRlciB3aWR0aHMuIFdlIGRvbid0IG5l
ZWQgdG8gd29ycnkgYWJvdXQgcGVyY2VudGFnZXMsIHNpbmNlIHdlIGRvbid0IGV2ZW4gc3VwcG9y
dAorICAgICAgICAgICAgLy8gdGhvc2Ugb24gcmVhbCBib3JkZXJzIHlldC4KKyAgICAgICAgICAg
IGlmIChRdWFkKiBxdWFkID0gd2lkdGggPyB3aWR0aC0+cXVhZFZhbHVlKCkgOiBudWxscHRyKSB7
CisgICAgICAgICAgICAgICAgYXV0byBhZGRQcm9wZXJ0eUlmTGVuZ3RoID0gWyZdKENTU1Byb3Bl
cnR5SUQgbG9uZ2hhbmQsIFJlZlB0cjxDU1NQcmltaXRpdmVWYWx1ZT4gdmFsdWUpIHsKKyAgICAg
ICAgICAgICAgICAgICAgaWYgKHZhbHVlICYmIHZhbHVlLT5pc0xlbmd0aCgpKQorICAgICAgICAg
ICAgICAgICAgICAgICAgYWRkUHJvcGVydHkobG9uZ2hhbmQsIENTU1Byb3BlcnR5V2Via2l0Qm9y
ZGVySW1hZ2UsIHZhbHVlLnJlbGVhc2VOb25OdWxsKCksIGltcG9ydGFudCk7CisgICAgICAgICAg
ICAgICAgfTsKKyAgICAgICAgICAgICAgICBhZGRQcm9wZXJ0eUlmTGVuZ3RoKENTU1Byb3BlcnR5
Qm9yZGVyVG9wV2lkdGgsIHF1YWQtPnRvcCgpKTsKKyAgICAgICAgICAgICAgICBhZGRQcm9wZXJ0
eUlmTGVuZ3RoKENTU1Byb3BlcnR5Qm9yZGVyUmlnaHRXaWR0aCwgcXVhZC0+cmlnaHQoKSk7Cisg
ICAgICAgICAgICAgICAgYWRkUHJvcGVydHlJZkxlbmd0aChDU1NQcm9wZXJ0eUJvcmRlckJvdHRv
bVdpZHRoLCBxdWFkLT5ib3R0b20oKSk7CisgICAgICAgICAgICAgICAgYWRkUHJvcGVydHlJZkxl
bmd0aChDU1NQcm9wZXJ0eUJvcmRlckxlZnRXaWR0aCwgcXVhZC0+bGVmdCgpKTsKKyAgICAgICAg
ICAgIH0KKyAgICAgICAgICAgIEZBTExUSFJPVUdIOwogICAgICAgICBjYXNlIENTU1Byb3BlcnR5
Qm9yZGVySW1hZ2U6Ci0gICAgICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNpdERlZmF1bHQo
Q1NTUHJvcGVydHlCb3JkZXJJbWFnZVNvdXJjZSwgQ1NTUHJvcGVydHlCb3JkZXJJbWFnZSwgV1RG
TW92ZShzb3VyY2UpLCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFsdWUoKSwgaW1w
b3J0YW50KTsKLSAgICAgICAgICAgIGFkZFByb3BlcnR5V2l0aEltcGxpY2l0RGVmYXVsdChDU1NQ
cm9wZXJ0eUJvcmRlckltYWdlU2xpY2UsIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2UsIFdURk1vdmUo
c2xpY2UpLCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFsdWUoKSwgaW1wb3J0YW50
KTsKLSAgICAgICAgICAgIGFkZFByb3BlcnR5V2l0aEltcGxpY2l0RGVmYXVsdChDU1NQcm9wZXJ0
eUJvcmRlckltYWdlV2lkdGgsIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2UsIFdURk1vdmUod2lkdGgp
LCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFsdWUoKSwgaW1wb3J0YW50KTsKLSAg
ICAgICAgICAgIGFkZFByb3BlcnR5V2l0aEltcGxpY2l0RGVmYXVsdChDU1NQcm9wZXJ0eUJvcmRl
ckltYWdlT3V0c2V0LCBDU1NQcm9wZXJ0eUJvcmRlckltYWdlLCBXVEZNb3ZlKG91dHNldCksIHZh
bHVlUG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQpOwotICAgICAg
ICAgICAgYWRkUHJvcGVydHlXaXRoSW1wbGljaXREZWZhdWx0KENTU1Byb3BlcnR5Qm9yZGVySW1h
Z2VSZXBlYXQsIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2UsIFdURk1vdmUocmVwZWF0KSwgdmFsdWVQ
b29sLmNyZWF0ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCksIGltcG9ydGFudCk7CisgICAgICAgICAg
ICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNpdERlZmF1bHQoQ1NTUHJvcGVydHlCb3JkZXJJbWFnZVNv
dXJjZSwgcHJvcGVydHksIFdURk1vdmUoc291cmNlKSwgdmFsdWVQb29sLmNyZWF0ZUltcGxpY2l0
SW5pdGlhbFZhbHVlKCksIGltcG9ydGFudCk7CisgICAgICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJ
bXBsaWNpdERlZmF1bHQoQ1NTUHJvcGVydHlCb3JkZXJJbWFnZVNsaWNlLCBwcm9wZXJ0eSwgV1RG
TW92ZShzbGljZSksIHZhbHVlUG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgpLCBpbXBv
cnRhbnQpOworICAgICAgICAgICAgYWRkUHJvcGVydHlXaXRoSW1wbGljaXREZWZhdWx0KENTU1By
b3BlcnR5Qm9yZGVySW1hZ2VXaWR0aCwgcHJvcGVydHksIFdURk1vdmUod2lkdGgpLCB2YWx1ZVBv
b2wuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFsdWUoKSwgaW1wb3J0YW50KTsKKyAgICAgICAgICAg
IGFkZFByb3BlcnR5V2l0aEltcGxpY2l0RGVmYXVsdChDU1NQcm9wZXJ0eUJvcmRlckltYWdlT3V0
c2V0LCBwcm9wZXJ0eSwgV1RGTW92ZShvdXRzZXQpLCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJ
bml0aWFsVmFsdWUoKSwgaW1wb3J0YW50KTsKKyAgICAgICAgICAgIGFkZFByb3BlcnR5V2l0aElt
cGxpY2l0RGVmYXVsdChDU1NQcm9wZXJ0eUJvcmRlckltYWdlUmVwZWF0LCBwcm9wZXJ0eSwgV1RG
TW92ZShyZXBlYXQpLCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFsdWUoKSwgaW1w
b3J0YW50KTsKICAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgICBkZWZhdWx0OgogICAg
ICAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CkBAIC02NDM3LDYgKzY0NTEsNyBAQCBib29s
IENTU1Byb3BlcnR5UGFyc2VyOjpwYXJzZVNob3J0aGFuZChDU1NQcm9wZXJ0eUlEIHByb3BlcnR5
LCBib29sIGltcG9ydGFudCkKICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgfQogICAgIGNhc2Ug
Q1NTUHJvcGVydHlCb3JkZXJJbWFnZToKKyAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0Qm9yZGVy
SW1hZ2U6CiAgICAgICAgIHJldHVybiBjb25zdW1lQm9yZGVySW1hZ2UocHJvcGVydHksIGltcG9y
dGFudCk7CiAgICAgY2FzZSBDU1NQcm9wZXJ0eVBhZ2VCcmVha0FmdGVyOgogICAgIGNhc2UgQ1NT
UHJvcGVydHlQYWdlQnJlYWtCZWZvcmU6CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdHls
ZS9Qcm9wZXJ0eUNhc2NhZGUuY3BwIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvUHJvcGVydHlDYXNj
YWRlLmNwcAppbmRleCA5ZTliMjliN2M0NTQ0ODYxNTJlZWEzYWVlOGM3NmRlZDdhZDc4MTBlLi5h
YzA0NzFiNDk0ODQ3YTcxZjU2MGU0MGJiMWY0MmU2ODYxNGJiYzRkIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9zdHlsZS9Qcm9wZXJ0eUNhc2NhZGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3N0eWxlL1Byb3BlcnR5Q2FzY2FkZS5jcHAKQEAgLTQ3LDEzICs0Nyw2IEBAIHN0YXRpYyBpbmxp
bmUgYm9vbCBzaG91bGRBcHBseVByb3BlcnR5SW5QYXJzZU9yZGVyKENTU1Byb3BlcnR5SUQgcHJv
cGVydHlJRCkKICAgICBjYXNlIENTU1Byb3BlcnR5QmFja2dyb3VuZE9yaWdpbjoKICAgICBjYXNl
IENTU1Byb3BlcnR5V2Via2l0QmFja2dyb3VuZFNpemU6CiAgICAgY2FzZSBDU1NQcm9wZXJ0eUJh
Y2tncm91bmRTaXplOgotICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJJbWFnZToKLSAg
ICBjYXNlIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2U6Ci0gICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRl
ckltYWdlU2xpY2U6Ci0gICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlckltYWdlU291cmNlOgotICAg
IGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJJbWFnZU91dHNldDoKLSAgICBjYXNlIENTU1Byb3BlcnR5
Qm9yZGVySW1hZ2VSZXBlYXQ6Ci0gICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlckltYWdlV2lkdGg6
CiAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEJveFNoYWRvdzoKICAgICBjYXNlIENTU1Byb3Bl
cnR5Qm94U2hhZG93OgogICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRUZXh0RGVjb3JhdGlvbjoK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlQnVpbGRlckNvbnZlcnRlci5o
IGIvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVCdWlsZGVyQ29udmVydGVyLmgKaW5kZXggNzQ2
NGY4NGQ4YmY2YjJiMmEzMzEyM2Q1OTJiZTI5MmYxNGNjMjhkZS4uYjcxYjg5MjFkNTQ0MWIxNTJh
NzMzNjNiNjQzNWZlMjhmZTg4MWZmNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3R5bGUv
U3R5bGVCdWlsZGVyQ29udmVydGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVC
dWlsZGVyQ29udmVydGVyLmgKQEAgLTg1LDcgKzg1LDYgQEAgcHVibGljOgogICAgIHRlbXBsYXRl
PHR5cGVuYW1lIFQ+IHN0YXRpYyBUIGNvbnZlcnROdW1iZXIoQnVpbGRlclN0YXRlJiwgY29uc3Qg
Q1NTVmFsdWUmKTsKICAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBUPiBzdGF0aWMgVCBjb252ZXJ0TnVt
YmVyT3JBdXRvKEJ1aWxkZXJTdGF0ZSYsIGNvbnN0IENTU1ZhbHVlJik7CiAgICAgc3RhdGljIHNo
b3J0IGNvbnZlcnRXZWJraXRIeXBoZW5hdGVMaW1pdExpbmVzKEJ1aWxkZXJTdGF0ZSYsIGNvbnN0
IENTU1ZhbHVlJik7Ci0gICAgdGVtcGxhdGU8Q1NTUHJvcGVydHlJRD4gc3RhdGljIE5pbmVQaWVj
ZUltYWdlIGNvbnZlcnRCb3JkZXJJbWFnZShCdWlsZGVyU3RhdGUmLCBDU1NWYWx1ZSYpOwogICAg
IHRlbXBsYXRlPENTU1Byb3BlcnR5SUQ+IHN0YXRpYyBOaW5lUGllY2VJbWFnZSBjb252ZXJ0Qm9y
ZGVyTWFzayhCdWlsZGVyU3RhdGUmLCBDU1NWYWx1ZSYpOwogICAgIHRlbXBsYXRlPENTU1Byb3Bl
cnR5SUQ+IHN0YXRpYyBSZWZQdHI8U3R5bGVJbWFnZT4gY29udmVydFN0eWxlSW1hZ2UoQnVpbGRl
clN0YXRlJiwgQ1NTVmFsdWUmKTsKICAgICBzdGF0aWMgSW1hZ2VPcmllbnRhdGlvbiBjb252ZXJ0
SW1hZ2VPcmllbnRhdGlvbihCdWlsZGVyU3RhdGUmLCBjb25zdCBDU1NWYWx1ZSYpOwpAQCAtNDY0
LDE5ICs0NjMsMTEgQEAgaW5saW5lIHNob3J0IEJ1aWxkZXJDb252ZXJ0ZXI6OmNvbnZlcnRXZWJr
aXRIeXBoZW5hdGVMaW1pdExpbmVzKEJ1aWxkZXJTdGF0ZSYsIGMKICAgICByZXR1cm4gcHJpbWl0
aXZlVmFsdWUudmFsdWU8c2hvcnQ+KENTU1VuaXRUeXBlOjpDU1NfTlVNQkVSKTsKIH0KIAotdGVt
cGxhdGU8Q1NTUHJvcGVydHlJRCBwcm9wZXJ0eT4KLWlubGluZSBOaW5lUGllY2VJbWFnZSBCdWls
ZGVyQ29udmVydGVyOjpjb252ZXJ0Qm9yZGVySW1hZ2UoQnVpbGRlclN0YXRlJiBidWlsZGVyU3Rh
dGUsIENTU1ZhbHVlJiB2YWx1ZSkKLXsKLSAgICBOaW5lUGllY2VJbWFnZSBpbWFnZTsKLSAgICBi
dWlsZGVyU3RhdGUuc3R5bGVNYXAoKS5tYXBOaW5lUGllY2VJbWFnZShwcm9wZXJ0eSwgJnZhbHVl
LCBpbWFnZSk7Ci0gICAgcmV0dXJuIGltYWdlOwotfQotCiB0ZW1wbGF0ZTxDU1NQcm9wZXJ0eUlE
IHByb3BlcnR5PgogaW5saW5lIE5pbmVQaWVjZUltYWdlIEJ1aWxkZXJDb252ZXJ0ZXI6OmNvbnZl
cnRCb3JkZXJNYXNrKEJ1aWxkZXJTdGF0ZSYgYnVpbGRlclN0YXRlLCBDU1NWYWx1ZSYgdmFsdWUp
CiB7CiAgICAgTmluZVBpZWNlSW1hZ2UgaW1hZ2UoTmluZVBpZWNlSW1hZ2U6OlR5cGU6Ok1hc2sp
OwotICAgIGJ1aWxkZXJTdGF0ZS5zdHlsZU1hcCgpLm1hcE5pbmVQaWVjZUltYWdlKHByb3BlcnR5
LCAmdmFsdWUsIGltYWdlKTsKKyAgICBidWlsZGVyU3RhdGUuc3R5bGVNYXAoKS5tYXBOaW5lUGll
Y2VJbWFnZSgmdmFsdWUsIGltYWdlKTsKICAgICByZXR1cm4gaW1hZ2U7CiB9CiAKQEAgLTgwOSw3
ICs4MDAsNyBAQCBpbmxpbmUgUmVmUHRyPFN0eWxlUmVmbGVjdGlvbj4gQnVpbGRlckNvbnZlcnRl
cjo6Y29udmVydFJlZmxlY3Rpb24oQnVpbGRlclN0YXRlJgogICAgIHJlZmxlY3Rpb24tPnNldE9m
ZnNldChyZWZsZWN0VmFsdWUub2Zmc2V0KCkuY29udmVydFRvTGVuZ3RoPEZpeGVkSW50ZWdlckNv
bnZlcnNpb24gfCBQZXJjZW50Q29udmVyc2lvbiB8IENhbGN1bGF0ZWRDb252ZXJzaW9uPihidWls
ZGVyU3RhdGUuY3NzVG9MZW5ndGhDb252ZXJzaW9uRGF0YSgpKSk7CiAKICAgICBOaW5lUGllY2VJ
bWFnZSBtYXNrKE5pbmVQaWVjZUltYWdlOjpUeXBlOjpNYXNrKTsKLSAgICBidWlsZGVyU3RhdGUu
c3R5bGVNYXAoKS5tYXBOaW5lUGllY2VJbWFnZShDU1NQcm9wZXJ0eVdlYmtpdEJveFJlZmxlY3Qs
IHJlZmxlY3RWYWx1ZS5tYXNrKCksIG1hc2spOworICAgIGJ1aWxkZXJTdGF0ZS5zdHlsZU1hcCgp
Lm1hcE5pbmVQaWVjZUltYWdlKHJlZmxlY3RWYWx1ZS5tYXNrKCksIG1hc2spOwogICAgIHJlZmxl
Y3Rpb24tPnNldE1hc2sobWFzayk7CiAKICAgICByZXR1cm4gcmVmbGVjdGlvbjsKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA3
NmFiMzQ2ZDg2NTIxMTcwNDUxMDhiMTdiMDhhZjJhMjlmMDRkMWIyLi43NDYyMWU2ODI2M2YxMzgy
MjAxYjdjNTAzYjdhYTE4NDZiZDM5NmUwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjMgQEAKKzIwMjItMDMt
MDcgIE9yaW9sIEJydWZhdSAgPG9icnVmYXVAaWdhbGlhLmNvbT4KKworICAgICAgICBbY3NzXSBU
dXJuIC13ZWJraXQtYm9yZGVyLWltYWdlIGludG8gYSBzaG9ydGhhbmQKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzNzQ4NworCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVwZGF0ZSB0ZXN0cyB0byB0YWtlIGlu
dG8gYWNjb3VudCB0aGF0ICctd2Via2l0LWJvcmRlci1pbWFnZScgaXMgYSBzaG9ydGhhbmQuCisK
KyAgICAgICAgKiBmYXN0L2Nzcy9nZXRDb21wdXRlZFN0eWxlL2NvbXB1dGVkLXN0eWxlLWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiBmYXN0L2Nzcy9nZXRDb21wdXRlZFN0eWxlL2NvbXB1dGVkLXN0
eWxlLXdpdGhvdXQtcmVuZGVyZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3QvY3NzL2lt
YWdlLXNldC1wYXJzaW5nLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBmYXN0L2Nzcy9pbWFnZS1z
ZXQtcGFyc2luZy5odG1sOgorICAgICAgICAqIGZhc3QvY3NzL3VyaS10b2tlbi1wYXJzaW5nLWV4
cGVjdGVkLnR4dDoKKyAgICAgICAgKiBmYXN0L2Nzcy91cmktdG9rZW4tcGFyc2luZy5odG1sOgor
ICAgICAgICAqIHBsYXRmb3JtL2d0ay9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nz
cy9jc3NvbS9nZXRDb21wdXRlZFN0eWxlLWRldGFjaGVkLXN1YnRyZWUtZXhwZWN0ZWQudHh0Ogor
ICAgICAgICAqIHBsYXRmb3JtL2lvcy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nz
cy9jc3NvbS9nZXRDb21wdXRlZFN0eWxlLWRldGFjaGVkLXN1YnRyZWUtZXhwZWN0ZWQudHh0Ogor
ICAgICAgICAqIHBsYXRmb3JtL3dwZS9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nz
cy9jc3NvbS9nZXRDb21wdXRlZFN0eWxlLWRldGFjaGVkLXN1YnRyZWUtZXhwZWN0ZWQudHh0Ogor
ICAgICAgICAqIHN2Zy9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS1iYXNpYy1leHBlY3RlZC50eHQ6CisK
IDIwMjItMDMtMDcgIE9yaW9sIEJydWZhdSAgPG9icnVmYXVAaWdhbGlhLmNvbT4KIAogICAgICAg
ICBSZW1vdmUgZHVwbGljYXRlZCBwbGF0Zm9ybSBleHBlY3RhdGlvbnMgZm9yIGNvbXB1dGVkLXN0
eWxlLmh0bWwsIGNvbXB1dGVkLXN0eWxlLXdpdGhvdXQtcmVuZGVyZXIuaHRtbCwgZ2V0Q29tcHV0
ZWRTdHlsZS1iYXNpYy54aHRtbApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKaW5kZXggNTE2
M2NhNjQxYWU2ZThkYmQ0ZjU3NDk2NTExNWMzM2IzMzE3YzQ5NC4uZTYyNzg2YmNmZWFjOWZlMDA2
MTI5MjhiM2QxOTVjN2VhMjJiNTRlMCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTQgQEAKKzIwMjItMDMtMDcgIE9yaW9sIEJydWZhdSAgPG9icnVmYXVAaWdhbGlh
LmNvbT4KKworICAgICAgICBbY3NzXSBUdXJuIC13ZWJraXQtYm9yZGVyLWltYWdlIGludG8gYSBz
aG9ydGhhbmQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTIzNzQ4NworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IFVwZGF0ZSB0ZXN0cyB0byB0YWtlIGludG8gYWNjb3VudCB0aGF0ICctd2Via2l0LWJvcmRlci1p
bWFnZScgaXMgYSBzaG9ydGhhbmQuCisKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3Nz
L2Nzc29tL2dldENvbXB1dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS1leHBlY3RlZC50eHQ6CisK
IDIwMjItMDMtMDcgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBN
YWtlICJ0cnVlIiBjb3VudCBhcyB0cnV0aHkgaW4gd2luZG93Lm9wZW4oKSdzIGJvb2xlYW4gZmVh
dHVyZXMKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL2dldENvbXB1dGVkU3R5bGUv
Y29tcHV0ZWQtc3R5bGUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvZ2V0Q29t
cHV0ZWRTdHlsZS9jb21wdXRlZC1zdHlsZS1leHBlY3RlZC50eHQKaW5kZXggMmMxZWU5ODI3M2Vh
NGI1ZTNkM2RkZDVjMTdiOGM5ZGM1OTZmZTYyNy4uNjNjNGFlZTM0Mzk4YjA1ZjZjYzRiMDk0NmIw
MWY5NzMzOTY2ZTYyMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvZ2V0Q29tcHV0
ZWRTdHlsZS9jb21wdXRlZC1zdHlsZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvZmFz
dC9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS9jb21wdXRlZC1zdHlsZS1leHBlY3RlZC50eHQKQEAgLTIw
Nyw3ICsyMDcsNiBAQCB6b29tOiAxOwogLXdlYmtpdC1iYWNrZ3JvdW5kLW9yaWdpbjogcGFkZGlu
Zy1ib3g7CiAtd2Via2l0LWJhY2tncm91bmQtc2l6ZTogYXV0bzsKIC13ZWJraXQtYm9yZGVyLWhv
cml6b250YWwtc3BhY2luZzogMHB4OwotLXdlYmtpdC1ib3JkZXItaW1hZ2U6IG5vbmU7CiAtd2Vi
a2l0LWJvcmRlci12ZXJ0aWNhbC1zcGFjaW5nOiAwcHg7CiAtd2Via2l0LWJveC1hbGlnbjogc3Ry
ZXRjaDsKIC13ZWJraXQtYm94LWRlY29yYXRpb24tYnJlYWs6IHNsaWNlOwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZmFzdC9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS9jb21wdXRlZC1zdHlsZS13aXRo
b3V0LXJlbmRlcmVyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL2dldENvbXB1
dGVkU3R5bGUvY29tcHV0ZWQtc3R5bGUtd2l0aG91dC1yZW5kZXJlci1leHBlY3RlZC50eHQKaW5k
ZXggZTJkMjNiYzBhYzljNzUxYjdlNDA0YzU1Y2ZiZDAzN2MyZjY4MmNhYS4uNjhmNDMwZDhlOWFh
YjY0ZDBhZDQyNDU0ZjQxMWZjOTA4MDlkZTVhMCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFz
dC9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS9jb21wdXRlZC1zdHlsZS13aXRob3V0LXJlbmRlcmVyLWV4
cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9nZXRDb21wdXRlZFN0eWxlL2Nv
bXB1dGVkLXN0eWxlLXdpdGhvdXQtcmVuZGVyZXItZXhwZWN0ZWQudHh0CkBAIC0yMDYsNyArMjA2
LDYgQEAgem9vbTogMQogLXdlYmtpdC1iYWNrZ3JvdW5kLW9yaWdpbjogcGFkZGluZy1ib3gKIC13
ZWJraXQtYmFja2dyb3VuZC1zaXplOiBhdXRvCiAtd2Via2l0LWJvcmRlci1ob3Jpem9udGFsLXNw
YWNpbmc6IDBweAotLXdlYmtpdC1ib3JkZXItaW1hZ2U6IG5vbmUKIC13ZWJraXQtYm9yZGVyLXZl
cnRpY2FsLXNwYWNpbmc6IDBweAogLXdlYmtpdC1ib3gtYWxpZ246IHN0cmV0Y2gKIC13ZWJraXQt
Ym94LWRlY29yYXRpb24tYnJlYWs6IHNsaWNlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0
L2Nzcy9pbWFnZS1zZXQtcGFyc2luZy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2Nz
cy9pbWFnZS1zZXQtcGFyc2luZy1leHBlY3RlZC50eHQKaW5kZXggMzBhYTYxOTU5Yzg1YWU4MjNk
Y2QxZjVlODgzYTQ4NjY5ZDk0ODBmZC4uZDlhZDEwZmM0NWQzN2UzZGViZGZiZjk0NDBhNzA1ZDhj
OTNjMTI0MSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvaW1hZ2Utc2V0LXBhcnNp
bmctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL2ltYWdlLXNldC1wYXJz
aW5nLWV4cGVjdGVkLnR4dApAQCAtODAsNyArODAsNyBAQCBQQVNTIHN1YlJ1bGUuY3NzVGV4dCBp
cyAnMXgnCiBQQVNTIHN1YlJ1bGUgaXMgJ2InCiBQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMngn
CiAKLVNpbmdsZSB2YWx1ZSBmb3IgYm9yZGVyLWltYWdlIDogdXJsKCcjYScpIDF4CitTaW5nbGUg
dmFsdWUgZm9yIGJvcmRlci1pbWFnZS1zb3VyY2UgOiB1cmwoJyNhJykgMXgKIFBBU1MganNXcmFw
cGVyQ2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwogUEFTUyBqc1dyYXBwZXJD
bGFzcyhpbWFnZVNldFJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0JwogUEFTUyBqc1dy
YXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuY29uc3RydWN0b3IpIGlzICdGdW5jdGlvbicKQEAgLTg4
LDcgKzg4LDcgQEAgUEFTUyBpbWFnZVNldFJ1bGUubGVuZ3RoIGlzIDIKIFBBU1Mgc3ViUnVsZSBp
cyAnYScKIFBBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcxeCcKIAotTXVsdGlwbGUgdmFsdWVzIGZv
ciBib3JkZXItaW1hZ2UgOiB1cmwoJyNhJykgMXgsIHVybCgnI2InKSAyeAorTXVsdGlwbGUgdmFs
dWVzIGZvciBib3JkZXItaW1hZ2Utc291cmNlIDogdXJsKCcjYScpIDF4LCB1cmwoJyNiJykgMngK
IFBBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwogUEFT
UyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0
JwogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuY29uc3RydWN0b3IpIGlzICdGdW5j
dGlvbicKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL2ltYWdlLXNldC1wYXJzaW5n
Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9pbWFnZS1zZXQtcGFyc2luZy5odG1sCmluZGV4
IGM3YjhmMjg5NTAzYzdhMjYyMmRmNGNhMzk5ZTQzNTE2OWY1ODBkNTQuLjhiODE3NWNmNDkyZjA2
NjA5ZjM4NDRiNDY4NTdkNTNkMzZjMmI2MzEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3Qv
Y3NzL2ltYWdlLXNldC1wYXJzaW5nLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvaW1h
Z2Utc2V0LXBhcnNpbmcuaHRtbApAQCAtMTA3LDEzICsxMDcsMTMgQEAgdGVzdEltYWdlU2V0UnVs
ZSgiTXVsdGlwbGUgdmFsdWVzIGZvciBjb250ZW50IiwKICAgICAgICAgICAgICAgICAidXJsKCcj
YScpIDF4LCB1cmwoJyNiJykgMngiLCA0LAogICAgICAgICAgICAgICAgIFsiYSIsICIxeCIsICJi
IiwgIjJ4Il0pOwogCi10ZXN0SW1hZ2VTZXRSdWxlKCJTaW5nbGUgdmFsdWUgZm9yIGJvcmRlci1p
bWFnZSIsCi0gICAgICAgICAgICAgICAgIi13ZWJraXQtYm9yZGVyLWltYWdlIiwKK3Rlc3RJbWFn
ZVNldFJ1bGUoIlNpbmdsZSB2YWx1ZSBmb3IgYm9yZGVyLWltYWdlLXNvdXJjZSIsCisgICAgICAg
ICAgICAgICAgImJvcmRlci1pbWFnZS1zb3VyY2UiLAogICAgICAgICAgICAgICAgICJ1cmwoJyNh
JykgMXgiLCAyLAogICAgICAgICAgICAgICAgIFsiYSIsICIxeCJdKTsKIAotdGVzdEltYWdlU2V0
UnVsZSgiTXVsdGlwbGUgdmFsdWVzIGZvciBib3JkZXItaW1hZ2UiLAotICAgICAgICAgICAgICAg
ICItd2Via2l0LWJvcmRlci1pbWFnZSIsCit0ZXN0SW1hZ2VTZXRSdWxlKCJNdWx0aXBsZSB2YWx1
ZXMgZm9yIGJvcmRlci1pbWFnZS1zb3VyY2UiLAorICAgICAgICAgICAgICAgICJib3JkZXItaW1h
Z2Utc291cmNlIiwKICAgICAgICAgICAgICAgICAidXJsKCcjYScpIDF4LCB1cmwoJyNiJykgMngi
LCA0LAogICAgICAgICAgICAgICAgIFsiYSIsICIxeCIsICJiIiwgIjJ4Il0pOwogCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy91cmktdG9rZW4tcGFyc2luZy1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy91cmktdG9rZW4tcGFyc2luZy1leHBlY3RlZC50eHQKaW5k
ZXggN2U2ZDYxZGJiZTYxOTdmMGJiNThhY2U2NTdkNGY0NjkwMWY1Mzg0ZS4uODc1YThhOTZlMGU1
MzYzMjg0MTRjYjdlMGY0NTE0MDM1OTM2MmM0MCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFz
dC9jc3MvdXJpLXRva2VuLXBhcnNpbmctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zh
c3QvY3NzL3VyaS10b2tlbi1wYXJzaW5nLWV4cGVjdGVkLnR4dApAQCAtMjIsNyArMjIsNyBAQCBS
dWxlcyBmcm9tIHRoZSBzdHlsZXNoZWV0OgogI3IgeyBsaXN0LXN0eWxlLWltYWdlOiB1cmwoInVy
bChyKSIpOyB9CiAjcyB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCgidXJsKHMpIik7IH0KICN0IHsg
bWFzay1pbWFnZTogdXJsKCJ1cmwodCkiKTsgfQotI3UgeyAtd2Via2l0LWJvcmRlci1pbWFnZTog
dXJsKCJ1cmwodSkiKSAxIDIgMyA0IGZpbGwgc3RyZXRjaCByb3VuZDsgfQorI3UgeyBib3JkZXIt
aW1hZ2U6IHVybCgidXJsKHUpIikgMSAyIDMgNCBmaWxsIHN0cmV0Y2ggcm91bmQ7IH0KICN2IHsg
LXdlYmtpdC1tYXNrLWJveC1pbWFnZTogdXJsKCJ1cmwodikiKSAxIDIgMyA0IGZpbGwgc3RyZXRj
aCByb3VuZDsgfQogI3cgeyBjb250ZW50OiB1cmwoIndcZCB3Iik7IH0KICN4IHsgY29udGVudDog
dXJsKCIgeCB4XDkgeCAiKTsgfQpAQCAtNDcsNyArNDcsNyBAQCBFeHBlY3RlZCByZXN1bHQ6CiAj
ciB7IGxpc3Qtc3R5bGUtaW1hZ2U6IHVybCgidXJsKHIpIik7IH0KICNzIHsgYmFja2dyb3VuZC1p
bWFnZTogdXJsKCJ1cmwocykiKTsgfQogI3QgeyBtYXNrLWltYWdlOiB1cmwoInVybCh0KSIpOyB9
Ci0jdSB7IC13ZWJraXQtYm9yZGVyLWltYWdlOiB1cmwoInVybCh1KSIpIDEgMiAzIDQgZmlsbCBz
dHJldGNoIHJvdW5kOyB9CisjdSB7IGJvcmRlci1pbWFnZTogdXJsKCJ1cmwodSkiKSAxIDIgMyA0
IGZpbGwgc3RyZXRjaCByb3VuZDsgfQogI3YgeyAtd2Via2l0LW1hc2stYm94LWltYWdlOiB1cmwo
InVybCh2KSIpIDEgMiAzIDQgZmlsbCBzdHJldGNoIHJvdW5kOyB9CiAjdyB7IGNvbnRlbnQ6IHVy
bCgid1xkIHciKTsgfQogI3ggeyBjb250ZW50OiB1cmwoIiB4IHhcOSB4ICIpOyB9CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy91cmktdG9rZW4tcGFyc2luZy5odG1sIGIvTGF5b3V0
VGVzdHMvZmFzdC9jc3MvdXJpLXRva2VuLXBhcnNpbmcuaHRtbAppbmRleCBlMTQ5NmIxYTRmYjQ2
ODE3MTY4MzJkY2U2MTdkYzQ1NWE2ZDMxODkwLi5kYTdiNzA3NGNkZTdlNzc3MDQ1OGJiMDkzZTYz
YjEyNDM0NDZhMTU4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy91cmktdG9rZW4t
cGFyc2luZy5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3VyaS10b2tlbi1wYXJzaW5n
Lmh0bWwKQEAgLTkwLDcgKzkwLDcgQEAgZnVuY3Rpb24gcnVuVGVzdCgpCiAjciB7IGxpc3Qtc3R5
bGUtaW1hZ2U6IHVybCgidXJsKHIpIik7IH0KICNzIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCJ1
cmwocykiKTsgfQogI3QgeyBtYXNrLWltYWdlOiB1cmwoInVybCh0KSIpOyB9Ci0jdSB7IC13ZWJr
aXQtYm9yZGVyLWltYWdlOiB1cmwoInVybCh1KSIpIDEgMiAzIDQgZmlsbCBzdHJldGNoIHJvdW5k
OyB9CisjdSB7IGJvcmRlci1pbWFnZTogdXJsKCJ1cmwodSkiKSAxIDIgMyA0IGZpbGwgc3RyZXRj
aCByb3VuZDsgfQogI3YgeyAtd2Via2l0LW1hc2stYm94LWltYWdlOiB1cmwoInVybCh2KSIpIDEg
MiAzIDQgZmlsbCBzdHJldGNoIHJvdW5kOyB9CiAjdyB7IGNvbnRlbnQ6IHVybCgid1xkIHciKTsg
fQogI3ggeyBjb250ZW50OiB1cmwoIiB4IHhcOSB4ICIpOyB9CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS9nZXRDb21wdXRl
ZFN0eWxlLWRldGFjaGVkLXN1YnRyZWUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nzb20vZ2V0Q29tcHV0ZWRTdHlsZS1kZXRh
Y2hlZC1zdWJ0cmVlLWV4cGVjdGVkLnR4dAppbmRleCA5YzZjMmQ2OTQ5NmE5N2Y1ZGVhZDcwYTJj
MGFhNzBiMjY4ZGU4M2VmLi5hZmUzZGRjMjIwMDBhMGU3NzQzOGFmYjJjZmZkMzlmYTc0ZmQ0ZGY4
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2Nzcy9jc3NvbS9nZXRDb21wdXRlZFN0eWxlLWRldGFjaGVkLXN1YnRyZWUtZXhwZWN0ZWQudHh0
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nz
c29tL2dldENvbXB1dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS1leHBlY3RlZC50eHQKQEAgLTEs
OCArMSw4IEBACiAKIFBBU1MgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBk
ZXRhY2hlZCBlbGVtZW50Ci1GQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBm
b3IgZWxlbWVudCBpbiBub24tcmVuZGVyZWQgaWZyYW1lIChkaXNwbGF5OiBub25lKSBhc3NlcnRf
ZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk3Ci1GQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0
dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBpbiBub24tcmVuZGVyZWQgaWZyYW1lIChkaXNwbGF5
OiBub25lKSBmcm9tIGlmcmFtZSdzIHdpbmRvdyBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1
dCBnb3QgMzk3Ci1GQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxl
bWVudCBvdXRzaWRlIHRoZSBmbGF0IHRyZWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQg
Z290IDM5NwotRkFJTCBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIGRlc2Nl
bmRhbnQgb3V0c2lkZSB0aGUgZmxhdCB0cmVlIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0
IGdvdCAzOTcKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVt
ZW50IGluIG5vbi1yZW5kZXJlZCBpZnJhbWUgKGRpc3BsYXk6IG5vbmUpIGFzc2VydF9lcXVhbHM6
IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTYKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5v
IHN0eWxlIGZvciBlbGVtZW50IGluIG5vbi1yZW5kZXJlZCBpZnJhbWUgKGRpc3BsYXk6IG5vbmUp
IGZyb20gaWZyYW1lJ3Mgd2luZG93IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAz
OTYKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50IG91
dHNpZGUgdGhlIGZsYXQgdHJlZSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk2
CitGQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZGVzY2VuZGFudCBv
dXRzaWRlIHRoZSBmbGF0IHRyZWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDM5
NgogUEFTUyBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIHNoYWRvdyB0cmVl
IG91dHNpZGUgb2YgZmxhdHRlbmVkIHRyZWUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vZ3RrL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dldENv
bXB1dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS9ndGsvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nzb20vZ2V0
Q29tcHV0ZWRTdHlsZS1kZXRhY2hlZC1zdWJ0cmVlLWV4cGVjdGVkLnR4dAppbmRleCBhNWVlYTZj
ODY4YjE0YjExNGM5YzI1YzNkMzUzMWJmZjljOGE1MTllLi42ODM3ZWEyNmZmZGQ4NzRhOWVjZTIy
NDU5OWRjOWQ1OGUwODZkYmM0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nzb20vZ2V0Q29tcHV0ZWRTdHls
ZS1kZXRhY2hlZC1zdWJ0cmVlLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS9ndGsvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nzb20vZ2V0Q29tcHV0
ZWRTdHlsZS1kZXRhY2hlZC1zdWJ0cmVlLWV4cGVjdGVkLnR4dApAQCAtMSw4ICsxLDggQEAKIAog
UEFTUyBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIGRldGFjaGVkIGVsZW1l
bnQKLUZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50IGlu
IG5vbi1yZW5kZXJlZCBpZnJhbWUgKGRpc3BsYXk6IG5vbmUpIGFzc2VydF9lcXVhbHM6IGV4cGVj
dGVkIDAgYnV0IGdvdCAzOTUKLUZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxl
IGZvciBlbGVtZW50IGluIG5vbi1yZW5kZXJlZCBpZnJhbWUgKGRpc3BsYXk6IG5vbmUpIGZyb20g
aWZyYW1lJ3Mgd2luZG93IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTUKLUZB
SUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50IG91dHNpZGUg
dGhlIGZsYXQgdHJlZSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk1Ci1GQUlM
IGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZGVzY2VuZGFudCBvdXRzaWRl
IHRoZSBmbGF0IHRyZWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDM5NQorRkFJ
TCBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIGVsZW1lbnQgaW4gbm9uLXJl
bmRlcmVkIGlmcmFtZSAoZGlzcGxheTogbm9uZSkgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBi
dXQgZ290IDM5NAorRkFJTCBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIGVs
ZW1lbnQgaW4gbm9uLXJlbmRlcmVkIGlmcmFtZSAoZGlzcGxheTogbm9uZSkgZnJvbSBpZnJhbWUn
cyB3aW5kb3cgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDM5NAorRkFJTCBnZXRD
b21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIGVsZW1lbnQgb3V0c2lkZSB0aGUgZmxh
dCB0cmVlIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTQKK0ZBSUwgZ2V0Q29t
cHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBkZXNjZW5kYW50IG91dHNpZGUgdGhlIGZs
YXQgdHJlZSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk0CiBQQVNTIGdldENv
bXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3Igc2hhZG93IHRyZWUgb3V0c2lkZSBvZiBm
bGF0dGVuZWQgdHJlZQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nzb20vZ2V0Q29tcHV0ZWRTdHlsZS1k
ZXRhY2hlZC1zdWJ0cmVlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS9nZXRDb21wdXRlZFN0eWxl
LWRldGFjaGVkLXN1YnRyZWUtZXhwZWN0ZWQudHh0CmluZGV4IDkwM2JmYzZhN2U5YjI4MjcyNDhh
YjA3M2I1MTA2NzdlNDE0OWRmMzIuLmEyYjg0OWVkYzQ0YjVkNDliMTMwNzUzYjkxZmI3MzA1NGMz
MjY0YmYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS9nZXRDb21wdXRlZFN0eWxlLWRldGFjaGVkLXN1
YnRyZWUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS9nZXRDb21wdXRlZFN0eWxlLWRldGFj
aGVkLXN1YnRyZWUtZXhwZWN0ZWQudHh0CkBAIC0xLDggKzEsOCBAQAogCiBQQVNTIGdldENvbXB1
dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZGV0YWNoZWQgZWxlbWVudAotRkFJTCBnZXRD
b21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIGVsZW1lbnQgaW4gbm9uLXJlbmRlcmVk
IGlmcmFtZSAoZGlzcGxheTogbm9uZSkgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290
IDM5OQotRkFJTCBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIGVsZW1lbnQg
aW4gbm9uLXJlbmRlcmVkIGlmcmFtZSAoZGlzcGxheTogbm9uZSkgZnJvbSBpZnJhbWUncyB3aW5k
b3cgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDM5OQotRkFJTCBnZXRDb21wdXRl
ZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIGVsZW1lbnQgb3V0c2lkZSB0aGUgZmxhdCB0cmVl
IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTkKLUZBSUwgZ2V0Q29tcHV0ZWRT
dHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBkZXNjZW5kYW50IG91dHNpZGUgdGhlIGZsYXQgdHJl
ZSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk5CitGQUlMIGdldENvbXB1dGVk
U3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBpbiBub24tcmVuZGVyZWQgaWZyYW1l
IChkaXNwbGF5OiBub25lKSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk4CitG
QUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBpbiBub24t
cmVuZGVyZWQgaWZyYW1lIChkaXNwbGF5OiBub25lKSBmcm9tIGlmcmFtZSdzIHdpbmRvdyBhc3Nl
cnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk4CitGQUlMIGdldENvbXB1dGVkU3R5bGUg
cmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBvdXRzaWRlIHRoZSBmbGF0IHRyZWUgYXNzZXJ0
X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDM5OAorRkFJTCBnZXRDb21wdXRlZFN0eWxlIHJl
dHVybnMgbm8gc3R5bGUgZm9yIGRlc2NlbmRhbnQgb3V0c2lkZSB0aGUgZmxhdCB0cmVlIGFzc2Vy
dF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTgKIFBBU1MgZ2V0Q29tcHV0ZWRTdHlsZSBy
ZXR1cm5zIG5vIHN0eWxlIGZvciBzaGFkb3cgdHJlZSBvdXRzaWRlIG9mIGZsYXR0ZW5lZCB0cmVl
CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3dwZS9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS9nZXRDb21wdXRlZFN0eWxlLWRldGFjaGVkLXN1YnRy
ZWUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd3BlL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dldENvbXB1dGVkU3R5bGUtZGV0YWNoZWQtc3Vi
dHJlZS1leHBlY3RlZC50eHQKaW5kZXggNjgzN2VhMjZmZmRkODc0YTllY2UyMjQ1OTlkYzlkNThl
MDg2ZGJjNC4uODg3Y2E2YzkxOWRlM2EwYWUwMGE3ZDc1YzY3NzgzZWFlMWI1YWQ0MCAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd3BlL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL2Nzc29tL2dldENvbXB1dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS1leHBlY3Rl
ZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd3BlL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dldENvbXB1dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS1l
eHBlY3RlZC50eHQKQEAgLTEsOCArMSw4IEBACiAKIFBBU1MgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1
cm5zIG5vIHN0eWxlIGZvciBkZXRhY2hlZCBlbGVtZW50Ci1GQUlMIGdldENvbXB1dGVkU3R5bGUg
cmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBpbiBub24tcmVuZGVyZWQgaWZyYW1lIChkaXNw
bGF5OiBub25lKSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk0Ci1GQUlMIGdl
dENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBpbiBub24tcmVuZGVy
ZWQgaWZyYW1lIChkaXNwbGF5OiBub25lKSBmcm9tIGlmcmFtZSdzIHdpbmRvdyBhc3NlcnRfZXF1
YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk0Ci1GQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJu
cyBubyBzdHlsZSBmb3IgZWxlbWVudCBvdXRzaWRlIHRoZSBmbGF0IHRyZWUgYXNzZXJ0X2VxdWFs
czogZXhwZWN0ZWQgMCBidXQgZ290IDM5NAotRkFJTCBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMg
bm8gc3R5bGUgZm9yIGRlc2NlbmRhbnQgb3V0c2lkZSB0aGUgZmxhdCB0cmVlIGFzc2VydF9lcXVh
bHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTQKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5z
IG5vIHN0eWxlIGZvciBlbGVtZW50IGluIG5vbi1yZW5kZXJlZCBpZnJhbWUgKGRpc3BsYXk6IG5v
bmUpIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTMKK0ZBSUwgZ2V0Q29tcHV0
ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50IGluIG5vbi1yZW5kZXJlZCBpZnJh
bWUgKGRpc3BsYXk6IG5vbmUpIGZyb20gaWZyYW1lJ3Mgd2luZG93IGFzc2VydF9lcXVhbHM6IGV4
cGVjdGVkIDAgYnV0IGdvdCAzOTMKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0
eWxlIGZvciBlbGVtZW50IG91dHNpZGUgdGhlIGZsYXQgdHJlZSBhc3NlcnRfZXF1YWxzOiBleHBl
Y3RlZCAwIGJ1dCBnb3QgMzkzCitGQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHls
ZSBmb3IgZGVzY2VuZGFudCBvdXRzaWRlIHRoZSBmbGF0IHRyZWUgYXNzZXJ0X2VxdWFsczogZXhw
ZWN0ZWQgMCBidXQgZ290IDM5MwogUEFTUyBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5
bGUgZm9yIHNoYWRvdyB0cmVlIG91dHNpZGUgb2YgZmxhdHRlbmVkIHRyZWUKIApkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvc3ZnL2Nzcy9nZXRDb21wdXRlZFN0eWxlLWJhc2ljLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL3N2Zy9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS1iYXNpYy1leHBlY3RlZC50
eHQKaW5kZXggMTYyZDc1ZjUyMzBmODRjYzI1YTc0OTk1MWQxYmU5NjNjYmMwZTAxNC4uNWZhYzdk
NTExZDgwNjIwNzg3ODdkOWE2ZjE5Y2FlMmU4MDVjNGUwMCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvc3ZnL2Nzcy9nZXRDb21wdXRlZFN0eWxlLWJhc2ljLWV4cGVjdGVkLnR4dAorKysgYi9MYXlv
dXRUZXN0cy9zdmcvY3NzL2dldENvbXB1dGVkU3R5bGUtYmFzaWMtZXhwZWN0ZWQudHh0CkBAIC00
MTIsOCArNDEyLDYgQEAgcmVjdDogc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgtd2Via2l0LWJhY2tn
cm91bmQtc2l6ZSkgOiBhdXRvCiByZWN0OiBzdHlsZS5nZXRQcm9wZXJ0eUNTU1ZhbHVlKC13ZWJr
aXQtYmFja2dyb3VuZC1zaXplKSA6IFtvYmplY3QgQ1NTUHJpbWl0aXZlVmFsdWVdCiByZWN0OiBz
dHlsZS5nZXRQcm9wZXJ0eVZhbHVlKC13ZWJraXQtYm9yZGVyLWhvcml6b250YWwtc3BhY2luZykg
OiAwcHgKIHJlY3Q6IHN0eWxlLmdldFByb3BlcnR5Q1NTVmFsdWUoLXdlYmtpdC1ib3JkZXItaG9y
aXpvbnRhbC1zcGFjaW5nKSA6IFtvYmplY3QgQ1NTUHJpbWl0aXZlVmFsdWVdCi1yZWN0OiBzdHls
ZS5nZXRQcm9wZXJ0eVZhbHVlKC13ZWJraXQtYm9yZGVyLWltYWdlKSA6IG5vbmUKLXJlY3Q6IHN0
eWxlLmdldFByb3BlcnR5Q1NTVmFsdWUoLXdlYmtpdC1ib3JkZXItaW1hZ2UpIDogW29iamVjdCBD
U1NQcmltaXRpdmVWYWx1ZV0KIHJlY3Q6IHN0eWxlLmdldFByb3BlcnR5VmFsdWUoLXdlYmtpdC1i
b3JkZXItdmVydGljYWwtc3BhY2luZykgOiAwcHgKIHJlY3Q6IHN0eWxlLmdldFByb3BlcnR5Q1NT
VmFsdWUoLXdlYmtpdC1ib3JkZXItdmVydGljYWwtc3BhY2luZykgOiBbb2JqZWN0IENTU1ByaW1p
dGl2ZVZhbHVlXQogcmVjdDogc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgtd2Via2l0LWJveC1hbGln
bikgOiBzdHJldGNoCkBAIC05MjIsOCArOTIwLDYgQEAgZzogc3R5bGUuZ2V0UHJvcGVydHlWYWx1
ZSgtd2Via2l0LWJhY2tncm91bmQtc2l6ZSkgOiBhdXRvCiBnOiBzdHlsZS5nZXRQcm9wZXJ0eUNT
U1ZhbHVlKC13ZWJraXQtYmFja2dyb3VuZC1zaXplKSA6IFtvYmplY3QgQ1NTUHJpbWl0aXZlVmFs
dWVdCiBnOiBzdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKC13ZWJraXQtYm9yZGVyLWhvcml6b250YWwt
c3BhY2luZykgOiAwcHgKIGc6IHN0eWxlLmdldFByb3BlcnR5Q1NTVmFsdWUoLXdlYmtpdC1ib3Jk
ZXItaG9yaXpvbnRhbC1zcGFjaW5nKSA6IFtvYmplY3QgQ1NTUHJpbWl0aXZlVmFsdWVdCi1nOiBz
dHlsZS5nZXRQcm9wZXJ0eVZhbHVlKC13ZWJraXQtYm9yZGVyLWltYWdlKSA6IG5vbmUKLWc6IHN0
eWxlLmdldFByb3BlcnR5Q1NTVmFsdWUoLXdlYmtpdC1ib3JkZXItaW1hZ2UpIDogW29iamVjdCBD
U1NQcmltaXRpdmVWYWx1ZV0KIGc6IHN0eWxlLmdldFByb3BlcnR5VmFsdWUoLXdlYmtpdC1ib3Jk
ZXItdmVydGljYWwtc3BhY2luZykgOiAwcHgKIGc6IHN0eWxlLmdldFByb3BlcnR5Q1NTVmFsdWUo
LXdlYmtpdC1ib3JkZXItdmVydGljYWwtc3BhY2luZykgOiBbb2JqZWN0IENTU1ByaW1pdGl2ZVZh
bHVlXQogZzogc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgtd2Via2l0LWJveC1hbGlnbikgOiBzdHJl
dGNoCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>454667</attachid>
            <date>2022-03-14 23:15:21 -0700</date>
            <delta_ts>2022-03-15 00:09:24 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-237487-20220315071519.patch</filename>
            <type>text/plain</type>
            <size>61457</size>
            <attacher name="Oriol Brufau">obrufau</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkxMjU0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOTYxYzkxNGQ3NWIzNDQ1
M2VkMjI3NWQ3MjU2NTY0YTEwYWE0MTEyNS4uMDY4YzZhNGM2MTM5ZmRiZDYyNTUxYjk4MGIyZWY4
MDUyYWRkZDEzMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDU2IEBACisyMDIyLTAzLTE0ICBPcmlv
bCBCcnVmYXUgIDxvYnJ1ZmF1QGlnYWxpYS5jb20+CisKKyAgICAgICAgW2Nzc10gVHVybiAtd2Vi
a2l0LWJvcmRlci1pbWFnZSBpbnRvIGEgc2hvcnRoYW5kCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzc0ODcKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGUgJy13ZWJraXQtYm9yZGVyLWltYWdlJyBwcm9w
ZXJ0eSB3YXMgY29uc2lkZXJlZCB0byBiZSBhIGxvbmdoYW5kLAorICAgICAgICBzaGFyaW5nIGNv
bXB1dGVkIHZhbHVlcyB3aXRoIHRoZSB2YXJpb3VzICdib3JkZXItaW1hZ2UtKicuCisKKyAgICAg
ICAgVGhpcyBwYXRjaCB0dXJucyBpdCBpbnRvIGEgbG9uZ2hhbmQgb2YgJ2JvcmRlci1pbWFnZS0q
JywgYW5kIGFsc28gb2YKKyAgICAgICAgJ2JvcmRlci0qLXdpZHRoJy4gVGhlIGxhdHRlciBpcyBi
ZWNhdXNlIEknbSBwcmVzZXJ2aW5nIHRoZSBsZWdhY3kKKyAgICAgICAgYmVoYXZpb3Igb2YgbWFr
aW5nIHRoZSBib3JkZXIgaW1hZ2Ugd2lkdGhzIGFsc28gc2V0IHRoZSBib3JkZXIgd2lkdGhzCisg
ICAgICAgIGlmIHRoZXkgYXJlIGEgbGVuZ3RoLgorCisgICAgICAgIFRlc3RzOiBmYXN0L2Nzcy9i
b3JkZXItaW1hZ2Utc3R5bGUtbGVuZ3RoLmh0bWwKKyAgICAgICAgICAgICAgIGZhc3QvY3NzL2dl
dENvbXB1dGVkU3R5bGUvY29tcHV0ZWQtc3R5bGUuaHRtbAorICAgICAgICAgICAgICAgZmFzdC9j
c3MvZ2V0Q29tcHV0ZWRTdHlsZS9jb21wdXRlZC1zdHlsZS13aXRob3V0LXJlbmRlcmVyLmh0bWwK
KyAgICAgICAgICAgICAgIGZhc3QvY3NzL2ltYWdlLXNldC1wYXJzaW5nLmh0bWwKKyAgICAgICAg
ICAgICAgIGZhc3QvY3NzL3BhcnNlLWJvcmRlci1pbWFnZS1yZXBlYXQtbnVsbC1jcmFzaC5odG1s
CisgICAgICAgICAgICAgICBmYXN0L2Nzcy91cmktdG9rZW4tcGFyc2luZy5odG1sCisgICAgICAg
ICAgICAgICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtYmFja2dyb3Vu
ZHMvcGFyc2luZy9ib3JkZXItaW1hZ2UtdmFsaWQuaHRtbAorICAgICAgICAgICAgICAgaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNhc2NhZGUvYWxsLXByb3AtaW5pdGlh
bC14bWwuaHRtbAorICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9jc3MvY3Nzb20vZ2V0Q29tcHV0ZWRTdHlsZS1kZXRhY2hlZC1zdWJ0cmVlLmh0bWwKKyAgICAg
ICAgICAgICAgIHN2Zy9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS1iYXNpYy54aHRtbAorCisgICAgICAg
ICogY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHA6CisgICAgICAgIChXZWJDb3Jl
Ojp2YWx1ZUZvck5pbmVQaWVjZUltYWdlKToKKyAgICAgICAgKFdlYkNvcmU6OnZhbHVlRm9yUmVm
bGVjdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpDb21wdXRlZFN0eWxlRXh0cmFjdG9yOjp2YWx1
ZUZvclByb3BlcnR5SW5TdHlsZSk6CisgICAgICAgICogY3NzL0NTU1Byb3BlcnRpZXMuanNvbjoK
KyAgICAgICAgKiBjc3MvQ1NTVG9TdHlsZU1hcC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NU
b1N0eWxlTWFwOjptYXBOaW5lUGllY2VJbWFnZSk6CisgICAgICAgICogY3NzL0NTU1RvU3R5bGVN
YXAuaDoKKyAgICAgICAgKiBjc3MvU3R5bGVQcm9wZXJ0aWVzLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OlN0eWxlUHJvcGVydGllczo6Z2V0UHJvcGVydHlWYWx1ZSBjb25zdCk6CisgICAgICAgIChX
ZWJDb3JlOjpTdHlsZVByb3BlcnRpZXM6OmJvcmRlckltYWdlUHJvcGVydHlWYWx1ZSBjb25zdCk6
CisgICAgICAgIChXZWJDb3JlOjpTdHlsZVByb3BlcnRpZXM6OmFzVGV4dCBjb25zdCk6CisgICAg
ICAgICogY3NzL1N0eWxlUHJvcGVydGllcy5oOgorICAgICAgICAqIGNzcy9wYXJzZXIvQ1NTUHJv
cGVydHlQYXJzZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Y29uc3VtZUJvcmRlckltYWdlV2lk
dGgpOgorICAgICAgICAoV2ViQ29yZTo6Y29uc3VtZUJvcmRlckltYWdlQ29tcG9uZW50cyk6Cisg
ICAgICAgIChXZWJDb3JlOjpjb25zdW1lV2Via2l0Qm9yZGVySW1hZ2UpOgorICAgICAgICAoV2Vi
Q29yZTo6Q1NTUHJvcGVydHlQYXJzZXI6OnBhcnNlU2luZ2xlVmFsdWUpOgorICAgICAgICAoV2Vi
Q29yZTo6Q1NTUHJvcGVydHlQYXJzZXI6OmNvbnN1bWVCb3JkZXJJbWFnZSk6CisgICAgICAgIChX
ZWJDb3JlOjpDU1NQcm9wZXJ0eVBhcnNlcjo6cGFyc2VTaG9ydGhhbmQpOgorICAgICAgICAqIHN0
eWxlL1Byb3BlcnR5Q2FzY2FkZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6c2hvdWxk
QXBwbHlQcm9wZXJ0eUluUGFyc2VPcmRlcik6CisgICAgICAgICogc3R5bGUvU3R5bGVCdWlsZGVy
Q29udmVydGVyLmg6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6QnVpbGRlckNvbnZlcnRlcjo6
Y29udmVydEJvcmRlck1hc2spOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGU6OkJ1aWxkZXJDb252
ZXJ0ZXI6OmNvbnZlcnRSZWZsZWN0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlOjpCdWls
ZGVyQ29udmVydGVyOjpjb252ZXJ0Qm9yZGVySW1hZ2UpOiBEZWxldGVkLgorCiAyMDIyLTAzLTE0
ICBBbnRvaW5lIFF1aW50ICA8Z3Jhb3V0c0B3ZWJraXQub3JnPgogCiAgICAgICAgIFttb2RlbF0g
PG1vZGVsIGludGVyYWN0aXZlPiBkb2Vzbid0IGFsbG93IG1vZGVsIHRvIGJlIHJvdGF0ZWQgb24g
aU9TCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xh
cmF0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRp
b24uY3BwCmluZGV4IGFjZWJkYjM0NjRiZmUxZjI3NWRlNGFiMDhiYTE4ZGY4NTY4ZWJkODMuLjIx
YjM4NTVlZGY3MzRmMWNkYTkzNDBjZWMxOGE3ZTdiYTIwOTExMTYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3BwCkBAIC0yMjQsNyAr
MjI0LDcgQEAgc3RhdGljIFJlZjxDU1NWYWx1ZT4gdmFsdWVGb3JOaW5lUGllY2VJbWFnZVJlcGVh
dChjb25zdCBOaW5lUGllY2VJbWFnZSYgaW1hZ2UpCiAgICAgcmV0dXJuIGNzc1ZhbHVlUG9vbC5j
cmVhdGVWYWx1ZShQYWlyOjpjcmVhdGUoV1RGTW92ZShob3Jpem9udGFsUmVwZWF0KSwgV1RGTW92
ZSh2ZXJ0aWNhbFJlcGVhdCkpKTsKIH0KIAotc3RhdGljIFJlZjxDU1NWYWx1ZT4gdmFsdWVGb3JO
aW5lUGllY2VJbWFnZShjb25zdCBOaW5lUGllY2VJbWFnZSYgaW1hZ2UsIGNvbnN0IFJlbmRlclN0
eWxlJiBzdHlsZSkKK3N0YXRpYyBSZWZQdHI8Q1NTVmFsdWU+IHZhbHVlRm9yTmluZVBpZWNlSW1h
Z2UoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eUlELCBjb25zdCBOaW5lUGllY2VJbWFnZSYgaW1hZ2Us
IGNvbnN0IFJlbmRlclN0eWxlJiBzdHlsZSkKIHsKICAgICBpZiAoIWltYWdlLmhhc0ltYWdlKCkp
CiAgICAgICAgIHJldHVybiBDU1NWYWx1ZVBvb2w6OnNpbmdsZXRvbigpLmNyZWF0ZUlkZW50aWZp
ZXJWYWx1ZShDU1NWYWx1ZU5vbmUpOwpAQCAtMjMzLDYgKzIzMywyMCBAQCBzdGF0aWMgUmVmPENT
U1ZhbHVlPiB2YWx1ZUZvck5pbmVQaWVjZUltYWdlKGNvbnN0IE5pbmVQaWVjZUltYWdlJiBpbWFn
ZSwgY29uc3QgUgogICAgIGlmIChpbWFnZS5pbWFnZSgpKQogICAgICAgICBpbWFnZVZhbHVlID0g
aW1hZ2UuaW1hZ2UoKS0+Y3NzVmFsdWUoKTsKIAorICAgIGlmIChwcm9wZXJ0eUlEID09IENTU1By
b3BlcnR5V2Via2l0Qm9yZGVySW1hZ2UpIHsKKyAgICAgICAgLy8gLXdlYmtpdC1ib3JkZXItaW1h
Z2UgaGFzIGEgbGVnYWN5IGJlaGF2aW9yIHRoYXQgbWFrZXMgZml4ZWQgYm9yZGVyIHNsaWNlcyBh
bHNvIHNldCB0aGUgYm9yZGVyIHdpZHRocy4KKyAgICAgICAgLy8gU28gaWYgdGhleSBhcmUgZml4
ZWQgYnV0IHRoZSBib3JkZXIgd2lkdGhzIGRvbid0IG1hdGNoLCAtd2Via2l0LWJvcmRlci1pbWFn
ZSBjYW4ndCByZXByZXNlbnQgdGhlIGN1cnJlbnQgc3RhdGUuCisgICAgICAgIGNvbnN0IGF1dG8m
IGJvcmRlclNsaWNlcyA9IGltYWdlLmJvcmRlclNsaWNlcygpOworICAgICAgICBpZiAoYm9yZGVy
U2xpY2VzLnRvcCgpLmlzRml4ZWQoKSAmJiBib3JkZXJTbGljZXMudG9wKCkudmFsdWUoKSAhPSBz
dHlsZS5ib3JkZXJUb3BXaWR0aCgpKQorICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAg
ICAgIGlmIChib3JkZXJTbGljZXMucmlnaHQoKS5pc0ZpeGVkKCkgJiYgYm9yZGVyU2xpY2VzLnJp
Z2h0KCkudmFsdWUoKSAhPSBzdHlsZS5ib3JkZXJSaWdodFdpZHRoKCkpCisgICAgICAgICAgICBy
ZXR1cm4gbnVsbHB0cjsKKyAgICAgICAgaWYgKGJvcmRlclNsaWNlcy5ib3R0b20oKS5pc0ZpeGVk
KCkgJiYgYm9yZGVyU2xpY2VzLmJvdHRvbSgpLnZhbHVlKCkgIT0gc3R5bGUuYm9yZGVyQm90dG9t
V2lkdGgoKSkKKyAgICAgICAgICAgIHJldHVybiBudWxscHRyOworICAgICAgICBpZiAoYm9yZGVy
U2xpY2VzLmxlZnQoKS5pc0ZpeGVkKCkgJiYgYm9yZGVyU2xpY2VzLmxlZnQoKS52YWx1ZSgpICE9
IHN0eWxlLmJvcmRlckxlZnRXaWR0aCgpKQorICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7Cisg
ICAgfQorCiAgICAgYXV0byBpbWFnZVNsaWNlcyA9IHZhbHVlRm9yTmluZVBpZWNlSW1hZ2VTbGlj
ZShpbWFnZSk7CiAgICAgYXV0byBib3JkZXJTbGljZXMgPSB2YWx1ZUZvck5pbmVQaWVjZUltYWdl
UXVhZChpbWFnZS5ib3JkZXJTbGljZXMoKSwgc3R5bGUpOwogICAgIGF1dG8gb3V0c2V0ID0gdmFs
dWVGb3JOaW5lUGllY2VJbWFnZVF1YWQoaW1hZ2Uub3V0c2V0KCksIHN0eWxlKTsKQEAgLTI4NCw3
ICsyOTgsNyBAQCBzdGF0aWMgUmVmPENTU1ZhbHVlPiB2YWx1ZUZvclJlZmxlY3Rpb24oY29uc3Qg
U3R5bGVSZWZsZWN0aW9uKiByZWZsZWN0aW9uLCBjb25zdAogICAgICAgICBicmVhazsKICAgICB9
CiAKLSAgICByZXR1cm4gQ1NTUmVmbGVjdFZhbHVlOjpjcmVhdGUoZGlyZWN0aW9uLnJlbGVhc2VO
b25OdWxsKCksIG9mZnNldC5yZWxlYXNlTm9uTnVsbCgpLCB2YWx1ZUZvck5pbmVQaWVjZUltYWdl
KHJlZmxlY3Rpb24tPm1hc2soKSwgc3R5bGUpKTsKKyAgICByZXR1cm4gQ1NTUmVmbGVjdFZhbHVl
OjpjcmVhdGUoZGlyZWN0aW9uLnJlbGVhc2VOb25OdWxsKCksIG9mZnNldC5yZWxlYXNlTm9uTnVs
bCgpLCB2YWx1ZUZvck5pbmVQaWVjZUltYWdlKENTU1Byb3BlcnR5V2Via2l0Qm94UmVmbGVjdCwg
cmVmbGVjdGlvbi0+bWFzaygpLCBzdHlsZSkpOwogfQogCiBzdGF0aWMgUmVmPENTU1ZhbHVlTGlz
dD4gY3JlYXRlUG9zaXRpb25MaXN0Rm9yTGF5ZXIoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eUlELCBj
b25zdCBGaWxsTGF5ZXImIGxheWVyLCBjb25zdCBSZW5kZXJTdHlsZSYgc3R5bGUpCkBAIC0zNzkx
LDggKzM4MDUsOSBAQCBSZWZQdHI8Q1NTVmFsdWU+IENvbXB1dGVkU3R5bGVFeHRyYWN0b3I6OnZh
bHVlRm9yUHJvcGVydHlJblN0eWxlKGNvbnN0IFJlbmRlclN0eQogICAgICAgICB9CiAgICAgICAg
IGNhc2UgQ1NTUHJvcGVydHlCYWNrZmFjZVZpc2liaWxpdHk6CiAgICAgICAgICAgICByZXR1cm4g
Y3NzVmFsdWVQb29sLmNyZWF0ZUlkZW50aWZpZXJWYWx1ZSgoc3R5bGUuYmFja2ZhY2VWaXNpYmls
aXR5KCkgPT0gQmFja2ZhY2VWaXNpYmlsaXR5OjpIaWRkZW4pID8gQ1NTVmFsdWVIaWRkZW4gOiBD
U1NWYWx1ZVZpc2libGUpOworICAgICAgICBjYXNlIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2U6CiAg
ICAgICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJJbWFnZToKLSAgICAgICAgICAgIHJl
dHVybiB2YWx1ZUZvck5pbmVQaWVjZUltYWdlKHN0eWxlLmJvcmRlckltYWdlKCksIHN0eWxlKTsK
KyAgICAgICAgICAgIHJldHVybiB2YWx1ZUZvck5pbmVQaWVjZUltYWdlKHByb3BlcnR5SUQsIHN0
eWxlLmJvcmRlckltYWdlKCksIHN0eWxlKTsKICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRl
ckltYWdlT3V0c2V0OgogICAgICAgICAgICAgcmV0dXJuIHZhbHVlRm9yTmluZVBpZWNlSW1hZ2VR
dWFkKHN0eWxlLmJvcmRlckltYWdlKCkub3V0c2V0KCksIHN0eWxlKTsKICAgICAgICAgY2FzZSBD
U1NQcm9wZXJ0eUJvcmRlckltYWdlUmVwZWF0OgpAQCAtMzgwMiw3ICszODE3LDcgQEAgUmVmUHRy
PENTU1ZhbHVlPiBDb21wdXRlZFN0eWxlRXh0cmFjdG9yOjp2YWx1ZUZvclByb3BlcnR5SW5TdHls
ZShjb25zdCBSZW5kZXJTdHkKICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlckltYWdlV2lk
dGg6CiAgICAgICAgICAgICByZXR1cm4gdmFsdWVGb3JOaW5lUGllY2VJbWFnZVF1YWQoc3R5bGUu
Ym9yZGVySW1hZ2UoKS5ib3JkZXJTbGljZXMoKSwgc3R5bGUpOwogICAgICAgICBjYXNlIENTU1By
b3BlcnR5V2Via2l0TWFza0JveEltYWdlOgotICAgICAgICAgICAgcmV0dXJuIHZhbHVlRm9yTmlu
ZVBpZWNlSW1hZ2Uoc3R5bGUubWFza0JveEltYWdlKCksIHN0eWxlKTsKKyAgICAgICAgICAgIHJl
dHVybiB2YWx1ZUZvck5pbmVQaWVjZUltYWdlKHByb3BlcnR5SUQsIHN0eWxlLm1hc2tCb3hJbWFn
ZSgpLCBzdHlsZSk7CiAgICAgICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2VP
dXRzZXQ6CiAgICAgICAgICAgICByZXR1cm4gdmFsdWVGb3JOaW5lUGllY2VJbWFnZVF1YWQoc3R5
bGUubWFza0JveEltYWdlKCkub3V0c2V0KCksIHN0eWxlKTsKICAgICAgICAgY2FzZSBDU1NQcm9w
ZXJ0eVdlYmtpdE1hc2tCb3hJbWFnZVJlcGVhdDoKQEAgLTQwMzgsOCArNDA1Myw2IEBAIFJlZlB0
cjxDU1NWYWx1ZT4gQ29tcHV0ZWRTdHlsZUV4dHJhY3Rvcjo6dmFsdWVGb3JQcm9wZXJ0eUluU3R5
bGUoY29uc3QgUmVuZGVyU3R5CiAgICAgICAgICAgICByZXR1cm4gZ2V0Q1NTUHJvcGVydHlWYWx1
ZXNGb3I0U2lkZXNTaG9ydGhhbmQoYm9yZGVyQ29sb3JTaG9ydGhhbmQoKSk7CiAgICAgICAgIGNh
c2UgQ1NTUHJvcGVydHlCb3JkZXJMZWZ0OgogICAgICAgICAgICAgcmV0dXJuIGdldENTU1Byb3Bl
cnR5VmFsdWVzRm9yU2hvcnRoYW5kUHJvcGVydGllcyhib3JkZXJMZWZ0U2hvcnRoYW5kKCkpOwot
ICAgICAgICBjYXNlIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2U6Ci0gICAgICAgICAgICByZXR1cm4g
dmFsdWVGb3JOaW5lUGllY2VJbWFnZShzdHlsZS5ib3JkZXJJbWFnZSgpLCBzdHlsZSk7CiAgICAg
ICAgIGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJJbmxpbmU6IHsKICAgICAgICAgICAgIGF1dG8gdmFs
dWUgPSBwcm9wZXJ0eVZhbHVlKENTU1Byb3BlcnR5Qm9yZGVySW5saW5lU3RhcnQsIERvTm90VXBk
YXRlTGF5b3V0KTsKICAgICAgICAgICAgIGlmICghY29tcGFyZUNTU1ZhbHVlUHRyPENTU1ZhbHVl
Pih2YWx1ZSwgcHJvcGVydHlWYWx1ZShDU1NQcm9wZXJ0eUJvcmRlcklubGluZUVuZCwgRG9Ob3RV
cGRhdGVMYXlvdXQpKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0
aWVzLmpzb24gYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVydGllcy5qc29uCmluZGV4IDU1
YTY0YTI5NDY5MTM2YzhhNjkwYmU1YmI0OWM4NDhmZmNhNzNhOWMuLjUzMGUzYjNiMjU4NGNhYjUz
MDZiZTcxN2I5MzI3MTA1MTBiN2U5ZDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9D
U1NQcm9wZXJ0aWVzLmpzb24KKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3BlcnRpZXMu
anNvbgpAQCAtNTM3NCw4ICs1Mzc0LDIwIEBACiAgICAgICAgIH0sCiAgICAgICAgICItd2Via2l0
LWJvcmRlci1pbWFnZSI6IHsKICAgICAgICAgICAgICJjb2RlZ2VuLXByb3BlcnRpZXMiOiB7Ci0g
ICAgICAgICAgICAgICAgImluaXRpYWwiOiAiaW5pdGlhbE5pbmVQaWVjZUltYWdlIiwKLSAgICAg
ICAgICAgICAgICAiY29udmVydGVyIjogIkJvcmRlckltYWdlPENTU1Byb3BlcnR5V2Via2l0Qm9y
ZGVySW1hZ2U+IgorICAgICAgICAgICAgICAgICJsb25naGFuZHMiOiBbCisgICAgICAgICAgICAg
ICAgICAgICJib3JkZXItdG9wLXdpZHRoIiwKKyAgICAgICAgICAgICAgICAgICAgImJvcmRlci1y
aWdodC13aWR0aCIsCisgICAgICAgICAgICAgICAgICAgICJib3JkZXItYm90dG9tLXdpZHRoIiwK
KyAgICAgICAgICAgICAgICAgICAgImJvcmRlci1sZWZ0LXdpZHRoIiwKKyAgICAgICAgICAgICAg
ICAgICAgImJvcmRlci1pbWFnZS1zb3VyY2UiLAorICAgICAgICAgICAgICAgICAgICAiYm9yZGVy
LWltYWdlLXNsaWNlIiwKKyAgICAgICAgICAgICAgICAgICAgImJvcmRlci1pbWFnZS13aWR0aCIs
CisgICAgICAgICAgICAgICAgICAgICJib3JkZXItaW1hZ2Utb3V0c2V0IiwKKyAgICAgICAgICAg
ICAgICAgICAgImJvcmRlci1pbWFnZS1yZXBlYXQiCisgICAgICAgICAgICAgICAgXQorICAgICAg
ICAgICAgfSwKKyAgICAgICAgICAgICJzdGF0dXMiOiB7CisgICAgICAgICAgICAgICAgImNvbW1l
bnQiOiAiRGlmZmVycyBmcm9tIGJvcmRlci1pbWFnZSBpbiB0aGF0IGl0IGFsd2F5cyBpbmNsdWRl
cyB0aGUgJ2ZpbGwnIGtleXdvcmQgaW4gJ2JvcmRlci1pbWFnZS1zbGljZScsIGFuZCBpdCBzZXRz
ICdib3JkZXItKi13aWR0aCcgaWYgdGhlIGNvcnJlc3BvbmRpbmcgc2xpY2Ugb2Zmc2V0IGlzLiIK
ICAgICAgICAgICAgIH0KICAgICAgICAgfSwKICAgICAgICAgIi13ZWJraXQtYm9yZGVyLXJhZGl1
cyI6IHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NUb1N0eWxlTWFwLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NUb1N0eWxlTWFwLmNwcAppbmRleCA5NDY2MDUxMzUwNTNh
YjVkMzY4NzhjY2JmMzIxNWI5M2E3MTI1OGE5Li40MTlmZWI5N2E1NmJhNjNjY2MzYjg4Y2M5MGQ3
ZTQ4YTcwMjM1YWUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVG9TdHlsZU1h
cC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1RvU3R5bGVNYXAuY3BwCkBAIC00NzEs
NyArNDcxLDcgQEAgdm9pZCBDU1NUb1N0eWxlTWFwOjptYXBBbmltYXRpb25Db21wb3NpdGVPcGVy
YXRpb24oQW5pbWF0aW9uJiBhbmltYXRpb24sIGNvbnN0IEMKICAgICAgICAgYW5pbWF0aW9uLnNl
dENvbXBvc2l0ZU9wZXJhdGlvbigqY29tcG9zaXRlT3BlcmF0aW9uKTsKIH0KIAotdm9pZCBDU1NU
b1N0eWxlTWFwOjptYXBOaW5lUGllY2VJbWFnZShDU1NQcm9wZXJ0eUlEIHByb3BlcnR5LCBDU1NW
YWx1ZSogdmFsdWUsIE5pbmVQaWVjZUltYWdlJiBpbWFnZSkKK3ZvaWQgQ1NTVG9TdHlsZU1hcDo6
bWFwTmluZVBpZWNlSW1hZ2UoQ1NTVmFsdWUqIHZhbHVlLCBOaW5lUGllY2VJbWFnZSYgaW1hZ2Up
CiB7CiAgICAgLy8gSWYgd2UncmUgbm90IGEgdmFsdWUgbGlzdCwgdGhlbiB3ZSBhcmUgIm5vbmUi
IGFuZCBkb24ndCBuZWVkIHRvIGFsdGVyIHRoZSBlbXB0eSBpbWFnZSBhdCBhbGwuCiAgICAgaWYg
KCFpczxDU1NWYWx1ZUxpc3Q+KHZhbHVlKSkKQEAgLTUwMywyMCArNTAzLDYgQEAgdm9pZCBDU1NU
b1N0eWxlTWFwOjptYXBOaW5lUGllY2VJbWFnZShDU1NQcm9wZXJ0eUlEIHByb3BlcnR5LCBDU1NW
YWx1ZSogdmFsdWUsIE4KICAgICAgICAgICAgIG1hcE5pbmVQaWVjZUltYWdlUmVwZWF0KGN1cnJl
bnQsIGltYWdlKTsKICAgICAgICAgfQogICAgIH0KLQotICAgIGlmIChwcm9wZXJ0eSA9PSBDU1NQ
cm9wZXJ0eVdlYmtpdEJvcmRlckltYWdlKSB7Ci0gICAgICAgIC8vIFdlIGhhdmUgdG8gcHJlc2Vy
dmUgdGhlIGxlZ2FjeSBiZWhhdmlvciBvZiAtd2Via2l0LWJvcmRlci1pbWFnZSBhbmQgbWFrZSB0
aGUgYm9yZGVyIHNsaWNlcwotICAgICAgICAvLyBhbHNvIHNldCB0aGUgYm9yZGVyIHdpZHRocy4g
V2UgZG9uJ3QgbmVlZCB0byB3b3JyeSBhYm91dCBwZXJjZW50YWdlcywgc2luY2Ugd2UgZG9uJ3Qg
ZXZlbiBzdXBwb3J0Ci0gICAgICAgIC8vIHRob3NlIG9uIHJlYWwgYm9yZGVycyB5ZXQuCi0gICAg
ICAgIGlmIChpbWFnZS5ib3JkZXJTbGljZXMoKS50b3AoKS5pc0ZpeGVkKCkpCi0gICAgICAgICAg
ICBzdHlsZSgpLT5zZXRCb3JkZXJUb3BXaWR0aChpbWFnZS5ib3JkZXJTbGljZXMoKS50b3AoKS52
YWx1ZSgpKTsKLSAgICAgICAgaWYgKGltYWdlLmJvcmRlclNsaWNlcygpLnJpZ2h0KCkuaXNGaXhl
ZCgpKQotICAgICAgICAgICAgc3R5bGUoKS0+c2V0Qm9yZGVyUmlnaHRXaWR0aChpbWFnZS5ib3Jk
ZXJTbGljZXMoKS5yaWdodCgpLnZhbHVlKCkpOwotICAgICAgICBpZiAoaW1hZ2UuYm9yZGVyU2xp
Y2VzKCkuYm90dG9tKCkuaXNGaXhlZCgpKQotICAgICAgICAgICAgc3R5bGUoKS0+c2V0Qm9yZGVy
Qm90dG9tV2lkdGgoaW1hZ2UuYm9yZGVyU2xpY2VzKCkuYm90dG9tKCkudmFsdWUoKSk7Ci0gICAg
ICAgIGlmIChpbWFnZS5ib3JkZXJTbGljZXMoKS5sZWZ0KCkuaXNGaXhlZCgpKQotICAgICAgICAg
ICAgc3R5bGUoKS0+c2V0Qm9yZGVyTGVmdFdpZHRoKGltYWdlLmJvcmRlclNsaWNlcygpLmxlZnQo
KS52YWx1ZSgpKTsKLSAgICB9CiB9CiAKIHZvaWQgQ1NTVG9TdHlsZU1hcDo6bWFwTmluZVBpZWNl
SW1hZ2VTbGljZShDU1NWYWx1ZSYgdmFsdWUsIE5pbmVQaWVjZUltYWdlJiBpbWFnZSkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NUb1N0eWxlTWFwLmggYi9Tb3VyY2UvV2ViQ29y
ZS9jc3MvQ1NTVG9TdHlsZU1hcC5oCmluZGV4IDRjOWJiNDRjYjkzMjg4ZGY3NjRlMDU5MGEzNmRi
ZWM3YjFmZjc4YzkuLmZlYTc1ZGI5NGYxYmZiOWQyY2QyYTk0Mjg2ZGUyMDQ5MDdjNjJkNTUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NUb1N0eWxlTWFwLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvY3NzL0NTU1RvU3R5bGVNYXAuaApAQCAtNzAsNyArNzAsNyBAQCBwdWJsaWM6CiAg
ICAgdm9pZCBtYXBBbmltYXRpb25UaW1pbmdGdW5jdGlvbihBbmltYXRpb24mLCBjb25zdCBDU1NW
YWx1ZSYpOwogICAgIHZvaWQgbWFwQW5pbWF0aW9uQ29tcG9zaXRlT3BlcmF0aW9uKEFuaW1hdGlv
biYsIGNvbnN0IENTU1ZhbHVlJik7CiAKLSAgICB2b2lkIG1hcE5pbmVQaWVjZUltYWdlKENTU1By
b3BlcnR5SUQsIENTU1ZhbHVlKiwgTmluZVBpZWNlSW1hZ2UmKTsKKyAgICB2b2lkIG1hcE5pbmVQ
aWVjZUltYWdlKENTU1ZhbHVlKiwgTmluZVBpZWNlSW1hZ2UmKTsKICAgICB2b2lkIG1hcE5pbmVQ
aWVjZUltYWdlU2xpY2UoQ1NTVmFsdWUmLCBOaW5lUGllY2VJbWFnZSYpOwogICAgIExlbmd0aEJv
eCBtYXBOaW5lUGllY2VJbWFnZVF1YWQoQ1NTVmFsdWUmKTsKICAgICB2b2lkIG1hcE5pbmVQaWVj
ZUltYWdlUmVwZWF0KENTU1ZhbHVlJiwgTmluZVBpZWNlSW1hZ2UmKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVByb3BlcnRpZXMuY3BwIGIvU291cmNlL1dlYkNvcmUvY3Nz
L1N0eWxlUHJvcGVydGllcy5jcHAKaW5kZXggYjU3OWI5Mzk0MWQ4MzM4YWEzZjgwYzNhOGJjN2Zk
YTQ4MTA3N2E3Yi4uNjM0ZjFmMjZjZThkZmE4ZTgzYTQ5ZTUzNGIzMjRkMWZkMTMyYjNjMyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUHJvcGVydGllcy5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvY3NzL1N0eWxlUHJvcGVydGllcy5jcHAKQEAgLTM3LDYgKzM3LDcgQEAKICNp
bmNsdWRlICJDb2xvci5oIgogI2luY2x1ZGUgIkRvY3VtZW50LmgiCiAjaW5jbHVkZSAiUHJvcGVy
dHlTZXRDU1NTdHlsZURlY2xhcmF0aW9uLmgiCisjaW5jbHVkZSAiUmVjdC5oIgogI2luY2x1ZGUg
IlN0eWxlUHJvcGVydHlTaG9ydGhhbmQuaCIKICNpbmNsdWRlICJTdHlsZVByb3BlcnR5U2hvcnRo
YW5kRnVuY3Rpb25zLmgiCiAjaW5jbHVkZSAiU3R5bGVTaGVldENvbnRlbnRzLmgiCkBAIC0yMTcs
NiArMjE4LDkgQEAgU3RyaW5nIFN0eWxlUHJvcGVydGllczo6Z2V0UHJvcGVydHlWYWx1ZShDU1NQ
cm9wZXJ0eUlEIHByb3BlcnR5SUQpIGNvbnN0CiAgICAgICAgIHJldHVybiBnZXRTaG9ydGhhbmRW
YWx1ZShib3JkZXJCbG9ja1N0YXJ0U2hvcnRoYW5kKCkpOwogICAgIGNhc2UgQ1NTUHJvcGVydHlC
b3JkZXJCbG9ja0VuZDoKICAgICAgICAgcmV0dXJuIGdldFNob3J0aGFuZFZhbHVlKGJvcmRlckJs
b2NrRW5kU2hvcnRoYW5kKCkpOworICAgIGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJJbWFnZToKKyAg
ICBjYXNlIENTU1Byb3BlcnR5V2Via2l0Qm9yZGVySW1hZ2U6CisgICAgICAgIHJldHVybiBib3Jk
ZXJJbWFnZVByb3BlcnR5VmFsdWUocHJvcGVydHlJRCk7CiAgICAgY2FzZSBDU1NQcm9wZXJ0eUJv
cmRlcklubGluZToKICAgICAgICAgcmV0dXJuIGJvcmRlclByb3BlcnR5VmFsdWUoYm9yZGVySW5s
aW5lV2lkdGhTaG9ydGhhbmQoKSwgYm9yZGVySW5saW5lU3R5bGVTaG9ydGhhbmQoKSwgYm9yZGVy
SW5saW5lQ29sb3JTaG9ydGhhbmQoKSk7CiAgICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlcklubGlu
ZUNvbG9yOgpAQCAtOTAwLDYgKzkwNCw4NyBAQCBTdHJpbmcgU3R5bGVQcm9wZXJ0aWVzOjpnZXRB
bGlnbm1lbnRTaG9ydGhhbmRWYWx1ZShjb25zdCBTdHlsZVByb3BlcnR5U2hvcnRoYW5kJgogICAg
IHJldHVybiB2YWx1ZTsKIH0KIAorU3RyaW5nIFN0eWxlUHJvcGVydGllczo6Ym9yZGVySW1hZ2VQ
cm9wZXJ0eVZhbHVlKENTU1Byb3BlcnR5SUQgcHJvcGVydHlJRCkgY29uc3QKK3sKKyAgICBjb25z
dCBTdHlsZVByb3BlcnR5U2hvcnRoYW5kJiBzaG9ydGhhbmQgPSBib3JkZXJJbWFnZVNob3J0aGFu
ZCgpOworICAgIFN0cmluZ0J1aWxkZXIgcmVzdWx0OworICAgIGJvb2wgbGFzdFByb3BlcnR5V2Fz
SW1wb3J0YW50OworICAgIGJvb2wgb21pdHRlZFNsaWNlID0gZmFsc2U7CisgICAgYm9vbCBvbWl0
dGVkV2lkdGggPSBmYWxzZTsKKyAgICBTdHJpbmcgY29tbW9uV2lkZVZhbHVlVGV4dDsKKyAgICBm
b3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgc2hvcnRoYW5kLmxlbmd0aCgpOyArK2kpIHsKKyAgICAg
ICAgLy8gQWxsIGxvbmdoYW5kcyBzaG91bGQgaGF2ZSB0aGUgc2FtZSBpbXBvcnRhbmNlLgorICAg
ICAgICBhdXRvIGxvbmdoYW5kID0gc2hvcnRoYW5kLnByb3BlcnRpZXMoKVtpXTsKKyAgICAgICAg
Ym9vbCBjdXJyZW50UHJvcGVydHlJc0ltcG9ydGFudCA9IHByb3BlcnR5SXNJbXBvcnRhbnQobG9u
Z2hhbmQpOworICAgICAgICBpZiAoaSAmJiBsYXN0UHJvcGVydHlXYXNJbXBvcnRhbnQgIT0gY3Vy
cmVudFByb3BlcnR5SXNJbXBvcnRhbnQpCisgICAgICAgICAgICByZXR1cm4gU3RyaW5nKCk7Cisg
ICAgICAgIGxhc3RQcm9wZXJ0eVdhc0ltcG9ydGFudCA9IGN1cnJlbnRQcm9wZXJ0eUlzSW1wb3J0
YW50OworCisgICAgICAgIC8vIEFsbCBsb25naGFuZHMgc2hvdWxkIGJlIHByZXNlbnQuCisgICAg
ICAgIGF1dG8gdmFsdWUgPSBnZXRQcm9wZXJ0eUNTU1ZhbHVlKGxvbmdoYW5kKTsKKyAgICAgICAg
aWYgKCF2YWx1ZSkKKyAgICAgICAgICAgIHJldHVybiBTdHJpbmcoKTsKKworICAgICAgICAvLyBP
bWl0IGltcGxpY2l0IGluaXRpYWwgdmFsdWVzLiBIb3dldmVyLCBib3JkZXItaW1hZ2Utd2lkdGgg
YW5kIGJvcmRlci1pbWFnZS1vdXRzZXQgcmVxdWlyZSBib3JkZXItaW1hZ2Utc2xpY2UuCisgICAg
ICAgIGlmICh2YWx1ZS0+aXNJbml0aWFsVmFsdWUoKSAmJiBpc1Byb3BlcnR5SW1wbGljaXQobG9u
Z2hhbmQpKSB7CisgICAgICAgICAgICBpZiAobG9uZ2hhbmQgPT0gQ1NTUHJvcGVydHlCb3JkZXJJ
bWFnZVNsaWNlKQorICAgICAgICAgICAgICAgIG9taXR0ZWRTbGljZSA9IHRydWU7CisgICAgICAg
ICAgICBlbHNlIGlmIChsb25naGFuZCA9PSBDU1NQcm9wZXJ0eUJvcmRlckltYWdlV2lkdGgpCisg
ICAgICAgICAgICAgICAgb21pdHRlZFdpZHRoID0gdHJ1ZTsKKyAgICAgICAgICAgIGNvbnRpbnVl
OworICAgICAgICB9CisgICAgICAgIGlmIChvbWl0dGVkU2xpY2UgJiYgKGxvbmdoYW5kID09IENT
U1Byb3BlcnR5Qm9yZGVySW1hZ2VXaWR0aCB8fCBsb25naGFuZCA9PSBDU1NQcm9wZXJ0eUJvcmRl
ckltYWdlT3V0c2V0KSkKKyAgICAgICAgICAgIHJldHVybiBTdHJpbmcoKTsKKworICAgICAgICAv
LyBJZiBhIGxvbmdoYW5kIGlzIHNldCB0byBhIGNzcy13aWRlIGtleXdvcmQsIHRoZSBvdGhlcnMg
c2hvdWxkIGJlIHRoZSBzYW1lLgorICAgICAgICBTdHJpbmcgdmFsdWVUZXh0ID0gdmFsdWUtPmNz
c1RleHQoKTsKKyAgICAgICAgaWYgKGlzQ1NTV2lkZVZhbHVlS2V5d29yZCh2YWx1ZVRleHQpKSB7
CisgICAgICAgICAgICBpZiAoIWkpCisgICAgICAgICAgICAgICAgY29tbW9uV2lkZVZhbHVlVGV4
dCA9IHZhbHVlVGV4dDsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNvbW1vbldpZGVWYWx1ZVRleHQg
IT0gdmFsdWVUZXh0KQorICAgICAgICAgICAgICAgIHJldHVybiBTdHJpbmcoKTsKKyAgICAgICAg
ICAgIGNvbnRpbnVlOworICAgICAgICB9CisgICAgICAgIGlmICghY29tbW9uV2lkZVZhbHVlVGV4
dC5pc051bGwoKSkKKyAgICAgICAgICAgIHJldHVybiBTdHJpbmcoKTsKKworICAgICAgICAvLyAt
d2Via2l0LWJvcmRlci1pbWFnZSBoYXMgYSBsZWdhY3kgYmVoYXZpb3IgdGhhdCBtYWtlcyBmaXhl
ZCBib3JkZXIgc2xpY2VzIGFsc28gc2V0IHRoZSBib3JkZXIgd2lkdGhzLgorICAgICAgICAvLyBT
byBpZiB0aGV5IGFyZSBmaXhlZCBidXQgdGhlIGJvcmRlciB3aWR0aHMgZG9uJ3QgbWF0Y2gsIC13
ZWJraXQtYm9yZGVyLWltYWdlIGNhbid0IHJlcHJlc2VudCB0aGUgY3VycmVudCBzdGF0ZS4KKyAg
ICAgICAgaWYgKHByb3BlcnR5SUQgPT0gQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJJbWFnZSAmJiBs
b25naGFuZCA9PSBDU1NQcm9wZXJ0eUJvcmRlckltYWdlV2lkdGggJiYgaXM8Q1NTUHJpbWl0aXZl
VmFsdWU+KCp2YWx1ZSkpIHsKKyAgICAgICAgICAgIGlmIChRdWFkKiBxdWFkID0gZG93bmNhc3Q8
Q1NTUHJpbWl0aXZlVmFsdWU+KCp2YWx1ZSkucXVhZFZhbHVlKCkpIHsKKyAgICAgICAgICAgICAg
ICBhdXRvIGlzTWlzbWF0Y2hpbmdMZW5ndGggPSBbJl0oQ1NTUHJvcGVydHlJRCBtYXRjaGluZ0lE
LCBSZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+IHZhbHVlKSB7CisgICAgICAgICAgICAgICAgICAg
IGlmICghdmFsdWUgfHwgIXZhbHVlLT5pc0xlbmd0aCgpKQorICAgICAgICAgICAgICAgICAgICAg
ICAgcmV0dXJuIGZhbHNlOworICAgICAgICAgICAgICAgICAgICBhdXRvIG1hdGNoaW5nVmFsdWUg
PSBnZXRQcm9wZXJ0eUNTU1ZhbHVlKG1hdGNoaW5nSUQpOworICAgICAgICAgICAgICAgICAgICBp
ZiAobWF0Y2hpbmdWYWx1ZSA9PSB2YWx1ZSkKKyAgICAgICAgICAgICAgICAgICAgICAgIHJldHVy
biBmYWxzZTsKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuICFtYXRjaGluZ1ZhbHVlIHx8ICpt
YXRjaGluZ1ZhbHVlICE9ICp2YWx1ZTsKKyAgICAgICAgICAgICAgICB9OworICAgICAgICAgICAg
ICAgIGlmIChpc01pc21hdGNoaW5nTGVuZ3RoKENTU1Byb3BlcnR5Qm9yZGVyVG9wV2lkdGgsIHF1
YWQtPnRvcCgpKSkKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFN0cmluZygpOworICAgICAg
ICAgICAgICAgIGlmIChpc01pc21hdGNoaW5nTGVuZ3RoKENTU1Byb3BlcnR5Qm9yZGVyUmlnaHRX
aWR0aCwgcXVhZC0+cmlnaHQoKSkpCisgICAgICAgICAgICAgICAgICAgIHJldHVybiBTdHJpbmco
KTsKKyAgICAgICAgICAgICAgICBpZiAoaXNNaXNtYXRjaGluZ0xlbmd0aChDU1NQcm9wZXJ0eUJv
cmRlckJvdHRvbVdpZHRoLCBxdWFkLT5ib3R0b20oKSkpCisgICAgICAgICAgICAgICAgICAgIHJl
dHVybiBTdHJpbmcoKTsKKyAgICAgICAgICAgICAgICBpZiAoaXNNaXNtYXRjaGluZ0xlbmd0aChD
U1NQcm9wZXJ0eUJvcmRlckxlZnRXaWR0aCwgcXVhZC0+bGVmdCgpKSkKKyAgICAgICAgICAgICAg
ICAgICAgcmV0dXJuIFN0cmluZygpOworICAgICAgICAgICAgfQorICAgICAgICB9CisKKyAgICAg
ICAgLy8gQXBwZW5kIHNlcGFyYXRvcnMgYW5kIHRleHQuCisgICAgICAgIGlmIChsb25naGFuZCA9
PSBDU1NQcm9wZXJ0eUJvcmRlckltYWdlV2lkdGgpCisgICAgICAgICAgICByZXN1bHQuYXBwZW5k
KCIgLyAiKTsKKyAgICAgICAgZWxzZSBpZiAobG9uZ2hhbmQgPT0gQ1NTUHJvcGVydHlCb3JkZXJJ
bWFnZU91dHNldCkKKyAgICAgICAgICAgIHJlc3VsdC5hcHBlbmQob21pdHRlZFdpZHRoID8gIiAv
IC8gIiA6ICIgLyAiKTsKKyAgICAgICAgZWxzZSBpZiAoIXJlc3VsdC5pc0VtcHR5KCkpCisgICAg
ICAgICAgICByZXN1bHQuYXBwZW5kKCIgIik7CisgICAgICAgIHJlc3VsdC5hcHBlbmQodmFsdWVU
ZXh0KTsKKyAgICB9CisgICAgaWYgKCFjb21tb25XaWRlVmFsdWVUZXh0LmlzTnVsbCgpKQorICAg
ICAgICByZXR1cm4gY29tbW9uV2lkZVZhbHVlVGV4dDsKKyAgICByZXR1cm4gcmVzdWx0LnRvU3Ry
aW5nKCk7Cit9CisKIFN0cmluZyBTdHlsZVByb3BlcnRpZXM6OmJvcmRlclByb3BlcnR5VmFsdWUo
Y29uc3QgU3R5bGVQcm9wZXJ0eVNob3J0aGFuZCYgd2lkdGgsIGNvbnN0IFN0eWxlUHJvcGVydHlT
aG9ydGhhbmQmIHN0eWxlLCBjb25zdCBTdHlsZVByb3BlcnR5U2hvcnRoYW5kJiBjb2xvcikgY29u
c3QKIHsKICAgICBjb25zdCBTdHlsZVByb3BlcnR5U2hvcnRoYW5kIHByb3BlcnRpZXNbM10gPSB7
IHdpZHRoLCBzdHlsZSwgY29sb3IgfTsKQEAgLTEzNDMsNiArMTQyOCwxMyBAQCBTdHJpbmcgU3R5
bGVQcm9wZXJ0aWVzOjphc1RleHQoKSBjb25zdAogICAgICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0
eVdlYmtpdEJvcmRlclZlcnRpY2FsU3BhY2luZzoKICAgICAgICAgICAgICAgICBzaG9ydGhhbmRQ
cm9wZXJ0eUlEID0gQ1NTUHJvcGVydHlCb3JkZXJTcGFjaW5nOwogICAgICAgICAgICAgICAgIGJy
ZWFrOworICAgICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlckltYWdlU291cmNlOgorICAg
ICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlckltYWdlU2xpY2U6CisgICAgICAgICAgICBj
YXNlIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VXaWR0aDoKKyAgICAgICAgICAgIGNhc2UgQ1NTUHJv
cGVydHlCb3JkZXJJbWFnZU91dHNldDoKKyAgICAgICAgICAgIGNhc2UgQ1NTUHJvcGVydHlCb3Jk
ZXJJbWFnZVJlcGVhdDoKKyAgICAgICAgICAgICAgICBzaG9ydGhhbmRQcm9wZXJ0eUlEID0gQ1NT
UHJvcGVydHlCb3JkZXJJbWFnZTsKKyAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAg
IGNhc2UgQ1NTUHJvcGVydHlGb250RmFtaWx5OgogICAgICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0
eUxpbmVIZWlnaHQ6CiAgICAgICAgICAgICBjYXNlIENTU1Byb3BlcnR5Rm9udFNpemU6CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVQcm9wZXJ0aWVzLmggYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvU3R5bGVQcm9wZXJ0aWVzLmgKaW5kZXggN2M5ODRkYjM1ZGZiNzk0YmQxOWMwMTg1
OGQzODEyNGM1OWQ4ZWI3NC4uZGE1Y2Y2MTNiZTFmMDJkNzQwYmIwYjZiMmVlMDljMzQ3YjYxY2My
NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUHJvcGVydGllcy5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVByb3BlcnRpZXMuaApAQCAtMTY1LDYgKzE2NSw3IEBA
IHByaXZhdGU6CiAgICAgU3RyaW5nIGdldFNob3J0aGFuZFZhbHVlKGNvbnN0IFN0eWxlUHJvcGVy
dHlTaG9ydGhhbmQmLCBjb25zdCBjaGFyKiBzZXBhcmF0b3IgPSAiICIpIGNvbnN0OwogICAgIFN0
cmluZyBnZXRDb21tb25WYWx1ZShjb25zdCBTdHlsZVByb3BlcnR5U2hvcnRoYW5kJikgY29uc3Q7
CiAgICAgU3RyaW5nIGdldEFsaWdubWVudFNob3J0aGFuZFZhbHVlKGNvbnN0IFN0eWxlUHJvcGVy
dHlTaG9ydGhhbmQmKSBjb25zdDsKKyAgICBTdHJpbmcgYm9yZGVySW1hZ2VQcm9wZXJ0eVZhbHVl
KENTU1Byb3BlcnR5SUQpIGNvbnN0OwogICAgIFN0cmluZyBib3JkZXJQcm9wZXJ0eVZhbHVlKGNv
bnN0IFN0eWxlUHJvcGVydHlTaG9ydGhhbmQmLCBjb25zdCBTdHlsZVByb3BlcnR5U2hvcnRoYW5k
JiwgY29uc3QgU3R5bGVQcm9wZXJ0eVNob3J0aGFuZCYpIGNvbnN0OwogICAgIFN0cmluZyBwYWdl
QnJlYWtQcm9wZXJ0eVZhbHVlKGNvbnN0IFN0eWxlUHJvcGVydHlTaG9ydGhhbmQmKSBjb25zdDsK
ICAgICBTdHJpbmcgZ2V0TGF5ZXJlZFNob3J0aGFuZFZhbHVlKGNvbnN0IFN0eWxlUHJvcGVydHlT
aG9ydGhhbmQmKSBjb25zdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIv
Q1NTUHJvcGVydHlQYXJzZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQcm9w
ZXJ0eVBhcnNlci5jcHAKaW5kZXggYzVmMzQ0MTY1ZjQ2MTYyZmY4ZWQxMTAzYTgwYjg4YWUxOTA2
MjM3Zi4uYjNkMzcwOGZhOWRjOWY5ZmYzMDZjYTgzMmU3MTIxZTBkNWQzOTk4OCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlci5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlci5jcHAKQEAgLTMwMzcs
NyArMzAzNyw3IEBAIHN0YXRpYyBSZWZQdHI8Q1NTVmFsdWU+IGNvbnN1bWVCb3JkZXJJbWFnZU91
dHNldChDU1NQYXJzZXJUb2tlblJhbmdlJiByYW5nZSkKICAgICByZXR1cm4gQ1NTVmFsdWVQb29s
OjpzaW5nbGV0b24oKS5jcmVhdGVWYWx1ZShXVEZNb3ZlKHF1YWQpKTsKIH0KIAotc3RhdGljIFJl
ZlB0cjxDU1NWYWx1ZT4gY29uc3VtZUJvcmRlckltYWdlV2lkdGgoQ1NTUGFyc2VyVG9rZW5SYW5n
ZSYgcmFuZ2UpCitzdGF0aWMgUmVmUHRyPENTU1ByaW1pdGl2ZVZhbHVlPiBjb25zdW1lQm9yZGVy
SW1hZ2VXaWR0aChDU1NQYXJzZXJUb2tlblJhbmdlJiByYW5nZSkKIHsKICAgICBSZWZQdHI8Q1NT
UHJpbWl0aXZlVmFsdWU+IHdpZHRoc1s0XTsKIApAQCAtMzA2Nyw3ICszMDY3LDcgQEAgc3RhdGlj
IFJlZlB0cjxDU1NWYWx1ZT4gY29uc3VtZUJvcmRlckltYWdlV2lkdGgoQ1NTUGFyc2VyVG9rZW5S
YW5nZSYgcmFuZ2UpCiB9CiAKIHN0YXRpYyBib29sIGNvbnN1bWVCb3JkZXJJbWFnZUNvbXBvbmVu
dHMoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eSwgQ1NTUGFyc2VyVG9rZW5SYW5nZSYgcmFuZ2UsIGNv
bnN0IENTU1BhcnNlckNvbnRleHQmIGNvbnRleHQsIFJlZlB0cjxDU1NWYWx1ZT4mIHNvdXJjZSwK
LSAgICBSZWZQdHI8Q1NTVmFsdWU+JiBzbGljZSwgUmVmUHRyPENTU1ZhbHVlPiYgd2lkdGgsIFJl
ZlB0cjxDU1NWYWx1ZT4mIG91dHNldCwgUmVmUHRyPENTU1ZhbHVlPiYgcmVwZWF0KQorICAgIFJl
ZlB0cjxDU1NWYWx1ZT4mIHNsaWNlLCBSZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+JiB3aWR0aCwg
UmVmUHRyPENTU1ZhbHVlPiYgb3V0c2V0LCBSZWZQdHI8Q1NTVmFsdWU+JiByZXBlYXQpCiB7CiAg
ICAgZG8gewogICAgICAgICBpZiAoIXNvdXJjZSkgewpAQCAtMzEwOCw3ICszMTA4LDcgQEAgc3Rh
dGljIFJlZlB0cjxDU1NWYWx1ZT4gY29uc3VtZVdlYmtpdEJvcmRlckltYWdlKENTU1Byb3BlcnR5
SUQgcHJvcGVydHksIENTU1BhcnMKIHsKICAgICBSZWZQdHI8Q1NTVmFsdWU+IHNvdXJjZTsKICAg
ICBSZWZQdHI8Q1NTVmFsdWU+IHNsaWNlOwotICAgIFJlZlB0cjxDU1NWYWx1ZT4gd2lkdGg7Cisg
ICAgUmVmUHRyPENTU1ByaW1pdGl2ZVZhbHVlPiB3aWR0aDsKICAgICBSZWZQdHI8Q1NTVmFsdWU+
IG91dHNldDsKICAgICBSZWZQdHI8Q1NTVmFsdWU+IHJlcGVhdDsKICAgICBpZiAoY29uc3VtZUJv
cmRlckltYWdlQ29tcG9uZW50cyhwcm9wZXJ0eSwgcmFuZ2UsIGNvbnRleHQsIHNvdXJjZSwgc2xp
Y2UsIHdpZHRoLCBvdXRzZXQsIHJlcGVhdCkpCkBAIC00NjIxLDcgKzQ2MjEsNiBAQCBSZWZQdHI8
Q1NTVmFsdWU+IENTU1Byb3BlcnR5UGFyc2VyOjpwYXJzZVNpbmdsZVZhbHVlKENTU1Byb3BlcnR5
SUQgcHJvcGVydHksIENTUwogICAgIGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJJbWFnZVdpZHRoOgog
ICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2VXaWR0aDoKICAgICAgICAgcmV0
dXJuIGNvbnN1bWVCb3JkZXJJbWFnZVdpZHRoKG1fcmFuZ2UpOwotICAgIGNhc2UgQ1NTUHJvcGVy
dHlXZWJraXRCb3JkZXJJbWFnZToKICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0TWFza0JveElt
YWdlOgogICAgICAgICByZXR1cm4gY29uc3VtZVdlYmtpdEJvcmRlckltYWdlKHByb3BlcnR5LCBt
X3JhbmdlLCBtX2NvbnRleHQpOwogICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRCb3hSZWZsZWN0
OgpAQCAtNTU0MSw3ICs1NTQwLDcgQEAgYm9vbCBDU1NQcm9wZXJ0eVBhcnNlcjo6Y29uc3VtZUJv
cmRlckltYWdlKENTU1Byb3BlcnR5SUQgcHJvcGVydHksIGJvb2wgaW1wb3J0YW4KIHsKICAgICBS
ZWZQdHI8Q1NTVmFsdWU+IHNvdXJjZTsKICAgICBSZWZQdHI8Q1NTVmFsdWU+IHNsaWNlOwotICAg
IFJlZlB0cjxDU1NWYWx1ZT4gd2lkdGg7CisgICAgUmVmUHRyPENTU1ByaW1pdGl2ZVZhbHVlPiB3
aWR0aDsKICAgICBSZWZQdHI8Q1NTVmFsdWU+IG91dHNldDsKICAgICBSZWZQdHI8Q1NTVmFsdWU+
IHJlcGVhdDsKICAgICAKQEAgLTU1NDksMTggKzU1NDgsMzMgQEAgYm9vbCBDU1NQcm9wZXJ0eVBh
cnNlcjo6Y29uc3VtZUJvcmRlckltYWdlKENTU1Byb3BlcnR5SUQgcHJvcGVydHksIGJvb2wgaW1w
b3J0YW4KICAgICAgICAgYXV0byYgdmFsdWVQb29sID0gQ1NTVmFsdWVQb29sOjpzaW5nbGV0b24o
KTsKICAgICAgICAgc3dpdGNoIChwcm9wZXJ0eSkgewogICAgICAgICBjYXNlIENTU1Byb3BlcnR5
V2Via2l0TWFza0JveEltYWdlOgotICAgICAgICAgICAgYWRkUHJvcGVydHlXaXRoSW1wbGljaXRE
ZWZhdWx0KENTU1Byb3BlcnR5V2Via2l0TWFza0JveEltYWdlU291cmNlLCBDU1NQcm9wZXJ0eVdl
YmtpdE1hc2tCb3hJbWFnZSwgV1RGTW92ZShzb3VyY2UpLCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGlj
aXRJbml0aWFsVmFsdWUoKSwgaW1wb3J0YW50KTsKLSAgICAgICAgICAgIGFkZFByb3BlcnR5V2l0
aEltcGxpY2l0RGVmYXVsdChDU1NQcm9wZXJ0eVdlYmtpdE1hc2tCb3hJbWFnZVNsaWNlLCBDU1NQ
cm9wZXJ0eVdlYmtpdE1hc2tCb3hJbWFnZSwgV1RGTW92ZShzbGljZSksIHZhbHVlUG9vbC5jcmVh
dGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQpOwotICAgICAgICAgICAgYWRkUHJv
cGVydHlXaXRoSW1wbGljaXREZWZhdWx0KENTU1Byb3BlcnR5V2Via2l0TWFza0JveEltYWdlV2lk
dGgsIENTU1Byb3BlcnR5V2Via2l0TWFza0JveEltYWdlLCBXVEZNb3ZlKHdpZHRoKSwgdmFsdWVQ
b29sLmNyZWF0ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCksIGltcG9ydGFudCk7Ci0gICAgICAgICAg
ICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNpdERlZmF1bHQoQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94
SW1hZ2VPdXRzZXQsIENTU1Byb3BlcnR5V2Via2l0TWFza0JveEltYWdlLCBXVEZNb3ZlKG91dHNl
dCksIHZhbHVlUG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQpOwot
ICAgICAgICAgICAgYWRkUHJvcGVydHlXaXRoSW1wbGljaXREZWZhdWx0KENTU1Byb3BlcnR5V2Vi
a2l0TWFza0JveEltYWdlUmVwZWF0LCBDU1NQcm9wZXJ0eVdlYmtpdE1hc2tCb3hJbWFnZSwgV1RG
TW92ZShyZXBlYXQpLCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFsdWUoKSwgaW1w
b3J0YW50KTsKKyAgICAgICAgICAgIGFkZFByb3BlcnR5V2l0aEltcGxpY2l0RGVmYXVsdChDU1NQ
cm9wZXJ0eVdlYmtpdE1hc2tCb3hJbWFnZVNvdXJjZSwgcHJvcGVydHksIFdURk1vdmUoc291cmNl
KSwgdmFsdWVQb29sLmNyZWF0ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCksIGltcG9ydGFudCk7Cisg
ICAgICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNpdERlZmF1bHQoQ1NTUHJvcGVydHlXZWJr
aXRNYXNrQm94SW1hZ2VTbGljZSwgcHJvcGVydHksIFdURk1vdmUoc2xpY2UpLCB2YWx1ZVBvb2wu
Y3JlYXRlSW1wbGljaXRJbml0aWFsVmFsdWUoKSwgaW1wb3J0YW50KTsKKyAgICAgICAgICAgIGFk
ZFByb3BlcnR5V2l0aEltcGxpY2l0RGVmYXVsdChDU1NQcm9wZXJ0eVdlYmtpdE1hc2tCb3hJbWFn
ZVdpZHRoLCBwcm9wZXJ0eSwgV1RGTW92ZSh3aWR0aCksIHZhbHVlUG9vbC5jcmVhdGVJbXBsaWNp
dEluaXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQpOworICAgICAgICAgICAgYWRkUHJvcGVydHlXaXRo
SW1wbGljaXREZWZhdWx0KENTU1Byb3BlcnR5V2Via2l0TWFza0JveEltYWdlT3V0c2V0LCBwcm9w
ZXJ0eSwgV1RGTW92ZShvdXRzZXQpLCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFs
dWUoKSwgaW1wb3J0YW50KTsKKyAgICAgICAgICAgIGFkZFByb3BlcnR5V2l0aEltcGxpY2l0RGVm
YXVsdChDU1NQcm9wZXJ0eVdlYmtpdE1hc2tCb3hJbWFnZVJlcGVhdCwgcHJvcGVydHksIFdURk1v
dmUocmVwZWF0KSwgdmFsdWVQb29sLmNyZWF0ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCksIGltcG9y
dGFudCk7CiAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICAgICAgY2FzZSBDU1NQcm9wZXJ0
eVdlYmtpdEJvcmRlckltYWdlOgorICAgICAgICAgICAgLy8gV2UgaGF2ZSB0byBwcmVzZXJ2ZSB0
aGUgbGVnYWN5IGJlaGF2aW9yIG9mIC13ZWJraXQtYm9yZGVyLWltYWdlIGFuZCBtYWtlIHRoZSBi
b3JkZXIgc2xpY2VzCisgICAgICAgICAgICAvLyBhbHNvIHNldCB0aGUgYm9yZGVyIHdpZHRocy4g
V2UgZG9uJ3QgbmVlZCB0byB3b3JyeSBhYm91dCBwZXJjZW50YWdlcywgc2luY2Ugd2UgZG9uJ3Qg
ZXZlbiBzdXBwb3J0CisgICAgICAgICAgICAvLyB0aG9zZSBvbiByZWFsIGJvcmRlcnMgeWV0Lgor
ICAgICAgICAgICAgaWYgKFF1YWQqIHF1YWQgPSB3aWR0aCA/IHdpZHRoLT5xdWFkVmFsdWUoKSA6
IG51bGxwdHIpIHsKKyAgICAgICAgICAgICAgICBhdXRvIGFkZFByb3BlcnR5SWZMZW5ndGggPSBb
Jl0oQ1NTUHJvcGVydHlJRCBsb25naGFuZCwgUmVmUHRyPENTU1ByaW1pdGl2ZVZhbHVlPiB2YWx1
ZSkgeworICAgICAgICAgICAgICAgICAgICBpZiAodmFsdWUgJiYgdmFsdWUtPmlzTGVuZ3RoKCkp
CisgICAgICAgICAgICAgICAgICAgICAgICBhZGRQcm9wZXJ0eShsb25naGFuZCwgQ1NTUHJvcGVy
dHlXZWJraXRCb3JkZXJJbWFnZSwgdmFsdWUucmVsZWFzZU5vbk51bGwoKSwgaW1wb3J0YW50KTsK
KyAgICAgICAgICAgICAgICB9OworICAgICAgICAgICAgICAgIGFkZFByb3BlcnR5SWZMZW5ndGgo
Q1NTUHJvcGVydHlCb3JkZXJUb3BXaWR0aCwgcXVhZC0+dG9wKCkpOworICAgICAgICAgICAgICAg
IGFkZFByb3BlcnR5SWZMZW5ndGgoQ1NTUHJvcGVydHlCb3JkZXJSaWdodFdpZHRoLCBxdWFkLT5y
aWdodCgpKTsKKyAgICAgICAgICAgICAgICBhZGRQcm9wZXJ0eUlmTGVuZ3RoKENTU1Byb3BlcnR5
Qm9yZGVyQm90dG9tV2lkdGgsIHF1YWQtPmJvdHRvbSgpKTsKKyAgICAgICAgICAgICAgICBhZGRQ
cm9wZXJ0eUlmTGVuZ3RoKENTU1Byb3BlcnR5Qm9yZGVyTGVmdFdpZHRoLCBxdWFkLT5sZWZ0KCkp
OworICAgICAgICAgICAgfQorICAgICAgICAgICAgRkFMTFRIUk9VR0g7CiAgICAgICAgIGNhc2Ug
Q1NTUHJvcGVydHlCb3JkZXJJbWFnZToKLSAgICAgICAgICAgIGFkZFByb3BlcnR5V2l0aEltcGxp
Y2l0RGVmYXVsdChDU1NQcm9wZXJ0eUJvcmRlckltYWdlU291cmNlLCBDU1NQcm9wZXJ0eUJvcmRl
ckltYWdlLCBXVEZNb3ZlKHNvdXJjZSksIHZhbHVlUG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxW
YWx1ZSgpLCBpbXBvcnRhbnQpOwotICAgICAgICAgICAgYWRkUHJvcGVydHlXaXRoSW1wbGljaXRE
ZWZhdWx0KENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VTbGljZSwgQ1NTUHJvcGVydHlCb3JkZXJJbWFn
ZSwgV1RGTW92ZShzbGljZSksIHZhbHVlUG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgp
LCBpbXBvcnRhbnQpOwotICAgICAgICAgICAgYWRkUHJvcGVydHlXaXRoSW1wbGljaXREZWZhdWx0
KENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VXaWR0aCwgQ1NTUHJvcGVydHlCb3JkZXJJbWFnZSwgV1RG
TW92ZSh3aWR0aCksIHZhbHVlUG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgpLCBpbXBv
cnRhbnQpOwotICAgICAgICAgICAgYWRkUHJvcGVydHlXaXRoSW1wbGljaXREZWZhdWx0KENTU1By
b3BlcnR5Qm9yZGVySW1hZ2VPdXRzZXQsIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2UsIFdURk1vdmUo
b3V0c2V0KSwgdmFsdWVQb29sLmNyZWF0ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCksIGltcG9ydGFu
dCk7Ci0gICAgICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNpdERlZmF1bHQoQ1NTUHJvcGVy
dHlCb3JkZXJJbWFnZVJlcGVhdCwgQ1NTUHJvcGVydHlCb3JkZXJJbWFnZSwgV1RGTW92ZShyZXBl
YXQpLCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFsdWUoKSwgaW1wb3J0YW50KTsK
KyAgICAgICAgICAgIGFkZFByb3BlcnR5V2l0aEltcGxpY2l0RGVmYXVsdChDU1NQcm9wZXJ0eUJv
cmRlckltYWdlU291cmNlLCBwcm9wZXJ0eSwgV1RGTW92ZShzb3VyY2UpLCB2YWx1ZVBvb2wuY3Jl
YXRlSW1wbGljaXRJbml0aWFsVmFsdWUoKSwgaW1wb3J0YW50KTsKKyAgICAgICAgICAgIGFkZFBy
b3BlcnR5V2l0aEltcGxpY2l0RGVmYXVsdChDU1NQcm9wZXJ0eUJvcmRlckltYWdlU2xpY2UsIHBy
b3BlcnR5LCBXVEZNb3ZlKHNsaWNlKSwgdmFsdWVQb29sLmNyZWF0ZUltcGxpY2l0SW5pdGlhbFZh
bHVlKCksIGltcG9ydGFudCk7CisgICAgICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNpdERl
ZmF1bHQoQ1NTUHJvcGVydHlCb3JkZXJJbWFnZVdpZHRoLCBwcm9wZXJ0eSwgV1RGTW92ZSh3aWR0
aCksIHZhbHVlUG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQpOwor
ICAgICAgICAgICAgYWRkUHJvcGVydHlXaXRoSW1wbGljaXREZWZhdWx0KENTU1Byb3BlcnR5Qm9y
ZGVySW1hZ2VPdXRzZXQsIHByb3BlcnR5LCBXVEZNb3ZlKG91dHNldCksIHZhbHVlUG9vbC5jcmVh
dGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQpOworICAgICAgICAgICAgYWRkUHJv
cGVydHlXaXRoSW1wbGljaXREZWZhdWx0KENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VSZXBlYXQsIHBy
b3BlcnR5LCBXVEZNb3ZlKHJlcGVhdCksIHZhbHVlUG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxW
YWx1ZSgpLCBpbXBvcnRhbnQpOwogICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgIGRl
ZmF1bHQ6CiAgICAgICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKQEAgLTY0NDIsNiArNjQ1
Niw3IEBAIGJvb2wgQ1NTUHJvcGVydHlQYXJzZXI6OnBhcnNlU2hvcnRoYW5kKENTU1Byb3BlcnR5
SUQgcHJvcGVydHksIGJvb2wgaW1wb3J0YW50KQogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9
CiAgICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlckltYWdlOgorICAgIGNhc2UgQ1NTUHJvcGVydHlX
ZWJraXRCb3JkZXJJbWFnZToKICAgICAgICAgcmV0dXJuIGNvbnN1bWVCb3JkZXJJbWFnZShwcm9w
ZXJ0eSwgaW1wb3J0YW50KTsKICAgICBjYXNlIENTU1Byb3BlcnR5UGFnZUJyZWFrQWZ0ZXI6CiAg
ICAgY2FzZSBDU1NQcm9wZXJ0eVBhZ2VCcmVha0JlZm9yZToKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3N0eWxlL1Byb3BlcnR5Q2FzY2FkZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9Q
cm9wZXJ0eUNhc2NhZGUuY3BwCmluZGV4IDllOWIyOWI3YzQ1NDQ4NjE1MmVlYTNhZWU4Yzc2ZGVk
N2FkNzgxMGUuLmFjMDQ3MWI0OTQ4NDdhNzFmNTYwZTQwYmIxZjQyZTY4NjE0YmJjNGQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1Byb3BlcnR5Q2FzY2FkZS5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvc3R5bGUvUHJvcGVydHlDYXNjYWRlLmNwcApAQCAtNDcsMTMgKzQ3LDYgQEAg
c3RhdGljIGlubGluZSBib29sIHNob3VsZEFwcGx5UHJvcGVydHlJblBhcnNlT3JkZXIoQ1NTUHJv
cGVydHlJRCBwcm9wZXJ0eUlEKQogICAgIGNhc2UgQ1NTUHJvcGVydHlCYWNrZ3JvdW5kT3JpZ2lu
OgogICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRCYWNrZ3JvdW5kU2l6ZToKICAgICBjYXNlIENT
U1Byb3BlcnR5QmFja2dyb3VuZFNpemU6Ci0gICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEJvcmRl
ckltYWdlOgotICAgIGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJJbWFnZToKLSAgICBjYXNlIENTU1By
b3BlcnR5Qm9yZGVySW1hZ2VTbGljZToKLSAgICBjYXNlIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VT
b3VyY2U6Ci0gICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlckltYWdlT3V0c2V0OgotICAgIGNhc2Ug
Q1NTUHJvcGVydHlCb3JkZXJJbWFnZVJlcGVhdDoKLSAgICBjYXNlIENTU1Byb3BlcnR5Qm9yZGVy
SW1hZ2VXaWR0aDoKICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0Qm94U2hhZG93OgogICAgIGNh
c2UgQ1NTUHJvcGVydHlCb3hTaGFkb3c6CiAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdFRleHRE
ZWNvcmF0aW9uOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVCdWlsZGVy
Q29udmVydGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZUJ1aWxkZXJDb252ZXJ0ZXIu
aAppbmRleCA3NDY0Zjg0ZDhiZjZiMmIyYTMzMTIzZDU5MmJlMjkyZjE0Y2MyOGRlLi5iNzFiODky
MWQ1NDQxYjE1MmE3MzM2M2I2NDM1ZmUyOGZlODgxZmY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9zdHlsZS9TdHlsZUJ1aWxkZXJDb252ZXJ0ZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9z
dHlsZS9TdHlsZUJ1aWxkZXJDb252ZXJ0ZXIuaApAQCAtODUsNyArODUsNiBAQCBwdWJsaWM6CiAg
ICAgdGVtcGxhdGU8dHlwZW5hbWUgVD4gc3RhdGljIFQgY29udmVydE51bWJlcihCdWlsZGVyU3Rh
dGUmLCBjb25zdCBDU1NWYWx1ZSYpOwogICAgIHRlbXBsYXRlPHR5cGVuYW1lIFQ+IHN0YXRpYyBU
IGNvbnZlcnROdW1iZXJPckF1dG8oQnVpbGRlclN0YXRlJiwgY29uc3QgQ1NTVmFsdWUmKTsKICAg
ICBzdGF0aWMgc2hvcnQgY29udmVydFdlYmtpdEh5cGhlbmF0ZUxpbWl0TGluZXMoQnVpbGRlclN0
YXRlJiwgY29uc3QgQ1NTVmFsdWUmKTsKLSAgICB0ZW1wbGF0ZTxDU1NQcm9wZXJ0eUlEPiBzdGF0
aWMgTmluZVBpZWNlSW1hZ2UgY29udmVydEJvcmRlckltYWdlKEJ1aWxkZXJTdGF0ZSYsIENTU1Zh
bHVlJik7CiAgICAgdGVtcGxhdGU8Q1NTUHJvcGVydHlJRD4gc3RhdGljIE5pbmVQaWVjZUltYWdl
IGNvbnZlcnRCb3JkZXJNYXNrKEJ1aWxkZXJTdGF0ZSYsIENTU1ZhbHVlJik7CiAgICAgdGVtcGxh
dGU8Q1NTUHJvcGVydHlJRD4gc3RhdGljIFJlZlB0cjxTdHlsZUltYWdlPiBjb252ZXJ0U3R5bGVJ
bWFnZShCdWlsZGVyU3RhdGUmLCBDU1NWYWx1ZSYpOwogICAgIHN0YXRpYyBJbWFnZU9yaWVudGF0
aW9uIGNvbnZlcnRJbWFnZU9yaWVudGF0aW9uKEJ1aWxkZXJTdGF0ZSYsIGNvbnN0IENTU1ZhbHVl
Jik7CkBAIC00NjQsMTkgKzQ2MywxMSBAQCBpbmxpbmUgc2hvcnQgQnVpbGRlckNvbnZlcnRlcjo6
Y29udmVydFdlYmtpdEh5cGhlbmF0ZUxpbWl0TGluZXMoQnVpbGRlclN0YXRlJiwgYwogICAgIHJl
dHVybiBwcmltaXRpdmVWYWx1ZS52YWx1ZTxzaG9ydD4oQ1NTVW5pdFR5cGU6OkNTU19OVU1CRVIp
OwogfQogCi10ZW1wbGF0ZTxDU1NQcm9wZXJ0eUlEIHByb3BlcnR5PgotaW5saW5lIE5pbmVQaWVj
ZUltYWdlIEJ1aWxkZXJDb252ZXJ0ZXI6OmNvbnZlcnRCb3JkZXJJbWFnZShCdWlsZGVyU3RhdGUm
IGJ1aWxkZXJTdGF0ZSwgQ1NTVmFsdWUmIHZhbHVlKQotewotICAgIE5pbmVQaWVjZUltYWdlIGlt
YWdlOwotICAgIGJ1aWxkZXJTdGF0ZS5zdHlsZU1hcCgpLm1hcE5pbmVQaWVjZUltYWdlKHByb3Bl
cnR5LCAmdmFsdWUsIGltYWdlKTsKLSAgICByZXR1cm4gaW1hZ2U7Ci19Ci0KIHRlbXBsYXRlPENT
U1Byb3BlcnR5SUQgcHJvcGVydHk+CiBpbmxpbmUgTmluZVBpZWNlSW1hZ2UgQnVpbGRlckNvbnZl
cnRlcjo6Y29udmVydEJvcmRlck1hc2soQnVpbGRlclN0YXRlJiBidWlsZGVyU3RhdGUsIENTU1Zh
bHVlJiB2YWx1ZSkKIHsKICAgICBOaW5lUGllY2VJbWFnZSBpbWFnZShOaW5lUGllY2VJbWFnZTo6
VHlwZTo6TWFzayk7Ci0gICAgYnVpbGRlclN0YXRlLnN0eWxlTWFwKCkubWFwTmluZVBpZWNlSW1h
Z2UocHJvcGVydHksICZ2YWx1ZSwgaW1hZ2UpOworICAgIGJ1aWxkZXJTdGF0ZS5zdHlsZU1hcCgp
Lm1hcE5pbmVQaWVjZUltYWdlKCZ2YWx1ZSwgaW1hZ2UpOwogICAgIHJldHVybiBpbWFnZTsKIH0K
IApAQCAtODA5LDcgKzgwMCw3IEBAIGlubGluZSBSZWZQdHI8U3R5bGVSZWZsZWN0aW9uPiBCdWls
ZGVyQ29udmVydGVyOjpjb252ZXJ0UmVmbGVjdGlvbihCdWlsZGVyU3RhdGUmCiAgICAgcmVmbGVj
dGlvbi0+c2V0T2Zmc2V0KHJlZmxlY3RWYWx1ZS5vZmZzZXQoKS5jb252ZXJ0VG9MZW5ndGg8Rml4
ZWRJbnRlZ2VyQ29udmVyc2lvbiB8IFBlcmNlbnRDb252ZXJzaW9uIHwgQ2FsY3VsYXRlZENvbnZl
cnNpb24+KGJ1aWxkZXJTdGF0ZS5jc3NUb0xlbmd0aENvbnZlcnNpb25EYXRhKCkpKTsKIAogICAg
IE5pbmVQaWVjZUltYWdlIG1hc2soTmluZVBpZWNlSW1hZ2U6OlR5cGU6Ok1hc2spOwotICAgIGJ1
aWxkZXJTdGF0ZS5zdHlsZU1hcCgpLm1hcE5pbmVQaWVjZUltYWdlKENTU1Byb3BlcnR5V2Via2l0
Qm94UmVmbGVjdCwgcmVmbGVjdFZhbHVlLm1hc2soKSwgbWFzayk7CisgICAgYnVpbGRlclN0YXRl
LnN0eWxlTWFwKCkubWFwTmluZVBpZWNlSW1hZ2UocmVmbGVjdFZhbHVlLm1hc2soKSwgbWFzayk7
CiAgICAgcmVmbGVjdGlvbi0+c2V0TWFzayhtYXNrKTsKIAogICAgIHJldHVybiByZWZsZWN0aW9u
OwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCmluZGV4IDUxNzdlZDkyOTgwZGQ4ZDRiYTRiZjNhZjNkMTQxMDZhNjJmZDZiODcuLjlhNTBj
OWFjMWJlZDg4NWExYmJlN2ZkY2Q3YmJmNTk1NWQwZTI1YmEgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzMCBA
QAorMjAyMi0wMy0xNCAgT3Jpb2wgQnJ1ZmF1ICA8b2JydWZhdUBpZ2FsaWEuY29tPgorCisgICAg
ICAgIFtjc3NdIFR1cm4gLXdlYmtpdC1ib3JkZXItaW1hZ2UgaW50byBhIHNob3J0aGFuZAorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM3NDg3CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVXBkYXRlIHRlc3Rz
IHRvIHRha2UgaW50byBhY2NvdW50IHRoYXQgJy13ZWJraXQtYm9yZGVyLWltYWdlJyBpcyBhIHNo
b3J0aGFuZC4KKworICAgICAgICAqIGZhc3QvY3NzL2JvcmRlci1pbWFnZS1zdHlsZS1sZW5ndGgt
ZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3QvY3NzL2JvcmRlci1pbWFnZS1zdHlsZS1sZW5n
dGguaHRtbDoKKyAgICAgICAgKiBmYXN0L2Nzcy9nZXRDb21wdXRlZFN0eWxlL2NvbXB1dGVkLXN0
eWxlLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBmYXN0L2Nzcy9nZXRDb21wdXRlZFN0eWxlL2Nv
bXB1dGVkLXN0eWxlLXdpdGhvdXQtcmVuZGVyZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZh
c3QvY3NzL2dldENvbXB1dGVkU3R5bGUvcmVzb3VyY2VzL3Byb3BlcnR5LW5hbWVzLmpzOgorICAg
ICAgICAqIGZhc3QvY3NzL2ltYWdlLXNldC1wYXJzaW5nLWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
KiBmYXN0L2Nzcy9pbWFnZS1zZXQtcGFyc2luZy5odG1sOgorICAgICAgICAqIGZhc3QvY3NzL3Bh
cnNlLWJvcmRlci1pbWFnZS1yZXBlYXQtbnVsbC1jcmFzaC1leHBlY3RlZC50eHQ6CisgICAgICAg
ICogZmFzdC9jc3MvdXJpLXRva2VuLXBhcnNpbmctZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZh
c3QvY3NzL3VyaS10b2tlbi1wYXJzaW5nLmh0bWw6CisgICAgICAgICogcGxhdGZvcm0vZ3RrL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jYXNjYWRlL2FsbC1wcm9wLWlu
aXRpYWwteG1sLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ndGsvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nzb20vZ2V0Q29tcHV0ZWRTdHlsZS1kZXRhY2hl
ZC1zdWJ0cmVlLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBwbGF0Zm9ybS9pb3MvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNhc2NhZGUvYWxsLXByb3AtaW5pdGlhbC14
bWwtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHBsYXRmb3JtL2lvcy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS9nZXRDb21wdXRlZFN0eWxlLWRldGFjaGVkLXN1YnRy
ZWUtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHBsYXRmb3JtL3dwZS9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY2FzY2FkZS9hbGwtcHJvcC1pbml0aWFsLXhtbC1leHBl
Y3RlZC50eHQ6CisgICAgICAgICogcGxhdGZvcm0vd3BlL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvY3NzL2Nzc29tL2dldENvbXB1dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS1leHBl
Y3RlZC50eHQ6CisgICAgICAgICogc3ZnL2Nzcy9nZXRDb21wdXRlZFN0eWxlLWJhc2ljLWV4cGVj
dGVkLnR4dDoKKwogMjAyMi0wMy0xNCAgQW50b2luZSBRdWludCAgPGdyYW91dHNAd2Via2l0Lm9y
Zz4KIAogICAgICAgICBbbW9kZWxdIDxtb2RlbCBpbnRlcmFjdGl2ZT4gZG9lc24ndCBhbGxvdyBt
b2RlbCB0byBiZSByb3RhdGVkIG9uIGlPUwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKaW5k
ZXggZTE4Yjg4ZTQ0Yzk5NmJmMDcyZGY3ZDE4ZDMxOGUwNjI0MDkyOTM4OC4uOGQ4MDVkNGU2MWQ5
ZGFmNzA1ODBhMDRhYzhlNDM3YmJjMGZiZDYwOSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMjItMDMtMTQgIE9yaW9sIEJydWZhdSAgPG9icnVmYXVA
aWdhbGlhLmNvbT4KKworICAgICAgICBbY3NzXSBUdXJuIC13ZWJraXQtYm9yZGVyLWltYWdlIGlu
dG8gYSBzaG9ydGhhbmQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIzNzQ4NworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIFVwZGF0ZSB0ZXN0cyB0byB0YWtlIGludG8gYWNjb3VudCB0aGF0ICctd2Via2l0LWJv
cmRlci1pbWFnZScgaXMgYSBzaG9ydGhhbmQuCisKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVz
dHMvY3NzL2Nzcy1iYWNrZ3JvdW5kcy9wYXJzaW5nL2JvcmRlci1pbWFnZS12YWxpZC1leHBlY3Rl
ZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtYmFja2dyb3VuZHMv
cGFyc2luZy9ib3JkZXItaW1hZ2UtdmFsaWQuaHRtbDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL2Nzc29tL2dldENvbXB1dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS1leHBlY3Rl
ZC50eHQ6CisKIDIwMjItMDMtMTQgIEFudG9pbmUgUXVpbnQgIDxncmFvdXRzQHdlYmtpdC5vcmc+
CiAKICAgICAgICAgW3dlYi1hbmltYXRpb25zXSBtYXJrZXItc3RhcnQgc2hvdWxkIHN1cHBvcnQg
ZGlzY3JldGUgYW5pbWF0aW9uCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9ib3Jk
ZXItaW1hZ2Utc3R5bGUtbGVuZ3RoLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvY3Nz
L2JvcmRlci1pbWFnZS1zdHlsZS1sZW5ndGgtZXhwZWN0ZWQudHh0CmluZGV4IDYyNmViZmI0ZjIx
ZjAyNDk5MTVjZGM3YjZmZDJhOTc1M2RiZTJhZmEuLjlkYzc2YTE2NTBmMTA3ZTg0YzI3N2EyMzRi
ZjJlYTQwYzQwNDQ5ZDAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL2JvcmRlci1p
bWFnZS1zdHlsZS1sZW5ndGgtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3Nz
L2JvcmRlci1pbWFnZS1zdHlsZS1sZW5ndGgtZXhwZWN0ZWQudHh0CkBAIC01LDcgKzUsNyBAQCBP
biBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xs
b3dlZCBieSAiVEVTVCBDT01QTEVURQogCiBQQVNTIGUuc3R5bGUubGVuZ3RoIGlzIDUKIFBBU1Mg
ZS5zdHlsZS5sZW5ndGggaXMgMAotUEFTUyBlLnN0eWxlLmxlbmd0aCBpcyAxCitQQVNTIGUuc3R5
bGUubGVuZ3RoIGlzIDUKIFBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKIAogVEVTVCBD
T01QTEVURQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvYm9yZGVyLWltYWdlLXN0
eWxlLWxlbmd0aC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvYm9yZGVyLWltYWdlLXN0eWxl
LWxlbmd0aC5odG1sCmluZGV4IDRlNDM2OTMwNDIxMDc3ZjAwOGQ3Yzc4MTM4Yjc5Yjc2YzI3ODBj
OGUuLmEyNzlmZGVjN2M4ZjIyODYzNzI5MTUzZThiNzZjNjA1M2FiYmI2OTAgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2Zhc3QvY3NzL2JvcmRlci1pbWFnZS1zdHlsZS1sZW5ndGguaHRtbAorKysg
Yi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9ib3JkZXItaW1hZ2Utc3R5bGUtbGVuZ3RoLmh0bWwKQEAg
LTIwLDcgKzIwLDcgQEAgc2hvdWxkQmUoImUuc3R5bGUubGVuZ3RoIiwgIjUiKTsKIGUuc3R5bGUu
Ym9yZGVySW1hZ2UgPSAiIjsKIHNob3VsZEJlKCJlLnN0eWxlLmxlbmd0aCIsICIwIik7CiBlLnN0
eWxlLndlYmtpdEJvcmRlckltYWdlID0gInVybChkdW1teTovL3Rlc3QucG5nKSAwIDcgMCAxMyAv
IDAgNyAwIDEzIHN0cmV0Y2ggc3RyZXRjaCI7Ci1zaG91bGRCZSgiZS5zdHlsZS5sZW5ndGgiLCAi
MSIpOworc2hvdWxkQmUoImUuc3R5bGUubGVuZ3RoIiwgIjUiKTsKIGRvY3VtZW50LmJvZHkucmVt
b3ZlQ2hpbGQodGVzdENvbnRhaW5lcik7CiAKIDwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZmFzdC9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS9jb21wdXRlZC1zdHlsZS1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9nZXRDb21wdXRlZFN0eWxlL2NvbXB1dGVkLXN0eWxl
LWV4cGVjdGVkLnR4dAppbmRleCA2ZThlYzNkODVjZDFlYzkwNzljNGMwMTFlMTkzYmM2YjRkMTc2
MzRlLi44NDY4ZDE2M2UxNGI3MTk1YmJiNmZkYmYzMWRhMDU3MTAxMWM5ZTdjIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9nZXRDb21wdXRlZFN0eWxlL2NvbXB1dGVkLXN0eWxlLWV4
cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9nZXRDb21wdXRlZFN0eWxlL2Nv
bXB1dGVkLXN0eWxlLWV4cGVjdGVkLnR4dApAQCAtMjEwLDcgKzIxMCw2IEBAIHpvb206IDE7CiAt
d2Via2l0LWJhY2tncm91bmQtb3JpZ2luOiBwYWRkaW5nLWJveDsKIC13ZWJraXQtYmFja2dyb3Vu
ZC1zaXplOiBhdXRvOwogLXdlYmtpdC1ib3JkZXItaG9yaXpvbnRhbC1zcGFjaW5nOiAwcHg7Ci0t
d2Via2l0LWJvcmRlci1pbWFnZTogbm9uZTsKIC13ZWJraXQtYm9yZGVyLXZlcnRpY2FsLXNwYWNp
bmc6IDBweDsKIC13ZWJraXQtYm94LWFsaWduOiBzdHJldGNoOwogLXdlYmtpdC1ib3gtZGVjb3Jh
dGlvbi1icmVhazogc2xpY2U7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9nZXRD
b21wdXRlZFN0eWxlL2NvbXB1dGVkLXN0eWxlLXdpdGhvdXQtcmVuZGVyZXItZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS9jb21wdXRlZC1zdHlsZS13
aXRob3V0LXJlbmRlcmVyLWV4cGVjdGVkLnR4dAppbmRleCAwOWVlMDUyZThlYTBkODQ0OGY3NjA4
NjYzYmNmNjhiYjVhMDU1OTZlLi5jN2YxYzk3MjIyYmIwMzFiMWMxY2Y1MWM3M2ZjODFhMzk1NmRj
ZTdlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9nZXRDb21wdXRlZFN0eWxlL2Nv
bXB1dGVkLXN0eWxlLXdpdGhvdXQtcmVuZGVyZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRl
c3RzL2Zhc3QvY3NzL2dldENvbXB1dGVkU3R5bGUvY29tcHV0ZWQtc3R5bGUtd2l0aG91dC1yZW5k
ZXJlci1leHBlY3RlZC50eHQKQEAgLTIwOSw3ICsyMDksNiBAQCB6b29tOiAxCiAtd2Via2l0LWJh
Y2tncm91bmQtb3JpZ2luOiBwYWRkaW5nLWJveAogLXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6IGF1
dG8KIC13ZWJraXQtYm9yZGVyLWhvcml6b250YWwtc3BhY2luZzogMHB4Ci0td2Via2l0LWJvcmRl
ci1pbWFnZTogbm9uZQogLXdlYmtpdC1ib3JkZXItdmVydGljYWwtc3BhY2luZzogMHB4CiAtd2Vi
a2l0LWJveC1hbGlnbjogc3RyZXRjaAogLXdlYmtpdC1ib3gtZGVjb3JhdGlvbi1icmVhazogc2xp
Y2UKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL2dldENvbXB1dGVkU3R5bGUvcmVz
b3VyY2VzL3Byb3BlcnR5LW5hbWVzLmpzIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvZ2V0Q29tcHV0
ZWRTdHlsZS9yZXNvdXJjZXMvcHJvcGVydHktbmFtZXMuanMKaW5kZXggZWIzNGZkZTYxYzZjODNk
NzczM2EzZDM2NWJiYTE4MDFhOWFhNjA5NC4uZjFmZjhmNDA2YjZjOTY4YmU2MjU0YmNmZDdjZjQ4
NzU3MmUzNTgzZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvZ2V0Q29tcHV0ZWRT
dHlsZS9yZXNvdXJjZXMvcHJvcGVydHktbmFtZXMuanMKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9j
c3MvZ2V0Q29tcHV0ZWRTdHlsZS9yZXNvdXJjZXMvcHJvcGVydHktbmFtZXMuanMKQEAgLTE3LDcg
KzE3LDYgQEAgdmFyIHByb3BlcnRpZXNUb1Rlc3QgPSB7CiAgICAgIi13ZWJraXQtYmFja2dyb3Vu
ZC1vcmlnaW4iOiB0cnVlLAogICAgICItd2Via2l0LWJhY2tncm91bmQtc2l6ZSI6IHRydWUsCiAg
ICAgIi13ZWJraXQtYm9yZGVyLWhvcml6b250YWwtc3BhY2luZyI6IHRydWUsCi0gICAgIi13ZWJr
aXQtYm9yZGVyLWltYWdlIjogdHJ1ZSwKICAgICAiLXdlYmtpdC1ib3JkZXItdmVydGljYWwtc3Bh
Y2luZyI6IHRydWUsCiAgICAgIi13ZWJraXQtYm94LWFsaWduIjogdHJ1ZSwKICAgICAiLXdlYmtp
dC1ib3gtZGVjb3JhdGlvbi1icmVhayI6IHRydWUsCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9m
YXN0L2Nzcy9pbWFnZS1zZXQtcGFyc2luZy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0
L2Nzcy9pbWFnZS1zZXQtcGFyc2luZy1leHBlY3RlZC50eHQKaW5kZXggMzBhYTYxOTU5Yzg1YWU4
MjNkY2QxZjVlODgzYTQ4NjY5ZDk0ODBmZC4uZDlhZDEwZmM0NWQzN2UzZGViZGZiZjk0NDBhNzA1
ZDhjOTNjMTI0MSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvaW1hZ2Utc2V0LXBh
cnNpbmctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL2ltYWdlLXNldC1w
YXJzaW5nLWV4cGVjdGVkLnR4dApAQCAtODAsNyArODAsNyBAQCBQQVNTIHN1YlJ1bGUuY3NzVGV4
dCBpcyAnMXgnCiBQQVNTIHN1YlJ1bGUgaXMgJ2InCiBQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAn
MngnCiAKLVNpbmdsZSB2YWx1ZSBmb3IgYm9yZGVyLWltYWdlIDogdXJsKCcjYScpIDF4CitTaW5n
bGUgdmFsdWUgZm9yIGJvcmRlci1pbWFnZS1zb3VyY2UgOiB1cmwoJyNhJykgMXgKIFBBU1MganNX
cmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwogUEFTUyBqc1dyYXBw
ZXJDbGFzcyhpbWFnZVNldFJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0JwogUEFTUyBq
c1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuY29uc3RydWN0b3IpIGlzICdGdW5jdGlvbicKQEAg
LTg4LDcgKzg4LDcgQEAgUEFTUyBpbWFnZVNldFJ1bGUubGVuZ3RoIGlzIDIKIFBBU1Mgc3ViUnVs
ZSBpcyAnYScKIFBBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcxeCcKIAotTXVsdGlwbGUgdmFsdWVz
IGZvciBib3JkZXItaW1hZ2UgOiB1cmwoJyNhJykgMXgsIHVybCgnI2InKSAyeAorTXVsdGlwbGUg
dmFsdWVzIGZvciBib3JkZXItaW1hZ2Utc291cmNlIDogdXJsKCcjYScpIDF4LCB1cmwoJyNiJykg
MngKIFBBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0Jwog
UEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVM
aXN0JwogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuY29uc3RydWN0b3IpIGlzICdG
dW5jdGlvbicKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL2ltYWdlLXNldC1wYXJz
aW5nLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9pbWFnZS1zZXQtcGFyc2luZy5odG1sCmlu
ZGV4IGM3YjhmMjg5NTAzYzdhMjYyMmRmNGNhMzk5ZTQzNTE2OWY1ODBkNTQuLjhiODE3NWNmNDky
ZjA2NjA5ZjM4NDRiNDY4NTdkNTNkMzZjMmI2MzEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zh
c3QvY3NzL2ltYWdlLXNldC1wYXJzaW5nLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3Mv
aW1hZ2Utc2V0LXBhcnNpbmcuaHRtbApAQCAtMTA3LDEzICsxMDcsMTMgQEAgdGVzdEltYWdlU2V0
UnVsZSgiTXVsdGlwbGUgdmFsdWVzIGZvciBjb250ZW50IiwKICAgICAgICAgICAgICAgICAidXJs
KCcjYScpIDF4LCB1cmwoJyNiJykgMngiLCA0LAogICAgICAgICAgICAgICAgIFsiYSIsICIxeCIs
ICJiIiwgIjJ4Il0pOwogCi10ZXN0SW1hZ2VTZXRSdWxlKCJTaW5nbGUgdmFsdWUgZm9yIGJvcmRl
ci1pbWFnZSIsCi0gICAgICAgICAgICAgICAgIi13ZWJraXQtYm9yZGVyLWltYWdlIiwKK3Rlc3RJ
bWFnZVNldFJ1bGUoIlNpbmdsZSB2YWx1ZSBmb3IgYm9yZGVyLWltYWdlLXNvdXJjZSIsCisgICAg
ICAgICAgICAgICAgImJvcmRlci1pbWFnZS1zb3VyY2UiLAogICAgICAgICAgICAgICAgICJ1cmwo
JyNhJykgMXgiLCAyLAogICAgICAgICAgICAgICAgIFsiYSIsICIxeCJdKTsKIAotdGVzdEltYWdl
U2V0UnVsZSgiTXVsdGlwbGUgdmFsdWVzIGZvciBib3JkZXItaW1hZ2UiLAotICAgICAgICAgICAg
ICAgICItd2Via2l0LWJvcmRlci1pbWFnZSIsCit0ZXN0SW1hZ2VTZXRSdWxlKCJNdWx0aXBsZSB2
YWx1ZXMgZm9yIGJvcmRlci1pbWFnZS1zb3VyY2UiLAorICAgICAgICAgICAgICAgICJib3JkZXIt
aW1hZ2Utc291cmNlIiwKICAgICAgICAgICAgICAgICAidXJsKCcjYScpIDF4LCB1cmwoJyNiJykg
MngiLCA0LAogICAgICAgICAgICAgICAgIFsiYSIsICIxeCIsICJiIiwgIjJ4Il0pOwogCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9wYXJzZS1ib3JkZXItaW1hZ2UtcmVwZWF0LW51
bGwtY3Jhc2gtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvcGFyc2UtYm9yZGVy
LWltYWdlLXJlcGVhdC1udWxsLWNyYXNoLWV4cGVjdGVkLnR4dAppbmRleCBlOWVhNTQwYTIzZDVl
YTA4MWE3NmM3NGYwZjMwMmRhZjIyMGNjYmU5Li5mMmMxYzgwYWVjNWYxNDk4NzdhYTQ3MzZjMzA3
NWE1NDBkN2RmNGNjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9wYXJzZS1ib3Jk
ZXItaW1hZ2UtcmVwZWF0LW51bGwtY3Jhc2gtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3Rz
L2Zhc3QvY3NzL3BhcnNlLWJvcmRlci1pbWFnZS1yZXBlYXQtbnVsbC1jcmFzaC1leHBlY3RlZC50
eHQKQEAgLTEsMiArMSwyIEBACi1DT05TT0xFIE1FU1NBR0U6IGJvcmRlci1pbWFnZS1zb3VyY2U6
IHVybCgiaW1hZ2VzL3NoYWRvdy1ib3JkZXIucG5nIik7IGJvcmRlci1pbWFnZS1zbGljZTogMTA7
IGJvcmRlci1pbWFnZS1yZXBlYXQ6IHN0cmV0Y2g7CitDT05TT0xFIE1FU1NBR0U6IGJvcmRlci1p
bWFnZTogdXJsKCJpbWFnZXMvc2hhZG93LWJvcmRlci5wbmciKSAxMCBzdHJldGNoOwogVGhpcyB0
ZXN0IHNob3VsZCBub3QgY3Jhc2gKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL3Vy
aS10b2tlbi1wYXJzaW5nLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3VyaS10
b2tlbi1wYXJzaW5nLWV4cGVjdGVkLnR4dAppbmRleCA3ZTZkNjFkYmJlNjE5N2YwYmI1OGFjZTY1
N2Q0ZjQ2OTAxZjUzODRlLi44NzVhOGE5NmUwZTUzNjMyODQxNGNiN2UwZjQ1MTQwMzU5MzYyYzQw
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy91cmktdG9rZW4tcGFyc2luZy1leHBl
Y3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdXJpLXRva2VuLXBhcnNpbmctZXhw
ZWN0ZWQudHh0CkBAIC0yMiw3ICsyMiw3IEBAIFJ1bGVzIGZyb20gdGhlIHN0eWxlc2hlZXQ6CiAj
ciB7IGxpc3Qtc3R5bGUtaW1hZ2U6IHVybCgidXJsKHIpIik7IH0KICNzIHsgYmFja2dyb3VuZC1p
bWFnZTogdXJsKCJ1cmwocykiKTsgfQogI3QgeyBtYXNrLWltYWdlOiB1cmwoInVybCh0KSIpOyB9
Ci0jdSB7IC13ZWJraXQtYm9yZGVyLWltYWdlOiB1cmwoInVybCh1KSIpIDEgMiAzIDQgZmlsbCBz
dHJldGNoIHJvdW5kOyB9CisjdSB7IGJvcmRlci1pbWFnZTogdXJsKCJ1cmwodSkiKSAxIDIgMyA0
IGZpbGwgc3RyZXRjaCByb3VuZDsgfQogI3YgeyAtd2Via2l0LW1hc2stYm94LWltYWdlOiB1cmwo
InVybCh2KSIpIDEgMiAzIDQgZmlsbCBzdHJldGNoIHJvdW5kOyB9CiAjdyB7IGNvbnRlbnQ6IHVy
bCgid1xkIHciKTsgfQogI3ggeyBjb250ZW50OiB1cmwoIiB4IHhcOSB4ICIpOyB9CkBAIC00Nyw3
ICs0Nyw3IEBAIEV4cGVjdGVkIHJlc3VsdDoKICNyIHsgbGlzdC1zdHlsZS1pbWFnZTogdXJsKCJ1
cmwocikiKTsgfQogI3MgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoInVybChzKSIpOyB9CiAjdCB7
IG1hc2staW1hZ2U6IHVybCgidXJsKHQpIik7IH0KLSN1IHsgLXdlYmtpdC1ib3JkZXItaW1hZ2U6
IHVybCgidXJsKHUpIikgMSAyIDMgNCBmaWxsIHN0cmV0Y2ggcm91bmQ7IH0KKyN1IHsgYm9yZGVy
LWltYWdlOiB1cmwoInVybCh1KSIpIDEgMiAzIDQgZmlsbCBzdHJldGNoIHJvdW5kOyB9CiAjdiB7
IC13ZWJraXQtbWFzay1ib3gtaW1hZ2U6IHVybCgidXJsKHYpIikgMSAyIDMgNCBmaWxsIHN0cmV0
Y2ggcm91bmQ7IH0KICN3IHsgY29udGVudDogdXJsKCJ3XGQgdyIpOyB9CiAjeCB7IGNvbnRlbnQ6
IHVybCgiIHggeFw5IHggIik7IH0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL3Vy
aS10b2tlbi1wYXJzaW5nLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy91cmktdG9rZW4tcGFy
c2luZy5odG1sCmluZGV4IGUxNDk2YjFhNGZiNDY4MTcxNjgzMmRjZTYxN2RjNDU1YTZkMzE4OTAu
LmRhN2I3MDc0Y2RlN2U3NzcwNDU4YmIwOTNlNjNiMTI0MzQ0NmExNTggMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2Zhc3QvY3NzL3VyaS10b2tlbi1wYXJzaW5nLmh0bWwKKysrIGIvTGF5b3V0VGVz
dHMvZmFzdC9jc3MvdXJpLXRva2VuLXBhcnNpbmcuaHRtbApAQCAtOTAsNyArOTAsNyBAQCBmdW5j
dGlvbiBydW5UZXN0KCkKICNyIHsgbGlzdC1zdHlsZS1pbWFnZTogdXJsKCJ1cmwocikiKTsgfQog
I3MgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoInVybChzKSIpOyB9CiAjdCB7IG1hc2staW1hZ2U6
IHVybCgidXJsKHQpIik7IH0KLSN1IHsgLXdlYmtpdC1ib3JkZXItaW1hZ2U6IHVybCgidXJsKHUp
IikgMSAyIDMgNCBmaWxsIHN0cmV0Y2ggcm91bmQ7IH0KKyN1IHsgYm9yZGVyLWltYWdlOiB1cmwo
InVybCh1KSIpIDEgMiAzIDQgZmlsbCBzdHJldGNoIHJvdW5kOyB9CiAjdiB7IC13ZWJraXQtbWFz
ay1ib3gtaW1hZ2U6IHVybCgidXJsKHYpIikgMSAyIDMgNCBmaWxsIHN0cmV0Y2ggcm91bmQ7IH0K
ICN3IHsgY29udGVudDogdXJsKCJ3XGQgdyIpOyB9CiAjeCB7IGNvbnRlbnQ6IHVybCgiIHggeFw5
IHggIik7IH0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvY3NzL2Nzcy1iYWNrZ3JvdW5kcy9wYXJzaW5nL2JvcmRlci1pbWFnZS12YWxpZC1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2Nzcy9jc3MtYmFja2dyb3VuZHMvcGFyc2luZy9ib3JkZXItaW1hZ2UtdmFsaWQtZXhwZWN0ZWQu
dHh0CmluZGV4IGIxM2Q0ZTQzMDExMTg5YWM4ZTgwNzE5ZWFmYTA0NDdkYmI3YzMyNjYuLjIzMjg5
OWExYzA3YWZjNGFlMTMwYWZlZDU5ZDNkNWQ3Yzg5NDg0ZmUgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1iYWNrZ3JvdW5kcy9w
YXJzaW5nL2JvcmRlci1pbWFnZS12YWxpZC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWJhY2tncm91bmRzL3BhcnNp
bmcvYm9yZGVyLWltYWdlLXZhbGlkLWV4cGVjdGVkLnR4dApAQCAtMSwzMiArMSwzMiBAQAogCi1G
QUlMIGUuc3R5bGVbJ2JvcmRlci1pbWFnZSddID0gIm5vbmUiIHNob3VsZCBzZXQgdGhlIHByb3Bl
cnR5IHZhbHVlIGFzc2VydF9ub3RfZXF1YWxzOiBwcm9wZXJ0eSBzaG91bGQgYmUgc2V0IGdvdCBk
aXNhbGxvd2VkIHZhbHVlICIiCi1GQUlMIGUuc3R5bGVbJ2JvcmRlci1pbWFnZSddID0gInN0cmV0
Y2giIHNob3VsZCBzZXQgdGhlIHByb3BlcnR5IHZhbHVlIGFzc2VydF9ub3RfZXF1YWxzOiBwcm9w
ZXJ0eSBzaG91bGQgYmUgc2V0IGdvdCBkaXNhbGxvd2VkIHZhbHVlICIiCi1GQUlMIGUuc3R5bGVb
J2JvcmRlci1pbWFnZSddID0gIm5vbmUgMTAwJSAvIDEgLyAwIHN0cmV0Y2giIHNob3VsZCBzZXQg
dGhlIHByb3BlcnR5IHZhbHVlIGFzc2VydF9ub3RfZXF1YWxzOiBwcm9wZXJ0eSBzaG91bGQgYmUg
c2V0IGdvdCBkaXNhbGxvd2VkIHZhbHVlICIiCi1GQUlMIGUuc3R5bGVbJ2JvcmRlci1pbWFnZSdd
ID0gInVybChcImh0dHA6Ly93d3cuZXhhbXBsZS5jb20vXCIpIDEgMiAzIDQgZmlsbCIgc2hvdWxk
IHNldCB0aGUgcHJvcGVydHkgdmFsdWUgYXNzZXJ0X25vdF9lcXVhbHM6IHByb3BlcnR5IHNob3Vs
ZCBiZSBzZXQgZ290IGRpc2FsbG93ZWQgdmFsdWUgIiIKLUZBSUwgZS5zdHlsZVsnYm9yZGVyLWlt
YWdlJ10gPSAidXJsKFwiaHR0cDovL3d3dy5leGFtcGxlLmNvbS9cIikgMSAyIDMgNCBmaWxsIC8g
MSAvIDAgc3RyZXRjaCIgc2hvdWxkIHNldCB0aGUgcHJvcGVydHkgdmFsdWUgYXNzZXJ0X25vdF9l
cXVhbHM6IHByb3BlcnR5IHNob3VsZCBiZSBzZXQgZ290IGRpc2FsbG93ZWQgdmFsdWUgIiIKLUZB
SUwgZS5zdHlsZVsnYm9yZGVyLWltYWdlJ10gPSAidXJsKFwiaHR0cDovL3d3dy5leGFtcGxlLmNv
bS9cIikiIHNob3VsZCBzZXQgdGhlIHByb3BlcnR5IHZhbHVlIGFzc2VydF9ub3RfZXF1YWxzOiBw
cm9wZXJ0eSBzaG91bGQgYmUgc2V0IGdvdCBkaXNhbGxvd2VkIHZhbHVlICIiCi1GQUlMIGUuc3R5
bGVbJ2JvcmRlci1pbWFnZSddID0gInJlcGVhdCByb3VuZCIgc2hvdWxkIHNldCB0aGUgcHJvcGVy
dHkgdmFsdWUgYXNzZXJ0X25vdF9lcXVhbHM6IHByb3BlcnR5IHNob3VsZCBiZSBzZXQgZ290IGRp
c2FsbG93ZWQgdmFsdWUgIiIKLUZBSUwgZS5zdHlsZVsnYm9yZGVyLWltYWdlJ10gPSAibm9uZSBy
ZXBlYXQgcm91bmQiIHNob3VsZCBzZXQgdGhlIHByb3BlcnR5IHZhbHVlIGFzc2VydF9ub3RfZXF1
YWxzOiBwcm9wZXJ0eSBzaG91bGQgYmUgc2V0IGdvdCBkaXNhbGxvd2VkIHZhbHVlICIiCi1GQUlM
IGUuc3R5bGVbJ2JvcmRlci1pbWFnZSddID0gInNwYWNlIiBzaG91bGQgc2V0IHRoZSBwcm9wZXJ0
eSB2YWx1ZSBhc3NlcnRfbm90X2VxdWFsczogcHJvcGVydHkgc2hvdWxkIGJlIHNldCBnb3QgZGlz
YWxsb3dlZCB2YWx1ZSAiIgotRkFJTCBlLnN0eWxlWydib3JkZXItaW1hZ2UnXSA9ICJub25lIHNw
YWNlIHNwYWNlIiBzaG91bGQgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZSBhc3NlcnRfbm90X2VxdWFs
czogcHJvcGVydHkgc2hvdWxkIGJlIHNldCBnb3QgZGlzYWxsb3dlZCB2YWx1ZSAiIgotRkFJTCBl
LnN0eWxlWydib3JkZXItaW1hZ2UnXSA9ICJub25lIDEwMCUgLyAxIC8gMCBzcGFjZSIgc2hvdWxk
IHNldCB0aGUgcHJvcGVydHkgdmFsdWUgYXNzZXJ0X25vdF9lcXVhbHM6IHByb3BlcnR5IHNob3Vs
ZCBiZSBzZXQgZ290IGRpc2FsbG93ZWQgdmFsdWUgIiIKLUZBSUwgZS5zdHlsZVsnYm9yZGVyLWlt
YWdlJ10gPSAiMSIgc2hvdWxkIHNldCB0aGUgcHJvcGVydHkgdmFsdWUgYXNzZXJ0X25vdF9lcXVh
bHM6IHByb3BlcnR5IHNob3VsZCBiZSBzZXQgZ290IGRpc2FsbG93ZWQgdmFsdWUgIiIKLUZBSUwg
ZS5zdHlsZVsnYm9yZGVyLWltYWdlJ10gPSAibm9uZSAxIDEgMSAxIiBzaG91bGQgc2V0IHRoZSBw
cm9wZXJ0eSB2YWx1ZSBhc3NlcnRfbm90X2VxdWFsczogcHJvcGVydHkgc2hvdWxkIGJlIHNldCBn
b3QgZGlzYWxsb3dlZCB2YWx1ZSAiIgotRkFJTCBlLnN0eWxlWydib3JkZXItaW1hZ2UnXSA9ICJu
b25lIDEgLyAxIC8gMCBzdHJldGNoIiBzaG91bGQgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZSBhc3Nl
cnRfbm90X2VxdWFsczogcHJvcGVydHkgc2hvdWxkIGJlIHNldCBnb3QgZGlzYWxsb3dlZCB2YWx1
ZSAiIgotRkFJTCBlLnN0eWxlWydib3JkZXItaW1hZ2UnXSA9ICJ1cmwoXCJodHRwOi8vd3d3LmV4
YW1wbGUuY29tL1wiKSAxIDIlIDMgNCUiIHNob3VsZCBzZXQgdGhlIHByb3BlcnR5IHZhbHVlIGFz
c2VydF9ub3RfZXF1YWxzOiBwcm9wZXJ0eSBzaG91bGQgYmUgc2V0IGdvdCBkaXNhbGxvd2VkIHZh
bHVlICIiCi1GQUlMIGUuc3R5bGVbJ2JvcmRlci1pbWFnZSddID0gInVybChcImh0dHA6Ly93d3cu
ZXhhbXBsZS5jb20vXCIpIDEgMiUgMyA0JSBmaWxsIiBzaG91bGQgc2V0IHRoZSBwcm9wZXJ0eSB2
YWx1ZSBhc3NlcnRfbm90X2VxdWFsczogcHJvcGVydHkgc2hvdWxkIGJlIHNldCBnb3QgZGlzYWxs
b3dlZCB2YWx1ZSAiIgotRkFJTCBlLnN0eWxlWydib3JkZXItaW1hZ2UnXSA9ICJ1cmwoXCJodHRw
Oi8vd3d3LmV4YW1wbGUuY29tL1wiKSBmaWxsIDEgMiUgMyA0JSIgc2hvdWxkIHNldCB0aGUgcHJv
cGVydHkgdmFsdWUgYXNzZXJ0X25vdF9lcXVhbHM6IHByb3BlcnR5IHNob3VsZCBiZSBzZXQgZ290
IGRpc2FsbG93ZWQgdmFsdWUgIiIKLUZBSUwgZS5zdHlsZVsnYm9yZGVyLWltYWdlJ10gPSAiMSAv
IDFweCIgc2hvdWxkIHNldCB0aGUgcHJvcGVydHkgdmFsdWUgYXNzZXJ0X25vdF9lcXVhbHM6IHBy
b3BlcnR5IHNob3VsZCBiZSBzZXQgZ290IGRpc2FsbG93ZWQgdmFsdWUgIiIKLUZBSUwgZS5zdHls
ZVsnYm9yZGVyLWltYWdlJ10gPSAiMSAyJSAzIDQlIC8gMiUiIHNob3VsZCBzZXQgdGhlIHByb3Bl
cnR5IHZhbHVlIGFzc2VydF9ub3RfZXF1YWxzOiBwcm9wZXJ0eSBzaG91bGQgYmUgc2V0IGdvdCBk
aXNhbGxvd2VkIHZhbHVlICIiCi1GQUlMIGUuc3R5bGVbJ2JvcmRlci1pbWFnZSddID0gIjEgMiUg
MyA0JSBmaWxsIC8gMyIgc2hvdWxkIHNldCB0aGUgcHJvcGVydHkgdmFsdWUgYXNzZXJ0X25vdF9l
cXVhbHM6IHByb3BlcnR5IHNob3VsZCBiZSBzZXQgZ290IGRpc2FsbG93ZWQgdmFsdWUgIiIKLUZB
SUwgZS5zdHlsZVsnYm9yZGVyLWltYWdlJ10gPSAiZmlsbCAxIDIlIDMgNCUgLyBhdXRvIiBzaG91
bGQgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZSBhc3NlcnRfbm90X2VxdWFsczogcHJvcGVydHkgc2hv
dWxkIGJlIHNldCBnb3QgZGlzYWxsb3dlZCB2YWx1ZSAiIgotRkFJTCBlLnN0eWxlWydib3JkZXIt
aW1hZ2UnXSA9ICIxIC8gMXB4IDIlIDMgYXV0byIgc2hvdWxkIHNldCB0aGUgcHJvcGVydHkgdmFs
dWUgYXNzZXJ0X25vdF9lcXVhbHM6IHByb3BlcnR5IHNob3VsZCBiZSBzZXQgZ290IGRpc2FsbG93
ZWQgdmFsdWUgIiIKLUZBSUwgZS5zdHlsZVsnYm9yZGVyLWltYWdlJ10gPSAiMSAvIC8gMXB4IiBz
aG91bGQgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZSBhc3NlcnRfbm90X2VxdWFsczogcHJvcGVydHkg
c2hvdWxkIGJlIHNldCBnb3QgZGlzYWxsb3dlZCB2YWx1ZSAiIgotRkFJTCBlLnN0eWxlWydib3Jk
ZXItaW1hZ2UnXSA9ICIxIDIlIDMgNCUgLyAvIDIiIHNob3VsZCBzZXQgdGhlIHByb3BlcnR5IHZh
bHVlIGFzc2VydF9ub3RfZXF1YWxzOiBwcm9wZXJ0eSBzaG91bGQgYmUgc2V0IGdvdCBkaXNhbGxv
d2VkIHZhbHVlICIiCi1GQUlMIGUuc3R5bGVbJ2JvcmRlci1pbWFnZSddID0gInVybChcImh0dHA6
Ly93d3cuZXhhbXBsZS5jb20vXCIpIDEgMiUgMyA0JSBmaWxsIC8gLyAxcHggMiAzcHggNCIgc2hv
dWxkIHNldCB0aGUgcHJvcGVydHkgdmFsdWUgYXNzZXJ0X25vdF9lcXVhbHM6IHByb3BlcnR5IHNo
b3VsZCBiZSBzZXQgZ290IGRpc2FsbG93ZWQgdmFsdWUgIiIKLUZBSUwgZS5zdHlsZVsnYm9yZGVy
LWltYWdlJ10gPSAiMSAvIDFweCAvIDFweCIgc2hvdWxkIHNldCB0aGUgcHJvcGVydHkgdmFsdWUg
YXNzZXJ0X25vdF9lcXVhbHM6IHByb3BlcnR5IHNob3VsZCBiZSBzZXQgZ290IGRpc2FsbG93ZWQg
dmFsdWUgIiIKLUZBSUwgZS5zdHlsZVsnYm9yZGVyLWltYWdlJ10gPSAiMSAyJSAzIDQlIC8gMiUg
LyAyIiBzaG91bGQgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZSBhc3NlcnRfbm90X2VxdWFsczogcHJv
cGVydHkgc2hvdWxkIGJlIHNldCBnb3QgZGlzYWxsb3dlZCB2YWx1ZSAiIgotRkFJTCBlLnN0eWxl
Wydib3JkZXItaW1hZ2UnXSA9ICIxIDIlIDMgNCUgZmlsbCAvIDMgLyAxcHggMiAzcHggNCIgc2hv
dWxkIHNldCB0aGUgcHJvcGVydHkgdmFsdWUgYXNzZXJ0X25vdF9lcXVhbHM6IHByb3BlcnR5IHNo
b3VsZCBiZSBzZXQgZ290IGRpc2FsbG93ZWQgdmFsdWUgIiIKLUZBSUwgZS5zdHlsZVsnYm9yZGVy
LWltYWdlJ10gPSAiMSAvIGF1dG8gLyAxcHgiIHNob3VsZCBzZXQgdGhlIHByb3BlcnR5IHZhbHVl
IGFzc2VydF9ub3RfZXF1YWxzOiBwcm9wZXJ0eSBzaG91bGQgYmUgc2V0IGdvdCBkaXNhbGxvd2Vk
IHZhbHVlICIiCi1GQUlMIGUuc3R5bGVbJ2JvcmRlci1pbWFnZSddID0gIjEgMiUgMyA0JSAvIDFw
eCAyJSAzIGF1dG8gLyAyIiBzaG91bGQgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZSBhc3NlcnRfbm90
X2VxdWFsczogcHJvcGVydHkgc2hvdWxkIGJlIHNldCBnb3QgZGlzYWxsb3dlZCB2YWx1ZSAiIgor
UEFTUyBlLnN0eWxlWydib3JkZXItaW1hZ2UnXSA9ICJub25lIiBzaG91bGQgc2V0IHRoZSBwcm9w
ZXJ0eSB2YWx1ZQorUEFTUyBlLnN0eWxlWydib3JkZXItaW1hZ2UnXSA9ICJzdHJldGNoIiBzaG91
bGQgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZQorUEFTUyBlLnN0eWxlWydib3JkZXItaW1hZ2UnXSA9
ICJub25lIDEwMCUgLyAxIC8gMCBzdHJldGNoIiBzaG91bGQgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1
ZQorUEFTUyBlLnN0eWxlWydib3JkZXItaW1hZ2UnXSA9ICJ1cmwoXCJodHRwOi8vd3d3LmV4YW1w
bGUuY29tL1wiKSAxIDIgMyA0IGZpbGwiIHNob3VsZCBzZXQgdGhlIHByb3BlcnR5IHZhbHVlCitQ
QVNTIGUuc3R5bGVbJ2JvcmRlci1pbWFnZSddID0gInVybChcImh0dHA6Ly93d3cuZXhhbXBsZS5j
b20vXCIpIDEgMiAzIDQgZmlsbCAvIDEgLyAwIHN0cmV0Y2giIHNob3VsZCBzZXQgdGhlIHByb3Bl
cnR5IHZhbHVlCitQQVNTIGUuc3R5bGVbJ2JvcmRlci1pbWFnZSddID0gInVybChcImh0dHA6Ly93
d3cuZXhhbXBsZS5jb20vXCIpIiBzaG91bGQgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZQorUEFTUyBl
LnN0eWxlWydib3JkZXItaW1hZ2UnXSA9ICJyZXBlYXQgcm91bmQiIHNob3VsZCBzZXQgdGhlIHBy
b3BlcnR5IHZhbHVlCitQQVNTIGUuc3R5bGVbJ2JvcmRlci1pbWFnZSddID0gIm5vbmUgcmVwZWF0
IHJvdW5kIiBzaG91bGQgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZQorUEFTUyBlLnN0eWxlWydib3Jk
ZXItaW1hZ2UnXSA9ICJzcGFjZSIgc2hvdWxkIHNldCB0aGUgcHJvcGVydHkgdmFsdWUKK1BBU1Mg
ZS5zdHlsZVsnYm9yZGVyLWltYWdlJ10gPSAibm9uZSBzcGFjZSBzcGFjZSIgc2hvdWxkIHNldCB0
aGUgcHJvcGVydHkgdmFsdWUKK1BBU1MgZS5zdHlsZVsnYm9yZGVyLWltYWdlJ10gPSAibm9uZSAx
MDAlIC8gMSAvIDAgc3BhY2UiIHNob3VsZCBzZXQgdGhlIHByb3BlcnR5IHZhbHVlCitQQVNTIGUu
c3R5bGVbJ2JvcmRlci1pbWFnZSddID0gIjEiIHNob3VsZCBzZXQgdGhlIHByb3BlcnR5IHZhbHVl
CitQQVNTIGUuc3R5bGVbJ2JvcmRlci1pbWFnZSddID0gIm5vbmUgMSAxIDEgMSIgc2hvdWxkIHNl
dCB0aGUgcHJvcGVydHkgdmFsdWUKK1BBU1MgZS5zdHlsZVsnYm9yZGVyLWltYWdlJ10gPSAibm9u
ZSAxIC8gMSAvIDAgc3RyZXRjaCIgc2hvdWxkIHNldCB0aGUgcHJvcGVydHkgdmFsdWUKK1BBU1Mg
ZS5zdHlsZVsnYm9yZGVyLWltYWdlJ10gPSAidXJsKFwiaHR0cDovL3d3dy5leGFtcGxlLmNvbS9c
IikgMSAyJSAzIDQlIiBzaG91bGQgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZQorUEFTUyBlLnN0eWxl
Wydib3JkZXItaW1hZ2UnXSA9ICJ1cmwoXCJodHRwOi8vd3d3LmV4YW1wbGUuY29tL1wiKSAxIDIl
IDMgNCUgZmlsbCIgc2hvdWxkIHNldCB0aGUgcHJvcGVydHkgdmFsdWUKK1BBU1MgZS5zdHlsZVsn
Ym9yZGVyLWltYWdlJ10gPSAidXJsKFwiaHR0cDovL3d3dy5leGFtcGxlLmNvbS9cIikgZmlsbCAx
IDIlIDMgNCUiIHNob3VsZCBzZXQgdGhlIHByb3BlcnR5IHZhbHVlCitQQVNTIGUuc3R5bGVbJ2Jv
cmRlci1pbWFnZSddID0gIjEgLyAxcHgiIHNob3VsZCBzZXQgdGhlIHByb3BlcnR5IHZhbHVlCitQ
QVNTIGUuc3R5bGVbJ2JvcmRlci1pbWFnZSddID0gIjEgMiUgMyA0JSAvIDIlIiBzaG91bGQgc2V0
IHRoZSBwcm9wZXJ0eSB2YWx1ZQorUEFTUyBlLnN0eWxlWydib3JkZXItaW1hZ2UnXSA9ICIxIDIl
IDMgNCUgZmlsbCAvIDMiIHNob3VsZCBzZXQgdGhlIHByb3BlcnR5IHZhbHVlCitQQVNTIGUuc3R5
bGVbJ2JvcmRlci1pbWFnZSddID0gImZpbGwgMSAyJSAzIDQlIC8gYXV0byIgc2hvdWxkIHNldCB0
aGUgcHJvcGVydHkgdmFsdWUKK1BBU1MgZS5zdHlsZVsnYm9yZGVyLWltYWdlJ10gPSAiMSAvIDFw
eCAyJSAzIGF1dG8iIHNob3VsZCBzZXQgdGhlIHByb3BlcnR5IHZhbHVlCitQQVNTIGUuc3R5bGVb
J2JvcmRlci1pbWFnZSddID0gIjEgLyAvIDFweCIgc2hvdWxkIHNldCB0aGUgcHJvcGVydHkgdmFs
dWUKK1BBU1MgZS5zdHlsZVsnYm9yZGVyLWltYWdlJ10gPSAiMSAyJSAzIDQlIC8gLyAyIiBzaG91
bGQgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZQorUEFTUyBlLnN0eWxlWydib3JkZXItaW1hZ2UnXSA9
ICJ1cmwoXCJodHRwOi8vd3d3LmV4YW1wbGUuY29tL1wiKSAxIDIlIDMgNCUgZmlsbCAvIC8gMXB4
IDIgM3B4IDQiIHNob3VsZCBzZXQgdGhlIHByb3BlcnR5IHZhbHVlCitQQVNTIGUuc3R5bGVbJ2Jv
cmRlci1pbWFnZSddID0gIjEgLyAxcHggLyAxcHgiIHNob3VsZCBzZXQgdGhlIHByb3BlcnR5IHZh
bHVlCitQQVNTIGUuc3R5bGVbJ2JvcmRlci1pbWFnZSddID0gIjEgMiUgMyA0JSAvIDIlIC8gMiIg
c2hvdWxkIHNldCB0aGUgcHJvcGVydHkgdmFsdWUKK1BBU1MgZS5zdHlsZVsnYm9yZGVyLWltYWdl
J10gPSAiMSAyJSAzIDQlIGZpbGwgLyAzIC8gMXB4IDIgM3B4IDQiIHNob3VsZCBzZXQgdGhlIHBy
b3BlcnR5IHZhbHVlCitQQVNTIGUuc3R5bGVbJ2JvcmRlci1pbWFnZSddID0gIjEgLyBhdXRvIC8g
MXB4IiBzaG91bGQgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZQorUEFTUyBlLnN0eWxlWydib3JkZXIt
aW1hZ2UnXSA9ICIxIDIlIDMgNCUgLyAxcHggMiUgMyBhdXRvIC8gMiIgc2hvdWxkIHNldCB0aGUg
cHJvcGVydHkgdmFsdWUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWJhY2tncm91bmRzL3BhcnNpbmcvYm9yZGVyLWltYWdl
LXZhbGlkLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2Nzcy9jc3MtYmFja2dyb3VuZHMvcGFyc2luZy9ib3JkZXItaW1hZ2UtdmFsaWQuaHRtbAppbmRl
eCA2N2QyMmMxOGUyYzY1MzhhODg1YjUwZWQ2ZTY1ZjU2YzFkMTQ2OTUyLi5jZGQzOGIwYTYyNDli
MWZmMTRmZTNkMzRkN2Y0NzFhZjE2NjA0Y2EzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtYmFja2dyb3VuZHMvcGFyc2luZy9i
b3JkZXItaW1hZ2UtdmFsaWQuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtYmFja2dyb3VuZHMvcGFyc2luZy9ib3JkZXItaW1hZ2Ut
dmFsaWQuaHRtbApAQCAtMTYsNyArMTYsNyBAQAogCiAvLyAibm9uZSIgaW4gRWRnZSwgIm5vbmUg
MTAwJSAvIDEgLyAwIHN0cmV0Y2giIGluIEZpcmVmb3ggYW5kIEJsaW5rLgogdGVzdF92YWxpZF92
YWx1ZSgiYm9yZGVyLWltYWdlIiwgIm5vbmUiLCBbIm5vbmUiLCAibm9uZSAxMDAlIC8gMSAvIDAg
c3RyZXRjaCJdKTsKLXRlc3RfdmFsaWRfdmFsdWUoImJvcmRlci1pbWFnZSIsICJzdHJldGNoIiwg
WyJub25lIiwgIm5vbmUgMTAwJSAvIDEgLyAwIHN0cmV0Y2giXSk7Cit0ZXN0X3ZhbGlkX3ZhbHVl
KCJib3JkZXItaW1hZ2UiLCAic3RyZXRjaCIsIFsic3RyZXRjaCIsICJub25lIiwgIm5vbmUgMTAw
JSAvIDEgLyAwIHN0cmV0Y2giXSk7CiB0ZXN0X3ZhbGlkX3ZhbHVlKCJib3JkZXItaW1hZ2UiLCAi
bm9uZSAxMDAlIC8gMSAvIDAgc3RyZXRjaCIsIFsibm9uZSIsICJub25lIDEwMCUgLyAxIC8gMCBz
dHJldGNoIl0pOwogCiB0ZXN0X3ZhbGlkX3ZhbHVlKCJib3JkZXItaW1hZ2UiLCAndXJsKCJodHRw
Oi8vd3d3LmV4YW1wbGUuY29tLyIpIDEgMiAzIDQgZmlsbCcsIFsndXJsKCJodHRwOi8vd3d3LmV4
YW1wbGUuY29tLyIpIDEgMiAzIDQgZmlsbCcsICd1cmwoImh0dHA6Ly93d3cuZXhhbXBsZS5jb20v
IikgMSAyIDMgNCBmaWxsIC8gMSAvIDAgc3RyZXRjaCddKTsKQEAgLTI4LDExICsyOCwxMSBAQCB0
ZXN0X3ZhbGlkX3ZhbHVlKCJib3JkZXItaW1hZ2UiLCAicmVwZWF0IHJvdW5kIiwgWyJyZXBlYXQg
cm91bmQiLCAibm9uZSByZXBlYXQgcgogdGVzdF92YWxpZF92YWx1ZSgiYm9yZGVyLWltYWdlIiwg
Im5vbmUgcmVwZWF0IHJvdW5kIiwgWyJyZXBlYXQgcm91bmQiLCAibm9uZSByZXBlYXQgcm91bmQi
LCAibm9uZSAxMDAlIC8gMSAvIDAgcmVwZWF0IHJvdW5kIl0pOwogCiB0ZXN0X3ZhbGlkX3ZhbHVl
KCJib3JkZXItaW1hZ2UiLCAic3BhY2UiLCBbInNwYWNlIiwgIm5vbmUgc3BhY2Ugc3BhY2UiLCAi
bm9uZSAxMDAlIC8gMSAvIDAgc3BhY2UiXSk7Ci10ZXN0X3ZhbGlkX3ZhbHVlKCJib3JkZXItaW1h
Z2UiLCAibm9uZSBzcGFjZSBzcGFjZSIsIFsic3BhY2UiLCAibm9uZSBzcGFjZSBzcGFjZSIsICJu
b25lIDEwMCUgLyAxIC8gMCBzcGFjZSJdKTsKK3Rlc3RfdmFsaWRfdmFsdWUoImJvcmRlci1pbWFn
ZSIsICJub25lIHNwYWNlIHNwYWNlIiwgWyJzcGFjZSIsICJub25lIHNwYWNlIHNwYWNlIiwgIm5v
bmUgc3BhY2UiLCAibm9uZSAxMDAlIC8gMSAvIDAgc3BhY2UiXSk7CiB0ZXN0X3ZhbGlkX3ZhbHVl
KCJib3JkZXItaW1hZ2UiLCAibm9uZSAxMDAlIC8gMSAvIDAgc3BhY2UiLCBbInNwYWNlIiwgIm5v
bmUgc3BhY2Ugc3BhY2UiLCAibm9uZSAxMDAlIC8gMSAvIDAgc3BhY2UiXSk7CiAKIHRlc3RfdmFs
aWRfdmFsdWUoImJvcmRlci1pbWFnZSIsICIxIiwgWyIxIiwgIm5vbmUgMSAxIDEgMSIsICJub25l
IDEgLyAxIC8gMCBzdHJldGNoIl0pOwotdGVzdF92YWxpZF92YWx1ZSgiYm9yZGVyLWltYWdlIiwg
Im5vbmUgMSAxIDEgMSIsIFsiMSIsICJub25lIDEgMSAxIDEiLCAibm9uZSAxIC8gMSAvIDAgc3Ry
ZXRjaCJdKTsKK3Rlc3RfdmFsaWRfdmFsdWUoImJvcmRlci1pbWFnZSIsICJub25lIDEgMSAxIDEi
LCBbIjEiLCAibm9uZSAxIDEgMSAxIiwgIm5vbmUgMSIsICJub25lIDEgLyAxIC8gMCBzdHJldGNo
Il0pOwogdGVzdF92YWxpZF92YWx1ZSgiYm9yZGVyLWltYWdlIiwgIm5vbmUgMSAvIDEgLyAwIHN0
cmV0Y2giLCBbIjEiLCAibm9uZSAxIDEgMSAxIiwgIm5vbmUgMSAvIDEgLyAwIHN0cmV0Y2giXSk7
CiAKIHRlc3RfdmFsaWRfdmFsdWUoImJvcmRlci1pbWFnZSIsICd1cmwoImh0dHA6Ly93d3cuZXhh
bXBsZS5jb20vIikgMSAyJSAzIDQlJywgWyd1cmwoImh0dHA6Ly93d3cuZXhhbXBsZS5jb20vIikg
MSAyJSAzIDQlJywgJ3VybCgiaHR0cDovL3d3dy5leGFtcGxlLmNvbS8iKSAxIDIlIDMgNCUgLyAx
IC8gMCBzdHJldGNoJ10pOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nzb20vZ2V0Q29tcHV0ZWRTdHlsZS1kZXRhY2hlZC1zdWJ0
cmVlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL2Nzc29tL2dldENvbXB1dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS1leHBlY3Rl
ZC50eHQKaW5kZXggOWM2YzJkNjk0OTZhOTdmNWRlYWQ3MGEyYzBhYTcwYjI2OGRlODNlZi4uYWZl
M2RkYzIyMDAwYTBlNzc0MzhhZmIyY2ZmZDM5ZmE3NGZkNGRmOCAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nzb20vZ2V0Q29tcHV0
ZWRTdHlsZS1kZXRhY2hlZC1zdWJ0cmVlLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS9nZXRDb21wdXRlZFN0eWxl
LWRldGFjaGVkLXN1YnRyZWUtZXhwZWN0ZWQudHh0CkBAIC0xLDggKzEsOCBAQAogCiBQQVNTIGdl
dENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZGV0YWNoZWQgZWxlbWVudAotRkFJ
TCBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIGVsZW1lbnQgaW4gbm9uLXJl
bmRlcmVkIGlmcmFtZSAoZGlzcGxheTogbm9uZSkgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBi
dXQgZ290IDM5NwotRkFJTCBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIGVs
ZW1lbnQgaW4gbm9uLXJlbmRlcmVkIGlmcmFtZSAoZGlzcGxheTogbm9uZSkgZnJvbSBpZnJhbWUn
cyB3aW5kb3cgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDM5NwotRkFJTCBnZXRD
b21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIGVsZW1lbnQgb3V0c2lkZSB0aGUgZmxh
dCB0cmVlIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTcKLUZBSUwgZ2V0Q29t
cHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBkZXNjZW5kYW50IG91dHNpZGUgdGhlIGZs
YXQgdHJlZSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk3CitGQUlMIGdldENv
bXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBpbiBub24tcmVuZGVyZWQg
aWZyYW1lIChkaXNwbGF5OiBub25lKSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3Qg
Mzk2CitGQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBp
biBub24tcmVuZGVyZWQgaWZyYW1lIChkaXNwbGF5OiBub25lKSBmcm9tIGlmcmFtZSdzIHdpbmRv
dyBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk2CitGQUlMIGdldENvbXB1dGVk
U3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBvdXRzaWRlIHRoZSBmbGF0IHRyZWUg
YXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDM5NgorRkFJTCBnZXRDb21wdXRlZFN0
eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIGRlc2NlbmRhbnQgb3V0c2lkZSB0aGUgZmxhdCB0cmVl
IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTYKIFBBU1MgZ2V0Q29tcHV0ZWRT
dHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBzaGFkb3cgdHJlZSBvdXRzaWRlIG9mIGZsYXR0ZW5l
ZCB0cmVlCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY2FzY2FkZS9hbGwtcHJvcC1pbml0aWFsLXht
bC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNhc2NhZGUvYWxsLXByb3AtaW5pdGlhbC14bWwtZXhw
ZWN0ZWQudHh0CmluZGV4IDdiMWIzYzY4NDRjNDQ5NzIxNDNmYTYwMzM3MWFiMzA1OWNiMjA3N2Yu
LmEyNjEzNTA1NTBkOGI4N2UzNmMyY2RmYzlhY2JkYjFlMTE1YzdjOGYgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL3BsYXRmb3JtL2d0ay9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nz
cy9jc3MtY2FzY2FkZS9hbGwtcHJvcC1pbml0aWFsLXhtbC1leHBlY3RlZC50eHQKKysrIGIvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3Nz
L2Nzcy1jYXNjYWRlL2FsbC1wcm9wLWluaXRpYWwteG1sLWV4cGVjdGVkLnR4dApAQCAtMzM5LDcg
KzMzOSw2IEBAIFBBU1MgLXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXAKIFBBU1MgLXdlYmtpdC1iYWNr
Z3JvdW5kLW9yaWdpbgogUEFTUyAtd2Via2l0LWJhY2tncm91bmQtc2l6ZQogUEFTUyAtd2Via2l0
LWJvcmRlci1ob3Jpem9udGFsLXNwYWNpbmcKLVBBU1MgLXdlYmtpdC1ib3JkZXItaW1hZ2UKIFBB
U1MgLXdlYmtpdC1ib3JkZXItdmVydGljYWwtc3BhY2luZwogUEFTUyAtd2Via2l0LWJveC1hbGln
bgogUEFTUyAtd2Via2l0LWJveC1kZWNvcmF0aW9uLWJyZWFrCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9ndGsvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nz
b20vZ2V0Q29tcHV0ZWRTdHlsZS1kZXRhY2hlZC1zdWJ0cmVlLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL3BsYXRmb3JtL2d0ay9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9j
c3NvbS9nZXRDb21wdXRlZFN0eWxlLWRldGFjaGVkLXN1YnRyZWUtZXhwZWN0ZWQudHh0CmluZGV4
IGE1ZWVhNmM4NjhiMTRiMTE0YzljMjVjM2QzNTMxYmZmOWM4YTUxOWUuLjY4MzdlYTI2ZmZkZDg3
NGE5ZWNlMjI0NTk5ZGM5ZDU4ZTA4NmRiYzQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRm
b3JtL2d0ay9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS9nZXRDb21w
dXRlZFN0eWxlLWRldGFjaGVkLXN1YnRyZWUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3Rz
L3BsYXRmb3JtL2d0ay9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS9n
ZXRDb21wdXRlZFN0eWxlLWRldGFjaGVkLXN1YnRyZWUtZXhwZWN0ZWQudHh0CkBAIC0xLDggKzEs
OCBAQAogCiBQQVNTIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZGV0YWNo
ZWQgZWxlbWVudAotRkFJTCBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIGVs
ZW1lbnQgaW4gbm9uLXJlbmRlcmVkIGlmcmFtZSAoZGlzcGxheTogbm9uZSkgYXNzZXJ0X2VxdWFs
czogZXhwZWN0ZWQgMCBidXQgZ290IDM5NQotRkFJTCBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMg
bm8gc3R5bGUgZm9yIGVsZW1lbnQgaW4gbm9uLXJlbmRlcmVkIGlmcmFtZSAoZGlzcGxheTogbm9u
ZSkgZnJvbSBpZnJhbWUncyB3aW5kb3cgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290
IDM5NQotRkFJTCBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIGVsZW1lbnQg
b3V0c2lkZSB0aGUgZmxhdCB0cmVlIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAz
OTUKLUZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBkZXNjZW5kYW50
IG91dHNpZGUgdGhlIGZsYXQgdHJlZSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3Qg
Mzk1CitGQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBp
biBub24tcmVuZGVyZWQgaWZyYW1lIChkaXNwbGF5OiBub25lKSBhc3NlcnRfZXF1YWxzOiBleHBl
Y3RlZCAwIGJ1dCBnb3QgMzk0CitGQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHls
ZSBmb3IgZWxlbWVudCBpbiBub24tcmVuZGVyZWQgaWZyYW1lIChkaXNwbGF5OiBub25lKSBmcm9t
IGlmcmFtZSdzIHdpbmRvdyBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk0CitG
QUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBvdXRzaWRl
IHRoZSBmbGF0IHRyZWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDM5NAorRkFJ
TCBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIGRlc2NlbmRhbnQgb3V0c2lk
ZSB0aGUgZmxhdCB0cmVlIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTQKIFBB
U1MgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBzaGFkb3cgdHJlZSBvdXRz
aWRlIG9mIGZsYXR0ZW5lZCB0cmVlCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3Jt
L2lvcy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY2FzY2FkZS9hbGwt
cHJvcC1pbml0aWFsLXhtbC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3Mv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNhc2NhZGUvYWxsLXByb3At
aW5pdGlhbC14bWwtZXhwZWN0ZWQudHh0CmluZGV4IGJlM2RiOTBjZDA5MDAwMDNiZDgwODVhNTll
YzA4ZGVhNzExMzdmYzEuLjQzMDk4NWU0NmNhMTI5OTJmZGJlODliZWQyNmUyNTNkYjAxNWFlYmMg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9jc3MtY2FzY2FkZS9hbGwtcHJvcC1pbml0aWFsLXhtbC1leHBlY3Rl
ZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvY3NzL2Nzcy1jYXNjYWRlL2FsbC1wcm9wLWluaXRpYWwteG1sLWV4cGVjdGVk
LnR4dApAQCAtMzExLDcgKzMxMSw2IEBAIFBBU1MgLXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXAKIFBB
U1MgLXdlYmtpdC1iYWNrZ3JvdW5kLW9yaWdpbgogUEFTUyAtd2Via2l0LWJhY2tncm91bmQtc2l6
ZQogUEFTUyAtd2Via2l0LWJvcmRlci1ob3Jpem9udGFsLXNwYWNpbmcKLVBBU1MgLXdlYmtpdC1i
b3JkZXItaW1hZ2UKIFBBU1MgLXdlYmtpdC1ib3JkZXItdmVydGljYWwtc3BhY2luZwogUEFTUyAt
d2Via2l0LWJveC1hbGlnbgogUEFTUyAtd2Via2l0LWJveC1kZWNvcmF0aW9uLWJyZWFrCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9jc3MvY3Nzb20vZ2V0Q29tcHV0ZWRTdHlsZS1kZXRhY2hlZC1zdWJ0cmVlLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2Nzcy9jc3NvbS9nZXRDb21wdXRlZFN0eWxlLWRldGFjaGVkLXN1YnRyZWUtZXhw
ZWN0ZWQudHh0CmluZGV4IDkwM2JmYzZhN2U5YjI4MjcyNDhhYjA3M2I1MTA2NzdlNDE0OWRmMzIu
LmEyYjg0OWVkYzQ0YjVkNDliMTMwNzUzYjkxZmI3MzA1NGMzMjY0YmYgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL3BsYXRmb3JtL2lvcy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nz
cy9jc3NvbS9nZXRDb21wdXRlZFN0eWxlLWRldGFjaGVkLXN1YnRyZWUtZXhwZWN0ZWQudHh0Cisr
KyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2Nzcy9jc3NvbS9nZXRDb21wdXRlZFN0eWxlLWRldGFjaGVkLXN1YnRyZWUtZXhwZWN0ZWQu
dHh0CkBAIC0xLDggKzEsOCBAQAogCiBQQVNTIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBz
dHlsZSBmb3IgZGV0YWNoZWQgZWxlbWVudAotRkFJTCBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMg
bm8gc3R5bGUgZm9yIGVsZW1lbnQgaW4gbm9uLXJlbmRlcmVkIGlmcmFtZSAoZGlzcGxheTogbm9u
ZSkgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDM5OQotRkFJTCBnZXRDb21wdXRl
ZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIGVsZW1lbnQgaW4gbm9uLXJlbmRlcmVkIGlmcmFt
ZSAoZGlzcGxheTogbm9uZSkgZnJvbSBpZnJhbWUncyB3aW5kb3cgYXNzZXJ0X2VxdWFsczogZXhw
ZWN0ZWQgMCBidXQgZ290IDM5OQotRkFJTCBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5
bGUgZm9yIGVsZW1lbnQgb3V0c2lkZSB0aGUgZmxhdCB0cmVlIGFzc2VydF9lcXVhbHM6IGV4cGVj
dGVkIDAgYnV0IGdvdCAzOTkKLUZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxl
IGZvciBkZXNjZW5kYW50IG91dHNpZGUgdGhlIGZsYXQgdHJlZSBhc3NlcnRfZXF1YWxzOiBleHBl
Y3RlZCAwIGJ1dCBnb3QgMzk5CitGQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHls
ZSBmb3IgZWxlbWVudCBpbiBub24tcmVuZGVyZWQgaWZyYW1lIChkaXNwbGF5OiBub25lKSBhc3Nl
cnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk4CitGQUlMIGdldENvbXB1dGVkU3R5bGUg
cmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBpbiBub24tcmVuZGVyZWQgaWZyYW1lIChkaXNw
bGF5OiBub25lKSBmcm9tIGlmcmFtZSdzIHdpbmRvdyBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAw
IGJ1dCBnb3QgMzk4CitGQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3Ig
ZWxlbWVudCBvdXRzaWRlIHRoZSBmbGF0IHRyZWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBi
dXQgZ290IDM5OAorRkFJTCBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIGRl
c2NlbmRhbnQgb3V0c2lkZSB0aGUgZmxhdCB0cmVlIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAg
YnV0IGdvdCAzOTgKIFBBU1MgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBz
aGFkb3cgdHJlZSBvdXRzaWRlIG9mIGZsYXR0ZW5lZCB0cmVlCiAKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL3BsYXRmb3JtL3dwZS9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9j
c3MtY2FzY2FkZS9hbGwtcHJvcC1pbml0aWFsLXhtbC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS93cGUvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNh
c2NhZGUvYWxsLXByb3AtaW5pdGlhbC14bWwtZXhwZWN0ZWQudHh0CmluZGV4IDhlMmQwMTExZmEx
MTg2MGEzNTA0MDk0NDBiNDc1NGViNGEyNDE0M2UuLjkzOTU2MzJiOTkxOGY2YTM5MDkzOTA0YjAy
YWVkZjFmOGY5OTNhNDcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3dwZS9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY2FzY2FkZS9hbGwtcHJvcC1pbml0
aWFsLXhtbC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd3BlL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jYXNjYWRlL2FsbC1wcm9wLWluaXRp
YWwteG1sLWV4cGVjdGVkLnR4dApAQCAtMzM5LDcgKzMzOSw2IEBAIFBBU1MgLXdlYmtpdC1iYWNr
Z3JvdW5kLWNsaXAKIFBBU1MgLXdlYmtpdC1iYWNrZ3JvdW5kLW9yaWdpbgogUEFTUyAtd2Via2l0
LWJhY2tncm91bmQtc2l6ZQogUEFTUyAtd2Via2l0LWJvcmRlci1ob3Jpem9udGFsLXNwYWNpbmcK
LVBBU1MgLXdlYmtpdC1ib3JkZXItaW1hZ2UKIFBBU1MgLXdlYmtpdC1ib3JkZXItdmVydGljYWwt
c3BhY2luZwogUEFTUyAtd2Via2l0LWJveC1hbGlnbgogUEFTUyAtd2Via2l0LWJveC1kZWNvcmF0
aW9uLWJyZWFrCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93cGUvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nzb20vZ2V0Q29tcHV0ZWRTdHlsZS1kZXRhY2hl
ZC1zdWJ0cmVlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3dwZS9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS9nZXRDb21wdXRlZFN0eWxlLWRldGFj
aGVkLXN1YnRyZWUtZXhwZWN0ZWQudHh0CmluZGV4IDY4MzdlYTI2ZmZkZDg3NGE5ZWNlMjI0NTk5
ZGM5ZDU4ZTA4NmRiYzQuLjg4N2NhNmM5MTlkZTNhMGFlMDBhN2Q3NWM2Nzc4M2VhZTFiNWFkNDAg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3dwZS9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS9nZXRDb21wdXRlZFN0eWxlLWRldGFjaGVkLXN1YnRyZWUt
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3dwZS9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS9nZXRDb21wdXRlZFN0eWxlLWRldGFjaGVkLXN1
YnRyZWUtZXhwZWN0ZWQudHh0CkBAIC0xLDggKzEsOCBAQAogCiBQQVNTIGdldENvbXB1dGVkU3R5
bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZGV0YWNoZWQgZWxlbWVudAotRkFJTCBnZXRDb21wdXRl
ZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIGVsZW1lbnQgaW4gbm9uLXJlbmRlcmVkIGlmcmFt
ZSAoZGlzcGxheTogbm9uZSkgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDM5NAot
RkFJTCBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIGVsZW1lbnQgaW4gbm9u
LXJlbmRlcmVkIGlmcmFtZSAoZGlzcGxheTogbm9uZSkgZnJvbSBpZnJhbWUncyB3aW5kb3cgYXNz
ZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDM5NAotRkFJTCBnZXRDb21wdXRlZFN0eWxl
IHJldHVybnMgbm8gc3R5bGUgZm9yIGVsZW1lbnQgb3V0c2lkZSB0aGUgZmxhdCB0cmVlIGFzc2Vy
dF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTQKLUZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSBy
ZXR1cm5zIG5vIHN0eWxlIGZvciBkZXNjZW5kYW50IG91dHNpZGUgdGhlIGZsYXQgdHJlZSBhc3Nl
cnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk0CitGQUlMIGdldENvbXB1dGVkU3R5bGUg
cmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBpbiBub24tcmVuZGVyZWQgaWZyYW1lIChkaXNw
bGF5OiBub25lKSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzkzCitGQUlMIGdl
dENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBpbiBub24tcmVuZGVy
ZWQgaWZyYW1lIChkaXNwbGF5OiBub25lKSBmcm9tIGlmcmFtZSdzIHdpbmRvdyBhc3NlcnRfZXF1
YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzkzCitGQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJu
cyBubyBzdHlsZSBmb3IgZWxlbWVudCBvdXRzaWRlIHRoZSBmbGF0IHRyZWUgYXNzZXJ0X2VxdWFs
czogZXhwZWN0ZWQgMCBidXQgZ290IDM5MworRkFJTCBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMg
bm8gc3R5bGUgZm9yIGRlc2NlbmRhbnQgb3V0c2lkZSB0aGUgZmxhdCB0cmVlIGFzc2VydF9lcXVh
bHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTMKIFBBU1MgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5z
IG5vIHN0eWxlIGZvciBzaGFkb3cgdHJlZSBvdXRzaWRlIG9mIGZsYXR0ZW5lZCB0cmVlCiAKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL3N2Zy9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS1iYXNpYy1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9zdmcvY3NzL2dldENvbXB1dGVkU3R5bGUtYmFzaWMtZXhw
ZWN0ZWQudHh0CmluZGV4IDNmZTc3OGZjMDRkNWM2MDFmN2MwMzc2YmYzZTFmNjkyYmI4ODQ0Y2Uu
LmM1NjQyODk5ZDYwN2EzNmQxNzk0YmFmZjliZmVlY2Y1MjUwMWRmMjUgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL3N2Zy9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS1iYXNpYy1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvc3ZnL2Nzcy9nZXRDb21wdXRlZFN0eWxlLWJhc2ljLWV4cGVjdGVkLnR4
dApAQCAtNDE4LDggKzQxOCw2IEBAIHJlY3Q6IHN0eWxlLmdldFByb3BlcnR5VmFsdWUoLXdlYmtp
dC1iYWNrZ3JvdW5kLXNpemUpIDogYXV0bwogcmVjdDogc3R5bGUuZ2V0UHJvcGVydHlDU1NWYWx1
ZSgtd2Via2l0LWJhY2tncm91bmQtc2l6ZSkgOiBbb2JqZWN0IENTU1ByaW1pdGl2ZVZhbHVlXQog
cmVjdDogc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgtd2Via2l0LWJvcmRlci1ob3Jpem9udGFsLXNw
YWNpbmcpIDogMHB4CiByZWN0OiBzdHlsZS5nZXRQcm9wZXJ0eUNTU1ZhbHVlKC13ZWJraXQtYm9y
ZGVyLWhvcml6b250YWwtc3BhY2luZykgOiBbb2JqZWN0IENTU1ByaW1pdGl2ZVZhbHVlXQotcmVj
dDogc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgtd2Via2l0LWJvcmRlci1pbWFnZSkgOiBub25lCi1y
ZWN0OiBzdHlsZS5nZXRQcm9wZXJ0eUNTU1ZhbHVlKC13ZWJraXQtYm9yZGVyLWltYWdlKSA6IFtv
YmplY3QgQ1NTUHJpbWl0aXZlVmFsdWVdCiByZWN0OiBzdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKC13
ZWJraXQtYm9yZGVyLXZlcnRpY2FsLXNwYWNpbmcpIDogMHB4CiByZWN0OiBzdHlsZS5nZXRQcm9w
ZXJ0eUNTU1ZhbHVlKC13ZWJraXQtYm9yZGVyLXZlcnRpY2FsLXNwYWNpbmcpIDogW29iamVjdCBD
U1NQcmltaXRpdmVWYWx1ZV0KIHJlY3Q6IHN0eWxlLmdldFByb3BlcnR5VmFsdWUoLXdlYmtpdC1i
b3gtYWxpZ24pIDogc3RyZXRjaApAQCAtOTM0LDggKzkzMiw2IEBAIGc6IHN0eWxlLmdldFByb3Bl
cnR5VmFsdWUoLXdlYmtpdC1iYWNrZ3JvdW5kLXNpemUpIDogYXV0bwogZzogc3R5bGUuZ2V0UHJv
cGVydHlDU1NWYWx1ZSgtd2Via2l0LWJhY2tncm91bmQtc2l6ZSkgOiBbb2JqZWN0IENTU1ByaW1p
dGl2ZVZhbHVlXQogZzogc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgtd2Via2l0LWJvcmRlci1ob3Jp
em9udGFsLXNwYWNpbmcpIDogMHB4CiBnOiBzdHlsZS5nZXRQcm9wZXJ0eUNTU1ZhbHVlKC13ZWJr
aXQtYm9yZGVyLWhvcml6b250YWwtc3BhY2luZykgOiBbb2JqZWN0IENTU1ByaW1pdGl2ZVZhbHVl
XQotZzogc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgtd2Via2l0LWJvcmRlci1pbWFnZSkgOiBub25l
Ci1nOiBzdHlsZS5nZXRQcm9wZXJ0eUNTU1ZhbHVlKC13ZWJraXQtYm9yZGVyLWltYWdlKSA6IFtv
YmplY3QgQ1NTUHJpbWl0aXZlVmFsdWVdCiBnOiBzdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKC13ZWJr
aXQtYm9yZGVyLXZlcnRpY2FsLXNwYWNpbmcpIDogMHB4CiBnOiBzdHlsZS5nZXRQcm9wZXJ0eUNT
U1ZhbHVlKC13ZWJraXQtYm9yZGVyLXZlcnRpY2FsLXNwYWNpbmcpIDogW29iamVjdCBDU1NQcmlt
aXRpdmVWYWx1ZV0KIGc6IHN0eWxlLmdldFByb3BlcnR5VmFsdWUoLXdlYmtpdC1ib3gtYWxpZ24p
IDogc3RyZXRjaAo=
</data>
<flag name="commit-queue"
          id="482393"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>454668</attachid>
            <date>2022-03-14 23:50:41 -0700</date>
            <delta_ts>2022-03-20 09:08:01 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-237487-20220315075040.patch</filename>
            <type>text/plain</type>
            <size>61465</size>
            <attacher name="Oriol Brufau">obrufau</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkxMjU0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOTYxYzkxNGQ3NWIzNDQ1
M2VkMjI3NWQ3MjU2NTY0YTEwYWE0MTEyNS4uMDY4YzZhNGM2MTM5ZmRiZDYyNTUxYjk4MGIyZWY4
MDUyYWRkZDEzMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDU2IEBACisyMDIyLTAzLTE0ICBPcmlv
bCBCcnVmYXUgIDxvYnJ1ZmF1QGlnYWxpYS5jb20+CisKKyAgICAgICAgW2Nzc10gVHVybiAtd2Vi
a2l0LWJvcmRlci1pbWFnZSBpbnRvIGEgc2hvcnRoYW5kCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzc0ODcKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGUgJy13ZWJraXQtYm9yZGVyLWltYWdlJyBwcm9w
ZXJ0eSB3YXMgY29uc2lkZXJlZCB0byBiZSBhIGxvbmdoYW5kLAorICAgICAgICBzaGFyaW5nIGNv
bXB1dGVkIHZhbHVlcyB3aXRoIHRoZSB2YXJpb3VzICdib3JkZXItaW1hZ2UtKicuCisKKyAgICAg
ICAgVGhpcyBwYXRjaCB0dXJucyBpdCBpbnRvIGEgbG9uZ2hhbmQgb2YgJ2JvcmRlci1pbWFnZS0q
JywgYW5kIGFsc28gb2YKKyAgICAgICAgJ2JvcmRlci0qLXdpZHRoJy4gVGhlIGxhdHRlciBpcyBi
ZWNhdXNlIEknbSBwcmVzZXJ2aW5nIHRoZSBsZWdhY3kKKyAgICAgICAgYmVoYXZpb3Igb2YgbWFr
aW5nIHRoZSBib3JkZXIgaW1hZ2Ugd2lkdGhzIGFsc28gc2V0IHRoZSBib3JkZXIgd2lkdGhzCisg
ICAgICAgIGlmIHRoZXkgYXJlIGEgbGVuZ3RoLgorCisgICAgICAgIFRlc3RzOiBmYXN0L2Nzcy9i
b3JkZXItaW1hZ2Utc3R5bGUtbGVuZ3RoLmh0bWwKKyAgICAgICAgICAgICAgIGZhc3QvY3NzL2dl
dENvbXB1dGVkU3R5bGUvY29tcHV0ZWQtc3R5bGUuaHRtbAorICAgICAgICAgICAgICAgZmFzdC9j
c3MvZ2V0Q29tcHV0ZWRTdHlsZS9jb21wdXRlZC1zdHlsZS13aXRob3V0LXJlbmRlcmVyLmh0bWwK
KyAgICAgICAgICAgICAgIGZhc3QvY3NzL2ltYWdlLXNldC1wYXJzaW5nLmh0bWwKKyAgICAgICAg
ICAgICAgIGZhc3QvY3NzL3BhcnNlLWJvcmRlci1pbWFnZS1yZXBlYXQtbnVsbC1jcmFzaC5odG1s
CisgICAgICAgICAgICAgICBmYXN0L2Nzcy91cmktdG9rZW4tcGFyc2luZy5odG1sCisgICAgICAg
ICAgICAgICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtYmFja2dyb3Vu
ZHMvcGFyc2luZy9ib3JkZXItaW1hZ2UtdmFsaWQuaHRtbAorICAgICAgICAgICAgICAgaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNhc2NhZGUvYWxsLXByb3AtaW5pdGlh
bC14bWwuaHRtbAorICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9jc3MvY3Nzb20vZ2V0Q29tcHV0ZWRTdHlsZS1kZXRhY2hlZC1zdWJ0cmVlLmh0bWwKKyAgICAg
ICAgICAgICAgIHN2Zy9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS1iYXNpYy54aHRtbAorCisgICAgICAg
ICogY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHA6CisgICAgICAgIChXZWJDb3Jl
Ojp2YWx1ZUZvck5pbmVQaWVjZUltYWdlKToKKyAgICAgICAgKFdlYkNvcmU6OnZhbHVlRm9yUmVm
bGVjdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpDb21wdXRlZFN0eWxlRXh0cmFjdG9yOjp2YWx1
ZUZvclByb3BlcnR5SW5TdHlsZSk6CisgICAgICAgICogY3NzL0NTU1Byb3BlcnRpZXMuanNvbjoK
KyAgICAgICAgKiBjc3MvQ1NTVG9TdHlsZU1hcC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NU
b1N0eWxlTWFwOjptYXBOaW5lUGllY2VJbWFnZSk6CisgICAgICAgICogY3NzL0NTU1RvU3R5bGVN
YXAuaDoKKyAgICAgICAgKiBjc3MvU3R5bGVQcm9wZXJ0aWVzLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OlN0eWxlUHJvcGVydGllczo6Z2V0UHJvcGVydHlWYWx1ZSBjb25zdCk6CisgICAgICAgIChX
ZWJDb3JlOjpTdHlsZVByb3BlcnRpZXM6OmJvcmRlckltYWdlUHJvcGVydHlWYWx1ZSBjb25zdCk6
CisgICAgICAgIChXZWJDb3JlOjpTdHlsZVByb3BlcnRpZXM6OmFzVGV4dCBjb25zdCk6CisgICAg
ICAgICogY3NzL1N0eWxlUHJvcGVydGllcy5oOgorICAgICAgICAqIGNzcy9wYXJzZXIvQ1NTUHJv
cGVydHlQYXJzZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Y29uc3VtZUJvcmRlckltYWdlV2lk
dGgpOgorICAgICAgICAoV2ViQ29yZTo6Y29uc3VtZUJvcmRlckltYWdlQ29tcG9uZW50cyk6Cisg
ICAgICAgIChXZWJDb3JlOjpjb25zdW1lV2Via2l0Qm9yZGVySW1hZ2UpOgorICAgICAgICAoV2Vi
Q29yZTo6Q1NTUHJvcGVydHlQYXJzZXI6OnBhcnNlU2luZ2xlVmFsdWUpOgorICAgICAgICAoV2Vi
Q29yZTo6Q1NTUHJvcGVydHlQYXJzZXI6OmNvbnN1bWVCb3JkZXJJbWFnZSk6CisgICAgICAgIChX
ZWJDb3JlOjpDU1NQcm9wZXJ0eVBhcnNlcjo6cGFyc2VTaG9ydGhhbmQpOgorICAgICAgICAqIHN0
eWxlL1Byb3BlcnR5Q2FzY2FkZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6c2hvdWxk
QXBwbHlQcm9wZXJ0eUluUGFyc2VPcmRlcik6CisgICAgICAgICogc3R5bGUvU3R5bGVCdWlsZGVy
Q29udmVydGVyLmg6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6QnVpbGRlckNvbnZlcnRlcjo6
Y29udmVydEJvcmRlck1hc2spOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGU6OkJ1aWxkZXJDb252
ZXJ0ZXI6OmNvbnZlcnRSZWZsZWN0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlOjpCdWls
ZGVyQ29udmVydGVyOjpjb252ZXJ0Qm9yZGVySW1hZ2UpOiBEZWxldGVkLgorCiAyMDIyLTAzLTE0
ICBBbnRvaW5lIFF1aW50ICA8Z3Jhb3V0c0B3ZWJraXQub3JnPgogCiAgICAgICAgIFttb2RlbF0g
PG1vZGVsIGludGVyYWN0aXZlPiBkb2Vzbid0IGFsbG93IG1vZGVsIHRvIGJlIHJvdGF0ZWQgb24g
aU9TCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xh
cmF0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRp
b24uY3BwCmluZGV4IGFjZWJkYjM0NjRiZmUxZjI3NWRlNGFiMDhiYTE4ZGY4NTY4ZWJkODMuLjIx
YjM4NTVlZGY3MzRmMWNkYTkzNDBjZWMxOGE3ZTdiYTIwOTExMTYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3BwCkBAIC0yMjQsNyAr
MjI0LDcgQEAgc3RhdGljIFJlZjxDU1NWYWx1ZT4gdmFsdWVGb3JOaW5lUGllY2VJbWFnZVJlcGVh
dChjb25zdCBOaW5lUGllY2VJbWFnZSYgaW1hZ2UpCiAgICAgcmV0dXJuIGNzc1ZhbHVlUG9vbC5j
cmVhdGVWYWx1ZShQYWlyOjpjcmVhdGUoV1RGTW92ZShob3Jpem9udGFsUmVwZWF0KSwgV1RGTW92
ZSh2ZXJ0aWNhbFJlcGVhdCkpKTsKIH0KIAotc3RhdGljIFJlZjxDU1NWYWx1ZT4gdmFsdWVGb3JO
aW5lUGllY2VJbWFnZShjb25zdCBOaW5lUGllY2VJbWFnZSYgaW1hZ2UsIGNvbnN0IFJlbmRlclN0
eWxlJiBzdHlsZSkKK3N0YXRpYyBSZWZQdHI8Q1NTVmFsdWU+IHZhbHVlRm9yTmluZVBpZWNlSW1h
Z2UoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eUlELCBjb25zdCBOaW5lUGllY2VJbWFnZSYgaW1hZ2Us
IGNvbnN0IFJlbmRlclN0eWxlJiBzdHlsZSkKIHsKICAgICBpZiAoIWltYWdlLmhhc0ltYWdlKCkp
CiAgICAgICAgIHJldHVybiBDU1NWYWx1ZVBvb2w6OnNpbmdsZXRvbigpLmNyZWF0ZUlkZW50aWZp
ZXJWYWx1ZShDU1NWYWx1ZU5vbmUpOwpAQCAtMjMzLDYgKzIzMywyMCBAQCBzdGF0aWMgUmVmPENT
U1ZhbHVlPiB2YWx1ZUZvck5pbmVQaWVjZUltYWdlKGNvbnN0IE5pbmVQaWVjZUltYWdlJiBpbWFn
ZSwgY29uc3QgUgogICAgIGlmIChpbWFnZS5pbWFnZSgpKQogICAgICAgICBpbWFnZVZhbHVlID0g
aW1hZ2UuaW1hZ2UoKS0+Y3NzVmFsdWUoKTsKIAorICAgIGlmIChwcm9wZXJ0eUlEID09IENTU1By
b3BlcnR5V2Via2l0Qm9yZGVySW1hZ2UpIHsKKyAgICAgICAgLy8gLXdlYmtpdC1ib3JkZXItaW1h
Z2UgaGFzIGEgbGVnYWN5IGJlaGF2aW9yIHRoYXQgbWFrZXMgZml4ZWQgYm9yZGVyIHNsaWNlcyBh
bHNvIHNldCB0aGUgYm9yZGVyIHdpZHRocy4KKyAgICAgICAgLy8gU28gaWYgdGhleSBhcmUgZml4
ZWQgYnV0IHRoZSBib3JkZXIgd2lkdGhzIGRvbid0IG1hdGNoLCAtd2Via2l0LWJvcmRlci1pbWFn
ZSBjYW4ndCByZXByZXNlbnQgdGhlIGN1cnJlbnQgc3RhdGUuCisgICAgICAgIGNvbnN0IGF1dG8m
IGJvcmRlclNsaWNlcyA9IGltYWdlLmJvcmRlclNsaWNlcygpOworICAgICAgICBpZiAoYm9yZGVy
U2xpY2VzLnRvcCgpLmlzRml4ZWQoKSAmJiBib3JkZXJTbGljZXMudG9wKCkudmFsdWUoKSAhPSBz
dHlsZS5ib3JkZXJUb3BXaWR0aCgpKQorICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAg
ICAgIGlmIChib3JkZXJTbGljZXMucmlnaHQoKS5pc0ZpeGVkKCkgJiYgYm9yZGVyU2xpY2VzLnJp
Z2h0KCkudmFsdWUoKSAhPSBzdHlsZS5ib3JkZXJSaWdodFdpZHRoKCkpCisgICAgICAgICAgICBy
ZXR1cm4gbnVsbHB0cjsKKyAgICAgICAgaWYgKGJvcmRlclNsaWNlcy5ib3R0b20oKS5pc0ZpeGVk
KCkgJiYgYm9yZGVyU2xpY2VzLmJvdHRvbSgpLnZhbHVlKCkgIT0gc3R5bGUuYm9yZGVyQm90dG9t
V2lkdGgoKSkKKyAgICAgICAgICAgIHJldHVybiBudWxscHRyOworICAgICAgICBpZiAoYm9yZGVy
U2xpY2VzLmxlZnQoKS5pc0ZpeGVkKCkgJiYgYm9yZGVyU2xpY2VzLmxlZnQoKS52YWx1ZSgpICE9
IHN0eWxlLmJvcmRlckxlZnRXaWR0aCgpKQorICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7Cisg
ICAgfQorCiAgICAgYXV0byBpbWFnZVNsaWNlcyA9IHZhbHVlRm9yTmluZVBpZWNlSW1hZ2VTbGlj
ZShpbWFnZSk7CiAgICAgYXV0byBib3JkZXJTbGljZXMgPSB2YWx1ZUZvck5pbmVQaWVjZUltYWdl
UXVhZChpbWFnZS5ib3JkZXJTbGljZXMoKSwgc3R5bGUpOwogICAgIGF1dG8gb3V0c2V0ID0gdmFs
dWVGb3JOaW5lUGllY2VJbWFnZVF1YWQoaW1hZ2Uub3V0c2V0KCksIHN0eWxlKTsKQEAgLTI4NCw3
ICsyOTgsNyBAQCBzdGF0aWMgUmVmPENTU1ZhbHVlPiB2YWx1ZUZvclJlZmxlY3Rpb24oY29uc3Qg
U3R5bGVSZWZsZWN0aW9uKiByZWZsZWN0aW9uLCBjb25zdAogICAgICAgICBicmVhazsKICAgICB9
CiAKLSAgICByZXR1cm4gQ1NTUmVmbGVjdFZhbHVlOjpjcmVhdGUoZGlyZWN0aW9uLnJlbGVhc2VO
b25OdWxsKCksIG9mZnNldC5yZWxlYXNlTm9uTnVsbCgpLCB2YWx1ZUZvck5pbmVQaWVjZUltYWdl
KHJlZmxlY3Rpb24tPm1hc2soKSwgc3R5bGUpKTsKKyAgICByZXR1cm4gQ1NTUmVmbGVjdFZhbHVl
OjpjcmVhdGUoZGlyZWN0aW9uLnJlbGVhc2VOb25OdWxsKCksIG9mZnNldC5yZWxlYXNlTm9uTnVs
bCgpLCB2YWx1ZUZvck5pbmVQaWVjZUltYWdlKENTU1Byb3BlcnR5V2Via2l0Qm94UmVmbGVjdCwg
cmVmbGVjdGlvbi0+bWFzaygpLCBzdHlsZSkpOwogfQogCiBzdGF0aWMgUmVmPENTU1ZhbHVlTGlz
dD4gY3JlYXRlUG9zaXRpb25MaXN0Rm9yTGF5ZXIoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eUlELCBj
b25zdCBGaWxsTGF5ZXImIGxheWVyLCBjb25zdCBSZW5kZXJTdHlsZSYgc3R5bGUpCkBAIC0zNzkx
LDggKzM4MDUsOSBAQCBSZWZQdHI8Q1NTVmFsdWU+IENvbXB1dGVkU3R5bGVFeHRyYWN0b3I6OnZh
bHVlRm9yUHJvcGVydHlJblN0eWxlKGNvbnN0IFJlbmRlclN0eQogICAgICAgICB9CiAgICAgICAg
IGNhc2UgQ1NTUHJvcGVydHlCYWNrZmFjZVZpc2liaWxpdHk6CiAgICAgICAgICAgICByZXR1cm4g
Y3NzVmFsdWVQb29sLmNyZWF0ZUlkZW50aWZpZXJWYWx1ZSgoc3R5bGUuYmFja2ZhY2VWaXNpYmls
aXR5KCkgPT0gQmFja2ZhY2VWaXNpYmlsaXR5OjpIaWRkZW4pID8gQ1NTVmFsdWVIaWRkZW4gOiBD
U1NWYWx1ZVZpc2libGUpOworICAgICAgICBjYXNlIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2U6CiAg
ICAgICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJJbWFnZToKLSAgICAgICAgICAgIHJl
dHVybiB2YWx1ZUZvck5pbmVQaWVjZUltYWdlKHN0eWxlLmJvcmRlckltYWdlKCksIHN0eWxlKTsK
KyAgICAgICAgICAgIHJldHVybiB2YWx1ZUZvck5pbmVQaWVjZUltYWdlKHByb3BlcnR5SUQsIHN0
eWxlLmJvcmRlckltYWdlKCksIHN0eWxlKTsKICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRl
ckltYWdlT3V0c2V0OgogICAgICAgICAgICAgcmV0dXJuIHZhbHVlRm9yTmluZVBpZWNlSW1hZ2VR
dWFkKHN0eWxlLmJvcmRlckltYWdlKCkub3V0c2V0KCksIHN0eWxlKTsKICAgICAgICAgY2FzZSBD
U1NQcm9wZXJ0eUJvcmRlckltYWdlUmVwZWF0OgpAQCAtMzgwMiw3ICszODE3LDcgQEAgUmVmUHRy
PENTU1ZhbHVlPiBDb21wdXRlZFN0eWxlRXh0cmFjdG9yOjp2YWx1ZUZvclByb3BlcnR5SW5TdHls
ZShjb25zdCBSZW5kZXJTdHkKICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlckltYWdlV2lk
dGg6CiAgICAgICAgICAgICByZXR1cm4gdmFsdWVGb3JOaW5lUGllY2VJbWFnZVF1YWQoc3R5bGUu
Ym9yZGVySW1hZ2UoKS5ib3JkZXJTbGljZXMoKSwgc3R5bGUpOwogICAgICAgICBjYXNlIENTU1By
b3BlcnR5V2Via2l0TWFza0JveEltYWdlOgotICAgICAgICAgICAgcmV0dXJuIHZhbHVlRm9yTmlu
ZVBpZWNlSW1hZ2Uoc3R5bGUubWFza0JveEltYWdlKCksIHN0eWxlKTsKKyAgICAgICAgICAgIHJl
dHVybiB2YWx1ZUZvck5pbmVQaWVjZUltYWdlKHByb3BlcnR5SUQsIHN0eWxlLm1hc2tCb3hJbWFn
ZSgpLCBzdHlsZSk7CiAgICAgICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2VP
dXRzZXQ6CiAgICAgICAgICAgICByZXR1cm4gdmFsdWVGb3JOaW5lUGllY2VJbWFnZVF1YWQoc3R5
bGUubWFza0JveEltYWdlKCkub3V0c2V0KCksIHN0eWxlKTsKICAgICAgICAgY2FzZSBDU1NQcm9w
ZXJ0eVdlYmtpdE1hc2tCb3hJbWFnZVJlcGVhdDoKQEAgLTQwMzgsOCArNDA1Myw2IEBAIFJlZlB0
cjxDU1NWYWx1ZT4gQ29tcHV0ZWRTdHlsZUV4dHJhY3Rvcjo6dmFsdWVGb3JQcm9wZXJ0eUluU3R5
bGUoY29uc3QgUmVuZGVyU3R5CiAgICAgICAgICAgICByZXR1cm4gZ2V0Q1NTUHJvcGVydHlWYWx1
ZXNGb3I0U2lkZXNTaG9ydGhhbmQoYm9yZGVyQ29sb3JTaG9ydGhhbmQoKSk7CiAgICAgICAgIGNh
c2UgQ1NTUHJvcGVydHlCb3JkZXJMZWZ0OgogICAgICAgICAgICAgcmV0dXJuIGdldENTU1Byb3Bl
cnR5VmFsdWVzRm9yU2hvcnRoYW5kUHJvcGVydGllcyhib3JkZXJMZWZ0U2hvcnRoYW5kKCkpOwot
ICAgICAgICBjYXNlIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2U6Ci0gICAgICAgICAgICByZXR1cm4g
dmFsdWVGb3JOaW5lUGllY2VJbWFnZShzdHlsZS5ib3JkZXJJbWFnZSgpLCBzdHlsZSk7CiAgICAg
ICAgIGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJJbmxpbmU6IHsKICAgICAgICAgICAgIGF1dG8gdmFs
dWUgPSBwcm9wZXJ0eVZhbHVlKENTU1Byb3BlcnR5Qm9yZGVySW5saW5lU3RhcnQsIERvTm90VXBk
YXRlTGF5b3V0KTsKICAgICAgICAgICAgIGlmICghY29tcGFyZUNTU1ZhbHVlUHRyPENTU1ZhbHVl
Pih2YWx1ZSwgcHJvcGVydHlWYWx1ZShDU1NQcm9wZXJ0eUJvcmRlcklubGluZUVuZCwgRG9Ob3RV
cGRhdGVMYXlvdXQpKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0
aWVzLmpzb24gYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVydGllcy5qc29uCmluZGV4IDU1
YTY0YTI5NDY5MTM2YzhhNjkwYmU1YmI0OWM4NDhmZmNhNzNhOWMuLjUzMGUzYjNiMjU4NGNhYjUz
MDZiZTcxN2I5MzI3MTA1MTBiN2U5ZDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9D
U1NQcm9wZXJ0aWVzLmpzb24KKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3BlcnRpZXMu
anNvbgpAQCAtNTM3NCw4ICs1Mzc0LDIwIEBACiAgICAgICAgIH0sCiAgICAgICAgICItd2Via2l0
LWJvcmRlci1pbWFnZSI6IHsKICAgICAgICAgICAgICJjb2RlZ2VuLXByb3BlcnRpZXMiOiB7Ci0g
ICAgICAgICAgICAgICAgImluaXRpYWwiOiAiaW5pdGlhbE5pbmVQaWVjZUltYWdlIiwKLSAgICAg
ICAgICAgICAgICAiY29udmVydGVyIjogIkJvcmRlckltYWdlPENTU1Byb3BlcnR5V2Via2l0Qm9y
ZGVySW1hZ2U+IgorICAgICAgICAgICAgICAgICJsb25naGFuZHMiOiBbCisgICAgICAgICAgICAg
ICAgICAgICJib3JkZXItdG9wLXdpZHRoIiwKKyAgICAgICAgICAgICAgICAgICAgImJvcmRlci1y
aWdodC13aWR0aCIsCisgICAgICAgICAgICAgICAgICAgICJib3JkZXItYm90dG9tLXdpZHRoIiwK
KyAgICAgICAgICAgICAgICAgICAgImJvcmRlci1sZWZ0LXdpZHRoIiwKKyAgICAgICAgICAgICAg
ICAgICAgImJvcmRlci1pbWFnZS1zb3VyY2UiLAorICAgICAgICAgICAgICAgICAgICAiYm9yZGVy
LWltYWdlLXNsaWNlIiwKKyAgICAgICAgICAgICAgICAgICAgImJvcmRlci1pbWFnZS13aWR0aCIs
CisgICAgICAgICAgICAgICAgICAgICJib3JkZXItaW1hZ2Utb3V0c2V0IiwKKyAgICAgICAgICAg
ICAgICAgICAgImJvcmRlci1pbWFnZS1yZXBlYXQiCisgICAgICAgICAgICAgICAgXQorICAgICAg
ICAgICAgfSwKKyAgICAgICAgICAgICJzdGF0dXMiOiB7CisgICAgICAgICAgICAgICAgImNvbW1l
bnQiOiAiRGlmZmVycyBmcm9tIGJvcmRlci1pbWFnZSBpbiB0aGF0IGl0IGFsd2F5cyBpbmNsdWRl
cyB0aGUgJ2ZpbGwnIGtleXdvcmQgaW4gJ2JvcmRlci1pbWFnZS1zbGljZScsIGFuZCBpdCBzZXRz
ICdib3JkZXItKi13aWR0aCcgaWYgdGhlIGNvcnJlc3BvbmRpbmcgc2xpY2Ugb2Zmc2V0IGlzLiIK
ICAgICAgICAgICAgIH0KICAgICAgICAgfSwKICAgICAgICAgIi13ZWJraXQtYm9yZGVyLXJhZGl1
cyI6IHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NUb1N0eWxlTWFwLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NUb1N0eWxlTWFwLmNwcAppbmRleCA5NDY2MDUxMzUwNTNh
YjVkMzY4NzhjY2JmMzIxNWI5M2E3MTI1OGE5Li40MTlmZWI5N2E1NmJhNjNjY2MzYjg4Y2M5MGQ3
ZTQ4YTcwMjM1YWUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVG9TdHlsZU1h
cC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1RvU3R5bGVNYXAuY3BwCkBAIC00NzEs
NyArNDcxLDcgQEAgdm9pZCBDU1NUb1N0eWxlTWFwOjptYXBBbmltYXRpb25Db21wb3NpdGVPcGVy
YXRpb24oQW5pbWF0aW9uJiBhbmltYXRpb24sIGNvbnN0IEMKICAgICAgICAgYW5pbWF0aW9uLnNl
dENvbXBvc2l0ZU9wZXJhdGlvbigqY29tcG9zaXRlT3BlcmF0aW9uKTsKIH0KIAotdm9pZCBDU1NU
b1N0eWxlTWFwOjptYXBOaW5lUGllY2VJbWFnZShDU1NQcm9wZXJ0eUlEIHByb3BlcnR5LCBDU1NW
YWx1ZSogdmFsdWUsIE5pbmVQaWVjZUltYWdlJiBpbWFnZSkKK3ZvaWQgQ1NTVG9TdHlsZU1hcDo6
bWFwTmluZVBpZWNlSW1hZ2UoQ1NTVmFsdWUqIHZhbHVlLCBOaW5lUGllY2VJbWFnZSYgaW1hZ2Up
CiB7CiAgICAgLy8gSWYgd2UncmUgbm90IGEgdmFsdWUgbGlzdCwgdGhlbiB3ZSBhcmUgIm5vbmUi
IGFuZCBkb24ndCBuZWVkIHRvIGFsdGVyIHRoZSBlbXB0eSBpbWFnZSBhdCBhbGwuCiAgICAgaWYg
KCFpczxDU1NWYWx1ZUxpc3Q+KHZhbHVlKSkKQEAgLTUwMywyMCArNTAzLDYgQEAgdm9pZCBDU1NU
b1N0eWxlTWFwOjptYXBOaW5lUGllY2VJbWFnZShDU1NQcm9wZXJ0eUlEIHByb3BlcnR5LCBDU1NW
YWx1ZSogdmFsdWUsIE4KICAgICAgICAgICAgIG1hcE5pbmVQaWVjZUltYWdlUmVwZWF0KGN1cnJl
bnQsIGltYWdlKTsKICAgICAgICAgfQogICAgIH0KLQotICAgIGlmIChwcm9wZXJ0eSA9PSBDU1NQ
cm9wZXJ0eVdlYmtpdEJvcmRlckltYWdlKSB7Ci0gICAgICAgIC8vIFdlIGhhdmUgdG8gcHJlc2Vy
dmUgdGhlIGxlZ2FjeSBiZWhhdmlvciBvZiAtd2Via2l0LWJvcmRlci1pbWFnZSBhbmQgbWFrZSB0
aGUgYm9yZGVyIHNsaWNlcwotICAgICAgICAvLyBhbHNvIHNldCB0aGUgYm9yZGVyIHdpZHRocy4g
V2UgZG9uJ3QgbmVlZCB0byB3b3JyeSBhYm91dCBwZXJjZW50YWdlcywgc2luY2Ugd2UgZG9uJ3Qg
ZXZlbiBzdXBwb3J0Ci0gICAgICAgIC8vIHRob3NlIG9uIHJlYWwgYm9yZGVycyB5ZXQuCi0gICAg
ICAgIGlmIChpbWFnZS5ib3JkZXJTbGljZXMoKS50b3AoKS5pc0ZpeGVkKCkpCi0gICAgICAgICAg
ICBzdHlsZSgpLT5zZXRCb3JkZXJUb3BXaWR0aChpbWFnZS5ib3JkZXJTbGljZXMoKS50b3AoKS52
YWx1ZSgpKTsKLSAgICAgICAgaWYgKGltYWdlLmJvcmRlclNsaWNlcygpLnJpZ2h0KCkuaXNGaXhl
ZCgpKQotICAgICAgICAgICAgc3R5bGUoKS0+c2V0Qm9yZGVyUmlnaHRXaWR0aChpbWFnZS5ib3Jk
ZXJTbGljZXMoKS5yaWdodCgpLnZhbHVlKCkpOwotICAgICAgICBpZiAoaW1hZ2UuYm9yZGVyU2xp
Y2VzKCkuYm90dG9tKCkuaXNGaXhlZCgpKQotICAgICAgICAgICAgc3R5bGUoKS0+c2V0Qm9yZGVy
Qm90dG9tV2lkdGgoaW1hZ2UuYm9yZGVyU2xpY2VzKCkuYm90dG9tKCkudmFsdWUoKSk7Ci0gICAg
ICAgIGlmIChpbWFnZS5ib3JkZXJTbGljZXMoKS5sZWZ0KCkuaXNGaXhlZCgpKQotICAgICAgICAg
ICAgc3R5bGUoKS0+c2V0Qm9yZGVyTGVmdFdpZHRoKGltYWdlLmJvcmRlclNsaWNlcygpLmxlZnQo
KS52YWx1ZSgpKTsKLSAgICB9CiB9CiAKIHZvaWQgQ1NTVG9TdHlsZU1hcDo6bWFwTmluZVBpZWNl
SW1hZ2VTbGljZShDU1NWYWx1ZSYgdmFsdWUsIE5pbmVQaWVjZUltYWdlJiBpbWFnZSkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NUb1N0eWxlTWFwLmggYi9Tb3VyY2UvV2ViQ29y
ZS9jc3MvQ1NTVG9TdHlsZU1hcC5oCmluZGV4IDRjOWJiNDRjYjkzMjg4ZGY3NjRlMDU5MGEzNmRi
ZWM3YjFmZjc4YzkuLmZlYTc1ZGI5NGYxYmZiOWQyY2QyYTk0Mjg2ZGUyMDQ5MDdjNjJkNTUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NUb1N0eWxlTWFwLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvY3NzL0NTU1RvU3R5bGVNYXAuaApAQCAtNzAsNyArNzAsNyBAQCBwdWJsaWM6CiAg
ICAgdm9pZCBtYXBBbmltYXRpb25UaW1pbmdGdW5jdGlvbihBbmltYXRpb24mLCBjb25zdCBDU1NW
YWx1ZSYpOwogICAgIHZvaWQgbWFwQW5pbWF0aW9uQ29tcG9zaXRlT3BlcmF0aW9uKEFuaW1hdGlv
biYsIGNvbnN0IENTU1ZhbHVlJik7CiAKLSAgICB2b2lkIG1hcE5pbmVQaWVjZUltYWdlKENTU1By
b3BlcnR5SUQsIENTU1ZhbHVlKiwgTmluZVBpZWNlSW1hZ2UmKTsKKyAgICB2b2lkIG1hcE5pbmVQ
aWVjZUltYWdlKENTU1ZhbHVlKiwgTmluZVBpZWNlSW1hZ2UmKTsKICAgICB2b2lkIG1hcE5pbmVQ
aWVjZUltYWdlU2xpY2UoQ1NTVmFsdWUmLCBOaW5lUGllY2VJbWFnZSYpOwogICAgIExlbmd0aEJv
eCBtYXBOaW5lUGllY2VJbWFnZVF1YWQoQ1NTVmFsdWUmKTsKICAgICB2b2lkIG1hcE5pbmVQaWVj
ZUltYWdlUmVwZWF0KENTU1ZhbHVlJiwgTmluZVBpZWNlSW1hZ2UmKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVByb3BlcnRpZXMuY3BwIGIvU291cmNlL1dlYkNvcmUvY3Nz
L1N0eWxlUHJvcGVydGllcy5jcHAKaW5kZXggYjU3OWI5Mzk0MWQ4MzM4YWEzZjgwYzNhOGJjN2Zk
YTQ4MTA3N2E3Yi4uNTgwMmQ5NzAzMDFlMzI0NzI0ZjQyMDI4NDY1ZmJlNGNhMzdkZDk2YiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUHJvcGVydGllcy5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvY3NzL1N0eWxlUHJvcGVydGllcy5jcHAKQEAgLTM3LDYgKzM3LDcgQEAKICNp
bmNsdWRlICJDb2xvci5oIgogI2luY2x1ZGUgIkRvY3VtZW50LmgiCiAjaW5jbHVkZSAiUHJvcGVy
dHlTZXRDU1NTdHlsZURlY2xhcmF0aW9uLmgiCisjaW5jbHVkZSAiUmVjdC5oIgogI2luY2x1ZGUg
IlN0eWxlUHJvcGVydHlTaG9ydGhhbmQuaCIKICNpbmNsdWRlICJTdHlsZVByb3BlcnR5U2hvcnRo
YW5kRnVuY3Rpb25zLmgiCiAjaW5jbHVkZSAiU3R5bGVTaGVldENvbnRlbnRzLmgiCkBAIC0yMTcs
NiArMjE4LDkgQEAgU3RyaW5nIFN0eWxlUHJvcGVydGllczo6Z2V0UHJvcGVydHlWYWx1ZShDU1NQ
cm9wZXJ0eUlEIHByb3BlcnR5SUQpIGNvbnN0CiAgICAgICAgIHJldHVybiBnZXRTaG9ydGhhbmRW
YWx1ZShib3JkZXJCbG9ja1N0YXJ0U2hvcnRoYW5kKCkpOwogICAgIGNhc2UgQ1NTUHJvcGVydHlC
b3JkZXJCbG9ja0VuZDoKICAgICAgICAgcmV0dXJuIGdldFNob3J0aGFuZFZhbHVlKGJvcmRlckJs
b2NrRW5kU2hvcnRoYW5kKCkpOworICAgIGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJJbWFnZToKKyAg
ICBjYXNlIENTU1Byb3BlcnR5V2Via2l0Qm9yZGVySW1hZ2U6CisgICAgICAgIHJldHVybiBib3Jk
ZXJJbWFnZVByb3BlcnR5VmFsdWUocHJvcGVydHlJRCk7CiAgICAgY2FzZSBDU1NQcm9wZXJ0eUJv
cmRlcklubGluZToKICAgICAgICAgcmV0dXJuIGJvcmRlclByb3BlcnR5VmFsdWUoYm9yZGVySW5s
aW5lV2lkdGhTaG9ydGhhbmQoKSwgYm9yZGVySW5saW5lU3R5bGVTaG9ydGhhbmQoKSwgYm9yZGVy
SW5saW5lQ29sb3JTaG9ydGhhbmQoKSk7CiAgICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlcklubGlu
ZUNvbG9yOgpAQCAtOTAwLDYgKzkwNCw4NyBAQCBTdHJpbmcgU3R5bGVQcm9wZXJ0aWVzOjpnZXRB
bGlnbm1lbnRTaG9ydGhhbmRWYWx1ZShjb25zdCBTdHlsZVByb3BlcnR5U2hvcnRoYW5kJgogICAg
IHJldHVybiB2YWx1ZTsKIH0KIAorU3RyaW5nIFN0eWxlUHJvcGVydGllczo6Ym9yZGVySW1hZ2VQ
cm9wZXJ0eVZhbHVlKENTU1Byb3BlcnR5SUQgcHJvcGVydHlJRCkgY29uc3QKK3sKKyAgICBjb25z
dCBTdHlsZVByb3BlcnR5U2hvcnRoYW5kJiBzaG9ydGhhbmQgPSBib3JkZXJJbWFnZVNob3J0aGFu
ZCgpOworICAgIFN0cmluZ0J1aWxkZXIgcmVzdWx0OworICAgIGJvb2wgbGFzdFByb3BlcnR5V2Fz
SW1wb3J0YW50ID0gZmFsc2U7CisgICAgYm9vbCBvbWl0dGVkU2xpY2UgPSBmYWxzZTsKKyAgICBi
b29sIG9taXR0ZWRXaWR0aCA9IGZhbHNlOworICAgIFN0cmluZyBjb21tb25XaWRlVmFsdWVUZXh0
OworICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBzaG9ydGhhbmQubGVuZ3RoKCk7ICsraSkg
eworICAgICAgICAvLyBBbGwgbG9uZ2hhbmRzIHNob3VsZCBoYXZlIHRoZSBzYW1lIGltcG9ydGFu
Y2UuCisgICAgICAgIGF1dG8gbG9uZ2hhbmQgPSBzaG9ydGhhbmQucHJvcGVydGllcygpW2ldOwor
ICAgICAgICBib29sIGN1cnJlbnRQcm9wZXJ0eUlzSW1wb3J0YW50ID0gcHJvcGVydHlJc0ltcG9y
dGFudChsb25naGFuZCk7CisgICAgICAgIGlmIChpICYmIGxhc3RQcm9wZXJ0eVdhc0ltcG9ydGFu
dCAhPSBjdXJyZW50UHJvcGVydHlJc0ltcG9ydGFudCkKKyAgICAgICAgICAgIHJldHVybiBTdHJp
bmcoKTsKKyAgICAgICAgbGFzdFByb3BlcnR5V2FzSW1wb3J0YW50ID0gY3VycmVudFByb3BlcnR5
SXNJbXBvcnRhbnQ7CisKKyAgICAgICAgLy8gQWxsIGxvbmdoYW5kcyBzaG91bGQgYmUgcHJlc2Vu
dC4KKyAgICAgICAgYXV0byB2YWx1ZSA9IGdldFByb3BlcnR5Q1NTVmFsdWUobG9uZ2hhbmQpOwor
ICAgICAgICBpZiAoIXZhbHVlKQorICAgICAgICAgICAgcmV0dXJuIFN0cmluZygpOworCisgICAg
ICAgIC8vIE9taXQgaW1wbGljaXQgaW5pdGlhbCB2YWx1ZXMuIEhvd2V2ZXIsIGJvcmRlci1pbWFn
ZS13aWR0aCBhbmQgYm9yZGVyLWltYWdlLW91dHNldCByZXF1aXJlIGJvcmRlci1pbWFnZS1zbGlj
ZS4KKyAgICAgICAgaWYgKHZhbHVlLT5pc0luaXRpYWxWYWx1ZSgpICYmIGlzUHJvcGVydHlJbXBs
aWNpdChsb25naGFuZCkpIHsKKyAgICAgICAgICAgIGlmIChsb25naGFuZCA9PSBDU1NQcm9wZXJ0
eUJvcmRlckltYWdlU2xpY2UpCisgICAgICAgICAgICAgICAgb21pdHRlZFNsaWNlID0gdHJ1ZTsK
KyAgICAgICAgICAgIGVsc2UgaWYgKGxvbmdoYW5kID09IENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VX
aWR0aCkKKyAgICAgICAgICAgICAgICBvbWl0dGVkV2lkdGggPSB0cnVlOworICAgICAgICAgICAg
Y29udGludWU7CisgICAgICAgIH0KKyAgICAgICAgaWYgKG9taXR0ZWRTbGljZSAmJiAobG9uZ2hh
bmQgPT0gQ1NTUHJvcGVydHlCb3JkZXJJbWFnZVdpZHRoIHx8IGxvbmdoYW5kID09IENTU1Byb3Bl
cnR5Qm9yZGVySW1hZ2VPdXRzZXQpKQorICAgICAgICAgICAgcmV0dXJuIFN0cmluZygpOworCisg
ICAgICAgIC8vIElmIGEgbG9uZ2hhbmQgaXMgc2V0IHRvIGEgY3NzLXdpZGUga2V5d29yZCwgdGhl
IG90aGVycyBzaG91bGQgYmUgdGhlIHNhbWUuCisgICAgICAgIFN0cmluZyB2YWx1ZVRleHQgPSB2
YWx1ZS0+Y3NzVGV4dCgpOworICAgICAgICBpZiAoaXNDU1NXaWRlVmFsdWVLZXl3b3JkKHZhbHVl
VGV4dCkpIHsKKyAgICAgICAgICAgIGlmICghaSkKKyAgICAgICAgICAgICAgICBjb21tb25XaWRl
VmFsdWVUZXh0ID0gdmFsdWVUZXh0OworICAgICAgICAgICAgZWxzZSBpZiAoY29tbW9uV2lkZVZh
bHVlVGV4dCAhPSB2YWx1ZVRleHQpCisgICAgICAgICAgICAgICAgcmV0dXJuIFN0cmluZygpOwor
ICAgICAgICAgICAgY29udGludWU7CisgICAgICAgIH0KKyAgICAgICAgaWYgKCFjb21tb25XaWRl
VmFsdWVUZXh0LmlzTnVsbCgpKQorICAgICAgICAgICAgcmV0dXJuIFN0cmluZygpOworCisgICAg
ICAgIC8vIC13ZWJraXQtYm9yZGVyLWltYWdlIGhhcyBhIGxlZ2FjeSBiZWhhdmlvciB0aGF0IG1h
a2VzIGZpeGVkIGJvcmRlciBzbGljZXMgYWxzbyBzZXQgdGhlIGJvcmRlciB3aWR0aHMuCisgICAg
ICAgIC8vIFNvIGlmIHRoZXkgYXJlIGZpeGVkIGJ1dCB0aGUgYm9yZGVyIHdpZHRocyBkb24ndCBt
YXRjaCwgLXdlYmtpdC1ib3JkZXItaW1hZ2UgY2FuJ3QgcmVwcmVzZW50IHRoZSBjdXJyZW50IHN0
YXRlLgorICAgICAgICBpZiAocHJvcGVydHlJRCA9PSBDU1NQcm9wZXJ0eVdlYmtpdEJvcmRlcklt
YWdlICYmIGxvbmdoYW5kID09IENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VXaWR0aCAmJiBpczxDU1NQ
cmltaXRpdmVWYWx1ZT4oKnZhbHVlKSkgeworICAgICAgICAgICAgaWYgKFF1YWQqIHF1YWQgPSBk
b3duY2FzdDxDU1NQcmltaXRpdmVWYWx1ZT4oKnZhbHVlKS5xdWFkVmFsdWUoKSkgeworICAgICAg
ICAgICAgICAgIGF1dG8gaXNNaXNtYXRjaGluZ0xlbmd0aCA9IFsmXShDU1NQcm9wZXJ0eUlEIG1h
dGNoaW5nSUQsIFJlZlB0cjxDU1NQcmltaXRpdmVWYWx1ZT4gdmFsdWUpIHsKKyAgICAgICAgICAg
ICAgICAgICAgaWYgKCF2YWx1ZSB8fCAhdmFsdWUtPmlzTGVuZ3RoKCkpCisgICAgICAgICAgICAg
ICAgICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICAgICAgICAgICAgICAgIGF1dG8gbWF0Y2hp
bmdWYWx1ZSA9IGdldFByb3BlcnR5Q1NTVmFsdWUobWF0Y2hpbmdJRCk7CisgICAgICAgICAgICAg
ICAgICAgIGlmIChtYXRjaGluZ1ZhbHVlID09IHZhbHVlKQorICAgICAgICAgICAgICAgICAgICAg
ICAgcmV0dXJuIGZhbHNlOworICAgICAgICAgICAgICAgICAgICByZXR1cm4gIW1hdGNoaW5nVmFs
dWUgfHwgKm1hdGNoaW5nVmFsdWUgIT0gKnZhbHVlOworICAgICAgICAgICAgICAgIH07CisgICAg
ICAgICAgICAgICAgaWYgKGlzTWlzbWF0Y2hpbmdMZW5ndGgoQ1NTUHJvcGVydHlCb3JkZXJUb3BX
aWR0aCwgcXVhZC0+dG9wKCkpKQorICAgICAgICAgICAgICAgICAgICByZXR1cm4gU3RyaW5nKCk7
CisgICAgICAgICAgICAgICAgaWYgKGlzTWlzbWF0Y2hpbmdMZW5ndGgoQ1NTUHJvcGVydHlCb3Jk
ZXJSaWdodFdpZHRoLCBxdWFkLT5yaWdodCgpKSkKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJu
IFN0cmluZygpOworICAgICAgICAgICAgICAgIGlmIChpc01pc21hdGNoaW5nTGVuZ3RoKENTU1By
b3BlcnR5Qm9yZGVyQm90dG9tV2lkdGgsIHF1YWQtPmJvdHRvbSgpKSkKKyAgICAgICAgICAgICAg
ICAgICAgcmV0dXJuIFN0cmluZygpOworICAgICAgICAgICAgICAgIGlmIChpc01pc21hdGNoaW5n
TGVuZ3RoKENTU1Byb3BlcnR5Qm9yZGVyTGVmdFdpZHRoLCBxdWFkLT5sZWZ0KCkpKQorICAgICAg
ICAgICAgICAgICAgICByZXR1cm4gU3RyaW5nKCk7CisgICAgICAgICAgICB9CisgICAgICAgIH0K
KworICAgICAgICAvLyBBcHBlbmQgc2VwYXJhdG9ycyBhbmQgdGV4dC4KKyAgICAgICAgaWYgKGxv
bmdoYW5kID09IENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VXaWR0aCkKKyAgICAgICAgICAgIHJlc3Vs
dC5hcHBlbmQoIiAvICIpOworICAgICAgICBlbHNlIGlmIChsb25naGFuZCA9PSBDU1NQcm9wZXJ0
eUJvcmRlckltYWdlT3V0c2V0KQorICAgICAgICAgICAgcmVzdWx0LmFwcGVuZChvbWl0dGVkV2lk
dGggPyAiIC8gLyAiIDogIiAvICIpOworICAgICAgICBlbHNlIGlmICghcmVzdWx0LmlzRW1wdHko
KSkKKyAgICAgICAgICAgIHJlc3VsdC5hcHBlbmQoIiAiKTsKKyAgICAgICAgcmVzdWx0LmFwcGVu
ZCh2YWx1ZVRleHQpOworICAgIH0KKyAgICBpZiAoIWNvbW1vbldpZGVWYWx1ZVRleHQuaXNOdWxs
KCkpCisgICAgICAgIHJldHVybiBjb21tb25XaWRlVmFsdWVUZXh0OworICAgIHJldHVybiByZXN1
bHQudG9TdHJpbmcoKTsKK30KKwogU3RyaW5nIFN0eWxlUHJvcGVydGllczo6Ym9yZGVyUHJvcGVy
dHlWYWx1ZShjb25zdCBTdHlsZVByb3BlcnR5U2hvcnRoYW5kJiB3aWR0aCwgY29uc3QgU3R5bGVQ
cm9wZXJ0eVNob3J0aGFuZCYgc3R5bGUsIGNvbnN0IFN0eWxlUHJvcGVydHlTaG9ydGhhbmQmIGNv
bG9yKSBjb25zdAogewogICAgIGNvbnN0IFN0eWxlUHJvcGVydHlTaG9ydGhhbmQgcHJvcGVydGll
c1szXSA9IHsgd2lkdGgsIHN0eWxlLCBjb2xvciB9OwpAQCAtMTM0Myw2ICsxNDI4LDEzIEBAIFN0
cmluZyBTdHlsZVByb3BlcnRpZXM6OmFzVGV4dCgpIGNvbnN0CiAgICAgICAgICAgICBjYXNlIENT
U1Byb3BlcnR5V2Via2l0Qm9yZGVyVmVydGljYWxTcGFjaW5nOgogICAgICAgICAgICAgICAgIHNo
b3J0aGFuZFByb3BlcnR5SUQgPSBDU1NQcm9wZXJ0eUJvcmRlclNwYWNpbmc7CiAgICAgICAgICAg
ICAgICAgYnJlYWs7CisgICAgICAgICAgICBjYXNlIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VTb3Vy
Y2U6CisgICAgICAgICAgICBjYXNlIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VTbGljZToKKyAgICAg
ICAgICAgIGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJJbWFnZVdpZHRoOgorICAgICAgICAgICAgY2Fz
ZSBDU1NQcm9wZXJ0eUJvcmRlckltYWdlT3V0c2V0OgorICAgICAgICAgICAgY2FzZSBDU1NQcm9w
ZXJ0eUJvcmRlckltYWdlUmVwZWF0OgorICAgICAgICAgICAgICAgIHNob3J0aGFuZFByb3BlcnR5
SUQgPSBDU1NQcm9wZXJ0eUJvcmRlckltYWdlOworICAgICAgICAgICAgICAgIGJyZWFrOwogICAg
ICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eUZvbnRGYW1pbHk6CiAgICAgICAgICAgICBjYXNlIENT
U1Byb3BlcnR5TGluZUhlaWdodDoKICAgICAgICAgICAgIGNhc2UgQ1NTUHJvcGVydHlGb250U2l6
ZToKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVByb3BlcnRpZXMuaCBiL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVByb3BlcnRpZXMuaAppbmRleCA3Yzk4NGRiMzVkZmI3OTRi
ZDE5YzAxODU4ZDM4MTI0YzU5ZDhlYjc0Li5kYTVjZjYxM2JlMWYwMmQ3NDBiYjBiNmIyZWUwOWMz
NDdiNjFjYzI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVQcm9wZXJ0aWVz
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUHJvcGVydGllcy5oCkBAIC0xNjUsNiAr
MTY1LDcgQEAgcHJpdmF0ZToKICAgICBTdHJpbmcgZ2V0U2hvcnRoYW5kVmFsdWUoY29uc3QgU3R5
bGVQcm9wZXJ0eVNob3J0aGFuZCYsIGNvbnN0IGNoYXIqIHNlcGFyYXRvciA9ICIgIikgY29uc3Q7
CiAgICAgU3RyaW5nIGdldENvbW1vblZhbHVlKGNvbnN0IFN0eWxlUHJvcGVydHlTaG9ydGhhbmQm
KSBjb25zdDsKICAgICBTdHJpbmcgZ2V0QWxpZ25tZW50U2hvcnRoYW5kVmFsdWUoY29uc3QgU3R5
bGVQcm9wZXJ0eVNob3J0aGFuZCYpIGNvbnN0OworICAgIFN0cmluZyBib3JkZXJJbWFnZVByb3Bl
cnR5VmFsdWUoQ1NTUHJvcGVydHlJRCkgY29uc3Q7CiAgICAgU3RyaW5nIGJvcmRlclByb3BlcnR5
VmFsdWUoY29uc3QgU3R5bGVQcm9wZXJ0eVNob3J0aGFuZCYsIGNvbnN0IFN0eWxlUHJvcGVydHlT
aG9ydGhhbmQmLCBjb25zdCBTdHlsZVByb3BlcnR5U2hvcnRoYW5kJikgY29uc3Q7CiAgICAgU3Ry
aW5nIHBhZ2VCcmVha1Byb3BlcnR5VmFsdWUoY29uc3QgU3R5bGVQcm9wZXJ0eVNob3J0aGFuZCYp
IGNvbnN0OwogICAgIFN0cmluZyBnZXRMYXllcmVkU2hvcnRoYW5kVmFsdWUoY29uc3QgU3R5bGVQ
cm9wZXJ0eVNob3J0aGFuZCYpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3Nz
L3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2Vy
L0NTU1Byb3BlcnR5UGFyc2VyLmNwcAppbmRleCBjNWYzNDQxNjVmNDYxNjJmZjhlZDExMDNhODBi
ODhhZTE5MDYyMzdmLi5iM2QzNzA4ZmE5ZGM5ZjlmZjMwNmNhODMyZTcxMjFlMGQ1ZDM5OTg4IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VyLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VyLmNwcApA
QCAtMzAzNyw3ICszMDM3LDcgQEAgc3RhdGljIFJlZlB0cjxDU1NWYWx1ZT4gY29uc3VtZUJvcmRl
ckltYWdlT3V0c2V0KENTU1BhcnNlclRva2VuUmFuZ2UmIHJhbmdlKQogICAgIHJldHVybiBDU1NW
YWx1ZVBvb2w6OnNpbmdsZXRvbigpLmNyZWF0ZVZhbHVlKFdURk1vdmUocXVhZCkpOwogfQogCi1z
dGF0aWMgUmVmUHRyPENTU1ZhbHVlPiBjb25zdW1lQm9yZGVySW1hZ2VXaWR0aChDU1NQYXJzZXJU
b2tlblJhbmdlJiByYW5nZSkKK3N0YXRpYyBSZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+IGNvbnN1
bWVCb3JkZXJJbWFnZVdpZHRoKENTU1BhcnNlclRva2VuUmFuZ2UmIHJhbmdlKQogewogICAgIFJl
ZlB0cjxDU1NQcmltaXRpdmVWYWx1ZT4gd2lkdGhzWzRdOwogCkBAIC0zMDY3LDcgKzMwNjcsNyBA
QCBzdGF0aWMgUmVmUHRyPENTU1ZhbHVlPiBjb25zdW1lQm9yZGVySW1hZ2VXaWR0aChDU1NQYXJz
ZXJUb2tlblJhbmdlJiByYW5nZSkKIH0KIAogc3RhdGljIGJvb2wgY29uc3VtZUJvcmRlckltYWdl
Q29tcG9uZW50cyhDU1NQcm9wZXJ0eUlEIHByb3BlcnR5LCBDU1NQYXJzZXJUb2tlblJhbmdlJiBy
YW5nZSwgY29uc3QgQ1NTUGFyc2VyQ29udGV4dCYgY29udGV4dCwgUmVmUHRyPENTU1ZhbHVlPiYg
c291cmNlLAotICAgIFJlZlB0cjxDU1NWYWx1ZT4mIHNsaWNlLCBSZWZQdHI8Q1NTVmFsdWU+JiB3
aWR0aCwgUmVmUHRyPENTU1ZhbHVlPiYgb3V0c2V0LCBSZWZQdHI8Q1NTVmFsdWU+JiByZXBlYXQp
CisgICAgUmVmUHRyPENTU1ZhbHVlPiYgc2xpY2UsIFJlZlB0cjxDU1NQcmltaXRpdmVWYWx1ZT4m
IHdpZHRoLCBSZWZQdHI8Q1NTVmFsdWU+JiBvdXRzZXQsIFJlZlB0cjxDU1NWYWx1ZT4mIHJlcGVh
dCkKIHsKICAgICBkbyB7CiAgICAgICAgIGlmICghc291cmNlKSB7CkBAIC0zMTA4LDcgKzMxMDgs
NyBAQCBzdGF0aWMgUmVmUHRyPENTU1ZhbHVlPiBjb25zdW1lV2Via2l0Qm9yZGVySW1hZ2UoQ1NT
UHJvcGVydHlJRCBwcm9wZXJ0eSwgQ1NTUGFycwogewogICAgIFJlZlB0cjxDU1NWYWx1ZT4gc291
cmNlOwogICAgIFJlZlB0cjxDU1NWYWx1ZT4gc2xpY2U7Ci0gICAgUmVmUHRyPENTU1ZhbHVlPiB3
aWR0aDsKKyAgICBSZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+IHdpZHRoOwogICAgIFJlZlB0cjxD
U1NWYWx1ZT4gb3V0c2V0OwogICAgIFJlZlB0cjxDU1NWYWx1ZT4gcmVwZWF0OwogICAgIGlmIChj
b25zdW1lQm9yZGVySW1hZ2VDb21wb25lbnRzKHByb3BlcnR5LCByYW5nZSwgY29udGV4dCwgc291
cmNlLCBzbGljZSwgd2lkdGgsIG91dHNldCwgcmVwZWF0KSkKQEAgLTQ2MjEsNyArNDYyMSw2IEBA
IFJlZlB0cjxDU1NWYWx1ZT4gQ1NTUHJvcGVydHlQYXJzZXI6OnBhcnNlU2luZ2xlVmFsdWUoQ1NT
UHJvcGVydHlJRCBwcm9wZXJ0eSwgQ1NTCiAgICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlckltYWdl
V2lkdGg6CiAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdE1hc2tCb3hJbWFnZVdpZHRoOgogICAg
ICAgICByZXR1cm4gY29uc3VtZUJvcmRlckltYWdlV2lkdGgobV9yYW5nZSk7Ci0gICAgY2FzZSBD
U1NQcm9wZXJ0eVdlYmtpdEJvcmRlckltYWdlOgogICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRN
YXNrQm94SW1hZ2U6CiAgICAgICAgIHJldHVybiBjb25zdW1lV2Via2l0Qm9yZGVySW1hZ2UocHJv
cGVydHksIG1fcmFuZ2UsIG1fY29udGV4dCk7CiAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEJv
eFJlZmxlY3Q6CkBAIC01NTQxLDcgKzU1NDAsNyBAQCBib29sIENTU1Byb3BlcnR5UGFyc2VyOjpj
b25zdW1lQm9yZGVySW1hZ2UoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eSwgYm9vbCBpbXBvcnRhbgog
ewogICAgIFJlZlB0cjxDU1NWYWx1ZT4gc291cmNlOwogICAgIFJlZlB0cjxDU1NWYWx1ZT4gc2xp
Y2U7Ci0gICAgUmVmUHRyPENTU1ZhbHVlPiB3aWR0aDsKKyAgICBSZWZQdHI8Q1NTUHJpbWl0aXZl
VmFsdWU+IHdpZHRoOwogICAgIFJlZlB0cjxDU1NWYWx1ZT4gb3V0c2V0OwogICAgIFJlZlB0cjxD
U1NWYWx1ZT4gcmVwZWF0OwogICAgIApAQCAtNTU0OSwxOCArNTU0OCwzMyBAQCBib29sIENTU1By
b3BlcnR5UGFyc2VyOjpjb25zdW1lQm9yZGVySW1hZ2UoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eSwg
Ym9vbCBpbXBvcnRhbgogICAgICAgICBhdXRvJiB2YWx1ZVBvb2wgPSBDU1NWYWx1ZVBvb2w6OnNp
bmdsZXRvbigpOwogICAgICAgICBzd2l0Y2ggKHByb3BlcnR5KSB7CiAgICAgICAgIGNhc2UgQ1NT
UHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2U6Ci0gICAgICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJ
bXBsaWNpdERlZmF1bHQoQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2VTb3VyY2UsIENTU1By
b3BlcnR5V2Via2l0TWFza0JveEltYWdlLCBXVEZNb3ZlKHNvdXJjZSksIHZhbHVlUG9vbC5jcmVh
dGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQpOwotICAgICAgICAgICAgYWRkUHJv
cGVydHlXaXRoSW1wbGljaXREZWZhdWx0KENTU1Byb3BlcnR5V2Via2l0TWFza0JveEltYWdlU2xp
Y2UsIENTU1Byb3BlcnR5V2Via2l0TWFza0JveEltYWdlLCBXVEZNb3ZlKHNsaWNlKSwgdmFsdWVQ
b29sLmNyZWF0ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCksIGltcG9ydGFudCk7Ci0gICAgICAgICAg
ICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNpdERlZmF1bHQoQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94
SW1hZ2VXaWR0aCwgQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2UsIFdURk1vdmUod2lkdGgp
LCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFsdWUoKSwgaW1wb3J0YW50KTsKLSAg
ICAgICAgICAgIGFkZFByb3BlcnR5V2l0aEltcGxpY2l0RGVmYXVsdChDU1NQcm9wZXJ0eVdlYmtp
dE1hc2tCb3hJbWFnZU91dHNldCwgQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2UsIFdURk1v
dmUob3V0c2V0KSwgdmFsdWVQb29sLmNyZWF0ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCksIGltcG9y
dGFudCk7Ci0gICAgICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNpdERlZmF1bHQoQ1NTUHJv
cGVydHlXZWJraXRNYXNrQm94SW1hZ2VSZXBlYXQsIENTU1Byb3BlcnR5V2Via2l0TWFza0JveElt
YWdlLCBXVEZNb3ZlKHJlcGVhdCksIHZhbHVlUG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1
ZSgpLCBpbXBvcnRhbnQpOworICAgICAgICAgICAgYWRkUHJvcGVydHlXaXRoSW1wbGljaXREZWZh
dWx0KENTU1Byb3BlcnR5V2Via2l0TWFza0JveEltYWdlU291cmNlLCBwcm9wZXJ0eSwgV1RGTW92
ZShzb3VyY2UpLCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFsdWUoKSwgaW1wb3J0
YW50KTsKKyAgICAgICAgICAgIGFkZFByb3BlcnR5V2l0aEltcGxpY2l0RGVmYXVsdChDU1NQcm9w
ZXJ0eVdlYmtpdE1hc2tCb3hJbWFnZVNsaWNlLCBwcm9wZXJ0eSwgV1RGTW92ZShzbGljZSksIHZh
bHVlUG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQpOworICAgICAg
ICAgICAgYWRkUHJvcGVydHlXaXRoSW1wbGljaXREZWZhdWx0KENTU1Byb3BlcnR5V2Via2l0TWFz
a0JveEltYWdlV2lkdGgsIHByb3BlcnR5LCBXVEZNb3ZlKHdpZHRoKSwgdmFsdWVQb29sLmNyZWF0
ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCksIGltcG9ydGFudCk7CisgICAgICAgICAgICBhZGRQcm9w
ZXJ0eVdpdGhJbXBsaWNpdERlZmF1bHQoQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2VPdXRz
ZXQsIHByb3BlcnR5LCBXVEZNb3ZlKG91dHNldCksIHZhbHVlUG9vbC5jcmVhdGVJbXBsaWNpdElu
aXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQpOworICAgICAgICAgICAgYWRkUHJvcGVydHlXaXRoSW1w
bGljaXREZWZhdWx0KENTU1Byb3BlcnR5V2Via2l0TWFza0JveEltYWdlUmVwZWF0LCBwcm9wZXJ0
eSwgV1RGTW92ZShyZXBlYXQpLCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFsdWUo
KSwgaW1wb3J0YW50KTsKICAgICAgICAgICAgIHJldHVybiB0cnVlOworICAgICAgICBjYXNlIENT
U1Byb3BlcnR5V2Via2l0Qm9yZGVySW1hZ2U6CisgICAgICAgICAgICAvLyBXZSBoYXZlIHRvIHBy
ZXNlcnZlIHRoZSBsZWdhY3kgYmVoYXZpb3Igb2YgLXdlYmtpdC1ib3JkZXItaW1hZ2UgYW5kIG1h
a2UgdGhlIGJvcmRlciBzbGljZXMKKyAgICAgICAgICAgIC8vIGFsc28gc2V0IHRoZSBib3JkZXIg
d2lkdGhzLiBXZSBkb24ndCBuZWVkIHRvIHdvcnJ5IGFib3V0IHBlcmNlbnRhZ2VzLCBzaW5jZSB3
ZSBkb24ndCBldmVuIHN1cHBvcnQKKyAgICAgICAgICAgIC8vIHRob3NlIG9uIHJlYWwgYm9yZGVy
cyB5ZXQuCisgICAgICAgICAgICBpZiAoUXVhZCogcXVhZCA9IHdpZHRoID8gd2lkdGgtPnF1YWRW
YWx1ZSgpIDogbnVsbHB0cikgeworICAgICAgICAgICAgICAgIGF1dG8gYWRkUHJvcGVydHlJZkxl
bmd0aCA9IFsmXShDU1NQcm9wZXJ0eUlEIGxvbmdoYW5kLCBSZWZQdHI8Q1NTUHJpbWl0aXZlVmFs
dWU+IHZhbHVlKSB7CisgICAgICAgICAgICAgICAgICAgIGlmICh2YWx1ZSAmJiB2YWx1ZS0+aXNM
ZW5ndGgoKSkKKyAgICAgICAgICAgICAgICAgICAgICAgIGFkZFByb3BlcnR5KGxvbmdoYW5kLCBD
U1NQcm9wZXJ0eVdlYmtpdEJvcmRlckltYWdlLCB2YWx1ZS5yZWxlYXNlTm9uTnVsbCgpLCBpbXBv
cnRhbnQpOworICAgICAgICAgICAgICAgIH07CisgICAgICAgICAgICAgICAgYWRkUHJvcGVydHlJ
Zkxlbmd0aChDU1NQcm9wZXJ0eUJvcmRlclRvcFdpZHRoLCBxdWFkLT50b3AoKSk7CisgICAgICAg
ICAgICAgICAgYWRkUHJvcGVydHlJZkxlbmd0aChDU1NQcm9wZXJ0eUJvcmRlclJpZ2h0V2lkdGgs
IHF1YWQtPnJpZ2h0KCkpOworICAgICAgICAgICAgICAgIGFkZFByb3BlcnR5SWZMZW5ndGgoQ1NT
UHJvcGVydHlCb3JkZXJCb3R0b21XaWR0aCwgcXVhZC0+Ym90dG9tKCkpOworICAgICAgICAgICAg
ICAgIGFkZFByb3BlcnR5SWZMZW5ndGgoQ1NTUHJvcGVydHlCb3JkZXJMZWZ0V2lkdGgsIHF1YWQt
PmxlZnQoKSk7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBGQUxMVEhST1VHSDsKICAgICAg
ICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlckltYWdlOgotICAgICAgICAgICAgYWRkUHJvcGVydHlX
aXRoSW1wbGljaXREZWZhdWx0KENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VTb3VyY2UsIENTU1Byb3Bl
cnR5Qm9yZGVySW1hZ2UsIFdURk1vdmUoc291cmNlKSwgdmFsdWVQb29sLmNyZWF0ZUltcGxpY2l0
SW5pdGlhbFZhbHVlKCksIGltcG9ydGFudCk7Ci0gICAgICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJ
bXBsaWNpdERlZmF1bHQoQ1NTUHJvcGVydHlCb3JkZXJJbWFnZVNsaWNlLCBDU1NQcm9wZXJ0eUJv
cmRlckltYWdlLCBXVEZNb3ZlKHNsaWNlKSwgdmFsdWVQb29sLmNyZWF0ZUltcGxpY2l0SW5pdGlh
bFZhbHVlKCksIGltcG9ydGFudCk7Ci0gICAgICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNp
dERlZmF1bHQoQ1NTUHJvcGVydHlCb3JkZXJJbWFnZVdpZHRoLCBDU1NQcm9wZXJ0eUJvcmRlcklt
YWdlLCBXVEZNb3ZlKHdpZHRoKSwgdmFsdWVQb29sLmNyZWF0ZUltcGxpY2l0SW5pdGlhbFZhbHVl
KCksIGltcG9ydGFudCk7Ci0gICAgICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNpdERlZmF1
bHQoQ1NTUHJvcGVydHlCb3JkZXJJbWFnZU91dHNldCwgQ1NTUHJvcGVydHlCb3JkZXJJbWFnZSwg
V1RGTW92ZShvdXRzZXQpLCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFsdWUoKSwg
aW1wb3J0YW50KTsKLSAgICAgICAgICAgIGFkZFByb3BlcnR5V2l0aEltcGxpY2l0RGVmYXVsdChD
U1NQcm9wZXJ0eUJvcmRlckltYWdlUmVwZWF0LCBDU1NQcm9wZXJ0eUJvcmRlckltYWdlLCBXVEZN
b3ZlKHJlcGVhdCksIHZhbHVlUG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgpLCBpbXBv
cnRhbnQpOworICAgICAgICAgICAgYWRkUHJvcGVydHlXaXRoSW1wbGljaXREZWZhdWx0KENTU1By
b3BlcnR5Qm9yZGVySW1hZ2VTb3VyY2UsIHByb3BlcnR5LCBXVEZNb3ZlKHNvdXJjZSksIHZhbHVl
UG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQpOworICAgICAgICAg
ICAgYWRkUHJvcGVydHlXaXRoSW1wbGljaXREZWZhdWx0KENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VT
bGljZSwgcHJvcGVydHksIFdURk1vdmUoc2xpY2UpLCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJ
bml0aWFsVmFsdWUoKSwgaW1wb3J0YW50KTsKKyAgICAgICAgICAgIGFkZFByb3BlcnR5V2l0aElt
cGxpY2l0RGVmYXVsdChDU1NQcm9wZXJ0eUJvcmRlckltYWdlV2lkdGgsIHByb3BlcnR5LCBXVEZN
b3ZlKHdpZHRoKSwgdmFsdWVQb29sLmNyZWF0ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCksIGltcG9y
dGFudCk7CisgICAgICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNpdERlZmF1bHQoQ1NTUHJv
cGVydHlCb3JkZXJJbWFnZU91dHNldCwgcHJvcGVydHksIFdURk1vdmUob3V0c2V0KSwgdmFsdWVQ
b29sLmNyZWF0ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCksIGltcG9ydGFudCk7CisgICAgICAgICAg
ICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNpdERlZmF1bHQoQ1NTUHJvcGVydHlCb3JkZXJJbWFnZVJl
cGVhdCwgcHJvcGVydHksIFdURk1vdmUocmVwZWF0KSwgdmFsdWVQb29sLmNyZWF0ZUltcGxpY2l0
SW5pdGlhbFZhbHVlKCksIGltcG9ydGFudCk7CiAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAg
ICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwpAQCAtNjQ0
Miw2ICs2NDU2LDcgQEAgYm9vbCBDU1NQcm9wZXJ0eVBhcnNlcjo6cGFyc2VTaG9ydGhhbmQoQ1NT
UHJvcGVydHlJRCBwcm9wZXJ0eSwgYm9vbCBpbXBvcnRhbnQpCiAgICAgICAgIHJldHVybiB0cnVl
OwogICAgIH0KICAgICBjYXNlIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2U6CisgICAgY2FzZSBDU1NQ
cm9wZXJ0eVdlYmtpdEJvcmRlckltYWdlOgogICAgICAgICByZXR1cm4gY29uc3VtZUJvcmRlcklt
YWdlKHByb3BlcnR5LCBpbXBvcnRhbnQpOwogICAgIGNhc2UgQ1NTUHJvcGVydHlQYWdlQnJlYWtB
ZnRlcjoKICAgICBjYXNlIENTU1Byb3BlcnR5UGFnZUJyZWFrQmVmb3JlOgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvc3R5bGUvUHJvcGVydHlDYXNjYWRlLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L3N0eWxlL1Byb3BlcnR5Q2FzY2FkZS5jcHAKaW5kZXggOWU5YjI5YjdjNDU0NDg2MTUyZWVhM2Fl
ZThjNzZkZWQ3YWQ3ODEwZS4uYWMwNDcxYjQ5NDg0N2E3MWY1NjBlNDBiYjFmNDJlNjg2MTRiYmM0
ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3R5bGUvUHJvcGVydHlDYXNjYWRlLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9Qcm9wZXJ0eUNhc2NhZGUuY3BwCkBAIC00NywxMyAr
NDcsNiBAQCBzdGF0aWMgaW5saW5lIGJvb2wgc2hvdWxkQXBwbHlQcm9wZXJ0eUluUGFyc2VPcmRl
cihDU1NQcm9wZXJ0eUlEIHByb3BlcnR5SUQpCiAgICAgY2FzZSBDU1NQcm9wZXJ0eUJhY2tncm91
bmRPcmlnaW46CiAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEJhY2tncm91bmRTaXplOgogICAg
IGNhc2UgQ1NTUHJvcGVydHlCYWNrZ3JvdW5kU2l6ZToKLSAgICBjYXNlIENTU1Byb3BlcnR5V2Vi
a2l0Qm9yZGVySW1hZ2U6Ci0gICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlckltYWdlOgotICAgIGNh
c2UgQ1NTUHJvcGVydHlCb3JkZXJJbWFnZVNsaWNlOgotICAgIGNhc2UgQ1NTUHJvcGVydHlCb3Jk
ZXJJbWFnZVNvdXJjZToKLSAgICBjYXNlIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VPdXRzZXQ6Ci0g
ICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlckltYWdlUmVwZWF0OgotICAgIGNhc2UgQ1NTUHJvcGVy
dHlCb3JkZXJJbWFnZVdpZHRoOgogICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRCb3hTaGFkb3c6
CiAgICAgY2FzZSBDU1NQcm9wZXJ0eUJveFNoYWRvdzoKICAgICBjYXNlIENTU1Byb3BlcnR5V2Vi
a2l0VGV4dERlY29yYXRpb246CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHls
ZUJ1aWxkZXJDb252ZXJ0ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlQnVpbGRlckNv
bnZlcnRlci5oCmluZGV4IDc0NjRmODRkOGJmNmIyYjJhMzMxMjNkNTkyYmUyOTJmMTRjYzI4ZGUu
LmI3MWI4OTIxZDU0NDFiMTUyYTczMzYzYjY0MzVmZTI4ZmU4ODFmZjcgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlQnVpbGRlckNvbnZlcnRlci5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3N0eWxlL1N0eWxlQnVpbGRlckNvbnZlcnRlci5oCkBAIC04NSw3ICs4NSw2IEBAIHB1
YmxpYzoKICAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBUPiBzdGF0aWMgVCBjb252ZXJ0TnVtYmVyKEJ1
aWxkZXJTdGF0ZSYsIGNvbnN0IENTU1ZhbHVlJik7CiAgICAgdGVtcGxhdGU8dHlwZW5hbWUgVD4g
c3RhdGljIFQgY29udmVydE51bWJlck9yQXV0byhCdWlsZGVyU3RhdGUmLCBjb25zdCBDU1NWYWx1
ZSYpOwogICAgIHN0YXRpYyBzaG9ydCBjb252ZXJ0V2Via2l0SHlwaGVuYXRlTGltaXRMaW5lcyhC
dWlsZGVyU3RhdGUmLCBjb25zdCBDU1NWYWx1ZSYpOwotICAgIHRlbXBsYXRlPENTU1Byb3BlcnR5
SUQ+IHN0YXRpYyBOaW5lUGllY2VJbWFnZSBjb252ZXJ0Qm9yZGVySW1hZ2UoQnVpbGRlclN0YXRl
JiwgQ1NTVmFsdWUmKTsKICAgICB0ZW1wbGF0ZTxDU1NQcm9wZXJ0eUlEPiBzdGF0aWMgTmluZVBp
ZWNlSW1hZ2UgY29udmVydEJvcmRlck1hc2soQnVpbGRlclN0YXRlJiwgQ1NTVmFsdWUmKTsKICAg
ICB0ZW1wbGF0ZTxDU1NQcm9wZXJ0eUlEPiBzdGF0aWMgUmVmUHRyPFN0eWxlSW1hZ2U+IGNvbnZl
cnRTdHlsZUltYWdlKEJ1aWxkZXJTdGF0ZSYsIENTU1ZhbHVlJik7CiAgICAgc3RhdGljIEltYWdl
T3JpZW50YXRpb24gY29udmVydEltYWdlT3JpZW50YXRpb24oQnVpbGRlclN0YXRlJiwgY29uc3Qg
Q1NTVmFsdWUmKTsKQEAgLTQ2NCwxOSArNDYzLDExIEBAIGlubGluZSBzaG9ydCBCdWlsZGVyQ29u
dmVydGVyOjpjb252ZXJ0V2Via2l0SHlwaGVuYXRlTGltaXRMaW5lcyhCdWlsZGVyU3RhdGUmLCBj
CiAgICAgcmV0dXJuIHByaW1pdGl2ZVZhbHVlLnZhbHVlPHNob3J0PihDU1NVbml0VHlwZTo6Q1NT
X05VTUJFUik7CiB9CiAKLXRlbXBsYXRlPENTU1Byb3BlcnR5SUQgcHJvcGVydHk+Ci1pbmxpbmUg
TmluZVBpZWNlSW1hZ2UgQnVpbGRlckNvbnZlcnRlcjo6Y29udmVydEJvcmRlckltYWdlKEJ1aWxk
ZXJTdGF0ZSYgYnVpbGRlclN0YXRlLCBDU1NWYWx1ZSYgdmFsdWUpCi17Ci0gICAgTmluZVBpZWNl
SW1hZ2UgaW1hZ2U7Ci0gICAgYnVpbGRlclN0YXRlLnN0eWxlTWFwKCkubWFwTmluZVBpZWNlSW1h
Z2UocHJvcGVydHksICZ2YWx1ZSwgaW1hZ2UpOwotICAgIHJldHVybiBpbWFnZTsKLX0KLQogdGVt
cGxhdGU8Q1NTUHJvcGVydHlJRCBwcm9wZXJ0eT4KIGlubGluZSBOaW5lUGllY2VJbWFnZSBCdWls
ZGVyQ29udmVydGVyOjpjb252ZXJ0Qm9yZGVyTWFzayhCdWlsZGVyU3RhdGUmIGJ1aWxkZXJTdGF0
ZSwgQ1NTVmFsdWUmIHZhbHVlKQogewogICAgIE5pbmVQaWVjZUltYWdlIGltYWdlKE5pbmVQaWVj
ZUltYWdlOjpUeXBlOjpNYXNrKTsKLSAgICBidWlsZGVyU3RhdGUuc3R5bGVNYXAoKS5tYXBOaW5l
UGllY2VJbWFnZShwcm9wZXJ0eSwgJnZhbHVlLCBpbWFnZSk7CisgICAgYnVpbGRlclN0YXRlLnN0
eWxlTWFwKCkubWFwTmluZVBpZWNlSW1hZ2UoJnZhbHVlLCBpbWFnZSk7CiAgICAgcmV0dXJuIGlt
YWdlOwogfQogCkBAIC04MDksNyArODAwLDcgQEAgaW5saW5lIFJlZlB0cjxTdHlsZVJlZmxlY3Rp
b24+IEJ1aWxkZXJDb252ZXJ0ZXI6OmNvbnZlcnRSZWZsZWN0aW9uKEJ1aWxkZXJTdGF0ZSYKICAg
ICByZWZsZWN0aW9uLT5zZXRPZmZzZXQocmVmbGVjdFZhbHVlLm9mZnNldCgpLmNvbnZlcnRUb0xl
bmd0aDxGaXhlZEludGVnZXJDb252ZXJzaW9uIHwgUGVyY2VudENvbnZlcnNpb24gfCBDYWxjdWxh
dGVkQ29udmVyc2lvbj4oYnVpbGRlclN0YXRlLmNzc1RvTGVuZ3RoQ29udmVyc2lvbkRhdGEoKSkp
OwogCiAgICAgTmluZVBpZWNlSW1hZ2UgbWFzayhOaW5lUGllY2VJbWFnZTo6VHlwZTo6TWFzayk7
Ci0gICAgYnVpbGRlclN0YXRlLnN0eWxlTWFwKCkubWFwTmluZVBpZWNlSW1hZ2UoQ1NTUHJvcGVy
dHlXZWJraXRCb3hSZWZsZWN0LCByZWZsZWN0VmFsdWUubWFzaygpLCBtYXNrKTsKKyAgICBidWls
ZGVyU3RhdGUuc3R5bGVNYXAoKS5tYXBOaW5lUGllY2VJbWFnZShyZWZsZWN0VmFsdWUubWFzaygp
LCBtYXNrKTsKICAgICByZWZsZWN0aW9uLT5zZXRNYXNrKG1hc2spOwogCiAgICAgcmV0dXJuIHJl
ZmxlY3Rpb247CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKaW5kZXggNTE3N2VkOTI5ODBkZDhkNGJhNGJmM2FmM2QxNDEwNmE2MmZkNmI4
Ny4uOWE1MGM5YWMxYmVkODg1YTFiYmU3ZmRjZDdiYmY1OTU1ZDBlMjViYSAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDMwIEBACisyMDIyLTAzLTE0ICBPcmlvbCBCcnVmYXUgIDxvYnJ1ZmF1QGlnYWxpYS5jb20+
CisKKyAgICAgICAgW2Nzc10gVHVybiAtd2Via2l0LWJvcmRlci1pbWFnZSBpbnRvIGEgc2hvcnRo
YW5kCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzc0
ODcKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBVcGRh
dGUgdGVzdHMgdG8gdGFrZSBpbnRvIGFjY291bnQgdGhhdCAnLXdlYmtpdC1ib3JkZXItaW1hZ2Un
IGlzIGEgc2hvcnRoYW5kLgorCisgICAgICAgICogZmFzdC9jc3MvYm9yZGVyLWltYWdlLXN0eWxl
LWxlbmd0aC1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9jc3MvYm9yZGVyLWltYWdlLXN0
eWxlLWxlbmd0aC5odG1sOgorICAgICAgICAqIGZhc3QvY3NzL2dldENvbXB1dGVkU3R5bGUvY29t
cHV0ZWQtc3R5bGUtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3QvY3NzL2dldENvbXB1dGVk
U3R5bGUvY29tcHV0ZWQtc3R5bGUtd2l0aG91dC1yZW5kZXJlci1leHBlY3RlZC50eHQ6CisgICAg
ICAgICogZmFzdC9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS9yZXNvdXJjZXMvcHJvcGVydHktbmFtZXMu
anM6CisgICAgICAgICogZmFzdC9jc3MvaW1hZ2Utc2V0LXBhcnNpbmctZXhwZWN0ZWQudHh0Ogor
ICAgICAgICAqIGZhc3QvY3NzL2ltYWdlLXNldC1wYXJzaW5nLmh0bWw6CisgICAgICAgICogZmFz
dC9jc3MvcGFyc2UtYm9yZGVyLWltYWdlLXJlcGVhdC1udWxsLWNyYXNoLWV4cGVjdGVkLnR4dDoK
KyAgICAgICAgKiBmYXN0L2Nzcy91cmktdG9rZW4tcGFyc2luZy1leHBlY3RlZC50eHQ6CisgICAg
ICAgICogZmFzdC9jc3MvdXJpLXRva2VuLXBhcnNpbmcuaHRtbDoKKyAgICAgICAgKiBwbGF0Zm9y
bS9ndGsvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNhc2NhZGUvYWxs
LXByb3AtaW5pdGlhbC14bWwtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHBsYXRmb3JtL2d0ay9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS9nZXRDb21wdXRlZFN0eWxl
LWRldGFjaGVkLXN1YnRyZWUtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHBsYXRmb3JtL2lvcy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY2FzY2FkZS9hbGwtcHJvcC1p
bml0aWFsLXhtbC1leHBlY3RlZC50eHQ6CisgICAgICAgICogcGxhdGZvcm0vaW9zL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dldENvbXB1dGVkU3R5bGUtZGV0YWNo
ZWQtc3VidHJlZS1leHBlY3RlZC50eHQ6CisgICAgICAgICogcGxhdGZvcm0vd3BlL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jYXNjYWRlL2FsbC1wcm9wLWluaXRpYWwt
eG1sLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBwbGF0Zm9ybS93cGUvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nzb20vZ2V0Q29tcHV0ZWRTdHlsZS1kZXRhY2hlZC1zdWJ0
cmVlLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBzdmcvY3NzL2dldENvbXB1dGVkU3R5bGUtYmFz
aWMtZXhwZWN0ZWQudHh0OgorCiAyMDIyLTAzLTE0ICBBbnRvaW5lIFF1aW50ICA8Z3Jhb3V0c0B3
ZWJraXQub3JnPgogCiAgICAgICAgIFttb2RlbF0gPG1vZGVsIGludGVyYWN0aXZlPiBkb2Vzbid0
IGFsbG93IG1vZGVsIHRvIGJlIHJvdGF0ZWQgb24gaU9TCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5n
ZUxvZwppbmRleCBlMThiODhlNDRjOTk2YmYwNzJkZjdkMThkMzE4ZTA2MjQwOTI5Mzg4Li44ZDgw
NWQ0ZTYxZDlkYWY3MDU4MGEwNGFjOGU0MzdiYmMwZmJkNjA5IDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAyMi0wMy0xNCAgT3Jpb2wgQnJ1ZmF1ICA8
b2JydWZhdUBpZ2FsaWEuY29tPgorCisgICAgICAgIFtjc3NdIFR1cm4gLXdlYmtpdC1ib3JkZXIt
aW1hZ2UgaW50byBhIHNob3J0aGFuZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MjM3NDg3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgVXBkYXRlIHRlc3RzIHRvIHRha2UgaW50byBhY2NvdW50IHRoYXQgJy13
ZWJraXQtYm9yZGVyLWltYWdlJyBpcyBhIHNob3J0aGFuZC4KKworICAgICAgICAqIHdlYi1wbGF0
Zm9ybS10ZXN0cy9jc3MvY3NzLWJhY2tncm91bmRzL3BhcnNpbmcvYm9yZGVyLWltYWdlLXZhbGlk
LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1iYWNr
Z3JvdW5kcy9wYXJzaW5nL2JvcmRlci1pbWFnZS12YWxpZC5odG1sOgorICAgICAgICAqIHdlYi1w
bGF0Zm9ybS10ZXN0cy9jc3MvY3Nzb20vZ2V0Q29tcHV0ZWRTdHlsZS1kZXRhY2hlZC1zdWJ0cmVl
LWV4cGVjdGVkLnR4dDoKKwogMjAyMi0wMy0xNCAgQW50b2luZSBRdWludCAgPGdyYW91dHNAd2Vi
a2l0Lm9yZz4KIAogICAgICAgICBbd2ViLWFuaW1hdGlvbnNdIG1hcmtlci1zdGFydCBzaG91bGQg
c3VwcG9ydCBkaXNjcmV0ZSBhbmltYXRpb24KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qv
Y3NzL2JvcmRlci1pbWFnZS1zdHlsZS1sZW5ndGgtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
ZmFzdC9jc3MvYm9yZGVyLWltYWdlLXN0eWxlLWxlbmd0aC1leHBlY3RlZC50eHQKaW5kZXggNjI2
ZWJmYjRmMjFmMDI0OTkxNWNkYzdiNmZkMmE5NzUzZGJlMmFmYS4uOWRjNzZhMTY1MGYxMDdlODRj
Mjc3YTIzNGJmMmVhNDBjNDA0NDlkMCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jc3Mv
Ym9yZGVyLWltYWdlLXN0eWxlLWxlbmd0aC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMv
ZmFzdC9jc3MvYm9yZGVyLWltYWdlLXN0eWxlLWxlbmd0aC1leHBlY3RlZC50eHQKQEAgLTUsNyAr
NSw3IEBAIE9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2Fn
ZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFCiAKIFBBU1MgZS5zdHlsZS5sZW5ndGggaXMg
NQogUEFTUyBlLnN0eWxlLmxlbmd0aCBpcyAwCi1QQVNTIGUuc3R5bGUubGVuZ3RoIGlzIDEKK1BB
U1MgZS5zdHlsZS5sZW5ndGggaXMgNQogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQog
CiBURVNUIENPTVBMRVRFCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9ib3JkZXIt
aW1hZ2Utc3R5bGUtbGVuZ3RoLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9ib3JkZXItaW1h
Z2Utc3R5bGUtbGVuZ3RoLmh0bWwKaW5kZXggNGU0MzY5MzA0MjEwNzdmMDA4ZDdjNzgxMzhiNzli
NzZjMjc4MGM4ZS4uYTI3OWZkZWM3YzhmMjI4NjM3MjkxNTNlOGI3NmM2MDUzYWJiYjY5MCAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvYm9yZGVyLWltYWdlLXN0eWxlLWxlbmd0aC5o
dG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL2JvcmRlci1pbWFnZS1zdHlsZS1sZW5ndGgu
aHRtbApAQCAtMjAsNyArMjAsNyBAQCBzaG91bGRCZSgiZS5zdHlsZS5sZW5ndGgiLCAiNSIpOwog
ZS5zdHlsZS5ib3JkZXJJbWFnZSA9ICIiOwogc2hvdWxkQmUoImUuc3R5bGUubGVuZ3RoIiwgIjAi
KTsKIGUuc3R5bGUud2Via2l0Qm9yZGVySW1hZ2UgPSAidXJsKGR1bW15Oi8vdGVzdC5wbmcpIDAg
NyAwIDEzIC8gMCA3IDAgMTMgc3RyZXRjaCBzdHJldGNoIjsKLXNob3VsZEJlKCJlLnN0eWxlLmxl
bmd0aCIsICIxIik7CitzaG91bGRCZSgiZS5zdHlsZS5sZW5ndGgiLCAiNSIpOwogZG9jdW1lbnQu
Ym9keS5yZW1vdmVDaGlsZCh0ZXN0Q29udGFpbmVyKTsKIAogPC9zY3JpcHQ+CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9nZXRDb21wdXRlZFN0eWxlL2NvbXB1dGVkLXN0eWxlLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL2dldENvbXB1dGVkU3R5bGUvY29tcHV0
ZWQtc3R5bGUtZXhwZWN0ZWQudHh0CmluZGV4IDZlOGVjM2Q4NWNkMWVjOTA3OWM0YzAxMWUxOTNi
YzZiNGQxNzYzNGUuLjg0NjhkMTYzZTE0YjcxOTViYmI2ZmRiZjMxZGEwNTcxMDExYzllN2MgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL2dldENvbXB1dGVkU3R5bGUvY29tcHV0ZWQt
c3R5bGUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL2dldENvbXB1dGVk
U3R5bGUvY29tcHV0ZWQtc3R5bGUtZXhwZWN0ZWQudHh0CkBAIC0yMTAsNyArMjEwLDYgQEAgem9v
bTogMTsKIC13ZWJraXQtYmFja2dyb3VuZC1vcmlnaW46IHBhZGRpbmctYm94OwogLXdlYmtpdC1i
YWNrZ3JvdW5kLXNpemU6IGF1dG87CiAtd2Via2l0LWJvcmRlci1ob3Jpem9udGFsLXNwYWNpbmc6
IDBweDsKLS13ZWJraXQtYm9yZGVyLWltYWdlOiBub25lOwogLXdlYmtpdC1ib3JkZXItdmVydGlj
YWwtc3BhY2luZzogMHB4OwogLXdlYmtpdC1ib3gtYWxpZ246IHN0cmV0Y2g7CiAtd2Via2l0LWJv
eC1kZWNvcmF0aW9uLWJyZWFrOiBzbGljZTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qv
Y3NzL2dldENvbXB1dGVkU3R5bGUvY29tcHV0ZWQtc3R5bGUtd2l0aG91dC1yZW5kZXJlci1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9nZXRDb21wdXRlZFN0eWxlL2NvbXB1dGVk
LXN0eWxlLXdpdGhvdXQtcmVuZGVyZXItZXhwZWN0ZWQudHh0CmluZGV4IDA5ZWUwNTJlOGVhMGQ4
NDQ4Zjc2MDg2NjNiY2Y2OGJiNWEwNTU5NmUuLmM3ZjFjOTcyMjJiYjAzMWIxYzFjZjUxYzczZmM4
MWEzOTU2ZGNlN2UgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL2dldENvbXB1dGVk
U3R5bGUvY29tcHV0ZWQtc3R5bGUtd2l0aG91dC1yZW5kZXJlci1leHBlY3RlZC50eHQKKysrIGIv
TGF5b3V0VGVzdHMvZmFzdC9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS9jb21wdXRlZC1zdHlsZS13aXRo
b3V0LXJlbmRlcmVyLWV4cGVjdGVkLnR4dApAQCAtMjA5LDcgKzIwOSw2IEBAIHpvb206IDEKIC13
ZWJraXQtYmFja2dyb3VuZC1vcmlnaW46IHBhZGRpbmctYm94CiAtd2Via2l0LWJhY2tncm91bmQt
c2l6ZTogYXV0bwogLXdlYmtpdC1ib3JkZXItaG9yaXpvbnRhbC1zcGFjaW5nOiAwcHgKLS13ZWJr
aXQtYm9yZGVyLWltYWdlOiBub25lCiAtd2Via2l0LWJvcmRlci12ZXJ0aWNhbC1zcGFjaW5nOiAw
cHgKIC13ZWJraXQtYm94LWFsaWduOiBzdHJldGNoCiAtd2Via2l0LWJveC1kZWNvcmF0aW9uLWJy
ZWFrOiBzbGljZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvZ2V0Q29tcHV0ZWRT
dHlsZS9yZXNvdXJjZXMvcHJvcGVydHktbmFtZXMuanMgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9n
ZXRDb21wdXRlZFN0eWxlL3Jlc291cmNlcy9wcm9wZXJ0eS1uYW1lcy5qcwppbmRleCBlYjM0ZmRl
NjFjNmM4M2Q3NzMzYTNkMzY1YmJhMTgwMWE5YWE2MDk0Li5mMWZmOGY0MDZiNmM5NjhiZTYyNTRi
Y2ZkN2NmNDg3NTcyZTM1ODNmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9nZXRD
b21wdXRlZFN0eWxlL3Jlc291cmNlcy9wcm9wZXJ0eS1uYW1lcy5qcworKysgYi9MYXlvdXRUZXN0
cy9mYXN0L2Nzcy9nZXRDb21wdXRlZFN0eWxlL3Jlc291cmNlcy9wcm9wZXJ0eS1uYW1lcy5qcwpA
QCAtMTcsNyArMTcsNiBAQCB2YXIgcHJvcGVydGllc1RvVGVzdCA9IHsKICAgICAiLXdlYmtpdC1i
YWNrZ3JvdW5kLW9yaWdpbiI6IHRydWUsCiAgICAgIi13ZWJraXQtYmFja2dyb3VuZC1zaXplIjog
dHJ1ZSwKICAgICAiLXdlYmtpdC1ib3JkZXItaG9yaXpvbnRhbC1zcGFjaW5nIjogdHJ1ZSwKLSAg
ICAiLXdlYmtpdC1ib3JkZXItaW1hZ2UiOiB0cnVlLAogICAgICItd2Via2l0LWJvcmRlci12ZXJ0
aWNhbC1zcGFjaW5nIjogdHJ1ZSwKICAgICAiLXdlYmtpdC1ib3gtYWxpZ24iOiB0cnVlLAogICAg
ICItd2Via2l0LWJveC1kZWNvcmF0aW9uLWJyZWFrIjogdHJ1ZSwKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2Zhc3QvY3NzL2ltYWdlLXNldC1wYXJzaW5nLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2Zhc3QvY3NzL2ltYWdlLXNldC1wYXJzaW5nLWV4cGVjdGVkLnR4dAppbmRleCAzMGFhNjE5
NTljODVhZTgyM2RjZDFmNWU4ODNhNDg2NjlkOTQ4MGZkLi5kOWFkMTBmYzQ1ZDM3ZTNkZWJkZmJm
OTQ0MGE3MDVkOGM5M2MxMjQxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9pbWFn
ZS1zZXQtcGFyc2luZy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvaW1h
Z2Utc2V0LXBhcnNpbmctZXhwZWN0ZWQudHh0CkBAIC04MCw3ICs4MCw3IEBAIFBBU1Mgc3ViUnVs
ZS5jc3NUZXh0IGlzICcxeCcKIFBBU1Mgc3ViUnVsZSBpcyAnYicKIFBBU1Mgc3ViUnVsZS5jc3NU
ZXh0IGlzICcyeCcKIAotU2luZ2xlIHZhbHVlIGZvciBib3JkZXItaW1hZ2UgOiB1cmwoJyNhJykg
MXgKK1NpbmdsZSB2YWx1ZSBmb3IgYm9yZGVyLWltYWdlLXNvdXJjZSA6IHVybCgnI2EnKSAxeAog
UEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCiBQQVNT
IGpzV3JhcHBlckNsYXNzKGltYWdlU2V0UnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3Qn
CiBQQVNTIGpzV3JhcHBlckNsYXNzKGltYWdlU2V0UnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0Z1bmN0
aW9uJwpAQCAtODgsNyArODgsNyBAQCBQQVNTIGltYWdlU2V0UnVsZS5sZW5ndGggaXMgMgogUEFT
UyBzdWJSdWxlIGlzICdhJwogUEFTUyBzdWJSdWxlLmNzc1RleHQgaXMgJzF4JwogCi1NdWx0aXBs
ZSB2YWx1ZXMgZm9yIGJvcmRlci1pbWFnZSA6IHVybCgnI2EnKSAxeCwgdXJsKCcjYicpIDJ4CitN
dWx0aXBsZSB2YWx1ZXMgZm9yIGJvcmRlci1pbWFnZS1zb3VyY2UgOiB1cmwoJyNhJykgMXgsIHVy
bCgnI2InKSAyeAogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUpIGlzICdDU1NWYWx1
ZUxpc3QnCiBQQVNTIGpzV3JhcHBlckNsYXNzKGltYWdlU2V0UnVsZS5fX3Byb3RvX18pIGlzICdD
U1NWYWx1ZUxpc3QnCiBQQVNTIGpzV3JhcHBlckNsYXNzKGltYWdlU2V0UnVsZS5jb25zdHJ1Y3Rv
cikgaXMgJ0Z1bmN0aW9uJwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvaW1hZ2Ut
c2V0LXBhcnNpbmcuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL2ltYWdlLXNldC1wYXJzaW5n
Lmh0bWwKaW5kZXggYzdiOGYyODk1MDNjN2EyNjIyZGY0Y2EzOTllNDM1MTY5ZjU4MGQ1NC4uOGI4
MTc1Y2Y0OTJmMDY2MDlmMzg0NGI0Njg1N2Q1M2QzNmMyYjYzMSAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvZmFzdC9jc3MvaW1hZ2Utc2V0LXBhcnNpbmcuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9m
YXN0L2Nzcy9pbWFnZS1zZXQtcGFyc2luZy5odG1sCkBAIC0xMDcsMTMgKzEwNywxMyBAQCB0ZXN0
SW1hZ2VTZXRSdWxlKCJNdWx0aXBsZSB2YWx1ZXMgZm9yIGNvbnRlbnQiLAogICAgICAgICAgICAg
ICAgICJ1cmwoJyNhJykgMXgsIHVybCgnI2InKSAyeCIsIDQsCiAgICAgICAgICAgICAgICAgWyJh
IiwgIjF4IiwgImIiLCAiMngiXSk7CiAKLXRlc3RJbWFnZVNldFJ1bGUoIlNpbmdsZSB2YWx1ZSBm
b3IgYm9yZGVyLWltYWdlIiwKLSAgICAgICAgICAgICAgICAiLXdlYmtpdC1ib3JkZXItaW1hZ2Ui
LAordGVzdEltYWdlU2V0UnVsZSgiU2luZ2xlIHZhbHVlIGZvciBib3JkZXItaW1hZ2Utc291cmNl
IiwKKyAgICAgICAgICAgICAgICAiYm9yZGVyLWltYWdlLXNvdXJjZSIsCiAgICAgICAgICAgICAg
ICAgInVybCgnI2EnKSAxeCIsIDIsCiAgICAgICAgICAgICAgICAgWyJhIiwgIjF4Il0pOwogCi10
ZXN0SW1hZ2VTZXRSdWxlKCJNdWx0aXBsZSB2YWx1ZXMgZm9yIGJvcmRlci1pbWFnZSIsCi0gICAg
ICAgICAgICAgICAgIi13ZWJraXQtYm9yZGVyLWltYWdlIiwKK3Rlc3RJbWFnZVNldFJ1bGUoIk11
bHRpcGxlIHZhbHVlcyBmb3IgYm9yZGVyLWltYWdlLXNvdXJjZSIsCisgICAgICAgICAgICAgICAg
ImJvcmRlci1pbWFnZS1zb3VyY2UiLAogICAgICAgICAgICAgICAgICJ1cmwoJyNhJykgMXgsIHVy
bCgnI2InKSAyeCIsIDQsCiAgICAgICAgICAgICAgICAgWyJhIiwgIjF4IiwgImIiLCAiMngiXSk7
CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL3BhcnNlLWJvcmRlci1pbWFnZS1y
ZXBlYXQtbnVsbC1jcmFzaC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9wYXJz
ZS1ib3JkZXItaW1hZ2UtcmVwZWF0LW51bGwtY3Jhc2gtZXhwZWN0ZWQudHh0CmluZGV4IGU5ZWE1
NDBhMjNkNWVhMDgxYTc2Yzc0ZjBmMzAyZGFmMjIwY2NiZTkuLmYyYzFjODBhZWM1ZjE0OTg3N2Fh
NDczNmMzMDc1YTU0MGQ3ZGY0Y2MgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL3Bh
cnNlLWJvcmRlci1pbWFnZS1yZXBlYXQtbnVsbC1jcmFzaC1leHBlY3RlZC50eHQKKysrIGIvTGF5
b3V0VGVzdHMvZmFzdC9jc3MvcGFyc2UtYm9yZGVyLWltYWdlLXJlcGVhdC1udWxsLWNyYXNoLWV4
cGVjdGVkLnR4dApAQCAtMSwyICsxLDIgQEAKLUNPTlNPTEUgTUVTU0FHRTogYm9yZGVyLWltYWdl
LXNvdXJjZTogdXJsKCJpbWFnZXMvc2hhZG93LWJvcmRlci5wbmciKTsgYm9yZGVyLWltYWdlLXNs
aWNlOiAxMDsgYm9yZGVyLWltYWdlLXJlcGVhdDogc3RyZXRjaDsKK0NPTlNPTEUgTUVTU0FHRTog
Ym9yZGVyLWltYWdlOiB1cmwoImltYWdlcy9zaGFkb3ctYm9yZGVyLnBuZyIpIDEwIHN0cmV0Y2g7
CiBUaGlzIHRlc3Qgc2hvdWxkIG5vdCBjcmFzaApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFz
dC9jc3MvdXJpLXRva2VuLXBhcnNpbmctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9j
c3MvdXJpLXRva2VuLXBhcnNpbmctZXhwZWN0ZWQudHh0CmluZGV4IDdlNmQ2MWRiYmU2MTk3ZjBi
YjU4YWNlNjU3ZDRmNDY5MDFmNTM4NGUuLjg3NWE4YTk2ZTBlNTM2MzI4NDE0Y2I3ZTBmNDUxNDAz
NTkzNjJjNDAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL3VyaS10b2tlbi1wYXJz
aW5nLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy91cmktdG9rZW4tcGFy
c2luZy1leHBlY3RlZC50eHQKQEAgLTIyLDcgKzIyLDcgQEAgUnVsZXMgZnJvbSB0aGUgc3R5bGVz
aGVldDoKICNyIHsgbGlzdC1zdHlsZS1pbWFnZTogdXJsKCJ1cmwocikiKTsgfQogI3MgeyBiYWNr
Z3JvdW5kLWltYWdlOiB1cmwoInVybChzKSIpOyB9CiAjdCB7IG1hc2staW1hZ2U6IHVybCgidXJs
KHQpIik7IH0KLSN1IHsgLXdlYmtpdC1ib3JkZXItaW1hZ2U6IHVybCgidXJsKHUpIikgMSAyIDMg
NCBmaWxsIHN0cmV0Y2ggcm91bmQ7IH0KKyN1IHsgYm9yZGVyLWltYWdlOiB1cmwoInVybCh1KSIp
IDEgMiAzIDQgZmlsbCBzdHJldGNoIHJvdW5kOyB9CiAjdiB7IC13ZWJraXQtbWFzay1ib3gtaW1h
Z2U6IHVybCgidXJsKHYpIikgMSAyIDMgNCBmaWxsIHN0cmV0Y2ggcm91bmQ7IH0KICN3IHsgY29u
dGVudDogdXJsKCJ3XGQgdyIpOyB9CiAjeCB7IGNvbnRlbnQ6IHVybCgiIHggeFw5IHggIik7IH0K
QEAgLTQ3LDcgKzQ3LDcgQEAgRXhwZWN0ZWQgcmVzdWx0OgogI3IgeyBsaXN0LXN0eWxlLWltYWdl
OiB1cmwoInVybChyKSIpOyB9CiAjcyB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCgidXJsKHMpIik7
IH0KICN0IHsgbWFzay1pbWFnZTogdXJsKCJ1cmwodCkiKTsgfQotI3UgeyAtd2Via2l0LWJvcmRl
ci1pbWFnZTogdXJsKCJ1cmwodSkiKSAxIDIgMyA0IGZpbGwgc3RyZXRjaCByb3VuZDsgfQorI3Ug
eyBib3JkZXItaW1hZ2U6IHVybCgidXJsKHUpIikgMSAyIDMgNCBmaWxsIHN0cmV0Y2ggcm91bmQ7
IH0KICN2IHsgLXdlYmtpdC1tYXNrLWJveC1pbWFnZTogdXJsKCJ1cmwodikiKSAxIDIgMyA0IGZp
bGwgc3RyZXRjaCByb3VuZDsgfQogI3cgeyBjb250ZW50OiB1cmwoIndcZCB3Iik7IH0KICN4IHsg
Y29udGVudDogdXJsKCIgeCB4XDkgeCAiKTsgfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFz
dC9jc3MvdXJpLXRva2VuLXBhcnNpbmcuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3VyaS10
b2tlbi1wYXJzaW5nLmh0bWwKaW5kZXggZTE0OTZiMWE0ZmI0NjgxNzE2ODMyZGNlNjE3ZGM0NTVh
NmQzMTg5MC4uZGE3YjcwNzRjZGU3ZTc3NzA0NThiYjA5M2U2M2IxMjQzNDQ2YTE1OCAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdXJpLXRva2VuLXBhcnNpbmcuaHRtbAorKysgYi9M
YXlvdXRUZXN0cy9mYXN0L2Nzcy91cmktdG9rZW4tcGFyc2luZy5odG1sCkBAIC05MCw3ICs5MCw3
IEBAIGZ1bmN0aW9uIHJ1blRlc3QoKQogI3IgeyBsaXN0LXN0eWxlLWltYWdlOiB1cmwoInVybChy
KSIpOyB9CiAjcyB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCgidXJsKHMpIik7IH0KICN0IHsgbWFz
ay1pbWFnZTogdXJsKCJ1cmwodCkiKTsgfQotI3UgeyAtd2Via2l0LWJvcmRlci1pbWFnZTogdXJs
KCJ1cmwodSkiKSAxIDIgMyA0IGZpbGwgc3RyZXRjaCByb3VuZDsgfQorI3UgeyBib3JkZXItaW1h
Z2U6IHVybCgidXJsKHUpIikgMSAyIDMgNCBmaWxsIHN0cmV0Y2ggcm91bmQ7IH0KICN2IHsgLXdl
YmtpdC1tYXNrLWJveC1pbWFnZTogdXJsKCJ1cmwodikiKSAxIDIgMyA0IGZpbGwgc3RyZXRjaCBy
b3VuZDsgfQogI3cgeyBjb250ZW50OiB1cmwoIndcZCB3Iik7IH0KICN4IHsgY29udGVudDogdXJs
KCIgeCB4XDkgeCAiKTsgfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWJhY2tncm91bmRzL3BhcnNpbmcvYm9yZGVyLWltYWdl
LXZhbGlkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvY3NzL2Nzcy1iYWNrZ3JvdW5kcy9wYXJzaW5nL2JvcmRlci1pbWFnZS12YWxpZC1l
eHBlY3RlZC50eHQKaW5kZXggYjEzZDRlNDMwMTExODlhYzhlODA3MTllYWZhMDQ0N2RiYjdjMzI2
Ni4uMjMyODk5YTFjMDdhZmM0YWUxMzBhZmVkNTlkM2Q1ZDdjODk0ODRmZSAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWJhY2tn
cm91bmRzL3BhcnNpbmcvYm9yZGVyLWltYWdlLXZhbGlkLWV4cGVjdGVkLnR4dAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtYmFja2dyb3Vu
ZHMvcGFyc2luZy9ib3JkZXItaW1hZ2UtdmFsaWQtZXhwZWN0ZWQudHh0CkBAIC0xLDMyICsxLDMy
IEBACiAKLUZBSUwgZS5zdHlsZVsnYm9yZGVyLWltYWdlJ10gPSAibm9uZSIgc2hvdWxkIHNldCB0
aGUgcHJvcGVydHkgdmFsdWUgYXNzZXJ0X25vdF9lcXVhbHM6IHByb3BlcnR5IHNob3VsZCBiZSBz
ZXQgZ290IGRpc2FsbG93ZWQgdmFsdWUgIiIKLUZBSUwgZS5zdHlsZVsnYm9yZGVyLWltYWdlJ10g
PSAic3RyZXRjaCIgc2hvdWxkIHNldCB0aGUgcHJvcGVydHkgdmFsdWUgYXNzZXJ0X25vdF9lcXVh
bHM6IHByb3BlcnR5IHNob3VsZCBiZSBzZXQgZ290IGRpc2FsbG93ZWQgdmFsdWUgIiIKLUZBSUwg
ZS5zdHlsZVsnYm9yZGVyLWltYWdlJ10gPSAibm9uZSAxMDAlIC8gMSAvIDAgc3RyZXRjaCIgc2hv
dWxkIHNldCB0aGUgcHJvcGVydHkgdmFsdWUgYXNzZXJ0X25vdF9lcXVhbHM6IHByb3BlcnR5IHNo
b3VsZCBiZSBzZXQgZ290IGRpc2FsbG93ZWQgdmFsdWUgIiIKLUZBSUwgZS5zdHlsZVsnYm9yZGVy
LWltYWdlJ10gPSAidXJsKFwiaHR0cDovL3d3dy5leGFtcGxlLmNvbS9cIikgMSAyIDMgNCBmaWxs
IiBzaG91bGQgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZSBhc3NlcnRfbm90X2VxdWFsczogcHJvcGVy
dHkgc2hvdWxkIGJlIHNldCBnb3QgZGlzYWxsb3dlZCB2YWx1ZSAiIgotRkFJTCBlLnN0eWxlWydi
b3JkZXItaW1hZ2UnXSA9ICJ1cmwoXCJodHRwOi8vd3d3LmV4YW1wbGUuY29tL1wiKSAxIDIgMyA0
IGZpbGwgLyAxIC8gMCBzdHJldGNoIiBzaG91bGQgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZSBhc3Nl
cnRfbm90X2VxdWFsczogcHJvcGVydHkgc2hvdWxkIGJlIHNldCBnb3QgZGlzYWxsb3dlZCB2YWx1
ZSAiIgotRkFJTCBlLnN0eWxlWydib3JkZXItaW1hZ2UnXSA9ICJ1cmwoXCJodHRwOi8vd3d3LmV4
YW1wbGUuY29tL1wiKSIgc2hvdWxkIHNldCB0aGUgcHJvcGVydHkgdmFsdWUgYXNzZXJ0X25vdF9l
cXVhbHM6IHByb3BlcnR5IHNob3VsZCBiZSBzZXQgZ290IGRpc2FsbG93ZWQgdmFsdWUgIiIKLUZB
SUwgZS5zdHlsZVsnYm9yZGVyLWltYWdlJ10gPSAicmVwZWF0IHJvdW5kIiBzaG91bGQgc2V0IHRo
ZSBwcm9wZXJ0eSB2YWx1ZSBhc3NlcnRfbm90X2VxdWFsczogcHJvcGVydHkgc2hvdWxkIGJlIHNl
dCBnb3QgZGlzYWxsb3dlZCB2YWx1ZSAiIgotRkFJTCBlLnN0eWxlWydib3JkZXItaW1hZ2UnXSA9
ICJub25lIHJlcGVhdCByb3VuZCIgc2hvdWxkIHNldCB0aGUgcHJvcGVydHkgdmFsdWUgYXNzZXJ0
X25vdF9lcXVhbHM6IHByb3BlcnR5IHNob3VsZCBiZSBzZXQgZ290IGRpc2FsbG93ZWQgdmFsdWUg
IiIKLUZBSUwgZS5zdHlsZVsnYm9yZGVyLWltYWdlJ10gPSAic3BhY2UiIHNob3VsZCBzZXQgdGhl
IHByb3BlcnR5IHZhbHVlIGFzc2VydF9ub3RfZXF1YWxzOiBwcm9wZXJ0eSBzaG91bGQgYmUgc2V0
IGdvdCBkaXNhbGxvd2VkIHZhbHVlICIiCi1GQUlMIGUuc3R5bGVbJ2JvcmRlci1pbWFnZSddID0g
Im5vbmUgc3BhY2Ugc3BhY2UiIHNob3VsZCBzZXQgdGhlIHByb3BlcnR5IHZhbHVlIGFzc2VydF9u
b3RfZXF1YWxzOiBwcm9wZXJ0eSBzaG91bGQgYmUgc2V0IGdvdCBkaXNhbGxvd2VkIHZhbHVlICIi
Ci1GQUlMIGUuc3R5bGVbJ2JvcmRlci1pbWFnZSddID0gIm5vbmUgMTAwJSAvIDEgLyAwIHNwYWNl
IiBzaG91bGQgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZSBhc3NlcnRfbm90X2VxdWFsczogcHJvcGVy
dHkgc2hvdWxkIGJlIHNldCBnb3QgZGlzYWxsb3dlZCB2YWx1ZSAiIgotRkFJTCBlLnN0eWxlWydi
b3JkZXItaW1hZ2UnXSA9ICIxIiBzaG91bGQgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZSBhc3NlcnRf
bm90X2VxdWFsczogcHJvcGVydHkgc2hvdWxkIGJlIHNldCBnb3QgZGlzYWxsb3dlZCB2YWx1ZSAi
IgotRkFJTCBlLnN0eWxlWydib3JkZXItaW1hZ2UnXSA9ICJub25lIDEgMSAxIDEiIHNob3VsZCBz
ZXQgdGhlIHByb3BlcnR5IHZhbHVlIGFzc2VydF9ub3RfZXF1YWxzOiBwcm9wZXJ0eSBzaG91bGQg
YmUgc2V0IGdvdCBkaXNhbGxvd2VkIHZhbHVlICIiCi1GQUlMIGUuc3R5bGVbJ2JvcmRlci1pbWFn
ZSddID0gIm5vbmUgMSAvIDEgLyAwIHN0cmV0Y2giIHNob3VsZCBzZXQgdGhlIHByb3BlcnR5IHZh
bHVlIGFzc2VydF9ub3RfZXF1YWxzOiBwcm9wZXJ0eSBzaG91bGQgYmUgc2V0IGdvdCBkaXNhbGxv
d2VkIHZhbHVlICIiCi1GQUlMIGUuc3R5bGVbJ2JvcmRlci1pbWFnZSddID0gInVybChcImh0dHA6
Ly93d3cuZXhhbXBsZS5jb20vXCIpIDEgMiUgMyA0JSIgc2hvdWxkIHNldCB0aGUgcHJvcGVydHkg
dmFsdWUgYXNzZXJ0X25vdF9lcXVhbHM6IHByb3BlcnR5IHNob3VsZCBiZSBzZXQgZ290IGRpc2Fs
bG93ZWQgdmFsdWUgIiIKLUZBSUwgZS5zdHlsZVsnYm9yZGVyLWltYWdlJ10gPSAidXJsKFwiaHR0
cDovL3d3dy5leGFtcGxlLmNvbS9cIikgMSAyJSAzIDQlIGZpbGwiIHNob3VsZCBzZXQgdGhlIHBy
b3BlcnR5IHZhbHVlIGFzc2VydF9ub3RfZXF1YWxzOiBwcm9wZXJ0eSBzaG91bGQgYmUgc2V0IGdv
dCBkaXNhbGxvd2VkIHZhbHVlICIiCi1GQUlMIGUuc3R5bGVbJ2JvcmRlci1pbWFnZSddID0gInVy
bChcImh0dHA6Ly93d3cuZXhhbXBsZS5jb20vXCIpIGZpbGwgMSAyJSAzIDQlIiBzaG91bGQgc2V0
IHRoZSBwcm9wZXJ0eSB2YWx1ZSBhc3NlcnRfbm90X2VxdWFsczogcHJvcGVydHkgc2hvdWxkIGJl
IHNldCBnb3QgZGlzYWxsb3dlZCB2YWx1ZSAiIgotRkFJTCBlLnN0eWxlWydib3JkZXItaW1hZ2Un
XSA9ICIxIC8gMXB4IiBzaG91bGQgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZSBhc3NlcnRfbm90X2Vx
dWFsczogcHJvcGVydHkgc2hvdWxkIGJlIHNldCBnb3QgZGlzYWxsb3dlZCB2YWx1ZSAiIgotRkFJ
TCBlLnN0eWxlWydib3JkZXItaW1hZ2UnXSA9ICIxIDIlIDMgNCUgLyAyJSIgc2hvdWxkIHNldCB0
aGUgcHJvcGVydHkgdmFsdWUgYXNzZXJ0X25vdF9lcXVhbHM6IHByb3BlcnR5IHNob3VsZCBiZSBz
ZXQgZ290IGRpc2FsbG93ZWQgdmFsdWUgIiIKLUZBSUwgZS5zdHlsZVsnYm9yZGVyLWltYWdlJ10g
PSAiMSAyJSAzIDQlIGZpbGwgLyAzIiBzaG91bGQgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZSBhc3Nl
cnRfbm90X2VxdWFsczogcHJvcGVydHkgc2hvdWxkIGJlIHNldCBnb3QgZGlzYWxsb3dlZCB2YWx1
ZSAiIgotRkFJTCBlLnN0eWxlWydib3JkZXItaW1hZ2UnXSA9ICJmaWxsIDEgMiUgMyA0JSAvIGF1
dG8iIHNob3VsZCBzZXQgdGhlIHByb3BlcnR5IHZhbHVlIGFzc2VydF9ub3RfZXF1YWxzOiBwcm9w
ZXJ0eSBzaG91bGQgYmUgc2V0IGdvdCBkaXNhbGxvd2VkIHZhbHVlICIiCi1GQUlMIGUuc3R5bGVb
J2JvcmRlci1pbWFnZSddID0gIjEgLyAxcHggMiUgMyBhdXRvIiBzaG91bGQgc2V0IHRoZSBwcm9w
ZXJ0eSB2YWx1ZSBhc3NlcnRfbm90X2VxdWFsczogcHJvcGVydHkgc2hvdWxkIGJlIHNldCBnb3Qg
ZGlzYWxsb3dlZCB2YWx1ZSAiIgotRkFJTCBlLnN0eWxlWydib3JkZXItaW1hZ2UnXSA9ICIxIC8g
LyAxcHgiIHNob3VsZCBzZXQgdGhlIHByb3BlcnR5IHZhbHVlIGFzc2VydF9ub3RfZXF1YWxzOiBw
cm9wZXJ0eSBzaG91bGQgYmUgc2V0IGdvdCBkaXNhbGxvd2VkIHZhbHVlICIiCi1GQUlMIGUuc3R5
bGVbJ2JvcmRlci1pbWFnZSddID0gIjEgMiUgMyA0JSAvIC8gMiIgc2hvdWxkIHNldCB0aGUgcHJv
cGVydHkgdmFsdWUgYXNzZXJ0X25vdF9lcXVhbHM6IHByb3BlcnR5IHNob3VsZCBiZSBzZXQgZ290
IGRpc2FsbG93ZWQgdmFsdWUgIiIKLUZBSUwgZS5zdHlsZVsnYm9yZGVyLWltYWdlJ10gPSAidXJs
KFwiaHR0cDovL3d3dy5leGFtcGxlLmNvbS9cIikgMSAyJSAzIDQlIGZpbGwgLyAvIDFweCAyIDNw
eCA0IiBzaG91bGQgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZSBhc3NlcnRfbm90X2VxdWFsczogcHJv
cGVydHkgc2hvdWxkIGJlIHNldCBnb3QgZGlzYWxsb3dlZCB2YWx1ZSAiIgotRkFJTCBlLnN0eWxl
Wydib3JkZXItaW1hZ2UnXSA9ICIxIC8gMXB4IC8gMXB4IiBzaG91bGQgc2V0IHRoZSBwcm9wZXJ0
eSB2YWx1ZSBhc3NlcnRfbm90X2VxdWFsczogcHJvcGVydHkgc2hvdWxkIGJlIHNldCBnb3QgZGlz
YWxsb3dlZCB2YWx1ZSAiIgotRkFJTCBlLnN0eWxlWydib3JkZXItaW1hZ2UnXSA9ICIxIDIlIDMg
NCUgLyAyJSAvIDIiIHNob3VsZCBzZXQgdGhlIHByb3BlcnR5IHZhbHVlIGFzc2VydF9ub3RfZXF1
YWxzOiBwcm9wZXJ0eSBzaG91bGQgYmUgc2V0IGdvdCBkaXNhbGxvd2VkIHZhbHVlICIiCi1GQUlM
IGUuc3R5bGVbJ2JvcmRlci1pbWFnZSddID0gIjEgMiUgMyA0JSBmaWxsIC8gMyAvIDFweCAyIDNw
eCA0IiBzaG91bGQgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZSBhc3NlcnRfbm90X2VxdWFsczogcHJv
cGVydHkgc2hvdWxkIGJlIHNldCBnb3QgZGlzYWxsb3dlZCB2YWx1ZSAiIgotRkFJTCBlLnN0eWxl
Wydib3JkZXItaW1hZ2UnXSA9ICIxIC8gYXV0byAvIDFweCIgc2hvdWxkIHNldCB0aGUgcHJvcGVy
dHkgdmFsdWUgYXNzZXJ0X25vdF9lcXVhbHM6IHByb3BlcnR5IHNob3VsZCBiZSBzZXQgZ290IGRp
c2FsbG93ZWQgdmFsdWUgIiIKLUZBSUwgZS5zdHlsZVsnYm9yZGVyLWltYWdlJ10gPSAiMSAyJSAz
IDQlIC8gMXB4IDIlIDMgYXV0byAvIDIiIHNob3VsZCBzZXQgdGhlIHByb3BlcnR5IHZhbHVlIGFz
c2VydF9ub3RfZXF1YWxzOiBwcm9wZXJ0eSBzaG91bGQgYmUgc2V0IGdvdCBkaXNhbGxvd2VkIHZh
bHVlICIiCitQQVNTIGUuc3R5bGVbJ2JvcmRlci1pbWFnZSddID0gIm5vbmUiIHNob3VsZCBzZXQg
dGhlIHByb3BlcnR5IHZhbHVlCitQQVNTIGUuc3R5bGVbJ2JvcmRlci1pbWFnZSddID0gInN0cmV0
Y2giIHNob3VsZCBzZXQgdGhlIHByb3BlcnR5IHZhbHVlCitQQVNTIGUuc3R5bGVbJ2JvcmRlci1p
bWFnZSddID0gIm5vbmUgMTAwJSAvIDEgLyAwIHN0cmV0Y2giIHNob3VsZCBzZXQgdGhlIHByb3Bl
cnR5IHZhbHVlCitQQVNTIGUuc3R5bGVbJ2JvcmRlci1pbWFnZSddID0gInVybChcImh0dHA6Ly93
d3cuZXhhbXBsZS5jb20vXCIpIDEgMiAzIDQgZmlsbCIgc2hvdWxkIHNldCB0aGUgcHJvcGVydHkg
dmFsdWUKK1BBU1MgZS5zdHlsZVsnYm9yZGVyLWltYWdlJ10gPSAidXJsKFwiaHR0cDovL3d3dy5l
eGFtcGxlLmNvbS9cIikgMSAyIDMgNCBmaWxsIC8gMSAvIDAgc3RyZXRjaCIgc2hvdWxkIHNldCB0
aGUgcHJvcGVydHkgdmFsdWUKK1BBU1MgZS5zdHlsZVsnYm9yZGVyLWltYWdlJ10gPSAidXJsKFwi
aHR0cDovL3d3dy5leGFtcGxlLmNvbS9cIikiIHNob3VsZCBzZXQgdGhlIHByb3BlcnR5IHZhbHVl
CitQQVNTIGUuc3R5bGVbJ2JvcmRlci1pbWFnZSddID0gInJlcGVhdCByb3VuZCIgc2hvdWxkIHNl
dCB0aGUgcHJvcGVydHkgdmFsdWUKK1BBU1MgZS5zdHlsZVsnYm9yZGVyLWltYWdlJ10gPSAibm9u
ZSByZXBlYXQgcm91bmQiIHNob3VsZCBzZXQgdGhlIHByb3BlcnR5IHZhbHVlCitQQVNTIGUuc3R5
bGVbJ2JvcmRlci1pbWFnZSddID0gInNwYWNlIiBzaG91bGQgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1
ZQorUEFTUyBlLnN0eWxlWydib3JkZXItaW1hZ2UnXSA9ICJub25lIHNwYWNlIHNwYWNlIiBzaG91
bGQgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZQorUEFTUyBlLnN0eWxlWydib3JkZXItaW1hZ2UnXSA9
ICJub25lIDEwMCUgLyAxIC8gMCBzcGFjZSIgc2hvdWxkIHNldCB0aGUgcHJvcGVydHkgdmFsdWUK
K1BBU1MgZS5zdHlsZVsnYm9yZGVyLWltYWdlJ10gPSAiMSIgc2hvdWxkIHNldCB0aGUgcHJvcGVy
dHkgdmFsdWUKK1BBU1MgZS5zdHlsZVsnYm9yZGVyLWltYWdlJ10gPSAibm9uZSAxIDEgMSAxIiBz
aG91bGQgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZQorUEFTUyBlLnN0eWxlWydib3JkZXItaW1hZ2Un
XSA9ICJub25lIDEgLyAxIC8gMCBzdHJldGNoIiBzaG91bGQgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1
ZQorUEFTUyBlLnN0eWxlWydib3JkZXItaW1hZ2UnXSA9ICJ1cmwoXCJodHRwOi8vd3d3LmV4YW1w
bGUuY29tL1wiKSAxIDIlIDMgNCUiIHNob3VsZCBzZXQgdGhlIHByb3BlcnR5IHZhbHVlCitQQVNT
IGUuc3R5bGVbJ2JvcmRlci1pbWFnZSddID0gInVybChcImh0dHA6Ly93d3cuZXhhbXBsZS5jb20v
XCIpIDEgMiUgMyA0JSBmaWxsIiBzaG91bGQgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZQorUEFTUyBl
LnN0eWxlWydib3JkZXItaW1hZ2UnXSA9ICJ1cmwoXCJodHRwOi8vd3d3LmV4YW1wbGUuY29tL1wi
KSBmaWxsIDEgMiUgMyA0JSIgc2hvdWxkIHNldCB0aGUgcHJvcGVydHkgdmFsdWUKK1BBU1MgZS5z
dHlsZVsnYm9yZGVyLWltYWdlJ10gPSAiMSAvIDFweCIgc2hvdWxkIHNldCB0aGUgcHJvcGVydHkg
dmFsdWUKK1BBU1MgZS5zdHlsZVsnYm9yZGVyLWltYWdlJ10gPSAiMSAyJSAzIDQlIC8gMiUiIHNo
b3VsZCBzZXQgdGhlIHByb3BlcnR5IHZhbHVlCitQQVNTIGUuc3R5bGVbJ2JvcmRlci1pbWFnZSdd
ID0gIjEgMiUgMyA0JSBmaWxsIC8gMyIgc2hvdWxkIHNldCB0aGUgcHJvcGVydHkgdmFsdWUKK1BB
U1MgZS5zdHlsZVsnYm9yZGVyLWltYWdlJ10gPSAiZmlsbCAxIDIlIDMgNCUgLyBhdXRvIiBzaG91
bGQgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZQorUEFTUyBlLnN0eWxlWydib3JkZXItaW1hZ2UnXSA9
ICIxIC8gMXB4IDIlIDMgYXV0byIgc2hvdWxkIHNldCB0aGUgcHJvcGVydHkgdmFsdWUKK1BBU1Mg
ZS5zdHlsZVsnYm9yZGVyLWltYWdlJ10gPSAiMSAvIC8gMXB4IiBzaG91bGQgc2V0IHRoZSBwcm9w
ZXJ0eSB2YWx1ZQorUEFTUyBlLnN0eWxlWydib3JkZXItaW1hZ2UnXSA9ICIxIDIlIDMgNCUgLyAv
IDIiIHNob3VsZCBzZXQgdGhlIHByb3BlcnR5IHZhbHVlCitQQVNTIGUuc3R5bGVbJ2JvcmRlci1p
bWFnZSddID0gInVybChcImh0dHA6Ly93d3cuZXhhbXBsZS5jb20vXCIpIDEgMiUgMyA0JSBmaWxs
IC8gLyAxcHggMiAzcHggNCIgc2hvdWxkIHNldCB0aGUgcHJvcGVydHkgdmFsdWUKK1BBU1MgZS5z
dHlsZVsnYm9yZGVyLWltYWdlJ10gPSAiMSAvIDFweCAvIDFweCIgc2hvdWxkIHNldCB0aGUgcHJv
cGVydHkgdmFsdWUKK1BBU1MgZS5zdHlsZVsnYm9yZGVyLWltYWdlJ10gPSAiMSAyJSAzIDQlIC8g
MiUgLyAyIiBzaG91bGQgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZQorUEFTUyBlLnN0eWxlWydib3Jk
ZXItaW1hZ2UnXSA9ICIxIDIlIDMgNCUgZmlsbCAvIDMgLyAxcHggMiAzcHggNCIgc2hvdWxkIHNl
dCB0aGUgcHJvcGVydHkgdmFsdWUKK1BBU1MgZS5zdHlsZVsnYm9yZGVyLWltYWdlJ10gPSAiMSAv
IGF1dG8gLyAxcHgiIHNob3VsZCBzZXQgdGhlIHByb3BlcnR5IHZhbHVlCitQQVNTIGUuc3R5bGVb
J2JvcmRlci1pbWFnZSddID0gIjEgMiUgMyA0JSAvIDFweCAyJSAzIGF1dG8gLyAyIiBzaG91bGQg
c2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtYmFja2dyb3VuZHMvcGFyc2luZy9ib3Jk
ZXItaW1hZ2UtdmFsaWQuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvY3NzL2Nzcy1iYWNrZ3JvdW5kcy9wYXJzaW5nL2JvcmRlci1pbWFnZS12YWxpZC5o
dG1sCmluZGV4IDY3ZDIyYzE4ZTJjNjUzOGE4ODViNTBlZDZlNjVmNTZjMWQxNDY5NTIuLmNkZDM4
YjBhNjI0OWIxZmYxNGZlM2QzNGQ3ZjQ3MWFmMTY2MDRjYTMgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1iYWNrZ3JvdW5kcy9w
YXJzaW5nL2JvcmRlci1pbWFnZS12YWxpZC5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1iYWNrZ3JvdW5kcy9wYXJzaW5nL2JvcmRl
ci1pbWFnZS12YWxpZC5odG1sCkBAIC0xNiw3ICsxNiw3IEBACiAKIC8vICJub25lIiBpbiBFZGdl
LCAibm9uZSAxMDAlIC8gMSAvIDAgc3RyZXRjaCIgaW4gRmlyZWZveCBhbmQgQmxpbmsuCiB0ZXN0
X3ZhbGlkX3ZhbHVlKCJib3JkZXItaW1hZ2UiLCAibm9uZSIsIFsibm9uZSIsICJub25lIDEwMCUg
LyAxIC8gMCBzdHJldGNoIl0pOwotdGVzdF92YWxpZF92YWx1ZSgiYm9yZGVyLWltYWdlIiwgInN0
cmV0Y2giLCBbIm5vbmUiLCAibm9uZSAxMDAlIC8gMSAvIDAgc3RyZXRjaCJdKTsKK3Rlc3RfdmFs
aWRfdmFsdWUoImJvcmRlci1pbWFnZSIsICJzdHJldGNoIiwgWyJzdHJldGNoIiwgIm5vbmUiLCAi
bm9uZSAxMDAlIC8gMSAvIDAgc3RyZXRjaCJdKTsKIHRlc3RfdmFsaWRfdmFsdWUoImJvcmRlci1p
bWFnZSIsICJub25lIDEwMCUgLyAxIC8gMCBzdHJldGNoIiwgWyJub25lIiwgIm5vbmUgMTAwJSAv
IDEgLyAwIHN0cmV0Y2giXSk7CiAKIHRlc3RfdmFsaWRfdmFsdWUoImJvcmRlci1pbWFnZSIsICd1
cmwoImh0dHA6Ly93d3cuZXhhbXBsZS5jb20vIikgMSAyIDMgNCBmaWxsJywgWyd1cmwoImh0dHA6
Ly93d3cuZXhhbXBsZS5jb20vIikgMSAyIDMgNCBmaWxsJywgJ3VybCgiaHR0cDovL3d3dy5leGFt
cGxlLmNvbS8iKSAxIDIgMyA0IGZpbGwgLyAxIC8gMCBzdHJldGNoJ10pOwpAQCAtMjgsMTEgKzI4
LDExIEBAIHRlc3RfdmFsaWRfdmFsdWUoImJvcmRlci1pbWFnZSIsICJyZXBlYXQgcm91bmQiLCBb
InJlcGVhdCByb3VuZCIsICJub25lIHJlcGVhdCByCiB0ZXN0X3ZhbGlkX3ZhbHVlKCJib3JkZXIt
aW1hZ2UiLCAibm9uZSByZXBlYXQgcm91bmQiLCBbInJlcGVhdCByb3VuZCIsICJub25lIHJlcGVh
dCByb3VuZCIsICJub25lIDEwMCUgLyAxIC8gMCByZXBlYXQgcm91bmQiXSk7CiAKIHRlc3RfdmFs
aWRfdmFsdWUoImJvcmRlci1pbWFnZSIsICJzcGFjZSIsIFsic3BhY2UiLCAibm9uZSBzcGFjZSBz
cGFjZSIsICJub25lIDEwMCUgLyAxIC8gMCBzcGFjZSJdKTsKLXRlc3RfdmFsaWRfdmFsdWUoImJv
cmRlci1pbWFnZSIsICJub25lIHNwYWNlIHNwYWNlIiwgWyJzcGFjZSIsICJub25lIHNwYWNlIHNw
YWNlIiwgIm5vbmUgMTAwJSAvIDEgLyAwIHNwYWNlIl0pOwordGVzdF92YWxpZF92YWx1ZSgiYm9y
ZGVyLWltYWdlIiwgIm5vbmUgc3BhY2Ugc3BhY2UiLCBbInNwYWNlIiwgIm5vbmUgc3BhY2Ugc3Bh
Y2UiLCAibm9uZSBzcGFjZSIsICJub25lIDEwMCUgLyAxIC8gMCBzcGFjZSJdKTsKIHRlc3RfdmFs
aWRfdmFsdWUoImJvcmRlci1pbWFnZSIsICJub25lIDEwMCUgLyAxIC8gMCBzcGFjZSIsIFsic3Bh
Y2UiLCAibm9uZSBzcGFjZSBzcGFjZSIsICJub25lIDEwMCUgLyAxIC8gMCBzcGFjZSJdKTsKIAog
dGVzdF92YWxpZF92YWx1ZSgiYm9yZGVyLWltYWdlIiwgIjEiLCBbIjEiLCAibm9uZSAxIDEgMSAx
IiwgIm5vbmUgMSAvIDEgLyAwIHN0cmV0Y2giXSk7Ci10ZXN0X3ZhbGlkX3ZhbHVlKCJib3JkZXIt
aW1hZ2UiLCAibm9uZSAxIDEgMSAxIiwgWyIxIiwgIm5vbmUgMSAxIDEgMSIsICJub25lIDEgLyAx
IC8gMCBzdHJldGNoIl0pOwordGVzdF92YWxpZF92YWx1ZSgiYm9yZGVyLWltYWdlIiwgIm5vbmUg
MSAxIDEgMSIsIFsiMSIsICJub25lIDEgMSAxIDEiLCAibm9uZSAxIiwgIm5vbmUgMSAvIDEgLyAw
IHN0cmV0Y2giXSk7CiB0ZXN0X3ZhbGlkX3ZhbHVlKCJib3JkZXItaW1hZ2UiLCAibm9uZSAxIC8g
MSAvIDAgc3RyZXRjaCIsIFsiMSIsICJub25lIDEgMSAxIDEiLCAibm9uZSAxIC8gMSAvIDAgc3Ry
ZXRjaCJdKTsKIAogdGVzdF92YWxpZF92YWx1ZSgiYm9yZGVyLWltYWdlIiwgJ3VybCgiaHR0cDov
L3d3dy5leGFtcGxlLmNvbS8iKSAxIDIlIDMgNCUnLCBbJ3VybCgiaHR0cDovL3d3dy5leGFtcGxl
LmNvbS8iKSAxIDIlIDMgNCUnLCAndXJsKCJodHRwOi8vd3d3LmV4YW1wbGUuY29tLyIpIDEgMiUg
MyA0JSAvIDEgLyAwIHN0cmV0Y2gnXSk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS9nZXRDb21wdXRlZFN0eWxlLWRldGFj
aGVkLXN1YnRyZWUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9jc3MvY3Nzb20vZ2V0Q29tcHV0ZWRTdHlsZS1kZXRhY2hlZC1zdWJ0cmVl
LWV4cGVjdGVkLnR4dAppbmRleCA5YzZjMmQ2OTQ5NmE5N2Y1ZGVhZDcwYTJjMGFhNzBiMjY4ZGU4
M2VmLi5hZmUzZGRjMjIwMDBhMGU3NzQzOGFmYjJjZmZkMzlmYTc0ZmQ0ZGY4IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS9n
ZXRDb21wdXRlZFN0eWxlLWRldGFjaGVkLXN1YnRyZWUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dldENvbXB1
dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS1leHBlY3RlZC50eHQKQEAgLTEsOCArMSw4IEBACiAK
IFBBU1MgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBkZXRhY2hlZCBlbGVt
ZW50Ci1GQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBp
biBub24tcmVuZGVyZWQgaWZyYW1lIChkaXNwbGF5OiBub25lKSBhc3NlcnRfZXF1YWxzOiBleHBl
Y3RlZCAwIGJ1dCBnb3QgMzk3Ci1GQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHls
ZSBmb3IgZWxlbWVudCBpbiBub24tcmVuZGVyZWQgaWZyYW1lIChkaXNwbGF5OiBub25lKSBmcm9t
IGlmcmFtZSdzIHdpbmRvdyBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk3Ci1G
QUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBvdXRzaWRl
IHRoZSBmbGF0IHRyZWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDM5NwotRkFJ
TCBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIGRlc2NlbmRhbnQgb3V0c2lk
ZSB0aGUgZmxhdCB0cmVlIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTcKK0ZB
SUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50IGluIG5vbi1y
ZW5kZXJlZCBpZnJhbWUgKGRpc3BsYXk6IG5vbmUpIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAg
YnV0IGdvdCAzOTYKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBl
bGVtZW50IGluIG5vbi1yZW5kZXJlZCBpZnJhbWUgKGRpc3BsYXk6IG5vbmUpIGZyb20gaWZyYW1l
J3Mgd2luZG93IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTYKK0ZBSUwgZ2V0
Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50IG91dHNpZGUgdGhlIGZs
YXQgdHJlZSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk2CitGQUlMIGdldENv
bXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZGVzY2VuZGFudCBvdXRzaWRlIHRoZSBm
bGF0IHRyZWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDM5NgogUEFTUyBnZXRD
b21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIHNoYWRvdyB0cmVlIG91dHNpZGUgb2Yg
ZmxhdHRlbmVkIHRyZWUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jYXNjYWRlL2FsbC1wcm9wLWlu
aXRpYWwteG1sLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY2FzY2FkZS9hbGwtcHJvcC1pbml0aWFs
LXhtbC1leHBlY3RlZC50eHQKaW5kZXggN2IxYjNjNjg0NGM0NDk3MjE0M2ZhNjAzMzcxYWIzMDU5
Y2IyMDc3Zi4uYTI2MTM1MDU1MGQ4Yjg3ZTM2YzJjZGZjOWFjYmRiMWUxMTVjN2M4ZiAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL2Nzcy1jYXNjYWRlL2FsbC1wcm9wLWluaXRpYWwteG1sLWV4cGVjdGVkLnR4dAor
KysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9jc3MvY3NzLWNhc2NhZGUvYWxsLXByb3AtaW5pdGlhbC14bWwtZXhwZWN0ZWQudHh0CkBA
IC0zMzksNyArMzM5LDYgQEAgUEFTUyAtd2Via2l0LWJhY2tncm91bmQtY2xpcAogUEFTUyAtd2Vi
a2l0LWJhY2tncm91bmQtb3JpZ2luCiBQQVNTIC13ZWJraXQtYmFja2dyb3VuZC1zaXplCiBQQVNT
IC13ZWJraXQtYm9yZGVyLWhvcml6b250YWwtc3BhY2luZwotUEFTUyAtd2Via2l0LWJvcmRlci1p
bWFnZQogUEFTUyAtd2Via2l0LWJvcmRlci12ZXJ0aWNhbC1zcGFjaW5nCiBQQVNTIC13ZWJraXQt
Ym94LWFsaWduCiBQQVNTIC13ZWJraXQtYm94LWRlY29yYXRpb24tYnJlYWsKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2Nzcy9jc3NvbS9nZXRDb21wdXRlZFN0eWxlLWRldGFjaGVkLXN1YnRyZWUtZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvY3NzL2Nzc29tL2dldENvbXB1dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS1leHBlY3RlZC50
eHQKaW5kZXggYTVlZWE2Yzg2OGIxNGIxMTRjOWMyNWMzZDM1MzFiZmY5YzhhNTE5ZS4uNjgzN2Vh
MjZmZmRkODc0YTllY2UyMjQ1OTlkYzlkNThlMDg2ZGJjNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vZ3RrL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29t
L2dldENvbXB1dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS1leHBlY3RlZC50eHQKKysrIGIvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3Nz
L2Nzc29tL2dldENvbXB1dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS1leHBlY3RlZC50eHQKQEAg
LTEsOCArMSw4IEBACiAKIFBBU1MgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZv
ciBkZXRhY2hlZCBlbGVtZW50Ci1GQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHls
ZSBmb3IgZWxlbWVudCBpbiBub24tcmVuZGVyZWQgaWZyYW1lIChkaXNwbGF5OiBub25lKSBhc3Nl
cnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk1Ci1GQUlMIGdldENvbXB1dGVkU3R5bGUg
cmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBpbiBub24tcmVuZGVyZWQgaWZyYW1lIChkaXNw
bGF5OiBub25lKSBmcm9tIGlmcmFtZSdzIHdpbmRvdyBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAw
IGJ1dCBnb3QgMzk1Ci1GQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3Ig
ZWxlbWVudCBvdXRzaWRlIHRoZSBmbGF0IHRyZWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBi
dXQgZ290IDM5NQotRkFJTCBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIGRl
c2NlbmRhbnQgb3V0c2lkZSB0aGUgZmxhdCB0cmVlIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAg
YnV0IGdvdCAzOTUKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBl
bGVtZW50IGluIG5vbi1yZW5kZXJlZCBpZnJhbWUgKGRpc3BsYXk6IG5vbmUpIGFzc2VydF9lcXVh
bHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTQKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5z
IG5vIHN0eWxlIGZvciBlbGVtZW50IGluIG5vbi1yZW5kZXJlZCBpZnJhbWUgKGRpc3BsYXk6IG5v
bmUpIGZyb20gaWZyYW1lJ3Mgd2luZG93IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdv
dCAzOTQKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50
IG91dHNpZGUgdGhlIGZsYXQgdHJlZSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3Qg
Mzk0CitGQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZGVzY2VuZGFu
dCBvdXRzaWRlIHRoZSBmbGF0IHRyZWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290
IDM5NAogUEFTUyBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIHNoYWRvdyB0
cmVlIG91dHNpZGUgb2YgZmxhdHRlbmVkIHRyZWUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
cGxhdGZvcm0vaW9zL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jYXNj
YWRlL2FsbC1wcm9wLWluaXRpYWwteG1sLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRm
b3JtL2lvcy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY2FzY2FkZS9h
bGwtcHJvcC1pbml0aWFsLXhtbC1leHBlY3RlZC50eHQKaW5kZXggYmUzZGI5MGNkMDkwMDAwM2Jk
ODA4NWE1OWVjMDhkZWE3MTEzN2ZjMS4uNDMwOTg1ZTQ2Y2ExMjk5MmZkYmU4OWJlZDI2ZTI1M2Ri
MDE1YWViYyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jYXNjYWRlL2FsbC1wcm9wLWluaXRpYWwteG1s
LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNhc2NhZGUvYWxsLXByb3AtaW5pdGlhbC14bWwt
ZXhwZWN0ZWQudHh0CkBAIC0zMTEsNyArMzExLDYgQEAgUEFTUyAtd2Via2l0LWJhY2tncm91bmQt
Y2xpcAogUEFTUyAtd2Via2l0LWJhY2tncm91bmQtb3JpZ2luCiBQQVNTIC13ZWJraXQtYmFja2dy
b3VuZC1zaXplCiBQQVNTIC13ZWJraXQtYm9yZGVyLWhvcml6b250YWwtc3BhY2luZwotUEFTUyAt
d2Via2l0LWJvcmRlci1pbWFnZQogUEFTUyAtd2Via2l0LWJvcmRlci12ZXJ0aWNhbC1zcGFjaW5n
CiBQQVNTIC13ZWJraXQtYm94LWFsaWduCiBQQVNTIC13ZWJraXQtYm94LWRlY29yYXRpb24tYnJl
YWsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS9nZXRDb21wdXRlZFN0eWxlLWRldGFjaGVkLXN1YnRy
ZWUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dldENvbXB1dGVkU3R5bGUtZGV0YWNoZWQtc3Vi
dHJlZS1leHBlY3RlZC50eHQKaW5kZXggOTAzYmZjNmE3ZTliMjgyNzI0OGFiMDczYjUxMDY3N2U0
MTQ5ZGYzMi4uYTJiODQ5ZWRjNDRiNWQ0OWIxMzA3NTNiOTFmYjczMDU0YzMyNjRiZiAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL2Nzc29tL2dldENvbXB1dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS1leHBlY3Rl
ZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dldENvbXB1dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS1l
eHBlY3RlZC50eHQKQEAgLTEsOCArMSw4IEBACiAKIFBBU1MgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1
cm5zIG5vIHN0eWxlIGZvciBkZXRhY2hlZCBlbGVtZW50Ci1GQUlMIGdldENvbXB1dGVkU3R5bGUg
cmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBpbiBub24tcmVuZGVyZWQgaWZyYW1lIChkaXNw
bGF5OiBub25lKSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk5Ci1GQUlMIGdl
dENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBpbiBub24tcmVuZGVy
ZWQgaWZyYW1lIChkaXNwbGF5OiBub25lKSBmcm9tIGlmcmFtZSdzIHdpbmRvdyBhc3NlcnRfZXF1
YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk5Ci1GQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJu
cyBubyBzdHlsZSBmb3IgZWxlbWVudCBvdXRzaWRlIHRoZSBmbGF0IHRyZWUgYXNzZXJ0X2VxdWFs
czogZXhwZWN0ZWQgMCBidXQgZ290IDM5OQotRkFJTCBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMg
bm8gc3R5bGUgZm9yIGRlc2NlbmRhbnQgb3V0c2lkZSB0aGUgZmxhdCB0cmVlIGFzc2VydF9lcXVh
bHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTkKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5z
IG5vIHN0eWxlIGZvciBlbGVtZW50IGluIG5vbi1yZW5kZXJlZCBpZnJhbWUgKGRpc3BsYXk6IG5v
bmUpIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTgKK0ZBSUwgZ2V0Q29tcHV0
ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50IGluIG5vbi1yZW5kZXJlZCBpZnJh
bWUgKGRpc3BsYXk6IG5vbmUpIGZyb20gaWZyYW1lJ3Mgd2luZG93IGFzc2VydF9lcXVhbHM6IGV4
cGVjdGVkIDAgYnV0IGdvdCAzOTgKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0
eWxlIGZvciBlbGVtZW50IG91dHNpZGUgdGhlIGZsYXQgdHJlZSBhc3NlcnRfZXF1YWxzOiBleHBl
Y3RlZCAwIGJ1dCBnb3QgMzk4CitGQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHls
ZSBmb3IgZGVzY2VuZGFudCBvdXRzaWRlIHRoZSBmbGF0IHRyZWUgYXNzZXJ0X2VxdWFsczogZXhw
ZWN0ZWQgMCBidXQgZ290IDM5OAogUEFTUyBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5
bGUgZm9yIHNoYWRvdyB0cmVlIG91dHNpZGUgb2YgZmxhdHRlbmVkIHRyZWUKIApkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd3BlL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvY3NzL2Nzcy1jYXNjYWRlL2FsbC1wcm9wLWluaXRpYWwteG1sLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL3BsYXRmb3JtL3dwZS9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nz
cy9jc3MtY2FzY2FkZS9hbGwtcHJvcC1pbml0aWFsLXhtbC1leHBlY3RlZC50eHQKaW5kZXggOGUy
ZDAxMTFmYTExODYwYTM1MDQwOTQ0MGI0NzU0ZWI0YTI0MTQzZS4uOTM5NTYzMmI5OTE4ZjZhMzkw
OTM5MDRiMDJhZWRmMWY4Zjk5M2E0NyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
d3BlL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jYXNjYWRlL2FsbC1w
cm9wLWluaXRpYWwteG1sLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93
cGUvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNhc2NhZGUvYWxsLXBy
b3AtaW5pdGlhbC14bWwtZXhwZWN0ZWQudHh0CkBAIC0zMzksNyArMzM5LDYgQEAgUEFTUyAtd2Vi
a2l0LWJhY2tncm91bmQtY2xpcAogUEFTUyAtd2Via2l0LWJhY2tncm91bmQtb3JpZ2luCiBQQVNT
IC13ZWJraXQtYmFja2dyb3VuZC1zaXplCiBQQVNTIC13ZWJraXQtYm9yZGVyLWhvcml6b250YWwt
c3BhY2luZwotUEFTUyAtd2Via2l0LWJvcmRlci1pbWFnZQogUEFTUyAtd2Via2l0LWJvcmRlci12
ZXJ0aWNhbC1zcGFjaW5nCiBQQVNTIC13ZWJraXQtYm94LWFsaWduCiBQQVNTIC13ZWJraXQtYm94
LWRlY29yYXRpb24tYnJlYWsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3dwZS9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS9nZXRDb21wdXRlZFN0eWxl
LWRldGFjaGVkLXN1YnRyZWUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd3Bl
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dldENvbXB1dGVkU3R5
bGUtZGV0YWNoZWQtc3VidHJlZS1leHBlY3RlZC50eHQKaW5kZXggNjgzN2VhMjZmZmRkODc0YTll
Y2UyMjQ1OTlkYzlkNThlMDg2ZGJjNC4uODg3Y2E2YzkxOWRlM2EwYWUwMGE3ZDc1YzY3NzgzZWFl
MWI1YWQ0MCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd3BlL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dldENvbXB1dGVkU3R5bGUtZGV0YWNoZWQt
c3VidHJlZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd3BlL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dldENvbXB1dGVkU3R5bGUtZGV0
YWNoZWQtc3VidHJlZS1leHBlY3RlZC50eHQKQEAgLTEsOCArMSw4IEBACiAKIFBBU1MgZ2V0Q29t
cHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBkZXRhY2hlZCBlbGVtZW50Ci1GQUlMIGdl
dENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBpbiBub24tcmVuZGVy
ZWQgaWZyYW1lIChkaXNwbGF5OiBub25lKSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBn
b3QgMzk0Ci1GQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVu
dCBpbiBub24tcmVuZGVyZWQgaWZyYW1lIChkaXNwbGF5OiBub25lKSBmcm9tIGlmcmFtZSdzIHdp
bmRvdyBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk0Ci1GQUlMIGdldENvbXB1
dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBvdXRzaWRlIHRoZSBmbGF0IHRy
ZWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDM5NAotRkFJTCBnZXRDb21wdXRl
ZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIGRlc2NlbmRhbnQgb3V0c2lkZSB0aGUgZmxhdCB0
cmVlIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTQKK0ZBSUwgZ2V0Q29tcHV0
ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50IGluIG5vbi1yZW5kZXJlZCBpZnJh
bWUgKGRpc3BsYXk6IG5vbmUpIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTMK
K0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50IGluIG5v
bi1yZW5kZXJlZCBpZnJhbWUgKGRpc3BsYXk6IG5vbmUpIGZyb20gaWZyYW1lJ3Mgd2luZG93IGFz
c2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTMKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHls
ZSByZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50IG91dHNpZGUgdGhlIGZsYXQgdHJlZSBhc3Nl
cnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzkzCitGQUlMIGdldENvbXB1dGVkU3R5bGUg
cmV0dXJucyBubyBzdHlsZSBmb3IgZGVzY2VuZGFudCBvdXRzaWRlIHRoZSBmbGF0IHRyZWUgYXNz
ZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDM5MwogUEFTUyBnZXRDb21wdXRlZFN0eWxl
IHJldHVybnMgbm8gc3R5bGUgZm9yIHNoYWRvdyB0cmVlIG91dHNpZGUgb2YgZmxhdHRlbmVkIHRy
ZWUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3ZnL2Nzcy9nZXRDb21wdXRlZFN0eWxlLWJh
c2ljLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3N2Zy9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS1i
YXNpYy1leHBlY3RlZC50eHQKaW5kZXggM2ZlNzc4ZmMwNGQ1YzYwMWY3YzAzNzZiZjNlMWY2OTJi
Yjg4NDRjZS4uYzU2NDI4OTlkNjA3YTM2ZDE3OTRiYWZmOWJmZWVjZjUyNTAxZGYyNSAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvc3ZnL2Nzcy9nZXRDb21wdXRlZFN0eWxlLWJhc2ljLWV4cGVjdGVk
LnR4dAorKysgYi9MYXlvdXRUZXN0cy9zdmcvY3NzL2dldENvbXB1dGVkU3R5bGUtYmFzaWMtZXhw
ZWN0ZWQudHh0CkBAIC00MTgsOCArNDE4LDYgQEAgcmVjdDogc3R5bGUuZ2V0UHJvcGVydHlWYWx1
ZSgtd2Via2l0LWJhY2tncm91bmQtc2l6ZSkgOiBhdXRvCiByZWN0OiBzdHlsZS5nZXRQcm9wZXJ0
eUNTU1ZhbHVlKC13ZWJraXQtYmFja2dyb3VuZC1zaXplKSA6IFtvYmplY3QgQ1NTUHJpbWl0aXZl
VmFsdWVdCiByZWN0OiBzdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKC13ZWJraXQtYm9yZGVyLWhvcml6
b250YWwtc3BhY2luZykgOiAwcHgKIHJlY3Q6IHN0eWxlLmdldFByb3BlcnR5Q1NTVmFsdWUoLXdl
YmtpdC1ib3JkZXItaG9yaXpvbnRhbC1zcGFjaW5nKSA6IFtvYmplY3QgQ1NTUHJpbWl0aXZlVmFs
dWVdCi1yZWN0OiBzdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKC13ZWJraXQtYm9yZGVyLWltYWdlKSA6
IG5vbmUKLXJlY3Q6IHN0eWxlLmdldFByb3BlcnR5Q1NTVmFsdWUoLXdlYmtpdC1ib3JkZXItaW1h
Z2UpIDogW29iamVjdCBDU1NQcmltaXRpdmVWYWx1ZV0KIHJlY3Q6IHN0eWxlLmdldFByb3BlcnR5
VmFsdWUoLXdlYmtpdC1ib3JkZXItdmVydGljYWwtc3BhY2luZykgOiAwcHgKIHJlY3Q6IHN0eWxl
LmdldFByb3BlcnR5Q1NTVmFsdWUoLXdlYmtpdC1ib3JkZXItdmVydGljYWwtc3BhY2luZykgOiBb
b2JqZWN0IENTU1ByaW1pdGl2ZVZhbHVlXQogcmVjdDogc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgt
d2Via2l0LWJveC1hbGlnbikgOiBzdHJldGNoCkBAIC05MzQsOCArOTMyLDYgQEAgZzogc3R5bGUu
Z2V0UHJvcGVydHlWYWx1ZSgtd2Via2l0LWJhY2tncm91bmQtc2l6ZSkgOiBhdXRvCiBnOiBzdHls
ZS5nZXRQcm9wZXJ0eUNTU1ZhbHVlKC13ZWJraXQtYmFja2dyb3VuZC1zaXplKSA6IFtvYmplY3Qg
Q1NTUHJpbWl0aXZlVmFsdWVdCiBnOiBzdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKC13ZWJraXQtYm9y
ZGVyLWhvcml6b250YWwtc3BhY2luZykgOiAwcHgKIGc6IHN0eWxlLmdldFByb3BlcnR5Q1NTVmFs
dWUoLXdlYmtpdC1ib3JkZXItaG9yaXpvbnRhbC1zcGFjaW5nKSA6IFtvYmplY3QgQ1NTUHJpbWl0
aXZlVmFsdWVdCi1nOiBzdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKC13ZWJraXQtYm9yZGVyLWltYWdl
KSA6IG5vbmUKLWc6IHN0eWxlLmdldFByb3BlcnR5Q1NTVmFsdWUoLXdlYmtpdC1ib3JkZXItaW1h
Z2UpIDogW29iamVjdCBDU1NQcmltaXRpdmVWYWx1ZV0KIGc6IHN0eWxlLmdldFByb3BlcnR5VmFs
dWUoLXdlYmtpdC1ib3JkZXItdmVydGljYWwtc3BhY2luZykgOiAwcHgKIGc6IHN0eWxlLmdldFBy
b3BlcnR5Q1NTVmFsdWUoLXdlYmtpdC1ib3JkZXItdmVydGljYWwtc3BhY2luZykgOiBbb2JqZWN0
IENTU1ByaW1pdGl2ZVZhbHVlXQogZzogc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgtd2Via2l0LWJv
eC1hbGlnbikgOiBzdHJldGNoCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>455197</attachid>
            <date>2022-03-20 09:08:07 -0700</date>
            <delta_ts>2022-04-01 14:09:31 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-237487-20220320170806.patch</filename>
            <type>text/plain</type>
            <size>46396</size>
            <attacher name="Oriol Brufau">obrufau</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkxNTQwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTdhMTdhMmRiZDUyYmM1
ZmRjY2U2NmJhMzM0ZTRmODYyNmUxMTg1Mi4uOWNlNjVmMzE4ZTViYzFkNjUyZDNhOTJhNjJkMzI3
NmU5NTgyODAwNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUwIEBACisyMDIyLTAzLTIwICBPcmlv
bCBCcnVmYXUgIDxvYnJ1ZmF1QGlnYWxpYS5jb20+CisKKyAgICAgICAgW2Nzc10gVHVybiAtd2Vi
a2l0LWJvcmRlci1pbWFnZSBpbnRvIGEgc2hvcnRoYW5kCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzc0ODcKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGUgJy13ZWJraXQtYm9yZGVyLWltYWdlJyBwcm9w
ZXJ0eSB3YXMgY29uc2lkZXJlZCB0byBiZSBhIGxvbmdoYW5kLAorICAgICAgICBzaGFyaW5nIGNv
bXB1dGVkIHZhbHVlcyB3aXRoIHRoZSB2YXJpb3VzICdib3JkZXItaW1hZ2UtKicuCisKKyAgICAg
ICAgVGhpcyBwYXRjaCB0dXJucyBpdCBpbnRvIGEgbG9uZ2hhbmQgb2YgJ2JvcmRlci1pbWFnZS0q
JywgYW5kIGFsc28gb2YKKyAgICAgICAgJ2JvcmRlci0qLXdpZHRoJy4gVGhlIGxhdHRlciBpcyBi
ZWNhdXNlIEknbSBwcmVzZXJ2aW5nIHRoZSBsZWdhY3kKKyAgICAgICAgYmVoYXZpb3Igb2YgbWFr
aW5nIHRoZSBib3JkZXIgaW1hZ2Ugd2lkdGhzIGFsc28gc2V0IHRoZSBib3JkZXIgd2lkdGhzCisg
ICAgICAgIGlmIHRoZXkgYXJlIGEgbGVuZ3RoLgorCisgICAgICAgIFRlc3RzOiBmYXN0L2Nzcy9i
b3JkZXItaW1hZ2Utc3R5bGUtbGVuZ3RoLmh0bWwKKyAgICAgICAgICAgICAgIGZhc3QvY3NzL2dl
dENvbXB1dGVkU3R5bGUvY29tcHV0ZWQtc3R5bGUuaHRtbAorICAgICAgICAgICAgICAgZmFzdC9j
c3MvZ2V0Q29tcHV0ZWRTdHlsZS9jb21wdXRlZC1zdHlsZS13aXRob3V0LXJlbmRlcmVyLmh0bWwK
KyAgICAgICAgICAgICAgIGZhc3QvY3NzL2ltYWdlLXNldC1wYXJzaW5nLmh0bWwKKyAgICAgICAg
ICAgICAgIGZhc3QvY3NzL3VyaS10b2tlbi1wYXJzaW5nLmh0bWwKKyAgICAgICAgICAgICAgIGlt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jYXNjYWRlL2FsbC1wcm9wLWlu
aXRpYWwteG1sLmh0bWwKKyAgICAgICAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL2Nzc29tL2dldENvbXB1dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS5odG1sCisg
ICAgICAgICAgICAgICBzdmcvY3NzL2dldENvbXB1dGVkU3R5bGUtYmFzaWMueGh0bWwKKworICAg
ICAgICAqIGNzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6dmFsdWVGb3JOaW5lUGllY2VJbWFnZSk6CisgICAgICAgIChXZWJDb3JlOjp2YWx1ZUZv
clJlZmxlY3Rpb24pOgorICAgICAgICAoV2ViQ29yZTo6Q29tcHV0ZWRTdHlsZUV4dHJhY3Rvcjo6
dmFsdWVGb3JQcm9wZXJ0eUluU3R5bGUpOgorICAgICAgICAqIGNzcy9DU1NQcm9wZXJ0aWVzLmpz
b246CisgICAgICAgICogY3NzL0NTU1RvU3R5bGVNYXAuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
Q1NTVG9TdHlsZU1hcDo6bWFwTmluZVBpZWNlSW1hZ2UpOgorICAgICAgICAqIGNzcy9DU1NUb1N0
eWxlTWFwLmg6CisgICAgICAgICogY3NzL1N0eWxlUHJvcGVydGllcy5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpTdHlsZVByb3BlcnRpZXM6OmdldFByb3BlcnR5VmFsdWUgY29uc3QpOgorICAgICAg
ICAoV2ViQ29yZTo6U3R5bGVQcm9wZXJ0aWVzOjpib3JkZXJJbWFnZVByb3BlcnR5VmFsdWUgY29u
c3QpOgorICAgICAgICAqIGNzcy9TdHlsZVByb3BlcnRpZXMuaDoKKyAgICAgICAgKiBjc3MvcGFy
c2VyL0NTU1Byb3BlcnR5UGFyc2VyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1Byb3BlcnR5
UGFyc2VyOjpwYXJzZVNpbmdsZVZhbHVlKToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1Byb3BlcnR5
UGFyc2VyOjpjb25zdW1lQm9yZGVySW1hZ2UpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUHJvcGVy
dHlQYXJzZXI6OnBhcnNlU2hvcnRoYW5kKToKKyAgICAgICAgKiBzdHlsZS9Qcm9wZXJ0eUNhc2Nh
ZGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGU6OnNob3VsZEFwcGx5UHJvcGVydHlJblBh
cnNlT3JkZXIpOgorICAgICAgICAqIHN0eWxlL1N0eWxlQnVpbGRlckNvbnZlcnRlci5oOgorICAg
ICAgICAoV2ViQ29yZTo6U3R5bGU6OkJ1aWxkZXJDb252ZXJ0ZXI6OmNvbnZlcnRCb3JkZXJNYXNr
KToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlOjpCdWlsZGVyQ29udmVydGVyOjpjb252ZXJ0UmVm
bGVjdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6QnVpbGRlckNvbnZlcnRlcjo6Y29u
dmVydEJvcmRlckltYWdlKTogRGVsZXRlZC4KKwogMjAyMi0wMy0yMCAgT3Jpb2wgQnJ1ZmF1ICA8
b2JydWZhdUBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtjc3MtY2FzY2FkZV0gRG9uJ3QgZGVmZXIg
YXBwbHlpbmcgdGV4dCBkZWNvcmF0aW9uIHByb3BlcnRpZXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3BwIGIvU291cmNlL1dlYkNv
cmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAKaW5kZXggNDk0ZThiNmFiNDA0
ODI1OTkwYjE0ZWUyNWM1ODk2NzRiYmZlZDgzYy4uMDY4MzFmZTViYTUxZjU4MzBjOWI4NGUwYjZm
NTg4ZjRjYWY3NTA4NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVk
U3R5bGVEZWNsYXJhdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVk
U3R5bGVEZWNsYXJhdGlvbi5jcHAKQEAgLTIyNCw3ICsyMjQsNyBAQCBzdGF0aWMgUmVmPENTU1Zh
bHVlPiB2YWx1ZUZvck5pbmVQaWVjZUltYWdlUmVwZWF0KGNvbnN0IE5pbmVQaWVjZUltYWdlJiBp
bWFnZSkKICAgICByZXR1cm4gY3NzVmFsdWVQb29sLmNyZWF0ZVZhbHVlKFBhaXI6OmNyZWF0ZShX
VEZNb3ZlKGhvcml6b250YWxSZXBlYXQpLCBXVEZNb3ZlKHZlcnRpY2FsUmVwZWF0KSkpOwogfQog
Ci1zdGF0aWMgUmVmPENTU1ZhbHVlPiB2YWx1ZUZvck5pbmVQaWVjZUltYWdlKGNvbnN0IE5pbmVQ
aWVjZUltYWdlJiBpbWFnZSwgY29uc3QgUmVuZGVyU3R5bGUmIHN0eWxlKQorc3RhdGljIFJlZlB0
cjxDU1NWYWx1ZT4gdmFsdWVGb3JOaW5lUGllY2VJbWFnZShDU1NQcm9wZXJ0eUlEIHByb3BlcnR5
SUQsIGNvbnN0IE5pbmVQaWVjZUltYWdlJiBpbWFnZSwgY29uc3QgUmVuZGVyU3R5bGUmIHN0eWxl
KQogewogICAgIGlmICghaW1hZ2UuaGFzSW1hZ2UoKSkKICAgICAgICAgcmV0dXJuIENTU1ZhbHVl
UG9vbDo6c2luZ2xldG9uKCkuY3JlYXRlSWRlbnRpZmllclZhbHVlKENTU1ZhbHVlTm9uZSk7CkBA
IC0yMzMsNiArMjMzLDIwIEBAIHN0YXRpYyBSZWY8Q1NTVmFsdWU+IHZhbHVlRm9yTmluZVBpZWNl
SW1hZ2UoY29uc3QgTmluZVBpZWNlSW1hZ2UmIGltYWdlLCBjb25zdCBSCiAgICAgaWYgKGltYWdl
LmltYWdlKCkpCiAgICAgICAgIGltYWdlVmFsdWUgPSBpbWFnZS5pbWFnZSgpLT5jc3NWYWx1ZSgp
OwogCisgICAgaWYgKHByb3BlcnR5SUQgPT0gQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJJbWFnZSkg
eworICAgICAgICAvLyAtd2Via2l0LWJvcmRlci1pbWFnZSBoYXMgYSBsZWdhY3kgYmVoYXZpb3Ig
dGhhdCBtYWtlcyBmaXhlZCBib3JkZXIgc2xpY2VzIGFsc28gc2V0IHRoZSBib3JkZXIgd2lkdGhz
LgorICAgICAgICAvLyBTbyBpZiB0aGV5IGFyZSBmaXhlZCBidXQgdGhlIGJvcmRlciB3aWR0aHMg
ZG9uJ3QgbWF0Y2gsIC13ZWJraXQtYm9yZGVyLWltYWdlIGNhbid0IHJlcHJlc2VudCB0aGUgY3Vy
cmVudCBzdGF0ZS4KKyAgICAgICAgY29uc3QgYXV0byYgYm9yZGVyU2xpY2VzID0gaW1hZ2UuYm9y
ZGVyU2xpY2VzKCk7CisgICAgICAgIGlmIChib3JkZXJTbGljZXMudG9wKCkuaXNGaXhlZCgpICYm
IGJvcmRlclNsaWNlcy50b3AoKS52YWx1ZSgpICE9IHN0eWxlLmJvcmRlclRvcFdpZHRoKCkpCisg
ICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICAgICAgaWYgKGJvcmRlclNsaWNlcy5yaWdo
dCgpLmlzRml4ZWQoKSAmJiBib3JkZXJTbGljZXMucmlnaHQoKS52YWx1ZSgpICE9IHN0eWxlLmJv
cmRlclJpZ2h0V2lkdGgoKSkKKyAgICAgICAgICAgIHJldHVybiBudWxscHRyOworICAgICAgICBp
ZiAoYm9yZGVyU2xpY2VzLmJvdHRvbSgpLmlzRml4ZWQoKSAmJiBib3JkZXJTbGljZXMuYm90dG9t
KCkudmFsdWUoKSAhPSBzdHlsZS5ib3JkZXJCb3R0b21XaWR0aCgpKQorICAgICAgICAgICAgcmV0
dXJuIG51bGxwdHI7CisgICAgICAgIGlmIChib3JkZXJTbGljZXMubGVmdCgpLmlzRml4ZWQoKSAm
JiBib3JkZXJTbGljZXMubGVmdCgpLnZhbHVlKCkgIT0gc3R5bGUuYm9yZGVyTGVmdFdpZHRoKCkp
CisgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICB9CisKICAgICBhdXRvIGltYWdlU2xp
Y2VzID0gdmFsdWVGb3JOaW5lUGllY2VJbWFnZVNsaWNlKGltYWdlKTsKICAgICBhdXRvIGJvcmRl
clNsaWNlcyA9IHZhbHVlRm9yTmluZVBpZWNlSW1hZ2VRdWFkKGltYWdlLmJvcmRlclNsaWNlcygp
LCBzdHlsZSk7CiAgICAgYXV0byBvdXRzZXQgPSB2YWx1ZUZvck5pbmVQaWVjZUltYWdlUXVhZChp
bWFnZS5vdXRzZXQoKSwgc3R5bGUpOwpAQCAtMjg0LDcgKzI5OCw3IEBAIHN0YXRpYyBSZWY8Q1NT
VmFsdWU+IHZhbHVlRm9yUmVmbGVjdGlvbihjb25zdCBTdHlsZVJlZmxlY3Rpb24qIHJlZmxlY3Rp
b24sIGNvbnN0CiAgICAgICAgIGJyZWFrOwogICAgIH0KIAotICAgIHJldHVybiBDU1NSZWZsZWN0
VmFsdWU6OmNyZWF0ZShkaXJlY3Rpb24ucmVsZWFzZU5vbk51bGwoKSwgb2Zmc2V0LnJlbGVhc2VO
b25OdWxsKCksIHZhbHVlRm9yTmluZVBpZWNlSW1hZ2UocmVmbGVjdGlvbi0+bWFzaygpLCBzdHls
ZSkpOworICAgIHJldHVybiBDU1NSZWZsZWN0VmFsdWU6OmNyZWF0ZShkaXJlY3Rpb24ucmVsZWFz
ZU5vbk51bGwoKSwgb2Zmc2V0LnJlbGVhc2VOb25OdWxsKCksIHZhbHVlRm9yTmluZVBpZWNlSW1h
Z2UoQ1NTUHJvcGVydHlXZWJraXRCb3hSZWZsZWN0LCByZWZsZWN0aW9uLT5tYXNrKCksIHN0eWxl
KSk7CiB9CiAKIHN0YXRpYyBSZWY8Q1NTVmFsdWVMaXN0PiBjcmVhdGVQb3NpdGlvbkxpc3RGb3JM
YXllcihDU1NQcm9wZXJ0eUlEIHByb3BlcnR5SUQsIGNvbnN0IEZpbGxMYXllciYgbGF5ZXIsIGNv
bnN0IFJlbmRlclN0eWxlJiBzdHlsZSkKQEAgLTM3OTcsOCArMzgxMSw5IEBAIFJlZlB0cjxDU1NW
YWx1ZT4gQ29tcHV0ZWRTdHlsZUV4dHJhY3Rvcjo6dmFsdWVGb3JQcm9wZXJ0eUluU3R5bGUoY29u
c3QgUmVuZGVyU3R5CiAgICAgICAgIH0KICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eUJhY2tmYWNl
VmlzaWJpbGl0eToKICAgICAgICAgICAgIHJldHVybiBjc3NWYWx1ZVBvb2wuY3JlYXRlSWRlbnRp
ZmllclZhbHVlKChzdHlsZS5iYWNrZmFjZVZpc2liaWxpdHkoKSA9PSBCYWNrZmFjZVZpc2liaWxp
dHk6OkhpZGRlbikgPyBDU1NWYWx1ZUhpZGRlbiA6IENTU1ZhbHVlVmlzaWJsZSk7CisgICAgICAg
IGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJJbWFnZToKICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eVdl
YmtpdEJvcmRlckltYWdlOgotICAgICAgICAgICAgcmV0dXJuIHZhbHVlRm9yTmluZVBpZWNlSW1h
Z2Uoc3R5bGUuYm9yZGVySW1hZ2UoKSwgc3R5bGUpOworICAgICAgICAgICAgcmV0dXJuIHZhbHVl
Rm9yTmluZVBpZWNlSW1hZ2UocHJvcGVydHlJRCwgc3R5bGUuYm9yZGVySW1hZ2UoKSwgc3R5bGUp
OwogICAgICAgICBjYXNlIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VPdXRzZXQ6CiAgICAgICAgICAg
ICByZXR1cm4gdmFsdWVGb3JOaW5lUGllY2VJbWFnZVF1YWQoc3R5bGUuYm9yZGVySW1hZ2UoKS5v
dXRzZXQoKSwgc3R5bGUpOwogICAgICAgICBjYXNlIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VSZXBl
YXQ6CkBAIC0zODA4LDcgKzM4MjMsNyBAQCBSZWZQdHI8Q1NTVmFsdWU+IENvbXB1dGVkU3R5bGVF
eHRyYWN0b3I6OnZhbHVlRm9yUHJvcGVydHlJblN0eWxlKGNvbnN0IFJlbmRlclN0eQogICAgICAg
ICBjYXNlIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VXaWR0aDoKICAgICAgICAgICAgIHJldHVybiB2
YWx1ZUZvck5pbmVQaWVjZUltYWdlUXVhZChzdHlsZS5ib3JkZXJJbWFnZSgpLmJvcmRlclNsaWNl
cygpLCBzdHlsZSk7CiAgICAgICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2U6
Ci0gICAgICAgICAgICByZXR1cm4gdmFsdWVGb3JOaW5lUGllY2VJbWFnZShzdHlsZS5tYXNrQm94
SW1hZ2UoKSwgc3R5bGUpOworICAgICAgICAgICAgcmV0dXJuIHZhbHVlRm9yTmluZVBpZWNlSW1h
Z2UocHJvcGVydHlJRCwgc3R5bGUubWFza0JveEltYWdlKCksIHN0eWxlKTsKICAgICAgICAgY2Fz
ZSBDU1NQcm9wZXJ0eVdlYmtpdE1hc2tCb3hJbWFnZU91dHNldDoKICAgICAgICAgICAgIHJldHVy
biB2YWx1ZUZvck5pbmVQaWVjZUltYWdlUXVhZChzdHlsZS5tYXNrQm94SW1hZ2UoKS5vdXRzZXQo
KSwgc3R5bGUpOwogICAgICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0TWFza0JveEltYWdlUmVw
ZWF0OgpAQCAtNDA0OCw4ICs0MDYzLDYgQEAgUmVmUHRyPENTU1ZhbHVlPiBDb21wdXRlZFN0eWxl
RXh0cmFjdG9yOjp2YWx1ZUZvclByb3BlcnR5SW5TdHlsZShjb25zdCBSZW5kZXJTdHkKICAgICAg
ICAgICAgIHJldHVybiBnZXRDU1NQcm9wZXJ0eVZhbHVlc0ZvcjRTaWRlc1Nob3J0aGFuZChib3Jk
ZXJDb2xvclNob3J0aGFuZCgpKTsKICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlckxlZnQ6
CiAgICAgICAgICAgICByZXR1cm4gZ2V0Q1NTUHJvcGVydHlWYWx1ZXNGb3JTaG9ydGhhbmRQcm9w
ZXJ0aWVzKGJvcmRlckxlZnRTaG9ydGhhbmQoKSk7Ci0gICAgICAgIGNhc2UgQ1NTUHJvcGVydHlC
b3JkZXJJbWFnZToKLSAgICAgICAgICAgIHJldHVybiB2YWx1ZUZvck5pbmVQaWVjZUltYWdlKHN0
eWxlLmJvcmRlckltYWdlKCksIHN0eWxlKTsKICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRl
cklubGluZTogewogICAgICAgICAgICAgYXV0byB2YWx1ZSA9IHByb3BlcnR5VmFsdWUoQ1NTUHJv
cGVydHlCb3JkZXJJbmxpbmVTdGFydCwgRG9Ob3RVcGRhdGVMYXlvdXQpOwogICAgICAgICAgICAg
aWYgKCFjb21wYXJlQ1NTVmFsdWVQdHI8Q1NTVmFsdWU+KHZhbHVlLCBwcm9wZXJ0eVZhbHVlKENT
U1Byb3BlcnR5Qm9yZGVySW5saW5lRW5kLCBEb05vdFVwZGF0ZUxheW91dCkpKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3BlcnRpZXMuanNvbiBiL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9DU1NQcm9wZXJ0aWVzLmpzb24KaW5kZXggYmYwNmQyNGRhOGFiMTBmZjY3NmNhZDc2NmYy
OTEwNzk2NWYxNTIyNy4uZTIxNjU5MmQ5MzA4N2YzMmE3YWZmMzhjZmY0MjAzYTA5NjA3M2UwNSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3BlcnRpZXMuanNvbgorKysgYi9T
b3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVydGllcy5qc29uCkBAIC01MzM4LDggKzUzMzgsMjAg
QEAKICAgICAgICAgfSwKICAgICAgICAgIi13ZWJraXQtYm9yZGVyLWltYWdlIjogewogICAgICAg
ICAgICAgImNvZGVnZW4tcHJvcGVydGllcyI6IHsKLSAgICAgICAgICAgICAgICAiaW5pdGlhbCI6
ICJpbml0aWFsTmluZVBpZWNlSW1hZ2UiLAotICAgICAgICAgICAgICAgICJjb252ZXJ0ZXIiOiAi
Qm9yZGVySW1hZ2U8Q1NTUHJvcGVydHlXZWJraXRCb3JkZXJJbWFnZT4iCisgICAgICAgICAgICAg
ICAgImxvbmdoYW5kcyI6IFsKKyAgICAgICAgICAgICAgICAgICAgImJvcmRlci10b3Atd2lkdGgi
LAorICAgICAgICAgICAgICAgICAgICAiYm9yZGVyLXJpZ2h0LXdpZHRoIiwKKyAgICAgICAgICAg
ICAgICAgICAgImJvcmRlci1ib3R0b20td2lkdGgiLAorICAgICAgICAgICAgICAgICAgICAiYm9y
ZGVyLWxlZnQtd2lkdGgiLAorICAgICAgICAgICAgICAgICAgICAiYm9yZGVyLWltYWdlLXNvdXJj
ZSIsCisgICAgICAgICAgICAgICAgICAgICJib3JkZXItaW1hZ2Utc2xpY2UiLAorICAgICAgICAg
ICAgICAgICAgICAiYm9yZGVyLWltYWdlLXdpZHRoIiwKKyAgICAgICAgICAgICAgICAgICAgImJv
cmRlci1pbWFnZS1vdXRzZXQiLAorICAgICAgICAgICAgICAgICAgICAiYm9yZGVyLWltYWdlLXJl
cGVhdCIKKyAgICAgICAgICAgICAgICBdCisgICAgICAgICAgICB9LAorICAgICAgICAgICAgInN0
YXR1cyI6IHsKKyAgICAgICAgICAgICAgICAiY29tbWVudCI6ICJEaWZmZXJzIGZyb20gYm9yZGVy
LWltYWdlIGluIHRoYXQgaXQgYWx3YXlzIGluY2x1ZGVzIHRoZSAnZmlsbCcga2V5d29yZCBpbiAn
Ym9yZGVyLWltYWdlLXNsaWNlJywgYW5kIGl0IHNldHMgJ2JvcmRlci0qLXdpZHRoJyBpZiB0aGUg
Y29ycmVzcG9uZGluZyBzbGljZSBvZmZzZXQgaXMuIgogICAgICAgICAgICAgfQogICAgICAgICB9
LAogICAgICAgICAiLXdlYmtpdC1ib3JkZXItcmFkaXVzIjogewpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvY3NzL0NTU1RvU3R5bGVNYXAuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Rv
U3R5bGVNYXAuY3BwCmluZGV4IDk0NjYwNTEzNTA1M2FiNWQzNjg3OGNjYmYzMjE1YjkzYTcxMjU4
YTkuLjQxOWZlYjk3YTU2YmE2M2NjYzNiODhjYzkwZDdlNDhhNzAyMzVhZTEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NUb1N0eWxlTWFwLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9jc3MvQ1NTVG9TdHlsZU1hcC5jcHAKQEAgLTQ3MSw3ICs0NzEsNyBAQCB2b2lkIENTU1RvU3R5
bGVNYXA6Om1hcEFuaW1hdGlvbkNvbXBvc2l0ZU9wZXJhdGlvbihBbmltYXRpb24mIGFuaW1hdGlv
biwgY29uc3QgQwogICAgICAgICBhbmltYXRpb24uc2V0Q29tcG9zaXRlT3BlcmF0aW9uKCpjb21w
b3NpdGVPcGVyYXRpb24pOwogfQogCi12b2lkIENTU1RvU3R5bGVNYXA6Om1hcE5pbmVQaWVjZUlt
YWdlKENTU1Byb3BlcnR5SUQgcHJvcGVydHksIENTU1ZhbHVlKiB2YWx1ZSwgTmluZVBpZWNlSW1h
Z2UmIGltYWdlKQordm9pZCBDU1NUb1N0eWxlTWFwOjptYXBOaW5lUGllY2VJbWFnZShDU1NWYWx1
ZSogdmFsdWUsIE5pbmVQaWVjZUltYWdlJiBpbWFnZSkKIHsKICAgICAvLyBJZiB3ZSdyZSBub3Qg
YSB2YWx1ZSBsaXN0LCB0aGVuIHdlIGFyZSAibm9uZSIgYW5kIGRvbid0IG5lZWQgdG8gYWx0ZXIg
dGhlIGVtcHR5IGltYWdlIGF0IGFsbC4KICAgICBpZiAoIWlzPENTU1ZhbHVlTGlzdD4odmFsdWUp
KQpAQCAtNTAzLDIwICs1MDMsNiBAQCB2b2lkIENTU1RvU3R5bGVNYXA6Om1hcE5pbmVQaWVjZUlt
YWdlKENTU1Byb3BlcnR5SUQgcHJvcGVydHksIENTU1ZhbHVlKiB2YWx1ZSwgTgogICAgICAgICAg
ICAgbWFwTmluZVBpZWNlSW1hZ2VSZXBlYXQoY3VycmVudCwgaW1hZ2UpOwogICAgICAgICB9CiAg
ICAgfQotCi0gICAgaWYgKHByb3BlcnR5ID09IENTU1Byb3BlcnR5V2Via2l0Qm9yZGVySW1hZ2Up
IHsKLSAgICAgICAgLy8gV2UgaGF2ZSB0byBwcmVzZXJ2ZSB0aGUgbGVnYWN5IGJlaGF2aW9yIG9m
IC13ZWJraXQtYm9yZGVyLWltYWdlIGFuZCBtYWtlIHRoZSBib3JkZXIgc2xpY2VzCi0gICAgICAg
IC8vIGFsc28gc2V0IHRoZSBib3JkZXIgd2lkdGhzLiBXZSBkb24ndCBuZWVkIHRvIHdvcnJ5IGFi
b3V0IHBlcmNlbnRhZ2VzLCBzaW5jZSB3ZSBkb24ndCBldmVuIHN1cHBvcnQKLSAgICAgICAgLy8g
dGhvc2Ugb24gcmVhbCBib3JkZXJzIHlldC4KLSAgICAgICAgaWYgKGltYWdlLmJvcmRlclNsaWNl
cygpLnRvcCgpLmlzRml4ZWQoKSkKLSAgICAgICAgICAgIHN0eWxlKCktPnNldEJvcmRlclRvcFdp
ZHRoKGltYWdlLmJvcmRlclNsaWNlcygpLnRvcCgpLnZhbHVlKCkpOwotICAgICAgICBpZiAoaW1h
Z2UuYm9yZGVyU2xpY2VzKCkucmlnaHQoKS5pc0ZpeGVkKCkpCi0gICAgICAgICAgICBzdHlsZSgp
LT5zZXRCb3JkZXJSaWdodFdpZHRoKGltYWdlLmJvcmRlclNsaWNlcygpLnJpZ2h0KCkudmFsdWUo
KSk7Ci0gICAgICAgIGlmIChpbWFnZS5ib3JkZXJTbGljZXMoKS5ib3R0b20oKS5pc0ZpeGVkKCkp
Ci0gICAgICAgICAgICBzdHlsZSgpLT5zZXRCb3JkZXJCb3R0b21XaWR0aChpbWFnZS5ib3JkZXJT
bGljZXMoKS5ib3R0b20oKS52YWx1ZSgpKTsKLSAgICAgICAgaWYgKGltYWdlLmJvcmRlclNsaWNl
cygpLmxlZnQoKS5pc0ZpeGVkKCkpCi0gICAgICAgICAgICBzdHlsZSgpLT5zZXRCb3JkZXJMZWZ0
V2lkdGgoaW1hZ2UuYm9yZGVyU2xpY2VzKCkubGVmdCgpLnZhbHVlKCkpOwotICAgIH0KIH0KIAog
dm9pZCBDU1NUb1N0eWxlTWFwOjptYXBOaW5lUGllY2VJbWFnZVNsaWNlKENTU1ZhbHVlJiB2YWx1
ZSwgTmluZVBpZWNlSW1hZ2UmIGltYWdlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3Nz
L0NTU1RvU3R5bGVNYXAuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NUb1N0eWxlTWFwLmgKaW5k
ZXggNGM5YmI0NGNiOTMyODhkZjc2NGUwNTkwYTM2ZGJlYzdiMWZmNzhjOS4uZmVhNzVkYjk0ZjFi
ZmI5ZDJjZDJhOTQyODZkZTIwNDkwN2M2MmQ1NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
Y3NzL0NTU1RvU3R5bGVNYXAuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVG9TdHlsZU1h
cC5oCkBAIC03MCw3ICs3MCw3IEBAIHB1YmxpYzoKICAgICB2b2lkIG1hcEFuaW1hdGlvblRpbWlu
Z0Z1bmN0aW9uKEFuaW1hdGlvbiYsIGNvbnN0IENTU1ZhbHVlJik7CiAgICAgdm9pZCBtYXBBbmlt
YXRpb25Db21wb3NpdGVPcGVyYXRpb24oQW5pbWF0aW9uJiwgY29uc3QgQ1NTVmFsdWUmKTsKIAot
ICAgIHZvaWQgbWFwTmluZVBpZWNlSW1hZ2UoQ1NTUHJvcGVydHlJRCwgQ1NTVmFsdWUqLCBOaW5l
UGllY2VJbWFnZSYpOworICAgIHZvaWQgbWFwTmluZVBpZWNlSW1hZ2UoQ1NTVmFsdWUqLCBOaW5l
UGllY2VJbWFnZSYpOwogICAgIHZvaWQgbWFwTmluZVBpZWNlSW1hZ2VTbGljZShDU1NWYWx1ZSYs
IE5pbmVQaWVjZUltYWdlJik7CiAgICAgTGVuZ3RoQm94IG1hcE5pbmVQaWVjZUltYWdlUXVhZChD
U1NWYWx1ZSYpOwogICAgIHZvaWQgbWFwTmluZVBpZWNlSW1hZ2VSZXBlYXQoQ1NTVmFsdWUmLCBO
aW5lUGllY2VJbWFnZSYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUHJv
cGVydGllcy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVQcm9wZXJ0aWVzLmNwcAppbmRl
eCBmMDQxM2MxN2ZmZmEyODM4MTFmZTI1MTdmZGZkNjFiY2RjZjhiMjU5Li43ZDljZmZhYWMyMjdm
ZWUwMWI3YjllYTM3ZTI4YjM5ODQ1MDk0OTY0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9j
c3MvU3R5bGVQcm9wZXJ0aWVzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVQcm9w
ZXJ0aWVzLmNwcApAQCAtMjE5LDcgKzIxOSw4IEBAIFN0cmluZyBTdHlsZVByb3BlcnRpZXM6Omdl
dFByb3BlcnR5VmFsdWUoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eUlEKSBjb25zdAogICAgIGNhc2Ug
Q1NTUHJvcGVydHlCb3JkZXJCbG9ja0VuZDoKICAgICAgICAgcmV0dXJuIGdldFNob3J0aGFuZFZh
bHVlKGJvcmRlckJsb2NrRW5kU2hvcnRoYW5kKCkpOwogICAgIGNhc2UgQ1NTUHJvcGVydHlCb3Jk
ZXJJbWFnZToKLSAgICAgICAgcmV0dXJuIGJvcmRlckltYWdlUHJvcGVydHlWYWx1ZSgpOworICAg
IGNhc2UgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJJbWFnZToKKyAgICAgICAgcmV0dXJuIGJvcmRl
ckltYWdlUHJvcGVydHlWYWx1ZShwcm9wZXJ0eUlEKTsKICAgICBjYXNlIENTU1Byb3BlcnR5Qm9y
ZGVySW5saW5lOgogICAgICAgICByZXR1cm4gYm9yZGVyUHJvcGVydHlWYWx1ZShib3JkZXJJbmxp
bmVXaWR0aFNob3J0aGFuZCgpLCBib3JkZXJJbmxpbmVTdHlsZVNob3J0aGFuZCgpLCBib3JkZXJJ
bmxpbmVDb2xvclNob3J0aGFuZCgpKTsKICAgICBjYXNlIENTU1Byb3BlcnR5Qm9yZGVySW5saW5l
Q29sb3I6CkBAIC05MDMsNyArOTA0LDcgQEAgU3RyaW5nIFN0eWxlUHJvcGVydGllczo6Z2V0QWxp
Z25tZW50U2hvcnRoYW5kVmFsdWUoY29uc3QgU3R5bGVQcm9wZXJ0eVNob3J0aGFuZCYKICAgICBy
ZXR1cm4gdmFsdWU7CiB9CiAKLVN0cmluZyBTdHlsZVByb3BlcnRpZXM6OmJvcmRlckltYWdlUHJv
cGVydHlWYWx1ZSgpIGNvbnN0CitTdHJpbmcgU3R5bGVQcm9wZXJ0aWVzOjpib3JkZXJJbWFnZVBy
b3BlcnR5VmFsdWUoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eUlEKSBjb25zdAogewogICAgIGNvbnN0
IFN0eWxlUHJvcGVydHlTaG9ydGhhbmQmIHNob3J0aGFuZCA9IGJvcmRlckltYWdlU2hvcnRoYW5k
KCk7CiAgICAgU3RyaW5nQnVpbGRlciByZXN1bHQ7CkBAIC05NDgsNiArOTQ5LDI5IEBAIFN0cmlu
ZyBTdHlsZVByb3BlcnRpZXM6OmJvcmRlckltYWdlUHJvcGVydHlWYWx1ZSgpIGNvbnN0CiAgICAg
ICAgIGlmICghY29tbW9uV2lkZVZhbHVlVGV4dC5pc051bGwoKSkKICAgICAgICAgICAgIHJldHVy
biBTdHJpbmcoKTsKIAorICAgICAgICAvLyAtd2Via2l0LWJvcmRlci1pbWFnZSBoYXMgYSBsZWdh
Y3kgYmVoYXZpb3IgdGhhdCBtYWtlcyBmaXhlZCBib3JkZXIgc2xpY2VzIGFsc28gc2V0IHRoZSBi
b3JkZXIgd2lkdGhzLgorICAgICAgICAvLyBTbyBpZiB0aGV5IGFyZSBmaXhlZCBidXQgdGhlIGJv
cmRlciB3aWR0aHMgZG9uJ3QgbWF0Y2gsIC13ZWJraXQtYm9yZGVyLWltYWdlIGNhbid0IHJlcHJl
c2VudCB0aGUgY3VycmVudCBzdGF0ZS4KKyAgICAgICAgaWYgKHByb3BlcnR5SUQgPT0gQ1NTUHJv
cGVydHlXZWJraXRCb3JkZXJJbWFnZSAmJiBsb25naGFuZCA9PSBDU1NQcm9wZXJ0eUJvcmRlcklt
YWdlV2lkdGggJiYgaXM8Q1NTUHJpbWl0aXZlVmFsdWU+KCp2YWx1ZSkpIHsKKyAgICAgICAgICAg
IGlmIChRdWFkKiBxdWFkID0gZG93bmNhc3Q8Q1NTUHJpbWl0aXZlVmFsdWU+KCp2YWx1ZSkucXVh
ZFZhbHVlKCkpIHsKKyAgICAgICAgICAgICAgICBhdXRvIGlzTWlzbWF0Y2hpbmdMZW5ndGggPSBb
Jl0oQ1NTUHJvcGVydHlJRCBtYXRjaGluZ0lELCBSZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+IHZh
bHVlKSB7CisgICAgICAgICAgICAgICAgICAgIGlmICghdmFsdWUgfHwgIXZhbHVlLT5pc0xlbmd0
aCgpKQorICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICAgICAg
ICAgICAgICBhdXRvIG1hdGNoaW5nVmFsdWUgPSBnZXRQcm9wZXJ0eUNTU1ZhbHVlKG1hdGNoaW5n
SUQpOworICAgICAgICAgICAgICAgICAgICBpZiAobWF0Y2hpbmdWYWx1ZSA9PSB2YWx1ZSkKKyAg
ICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAgICAgICAgICAgICAgICAg
cmV0dXJuICFtYXRjaGluZ1ZhbHVlIHx8ICptYXRjaGluZ1ZhbHVlICE9ICp2YWx1ZSB8fCBwcm9w
ZXJ0eUlzSW1wb3J0YW50KG1hdGNoaW5nSUQpICE9IGN1cnJlbnRQcm9wZXJ0eUlzSW1wb3J0YW50
OworICAgICAgICAgICAgICAgIH07CisgICAgICAgICAgICAgICAgaWYgKGlzTWlzbWF0Y2hpbmdM
ZW5ndGgoQ1NTUHJvcGVydHlCb3JkZXJUb3BXaWR0aCwgcXVhZC0+dG9wKCkpKQorICAgICAgICAg
ICAgICAgICAgICByZXR1cm4gU3RyaW5nKCk7CisgICAgICAgICAgICAgICAgaWYgKGlzTWlzbWF0
Y2hpbmdMZW5ndGgoQ1NTUHJvcGVydHlCb3JkZXJSaWdodFdpZHRoLCBxdWFkLT5yaWdodCgpKSkK
KyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFN0cmluZygpOworICAgICAgICAgICAgICAgIGlm
IChpc01pc21hdGNoaW5nTGVuZ3RoKENTU1Byb3BlcnR5Qm9yZGVyQm90dG9tV2lkdGgsIHF1YWQt
PmJvdHRvbSgpKSkKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFN0cmluZygpOworICAgICAg
ICAgICAgICAgIGlmIChpc01pc21hdGNoaW5nTGVuZ3RoKENTU1Byb3BlcnR5Qm9yZGVyTGVmdFdp
ZHRoLCBxdWFkLT5sZWZ0KCkpKQorICAgICAgICAgICAgICAgICAgICByZXR1cm4gU3RyaW5nKCk7
CisgICAgICAgICAgICB9CisgICAgICAgIH0KKwogICAgICAgICAvLyBBcHBlbmQgc2VwYXJhdG9y
IGFuZCB0ZXh0LgogICAgICAgICBpZiAobG9uZ2hhbmQgPT0gQ1NTUHJvcGVydHlCb3JkZXJJbWFn
ZVdpZHRoKQogICAgICAgICAgICAgc2VwYXJhdG9yID0gIiAvICI7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvU3R5bGVQcm9wZXJ0aWVzLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5
bGVQcm9wZXJ0aWVzLmgKaW5kZXggZGQzOTBkNTkyMmRjN2JkM2NmMGI4ZTI2Y2RhYTMyZmZhMTZm
ZWZkYy4uZGE1Y2Y2MTNiZTFmMDJkNzQwYmIwYjZiMmVlMDljMzQ3YjYxY2MyNSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUHJvcGVydGllcy5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2Nzcy9TdHlsZVByb3BlcnRpZXMuaApAQCAtMTY1LDcgKzE2NSw3IEBAIHByaXZhdGU6CiAg
ICAgU3RyaW5nIGdldFNob3J0aGFuZFZhbHVlKGNvbnN0IFN0eWxlUHJvcGVydHlTaG9ydGhhbmQm
LCBjb25zdCBjaGFyKiBzZXBhcmF0b3IgPSAiICIpIGNvbnN0OwogICAgIFN0cmluZyBnZXRDb21t
b25WYWx1ZShjb25zdCBTdHlsZVByb3BlcnR5U2hvcnRoYW5kJikgY29uc3Q7CiAgICAgU3RyaW5n
IGdldEFsaWdubWVudFNob3J0aGFuZFZhbHVlKGNvbnN0IFN0eWxlUHJvcGVydHlTaG9ydGhhbmQm
KSBjb25zdDsKLSAgICBTdHJpbmcgYm9yZGVySW1hZ2VQcm9wZXJ0eVZhbHVlKCkgY29uc3Q7Cisg
ICAgU3RyaW5nIGJvcmRlckltYWdlUHJvcGVydHlWYWx1ZShDU1NQcm9wZXJ0eUlEKSBjb25zdDsK
ICAgICBTdHJpbmcgYm9yZGVyUHJvcGVydHlWYWx1ZShjb25zdCBTdHlsZVByb3BlcnR5U2hvcnRo
YW5kJiwgY29uc3QgU3R5bGVQcm9wZXJ0eVNob3J0aGFuZCYsIGNvbnN0IFN0eWxlUHJvcGVydHlT
aG9ydGhhbmQmKSBjb25zdDsKICAgICBTdHJpbmcgcGFnZUJyZWFrUHJvcGVydHlWYWx1ZShjb25z
dCBTdHlsZVByb3BlcnR5U2hvcnRoYW5kJikgY29uc3Q7CiAgICAgU3RyaW5nIGdldExheWVyZWRT
aG9ydGhhbmRWYWx1ZShjb25zdCBTdHlsZVByb3BlcnR5U2hvcnRoYW5kJikgY29uc3Q7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VyLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXIuY3BwCmluZGV4IGM1
ZjM0NDE2NWY0NjE2MmZmOGVkMTEwM2E4MGI4OGFlMTkwNjIzN2YuLjBhYWMxNTI1MGNjMmI2NDll
M2E0ZGJlZmYyM2RmOWMwNzgzYzVmMTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9w
YXJzZXIvQ1NTUHJvcGVydHlQYXJzZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9wYXJz
ZXIvQ1NTUHJvcGVydHlQYXJzZXIuY3BwCkBAIC00NjIxLDcgKzQ2MjEsNiBAQCBSZWZQdHI8Q1NT
VmFsdWU+IENTU1Byb3BlcnR5UGFyc2VyOjpwYXJzZVNpbmdsZVZhbHVlKENTU1Byb3BlcnR5SUQg
cHJvcGVydHksIENTUwogICAgIGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJJbWFnZVdpZHRoOgogICAg
IGNhc2UgQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2VXaWR0aDoKICAgICAgICAgcmV0dXJu
IGNvbnN1bWVCb3JkZXJJbWFnZVdpZHRoKG1fcmFuZ2UpOwotICAgIGNhc2UgQ1NTUHJvcGVydHlX
ZWJraXRCb3JkZXJJbWFnZToKICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0TWFza0JveEltYWdl
OgogICAgICAgICByZXR1cm4gY29uc3VtZVdlYmtpdEJvcmRlckltYWdlKHByb3BlcnR5LCBtX3Jh
bmdlLCBtX2NvbnRleHQpOwogICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRCb3hSZWZsZWN0OgpA
QCAtNTU0OSwxOCArNTU0OCwzNSBAQCBib29sIENTU1Byb3BlcnR5UGFyc2VyOjpjb25zdW1lQm9y
ZGVySW1hZ2UoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eSwgYm9vbCBpbXBvcnRhbgogICAgICAgICBh
dXRvJiB2YWx1ZVBvb2wgPSBDU1NWYWx1ZVBvb2w6OnNpbmdsZXRvbigpOwogICAgICAgICBzd2l0
Y2ggKHByb3BlcnR5KSB7CiAgICAgICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1h
Z2U6Ci0gICAgICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNpdERlZmF1bHQoQ1NTUHJvcGVy
dHlXZWJraXRNYXNrQm94SW1hZ2VTb3VyY2UsIENTU1Byb3BlcnR5V2Via2l0TWFza0JveEltYWdl
LCBXVEZNb3ZlKHNvdXJjZSksIHZhbHVlUG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgp
LCBpbXBvcnRhbnQpOwotICAgICAgICAgICAgYWRkUHJvcGVydHlXaXRoSW1wbGljaXREZWZhdWx0
KENTU1Byb3BlcnR5V2Via2l0TWFza0JveEltYWdlU2xpY2UsIENTU1Byb3BlcnR5V2Via2l0TWFz
a0JveEltYWdlLCBXVEZNb3ZlKHNsaWNlKSwgdmFsdWVQb29sLmNyZWF0ZUltcGxpY2l0SW5pdGlh
bFZhbHVlKCksIGltcG9ydGFudCk7Ci0gICAgICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNp
dERlZmF1bHQoQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2VXaWR0aCwgQ1NTUHJvcGVydHlX
ZWJraXRNYXNrQm94SW1hZ2UsIFdURk1vdmUod2lkdGgpLCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGlj
aXRJbml0aWFsVmFsdWUoKSwgaW1wb3J0YW50KTsKLSAgICAgICAgICAgIGFkZFByb3BlcnR5V2l0
aEltcGxpY2l0RGVmYXVsdChDU1NQcm9wZXJ0eVdlYmtpdE1hc2tCb3hJbWFnZU91dHNldCwgQ1NT
UHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2UsIFdURk1vdmUob3V0c2V0KSwgdmFsdWVQb29sLmNy
ZWF0ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCksIGltcG9ydGFudCk7Ci0gICAgICAgICAgICBhZGRQ
cm9wZXJ0eVdpdGhJbXBsaWNpdERlZmF1bHQoQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2VS
ZXBlYXQsIENTU1Byb3BlcnR5V2Via2l0TWFza0JveEltYWdlLCBXVEZNb3ZlKHJlcGVhdCksIHZh
bHVlUG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQpOworICAgICAg
ICAgICAgYWRkUHJvcGVydHlXaXRoSW1wbGljaXREZWZhdWx0KENTU1Byb3BlcnR5V2Via2l0TWFz
a0JveEltYWdlU291cmNlLCBwcm9wZXJ0eSwgV1RGTW92ZShzb3VyY2UpLCB2YWx1ZVBvb2wuY3Jl
YXRlSW1wbGljaXRJbml0aWFsVmFsdWUoKSwgaW1wb3J0YW50KTsKKyAgICAgICAgICAgIGFkZFBy
b3BlcnR5V2l0aEltcGxpY2l0RGVmYXVsdChDU1NQcm9wZXJ0eVdlYmtpdE1hc2tCb3hJbWFnZVNs
aWNlLCBwcm9wZXJ0eSwgV1RGTW92ZShzbGljZSksIHZhbHVlUG9vbC5jcmVhdGVJbXBsaWNpdElu
aXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQpOworICAgICAgICAgICAgYWRkUHJvcGVydHlXaXRoSW1w
bGljaXREZWZhdWx0KENTU1Byb3BlcnR5V2Via2l0TWFza0JveEltYWdlV2lkdGgsIHByb3BlcnR5
LCBXVEZNb3ZlKHdpZHRoKSwgdmFsdWVQb29sLmNyZWF0ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCks
IGltcG9ydGFudCk7CisgICAgICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNpdERlZmF1bHQo
Q1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2VPdXRzZXQsIHByb3BlcnR5LCBXVEZNb3ZlKG91
dHNldCksIHZhbHVlUG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQp
OworICAgICAgICAgICAgYWRkUHJvcGVydHlXaXRoSW1wbGljaXREZWZhdWx0KENTU1Byb3BlcnR5
V2Via2l0TWFza0JveEltYWdlUmVwZWF0LCBwcm9wZXJ0eSwgV1RGTW92ZShyZXBlYXQpLCB2YWx1
ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFsdWUoKSwgaW1wb3J0YW50KTsKICAgICAgICAg
ICAgIHJldHVybiB0cnVlOworICAgICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0Qm9yZGVySW1h
Z2U6CisgICAgICAgICAgICAvLyBXZSBoYXZlIHRvIHByZXNlcnZlIHRoZSBsZWdhY3kgYmVoYXZp
b3Igb2YgLXdlYmtpdC1ib3JkZXItaW1hZ2UgYW5kIG1ha2UgdGhlIGJvcmRlciBzbGljZXMKKyAg
ICAgICAgICAgIC8vIGFsc28gc2V0IHRoZSBib3JkZXIgd2lkdGhzLiBXZSBkb24ndCBuZWVkIHRv
IHdvcnJ5IGFib3V0IHBlcmNlbnRhZ2VzLCBzaW5jZSB3ZSBkb24ndCBldmVuIHN1cHBvcnQKKyAg
ICAgICAgICAgIC8vIHRob3NlIG9uIHJlYWwgYm9yZGVycyB5ZXQuCisgICAgICAgICAgICBpZiAo
d2lkdGggJiYgaXM8Q1NTUHJpbWl0aXZlVmFsdWU+KCp3aWR0aCkpIHsKKyAgICAgICAgICAgICAg
ICBpZiAoUXVhZCogcXVhZCA9IGRvd25jYXN0PENTU1ByaW1pdGl2ZVZhbHVlPigqd2lkdGgpLnF1
YWRWYWx1ZSgpKSB7CisgICAgICAgICAgICAgICAgICAgIGF1dG8gYWRkUHJvcGVydHlJZkxlbmd0
aCA9IFsmXShDU1NQcm9wZXJ0eUlEIGxvbmdoYW5kLCBSZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+
IHZhbHVlKSB7CisgICAgICAgICAgICAgICAgICAgICAgICBpZiAodmFsdWUgJiYgdmFsdWUtPmlz
TGVuZ3RoKCkpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkUHJvcGVydHkobG9uZ2hh
bmQsIENTU1Byb3BlcnR5V2Via2l0Qm9yZGVySW1hZ2UsIHZhbHVlLnJlbGVhc2VOb25OdWxsKCks
IGltcG9ydGFudCk7CisgICAgICAgICAgICAgICAgICAgIH07CisgICAgICAgICAgICAgICAgICAg
IGFkZFByb3BlcnR5SWZMZW5ndGgoQ1NTUHJvcGVydHlCb3JkZXJUb3BXaWR0aCwgcXVhZC0+dG9w
KCkpOworICAgICAgICAgICAgICAgICAgICBhZGRQcm9wZXJ0eUlmTGVuZ3RoKENTU1Byb3BlcnR5
Qm9yZGVyUmlnaHRXaWR0aCwgcXVhZC0+cmlnaHQoKSk7CisgICAgICAgICAgICAgICAgICAgIGFk
ZFByb3BlcnR5SWZMZW5ndGgoQ1NTUHJvcGVydHlCb3JkZXJCb3R0b21XaWR0aCwgcXVhZC0+Ym90
dG9tKCkpOworICAgICAgICAgICAgICAgICAgICBhZGRQcm9wZXJ0eUlmTGVuZ3RoKENTU1Byb3Bl
cnR5Qm9yZGVyTGVmdFdpZHRoLCBxdWFkLT5sZWZ0KCkpOworICAgICAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgIH0KKyAgICAgICAgICAgIEZBTExUSFJPVUdIOwogICAgICAgICBjYXNlIENTU1By
b3BlcnR5Qm9yZGVySW1hZ2U6Ci0gICAgICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNpdERl
ZmF1bHQoQ1NTUHJvcGVydHlCb3JkZXJJbWFnZVNvdXJjZSwgQ1NTUHJvcGVydHlCb3JkZXJJbWFn
ZSwgV1RGTW92ZShzb3VyY2UpLCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFsdWUo
KSwgaW1wb3J0YW50KTsKLSAgICAgICAgICAgIGFkZFByb3BlcnR5V2l0aEltcGxpY2l0RGVmYXVs
dChDU1NQcm9wZXJ0eUJvcmRlckltYWdlU2xpY2UsIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2UsIFdU
Rk1vdmUoc2xpY2UpLCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFsdWUoKSwgaW1w
b3J0YW50KTsKLSAgICAgICAgICAgIGFkZFByb3BlcnR5V2l0aEltcGxpY2l0RGVmYXVsdChDU1NQ
cm9wZXJ0eUJvcmRlckltYWdlV2lkdGgsIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2UsIFdURk1vdmUo
d2lkdGgpLCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFsdWUoKSwgaW1wb3J0YW50
KTsKLSAgICAgICAgICAgIGFkZFByb3BlcnR5V2l0aEltcGxpY2l0RGVmYXVsdChDU1NQcm9wZXJ0
eUJvcmRlckltYWdlT3V0c2V0LCBDU1NQcm9wZXJ0eUJvcmRlckltYWdlLCBXVEZNb3ZlKG91dHNl
dCksIHZhbHVlUG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQpOwot
ICAgICAgICAgICAgYWRkUHJvcGVydHlXaXRoSW1wbGljaXREZWZhdWx0KENTU1Byb3BlcnR5Qm9y
ZGVySW1hZ2VSZXBlYXQsIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2UsIFdURk1vdmUocmVwZWF0KSwg
dmFsdWVQb29sLmNyZWF0ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCksIGltcG9ydGFudCk7CisgICAg
ICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNpdERlZmF1bHQoQ1NTUHJvcGVydHlCb3JkZXJJ
bWFnZVNvdXJjZSwgcHJvcGVydHksIFdURk1vdmUoc291cmNlKSwgdmFsdWVQb29sLmNyZWF0ZUlt
cGxpY2l0SW5pdGlhbFZhbHVlKCksIGltcG9ydGFudCk7CisgICAgICAgICAgICBhZGRQcm9wZXJ0
eVdpdGhJbXBsaWNpdERlZmF1bHQoQ1NTUHJvcGVydHlCb3JkZXJJbWFnZVNsaWNlLCBwcm9wZXJ0
eSwgV1RGTW92ZShzbGljZSksIHZhbHVlUG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgp
LCBpbXBvcnRhbnQpOworICAgICAgICAgICAgYWRkUHJvcGVydHlXaXRoSW1wbGljaXREZWZhdWx0
KENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VXaWR0aCwgcHJvcGVydHksIFdURk1vdmUod2lkdGgpLCB2
YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFsdWUoKSwgaW1wb3J0YW50KTsKKyAgICAg
ICAgICAgIGFkZFByb3BlcnR5V2l0aEltcGxpY2l0RGVmYXVsdChDU1NQcm9wZXJ0eUJvcmRlcklt
YWdlT3V0c2V0LCBwcm9wZXJ0eSwgV1RGTW92ZShvdXRzZXQpLCB2YWx1ZVBvb2wuY3JlYXRlSW1w
bGljaXRJbml0aWFsVmFsdWUoKSwgaW1wb3J0YW50KTsKKyAgICAgICAgICAgIGFkZFByb3BlcnR5
V2l0aEltcGxpY2l0RGVmYXVsdChDU1NQcm9wZXJ0eUJvcmRlckltYWdlUmVwZWF0LCBwcm9wZXJ0
eSwgV1RGTW92ZShyZXBlYXQpLCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFsdWUo
KSwgaW1wb3J0YW50KTsKICAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgICBkZWZhdWx0
OgogICAgICAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CkBAIC02NDQyLDYgKzY0NTgsNyBA
QCBib29sIENTU1Byb3BlcnR5UGFyc2VyOjpwYXJzZVNob3J0aGFuZChDU1NQcm9wZXJ0eUlEIHBy
b3BlcnR5LCBib29sIGltcG9ydGFudCkKICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgfQogICAg
IGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJJbWFnZToKKyAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0
Qm9yZGVySW1hZ2U6CiAgICAgICAgIHJldHVybiBjb25zdW1lQm9yZGVySW1hZ2UocHJvcGVydHks
IGltcG9ydGFudCk7CiAgICAgY2FzZSBDU1NQcm9wZXJ0eVBhZ2VCcmVha0FmdGVyOgogICAgIGNh
c2UgQ1NTUHJvcGVydHlQYWdlQnJlYWtCZWZvcmU6CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9zdHlsZS9Qcm9wZXJ0eUNhc2NhZGUuY3BwIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvUHJvcGVy
dHlDYXNjYWRlLmNwcAppbmRleCAyNGQ4MGIxNzFmZWNiZjU4MGFmNmU5NzVhNmQ5ODE1NGVlZGMx
ZDg2Li4xOTRjZGI0NTk2ZGM1NTcyNmVkNzlhNzZmOGIxNGFhYzFmMzM1YTk2IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9Qcm9wZXJ0eUNhc2NhZGUuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3N0eWxlL1Byb3BlcnR5Q2FzY2FkZS5jcHAKQEAgLTQ3LDEzICs0Nyw2IEBAIHN0YXRp
YyBpbmxpbmUgYm9vbCBzaG91bGRBcHBseVByb3BlcnR5SW5QYXJzZU9yZGVyKENTU1Byb3BlcnR5
SUQgcHJvcGVydHlJRCkKICAgICBjYXNlIENTU1Byb3BlcnR5QmFja2dyb3VuZE9yaWdpbjoKICAg
ICBjYXNlIENTU1Byb3BlcnR5V2Via2l0QmFja2dyb3VuZFNpemU6CiAgICAgY2FzZSBDU1NQcm9w
ZXJ0eUJhY2tncm91bmRTaXplOgotICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJJbWFn
ZToKLSAgICBjYXNlIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2U6Ci0gICAgY2FzZSBDU1NQcm9wZXJ0
eUJvcmRlckltYWdlU2xpY2U6Ci0gICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlckltYWdlU291cmNl
OgotICAgIGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJJbWFnZU91dHNldDoKLSAgICBjYXNlIENTU1By
b3BlcnR5Qm9yZGVySW1hZ2VSZXBlYXQ6Ci0gICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlckltYWdl
V2lkdGg6CiAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEJveFNoYWRvdzoKICAgICBjYXNlIENT
U1Byb3BlcnR5Qm94U2hhZG93OgogICAgICAgICByZXR1cm4gdHJ1ZTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlQnVpbGRlckNvbnZlcnRlci5oIGIvU291cmNlL1dlYkNv
cmUvc3R5bGUvU3R5bGVCdWlsZGVyQ29udmVydGVyLmgKaW5kZXggYWNiYmY1ZjlhN2UxYzcyZDlj
Y2FiODUwMjNkN2VmZDRkMjE3YjJhMi4uMzRhYTM4NWFlMDQ5NzFiMzIwMDZlMTA2MjRiNmRkNjQ0
ZTMwM2RiOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVCdWlsZGVyQ29u
dmVydGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVCdWlsZGVyQ29udmVydGVy
LmgKQEAgLTg1LDcgKzg1LDYgQEAgcHVibGljOgogICAgIHRlbXBsYXRlPHR5cGVuYW1lIFQ+IHN0
YXRpYyBUIGNvbnZlcnROdW1iZXIoQnVpbGRlclN0YXRlJiwgY29uc3QgQ1NTVmFsdWUmKTsKICAg
ICB0ZW1wbGF0ZTx0eXBlbmFtZSBUPiBzdGF0aWMgVCBjb252ZXJ0TnVtYmVyT3JBdXRvKEJ1aWxk
ZXJTdGF0ZSYsIGNvbnN0IENTU1ZhbHVlJik7CiAgICAgc3RhdGljIHNob3J0IGNvbnZlcnRXZWJr
aXRIeXBoZW5hdGVMaW1pdExpbmVzKEJ1aWxkZXJTdGF0ZSYsIGNvbnN0IENTU1ZhbHVlJik7Ci0g
ICAgdGVtcGxhdGU8Q1NTUHJvcGVydHlJRD4gc3RhdGljIE5pbmVQaWVjZUltYWdlIGNvbnZlcnRC
b3JkZXJJbWFnZShCdWlsZGVyU3RhdGUmLCBDU1NWYWx1ZSYpOwogICAgIHRlbXBsYXRlPENTU1By
b3BlcnR5SUQ+IHN0YXRpYyBOaW5lUGllY2VJbWFnZSBjb252ZXJ0Qm9yZGVyTWFzayhCdWlsZGVy
U3RhdGUmLCBDU1NWYWx1ZSYpOwogICAgIHRlbXBsYXRlPENTU1Byb3BlcnR5SUQ+IHN0YXRpYyBS
ZWZQdHI8U3R5bGVJbWFnZT4gY29udmVydFN0eWxlSW1hZ2UoQnVpbGRlclN0YXRlJiwgQ1NTVmFs
dWUmKTsKICAgICBzdGF0aWMgSW1hZ2VPcmllbnRhdGlvbiBjb252ZXJ0SW1hZ2VPcmllbnRhdGlv
bihCdWlsZGVyU3RhdGUmLCBjb25zdCBDU1NWYWx1ZSYpOwpAQCAtNDY0LDE5ICs0NjMsMTEgQEAg
aW5saW5lIHNob3J0IEJ1aWxkZXJDb252ZXJ0ZXI6OmNvbnZlcnRXZWJraXRIeXBoZW5hdGVMaW1p
dExpbmVzKEJ1aWxkZXJTdGF0ZSYsIGMKICAgICByZXR1cm4gcHJpbWl0aXZlVmFsdWUudmFsdWU8
c2hvcnQ+KENTU1VuaXRUeXBlOjpDU1NfTlVNQkVSKTsKIH0KIAotdGVtcGxhdGU8Q1NTUHJvcGVy
dHlJRCBwcm9wZXJ0eT4KLWlubGluZSBOaW5lUGllY2VJbWFnZSBCdWlsZGVyQ29udmVydGVyOjpj
b252ZXJ0Qm9yZGVySW1hZ2UoQnVpbGRlclN0YXRlJiBidWlsZGVyU3RhdGUsIENTU1ZhbHVlJiB2
YWx1ZSkKLXsKLSAgICBOaW5lUGllY2VJbWFnZSBpbWFnZTsKLSAgICBidWlsZGVyU3RhdGUuc3R5
bGVNYXAoKS5tYXBOaW5lUGllY2VJbWFnZShwcm9wZXJ0eSwgJnZhbHVlLCBpbWFnZSk7Ci0gICAg
cmV0dXJuIGltYWdlOwotfQotCiB0ZW1wbGF0ZTxDU1NQcm9wZXJ0eUlEIHByb3BlcnR5PgogaW5s
aW5lIE5pbmVQaWVjZUltYWdlIEJ1aWxkZXJDb252ZXJ0ZXI6OmNvbnZlcnRCb3JkZXJNYXNrKEJ1
aWxkZXJTdGF0ZSYgYnVpbGRlclN0YXRlLCBDU1NWYWx1ZSYgdmFsdWUpCiB7CiAgICAgTmluZVBp
ZWNlSW1hZ2UgaW1hZ2UoTmluZVBpZWNlSW1hZ2U6OlR5cGU6Ok1hc2spOwotICAgIGJ1aWxkZXJT
dGF0ZS5zdHlsZU1hcCgpLm1hcE5pbmVQaWVjZUltYWdlKHByb3BlcnR5LCAmdmFsdWUsIGltYWdl
KTsKKyAgICBidWlsZGVyU3RhdGUuc3R5bGVNYXAoKS5tYXBOaW5lUGllY2VJbWFnZSgmdmFsdWUs
IGltYWdlKTsKICAgICByZXR1cm4gaW1hZ2U7CiB9CiAKQEAgLTgwOSw3ICs4MDAsNyBAQCBpbmxp
bmUgUmVmUHRyPFN0eWxlUmVmbGVjdGlvbj4gQnVpbGRlckNvbnZlcnRlcjo6Y29udmVydFJlZmxl
Y3Rpb24oQnVpbGRlclN0YXRlJgogICAgIHJlZmxlY3Rpb24tPnNldE9mZnNldChyZWZsZWN0VmFs
dWUub2Zmc2V0KCkuY29udmVydFRvTGVuZ3RoPEZpeGVkSW50ZWdlckNvbnZlcnNpb24gfCBQZXJj
ZW50Q29udmVyc2lvbiB8IENhbGN1bGF0ZWRDb252ZXJzaW9uPihidWlsZGVyU3RhdGUuY3NzVG9M
ZW5ndGhDb252ZXJzaW9uRGF0YSgpKSk7CiAKICAgICBOaW5lUGllY2VJbWFnZSBtYXNrKE5pbmVQ
aWVjZUltYWdlOjpUeXBlOjpNYXNrKTsKLSAgICBidWlsZGVyU3RhdGUuc3R5bGVNYXAoKS5tYXBO
aW5lUGllY2VJbWFnZShDU1NQcm9wZXJ0eVdlYmtpdEJveFJlZmxlY3QsIHJlZmxlY3RWYWx1ZS5t
YXNrKCksIG1hc2spOworICAgIGJ1aWxkZXJTdGF0ZS5zdHlsZU1hcCgpLm1hcE5pbmVQaWVjZUlt
YWdlKHJlZmxlY3RWYWx1ZS5tYXNrKCksIG1hc2spOwogICAgIHJlZmxlY3Rpb24tPnNldE1hc2so
bWFzayk7CiAKICAgICByZXR1cm4gcmVmbGVjdGlvbjsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAwZmZlZTI0MzFjM2ZjNDJm
NjNmZDU1OGE0MDNkMGU3ZDdhNjViODg4Li40MTJjOTUxNjVmYmU5ZWE4N2MyZmRiODdhMGVmYmFm
YWI1ODljZDFiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjkgQEAKKzIwMjItMDMtMjAgIE9yaW9sIEJydWZh
dSAgPG9icnVmYXVAaWdhbGlhLmNvbT4KKworICAgICAgICBbY3NzXSBUdXJuIC13ZWJraXQtYm9y
ZGVyLWltYWdlIGludG8gYSBzaG9ydGhhbmQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIzNzQ4NworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIFVwZGF0ZSB0ZXN0cyB0byB0YWtlIGludG8gYWNjb3VudCB0aGF0
ICctd2Via2l0LWJvcmRlci1pbWFnZScgaXMgYSBzaG9ydGhhbmQuCisKKyAgICAgICAgKiBmYXN0
L2Nzcy9ib3JkZXItaW1hZ2Utc3R5bGUtbGVuZ3RoLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBm
YXN0L2Nzcy9ib3JkZXItaW1hZ2Utc3R5bGUtbGVuZ3RoLmh0bWw6CisgICAgICAgICogZmFzdC9j
c3MvZ2V0Q29tcHV0ZWRTdHlsZS9jb21wdXRlZC1zdHlsZS1leHBlY3RlZC50eHQ6CisgICAgICAg
ICogZmFzdC9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS9jb21wdXRlZC1zdHlsZS13aXRob3V0LXJlbmRl
cmVyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBmYXN0L2Nzcy9nZXRDb21wdXRlZFN0eWxlL3Jl
c291cmNlcy9wcm9wZXJ0eS1uYW1lcy5qczoKKyAgICAgICAgKiBmYXN0L2Nzcy9pbWFnZS1zZXQt
cGFyc2luZy1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9jc3MvaW1hZ2Utc2V0LXBhcnNp
bmcuaHRtbDoKKyAgICAgICAgKiBmYXN0L2Nzcy91cmktdG9rZW4tcGFyc2luZy1leHBlY3RlZC50
eHQ6CisgICAgICAgICogZmFzdC9jc3MvdXJpLXRva2VuLXBhcnNpbmcuaHRtbDoKKyAgICAgICAg
KiBwbGF0Zm9ybS9ndGsvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNh
c2NhZGUvYWxsLXByb3AtaW5pdGlhbC14bWwtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHBsYXRm
b3JtL2d0ay9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS9nZXRDb21w
dXRlZFN0eWxlLWRldGFjaGVkLXN1YnRyZWUtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHBsYXRm
b3JtL2lvcy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY2FzY2FkZS9h
bGwtcHJvcC1pbml0aWFsLXhtbC1leHBlY3RlZC50eHQ6CisgICAgICAgICogcGxhdGZvcm0vaW9z
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dldENvbXB1dGVkU3R5
bGUtZGV0YWNoZWQtc3VidHJlZS1leHBlY3RlZC50eHQ6CisgICAgICAgICogcGxhdGZvcm0vd3Bl
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jYXNjYWRlL2FsbC1wcm9w
LWluaXRpYWwteG1sLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBwbGF0Zm9ybS93cGUvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nzb20vZ2V0Q29tcHV0ZWRTdHlsZS1kZXRh
Y2hlZC1zdWJ0cmVlLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBzdmcvY3NzL2dldENvbXB1dGVk
U3R5bGUtYmFzaWMtZXhwZWN0ZWQudHh0OgorCiAyMDIyLTAzLTE5ICBUeWxlciBXaWxjb2NrICA8
dHlsZXJfd0BhcHBsZS5jb20+CiAKICAgICAgICAgUmViYXNlbGluZSBhY2Nlc3NpYmlsaXR5L3Jv
bGVzLWV4cG9zZWQuaHRtbCBmb3IgTWFjIFdLMSBhZnRlciBodHRwczovL2NvbW1pdHMud2Via2l0
Lm9yZy9yMjkxNDAxCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdl
TG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwppbmRleCA4ZWZjM2E3Mzc1
NjQ1ODQzNmVkMDc2ZWIxMjNlYWZkODA1YTg0MGQ5Li42OWJkNjgxNThjNTdiOTQ3YmU5MTUzYjg2
ZjY4ZGRhMmNhYmJlYzVkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hh
bmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSwxNSBAQAorMjAyMi0wMy0yMCAgT3Jpb2wgQnJ1ZmF1ICA8b2JydWZhdUBpZ2FsaWEuY29tPgor
CisgICAgICAgIFtjc3NdIFR1cm4gLXdlYmtpdC1ib3JkZXItaW1hZ2UgaW50byBhIHNob3J0aGFu
ZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM3NDg3
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVXBkYXRl
IHRlc3RzIHRvIHRha2UgaW50byBhY2NvdW50IHRoYXQgJy13ZWJraXQtYm9yZGVyLWltYWdlJyBp
cyBhIHNob3J0aGFuZC4KKworICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNh
c2NhZGUvYWxsLXByb3AtaW5pdGlhbC14bWwtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1w
bGF0Zm9ybS10ZXN0cy9jc3MvY3Nzb20vZ2V0Q29tcHV0ZWRTdHlsZS1kZXRhY2hlZC1zdWJ0cmVl
LWV4cGVjdGVkLnR4dDoKKwogMjAyMi0wMy0yMCAgT3Jpb2wgQnJ1ZmF1ICA8b2JydWZhdUBpZ2Fs
aWEuY29tPgogCiAgICAgICAgIEZpeCBDU1MgY2FzY2FkZSByZWdhcmRpbmcgbG9naWNhbCBwcm9w
ZXJ0aWVzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9ib3JkZXItaW1hZ2Utc3R5
bGUtbGVuZ3RoLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL2JvcmRlci1pbWFn
ZS1zdHlsZS1sZW5ndGgtZXhwZWN0ZWQudHh0CmluZGV4IDYyNmViZmI0ZjIxZjAyNDk5MTVjZGM3
YjZmZDJhOTc1M2RiZTJhZmEuLjlkYzc2YTE2NTBmMTA3ZTg0YzI3N2EyMzRiZjJlYTQwYzQwNDQ5
ZDAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL2JvcmRlci1pbWFnZS1zdHlsZS1s
ZW5ndGgtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL2JvcmRlci1pbWFn
ZS1zdHlsZS1sZW5ndGgtZXhwZWN0ZWQudHh0CkBAIC01LDcgKzUsNyBAQCBPbiBzdWNjZXNzLCB5
b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVT
VCBDT01QTEVURQogCiBQQVNTIGUuc3R5bGUubGVuZ3RoIGlzIDUKIFBBU1MgZS5zdHlsZS5sZW5n
dGggaXMgMAotUEFTUyBlLnN0eWxlLmxlbmd0aCBpcyAxCitQQVNTIGUuc3R5bGUubGVuZ3RoIGlz
IDUKIFBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKIAogVEVTVCBDT01QTEVURQpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvYm9yZGVyLWltYWdlLXN0eWxlLWxlbmd0aC5o
dG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvYm9yZGVyLWltYWdlLXN0eWxlLWxlbmd0aC5odG1s
CmluZGV4IDRlNDM2OTMwNDIxMDc3ZjAwOGQ3Yzc4MTM4Yjc5Yjc2YzI3ODBjOGUuLmEyNzlmZGVj
N2M4ZjIyODYzNzI5MTUzZThiNzZjNjA1M2FiYmI2OTAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2Zhc3QvY3NzL2JvcmRlci1pbWFnZS1zdHlsZS1sZW5ndGguaHRtbAorKysgYi9MYXlvdXRUZXN0
cy9mYXN0L2Nzcy9ib3JkZXItaW1hZ2Utc3R5bGUtbGVuZ3RoLmh0bWwKQEAgLTIwLDcgKzIwLDcg
QEAgc2hvdWxkQmUoImUuc3R5bGUubGVuZ3RoIiwgIjUiKTsKIGUuc3R5bGUuYm9yZGVySW1hZ2Ug
PSAiIjsKIHNob3VsZEJlKCJlLnN0eWxlLmxlbmd0aCIsICIwIik7CiBlLnN0eWxlLndlYmtpdEJv
cmRlckltYWdlID0gInVybChkdW1teTovL3Rlc3QucG5nKSAwIDcgMCAxMyAvIDAgNyAwIDEzIHN0
cmV0Y2ggc3RyZXRjaCI7Ci1zaG91bGRCZSgiZS5zdHlsZS5sZW5ndGgiLCAiMSIpOworc2hvdWxk
QmUoImUuc3R5bGUubGVuZ3RoIiwgIjUiKTsKIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQodGVz
dENvbnRhaW5lcik7CiAKIDwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9j
c3MvZ2V0Q29tcHV0ZWRTdHlsZS9jb21wdXRlZC1zdHlsZS1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9mYXN0L2Nzcy9nZXRDb21wdXRlZFN0eWxlL2NvbXB1dGVkLXN0eWxlLWV4cGVjdGVkLnR4
dAppbmRleCA2ZThlYzNkODVjZDFlYzkwNzljNGMwMTFlMTkzYmM2YjRkMTc2MzRlLi44NDY4ZDE2
M2UxNGI3MTk1YmJiNmZkYmYzMWRhMDU3MTAxMWM5ZTdjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9mYXN0L2Nzcy9nZXRDb21wdXRlZFN0eWxlL2NvbXB1dGVkLXN0eWxlLWV4cGVjdGVkLnR4dAor
KysgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9nZXRDb21wdXRlZFN0eWxlL2NvbXB1dGVkLXN0eWxl
LWV4cGVjdGVkLnR4dApAQCAtMjEwLDcgKzIxMCw2IEBAIHpvb206IDE7CiAtd2Via2l0LWJhY2tn
cm91bmQtb3JpZ2luOiBwYWRkaW5nLWJveDsKIC13ZWJraXQtYmFja2dyb3VuZC1zaXplOiBhdXRv
OwogLXdlYmtpdC1ib3JkZXItaG9yaXpvbnRhbC1zcGFjaW5nOiAwcHg7Ci0td2Via2l0LWJvcmRl
ci1pbWFnZTogbm9uZTsKIC13ZWJraXQtYm9yZGVyLXZlcnRpY2FsLXNwYWNpbmc6IDBweDsKIC13
ZWJraXQtYm94LWFsaWduOiBzdHJldGNoOwogLXdlYmtpdC1ib3gtZGVjb3JhdGlvbi1icmVhazog
c2xpY2U7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9nZXRDb21wdXRlZFN0eWxl
L2NvbXB1dGVkLXN0eWxlLXdpdGhvdXQtcmVuZGVyZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvZmFzdC9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS9jb21wdXRlZC1zdHlsZS13aXRob3V0LXJlbmRl
cmVyLWV4cGVjdGVkLnR4dAppbmRleCAwOWVlMDUyZThlYTBkODQ0OGY3NjA4NjYzYmNmNjhiYjVh
MDU1OTZlLi5jN2YxYzk3MjIyYmIwMzFiMWMxY2Y1MWM3M2ZjODFhMzk1NmRjZTdlIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9nZXRDb21wdXRlZFN0eWxlL2NvbXB1dGVkLXN0eWxl
LXdpdGhvdXQtcmVuZGVyZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3Nz
L2dldENvbXB1dGVkU3R5bGUvY29tcHV0ZWQtc3R5bGUtd2l0aG91dC1yZW5kZXJlci1leHBlY3Rl
ZC50eHQKQEAgLTIwOSw3ICsyMDksNiBAQCB6b29tOiAxCiAtd2Via2l0LWJhY2tncm91bmQtb3Jp
Z2luOiBwYWRkaW5nLWJveAogLXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6IGF1dG8KIC13ZWJraXQt
Ym9yZGVyLWhvcml6b250YWwtc3BhY2luZzogMHB4Ci0td2Via2l0LWJvcmRlci1pbWFnZTogbm9u
ZQogLXdlYmtpdC1ib3JkZXItdmVydGljYWwtc3BhY2luZzogMHB4CiAtd2Via2l0LWJveC1hbGln
bjogc3RyZXRjaAogLXdlYmtpdC1ib3gtZGVjb3JhdGlvbi1icmVhazogc2xpY2UKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL2dldENvbXB1dGVkU3R5bGUvcmVzb3VyY2VzL3Byb3Bl
cnR5LW5hbWVzLmpzIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS9yZXNv
dXJjZXMvcHJvcGVydHktbmFtZXMuanMKaW5kZXggZWIzNGZkZTYxYzZjODNkNzczM2EzZDM2NWJi
YTE4MDFhOWFhNjA5NC4uZjFmZjhmNDA2YjZjOTY4YmU2MjU0YmNmZDdjZjQ4NzU3MmUzNTgzZiAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS9yZXNvdXJj
ZXMvcHJvcGVydHktbmFtZXMuanMKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvZ2V0Q29tcHV0
ZWRTdHlsZS9yZXNvdXJjZXMvcHJvcGVydHktbmFtZXMuanMKQEAgLTE3LDcgKzE3LDYgQEAgdmFy
IHByb3BlcnRpZXNUb1Rlc3QgPSB7CiAgICAgIi13ZWJraXQtYmFja2dyb3VuZC1vcmlnaW4iOiB0
cnVlLAogICAgICItd2Via2l0LWJhY2tncm91bmQtc2l6ZSI6IHRydWUsCiAgICAgIi13ZWJraXQt
Ym9yZGVyLWhvcml6b250YWwtc3BhY2luZyI6IHRydWUsCi0gICAgIi13ZWJraXQtYm9yZGVyLWlt
YWdlIjogdHJ1ZSwKICAgICAiLXdlYmtpdC1ib3JkZXItdmVydGljYWwtc3BhY2luZyI6IHRydWUs
CiAgICAgIi13ZWJraXQtYm94LWFsaWduIjogdHJ1ZSwKICAgICAiLXdlYmtpdC1ib3gtZGVjb3Jh
dGlvbi1icmVhayI6IHRydWUsCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9pbWFn
ZS1zZXQtcGFyc2luZy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9pbWFnZS1z
ZXQtcGFyc2luZy1leHBlY3RlZC50eHQKaW5kZXggMzBhYTYxOTU5Yzg1YWU4MjNkY2QxZjVlODgz
YTQ4NjY5ZDk0ODBmZC4uZDlhZDEwZmM0NWQzN2UzZGViZGZiZjk0NDBhNzA1ZDhjOTNjMTI0MSAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvaW1hZ2Utc2V0LXBhcnNpbmctZXhwZWN0
ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL2ltYWdlLXNldC1wYXJzaW5nLWV4cGVj
dGVkLnR4dApAQCAtODAsNyArODAsNyBAQCBQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMXgnCiBQ
QVNTIHN1YlJ1bGUgaXMgJ2InCiBQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMngnCiAKLVNpbmds
ZSB2YWx1ZSBmb3IgYm9yZGVyLWltYWdlIDogdXJsKCcjYScpIDF4CitTaW5nbGUgdmFsdWUgZm9y
IGJvcmRlci1pbWFnZS1zb3VyY2UgOiB1cmwoJyNhJykgMXgKIFBBU1MganNXcmFwcGVyQ2xhc3Mo
aW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFn
ZVNldFJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0JwogUEFTUyBqc1dyYXBwZXJDbGFz
cyhpbWFnZVNldFJ1bGUuY29uc3RydWN0b3IpIGlzICdGdW5jdGlvbicKQEAgLTg4LDcgKzg4LDcg
QEAgUEFTUyBpbWFnZVNldFJ1bGUubGVuZ3RoIGlzIDIKIFBBU1Mgc3ViUnVsZSBpcyAnYScKIFBB
U1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcxeCcKIAotTXVsdGlwbGUgdmFsdWVzIGZvciBib3JkZXIt
aW1hZ2UgOiB1cmwoJyNhJykgMXgsIHVybCgnI2InKSAyeAorTXVsdGlwbGUgdmFsdWVzIGZvciBi
b3JkZXItaW1hZ2Utc291cmNlIDogdXJsKCcjYScpIDF4LCB1cmwoJyNiJykgMngKIFBBU1MganNX
cmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwogUEFTUyBqc1dyYXBw
ZXJDbGFzcyhpbWFnZVNldFJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0JwogUEFTUyBq
c1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuY29uc3RydWN0b3IpIGlzICdGdW5jdGlvbicKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL2ltYWdlLXNldC1wYXJzaW5nLmh0bWwgYi9M
YXlvdXRUZXN0cy9mYXN0L2Nzcy9pbWFnZS1zZXQtcGFyc2luZy5odG1sCmluZGV4IGM3YjhmMjg5
NTAzYzdhMjYyMmRmNGNhMzk5ZTQzNTE2OWY1ODBkNTQuLjhiODE3NWNmNDkyZjA2NjA5ZjM4NDRi
NDY4NTdkNTNkMzZjMmI2MzEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL2ltYWdl
LXNldC1wYXJzaW5nLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvaW1hZ2Utc2V0LXBh
cnNpbmcuaHRtbApAQCAtMTA3LDEzICsxMDcsMTMgQEAgdGVzdEltYWdlU2V0UnVsZSgiTXVsdGlw
bGUgdmFsdWVzIGZvciBjb250ZW50IiwKICAgICAgICAgICAgICAgICAidXJsKCcjYScpIDF4LCB1
cmwoJyNiJykgMngiLCA0LAogICAgICAgICAgICAgICAgIFsiYSIsICIxeCIsICJiIiwgIjJ4Il0p
OwogCi10ZXN0SW1hZ2VTZXRSdWxlKCJTaW5nbGUgdmFsdWUgZm9yIGJvcmRlci1pbWFnZSIsCi0g
ICAgICAgICAgICAgICAgIi13ZWJraXQtYm9yZGVyLWltYWdlIiwKK3Rlc3RJbWFnZVNldFJ1bGUo
IlNpbmdsZSB2YWx1ZSBmb3IgYm9yZGVyLWltYWdlLXNvdXJjZSIsCisgICAgICAgICAgICAgICAg
ImJvcmRlci1pbWFnZS1zb3VyY2UiLAogICAgICAgICAgICAgICAgICJ1cmwoJyNhJykgMXgiLCAy
LAogICAgICAgICAgICAgICAgIFsiYSIsICIxeCJdKTsKIAotdGVzdEltYWdlU2V0UnVsZSgiTXVs
dGlwbGUgdmFsdWVzIGZvciBib3JkZXItaW1hZ2UiLAotICAgICAgICAgICAgICAgICItd2Via2l0
LWJvcmRlci1pbWFnZSIsCit0ZXN0SW1hZ2VTZXRSdWxlKCJNdWx0aXBsZSB2YWx1ZXMgZm9yIGJv
cmRlci1pbWFnZS1zb3VyY2UiLAorICAgICAgICAgICAgICAgICJib3JkZXItaW1hZ2Utc291cmNl
IiwKICAgICAgICAgICAgICAgICAidXJsKCcjYScpIDF4LCB1cmwoJyNiJykgMngiLCA0LAogICAg
ICAgICAgICAgICAgIFsiYSIsICIxeCIsICJiIiwgIjJ4Il0pOwogCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mYXN0L2Nzcy91cmktdG9rZW4tcGFyc2luZy1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9mYXN0L2Nzcy91cmktdG9rZW4tcGFyc2luZy1leHBlY3RlZC50eHQKaW5kZXggN2U2ZDYx
ZGJiZTYxOTdmMGJiNThhY2U2NTdkNGY0NjkwMWY1Mzg0ZS4uODc1YThhOTZlMGU1MzYzMjg0MTRj
YjdlMGY0NTE0MDM1OTM2MmM0MCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdXJp
LXRva2VuLXBhcnNpbmctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3Vy
aS10b2tlbi1wYXJzaW5nLWV4cGVjdGVkLnR4dApAQCAtMjIsNyArMjIsNyBAQCBSdWxlcyBmcm9t
IHRoZSBzdHlsZXNoZWV0OgogI3IgeyBsaXN0LXN0eWxlLWltYWdlOiB1cmwoInVybChyKSIpOyB9
CiAjcyB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCgidXJsKHMpIik7IH0KICN0IHsgbWFzay1pbWFn
ZTogdXJsKCJ1cmwodCkiKTsgfQotI3UgeyAtd2Via2l0LWJvcmRlci1pbWFnZTogdXJsKCJ1cmwo
dSkiKSAxIDIgMyA0IGZpbGwgc3RyZXRjaCByb3VuZDsgfQorI3UgeyBib3JkZXItaW1hZ2U6IHVy
bCgidXJsKHUpIikgMSAyIDMgNCBmaWxsIHN0cmV0Y2ggcm91bmQ7IH0KICN2IHsgLXdlYmtpdC1t
YXNrLWJveC1pbWFnZTogdXJsKCJ1cmwodikiKSAxIDIgMyA0IGZpbGwgc3RyZXRjaCByb3VuZDsg
fQogI3cgeyBjb250ZW50OiB1cmwoIndcZCB3Iik7IH0KICN4IHsgY29udGVudDogdXJsKCIgeCB4
XDkgeCAiKTsgfQpAQCAtNDcsNyArNDcsNyBAQCBFeHBlY3RlZCByZXN1bHQ6CiAjciB7IGxpc3Qt
c3R5bGUtaW1hZ2U6IHVybCgidXJsKHIpIik7IH0KICNzIHsgYmFja2dyb3VuZC1pbWFnZTogdXJs
KCJ1cmwocykiKTsgfQogI3QgeyBtYXNrLWltYWdlOiB1cmwoInVybCh0KSIpOyB9Ci0jdSB7IC13
ZWJraXQtYm9yZGVyLWltYWdlOiB1cmwoInVybCh1KSIpIDEgMiAzIDQgZmlsbCBzdHJldGNoIHJv
dW5kOyB9CisjdSB7IGJvcmRlci1pbWFnZTogdXJsKCJ1cmwodSkiKSAxIDIgMyA0IGZpbGwgc3Ry
ZXRjaCByb3VuZDsgfQogI3YgeyAtd2Via2l0LW1hc2stYm94LWltYWdlOiB1cmwoInVybCh2KSIp
IDEgMiAzIDQgZmlsbCBzdHJldGNoIHJvdW5kOyB9CiAjdyB7IGNvbnRlbnQ6IHVybCgid1xkIHci
KTsgfQogI3ggeyBjb250ZW50OiB1cmwoIiB4IHhcOSB4ICIpOyB9CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mYXN0L2Nzcy91cmktdG9rZW4tcGFyc2luZy5odG1sIGIvTGF5b3V0VGVzdHMvZmFz
dC9jc3MvdXJpLXRva2VuLXBhcnNpbmcuaHRtbAppbmRleCBlMTQ5NmIxYTRmYjQ2ODE3MTY4MzJk
Y2U2MTdkYzQ1NWE2ZDMxODkwLi5kYTdiNzA3NGNkZTdlNzc3MDQ1OGJiMDkzZTYzYjEyNDM0NDZh
MTU4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy91cmktdG9rZW4tcGFyc2luZy5o
dG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3VyaS10b2tlbi1wYXJzaW5nLmh0bWwKQEAg
LTkwLDcgKzkwLDcgQEAgZnVuY3Rpb24gcnVuVGVzdCgpCiAjciB7IGxpc3Qtc3R5bGUtaW1hZ2U6
IHVybCgidXJsKHIpIik7IH0KICNzIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCJ1cmwocykiKTsg
fQogI3QgeyBtYXNrLWltYWdlOiB1cmwoInVybCh0KSIpOyB9Ci0jdSB7IC13ZWJraXQtYm9yZGVy
LWltYWdlOiB1cmwoInVybCh1KSIpIDEgMiAzIDQgZmlsbCBzdHJldGNoIHJvdW5kOyB9CisjdSB7
IGJvcmRlci1pbWFnZTogdXJsKCJ1cmwodSkiKSAxIDIgMyA0IGZpbGwgc3RyZXRjaCByb3VuZDsg
fQogI3YgeyAtd2Via2l0LW1hc2stYm94LWltYWdlOiB1cmwoInVybCh2KSIpIDEgMiAzIDQgZmls
bCBzdHJldGNoIHJvdW5kOyB9CiAjdyB7IGNvbnRlbnQ6IHVybCgid1xkIHciKTsgfQogI3ggeyBj
b250ZW50OiB1cmwoIiB4IHhcOSB4ICIpOyB9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY2FzY2FkZS9hbGwtcHJvcC1pbml0
aWFsLXhtbC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2Nzcy9jc3MtY2FzY2FkZS9hbGwtcHJvcC1pbml0aWFsLXhtbC1leHBlY3RlZC50
eHQKaW5kZXggOWIyNTQ3MTQyZDg1NWIxZDM4ZGUwNDAxM2FmYWQwMDMyZjBkNWY5Ni4uMGY3Nzgx
YjBlYWVlNjU3Mzc2NTVjYTFmNTdlYzEwNTI1NmY0MWJjNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNhc2NhZGUvYWxsLXBy
b3AtaW5pdGlhbC14bWwtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jYXNjYWRlL2FsbC1wcm9wLWluaXRpYWwteG1s
LWV4cGVjdGVkLnR4dApAQCAtMzQxLDcgKzM0MSw2IEBAIFBBU1MgLXdlYmtpdC1iYWNrZ3JvdW5k
LWNsaXAKIFBBU1MgLXdlYmtpdC1iYWNrZ3JvdW5kLW9yaWdpbgogUEFTUyAtd2Via2l0LWJhY2tn
cm91bmQtc2l6ZQogUEFTUyAtd2Via2l0LWJvcmRlci1ob3Jpem9udGFsLXNwYWNpbmcKLVBBU1Mg
LXdlYmtpdC1ib3JkZXItaW1hZ2UKIFBBU1MgLXdlYmtpdC1ib3JkZXItdmVydGljYWwtc3BhY2lu
ZwogUEFTUyAtd2Via2l0LWJveC1hbGlnbgogUEFTUyAtd2Via2l0LWJveC1kZWNvcmF0aW9uLWJy
ZWFrCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2Nzcy9jc3NvbS9nZXRDb21wdXRlZFN0eWxlLWRldGFjaGVkLXN1YnRyZWUtZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nz
b20vZ2V0Q29tcHV0ZWRTdHlsZS1kZXRhY2hlZC1zdWJ0cmVlLWV4cGVjdGVkLnR4dAppbmRleCA5
YzZjMmQ2OTQ5NmE5N2Y1ZGVhZDcwYTJjMGFhNzBiMjY4ZGU4M2VmLi5hZmUzZGRjMjIwMDBhMGU3
NzQzOGFmYjJjZmZkMzlmYTc0ZmQ0ZGY4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS9nZXRDb21wdXRlZFN0eWxlLWRldGFj
aGVkLXN1YnRyZWUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dldENvbXB1dGVkU3R5bGUtZGV0YWNoZWQtc3Vi
dHJlZS1leHBlY3RlZC50eHQKQEAgLTEsOCArMSw4IEBACiAKIFBBU1MgZ2V0Q29tcHV0ZWRTdHls
ZSByZXR1cm5zIG5vIHN0eWxlIGZvciBkZXRhY2hlZCBlbGVtZW50Ci1GQUlMIGdldENvbXB1dGVk
U3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBpbiBub24tcmVuZGVyZWQgaWZyYW1l
IChkaXNwbGF5OiBub25lKSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk3Ci1G
QUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBpbiBub24t
cmVuZGVyZWQgaWZyYW1lIChkaXNwbGF5OiBub25lKSBmcm9tIGlmcmFtZSdzIHdpbmRvdyBhc3Nl
cnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk3Ci1GQUlMIGdldENvbXB1dGVkU3R5bGUg
cmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBvdXRzaWRlIHRoZSBmbGF0IHRyZWUgYXNzZXJ0
X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDM5NwotRkFJTCBnZXRDb21wdXRlZFN0eWxlIHJl
dHVybnMgbm8gc3R5bGUgZm9yIGRlc2NlbmRhbnQgb3V0c2lkZSB0aGUgZmxhdCB0cmVlIGFzc2Vy
dF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTcKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSBy
ZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50IGluIG5vbi1yZW5kZXJlZCBpZnJhbWUgKGRpc3Bs
YXk6IG5vbmUpIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTYKK0ZBSUwgZ2V0
Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50IGluIG5vbi1yZW5kZXJl
ZCBpZnJhbWUgKGRpc3BsYXk6IG5vbmUpIGZyb20gaWZyYW1lJ3Mgd2luZG93IGFzc2VydF9lcXVh
bHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTYKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5z
IG5vIHN0eWxlIGZvciBlbGVtZW50IG91dHNpZGUgdGhlIGZsYXQgdHJlZSBhc3NlcnRfZXF1YWxz
OiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk2CitGQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBu
byBzdHlsZSBmb3IgZGVzY2VuZGFudCBvdXRzaWRlIHRoZSBmbGF0IHRyZWUgYXNzZXJ0X2VxdWFs
czogZXhwZWN0ZWQgMCBidXQgZ290IDM5NgogUEFTUyBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMg
bm8gc3R5bGUgZm9yIHNoYWRvdyB0cmVlIG91dHNpZGUgb2YgZmxhdHRlbmVkIHRyZWUKIApkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvY3NzL2Nzcy1jYXNjYWRlL2FsbC1wcm9wLWluaXRpYWwteG1sLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2Nzcy9jc3MtY2FzY2FkZS9hbGwtcHJvcC1pbml0aWFsLXhtbC1leHBlY3RlZC50eHQKaW5k
ZXggN2IxYjNjNjg0NGM0NDk3MjE0M2ZhNjAzMzcxYWIzMDU5Y2IyMDc3Zi4uYTI2MTM1MDU1MGQ4
Yjg3ZTM2YzJjZGZjOWFjYmRiMWUxMTVjN2M4ZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vZ3RrL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jYXNjYWRl
L2FsbC1wcm9wLWluaXRpYWwteG1sLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS9ndGsvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNhc2NhZGUv
YWxsLXByb3AtaW5pdGlhbC14bWwtZXhwZWN0ZWQudHh0CkBAIC0zMzksNyArMzM5LDYgQEAgUEFT
UyAtd2Via2l0LWJhY2tncm91bmQtY2xpcAogUEFTUyAtd2Via2l0LWJhY2tncm91bmQtb3JpZ2lu
CiBQQVNTIC13ZWJraXQtYmFja2dyb3VuZC1zaXplCiBQQVNTIC13ZWJraXQtYm9yZGVyLWhvcml6
b250YWwtc3BhY2luZwotUEFTUyAtd2Via2l0LWJvcmRlci1pbWFnZQogUEFTUyAtd2Via2l0LWJv
cmRlci12ZXJ0aWNhbC1zcGFjaW5nCiBQQVNTIC13ZWJraXQtYm94LWFsaWduCiBQQVNTIC13ZWJr
aXQtYm94LWRlY29yYXRpb24tYnJlYWsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3Jt
L2d0ay9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS9nZXRDb21wdXRl
ZFN0eWxlLWRldGFjaGVkLXN1YnRyZWUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vZ3RrL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dldENvbXB1
dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS1leHBlY3RlZC50eHQKaW5kZXggYTVlZWE2Yzg2OGIx
NGIxMTRjOWMyNWMzZDM1MzFiZmY5YzhhNTE5ZS4uNjgzN2VhMjZmZmRkODc0YTllY2UyMjQ1OTlk
YzlkNThlMDg2ZGJjNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dldENvbXB1dGVkU3R5bGUtZGV0
YWNoZWQtc3VidHJlZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3Rr
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dldENvbXB1dGVkU3R5
bGUtZGV0YWNoZWQtc3VidHJlZS1leHBlY3RlZC50eHQKQEAgLTEsOCArMSw4IEBACiAKIFBBU1Mg
Z2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBkZXRhY2hlZCBlbGVtZW50Ci1G
QUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBpbiBub24t
cmVuZGVyZWQgaWZyYW1lIChkaXNwbGF5OiBub25lKSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAw
IGJ1dCBnb3QgMzk1Ci1GQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3Ig
ZWxlbWVudCBpbiBub24tcmVuZGVyZWQgaWZyYW1lIChkaXNwbGF5OiBub25lKSBmcm9tIGlmcmFt
ZSdzIHdpbmRvdyBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk1Ci1GQUlMIGdl
dENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBvdXRzaWRlIHRoZSBm
bGF0IHRyZWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDM5NQotRkFJTCBnZXRD
b21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIGRlc2NlbmRhbnQgb3V0c2lkZSB0aGUg
ZmxhdCB0cmVlIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTUKK0ZBSUwgZ2V0
Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50IGluIG5vbi1yZW5kZXJl
ZCBpZnJhbWUgKGRpc3BsYXk6IG5vbmUpIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdv
dCAzOTQKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50
IGluIG5vbi1yZW5kZXJlZCBpZnJhbWUgKGRpc3BsYXk6IG5vbmUpIGZyb20gaWZyYW1lJ3Mgd2lu
ZG93IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTQKK0ZBSUwgZ2V0Q29tcHV0
ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50IG91dHNpZGUgdGhlIGZsYXQgdHJl
ZSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk0CitGQUlMIGdldENvbXB1dGVk
U3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZGVzY2VuZGFudCBvdXRzaWRlIHRoZSBmbGF0IHRy
ZWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDM5NAogUEFTUyBnZXRDb21wdXRl
ZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIHNoYWRvdyB0cmVlIG91dHNpZGUgb2YgZmxhdHRl
bmVkIHRyZWUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jYXNjYWRlL2FsbC1wcm9wLWluaXRpYWwt
eG1sLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY2FzY2FkZS9hbGwtcHJvcC1pbml0aWFsLXhtbC1l
eHBlY3RlZC50eHQKaW5kZXggYmUzZGI5MGNkMDkwMDAwM2JkODA4NWE1OWVjMDhkZWE3MTEzN2Zj
MS4uNDMwOTg1ZTQ2Y2ExMjk5MmZkYmU4OWJlZDI2ZTI1M2RiMDE1YWViYyAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
Y3NzL2Nzcy1jYXNjYWRlL2FsbC1wcm9wLWluaXRpYWwteG1sLWV4cGVjdGVkLnR4dAorKysgYi9M
YXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9j
c3MvY3NzLWNhc2NhZGUvYWxsLXByb3AtaW5pdGlhbC14bWwtZXhwZWN0ZWQudHh0CkBAIC0zMTEs
NyArMzExLDYgQEAgUEFTUyAtd2Via2l0LWJhY2tncm91bmQtY2xpcAogUEFTUyAtd2Via2l0LWJh
Y2tncm91bmQtb3JpZ2luCiBQQVNTIC13ZWJraXQtYmFja2dyb3VuZC1zaXplCiBQQVNTIC13ZWJr
aXQtYm9yZGVyLWhvcml6b250YWwtc3BhY2luZwotUEFTUyAtd2Via2l0LWJvcmRlci1pbWFnZQog
UEFTUyAtd2Via2l0LWJvcmRlci12ZXJ0aWNhbC1zcGFjaW5nCiBQQVNTIC13ZWJraXQtYm94LWFs
aWduCiBQQVNTIC13ZWJraXQtYm94LWRlY29yYXRpb24tYnJlYWsKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL3BsYXRmb3JtL2lvcy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9j
c3NvbS9nZXRDb21wdXRlZFN0eWxlLWRldGFjaGVkLXN1YnRyZWUtZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vaW9zL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3Nz
L2Nzc29tL2dldENvbXB1dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS1leHBlY3RlZC50eHQKaW5k
ZXggOTAzYmZjNmE3ZTliMjgyNzI0OGFiMDczYjUxMDY3N2U0MTQ5ZGYzMi4uYTJiODQ5ZWRjNDRi
NWQ0OWIxMzA3NTNiOTFmYjczMDU0YzMyNjRiZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vaW9zL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dldENv
bXB1dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vaW9zL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29t
L2dldENvbXB1dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS1leHBlY3RlZC50eHQKQEAgLTEsOCAr
MSw4IEBACiAKIFBBU1MgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBkZXRh
Y2hlZCBlbGVtZW50Ci1GQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3Ig
ZWxlbWVudCBpbiBub24tcmVuZGVyZWQgaWZyYW1lIChkaXNwbGF5OiBub25lKSBhc3NlcnRfZXF1
YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk5Ci1GQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJu
cyBubyBzdHlsZSBmb3IgZWxlbWVudCBpbiBub24tcmVuZGVyZWQgaWZyYW1lIChkaXNwbGF5OiBu
b25lKSBmcm9tIGlmcmFtZSdzIHdpbmRvdyBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBn
b3QgMzk5Ci1GQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVu
dCBvdXRzaWRlIHRoZSBmbGF0IHRyZWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290
IDM5OQotRkFJTCBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIGRlc2NlbmRh
bnQgb3V0c2lkZSB0aGUgZmxhdCB0cmVlIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdv
dCAzOTkKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50
IGluIG5vbi1yZW5kZXJlZCBpZnJhbWUgKGRpc3BsYXk6IG5vbmUpIGFzc2VydF9lcXVhbHM6IGV4
cGVjdGVkIDAgYnV0IGdvdCAzOTgKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0
eWxlIGZvciBlbGVtZW50IGluIG5vbi1yZW5kZXJlZCBpZnJhbWUgKGRpc3BsYXk6IG5vbmUpIGZy
b20gaWZyYW1lJ3Mgd2luZG93IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTgK
K0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50IG91dHNp
ZGUgdGhlIGZsYXQgdHJlZSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk4CitG
QUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZGVzY2VuZGFudCBvdXRz
aWRlIHRoZSBmbGF0IHRyZWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDM5OAog
UEFTUyBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIHNoYWRvdyB0cmVlIG91
dHNpZGUgb2YgZmxhdHRlbmVkIHRyZWUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vd3BlL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jYXNjYWRlL2Fs
bC1wcm9wLWluaXRpYWwteG1sLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3dw
ZS9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY2FzY2FkZS9hbGwtcHJv
cC1pbml0aWFsLXhtbC1leHBlY3RlZC50eHQKaW5kZXggOGUyZDAxMTFmYTExODYwYTM1MDQwOTQ0
MGI0NzU0ZWI0YTI0MTQzZS4uOTM5NTYzMmI5OTE4ZjZhMzkwOTM5MDRiMDJhZWRmMWY4Zjk5M2E0
NyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd3BlL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jYXNjYWRlL2FsbC1wcm9wLWluaXRpYWwteG1sLWV4cGVj
dGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93cGUvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNhc2NhZGUvYWxsLXByb3AtaW5pdGlhbC14bWwtZXhwZWN0
ZWQudHh0CkBAIC0zMzksNyArMzM5LDYgQEAgUEFTUyAtd2Via2l0LWJhY2tncm91bmQtY2xpcAog
UEFTUyAtd2Via2l0LWJhY2tncm91bmQtb3JpZ2luCiBQQVNTIC13ZWJraXQtYmFja2dyb3VuZC1z
aXplCiBQQVNTIC13ZWJraXQtYm9yZGVyLWhvcml6b250YWwtc3BhY2luZwotUEFTUyAtd2Via2l0
LWJvcmRlci1pbWFnZQogUEFTUyAtd2Via2l0LWJvcmRlci12ZXJ0aWNhbC1zcGFjaW5nCiBQQVNT
IC13ZWJraXQtYm94LWFsaWduCiBQQVNTIC13ZWJraXQtYm94LWRlY29yYXRpb24tYnJlYWsKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3dwZS9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2Nzcy9jc3NvbS9nZXRDb21wdXRlZFN0eWxlLWRldGFjaGVkLXN1YnRyZWUtZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd3BlL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dldENvbXB1dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS1l
eHBlY3RlZC50eHQKaW5kZXggNjgzN2VhMjZmZmRkODc0YTllY2UyMjQ1OTlkYzlkNThlMDg2ZGJj
NC4uODg3Y2E2YzkxOWRlM2EwYWUwMGE3ZDc1YzY3NzgzZWFlMWI1YWQ0MCAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vd3BlL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
Y3NzL2Nzc29tL2dldENvbXB1dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS1leHBlY3RlZC50eHQK
KysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd3BlL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL2Nzc29tL2dldENvbXB1dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS1leHBlY3Rl
ZC50eHQKQEAgLTEsOCArMSw4IEBACiAKIFBBU1MgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5v
IHN0eWxlIGZvciBkZXRhY2hlZCBlbGVtZW50Ci1GQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJu
cyBubyBzdHlsZSBmb3IgZWxlbWVudCBpbiBub24tcmVuZGVyZWQgaWZyYW1lIChkaXNwbGF5OiBu
b25lKSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk0Ci1GQUlMIGdldENvbXB1
dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBpbiBub24tcmVuZGVyZWQgaWZy
YW1lIChkaXNwbGF5OiBub25lKSBmcm9tIGlmcmFtZSdzIHdpbmRvdyBhc3NlcnRfZXF1YWxzOiBl
eHBlY3RlZCAwIGJ1dCBnb3QgMzk0Ci1GQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBz
dHlsZSBmb3IgZWxlbWVudCBvdXRzaWRlIHRoZSBmbGF0IHRyZWUgYXNzZXJ0X2VxdWFsczogZXhw
ZWN0ZWQgMCBidXQgZ290IDM5NAotRkFJTCBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5
bGUgZm9yIGRlc2NlbmRhbnQgb3V0c2lkZSB0aGUgZmxhdCB0cmVlIGFzc2VydF9lcXVhbHM6IGV4
cGVjdGVkIDAgYnV0IGdvdCAzOTQKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0
eWxlIGZvciBlbGVtZW50IGluIG5vbi1yZW5kZXJlZCBpZnJhbWUgKGRpc3BsYXk6IG5vbmUpIGFz
c2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTMKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHls
ZSByZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50IGluIG5vbi1yZW5kZXJlZCBpZnJhbWUgKGRp
c3BsYXk6IG5vbmUpIGZyb20gaWZyYW1lJ3Mgd2luZG93IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVk
IDAgYnV0IGdvdCAzOTMKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZv
ciBlbGVtZW50IG91dHNpZGUgdGhlIGZsYXQgdHJlZSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAw
IGJ1dCBnb3QgMzkzCitGQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3Ig
ZGVzY2VuZGFudCBvdXRzaWRlIHRoZSBmbGF0IHRyZWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQg
MCBidXQgZ290IDM5MwogUEFTUyBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9y
IHNoYWRvdyB0cmVlIG91dHNpZGUgb2YgZmxhdHRlbmVkIHRyZWUKIApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvc3ZnL2Nzcy9nZXRDb21wdXRlZFN0eWxlLWJhc2ljLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL3N2Zy9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS1iYXNpYy1leHBlY3RlZC50eHQKaW5k
ZXggM2ZlNzc4ZmMwNGQ1YzYwMWY3YzAzNzZiZjNlMWY2OTJiYjg4NDRjZS4uYzU2NDI4OTlkNjA3
YTM2ZDE3OTRiYWZmOWJmZWVjZjUyNTAxZGYyNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvc3Zn
L2Nzcy9nZXRDb21wdXRlZFN0eWxlLWJhc2ljLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0
cy9zdmcvY3NzL2dldENvbXB1dGVkU3R5bGUtYmFzaWMtZXhwZWN0ZWQudHh0CkBAIC00MTgsOCAr
NDE4LDYgQEAgcmVjdDogc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgtd2Via2l0LWJhY2tncm91bmQt
c2l6ZSkgOiBhdXRvCiByZWN0OiBzdHlsZS5nZXRQcm9wZXJ0eUNTU1ZhbHVlKC13ZWJraXQtYmFj
a2dyb3VuZC1zaXplKSA6IFtvYmplY3QgQ1NTUHJpbWl0aXZlVmFsdWVdCiByZWN0OiBzdHlsZS5n
ZXRQcm9wZXJ0eVZhbHVlKC13ZWJraXQtYm9yZGVyLWhvcml6b250YWwtc3BhY2luZykgOiAwcHgK
IHJlY3Q6IHN0eWxlLmdldFByb3BlcnR5Q1NTVmFsdWUoLXdlYmtpdC1ib3JkZXItaG9yaXpvbnRh
bC1zcGFjaW5nKSA6IFtvYmplY3QgQ1NTUHJpbWl0aXZlVmFsdWVdCi1yZWN0OiBzdHlsZS5nZXRQ
cm9wZXJ0eVZhbHVlKC13ZWJraXQtYm9yZGVyLWltYWdlKSA6IG5vbmUKLXJlY3Q6IHN0eWxlLmdl
dFByb3BlcnR5Q1NTVmFsdWUoLXdlYmtpdC1ib3JkZXItaW1hZ2UpIDogW29iamVjdCBDU1NQcmlt
aXRpdmVWYWx1ZV0KIHJlY3Q6IHN0eWxlLmdldFByb3BlcnR5VmFsdWUoLXdlYmtpdC1ib3JkZXIt
dmVydGljYWwtc3BhY2luZykgOiAwcHgKIHJlY3Q6IHN0eWxlLmdldFByb3BlcnR5Q1NTVmFsdWUo
LXdlYmtpdC1ib3JkZXItdmVydGljYWwtc3BhY2luZykgOiBbb2JqZWN0IENTU1ByaW1pdGl2ZVZh
bHVlXQogcmVjdDogc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgtd2Via2l0LWJveC1hbGlnbikgOiBz
dHJldGNoCkBAIC05MzQsOCArOTMyLDYgQEAgZzogc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgtd2Vi
a2l0LWJhY2tncm91bmQtc2l6ZSkgOiBhdXRvCiBnOiBzdHlsZS5nZXRQcm9wZXJ0eUNTU1ZhbHVl
KC13ZWJraXQtYmFja2dyb3VuZC1zaXplKSA6IFtvYmplY3QgQ1NTUHJpbWl0aXZlVmFsdWVdCiBn
OiBzdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKC13ZWJraXQtYm9yZGVyLWhvcml6b250YWwtc3BhY2lu
ZykgOiAwcHgKIGc6IHN0eWxlLmdldFByb3BlcnR5Q1NTVmFsdWUoLXdlYmtpdC1ib3JkZXItaG9y
aXpvbnRhbC1zcGFjaW5nKSA6IFtvYmplY3QgQ1NTUHJpbWl0aXZlVmFsdWVdCi1nOiBzdHlsZS5n
ZXRQcm9wZXJ0eVZhbHVlKC13ZWJraXQtYm9yZGVyLWltYWdlKSA6IG5vbmUKLWc6IHN0eWxlLmdl
dFByb3BlcnR5Q1NTVmFsdWUoLXdlYmtpdC1ib3JkZXItaW1hZ2UpIDogW29iamVjdCBDU1NQcmlt
aXRpdmVWYWx1ZV0KIGc6IHN0eWxlLmdldFByb3BlcnR5VmFsdWUoLXdlYmtpdC1ib3JkZXItdmVy
dGljYWwtc3BhY2luZykgOiAwcHgKIGc6IHN0eWxlLmdldFByb3BlcnR5Q1NTVmFsdWUoLXdlYmtp
dC1ib3JkZXItdmVydGljYWwtc3BhY2luZykgOiBbb2JqZWN0IENTU1ByaW1pdGl2ZVZhbHVlXQog
Zzogc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgtd2Via2l0LWJveC1hbGlnbikgOiBzdHJldGNoCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>455200</attachid>
            <date>2022-03-20 10:34:27 -0700</date>
            <delta_ts>2022-03-20 10:37:30 -0700</delta_ts>
            <desc>Patch for EWS</desc>
            <filename>bug-237487-20220320183425.patch</filename>
            <type>text/plain</type>
            <size>54442</size>
            <attacher name="Oriol Brufau">obrufau</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkxNTQwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTdhMTdhMmRiZDUyYmM1
ZmRjY2U2NmJhMzM0ZTRmODYyNmUxMTg1Mi4uYmYxNzBjNDM1ZDNlNTM0ZmM3MGFiYzgyODQ2Yzg2
ODRkMGM3OThhNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDcwIEBACisyMDIyLTAzLTIwICBPcmlv
bCBCcnVmYXUgIDxvYnJ1ZmF1QGlnYWxpYS5jb20+CisKKyAgICAgICAgW2Nzcy1jYXNjYWRlXSBG
aXggY2FzY2FkZSByb2xsYmFjayBmb3IgcHJvcGVydGllcyBzaGFyaW5nIGEgY29tcHV0ZWQgc3R5
bGUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzODEy
NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE5vIG5l
dyB0ZXN0cyAoT09QUyEpLgorCisgICAgICAgICogc3R5bGUvUHJvcGVydHlDYXNjYWRlLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OlN0eWxlOjpnZXRTdXJyb2dhdGUpOgorICAgICAgICAoV2ViQ29y
ZTo6U3R5bGU6OnNob3VsZEFwcGx5UHJvcGVydHlJblBhcnNlT3JkZXIpOgorICAgICAgICAoV2Vi
Q29yZTo6U3R5bGU6OlByb3BlcnR5Q2FzY2FkZTo6bGFzdERlZmVycmVkUHJvcGVydHlJbmNsdWRp
bmdTdXJyb2dhdGVzIGNvbnN0KToKKyAgICAgICAgKiBzdHlsZS9Qcm9wZXJ0eUNhc2NhZGUuaDoK
KyAgICAgICAgKFdlYkNvcmU6OlN0eWxlOjpQcm9wZXJ0eUNhc2NhZGU6Omhhc0RlZmVycmVkUHJv
cGVydHkgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6U3R5bGU6OlByb3BlcnR5
Q2FzY2FkZTo6YXJlRGVmZXJyZWRJbk9yZGVyIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdl
YkNvcmU6OlN0eWxlOjpQcm9wZXJ0eUNhc2NhZGU6OmRlZmVycmVkUHJvcGVydHkgY29uc3QpOiBE
ZWxldGVkLgorICAgICAgICAqIHN0eWxlL1N0eWxlQnVpbGRlci5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpTdHlsZTo6QnVpbGRlcjo6YXBwbHlQcm9wZXJ0eSk6CisKKzIwMjItMDMtMjAgIE9yaW9s
IEJydWZhdSAgPG9icnVmYXVAaWdhbGlhLmNvbT4KKworICAgICAgICBbY3NzXSBUdXJuIC13ZWJr
aXQtYm9yZGVyLWltYWdlIGludG8gYSBzaG9ydGhhbmQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzNzQ4NworCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIFRoZSAnLXdlYmtpdC1ib3JkZXItaW1hZ2UnIHByb3Bl
cnR5IHdhcyBjb25zaWRlcmVkIHRvIGJlIGEgbG9uZ2hhbmQsCisgICAgICAgIHNoYXJpbmcgY29t
cHV0ZWQgdmFsdWVzIHdpdGggdGhlIHZhcmlvdXMgJ2JvcmRlci1pbWFnZS0qJy4KKworICAgICAg
ICBUaGlzIHBhdGNoIHR1cm5zIGl0IGludG8gYSBsb25naGFuZCBvZiAnYm9yZGVyLWltYWdlLSon
LCBhbmQgYWxzbyBvZgorICAgICAgICAnYm9yZGVyLSotd2lkdGgnLiBUaGUgbGF0dGVyIGlzIGJl
Y2F1c2UgSSdtIHByZXNlcnZpbmcgdGhlIGxlZ2FjeQorICAgICAgICBiZWhhdmlvciBvZiBtYWtp
bmcgdGhlIGJvcmRlciBpbWFnZSB3aWR0aHMgYWxzbyBzZXQgdGhlIGJvcmRlciB3aWR0aHMKKyAg
ICAgICAgaWYgdGhleSBhcmUgYSBsZW5ndGguCisKKyAgICAgICAgVGVzdHM6IGZhc3QvY3NzL2Jv
cmRlci1pbWFnZS1zdHlsZS1sZW5ndGguaHRtbAorICAgICAgICAgICAgICAgZmFzdC9jc3MvZ2V0
Q29tcHV0ZWRTdHlsZS9jb21wdXRlZC1zdHlsZS5odG1sCisgICAgICAgICAgICAgICBmYXN0L2Nz
cy9nZXRDb21wdXRlZFN0eWxlL2NvbXB1dGVkLXN0eWxlLXdpdGhvdXQtcmVuZGVyZXIuaHRtbAor
ICAgICAgICAgICAgICAgZmFzdC9jc3MvaW1hZ2Utc2V0LXBhcnNpbmcuaHRtbAorICAgICAgICAg
ICAgICAgZmFzdC9jc3MvdXJpLXRva2VuLXBhcnNpbmcuaHRtbAorICAgICAgICAgICAgICAgaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNhc2NhZGUvYWxsLXByb3AtaW5p
dGlhbC14bWwuaHRtbAorICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9jc3MvY3Nzb20vZ2V0Q29tcHV0ZWRTdHlsZS1kZXRhY2hlZC1zdWJ0cmVlLmh0bWwKKyAg
ICAgICAgICAgICAgIHN2Zy9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS1iYXNpYy54aHRtbAorCisgICAg
ICAgICogY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHA6CisgICAgICAgIChXZWJD
b3JlOjp2YWx1ZUZvck5pbmVQaWVjZUltYWdlKToKKyAgICAgICAgKFdlYkNvcmU6OnZhbHVlRm9y
UmVmbGVjdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpDb21wdXRlZFN0eWxlRXh0cmFjdG9yOjp2
YWx1ZUZvclByb3BlcnR5SW5TdHlsZSk6CisgICAgICAgICogY3NzL0NTU1Byb3BlcnRpZXMuanNv
bjoKKyAgICAgICAgKiBjc3MvQ1NTVG9TdHlsZU1hcC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpD
U1NUb1N0eWxlTWFwOjptYXBOaW5lUGllY2VJbWFnZSk6CisgICAgICAgICogY3NzL0NTU1RvU3R5
bGVNYXAuaDoKKyAgICAgICAgKiBjc3MvU3R5bGVQcm9wZXJ0aWVzLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OlN0eWxlUHJvcGVydGllczo6Z2V0UHJvcGVydHlWYWx1ZSBjb25zdCk6CisgICAgICAg
IChXZWJDb3JlOjpTdHlsZVByb3BlcnRpZXM6OmJvcmRlckltYWdlUHJvcGVydHlWYWx1ZSBjb25z
dCk6CisgICAgICAgICogY3NzL1N0eWxlUHJvcGVydGllcy5oOgorICAgICAgICAqIGNzcy9wYXJz
ZXIvQ1NTUHJvcGVydHlQYXJzZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUHJvcGVydHlQ
YXJzZXI6OnBhcnNlU2luZ2xlVmFsdWUpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUHJvcGVydHlQ
YXJzZXI6OmNvbnN1bWVCb3JkZXJJbWFnZSk6CisgICAgICAgIChXZWJDb3JlOjpDU1NQcm9wZXJ0
eVBhcnNlcjo6cGFyc2VTaG9ydGhhbmQpOgorICAgICAgICAqIHN0eWxlL1Byb3BlcnR5Q2FzY2Fk
ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6c2hvdWxkQXBwbHlQcm9wZXJ0eUluUGFy
c2VPcmRlcik6CisgICAgICAgICogc3R5bGUvU3R5bGVCdWlsZGVyQ29udmVydGVyLmg6CisgICAg
ICAgIChXZWJDb3JlOjpTdHlsZTo6QnVpbGRlckNvbnZlcnRlcjo6Y29udmVydEJvcmRlck1hc2sp
OgorICAgICAgICAoV2ViQ29yZTo6U3R5bGU6OkJ1aWxkZXJDb252ZXJ0ZXI6OmNvbnZlcnRSZWZs
ZWN0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlOjpCdWlsZGVyQ29udmVydGVyOjpjb252
ZXJ0Qm9yZGVySW1hZ2UpOiBEZWxldGVkLgorCiAyMDIyLTAzLTIwICBPcmlvbCBCcnVmYXUgIDxv
YnJ1ZmF1QGlnYWxpYS5jb20+CiAKICAgICAgICAgW2Nzcy1jYXNjYWRlXSBEb24ndCBkZWZlciBh
cHBseWluZyB0ZXh0IGRlY29yYXRpb24gcHJvcGVydGllcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9jc3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmNwcAppbmRleCA0OTRlOGI2YWI0MDQ4
MjU5OTBiMTRlZTI1YzU4OTY3NGJiZmVkODNjLi4wNjgzMWZlNWJhNTFmNTgzMGM5Yjg0ZTBiNmY1
ODhmNGNhZjc1MDg2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ29tcHV0ZWRT
dHlsZURlY2xhcmF0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ29tcHV0ZWRT
dHlsZURlY2xhcmF0aW9uLmNwcApAQCAtMjI0LDcgKzIyNCw3IEBAIHN0YXRpYyBSZWY8Q1NTVmFs
dWU+IHZhbHVlRm9yTmluZVBpZWNlSW1hZ2VSZXBlYXQoY29uc3QgTmluZVBpZWNlSW1hZ2UmIGlt
YWdlKQogICAgIHJldHVybiBjc3NWYWx1ZVBvb2wuY3JlYXRlVmFsdWUoUGFpcjo6Y3JlYXRlKFdU
Rk1vdmUoaG9yaXpvbnRhbFJlcGVhdCksIFdURk1vdmUodmVydGljYWxSZXBlYXQpKSk7CiB9CiAK
LXN0YXRpYyBSZWY8Q1NTVmFsdWU+IHZhbHVlRm9yTmluZVBpZWNlSW1hZ2UoY29uc3QgTmluZVBp
ZWNlSW1hZ2UmIGltYWdlLCBjb25zdCBSZW5kZXJTdHlsZSYgc3R5bGUpCitzdGF0aWMgUmVmUHRy
PENTU1ZhbHVlPiB2YWx1ZUZvck5pbmVQaWVjZUltYWdlKENTU1Byb3BlcnR5SUQgcHJvcGVydHlJ
RCwgY29uc3QgTmluZVBpZWNlSW1hZ2UmIGltYWdlLCBjb25zdCBSZW5kZXJTdHlsZSYgc3R5bGUp
CiB7CiAgICAgaWYgKCFpbWFnZS5oYXNJbWFnZSgpKQogICAgICAgICByZXR1cm4gQ1NTVmFsdWVQ
b29sOjpzaW5nbGV0b24oKS5jcmVhdGVJZGVudGlmaWVyVmFsdWUoQ1NTVmFsdWVOb25lKTsKQEAg
LTIzMyw2ICsyMzMsMjAgQEAgc3RhdGljIFJlZjxDU1NWYWx1ZT4gdmFsdWVGb3JOaW5lUGllY2VJ
bWFnZShjb25zdCBOaW5lUGllY2VJbWFnZSYgaW1hZ2UsIGNvbnN0IFIKICAgICBpZiAoaW1hZ2Uu
aW1hZ2UoKSkKICAgICAgICAgaW1hZ2VWYWx1ZSA9IGltYWdlLmltYWdlKCktPmNzc1ZhbHVlKCk7
CiAKKyAgICBpZiAocHJvcGVydHlJRCA9PSBDU1NQcm9wZXJ0eVdlYmtpdEJvcmRlckltYWdlKSB7
CisgICAgICAgIC8vIC13ZWJraXQtYm9yZGVyLWltYWdlIGhhcyBhIGxlZ2FjeSBiZWhhdmlvciB0
aGF0IG1ha2VzIGZpeGVkIGJvcmRlciBzbGljZXMgYWxzbyBzZXQgdGhlIGJvcmRlciB3aWR0aHMu
CisgICAgICAgIC8vIFNvIGlmIHRoZXkgYXJlIGZpeGVkIGJ1dCB0aGUgYm9yZGVyIHdpZHRocyBk
b24ndCBtYXRjaCwgLXdlYmtpdC1ib3JkZXItaW1hZ2UgY2FuJ3QgcmVwcmVzZW50IHRoZSBjdXJy
ZW50IHN0YXRlLgorICAgICAgICBjb25zdCBhdXRvJiBib3JkZXJTbGljZXMgPSBpbWFnZS5ib3Jk
ZXJTbGljZXMoKTsKKyAgICAgICAgaWYgKGJvcmRlclNsaWNlcy50b3AoKS5pc0ZpeGVkKCkgJiYg
Ym9yZGVyU2xpY2VzLnRvcCgpLnZhbHVlKCkgIT0gc3R5bGUuYm9yZGVyVG9wV2lkdGgoKSkKKyAg
ICAgICAgICAgIHJldHVybiBudWxscHRyOworICAgICAgICBpZiAoYm9yZGVyU2xpY2VzLnJpZ2h0
KCkuaXNGaXhlZCgpICYmIGJvcmRlclNsaWNlcy5yaWdodCgpLnZhbHVlKCkgIT0gc3R5bGUuYm9y
ZGVyUmlnaHRXaWR0aCgpKQorICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgICAgIGlm
IChib3JkZXJTbGljZXMuYm90dG9tKCkuaXNGaXhlZCgpICYmIGJvcmRlclNsaWNlcy5ib3R0b20o
KS52YWx1ZSgpICE9IHN0eWxlLmJvcmRlckJvdHRvbVdpZHRoKCkpCisgICAgICAgICAgICByZXR1
cm4gbnVsbHB0cjsKKyAgICAgICAgaWYgKGJvcmRlclNsaWNlcy5sZWZ0KCkuaXNGaXhlZCgpICYm
IGJvcmRlclNsaWNlcy5sZWZ0KCkudmFsdWUoKSAhPSBzdHlsZS5ib3JkZXJMZWZ0V2lkdGgoKSkK
KyAgICAgICAgICAgIHJldHVybiBudWxscHRyOworICAgIH0KKwogICAgIGF1dG8gaW1hZ2VTbGlj
ZXMgPSB2YWx1ZUZvck5pbmVQaWVjZUltYWdlU2xpY2UoaW1hZ2UpOwogICAgIGF1dG8gYm9yZGVy
U2xpY2VzID0gdmFsdWVGb3JOaW5lUGllY2VJbWFnZVF1YWQoaW1hZ2UuYm9yZGVyU2xpY2VzKCks
IHN0eWxlKTsKICAgICBhdXRvIG91dHNldCA9IHZhbHVlRm9yTmluZVBpZWNlSW1hZ2VRdWFkKGlt
YWdlLm91dHNldCgpLCBzdHlsZSk7CkBAIC0yODQsNyArMjk4LDcgQEAgc3RhdGljIFJlZjxDU1NW
YWx1ZT4gdmFsdWVGb3JSZWZsZWN0aW9uKGNvbnN0IFN0eWxlUmVmbGVjdGlvbiogcmVmbGVjdGlv
biwgY29uc3QKICAgICAgICAgYnJlYWs7CiAgICAgfQogCi0gICAgcmV0dXJuIENTU1JlZmxlY3RW
YWx1ZTo6Y3JlYXRlKGRpcmVjdGlvbi5yZWxlYXNlTm9uTnVsbCgpLCBvZmZzZXQucmVsZWFzZU5v
bk51bGwoKSwgdmFsdWVGb3JOaW5lUGllY2VJbWFnZShyZWZsZWN0aW9uLT5tYXNrKCksIHN0eWxl
KSk7CisgICAgcmV0dXJuIENTU1JlZmxlY3RWYWx1ZTo6Y3JlYXRlKGRpcmVjdGlvbi5yZWxlYXNl
Tm9uTnVsbCgpLCBvZmZzZXQucmVsZWFzZU5vbk51bGwoKSwgdmFsdWVGb3JOaW5lUGllY2VJbWFn
ZShDU1NQcm9wZXJ0eVdlYmtpdEJveFJlZmxlY3QsIHJlZmxlY3Rpb24tPm1hc2soKSwgc3R5bGUp
KTsKIH0KIAogc3RhdGljIFJlZjxDU1NWYWx1ZUxpc3Q+IGNyZWF0ZVBvc2l0aW9uTGlzdEZvckxh
eWVyKENTU1Byb3BlcnR5SUQgcHJvcGVydHlJRCwgY29uc3QgRmlsbExheWVyJiBsYXllciwgY29u
c3QgUmVuZGVyU3R5bGUmIHN0eWxlKQpAQCAtMzc5Nyw4ICszODExLDkgQEAgUmVmUHRyPENTU1Zh
bHVlPiBDb21wdXRlZFN0eWxlRXh0cmFjdG9yOjp2YWx1ZUZvclByb3BlcnR5SW5TdHlsZShjb25z
dCBSZW5kZXJTdHkKICAgICAgICAgfQogICAgICAgICBjYXNlIENTU1Byb3BlcnR5QmFja2ZhY2VW
aXNpYmlsaXR5OgogICAgICAgICAgICAgcmV0dXJuIGNzc1ZhbHVlUG9vbC5jcmVhdGVJZGVudGlm
aWVyVmFsdWUoKHN0eWxlLmJhY2tmYWNlVmlzaWJpbGl0eSgpID09IEJhY2tmYWNlVmlzaWJpbGl0
eTo6SGlkZGVuKSA/IENTU1ZhbHVlSGlkZGVuIDogQ1NTVmFsdWVWaXNpYmxlKTsKKyAgICAgICAg
Y2FzZSBDU1NQcm9wZXJ0eUJvcmRlckltYWdlOgogICAgICAgICBjYXNlIENTU1Byb3BlcnR5V2Vi
a2l0Qm9yZGVySW1hZ2U6Ci0gICAgICAgICAgICByZXR1cm4gdmFsdWVGb3JOaW5lUGllY2VJbWFn
ZShzdHlsZS5ib3JkZXJJbWFnZSgpLCBzdHlsZSk7CisgICAgICAgICAgICByZXR1cm4gdmFsdWVG
b3JOaW5lUGllY2VJbWFnZShwcm9wZXJ0eUlELCBzdHlsZS5ib3JkZXJJbWFnZSgpLCBzdHlsZSk7
CiAgICAgICAgIGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJJbWFnZU91dHNldDoKICAgICAgICAgICAg
IHJldHVybiB2YWx1ZUZvck5pbmVQaWVjZUltYWdlUXVhZChzdHlsZS5ib3JkZXJJbWFnZSgpLm91
dHNldCgpLCBzdHlsZSk7CiAgICAgICAgIGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJJbWFnZVJlcGVh
dDoKQEAgLTM4MDgsNyArMzgyMyw3IEBAIFJlZlB0cjxDU1NWYWx1ZT4gQ29tcHV0ZWRTdHlsZUV4
dHJhY3Rvcjo6dmFsdWVGb3JQcm9wZXJ0eUluU3R5bGUoY29uc3QgUmVuZGVyU3R5CiAgICAgICAg
IGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJJbWFnZVdpZHRoOgogICAgICAgICAgICAgcmV0dXJuIHZh
bHVlRm9yTmluZVBpZWNlSW1hZ2VRdWFkKHN0eWxlLmJvcmRlckltYWdlKCkuYm9yZGVyU2xpY2Vz
KCksIHN0eWxlKTsKICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdE1hc2tCb3hJbWFnZToK
LSAgICAgICAgICAgIHJldHVybiB2YWx1ZUZvck5pbmVQaWVjZUltYWdlKHN0eWxlLm1hc2tCb3hJ
bWFnZSgpLCBzdHlsZSk7CisgICAgICAgICAgICByZXR1cm4gdmFsdWVGb3JOaW5lUGllY2VJbWFn
ZShwcm9wZXJ0eUlELCBzdHlsZS5tYXNrQm94SW1hZ2UoKSwgc3R5bGUpOwogICAgICAgICBjYXNl
IENTU1Byb3BlcnR5V2Via2l0TWFza0JveEltYWdlT3V0c2V0OgogICAgICAgICAgICAgcmV0dXJu
IHZhbHVlRm9yTmluZVBpZWNlSW1hZ2VRdWFkKHN0eWxlLm1hc2tCb3hJbWFnZSgpLm91dHNldCgp
LCBzdHlsZSk7CiAgICAgICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2VSZXBl
YXQ6CkBAIC00MDQ4LDggKzQwNjMsNiBAQCBSZWZQdHI8Q1NTVmFsdWU+IENvbXB1dGVkU3R5bGVF
eHRyYWN0b3I6OnZhbHVlRm9yUHJvcGVydHlJblN0eWxlKGNvbnN0IFJlbmRlclN0eQogICAgICAg
ICAgICAgcmV0dXJuIGdldENTU1Byb3BlcnR5VmFsdWVzRm9yNFNpZGVzU2hvcnRoYW5kKGJvcmRl
ckNvbG9yU2hvcnRoYW5kKCkpOwogICAgICAgICBjYXNlIENTU1Byb3BlcnR5Qm9yZGVyTGVmdDoK
ICAgICAgICAgICAgIHJldHVybiBnZXRDU1NQcm9wZXJ0eVZhbHVlc0ZvclNob3J0aGFuZFByb3Bl
cnRpZXMoYm9yZGVyTGVmdFNob3J0aGFuZCgpKTsKLSAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eUJv
cmRlckltYWdlOgotICAgICAgICAgICAgcmV0dXJuIHZhbHVlRm9yTmluZVBpZWNlSW1hZ2Uoc3R5
bGUuYm9yZGVySW1hZ2UoKSwgc3R5bGUpOwogICAgICAgICBjYXNlIENTU1Byb3BlcnR5Qm9yZGVy
SW5saW5lOiB7CiAgICAgICAgICAgICBhdXRvIHZhbHVlID0gcHJvcGVydHlWYWx1ZShDU1NQcm9w
ZXJ0eUJvcmRlcklubGluZVN0YXJ0LCBEb05vdFVwZGF0ZUxheW91dCk7CiAgICAgICAgICAgICBp
ZiAoIWNvbXBhcmVDU1NWYWx1ZVB0cjxDU1NWYWx1ZT4odmFsdWUsIHByb3BlcnR5VmFsdWUoQ1NT
UHJvcGVydHlCb3JkZXJJbmxpbmVFbmQsIERvTm90VXBkYXRlTGF5b3V0KSkpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVydGllcy5qc29uIGIvU291cmNlL1dlYkNvcmUv
Y3NzL0NTU1Byb3BlcnRpZXMuanNvbgppbmRleCBiZjA2ZDI0ZGE4YWIxMGZmNjc2Y2FkNzY2ZjI5
MTA3OTY1ZjE1MjI3Li5lMjE2NTkyZDkzMDg3ZjMyYTdhZmYzOGNmZjQyMDNhMDk2MDczZTA1IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVydGllcy5qc29uCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0aWVzLmpzb24KQEAgLTUzMzgsOCArNTMzOCwyMCBA
QAogICAgICAgICB9LAogICAgICAgICAiLXdlYmtpdC1ib3JkZXItaW1hZ2UiOiB7CiAgICAgICAg
ICAgICAiY29kZWdlbi1wcm9wZXJ0aWVzIjogewotICAgICAgICAgICAgICAgICJpbml0aWFsIjog
ImluaXRpYWxOaW5lUGllY2VJbWFnZSIsCi0gICAgICAgICAgICAgICAgImNvbnZlcnRlciI6ICJC
b3JkZXJJbWFnZTxDU1NQcm9wZXJ0eVdlYmtpdEJvcmRlckltYWdlPiIKKyAgICAgICAgICAgICAg
ICAibG9uZ2hhbmRzIjogWworICAgICAgICAgICAgICAgICAgICAiYm9yZGVyLXRvcC13aWR0aCIs
CisgICAgICAgICAgICAgICAgICAgICJib3JkZXItcmlnaHQtd2lkdGgiLAorICAgICAgICAgICAg
ICAgICAgICAiYm9yZGVyLWJvdHRvbS13aWR0aCIsCisgICAgICAgICAgICAgICAgICAgICJib3Jk
ZXItbGVmdC13aWR0aCIsCisgICAgICAgICAgICAgICAgICAgICJib3JkZXItaW1hZ2Utc291cmNl
IiwKKyAgICAgICAgICAgICAgICAgICAgImJvcmRlci1pbWFnZS1zbGljZSIsCisgICAgICAgICAg
ICAgICAgICAgICJib3JkZXItaW1hZ2Utd2lkdGgiLAorICAgICAgICAgICAgICAgICAgICAiYm9y
ZGVyLWltYWdlLW91dHNldCIsCisgICAgICAgICAgICAgICAgICAgICJib3JkZXItaW1hZ2UtcmVw
ZWF0IgorICAgICAgICAgICAgICAgIF0KKyAgICAgICAgICAgIH0sCisgICAgICAgICAgICAic3Rh
dHVzIjogeworICAgICAgICAgICAgICAgICJjb21tZW50IjogIkRpZmZlcnMgZnJvbSBib3JkZXIt
aW1hZ2UgaW4gdGhhdCBpdCBhbHdheXMgaW5jbHVkZXMgdGhlICdmaWxsJyBrZXl3b3JkIGluICdi
b3JkZXItaW1hZ2Utc2xpY2UnLCBhbmQgaXQgc2V0cyAnYm9yZGVyLSotd2lkdGgnIGlmIHRoZSBj
b3JyZXNwb25kaW5nIHNsaWNlIG9mZnNldCBpcy4iCiAgICAgICAgICAgICB9CiAgICAgICAgIH0s
CiAgICAgICAgICItd2Via2l0LWJvcmRlci1yYWRpdXMiOiB7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9jc3MvQ1NTVG9TdHlsZU1hcC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVG9T
dHlsZU1hcC5jcHAKaW5kZXggOTQ2NjA1MTM1MDUzYWI1ZDM2ODc4Y2NiZjMyMTViOTNhNzEyNThh
OS4uNDE5ZmViOTdhNTZiYTYzY2NjM2I4OGNjOTBkN2U0OGE3MDIzNWFlMSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvY3NzL0NTU1RvU3R5bGVNYXAuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9DU1NUb1N0eWxlTWFwLmNwcApAQCAtNDcxLDcgKzQ3MSw3IEBAIHZvaWQgQ1NTVG9TdHls
ZU1hcDo6bWFwQW5pbWF0aW9uQ29tcG9zaXRlT3BlcmF0aW9uKEFuaW1hdGlvbiYgYW5pbWF0aW9u
LCBjb25zdCBDCiAgICAgICAgIGFuaW1hdGlvbi5zZXRDb21wb3NpdGVPcGVyYXRpb24oKmNvbXBv
c2l0ZU9wZXJhdGlvbik7CiB9CiAKLXZvaWQgQ1NTVG9TdHlsZU1hcDo6bWFwTmluZVBpZWNlSW1h
Z2UoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eSwgQ1NTVmFsdWUqIHZhbHVlLCBOaW5lUGllY2VJbWFn
ZSYgaW1hZ2UpCit2b2lkIENTU1RvU3R5bGVNYXA6Om1hcE5pbmVQaWVjZUltYWdlKENTU1ZhbHVl
KiB2YWx1ZSwgTmluZVBpZWNlSW1hZ2UmIGltYWdlKQogewogICAgIC8vIElmIHdlJ3JlIG5vdCBh
IHZhbHVlIGxpc3QsIHRoZW4gd2UgYXJlICJub25lIiBhbmQgZG9uJ3QgbmVlZCB0byBhbHRlciB0
aGUgZW1wdHkgaW1hZ2UgYXQgYWxsLgogICAgIGlmICghaXM8Q1NTVmFsdWVMaXN0Pih2YWx1ZSkp
CkBAIC01MDMsMjAgKzUwMyw2IEBAIHZvaWQgQ1NTVG9TdHlsZU1hcDo6bWFwTmluZVBpZWNlSW1h
Z2UoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eSwgQ1NTVmFsdWUqIHZhbHVlLCBOCiAgICAgICAgICAg
ICBtYXBOaW5lUGllY2VJbWFnZVJlcGVhdChjdXJyZW50LCBpbWFnZSk7CiAgICAgICAgIH0KICAg
ICB9Ci0KLSAgICBpZiAocHJvcGVydHkgPT0gQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJJbWFnZSkg
ewotICAgICAgICAvLyBXZSBoYXZlIHRvIHByZXNlcnZlIHRoZSBsZWdhY3kgYmVoYXZpb3Igb2Yg
LXdlYmtpdC1ib3JkZXItaW1hZ2UgYW5kIG1ha2UgdGhlIGJvcmRlciBzbGljZXMKLSAgICAgICAg
Ly8gYWxzbyBzZXQgdGhlIGJvcmRlciB3aWR0aHMuIFdlIGRvbid0IG5lZWQgdG8gd29ycnkgYWJv
dXQgcGVyY2VudGFnZXMsIHNpbmNlIHdlIGRvbid0IGV2ZW4gc3VwcG9ydAotICAgICAgICAvLyB0
aG9zZSBvbiByZWFsIGJvcmRlcnMgeWV0LgotICAgICAgICBpZiAoaW1hZ2UuYm9yZGVyU2xpY2Vz
KCkudG9wKCkuaXNGaXhlZCgpKQotICAgICAgICAgICAgc3R5bGUoKS0+c2V0Qm9yZGVyVG9wV2lk
dGgoaW1hZ2UuYm9yZGVyU2xpY2VzKCkudG9wKCkudmFsdWUoKSk7Ci0gICAgICAgIGlmIChpbWFn
ZS5ib3JkZXJTbGljZXMoKS5yaWdodCgpLmlzRml4ZWQoKSkKLSAgICAgICAgICAgIHN0eWxlKCkt
PnNldEJvcmRlclJpZ2h0V2lkdGgoaW1hZ2UuYm9yZGVyU2xpY2VzKCkucmlnaHQoKS52YWx1ZSgp
KTsKLSAgICAgICAgaWYgKGltYWdlLmJvcmRlclNsaWNlcygpLmJvdHRvbSgpLmlzRml4ZWQoKSkK
LSAgICAgICAgICAgIHN0eWxlKCktPnNldEJvcmRlckJvdHRvbVdpZHRoKGltYWdlLmJvcmRlclNs
aWNlcygpLmJvdHRvbSgpLnZhbHVlKCkpOwotICAgICAgICBpZiAoaW1hZ2UuYm9yZGVyU2xpY2Vz
KCkubGVmdCgpLmlzRml4ZWQoKSkKLSAgICAgICAgICAgIHN0eWxlKCktPnNldEJvcmRlckxlZnRX
aWR0aChpbWFnZS5ib3JkZXJTbGljZXMoKS5sZWZ0KCkudmFsdWUoKSk7Ci0gICAgfQogfQogCiB2
b2lkIENTU1RvU3R5bGVNYXA6Om1hcE5pbmVQaWVjZUltYWdlU2xpY2UoQ1NTVmFsdWUmIHZhbHVl
LCBOaW5lUGllY2VJbWFnZSYgaW1hZ2UpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3Mv
Q1NTVG9TdHlsZU1hcC5oIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1RvU3R5bGVNYXAuaAppbmRl
eCA0YzliYjQ0Y2I5MzI4OGRmNzY0ZTA1OTBhMzZkYmVjN2IxZmY3OGM5Li5mZWE3NWRiOTRmMWJm
YjlkMmNkMmE5NDI4NmRlMjA0OTA3YzYyZDU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTVG9TdHlsZU1hcC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NUb1N0eWxlTWFw
LmgKQEAgLTcwLDcgKzcwLDcgQEAgcHVibGljOgogICAgIHZvaWQgbWFwQW5pbWF0aW9uVGltaW5n
RnVuY3Rpb24oQW5pbWF0aW9uJiwgY29uc3QgQ1NTVmFsdWUmKTsKICAgICB2b2lkIG1hcEFuaW1h
dGlvbkNvbXBvc2l0ZU9wZXJhdGlvbihBbmltYXRpb24mLCBjb25zdCBDU1NWYWx1ZSYpOwogCi0g
ICAgdm9pZCBtYXBOaW5lUGllY2VJbWFnZShDU1NQcm9wZXJ0eUlELCBDU1NWYWx1ZSosIE5pbmVQ
aWVjZUltYWdlJik7CisgICAgdm9pZCBtYXBOaW5lUGllY2VJbWFnZShDU1NWYWx1ZSosIE5pbmVQ
aWVjZUltYWdlJik7CiAgICAgdm9pZCBtYXBOaW5lUGllY2VJbWFnZVNsaWNlKENTU1ZhbHVlJiwg
TmluZVBpZWNlSW1hZ2UmKTsKICAgICBMZW5ndGhCb3ggbWFwTmluZVBpZWNlSW1hZ2VRdWFkKENT
U1ZhbHVlJik7CiAgICAgdm9pZCBtYXBOaW5lUGllY2VJbWFnZVJlcGVhdChDU1NWYWx1ZSYsIE5p
bmVQaWVjZUltYWdlJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVQcm9w
ZXJ0aWVzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVByb3BlcnRpZXMuY3BwCmluZGV4
IGYwNDEzYzE3ZmZmYTI4MzgxMWZlMjUxN2ZkZmQ2MWJjZGNmOGIyNTkuLjdkOWNmZmFhYzIyN2Zl
ZTAxYjdiOWVhMzdlMjhiMzk4NDUwOTQ5NjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nz
cy9TdHlsZVByb3BlcnRpZXMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVByb3Bl
cnRpZXMuY3BwCkBAIC0yMTksNyArMjE5LDggQEAgU3RyaW5nIFN0eWxlUHJvcGVydGllczo6Z2V0
UHJvcGVydHlWYWx1ZShDU1NQcm9wZXJ0eUlEIHByb3BlcnR5SUQpIGNvbnN0CiAgICAgY2FzZSBD
U1NQcm9wZXJ0eUJvcmRlckJsb2NrRW5kOgogICAgICAgICByZXR1cm4gZ2V0U2hvcnRoYW5kVmFs
dWUoYm9yZGVyQmxvY2tFbmRTaG9ydGhhbmQoKSk7CiAgICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRl
ckltYWdlOgotICAgICAgICByZXR1cm4gYm9yZGVySW1hZ2VQcm9wZXJ0eVZhbHVlKCk7CisgICAg
Y2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEJvcmRlckltYWdlOgorICAgICAgICByZXR1cm4gYm9yZGVy
SW1hZ2VQcm9wZXJ0eVZhbHVlKHByb3BlcnR5SUQpOwogICAgIGNhc2UgQ1NTUHJvcGVydHlCb3Jk
ZXJJbmxpbmU6CiAgICAgICAgIHJldHVybiBib3JkZXJQcm9wZXJ0eVZhbHVlKGJvcmRlcklubGlu
ZVdpZHRoU2hvcnRoYW5kKCksIGJvcmRlcklubGluZVN0eWxlU2hvcnRoYW5kKCksIGJvcmRlcklu
bGluZUNvbG9yU2hvcnRoYW5kKCkpOwogICAgIGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJJbmxpbmVD
b2xvcjoKQEAgLTkwMyw3ICs5MDQsNyBAQCBTdHJpbmcgU3R5bGVQcm9wZXJ0aWVzOjpnZXRBbGln
bm1lbnRTaG9ydGhhbmRWYWx1ZShjb25zdCBTdHlsZVByb3BlcnR5U2hvcnRoYW5kJgogICAgIHJl
dHVybiB2YWx1ZTsKIH0KIAotU3RyaW5nIFN0eWxlUHJvcGVydGllczo6Ym9yZGVySW1hZ2VQcm9w
ZXJ0eVZhbHVlKCkgY29uc3QKK1N0cmluZyBTdHlsZVByb3BlcnRpZXM6OmJvcmRlckltYWdlUHJv
cGVydHlWYWx1ZShDU1NQcm9wZXJ0eUlEIHByb3BlcnR5SUQpIGNvbnN0CiB7CiAgICAgY29uc3Qg
U3R5bGVQcm9wZXJ0eVNob3J0aGFuZCYgc2hvcnRoYW5kID0gYm9yZGVySW1hZ2VTaG9ydGhhbmQo
KTsKICAgICBTdHJpbmdCdWlsZGVyIHJlc3VsdDsKQEAgLTk0OCw2ICs5NDksMjkgQEAgU3RyaW5n
IFN0eWxlUHJvcGVydGllczo6Ym9yZGVySW1hZ2VQcm9wZXJ0eVZhbHVlKCkgY29uc3QKICAgICAg
ICAgaWYgKCFjb21tb25XaWRlVmFsdWVUZXh0LmlzTnVsbCgpKQogICAgICAgICAgICAgcmV0dXJu
IFN0cmluZygpOwogCisgICAgICAgIC8vIC13ZWJraXQtYm9yZGVyLWltYWdlIGhhcyBhIGxlZ2Fj
eSBiZWhhdmlvciB0aGF0IG1ha2VzIGZpeGVkIGJvcmRlciBzbGljZXMgYWxzbyBzZXQgdGhlIGJv
cmRlciB3aWR0aHMuCisgICAgICAgIC8vIFNvIGlmIHRoZXkgYXJlIGZpeGVkIGJ1dCB0aGUgYm9y
ZGVyIHdpZHRocyBkb24ndCBtYXRjaCwgLXdlYmtpdC1ib3JkZXItaW1hZ2UgY2FuJ3QgcmVwcmVz
ZW50IHRoZSBjdXJyZW50IHN0YXRlLgorICAgICAgICBpZiAocHJvcGVydHlJRCA9PSBDU1NQcm9w
ZXJ0eVdlYmtpdEJvcmRlckltYWdlICYmIGxvbmdoYW5kID09IENTU1Byb3BlcnR5Qm9yZGVySW1h
Z2VXaWR0aCAmJiBpczxDU1NQcmltaXRpdmVWYWx1ZT4oKnZhbHVlKSkgeworICAgICAgICAgICAg
aWYgKFF1YWQqIHF1YWQgPSBkb3duY2FzdDxDU1NQcmltaXRpdmVWYWx1ZT4oKnZhbHVlKS5xdWFk
VmFsdWUoKSkgeworICAgICAgICAgICAgICAgIGF1dG8gaXNNaXNtYXRjaGluZ0xlbmd0aCA9IFsm
XShDU1NQcm9wZXJ0eUlEIG1hdGNoaW5nSUQsIFJlZlB0cjxDU1NQcmltaXRpdmVWYWx1ZT4gdmFs
dWUpIHsKKyAgICAgICAgICAgICAgICAgICAgaWYgKCF2YWx1ZSB8fCAhdmFsdWUtPmlzTGVuZ3Ro
KCkpCisgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICAgICAgICAg
ICAgICAgIGF1dG8gbWF0Y2hpbmdWYWx1ZSA9IGdldFByb3BlcnR5Q1NTVmFsdWUobWF0Y2hpbmdJ
RCk7CisgICAgICAgICAgICAgICAgICAgIGlmIChtYXRjaGluZ1ZhbHVlID09IHZhbHVlKQorICAg
ICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICAgICAgICAgICAgICBy
ZXR1cm4gIW1hdGNoaW5nVmFsdWUgfHwgKm1hdGNoaW5nVmFsdWUgIT0gKnZhbHVlIHx8IHByb3Bl
cnR5SXNJbXBvcnRhbnQobWF0Y2hpbmdJRCkgIT0gY3VycmVudFByb3BlcnR5SXNJbXBvcnRhbnQ7
CisgICAgICAgICAgICAgICAgfTsKKyAgICAgICAgICAgICAgICBpZiAoaXNNaXNtYXRjaGluZ0xl
bmd0aChDU1NQcm9wZXJ0eUJvcmRlclRvcFdpZHRoLCBxdWFkLT50b3AoKSkpCisgICAgICAgICAg
ICAgICAgICAgIHJldHVybiBTdHJpbmcoKTsKKyAgICAgICAgICAgICAgICBpZiAoaXNNaXNtYXRj
aGluZ0xlbmd0aChDU1NQcm9wZXJ0eUJvcmRlclJpZ2h0V2lkdGgsIHF1YWQtPnJpZ2h0KCkpKQor
ICAgICAgICAgICAgICAgICAgICByZXR1cm4gU3RyaW5nKCk7CisgICAgICAgICAgICAgICAgaWYg
KGlzTWlzbWF0Y2hpbmdMZW5ndGgoQ1NTUHJvcGVydHlCb3JkZXJCb3R0b21XaWR0aCwgcXVhZC0+
Ym90dG9tKCkpKQorICAgICAgICAgICAgICAgICAgICByZXR1cm4gU3RyaW5nKCk7CisgICAgICAg
ICAgICAgICAgaWYgKGlzTWlzbWF0Y2hpbmdMZW5ndGgoQ1NTUHJvcGVydHlCb3JkZXJMZWZ0V2lk
dGgsIHF1YWQtPmxlZnQoKSkpCisgICAgICAgICAgICAgICAgICAgIHJldHVybiBTdHJpbmcoKTsK
KyAgICAgICAgICAgIH0KKyAgICAgICAgfQorCiAgICAgICAgIC8vIEFwcGVuZCBzZXBhcmF0b3Ig
YW5kIHRleHQuCiAgICAgICAgIGlmIChsb25naGFuZCA9PSBDU1NQcm9wZXJ0eUJvcmRlckltYWdl
V2lkdGgpCiAgICAgICAgICAgICBzZXBhcmF0b3IgPSAiIC8gIjsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9TdHlsZVByb3BlcnRpZXMuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHls
ZVByb3BlcnRpZXMuaAppbmRleCBkZDM5MGQ1OTIyZGM3YmQzY2YwYjhlMjZjZGFhMzJmZmExNmZl
ZmRjLi5kYTVjZjYxM2JlMWYwMmQ3NDBiYjBiNmIyZWUwOWMzNDdiNjFjYzI1IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVQcm9wZXJ0aWVzLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvY3NzL1N0eWxlUHJvcGVydGllcy5oCkBAIC0xNjUsNyArMTY1LDcgQEAgcHJpdmF0ZToKICAg
ICBTdHJpbmcgZ2V0U2hvcnRoYW5kVmFsdWUoY29uc3QgU3R5bGVQcm9wZXJ0eVNob3J0aGFuZCYs
IGNvbnN0IGNoYXIqIHNlcGFyYXRvciA9ICIgIikgY29uc3Q7CiAgICAgU3RyaW5nIGdldENvbW1v
blZhbHVlKGNvbnN0IFN0eWxlUHJvcGVydHlTaG9ydGhhbmQmKSBjb25zdDsKICAgICBTdHJpbmcg
Z2V0QWxpZ25tZW50U2hvcnRoYW5kVmFsdWUoY29uc3QgU3R5bGVQcm9wZXJ0eVNob3J0aGFuZCYp
IGNvbnN0OwotICAgIFN0cmluZyBib3JkZXJJbWFnZVByb3BlcnR5VmFsdWUoKSBjb25zdDsKKyAg
ICBTdHJpbmcgYm9yZGVySW1hZ2VQcm9wZXJ0eVZhbHVlKENTU1Byb3BlcnR5SUQpIGNvbnN0Owog
ICAgIFN0cmluZyBib3JkZXJQcm9wZXJ0eVZhbHVlKGNvbnN0IFN0eWxlUHJvcGVydHlTaG9ydGhh
bmQmLCBjb25zdCBTdHlsZVByb3BlcnR5U2hvcnRoYW5kJiwgY29uc3QgU3R5bGVQcm9wZXJ0eVNo
b3J0aGFuZCYpIGNvbnN0OwogICAgIFN0cmluZyBwYWdlQnJlYWtQcm9wZXJ0eVZhbHVlKGNvbnN0
IFN0eWxlUHJvcGVydHlTaG9ydGhhbmQmKSBjb25zdDsKICAgICBTdHJpbmcgZ2V0TGF5ZXJlZFNo
b3J0aGFuZFZhbHVlKGNvbnN0IFN0eWxlUHJvcGVydHlTaG9ydGhhbmQmKSBjb25zdDsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXIuY3BwIGIv
U291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlci5jcHAKaW5kZXggYzVm
MzQ0MTY1ZjQ2MTYyZmY4ZWQxMTAzYTgwYjg4YWUxOTA2MjM3Zi4uMGFhYzE1MjUwY2MyYjY0OWUz
YTRkYmVmZjIzZGY5YzA3ODNjNWYxNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL3Bh
cnNlci9DU1NQcm9wZXJ0eVBhcnNlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNl
ci9DU1NQcm9wZXJ0eVBhcnNlci5jcHAKQEAgLTQ2MjEsNyArNDYyMSw2IEBAIFJlZlB0cjxDU1NW
YWx1ZT4gQ1NTUHJvcGVydHlQYXJzZXI6OnBhcnNlU2luZ2xlVmFsdWUoQ1NTUHJvcGVydHlJRCBw
cm9wZXJ0eSwgQ1NTCiAgICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlckltYWdlV2lkdGg6CiAgICAg
Y2FzZSBDU1NQcm9wZXJ0eVdlYmtpdE1hc2tCb3hJbWFnZVdpZHRoOgogICAgICAgICByZXR1cm4g
Y29uc3VtZUJvcmRlckltYWdlV2lkdGgobV9yYW5nZSk7Ci0gICAgY2FzZSBDU1NQcm9wZXJ0eVdl
YmtpdEJvcmRlckltYWdlOgogICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2U6
CiAgICAgICAgIHJldHVybiBjb25zdW1lV2Via2l0Qm9yZGVySW1hZ2UocHJvcGVydHksIG1fcmFu
Z2UsIG1fY29udGV4dCk7CiAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEJveFJlZmxlY3Q6CkBA
IC01NTQ5LDE4ICs1NTQ4LDM1IEBAIGJvb2wgQ1NTUHJvcGVydHlQYXJzZXI6OmNvbnN1bWVCb3Jk
ZXJJbWFnZShDU1NQcm9wZXJ0eUlEIHByb3BlcnR5LCBib29sIGltcG9ydGFuCiAgICAgICAgIGF1
dG8mIHZhbHVlUG9vbCA9IENTU1ZhbHVlUG9vbDo6c2luZ2xldG9uKCk7CiAgICAgICAgIHN3aXRj
aCAocHJvcGVydHkpIHsKICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdE1hc2tCb3hJbWFn
ZToKLSAgICAgICAgICAgIGFkZFByb3BlcnR5V2l0aEltcGxpY2l0RGVmYXVsdChDU1NQcm9wZXJ0
eVdlYmtpdE1hc2tCb3hJbWFnZVNvdXJjZSwgQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2Us
IFdURk1vdmUoc291cmNlKSwgdmFsdWVQb29sLmNyZWF0ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCks
IGltcG9ydGFudCk7Ci0gICAgICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNpdERlZmF1bHQo
Q1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2VTbGljZSwgQ1NTUHJvcGVydHlXZWJraXRNYXNr
Qm94SW1hZ2UsIFdURk1vdmUoc2xpY2UpLCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFs
VmFsdWUoKSwgaW1wb3J0YW50KTsKLSAgICAgICAgICAgIGFkZFByb3BlcnR5V2l0aEltcGxpY2l0
RGVmYXVsdChDU1NQcm9wZXJ0eVdlYmtpdE1hc2tCb3hJbWFnZVdpZHRoLCBDU1NQcm9wZXJ0eVdl
YmtpdE1hc2tCb3hJbWFnZSwgV1RGTW92ZSh3aWR0aCksIHZhbHVlUG9vbC5jcmVhdGVJbXBsaWNp
dEluaXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQpOwotICAgICAgICAgICAgYWRkUHJvcGVydHlXaXRo
SW1wbGljaXREZWZhdWx0KENTU1Byb3BlcnR5V2Via2l0TWFza0JveEltYWdlT3V0c2V0LCBDU1NQ
cm9wZXJ0eVdlYmtpdE1hc2tCb3hJbWFnZSwgV1RGTW92ZShvdXRzZXQpLCB2YWx1ZVBvb2wuY3Jl
YXRlSW1wbGljaXRJbml0aWFsVmFsdWUoKSwgaW1wb3J0YW50KTsKLSAgICAgICAgICAgIGFkZFBy
b3BlcnR5V2l0aEltcGxpY2l0RGVmYXVsdChDU1NQcm9wZXJ0eVdlYmtpdE1hc2tCb3hJbWFnZVJl
cGVhdCwgQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2UsIFdURk1vdmUocmVwZWF0KSwgdmFs
dWVQb29sLmNyZWF0ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCksIGltcG9ydGFudCk7CisgICAgICAg
ICAgICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNpdERlZmF1bHQoQ1NTUHJvcGVydHlXZWJraXRNYXNr
Qm94SW1hZ2VTb3VyY2UsIHByb3BlcnR5LCBXVEZNb3ZlKHNvdXJjZSksIHZhbHVlUG9vbC5jcmVh
dGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQpOworICAgICAgICAgICAgYWRkUHJv
cGVydHlXaXRoSW1wbGljaXREZWZhdWx0KENTU1Byb3BlcnR5V2Via2l0TWFza0JveEltYWdlU2xp
Y2UsIHByb3BlcnR5LCBXVEZNb3ZlKHNsaWNlKSwgdmFsdWVQb29sLmNyZWF0ZUltcGxpY2l0SW5p
dGlhbFZhbHVlKCksIGltcG9ydGFudCk7CisgICAgICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJbXBs
aWNpdERlZmF1bHQoQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2VXaWR0aCwgcHJvcGVydHks
IFdURk1vdmUod2lkdGgpLCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFsdWUoKSwg
aW1wb3J0YW50KTsKKyAgICAgICAgICAgIGFkZFByb3BlcnR5V2l0aEltcGxpY2l0RGVmYXVsdChD
U1NQcm9wZXJ0eVdlYmtpdE1hc2tCb3hJbWFnZU91dHNldCwgcHJvcGVydHksIFdURk1vdmUob3V0
c2V0KSwgdmFsdWVQb29sLmNyZWF0ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCksIGltcG9ydGFudCk7
CisgICAgICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNpdERlZmF1bHQoQ1NTUHJvcGVydHlX
ZWJraXRNYXNrQm94SW1hZ2VSZXBlYXQsIHByb3BlcnR5LCBXVEZNb3ZlKHJlcGVhdCksIHZhbHVl
UG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQpOwogICAgICAgICAg
ICAgcmV0dXJuIHRydWU7CisgICAgICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJJbWFn
ZToKKyAgICAgICAgICAgIC8vIFdlIGhhdmUgdG8gcHJlc2VydmUgdGhlIGxlZ2FjeSBiZWhhdmlv
ciBvZiAtd2Via2l0LWJvcmRlci1pbWFnZSBhbmQgbWFrZSB0aGUgYm9yZGVyIHNsaWNlcworICAg
ICAgICAgICAgLy8gYWxzbyBzZXQgdGhlIGJvcmRlciB3aWR0aHMuIFdlIGRvbid0IG5lZWQgdG8g
d29ycnkgYWJvdXQgcGVyY2VudGFnZXMsIHNpbmNlIHdlIGRvbid0IGV2ZW4gc3VwcG9ydAorICAg
ICAgICAgICAgLy8gdGhvc2Ugb24gcmVhbCBib3JkZXJzIHlldC4KKyAgICAgICAgICAgIGlmICh3
aWR0aCAmJiBpczxDU1NQcmltaXRpdmVWYWx1ZT4oKndpZHRoKSkgeworICAgICAgICAgICAgICAg
IGlmIChRdWFkKiBxdWFkID0gZG93bmNhc3Q8Q1NTUHJpbWl0aXZlVmFsdWU+KCp3aWR0aCkucXVh
ZFZhbHVlKCkpIHsKKyAgICAgICAgICAgICAgICAgICAgYXV0byBhZGRQcm9wZXJ0eUlmTGVuZ3Ro
ID0gWyZdKENTU1Byb3BlcnR5SUQgbG9uZ2hhbmQsIFJlZlB0cjxDU1NQcmltaXRpdmVWYWx1ZT4g
dmFsdWUpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGlmICh2YWx1ZSAmJiB2YWx1ZS0+aXNM
ZW5ndGgoKSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGRQcm9wZXJ0eShsb25naGFu
ZCwgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJJbWFnZSwgdmFsdWUucmVsZWFzZU5vbk51bGwoKSwg
aW1wb3J0YW50KTsKKyAgICAgICAgICAgICAgICAgICAgfTsKKyAgICAgICAgICAgICAgICAgICAg
YWRkUHJvcGVydHlJZkxlbmd0aChDU1NQcm9wZXJ0eUJvcmRlclRvcFdpZHRoLCBxdWFkLT50b3Ao
KSk7CisgICAgICAgICAgICAgICAgICAgIGFkZFByb3BlcnR5SWZMZW5ndGgoQ1NTUHJvcGVydHlC
b3JkZXJSaWdodFdpZHRoLCBxdWFkLT5yaWdodCgpKTsKKyAgICAgICAgICAgICAgICAgICAgYWRk
UHJvcGVydHlJZkxlbmd0aChDU1NQcm9wZXJ0eUJvcmRlckJvdHRvbVdpZHRoLCBxdWFkLT5ib3R0
b20oKSk7CisgICAgICAgICAgICAgICAgICAgIGFkZFByb3BlcnR5SWZMZW5ndGgoQ1NTUHJvcGVy
dHlCb3JkZXJMZWZ0V2lkdGgsIHF1YWQtPmxlZnQoKSk7CisgICAgICAgICAgICAgICAgfQorICAg
ICAgICAgICAgfQorICAgICAgICAgICAgRkFMTFRIUk9VR0g7CiAgICAgICAgIGNhc2UgQ1NTUHJv
cGVydHlCb3JkZXJJbWFnZToKLSAgICAgICAgICAgIGFkZFByb3BlcnR5V2l0aEltcGxpY2l0RGVm
YXVsdChDU1NQcm9wZXJ0eUJvcmRlckltYWdlU291cmNlLCBDU1NQcm9wZXJ0eUJvcmRlckltYWdl
LCBXVEZNb3ZlKHNvdXJjZSksIHZhbHVlUG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgp
LCBpbXBvcnRhbnQpOwotICAgICAgICAgICAgYWRkUHJvcGVydHlXaXRoSW1wbGljaXREZWZhdWx0
KENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VTbGljZSwgQ1NTUHJvcGVydHlCb3JkZXJJbWFnZSwgV1RG
TW92ZShzbGljZSksIHZhbHVlUG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgpLCBpbXBv
cnRhbnQpOwotICAgICAgICAgICAgYWRkUHJvcGVydHlXaXRoSW1wbGljaXREZWZhdWx0KENTU1By
b3BlcnR5Qm9yZGVySW1hZ2VXaWR0aCwgQ1NTUHJvcGVydHlCb3JkZXJJbWFnZSwgV1RGTW92ZSh3
aWR0aCksIHZhbHVlUG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQp
OwotICAgICAgICAgICAgYWRkUHJvcGVydHlXaXRoSW1wbGljaXREZWZhdWx0KENTU1Byb3BlcnR5
Qm9yZGVySW1hZ2VPdXRzZXQsIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2UsIFdURk1vdmUob3V0c2V0
KSwgdmFsdWVQb29sLmNyZWF0ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCksIGltcG9ydGFudCk7Ci0g
ICAgICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNpdERlZmF1bHQoQ1NTUHJvcGVydHlCb3Jk
ZXJJbWFnZVJlcGVhdCwgQ1NTUHJvcGVydHlCb3JkZXJJbWFnZSwgV1RGTW92ZShyZXBlYXQpLCB2
YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFsdWUoKSwgaW1wb3J0YW50KTsKKyAgICAg
ICAgICAgIGFkZFByb3BlcnR5V2l0aEltcGxpY2l0RGVmYXVsdChDU1NQcm9wZXJ0eUJvcmRlcklt
YWdlU291cmNlLCBwcm9wZXJ0eSwgV1RGTW92ZShzb3VyY2UpLCB2YWx1ZVBvb2wuY3JlYXRlSW1w
bGljaXRJbml0aWFsVmFsdWUoKSwgaW1wb3J0YW50KTsKKyAgICAgICAgICAgIGFkZFByb3BlcnR5
V2l0aEltcGxpY2l0RGVmYXVsdChDU1NQcm9wZXJ0eUJvcmRlckltYWdlU2xpY2UsIHByb3BlcnR5
LCBXVEZNb3ZlKHNsaWNlKSwgdmFsdWVQb29sLmNyZWF0ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCks
IGltcG9ydGFudCk7CisgICAgICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNpdERlZmF1bHQo
Q1NTUHJvcGVydHlCb3JkZXJJbWFnZVdpZHRoLCBwcm9wZXJ0eSwgV1RGTW92ZSh3aWR0aCksIHZh
bHVlUG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQpOworICAgICAg
ICAgICAgYWRkUHJvcGVydHlXaXRoSW1wbGljaXREZWZhdWx0KENTU1Byb3BlcnR5Qm9yZGVySW1h
Z2VPdXRzZXQsIHByb3BlcnR5LCBXVEZNb3ZlKG91dHNldCksIHZhbHVlUG9vbC5jcmVhdGVJbXBs
aWNpdEluaXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQpOworICAgICAgICAgICAgYWRkUHJvcGVydHlX
aXRoSW1wbGljaXREZWZhdWx0KENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VSZXBlYXQsIHByb3BlcnR5
LCBXVEZNb3ZlKHJlcGVhdCksIHZhbHVlUG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgp
LCBpbXBvcnRhbnQpOwogICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgIGRlZmF1bHQ6
CiAgICAgICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKQEAgLTY0NDIsNiArNjQ1OCw3IEBA
IGJvb2wgQ1NTUHJvcGVydHlQYXJzZXI6OnBhcnNlU2hvcnRoYW5kKENTU1Byb3BlcnR5SUQgcHJv
cGVydHksIGJvb2wgaW1wb3J0YW50KQogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9CiAgICAg
Y2FzZSBDU1NQcm9wZXJ0eUJvcmRlckltYWdlOgorICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRC
b3JkZXJJbWFnZToKICAgICAgICAgcmV0dXJuIGNvbnN1bWVCb3JkZXJJbWFnZShwcm9wZXJ0eSwg
aW1wb3J0YW50KTsKICAgICBjYXNlIENTU1Byb3BlcnR5UGFnZUJyZWFrQWZ0ZXI6CiAgICAgY2Fz
ZSBDU1NQcm9wZXJ0eVBhZ2VCcmVha0JlZm9yZToKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3N0eWxlL1Byb3BlcnR5Q2FzY2FkZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9Qcm9wZXJ0
eUNhc2NhZGUuY3BwCmluZGV4IDI0ZDgwYjE3MWZlY2JmNTgwYWY2ZTk3NWE2ZDk4MTU0ZWVkYzFk
ODYuLjJjMDNiZTA5YTZiZTQyZWIwN2M5NDBkYjM4NzNjYWZkYmQ0MzVlM2IgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3N0eWxlL1Byb3BlcnR5Q2FzY2FkZS5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvc3R5bGUvUHJvcGVydHlDYXNjYWRlLmNwcApAQCAtMzgsMjggKzM4LDQ4IEBACiBuYW1l
c3BhY2UgV2ViQ29yZSB7CiBuYW1lc3BhY2UgU3R5bGUgewogCi1zdGF0aWMgaW5saW5lIGJvb2wg
c2hvdWxkQXBwbHlQcm9wZXJ0eUluUGFyc2VPcmRlcihDU1NQcm9wZXJ0eUlEIHByb3BlcnR5SUQp
CitzdGF0aWMgaW5saW5lIENTU1Byb3BlcnR5SUQgZ2V0U3Vycm9nYXRlKENTU1Byb3BlcnR5SUQg
cHJvcGVydHlJRCkKIHsKICAgICBzd2l0Y2ggKHByb3BlcnR5SUQpIHsKKyAgICAvLyBUaGVzZSBz
aGFyZSBSZW5kZXJTdHlsZTo6YmFja2dyb3VuZENsaXAoKQogICAgIGNhc2UgQ1NTUHJvcGVydHlX
ZWJraXRCYWNrZ3JvdW5kQ2xpcDoKKyAgICAgICAgcmV0dXJuIENTU1Byb3BlcnR5QmFja2dyb3Vu
ZENsaXA7CiAgICAgY2FzZSBDU1NQcm9wZXJ0eUJhY2tncm91bmRDbGlwOgorICAgICAgICByZXR1
cm4gQ1NTUHJvcGVydHlXZWJraXRCYWNrZ3JvdW5kQ2xpcDsKKyAgICAvLyBUaGVzZSBzaGFyZSBS
ZW5kZXJTdHlsZTo6YmFja2dyb3VuZE9yaWdpbigpCiAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtp
dEJhY2tncm91bmRPcmlnaW46CisgICAgICAgIHJldHVybiBDU1NQcm9wZXJ0eUJhY2tncm91bmRP
cmlnaW47CiAgICAgY2FzZSBDU1NQcm9wZXJ0eUJhY2tncm91bmRPcmlnaW46CisgICAgICAgIHJl
dHVybiBDU1NQcm9wZXJ0eVdlYmtpdEJhY2tncm91bmRPcmlnaW47CisgICAgLy8gVGhlc2Ugc2hh
cmUgUmVuZGVyU3R5bGU6OmJhY2tncm91bmRTaXplVHlwZSgpIGFuZCBSZW5kZXJTdHlsZTo6YmFj
a2dyb3VuZFNpemVMZW5ndGgoKQogICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRCYWNrZ3JvdW5k
U2l6ZToKKyAgICAgICAgcmV0dXJuIENTU1Byb3BlcnR5QmFja2dyb3VuZFNpemU7CiAgICAgY2Fz
ZSBDU1NQcm9wZXJ0eUJhY2tncm91bmRTaXplOgotICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRC
b3JkZXJJbWFnZToKLSAgICBjYXNlIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2U6Ci0gICAgY2FzZSBD
U1NQcm9wZXJ0eUJvcmRlckltYWdlU2xpY2U6Ci0gICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlcklt
YWdlU291cmNlOgotICAgIGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJJbWFnZU91dHNldDoKLSAgICBj
YXNlIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VSZXBlYXQ6Ci0gICAgY2FzZSBDU1NQcm9wZXJ0eUJv
cmRlckltYWdlV2lkdGg6CisgICAgICAgIHJldHVybiBDU1NQcm9wZXJ0eVdlYmtpdEJhY2tncm91
bmRTaXplOworICAgIC8vIFRoZXNlIHNoYXJlIFJlbmRlclN0eWxlOjpib3hTaGFkb3coKQogICAg
IGNhc2UgQ1NTUHJvcGVydHlXZWJraXRCb3hTaGFkb3c6CisgICAgICAgIHJldHVybiBDU1NQcm9w
ZXJ0eUJveFNoYWRvdzsKICAgICBjYXNlIENTU1Byb3BlcnR5Qm94U2hhZG93OgotICAgICAgICBy
ZXR1cm4gdHJ1ZTsKKyAgICAgICAgcmV0dXJuIENTU1Byb3BlcnR5V2Via2l0Qm94U2hhZG93Owog
ICAgIGRlZmF1bHQ6Ci0gICAgICAgIHJldHVybiBDU1NQcm9wZXJ0eTo6aXNJbkxvZ2ljYWxQcm9w
ZXJ0eUdyb3VwKHByb3BlcnR5SUQpOworICAgICAgICBBU1NFUlQoIUNTU1Byb3BlcnR5Ojppc0lu
TG9naWNhbFByb3BlcnR5R3JvdXAocHJvcGVydHlJRCkpOworICAgICAgICByZXR1cm4gQ1NTUHJv
cGVydHlJbnZhbGlkOworICAgIH0KK30KKworc3RhdGljIGlubGluZSBDU1NQcm9wZXJ0eUlEIGdl
dFN1cnJvZ2F0ZShDU1NQcm9wZXJ0eUlEIHByb3BlcnR5SUQsIFRleHREaXJlY3Rpb24gZGlyZWN0
aW9uLCBXcml0aW5nTW9kZSB3cml0aW5nTW9kZSkKK3sKKyAgICBpZiAoQ1NTUHJvcGVydHk6Omlz
SW5Mb2dpY2FsUHJvcGVydHlHcm91cChwcm9wZXJ0eUlEKSkgeworICAgICAgICBpZiAoQ1NTUHJv
cGVydHk6OmlzRGlyZWN0aW9uQXdhcmVQcm9wZXJ0eShwcm9wZXJ0eUlEKSkKKyAgICAgICAgICAg
IHJldHVybiBDU1NQcm9wZXJ0eTo6cmVzb2x2ZURpcmVjdGlvbkF3YXJlUHJvcGVydHkocHJvcGVy
dHlJRCwgZGlyZWN0aW9uLCB3cml0aW5nTW9kZSk7CisgICAgICAgIHJldHVybiBDU1NQcm9wZXJ0
eTo6dW5yZXNvbHZlUGh5c2ljYWxQcm9wZXJ0eShwcm9wZXJ0eUlELCBkaXJlY3Rpb24sIHdyaXRp
bmdNb2RlKTsKICAgICB9CisgICAgcmV0dXJuIGdldFN1cnJvZ2F0ZShwcm9wZXJ0eUlEKTsKK30K
Kworc3RhdGljIGlubGluZSBib29sIHNob3VsZEFwcGx5UHJvcGVydHlJblBhcnNlT3JkZXIoQ1NT
UHJvcGVydHlJRCBwcm9wZXJ0eUlEKQoreworICAgIHJldHVybiBDU1NQcm9wZXJ0eTo6aXNJbkxv
Z2ljYWxQcm9wZXJ0eUdyb3VwKHByb3BlcnR5SUQpIHx8IGdldFN1cnJvZ2F0ZShwcm9wZXJ0eUlE
KSAhPSBDU1NQcm9wZXJ0eUludmFsaWQ7CiB9CiAKIFByb3BlcnR5Q2FzY2FkZTo6UHJvcGVydHlD
YXNjYWRlKGNvbnN0IE1hdGNoUmVzdWx0JiBtYXRjaFJlc3VsdCwgQ2FzY2FkZUxldmVsIG1heGlt
dW1DYXNjYWRlTGV2ZWwsIEluY2x1ZGVkUHJvcGVydGllcyBpbmNsdWRlZFByb3BlcnRpZXMpCkBA
IC0xNTksNiArMTc5LDI1IEBAIHZvaWQgUHJvcGVydHlDYXNjYWRlOjpzZXREZWZlcnJlZChDU1NQ
cm9wZXJ0eUlEIGlkLCBDU1NWYWx1ZSYgY3NzVmFsdWUsIGNvbnN0IE1hCiAgICAgbV9kZWZlcnJl
ZFByb3BlcnRpZXMuYXBwZW5kKHByb3BlcnR5KTsKIH0KIAorY29uc3QgUHJvcGVydHlDYXNjYWRl
OjpQcm9wZXJ0eSogUHJvcGVydHlDYXNjYWRlOjpsYXN0RGVmZXJyZWRQcm9wZXJ0eUluY2x1ZGlu
Z1N1cnJvZ2F0ZXMoQ1NTUHJvcGVydHlJRCBpZCwgVGV4dERpcmVjdGlvbiBkaXJlY3Rpb24sIFdy
aXRpbmdNb2RlIHdyaXRpbmdNb2RlKSBjb25zdAoreworICAgIENTU1Byb3BlcnR5SUQgc3Vycm9n
YXRlID0gZ2V0U3Vycm9nYXRlKGlkLCBkaXJlY3Rpb24sIHdyaXRpbmdNb2RlKTsKKyAgICBpZiAo
c3Vycm9nYXRlID09IENTU1Byb3BlcnR5SW52YWxpZCkKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7
CisgICAgYm9vbCBoYXNQcm9wZXJ0eSA9IG1fZGVmZXJyZWRQcm9wZXJ0aWVzSW5kaWNlcy5jb250
YWlucyhpZCk7CisgICAgYm9vbCBoYXNTdXJyb2dhdGUgPSBtX2RlZmVycmVkUHJvcGVydGllc0lu
ZGljZXMuY29udGFpbnMoc3Vycm9nYXRlKTsKKyAgICBpZiAoIWhhc1Byb3BlcnR5ICYmICFoYXNT
dXJyb2dhdGUpCisgICAgICAgIHJldHVybiBudWxscHRyOworICAgIHVuc2lnbmVkIGluZGV4Owor
ICAgIGlmICghaGFzU3Vycm9nYXRlKQorICAgICAgICBpbmRleCA9IG1fZGVmZXJyZWRQcm9wZXJ0
aWVzSW5kaWNlcy5nZXQoaWQpOworICAgIGVsc2UgaWYgKCFoYXNQcm9wZXJ0eSkKKyAgICAgICAg
aW5kZXggPSBtX2RlZmVycmVkUHJvcGVydGllc0luZGljZXMuZ2V0KHN1cnJvZ2F0ZSk7CisgICAg
ZWxzZQorICAgICAgICBpbmRleCA9IHN0ZDo6bWF4KG1fZGVmZXJyZWRQcm9wZXJ0aWVzSW5kaWNl
cy5nZXQoaWQpLCBtX2RlZmVycmVkUHJvcGVydGllc0luZGljZXMuZ2V0KHN1cnJvZ2F0ZSkpOwor
ICAgIEFTU0VSVChpbmRleCA8IG1fZGVmZXJyZWRQcm9wZXJ0aWVzLnNpemUoKSk7CisgICAgcmV0
dXJuICZtX2RlZmVycmVkUHJvcGVydGllc1tpbmRleF07Cit9CiAKIGJvb2wgUHJvcGVydHlDYXNj
YWRlOjphZGRNYXRjaChjb25zdCBNYXRjaGVkUHJvcGVydGllcyYgbWF0Y2hlZFByb3BlcnRpZXMs
IENhc2NhZGVMZXZlbCBjYXNjYWRlTGV2ZWwsIGJvb2wgaW1wb3J0YW50KQogewpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvc3R5bGUvUHJvcGVydHlDYXNjYWRlLmggYi9Tb3VyY2UvV2ViQ29y
ZS9zdHlsZS9Qcm9wZXJ0eUNhc2NhZGUuaAppbmRleCA2MGQ4YWM1MDY0NDgxODZlY2VkNzVkYWQ4
YjY4Njk3MmQ0NTEzZDlhLi5jNzY5MGEyMGMxMjM4ZDE0YjU0ZjlmYWU0OTU1MjNmMDBiZDAxNzU1
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9Qcm9wZXJ0eUNhc2NhZGUuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9Qcm9wZXJ0eUNhc2NhZGUuaApAQCAtNTcsOSArNTcsMTEg
QEAgcHVibGljOgogICAgIGJvb2wgaGFzUHJvcGVydHkoQ1NTUHJvcGVydHlJRCkgY29uc3Q7CiAg
ICAgY29uc3QgUHJvcGVydHkmIHByb3BlcnR5KENTU1Byb3BlcnR5SUQpIGNvbnN0OwogCi0gICAg
Ym9vbCBoYXNEZWZlcnJlZFByb3BlcnR5KENTU1Byb3BlcnR5SUQpIGNvbnN0OwotICAgIGJvb2wg
YXJlRGVmZXJyZWRJbk9yZGVyKENTU1Byb3BlcnR5SUQsIENTU1Byb3BlcnR5SUQpIGNvbnN0Owot
ICAgIGNvbnN0IFByb3BlcnR5JiBkZWZlcnJlZFByb3BlcnR5KENTU1Byb3BlcnR5SUQpIGNvbnN0
OworICAgIC8vIFJldHVybnMgYSBwb2ludGVyIHRvIHRoZSBsYXN0IGRlZmVycmVkIFByb3BlcnR5
IGZvciB0aGUgcHJvdmlkZWQgQ1NTUHJvcGVydHlJRCBvciBpdHMgc3Vycm9nYXRlLgorICAgIC8v
IEEgc3Vycm9nYXRlIGlzIGFub3RoZXIgQ1NTIHByb3BlcnR5IHRoYXQgc2hhcmVzIGEgY29tcHV0
ZWQgc3R5bGUsIGUuZy4gdGhlIGNvcnJlc3BvbmRpbmcgcGh5c2ljYWwgcHJvcGVydHkgb2YgYSBs
b2dpY2FsIG9uZS4KKyAgICAvLyBUaGUgcHJvdmlkZWQgVGV4dERpcmVjdGlvbiBhbmQgV3JpdGlu
Z01vZGUgYXJlIHVzZWQgdG8gZmluZCB0aGUgc3Vycm9nYXRlLgorICAgIC8vIFJldHVybnMgbnVs
bHB0ciBpZiB0aGVyZSBpcyBubyBzdXJyb2dhdGUsIG9yIGlmIHRoZXJlIGlzIG5vIFByb3BlcnR5
IGZvciB0aGUgQ1NTUHJvcGVydHlJRCBub3IgaXRzIHN1cnJvZ2F0ZS4KKyAgICBjb25zdCBQcm9w
ZXJ0eSogbGFzdERlZmVycmVkUHJvcGVydHlJbmNsdWRpbmdTdXJyb2dhdGVzKENTU1Byb3BlcnR5
SUQsIFRleHREaXJlY3Rpb24sIFdyaXRpbmdNb2RlKSBjb25zdDsKIAogICAgIGJvb2wgaGFzQ3Vz
dG9tUHJvcGVydHkoY29uc3QgU3RyaW5nJikgY29uc3Q7CiAgICAgUHJvcGVydHkgY3VzdG9tUHJv
cGVydHkoY29uc3QgU3RyaW5nJikgY29uc3Q7CkBAIC0xMDIsMjYgKzEwNCw2IEBAIGlubGluZSBj
b25zdCBQcm9wZXJ0eUNhc2NhZGU6OlByb3BlcnR5JiBQcm9wZXJ0eUNhc2NhZGU6OnByb3BlcnR5
KENTU1Byb3BlcnR5SUQKICAgICByZXR1cm4gbV9wcm9wZXJ0aWVzW2lkXTsKIH0KIAotaW5saW5l
IGJvb2wgUHJvcGVydHlDYXNjYWRlOjpoYXNEZWZlcnJlZFByb3BlcnR5KENTU1Byb3BlcnR5SUQg
aWQpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1fZGVmZXJyZWRQcm9wZXJ0aWVzSW5kaWNlcy5jb250
YWlucyhpZCk7Ci19Ci0KLWlubGluZSBib29sIFByb3BlcnR5Q2FzY2FkZTo6YXJlRGVmZXJyZWRJ
bk9yZGVyKENTU1Byb3BlcnR5SUQgaWQxLCBDU1NQcm9wZXJ0eUlEIGlkMikgY29uc3QKLXsKLSAg
ICBBU1NFUlQoaGFzRGVmZXJyZWRQcm9wZXJ0eShpZDEpKTsKLSAgICBBU1NFUlQoaGFzRGVmZXJy
ZWRQcm9wZXJ0eShpZDIpKTsKLSAgICByZXR1cm4gbV9kZWZlcnJlZFByb3BlcnRpZXNJbmRpY2Vz
LmdldChpZDEpIDwgbV9kZWZlcnJlZFByb3BlcnRpZXNJbmRpY2VzLmdldChpZDIpOwotfQotCi1p
bmxpbmUgY29uc3QgUHJvcGVydHlDYXNjYWRlOjpQcm9wZXJ0eSYgUHJvcGVydHlDYXNjYWRlOjpk
ZWZlcnJlZFByb3BlcnR5KENTU1Byb3BlcnR5SUQgaWQpIGNvbnN0Ci17Ci0gICAgQVNTRVJUKGhh
c0RlZmVycmVkUHJvcGVydHkoaWQpKTsKLSAgICB1bnNpZ25lZCBpbmRleCA9IG1fZGVmZXJyZWRQ
cm9wZXJ0aWVzSW5kaWNlcy5nZXQoaWQpOwotICAgIEFTU0VSVChpbmRleCA8IG1fZGVmZXJyZWRQ
cm9wZXJ0aWVzLnNpemUoKSk7Ci0gICAgcmV0dXJuIG1fZGVmZXJyZWRQcm9wZXJ0aWVzW2luZGV4
XTsKLX0KLQogaW5saW5lIGJvb2wgUHJvcGVydHlDYXNjYWRlOjpoYXNDdXN0b21Qcm9wZXJ0eShj
b25zdCBTdHJpbmcmIG5hbWUpIGNvbnN0CiB7CiAgICAgcmV0dXJuIG1fY3VzdG9tUHJvcGVydGll
cy5jb250YWlucyhuYW1lKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxl
QnVpbGRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZUJ1aWxkZXIuY3BwCmluZGV4
IGUyZmQxNDU5YzczMzY3OWE0YzIxYTliOGZjM2NlYzkwYTU5ZjNhZTguLjBiY2M1ZDAyZGEyOGQ2
MzlkMDIxMTE1MDVlY2ExODUwNDJjZTcwMDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0
eWxlL1N0eWxlQnVpbGRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVCdWls
ZGVyLmNwcApAQCAtMzE1LDIzICszMTUsMTIgQEAgdm9pZCBCdWlsZGVyOjphcHBseVByb3BlcnR5
KENTU1Byb3BlcnR5SUQgaWQsIENTU1ZhbHVlJiB2YWx1ZSwgU2VsZWN0b3JDaGVja2VyOjoKICAg
ICAgICAgICAgICAgICBhdXRvJiBwcm9wZXJ0eSA9IHJvbGxiYWNrQ2FzY2FkZS0+cHJvcGVydHko
aWQpOwogICAgICAgICAgICAgICAgIGFwcGx5Um9sbGJhY2tDYXNjYWRlUHJvcGVydHkocHJvcGVy
dHksIGxpbmtNYXRjaE1hc2spOwogICAgICAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgICAg
IH0gZWxzZSBpZiAoQ1NTUHJvcGVydHk6OmlzSW5Mb2dpY2FsUHJvcGVydHlHcm91cChpZCkpIHsK
LSAgICAgICAgICAgICAgICBBU1NFUlQoIUNTU1Byb3BlcnR5Ojppc0RpcmVjdGlvbkF3YXJlUHJv
cGVydHkoaWQpKTsKKyAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgYXV0byYg
c3R5bGUgPSBtX3N0YXRlLnN0eWxlKCk7Ci0gICAgICAgICAgICAgICAgYXV0byBsb2dpY2FsSWQg
PSBDU1NQcm9wZXJ0eTo6dW5yZXNvbHZlUGh5c2ljYWxQcm9wZXJ0eShpZCwgc3R5bGUuZGlyZWN0
aW9uKCksIHN0eWxlLndyaXRpbmdNb2RlKCkpOwotICAgICAgICAgICAgICAgIGJvb2wgaGFzUGh5
c2ljYWwgPSByb2xsYmFja0Nhc2NhZGUtPmhhc0RlZmVycmVkUHJvcGVydHkoaWQpOwotICAgICAg
ICAgICAgICAgIGJvb2wgaGFzTG9naWNhbCA9IHJvbGxiYWNrQ2FzY2FkZS0+aGFzRGVmZXJyZWRQ
cm9wZXJ0eShsb2dpY2FsSWQpOwotICAgICAgICAgICAgICAgIGlmIChoYXNQaHlzaWNhbCB8fCBo
YXNMb2dpY2FsKSB7Ci0gICAgICAgICAgICAgICAgICAgIGlmIChoYXNMb2dpY2FsICYmICghaGFz
UGh5c2ljYWwgfHwgcm9sbGJhY2tDYXNjYWRlLT5hcmVEZWZlcnJlZEluT3JkZXIoaWQsIGxvZ2lj
YWxJZCkpKQotICAgICAgICAgICAgICAgICAgICAgICAgaWQgPSBsb2dpY2FsSWQ7Ci0gICAgICAg
ICAgICAgICAgICAgIGF1dG8mIHByb3BlcnR5ID0gcm9sbGJhY2tDYXNjYWRlLT5kZWZlcnJlZFBy
b3BlcnR5KGlkKTsKLSAgICAgICAgICAgICAgICAgICAgYXBwbHlSb2xsYmFja0Nhc2NhZGVQcm9w
ZXJ0eShwcm9wZXJ0eSwgbGlua01hdGNoTWFzayk7CisgICAgICAgICAgICAgICAgaWYgKGF1dG8q
IHByb3BlcnR5ID0gcm9sbGJhY2tDYXNjYWRlLT5sYXN0RGVmZXJyZWRQcm9wZXJ0eUluY2x1ZGlu
Z1N1cnJvZ2F0ZXMoaWQsIHN0eWxlLmRpcmVjdGlvbigpLCBzdHlsZS53cml0aW5nTW9kZSgpKSkg
eworICAgICAgICAgICAgICAgICAgICBhcHBseVJvbGxiYWNrQ2FzY2FkZVByb3BlcnR5KCpwcm9w
ZXJ0eSwgbGlua01hdGNoTWFzayk7CiAgICAgICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAg
ICAgICAgICAgICB9Ci0gICAgICAgICAgICB9IGVsc2UgaWYgKHJvbGxiYWNrQ2FzY2FkZS0+aGFz
RGVmZXJyZWRQcm9wZXJ0eShpZCkpIHsKLSAgICAgICAgICAgICAgICBhdXRvJiBwcm9wZXJ0eSA9
IHJvbGxiYWNrQ2FzY2FkZS0+ZGVmZXJyZWRQcm9wZXJ0eShpZCk7Ci0gICAgICAgICAgICAgICAg
YXBwbHlSb2xsYmFja0Nhc2NhZGVQcm9wZXJ0eShwcm9wZXJ0eSwgbGlua01hdGNoTWFzayk7Ci0g
ICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgfQogICAgICAgICB9CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlQnVpbGRlckNvbnZlcnRlci5oIGIvU291
cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVCdWlsZGVyQ29udmVydGVyLmgKaW5kZXggYWNiYmY1Zjlh
N2UxYzcyZDljY2FiODUwMjNkN2VmZDRkMjE3YjJhMi4uMzRhYTM4NWFlMDQ5NzFiMzIwMDZlMTA2
MjRiNmRkNjQ0ZTMwM2RiOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVC
dWlsZGVyQ29udmVydGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVCdWlsZGVy
Q29udmVydGVyLmgKQEAgLTg1LDcgKzg1LDYgQEAgcHVibGljOgogICAgIHRlbXBsYXRlPHR5cGVu
YW1lIFQ+IHN0YXRpYyBUIGNvbnZlcnROdW1iZXIoQnVpbGRlclN0YXRlJiwgY29uc3QgQ1NTVmFs
dWUmKTsKICAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBUPiBzdGF0aWMgVCBjb252ZXJ0TnVtYmVyT3JB
dXRvKEJ1aWxkZXJTdGF0ZSYsIGNvbnN0IENTU1ZhbHVlJik7CiAgICAgc3RhdGljIHNob3J0IGNv
bnZlcnRXZWJraXRIeXBoZW5hdGVMaW1pdExpbmVzKEJ1aWxkZXJTdGF0ZSYsIGNvbnN0IENTU1Zh
bHVlJik7Ci0gICAgdGVtcGxhdGU8Q1NTUHJvcGVydHlJRD4gc3RhdGljIE5pbmVQaWVjZUltYWdl
IGNvbnZlcnRCb3JkZXJJbWFnZShCdWlsZGVyU3RhdGUmLCBDU1NWYWx1ZSYpOwogICAgIHRlbXBs
YXRlPENTU1Byb3BlcnR5SUQ+IHN0YXRpYyBOaW5lUGllY2VJbWFnZSBjb252ZXJ0Qm9yZGVyTWFz
ayhCdWlsZGVyU3RhdGUmLCBDU1NWYWx1ZSYpOwogICAgIHRlbXBsYXRlPENTU1Byb3BlcnR5SUQ+
IHN0YXRpYyBSZWZQdHI8U3R5bGVJbWFnZT4gY29udmVydFN0eWxlSW1hZ2UoQnVpbGRlclN0YXRl
JiwgQ1NTVmFsdWUmKTsKICAgICBzdGF0aWMgSW1hZ2VPcmllbnRhdGlvbiBjb252ZXJ0SW1hZ2VP
cmllbnRhdGlvbihCdWlsZGVyU3RhdGUmLCBjb25zdCBDU1NWYWx1ZSYpOwpAQCAtNDY0LDE5ICs0
NjMsMTEgQEAgaW5saW5lIHNob3J0IEJ1aWxkZXJDb252ZXJ0ZXI6OmNvbnZlcnRXZWJraXRIeXBo
ZW5hdGVMaW1pdExpbmVzKEJ1aWxkZXJTdGF0ZSYsIGMKICAgICByZXR1cm4gcHJpbWl0aXZlVmFs
dWUudmFsdWU8c2hvcnQ+KENTU1VuaXRUeXBlOjpDU1NfTlVNQkVSKTsKIH0KIAotdGVtcGxhdGU8
Q1NTUHJvcGVydHlJRCBwcm9wZXJ0eT4KLWlubGluZSBOaW5lUGllY2VJbWFnZSBCdWlsZGVyQ29u
dmVydGVyOjpjb252ZXJ0Qm9yZGVySW1hZ2UoQnVpbGRlclN0YXRlJiBidWlsZGVyU3RhdGUsIENT
U1ZhbHVlJiB2YWx1ZSkKLXsKLSAgICBOaW5lUGllY2VJbWFnZSBpbWFnZTsKLSAgICBidWlsZGVy
U3RhdGUuc3R5bGVNYXAoKS5tYXBOaW5lUGllY2VJbWFnZShwcm9wZXJ0eSwgJnZhbHVlLCBpbWFn
ZSk7Ci0gICAgcmV0dXJuIGltYWdlOwotfQotCiB0ZW1wbGF0ZTxDU1NQcm9wZXJ0eUlEIHByb3Bl
cnR5PgogaW5saW5lIE5pbmVQaWVjZUltYWdlIEJ1aWxkZXJDb252ZXJ0ZXI6OmNvbnZlcnRCb3Jk
ZXJNYXNrKEJ1aWxkZXJTdGF0ZSYgYnVpbGRlclN0YXRlLCBDU1NWYWx1ZSYgdmFsdWUpCiB7CiAg
ICAgTmluZVBpZWNlSW1hZ2UgaW1hZ2UoTmluZVBpZWNlSW1hZ2U6OlR5cGU6Ok1hc2spOwotICAg
IGJ1aWxkZXJTdGF0ZS5zdHlsZU1hcCgpLm1hcE5pbmVQaWVjZUltYWdlKHByb3BlcnR5LCAmdmFs
dWUsIGltYWdlKTsKKyAgICBidWlsZGVyU3RhdGUuc3R5bGVNYXAoKS5tYXBOaW5lUGllY2VJbWFn
ZSgmdmFsdWUsIGltYWdlKTsKICAgICByZXR1cm4gaW1hZ2U7CiB9CiAKQEAgLTgwOSw3ICs4MDAs
NyBAQCBpbmxpbmUgUmVmUHRyPFN0eWxlUmVmbGVjdGlvbj4gQnVpbGRlckNvbnZlcnRlcjo6Y29u
dmVydFJlZmxlY3Rpb24oQnVpbGRlclN0YXRlJgogICAgIHJlZmxlY3Rpb24tPnNldE9mZnNldChy
ZWZsZWN0VmFsdWUub2Zmc2V0KCkuY29udmVydFRvTGVuZ3RoPEZpeGVkSW50ZWdlckNvbnZlcnNp
b24gfCBQZXJjZW50Q29udmVyc2lvbiB8IENhbGN1bGF0ZWRDb252ZXJzaW9uPihidWlsZGVyU3Rh
dGUuY3NzVG9MZW5ndGhDb252ZXJzaW9uRGF0YSgpKSk7CiAKICAgICBOaW5lUGllY2VJbWFnZSBt
YXNrKE5pbmVQaWVjZUltYWdlOjpUeXBlOjpNYXNrKTsKLSAgICBidWlsZGVyU3RhdGUuc3R5bGVN
YXAoKS5tYXBOaW5lUGllY2VJbWFnZShDU1NQcm9wZXJ0eVdlYmtpdEJveFJlZmxlY3QsIHJlZmxl
Y3RWYWx1ZS5tYXNrKCksIG1hc2spOworICAgIGJ1aWxkZXJTdGF0ZS5zdHlsZU1hcCgpLm1hcE5p
bmVQaWVjZUltYWdlKHJlZmxlY3RWYWx1ZS5tYXNrKCksIG1hc2spOwogICAgIHJlZmxlY3Rpb24t
PnNldE1hc2sobWFzayk7CiAKICAgICByZXR1cm4gcmVmbGVjdGlvbjsKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAwZmZlZTI0
MzFjM2ZjNDJmNjNmZDU1OGE0MDNkMGU3ZDdhNjViODg4Li40MTJjOTUxNjVmYmU5ZWE4N2MyZmRi
ODdhMGVmYmFmYWI1ODljZDFiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysr
IGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjkgQEAKKzIwMjItMDMtMjAgIE9y
aW9sIEJydWZhdSAgPG9icnVmYXVAaWdhbGlhLmNvbT4KKworICAgICAgICBbY3NzXSBUdXJuIC13
ZWJraXQtYm9yZGVyLWltYWdlIGludG8gYSBzaG9ydGhhbmQKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzNzQ4NworCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVwZGF0ZSB0ZXN0cyB0byB0YWtlIGludG8gYWNj
b3VudCB0aGF0ICctd2Via2l0LWJvcmRlci1pbWFnZScgaXMgYSBzaG9ydGhhbmQuCisKKyAgICAg
ICAgKiBmYXN0L2Nzcy9ib3JkZXItaW1hZ2Utc3R5bGUtbGVuZ3RoLWV4cGVjdGVkLnR4dDoKKyAg
ICAgICAgKiBmYXN0L2Nzcy9ib3JkZXItaW1hZ2Utc3R5bGUtbGVuZ3RoLmh0bWw6CisgICAgICAg
ICogZmFzdC9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS9jb21wdXRlZC1zdHlsZS1leHBlY3RlZC50eHQ6
CisgICAgICAgICogZmFzdC9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS9jb21wdXRlZC1zdHlsZS13aXRo
b3V0LXJlbmRlcmVyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBmYXN0L2Nzcy9nZXRDb21wdXRl
ZFN0eWxlL3Jlc291cmNlcy9wcm9wZXJ0eS1uYW1lcy5qczoKKyAgICAgICAgKiBmYXN0L2Nzcy9p
bWFnZS1zZXQtcGFyc2luZy1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9jc3MvaW1hZ2Ut
c2V0LXBhcnNpbmcuaHRtbDoKKyAgICAgICAgKiBmYXN0L2Nzcy91cmktdG9rZW4tcGFyc2luZy1l
eHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9jc3MvdXJpLXRva2VuLXBhcnNpbmcuaHRtbDoK
KyAgICAgICAgKiBwbGF0Zm9ybS9ndGsvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9j
c3MvY3NzLWNhc2NhZGUvYWxsLXByb3AtaW5pdGlhbC14bWwtZXhwZWN0ZWQudHh0OgorICAgICAg
ICAqIHBsYXRmb3JtL2d0ay9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3Nv
bS9nZXRDb21wdXRlZFN0eWxlLWRldGFjaGVkLXN1YnRyZWUtZXhwZWN0ZWQudHh0OgorICAgICAg
ICAqIHBsYXRmb3JtL2lvcy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3Mt
Y2FzY2FkZS9hbGwtcHJvcC1pbml0aWFsLXhtbC1leHBlY3RlZC50eHQ6CisgICAgICAgICogcGxh
dGZvcm0vaW9zL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dldENv
bXB1dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS1leHBlY3RlZC50eHQ6CisgICAgICAgICogcGxh
dGZvcm0vd3BlL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jYXNjYWRl
L2FsbC1wcm9wLWluaXRpYWwteG1sLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBwbGF0Zm9ybS93
cGUvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nzb20vZ2V0Q29tcHV0ZWRT
dHlsZS1kZXRhY2hlZC1zdWJ0cmVlLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBzdmcvY3NzL2dl
dENvbXB1dGVkU3R5bGUtYmFzaWMtZXhwZWN0ZWQudHh0OgorCiAyMDIyLTAzLTE5ICBUeWxlciBX
aWxjb2NrICA8dHlsZXJfd0BhcHBsZS5jb20+CiAKICAgICAgICAgUmViYXNlbGluZSBhY2Nlc3Np
YmlsaXR5L3JvbGVzLWV4cG9zZWQuaHRtbCBmb3IgTWFjIFdLMSBhZnRlciBodHRwczovL2NvbW1p
dHMud2Via2l0Lm9yZy9yMjkxNDAxCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwppbmRleCA4
ZWZjM2E3Mzc1NjQ1ODQzNmVkMDc2ZWIxMjNlYWZkODA1YTg0MGQ5Li42OWJkNjgxNThjNTdiOTQ3
YmU5MTUzYjg2ZjY4ZGRhMmNhYmJlYzVkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cK
QEAgLTEsMyArMSwxNSBAQAorMjAyMi0wMy0yMCAgT3Jpb2wgQnJ1ZmF1ICA8b2JydWZhdUBpZ2Fs
aWEuY29tPgorCisgICAgICAgIFtjc3NdIFR1cm4gLXdlYmtpdC1ib3JkZXItaW1hZ2UgaW50byBh
IHNob3J0aGFuZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MjM3NDg3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgVXBkYXRlIHRlc3RzIHRvIHRha2UgaW50byBhY2NvdW50IHRoYXQgJy13ZWJraXQtYm9yZGVy
LWltYWdlJyBpcyBhIHNob3J0aGFuZC4KKworICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9j
c3MvY3NzLWNhc2NhZGUvYWxsLXByb3AtaW5pdGlhbC14bWwtZXhwZWN0ZWQudHh0OgorICAgICAg
ICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nzb20vZ2V0Q29tcHV0ZWRTdHlsZS1kZXRhY2hl
ZC1zdWJ0cmVlLWV4cGVjdGVkLnR4dDoKKwogMjAyMi0wMy0yMCAgT3Jpb2wgQnJ1ZmF1ICA8b2Jy
dWZhdUBpZ2FsaWEuY29tPgogCiAgICAgICAgIEZpeCBDU1MgY2FzY2FkZSByZWdhcmRpbmcgbG9n
aWNhbCBwcm9wZXJ0aWVzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9ib3JkZXIt
aW1hZ2Utc3R5bGUtbGVuZ3RoLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL2Jv
cmRlci1pbWFnZS1zdHlsZS1sZW5ndGgtZXhwZWN0ZWQudHh0CmluZGV4IDYyNmViZmI0ZjIxZjAy
NDk5MTVjZGM3YjZmZDJhOTc1M2RiZTJhZmEuLjlkYzc2YTE2NTBmMTA3ZTg0YzI3N2EyMzRiZjJl
YTQwYzQwNDQ5ZDAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL2JvcmRlci1pbWFn
ZS1zdHlsZS1sZW5ndGgtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL2Jv
cmRlci1pbWFnZS1zdHlsZS1sZW5ndGgtZXhwZWN0ZWQudHh0CkBAIC01LDcgKzUsNyBAQCBPbiBz
dWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dl
ZCBieSAiVEVTVCBDT01QTEVURQogCiBQQVNTIGUuc3R5bGUubGVuZ3RoIGlzIDUKIFBBU1MgZS5z
dHlsZS5sZW5ndGggaXMgMAotUEFTUyBlLnN0eWxlLmxlbmd0aCBpcyAxCitQQVNTIGUuc3R5bGUu
bGVuZ3RoIGlzIDUKIFBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKIAogVEVTVCBDT01Q
TEVURQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvYm9yZGVyLWltYWdlLXN0eWxl
LWxlbmd0aC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvYm9yZGVyLWltYWdlLXN0eWxlLWxl
bmd0aC5odG1sCmluZGV4IDRlNDM2OTMwNDIxMDc3ZjAwOGQ3Yzc4MTM4Yjc5Yjc2YzI3ODBjOGUu
LmEyNzlmZGVjN2M4ZjIyODYzNzI5MTUzZThiNzZjNjA1M2FiYmI2OTAgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2Zhc3QvY3NzL2JvcmRlci1pbWFnZS1zdHlsZS1sZW5ndGguaHRtbAorKysgYi9M
YXlvdXRUZXN0cy9mYXN0L2Nzcy9ib3JkZXItaW1hZ2Utc3R5bGUtbGVuZ3RoLmh0bWwKQEAgLTIw
LDcgKzIwLDcgQEAgc2hvdWxkQmUoImUuc3R5bGUubGVuZ3RoIiwgIjUiKTsKIGUuc3R5bGUuYm9y
ZGVySW1hZ2UgPSAiIjsKIHNob3VsZEJlKCJlLnN0eWxlLmxlbmd0aCIsICIwIik7CiBlLnN0eWxl
LndlYmtpdEJvcmRlckltYWdlID0gInVybChkdW1teTovL3Rlc3QucG5nKSAwIDcgMCAxMyAvIDAg
NyAwIDEzIHN0cmV0Y2ggc3RyZXRjaCI7Ci1zaG91bGRCZSgiZS5zdHlsZS5sZW5ndGgiLCAiMSIp
Oworc2hvdWxkQmUoImUuc3R5bGUubGVuZ3RoIiwgIjUiKTsKIGRvY3VtZW50LmJvZHkucmVtb3Zl
Q2hpbGQodGVzdENvbnRhaW5lcik7CiAKIDwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvZmFzdC9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS9jb21wdXRlZC1zdHlsZS1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9nZXRDb21wdXRlZFN0eWxlL2NvbXB1dGVkLXN0eWxlLWV4
cGVjdGVkLnR4dAppbmRleCA2ZThlYzNkODVjZDFlYzkwNzljNGMwMTFlMTkzYmM2YjRkMTc2MzRl
Li44NDY4ZDE2M2UxNGI3MTk1YmJiNmZkYmYzMWRhMDU3MTAxMWM5ZTdjIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9mYXN0L2Nzcy9nZXRDb21wdXRlZFN0eWxlL2NvbXB1dGVkLXN0eWxlLWV4cGVj
dGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9nZXRDb21wdXRlZFN0eWxlL2NvbXB1
dGVkLXN0eWxlLWV4cGVjdGVkLnR4dApAQCAtMjEwLDcgKzIxMCw2IEBAIHpvb206IDE7CiAtd2Vi
a2l0LWJhY2tncm91bmQtb3JpZ2luOiBwYWRkaW5nLWJveDsKIC13ZWJraXQtYmFja2dyb3VuZC1z
aXplOiBhdXRvOwogLXdlYmtpdC1ib3JkZXItaG9yaXpvbnRhbC1zcGFjaW5nOiAwcHg7Ci0td2Vi
a2l0LWJvcmRlci1pbWFnZTogbm9uZTsKIC13ZWJraXQtYm9yZGVyLXZlcnRpY2FsLXNwYWNpbmc6
IDBweDsKIC13ZWJraXQtYm94LWFsaWduOiBzdHJldGNoOwogLXdlYmtpdC1ib3gtZGVjb3JhdGlv
bi1icmVhazogc2xpY2U7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9nZXRDb21w
dXRlZFN0eWxlL2NvbXB1dGVkLXN0eWxlLXdpdGhvdXQtcmVuZGVyZXItZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvZmFzdC9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS9jb21wdXRlZC1zdHlsZS13aXRo
b3V0LXJlbmRlcmVyLWV4cGVjdGVkLnR4dAppbmRleCAwOWVlMDUyZThlYTBkODQ0OGY3NjA4NjYz
YmNmNjhiYjVhMDU1OTZlLi5jN2YxYzk3MjIyYmIwMzFiMWMxY2Y1MWM3M2ZjODFhMzk1NmRjZTdl
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9nZXRDb21wdXRlZFN0eWxlL2NvbXB1
dGVkLXN0eWxlLXdpdGhvdXQtcmVuZGVyZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3Rz
L2Zhc3QvY3NzL2dldENvbXB1dGVkU3R5bGUvY29tcHV0ZWQtc3R5bGUtd2l0aG91dC1yZW5kZXJl
ci1leHBlY3RlZC50eHQKQEAgLTIwOSw3ICsyMDksNiBAQCB6b29tOiAxCiAtd2Via2l0LWJhY2tn
cm91bmQtb3JpZ2luOiBwYWRkaW5nLWJveAogLXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6IGF1dG8K
IC13ZWJraXQtYm9yZGVyLWhvcml6b250YWwtc3BhY2luZzogMHB4Ci0td2Via2l0LWJvcmRlci1p
bWFnZTogbm9uZQogLXdlYmtpdC1ib3JkZXItdmVydGljYWwtc3BhY2luZzogMHB4CiAtd2Via2l0
LWJveC1hbGlnbjogc3RyZXRjaAogLXdlYmtpdC1ib3gtZGVjb3JhdGlvbi1icmVhazogc2xpY2UK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL2dldENvbXB1dGVkU3R5bGUvcmVzb3Vy
Y2VzL3Byb3BlcnR5LW5hbWVzLmpzIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvZ2V0Q29tcHV0ZWRT
dHlsZS9yZXNvdXJjZXMvcHJvcGVydHktbmFtZXMuanMKaW5kZXggZWIzNGZkZTYxYzZjODNkNzcz
M2EzZDM2NWJiYTE4MDFhOWFhNjA5NC4uZjFmZjhmNDA2YjZjOTY4YmU2MjU0YmNmZDdjZjQ4NzU3
MmUzNTgzZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvZ2V0Q29tcHV0ZWRTdHls
ZS9yZXNvdXJjZXMvcHJvcGVydHktbmFtZXMuanMKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3Mv
Z2V0Q29tcHV0ZWRTdHlsZS9yZXNvdXJjZXMvcHJvcGVydHktbmFtZXMuanMKQEAgLTE3LDcgKzE3
LDYgQEAgdmFyIHByb3BlcnRpZXNUb1Rlc3QgPSB7CiAgICAgIi13ZWJraXQtYmFja2dyb3VuZC1v
cmlnaW4iOiB0cnVlLAogICAgICItd2Via2l0LWJhY2tncm91bmQtc2l6ZSI6IHRydWUsCiAgICAg
Ii13ZWJraXQtYm9yZGVyLWhvcml6b250YWwtc3BhY2luZyI6IHRydWUsCi0gICAgIi13ZWJraXQt
Ym9yZGVyLWltYWdlIjogdHJ1ZSwKICAgICAiLXdlYmtpdC1ib3JkZXItdmVydGljYWwtc3BhY2lu
ZyI6IHRydWUsCiAgICAgIi13ZWJraXQtYm94LWFsaWduIjogdHJ1ZSwKICAgICAiLXdlYmtpdC1i
b3gtZGVjb3JhdGlvbi1icmVhayI6IHRydWUsCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0
L2Nzcy9pbWFnZS1zZXQtcGFyc2luZy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2Nz
cy9pbWFnZS1zZXQtcGFyc2luZy1leHBlY3RlZC50eHQKaW5kZXggMzBhYTYxOTU5Yzg1YWU4MjNk
Y2QxZjVlODgzYTQ4NjY5ZDk0ODBmZC4uZDlhZDEwZmM0NWQzN2UzZGViZGZiZjk0NDBhNzA1ZDhj
OTNjMTI0MSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvaW1hZ2Utc2V0LXBhcnNp
bmctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL2ltYWdlLXNldC1wYXJz
aW5nLWV4cGVjdGVkLnR4dApAQCAtODAsNyArODAsNyBAQCBQQVNTIHN1YlJ1bGUuY3NzVGV4dCBp
cyAnMXgnCiBQQVNTIHN1YlJ1bGUgaXMgJ2InCiBQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMngn
CiAKLVNpbmdsZSB2YWx1ZSBmb3IgYm9yZGVyLWltYWdlIDogdXJsKCcjYScpIDF4CitTaW5nbGUg
dmFsdWUgZm9yIGJvcmRlci1pbWFnZS1zb3VyY2UgOiB1cmwoJyNhJykgMXgKIFBBU1MganNXcmFw
cGVyQ2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwogUEFTUyBqc1dyYXBwZXJD
bGFzcyhpbWFnZVNldFJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0JwogUEFTUyBqc1dy
YXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuY29uc3RydWN0b3IpIGlzICdGdW5jdGlvbicKQEAgLTg4
LDcgKzg4LDcgQEAgUEFTUyBpbWFnZVNldFJ1bGUubGVuZ3RoIGlzIDIKIFBBU1Mgc3ViUnVsZSBp
cyAnYScKIFBBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcxeCcKIAotTXVsdGlwbGUgdmFsdWVzIGZv
ciBib3JkZXItaW1hZ2UgOiB1cmwoJyNhJykgMXgsIHVybCgnI2InKSAyeAorTXVsdGlwbGUgdmFs
dWVzIGZvciBib3JkZXItaW1hZ2Utc291cmNlIDogdXJsKCcjYScpIDF4LCB1cmwoJyNiJykgMngK
IFBBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwogUEFT
UyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0
JwogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuY29uc3RydWN0b3IpIGlzICdGdW5j
dGlvbicKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL2ltYWdlLXNldC1wYXJzaW5n
Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9pbWFnZS1zZXQtcGFyc2luZy5odG1sCmluZGV4
IGM3YjhmMjg5NTAzYzdhMjYyMmRmNGNhMzk5ZTQzNTE2OWY1ODBkNTQuLjhiODE3NWNmNDkyZjA2
NjA5ZjM4NDRiNDY4NTdkNTNkMzZjMmI2MzEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3Qv
Y3NzL2ltYWdlLXNldC1wYXJzaW5nLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvaW1h
Z2Utc2V0LXBhcnNpbmcuaHRtbApAQCAtMTA3LDEzICsxMDcsMTMgQEAgdGVzdEltYWdlU2V0UnVs
ZSgiTXVsdGlwbGUgdmFsdWVzIGZvciBjb250ZW50IiwKICAgICAgICAgICAgICAgICAidXJsKCcj
YScpIDF4LCB1cmwoJyNiJykgMngiLCA0LAogICAgICAgICAgICAgICAgIFsiYSIsICIxeCIsICJi
IiwgIjJ4Il0pOwogCi10ZXN0SW1hZ2VTZXRSdWxlKCJTaW5nbGUgdmFsdWUgZm9yIGJvcmRlci1p
bWFnZSIsCi0gICAgICAgICAgICAgICAgIi13ZWJraXQtYm9yZGVyLWltYWdlIiwKK3Rlc3RJbWFn
ZVNldFJ1bGUoIlNpbmdsZSB2YWx1ZSBmb3IgYm9yZGVyLWltYWdlLXNvdXJjZSIsCisgICAgICAg
ICAgICAgICAgImJvcmRlci1pbWFnZS1zb3VyY2UiLAogICAgICAgICAgICAgICAgICJ1cmwoJyNh
JykgMXgiLCAyLAogICAgICAgICAgICAgICAgIFsiYSIsICIxeCJdKTsKIAotdGVzdEltYWdlU2V0
UnVsZSgiTXVsdGlwbGUgdmFsdWVzIGZvciBib3JkZXItaW1hZ2UiLAotICAgICAgICAgICAgICAg
ICItd2Via2l0LWJvcmRlci1pbWFnZSIsCit0ZXN0SW1hZ2VTZXRSdWxlKCJNdWx0aXBsZSB2YWx1
ZXMgZm9yIGJvcmRlci1pbWFnZS1zb3VyY2UiLAorICAgICAgICAgICAgICAgICJib3JkZXItaW1h
Z2Utc291cmNlIiwKICAgICAgICAgICAgICAgICAidXJsKCcjYScpIDF4LCB1cmwoJyNiJykgMngi
LCA0LAogICAgICAgICAgICAgICAgIFsiYSIsICIxeCIsICJiIiwgIjJ4Il0pOwogCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy91cmktdG9rZW4tcGFyc2luZy1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy91cmktdG9rZW4tcGFyc2luZy1leHBlY3RlZC50eHQKaW5k
ZXggN2U2ZDYxZGJiZTYxOTdmMGJiNThhY2U2NTdkNGY0NjkwMWY1Mzg0ZS4uODc1YThhOTZlMGU1
MzYzMjg0MTRjYjdlMGY0NTE0MDM1OTM2MmM0MCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFz
dC9jc3MvdXJpLXRva2VuLXBhcnNpbmctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zh
c3QvY3NzL3VyaS10b2tlbi1wYXJzaW5nLWV4cGVjdGVkLnR4dApAQCAtMjIsNyArMjIsNyBAQCBS
dWxlcyBmcm9tIHRoZSBzdHlsZXNoZWV0OgogI3IgeyBsaXN0LXN0eWxlLWltYWdlOiB1cmwoInVy
bChyKSIpOyB9CiAjcyB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCgidXJsKHMpIik7IH0KICN0IHsg
bWFzay1pbWFnZTogdXJsKCJ1cmwodCkiKTsgfQotI3UgeyAtd2Via2l0LWJvcmRlci1pbWFnZTog
dXJsKCJ1cmwodSkiKSAxIDIgMyA0IGZpbGwgc3RyZXRjaCByb3VuZDsgfQorI3UgeyBib3JkZXIt
aW1hZ2U6IHVybCgidXJsKHUpIikgMSAyIDMgNCBmaWxsIHN0cmV0Y2ggcm91bmQ7IH0KICN2IHsg
LXdlYmtpdC1tYXNrLWJveC1pbWFnZTogdXJsKCJ1cmwodikiKSAxIDIgMyA0IGZpbGwgc3RyZXRj
aCByb3VuZDsgfQogI3cgeyBjb250ZW50OiB1cmwoIndcZCB3Iik7IH0KICN4IHsgY29udGVudDog
dXJsKCIgeCB4XDkgeCAiKTsgfQpAQCAtNDcsNyArNDcsNyBAQCBFeHBlY3RlZCByZXN1bHQ6CiAj
ciB7IGxpc3Qtc3R5bGUtaW1hZ2U6IHVybCgidXJsKHIpIik7IH0KICNzIHsgYmFja2dyb3VuZC1p
bWFnZTogdXJsKCJ1cmwocykiKTsgfQogI3QgeyBtYXNrLWltYWdlOiB1cmwoInVybCh0KSIpOyB9
Ci0jdSB7IC13ZWJraXQtYm9yZGVyLWltYWdlOiB1cmwoInVybCh1KSIpIDEgMiAzIDQgZmlsbCBz
dHJldGNoIHJvdW5kOyB9CisjdSB7IGJvcmRlci1pbWFnZTogdXJsKCJ1cmwodSkiKSAxIDIgMyA0
IGZpbGwgc3RyZXRjaCByb3VuZDsgfQogI3YgeyAtd2Via2l0LW1hc2stYm94LWltYWdlOiB1cmwo
InVybCh2KSIpIDEgMiAzIDQgZmlsbCBzdHJldGNoIHJvdW5kOyB9CiAjdyB7IGNvbnRlbnQ6IHVy
bCgid1xkIHciKTsgfQogI3ggeyBjb250ZW50OiB1cmwoIiB4IHhcOSB4ICIpOyB9CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy91cmktdG9rZW4tcGFyc2luZy5odG1sIGIvTGF5b3V0
VGVzdHMvZmFzdC9jc3MvdXJpLXRva2VuLXBhcnNpbmcuaHRtbAppbmRleCBlMTQ5NmIxYTRmYjQ2
ODE3MTY4MzJkY2U2MTdkYzQ1NWE2ZDMxODkwLi5kYTdiNzA3NGNkZTdlNzc3MDQ1OGJiMDkzZTYz
YjEyNDM0NDZhMTU4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy91cmktdG9rZW4t
cGFyc2luZy5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3VyaS10b2tlbi1wYXJzaW5n
Lmh0bWwKQEAgLTkwLDcgKzkwLDcgQEAgZnVuY3Rpb24gcnVuVGVzdCgpCiAjciB7IGxpc3Qtc3R5
bGUtaW1hZ2U6IHVybCgidXJsKHIpIik7IH0KICNzIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCJ1
cmwocykiKTsgfQogI3QgeyBtYXNrLWltYWdlOiB1cmwoInVybCh0KSIpOyB9Ci0jdSB7IC13ZWJr
aXQtYm9yZGVyLWltYWdlOiB1cmwoInVybCh1KSIpIDEgMiAzIDQgZmlsbCBzdHJldGNoIHJvdW5k
OyB9CisjdSB7IGJvcmRlci1pbWFnZTogdXJsKCJ1cmwodSkiKSAxIDIgMyA0IGZpbGwgc3RyZXRj
aCByb3VuZDsgfQogI3YgeyAtd2Via2l0LW1hc2stYm94LWltYWdlOiB1cmwoInVybCh2KSIpIDEg
MiAzIDQgZmlsbCBzdHJldGNoIHJvdW5kOyB9CiAjdyB7IGNvbnRlbnQ6IHVybCgid1xkIHciKTsg
fQogI3ggeyBjb250ZW50OiB1cmwoIiB4IHhcOSB4ICIpOyB9CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY2FzY2FkZS9hbGwt
cHJvcC1pbml0aWFsLXhtbC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY2FzY2FkZS9hbGwtcHJvcC1pbml0aWFsLXhtbC1l
eHBlY3RlZC50eHQKaW5kZXggOWIyNTQ3MTQyZDg1NWIxZDM4ZGUwNDAxM2FmYWQwMDMyZjBkNWY5
Ni4uMGY3NzgxYjBlYWVlNjU3Mzc2NTVjYTFmNTdlYzEwNTI1NmY0MWJjNiAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNhc2Nh
ZGUvYWxsLXByb3AtaW5pdGlhbC14bWwtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jYXNjYWRlL2FsbC1wcm9wLWlu
aXRpYWwteG1sLWV4cGVjdGVkLnR4dApAQCAtMzQxLDcgKzM0MSw2IEBAIFBBU1MgLXdlYmtpdC1i
YWNrZ3JvdW5kLWNsaXAKIFBBU1MgLXdlYmtpdC1iYWNrZ3JvdW5kLW9yaWdpbgogUEFTUyAtd2Vi
a2l0LWJhY2tncm91bmQtc2l6ZQogUEFTUyAtd2Via2l0LWJvcmRlci1ob3Jpem9udGFsLXNwYWNp
bmcKLVBBU1MgLXdlYmtpdC1ib3JkZXItaW1hZ2UKIFBBU1MgLXdlYmtpdC1ib3JkZXItdmVydGlj
YWwtc3BhY2luZwogUEFTUyAtd2Via2l0LWJveC1hbGlnbgogUEFTUyAtd2Via2l0LWJveC1kZWNv
cmF0aW9uLWJyZWFrCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS9nZXRDb21wdXRlZFN0eWxlLWRldGFjaGVkLXN1YnRyZWUt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9jc3MvY3Nzb20vZ2V0Q29tcHV0ZWRTdHlsZS1kZXRhY2hlZC1zdWJ0cmVlLWV4cGVjdGVkLnR4
dAppbmRleCA5YzZjMmQ2OTQ5NmE5N2Y1ZGVhZDcwYTJjMGFhNzBiMjY4ZGU4M2VmLi5hZmUzZGRj
MjIwMDBhMGU3NzQzOGFmYjJjZmZkMzlmYTc0ZmQ0ZGY4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS9nZXRDb21wdXRlZFN0
eWxlLWRldGFjaGVkLXN1YnRyZWUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dldENvbXB1dGVkU3R5bGUtZGV0
YWNoZWQtc3VidHJlZS1leHBlY3RlZC50eHQKQEAgLTEsOCArMSw4IEBACiAKIFBBU1MgZ2V0Q29t
cHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBkZXRhY2hlZCBlbGVtZW50Ci1GQUlMIGdl
dENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBpbiBub24tcmVuZGVy
ZWQgaWZyYW1lIChkaXNwbGF5OiBub25lKSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBn
b3QgMzk3Ci1GQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVu
dCBpbiBub24tcmVuZGVyZWQgaWZyYW1lIChkaXNwbGF5OiBub25lKSBmcm9tIGlmcmFtZSdzIHdp
bmRvdyBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk3Ci1GQUlMIGdldENvbXB1
dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBvdXRzaWRlIHRoZSBmbGF0IHRy
ZWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDM5NwotRkFJTCBnZXRDb21wdXRl
ZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIGRlc2NlbmRhbnQgb3V0c2lkZSB0aGUgZmxhdCB0
cmVlIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTcKK0ZBSUwgZ2V0Q29tcHV0
ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50IGluIG5vbi1yZW5kZXJlZCBpZnJh
bWUgKGRpc3BsYXk6IG5vbmUpIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTYK
K0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50IGluIG5v
bi1yZW5kZXJlZCBpZnJhbWUgKGRpc3BsYXk6IG5vbmUpIGZyb20gaWZyYW1lJ3Mgd2luZG93IGFz
c2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTYKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHls
ZSByZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50IG91dHNpZGUgdGhlIGZsYXQgdHJlZSBhc3Nl
cnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk2CitGQUlMIGdldENvbXB1dGVkU3R5bGUg
cmV0dXJucyBubyBzdHlsZSBmb3IgZGVzY2VuZGFudCBvdXRzaWRlIHRoZSBmbGF0IHRyZWUgYXNz
ZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDM5NgogUEFTUyBnZXRDb21wdXRlZFN0eWxl
IHJldHVybnMgbm8gc3R5bGUgZm9yIHNoYWRvdyB0cmVlIG91dHNpZGUgb2YgZmxhdHRlbmVkIHRy
ZWUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jYXNjYWRlL2FsbC1wcm9wLWluaXRpYWwteG1sLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9jc3MtY2FzY2FkZS9hbGwtcHJvcC1pbml0aWFsLXhtbC1leHBlY3Rl
ZC50eHQKaW5kZXggN2IxYjNjNjg0NGM0NDk3MjE0M2ZhNjAzMzcxYWIzMDU5Y2IyMDc3Zi4uYTI2
MTM1MDU1MGQ4Yjg3ZTM2YzJjZGZjOWFjYmRiMWUxMTVjN2M4ZiAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvcGxhdGZvcm0vZ3RrL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nz
cy1jYXNjYWRlL2FsbC1wcm9wLWluaXRpYWwteG1sLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9ndGsvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nz
LWNhc2NhZGUvYWxsLXByb3AtaW5pdGlhbC14bWwtZXhwZWN0ZWQudHh0CkBAIC0zMzksNyArMzM5
LDYgQEAgUEFTUyAtd2Via2l0LWJhY2tncm91bmQtY2xpcAogUEFTUyAtd2Via2l0LWJhY2tncm91
bmQtb3JpZ2luCiBQQVNTIC13ZWJraXQtYmFja2dyb3VuZC1zaXplCiBQQVNTIC13ZWJraXQtYm9y
ZGVyLWhvcml6b250YWwtc3BhY2luZwotUEFTUyAtd2Via2l0LWJvcmRlci1pbWFnZQogUEFTUyAt
d2Via2l0LWJvcmRlci12ZXJ0aWNhbC1zcGFjaW5nCiBQQVNTIC13ZWJraXQtYm94LWFsaWduCiBQ
QVNTIC13ZWJraXQtYm94LWRlY29yYXRpb24tYnJlYWsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L3BsYXRmb3JtL2d0ay9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS9n
ZXRDb21wdXRlZFN0eWxlLWRldGFjaGVkLXN1YnRyZWUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vZ3RrL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29t
L2dldENvbXB1dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS1leHBlY3RlZC50eHQKaW5kZXggYTVl
ZWE2Yzg2OGIxNGIxMTRjOWMyNWMzZDM1MzFiZmY5YzhhNTE5ZS4uNjgzN2VhMjZmZmRkODc0YTll
Y2UyMjQ1OTlkYzlkNThlMDg2ZGJjNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
Z3RrL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dldENvbXB1dGVk
U3R5bGUtZGV0YWNoZWQtc3VidHJlZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vZ3RrL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dldENv
bXB1dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS1leHBlY3RlZC50eHQKQEAgLTEsOCArMSw4IEBA
CiAKIFBBU1MgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBkZXRhY2hlZCBl
bGVtZW50Ci1GQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVu
dCBpbiBub24tcmVuZGVyZWQgaWZyYW1lIChkaXNwbGF5OiBub25lKSBhc3NlcnRfZXF1YWxzOiBl
eHBlY3RlZCAwIGJ1dCBnb3QgMzk1Ci1GQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBz
dHlsZSBmb3IgZWxlbWVudCBpbiBub24tcmVuZGVyZWQgaWZyYW1lIChkaXNwbGF5OiBub25lKSBm
cm9tIGlmcmFtZSdzIHdpbmRvdyBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk1
Ci1GQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBvdXRz
aWRlIHRoZSBmbGF0IHRyZWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDM5NQot
RkFJTCBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIGRlc2NlbmRhbnQgb3V0
c2lkZSB0aGUgZmxhdCB0cmVlIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTUK
K0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50IGluIG5v
bi1yZW5kZXJlZCBpZnJhbWUgKGRpc3BsYXk6IG5vbmUpIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVk
IDAgYnV0IGdvdCAzOTQKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZv
ciBlbGVtZW50IGluIG5vbi1yZW5kZXJlZCBpZnJhbWUgKGRpc3BsYXk6IG5vbmUpIGZyb20gaWZy
YW1lJ3Mgd2luZG93IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTQKK0ZBSUwg
Z2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50IG91dHNpZGUgdGhl
IGZsYXQgdHJlZSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk0CitGQUlMIGdl
dENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZGVzY2VuZGFudCBvdXRzaWRlIHRo
ZSBmbGF0IHRyZWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDM5NAogUEFTUyBn
ZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIHNoYWRvdyB0cmVlIG91dHNpZGUg
b2YgZmxhdHRlbmVkIHRyZWUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9z
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jYXNjYWRlL2FsbC1wcm9w
LWluaXRpYWwteG1sLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY2FzY2FkZS9hbGwtcHJvcC1pbml0
aWFsLXhtbC1leHBlY3RlZC50eHQKaW5kZXggYmUzZGI5MGNkMDkwMDAwM2JkODA4NWE1OWVjMDhk
ZWE3MTEzN2ZjMS4uNDMwOTg1ZTQ2Y2ExMjk5MmZkYmU4OWJlZDI2ZTI1M2RiMDE1YWViYyAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvY3NzL2Nzcy1jYXNjYWRlL2FsbC1wcm9wLWluaXRpYWwteG1sLWV4cGVjdGVkLnR4
dAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9jc3MvY3NzLWNhc2NhZGUvYWxsLXByb3AtaW5pdGlhbC14bWwtZXhwZWN0ZWQudHh0
CkBAIC0zMTEsNyArMzExLDYgQEAgUEFTUyAtd2Via2l0LWJhY2tncm91bmQtY2xpcAogUEFTUyAt
d2Via2l0LWJhY2tncm91bmQtb3JpZ2luCiBQQVNTIC13ZWJraXQtYmFja2dyb3VuZC1zaXplCiBQ
QVNTIC13ZWJraXQtYm9yZGVyLWhvcml6b250YWwtc3BhY2luZwotUEFTUyAtd2Via2l0LWJvcmRl
ci1pbWFnZQogUEFTUyAtd2Via2l0LWJvcmRlci12ZXJ0aWNhbC1zcGFjaW5nCiBQQVNTIC13ZWJr
aXQtYm94LWFsaWduCiBQQVNTIC13ZWJraXQtYm94LWRlY29yYXRpb24tYnJlYWsKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2Nzcy9jc3NvbS9nZXRDb21wdXRlZFN0eWxlLWRldGFjaGVkLXN1YnRyZWUtZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL2Nzc29tL2dldENvbXB1dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS1leHBlY3Rl
ZC50eHQKaW5kZXggOTAzYmZjNmE3ZTliMjgyNzI0OGFiMDczYjUxMDY3N2U0MTQ5ZGYzMi4uYTJi
ODQ5ZWRjNDRiNWQ0OWIxMzA3NTNiOTFmYjczMDU0YzMyNjRiZiAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvcGxhdGZvcm0vaW9zL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nz
c29tL2dldENvbXB1dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS1leHBlY3RlZC50eHQKKysrIGIv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
Y3NzL2Nzc29tL2dldENvbXB1dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS1leHBlY3RlZC50eHQK
QEAgLTEsOCArMSw4IEBACiAKIFBBU1MgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxl
IGZvciBkZXRhY2hlZCBlbGVtZW50Ci1GQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBz
dHlsZSBmb3IgZWxlbWVudCBpbiBub24tcmVuZGVyZWQgaWZyYW1lIChkaXNwbGF5OiBub25lKSBh
c3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk5Ci1GQUlMIGdldENvbXB1dGVkU3R5
bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBpbiBub24tcmVuZGVyZWQgaWZyYW1lIChk
aXNwbGF5OiBub25lKSBmcm9tIGlmcmFtZSdzIHdpbmRvdyBhc3NlcnRfZXF1YWxzOiBleHBlY3Rl
ZCAwIGJ1dCBnb3QgMzk5Ci1GQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBm
b3IgZWxlbWVudCBvdXRzaWRlIHRoZSBmbGF0IHRyZWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQg
MCBidXQgZ290IDM5OQotRkFJTCBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9y
IGRlc2NlbmRhbnQgb3V0c2lkZSB0aGUgZmxhdCB0cmVlIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVk
IDAgYnV0IGdvdCAzOTkKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZv
ciBlbGVtZW50IGluIG5vbi1yZW5kZXJlZCBpZnJhbWUgKGRpc3BsYXk6IG5vbmUpIGFzc2VydF9l
cXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTgKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1
cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50IGluIG5vbi1yZW5kZXJlZCBpZnJhbWUgKGRpc3BsYXk6
IG5vbmUpIGZyb20gaWZyYW1lJ3Mgd2luZG93IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0
IGdvdCAzOTgKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVt
ZW50IG91dHNpZGUgdGhlIGZsYXQgdHJlZSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBn
b3QgMzk4CitGQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZGVzY2Vu
ZGFudCBvdXRzaWRlIHRoZSBmbGF0IHRyZWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQg
Z290IDM5OAogUEFTUyBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIHNoYWRv
dyB0cmVlIG91dHNpZGUgb2YgZmxhdHRlbmVkIHRyZWUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vd3BlL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1j
YXNjYWRlL2FsbC1wcm9wLWluaXRpYWwteG1sLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3Bs
YXRmb3JtL3dwZS9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY2FzY2Fk
ZS9hbGwtcHJvcC1pbml0aWFsLXhtbC1leHBlY3RlZC50eHQKaW5kZXggOGUyZDAxMTFmYTExODYw
YTM1MDQwOTQ0MGI0NzU0ZWI0YTI0MTQzZS4uOTM5NTYzMmI5OTE4ZjZhMzkwOTM5MDRiMDJhZWRm
MWY4Zjk5M2E0NyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd3BlL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jYXNjYWRlL2FsbC1wcm9wLWluaXRpYWwt
eG1sLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93cGUvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNhc2NhZGUvYWxsLXByb3AtaW5pdGlhbC14
bWwtZXhwZWN0ZWQudHh0CkBAIC0zMzksNyArMzM5LDYgQEAgUEFTUyAtd2Via2l0LWJhY2tncm91
bmQtY2xpcAogUEFTUyAtd2Via2l0LWJhY2tncm91bmQtb3JpZ2luCiBQQVNTIC13ZWJraXQtYmFj
a2dyb3VuZC1zaXplCiBQQVNTIC13ZWJraXQtYm9yZGVyLWhvcml6b250YWwtc3BhY2luZwotUEFT
UyAtd2Via2l0LWJvcmRlci1pbWFnZQogUEFTUyAtd2Via2l0LWJvcmRlci12ZXJ0aWNhbC1zcGFj
aW5nCiBQQVNTIC13ZWJraXQtYm94LWFsaWduCiBQQVNTIC13ZWJraXQtYm94LWRlY29yYXRpb24t
YnJlYWsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3dwZS9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS9nZXRDb21wdXRlZFN0eWxlLWRldGFjaGVkLXN1
YnRyZWUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd3BlL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dldENvbXB1dGVkU3R5bGUtZGV0YWNoZWQt
c3VidHJlZS1leHBlY3RlZC50eHQKaW5kZXggNjgzN2VhMjZmZmRkODc0YTllY2UyMjQ1OTlkYzlk
NThlMDg2ZGJjNC4uODg3Y2E2YzkxOWRlM2EwYWUwMGE3ZDc1YzY3NzgzZWFlMWI1YWQ0MCAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd3BlL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvY3NzL2Nzc29tL2dldENvbXB1dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS1leHBl
Y3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd3BlL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dldENvbXB1dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJl
ZS1leHBlY3RlZC50eHQKQEAgLTEsOCArMSw4IEBACiAKIFBBU1MgZ2V0Q29tcHV0ZWRTdHlsZSBy
ZXR1cm5zIG5vIHN0eWxlIGZvciBkZXRhY2hlZCBlbGVtZW50Ci1GQUlMIGdldENvbXB1dGVkU3R5
bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBpbiBub24tcmVuZGVyZWQgaWZyYW1lIChk
aXNwbGF5OiBub25lKSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk0Ci1GQUlM
IGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBpbiBub24tcmVu
ZGVyZWQgaWZyYW1lIChkaXNwbGF5OiBub25lKSBmcm9tIGlmcmFtZSdzIHdpbmRvdyBhc3NlcnRf
ZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk0Ci1GQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0
dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBvdXRzaWRlIHRoZSBmbGF0IHRyZWUgYXNzZXJ0X2Vx
dWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDM5NAotRkFJTCBnZXRDb21wdXRlZFN0eWxlIHJldHVy
bnMgbm8gc3R5bGUgZm9yIGRlc2NlbmRhbnQgb3V0c2lkZSB0aGUgZmxhdCB0cmVlIGFzc2VydF9l
cXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTQKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1
cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50IGluIG5vbi1yZW5kZXJlZCBpZnJhbWUgKGRpc3BsYXk6
IG5vbmUpIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTMKK0ZBSUwgZ2V0Q29t
cHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50IGluIG5vbi1yZW5kZXJlZCBp
ZnJhbWUgKGRpc3BsYXk6IG5vbmUpIGZyb20gaWZyYW1lJ3Mgd2luZG93IGFzc2VydF9lcXVhbHM6
IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTMKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5v
IHN0eWxlIGZvciBlbGVtZW50IG91dHNpZGUgdGhlIGZsYXQgdHJlZSBhc3NlcnRfZXF1YWxzOiBl
eHBlY3RlZCAwIGJ1dCBnb3QgMzkzCitGQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBz
dHlsZSBmb3IgZGVzY2VuZGFudCBvdXRzaWRlIHRoZSBmbGF0IHRyZWUgYXNzZXJ0X2VxdWFsczog
ZXhwZWN0ZWQgMCBidXQgZ290IDM5MwogUEFTUyBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8g
c3R5bGUgZm9yIHNoYWRvdyB0cmVlIG91dHNpZGUgb2YgZmxhdHRlbmVkIHRyZWUKIApkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvc3ZnL2Nzcy9nZXRDb21wdXRlZFN0eWxlLWJhc2ljLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL3N2Zy9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS1iYXNpYy1leHBlY3Rl
ZC50eHQKaW5kZXggM2ZlNzc4ZmMwNGQ1YzYwMWY3YzAzNzZiZjNlMWY2OTJiYjg4NDRjZS4uYzU2
NDI4OTlkNjA3YTM2ZDE3OTRiYWZmOWJmZWVjZjUyNTAxZGYyNSAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvc3ZnL2Nzcy9nZXRDb21wdXRlZFN0eWxlLWJhc2ljLWV4cGVjdGVkLnR4dAorKysgYi9M
YXlvdXRUZXN0cy9zdmcvY3NzL2dldENvbXB1dGVkU3R5bGUtYmFzaWMtZXhwZWN0ZWQudHh0CkBA
IC00MTgsOCArNDE4LDYgQEAgcmVjdDogc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgtd2Via2l0LWJh
Y2tncm91bmQtc2l6ZSkgOiBhdXRvCiByZWN0OiBzdHlsZS5nZXRQcm9wZXJ0eUNTU1ZhbHVlKC13
ZWJraXQtYmFja2dyb3VuZC1zaXplKSA6IFtvYmplY3QgQ1NTUHJpbWl0aXZlVmFsdWVdCiByZWN0
OiBzdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKC13ZWJraXQtYm9yZGVyLWhvcml6b250YWwtc3BhY2lu
ZykgOiAwcHgKIHJlY3Q6IHN0eWxlLmdldFByb3BlcnR5Q1NTVmFsdWUoLXdlYmtpdC1ib3JkZXIt
aG9yaXpvbnRhbC1zcGFjaW5nKSA6IFtvYmplY3QgQ1NTUHJpbWl0aXZlVmFsdWVdCi1yZWN0OiBz
dHlsZS5nZXRQcm9wZXJ0eVZhbHVlKC13ZWJraXQtYm9yZGVyLWltYWdlKSA6IG5vbmUKLXJlY3Q6
IHN0eWxlLmdldFByb3BlcnR5Q1NTVmFsdWUoLXdlYmtpdC1ib3JkZXItaW1hZ2UpIDogW29iamVj
dCBDU1NQcmltaXRpdmVWYWx1ZV0KIHJlY3Q6IHN0eWxlLmdldFByb3BlcnR5VmFsdWUoLXdlYmtp
dC1ib3JkZXItdmVydGljYWwtc3BhY2luZykgOiAwcHgKIHJlY3Q6IHN0eWxlLmdldFByb3BlcnR5
Q1NTVmFsdWUoLXdlYmtpdC1ib3JkZXItdmVydGljYWwtc3BhY2luZykgOiBbb2JqZWN0IENTU1By
aW1pdGl2ZVZhbHVlXQogcmVjdDogc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgtd2Via2l0LWJveC1h
bGlnbikgOiBzdHJldGNoCkBAIC05MzQsOCArOTMyLDYgQEAgZzogc3R5bGUuZ2V0UHJvcGVydHlW
YWx1ZSgtd2Via2l0LWJhY2tncm91bmQtc2l6ZSkgOiBhdXRvCiBnOiBzdHlsZS5nZXRQcm9wZXJ0
eUNTU1ZhbHVlKC13ZWJraXQtYmFja2dyb3VuZC1zaXplKSA6IFtvYmplY3QgQ1NTUHJpbWl0aXZl
VmFsdWVdCiBnOiBzdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKC13ZWJraXQtYm9yZGVyLWhvcml6b250
YWwtc3BhY2luZykgOiAwcHgKIGc6IHN0eWxlLmdldFByb3BlcnR5Q1NTVmFsdWUoLXdlYmtpdC1i
b3JkZXItaG9yaXpvbnRhbC1zcGFjaW5nKSA6IFtvYmplY3QgQ1NTUHJpbWl0aXZlVmFsdWVdCi1n
OiBzdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKC13ZWJraXQtYm9yZGVyLWltYWdlKSA6IG5vbmUKLWc6
IHN0eWxlLmdldFByb3BlcnR5Q1NTVmFsdWUoLXdlYmtpdC1ib3JkZXItaW1hZ2UpIDogW29iamVj
dCBDU1NQcmltaXRpdmVWYWx1ZV0KIGc6IHN0eWxlLmdldFByb3BlcnR5VmFsdWUoLXdlYmtpdC1i
b3JkZXItdmVydGljYWwtc3BhY2luZykgOiAwcHgKIGc6IHN0eWxlLmdldFByb3BlcnR5Q1NTVmFs
dWUoLXdlYmtpdC1ib3JkZXItdmVydGljYWwtc3BhY2luZykgOiBbb2JqZWN0IENTU1ByaW1pdGl2
ZVZhbHVlXQogZzogc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgtd2Via2l0LWJveC1hbGlnbikgOiBz
dHJldGNoCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>456400</attachid>
            <date>2022-04-01 14:09:36 -0700</date>
            <delta_ts>2022-04-01 14:37:00 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-237487-20220401230935.patch</filename>
            <type>text/plain</type>
            <size>86215</size>
            <attacher name="Oriol Brufau">obrufau</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkxNzQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzI5OTFmYTkzYjc0MWRh
MDc2ZTk4MTFmYTYxMDExZGQ2MzdiNWYyMC4uMDcwMzE0ODE0NWVmYmY1Y2NhOWJkMWY1MjQ4ZjNi
YWUzYjA0N2RlZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDg4IEBACisyMDIyLTA0LTAxICBPcmlv
bCBCcnVmYXUgIDxvYnJ1ZmF1QGlnYWxpYS5jb20+CisKKyAgICAgICAgW2Nzc10gVHVybiAtd2Vi
a2l0LWJvcmRlci1pbWFnZSBpbnRvIGEgc2hvcnRoYW5kCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzc0ODcKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGUgJy13ZWJraXQtYm9yZGVyLWltYWdlJyBwcm9w
ZXJ0eSB3YXMgY29uc2lkZXJlZCB0byBiZSBhIGxvbmdoYW5kLAorICAgICAgICBzaGFyaW5nIGNv
bXB1dGVkIHZhbHVlcyB3aXRoIHRoZSB2YXJpb3VzICdib3JkZXItaW1hZ2UtKicuCisKKyAgICAg
ICAgVGhpcyBwYXRjaCB0dXJucyBpdCBpbnRvIGEgc2hvcnRoYW5kIG9mICdib3JkZXItaW1hZ2Ut
KicuCisKKyAgICAgICAgVGVzdHM6IGZhc3QvY3NzL2JvcmRlci1pbWFnZS1zdHlsZS1sZW5ndGgu
aHRtbAorICAgICAgICAgICAgICAgZmFzdC9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS9jb21wdXRlZC1z
dHlsZS5odG1sCisgICAgICAgICAgICAgICBmYXN0L2Nzcy9nZXRDb21wdXRlZFN0eWxlL2NvbXB1
dGVkLXN0eWxlLXdpdGhvdXQtcmVuZGVyZXIuaHRtbAorICAgICAgICAgICAgICAgZmFzdC9jc3Mv
aW1hZ2Utc2V0LXBhcnNpbmcuaHRtbAorICAgICAgICAgICAgICAgZmFzdC9jc3MvdXJpLXRva2Vu
LXBhcnNpbmcuaHRtbAorICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9jc3MvY3NzLWNhc2NhZGUvYWxsLXByb3AtaW5pdGlhbC14bWwuaHRtbAorICAgICAgICAg
ICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nzb20vZ2V0Q29tcHV0
ZWRTdHlsZS1kZXRhY2hlZC1zdWJ0cmVlLmh0bWwKKyAgICAgICAgICAgICAgIHN2Zy9jc3MvZ2V0
Q29tcHV0ZWRTdHlsZS1iYXNpYy54aHRtbAorCisgICAgICAgICogU291cmNlcy50eHQ6CisgICAg
ICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIGFuaW1h
dGlvbi9DU1NQcm9wZXJ0eUFuaW1hdGlvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpibGVuZEZ1
bmMpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUHJvcGVydHlBbmltYXRpb25XcmFwcGVyTWFwOjpD
U1NQcm9wZXJ0eUFuaW1hdGlvbldyYXBwZXJNYXApOgorICAgICAgICAqIGNzcy9DU1NCb3JkZXJJ
bWFnZVdpZHRoVmFsdWUuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkNTU0JvcmRlcklt
YWdlV2lkdGhWYWx1ZTo6Q1NTQm9yZGVySW1hZ2VXaWR0aFZhbHVlKToKKyAgICAgICAgKFdlYkNv
cmU6OkNTU0JvcmRlckltYWdlV2lkdGhWYWx1ZTo6Y3VzdG9tQ1NTVGV4dCBjb25zdCk6CisgICAg
ICAgIChXZWJDb3JlOjpDU1NCb3JkZXJJbWFnZVdpZHRoVmFsdWU6OmVxdWFscyBjb25zdCk6Cisg
ICAgICAgICogY3NzL0NTU0JvcmRlckltYWdlV2lkdGhWYWx1ZS5oOiBBZGRlZC4KKyAgICAgICAg
KiBjc3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OnZhbHVlRm9yTmluZVBpZWNlSW1hZ2UpOgorICAgICAgICAoV2ViQ29yZTo6dmFsdWVGb3JSZWZs
ZWN0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OkNvbXB1dGVkU3R5bGVFeHRyYWN0b3I6OnZhbHVl
Rm9yUHJvcGVydHlJblN0eWxlKToKKyAgICAgICAgKiBjc3MvQ1NTUHJvcGVydGllcy5qc29uOgor
ICAgICAgICAqIGNzcy9DU1NUb1N0eWxlTWFwLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1Rv
U3R5bGVNYXA6Om1hcE5pbmVQaWVjZUltYWdlKToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1RvU3R5
bGVNYXA6Om1hcE5pbmVQaWVjZUltYWdlV2lkdGgpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTVG9T
dHlsZU1hcDo6bWFwTmluZVBpZWNlSW1hZ2VRdWFkKToKKyAgICAgICAgKiBjc3MvQ1NTVG9TdHls
ZU1hcC5oOgorICAgICAgICAqIGNzcy9DU1NWYWx1ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpD
U1NWYWx1ZTo6ZXF1YWxzIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1ZhbHVlOjpjc3NU
ZXh0IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1ZhbHVlOjpkZXN0cm95KToKKyAgICAg
ICAgKiBjc3MvQ1NTVmFsdWUuaDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1ZhbHVlOjppc0JvcmRl
ckltYWdlV2lkdGhWYWx1ZSBjb25zdCk6CisgICAgICAgICogY3NzL1N0eWxlUHJvcGVydGllcy5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZVByb3BlcnRpZXM6OmdldFByb3BlcnR5VmFsdWUg
Y29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVQcm9wZXJ0aWVzOjpib3JkZXJJbWFnZVBy
b3BlcnR5VmFsdWUgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVQcm9wZXJ0aWVzOjph
c1RleHQgY29uc3QpOgorICAgICAgICAqIGNzcy9TdHlsZVByb3BlcnRpZXMuaDoKKyAgICAgICAg
KiBjc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmNv
bnN1bWVCb3JkZXJJbWFnZVdpZHRoKToKKyAgICAgICAgKFdlYkNvcmU6OmNvbnN1bWVCb3JkZXJJ
bWFnZUNvbXBvbmVudHMpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUHJvcGVydHlQYXJzZXI6OnBh
cnNlU2luZ2xlVmFsdWUpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUHJvcGVydHlQYXJzZXI6OmNv
bnN1bWVCb3JkZXJJbWFnZSk6CisgICAgICAgIChXZWJDb3JlOjpDU1NQcm9wZXJ0eVBhcnNlcjo6
cGFyc2VTaG9ydGhhbmQpOgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9Cb3JkZXJEYXRhLmg6
CisgICAgICAgIChXZWJDb3JlOjpCb3JkZXJEYXRhOjpib3JkZXJMZWZ0V2lkdGggY29uc3QpOgor
ICAgICAgICAoV2ViQ29yZTo6Qm9yZGVyRGF0YTo6Ym9yZGVyUmlnaHRXaWR0aCBjb25zdCk6Cisg
ICAgICAgIChXZWJDb3JlOjpCb3JkZXJEYXRhOjpib3JkZXJUb3BXaWR0aCBjb25zdCk6CisgICAg
ICAgIChXZWJDb3JlOjpCb3JkZXJEYXRhOjpib3JkZXJCb3R0b21XaWR0aCBjb25zdCk6CisgICAg
ICAgICogcmVuZGVyaW5nL3N0eWxlL05pbmVQaWVjZUltYWdlLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6Ok5pbmVQaWVjZUltYWdlOjpOaW5lUGllY2VJbWFnZSk6CisgICAgICAgIChXZWJDb3JlOjpO
aW5lUGllY2VJbWFnZTo6RGF0YTo6RGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpOaW5lUGllY2VJ
bWFnZTo6RGF0YTo6Y3JlYXRlKToKKyAgICAgICAgKFdlYkNvcmU6Ok5pbmVQaWVjZUltYWdlOjpE
YXRhOjpvcGVyYXRvcj09IGNvbnN0KToKKyAgICAgICAgKiByZW5kZXJpbmcvc3R5bGUvTmluZVBp
ZWNlSW1hZ2UuaDoKKyAgICAgICAgKFdlYkNvcmU6Ok5pbmVQaWVjZUltYWdlOjpvdmVycmlkZXNC
b3JkZXJXaWR0aHMgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6TmluZVBpZWNlSW1hZ2U6OnNl
dE92ZXJyaWRlc0JvcmRlcldpZHRocyk6CisgICAgICAgIChXZWJDb3JlOjpOaW5lUGllY2VJbWFn
ZTo6Y29weUJvcmRlclNsaWNlc0Zyb20pOgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9SZW5k
ZXJTdHlsZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJTdHlsZTo6c2V0Qm9yZGVySW1h
Z2VXaWR0aE92ZXJyaWRlc0JvcmRlcldpZHRocyk6CisgICAgICAgICogcmVuZGVyaW5nL3N0eWxl
L1JlbmRlclN0eWxlLmg6CisgICAgICAgICogc3R5bGUvUHJvcGVydHlDYXNjYWRlLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlN0eWxlOjpzaG91bGRBcHBseVByb3BlcnR5SW5QYXJzZU9yZGVyKToK
KyAgICAgICAgKiBzdHlsZS9TdHlsZUJ1aWxkZXJDb252ZXJ0ZXIuaDoKKyAgICAgICAgKFdlYkNv
cmU6OlN0eWxlOjpCdWlsZGVyQ29udmVydGVyOjpjb252ZXJ0Qm9yZGVyTWFzayk6CisgICAgICAg
IChXZWJDb3JlOjpTdHlsZTo6QnVpbGRlckNvbnZlcnRlcjo6Y29udmVydFJlZmxlY3Rpb24pOgor
ICAgICAgICAoV2ViQ29yZTo6U3R5bGU6OkJ1aWxkZXJDb252ZXJ0ZXI6OmNvbnZlcnRCb3JkZXJJ
bWFnZSk6IERlbGV0ZWQuCisgICAgICAgICogc3R5bGUvU3R5bGVCdWlsZGVyQ3VzdG9tLmg6Cisg
ICAgICAgIChXZWJDb3JlOjpTdHlsZTo6QXBwbHlQcm9wZXJ0eUJvcmRlckltYWdlTW9kaWZpZXI6
OmFwcGx5SW5pdGlhbFZhbHVlKToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlOjpBcHBseVByb3Bl
cnR5Qm9yZGVySW1hZ2VNb2RpZmllcjo6YXBwbHlWYWx1ZSk6CisKIDIwMjItMDMtMjMgIFlvdWVu
biBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIFZpZGVvRnJhbWUgZG9lcyBu
b3QgbmVlZCB0byBpbmhlcml0IGZyb20gTWVkaWFTYW1wbGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL1NvdXJjZXMudHh0IGIvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQKaW5kZXggNDdh
YzUzZGZmMjFmMzI4N2M0NTI4YjNlMGU0N2M5N2Y3MWJiOGFiOC4uOGZlNzQyNWJkMTMzZjhmMzg0
NGRhZGUzYzc3MTc2NThjN2NkZDY0NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvU291cmNl
cy50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQKQEAgLTcxMiw2ICs3MTIsNyBA
QCBjc3MvQ1NTQXNwZWN0UmF0aW9WYWx1ZS5jcHAKIGNzcy9DU1NCYXNpY1NoYXBlcy5jcHAKIGNz
cy9DU1NCb3JkZXJJbWFnZS5jcHAKIGNzcy9DU1NCb3JkZXJJbWFnZVNsaWNlVmFsdWUuY3BwCitj
c3MvQ1NTQm9yZGVySW1hZ2VXaWR0aFZhbHVlLmNwcAogY3NzL0NTU0NhbnZhc1ZhbHVlLmNwcAog
Y3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAKIGNzcy9DU1NDb25kaXRpb25SdWxl
LmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qCmluZGV4IGRkOGVlN2JjMjEwYzE4YjM4NjY4ZDJlNjk5N2U0NDI4ODhhZjUwOGUuLjkyYmMw
NTI5Y2YwZTMzOWNkZDZkMTM0MTM0NTkwZDcwYmNjN2JkZDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTEwMTUsNiArMTAxNSw3
IEBACiAJCTMzNTAzQzlBMTAxNzlBNzQwMDNCNDdFMSAvKiBOb3RpZmljYXRpb25DbGllbnQuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMzNTAzQzk5MTAx
NzlBNzQwMDNCNDdFMSAvKiBOb3RpZmljYXRpb25DbGllbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQkzMzUwM0NBNDEwMTc5QUQ3MDAzQjQ3RTEg
LyogSlNOb3RpZmljYXRpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDMzNTAzQ0EwMTAxNzlBRDcwMDNCNDdFMSAvKiBKU05vdGlmaWNhdGlvbi5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTMzRDAyMTJE
MTMxREIzN0IwMDQwOTFBOCAvKiBDb29raWVTdG9yYWdlLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMTNGMDFFQTEyNzBFMTBEMDBERkJBNzEgLyogQ29v
a2llU3RvcmFnZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CisJCTM1N0I1ODFEMjdGNzkwOUEwMEI5M0U0RSAvKiBDU1NCb3JkZXJJbWFnZVdpZHRoVmFs
dWUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDM1N0I1
ODFDMjdGNzkwOUEwMEI5M0U0RSAvKiBDU1NCb3JkZXJJbWFnZVdpZHRoVmFsdWUuaCAqLzsgfTsK
IAkJMzVDNzRGREIyMjhBMUVGNjAwMEMyMUEwIC8qIENTU0dyaWRJbnRlZ2VyUmVwZWF0VmFsdWUu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDM1Qzc0RkQ3
MjI4QTE5QTYwMDBDMjFBMCAvKiBDU1NHcmlkSW50ZWdlclJlcGVhdFZhbHVlLmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMzcxN0Q3RTgxN0VDQzU5
MTAwM0MyNzZEIC8qIGV4dHJhY3QtbG9jYWxpemFibGUtc3RyaW5ncy5wbCBpbiBDb3B5IFNjcmlw
dHMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzcxN0Q3RTUxN0VDQzNBNjAw
M0MyNzZEIC8qIGV4dHJhY3QtbG9jYWxpemFibGUtc3RyaW5ncy5wbCAqLzsgfTsKIAkJMzcxRTY1
Q0MxMzY2MUVEQzAwQkVFREIwIC8qIFBhZ2VTZXJpYWxpemVyLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzNzFFNjVDQjEzNjYxRURDMDBCRUVEQjAgLyog
UGFnZVNlcmlhbGl6ZXIuaCAqLzsgfTsKQEAgLTg0NjcsNiArODQ2OCw4IEBACiAJCTMzNTAzQzlG
MTAxNzlBRDcwMDNCNDdFMSAvKiBKU05vdGlmaWNhdGlvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBKU05vdGlmaWNhdGlvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTMzNTAzQ0EwMTAxNzlBRDcwMDNCNDdFMSAvKiBKU05vdGlmaWNhdGlvbi5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU05vdGlmaWNhdGlvbi5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkzMzUwM0NDNjEwMTdBMUIxMDAzQjQ3RTEgLyogTm90
aWZpY2F0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE5vdGlm
aWNhdGlvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTM1N0I1ODFDMjdGNzkw
OUEwMEI5M0U0RSAvKiBDU1NCb3JkZXJJbWFnZVdpZHRoVmFsdWUuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gQ1NTQm9yZGVySW1hZ2VXaWR0aFZhbHVlLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTM1N0I1ODFFMjdGNzkwQkQwMEI5M0U0RSAvKiBDU1NCb3JkZXJJ
bWFnZVdpZHRoVmFsdWUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
Q1NTQm9yZGVySW1hZ2VXaWR0aFZhbHVlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJMzVDNzRGRDMyMjhBMTkxMjAwMEMyMUEwIC8qIENTU0dyaWRJbnRlZ2VyUmVwZWF0VmFsdWUu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ1NTR3JpZEludGVnZXJSZXBlYXRWYWx1ZS5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTM1Qzc0RkQ3MjI4QTE5QTYwMDBDMjFBMCAvKiBD
U1NHcmlkSW50ZWdlclJlcGVhdFZhbHVlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENTU0dyaWRJbnRlZ2Vy
UmVwZWF0VmFsdWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzY2MkY5ODQwNDdD
RURCRTVERERBRkFBIC8qIFJlbmRlck1hdGhNTE1lbmNsb3NlLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlbmRlck1hdGhNTE1lbmNsb3NlLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTMxNzA0LDYgKzMxNzA3LDggQEAKIAkJCQlFMTZBODRGODE0
Qzg1Q0NDMDAyOTc3REYgLyogQ1NTQm9yZGVySW1hZ2UuaCAqLywKIAkJCQlCQzI3NEIzMDE0MEVC
RUQ4MDBFQURGQTYgLyogQ1NTQm9yZGVySW1hZ2VTbGljZVZhbHVlLmNwcCAqLywKIAkJCQlCQzI3
NEIyRTE0MEVCRUIyMDBFQURGQTYgLyogQ1NTQm9yZGVySW1hZ2VTbGljZVZhbHVlLmggKi8sCisJ
CQkJMzU3QjU4MUUyN0Y3OTBCRDAwQjkzRTRFIC8qIENTU0JvcmRlckltYWdlV2lkdGhWYWx1ZS5j
cHAgKi8sCisJCQkJMzU3QjU4MUMyN0Y3OTA5QTAwQjkzRTRFIC8qIENTU0JvcmRlckltYWdlV2lk
dGhWYWx1ZS5oICovLAogCQkJCUJDNjA0QTQyMERCNTYzNEUwMDIwNDczOSAvKiBDU1NDYW52YXNW
YWx1ZS5jcHAgKi8sCiAJCQkJQkM2MDQ5Q0IwREI1NjBDMjAwMjA0NzM5IC8qIENTU0NhbnZhc1Zh
bHVlLmggKi8sCiAJCQkJQkNFQTQ3N0MwOTdDQUFDODAwOTRDOUU0IC8qIENTU0NvbXB1dGVkU3R5
bGVEZWNsYXJhdGlvbi5jcHAgKi8sCkBAIC0zNDExMyw2ICszNDExOCw3IEBACiAJCQkJRkJENkFG
ODgxNUVGMjVDOTAwOEI3MTEwIC8qIENTU0Jhc2ljU2hhcGVzLmggaW4gSGVhZGVycyAqLywKIAkJ
CQlFMTZBODRGQTE0Qzg1Q0NDMDAyOTc3REYgLyogQ1NTQm9yZGVySW1hZ2UuaCBpbiBIZWFkZXJz
ICovLAogCQkJCUJDMjc0QjJGMTQwRUJFQjIwMEVBREZBNiAvKiBDU1NCb3JkZXJJbWFnZVNsaWNl
VmFsdWUuaCBpbiBIZWFkZXJzICovLAorCQkJCTM1N0I1ODFEMjdGNzkwOUEwMEI5M0U0RSAvKiBD
U1NCb3JkZXJJbWFnZVdpZHRoVmFsdWUuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDRjE2NDZBMjY2
MkE5MzQwMDAyRjdFRiAvKiBDU1NDYWxjQ2F0ZWdvcnlNYXBwaW5nLmggaW4gSGVhZGVycyAqLywK
IAkJCQlCQ0YxNjQ1MTI2NjI5RkM3MDAwMkY3RUYgLyogQ1NTQ2FsY0V4cHJlc3Npb25Ob2RlLmgg
aW4gSGVhZGVycyAqLywKIAkJCQlCQ0YxNjQ2NTI2NjJBMzFBMDAwMkY3RUYgLyogQ1NTQ2FsY0V4
cHJlc3Npb25Ob2RlUGFyc2VyLmggaW4gSGVhZGVycyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2FuaW1hdGlvbi9DU1NQcm9wZXJ0eUFuaW1hdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9hbmltYXRpb24vQ1NTUHJvcGVydHlBbmltYXRpb24uY3BwCmluZGV4IDZmNzRjOWYzNDgwYmUy
NzlkOGRmYzg5ZDA0MWFlY2QyODlmZjlmZGUuLmJhNjcxZDNmZDg4NzI1MTYyMzliNzY2ZmZlYzMz
MDE0MDQ0ZTg0ZjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9DU1NQcm9w
ZXJ0eUFuaW1hdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0NTU1Byb3Bl
cnR5QW5pbWF0aW9uLmNwcApAQCAtNTQ5LDcgKzU0OSw3IEBAIHN0YXRpYyBpbmxpbmUgTmluZVBp
ZWNlSW1hZ2UgYmxlbmRGdW5jKGNvbnN0IE5pbmVQaWVjZUltYWdlJiBmcm9tLCBjb25zdCBOaW5l
UGllCiAKICAgICAvLyBGSVhNRSAoNzQxMTIpOiBTdXBwb3J0IHRyYW5zaXRpb25pbmcgYmV0d2Vl
biBOaW5lUGllY2VJbWFnZXMgdGhhdCBkaWZmZXIgYnkgbW9yZSB0aGFuIGltYWdlIGNvbnRlbnQu
CiAKLSAgICBpZiAoZnJvbS5pbWFnZVNsaWNlcygpICE9IHRvLmltYWdlU2xpY2VzKCkgfHwgZnJv
bS5ib3JkZXJTbGljZXMoKSAhPSB0by5ib3JkZXJTbGljZXMoKSB8fCBmcm9tLm91dHNldCgpICE9
IHRvLm91dHNldCgpIHx8IGZyb20uZmlsbCgpICE9IHRvLmZpbGwoKSB8fCBmcm9tLmhvcml6b250
YWxSdWxlKCkgIT0gdG8uaG9yaXpvbnRhbFJ1bGUoKSB8fCBmcm9tLnZlcnRpY2FsUnVsZSgpICE9
IHRvLnZlcnRpY2FsUnVsZSgpKQorICAgIGlmIChmcm9tLmltYWdlU2xpY2VzKCkgIT0gdG8uaW1h
Z2VTbGljZXMoKSB8fCBmcm9tLmJvcmRlclNsaWNlcygpICE9IHRvLmJvcmRlclNsaWNlcygpIHx8
IGZyb20ub3V0c2V0KCkgIT0gdG8ub3V0c2V0KCkgfHwgZnJvbS5maWxsKCkgIT0gdG8uZmlsbCgp
IHx8IGZyb20ub3ZlcnJpZGVzQm9yZGVyV2lkdGhzKCkgIT0gdG8ub3ZlcnJpZGVzQm9yZGVyV2lk
dGhzKCkgfHwgZnJvbS5ob3Jpem9udGFsUnVsZSgpICE9IHRvLmhvcml6b250YWxSdWxlKCkgfHwg
ZnJvbS52ZXJ0aWNhbFJ1bGUoKSAhPSB0by52ZXJ0aWNhbFJ1bGUoKSkKICAgICAgICAgcmV0dXJu
IHRvOwogCiAgICAgaWYgKGF1dG8qIHJlbmRlcmVyID0gY29udGV4dC5jbGllbnQtPnJlbmRlcmVy
KCkpIHsKQEAgLTU1OCw3ICs1NTgsNyBAQCBzdGF0aWMgaW5saW5lIE5pbmVQaWVjZUltYWdlIGJs
ZW5kRnVuYyhjb25zdCBOaW5lUGllY2VJbWFnZSYgZnJvbSwgY29uc3QgTmluZVBpZQogICAgIH0K
IAogICAgIHJldHVybiBOaW5lUGllY2VJbWFnZShibGVuZEZ1bmMoZnJvbS5pbWFnZSgpLCB0by5p
bWFnZSgpLCBjb250ZXh0KSwKLSAgICAgICAgZnJvbS5pbWFnZVNsaWNlcygpLCBmcm9tLmZpbGwo
KSwgZnJvbS5ib3JkZXJTbGljZXMoKSwgZnJvbS5vdXRzZXQoKSwgZnJvbS5ob3Jpem9udGFsUnVs
ZSgpLCBmcm9tLnZlcnRpY2FsUnVsZSgpKTsKKyAgICAgICAgZnJvbS5pbWFnZVNsaWNlcygpLCBm
cm9tLmZpbGwoKSwgZnJvbS5ib3JkZXJTbGljZXMoKSwgZnJvbS5vdmVycmlkZXNCb3JkZXJXaWR0
aHMoKSwgZnJvbS5vdXRzZXQoKSwgZnJvbS5ob3Jpem9udGFsUnVsZSgpLCBmcm9tLnZlcnRpY2Fs
UnVsZSgpKTsKIH0KIAogI2lmIEVOQUJMRShWQVJJQVRJT05fRk9OVFMpCkBAIC0xMDE0LDYgKzEw
MTQsNyBAQCBwdWJsaWM6CiAgICAgICAgIElzTGVuZ3RoUGVyY2VudGFnZSAgICAgID0gMSA8PCAw
LAogICAgICAgICBVc2VzRmlsbEtleXdvcmQgICAgICAgICA9IDEgPDwgMSwKICAgICAgICAgQWxs
b3dzTmVnYXRpdmVWYWx1ZXMgICAgPSAxIDw8IDIsCisgICAgICAgIE1heU92ZXJyaWRlQm9yZGVy
V2lkdGhzID0gMSA8PCAzLAogICAgIH07CiAgICAgTGVuZ3RoQm94UHJvcGVydHlXcmFwcGVyKENT
U1Byb3BlcnR5SUQgcHJvcGVydHksIGNvbnN0IExlbmd0aEJveCYgKFJlbmRlclN0eWxlOjoqZ2V0
dGVyKSgpIGNvbnN0LCB2b2lkIChSZW5kZXJTdHlsZTo6KnNldHRlcikoTGVuZ3RoQm94JiYpLCBP
cHRpb25TZXQ8RmxhZ3M+IGZsYWdzID0geyB9KQogICAgICAgICA6IFByb3BlcnR5V3JhcHBlckdl
dHRlcjxjb25zdCBMZW5ndGhCb3gmPihwcm9wZXJ0eSwgZ2V0dGVyKQpAQCAtMTAyNyw5ICsxMDI4
LDE5IEBAIHB1YmxpYzoKICAgICAgICAgaWYgKG1fZmxhZ3MuY29udGFpbnMoRmxhZ3M6OlVzZXNG
aWxsS2V5d29yZCkgJiYgZnJvbS5ib3JkZXJJbWFnZSgpLmZpbGwoKSAhPSB0by5ib3JkZXJJbWFn
ZSgpLmZpbGwoKSkKICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKIAorICAgICAgICBib29sIGlz
TGVuZ3RoUGVyY2VudGFnZSA9IG1fZmxhZ3MuY29udGFpbnMoRmxhZ3M6OklzTGVuZ3RoUGVyY2Vu
dGFnZSk7CisKKyAgICAgICAgaWYgKG1fZmxhZ3MuY29udGFpbnMoRmxhZ3M6Ok1heU92ZXJyaWRl
Qm9yZGVyV2lkdGhzKSkgeworICAgICAgICAgICAgYm9vbCBvdmVycmlkZXNCb3JkZXJXaWR0aHMg
PSBmcm9tLmJvcmRlckltYWdlKCkub3ZlcnJpZGVzQm9yZGVyV2lkdGhzKCk7CisgICAgICAgICAg
ICBpZiAob3ZlcnJpZGVzQm9yZGVyV2lkdGhzICE9IHRvLmJvcmRlckltYWdlKCkub3ZlcnJpZGVz
Qm9yZGVyV2lkdGhzKCkpCisgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICAg
ICAgLy8gRXZlbiBpZiB0aGlzIHByb3BlcnR5IGFjY2VwdHMgPGxlbmd0aC1wZXJjZW50YWdlPiwg
Ym9yZGVyIHdpZHRocyBjYW4gb25seSBiZSBhIDxsZW5ndGg+LgorICAgICAgICAgICAgaWYgKG92
ZXJyaWRlc0JvcmRlcldpZHRocykKKyAgICAgICAgICAgICAgICBpc0xlbmd0aFBlcmNlbnRhZ2Ug
PSBmYWxzZTsKKyAgICAgICAgfQorCiAgICAgICAgIGF1dG8mIGZyb21MZW5ndGhCb3ggPSB2YWx1
ZShmcm9tKTsKICAgICAgICAgYXV0byYgdG9MZW5ndGhCb3ggPSB2YWx1ZSh0byk7Ci0gICAgICAg
IGJvb2wgaXNMZW5ndGhQZXJjZW50YWdlID0gbV9mbGFncy5jb250YWlucyhGbGFnczo6SXNMZW5n
dGhQZXJjZW50YWdlKTsKICAgICAgICAgcmV0dXJuIGNhbkludGVycG9sYXRlTGVuZ3Rocyhmcm9t
TGVuZ3RoQm94LnRvcCgpLCB0b0xlbmd0aEJveC50b3AoKSwgaXNMZW5ndGhQZXJjZW50YWdlKQog
ICAgICAgICAgICAgJiYgY2FuSW50ZXJwb2xhdGVMZW5ndGhzKGZyb21MZW5ndGhCb3gucmlnaHQo
KSwgdG9MZW5ndGhCb3gucmlnaHQoKSwgaXNMZW5ndGhQZXJjZW50YWdlKQogICAgICAgICAgICAg
JiYgY2FuSW50ZXJwb2xhdGVMZW5ndGhzKGZyb21MZW5ndGhCb3guYm90dG9tKCksIHRvTGVuZ3Ro
Qm94LmJvdHRvbSgpLCBpc0xlbmd0aFBlcmNlbnRhZ2UpCkBAIC0xMDQwLDYgKzEwNTEsOCBAQCBw
dWJsaWM6CiAgICAgewogICAgICAgICBpZiAobV9mbGFncy5jb250YWlucyhGbGFnczo6VXNlc0Zp
bGxLZXl3b3JkKSkKICAgICAgICAgICAgIGRlc3RpbmF0aW9uLnNldEJvcmRlckltYWdlU2xpY2VG
aWxsKCghY29udGV4dC5wcm9ncmVzcyB8fCAhY29udGV4dC5pc0Rpc2NyZXRlID8gZnJvbSA6IHRv
KS5ib3JkZXJJbWFnZSgpLmZpbGwoKSk7CisgICAgICAgIGlmIChtX2ZsYWdzLmNvbnRhaW5zKEZs
YWdzOjpNYXlPdmVycmlkZUJvcmRlcldpZHRocykpCisgICAgICAgICAgICBkZXN0aW5hdGlvbi5z
ZXRCb3JkZXJJbWFnZVdpZHRoT3ZlcnJpZGVzQm9yZGVyV2lkdGhzKCghY29udGV4dC5wcm9ncmVz
cyB8fCAhY29udGV4dC5pc0Rpc2NyZXRlID8gZnJvbSA6IHRvKS5ib3JkZXJJbWFnZSgpLm92ZXJy
aWRlc0JvcmRlcldpZHRocygpKTsKICAgICAgICAgaWYgKGNvbnRleHQuaXNEaXNjcmV0ZSkgewog
ICAgICAgICAgICAgLy8gSXQgaXMgaW1wb3J0YW50IHdlIGhhdmUgdGhpcyBub24taW50ZXJwb2xh
dGVkIHNob3J0Y3V0IGJlY2F1c2UgY2VydGFpbiBDU1MgcHJvcGVydGllcwogICAgICAgICAgICAg
Ly8gcmVwcmVzZW50ZWQgYXMgYSBMZW5ndGhCb3gsIHN1Y2ggYXMgYm9yZGVyLWltYWdlLXNsaWNl
LCBkb24ndCBrbm93IGhvdyB0byBkZWFsIHdpdGgKQEAgLTMwMDQsNyArMzAxNyw3IEBAIENTU1By
b3BlcnR5QW5pbWF0aW9uV3JhcHBlck1hcDo6Q1NTUHJvcGVydHlBbmltYXRpb25XcmFwcGVyTWFw
KCkKIAogICAgICAgICBuZXcgU3R5bGVJbWFnZVByb3BlcnR5V3JhcHBlcihDU1NQcm9wZXJ0eUJv
cmRlckltYWdlU291cmNlLCAmUmVuZGVyU3R5bGU6OmJvcmRlckltYWdlU291cmNlLCAmUmVuZGVy
U3R5bGU6OnNldEJvcmRlckltYWdlU291cmNlKSwKICAgICAgICAgbmV3IExlbmd0aEJveFByb3Bl
cnR5V3JhcHBlcihDU1NQcm9wZXJ0eUJvcmRlckltYWdlU2xpY2UsICZSZW5kZXJTdHlsZTo6Ym9y
ZGVySW1hZ2VTbGljZXMsICZSZW5kZXJTdHlsZTo6c2V0Qm9yZGVySW1hZ2VTbGljZXMsIHsgTGVu
Z3RoQm94UHJvcGVydHlXcmFwcGVyOjpGbGFnczo6VXNlc0ZpbGxLZXl3b3JkIH0pLAotICAgICAg
ICBuZXcgTGVuZ3RoQm94UHJvcGVydHlXcmFwcGVyKENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VXaWR0
aCwgJlJlbmRlclN0eWxlOjpib3JkZXJJbWFnZVdpZHRoLCAmUmVuZGVyU3R5bGU6OnNldEJvcmRl
ckltYWdlV2lkdGgsIHsgTGVuZ3RoQm94UHJvcGVydHlXcmFwcGVyOjpGbGFnczo6SXNMZW5ndGhQ
ZXJjZW50YWdlIH0pLAorICAgICAgICBuZXcgTGVuZ3RoQm94UHJvcGVydHlXcmFwcGVyKENTU1By
b3BlcnR5Qm9yZGVySW1hZ2VXaWR0aCwgJlJlbmRlclN0eWxlOjpib3JkZXJJbWFnZVdpZHRoLCAm
UmVuZGVyU3R5bGU6OnNldEJvcmRlckltYWdlV2lkdGgsIHsgTGVuZ3RoQm94UHJvcGVydHlXcmFw
cGVyOjpGbGFnczo6SXNMZW5ndGhQZXJjZW50YWdlLCBMZW5ndGhCb3hQcm9wZXJ0eVdyYXBwZXI6
OkZsYWdzOjpNYXlPdmVycmlkZUJvcmRlcldpZHRocyB9KSwKICAgICAgICAgbmV3IExlbmd0aEJv
eFByb3BlcnR5V3JhcHBlcihDU1NQcm9wZXJ0eUJvcmRlckltYWdlT3V0c2V0LCAmUmVuZGVyU3R5
bGU6OmJvcmRlckltYWdlT3V0c2V0LCAmUmVuZGVyU3R5bGU6OnNldEJvcmRlckltYWdlT3V0c2V0
KSwKIAogICAgICAgICBuZXcgU3R5bGVJbWFnZVByb3BlcnR5V3JhcHBlcihDU1NQcm9wZXJ0eVdl
YmtpdE1hc2tCb3hJbWFnZVNvdXJjZSwgJlJlbmRlclN0eWxlOjptYXNrQm94SW1hZ2VTb3VyY2Us
ICZSZW5kZXJTdHlsZTo6c2V0TWFza0JveEltYWdlU291cmNlKSwKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9DU1NCb3JkZXJJbWFnZVdpZHRoVmFsdWUuY3BwIGIvU291cmNlL1dlYkNv
cmUvY3NzL0NTU0JvcmRlckltYWdlV2lkdGhWYWx1ZS5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNmQyMTgwMTYz
ZmJjMGE2ZDk4MmJhYjU3OGQ0ZjI0MjI3MzQzNzA1NQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9DU1NCb3JkZXJJbWFnZVdpZHRoVmFsdWUuY3BwCkBAIC0wLDAgKzEsNTYg
QEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjIgSWdhbGlhIFMuTC4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEu
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICog
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExF
IElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAq
IFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICog
Q09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNF
LCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIkNTU0JvcmRl
ckltYWdlV2lkdGhWYWx1ZS5oIgorCisjaW5jbHVkZSAiUmVjdC5oIgorI2luY2x1ZGUgPHd0Zi90
ZXh0L1dURlN0cmluZy5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK0NTU0JvcmRlckltYWdl
V2lkdGhWYWx1ZTo6Q1NTQm9yZGVySW1hZ2VXaWR0aFZhbHVlKFJlZlB0cjxDU1NQcmltaXRpdmVW
YWx1ZT4mJiB3aWR0aHMsIGJvb2wgb3ZlcnJpZGVzQm9yZGVyV2lkdGhzKQorICAgIDogQ1NTVmFs
dWUoQm9yZGVySW1hZ2VXaWR0aENsYXNzKQorICAgICwgbV93aWR0aHMoV1RGTW92ZSh3aWR0aHMp
KQorICAgICwgbV9vdmVycmlkZXNCb3JkZXJXaWR0aHMob3ZlcnJpZGVzQm9yZGVyV2lkdGhzKQor
eworfQorCitTdHJpbmcgQ1NTQm9yZGVySW1hZ2VXaWR0aFZhbHVlOjpjdXN0b21DU1NUZXh0KCkg
Y29uc3QKK3sKKyAgICAvLyBib3JkZXItaW1hZ2Utd2lkdGggY2FuJ3Qgc2V0IG92ZXJyaWRlX2Jv
cmRlcl93aWR0aHMgdG8gdHJ1ZSBieSBpdHNlbGYsIHNvIHNlcmlhbGl6ZSBhcyBlbXB0eSBzdHJp
bmcuCisgICAgLy8gSXQgY2FuIG9ubHkgYmUgdHJ1ZSB2aWEgdGhlIC13ZWJraXQtYm9yZGVyLWlt
YWdlIHNob3J0aGFuZCwgd2hvc2Ugc2VyaWFsaXphdGlvbiB3aWxsIHVud3JhcCB3aWR0aHMoKSBp
ZiBuZWVkZWQuCisgICAgaWYgKG1fb3ZlcnJpZGVzQm9yZGVyV2lkdGhzKQorICAgICAgICByZXR1
cm4gZW1wdHlTdHJpbmcoKTsKKworICAgIHJldHVybiBtX3dpZHRocy0+Y3NzVGV4dCgpOworfQor
Citib29sIENTU0JvcmRlckltYWdlV2lkdGhWYWx1ZTo6ZXF1YWxzKGNvbnN0IENTU0JvcmRlcklt
YWdlV2lkdGhWYWx1ZSYgb3RoZXIpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fb3ZlcnJpZGVzQm9y
ZGVyV2lkdGhzID09IG90aGVyLm1fb3ZlcnJpZGVzQm9yZGVyV2lkdGhzICYmIGNvbXBhcmVDU1NW
YWx1ZVB0cihtX3dpZHRocywgb3RoZXIubV93aWR0aHMpOworfQorCit9IC8vIG5hbWVzcGFjZSBX
ZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQm9yZGVySW1hZ2VXaWR0
aFZhbHVlLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQm9yZGVySW1hZ2VXaWR0aFZhbHVlLmgK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uMDkxZWJiYjQ1ODdmZjJkMzM0MjcwYTYyYTY5OGUwZmJlZTlhYTE0NQotLS0g
L2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NCb3JkZXJJbWFnZVdpZHRoVmFs
dWUuaApAQCAtMCwwICsxLDU5IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIyIElnYWxpYSBT
LkwuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
KyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwor
ICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJ
TUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAq
IEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUws
IEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNF
UlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElO
VEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9V
VCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5j
bHVkZSAiQ1NTUHJpbWl0aXZlVmFsdWUuaCIKKyNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+CisKK25h
bWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgUmVjdDsKKworY2xhc3MgQ1NTQm9yZGVySW1hZ2VX
aWR0aFZhbHVlIGZpbmFsIDogcHVibGljIENTU1ZhbHVlIHsKK3B1YmxpYzoKKyAgICBzdGF0aWMg
UmVmPENTU0JvcmRlckltYWdlV2lkdGhWYWx1ZT4gY3JlYXRlKFJlZlB0cjxDU1NQcmltaXRpdmVW
YWx1ZT4mJiB3aWR0aHMsIGJvb2wgb3ZlcnJpZGVzQm9yZGVyV2lkdGhzKQorICAgIHsKKyAgICAg
ICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgQ1NTQm9yZGVySW1hZ2VXaWR0aFZhbHVlKFdURk1vdmUo
d2lkdGhzKSwgb3ZlcnJpZGVzQm9yZGVyV2lkdGhzKSk7CisgICAgfQorCisgICAgU3RyaW5nIGN1
c3RvbUNTU1RleHQoKSBjb25zdDsKKworICAgIFF1YWQqIHdpZHRocygpIGNvbnN0IHsgcmV0dXJu
IG1fd2lkdGhzID8gbV93aWR0aHMtPnF1YWRWYWx1ZSgpIDogbnVsbHB0cjsgfQorCisgICAgYm9v
bCBlcXVhbHMoY29uc3QgQ1NTQm9yZGVySW1hZ2VXaWR0aFZhbHVlJikgY29uc3Q7CisKKyAgICAv
LyBUaGVzZSBmb3VyIHZhbHVlcyBhcmUgdXNlZCB0byBtYWtlICJjdXRzIiBpbiB0aGUgYm9yZGVy
IGltYWdlLiBUaGV5IGNhbiBiZSBudW1iZXJzCisgICAgLy8gb3IgcGVyY2VudGFnZXMuCisgICAg
UmVmUHRyPENTU1ByaW1pdGl2ZVZhbHVlPiBtX3dpZHRoczsKKyAgICBib29sIG1fb3ZlcnJpZGVz
Qm9yZGVyV2lkdGhzOworCitwcml2YXRlOgorICAgIENTU0JvcmRlckltYWdlV2lkdGhWYWx1ZShS
ZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+JiYgd2lkdGhzLCBib29sIG92ZXJyaWRlc0JvcmRlcldp
ZHRocyk7Cit9OworCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKK1NQRUNJQUxJWkVfVFlQRV9U
UkFJVFNfQ1NTX1ZBTFVFKENTU0JvcmRlckltYWdlV2lkdGhWYWx1ZSwgaXNCb3JkZXJJbWFnZVdp
ZHRoVmFsdWUoKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDb21wdXRlZFN0
eWxlRGVjbGFyYXRpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVE
ZWNsYXJhdGlvbi5jcHAKaW5kZXggMGI1N2ExZjI2ZDBhNWViMmNiNWFiM2U5MGYyYzY5YjliOGE1
YjM5Yi4uNjE4YzA1Y2EyMWRiZWY4OGNiYjA0N2U2OTBmMzcwNWY3NzZiNDFjMiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAKQEAg
LTIyNCw3ICsyMjQsNyBAQCBzdGF0aWMgUmVmPENTU1ZhbHVlPiB2YWx1ZUZvck5pbmVQaWVjZUlt
YWdlUmVwZWF0KGNvbnN0IE5pbmVQaWVjZUltYWdlJiBpbWFnZSkKICAgICByZXR1cm4gY3NzVmFs
dWVQb29sLmNyZWF0ZVZhbHVlKFBhaXI6OmNyZWF0ZShXVEZNb3ZlKGhvcml6b250YWxSZXBlYXQp
LCBXVEZNb3ZlKHZlcnRpY2FsUmVwZWF0KSkpOwogfQogCi1zdGF0aWMgUmVmPENTU1ZhbHVlPiB2
YWx1ZUZvck5pbmVQaWVjZUltYWdlKGNvbnN0IE5pbmVQaWVjZUltYWdlJiBpbWFnZSwgY29uc3Qg
UmVuZGVyU3R5bGUmIHN0eWxlKQorc3RhdGljIFJlZlB0cjxDU1NWYWx1ZT4gdmFsdWVGb3JOaW5l
UGllY2VJbWFnZShDU1NQcm9wZXJ0eUlEIHByb3BlcnR5SUQsIGNvbnN0IE5pbmVQaWVjZUltYWdl
JiBpbWFnZSwgY29uc3QgUmVuZGVyU3R5bGUmIHN0eWxlKQogewogICAgIGlmICghaW1hZ2UuaGFz
SW1hZ2UoKSkKICAgICAgICAgcmV0dXJuIENTU1ZhbHVlUG9vbDo6c2luZ2xldG9uKCkuY3JlYXRl
SWRlbnRpZmllclZhbHVlKENTU1ZhbHVlTm9uZSk7CkBAIC0yMzMsMTAgKzIzMywxNyBAQCBzdGF0
aWMgUmVmPENTU1ZhbHVlPiB2YWx1ZUZvck5pbmVQaWVjZUltYWdlKGNvbnN0IE5pbmVQaWVjZUlt
YWdlJiBpbWFnZSwgY29uc3QgUgogICAgIGlmIChpbWFnZS5pbWFnZSgpKQogICAgICAgICBpbWFn
ZVZhbHVlID0gaW1hZ2UuaW1hZ2UoKS0+Y3NzVmFsdWUoKTsKIAorICAgIC8vIC13ZWJraXQtYm9y
ZGVyLWltYWdlIGhhcyBhIGxlZ2FjeSBiZWhhdmlvciB0aGF0IG1ha2VzIGZpeGVkIGJvcmRlciBz
bGljZXMgYWxzbyBzZXQgdGhlIGJvcmRlciB3aWR0aHMuCisgICAgY29uc3QgTGVuZ3RoQm94JiBz
bGljZXMgPSBpbWFnZS5ib3JkZXJTbGljZXMoKTsKKyAgICBib29sIG92ZXJyaWRlc0JvcmRlcldp
ZHRocyA9IHByb3BlcnR5SUQgPT0gQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJJbWFnZSAmJiAoc2xp
Y2VzLnRvcCgpLmlzRml4ZWQoKSB8fCBzbGljZXMucmlnaHQoKS5pc0ZpeGVkKCkgfHwgc2xpY2Vz
LmJvdHRvbSgpLmlzRml4ZWQoKSB8fCBzbGljZXMubGVmdCgpLmlzRml4ZWQoKSk7CisgICAgaWYg
KG92ZXJyaWRlc0JvcmRlcldpZHRocyAhPSBpbWFnZS5vdmVycmlkZXNCb3JkZXJXaWR0aHMoKSkK
KyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisKICAgICBhdXRvIGltYWdlU2xpY2VzID0gdmFsdWVG
b3JOaW5lUGllY2VJbWFnZVNsaWNlKGltYWdlKTsKLSAgICBhdXRvIGJvcmRlclNsaWNlcyA9IHZh
bHVlRm9yTmluZVBpZWNlSW1hZ2VRdWFkKGltYWdlLmJvcmRlclNsaWNlcygpLCBzdHlsZSk7Cisg
ICAgYXV0byBib3JkZXJTbGljZXMgPSB2YWx1ZUZvck5pbmVQaWVjZUltYWdlUXVhZChzbGljZXMs
IHN0eWxlKTsKICAgICBhdXRvIG91dHNldCA9IHZhbHVlRm9yTmluZVBpZWNlSW1hZ2VRdWFkKGlt
YWdlLm91dHNldCgpLCBzdHlsZSk7CiAgICAgYXV0byByZXBlYXQgPSB2YWx1ZUZvck5pbmVQaWVj
ZUltYWdlUmVwZWF0KGltYWdlKTsKKwogICAgIHJldHVybiBjcmVhdGVCb3JkZXJJbWFnZVZhbHVl
KFdURk1vdmUoaW1hZ2VWYWx1ZSksIFdURk1vdmUoaW1hZ2VTbGljZXMpLCBXVEZNb3ZlKGJvcmRl
clNsaWNlcyksIFdURk1vdmUob3V0c2V0KSwgV1RGTW92ZShyZXBlYXQpKTsKIH0KIApAQCAtMjg0
LDcgKzI5MSw3IEBAIHN0YXRpYyBSZWY8Q1NTVmFsdWU+IHZhbHVlRm9yUmVmbGVjdGlvbihjb25z
dCBTdHlsZVJlZmxlY3Rpb24qIHJlZmxlY3Rpb24sIGNvbnN0CiAgICAgICAgIGJyZWFrOwogICAg
IH0KIAotICAgIHJldHVybiBDU1NSZWZsZWN0VmFsdWU6OmNyZWF0ZShkaXJlY3Rpb24ucmVsZWFz
ZU5vbk51bGwoKSwgb2Zmc2V0LnJlbGVhc2VOb25OdWxsKCksIHZhbHVlRm9yTmluZVBpZWNlSW1h
Z2UocmVmbGVjdGlvbi0+bWFzaygpLCBzdHlsZSkpOworICAgIHJldHVybiBDU1NSZWZsZWN0VmFs
dWU6OmNyZWF0ZShkaXJlY3Rpb24ucmVsZWFzZU5vbk51bGwoKSwgb2Zmc2V0LnJlbGVhc2VOb25O
dWxsKCksIHZhbHVlRm9yTmluZVBpZWNlSW1hZ2UoQ1NTUHJvcGVydHlXZWJraXRCb3hSZWZsZWN0
LCByZWZsZWN0aW9uLT5tYXNrKCksIHN0eWxlKSk7CiB9CiAKIHN0YXRpYyBSZWY8Q1NTVmFsdWVM
aXN0PiBjcmVhdGVQb3NpdGlvbkxpc3RGb3JMYXllcihDU1NQcm9wZXJ0eUlEIHByb3BlcnR5SUQs
IGNvbnN0IEZpbGxMYXllciYgbGF5ZXIsIGNvbnN0IFJlbmRlclN0eWxlJiBzdHlsZSkKQEAgLTM3
OTcsOCArMzgwNCw5IEBAIFJlZlB0cjxDU1NWYWx1ZT4gQ29tcHV0ZWRTdHlsZUV4dHJhY3Rvcjo6
dmFsdWVGb3JQcm9wZXJ0eUluU3R5bGUoY29uc3QgUmVuZGVyU3R5CiAgICAgICAgIH0KICAgICAg
ICAgY2FzZSBDU1NQcm9wZXJ0eUJhY2tmYWNlVmlzaWJpbGl0eToKICAgICAgICAgICAgIHJldHVy
biBjc3NWYWx1ZVBvb2wuY3JlYXRlSWRlbnRpZmllclZhbHVlKChzdHlsZS5iYWNrZmFjZVZpc2li
aWxpdHkoKSA9PSBCYWNrZmFjZVZpc2liaWxpdHk6OkhpZGRlbikgPyBDU1NWYWx1ZUhpZGRlbiA6
IENTU1ZhbHVlVmlzaWJsZSk7CisgICAgICAgIGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJJbWFnZToK
ICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEJvcmRlckltYWdlOgotICAgICAgICAgICAg
cmV0dXJuIHZhbHVlRm9yTmluZVBpZWNlSW1hZ2Uoc3R5bGUuYm9yZGVySW1hZ2UoKSwgc3R5bGUp
OworICAgICAgICAgICAgcmV0dXJuIHZhbHVlRm9yTmluZVBpZWNlSW1hZ2UocHJvcGVydHlJRCwg
c3R5bGUuYm9yZGVySW1hZ2UoKSwgc3R5bGUpOwogICAgICAgICBjYXNlIENTU1Byb3BlcnR5Qm9y
ZGVySW1hZ2VPdXRzZXQ6CiAgICAgICAgICAgICByZXR1cm4gdmFsdWVGb3JOaW5lUGllY2VJbWFn
ZVF1YWQoc3R5bGUuYm9yZGVySW1hZ2UoKS5vdXRzZXQoKSwgc3R5bGUpOwogICAgICAgICBjYXNl
IENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VSZXBlYXQ6CkBAIC0zODA2LDkgKzM4MTQsMTEgQEAgUmVm
UHRyPENTU1ZhbHVlPiBDb21wdXRlZFN0eWxlRXh0cmFjdG9yOjp2YWx1ZUZvclByb3BlcnR5SW5T
dHlsZShjb25zdCBSZW5kZXJTdHkKICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlckltYWdl
U2xpY2U6CiAgICAgICAgICAgICByZXR1cm4gdmFsdWVGb3JOaW5lUGllY2VJbWFnZVNsaWNlKHN0
eWxlLmJvcmRlckltYWdlKCkpOwogICAgICAgICBjYXNlIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VX
aWR0aDoKKyAgICAgICAgICAgIGlmIChzdHlsZS5ib3JkZXJJbWFnZSgpLm92ZXJyaWRlc0JvcmRl
cldpZHRocygpKQorICAgICAgICAgICAgICAgIHJldHVybiBudWxscHRyOwogICAgICAgICAgICAg
cmV0dXJuIHZhbHVlRm9yTmluZVBpZWNlSW1hZ2VRdWFkKHN0eWxlLmJvcmRlckltYWdlKCkuYm9y
ZGVyU2xpY2VzKCksIHN0eWxlKTsKICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdE1hc2tC
b3hJbWFnZToKLSAgICAgICAgICAgIHJldHVybiB2YWx1ZUZvck5pbmVQaWVjZUltYWdlKHN0eWxl
Lm1hc2tCb3hJbWFnZSgpLCBzdHlsZSk7CisgICAgICAgICAgICByZXR1cm4gdmFsdWVGb3JOaW5l
UGllY2VJbWFnZShwcm9wZXJ0eUlELCBzdHlsZS5tYXNrQm94SW1hZ2UoKSwgc3R5bGUpOwogICAg
ICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0TWFza0JveEltYWdlT3V0c2V0OgogICAgICAgICAg
ICAgcmV0dXJuIHZhbHVlRm9yTmluZVBpZWNlSW1hZ2VRdWFkKHN0eWxlLm1hc2tCb3hJbWFnZSgp
Lm91dHNldCgpLCBzdHlsZSk7CiAgICAgICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94
SW1hZ2VSZXBlYXQ6CkBAIC00MDQ0LDggKzQwNTQsNiBAQCBSZWZQdHI8Q1NTVmFsdWU+IENvbXB1
dGVkU3R5bGVFeHRyYWN0b3I6OnZhbHVlRm9yUHJvcGVydHlJblN0eWxlKGNvbnN0IFJlbmRlclN0
eQogICAgICAgICAgICAgcmV0dXJuIGdldENTU1Byb3BlcnR5VmFsdWVzRm9yNFNpZGVzU2hvcnRo
YW5kKGJvcmRlckNvbG9yU2hvcnRoYW5kKCkpOwogICAgICAgICBjYXNlIENTU1Byb3BlcnR5Qm9y
ZGVyTGVmdDoKICAgICAgICAgICAgIHJldHVybiBnZXRDU1NQcm9wZXJ0eVZhbHVlc0ZvclNob3J0
aGFuZFByb3BlcnRpZXMoYm9yZGVyTGVmdFNob3J0aGFuZCgpKTsKLSAgICAgICAgY2FzZSBDU1NQ
cm9wZXJ0eUJvcmRlckltYWdlOgotICAgICAgICAgICAgcmV0dXJuIHZhbHVlRm9yTmluZVBpZWNl
SW1hZ2Uoc3R5bGUuYm9yZGVySW1hZ2UoKSwgc3R5bGUpOwogICAgICAgICBjYXNlIENTU1Byb3Bl
cnR5Qm9yZGVySW5saW5lOiB7CiAgICAgICAgICAgICBhdXRvIHZhbHVlID0gcHJvcGVydHlWYWx1
ZShDU1NQcm9wZXJ0eUJvcmRlcklubGluZVN0YXJ0LCBEb05vdFVwZGF0ZUxheW91dCk7CiAgICAg
ICAgICAgICBpZiAoIWNvbXBhcmVDU1NWYWx1ZVB0cjxDU1NWYWx1ZT4odmFsdWUsIHByb3BlcnR5
VmFsdWUoQ1NTUHJvcGVydHlCb3JkZXJJbmxpbmVFbmQsIERvTm90VXBkYXRlTGF5b3V0KSkpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVydGllcy5qc29uIGIvU291cmNl
L1dlYkNvcmUvY3NzL0NTU1Byb3BlcnRpZXMuanNvbgppbmRleCA3OTY5ZTJiZTExOGQ5ZTU0Njhm
NjM2Mzk5YTEyOTVmMDE2M2M2N2JmLi41Y2EzNmViODUzMWY5ZDAxYjVlYjZjYzg0YTk0NjkxM2Zl
YTI0NzQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVydGllcy5qc29u
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0aWVzLmpzb24KQEAgLTUzNzAsOCAr
NTM3MCwxNiBAQAogICAgICAgICB9LAogICAgICAgICAiLXdlYmtpdC1ib3JkZXItaW1hZ2UiOiB7
CiAgICAgICAgICAgICAiY29kZWdlbi1wcm9wZXJ0aWVzIjogewotICAgICAgICAgICAgICAgICJp
bml0aWFsIjogImluaXRpYWxOaW5lUGllY2VJbWFnZSIsCi0gICAgICAgICAgICAgICAgImNvbnZl
cnRlciI6ICJCb3JkZXJJbWFnZTxDU1NQcm9wZXJ0eVdlYmtpdEJvcmRlckltYWdlPiIKKyAgICAg
ICAgICAgICAgICAibG9uZ2hhbmRzIjogWworICAgICAgICAgICAgICAgICAgICAiYm9yZGVyLWlt
YWdlLXNvdXJjZSIsCisgICAgICAgICAgICAgICAgICAgICJib3JkZXItaW1hZ2Utc2xpY2UiLAor
ICAgICAgICAgICAgICAgICAgICAiYm9yZGVyLWltYWdlLXdpZHRoIiwKKyAgICAgICAgICAgICAg
ICAgICAgImJvcmRlci1pbWFnZS1vdXRzZXQiLAorICAgICAgICAgICAgICAgICAgICAiYm9yZGVy
LWltYWdlLXJlcGVhdCIKKyAgICAgICAgICAgICAgICBdCisgICAgICAgICAgICB9LAorICAgICAg
ICAgICAgInN0YXR1cyI6IHsKKyAgICAgICAgICAgICAgICAiY29tbWVudCI6ICJEaWZmZXJzIGZy
b20gYm9yZGVyLWltYWdlIGluIHRoYXQgaXQgYWx3YXlzIGluY2x1ZGVzIHRoZSAnZmlsbCcga2V5
d29yZCBpbiAnYm9yZGVyLWltYWdlLXNsaWNlJywgYW5kIGl0IHNldHMgJ2JvcmRlci0qLXdpZHRo
JyBpZiB0aGUgY29ycmVzcG9uZGluZyBzbGljZSBvZmZzZXQgaXMuIgogICAgICAgICAgICAgfQog
ICAgICAgICB9LAogICAgICAgICAiLXdlYmtpdC1ib3JkZXItcmFkaXVzIjogewpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1RvU3R5bGVNYXAuY3BwIGIvU291cmNlL1dlYkNvcmUv
Y3NzL0NTU1RvU3R5bGVNYXAuY3BwCmluZGV4IDk0NjYwNTEzNTA1M2FiNWQzNjg3OGNjYmYzMjE1
YjkzYTcxMjU4YTkuLjBjNmY0ZTE2NTY3YjQwYTIyODY5NjQ1ZGU0N2Q0ZDBjOWRmMzlmZWEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NUb1N0eWxlTWFwLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTVG9TdHlsZU1hcC5jcHAKQEAgLTMwLDYgKzMwLDcgQEAKIAogI2lu
Y2x1ZGUgIkFuaW1hdGlvbi5oIgogI2luY2x1ZGUgIkNTU0JvcmRlckltYWdlU2xpY2VWYWx1ZS5o
IgorI2luY2x1ZGUgIkNTU0JvcmRlckltYWdlV2lkdGhWYWx1ZS5oIgogI2luY2x1ZGUgIkNTU0lt
YWdlR2VuZXJhdG9yVmFsdWUuaCIKICNpbmNsdWRlICJDU1NJbWFnZVNldFZhbHVlLmgiCiAjaW5j
bHVkZSAiQ1NTSW1hZ2VWYWx1ZS5oIgpAQCAtNDcxLDcgKzQ3Miw3IEBAIHZvaWQgQ1NTVG9TdHls
ZU1hcDo6bWFwQW5pbWF0aW9uQ29tcG9zaXRlT3BlcmF0aW9uKEFuaW1hdGlvbiYgYW5pbWF0aW9u
LCBjb25zdCBDCiAgICAgICAgIGFuaW1hdGlvbi5zZXRDb21wb3NpdGVPcGVyYXRpb24oKmNvbXBv
c2l0ZU9wZXJhdGlvbik7CiB9CiAKLXZvaWQgQ1NTVG9TdHlsZU1hcDo6bWFwTmluZVBpZWNlSW1h
Z2UoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eSwgQ1NTVmFsdWUqIHZhbHVlLCBOaW5lUGllY2VJbWFn
ZSYgaW1hZ2UpCit2b2lkIENTU1RvU3R5bGVNYXA6Om1hcE5pbmVQaWVjZUltYWdlKENTU1ZhbHVl
KiB2YWx1ZSwgTmluZVBpZWNlSW1hZ2UmIGltYWdlKQogewogICAgIC8vIElmIHdlJ3JlIG5vdCBh
IHZhbHVlIGxpc3QsIHRoZW4gd2UgYXJlICJub25lIiBhbmQgZG9uJ3QgbmVlZCB0byBhbHRlciB0
aGUgZW1wdHkgaW1hZ2UgYXQgYWxsLgogICAgIGlmICghaXM8Q1NTVmFsdWVMaXN0Pih2YWx1ZSkp
CkBAIC00OTIsOCArNDkzLDggQEAgdm9pZCBDU1NUb1N0eWxlTWFwOjptYXBOaW5lUGllY2VJbWFn
ZShDU1NQcm9wZXJ0eUlEIHByb3BlcnR5LCBDU1NWYWx1ZSogdmFsdWUsIE4KICAgICAgICAgICAg
ICAgICBtYXBOaW5lUGllY2VJbWFnZVNsaWNlKCpzbGFzaExpc3QuaXRlbSgwKSwgaW1hZ2UpOwog
CiAgICAgICAgICAgICAvLyBNYXAgaW4gdGhlIGJvcmRlciBzbGljZXMuCi0gICAgICAgICAgICBp
ZiAoc2xhc2hMaXN0Lml0ZW0oMSkpCi0gICAgICAgICAgICAgICAgaW1hZ2Uuc2V0Qm9yZGVyU2xp
Y2VzKG1hcE5pbmVQaWVjZUltYWdlUXVhZCgqc2xhc2hMaXN0Lml0ZW0oMSkpKTsKKyAgICAgICAg
ICAgIGlmIChpczxDU1NCb3JkZXJJbWFnZVdpZHRoVmFsdWU+KHNsYXNoTGlzdC5pdGVtKDEpKSkK
KyAgICAgICAgICAgICAgICBtYXBOaW5lUGllY2VJbWFnZVdpZHRoKCpzbGFzaExpc3QuaXRlbSgx
KSwgaW1hZ2UpOwogCiAgICAgICAgICAgICAvLyBNYXAgaW4gdGhlIG91dHNldC4KICAgICAgICAg
ICAgIGlmIChzbGFzaExpc3QuaXRlbSgyKSkKQEAgLTUwMywyMCArNTA0LDYgQEAgdm9pZCBDU1NU
b1N0eWxlTWFwOjptYXBOaW5lUGllY2VJbWFnZShDU1NQcm9wZXJ0eUlEIHByb3BlcnR5LCBDU1NW
YWx1ZSogdmFsdWUsIE4KICAgICAgICAgICAgIG1hcE5pbmVQaWVjZUltYWdlUmVwZWF0KGN1cnJl
bnQsIGltYWdlKTsKICAgICAgICAgfQogICAgIH0KLQotICAgIGlmIChwcm9wZXJ0eSA9PSBDU1NQ
cm9wZXJ0eVdlYmtpdEJvcmRlckltYWdlKSB7Ci0gICAgICAgIC8vIFdlIGhhdmUgdG8gcHJlc2Vy
dmUgdGhlIGxlZ2FjeSBiZWhhdmlvciBvZiAtd2Via2l0LWJvcmRlci1pbWFnZSBhbmQgbWFrZSB0
aGUgYm9yZGVyIHNsaWNlcwotICAgICAgICAvLyBhbHNvIHNldCB0aGUgYm9yZGVyIHdpZHRocy4g
V2UgZG9uJ3QgbmVlZCB0byB3b3JyeSBhYm91dCBwZXJjZW50YWdlcywgc2luY2Ugd2UgZG9uJ3Qg
ZXZlbiBzdXBwb3J0Ci0gICAgICAgIC8vIHRob3NlIG9uIHJlYWwgYm9yZGVycyB5ZXQuCi0gICAg
ICAgIGlmIChpbWFnZS5ib3JkZXJTbGljZXMoKS50b3AoKS5pc0ZpeGVkKCkpCi0gICAgICAgICAg
ICBzdHlsZSgpLT5zZXRCb3JkZXJUb3BXaWR0aChpbWFnZS5ib3JkZXJTbGljZXMoKS50b3AoKS52
YWx1ZSgpKTsKLSAgICAgICAgaWYgKGltYWdlLmJvcmRlclNsaWNlcygpLnJpZ2h0KCkuaXNGaXhl
ZCgpKQotICAgICAgICAgICAgc3R5bGUoKS0+c2V0Qm9yZGVyUmlnaHRXaWR0aChpbWFnZS5ib3Jk
ZXJTbGljZXMoKS5yaWdodCgpLnZhbHVlKCkpOwotICAgICAgICBpZiAoaW1hZ2UuYm9yZGVyU2xp
Y2VzKCkuYm90dG9tKCkuaXNGaXhlZCgpKQotICAgICAgICAgICAgc3R5bGUoKS0+c2V0Qm9yZGVy
Qm90dG9tV2lkdGgoaW1hZ2UuYm9yZGVyU2xpY2VzKCkuYm90dG9tKCkudmFsdWUoKSk7Ci0gICAg
ICAgIGlmIChpbWFnZS5ib3JkZXJTbGljZXMoKS5sZWZ0KCkuaXNGaXhlZCgpKQotICAgICAgICAg
ICAgc3R5bGUoKS0+c2V0Qm9yZGVyTGVmdFdpZHRoKGltYWdlLmJvcmRlclNsaWNlcygpLmxlZnQo
KS52YWx1ZSgpKTsKLSAgICB9CiB9CiAKIHZvaWQgQ1NTVG9TdHlsZU1hcDo6bWFwTmluZVBpZWNl
SW1hZ2VTbGljZShDU1NWYWx1ZSYgdmFsdWUsIE5pbmVQaWVjZUltYWdlJiBpbWFnZSkKQEAgLTU1
Miw1NSArNTM5LDcwIEBAIHZvaWQgQ1NTVG9TdHlsZU1hcDo6bWFwTmluZVBpZWNlSW1hZ2VTbGlj
ZShDU1NWYWx1ZSYgdmFsdWUsIE5pbmVQaWVjZUltYWdlJiBpbWFnCiAgICAgaW1hZ2Uuc2V0Rmls
bChib3JkZXJJbWFnZVNsaWNlLm1fZmlsbCk7CiB9CiAKK3ZvaWQgQ1NTVG9TdHlsZU1hcDo6bWFw
TmluZVBpZWNlSW1hZ2VXaWR0aChDU1NWYWx1ZSYgdmFsdWUsIE5pbmVQaWVjZUltYWdlJiBpbWFn
ZSkKK3sKKyAgICBpZiAoIWlzPENTU0JvcmRlckltYWdlV2lkdGhWYWx1ZT4odmFsdWUpKQorICAg
ICAgICByZXR1cm47CisKKyAgICAvLyBSZXRyaWV2ZSB0aGUgYm9yZGVyIGltYWdlIHZhbHVlLgor
ICAgIGF1dG8mIGJvcmRlckltYWdlV2lkdGggPSBkb3duY2FzdDxDU1NCb3JkZXJJbWFnZVdpZHRo
VmFsdWU+KHZhbHVlKTsKKyAgICBpbWFnZS5zZXRCb3JkZXJTbGljZXMobWFwTmluZVBpZWNlSW1h
Z2VRdWFkKGJvcmRlckltYWdlV2lkdGgud2lkdGhzKCkpKTsKKyAgICBpbWFnZS5zZXRPdmVycmlk
ZXNCb3JkZXJXaWR0aHMoYm9yZGVySW1hZ2VXaWR0aC5tX292ZXJyaWRlc0JvcmRlcldpZHRocyk7
Cit9CisKIExlbmd0aEJveCBDU1NUb1N0eWxlTWFwOjptYXBOaW5lUGllY2VJbWFnZVF1YWQoQ1NT
VmFsdWUmIHZhbHVlKQogewogICAgIGlmICghaXM8Q1NTUHJpbWl0aXZlVmFsdWU+KHZhbHVlKSkK
ICAgICAgICAgcmV0dXJuIExlbmd0aEJveCgpOwogCi0gICAgLy8gR2V0IG91ciB6b29tIHZhbHVl
LgotICAgIENTU1RvTGVuZ3RoQ29udmVyc2lvbkRhdGEgY29udmVyc2lvbkRhdGEgPSB1c2VTVkda
b29tUnVsZXMoKSA/IG1fYnVpbGRlclN0YXRlLmNzc1RvTGVuZ3RoQ29udmVyc2lvbkRhdGEoKS5j
b3B5V2l0aEFkanVzdGVkWm9vbSgxLjBmKSA6IG1fYnVpbGRlclN0YXRlLmNzc1RvTGVuZ3RoQ29u
dmVyc2lvbkRhdGEoKTsKLQogICAgIC8vIFJldHJpZXZlIHRoZSBwcmltaXRpdmUgdmFsdWUuCiAg
ICAgYXV0byYgYm9yZGVyV2lkdGhzID0gZG93bmNhc3Q8Q1NTUHJpbWl0aXZlVmFsdWU+KHZhbHVl
KTsKIAorICAgIHJldHVybiBtYXBOaW5lUGllY2VJbWFnZVF1YWQoYm9yZGVyV2lkdGhzLnF1YWRW
YWx1ZSgpKTsKK30KKworTGVuZ3RoQm94IENTU1RvU3R5bGVNYXA6Om1hcE5pbmVQaWVjZUltYWdl
UXVhZChRdWFkKiBxdWFkKQoreworICAgIC8vIEdldCBvdXIgem9vbSB2YWx1ZS4KKyAgICBDU1NU
b0xlbmd0aENvbnZlcnNpb25EYXRhIGNvbnZlcnNpb25EYXRhID0gdXNlU1ZHWm9vbVJ1bGVzKCkg
PyBtX2J1aWxkZXJTdGF0ZS5jc3NUb0xlbmd0aENvbnZlcnNpb25EYXRhKCkuY29weVdpdGhBZGp1
c3RlZFpvb20oMS4wZikgOiBtX2J1aWxkZXJTdGF0ZS5jc3NUb0xlbmd0aENvbnZlcnNpb25EYXRh
KCk7CisKICAgICAvLyBTZXQgdXAgYSBsZW5ndGggYm94IHRvIHJlcHJlc2VudCBvdXIgaW1hZ2Ug
c2xpY2VzLgogICAgIExlbmd0aEJveCBib3g7IC8vIERlZmF1bHRzIHRvICdhdXRvJyBzbyB3ZSBk
b24ndCBoYXZlIHRvIGhhbmRsZSB0aGF0IGV4cGxpY2l0bHkgYmVsb3cuCi0gICAgUXVhZCogc2xp
Y2VzID0gYm9yZGVyV2lkdGhzLnF1YWRWYWx1ZSgpOwotICAgIGlmIChzbGljZXMtPnRvcCgpLT5p
c051bWJlcigpKQotICAgICAgICBib3gudG9wKCkgPSBMZW5ndGgoc2xpY2VzLT50b3AoKS0+Zmxv
YXRWYWx1ZSgpLCBMZW5ndGhUeXBlOjpSZWxhdGl2ZSk7Ci0gICAgZWxzZSBpZiAoc2xpY2VzLT50
b3AoKS0+aXNQZXJjZW50YWdlKCkpCi0gICAgICAgIGJveC50b3AoKSA9IExlbmd0aChzbGljZXMt
PnRvcCgpLT5kb3VibGVWYWx1ZShDU1NVbml0VHlwZTo6Q1NTX1BFUkNFTlRBR0UpLCBMZW5ndGhU
eXBlOjpQZXJjZW50KTsKLSAgICBlbHNlIGlmIChzbGljZXMtPnRvcCgpLT5pc0NhbGN1bGF0ZWRQ
ZXJjZW50YWdlV2l0aExlbmd0aCgpKQotICAgICAgICBib3gudG9wKCkgPSBMZW5ndGgoc2xpY2Vz
LT50b3AoKS0+Y3NzQ2FsY1ZhbHVlKCktPmNyZWF0ZUNhbGN1bGF0aW9uVmFsdWUoY29udmVyc2lv
bkRhdGEpKTsKLSAgICBlbHNlIGlmIChzbGljZXMtPnRvcCgpLT52YWx1ZUlEKCkgIT0gQ1NTVmFs
dWVBdXRvKQotICAgICAgICBib3gudG9wKCkgPSBzbGljZXMtPnRvcCgpLT5jb21wdXRlTGVuZ3Ro
PExlbmd0aD4oY29udmVyc2lvbkRhdGEpOwotCi0gICAgaWYgKHNsaWNlcy0+cmlnaHQoKS0+aXNO
dW1iZXIoKSkKLSAgICAgICAgYm94LnJpZ2h0KCkgPSBMZW5ndGgoc2xpY2VzLT5yaWdodCgpLT5m
bG9hdFZhbHVlKCksIExlbmd0aFR5cGU6OlJlbGF0aXZlKTsKLSAgICBlbHNlIGlmIChzbGljZXMt
PnJpZ2h0KCktPmlzUGVyY2VudGFnZSgpKQotICAgICAgICBib3gucmlnaHQoKSA9IExlbmd0aChz
bGljZXMtPnJpZ2h0KCktPmRvdWJsZVZhbHVlKENTU1VuaXRUeXBlOjpDU1NfUEVSQ0VOVEFHRSks
IExlbmd0aFR5cGU6OlBlcmNlbnQpOwotICAgIGVsc2UgaWYgKHNsaWNlcy0+cmlnaHQoKS0+aXND
YWxjdWxhdGVkUGVyY2VudGFnZVdpdGhMZW5ndGgoKSkKLSAgICAgICAgYm94LnJpZ2h0KCkgPSBM
ZW5ndGgoc2xpY2VzLT5yaWdodCgpLT5jc3NDYWxjVmFsdWUoKS0+Y3JlYXRlQ2FsY3VsYXRpb25W
YWx1ZShjb252ZXJzaW9uRGF0YSkpOwotICAgIGVsc2UgaWYgKHNsaWNlcy0+cmlnaHQoKS0+dmFs
dWVJRCgpICE9IENTU1ZhbHVlQXV0bykKLSAgICAgICAgYm94LnJpZ2h0KCkgPSBzbGljZXMtPnJp
Z2h0KCktPmNvbXB1dGVMZW5ndGg8TGVuZ3RoPihjb252ZXJzaW9uRGF0YSk7Ci0KLSAgICBpZiAo
c2xpY2VzLT5ib3R0b20oKS0+aXNOdW1iZXIoKSkKLSAgICAgICAgYm94LmJvdHRvbSgpID0gTGVu
Z3RoKHNsaWNlcy0+Ym90dG9tKCktPmZsb2F0VmFsdWUoKSwgTGVuZ3RoVHlwZTo6UmVsYXRpdmUp
OwotICAgIGVsc2UgaWYgKHNsaWNlcy0+Ym90dG9tKCktPmlzUGVyY2VudGFnZSgpKQotICAgICAg
ICBib3guYm90dG9tKCkgPSBMZW5ndGgoc2xpY2VzLT5ib3R0b20oKS0+ZG91YmxlVmFsdWUoQ1NT
VW5pdFR5cGU6OkNTU19QRVJDRU5UQUdFKSwgTGVuZ3RoVHlwZTo6UGVyY2VudCk7Ci0gICAgZWxz
ZSBpZiAoc2xpY2VzLT5ib3R0b20oKS0+aXNDYWxjdWxhdGVkUGVyY2VudGFnZVdpdGhMZW5ndGgo
KSkKLSAgICAgICAgYm94LmJvdHRvbSgpID0gTGVuZ3RoKHNsaWNlcy0+Ym90dG9tKCktPmNzc0Nh
bGNWYWx1ZSgpLT5jcmVhdGVDYWxjdWxhdGlvblZhbHVlKGNvbnZlcnNpb25EYXRhKSk7Ci0gICAg
ZWxzZSBpZiAoc2xpY2VzLT5ib3R0b20oKS0+dmFsdWVJRCgpICE9IENTU1ZhbHVlQXV0bykKLSAg
ICAgICAgYm94LmJvdHRvbSgpID0gc2xpY2VzLT5ib3R0b20oKS0+Y29tcHV0ZUxlbmd0aDxMZW5n
dGg+KGNvbnZlcnNpb25EYXRhKTsKLQotICAgIGlmIChzbGljZXMtPmxlZnQoKS0+aXNOdW1iZXIo
KSkKLSAgICAgICAgYm94LmxlZnQoKSA9IExlbmd0aChzbGljZXMtPmxlZnQoKS0+ZmxvYXRWYWx1
ZSgpLCBMZW5ndGhUeXBlOjpSZWxhdGl2ZSk7Ci0gICAgZWxzZSBpZiAoc2xpY2VzLT5sZWZ0KCkt
PmlzUGVyY2VudGFnZSgpKQotICAgICAgICBib3gubGVmdCgpID0gTGVuZ3RoKHNsaWNlcy0+bGVm
dCgpLT5kb3VibGVWYWx1ZShDU1NVbml0VHlwZTo6Q1NTX1BFUkNFTlRBR0UpLCBMZW5ndGhUeXBl
OjpQZXJjZW50KTsKLSAgICBlbHNlIGlmIChzbGljZXMtPmxlZnQoKS0+aXNDYWxjdWxhdGVkUGVy
Y2VudGFnZVdpdGhMZW5ndGgoKSkKLSAgICAgICAgYm94LmxlZnQoKSA9IExlbmd0aChzbGljZXMt
PmxlZnQoKS0+Y3NzQ2FsY1ZhbHVlKCktPmNyZWF0ZUNhbGN1bGF0aW9uVmFsdWUoY29udmVyc2lv
bkRhdGEpKTsKLSAgICBlbHNlIGlmIChzbGljZXMtPmxlZnQoKS0+dmFsdWVJRCgpICE9IENTU1Zh
bHVlQXV0bykKLSAgICAgICAgYm94LmxlZnQoKSA9IHNsaWNlcy0+bGVmdCgpLT5jb21wdXRlTGVu
Z3RoPExlbmd0aD4oY29udmVyc2lvbkRhdGEpOworICAgIGlmIChxdWFkLT50b3AoKS0+aXNOdW1i
ZXIoKSkKKyAgICAgICAgYm94LnRvcCgpID0gTGVuZ3RoKHF1YWQtPnRvcCgpLT5mbG9hdFZhbHVl
KCksIExlbmd0aFR5cGU6OlJlbGF0aXZlKTsKKyAgICBlbHNlIGlmIChxdWFkLT50b3AoKS0+aXNQ
ZXJjZW50YWdlKCkpCisgICAgICAgIGJveC50b3AoKSA9IExlbmd0aChxdWFkLT50b3AoKS0+ZG91
YmxlVmFsdWUoQ1NTVW5pdFR5cGU6OkNTU19QRVJDRU5UQUdFKSwgTGVuZ3RoVHlwZTo6UGVyY2Vu
dCk7CisgICAgZWxzZSBpZiAocXVhZC0+dG9wKCktPmlzQ2FsY3VsYXRlZFBlcmNlbnRhZ2VXaXRo
TGVuZ3RoKCkpCisgICAgICAgIGJveC50b3AoKSA9IExlbmd0aChxdWFkLT50b3AoKS0+Y3NzQ2Fs
Y1ZhbHVlKCktPmNyZWF0ZUNhbGN1bGF0aW9uVmFsdWUoY29udmVyc2lvbkRhdGEpKTsKKyAgICBl
bHNlIGlmIChxdWFkLT50b3AoKS0+dmFsdWVJRCgpICE9IENTU1ZhbHVlQXV0bykKKyAgICAgICAg
Ym94LnRvcCgpID0gcXVhZC0+dG9wKCktPmNvbXB1dGVMZW5ndGg8TGVuZ3RoPihjb252ZXJzaW9u
RGF0YSk7CisKKyAgICBpZiAocXVhZC0+cmlnaHQoKS0+aXNOdW1iZXIoKSkKKyAgICAgICAgYm94
LnJpZ2h0KCkgPSBMZW5ndGgocXVhZC0+cmlnaHQoKS0+ZmxvYXRWYWx1ZSgpLCBMZW5ndGhUeXBl
OjpSZWxhdGl2ZSk7CisgICAgZWxzZSBpZiAocXVhZC0+cmlnaHQoKS0+aXNQZXJjZW50YWdlKCkp
CisgICAgICAgIGJveC5yaWdodCgpID0gTGVuZ3RoKHF1YWQtPnJpZ2h0KCktPmRvdWJsZVZhbHVl
KENTU1VuaXRUeXBlOjpDU1NfUEVSQ0VOVEFHRSksIExlbmd0aFR5cGU6OlBlcmNlbnQpOworICAg
IGVsc2UgaWYgKHF1YWQtPnJpZ2h0KCktPmlzQ2FsY3VsYXRlZFBlcmNlbnRhZ2VXaXRoTGVuZ3Ro
KCkpCisgICAgICAgIGJveC5yaWdodCgpID0gTGVuZ3RoKHF1YWQtPnJpZ2h0KCktPmNzc0NhbGNW
YWx1ZSgpLT5jcmVhdGVDYWxjdWxhdGlvblZhbHVlKGNvbnZlcnNpb25EYXRhKSk7CisgICAgZWxz
ZSBpZiAocXVhZC0+cmlnaHQoKS0+dmFsdWVJRCgpICE9IENTU1ZhbHVlQXV0bykKKyAgICAgICAg
Ym94LnJpZ2h0KCkgPSBxdWFkLT5yaWdodCgpLT5jb21wdXRlTGVuZ3RoPExlbmd0aD4oY29udmVy
c2lvbkRhdGEpOworCisgICAgaWYgKHF1YWQtPmJvdHRvbSgpLT5pc051bWJlcigpKQorICAgICAg
ICBib3guYm90dG9tKCkgPSBMZW5ndGgocXVhZC0+Ym90dG9tKCktPmZsb2F0VmFsdWUoKSwgTGVu
Z3RoVHlwZTo6UmVsYXRpdmUpOworICAgIGVsc2UgaWYgKHF1YWQtPmJvdHRvbSgpLT5pc1BlcmNl
bnRhZ2UoKSkKKyAgICAgICAgYm94LmJvdHRvbSgpID0gTGVuZ3RoKHF1YWQtPmJvdHRvbSgpLT5k
b3VibGVWYWx1ZShDU1NVbml0VHlwZTo6Q1NTX1BFUkNFTlRBR0UpLCBMZW5ndGhUeXBlOjpQZXJj
ZW50KTsKKyAgICBlbHNlIGlmIChxdWFkLT5ib3R0b20oKS0+aXNDYWxjdWxhdGVkUGVyY2VudGFn
ZVdpdGhMZW5ndGgoKSkKKyAgICAgICAgYm94LmJvdHRvbSgpID0gTGVuZ3RoKHF1YWQtPmJvdHRv
bSgpLT5jc3NDYWxjVmFsdWUoKS0+Y3JlYXRlQ2FsY3VsYXRpb25WYWx1ZShjb252ZXJzaW9uRGF0
YSkpOworICAgIGVsc2UgaWYgKHF1YWQtPmJvdHRvbSgpLT52YWx1ZUlEKCkgIT0gQ1NTVmFsdWVB
dXRvKQorICAgICAgICBib3guYm90dG9tKCkgPSBxdWFkLT5ib3R0b20oKS0+Y29tcHV0ZUxlbmd0
aDxMZW5ndGg+KGNvbnZlcnNpb25EYXRhKTsKKworICAgIGlmIChxdWFkLT5sZWZ0KCktPmlzTnVt
YmVyKCkpCisgICAgICAgIGJveC5sZWZ0KCkgPSBMZW5ndGgocXVhZC0+bGVmdCgpLT5mbG9hdFZh
bHVlKCksIExlbmd0aFR5cGU6OlJlbGF0aXZlKTsKKyAgICBlbHNlIGlmIChxdWFkLT5sZWZ0KCkt
PmlzUGVyY2VudGFnZSgpKQorICAgICAgICBib3gubGVmdCgpID0gTGVuZ3RoKHF1YWQtPmxlZnQo
KS0+ZG91YmxlVmFsdWUoQ1NTVW5pdFR5cGU6OkNTU19QRVJDRU5UQUdFKSwgTGVuZ3RoVHlwZTo6
UGVyY2VudCk7CisgICAgZWxzZSBpZiAocXVhZC0+bGVmdCgpLT5pc0NhbGN1bGF0ZWRQZXJjZW50
YWdlV2l0aExlbmd0aCgpKQorICAgICAgICBib3gubGVmdCgpID0gTGVuZ3RoKHF1YWQtPmxlZnQo
KS0+Y3NzQ2FsY1ZhbHVlKCktPmNyZWF0ZUNhbGN1bGF0aW9uVmFsdWUoY29udmVyc2lvbkRhdGEp
KTsKKyAgICBlbHNlIGlmIChxdWFkLT5sZWZ0KCktPnZhbHVlSUQoKSAhPSBDU1NWYWx1ZUF1dG8p
CisgICAgICAgIGJveC5sZWZ0KCkgPSBxdWFkLT5sZWZ0KCktPmNvbXB1dGVMZW5ndGg8TGVuZ3Ro
Pihjb252ZXJzaW9uRGF0YSk7CiAKICAgICByZXR1cm4gYm94OwogfQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvY3NzL0NTU1RvU3R5bGVNYXAuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NU
b1N0eWxlTWFwLmgKaW5kZXggNGM5YmI0NGNiOTMyODhkZjc2NGUwNTkwYTM2ZGJlYzdiMWZmNzhj
OS4uYTBkMWIxZDY2OWY0OWM4N2Q0ZTEzODIyOTI1ZTE1Yzk4MmY0OTEyMyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvY3NzL0NTU1RvU3R5bGVNYXAuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTVG9TdHlsZU1hcC5oCkBAIC03MCw4ICs3MCw5IEBAIHB1YmxpYzoKICAgICB2b2lkIG1h
cEFuaW1hdGlvblRpbWluZ0Z1bmN0aW9uKEFuaW1hdGlvbiYsIGNvbnN0IENTU1ZhbHVlJik7CiAg
ICAgdm9pZCBtYXBBbmltYXRpb25Db21wb3NpdGVPcGVyYXRpb24oQW5pbWF0aW9uJiwgY29uc3Qg
Q1NTVmFsdWUmKTsKIAotICAgIHZvaWQgbWFwTmluZVBpZWNlSW1hZ2UoQ1NTUHJvcGVydHlJRCwg
Q1NTVmFsdWUqLCBOaW5lUGllY2VJbWFnZSYpOworICAgIHZvaWQgbWFwTmluZVBpZWNlSW1hZ2Uo
Q1NTVmFsdWUqLCBOaW5lUGllY2VJbWFnZSYpOwogICAgIHZvaWQgbWFwTmluZVBpZWNlSW1hZ2VT
bGljZShDU1NWYWx1ZSYsIE5pbmVQaWVjZUltYWdlJik7CisgICAgdm9pZCBtYXBOaW5lUGllY2VJ
bWFnZVdpZHRoKENTU1ZhbHVlJiwgTmluZVBpZWNlSW1hZ2UmKTsKICAgICBMZW5ndGhCb3ggbWFw
TmluZVBpZWNlSW1hZ2VRdWFkKENTU1ZhbHVlJik7CiAgICAgdm9pZCBtYXBOaW5lUGllY2VJbWFn
ZVJlcGVhdChDU1NWYWx1ZSYsIE5pbmVQaWVjZUltYWdlJik7CiAKQEAgLTc5LDYgKzgwLDcgQEAg
cHJpdmF0ZToKICAgICBSZW5kZXJTdHlsZSogc3R5bGUoKSBjb25zdDsKICAgICBib29sIHVzZVNW
R1pvb21SdWxlcygpIGNvbnN0OwogICAgIFJlZlB0cjxTdHlsZUltYWdlPiBzdHlsZUltYWdlKENT
U1ZhbHVlJik7CisgICAgTGVuZ3RoQm94IG1hcE5pbmVQaWVjZUltYWdlUXVhZChRdWFkKik7CiAK
ICAgICAvLyBGSVhNRTogVGhpcyB0eXBlIGNhbiBtZXJnZSBpbnRvIEJ1aWxkZXJTdGF0ZS4KICAg
ICBTdHlsZTo6QnVpbGRlclN0YXRlJiBtX2J1aWxkZXJTdGF0ZTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWUu
Y3BwCmluZGV4IGNlZDEzOTQyOTE2YmFlYzU3OGIzOGQzZTc4OTU3NzQwMGQ3OGFhNGUuLmY5MzMz
OGFmNDFjZDBiMWEzMzBlZGU1MTJjMzg3NDA2NzdlMWFkNTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NWYWx1ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVl
LmNwcApAQCAtMzEsNiArMzEsNyBAQAogCiAjaW5jbHVkZSAiQ1NTQXNwZWN0UmF0aW9WYWx1ZS5o
IgogI2luY2x1ZGUgIkNTU0JvcmRlckltYWdlU2xpY2VWYWx1ZS5oIgorI2luY2x1ZGUgIkNTU0Jv
cmRlckltYWdlV2lkdGhWYWx1ZS5oIgogI2luY2x1ZGUgIkNTU0NhbGNWYWx1ZS5oIgogI2luY2x1
ZGUgIkNTU0NhbnZhc1ZhbHVlLmgiCiAjaW5jbHVkZSAiQ1NTQ29udGVudERpc3RyaWJ1dGlvblZh
bHVlLmgiCkBAIC0xNDUsNiArMTQ2LDggQEAgYm9vbCBDU1NWYWx1ZTo6ZXF1YWxzKGNvbnN0IENT
U1ZhbHVlJiBvdGhlcikgY29uc3QKICAgICAgICAgICAgIHJldHVybiBjb21wYXJlQ1NTVmFsdWVz
PENTU0FzcGVjdFJhdGlvVmFsdWU+KCp0aGlzLCBvdGhlcik7CiAgICAgICAgIGNhc2UgQm9yZGVy
SW1hZ2VTbGljZUNsYXNzOgogICAgICAgICAgICAgcmV0dXJuIGNvbXBhcmVDU1NWYWx1ZXM8Q1NT
Qm9yZGVySW1hZ2VTbGljZVZhbHVlPigqdGhpcywgb3RoZXIpOworICAgICAgICBjYXNlIEJvcmRl
ckltYWdlV2lkdGhDbGFzczoKKyAgICAgICAgICAgIHJldHVybiBjb21wYXJlQ1NTVmFsdWVzPENT
U0JvcmRlckltYWdlV2lkdGhWYWx1ZT4oKnRoaXMsIG90aGVyKTsKICAgICAgICAgY2FzZSBDYW52
YXNDbGFzczoKICAgICAgICAgICAgIHJldHVybiBjb21wYXJlQ1NTVmFsdWVzPENTU0NhbnZhc1Zh
bHVlPigqdGhpcywgb3RoZXIpOwogICAgICAgICBjYXNlIE5hbWVkSW1hZ2VDbGFzczoKQEAgLTI1
MCw2ICsyNTMsOCBAQCBTdHJpbmcgQ1NTVmFsdWU6OmNzc1RleHQoKSBjb25zdAogICAgICAgICBy
ZXR1cm4gZG93bmNhc3Q8Q1NTQXNwZWN0UmF0aW9WYWx1ZT4oKnRoaXMpLmN1c3RvbUNTU1RleHQo
KTsKICAgICBjYXNlIEJvcmRlckltYWdlU2xpY2VDbGFzczoKICAgICAgICAgcmV0dXJuIGRvd25j
YXN0PENTU0JvcmRlckltYWdlU2xpY2VWYWx1ZT4oKnRoaXMpLmN1c3RvbUNTU1RleHQoKTsKKyAg
ICBjYXNlIEJvcmRlckltYWdlV2lkdGhDbGFzczoKKyAgICAgICAgcmV0dXJuIGRvd25jYXN0PENT
U0JvcmRlckltYWdlV2lkdGhWYWx1ZT4oKnRoaXMpLmN1c3RvbUNTU1RleHQoKTsKICAgICBjYXNl
IENhbnZhc0NsYXNzOgogICAgICAgICByZXR1cm4gZG93bmNhc3Q8Q1NTQ2FudmFzVmFsdWU+KCp0
aGlzKS5jdXN0b21DU1NUZXh0KCk7CiAgICAgY2FzZSBOYW1lZEltYWdlQ2xhc3M6CkBAIC0zNjQs
NiArMzY5LDkgQEAgdm9pZCBDU1NWYWx1ZTo6ZGVzdHJveSgpCiAgICAgY2FzZSBCb3JkZXJJbWFn
ZVNsaWNlQ2xhc3M6CiAgICAgICAgIGRlbGV0ZSBkb3duY2FzdDxDU1NCb3JkZXJJbWFnZVNsaWNl
VmFsdWU+KHRoaXMpOwogICAgICAgICByZXR1cm47CisgICAgY2FzZSBCb3JkZXJJbWFnZVdpZHRo
Q2xhc3M6CisgICAgICAgIGRlbGV0ZSBkb3duY2FzdDxDU1NCb3JkZXJJbWFnZVdpZHRoVmFsdWU+
KHRoaXMpOworICAgICAgICByZXR1cm47CiAgICAgY2FzZSBDYW52YXNDbGFzczoKICAgICAgICAg
ZGVsZXRlIGRvd25jYXN0PENTU0NhbnZhc1ZhbHVlPih0aGlzKTsKICAgICAgICAgcmV0dXJuOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlLmggYi9Tb3VyY2UvV2ViQ29y
ZS9jc3MvQ1NTVmFsdWUuaAppbmRleCBlNjc3N2ViODBlMTMzYzI5Y2FhNjI1Njk2ODNjZDVkMGNm
ZjdhMGU3Li5kYWRlNThkYTIwNjhiN2VlY2NkYWEzMzE5MThjNDRkM2E3NmUwNWM4IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTVmFsdWUuaApAQCAtODksNiArODksNyBAQCBwdWJsaWM6CiAKICAgICBib29sIGlzQXNw
ZWN0UmF0aW9WYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1fY2xhc3NUeXBlID09IEFzcGVjdFJhdGlv
Q2xhc3M7IH0KICAgICBib29sIGlzQm9yZGVySW1hZ2VTbGljZVZhbHVlKCkgY29uc3QgeyByZXR1
cm4gbV9jbGFzc1R5cGUgPT0gQm9yZGVySW1hZ2VTbGljZUNsYXNzOyB9CisgICAgYm9vbCBpc0Jv
cmRlckltYWdlV2lkdGhWYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1fY2xhc3NUeXBlID09IEJvcmRl
ckltYWdlV2lkdGhDbGFzczsgfQogICAgIGJvb2wgaXNDYW52YXNWYWx1ZSgpIGNvbnN0IHsgcmV0
dXJuIG1fY2xhc3NUeXBlID09IENhbnZhc0NsYXNzOyB9CiAgICAgYm9vbCBpc0Nyb3NzZmFkZVZh
bHVlKCkgY29uc3QgeyByZXR1cm4gbV9jbGFzc1R5cGUgPT0gQ3Jvc3NmYWRlQ2xhc3M7IH0KICAg
ICBib29sIGlzQ3Vyc29ySW1hZ2VWYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1fY2xhc3NUeXBlID09
IEN1cnNvckltYWdlQ2xhc3M7IH0KQEAgLTE5MSw2ICsxOTIsNyBAQCBwcm90ZWN0ZWQ6CiAgICAg
ICAgIC8vIE90aGVyIGNsYXNzIHR5cGVzLgogICAgICAgICBBc3BlY3RSYXRpb0NsYXNzLAogICAg
ICAgICBCb3JkZXJJbWFnZVNsaWNlQ2xhc3MsCisgICAgICAgIEJvcmRlckltYWdlV2lkdGhDbGFz
cywKICAgICAgICAgRm9udEZlYXR1cmVDbGFzcywKICAgICAgICAgRm9udFZhcmlhdGlvbkNsYXNz
LAogICAgICAgICBGb250Q2xhc3MsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5
bGVQcm9wZXJ0aWVzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVByb3BlcnRpZXMuY3Bw
CmluZGV4IGYwNDEzYzE3ZmZmYTI4MzgxMWZlMjUxN2ZkZmQ2MWJjZGNmOGIyNTkuLjI5YTljMTUz
NzE1Yjk0OTEwYjNmN2EyMzcwOGUwMTExN2E5MjBmYTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2Nzcy9TdHlsZVByb3BlcnRpZXMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHls
ZVByb3BlcnRpZXMuY3BwCkBAIC0yMyw2ICsyMyw3IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAj
aW5jbHVkZSAiU3R5bGVQcm9wZXJ0aWVzLmgiCiAKKyNpbmNsdWRlICJDU1NCb3JkZXJJbWFnZVdp
ZHRoVmFsdWUuaCIKICNpbmNsdWRlICJDU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uaCIKICNp
bmNsdWRlICJDU1NDdXN0b21Qcm9wZXJ0eVZhbHVlLmgiCiAjaW5jbHVkZSAiQ1NTRGVmZXJyZWRQ
YXJzZXIuaCIKQEAgLTIxOSw3ICsyMjAsOCBAQCBTdHJpbmcgU3R5bGVQcm9wZXJ0aWVzOjpnZXRQ
cm9wZXJ0eVZhbHVlKENTU1Byb3BlcnR5SUQgcHJvcGVydHlJRCkgY29uc3QKICAgICBjYXNlIENT
U1Byb3BlcnR5Qm9yZGVyQmxvY2tFbmQ6CiAgICAgICAgIHJldHVybiBnZXRTaG9ydGhhbmRWYWx1
ZShib3JkZXJCbG9ja0VuZFNob3J0aGFuZCgpKTsKICAgICBjYXNlIENTU1Byb3BlcnR5Qm9yZGVy
SW1hZ2U6Ci0gICAgICAgIHJldHVybiBib3JkZXJJbWFnZVByb3BlcnR5VmFsdWUoKTsKKyAgICBj
YXNlIENTU1Byb3BlcnR5V2Via2l0Qm9yZGVySW1hZ2U6CisgICAgICAgIHJldHVybiBib3JkZXJJ
bWFnZVByb3BlcnR5VmFsdWUocHJvcGVydHlJRCk7CiAgICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRl
cklubGluZToKICAgICAgICAgcmV0dXJuIGJvcmRlclByb3BlcnR5VmFsdWUoYm9yZGVySW5saW5l
V2lkdGhTaG9ydGhhbmQoKSwgYm9yZGVySW5saW5lU3R5bGVTaG9ydGhhbmQoKSwgYm9yZGVySW5s
aW5lQ29sb3JTaG9ydGhhbmQoKSk7CiAgICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlcklubGluZUNv
bG9yOgpAQCAtOTAzLDcgKzkwNSw3IEBAIFN0cmluZyBTdHlsZVByb3BlcnRpZXM6OmdldEFsaWdu
bWVudFNob3J0aGFuZFZhbHVlKGNvbnN0IFN0eWxlUHJvcGVydHlTaG9ydGhhbmQmCiAgICAgcmV0
dXJuIHZhbHVlOwogfQogCi1TdHJpbmcgU3R5bGVQcm9wZXJ0aWVzOjpib3JkZXJJbWFnZVByb3Bl
cnR5VmFsdWUoKSBjb25zdAorU3RyaW5nIFN0eWxlUHJvcGVydGllczo6Ym9yZGVySW1hZ2VQcm9w
ZXJ0eVZhbHVlKENTU1Byb3BlcnR5SUQgcHJvcGVydHlJRCkgY29uc3QKIHsKICAgICBjb25zdCBT
dHlsZVByb3BlcnR5U2hvcnRoYW5kJiBzaG9ydGhhbmQgPSBib3JkZXJJbWFnZVNob3J0aGFuZCgp
OwogICAgIFN0cmluZ0J1aWxkZXIgcmVzdWx0OwpAQCAtOTM2LDYgKzkzOCwxNiBAQCBTdHJpbmcg
U3R5bGVQcm9wZXJ0aWVzOjpib3JkZXJJbWFnZVByb3BlcnR5VmFsdWUoKSBjb25zdAogICAgICAg
ICBpZiAob21pdHRlZFNsaWNlICYmIChsb25naGFuZCA9PSBDU1NQcm9wZXJ0eUJvcmRlckltYWdl
V2lkdGggfHwgbG9uZ2hhbmQgPT0gQ1NTUHJvcGVydHlCb3JkZXJJbWFnZU91dHNldCkpCiAgICAg
ICAgICAgICByZXR1cm4gU3RyaW5nKCk7CiAKKyAgICAgICAgLy8gLXdlYmtpdC1ib3JkZXItaW1h
Z2UgaGFzIGEgbGVnYWN5IGJlaGF2aW9yIHRoYXQgbWFrZXMgZml4ZWQgYm9yZGVyIHNsaWNlcyBh
bHNvIHNldCB0aGUgYm9yZGVyIHdpZHRocy4KKyAgICAgICAgaWYgKGlzPENTU0JvcmRlckltYWdl
V2lkdGhWYWx1ZT4odmFsdWUuZ2V0KCkpKSB7CisgICAgICAgICAgICBhdXRvKiBib3JkZXJJbWFn
ZVdpZHRoID0gZG93bmNhc3Q8Q1NTQm9yZGVySW1hZ2VXaWR0aFZhbHVlPih2YWx1ZS5nZXQoKSk7
CisgICAgICAgICAgICBRdWFkKiB3aWR0aHMgPSBib3JkZXJJbWFnZVdpZHRoLT53aWR0aHMoKTsK
KyAgICAgICAgICAgIGJvb2wgb3ZlcnJpZGVzQm9yZGVyV2lkdGhzID0gcHJvcGVydHlJRCA9PSBD
U1NQcm9wZXJ0eVdlYmtpdEJvcmRlckltYWdlICYmIHdpZHRocyAmJiAod2lkdGhzLT50b3AoKS0+
aXNMZW5ndGgoKSB8fCB3aWR0aHMtPnJpZ2h0KCktPmlzTGVuZ3RoKCkgfHwgd2lkdGhzLT5ib3R0
b20oKS0+aXNMZW5ndGgoKSB8fCB3aWR0aHMtPmxlZnQoKS0+aXNMZW5ndGgoKSk7CisgICAgICAg
ICAgICBpZiAob3ZlcnJpZGVzQm9yZGVyV2lkdGhzICE9IGJvcmRlckltYWdlV2lkdGgtPm1fb3Zl
cnJpZGVzQm9yZGVyV2lkdGhzKQorICAgICAgICAgICAgICAgIHJldHVybiBTdHJpbmcoKTsKKyAg
ICAgICAgICAgIHZhbHVlID0gYm9yZGVySW1hZ2VXaWR0aC0+bV93aWR0aHM7CisgICAgICAgIH0K
KwogICAgICAgICAvLyBJZiBhIGxvbmdoYW5kIGlzIHNldCB0byBhIGNzcy13aWRlIGtleXdvcmQs
IHRoZSBvdGhlcnMgc2hvdWxkIGJlIHRoZSBzYW1lLgogICAgICAgICBTdHJpbmcgdmFsdWVUZXh0
ID0gdmFsdWUtPmNzc1RleHQoKTsKICAgICAgICAgaWYgKGlzQ1NTV2lkZVZhbHVlS2V5d29yZCh2
YWx1ZVRleHQpKSB7CkBAIC0xNDA5LDcgKzE0MjEsNyBAQCBTdHJpbmcgU3R5bGVQcm9wZXJ0aWVz
Ojphc1RleHQoKSBjb25zdAogICAgICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlckltYWdl
V2lkdGg6CiAgICAgICAgICAgICBjYXNlIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VPdXRzZXQ6CiAg
ICAgICAgICAgICBjYXNlIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VSZXBlYXQ6Ci0gICAgICAgICAg
ICAgICAgc2hvcnRoYW5kUHJvcGVydHlJRCA9IENTU1Byb3BlcnR5Qm9yZGVySW1hZ2U7CisgICAg
ICAgICAgICAgICAgc2VyaWFsaXplQm9yZGVyU2hvcnRoYW5kKENTU1Byb3BlcnR5Qm9yZGVySW1h
Z2UsIENTU1Byb3BlcnR5V2Via2l0Qm9yZGVySW1hZ2UpOwogICAgICAgICAgICAgICAgIGJyZWFr
OwogICAgICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eUZvbnRGYW1pbHk6CiAgICAgICAgICAgICBj
YXNlIENTU1Byb3BlcnR5TGluZUhlaWdodDoKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nz
cy9TdHlsZVByb3BlcnRpZXMuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVByb3BlcnRpZXMu
aAppbmRleCBkZDM5MGQ1OTIyZGM3YmQzY2YwYjhlMjZjZGFhMzJmZmExNmZlZmRjLi5kYTVjZjYx
M2JlMWYwMmQ3NDBiYjBiNmIyZWUwOWMzNDdiNjFjYzI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9jc3MvU3R5bGVQcm9wZXJ0aWVzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxl
UHJvcGVydGllcy5oCkBAIC0xNjUsNyArMTY1LDcgQEAgcHJpdmF0ZToKICAgICBTdHJpbmcgZ2V0
U2hvcnRoYW5kVmFsdWUoY29uc3QgU3R5bGVQcm9wZXJ0eVNob3J0aGFuZCYsIGNvbnN0IGNoYXIq
IHNlcGFyYXRvciA9ICIgIikgY29uc3Q7CiAgICAgU3RyaW5nIGdldENvbW1vblZhbHVlKGNvbnN0
IFN0eWxlUHJvcGVydHlTaG9ydGhhbmQmKSBjb25zdDsKICAgICBTdHJpbmcgZ2V0QWxpZ25tZW50
U2hvcnRoYW5kVmFsdWUoY29uc3QgU3R5bGVQcm9wZXJ0eVNob3J0aGFuZCYpIGNvbnN0OwotICAg
IFN0cmluZyBib3JkZXJJbWFnZVByb3BlcnR5VmFsdWUoKSBjb25zdDsKKyAgICBTdHJpbmcgYm9y
ZGVySW1hZ2VQcm9wZXJ0eVZhbHVlKENTU1Byb3BlcnR5SUQpIGNvbnN0OwogICAgIFN0cmluZyBi
b3JkZXJQcm9wZXJ0eVZhbHVlKGNvbnN0IFN0eWxlUHJvcGVydHlTaG9ydGhhbmQmLCBjb25zdCBT
dHlsZVByb3BlcnR5U2hvcnRoYW5kJiwgY29uc3QgU3R5bGVQcm9wZXJ0eVNob3J0aGFuZCYpIGNv
bnN0OwogICAgIFN0cmluZyBwYWdlQnJlYWtQcm9wZXJ0eVZhbHVlKGNvbnN0IFN0eWxlUHJvcGVy
dHlTaG9ydGhhbmQmKSBjb25zdDsKICAgICBTdHJpbmcgZ2V0TGF5ZXJlZFNob3J0aGFuZFZhbHVl
KGNvbnN0IFN0eWxlUHJvcGVydHlTaG9ydGhhbmQmKSBjb25zdDsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXIuY3BwIGIvU291cmNlL1dlYkNv
cmUvY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlci5jcHAKaW5kZXggYzVmMzQ0MTY1ZjQ2MTYy
ZmY4ZWQxMTAzYTgwYjg4YWUxOTA2MjM3Zi4uZDFiMDJiYmJmYjUyMzM3ZGI1ZjgwNjc1ZWE3MmQy
ZmU2Y2YwYTNlNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQcm9w
ZXJ0eVBhcnNlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQcm9wZXJ0
eVBhcnNlci5jcHAKQEAgLTMzLDYgKzMzLDcgQEAKICNpbmNsdWRlICJDU1NCYXNpY1NoYXBlcy5o
IgogI2luY2x1ZGUgIkNTU0JvcmRlckltYWdlLmgiCiAjaW5jbHVkZSAiQ1NTQm9yZGVySW1hZ2VT
bGljZVZhbHVlLmgiCisjaW5jbHVkZSAiQ1NTQm9yZGVySW1hZ2VXaWR0aFZhbHVlLmgiCiAjaW5j
bHVkZSAiQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmgiCiAjaW5jbHVkZSAiQ1NTQ29udGVu
dERpc3RyaWJ1dGlvblZhbHVlLmgiCiAjaW5jbHVkZSAiQ1NTQ3Vyc29ySW1hZ2VWYWx1ZS5oIgpA
QCAtMzAzNyw3ICszMDM4LDcgQEAgc3RhdGljIFJlZlB0cjxDU1NWYWx1ZT4gY29uc3VtZUJvcmRl
ckltYWdlT3V0c2V0KENTU1BhcnNlclRva2VuUmFuZ2UmIHJhbmdlKQogICAgIHJldHVybiBDU1NW
YWx1ZVBvb2w6OnNpbmdsZXRvbigpLmNyZWF0ZVZhbHVlKFdURk1vdmUocXVhZCkpOwogfQogCi1z
dGF0aWMgUmVmUHRyPENTU1ZhbHVlPiBjb25zdW1lQm9yZGVySW1hZ2VXaWR0aChDU1NQYXJzZXJU
b2tlblJhbmdlJiByYW5nZSkKK3N0YXRpYyBSZWZQdHI8Q1NTVmFsdWU+IGNvbnN1bWVCb3JkZXJJ
bWFnZVdpZHRoKENTU1Byb3BlcnR5SUQgcHJvcGVydHksIENTU1BhcnNlclRva2VuUmFuZ2UmIHJh
bmdlKQogewogICAgIFJlZlB0cjxDU1NQcmltaXRpdmVWYWx1ZT4gd2lkdGhzWzRdOwogCkBAIC0z
MDU1LDE1ICszMDU2LDE4IEBAIHN0YXRpYyBSZWZQdHI8Q1NTVmFsdWU+IGNvbnN1bWVCb3JkZXJJ
bWFnZVdpZHRoKENTU1BhcnNlclRva2VuUmFuZ2UmIHJhbmdlKQogICAgIGlmICghd2lkdGhzWzBd
KQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICBjb21wbGV0ZTRTaWRlcyh3aWR0aHMpOwot
ICAgIAorCisgICAgLy8gLXdlYmtpdC1ib3JkZXItaW1hZ2UgaGFzIGEgbGVnYWN5IGJlaGF2aW9y
IHRoYXQgbWFrZXMgZml4ZWQgYm9yZGVyIHNsaWNlcyBhbHNvIHNldCB0aGUgYm9yZGVyIHdpZHRo
cy4KKyAgICBib29sIG92ZXJyaWRlc0JvcmRlcldpZHRocyA9IHByb3BlcnR5ID09IENTU1Byb3Bl
cnR5V2Via2l0Qm9yZGVySW1hZ2UgJiYgKHdpZHRoc1swXS0+aXNMZW5ndGgoKSB8fCB3aWR0aHNb
MV0tPmlzTGVuZ3RoKCkgfHwgd2lkdGhzWzJdLT5pc0xlbmd0aCgpIHx8IHdpZHRoc1szXS0+aXNM
ZW5ndGgoKSk7CisKICAgICAvLyBGSVhNRS1ORVdQQVJTRVI6IFNob3VsZCBqdXN0IGhhdmUgYSBD
U1NRdWFkVmFsdWUuCiAgICAgYXV0byBxdWFkID0gUXVhZDo6Y3JlYXRlKCk7CiAgICAgcXVhZC0+
c2V0VG9wKHdpZHRoc1swXS5yZWxlYXNlTm9uTnVsbCgpKTsKICAgICBxdWFkLT5zZXRSaWdodCh3
aWR0aHNbMV0ucmVsZWFzZU5vbk51bGwoKSk7CiAgICAgcXVhZC0+c2V0Qm90dG9tKHdpZHRoc1sy
XS5yZWxlYXNlTm9uTnVsbCgpKTsKICAgICBxdWFkLT5zZXRMZWZ0KHdpZHRoc1szXS5yZWxlYXNl
Tm9uTnVsbCgpKTsKLSAgICAKLSAgICByZXR1cm4gQ1NTVmFsdWVQb29sOjpzaW5nbGV0b24oKS5j
cmVhdGVWYWx1ZShXVEZNb3ZlKHF1YWQpKTsKKworICAgIHJldHVybiBDU1NCb3JkZXJJbWFnZVdp
ZHRoVmFsdWU6OmNyZWF0ZShDU1NWYWx1ZVBvb2w6OnNpbmdsZXRvbigpLmNyZWF0ZVZhbHVlKFdU
Rk1vdmUocXVhZCkpLCBvdmVycmlkZXNCb3JkZXJXaWR0aHMpOwogfQogCiBzdGF0aWMgYm9vbCBj
b25zdW1lQm9yZGVySW1hZ2VDb21wb25lbnRzKENTU1Byb3BlcnR5SUQgcHJvcGVydHksIENTU1Bh
cnNlclRva2VuUmFuZ2UmIHJhbmdlLCBjb25zdCBDU1NQYXJzZXJDb250ZXh0JiBjb250ZXh0LCBS
ZWZQdHI8Q1NTVmFsdWU+JiBzb3VyY2UsCkBAIC0zMDg1LDcgKzMwODksNyBAQCBzdGF0aWMgYm9v
bCBjb25zdW1lQm9yZGVySW1hZ2VDb21wb25lbnRzKENTU1Byb3BlcnR5SUQgcHJvcGVydHksIENT
U1BhcnNlclRva2VuUgogICAgICAgICAgICAgaWYgKHNsaWNlKSB7CiAgICAgICAgICAgICAgICAg
QVNTRVJUKCF3aWR0aCAmJiAhb3V0c2V0KTsKICAgICAgICAgICAgICAgICBpZiAoY29uc3VtZVNs
YXNoSW5jbHVkaW5nV2hpdGVzcGFjZShyYW5nZSkpIHsKLSAgICAgICAgICAgICAgICAgICAgd2lk
dGggPSBjb25zdW1lQm9yZGVySW1hZ2VXaWR0aChyYW5nZSk7CisgICAgICAgICAgICAgICAgICAg
IHdpZHRoID0gY29uc3VtZUJvcmRlckltYWdlV2lkdGgocHJvcGVydHksIHJhbmdlKTsKICAgICAg
ICAgICAgICAgICAgICAgaWYgKGNvbnN1bWVTbGFzaEluY2x1ZGluZ1doaXRlc3BhY2UocmFuZ2Up
KSB7CiAgICAgICAgICAgICAgICAgICAgICAgICBvdXRzZXQgPSBjb25zdW1lQm9yZGVySW1hZ2VP
dXRzZXQocmFuZ2UpOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFvdXRzZXQpCkBAIC00
NjIwLDggKzQ2MjQsNyBAQCBSZWZQdHI8Q1NTVmFsdWU+IENTU1Byb3BlcnR5UGFyc2VyOjpwYXJz
ZVNpbmdsZVZhbHVlKENTU1Byb3BlcnR5SUQgcHJvcGVydHksIENTUwogICAgICAgICByZXR1cm4g
Y29uc3VtZUJvcmRlckltYWdlT3V0c2V0KG1fcmFuZ2UpOwogICAgIGNhc2UgQ1NTUHJvcGVydHlC
b3JkZXJJbWFnZVdpZHRoOgogICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2VX
aWR0aDoKLSAgICAgICAgcmV0dXJuIGNvbnN1bWVCb3JkZXJJbWFnZVdpZHRoKG1fcmFuZ2UpOwot
ICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJJbWFnZToKKyAgICAgICAgcmV0dXJuIGNv
bnN1bWVCb3JkZXJJbWFnZVdpZHRoKHByb3BlcnR5LCBtX3JhbmdlKTsKICAgICBjYXNlIENTU1By
b3BlcnR5V2Via2l0TWFza0JveEltYWdlOgogICAgICAgICByZXR1cm4gY29uc3VtZVdlYmtpdEJv
cmRlckltYWdlKHByb3BlcnR5LCBtX3JhbmdlLCBtX2NvbnRleHQpOwogICAgIGNhc2UgQ1NTUHJv
cGVydHlXZWJraXRCb3hSZWZsZWN0OgpAQCAtNTU0OSwxOCArNTU1MiwxOSBAQCBib29sIENTU1By
b3BlcnR5UGFyc2VyOjpjb25zdW1lQm9yZGVySW1hZ2UoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eSwg
Ym9vbCBpbXBvcnRhbgogICAgICAgICBhdXRvJiB2YWx1ZVBvb2wgPSBDU1NWYWx1ZVBvb2w6OnNp
bmdsZXRvbigpOwogICAgICAgICBzd2l0Y2ggKHByb3BlcnR5KSB7CiAgICAgICAgIGNhc2UgQ1NT
UHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2U6Ci0gICAgICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJ
bXBsaWNpdERlZmF1bHQoQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2VTb3VyY2UsIENTU1By
b3BlcnR5V2Via2l0TWFza0JveEltYWdlLCBXVEZNb3ZlKHNvdXJjZSksIHZhbHVlUG9vbC5jcmVh
dGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQpOwotICAgICAgICAgICAgYWRkUHJv
cGVydHlXaXRoSW1wbGljaXREZWZhdWx0KENTU1Byb3BlcnR5V2Via2l0TWFza0JveEltYWdlU2xp
Y2UsIENTU1Byb3BlcnR5V2Via2l0TWFza0JveEltYWdlLCBXVEZNb3ZlKHNsaWNlKSwgdmFsdWVQ
b29sLmNyZWF0ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCksIGltcG9ydGFudCk7Ci0gICAgICAgICAg
ICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNpdERlZmF1bHQoQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94
SW1hZ2VXaWR0aCwgQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2UsIFdURk1vdmUod2lkdGgp
LCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFsdWUoKSwgaW1wb3J0YW50KTsKLSAg
ICAgICAgICAgIGFkZFByb3BlcnR5V2l0aEltcGxpY2l0RGVmYXVsdChDU1NQcm9wZXJ0eVdlYmtp
dE1hc2tCb3hJbWFnZU91dHNldCwgQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2UsIFdURk1v
dmUob3V0c2V0KSwgdmFsdWVQb29sLmNyZWF0ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCksIGltcG9y
dGFudCk7Ci0gICAgICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNpdERlZmF1bHQoQ1NTUHJv
cGVydHlXZWJraXRNYXNrQm94SW1hZ2VSZXBlYXQsIENTU1Byb3BlcnR5V2Via2l0TWFza0JveElt
YWdlLCBXVEZNb3ZlKHJlcGVhdCksIHZhbHVlUG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1
ZSgpLCBpbXBvcnRhbnQpOworICAgICAgICAgICAgYWRkUHJvcGVydHlXaXRoSW1wbGljaXREZWZh
dWx0KENTU1Byb3BlcnR5V2Via2l0TWFza0JveEltYWdlU291cmNlLCBwcm9wZXJ0eSwgV1RGTW92
ZShzb3VyY2UpLCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFsdWUoKSwgaW1wb3J0
YW50KTsKKyAgICAgICAgICAgIGFkZFByb3BlcnR5V2l0aEltcGxpY2l0RGVmYXVsdChDU1NQcm9w
ZXJ0eVdlYmtpdE1hc2tCb3hJbWFnZVNsaWNlLCBwcm9wZXJ0eSwgV1RGTW92ZShzbGljZSksIHZh
bHVlUG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQpOworICAgICAg
ICAgICAgYWRkUHJvcGVydHlXaXRoSW1wbGljaXREZWZhdWx0KENTU1Byb3BlcnR5V2Via2l0TWFz
a0JveEltYWdlV2lkdGgsIHByb3BlcnR5LCBXVEZNb3ZlKHdpZHRoKSwgdmFsdWVQb29sLmNyZWF0
ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCksIGltcG9ydGFudCk7CisgICAgICAgICAgICBhZGRQcm9w
ZXJ0eVdpdGhJbXBsaWNpdERlZmF1bHQoQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2VPdXRz
ZXQsIHByb3BlcnR5LCBXVEZNb3ZlKG91dHNldCksIHZhbHVlUG9vbC5jcmVhdGVJbXBsaWNpdElu
aXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQpOworICAgICAgICAgICAgYWRkUHJvcGVydHlXaXRoSW1w
bGljaXREZWZhdWx0KENTU1Byb3BlcnR5V2Via2l0TWFza0JveEltYWdlUmVwZWF0LCBwcm9wZXJ0
eSwgV1RGTW92ZShyZXBlYXQpLCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFsdWUo
KSwgaW1wb3J0YW50KTsKICAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgICBjYXNlIENT
U1Byb3BlcnR5Qm9yZGVySW1hZ2U6Ci0gICAgICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNp
dERlZmF1bHQoQ1NTUHJvcGVydHlCb3JkZXJJbWFnZVNvdXJjZSwgQ1NTUHJvcGVydHlCb3JkZXJJ
bWFnZSwgV1RGTW92ZShzb3VyY2UpLCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFs
dWUoKSwgaW1wb3J0YW50KTsKLSAgICAgICAgICAgIGFkZFByb3BlcnR5V2l0aEltcGxpY2l0RGVm
YXVsdChDU1NQcm9wZXJ0eUJvcmRlckltYWdlU2xpY2UsIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2Us
IFdURk1vdmUoc2xpY2UpLCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFsdWUoKSwg
aW1wb3J0YW50KTsKLSAgICAgICAgICAgIGFkZFByb3BlcnR5V2l0aEltcGxpY2l0RGVmYXVsdChD
U1NQcm9wZXJ0eUJvcmRlckltYWdlV2lkdGgsIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2UsIFdURk1v
dmUod2lkdGgpLCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFsdWUoKSwgaW1wb3J0
YW50KTsKLSAgICAgICAgICAgIGFkZFByb3BlcnR5V2l0aEltcGxpY2l0RGVmYXVsdChDU1NQcm9w
ZXJ0eUJvcmRlckltYWdlT3V0c2V0LCBDU1NQcm9wZXJ0eUJvcmRlckltYWdlLCBXVEZNb3ZlKG91
dHNldCksIHZhbHVlUG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQp
OwotICAgICAgICAgICAgYWRkUHJvcGVydHlXaXRoSW1wbGljaXREZWZhdWx0KENTU1Byb3BlcnR5
Qm9yZGVySW1hZ2VSZXBlYXQsIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2UsIFdURk1vdmUocmVwZWF0
KSwgdmFsdWVQb29sLmNyZWF0ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCksIGltcG9ydGFudCk7Cisg
ICAgICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJJbWFnZToKKyAgICAgICAgICAgIGFk
ZFByb3BlcnR5V2l0aEltcGxpY2l0RGVmYXVsdChDU1NQcm9wZXJ0eUJvcmRlckltYWdlU291cmNl
LCBwcm9wZXJ0eSwgV1RGTW92ZShzb3VyY2UpLCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0
aWFsVmFsdWUoKSwgaW1wb3J0YW50KTsKKyAgICAgICAgICAgIGFkZFByb3BlcnR5V2l0aEltcGxp
Y2l0RGVmYXVsdChDU1NQcm9wZXJ0eUJvcmRlckltYWdlU2xpY2UsIHByb3BlcnR5LCBXVEZNb3Zl
KHNsaWNlKSwgdmFsdWVQb29sLmNyZWF0ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCksIGltcG9ydGFu
dCk7CisgICAgICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNpdERlZmF1bHQoQ1NTUHJvcGVy
dHlCb3JkZXJJbWFnZVdpZHRoLCBwcm9wZXJ0eSwgV1RGTW92ZSh3aWR0aCksIHZhbHVlUG9vbC5j
cmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQpOworICAgICAgICAgICAgYWRk
UHJvcGVydHlXaXRoSW1wbGljaXREZWZhdWx0KENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VPdXRzZXQs
IHByb3BlcnR5LCBXVEZNb3ZlKG91dHNldCksIHZhbHVlUG9vbC5jcmVhdGVJbXBsaWNpdEluaXRp
YWxWYWx1ZSgpLCBpbXBvcnRhbnQpOworICAgICAgICAgICAgYWRkUHJvcGVydHlXaXRoSW1wbGlj
aXREZWZhdWx0KENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VSZXBlYXQsIHByb3BlcnR5LCBXVEZNb3Zl
KHJlcGVhdCksIHZhbHVlUG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgpLCBpbXBvcnRh
bnQpOwogICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAg
ICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKQEAgLTY0NDIsNiArNjQ0Niw3IEBAIGJvb2wgQ1NT
UHJvcGVydHlQYXJzZXI6OnBhcnNlU2hvcnRoYW5kKENTU1Byb3BlcnR5SUQgcHJvcGVydHksIGJv
b2wgaW1wb3J0YW50KQogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9CiAgICAgY2FzZSBDU1NQ
cm9wZXJ0eUJvcmRlckltYWdlOgorICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJJbWFn
ZToKICAgICAgICAgcmV0dXJuIGNvbnN1bWVCb3JkZXJJbWFnZShwcm9wZXJ0eSwgaW1wb3J0YW50
KTsKICAgICBjYXNlIENTU1Byb3BlcnR5UGFnZUJyZWFrQWZ0ZXI6CiAgICAgY2FzZSBDU1NQcm9w
ZXJ0eVBhZ2VCcmVha0JlZm9yZToKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9zdHlsZS9Cb3JkZXJEYXRhLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvQm9y
ZGVyRGF0YS5oCmluZGV4IGU0Mzk4M2UyMmJhM2UyYzIxNDFiMTZjMDgxNGJkYWJjODM5YzgyYTQu
LjU2OGY1OThkZTgwMjhhOTE4ODJhZGFjMjRjMWRlZjQ5YmI0YTRjNDUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9Cb3JkZXJEYXRhLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL3N0eWxlL0JvcmRlckRhdGEuaApAQCAtNjksNyArNjksOSBAQCBwdWJs
aWM6CiAgICAgZmxvYXQgYm9yZGVyTGVmdFdpZHRoKCkgY29uc3QKICAgICB7CiAgICAgICAgIGlm
IChtX2xlZnQuc3R5bGUoKSA9PSBCb3JkZXJTdHlsZTo6Tm9uZSB8fCBtX2xlZnQuc3R5bGUoKSA9
PSBCb3JkZXJTdHlsZTo6SGlkZGVuKQotICAgICAgICAgICAgcmV0dXJuIDA7IAorICAgICAgICAg
ICAgcmV0dXJuIDA7CisgICAgICAgIGlmIChtX2ltYWdlLm92ZXJyaWRlc0JvcmRlcldpZHRocygp
ICYmIG1faW1hZ2UuYm9yZGVyU2xpY2VzKCkubGVmdCgpLmlzRml4ZWQoKSkKKyAgICAgICAgICAg
IHJldHVybiBtX2ltYWdlLmJvcmRlclNsaWNlcygpLmxlZnQoKS52YWx1ZSgpOwogICAgICAgICBy
ZXR1cm4gbV9sZWZ0LndpZHRoKCk7CiAgICAgfQogCkBAIC03Nyw2ICs3OSw4IEBAIHB1YmxpYzoK
ICAgICB7CiAgICAgICAgIGlmIChtX3JpZ2h0LnN0eWxlKCkgPT0gQm9yZGVyU3R5bGU6Ok5vbmUg
fHwgbV9yaWdodC5zdHlsZSgpID09IEJvcmRlclN0eWxlOjpIaWRkZW4pCiAgICAgICAgICAgICBy
ZXR1cm4gMDsKKyAgICAgICAgaWYgKG1faW1hZ2Uub3ZlcnJpZGVzQm9yZGVyV2lkdGhzKCkgJiYg
bV9pbWFnZS5ib3JkZXJTbGljZXMoKS5yaWdodCgpLmlzRml4ZWQoKSkKKyAgICAgICAgICAgIHJl
dHVybiBtX2ltYWdlLmJvcmRlclNsaWNlcygpLnJpZ2h0KCkudmFsdWUoKTsKICAgICAgICAgcmV0
dXJuIG1fcmlnaHQud2lkdGgoKTsKICAgICB9CiAKQEAgLTg0LDYgKzg4LDggQEAgcHVibGljOgog
ICAgIHsKICAgICAgICAgaWYgKG1fdG9wLnN0eWxlKCkgPT0gQm9yZGVyU3R5bGU6Ok5vbmUgfHwg
bV90b3Auc3R5bGUoKSA9PSBCb3JkZXJTdHlsZTo6SGlkZGVuKQogICAgICAgICAgICAgcmV0dXJu
IDA7CisgICAgICAgIGlmIChtX2ltYWdlLm92ZXJyaWRlc0JvcmRlcldpZHRocygpICYmIG1faW1h
Z2UuYm9yZGVyU2xpY2VzKCkudG9wKCkuaXNGaXhlZCgpKQorICAgICAgICAgICAgcmV0dXJuIG1f
aW1hZ2UuYm9yZGVyU2xpY2VzKCkudG9wKCkudmFsdWUoKTsKICAgICAgICAgcmV0dXJuIG1fdG9w
LndpZHRoKCk7CiAgICAgfQogCkBAIC05MSw2ICs5Nyw4IEBAIHB1YmxpYzoKICAgICB7CiAgICAg
ICAgIGlmIChtX2JvdHRvbS5zdHlsZSgpID09IEJvcmRlclN0eWxlOjpOb25lIHx8IG1fYm90dG9t
LnN0eWxlKCkgPT0gQm9yZGVyU3R5bGU6OkhpZGRlbikKICAgICAgICAgICAgIHJldHVybiAwOwor
ICAgICAgICBpZiAobV9pbWFnZS5vdmVycmlkZXNCb3JkZXJXaWR0aHMoKSAmJiBtX2ltYWdlLmJv
cmRlclNsaWNlcygpLmJvdHRvbSgpLmlzRml4ZWQoKSkKKyAgICAgICAgICAgIHJldHVybiBtX2lt
YWdlLmJvcmRlclNsaWNlcygpLmJvdHRvbSgpLnZhbHVlKCk7CiAgICAgICAgIHJldHVybiBtX2Jv
dHRvbS53aWR0aCgpOwogICAgIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL3N0eWxlL05pbmVQaWVjZUltYWdlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9z
dHlsZS9OaW5lUGllY2VJbWFnZS5jcHAKaW5kZXggYTMyYzRkMDA0OGRiOTVlNDI4YzhkNWQ2MDg4
ZjQ1OGE2NTZlZjk3Mi4uZDI5NTJmYWRlNDdjMTMxZWQyZTYxNjAxYTIxMzU0ODFhNTU4ZmYyZCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL05pbmVQaWVjZUltYWdl
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvTmluZVBpZWNlSW1hZ2Uu
Y3BwCkBAIC01NSw4ICs1NSw4IEBAIE5pbmVQaWVjZUltYWdlOjpOaW5lUGllY2VJbWFnZShUeXBl
IGltYWdlVHlwZSkKIHsKIH0KIAotTmluZVBpZWNlSW1hZ2U6Ok5pbmVQaWVjZUltYWdlKFJlZlB0
cjxTdHlsZUltYWdlPiYmIGltYWdlLCBMZW5ndGhCb3ggaW1hZ2VTbGljZXMsIGJvb2wgZmlsbCwg
TGVuZ3RoQm94IGJvcmRlclNsaWNlcywgTGVuZ3RoQm94IG91dHNldCwgTmluZVBpZWNlSW1hZ2VS
dWxlIGhvcml6b250YWxSdWxlLCBOaW5lUGllY2VJbWFnZVJ1bGUgdmVydGljYWxSdWxlKQotICAg
IDogbV9kYXRhKERhdGE6OmNyZWF0ZShXVEZNb3ZlKGltYWdlKSwgaW1hZ2VTbGljZXMsIGZpbGws
IGJvcmRlclNsaWNlcywgb3V0c2V0LCBob3Jpem9udGFsUnVsZSwgdmVydGljYWxSdWxlKSkKK05p
bmVQaWVjZUltYWdlOjpOaW5lUGllY2VJbWFnZShSZWZQdHI8U3R5bGVJbWFnZT4mJiBpbWFnZSwg
TGVuZ3RoQm94IGltYWdlU2xpY2VzLCBib29sIGZpbGwsIExlbmd0aEJveCBib3JkZXJTbGljZXMs
IGJvb2wgb3ZlcnJpZGVzQm9yZGVyV2lkdGhzLCBMZW5ndGhCb3ggb3V0c2V0LCBOaW5lUGllY2VJ
bWFnZVJ1bGUgaG9yaXpvbnRhbFJ1bGUsIE5pbmVQaWVjZUltYWdlUnVsZSB2ZXJ0aWNhbFJ1bGUp
CisgICAgOiBtX2RhdGEoRGF0YTo6Y3JlYXRlKFdURk1vdmUoaW1hZ2UpLCBpbWFnZVNsaWNlcywg
ZmlsbCwgYm9yZGVyU2xpY2VzLCBvdmVycmlkZXNCb3JkZXJXaWR0aHMsIG91dHNldCwgaG9yaXpv
bnRhbFJ1bGUsIHZlcnRpY2FsUnVsZSkpCiB7CiB9CiAKQEAgLTIzNSw4ICsyMzUsOSBAQCB2b2lk
IE5pbmVQaWVjZUltYWdlOjpwYWludChHcmFwaGljc0NvbnRleHQmIGdyYXBoaWNzQ29udGV4dCwg
UmVuZGVyRWxlbWVudCogcmVuZAogCiBpbmxpbmUgTmluZVBpZWNlSW1hZ2U6OkRhdGE6OkRhdGEo
KSA9IGRlZmF1bHQ7CiAKLWlubGluZSBOaW5lUGllY2VJbWFnZTo6RGF0YTo6RGF0YShSZWZQdHI8
U3R5bGVJbWFnZT4mJiBpbWFnZSwgTGVuZ3RoQm94IGltYWdlU2xpY2VzLCBib29sIGZpbGwsIExl
bmd0aEJveCBib3JkZXJTbGljZXMsIExlbmd0aEJveCBvdXRzZXQsIE5pbmVQaWVjZUltYWdlUnVs
ZSBob3Jpem9udGFsUnVsZSwgTmluZVBpZWNlSW1hZ2VSdWxlIHZlcnRpY2FsUnVsZSkKK2lubGlu
ZSBOaW5lUGllY2VJbWFnZTo6RGF0YTo6RGF0YShSZWZQdHI8U3R5bGVJbWFnZT4mJiBpbWFnZSwg
TGVuZ3RoQm94IGltYWdlU2xpY2VzLCBib29sIGZpbGwsIExlbmd0aEJveCBib3JkZXJTbGljZXMs
IGJvb2wgb3ZlcnJpZGVzQm9yZGVyV2lkdGhzLCBMZW5ndGhCb3ggb3V0c2V0LCBOaW5lUGllY2VJ
bWFnZVJ1bGUgaG9yaXpvbnRhbFJ1bGUsIE5pbmVQaWVjZUltYWdlUnVsZSB2ZXJ0aWNhbFJ1bGUp
CiAgICAgOiBmaWxsKGZpbGwpCisgICAgLCBvdmVycmlkZXNCb3JkZXJXaWR0aHMob3ZlcnJpZGVz
Qm9yZGVyV2lkdGhzKQogICAgICwgaG9yaXpvbnRhbFJ1bGUoaG9yaXpvbnRhbFJ1bGUpCiAgICAg
LCB2ZXJ0aWNhbFJ1bGUodmVydGljYWxSdWxlKQogICAgICwgaW1hZ2UoV1RGTW92ZShpbWFnZSkp
CkBAIC0yNDksNiArMjUwLDcgQEAgaW5saW5lIE5pbmVQaWVjZUltYWdlOjpEYXRhOjpEYXRhKFJl
ZlB0cjxTdHlsZUltYWdlPiYmIGltYWdlLCBMZW5ndGhCb3ggaW1hZ2VTbGkKIGlubGluZSBOaW5l
UGllY2VJbWFnZTo6RGF0YTo6RGF0YShjb25zdCBEYXRhJiBvdGhlcikKICAgICA6IFJlZkNvdW50
ZWQ8RGF0YT4oKQogICAgICwgZmlsbChvdGhlci5maWxsKQorICAgICwgb3ZlcnJpZGVzQm9yZGVy
V2lkdGhzKG92ZXJyaWRlc0JvcmRlcldpZHRocykKICAgICAsIGhvcml6b250YWxSdWxlKG90aGVy
Lmhvcml6b250YWxSdWxlKQogICAgICwgdmVydGljYWxSdWxlKG90aGVyLnZlcnRpY2FsUnVsZSkK
ICAgICAsIGltYWdlKG90aGVyLmltYWdlKQpAQCAtMjYzLDkgKzI2NSw5IEBAIGlubGluZSBSZWY8
TmluZVBpZWNlSW1hZ2U6OkRhdGE+IE5pbmVQaWVjZUltYWdlOjpEYXRhOjpjcmVhdGUoKQogICAg
IHJldHVybiBhZG9wdFJlZigqbmV3IERhdGEpOwogfQogCi1pbmxpbmUgUmVmPE5pbmVQaWVjZUlt
YWdlOjpEYXRhPiBOaW5lUGllY2VJbWFnZTo6RGF0YTo6Y3JlYXRlKFJlZlB0cjxTdHlsZUltYWdl
PiYmIGltYWdlLCBMZW5ndGhCb3ggaW1hZ2VTbGljZXMsIGJvb2wgZmlsbCwgTGVuZ3RoQm94IGJv
cmRlclNsaWNlcywgTGVuZ3RoQm94IG91dHNldCwgTmluZVBpZWNlSW1hZ2VSdWxlIGhvcml6b250
YWxSdWxlLCBOaW5lUGllY2VJbWFnZVJ1bGUgdmVydGljYWxSdWxlKQoraW5saW5lIFJlZjxOaW5l
UGllY2VJbWFnZTo6RGF0YT4gTmluZVBpZWNlSW1hZ2U6OkRhdGE6OmNyZWF0ZShSZWZQdHI8U3R5
bGVJbWFnZT4mJiBpbWFnZSwgTGVuZ3RoQm94IGltYWdlU2xpY2VzLCBib29sIGZpbGwsIExlbmd0
aEJveCBib3JkZXJTbGljZXMsIGJvb2wgb3ZlcnJpZGVzQm9yZGVyV2lkdGhzLCBMZW5ndGhCb3gg
b3V0c2V0LCBOaW5lUGllY2VJbWFnZVJ1bGUgaG9yaXpvbnRhbFJ1bGUsIE5pbmVQaWVjZUltYWdl
UnVsZSB2ZXJ0aWNhbFJ1bGUpCiB7Ci0gICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRGF0YShXVEZN
b3ZlKGltYWdlKSwgaW1hZ2VTbGljZXMsIGZpbGwsIGJvcmRlclNsaWNlcywgb3V0c2V0LCBob3Jp
em9udGFsUnVsZSwgdmVydGljYWxSdWxlKSk7CisgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRGF0
YShXVEZNb3ZlKGltYWdlKSwgaW1hZ2VTbGljZXMsIGZpbGwsIGJvcmRlclNsaWNlcywgb3ZlcnJp
ZGVzQm9yZGVyV2lkdGhzLCBvdXRzZXQsIGhvcml6b250YWxSdWxlLCB2ZXJ0aWNhbFJ1bGUpKTsK
IH0KIAogUmVmPE5pbmVQaWVjZUltYWdlOjpEYXRhPiBOaW5lUGllY2VJbWFnZTo6RGF0YTo6Y29w
eSgpIGNvbnN0CkBAIC0yNzksNiArMjgxLDcgQEAgYm9vbCBOaW5lUGllY2VJbWFnZTo6RGF0YTo6
b3BlcmF0b3I9PShjb25zdCBEYXRhJiBvdGhlcikgY29uc3QKICAgICAgICAgJiYgaW1hZ2VTbGlj
ZXMgPT0gb3RoZXIuaW1hZ2VTbGljZXMKICAgICAgICAgJiYgZmlsbCA9PSBvdGhlci5maWxsCiAg
ICAgICAgICYmIGJvcmRlclNsaWNlcyA9PSBvdGhlci5ib3JkZXJTbGljZXMKKyAgICAgICAgJiYg
b3ZlcnJpZGVzQm9yZGVyV2lkdGhzID09IG90aGVyLm92ZXJyaWRlc0JvcmRlcldpZHRocwogICAg
ICAgICAmJiBvdXRzZXQgPT0gb3RoZXIub3V0c2V0CiAgICAgICAgICYmIGhvcml6b250YWxSdWxl
ID09IG90aGVyLmhvcml6b250YWxSdWxlCiAgICAgICAgICYmIHZlcnRpY2FsUnVsZSA9PSBvdGhl
ci52ZXJ0aWNhbFJ1bGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5
bGUvTmluZVBpZWNlSW1hZ2UuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9OaW5l
UGllY2VJbWFnZS5oCmluZGV4IGMzOWRlYzMzNDQxMmRkOTUwNjBhNWExNmY0MmZmOTQ4MmJlM2Jk
NGUuLjZhNjdjZTUxYTZmZDI2N2IwNWMyMGFjMjA1ZTkzYzJkZWQ0NjE3MTcgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9OaW5lUGllY2VJbWFnZS5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9OaW5lUGllY2VJbWFnZS5oCkBAIC0xMTIsNyAr
MTEyLDcgQEAgcHVibGljOgogICAgIH07CiAKICAgICBOaW5lUGllY2VJbWFnZShUeXBlID0gVHlw
ZTo6Tm9ybWFsKTsKLSAgICBOaW5lUGllY2VJbWFnZShSZWZQdHI8U3R5bGVJbWFnZT4mJiwgTGVu
Z3RoQm94IGltYWdlU2xpY2VzLCBib29sIGZpbGwsIExlbmd0aEJveCBib3JkZXJTbGljZXMsIExl
bmd0aEJveCBvdXRzZXQsIE5pbmVQaWVjZUltYWdlUnVsZSBob3Jpem9udGFsUnVsZSwgTmluZVBp
ZWNlSW1hZ2VSdWxlIHZlcnRpY2FsUnVsZSk7CisgICAgTmluZVBpZWNlSW1hZ2UoUmVmUHRyPFN0
eWxlSW1hZ2U+JiYsIExlbmd0aEJveCBpbWFnZVNsaWNlcywgYm9vbCBmaWxsLCBMZW5ndGhCb3gg
Ym9yZGVyU2xpY2VzLCBib29sIG92ZXJyaWRlc0JvcmRlcldpZHRocywgTGVuZ3RoQm94IG91dHNl
dCwgTmluZVBpZWNlSW1hZ2VSdWxlIGhvcml6b250YWxSdWxlLCBOaW5lUGllY2VJbWFnZVJ1bGUg
dmVydGljYWxSdWxlKTsKIAogICAgIGJvb2wgb3BlcmF0b3I9PShjb25zdCBOaW5lUGllY2VJbWFn
ZSYgb3RoZXIpIGNvbnN0IHsgcmV0dXJuIG1fZGF0YSA9PSBvdGhlci5tX2RhdGE7IH0KICAgICBi
b29sIG9wZXJhdG9yIT0oY29uc3QgTmluZVBpZWNlSW1hZ2UmIG90aGVyKSBjb25zdCB7IHJldHVy
biBtX2RhdGEgIT0gb3RoZXIubV9kYXRhOyB9CkBAIC0xMzAsNiArMTMwLDkgQEAgcHVibGljOgog
ICAgIGNvbnN0IExlbmd0aEJveCYgYm9yZGVyU2xpY2VzKCkgY29uc3QgeyByZXR1cm4gbV9kYXRh
LT5ib3JkZXJTbGljZXM7IH0KICAgICB2b2lkIHNldEJvcmRlclNsaWNlcyhMZW5ndGhCb3ggc2xp
Y2VzKSB7IG1fZGF0YS5hY2Nlc3MoKS5ib3JkZXJTbGljZXMgPSBXVEZNb3ZlKHNsaWNlcyk7IH0K
IAorICAgIGJvb2wgb3ZlcnJpZGVzQm9yZGVyV2lkdGhzKCkgY29uc3QgeyByZXR1cm4gbV9kYXRh
LT5vdmVycmlkZXNCb3JkZXJXaWR0aHM7IH0KKyAgICB2b2lkIHNldE92ZXJyaWRlc0JvcmRlcldp
ZHRocyhib29sIHYpIHsgbV9kYXRhLmFjY2VzcygpLm92ZXJyaWRlc0JvcmRlcldpZHRocyA9IHY7
IH0KKwogICAgIGNvbnN0IExlbmd0aEJveCYgb3V0c2V0KCkgY29uc3QgeyByZXR1cm4gbV9kYXRh
LT5vdXRzZXQ7IH0KICAgICB2b2lkIHNldE91dHNldChMZW5ndGhCb3ggb3V0c2V0KSB7IG1fZGF0
YS5hY2Nlc3MoKS5vdXRzZXQgPSBXVEZNb3ZlKG91dHNldCk7IH0KIApAQCAtMTQ4LDYgKzE1MSw3
IEBAIHB1YmxpYzoKICAgICB2b2lkIGNvcHlCb3JkZXJTbGljZXNGcm9tKGNvbnN0IE5pbmVQaWVj
ZUltYWdlJiBvdGhlcikKICAgICB7CiAgICAgICAgIG1fZGF0YS5hY2Nlc3MoKS5ib3JkZXJTbGlj
ZXMgPSBvdGhlci5tX2RhdGEtPmJvcmRlclNsaWNlczsKKyAgICAgICAgbV9kYXRhLmFjY2Vzcygp
Lm92ZXJyaWRlc0JvcmRlcldpZHRocyA9IG90aGVyLm1fZGF0YS0+b3ZlcnJpZGVzQm9yZGVyV2lk
dGhzOwogICAgIH0KICAgICAKICAgICB2b2lkIGNvcHlPdXRzZXRGcm9tKGNvbnN0IE5pbmVQaWVj
ZUltYWdlJiBvdGhlcikKQEAgLTE4OCwxMyArMTkyLDE0IEBAIHB1YmxpYzoKIHByaXZhdGU6CiAg
ICAgc3RydWN0IERhdGEgOiBSZWZDb3VudGVkPERhdGE+IHsKICAgICAgICAgc3RhdGljIFJlZjxE
YXRhPiBjcmVhdGUoKTsKLSAgICAgICAgc3RhdGljIFJlZjxEYXRhPiBjcmVhdGUoUmVmUHRyPFN0
eWxlSW1hZ2U+JiYsIExlbmd0aEJveCBpbWFnZVNsaWNlcywgYm9vbCBmaWxsLCBMZW5ndGhCb3gg
Ym9yZGVyU2xpY2VzLCBMZW5ndGhCb3ggb3V0c2V0LCBOaW5lUGllY2VJbWFnZVJ1bGUgaG9yaXpv
bnRhbFJ1bGUsIE5pbmVQaWVjZUltYWdlUnVsZSB2ZXJ0aWNhbFJ1bGUpOworICAgICAgICBzdGF0
aWMgUmVmPERhdGE+IGNyZWF0ZShSZWZQdHI8U3R5bGVJbWFnZT4mJiwgTGVuZ3RoQm94IGltYWdl
U2xpY2VzLCBib29sIGZpbGwsIExlbmd0aEJveCBib3JkZXJTbGljZXMsIGJvb2wgb3ZlcnJpZGVz
Qm9yZGVyV2lkdGhzLCBMZW5ndGhCb3ggb3V0c2V0LCBOaW5lUGllY2VJbWFnZVJ1bGUgaG9yaXpv
bnRhbFJ1bGUsIE5pbmVQaWVjZUltYWdlUnVsZSB2ZXJ0aWNhbFJ1bGUpOwogICAgICAgICBSZWY8
RGF0YT4gY29weSgpIGNvbnN0OwogCiAgICAgICAgIGJvb2wgb3BlcmF0b3I9PShjb25zdCBEYXRh
JikgY29uc3Q7CiAgICAgICAgIGJvb2wgb3BlcmF0b3IhPShjb25zdCBEYXRhJiBvdGhlcikgY29u
c3QgeyByZXR1cm4gISgqdGhpcyA9PSBvdGhlcik7IH0KIAogICAgICAgICBib29sIGZpbGwgeyBm
YWxzZSB9OworICAgICAgICBib29sIG92ZXJyaWRlc0JvcmRlcldpZHRocyB7IGZhbHNlIH07CiAg
ICAgICAgIE5pbmVQaWVjZUltYWdlUnVsZSBob3Jpem9udGFsUnVsZSB7IE5pbmVQaWVjZUltYWdl
UnVsZTo6U3RyZXRjaCB9OwogICAgICAgICBOaW5lUGllY2VJbWFnZVJ1bGUgdmVydGljYWxSdWxl
IHsgTmluZVBpZWNlSW1hZ2VSdWxlOjpTdHJldGNoIH07CiAgICAgICAgIFJlZlB0cjxTdHlsZUlt
YWdlPiBpbWFnZTsKQEAgLTIwNCw3ICsyMDksNyBAQCBwcml2YXRlOgogCiAgICAgcHJpdmF0ZToK
ICAgICAgICAgRGF0YSgpOwotICAgICAgICBEYXRhKFJlZlB0cjxTdHlsZUltYWdlPiYmLCBMZW5n
dGhCb3ggaW1hZ2VTbGljZXMsIGJvb2wgZmlsbCwgTGVuZ3RoQm94IGJvcmRlclNsaWNlcywgTGVu
Z3RoQm94IG91dHNldCwgTmluZVBpZWNlSW1hZ2VSdWxlIGhvcml6b250YWxSdWxlLCBOaW5lUGll
Y2VJbWFnZVJ1bGUgdmVydGljYWxSdWxlKTsKKyAgICAgICAgRGF0YShSZWZQdHI8U3R5bGVJbWFn
ZT4mJiwgTGVuZ3RoQm94IGltYWdlU2xpY2VzLCBib29sIGZpbGwsIExlbmd0aEJveCBib3JkZXJT
bGljZXMsIGJvb2wgb3ZlcnJpZGVzQm9yZGVyV2lkdGhzLCBMZW5ndGhCb3ggb3V0c2V0LCBOaW5l
UGllY2VJbWFnZVJ1bGUgaG9yaXpvbnRhbFJ1bGUsIE5pbmVQaWVjZUltYWdlUnVsZSB2ZXJ0aWNh
bFJ1bGUpOwogICAgICAgICBEYXRhKGNvbnN0IERhdGEmKTsKICAgICB9OwogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuY3BwIGIvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmNwcAppbmRleCA3Nzk3MGY2ZTc1
OTc3NjIwNzRlMTlmNmY4MTk5NmM3ZWZhODE5NTY0Li5kYzg4MWU2M2I4NTE0MDM0YjNmZDRlNjgz
MDg1OGRiY2E5OGYxNzBmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5
bGUvUmVuZGVyU3R5bGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9S
ZW5kZXJTdHlsZS5jcHAKQEAgLTI0OTksNiArMjQ5OSwxMyBAQCB2b2lkIFJlbmRlclN0eWxlOjpz
ZXRCb3JkZXJJbWFnZVdpZHRoKExlbmd0aEJveCYmIHNsaWNlcykKICAgICBtX3N1cnJvdW5kRGF0
YS5hY2Nlc3MoKS5ib3JkZXIubV9pbWFnZS5zZXRCb3JkZXJTbGljZXMoV1RGTW92ZShzbGljZXMp
KTsKIH0KIAordm9pZCBSZW5kZXJTdHlsZTo6c2V0Qm9yZGVySW1hZ2VXaWR0aE92ZXJyaWRlc0Jv
cmRlcldpZHRocyhib29sIG92ZXJyaWRlc0JvcmRlcldpZHRocykKK3sKKyAgICBpZiAobV9zdXJy
b3VuZERhdGEtPmJvcmRlci5tX2ltYWdlLm92ZXJyaWRlc0JvcmRlcldpZHRocygpID09IG92ZXJy
aWRlc0JvcmRlcldpZHRocykKKyAgICAgICAgcmV0dXJuOworICAgIG1fc3Vycm91bmREYXRhLmFj
Y2VzcygpLmJvcmRlci5tX2ltYWdlLnNldE92ZXJyaWRlc0JvcmRlcldpZHRocyhvdmVycmlkZXNC
b3JkZXJXaWR0aHMpOworfQorCiB2b2lkIFJlbmRlclN0eWxlOjpzZXRCb3JkZXJJbWFnZU91dHNl
dChMZW5ndGhCb3gmJiBvdXRzZXQpCiB7CiAgICAgaWYgKG1fc3Vycm91bmREYXRhLT5ib3JkZXIu
bV9pbWFnZS5vdXRzZXQoKSA9PSBvdXRzZXQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9z
dHlsZS9SZW5kZXJTdHlsZS5oCmluZGV4IGU0YTg2ODhjOTdlOWQ3ODA5ZmIwNmNmYmFiNDU0NTAz
ODEzNDEyMTMuLmZkMzVhN2NlZTgwMGI3MWVmNDhmYTc1NjA0NjY0NjJjYzE4M2EyY2MgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oCkBAIC05MzQsNiAr
OTM0LDcgQEAgcHVibGljOgogICAgIHZvaWQgc2V0Qm9yZGVySW1hZ2VTbGljZUZpbGwoYm9vbCk7
CiAgICAgdm9pZCBzZXRCb3JkZXJJbWFnZVNsaWNlcyhMZW5ndGhCb3gmJik7CiAgICAgdm9pZCBz
ZXRCb3JkZXJJbWFnZVdpZHRoKExlbmd0aEJveCYmKTsKKyAgICB2b2lkIHNldEJvcmRlckltYWdl
V2lkdGhPdmVycmlkZXNCb3JkZXJXaWR0aHMoYm9vbCk7CiAgICAgdm9pZCBzZXRCb3JkZXJJbWFn
ZU91dHNldChMZW5ndGhCb3gmJik7CiAgICAgdm9pZCBzZXRCb3JkZXJJbWFnZUhvcml6b250YWxS
dWxlKE5pbmVQaWVjZUltYWdlUnVsZSk7CiAgICAgdm9pZCBzZXRCb3JkZXJJbWFnZVZlcnRpY2Fs
UnVsZShOaW5lUGllY2VJbWFnZVJ1bGUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3R5
bGUvUHJvcGVydHlDYXNjYWRlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1Byb3BlcnR5Q2Fz
Y2FkZS5jcHAKaW5kZXggOTBmZWQ2MTdhZjc1NmU3NzM4YmM5YjUzNWRkZGExMjhlZTBjMDEyZi4u
MWVlOTRiM2UyMjhhZTBjMDVlY2I3Njc4ZDM3ODExNTBkODE0NGJjNyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvc3R5bGUvUHJvcGVydHlDYXNjYWRlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9zdHlsZS9Qcm9wZXJ0eUNhc2NhZGUuY3BwCkBAIC00NywxMyArNDcsNiBAQCBzdGF0aWMgaW5s
aW5lIGJvb2wgc2hvdWxkQXBwbHlQcm9wZXJ0eUluUGFyc2VPcmRlcihDU1NQcm9wZXJ0eUlEIHBy
b3BlcnR5SUQpCiAgICAgY2FzZSBDU1NQcm9wZXJ0eUJhY2tncm91bmRPcmlnaW46CiAgICAgY2Fz
ZSBDU1NQcm9wZXJ0eVdlYmtpdEJhY2tncm91bmRTaXplOgogICAgIGNhc2UgQ1NTUHJvcGVydHlC
YWNrZ3JvdW5kU2l6ZToKLSAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0Qm9yZGVySW1hZ2U6Ci0g
ICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlckltYWdlOgotICAgIGNhc2UgQ1NTUHJvcGVydHlCb3Jk
ZXJJbWFnZVNsaWNlOgotICAgIGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJJbWFnZVNvdXJjZToKLSAg
ICBjYXNlIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VPdXRzZXQ6Ci0gICAgY2FzZSBDU1NQcm9wZXJ0
eUJvcmRlckltYWdlUmVwZWF0OgotICAgIGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJJbWFnZVdpZHRo
OgogICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRCb3hTaGFkb3c6CiAgICAgY2FzZSBDU1NQcm9w
ZXJ0eUJveFNoYWRvdzoKICAgICAgICAgcmV0dXJuIHRydWU7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9zdHlsZS9TdHlsZUJ1aWxkZXJDb252ZXJ0ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3N0
eWxlL1N0eWxlQnVpbGRlckNvbnZlcnRlci5oCmluZGV4IGFjYmJmNWY5YTdlMWM3MmQ5Y2NhYjg1
MDIzZDdlZmQ0ZDIxN2IyYTIuLjM0YWEzODVhZTA0OTcxYjMyMDA2ZTEwNjI0YjZkZDY0NGUzMDNk
YjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlQnVpbGRlckNvbnZlcnRl
ci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlQnVpbGRlckNvbnZlcnRlci5oCkBA
IC04NSw3ICs4NSw2IEBAIHB1YmxpYzoKICAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBUPiBzdGF0aWMg
VCBjb252ZXJ0TnVtYmVyKEJ1aWxkZXJTdGF0ZSYsIGNvbnN0IENTU1ZhbHVlJik7CiAgICAgdGVt
cGxhdGU8dHlwZW5hbWUgVD4gc3RhdGljIFQgY29udmVydE51bWJlck9yQXV0byhCdWlsZGVyU3Rh
dGUmLCBjb25zdCBDU1NWYWx1ZSYpOwogICAgIHN0YXRpYyBzaG9ydCBjb252ZXJ0V2Via2l0SHlw
aGVuYXRlTGltaXRMaW5lcyhCdWlsZGVyU3RhdGUmLCBjb25zdCBDU1NWYWx1ZSYpOwotICAgIHRl
bXBsYXRlPENTU1Byb3BlcnR5SUQ+IHN0YXRpYyBOaW5lUGllY2VJbWFnZSBjb252ZXJ0Qm9yZGVy
SW1hZ2UoQnVpbGRlclN0YXRlJiwgQ1NTVmFsdWUmKTsKICAgICB0ZW1wbGF0ZTxDU1NQcm9wZXJ0
eUlEPiBzdGF0aWMgTmluZVBpZWNlSW1hZ2UgY29udmVydEJvcmRlck1hc2soQnVpbGRlclN0YXRl
JiwgQ1NTVmFsdWUmKTsKICAgICB0ZW1wbGF0ZTxDU1NQcm9wZXJ0eUlEPiBzdGF0aWMgUmVmUHRy
PFN0eWxlSW1hZ2U+IGNvbnZlcnRTdHlsZUltYWdlKEJ1aWxkZXJTdGF0ZSYsIENTU1ZhbHVlJik7
CiAgICAgc3RhdGljIEltYWdlT3JpZW50YXRpb24gY29udmVydEltYWdlT3JpZW50YXRpb24oQnVp
bGRlclN0YXRlJiwgY29uc3QgQ1NTVmFsdWUmKTsKQEAgLTQ2NCwxOSArNDYzLDExIEBAIGlubGlu
ZSBzaG9ydCBCdWlsZGVyQ29udmVydGVyOjpjb252ZXJ0V2Via2l0SHlwaGVuYXRlTGltaXRMaW5l
cyhCdWlsZGVyU3RhdGUmLCBjCiAgICAgcmV0dXJuIHByaW1pdGl2ZVZhbHVlLnZhbHVlPHNob3J0
PihDU1NVbml0VHlwZTo6Q1NTX05VTUJFUik7CiB9CiAKLXRlbXBsYXRlPENTU1Byb3BlcnR5SUQg
cHJvcGVydHk+Ci1pbmxpbmUgTmluZVBpZWNlSW1hZ2UgQnVpbGRlckNvbnZlcnRlcjo6Y29udmVy
dEJvcmRlckltYWdlKEJ1aWxkZXJTdGF0ZSYgYnVpbGRlclN0YXRlLCBDU1NWYWx1ZSYgdmFsdWUp
Ci17Ci0gICAgTmluZVBpZWNlSW1hZ2UgaW1hZ2U7Ci0gICAgYnVpbGRlclN0YXRlLnN0eWxlTWFw
KCkubWFwTmluZVBpZWNlSW1hZ2UocHJvcGVydHksICZ2YWx1ZSwgaW1hZ2UpOwotICAgIHJldHVy
biBpbWFnZTsKLX0KLQogdGVtcGxhdGU8Q1NTUHJvcGVydHlJRCBwcm9wZXJ0eT4KIGlubGluZSBO
aW5lUGllY2VJbWFnZSBCdWlsZGVyQ29udmVydGVyOjpjb252ZXJ0Qm9yZGVyTWFzayhCdWlsZGVy
U3RhdGUmIGJ1aWxkZXJTdGF0ZSwgQ1NTVmFsdWUmIHZhbHVlKQogewogICAgIE5pbmVQaWVjZUlt
YWdlIGltYWdlKE5pbmVQaWVjZUltYWdlOjpUeXBlOjpNYXNrKTsKLSAgICBidWlsZGVyU3RhdGUu
c3R5bGVNYXAoKS5tYXBOaW5lUGllY2VJbWFnZShwcm9wZXJ0eSwgJnZhbHVlLCBpbWFnZSk7Cisg
ICAgYnVpbGRlclN0YXRlLnN0eWxlTWFwKCkubWFwTmluZVBpZWNlSW1hZ2UoJnZhbHVlLCBpbWFn
ZSk7CiAgICAgcmV0dXJuIGltYWdlOwogfQogCkBAIC04MDksNyArODAwLDcgQEAgaW5saW5lIFJl
ZlB0cjxTdHlsZVJlZmxlY3Rpb24+IEJ1aWxkZXJDb252ZXJ0ZXI6OmNvbnZlcnRSZWZsZWN0aW9u
KEJ1aWxkZXJTdGF0ZSYKICAgICByZWZsZWN0aW9uLT5zZXRPZmZzZXQocmVmbGVjdFZhbHVlLm9m
ZnNldCgpLmNvbnZlcnRUb0xlbmd0aDxGaXhlZEludGVnZXJDb252ZXJzaW9uIHwgUGVyY2VudENv
bnZlcnNpb24gfCBDYWxjdWxhdGVkQ29udmVyc2lvbj4oYnVpbGRlclN0YXRlLmNzc1RvTGVuZ3Ro
Q29udmVyc2lvbkRhdGEoKSkpOwogCiAgICAgTmluZVBpZWNlSW1hZ2UgbWFzayhOaW5lUGllY2VJ
bWFnZTo6VHlwZTo6TWFzayk7Ci0gICAgYnVpbGRlclN0YXRlLnN0eWxlTWFwKCkubWFwTmluZVBp
ZWNlSW1hZ2UoQ1NTUHJvcGVydHlXZWJraXRCb3hSZWZsZWN0LCByZWZsZWN0VmFsdWUubWFzaygp
LCBtYXNrKTsKKyAgICBidWlsZGVyU3RhdGUuc3R5bGVNYXAoKS5tYXBOaW5lUGllY2VJbWFnZShy
ZWZsZWN0VmFsdWUubWFzaygpLCBtYXNrKTsKICAgICByZWZsZWN0aW9uLT5zZXRNYXNrKG1hc2sp
OwogCiAgICAgcmV0dXJuIHJlZmxlY3Rpb247CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9z
dHlsZS9TdHlsZUJ1aWxkZXJDdXN0b20uaCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlQnVp
bGRlckN1c3RvbS5oCmluZGV4IGU3YWFkZGQwNGJkMjFjYjY2MDczYjMxZjI5MWFkYjc3YjgyYzAx
MjUuLmVmYTczOTc5NmZjMzRjZTJiZDAwMTY0ZDI3OTgyY2M5OGI5ZTIyOWYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlQnVpbGRlckN1c3RvbS5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3N0eWxlL1N0eWxlQnVpbGRlckN1c3RvbS5oCkBAIC01NTIsNiArNTUyLDcgQEAgcHVi
bGljOgogICAgICAgICAgICAgTGVuZ3RoQm94IGxlbmd0aEJveChMZW5ndGgoMSwgTGVuZ3RoVHlw
ZTo6UmVsYXRpdmUpLCBMZW5ndGgoMSwgTGVuZ3RoVHlwZTo6UmVsYXRpdmUpLCBMZW5ndGgoMSwg
TGVuZ3RoVHlwZTo6UmVsYXRpdmUpLCBMZW5ndGgoMSwgTGVuZ3RoVHlwZTo6UmVsYXRpdmUpKTsK
ICAgICAgICAgICAgIC8vIE1hc2tzIGhhdmUgYSBkaWZmZXJlbnQgaW5pdGlhbCB2YWx1ZSBmb3Ig
d2lkdGhzLiBUaGV5IHVzZSBhbiAnYXV0bycgdmFsdWUgcmF0aGVyIHRoYW4gdHJ5aW5nIHRvIGZp
dCB0byB0aGUgYm9yZGVyLgogICAgICAgICAgICAgaW1hZ2Uuc2V0Qm9yZGVyU2xpY2VzKHR5cGUg
PT0gQm9yZGVySW1hZ2UgPyBsZW5ndGhCb3ggOiBMZW5ndGhCb3goKSk7CisgICAgICAgICAgICBp
bWFnZS5zZXRPdmVycmlkZXNCb3JkZXJXaWR0aHMoZmFsc2UpOwogICAgICAgICAgICAgYnJlYWs7
CiAgICAgICAgIH0KICAgICAgICAgc2V0VmFsdWUoYnVpbGRlclN0YXRlLnN0eWxlKCksIGltYWdl
KTsKQEAgLTU3MSw3ICs1NzIsNyBAQCBwdWJsaWM6CiAgICAgICAgICAgICBidWlsZGVyU3RhdGUu
c3R5bGVNYXAoKS5tYXBOaW5lUGllY2VJbWFnZVNsaWNlKHZhbHVlLCBpbWFnZSk7CiAgICAgICAg
ICAgICBicmVhazsKICAgICAgICAgY2FzZSBXaWR0aDoKLSAgICAgICAgICAgIGltYWdlLnNldEJv
cmRlclNsaWNlcyhidWlsZGVyU3RhdGUuc3R5bGVNYXAoKS5tYXBOaW5lUGllY2VJbWFnZVF1YWQo
dmFsdWUpKTsKKyAgICAgICAgICAgIGJ1aWxkZXJTdGF0ZS5zdHlsZU1hcCgpLm1hcE5pbmVQaWVj
ZUltYWdlV2lkdGgodmFsdWUsIGltYWdlKTsKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9
CiAgICAgICAgIHNldFZhbHVlKGJ1aWxkZXJTdGF0ZS5zdHlsZSgpLCBpbWFnZSk7CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXgg
YTQ4NzdkNjk0NDMxOThjYTgwNGVkOTFmZjM5NWExNjk0ZjJhMjYzNi4uOTU4NjdjNzc4YzA2NDll
NjZkODJlM2FlOTVmNjFiNGI3YzEwMTFkYSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI5IEBACisyMDIyLTA0
LTAxICBPcmlvbCBCcnVmYXUgIDxvYnJ1ZmF1QGlnYWxpYS5jb20+CisKKyAgICAgICAgW2Nzc10g
VHVybiAtd2Via2l0LWJvcmRlci1pbWFnZSBpbnRvIGEgc2hvcnRoYW5kCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzc0ODcKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBVcGRhdGUgdGVzdHMgdG8gdGFrZSBp
bnRvIGFjY291bnQgdGhhdCAnLXdlYmtpdC1ib3JkZXItaW1hZ2UnIGlzIGEgc2hvcnRoYW5kLgor
CisgICAgICAgICogZmFzdC9jc3MvYm9yZGVyLWltYWdlLXN0eWxlLWxlbmd0aC1leHBlY3RlZC50
eHQ6CisgICAgICAgICogZmFzdC9jc3MvYm9yZGVyLWltYWdlLXN0eWxlLWxlbmd0aC5odG1sOgor
ICAgICAgICAqIGZhc3QvY3NzL2dldENvbXB1dGVkU3R5bGUvY29tcHV0ZWQtc3R5bGUtZXhwZWN0
ZWQudHh0OgorICAgICAgICAqIGZhc3QvY3NzL2dldENvbXB1dGVkU3R5bGUvY29tcHV0ZWQtc3R5
bGUtd2l0aG91dC1yZW5kZXJlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9jc3MvZ2V0
Q29tcHV0ZWRTdHlsZS9yZXNvdXJjZXMvcHJvcGVydHktbmFtZXMuanM6CisgICAgICAgICogZmFz
dC9jc3MvaW1hZ2Utc2V0LXBhcnNpbmctZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3QvY3Nz
L2ltYWdlLXNldC1wYXJzaW5nLmh0bWw6CisgICAgICAgICogZmFzdC9jc3MvdXJpLXRva2VuLXBh
cnNpbmctZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3QvY3NzL3VyaS10b2tlbi1wYXJzaW5n
Lmh0bWw6CisgICAgICAgICogcGxhdGZvcm0vZ3RrL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL2Nzcy1jYXNjYWRlL2FsbC1wcm9wLWluaXRpYWwteG1sLWV4cGVjdGVkLnR4dDoK
KyAgICAgICAgKiBwbGF0Zm9ybS9ndGsvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9j
c3MvY3Nzb20vZ2V0Q29tcHV0ZWRTdHlsZS1kZXRhY2hlZC1zdWJ0cmVlLWV4cGVjdGVkLnR4dDoK
KyAgICAgICAgKiBwbGF0Zm9ybS9pb3MvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9j
c3MvY3NzLWNhc2NhZGUvYWxsLXByb3AtaW5pdGlhbC14bWwtZXhwZWN0ZWQudHh0OgorICAgICAg
ICAqIHBsYXRmb3JtL2lvcy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3Nv
bS9nZXRDb21wdXRlZFN0eWxlLWRldGFjaGVkLXN1YnRyZWUtZXhwZWN0ZWQudHh0OgorICAgICAg
ICAqIHBsYXRmb3JtL3dwZS9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3Mt
Y2FzY2FkZS9hbGwtcHJvcC1pbml0aWFsLXhtbC1leHBlY3RlZC50eHQ6CisgICAgICAgICogcGxh
dGZvcm0vd3BlL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dldENv
bXB1dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS1leHBlY3RlZC50eHQ6CisgICAgICAgICogc3Zn
L2Nzcy9nZXRDb21wdXRlZFN0eWxlLWJhc2ljLWV4cGVjdGVkLnR4dDoKKwogMjAyMi0wMy0yMyAg
WmlyYW4gU3VuICA8enN1bkBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtJbnB1dEVsZW1lbnRdIEFk
ZCBIVE1MSW5wdXRFbGVtZW50OjpzaG93UGlja2VyKCkgbWV0aG9kCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L0NoYW5nZUxvZwppbmRleCBhZDkxZjg4OTk1MmZjZWQ4ZGZiYjY5YTlhNTRiZDMzNDAzZmI1NTVm
Li45YzdmMGJiMGVlNTlmNGM1N2Y3OTY1MGZkY2NkYWY2ZDFjNmFmYzI4IDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAyMi0wNC0wMSAgT3Jpb2wgQnJ1
ZmF1ICA8b2JydWZhdUBpZ2FsaWEuY29tPgorCisgICAgICAgIFtjc3NdIFR1cm4gLXdlYmtpdC1i
b3JkZXItaW1hZ2UgaW50byBhIHNob3J0aGFuZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM3NDg3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgVXBkYXRlIHRlc3RzIHRvIHRha2UgaW50byBhY2NvdW50IHRo
YXQgJy13ZWJraXQtYm9yZGVyLWltYWdlJyBpcyBhIHNob3J0aGFuZC4KKworICAgICAgICAqIHdl
Yi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNhc2NhZGUvYWxsLXByb3AtaW5pdGlhbC14bWwtZXhw
ZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nzb20vZ2V0Q29t
cHV0ZWRTdHlsZS1kZXRhY2hlZC1zdWJ0cmVlLWV4cGVjdGVkLnR4dDoKKwogMjAyMi0wMy0yMyAg
WmlyYW4gU3VuICA8enN1bkBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtJbnB1dEVsZW1lbnRdIEFk
ZCBIVE1MSW5wdXRFbGVtZW50OjpzaG93UGlja2VyKCkgbWV0aG9kCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mYXN0L2Nzcy9ib3JkZXItaW1hZ2Utc3R5bGUtbGVuZ3RoLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2Zhc3QvY3NzL2JvcmRlci1pbWFnZS1zdHlsZS1sZW5ndGgtZXhwZWN0ZWQu
dHh0CmluZGV4IDYyNmViZmI0ZjIxZjAyNDk5MTVjZGM3YjZmZDJhOTc1M2RiZTJhZmEuLjlkYzc2
YTE2NTBmMTA3ZTg0YzI3N2EyMzRiZjJlYTQwYzQwNDQ5ZDAgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2Zhc3QvY3NzL2JvcmRlci1pbWFnZS1zdHlsZS1sZW5ndGgtZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL2Zhc3QvY3NzL2JvcmRlci1pbWFnZS1zdHlsZS1sZW5ndGgtZXhwZWN0ZWQu
dHh0CkBAIC01LDcgKzUsNyBAQCBPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2Yg
IlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURQogCiBQQVNTIGUuc3R5
bGUubGVuZ3RoIGlzIDUKIFBBU1MgZS5zdHlsZS5sZW5ndGggaXMgMAotUEFTUyBlLnN0eWxlLmxl
bmd0aCBpcyAxCitQQVNTIGUuc3R5bGUubGVuZ3RoIGlzIDUKIFBBU1Mgc3VjY2Vzc2Z1bGx5UGFy
c2VkIGlzIHRydWUKIAogVEVTVCBDT01QTEVURQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFz
dC9jc3MvYm9yZGVyLWltYWdlLXN0eWxlLWxlbmd0aC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9j
c3MvYm9yZGVyLWltYWdlLXN0eWxlLWxlbmd0aC5odG1sCmluZGV4IDRlNDM2OTMwNDIxMDc3ZjAw
OGQ3Yzc4MTM4Yjc5Yjc2YzI3ODBjOGUuLmEyNzlmZGVjN2M4ZjIyODYzNzI5MTUzZThiNzZjNjA1
M2FiYmI2OTAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL2JvcmRlci1pbWFnZS1z
dHlsZS1sZW5ndGguaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9ib3JkZXItaW1hZ2Ut
c3R5bGUtbGVuZ3RoLmh0bWwKQEAgLTIwLDcgKzIwLDcgQEAgc2hvdWxkQmUoImUuc3R5bGUubGVu
Z3RoIiwgIjUiKTsKIGUuc3R5bGUuYm9yZGVySW1hZ2UgPSAiIjsKIHNob3VsZEJlKCJlLnN0eWxl
Lmxlbmd0aCIsICIwIik7CiBlLnN0eWxlLndlYmtpdEJvcmRlckltYWdlID0gInVybChkdW1teTov
L3Rlc3QucG5nKSAwIDcgMCAxMyAvIDAgNyAwIDEzIHN0cmV0Y2ggc3RyZXRjaCI7Ci1zaG91bGRC
ZSgiZS5zdHlsZS5sZW5ndGgiLCAiMSIpOworc2hvdWxkQmUoImUuc3R5bGUubGVuZ3RoIiwgIjUi
KTsKIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQodGVzdENvbnRhaW5lcik7CiAKIDwvc2NyaXB0
PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS9jb21w
dXRlZC1zdHlsZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9nZXRDb21wdXRl
ZFN0eWxlL2NvbXB1dGVkLXN0eWxlLWV4cGVjdGVkLnR4dAppbmRleCA2ZThlYzNkODVjZDFlYzkw
NzljNGMwMTFlMTkzYmM2YjRkMTc2MzRlLi44NDY4ZDE2M2UxNGI3MTk1YmJiNmZkYmYzMWRhMDU3
MTAxMWM5ZTdjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9nZXRDb21wdXRlZFN0
eWxlL2NvbXB1dGVkLXN0eWxlLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Nz
cy9nZXRDb21wdXRlZFN0eWxlL2NvbXB1dGVkLXN0eWxlLWV4cGVjdGVkLnR4dApAQCAtMjEwLDcg
KzIxMCw2IEBAIHpvb206IDE7CiAtd2Via2l0LWJhY2tncm91bmQtb3JpZ2luOiBwYWRkaW5nLWJv
eDsKIC13ZWJraXQtYmFja2dyb3VuZC1zaXplOiBhdXRvOwogLXdlYmtpdC1ib3JkZXItaG9yaXpv
bnRhbC1zcGFjaW5nOiAwcHg7Ci0td2Via2l0LWJvcmRlci1pbWFnZTogbm9uZTsKIC13ZWJraXQt
Ym9yZGVyLXZlcnRpY2FsLXNwYWNpbmc6IDBweDsKIC13ZWJraXQtYm94LWFsaWduOiBzdHJldGNo
OwogLXdlYmtpdC1ib3gtZGVjb3JhdGlvbi1icmVhazogc2xpY2U7CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mYXN0L2Nzcy9nZXRDb21wdXRlZFN0eWxlL2NvbXB1dGVkLXN0eWxlLXdpdGhvdXQt
cmVuZGVyZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvZ2V0Q29tcHV0ZWRT
dHlsZS9jb21wdXRlZC1zdHlsZS13aXRob3V0LXJlbmRlcmVyLWV4cGVjdGVkLnR4dAppbmRleCAw
OWVlMDUyZThlYTBkODQ0OGY3NjA4NjYzYmNmNjhiYjVhMDU1OTZlLi5jN2YxYzk3MjIyYmIwMzFi
MWMxY2Y1MWM3M2ZjODFhMzk1NmRjZTdlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Nz
cy9nZXRDb21wdXRlZFN0eWxlL2NvbXB1dGVkLXN0eWxlLXdpdGhvdXQtcmVuZGVyZXItZXhwZWN0
ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL2dldENvbXB1dGVkU3R5bGUvY29tcHV0
ZWQtc3R5bGUtd2l0aG91dC1yZW5kZXJlci1leHBlY3RlZC50eHQKQEAgLTIwOSw3ICsyMDksNiBA
QCB6b29tOiAxCiAtd2Via2l0LWJhY2tncm91bmQtb3JpZ2luOiBwYWRkaW5nLWJveAogLXdlYmtp
dC1iYWNrZ3JvdW5kLXNpemU6IGF1dG8KIC13ZWJraXQtYm9yZGVyLWhvcml6b250YWwtc3BhY2lu
ZzogMHB4Ci0td2Via2l0LWJvcmRlci1pbWFnZTogbm9uZQogLXdlYmtpdC1ib3JkZXItdmVydGlj
YWwtc3BhY2luZzogMHB4CiAtd2Via2l0LWJveC1hbGlnbjogc3RyZXRjaAogLXdlYmtpdC1ib3gt
ZGVjb3JhdGlvbi1icmVhazogc2xpY2UKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY3Nz
L2dldENvbXB1dGVkU3R5bGUvcmVzb3VyY2VzL3Byb3BlcnR5LW5hbWVzLmpzIGIvTGF5b3V0VGVz
dHMvZmFzdC9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS9yZXNvdXJjZXMvcHJvcGVydHktbmFtZXMuanMK
aW5kZXggZWIzNGZkZTYxYzZjODNkNzczM2EzZDM2NWJiYTE4MDFhOWFhNjA5NC4uZjFmZjhmNDA2
YjZjOTY4YmU2MjU0YmNmZDdjZjQ4NzU3MmUzNTgzZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
ZmFzdC9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS9yZXNvdXJjZXMvcHJvcGVydHktbmFtZXMuanMKKysr
IGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS9yZXNvdXJjZXMvcHJvcGVy
dHktbmFtZXMuanMKQEAgLTE3LDcgKzE3LDYgQEAgdmFyIHByb3BlcnRpZXNUb1Rlc3QgPSB7CiAg
ICAgIi13ZWJraXQtYmFja2dyb3VuZC1vcmlnaW4iOiB0cnVlLAogICAgICItd2Via2l0LWJhY2tn
cm91bmQtc2l6ZSI6IHRydWUsCiAgICAgIi13ZWJraXQtYm9yZGVyLWhvcml6b250YWwtc3BhY2lu
ZyI6IHRydWUsCi0gICAgIi13ZWJraXQtYm9yZGVyLWltYWdlIjogdHJ1ZSwKICAgICAiLXdlYmtp
dC1ib3JkZXItdmVydGljYWwtc3BhY2luZyI6IHRydWUsCiAgICAgIi13ZWJraXQtYm94LWFsaWdu
IjogdHJ1ZSwKICAgICAiLXdlYmtpdC1ib3gtZGVjb3JhdGlvbi1icmVhayI6IHRydWUsCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9pbWFnZS1zZXQtcGFyc2luZy1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9pbWFnZS1zZXQtcGFyc2luZy1leHBlY3RlZC50eHQK
aW5kZXggMzBhYTYxOTU5Yzg1YWU4MjNkY2QxZjVlODgzYTQ4NjY5ZDk0ODBmZC4uZDlhZDEwZmM0
NWQzN2UzZGViZGZiZjk0NDBhNzA1ZDhjOTNjMTI0MSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
ZmFzdC9jc3MvaW1hZ2Utc2V0LXBhcnNpbmctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3Rz
L2Zhc3QvY3NzL2ltYWdlLXNldC1wYXJzaW5nLWV4cGVjdGVkLnR4dApAQCAtODAsNyArODAsNyBA
QCBQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMXgnCiBQQVNTIHN1YlJ1bGUgaXMgJ2InCiBQQVNT
IHN1YlJ1bGUuY3NzVGV4dCBpcyAnMngnCiAKLVNpbmdsZSB2YWx1ZSBmb3IgYm9yZGVyLWltYWdl
IDogdXJsKCcjYScpIDF4CitTaW5nbGUgdmFsdWUgZm9yIGJvcmRlci1pbWFnZS1zb3VyY2UgOiB1
cmwoJyNhJykgMXgKIFBBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAnQ1NTVmFs
dWVMaXN0JwogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuX19wcm90b19fKSBpcyAn
Q1NTVmFsdWVMaXN0JwogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuY29uc3RydWN0
b3IpIGlzICdGdW5jdGlvbicKQEAgLTg4LDcgKzg4LDcgQEAgUEFTUyBpbWFnZVNldFJ1bGUubGVu
Z3RoIGlzIDIKIFBBU1Mgc3ViUnVsZSBpcyAnYScKIFBBU1Mgc3ViUnVsZS5jc3NUZXh0IGlzICcx
eCcKIAotTXVsdGlwbGUgdmFsdWVzIGZvciBib3JkZXItaW1hZ2UgOiB1cmwoJyNhJykgMXgsIHVy
bCgnI2InKSAyeAorTXVsdGlwbGUgdmFsdWVzIGZvciBib3JkZXItaW1hZ2Utc291cmNlIDogdXJs
KCcjYScpIDF4LCB1cmwoJyNiJykgMngKIFBBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxl
KSBpcyAnQ1NTVmFsdWVMaXN0JwogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuX19w
cm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0JwogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1
bGUuY29uc3RydWN0b3IpIGlzICdGdW5jdGlvbicKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zh
c3QvY3NzL2ltYWdlLXNldC1wYXJzaW5nLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9pbWFn
ZS1zZXQtcGFyc2luZy5odG1sCmluZGV4IGM3YjhmMjg5NTAzYzdhMjYyMmRmNGNhMzk5ZTQzNTE2
OWY1ODBkNTQuLjhiODE3NWNmNDkyZjA2NjA5ZjM4NDRiNDY4NTdkNTNkMzZjMmI2MzEgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL2ltYWdlLXNldC1wYXJzaW5nLmh0bWwKKysrIGIv
TGF5b3V0VGVzdHMvZmFzdC9jc3MvaW1hZ2Utc2V0LXBhcnNpbmcuaHRtbApAQCAtMTA3LDEzICsx
MDcsMTMgQEAgdGVzdEltYWdlU2V0UnVsZSgiTXVsdGlwbGUgdmFsdWVzIGZvciBjb250ZW50IiwK
ICAgICAgICAgICAgICAgICAidXJsKCcjYScpIDF4LCB1cmwoJyNiJykgMngiLCA0LAogICAgICAg
ICAgICAgICAgIFsiYSIsICIxeCIsICJiIiwgIjJ4Il0pOwogCi10ZXN0SW1hZ2VTZXRSdWxlKCJT
aW5nbGUgdmFsdWUgZm9yIGJvcmRlci1pbWFnZSIsCi0gICAgICAgICAgICAgICAgIi13ZWJraXQt
Ym9yZGVyLWltYWdlIiwKK3Rlc3RJbWFnZVNldFJ1bGUoIlNpbmdsZSB2YWx1ZSBmb3IgYm9yZGVy
LWltYWdlLXNvdXJjZSIsCisgICAgICAgICAgICAgICAgImJvcmRlci1pbWFnZS1zb3VyY2UiLAog
ICAgICAgICAgICAgICAgICJ1cmwoJyNhJykgMXgiLCAyLAogICAgICAgICAgICAgICAgIFsiYSIs
ICIxeCJdKTsKIAotdGVzdEltYWdlU2V0UnVsZSgiTXVsdGlwbGUgdmFsdWVzIGZvciBib3JkZXIt
aW1hZ2UiLAotICAgICAgICAgICAgICAgICItd2Via2l0LWJvcmRlci1pbWFnZSIsCit0ZXN0SW1h
Z2VTZXRSdWxlKCJNdWx0aXBsZSB2YWx1ZXMgZm9yIGJvcmRlci1pbWFnZS1zb3VyY2UiLAorICAg
ICAgICAgICAgICAgICJib3JkZXItaW1hZ2Utc291cmNlIiwKICAgICAgICAgICAgICAgICAidXJs
KCcjYScpIDF4LCB1cmwoJyNiJykgMngiLCA0LAogICAgICAgICAgICAgICAgIFsiYSIsICIxeCIs
ICJiIiwgIjJ4Il0pOwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy91cmktdG9r
ZW4tcGFyc2luZy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy91cmktdG9rZW4t
cGFyc2luZy1leHBlY3RlZC50eHQKaW5kZXggN2U2ZDYxZGJiZTYxOTdmMGJiNThhY2U2NTdkNGY0
NjkwMWY1Mzg0ZS4uODc1YThhOTZlMGU1MzYzMjg0MTRjYjdlMGY0NTE0MDM1OTM2MmM0MCAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdXJpLXRva2VuLXBhcnNpbmctZXhwZWN0ZWQu
dHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3VyaS10b2tlbi1wYXJzaW5nLWV4cGVjdGVk
LnR4dApAQCAtMjIsNyArMjIsNyBAQCBSdWxlcyBmcm9tIHRoZSBzdHlsZXNoZWV0OgogI3IgeyBs
aXN0LXN0eWxlLWltYWdlOiB1cmwoInVybChyKSIpOyB9CiAjcyB7IGJhY2tncm91bmQtaW1hZ2U6
IHVybCgidXJsKHMpIik7IH0KICN0IHsgbWFzay1pbWFnZTogdXJsKCJ1cmwodCkiKTsgfQotI3Ug
eyAtd2Via2l0LWJvcmRlci1pbWFnZTogdXJsKCJ1cmwodSkiKSAxIDIgMyA0IGZpbGwgc3RyZXRj
aCByb3VuZDsgfQorI3UgeyBib3JkZXItaW1hZ2U6IHVybCgidXJsKHUpIikgMSAyIDMgNCBmaWxs
IHN0cmV0Y2ggcm91bmQ7IH0KICN2IHsgLXdlYmtpdC1tYXNrLWJveC1pbWFnZTogdXJsKCJ1cmwo
dikiKSAxIDIgMyA0IGZpbGwgc3RyZXRjaCByb3VuZDsgfQogI3cgeyBjb250ZW50OiB1cmwoIndc
ZCB3Iik7IH0KICN4IHsgY29udGVudDogdXJsKCIgeCB4XDkgeCAiKTsgfQpAQCAtNDcsNyArNDcs
NyBAQCBFeHBlY3RlZCByZXN1bHQ6CiAjciB7IGxpc3Qtc3R5bGUtaW1hZ2U6IHVybCgidXJsKHIp
Iik7IH0KICNzIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCJ1cmwocykiKTsgfQogI3QgeyBtYXNr
LWltYWdlOiB1cmwoInVybCh0KSIpOyB9Ci0jdSB7IC13ZWJraXQtYm9yZGVyLWltYWdlOiB1cmwo
InVybCh1KSIpIDEgMiAzIDQgZmlsbCBzdHJldGNoIHJvdW5kOyB9CisjdSB7IGJvcmRlci1pbWFn
ZTogdXJsKCJ1cmwodSkiKSAxIDIgMyA0IGZpbGwgc3RyZXRjaCByb3VuZDsgfQogI3YgeyAtd2Vi
a2l0LW1hc2stYm94LWltYWdlOiB1cmwoInVybCh2KSIpIDEgMiAzIDQgZmlsbCBzdHJldGNoIHJv
dW5kOyB9CiAjdyB7IGNvbnRlbnQ6IHVybCgid1xkIHciKTsgfQogI3ggeyBjb250ZW50OiB1cmwo
IiB4IHhcOSB4ICIpOyB9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy91cmktdG9r
ZW4tcGFyc2luZy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdXJpLXRva2VuLXBhcnNpbmcu
aHRtbAppbmRleCBlMTQ5NmIxYTRmYjQ2ODE3MTY4MzJkY2U2MTdkYzQ1NWE2ZDMxODkwLi5kYTdi
NzA3NGNkZTdlNzc3MDQ1OGJiMDkzZTYzYjEyNDM0NDZhMTU4IDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9mYXN0L2Nzcy91cmktdG9rZW4tcGFyc2luZy5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zh
c3QvY3NzL3VyaS10b2tlbi1wYXJzaW5nLmh0bWwKQEAgLTkwLDcgKzkwLDcgQEAgZnVuY3Rpb24g
cnVuVGVzdCgpCiAjciB7IGxpc3Qtc3R5bGUtaW1hZ2U6IHVybCgidXJsKHIpIik7IH0KICNzIHsg
YmFja2dyb3VuZC1pbWFnZTogdXJsKCJ1cmwocykiKTsgfQogI3QgeyBtYXNrLWltYWdlOiB1cmwo
InVybCh0KSIpOyB9Ci0jdSB7IC13ZWJraXQtYm9yZGVyLWltYWdlOiB1cmwoInVybCh1KSIpIDEg
MiAzIDQgZmlsbCBzdHJldGNoIHJvdW5kOyB9CisjdSB7IGJvcmRlci1pbWFnZTogdXJsKCJ1cmwo
dSkiKSAxIDIgMyA0IGZpbGwgc3RyZXRjaCByb3VuZDsgfQogI3YgeyAtd2Via2l0LW1hc2stYm94
LWltYWdlOiB1cmwoInVybCh2KSIpIDEgMiAzIDQgZmlsbCBzdHJldGNoIHJvdW5kOyB9CiAjdyB7
IGNvbnRlbnQ6IHVybCgid1xkIHciKTsgfQogI3ggeyBjb250ZW50OiB1cmwoIiB4IHhcOSB4ICIp
OyB9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2Nzcy9jc3MtY2FzY2FkZS9hbGwtcHJvcC1pbml0aWFsLXhtbC1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY2FzY2Fk
ZS9hbGwtcHJvcC1pbml0aWFsLXhtbC1leHBlY3RlZC50eHQKaW5kZXggOWIyNTQ3MTQyZDg1NWIx
ZDM4ZGUwNDAxM2FmYWQwMDMyZjBkNWY5Ni4uMGY3NzgxYjBlYWVlNjU3Mzc2NTVjYTFmNTdlYzEw
NTI1NmY0MWJjNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9jc3MvY3NzLWNhc2NhZGUvYWxsLXByb3AtaW5pdGlhbC14bWwtZXhwZWN0ZWQu
dHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3Nz
L2Nzcy1jYXNjYWRlL2FsbC1wcm9wLWluaXRpYWwteG1sLWV4cGVjdGVkLnR4dApAQCAtMzQxLDcg
KzM0MSw2IEBAIFBBU1MgLXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXAKIFBBU1MgLXdlYmtpdC1iYWNr
Z3JvdW5kLW9yaWdpbgogUEFTUyAtd2Via2l0LWJhY2tncm91bmQtc2l6ZQogUEFTUyAtd2Via2l0
LWJvcmRlci1ob3Jpem9udGFsLXNwYWNpbmcKLVBBU1MgLXdlYmtpdC1ib3JkZXItaW1hZ2UKIFBB
U1MgLXdlYmtpdC1ib3JkZXItdmVydGljYWwtc3BhY2luZwogUEFTUyAtd2Via2l0LWJveC1hbGln
bgogUEFTUyAtd2Via2l0LWJveC1kZWNvcmF0aW9uLWJyZWFrCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS9nZXRDb21wdXRl
ZFN0eWxlLWRldGFjaGVkLXN1YnRyZWUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nzb20vZ2V0Q29tcHV0ZWRTdHlsZS1kZXRh
Y2hlZC1zdWJ0cmVlLWV4cGVjdGVkLnR4dAppbmRleCA5YzZjMmQ2OTQ5NmE5N2Y1ZGVhZDcwYTJj
MGFhNzBiMjY4ZGU4M2VmLi5hZmUzZGRjMjIwMDBhMGU3NzQzOGFmYjJjZmZkMzlmYTc0ZmQ0ZGY4
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2Nzcy9jc3NvbS9nZXRDb21wdXRlZFN0eWxlLWRldGFjaGVkLXN1YnRyZWUtZXhwZWN0ZWQudHh0
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nz
c29tL2dldENvbXB1dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS1leHBlY3RlZC50eHQKQEAgLTEs
OCArMSw4IEBACiAKIFBBU1MgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBk
ZXRhY2hlZCBlbGVtZW50Ci1GQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBm
b3IgZWxlbWVudCBpbiBub24tcmVuZGVyZWQgaWZyYW1lIChkaXNwbGF5OiBub25lKSBhc3NlcnRf
ZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk3Ci1GQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0
dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBpbiBub24tcmVuZGVyZWQgaWZyYW1lIChkaXNwbGF5
OiBub25lKSBmcm9tIGlmcmFtZSdzIHdpbmRvdyBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1
dCBnb3QgMzk3Ci1GQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxl
bWVudCBvdXRzaWRlIHRoZSBmbGF0IHRyZWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQg
Z290IDM5NwotRkFJTCBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIGRlc2Nl
bmRhbnQgb3V0c2lkZSB0aGUgZmxhdCB0cmVlIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0
IGdvdCAzOTcKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVt
ZW50IGluIG5vbi1yZW5kZXJlZCBpZnJhbWUgKGRpc3BsYXk6IG5vbmUpIGFzc2VydF9lcXVhbHM6
IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTYKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5v
IHN0eWxlIGZvciBlbGVtZW50IGluIG5vbi1yZW5kZXJlZCBpZnJhbWUgKGRpc3BsYXk6IG5vbmUp
IGZyb20gaWZyYW1lJ3Mgd2luZG93IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAz
OTYKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50IG91
dHNpZGUgdGhlIGZsYXQgdHJlZSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk2
CitGQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZGVzY2VuZGFudCBv
dXRzaWRlIHRoZSBmbGF0IHRyZWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDM5
NgogUEFTUyBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIHNoYWRvdyB0cmVl
IG91dHNpZGUgb2YgZmxhdHRlbmVkIHRyZWUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vZ3RrL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jYXNjYWRl
L2FsbC1wcm9wLWluaXRpYWwteG1sLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3Jt
L2d0ay9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY2FzY2FkZS9hbGwt
cHJvcC1pbml0aWFsLXhtbC1leHBlY3RlZC50eHQKaW5kZXggN2IxYjNjNjg0NGM0NDk3MjE0M2Zh
NjAzMzcxYWIzMDU5Y2IyMDc3Zi4uYTI2MTM1MDU1MGQ4Yjg3ZTM2YzJjZGZjOWFjYmRiMWUxMTVj
N2M4ZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jYXNjYWRlL2FsbC1wcm9wLWluaXRpYWwteG1sLWV4
cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNhc2NhZGUvYWxsLXByb3AtaW5pdGlhbC14bWwtZXhw
ZWN0ZWQudHh0CkBAIC0zMzksNyArMzM5LDYgQEAgUEFTUyAtd2Via2l0LWJhY2tncm91bmQtY2xp
cAogUEFTUyAtd2Via2l0LWJhY2tncm91bmQtb3JpZ2luCiBQQVNTIC13ZWJraXQtYmFja2dyb3Vu
ZC1zaXplCiBQQVNTIC13ZWJraXQtYm9yZGVyLWhvcml6b250YWwtc3BhY2luZwotUEFTUyAtd2Vi
a2l0LWJvcmRlci1pbWFnZQogUEFTUyAtd2Via2l0LWJvcmRlci12ZXJ0aWNhbC1zcGFjaW5nCiBQ
QVNTIC13ZWJraXQtYm94LWFsaWduCiBQQVNTIC13ZWJraXQtYm94LWRlY29yYXRpb24tYnJlYWsK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS9nZXRDb21wdXRlZFN0eWxlLWRldGFjaGVkLXN1YnRyZWUt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dldENvbXB1dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJl
ZS1leHBlY3RlZC50eHQKaW5kZXggYTVlZWE2Yzg2OGIxNGIxMTRjOWMyNWMzZDM1MzFiZmY5Yzhh
NTE5ZS4uNjgzN2VhMjZmZmRkODc0YTllY2UyMjQ1OTlkYzlkNThlMDg2ZGJjNCAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvY3NzL2Nzc29tL2dldENvbXB1dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS1leHBlY3RlZC50
eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvY3NzL2Nzc29tL2dldENvbXB1dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS1leHBl
Y3RlZC50eHQKQEAgLTEsOCArMSw4IEBACiAKIFBBU1MgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5z
IG5vIHN0eWxlIGZvciBkZXRhY2hlZCBlbGVtZW50Ci1GQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0
dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBpbiBub24tcmVuZGVyZWQgaWZyYW1lIChkaXNwbGF5
OiBub25lKSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk1Ci1GQUlMIGdldENv
bXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBpbiBub24tcmVuZGVyZWQg
aWZyYW1lIChkaXNwbGF5OiBub25lKSBmcm9tIGlmcmFtZSdzIHdpbmRvdyBhc3NlcnRfZXF1YWxz
OiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk1Ci1GQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBu
byBzdHlsZSBmb3IgZWxlbWVudCBvdXRzaWRlIHRoZSBmbGF0IHRyZWUgYXNzZXJ0X2VxdWFsczog
ZXhwZWN0ZWQgMCBidXQgZ290IDM5NQotRkFJTCBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8g
c3R5bGUgZm9yIGRlc2NlbmRhbnQgb3V0c2lkZSB0aGUgZmxhdCB0cmVlIGFzc2VydF9lcXVhbHM6
IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTUKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5v
IHN0eWxlIGZvciBlbGVtZW50IGluIG5vbi1yZW5kZXJlZCBpZnJhbWUgKGRpc3BsYXk6IG5vbmUp
IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTQKK0ZBSUwgZ2V0Q29tcHV0ZWRT
dHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50IGluIG5vbi1yZW5kZXJlZCBpZnJhbWUg
KGRpc3BsYXk6IG5vbmUpIGZyb20gaWZyYW1lJ3Mgd2luZG93IGFzc2VydF9lcXVhbHM6IGV4cGVj
dGVkIDAgYnV0IGdvdCAzOTQKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxl
IGZvciBlbGVtZW50IG91dHNpZGUgdGhlIGZsYXQgdHJlZSBhc3NlcnRfZXF1YWxzOiBleHBlY3Rl
ZCAwIGJ1dCBnb3QgMzk0CitGQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBm
b3IgZGVzY2VuZGFudCBvdXRzaWRlIHRoZSBmbGF0IHRyZWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0
ZWQgMCBidXQgZ290IDM5NAogUEFTUyBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUg
Zm9yIHNoYWRvdyB0cmVlIG91dHNpZGUgb2YgZmxhdHRlbmVkIHRyZWUKIApkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
Y3NzL2Nzcy1jYXNjYWRlL2FsbC1wcm9wLWluaXRpYWwteG1sLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL3BsYXRmb3JtL2lvcy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9j
c3MtY2FzY2FkZS9hbGwtcHJvcC1pbml0aWFsLXhtbC1leHBlY3RlZC50eHQKaW5kZXggYmUzZGI5
MGNkMDkwMDAwM2JkODA4NWE1OWVjMDhkZWE3MTEzN2ZjMS4uNDMwOTg1ZTQ2Y2ExMjk5MmZkYmU4
OWJlZDI2ZTI1M2RiMDE1YWViYyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9z
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jYXNjYWRlL2FsbC1wcm9w
LWluaXRpYWwteG1sLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3Mv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNhc2NhZGUvYWxsLXByb3At
aW5pdGlhbC14bWwtZXhwZWN0ZWQudHh0CkBAIC0zMTEsNyArMzExLDYgQEAgUEFTUyAtd2Via2l0
LWJhY2tncm91bmQtY2xpcAogUEFTUyAtd2Via2l0LWJhY2tncm91bmQtb3JpZ2luCiBQQVNTIC13
ZWJraXQtYmFja2dyb3VuZC1zaXplCiBQQVNTIC13ZWJraXQtYm9yZGVyLWhvcml6b250YWwtc3Bh
Y2luZwotUEFTUyAtd2Via2l0LWJvcmRlci1pbWFnZQogUEFTUyAtd2Via2l0LWJvcmRlci12ZXJ0
aWNhbC1zcGFjaW5nCiBQQVNTIC13ZWJraXQtYm94LWFsaWduCiBQQVNTIC13ZWJraXQtYm94LWRl
Y29yYXRpb24tYnJlYWsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS9nZXRDb21wdXRlZFN0eWxlLWRl
dGFjaGVkLXN1YnRyZWUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dldENvbXB1dGVkU3R5bGUt
ZGV0YWNoZWQtc3VidHJlZS1leHBlY3RlZC50eHQKaW5kZXggOTAzYmZjNmE3ZTliMjgyNzI0OGFi
MDczYjUxMDY3N2U0MTQ5ZGYzMi4uYTJiODQ5ZWRjNDRiNWQ0OWIxMzA3NTNiOTFmYjczMDU0YzMy
NjRiZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dldENvbXB1dGVkU3R5bGUtZGV0YWNoZWQtc3Vi
dHJlZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dldENvbXB1dGVkU3R5bGUtZGV0YWNo
ZWQtc3VidHJlZS1leHBlY3RlZC50eHQKQEAgLTEsOCArMSw4IEBACiAKIFBBU1MgZ2V0Q29tcHV0
ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBkZXRhY2hlZCBlbGVtZW50Ci1GQUlMIGdldENv
bXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBpbiBub24tcmVuZGVyZWQg
aWZyYW1lIChkaXNwbGF5OiBub25lKSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3Qg
Mzk5Ci1GQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBp
biBub24tcmVuZGVyZWQgaWZyYW1lIChkaXNwbGF5OiBub25lKSBmcm9tIGlmcmFtZSdzIHdpbmRv
dyBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk5Ci1GQUlMIGdldENvbXB1dGVk
U3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBvdXRzaWRlIHRoZSBmbGF0IHRyZWUg
YXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDM5OQotRkFJTCBnZXRDb21wdXRlZFN0
eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIGRlc2NlbmRhbnQgb3V0c2lkZSB0aGUgZmxhdCB0cmVl
IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTkKK0ZBSUwgZ2V0Q29tcHV0ZWRT
dHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50IGluIG5vbi1yZW5kZXJlZCBpZnJhbWUg
KGRpc3BsYXk6IG5vbmUpIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTgKK0ZB
SUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50IGluIG5vbi1y
ZW5kZXJlZCBpZnJhbWUgKGRpc3BsYXk6IG5vbmUpIGZyb20gaWZyYW1lJ3Mgd2luZG93IGFzc2Vy
dF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTgKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSBy
ZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50IG91dHNpZGUgdGhlIGZsYXQgdHJlZSBhc3NlcnRf
ZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk4CitGQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0
dXJucyBubyBzdHlsZSBmb3IgZGVzY2VuZGFudCBvdXRzaWRlIHRoZSBmbGF0IHRyZWUgYXNzZXJ0
X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDM5OAogUEFTUyBnZXRDb21wdXRlZFN0eWxlIHJl
dHVybnMgbm8gc3R5bGUgZm9yIHNoYWRvdyB0cmVlIG91dHNpZGUgb2YgZmxhdHRlbmVkIHRyZWUK
IApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd3BlL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jYXNjYWRlL2FsbC1wcm9wLWluaXRpYWwteG1sLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3dwZS9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2Nzcy9jc3MtY2FzY2FkZS9hbGwtcHJvcC1pbml0aWFsLXhtbC1leHBlY3RlZC50
eHQKaW5kZXggOGUyZDAxMTFmYTExODYwYTM1MDQwOTQ0MGI0NzU0ZWI0YTI0MTQzZS4uOTM5NTYz
MmI5OTE4ZjZhMzkwOTM5MDRiMDJhZWRmMWY4Zjk5M2E0NyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vd3BlL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1j
YXNjYWRlL2FsbC1wcm9wLWluaXRpYWwteG1sLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS93cGUvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNh
c2NhZGUvYWxsLXByb3AtaW5pdGlhbC14bWwtZXhwZWN0ZWQudHh0CkBAIC0zMzksNyArMzM5LDYg
QEAgUEFTUyAtd2Via2l0LWJhY2tncm91bmQtY2xpcAogUEFTUyAtd2Via2l0LWJhY2tncm91bmQt
b3JpZ2luCiBQQVNTIC13ZWJraXQtYmFja2dyb3VuZC1zaXplCiBQQVNTIC13ZWJraXQtYm9yZGVy
LWhvcml6b250YWwtc3BhY2luZwotUEFTUyAtd2Via2l0LWJvcmRlci1pbWFnZQogUEFTUyAtd2Vi
a2l0LWJvcmRlci12ZXJ0aWNhbC1zcGFjaW5nCiBQQVNTIC13ZWJraXQtYm94LWFsaWduCiBQQVNT
IC13ZWJraXQtYm94LWRlY29yYXRpb24tYnJlYWsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3Bs
YXRmb3JtL3dwZS9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS9nZXRD
b21wdXRlZFN0eWxlLWRldGFjaGVkLXN1YnRyZWUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
cGxhdGZvcm0vd3BlL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dl
dENvbXB1dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS1leHBlY3RlZC50eHQKaW5kZXggNjgzN2Vh
MjZmZmRkODc0YTllY2UyMjQ1OTlkYzlkNThlMDg2ZGJjNC4uODg3Y2E2YzkxOWRlM2EwYWUwMGE3
ZDc1YzY3NzgzZWFlMWI1YWQ0MCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd3Bl
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dldENvbXB1dGVkU3R5
bGUtZGV0YWNoZWQtc3VidHJlZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vd3BlL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dldENvbXB1
dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS1leHBlY3RlZC50eHQKQEAgLTEsOCArMSw4IEBACiAK
IFBBU1MgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBkZXRhY2hlZCBlbGVt
ZW50Ci1GQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBp
biBub24tcmVuZGVyZWQgaWZyYW1lIChkaXNwbGF5OiBub25lKSBhc3NlcnRfZXF1YWxzOiBleHBl
Y3RlZCAwIGJ1dCBnb3QgMzk0Ci1GQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHls
ZSBmb3IgZWxlbWVudCBpbiBub24tcmVuZGVyZWQgaWZyYW1lIChkaXNwbGF5OiBub25lKSBmcm9t
IGlmcmFtZSdzIHdpbmRvdyBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk0Ci1G
QUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBvdXRzaWRl
IHRoZSBmbGF0IHRyZWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDM5NAotRkFJ
TCBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIGRlc2NlbmRhbnQgb3V0c2lk
ZSB0aGUgZmxhdCB0cmVlIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTQKK0ZB
SUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50IGluIG5vbi1y
ZW5kZXJlZCBpZnJhbWUgKGRpc3BsYXk6IG5vbmUpIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAg
YnV0IGdvdCAzOTMKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBl
bGVtZW50IGluIG5vbi1yZW5kZXJlZCBpZnJhbWUgKGRpc3BsYXk6IG5vbmUpIGZyb20gaWZyYW1l
J3Mgd2luZG93IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTMKK0ZBSUwgZ2V0
Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50IG91dHNpZGUgdGhlIGZs
YXQgdHJlZSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzkzCitGQUlMIGdldENv
bXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZGVzY2VuZGFudCBvdXRzaWRlIHRoZSBm
bGF0IHRyZWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDM5MwogUEFTUyBnZXRD
b21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIHNoYWRvdyB0cmVlIG91dHNpZGUgb2Yg
ZmxhdHRlbmVkIHRyZWUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3ZnL2Nzcy9nZXRDb21w
dXRlZFN0eWxlLWJhc2ljLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3N2Zy9jc3MvZ2V0Q29t
cHV0ZWRTdHlsZS1iYXNpYy1leHBlY3RlZC50eHQKaW5kZXggM2ZlNzc4ZmMwNGQ1YzYwMWY3YzAz
NzZiZjNlMWY2OTJiYjg4NDRjZS4uYzU2NDI4OTlkNjA3YTM2ZDE3OTRiYWZmOWJmZWVjZjUyNTAx
ZGYyNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvc3ZnL2Nzcy9nZXRDb21wdXRlZFN0eWxlLWJh
c2ljLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9zdmcvY3NzL2dldENvbXB1dGVkU3R5
bGUtYmFzaWMtZXhwZWN0ZWQudHh0CkBAIC00MTgsOCArNDE4LDYgQEAgcmVjdDogc3R5bGUuZ2V0
UHJvcGVydHlWYWx1ZSgtd2Via2l0LWJhY2tncm91bmQtc2l6ZSkgOiBhdXRvCiByZWN0OiBzdHls
ZS5nZXRQcm9wZXJ0eUNTU1ZhbHVlKC13ZWJraXQtYmFja2dyb3VuZC1zaXplKSA6IFtvYmplY3Qg
Q1NTUHJpbWl0aXZlVmFsdWVdCiByZWN0OiBzdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKC13ZWJraXQt
Ym9yZGVyLWhvcml6b250YWwtc3BhY2luZykgOiAwcHgKIHJlY3Q6IHN0eWxlLmdldFByb3BlcnR5
Q1NTVmFsdWUoLXdlYmtpdC1ib3JkZXItaG9yaXpvbnRhbC1zcGFjaW5nKSA6IFtvYmplY3QgQ1NT
UHJpbWl0aXZlVmFsdWVdCi1yZWN0OiBzdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKC13ZWJraXQtYm9y
ZGVyLWltYWdlKSA6IG5vbmUKLXJlY3Q6IHN0eWxlLmdldFByb3BlcnR5Q1NTVmFsdWUoLXdlYmtp
dC1ib3JkZXItaW1hZ2UpIDogW29iamVjdCBDU1NQcmltaXRpdmVWYWx1ZV0KIHJlY3Q6IHN0eWxl
LmdldFByb3BlcnR5VmFsdWUoLXdlYmtpdC1ib3JkZXItdmVydGljYWwtc3BhY2luZykgOiAwcHgK
IHJlY3Q6IHN0eWxlLmdldFByb3BlcnR5Q1NTVmFsdWUoLXdlYmtpdC1ib3JkZXItdmVydGljYWwt
c3BhY2luZykgOiBbb2JqZWN0IENTU1ByaW1pdGl2ZVZhbHVlXQogcmVjdDogc3R5bGUuZ2V0UHJv
cGVydHlWYWx1ZSgtd2Via2l0LWJveC1hbGlnbikgOiBzdHJldGNoCkBAIC05MzQsOCArOTMyLDYg
QEAgZzogc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgtd2Via2l0LWJhY2tncm91bmQtc2l6ZSkgOiBh
dXRvCiBnOiBzdHlsZS5nZXRQcm9wZXJ0eUNTU1ZhbHVlKC13ZWJraXQtYmFja2dyb3VuZC1zaXpl
KSA6IFtvYmplY3QgQ1NTUHJpbWl0aXZlVmFsdWVdCiBnOiBzdHlsZS5nZXRQcm9wZXJ0eVZhbHVl
KC13ZWJraXQtYm9yZGVyLWhvcml6b250YWwtc3BhY2luZykgOiAwcHgKIGc6IHN0eWxlLmdldFBy
b3BlcnR5Q1NTVmFsdWUoLXdlYmtpdC1ib3JkZXItaG9yaXpvbnRhbC1zcGFjaW5nKSA6IFtvYmpl
Y3QgQ1NTUHJpbWl0aXZlVmFsdWVdCi1nOiBzdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKC13ZWJraXQt
Ym9yZGVyLWltYWdlKSA6IG5vbmUKLWc6IHN0eWxlLmdldFByb3BlcnR5Q1NTVmFsdWUoLXdlYmtp
dC1ib3JkZXItaW1hZ2UpIDogW29iamVjdCBDU1NQcmltaXRpdmVWYWx1ZV0KIGc6IHN0eWxlLmdl
dFByb3BlcnR5VmFsdWUoLXdlYmtpdC1ib3JkZXItdmVydGljYWwtc3BhY2luZykgOiAwcHgKIGc6
IHN0eWxlLmdldFByb3BlcnR5Q1NTVmFsdWUoLXdlYmtpdC1ib3JkZXItdmVydGljYWwtc3BhY2lu
ZykgOiBbb2JqZWN0IENTU1ByaW1pdGl2ZVZhbHVlXQogZzogc3R5bGUuZ2V0UHJvcGVydHlWYWx1
ZSgtd2Via2l0LWJveC1hbGlnbikgOiBzdHJldGNoCg==
</data>
<flag name="commit-queue"
          id="484675"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>456404</attachid>
            <date>2022-04-01 14:25:33 -0700</date>
            <delta_ts>2022-04-01 18:04:24 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-237487-20220401232532.patch</filename>
            <type>text/plain</type>
            <size>86221</size>
            <attacher name="Oriol Brufau">obrufau</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkxNzQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzI5OTFmYTkzYjc0MWRh
MDc2ZTk4MTFmYTYxMDExZGQ2MzdiNWYyMC4uMDcwMzE0ODE0NWVmYmY1Y2NhOWJkMWY1MjQ4ZjNi
YWUzYjA0N2RlZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDg4IEBACisyMDIyLTA0LTAxICBPcmlv
bCBCcnVmYXUgIDxvYnJ1ZmF1QGlnYWxpYS5jb20+CisKKyAgICAgICAgW2Nzc10gVHVybiAtd2Vi
a2l0LWJvcmRlci1pbWFnZSBpbnRvIGEgc2hvcnRoYW5kCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzc0ODcKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGUgJy13ZWJraXQtYm9yZGVyLWltYWdlJyBwcm9w
ZXJ0eSB3YXMgY29uc2lkZXJlZCB0byBiZSBhIGxvbmdoYW5kLAorICAgICAgICBzaGFyaW5nIGNv
bXB1dGVkIHZhbHVlcyB3aXRoIHRoZSB2YXJpb3VzICdib3JkZXItaW1hZ2UtKicuCisKKyAgICAg
ICAgVGhpcyBwYXRjaCB0dXJucyBpdCBpbnRvIGEgc2hvcnRoYW5kIG9mICdib3JkZXItaW1hZ2Ut
KicuCisKKyAgICAgICAgVGVzdHM6IGZhc3QvY3NzL2JvcmRlci1pbWFnZS1zdHlsZS1sZW5ndGgu
aHRtbAorICAgICAgICAgICAgICAgZmFzdC9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS9jb21wdXRlZC1z
dHlsZS5odG1sCisgICAgICAgICAgICAgICBmYXN0L2Nzcy9nZXRDb21wdXRlZFN0eWxlL2NvbXB1
dGVkLXN0eWxlLXdpdGhvdXQtcmVuZGVyZXIuaHRtbAorICAgICAgICAgICAgICAgZmFzdC9jc3Mv
aW1hZ2Utc2V0LXBhcnNpbmcuaHRtbAorICAgICAgICAgICAgICAgZmFzdC9jc3MvdXJpLXRva2Vu
LXBhcnNpbmcuaHRtbAorICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9jc3MvY3NzLWNhc2NhZGUvYWxsLXByb3AtaW5pdGlhbC14bWwuaHRtbAorICAgICAgICAg
ICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nzb20vZ2V0Q29tcHV0
ZWRTdHlsZS1kZXRhY2hlZC1zdWJ0cmVlLmh0bWwKKyAgICAgICAgICAgICAgIHN2Zy9jc3MvZ2V0
Q29tcHV0ZWRTdHlsZS1iYXNpYy54aHRtbAorCisgICAgICAgICogU291cmNlcy50eHQ6CisgICAg
ICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIGFuaW1h
dGlvbi9DU1NQcm9wZXJ0eUFuaW1hdGlvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpibGVuZEZ1
bmMpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUHJvcGVydHlBbmltYXRpb25XcmFwcGVyTWFwOjpD
U1NQcm9wZXJ0eUFuaW1hdGlvbldyYXBwZXJNYXApOgorICAgICAgICAqIGNzcy9DU1NCb3JkZXJJ
bWFnZVdpZHRoVmFsdWUuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkNTU0JvcmRlcklt
YWdlV2lkdGhWYWx1ZTo6Q1NTQm9yZGVySW1hZ2VXaWR0aFZhbHVlKToKKyAgICAgICAgKFdlYkNv
cmU6OkNTU0JvcmRlckltYWdlV2lkdGhWYWx1ZTo6Y3VzdG9tQ1NTVGV4dCBjb25zdCk6CisgICAg
ICAgIChXZWJDb3JlOjpDU1NCb3JkZXJJbWFnZVdpZHRoVmFsdWU6OmVxdWFscyBjb25zdCk6Cisg
ICAgICAgICogY3NzL0NTU0JvcmRlckltYWdlV2lkdGhWYWx1ZS5oOiBBZGRlZC4KKyAgICAgICAg
KiBjc3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OnZhbHVlRm9yTmluZVBpZWNlSW1hZ2UpOgorICAgICAgICAoV2ViQ29yZTo6dmFsdWVGb3JSZWZs
ZWN0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OkNvbXB1dGVkU3R5bGVFeHRyYWN0b3I6OnZhbHVl
Rm9yUHJvcGVydHlJblN0eWxlKToKKyAgICAgICAgKiBjc3MvQ1NTUHJvcGVydGllcy5qc29uOgor
ICAgICAgICAqIGNzcy9DU1NUb1N0eWxlTWFwLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1Rv
U3R5bGVNYXA6Om1hcE5pbmVQaWVjZUltYWdlKToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1RvU3R5
bGVNYXA6Om1hcE5pbmVQaWVjZUltYWdlV2lkdGgpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTVG9T
dHlsZU1hcDo6bWFwTmluZVBpZWNlSW1hZ2VRdWFkKToKKyAgICAgICAgKiBjc3MvQ1NTVG9TdHls
ZU1hcC5oOgorICAgICAgICAqIGNzcy9DU1NWYWx1ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpD
U1NWYWx1ZTo6ZXF1YWxzIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1ZhbHVlOjpjc3NU
ZXh0IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1ZhbHVlOjpkZXN0cm95KToKKyAgICAg
ICAgKiBjc3MvQ1NTVmFsdWUuaDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1ZhbHVlOjppc0JvcmRl
ckltYWdlV2lkdGhWYWx1ZSBjb25zdCk6CisgICAgICAgICogY3NzL1N0eWxlUHJvcGVydGllcy5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZVByb3BlcnRpZXM6OmdldFByb3BlcnR5VmFsdWUg
Y29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVQcm9wZXJ0aWVzOjpib3JkZXJJbWFnZVBy
b3BlcnR5VmFsdWUgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVQcm9wZXJ0aWVzOjph
c1RleHQgY29uc3QpOgorICAgICAgICAqIGNzcy9TdHlsZVByb3BlcnRpZXMuaDoKKyAgICAgICAg
KiBjc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmNv
bnN1bWVCb3JkZXJJbWFnZVdpZHRoKToKKyAgICAgICAgKFdlYkNvcmU6OmNvbnN1bWVCb3JkZXJJ
bWFnZUNvbXBvbmVudHMpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUHJvcGVydHlQYXJzZXI6OnBh
cnNlU2luZ2xlVmFsdWUpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUHJvcGVydHlQYXJzZXI6OmNv
bnN1bWVCb3JkZXJJbWFnZSk6CisgICAgICAgIChXZWJDb3JlOjpDU1NQcm9wZXJ0eVBhcnNlcjo6
cGFyc2VTaG9ydGhhbmQpOgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9Cb3JkZXJEYXRhLmg6
CisgICAgICAgIChXZWJDb3JlOjpCb3JkZXJEYXRhOjpib3JkZXJMZWZ0V2lkdGggY29uc3QpOgor
ICAgICAgICAoV2ViQ29yZTo6Qm9yZGVyRGF0YTo6Ym9yZGVyUmlnaHRXaWR0aCBjb25zdCk6Cisg
ICAgICAgIChXZWJDb3JlOjpCb3JkZXJEYXRhOjpib3JkZXJUb3BXaWR0aCBjb25zdCk6CisgICAg
ICAgIChXZWJDb3JlOjpCb3JkZXJEYXRhOjpib3JkZXJCb3R0b21XaWR0aCBjb25zdCk6CisgICAg
ICAgICogcmVuZGVyaW5nL3N0eWxlL05pbmVQaWVjZUltYWdlLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6Ok5pbmVQaWVjZUltYWdlOjpOaW5lUGllY2VJbWFnZSk6CisgICAgICAgIChXZWJDb3JlOjpO
aW5lUGllY2VJbWFnZTo6RGF0YTo6RGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpOaW5lUGllY2VJ
bWFnZTo6RGF0YTo6Y3JlYXRlKToKKyAgICAgICAgKFdlYkNvcmU6Ok5pbmVQaWVjZUltYWdlOjpE
YXRhOjpvcGVyYXRvcj09IGNvbnN0KToKKyAgICAgICAgKiByZW5kZXJpbmcvc3R5bGUvTmluZVBp
ZWNlSW1hZ2UuaDoKKyAgICAgICAgKFdlYkNvcmU6Ok5pbmVQaWVjZUltYWdlOjpvdmVycmlkZXNC
b3JkZXJXaWR0aHMgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6TmluZVBpZWNlSW1hZ2U6OnNl
dE92ZXJyaWRlc0JvcmRlcldpZHRocyk6CisgICAgICAgIChXZWJDb3JlOjpOaW5lUGllY2VJbWFn
ZTo6Y29weUJvcmRlclNsaWNlc0Zyb20pOgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9SZW5k
ZXJTdHlsZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJTdHlsZTo6c2V0Qm9yZGVySW1h
Z2VXaWR0aE92ZXJyaWRlc0JvcmRlcldpZHRocyk6CisgICAgICAgICogcmVuZGVyaW5nL3N0eWxl
L1JlbmRlclN0eWxlLmg6CisgICAgICAgICogc3R5bGUvUHJvcGVydHlDYXNjYWRlLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlN0eWxlOjpzaG91bGRBcHBseVByb3BlcnR5SW5QYXJzZU9yZGVyKToK
KyAgICAgICAgKiBzdHlsZS9TdHlsZUJ1aWxkZXJDb252ZXJ0ZXIuaDoKKyAgICAgICAgKFdlYkNv
cmU6OlN0eWxlOjpCdWlsZGVyQ29udmVydGVyOjpjb252ZXJ0Qm9yZGVyTWFzayk6CisgICAgICAg
IChXZWJDb3JlOjpTdHlsZTo6QnVpbGRlckNvbnZlcnRlcjo6Y29udmVydFJlZmxlY3Rpb24pOgor
ICAgICAgICAoV2ViQ29yZTo6U3R5bGU6OkJ1aWxkZXJDb252ZXJ0ZXI6OmNvbnZlcnRCb3JkZXJJ
bWFnZSk6IERlbGV0ZWQuCisgICAgICAgICogc3R5bGUvU3R5bGVCdWlsZGVyQ3VzdG9tLmg6Cisg
ICAgICAgIChXZWJDb3JlOjpTdHlsZTo6QXBwbHlQcm9wZXJ0eUJvcmRlckltYWdlTW9kaWZpZXI6
OmFwcGx5SW5pdGlhbFZhbHVlKToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlOjpBcHBseVByb3Bl
cnR5Qm9yZGVySW1hZ2VNb2RpZmllcjo6YXBwbHlWYWx1ZSk6CisKIDIwMjItMDMtMjMgIFlvdWVu
biBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIFZpZGVvRnJhbWUgZG9lcyBu
b3QgbmVlZCB0byBpbmhlcml0IGZyb20gTWVkaWFTYW1wbGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL1NvdXJjZXMudHh0IGIvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQKaW5kZXggNDdh
YzUzZGZmMjFmMzI4N2M0NTI4YjNlMGU0N2M5N2Y3MWJiOGFiOC4uOGZlNzQyNWJkMTMzZjhmMzg0
NGRhZGUzYzc3MTc2NThjN2NkZDY0NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvU291cmNl
cy50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQKQEAgLTcxMiw2ICs3MTIsNyBA
QCBjc3MvQ1NTQXNwZWN0UmF0aW9WYWx1ZS5jcHAKIGNzcy9DU1NCYXNpY1NoYXBlcy5jcHAKIGNz
cy9DU1NCb3JkZXJJbWFnZS5jcHAKIGNzcy9DU1NCb3JkZXJJbWFnZVNsaWNlVmFsdWUuY3BwCitj
c3MvQ1NTQm9yZGVySW1hZ2VXaWR0aFZhbHVlLmNwcAogY3NzL0NTU0NhbnZhc1ZhbHVlLmNwcAog
Y3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAKIGNzcy9DU1NDb25kaXRpb25SdWxl
LmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qCmluZGV4IGRkOGVlN2JjMjEwYzE4YjM4NjY4ZDJlNjk5N2U0NDI4ODhhZjUwOGUuLjkyYmMw
NTI5Y2YwZTMzOWNkZDZkMTM0MTM0NTkwZDcwYmNjN2JkZDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTEwMTUsNiArMTAxNSw3
IEBACiAJCTMzNTAzQzlBMTAxNzlBNzQwMDNCNDdFMSAvKiBOb3RpZmljYXRpb25DbGllbnQuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMzNTAzQzk5MTAx
NzlBNzQwMDNCNDdFMSAvKiBOb3RpZmljYXRpb25DbGllbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQkzMzUwM0NBNDEwMTc5QUQ3MDAzQjQ3RTEg
LyogSlNOb3RpZmljYXRpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDMzNTAzQ0EwMTAxNzlBRDcwMDNCNDdFMSAvKiBKU05vdGlmaWNhdGlvbi5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTMzRDAyMTJE
MTMxREIzN0IwMDQwOTFBOCAvKiBDb29raWVTdG9yYWdlLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMTNGMDFFQTEyNzBFMTBEMDBERkJBNzEgLyogQ29v
a2llU3RvcmFnZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CisJCTM1N0I1ODFEMjdGNzkwOUEwMEI5M0U0RSAvKiBDU1NCb3JkZXJJbWFnZVdpZHRoVmFs
dWUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDM1N0I1
ODFDMjdGNzkwOUEwMEI5M0U0RSAvKiBDU1NCb3JkZXJJbWFnZVdpZHRoVmFsdWUuaCAqLzsgfTsK
IAkJMzVDNzRGREIyMjhBMUVGNjAwMEMyMUEwIC8qIENTU0dyaWRJbnRlZ2VyUmVwZWF0VmFsdWUu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDM1Qzc0RkQ3
MjI4QTE5QTYwMDBDMjFBMCAvKiBDU1NHcmlkSW50ZWdlclJlcGVhdFZhbHVlLmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMzcxN0Q3RTgxN0VDQzU5
MTAwM0MyNzZEIC8qIGV4dHJhY3QtbG9jYWxpemFibGUtc3RyaW5ncy5wbCBpbiBDb3B5IFNjcmlw
dHMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzcxN0Q3RTUxN0VDQzNBNjAw
M0MyNzZEIC8qIGV4dHJhY3QtbG9jYWxpemFibGUtc3RyaW5ncy5wbCAqLzsgfTsKIAkJMzcxRTY1
Q0MxMzY2MUVEQzAwQkVFREIwIC8qIFBhZ2VTZXJpYWxpemVyLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzNzFFNjVDQjEzNjYxRURDMDBCRUVEQjAgLyog
UGFnZVNlcmlhbGl6ZXIuaCAqLzsgfTsKQEAgLTg0NjcsNiArODQ2OCw4IEBACiAJCTMzNTAzQzlG
MTAxNzlBRDcwMDNCNDdFMSAvKiBKU05vdGlmaWNhdGlvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBKU05vdGlmaWNhdGlvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTMzNTAzQ0EwMTAxNzlBRDcwMDNCNDdFMSAvKiBKU05vdGlmaWNhdGlvbi5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU05vdGlmaWNhdGlvbi5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkzMzUwM0NDNjEwMTdBMUIxMDAzQjQ3RTEgLyogTm90
aWZpY2F0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE5vdGlm
aWNhdGlvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTM1N0I1ODFDMjdGNzkw
OUEwMEI5M0U0RSAvKiBDU1NCb3JkZXJJbWFnZVdpZHRoVmFsdWUuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gQ1NTQm9yZGVySW1hZ2VXaWR0aFZhbHVlLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTM1N0I1ODFFMjdGNzkwQkQwMEI5M0U0RSAvKiBDU1NCb3JkZXJJ
bWFnZVdpZHRoVmFsdWUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
Q1NTQm9yZGVySW1hZ2VXaWR0aFZhbHVlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJMzVDNzRGRDMyMjhBMTkxMjAwMEMyMUEwIC8qIENTU0dyaWRJbnRlZ2VyUmVwZWF0VmFsdWUu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ1NTR3JpZEludGVnZXJSZXBlYXRWYWx1ZS5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTM1Qzc0RkQ3MjI4QTE5QTYwMDBDMjFBMCAvKiBD
U1NHcmlkSW50ZWdlclJlcGVhdFZhbHVlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENTU0dyaWRJbnRlZ2Vy
UmVwZWF0VmFsdWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzY2MkY5ODQwNDdD
RURCRTVERERBRkFBIC8qIFJlbmRlck1hdGhNTE1lbmNsb3NlLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlbmRlck1hdGhNTE1lbmNsb3NlLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTMxNzA0LDYgKzMxNzA3LDggQEAKIAkJCQlFMTZBODRGODE0
Qzg1Q0NDMDAyOTc3REYgLyogQ1NTQm9yZGVySW1hZ2UuaCAqLywKIAkJCQlCQzI3NEIzMDE0MEVC
RUQ4MDBFQURGQTYgLyogQ1NTQm9yZGVySW1hZ2VTbGljZVZhbHVlLmNwcCAqLywKIAkJCQlCQzI3
NEIyRTE0MEVCRUIyMDBFQURGQTYgLyogQ1NTQm9yZGVySW1hZ2VTbGljZVZhbHVlLmggKi8sCisJ
CQkJMzU3QjU4MUUyN0Y3OTBCRDAwQjkzRTRFIC8qIENTU0JvcmRlckltYWdlV2lkdGhWYWx1ZS5j
cHAgKi8sCisJCQkJMzU3QjU4MUMyN0Y3OTA5QTAwQjkzRTRFIC8qIENTU0JvcmRlckltYWdlV2lk
dGhWYWx1ZS5oICovLAogCQkJCUJDNjA0QTQyMERCNTYzNEUwMDIwNDczOSAvKiBDU1NDYW52YXNW
YWx1ZS5jcHAgKi8sCiAJCQkJQkM2MDQ5Q0IwREI1NjBDMjAwMjA0NzM5IC8qIENTU0NhbnZhc1Zh
bHVlLmggKi8sCiAJCQkJQkNFQTQ3N0MwOTdDQUFDODAwOTRDOUU0IC8qIENTU0NvbXB1dGVkU3R5
bGVEZWNsYXJhdGlvbi5jcHAgKi8sCkBAIC0zNDExMyw2ICszNDExOCw3IEBACiAJCQkJRkJENkFG
ODgxNUVGMjVDOTAwOEI3MTEwIC8qIENTU0Jhc2ljU2hhcGVzLmggaW4gSGVhZGVycyAqLywKIAkJ
CQlFMTZBODRGQTE0Qzg1Q0NDMDAyOTc3REYgLyogQ1NTQm9yZGVySW1hZ2UuaCBpbiBIZWFkZXJz
ICovLAogCQkJCUJDMjc0QjJGMTQwRUJFQjIwMEVBREZBNiAvKiBDU1NCb3JkZXJJbWFnZVNsaWNl
VmFsdWUuaCBpbiBIZWFkZXJzICovLAorCQkJCTM1N0I1ODFEMjdGNzkwOUEwMEI5M0U0RSAvKiBD
U1NCb3JkZXJJbWFnZVdpZHRoVmFsdWUuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDRjE2NDZBMjY2
MkE5MzQwMDAyRjdFRiAvKiBDU1NDYWxjQ2F0ZWdvcnlNYXBwaW5nLmggaW4gSGVhZGVycyAqLywK
IAkJCQlCQ0YxNjQ1MTI2NjI5RkM3MDAwMkY3RUYgLyogQ1NTQ2FsY0V4cHJlc3Npb25Ob2RlLmgg
aW4gSGVhZGVycyAqLywKIAkJCQlCQ0YxNjQ2NTI2NjJBMzFBMDAwMkY3RUYgLyogQ1NTQ2FsY0V4
cHJlc3Npb25Ob2RlUGFyc2VyLmggaW4gSGVhZGVycyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2FuaW1hdGlvbi9DU1NQcm9wZXJ0eUFuaW1hdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9hbmltYXRpb24vQ1NTUHJvcGVydHlBbmltYXRpb24uY3BwCmluZGV4IDZmNzRjOWYzNDgwYmUy
NzlkOGRmYzg5ZDA0MWFlY2QyODlmZjlmZGUuLmJhNjcxZDNmZDg4NzI1MTYyMzliNzY2ZmZlYzMz
MDE0MDQ0ZTg0ZjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9DU1NQcm9w
ZXJ0eUFuaW1hdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0NTU1Byb3Bl
cnR5QW5pbWF0aW9uLmNwcApAQCAtNTQ5LDcgKzU0OSw3IEBAIHN0YXRpYyBpbmxpbmUgTmluZVBp
ZWNlSW1hZ2UgYmxlbmRGdW5jKGNvbnN0IE5pbmVQaWVjZUltYWdlJiBmcm9tLCBjb25zdCBOaW5l
UGllCiAKICAgICAvLyBGSVhNRSAoNzQxMTIpOiBTdXBwb3J0IHRyYW5zaXRpb25pbmcgYmV0d2Vl
biBOaW5lUGllY2VJbWFnZXMgdGhhdCBkaWZmZXIgYnkgbW9yZSB0aGFuIGltYWdlIGNvbnRlbnQu
CiAKLSAgICBpZiAoZnJvbS5pbWFnZVNsaWNlcygpICE9IHRvLmltYWdlU2xpY2VzKCkgfHwgZnJv
bS5ib3JkZXJTbGljZXMoKSAhPSB0by5ib3JkZXJTbGljZXMoKSB8fCBmcm9tLm91dHNldCgpICE9
IHRvLm91dHNldCgpIHx8IGZyb20uZmlsbCgpICE9IHRvLmZpbGwoKSB8fCBmcm9tLmhvcml6b250
YWxSdWxlKCkgIT0gdG8uaG9yaXpvbnRhbFJ1bGUoKSB8fCBmcm9tLnZlcnRpY2FsUnVsZSgpICE9
IHRvLnZlcnRpY2FsUnVsZSgpKQorICAgIGlmIChmcm9tLmltYWdlU2xpY2VzKCkgIT0gdG8uaW1h
Z2VTbGljZXMoKSB8fCBmcm9tLmJvcmRlclNsaWNlcygpICE9IHRvLmJvcmRlclNsaWNlcygpIHx8
IGZyb20ub3V0c2V0KCkgIT0gdG8ub3V0c2V0KCkgfHwgZnJvbS5maWxsKCkgIT0gdG8uZmlsbCgp
IHx8IGZyb20ub3ZlcnJpZGVzQm9yZGVyV2lkdGhzKCkgIT0gdG8ub3ZlcnJpZGVzQm9yZGVyV2lk
dGhzKCkgfHwgZnJvbS5ob3Jpem9udGFsUnVsZSgpICE9IHRvLmhvcml6b250YWxSdWxlKCkgfHwg
ZnJvbS52ZXJ0aWNhbFJ1bGUoKSAhPSB0by52ZXJ0aWNhbFJ1bGUoKSkKICAgICAgICAgcmV0dXJu
IHRvOwogCiAgICAgaWYgKGF1dG8qIHJlbmRlcmVyID0gY29udGV4dC5jbGllbnQtPnJlbmRlcmVy
KCkpIHsKQEAgLTU1OCw3ICs1NTgsNyBAQCBzdGF0aWMgaW5saW5lIE5pbmVQaWVjZUltYWdlIGJs
ZW5kRnVuYyhjb25zdCBOaW5lUGllY2VJbWFnZSYgZnJvbSwgY29uc3QgTmluZVBpZQogICAgIH0K
IAogICAgIHJldHVybiBOaW5lUGllY2VJbWFnZShibGVuZEZ1bmMoZnJvbS5pbWFnZSgpLCB0by5p
bWFnZSgpLCBjb250ZXh0KSwKLSAgICAgICAgZnJvbS5pbWFnZVNsaWNlcygpLCBmcm9tLmZpbGwo
KSwgZnJvbS5ib3JkZXJTbGljZXMoKSwgZnJvbS5vdXRzZXQoKSwgZnJvbS5ob3Jpem9udGFsUnVs
ZSgpLCBmcm9tLnZlcnRpY2FsUnVsZSgpKTsKKyAgICAgICAgZnJvbS5pbWFnZVNsaWNlcygpLCBm
cm9tLmZpbGwoKSwgZnJvbS5ib3JkZXJTbGljZXMoKSwgZnJvbS5vdmVycmlkZXNCb3JkZXJXaWR0
aHMoKSwgZnJvbS5vdXRzZXQoKSwgZnJvbS5ob3Jpem9udGFsUnVsZSgpLCBmcm9tLnZlcnRpY2Fs
UnVsZSgpKTsKIH0KIAogI2lmIEVOQUJMRShWQVJJQVRJT05fRk9OVFMpCkBAIC0xMDE0LDYgKzEw
MTQsNyBAQCBwdWJsaWM6CiAgICAgICAgIElzTGVuZ3RoUGVyY2VudGFnZSAgICAgID0gMSA8PCAw
LAogICAgICAgICBVc2VzRmlsbEtleXdvcmQgICAgICAgICA9IDEgPDwgMSwKICAgICAgICAgQWxs
b3dzTmVnYXRpdmVWYWx1ZXMgICAgPSAxIDw8IDIsCisgICAgICAgIE1heU92ZXJyaWRlQm9yZGVy
V2lkdGhzID0gMSA8PCAzLAogICAgIH07CiAgICAgTGVuZ3RoQm94UHJvcGVydHlXcmFwcGVyKENT
U1Byb3BlcnR5SUQgcHJvcGVydHksIGNvbnN0IExlbmd0aEJveCYgKFJlbmRlclN0eWxlOjoqZ2V0
dGVyKSgpIGNvbnN0LCB2b2lkIChSZW5kZXJTdHlsZTo6KnNldHRlcikoTGVuZ3RoQm94JiYpLCBP
cHRpb25TZXQ8RmxhZ3M+IGZsYWdzID0geyB9KQogICAgICAgICA6IFByb3BlcnR5V3JhcHBlckdl
dHRlcjxjb25zdCBMZW5ndGhCb3gmPihwcm9wZXJ0eSwgZ2V0dGVyKQpAQCAtMTAyNyw5ICsxMDI4
LDE5IEBAIHB1YmxpYzoKICAgICAgICAgaWYgKG1fZmxhZ3MuY29udGFpbnMoRmxhZ3M6OlVzZXNG
aWxsS2V5d29yZCkgJiYgZnJvbS5ib3JkZXJJbWFnZSgpLmZpbGwoKSAhPSB0by5ib3JkZXJJbWFn
ZSgpLmZpbGwoKSkKICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKIAorICAgICAgICBib29sIGlz
TGVuZ3RoUGVyY2VudGFnZSA9IG1fZmxhZ3MuY29udGFpbnMoRmxhZ3M6OklzTGVuZ3RoUGVyY2Vu
dGFnZSk7CisKKyAgICAgICAgaWYgKG1fZmxhZ3MuY29udGFpbnMoRmxhZ3M6Ok1heU92ZXJyaWRl
Qm9yZGVyV2lkdGhzKSkgeworICAgICAgICAgICAgYm9vbCBvdmVycmlkZXNCb3JkZXJXaWR0aHMg
PSBmcm9tLmJvcmRlckltYWdlKCkub3ZlcnJpZGVzQm9yZGVyV2lkdGhzKCk7CisgICAgICAgICAg
ICBpZiAob3ZlcnJpZGVzQm9yZGVyV2lkdGhzICE9IHRvLmJvcmRlckltYWdlKCkub3ZlcnJpZGVz
Qm9yZGVyV2lkdGhzKCkpCisgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICAg
ICAgLy8gRXZlbiBpZiB0aGlzIHByb3BlcnR5IGFjY2VwdHMgPGxlbmd0aC1wZXJjZW50YWdlPiwg
Ym9yZGVyIHdpZHRocyBjYW4gb25seSBiZSBhIDxsZW5ndGg+LgorICAgICAgICAgICAgaWYgKG92
ZXJyaWRlc0JvcmRlcldpZHRocykKKyAgICAgICAgICAgICAgICBpc0xlbmd0aFBlcmNlbnRhZ2Ug
PSBmYWxzZTsKKyAgICAgICAgfQorCiAgICAgICAgIGF1dG8mIGZyb21MZW5ndGhCb3ggPSB2YWx1
ZShmcm9tKTsKICAgICAgICAgYXV0byYgdG9MZW5ndGhCb3ggPSB2YWx1ZSh0byk7Ci0gICAgICAg
IGJvb2wgaXNMZW5ndGhQZXJjZW50YWdlID0gbV9mbGFncy5jb250YWlucyhGbGFnczo6SXNMZW5n
dGhQZXJjZW50YWdlKTsKICAgICAgICAgcmV0dXJuIGNhbkludGVycG9sYXRlTGVuZ3Rocyhmcm9t
TGVuZ3RoQm94LnRvcCgpLCB0b0xlbmd0aEJveC50b3AoKSwgaXNMZW5ndGhQZXJjZW50YWdlKQog
ICAgICAgICAgICAgJiYgY2FuSW50ZXJwb2xhdGVMZW5ndGhzKGZyb21MZW5ndGhCb3gucmlnaHQo
KSwgdG9MZW5ndGhCb3gucmlnaHQoKSwgaXNMZW5ndGhQZXJjZW50YWdlKQogICAgICAgICAgICAg
JiYgY2FuSW50ZXJwb2xhdGVMZW5ndGhzKGZyb21MZW5ndGhCb3guYm90dG9tKCksIHRvTGVuZ3Ro
Qm94LmJvdHRvbSgpLCBpc0xlbmd0aFBlcmNlbnRhZ2UpCkBAIC0xMDQwLDYgKzEwNTEsOCBAQCBw
dWJsaWM6CiAgICAgewogICAgICAgICBpZiAobV9mbGFncy5jb250YWlucyhGbGFnczo6VXNlc0Zp
bGxLZXl3b3JkKSkKICAgICAgICAgICAgIGRlc3RpbmF0aW9uLnNldEJvcmRlckltYWdlU2xpY2VG
aWxsKCghY29udGV4dC5wcm9ncmVzcyB8fCAhY29udGV4dC5pc0Rpc2NyZXRlID8gZnJvbSA6IHRv
KS5ib3JkZXJJbWFnZSgpLmZpbGwoKSk7CisgICAgICAgIGlmIChtX2ZsYWdzLmNvbnRhaW5zKEZs
YWdzOjpNYXlPdmVycmlkZUJvcmRlcldpZHRocykpCisgICAgICAgICAgICBkZXN0aW5hdGlvbi5z
ZXRCb3JkZXJJbWFnZVdpZHRoT3ZlcnJpZGVzQm9yZGVyV2lkdGhzKCghY29udGV4dC5wcm9ncmVz
cyB8fCAhY29udGV4dC5pc0Rpc2NyZXRlID8gZnJvbSA6IHRvKS5ib3JkZXJJbWFnZSgpLm92ZXJy
aWRlc0JvcmRlcldpZHRocygpKTsKICAgICAgICAgaWYgKGNvbnRleHQuaXNEaXNjcmV0ZSkgewog
ICAgICAgICAgICAgLy8gSXQgaXMgaW1wb3J0YW50IHdlIGhhdmUgdGhpcyBub24taW50ZXJwb2xh
dGVkIHNob3J0Y3V0IGJlY2F1c2UgY2VydGFpbiBDU1MgcHJvcGVydGllcwogICAgICAgICAgICAg
Ly8gcmVwcmVzZW50ZWQgYXMgYSBMZW5ndGhCb3gsIHN1Y2ggYXMgYm9yZGVyLWltYWdlLXNsaWNl
LCBkb24ndCBrbm93IGhvdyB0byBkZWFsIHdpdGgKQEAgLTMwMDQsNyArMzAxNyw3IEBAIENTU1By
b3BlcnR5QW5pbWF0aW9uV3JhcHBlck1hcDo6Q1NTUHJvcGVydHlBbmltYXRpb25XcmFwcGVyTWFw
KCkKIAogICAgICAgICBuZXcgU3R5bGVJbWFnZVByb3BlcnR5V3JhcHBlcihDU1NQcm9wZXJ0eUJv
cmRlckltYWdlU291cmNlLCAmUmVuZGVyU3R5bGU6OmJvcmRlckltYWdlU291cmNlLCAmUmVuZGVy
U3R5bGU6OnNldEJvcmRlckltYWdlU291cmNlKSwKICAgICAgICAgbmV3IExlbmd0aEJveFByb3Bl
cnR5V3JhcHBlcihDU1NQcm9wZXJ0eUJvcmRlckltYWdlU2xpY2UsICZSZW5kZXJTdHlsZTo6Ym9y
ZGVySW1hZ2VTbGljZXMsICZSZW5kZXJTdHlsZTo6c2V0Qm9yZGVySW1hZ2VTbGljZXMsIHsgTGVu
Z3RoQm94UHJvcGVydHlXcmFwcGVyOjpGbGFnczo6VXNlc0ZpbGxLZXl3b3JkIH0pLAotICAgICAg
ICBuZXcgTGVuZ3RoQm94UHJvcGVydHlXcmFwcGVyKENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VXaWR0
aCwgJlJlbmRlclN0eWxlOjpib3JkZXJJbWFnZVdpZHRoLCAmUmVuZGVyU3R5bGU6OnNldEJvcmRl
ckltYWdlV2lkdGgsIHsgTGVuZ3RoQm94UHJvcGVydHlXcmFwcGVyOjpGbGFnczo6SXNMZW5ndGhQ
ZXJjZW50YWdlIH0pLAorICAgICAgICBuZXcgTGVuZ3RoQm94UHJvcGVydHlXcmFwcGVyKENTU1By
b3BlcnR5Qm9yZGVySW1hZ2VXaWR0aCwgJlJlbmRlclN0eWxlOjpib3JkZXJJbWFnZVdpZHRoLCAm
UmVuZGVyU3R5bGU6OnNldEJvcmRlckltYWdlV2lkdGgsIHsgTGVuZ3RoQm94UHJvcGVydHlXcmFw
cGVyOjpGbGFnczo6SXNMZW5ndGhQZXJjZW50YWdlLCBMZW5ndGhCb3hQcm9wZXJ0eVdyYXBwZXI6
OkZsYWdzOjpNYXlPdmVycmlkZUJvcmRlcldpZHRocyB9KSwKICAgICAgICAgbmV3IExlbmd0aEJv
eFByb3BlcnR5V3JhcHBlcihDU1NQcm9wZXJ0eUJvcmRlckltYWdlT3V0c2V0LCAmUmVuZGVyU3R5
bGU6OmJvcmRlckltYWdlT3V0c2V0LCAmUmVuZGVyU3R5bGU6OnNldEJvcmRlckltYWdlT3V0c2V0
KSwKIAogICAgICAgICBuZXcgU3R5bGVJbWFnZVByb3BlcnR5V3JhcHBlcihDU1NQcm9wZXJ0eVdl
YmtpdE1hc2tCb3hJbWFnZVNvdXJjZSwgJlJlbmRlclN0eWxlOjptYXNrQm94SW1hZ2VTb3VyY2Us
ICZSZW5kZXJTdHlsZTo6c2V0TWFza0JveEltYWdlU291cmNlKSwKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9DU1NCb3JkZXJJbWFnZVdpZHRoVmFsdWUuY3BwIGIvU291cmNlL1dlYkNv
cmUvY3NzL0NTU0JvcmRlckltYWdlV2lkdGhWYWx1ZS5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNmQyMTgwMTYz
ZmJjMGE2ZDk4MmJhYjU3OGQ0ZjI0MjI3MzQzNzA1NQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9DU1NCb3JkZXJJbWFnZVdpZHRoVmFsdWUuY3BwCkBAIC0wLDAgKzEsNTYg
QEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjIgSWdhbGlhIFMuTC4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEu
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICog
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExF
IElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAq
IFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICog
Q09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNF
LCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIkNTU0JvcmRl
ckltYWdlV2lkdGhWYWx1ZS5oIgorCisjaW5jbHVkZSAiUmVjdC5oIgorI2luY2x1ZGUgPHd0Zi90
ZXh0L1dURlN0cmluZy5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK0NTU0JvcmRlckltYWdl
V2lkdGhWYWx1ZTo6Q1NTQm9yZGVySW1hZ2VXaWR0aFZhbHVlKFJlZlB0cjxDU1NQcmltaXRpdmVW
YWx1ZT4mJiB3aWR0aHMsIGJvb2wgb3ZlcnJpZGVzQm9yZGVyV2lkdGhzKQorICAgIDogQ1NTVmFs
dWUoQm9yZGVySW1hZ2VXaWR0aENsYXNzKQorICAgICwgbV93aWR0aHMoV1RGTW92ZSh3aWR0aHMp
KQorICAgICwgbV9vdmVycmlkZXNCb3JkZXJXaWR0aHMob3ZlcnJpZGVzQm9yZGVyV2lkdGhzKQor
eworfQorCitTdHJpbmcgQ1NTQm9yZGVySW1hZ2VXaWR0aFZhbHVlOjpjdXN0b21DU1NUZXh0KCkg
Y29uc3QKK3sKKyAgICAvLyBib3JkZXItaW1hZ2Utd2lkdGggY2FuJ3Qgc2V0IG92ZXJyaWRlX2Jv
cmRlcl93aWR0aHMgdG8gdHJ1ZSBieSBpdHNlbGYsIHNvIHNlcmlhbGl6ZSBhcyBlbXB0eSBzdHJp
bmcuCisgICAgLy8gSXQgY2FuIG9ubHkgYmUgdHJ1ZSB2aWEgdGhlIC13ZWJraXQtYm9yZGVyLWlt
YWdlIHNob3J0aGFuZCwgd2hvc2Ugc2VyaWFsaXphdGlvbiB3aWxsIHVud3JhcCB3aWR0aHMoKSBp
ZiBuZWVkZWQuCisgICAgaWYgKG1fb3ZlcnJpZGVzQm9yZGVyV2lkdGhzKQorICAgICAgICByZXR1
cm4gZW1wdHlTdHJpbmcoKTsKKworICAgIHJldHVybiBtX3dpZHRocy0+Y3NzVGV4dCgpOworfQor
Citib29sIENTU0JvcmRlckltYWdlV2lkdGhWYWx1ZTo6ZXF1YWxzKGNvbnN0IENTU0JvcmRlcklt
YWdlV2lkdGhWYWx1ZSYgb3RoZXIpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fb3ZlcnJpZGVzQm9y
ZGVyV2lkdGhzID09IG90aGVyLm1fb3ZlcnJpZGVzQm9yZGVyV2lkdGhzICYmIGNvbXBhcmVDU1NW
YWx1ZVB0cihtX3dpZHRocywgb3RoZXIubV93aWR0aHMpOworfQorCit9IC8vIG5hbWVzcGFjZSBX
ZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQm9yZGVySW1hZ2VXaWR0
aFZhbHVlLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQm9yZGVySW1hZ2VXaWR0aFZhbHVlLmgK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uMDkxZWJiYjQ1ODdmZjJkMzM0MjcwYTYyYTY5OGUwZmJlZTlhYTE0NQotLS0g
L2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NCb3JkZXJJbWFnZVdpZHRoVmFs
dWUuaApAQCAtMCwwICsxLDU5IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIyIElnYWxpYSBT
LkwuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
KyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwor
ICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJ
TUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAq
IEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUws
IEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNF
UlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElO
VEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9V
VCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5j
bHVkZSAiQ1NTUHJpbWl0aXZlVmFsdWUuaCIKKyNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+CisKK25h
bWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgUmVjdDsKKworY2xhc3MgQ1NTQm9yZGVySW1hZ2VX
aWR0aFZhbHVlIGZpbmFsIDogcHVibGljIENTU1ZhbHVlIHsKK3B1YmxpYzoKKyAgICBzdGF0aWMg
UmVmPENTU0JvcmRlckltYWdlV2lkdGhWYWx1ZT4gY3JlYXRlKFJlZlB0cjxDU1NQcmltaXRpdmVW
YWx1ZT4mJiB3aWR0aHMsIGJvb2wgb3ZlcnJpZGVzQm9yZGVyV2lkdGhzKQorICAgIHsKKyAgICAg
ICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgQ1NTQm9yZGVySW1hZ2VXaWR0aFZhbHVlKFdURk1vdmUo
d2lkdGhzKSwgb3ZlcnJpZGVzQm9yZGVyV2lkdGhzKSk7CisgICAgfQorCisgICAgU3RyaW5nIGN1
c3RvbUNTU1RleHQoKSBjb25zdDsKKworICAgIFF1YWQqIHdpZHRocygpIGNvbnN0IHsgcmV0dXJu
IG1fd2lkdGhzID8gbV93aWR0aHMtPnF1YWRWYWx1ZSgpIDogbnVsbHB0cjsgfQorCisgICAgYm9v
bCBlcXVhbHMoY29uc3QgQ1NTQm9yZGVySW1hZ2VXaWR0aFZhbHVlJikgY29uc3Q7CisKKyAgICAv
LyBUaGVzZSBmb3VyIHZhbHVlcyBhcmUgdXNlZCB0byBtYWtlICJjdXRzIiBpbiB0aGUgYm9yZGVy
IGltYWdlLiBUaGV5IGNhbiBiZSBudW1iZXJzCisgICAgLy8gb3IgcGVyY2VudGFnZXMuCisgICAg
UmVmUHRyPENTU1ByaW1pdGl2ZVZhbHVlPiBtX3dpZHRoczsKKyAgICBib29sIG1fb3ZlcnJpZGVz
Qm9yZGVyV2lkdGhzOworCitwcml2YXRlOgorICAgIENTU0JvcmRlckltYWdlV2lkdGhWYWx1ZShS
ZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+JiYgd2lkdGhzLCBib29sIG92ZXJyaWRlc0JvcmRlcldp
ZHRocyk7Cit9OworCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKK1NQRUNJQUxJWkVfVFlQRV9U
UkFJVFNfQ1NTX1ZBTFVFKENTU0JvcmRlckltYWdlV2lkdGhWYWx1ZSwgaXNCb3JkZXJJbWFnZVdp
ZHRoVmFsdWUoKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDb21wdXRlZFN0
eWxlRGVjbGFyYXRpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVE
ZWNsYXJhdGlvbi5jcHAKaW5kZXggMGI1N2ExZjI2ZDBhNWViMmNiNWFiM2U5MGYyYzY5YjliOGE1
YjM5Yi4uNjE4YzA1Y2EyMWRiZWY4OGNiYjA0N2U2OTBmMzcwNWY3NzZiNDFjMiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAKQEAg
LTIyNCw3ICsyMjQsNyBAQCBzdGF0aWMgUmVmPENTU1ZhbHVlPiB2YWx1ZUZvck5pbmVQaWVjZUlt
YWdlUmVwZWF0KGNvbnN0IE5pbmVQaWVjZUltYWdlJiBpbWFnZSkKICAgICByZXR1cm4gY3NzVmFs
dWVQb29sLmNyZWF0ZVZhbHVlKFBhaXI6OmNyZWF0ZShXVEZNb3ZlKGhvcml6b250YWxSZXBlYXQp
LCBXVEZNb3ZlKHZlcnRpY2FsUmVwZWF0KSkpOwogfQogCi1zdGF0aWMgUmVmPENTU1ZhbHVlPiB2
YWx1ZUZvck5pbmVQaWVjZUltYWdlKGNvbnN0IE5pbmVQaWVjZUltYWdlJiBpbWFnZSwgY29uc3Qg
UmVuZGVyU3R5bGUmIHN0eWxlKQorc3RhdGljIFJlZlB0cjxDU1NWYWx1ZT4gdmFsdWVGb3JOaW5l
UGllY2VJbWFnZShDU1NQcm9wZXJ0eUlEIHByb3BlcnR5SUQsIGNvbnN0IE5pbmVQaWVjZUltYWdl
JiBpbWFnZSwgY29uc3QgUmVuZGVyU3R5bGUmIHN0eWxlKQogewogICAgIGlmICghaW1hZ2UuaGFz
SW1hZ2UoKSkKICAgICAgICAgcmV0dXJuIENTU1ZhbHVlUG9vbDo6c2luZ2xldG9uKCkuY3JlYXRl
SWRlbnRpZmllclZhbHVlKENTU1ZhbHVlTm9uZSk7CkBAIC0yMzMsMTAgKzIzMywxNyBAQCBzdGF0
aWMgUmVmPENTU1ZhbHVlPiB2YWx1ZUZvck5pbmVQaWVjZUltYWdlKGNvbnN0IE5pbmVQaWVjZUlt
YWdlJiBpbWFnZSwgY29uc3QgUgogICAgIGlmIChpbWFnZS5pbWFnZSgpKQogICAgICAgICBpbWFn
ZVZhbHVlID0gaW1hZ2UuaW1hZ2UoKS0+Y3NzVmFsdWUoKTsKIAorICAgIC8vIC13ZWJraXQtYm9y
ZGVyLWltYWdlIGhhcyBhIGxlZ2FjeSBiZWhhdmlvciB0aGF0IG1ha2VzIGZpeGVkIGJvcmRlciBz
bGljZXMgYWxzbyBzZXQgdGhlIGJvcmRlciB3aWR0aHMuCisgICAgY29uc3QgTGVuZ3RoQm94JiBz
bGljZXMgPSBpbWFnZS5ib3JkZXJTbGljZXMoKTsKKyAgICBib29sIG92ZXJyaWRlc0JvcmRlcldp
ZHRocyA9IHByb3BlcnR5SUQgPT0gQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJJbWFnZSAmJiAoc2xp
Y2VzLnRvcCgpLmlzRml4ZWQoKSB8fCBzbGljZXMucmlnaHQoKS5pc0ZpeGVkKCkgfHwgc2xpY2Vz
LmJvdHRvbSgpLmlzRml4ZWQoKSB8fCBzbGljZXMubGVmdCgpLmlzRml4ZWQoKSk7CisgICAgaWYg
KG92ZXJyaWRlc0JvcmRlcldpZHRocyAhPSBpbWFnZS5vdmVycmlkZXNCb3JkZXJXaWR0aHMoKSkK
KyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisKICAgICBhdXRvIGltYWdlU2xpY2VzID0gdmFsdWVG
b3JOaW5lUGllY2VJbWFnZVNsaWNlKGltYWdlKTsKLSAgICBhdXRvIGJvcmRlclNsaWNlcyA9IHZh
bHVlRm9yTmluZVBpZWNlSW1hZ2VRdWFkKGltYWdlLmJvcmRlclNsaWNlcygpLCBzdHlsZSk7Cisg
ICAgYXV0byBib3JkZXJTbGljZXMgPSB2YWx1ZUZvck5pbmVQaWVjZUltYWdlUXVhZChzbGljZXMs
IHN0eWxlKTsKICAgICBhdXRvIG91dHNldCA9IHZhbHVlRm9yTmluZVBpZWNlSW1hZ2VRdWFkKGlt
YWdlLm91dHNldCgpLCBzdHlsZSk7CiAgICAgYXV0byByZXBlYXQgPSB2YWx1ZUZvck5pbmVQaWVj
ZUltYWdlUmVwZWF0KGltYWdlKTsKKwogICAgIHJldHVybiBjcmVhdGVCb3JkZXJJbWFnZVZhbHVl
KFdURk1vdmUoaW1hZ2VWYWx1ZSksIFdURk1vdmUoaW1hZ2VTbGljZXMpLCBXVEZNb3ZlKGJvcmRl
clNsaWNlcyksIFdURk1vdmUob3V0c2V0KSwgV1RGTW92ZShyZXBlYXQpKTsKIH0KIApAQCAtMjg0
LDcgKzI5MSw3IEBAIHN0YXRpYyBSZWY8Q1NTVmFsdWU+IHZhbHVlRm9yUmVmbGVjdGlvbihjb25z
dCBTdHlsZVJlZmxlY3Rpb24qIHJlZmxlY3Rpb24sIGNvbnN0CiAgICAgICAgIGJyZWFrOwogICAg
IH0KIAotICAgIHJldHVybiBDU1NSZWZsZWN0VmFsdWU6OmNyZWF0ZShkaXJlY3Rpb24ucmVsZWFz
ZU5vbk51bGwoKSwgb2Zmc2V0LnJlbGVhc2VOb25OdWxsKCksIHZhbHVlRm9yTmluZVBpZWNlSW1h
Z2UocmVmbGVjdGlvbi0+bWFzaygpLCBzdHlsZSkpOworICAgIHJldHVybiBDU1NSZWZsZWN0VmFs
dWU6OmNyZWF0ZShkaXJlY3Rpb24ucmVsZWFzZU5vbk51bGwoKSwgb2Zmc2V0LnJlbGVhc2VOb25O
dWxsKCksIHZhbHVlRm9yTmluZVBpZWNlSW1hZ2UoQ1NTUHJvcGVydHlXZWJraXRCb3hSZWZsZWN0
LCByZWZsZWN0aW9uLT5tYXNrKCksIHN0eWxlKSk7CiB9CiAKIHN0YXRpYyBSZWY8Q1NTVmFsdWVM
aXN0PiBjcmVhdGVQb3NpdGlvbkxpc3RGb3JMYXllcihDU1NQcm9wZXJ0eUlEIHByb3BlcnR5SUQs
IGNvbnN0IEZpbGxMYXllciYgbGF5ZXIsIGNvbnN0IFJlbmRlclN0eWxlJiBzdHlsZSkKQEAgLTM3
OTcsOCArMzgwNCw5IEBAIFJlZlB0cjxDU1NWYWx1ZT4gQ29tcHV0ZWRTdHlsZUV4dHJhY3Rvcjo6
dmFsdWVGb3JQcm9wZXJ0eUluU3R5bGUoY29uc3QgUmVuZGVyU3R5CiAgICAgICAgIH0KICAgICAg
ICAgY2FzZSBDU1NQcm9wZXJ0eUJhY2tmYWNlVmlzaWJpbGl0eToKICAgICAgICAgICAgIHJldHVy
biBjc3NWYWx1ZVBvb2wuY3JlYXRlSWRlbnRpZmllclZhbHVlKChzdHlsZS5iYWNrZmFjZVZpc2li
aWxpdHkoKSA9PSBCYWNrZmFjZVZpc2liaWxpdHk6OkhpZGRlbikgPyBDU1NWYWx1ZUhpZGRlbiA6
IENTU1ZhbHVlVmlzaWJsZSk7CisgICAgICAgIGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJJbWFnZToK
ICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEJvcmRlckltYWdlOgotICAgICAgICAgICAg
cmV0dXJuIHZhbHVlRm9yTmluZVBpZWNlSW1hZ2Uoc3R5bGUuYm9yZGVySW1hZ2UoKSwgc3R5bGUp
OworICAgICAgICAgICAgcmV0dXJuIHZhbHVlRm9yTmluZVBpZWNlSW1hZ2UocHJvcGVydHlJRCwg
c3R5bGUuYm9yZGVySW1hZ2UoKSwgc3R5bGUpOwogICAgICAgICBjYXNlIENTU1Byb3BlcnR5Qm9y
ZGVySW1hZ2VPdXRzZXQ6CiAgICAgICAgICAgICByZXR1cm4gdmFsdWVGb3JOaW5lUGllY2VJbWFn
ZVF1YWQoc3R5bGUuYm9yZGVySW1hZ2UoKS5vdXRzZXQoKSwgc3R5bGUpOwogICAgICAgICBjYXNl
IENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VSZXBlYXQ6CkBAIC0zODA2LDkgKzM4MTQsMTEgQEAgUmVm
UHRyPENTU1ZhbHVlPiBDb21wdXRlZFN0eWxlRXh0cmFjdG9yOjp2YWx1ZUZvclByb3BlcnR5SW5T
dHlsZShjb25zdCBSZW5kZXJTdHkKICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlckltYWdl
U2xpY2U6CiAgICAgICAgICAgICByZXR1cm4gdmFsdWVGb3JOaW5lUGllY2VJbWFnZVNsaWNlKHN0
eWxlLmJvcmRlckltYWdlKCkpOwogICAgICAgICBjYXNlIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VX
aWR0aDoKKyAgICAgICAgICAgIGlmIChzdHlsZS5ib3JkZXJJbWFnZSgpLm92ZXJyaWRlc0JvcmRl
cldpZHRocygpKQorICAgICAgICAgICAgICAgIHJldHVybiBudWxscHRyOwogICAgICAgICAgICAg
cmV0dXJuIHZhbHVlRm9yTmluZVBpZWNlSW1hZ2VRdWFkKHN0eWxlLmJvcmRlckltYWdlKCkuYm9y
ZGVyU2xpY2VzKCksIHN0eWxlKTsKICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdE1hc2tC
b3hJbWFnZToKLSAgICAgICAgICAgIHJldHVybiB2YWx1ZUZvck5pbmVQaWVjZUltYWdlKHN0eWxl
Lm1hc2tCb3hJbWFnZSgpLCBzdHlsZSk7CisgICAgICAgICAgICByZXR1cm4gdmFsdWVGb3JOaW5l
UGllY2VJbWFnZShwcm9wZXJ0eUlELCBzdHlsZS5tYXNrQm94SW1hZ2UoKSwgc3R5bGUpOwogICAg
ICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0TWFza0JveEltYWdlT3V0c2V0OgogICAgICAgICAg
ICAgcmV0dXJuIHZhbHVlRm9yTmluZVBpZWNlSW1hZ2VRdWFkKHN0eWxlLm1hc2tCb3hJbWFnZSgp
Lm91dHNldCgpLCBzdHlsZSk7CiAgICAgICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94
SW1hZ2VSZXBlYXQ6CkBAIC00MDQ0LDggKzQwNTQsNiBAQCBSZWZQdHI8Q1NTVmFsdWU+IENvbXB1
dGVkU3R5bGVFeHRyYWN0b3I6OnZhbHVlRm9yUHJvcGVydHlJblN0eWxlKGNvbnN0IFJlbmRlclN0
eQogICAgICAgICAgICAgcmV0dXJuIGdldENTU1Byb3BlcnR5VmFsdWVzRm9yNFNpZGVzU2hvcnRo
YW5kKGJvcmRlckNvbG9yU2hvcnRoYW5kKCkpOwogICAgICAgICBjYXNlIENTU1Byb3BlcnR5Qm9y
ZGVyTGVmdDoKICAgICAgICAgICAgIHJldHVybiBnZXRDU1NQcm9wZXJ0eVZhbHVlc0ZvclNob3J0
aGFuZFByb3BlcnRpZXMoYm9yZGVyTGVmdFNob3J0aGFuZCgpKTsKLSAgICAgICAgY2FzZSBDU1NQ
cm9wZXJ0eUJvcmRlckltYWdlOgotICAgICAgICAgICAgcmV0dXJuIHZhbHVlRm9yTmluZVBpZWNl
SW1hZ2Uoc3R5bGUuYm9yZGVySW1hZ2UoKSwgc3R5bGUpOwogICAgICAgICBjYXNlIENTU1Byb3Bl
cnR5Qm9yZGVySW5saW5lOiB7CiAgICAgICAgICAgICBhdXRvIHZhbHVlID0gcHJvcGVydHlWYWx1
ZShDU1NQcm9wZXJ0eUJvcmRlcklubGluZVN0YXJ0LCBEb05vdFVwZGF0ZUxheW91dCk7CiAgICAg
ICAgICAgICBpZiAoIWNvbXBhcmVDU1NWYWx1ZVB0cjxDU1NWYWx1ZT4odmFsdWUsIHByb3BlcnR5
VmFsdWUoQ1NTUHJvcGVydHlCb3JkZXJJbmxpbmVFbmQsIERvTm90VXBkYXRlTGF5b3V0KSkpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVydGllcy5qc29uIGIvU291cmNl
L1dlYkNvcmUvY3NzL0NTU1Byb3BlcnRpZXMuanNvbgppbmRleCA3OTY5ZTJiZTExOGQ5ZTU0Njhm
NjM2Mzk5YTEyOTVmMDE2M2M2N2JmLi41Y2EzNmViODUzMWY5ZDAxYjVlYjZjYzg0YTk0NjkxM2Zl
YTI0NzQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVydGllcy5qc29u
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0aWVzLmpzb24KQEAgLTUzNzAsOCAr
NTM3MCwxNiBAQAogICAgICAgICB9LAogICAgICAgICAiLXdlYmtpdC1ib3JkZXItaW1hZ2UiOiB7
CiAgICAgICAgICAgICAiY29kZWdlbi1wcm9wZXJ0aWVzIjogewotICAgICAgICAgICAgICAgICJp
bml0aWFsIjogImluaXRpYWxOaW5lUGllY2VJbWFnZSIsCi0gICAgICAgICAgICAgICAgImNvbnZl
cnRlciI6ICJCb3JkZXJJbWFnZTxDU1NQcm9wZXJ0eVdlYmtpdEJvcmRlckltYWdlPiIKKyAgICAg
ICAgICAgICAgICAibG9uZ2hhbmRzIjogWworICAgICAgICAgICAgICAgICAgICAiYm9yZGVyLWlt
YWdlLXNvdXJjZSIsCisgICAgICAgICAgICAgICAgICAgICJib3JkZXItaW1hZ2Utc2xpY2UiLAor
ICAgICAgICAgICAgICAgICAgICAiYm9yZGVyLWltYWdlLXdpZHRoIiwKKyAgICAgICAgICAgICAg
ICAgICAgImJvcmRlci1pbWFnZS1vdXRzZXQiLAorICAgICAgICAgICAgICAgICAgICAiYm9yZGVy
LWltYWdlLXJlcGVhdCIKKyAgICAgICAgICAgICAgICBdCisgICAgICAgICAgICB9LAorICAgICAg
ICAgICAgInN0YXR1cyI6IHsKKyAgICAgICAgICAgICAgICAiY29tbWVudCI6ICJEaWZmZXJzIGZy
b20gYm9yZGVyLWltYWdlIGluIHRoYXQgaXQgYWx3YXlzIGluY2x1ZGVzIHRoZSAnZmlsbCcga2V5
d29yZCBpbiAnYm9yZGVyLWltYWdlLXNsaWNlJywgYW5kIGl0IHNldHMgJ2JvcmRlci0qLXdpZHRo
JyBpZiB0aGUgY29ycmVzcG9uZGluZyBzbGljZSBvZmZzZXQgaXMuIgogICAgICAgICAgICAgfQog
ICAgICAgICB9LAogICAgICAgICAiLXdlYmtpdC1ib3JkZXItcmFkaXVzIjogewpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1RvU3R5bGVNYXAuY3BwIGIvU291cmNlL1dlYkNvcmUv
Y3NzL0NTU1RvU3R5bGVNYXAuY3BwCmluZGV4IDk0NjYwNTEzNTA1M2FiNWQzNjg3OGNjYmYzMjE1
YjkzYTcxMjU4YTkuLjBjNmY0ZTE2NTY3YjQwYTIyODY5NjQ1ZGU0N2Q0ZDBjOWRmMzlmZWEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NUb1N0eWxlTWFwLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTVG9TdHlsZU1hcC5jcHAKQEAgLTMwLDYgKzMwLDcgQEAKIAogI2lu
Y2x1ZGUgIkFuaW1hdGlvbi5oIgogI2luY2x1ZGUgIkNTU0JvcmRlckltYWdlU2xpY2VWYWx1ZS5o
IgorI2luY2x1ZGUgIkNTU0JvcmRlckltYWdlV2lkdGhWYWx1ZS5oIgogI2luY2x1ZGUgIkNTU0lt
YWdlR2VuZXJhdG9yVmFsdWUuaCIKICNpbmNsdWRlICJDU1NJbWFnZVNldFZhbHVlLmgiCiAjaW5j
bHVkZSAiQ1NTSW1hZ2VWYWx1ZS5oIgpAQCAtNDcxLDcgKzQ3Miw3IEBAIHZvaWQgQ1NTVG9TdHls
ZU1hcDo6bWFwQW5pbWF0aW9uQ29tcG9zaXRlT3BlcmF0aW9uKEFuaW1hdGlvbiYgYW5pbWF0aW9u
LCBjb25zdCBDCiAgICAgICAgIGFuaW1hdGlvbi5zZXRDb21wb3NpdGVPcGVyYXRpb24oKmNvbXBv
c2l0ZU9wZXJhdGlvbik7CiB9CiAKLXZvaWQgQ1NTVG9TdHlsZU1hcDo6bWFwTmluZVBpZWNlSW1h
Z2UoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eSwgQ1NTVmFsdWUqIHZhbHVlLCBOaW5lUGllY2VJbWFn
ZSYgaW1hZ2UpCit2b2lkIENTU1RvU3R5bGVNYXA6Om1hcE5pbmVQaWVjZUltYWdlKENTU1ZhbHVl
KiB2YWx1ZSwgTmluZVBpZWNlSW1hZ2UmIGltYWdlKQogewogICAgIC8vIElmIHdlJ3JlIG5vdCBh
IHZhbHVlIGxpc3QsIHRoZW4gd2UgYXJlICJub25lIiBhbmQgZG9uJ3QgbmVlZCB0byBhbHRlciB0
aGUgZW1wdHkgaW1hZ2UgYXQgYWxsLgogICAgIGlmICghaXM8Q1NTVmFsdWVMaXN0Pih2YWx1ZSkp
CkBAIC00OTIsOCArNDkzLDggQEAgdm9pZCBDU1NUb1N0eWxlTWFwOjptYXBOaW5lUGllY2VJbWFn
ZShDU1NQcm9wZXJ0eUlEIHByb3BlcnR5LCBDU1NWYWx1ZSogdmFsdWUsIE4KICAgICAgICAgICAg
ICAgICBtYXBOaW5lUGllY2VJbWFnZVNsaWNlKCpzbGFzaExpc3QuaXRlbSgwKSwgaW1hZ2UpOwog
CiAgICAgICAgICAgICAvLyBNYXAgaW4gdGhlIGJvcmRlciBzbGljZXMuCi0gICAgICAgICAgICBp
ZiAoc2xhc2hMaXN0Lml0ZW0oMSkpCi0gICAgICAgICAgICAgICAgaW1hZ2Uuc2V0Qm9yZGVyU2xp
Y2VzKG1hcE5pbmVQaWVjZUltYWdlUXVhZCgqc2xhc2hMaXN0Lml0ZW0oMSkpKTsKKyAgICAgICAg
ICAgIGlmIChpczxDU1NCb3JkZXJJbWFnZVdpZHRoVmFsdWU+KHNsYXNoTGlzdC5pdGVtKDEpKSkK
KyAgICAgICAgICAgICAgICBtYXBOaW5lUGllY2VJbWFnZVdpZHRoKCpzbGFzaExpc3QuaXRlbSgx
KSwgaW1hZ2UpOwogCiAgICAgICAgICAgICAvLyBNYXAgaW4gdGhlIG91dHNldC4KICAgICAgICAg
ICAgIGlmIChzbGFzaExpc3QuaXRlbSgyKSkKQEAgLTUwMywyMCArNTA0LDYgQEAgdm9pZCBDU1NU
b1N0eWxlTWFwOjptYXBOaW5lUGllY2VJbWFnZShDU1NQcm9wZXJ0eUlEIHByb3BlcnR5LCBDU1NW
YWx1ZSogdmFsdWUsIE4KICAgICAgICAgICAgIG1hcE5pbmVQaWVjZUltYWdlUmVwZWF0KGN1cnJl
bnQsIGltYWdlKTsKICAgICAgICAgfQogICAgIH0KLQotICAgIGlmIChwcm9wZXJ0eSA9PSBDU1NQ
cm9wZXJ0eVdlYmtpdEJvcmRlckltYWdlKSB7Ci0gICAgICAgIC8vIFdlIGhhdmUgdG8gcHJlc2Vy
dmUgdGhlIGxlZ2FjeSBiZWhhdmlvciBvZiAtd2Via2l0LWJvcmRlci1pbWFnZSBhbmQgbWFrZSB0
aGUgYm9yZGVyIHNsaWNlcwotICAgICAgICAvLyBhbHNvIHNldCB0aGUgYm9yZGVyIHdpZHRocy4g
V2UgZG9uJ3QgbmVlZCB0byB3b3JyeSBhYm91dCBwZXJjZW50YWdlcywgc2luY2Ugd2UgZG9uJ3Qg
ZXZlbiBzdXBwb3J0Ci0gICAgICAgIC8vIHRob3NlIG9uIHJlYWwgYm9yZGVycyB5ZXQuCi0gICAg
ICAgIGlmIChpbWFnZS5ib3JkZXJTbGljZXMoKS50b3AoKS5pc0ZpeGVkKCkpCi0gICAgICAgICAg
ICBzdHlsZSgpLT5zZXRCb3JkZXJUb3BXaWR0aChpbWFnZS5ib3JkZXJTbGljZXMoKS50b3AoKS52
YWx1ZSgpKTsKLSAgICAgICAgaWYgKGltYWdlLmJvcmRlclNsaWNlcygpLnJpZ2h0KCkuaXNGaXhl
ZCgpKQotICAgICAgICAgICAgc3R5bGUoKS0+c2V0Qm9yZGVyUmlnaHRXaWR0aChpbWFnZS5ib3Jk
ZXJTbGljZXMoKS5yaWdodCgpLnZhbHVlKCkpOwotICAgICAgICBpZiAoaW1hZ2UuYm9yZGVyU2xp
Y2VzKCkuYm90dG9tKCkuaXNGaXhlZCgpKQotICAgICAgICAgICAgc3R5bGUoKS0+c2V0Qm9yZGVy
Qm90dG9tV2lkdGgoaW1hZ2UuYm9yZGVyU2xpY2VzKCkuYm90dG9tKCkudmFsdWUoKSk7Ci0gICAg
ICAgIGlmIChpbWFnZS5ib3JkZXJTbGljZXMoKS5sZWZ0KCkuaXNGaXhlZCgpKQotICAgICAgICAg
ICAgc3R5bGUoKS0+c2V0Qm9yZGVyTGVmdFdpZHRoKGltYWdlLmJvcmRlclNsaWNlcygpLmxlZnQo
KS52YWx1ZSgpKTsKLSAgICB9CiB9CiAKIHZvaWQgQ1NTVG9TdHlsZU1hcDo6bWFwTmluZVBpZWNl
SW1hZ2VTbGljZShDU1NWYWx1ZSYgdmFsdWUsIE5pbmVQaWVjZUltYWdlJiBpbWFnZSkKQEAgLTU1
Miw1NSArNTM5LDcwIEBAIHZvaWQgQ1NTVG9TdHlsZU1hcDo6bWFwTmluZVBpZWNlSW1hZ2VTbGlj
ZShDU1NWYWx1ZSYgdmFsdWUsIE5pbmVQaWVjZUltYWdlJiBpbWFnCiAgICAgaW1hZ2Uuc2V0Rmls
bChib3JkZXJJbWFnZVNsaWNlLm1fZmlsbCk7CiB9CiAKK3ZvaWQgQ1NTVG9TdHlsZU1hcDo6bWFw
TmluZVBpZWNlSW1hZ2VXaWR0aChDU1NWYWx1ZSYgdmFsdWUsIE5pbmVQaWVjZUltYWdlJiBpbWFn
ZSkKK3sKKyAgICBpZiAoIWlzPENTU0JvcmRlckltYWdlV2lkdGhWYWx1ZT4odmFsdWUpKQorICAg
ICAgICByZXR1cm47CisKKyAgICAvLyBSZXRyaWV2ZSB0aGUgYm9yZGVyIGltYWdlIHZhbHVlLgor
ICAgIGF1dG8mIGJvcmRlckltYWdlV2lkdGggPSBkb3duY2FzdDxDU1NCb3JkZXJJbWFnZVdpZHRo
VmFsdWU+KHZhbHVlKTsKKyAgICBpbWFnZS5zZXRCb3JkZXJTbGljZXMobWFwTmluZVBpZWNlSW1h
Z2VRdWFkKGJvcmRlckltYWdlV2lkdGgud2lkdGhzKCkpKTsKKyAgICBpbWFnZS5zZXRPdmVycmlk
ZXNCb3JkZXJXaWR0aHMoYm9yZGVySW1hZ2VXaWR0aC5tX292ZXJyaWRlc0JvcmRlcldpZHRocyk7
Cit9CisKIExlbmd0aEJveCBDU1NUb1N0eWxlTWFwOjptYXBOaW5lUGllY2VJbWFnZVF1YWQoQ1NT
VmFsdWUmIHZhbHVlKQogewogICAgIGlmICghaXM8Q1NTUHJpbWl0aXZlVmFsdWU+KHZhbHVlKSkK
ICAgICAgICAgcmV0dXJuIExlbmd0aEJveCgpOwogCi0gICAgLy8gR2V0IG91ciB6b29tIHZhbHVl
LgotICAgIENTU1RvTGVuZ3RoQ29udmVyc2lvbkRhdGEgY29udmVyc2lvbkRhdGEgPSB1c2VTVkda
b29tUnVsZXMoKSA/IG1fYnVpbGRlclN0YXRlLmNzc1RvTGVuZ3RoQ29udmVyc2lvbkRhdGEoKS5j
b3B5V2l0aEFkanVzdGVkWm9vbSgxLjBmKSA6IG1fYnVpbGRlclN0YXRlLmNzc1RvTGVuZ3RoQ29u
dmVyc2lvbkRhdGEoKTsKLQogICAgIC8vIFJldHJpZXZlIHRoZSBwcmltaXRpdmUgdmFsdWUuCiAg
ICAgYXV0byYgYm9yZGVyV2lkdGhzID0gZG93bmNhc3Q8Q1NTUHJpbWl0aXZlVmFsdWU+KHZhbHVl
KTsKIAorICAgIHJldHVybiBtYXBOaW5lUGllY2VJbWFnZVF1YWQoYm9yZGVyV2lkdGhzLnF1YWRW
YWx1ZSgpKTsKK30KKworTGVuZ3RoQm94IENTU1RvU3R5bGVNYXA6Om1hcE5pbmVQaWVjZUltYWdl
UXVhZChRdWFkKiBxdWFkKQoreworICAgIC8vIEdldCBvdXIgem9vbSB2YWx1ZS4KKyAgICBDU1NU
b0xlbmd0aENvbnZlcnNpb25EYXRhIGNvbnZlcnNpb25EYXRhID0gdXNlU1ZHWm9vbVJ1bGVzKCkg
PyBtX2J1aWxkZXJTdGF0ZS5jc3NUb0xlbmd0aENvbnZlcnNpb25EYXRhKCkuY29weVdpdGhBZGp1
c3RlZFpvb20oMS4wZikgOiBtX2J1aWxkZXJTdGF0ZS5jc3NUb0xlbmd0aENvbnZlcnNpb25EYXRh
KCk7CisKICAgICAvLyBTZXQgdXAgYSBsZW5ndGggYm94IHRvIHJlcHJlc2VudCBvdXIgaW1hZ2Ug
c2xpY2VzLgogICAgIExlbmd0aEJveCBib3g7IC8vIERlZmF1bHRzIHRvICdhdXRvJyBzbyB3ZSBk
b24ndCBoYXZlIHRvIGhhbmRsZSB0aGF0IGV4cGxpY2l0bHkgYmVsb3cuCi0gICAgUXVhZCogc2xp
Y2VzID0gYm9yZGVyV2lkdGhzLnF1YWRWYWx1ZSgpOwotICAgIGlmIChzbGljZXMtPnRvcCgpLT5p
c051bWJlcigpKQotICAgICAgICBib3gudG9wKCkgPSBMZW5ndGgoc2xpY2VzLT50b3AoKS0+Zmxv
YXRWYWx1ZSgpLCBMZW5ndGhUeXBlOjpSZWxhdGl2ZSk7Ci0gICAgZWxzZSBpZiAoc2xpY2VzLT50
b3AoKS0+aXNQZXJjZW50YWdlKCkpCi0gICAgICAgIGJveC50b3AoKSA9IExlbmd0aChzbGljZXMt
PnRvcCgpLT5kb3VibGVWYWx1ZShDU1NVbml0VHlwZTo6Q1NTX1BFUkNFTlRBR0UpLCBMZW5ndGhU
eXBlOjpQZXJjZW50KTsKLSAgICBlbHNlIGlmIChzbGljZXMtPnRvcCgpLT5pc0NhbGN1bGF0ZWRQ
ZXJjZW50YWdlV2l0aExlbmd0aCgpKQotICAgICAgICBib3gudG9wKCkgPSBMZW5ndGgoc2xpY2Vz
LT50b3AoKS0+Y3NzQ2FsY1ZhbHVlKCktPmNyZWF0ZUNhbGN1bGF0aW9uVmFsdWUoY29udmVyc2lv
bkRhdGEpKTsKLSAgICBlbHNlIGlmIChzbGljZXMtPnRvcCgpLT52YWx1ZUlEKCkgIT0gQ1NTVmFs
dWVBdXRvKQotICAgICAgICBib3gudG9wKCkgPSBzbGljZXMtPnRvcCgpLT5jb21wdXRlTGVuZ3Ro
PExlbmd0aD4oY29udmVyc2lvbkRhdGEpOwotCi0gICAgaWYgKHNsaWNlcy0+cmlnaHQoKS0+aXNO
dW1iZXIoKSkKLSAgICAgICAgYm94LnJpZ2h0KCkgPSBMZW5ndGgoc2xpY2VzLT5yaWdodCgpLT5m
bG9hdFZhbHVlKCksIExlbmd0aFR5cGU6OlJlbGF0aXZlKTsKLSAgICBlbHNlIGlmIChzbGljZXMt
PnJpZ2h0KCktPmlzUGVyY2VudGFnZSgpKQotICAgICAgICBib3gucmlnaHQoKSA9IExlbmd0aChz
bGljZXMtPnJpZ2h0KCktPmRvdWJsZVZhbHVlKENTU1VuaXRUeXBlOjpDU1NfUEVSQ0VOVEFHRSks
IExlbmd0aFR5cGU6OlBlcmNlbnQpOwotICAgIGVsc2UgaWYgKHNsaWNlcy0+cmlnaHQoKS0+aXND
YWxjdWxhdGVkUGVyY2VudGFnZVdpdGhMZW5ndGgoKSkKLSAgICAgICAgYm94LnJpZ2h0KCkgPSBM
ZW5ndGgoc2xpY2VzLT5yaWdodCgpLT5jc3NDYWxjVmFsdWUoKS0+Y3JlYXRlQ2FsY3VsYXRpb25W
YWx1ZShjb252ZXJzaW9uRGF0YSkpOwotICAgIGVsc2UgaWYgKHNsaWNlcy0+cmlnaHQoKS0+dmFs
dWVJRCgpICE9IENTU1ZhbHVlQXV0bykKLSAgICAgICAgYm94LnJpZ2h0KCkgPSBzbGljZXMtPnJp
Z2h0KCktPmNvbXB1dGVMZW5ndGg8TGVuZ3RoPihjb252ZXJzaW9uRGF0YSk7Ci0KLSAgICBpZiAo
c2xpY2VzLT5ib3R0b20oKS0+aXNOdW1iZXIoKSkKLSAgICAgICAgYm94LmJvdHRvbSgpID0gTGVu
Z3RoKHNsaWNlcy0+Ym90dG9tKCktPmZsb2F0VmFsdWUoKSwgTGVuZ3RoVHlwZTo6UmVsYXRpdmUp
OwotICAgIGVsc2UgaWYgKHNsaWNlcy0+Ym90dG9tKCktPmlzUGVyY2VudGFnZSgpKQotICAgICAg
ICBib3guYm90dG9tKCkgPSBMZW5ndGgoc2xpY2VzLT5ib3R0b20oKS0+ZG91YmxlVmFsdWUoQ1NT
VW5pdFR5cGU6OkNTU19QRVJDRU5UQUdFKSwgTGVuZ3RoVHlwZTo6UGVyY2VudCk7Ci0gICAgZWxz
ZSBpZiAoc2xpY2VzLT5ib3R0b20oKS0+aXNDYWxjdWxhdGVkUGVyY2VudGFnZVdpdGhMZW5ndGgo
KSkKLSAgICAgICAgYm94LmJvdHRvbSgpID0gTGVuZ3RoKHNsaWNlcy0+Ym90dG9tKCktPmNzc0Nh
bGNWYWx1ZSgpLT5jcmVhdGVDYWxjdWxhdGlvblZhbHVlKGNvbnZlcnNpb25EYXRhKSk7Ci0gICAg
ZWxzZSBpZiAoc2xpY2VzLT5ib3R0b20oKS0+dmFsdWVJRCgpICE9IENTU1ZhbHVlQXV0bykKLSAg
ICAgICAgYm94LmJvdHRvbSgpID0gc2xpY2VzLT5ib3R0b20oKS0+Y29tcHV0ZUxlbmd0aDxMZW5n
dGg+KGNvbnZlcnNpb25EYXRhKTsKLQotICAgIGlmIChzbGljZXMtPmxlZnQoKS0+aXNOdW1iZXIo
KSkKLSAgICAgICAgYm94LmxlZnQoKSA9IExlbmd0aChzbGljZXMtPmxlZnQoKS0+ZmxvYXRWYWx1
ZSgpLCBMZW5ndGhUeXBlOjpSZWxhdGl2ZSk7Ci0gICAgZWxzZSBpZiAoc2xpY2VzLT5sZWZ0KCkt
PmlzUGVyY2VudGFnZSgpKQotICAgICAgICBib3gubGVmdCgpID0gTGVuZ3RoKHNsaWNlcy0+bGVm
dCgpLT5kb3VibGVWYWx1ZShDU1NVbml0VHlwZTo6Q1NTX1BFUkNFTlRBR0UpLCBMZW5ndGhUeXBl
OjpQZXJjZW50KTsKLSAgICBlbHNlIGlmIChzbGljZXMtPmxlZnQoKS0+aXNDYWxjdWxhdGVkUGVy
Y2VudGFnZVdpdGhMZW5ndGgoKSkKLSAgICAgICAgYm94LmxlZnQoKSA9IExlbmd0aChzbGljZXMt
PmxlZnQoKS0+Y3NzQ2FsY1ZhbHVlKCktPmNyZWF0ZUNhbGN1bGF0aW9uVmFsdWUoY29udmVyc2lv
bkRhdGEpKTsKLSAgICBlbHNlIGlmIChzbGljZXMtPmxlZnQoKS0+dmFsdWVJRCgpICE9IENTU1Zh
bHVlQXV0bykKLSAgICAgICAgYm94LmxlZnQoKSA9IHNsaWNlcy0+bGVmdCgpLT5jb21wdXRlTGVu
Z3RoPExlbmd0aD4oY29udmVyc2lvbkRhdGEpOworICAgIGlmIChxdWFkLT50b3AoKS0+aXNOdW1i
ZXIoKSkKKyAgICAgICAgYm94LnRvcCgpID0gTGVuZ3RoKHF1YWQtPnRvcCgpLT5mbG9hdFZhbHVl
KCksIExlbmd0aFR5cGU6OlJlbGF0aXZlKTsKKyAgICBlbHNlIGlmIChxdWFkLT50b3AoKS0+aXNQ
ZXJjZW50YWdlKCkpCisgICAgICAgIGJveC50b3AoKSA9IExlbmd0aChxdWFkLT50b3AoKS0+ZG91
YmxlVmFsdWUoQ1NTVW5pdFR5cGU6OkNTU19QRVJDRU5UQUdFKSwgTGVuZ3RoVHlwZTo6UGVyY2Vu
dCk7CisgICAgZWxzZSBpZiAocXVhZC0+dG9wKCktPmlzQ2FsY3VsYXRlZFBlcmNlbnRhZ2VXaXRo
TGVuZ3RoKCkpCisgICAgICAgIGJveC50b3AoKSA9IExlbmd0aChxdWFkLT50b3AoKS0+Y3NzQ2Fs
Y1ZhbHVlKCktPmNyZWF0ZUNhbGN1bGF0aW9uVmFsdWUoY29udmVyc2lvbkRhdGEpKTsKKyAgICBl
bHNlIGlmIChxdWFkLT50b3AoKS0+dmFsdWVJRCgpICE9IENTU1ZhbHVlQXV0bykKKyAgICAgICAg
Ym94LnRvcCgpID0gcXVhZC0+dG9wKCktPmNvbXB1dGVMZW5ndGg8TGVuZ3RoPihjb252ZXJzaW9u
RGF0YSk7CisKKyAgICBpZiAocXVhZC0+cmlnaHQoKS0+aXNOdW1iZXIoKSkKKyAgICAgICAgYm94
LnJpZ2h0KCkgPSBMZW5ndGgocXVhZC0+cmlnaHQoKS0+ZmxvYXRWYWx1ZSgpLCBMZW5ndGhUeXBl
OjpSZWxhdGl2ZSk7CisgICAgZWxzZSBpZiAocXVhZC0+cmlnaHQoKS0+aXNQZXJjZW50YWdlKCkp
CisgICAgICAgIGJveC5yaWdodCgpID0gTGVuZ3RoKHF1YWQtPnJpZ2h0KCktPmRvdWJsZVZhbHVl
KENTU1VuaXRUeXBlOjpDU1NfUEVSQ0VOVEFHRSksIExlbmd0aFR5cGU6OlBlcmNlbnQpOworICAg
IGVsc2UgaWYgKHF1YWQtPnJpZ2h0KCktPmlzQ2FsY3VsYXRlZFBlcmNlbnRhZ2VXaXRoTGVuZ3Ro
KCkpCisgICAgICAgIGJveC5yaWdodCgpID0gTGVuZ3RoKHF1YWQtPnJpZ2h0KCktPmNzc0NhbGNW
YWx1ZSgpLT5jcmVhdGVDYWxjdWxhdGlvblZhbHVlKGNvbnZlcnNpb25EYXRhKSk7CisgICAgZWxz
ZSBpZiAocXVhZC0+cmlnaHQoKS0+dmFsdWVJRCgpICE9IENTU1ZhbHVlQXV0bykKKyAgICAgICAg
Ym94LnJpZ2h0KCkgPSBxdWFkLT5yaWdodCgpLT5jb21wdXRlTGVuZ3RoPExlbmd0aD4oY29udmVy
c2lvbkRhdGEpOworCisgICAgaWYgKHF1YWQtPmJvdHRvbSgpLT5pc051bWJlcigpKQorICAgICAg
ICBib3guYm90dG9tKCkgPSBMZW5ndGgocXVhZC0+Ym90dG9tKCktPmZsb2F0VmFsdWUoKSwgTGVu
Z3RoVHlwZTo6UmVsYXRpdmUpOworICAgIGVsc2UgaWYgKHF1YWQtPmJvdHRvbSgpLT5pc1BlcmNl
bnRhZ2UoKSkKKyAgICAgICAgYm94LmJvdHRvbSgpID0gTGVuZ3RoKHF1YWQtPmJvdHRvbSgpLT5k
b3VibGVWYWx1ZShDU1NVbml0VHlwZTo6Q1NTX1BFUkNFTlRBR0UpLCBMZW5ndGhUeXBlOjpQZXJj
ZW50KTsKKyAgICBlbHNlIGlmIChxdWFkLT5ib3R0b20oKS0+aXNDYWxjdWxhdGVkUGVyY2VudGFn
ZVdpdGhMZW5ndGgoKSkKKyAgICAgICAgYm94LmJvdHRvbSgpID0gTGVuZ3RoKHF1YWQtPmJvdHRv
bSgpLT5jc3NDYWxjVmFsdWUoKS0+Y3JlYXRlQ2FsY3VsYXRpb25WYWx1ZShjb252ZXJzaW9uRGF0
YSkpOworICAgIGVsc2UgaWYgKHF1YWQtPmJvdHRvbSgpLT52YWx1ZUlEKCkgIT0gQ1NTVmFsdWVB
dXRvKQorICAgICAgICBib3guYm90dG9tKCkgPSBxdWFkLT5ib3R0b20oKS0+Y29tcHV0ZUxlbmd0
aDxMZW5ndGg+KGNvbnZlcnNpb25EYXRhKTsKKworICAgIGlmIChxdWFkLT5sZWZ0KCktPmlzTnVt
YmVyKCkpCisgICAgICAgIGJveC5sZWZ0KCkgPSBMZW5ndGgocXVhZC0+bGVmdCgpLT5mbG9hdFZh
bHVlKCksIExlbmd0aFR5cGU6OlJlbGF0aXZlKTsKKyAgICBlbHNlIGlmIChxdWFkLT5sZWZ0KCkt
PmlzUGVyY2VudGFnZSgpKQorICAgICAgICBib3gubGVmdCgpID0gTGVuZ3RoKHF1YWQtPmxlZnQo
KS0+ZG91YmxlVmFsdWUoQ1NTVW5pdFR5cGU6OkNTU19QRVJDRU5UQUdFKSwgTGVuZ3RoVHlwZTo6
UGVyY2VudCk7CisgICAgZWxzZSBpZiAocXVhZC0+bGVmdCgpLT5pc0NhbGN1bGF0ZWRQZXJjZW50
YWdlV2l0aExlbmd0aCgpKQorICAgICAgICBib3gubGVmdCgpID0gTGVuZ3RoKHF1YWQtPmxlZnQo
KS0+Y3NzQ2FsY1ZhbHVlKCktPmNyZWF0ZUNhbGN1bGF0aW9uVmFsdWUoY29udmVyc2lvbkRhdGEp
KTsKKyAgICBlbHNlIGlmIChxdWFkLT5sZWZ0KCktPnZhbHVlSUQoKSAhPSBDU1NWYWx1ZUF1dG8p
CisgICAgICAgIGJveC5sZWZ0KCkgPSBxdWFkLT5sZWZ0KCktPmNvbXB1dGVMZW5ndGg8TGVuZ3Ro
Pihjb252ZXJzaW9uRGF0YSk7CiAKICAgICByZXR1cm4gYm94OwogfQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvY3NzL0NTU1RvU3R5bGVNYXAuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NU
b1N0eWxlTWFwLmgKaW5kZXggNGM5YmI0NGNiOTMyODhkZjc2NGUwNTkwYTM2ZGJlYzdiMWZmNzhj
OS4uYTBkMWIxZDY2OWY0OWM4N2Q0ZTEzODIyOTI1ZTE1Yzk4MmY0OTEyMyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvY3NzL0NTU1RvU3R5bGVNYXAuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTVG9TdHlsZU1hcC5oCkBAIC03MCw4ICs3MCw5IEBAIHB1YmxpYzoKICAgICB2b2lkIG1h
cEFuaW1hdGlvblRpbWluZ0Z1bmN0aW9uKEFuaW1hdGlvbiYsIGNvbnN0IENTU1ZhbHVlJik7CiAg
ICAgdm9pZCBtYXBBbmltYXRpb25Db21wb3NpdGVPcGVyYXRpb24oQW5pbWF0aW9uJiwgY29uc3Qg
Q1NTVmFsdWUmKTsKIAotICAgIHZvaWQgbWFwTmluZVBpZWNlSW1hZ2UoQ1NTUHJvcGVydHlJRCwg
Q1NTVmFsdWUqLCBOaW5lUGllY2VJbWFnZSYpOworICAgIHZvaWQgbWFwTmluZVBpZWNlSW1hZ2Uo
Q1NTVmFsdWUqLCBOaW5lUGllY2VJbWFnZSYpOwogICAgIHZvaWQgbWFwTmluZVBpZWNlSW1hZ2VT
bGljZShDU1NWYWx1ZSYsIE5pbmVQaWVjZUltYWdlJik7CisgICAgdm9pZCBtYXBOaW5lUGllY2VJ
bWFnZVdpZHRoKENTU1ZhbHVlJiwgTmluZVBpZWNlSW1hZ2UmKTsKICAgICBMZW5ndGhCb3ggbWFw
TmluZVBpZWNlSW1hZ2VRdWFkKENTU1ZhbHVlJik7CiAgICAgdm9pZCBtYXBOaW5lUGllY2VJbWFn
ZVJlcGVhdChDU1NWYWx1ZSYsIE5pbmVQaWVjZUltYWdlJik7CiAKQEAgLTc5LDYgKzgwLDcgQEAg
cHJpdmF0ZToKICAgICBSZW5kZXJTdHlsZSogc3R5bGUoKSBjb25zdDsKICAgICBib29sIHVzZVNW
R1pvb21SdWxlcygpIGNvbnN0OwogICAgIFJlZlB0cjxTdHlsZUltYWdlPiBzdHlsZUltYWdlKENT
U1ZhbHVlJik7CisgICAgTGVuZ3RoQm94IG1hcE5pbmVQaWVjZUltYWdlUXVhZChRdWFkKik7CiAK
ICAgICAvLyBGSVhNRTogVGhpcyB0eXBlIGNhbiBtZXJnZSBpbnRvIEJ1aWxkZXJTdGF0ZS4KICAg
ICBTdHlsZTo6QnVpbGRlclN0YXRlJiBtX2J1aWxkZXJTdGF0ZTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWUu
Y3BwCmluZGV4IGNlZDEzOTQyOTE2YmFlYzU3OGIzOGQzZTc4OTU3NzQwMGQ3OGFhNGUuLmY5MzMz
OGFmNDFjZDBiMWEzMzBlZGU1MTJjMzg3NDA2NzdlMWFkNTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NWYWx1ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVl
LmNwcApAQCAtMzEsNiArMzEsNyBAQAogCiAjaW5jbHVkZSAiQ1NTQXNwZWN0UmF0aW9WYWx1ZS5o
IgogI2luY2x1ZGUgIkNTU0JvcmRlckltYWdlU2xpY2VWYWx1ZS5oIgorI2luY2x1ZGUgIkNTU0Jv
cmRlckltYWdlV2lkdGhWYWx1ZS5oIgogI2luY2x1ZGUgIkNTU0NhbGNWYWx1ZS5oIgogI2luY2x1
ZGUgIkNTU0NhbnZhc1ZhbHVlLmgiCiAjaW5jbHVkZSAiQ1NTQ29udGVudERpc3RyaWJ1dGlvblZh
bHVlLmgiCkBAIC0xNDUsNiArMTQ2LDggQEAgYm9vbCBDU1NWYWx1ZTo6ZXF1YWxzKGNvbnN0IENT
U1ZhbHVlJiBvdGhlcikgY29uc3QKICAgICAgICAgICAgIHJldHVybiBjb21wYXJlQ1NTVmFsdWVz
PENTU0FzcGVjdFJhdGlvVmFsdWU+KCp0aGlzLCBvdGhlcik7CiAgICAgICAgIGNhc2UgQm9yZGVy
SW1hZ2VTbGljZUNsYXNzOgogICAgICAgICAgICAgcmV0dXJuIGNvbXBhcmVDU1NWYWx1ZXM8Q1NT
Qm9yZGVySW1hZ2VTbGljZVZhbHVlPigqdGhpcywgb3RoZXIpOworICAgICAgICBjYXNlIEJvcmRl
ckltYWdlV2lkdGhDbGFzczoKKyAgICAgICAgICAgIHJldHVybiBjb21wYXJlQ1NTVmFsdWVzPENT
U0JvcmRlckltYWdlV2lkdGhWYWx1ZT4oKnRoaXMsIG90aGVyKTsKICAgICAgICAgY2FzZSBDYW52
YXNDbGFzczoKICAgICAgICAgICAgIHJldHVybiBjb21wYXJlQ1NTVmFsdWVzPENTU0NhbnZhc1Zh
bHVlPigqdGhpcywgb3RoZXIpOwogICAgICAgICBjYXNlIE5hbWVkSW1hZ2VDbGFzczoKQEAgLTI1
MCw2ICsyNTMsOCBAQCBTdHJpbmcgQ1NTVmFsdWU6OmNzc1RleHQoKSBjb25zdAogICAgICAgICBy
ZXR1cm4gZG93bmNhc3Q8Q1NTQXNwZWN0UmF0aW9WYWx1ZT4oKnRoaXMpLmN1c3RvbUNTU1RleHQo
KTsKICAgICBjYXNlIEJvcmRlckltYWdlU2xpY2VDbGFzczoKICAgICAgICAgcmV0dXJuIGRvd25j
YXN0PENTU0JvcmRlckltYWdlU2xpY2VWYWx1ZT4oKnRoaXMpLmN1c3RvbUNTU1RleHQoKTsKKyAg
ICBjYXNlIEJvcmRlckltYWdlV2lkdGhDbGFzczoKKyAgICAgICAgcmV0dXJuIGRvd25jYXN0PENT
U0JvcmRlckltYWdlV2lkdGhWYWx1ZT4oKnRoaXMpLmN1c3RvbUNTU1RleHQoKTsKICAgICBjYXNl
IENhbnZhc0NsYXNzOgogICAgICAgICByZXR1cm4gZG93bmNhc3Q8Q1NTQ2FudmFzVmFsdWU+KCp0
aGlzKS5jdXN0b21DU1NUZXh0KCk7CiAgICAgY2FzZSBOYW1lZEltYWdlQ2xhc3M6CkBAIC0zNjQs
NiArMzY5LDkgQEAgdm9pZCBDU1NWYWx1ZTo6ZGVzdHJveSgpCiAgICAgY2FzZSBCb3JkZXJJbWFn
ZVNsaWNlQ2xhc3M6CiAgICAgICAgIGRlbGV0ZSBkb3duY2FzdDxDU1NCb3JkZXJJbWFnZVNsaWNl
VmFsdWU+KHRoaXMpOwogICAgICAgICByZXR1cm47CisgICAgY2FzZSBCb3JkZXJJbWFnZVdpZHRo
Q2xhc3M6CisgICAgICAgIGRlbGV0ZSBkb3duY2FzdDxDU1NCb3JkZXJJbWFnZVdpZHRoVmFsdWU+
KHRoaXMpOworICAgICAgICByZXR1cm47CiAgICAgY2FzZSBDYW52YXNDbGFzczoKICAgICAgICAg
ZGVsZXRlIGRvd25jYXN0PENTU0NhbnZhc1ZhbHVlPih0aGlzKTsKICAgICAgICAgcmV0dXJuOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlLmggYi9Tb3VyY2UvV2ViQ29y
ZS9jc3MvQ1NTVmFsdWUuaAppbmRleCBlNjc3N2ViODBlMTMzYzI5Y2FhNjI1Njk2ODNjZDVkMGNm
ZjdhMGU3Li5kYWRlNThkYTIwNjhiN2VlY2NkYWEzMzE5MThjNDRkM2E3NmUwNWM4IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTVmFsdWUuaApAQCAtODksNiArODksNyBAQCBwdWJsaWM6CiAKICAgICBib29sIGlzQXNw
ZWN0UmF0aW9WYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1fY2xhc3NUeXBlID09IEFzcGVjdFJhdGlv
Q2xhc3M7IH0KICAgICBib29sIGlzQm9yZGVySW1hZ2VTbGljZVZhbHVlKCkgY29uc3QgeyByZXR1
cm4gbV9jbGFzc1R5cGUgPT0gQm9yZGVySW1hZ2VTbGljZUNsYXNzOyB9CisgICAgYm9vbCBpc0Jv
cmRlckltYWdlV2lkdGhWYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1fY2xhc3NUeXBlID09IEJvcmRl
ckltYWdlV2lkdGhDbGFzczsgfQogICAgIGJvb2wgaXNDYW52YXNWYWx1ZSgpIGNvbnN0IHsgcmV0
dXJuIG1fY2xhc3NUeXBlID09IENhbnZhc0NsYXNzOyB9CiAgICAgYm9vbCBpc0Nyb3NzZmFkZVZh
bHVlKCkgY29uc3QgeyByZXR1cm4gbV9jbGFzc1R5cGUgPT0gQ3Jvc3NmYWRlQ2xhc3M7IH0KICAg
ICBib29sIGlzQ3Vyc29ySW1hZ2VWYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1fY2xhc3NUeXBlID09
IEN1cnNvckltYWdlQ2xhc3M7IH0KQEAgLTE5MSw2ICsxOTIsNyBAQCBwcm90ZWN0ZWQ6CiAgICAg
ICAgIC8vIE90aGVyIGNsYXNzIHR5cGVzLgogICAgICAgICBBc3BlY3RSYXRpb0NsYXNzLAogICAg
ICAgICBCb3JkZXJJbWFnZVNsaWNlQ2xhc3MsCisgICAgICAgIEJvcmRlckltYWdlV2lkdGhDbGFz
cywKICAgICAgICAgRm9udEZlYXR1cmVDbGFzcywKICAgICAgICAgRm9udFZhcmlhdGlvbkNsYXNz
LAogICAgICAgICBGb250Q2xhc3MsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5
bGVQcm9wZXJ0aWVzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVByb3BlcnRpZXMuY3Bw
CmluZGV4IGYwNDEzYzE3ZmZmYTI4MzgxMWZlMjUxN2ZkZmQ2MWJjZGNmOGIyNTkuLjI5YTljMTUz
NzE1Yjk0OTEwYjNmN2EyMzcwOGUwMTExN2E5MjBmYTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2Nzcy9TdHlsZVByb3BlcnRpZXMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHls
ZVByb3BlcnRpZXMuY3BwCkBAIC0yMyw2ICsyMyw3IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAj
aW5jbHVkZSAiU3R5bGVQcm9wZXJ0aWVzLmgiCiAKKyNpbmNsdWRlICJDU1NCb3JkZXJJbWFnZVdp
ZHRoVmFsdWUuaCIKICNpbmNsdWRlICJDU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uaCIKICNp
bmNsdWRlICJDU1NDdXN0b21Qcm9wZXJ0eVZhbHVlLmgiCiAjaW5jbHVkZSAiQ1NTRGVmZXJyZWRQ
YXJzZXIuaCIKQEAgLTIxOSw3ICsyMjAsOCBAQCBTdHJpbmcgU3R5bGVQcm9wZXJ0aWVzOjpnZXRQ
cm9wZXJ0eVZhbHVlKENTU1Byb3BlcnR5SUQgcHJvcGVydHlJRCkgY29uc3QKICAgICBjYXNlIENT
U1Byb3BlcnR5Qm9yZGVyQmxvY2tFbmQ6CiAgICAgICAgIHJldHVybiBnZXRTaG9ydGhhbmRWYWx1
ZShib3JkZXJCbG9ja0VuZFNob3J0aGFuZCgpKTsKICAgICBjYXNlIENTU1Byb3BlcnR5Qm9yZGVy
SW1hZ2U6Ci0gICAgICAgIHJldHVybiBib3JkZXJJbWFnZVByb3BlcnR5VmFsdWUoKTsKKyAgICBj
YXNlIENTU1Byb3BlcnR5V2Via2l0Qm9yZGVySW1hZ2U6CisgICAgICAgIHJldHVybiBib3JkZXJJ
bWFnZVByb3BlcnR5VmFsdWUocHJvcGVydHlJRCk7CiAgICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRl
cklubGluZToKICAgICAgICAgcmV0dXJuIGJvcmRlclByb3BlcnR5VmFsdWUoYm9yZGVySW5saW5l
V2lkdGhTaG9ydGhhbmQoKSwgYm9yZGVySW5saW5lU3R5bGVTaG9ydGhhbmQoKSwgYm9yZGVySW5s
aW5lQ29sb3JTaG9ydGhhbmQoKSk7CiAgICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlcklubGluZUNv
bG9yOgpAQCAtOTAzLDcgKzkwNSw3IEBAIFN0cmluZyBTdHlsZVByb3BlcnRpZXM6OmdldEFsaWdu
bWVudFNob3J0aGFuZFZhbHVlKGNvbnN0IFN0eWxlUHJvcGVydHlTaG9ydGhhbmQmCiAgICAgcmV0
dXJuIHZhbHVlOwogfQogCi1TdHJpbmcgU3R5bGVQcm9wZXJ0aWVzOjpib3JkZXJJbWFnZVByb3Bl
cnR5VmFsdWUoKSBjb25zdAorU3RyaW5nIFN0eWxlUHJvcGVydGllczo6Ym9yZGVySW1hZ2VQcm9w
ZXJ0eVZhbHVlKENTU1Byb3BlcnR5SUQgcHJvcGVydHlJRCkgY29uc3QKIHsKICAgICBjb25zdCBT
dHlsZVByb3BlcnR5U2hvcnRoYW5kJiBzaG9ydGhhbmQgPSBib3JkZXJJbWFnZVNob3J0aGFuZCgp
OwogICAgIFN0cmluZ0J1aWxkZXIgcmVzdWx0OwpAQCAtOTM2LDYgKzkzOCwxNiBAQCBTdHJpbmcg
U3R5bGVQcm9wZXJ0aWVzOjpib3JkZXJJbWFnZVByb3BlcnR5VmFsdWUoKSBjb25zdAogICAgICAg
ICBpZiAob21pdHRlZFNsaWNlICYmIChsb25naGFuZCA9PSBDU1NQcm9wZXJ0eUJvcmRlckltYWdl
V2lkdGggfHwgbG9uZ2hhbmQgPT0gQ1NTUHJvcGVydHlCb3JkZXJJbWFnZU91dHNldCkpCiAgICAg
ICAgICAgICByZXR1cm4gU3RyaW5nKCk7CiAKKyAgICAgICAgLy8gLXdlYmtpdC1ib3JkZXItaW1h
Z2UgaGFzIGEgbGVnYWN5IGJlaGF2aW9yIHRoYXQgbWFrZXMgZml4ZWQgYm9yZGVyIHNsaWNlcyBh
bHNvIHNldCB0aGUgYm9yZGVyIHdpZHRocy4KKyAgICAgICAgaWYgKGlzPENTU0JvcmRlckltYWdl
V2lkdGhWYWx1ZT4odmFsdWUuZ2V0KCkpKSB7CisgICAgICAgICAgICBhdXRvKiBib3JkZXJJbWFn
ZVdpZHRoID0gZG93bmNhc3Q8Q1NTQm9yZGVySW1hZ2VXaWR0aFZhbHVlPih2YWx1ZS5nZXQoKSk7
CisgICAgICAgICAgICBRdWFkKiB3aWR0aHMgPSBib3JkZXJJbWFnZVdpZHRoLT53aWR0aHMoKTsK
KyAgICAgICAgICAgIGJvb2wgb3ZlcnJpZGVzQm9yZGVyV2lkdGhzID0gcHJvcGVydHlJRCA9PSBD
U1NQcm9wZXJ0eVdlYmtpdEJvcmRlckltYWdlICYmIHdpZHRocyAmJiAod2lkdGhzLT50b3AoKS0+
aXNMZW5ndGgoKSB8fCB3aWR0aHMtPnJpZ2h0KCktPmlzTGVuZ3RoKCkgfHwgd2lkdGhzLT5ib3R0
b20oKS0+aXNMZW5ndGgoKSB8fCB3aWR0aHMtPmxlZnQoKS0+aXNMZW5ndGgoKSk7CisgICAgICAg
ICAgICBpZiAob3ZlcnJpZGVzQm9yZGVyV2lkdGhzICE9IGJvcmRlckltYWdlV2lkdGgtPm1fb3Zl
cnJpZGVzQm9yZGVyV2lkdGhzKQorICAgICAgICAgICAgICAgIHJldHVybiBTdHJpbmcoKTsKKyAg
ICAgICAgICAgIHZhbHVlID0gYm9yZGVySW1hZ2VXaWR0aC0+bV93aWR0aHM7CisgICAgICAgIH0K
KwogICAgICAgICAvLyBJZiBhIGxvbmdoYW5kIGlzIHNldCB0byBhIGNzcy13aWRlIGtleXdvcmQs
IHRoZSBvdGhlcnMgc2hvdWxkIGJlIHRoZSBzYW1lLgogICAgICAgICBTdHJpbmcgdmFsdWVUZXh0
ID0gdmFsdWUtPmNzc1RleHQoKTsKICAgICAgICAgaWYgKGlzQ1NTV2lkZVZhbHVlS2V5d29yZCh2
YWx1ZVRleHQpKSB7CkBAIC0xNDA5LDcgKzE0MjEsNyBAQCBTdHJpbmcgU3R5bGVQcm9wZXJ0aWVz
Ojphc1RleHQoKSBjb25zdAogICAgICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlckltYWdl
V2lkdGg6CiAgICAgICAgICAgICBjYXNlIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VPdXRzZXQ6CiAg
ICAgICAgICAgICBjYXNlIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VSZXBlYXQ6Ci0gICAgICAgICAg
ICAgICAgc2hvcnRoYW5kUHJvcGVydHlJRCA9IENTU1Byb3BlcnR5Qm9yZGVySW1hZ2U7CisgICAg
ICAgICAgICAgICAgc2VyaWFsaXplQm9yZGVyU2hvcnRoYW5kKENTU1Byb3BlcnR5Qm9yZGVySW1h
Z2UsIENTU1Byb3BlcnR5V2Via2l0Qm9yZGVySW1hZ2UpOwogICAgICAgICAgICAgICAgIGJyZWFr
OwogICAgICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eUZvbnRGYW1pbHk6CiAgICAgICAgICAgICBj
YXNlIENTU1Byb3BlcnR5TGluZUhlaWdodDoKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nz
cy9TdHlsZVByb3BlcnRpZXMuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVByb3BlcnRpZXMu
aAppbmRleCBkZDM5MGQ1OTIyZGM3YmQzY2YwYjhlMjZjZGFhMzJmZmExNmZlZmRjLi5kYTVjZjYx
M2JlMWYwMmQ3NDBiYjBiNmIyZWUwOWMzNDdiNjFjYzI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9jc3MvU3R5bGVQcm9wZXJ0aWVzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxl
UHJvcGVydGllcy5oCkBAIC0xNjUsNyArMTY1LDcgQEAgcHJpdmF0ZToKICAgICBTdHJpbmcgZ2V0
U2hvcnRoYW5kVmFsdWUoY29uc3QgU3R5bGVQcm9wZXJ0eVNob3J0aGFuZCYsIGNvbnN0IGNoYXIq
IHNlcGFyYXRvciA9ICIgIikgY29uc3Q7CiAgICAgU3RyaW5nIGdldENvbW1vblZhbHVlKGNvbnN0
IFN0eWxlUHJvcGVydHlTaG9ydGhhbmQmKSBjb25zdDsKICAgICBTdHJpbmcgZ2V0QWxpZ25tZW50
U2hvcnRoYW5kVmFsdWUoY29uc3QgU3R5bGVQcm9wZXJ0eVNob3J0aGFuZCYpIGNvbnN0OwotICAg
IFN0cmluZyBib3JkZXJJbWFnZVByb3BlcnR5VmFsdWUoKSBjb25zdDsKKyAgICBTdHJpbmcgYm9y
ZGVySW1hZ2VQcm9wZXJ0eVZhbHVlKENTU1Byb3BlcnR5SUQpIGNvbnN0OwogICAgIFN0cmluZyBi
b3JkZXJQcm9wZXJ0eVZhbHVlKGNvbnN0IFN0eWxlUHJvcGVydHlTaG9ydGhhbmQmLCBjb25zdCBT
dHlsZVByb3BlcnR5U2hvcnRoYW5kJiwgY29uc3QgU3R5bGVQcm9wZXJ0eVNob3J0aGFuZCYpIGNv
bnN0OwogICAgIFN0cmluZyBwYWdlQnJlYWtQcm9wZXJ0eVZhbHVlKGNvbnN0IFN0eWxlUHJvcGVy
dHlTaG9ydGhhbmQmKSBjb25zdDsKICAgICBTdHJpbmcgZ2V0TGF5ZXJlZFNob3J0aGFuZFZhbHVl
KGNvbnN0IFN0eWxlUHJvcGVydHlTaG9ydGhhbmQmKSBjb25zdDsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXIuY3BwIGIvU291cmNlL1dlYkNv
cmUvY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlci5jcHAKaW5kZXggYzVmMzQ0MTY1ZjQ2MTYy
ZmY4ZWQxMTAzYTgwYjg4YWUxOTA2MjM3Zi4uZDFiMDJiYmJmYjUyMzM3ZGI1ZjgwNjc1ZWE3MmQy
ZmU2Y2YwYTNlNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQcm9w
ZXJ0eVBhcnNlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQcm9wZXJ0
eVBhcnNlci5jcHAKQEAgLTMzLDYgKzMzLDcgQEAKICNpbmNsdWRlICJDU1NCYXNpY1NoYXBlcy5o
IgogI2luY2x1ZGUgIkNTU0JvcmRlckltYWdlLmgiCiAjaW5jbHVkZSAiQ1NTQm9yZGVySW1hZ2VT
bGljZVZhbHVlLmgiCisjaW5jbHVkZSAiQ1NTQm9yZGVySW1hZ2VXaWR0aFZhbHVlLmgiCiAjaW5j
bHVkZSAiQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmgiCiAjaW5jbHVkZSAiQ1NTQ29udGVu
dERpc3RyaWJ1dGlvblZhbHVlLmgiCiAjaW5jbHVkZSAiQ1NTQ3Vyc29ySW1hZ2VWYWx1ZS5oIgpA
QCAtMzAzNyw3ICszMDM4LDcgQEAgc3RhdGljIFJlZlB0cjxDU1NWYWx1ZT4gY29uc3VtZUJvcmRl
ckltYWdlT3V0c2V0KENTU1BhcnNlclRva2VuUmFuZ2UmIHJhbmdlKQogICAgIHJldHVybiBDU1NW
YWx1ZVBvb2w6OnNpbmdsZXRvbigpLmNyZWF0ZVZhbHVlKFdURk1vdmUocXVhZCkpOwogfQogCi1z
dGF0aWMgUmVmUHRyPENTU1ZhbHVlPiBjb25zdW1lQm9yZGVySW1hZ2VXaWR0aChDU1NQYXJzZXJU
b2tlblJhbmdlJiByYW5nZSkKK3N0YXRpYyBSZWZQdHI8Q1NTVmFsdWU+IGNvbnN1bWVCb3JkZXJJ
bWFnZVdpZHRoKENTU1Byb3BlcnR5SUQgcHJvcGVydHksIENTU1BhcnNlclRva2VuUmFuZ2UmIHJh
bmdlKQogewogICAgIFJlZlB0cjxDU1NQcmltaXRpdmVWYWx1ZT4gd2lkdGhzWzRdOwogCkBAIC0z
MDU1LDE1ICszMDU2LDE4IEBAIHN0YXRpYyBSZWZQdHI8Q1NTVmFsdWU+IGNvbnN1bWVCb3JkZXJJ
bWFnZVdpZHRoKENTU1BhcnNlclRva2VuUmFuZ2UmIHJhbmdlKQogICAgIGlmICghd2lkdGhzWzBd
KQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICBjb21wbGV0ZTRTaWRlcyh3aWR0aHMpOwot
ICAgIAorCisgICAgLy8gLXdlYmtpdC1ib3JkZXItaW1hZ2UgaGFzIGEgbGVnYWN5IGJlaGF2aW9y
IHRoYXQgbWFrZXMgZml4ZWQgYm9yZGVyIHNsaWNlcyBhbHNvIHNldCB0aGUgYm9yZGVyIHdpZHRo
cy4KKyAgICBib29sIG92ZXJyaWRlc0JvcmRlcldpZHRocyA9IHByb3BlcnR5ID09IENTU1Byb3Bl
cnR5V2Via2l0Qm9yZGVySW1hZ2UgJiYgKHdpZHRoc1swXS0+aXNMZW5ndGgoKSB8fCB3aWR0aHNb
MV0tPmlzTGVuZ3RoKCkgfHwgd2lkdGhzWzJdLT5pc0xlbmd0aCgpIHx8IHdpZHRoc1szXS0+aXNM
ZW5ndGgoKSk7CisKICAgICAvLyBGSVhNRS1ORVdQQVJTRVI6IFNob3VsZCBqdXN0IGhhdmUgYSBD
U1NRdWFkVmFsdWUuCiAgICAgYXV0byBxdWFkID0gUXVhZDo6Y3JlYXRlKCk7CiAgICAgcXVhZC0+
c2V0VG9wKHdpZHRoc1swXS5yZWxlYXNlTm9uTnVsbCgpKTsKICAgICBxdWFkLT5zZXRSaWdodCh3
aWR0aHNbMV0ucmVsZWFzZU5vbk51bGwoKSk7CiAgICAgcXVhZC0+c2V0Qm90dG9tKHdpZHRoc1sy
XS5yZWxlYXNlTm9uTnVsbCgpKTsKICAgICBxdWFkLT5zZXRMZWZ0KHdpZHRoc1szXS5yZWxlYXNl
Tm9uTnVsbCgpKTsKLSAgICAKLSAgICByZXR1cm4gQ1NTVmFsdWVQb29sOjpzaW5nbGV0b24oKS5j
cmVhdGVWYWx1ZShXVEZNb3ZlKHF1YWQpKTsKKworICAgIHJldHVybiBDU1NCb3JkZXJJbWFnZVdp
ZHRoVmFsdWU6OmNyZWF0ZShDU1NWYWx1ZVBvb2w6OnNpbmdsZXRvbigpLmNyZWF0ZVZhbHVlKFdU
Rk1vdmUocXVhZCkpLCBvdmVycmlkZXNCb3JkZXJXaWR0aHMpOwogfQogCiBzdGF0aWMgYm9vbCBj
b25zdW1lQm9yZGVySW1hZ2VDb21wb25lbnRzKENTU1Byb3BlcnR5SUQgcHJvcGVydHksIENTU1Bh
cnNlclRva2VuUmFuZ2UmIHJhbmdlLCBjb25zdCBDU1NQYXJzZXJDb250ZXh0JiBjb250ZXh0LCBS
ZWZQdHI8Q1NTVmFsdWU+JiBzb3VyY2UsCkBAIC0zMDg1LDcgKzMwODksNyBAQCBzdGF0aWMgYm9v
bCBjb25zdW1lQm9yZGVySW1hZ2VDb21wb25lbnRzKENTU1Byb3BlcnR5SUQgcHJvcGVydHksIENT
U1BhcnNlclRva2VuUgogICAgICAgICAgICAgaWYgKHNsaWNlKSB7CiAgICAgICAgICAgICAgICAg
QVNTRVJUKCF3aWR0aCAmJiAhb3V0c2V0KTsKICAgICAgICAgICAgICAgICBpZiAoY29uc3VtZVNs
YXNoSW5jbHVkaW5nV2hpdGVzcGFjZShyYW5nZSkpIHsKLSAgICAgICAgICAgICAgICAgICAgd2lk
dGggPSBjb25zdW1lQm9yZGVySW1hZ2VXaWR0aChyYW5nZSk7CisgICAgICAgICAgICAgICAgICAg
IHdpZHRoID0gY29uc3VtZUJvcmRlckltYWdlV2lkdGgocHJvcGVydHksIHJhbmdlKTsKICAgICAg
ICAgICAgICAgICAgICAgaWYgKGNvbnN1bWVTbGFzaEluY2x1ZGluZ1doaXRlc3BhY2UocmFuZ2Up
KSB7CiAgICAgICAgICAgICAgICAgICAgICAgICBvdXRzZXQgPSBjb25zdW1lQm9yZGVySW1hZ2VP
dXRzZXQocmFuZ2UpOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFvdXRzZXQpCkBAIC00
NjIwLDggKzQ2MjQsNyBAQCBSZWZQdHI8Q1NTVmFsdWU+IENTU1Byb3BlcnR5UGFyc2VyOjpwYXJz
ZVNpbmdsZVZhbHVlKENTU1Byb3BlcnR5SUQgcHJvcGVydHksIENTUwogICAgICAgICByZXR1cm4g
Y29uc3VtZUJvcmRlckltYWdlT3V0c2V0KG1fcmFuZ2UpOwogICAgIGNhc2UgQ1NTUHJvcGVydHlC
b3JkZXJJbWFnZVdpZHRoOgogICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2VX
aWR0aDoKLSAgICAgICAgcmV0dXJuIGNvbnN1bWVCb3JkZXJJbWFnZVdpZHRoKG1fcmFuZ2UpOwot
ICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJJbWFnZToKKyAgICAgICAgcmV0dXJuIGNv
bnN1bWVCb3JkZXJJbWFnZVdpZHRoKHByb3BlcnR5LCBtX3JhbmdlKTsKICAgICBjYXNlIENTU1By
b3BlcnR5V2Via2l0TWFza0JveEltYWdlOgogICAgICAgICByZXR1cm4gY29uc3VtZVdlYmtpdEJv
cmRlckltYWdlKHByb3BlcnR5LCBtX3JhbmdlLCBtX2NvbnRleHQpOwogICAgIGNhc2UgQ1NTUHJv
cGVydHlXZWJraXRCb3hSZWZsZWN0OgpAQCAtNTU0OSwxOCArNTU1MiwxOSBAQCBib29sIENTU1By
b3BlcnR5UGFyc2VyOjpjb25zdW1lQm9yZGVySW1hZ2UoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eSwg
Ym9vbCBpbXBvcnRhbgogICAgICAgICBhdXRvJiB2YWx1ZVBvb2wgPSBDU1NWYWx1ZVBvb2w6OnNp
bmdsZXRvbigpOwogICAgICAgICBzd2l0Y2ggKHByb3BlcnR5KSB7CiAgICAgICAgIGNhc2UgQ1NT
UHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2U6Ci0gICAgICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJ
bXBsaWNpdERlZmF1bHQoQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2VTb3VyY2UsIENTU1By
b3BlcnR5V2Via2l0TWFza0JveEltYWdlLCBXVEZNb3ZlKHNvdXJjZSksIHZhbHVlUG9vbC5jcmVh
dGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQpOwotICAgICAgICAgICAgYWRkUHJv
cGVydHlXaXRoSW1wbGljaXREZWZhdWx0KENTU1Byb3BlcnR5V2Via2l0TWFza0JveEltYWdlU2xp
Y2UsIENTU1Byb3BlcnR5V2Via2l0TWFza0JveEltYWdlLCBXVEZNb3ZlKHNsaWNlKSwgdmFsdWVQ
b29sLmNyZWF0ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCksIGltcG9ydGFudCk7Ci0gICAgICAgICAg
ICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNpdERlZmF1bHQoQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94
SW1hZ2VXaWR0aCwgQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2UsIFdURk1vdmUod2lkdGgp
LCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFsdWUoKSwgaW1wb3J0YW50KTsKLSAg
ICAgICAgICAgIGFkZFByb3BlcnR5V2l0aEltcGxpY2l0RGVmYXVsdChDU1NQcm9wZXJ0eVdlYmtp
dE1hc2tCb3hJbWFnZU91dHNldCwgQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2UsIFdURk1v
dmUob3V0c2V0KSwgdmFsdWVQb29sLmNyZWF0ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCksIGltcG9y
dGFudCk7Ci0gICAgICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNpdERlZmF1bHQoQ1NTUHJv
cGVydHlXZWJraXRNYXNrQm94SW1hZ2VSZXBlYXQsIENTU1Byb3BlcnR5V2Via2l0TWFza0JveElt
YWdlLCBXVEZNb3ZlKHJlcGVhdCksIHZhbHVlUG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1
ZSgpLCBpbXBvcnRhbnQpOworICAgICAgICAgICAgYWRkUHJvcGVydHlXaXRoSW1wbGljaXREZWZh
dWx0KENTU1Byb3BlcnR5V2Via2l0TWFza0JveEltYWdlU291cmNlLCBwcm9wZXJ0eSwgV1RGTW92
ZShzb3VyY2UpLCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFsdWUoKSwgaW1wb3J0
YW50KTsKKyAgICAgICAgICAgIGFkZFByb3BlcnR5V2l0aEltcGxpY2l0RGVmYXVsdChDU1NQcm9w
ZXJ0eVdlYmtpdE1hc2tCb3hJbWFnZVNsaWNlLCBwcm9wZXJ0eSwgV1RGTW92ZShzbGljZSksIHZh
bHVlUG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQpOworICAgICAg
ICAgICAgYWRkUHJvcGVydHlXaXRoSW1wbGljaXREZWZhdWx0KENTU1Byb3BlcnR5V2Via2l0TWFz
a0JveEltYWdlV2lkdGgsIHByb3BlcnR5LCBXVEZNb3ZlKHdpZHRoKSwgdmFsdWVQb29sLmNyZWF0
ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCksIGltcG9ydGFudCk7CisgICAgICAgICAgICBhZGRQcm9w
ZXJ0eVdpdGhJbXBsaWNpdERlZmF1bHQoQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2VPdXRz
ZXQsIHByb3BlcnR5LCBXVEZNb3ZlKG91dHNldCksIHZhbHVlUG9vbC5jcmVhdGVJbXBsaWNpdElu
aXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQpOworICAgICAgICAgICAgYWRkUHJvcGVydHlXaXRoSW1w
bGljaXREZWZhdWx0KENTU1Byb3BlcnR5V2Via2l0TWFza0JveEltYWdlUmVwZWF0LCBwcm9wZXJ0
eSwgV1RGTW92ZShyZXBlYXQpLCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFsdWUo
KSwgaW1wb3J0YW50KTsKICAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgICBjYXNlIENT
U1Byb3BlcnR5Qm9yZGVySW1hZ2U6Ci0gICAgICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNp
dERlZmF1bHQoQ1NTUHJvcGVydHlCb3JkZXJJbWFnZVNvdXJjZSwgQ1NTUHJvcGVydHlCb3JkZXJJ
bWFnZSwgV1RGTW92ZShzb3VyY2UpLCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFs
dWUoKSwgaW1wb3J0YW50KTsKLSAgICAgICAgICAgIGFkZFByb3BlcnR5V2l0aEltcGxpY2l0RGVm
YXVsdChDU1NQcm9wZXJ0eUJvcmRlckltYWdlU2xpY2UsIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2Us
IFdURk1vdmUoc2xpY2UpLCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFsdWUoKSwg
aW1wb3J0YW50KTsKLSAgICAgICAgICAgIGFkZFByb3BlcnR5V2l0aEltcGxpY2l0RGVmYXVsdChD
U1NQcm9wZXJ0eUJvcmRlckltYWdlV2lkdGgsIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2UsIFdURk1v
dmUod2lkdGgpLCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFsdWUoKSwgaW1wb3J0
YW50KTsKLSAgICAgICAgICAgIGFkZFByb3BlcnR5V2l0aEltcGxpY2l0RGVmYXVsdChDU1NQcm9w
ZXJ0eUJvcmRlckltYWdlT3V0c2V0LCBDU1NQcm9wZXJ0eUJvcmRlckltYWdlLCBXVEZNb3ZlKG91
dHNldCksIHZhbHVlUG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQp
OwotICAgICAgICAgICAgYWRkUHJvcGVydHlXaXRoSW1wbGljaXREZWZhdWx0KENTU1Byb3BlcnR5
Qm9yZGVySW1hZ2VSZXBlYXQsIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2UsIFdURk1vdmUocmVwZWF0
KSwgdmFsdWVQb29sLmNyZWF0ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCksIGltcG9ydGFudCk7Cisg
ICAgICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJJbWFnZToKKyAgICAgICAgICAgIGFk
ZFByb3BlcnR5V2l0aEltcGxpY2l0RGVmYXVsdChDU1NQcm9wZXJ0eUJvcmRlckltYWdlU291cmNl
LCBwcm9wZXJ0eSwgV1RGTW92ZShzb3VyY2UpLCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0
aWFsVmFsdWUoKSwgaW1wb3J0YW50KTsKKyAgICAgICAgICAgIGFkZFByb3BlcnR5V2l0aEltcGxp
Y2l0RGVmYXVsdChDU1NQcm9wZXJ0eUJvcmRlckltYWdlU2xpY2UsIHByb3BlcnR5LCBXVEZNb3Zl
KHNsaWNlKSwgdmFsdWVQb29sLmNyZWF0ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCksIGltcG9ydGFu
dCk7CisgICAgICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNpdERlZmF1bHQoQ1NTUHJvcGVy
dHlCb3JkZXJJbWFnZVdpZHRoLCBwcm9wZXJ0eSwgV1RGTW92ZSh3aWR0aCksIHZhbHVlUG9vbC5j
cmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQpOworICAgICAgICAgICAgYWRk
UHJvcGVydHlXaXRoSW1wbGljaXREZWZhdWx0KENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VPdXRzZXQs
IHByb3BlcnR5LCBXVEZNb3ZlKG91dHNldCksIHZhbHVlUG9vbC5jcmVhdGVJbXBsaWNpdEluaXRp
YWxWYWx1ZSgpLCBpbXBvcnRhbnQpOworICAgICAgICAgICAgYWRkUHJvcGVydHlXaXRoSW1wbGlj
aXREZWZhdWx0KENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VSZXBlYXQsIHByb3BlcnR5LCBXVEZNb3Zl
KHJlcGVhdCksIHZhbHVlUG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgpLCBpbXBvcnRh
bnQpOwogICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAg
ICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKQEAgLTY0NDIsNiArNjQ0Niw3IEBAIGJvb2wgQ1NT
UHJvcGVydHlQYXJzZXI6OnBhcnNlU2hvcnRoYW5kKENTU1Byb3BlcnR5SUQgcHJvcGVydHksIGJv
b2wgaW1wb3J0YW50KQogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9CiAgICAgY2FzZSBDU1NQ
cm9wZXJ0eUJvcmRlckltYWdlOgorICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJJbWFn
ZToKICAgICAgICAgcmV0dXJuIGNvbnN1bWVCb3JkZXJJbWFnZShwcm9wZXJ0eSwgaW1wb3J0YW50
KTsKICAgICBjYXNlIENTU1Byb3BlcnR5UGFnZUJyZWFrQWZ0ZXI6CiAgICAgY2FzZSBDU1NQcm9w
ZXJ0eVBhZ2VCcmVha0JlZm9yZToKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9zdHlsZS9Cb3JkZXJEYXRhLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvQm9y
ZGVyRGF0YS5oCmluZGV4IGU0Mzk4M2UyMmJhM2UyYzIxNDFiMTZjMDgxNGJkYWJjODM5YzgyYTQu
LjU2OGY1OThkZTgwMjhhOTE4ODJhZGFjMjRjMWRlZjQ5YmI0YTRjNDUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9Cb3JkZXJEYXRhLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL3N0eWxlL0JvcmRlckRhdGEuaApAQCAtNjksNyArNjksOSBAQCBwdWJs
aWM6CiAgICAgZmxvYXQgYm9yZGVyTGVmdFdpZHRoKCkgY29uc3QKICAgICB7CiAgICAgICAgIGlm
IChtX2xlZnQuc3R5bGUoKSA9PSBCb3JkZXJTdHlsZTo6Tm9uZSB8fCBtX2xlZnQuc3R5bGUoKSA9
PSBCb3JkZXJTdHlsZTo6SGlkZGVuKQotICAgICAgICAgICAgcmV0dXJuIDA7IAorICAgICAgICAg
ICAgcmV0dXJuIDA7CisgICAgICAgIGlmIChtX2ltYWdlLm92ZXJyaWRlc0JvcmRlcldpZHRocygp
ICYmIG1faW1hZ2UuYm9yZGVyU2xpY2VzKCkubGVmdCgpLmlzRml4ZWQoKSkKKyAgICAgICAgICAg
IHJldHVybiBtX2ltYWdlLmJvcmRlclNsaWNlcygpLmxlZnQoKS52YWx1ZSgpOwogICAgICAgICBy
ZXR1cm4gbV9sZWZ0LndpZHRoKCk7CiAgICAgfQogCkBAIC03Nyw2ICs3OSw4IEBAIHB1YmxpYzoK
ICAgICB7CiAgICAgICAgIGlmIChtX3JpZ2h0LnN0eWxlKCkgPT0gQm9yZGVyU3R5bGU6Ok5vbmUg
fHwgbV9yaWdodC5zdHlsZSgpID09IEJvcmRlclN0eWxlOjpIaWRkZW4pCiAgICAgICAgICAgICBy
ZXR1cm4gMDsKKyAgICAgICAgaWYgKG1faW1hZ2Uub3ZlcnJpZGVzQm9yZGVyV2lkdGhzKCkgJiYg
bV9pbWFnZS5ib3JkZXJTbGljZXMoKS5yaWdodCgpLmlzRml4ZWQoKSkKKyAgICAgICAgICAgIHJl
dHVybiBtX2ltYWdlLmJvcmRlclNsaWNlcygpLnJpZ2h0KCkudmFsdWUoKTsKICAgICAgICAgcmV0
dXJuIG1fcmlnaHQud2lkdGgoKTsKICAgICB9CiAKQEAgLTg0LDYgKzg4LDggQEAgcHVibGljOgog
ICAgIHsKICAgICAgICAgaWYgKG1fdG9wLnN0eWxlKCkgPT0gQm9yZGVyU3R5bGU6Ok5vbmUgfHwg
bV90b3Auc3R5bGUoKSA9PSBCb3JkZXJTdHlsZTo6SGlkZGVuKQogICAgICAgICAgICAgcmV0dXJu
IDA7CisgICAgICAgIGlmIChtX2ltYWdlLm92ZXJyaWRlc0JvcmRlcldpZHRocygpICYmIG1faW1h
Z2UuYm9yZGVyU2xpY2VzKCkudG9wKCkuaXNGaXhlZCgpKQorICAgICAgICAgICAgcmV0dXJuIG1f
aW1hZ2UuYm9yZGVyU2xpY2VzKCkudG9wKCkudmFsdWUoKTsKICAgICAgICAgcmV0dXJuIG1fdG9w
LndpZHRoKCk7CiAgICAgfQogCkBAIC05MSw2ICs5Nyw4IEBAIHB1YmxpYzoKICAgICB7CiAgICAg
ICAgIGlmIChtX2JvdHRvbS5zdHlsZSgpID09IEJvcmRlclN0eWxlOjpOb25lIHx8IG1fYm90dG9t
LnN0eWxlKCkgPT0gQm9yZGVyU3R5bGU6OkhpZGRlbikKICAgICAgICAgICAgIHJldHVybiAwOwor
ICAgICAgICBpZiAobV9pbWFnZS5vdmVycmlkZXNCb3JkZXJXaWR0aHMoKSAmJiBtX2ltYWdlLmJv
cmRlclNsaWNlcygpLmJvdHRvbSgpLmlzRml4ZWQoKSkKKyAgICAgICAgICAgIHJldHVybiBtX2lt
YWdlLmJvcmRlclNsaWNlcygpLmJvdHRvbSgpLnZhbHVlKCk7CiAgICAgICAgIHJldHVybiBtX2Jv
dHRvbS53aWR0aCgpOwogICAgIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL3N0eWxlL05pbmVQaWVjZUltYWdlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9z
dHlsZS9OaW5lUGllY2VJbWFnZS5jcHAKaW5kZXggYTMyYzRkMDA0OGRiOTVlNDI4YzhkNWQ2MDg4
ZjQ1OGE2NTZlZjk3Mi4uMjdkMjY0YWRhMmRhOWVhMmE1NTQ4YzljOWI3ODY0NWE2NzZmMTA2OSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL05pbmVQaWVjZUltYWdl
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvTmluZVBpZWNlSW1hZ2Uu
Y3BwCkBAIC01NSw4ICs1NSw4IEBAIE5pbmVQaWVjZUltYWdlOjpOaW5lUGllY2VJbWFnZShUeXBl
IGltYWdlVHlwZSkKIHsKIH0KIAotTmluZVBpZWNlSW1hZ2U6Ok5pbmVQaWVjZUltYWdlKFJlZlB0
cjxTdHlsZUltYWdlPiYmIGltYWdlLCBMZW5ndGhCb3ggaW1hZ2VTbGljZXMsIGJvb2wgZmlsbCwg
TGVuZ3RoQm94IGJvcmRlclNsaWNlcywgTGVuZ3RoQm94IG91dHNldCwgTmluZVBpZWNlSW1hZ2VS
dWxlIGhvcml6b250YWxSdWxlLCBOaW5lUGllY2VJbWFnZVJ1bGUgdmVydGljYWxSdWxlKQotICAg
IDogbV9kYXRhKERhdGE6OmNyZWF0ZShXVEZNb3ZlKGltYWdlKSwgaW1hZ2VTbGljZXMsIGZpbGws
IGJvcmRlclNsaWNlcywgb3V0c2V0LCBob3Jpem9udGFsUnVsZSwgdmVydGljYWxSdWxlKSkKK05p
bmVQaWVjZUltYWdlOjpOaW5lUGllY2VJbWFnZShSZWZQdHI8U3R5bGVJbWFnZT4mJiBpbWFnZSwg
TGVuZ3RoQm94IGltYWdlU2xpY2VzLCBib29sIGZpbGwsIExlbmd0aEJveCBib3JkZXJTbGljZXMs
IGJvb2wgb3ZlcnJpZGVzQm9yZGVyV2lkdGhzLCBMZW5ndGhCb3ggb3V0c2V0LCBOaW5lUGllY2VJ
bWFnZVJ1bGUgaG9yaXpvbnRhbFJ1bGUsIE5pbmVQaWVjZUltYWdlUnVsZSB2ZXJ0aWNhbFJ1bGUp
CisgICAgOiBtX2RhdGEoRGF0YTo6Y3JlYXRlKFdURk1vdmUoaW1hZ2UpLCBpbWFnZVNsaWNlcywg
ZmlsbCwgYm9yZGVyU2xpY2VzLCBvdmVycmlkZXNCb3JkZXJXaWR0aHMsIG91dHNldCwgaG9yaXpv
bnRhbFJ1bGUsIHZlcnRpY2FsUnVsZSkpCiB7CiB9CiAKQEAgLTIzNSw4ICsyMzUsOSBAQCB2b2lk
IE5pbmVQaWVjZUltYWdlOjpwYWludChHcmFwaGljc0NvbnRleHQmIGdyYXBoaWNzQ29udGV4dCwg
UmVuZGVyRWxlbWVudCogcmVuZAogCiBpbmxpbmUgTmluZVBpZWNlSW1hZ2U6OkRhdGE6OkRhdGEo
KSA9IGRlZmF1bHQ7CiAKLWlubGluZSBOaW5lUGllY2VJbWFnZTo6RGF0YTo6RGF0YShSZWZQdHI8
U3R5bGVJbWFnZT4mJiBpbWFnZSwgTGVuZ3RoQm94IGltYWdlU2xpY2VzLCBib29sIGZpbGwsIExl
bmd0aEJveCBib3JkZXJTbGljZXMsIExlbmd0aEJveCBvdXRzZXQsIE5pbmVQaWVjZUltYWdlUnVs
ZSBob3Jpem9udGFsUnVsZSwgTmluZVBpZWNlSW1hZ2VSdWxlIHZlcnRpY2FsUnVsZSkKK2lubGlu
ZSBOaW5lUGllY2VJbWFnZTo6RGF0YTo6RGF0YShSZWZQdHI8U3R5bGVJbWFnZT4mJiBpbWFnZSwg
TGVuZ3RoQm94IGltYWdlU2xpY2VzLCBib29sIGZpbGwsIExlbmd0aEJveCBib3JkZXJTbGljZXMs
IGJvb2wgb3ZlcnJpZGVzQm9yZGVyV2lkdGhzLCBMZW5ndGhCb3ggb3V0c2V0LCBOaW5lUGllY2VJ
bWFnZVJ1bGUgaG9yaXpvbnRhbFJ1bGUsIE5pbmVQaWVjZUltYWdlUnVsZSB2ZXJ0aWNhbFJ1bGUp
CiAgICAgOiBmaWxsKGZpbGwpCisgICAgLCBvdmVycmlkZXNCb3JkZXJXaWR0aHMob3ZlcnJpZGVz
Qm9yZGVyV2lkdGhzKQogICAgICwgaG9yaXpvbnRhbFJ1bGUoaG9yaXpvbnRhbFJ1bGUpCiAgICAg
LCB2ZXJ0aWNhbFJ1bGUodmVydGljYWxSdWxlKQogICAgICwgaW1hZ2UoV1RGTW92ZShpbWFnZSkp
CkBAIC0yNDksNiArMjUwLDcgQEAgaW5saW5lIE5pbmVQaWVjZUltYWdlOjpEYXRhOjpEYXRhKFJl
ZlB0cjxTdHlsZUltYWdlPiYmIGltYWdlLCBMZW5ndGhCb3ggaW1hZ2VTbGkKIGlubGluZSBOaW5l
UGllY2VJbWFnZTo6RGF0YTo6RGF0YShjb25zdCBEYXRhJiBvdGhlcikKICAgICA6IFJlZkNvdW50
ZWQ8RGF0YT4oKQogICAgICwgZmlsbChvdGhlci5maWxsKQorICAgICwgb3ZlcnJpZGVzQm9yZGVy
V2lkdGhzKG90aGVyLm92ZXJyaWRlc0JvcmRlcldpZHRocykKICAgICAsIGhvcml6b250YWxSdWxl
KG90aGVyLmhvcml6b250YWxSdWxlKQogICAgICwgdmVydGljYWxSdWxlKG90aGVyLnZlcnRpY2Fs
UnVsZSkKICAgICAsIGltYWdlKG90aGVyLmltYWdlKQpAQCAtMjYzLDkgKzI2NSw5IEBAIGlubGlu
ZSBSZWY8TmluZVBpZWNlSW1hZ2U6OkRhdGE+IE5pbmVQaWVjZUltYWdlOjpEYXRhOjpjcmVhdGUo
KQogICAgIHJldHVybiBhZG9wdFJlZigqbmV3IERhdGEpOwogfQogCi1pbmxpbmUgUmVmPE5pbmVQ
aWVjZUltYWdlOjpEYXRhPiBOaW5lUGllY2VJbWFnZTo6RGF0YTo6Y3JlYXRlKFJlZlB0cjxTdHls
ZUltYWdlPiYmIGltYWdlLCBMZW5ndGhCb3ggaW1hZ2VTbGljZXMsIGJvb2wgZmlsbCwgTGVuZ3Ro
Qm94IGJvcmRlclNsaWNlcywgTGVuZ3RoQm94IG91dHNldCwgTmluZVBpZWNlSW1hZ2VSdWxlIGhv
cml6b250YWxSdWxlLCBOaW5lUGllY2VJbWFnZVJ1bGUgdmVydGljYWxSdWxlKQoraW5saW5lIFJl
ZjxOaW5lUGllY2VJbWFnZTo6RGF0YT4gTmluZVBpZWNlSW1hZ2U6OkRhdGE6OmNyZWF0ZShSZWZQ
dHI8U3R5bGVJbWFnZT4mJiBpbWFnZSwgTGVuZ3RoQm94IGltYWdlU2xpY2VzLCBib29sIGZpbGws
IExlbmd0aEJveCBib3JkZXJTbGljZXMsIGJvb2wgb3ZlcnJpZGVzQm9yZGVyV2lkdGhzLCBMZW5n
dGhCb3ggb3V0c2V0LCBOaW5lUGllY2VJbWFnZVJ1bGUgaG9yaXpvbnRhbFJ1bGUsIE5pbmVQaWVj
ZUltYWdlUnVsZSB2ZXJ0aWNhbFJ1bGUpCiB7Ci0gICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRGF0
YShXVEZNb3ZlKGltYWdlKSwgaW1hZ2VTbGljZXMsIGZpbGwsIGJvcmRlclNsaWNlcywgb3V0c2V0
LCBob3Jpem9udGFsUnVsZSwgdmVydGljYWxSdWxlKSk7CisgICAgcmV0dXJuIGFkb3B0UmVmKCpu
ZXcgRGF0YShXVEZNb3ZlKGltYWdlKSwgaW1hZ2VTbGljZXMsIGZpbGwsIGJvcmRlclNsaWNlcywg
b3ZlcnJpZGVzQm9yZGVyV2lkdGhzLCBvdXRzZXQsIGhvcml6b250YWxSdWxlLCB2ZXJ0aWNhbFJ1
bGUpKTsKIH0KIAogUmVmPE5pbmVQaWVjZUltYWdlOjpEYXRhPiBOaW5lUGllY2VJbWFnZTo6RGF0
YTo6Y29weSgpIGNvbnN0CkBAIC0yNzksNiArMjgxLDcgQEAgYm9vbCBOaW5lUGllY2VJbWFnZTo6
RGF0YTo6b3BlcmF0b3I9PShjb25zdCBEYXRhJiBvdGhlcikgY29uc3QKICAgICAgICAgJiYgaW1h
Z2VTbGljZXMgPT0gb3RoZXIuaW1hZ2VTbGljZXMKICAgICAgICAgJiYgZmlsbCA9PSBvdGhlci5m
aWxsCiAgICAgICAgICYmIGJvcmRlclNsaWNlcyA9PSBvdGhlci5ib3JkZXJTbGljZXMKKyAgICAg
ICAgJiYgb3ZlcnJpZGVzQm9yZGVyV2lkdGhzID09IG90aGVyLm92ZXJyaWRlc0JvcmRlcldpZHRo
cwogICAgICAgICAmJiBvdXRzZXQgPT0gb3RoZXIub3V0c2V0CiAgICAgICAgICYmIGhvcml6b250
YWxSdWxlID09IG90aGVyLmhvcml6b250YWxSdWxlCiAgICAgICAgICYmIHZlcnRpY2FsUnVsZSA9
PSBvdGhlci52ZXJ0aWNhbFJ1bGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvc3R5bGUvTmluZVBpZWNlSW1hZ2UuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHls
ZS9OaW5lUGllY2VJbWFnZS5oCmluZGV4IGMzOWRlYzMzNDQxMmRkOTUwNjBhNWExNmY0MmZmOTQ4
MmJlM2JkNGUuLjZhNjdjZTUxYTZmZDI2N2IwNWMyMGFjMjA1ZTkzYzJkZWQ0NjE3MTcgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9OaW5lUGllY2VJbWFnZS5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9OaW5lUGllY2VJbWFnZS5oCkBAIC0x
MTIsNyArMTEyLDcgQEAgcHVibGljOgogICAgIH07CiAKICAgICBOaW5lUGllY2VJbWFnZShUeXBl
ID0gVHlwZTo6Tm9ybWFsKTsKLSAgICBOaW5lUGllY2VJbWFnZShSZWZQdHI8U3R5bGVJbWFnZT4m
JiwgTGVuZ3RoQm94IGltYWdlU2xpY2VzLCBib29sIGZpbGwsIExlbmd0aEJveCBib3JkZXJTbGlj
ZXMsIExlbmd0aEJveCBvdXRzZXQsIE5pbmVQaWVjZUltYWdlUnVsZSBob3Jpem9udGFsUnVsZSwg
TmluZVBpZWNlSW1hZ2VSdWxlIHZlcnRpY2FsUnVsZSk7CisgICAgTmluZVBpZWNlSW1hZ2UoUmVm
UHRyPFN0eWxlSW1hZ2U+JiYsIExlbmd0aEJveCBpbWFnZVNsaWNlcywgYm9vbCBmaWxsLCBMZW5n
dGhCb3ggYm9yZGVyU2xpY2VzLCBib29sIG92ZXJyaWRlc0JvcmRlcldpZHRocywgTGVuZ3RoQm94
IG91dHNldCwgTmluZVBpZWNlSW1hZ2VSdWxlIGhvcml6b250YWxSdWxlLCBOaW5lUGllY2VJbWFn
ZVJ1bGUgdmVydGljYWxSdWxlKTsKIAogICAgIGJvb2wgb3BlcmF0b3I9PShjb25zdCBOaW5lUGll
Y2VJbWFnZSYgb3RoZXIpIGNvbnN0IHsgcmV0dXJuIG1fZGF0YSA9PSBvdGhlci5tX2RhdGE7IH0K
ICAgICBib29sIG9wZXJhdG9yIT0oY29uc3QgTmluZVBpZWNlSW1hZ2UmIG90aGVyKSBjb25zdCB7
IHJldHVybiBtX2RhdGEgIT0gb3RoZXIubV9kYXRhOyB9CkBAIC0xMzAsNiArMTMwLDkgQEAgcHVi
bGljOgogICAgIGNvbnN0IExlbmd0aEJveCYgYm9yZGVyU2xpY2VzKCkgY29uc3QgeyByZXR1cm4g
bV9kYXRhLT5ib3JkZXJTbGljZXM7IH0KICAgICB2b2lkIHNldEJvcmRlclNsaWNlcyhMZW5ndGhC
b3ggc2xpY2VzKSB7IG1fZGF0YS5hY2Nlc3MoKS5ib3JkZXJTbGljZXMgPSBXVEZNb3ZlKHNsaWNl
cyk7IH0KIAorICAgIGJvb2wgb3ZlcnJpZGVzQm9yZGVyV2lkdGhzKCkgY29uc3QgeyByZXR1cm4g
bV9kYXRhLT5vdmVycmlkZXNCb3JkZXJXaWR0aHM7IH0KKyAgICB2b2lkIHNldE92ZXJyaWRlc0Jv
cmRlcldpZHRocyhib29sIHYpIHsgbV9kYXRhLmFjY2VzcygpLm92ZXJyaWRlc0JvcmRlcldpZHRo
cyA9IHY7IH0KKwogICAgIGNvbnN0IExlbmd0aEJveCYgb3V0c2V0KCkgY29uc3QgeyByZXR1cm4g
bV9kYXRhLT5vdXRzZXQ7IH0KICAgICB2b2lkIHNldE91dHNldChMZW5ndGhCb3ggb3V0c2V0KSB7
IG1fZGF0YS5hY2Nlc3MoKS5vdXRzZXQgPSBXVEZNb3ZlKG91dHNldCk7IH0KIApAQCAtMTQ4LDYg
KzE1MSw3IEBAIHB1YmxpYzoKICAgICB2b2lkIGNvcHlCb3JkZXJTbGljZXNGcm9tKGNvbnN0IE5p
bmVQaWVjZUltYWdlJiBvdGhlcikKICAgICB7CiAgICAgICAgIG1fZGF0YS5hY2Nlc3MoKS5ib3Jk
ZXJTbGljZXMgPSBvdGhlci5tX2RhdGEtPmJvcmRlclNsaWNlczsKKyAgICAgICAgbV9kYXRhLmFj
Y2VzcygpLm92ZXJyaWRlc0JvcmRlcldpZHRocyA9IG90aGVyLm1fZGF0YS0+b3ZlcnJpZGVzQm9y
ZGVyV2lkdGhzOwogICAgIH0KICAgICAKICAgICB2b2lkIGNvcHlPdXRzZXRGcm9tKGNvbnN0IE5p
bmVQaWVjZUltYWdlJiBvdGhlcikKQEAgLTE4OCwxMyArMTkyLDE0IEBAIHB1YmxpYzoKIHByaXZh
dGU6CiAgICAgc3RydWN0IERhdGEgOiBSZWZDb3VudGVkPERhdGE+IHsKICAgICAgICAgc3RhdGlj
IFJlZjxEYXRhPiBjcmVhdGUoKTsKLSAgICAgICAgc3RhdGljIFJlZjxEYXRhPiBjcmVhdGUoUmVm
UHRyPFN0eWxlSW1hZ2U+JiYsIExlbmd0aEJveCBpbWFnZVNsaWNlcywgYm9vbCBmaWxsLCBMZW5n
dGhCb3ggYm9yZGVyU2xpY2VzLCBMZW5ndGhCb3ggb3V0c2V0LCBOaW5lUGllY2VJbWFnZVJ1bGUg
aG9yaXpvbnRhbFJ1bGUsIE5pbmVQaWVjZUltYWdlUnVsZSB2ZXJ0aWNhbFJ1bGUpOworICAgICAg
ICBzdGF0aWMgUmVmPERhdGE+IGNyZWF0ZShSZWZQdHI8U3R5bGVJbWFnZT4mJiwgTGVuZ3RoQm94
IGltYWdlU2xpY2VzLCBib29sIGZpbGwsIExlbmd0aEJveCBib3JkZXJTbGljZXMsIGJvb2wgb3Zl
cnJpZGVzQm9yZGVyV2lkdGhzLCBMZW5ndGhCb3ggb3V0c2V0LCBOaW5lUGllY2VJbWFnZVJ1bGUg
aG9yaXpvbnRhbFJ1bGUsIE5pbmVQaWVjZUltYWdlUnVsZSB2ZXJ0aWNhbFJ1bGUpOwogICAgICAg
ICBSZWY8RGF0YT4gY29weSgpIGNvbnN0OwogCiAgICAgICAgIGJvb2wgb3BlcmF0b3I9PShjb25z
dCBEYXRhJikgY29uc3Q7CiAgICAgICAgIGJvb2wgb3BlcmF0b3IhPShjb25zdCBEYXRhJiBvdGhl
cikgY29uc3QgeyByZXR1cm4gISgqdGhpcyA9PSBvdGhlcik7IH0KIAogICAgICAgICBib29sIGZp
bGwgeyBmYWxzZSB9OworICAgICAgICBib29sIG92ZXJyaWRlc0JvcmRlcldpZHRocyB7IGZhbHNl
IH07CiAgICAgICAgIE5pbmVQaWVjZUltYWdlUnVsZSBob3Jpem9udGFsUnVsZSB7IE5pbmVQaWVj
ZUltYWdlUnVsZTo6U3RyZXRjaCB9OwogICAgICAgICBOaW5lUGllY2VJbWFnZVJ1bGUgdmVydGlj
YWxSdWxlIHsgTmluZVBpZWNlSW1hZ2VSdWxlOjpTdHJldGNoIH07CiAgICAgICAgIFJlZlB0cjxT
dHlsZUltYWdlPiBpbWFnZTsKQEAgLTIwNCw3ICsyMDksNyBAQCBwcml2YXRlOgogCiAgICAgcHJp
dmF0ZToKICAgICAgICAgRGF0YSgpOwotICAgICAgICBEYXRhKFJlZlB0cjxTdHlsZUltYWdlPiYm
LCBMZW5ndGhCb3ggaW1hZ2VTbGljZXMsIGJvb2wgZmlsbCwgTGVuZ3RoQm94IGJvcmRlclNsaWNl
cywgTGVuZ3RoQm94IG91dHNldCwgTmluZVBpZWNlSW1hZ2VSdWxlIGhvcml6b250YWxSdWxlLCBO
aW5lUGllY2VJbWFnZVJ1bGUgdmVydGljYWxSdWxlKTsKKyAgICAgICAgRGF0YShSZWZQdHI8U3R5
bGVJbWFnZT4mJiwgTGVuZ3RoQm94IGltYWdlU2xpY2VzLCBib29sIGZpbGwsIExlbmd0aEJveCBi
b3JkZXJTbGljZXMsIGJvb2wgb3ZlcnJpZGVzQm9yZGVyV2lkdGhzLCBMZW5ndGhCb3ggb3V0c2V0
LCBOaW5lUGllY2VJbWFnZVJ1bGUgaG9yaXpvbnRhbFJ1bGUsIE5pbmVQaWVjZUltYWdlUnVsZSB2
ZXJ0aWNhbFJ1bGUpOwogICAgICAgICBEYXRhKGNvbnN0IERhdGEmKTsKICAgICB9OwogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuY3BwIGIv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmNwcAppbmRleCA3Nzk3
MGY2ZTc1OTc3NjIwNzRlMTlmNmY4MTk5NmM3ZWZhODE5NTY0Li5kYzg4MWU2M2I4NTE0MDM0YjNm
ZDRlNjgzMDg1OGRiY2E5OGYxNzBmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvc3R5bGUvUmVuZGVyU3R5bGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9z
dHlsZS9SZW5kZXJTdHlsZS5jcHAKQEAgLTI0OTksNiArMjQ5OSwxMyBAQCB2b2lkIFJlbmRlclN0
eWxlOjpzZXRCb3JkZXJJbWFnZVdpZHRoKExlbmd0aEJveCYmIHNsaWNlcykKICAgICBtX3N1cnJv
dW5kRGF0YS5hY2Nlc3MoKS5ib3JkZXIubV9pbWFnZS5zZXRCb3JkZXJTbGljZXMoV1RGTW92ZShz
bGljZXMpKTsKIH0KIAordm9pZCBSZW5kZXJTdHlsZTo6c2V0Qm9yZGVySW1hZ2VXaWR0aE92ZXJy
aWRlc0JvcmRlcldpZHRocyhib29sIG92ZXJyaWRlc0JvcmRlcldpZHRocykKK3sKKyAgICBpZiAo
bV9zdXJyb3VuZERhdGEtPmJvcmRlci5tX2ltYWdlLm92ZXJyaWRlc0JvcmRlcldpZHRocygpID09
IG92ZXJyaWRlc0JvcmRlcldpZHRocykKKyAgICAgICAgcmV0dXJuOworICAgIG1fc3Vycm91bmRE
YXRhLmFjY2VzcygpLmJvcmRlci5tX2ltYWdlLnNldE92ZXJyaWRlc0JvcmRlcldpZHRocyhvdmVy
cmlkZXNCb3JkZXJXaWR0aHMpOworfQorCiB2b2lkIFJlbmRlclN0eWxlOjpzZXRCb3JkZXJJbWFn
ZU91dHNldChMZW5ndGhCb3gmJiBvdXRzZXQpCiB7CiAgICAgaWYgKG1fc3Vycm91bmREYXRhLT5i
b3JkZXIubV9pbWFnZS5vdXRzZXQoKSA9PSBvdXRzZXQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oCmluZGV4IGU0YTg2ODhjOTdlOWQ3ODA5ZmIwNmNmYmFi
NDU0NTAzODEzNDEyMTMuLmZkMzVhN2NlZTgwMGI3MWVmNDhmYTc1NjA0NjY0NjJjYzE4M2EyY2Mg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oCkBAIC05
MzQsNiArOTM0LDcgQEAgcHVibGljOgogICAgIHZvaWQgc2V0Qm9yZGVySW1hZ2VTbGljZUZpbGwo
Ym9vbCk7CiAgICAgdm9pZCBzZXRCb3JkZXJJbWFnZVNsaWNlcyhMZW5ndGhCb3gmJik7CiAgICAg
dm9pZCBzZXRCb3JkZXJJbWFnZVdpZHRoKExlbmd0aEJveCYmKTsKKyAgICB2b2lkIHNldEJvcmRl
ckltYWdlV2lkdGhPdmVycmlkZXNCb3JkZXJXaWR0aHMoYm9vbCk7CiAgICAgdm9pZCBzZXRCb3Jk
ZXJJbWFnZU91dHNldChMZW5ndGhCb3gmJik7CiAgICAgdm9pZCBzZXRCb3JkZXJJbWFnZUhvcml6
b250YWxSdWxlKE5pbmVQaWVjZUltYWdlUnVsZSk7CiAgICAgdm9pZCBzZXRCb3JkZXJJbWFnZVZl
cnRpY2FsUnVsZShOaW5lUGllY2VJbWFnZVJ1bGUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvc3R5bGUvUHJvcGVydHlDYXNjYWRlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1Byb3Bl
cnR5Q2FzY2FkZS5jcHAKaW5kZXggOTBmZWQ2MTdhZjc1NmU3NzM4YmM5YjUzNWRkZGExMjhlZTBj
MDEyZi4uMWVlOTRiM2UyMjhhZTBjMDVlY2I3Njc4ZDM3ODExNTBkODE0NGJjNyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvc3R5bGUvUHJvcGVydHlDYXNjYWRlLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9zdHlsZS9Qcm9wZXJ0eUNhc2NhZGUuY3BwCkBAIC00NywxMyArNDcsNiBAQCBzdGF0
aWMgaW5saW5lIGJvb2wgc2hvdWxkQXBwbHlQcm9wZXJ0eUluUGFyc2VPcmRlcihDU1NQcm9wZXJ0
eUlEIHByb3BlcnR5SUQpCiAgICAgY2FzZSBDU1NQcm9wZXJ0eUJhY2tncm91bmRPcmlnaW46CiAg
ICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEJhY2tncm91bmRTaXplOgogICAgIGNhc2UgQ1NTUHJv
cGVydHlCYWNrZ3JvdW5kU2l6ZToKLSAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0Qm9yZGVySW1h
Z2U6Ci0gICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlckltYWdlOgotICAgIGNhc2UgQ1NTUHJvcGVy
dHlCb3JkZXJJbWFnZVNsaWNlOgotICAgIGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJJbWFnZVNvdXJj
ZToKLSAgICBjYXNlIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VPdXRzZXQ6Ci0gICAgY2FzZSBDU1NQ
cm9wZXJ0eUJvcmRlckltYWdlUmVwZWF0OgotICAgIGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJJbWFn
ZVdpZHRoOgogICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRCb3hTaGFkb3c6CiAgICAgY2FzZSBD
U1NQcm9wZXJ0eUJveFNoYWRvdzoKICAgICAgICAgcmV0dXJuIHRydWU7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZUJ1aWxkZXJDb252ZXJ0ZXIuaCBiL1NvdXJjZS9XZWJD
b3JlL3N0eWxlL1N0eWxlQnVpbGRlckNvbnZlcnRlci5oCmluZGV4IGFjYmJmNWY5YTdlMWM3MmQ5
Y2NhYjg1MDIzZDdlZmQ0ZDIxN2IyYTIuLjM0YWEzODVhZTA0OTcxYjMyMDA2ZTEwNjI0YjZkZDY0
NGUzMDNkYjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlQnVpbGRlckNv
bnZlcnRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlQnVpbGRlckNvbnZlcnRl
ci5oCkBAIC04NSw3ICs4NSw2IEBAIHB1YmxpYzoKICAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBUPiBz
dGF0aWMgVCBjb252ZXJ0TnVtYmVyKEJ1aWxkZXJTdGF0ZSYsIGNvbnN0IENTU1ZhbHVlJik7CiAg
ICAgdGVtcGxhdGU8dHlwZW5hbWUgVD4gc3RhdGljIFQgY29udmVydE51bWJlck9yQXV0byhCdWls
ZGVyU3RhdGUmLCBjb25zdCBDU1NWYWx1ZSYpOwogICAgIHN0YXRpYyBzaG9ydCBjb252ZXJ0V2Vi
a2l0SHlwaGVuYXRlTGltaXRMaW5lcyhCdWlsZGVyU3RhdGUmLCBjb25zdCBDU1NWYWx1ZSYpOwot
ICAgIHRlbXBsYXRlPENTU1Byb3BlcnR5SUQ+IHN0YXRpYyBOaW5lUGllY2VJbWFnZSBjb252ZXJ0
Qm9yZGVySW1hZ2UoQnVpbGRlclN0YXRlJiwgQ1NTVmFsdWUmKTsKICAgICB0ZW1wbGF0ZTxDU1NQ
cm9wZXJ0eUlEPiBzdGF0aWMgTmluZVBpZWNlSW1hZ2UgY29udmVydEJvcmRlck1hc2soQnVpbGRl
clN0YXRlJiwgQ1NTVmFsdWUmKTsKICAgICB0ZW1wbGF0ZTxDU1NQcm9wZXJ0eUlEPiBzdGF0aWMg
UmVmUHRyPFN0eWxlSW1hZ2U+IGNvbnZlcnRTdHlsZUltYWdlKEJ1aWxkZXJTdGF0ZSYsIENTU1Zh
bHVlJik7CiAgICAgc3RhdGljIEltYWdlT3JpZW50YXRpb24gY29udmVydEltYWdlT3JpZW50YXRp
b24oQnVpbGRlclN0YXRlJiwgY29uc3QgQ1NTVmFsdWUmKTsKQEAgLTQ2NCwxOSArNDYzLDExIEBA
IGlubGluZSBzaG9ydCBCdWlsZGVyQ29udmVydGVyOjpjb252ZXJ0V2Via2l0SHlwaGVuYXRlTGlt
aXRMaW5lcyhCdWlsZGVyU3RhdGUmLCBjCiAgICAgcmV0dXJuIHByaW1pdGl2ZVZhbHVlLnZhbHVl
PHNob3J0PihDU1NVbml0VHlwZTo6Q1NTX05VTUJFUik7CiB9CiAKLXRlbXBsYXRlPENTU1Byb3Bl
cnR5SUQgcHJvcGVydHk+Ci1pbmxpbmUgTmluZVBpZWNlSW1hZ2UgQnVpbGRlckNvbnZlcnRlcjo6
Y29udmVydEJvcmRlckltYWdlKEJ1aWxkZXJTdGF0ZSYgYnVpbGRlclN0YXRlLCBDU1NWYWx1ZSYg
dmFsdWUpCi17Ci0gICAgTmluZVBpZWNlSW1hZ2UgaW1hZ2U7Ci0gICAgYnVpbGRlclN0YXRlLnN0
eWxlTWFwKCkubWFwTmluZVBpZWNlSW1hZ2UocHJvcGVydHksICZ2YWx1ZSwgaW1hZ2UpOwotICAg
IHJldHVybiBpbWFnZTsKLX0KLQogdGVtcGxhdGU8Q1NTUHJvcGVydHlJRCBwcm9wZXJ0eT4KIGlu
bGluZSBOaW5lUGllY2VJbWFnZSBCdWlsZGVyQ29udmVydGVyOjpjb252ZXJ0Qm9yZGVyTWFzayhC
dWlsZGVyU3RhdGUmIGJ1aWxkZXJTdGF0ZSwgQ1NTVmFsdWUmIHZhbHVlKQogewogICAgIE5pbmVQ
aWVjZUltYWdlIGltYWdlKE5pbmVQaWVjZUltYWdlOjpUeXBlOjpNYXNrKTsKLSAgICBidWlsZGVy
U3RhdGUuc3R5bGVNYXAoKS5tYXBOaW5lUGllY2VJbWFnZShwcm9wZXJ0eSwgJnZhbHVlLCBpbWFn
ZSk7CisgICAgYnVpbGRlclN0YXRlLnN0eWxlTWFwKCkubWFwTmluZVBpZWNlSW1hZ2UoJnZhbHVl
LCBpbWFnZSk7CiAgICAgcmV0dXJuIGltYWdlOwogfQogCkBAIC04MDksNyArODAwLDcgQEAgaW5s
aW5lIFJlZlB0cjxTdHlsZVJlZmxlY3Rpb24+IEJ1aWxkZXJDb252ZXJ0ZXI6OmNvbnZlcnRSZWZs
ZWN0aW9uKEJ1aWxkZXJTdGF0ZSYKICAgICByZWZsZWN0aW9uLT5zZXRPZmZzZXQocmVmbGVjdFZh
bHVlLm9mZnNldCgpLmNvbnZlcnRUb0xlbmd0aDxGaXhlZEludGVnZXJDb252ZXJzaW9uIHwgUGVy
Y2VudENvbnZlcnNpb24gfCBDYWxjdWxhdGVkQ29udmVyc2lvbj4oYnVpbGRlclN0YXRlLmNzc1Rv
TGVuZ3RoQ29udmVyc2lvbkRhdGEoKSkpOwogCiAgICAgTmluZVBpZWNlSW1hZ2UgbWFzayhOaW5l
UGllY2VJbWFnZTo6VHlwZTo6TWFzayk7Ci0gICAgYnVpbGRlclN0YXRlLnN0eWxlTWFwKCkubWFw
TmluZVBpZWNlSW1hZ2UoQ1NTUHJvcGVydHlXZWJraXRCb3hSZWZsZWN0LCByZWZsZWN0VmFsdWUu
bWFzaygpLCBtYXNrKTsKKyAgICBidWlsZGVyU3RhdGUuc3R5bGVNYXAoKS5tYXBOaW5lUGllY2VJ
bWFnZShyZWZsZWN0VmFsdWUubWFzaygpLCBtYXNrKTsKICAgICByZWZsZWN0aW9uLT5zZXRNYXNr
KG1hc2spOwogCiAgICAgcmV0dXJuIHJlZmxlY3Rpb247CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9zdHlsZS9TdHlsZUJ1aWxkZXJDdXN0b20uaCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0
eWxlQnVpbGRlckN1c3RvbS5oCmluZGV4IGU3YWFkZGQwNGJkMjFjYjY2MDczYjMxZjI5MWFkYjc3
YjgyYzAxMjUuLmVmYTczOTc5NmZjMzRjZTJiZDAwMTY0ZDI3OTgyY2M5OGI5ZTIyOWYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlQnVpbGRlckN1c3RvbS5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlQnVpbGRlckN1c3RvbS5oCkBAIC01NTIsNiArNTUyLDcg
QEAgcHVibGljOgogICAgICAgICAgICAgTGVuZ3RoQm94IGxlbmd0aEJveChMZW5ndGgoMSwgTGVu
Z3RoVHlwZTo6UmVsYXRpdmUpLCBMZW5ndGgoMSwgTGVuZ3RoVHlwZTo6UmVsYXRpdmUpLCBMZW5n
dGgoMSwgTGVuZ3RoVHlwZTo6UmVsYXRpdmUpLCBMZW5ndGgoMSwgTGVuZ3RoVHlwZTo6UmVsYXRp
dmUpKTsKICAgICAgICAgICAgIC8vIE1hc2tzIGhhdmUgYSBkaWZmZXJlbnQgaW5pdGlhbCB2YWx1
ZSBmb3Igd2lkdGhzLiBUaGV5IHVzZSBhbiAnYXV0bycgdmFsdWUgcmF0aGVyIHRoYW4gdHJ5aW5n
IHRvIGZpdCB0byB0aGUgYm9yZGVyLgogICAgICAgICAgICAgaW1hZ2Uuc2V0Qm9yZGVyU2xpY2Vz
KHR5cGUgPT0gQm9yZGVySW1hZ2UgPyBsZW5ndGhCb3ggOiBMZW5ndGhCb3goKSk7CisgICAgICAg
ICAgICBpbWFnZS5zZXRPdmVycmlkZXNCb3JkZXJXaWR0aHMoZmFsc2UpOwogICAgICAgICAgICAg
YnJlYWs7CiAgICAgICAgIH0KICAgICAgICAgc2V0VmFsdWUoYnVpbGRlclN0YXRlLnN0eWxlKCks
IGltYWdlKTsKQEAgLTU3MSw3ICs1NzIsNyBAQCBwdWJsaWM6CiAgICAgICAgICAgICBidWlsZGVy
U3RhdGUuc3R5bGVNYXAoKS5tYXBOaW5lUGllY2VJbWFnZVNsaWNlKHZhbHVlLCBpbWFnZSk7CiAg
ICAgICAgICAgICBicmVhazsKICAgICAgICAgY2FzZSBXaWR0aDoKLSAgICAgICAgICAgIGltYWdl
LnNldEJvcmRlclNsaWNlcyhidWlsZGVyU3RhdGUuc3R5bGVNYXAoKS5tYXBOaW5lUGllY2VJbWFn
ZVF1YWQodmFsdWUpKTsKKyAgICAgICAgICAgIGJ1aWxkZXJTdGF0ZS5zdHlsZU1hcCgpLm1hcE5p
bmVQaWVjZUltYWdlV2lkdGgodmFsdWUsIGltYWdlKTsKICAgICAgICAgICAgIGJyZWFrOwogICAg
ICAgICB9CiAgICAgICAgIHNldFZhbHVlKGJ1aWxkZXJTdGF0ZS5zdHlsZSgpLCBpbWFnZSk7CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cK
aW5kZXggYTQ4NzdkNjk0NDMxOThjYTgwNGVkOTFmZjM5NWExNjk0ZjJhMjYzNi4uOTU4NjdjNzc4
YzA2NDllNjZkODJlM2FlOTVmNjFiNGI3YzEwMTFkYSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI5IEBACisy
MDIyLTA0LTAxICBPcmlvbCBCcnVmYXUgIDxvYnJ1ZmF1QGlnYWxpYS5jb20+CisKKyAgICAgICAg
W2Nzc10gVHVybiAtd2Via2l0LWJvcmRlci1pbWFnZSBpbnRvIGEgc2hvcnRoYW5kCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzc0ODcKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBVcGRhdGUgdGVzdHMgdG8g
dGFrZSBpbnRvIGFjY291bnQgdGhhdCAnLXdlYmtpdC1ib3JkZXItaW1hZ2UnIGlzIGEgc2hvcnRo
YW5kLgorCisgICAgICAgICogZmFzdC9jc3MvYm9yZGVyLWltYWdlLXN0eWxlLWxlbmd0aC1leHBl
Y3RlZC50eHQ6CisgICAgICAgICogZmFzdC9jc3MvYm9yZGVyLWltYWdlLXN0eWxlLWxlbmd0aC5o
dG1sOgorICAgICAgICAqIGZhc3QvY3NzL2dldENvbXB1dGVkU3R5bGUvY29tcHV0ZWQtc3R5bGUt
ZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3QvY3NzL2dldENvbXB1dGVkU3R5bGUvY29tcHV0
ZWQtc3R5bGUtd2l0aG91dC1yZW5kZXJlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9j
c3MvZ2V0Q29tcHV0ZWRTdHlsZS9yZXNvdXJjZXMvcHJvcGVydHktbmFtZXMuanM6CisgICAgICAg
ICogZmFzdC9jc3MvaW1hZ2Utc2V0LXBhcnNpbmctZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZh
c3QvY3NzL2ltYWdlLXNldC1wYXJzaW5nLmh0bWw6CisgICAgICAgICogZmFzdC9jc3MvdXJpLXRv
a2VuLXBhcnNpbmctZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3QvY3NzL3VyaS10b2tlbi1w
YXJzaW5nLmh0bWw6CisgICAgICAgICogcGxhdGZvcm0vZ3RrL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvY3NzL2Nzcy1jYXNjYWRlL2FsbC1wcm9wLWluaXRpYWwteG1sLWV4cGVjdGVk
LnR4dDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ndGsvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9jc3MvY3Nzb20vZ2V0Q29tcHV0ZWRTdHlsZS1kZXRhY2hlZC1zdWJ0cmVlLWV4cGVjdGVk
LnR4dDoKKyAgICAgICAgKiBwbGF0Zm9ybS9pb3MvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9jc3MvY3NzLWNhc2NhZGUvYWxsLXByb3AtaW5pdGlhbC14bWwtZXhwZWN0ZWQudHh0Ogor
ICAgICAgICAqIHBsYXRmb3JtL2lvcy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nz
cy9jc3NvbS9nZXRDb21wdXRlZFN0eWxlLWRldGFjaGVkLXN1YnRyZWUtZXhwZWN0ZWQudHh0Ogor
ICAgICAgICAqIHBsYXRmb3JtL3dwZS9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nz
cy9jc3MtY2FzY2FkZS9hbGwtcHJvcC1pbml0aWFsLXhtbC1leHBlY3RlZC50eHQ6CisgICAgICAg
ICogcGxhdGZvcm0vd3BlL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29t
L2dldENvbXB1dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS1leHBlY3RlZC50eHQ6CisgICAgICAg
ICogc3ZnL2Nzcy9nZXRDb21wdXRlZFN0eWxlLWJhc2ljLWV4cGVjdGVkLnR4dDoKKwogMjAyMi0w
My0yMyAgWmlyYW4gU3VuICA8enN1bkBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtJbnB1dEVsZW1l
bnRdIEFkZCBIVE1MSW5wdXRFbGVtZW50OjpzaG93UGlja2VyKCkgbWV0aG9kCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL0NoYW5nZUxvZwppbmRleCBhZDkxZjg4OTk1MmZjZWQ4ZGZiYjY5YTlhNTRiZDMzNDAz
ZmI1NTVmLi45YzdmMGJiMGVlNTlmNGM1N2Y3OTY1MGZkY2NkYWY2ZDFjNmFmYzI4IDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAyMi0wNC0wMSAgT3Jp
b2wgQnJ1ZmF1ICA8b2JydWZhdUBpZ2FsaWEuY29tPgorCisgICAgICAgIFtjc3NdIFR1cm4gLXdl
YmtpdC1ib3JkZXItaW1hZ2UgaW50byBhIHNob3J0aGFuZAorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM3NDg3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVXBkYXRlIHRlc3RzIHRvIHRha2UgaW50byBhY2Nv
dW50IHRoYXQgJy13ZWJraXQtYm9yZGVyLWltYWdlJyBpcyBhIHNob3J0aGFuZC4KKworICAgICAg
ICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNhc2NhZGUvYWxsLXByb3AtaW5pdGlhbC14
bWwtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nzb20v
Z2V0Q29tcHV0ZWRTdHlsZS1kZXRhY2hlZC1zdWJ0cmVlLWV4cGVjdGVkLnR4dDoKKwogMjAyMi0w
My0yMyAgWmlyYW4gU3VuICA8enN1bkBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtJbnB1dEVsZW1l
bnRdIEFkZCBIVE1MSW5wdXRFbGVtZW50OjpzaG93UGlja2VyKCkgbWV0aG9kCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9ib3JkZXItaW1hZ2Utc3R5bGUtbGVuZ3RoLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL2JvcmRlci1pbWFnZS1zdHlsZS1sZW5ndGgtZXhw
ZWN0ZWQudHh0CmluZGV4IDYyNmViZmI0ZjIxZjAyNDk5MTVjZGM3YjZmZDJhOTc1M2RiZTJhZmEu
LjlkYzc2YTE2NTBmMTA3ZTg0YzI3N2EyMzRiZjJlYTQwYzQwNDQ5ZDAgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2Zhc3QvY3NzL2JvcmRlci1pbWFnZS1zdHlsZS1sZW5ndGgtZXhwZWN0ZWQudHh0
CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL2JvcmRlci1pbWFnZS1zdHlsZS1sZW5ndGgtZXhw
ZWN0ZWQudHh0CkBAIC01LDcgKzUsNyBAQCBPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJp
ZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURQogCiBQQVNT
IGUuc3R5bGUubGVuZ3RoIGlzIDUKIFBBU1MgZS5zdHlsZS5sZW5ndGggaXMgMAotUEFTUyBlLnN0
eWxlLmxlbmd0aCBpcyAxCitQQVNTIGUuc3R5bGUubGVuZ3RoIGlzIDUKIFBBU1Mgc3VjY2Vzc2Z1
bGx5UGFyc2VkIGlzIHRydWUKIAogVEVTVCBDT01QTEVURQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvZmFzdC9jc3MvYm9yZGVyLWltYWdlLXN0eWxlLWxlbmd0aC5odG1sIGIvTGF5b3V0VGVzdHMv
ZmFzdC9jc3MvYm9yZGVyLWltYWdlLXN0eWxlLWxlbmd0aC5odG1sCmluZGV4IDRlNDM2OTMwNDIx
MDc3ZjAwOGQ3Yzc4MTM4Yjc5Yjc2YzI3ODBjOGUuLmEyNzlmZGVjN2M4ZjIyODYzNzI5MTUzZThi
NzZjNjA1M2FiYmI2OTAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL2JvcmRlci1p
bWFnZS1zdHlsZS1sZW5ndGguaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9ib3JkZXIt
aW1hZ2Utc3R5bGUtbGVuZ3RoLmh0bWwKQEAgLTIwLDcgKzIwLDcgQEAgc2hvdWxkQmUoImUuc3R5
bGUubGVuZ3RoIiwgIjUiKTsKIGUuc3R5bGUuYm9yZGVySW1hZ2UgPSAiIjsKIHNob3VsZEJlKCJl
LnN0eWxlLmxlbmd0aCIsICIwIik7CiBlLnN0eWxlLndlYmtpdEJvcmRlckltYWdlID0gInVybChk
dW1teTovL3Rlc3QucG5nKSAwIDcgMCAxMyAvIDAgNyAwIDEzIHN0cmV0Y2ggc3RyZXRjaCI7Ci1z
aG91bGRCZSgiZS5zdHlsZS5sZW5ndGgiLCAiMSIpOworc2hvdWxkQmUoImUuc3R5bGUubGVuZ3Ro
IiwgIjUiKTsKIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQodGVzdENvbnRhaW5lcik7CiAKIDwv
c2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvZ2V0Q29tcHV0ZWRTdHls
ZS9jb21wdXRlZC1zdHlsZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9nZXRD
b21wdXRlZFN0eWxlL2NvbXB1dGVkLXN0eWxlLWV4cGVjdGVkLnR4dAppbmRleCA2ZThlYzNkODVj
ZDFlYzkwNzljNGMwMTFlMTkzYmM2YjRkMTc2MzRlLi44NDY4ZDE2M2UxNGI3MTk1YmJiNmZkYmYz
MWRhMDU3MTAxMWM5ZTdjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9nZXRDb21w
dXRlZFN0eWxlL2NvbXB1dGVkLXN0eWxlLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9m
YXN0L2Nzcy9nZXRDb21wdXRlZFN0eWxlL2NvbXB1dGVkLXN0eWxlLWV4cGVjdGVkLnR4dApAQCAt
MjEwLDcgKzIxMCw2IEBAIHpvb206IDE7CiAtd2Via2l0LWJhY2tncm91bmQtb3JpZ2luOiBwYWRk
aW5nLWJveDsKIC13ZWJraXQtYmFja2dyb3VuZC1zaXplOiBhdXRvOwogLXdlYmtpdC1ib3JkZXIt
aG9yaXpvbnRhbC1zcGFjaW5nOiAwcHg7Ci0td2Via2l0LWJvcmRlci1pbWFnZTogbm9uZTsKIC13
ZWJraXQtYm9yZGVyLXZlcnRpY2FsLXNwYWNpbmc6IDBweDsKIC13ZWJraXQtYm94LWFsaWduOiBz
dHJldGNoOwogLXdlYmtpdC1ib3gtZGVjb3JhdGlvbi1icmVhazogc2xpY2U7CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9nZXRDb21wdXRlZFN0eWxlL2NvbXB1dGVkLXN0eWxlLXdp
dGhvdXQtcmVuZGVyZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvZ2V0Q29t
cHV0ZWRTdHlsZS9jb21wdXRlZC1zdHlsZS13aXRob3V0LXJlbmRlcmVyLWV4cGVjdGVkLnR4dApp
bmRleCAwOWVlMDUyZThlYTBkODQ0OGY3NjA4NjYzYmNmNjhiYjVhMDU1OTZlLi5jN2YxYzk3MjIy
YmIwMzFiMWMxY2Y1MWM3M2ZjODFhMzk1NmRjZTdlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9m
YXN0L2Nzcy9nZXRDb21wdXRlZFN0eWxlL2NvbXB1dGVkLXN0eWxlLXdpdGhvdXQtcmVuZGVyZXIt
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL2dldENvbXB1dGVkU3R5bGUv
Y29tcHV0ZWQtc3R5bGUtd2l0aG91dC1yZW5kZXJlci1leHBlY3RlZC50eHQKQEAgLTIwOSw3ICsy
MDksNiBAQCB6b29tOiAxCiAtd2Via2l0LWJhY2tncm91bmQtb3JpZ2luOiBwYWRkaW5nLWJveAog
LXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6IGF1dG8KIC13ZWJraXQtYm9yZGVyLWhvcml6b250YWwt
c3BhY2luZzogMHB4Ci0td2Via2l0LWJvcmRlci1pbWFnZTogbm9uZQogLXdlYmtpdC1ib3JkZXIt
dmVydGljYWwtc3BhY2luZzogMHB4CiAtd2Via2l0LWJveC1hbGlnbjogc3RyZXRjaAogLXdlYmtp
dC1ib3gtZGVjb3JhdGlvbi1icmVhazogc2xpY2UKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zh
c3QvY3NzL2dldENvbXB1dGVkU3R5bGUvcmVzb3VyY2VzL3Byb3BlcnR5LW5hbWVzLmpzIGIvTGF5
b3V0VGVzdHMvZmFzdC9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS9yZXNvdXJjZXMvcHJvcGVydHktbmFt
ZXMuanMKaW5kZXggZWIzNGZkZTYxYzZjODNkNzczM2EzZDM2NWJiYTE4MDFhOWFhNjA5NC4uZjFm
ZjhmNDA2YjZjOTY4YmU2MjU0YmNmZDdjZjQ4NzU3MmUzNTgzZiAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvZmFzdC9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS9yZXNvdXJjZXMvcHJvcGVydHktbmFtZXMu
anMKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS9yZXNvdXJjZXMv
cHJvcGVydHktbmFtZXMuanMKQEAgLTE3LDcgKzE3LDYgQEAgdmFyIHByb3BlcnRpZXNUb1Rlc3Qg
PSB7CiAgICAgIi13ZWJraXQtYmFja2dyb3VuZC1vcmlnaW4iOiB0cnVlLAogICAgICItd2Via2l0
LWJhY2tncm91bmQtc2l6ZSI6IHRydWUsCiAgICAgIi13ZWJraXQtYm9yZGVyLWhvcml6b250YWwt
c3BhY2luZyI6IHRydWUsCi0gICAgIi13ZWJraXQtYm9yZGVyLWltYWdlIjogdHJ1ZSwKICAgICAi
LXdlYmtpdC1ib3JkZXItdmVydGljYWwtc3BhY2luZyI6IHRydWUsCiAgICAgIi13ZWJraXQtYm94
LWFsaWduIjogdHJ1ZSwKICAgICAiLXdlYmtpdC1ib3gtZGVjb3JhdGlvbi1icmVhayI6IHRydWUs
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9pbWFnZS1zZXQtcGFyc2luZy1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9pbWFnZS1zZXQtcGFyc2luZy1leHBlY3Rl
ZC50eHQKaW5kZXggMzBhYTYxOTU5Yzg1YWU4MjNkY2QxZjVlODgzYTQ4NjY5ZDk0ODBmZC4uZDlh
ZDEwZmM0NWQzN2UzZGViZGZiZjk0NDBhNzA1ZDhjOTNjMTI0MSAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvZmFzdC9jc3MvaW1hZ2Utc2V0LXBhcnNpbmctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL2Zhc3QvY3NzL2ltYWdlLXNldC1wYXJzaW5nLWV4cGVjdGVkLnR4dApAQCAtODAsNyAr
ODAsNyBAQCBQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMXgnCiBQQVNTIHN1YlJ1bGUgaXMgJ2In
CiBQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMngnCiAKLVNpbmdsZSB2YWx1ZSBmb3IgYm9yZGVy
LWltYWdlIDogdXJsKCcjYScpIDF4CitTaW5nbGUgdmFsdWUgZm9yIGJvcmRlci1pbWFnZS1zb3Vy
Y2UgOiB1cmwoJyNhJykgMXgKIFBBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlKSBpcyAn
Q1NTVmFsdWVMaXN0JwogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuX19wcm90b19f
KSBpcyAnQ1NTVmFsdWVMaXN0JwogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuY29u
c3RydWN0b3IpIGlzICdGdW5jdGlvbicKQEAgLTg4LDcgKzg4LDcgQEAgUEFTUyBpbWFnZVNldFJ1
bGUubGVuZ3RoIGlzIDIKIFBBU1Mgc3ViUnVsZSBpcyAnYScKIFBBU1Mgc3ViUnVsZS5jc3NUZXh0
IGlzICcxeCcKIAotTXVsdGlwbGUgdmFsdWVzIGZvciBib3JkZXItaW1hZ2UgOiB1cmwoJyNhJykg
MXgsIHVybCgnI2InKSAyeAorTXVsdGlwbGUgdmFsdWVzIGZvciBib3JkZXItaW1hZ2Utc291cmNl
IDogdXJsKCcjYScpIDF4LCB1cmwoJyNiJykgMngKIFBBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VT
ZXRSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1
bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0JwogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFn
ZVNldFJ1bGUuY29uc3RydWN0b3IpIGlzICdGdW5jdGlvbicKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2Zhc3QvY3NzL2ltYWdlLXNldC1wYXJzaW5nLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Nz
cy9pbWFnZS1zZXQtcGFyc2luZy5odG1sCmluZGV4IGM3YjhmMjg5NTAzYzdhMjYyMmRmNGNhMzk5
ZTQzNTE2OWY1ODBkNTQuLjhiODE3NWNmNDkyZjA2NjA5ZjM4NDRiNDY4NTdkNTNkMzZjMmI2MzEg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL2ltYWdlLXNldC1wYXJzaW5nLmh0bWwK
KysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvaW1hZ2Utc2V0LXBhcnNpbmcuaHRtbApAQCAtMTA3
LDEzICsxMDcsMTMgQEAgdGVzdEltYWdlU2V0UnVsZSgiTXVsdGlwbGUgdmFsdWVzIGZvciBjb250
ZW50IiwKICAgICAgICAgICAgICAgICAidXJsKCcjYScpIDF4LCB1cmwoJyNiJykgMngiLCA0LAog
ICAgICAgICAgICAgICAgIFsiYSIsICIxeCIsICJiIiwgIjJ4Il0pOwogCi10ZXN0SW1hZ2VTZXRS
dWxlKCJTaW5nbGUgdmFsdWUgZm9yIGJvcmRlci1pbWFnZSIsCi0gICAgICAgICAgICAgICAgIi13
ZWJraXQtYm9yZGVyLWltYWdlIiwKK3Rlc3RJbWFnZVNldFJ1bGUoIlNpbmdsZSB2YWx1ZSBmb3Ig
Ym9yZGVyLWltYWdlLXNvdXJjZSIsCisgICAgICAgICAgICAgICAgImJvcmRlci1pbWFnZS1zb3Vy
Y2UiLAogICAgICAgICAgICAgICAgICJ1cmwoJyNhJykgMXgiLCAyLAogICAgICAgICAgICAgICAg
IFsiYSIsICIxeCJdKTsKIAotdGVzdEltYWdlU2V0UnVsZSgiTXVsdGlwbGUgdmFsdWVzIGZvciBi
b3JkZXItaW1hZ2UiLAotICAgICAgICAgICAgICAgICItd2Via2l0LWJvcmRlci1pbWFnZSIsCit0
ZXN0SW1hZ2VTZXRSdWxlKCJNdWx0aXBsZSB2YWx1ZXMgZm9yIGJvcmRlci1pbWFnZS1zb3VyY2Ui
LAorICAgICAgICAgICAgICAgICJib3JkZXItaW1hZ2Utc291cmNlIiwKICAgICAgICAgICAgICAg
ICAidXJsKCcjYScpIDF4LCB1cmwoJyNiJykgMngiLCA0LAogICAgICAgICAgICAgICAgIFsiYSIs
ICIxeCIsICJiIiwgIjJ4Il0pOwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy91
cmktdG9rZW4tcGFyc2luZy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy91cmkt
dG9rZW4tcGFyc2luZy1leHBlY3RlZC50eHQKaW5kZXggN2U2ZDYxZGJiZTYxOTdmMGJiNThhY2U2
NTdkNGY0NjkwMWY1Mzg0ZS4uODc1YThhOTZlMGU1MzYzMjg0MTRjYjdlMGY0NTE0MDM1OTM2MmM0
MCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdXJpLXRva2VuLXBhcnNpbmctZXhw
ZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3VyaS10b2tlbi1wYXJzaW5nLWV4
cGVjdGVkLnR4dApAQCAtMjIsNyArMjIsNyBAQCBSdWxlcyBmcm9tIHRoZSBzdHlsZXNoZWV0Ogog
I3IgeyBsaXN0LXN0eWxlLWltYWdlOiB1cmwoInVybChyKSIpOyB9CiAjcyB7IGJhY2tncm91bmQt
aW1hZ2U6IHVybCgidXJsKHMpIik7IH0KICN0IHsgbWFzay1pbWFnZTogdXJsKCJ1cmwodCkiKTsg
fQotI3UgeyAtd2Via2l0LWJvcmRlci1pbWFnZTogdXJsKCJ1cmwodSkiKSAxIDIgMyA0IGZpbGwg
c3RyZXRjaCByb3VuZDsgfQorI3UgeyBib3JkZXItaW1hZ2U6IHVybCgidXJsKHUpIikgMSAyIDMg
NCBmaWxsIHN0cmV0Y2ggcm91bmQ7IH0KICN2IHsgLXdlYmtpdC1tYXNrLWJveC1pbWFnZTogdXJs
KCJ1cmwodikiKSAxIDIgMyA0IGZpbGwgc3RyZXRjaCByb3VuZDsgfQogI3cgeyBjb250ZW50OiB1
cmwoIndcZCB3Iik7IH0KICN4IHsgY29udGVudDogdXJsKCIgeCB4XDkgeCAiKTsgfQpAQCAtNDcs
NyArNDcsNyBAQCBFeHBlY3RlZCByZXN1bHQ6CiAjciB7IGxpc3Qtc3R5bGUtaW1hZ2U6IHVybCgi
dXJsKHIpIik7IH0KICNzIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCJ1cmwocykiKTsgfQogI3Qg
eyBtYXNrLWltYWdlOiB1cmwoInVybCh0KSIpOyB9Ci0jdSB7IC13ZWJraXQtYm9yZGVyLWltYWdl
OiB1cmwoInVybCh1KSIpIDEgMiAzIDQgZmlsbCBzdHJldGNoIHJvdW5kOyB9CisjdSB7IGJvcmRl
ci1pbWFnZTogdXJsKCJ1cmwodSkiKSAxIDIgMyA0IGZpbGwgc3RyZXRjaCByb3VuZDsgfQogI3Yg
eyAtd2Via2l0LW1hc2stYm94LWltYWdlOiB1cmwoInVybCh2KSIpIDEgMiAzIDQgZmlsbCBzdHJl
dGNoIHJvdW5kOyB9CiAjdyB7IGNvbnRlbnQ6IHVybCgid1xkIHciKTsgfQogI3ggeyBjb250ZW50
OiB1cmwoIiB4IHhcOSB4ICIpOyB9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy91
cmktdG9rZW4tcGFyc2luZy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdXJpLXRva2VuLXBh
cnNpbmcuaHRtbAppbmRleCBlMTQ5NmIxYTRmYjQ2ODE3MTY4MzJkY2U2MTdkYzQ1NWE2ZDMxODkw
Li5kYTdiNzA3NGNkZTdlNzc3MDQ1OGJiMDkzZTYzYjEyNDM0NDZhMTU4IDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9mYXN0L2Nzcy91cmktdG9rZW4tcGFyc2luZy5odG1sCisrKyBiL0xheW91dFRl
c3RzL2Zhc3QvY3NzL3VyaS10b2tlbi1wYXJzaW5nLmh0bWwKQEAgLTkwLDcgKzkwLDcgQEAgZnVu
Y3Rpb24gcnVuVGVzdCgpCiAjciB7IGxpc3Qtc3R5bGUtaW1hZ2U6IHVybCgidXJsKHIpIik7IH0K
ICNzIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCJ1cmwocykiKTsgfQogI3QgeyBtYXNrLWltYWdl
OiB1cmwoInVybCh0KSIpOyB9Ci0jdSB7IC13ZWJraXQtYm9yZGVyLWltYWdlOiB1cmwoInVybCh1
KSIpIDEgMiAzIDQgZmlsbCBzdHJldGNoIHJvdW5kOyB9CisjdSB7IGJvcmRlci1pbWFnZTogdXJs
KCJ1cmwodSkiKSAxIDIgMyA0IGZpbGwgc3RyZXRjaCByb3VuZDsgfQogI3YgeyAtd2Via2l0LW1h
c2stYm94LWltYWdlOiB1cmwoInVybCh2KSIpIDEgMiAzIDQgZmlsbCBzdHJldGNoIHJvdW5kOyB9
CiAjdyB7IGNvbnRlbnQ6IHVybCgid1xkIHciKTsgfQogI3ggeyBjb250ZW50OiB1cmwoIiB4IHhc
OSB4ICIpOyB9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2Nzcy9jc3MtY2FzY2FkZS9hbGwtcHJvcC1pbml0aWFsLXhtbC1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3Mt
Y2FzY2FkZS9hbGwtcHJvcC1pbml0aWFsLXhtbC1leHBlY3RlZC50eHQKaW5kZXggOWIyNTQ3MTQy
ZDg1NWIxZDM4ZGUwNDAxM2FmYWQwMDMyZjBkNWY5Ni4uMGY3NzgxYjBlYWVlNjU3Mzc2NTVjYTFm
NTdlYzEwNTI1NmY0MWJjNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNhc2NhZGUvYWxsLXByb3AtaW5pdGlhbC14bWwtZXhw
ZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvY3NzL2Nzcy1jYXNjYWRlL2FsbC1wcm9wLWluaXRpYWwteG1sLWV4cGVjdGVkLnR4dApAQCAt
MzQxLDcgKzM0MSw2IEBAIFBBU1MgLXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXAKIFBBU1MgLXdlYmtp
dC1iYWNrZ3JvdW5kLW9yaWdpbgogUEFTUyAtd2Via2l0LWJhY2tncm91bmQtc2l6ZQogUEFTUyAt
d2Via2l0LWJvcmRlci1ob3Jpem9udGFsLXNwYWNpbmcKLVBBU1MgLXdlYmtpdC1ib3JkZXItaW1h
Z2UKIFBBU1MgLXdlYmtpdC1ib3JkZXItdmVydGljYWwtc3BhY2luZwogUEFTUyAtd2Via2l0LWJv
eC1hbGlnbgogUEFTUyAtd2Via2l0LWJveC1kZWNvcmF0aW9uLWJyZWFrCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS9nZXRD
b21wdXRlZFN0eWxlLWRldGFjaGVkLXN1YnRyZWUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nzb20vZ2V0Q29tcHV0ZWRTdHls
ZS1kZXRhY2hlZC1zdWJ0cmVlLWV4cGVjdGVkLnR4dAppbmRleCA5YzZjMmQ2OTQ5NmE5N2Y1ZGVh
ZDcwYTJjMGFhNzBiMjY4ZGU4M2VmLi5hZmUzZGRjMjIwMDBhMGU3NzQzOGFmYjJjZmZkMzlmYTc0
ZmQ0ZGY4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2Nzcy9jc3NvbS9nZXRDb21wdXRlZFN0eWxlLWRldGFjaGVkLXN1YnRyZWUtZXhwZWN0
ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
Y3NzL2Nzc29tL2dldENvbXB1dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS1leHBlY3RlZC50eHQK
QEAgLTEsOCArMSw4IEBACiAKIFBBU1MgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxl
IGZvciBkZXRhY2hlZCBlbGVtZW50Ci1GQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBz
dHlsZSBmb3IgZWxlbWVudCBpbiBub24tcmVuZGVyZWQgaWZyYW1lIChkaXNwbGF5OiBub25lKSBh
c3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk3Ci1GQUlMIGdldENvbXB1dGVkU3R5
bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBpbiBub24tcmVuZGVyZWQgaWZyYW1lIChk
aXNwbGF5OiBub25lKSBmcm9tIGlmcmFtZSdzIHdpbmRvdyBhc3NlcnRfZXF1YWxzOiBleHBlY3Rl
ZCAwIGJ1dCBnb3QgMzk3Ci1GQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBm
b3IgZWxlbWVudCBvdXRzaWRlIHRoZSBmbGF0IHRyZWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQg
MCBidXQgZ290IDM5NwotRkFJTCBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9y
IGRlc2NlbmRhbnQgb3V0c2lkZSB0aGUgZmxhdCB0cmVlIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVk
IDAgYnV0IGdvdCAzOTcKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZv
ciBlbGVtZW50IGluIG5vbi1yZW5kZXJlZCBpZnJhbWUgKGRpc3BsYXk6IG5vbmUpIGFzc2VydF9l
cXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTYKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1
cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50IGluIG5vbi1yZW5kZXJlZCBpZnJhbWUgKGRpc3BsYXk6
IG5vbmUpIGZyb20gaWZyYW1lJ3Mgd2luZG93IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0
IGdvdCAzOTYKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVt
ZW50IG91dHNpZGUgdGhlIGZsYXQgdHJlZSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBn
b3QgMzk2CitGQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZGVzY2Vu
ZGFudCBvdXRzaWRlIHRoZSBmbGF0IHRyZWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQg
Z290IDM5NgogUEFTUyBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIHNoYWRv
dyB0cmVlIG91dHNpZGUgb2YgZmxhdHRlbmVkIHRyZWUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vZ3RrL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1j
YXNjYWRlL2FsbC1wcm9wLWluaXRpYWwteG1sLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3Bs
YXRmb3JtL2d0ay9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY2FzY2Fk
ZS9hbGwtcHJvcC1pbml0aWFsLXhtbC1leHBlY3RlZC50eHQKaW5kZXggN2IxYjNjNjg0NGM0NDk3
MjE0M2ZhNjAzMzcxYWIzMDU5Y2IyMDc3Zi4uYTI2MTM1MDU1MGQ4Yjg3ZTM2YzJjZGZjOWFjYmRi
MWUxMTVjN2M4ZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jYXNjYWRlL2FsbC1wcm9wLWluaXRpYWwt
eG1sLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNhc2NhZGUvYWxsLXByb3AtaW5pdGlhbC14
bWwtZXhwZWN0ZWQudHh0CkBAIC0zMzksNyArMzM5LDYgQEAgUEFTUyAtd2Via2l0LWJhY2tncm91
bmQtY2xpcAogUEFTUyAtd2Via2l0LWJhY2tncm91bmQtb3JpZ2luCiBQQVNTIC13ZWJraXQtYmFj
a2dyb3VuZC1zaXplCiBQQVNTIC13ZWJraXQtYm9yZGVyLWhvcml6b250YWwtc3BhY2luZwotUEFT
UyAtd2Via2l0LWJvcmRlci1pbWFnZQogUEFTUyAtd2Via2l0LWJvcmRlci12ZXJ0aWNhbC1zcGFj
aW5nCiBQQVNTIC13ZWJraXQtYm94LWFsaWduCiBQQVNTIC13ZWJraXQtYm94LWRlY29yYXRpb24t
YnJlYWsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS9nZXRDb21wdXRlZFN0eWxlLWRldGFjaGVkLXN1
YnRyZWUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dldENvbXB1dGVkU3R5bGUtZGV0YWNoZWQt
c3VidHJlZS1leHBlY3RlZC50eHQKaW5kZXggYTVlZWE2Yzg2OGIxNGIxMTRjOWMyNWMzZDM1MzFi
ZmY5YzhhNTE5ZS4uNjgzN2VhMjZmZmRkODc0YTllY2UyMjQ1OTlkYzlkNThlMDg2ZGJjNCAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvY3NzL2Nzc29tL2dldENvbXB1dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS1leHBl
Y3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dldENvbXB1dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJl
ZS1leHBlY3RlZC50eHQKQEAgLTEsOCArMSw4IEBACiAKIFBBU1MgZ2V0Q29tcHV0ZWRTdHlsZSBy
ZXR1cm5zIG5vIHN0eWxlIGZvciBkZXRhY2hlZCBlbGVtZW50Ci1GQUlMIGdldENvbXB1dGVkU3R5
bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBpbiBub24tcmVuZGVyZWQgaWZyYW1lIChk
aXNwbGF5OiBub25lKSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk1Ci1GQUlM
IGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBpbiBub24tcmVu
ZGVyZWQgaWZyYW1lIChkaXNwbGF5OiBub25lKSBmcm9tIGlmcmFtZSdzIHdpbmRvdyBhc3NlcnRf
ZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk1Ci1GQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0
dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBvdXRzaWRlIHRoZSBmbGF0IHRyZWUgYXNzZXJ0X2Vx
dWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDM5NQotRkFJTCBnZXRDb21wdXRlZFN0eWxlIHJldHVy
bnMgbm8gc3R5bGUgZm9yIGRlc2NlbmRhbnQgb3V0c2lkZSB0aGUgZmxhdCB0cmVlIGFzc2VydF9l
cXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTUKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1
cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50IGluIG5vbi1yZW5kZXJlZCBpZnJhbWUgKGRpc3BsYXk6
IG5vbmUpIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTQKK0ZBSUwgZ2V0Q29t
cHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50IGluIG5vbi1yZW5kZXJlZCBp
ZnJhbWUgKGRpc3BsYXk6IG5vbmUpIGZyb20gaWZyYW1lJ3Mgd2luZG93IGFzc2VydF9lcXVhbHM6
IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTQKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5v
IHN0eWxlIGZvciBlbGVtZW50IG91dHNpZGUgdGhlIGZsYXQgdHJlZSBhc3NlcnRfZXF1YWxzOiBl
eHBlY3RlZCAwIGJ1dCBnb3QgMzk0CitGQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBz
dHlsZSBmb3IgZGVzY2VuZGFudCBvdXRzaWRlIHRoZSBmbGF0IHRyZWUgYXNzZXJ0X2VxdWFsczog
ZXhwZWN0ZWQgMCBidXQgZ290IDM5NAogUEFTUyBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8g
c3R5bGUgZm9yIHNoYWRvdyB0cmVlIG91dHNpZGUgb2YgZmxhdHRlbmVkIHRyZWUKIApkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL2Nzcy1jYXNjYWRlL2FsbC1wcm9wLWluaXRpYWwteG1sLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2Nzcy9jc3MtY2FzY2FkZS9hbGwtcHJvcC1pbml0aWFsLXhtbC1leHBlY3RlZC50eHQKaW5kZXgg
YmUzZGI5MGNkMDkwMDAwM2JkODA4NWE1OWVjMDhkZWE3MTEzN2ZjMS4uNDMwOTg1ZTQ2Y2ExMjk5
MmZkYmU4OWJlZDI2ZTI1M2RiMDE1YWViYyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vaW9zL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jYXNjYWRlL2Fs
bC1wcm9wLWluaXRpYWwteG1sLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS9pb3MvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNhc2NhZGUvYWxs
LXByb3AtaW5pdGlhbC14bWwtZXhwZWN0ZWQudHh0CkBAIC0zMTEsNyArMzExLDYgQEAgUEFTUyAt
d2Via2l0LWJhY2tncm91bmQtY2xpcAogUEFTUyAtd2Via2l0LWJhY2tncm91bmQtb3JpZ2luCiBQ
QVNTIC13ZWJraXQtYmFja2dyb3VuZC1zaXplCiBQQVNTIC13ZWJraXQtYm9yZGVyLWhvcml6b250
YWwtc3BhY2luZwotUEFTUyAtd2Via2l0LWJvcmRlci1pbWFnZQogUEFTUyAtd2Via2l0LWJvcmRl
ci12ZXJ0aWNhbC1zcGFjaW5nCiBQQVNTIC13ZWJraXQtYm94LWFsaWduCiBQQVNTIC13ZWJraXQt
Ym94LWRlY29yYXRpb24tYnJlYWsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2lv
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS9nZXRDb21wdXRlZFN0
eWxlLWRldGFjaGVkLXN1YnRyZWUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
aW9zL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dldENvbXB1dGVk
U3R5bGUtZGV0YWNoZWQtc3VidHJlZS1leHBlY3RlZC50eHQKaW5kZXggOTAzYmZjNmE3ZTliMjgy
NzI0OGFiMDczYjUxMDY3N2U0MTQ5ZGYzMi4uYTJiODQ5ZWRjNDRiNWQ0OWIxMzA3NTNiOTFmYjcz
MDU0YzMyNjRiZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dldENvbXB1dGVkU3R5bGUtZGV0YWNo
ZWQtc3VidHJlZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dldENvbXB1dGVkU3R5bGUt
ZGV0YWNoZWQtc3VidHJlZS1leHBlY3RlZC50eHQKQEAgLTEsOCArMSw4IEBACiAKIFBBU1MgZ2V0
Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBkZXRhY2hlZCBlbGVtZW50Ci1GQUlM
IGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBpbiBub24tcmVu
ZGVyZWQgaWZyYW1lIChkaXNwbGF5OiBub25lKSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1
dCBnb3QgMzk5Ci1GQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxl
bWVudCBpbiBub24tcmVuZGVyZWQgaWZyYW1lIChkaXNwbGF5OiBub25lKSBmcm9tIGlmcmFtZSdz
IHdpbmRvdyBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk5Ci1GQUlMIGdldENv
bXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBvdXRzaWRlIHRoZSBmbGF0
IHRyZWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDM5OQotRkFJTCBnZXRDb21w
dXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIGRlc2NlbmRhbnQgb3V0c2lkZSB0aGUgZmxh
dCB0cmVlIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTkKK0ZBSUwgZ2V0Q29t
cHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50IGluIG5vbi1yZW5kZXJlZCBp
ZnJhbWUgKGRpc3BsYXk6IG5vbmUpIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAz
OTgKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50IGlu
IG5vbi1yZW5kZXJlZCBpZnJhbWUgKGRpc3BsYXk6IG5vbmUpIGZyb20gaWZyYW1lJ3Mgd2luZG93
IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTgKK0ZBSUwgZ2V0Q29tcHV0ZWRT
dHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50IG91dHNpZGUgdGhlIGZsYXQgdHJlZSBh
c3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk4CitGQUlMIGdldENvbXB1dGVkU3R5
bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZGVzY2VuZGFudCBvdXRzaWRlIHRoZSBmbGF0IHRyZWUg
YXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDM5OAogUEFTUyBnZXRDb21wdXRlZFN0
eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIHNoYWRvdyB0cmVlIG91dHNpZGUgb2YgZmxhdHRlbmVk
IHRyZWUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd3BlL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jYXNjYWRlL2FsbC1wcm9wLWluaXRpYWwteG1s
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3dwZS9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY2FzY2FkZS9hbGwtcHJvcC1pbml0aWFsLXhtbC1leHBl
Y3RlZC50eHQKaW5kZXggOGUyZDAxMTFmYTExODYwYTM1MDQwOTQ0MGI0NzU0ZWI0YTI0MTQzZS4u
OTM5NTYzMmI5OTE4ZjZhMzkwOTM5MDRiMDJhZWRmMWY4Zjk5M2E0NyAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vd3BlL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3Nz
L2Nzcy1jYXNjYWRlL2FsbC1wcm9wLWluaXRpYWwteG1sLWV4cGVjdGVkLnR4dAorKysgYi9MYXlv
dXRUZXN0cy9wbGF0Zm9ybS93cGUvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mv
Y3NzLWNhc2NhZGUvYWxsLXByb3AtaW5pdGlhbC14bWwtZXhwZWN0ZWQudHh0CkBAIC0zMzksNyAr
MzM5LDYgQEAgUEFTUyAtd2Via2l0LWJhY2tncm91bmQtY2xpcAogUEFTUyAtd2Via2l0LWJhY2tn
cm91bmQtb3JpZ2luCiBQQVNTIC13ZWJraXQtYmFja2dyb3VuZC1zaXplCiBQQVNTIC13ZWJraXQt
Ym9yZGVyLWhvcml6b250YWwtc3BhY2luZwotUEFTUyAtd2Via2l0LWJvcmRlci1pbWFnZQogUEFT
UyAtd2Via2l0LWJvcmRlci12ZXJ0aWNhbC1zcGFjaW5nCiBQQVNTIC13ZWJraXQtYm94LWFsaWdu
CiBQQVNTIC13ZWJraXQtYm94LWRlY29yYXRpb24tYnJlYWsKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL3BsYXRmb3JtL3dwZS9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3Nv
bS9nZXRDb21wdXRlZFN0eWxlLWRldGFjaGVkLXN1YnRyZWUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvcGxhdGZvcm0vd3BlL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nz
c29tL2dldENvbXB1dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS1leHBlY3RlZC50eHQKaW5kZXgg
NjgzN2VhMjZmZmRkODc0YTllY2UyMjQ1OTlkYzlkNThlMDg2ZGJjNC4uODg3Y2E2YzkxOWRlM2Ew
YWUwMGE3ZDc1YzY3NzgzZWFlMWI1YWQ0MCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vd3BlL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dldENvbXB1
dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMv
cGxhdGZvcm0vd3BlL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dl
dENvbXB1dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS1leHBlY3RlZC50eHQKQEAgLTEsOCArMSw4
IEBACiAKIFBBU1MgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBkZXRhY2hl
ZCBlbGVtZW50Ci1GQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxl
bWVudCBpbiBub24tcmVuZGVyZWQgaWZyYW1lIChkaXNwbGF5OiBub25lKSBhc3NlcnRfZXF1YWxz
OiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk0Ci1GQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBu
byBzdHlsZSBmb3IgZWxlbWVudCBpbiBub24tcmVuZGVyZWQgaWZyYW1lIChkaXNwbGF5OiBub25l
KSBmcm9tIGlmcmFtZSdzIHdpbmRvdyBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3Qg
Mzk0Ci1GQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBv
dXRzaWRlIHRoZSBmbGF0IHRyZWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDM5
NAotRkFJTCBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIGRlc2NlbmRhbnQg
b3V0c2lkZSB0aGUgZmxhdCB0cmVlIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAz
OTQKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50IGlu
IG5vbi1yZW5kZXJlZCBpZnJhbWUgKGRpc3BsYXk6IG5vbmUpIGFzc2VydF9lcXVhbHM6IGV4cGVj
dGVkIDAgYnV0IGdvdCAzOTMKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxl
IGZvciBlbGVtZW50IGluIG5vbi1yZW5kZXJlZCBpZnJhbWUgKGRpc3BsYXk6IG5vbmUpIGZyb20g
aWZyYW1lJ3Mgd2luZG93IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTMKK0ZB
SUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50IG91dHNpZGUg
dGhlIGZsYXQgdHJlZSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzkzCitGQUlM
IGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZGVzY2VuZGFudCBvdXRzaWRl
IHRoZSBmbGF0IHRyZWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDM5MwogUEFT
UyBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIHNoYWRvdyB0cmVlIG91dHNp
ZGUgb2YgZmxhdHRlbmVkIHRyZWUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3ZnL2Nzcy9n
ZXRDb21wdXRlZFN0eWxlLWJhc2ljLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3N2Zy9jc3Mv
Z2V0Q29tcHV0ZWRTdHlsZS1iYXNpYy1leHBlY3RlZC50eHQKaW5kZXggM2ZlNzc4ZmMwNGQ1YzYw
MWY3YzAzNzZiZjNlMWY2OTJiYjg4NDRjZS4uYzU2NDI4OTlkNjA3YTM2ZDE3OTRiYWZmOWJmZWVj
ZjUyNTAxZGYyNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvc3ZnL2Nzcy9nZXRDb21wdXRlZFN0
eWxlLWJhc2ljLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9zdmcvY3NzL2dldENvbXB1
dGVkU3R5bGUtYmFzaWMtZXhwZWN0ZWQudHh0CkBAIC00MTgsOCArNDE4LDYgQEAgcmVjdDogc3R5
bGUuZ2V0UHJvcGVydHlWYWx1ZSgtd2Via2l0LWJhY2tncm91bmQtc2l6ZSkgOiBhdXRvCiByZWN0
OiBzdHlsZS5nZXRQcm9wZXJ0eUNTU1ZhbHVlKC13ZWJraXQtYmFja2dyb3VuZC1zaXplKSA6IFtv
YmplY3QgQ1NTUHJpbWl0aXZlVmFsdWVdCiByZWN0OiBzdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKC13
ZWJraXQtYm9yZGVyLWhvcml6b250YWwtc3BhY2luZykgOiAwcHgKIHJlY3Q6IHN0eWxlLmdldFBy
b3BlcnR5Q1NTVmFsdWUoLXdlYmtpdC1ib3JkZXItaG9yaXpvbnRhbC1zcGFjaW5nKSA6IFtvYmpl
Y3QgQ1NTUHJpbWl0aXZlVmFsdWVdCi1yZWN0OiBzdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKC13ZWJr
aXQtYm9yZGVyLWltYWdlKSA6IG5vbmUKLXJlY3Q6IHN0eWxlLmdldFByb3BlcnR5Q1NTVmFsdWUo
LXdlYmtpdC1ib3JkZXItaW1hZ2UpIDogW29iamVjdCBDU1NQcmltaXRpdmVWYWx1ZV0KIHJlY3Q6
IHN0eWxlLmdldFByb3BlcnR5VmFsdWUoLXdlYmtpdC1ib3JkZXItdmVydGljYWwtc3BhY2luZykg
OiAwcHgKIHJlY3Q6IHN0eWxlLmdldFByb3BlcnR5Q1NTVmFsdWUoLXdlYmtpdC1ib3JkZXItdmVy
dGljYWwtc3BhY2luZykgOiBbb2JqZWN0IENTU1ByaW1pdGl2ZVZhbHVlXQogcmVjdDogc3R5bGUu
Z2V0UHJvcGVydHlWYWx1ZSgtd2Via2l0LWJveC1hbGlnbikgOiBzdHJldGNoCkBAIC05MzQsOCAr
OTMyLDYgQEAgZzogc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgtd2Via2l0LWJhY2tncm91bmQtc2l6
ZSkgOiBhdXRvCiBnOiBzdHlsZS5nZXRQcm9wZXJ0eUNTU1ZhbHVlKC13ZWJraXQtYmFja2dyb3Vu
ZC1zaXplKSA6IFtvYmplY3QgQ1NTUHJpbWl0aXZlVmFsdWVdCiBnOiBzdHlsZS5nZXRQcm9wZXJ0
eVZhbHVlKC13ZWJraXQtYm9yZGVyLWhvcml6b250YWwtc3BhY2luZykgOiAwcHgKIGc6IHN0eWxl
LmdldFByb3BlcnR5Q1NTVmFsdWUoLXdlYmtpdC1ib3JkZXItaG9yaXpvbnRhbC1zcGFjaW5nKSA6
IFtvYmplY3QgQ1NTUHJpbWl0aXZlVmFsdWVdCi1nOiBzdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKC13
ZWJraXQtYm9yZGVyLWltYWdlKSA6IG5vbmUKLWc6IHN0eWxlLmdldFByb3BlcnR5Q1NTVmFsdWUo
LXdlYmtpdC1ib3JkZXItaW1hZ2UpIDogW29iamVjdCBDU1NQcmltaXRpdmVWYWx1ZV0KIGc6IHN0
eWxlLmdldFByb3BlcnR5VmFsdWUoLXdlYmtpdC1ib3JkZXItdmVydGljYWwtc3BhY2luZykgOiAw
cHgKIGc6IHN0eWxlLmdldFByb3BlcnR5Q1NTVmFsdWUoLXdlYmtpdC1ib3JkZXItdmVydGljYWwt
c3BhY2luZykgOiBbb2JqZWN0IENTU1ByaW1pdGl2ZVZhbHVlXQogZzogc3R5bGUuZ2V0UHJvcGVy
dHlWYWx1ZSgtd2Via2l0LWJveC1hbGlnbikgOiBzdHJldGNoCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>456423</attachid>
            <date>2022-04-01 18:04:30 -0700</date>
            <delta_ts>2022-04-02 08:11:36 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-237487-20220402030428.patch</filename>
            <type>text/plain</type>
            <size>111304</size>
            <attacher name="Oriol Brufau">obrufau</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkxNzQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzI5OTFmYTkzYjc0MWRh
MDc2ZTk4MTFmYTYxMDExZGQ2MzdiNWYyMC4uYzAzNDM1NWEyZGQ3NDA5ZjA3YjE3MGIyYTZiNDMz
ODg0OWE5Mjc4YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0OSBAQAorMjAyMi0wNC0wMSAgT3Jp
b2wgQnJ1ZmF1ICA8b2JydWZhdUBpZ2FsaWEuY29tPgorCisgICAgICAgIFtjc3NdIFR1cm4gLXdl
YmtpdC1ib3JkZXItaW1hZ2UgaW50byBhIHNob3J0aGFuZAorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM3NDg3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhlICctd2Via2l0LWJvcmRlci1pbWFnZScgcHJv
cGVydHkgd2FzIGNvbnNpZGVyZWQgdG8gYmUgYSBsb25naGFuZCwKKyAgICAgICAgc2hhcmluZyBj
b21wdXRlZCB2YWx1ZXMgd2l0aCB0aGUgdmFyaW91cyAnYm9yZGVyLWltYWdlLSonLgorCisgICAg
ICAgIFRoaXMgcGF0Y2ggdHVybnMgaXQgaW50byBhIHNob3J0aGFuZCBvZiAnYm9yZGVyLWltYWdl
LSonLgorCisgICAgICAgIFRlc3RzOiBmYXN0L2JvcmRlcnMvYm9yZGVyLWltYWdlLWxlZ2FjeS5o
dG1sCisgICAgICAgICAgICAgICBmYXN0L2Nzcy9ib3JkZXItaW1hZ2Utc3R5bGUtbGVuZ3RoLmh0
bWwKKyAgICAgICAgICAgICAgIGZhc3QvY3NzL2dldENvbXB1dGVkU3R5bGUvY29tcHV0ZWQtc3R5
bGUuaHRtbAorICAgICAgICAgICAgICAgZmFzdC9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS9jb21wdXRl
ZC1zdHlsZS13aXRob3V0LXJlbmRlcmVyLmh0bWwKKyAgICAgICAgICAgICAgIGZhc3QvY3NzL2lt
YWdlLXNldC1wYXJzaW5nLmh0bWwKKyAgICAgICAgICAgICAgIGZhc3QvY3NzL3VyaS10b2tlbi1w
YXJzaW5nLmh0bWwKKyAgICAgICAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvY3NzL2Nzcy1jYXNjYWRlL2FsbC1wcm9wLWluaXRpYWwteG1sLmh0bWwKKyAgICAgICAgICAg
ICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dldENvbXB1dGVk
U3R5bGUtZGV0YWNoZWQtc3VidHJlZS5odG1sCisgICAgICAgICAgICAgICBzdmcvY3NzL2dldENv
bXB1dGVkU3R5bGUtYmFzaWMueGh0bWwKKworICAgICAgICAqIFNvdXJjZXMudHh0OgorICAgICAg
ICBBZGQgdGhlIG5ldyBmaWxlIENTU0JvcmRlckltYWdlV2lkdGhWYWx1ZS5jcHAuCisKKyAgICAg
ICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgIEFkZCB0aGUg
bmV3IGZpbGVzIENTU0JvcmRlckltYWdlV2lkdGhWYWx1ZS5oIGFuZAorICAgICAgICBDU1NCb3Jk
ZXJJbWFnZVdpZHRoVmFsdWUuY3BwLgorCisgICAgICAgICogYW5pbWF0aW9uL0NTU1Byb3BlcnR5
QW5pbWF0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmJsZW5kRnVuYyk6CisgICAgICAgIChX
ZWJDb3JlOjpDU1NQcm9wZXJ0eUFuaW1hdGlvbldyYXBwZXJNYXA6OkNTU1Byb3BlcnR5QW5pbWF0
aW9uV3JhcHBlck1hcCk6CisgICAgICAgIFdoZW4gYW5pbWF0aW5nIGJvcmRlci1pbWFnZS13aWR0
aCwgdGFrZSBpbnRvIGFjY291bnQgdGhhdCBpdCBjYW4gY29tZQorICAgICAgICBmcm9tIC13ZWJr
aXQtYm9yZGVyLWltYWdlLCBhbmQgdGh1cyBvdmVycmlkZSBib3JkZXIgd2lkdGhzLgorICAgICAg
ICBEbyBub3QgaW50ZXJwb2xhdGUgYSB2YWx1ZSBhIGRvZXMgb3ZlcnJpZGUgYm9yZGVyIHdpZHRo
cyB3aXRoIGFub3RoZXIKKyAgICAgICAgdmFsdWUgdGhhdCBkb2VzIG5vdC4KKyAgICAgICAgRXZl
biBpZiBib3JkZXItaW1hZ2Utd2lkdGggYWNjZXB0cyA8bGVuZ3RoLXBlcmNlbnRhZ2U+LCB3aGVu
IG92ZXJyaWRpbmcKKyAgICAgICAgYm9yZGVyIHdpZHRocyBkbyBub3QgaW50ZXJwb2xhdGUgYmV0
d2VlbiBhIDxsZW5ndGgtcGVyY2VudGFnZT4gYW5kIGEKKyAgICAgICAgcGxhaW4gPGxlbmd0aD4s
IHNpbmNlIG9ubHkgdGhlIGxhdHRlciBhcmUgdmFsaWQgYm9yZGVyIHdpZHRocy4KKworICAgICAg
ICAqIGNzcy9DU1NCb3JkZXJJbWFnZVdpZHRoVmFsdWUuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdl
YkNvcmU6OkNTU0JvcmRlckltYWdlV2lkdGhWYWx1ZTo6Q1NTQm9yZGVySW1hZ2VXaWR0aFZhbHVl
KToKKyAgICAgICAgKFdlYkNvcmU6OkNTU0JvcmRlckltYWdlV2lkdGhWYWx1ZTo6Y3VzdG9tQ1NT
VGV4dCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpDU1NCb3JkZXJJbWFnZVdpZHRoVmFsdWU6
OmVxdWFscyBjb25zdCk6CisgICAgICAgICogY3NzL0NTU0JvcmRlckltYWdlV2lkdGhWYWx1ZS5o
OiBBZGRlZC4KKyAgICAgICAgQWRkIENTU0JvcmRlckltYWdlV2lkdGhWYWx1ZSBjbGFzcywgYmFz
ZWQgb24gQ1NTQm9yZGVySW1hZ2VTbGljZVZhbHVlLgorICAgICAgICBJdCdzIGEgd3JhcHBlciBm
b3IgYSBDU1NfUVVBRCBDU1NQcmltaXRpdmVWYWx1ZSwgYnV0IHdpdGggYSBib29sIHRoYXQKKyAg
ICAgICAgaW5kaWNhdGVzIGlmIHRoZSB2YWx1ZSB3aWxsIG92ZXJyaWRlIGJvcmRlciB3aWR0aHMu
CisKKyAgICAgICAgKiBjc3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OnZhbHVlRm9yTmluZVBpZWNlSW1hZ2UpOgorICAgICAgICAoV2ViQ29yZTo6
dmFsdWVGb3JSZWZsZWN0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OkNvbXB1dGVkU3R5bGVFeHRy
YWN0b3I6OnZhbHVlRm9yUHJvcGVydHlJblN0eWxlKToKKyAgICAgICAgU2VyaWFsaXplIGJvcmRl
ci1pbWFnZS13aWR0aCBhcyBlbXB0eSBzdHJpbmcgaWYgaXQgb3ZlcnJpZGVzIGJvcmRlcgorICAg
ICAgICB3aWR0aHMsIHNpbmNlIGl0cyBncmFtbWFyIGRvZXNuJ3QgYWxsb3cgdGhpcy4KKyAgICAg
ICAgU2VyaWFsaXplIGJvcmRlci1pbWFnZSBhcyBlbXB0eSBzdHJpbmcgaWYgYm9yZGVyLWltYWdl
LXdpZHRoIG92ZXJyaWRlcworICAgICAgICBib3JkZXIgd2lkdGhzLCBzaW5jZSBpdHMgZ3JhbW1h
ciBkb2Vzbid0IGFsbG93IHRoaXMuCisgICAgICAgIEhhbmRsZSBzZXJpYWxpemF0aW9uIG9mIC13
ZWJraXQtYm9yZGVyLWltYWdlLgorCisgICAgICAgICogY3NzL0NTU1Byb3BlcnRpZXMuanNvbjoK
KyAgICAgICAgVHVybiAtd2Via2l0LWJvcmRlci1pbWFnZSBpbnRvIGEgc2hvcnRoYW5kIG9mIGJv
cmRlci1pbWFnZS1zb3VyY2UsCisgICAgICAgIGJvcmRlci1pbWFnZS1zbGljZSwgYm9yZGVyLWlt
YWdlLXdpZHRoLCBib3JkZXItaW1hZ2Utb3V0c2V0IGFuZAorICAgICAgICBib3JkZXItaW1hZ2Ut
cmVwZWF0LgorCisgICAgICAgICogY3NzL0NTU1RvU3R5bGVNYXAuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6Q1NTVG9TdHlsZU1hcDo6bWFwTmluZVBpZWNlSW1hZ2UpOgorICAgICAgICAoV2ViQ29y
ZTo6Q1NTVG9TdHlsZU1hcDo6bWFwTmluZVBpZWNlSW1hZ2VXaWR0aCk6CisgICAgICAgIChXZWJD
b3JlOjpDU1NUb1N0eWxlTWFwOjptYXBOaW5lUGllY2VJbWFnZVF1YWQpOgorICAgICAgICAqIGNz
cy9DU1NUb1N0eWxlTWFwLmg6CisgICAgICAgIEhhbmRsZSBDU1NCb3JkZXJJbWFnZVdpZHRoVmFs
dWUgdmFsdWVzLgorICAgICAgICBSZW1vdmUgb2xkIHdheSBvZiBoYW5kbGluZyAtd2Via2l0LWJv
cmRlci1pbWFnZS4KKworICAgICAgICAqIGNzcy9DU1NWYWx1ZS5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpDU1NWYWx1ZTo6ZXF1YWxzIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1ZhbHVl
Ojpjc3NUZXh0IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1ZhbHVlOjpkZXN0cm95KToK
KyAgICAgICAgKiBjc3MvQ1NTVmFsdWUuaDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1ZhbHVlOjpp
c0JvcmRlckltYWdlV2lkdGhWYWx1ZSBjb25zdCk6CisgICAgICAgIEhhbmRsZSBuZXcgQ1NTQm9y
ZGVySW1hZ2VXaWR0aFZhbHVlIHZhbHVlLgorCisgICAgICAgICogY3NzL1N0eWxlUHJvcGVydGll
cy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZVByb3BlcnRpZXM6OmdldFByb3BlcnR5VmFs
dWUgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVQcm9wZXJ0aWVzOjpib3JkZXJJbWFn
ZVByb3BlcnR5VmFsdWUgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVQcm9wZXJ0aWVz
Ojphc1RleHQgY29uc3QpOgorICAgICAgICAqIGNzcy9TdHlsZVByb3BlcnRpZXMuaDoKKyAgICAg
ICAgU2VyaWFsaXplIGJvcmRlci1pbWFnZSBhcyBlbXB0eSBzdHJpbmcgaWYgYm9yZGVyLWltYWdl
LXdpZHRoIG92ZXJyaWRlcworICAgICAgICBib3JkZXIgd2lkdGhzLCBzaW5jZSBpdHMgZ3JhbW1h
ciBkb2Vzbid0IGFsbG93IHRoaXMuCisgICAgICAgIEhhbmRsZSBzZXJpYWxpemF0aW9uIG9mIC13
ZWJraXQtYm9yZGVyLWltYWdlLgorICAgICAgICBNYWtlIGNzc1RleHQgY2hvb3NlIHRoZSByaWdo
dCBzaG9ydGhhbmQgYmV0d2VlbiBib3JkZXItaW1hZ2UgYW5kCisgICAgICAgIC13ZWJraXQtYm9y
ZGVyLWltYWdlLiBQcmVmZXIgdGhlIGZvcm1lciBpZiBib3RoIGFyZSBzdWl0YWJsZS4KKworICAg
ICAgICAqIGNzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXIuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6Y29uc3VtZUJvcmRlckltYWdlV2lkdGgpOgorICAgICAgICAoV2ViQ29yZTo6Y29uc3VtZUJv
cmRlckltYWdlQ29tcG9uZW50cyk6CisgICAgICAgIChXZWJDb3JlOjpDU1NQcm9wZXJ0eVBhcnNl
cjo6cGFyc2VTaW5nbGVWYWx1ZSk6CisgICAgICAgIChXZWJDb3JlOjpDU1NQcm9wZXJ0eVBhcnNl
cjo6Y29uc3VtZUJvcmRlckltYWdlKToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1Byb3BlcnR5UGFy
c2VyOjpwYXJzZVNob3J0aGFuZCk6CisgICAgICAgIFBhcnNlIGJvcmRlci1pbWFnZS13aWR0aCBh
cyBhIENTU0JvcmRlckltYWdlV2lkdGhWYWx1ZS4KKyAgICAgICAgUGFyc2UgLXdlYmtpdC1ib3Jk
ZXItaW1hZ2UgYXMgYSBzaG9ydGhhbmQuCisKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyVHJl
ZUFzVGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUcmVlQXNUZXh0Ojp3cml0ZVJl
bmRlck9iamVjdCk6CisgICAgICAgIFRha2UgaW50byBhY2NvdW50IHRoYXQgYm9yZGVyIHdpZHRo
cyBtYXkgYmUgb3ZlcnJpZGRlbi4KKworICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9Cb3JkZXJE
YXRhLmg6CisgICAgICAgIChXZWJDb3JlOjpCb3JkZXJEYXRhOjpib3JkZXJMZWZ0V2lkdGggY29u
c3QpOgorICAgICAgICAoV2ViQ29yZTo6Qm9yZGVyRGF0YTo6Ym9yZGVyUmlnaHRXaWR0aCBjb25z
dCk6CisgICAgICAgIChXZWJDb3JlOjpCb3JkZXJEYXRhOjpib3JkZXJUb3BXaWR0aCBjb25zdCk6
CisgICAgICAgIChXZWJDb3JlOjpCb3JkZXJEYXRhOjpib3JkZXJCb3R0b21XaWR0aCBjb25zdCk6
CisgICAgICAgIEFkZCBsb2dpYyBmb3Igb3ZlcnJpZGluZyBib3JkZXIgd2lkdGhzLiBTYW1lIGFw
cHJvYWNoIGFzICdib3JkZXItc3R5bGUnCisgICAgICAgIHNldCB0byAnbm9uZScgbWFraW5nIHRo
ZSBib3JkZXIgd2lkdGhzIGNvbXB1dGUgdG8gJzBweCcuCisKKyAgICAgICAgKiByZW5kZXJpbmcv
c3R5bGUvTmluZVBpZWNlSW1hZ2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TmluZVBpZWNlSW1h
Z2U6Ok5pbmVQaWVjZUltYWdlKToKKyAgICAgICAgKFdlYkNvcmU6Ok5pbmVQaWVjZUltYWdlOjpE
YXRhOjpEYXRhKToKKyAgICAgICAgKFdlYkNvcmU6Ok5pbmVQaWVjZUltYWdlOjpEYXRhOjpjcmVh
dGUpOgorICAgICAgICAoV2ViQ29yZTo6TmluZVBpZWNlSW1hZ2U6OkRhdGE6Om9wZXJhdG9yPT0g
Y29uc3QpOgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9OaW5lUGllY2VJbWFnZS5oOgorICAg
ICAgICAoV2ViQ29yZTo6TmluZVBpZWNlSW1hZ2U6Om92ZXJyaWRlc0JvcmRlcldpZHRocyBjb25z
dCk6CisgICAgICAgIChXZWJDb3JlOjpOaW5lUGllY2VJbWFnZTo6c2V0T3ZlcnJpZGVzQm9yZGVy
V2lkdGhzKToKKyAgICAgICAgKFdlYkNvcmU6Ok5pbmVQaWVjZUltYWdlOjpjb3B5Qm9yZGVyU2xp
Y2VzRnJvbSk6CisgICAgICAgIEFkZCBmbGFnIGZvciBvdmVycmlkaW5nIGJvcmRlciB3aWR0aHMu
CisKKyAgICAgICAgKiByZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6UmVuZGVyU3R5bGU6OnNldEJvcmRlckltYWdlV2lkdGhPdmVycmlkZXNCb3JkZXJX
aWR0aHMpOgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oOgorICAgICAg
ICBBZGQgbWV0aG9kIGZvciBzZXR0aW5nIGZsYWcgdG8gb3ZlcnJpZGUgYm9yZGVyIHdpZHRocy4K
KworICAgICAgICAqIHN0eWxlL1Byb3BlcnR5Q2FzY2FkZS5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpTdHlsZTo6c2hvdWxkQXBwbHlQcm9wZXJ0eUluUGFyc2VPcmRlcik6CisgICAgICAgIFN0b3Ag
ZGVmZXJyaW5nIGJvcmRlciBpbWFnZSBwcm9wZXJ0aWVzLiBUaGF0IHdhcyBwcmV2aW91c2x5IG5l
ZWRlZCBzaW5jZQorICAgICAgICAtd2Via2l0LWJvcmRlci1pbWFnZSB3YXMgYSBsb25naGFuZCBz
aGFyaW5nIGEgY29tcHV0ZWQgdmFsdWUgd2l0aCB0aGUKKyAgICAgICAgYm9yZGVyLWltYWdlIGxv
bmdoYW5kcy4gTm8gbG9uZ2VyIG5lZWRlZCBzaW5jZSAtd2Via2l0LWJvcmRlci1pbWFnZSBpcwor
ICAgICAgICBub3cgYSBob3J0aGFuZC4KKworICAgICAgICAqIHN0eWxlL1N0eWxlQnVpbGRlckNv
bnZlcnRlci5oOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGU6OkJ1aWxkZXJDb252ZXJ0ZXI6OmNv
bnZlcnRCb3JkZXJNYXNrKToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlOjpCdWlsZGVyQ29udmVy
dGVyOjpjb252ZXJ0UmVmbGVjdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6QnVpbGRl
ckNvbnZlcnRlcjo6Y29udmVydEJvcmRlckltYWdlKTogRGVsZXRlZC4KKyAgICAgICAgUmVtb3Zl
IGNvZGUgbm8gbG9uZ2VyIG5lZWRlZC4KKworICAgICAgICAqIHN0eWxlL1N0eWxlQnVpbGRlckN1
c3RvbS5oOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGU6OkFwcGx5UHJvcGVydHlCb3JkZXJJbWFn
ZU1vZGlmaWVyOjphcHBseUluaXRpYWxWYWx1ZSk6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6
QXBwbHlQcm9wZXJ0eUJvcmRlckltYWdlTW9kaWZpZXI6OmFwcGx5VmFsdWUpOgorICAgICAgICBI
YW5kbGUgYm9yZGVyLWltYWdlLXdpZHRoIGFzIGEgQ1NTQm9yZGVySW1hZ2VXaWR0aFZhbHVlLgor
CiAyMDIyLTAzLTIzICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KIAogICAgICAg
ICBWaWRlb0ZyYW1lIGRvZXMgbm90IG5lZWQgdG8gaW5oZXJpdCBmcm9tIE1lZGlhU2FtcGxlCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dCBiL1NvdXJjZS9XZWJDb3JlL1Nv
dXJjZXMudHh0CmluZGV4IDQ3YWM1M2RmZjIxZjMyODdjNDUyOGIzZTBlNDdjOTdmNzFiYjhhYjgu
LjhmZTc0MjViZDEzM2Y4ZjM4NDRkYWRlM2M3NzE3NjU4YzdjZGQ2NDUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0CisrKyBiL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0
CkBAIC03MTIsNiArNzEyLDcgQEAgY3NzL0NTU0FzcGVjdFJhdGlvVmFsdWUuY3BwCiBjc3MvQ1NT
QmFzaWNTaGFwZXMuY3BwCiBjc3MvQ1NTQm9yZGVySW1hZ2UuY3BwCiBjc3MvQ1NTQm9yZGVySW1h
Z2VTbGljZVZhbHVlLmNwcAorY3NzL0NTU0JvcmRlckltYWdlV2lkdGhWYWx1ZS5jcHAKIGNzcy9D
U1NDYW52YXNWYWx1ZS5jcHAKIGNzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3BwCiBj
c3MvQ1NTQ29uZGl0aW9uUnVsZS5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNv
cmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNv
ZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCBkZDhlZTdiYzIxMGMxOGIzODY2OGQyZTY5OTdl
NDQyODg4YWY1MDhlLi45MmJjMDUyOWNmMGUzMzljZGQ2ZDEzNDEzNDU5MGQ3MGJjYzdiZGQwIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
CkBAIC0xMDE1LDYgKzEwMTUsNyBAQAogCQkzMzUwM0M5QTEwMTc5QTc0MDAzQjQ3RTEgLyogTm90
aWZpY2F0aW9uQ2xpZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSAzMzUwM0M5OTEwMTc5QTc0MDAzQjQ3RTEgLyogTm90aWZpY2F0aW9uQ2xpZW50Lmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMzM1MDND
QTQxMDE3OUFENzAwM0I0N0UxIC8qIEpTTm90aWZpY2F0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMzUwM0NBMDEwMTc5QUQ3MDAzQjQ3RTEgLyog
SlNOb3RpZmljYXRpb24uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OwogCQkzM0QwMjEyRDEzMURCMzdCMDA0MDkxQTggLyogQ29va2llU3RvcmFnZS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTEzRjAxRUExMjcw
RTEwRDAwREZCQTcxIC8qIENvb2tpZVN0b3JhZ2UuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OworCQkzNTdCNTgxRDI3Rjc5MDlBMDBCOTNFNEUgLyogQ1NT
Qm9yZGVySW1hZ2VXaWR0aFZhbHVlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSAzNTdCNTgxQzI3Rjc5MDlBMDBCOTNFNEUgLyogQ1NTQm9yZGVySW1hZ2VX
aWR0aFZhbHVlLmggKi87IH07CiAJCTM1Qzc0RkRCMjI4QTFFRjYwMDBDMjFBMCAvKiBDU1NHcmlk
SW50ZWdlclJlcGVhdFZhbHVlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSAzNUM3NEZENzIyOEExOUE2MDAwQzIxQTAgLyogQ1NTR3JpZEludGVnZXJSZXBl
YXRWYWx1ZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CiAJCTM3MTdEN0U4MTdFQ0M1OTEwMDNDMjc2RCAvKiBleHRyYWN0LWxvY2FsaXphYmxlLXN0cmlu
Z3MucGwgaW4gQ29weSBTY3JpcHRzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDM3MTdEN0U1MTdFQ0MzQTYwMDNDMjc2RCAvKiBleHRyYWN0LWxvY2FsaXphYmxlLXN0cmluZ3Mu
cGwgKi87IH07CiAJCTM3MUU2NUNDMTM2NjFFREMwMEJFRURCMCAvKiBQYWdlU2VyaWFsaXplci5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzcxRTY1Q0Ix
MzY2MUVEQzAwQkVFREIwIC8qIFBhZ2VTZXJpYWxpemVyLmggKi87IH07CkBAIC04NDY3LDYgKzg0
NjgsOCBAQAogCQkzMzUwM0M5RjEwMTc5QUQ3MDAzQjQ3RTEgLyogSlNOb3RpZmljYXRpb24uY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNOb3RpZmljYXRpb24uY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkzMzUwM0NBMDEwMTc5QUQ3MDAzQjQ3RTEg
LyogSlNOb3RpZmljYXRpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNO
b3RpZmljYXRpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzM1MDNDQzYxMDE3
QTFCMTAwM0I0N0UxIC8qIE5vdGlmaWNhdGlvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBOb3RpZmljYXRpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQkzNTdCNTgxQzI3Rjc5MDlBMDBCOTNFNEUgLyogQ1NTQm9yZGVySW1hZ2VXaWR0aFZhbHVl
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENTU0JvcmRlckltYWdlV2lkdGhW
YWx1ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzNTdCNTgxRTI3Rjc5MEJEMDBC
OTNFNEUgLyogQ1NTQm9yZGVySW1hZ2VXaWR0aFZhbHVlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IENTU0JvcmRlckltYWdlV2lkdGhWYWx1ZS5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTM1Qzc0RkQzMjI4QTE5MTIwMDBDMjFBMCAvKiBDU1NHcmlk
SW50ZWdlclJlcGVhdFZhbHVlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENTU0dyaWRJbnRlZ2Vy
UmVwZWF0VmFsdWUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkzNUM3NEZENzIy
OEExOUE2MDAwQzIxQTAgLyogQ1NTR3JpZEludGVnZXJSZXBlYXRWYWx1ZS5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBDU1NHcmlkSW50ZWdlclJlcGVhdFZhbHVlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTM2NjJGOTg0MDQ3Q0VEQkU1REREQUZBQSAvKiBSZW5kZXJNYXRoTUxNZW5jbG9zZS5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZW5kZXJNYXRoTUxNZW5j
bG9zZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0zMTcwNCw2ICszMTcwNyw4
IEBACiAJCQkJRTE2QTg0RjgxNEM4NUNDQzAwMjk3N0RGIC8qIENTU0JvcmRlckltYWdlLmggKi8s
CiAJCQkJQkMyNzRCMzAxNDBFQkVEODAwRUFERkE2IC8qIENTU0JvcmRlckltYWdlU2xpY2VWYWx1
ZS5jcHAgKi8sCiAJCQkJQkMyNzRCMkUxNDBFQkVCMjAwRUFERkE2IC8qIENTU0JvcmRlckltYWdl
U2xpY2VWYWx1ZS5oICovLAorCQkJCTM1N0I1ODFFMjdGNzkwQkQwMEI5M0U0RSAvKiBDU1NCb3Jk
ZXJJbWFnZVdpZHRoVmFsdWUuY3BwICovLAorCQkJCTM1N0I1ODFDMjdGNzkwOUEwMEI5M0U0RSAv
KiBDU1NCb3JkZXJJbWFnZVdpZHRoVmFsdWUuaCAqLywKIAkJCQlCQzYwNEE0MjBEQjU2MzRFMDAy
MDQ3MzkgLyogQ1NTQ2FudmFzVmFsdWUuY3BwICovLAogCQkJCUJDNjA0OUNCMERCNTYwQzIwMDIw
NDczOSAvKiBDU1NDYW52YXNWYWx1ZS5oICovLAogCQkJCUJDRUE0NzdDMDk3Q0FBQzgwMDk0QzlF
NCAvKiBDU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3BwICovLApAQCAtMzQxMTMsNiArMzQx
MTgsNyBAQAogCQkJCUZCRDZBRjg4MTVFRjI1QzkwMDhCNzExMCAvKiBDU1NCYXNpY1NoYXBlcy5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJRTE2QTg0RkExNEM4NUNDQzAwMjk3N0RGIC8qIENTU0JvcmRl
ckltYWdlLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzI3NEIyRjE0MEVCRUIyMDBFQURGQTYgLyog
Q1NTQm9yZGVySW1hZ2VTbGljZVZhbHVlLmggaW4gSGVhZGVycyAqLywKKwkJCQkzNTdCNTgxRDI3
Rjc5MDlBMDBCOTNFNEUgLyogQ1NTQm9yZGVySW1hZ2VXaWR0aFZhbHVlLmggaW4gSGVhZGVycyAq
LywKIAkJCQlCQ0YxNjQ2QTI2NjJBOTM0MDAwMkY3RUYgLyogQ1NTQ2FsY0NhdGVnb3J5TWFwcGlu
Zy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkNGMTY0NTEyNjYyOUZDNzAwMDJGN0VGIC8qIENTU0Nh
bGNFeHByZXNzaW9uTm9kZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkNGMTY0NjUyNjYyQTMxQTAw
MDJGN0VGIC8qIENTU0NhbGNFeHByZXNzaW9uTm9kZVBhcnNlci5oIGluIEhlYWRlcnMgKi8sCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vQ1NTUHJvcGVydHlBbmltYXRpb24u
Y3BwIGIvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0NTU1Byb3BlcnR5QW5pbWF0aW9uLmNwcApp
bmRleCA2Zjc0YzlmMzQ4MGJlMjc5ZDhkZmM4OWQwNDFhZWNkMjg5ZmY5ZmRlLi5iYTY3MWQzZmQ4
ODcyNTE2MjM5Yjc2NmZmZWMzMzAxNDA0NGU4NGY0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9hbmltYXRpb24vQ1NTUHJvcGVydHlBbmltYXRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2FuaW1hdGlvbi9DU1NQcm9wZXJ0eUFuaW1hdGlvbi5jcHAKQEAgLTU0OSw3ICs1NDksNyBAQCBz
dGF0aWMgaW5saW5lIE5pbmVQaWVjZUltYWdlIGJsZW5kRnVuYyhjb25zdCBOaW5lUGllY2VJbWFn
ZSYgZnJvbSwgY29uc3QgTmluZVBpZQogCiAgICAgLy8gRklYTUUgKDc0MTEyKTogU3VwcG9ydCB0
cmFuc2l0aW9uaW5nIGJldHdlZW4gTmluZVBpZWNlSW1hZ2VzIHRoYXQgZGlmZmVyIGJ5IG1vcmUg
dGhhbiBpbWFnZSBjb250ZW50LgogCi0gICAgaWYgKGZyb20uaW1hZ2VTbGljZXMoKSAhPSB0by5p
bWFnZVNsaWNlcygpIHx8IGZyb20uYm9yZGVyU2xpY2VzKCkgIT0gdG8uYm9yZGVyU2xpY2VzKCkg
fHwgZnJvbS5vdXRzZXQoKSAhPSB0by5vdXRzZXQoKSB8fCBmcm9tLmZpbGwoKSAhPSB0by5maWxs
KCkgfHwgZnJvbS5ob3Jpem9udGFsUnVsZSgpICE9IHRvLmhvcml6b250YWxSdWxlKCkgfHwgZnJv
bS52ZXJ0aWNhbFJ1bGUoKSAhPSB0by52ZXJ0aWNhbFJ1bGUoKSkKKyAgICBpZiAoZnJvbS5pbWFn
ZVNsaWNlcygpICE9IHRvLmltYWdlU2xpY2VzKCkgfHwgZnJvbS5ib3JkZXJTbGljZXMoKSAhPSB0
by5ib3JkZXJTbGljZXMoKSB8fCBmcm9tLm91dHNldCgpICE9IHRvLm91dHNldCgpIHx8IGZyb20u
ZmlsbCgpICE9IHRvLmZpbGwoKSB8fCBmcm9tLm92ZXJyaWRlc0JvcmRlcldpZHRocygpICE9IHRv
Lm92ZXJyaWRlc0JvcmRlcldpZHRocygpIHx8IGZyb20uaG9yaXpvbnRhbFJ1bGUoKSAhPSB0by5o
b3Jpem9udGFsUnVsZSgpIHx8IGZyb20udmVydGljYWxSdWxlKCkgIT0gdG8udmVydGljYWxSdWxl
KCkpCiAgICAgICAgIHJldHVybiB0bzsKIAogICAgIGlmIChhdXRvKiByZW5kZXJlciA9IGNvbnRl
eHQuY2xpZW50LT5yZW5kZXJlcigpKSB7CkBAIC01NTgsNyArNTU4LDcgQEAgc3RhdGljIGlubGlu
ZSBOaW5lUGllY2VJbWFnZSBibGVuZEZ1bmMoY29uc3QgTmluZVBpZWNlSW1hZ2UmIGZyb20sIGNv
bnN0IE5pbmVQaWUKICAgICB9CiAKICAgICByZXR1cm4gTmluZVBpZWNlSW1hZ2UoYmxlbmRGdW5j
KGZyb20uaW1hZ2UoKSwgdG8uaW1hZ2UoKSwgY29udGV4dCksCi0gICAgICAgIGZyb20uaW1hZ2VT
bGljZXMoKSwgZnJvbS5maWxsKCksIGZyb20uYm9yZGVyU2xpY2VzKCksIGZyb20ub3V0c2V0KCks
IGZyb20uaG9yaXpvbnRhbFJ1bGUoKSwgZnJvbS52ZXJ0aWNhbFJ1bGUoKSk7CisgICAgICAgIGZy
b20uaW1hZ2VTbGljZXMoKSwgZnJvbS5maWxsKCksIGZyb20uYm9yZGVyU2xpY2VzKCksIGZyb20u
b3ZlcnJpZGVzQm9yZGVyV2lkdGhzKCksIGZyb20ub3V0c2V0KCksIGZyb20uaG9yaXpvbnRhbFJ1
bGUoKSwgZnJvbS52ZXJ0aWNhbFJ1bGUoKSk7CiB9CiAKICNpZiBFTkFCTEUoVkFSSUFUSU9OX0ZP
TlRTKQpAQCAtMTAxNCw2ICsxMDE0LDcgQEAgcHVibGljOgogICAgICAgICBJc0xlbmd0aFBlcmNl
bnRhZ2UgICAgICA9IDEgPDwgMCwKICAgICAgICAgVXNlc0ZpbGxLZXl3b3JkICAgICAgICAgPSAx
IDw8IDEsCiAgICAgICAgIEFsbG93c05lZ2F0aXZlVmFsdWVzICAgID0gMSA8PCAyLAorICAgICAg
ICBNYXlPdmVycmlkZUJvcmRlcldpZHRocyA9IDEgPDwgMywKICAgICB9OwogICAgIExlbmd0aEJv
eFByb3BlcnR5V3JhcHBlcihDU1NQcm9wZXJ0eUlEIHByb3BlcnR5LCBjb25zdCBMZW5ndGhCb3gm
IChSZW5kZXJTdHlsZTo6KmdldHRlcikoKSBjb25zdCwgdm9pZCAoUmVuZGVyU3R5bGU6OipzZXR0
ZXIpKExlbmd0aEJveCYmKSwgT3B0aW9uU2V0PEZsYWdzPiBmbGFncyA9IHsgfSkKICAgICAgICAg
OiBQcm9wZXJ0eVdyYXBwZXJHZXR0ZXI8Y29uc3QgTGVuZ3RoQm94Jj4ocHJvcGVydHksIGdldHRl
cikKQEAgLTEwMjcsOSArMTAyOCwxOSBAQCBwdWJsaWM6CiAgICAgICAgIGlmIChtX2ZsYWdzLmNv
bnRhaW5zKEZsYWdzOjpVc2VzRmlsbEtleXdvcmQpICYmIGZyb20uYm9yZGVySW1hZ2UoKS5maWxs
KCkgIT0gdG8uYm9yZGVySW1hZ2UoKS5maWxsKCkpCiAgICAgICAgICAgICByZXR1cm4gZmFsc2U7
CiAKKyAgICAgICAgYm9vbCBpc0xlbmd0aFBlcmNlbnRhZ2UgPSBtX2ZsYWdzLmNvbnRhaW5zKEZs
YWdzOjpJc0xlbmd0aFBlcmNlbnRhZ2UpOworCisgICAgICAgIGlmIChtX2ZsYWdzLmNvbnRhaW5z
KEZsYWdzOjpNYXlPdmVycmlkZUJvcmRlcldpZHRocykpIHsKKyAgICAgICAgICAgIGJvb2wgb3Zl
cnJpZGVzQm9yZGVyV2lkdGhzID0gZnJvbS5ib3JkZXJJbWFnZSgpLm92ZXJyaWRlc0JvcmRlcldp
ZHRocygpOworICAgICAgICAgICAgaWYgKG92ZXJyaWRlc0JvcmRlcldpZHRocyAhPSB0by5ib3Jk
ZXJJbWFnZSgpLm92ZXJyaWRlc0JvcmRlcldpZHRocygpKQorICAgICAgICAgICAgICAgIHJldHVy
biBmYWxzZTsKKyAgICAgICAgICAgIC8vIEV2ZW4gaWYgdGhpcyBwcm9wZXJ0eSBhY2NlcHRzIDxs
ZW5ndGgtcGVyY2VudGFnZT4sIGJvcmRlciB3aWR0aHMgY2FuIG9ubHkgYmUgYSA8bGVuZ3RoPi4K
KyAgICAgICAgICAgIGlmIChvdmVycmlkZXNCb3JkZXJXaWR0aHMpCisgICAgICAgICAgICAgICAg
aXNMZW5ndGhQZXJjZW50YWdlID0gZmFsc2U7CisgICAgICAgIH0KKwogICAgICAgICBhdXRvJiBm
cm9tTGVuZ3RoQm94ID0gdmFsdWUoZnJvbSk7CiAgICAgICAgIGF1dG8mIHRvTGVuZ3RoQm94ID0g
dmFsdWUodG8pOwotICAgICAgICBib29sIGlzTGVuZ3RoUGVyY2VudGFnZSA9IG1fZmxhZ3MuY29u
dGFpbnMoRmxhZ3M6OklzTGVuZ3RoUGVyY2VudGFnZSk7CiAgICAgICAgIHJldHVybiBjYW5JbnRl
cnBvbGF0ZUxlbmd0aHMoZnJvbUxlbmd0aEJveC50b3AoKSwgdG9MZW5ndGhCb3gudG9wKCksIGlz
TGVuZ3RoUGVyY2VudGFnZSkKICAgICAgICAgICAgICYmIGNhbkludGVycG9sYXRlTGVuZ3Rocyhm
cm9tTGVuZ3RoQm94LnJpZ2h0KCksIHRvTGVuZ3RoQm94LnJpZ2h0KCksIGlzTGVuZ3RoUGVyY2Vu
dGFnZSkKICAgICAgICAgICAgICYmIGNhbkludGVycG9sYXRlTGVuZ3Rocyhmcm9tTGVuZ3RoQm94
LmJvdHRvbSgpLCB0b0xlbmd0aEJveC5ib3R0b20oKSwgaXNMZW5ndGhQZXJjZW50YWdlKQpAQCAt
MTA0MCw2ICsxMDUxLDggQEAgcHVibGljOgogICAgIHsKICAgICAgICAgaWYgKG1fZmxhZ3MuY29u
dGFpbnMoRmxhZ3M6OlVzZXNGaWxsS2V5d29yZCkpCiAgICAgICAgICAgICBkZXN0aW5hdGlvbi5z
ZXRCb3JkZXJJbWFnZVNsaWNlRmlsbCgoIWNvbnRleHQucHJvZ3Jlc3MgfHwgIWNvbnRleHQuaXNE
aXNjcmV0ZSA/IGZyb20gOiB0bykuYm9yZGVySW1hZ2UoKS5maWxsKCkpOworICAgICAgICBpZiAo
bV9mbGFncy5jb250YWlucyhGbGFnczo6TWF5T3ZlcnJpZGVCb3JkZXJXaWR0aHMpKQorICAgICAg
ICAgICAgZGVzdGluYXRpb24uc2V0Qm9yZGVySW1hZ2VXaWR0aE92ZXJyaWRlc0JvcmRlcldpZHRo
cygoIWNvbnRleHQucHJvZ3Jlc3MgfHwgIWNvbnRleHQuaXNEaXNjcmV0ZSA/IGZyb20gOiB0byku
Ym9yZGVySW1hZ2UoKS5vdmVycmlkZXNCb3JkZXJXaWR0aHMoKSk7CiAgICAgICAgIGlmIChjb250
ZXh0LmlzRGlzY3JldGUpIHsKICAgICAgICAgICAgIC8vIEl0IGlzIGltcG9ydGFudCB3ZSBoYXZl
IHRoaXMgbm9uLWludGVycG9sYXRlZCBzaG9ydGN1dCBiZWNhdXNlIGNlcnRhaW4gQ1NTIHByb3Bl
cnRpZXMKICAgICAgICAgICAgIC8vIHJlcHJlc2VudGVkIGFzIGEgTGVuZ3RoQm94LCBzdWNoIGFz
IGJvcmRlci1pbWFnZS1zbGljZSwgZG9uJ3Qga25vdyBob3cgdG8gZGVhbCB3aXRoCkBAIC0zMDA0
LDcgKzMwMTcsNyBAQCBDU1NQcm9wZXJ0eUFuaW1hdGlvbldyYXBwZXJNYXA6OkNTU1Byb3BlcnR5
QW5pbWF0aW9uV3JhcHBlck1hcCgpCiAKICAgICAgICAgbmV3IFN0eWxlSW1hZ2VQcm9wZXJ0eVdy
YXBwZXIoQ1NTUHJvcGVydHlCb3JkZXJJbWFnZVNvdXJjZSwgJlJlbmRlclN0eWxlOjpib3JkZXJJ
bWFnZVNvdXJjZSwgJlJlbmRlclN0eWxlOjpzZXRCb3JkZXJJbWFnZVNvdXJjZSksCiAgICAgICAg
IG5ldyBMZW5ndGhCb3hQcm9wZXJ0eVdyYXBwZXIoQ1NTUHJvcGVydHlCb3JkZXJJbWFnZVNsaWNl
LCAmUmVuZGVyU3R5bGU6OmJvcmRlckltYWdlU2xpY2VzLCAmUmVuZGVyU3R5bGU6OnNldEJvcmRl
ckltYWdlU2xpY2VzLCB7IExlbmd0aEJveFByb3BlcnR5V3JhcHBlcjo6RmxhZ3M6OlVzZXNGaWxs
S2V5d29yZCB9KSwKLSAgICAgICAgbmV3IExlbmd0aEJveFByb3BlcnR5V3JhcHBlcihDU1NQcm9w
ZXJ0eUJvcmRlckltYWdlV2lkdGgsICZSZW5kZXJTdHlsZTo6Ym9yZGVySW1hZ2VXaWR0aCwgJlJl
bmRlclN0eWxlOjpzZXRCb3JkZXJJbWFnZVdpZHRoLCB7IExlbmd0aEJveFByb3BlcnR5V3JhcHBl
cjo6RmxhZ3M6OklzTGVuZ3RoUGVyY2VudGFnZSB9KSwKKyAgICAgICAgbmV3IExlbmd0aEJveFBy
b3BlcnR5V3JhcHBlcihDU1NQcm9wZXJ0eUJvcmRlckltYWdlV2lkdGgsICZSZW5kZXJTdHlsZTo6
Ym9yZGVySW1hZ2VXaWR0aCwgJlJlbmRlclN0eWxlOjpzZXRCb3JkZXJJbWFnZVdpZHRoLCB7IExl
bmd0aEJveFByb3BlcnR5V3JhcHBlcjo6RmxhZ3M6OklzTGVuZ3RoUGVyY2VudGFnZSwgTGVuZ3Ro
Qm94UHJvcGVydHlXcmFwcGVyOjpGbGFnczo6TWF5T3ZlcnJpZGVCb3JkZXJXaWR0aHMgfSksCiAg
ICAgICAgIG5ldyBMZW5ndGhCb3hQcm9wZXJ0eVdyYXBwZXIoQ1NTUHJvcGVydHlCb3JkZXJJbWFn
ZU91dHNldCwgJlJlbmRlclN0eWxlOjpib3JkZXJJbWFnZU91dHNldCwgJlJlbmRlclN0eWxlOjpz
ZXRCb3JkZXJJbWFnZU91dHNldCksCiAKICAgICAgICAgbmV3IFN0eWxlSW1hZ2VQcm9wZXJ0eVdy
YXBwZXIoQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2VTb3VyY2UsICZSZW5kZXJTdHlsZTo6
bWFza0JveEltYWdlU291cmNlLCAmUmVuZGVyU3R5bGU6OnNldE1hc2tCb3hJbWFnZVNvdXJjZSks
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQm9yZGVySW1hZ2VXaWR0aFZhbHVl
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NCb3JkZXJJbWFnZVdpZHRoVmFsdWUuY3BwCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLmQxMjQ3M2ZkMzIwODFkOTNkYWFlNzg4MWMyYjVjOTkyOTUxZjU0ZDcKLS0tIC9k
ZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQm9yZGVySW1hZ2VXaWR0aFZhbHVl
LmNwcApAQCAtMCwwICsxLDU2IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIyIElnYWxpYSBT
LkwuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
KyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwor
ICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJ
TUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAq
IEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUws
IEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNF
UlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElO
VEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9V
VCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIK
KyNpbmNsdWRlICJDU1NCb3JkZXJJbWFnZVdpZHRoVmFsdWUuaCIKKworI2luY2x1ZGUgIlJlY3Qu
aCIKKyNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUg
eworCitDU1NCb3JkZXJJbWFnZVdpZHRoVmFsdWU6OkNTU0JvcmRlckltYWdlV2lkdGhWYWx1ZShS
ZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+JiYgd2lkdGhzLCBib29sIG92ZXJyaWRlc0JvcmRlcldp
ZHRocykKKyAgICA6IENTU1ZhbHVlKEJvcmRlckltYWdlV2lkdGhDbGFzcykKKyAgICAsIG1fd2lk
dGhzKFdURk1vdmUod2lkdGhzKSkKKyAgICAsIG1fb3ZlcnJpZGVzQm9yZGVyV2lkdGhzKG92ZXJy
aWRlc0JvcmRlcldpZHRocykKK3sKK30KKworU3RyaW5nIENTU0JvcmRlckltYWdlV2lkdGhWYWx1
ZTo6Y3VzdG9tQ1NTVGV4dCgpIGNvbnN0Cit7CisgICAgLy8gYm9yZGVyLWltYWdlLXdpZHRoIGNh
bid0IHNldCBtX292ZXJyaWRlc0JvcmRlcldpZHRocyB0byB0cnVlIGJ5IGl0c2VsZiwgc28gc2Vy
aWFsaXplIGFzIGVtcHR5IHN0cmluZy4KKyAgICAvLyBJdCBjYW4gb25seSBiZSB0cnVlIHZpYSB0
aGUgLXdlYmtpdC1ib3JkZXItaW1hZ2Ugc2hvcnRoYW5kLCB3aG9zZSBzZXJpYWxpemF0aW9uIHdp
bGwgdW53cmFwIHdpZHRocygpIGlmIG5lZWRlZC4KKyAgICBpZiAobV9vdmVycmlkZXNCb3JkZXJX
aWR0aHMpCisgICAgICAgIHJldHVybiBlbXB0eVN0cmluZygpOworCisgICAgcmV0dXJuIG1fd2lk
dGhzLT5jc3NUZXh0KCk7Cit9CisKK2Jvb2wgQ1NTQm9yZGVySW1hZ2VXaWR0aFZhbHVlOjplcXVh
bHMoY29uc3QgQ1NTQm9yZGVySW1hZ2VXaWR0aFZhbHVlJiBvdGhlcikgY29uc3QKK3sKKyAgICBy
ZXR1cm4gbV9vdmVycmlkZXNCb3JkZXJXaWR0aHMgPT0gb3RoZXIubV9vdmVycmlkZXNCb3JkZXJX
aWR0aHMgJiYgY29tcGFyZUNTU1ZhbHVlUHRyKG1fd2lkdGhzLCBvdGhlci5tX3dpZHRocyk7Cit9
CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nz
cy9DU1NCb3JkZXJJbWFnZVdpZHRoVmFsdWUuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NCb3Jk
ZXJJbWFnZVdpZHRoVmFsdWUuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zY2UwMzljZGMyODA1YTRhN2M4ODZiMDdi
N2UwNmExNTU2YTZlZDI5Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NT
U0JvcmRlckltYWdlV2lkdGhWYWx1ZS5oCkBAIC0wLDAgKzEsNTcgQEAKKy8qCisgKiBDb3B5cmln
aHQgKEMpIDIwMjIgSWdhbGlhIFMuTC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
CisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAq
CisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05U
UklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAq
IFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1Ig
SVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1B
R0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNV
QlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRT
OyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5Z
IFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElB
QklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBB
UklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKwor
I3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlICJDU1NQcmltaXRpdmVWYWx1ZS5oIgorI2luY2x1ZGUg
PHd0Zi9SZWZQdHIuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBSZWN0OworCitj
bGFzcyBDU1NCb3JkZXJJbWFnZVdpZHRoVmFsdWUgZmluYWwgOiBwdWJsaWMgQ1NTVmFsdWUgewor
cHVibGljOgorICAgIHN0YXRpYyBSZWY8Q1NTQm9yZGVySW1hZ2VXaWR0aFZhbHVlPiBjcmVhdGUo
UmVmUHRyPENTU1ByaW1pdGl2ZVZhbHVlPiYmIHdpZHRocywgYm9vbCBvdmVycmlkZXNCb3JkZXJX
aWR0aHMpCisgICAgeworICAgICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBDU1NCb3JkZXJJbWFn
ZVdpZHRoVmFsdWUoV1RGTW92ZSh3aWR0aHMpLCBvdmVycmlkZXNCb3JkZXJXaWR0aHMpKTsKKyAg
ICB9CisKKyAgICBTdHJpbmcgY3VzdG9tQ1NTVGV4dCgpIGNvbnN0OworCisgICAgUXVhZCogd2lk
dGhzKCkgY29uc3QgeyByZXR1cm4gbV93aWR0aHMgPyBtX3dpZHRocy0+cXVhZFZhbHVlKCkgOiBu
dWxscHRyOyB9CisKKyAgICBib29sIGVxdWFscyhjb25zdCBDU1NCb3JkZXJJbWFnZVdpZHRoVmFs
dWUmKSBjb25zdDsKKworICAgIFJlZlB0cjxDU1NQcmltaXRpdmVWYWx1ZT4gbV93aWR0aHM7Cisg
ICAgYm9vbCBtX292ZXJyaWRlc0JvcmRlcldpZHRoczsKKworcHJpdmF0ZToKKyAgICBDU1NCb3Jk
ZXJJbWFnZVdpZHRoVmFsdWUoUmVmUHRyPENTU1ByaW1pdGl2ZVZhbHVlPiYmIHdpZHRocywgYm9v
bCBvdmVycmlkZXNCb3JkZXJXaWR0aHMpOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQor
CitTUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0NTU19WQUxVRShDU1NCb3JkZXJJbWFnZVdpZHRoVmFs
dWUsIGlzQm9yZGVySW1hZ2VXaWR0aFZhbHVlKCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9jc3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nz
cy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3BwCmluZGV4IDBiNTdhMWYyNmQwYTVlYjJj
YjVhYjNlOTBmMmM2OWI5YjhhNWIzOWIuLjYxOGMwNWNhMjFkYmVmODhjYmIwNDdlNjkwZjM3MDVm
Nzc2YjQxYzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDb21wdXRlZFN0eWxl
RGVjbGFyYXRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDb21wdXRlZFN0eWxl
RGVjbGFyYXRpb24uY3BwCkBAIC0yMjQsNyArMjI0LDcgQEAgc3RhdGljIFJlZjxDU1NWYWx1ZT4g
dmFsdWVGb3JOaW5lUGllY2VJbWFnZVJlcGVhdChjb25zdCBOaW5lUGllY2VJbWFnZSYgaW1hZ2Up
CiAgICAgcmV0dXJuIGNzc1ZhbHVlUG9vbC5jcmVhdGVWYWx1ZShQYWlyOjpjcmVhdGUoV1RGTW92
ZShob3Jpem9udGFsUmVwZWF0KSwgV1RGTW92ZSh2ZXJ0aWNhbFJlcGVhdCkpKTsKIH0KIAotc3Rh
dGljIFJlZjxDU1NWYWx1ZT4gdmFsdWVGb3JOaW5lUGllY2VJbWFnZShjb25zdCBOaW5lUGllY2VJ
bWFnZSYgaW1hZ2UsIGNvbnN0IFJlbmRlclN0eWxlJiBzdHlsZSkKK3N0YXRpYyBSZWZQdHI8Q1NT
VmFsdWU+IHZhbHVlRm9yTmluZVBpZWNlSW1hZ2UoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eUlELCBj
b25zdCBOaW5lUGllY2VJbWFnZSYgaW1hZ2UsIGNvbnN0IFJlbmRlclN0eWxlJiBzdHlsZSkKIHsK
ICAgICBpZiAoIWltYWdlLmhhc0ltYWdlKCkpCiAgICAgICAgIHJldHVybiBDU1NWYWx1ZVBvb2w6
OnNpbmdsZXRvbigpLmNyZWF0ZUlkZW50aWZpZXJWYWx1ZShDU1NWYWx1ZU5vbmUpOwpAQCAtMjMz
LDEwICsyMzMsMTcgQEAgc3RhdGljIFJlZjxDU1NWYWx1ZT4gdmFsdWVGb3JOaW5lUGllY2VJbWFn
ZShjb25zdCBOaW5lUGllY2VJbWFnZSYgaW1hZ2UsIGNvbnN0IFIKICAgICBpZiAoaW1hZ2UuaW1h
Z2UoKSkKICAgICAgICAgaW1hZ2VWYWx1ZSA9IGltYWdlLmltYWdlKCktPmNzc1ZhbHVlKCk7CiAK
KyAgICAvLyAtd2Via2l0LWJvcmRlci1pbWFnZSBoYXMgYSBsZWdhY3kgYmVoYXZpb3IgdGhhdCBt
YWtlcyBmaXhlZCBib3JkZXIgc2xpY2VzIGFsc28gc2V0IHRoZSBib3JkZXIgd2lkdGhzLgorICAg
IGNvbnN0IExlbmd0aEJveCYgc2xpY2VzID0gaW1hZ2UuYm9yZGVyU2xpY2VzKCk7CisgICAgYm9v
bCBvdmVycmlkZXNCb3JkZXJXaWR0aHMgPSBwcm9wZXJ0eUlEID09IENTU1Byb3BlcnR5V2Via2l0
Qm9yZGVySW1hZ2UgJiYgKHNsaWNlcy50b3AoKS5pc0ZpeGVkKCkgfHwgc2xpY2VzLnJpZ2h0KCku
aXNGaXhlZCgpIHx8IHNsaWNlcy5ib3R0b20oKS5pc0ZpeGVkKCkgfHwgc2xpY2VzLmxlZnQoKS5p
c0ZpeGVkKCkpOworICAgIGlmIChvdmVycmlkZXNCb3JkZXJXaWR0aHMgIT0gaW1hZ2Uub3ZlcnJp
ZGVzQm9yZGVyV2lkdGhzKCkpCisgICAgICAgIHJldHVybiBudWxscHRyOworCiAgICAgYXV0byBp
bWFnZVNsaWNlcyA9IHZhbHVlRm9yTmluZVBpZWNlSW1hZ2VTbGljZShpbWFnZSk7Ci0gICAgYXV0
byBib3JkZXJTbGljZXMgPSB2YWx1ZUZvck5pbmVQaWVjZUltYWdlUXVhZChpbWFnZS5ib3JkZXJT
bGljZXMoKSwgc3R5bGUpOworICAgIGF1dG8gYm9yZGVyU2xpY2VzID0gdmFsdWVGb3JOaW5lUGll
Y2VJbWFnZVF1YWQoc2xpY2VzLCBzdHlsZSk7CiAgICAgYXV0byBvdXRzZXQgPSB2YWx1ZUZvck5p
bmVQaWVjZUltYWdlUXVhZChpbWFnZS5vdXRzZXQoKSwgc3R5bGUpOwogICAgIGF1dG8gcmVwZWF0
ID0gdmFsdWVGb3JOaW5lUGllY2VJbWFnZVJlcGVhdChpbWFnZSk7CisKICAgICByZXR1cm4gY3Jl
YXRlQm9yZGVySW1hZ2VWYWx1ZShXVEZNb3ZlKGltYWdlVmFsdWUpLCBXVEZNb3ZlKGltYWdlU2xp
Y2VzKSwgV1RGTW92ZShib3JkZXJTbGljZXMpLCBXVEZNb3ZlKG91dHNldCksIFdURk1vdmUocmVw
ZWF0KSk7CiB9CiAKQEAgLTI4NCw3ICsyOTEsNyBAQCBzdGF0aWMgUmVmPENTU1ZhbHVlPiB2YWx1
ZUZvclJlZmxlY3Rpb24oY29uc3QgU3R5bGVSZWZsZWN0aW9uKiByZWZsZWN0aW9uLCBjb25zdAog
ICAgICAgICBicmVhazsKICAgICB9CiAKLSAgICByZXR1cm4gQ1NTUmVmbGVjdFZhbHVlOjpjcmVh
dGUoZGlyZWN0aW9uLnJlbGVhc2VOb25OdWxsKCksIG9mZnNldC5yZWxlYXNlTm9uTnVsbCgpLCB2
YWx1ZUZvck5pbmVQaWVjZUltYWdlKHJlZmxlY3Rpb24tPm1hc2soKSwgc3R5bGUpKTsKKyAgICBy
ZXR1cm4gQ1NTUmVmbGVjdFZhbHVlOjpjcmVhdGUoZGlyZWN0aW9uLnJlbGVhc2VOb25OdWxsKCks
IG9mZnNldC5yZWxlYXNlTm9uTnVsbCgpLCB2YWx1ZUZvck5pbmVQaWVjZUltYWdlKENTU1Byb3Bl
cnR5V2Via2l0Qm94UmVmbGVjdCwgcmVmbGVjdGlvbi0+bWFzaygpLCBzdHlsZSkpOwogfQogCiBz
dGF0aWMgUmVmPENTU1ZhbHVlTGlzdD4gY3JlYXRlUG9zaXRpb25MaXN0Rm9yTGF5ZXIoQ1NTUHJv
cGVydHlJRCBwcm9wZXJ0eUlELCBjb25zdCBGaWxsTGF5ZXImIGxheWVyLCBjb25zdCBSZW5kZXJT
dHlsZSYgc3R5bGUpCkBAIC0zNzk3LDggKzM4MDQsOSBAQCBSZWZQdHI8Q1NTVmFsdWU+IENvbXB1
dGVkU3R5bGVFeHRyYWN0b3I6OnZhbHVlRm9yUHJvcGVydHlJblN0eWxlKGNvbnN0IFJlbmRlclN0
eQogICAgICAgICB9CiAgICAgICAgIGNhc2UgQ1NTUHJvcGVydHlCYWNrZmFjZVZpc2liaWxpdHk6
CiAgICAgICAgICAgICByZXR1cm4gY3NzVmFsdWVQb29sLmNyZWF0ZUlkZW50aWZpZXJWYWx1ZSgo
c3R5bGUuYmFja2ZhY2VWaXNpYmlsaXR5KCkgPT0gQmFja2ZhY2VWaXNpYmlsaXR5OjpIaWRkZW4p
ID8gQ1NTVmFsdWVIaWRkZW4gOiBDU1NWYWx1ZVZpc2libGUpOworICAgICAgICBjYXNlIENTU1By
b3BlcnR5Qm9yZGVySW1hZ2U6CiAgICAgICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJJ
bWFnZToKLSAgICAgICAgICAgIHJldHVybiB2YWx1ZUZvck5pbmVQaWVjZUltYWdlKHN0eWxlLmJv
cmRlckltYWdlKCksIHN0eWxlKTsKKyAgICAgICAgICAgIHJldHVybiB2YWx1ZUZvck5pbmVQaWVj
ZUltYWdlKHByb3BlcnR5SUQsIHN0eWxlLmJvcmRlckltYWdlKCksIHN0eWxlKTsKICAgICAgICAg
Y2FzZSBDU1NQcm9wZXJ0eUJvcmRlckltYWdlT3V0c2V0OgogICAgICAgICAgICAgcmV0dXJuIHZh
bHVlRm9yTmluZVBpZWNlSW1hZ2VRdWFkKHN0eWxlLmJvcmRlckltYWdlKCkub3V0c2V0KCksIHN0
eWxlKTsKICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlckltYWdlUmVwZWF0OgpAQCAtMzgw
Niw5ICszODE0LDExIEBAIFJlZlB0cjxDU1NWYWx1ZT4gQ29tcHV0ZWRTdHlsZUV4dHJhY3Rvcjo6
dmFsdWVGb3JQcm9wZXJ0eUluU3R5bGUoY29uc3QgUmVuZGVyU3R5CiAgICAgICAgIGNhc2UgQ1NT
UHJvcGVydHlCb3JkZXJJbWFnZVNsaWNlOgogICAgICAgICAgICAgcmV0dXJuIHZhbHVlRm9yTmlu
ZVBpZWNlSW1hZ2VTbGljZShzdHlsZS5ib3JkZXJJbWFnZSgpKTsKICAgICAgICAgY2FzZSBDU1NQ
cm9wZXJ0eUJvcmRlckltYWdlV2lkdGg6CisgICAgICAgICAgICBpZiAoc3R5bGUuYm9yZGVySW1h
Z2UoKS5vdmVycmlkZXNCb3JkZXJXaWR0aHMoKSkKKyAgICAgICAgICAgICAgICByZXR1cm4gbnVs
bHB0cjsKICAgICAgICAgICAgIHJldHVybiB2YWx1ZUZvck5pbmVQaWVjZUltYWdlUXVhZChzdHls
ZS5ib3JkZXJJbWFnZSgpLmJvcmRlclNsaWNlcygpLCBzdHlsZSk7CiAgICAgICAgIGNhc2UgQ1NT
UHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2U6Ci0gICAgICAgICAgICByZXR1cm4gdmFsdWVGb3JO
aW5lUGllY2VJbWFnZShzdHlsZS5tYXNrQm94SW1hZ2UoKSwgc3R5bGUpOworICAgICAgICAgICAg
cmV0dXJuIHZhbHVlRm9yTmluZVBpZWNlSW1hZ2UocHJvcGVydHlJRCwgc3R5bGUubWFza0JveElt
YWdlKCksIHN0eWxlKTsKICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdE1hc2tCb3hJbWFn
ZU91dHNldDoKICAgICAgICAgICAgIHJldHVybiB2YWx1ZUZvck5pbmVQaWVjZUltYWdlUXVhZChz
dHlsZS5tYXNrQm94SW1hZ2UoKS5vdXRzZXQoKSwgc3R5bGUpOwogICAgICAgICBjYXNlIENTU1By
b3BlcnR5V2Via2l0TWFza0JveEltYWdlUmVwZWF0OgpAQCAtNDA0NCw4ICs0MDU0LDYgQEAgUmVm
UHRyPENTU1ZhbHVlPiBDb21wdXRlZFN0eWxlRXh0cmFjdG9yOjp2YWx1ZUZvclByb3BlcnR5SW5T
dHlsZShjb25zdCBSZW5kZXJTdHkKICAgICAgICAgICAgIHJldHVybiBnZXRDU1NQcm9wZXJ0eVZh
bHVlc0ZvcjRTaWRlc1Nob3J0aGFuZChib3JkZXJDb2xvclNob3J0aGFuZCgpKTsKICAgICAgICAg
Y2FzZSBDU1NQcm9wZXJ0eUJvcmRlckxlZnQ6CiAgICAgICAgICAgICByZXR1cm4gZ2V0Q1NTUHJv
cGVydHlWYWx1ZXNGb3JTaG9ydGhhbmRQcm9wZXJ0aWVzKGJvcmRlckxlZnRTaG9ydGhhbmQoKSk7
Ci0gICAgICAgIGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJJbWFnZToKLSAgICAgICAgICAgIHJldHVy
biB2YWx1ZUZvck5pbmVQaWVjZUltYWdlKHN0eWxlLmJvcmRlckltYWdlKCksIHN0eWxlKTsKICAg
ICAgICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlcklubGluZTogewogICAgICAgICAgICAgYXV0byB2
YWx1ZSA9IHByb3BlcnR5VmFsdWUoQ1NTUHJvcGVydHlCb3JkZXJJbmxpbmVTdGFydCwgRG9Ob3RV
cGRhdGVMYXlvdXQpOwogICAgICAgICAgICAgaWYgKCFjb21wYXJlQ1NTVmFsdWVQdHI8Q1NTVmFs
dWU+KHZhbHVlLCBwcm9wZXJ0eVZhbHVlKENTU1Byb3BlcnR5Qm9yZGVySW5saW5lRW5kLCBEb05v
dFVwZGF0ZUxheW91dCkpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3Bl
cnRpZXMuanNvbiBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0aWVzLmpzb24KaW5kZXgg
Nzk2OWUyYmUxMThkOWU1NDY4ZjYzNjM5OWExMjk1ZjAxNjNjNjdiZi4uMDY5ZDdlZTliZWZhOGEw
MWExYmYxMjRjNjQyYWI5YzY3NzMyN2E0NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3Nz
L0NTU1Byb3BlcnRpZXMuanNvbgorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVydGll
cy5qc29uCkBAIC01MzcwLDggKzUzNzAsMTYgQEAKICAgICAgICAgfSwKICAgICAgICAgIi13ZWJr
aXQtYm9yZGVyLWltYWdlIjogewogICAgICAgICAgICAgImNvZGVnZW4tcHJvcGVydGllcyI6IHsK
LSAgICAgICAgICAgICAgICAiaW5pdGlhbCI6ICJpbml0aWFsTmluZVBpZWNlSW1hZ2UiLAotICAg
ICAgICAgICAgICAgICJjb252ZXJ0ZXIiOiAiQm9yZGVySW1hZ2U8Q1NTUHJvcGVydHlXZWJraXRC
b3JkZXJJbWFnZT4iCisgICAgICAgICAgICAgICAgImxvbmdoYW5kcyI6IFsKKyAgICAgICAgICAg
ICAgICAgICAgImJvcmRlci1pbWFnZS1zb3VyY2UiLAorICAgICAgICAgICAgICAgICAgICAiYm9y
ZGVyLWltYWdlLXNsaWNlIiwKKyAgICAgICAgICAgICAgICAgICAgImJvcmRlci1pbWFnZS13aWR0
aCIsCisgICAgICAgICAgICAgICAgICAgICJib3JkZXItaW1hZ2Utb3V0c2V0IiwKKyAgICAgICAg
ICAgICAgICAgICAgImJvcmRlci1pbWFnZS1yZXBlYXQiCisgICAgICAgICAgICAgICAgXQorICAg
ICAgICAgICAgfSwKKyAgICAgICAgICAgICJzdGF0dXMiOiB7CisgICAgICAgICAgICAgICAgImNv
bW1lbnQiOiAiRGlmZmVycyBmcm9tIGJvcmRlci1pbWFnZSBpbiB0aGF0IGl0IGFsd2F5cyBpbmNs
dWRlcyB0aGUgJ2ZpbGwnIGtleXdvcmQgaW4gJ2JvcmRlci1pbWFnZS1zbGljZScsIGFuZCBtYWtl
cyBsZW5ndGggdmFsdWVzIGluICdib3JkZXItaW1hZ2Utd2lkdGgnIG92ZXJyaWRlIHRoZSBjb3Jy
ZXNwb25kaW5nICdib3JkZXItKi13aWR0aCcuIgogICAgICAgICAgICAgfQogICAgICAgICB9LAog
ICAgICAgICAiLXdlYmtpdC1ib3JkZXItcmFkaXVzIjogewpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvY3NzL0NTU1RvU3R5bGVNYXAuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1RvU3R5
bGVNYXAuY3BwCmluZGV4IDk0NjYwNTEzNTA1M2FiNWQzNjg3OGNjYmYzMjE1YjkzYTcxMjU4YTku
LjBjNmY0ZTE2NTY3YjQwYTIyODY5NjQ1ZGU0N2Q0ZDBjOWRmMzlmZWEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9DU1NUb1N0eWxlTWFwLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTVG9TdHlsZU1hcC5jcHAKQEAgLTMwLDYgKzMwLDcgQEAKIAogI2luY2x1ZGUgIkFuaW1h
dGlvbi5oIgogI2luY2x1ZGUgIkNTU0JvcmRlckltYWdlU2xpY2VWYWx1ZS5oIgorI2luY2x1ZGUg
IkNTU0JvcmRlckltYWdlV2lkdGhWYWx1ZS5oIgogI2luY2x1ZGUgIkNTU0ltYWdlR2VuZXJhdG9y
VmFsdWUuaCIKICNpbmNsdWRlICJDU1NJbWFnZVNldFZhbHVlLmgiCiAjaW5jbHVkZSAiQ1NTSW1h
Z2VWYWx1ZS5oIgpAQCAtNDcxLDcgKzQ3Miw3IEBAIHZvaWQgQ1NTVG9TdHlsZU1hcDo6bWFwQW5p
bWF0aW9uQ29tcG9zaXRlT3BlcmF0aW9uKEFuaW1hdGlvbiYgYW5pbWF0aW9uLCBjb25zdCBDCiAg
ICAgICAgIGFuaW1hdGlvbi5zZXRDb21wb3NpdGVPcGVyYXRpb24oKmNvbXBvc2l0ZU9wZXJhdGlv
bik7CiB9CiAKLXZvaWQgQ1NTVG9TdHlsZU1hcDo6bWFwTmluZVBpZWNlSW1hZ2UoQ1NTUHJvcGVy
dHlJRCBwcm9wZXJ0eSwgQ1NTVmFsdWUqIHZhbHVlLCBOaW5lUGllY2VJbWFnZSYgaW1hZ2UpCit2
b2lkIENTU1RvU3R5bGVNYXA6Om1hcE5pbmVQaWVjZUltYWdlKENTU1ZhbHVlKiB2YWx1ZSwgTmlu
ZVBpZWNlSW1hZ2UmIGltYWdlKQogewogICAgIC8vIElmIHdlJ3JlIG5vdCBhIHZhbHVlIGxpc3Qs
IHRoZW4gd2UgYXJlICJub25lIiBhbmQgZG9uJ3QgbmVlZCB0byBhbHRlciB0aGUgZW1wdHkgaW1h
Z2UgYXQgYWxsLgogICAgIGlmICghaXM8Q1NTVmFsdWVMaXN0Pih2YWx1ZSkpCkBAIC00OTIsOCAr
NDkzLDggQEAgdm9pZCBDU1NUb1N0eWxlTWFwOjptYXBOaW5lUGllY2VJbWFnZShDU1NQcm9wZXJ0
eUlEIHByb3BlcnR5LCBDU1NWYWx1ZSogdmFsdWUsIE4KICAgICAgICAgICAgICAgICBtYXBOaW5l
UGllY2VJbWFnZVNsaWNlKCpzbGFzaExpc3QuaXRlbSgwKSwgaW1hZ2UpOwogCiAgICAgICAgICAg
ICAvLyBNYXAgaW4gdGhlIGJvcmRlciBzbGljZXMuCi0gICAgICAgICAgICBpZiAoc2xhc2hMaXN0
Lml0ZW0oMSkpCi0gICAgICAgICAgICAgICAgaW1hZ2Uuc2V0Qm9yZGVyU2xpY2VzKG1hcE5pbmVQ
aWVjZUltYWdlUXVhZCgqc2xhc2hMaXN0Lml0ZW0oMSkpKTsKKyAgICAgICAgICAgIGlmIChpczxD
U1NCb3JkZXJJbWFnZVdpZHRoVmFsdWU+KHNsYXNoTGlzdC5pdGVtKDEpKSkKKyAgICAgICAgICAg
ICAgICBtYXBOaW5lUGllY2VJbWFnZVdpZHRoKCpzbGFzaExpc3QuaXRlbSgxKSwgaW1hZ2UpOwog
CiAgICAgICAgICAgICAvLyBNYXAgaW4gdGhlIG91dHNldC4KICAgICAgICAgICAgIGlmIChzbGFz
aExpc3QuaXRlbSgyKSkKQEAgLTUwMywyMCArNTA0LDYgQEAgdm9pZCBDU1NUb1N0eWxlTWFwOjpt
YXBOaW5lUGllY2VJbWFnZShDU1NQcm9wZXJ0eUlEIHByb3BlcnR5LCBDU1NWYWx1ZSogdmFsdWUs
IE4KICAgICAgICAgICAgIG1hcE5pbmVQaWVjZUltYWdlUmVwZWF0KGN1cnJlbnQsIGltYWdlKTsK
ICAgICAgICAgfQogICAgIH0KLQotICAgIGlmIChwcm9wZXJ0eSA9PSBDU1NQcm9wZXJ0eVdlYmtp
dEJvcmRlckltYWdlKSB7Ci0gICAgICAgIC8vIFdlIGhhdmUgdG8gcHJlc2VydmUgdGhlIGxlZ2Fj
eSBiZWhhdmlvciBvZiAtd2Via2l0LWJvcmRlci1pbWFnZSBhbmQgbWFrZSB0aGUgYm9yZGVyIHNs
aWNlcwotICAgICAgICAvLyBhbHNvIHNldCB0aGUgYm9yZGVyIHdpZHRocy4gV2UgZG9uJ3QgbmVl
ZCB0byB3b3JyeSBhYm91dCBwZXJjZW50YWdlcywgc2luY2Ugd2UgZG9uJ3QgZXZlbiBzdXBwb3J0
Ci0gICAgICAgIC8vIHRob3NlIG9uIHJlYWwgYm9yZGVycyB5ZXQuCi0gICAgICAgIGlmIChpbWFn
ZS5ib3JkZXJTbGljZXMoKS50b3AoKS5pc0ZpeGVkKCkpCi0gICAgICAgICAgICBzdHlsZSgpLT5z
ZXRCb3JkZXJUb3BXaWR0aChpbWFnZS5ib3JkZXJTbGljZXMoKS50b3AoKS52YWx1ZSgpKTsKLSAg
ICAgICAgaWYgKGltYWdlLmJvcmRlclNsaWNlcygpLnJpZ2h0KCkuaXNGaXhlZCgpKQotICAgICAg
ICAgICAgc3R5bGUoKS0+c2V0Qm9yZGVyUmlnaHRXaWR0aChpbWFnZS5ib3JkZXJTbGljZXMoKS5y
aWdodCgpLnZhbHVlKCkpOwotICAgICAgICBpZiAoaW1hZ2UuYm9yZGVyU2xpY2VzKCkuYm90dG9t
KCkuaXNGaXhlZCgpKQotICAgICAgICAgICAgc3R5bGUoKS0+c2V0Qm9yZGVyQm90dG9tV2lkdGgo
aW1hZ2UuYm9yZGVyU2xpY2VzKCkuYm90dG9tKCkudmFsdWUoKSk7Ci0gICAgICAgIGlmIChpbWFn
ZS5ib3JkZXJTbGljZXMoKS5sZWZ0KCkuaXNGaXhlZCgpKQotICAgICAgICAgICAgc3R5bGUoKS0+
c2V0Qm9yZGVyTGVmdFdpZHRoKGltYWdlLmJvcmRlclNsaWNlcygpLmxlZnQoKS52YWx1ZSgpKTsK
LSAgICB9CiB9CiAKIHZvaWQgQ1NTVG9TdHlsZU1hcDo6bWFwTmluZVBpZWNlSW1hZ2VTbGljZShD
U1NWYWx1ZSYgdmFsdWUsIE5pbmVQaWVjZUltYWdlJiBpbWFnZSkKQEAgLTU1Miw1NSArNTM5LDcw
IEBAIHZvaWQgQ1NTVG9TdHlsZU1hcDo6bWFwTmluZVBpZWNlSW1hZ2VTbGljZShDU1NWYWx1ZSYg
dmFsdWUsIE5pbmVQaWVjZUltYWdlJiBpbWFnCiAgICAgaW1hZ2Uuc2V0RmlsbChib3JkZXJJbWFn
ZVNsaWNlLm1fZmlsbCk7CiB9CiAKK3ZvaWQgQ1NTVG9TdHlsZU1hcDo6bWFwTmluZVBpZWNlSW1h
Z2VXaWR0aChDU1NWYWx1ZSYgdmFsdWUsIE5pbmVQaWVjZUltYWdlJiBpbWFnZSkKK3sKKyAgICBp
ZiAoIWlzPENTU0JvcmRlckltYWdlV2lkdGhWYWx1ZT4odmFsdWUpKQorICAgICAgICByZXR1cm47
CisKKyAgICAvLyBSZXRyaWV2ZSB0aGUgYm9yZGVyIGltYWdlIHZhbHVlLgorICAgIGF1dG8mIGJv
cmRlckltYWdlV2lkdGggPSBkb3duY2FzdDxDU1NCb3JkZXJJbWFnZVdpZHRoVmFsdWU+KHZhbHVl
KTsKKyAgICBpbWFnZS5zZXRCb3JkZXJTbGljZXMobWFwTmluZVBpZWNlSW1hZ2VRdWFkKGJvcmRl
ckltYWdlV2lkdGgud2lkdGhzKCkpKTsKKyAgICBpbWFnZS5zZXRPdmVycmlkZXNCb3JkZXJXaWR0
aHMoYm9yZGVySW1hZ2VXaWR0aC5tX292ZXJyaWRlc0JvcmRlcldpZHRocyk7Cit9CisKIExlbmd0
aEJveCBDU1NUb1N0eWxlTWFwOjptYXBOaW5lUGllY2VJbWFnZVF1YWQoQ1NTVmFsdWUmIHZhbHVl
KQogewogICAgIGlmICghaXM8Q1NTUHJpbWl0aXZlVmFsdWU+KHZhbHVlKSkKICAgICAgICAgcmV0
dXJuIExlbmd0aEJveCgpOwogCi0gICAgLy8gR2V0IG91ciB6b29tIHZhbHVlLgotICAgIENTU1Rv
TGVuZ3RoQ29udmVyc2lvbkRhdGEgY29udmVyc2lvbkRhdGEgPSB1c2VTVkdab29tUnVsZXMoKSA/
IG1fYnVpbGRlclN0YXRlLmNzc1RvTGVuZ3RoQ29udmVyc2lvbkRhdGEoKS5jb3B5V2l0aEFkanVz
dGVkWm9vbSgxLjBmKSA6IG1fYnVpbGRlclN0YXRlLmNzc1RvTGVuZ3RoQ29udmVyc2lvbkRhdGEo
KTsKLQogICAgIC8vIFJldHJpZXZlIHRoZSBwcmltaXRpdmUgdmFsdWUuCiAgICAgYXV0byYgYm9y
ZGVyV2lkdGhzID0gZG93bmNhc3Q8Q1NTUHJpbWl0aXZlVmFsdWU+KHZhbHVlKTsKIAorICAgIHJl
dHVybiBtYXBOaW5lUGllY2VJbWFnZVF1YWQoYm9yZGVyV2lkdGhzLnF1YWRWYWx1ZSgpKTsKK30K
KworTGVuZ3RoQm94IENTU1RvU3R5bGVNYXA6Om1hcE5pbmVQaWVjZUltYWdlUXVhZChRdWFkKiBx
dWFkKQoreworICAgIC8vIEdldCBvdXIgem9vbSB2YWx1ZS4KKyAgICBDU1NUb0xlbmd0aENvbnZl
cnNpb25EYXRhIGNvbnZlcnNpb25EYXRhID0gdXNlU1ZHWm9vbVJ1bGVzKCkgPyBtX2J1aWxkZXJT
dGF0ZS5jc3NUb0xlbmd0aENvbnZlcnNpb25EYXRhKCkuY29weVdpdGhBZGp1c3RlZFpvb20oMS4w
ZikgOiBtX2J1aWxkZXJTdGF0ZS5jc3NUb0xlbmd0aENvbnZlcnNpb25EYXRhKCk7CisKICAgICAv
LyBTZXQgdXAgYSBsZW5ndGggYm94IHRvIHJlcHJlc2VudCBvdXIgaW1hZ2Ugc2xpY2VzLgogICAg
IExlbmd0aEJveCBib3g7IC8vIERlZmF1bHRzIHRvICdhdXRvJyBzbyB3ZSBkb24ndCBoYXZlIHRv
IGhhbmRsZSB0aGF0IGV4cGxpY2l0bHkgYmVsb3cuCi0gICAgUXVhZCogc2xpY2VzID0gYm9yZGVy
V2lkdGhzLnF1YWRWYWx1ZSgpOwotICAgIGlmIChzbGljZXMtPnRvcCgpLT5pc051bWJlcigpKQot
ICAgICAgICBib3gudG9wKCkgPSBMZW5ndGgoc2xpY2VzLT50b3AoKS0+ZmxvYXRWYWx1ZSgpLCBM
ZW5ndGhUeXBlOjpSZWxhdGl2ZSk7Ci0gICAgZWxzZSBpZiAoc2xpY2VzLT50b3AoKS0+aXNQZXJj
ZW50YWdlKCkpCi0gICAgICAgIGJveC50b3AoKSA9IExlbmd0aChzbGljZXMtPnRvcCgpLT5kb3Vi
bGVWYWx1ZShDU1NVbml0VHlwZTo6Q1NTX1BFUkNFTlRBR0UpLCBMZW5ndGhUeXBlOjpQZXJjZW50
KTsKLSAgICBlbHNlIGlmIChzbGljZXMtPnRvcCgpLT5pc0NhbGN1bGF0ZWRQZXJjZW50YWdlV2l0
aExlbmd0aCgpKQotICAgICAgICBib3gudG9wKCkgPSBMZW5ndGgoc2xpY2VzLT50b3AoKS0+Y3Nz
Q2FsY1ZhbHVlKCktPmNyZWF0ZUNhbGN1bGF0aW9uVmFsdWUoY29udmVyc2lvbkRhdGEpKTsKLSAg
ICBlbHNlIGlmIChzbGljZXMtPnRvcCgpLT52YWx1ZUlEKCkgIT0gQ1NTVmFsdWVBdXRvKQotICAg
ICAgICBib3gudG9wKCkgPSBzbGljZXMtPnRvcCgpLT5jb21wdXRlTGVuZ3RoPExlbmd0aD4oY29u
dmVyc2lvbkRhdGEpOwotCi0gICAgaWYgKHNsaWNlcy0+cmlnaHQoKS0+aXNOdW1iZXIoKSkKLSAg
ICAgICAgYm94LnJpZ2h0KCkgPSBMZW5ndGgoc2xpY2VzLT5yaWdodCgpLT5mbG9hdFZhbHVlKCks
IExlbmd0aFR5cGU6OlJlbGF0aXZlKTsKLSAgICBlbHNlIGlmIChzbGljZXMtPnJpZ2h0KCktPmlz
UGVyY2VudGFnZSgpKQotICAgICAgICBib3gucmlnaHQoKSA9IExlbmd0aChzbGljZXMtPnJpZ2h0
KCktPmRvdWJsZVZhbHVlKENTU1VuaXRUeXBlOjpDU1NfUEVSQ0VOVEFHRSksIExlbmd0aFR5cGU6
OlBlcmNlbnQpOwotICAgIGVsc2UgaWYgKHNsaWNlcy0+cmlnaHQoKS0+aXNDYWxjdWxhdGVkUGVy
Y2VudGFnZVdpdGhMZW5ndGgoKSkKLSAgICAgICAgYm94LnJpZ2h0KCkgPSBMZW5ndGgoc2xpY2Vz
LT5yaWdodCgpLT5jc3NDYWxjVmFsdWUoKS0+Y3JlYXRlQ2FsY3VsYXRpb25WYWx1ZShjb252ZXJz
aW9uRGF0YSkpOwotICAgIGVsc2UgaWYgKHNsaWNlcy0+cmlnaHQoKS0+dmFsdWVJRCgpICE9IENT
U1ZhbHVlQXV0bykKLSAgICAgICAgYm94LnJpZ2h0KCkgPSBzbGljZXMtPnJpZ2h0KCktPmNvbXB1
dGVMZW5ndGg8TGVuZ3RoPihjb252ZXJzaW9uRGF0YSk7Ci0KLSAgICBpZiAoc2xpY2VzLT5ib3R0
b20oKS0+aXNOdW1iZXIoKSkKLSAgICAgICAgYm94LmJvdHRvbSgpID0gTGVuZ3RoKHNsaWNlcy0+
Ym90dG9tKCktPmZsb2F0VmFsdWUoKSwgTGVuZ3RoVHlwZTo6UmVsYXRpdmUpOwotICAgIGVsc2Ug
aWYgKHNsaWNlcy0+Ym90dG9tKCktPmlzUGVyY2VudGFnZSgpKQotICAgICAgICBib3guYm90dG9t
KCkgPSBMZW5ndGgoc2xpY2VzLT5ib3R0b20oKS0+ZG91YmxlVmFsdWUoQ1NTVW5pdFR5cGU6OkNT
U19QRVJDRU5UQUdFKSwgTGVuZ3RoVHlwZTo6UGVyY2VudCk7Ci0gICAgZWxzZSBpZiAoc2xpY2Vz
LT5ib3R0b20oKS0+aXNDYWxjdWxhdGVkUGVyY2VudGFnZVdpdGhMZW5ndGgoKSkKLSAgICAgICAg
Ym94LmJvdHRvbSgpID0gTGVuZ3RoKHNsaWNlcy0+Ym90dG9tKCktPmNzc0NhbGNWYWx1ZSgpLT5j
cmVhdGVDYWxjdWxhdGlvblZhbHVlKGNvbnZlcnNpb25EYXRhKSk7Ci0gICAgZWxzZSBpZiAoc2xp
Y2VzLT5ib3R0b20oKS0+dmFsdWVJRCgpICE9IENTU1ZhbHVlQXV0bykKLSAgICAgICAgYm94LmJv
dHRvbSgpID0gc2xpY2VzLT5ib3R0b20oKS0+Y29tcHV0ZUxlbmd0aDxMZW5ndGg+KGNvbnZlcnNp
b25EYXRhKTsKLQotICAgIGlmIChzbGljZXMtPmxlZnQoKS0+aXNOdW1iZXIoKSkKLSAgICAgICAg
Ym94LmxlZnQoKSA9IExlbmd0aChzbGljZXMtPmxlZnQoKS0+ZmxvYXRWYWx1ZSgpLCBMZW5ndGhU
eXBlOjpSZWxhdGl2ZSk7Ci0gICAgZWxzZSBpZiAoc2xpY2VzLT5sZWZ0KCktPmlzUGVyY2VudGFn
ZSgpKQotICAgICAgICBib3gubGVmdCgpID0gTGVuZ3RoKHNsaWNlcy0+bGVmdCgpLT5kb3VibGVW
YWx1ZShDU1NVbml0VHlwZTo6Q1NTX1BFUkNFTlRBR0UpLCBMZW5ndGhUeXBlOjpQZXJjZW50KTsK
LSAgICBlbHNlIGlmIChzbGljZXMtPmxlZnQoKS0+aXNDYWxjdWxhdGVkUGVyY2VudGFnZVdpdGhM
ZW5ndGgoKSkKLSAgICAgICAgYm94LmxlZnQoKSA9IExlbmd0aChzbGljZXMtPmxlZnQoKS0+Y3Nz
Q2FsY1ZhbHVlKCktPmNyZWF0ZUNhbGN1bGF0aW9uVmFsdWUoY29udmVyc2lvbkRhdGEpKTsKLSAg
ICBlbHNlIGlmIChzbGljZXMtPmxlZnQoKS0+dmFsdWVJRCgpICE9IENTU1ZhbHVlQXV0bykKLSAg
ICAgICAgYm94LmxlZnQoKSA9IHNsaWNlcy0+bGVmdCgpLT5jb21wdXRlTGVuZ3RoPExlbmd0aD4o
Y29udmVyc2lvbkRhdGEpOworICAgIGlmIChxdWFkLT50b3AoKS0+aXNOdW1iZXIoKSkKKyAgICAg
ICAgYm94LnRvcCgpID0gTGVuZ3RoKHF1YWQtPnRvcCgpLT5mbG9hdFZhbHVlKCksIExlbmd0aFR5
cGU6OlJlbGF0aXZlKTsKKyAgICBlbHNlIGlmIChxdWFkLT50b3AoKS0+aXNQZXJjZW50YWdlKCkp
CisgICAgICAgIGJveC50b3AoKSA9IExlbmd0aChxdWFkLT50b3AoKS0+ZG91YmxlVmFsdWUoQ1NT
VW5pdFR5cGU6OkNTU19QRVJDRU5UQUdFKSwgTGVuZ3RoVHlwZTo6UGVyY2VudCk7CisgICAgZWxz
ZSBpZiAocXVhZC0+dG9wKCktPmlzQ2FsY3VsYXRlZFBlcmNlbnRhZ2VXaXRoTGVuZ3RoKCkpCisg
ICAgICAgIGJveC50b3AoKSA9IExlbmd0aChxdWFkLT50b3AoKS0+Y3NzQ2FsY1ZhbHVlKCktPmNy
ZWF0ZUNhbGN1bGF0aW9uVmFsdWUoY29udmVyc2lvbkRhdGEpKTsKKyAgICBlbHNlIGlmIChxdWFk
LT50b3AoKS0+dmFsdWVJRCgpICE9IENTU1ZhbHVlQXV0bykKKyAgICAgICAgYm94LnRvcCgpID0g
cXVhZC0+dG9wKCktPmNvbXB1dGVMZW5ndGg8TGVuZ3RoPihjb252ZXJzaW9uRGF0YSk7CisKKyAg
ICBpZiAocXVhZC0+cmlnaHQoKS0+aXNOdW1iZXIoKSkKKyAgICAgICAgYm94LnJpZ2h0KCkgPSBM
ZW5ndGgocXVhZC0+cmlnaHQoKS0+ZmxvYXRWYWx1ZSgpLCBMZW5ndGhUeXBlOjpSZWxhdGl2ZSk7
CisgICAgZWxzZSBpZiAocXVhZC0+cmlnaHQoKS0+aXNQZXJjZW50YWdlKCkpCisgICAgICAgIGJv
eC5yaWdodCgpID0gTGVuZ3RoKHF1YWQtPnJpZ2h0KCktPmRvdWJsZVZhbHVlKENTU1VuaXRUeXBl
OjpDU1NfUEVSQ0VOVEFHRSksIExlbmd0aFR5cGU6OlBlcmNlbnQpOworICAgIGVsc2UgaWYgKHF1
YWQtPnJpZ2h0KCktPmlzQ2FsY3VsYXRlZFBlcmNlbnRhZ2VXaXRoTGVuZ3RoKCkpCisgICAgICAg
IGJveC5yaWdodCgpID0gTGVuZ3RoKHF1YWQtPnJpZ2h0KCktPmNzc0NhbGNWYWx1ZSgpLT5jcmVh
dGVDYWxjdWxhdGlvblZhbHVlKGNvbnZlcnNpb25EYXRhKSk7CisgICAgZWxzZSBpZiAocXVhZC0+
cmlnaHQoKS0+dmFsdWVJRCgpICE9IENTU1ZhbHVlQXV0bykKKyAgICAgICAgYm94LnJpZ2h0KCkg
PSBxdWFkLT5yaWdodCgpLT5jb21wdXRlTGVuZ3RoPExlbmd0aD4oY29udmVyc2lvbkRhdGEpOwor
CisgICAgaWYgKHF1YWQtPmJvdHRvbSgpLT5pc051bWJlcigpKQorICAgICAgICBib3guYm90dG9t
KCkgPSBMZW5ndGgocXVhZC0+Ym90dG9tKCktPmZsb2F0VmFsdWUoKSwgTGVuZ3RoVHlwZTo6UmVs
YXRpdmUpOworICAgIGVsc2UgaWYgKHF1YWQtPmJvdHRvbSgpLT5pc1BlcmNlbnRhZ2UoKSkKKyAg
ICAgICAgYm94LmJvdHRvbSgpID0gTGVuZ3RoKHF1YWQtPmJvdHRvbSgpLT5kb3VibGVWYWx1ZShD
U1NVbml0VHlwZTo6Q1NTX1BFUkNFTlRBR0UpLCBMZW5ndGhUeXBlOjpQZXJjZW50KTsKKyAgICBl
bHNlIGlmIChxdWFkLT5ib3R0b20oKS0+aXNDYWxjdWxhdGVkUGVyY2VudGFnZVdpdGhMZW5ndGgo
KSkKKyAgICAgICAgYm94LmJvdHRvbSgpID0gTGVuZ3RoKHF1YWQtPmJvdHRvbSgpLT5jc3NDYWxj
VmFsdWUoKS0+Y3JlYXRlQ2FsY3VsYXRpb25WYWx1ZShjb252ZXJzaW9uRGF0YSkpOworICAgIGVs
c2UgaWYgKHF1YWQtPmJvdHRvbSgpLT52YWx1ZUlEKCkgIT0gQ1NTVmFsdWVBdXRvKQorICAgICAg
ICBib3guYm90dG9tKCkgPSBxdWFkLT5ib3R0b20oKS0+Y29tcHV0ZUxlbmd0aDxMZW5ndGg+KGNv
bnZlcnNpb25EYXRhKTsKKworICAgIGlmIChxdWFkLT5sZWZ0KCktPmlzTnVtYmVyKCkpCisgICAg
ICAgIGJveC5sZWZ0KCkgPSBMZW5ndGgocXVhZC0+bGVmdCgpLT5mbG9hdFZhbHVlKCksIExlbmd0
aFR5cGU6OlJlbGF0aXZlKTsKKyAgICBlbHNlIGlmIChxdWFkLT5sZWZ0KCktPmlzUGVyY2VudGFn
ZSgpKQorICAgICAgICBib3gubGVmdCgpID0gTGVuZ3RoKHF1YWQtPmxlZnQoKS0+ZG91YmxlVmFs
dWUoQ1NTVW5pdFR5cGU6OkNTU19QRVJDRU5UQUdFKSwgTGVuZ3RoVHlwZTo6UGVyY2VudCk7Cisg
ICAgZWxzZSBpZiAocXVhZC0+bGVmdCgpLT5pc0NhbGN1bGF0ZWRQZXJjZW50YWdlV2l0aExlbmd0
aCgpKQorICAgICAgICBib3gubGVmdCgpID0gTGVuZ3RoKHF1YWQtPmxlZnQoKS0+Y3NzQ2FsY1Zh
bHVlKCktPmNyZWF0ZUNhbGN1bGF0aW9uVmFsdWUoY29udmVyc2lvbkRhdGEpKTsKKyAgICBlbHNl
IGlmIChxdWFkLT5sZWZ0KCktPnZhbHVlSUQoKSAhPSBDU1NWYWx1ZUF1dG8pCisgICAgICAgIGJv
eC5sZWZ0KCkgPSBxdWFkLT5sZWZ0KCktPmNvbXB1dGVMZW5ndGg8TGVuZ3RoPihjb252ZXJzaW9u
RGF0YSk7CiAKICAgICByZXR1cm4gYm94OwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
Y3NzL0NTU1RvU3R5bGVNYXAuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NUb1N0eWxlTWFwLmgK
aW5kZXggNGM5YmI0NGNiOTMyODhkZjc2NGUwNTkwYTM2ZGJlYzdiMWZmNzhjOS4uYTBkMWIxZDY2
OWY0OWM4N2Q0ZTEzODIyOTI1ZTE1Yzk4MmY0OTEyMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvY3NzL0NTU1RvU3R5bGVNYXAuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVG9TdHls
ZU1hcC5oCkBAIC03MCw4ICs3MCw5IEBAIHB1YmxpYzoKICAgICB2b2lkIG1hcEFuaW1hdGlvblRp
bWluZ0Z1bmN0aW9uKEFuaW1hdGlvbiYsIGNvbnN0IENTU1ZhbHVlJik7CiAgICAgdm9pZCBtYXBB
bmltYXRpb25Db21wb3NpdGVPcGVyYXRpb24oQW5pbWF0aW9uJiwgY29uc3QgQ1NTVmFsdWUmKTsK
IAotICAgIHZvaWQgbWFwTmluZVBpZWNlSW1hZ2UoQ1NTUHJvcGVydHlJRCwgQ1NTVmFsdWUqLCBO
aW5lUGllY2VJbWFnZSYpOworICAgIHZvaWQgbWFwTmluZVBpZWNlSW1hZ2UoQ1NTVmFsdWUqLCBO
aW5lUGllY2VJbWFnZSYpOwogICAgIHZvaWQgbWFwTmluZVBpZWNlSW1hZ2VTbGljZShDU1NWYWx1
ZSYsIE5pbmVQaWVjZUltYWdlJik7CisgICAgdm9pZCBtYXBOaW5lUGllY2VJbWFnZVdpZHRoKENT
U1ZhbHVlJiwgTmluZVBpZWNlSW1hZ2UmKTsKICAgICBMZW5ndGhCb3ggbWFwTmluZVBpZWNlSW1h
Z2VRdWFkKENTU1ZhbHVlJik7CiAgICAgdm9pZCBtYXBOaW5lUGllY2VJbWFnZVJlcGVhdChDU1NW
YWx1ZSYsIE5pbmVQaWVjZUltYWdlJik7CiAKQEAgLTc5LDYgKzgwLDcgQEAgcHJpdmF0ZToKICAg
ICBSZW5kZXJTdHlsZSogc3R5bGUoKSBjb25zdDsKICAgICBib29sIHVzZVNWR1pvb21SdWxlcygp
IGNvbnN0OwogICAgIFJlZlB0cjxTdHlsZUltYWdlPiBzdHlsZUltYWdlKENTU1ZhbHVlJik7Cisg
ICAgTGVuZ3RoQm94IG1hcE5pbmVQaWVjZUltYWdlUXVhZChRdWFkKik7CiAKICAgICAvLyBGSVhN
RTogVGhpcyB0eXBlIGNhbiBtZXJnZSBpbnRvIEJ1aWxkZXJTdGF0ZS4KICAgICBTdHlsZTo6QnVp
bGRlclN0YXRlJiBtX2J1aWxkZXJTdGF0ZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nz
cy9DU1NWYWx1ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWUuY3BwCmluZGV4IGNl
ZDEzOTQyOTE2YmFlYzU3OGIzOGQzZTc4OTU3NzQwMGQ3OGFhNGUuLmY5MzMzOGFmNDFjZDBiMWEz
MzBlZGU1MTJjMzg3NDA2NzdlMWFkNTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9D
U1NWYWx1ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlLmNwcApAQCAtMzEs
NiArMzEsNyBAQAogCiAjaW5jbHVkZSAiQ1NTQXNwZWN0UmF0aW9WYWx1ZS5oIgogI2luY2x1ZGUg
IkNTU0JvcmRlckltYWdlU2xpY2VWYWx1ZS5oIgorI2luY2x1ZGUgIkNTU0JvcmRlckltYWdlV2lk
dGhWYWx1ZS5oIgogI2luY2x1ZGUgIkNTU0NhbGNWYWx1ZS5oIgogI2luY2x1ZGUgIkNTU0NhbnZh
c1ZhbHVlLmgiCiAjaW5jbHVkZSAiQ1NTQ29udGVudERpc3RyaWJ1dGlvblZhbHVlLmgiCkBAIC0x
NDUsNiArMTQ2LDggQEAgYm9vbCBDU1NWYWx1ZTo6ZXF1YWxzKGNvbnN0IENTU1ZhbHVlJiBvdGhl
cikgY29uc3QKICAgICAgICAgICAgIHJldHVybiBjb21wYXJlQ1NTVmFsdWVzPENTU0FzcGVjdFJh
dGlvVmFsdWU+KCp0aGlzLCBvdGhlcik7CiAgICAgICAgIGNhc2UgQm9yZGVySW1hZ2VTbGljZUNs
YXNzOgogICAgICAgICAgICAgcmV0dXJuIGNvbXBhcmVDU1NWYWx1ZXM8Q1NTQm9yZGVySW1hZ2VT
bGljZVZhbHVlPigqdGhpcywgb3RoZXIpOworICAgICAgICBjYXNlIEJvcmRlckltYWdlV2lkdGhD
bGFzczoKKyAgICAgICAgICAgIHJldHVybiBjb21wYXJlQ1NTVmFsdWVzPENTU0JvcmRlckltYWdl
V2lkdGhWYWx1ZT4oKnRoaXMsIG90aGVyKTsKICAgICAgICAgY2FzZSBDYW52YXNDbGFzczoKICAg
ICAgICAgICAgIHJldHVybiBjb21wYXJlQ1NTVmFsdWVzPENTU0NhbnZhc1ZhbHVlPigqdGhpcywg
b3RoZXIpOwogICAgICAgICBjYXNlIE5hbWVkSW1hZ2VDbGFzczoKQEAgLTI1MCw2ICsyNTMsOCBA
QCBTdHJpbmcgQ1NTVmFsdWU6OmNzc1RleHQoKSBjb25zdAogICAgICAgICByZXR1cm4gZG93bmNh
c3Q8Q1NTQXNwZWN0UmF0aW9WYWx1ZT4oKnRoaXMpLmN1c3RvbUNTU1RleHQoKTsKICAgICBjYXNl
IEJvcmRlckltYWdlU2xpY2VDbGFzczoKICAgICAgICAgcmV0dXJuIGRvd25jYXN0PENTU0JvcmRl
ckltYWdlU2xpY2VWYWx1ZT4oKnRoaXMpLmN1c3RvbUNTU1RleHQoKTsKKyAgICBjYXNlIEJvcmRl
ckltYWdlV2lkdGhDbGFzczoKKyAgICAgICAgcmV0dXJuIGRvd25jYXN0PENTU0JvcmRlckltYWdl
V2lkdGhWYWx1ZT4oKnRoaXMpLmN1c3RvbUNTU1RleHQoKTsKICAgICBjYXNlIENhbnZhc0NsYXNz
OgogICAgICAgICByZXR1cm4gZG93bmNhc3Q8Q1NTQ2FudmFzVmFsdWU+KCp0aGlzKS5jdXN0b21D
U1NUZXh0KCk7CiAgICAgY2FzZSBOYW1lZEltYWdlQ2xhc3M6CkBAIC0zNjQsNiArMzY5LDkgQEAg
dm9pZCBDU1NWYWx1ZTo6ZGVzdHJveSgpCiAgICAgY2FzZSBCb3JkZXJJbWFnZVNsaWNlQ2xhc3M6
CiAgICAgICAgIGRlbGV0ZSBkb3duY2FzdDxDU1NCb3JkZXJJbWFnZVNsaWNlVmFsdWU+KHRoaXMp
OwogICAgICAgICByZXR1cm47CisgICAgY2FzZSBCb3JkZXJJbWFnZVdpZHRoQ2xhc3M6CisgICAg
ICAgIGRlbGV0ZSBkb3duY2FzdDxDU1NCb3JkZXJJbWFnZVdpZHRoVmFsdWU+KHRoaXMpOworICAg
ICAgICByZXR1cm47CiAgICAgY2FzZSBDYW52YXNDbGFzczoKICAgICAgICAgZGVsZXRlIGRvd25j
YXN0PENTU0NhbnZhc1ZhbHVlPih0aGlzKTsKICAgICAgICAgcmV0dXJuOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFs
dWUuaAppbmRleCBlNjc3N2ViODBlMTMzYzI5Y2FhNjI1Njk2ODNjZDVkMGNmZjdhMGU3Li5kYWRl
NThkYTIwNjhiN2VlY2NkYWEzMzE5MThjNDRkM2E3NmUwNWM4IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9jc3MvQ1NTVmFsdWUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWUu
aApAQCAtODksNiArODksNyBAQCBwdWJsaWM6CiAKICAgICBib29sIGlzQXNwZWN0UmF0aW9WYWx1
ZSgpIGNvbnN0IHsgcmV0dXJuIG1fY2xhc3NUeXBlID09IEFzcGVjdFJhdGlvQ2xhc3M7IH0KICAg
ICBib29sIGlzQm9yZGVySW1hZ2VTbGljZVZhbHVlKCkgY29uc3QgeyByZXR1cm4gbV9jbGFzc1R5
cGUgPT0gQm9yZGVySW1hZ2VTbGljZUNsYXNzOyB9CisgICAgYm9vbCBpc0JvcmRlckltYWdlV2lk
dGhWYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1fY2xhc3NUeXBlID09IEJvcmRlckltYWdlV2lkdGhD
bGFzczsgfQogICAgIGJvb2wgaXNDYW52YXNWYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1fY2xhc3NU
eXBlID09IENhbnZhc0NsYXNzOyB9CiAgICAgYm9vbCBpc0Nyb3NzZmFkZVZhbHVlKCkgY29uc3Qg
eyByZXR1cm4gbV9jbGFzc1R5cGUgPT0gQ3Jvc3NmYWRlQ2xhc3M7IH0KICAgICBib29sIGlzQ3Vy
c29ySW1hZ2VWYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1fY2xhc3NUeXBlID09IEN1cnNvckltYWdl
Q2xhc3M7IH0KQEAgLTE5MSw2ICsxOTIsNyBAQCBwcm90ZWN0ZWQ6CiAgICAgICAgIC8vIE90aGVy
IGNsYXNzIHR5cGVzLgogICAgICAgICBBc3BlY3RSYXRpb0NsYXNzLAogICAgICAgICBCb3JkZXJJ
bWFnZVNsaWNlQ2xhc3MsCisgICAgICAgIEJvcmRlckltYWdlV2lkdGhDbGFzcywKICAgICAgICAg
Rm9udEZlYXR1cmVDbGFzcywKICAgICAgICAgRm9udFZhcmlhdGlvbkNsYXNzLAogICAgICAgICBG
b250Q2xhc3MsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVQcm9wZXJ0aWVz
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVByb3BlcnRpZXMuY3BwCmluZGV4IGYwNDEz
YzE3ZmZmYTI4MzgxMWZlMjUxN2ZkZmQ2MWJjZGNmOGIyNTkuLjI5YTljMTUzNzE1Yjk0OTEwYjNm
N2EyMzcwOGUwMTExN2E5MjBmYTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHls
ZVByb3BlcnRpZXMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVByb3BlcnRpZXMu
Y3BwCkBAIC0yMyw2ICsyMyw3IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiU3R5
bGVQcm9wZXJ0aWVzLmgiCiAKKyNpbmNsdWRlICJDU1NCb3JkZXJJbWFnZVdpZHRoVmFsdWUuaCIK
ICNpbmNsdWRlICJDU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uaCIKICNpbmNsdWRlICJDU1ND
dXN0b21Qcm9wZXJ0eVZhbHVlLmgiCiAjaW5jbHVkZSAiQ1NTRGVmZXJyZWRQYXJzZXIuaCIKQEAg
LTIxOSw3ICsyMjAsOCBAQCBTdHJpbmcgU3R5bGVQcm9wZXJ0aWVzOjpnZXRQcm9wZXJ0eVZhbHVl
KENTU1Byb3BlcnR5SUQgcHJvcGVydHlJRCkgY29uc3QKICAgICBjYXNlIENTU1Byb3BlcnR5Qm9y
ZGVyQmxvY2tFbmQ6CiAgICAgICAgIHJldHVybiBnZXRTaG9ydGhhbmRWYWx1ZShib3JkZXJCbG9j
a0VuZFNob3J0aGFuZCgpKTsKICAgICBjYXNlIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2U6Ci0gICAg
ICAgIHJldHVybiBib3JkZXJJbWFnZVByb3BlcnR5VmFsdWUoKTsKKyAgICBjYXNlIENTU1Byb3Bl
cnR5V2Via2l0Qm9yZGVySW1hZ2U6CisgICAgICAgIHJldHVybiBib3JkZXJJbWFnZVByb3BlcnR5
VmFsdWUocHJvcGVydHlJRCk7CiAgICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlcklubGluZToKICAg
ICAgICAgcmV0dXJuIGJvcmRlclByb3BlcnR5VmFsdWUoYm9yZGVySW5saW5lV2lkdGhTaG9ydGhh
bmQoKSwgYm9yZGVySW5saW5lU3R5bGVTaG9ydGhhbmQoKSwgYm9yZGVySW5saW5lQ29sb3JTaG9y
dGhhbmQoKSk7CiAgICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlcklubGluZUNvbG9yOgpAQCAtOTAz
LDcgKzkwNSw3IEBAIFN0cmluZyBTdHlsZVByb3BlcnRpZXM6OmdldEFsaWdubWVudFNob3J0aGFu
ZFZhbHVlKGNvbnN0IFN0eWxlUHJvcGVydHlTaG9ydGhhbmQmCiAgICAgcmV0dXJuIHZhbHVlOwog
fQogCi1TdHJpbmcgU3R5bGVQcm9wZXJ0aWVzOjpib3JkZXJJbWFnZVByb3BlcnR5VmFsdWUoKSBj
b25zdAorU3RyaW5nIFN0eWxlUHJvcGVydGllczo6Ym9yZGVySW1hZ2VQcm9wZXJ0eVZhbHVlKENT
U1Byb3BlcnR5SUQgcHJvcGVydHlJRCkgY29uc3QKIHsKICAgICBjb25zdCBTdHlsZVByb3BlcnR5
U2hvcnRoYW5kJiBzaG9ydGhhbmQgPSBib3JkZXJJbWFnZVNob3J0aGFuZCgpOwogICAgIFN0cmlu
Z0J1aWxkZXIgcmVzdWx0OwpAQCAtOTM2LDYgKzkzOCwxNiBAQCBTdHJpbmcgU3R5bGVQcm9wZXJ0
aWVzOjpib3JkZXJJbWFnZVByb3BlcnR5VmFsdWUoKSBjb25zdAogICAgICAgICBpZiAob21pdHRl
ZFNsaWNlICYmIChsb25naGFuZCA9PSBDU1NQcm9wZXJ0eUJvcmRlckltYWdlV2lkdGggfHwgbG9u
Z2hhbmQgPT0gQ1NTUHJvcGVydHlCb3JkZXJJbWFnZU91dHNldCkpCiAgICAgICAgICAgICByZXR1
cm4gU3RyaW5nKCk7CiAKKyAgICAgICAgLy8gLXdlYmtpdC1ib3JkZXItaW1hZ2UgaGFzIGEgbGVn
YWN5IGJlaGF2aW9yIHRoYXQgbWFrZXMgZml4ZWQgYm9yZGVyIHNsaWNlcyBhbHNvIHNldCB0aGUg
Ym9yZGVyIHdpZHRocy4KKyAgICAgICAgaWYgKGlzPENTU0JvcmRlckltYWdlV2lkdGhWYWx1ZT4o
dmFsdWUuZ2V0KCkpKSB7CisgICAgICAgICAgICBhdXRvKiBib3JkZXJJbWFnZVdpZHRoID0gZG93
bmNhc3Q8Q1NTQm9yZGVySW1hZ2VXaWR0aFZhbHVlPih2YWx1ZS5nZXQoKSk7CisgICAgICAgICAg
ICBRdWFkKiB3aWR0aHMgPSBib3JkZXJJbWFnZVdpZHRoLT53aWR0aHMoKTsKKyAgICAgICAgICAg
IGJvb2wgb3ZlcnJpZGVzQm9yZGVyV2lkdGhzID0gcHJvcGVydHlJRCA9PSBDU1NQcm9wZXJ0eVdl
YmtpdEJvcmRlckltYWdlICYmIHdpZHRocyAmJiAod2lkdGhzLT50b3AoKS0+aXNMZW5ndGgoKSB8
fCB3aWR0aHMtPnJpZ2h0KCktPmlzTGVuZ3RoKCkgfHwgd2lkdGhzLT5ib3R0b20oKS0+aXNMZW5n
dGgoKSB8fCB3aWR0aHMtPmxlZnQoKS0+aXNMZW5ndGgoKSk7CisgICAgICAgICAgICBpZiAob3Zl
cnJpZGVzQm9yZGVyV2lkdGhzICE9IGJvcmRlckltYWdlV2lkdGgtPm1fb3ZlcnJpZGVzQm9yZGVy
V2lkdGhzKQorICAgICAgICAgICAgICAgIHJldHVybiBTdHJpbmcoKTsKKyAgICAgICAgICAgIHZh
bHVlID0gYm9yZGVySW1hZ2VXaWR0aC0+bV93aWR0aHM7CisgICAgICAgIH0KKwogICAgICAgICAv
LyBJZiBhIGxvbmdoYW5kIGlzIHNldCB0byBhIGNzcy13aWRlIGtleXdvcmQsIHRoZSBvdGhlcnMg
c2hvdWxkIGJlIHRoZSBzYW1lLgogICAgICAgICBTdHJpbmcgdmFsdWVUZXh0ID0gdmFsdWUtPmNz
c1RleHQoKTsKICAgICAgICAgaWYgKGlzQ1NTV2lkZVZhbHVlS2V5d29yZCh2YWx1ZVRleHQpKSB7
CkBAIC0xNDA5LDcgKzE0MjEsNyBAQCBTdHJpbmcgU3R5bGVQcm9wZXJ0aWVzOjphc1RleHQoKSBj
b25zdAogICAgICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlckltYWdlV2lkdGg6CiAgICAg
ICAgICAgICBjYXNlIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VPdXRzZXQ6CiAgICAgICAgICAgICBj
YXNlIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VSZXBlYXQ6Ci0gICAgICAgICAgICAgICAgc2hvcnRo
YW5kUHJvcGVydHlJRCA9IENTU1Byb3BlcnR5Qm9yZGVySW1hZ2U7CisgICAgICAgICAgICAgICAg
c2VyaWFsaXplQm9yZGVyU2hvcnRoYW5kKENTU1Byb3BlcnR5Qm9yZGVySW1hZ2UsIENTU1Byb3Bl
cnR5V2Via2l0Qm9yZGVySW1hZ2UpOwogICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAg
ICAgY2FzZSBDU1NQcm9wZXJ0eUZvbnRGYW1pbHk6CiAgICAgICAgICAgICBjYXNlIENTU1Byb3Bl
cnR5TGluZUhlaWdodDoKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVByb3Bl
cnRpZXMuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVByb3BlcnRpZXMuaAppbmRleCBkZDM5
MGQ1OTIyZGM3YmQzY2YwYjhlMjZjZGFhMzJmZmExNmZlZmRjLi5kYTVjZjYxM2JlMWYwMmQ3NDBi
YjBiNmIyZWUwOWMzNDdiNjFjYzI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5
bGVQcm9wZXJ0aWVzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUHJvcGVydGllcy5o
CkBAIC0xNjUsNyArMTY1LDcgQEAgcHJpdmF0ZToKICAgICBTdHJpbmcgZ2V0U2hvcnRoYW5kVmFs
dWUoY29uc3QgU3R5bGVQcm9wZXJ0eVNob3J0aGFuZCYsIGNvbnN0IGNoYXIqIHNlcGFyYXRvciA9
ICIgIikgY29uc3Q7CiAgICAgU3RyaW5nIGdldENvbW1vblZhbHVlKGNvbnN0IFN0eWxlUHJvcGVy
dHlTaG9ydGhhbmQmKSBjb25zdDsKICAgICBTdHJpbmcgZ2V0QWxpZ25tZW50U2hvcnRoYW5kVmFs
dWUoY29uc3QgU3R5bGVQcm9wZXJ0eVNob3J0aGFuZCYpIGNvbnN0OwotICAgIFN0cmluZyBib3Jk
ZXJJbWFnZVByb3BlcnR5VmFsdWUoKSBjb25zdDsKKyAgICBTdHJpbmcgYm9yZGVySW1hZ2VQcm9w
ZXJ0eVZhbHVlKENTU1Byb3BlcnR5SUQpIGNvbnN0OwogICAgIFN0cmluZyBib3JkZXJQcm9wZXJ0
eVZhbHVlKGNvbnN0IFN0eWxlUHJvcGVydHlTaG9ydGhhbmQmLCBjb25zdCBTdHlsZVByb3BlcnR5
U2hvcnRoYW5kJiwgY29uc3QgU3R5bGVQcm9wZXJ0eVNob3J0aGFuZCYpIGNvbnN0OwogICAgIFN0
cmluZyBwYWdlQnJlYWtQcm9wZXJ0eVZhbHVlKGNvbnN0IFN0eWxlUHJvcGVydHlTaG9ydGhhbmQm
KSBjb25zdDsKICAgICBTdHJpbmcgZ2V0TGF5ZXJlZFNob3J0aGFuZFZhbHVlKGNvbnN0IFN0eWxl
UHJvcGVydHlTaG9ydGhhbmQmKSBjb25zdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nz
cy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNl
ci9DU1NQcm9wZXJ0eVBhcnNlci5jcHAKaW5kZXggYzVmMzQ0MTY1ZjQ2MTYyZmY4ZWQxMTAzYTgw
Yjg4YWUxOTA2MjM3Zi4uZDFiMDJiYmJmYjUyMzM3ZGI1ZjgwNjc1ZWE3MmQyZmU2Y2YwYTNlNSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlci5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlci5jcHAK
QEAgLTMzLDYgKzMzLDcgQEAKICNpbmNsdWRlICJDU1NCYXNpY1NoYXBlcy5oIgogI2luY2x1ZGUg
IkNTU0JvcmRlckltYWdlLmgiCiAjaW5jbHVkZSAiQ1NTQm9yZGVySW1hZ2VTbGljZVZhbHVlLmgi
CisjaW5jbHVkZSAiQ1NTQm9yZGVySW1hZ2VXaWR0aFZhbHVlLmgiCiAjaW5jbHVkZSAiQ1NTQ29t
cHV0ZWRTdHlsZURlY2xhcmF0aW9uLmgiCiAjaW5jbHVkZSAiQ1NTQ29udGVudERpc3RyaWJ1dGlv
blZhbHVlLmgiCiAjaW5jbHVkZSAiQ1NTQ3Vyc29ySW1hZ2VWYWx1ZS5oIgpAQCAtMzAzNyw3ICsz
MDM4LDcgQEAgc3RhdGljIFJlZlB0cjxDU1NWYWx1ZT4gY29uc3VtZUJvcmRlckltYWdlT3V0c2V0
KENTU1BhcnNlclRva2VuUmFuZ2UmIHJhbmdlKQogICAgIHJldHVybiBDU1NWYWx1ZVBvb2w6OnNp
bmdsZXRvbigpLmNyZWF0ZVZhbHVlKFdURk1vdmUocXVhZCkpOwogfQogCi1zdGF0aWMgUmVmUHRy
PENTU1ZhbHVlPiBjb25zdW1lQm9yZGVySW1hZ2VXaWR0aChDU1NQYXJzZXJUb2tlblJhbmdlJiBy
YW5nZSkKK3N0YXRpYyBSZWZQdHI8Q1NTVmFsdWU+IGNvbnN1bWVCb3JkZXJJbWFnZVdpZHRoKENT
U1Byb3BlcnR5SUQgcHJvcGVydHksIENTU1BhcnNlclRva2VuUmFuZ2UmIHJhbmdlKQogewogICAg
IFJlZlB0cjxDU1NQcmltaXRpdmVWYWx1ZT4gd2lkdGhzWzRdOwogCkBAIC0zMDU1LDE1ICszMDU2
LDE4IEBAIHN0YXRpYyBSZWZQdHI8Q1NTVmFsdWU+IGNvbnN1bWVCb3JkZXJJbWFnZVdpZHRoKENT
U1BhcnNlclRva2VuUmFuZ2UmIHJhbmdlKQogICAgIGlmICghd2lkdGhzWzBdKQogICAgICAgICBy
ZXR1cm4gbnVsbHB0cjsKICAgICBjb21wbGV0ZTRTaWRlcyh3aWR0aHMpOwotICAgIAorCisgICAg
Ly8gLXdlYmtpdC1ib3JkZXItaW1hZ2UgaGFzIGEgbGVnYWN5IGJlaGF2aW9yIHRoYXQgbWFrZXMg
Zml4ZWQgYm9yZGVyIHNsaWNlcyBhbHNvIHNldCB0aGUgYm9yZGVyIHdpZHRocy4KKyAgICBib29s
IG92ZXJyaWRlc0JvcmRlcldpZHRocyA9IHByb3BlcnR5ID09IENTU1Byb3BlcnR5V2Via2l0Qm9y
ZGVySW1hZ2UgJiYgKHdpZHRoc1swXS0+aXNMZW5ndGgoKSB8fCB3aWR0aHNbMV0tPmlzTGVuZ3Ro
KCkgfHwgd2lkdGhzWzJdLT5pc0xlbmd0aCgpIHx8IHdpZHRoc1szXS0+aXNMZW5ndGgoKSk7CisK
ICAgICAvLyBGSVhNRS1ORVdQQVJTRVI6IFNob3VsZCBqdXN0IGhhdmUgYSBDU1NRdWFkVmFsdWUu
CiAgICAgYXV0byBxdWFkID0gUXVhZDo6Y3JlYXRlKCk7CiAgICAgcXVhZC0+c2V0VG9wKHdpZHRo
c1swXS5yZWxlYXNlTm9uTnVsbCgpKTsKICAgICBxdWFkLT5zZXRSaWdodCh3aWR0aHNbMV0ucmVs
ZWFzZU5vbk51bGwoKSk7CiAgICAgcXVhZC0+c2V0Qm90dG9tKHdpZHRoc1syXS5yZWxlYXNlTm9u
TnVsbCgpKTsKICAgICBxdWFkLT5zZXRMZWZ0KHdpZHRoc1szXS5yZWxlYXNlTm9uTnVsbCgpKTsK
LSAgICAKLSAgICByZXR1cm4gQ1NTVmFsdWVQb29sOjpzaW5nbGV0b24oKS5jcmVhdGVWYWx1ZShX
VEZNb3ZlKHF1YWQpKTsKKworICAgIHJldHVybiBDU1NCb3JkZXJJbWFnZVdpZHRoVmFsdWU6OmNy
ZWF0ZShDU1NWYWx1ZVBvb2w6OnNpbmdsZXRvbigpLmNyZWF0ZVZhbHVlKFdURk1vdmUocXVhZCkp
LCBvdmVycmlkZXNCb3JkZXJXaWR0aHMpOwogfQogCiBzdGF0aWMgYm9vbCBjb25zdW1lQm9yZGVy
SW1hZ2VDb21wb25lbnRzKENTU1Byb3BlcnR5SUQgcHJvcGVydHksIENTU1BhcnNlclRva2VuUmFu
Z2UmIHJhbmdlLCBjb25zdCBDU1NQYXJzZXJDb250ZXh0JiBjb250ZXh0LCBSZWZQdHI8Q1NTVmFs
dWU+JiBzb3VyY2UsCkBAIC0zMDg1LDcgKzMwODksNyBAQCBzdGF0aWMgYm9vbCBjb25zdW1lQm9y
ZGVySW1hZ2VDb21wb25lbnRzKENTU1Byb3BlcnR5SUQgcHJvcGVydHksIENTU1BhcnNlclRva2Vu
UgogICAgICAgICAgICAgaWYgKHNsaWNlKSB7CiAgICAgICAgICAgICAgICAgQVNTRVJUKCF3aWR0
aCAmJiAhb3V0c2V0KTsKICAgICAgICAgICAgICAgICBpZiAoY29uc3VtZVNsYXNoSW5jbHVkaW5n
V2hpdGVzcGFjZShyYW5nZSkpIHsKLSAgICAgICAgICAgICAgICAgICAgd2lkdGggPSBjb25zdW1l
Qm9yZGVySW1hZ2VXaWR0aChyYW5nZSk7CisgICAgICAgICAgICAgICAgICAgIHdpZHRoID0gY29u
c3VtZUJvcmRlckltYWdlV2lkdGgocHJvcGVydHksIHJhbmdlKTsKICAgICAgICAgICAgICAgICAg
ICAgaWYgKGNvbnN1bWVTbGFzaEluY2x1ZGluZ1doaXRlc3BhY2UocmFuZ2UpKSB7CiAgICAgICAg
ICAgICAgICAgICAgICAgICBvdXRzZXQgPSBjb25zdW1lQm9yZGVySW1hZ2VPdXRzZXQocmFuZ2Up
OwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFvdXRzZXQpCkBAIC00NjIwLDggKzQ2MjQs
NyBAQCBSZWZQdHI8Q1NTVmFsdWU+IENTU1Byb3BlcnR5UGFyc2VyOjpwYXJzZVNpbmdsZVZhbHVl
KENTU1Byb3BlcnR5SUQgcHJvcGVydHksIENTUwogICAgICAgICByZXR1cm4gY29uc3VtZUJvcmRl
ckltYWdlT3V0c2V0KG1fcmFuZ2UpOwogICAgIGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJJbWFnZVdp
ZHRoOgogICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2VXaWR0aDoKLSAgICAg
ICAgcmV0dXJuIGNvbnN1bWVCb3JkZXJJbWFnZVdpZHRoKG1fcmFuZ2UpOwotICAgIGNhc2UgQ1NT
UHJvcGVydHlXZWJraXRCb3JkZXJJbWFnZToKKyAgICAgICAgcmV0dXJuIGNvbnN1bWVCb3JkZXJJ
bWFnZVdpZHRoKHByb3BlcnR5LCBtX3JhbmdlKTsKICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0
TWFza0JveEltYWdlOgogICAgICAgICByZXR1cm4gY29uc3VtZVdlYmtpdEJvcmRlckltYWdlKHBy
b3BlcnR5LCBtX3JhbmdlLCBtX2NvbnRleHQpOwogICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRC
b3hSZWZsZWN0OgpAQCAtNTU0OSwxOCArNTU1MiwxOSBAQCBib29sIENTU1Byb3BlcnR5UGFyc2Vy
Ojpjb25zdW1lQm9yZGVySW1hZ2UoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eSwgYm9vbCBpbXBvcnRh
bgogICAgICAgICBhdXRvJiB2YWx1ZVBvb2wgPSBDU1NWYWx1ZVBvb2w6OnNpbmdsZXRvbigpOwog
ICAgICAgICBzd2l0Y2ggKHByb3BlcnR5KSB7CiAgICAgICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJr
aXRNYXNrQm94SW1hZ2U6Ci0gICAgICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNpdERlZmF1
bHQoQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2VTb3VyY2UsIENTU1Byb3BlcnR5V2Via2l0
TWFza0JveEltYWdlLCBXVEZNb3ZlKHNvdXJjZSksIHZhbHVlUG9vbC5jcmVhdGVJbXBsaWNpdElu
aXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQpOwotICAgICAgICAgICAgYWRkUHJvcGVydHlXaXRoSW1w
bGljaXREZWZhdWx0KENTU1Byb3BlcnR5V2Via2l0TWFza0JveEltYWdlU2xpY2UsIENTU1Byb3Bl
cnR5V2Via2l0TWFza0JveEltYWdlLCBXVEZNb3ZlKHNsaWNlKSwgdmFsdWVQb29sLmNyZWF0ZUlt
cGxpY2l0SW5pdGlhbFZhbHVlKCksIGltcG9ydGFudCk7Ci0gICAgICAgICAgICBhZGRQcm9wZXJ0
eVdpdGhJbXBsaWNpdERlZmF1bHQoQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2VXaWR0aCwg
Q1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2UsIFdURk1vdmUod2lkdGgpLCB2YWx1ZVBvb2wu
Y3JlYXRlSW1wbGljaXRJbml0aWFsVmFsdWUoKSwgaW1wb3J0YW50KTsKLSAgICAgICAgICAgIGFk
ZFByb3BlcnR5V2l0aEltcGxpY2l0RGVmYXVsdChDU1NQcm9wZXJ0eVdlYmtpdE1hc2tCb3hJbWFn
ZU91dHNldCwgQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2UsIFdURk1vdmUob3V0c2V0KSwg
dmFsdWVQb29sLmNyZWF0ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCksIGltcG9ydGFudCk7Ci0gICAg
ICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNpdERlZmF1bHQoQ1NTUHJvcGVydHlXZWJraXRN
YXNrQm94SW1hZ2VSZXBlYXQsIENTU1Byb3BlcnR5V2Via2l0TWFza0JveEltYWdlLCBXVEZNb3Zl
KHJlcGVhdCksIHZhbHVlUG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgpLCBpbXBvcnRh
bnQpOworICAgICAgICAgICAgYWRkUHJvcGVydHlXaXRoSW1wbGljaXREZWZhdWx0KENTU1Byb3Bl
cnR5V2Via2l0TWFza0JveEltYWdlU291cmNlLCBwcm9wZXJ0eSwgV1RGTW92ZShzb3VyY2UpLCB2
YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFsdWUoKSwgaW1wb3J0YW50KTsKKyAgICAg
ICAgICAgIGFkZFByb3BlcnR5V2l0aEltcGxpY2l0RGVmYXVsdChDU1NQcm9wZXJ0eVdlYmtpdE1h
c2tCb3hJbWFnZVNsaWNlLCBwcm9wZXJ0eSwgV1RGTW92ZShzbGljZSksIHZhbHVlUG9vbC5jcmVh
dGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQpOworICAgICAgICAgICAgYWRkUHJv
cGVydHlXaXRoSW1wbGljaXREZWZhdWx0KENTU1Byb3BlcnR5V2Via2l0TWFza0JveEltYWdlV2lk
dGgsIHByb3BlcnR5LCBXVEZNb3ZlKHdpZHRoKSwgdmFsdWVQb29sLmNyZWF0ZUltcGxpY2l0SW5p
dGlhbFZhbHVlKCksIGltcG9ydGFudCk7CisgICAgICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJbXBs
aWNpdERlZmF1bHQoQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2VPdXRzZXQsIHByb3BlcnR5
LCBXVEZNb3ZlKG91dHNldCksIHZhbHVlUG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgp
LCBpbXBvcnRhbnQpOworICAgICAgICAgICAgYWRkUHJvcGVydHlXaXRoSW1wbGljaXREZWZhdWx0
KENTU1Byb3BlcnR5V2Via2l0TWFza0JveEltYWdlUmVwZWF0LCBwcm9wZXJ0eSwgV1RGTW92ZShy
ZXBlYXQpLCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFsdWUoKSwgaW1wb3J0YW50
KTsKICAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgICBjYXNlIENTU1Byb3BlcnR5Qm9y
ZGVySW1hZ2U6Ci0gICAgICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNpdERlZmF1bHQoQ1NT
UHJvcGVydHlCb3JkZXJJbWFnZVNvdXJjZSwgQ1NTUHJvcGVydHlCb3JkZXJJbWFnZSwgV1RGTW92
ZShzb3VyY2UpLCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFsdWUoKSwgaW1wb3J0
YW50KTsKLSAgICAgICAgICAgIGFkZFByb3BlcnR5V2l0aEltcGxpY2l0RGVmYXVsdChDU1NQcm9w
ZXJ0eUJvcmRlckltYWdlU2xpY2UsIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2UsIFdURk1vdmUoc2xp
Y2UpLCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFsdWUoKSwgaW1wb3J0YW50KTsK
LSAgICAgICAgICAgIGFkZFByb3BlcnR5V2l0aEltcGxpY2l0RGVmYXVsdChDU1NQcm9wZXJ0eUJv
cmRlckltYWdlV2lkdGgsIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2UsIFdURk1vdmUod2lkdGgpLCB2
YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFsdWUoKSwgaW1wb3J0YW50KTsKLSAgICAg
ICAgICAgIGFkZFByb3BlcnR5V2l0aEltcGxpY2l0RGVmYXVsdChDU1NQcm9wZXJ0eUJvcmRlcklt
YWdlT3V0c2V0LCBDU1NQcm9wZXJ0eUJvcmRlckltYWdlLCBXVEZNb3ZlKG91dHNldCksIHZhbHVl
UG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQpOwotICAgICAgICAg
ICAgYWRkUHJvcGVydHlXaXRoSW1wbGljaXREZWZhdWx0KENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VS
ZXBlYXQsIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2UsIFdURk1vdmUocmVwZWF0KSwgdmFsdWVQb29s
LmNyZWF0ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCksIGltcG9ydGFudCk7CisgICAgICAgIGNhc2Ug
Q1NTUHJvcGVydHlXZWJraXRCb3JkZXJJbWFnZToKKyAgICAgICAgICAgIGFkZFByb3BlcnR5V2l0
aEltcGxpY2l0RGVmYXVsdChDU1NQcm9wZXJ0eUJvcmRlckltYWdlU291cmNlLCBwcm9wZXJ0eSwg
V1RGTW92ZShzb3VyY2UpLCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFsdWUoKSwg
aW1wb3J0YW50KTsKKyAgICAgICAgICAgIGFkZFByb3BlcnR5V2l0aEltcGxpY2l0RGVmYXVsdChD
U1NQcm9wZXJ0eUJvcmRlckltYWdlU2xpY2UsIHByb3BlcnR5LCBXVEZNb3ZlKHNsaWNlKSwgdmFs
dWVQb29sLmNyZWF0ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCksIGltcG9ydGFudCk7CisgICAgICAg
ICAgICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNpdERlZmF1bHQoQ1NTUHJvcGVydHlCb3JkZXJJbWFn
ZVdpZHRoLCBwcm9wZXJ0eSwgV1RGTW92ZSh3aWR0aCksIHZhbHVlUG9vbC5jcmVhdGVJbXBsaWNp
dEluaXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQpOworICAgICAgICAgICAgYWRkUHJvcGVydHlXaXRo
SW1wbGljaXREZWZhdWx0KENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VPdXRzZXQsIHByb3BlcnR5LCBX
VEZNb3ZlKG91dHNldCksIHZhbHVlUG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgpLCBp
bXBvcnRhbnQpOworICAgICAgICAgICAgYWRkUHJvcGVydHlXaXRoSW1wbGljaXREZWZhdWx0KENT
U1Byb3BlcnR5Qm9yZGVySW1hZ2VSZXBlYXQsIHByb3BlcnR5LCBXVEZNb3ZlKHJlcGVhdCksIHZh
bHVlUG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQpOwogICAgICAg
ICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICBBU1NFUlRf
Tk9UX1JFQUNIRUQoKTsKQEAgLTY0NDIsNiArNjQ0Niw3IEBAIGJvb2wgQ1NTUHJvcGVydHlQYXJz
ZXI6OnBhcnNlU2hvcnRoYW5kKENTU1Byb3BlcnR5SUQgcHJvcGVydHksIGJvb2wgaW1wb3J0YW50
KQogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9CiAgICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRl
ckltYWdlOgorICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJJbWFnZToKICAgICAgICAg
cmV0dXJuIGNvbnN1bWVCb3JkZXJJbWFnZShwcm9wZXJ0eSwgaW1wb3J0YW50KTsKICAgICBjYXNl
IENTU1Byb3BlcnR5UGFnZUJyZWFrQWZ0ZXI6CiAgICAgY2FzZSBDU1NQcm9wZXJ0eVBhZ2VCcmVh
a0JlZm9yZToKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUcmVl
QXNUZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUcmVlQXNUZXh0LmNw
cAppbmRleCAyNmNkMzJhNTRkNjcyZWQ2MDMwNTgxYjkyNmNkNGU2ZjQwY2YzMTY0Li42YTY0Yjgy
ZGViYTQ2OGYzYTdkNzRjYTRmYTI4OWJjNTI5YTM3NjE5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyVHJlZUFzVGV4dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlclRyZWVBc1RleHQuY3BwCkBAIC0zNTcsNyArMzU3LDcgQEAgdm9pZCBS
ZW5kZXJUcmVlQXNUZXh0Ojp3cml0ZVJlbmRlck9iamVjdChUZXh0U3RyZWFtJiB0cywgY29uc3Qg
UmVuZGVyT2JqZWN0JiBvLAogICAgICAgICAgICAgICAgIHRzIDw8IHNlcmlhbGl6YXRpb25Gb3JS
ZW5kZXJUcmVlQXNUZXh0KGNvbG9yKSA8PCAiKSI7CiAgICAgICAgICAgICB9CiAKLSAgICAgICAg
ICAgIGlmIChvLnN0eWxlKCkuYm9yZGVyUmlnaHQoKSAhPSBwcmV2Qm9yZGVyKSB7CisgICAgICAg
ICAgICBpZiAoby5zdHlsZSgpLmJvcmRlclJpZ2h0KCkgIT0gcHJldkJvcmRlciB8fCBib3JkZXJS
aWdodCAhPSBib3JkZXJUb3ApIHsKICAgICAgICAgICAgICAgICBwcmV2Qm9yZGVyID0gby5zdHls
ZSgpLmJvcmRlclJpZ2h0KCk7CiAgICAgICAgICAgICAgICAgaWYgKCFib3JkZXJSaWdodCkKICAg
ICAgICAgICAgICAgICAgICAgdHMgPDwgIiBub25lIjsKQEAgLTM3MSw3ICszNzEsNyBAQCB2b2lk
IFJlbmRlclRyZWVBc1RleHQ6OndyaXRlUmVuZGVyT2JqZWN0KFRleHRTdHJlYW0mIHRzLCBjb25z
dCBSZW5kZXJPYmplY3QmIG8sCiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgfQogCi0g
ICAgICAgICAgICBpZiAoby5zdHlsZSgpLmJvcmRlckJvdHRvbSgpICE9IHByZXZCb3JkZXIpIHsK
KyAgICAgICAgICAgIGlmIChvLnN0eWxlKCkuYm9yZGVyQm90dG9tKCkgIT0gcHJldkJvcmRlciB8
fCBib3JkZXJCb3R0b20gIT0gYm9yZGVyUmlnaHQpIHsKICAgICAgICAgICAgICAgICBwcmV2Qm9y
ZGVyID0gYm94LnN0eWxlKCkuYm9yZGVyQm90dG9tKCk7CiAgICAgICAgICAgICAgICAgaWYgKCFi
b3JkZXJCb3R0b20pCiAgICAgICAgICAgICAgICAgICAgIHRzIDw8ICIgbm9uZSI7CkBAIC0zODUs
NyArMzg1LDcgQEAgdm9pZCBSZW5kZXJUcmVlQXNUZXh0Ojp3cml0ZVJlbmRlck9iamVjdChUZXh0
U3RyZWFtJiB0cywgY29uc3QgUmVuZGVyT2JqZWN0JiBvLAogICAgICAgICAgICAgICAgIH0KICAg
ICAgICAgICAgIH0KIAotICAgICAgICAgICAgaWYgKG8uc3R5bGUoKS5ib3JkZXJMZWZ0KCkgIT0g
cHJldkJvcmRlcikgeworICAgICAgICAgICAgaWYgKG8uc3R5bGUoKS5ib3JkZXJMZWZ0KCkgIT0g
cHJldkJvcmRlciB8fCBib3JkZXJMZWZ0ICE9IGJvcmRlckJvdHRvbSkgewogICAgICAgICAgICAg
ICAgIHByZXZCb3JkZXIgPSBvLnN0eWxlKCkuYm9yZGVyTGVmdCgpOwogICAgICAgICAgICAgICAg
IGlmICghYm9yZGVyTGVmdCkKICAgICAgICAgICAgICAgICAgICAgdHMgPDwgIiBub25lIjsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9Cb3JkZXJEYXRhLmggYi9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvQm9yZGVyRGF0YS5oCmluZGV4IGU0Mzk4M2Uy
MmJhM2UyYzIxNDFiMTZjMDgxNGJkYWJjODM5YzgyYTQuLjU2OGY1OThkZTgwMjhhOTE4ODJhZGFj
MjRjMWRlZjQ5YmI0YTRjNDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9z
dHlsZS9Cb3JkZXJEYXRhLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL0Jv
cmRlckRhdGEuaApAQCAtNjksNyArNjksOSBAQCBwdWJsaWM6CiAgICAgZmxvYXQgYm9yZGVyTGVm
dFdpZHRoKCkgY29uc3QKICAgICB7CiAgICAgICAgIGlmIChtX2xlZnQuc3R5bGUoKSA9PSBCb3Jk
ZXJTdHlsZTo6Tm9uZSB8fCBtX2xlZnQuc3R5bGUoKSA9PSBCb3JkZXJTdHlsZTo6SGlkZGVuKQot
ICAgICAgICAgICAgcmV0dXJuIDA7IAorICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIGlm
IChtX2ltYWdlLm92ZXJyaWRlc0JvcmRlcldpZHRocygpICYmIG1faW1hZ2UuYm9yZGVyU2xpY2Vz
KCkubGVmdCgpLmlzRml4ZWQoKSkKKyAgICAgICAgICAgIHJldHVybiBtX2ltYWdlLmJvcmRlclNs
aWNlcygpLmxlZnQoKS52YWx1ZSgpOwogICAgICAgICByZXR1cm4gbV9sZWZ0LndpZHRoKCk7CiAg
ICAgfQogCkBAIC03Nyw2ICs3OSw4IEBAIHB1YmxpYzoKICAgICB7CiAgICAgICAgIGlmIChtX3Jp
Z2h0LnN0eWxlKCkgPT0gQm9yZGVyU3R5bGU6Ok5vbmUgfHwgbV9yaWdodC5zdHlsZSgpID09IEJv
cmRlclN0eWxlOjpIaWRkZW4pCiAgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgaWYgKG1f
aW1hZ2Uub3ZlcnJpZGVzQm9yZGVyV2lkdGhzKCkgJiYgbV9pbWFnZS5ib3JkZXJTbGljZXMoKS5y
aWdodCgpLmlzRml4ZWQoKSkKKyAgICAgICAgICAgIHJldHVybiBtX2ltYWdlLmJvcmRlclNsaWNl
cygpLnJpZ2h0KCkudmFsdWUoKTsKICAgICAgICAgcmV0dXJuIG1fcmlnaHQud2lkdGgoKTsKICAg
ICB9CiAKQEAgLTg0LDYgKzg4LDggQEAgcHVibGljOgogICAgIHsKICAgICAgICAgaWYgKG1fdG9w
LnN0eWxlKCkgPT0gQm9yZGVyU3R5bGU6Ok5vbmUgfHwgbV90b3Auc3R5bGUoKSA9PSBCb3JkZXJT
dHlsZTo6SGlkZGVuKQogICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIGlmIChtX2ltYWdl
Lm92ZXJyaWRlc0JvcmRlcldpZHRocygpICYmIG1faW1hZ2UuYm9yZGVyU2xpY2VzKCkudG9wKCku
aXNGaXhlZCgpKQorICAgICAgICAgICAgcmV0dXJuIG1faW1hZ2UuYm9yZGVyU2xpY2VzKCkudG9w
KCkudmFsdWUoKTsKICAgICAgICAgcmV0dXJuIG1fdG9wLndpZHRoKCk7CiAgICAgfQogCkBAIC05
MSw2ICs5Nyw4IEBAIHB1YmxpYzoKICAgICB7CiAgICAgICAgIGlmIChtX2JvdHRvbS5zdHlsZSgp
ID09IEJvcmRlclN0eWxlOjpOb25lIHx8IG1fYm90dG9tLnN0eWxlKCkgPT0gQm9yZGVyU3R5bGU6
OkhpZGRlbikKICAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICBpZiAobV9pbWFnZS5vdmVy
cmlkZXNCb3JkZXJXaWR0aHMoKSAmJiBtX2ltYWdlLmJvcmRlclNsaWNlcygpLmJvdHRvbSgpLmlz
Rml4ZWQoKSkKKyAgICAgICAgICAgIHJldHVybiBtX2ltYWdlLmJvcmRlclNsaWNlcygpLmJvdHRv
bSgpLnZhbHVlKCk7CiAgICAgICAgIHJldHVybiBtX2JvdHRvbS53aWR0aCgpOwogICAgIH0KIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL05pbmVQaWVjZUltYWdl
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9OaW5lUGllY2VJbWFnZS5jcHAK
aW5kZXggYTMyYzRkMDA0OGRiOTVlNDI4YzhkNWQ2MDg4ZjQ1OGE2NTZlZjk3Mi4uMjdkMjY0YWRh
MmRhOWVhMmE1NTQ4YzljOWI3ODY0NWE2NzZmMTA2OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL3N0eWxlL05pbmVQaWVjZUltYWdlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvc3R5bGUvTmluZVBpZWNlSW1hZ2UuY3BwCkBAIC01NSw4ICs1NSw4IEBAIE5p
bmVQaWVjZUltYWdlOjpOaW5lUGllY2VJbWFnZShUeXBlIGltYWdlVHlwZSkKIHsKIH0KIAotTmlu
ZVBpZWNlSW1hZ2U6Ok5pbmVQaWVjZUltYWdlKFJlZlB0cjxTdHlsZUltYWdlPiYmIGltYWdlLCBM
ZW5ndGhCb3ggaW1hZ2VTbGljZXMsIGJvb2wgZmlsbCwgTGVuZ3RoQm94IGJvcmRlclNsaWNlcywg
TGVuZ3RoQm94IG91dHNldCwgTmluZVBpZWNlSW1hZ2VSdWxlIGhvcml6b250YWxSdWxlLCBOaW5l
UGllY2VJbWFnZVJ1bGUgdmVydGljYWxSdWxlKQotICAgIDogbV9kYXRhKERhdGE6OmNyZWF0ZShX
VEZNb3ZlKGltYWdlKSwgaW1hZ2VTbGljZXMsIGZpbGwsIGJvcmRlclNsaWNlcywgb3V0c2V0LCBo
b3Jpem9udGFsUnVsZSwgdmVydGljYWxSdWxlKSkKK05pbmVQaWVjZUltYWdlOjpOaW5lUGllY2VJ
bWFnZShSZWZQdHI8U3R5bGVJbWFnZT4mJiBpbWFnZSwgTGVuZ3RoQm94IGltYWdlU2xpY2VzLCBi
b29sIGZpbGwsIExlbmd0aEJveCBib3JkZXJTbGljZXMsIGJvb2wgb3ZlcnJpZGVzQm9yZGVyV2lk
dGhzLCBMZW5ndGhCb3ggb3V0c2V0LCBOaW5lUGllY2VJbWFnZVJ1bGUgaG9yaXpvbnRhbFJ1bGUs
IE5pbmVQaWVjZUltYWdlUnVsZSB2ZXJ0aWNhbFJ1bGUpCisgICAgOiBtX2RhdGEoRGF0YTo6Y3Jl
YXRlKFdURk1vdmUoaW1hZ2UpLCBpbWFnZVNsaWNlcywgZmlsbCwgYm9yZGVyU2xpY2VzLCBvdmVy
cmlkZXNCb3JkZXJXaWR0aHMsIG91dHNldCwgaG9yaXpvbnRhbFJ1bGUsIHZlcnRpY2FsUnVsZSkp
CiB7CiB9CiAKQEAgLTIzNSw4ICsyMzUsOSBAQCB2b2lkIE5pbmVQaWVjZUltYWdlOjpwYWludChH
cmFwaGljc0NvbnRleHQmIGdyYXBoaWNzQ29udGV4dCwgUmVuZGVyRWxlbWVudCogcmVuZAogCiBp
bmxpbmUgTmluZVBpZWNlSW1hZ2U6OkRhdGE6OkRhdGEoKSA9IGRlZmF1bHQ7CiAKLWlubGluZSBO
aW5lUGllY2VJbWFnZTo6RGF0YTo6RGF0YShSZWZQdHI8U3R5bGVJbWFnZT4mJiBpbWFnZSwgTGVu
Z3RoQm94IGltYWdlU2xpY2VzLCBib29sIGZpbGwsIExlbmd0aEJveCBib3JkZXJTbGljZXMsIExl
bmd0aEJveCBvdXRzZXQsIE5pbmVQaWVjZUltYWdlUnVsZSBob3Jpem9udGFsUnVsZSwgTmluZVBp
ZWNlSW1hZ2VSdWxlIHZlcnRpY2FsUnVsZSkKK2lubGluZSBOaW5lUGllY2VJbWFnZTo6RGF0YTo6
RGF0YShSZWZQdHI8U3R5bGVJbWFnZT4mJiBpbWFnZSwgTGVuZ3RoQm94IGltYWdlU2xpY2VzLCBi
b29sIGZpbGwsIExlbmd0aEJveCBib3JkZXJTbGljZXMsIGJvb2wgb3ZlcnJpZGVzQm9yZGVyV2lk
dGhzLCBMZW5ndGhCb3ggb3V0c2V0LCBOaW5lUGllY2VJbWFnZVJ1bGUgaG9yaXpvbnRhbFJ1bGUs
IE5pbmVQaWVjZUltYWdlUnVsZSB2ZXJ0aWNhbFJ1bGUpCiAgICAgOiBmaWxsKGZpbGwpCisgICAg
LCBvdmVycmlkZXNCb3JkZXJXaWR0aHMob3ZlcnJpZGVzQm9yZGVyV2lkdGhzKQogICAgICwgaG9y
aXpvbnRhbFJ1bGUoaG9yaXpvbnRhbFJ1bGUpCiAgICAgLCB2ZXJ0aWNhbFJ1bGUodmVydGljYWxS
dWxlKQogICAgICwgaW1hZ2UoV1RGTW92ZShpbWFnZSkpCkBAIC0yNDksNiArMjUwLDcgQEAgaW5s
aW5lIE5pbmVQaWVjZUltYWdlOjpEYXRhOjpEYXRhKFJlZlB0cjxTdHlsZUltYWdlPiYmIGltYWdl
LCBMZW5ndGhCb3ggaW1hZ2VTbGkKIGlubGluZSBOaW5lUGllY2VJbWFnZTo6RGF0YTo6RGF0YShj
b25zdCBEYXRhJiBvdGhlcikKICAgICA6IFJlZkNvdW50ZWQ8RGF0YT4oKQogICAgICwgZmlsbChv
dGhlci5maWxsKQorICAgICwgb3ZlcnJpZGVzQm9yZGVyV2lkdGhzKG90aGVyLm92ZXJyaWRlc0Jv
cmRlcldpZHRocykKICAgICAsIGhvcml6b250YWxSdWxlKG90aGVyLmhvcml6b250YWxSdWxlKQog
ICAgICwgdmVydGljYWxSdWxlKG90aGVyLnZlcnRpY2FsUnVsZSkKICAgICAsIGltYWdlKG90aGVy
LmltYWdlKQpAQCAtMjYzLDkgKzI2NSw5IEBAIGlubGluZSBSZWY8TmluZVBpZWNlSW1hZ2U6OkRh
dGE+IE5pbmVQaWVjZUltYWdlOjpEYXRhOjpjcmVhdGUoKQogICAgIHJldHVybiBhZG9wdFJlZigq
bmV3IERhdGEpOwogfQogCi1pbmxpbmUgUmVmPE5pbmVQaWVjZUltYWdlOjpEYXRhPiBOaW5lUGll
Y2VJbWFnZTo6RGF0YTo6Y3JlYXRlKFJlZlB0cjxTdHlsZUltYWdlPiYmIGltYWdlLCBMZW5ndGhC
b3ggaW1hZ2VTbGljZXMsIGJvb2wgZmlsbCwgTGVuZ3RoQm94IGJvcmRlclNsaWNlcywgTGVuZ3Ro
Qm94IG91dHNldCwgTmluZVBpZWNlSW1hZ2VSdWxlIGhvcml6b250YWxSdWxlLCBOaW5lUGllY2VJ
bWFnZVJ1bGUgdmVydGljYWxSdWxlKQoraW5saW5lIFJlZjxOaW5lUGllY2VJbWFnZTo6RGF0YT4g
TmluZVBpZWNlSW1hZ2U6OkRhdGE6OmNyZWF0ZShSZWZQdHI8U3R5bGVJbWFnZT4mJiBpbWFnZSwg
TGVuZ3RoQm94IGltYWdlU2xpY2VzLCBib29sIGZpbGwsIExlbmd0aEJveCBib3JkZXJTbGljZXMs
IGJvb2wgb3ZlcnJpZGVzQm9yZGVyV2lkdGhzLCBMZW5ndGhCb3ggb3V0c2V0LCBOaW5lUGllY2VJ
bWFnZVJ1bGUgaG9yaXpvbnRhbFJ1bGUsIE5pbmVQaWVjZUltYWdlUnVsZSB2ZXJ0aWNhbFJ1bGUp
CiB7Ci0gICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRGF0YShXVEZNb3ZlKGltYWdlKSwgaW1hZ2VT
bGljZXMsIGZpbGwsIGJvcmRlclNsaWNlcywgb3V0c2V0LCBob3Jpem9udGFsUnVsZSwgdmVydGlj
YWxSdWxlKSk7CisgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRGF0YShXVEZNb3ZlKGltYWdlKSwg
aW1hZ2VTbGljZXMsIGZpbGwsIGJvcmRlclNsaWNlcywgb3ZlcnJpZGVzQm9yZGVyV2lkdGhzLCBv
dXRzZXQsIGhvcml6b250YWxSdWxlLCB2ZXJ0aWNhbFJ1bGUpKTsKIH0KIAogUmVmPE5pbmVQaWVj
ZUltYWdlOjpEYXRhPiBOaW5lUGllY2VJbWFnZTo6RGF0YTo6Y29weSgpIGNvbnN0CkBAIC0yNzks
NiArMjgxLDcgQEAgYm9vbCBOaW5lUGllY2VJbWFnZTo6RGF0YTo6b3BlcmF0b3I9PShjb25zdCBE
YXRhJiBvdGhlcikgY29uc3QKICAgICAgICAgJiYgaW1hZ2VTbGljZXMgPT0gb3RoZXIuaW1hZ2VT
bGljZXMKICAgICAgICAgJiYgZmlsbCA9PSBvdGhlci5maWxsCiAgICAgICAgICYmIGJvcmRlclNs
aWNlcyA9PSBvdGhlci5ib3JkZXJTbGljZXMKKyAgICAgICAgJiYgb3ZlcnJpZGVzQm9yZGVyV2lk
dGhzID09IG90aGVyLm92ZXJyaWRlc0JvcmRlcldpZHRocwogICAgICAgICAmJiBvdXRzZXQgPT0g
b3RoZXIub3V0c2V0CiAgICAgICAgICYmIGhvcml6b250YWxSdWxlID09IG90aGVyLmhvcml6b250
YWxSdWxlCiAgICAgICAgICYmIHZlcnRpY2FsUnVsZSA9PSBvdGhlci52ZXJ0aWNhbFJ1bGU7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvTmluZVBpZWNlSW1hZ2Uu
aCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9OaW5lUGllY2VJbWFnZS5oCmluZGV4
IGMzOWRlYzMzNDQxMmRkOTUwNjBhNWExNmY0MmZmOTQ4MmJlM2JkNGUuLjZhNjdjZTUxYTZmZDI2
N2IwNWMyMGFjMjA1ZTkzYzJkZWQ0NjE3MTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9zdHlsZS9OaW5lUGllY2VJbWFnZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9zdHlsZS9OaW5lUGllY2VJbWFnZS5oCkBAIC0xMTIsNyArMTEyLDcgQEAgcHVibGljOgog
ICAgIH07CiAKICAgICBOaW5lUGllY2VJbWFnZShUeXBlID0gVHlwZTo6Tm9ybWFsKTsKLSAgICBO
aW5lUGllY2VJbWFnZShSZWZQdHI8U3R5bGVJbWFnZT4mJiwgTGVuZ3RoQm94IGltYWdlU2xpY2Vz
LCBib29sIGZpbGwsIExlbmd0aEJveCBib3JkZXJTbGljZXMsIExlbmd0aEJveCBvdXRzZXQsIE5p
bmVQaWVjZUltYWdlUnVsZSBob3Jpem9udGFsUnVsZSwgTmluZVBpZWNlSW1hZ2VSdWxlIHZlcnRp
Y2FsUnVsZSk7CisgICAgTmluZVBpZWNlSW1hZ2UoUmVmUHRyPFN0eWxlSW1hZ2U+JiYsIExlbmd0
aEJveCBpbWFnZVNsaWNlcywgYm9vbCBmaWxsLCBMZW5ndGhCb3ggYm9yZGVyU2xpY2VzLCBib29s
IG92ZXJyaWRlc0JvcmRlcldpZHRocywgTGVuZ3RoQm94IG91dHNldCwgTmluZVBpZWNlSW1hZ2VS
dWxlIGhvcml6b250YWxSdWxlLCBOaW5lUGllY2VJbWFnZVJ1bGUgdmVydGljYWxSdWxlKTsKIAog
ICAgIGJvb2wgb3BlcmF0b3I9PShjb25zdCBOaW5lUGllY2VJbWFnZSYgb3RoZXIpIGNvbnN0IHsg
cmV0dXJuIG1fZGF0YSA9PSBvdGhlci5tX2RhdGE7IH0KICAgICBib29sIG9wZXJhdG9yIT0oY29u
c3QgTmluZVBpZWNlSW1hZ2UmIG90aGVyKSBjb25zdCB7IHJldHVybiBtX2RhdGEgIT0gb3RoZXIu
bV9kYXRhOyB9CkBAIC0xMzAsNiArMTMwLDkgQEAgcHVibGljOgogICAgIGNvbnN0IExlbmd0aEJv
eCYgYm9yZGVyU2xpY2VzKCkgY29uc3QgeyByZXR1cm4gbV9kYXRhLT5ib3JkZXJTbGljZXM7IH0K
ICAgICB2b2lkIHNldEJvcmRlclNsaWNlcyhMZW5ndGhCb3ggc2xpY2VzKSB7IG1fZGF0YS5hY2Nl
c3MoKS5ib3JkZXJTbGljZXMgPSBXVEZNb3ZlKHNsaWNlcyk7IH0KIAorICAgIGJvb2wgb3ZlcnJp
ZGVzQm9yZGVyV2lkdGhzKCkgY29uc3QgeyByZXR1cm4gbV9kYXRhLT5vdmVycmlkZXNCb3JkZXJX
aWR0aHM7IH0KKyAgICB2b2lkIHNldE92ZXJyaWRlc0JvcmRlcldpZHRocyhib29sIHYpIHsgbV9k
YXRhLmFjY2VzcygpLm92ZXJyaWRlc0JvcmRlcldpZHRocyA9IHY7IH0KKwogICAgIGNvbnN0IExl
bmd0aEJveCYgb3V0c2V0KCkgY29uc3QgeyByZXR1cm4gbV9kYXRhLT5vdXRzZXQ7IH0KICAgICB2
b2lkIHNldE91dHNldChMZW5ndGhCb3ggb3V0c2V0KSB7IG1fZGF0YS5hY2Nlc3MoKS5vdXRzZXQg
PSBXVEZNb3ZlKG91dHNldCk7IH0KIApAQCAtMTQ4LDYgKzE1MSw3IEBAIHB1YmxpYzoKICAgICB2
b2lkIGNvcHlCb3JkZXJTbGljZXNGcm9tKGNvbnN0IE5pbmVQaWVjZUltYWdlJiBvdGhlcikKICAg
ICB7CiAgICAgICAgIG1fZGF0YS5hY2Nlc3MoKS5ib3JkZXJTbGljZXMgPSBvdGhlci5tX2RhdGEt
PmJvcmRlclNsaWNlczsKKyAgICAgICAgbV9kYXRhLmFjY2VzcygpLm92ZXJyaWRlc0JvcmRlcldp
ZHRocyA9IG90aGVyLm1fZGF0YS0+b3ZlcnJpZGVzQm9yZGVyV2lkdGhzOwogICAgIH0KICAgICAK
ICAgICB2b2lkIGNvcHlPdXRzZXRGcm9tKGNvbnN0IE5pbmVQaWVjZUltYWdlJiBvdGhlcikKQEAg
LTE4OCwxMyArMTkyLDE0IEBAIHB1YmxpYzoKIHByaXZhdGU6CiAgICAgc3RydWN0IERhdGEgOiBS
ZWZDb3VudGVkPERhdGE+IHsKICAgICAgICAgc3RhdGljIFJlZjxEYXRhPiBjcmVhdGUoKTsKLSAg
ICAgICAgc3RhdGljIFJlZjxEYXRhPiBjcmVhdGUoUmVmUHRyPFN0eWxlSW1hZ2U+JiYsIExlbmd0
aEJveCBpbWFnZVNsaWNlcywgYm9vbCBmaWxsLCBMZW5ndGhCb3ggYm9yZGVyU2xpY2VzLCBMZW5n
dGhCb3ggb3V0c2V0LCBOaW5lUGllY2VJbWFnZVJ1bGUgaG9yaXpvbnRhbFJ1bGUsIE5pbmVQaWVj
ZUltYWdlUnVsZSB2ZXJ0aWNhbFJ1bGUpOworICAgICAgICBzdGF0aWMgUmVmPERhdGE+IGNyZWF0
ZShSZWZQdHI8U3R5bGVJbWFnZT4mJiwgTGVuZ3RoQm94IGltYWdlU2xpY2VzLCBib29sIGZpbGws
IExlbmd0aEJveCBib3JkZXJTbGljZXMsIGJvb2wgb3ZlcnJpZGVzQm9yZGVyV2lkdGhzLCBMZW5n
dGhCb3ggb3V0c2V0LCBOaW5lUGllY2VJbWFnZVJ1bGUgaG9yaXpvbnRhbFJ1bGUsIE5pbmVQaWVj
ZUltYWdlUnVsZSB2ZXJ0aWNhbFJ1bGUpOwogICAgICAgICBSZWY8RGF0YT4gY29weSgpIGNvbnN0
OwogCiAgICAgICAgIGJvb2wgb3BlcmF0b3I9PShjb25zdCBEYXRhJikgY29uc3Q7CiAgICAgICAg
IGJvb2wgb3BlcmF0b3IhPShjb25zdCBEYXRhJiBvdGhlcikgY29uc3QgeyByZXR1cm4gISgqdGhp
cyA9PSBvdGhlcik7IH0KIAogICAgICAgICBib29sIGZpbGwgeyBmYWxzZSB9OworICAgICAgICBi
b29sIG92ZXJyaWRlc0JvcmRlcldpZHRocyB7IGZhbHNlIH07CiAgICAgICAgIE5pbmVQaWVjZUlt
YWdlUnVsZSBob3Jpem9udGFsUnVsZSB7IE5pbmVQaWVjZUltYWdlUnVsZTo6U3RyZXRjaCB9Owog
ICAgICAgICBOaW5lUGllY2VJbWFnZVJ1bGUgdmVydGljYWxSdWxlIHsgTmluZVBpZWNlSW1hZ2VS
dWxlOjpTdHJldGNoIH07CiAgICAgICAgIFJlZlB0cjxTdHlsZUltYWdlPiBpbWFnZTsKQEAgLTIw
NCw3ICsyMDksNyBAQCBwcml2YXRlOgogCiAgICAgcHJpdmF0ZToKICAgICAgICAgRGF0YSgpOwot
ICAgICAgICBEYXRhKFJlZlB0cjxTdHlsZUltYWdlPiYmLCBMZW5ndGhCb3ggaW1hZ2VTbGljZXMs
IGJvb2wgZmlsbCwgTGVuZ3RoQm94IGJvcmRlclNsaWNlcywgTGVuZ3RoQm94IG91dHNldCwgTmlu
ZVBpZWNlSW1hZ2VSdWxlIGhvcml6b250YWxSdWxlLCBOaW5lUGllY2VJbWFnZVJ1bGUgdmVydGlj
YWxSdWxlKTsKKyAgICAgICAgRGF0YShSZWZQdHI8U3R5bGVJbWFnZT4mJiwgTGVuZ3RoQm94IGlt
YWdlU2xpY2VzLCBib29sIGZpbGwsIExlbmd0aEJveCBib3JkZXJTbGljZXMsIGJvb2wgb3ZlcnJp
ZGVzQm9yZGVyV2lkdGhzLCBMZW5ndGhCb3ggb3V0c2V0LCBOaW5lUGllY2VJbWFnZVJ1bGUgaG9y
aXpvbnRhbFJ1bGUsIE5pbmVQaWVjZUltYWdlUnVsZSB2ZXJ0aWNhbFJ1bGUpOwogICAgICAgICBE
YXRhKGNvbnN0IERhdGEmKTsKICAgICB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L3N0eWxlL1JlbmRlclN0eWxlLmNwcAppbmRleCA3Nzk3MGY2ZTc1OTc3NjIwNzRlMTlmNmY4MTk5
NmM3ZWZhODE5NTY0Li5kYzg4MWU2M2I4NTE0MDM0YjNmZDRlNjgzMDg1OGRiY2E5OGYxNzBmIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5jcHAKQEAg
LTI0OTksNiArMjQ5OSwxMyBAQCB2b2lkIFJlbmRlclN0eWxlOjpzZXRCb3JkZXJJbWFnZVdpZHRo
KExlbmd0aEJveCYmIHNsaWNlcykKICAgICBtX3N1cnJvdW5kRGF0YS5hY2Nlc3MoKS5ib3JkZXIu
bV9pbWFnZS5zZXRCb3JkZXJTbGljZXMoV1RGTW92ZShzbGljZXMpKTsKIH0KIAordm9pZCBSZW5k
ZXJTdHlsZTo6c2V0Qm9yZGVySW1hZ2VXaWR0aE92ZXJyaWRlc0JvcmRlcldpZHRocyhib29sIG92
ZXJyaWRlc0JvcmRlcldpZHRocykKK3sKKyAgICBpZiAobV9zdXJyb3VuZERhdGEtPmJvcmRlci5t
X2ltYWdlLm92ZXJyaWRlc0JvcmRlcldpZHRocygpID09IG92ZXJyaWRlc0JvcmRlcldpZHRocykK
KyAgICAgICAgcmV0dXJuOworICAgIG1fc3Vycm91bmREYXRhLmFjY2VzcygpLmJvcmRlci5tX2lt
YWdlLnNldE92ZXJyaWRlc0JvcmRlcldpZHRocyhvdmVycmlkZXNCb3JkZXJXaWR0aHMpOworfQor
CiB2b2lkIFJlbmRlclN0eWxlOjpzZXRCb3JkZXJJbWFnZU91dHNldChMZW5ndGhCb3gmJiBvdXRz
ZXQpCiB7CiAgICAgaWYgKG1fc3Vycm91bmREYXRhLT5ib3JkZXIubV9pbWFnZS5vdXRzZXQoKSA9
PSBvdXRzZXQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVu
ZGVyU3R5bGUuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5o
CmluZGV4IGU0YTg2ODhjOTdlOWQ3ODA5ZmIwNmNmYmFiNDU0NTAzODEzNDEyMTMuLmZkMzVhN2Nl
ZTgwMGI3MWVmNDhmYTc1NjA0NjY0NjJjYzE4M2EyY2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oCkBAIC05MzQsNiArOTM0LDcgQEAgcHVibGljOgog
ICAgIHZvaWQgc2V0Qm9yZGVySW1hZ2VTbGljZUZpbGwoYm9vbCk7CiAgICAgdm9pZCBzZXRCb3Jk
ZXJJbWFnZVNsaWNlcyhMZW5ndGhCb3gmJik7CiAgICAgdm9pZCBzZXRCb3JkZXJJbWFnZVdpZHRo
KExlbmd0aEJveCYmKTsKKyAgICB2b2lkIHNldEJvcmRlckltYWdlV2lkdGhPdmVycmlkZXNCb3Jk
ZXJXaWR0aHMoYm9vbCk7CiAgICAgdm9pZCBzZXRCb3JkZXJJbWFnZU91dHNldChMZW5ndGhCb3gm
Jik7CiAgICAgdm9pZCBzZXRCb3JkZXJJbWFnZUhvcml6b250YWxSdWxlKE5pbmVQaWVjZUltYWdl
UnVsZSk7CiAgICAgdm9pZCBzZXRCb3JkZXJJbWFnZVZlcnRpY2FsUnVsZShOaW5lUGllY2VJbWFn
ZVJ1bGUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3R5bGUvUHJvcGVydHlDYXNjYWRl
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1Byb3BlcnR5Q2FzY2FkZS5jcHAKaW5kZXggOTBm
ZWQ2MTdhZjc1NmU3NzM4YmM5YjUzNWRkZGExMjhlZTBjMDEyZi4uMWVlOTRiM2UyMjhhZTBjMDVl
Y2I3Njc4ZDM3ODExNTBkODE0NGJjNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3R5bGUv
UHJvcGVydHlDYXNjYWRlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9Qcm9wZXJ0eUNh
c2NhZGUuY3BwCkBAIC00NywxMyArNDcsNiBAQCBzdGF0aWMgaW5saW5lIGJvb2wgc2hvdWxkQXBw
bHlQcm9wZXJ0eUluUGFyc2VPcmRlcihDU1NQcm9wZXJ0eUlEIHByb3BlcnR5SUQpCiAgICAgY2Fz
ZSBDU1NQcm9wZXJ0eUJhY2tncm91bmRPcmlnaW46CiAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtp
dEJhY2tncm91bmRTaXplOgogICAgIGNhc2UgQ1NTUHJvcGVydHlCYWNrZ3JvdW5kU2l6ZToKLSAg
ICBjYXNlIENTU1Byb3BlcnR5V2Via2l0Qm9yZGVySW1hZ2U6Ci0gICAgY2FzZSBDU1NQcm9wZXJ0
eUJvcmRlckltYWdlOgotICAgIGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJJbWFnZVNsaWNlOgotICAg
IGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJJbWFnZVNvdXJjZToKLSAgICBjYXNlIENTU1Byb3BlcnR5
Qm9yZGVySW1hZ2VPdXRzZXQ6Ci0gICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlckltYWdlUmVwZWF0
OgotICAgIGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJJbWFnZVdpZHRoOgogICAgIGNhc2UgQ1NTUHJv
cGVydHlXZWJraXRCb3hTaGFkb3c6CiAgICAgY2FzZSBDU1NQcm9wZXJ0eUJveFNoYWRvdzoKICAg
ICAgICAgcmV0dXJuIHRydWU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHls
ZUJ1aWxkZXJDb252ZXJ0ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlQnVpbGRlckNv
bnZlcnRlci5oCmluZGV4IGFjYmJmNWY5YTdlMWM3MmQ5Y2NhYjg1MDIzZDdlZmQ0ZDIxN2IyYTIu
LjM0YWEzODVhZTA0OTcxYjMyMDA2ZTEwNjI0YjZkZDY0NGUzMDNkYjggMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlQnVpbGRlckNvbnZlcnRlci5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3N0eWxlL1N0eWxlQnVpbGRlckNvbnZlcnRlci5oCkBAIC04NSw3ICs4NSw2IEBAIHB1
YmxpYzoKICAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBUPiBzdGF0aWMgVCBjb252ZXJ0TnVtYmVyKEJ1
aWxkZXJTdGF0ZSYsIGNvbnN0IENTU1ZhbHVlJik7CiAgICAgdGVtcGxhdGU8dHlwZW5hbWUgVD4g
c3RhdGljIFQgY29udmVydE51bWJlck9yQXV0byhCdWlsZGVyU3RhdGUmLCBjb25zdCBDU1NWYWx1
ZSYpOwogICAgIHN0YXRpYyBzaG9ydCBjb252ZXJ0V2Via2l0SHlwaGVuYXRlTGltaXRMaW5lcyhC
dWlsZGVyU3RhdGUmLCBjb25zdCBDU1NWYWx1ZSYpOwotICAgIHRlbXBsYXRlPENTU1Byb3BlcnR5
SUQ+IHN0YXRpYyBOaW5lUGllY2VJbWFnZSBjb252ZXJ0Qm9yZGVySW1hZ2UoQnVpbGRlclN0YXRl
JiwgQ1NTVmFsdWUmKTsKICAgICB0ZW1wbGF0ZTxDU1NQcm9wZXJ0eUlEPiBzdGF0aWMgTmluZVBp
ZWNlSW1hZ2UgY29udmVydEJvcmRlck1hc2soQnVpbGRlclN0YXRlJiwgQ1NTVmFsdWUmKTsKICAg
ICB0ZW1wbGF0ZTxDU1NQcm9wZXJ0eUlEPiBzdGF0aWMgUmVmUHRyPFN0eWxlSW1hZ2U+IGNvbnZl
cnRTdHlsZUltYWdlKEJ1aWxkZXJTdGF0ZSYsIENTU1ZhbHVlJik7CiAgICAgc3RhdGljIEltYWdl
T3JpZW50YXRpb24gY29udmVydEltYWdlT3JpZW50YXRpb24oQnVpbGRlclN0YXRlJiwgY29uc3Qg
Q1NTVmFsdWUmKTsKQEAgLTQ2NCwxOSArNDYzLDExIEBAIGlubGluZSBzaG9ydCBCdWlsZGVyQ29u
dmVydGVyOjpjb252ZXJ0V2Via2l0SHlwaGVuYXRlTGltaXRMaW5lcyhCdWlsZGVyU3RhdGUmLCBj
CiAgICAgcmV0dXJuIHByaW1pdGl2ZVZhbHVlLnZhbHVlPHNob3J0PihDU1NVbml0VHlwZTo6Q1NT
X05VTUJFUik7CiB9CiAKLXRlbXBsYXRlPENTU1Byb3BlcnR5SUQgcHJvcGVydHk+Ci1pbmxpbmUg
TmluZVBpZWNlSW1hZ2UgQnVpbGRlckNvbnZlcnRlcjo6Y29udmVydEJvcmRlckltYWdlKEJ1aWxk
ZXJTdGF0ZSYgYnVpbGRlclN0YXRlLCBDU1NWYWx1ZSYgdmFsdWUpCi17Ci0gICAgTmluZVBpZWNl
SW1hZ2UgaW1hZ2U7Ci0gICAgYnVpbGRlclN0YXRlLnN0eWxlTWFwKCkubWFwTmluZVBpZWNlSW1h
Z2UocHJvcGVydHksICZ2YWx1ZSwgaW1hZ2UpOwotICAgIHJldHVybiBpbWFnZTsKLX0KLQogdGVt
cGxhdGU8Q1NTUHJvcGVydHlJRCBwcm9wZXJ0eT4KIGlubGluZSBOaW5lUGllY2VJbWFnZSBCdWls
ZGVyQ29udmVydGVyOjpjb252ZXJ0Qm9yZGVyTWFzayhCdWlsZGVyU3RhdGUmIGJ1aWxkZXJTdGF0
ZSwgQ1NTVmFsdWUmIHZhbHVlKQogewogICAgIE5pbmVQaWVjZUltYWdlIGltYWdlKE5pbmVQaWVj
ZUltYWdlOjpUeXBlOjpNYXNrKTsKLSAgICBidWlsZGVyU3RhdGUuc3R5bGVNYXAoKS5tYXBOaW5l
UGllY2VJbWFnZShwcm9wZXJ0eSwgJnZhbHVlLCBpbWFnZSk7CisgICAgYnVpbGRlclN0YXRlLnN0
eWxlTWFwKCkubWFwTmluZVBpZWNlSW1hZ2UoJnZhbHVlLCBpbWFnZSk7CiAgICAgcmV0dXJuIGlt
YWdlOwogfQogCkBAIC04MDksNyArODAwLDcgQEAgaW5saW5lIFJlZlB0cjxTdHlsZVJlZmxlY3Rp
b24+IEJ1aWxkZXJDb252ZXJ0ZXI6OmNvbnZlcnRSZWZsZWN0aW9uKEJ1aWxkZXJTdGF0ZSYKICAg
ICByZWZsZWN0aW9uLT5zZXRPZmZzZXQocmVmbGVjdFZhbHVlLm9mZnNldCgpLmNvbnZlcnRUb0xl
bmd0aDxGaXhlZEludGVnZXJDb252ZXJzaW9uIHwgUGVyY2VudENvbnZlcnNpb24gfCBDYWxjdWxh
dGVkQ29udmVyc2lvbj4oYnVpbGRlclN0YXRlLmNzc1RvTGVuZ3RoQ29udmVyc2lvbkRhdGEoKSkp
OwogCiAgICAgTmluZVBpZWNlSW1hZ2UgbWFzayhOaW5lUGllY2VJbWFnZTo6VHlwZTo6TWFzayk7
Ci0gICAgYnVpbGRlclN0YXRlLnN0eWxlTWFwKCkubWFwTmluZVBpZWNlSW1hZ2UoQ1NTUHJvcGVy
dHlXZWJraXRCb3hSZWZsZWN0LCByZWZsZWN0VmFsdWUubWFzaygpLCBtYXNrKTsKKyAgICBidWls
ZGVyU3RhdGUuc3R5bGVNYXAoKS5tYXBOaW5lUGllY2VJbWFnZShyZWZsZWN0VmFsdWUubWFzaygp
LCBtYXNrKTsKICAgICByZWZsZWN0aW9uLT5zZXRNYXNrKG1hc2spOwogCiAgICAgcmV0dXJuIHJl
ZmxlY3Rpb247CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZUJ1aWxkZXJD
dXN0b20uaCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlQnVpbGRlckN1c3RvbS5oCmluZGV4
IGU3YWFkZGQwNGJkMjFjYjY2MDczYjMxZjI5MWFkYjc3YjgyYzAxMjUuLmVmYTczOTc5NmZjMzRj
ZTJiZDAwMTY0ZDI3OTgyY2M5OGI5ZTIyOWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0
eWxlL1N0eWxlQnVpbGRlckN1c3RvbS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxl
QnVpbGRlckN1c3RvbS5oCkBAIC01NTIsNiArNTUyLDcgQEAgcHVibGljOgogICAgICAgICAgICAg
TGVuZ3RoQm94IGxlbmd0aEJveChMZW5ndGgoMSwgTGVuZ3RoVHlwZTo6UmVsYXRpdmUpLCBMZW5n
dGgoMSwgTGVuZ3RoVHlwZTo6UmVsYXRpdmUpLCBMZW5ndGgoMSwgTGVuZ3RoVHlwZTo6UmVsYXRp
dmUpLCBMZW5ndGgoMSwgTGVuZ3RoVHlwZTo6UmVsYXRpdmUpKTsKICAgICAgICAgICAgIC8vIE1h
c2tzIGhhdmUgYSBkaWZmZXJlbnQgaW5pdGlhbCB2YWx1ZSBmb3Igd2lkdGhzLiBUaGV5IHVzZSBh
biAnYXV0bycgdmFsdWUgcmF0aGVyIHRoYW4gdHJ5aW5nIHRvIGZpdCB0byB0aGUgYm9yZGVyLgog
ICAgICAgICAgICAgaW1hZ2Uuc2V0Qm9yZGVyU2xpY2VzKHR5cGUgPT0gQm9yZGVySW1hZ2UgPyBs
ZW5ndGhCb3ggOiBMZW5ndGhCb3goKSk7CisgICAgICAgICAgICBpbWFnZS5zZXRPdmVycmlkZXNC
b3JkZXJXaWR0aHMoZmFsc2UpOwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KICAgICAg
ICAgc2V0VmFsdWUoYnVpbGRlclN0YXRlLnN0eWxlKCksIGltYWdlKTsKQEAgLTU3MSw3ICs1NzIs
NyBAQCBwdWJsaWM6CiAgICAgICAgICAgICBidWlsZGVyU3RhdGUuc3R5bGVNYXAoKS5tYXBOaW5l
UGllY2VJbWFnZVNsaWNlKHZhbHVlLCBpbWFnZSk7CiAgICAgICAgICAgICBicmVhazsKICAgICAg
ICAgY2FzZSBXaWR0aDoKLSAgICAgICAgICAgIGltYWdlLnNldEJvcmRlclNsaWNlcyhidWlsZGVy
U3RhdGUuc3R5bGVNYXAoKS5tYXBOaW5lUGllY2VJbWFnZVF1YWQodmFsdWUpKTsKKyAgICAgICAg
ICAgIGJ1aWxkZXJTdGF0ZS5zdHlsZU1hcCgpLm1hcE5pbmVQaWVjZUltYWdlV2lkdGgodmFsdWUs
IGltYWdlKTsKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9CiAgICAgICAgIHNldFZhbHVl
KGJ1aWxkZXJTdGF0ZS5zdHlsZSgpLCBpbWFnZSk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggYTQ4NzdkNjk0NDMxOThjYTgw
NGVkOTFmZjM5NWExNjk0ZjJhMjYzNi4uYjEyNTE3YmIxNGIzOTM0ZWE1NTA4MGQ1ZmJhY2Y0MGFi
Njk2Y2IwMSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRl
c3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMxIEBACisyMDIyLTA0LTAxICBPcmlvbCBCcnVmYXUg
IDxvYnJ1ZmF1QGlnYWxpYS5jb20+CisKKyAgICAgICAgW2Nzc10gVHVybiAtd2Via2l0LWJvcmRl
ci1pbWFnZSBpbnRvIGEgc2hvcnRoYW5kCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMzc0ODcKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBVcGRhdGUgdGVzdHMgdG8gdGFrZSBpbnRvIGFjY291bnQgdGhhdCAn
LXdlYmtpdC1ib3JkZXItaW1hZ2UnIGlzIGEgc2hvcnRoYW5kLgorCisgICAgICAgICogZmFzdC9i
b3JkZXJzL2JvcmRlci1pbWFnZS1sZWdhY3ktZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAg
KiBmYXN0L2JvcmRlcnMvYm9yZGVyLWltYWdlLWxlZ2FjeS5odG1sOiBBZGRlZC4KKyAgICAgICAg
KiBmYXN0L2Nzcy9ib3JkZXItaW1hZ2Utc3R5bGUtbGVuZ3RoLWV4cGVjdGVkLnR4dDoKKyAgICAg
ICAgKiBmYXN0L2Nzcy9ib3JkZXItaW1hZ2Utc3R5bGUtbGVuZ3RoLmh0bWw6CisgICAgICAgICog
ZmFzdC9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS9jb21wdXRlZC1zdHlsZS1leHBlY3RlZC50eHQ6Cisg
ICAgICAgICogZmFzdC9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS9jb21wdXRlZC1zdHlsZS13aXRob3V0
LXJlbmRlcmVyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBmYXN0L2Nzcy9nZXRDb21wdXRlZFN0
eWxlL3Jlc291cmNlcy9wcm9wZXJ0eS1uYW1lcy5qczoKKyAgICAgICAgKiBmYXN0L2Nzcy9pbWFn
ZS1zZXQtcGFyc2luZy1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9jc3MvaW1hZ2Utc2V0
LXBhcnNpbmcuaHRtbDoKKyAgICAgICAgKiBmYXN0L2Nzcy91cmktdG9rZW4tcGFyc2luZy1leHBl
Y3RlZC50eHQ6CisgICAgICAgICogZmFzdC9jc3MvdXJpLXRva2VuLXBhcnNpbmcuaHRtbDoKKyAg
ICAgICAgKiBwbGF0Zm9ybS9ndGsvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mv
Y3NzLWNhc2NhZGUvYWxsLXByb3AtaW5pdGlhbC14bWwtZXhwZWN0ZWQudHh0OgorICAgICAgICAq
IHBsYXRmb3JtL2d0ay9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS9n
ZXRDb21wdXRlZFN0eWxlLWRldGFjaGVkLXN1YnRyZWUtZXhwZWN0ZWQudHh0OgorICAgICAgICAq
IHBsYXRmb3JtL2lvcy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY2Fz
Y2FkZS9hbGwtcHJvcC1pbml0aWFsLXhtbC1leHBlY3RlZC50eHQ6CisgICAgICAgICogcGxhdGZv
cm0vaW9zL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dldENvbXB1
dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS1leHBlY3RlZC50eHQ6CisgICAgICAgICogcGxhdGZv
cm0vd3BlL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jYXNjYWRlL2Fs
bC1wcm9wLWluaXRpYWwteG1sLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBwbGF0Zm9ybS93cGUv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nzb20vZ2V0Q29tcHV0ZWRTdHls
ZS1kZXRhY2hlZC1zdWJ0cmVlLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBzdmcvY3NzL2dldENv
bXB1dGVkU3R5bGUtYmFzaWMtZXhwZWN0ZWQudHh0OgorCiAyMDIyLTAzLTIzICBaaXJhbiBTdW4g
IDx6c3VuQGlnYWxpYS5jb20+CiAKICAgICAgICAgW0lucHV0RWxlbWVudF0gQWRkIEhUTUxJbnB1
dEVsZW1lbnQ6OnNob3dQaWNrZXIoKSBtZXRob2QKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9n
CmluZGV4IGFkOTFmODg5OTUyZmNlZDhkZmJiNjlhOWE1NGJkMzM0MDNmYjU1NWYuLjljN2YwYmIw
ZWU1OWY0YzU3Zjc5NjUwZmRjY2RhZjZkMWM2YWZjMjggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0No
YW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDIyLTA0LTAxICBPcmlvbCBCcnVmYXUgIDxvYnJ1
ZmF1QGlnYWxpYS5jb20+CisKKyAgICAgICAgW2Nzc10gVHVybiAtd2Via2l0LWJvcmRlci1pbWFn
ZSBpbnRvIGEgc2hvcnRoYW5kCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0yMzc0ODcKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBVcGRhdGUgdGVzdHMgdG8gdGFrZSBpbnRvIGFjY291bnQgdGhhdCAnLXdlYmtp
dC1ib3JkZXItaW1hZ2UnIGlzIGEgc2hvcnRoYW5kLgorCisgICAgICAgICogd2ViLXBsYXRmb3Jt
LXRlc3RzL2Nzcy9jc3MtY2FzY2FkZS9hbGwtcHJvcC1pbml0aWFsLXhtbC1leHBlY3RlZC50eHQ6
CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS9nZXRDb21wdXRlZFN0eWxl
LWRldGFjaGVkLXN1YnRyZWUtZXhwZWN0ZWQudHh0OgorCiAyMDIyLTAzLTIzICBaaXJhbiBTdW4g
IDx6c3VuQGlnYWxpYS5jb20+CiAKICAgICAgICAgW0lucHV0RWxlbWVudF0gQWRkIEhUTUxJbnB1
dEVsZW1lbnQ6OnNob3dQaWNrZXIoKSBtZXRob2QKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zh
c3QvYm9yZGVycy9ib3JkZXItaW1hZ2UtbGVnYWN5LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2Zhc3QvYm9yZGVycy9ib3JkZXItaW1hZ2UtbGVnYWN5LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li4yNmVkNjg2YzZiMTU4MjIxYmM3MTMwNDM1ZjhmNDkwMTc1ZDY5MzhmCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvZmFzdC9ib3JkZXJzL2JvcmRlci1pbWFnZS1sZWdhY3ktZXhwZWN0
ZWQudHh0CkBAIC0wLDAgKzEsMTMgQEAKKworUEFTUyBib3JkZXItaW1hZ2U6IHVybCgiIikKK1BB
U1MgLXdlYmtpdC1ib3JkZXItaW1hZ2U6IHVybCgiIikKK1BBU1MgYm9yZGVyLWltYWdlOiB1cmwo
IiIpIDUwJQorUEFTUyAtd2Via2l0LWJvcmRlci1pbWFnZTogdXJsKCIiKSA1MCUKK1BBU1MgYm9y
ZGVyLWltYWdlOiB1cmwoIiIpIDUwJSAvIDExIDIyJSBjYWxjKDMzJSArIDMzcHgpIGF1dG8KK1BB
U1MgYm9yZGVyLWltYWdlOiB1cmwoIiIpIDUwJSAvIDExIDIyJSBjYWxjKDMzJSArIDMzcHgpIGNh
bGMoMjJweCAqIDIpCitQQVNTIC13ZWJraXQtYm9yZGVyLWltYWdlOiB1cmwoIiIpIDUwJSBmaWxs
IC8gMTEgMjIlIGNhbGMoMzMlICsgMzNweCkgY2FsYygyMnB4ICogMikKK1BBU1MgYm9yZGVyLWlt
YWdlOiB1cmwoIiIpIDUwJSAvIDExcHggMjJweCAzM3B4IDQ0cHgKK1BBU1MgLXdlYmtpdC1ib3Jk
ZXItaW1hZ2U6IHVybCgiIikgNTAlIGZpbGwgLyAxMXB4IDIycHggMzNweCA0NHB4CitQQVNTIC0t
djogNTBweDsgYm9yZGVyLWltYWdlOiB1cmwoIiIpIDUwJSAvIHZhcigtLXYpCitQQVNTIC0tdjog
NTBweDsgLXdlYmtpdC1ib3JkZXItaW1hZ2U6IHVybCgiIikgNTAlIC8gdmFyKC0tdikKKwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9ib3JkZXJzL2JvcmRlci1pbWFnZS1sZWdhY3kuaHRt
bCBiL0xheW91dFRlc3RzL2Zhc3QvYm9yZGVycy9ib3JkZXItaW1hZ2UtbGVnYWN5Lmh0bWwKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uYzc2YzU3MGE0ZjYxYzdiYjE4ZWFiMjdjYmZlZmRhYzYyNDFiNTRhZAotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvYm9yZGVycy9ib3JkZXItaW1hZ2UtbGVnYWN5
Lmh0bWwKQEAgLTAsMCArMSwyODkgQEAKKzwhRE9DVFlQRSBodG1sPgorPHN0eWxlPgorI3Rhcmdl
dCB7CisgICAgYm9yZGVyOiAxcHggc29saWQ7Cit9Cis8L3N0eWxlPgorPGRpdiBpZD0idGFyZ2V0
Ij48L2Rpdj4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwv
c2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5q
cyI+PC9zY3JpcHQ+Cis8c2NyaXB0PgorY29uc3QgdGFyZ2V0ID0gZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoInRhcmdldCIpOworY29uc3Qgc3R5bGUgPSB0YXJnZXQuc3R5bGU7Citjb25zdCBjcyA9
IGdldENvbXB1dGVkU3R5bGUodGFyZ2V0KTsKKwordGVzdCgoKSA9PiB7CisgICAgc3R5bGUuY3Nz
VGV4dCA9ICJib3JkZXItaW1hZ2U6IHVybChcIlwiKTsiOworCisgICAgYXNzZXJ0X2VxdWFscyhz
dHlsZS5jc3NUZXh0LCAiYm9yZGVyLWltYWdlOiB1cmwoXCJcIik7IiwgImNzc1RleHQiKTsKKyAg
ICBhc3NlcnRfYXJyYXlfZXF1YWxzKFsuLi5zdHlsZV0sIFsiYm9yZGVyLWltYWdlLXNvdXJjZSIs
ICJib3JkZXItaW1hZ2Utc2xpY2UiLCAiYm9yZGVyLWltYWdlLXdpZHRoIiwgImJvcmRlci1pbWFn
ZS1vdXRzZXQiLCAiYm9yZGVyLWltYWdlLXJlcGVhdCJdKTsKKworICAgIGFzc2VydF9lcXVhbHMo
c3R5bGUuYm9yZGVySW1hZ2VTb3VyY2UsICJ1cmwoXCJcIikiLCAiU3BlY2lmaWVkIGJvcmRlci1p
bWFnZS1zb3VyY2UiKTsKKyAgICBhc3NlcnRfZXF1YWxzKHN0eWxlLmJvcmRlckltYWdlU2xpY2Us
ICJpbml0aWFsIiwgIlNwZWNpZmllZCBib3JkZXItaW1hZ2Utc2xpY2UiKTsKKyAgICBhc3NlcnRf
ZXF1YWxzKHN0eWxlLmJvcmRlckltYWdlV2lkdGgsICJpbml0aWFsIiwgIlNwZWNpZmllZCBib3Jk
ZXItaW1hZ2Utd2lkdGgiKTsKKyAgICBhc3NlcnRfZXF1YWxzKHN0eWxlLmJvcmRlckltYWdlT3V0
c2V0LCAiaW5pdGlhbCIsICJTcGVjaWZpZWQgYm9yZGVyLWltYWdlLW91dHNldCIpOworICAgIGFz
c2VydF9lcXVhbHMoc3R5bGUuYm9yZGVySW1hZ2VSZXBlYXQsICJpbml0aWFsIiwgIlNwZWNpZmll
ZCBib3JkZXItaW1hZ2UtcmVwZWF0Iik7CisgICAgYXNzZXJ0X2VxdWFscyhzdHlsZS5ib3JkZXJJ
bWFnZSwgInVybChcIlwiKSIsICJTcGVjaWZpZWQgYm9yZGVyLWltYWdlIik7CisgICAgYXNzZXJ0
X2VxdWFscyhzdHlsZS53ZWJraXRCb3JkZXJJbWFnZSwgInVybChcIlwiKSIsICJTcGVjaWZpZWQg
LXdlYmtpdC1ib3JkZXItaW1hZ2UiKTsKKworICAgIGFzc2VydF9lcXVhbHMoY3MuYm9yZGVySW1h
Z2VTb3VyY2UsICJ1cmwoXCJcIikiLCAiQ29tcHV0ZWQgYm9yZGVyLWltYWdlLXNvdXJjZSIpOwor
ICAgIGFzc2VydF9lcXVhbHMoY3MuYm9yZGVySW1hZ2VTbGljZSwgIjEwMCUiLCAiQ29tcHV0ZWQg
Ym9yZGVyLWltYWdlLXNsaWNlIik7CisgICAgYXNzZXJ0X2VxdWFscyhjcy5ib3JkZXJJbWFnZVdp
ZHRoLCAiMSIsICJDb21wdXRlZCBib3JkZXItaW1hZ2Utd2lkdGgiKTsKKyAgICBhc3NlcnRfZXF1
YWxzKGNzLmJvcmRlckltYWdlT3V0c2V0LCAiMCIsICJDb21wdXRlZCBib3JkZXItaW1hZ2Utb3V0
c2V0Iik7CisgICAgYXNzZXJ0X2VxdWFscyhjcy5ib3JkZXJJbWFnZVJlcGVhdCwgInN0cmV0Y2gi
LCAiQ29tcHV0ZWQgYm9yZGVyLWltYWdlLXJlcGVhdCIpOworICAgIGFzc2VydF9lcXVhbHMoY3Mu
Ym9yZGVySW1hZ2UsICJ1cmwoXCJcIikgMTAwJSAvIDEgLyAwIHN0cmV0Y2giLCAiQ29tcHV0ZWQg
Ym9yZGVyLWltYWdlIik7CisgICAgYXNzZXJ0X2VxdWFscyhjcy53ZWJraXRCb3JkZXJJbWFnZSwg
InVybChcIlwiKSAxMDAlIC8gMSAvIDAgc3RyZXRjaCIsICJDb21wdXRlZCAtd2Via2l0LWJvcmRl
ci1pbWFnZSIpOworCisgICAgYXNzZXJ0X2VxdWFscyhjcy5ib3JkZXJXaWR0aCwgIjFweCIsICJD
b21wdXRlZCBib3JkZXItd2lkdGgiKTsKK30sICJib3JkZXItaW1hZ2U6IHVybChcIlwiKSIpOwor
Cit0ZXN0KCgpID0+IHsKKyAgICBzdHlsZS5jc3NUZXh0ID0gIi13ZWJraXQtYm9yZGVyLWltYWdl
OiB1cmwoXCJcIik7IjsKKworICAgIGFzc2VydF9lcXVhbHMoc3R5bGUuY3NzVGV4dCwgImJvcmRl
ci1pbWFnZTogdXJsKFwiXCIpOyIsICJjc3NUZXh0Iik7CisgICAgYXNzZXJ0X2FycmF5X2VxdWFs
cyhbLi4uc3R5bGVdLCBbImJvcmRlci1pbWFnZS1zb3VyY2UiLCAiYm9yZGVyLWltYWdlLXNsaWNl
IiwgImJvcmRlci1pbWFnZS13aWR0aCIsICJib3JkZXItaW1hZ2Utb3V0c2V0IiwgImJvcmRlci1p
bWFnZS1yZXBlYXQiXSk7CisKKyAgICBhc3NlcnRfZXF1YWxzKHN0eWxlLmJvcmRlckltYWdlU291
cmNlLCAidXJsKFwiXCIpIiwgIlNwZWNpZmllZCBib3JkZXItaW1hZ2Utc291cmNlIik7CisgICAg
YXNzZXJ0X2VxdWFscyhzdHlsZS5ib3JkZXJJbWFnZVNsaWNlLCAiaW5pdGlhbCIsICJTcGVjaWZp
ZWQgYm9yZGVyLWltYWdlLXNsaWNlIik7CisgICAgYXNzZXJ0X2VxdWFscyhzdHlsZS5ib3JkZXJJ
bWFnZVdpZHRoLCAiaW5pdGlhbCIsICJTcGVjaWZpZWQgYm9yZGVyLWltYWdlLXdpZHRoIik7Cisg
ICAgYXNzZXJ0X2VxdWFscyhzdHlsZS5ib3JkZXJJbWFnZU91dHNldCwgImluaXRpYWwiLCAiU3Bl
Y2lmaWVkIGJvcmRlci1pbWFnZS1vdXRzZXQiKTsKKyAgICBhc3NlcnRfZXF1YWxzKHN0eWxlLmJv
cmRlckltYWdlUmVwZWF0LCAiaW5pdGlhbCIsICJTcGVjaWZpZWQgYm9yZGVyLWltYWdlLXJlcGVh
dCIpOworICAgIGFzc2VydF9lcXVhbHMoc3R5bGUuYm9yZGVySW1hZ2UsICJ1cmwoXCJcIikiLCAi
U3BlY2lmaWVkIGJvcmRlci1pbWFnZSIpOworICAgIGFzc2VydF9lcXVhbHMoc3R5bGUud2Via2l0
Qm9yZGVySW1hZ2UsICJ1cmwoXCJcIikiLCAiU3BlY2lmaWVkIC13ZWJraXQtYm9yZGVyLWltYWdl
Iik7CisKKyAgICBhc3NlcnRfZXF1YWxzKGNzLmJvcmRlckltYWdlU291cmNlLCAidXJsKFwiXCIp
IiwgIkNvbXB1dGVkIGJvcmRlci1pbWFnZS1zb3VyY2UiKTsKKyAgICBhc3NlcnRfZXF1YWxzKGNz
LmJvcmRlckltYWdlU2xpY2UsICIxMDAlIiwgIkNvbXB1dGVkIGJvcmRlci1pbWFnZS1zbGljZSIp
OworICAgIGFzc2VydF9lcXVhbHMoY3MuYm9yZGVySW1hZ2VXaWR0aCwgIjEiLCAiQ29tcHV0ZWQg
Ym9yZGVyLWltYWdlLXdpZHRoIik7CisgICAgYXNzZXJ0X2VxdWFscyhjcy5ib3JkZXJJbWFnZU91
dHNldCwgIjAiLCAiQ29tcHV0ZWQgYm9yZGVyLWltYWdlLW91dHNldCIpOworICAgIGFzc2VydF9l
cXVhbHMoY3MuYm9yZGVySW1hZ2VSZXBlYXQsICJzdHJldGNoIiwgIkNvbXB1dGVkIGJvcmRlci1p
bWFnZS1yZXBlYXQiKTsKKyAgICBhc3NlcnRfZXF1YWxzKGNzLmJvcmRlckltYWdlLCAidXJsKFwi
XCIpIDEwMCUgLyAxIC8gMCBzdHJldGNoIiwgIkNvbXB1dGVkIGJvcmRlci1pbWFnZSIpOworICAg
IGFzc2VydF9lcXVhbHMoY3Mud2Via2l0Qm9yZGVySW1hZ2UsICJ1cmwoXCJcIikgMTAwJSAvIDEg
LyAwIHN0cmV0Y2giLCAiQ29tcHV0ZWQgLXdlYmtpdC1ib3JkZXItaW1hZ2UiKTsKKworICAgIGFz
c2VydF9lcXVhbHMoY3MuYm9yZGVyV2lkdGgsICIxcHgiLCAiQ29tcHV0ZWQgYm9yZGVyLXdpZHRo
Iik7Cit9LCAiLXdlYmtpdC1ib3JkZXItaW1hZ2U6IHVybChcIlwiKSIpOworCit0ZXN0KCgpID0+
IHsKKyAgICBzdHlsZS5jc3NUZXh0ID0gImJvcmRlci1pbWFnZTogdXJsKFwiXCIpIDUwJTsiOwor
CisgICAgYXNzZXJ0X2VxdWFscyhzdHlsZS5jc3NUZXh0LCAiYm9yZGVyLWltYWdlOiB1cmwoXCJc
IikgNTAlOyIsICJjc3NUZXh0Iik7CisgICAgYXNzZXJ0X2FycmF5X2VxdWFscyhbLi4uc3R5bGVd
LCBbImJvcmRlci1pbWFnZS1zb3VyY2UiLCAiYm9yZGVyLWltYWdlLXNsaWNlIiwgImJvcmRlci1p
bWFnZS13aWR0aCIsICJib3JkZXItaW1hZ2Utb3V0c2V0IiwgImJvcmRlci1pbWFnZS1yZXBlYXQi
XSk7CisKKyAgICBhc3NlcnRfZXF1YWxzKHN0eWxlLmJvcmRlckltYWdlU291cmNlLCAidXJsKFwi
XCIpIiwgIlNwZWNpZmllZCBib3JkZXItaW1hZ2Utc291cmNlIik7CisgICAgYXNzZXJ0X2VxdWFs
cyhzdHlsZS5ib3JkZXJJbWFnZVNsaWNlLCAiNTAlIiwgIlNwZWNpZmllZCBib3JkZXItaW1hZ2Ut
c2xpY2UiKTsKKyAgICBhc3NlcnRfZXF1YWxzKHN0eWxlLmJvcmRlckltYWdlV2lkdGgsICJpbml0
aWFsIiwgIlNwZWNpZmllZCBib3JkZXItaW1hZ2Utd2lkdGgiKTsKKyAgICBhc3NlcnRfZXF1YWxz
KHN0eWxlLmJvcmRlckltYWdlT3V0c2V0LCAiaW5pdGlhbCIsICJTcGVjaWZpZWQgYm9yZGVyLWlt
YWdlLW91dHNldCIpOworICAgIGFzc2VydF9lcXVhbHMoc3R5bGUuYm9yZGVySW1hZ2VSZXBlYXQs
ICJpbml0aWFsIiwgIlNwZWNpZmllZCBib3JkZXItaW1hZ2UtcmVwZWF0Iik7CisgICAgYXNzZXJ0
X2VxdWFscyhzdHlsZS5ib3JkZXJJbWFnZSwgInVybChcIlwiKSA1MCUiLCAiU3BlY2lmaWVkIGJv
cmRlci1pbWFnZSIpOworICAgIGFzc2VydF9lcXVhbHMoc3R5bGUud2Via2l0Qm9yZGVySW1hZ2Us
ICJ1cmwoXCJcIikgNTAlIiwgIlNwZWNpZmllZCAtd2Via2l0LWJvcmRlci1pbWFnZSIpOworCisg
ICAgYXNzZXJ0X2VxdWFscyhjcy5ib3JkZXJJbWFnZVNvdXJjZSwgInVybChcIlwiKSIsICJDb21w
dXRlZCBib3JkZXItaW1hZ2Utc291cmNlIik7CisgICAgYXNzZXJ0X2VxdWFscyhjcy5ib3JkZXJJ
bWFnZVNsaWNlLCAiNTAlIiwgIkNvbXB1dGVkIGJvcmRlci1pbWFnZS1zbGljZSIpOworICAgIGFz
c2VydF9lcXVhbHMoY3MuYm9yZGVySW1hZ2VXaWR0aCwgIjEiLCAiQ29tcHV0ZWQgYm9yZGVyLWlt
YWdlLXdpZHRoIik7CisgICAgYXNzZXJ0X2VxdWFscyhjcy5ib3JkZXJJbWFnZU91dHNldCwgIjAi
LCAiQ29tcHV0ZWQgYm9yZGVyLWltYWdlLW91dHNldCIpOworICAgIGFzc2VydF9lcXVhbHMoY3Mu
Ym9yZGVySW1hZ2VSZXBlYXQsICJzdHJldGNoIiwgIkNvbXB1dGVkIGJvcmRlci1pbWFnZS1yZXBl
YXQiKTsKKyAgICBhc3NlcnRfZXF1YWxzKGNzLmJvcmRlckltYWdlLCAidXJsKFwiXCIpIDUwJSAv
IDEgLyAwIHN0cmV0Y2giLCAiQ29tcHV0ZWQgYm9yZGVyLWltYWdlIik7CisgICAgYXNzZXJ0X2Vx
dWFscyhjcy53ZWJraXRCb3JkZXJJbWFnZSwgInVybChcIlwiKSA1MCUgLyAxIC8gMCBzdHJldGNo
IiwgIkNvbXB1dGVkIC13ZWJraXQtYm9yZGVyLWltYWdlIik7CisKKyAgICBhc3NlcnRfZXF1YWxz
KGNzLmJvcmRlcldpZHRoLCAiMXB4IiwgIkNvbXB1dGVkIGJvcmRlci13aWR0aCIpOworfSwgImJv
cmRlci1pbWFnZTogdXJsKFwiXCIpIDUwJSIpOworCit0ZXN0KCgpID0+IHsKKyAgICBzdHlsZS5j
c3NUZXh0ID0gIi13ZWJraXQtYm9yZGVyLWltYWdlOiB1cmwoXCJcIikgNTAlOyI7CisKKyAgICBh
c3NlcnRfZXF1YWxzKHN0eWxlLmNzc1RleHQsICJib3JkZXItaW1hZ2U6IHVybChcIlwiKSA1MCUg
ZmlsbDsiLCAiY3NzVGV4dCIpOworICAgIGFzc2VydF9hcnJheV9lcXVhbHMoWy4uLnN0eWxlXSwg
WyJib3JkZXItaW1hZ2Utc291cmNlIiwgImJvcmRlci1pbWFnZS1zbGljZSIsICJib3JkZXItaW1h
Z2Utd2lkdGgiLCAiYm9yZGVyLWltYWdlLW91dHNldCIsICJib3JkZXItaW1hZ2UtcmVwZWF0Il0p
OworCisgICAgYXNzZXJ0X2VxdWFscyhzdHlsZS5ib3JkZXJJbWFnZVNvdXJjZSwgInVybChcIlwi
KSIsICJTcGVjaWZpZWQgYm9yZGVyLWltYWdlLXNvdXJjZSIpOworICAgIGFzc2VydF9lcXVhbHMo
c3R5bGUuYm9yZGVySW1hZ2VTbGljZSwgIjUwJSBmaWxsIiwgIlNwZWNpZmllZCBib3JkZXItaW1h
Z2Utc2xpY2UiKTsKKyAgICBhc3NlcnRfZXF1YWxzKHN0eWxlLmJvcmRlckltYWdlV2lkdGgsICJp
bml0aWFsIiwgIlNwZWNpZmllZCBib3JkZXItaW1hZ2Utd2lkdGgiKTsKKyAgICBhc3NlcnRfZXF1
YWxzKHN0eWxlLmJvcmRlckltYWdlT3V0c2V0LCAiaW5pdGlhbCIsICJTcGVjaWZpZWQgYm9yZGVy
LWltYWdlLW91dHNldCIpOworICAgIGFzc2VydF9lcXVhbHMoc3R5bGUuYm9yZGVySW1hZ2VSZXBl
YXQsICJpbml0aWFsIiwgIlNwZWNpZmllZCBib3JkZXItaW1hZ2UtcmVwZWF0Iik7CisgICAgYXNz
ZXJ0X2VxdWFscyhzdHlsZS5ib3JkZXJJbWFnZSwgInVybChcIlwiKSA1MCUgZmlsbCIsICJTcGVj
aWZpZWQgYm9yZGVyLWltYWdlIik7CisgICAgYXNzZXJ0X2VxdWFscyhzdHlsZS53ZWJraXRCb3Jk
ZXJJbWFnZSwgInVybChcIlwiKSA1MCUgZmlsbCIsICJTcGVjaWZpZWQgLXdlYmtpdC1ib3JkZXIt
aW1hZ2UiKTsKKworICAgIGFzc2VydF9lcXVhbHMoY3MuYm9yZGVySW1hZ2VTb3VyY2UsICJ1cmwo
XCJcIikiLCAiQ29tcHV0ZWQgYm9yZGVyLWltYWdlLXNvdXJjZSIpOworICAgIGFzc2VydF9lcXVh
bHMoY3MuYm9yZGVySW1hZ2VTbGljZSwgIjUwJSBmaWxsIiwgIkNvbXB1dGVkIGJvcmRlci1pbWFn
ZS1zbGljZSIpOworICAgIGFzc2VydF9lcXVhbHMoY3MuYm9yZGVySW1hZ2VXaWR0aCwgIjEiLCAi
Q29tcHV0ZWQgYm9yZGVyLWltYWdlLXdpZHRoIik7CisgICAgYXNzZXJ0X2VxdWFscyhjcy5ib3Jk
ZXJJbWFnZU91dHNldCwgIjAiLCAiQ29tcHV0ZWQgYm9yZGVyLWltYWdlLW91dHNldCIpOworICAg
IGFzc2VydF9lcXVhbHMoY3MuYm9yZGVySW1hZ2VSZXBlYXQsICJzdHJldGNoIiwgIkNvbXB1dGVk
IGJvcmRlci1pbWFnZS1yZXBlYXQiKTsKKyAgICBhc3NlcnRfZXF1YWxzKGNzLmJvcmRlckltYWdl
LCAidXJsKFwiXCIpIDUwJSBmaWxsIC8gMSAvIDAgc3RyZXRjaCIsICJDb21wdXRlZCBib3JkZXIt
aW1hZ2UiKTsKKyAgICBhc3NlcnRfZXF1YWxzKGNzLndlYmtpdEJvcmRlckltYWdlLCAidXJsKFwi
XCIpIDUwJSBmaWxsIC8gMSAvIDAgc3RyZXRjaCIsICJDb21wdXRlZCAtd2Via2l0LWJvcmRlci1p
bWFnZSIpOworCisgICAgYXNzZXJ0X2VxdWFscyhjcy5ib3JkZXJXaWR0aCwgIjFweCIsICJDb21w
dXRlZCBib3JkZXItd2lkdGgiKTsKK30sICItd2Via2l0LWJvcmRlci1pbWFnZTogdXJsKFwiXCIp
IDUwJSIpOworCit0ZXN0KCgpID0+IHsKKyAgICBzdHlsZS5jc3NUZXh0ID0gImJvcmRlci1pbWFn
ZTogdXJsKFwiXCIpIDUwJSAvIDExIDIyJSBjYWxjKDMzJSArIDMzcHgpIGF1dG87IjsKKworICAg
IGFzc2VydF9lcXVhbHMoc3R5bGUuY3NzVGV4dCwgImJvcmRlci1pbWFnZTogdXJsKFwiXCIpIDUw
JSAvIDExIDIyJSBjYWxjKDMzJSArIDMzcHgpIGF1dG87IiwgImNzc1RleHQiKTsKKyAgICBhc3Nl
cnRfYXJyYXlfZXF1YWxzKFsuLi5zdHlsZV0sIFsiYm9yZGVyLWltYWdlLXNvdXJjZSIsICJib3Jk
ZXItaW1hZ2Utc2xpY2UiLCAiYm9yZGVyLWltYWdlLXdpZHRoIiwgImJvcmRlci1pbWFnZS1vdXRz
ZXQiLCAiYm9yZGVyLWltYWdlLXJlcGVhdCJdKTsKKworICAgIGFzc2VydF9lcXVhbHMoc3R5bGUu
Ym9yZGVySW1hZ2VTb3VyY2UsICJ1cmwoXCJcIikiLCAiU3BlY2lmaWVkIGJvcmRlci1pbWFnZS1z
b3VyY2UiKTsKKyAgICBhc3NlcnRfZXF1YWxzKHN0eWxlLmJvcmRlckltYWdlU2xpY2UsICI1MCUi
LCAiU3BlY2lmaWVkIGJvcmRlci1pbWFnZS1zbGljZSIpOworICAgIGFzc2VydF9lcXVhbHMoc3R5
bGUuYm9yZGVySW1hZ2VXaWR0aCwgIjExIDIyJSBjYWxjKDMzJSArIDMzcHgpIGF1dG8iLCAiU3Bl
Y2lmaWVkIGJvcmRlci1pbWFnZS13aWR0aCIpOworICAgIGFzc2VydF9lcXVhbHMoc3R5bGUuYm9y
ZGVySW1hZ2VPdXRzZXQsICJpbml0aWFsIiwgIlNwZWNpZmllZCBib3JkZXItaW1hZ2Utb3V0c2V0
Iik7CisgICAgYXNzZXJ0X2VxdWFscyhzdHlsZS5ib3JkZXJJbWFnZVJlcGVhdCwgImluaXRpYWwi
LCAiU3BlY2lmaWVkIGJvcmRlci1pbWFnZS1yZXBlYXQiKTsKKyAgICBhc3NlcnRfZXF1YWxzKHN0
eWxlLmJvcmRlckltYWdlLCAidXJsKFwiXCIpIDUwJSAvIDExIDIyJSBjYWxjKDMzJSArIDMzcHgp
IGF1dG8iLCAiU3BlY2lmaWVkIGJvcmRlci1pbWFnZSIpOworICAgIGFzc2VydF9lcXVhbHMoc3R5
bGUud2Via2l0Qm9yZGVySW1hZ2UsICJ1cmwoXCJcIikgNTAlIC8gMTEgMjIlIGNhbGMoMzMlICsg
MzNweCkgYXV0byIsICJTcGVjaWZpZWQgLXdlYmtpdC1ib3JkZXItaW1hZ2UiKTsKKworICAgIGFz
c2VydF9lcXVhbHMoY3MuYm9yZGVySW1hZ2VTb3VyY2UsICJ1cmwoXCJcIikiLCAiQ29tcHV0ZWQg
Ym9yZGVyLWltYWdlLXNvdXJjZSIpOworICAgIGFzc2VydF9lcXVhbHMoY3MuYm9yZGVySW1hZ2VT
bGljZSwgIjUwJSIsICJDb21wdXRlZCBib3JkZXItaW1hZ2Utc2xpY2UiKTsKKyAgICBhc3NlcnRf
ZXF1YWxzKGNzLmJvcmRlckltYWdlV2lkdGgsICIxMSAyMiUgY2FsYygzMyUgKyAzM3B4KSBhdXRv
IiwgIkNvbXB1dGVkIGJvcmRlci1pbWFnZS13aWR0aCIpOworICAgIGFzc2VydF9lcXVhbHMoY3Mu
Ym9yZGVySW1hZ2VPdXRzZXQsICIwIiwgIkNvbXB1dGVkIGJvcmRlci1pbWFnZS1vdXRzZXQiKTsK
KyAgICBhc3NlcnRfZXF1YWxzKGNzLmJvcmRlckltYWdlUmVwZWF0LCAic3RyZXRjaCIsICJDb21w
dXRlZCBib3JkZXItaW1hZ2UtcmVwZWF0Iik7CisgICAgYXNzZXJ0X2VxdWFscyhjcy5ib3JkZXJJ
bWFnZSwgInVybChcIlwiKSA1MCUgLyAxMSAyMiUgY2FsYygzMyUgKyAzM3B4KSBhdXRvIC8gMCBz
dHJldGNoIiwgIkNvbXB1dGVkIGJvcmRlci1pbWFnZSIpOworICAgIGFzc2VydF9lcXVhbHMoY3Mu
d2Via2l0Qm9yZGVySW1hZ2UsICJ1cmwoXCJcIikgNTAlIC8gMTEgMjIlIGNhbGMoMzMlICsgMzNw
eCkgYXV0byAvIDAgc3RyZXRjaCIsICJDb21wdXRlZCAtd2Via2l0LWJvcmRlci1pbWFnZSIpOwor
CisgICAgYXNzZXJ0X2VxdWFscyhjcy5ib3JkZXJXaWR0aCwgIjFweCIsICJDb21wdXRlZCBib3Jk
ZXItd2lkdGgiKTsKK30sICJib3JkZXItaW1hZ2U6IHVybChcIlwiKSA1MCUgLyAxMSAyMiUgY2Fs
YygzMyUgKyAzM3B4KSBhdXRvIik7CisKK3Rlc3QoKCkgPT4geworICAgIHN0eWxlLmNzc1RleHQg
PSAiYm9yZGVyLWltYWdlOiB1cmwoXCJcIikgNTAlIC8gMTEgMjIlIGNhbGMoMzMlICsgMzNweCkg
Y2FsYygyMnB4ICogMik7IjsKKworICAgIGFzc2VydF9lcXVhbHMoc3R5bGUuY3NzVGV4dCwgImJv
cmRlci1pbWFnZTogdXJsKFwiXCIpIDUwJSAvIDExIDIyJSBjYWxjKDMzJSArIDMzcHgpIGNhbGMo
NDRweCk7IiwgImNzc1RleHQiKTsKKyAgICBhc3NlcnRfYXJyYXlfZXF1YWxzKFsuLi5zdHlsZV0s
IFsiYm9yZGVyLWltYWdlLXNvdXJjZSIsICJib3JkZXItaW1hZ2Utc2xpY2UiLCAiYm9yZGVyLWlt
YWdlLXdpZHRoIiwgImJvcmRlci1pbWFnZS1vdXRzZXQiLCAiYm9yZGVyLWltYWdlLXJlcGVhdCJd
KTsKKworICAgIGFzc2VydF9lcXVhbHMoc3R5bGUuYm9yZGVySW1hZ2VTb3VyY2UsICJ1cmwoXCJc
IikiLCAiU3BlY2lmaWVkIGJvcmRlci1pbWFnZS1zb3VyY2UiKTsKKyAgICBhc3NlcnRfZXF1YWxz
KHN0eWxlLmJvcmRlckltYWdlU2xpY2UsICI1MCUiLCAiU3BlY2lmaWVkIGJvcmRlci1pbWFnZS1z
bGljZSIpOworICAgIGFzc2VydF9lcXVhbHMoc3R5bGUuYm9yZGVySW1hZ2VXaWR0aCwgIjExIDIy
JSBjYWxjKDMzJSArIDMzcHgpIGNhbGMoNDRweCkiLCAiU3BlY2lmaWVkIGJvcmRlci1pbWFnZS13
aWR0aCIpOworICAgIGFzc2VydF9lcXVhbHMoc3R5bGUuYm9yZGVySW1hZ2VPdXRzZXQsICJpbml0
aWFsIiwgIlNwZWNpZmllZCBib3JkZXItaW1hZ2Utb3V0c2V0Iik7CisgICAgYXNzZXJ0X2VxdWFs
cyhzdHlsZS5ib3JkZXJJbWFnZVJlcGVhdCwgImluaXRpYWwiLCAiU3BlY2lmaWVkIGJvcmRlci1p
bWFnZS1yZXBlYXQiKTsKKyAgICBhc3NlcnRfZXF1YWxzKHN0eWxlLmJvcmRlckltYWdlLCAidXJs
KFwiXCIpIDUwJSAvIDExIDIyJSBjYWxjKDMzJSArIDMzcHgpIGNhbGMoNDRweCkiLCAiU3BlY2lm
aWVkIGJvcmRlci1pbWFnZSIpOworICAgIGFzc2VydF9lcXVhbHMoc3R5bGUud2Via2l0Qm9yZGVy
SW1hZ2UsICIiLCAiU3BlY2lmaWVkIC13ZWJraXQtYm9yZGVyLWltYWdlIik7CisKKyAgICBhc3Nl
cnRfZXF1YWxzKGNzLmJvcmRlckltYWdlU291cmNlLCAidXJsKFwiXCIpIiwgIkNvbXB1dGVkIGJv
cmRlci1pbWFnZS1zb3VyY2UiKTsKKyAgICBhc3NlcnRfZXF1YWxzKGNzLmJvcmRlckltYWdlU2xp
Y2UsICI1MCUiLCAiQ29tcHV0ZWQgYm9yZGVyLWltYWdlLXNsaWNlIik7CisgICAgYXNzZXJ0X2Vx
dWFscyhjcy5ib3JkZXJJbWFnZVdpZHRoLCAiMTEgMjIlIGNhbGMoMzMlICsgMzNweCkgNDRweCIs
ICJDb21wdXRlZCBib3JkZXItaW1hZ2Utd2lkdGgiKTsKKyAgICBhc3NlcnRfZXF1YWxzKGNzLmJv
cmRlckltYWdlT3V0c2V0LCAiMCIsICJDb21wdXRlZCBib3JkZXItaW1hZ2Utb3V0c2V0Iik7Cisg
ICAgYXNzZXJ0X2VxdWFscyhjcy5ib3JkZXJJbWFnZVJlcGVhdCwgInN0cmV0Y2giLCAiQ29tcHV0
ZWQgYm9yZGVyLWltYWdlLXJlcGVhdCIpOworICAgIGFzc2VydF9lcXVhbHMoY3MuYm9yZGVySW1h
Z2UsICJ1cmwoXCJcIikgNTAlIC8gMTEgMjIlIGNhbGMoMzMlICsgMzNweCkgNDRweCAvIDAgc3Ry
ZXRjaCIsICJDb21wdXRlZCBib3JkZXItaW1hZ2UiKTsKKyAgICBhc3NlcnRfZXF1YWxzKGNzLndl
YmtpdEJvcmRlckltYWdlLCAiIiwgIkNvbXB1dGVkIC13ZWJraXQtYm9yZGVyLWltYWdlIik7CisK
KyAgICBhc3NlcnRfZXF1YWxzKGNzLmJvcmRlcldpZHRoLCAiMXB4IiwgIkNvbXB1dGVkIGJvcmRl
ci13aWR0aCIpOworfSwgImJvcmRlci1pbWFnZTogdXJsKFwiXCIpIDUwJSAvIDExIDIyJSBjYWxj
KDMzJSArIDMzcHgpIGNhbGMoMjJweCAqIDIpIik7CisKK3Rlc3QoKCkgPT4geworICAgIHN0eWxl
LmNzc1RleHQgPSAiLXdlYmtpdC1ib3JkZXItaW1hZ2U6IHVybChcIlwiKSA1MCUgLyAxMSAyMiUg
Y2FsYygzMyUgKyAzM3B4KSBjYWxjKDIycHggKiAyKTsiOworCisgICAgYXNzZXJ0X2VxdWFscyhz
dHlsZS5jc3NUZXh0LCAiLXdlYmtpdC1ib3JkZXItaW1hZ2U6IHVybChcIlwiKSA1MCUgZmlsbCAv
IDExIDIyJSBjYWxjKDMzJSArIDMzcHgpIGNhbGMoNDRweCk7IiwgImNzc1RleHQiKTsKKyAgICBh
c3NlcnRfYXJyYXlfZXF1YWxzKFsuLi5zdHlsZV0sIFsiYm9yZGVyLWltYWdlLXNvdXJjZSIsICJi
b3JkZXItaW1hZ2Utc2xpY2UiLCAiYm9yZGVyLWltYWdlLXdpZHRoIiwgImJvcmRlci1pbWFnZS1v
dXRzZXQiLCAiYm9yZGVyLWltYWdlLXJlcGVhdCJdKTsKKworICAgIGFzc2VydF9lcXVhbHMoc3R5
bGUuYm9yZGVySW1hZ2VTb3VyY2UsICJ1cmwoXCJcIikiLCAiU3BlY2lmaWVkIGJvcmRlci1pbWFn
ZS1zb3VyY2UiKTsKKyAgICBhc3NlcnRfZXF1YWxzKHN0eWxlLmJvcmRlckltYWdlU2xpY2UsICI1
MCUgZmlsbCIsICJTcGVjaWZpZWQgYm9yZGVyLWltYWdlLXNsaWNlIik7CisgICAgYXNzZXJ0X2Vx
dWFscyhzdHlsZS5ib3JkZXJJbWFnZVdpZHRoLCAiIiwgIlNwZWNpZmllZCBib3JkZXItaW1hZ2Ut
d2lkdGgiKTsKKyAgICBhc3NlcnRfZXF1YWxzKHN0eWxlLmJvcmRlckltYWdlT3V0c2V0LCAiaW5p
dGlhbCIsICJTcGVjaWZpZWQgYm9yZGVyLWltYWdlLW91dHNldCIpOworICAgIGFzc2VydF9lcXVh
bHMoc3R5bGUuYm9yZGVySW1hZ2VSZXBlYXQsICJpbml0aWFsIiwgIlNwZWNpZmllZCBib3JkZXIt
aW1hZ2UtcmVwZWF0Iik7CisgICAgYXNzZXJ0X2VxdWFscyhzdHlsZS5ib3JkZXJJbWFnZSwgIiIs
ICJTcGVjaWZpZWQgYm9yZGVyLWltYWdlIik7CisgICAgYXNzZXJ0X2VxdWFscyhzdHlsZS53ZWJr
aXRCb3JkZXJJbWFnZSwgInVybChcIlwiKSA1MCUgZmlsbCAvIDExIDIyJSBjYWxjKDMzJSArIDMz
cHgpIGNhbGMoNDRweCkiLCAiU3BlY2lmaWVkIC13ZWJraXQtYm9yZGVyLWltYWdlIik7CisKKyAg
ICBhc3NlcnRfZXF1YWxzKGNzLmJvcmRlckltYWdlU291cmNlLCAidXJsKFwiXCIpIiwgIkNvbXB1
dGVkIGJvcmRlci1pbWFnZS1zb3VyY2UiKTsKKyAgICBhc3NlcnRfZXF1YWxzKGNzLmJvcmRlcklt
YWdlU2xpY2UsICI1MCUgZmlsbCIsICJDb21wdXRlZCBib3JkZXItaW1hZ2Utc2xpY2UiKTsKKyAg
ICBhc3NlcnRfZXF1YWxzKGNzLmJvcmRlckltYWdlV2lkdGgsICIiLCAiQ29tcHV0ZWQgYm9yZGVy
LWltYWdlLXdpZHRoIik7CisgICAgYXNzZXJ0X2VxdWFscyhjcy5ib3JkZXJJbWFnZU91dHNldCwg
IjAiLCAiQ29tcHV0ZWQgYm9yZGVyLWltYWdlLW91dHNldCIpOworICAgIGFzc2VydF9lcXVhbHMo
Y3MuYm9yZGVySW1hZ2VSZXBlYXQsICJzdHJldGNoIiwgIkNvbXB1dGVkIGJvcmRlci1pbWFnZS1y
ZXBlYXQiKTsKKyAgICBhc3NlcnRfZXF1YWxzKGNzLmJvcmRlckltYWdlLCAiIiwgIkNvbXB1dGVk
IGJvcmRlci1pbWFnZSIpOworICAgIGFzc2VydF9lcXVhbHMoY3Mud2Via2l0Qm9yZGVySW1hZ2Us
ICJ1cmwoXCJcIikgNTAlIGZpbGwgLyAxMSAyMiUgY2FsYygzMyUgKyAzM3B4KSA0NHB4IC8gMCBz
dHJldGNoIiwgIkNvbXB1dGVkIC13ZWJraXQtYm9yZGVyLWltYWdlIik7CisKKyAgICBhc3NlcnRf
ZXF1YWxzKGNzLmJvcmRlcldpZHRoLCAiMXB4IDFweCAxcHggNDRweCIsICJDb21wdXRlZCBib3Jk
ZXItd2lkdGgiKTsKK30sICItd2Via2l0LWJvcmRlci1pbWFnZTogdXJsKFwiXCIpIDUwJSBmaWxs
IC8gMTEgMjIlIGNhbGMoMzMlICsgMzNweCkgY2FsYygyMnB4ICogMikiKTsKKwordGVzdCgoKSA9
PiB7CisgICAgc3R5bGUuY3NzVGV4dCA9ICJib3JkZXItaW1hZ2U6IHVybChcIlwiKSA1MCUgLyAx
MXB4IDIycHggMzNweCA0NHB4OyI7CisKKyAgICBhc3NlcnRfZXF1YWxzKHN0eWxlLmNzc1RleHQs
ICJib3JkZXItaW1hZ2U6IHVybChcIlwiKSA1MCUgLyAxMXB4IDIycHggMzNweCA0NHB4OyIsICJj
c3NUZXh0Iik7CisgICAgYXNzZXJ0X2FycmF5X2VxdWFscyhbLi4uc3R5bGVdLCBbImJvcmRlci1p
bWFnZS1zb3VyY2UiLCAiYm9yZGVyLWltYWdlLXNsaWNlIiwgImJvcmRlci1pbWFnZS13aWR0aCIs
ICJib3JkZXItaW1hZ2Utb3V0c2V0IiwgImJvcmRlci1pbWFnZS1yZXBlYXQiXSk7CisKKyAgICBh
c3NlcnRfZXF1YWxzKHN0eWxlLmJvcmRlckltYWdlU291cmNlLCAidXJsKFwiXCIpIiwgIlNwZWNp
ZmllZCBib3JkZXItaW1hZ2Utc291cmNlIik7CisgICAgYXNzZXJ0X2VxdWFscyhzdHlsZS5ib3Jk
ZXJJbWFnZVNsaWNlLCAiNTAlIiwgIlNwZWNpZmllZCBib3JkZXItaW1hZ2Utc2xpY2UiKTsKKyAg
ICBhc3NlcnRfZXF1YWxzKHN0eWxlLmJvcmRlckltYWdlV2lkdGgsICIxMXB4IDIycHggMzNweCA0
NHB4IiwgIlNwZWNpZmllZCBib3JkZXItaW1hZ2Utd2lkdGgiKTsKKyAgICBhc3NlcnRfZXF1YWxz
KHN0eWxlLmJvcmRlckltYWdlT3V0c2V0LCAiaW5pdGlhbCIsICJTcGVjaWZpZWQgYm9yZGVyLWlt
YWdlLW91dHNldCIpOworICAgIGFzc2VydF9lcXVhbHMoc3R5bGUuYm9yZGVySW1hZ2VSZXBlYXQs
ICJpbml0aWFsIiwgIlNwZWNpZmllZCBib3JkZXItaW1hZ2UtcmVwZWF0Iik7CisgICAgYXNzZXJ0
X2VxdWFscyhzdHlsZS5ib3JkZXJJbWFnZSwgInVybChcIlwiKSA1MCUgLyAxMXB4IDIycHggMzNw
eCA0NHB4IiwgIlNwZWNpZmllZCBib3JkZXItaW1hZ2UiKTsKKyAgICBhc3NlcnRfZXF1YWxzKHN0
eWxlLndlYmtpdEJvcmRlckltYWdlLCAiIiwgIlNwZWNpZmllZCAtd2Via2l0LWJvcmRlci1pbWFn
ZSIpOworCisgICAgYXNzZXJ0X2VxdWFscyhjcy5ib3JkZXJJbWFnZVNvdXJjZSwgInVybChcIlwi
KSIsICJDb21wdXRlZCBib3JkZXItaW1hZ2Utc291cmNlIik7CisgICAgYXNzZXJ0X2VxdWFscyhj
cy5ib3JkZXJJbWFnZVNsaWNlLCAiNTAlIiwgIkNvbXB1dGVkIGJvcmRlci1pbWFnZS1zbGljZSIp
OworICAgIGFzc2VydF9lcXVhbHMoY3MuYm9yZGVySW1hZ2VXaWR0aCwgIjExcHggMjJweCAzM3B4
IDQ0cHgiLCAiQ29tcHV0ZWQgYm9yZGVyLWltYWdlLXdpZHRoIik7CisgICAgYXNzZXJ0X2VxdWFs
cyhjcy5ib3JkZXJJbWFnZU91dHNldCwgIjAiLCAiQ29tcHV0ZWQgYm9yZGVyLWltYWdlLW91dHNl
dCIpOworICAgIGFzc2VydF9lcXVhbHMoY3MuYm9yZGVySW1hZ2VSZXBlYXQsICJzdHJldGNoIiwg
IkNvbXB1dGVkIGJvcmRlci1pbWFnZS1yZXBlYXQiKTsKKyAgICBhc3NlcnRfZXF1YWxzKGNzLmJv
cmRlckltYWdlLCAidXJsKFwiXCIpIDUwJSAvIDExcHggMjJweCAzM3B4IDQ0cHggLyAwIHN0cmV0
Y2giLCAiQ29tcHV0ZWQgYm9yZGVyLWltYWdlIik7CisgICAgYXNzZXJ0X2VxdWFscyhjcy53ZWJr
aXRCb3JkZXJJbWFnZSwgIiIsICJDb21wdXRlZCAtd2Via2l0LWJvcmRlci1pbWFnZSIpOworCisg
ICAgYXNzZXJ0X2VxdWFscyhjcy5ib3JkZXJXaWR0aCwgIjFweCIsICJDb21wdXRlZCBib3JkZXIt
d2lkdGgiKTsKK30sICJib3JkZXItaW1hZ2U6IHVybChcIlwiKSA1MCUgLyAxMXB4IDIycHggMzNw
eCA0NHB4Iik7CisKK3Rlc3QoKCkgPT4geworICAgIHN0eWxlLmNzc1RleHQgPSAiLXdlYmtpdC1i
b3JkZXItaW1hZ2U6IHVybChcIlwiKSA1MCUgLyAxMXB4IDIycHggMzNweCA0NHB4OyI7CisKKyAg
ICBhc3NlcnRfZXF1YWxzKHN0eWxlLmNzc1RleHQsICItd2Via2l0LWJvcmRlci1pbWFnZTogdXJs
KFwiXCIpIDUwJSBmaWxsIC8gMTFweCAyMnB4IDMzcHggNDRweDsiLCAiY3NzVGV4dCIpOworICAg
IGFzc2VydF9hcnJheV9lcXVhbHMoWy4uLnN0eWxlXSwgWyJib3JkZXItaW1hZ2Utc291cmNlIiwg
ImJvcmRlci1pbWFnZS1zbGljZSIsICJib3JkZXItaW1hZ2Utd2lkdGgiLCAiYm9yZGVyLWltYWdl
LW91dHNldCIsICJib3JkZXItaW1hZ2UtcmVwZWF0Il0pOworCisgICAgYXNzZXJ0X2VxdWFscyhz
dHlsZS5ib3JkZXJJbWFnZVNvdXJjZSwgInVybChcIlwiKSIsICJTcGVjaWZpZWQgYm9yZGVyLWlt
YWdlLXNvdXJjZSIpOworICAgIGFzc2VydF9lcXVhbHMoc3R5bGUuYm9yZGVySW1hZ2VTbGljZSwg
IjUwJSBmaWxsIiwgIlNwZWNpZmllZCBib3JkZXItaW1hZ2Utc2xpY2UiKTsKKyAgICBhc3NlcnRf
ZXF1YWxzKHN0eWxlLmJvcmRlckltYWdlV2lkdGgsICIiLCAiU3BlY2lmaWVkIGJvcmRlci1pbWFn
ZS13aWR0aCIpOworICAgIGFzc2VydF9lcXVhbHMoc3R5bGUuYm9yZGVySW1hZ2VPdXRzZXQsICJp
bml0aWFsIiwgIlNwZWNpZmllZCBib3JkZXItaW1hZ2Utb3V0c2V0Iik7CisgICAgYXNzZXJ0X2Vx
dWFscyhzdHlsZS5ib3JkZXJJbWFnZVJlcGVhdCwgImluaXRpYWwiLCAiU3BlY2lmaWVkIGJvcmRl
ci1pbWFnZS1yZXBlYXQiKTsKKyAgICBhc3NlcnRfZXF1YWxzKHN0eWxlLmJvcmRlckltYWdlLCAi
IiwgIlNwZWNpZmllZCBib3JkZXItaW1hZ2UiKTsKKyAgICBhc3NlcnRfZXF1YWxzKHN0eWxlLndl
YmtpdEJvcmRlckltYWdlLCAidXJsKFwiXCIpIDUwJSBmaWxsIC8gMTFweCAyMnB4IDMzcHggNDRw
eCIsICJTcGVjaWZpZWQgLXdlYmtpdC1ib3JkZXItaW1hZ2UiKTsKKworICAgIGFzc2VydF9lcXVh
bHMoY3MuYm9yZGVySW1hZ2VTb3VyY2UsICJ1cmwoXCJcIikiLCAiQ29tcHV0ZWQgYm9yZGVyLWlt
YWdlLXNvdXJjZSIpOworICAgIGFzc2VydF9lcXVhbHMoY3MuYm9yZGVySW1hZ2VTbGljZSwgIjUw
JSBmaWxsIiwgIkNvbXB1dGVkIGJvcmRlci1pbWFnZS1zbGljZSIpOworICAgIGFzc2VydF9lcXVh
bHMoY3MuYm9yZGVySW1hZ2VXaWR0aCwgIiIsICJDb21wdXRlZCBib3JkZXItaW1hZ2Utd2lkdGgi
KTsKKyAgICBhc3NlcnRfZXF1YWxzKGNzLmJvcmRlckltYWdlT3V0c2V0LCAiMCIsICJDb21wdXRl
ZCBib3JkZXItaW1hZ2Utb3V0c2V0Iik7CisgICAgYXNzZXJ0X2VxdWFscyhjcy5ib3JkZXJJbWFn
ZVJlcGVhdCwgInN0cmV0Y2giLCAiQ29tcHV0ZWQgYm9yZGVyLWltYWdlLXJlcGVhdCIpOworICAg
IGFzc2VydF9lcXVhbHMoY3MuYm9yZGVySW1hZ2UsICIiLCAiQ29tcHV0ZWQgYm9yZGVyLWltYWdl
Iik7CisgICAgYXNzZXJ0X2VxdWFscyhjcy53ZWJraXRCb3JkZXJJbWFnZSwgInVybChcIlwiKSA1
MCUgZmlsbCAvIDExcHggMjJweCAzM3B4IDQ0cHggLyAwIHN0cmV0Y2giLCAiQ29tcHV0ZWQgLXdl
YmtpdC1ib3JkZXItaW1hZ2UiKTsKKworICAgIGFzc2VydF9lcXVhbHMoY3MuYm9yZGVyV2lkdGgs
ICIxMXB4IDIycHggMzNweCA0NHB4IiwgIkNvbXB1dGVkIGJvcmRlci13aWR0aCIpOworfSwgIi13
ZWJraXQtYm9yZGVyLWltYWdlOiB1cmwoXCJcIikgNTAlIGZpbGwgLyAxMXB4IDIycHggMzNweCA0
NHB4Iik7CisKK3Rlc3QoKCkgPT4geworICAgIHN0eWxlLmNzc1RleHQgPSAiLS12OiA1MHB4OyBi
b3JkZXItaW1hZ2U6IHVybChcIlwiKSA1MCUgLyB2YXIoLS12KTsiOworCisgICAgYXNzZXJ0X2Vx
dWFscyhzdHlsZS5jc3NUZXh0LCAiLS12OiA1MHB4OyBib3JkZXItaW1hZ2U6IHVybChcIlwiKSA1
MCUgLyB2YXIoLS12KTsiLCAiY3NzVGV4dCIpOworICAgIGFzc2VydF9hcnJheV9lcXVhbHMoWy4u
LnN0eWxlXSwgWyItLXYiLCAiYm9yZGVyLWltYWdlLXNvdXJjZSIsICJib3JkZXItaW1hZ2Utc2xp
Y2UiLCAiYm9yZGVyLWltYWdlLXdpZHRoIiwgImJvcmRlci1pbWFnZS1vdXRzZXQiLCAiYm9yZGVy
LWltYWdlLXJlcGVhdCJdKTsKKworICAgIGFzc2VydF9lcXVhbHMoc3R5bGUuYm9yZGVySW1hZ2VT
b3VyY2UsICIiLCAiU3BlY2lmaWVkIGJvcmRlci1pbWFnZS1zb3VyY2UiKTsKKyAgICBhc3NlcnRf
ZXF1YWxzKHN0eWxlLmJvcmRlckltYWdlU2xpY2UsICIiLCAiU3BlY2lmaWVkIGJvcmRlci1pbWFn
ZS1zbGljZSIpOworICAgIGFzc2VydF9lcXVhbHMoc3R5bGUuYm9yZGVySW1hZ2VXaWR0aCwgIiIs
ICJTcGVjaWZpZWQgYm9yZGVyLWltYWdlLXdpZHRoIik7CisgICAgYXNzZXJ0X2VxdWFscyhzdHls
ZS5ib3JkZXJJbWFnZU91dHNldCwgIiIsICJTcGVjaWZpZWQgYm9yZGVyLWltYWdlLW91dHNldCIp
OworICAgIGFzc2VydF9lcXVhbHMoc3R5bGUuYm9yZGVySW1hZ2VSZXBlYXQsICIiLCAiU3BlY2lm
aWVkIGJvcmRlci1pbWFnZS1yZXBlYXQiKTsKKyAgICBhc3NlcnRfZXF1YWxzKHN0eWxlLmJvcmRl
ckltYWdlLCAidXJsKFwiXCIpIDUwJSAvIHZhcigtLXYpIiwgIlNwZWNpZmllZCBib3JkZXItaW1h
Z2UiKTsKKyAgICBhc3NlcnRfZXF1YWxzKHN0eWxlLndlYmtpdEJvcmRlckltYWdlLCAiIiwgIlNw
ZWNpZmllZCAtd2Via2l0LWJvcmRlci1pbWFnZSIpOworCisgICAgYXNzZXJ0X2VxdWFscyhjcy5i
b3JkZXJJbWFnZVNvdXJjZSwgInVybChcIlwiKSIsICJDb21wdXRlZCBib3JkZXItaW1hZ2Utc291
cmNlIik7CisgICAgYXNzZXJ0X2VxdWFscyhjcy5ib3JkZXJJbWFnZVNsaWNlLCAiNTAlIiwgIkNv
bXB1dGVkIGJvcmRlci1pbWFnZS1zbGljZSIpOworICAgIGFzc2VydF9lcXVhbHMoY3MuYm9yZGVy
SW1hZ2VXaWR0aCwgIjUwcHgiLCAiQ29tcHV0ZWQgYm9yZGVyLWltYWdlLXdpZHRoIik7CisgICAg
YXNzZXJ0X2VxdWFscyhjcy5ib3JkZXJJbWFnZU91dHNldCwgIjAiLCAiQ29tcHV0ZWQgYm9yZGVy
LWltYWdlLW91dHNldCIpOworICAgIGFzc2VydF9lcXVhbHMoY3MuYm9yZGVySW1hZ2VSZXBlYXQs
ICJzdHJldGNoIiwgIkNvbXB1dGVkIGJvcmRlci1pbWFnZS1yZXBlYXQiKTsKKyAgICBhc3NlcnRf
ZXF1YWxzKGNzLmJvcmRlckltYWdlLCAidXJsKFwiXCIpIDUwJSAvIDUwcHggLyAwIHN0cmV0Y2gi
LCAiQ29tcHV0ZWQgYm9yZGVyLWltYWdlIik7CisgICAgYXNzZXJ0X2VxdWFscyhjcy53ZWJraXRC
b3JkZXJJbWFnZSwgIiIsICJDb21wdXRlZCAtd2Via2l0LWJvcmRlci1pbWFnZSIpOworCisgICAg
YXNzZXJ0X2VxdWFscyhjcy5ib3JkZXJXaWR0aCwgIjFweCIsICJDb21wdXRlZCBib3JkZXItd2lk
dGgiKTsKK30sICItLXY6IDUwcHg7IGJvcmRlci1pbWFnZTogdXJsKFwiXCIpIDUwJSAvIHZhcigt
LXYpIik7CisKK3Rlc3QoKCkgPT4geworICAgIHN0eWxlLmNzc1RleHQgPSAiLS12OiA1MHB4OyAt
d2Via2l0LWJvcmRlci1pbWFnZTogdXJsKFwiXCIpIDUwJSAvIHZhcigtLXYpOyI7CisKKyAgICBh
c3NlcnRfZXF1YWxzKHN0eWxlLmNzc1RleHQsICItLXY6IDUwcHg7IC13ZWJraXQtYm9yZGVyLWlt
YWdlOiB1cmwoXCJcIikgNTAlIC8gdmFyKC0tdik7IiwgImNzc1RleHQiKTsKKyAgICBhc3NlcnRf
YXJyYXlfZXF1YWxzKFsuLi5zdHlsZV0sIFsiLS12IiwgImJvcmRlci1pbWFnZS1zb3VyY2UiLCAi
Ym9yZGVyLWltYWdlLXNsaWNlIiwgImJvcmRlci1pbWFnZS13aWR0aCIsICJib3JkZXItaW1hZ2Ut
b3V0c2V0IiwgImJvcmRlci1pbWFnZS1yZXBlYXQiXSk7CisKKyAgICBhc3NlcnRfZXF1YWxzKHN0
eWxlLmJvcmRlckltYWdlU291cmNlLCAiIiwgIlNwZWNpZmllZCBib3JkZXItaW1hZ2Utc291cmNl
Iik7CisgICAgYXNzZXJ0X2VxdWFscyhzdHlsZS5ib3JkZXJJbWFnZVNsaWNlLCAiIiwgIlNwZWNp
ZmllZCBib3JkZXItaW1hZ2Utc2xpY2UiKTsKKyAgICBhc3NlcnRfZXF1YWxzKHN0eWxlLmJvcmRl
ckltYWdlV2lkdGgsICIiLCAiU3BlY2lmaWVkIGJvcmRlci1pbWFnZS13aWR0aCIpOworICAgIGFz
c2VydF9lcXVhbHMoc3R5bGUuYm9yZGVySW1hZ2VPdXRzZXQsICIiLCAiU3BlY2lmaWVkIGJvcmRl
ci1pbWFnZS1vdXRzZXQiKTsKKyAgICBhc3NlcnRfZXF1YWxzKHN0eWxlLmJvcmRlckltYWdlUmVw
ZWF0LCAiIiwgIlNwZWNpZmllZCBib3JkZXItaW1hZ2UtcmVwZWF0Iik7CisgICAgYXNzZXJ0X2Vx
dWFscyhzdHlsZS5ib3JkZXJJbWFnZSwgIiIsICJTcGVjaWZpZWQgYm9yZGVyLWltYWdlIik7Cisg
ICAgYXNzZXJ0X2VxdWFscyhzdHlsZS53ZWJraXRCb3JkZXJJbWFnZSwgInVybChcIlwiKSA1MCUg
LyB2YXIoLS12KSIsICJTcGVjaWZpZWQgLXdlYmtpdC1ib3JkZXItaW1hZ2UiKTsKKworICAgIGFz
c2VydF9lcXVhbHMoY3MuYm9yZGVySW1hZ2VTb3VyY2UsICJ1cmwoXCJcIikiLCAiQ29tcHV0ZWQg
Ym9yZGVyLWltYWdlLXNvdXJjZSIpOworICAgIGFzc2VydF9lcXVhbHMoY3MuYm9yZGVySW1hZ2VT
bGljZSwgIjUwJSBmaWxsIiwgIkNvbXB1dGVkIGJvcmRlci1pbWFnZS1zbGljZSIpOworICAgIGFz
c2VydF9lcXVhbHMoY3MuYm9yZGVySW1hZ2VXaWR0aCwgIiIsICJDb21wdXRlZCBib3JkZXItaW1h
Z2Utd2lkdGgiKTsKKyAgICBhc3NlcnRfZXF1YWxzKGNzLmJvcmRlckltYWdlT3V0c2V0LCAiMCIs
ICJDb21wdXRlZCBib3JkZXItaW1hZ2Utb3V0c2V0Iik7CisgICAgYXNzZXJ0X2VxdWFscyhjcy5i
b3JkZXJJbWFnZVJlcGVhdCwgInN0cmV0Y2giLCAiQ29tcHV0ZWQgYm9yZGVyLWltYWdlLXJlcGVh
dCIpOworICAgIGFzc2VydF9lcXVhbHMoY3MuYm9yZGVySW1hZ2UsICIiLCAiQ29tcHV0ZWQgYm9y
ZGVyLWltYWdlIik7CisgICAgYXNzZXJ0X2VxdWFscyhjcy53ZWJraXRCb3JkZXJJbWFnZSwgInVy
bChcIlwiKSA1MCUgZmlsbCAvIDUwcHggLyAwIHN0cmV0Y2giLCAiQ29tcHV0ZWQgLXdlYmtpdC1i
b3JkZXItaW1hZ2UiKTsKKworICAgIGFzc2VydF9lcXVhbHMoY3MuYm9yZGVyV2lkdGgsICI1MHB4
IiwgIkNvbXB1dGVkIGJvcmRlci13aWR0aCIpOworfSwgIi0tdjogNTBweDsgLXdlYmtpdC1ib3Jk
ZXItaW1hZ2U6IHVybChcIlwiKSA1MCUgLyB2YXIoLS12KSIpOworPC9zY3JpcHQ+CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9ib3JkZXItaW1hZ2Utc3R5bGUtbGVuZ3RoLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL2JvcmRlci1pbWFnZS1zdHlsZS1sZW5ndGgt
ZXhwZWN0ZWQudHh0CmluZGV4IDYyNmViZmI0ZjIxZjAyNDk5MTVjZGM3YjZmZDJhOTc1M2RiZTJh
ZmEuLjlkYzc2YTE2NTBmMTA3ZTg0YzI3N2EyMzRiZjJlYTQwYzQwNDQ5ZDAgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2Zhc3QvY3NzL2JvcmRlci1pbWFnZS1zdHlsZS1sZW5ndGgtZXhwZWN0ZWQu
dHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL2JvcmRlci1pbWFnZS1zdHlsZS1sZW5ndGgt
ZXhwZWN0ZWQudHh0CkBAIC01LDcgKzUsNyBAQCBPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBz
ZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURQogCiBQ
QVNTIGUuc3R5bGUubGVuZ3RoIGlzIDUKIFBBU1MgZS5zdHlsZS5sZW5ndGggaXMgMAotUEFTUyBl
LnN0eWxlLmxlbmd0aCBpcyAxCitQQVNTIGUuc3R5bGUubGVuZ3RoIGlzIDUKIFBBU1Mgc3VjY2Vz
c2Z1bGx5UGFyc2VkIGlzIHRydWUKIAogVEVTVCBDT01QTEVURQpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZmFzdC9jc3MvYm9yZGVyLWltYWdlLXN0eWxlLWxlbmd0aC5odG1sIGIvTGF5b3V0VGVz
dHMvZmFzdC9jc3MvYm9yZGVyLWltYWdlLXN0eWxlLWxlbmd0aC5odG1sCmluZGV4IDRlNDM2OTMw
NDIxMDc3ZjAwOGQ3Yzc4MTM4Yjc5Yjc2YzI3ODBjOGUuLmEyNzlmZGVjN2M4ZjIyODYzNzI5MTUz
ZThiNzZjNjA1M2FiYmI2OTAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL2JvcmRl
ci1pbWFnZS1zdHlsZS1sZW5ndGguaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9ib3Jk
ZXItaW1hZ2Utc3R5bGUtbGVuZ3RoLmh0bWwKQEAgLTIwLDcgKzIwLDcgQEAgc2hvdWxkQmUoImUu
c3R5bGUubGVuZ3RoIiwgIjUiKTsKIGUuc3R5bGUuYm9yZGVySW1hZ2UgPSAiIjsKIHNob3VsZEJl
KCJlLnN0eWxlLmxlbmd0aCIsICIwIik7CiBlLnN0eWxlLndlYmtpdEJvcmRlckltYWdlID0gInVy
bChkdW1teTovL3Rlc3QucG5nKSAwIDcgMCAxMyAvIDAgNyAwIDEzIHN0cmV0Y2ggc3RyZXRjaCI7
Ci1zaG91bGRCZSgiZS5zdHlsZS5sZW5ndGgiLCAiMSIpOworc2hvdWxkQmUoImUuc3R5bGUubGVu
Z3RoIiwgIjUiKTsKIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQodGVzdENvbnRhaW5lcik7CiAK
IDwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvZ2V0Q29tcHV0ZWRT
dHlsZS9jb21wdXRlZC1zdHlsZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9n
ZXRDb21wdXRlZFN0eWxlL2NvbXB1dGVkLXN0eWxlLWV4cGVjdGVkLnR4dAppbmRleCA2ZThlYzNk
ODVjZDFlYzkwNzljNGMwMTFlMTkzYmM2YjRkMTc2MzRlLi44NDY4ZDE2M2UxNGI3MTk1YmJiNmZk
YmYzMWRhMDU3MTAxMWM5ZTdjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9nZXRD
b21wdXRlZFN0eWxlL2NvbXB1dGVkLXN0eWxlLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0
cy9mYXN0L2Nzcy9nZXRDb21wdXRlZFN0eWxlL2NvbXB1dGVkLXN0eWxlLWV4cGVjdGVkLnR4dApA
QCAtMjEwLDcgKzIxMCw2IEBAIHpvb206IDE7CiAtd2Via2l0LWJhY2tncm91bmQtb3JpZ2luOiBw
YWRkaW5nLWJveDsKIC13ZWJraXQtYmFja2dyb3VuZC1zaXplOiBhdXRvOwogLXdlYmtpdC1ib3Jk
ZXItaG9yaXpvbnRhbC1zcGFjaW5nOiAwcHg7Ci0td2Via2l0LWJvcmRlci1pbWFnZTogbm9uZTsK
IC13ZWJraXQtYm9yZGVyLXZlcnRpY2FsLXNwYWNpbmc6IDBweDsKIC13ZWJraXQtYm94LWFsaWdu
OiBzdHJldGNoOwogLXdlYmtpdC1ib3gtZGVjb3JhdGlvbi1icmVhazogc2xpY2U7CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9nZXRDb21wdXRlZFN0eWxlL2NvbXB1dGVkLXN0eWxl
LXdpdGhvdXQtcmVuZGVyZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvZ2V0
Q29tcHV0ZWRTdHlsZS9jb21wdXRlZC1zdHlsZS13aXRob3V0LXJlbmRlcmVyLWV4cGVjdGVkLnR4
dAppbmRleCAwOWVlMDUyZThlYTBkODQ0OGY3NjA4NjYzYmNmNjhiYjVhMDU1OTZlLi5jN2YxYzk3
MjIyYmIwMzFiMWMxY2Y1MWM3M2ZjODFhMzk1NmRjZTdlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9mYXN0L2Nzcy9nZXRDb21wdXRlZFN0eWxlL2NvbXB1dGVkLXN0eWxlLXdpdGhvdXQtcmVuZGVy
ZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL2dldENvbXB1dGVkU3R5
bGUvY29tcHV0ZWQtc3R5bGUtd2l0aG91dC1yZW5kZXJlci1leHBlY3RlZC50eHQKQEAgLTIwOSw3
ICsyMDksNiBAQCB6b29tOiAxCiAtd2Via2l0LWJhY2tncm91bmQtb3JpZ2luOiBwYWRkaW5nLWJv
eAogLXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6IGF1dG8KIC13ZWJraXQtYm9yZGVyLWhvcml6b250
YWwtc3BhY2luZzogMHB4Ci0td2Via2l0LWJvcmRlci1pbWFnZTogbm9uZQogLXdlYmtpdC1ib3Jk
ZXItdmVydGljYWwtc3BhY2luZzogMHB4CiAtd2Via2l0LWJveC1hbGlnbjogc3RyZXRjaAogLXdl
YmtpdC1ib3gtZGVjb3JhdGlvbi1icmVhazogc2xpY2UKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2Zhc3QvY3NzL2dldENvbXB1dGVkU3R5bGUvcmVzb3VyY2VzL3Byb3BlcnR5LW5hbWVzLmpzIGIv
TGF5b3V0VGVzdHMvZmFzdC9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS9yZXNvdXJjZXMvcHJvcGVydHkt
bmFtZXMuanMKaW5kZXggZWIzNGZkZTYxYzZjODNkNzczM2EzZDM2NWJiYTE4MDFhOWFhNjA5NC4u
ZjFmZjhmNDA2YjZjOTY4YmU2MjU0YmNmZDdjZjQ4NzU3MmUzNTgzZiAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvZmFzdC9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS9yZXNvdXJjZXMvcHJvcGVydHktbmFt
ZXMuanMKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS9yZXNvdXJj
ZXMvcHJvcGVydHktbmFtZXMuanMKQEAgLTE3LDcgKzE3LDYgQEAgdmFyIHByb3BlcnRpZXNUb1Rl
c3QgPSB7CiAgICAgIi13ZWJraXQtYmFja2dyb3VuZC1vcmlnaW4iOiB0cnVlLAogICAgICItd2Vi
a2l0LWJhY2tncm91bmQtc2l6ZSI6IHRydWUsCiAgICAgIi13ZWJraXQtYm9yZGVyLWhvcml6b250
YWwtc3BhY2luZyI6IHRydWUsCi0gICAgIi13ZWJraXQtYm9yZGVyLWltYWdlIjogdHJ1ZSwKICAg
ICAiLXdlYmtpdC1ib3JkZXItdmVydGljYWwtc3BhY2luZyI6IHRydWUsCiAgICAgIi13ZWJraXQt
Ym94LWFsaWduIjogdHJ1ZSwKICAgICAiLXdlYmtpdC1ib3gtZGVjb3JhdGlvbi1icmVhayI6IHRy
dWUsCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9pbWFnZS1zZXQtcGFyc2luZy1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9pbWFnZS1zZXQtcGFyc2luZy1leHBl
Y3RlZC50eHQKaW5kZXggMzBhYTYxOTU5Yzg1YWU4MjNkY2QxZjVlODgzYTQ4NjY5ZDk0ODBmZC4u
ZDlhZDEwZmM0NWQzN2UzZGViZGZiZjk0NDBhNzA1ZDhjOTNjMTI0MSAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvZmFzdC9jc3MvaW1hZ2Utc2V0LXBhcnNpbmctZXhwZWN0ZWQudHh0CisrKyBiL0xh
eW91dFRlc3RzL2Zhc3QvY3NzL2ltYWdlLXNldC1wYXJzaW5nLWV4cGVjdGVkLnR4dApAQCAtODAs
NyArODAsNyBAQCBQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMXgnCiBQQVNTIHN1YlJ1bGUgaXMg
J2InCiBQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMngnCiAKLVNpbmdsZSB2YWx1ZSBmb3IgYm9y
ZGVyLWltYWdlIDogdXJsKCcjYScpIDF4CitTaW5nbGUgdmFsdWUgZm9yIGJvcmRlci1pbWFnZS1z
b3VyY2UgOiB1cmwoJyNhJykgMXgKIFBBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlKSBp
cyAnQ1NTVmFsdWVMaXN0JwogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUuX19wcm90
b19fKSBpcyAnQ1NTVmFsdWVMaXN0JwogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNldFJ1bGUu
Y29uc3RydWN0b3IpIGlzICdGdW5jdGlvbicKQEAgLTg4LDcgKzg4LDcgQEAgUEFTUyBpbWFnZVNl
dFJ1bGUubGVuZ3RoIGlzIDIKIFBBU1Mgc3ViUnVsZSBpcyAnYScKIFBBU1Mgc3ViUnVsZS5jc3NU
ZXh0IGlzICcxeCcKIAotTXVsdGlwbGUgdmFsdWVzIGZvciBib3JkZXItaW1hZ2UgOiB1cmwoJyNh
JykgMXgsIHVybCgnI2InKSAyeAorTXVsdGlwbGUgdmFsdWVzIGZvciBib3JkZXItaW1hZ2Utc291
cmNlIDogdXJsKCcjYScpIDF4LCB1cmwoJyNiJykgMngKIFBBU1MganNXcmFwcGVyQ2xhc3MoaW1h
Z2VTZXRSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwogUEFTUyBqc1dyYXBwZXJDbGFzcyhpbWFnZVNl
dFJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0JwogUEFTUyBqc1dyYXBwZXJDbGFzcyhp
bWFnZVNldFJ1bGUuY29uc3RydWN0b3IpIGlzICdGdW5jdGlvbicKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2Zhc3QvY3NzL2ltYWdlLXNldC1wYXJzaW5nLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0
L2Nzcy9pbWFnZS1zZXQtcGFyc2luZy5odG1sCmluZGV4IGM3YjhmMjg5NTAzYzdhMjYyMmRmNGNh
Mzk5ZTQzNTE2OWY1ODBkNTQuLjhiODE3NWNmNDkyZjA2NjA5ZjM4NDRiNDY4NTdkNTNkMzZjMmI2
MzEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL2ltYWdlLXNldC1wYXJzaW5nLmh0
bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvaW1hZ2Utc2V0LXBhcnNpbmcuaHRtbApAQCAt
MTA3LDEzICsxMDcsMTMgQEAgdGVzdEltYWdlU2V0UnVsZSgiTXVsdGlwbGUgdmFsdWVzIGZvciBj
b250ZW50IiwKICAgICAgICAgICAgICAgICAidXJsKCcjYScpIDF4LCB1cmwoJyNiJykgMngiLCA0
LAogICAgICAgICAgICAgICAgIFsiYSIsICIxeCIsICJiIiwgIjJ4Il0pOwogCi10ZXN0SW1hZ2VT
ZXRSdWxlKCJTaW5nbGUgdmFsdWUgZm9yIGJvcmRlci1pbWFnZSIsCi0gICAgICAgICAgICAgICAg
Ii13ZWJraXQtYm9yZGVyLWltYWdlIiwKK3Rlc3RJbWFnZVNldFJ1bGUoIlNpbmdsZSB2YWx1ZSBm
b3IgYm9yZGVyLWltYWdlLXNvdXJjZSIsCisgICAgICAgICAgICAgICAgImJvcmRlci1pbWFnZS1z
b3VyY2UiLAogICAgICAgICAgICAgICAgICJ1cmwoJyNhJykgMXgiLCAyLAogICAgICAgICAgICAg
ICAgIFsiYSIsICIxeCJdKTsKIAotdGVzdEltYWdlU2V0UnVsZSgiTXVsdGlwbGUgdmFsdWVzIGZv
ciBib3JkZXItaW1hZ2UiLAotICAgICAgICAgICAgICAgICItd2Via2l0LWJvcmRlci1pbWFnZSIs
Cit0ZXN0SW1hZ2VTZXRSdWxlKCJNdWx0aXBsZSB2YWx1ZXMgZm9yIGJvcmRlci1pbWFnZS1zb3Vy
Y2UiLAorICAgICAgICAgICAgICAgICJib3JkZXItaW1hZ2Utc291cmNlIiwKICAgICAgICAgICAg
ICAgICAidXJsKCcjYScpIDF4LCB1cmwoJyNiJykgMngiLCA0LAogICAgICAgICAgICAgICAgIFsi
YSIsICIxeCIsICJiIiwgIjJ4Il0pOwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nz
cy91cmktdG9rZW4tcGFyc2luZy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy91
cmktdG9rZW4tcGFyc2luZy1leHBlY3RlZC50eHQKaW5kZXggN2U2ZDYxZGJiZTYxOTdmMGJiNThh
Y2U2NTdkNGY0NjkwMWY1Mzg0ZS4uODc1YThhOTZlMGU1MzYzMjg0MTRjYjdlMGY0NTE0MDM1OTM2
MmM0MCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdXJpLXRva2VuLXBhcnNpbmct
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3VyaS10b2tlbi1wYXJzaW5n
LWV4cGVjdGVkLnR4dApAQCAtMjIsNyArMjIsNyBAQCBSdWxlcyBmcm9tIHRoZSBzdHlsZXNoZWV0
OgogI3IgeyBsaXN0LXN0eWxlLWltYWdlOiB1cmwoInVybChyKSIpOyB9CiAjcyB7IGJhY2tncm91
bmQtaW1hZ2U6IHVybCgidXJsKHMpIik7IH0KICN0IHsgbWFzay1pbWFnZTogdXJsKCJ1cmwodCki
KTsgfQotI3UgeyAtd2Via2l0LWJvcmRlci1pbWFnZTogdXJsKCJ1cmwodSkiKSAxIDIgMyA0IGZp
bGwgc3RyZXRjaCByb3VuZDsgfQorI3UgeyBib3JkZXItaW1hZ2U6IHVybCgidXJsKHUpIikgMSAy
IDMgNCBmaWxsIHN0cmV0Y2ggcm91bmQ7IH0KICN2IHsgLXdlYmtpdC1tYXNrLWJveC1pbWFnZTog
dXJsKCJ1cmwodikiKSAxIDIgMyA0IGZpbGwgc3RyZXRjaCByb3VuZDsgfQogI3cgeyBjb250ZW50
OiB1cmwoIndcZCB3Iik7IH0KICN4IHsgY29udGVudDogdXJsKCIgeCB4XDkgeCAiKTsgfQpAQCAt
NDcsNyArNDcsNyBAQCBFeHBlY3RlZCByZXN1bHQ6CiAjciB7IGxpc3Qtc3R5bGUtaW1hZ2U6IHVy
bCgidXJsKHIpIik7IH0KICNzIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCJ1cmwocykiKTsgfQog
I3QgeyBtYXNrLWltYWdlOiB1cmwoInVybCh0KSIpOyB9Ci0jdSB7IC13ZWJraXQtYm9yZGVyLWlt
YWdlOiB1cmwoInVybCh1KSIpIDEgMiAzIDQgZmlsbCBzdHJldGNoIHJvdW5kOyB9CisjdSB7IGJv
cmRlci1pbWFnZTogdXJsKCJ1cmwodSkiKSAxIDIgMyA0IGZpbGwgc3RyZXRjaCByb3VuZDsgfQog
I3YgeyAtd2Via2l0LW1hc2stYm94LWltYWdlOiB1cmwoInVybCh2KSIpIDEgMiAzIDQgZmlsbCBz
dHJldGNoIHJvdW5kOyB9CiAjdyB7IGNvbnRlbnQ6IHVybCgid1xkIHciKTsgfQogI3ggeyBjb250
ZW50OiB1cmwoIiB4IHhcOSB4ICIpOyB9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nz
cy91cmktdG9rZW4tcGFyc2luZy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdXJpLXRva2Vu
LXBhcnNpbmcuaHRtbAppbmRleCBlMTQ5NmIxYTRmYjQ2ODE3MTY4MzJkY2U2MTdkYzQ1NWE2ZDMx
ODkwLi5kYTdiNzA3NGNkZTdlNzc3MDQ1OGJiMDkzZTYzYjEyNDM0NDZhMTU4IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy91cmktdG9rZW4tcGFyc2luZy5odG1sCisrKyBiL0xheW91
dFRlc3RzL2Zhc3QvY3NzL3VyaS10b2tlbi1wYXJzaW5nLmh0bWwKQEAgLTkwLDcgKzkwLDcgQEAg
ZnVuY3Rpb24gcnVuVGVzdCgpCiAjciB7IGxpc3Qtc3R5bGUtaW1hZ2U6IHVybCgidXJsKHIpIik7
IH0KICNzIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCJ1cmwocykiKTsgfQogI3QgeyBtYXNrLWlt
YWdlOiB1cmwoInVybCh0KSIpOyB9Ci0jdSB7IC13ZWJraXQtYm9yZGVyLWltYWdlOiB1cmwoInVy
bCh1KSIpIDEgMiAzIDQgZmlsbCBzdHJldGNoIHJvdW5kOyB9CisjdSB7IGJvcmRlci1pbWFnZTog
dXJsKCJ1cmwodSkiKSAxIDIgMyA0IGZpbGwgc3RyZXRjaCByb3VuZDsgfQogI3YgeyAtd2Via2l0
LW1hc2stYm94LWltYWdlOiB1cmwoInVybCh2KSIpIDEgMiAzIDQgZmlsbCBzdHJldGNoIHJvdW5k
OyB9CiAjdyB7IGNvbnRlbnQ6IHVybCgid1xkIHciKTsgfQogI3ggeyBjb250ZW50OiB1cmwoIiB4
IHhcOSB4ICIpOyB9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9jc3MtY2FzY2FkZS9hbGwtcHJvcC1pbml0aWFsLXhtbC1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9j
c3MtY2FzY2FkZS9hbGwtcHJvcC1pbml0aWFsLXhtbC1leHBlY3RlZC50eHQKaW5kZXggOWIyNTQ3
MTQyZDg1NWIxZDM4ZGUwNDAxM2FmYWQwMDMyZjBkNWY5Ni4uMGY3NzgxYjBlYWVlNjU3Mzc2NTVj
YTFmNTdlYzEwNTI1NmY0MWJjNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNhc2NhZGUvYWxsLXByb3AtaW5pdGlhbC14bWwt
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL2Nzcy1jYXNjYWRlL2FsbC1wcm9wLWluaXRpYWwteG1sLWV4cGVjdGVkLnR4dApA
QCAtMzQxLDcgKzM0MSw2IEBAIFBBU1MgLXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXAKIFBBU1MgLXdl
YmtpdC1iYWNrZ3JvdW5kLW9yaWdpbgogUEFTUyAtd2Via2l0LWJhY2tncm91bmQtc2l6ZQogUEFT
UyAtd2Via2l0LWJvcmRlci1ob3Jpem9udGFsLXNwYWNpbmcKLVBBU1MgLXdlYmtpdC1ib3JkZXIt
aW1hZ2UKIFBBU1MgLXdlYmtpdC1ib3JkZXItdmVydGljYWwtc3BhY2luZwogUEFTUyAtd2Via2l0
LWJveC1hbGlnbgogUEFTUyAtd2Via2l0LWJveC1kZWNvcmF0aW9uLWJyZWFrCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS9n
ZXRDb21wdXRlZFN0eWxlLWRldGFjaGVkLXN1YnRyZWUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nzb20vZ2V0Q29tcHV0ZWRT
dHlsZS1kZXRhY2hlZC1zdWJ0cmVlLWV4cGVjdGVkLnR4dAppbmRleCA5YzZjMmQ2OTQ5NmE5N2Y1
ZGVhZDcwYTJjMGFhNzBiMjY4ZGU4M2VmLi5hZmUzZGRjMjIwMDBhMGU3NzQzOGFmYjJjZmZkMzlm
YTc0ZmQ0ZGY4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2Nzcy9jc3NvbS9nZXRDb21wdXRlZFN0eWxlLWRldGFjaGVkLXN1YnRyZWUtZXhw
ZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvY3NzL2Nzc29tL2dldENvbXB1dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS1leHBlY3RlZC50
eHQKQEAgLTEsOCArMSw4IEBACiAKIFBBU1MgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0
eWxlIGZvciBkZXRhY2hlZCBlbGVtZW50Ci1GQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBu
byBzdHlsZSBmb3IgZWxlbWVudCBpbiBub24tcmVuZGVyZWQgaWZyYW1lIChkaXNwbGF5OiBub25l
KSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk3Ci1GQUlMIGdldENvbXB1dGVk
U3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBpbiBub24tcmVuZGVyZWQgaWZyYW1l
IChkaXNwbGF5OiBub25lKSBmcm9tIGlmcmFtZSdzIHdpbmRvdyBhc3NlcnRfZXF1YWxzOiBleHBl
Y3RlZCAwIGJ1dCBnb3QgMzk3Ci1GQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHls
ZSBmb3IgZWxlbWVudCBvdXRzaWRlIHRoZSBmbGF0IHRyZWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0
ZWQgMCBidXQgZ290IDM5NwotRkFJTCBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUg
Zm9yIGRlc2NlbmRhbnQgb3V0c2lkZSB0aGUgZmxhdCB0cmVlIGFzc2VydF9lcXVhbHM6IGV4cGVj
dGVkIDAgYnV0IGdvdCAzOTcKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxl
IGZvciBlbGVtZW50IGluIG5vbi1yZW5kZXJlZCBpZnJhbWUgKGRpc3BsYXk6IG5vbmUpIGFzc2Vy
dF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTYKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSBy
ZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50IGluIG5vbi1yZW5kZXJlZCBpZnJhbWUgKGRpc3Bs
YXk6IG5vbmUpIGZyb20gaWZyYW1lJ3Mgd2luZG93IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAg
YnV0IGdvdCAzOTYKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBl
bGVtZW50IG91dHNpZGUgdGhlIGZsYXQgdHJlZSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1
dCBnb3QgMzk2CitGQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZGVz
Y2VuZGFudCBvdXRzaWRlIHRoZSBmbGF0IHRyZWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBi
dXQgZ290IDM5NgogUEFTUyBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIHNo
YWRvdyB0cmVlIG91dHNpZGUgb2YgZmxhdHRlbmVkIHRyZWUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvcGxhdGZvcm0vZ3RrL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nz
cy1jYXNjYWRlL2FsbC1wcm9wLWluaXRpYWwteG1sLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L3BsYXRmb3JtL2d0ay9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY2Fz
Y2FkZS9hbGwtcHJvcC1pbml0aWFsLXhtbC1leHBlY3RlZC50eHQKaW5kZXggN2IxYjNjNjg0NGM0
NDk3MjE0M2ZhNjAzMzcxYWIzMDU5Y2IyMDc3Zi4uYTI2MTM1MDU1MGQ4Yjg3ZTM2YzJjZGZjOWFj
YmRiMWUxMTVjN2M4ZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jYXNjYWRlL2FsbC1wcm9wLWluaXRp
YWwteG1sLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNhc2NhZGUvYWxsLXByb3AtaW5pdGlh
bC14bWwtZXhwZWN0ZWQudHh0CkBAIC0zMzksNyArMzM5LDYgQEAgUEFTUyAtd2Via2l0LWJhY2tn
cm91bmQtY2xpcAogUEFTUyAtd2Via2l0LWJhY2tncm91bmQtb3JpZ2luCiBQQVNTIC13ZWJraXQt
YmFja2dyb3VuZC1zaXplCiBQQVNTIC13ZWJraXQtYm9yZGVyLWhvcml6b250YWwtc3BhY2luZwot
UEFTUyAtd2Via2l0LWJvcmRlci1pbWFnZQogUEFTUyAtd2Via2l0LWJvcmRlci12ZXJ0aWNhbC1z
cGFjaW5nCiBQQVNTIC13ZWJraXQtYm94LWFsaWduCiBQQVNTIC13ZWJraXQtYm94LWRlY29yYXRp
b24tYnJlYWsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS9nZXRDb21wdXRlZFN0eWxlLWRldGFjaGVk
LXN1YnRyZWUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dldENvbXB1dGVkU3R5bGUtZGV0YWNo
ZWQtc3VidHJlZS1leHBlY3RlZC50eHQKaW5kZXggYTVlZWE2Yzg2OGIxNGIxMTRjOWMyNWMzZDM1
MzFiZmY5YzhhNTE5ZS4uNjgzN2VhMjZmZmRkODc0YTllY2UyMjQ1OTlkYzlkNThlMDg2ZGJjNCAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dldENvbXB1dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS1l
eHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dldENvbXB1dGVkU3R5bGUtZGV0YWNoZWQtc3Vi
dHJlZS1leHBlY3RlZC50eHQKQEAgLTEsOCArMSw4IEBACiAKIFBBU1MgZ2V0Q29tcHV0ZWRTdHls
ZSByZXR1cm5zIG5vIHN0eWxlIGZvciBkZXRhY2hlZCBlbGVtZW50Ci1GQUlMIGdldENvbXB1dGVk
U3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBpbiBub24tcmVuZGVyZWQgaWZyYW1l
IChkaXNwbGF5OiBub25lKSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk1Ci1G
QUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBpbiBub24t
cmVuZGVyZWQgaWZyYW1lIChkaXNwbGF5OiBub25lKSBmcm9tIGlmcmFtZSdzIHdpbmRvdyBhc3Nl
cnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk1Ci1GQUlMIGdldENvbXB1dGVkU3R5bGUg
cmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBvdXRzaWRlIHRoZSBmbGF0IHRyZWUgYXNzZXJ0
X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDM5NQotRkFJTCBnZXRDb21wdXRlZFN0eWxlIHJl
dHVybnMgbm8gc3R5bGUgZm9yIGRlc2NlbmRhbnQgb3V0c2lkZSB0aGUgZmxhdCB0cmVlIGFzc2Vy
dF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTUKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSBy
ZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50IGluIG5vbi1yZW5kZXJlZCBpZnJhbWUgKGRpc3Bs
YXk6IG5vbmUpIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTQKK0ZBSUwgZ2V0
Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50IGluIG5vbi1yZW5kZXJl
ZCBpZnJhbWUgKGRpc3BsYXk6IG5vbmUpIGZyb20gaWZyYW1lJ3Mgd2luZG93IGFzc2VydF9lcXVh
bHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTQKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5z
IG5vIHN0eWxlIGZvciBlbGVtZW50IG91dHNpZGUgdGhlIGZsYXQgdHJlZSBhc3NlcnRfZXF1YWxz
OiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk0CitGQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBu
byBzdHlsZSBmb3IgZGVzY2VuZGFudCBvdXRzaWRlIHRoZSBmbGF0IHRyZWUgYXNzZXJ0X2VxdWFs
czogZXhwZWN0ZWQgMCBidXQgZ290IDM5NAogUEFTUyBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMg
bm8gc3R5bGUgZm9yIHNoYWRvdyB0cmVlIG91dHNpZGUgb2YgZmxhdHRlbmVkIHRyZWUKIApkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvY3NzL2Nzcy1jYXNjYWRlL2FsbC1wcm9wLWluaXRpYWwteG1sLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2Nzcy9jc3MtY2FzY2FkZS9hbGwtcHJvcC1pbml0aWFsLXhtbC1leHBlY3RlZC50eHQKaW5k
ZXggYmUzZGI5MGNkMDkwMDAwM2JkODA4NWE1OWVjMDhkZWE3MTEzN2ZjMS4uNDMwOTg1ZTQ2Y2Ex
Mjk5MmZkYmU4OWJlZDI2ZTI1M2RiMDE1YWViYyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vaW9zL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jYXNjYWRl
L2FsbC1wcm9wLWluaXRpYWwteG1sLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS9pb3MvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNhc2NhZGUv
YWxsLXByb3AtaW5pdGlhbC14bWwtZXhwZWN0ZWQudHh0CkBAIC0zMTEsNyArMzExLDYgQEAgUEFT
UyAtd2Via2l0LWJhY2tncm91bmQtY2xpcAogUEFTUyAtd2Via2l0LWJhY2tncm91bmQtb3JpZ2lu
CiBQQVNTIC13ZWJraXQtYmFja2dyb3VuZC1zaXplCiBQQVNTIC13ZWJraXQtYm9yZGVyLWhvcml6
b250YWwtc3BhY2luZwotUEFTUyAtd2Via2l0LWJvcmRlci1pbWFnZQogUEFTUyAtd2Via2l0LWJv
cmRlci12ZXJ0aWNhbC1zcGFjaW5nCiBQQVNTIC13ZWJraXQtYm94LWFsaWduCiBQQVNTIC13ZWJr
aXQtYm94LWRlY29yYXRpb24tYnJlYWsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3Jt
L2lvcy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS9nZXRDb21wdXRl
ZFN0eWxlLWRldGFjaGVkLXN1YnRyZWUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vaW9zL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dldENvbXB1
dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS1leHBlY3RlZC50eHQKaW5kZXggOTAzYmZjNmE3ZTli
MjgyNzI0OGFiMDczYjUxMDY3N2U0MTQ5ZGYzMi4uYTJiODQ5ZWRjNDRiNWQ0OWIxMzA3NTNiOTFm
YjczMDU0YzMyNjRiZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dldENvbXB1dGVkU3R5bGUtZGV0
YWNoZWQtc3VidHJlZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9z
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dldENvbXB1dGVkU3R5
bGUtZGV0YWNoZWQtc3VidHJlZS1leHBlY3RlZC50eHQKQEAgLTEsOCArMSw4IEBACiAKIFBBU1Mg
Z2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBkZXRhY2hlZCBlbGVtZW50Ci1G
QUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBpbiBub24t
cmVuZGVyZWQgaWZyYW1lIChkaXNwbGF5OiBub25lKSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAw
IGJ1dCBnb3QgMzk5Ci1GQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3Ig
ZWxlbWVudCBpbiBub24tcmVuZGVyZWQgaWZyYW1lIChkaXNwbGF5OiBub25lKSBmcm9tIGlmcmFt
ZSdzIHdpbmRvdyBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk5Ci1GQUlMIGdl
dENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBvdXRzaWRlIHRoZSBm
bGF0IHRyZWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDM5OQotRkFJTCBnZXRD
b21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIGRlc2NlbmRhbnQgb3V0c2lkZSB0aGUg
ZmxhdCB0cmVlIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTkKK0ZBSUwgZ2V0
Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50IGluIG5vbi1yZW5kZXJl
ZCBpZnJhbWUgKGRpc3BsYXk6IG5vbmUpIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdv
dCAzOTgKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50
IGluIG5vbi1yZW5kZXJlZCBpZnJhbWUgKGRpc3BsYXk6IG5vbmUpIGZyb20gaWZyYW1lJ3Mgd2lu
ZG93IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTgKK0ZBSUwgZ2V0Q29tcHV0
ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50IG91dHNpZGUgdGhlIGZsYXQgdHJl
ZSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk4CitGQUlMIGdldENvbXB1dGVk
U3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZGVzY2VuZGFudCBvdXRzaWRlIHRoZSBmbGF0IHRy
ZWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDM5OAogUEFTUyBnZXRDb21wdXRl
ZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIHNoYWRvdyB0cmVlIG91dHNpZGUgb2YgZmxhdHRl
bmVkIHRyZWUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd3BlL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jYXNjYWRlL2FsbC1wcm9wLWluaXRpYWwt
eG1sLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3dwZS9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY2FzY2FkZS9hbGwtcHJvcC1pbml0aWFsLXhtbC1l
eHBlY3RlZC50eHQKaW5kZXggOGUyZDAxMTFmYTExODYwYTM1MDQwOTQ0MGI0NzU0ZWI0YTI0MTQz
ZS4uOTM5NTYzMmI5OTE4ZjZhMzkwOTM5MDRiMDJhZWRmMWY4Zjk5M2E0NyAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vd3BlL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
Y3NzL2Nzcy1jYXNjYWRlL2FsbC1wcm9wLWluaXRpYWwteG1sLWV4cGVjdGVkLnR4dAorKysgYi9M
YXlvdXRUZXN0cy9wbGF0Zm9ybS93cGUvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9j
c3MvY3NzLWNhc2NhZGUvYWxsLXByb3AtaW5pdGlhbC14bWwtZXhwZWN0ZWQudHh0CkBAIC0zMzks
NyArMzM5LDYgQEAgUEFTUyAtd2Via2l0LWJhY2tncm91bmQtY2xpcAogUEFTUyAtd2Via2l0LWJh
Y2tncm91bmQtb3JpZ2luCiBQQVNTIC13ZWJraXQtYmFja2dyb3VuZC1zaXplCiBQQVNTIC13ZWJr
aXQtYm9yZGVyLWhvcml6b250YWwtc3BhY2luZwotUEFTUyAtd2Via2l0LWJvcmRlci1pbWFnZQog
UEFTUyAtd2Via2l0LWJvcmRlci12ZXJ0aWNhbC1zcGFjaW5nCiBQQVNTIC13ZWJraXQtYm94LWFs
aWduCiBQQVNTIC13ZWJraXQtYm94LWRlY29yYXRpb24tYnJlYWsKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL3BsYXRmb3JtL3dwZS9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9j
c3NvbS9nZXRDb21wdXRlZFN0eWxlLWRldGFjaGVkLXN1YnRyZWUtZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vd3BlL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3Nz
L2Nzc29tL2dldENvbXB1dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS1leHBlY3RlZC50eHQKaW5k
ZXggNjgzN2VhMjZmZmRkODc0YTllY2UyMjQ1OTlkYzlkNThlMDg2ZGJjNC4uODg3Y2E2YzkxOWRl
M2EwYWUwMGE3ZDc1YzY3NzgzZWFlMWI1YWQ0MCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vd3BlL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dldENv
bXB1dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vd3BlL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29t
L2dldENvbXB1dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS1leHBlY3RlZC50eHQKQEAgLTEsOCAr
MSw4IEBACiAKIFBBU1MgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBkZXRh
Y2hlZCBlbGVtZW50Ci1GQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3Ig
ZWxlbWVudCBpbiBub24tcmVuZGVyZWQgaWZyYW1lIChkaXNwbGF5OiBub25lKSBhc3NlcnRfZXF1
YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk0Ci1GQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJu
cyBubyBzdHlsZSBmb3IgZWxlbWVudCBpbiBub24tcmVuZGVyZWQgaWZyYW1lIChkaXNwbGF5OiBu
b25lKSBmcm9tIGlmcmFtZSdzIHdpbmRvdyBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBn
b3QgMzk0Ci1GQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVu
dCBvdXRzaWRlIHRoZSBmbGF0IHRyZWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290
IDM5NAotRkFJTCBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIGRlc2NlbmRh
bnQgb3V0c2lkZSB0aGUgZmxhdCB0cmVlIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdv
dCAzOTQKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50
IGluIG5vbi1yZW5kZXJlZCBpZnJhbWUgKGRpc3BsYXk6IG5vbmUpIGFzc2VydF9lcXVhbHM6IGV4
cGVjdGVkIDAgYnV0IGdvdCAzOTMKK0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0
eWxlIGZvciBlbGVtZW50IGluIG5vbi1yZW5kZXJlZCBpZnJhbWUgKGRpc3BsYXk6IG5vbmUpIGZy
b20gaWZyYW1lJ3Mgd2luZG93IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTMK
K0ZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBlbGVtZW50IG91dHNp
ZGUgdGhlIGZsYXQgdHJlZSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzkzCitG
QUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZGVzY2VuZGFudCBvdXRz
aWRlIHRoZSBmbGF0IHRyZWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDM5Mwog
UEFTUyBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIHNoYWRvdyB0cmVlIG91
dHNpZGUgb2YgZmxhdHRlbmVkIHRyZWUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3ZnL2Nz
cy9nZXRDb21wdXRlZFN0eWxlLWJhc2ljLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3N2Zy9j
c3MvZ2V0Q29tcHV0ZWRTdHlsZS1iYXNpYy1leHBlY3RlZC50eHQKaW5kZXggM2ZlNzc4ZmMwNGQ1
YzYwMWY3YzAzNzZiZjNlMWY2OTJiYjg4NDRjZS4uYzU2NDI4OTlkNjA3YTM2ZDE3OTRiYWZmOWJm
ZWVjZjUyNTAxZGYyNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvc3ZnL2Nzcy9nZXRDb21wdXRl
ZFN0eWxlLWJhc2ljLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9zdmcvY3NzL2dldENv
bXB1dGVkU3R5bGUtYmFzaWMtZXhwZWN0ZWQudHh0CkBAIC00MTgsOCArNDE4LDYgQEAgcmVjdDog
c3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgtd2Via2l0LWJhY2tncm91bmQtc2l6ZSkgOiBhdXRvCiBy
ZWN0OiBzdHlsZS5nZXRQcm9wZXJ0eUNTU1ZhbHVlKC13ZWJraXQtYmFja2dyb3VuZC1zaXplKSA6
IFtvYmplY3QgQ1NTUHJpbWl0aXZlVmFsdWVdCiByZWN0OiBzdHlsZS5nZXRQcm9wZXJ0eVZhbHVl
KC13ZWJraXQtYm9yZGVyLWhvcml6b250YWwtc3BhY2luZykgOiAwcHgKIHJlY3Q6IHN0eWxlLmdl
dFByb3BlcnR5Q1NTVmFsdWUoLXdlYmtpdC1ib3JkZXItaG9yaXpvbnRhbC1zcGFjaW5nKSA6IFtv
YmplY3QgQ1NTUHJpbWl0aXZlVmFsdWVdCi1yZWN0OiBzdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKC13
ZWJraXQtYm9yZGVyLWltYWdlKSA6IG5vbmUKLXJlY3Q6IHN0eWxlLmdldFByb3BlcnR5Q1NTVmFs
dWUoLXdlYmtpdC1ib3JkZXItaW1hZ2UpIDogW29iamVjdCBDU1NQcmltaXRpdmVWYWx1ZV0KIHJl
Y3Q6IHN0eWxlLmdldFByb3BlcnR5VmFsdWUoLXdlYmtpdC1ib3JkZXItdmVydGljYWwtc3BhY2lu
ZykgOiAwcHgKIHJlY3Q6IHN0eWxlLmdldFByb3BlcnR5Q1NTVmFsdWUoLXdlYmtpdC1ib3JkZXIt
dmVydGljYWwtc3BhY2luZykgOiBbb2JqZWN0IENTU1ByaW1pdGl2ZVZhbHVlXQogcmVjdDogc3R5
bGUuZ2V0UHJvcGVydHlWYWx1ZSgtd2Via2l0LWJveC1hbGlnbikgOiBzdHJldGNoCkBAIC05MzQs
OCArOTMyLDYgQEAgZzogc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgtd2Via2l0LWJhY2tncm91bmQt
c2l6ZSkgOiBhdXRvCiBnOiBzdHlsZS5nZXRQcm9wZXJ0eUNTU1ZhbHVlKC13ZWJraXQtYmFja2dy
b3VuZC1zaXplKSA6IFtvYmplY3QgQ1NTUHJpbWl0aXZlVmFsdWVdCiBnOiBzdHlsZS5nZXRQcm9w
ZXJ0eVZhbHVlKC13ZWJraXQtYm9yZGVyLWhvcml6b250YWwtc3BhY2luZykgOiAwcHgKIGc6IHN0
eWxlLmdldFByb3BlcnR5Q1NTVmFsdWUoLXdlYmtpdC1ib3JkZXItaG9yaXpvbnRhbC1zcGFjaW5n
KSA6IFtvYmplY3QgQ1NTUHJpbWl0aXZlVmFsdWVdCi1nOiBzdHlsZS5nZXRQcm9wZXJ0eVZhbHVl
KC13ZWJraXQtYm9yZGVyLWltYWdlKSA6IG5vbmUKLWc6IHN0eWxlLmdldFByb3BlcnR5Q1NTVmFs
dWUoLXdlYmtpdC1ib3JkZXItaW1hZ2UpIDogW29iamVjdCBDU1NQcmltaXRpdmVWYWx1ZV0KIGc6
IHN0eWxlLmdldFByb3BlcnR5VmFsdWUoLXdlYmtpdC1ib3JkZXItdmVydGljYWwtc3BhY2luZykg
OiAwcHgKIGc6IHN0eWxlLmdldFByb3BlcnR5Q1NTVmFsdWUoLXdlYmtpdC1ib3JkZXItdmVydGlj
YWwtc3BhY2luZykgOiBbb2JqZWN0IENTU1ByaW1pdGl2ZVZhbHVlXQogZzogc3R5bGUuZ2V0UHJv
cGVydHlWYWx1ZSgtd2Via2l0LWJveC1hbGlnbikgOiBzdHJldGNoCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>456458</attachid>
            <date>2022-04-02 08:11:42 -0700</date>
            <delta_ts>2022-04-06 08:12:46 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-237487-20220402171140.patch</filename>
            <type>text/plain</type>
            <size>111851</size>
            <attacher name="Oriol Brufau">obrufau</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkxNzQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzI5OTFmYTkzYjc0MWRh
MDc2ZTk4MTFmYTYxMDExZGQ2MzdiNWYyMC4uYzAzNDM1NWEyZGQ3NDA5ZjA3YjE3MGIyYTZiNDMz
ODg0OWE5Mjc4YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0OSBAQAorMjAyMi0wNC0wMSAgT3Jp
b2wgQnJ1ZmF1ICA8b2JydWZhdUBpZ2FsaWEuY29tPgorCisgICAgICAgIFtjc3NdIFR1cm4gLXdl
YmtpdC1ib3JkZXItaW1hZ2UgaW50byBhIHNob3J0aGFuZAorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM3NDg3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhlICctd2Via2l0LWJvcmRlci1pbWFnZScgcHJv
cGVydHkgd2FzIGNvbnNpZGVyZWQgdG8gYmUgYSBsb25naGFuZCwKKyAgICAgICAgc2hhcmluZyBj
b21wdXRlZCB2YWx1ZXMgd2l0aCB0aGUgdmFyaW91cyAnYm9yZGVyLWltYWdlLSonLgorCisgICAg
ICAgIFRoaXMgcGF0Y2ggdHVybnMgaXQgaW50byBhIHNob3J0aGFuZCBvZiAnYm9yZGVyLWltYWdl
LSonLgorCisgICAgICAgIFRlc3RzOiBmYXN0L2JvcmRlcnMvYm9yZGVyLWltYWdlLWxlZ2FjeS5o
dG1sCisgICAgICAgICAgICAgICBmYXN0L2Nzcy9ib3JkZXItaW1hZ2Utc3R5bGUtbGVuZ3RoLmh0
bWwKKyAgICAgICAgICAgICAgIGZhc3QvY3NzL2dldENvbXB1dGVkU3R5bGUvY29tcHV0ZWQtc3R5
bGUuaHRtbAorICAgICAgICAgICAgICAgZmFzdC9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS9jb21wdXRl
ZC1zdHlsZS13aXRob3V0LXJlbmRlcmVyLmh0bWwKKyAgICAgICAgICAgICAgIGZhc3QvY3NzL2lt
YWdlLXNldC1wYXJzaW5nLmh0bWwKKyAgICAgICAgICAgICAgIGZhc3QvY3NzL3VyaS10b2tlbi1w
YXJzaW5nLmh0bWwKKyAgICAgICAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvY3NzL2Nzcy1jYXNjYWRlL2FsbC1wcm9wLWluaXRpYWwteG1sLmh0bWwKKyAgICAgICAgICAg
ICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dldENvbXB1dGVk
U3R5bGUtZGV0YWNoZWQtc3VidHJlZS5odG1sCisgICAgICAgICAgICAgICBzdmcvY3NzL2dldENv
bXB1dGVkU3R5bGUtYmFzaWMueGh0bWwKKworICAgICAgICAqIFNvdXJjZXMudHh0OgorICAgICAg
ICBBZGQgdGhlIG5ldyBmaWxlIENTU0JvcmRlckltYWdlV2lkdGhWYWx1ZS5jcHAuCisKKyAgICAg
ICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgIEFkZCB0aGUg
bmV3IGZpbGVzIENTU0JvcmRlckltYWdlV2lkdGhWYWx1ZS5oIGFuZAorICAgICAgICBDU1NCb3Jk
ZXJJbWFnZVdpZHRoVmFsdWUuY3BwLgorCisgICAgICAgICogYW5pbWF0aW9uL0NTU1Byb3BlcnR5
QW5pbWF0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmJsZW5kRnVuYyk6CisgICAgICAgIChX
ZWJDb3JlOjpDU1NQcm9wZXJ0eUFuaW1hdGlvbldyYXBwZXJNYXA6OkNTU1Byb3BlcnR5QW5pbWF0
aW9uV3JhcHBlck1hcCk6CisgICAgICAgIFdoZW4gYW5pbWF0aW5nIGJvcmRlci1pbWFnZS13aWR0
aCwgdGFrZSBpbnRvIGFjY291bnQgdGhhdCBpdCBjYW4gY29tZQorICAgICAgICBmcm9tIC13ZWJr
aXQtYm9yZGVyLWltYWdlLCBhbmQgdGh1cyBvdmVycmlkZSBib3JkZXIgd2lkdGhzLgorICAgICAg
ICBEbyBub3QgaW50ZXJwb2xhdGUgYSB2YWx1ZSBhIGRvZXMgb3ZlcnJpZGUgYm9yZGVyIHdpZHRo
cyB3aXRoIGFub3RoZXIKKyAgICAgICAgdmFsdWUgdGhhdCBkb2VzIG5vdC4KKyAgICAgICAgRXZl
biBpZiBib3JkZXItaW1hZ2Utd2lkdGggYWNjZXB0cyA8bGVuZ3RoLXBlcmNlbnRhZ2U+LCB3aGVu
IG92ZXJyaWRpbmcKKyAgICAgICAgYm9yZGVyIHdpZHRocyBkbyBub3QgaW50ZXJwb2xhdGUgYmV0
d2VlbiBhIDxsZW5ndGgtcGVyY2VudGFnZT4gYW5kIGEKKyAgICAgICAgcGxhaW4gPGxlbmd0aD4s
IHNpbmNlIG9ubHkgdGhlIGxhdHRlciBhcmUgdmFsaWQgYm9yZGVyIHdpZHRocy4KKworICAgICAg
ICAqIGNzcy9DU1NCb3JkZXJJbWFnZVdpZHRoVmFsdWUuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdl
YkNvcmU6OkNTU0JvcmRlckltYWdlV2lkdGhWYWx1ZTo6Q1NTQm9yZGVySW1hZ2VXaWR0aFZhbHVl
KToKKyAgICAgICAgKFdlYkNvcmU6OkNTU0JvcmRlckltYWdlV2lkdGhWYWx1ZTo6Y3VzdG9tQ1NT
VGV4dCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpDU1NCb3JkZXJJbWFnZVdpZHRoVmFsdWU6
OmVxdWFscyBjb25zdCk6CisgICAgICAgICogY3NzL0NTU0JvcmRlckltYWdlV2lkdGhWYWx1ZS5o
OiBBZGRlZC4KKyAgICAgICAgQWRkIENTU0JvcmRlckltYWdlV2lkdGhWYWx1ZSBjbGFzcywgYmFz
ZWQgb24gQ1NTQm9yZGVySW1hZ2VTbGljZVZhbHVlLgorICAgICAgICBJdCdzIGEgd3JhcHBlciBm
b3IgYSBDU1NfUVVBRCBDU1NQcmltaXRpdmVWYWx1ZSwgYnV0IHdpdGggYSBib29sIHRoYXQKKyAg
ICAgICAgaW5kaWNhdGVzIGlmIHRoZSB2YWx1ZSB3aWxsIG92ZXJyaWRlIGJvcmRlciB3aWR0aHMu
CisKKyAgICAgICAgKiBjc3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OnZhbHVlRm9yTmluZVBpZWNlSW1hZ2UpOgorICAgICAgICAoV2ViQ29yZTo6
dmFsdWVGb3JSZWZsZWN0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OkNvbXB1dGVkU3R5bGVFeHRy
YWN0b3I6OnZhbHVlRm9yUHJvcGVydHlJblN0eWxlKToKKyAgICAgICAgU2VyaWFsaXplIGJvcmRl
ci1pbWFnZS13aWR0aCBhcyBlbXB0eSBzdHJpbmcgaWYgaXQgb3ZlcnJpZGVzIGJvcmRlcgorICAg
ICAgICB3aWR0aHMsIHNpbmNlIGl0cyBncmFtbWFyIGRvZXNuJ3QgYWxsb3cgdGhpcy4KKyAgICAg
ICAgU2VyaWFsaXplIGJvcmRlci1pbWFnZSBhcyBlbXB0eSBzdHJpbmcgaWYgYm9yZGVyLWltYWdl
LXdpZHRoIG92ZXJyaWRlcworICAgICAgICBib3JkZXIgd2lkdGhzLCBzaW5jZSBpdHMgZ3JhbW1h
ciBkb2Vzbid0IGFsbG93IHRoaXMuCisgICAgICAgIEhhbmRsZSBzZXJpYWxpemF0aW9uIG9mIC13
ZWJraXQtYm9yZGVyLWltYWdlLgorCisgICAgICAgICogY3NzL0NTU1Byb3BlcnRpZXMuanNvbjoK
KyAgICAgICAgVHVybiAtd2Via2l0LWJvcmRlci1pbWFnZSBpbnRvIGEgc2hvcnRoYW5kIG9mIGJv
cmRlci1pbWFnZS1zb3VyY2UsCisgICAgICAgIGJvcmRlci1pbWFnZS1zbGljZSwgYm9yZGVyLWlt
YWdlLXdpZHRoLCBib3JkZXItaW1hZ2Utb3V0c2V0IGFuZAorICAgICAgICBib3JkZXItaW1hZ2Ut
cmVwZWF0LgorCisgICAgICAgICogY3NzL0NTU1RvU3R5bGVNYXAuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6Q1NTVG9TdHlsZU1hcDo6bWFwTmluZVBpZWNlSW1hZ2UpOgorICAgICAgICAoV2ViQ29y
ZTo6Q1NTVG9TdHlsZU1hcDo6bWFwTmluZVBpZWNlSW1hZ2VXaWR0aCk6CisgICAgICAgIChXZWJD
b3JlOjpDU1NUb1N0eWxlTWFwOjptYXBOaW5lUGllY2VJbWFnZVF1YWQpOgorICAgICAgICAqIGNz
cy9DU1NUb1N0eWxlTWFwLmg6CisgICAgICAgIEhhbmRsZSBDU1NCb3JkZXJJbWFnZVdpZHRoVmFs
dWUgdmFsdWVzLgorICAgICAgICBSZW1vdmUgb2xkIHdheSBvZiBoYW5kbGluZyAtd2Via2l0LWJv
cmRlci1pbWFnZS4KKworICAgICAgICAqIGNzcy9DU1NWYWx1ZS5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpDU1NWYWx1ZTo6ZXF1YWxzIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1ZhbHVl
Ojpjc3NUZXh0IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1ZhbHVlOjpkZXN0cm95KToK
KyAgICAgICAgKiBjc3MvQ1NTVmFsdWUuaDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1ZhbHVlOjpp
c0JvcmRlckltYWdlV2lkdGhWYWx1ZSBjb25zdCk6CisgICAgICAgIEhhbmRsZSBuZXcgQ1NTQm9y
ZGVySW1hZ2VXaWR0aFZhbHVlIHZhbHVlLgorCisgICAgICAgICogY3NzL1N0eWxlUHJvcGVydGll
cy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZVByb3BlcnRpZXM6OmdldFByb3BlcnR5VmFs
dWUgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVQcm9wZXJ0aWVzOjpib3JkZXJJbWFn
ZVByb3BlcnR5VmFsdWUgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVQcm9wZXJ0aWVz
Ojphc1RleHQgY29uc3QpOgorICAgICAgICAqIGNzcy9TdHlsZVByb3BlcnRpZXMuaDoKKyAgICAg
ICAgU2VyaWFsaXplIGJvcmRlci1pbWFnZSBhcyBlbXB0eSBzdHJpbmcgaWYgYm9yZGVyLWltYWdl
LXdpZHRoIG92ZXJyaWRlcworICAgICAgICBib3JkZXIgd2lkdGhzLCBzaW5jZSBpdHMgZ3JhbW1h
ciBkb2Vzbid0IGFsbG93IHRoaXMuCisgICAgICAgIEhhbmRsZSBzZXJpYWxpemF0aW9uIG9mIC13
ZWJraXQtYm9yZGVyLWltYWdlLgorICAgICAgICBNYWtlIGNzc1RleHQgY2hvb3NlIHRoZSByaWdo
dCBzaG9ydGhhbmQgYmV0d2VlbiBib3JkZXItaW1hZ2UgYW5kCisgICAgICAgIC13ZWJraXQtYm9y
ZGVyLWltYWdlLiBQcmVmZXIgdGhlIGZvcm1lciBpZiBib3RoIGFyZSBzdWl0YWJsZS4KKworICAg
ICAgICAqIGNzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXIuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6Y29uc3VtZUJvcmRlckltYWdlV2lkdGgpOgorICAgICAgICAoV2ViQ29yZTo6Y29uc3VtZUJv
cmRlckltYWdlQ29tcG9uZW50cyk6CisgICAgICAgIChXZWJDb3JlOjpDU1NQcm9wZXJ0eVBhcnNl
cjo6cGFyc2VTaW5nbGVWYWx1ZSk6CisgICAgICAgIChXZWJDb3JlOjpDU1NQcm9wZXJ0eVBhcnNl
cjo6Y29uc3VtZUJvcmRlckltYWdlKToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1Byb3BlcnR5UGFy
c2VyOjpwYXJzZVNob3J0aGFuZCk6CisgICAgICAgIFBhcnNlIGJvcmRlci1pbWFnZS13aWR0aCBh
cyBhIENTU0JvcmRlckltYWdlV2lkdGhWYWx1ZS4KKyAgICAgICAgUGFyc2UgLXdlYmtpdC1ib3Jk
ZXItaW1hZ2UgYXMgYSBzaG9ydGhhbmQuCisKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyVHJl
ZUFzVGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUcmVlQXNUZXh0Ojp3cml0ZVJl
bmRlck9iamVjdCk6CisgICAgICAgIFRha2UgaW50byBhY2NvdW50IHRoYXQgYm9yZGVyIHdpZHRo
cyBtYXkgYmUgb3ZlcnJpZGRlbi4KKworICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9Cb3JkZXJE
YXRhLmg6CisgICAgICAgIChXZWJDb3JlOjpCb3JkZXJEYXRhOjpib3JkZXJMZWZ0V2lkdGggY29u
c3QpOgorICAgICAgICAoV2ViQ29yZTo6Qm9yZGVyRGF0YTo6Ym9yZGVyUmlnaHRXaWR0aCBjb25z
dCk6CisgICAgICAgIChXZWJDb3JlOjpCb3JkZXJEYXRhOjpib3JkZXJUb3BXaWR0aCBjb25zdCk6
CisgICAgICAgIChXZWJDb3JlOjpCb3JkZXJEYXRhOjpib3JkZXJCb3R0b21XaWR0aCBjb25zdCk6
CisgICAgICAgIEFkZCBsb2dpYyBmb3Igb3ZlcnJpZGluZyBib3JkZXIgd2lkdGhzLiBTYW1lIGFw
cHJvYWNoIGFzICdib3JkZXItc3R5bGUnCisgICAgICAgIHNldCB0byAnbm9uZScgbWFraW5nIHRo
ZSBib3JkZXIgd2lkdGhzIGNvbXB1dGUgdG8gJzBweCcuCisKKyAgICAgICAgKiByZW5kZXJpbmcv
c3R5bGUvTmluZVBpZWNlSW1hZ2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TmluZVBpZWNlSW1h
Z2U6Ok5pbmVQaWVjZUltYWdlKToKKyAgICAgICAgKFdlYkNvcmU6Ok5pbmVQaWVjZUltYWdlOjpE
YXRhOjpEYXRhKToKKyAgICAgICAgKFdlYkNvcmU6Ok5pbmVQaWVjZUltYWdlOjpEYXRhOjpjcmVh
dGUpOgorICAgICAgICAoV2ViQ29yZTo6TmluZVBpZWNlSW1hZ2U6OkRhdGE6Om9wZXJhdG9yPT0g
Y29uc3QpOgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9OaW5lUGllY2VJbWFnZS5oOgorICAg
ICAgICAoV2ViQ29yZTo6TmluZVBpZWNlSW1hZ2U6Om92ZXJyaWRlc0JvcmRlcldpZHRocyBjb25z
dCk6CisgICAgICAgIChXZWJDb3JlOjpOaW5lUGllY2VJbWFnZTo6c2V0T3ZlcnJpZGVzQm9yZGVy
V2lkdGhzKToKKyAgICAgICAgKFdlYkNvcmU6Ok5pbmVQaWVjZUltYWdlOjpjb3B5Qm9yZGVyU2xp
Y2VzRnJvbSk6CisgICAgICAgIEFkZCBmbGFnIGZvciBvdmVycmlkaW5nIGJvcmRlciB3aWR0aHMu
CisKKyAgICAgICAgKiByZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6UmVuZGVyU3R5bGU6OnNldEJvcmRlckltYWdlV2lkdGhPdmVycmlkZXNCb3JkZXJX
aWR0aHMpOgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oOgorICAgICAg
ICBBZGQgbWV0aG9kIGZvciBzZXR0aW5nIGZsYWcgdG8gb3ZlcnJpZGUgYm9yZGVyIHdpZHRocy4K
KworICAgICAgICAqIHN0eWxlL1Byb3BlcnR5Q2FzY2FkZS5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpTdHlsZTo6c2hvdWxkQXBwbHlQcm9wZXJ0eUluUGFyc2VPcmRlcik6CisgICAgICAgIFN0b3Ag
ZGVmZXJyaW5nIGJvcmRlciBpbWFnZSBwcm9wZXJ0aWVzLiBUaGF0IHdhcyBwcmV2aW91c2x5IG5l
ZWRlZCBzaW5jZQorICAgICAgICAtd2Via2l0LWJvcmRlci1pbWFnZSB3YXMgYSBsb25naGFuZCBz
aGFyaW5nIGEgY29tcHV0ZWQgdmFsdWUgd2l0aCB0aGUKKyAgICAgICAgYm9yZGVyLWltYWdlIGxv
bmdoYW5kcy4gTm8gbG9uZ2VyIG5lZWRlZCBzaW5jZSAtd2Via2l0LWJvcmRlci1pbWFnZSBpcwor
ICAgICAgICBub3cgYSBob3J0aGFuZC4KKworICAgICAgICAqIHN0eWxlL1N0eWxlQnVpbGRlckNv
bnZlcnRlci5oOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGU6OkJ1aWxkZXJDb252ZXJ0ZXI6OmNv
bnZlcnRCb3JkZXJNYXNrKToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlOjpCdWlsZGVyQ29udmVy
dGVyOjpjb252ZXJ0UmVmbGVjdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6QnVpbGRl
ckNvbnZlcnRlcjo6Y29udmVydEJvcmRlckltYWdlKTogRGVsZXRlZC4KKyAgICAgICAgUmVtb3Zl
IGNvZGUgbm8gbG9uZ2VyIG5lZWRlZC4KKworICAgICAgICAqIHN0eWxlL1N0eWxlQnVpbGRlckN1
c3RvbS5oOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGU6OkFwcGx5UHJvcGVydHlCb3JkZXJJbWFn
ZU1vZGlmaWVyOjphcHBseUluaXRpYWxWYWx1ZSk6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6
QXBwbHlQcm9wZXJ0eUJvcmRlckltYWdlTW9kaWZpZXI6OmFwcGx5VmFsdWUpOgorICAgICAgICBI
YW5kbGUgYm9yZGVyLWltYWdlLXdpZHRoIGFzIGEgQ1NTQm9yZGVySW1hZ2VXaWR0aFZhbHVlLgor
CiAyMDIyLTAzLTIzICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KIAogICAgICAg
ICBWaWRlb0ZyYW1lIGRvZXMgbm90IG5lZWQgdG8gaW5oZXJpdCBmcm9tIE1lZGlhU2FtcGxlCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dCBiL1NvdXJjZS9XZWJDb3JlL1Nv
dXJjZXMudHh0CmluZGV4IDQ3YWM1M2RmZjIxZjMyODdjNDUyOGIzZTBlNDdjOTdmNzFiYjhhYjgu
LjhmZTc0MjViZDEzM2Y4ZjM4NDRkYWRlM2M3NzE3NjU4YzdjZGQ2NDUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0CisrKyBiL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0
CkBAIC03MTIsNiArNzEyLDcgQEAgY3NzL0NTU0FzcGVjdFJhdGlvVmFsdWUuY3BwCiBjc3MvQ1NT
QmFzaWNTaGFwZXMuY3BwCiBjc3MvQ1NTQm9yZGVySW1hZ2UuY3BwCiBjc3MvQ1NTQm9yZGVySW1h
Z2VTbGljZVZhbHVlLmNwcAorY3NzL0NTU0JvcmRlckltYWdlV2lkdGhWYWx1ZS5jcHAKIGNzcy9D
U1NDYW52YXNWYWx1ZS5jcHAKIGNzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3BwCiBj
c3MvQ1NTQ29uZGl0aW9uUnVsZS5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNv
cmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNv
ZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCBkZDhlZTdiYzIxMGMxOGIzODY2OGQyZTY5OTdl
NDQyODg4YWY1MDhlLi45MmJjMDUyOWNmMGUzMzljZGQ2ZDEzNDEzNDU5MGQ3MGJjYzdiZGQwIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
CkBAIC0xMDE1LDYgKzEwMTUsNyBAQAogCQkzMzUwM0M5QTEwMTc5QTc0MDAzQjQ3RTEgLyogTm90
aWZpY2F0aW9uQ2xpZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSAzMzUwM0M5OTEwMTc5QTc0MDAzQjQ3RTEgLyogTm90aWZpY2F0aW9uQ2xpZW50Lmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMzM1MDND
QTQxMDE3OUFENzAwM0I0N0UxIC8qIEpTTm90aWZpY2F0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMzUwM0NBMDEwMTc5QUQ3MDAzQjQ3RTEgLyog
SlNOb3RpZmljYXRpb24uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OwogCQkzM0QwMjEyRDEzMURCMzdCMDA0MDkxQTggLyogQ29va2llU3RvcmFnZS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTEzRjAxRUExMjcw
RTEwRDAwREZCQTcxIC8qIENvb2tpZVN0b3JhZ2UuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OworCQkzNTdCNTgxRDI3Rjc5MDlBMDBCOTNFNEUgLyogQ1NT
Qm9yZGVySW1hZ2VXaWR0aFZhbHVlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSAzNTdCNTgxQzI3Rjc5MDlBMDBCOTNFNEUgLyogQ1NTQm9yZGVySW1hZ2VX
aWR0aFZhbHVlLmggKi87IH07CiAJCTM1Qzc0RkRCMjI4QTFFRjYwMDBDMjFBMCAvKiBDU1NHcmlk
SW50ZWdlclJlcGVhdFZhbHVlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSAzNUM3NEZENzIyOEExOUE2MDAwQzIxQTAgLyogQ1NTR3JpZEludGVnZXJSZXBl
YXRWYWx1ZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CiAJCTM3MTdEN0U4MTdFQ0M1OTEwMDNDMjc2RCAvKiBleHRyYWN0LWxvY2FsaXphYmxlLXN0cmlu
Z3MucGwgaW4gQ29weSBTY3JpcHRzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDM3MTdEN0U1MTdFQ0MzQTYwMDNDMjc2RCAvKiBleHRyYWN0LWxvY2FsaXphYmxlLXN0cmluZ3Mu
cGwgKi87IH07CiAJCTM3MUU2NUNDMTM2NjFFREMwMEJFRURCMCAvKiBQYWdlU2VyaWFsaXplci5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzcxRTY1Q0Ix
MzY2MUVEQzAwQkVFREIwIC8qIFBhZ2VTZXJpYWxpemVyLmggKi87IH07CkBAIC04NDY3LDYgKzg0
NjgsOCBAQAogCQkzMzUwM0M5RjEwMTc5QUQ3MDAzQjQ3RTEgLyogSlNOb3RpZmljYXRpb24uY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNOb3RpZmljYXRpb24uY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkzMzUwM0NBMDEwMTc5QUQ3MDAzQjQ3RTEg
LyogSlNOb3RpZmljYXRpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNO
b3RpZmljYXRpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzM1MDNDQzYxMDE3
QTFCMTAwM0I0N0UxIC8qIE5vdGlmaWNhdGlvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBOb3RpZmljYXRpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQkzNTdCNTgxQzI3Rjc5MDlBMDBCOTNFNEUgLyogQ1NTQm9yZGVySW1hZ2VXaWR0aFZhbHVl
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENTU0JvcmRlckltYWdlV2lkdGhW
YWx1ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzNTdCNTgxRTI3Rjc5MEJEMDBC
OTNFNEUgLyogQ1NTQm9yZGVySW1hZ2VXaWR0aFZhbHVlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IENTU0JvcmRlckltYWdlV2lkdGhWYWx1ZS5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTM1Qzc0RkQzMjI4QTE5MTIwMDBDMjFBMCAvKiBDU1NHcmlk
SW50ZWdlclJlcGVhdFZhbHVlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENTU0dyaWRJbnRlZ2Vy
UmVwZWF0VmFsdWUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkzNUM3NEZENzIy
OEExOUE2MDAwQzIxQTAgLyogQ1NTR3JpZEludGVnZXJSZXBlYXRWYWx1ZS5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBDU1NHcmlkSW50ZWdlclJlcGVhdFZhbHVlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTM2NjJGOTg0MDQ3Q0VEQkU1REREQUZBQSAvKiBSZW5kZXJNYXRoTUxNZW5jbG9zZS5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZW5kZXJNYXRoTUxNZW5j
bG9zZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0zMTcwNCw2ICszMTcwNyw4
IEBACiAJCQkJRTE2QTg0RjgxNEM4NUNDQzAwMjk3N0RGIC8qIENTU0JvcmRlckltYWdlLmggKi8s
CiAJCQkJQkMyNzRCMzAxNDBFQkVEODAwRUFERkE2IC8qIENTU0JvcmRlckltYWdlU2xpY2VWYWx1
ZS5jcHAgKi8sCiAJCQkJQkMyNzRCMkUxNDBFQkVCMjAwRUFERkE2IC8qIENTU0JvcmRlckltYWdl
U2xpY2VWYWx1ZS5oICovLAorCQkJCTM1N0I1ODFFMjdGNzkwQkQwMEI5M0U0RSAvKiBDU1NCb3Jk
ZXJJbWFnZVdpZHRoVmFsdWUuY3BwICovLAorCQkJCTM1N0I1ODFDMjdGNzkwOUEwMEI5M0U0RSAv
KiBDU1NCb3JkZXJJbWFnZVdpZHRoVmFsdWUuaCAqLywKIAkJCQlCQzYwNEE0MjBEQjU2MzRFMDAy
MDQ3MzkgLyogQ1NTQ2FudmFzVmFsdWUuY3BwICovLAogCQkJCUJDNjA0OUNCMERCNTYwQzIwMDIw
NDczOSAvKiBDU1NDYW52YXNWYWx1ZS5oICovLAogCQkJCUJDRUE0NzdDMDk3Q0FBQzgwMDk0QzlF
NCAvKiBDU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3BwICovLApAQCAtMzQxMTMsNiArMzQx
MTgsNyBAQAogCQkJCUZCRDZBRjg4MTVFRjI1QzkwMDhCNzExMCAvKiBDU1NCYXNpY1NoYXBlcy5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJRTE2QTg0RkExNEM4NUNDQzAwMjk3N0RGIC8qIENTU0JvcmRl
ckltYWdlLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzI3NEIyRjE0MEVCRUIyMDBFQURGQTYgLyog
Q1NTQm9yZGVySW1hZ2VTbGljZVZhbHVlLmggaW4gSGVhZGVycyAqLywKKwkJCQkzNTdCNTgxRDI3
Rjc5MDlBMDBCOTNFNEUgLyogQ1NTQm9yZGVySW1hZ2VXaWR0aFZhbHVlLmggaW4gSGVhZGVycyAq
LywKIAkJCQlCQ0YxNjQ2QTI2NjJBOTM0MDAwMkY3RUYgLyogQ1NTQ2FsY0NhdGVnb3J5TWFwcGlu
Zy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkNGMTY0NTEyNjYyOUZDNzAwMDJGN0VGIC8qIENTU0Nh
bGNFeHByZXNzaW9uTm9kZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkNGMTY0NjUyNjYyQTMxQTAw
MDJGN0VGIC8qIENTU0NhbGNFeHByZXNzaW9uTm9kZVBhcnNlci5oIGluIEhlYWRlcnMgKi8sCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vQ1NTUHJvcGVydHlBbmltYXRpb24u
Y3BwIGIvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0NTU1Byb3BlcnR5QW5pbWF0aW9uLmNwcApp
bmRleCA2Zjc0YzlmMzQ4MGJlMjc5ZDhkZmM4OWQwNDFhZWNkMjg5ZmY5ZmRlLi5iYTY3MWQzZmQ4
ODcyNTE2MjM5Yjc2NmZmZWMzMzAxNDA0NGU4NGY0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9hbmltYXRpb24vQ1NTUHJvcGVydHlBbmltYXRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2FuaW1hdGlvbi9DU1NQcm9wZXJ0eUFuaW1hdGlvbi5jcHAKQEAgLTU0OSw3ICs1NDksNyBAQCBz
dGF0aWMgaW5saW5lIE5pbmVQaWVjZUltYWdlIGJsZW5kRnVuYyhjb25zdCBOaW5lUGllY2VJbWFn
ZSYgZnJvbSwgY29uc3QgTmluZVBpZQogCiAgICAgLy8gRklYTUUgKDc0MTEyKTogU3VwcG9ydCB0
cmFuc2l0aW9uaW5nIGJldHdlZW4gTmluZVBpZWNlSW1hZ2VzIHRoYXQgZGlmZmVyIGJ5IG1vcmUg
dGhhbiBpbWFnZSBjb250ZW50LgogCi0gICAgaWYgKGZyb20uaW1hZ2VTbGljZXMoKSAhPSB0by5p
bWFnZVNsaWNlcygpIHx8IGZyb20uYm9yZGVyU2xpY2VzKCkgIT0gdG8uYm9yZGVyU2xpY2VzKCkg
fHwgZnJvbS5vdXRzZXQoKSAhPSB0by5vdXRzZXQoKSB8fCBmcm9tLmZpbGwoKSAhPSB0by5maWxs
KCkgfHwgZnJvbS5ob3Jpem9udGFsUnVsZSgpICE9IHRvLmhvcml6b250YWxSdWxlKCkgfHwgZnJv
bS52ZXJ0aWNhbFJ1bGUoKSAhPSB0by52ZXJ0aWNhbFJ1bGUoKSkKKyAgICBpZiAoZnJvbS5pbWFn
ZVNsaWNlcygpICE9IHRvLmltYWdlU2xpY2VzKCkgfHwgZnJvbS5ib3JkZXJTbGljZXMoKSAhPSB0
by5ib3JkZXJTbGljZXMoKSB8fCBmcm9tLm91dHNldCgpICE9IHRvLm91dHNldCgpIHx8IGZyb20u
ZmlsbCgpICE9IHRvLmZpbGwoKSB8fCBmcm9tLm92ZXJyaWRlc0JvcmRlcldpZHRocygpICE9IHRv
Lm92ZXJyaWRlc0JvcmRlcldpZHRocygpIHx8IGZyb20uaG9yaXpvbnRhbFJ1bGUoKSAhPSB0by5o
b3Jpem9udGFsUnVsZSgpIHx8IGZyb20udmVydGljYWxSdWxlKCkgIT0gdG8udmVydGljYWxSdWxl
KCkpCiAgICAgICAgIHJldHVybiB0bzsKIAogICAgIGlmIChhdXRvKiByZW5kZXJlciA9IGNvbnRl
eHQuY2xpZW50LT5yZW5kZXJlcigpKSB7CkBAIC01NTgsNyArNTU4LDcgQEAgc3RhdGljIGlubGlu
ZSBOaW5lUGllY2VJbWFnZSBibGVuZEZ1bmMoY29uc3QgTmluZVBpZWNlSW1hZ2UmIGZyb20sIGNv
bnN0IE5pbmVQaWUKICAgICB9CiAKICAgICByZXR1cm4gTmluZVBpZWNlSW1hZ2UoYmxlbmRGdW5j
KGZyb20uaW1hZ2UoKSwgdG8uaW1hZ2UoKSwgY29udGV4dCksCi0gICAgICAgIGZyb20uaW1hZ2VT
bGljZXMoKSwgZnJvbS5maWxsKCksIGZyb20uYm9yZGVyU2xpY2VzKCksIGZyb20ub3V0c2V0KCks
IGZyb20uaG9yaXpvbnRhbFJ1bGUoKSwgZnJvbS52ZXJ0aWNhbFJ1bGUoKSk7CisgICAgICAgIGZy
b20uaW1hZ2VTbGljZXMoKSwgZnJvbS5maWxsKCksIGZyb20uYm9yZGVyU2xpY2VzKCksIGZyb20u
b3ZlcnJpZGVzQm9yZGVyV2lkdGhzKCksIGZyb20ub3V0c2V0KCksIGZyb20uaG9yaXpvbnRhbFJ1
bGUoKSwgZnJvbS52ZXJ0aWNhbFJ1bGUoKSk7CiB9CiAKICNpZiBFTkFCTEUoVkFSSUFUSU9OX0ZP
TlRTKQpAQCAtMTAxNCw2ICsxMDE0LDcgQEAgcHVibGljOgogICAgICAgICBJc0xlbmd0aFBlcmNl
bnRhZ2UgICAgICA9IDEgPDwgMCwKICAgICAgICAgVXNlc0ZpbGxLZXl3b3JkICAgICAgICAgPSAx
IDw8IDEsCiAgICAgICAgIEFsbG93c05lZ2F0aXZlVmFsdWVzICAgID0gMSA8PCAyLAorICAgICAg
ICBNYXlPdmVycmlkZUJvcmRlcldpZHRocyA9IDEgPDwgMywKICAgICB9OwogICAgIExlbmd0aEJv
eFByb3BlcnR5V3JhcHBlcihDU1NQcm9wZXJ0eUlEIHByb3BlcnR5LCBjb25zdCBMZW5ndGhCb3gm
IChSZW5kZXJTdHlsZTo6KmdldHRlcikoKSBjb25zdCwgdm9pZCAoUmVuZGVyU3R5bGU6OipzZXR0
ZXIpKExlbmd0aEJveCYmKSwgT3B0aW9uU2V0PEZsYWdzPiBmbGFncyA9IHsgfSkKICAgICAgICAg
OiBQcm9wZXJ0eVdyYXBwZXJHZXR0ZXI8Y29uc3QgTGVuZ3RoQm94Jj4ocHJvcGVydHksIGdldHRl
cikKQEAgLTEwMjcsOSArMTAyOCwxOSBAQCBwdWJsaWM6CiAgICAgICAgIGlmIChtX2ZsYWdzLmNv
bnRhaW5zKEZsYWdzOjpVc2VzRmlsbEtleXdvcmQpICYmIGZyb20uYm9yZGVySW1hZ2UoKS5maWxs
KCkgIT0gdG8uYm9yZGVySW1hZ2UoKS5maWxsKCkpCiAgICAgICAgICAgICByZXR1cm4gZmFsc2U7
CiAKKyAgICAgICAgYm9vbCBpc0xlbmd0aFBlcmNlbnRhZ2UgPSBtX2ZsYWdzLmNvbnRhaW5zKEZs
YWdzOjpJc0xlbmd0aFBlcmNlbnRhZ2UpOworCisgICAgICAgIGlmIChtX2ZsYWdzLmNvbnRhaW5z
KEZsYWdzOjpNYXlPdmVycmlkZUJvcmRlcldpZHRocykpIHsKKyAgICAgICAgICAgIGJvb2wgb3Zl
cnJpZGVzQm9yZGVyV2lkdGhzID0gZnJvbS5ib3JkZXJJbWFnZSgpLm92ZXJyaWRlc0JvcmRlcldp
ZHRocygpOworICAgICAgICAgICAgaWYgKG92ZXJyaWRlc0JvcmRlcldpZHRocyAhPSB0by5ib3Jk
ZXJJbWFnZSgpLm92ZXJyaWRlc0JvcmRlcldpZHRocygpKQorICAgICAgICAgICAgICAgIHJldHVy
biBmYWxzZTsKKyAgICAgICAgICAgIC8vIEV2ZW4gaWYgdGhpcyBwcm9wZXJ0eSBhY2NlcHRzIDxs
ZW5ndGgtcGVyY2VudGFnZT4sIGJvcmRlciB3aWR0aHMgY2FuIG9ubHkgYmUgYSA8bGVuZ3RoPi4K
KyAgICAgICAgICAgIGlmIChvdmVycmlkZXNCb3JkZXJXaWR0aHMpCisgICAgICAgICAgICAgICAg
aXNMZW5ndGhQZXJjZW50YWdlID0gZmFsc2U7CisgICAgICAgIH0KKwogICAgICAgICBhdXRvJiBm
cm9tTGVuZ3RoQm94ID0gdmFsdWUoZnJvbSk7CiAgICAgICAgIGF1dG8mIHRvTGVuZ3RoQm94ID0g
dmFsdWUodG8pOwotICAgICAgICBib29sIGlzTGVuZ3RoUGVyY2VudGFnZSA9IG1fZmxhZ3MuY29u
dGFpbnMoRmxhZ3M6OklzTGVuZ3RoUGVyY2VudGFnZSk7CiAgICAgICAgIHJldHVybiBjYW5JbnRl
cnBvbGF0ZUxlbmd0aHMoZnJvbUxlbmd0aEJveC50b3AoKSwgdG9MZW5ndGhCb3gudG9wKCksIGlz
TGVuZ3RoUGVyY2VudGFnZSkKICAgICAgICAgICAgICYmIGNhbkludGVycG9sYXRlTGVuZ3Rocyhm
cm9tTGVuZ3RoQm94LnJpZ2h0KCksIHRvTGVuZ3RoQm94LnJpZ2h0KCksIGlzTGVuZ3RoUGVyY2Vu
dGFnZSkKICAgICAgICAgICAgICYmIGNhbkludGVycG9sYXRlTGVuZ3Rocyhmcm9tTGVuZ3RoQm94
LmJvdHRvbSgpLCB0b0xlbmd0aEJveC5ib3R0b20oKSwgaXNMZW5ndGhQZXJjZW50YWdlKQpAQCAt
MTA0MCw2ICsxMDUxLDggQEAgcHVibGljOgogICAgIHsKICAgICAgICAgaWYgKG1fZmxhZ3MuY29u
dGFpbnMoRmxhZ3M6OlVzZXNGaWxsS2V5d29yZCkpCiAgICAgICAgICAgICBkZXN0aW5hdGlvbi5z
ZXRCb3JkZXJJbWFnZVNsaWNlRmlsbCgoIWNvbnRleHQucHJvZ3Jlc3MgfHwgIWNvbnRleHQuaXNE
aXNjcmV0ZSA/IGZyb20gOiB0bykuYm9yZGVySW1hZ2UoKS5maWxsKCkpOworICAgICAgICBpZiAo
bV9mbGFncy5jb250YWlucyhGbGFnczo6TWF5T3ZlcnJpZGVCb3JkZXJXaWR0aHMpKQorICAgICAg
ICAgICAgZGVzdGluYXRpb24uc2V0Qm9yZGVySW1hZ2VXaWR0aE92ZXJyaWRlc0JvcmRlcldpZHRo
cygoIWNvbnRleHQucHJvZ3Jlc3MgfHwgIWNvbnRleHQuaXNEaXNjcmV0ZSA/IGZyb20gOiB0byku
Ym9yZGVySW1hZ2UoKS5vdmVycmlkZXNCb3JkZXJXaWR0aHMoKSk7CiAgICAgICAgIGlmIChjb250
ZXh0LmlzRGlzY3JldGUpIHsKICAgICAgICAgICAgIC8vIEl0IGlzIGltcG9ydGFudCB3ZSBoYXZl
IHRoaXMgbm9uLWludGVycG9sYXRlZCBzaG9ydGN1dCBiZWNhdXNlIGNlcnRhaW4gQ1NTIHByb3Bl
cnRpZXMKICAgICAgICAgICAgIC8vIHJlcHJlc2VudGVkIGFzIGEgTGVuZ3RoQm94LCBzdWNoIGFz
IGJvcmRlci1pbWFnZS1zbGljZSwgZG9uJ3Qga25vdyBob3cgdG8gZGVhbCB3aXRoCkBAIC0zMDA0
LDcgKzMwMTcsNyBAQCBDU1NQcm9wZXJ0eUFuaW1hdGlvbldyYXBwZXJNYXA6OkNTU1Byb3BlcnR5
QW5pbWF0aW9uV3JhcHBlck1hcCgpCiAKICAgICAgICAgbmV3IFN0eWxlSW1hZ2VQcm9wZXJ0eVdy
YXBwZXIoQ1NTUHJvcGVydHlCb3JkZXJJbWFnZVNvdXJjZSwgJlJlbmRlclN0eWxlOjpib3JkZXJJ
bWFnZVNvdXJjZSwgJlJlbmRlclN0eWxlOjpzZXRCb3JkZXJJbWFnZVNvdXJjZSksCiAgICAgICAg
IG5ldyBMZW5ndGhCb3hQcm9wZXJ0eVdyYXBwZXIoQ1NTUHJvcGVydHlCb3JkZXJJbWFnZVNsaWNl
LCAmUmVuZGVyU3R5bGU6OmJvcmRlckltYWdlU2xpY2VzLCAmUmVuZGVyU3R5bGU6OnNldEJvcmRl
ckltYWdlU2xpY2VzLCB7IExlbmd0aEJveFByb3BlcnR5V3JhcHBlcjo6RmxhZ3M6OlVzZXNGaWxs
S2V5d29yZCB9KSwKLSAgICAgICAgbmV3IExlbmd0aEJveFByb3BlcnR5V3JhcHBlcihDU1NQcm9w
ZXJ0eUJvcmRlckltYWdlV2lkdGgsICZSZW5kZXJTdHlsZTo6Ym9yZGVySW1hZ2VXaWR0aCwgJlJl
bmRlclN0eWxlOjpzZXRCb3JkZXJJbWFnZVdpZHRoLCB7IExlbmd0aEJveFByb3BlcnR5V3JhcHBl
cjo6RmxhZ3M6OklzTGVuZ3RoUGVyY2VudGFnZSB9KSwKKyAgICAgICAgbmV3IExlbmd0aEJveFBy
b3BlcnR5V3JhcHBlcihDU1NQcm9wZXJ0eUJvcmRlckltYWdlV2lkdGgsICZSZW5kZXJTdHlsZTo6
Ym9yZGVySW1hZ2VXaWR0aCwgJlJlbmRlclN0eWxlOjpzZXRCb3JkZXJJbWFnZVdpZHRoLCB7IExl
bmd0aEJveFByb3BlcnR5V3JhcHBlcjo6RmxhZ3M6OklzTGVuZ3RoUGVyY2VudGFnZSwgTGVuZ3Ro
Qm94UHJvcGVydHlXcmFwcGVyOjpGbGFnczo6TWF5T3ZlcnJpZGVCb3JkZXJXaWR0aHMgfSksCiAg
ICAgICAgIG5ldyBMZW5ndGhCb3hQcm9wZXJ0eVdyYXBwZXIoQ1NTUHJvcGVydHlCb3JkZXJJbWFn
ZU91dHNldCwgJlJlbmRlclN0eWxlOjpib3JkZXJJbWFnZU91dHNldCwgJlJlbmRlclN0eWxlOjpz
ZXRCb3JkZXJJbWFnZU91dHNldCksCiAKICAgICAgICAgbmV3IFN0eWxlSW1hZ2VQcm9wZXJ0eVdy
YXBwZXIoQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2VTb3VyY2UsICZSZW5kZXJTdHlsZTo6
bWFza0JveEltYWdlU291cmNlLCAmUmVuZGVyU3R5bGU6OnNldE1hc2tCb3hJbWFnZVNvdXJjZSks
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQm9yZGVySW1hZ2VXaWR0aFZhbHVl
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NCb3JkZXJJbWFnZVdpZHRoVmFsdWUuY3BwCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLmQxMjQ3M2ZkMzIwODFkOTNkYWFlNzg4MWMyYjVjOTkyOTUxZjU0ZDcKLS0tIC9k
ZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQm9yZGVySW1hZ2VXaWR0aFZhbHVl
LmNwcApAQCAtMCwwICsxLDU2IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIyIElnYWxpYSBT
LkwuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
KyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwor
ICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJ
TUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAq
IEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUws
IEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNF
UlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElO
VEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9V
VCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIK
KyNpbmNsdWRlICJDU1NCb3JkZXJJbWFnZVdpZHRoVmFsdWUuaCIKKworI2luY2x1ZGUgIlJlY3Qu
aCIKKyNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUg
eworCitDU1NCb3JkZXJJbWFnZVdpZHRoVmFsdWU6OkNTU0JvcmRlckltYWdlV2lkdGhWYWx1ZShS
ZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+JiYgd2lkdGhzLCBib29sIG92ZXJyaWRlc0JvcmRlcldp
ZHRocykKKyAgICA6IENTU1ZhbHVlKEJvcmRlckltYWdlV2lkdGhDbGFzcykKKyAgICAsIG1fd2lk
dGhzKFdURk1vdmUod2lkdGhzKSkKKyAgICAsIG1fb3ZlcnJpZGVzQm9yZGVyV2lkdGhzKG92ZXJy
aWRlc0JvcmRlcldpZHRocykKK3sKK30KKworU3RyaW5nIENTU0JvcmRlckltYWdlV2lkdGhWYWx1
ZTo6Y3VzdG9tQ1NTVGV4dCgpIGNvbnN0Cit7CisgICAgLy8gYm9yZGVyLWltYWdlLXdpZHRoIGNh
bid0IHNldCBtX292ZXJyaWRlc0JvcmRlcldpZHRocyB0byB0cnVlIGJ5IGl0c2VsZiwgc28gc2Vy
aWFsaXplIGFzIGVtcHR5IHN0cmluZy4KKyAgICAvLyBJdCBjYW4gb25seSBiZSB0cnVlIHZpYSB0
aGUgLXdlYmtpdC1ib3JkZXItaW1hZ2Ugc2hvcnRoYW5kLCB3aG9zZSBzZXJpYWxpemF0aW9uIHdp
bGwgdW53cmFwIHdpZHRocygpIGlmIG5lZWRlZC4KKyAgICBpZiAobV9vdmVycmlkZXNCb3JkZXJX
aWR0aHMpCisgICAgICAgIHJldHVybiBlbXB0eVN0cmluZygpOworCisgICAgcmV0dXJuIG1fd2lk
dGhzLT5jc3NUZXh0KCk7Cit9CisKK2Jvb2wgQ1NTQm9yZGVySW1hZ2VXaWR0aFZhbHVlOjplcXVh
bHMoY29uc3QgQ1NTQm9yZGVySW1hZ2VXaWR0aFZhbHVlJiBvdGhlcikgY29uc3QKK3sKKyAgICBy
ZXR1cm4gbV9vdmVycmlkZXNCb3JkZXJXaWR0aHMgPT0gb3RoZXIubV9vdmVycmlkZXNCb3JkZXJX
aWR0aHMgJiYgY29tcGFyZUNTU1ZhbHVlUHRyKG1fd2lkdGhzLCBvdGhlci5tX3dpZHRocyk7Cit9
CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nz
cy9DU1NCb3JkZXJJbWFnZVdpZHRoVmFsdWUuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NCb3Jk
ZXJJbWFnZVdpZHRoVmFsdWUuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zY2UwMzljZGMyODA1YTRhN2M4ODZiMDdi
N2UwNmExNTU2YTZlZDI5Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NT
U0JvcmRlckltYWdlV2lkdGhWYWx1ZS5oCkBAIC0wLDAgKzEsNTcgQEAKKy8qCisgKiBDb3B5cmln
aHQgKEMpIDIwMjIgSWdhbGlhIFMuTC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
CisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAq
CisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05U
UklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAq
IFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1Ig
SVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1B
R0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNV
QlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRT
OyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5Z
IFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElB
QklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBB
UklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKwor
I3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlICJDU1NQcmltaXRpdmVWYWx1ZS5oIgorI2luY2x1ZGUg
PHd0Zi9SZWZQdHIuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBSZWN0OworCitj
bGFzcyBDU1NCb3JkZXJJbWFnZVdpZHRoVmFsdWUgZmluYWwgOiBwdWJsaWMgQ1NTVmFsdWUgewor
cHVibGljOgorICAgIHN0YXRpYyBSZWY8Q1NTQm9yZGVySW1hZ2VXaWR0aFZhbHVlPiBjcmVhdGUo
UmVmUHRyPENTU1ByaW1pdGl2ZVZhbHVlPiYmIHdpZHRocywgYm9vbCBvdmVycmlkZXNCb3JkZXJX
aWR0aHMpCisgICAgeworICAgICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBDU1NCb3JkZXJJbWFn
ZVdpZHRoVmFsdWUoV1RGTW92ZSh3aWR0aHMpLCBvdmVycmlkZXNCb3JkZXJXaWR0aHMpKTsKKyAg
ICB9CisKKyAgICBTdHJpbmcgY3VzdG9tQ1NTVGV4dCgpIGNvbnN0OworCisgICAgUXVhZCogd2lk
dGhzKCkgY29uc3QgeyByZXR1cm4gbV93aWR0aHMgPyBtX3dpZHRocy0+cXVhZFZhbHVlKCkgOiBu
dWxscHRyOyB9CisKKyAgICBib29sIGVxdWFscyhjb25zdCBDU1NCb3JkZXJJbWFnZVdpZHRoVmFs
dWUmKSBjb25zdDsKKworICAgIFJlZlB0cjxDU1NQcmltaXRpdmVWYWx1ZT4gbV93aWR0aHM7Cisg
ICAgYm9vbCBtX292ZXJyaWRlc0JvcmRlcldpZHRoczsKKworcHJpdmF0ZToKKyAgICBDU1NCb3Jk
ZXJJbWFnZVdpZHRoVmFsdWUoUmVmUHRyPENTU1ByaW1pdGl2ZVZhbHVlPiYmIHdpZHRocywgYm9v
bCBvdmVycmlkZXNCb3JkZXJXaWR0aHMpOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQor
CitTUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0NTU19WQUxVRShDU1NCb3JkZXJJbWFnZVdpZHRoVmFs
dWUsIGlzQm9yZGVySW1hZ2VXaWR0aFZhbHVlKCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9jc3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nz
cy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3BwCmluZGV4IDBiNTdhMWYyNmQwYTVlYjJj
YjVhYjNlOTBmMmM2OWI5YjhhNWIzOWIuLjYxOGMwNWNhMjFkYmVmODhjYmIwNDdlNjkwZjM3MDVm
Nzc2YjQxYzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDb21wdXRlZFN0eWxl
RGVjbGFyYXRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDb21wdXRlZFN0eWxl
RGVjbGFyYXRpb24uY3BwCkBAIC0yMjQsNyArMjI0LDcgQEAgc3RhdGljIFJlZjxDU1NWYWx1ZT4g
dmFsdWVGb3JOaW5lUGllY2VJbWFnZVJlcGVhdChjb25zdCBOaW5lUGllY2VJbWFnZSYgaW1hZ2Up
CiAgICAgcmV0dXJuIGNzc1ZhbHVlUG9vbC5jcmVhdGVWYWx1ZShQYWlyOjpjcmVhdGUoV1RGTW92
ZShob3Jpem9udGFsUmVwZWF0KSwgV1RGTW92ZSh2ZXJ0aWNhbFJlcGVhdCkpKTsKIH0KIAotc3Rh
dGljIFJlZjxDU1NWYWx1ZT4gdmFsdWVGb3JOaW5lUGllY2VJbWFnZShjb25zdCBOaW5lUGllY2VJ
bWFnZSYgaW1hZ2UsIGNvbnN0IFJlbmRlclN0eWxlJiBzdHlsZSkKK3N0YXRpYyBSZWZQdHI8Q1NT
VmFsdWU+IHZhbHVlRm9yTmluZVBpZWNlSW1hZ2UoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eUlELCBj
b25zdCBOaW5lUGllY2VJbWFnZSYgaW1hZ2UsIGNvbnN0IFJlbmRlclN0eWxlJiBzdHlsZSkKIHsK
ICAgICBpZiAoIWltYWdlLmhhc0ltYWdlKCkpCiAgICAgICAgIHJldHVybiBDU1NWYWx1ZVBvb2w6
OnNpbmdsZXRvbigpLmNyZWF0ZUlkZW50aWZpZXJWYWx1ZShDU1NWYWx1ZU5vbmUpOwpAQCAtMjMz
LDEwICsyMzMsMTcgQEAgc3RhdGljIFJlZjxDU1NWYWx1ZT4gdmFsdWVGb3JOaW5lUGllY2VJbWFn
ZShjb25zdCBOaW5lUGllY2VJbWFnZSYgaW1hZ2UsIGNvbnN0IFIKICAgICBpZiAoaW1hZ2UuaW1h
Z2UoKSkKICAgICAgICAgaW1hZ2VWYWx1ZSA9IGltYWdlLmltYWdlKCktPmNzc1ZhbHVlKCk7CiAK
KyAgICAvLyAtd2Via2l0LWJvcmRlci1pbWFnZSBoYXMgYSBsZWdhY3kgYmVoYXZpb3IgdGhhdCBt
YWtlcyBmaXhlZCBib3JkZXIgc2xpY2VzIGFsc28gc2V0IHRoZSBib3JkZXIgd2lkdGhzLgorICAg
IGNvbnN0IExlbmd0aEJveCYgc2xpY2VzID0gaW1hZ2UuYm9yZGVyU2xpY2VzKCk7CisgICAgYm9v
bCBvdmVycmlkZXNCb3JkZXJXaWR0aHMgPSBwcm9wZXJ0eUlEID09IENTU1Byb3BlcnR5V2Via2l0
Qm9yZGVySW1hZ2UgJiYgKHNsaWNlcy50b3AoKS5pc0ZpeGVkKCkgfHwgc2xpY2VzLnJpZ2h0KCku
aXNGaXhlZCgpIHx8IHNsaWNlcy5ib3R0b20oKS5pc0ZpeGVkKCkgfHwgc2xpY2VzLmxlZnQoKS5p
c0ZpeGVkKCkpOworICAgIGlmIChvdmVycmlkZXNCb3JkZXJXaWR0aHMgIT0gaW1hZ2Uub3ZlcnJp
ZGVzQm9yZGVyV2lkdGhzKCkpCisgICAgICAgIHJldHVybiBudWxscHRyOworCiAgICAgYXV0byBp
bWFnZVNsaWNlcyA9IHZhbHVlRm9yTmluZVBpZWNlSW1hZ2VTbGljZShpbWFnZSk7Ci0gICAgYXV0
byBib3JkZXJTbGljZXMgPSB2YWx1ZUZvck5pbmVQaWVjZUltYWdlUXVhZChpbWFnZS5ib3JkZXJT
bGljZXMoKSwgc3R5bGUpOworICAgIGF1dG8gYm9yZGVyU2xpY2VzID0gdmFsdWVGb3JOaW5lUGll
Y2VJbWFnZVF1YWQoc2xpY2VzLCBzdHlsZSk7CiAgICAgYXV0byBvdXRzZXQgPSB2YWx1ZUZvck5p
bmVQaWVjZUltYWdlUXVhZChpbWFnZS5vdXRzZXQoKSwgc3R5bGUpOwogICAgIGF1dG8gcmVwZWF0
ID0gdmFsdWVGb3JOaW5lUGllY2VJbWFnZVJlcGVhdChpbWFnZSk7CisKICAgICByZXR1cm4gY3Jl
YXRlQm9yZGVySW1hZ2VWYWx1ZShXVEZNb3ZlKGltYWdlVmFsdWUpLCBXVEZNb3ZlKGltYWdlU2xp
Y2VzKSwgV1RGTW92ZShib3JkZXJTbGljZXMpLCBXVEZNb3ZlKG91dHNldCksIFdURk1vdmUocmVw
ZWF0KSk7CiB9CiAKQEAgLTI4NCw3ICsyOTEsNyBAQCBzdGF0aWMgUmVmPENTU1ZhbHVlPiB2YWx1
ZUZvclJlZmxlY3Rpb24oY29uc3QgU3R5bGVSZWZsZWN0aW9uKiByZWZsZWN0aW9uLCBjb25zdAog
ICAgICAgICBicmVhazsKICAgICB9CiAKLSAgICByZXR1cm4gQ1NTUmVmbGVjdFZhbHVlOjpjcmVh
dGUoZGlyZWN0aW9uLnJlbGVhc2VOb25OdWxsKCksIG9mZnNldC5yZWxlYXNlTm9uTnVsbCgpLCB2
YWx1ZUZvck5pbmVQaWVjZUltYWdlKHJlZmxlY3Rpb24tPm1hc2soKSwgc3R5bGUpKTsKKyAgICBy
ZXR1cm4gQ1NTUmVmbGVjdFZhbHVlOjpjcmVhdGUoZGlyZWN0aW9uLnJlbGVhc2VOb25OdWxsKCks
IG9mZnNldC5yZWxlYXNlTm9uTnVsbCgpLCB2YWx1ZUZvck5pbmVQaWVjZUltYWdlKENTU1Byb3Bl
cnR5V2Via2l0Qm94UmVmbGVjdCwgcmVmbGVjdGlvbi0+bWFzaygpLCBzdHlsZSkpOwogfQogCiBz
dGF0aWMgUmVmPENTU1ZhbHVlTGlzdD4gY3JlYXRlUG9zaXRpb25MaXN0Rm9yTGF5ZXIoQ1NTUHJv
cGVydHlJRCBwcm9wZXJ0eUlELCBjb25zdCBGaWxsTGF5ZXImIGxheWVyLCBjb25zdCBSZW5kZXJT
dHlsZSYgc3R5bGUpCkBAIC0zNzk3LDggKzM4MDQsOSBAQCBSZWZQdHI8Q1NTVmFsdWU+IENvbXB1
dGVkU3R5bGVFeHRyYWN0b3I6OnZhbHVlRm9yUHJvcGVydHlJblN0eWxlKGNvbnN0IFJlbmRlclN0
eQogICAgICAgICB9CiAgICAgICAgIGNhc2UgQ1NTUHJvcGVydHlCYWNrZmFjZVZpc2liaWxpdHk6
CiAgICAgICAgICAgICByZXR1cm4gY3NzVmFsdWVQb29sLmNyZWF0ZUlkZW50aWZpZXJWYWx1ZSgo
c3R5bGUuYmFja2ZhY2VWaXNpYmlsaXR5KCkgPT0gQmFja2ZhY2VWaXNpYmlsaXR5OjpIaWRkZW4p
ID8gQ1NTVmFsdWVIaWRkZW4gOiBDU1NWYWx1ZVZpc2libGUpOworICAgICAgICBjYXNlIENTU1By
b3BlcnR5Qm9yZGVySW1hZ2U6CiAgICAgICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJJ
bWFnZToKLSAgICAgICAgICAgIHJldHVybiB2YWx1ZUZvck5pbmVQaWVjZUltYWdlKHN0eWxlLmJv
cmRlckltYWdlKCksIHN0eWxlKTsKKyAgICAgICAgICAgIHJldHVybiB2YWx1ZUZvck5pbmVQaWVj
ZUltYWdlKHByb3BlcnR5SUQsIHN0eWxlLmJvcmRlckltYWdlKCksIHN0eWxlKTsKICAgICAgICAg
Y2FzZSBDU1NQcm9wZXJ0eUJvcmRlckltYWdlT3V0c2V0OgogICAgICAgICAgICAgcmV0dXJuIHZh
bHVlRm9yTmluZVBpZWNlSW1hZ2VRdWFkKHN0eWxlLmJvcmRlckltYWdlKCkub3V0c2V0KCksIHN0
eWxlKTsKICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlckltYWdlUmVwZWF0OgpAQCAtMzgw
Niw5ICszODE0LDExIEBAIFJlZlB0cjxDU1NWYWx1ZT4gQ29tcHV0ZWRTdHlsZUV4dHJhY3Rvcjo6
dmFsdWVGb3JQcm9wZXJ0eUluU3R5bGUoY29uc3QgUmVuZGVyU3R5CiAgICAgICAgIGNhc2UgQ1NT
UHJvcGVydHlCb3JkZXJJbWFnZVNsaWNlOgogICAgICAgICAgICAgcmV0dXJuIHZhbHVlRm9yTmlu
ZVBpZWNlSW1hZ2VTbGljZShzdHlsZS5ib3JkZXJJbWFnZSgpKTsKICAgICAgICAgY2FzZSBDU1NQ
cm9wZXJ0eUJvcmRlckltYWdlV2lkdGg6CisgICAgICAgICAgICBpZiAoc3R5bGUuYm9yZGVySW1h
Z2UoKS5vdmVycmlkZXNCb3JkZXJXaWR0aHMoKSkKKyAgICAgICAgICAgICAgICByZXR1cm4gbnVs
bHB0cjsKICAgICAgICAgICAgIHJldHVybiB2YWx1ZUZvck5pbmVQaWVjZUltYWdlUXVhZChzdHls
ZS5ib3JkZXJJbWFnZSgpLmJvcmRlclNsaWNlcygpLCBzdHlsZSk7CiAgICAgICAgIGNhc2UgQ1NT
UHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2U6Ci0gICAgICAgICAgICByZXR1cm4gdmFsdWVGb3JO
aW5lUGllY2VJbWFnZShzdHlsZS5tYXNrQm94SW1hZ2UoKSwgc3R5bGUpOworICAgICAgICAgICAg
cmV0dXJuIHZhbHVlRm9yTmluZVBpZWNlSW1hZ2UocHJvcGVydHlJRCwgc3R5bGUubWFza0JveElt
YWdlKCksIHN0eWxlKTsKICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdE1hc2tCb3hJbWFn
ZU91dHNldDoKICAgICAgICAgICAgIHJldHVybiB2YWx1ZUZvck5pbmVQaWVjZUltYWdlUXVhZChz
dHlsZS5tYXNrQm94SW1hZ2UoKS5vdXRzZXQoKSwgc3R5bGUpOwogICAgICAgICBjYXNlIENTU1By
b3BlcnR5V2Via2l0TWFza0JveEltYWdlUmVwZWF0OgpAQCAtNDA0NCw4ICs0MDU0LDYgQEAgUmVm
UHRyPENTU1ZhbHVlPiBDb21wdXRlZFN0eWxlRXh0cmFjdG9yOjp2YWx1ZUZvclByb3BlcnR5SW5T
dHlsZShjb25zdCBSZW5kZXJTdHkKICAgICAgICAgICAgIHJldHVybiBnZXRDU1NQcm9wZXJ0eVZh
bHVlc0ZvcjRTaWRlc1Nob3J0aGFuZChib3JkZXJDb2xvclNob3J0aGFuZCgpKTsKICAgICAgICAg
Y2FzZSBDU1NQcm9wZXJ0eUJvcmRlckxlZnQ6CiAgICAgICAgICAgICByZXR1cm4gZ2V0Q1NTUHJv
cGVydHlWYWx1ZXNGb3JTaG9ydGhhbmRQcm9wZXJ0aWVzKGJvcmRlckxlZnRTaG9ydGhhbmQoKSk7
Ci0gICAgICAgIGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJJbWFnZToKLSAgICAgICAgICAgIHJldHVy
biB2YWx1ZUZvck5pbmVQaWVjZUltYWdlKHN0eWxlLmJvcmRlckltYWdlKCksIHN0eWxlKTsKICAg
ICAgICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlcklubGluZTogewogICAgICAgICAgICAgYXV0byB2
YWx1ZSA9IHByb3BlcnR5VmFsdWUoQ1NTUHJvcGVydHlCb3JkZXJJbmxpbmVTdGFydCwgRG9Ob3RV
cGRhdGVMYXlvdXQpOwogICAgICAgICAgICAgaWYgKCFjb21wYXJlQ1NTVmFsdWVQdHI8Q1NTVmFs
dWU+KHZhbHVlLCBwcm9wZXJ0eVZhbHVlKENTU1Byb3BlcnR5Qm9yZGVySW5saW5lRW5kLCBEb05v
dFVwZGF0ZUxheW91dCkpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3Bl
cnRpZXMuanNvbiBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0aWVzLmpzb24KaW5kZXgg
Nzk2OWUyYmUxMThkOWU1NDY4ZjYzNjM5OWExMjk1ZjAxNjNjNjdiZi4uMDY5ZDdlZTliZWZhOGEw
MWExYmYxMjRjNjQyYWI5YzY3NzMyN2E0NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3Nz
L0NTU1Byb3BlcnRpZXMuanNvbgorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVydGll
cy5qc29uCkBAIC01MzcwLDggKzUzNzAsMTYgQEAKICAgICAgICAgfSwKICAgICAgICAgIi13ZWJr
aXQtYm9yZGVyLWltYWdlIjogewogICAgICAgICAgICAgImNvZGVnZW4tcHJvcGVydGllcyI6IHsK
LSAgICAgICAgICAgICAgICAiaW5pdGlhbCI6ICJpbml0aWFsTmluZVBpZWNlSW1hZ2UiLAotICAg
ICAgICAgICAgICAgICJjb252ZXJ0ZXIiOiAiQm9yZGVySW1hZ2U8Q1NTUHJvcGVydHlXZWJraXRC
b3JkZXJJbWFnZT4iCisgICAgICAgICAgICAgICAgImxvbmdoYW5kcyI6IFsKKyAgICAgICAgICAg
ICAgICAgICAgImJvcmRlci1pbWFnZS1zb3VyY2UiLAorICAgICAgICAgICAgICAgICAgICAiYm9y
ZGVyLWltYWdlLXNsaWNlIiwKKyAgICAgICAgICAgICAgICAgICAgImJvcmRlci1pbWFnZS13aWR0
aCIsCisgICAgICAgICAgICAgICAgICAgICJib3JkZXItaW1hZ2Utb3V0c2V0IiwKKyAgICAgICAg
ICAgICAgICAgICAgImJvcmRlci1pbWFnZS1yZXBlYXQiCisgICAgICAgICAgICAgICAgXQorICAg
ICAgICAgICAgfSwKKyAgICAgICAgICAgICJzdGF0dXMiOiB7CisgICAgICAgICAgICAgICAgImNv
bW1lbnQiOiAiRGlmZmVycyBmcm9tIGJvcmRlci1pbWFnZSBpbiB0aGF0IGl0IGFsd2F5cyBpbmNs
dWRlcyB0aGUgJ2ZpbGwnIGtleXdvcmQgaW4gJ2JvcmRlci1pbWFnZS1zbGljZScsIGFuZCBtYWtl
cyBsZW5ndGggdmFsdWVzIGluICdib3JkZXItaW1hZ2Utd2lkdGgnIG92ZXJyaWRlIHRoZSBjb3Jy
ZXNwb25kaW5nICdib3JkZXItKi13aWR0aCcuIgogICAgICAgICAgICAgfQogICAgICAgICB9LAog
ICAgICAgICAiLXdlYmtpdC1ib3JkZXItcmFkaXVzIjogewpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvY3NzL0NTU1RvU3R5bGVNYXAuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1RvU3R5
bGVNYXAuY3BwCmluZGV4IDk0NjYwNTEzNTA1M2FiNWQzNjg3OGNjYmYzMjE1YjkzYTcxMjU4YTku
LjBjNmY0ZTE2NTY3YjQwYTIyODY5NjQ1ZGU0N2Q0ZDBjOWRmMzlmZWEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9DU1NUb1N0eWxlTWFwLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTVG9TdHlsZU1hcC5jcHAKQEAgLTMwLDYgKzMwLDcgQEAKIAogI2luY2x1ZGUgIkFuaW1h
dGlvbi5oIgogI2luY2x1ZGUgIkNTU0JvcmRlckltYWdlU2xpY2VWYWx1ZS5oIgorI2luY2x1ZGUg
IkNTU0JvcmRlckltYWdlV2lkdGhWYWx1ZS5oIgogI2luY2x1ZGUgIkNTU0ltYWdlR2VuZXJhdG9y
VmFsdWUuaCIKICNpbmNsdWRlICJDU1NJbWFnZVNldFZhbHVlLmgiCiAjaW5jbHVkZSAiQ1NTSW1h
Z2VWYWx1ZS5oIgpAQCAtNDcxLDcgKzQ3Miw3IEBAIHZvaWQgQ1NTVG9TdHlsZU1hcDo6bWFwQW5p
bWF0aW9uQ29tcG9zaXRlT3BlcmF0aW9uKEFuaW1hdGlvbiYgYW5pbWF0aW9uLCBjb25zdCBDCiAg
ICAgICAgIGFuaW1hdGlvbi5zZXRDb21wb3NpdGVPcGVyYXRpb24oKmNvbXBvc2l0ZU9wZXJhdGlv
bik7CiB9CiAKLXZvaWQgQ1NTVG9TdHlsZU1hcDo6bWFwTmluZVBpZWNlSW1hZ2UoQ1NTUHJvcGVy
dHlJRCBwcm9wZXJ0eSwgQ1NTVmFsdWUqIHZhbHVlLCBOaW5lUGllY2VJbWFnZSYgaW1hZ2UpCit2
b2lkIENTU1RvU3R5bGVNYXA6Om1hcE5pbmVQaWVjZUltYWdlKENTU1ZhbHVlKiB2YWx1ZSwgTmlu
ZVBpZWNlSW1hZ2UmIGltYWdlKQogewogICAgIC8vIElmIHdlJ3JlIG5vdCBhIHZhbHVlIGxpc3Qs
IHRoZW4gd2UgYXJlICJub25lIiBhbmQgZG9uJ3QgbmVlZCB0byBhbHRlciB0aGUgZW1wdHkgaW1h
Z2UgYXQgYWxsLgogICAgIGlmICghaXM8Q1NTVmFsdWVMaXN0Pih2YWx1ZSkpCkBAIC00OTIsOCAr
NDkzLDggQEAgdm9pZCBDU1NUb1N0eWxlTWFwOjptYXBOaW5lUGllY2VJbWFnZShDU1NQcm9wZXJ0
eUlEIHByb3BlcnR5LCBDU1NWYWx1ZSogdmFsdWUsIE4KICAgICAgICAgICAgICAgICBtYXBOaW5l
UGllY2VJbWFnZVNsaWNlKCpzbGFzaExpc3QuaXRlbSgwKSwgaW1hZ2UpOwogCiAgICAgICAgICAg
ICAvLyBNYXAgaW4gdGhlIGJvcmRlciBzbGljZXMuCi0gICAgICAgICAgICBpZiAoc2xhc2hMaXN0
Lml0ZW0oMSkpCi0gICAgICAgICAgICAgICAgaW1hZ2Uuc2V0Qm9yZGVyU2xpY2VzKG1hcE5pbmVQ
aWVjZUltYWdlUXVhZCgqc2xhc2hMaXN0Lml0ZW0oMSkpKTsKKyAgICAgICAgICAgIGlmIChpczxD
U1NCb3JkZXJJbWFnZVdpZHRoVmFsdWU+KHNsYXNoTGlzdC5pdGVtKDEpKSkKKyAgICAgICAgICAg
ICAgICBtYXBOaW5lUGllY2VJbWFnZVdpZHRoKCpzbGFzaExpc3QuaXRlbSgxKSwgaW1hZ2UpOwog
CiAgICAgICAgICAgICAvLyBNYXAgaW4gdGhlIG91dHNldC4KICAgICAgICAgICAgIGlmIChzbGFz
aExpc3QuaXRlbSgyKSkKQEAgLTUwMywyMCArNTA0LDYgQEAgdm9pZCBDU1NUb1N0eWxlTWFwOjpt
YXBOaW5lUGllY2VJbWFnZShDU1NQcm9wZXJ0eUlEIHByb3BlcnR5LCBDU1NWYWx1ZSogdmFsdWUs
IE4KICAgICAgICAgICAgIG1hcE5pbmVQaWVjZUltYWdlUmVwZWF0KGN1cnJlbnQsIGltYWdlKTsK
ICAgICAgICAgfQogICAgIH0KLQotICAgIGlmIChwcm9wZXJ0eSA9PSBDU1NQcm9wZXJ0eVdlYmtp
dEJvcmRlckltYWdlKSB7Ci0gICAgICAgIC8vIFdlIGhhdmUgdG8gcHJlc2VydmUgdGhlIGxlZ2Fj
eSBiZWhhdmlvciBvZiAtd2Via2l0LWJvcmRlci1pbWFnZSBhbmQgbWFrZSB0aGUgYm9yZGVyIHNs
aWNlcwotICAgICAgICAvLyBhbHNvIHNldCB0aGUgYm9yZGVyIHdpZHRocy4gV2UgZG9uJ3QgbmVl
ZCB0byB3b3JyeSBhYm91dCBwZXJjZW50YWdlcywgc2luY2Ugd2UgZG9uJ3QgZXZlbiBzdXBwb3J0
Ci0gICAgICAgIC8vIHRob3NlIG9uIHJlYWwgYm9yZGVycyB5ZXQuCi0gICAgICAgIGlmIChpbWFn
ZS5ib3JkZXJTbGljZXMoKS50b3AoKS5pc0ZpeGVkKCkpCi0gICAgICAgICAgICBzdHlsZSgpLT5z
ZXRCb3JkZXJUb3BXaWR0aChpbWFnZS5ib3JkZXJTbGljZXMoKS50b3AoKS52YWx1ZSgpKTsKLSAg
ICAgICAgaWYgKGltYWdlLmJvcmRlclNsaWNlcygpLnJpZ2h0KCkuaXNGaXhlZCgpKQotICAgICAg
ICAgICAgc3R5bGUoKS0+c2V0Qm9yZGVyUmlnaHRXaWR0aChpbWFnZS5ib3JkZXJTbGljZXMoKS5y
aWdodCgpLnZhbHVlKCkpOwotICAgICAgICBpZiAoaW1hZ2UuYm9yZGVyU2xpY2VzKCkuYm90dG9t
KCkuaXNGaXhlZCgpKQotICAgICAgICAgICAgc3R5bGUoKS0+c2V0Qm9yZGVyQm90dG9tV2lkdGgo
aW1hZ2UuYm9yZGVyU2xpY2VzKCkuYm90dG9tKCkudmFsdWUoKSk7Ci0gICAgICAgIGlmIChpbWFn
ZS5ib3JkZXJTbGljZXMoKS5sZWZ0KCkuaXNGaXhlZCgpKQotICAgICAgICAgICAgc3R5bGUoKS0+
c2V0Qm9yZGVyTGVmdFdpZHRoKGltYWdlLmJvcmRlclNsaWNlcygpLmxlZnQoKS52YWx1ZSgpKTsK
LSAgICB9CiB9CiAKIHZvaWQgQ1NTVG9TdHlsZU1hcDo6bWFwTmluZVBpZWNlSW1hZ2VTbGljZShD
U1NWYWx1ZSYgdmFsdWUsIE5pbmVQaWVjZUltYWdlJiBpbWFnZSkKQEAgLTU1Miw1NSArNTM5LDcw
IEBAIHZvaWQgQ1NTVG9TdHlsZU1hcDo6bWFwTmluZVBpZWNlSW1hZ2VTbGljZShDU1NWYWx1ZSYg
dmFsdWUsIE5pbmVQaWVjZUltYWdlJiBpbWFnCiAgICAgaW1hZ2Uuc2V0RmlsbChib3JkZXJJbWFn
ZVNsaWNlLm1fZmlsbCk7CiB9CiAKK3ZvaWQgQ1NTVG9TdHlsZU1hcDo6bWFwTmluZVBpZWNlSW1h
Z2VXaWR0aChDU1NWYWx1ZSYgdmFsdWUsIE5pbmVQaWVjZUltYWdlJiBpbWFnZSkKK3sKKyAgICBp
ZiAoIWlzPENTU0JvcmRlckltYWdlV2lkdGhWYWx1ZT4odmFsdWUpKQorICAgICAgICByZXR1cm47
CisKKyAgICAvLyBSZXRyaWV2ZSB0aGUgYm9yZGVyIGltYWdlIHZhbHVlLgorICAgIGF1dG8mIGJv
cmRlckltYWdlV2lkdGggPSBkb3duY2FzdDxDU1NCb3JkZXJJbWFnZVdpZHRoVmFsdWU+KHZhbHVl
KTsKKyAgICBpbWFnZS5zZXRCb3JkZXJTbGljZXMobWFwTmluZVBpZWNlSW1hZ2VRdWFkKGJvcmRl
ckltYWdlV2lkdGgud2lkdGhzKCkpKTsKKyAgICBpbWFnZS5zZXRPdmVycmlkZXNCb3JkZXJXaWR0
aHMoYm9yZGVySW1hZ2VXaWR0aC5tX292ZXJyaWRlc0JvcmRlcldpZHRocyk7Cit9CisKIExlbmd0
aEJveCBDU1NUb1N0eWxlTWFwOjptYXBOaW5lUGllY2VJbWFnZVF1YWQoQ1NTVmFsdWUmIHZhbHVl
KQogewogICAgIGlmICghaXM8Q1NTUHJpbWl0aXZlVmFsdWU+KHZhbHVlKSkKICAgICAgICAgcmV0
dXJuIExlbmd0aEJveCgpOwogCi0gICAgLy8gR2V0IG91ciB6b29tIHZhbHVlLgotICAgIENTU1Rv
TGVuZ3RoQ29udmVyc2lvbkRhdGEgY29udmVyc2lvbkRhdGEgPSB1c2VTVkdab29tUnVsZXMoKSA/
IG1fYnVpbGRlclN0YXRlLmNzc1RvTGVuZ3RoQ29udmVyc2lvbkRhdGEoKS5jb3B5V2l0aEFkanVz
dGVkWm9vbSgxLjBmKSA6IG1fYnVpbGRlclN0YXRlLmNzc1RvTGVuZ3RoQ29udmVyc2lvbkRhdGEo
KTsKLQogICAgIC8vIFJldHJpZXZlIHRoZSBwcmltaXRpdmUgdmFsdWUuCiAgICAgYXV0byYgYm9y
ZGVyV2lkdGhzID0gZG93bmNhc3Q8Q1NTUHJpbWl0aXZlVmFsdWU+KHZhbHVlKTsKIAorICAgIHJl
dHVybiBtYXBOaW5lUGllY2VJbWFnZVF1YWQoYm9yZGVyV2lkdGhzLnF1YWRWYWx1ZSgpKTsKK30K
KworTGVuZ3RoQm94IENTU1RvU3R5bGVNYXA6Om1hcE5pbmVQaWVjZUltYWdlUXVhZChRdWFkKiBx
dWFkKQoreworICAgIC8vIEdldCBvdXIgem9vbSB2YWx1ZS4KKyAgICBDU1NUb0xlbmd0aENvbnZl
cnNpb25EYXRhIGNvbnZlcnNpb25EYXRhID0gdXNlU1ZHWm9vbVJ1bGVzKCkgPyBtX2J1aWxkZXJT
dGF0ZS5jc3NUb0xlbmd0aENvbnZlcnNpb25EYXRhKCkuY29weVdpdGhBZGp1c3RlZFpvb20oMS4w
ZikgOiBtX2J1aWxkZXJTdGF0ZS5jc3NUb0xlbmd0aENvbnZlcnNpb25EYXRhKCk7CisKICAgICAv
LyBTZXQgdXAgYSBsZW5ndGggYm94IHRvIHJlcHJlc2VudCBvdXIgaW1hZ2Ugc2xpY2VzLgogICAg
IExlbmd0aEJveCBib3g7IC8vIERlZmF1bHRzIHRvICdhdXRvJyBzbyB3ZSBkb24ndCBoYXZlIHRv
IGhhbmRsZSB0aGF0IGV4cGxpY2l0bHkgYmVsb3cuCi0gICAgUXVhZCogc2xpY2VzID0gYm9yZGVy
V2lkdGhzLnF1YWRWYWx1ZSgpOwotICAgIGlmIChzbGljZXMtPnRvcCgpLT5pc051bWJlcigpKQot
ICAgICAgICBib3gudG9wKCkgPSBMZW5ndGgoc2xpY2VzLT50b3AoKS0+ZmxvYXRWYWx1ZSgpLCBM
ZW5ndGhUeXBlOjpSZWxhdGl2ZSk7Ci0gICAgZWxzZSBpZiAoc2xpY2VzLT50b3AoKS0+aXNQZXJj
ZW50YWdlKCkpCi0gICAgICAgIGJveC50b3AoKSA9IExlbmd0aChzbGljZXMtPnRvcCgpLT5kb3Vi
bGVWYWx1ZShDU1NVbml0VHlwZTo6Q1NTX1BFUkNFTlRBR0UpLCBMZW5ndGhUeXBlOjpQZXJjZW50
KTsKLSAgICBlbHNlIGlmIChzbGljZXMtPnRvcCgpLT5pc0NhbGN1bGF0ZWRQZXJjZW50YWdlV2l0
aExlbmd0aCgpKQotICAgICAgICBib3gudG9wKCkgPSBMZW5ndGgoc2xpY2VzLT50b3AoKS0+Y3Nz
Q2FsY1ZhbHVlKCktPmNyZWF0ZUNhbGN1bGF0aW9uVmFsdWUoY29udmVyc2lvbkRhdGEpKTsKLSAg
ICBlbHNlIGlmIChzbGljZXMtPnRvcCgpLT52YWx1ZUlEKCkgIT0gQ1NTVmFsdWVBdXRvKQotICAg
ICAgICBib3gudG9wKCkgPSBzbGljZXMtPnRvcCgpLT5jb21wdXRlTGVuZ3RoPExlbmd0aD4oY29u
dmVyc2lvbkRhdGEpOwotCi0gICAgaWYgKHNsaWNlcy0+cmlnaHQoKS0+aXNOdW1iZXIoKSkKLSAg
ICAgICAgYm94LnJpZ2h0KCkgPSBMZW5ndGgoc2xpY2VzLT5yaWdodCgpLT5mbG9hdFZhbHVlKCks
IExlbmd0aFR5cGU6OlJlbGF0aXZlKTsKLSAgICBlbHNlIGlmIChzbGljZXMtPnJpZ2h0KCktPmlz
UGVyY2VudGFnZSgpKQotICAgICAgICBib3gucmlnaHQoKSA9IExlbmd0aChzbGljZXMtPnJpZ2h0
KCktPmRvdWJsZVZhbHVlKENTU1VuaXRUeXBlOjpDU1NfUEVSQ0VOVEFHRSksIExlbmd0aFR5cGU6
OlBlcmNlbnQpOwotICAgIGVsc2UgaWYgKHNsaWNlcy0+cmlnaHQoKS0+aXNDYWxjdWxhdGVkUGVy
Y2VudGFnZVdpdGhMZW5ndGgoKSkKLSAgICAgICAgYm94LnJpZ2h0KCkgPSBMZW5ndGgoc2xpY2Vz
LT5yaWdodCgpLT5jc3NDYWxjVmFsdWUoKS0+Y3JlYXRlQ2FsY3VsYXRpb25WYWx1ZShjb252ZXJz
aW9uRGF0YSkpOwotICAgIGVsc2UgaWYgKHNsaWNlcy0+cmlnaHQoKS0+dmFsdWVJRCgpICE9IENT
U1ZhbHVlQXV0bykKLSAgICAgICAgYm94LnJpZ2h0KCkgPSBzbGljZXMtPnJpZ2h0KCktPmNvbXB1
dGVMZW5ndGg8TGVuZ3RoPihjb252ZXJzaW9uRGF0YSk7Ci0KLSAgICBpZiAoc2xpY2VzLT5ib3R0
b20oKS0+aXNOdW1iZXIoKSkKLSAgICAgICAgYm94LmJvdHRvbSgpID0gTGVuZ3RoKHNsaWNlcy0+
Ym90dG9tKCktPmZsb2F0VmFsdWUoKSwgTGVuZ3RoVHlwZTo6UmVsYXRpdmUpOwotICAgIGVsc2Ug
aWYgKHNsaWNlcy0+Ym90dG9tKCktPmlzUGVyY2VudGFnZSgpKQotICAgICAgICBib3guYm90dG9t
KCkgPSBMZW5ndGgoc2xpY2VzLT5ib3R0b20oKS0+ZG91YmxlVmFsdWUoQ1NTVW5pdFR5cGU6OkNT
U19QRVJDRU5UQUdFKSwgTGVuZ3RoVHlwZTo6UGVyY2VudCk7Ci0gICAgZWxzZSBpZiAoc2xpY2Vz
LT5ib3R0b20oKS0+aXNDYWxjdWxhdGVkUGVyY2VudGFnZVdpdGhMZW5ndGgoKSkKLSAgICAgICAg
Ym94LmJvdHRvbSgpID0gTGVuZ3RoKHNsaWNlcy0+Ym90dG9tKCktPmNzc0NhbGNWYWx1ZSgpLT5j
cmVhdGVDYWxjdWxhdGlvblZhbHVlKGNvbnZlcnNpb25EYXRhKSk7Ci0gICAgZWxzZSBpZiAoc2xp
Y2VzLT5ib3R0b20oKS0+dmFsdWVJRCgpICE9IENTU1ZhbHVlQXV0bykKLSAgICAgICAgYm94LmJv
dHRvbSgpID0gc2xpY2VzLT5ib3R0b20oKS0+Y29tcHV0ZUxlbmd0aDxMZW5ndGg+KGNvbnZlcnNp
b25EYXRhKTsKLQotICAgIGlmIChzbGljZXMtPmxlZnQoKS0+aXNOdW1iZXIoKSkKLSAgICAgICAg
Ym94LmxlZnQoKSA9IExlbmd0aChzbGljZXMtPmxlZnQoKS0+ZmxvYXRWYWx1ZSgpLCBMZW5ndGhU
eXBlOjpSZWxhdGl2ZSk7Ci0gICAgZWxzZSBpZiAoc2xpY2VzLT5sZWZ0KCktPmlzUGVyY2VudGFn
ZSgpKQotICAgICAgICBib3gubGVmdCgpID0gTGVuZ3RoKHNsaWNlcy0+bGVmdCgpLT5kb3VibGVW
YWx1ZShDU1NVbml0VHlwZTo6Q1NTX1BFUkNFTlRBR0UpLCBMZW5ndGhUeXBlOjpQZXJjZW50KTsK
LSAgICBlbHNlIGlmIChzbGljZXMtPmxlZnQoKS0+aXNDYWxjdWxhdGVkUGVyY2VudGFnZVdpdGhM
ZW5ndGgoKSkKLSAgICAgICAgYm94LmxlZnQoKSA9IExlbmd0aChzbGljZXMtPmxlZnQoKS0+Y3Nz
Q2FsY1ZhbHVlKCktPmNyZWF0ZUNhbGN1bGF0aW9uVmFsdWUoY29udmVyc2lvbkRhdGEpKTsKLSAg
ICBlbHNlIGlmIChzbGljZXMtPmxlZnQoKS0+dmFsdWVJRCgpICE9IENTU1ZhbHVlQXV0bykKLSAg
ICAgICAgYm94LmxlZnQoKSA9IHNsaWNlcy0+bGVmdCgpLT5jb21wdXRlTGVuZ3RoPExlbmd0aD4o
Y29udmVyc2lvbkRhdGEpOworICAgIGlmIChxdWFkLT50b3AoKS0+aXNOdW1iZXIoKSkKKyAgICAg
ICAgYm94LnRvcCgpID0gTGVuZ3RoKHF1YWQtPnRvcCgpLT5mbG9hdFZhbHVlKCksIExlbmd0aFR5
cGU6OlJlbGF0aXZlKTsKKyAgICBlbHNlIGlmIChxdWFkLT50b3AoKS0+aXNQZXJjZW50YWdlKCkp
CisgICAgICAgIGJveC50b3AoKSA9IExlbmd0aChxdWFkLT50b3AoKS0+ZG91YmxlVmFsdWUoQ1NT
VW5pdFR5cGU6OkNTU19QRVJDRU5UQUdFKSwgTGVuZ3RoVHlwZTo6UGVyY2VudCk7CisgICAgZWxz
ZSBpZiAocXVhZC0+dG9wKCktPmlzQ2FsY3VsYXRlZFBlcmNlbnRhZ2VXaXRoTGVuZ3RoKCkpCisg
ICAgICAgIGJveC50b3AoKSA9IExlbmd0aChxdWFkLT50b3AoKS0+Y3NzQ2FsY1ZhbHVlKCktPmNy
ZWF0ZUNhbGN1bGF0aW9uVmFsdWUoY29udmVyc2lvbkRhdGEpKTsKKyAgICBlbHNlIGlmIChxdWFk
LT50b3AoKS0+dmFsdWVJRCgpICE9IENTU1ZhbHVlQXV0bykKKyAgICAgICAgYm94LnRvcCgpID0g
cXVhZC0+dG9wKCktPmNvbXB1dGVMZW5ndGg8TGVuZ3RoPihjb252ZXJzaW9uRGF0YSk7CisKKyAg
ICBpZiAocXVhZC0+cmlnaHQoKS0+aXNOdW1iZXIoKSkKKyAgICAgICAgYm94LnJpZ2h0KCkgPSBM
ZW5ndGgocXVhZC0+cmlnaHQoKS0+ZmxvYXRWYWx1ZSgpLCBMZW5ndGhUeXBlOjpSZWxhdGl2ZSk7
CisgICAgZWxzZSBpZiAocXVhZC0+cmlnaHQoKS0+aXNQZXJjZW50YWdlKCkpCisgICAgICAgIGJv
eC5yaWdodCgpID0gTGVuZ3RoKHF1YWQtPnJpZ2h0KCktPmRvdWJsZVZhbHVlKENTU1VuaXRUeXBl
OjpDU1NfUEVSQ0VOVEFHRSksIExlbmd0aFR5cGU6OlBlcmNlbnQpOworICAgIGVsc2UgaWYgKHF1
YWQtPnJpZ2h0KCktPmlzQ2FsY3VsYXRlZFBlcmNlbnRhZ2VXaXRoTGVuZ3RoKCkpCisgICAgICAg
IGJveC5yaWdodCgpID0gTGVuZ3RoKHF1YWQtPnJpZ2h0KCktPmNzc0NhbGNWYWx1ZSgpLT5jcmVh
dGVDYWxjdWxhdGlvblZhbHVlKGNvbnZlcnNpb25EYXRhKSk7CisgICAgZWxzZSBpZiAocXVhZC0+
cmlnaHQoKS0+dmFsdWVJRCgpICE9IENTU1ZhbHVlQXV0bykKKyAgICAgICAgYm94LnJpZ2h0KCkg
PSBxdWFkLT5yaWdodCgpLT5jb21wdXRlTGVuZ3RoPExlbmd0aD4oY29udmVyc2lvbkRhdGEpOwor
CisgICAgaWYgKHF1YWQtPmJvdHRvbSgpLT5pc051bWJlcigpKQorICAgICAgICBib3guYm90dG9t
KCkgPSBMZW5ndGgocXVhZC0+Ym90dG9tKCktPmZsb2F0VmFsdWUoKSwgTGVuZ3RoVHlwZTo6UmVs
YXRpdmUpOworICAgIGVsc2UgaWYgKHF1YWQtPmJvdHRvbSgpLT5pc1BlcmNlbnRhZ2UoKSkKKyAg
ICAgICAgYm94LmJvdHRvbSgpID0gTGVuZ3RoKHF1YWQtPmJvdHRvbSgpLT5kb3VibGVWYWx1ZShD
U1NVbml0VHlwZTo6Q1NTX1BFUkNFTlRBR0UpLCBMZW5ndGhUeXBlOjpQZXJjZW50KTsKKyAgICBl
bHNlIGlmIChxdWFkLT5ib3R0b20oKS0+aXNDYWxjdWxhdGVkUGVyY2VudGFnZVdpdGhMZW5ndGgo
KSkKKyAgICAgICAgYm94LmJvdHRvbSgpID0gTGVuZ3RoKHF1YWQtPmJvdHRvbSgpLT5jc3NDYWxj
VmFsdWUoKS0+Y3JlYXRlQ2FsY3VsYXRpb25WYWx1ZShjb252ZXJzaW9uRGF0YSkpOworICAgIGVs
c2UgaWYgKHF1YWQtPmJvdHRvbSgpLT52YWx1ZUlEKCkgIT0gQ1NTVmFsdWVBdXRvKQorICAgICAg
ICBib3guYm90dG9tKCkgPSBxdWFkLT5ib3R0b20oKS0+Y29tcHV0ZUxlbmd0aDxMZW5ndGg+KGNv
bnZlcnNpb25EYXRhKTsKKworICAgIGlmIChxdWFkLT5sZWZ0KCktPmlzTnVtYmVyKCkpCisgICAg
ICAgIGJveC5sZWZ0KCkgPSBMZW5ndGgocXVhZC0+bGVmdCgpLT5mbG9hdFZhbHVlKCksIExlbmd0
aFR5cGU6OlJlbGF0aXZlKTsKKyAgICBlbHNlIGlmIChxdWFkLT5sZWZ0KCktPmlzUGVyY2VudGFn
ZSgpKQorICAgICAgICBib3gubGVmdCgpID0gTGVuZ3RoKHF1YWQtPmxlZnQoKS0+ZG91YmxlVmFs
dWUoQ1NTVW5pdFR5cGU6OkNTU19QRVJDRU5UQUdFKSwgTGVuZ3RoVHlwZTo6UGVyY2VudCk7Cisg
ICAgZWxzZSBpZiAocXVhZC0+bGVmdCgpLT5pc0NhbGN1bGF0ZWRQZXJjZW50YWdlV2l0aExlbmd0
aCgpKQorICAgICAgICBib3gubGVmdCgpID0gTGVuZ3RoKHF1YWQtPmxlZnQoKS0+Y3NzQ2FsY1Zh
bHVlKCktPmNyZWF0ZUNhbGN1bGF0aW9uVmFsdWUoY29udmVyc2lvbkRhdGEpKTsKKyAgICBlbHNl
IGlmIChxdWFkLT5sZWZ0KCktPnZhbHVlSUQoKSAhPSBDU1NWYWx1ZUF1dG8pCisgICAgICAgIGJv
eC5sZWZ0KCkgPSBxdWFkLT5sZWZ0KCktPmNvbXB1dGVMZW5ndGg8TGVuZ3RoPihjb252ZXJzaW9u
RGF0YSk7CiAKICAgICByZXR1cm4gYm94OwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
Y3NzL0NTU1RvU3R5bGVNYXAuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NUb1N0eWxlTWFwLmgK
aW5kZXggNGM5YmI0NGNiOTMyODhkZjc2NGUwNTkwYTM2ZGJlYzdiMWZmNzhjOS4uYTBkMWIxZDY2
OWY0OWM4N2Q0ZTEzODIyOTI1ZTE1Yzk4MmY0OTEyMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvY3NzL0NTU1RvU3R5bGVNYXAuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVG9TdHls
ZU1hcC5oCkBAIC03MCw4ICs3MCw5IEBAIHB1YmxpYzoKICAgICB2b2lkIG1hcEFuaW1hdGlvblRp
bWluZ0Z1bmN0aW9uKEFuaW1hdGlvbiYsIGNvbnN0IENTU1ZhbHVlJik7CiAgICAgdm9pZCBtYXBB
bmltYXRpb25Db21wb3NpdGVPcGVyYXRpb24oQW5pbWF0aW9uJiwgY29uc3QgQ1NTVmFsdWUmKTsK
IAotICAgIHZvaWQgbWFwTmluZVBpZWNlSW1hZ2UoQ1NTUHJvcGVydHlJRCwgQ1NTVmFsdWUqLCBO
aW5lUGllY2VJbWFnZSYpOworICAgIHZvaWQgbWFwTmluZVBpZWNlSW1hZ2UoQ1NTVmFsdWUqLCBO
aW5lUGllY2VJbWFnZSYpOwogICAgIHZvaWQgbWFwTmluZVBpZWNlSW1hZ2VTbGljZShDU1NWYWx1
ZSYsIE5pbmVQaWVjZUltYWdlJik7CisgICAgdm9pZCBtYXBOaW5lUGllY2VJbWFnZVdpZHRoKENT
U1ZhbHVlJiwgTmluZVBpZWNlSW1hZ2UmKTsKICAgICBMZW5ndGhCb3ggbWFwTmluZVBpZWNlSW1h
Z2VRdWFkKENTU1ZhbHVlJik7CiAgICAgdm9pZCBtYXBOaW5lUGllY2VJbWFnZVJlcGVhdChDU1NW
YWx1ZSYsIE5pbmVQaWVjZUltYWdlJik7CiAKQEAgLTc5LDYgKzgwLDcgQEAgcHJpdmF0ZToKICAg
ICBSZW5kZXJTdHlsZSogc3R5bGUoKSBjb25zdDsKICAgICBib29sIHVzZVNWR1pvb21SdWxlcygp
IGNvbnN0OwogICAgIFJlZlB0cjxTdHlsZUltYWdlPiBzdHlsZUltYWdlKENTU1ZhbHVlJik7Cisg
ICAgTGVuZ3RoQm94IG1hcE5pbmVQaWVjZUltYWdlUXVhZChRdWFkKik7CiAKICAgICAvLyBGSVhN
RTogVGhpcyB0eXBlIGNhbiBtZXJnZSBpbnRvIEJ1aWxkZXJTdGF0ZS4KICAgICBTdHlsZTo6QnVp
bGRlclN0YXRlJiBtX2J1aWxkZXJTdGF0ZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nz
cy9DU1NWYWx1ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWUuY3BwCmluZGV4IGNl
ZDEzOTQyOTE2YmFlYzU3OGIzOGQzZTc4OTU3NzQwMGQ3OGFhNGUuLmY5MzMzOGFmNDFjZDBiMWEz
MzBlZGU1MTJjMzg3NDA2NzdlMWFkNTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9D
U1NWYWx1ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlLmNwcApAQCAtMzEs
NiArMzEsNyBAQAogCiAjaW5jbHVkZSAiQ1NTQXNwZWN0UmF0aW9WYWx1ZS5oIgogI2luY2x1ZGUg
IkNTU0JvcmRlckltYWdlU2xpY2VWYWx1ZS5oIgorI2luY2x1ZGUgIkNTU0JvcmRlckltYWdlV2lk
dGhWYWx1ZS5oIgogI2luY2x1ZGUgIkNTU0NhbGNWYWx1ZS5oIgogI2luY2x1ZGUgIkNTU0NhbnZh
c1ZhbHVlLmgiCiAjaW5jbHVkZSAiQ1NTQ29udGVudERpc3RyaWJ1dGlvblZhbHVlLmgiCkBAIC0x
NDUsNiArMTQ2LDggQEAgYm9vbCBDU1NWYWx1ZTo6ZXF1YWxzKGNvbnN0IENTU1ZhbHVlJiBvdGhl
cikgY29uc3QKICAgICAgICAgICAgIHJldHVybiBjb21wYXJlQ1NTVmFsdWVzPENTU0FzcGVjdFJh
dGlvVmFsdWU+KCp0aGlzLCBvdGhlcik7CiAgICAgICAgIGNhc2UgQm9yZGVySW1hZ2VTbGljZUNs
YXNzOgogICAgICAgICAgICAgcmV0dXJuIGNvbXBhcmVDU1NWYWx1ZXM8Q1NTQm9yZGVySW1hZ2VT
bGljZVZhbHVlPigqdGhpcywgb3RoZXIpOworICAgICAgICBjYXNlIEJvcmRlckltYWdlV2lkdGhD
bGFzczoKKyAgICAgICAgICAgIHJldHVybiBjb21wYXJlQ1NTVmFsdWVzPENTU0JvcmRlckltYWdl
V2lkdGhWYWx1ZT4oKnRoaXMsIG90aGVyKTsKICAgICAgICAgY2FzZSBDYW52YXNDbGFzczoKICAg
ICAgICAgICAgIHJldHVybiBjb21wYXJlQ1NTVmFsdWVzPENTU0NhbnZhc1ZhbHVlPigqdGhpcywg
b3RoZXIpOwogICAgICAgICBjYXNlIE5hbWVkSW1hZ2VDbGFzczoKQEAgLTI1MCw2ICsyNTMsOCBA
QCBTdHJpbmcgQ1NTVmFsdWU6OmNzc1RleHQoKSBjb25zdAogICAgICAgICByZXR1cm4gZG93bmNh
c3Q8Q1NTQXNwZWN0UmF0aW9WYWx1ZT4oKnRoaXMpLmN1c3RvbUNTU1RleHQoKTsKICAgICBjYXNl
IEJvcmRlckltYWdlU2xpY2VDbGFzczoKICAgICAgICAgcmV0dXJuIGRvd25jYXN0PENTU0JvcmRl
ckltYWdlU2xpY2VWYWx1ZT4oKnRoaXMpLmN1c3RvbUNTU1RleHQoKTsKKyAgICBjYXNlIEJvcmRl
ckltYWdlV2lkdGhDbGFzczoKKyAgICAgICAgcmV0dXJuIGRvd25jYXN0PENTU0JvcmRlckltYWdl
V2lkdGhWYWx1ZT4oKnRoaXMpLmN1c3RvbUNTU1RleHQoKTsKICAgICBjYXNlIENhbnZhc0NsYXNz
OgogICAgICAgICByZXR1cm4gZG93bmNhc3Q8Q1NTQ2FudmFzVmFsdWU+KCp0aGlzKS5jdXN0b21D
U1NUZXh0KCk7CiAgICAgY2FzZSBOYW1lZEltYWdlQ2xhc3M6CkBAIC0zNjQsNiArMzY5LDkgQEAg
dm9pZCBDU1NWYWx1ZTo6ZGVzdHJveSgpCiAgICAgY2FzZSBCb3JkZXJJbWFnZVNsaWNlQ2xhc3M6
CiAgICAgICAgIGRlbGV0ZSBkb3duY2FzdDxDU1NCb3JkZXJJbWFnZVNsaWNlVmFsdWU+KHRoaXMp
OwogICAgICAgICByZXR1cm47CisgICAgY2FzZSBCb3JkZXJJbWFnZVdpZHRoQ2xhc3M6CisgICAg
ICAgIGRlbGV0ZSBkb3duY2FzdDxDU1NCb3JkZXJJbWFnZVdpZHRoVmFsdWU+KHRoaXMpOworICAg
ICAgICByZXR1cm47CiAgICAgY2FzZSBDYW52YXNDbGFzczoKICAgICAgICAgZGVsZXRlIGRvd25j
YXN0PENTU0NhbnZhc1ZhbHVlPih0aGlzKTsKICAgICAgICAgcmV0dXJuOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFs
dWUuaAppbmRleCBlNjc3N2ViODBlMTMzYzI5Y2FhNjI1Njk2ODNjZDVkMGNmZjdhMGU3Li5kYWRl
NThkYTIwNjhiN2VlY2NkYWEzMzE5MThjNDRkM2E3NmUwNWM4IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9jc3MvQ1NTVmFsdWUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWUu
aApAQCAtODksNiArODksNyBAQCBwdWJsaWM6CiAKICAgICBib29sIGlzQXNwZWN0UmF0aW9WYWx1
ZSgpIGNvbnN0IHsgcmV0dXJuIG1fY2xhc3NUeXBlID09IEFzcGVjdFJhdGlvQ2xhc3M7IH0KICAg
ICBib29sIGlzQm9yZGVySW1hZ2VTbGljZVZhbHVlKCkgY29uc3QgeyByZXR1cm4gbV9jbGFzc1R5
cGUgPT0gQm9yZGVySW1hZ2VTbGljZUNsYXNzOyB9CisgICAgYm9vbCBpc0JvcmRlckltYWdlV2lk
dGhWYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1fY2xhc3NUeXBlID09IEJvcmRlckltYWdlV2lkdGhD
bGFzczsgfQogICAgIGJvb2wgaXNDYW52YXNWYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1fY2xhc3NU
eXBlID09IENhbnZhc0NsYXNzOyB9CiAgICAgYm9vbCBpc0Nyb3NzZmFkZVZhbHVlKCkgY29uc3Qg
eyByZXR1cm4gbV9jbGFzc1R5cGUgPT0gQ3Jvc3NmYWRlQ2xhc3M7IH0KICAgICBib29sIGlzQ3Vy
c29ySW1hZ2VWYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1fY2xhc3NUeXBlID09IEN1cnNvckltYWdl
Q2xhc3M7IH0KQEAgLTE5MSw2ICsxOTIsNyBAQCBwcm90ZWN0ZWQ6CiAgICAgICAgIC8vIE90aGVy
IGNsYXNzIHR5cGVzLgogICAgICAgICBBc3BlY3RSYXRpb0NsYXNzLAogICAgICAgICBCb3JkZXJJ
bWFnZVNsaWNlQ2xhc3MsCisgICAgICAgIEJvcmRlckltYWdlV2lkdGhDbGFzcywKICAgICAgICAg
Rm9udEZlYXR1cmVDbGFzcywKICAgICAgICAgRm9udFZhcmlhdGlvbkNsYXNzLAogICAgICAgICBG
b250Q2xhc3MsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVQcm9wZXJ0aWVz
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVByb3BlcnRpZXMuY3BwCmluZGV4IGYwNDEz
YzE3ZmZmYTI4MzgxMWZlMjUxN2ZkZmQ2MWJjZGNmOGIyNTkuLjI5YTljMTUzNzE1Yjk0OTEwYjNm
N2EyMzcwOGUwMTExN2E5MjBmYTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHls
ZVByb3BlcnRpZXMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVByb3BlcnRpZXMu
Y3BwCkBAIC0yMyw2ICsyMyw3IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiU3R5
bGVQcm9wZXJ0aWVzLmgiCiAKKyNpbmNsdWRlICJDU1NCb3JkZXJJbWFnZVdpZHRoVmFsdWUuaCIK
ICNpbmNsdWRlICJDU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uaCIKICNpbmNsdWRlICJDU1ND
dXN0b21Qcm9wZXJ0eVZhbHVlLmgiCiAjaW5jbHVkZSAiQ1NTRGVmZXJyZWRQYXJzZXIuaCIKQEAg
LTIxOSw3ICsyMjAsOCBAQCBTdHJpbmcgU3R5bGVQcm9wZXJ0aWVzOjpnZXRQcm9wZXJ0eVZhbHVl
KENTU1Byb3BlcnR5SUQgcHJvcGVydHlJRCkgY29uc3QKICAgICBjYXNlIENTU1Byb3BlcnR5Qm9y
ZGVyQmxvY2tFbmQ6CiAgICAgICAgIHJldHVybiBnZXRTaG9ydGhhbmRWYWx1ZShib3JkZXJCbG9j
a0VuZFNob3J0aGFuZCgpKTsKICAgICBjYXNlIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2U6Ci0gICAg
ICAgIHJldHVybiBib3JkZXJJbWFnZVByb3BlcnR5VmFsdWUoKTsKKyAgICBjYXNlIENTU1Byb3Bl
cnR5V2Via2l0Qm9yZGVySW1hZ2U6CisgICAgICAgIHJldHVybiBib3JkZXJJbWFnZVByb3BlcnR5
VmFsdWUocHJvcGVydHlJRCk7CiAgICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlcklubGluZToKICAg
ICAgICAgcmV0dXJuIGJvcmRlclByb3BlcnR5VmFsdWUoYm9yZGVySW5saW5lV2lkdGhTaG9ydGhh
bmQoKSwgYm9yZGVySW5saW5lU3R5bGVTaG9ydGhhbmQoKSwgYm9yZGVySW5saW5lQ29sb3JTaG9y
dGhhbmQoKSk7CiAgICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlcklubGluZUNvbG9yOgpAQCAtOTAz
LDcgKzkwNSw3IEBAIFN0cmluZyBTdHlsZVByb3BlcnRpZXM6OmdldEFsaWdubWVudFNob3J0aGFu
ZFZhbHVlKGNvbnN0IFN0eWxlUHJvcGVydHlTaG9ydGhhbmQmCiAgICAgcmV0dXJuIHZhbHVlOwog
fQogCi1TdHJpbmcgU3R5bGVQcm9wZXJ0aWVzOjpib3JkZXJJbWFnZVByb3BlcnR5VmFsdWUoKSBj
b25zdAorU3RyaW5nIFN0eWxlUHJvcGVydGllczo6Ym9yZGVySW1hZ2VQcm9wZXJ0eVZhbHVlKENT
U1Byb3BlcnR5SUQgcHJvcGVydHlJRCkgY29uc3QKIHsKICAgICBjb25zdCBTdHlsZVByb3BlcnR5
U2hvcnRoYW5kJiBzaG9ydGhhbmQgPSBib3JkZXJJbWFnZVNob3J0aGFuZCgpOwogICAgIFN0cmlu
Z0J1aWxkZXIgcmVzdWx0OwpAQCAtOTM2LDYgKzkzOCwxNiBAQCBTdHJpbmcgU3R5bGVQcm9wZXJ0
aWVzOjpib3JkZXJJbWFnZVByb3BlcnR5VmFsdWUoKSBjb25zdAogICAgICAgICBpZiAob21pdHRl
ZFNsaWNlICYmIChsb25naGFuZCA9PSBDU1NQcm9wZXJ0eUJvcmRlckltYWdlV2lkdGggfHwgbG9u
Z2hhbmQgPT0gQ1NTUHJvcGVydHlCb3JkZXJJbWFnZU91dHNldCkpCiAgICAgICAgICAgICByZXR1
cm4gU3RyaW5nKCk7CiAKKyAgICAgICAgLy8gLXdlYmtpdC1ib3JkZXItaW1hZ2UgaGFzIGEgbGVn
YWN5IGJlaGF2aW9yIHRoYXQgbWFrZXMgZml4ZWQgYm9yZGVyIHNsaWNlcyBhbHNvIHNldCB0aGUg
Ym9yZGVyIHdpZHRocy4KKyAgICAgICAgaWYgKGlzPENTU0JvcmRlckltYWdlV2lkdGhWYWx1ZT4o
dmFsdWUuZ2V0KCkpKSB7CisgICAgICAgICAgICBhdXRvKiBib3JkZXJJbWFnZVdpZHRoID0gZG93
bmNhc3Q8Q1NTQm9yZGVySW1hZ2VXaWR0aFZhbHVlPih2YWx1ZS5nZXQoKSk7CisgICAgICAgICAg
ICBRdWFkKiB3aWR0aHMgPSBib3JkZXJJbWFnZVdpZHRoLT53aWR0aHMoKTsKKyAgICAgICAgICAg
IGJvb2wgb3ZlcnJpZGVzQm9yZGVyV2lkdGhzID0gcHJvcGVydHlJRCA9PSBDU1NQcm9wZXJ0eVdl
YmtpdEJvcmRlckltYWdlICYmIHdpZHRocyAmJiAod2lkdGhzLT50b3AoKS0+aXNMZW5ndGgoKSB8
fCB3aWR0aHMtPnJpZ2h0KCktPmlzTGVuZ3RoKCkgfHwgd2lkdGhzLT5ib3R0b20oKS0+aXNMZW5n
dGgoKSB8fCB3aWR0aHMtPmxlZnQoKS0+aXNMZW5ndGgoKSk7CisgICAgICAgICAgICBpZiAob3Zl
cnJpZGVzQm9yZGVyV2lkdGhzICE9IGJvcmRlckltYWdlV2lkdGgtPm1fb3ZlcnJpZGVzQm9yZGVy
V2lkdGhzKQorICAgICAgICAgICAgICAgIHJldHVybiBTdHJpbmcoKTsKKyAgICAgICAgICAgIHZh
bHVlID0gYm9yZGVySW1hZ2VXaWR0aC0+bV93aWR0aHM7CisgICAgICAgIH0KKwogICAgICAgICAv
LyBJZiBhIGxvbmdoYW5kIGlzIHNldCB0byBhIGNzcy13aWRlIGtleXdvcmQsIHRoZSBvdGhlcnMg
c2hvdWxkIGJlIHRoZSBzYW1lLgogICAgICAgICBTdHJpbmcgdmFsdWVUZXh0ID0gdmFsdWUtPmNz
c1RleHQoKTsKICAgICAgICAgaWYgKGlzQ1NTV2lkZVZhbHVlS2V5d29yZCh2YWx1ZVRleHQpKSB7
CkBAIC0xNDA5LDcgKzE0MjEsNyBAQCBTdHJpbmcgU3R5bGVQcm9wZXJ0aWVzOjphc1RleHQoKSBj
b25zdAogICAgICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlckltYWdlV2lkdGg6CiAgICAg
ICAgICAgICBjYXNlIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VPdXRzZXQ6CiAgICAgICAgICAgICBj
YXNlIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VSZXBlYXQ6Ci0gICAgICAgICAgICAgICAgc2hvcnRo
YW5kUHJvcGVydHlJRCA9IENTU1Byb3BlcnR5Qm9yZGVySW1hZ2U7CisgICAgICAgICAgICAgICAg
c2VyaWFsaXplQm9yZGVyU2hvcnRoYW5kKENTU1Byb3BlcnR5Qm9yZGVySW1hZ2UsIENTU1Byb3Bl
cnR5V2Via2l0Qm9yZGVySW1hZ2UpOwogICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAg
ICAgY2FzZSBDU1NQcm9wZXJ0eUZvbnRGYW1pbHk6CiAgICAgICAgICAgICBjYXNlIENTU1Byb3Bl
cnR5TGluZUhlaWdodDoKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVByb3Bl
cnRpZXMuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVByb3BlcnRpZXMuaAppbmRleCBkZDM5
MGQ1OTIyZGM3YmQzY2YwYjhlMjZjZGFhMzJmZmExNmZlZmRjLi5kYTVjZjYxM2JlMWYwMmQ3NDBi
YjBiNmIyZWUwOWMzNDdiNjFjYzI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5
bGVQcm9wZXJ0aWVzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUHJvcGVydGllcy5o
CkBAIC0xNjUsNyArMTY1LDcgQEAgcHJpdmF0ZToKICAgICBTdHJpbmcgZ2V0U2hvcnRoYW5kVmFs
dWUoY29uc3QgU3R5bGVQcm9wZXJ0eVNob3J0aGFuZCYsIGNvbnN0IGNoYXIqIHNlcGFyYXRvciA9
ICIgIikgY29uc3Q7CiAgICAgU3RyaW5nIGdldENvbW1vblZhbHVlKGNvbnN0IFN0eWxlUHJvcGVy
dHlTaG9ydGhhbmQmKSBjb25zdDsKICAgICBTdHJpbmcgZ2V0QWxpZ25tZW50U2hvcnRoYW5kVmFs
dWUoY29uc3QgU3R5bGVQcm9wZXJ0eVNob3J0aGFuZCYpIGNvbnN0OwotICAgIFN0cmluZyBib3Jk
ZXJJbWFnZVByb3BlcnR5VmFsdWUoKSBjb25zdDsKKyAgICBTdHJpbmcgYm9yZGVySW1hZ2VQcm9w
ZXJ0eVZhbHVlKENTU1Byb3BlcnR5SUQpIGNvbnN0OwogICAgIFN0cmluZyBib3JkZXJQcm9wZXJ0
eVZhbHVlKGNvbnN0IFN0eWxlUHJvcGVydHlTaG9ydGhhbmQmLCBjb25zdCBTdHlsZVByb3BlcnR5
U2hvcnRoYW5kJiwgY29uc3QgU3R5bGVQcm9wZXJ0eVNob3J0aGFuZCYpIGNvbnN0OwogICAgIFN0
cmluZyBwYWdlQnJlYWtQcm9wZXJ0eVZhbHVlKGNvbnN0IFN0eWxlUHJvcGVydHlTaG9ydGhhbmQm
KSBjb25zdDsKICAgICBTdHJpbmcgZ2V0TGF5ZXJlZFNob3J0aGFuZFZhbHVlKGNvbnN0IFN0eWxl
UHJvcGVydHlTaG9ydGhhbmQmKSBjb25zdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nz
cy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNl
ci9DU1NQcm9wZXJ0eVBhcnNlci5jcHAKaW5kZXggYzVmMzQ0MTY1ZjQ2MTYyZmY4ZWQxMTAzYTgw
Yjg4YWUxOTA2MjM3Zi4uZDFiMDJiYmJmYjUyMzM3ZGI1ZjgwNjc1ZWE3MmQyZmU2Y2YwYTNlNSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlci5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlci5jcHAK
QEAgLTMzLDYgKzMzLDcgQEAKICNpbmNsdWRlICJDU1NCYXNpY1NoYXBlcy5oIgogI2luY2x1ZGUg
IkNTU0JvcmRlckltYWdlLmgiCiAjaW5jbHVkZSAiQ1NTQm9yZGVySW1hZ2VTbGljZVZhbHVlLmgi
CisjaW5jbHVkZSAiQ1NTQm9yZGVySW1hZ2VXaWR0aFZhbHVlLmgiCiAjaW5jbHVkZSAiQ1NTQ29t
cHV0ZWRTdHlsZURlY2xhcmF0aW9uLmgiCiAjaW5jbHVkZSAiQ1NTQ29udGVudERpc3RyaWJ1dGlv
blZhbHVlLmgiCiAjaW5jbHVkZSAiQ1NTQ3Vyc29ySW1hZ2VWYWx1ZS5oIgpAQCAtMzAzNyw3ICsz
MDM4LDcgQEAgc3RhdGljIFJlZlB0cjxDU1NWYWx1ZT4gY29uc3VtZUJvcmRlckltYWdlT3V0c2V0
KENTU1BhcnNlclRva2VuUmFuZ2UmIHJhbmdlKQogICAgIHJldHVybiBDU1NWYWx1ZVBvb2w6OnNp
bmdsZXRvbigpLmNyZWF0ZVZhbHVlKFdURk1vdmUocXVhZCkpOwogfQogCi1zdGF0aWMgUmVmUHRy
PENTU1ZhbHVlPiBjb25zdW1lQm9yZGVySW1hZ2VXaWR0aChDU1NQYXJzZXJUb2tlblJhbmdlJiBy
YW5nZSkKK3N0YXRpYyBSZWZQdHI8Q1NTVmFsdWU+IGNvbnN1bWVCb3JkZXJJbWFnZVdpZHRoKENT
U1Byb3BlcnR5SUQgcHJvcGVydHksIENTU1BhcnNlclRva2VuUmFuZ2UmIHJhbmdlKQogewogICAg
IFJlZlB0cjxDU1NQcmltaXRpdmVWYWx1ZT4gd2lkdGhzWzRdOwogCkBAIC0zMDU1LDE1ICszMDU2
LDE4IEBAIHN0YXRpYyBSZWZQdHI8Q1NTVmFsdWU+IGNvbnN1bWVCb3JkZXJJbWFnZVdpZHRoKENT
U1BhcnNlclRva2VuUmFuZ2UmIHJhbmdlKQogICAgIGlmICghd2lkdGhzWzBdKQogICAgICAgICBy
ZXR1cm4gbnVsbHB0cjsKICAgICBjb21wbGV0ZTRTaWRlcyh3aWR0aHMpOwotICAgIAorCisgICAg
Ly8gLXdlYmtpdC1ib3JkZXItaW1hZ2UgaGFzIGEgbGVnYWN5IGJlaGF2aW9yIHRoYXQgbWFrZXMg
Zml4ZWQgYm9yZGVyIHNsaWNlcyBhbHNvIHNldCB0aGUgYm9yZGVyIHdpZHRocy4KKyAgICBib29s
IG92ZXJyaWRlc0JvcmRlcldpZHRocyA9IHByb3BlcnR5ID09IENTU1Byb3BlcnR5V2Via2l0Qm9y
ZGVySW1hZ2UgJiYgKHdpZHRoc1swXS0+aXNMZW5ndGgoKSB8fCB3aWR0aHNbMV0tPmlzTGVuZ3Ro
KCkgfHwgd2lkdGhzWzJdLT5pc0xlbmd0aCgpIHx8IHdpZHRoc1szXS0+aXNMZW5ndGgoKSk7CisK
ICAgICAvLyBGSVhNRS1ORVdQQVJTRVI6IFNob3VsZCBqdXN0IGhhdmUgYSBDU1NRdWFkVmFsdWUu
CiAgICAgYXV0byBxdWFkID0gUXVhZDo6Y3JlYXRlKCk7CiAgICAgcXVhZC0+c2V0VG9wKHdpZHRo
c1swXS5yZWxlYXNlTm9uTnVsbCgpKTsKICAgICBxdWFkLT5zZXRSaWdodCh3aWR0aHNbMV0ucmVs
ZWFzZU5vbk51bGwoKSk7CiAgICAgcXVhZC0+c2V0Qm90dG9tKHdpZHRoc1syXS5yZWxlYXNlTm9u
TnVsbCgpKTsKICAgICBxdWFkLT5zZXRMZWZ0KHdpZHRoc1szXS5yZWxlYXNlTm9uTnVsbCgpKTsK
LSAgICAKLSAgICByZXR1cm4gQ1NTVmFsdWVQb29sOjpzaW5nbGV0b24oKS5jcmVhdGVWYWx1ZShX
VEZNb3ZlKHF1YWQpKTsKKworICAgIHJldHVybiBDU1NCb3JkZXJJbWFnZVdpZHRoVmFsdWU6OmNy
ZWF0ZShDU1NWYWx1ZVBvb2w6OnNpbmdsZXRvbigpLmNyZWF0ZVZhbHVlKFdURk1vdmUocXVhZCkp
LCBvdmVycmlkZXNCb3JkZXJXaWR0aHMpOwogfQogCiBzdGF0aWMgYm9vbCBjb25zdW1lQm9yZGVy
SW1hZ2VDb21wb25lbnRzKENTU1Byb3BlcnR5SUQgcHJvcGVydHksIENTU1BhcnNlclRva2VuUmFu
Z2UmIHJhbmdlLCBjb25zdCBDU1NQYXJzZXJDb250ZXh0JiBjb250ZXh0LCBSZWZQdHI8Q1NTVmFs
dWU+JiBzb3VyY2UsCkBAIC0zMDg1LDcgKzMwODksNyBAQCBzdGF0aWMgYm9vbCBjb25zdW1lQm9y
ZGVySW1hZ2VDb21wb25lbnRzKENTU1Byb3BlcnR5SUQgcHJvcGVydHksIENTU1BhcnNlclRva2Vu
UgogICAgICAgICAgICAgaWYgKHNsaWNlKSB7CiAgICAgICAgICAgICAgICAgQVNTRVJUKCF3aWR0
aCAmJiAhb3V0c2V0KTsKICAgICAgICAgICAgICAgICBpZiAoY29uc3VtZVNsYXNoSW5jbHVkaW5n
V2hpdGVzcGFjZShyYW5nZSkpIHsKLSAgICAgICAgICAgICAgICAgICAgd2lkdGggPSBjb25zdW1l
Qm9yZGVySW1hZ2VXaWR0aChyYW5nZSk7CisgICAgICAgICAgICAgICAgICAgIHdpZHRoID0gY29u
c3VtZUJvcmRlckltYWdlV2lkdGgocHJvcGVydHksIHJhbmdlKTsKICAgICAgICAgICAgICAgICAg
ICAgaWYgKGNvbnN1bWVTbGFzaEluY2x1ZGluZ1doaXRlc3BhY2UocmFuZ2UpKSB7CiAgICAgICAg
ICAgICAgICAgICAgICAgICBvdXRzZXQgPSBjb25zdW1lQm9yZGVySW1hZ2VPdXRzZXQocmFuZ2Up
OwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFvdXRzZXQpCkBAIC00NjIwLDggKzQ2MjQs
NyBAQCBSZWZQdHI8Q1NTVmFsdWU+IENTU1Byb3BlcnR5UGFyc2VyOjpwYXJzZVNpbmdsZVZhbHVl
KENTU1Byb3BlcnR5SUQgcHJvcGVydHksIENTUwogICAgICAgICByZXR1cm4gY29uc3VtZUJvcmRl
ckltYWdlT3V0c2V0KG1fcmFuZ2UpOwogICAgIGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJJbWFnZVdp
ZHRoOgogICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2VXaWR0aDoKLSAgICAg
ICAgcmV0dXJuIGNvbnN1bWVCb3JkZXJJbWFnZVdpZHRoKG1fcmFuZ2UpOwotICAgIGNhc2UgQ1NT
UHJvcGVydHlXZWJraXRCb3JkZXJJbWFnZToKKyAgICAgICAgcmV0dXJuIGNvbnN1bWVCb3JkZXJJ
bWFnZVdpZHRoKHByb3BlcnR5LCBtX3JhbmdlKTsKICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0
TWFza0JveEltYWdlOgogICAgICAgICByZXR1cm4gY29uc3VtZVdlYmtpdEJvcmRlckltYWdlKHBy
b3BlcnR5LCBtX3JhbmdlLCBtX2NvbnRleHQpOwogICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRC
b3hSZWZsZWN0OgpAQCAtNTU0OSwxOCArNTU1MiwxOSBAQCBib29sIENTU1Byb3BlcnR5UGFyc2Vy
Ojpjb25zdW1lQm9yZGVySW1hZ2UoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eSwgYm9vbCBpbXBvcnRh
bgogICAgICAgICBhdXRvJiB2YWx1ZVBvb2wgPSBDU1NWYWx1ZVBvb2w6OnNpbmdsZXRvbigpOwog
ICAgICAgICBzd2l0Y2ggKHByb3BlcnR5KSB7CiAgICAgICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJr
aXRNYXNrQm94SW1hZ2U6Ci0gICAgICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNpdERlZmF1
bHQoQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2VTb3VyY2UsIENTU1Byb3BlcnR5V2Via2l0
TWFza0JveEltYWdlLCBXVEZNb3ZlKHNvdXJjZSksIHZhbHVlUG9vbC5jcmVhdGVJbXBsaWNpdElu
aXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQpOwotICAgICAgICAgICAgYWRkUHJvcGVydHlXaXRoSW1w
bGljaXREZWZhdWx0KENTU1Byb3BlcnR5V2Via2l0TWFza0JveEltYWdlU2xpY2UsIENTU1Byb3Bl
cnR5V2Via2l0TWFza0JveEltYWdlLCBXVEZNb3ZlKHNsaWNlKSwgdmFsdWVQb29sLmNyZWF0ZUlt
cGxpY2l0SW5pdGlhbFZhbHVlKCksIGltcG9ydGFudCk7Ci0gICAgICAgICAgICBhZGRQcm9wZXJ0
eVdpdGhJbXBsaWNpdERlZmF1bHQoQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2VXaWR0aCwg
Q1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2UsIFdURk1vdmUod2lkdGgpLCB2YWx1ZVBvb2wu
Y3JlYXRlSW1wbGljaXRJbml0aWFsVmFsdWUoKSwgaW1wb3J0YW50KTsKLSAgICAgICAgICAgIGFk
ZFByb3BlcnR5V2l0aEltcGxpY2l0RGVmYXVsdChDU1NQcm9wZXJ0eVdlYmtpdE1hc2tCb3hJbWFn
ZU91dHNldCwgQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2UsIFdURk1vdmUob3V0c2V0KSwg
dmFsdWVQb29sLmNyZWF0ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCksIGltcG9ydGFudCk7Ci0gICAg
ICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNpdERlZmF1bHQoQ1NTUHJvcGVydHlXZWJraXRN
YXNrQm94SW1hZ2VSZXBlYXQsIENTU1Byb3BlcnR5V2Via2l0TWFza0JveEltYWdlLCBXVEZNb3Zl
KHJlcGVhdCksIHZhbHVlUG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgpLCBpbXBvcnRh
bnQpOworICAgICAgICAgICAgYWRkUHJvcGVydHlXaXRoSW1wbGljaXREZWZhdWx0KENTU1Byb3Bl
cnR5V2Via2l0TWFza0JveEltYWdlU291cmNlLCBwcm9wZXJ0eSwgV1RGTW92ZShzb3VyY2UpLCB2
YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFsdWUoKSwgaW1wb3J0YW50KTsKKyAgICAg
ICAgICAgIGFkZFByb3BlcnR5V2l0aEltcGxpY2l0RGVmYXVsdChDU1NQcm9wZXJ0eVdlYmtpdE1h
c2tCb3hJbWFnZVNsaWNlLCBwcm9wZXJ0eSwgV1RGTW92ZShzbGljZSksIHZhbHVlUG9vbC5jcmVh
dGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQpOworICAgICAgICAgICAgYWRkUHJv
cGVydHlXaXRoSW1wbGljaXREZWZhdWx0KENTU1Byb3BlcnR5V2Via2l0TWFza0JveEltYWdlV2lk
dGgsIHByb3BlcnR5LCBXVEZNb3ZlKHdpZHRoKSwgdmFsdWVQb29sLmNyZWF0ZUltcGxpY2l0SW5p
dGlhbFZhbHVlKCksIGltcG9ydGFudCk7CisgICAgICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJbXBs
aWNpdERlZmF1bHQoQ1NTUHJvcGVydHlXZWJraXRNYXNrQm94SW1hZ2VPdXRzZXQsIHByb3BlcnR5
LCBXVEZNb3ZlKG91dHNldCksIHZhbHVlUG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgp
LCBpbXBvcnRhbnQpOworICAgICAgICAgICAgYWRkUHJvcGVydHlXaXRoSW1wbGljaXREZWZhdWx0
KENTU1Byb3BlcnR5V2Via2l0TWFza0JveEltYWdlUmVwZWF0LCBwcm9wZXJ0eSwgV1RGTW92ZShy
ZXBlYXQpLCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFsdWUoKSwgaW1wb3J0YW50
KTsKICAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgICBjYXNlIENTU1Byb3BlcnR5Qm9y
ZGVySW1hZ2U6Ci0gICAgICAgICAgICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNpdERlZmF1bHQoQ1NT
UHJvcGVydHlCb3JkZXJJbWFnZVNvdXJjZSwgQ1NTUHJvcGVydHlCb3JkZXJJbWFnZSwgV1RGTW92
ZShzb3VyY2UpLCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFsdWUoKSwgaW1wb3J0
YW50KTsKLSAgICAgICAgICAgIGFkZFByb3BlcnR5V2l0aEltcGxpY2l0RGVmYXVsdChDU1NQcm9w
ZXJ0eUJvcmRlckltYWdlU2xpY2UsIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2UsIFdURk1vdmUoc2xp
Y2UpLCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFsdWUoKSwgaW1wb3J0YW50KTsK
LSAgICAgICAgICAgIGFkZFByb3BlcnR5V2l0aEltcGxpY2l0RGVmYXVsdChDU1NQcm9wZXJ0eUJv
cmRlckltYWdlV2lkdGgsIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2UsIFdURk1vdmUod2lkdGgpLCB2
YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFsdWUoKSwgaW1wb3J0YW50KTsKLSAgICAg
ICAgICAgIGFkZFByb3BlcnR5V2l0aEltcGxpY2l0RGVmYXVsdChDU1NQcm9wZXJ0eUJvcmRlcklt
YWdlT3V0c2V0LCBDU1NQcm9wZXJ0eUJvcmRlckltYWdlLCBXVEZNb3ZlKG91dHNldCksIHZhbHVl
UG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQpOwotICAgICAgICAg
ICAgYWRkUHJvcGVydHlXaXRoSW1wbGljaXREZWZhdWx0KENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VS
ZXBlYXQsIENTU1Byb3BlcnR5Qm9yZGVySW1hZ2UsIFdURk1vdmUocmVwZWF0KSwgdmFsdWVQb29s
LmNyZWF0ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCksIGltcG9ydGFudCk7CisgICAgICAgIGNhc2Ug
Q1NTUHJvcGVydHlXZWJraXRCb3JkZXJJbWFnZToKKyAgICAgICAgICAgIGFkZFByb3BlcnR5V2l0
aEltcGxpY2l0RGVmYXVsdChDU1NQcm9wZXJ0eUJvcmRlckltYWdlU291cmNlLCBwcm9wZXJ0eSwg
V1RGTW92ZShzb3VyY2UpLCB2YWx1ZVBvb2wuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFsdWUoKSwg
aW1wb3J0YW50KTsKKyAgICAgICAgICAgIGFkZFByb3BlcnR5V2l0aEltcGxpY2l0RGVmYXVsdChD
U1NQcm9wZXJ0eUJvcmRlckltYWdlU2xpY2UsIHByb3BlcnR5LCBXVEZNb3ZlKHNsaWNlKSwgdmFs
dWVQb29sLmNyZWF0ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCksIGltcG9ydGFudCk7CisgICAgICAg
ICAgICBhZGRQcm9wZXJ0eVdpdGhJbXBsaWNpdERlZmF1bHQoQ1NTUHJvcGVydHlCb3JkZXJJbWFn
ZVdpZHRoLCBwcm9wZXJ0eSwgV1RGTW92ZSh3aWR0aCksIHZhbHVlUG9vbC5jcmVhdGVJbXBsaWNp
dEluaXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQpOworICAgICAgICAgICAgYWRkUHJvcGVydHlXaXRo
SW1wbGljaXREZWZhdWx0KENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VPdXRzZXQsIHByb3BlcnR5LCBX
VEZNb3ZlKG91dHNldCksIHZhbHVlUG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgpLCBp
bXBvcnRhbnQpOworICAgICAgICAgICAgYWRkUHJvcGVydHlXaXRoSW1wbGljaXREZWZhdWx0KENT
U1Byb3BlcnR5Qm9yZGVySW1hZ2VSZXBlYXQsIHByb3BlcnR5LCBXVEZNb3ZlKHJlcGVhdCksIHZh
bHVlUG9vbC5jcmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgpLCBpbXBvcnRhbnQpOwogICAgICAg
ICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICBBU1NFUlRf
Tk9UX1JFQUNIRUQoKTsKQEAgLTY0NDIsNiArNjQ0Niw3IEBAIGJvb2wgQ1NTUHJvcGVydHlQYXJz
ZXI6OnBhcnNlU2hvcnRoYW5kKENTU1Byb3BlcnR5SUQgcHJvcGVydHksIGJvb2wgaW1wb3J0YW50
KQogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9CiAgICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRl
ckltYWdlOgorICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJJbWFnZToKICAgICAgICAg
cmV0dXJuIGNvbnN1bWVCb3JkZXJJbWFnZShwcm9wZXJ0eSwgaW1wb3J0YW50KTsKICAgICBjYXNl
IENTU1Byb3BlcnR5UGFnZUJyZWFrQWZ0ZXI6CiAgICAgY2FzZSBDU1NQcm9wZXJ0eVBhZ2VCcmVh
a0JlZm9yZToKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUcmVl
QXNUZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUcmVlQXNUZXh0LmNw
cAppbmRleCAyNmNkMzJhNTRkNjcyZWQ2MDMwNTgxYjkyNmNkNGU2ZjQwY2YzMTY0Li41ZmM2ZmI1
NTAwZWMyNzM2MTAzZmQ4OTg1ODRjOWNiNDVlMmQ4ZTE3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyVHJlZUFzVGV4dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlclRyZWVBc1RleHQuY3BwCkBAIC0zMzAsNiArMzMwLDcgQEAgdm9pZCBS
ZW5kZXJUcmVlQXNUZXh0Ojp3cml0ZVJlbmRlck9iamVjdChUZXh0U3RyZWFtJiB0cywgY29uc3Qg
UmVuZGVyT2JqZWN0JiBvLAogICAgICAgICBMYXlvdXRVbml0IGJvcmRlclJpZ2h0ID0gYm94LmJv
cmRlclJpZ2h0KCk7CiAgICAgICAgIExheW91dFVuaXQgYm9yZGVyQm90dG9tID0gYm94LmJvcmRl
ckJvdHRvbSgpOwogICAgICAgICBMYXlvdXRVbml0IGJvcmRlckxlZnQgPSBib3guYm9yZGVyTGVm
dCgpOworICAgICAgICBib29sIG92ZXJyaWRkZW4gPSBvLnN0eWxlKCkuYm9yZGVySW1hZ2UoKS5v
dmVycmlkZXNCb3JkZXJXaWR0aHMoKTsKICAgICAgICAgaWYgKGJveC5pc0ZpZWxkc2V0KCkpIHsK
ICAgICAgICAgICAgIGNvbnN0IGF1dG8mIGJsb2NrID0gZG93bmNhc3Q8UmVuZGVyQmxvY2s+KGJv
eCk7CiAgICAgICAgICAgICBpZiAoby5zdHlsZSgpLndyaXRpbmdNb2RlKCkgPT0gV3JpdGluZ01v
ZGU6OlRvcFRvQm90dG9tKQpAQCAtMzU3LDcgKzM1OCw3IEBAIHZvaWQgUmVuZGVyVHJlZUFzVGV4
dDo6d3JpdGVSZW5kZXJPYmplY3QoVGV4dFN0cmVhbSYgdHMsIGNvbnN0IFJlbmRlck9iamVjdCYg
bywKICAgICAgICAgICAgICAgICB0cyA8PCBzZXJpYWxpemF0aW9uRm9yUmVuZGVyVHJlZUFzVGV4
dChjb2xvcikgPDwgIikiOwogICAgICAgICAgICAgfQogCi0gICAgICAgICAgICBpZiAoby5zdHls
ZSgpLmJvcmRlclJpZ2h0KCkgIT0gcHJldkJvcmRlcikgeworICAgICAgICAgICAgaWYgKG8uc3R5
bGUoKS5ib3JkZXJSaWdodCgpICE9IHByZXZCb3JkZXIgfHwgKG92ZXJyaWRkZW4gJiYgYm9yZGVy
UmlnaHQgIT0gYm9yZGVyVG9wKSkgewogICAgICAgICAgICAgICAgIHByZXZCb3JkZXIgPSBvLnN0
eWxlKCkuYm9yZGVyUmlnaHQoKTsKICAgICAgICAgICAgICAgICBpZiAoIWJvcmRlclJpZ2h0KQog
ICAgICAgICAgICAgICAgICAgICB0cyA8PCAiIG5vbmUiOwpAQCAtMzcxLDcgKzM3Miw3IEBAIHZv
aWQgUmVuZGVyVHJlZUFzVGV4dDo6d3JpdGVSZW5kZXJPYmplY3QoVGV4dFN0cmVhbSYgdHMsIGNv
bnN0IFJlbmRlck9iamVjdCYgbywKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICB9CiAK
LSAgICAgICAgICAgIGlmIChvLnN0eWxlKCkuYm9yZGVyQm90dG9tKCkgIT0gcHJldkJvcmRlcikg
eworICAgICAgICAgICAgaWYgKG8uc3R5bGUoKS5ib3JkZXJCb3R0b20oKSAhPSBwcmV2Qm9yZGVy
IHx8IChvdmVycmlkZGVuICYmIGJvcmRlckJvdHRvbSAhPSBib3JkZXJSaWdodCkpIHsKICAgICAg
ICAgICAgICAgICBwcmV2Qm9yZGVyID0gYm94LnN0eWxlKCkuYm9yZGVyQm90dG9tKCk7CiAgICAg
ICAgICAgICAgICAgaWYgKCFib3JkZXJCb3R0b20pCiAgICAgICAgICAgICAgICAgICAgIHRzIDw8
ICIgbm9uZSI7CkBAIC0zODUsNyArMzg2LDcgQEAgdm9pZCBSZW5kZXJUcmVlQXNUZXh0Ojp3cml0
ZVJlbmRlck9iamVjdChUZXh0U3RyZWFtJiB0cywgY29uc3QgUmVuZGVyT2JqZWN0JiBvLAogICAg
ICAgICAgICAgICAgIH0KICAgICAgICAgICAgIH0KIAotICAgICAgICAgICAgaWYgKG8uc3R5bGUo
KS5ib3JkZXJMZWZ0KCkgIT0gcHJldkJvcmRlcikgeworICAgICAgICAgICAgaWYgKG8uc3R5bGUo
KS5ib3JkZXJMZWZ0KCkgIT0gcHJldkJvcmRlciB8fCAob3ZlcnJpZGRlbiAmJiBib3JkZXJMZWZ0
ICE9IGJvcmRlckJvdHRvbSkpIHsKICAgICAgICAgICAgICAgICBwcmV2Qm9yZGVyID0gby5zdHls
ZSgpLmJvcmRlckxlZnQoKTsKICAgICAgICAgICAgICAgICBpZiAoIWJvcmRlckxlZnQpCiAgICAg
ICAgICAgICAgICAgICAgIHRzIDw8ICIgbm9uZSI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvc3R5bGUvQm9yZGVyRGF0YS5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L3N0eWxlL0JvcmRlckRhdGEuaAppbmRleCBlNDM5ODNlMjJiYTNlMmMyMTQxYjE2YzA4MTRiZGFi
YzgzOWM4MmE0Li41NjhmNTk4ZGU4MDI4YTkxODgyYWRhYzI0YzFkZWY0OWJiNGE0YzQ1IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvQm9yZGVyRGF0YS5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9Cb3JkZXJEYXRhLmgKQEAgLTY5LDcgKzY5
LDkgQEAgcHVibGljOgogICAgIGZsb2F0IGJvcmRlckxlZnRXaWR0aCgpIGNvbnN0CiAgICAgewog
ICAgICAgICBpZiAobV9sZWZ0LnN0eWxlKCkgPT0gQm9yZGVyU3R5bGU6Ok5vbmUgfHwgbV9sZWZ0
LnN0eWxlKCkgPT0gQm9yZGVyU3R5bGU6OkhpZGRlbikKLSAgICAgICAgICAgIHJldHVybiAwOyAK
KyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICBpZiAobV9pbWFnZS5vdmVycmlkZXNCb3Jk
ZXJXaWR0aHMoKSAmJiBtX2ltYWdlLmJvcmRlclNsaWNlcygpLmxlZnQoKS5pc0ZpeGVkKCkpCisg
ICAgICAgICAgICByZXR1cm4gbV9pbWFnZS5ib3JkZXJTbGljZXMoKS5sZWZ0KCkudmFsdWUoKTsK
ICAgICAgICAgcmV0dXJuIG1fbGVmdC53aWR0aCgpOwogICAgIH0KIApAQCAtNzcsNiArNzksOCBA
QCBwdWJsaWM6CiAgICAgewogICAgICAgICBpZiAobV9yaWdodC5zdHlsZSgpID09IEJvcmRlclN0
eWxlOjpOb25lIHx8IG1fcmlnaHQuc3R5bGUoKSA9PSBCb3JkZXJTdHlsZTo6SGlkZGVuKQogICAg
ICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIGlmIChtX2ltYWdlLm92ZXJyaWRlc0JvcmRlcldp
ZHRocygpICYmIG1faW1hZ2UuYm9yZGVyU2xpY2VzKCkucmlnaHQoKS5pc0ZpeGVkKCkpCisgICAg
ICAgICAgICByZXR1cm4gbV9pbWFnZS5ib3JkZXJTbGljZXMoKS5yaWdodCgpLnZhbHVlKCk7CiAg
ICAgICAgIHJldHVybiBtX3JpZ2h0LndpZHRoKCk7CiAgICAgfQogCkBAIC04NCw2ICs4OCw4IEBA
IHB1YmxpYzoKICAgICB7CiAgICAgICAgIGlmIChtX3RvcC5zdHlsZSgpID09IEJvcmRlclN0eWxl
OjpOb25lIHx8IG1fdG9wLnN0eWxlKCkgPT0gQm9yZGVyU3R5bGU6OkhpZGRlbikKICAgICAgICAg
ICAgIHJldHVybiAwOworICAgICAgICBpZiAobV9pbWFnZS5vdmVycmlkZXNCb3JkZXJXaWR0aHMo
KSAmJiBtX2ltYWdlLmJvcmRlclNsaWNlcygpLnRvcCgpLmlzRml4ZWQoKSkKKyAgICAgICAgICAg
IHJldHVybiBtX2ltYWdlLmJvcmRlclNsaWNlcygpLnRvcCgpLnZhbHVlKCk7CiAgICAgICAgIHJl
dHVybiBtX3RvcC53aWR0aCgpOwogICAgIH0KIApAQCAtOTEsNiArOTcsOCBAQCBwdWJsaWM6CiAg
ICAgewogICAgICAgICBpZiAobV9ib3R0b20uc3R5bGUoKSA9PSBCb3JkZXJTdHlsZTo6Tm9uZSB8
fCBtX2JvdHRvbS5zdHlsZSgpID09IEJvcmRlclN0eWxlOjpIaWRkZW4pCiAgICAgICAgICAgICBy
ZXR1cm4gMDsKKyAgICAgICAgaWYgKG1faW1hZ2Uub3ZlcnJpZGVzQm9yZGVyV2lkdGhzKCkgJiYg
bV9pbWFnZS5ib3JkZXJTbGljZXMoKS5ib3R0b20oKS5pc0ZpeGVkKCkpCisgICAgICAgICAgICBy
ZXR1cm4gbV9pbWFnZS5ib3JkZXJTbGljZXMoKS5ib3R0b20oKS52YWx1ZSgpOwogICAgICAgICBy
ZXR1cm4gbV9ib3R0b20ud2lkdGgoKTsKICAgICB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9zdHlsZS9OaW5lUGllY2VJbWFnZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvc3R5bGUvTmluZVBpZWNlSW1hZ2UuY3BwCmluZGV4IGEzMmM0ZDAwNDhkYjk1ZTQy
OGM4ZDVkNjA4OGY0NThhNjU2ZWY5NzIuLjI3ZDI2NGFkYTJkYTllYTJhNTU0OGM5YzliNzg2NDVh
Njc2ZjEwNjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9OaW5l
UGllY2VJbWFnZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL05pbmVQ
aWVjZUltYWdlLmNwcApAQCAtNTUsOCArNTUsOCBAQCBOaW5lUGllY2VJbWFnZTo6TmluZVBpZWNl
SW1hZ2UoVHlwZSBpbWFnZVR5cGUpCiB7CiB9CiAKLU5pbmVQaWVjZUltYWdlOjpOaW5lUGllY2VJ
bWFnZShSZWZQdHI8U3R5bGVJbWFnZT4mJiBpbWFnZSwgTGVuZ3RoQm94IGltYWdlU2xpY2VzLCBi
b29sIGZpbGwsIExlbmd0aEJveCBib3JkZXJTbGljZXMsIExlbmd0aEJveCBvdXRzZXQsIE5pbmVQ
aWVjZUltYWdlUnVsZSBob3Jpem9udGFsUnVsZSwgTmluZVBpZWNlSW1hZ2VSdWxlIHZlcnRpY2Fs
UnVsZSkKLSAgICA6IG1fZGF0YShEYXRhOjpjcmVhdGUoV1RGTW92ZShpbWFnZSksIGltYWdlU2xp
Y2VzLCBmaWxsLCBib3JkZXJTbGljZXMsIG91dHNldCwgaG9yaXpvbnRhbFJ1bGUsIHZlcnRpY2Fs
UnVsZSkpCitOaW5lUGllY2VJbWFnZTo6TmluZVBpZWNlSW1hZ2UoUmVmUHRyPFN0eWxlSW1hZ2U+
JiYgaW1hZ2UsIExlbmd0aEJveCBpbWFnZVNsaWNlcywgYm9vbCBmaWxsLCBMZW5ndGhCb3ggYm9y
ZGVyU2xpY2VzLCBib29sIG92ZXJyaWRlc0JvcmRlcldpZHRocywgTGVuZ3RoQm94IG91dHNldCwg
TmluZVBpZWNlSW1hZ2VSdWxlIGhvcml6b250YWxSdWxlLCBOaW5lUGllY2VJbWFnZVJ1bGUgdmVy
dGljYWxSdWxlKQorICAgIDogbV9kYXRhKERhdGE6OmNyZWF0ZShXVEZNb3ZlKGltYWdlKSwgaW1h
Z2VTbGljZXMsIGZpbGwsIGJvcmRlclNsaWNlcywgb3ZlcnJpZGVzQm9yZGVyV2lkdGhzLCBvdXRz
ZXQsIGhvcml6b250YWxSdWxlLCB2ZXJ0aWNhbFJ1bGUpKQogewogfQogCkBAIC0yMzUsOCArMjM1
LDkgQEAgdm9pZCBOaW5lUGllY2VJbWFnZTo6cGFpbnQoR3JhcGhpY3NDb250ZXh0JiBncmFwaGlj
c0NvbnRleHQsIFJlbmRlckVsZW1lbnQqIHJlbmQKIAogaW5saW5lIE5pbmVQaWVjZUltYWdlOjpE
YXRhOjpEYXRhKCkgPSBkZWZhdWx0OwogCi1pbmxpbmUgTmluZVBpZWNlSW1hZ2U6OkRhdGE6OkRh
dGEoUmVmUHRyPFN0eWxlSW1hZ2U+JiYgaW1hZ2UsIExlbmd0aEJveCBpbWFnZVNsaWNlcywgYm9v
bCBmaWxsLCBMZW5ndGhCb3ggYm9yZGVyU2xpY2VzLCBMZW5ndGhCb3ggb3V0c2V0LCBOaW5lUGll
Y2VJbWFnZVJ1bGUgaG9yaXpvbnRhbFJ1bGUsIE5pbmVQaWVjZUltYWdlUnVsZSB2ZXJ0aWNhbFJ1
bGUpCitpbmxpbmUgTmluZVBpZWNlSW1hZ2U6OkRhdGE6OkRhdGEoUmVmUHRyPFN0eWxlSW1hZ2U+
JiYgaW1hZ2UsIExlbmd0aEJveCBpbWFnZVNsaWNlcywgYm9vbCBmaWxsLCBMZW5ndGhCb3ggYm9y
ZGVyU2xpY2VzLCBib29sIG92ZXJyaWRlc0JvcmRlcldpZHRocywgTGVuZ3RoQm94IG91dHNldCwg
TmluZVBpZWNlSW1hZ2VSdWxlIGhvcml6b250YWxSdWxlLCBOaW5lUGllY2VJbWFnZVJ1bGUgdmVy
dGljYWxSdWxlKQogICAgIDogZmlsbChmaWxsKQorICAgICwgb3ZlcnJpZGVzQm9yZGVyV2lkdGhz
KG92ZXJyaWRlc0JvcmRlcldpZHRocykKICAgICAsIGhvcml6b250YWxSdWxlKGhvcml6b250YWxS
dWxlKQogICAgICwgdmVydGljYWxSdWxlKHZlcnRpY2FsUnVsZSkKICAgICAsIGltYWdlKFdURk1v
dmUoaW1hZ2UpKQpAQCAtMjQ5LDYgKzI1MCw3IEBAIGlubGluZSBOaW5lUGllY2VJbWFnZTo6RGF0
YTo6RGF0YShSZWZQdHI8U3R5bGVJbWFnZT4mJiBpbWFnZSwgTGVuZ3RoQm94IGltYWdlU2xpCiBp
bmxpbmUgTmluZVBpZWNlSW1hZ2U6OkRhdGE6OkRhdGEoY29uc3QgRGF0YSYgb3RoZXIpCiAgICAg
OiBSZWZDb3VudGVkPERhdGE+KCkKICAgICAsIGZpbGwob3RoZXIuZmlsbCkKKyAgICAsIG92ZXJy
aWRlc0JvcmRlcldpZHRocyhvdGhlci5vdmVycmlkZXNCb3JkZXJXaWR0aHMpCiAgICAgLCBob3Jp
em9udGFsUnVsZShvdGhlci5ob3Jpem9udGFsUnVsZSkKICAgICAsIHZlcnRpY2FsUnVsZShvdGhl
ci52ZXJ0aWNhbFJ1bGUpCiAgICAgLCBpbWFnZShvdGhlci5pbWFnZSkKQEAgLTI2Myw5ICsyNjUs
OSBAQCBpbmxpbmUgUmVmPE5pbmVQaWVjZUltYWdlOjpEYXRhPiBOaW5lUGllY2VJbWFnZTo6RGF0
YTo6Y3JlYXRlKCkKICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBEYXRhKTsKIH0KIAotaW5saW5l
IFJlZjxOaW5lUGllY2VJbWFnZTo6RGF0YT4gTmluZVBpZWNlSW1hZ2U6OkRhdGE6OmNyZWF0ZShS
ZWZQdHI8U3R5bGVJbWFnZT4mJiBpbWFnZSwgTGVuZ3RoQm94IGltYWdlU2xpY2VzLCBib29sIGZp
bGwsIExlbmd0aEJveCBib3JkZXJTbGljZXMsIExlbmd0aEJveCBvdXRzZXQsIE5pbmVQaWVjZUlt
YWdlUnVsZSBob3Jpem9udGFsUnVsZSwgTmluZVBpZWNlSW1hZ2VSdWxlIHZlcnRpY2FsUnVsZSkK
K2lubGluZSBSZWY8TmluZVBpZWNlSW1hZ2U6OkRhdGE+IE5pbmVQaWVjZUltYWdlOjpEYXRhOjpj
cmVhdGUoUmVmUHRyPFN0eWxlSW1hZ2U+JiYgaW1hZ2UsIExlbmd0aEJveCBpbWFnZVNsaWNlcywg
Ym9vbCBmaWxsLCBMZW5ndGhCb3ggYm9yZGVyU2xpY2VzLCBib29sIG92ZXJyaWRlc0JvcmRlcldp
ZHRocywgTGVuZ3RoQm94IG91dHNldCwgTmluZVBpZWNlSW1hZ2VSdWxlIGhvcml6b250YWxSdWxl
LCBOaW5lUGllY2VJbWFnZVJ1bGUgdmVydGljYWxSdWxlKQogewotICAgIHJldHVybiBhZG9wdFJl
ZigqbmV3IERhdGEoV1RGTW92ZShpbWFnZSksIGltYWdlU2xpY2VzLCBmaWxsLCBib3JkZXJTbGlj
ZXMsIG91dHNldCwgaG9yaXpvbnRhbFJ1bGUsIHZlcnRpY2FsUnVsZSkpOworICAgIHJldHVybiBh
ZG9wdFJlZigqbmV3IERhdGEoV1RGTW92ZShpbWFnZSksIGltYWdlU2xpY2VzLCBmaWxsLCBib3Jk
ZXJTbGljZXMsIG92ZXJyaWRlc0JvcmRlcldpZHRocywgb3V0c2V0LCBob3Jpem9udGFsUnVsZSwg
dmVydGljYWxSdWxlKSk7CiB9CiAKIFJlZjxOaW5lUGllY2VJbWFnZTo6RGF0YT4gTmluZVBpZWNl
SW1hZ2U6OkRhdGE6OmNvcHkoKSBjb25zdApAQCAtMjc5LDYgKzI4MSw3IEBAIGJvb2wgTmluZVBp
ZWNlSW1hZ2U6OkRhdGE6Om9wZXJhdG9yPT0oY29uc3QgRGF0YSYgb3RoZXIpIGNvbnN0CiAgICAg
ICAgICYmIGltYWdlU2xpY2VzID09IG90aGVyLmltYWdlU2xpY2VzCiAgICAgICAgICYmIGZpbGwg
PT0gb3RoZXIuZmlsbAogICAgICAgICAmJiBib3JkZXJTbGljZXMgPT0gb3RoZXIuYm9yZGVyU2xp
Y2VzCisgICAgICAgICYmIG92ZXJyaWRlc0JvcmRlcldpZHRocyA9PSBvdGhlci5vdmVycmlkZXNC
b3JkZXJXaWR0aHMKICAgICAgICAgJiYgb3V0c2V0ID09IG90aGVyLm91dHNldAogICAgICAgICAm
JiBob3Jpem9udGFsUnVsZSA9PSBvdGhlci5ob3Jpem9udGFsUnVsZQogICAgICAgICAmJiB2ZXJ0
aWNhbFJ1bGUgPT0gb3RoZXIudmVydGljYWxSdWxlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL3N0eWxlL05pbmVQaWVjZUltYWdlLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvc3R5bGUvTmluZVBpZWNlSW1hZ2UuaAppbmRleCBjMzlkZWMzMzQ0MTJkZDk1MDYwYTVh
MTZmNDJmZjk0ODJiZTNiZDRlLi42YTY3Y2U1MWE2ZmQyNjdiMDVjMjBhYzIwNWU5M2MyZGVkNDYx
NzE3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvTmluZVBpZWNl
SW1hZ2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvTmluZVBpZWNlSW1h
Z2UuaApAQCAtMTEyLDcgKzExMiw3IEBAIHB1YmxpYzoKICAgICB9OwogCiAgICAgTmluZVBpZWNl
SW1hZ2UoVHlwZSA9IFR5cGU6Ok5vcm1hbCk7Ci0gICAgTmluZVBpZWNlSW1hZ2UoUmVmUHRyPFN0
eWxlSW1hZ2U+JiYsIExlbmd0aEJveCBpbWFnZVNsaWNlcywgYm9vbCBmaWxsLCBMZW5ndGhCb3gg
Ym9yZGVyU2xpY2VzLCBMZW5ndGhCb3ggb3V0c2V0LCBOaW5lUGllY2VJbWFnZVJ1bGUgaG9yaXpv
bnRhbFJ1bGUsIE5pbmVQaWVjZUltYWdlUnVsZSB2ZXJ0aWNhbFJ1bGUpOworICAgIE5pbmVQaWVj
ZUltYWdlKFJlZlB0cjxTdHlsZUltYWdlPiYmLCBMZW5ndGhCb3ggaW1hZ2VTbGljZXMsIGJvb2wg
ZmlsbCwgTGVuZ3RoQm94IGJvcmRlclNsaWNlcywgYm9vbCBvdmVycmlkZXNCb3JkZXJXaWR0aHMs
IExlbmd0aEJveCBvdXRzZXQsIE5pbmVQaWVjZUltYWdlUnVsZSBob3Jpem9udGFsUnVsZSwgTmlu
ZVBpZWNlSW1hZ2VSdWxlIHZlcnRpY2FsUnVsZSk7CiAKICAgICBib29sIG9wZXJhdG9yPT0oY29u
c3QgTmluZVBpZWNlSW1hZ2UmIG90aGVyKSBjb25zdCB7IHJldHVybiBtX2RhdGEgPT0gb3RoZXIu
bV9kYXRhOyB9CiAgICAgYm9vbCBvcGVyYXRvciE9KGNvbnN0IE5pbmVQaWVjZUltYWdlJiBvdGhl
cikgY29uc3QgeyByZXR1cm4gbV9kYXRhICE9IG90aGVyLm1fZGF0YTsgfQpAQCAtMTMwLDYgKzEz
MCw5IEBAIHB1YmxpYzoKICAgICBjb25zdCBMZW5ndGhCb3gmIGJvcmRlclNsaWNlcygpIGNvbnN0
IHsgcmV0dXJuIG1fZGF0YS0+Ym9yZGVyU2xpY2VzOyB9CiAgICAgdm9pZCBzZXRCb3JkZXJTbGlj
ZXMoTGVuZ3RoQm94IHNsaWNlcykgeyBtX2RhdGEuYWNjZXNzKCkuYm9yZGVyU2xpY2VzID0gV1RG
TW92ZShzbGljZXMpOyB9CiAKKyAgICBib29sIG92ZXJyaWRlc0JvcmRlcldpZHRocygpIGNvbnN0
IHsgcmV0dXJuIG1fZGF0YS0+b3ZlcnJpZGVzQm9yZGVyV2lkdGhzOyB9CisgICAgdm9pZCBzZXRP
dmVycmlkZXNCb3JkZXJXaWR0aHMoYm9vbCB2KSB7IG1fZGF0YS5hY2Nlc3MoKS5vdmVycmlkZXNC
b3JkZXJXaWR0aHMgPSB2OyB9CisKICAgICBjb25zdCBMZW5ndGhCb3gmIG91dHNldCgpIGNvbnN0
IHsgcmV0dXJuIG1fZGF0YS0+b3V0c2V0OyB9CiAgICAgdm9pZCBzZXRPdXRzZXQoTGVuZ3RoQm94
IG91dHNldCkgeyBtX2RhdGEuYWNjZXNzKCkub3V0c2V0ID0gV1RGTW92ZShvdXRzZXQpOyB9CiAK
QEAgLTE0OCw2ICsxNTEsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBjb3B5Qm9yZGVyU2xpY2VzRnJv
bShjb25zdCBOaW5lUGllY2VJbWFnZSYgb3RoZXIpCiAgICAgewogICAgICAgICBtX2RhdGEuYWNj
ZXNzKCkuYm9yZGVyU2xpY2VzID0gb3RoZXIubV9kYXRhLT5ib3JkZXJTbGljZXM7CisgICAgICAg
IG1fZGF0YS5hY2Nlc3MoKS5vdmVycmlkZXNCb3JkZXJXaWR0aHMgPSBvdGhlci5tX2RhdGEtPm92
ZXJyaWRlc0JvcmRlcldpZHRoczsKICAgICB9CiAgICAgCiAgICAgdm9pZCBjb3B5T3V0c2V0RnJv
bShjb25zdCBOaW5lUGllY2VJbWFnZSYgb3RoZXIpCkBAIC0xODgsMTMgKzE5MiwxNCBAQCBwdWJs
aWM6CiBwcml2YXRlOgogICAgIHN0cnVjdCBEYXRhIDogUmVmQ291bnRlZDxEYXRhPiB7CiAgICAg
ICAgIHN0YXRpYyBSZWY8RGF0YT4gY3JlYXRlKCk7Ci0gICAgICAgIHN0YXRpYyBSZWY8RGF0YT4g
Y3JlYXRlKFJlZlB0cjxTdHlsZUltYWdlPiYmLCBMZW5ndGhCb3ggaW1hZ2VTbGljZXMsIGJvb2wg
ZmlsbCwgTGVuZ3RoQm94IGJvcmRlclNsaWNlcywgTGVuZ3RoQm94IG91dHNldCwgTmluZVBpZWNl
SW1hZ2VSdWxlIGhvcml6b250YWxSdWxlLCBOaW5lUGllY2VJbWFnZVJ1bGUgdmVydGljYWxSdWxl
KTsKKyAgICAgICAgc3RhdGljIFJlZjxEYXRhPiBjcmVhdGUoUmVmUHRyPFN0eWxlSW1hZ2U+JiYs
IExlbmd0aEJveCBpbWFnZVNsaWNlcywgYm9vbCBmaWxsLCBMZW5ndGhCb3ggYm9yZGVyU2xpY2Vz
LCBib29sIG92ZXJyaWRlc0JvcmRlcldpZHRocywgTGVuZ3RoQm94IG91dHNldCwgTmluZVBpZWNl
SW1hZ2VSdWxlIGhvcml6b250YWxSdWxlLCBOaW5lUGllY2VJbWFnZVJ1bGUgdmVydGljYWxSdWxl
KTsKICAgICAgICAgUmVmPERhdGE+IGNvcHkoKSBjb25zdDsKIAogICAgICAgICBib29sIG9wZXJh
dG9yPT0oY29uc3QgRGF0YSYpIGNvbnN0OwogICAgICAgICBib29sIG9wZXJhdG9yIT0oY29uc3Qg
RGF0YSYgb3RoZXIpIGNvbnN0IHsgcmV0dXJuICEoKnRoaXMgPT0gb3RoZXIpOyB9CiAKICAgICAg
ICAgYm9vbCBmaWxsIHsgZmFsc2UgfTsKKyAgICAgICAgYm9vbCBvdmVycmlkZXNCb3JkZXJXaWR0
aHMgeyBmYWxzZSB9OwogICAgICAgICBOaW5lUGllY2VJbWFnZVJ1bGUgaG9yaXpvbnRhbFJ1bGUg
eyBOaW5lUGllY2VJbWFnZVJ1bGU6OlN0cmV0Y2ggfTsKICAgICAgICAgTmluZVBpZWNlSW1hZ2VS
dWxlIHZlcnRpY2FsUnVsZSB7IE5pbmVQaWVjZUltYWdlUnVsZTo6U3RyZXRjaCB9OwogICAgICAg
ICBSZWZQdHI8U3R5bGVJbWFnZT4gaW1hZ2U7CkBAIC0yMDQsNyArMjA5LDcgQEAgcHJpdmF0ZToK
IAogICAgIHByaXZhdGU6CiAgICAgICAgIERhdGEoKTsKLSAgICAgICAgRGF0YShSZWZQdHI8U3R5
bGVJbWFnZT4mJiwgTGVuZ3RoQm94IGltYWdlU2xpY2VzLCBib29sIGZpbGwsIExlbmd0aEJveCBi
b3JkZXJTbGljZXMsIExlbmd0aEJveCBvdXRzZXQsIE5pbmVQaWVjZUltYWdlUnVsZSBob3Jpem9u
dGFsUnVsZSwgTmluZVBpZWNlSW1hZ2VSdWxlIHZlcnRpY2FsUnVsZSk7CisgICAgICAgIERhdGEo
UmVmUHRyPFN0eWxlSW1hZ2U+JiYsIExlbmd0aEJveCBpbWFnZVNsaWNlcywgYm9vbCBmaWxsLCBM
ZW5ndGhCb3ggYm9yZGVyU2xpY2VzLCBib29sIG92ZXJyaWRlc0JvcmRlcldpZHRocywgTGVuZ3Ro
Qm94IG91dHNldCwgTmluZVBpZWNlSW1hZ2VSdWxlIGhvcml6b250YWxSdWxlLCBOaW5lUGllY2VJ
bWFnZVJ1bGUgdmVydGljYWxSdWxlKTsKICAgICAgICAgRGF0YShjb25zdCBEYXRhJik7CiAgICAg
fTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0
eWxlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5jcHAK
aW5kZXggNzc5NzBmNmU3NTk3NzYyMDc0ZTE5ZjZmODE5OTZjN2VmYTgxOTU2NC4uZGM4ODFlNjNi
ODUxNDAzNGIzZmQ0ZTY4MzA4NThkYmNhOThmMTcwZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuY3BwCkBAIC0yNDk5LDYgKzI0OTksMTMgQEAgdm9p
ZCBSZW5kZXJTdHlsZTo6c2V0Qm9yZGVySW1hZ2VXaWR0aChMZW5ndGhCb3gmJiBzbGljZXMpCiAg
ICAgbV9zdXJyb3VuZERhdGEuYWNjZXNzKCkuYm9yZGVyLm1faW1hZ2Uuc2V0Qm9yZGVyU2xpY2Vz
KFdURk1vdmUoc2xpY2VzKSk7CiB9CiAKK3ZvaWQgUmVuZGVyU3R5bGU6OnNldEJvcmRlckltYWdl
V2lkdGhPdmVycmlkZXNCb3JkZXJXaWR0aHMoYm9vbCBvdmVycmlkZXNCb3JkZXJXaWR0aHMpCit7
CisgICAgaWYgKG1fc3Vycm91bmREYXRhLT5ib3JkZXIubV9pbWFnZS5vdmVycmlkZXNCb3JkZXJX
aWR0aHMoKSA9PSBvdmVycmlkZXNCb3JkZXJXaWR0aHMpCisgICAgICAgIHJldHVybjsKKyAgICBt
X3N1cnJvdW5kRGF0YS5hY2Nlc3MoKS5ib3JkZXIubV9pbWFnZS5zZXRPdmVycmlkZXNCb3JkZXJX
aWR0aHMob3ZlcnJpZGVzQm9yZGVyV2lkdGhzKTsKK30KKwogdm9pZCBSZW5kZXJTdHlsZTo6c2V0
Qm9yZGVySW1hZ2VPdXRzZXQoTGVuZ3RoQm94JiYgb3V0c2V0KQogewogICAgIGlmIChtX3N1cnJv
dW5kRGF0YS0+Ym9yZGVyLm1faW1hZ2Uub3V0c2V0KCkgPT0gb3V0c2V0KQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmggYi9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuaAppbmRleCBlNGE4Njg4Yzk3ZTlkNzgw
OWZiMDZjZmJhYjQ1NDUwMzgxMzQxMjEzLi5mZDM1YTdjZWU4MDBiNzFlZjQ4ZmE3NTYwNDY2NDYy
Y2MxODNhMmNjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVu
ZGVyU3R5bGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5
bGUuaApAQCAtOTM0LDYgKzkzNCw3IEBAIHB1YmxpYzoKICAgICB2b2lkIHNldEJvcmRlckltYWdl
U2xpY2VGaWxsKGJvb2wpOwogICAgIHZvaWQgc2V0Qm9yZGVySW1hZ2VTbGljZXMoTGVuZ3RoQm94
JiYpOwogICAgIHZvaWQgc2V0Qm9yZGVySW1hZ2VXaWR0aChMZW5ndGhCb3gmJik7CisgICAgdm9p
ZCBzZXRCb3JkZXJJbWFnZVdpZHRoT3ZlcnJpZGVzQm9yZGVyV2lkdGhzKGJvb2wpOwogICAgIHZv
aWQgc2V0Qm9yZGVySW1hZ2VPdXRzZXQoTGVuZ3RoQm94JiYpOwogICAgIHZvaWQgc2V0Qm9yZGVy
SW1hZ2VIb3Jpem9udGFsUnVsZShOaW5lUGllY2VJbWFnZVJ1bGUpOwogICAgIHZvaWQgc2V0Qm9y
ZGVySW1hZ2VWZXJ0aWNhbFJ1bGUoTmluZVBpZWNlSW1hZ2VSdWxlKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3N0eWxlL1Byb3BlcnR5Q2FzY2FkZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9z
dHlsZS9Qcm9wZXJ0eUNhc2NhZGUuY3BwCmluZGV4IDkwZmVkNjE3YWY3NTZlNzczOGJjOWI1MzVk
ZGRhMTI4ZWUwYzAxMmYuLjFlZTk0YjNlMjI4YWUwYzA1ZWNiNzY3OGQzNzgxMTUwZDgxNDRiYzcg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1Byb3BlcnR5Q2FzY2FkZS5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvc3R5bGUvUHJvcGVydHlDYXNjYWRlLmNwcApAQCAtNDcsMTMgKzQ3
LDYgQEAgc3RhdGljIGlubGluZSBib29sIHNob3VsZEFwcGx5UHJvcGVydHlJblBhcnNlT3JkZXIo
Q1NTUHJvcGVydHlJRCBwcm9wZXJ0eUlEKQogICAgIGNhc2UgQ1NTUHJvcGVydHlCYWNrZ3JvdW5k
T3JpZ2luOgogICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRCYWNrZ3JvdW5kU2l6ZToKICAgICBj
YXNlIENTU1Byb3BlcnR5QmFja2dyb3VuZFNpemU6Ci0gICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtp
dEJvcmRlckltYWdlOgotICAgIGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJJbWFnZToKLSAgICBjYXNl
IENTU1Byb3BlcnR5Qm9yZGVySW1hZ2VTbGljZToKLSAgICBjYXNlIENTU1Byb3BlcnR5Qm9yZGVy
SW1hZ2VTb3VyY2U6Ci0gICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlckltYWdlT3V0c2V0OgotICAg
IGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJJbWFnZVJlcGVhdDoKLSAgICBjYXNlIENTU1Byb3BlcnR5
Qm9yZGVySW1hZ2VXaWR0aDoKICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0Qm94U2hhZG93Ogog
ICAgIGNhc2UgQ1NTUHJvcGVydHlCb3hTaGFkb3c6CiAgICAgICAgIHJldHVybiB0cnVlOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVCdWlsZGVyQ29udmVydGVyLmggYi9T
b3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZUJ1aWxkZXJDb252ZXJ0ZXIuaAppbmRleCBhY2JiZjVm
OWE3ZTFjNzJkOWNjYWI4NTAyM2Q3ZWZkNGQyMTdiMmEyLi4zNGFhMzg1YWUwNDk3MWIzMjAwNmUx
MDYyNGI2ZGQ2NDRlMzAzZGI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHls
ZUJ1aWxkZXJDb252ZXJ0ZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZUJ1aWxk
ZXJDb252ZXJ0ZXIuaApAQCAtODUsNyArODUsNiBAQCBwdWJsaWM6CiAgICAgdGVtcGxhdGU8dHlw
ZW5hbWUgVD4gc3RhdGljIFQgY29udmVydE51bWJlcihCdWlsZGVyU3RhdGUmLCBjb25zdCBDU1NW
YWx1ZSYpOwogICAgIHRlbXBsYXRlPHR5cGVuYW1lIFQ+IHN0YXRpYyBUIGNvbnZlcnROdW1iZXJP
ckF1dG8oQnVpbGRlclN0YXRlJiwgY29uc3QgQ1NTVmFsdWUmKTsKICAgICBzdGF0aWMgc2hvcnQg
Y29udmVydFdlYmtpdEh5cGhlbmF0ZUxpbWl0TGluZXMoQnVpbGRlclN0YXRlJiwgY29uc3QgQ1NT
VmFsdWUmKTsKLSAgICB0ZW1wbGF0ZTxDU1NQcm9wZXJ0eUlEPiBzdGF0aWMgTmluZVBpZWNlSW1h
Z2UgY29udmVydEJvcmRlckltYWdlKEJ1aWxkZXJTdGF0ZSYsIENTU1ZhbHVlJik7CiAgICAgdGVt
cGxhdGU8Q1NTUHJvcGVydHlJRD4gc3RhdGljIE5pbmVQaWVjZUltYWdlIGNvbnZlcnRCb3JkZXJN
YXNrKEJ1aWxkZXJTdGF0ZSYsIENTU1ZhbHVlJik7CiAgICAgdGVtcGxhdGU8Q1NTUHJvcGVydHlJ
RD4gc3RhdGljIFJlZlB0cjxTdHlsZUltYWdlPiBjb252ZXJ0U3R5bGVJbWFnZShCdWlsZGVyU3Rh
dGUmLCBDU1NWYWx1ZSYpOwogICAgIHN0YXRpYyBJbWFnZU9yaWVudGF0aW9uIGNvbnZlcnRJbWFn
ZU9yaWVudGF0aW9uKEJ1aWxkZXJTdGF0ZSYsIGNvbnN0IENTU1ZhbHVlJik7CkBAIC00NjQsMTkg
KzQ2MywxMSBAQCBpbmxpbmUgc2hvcnQgQnVpbGRlckNvbnZlcnRlcjo6Y29udmVydFdlYmtpdEh5
cGhlbmF0ZUxpbWl0TGluZXMoQnVpbGRlclN0YXRlJiwgYwogICAgIHJldHVybiBwcmltaXRpdmVW
YWx1ZS52YWx1ZTxzaG9ydD4oQ1NTVW5pdFR5cGU6OkNTU19OVU1CRVIpOwogfQogCi10ZW1wbGF0
ZTxDU1NQcm9wZXJ0eUlEIHByb3BlcnR5PgotaW5saW5lIE5pbmVQaWVjZUltYWdlIEJ1aWxkZXJD
b252ZXJ0ZXI6OmNvbnZlcnRCb3JkZXJJbWFnZShCdWlsZGVyU3RhdGUmIGJ1aWxkZXJTdGF0ZSwg
Q1NTVmFsdWUmIHZhbHVlKQotewotICAgIE5pbmVQaWVjZUltYWdlIGltYWdlOwotICAgIGJ1aWxk
ZXJTdGF0ZS5zdHlsZU1hcCgpLm1hcE5pbmVQaWVjZUltYWdlKHByb3BlcnR5LCAmdmFsdWUsIGlt
YWdlKTsKLSAgICByZXR1cm4gaW1hZ2U7Ci19Ci0KIHRlbXBsYXRlPENTU1Byb3BlcnR5SUQgcHJv
cGVydHk+CiBpbmxpbmUgTmluZVBpZWNlSW1hZ2UgQnVpbGRlckNvbnZlcnRlcjo6Y29udmVydEJv
cmRlck1hc2soQnVpbGRlclN0YXRlJiBidWlsZGVyU3RhdGUsIENTU1ZhbHVlJiB2YWx1ZSkKIHsK
ICAgICBOaW5lUGllY2VJbWFnZSBpbWFnZShOaW5lUGllY2VJbWFnZTo6VHlwZTo6TWFzayk7Ci0g
ICAgYnVpbGRlclN0YXRlLnN0eWxlTWFwKCkubWFwTmluZVBpZWNlSW1hZ2UocHJvcGVydHksICZ2
YWx1ZSwgaW1hZ2UpOworICAgIGJ1aWxkZXJTdGF0ZS5zdHlsZU1hcCgpLm1hcE5pbmVQaWVjZUlt
YWdlKCZ2YWx1ZSwgaW1hZ2UpOwogICAgIHJldHVybiBpbWFnZTsKIH0KIApAQCAtODA5LDcgKzgw
MCw3IEBAIGlubGluZSBSZWZQdHI8U3R5bGVSZWZsZWN0aW9uPiBCdWlsZGVyQ29udmVydGVyOjpj
b252ZXJ0UmVmbGVjdGlvbihCdWlsZGVyU3RhdGUmCiAgICAgcmVmbGVjdGlvbi0+c2V0T2Zmc2V0
KHJlZmxlY3RWYWx1ZS5vZmZzZXQoKS5jb252ZXJ0VG9MZW5ndGg8Rml4ZWRJbnRlZ2VyQ29udmVy
c2lvbiB8IFBlcmNlbnRDb252ZXJzaW9uIHwgQ2FsY3VsYXRlZENvbnZlcnNpb24+KGJ1aWxkZXJT
dGF0ZS5jc3NUb0xlbmd0aENvbnZlcnNpb25EYXRhKCkpKTsKIAogICAgIE5pbmVQaWVjZUltYWdl
IG1hc2soTmluZVBpZWNlSW1hZ2U6OlR5cGU6Ok1hc2spOwotICAgIGJ1aWxkZXJTdGF0ZS5zdHls
ZU1hcCgpLm1hcE5pbmVQaWVjZUltYWdlKENTU1Byb3BlcnR5V2Via2l0Qm94UmVmbGVjdCwgcmVm
bGVjdFZhbHVlLm1hc2soKSwgbWFzayk7CisgICAgYnVpbGRlclN0YXRlLnN0eWxlTWFwKCkubWFw
TmluZVBpZWNlSW1hZ2UocmVmbGVjdFZhbHVlLm1hc2soKSwgbWFzayk7CiAgICAgcmVmbGVjdGlv
bi0+c2V0TWFzayhtYXNrKTsKIAogICAgIHJldHVybiByZWZsZWN0aW9uOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVCdWlsZGVyQ3VzdG9tLmggYi9Tb3VyY2UvV2ViQ29y
ZS9zdHlsZS9TdHlsZUJ1aWxkZXJDdXN0b20uaAppbmRleCBlN2FhZGRkMDRiZDIxY2I2NjA3M2Iz
MWYyOTFhZGI3N2I4MmMwMTI1Li5lZmE3Mzk3OTZmYzM0Y2UyYmQwMDE2NGQyNzk4MmNjOThiOWUy
MjlmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZUJ1aWxkZXJDdXN0b20u
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZUJ1aWxkZXJDdXN0b20uaApAQCAtNTUy
LDYgKzU1Miw3IEBAIHB1YmxpYzoKICAgICAgICAgICAgIExlbmd0aEJveCBsZW5ndGhCb3goTGVu
Z3RoKDEsIExlbmd0aFR5cGU6OlJlbGF0aXZlKSwgTGVuZ3RoKDEsIExlbmd0aFR5cGU6OlJlbGF0
aXZlKSwgTGVuZ3RoKDEsIExlbmd0aFR5cGU6OlJlbGF0aXZlKSwgTGVuZ3RoKDEsIExlbmd0aFR5
cGU6OlJlbGF0aXZlKSk7CiAgICAgICAgICAgICAvLyBNYXNrcyBoYXZlIGEgZGlmZmVyZW50IGlu
aXRpYWwgdmFsdWUgZm9yIHdpZHRocy4gVGhleSB1c2UgYW4gJ2F1dG8nIHZhbHVlIHJhdGhlciB0
aGFuIHRyeWluZyB0byBmaXQgdG8gdGhlIGJvcmRlci4KICAgICAgICAgICAgIGltYWdlLnNldEJv
cmRlclNsaWNlcyh0eXBlID09IEJvcmRlckltYWdlID8gbGVuZ3RoQm94IDogTGVuZ3RoQm94KCkp
OworICAgICAgICAgICAgaW1hZ2Uuc2V0T3ZlcnJpZGVzQm9yZGVyV2lkdGhzKGZhbHNlKTsKICAg
ICAgICAgICAgIGJyZWFrOwogICAgICAgICB9CiAgICAgICAgIHNldFZhbHVlKGJ1aWxkZXJTdGF0
ZS5zdHlsZSgpLCBpbWFnZSk7CkBAIC01NzEsNyArNTcyLDcgQEAgcHVibGljOgogICAgICAgICAg
ICAgYnVpbGRlclN0YXRlLnN0eWxlTWFwKCkubWFwTmluZVBpZWNlSW1hZ2VTbGljZSh2YWx1ZSwg
aW1hZ2UpOwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIGNhc2UgV2lkdGg6Ci0gICAgICAg
ICAgICBpbWFnZS5zZXRCb3JkZXJTbGljZXMoYnVpbGRlclN0YXRlLnN0eWxlTWFwKCkubWFwTmlu
ZVBpZWNlSW1hZ2VRdWFkKHZhbHVlKSk7CisgICAgICAgICAgICBidWlsZGVyU3RhdGUuc3R5bGVN
YXAoKS5tYXBOaW5lUGllY2VJbWFnZVdpZHRoKHZhbHVlLCBpbWFnZSk7CiAgICAgICAgICAgICBi
cmVhazsKICAgICAgICAgfQogICAgICAgICBzZXRWYWx1ZShidWlsZGVyU3RhdGUuc3R5bGUoKSwg
aW1hZ2UpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCmluZGV4IGE0ODc3ZDY5NDQzMTk4Y2E4MDRlZDkxZmYzOTVhMTY5NGYyYTI2MzYu
LmIxMjUxN2JiMTRiMzkzNGVhNTUwODBkNWZiYWNmNDBhYjY5NmNiMDEgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSwzMSBAQAorMjAyMi0wNC0wMSAgT3Jpb2wgQnJ1ZmF1ICA8b2JydWZhdUBpZ2FsaWEuY29tPgor
CisgICAgICAgIFtjc3NdIFR1cm4gLXdlYmtpdC1ib3JkZXItaW1hZ2UgaW50byBhIHNob3J0aGFu
ZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM3NDg3
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVXBkYXRl
IHRlc3RzIHRvIHRha2UgaW50byBhY2NvdW50IHRoYXQgJy13ZWJraXQtYm9yZGVyLWltYWdlJyBp
cyBhIHNob3J0aGFuZC4KKworICAgICAgICAqIGZhc3QvYm9yZGVycy9ib3JkZXItaW1hZ2UtbGVn
YWN5LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9ib3JkZXJzL2JvcmRlci1p
bWFnZS1sZWdhY3kuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9jc3MvYm9yZGVyLWltYWdl
LXN0eWxlLWxlbmd0aC1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9jc3MvYm9yZGVyLWlt
YWdlLXN0eWxlLWxlbmd0aC5odG1sOgorICAgICAgICAqIGZhc3QvY3NzL2dldENvbXB1dGVkU3R5
bGUvY29tcHV0ZWQtc3R5bGUtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3QvY3NzL2dldENv
bXB1dGVkU3R5bGUvY29tcHV0ZWQtc3R5bGUtd2l0aG91dC1yZW5kZXJlci1leHBlY3RlZC50eHQ6
CisgICAgICAgICogZmFzdC9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS9yZXNvdXJjZXMvcHJvcGVydHkt
bmFtZXMuanM6CisgICAgICAgICogZmFzdC9jc3MvaW1hZ2Utc2V0LXBhcnNpbmctZXhwZWN0ZWQu
dHh0OgorICAgICAgICAqIGZhc3QvY3NzL2ltYWdlLXNldC1wYXJzaW5nLmh0bWw6CisgICAgICAg
ICogZmFzdC9jc3MvdXJpLXRva2VuLXBhcnNpbmctZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZh
c3QvY3NzL3VyaS10b2tlbi1wYXJzaW5nLmh0bWw6CisgICAgICAgICogcGxhdGZvcm0vZ3RrL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jYXNjYWRlL2FsbC1wcm9wLWlu
aXRpYWwteG1sLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ndGsvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nzb20vZ2V0Q29tcHV0ZWRTdHlsZS1kZXRhY2hl
ZC1zdWJ0cmVlLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBwbGF0Zm9ybS9pb3MvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNhc2NhZGUvYWxsLXByb3AtaW5pdGlhbC14
bWwtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHBsYXRmb3JtL2lvcy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS9nZXRDb21wdXRlZFN0eWxlLWRldGFjaGVkLXN1YnRy
ZWUtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHBsYXRmb3JtL3dwZS9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY2FzY2FkZS9hbGwtcHJvcC1pbml0aWFsLXhtbC1leHBl
Y3RlZC50eHQ6CisgICAgICAgICogcGxhdGZvcm0vd3BlL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvY3NzL2Nzc29tL2dldENvbXB1dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS1leHBl
Y3RlZC50eHQ6CisgICAgICAgICogc3ZnL2Nzcy9nZXRDb21wdXRlZFN0eWxlLWJhc2ljLWV4cGVj
dGVkLnR4dDoKKwogMjAyMi0wMy0yMyAgWmlyYW4gU3VuICA8enN1bkBpZ2FsaWEuY29tPgogCiAg
ICAgICAgIFtJbnB1dEVsZW1lbnRdIEFkZCBIVE1MSW5wdXRFbGVtZW50OjpzaG93UGlja2VyKCkg
bWV0aG9kCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwppbmRleCBhZDkxZjg4OTk1MmZjZWQ4
ZGZiYjY5YTlhNTRiZDMzNDAzZmI1NTVmLi45YzdmMGJiMGVlNTlmNGM1N2Y3OTY1MGZkY2NkYWY2
ZDFjNmFmYzI4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9n
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBA
QAorMjAyMi0wNC0wMSAgT3Jpb2wgQnJ1ZmF1ICA8b2JydWZhdUBpZ2FsaWEuY29tPgorCisgICAg
ICAgIFtjc3NdIFR1cm4gLXdlYmtpdC1ib3JkZXItaW1hZ2UgaW50byBhIHNob3J0aGFuZAorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM3NDg3CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVXBkYXRlIHRlc3Rz
IHRvIHRha2UgaW50byBhY2NvdW50IHRoYXQgJy13ZWJraXQtYm9yZGVyLWltYWdlJyBpcyBhIHNo
b3J0aGFuZC4KKworICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNhc2NhZGUv
YWxsLXByb3AtaW5pdGlhbC14bWwtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9y
bS10ZXN0cy9jc3MvY3Nzb20vZ2V0Q29tcHV0ZWRTdHlsZS1kZXRhY2hlZC1zdWJ0cmVlLWV4cGVj
dGVkLnR4dDoKKwogMjAyMi0wMy0yMyAgWmlyYW4gU3VuICA8enN1bkBpZ2FsaWEuY29tPgogCiAg
ICAgICAgIFtJbnB1dEVsZW1lbnRdIEFkZCBIVE1MSW5wdXRFbGVtZW50OjpzaG93UGlja2VyKCkg
bWV0aG9kCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2JvcmRlcnMvYm9yZGVyLWltYWdl
LWxlZ2FjeS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2JvcmRlcnMvYm9yZGVyLWlt
YWdlLWxlZ2FjeS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjZlZDY4NmM2YjE1ODIyMWJjNzEz
MDQzNWY4ZjQ5MDE3NWQ2OTM4ZgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qv
Ym9yZGVycy9ib3JkZXItaW1hZ2UtbGVnYWN5LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEzIEBA
CisKK1BBU1MgYm9yZGVyLWltYWdlOiB1cmwoIiIpCitQQVNTIC13ZWJraXQtYm9yZGVyLWltYWdl
OiB1cmwoIiIpCitQQVNTIGJvcmRlci1pbWFnZTogdXJsKCIiKSA1MCUKK1BBU1MgLXdlYmtpdC1i
b3JkZXItaW1hZ2U6IHVybCgiIikgNTAlCitQQVNTIGJvcmRlci1pbWFnZTogdXJsKCIiKSA1MCUg
LyAxMSAyMiUgY2FsYygzMyUgKyAzM3B4KSBhdXRvCitQQVNTIGJvcmRlci1pbWFnZTogdXJsKCIi
KSA1MCUgLyAxMSAyMiUgY2FsYygzMyUgKyAzM3B4KSBjYWxjKDIycHggKiAyKQorUEFTUyAtd2Vi
a2l0LWJvcmRlci1pbWFnZTogdXJsKCIiKSA1MCUgZmlsbCAvIDExIDIyJSBjYWxjKDMzJSArIDMz
cHgpIGNhbGMoMjJweCAqIDIpCitQQVNTIGJvcmRlci1pbWFnZTogdXJsKCIiKSA1MCUgLyAxMXB4
IDIycHggMzNweCA0NHB4CitQQVNTIC13ZWJraXQtYm9yZGVyLWltYWdlOiB1cmwoIiIpIDUwJSBm
aWxsIC8gMTFweCAyMnB4IDMzcHggNDRweAorUEFTUyAtLXY6IDUwcHg7IGJvcmRlci1pbWFnZTog
dXJsKCIiKSA1MCUgLyB2YXIoLS12KQorUEFTUyAtLXY6IDUwcHg7IC13ZWJraXQtYm9yZGVyLWlt
YWdlOiB1cmwoIiIpIDUwJSAvIHZhcigtLXYpCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zh
c3QvYm9yZGVycy9ib3JkZXItaW1hZ2UtbGVnYWN5Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Jv
cmRlcnMvYm9yZGVyLWltYWdlLWxlZ2FjeS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmM3NmM1NzBhNGY2MWM3
YmIxOGVhYjI3Y2JmZWZkYWM2MjQxYjU0YWQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9mYXN0L2JvcmRlcnMvYm9yZGVyLWltYWdlLWxlZ2FjeS5odG1sCkBAIC0wLDAgKzEsMjg5IEBA
Cis8IURPQ1RZUEUgaHRtbD4KKzxzdHlsZT4KKyN0YXJnZXQgeworICAgIGJvcmRlcjogMXB4IHNv
bGlkOworfQorPC9zdHlsZT4KKzxkaXYgaWQ9InRhcmdldCI+PC9kaXY+Cis8c2NyaXB0IHNyYz0i
Li4vLi4vcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIu
Li8uLi9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorPHNjcmlwdD4K
K2NvbnN0IHRhcmdldCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0YXJnZXQiKTsKK2NvbnN0
IHN0eWxlID0gdGFyZ2V0LnN0eWxlOworY29uc3QgY3MgPSBnZXRDb21wdXRlZFN0eWxlKHRhcmdl
dCk7CisKK3Rlc3QoKCkgPT4geworICAgIHN0eWxlLmNzc1RleHQgPSAiYm9yZGVyLWltYWdlOiB1
cmwoXCJcIik7IjsKKworICAgIGFzc2VydF9lcXVhbHMoc3R5bGUuY3NzVGV4dCwgImJvcmRlci1p
bWFnZTogdXJsKFwiXCIpOyIsICJjc3NUZXh0Iik7CisgICAgYXNzZXJ0X2FycmF5X2VxdWFscyhb
Li4uc3R5bGVdLCBbImJvcmRlci1pbWFnZS1zb3VyY2UiLCAiYm9yZGVyLWltYWdlLXNsaWNlIiwg
ImJvcmRlci1pbWFnZS13aWR0aCIsICJib3JkZXItaW1hZ2Utb3V0c2V0IiwgImJvcmRlci1pbWFn
ZS1yZXBlYXQiXSk7CisKKyAgICBhc3NlcnRfZXF1YWxzKHN0eWxlLmJvcmRlckltYWdlU291cmNl
LCAidXJsKFwiXCIpIiwgIlNwZWNpZmllZCBib3JkZXItaW1hZ2Utc291cmNlIik7CisgICAgYXNz
ZXJ0X2VxdWFscyhzdHlsZS5ib3JkZXJJbWFnZVNsaWNlLCAiaW5pdGlhbCIsICJTcGVjaWZpZWQg
Ym9yZGVyLWltYWdlLXNsaWNlIik7CisgICAgYXNzZXJ0X2VxdWFscyhzdHlsZS5ib3JkZXJJbWFn
ZVdpZHRoLCAiaW5pdGlhbCIsICJTcGVjaWZpZWQgYm9yZGVyLWltYWdlLXdpZHRoIik7CisgICAg
YXNzZXJ0X2VxdWFscyhzdHlsZS5ib3JkZXJJbWFnZU91dHNldCwgImluaXRpYWwiLCAiU3BlY2lm
aWVkIGJvcmRlci1pbWFnZS1vdXRzZXQiKTsKKyAgICBhc3NlcnRfZXF1YWxzKHN0eWxlLmJvcmRl
ckltYWdlUmVwZWF0LCAiaW5pdGlhbCIsICJTcGVjaWZpZWQgYm9yZGVyLWltYWdlLXJlcGVhdCIp
OworICAgIGFzc2VydF9lcXVhbHMoc3R5bGUuYm9yZGVySW1hZ2UsICJ1cmwoXCJcIikiLCAiU3Bl
Y2lmaWVkIGJvcmRlci1pbWFnZSIpOworICAgIGFzc2VydF9lcXVhbHMoc3R5bGUud2Via2l0Qm9y
ZGVySW1hZ2UsICJ1cmwoXCJcIikiLCAiU3BlY2lmaWVkIC13ZWJraXQtYm9yZGVyLWltYWdlIik7
CisKKyAgICBhc3NlcnRfZXF1YWxzKGNzLmJvcmRlckltYWdlU291cmNlLCAidXJsKFwiXCIpIiwg
IkNvbXB1dGVkIGJvcmRlci1pbWFnZS1zb3VyY2UiKTsKKyAgICBhc3NlcnRfZXF1YWxzKGNzLmJv
cmRlckltYWdlU2xpY2UsICIxMDAlIiwgIkNvbXB1dGVkIGJvcmRlci1pbWFnZS1zbGljZSIpOwor
ICAgIGFzc2VydF9lcXVhbHMoY3MuYm9yZGVySW1hZ2VXaWR0aCwgIjEiLCAiQ29tcHV0ZWQgYm9y
ZGVyLWltYWdlLXdpZHRoIik7CisgICAgYXNzZXJ0X2VxdWFscyhjcy5ib3JkZXJJbWFnZU91dHNl
dCwgIjAiLCAiQ29tcHV0ZWQgYm9yZGVyLWltYWdlLW91dHNldCIpOworICAgIGFzc2VydF9lcXVh
bHMoY3MuYm9yZGVySW1hZ2VSZXBlYXQsICJzdHJldGNoIiwgIkNvbXB1dGVkIGJvcmRlci1pbWFn
ZS1yZXBlYXQiKTsKKyAgICBhc3NlcnRfZXF1YWxzKGNzLmJvcmRlckltYWdlLCAidXJsKFwiXCIp
IDEwMCUgLyAxIC8gMCBzdHJldGNoIiwgIkNvbXB1dGVkIGJvcmRlci1pbWFnZSIpOworICAgIGFz
c2VydF9lcXVhbHMoY3Mud2Via2l0Qm9yZGVySW1hZ2UsICJ1cmwoXCJcIikgMTAwJSAvIDEgLyAw
IHN0cmV0Y2giLCAiQ29tcHV0ZWQgLXdlYmtpdC1ib3JkZXItaW1hZ2UiKTsKKworICAgIGFzc2Vy
dF9lcXVhbHMoY3MuYm9yZGVyV2lkdGgsICIxcHgiLCAiQ29tcHV0ZWQgYm9yZGVyLXdpZHRoIik7
Cit9LCAiYm9yZGVyLWltYWdlOiB1cmwoXCJcIikiKTsKKwordGVzdCgoKSA9PiB7CisgICAgc3R5
bGUuY3NzVGV4dCA9ICItd2Via2l0LWJvcmRlci1pbWFnZTogdXJsKFwiXCIpOyI7CisKKyAgICBh
c3NlcnRfZXF1YWxzKHN0eWxlLmNzc1RleHQsICJib3JkZXItaW1hZ2U6IHVybChcIlwiKTsiLCAi
Y3NzVGV4dCIpOworICAgIGFzc2VydF9hcnJheV9lcXVhbHMoWy4uLnN0eWxlXSwgWyJib3JkZXIt
aW1hZ2Utc291cmNlIiwgImJvcmRlci1pbWFnZS1zbGljZSIsICJib3JkZXItaW1hZ2Utd2lkdGgi
LCAiYm9yZGVyLWltYWdlLW91dHNldCIsICJib3JkZXItaW1hZ2UtcmVwZWF0Il0pOworCisgICAg
YXNzZXJ0X2VxdWFscyhzdHlsZS5ib3JkZXJJbWFnZVNvdXJjZSwgInVybChcIlwiKSIsICJTcGVj
aWZpZWQgYm9yZGVyLWltYWdlLXNvdXJjZSIpOworICAgIGFzc2VydF9lcXVhbHMoc3R5bGUuYm9y
ZGVySW1hZ2VTbGljZSwgImluaXRpYWwiLCAiU3BlY2lmaWVkIGJvcmRlci1pbWFnZS1zbGljZSIp
OworICAgIGFzc2VydF9lcXVhbHMoc3R5bGUuYm9yZGVySW1hZ2VXaWR0aCwgImluaXRpYWwiLCAi
U3BlY2lmaWVkIGJvcmRlci1pbWFnZS13aWR0aCIpOworICAgIGFzc2VydF9lcXVhbHMoc3R5bGUu
Ym9yZGVySW1hZ2VPdXRzZXQsICJpbml0aWFsIiwgIlNwZWNpZmllZCBib3JkZXItaW1hZ2Utb3V0
c2V0Iik7CisgICAgYXNzZXJ0X2VxdWFscyhzdHlsZS5ib3JkZXJJbWFnZVJlcGVhdCwgImluaXRp
YWwiLCAiU3BlY2lmaWVkIGJvcmRlci1pbWFnZS1yZXBlYXQiKTsKKyAgICBhc3NlcnRfZXF1YWxz
KHN0eWxlLmJvcmRlckltYWdlLCAidXJsKFwiXCIpIiwgIlNwZWNpZmllZCBib3JkZXItaW1hZ2Ui
KTsKKyAgICBhc3NlcnRfZXF1YWxzKHN0eWxlLndlYmtpdEJvcmRlckltYWdlLCAidXJsKFwiXCIp
IiwgIlNwZWNpZmllZCAtd2Via2l0LWJvcmRlci1pbWFnZSIpOworCisgICAgYXNzZXJ0X2VxdWFs
cyhjcy5ib3JkZXJJbWFnZVNvdXJjZSwgInVybChcIlwiKSIsICJDb21wdXRlZCBib3JkZXItaW1h
Z2Utc291cmNlIik7CisgICAgYXNzZXJ0X2VxdWFscyhjcy5ib3JkZXJJbWFnZVNsaWNlLCAiMTAw
JSIsICJDb21wdXRlZCBib3JkZXItaW1hZ2Utc2xpY2UiKTsKKyAgICBhc3NlcnRfZXF1YWxzKGNz
LmJvcmRlckltYWdlV2lkdGgsICIxIiwgIkNvbXB1dGVkIGJvcmRlci1pbWFnZS13aWR0aCIpOwor
ICAgIGFzc2VydF9lcXVhbHMoY3MuYm9yZGVySW1hZ2VPdXRzZXQsICIwIiwgIkNvbXB1dGVkIGJv
cmRlci1pbWFnZS1vdXRzZXQiKTsKKyAgICBhc3NlcnRfZXF1YWxzKGNzLmJvcmRlckltYWdlUmVw
ZWF0LCAic3RyZXRjaCIsICJDb21wdXRlZCBib3JkZXItaW1hZ2UtcmVwZWF0Iik7CisgICAgYXNz
ZXJ0X2VxdWFscyhjcy5ib3JkZXJJbWFnZSwgInVybChcIlwiKSAxMDAlIC8gMSAvIDAgc3RyZXRj
aCIsICJDb21wdXRlZCBib3JkZXItaW1hZ2UiKTsKKyAgICBhc3NlcnRfZXF1YWxzKGNzLndlYmtp
dEJvcmRlckltYWdlLCAidXJsKFwiXCIpIDEwMCUgLyAxIC8gMCBzdHJldGNoIiwgIkNvbXB1dGVk
IC13ZWJraXQtYm9yZGVyLWltYWdlIik7CisKKyAgICBhc3NlcnRfZXF1YWxzKGNzLmJvcmRlcldp
ZHRoLCAiMXB4IiwgIkNvbXB1dGVkIGJvcmRlci13aWR0aCIpOworfSwgIi13ZWJraXQtYm9yZGVy
LWltYWdlOiB1cmwoXCJcIikiKTsKKwordGVzdCgoKSA9PiB7CisgICAgc3R5bGUuY3NzVGV4dCA9
ICJib3JkZXItaW1hZ2U6IHVybChcIlwiKSA1MCU7IjsKKworICAgIGFzc2VydF9lcXVhbHMoc3R5
bGUuY3NzVGV4dCwgImJvcmRlci1pbWFnZTogdXJsKFwiXCIpIDUwJTsiLCAiY3NzVGV4dCIpOwor
ICAgIGFzc2VydF9hcnJheV9lcXVhbHMoWy4uLnN0eWxlXSwgWyJib3JkZXItaW1hZ2Utc291cmNl
IiwgImJvcmRlci1pbWFnZS1zbGljZSIsICJib3JkZXItaW1hZ2Utd2lkdGgiLCAiYm9yZGVyLWlt
YWdlLW91dHNldCIsICJib3JkZXItaW1hZ2UtcmVwZWF0Il0pOworCisgICAgYXNzZXJ0X2VxdWFs
cyhzdHlsZS5ib3JkZXJJbWFnZVNvdXJjZSwgInVybChcIlwiKSIsICJTcGVjaWZpZWQgYm9yZGVy
LWltYWdlLXNvdXJjZSIpOworICAgIGFzc2VydF9lcXVhbHMoc3R5bGUuYm9yZGVySW1hZ2VTbGlj
ZSwgIjUwJSIsICJTcGVjaWZpZWQgYm9yZGVyLWltYWdlLXNsaWNlIik7CisgICAgYXNzZXJ0X2Vx
dWFscyhzdHlsZS5ib3JkZXJJbWFnZVdpZHRoLCAiaW5pdGlhbCIsICJTcGVjaWZpZWQgYm9yZGVy
LWltYWdlLXdpZHRoIik7CisgICAgYXNzZXJ0X2VxdWFscyhzdHlsZS5ib3JkZXJJbWFnZU91dHNl
dCwgImluaXRpYWwiLCAiU3BlY2lmaWVkIGJvcmRlci1pbWFnZS1vdXRzZXQiKTsKKyAgICBhc3Nl
cnRfZXF1YWxzKHN0eWxlLmJvcmRlckltYWdlUmVwZWF0LCAiaW5pdGlhbCIsICJTcGVjaWZpZWQg
Ym9yZGVyLWltYWdlLXJlcGVhdCIpOworICAgIGFzc2VydF9lcXVhbHMoc3R5bGUuYm9yZGVySW1h
Z2UsICJ1cmwoXCJcIikgNTAlIiwgIlNwZWNpZmllZCBib3JkZXItaW1hZ2UiKTsKKyAgICBhc3Nl
cnRfZXF1YWxzKHN0eWxlLndlYmtpdEJvcmRlckltYWdlLCAidXJsKFwiXCIpIDUwJSIsICJTcGVj
aWZpZWQgLXdlYmtpdC1ib3JkZXItaW1hZ2UiKTsKKworICAgIGFzc2VydF9lcXVhbHMoY3MuYm9y
ZGVySW1hZ2VTb3VyY2UsICJ1cmwoXCJcIikiLCAiQ29tcHV0ZWQgYm9yZGVyLWltYWdlLXNvdXJj
ZSIpOworICAgIGFzc2VydF9lcXVhbHMoY3MuYm9yZGVySW1hZ2VTbGljZSwgIjUwJSIsICJDb21w
dXRlZCBib3JkZXItaW1hZ2Utc2xpY2UiKTsKKyAgICBhc3NlcnRfZXF1YWxzKGNzLmJvcmRlcklt
YWdlV2lkdGgsICIxIiwgIkNvbXB1dGVkIGJvcmRlci1pbWFnZS13aWR0aCIpOworICAgIGFzc2Vy
dF9lcXVhbHMoY3MuYm9yZGVySW1hZ2VPdXRzZXQsICIwIiwgIkNvbXB1dGVkIGJvcmRlci1pbWFn
ZS1vdXRzZXQiKTsKKyAgICBhc3NlcnRfZXF1YWxzKGNzLmJvcmRlckltYWdlUmVwZWF0LCAic3Ry
ZXRjaCIsICJDb21wdXRlZCBib3JkZXItaW1hZ2UtcmVwZWF0Iik7CisgICAgYXNzZXJ0X2VxdWFs
cyhjcy5ib3JkZXJJbWFnZSwgInVybChcIlwiKSA1MCUgLyAxIC8gMCBzdHJldGNoIiwgIkNvbXB1
dGVkIGJvcmRlci1pbWFnZSIpOworICAgIGFzc2VydF9lcXVhbHMoY3Mud2Via2l0Qm9yZGVySW1h
Z2UsICJ1cmwoXCJcIikgNTAlIC8gMSAvIDAgc3RyZXRjaCIsICJDb21wdXRlZCAtd2Via2l0LWJv
cmRlci1pbWFnZSIpOworCisgICAgYXNzZXJ0X2VxdWFscyhjcy5ib3JkZXJXaWR0aCwgIjFweCIs
ICJDb21wdXRlZCBib3JkZXItd2lkdGgiKTsKK30sICJib3JkZXItaW1hZ2U6IHVybChcIlwiKSA1
MCUiKTsKKwordGVzdCgoKSA9PiB7CisgICAgc3R5bGUuY3NzVGV4dCA9ICItd2Via2l0LWJvcmRl
ci1pbWFnZTogdXJsKFwiXCIpIDUwJTsiOworCisgICAgYXNzZXJ0X2VxdWFscyhzdHlsZS5jc3NU
ZXh0LCAiYm9yZGVyLWltYWdlOiB1cmwoXCJcIikgNTAlIGZpbGw7IiwgImNzc1RleHQiKTsKKyAg
ICBhc3NlcnRfYXJyYXlfZXF1YWxzKFsuLi5zdHlsZV0sIFsiYm9yZGVyLWltYWdlLXNvdXJjZSIs
ICJib3JkZXItaW1hZ2Utc2xpY2UiLCAiYm9yZGVyLWltYWdlLXdpZHRoIiwgImJvcmRlci1pbWFn
ZS1vdXRzZXQiLCAiYm9yZGVyLWltYWdlLXJlcGVhdCJdKTsKKworICAgIGFzc2VydF9lcXVhbHMo
c3R5bGUuYm9yZGVySW1hZ2VTb3VyY2UsICJ1cmwoXCJcIikiLCAiU3BlY2lmaWVkIGJvcmRlci1p
bWFnZS1zb3VyY2UiKTsKKyAgICBhc3NlcnRfZXF1YWxzKHN0eWxlLmJvcmRlckltYWdlU2xpY2Us
ICI1MCUgZmlsbCIsICJTcGVjaWZpZWQgYm9yZGVyLWltYWdlLXNsaWNlIik7CisgICAgYXNzZXJ0
X2VxdWFscyhzdHlsZS5ib3JkZXJJbWFnZVdpZHRoLCAiaW5pdGlhbCIsICJTcGVjaWZpZWQgYm9y
ZGVyLWltYWdlLXdpZHRoIik7CisgICAgYXNzZXJ0X2VxdWFscyhzdHlsZS5ib3JkZXJJbWFnZU91
dHNldCwgImluaXRpYWwiLCAiU3BlY2lmaWVkIGJvcmRlci1pbWFnZS1vdXRzZXQiKTsKKyAgICBh
c3NlcnRfZXF1YWxzKHN0eWxlLmJvcmRlckltYWdlUmVwZWF0LCAiaW5pdGlhbCIsICJTcGVjaWZp
ZWQgYm9yZGVyLWltYWdlLXJlcGVhdCIpOworICAgIGFzc2VydF9lcXVhbHMoc3R5bGUuYm9yZGVy
SW1hZ2UsICJ1cmwoXCJcIikgNTAlIGZpbGwiLCAiU3BlY2lmaWVkIGJvcmRlci1pbWFnZSIpOwor
ICAgIGFzc2VydF9lcXVhbHMoc3R5bGUud2Via2l0Qm9yZGVySW1hZ2UsICJ1cmwoXCJcIikgNTAl
IGZpbGwiLCAiU3BlY2lmaWVkIC13ZWJraXQtYm9yZGVyLWltYWdlIik7CisKKyAgICBhc3NlcnRf
ZXF1YWxzKGNzLmJvcmRlckltYWdlU291cmNlLCAidXJsKFwiXCIpIiwgIkNvbXB1dGVkIGJvcmRl
ci1pbWFnZS1zb3VyY2UiKTsKKyAgICBhc3NlcnRfZXF1YWxzKGNzLmJvcmRlckltYWdlU2xpY2Us
ICI1MCUgZmlsbCIsICJDb21wdXRlZCBib3JkZXItaW1hZ2Utc2xpY2UiKTsKKyAgICBhc3NlcnRf
ZXF1YWxzKGNzLmJvcmRlckltYWdlV2lkdGgsICIxIiwgIkNvbXB1dGVkIGJvcmRlci1pbWFnZS13
aWR0aCIpOworICAgIGFzc2VydF9lcXVhbHMoY3MuYm9yZGVySW1hZ2VPdXRzZXQsICIwIiwgIkNv
bXB1dGVkIGJvcmRlci1pbWFnZS1vdXRzZXQiKTsKKyAgICBhc3NlcnRfZXF1YWxzKGNzLmJvcmRl
ckltYWdlUmVwZWF0LCAic3RyZXRjaCIsICJDb21wdXRlZCBib3JkZXItaW1hZ2UtcmVwZWF0Iik7
CisgICAgYXNzZXJ0X2VxdWFscyhjcy5ib3JkZXJJbWFnZSwgInVybChcIlwiKSA1MCUgZmlsbCAv
IDEgLyAwIHN0cmV0Y2giLCAiQ29tcHV0ZWQgYm9yZGVyLWltYWdlIik7CisgICAgYXNzZXJ0X2Vx
dWFscyhjcy53ZWJraXRCb3JkZXJJbWFnZSwgInVybChcIlwiKSA1MCUgZmlsbCAvIDEgLyAwIHN0
cmV0Y2giLCAiQ29tcHV0ZWQgLXdlYmtpdC1ib3JkZXItaW1hZ2UiKTsKKworICAgIGFzc2VydF9l
cXVhbHMoY3MuYm9yZGVyV2lkdGgsICIxcHgiLCAiQ29tcHV0ZWQgYm9yZGVyLXdpZHRoIik7Cit9
LCAiLXdlYmtpdC1ib3JkZXItaW1hZ2U6IHVybChcIlwiKSA1MCUiKTsKKwordGVzdCgoKSA9PiB7
CisgICAgc3R5bGUuY3NzVGV4dCA9ICJib3JkZXItaW1hZ2U6IHVybChcIlwiKSA1MCUgLyAxMSAy
MiUgY2FsYygzMyUgKyAzM3B4KSBhdXRvOyI7CisKKyAgICBhc3NlcnRfZXF1YWxzKHN0eWxlLmNz
c1RleHQsICJib3JkZXItaW1hZ2U6IHVybChcIlwiKSA1MCUgLyAxMSAyMiUgY2FsYygzMyUgKyAz
M3B4KSBhdXRvOyIsICJjc3NUZXh0Iik7CisgICAgYXNzZXJ0X2FycmF5X2VxdWFscyhbLi4uc3R5
bGVdLCBbImJvcmRlci1pbWFnZS1zb3VyY2UiLCAiYm9yZGVyLWltYWdlLXNsaWNlIiwgImJvcmRl
ci1pbWFnZS13aWR0aCIsICJib3JkZXItaW1hZ2Utb3V0c2V0IiwgImJvcmRlci1pbWFnZS1yZXBl
YXQiXSk7CisKKyAgICBhc3NlcnRfZXF1YWxzKHN0eWxlLmJvcmRlckltYWdlU291cmNlLCAidXJs
KFwiXCIpIiwgIlNwZWNpZmllZCBib3JkZXItaW1hZ2Utc291cmNlIik7CisgICAgYXNzZXJ0X2Vx
dWFscyhzdHlsZS5ib3JkZXJJbWFnZVNsaWNlLCAiNTAlIiwgIlNwZWNpZmllZCBib3JkZXItaW1h
Z2Utc2xpY2UiKTsKKyAgICBhc3NlcnRfZXF1YWxzKHN0eWxlLmJvcmRlckltYWdlV2lkdGgsICIx
MSAyMiUgY2FsYygzMyUgKyAzM3B4KSBhdXRvIiwgIlNwZWNpZmllZCBib3JkZXItaW1hZ2Utd2lk
dGgiKTsKKyAgICBhc3NlcnRfZXF1YWxzKHN0eWxlLmJvcmRlckltYWdlT3V0c2V0LCAiaW5pdGlh
bCIsICJTcGVjaWZpZWQgYm9yZGVyLWltYWdlLW91dHNldCIpOworICAgIGFzc2VydF9lcXVhbHMo
c3R5bGUuYm9yZGVySW1hZ2VSZXBlYXQsICJpbml0aWFsIiwgIlNwZWNpZmllZCBib3JkZXItaW1h
Z2UtcmVwZWF0Iik7CisgICAgYXNzZXJ0X2VxdWFscyhzdHlsZS5ib3JkZXJJbWFnZSwgInVybChc
IlwiKSA1MCUgLyAxMSAyMiUgY2FsYygzMyUgKyAzM3B4KSBhdXRvIiwgIlNwZWNpZmllZCBib3Jk
ZXItaW1hZ2UiKTsKKyAgICBhc3NlcnRfZXF1YWxzKHN0eWxlLndlYmtpdEJvcmRlckltYWdlLCAi
dXJsKFwiXCIpIDUwJSAvIDExIDIyJSBjYWxjKDMzJSArIDMzcHgpIGF1dG8iLCAiU3BlY2lmaWVk
IC13ZWJraXQtYm9yZGVyLWltYWdlIik7CisKKyAgICBhc3NlcnRfZXF1YWxzKGNzLmJvcmRlcklt
YWdlU291cmNlLCAidXJsKFwiXCIpIiwgIkNvbXB1dGVkIGJvcmRlci1pbWFnZS1zb3VyY2UiKTsK
KyAgICBhc3NlcnRfZXF1YWxzKGNzLmJvcmRlckltYWdlU2xpY2UsICI1MCUiLCAiQ29tcHV0ZWQg
Ym9yZGVyLWltYWdlLXNsaWNlIik7CisgICAgYXNzZXJ0X2VxdWFscyhjcy5ib3JkZXJJbWFnZVdp
ZHRoLCAiMTEgMjIlIGNhbGMoMzMlICsgMzNweCkgYXV0byIsICJDb21wdXRlZCBib3JkZXItaW1h
Z2Utd2lkdGgiKTsKKyAgICBhc3NlcnRfZXF1YWxzKGNzLmJvcmRlckltYWdlT3V0c2V0LCAiMCIs
ICJDb21wdXRlZCBib3JkZXItaW1hZ2Utb3V0c2V0Iik7CisgICAgYXNzZXJ0X2VxdWFscyhjcy5i
b3JkZXJJbWFnZVJlcGVhdCwgInN0cmV0Y2giLCAiQ29tcHV0ZWQgYm9yZGVyLWltYWdlLXJlcGVh
dCIpOworICAgIGFzc2VydF9lcXVhbHMoY3MuYm9yZGVySW1hZ2UsICJ1cmwoXCJcIikgNTAlIC8g
MTEgMjIlIGNhbGMoMzMlICsgMzNweCkgYXV0byAvIDAgc3RyZXRjaCIsICJDb21wdXRlZCBib3Jk
ZXItaW1hZ2UiKTsKKyAgICBhc3NlcnRfZXF1YWxzKGNzLndlYmtpdEJvcmRlckltYWdlLCAidXJs
KFwiXCIpIDUwJSAvIDExIDIyJSBjYWxjKDMzJSArIDMzcHgpIGF1dG8gLyAwIHN0cmV0Y2giLCAi
Q29tcHV0ZWQgLXdlYmtpdC1ib3JkZXItaW1hZ2UiKTsKKworICAgIGFzc2VydF9lcXVhbHMoY3Mu
Ym9yZGVyV2lkdGgsICIxcHgiLCAiQ29tcHV0ZWQgYm9yZGVyLXdpZHRoIik7Cit9LCAiYm9yZGVy
LWltYWdlOiB1cmwoXCJcIikgNTAlIC8gMTEgMjIlIGNhbGMoMzMlICsgMzNweCkgYXV0byIpOwor
Cit0ZXN0KCgpID0+IHsKKyAgICBzdHlsZS5jc3NUZXh0ID0gImJvcmRlci1pbWFnZTogdXJsKFwi
XCIpIDUwJSAvIDExIDIyJSBjYWxjKDMzJSArIDMzcHgpIGNhbGMoMjJweCAqIDIpOyI7CisKKyAg
ICBhc3NlcnRfZXF1YWxzKHN0eWxlLmNzc1RleHQsICJib3JkZXItaW1hZ2U6IHVybChcIlwiKSA1
MCUgLyAxMSAyMiUgY2FsYygzMyUgKyAzM3B4KSBjYWxjKDQ0cHgpOyIsICJjc3NUZXh0Iik7Cisg
ICAgYXNzZXJ0X2FycmF5X2VxdWFscyhbLi4uc3R5bGVdLCBbImJvcmRlci1pbWFnZS1zb3VyY2Ui
LCAiYm9yZGVyLWltYWdlLXNsaWNlIiwgImJvcmRlci1pbWFnZS13aWR0aCIsICJib3JkZXItaW1h
Z2Utb3V0c2V0IiwgImJvcmRlci1pbWFnZS1yZXBlYXQiXSk7CisKKyAgICBhc3NlcnRfZXF1YWxz
KHN0eWxlLmJvcmRlckltYWdlU291cmNlLCAidXJsKFwiXCIpIiwgIlNwZWNpZmllZCBib3JkZXIt
aW1hZ2Utc291cmNlIik7CisgICAgYXNzZXJ0X2VxdWFscyhzdHlsZS5ib3JkZXJJbWFnZVNsaWNl
LCAiNTAlIiwgIlNwZWNpZmllZCBib3JkZXItaW1hZ2Utc2xpY2UiKTsKKyAgICBhc3NlcnRfZXF1
YWxzKHN0eWxlLmJvcmRlckltYWdlV2lkdGgsICIxMSAyMiUgY2FsYygzMyUgKyAzM3B4KSBjYWxj
KDQ0cHgpIiwgIlNwZWNpZmllZCBib3JkZXItaW1hZ2Utd2lkdGgiKTsKKyAgICBhc3NlcnRfZXF1
YWxzKHN0eWxlLmJvcmRlckltYWdlT3V0c2V0LCAiaW5pdGlhbCIsICJTcGVjaWZpZWQgYm9yZGVy
LWltYWdlLW91dHNldCIpOworICAgIGFzc2VydF9lcXVhbHMoc3R5bGUuYm9yZGVySW1hZ2VSZXBl
YXQsICJpbml0aWFsIiwgIlNwZWNpZmllZCBib3JkZXItaW1hZ2UtcmVwZWF0Iik7CisgICAgYXNz
ZXJ0X2VxdWFscyhzdHlsZS5ib3JkZXJJbWFnZSwgInVybChcIlwiKSA1MCUgLyAxMSAyMiUgY2Fs
YygzMyUgKyAzM3B4KSBjYWxjKDQ0cHgpIiwgIlNwZWNpZmllZCBib3JkZXItaW1hZ2UiKTsKKyAg
ICBhc3NlcnRfZXF1YWxzKHN0eWxlLndlYmtpdEJvcmRlckltYWdlLCAiIiwgIlNwZWNpZmllZCAt
d2Via2l0LWJvcmRlci1pbWFnZSIpOworCisgICAgYXNzZXJ0X2VxdWFscyhjcy5ib3JkZXJJbWFn
ZVNvdXJjZSwgInVybChcIlwiKSIsICJDb21wdXRlZCBib3JkZXItaW1hZ2Utc291cmNlIik7Cisg
ICAgYXNzZXJ0X2VxdWFscyhjcy5ib3JkZXJJbWFnZVNsaWNlLCAiNTAlIiwgIkNvbXB1dGVkIGJv
cmRlci1pbWFnZS1zbGljZSIpOworICAgIGFzc2VydF9lcXVhbHMoY3MuYm9yZGVySW1hZ2VXaWR0
aCwgIjExIDIyJSBjYWxjKDMzJSArIDMzcHgpIDQ0cHgiLCAiQ29tcHV0ZWQgYm9yZGVyLWltYWdl
LXdpZHRoIik7CisgICAgYXNzZXJ0X2VxdWFscyhjcy5ib3JkZXJJbWFnZU91dHNldCwgIjAiLCAi
Q29tcHV0ZWQgYm9yZGVyLWltYWdlLW91dHNldCIpOworICAgIGFzc2VydF9lcXVhbHMoY3MuYm9y
ZGVySW1hZ2VSZXBlYXQsICJzdHJldGNoIiwgIkNvbXB1dGVkIGJvcmRlci1pbWFnZS1yZXBlYXQi
KTsKKyAgICBhc3NlcnRfZXF1YWxzKGNzLmJvcmRlckltYWdlLCAidXJsKFwiXCIpIDUwJSAvIDEx
IDIyJSBjYWxjKDMzJSArIDMzcHgpIDQ0cHggLyAwIHN0cmV0Y2giLCAiQ29tcHV0ZWQgYm9yZGVy
LWltYWdlIik7CisgICAgYXNzZXJ0X2VxdWFscyhjcy53ZWJraXRCb3JkZXJJbWFnZSwgIiIsICJD
b21wdXRlZCAtd2Via2l0LWJvcmRlci1pbWFnZSIpOworCisgICAgYXNzZXJ0X2VxdWFscyhjcy5i
b3JkZXJXaWR0aCwgIjFweCIsICJDb21wdXRlZCBib3JkZXItd2lkdGgiKTsKK30sICJib3JkZXIt
aW1hZ2U6IHVybChcIlwiKSA1MCUgLyAxMSAyMiUgY2FsYygzMyUgKyAzM3B4KSBjYWxjKDIycHgg
KiAyKSIpOworCit0ZXN0KCgpID0+IHsKKyAgICBzdHlsZS5jc3NUZXh0ID0gIi13ZWJraXQtYm9y
ZGVyLWltYWdlOiB1cmwoXCJcIikgNTAlIC8gMTEgMjIlIGNhbGMoMzMlICsgMzNweCkgY2FsYygy
MnB4ICogMik7IjsKKworICAgIGFzc2VydF9lcXVhbHMoc3R5bGUuY3NzVGV4dCwgIi13ZWJraXQt
Ym9yZGVyLWltYWdlOiB1cmwoXCJcIikgNTAlIGZpbGwgLyAxMSAyMiUgY2FsYygzMyUgKyAzM3B4
KSBjYWxjKDQ0cHgpOyIsICJjc3NUZXh0Iik7CisgICAgYXNzZXJ0X2FycmF5X2VxdWFscyhbLi4u
c3R5bGVdLCBbImJvcmRlci1pbWFnZS1zb3VyY2UiLCAiYm9yZGVyLWltYWdlLXNsaWNlIiwgImJv
cmRlci1pbWFnZS13aWR0aCIsICJib3JkZXItaW1hZ2Utb3V0c2V0IiwgImJvcmRlci1pbWFnZS1y
ZXBlYXQiXSk7CisKKyAgICBhc3NlcnRfZXF1YWxzKHN0eWxlLmJvcmRlckltYWdlU291cmNlLCAi
dXJsKFwiXCIpIiwgIlNwZWNpZmllZCBib3JkZXItaW1hZ2Utc291cmNlIik7CisgICAgYXNzZXJ0
X2VxdWFscyhzdHlsZS5ib3JkZXJJbWFnZVNsaWNlLCAiNTAlIGZpbGwiLCAiU3BlY2lmaWVkIGJv
cmRlci1pbWFnZS1zbGljZSIpOworICAgIGFzc2VydF9lcXVhbHMoc3R5bGUuYm9yZGVySW1hZ2VX
aWR0aCwgIiIsICJTcGVjaWZpZWQgYm9yZGVyLWltYWdlLXdpZHRoIik7CisgICAgYXNzZXJ0X2Vx
dWFscyhzdHlsZS5ib3JkZXJJbWFnZU91dHNldCwgImluaXRpYWwiLCAiU3BlY2lmaWVkIGJvcmRl
ci1pbWFnZS1vdXRzZXQiKTsKKyAgICBhc3NlcnRfZXF1YWxzKHN0eWxlLmJvcmRlckltYWdlUmVw
ZWF0LCAiaW5pdGlhbCIsICJTcGVjaWZpZWQgYm9yZGVyLWltYWdlLXJlcGVhdCIpOworICAgIGFz
c2VydF9lcXVhbHMoc3R5bGUuYm9yZGVySW1hZ2UsICIiLCAiU3BlY2lmaWVkIGJvcmRlci1pbWFn
ZSIpOworICAgIGFzc2VydF9lcXVhbHMoc3R5bGUud2Via2l0Qm9yZGVySW1hZ2UsICJ1cmwoXCJc
IikgNTAlIGZpbGwgLyAxMSAyMiUgY2FsYygzMyUgKyAzM3B4KSBjYWxjKDQ0cHgpIiwgIlNwZWNp
ZmllZCAtd2Via2l0LWJvcmRlci1pbWFnZSIpOworCisgICAgYXNzZXJ0X2VxdWFscyhjcy5ib3Jk
ZXJJbWFnZVNvdXJjZSwgInVybChcIlwiKSIsICJDb21wdXRlZCBib3JkZXItaW1hZ2Utc291cmNl
Iik7CisgICAgYXNzZXJ0X2VxdWFscyhjcy5ib3JkZXJJbWFnZVNsaWNlLCAiNTAlIGZpbGwiLCAi
Q29tcHV0ZWQgYm9yZGVyLWltYWdlLXNsaWNlIik7CisgICAgYXNzZXJ0X2VxdWFscyhjcy5ib3Jk
ZXJJbWFnZVdpZHRoLCAiIiwgIkNvbXB1dGVkIGJvcmRlci1pbWFnZS13aWR0aCIpOworICAgIGFz
c2VydF9lcXVhbHMoY3MuYm9yZGVySW1hZ2VPdXRzZXQsICIwIiwgIkNvbXB1dGVkIGJvcmRlci1p
bWFnZS1vdXRzZXQiKTsKKyAgICBhc3NlcnRfZXF1YWxzKGNzLmJvcmRlckltYWdlUmVwZWF0LCAi
c3RyZXRjaCIsICJDb21wdXRlZCBib3JkZXItaW1hZ2UtcmVwZWF0Iik7CisgICAgYXNzZXJ0X2Vx
dWFscyhjcy5ib3JkZXJJbWFnZSwgIiIsICJDb21wdXRlZCBib3JkZXItaW1hZ2UiKTsKKyAgICBh
c3NlcnRfZXF1YWxzKGNzLndlYmtpdEJvcmRlckltYWdlLCAidXJsKFwiXCIpIDUwJSBmaWxsIC8g
MTEgMjIlIGNhbGMoMzMlICsgMzNweCkgNDRweCAvIDAgc3RyZXRjaCIsICJDb21wdXRlZCAtd2Vi
a2l0LWJvcmRlci1pbWFnZSIpOworCisgICAgYXNzZXJ0X2VxdWFscyhjcy5ib3JkZXJXaWR0aCwg
IjFweCAxcHggMXB4IDQ0cHgiLCAiQ29tcHV0ZWQgYm9yZGVyLXdpZHRoIik7Cit9LCAiLXdlYmtp
dC1ib3JkZXItaW1hZ2U6IHVybChcIlwiKSA1MCUgZmlsbCAvIDExIDIyJSBjYWxjKDMzJSArIDMz
cHgpIGNhbGMoMjJweCAqIDIpIik7CisKK3Rlc3QoKCkgPT4geworICAgIHN0eWxlLmNzc1RleHQg
PSAiYm9yZGVyLWltYWdlOiB1cmwoXCJcIikgNTAlIC8gMTFweCAyMnB4IDMzcHggNDRweDsiOwor
CisgICAgYXNzZXJ0X2VxdWFscyhzdHlsZS5jc3NUZXh0LCAiYm9yZGVyLWltYWdlOiB1cmwoXCJc
IikgNTAlIC8gMTFweCAyMnB4IDMzcHggNDRweDsiLCAiY3NzVGV4dCIpOworICAgIGFzc2VydF9h
cnJheV9lcXVhbHMoWy4uLnN0eWxlXSwgWyJib3JkZXItaW1hZ2Utc291cmNlIiwgImJvcmRlci1p
bWFnZS1zbGljZSIsICJib3JkZXItaW1hZ2Utd2lkdGgiLCAiYm9yZGVyLWltYWdlLW91dHNldCIs
ICJib3JkZXItaW1hZ2UtcmVwZWF0Il0pOworCisgICAgYXNzZXJ0X2VxdWFscyhzdHlsZS5ib3Jk
ZXJJbWFnZVNvdXJjZSwgInVybChcIlwiKSIsICJTcGVjaWZpZWQgYm9yZGVyLWltYWdlLXNvdXJj
ZSIpOworICAgIGFzc2VydF9lcXVhbHMoc3R5bGUuYm9yZGVySW1hZ2VTbGljZSwgIjUwJSIsICJT
cGVjaWZpZWQgYm9yZGVyLWltYWdlLXNsaWNlIik7CisgICAgYXNzZXJ0X2VxdWFscyhzdHlsZS5i
b3JkZXJJbWFnZVdpZHRoLCAiMTFweCAyMnB4IDMzcHggNDRweCIsICJTcGVjaWZpZWQgYm9yZGVy
LWltYWdlLXdpZHRoIik7CisgICAgYXNzZXJ0X2VxdWFscyhzdHlsZS5ib3JkZXJJbWFnZU91dHNl
dCwgImluaXRpYWwiLCAiU3BlY2lmaWVkIGJvcmRlci1pbWFnZS1vdXRzZXQiKTsKKyAgICBhc3Nl
cnRfZXF1YWxzKHN0eWxlLmJvcmRlckltYWdlUmVwZWF0LCAiaW5pdGlhbCIsICJTcGVjaWZpZWQg
Ym9yZGVyLWltYWdlLXJlcGVhdCIpOworICAgIGFzc2VydF9lcXVhbHMoc3R5bGUuYm9yZGVySW1h
Z2UsICJ1cmwoXCJcIikgNTAlIC8gMTFweCAyMnB4IDMzcHggNDRweCIsICJTcGVjaWZpZWQgYm9y
ZGVyLWltYWdlIik7CisgICAgYXNzZXJ0X2VxdWFscyhzdHlsZS53ZWJraXRCb3JkZXJJbWFnZSwg
IiIsICJTcGVjaWZpZWQgLXdlYmtpdC1ib3JkZXItaW1hZ2UiKTsKKworICAgIGFzc2VydF9lcXVh
bHMoY3MuYm9yZGVySW1hZ2VTb3VyY2UsICJ1cmwoXCJcIikiLCAiQ29tcHV0ZWQgYm9yZGVyLWlt
YWdlLXNvdXJjZSIpOworICAgIGFzc2VydF9lcXVhbHMoY3MuYm9yZGVySW1hZ2VTbGljZSwgIjUw
JSIsICJDb21wdXRlZCBib3JkZXItaW1hZ2Utc2xpY2UiKTsKKyAgICBhc3NlcnRfZXF1YWxzKGNz
LmJvcmRlckltYWdlV2lkdGgsICIxMXB4IDIycHggMzNweCA0NHB4IiwgIkNvbXB1dGVkIGJvcmRl
ci1pbWFnZS13aWR0aCIpOworICAgIGFzc2VydF9lcXVhbHMoY3MuYm9yZGVySW1hZ2VPdXRzZXQs
ICIwIiwgIkNvbXB1dGVkIGJvcmRlci1pbWFnZS1vdXRzZXQiKTsKKyAgICBhc3NlcnRfZXF1YWxz
KGNzLmJvcmRlckltYWdlUmVwZWF0LCAic3RyZXRjaCIsICJDb21wdXRlZCBib3JkZXItaW1hZ2Ut
cmVwZWF0Iik7CisgICAgYXNzZXJ0X2VxdWFscyhjcy5ib3JkZXJJbWFnZSwgInVybChcIlwiKSA1
MCUgLyAxMXB4IDIycHggMzNweCA0NHB4IC8gMCBzdHJldGNoIiwgIkNvbXB1dGVkIGJvcmRlci1p
bWFnZSIpOworICAgIGFzc2VydF9lcXVhbHMoY3Mud2Via2l0Qm9yZGVySW1hZ2UsICIiLCAiQ29t
cHV0ZWQgLXdlYmtpdC1ib3JkZXItaW1hZ2UiKTsKKworICAgIGFzc2VydF9lcXVhbHMoY3MuYm9y
ZGVyV2lkdGgsICIxcHgiLCAiQ29tcHV0ZWQgYm9yZGVyLXdpZHRoIik7Cit9LCAiYm9yZGVyLWlt
YWdlOiB1cmwoXCJcIikgNTAlIC8gMTFweCAyMnB4IDMzcHggNDRweCIpOworCit0ZXN0KCgpID0+
IHsKKyAgICBzdHlsZS5jc3NUZXh0ID0gIi13ZWJraXQtYm9yZGVyLWltYWdlOiB1cmwoXCJcIikg
NTAlIC8gMTFweCAyMnB4IDMzcHggNDRweDsiOworCisgICAgYXNzZXJ0X2VxdWFscyhzdHlsZS5j
c3NUZXh0LCAiLXdlYmtpdC1ib3JkZXItaW1hZ2U6IHVybChcIlwiKSA1MCUgZmlsbCAvIDExcHgg
MjJweCAzM3B4IDQ0cHg7IiwgImNzc1RleHQiKTsKKyAgICBhc3NlcnRfYXJyYXlfZXF1YWxzKFsu
Li5zdHlsZV0sIFsiYm9yZGVyLWltYWdlLXNvdXJjZSIsICJib3JkZXItaW1hZ2Utc2xpY2UiLCAi
Ym9yZGVyLWltYWdlLXdpZHRoIiwgImJvcmRlci1pbWFnZS1vdXRzZXQiLCAiYm9yZGVyLWltYWdl
LXJlcGVhdCJdKTsKKworICAgIGFzc2VydF9lcXVhbHMoc3R5bGUuYm9yZGVySW1hZ2VTb3VyY2Us
ICJ1cmwoXCJcIikiLCAiU3BlY2lmaWVkIGJvcmRlci1pbWFnZS1zb3VyY2UiKTsKKyAgICBhc3Nl
cnRfZXF1YWxzKHN0eWxlLmJvcmRlckltYWdlU2xpY2UsICI1MCUgZmlsbCIsICJTcGVjaWZpZWQg
Ym9yZGVyLWltYWdlLXNsaWNlIik7CisgICAgYXNzZXJ0X2VxdWFscyhzdHlsZS5ib3JkZXJJbWFn
ZVdpZHRoLCAiIiwgIlNwZWNpZmllZCBib3JkZXItaW1hZ2Utd2lkdGgiKTsKKyAgICBhc3NlcnRf
ZXF1YWxzKHN0eWxlLmJvcmRlckltYWdlT3V0c2V0LCAiaW5pdGlhbCIsICJTcGVjaWZpZWQgYm9y
ZGVyLWltYWdlLW91dHNldCIpOworICAgIGFzc2VydF9lcXVhbHMoc3R5bGUuYm9yZGVySW1hZ2VS
ZXBlYXQsICJpbml0aWFsIiwgIlNwZWNpZmllZCBib3JkZXItaW1hZ2UtcmVwZWF0Iik7CisgICAg
YXNzZXJ0X2VxdWFscyhzdHlsZS5ib3JkZXJJbWFnZSwgIiIsICJTcGVjaWZpZWQgYm9yZGVyLWlt
YWdlIik7CisgICAgYXNzZXJ0X2VxdWFscyhzdHlsZS53ZWJraXRCb3JkZXJJbWFnZSwgInVybChc
IlwiKSA1MCUgZmlsbCAvIDExcHggMjJweCAzM3B4IDQ0cHgiLCAiU3BlY2lmaWVkIC13ZWJraXQt
Ym9yZGVyLWltYWdlIik7CisKKyAgICBhc3NlcnRfZXF1YWxzKGNzLmJvcmRlckltYWdlU291cmNl
LCAidXJsKFwiXCIpIiwgIkNvbXB1dGVkIGJvcmRlci1pbWFnZS1zb3VyY2UiKTsKKyAgICBhc3Nl
cnRfZXF1YWxzKGNzLmJvcmRlckltYWdlU2xpY2UsICI1MCUgZmlsbCIsICJDb21wdXRlZCBib3Jk
ZXItaW1hZ2Utc2xpY2UiKTsKKyAgICBhc3NlcnRfZXF1YWxzKGNzLmJvcmRlckltYWdlV2lkdGgs
ICIiLCAiQ29tcHV0ZWQgYm9yZGVyLWltYWdlLXdpZHRoIik7CisgICAgYXNzZXJ0X2VxdWFscyhj
cy5ib3JkZXJJbWFnZU91dHNldCwgIjAiLCAiQ29tcHV0ZWQgYm9yZGVyLWltYWdlLW91dHNldCIp
OworICAgIGFzc2VydF9lcXVhbHMoY3MuYm9yZGVySW1hZ2VSZXBlYXQsICJzdHJldGNoIiwgIkNv
bXB1dGVkIGJvcmRlci1pbWFnZS1yZXBlYXQiKTsKKyAgICBhc3NlcnRfZXF1YWxzKGNzLmJvcmRl
ckltYWdlLCAiIiwgIkNvbXB1dGVkIGJvcmRlci1pbWFnZSIpOworICAgIGFzc2VydF9lcXVhbHMo
Y3Mud2Via2l0Qm9yZGVySW1hZ2UsICJ1cmwoXCJcIikgNTAlIGZpbGwgLyAxMXB4IDIycHggMzNw
eCA0NHB4IC8gMCBzdHJldGNoIiwgIkNvbXB1dGVkIC13ZWJraXQtYm9yZGVyLWltYWdlIik7CisK
KyAgICBhc3NlcnRfZXF1YWxzKGNzLmJvcmRlcldpZHRoLCAiMTFweCAyMnB4IDMzcHggNDRweCIs
ICJDb21wdXRlZCBib3JkZXItd2lkdGgiKTsKK30sICItd2Via2l0LWJvcmRlci1pbWFnZTogdXJs
KFwiXCIpIDUwJSBmaWxsIC8gMTFweCAyMnB4IDMzcHggNDRweCIpOworCit0ZXN0KCgpID0+IHsK
KyAgICBzdHlsZS5jc3NUZXh0ID0gIi0tdjogNTBweDsgYm9yZGVyLWltYWdlOiB1cmwoXCJcIikg
NTAlIC8gdmFyKC0tdik7IjsKKworICAgIGFzc2VydF9lcXVhbHMoc3R5bGUuY3NzVGV4dCwgIi0t
djogNTBweDsgYm9yZGVyLWltYWdlOiB1cmwoXCJcIikgNTAlIC8gdmFyKC0tdik7IiwgImNzc1Rl
eHQiKTsKKyAgICBhc3NlcnRfYXJyYXlfZXF1YWxzKFsuLi5zdHlsZV0sIFsiLS12IiwgImJvcmRl
ci1pbWFnZS1zb3VyY2UiLCAiYm9yZGVyLWltYWdlLXNsaWNlIiwgImJvcmRlci1pbWFnZS13aWR0
aCIsICJib3JkZXItaW1hZ2Utb3V0c2V0IiwgImJvcmRlci1pbWFnZS1yZXBlYXQiXSk7CisKKyAg
ICBhc3NlcnRfZXF1YWxzKHN0eWxlLmJvcmRlckltYWdlU291cmNlLCAiIiwgIlNwZWNpZmllZCBi
b3JkZXItaW1hZ2Utc291cmNlIik7CisgICAgYXNzZXJ0X2VxdWFscyhzdHlsZS5ib3JkZXJJbWFn
ZVNsaWNlLCAiIiwgIlNwZWNpZmllZCBib3JkZXItaW1hZ2Utc2xpY2UiKTsKKyAgICBhc3NlcnRf
ZXF1YWxzKHN0eWxlLmJvcmRlckltYWdlV2lkdGgsICIiLCAiU3BlY2lmaWVkIGJvcmRlci1pbWFn
ZS13aWR0aCIpOworICAgIGFzc2VydF9lcXVhbHMoc3R5bGUuYm9yZGVySW1hZ2VPdXRzZXQsICIi
LCAiU3BlY2lmaWVkIGJvcmRlci1pbWFnZS1vdXRzZXQiKTsKKyAgICBhc3NlcnRfZXF1YWxzKHN0
eWxlLmJvcmRlckltYWdlUmVwZWF0LCAiIiwgIlNwZWNpZmllZCBib3JkZXItaW1hZ2UtcmVwZWF0
Iik7CisgICAgYXNzZXJ0X2VxdWFscyhzdHlsZS5ib3JkZXJJbWFnZSwgInVybChcIlwiKSA1MCUg
LyB2YXIoLS12KSIsICJTcGVjaWZpZWQgYm9yZGVyLWltYWdlIik7CisgICAgYXNzZXJ0X2VxdWFs
cyhzdHlsZS53ZWJraXRCb3JkZXJJbWFnZSwgIiIsICJTcGVjaWZpZWQgLXdlYmtpdC1ib3JkZXIt
aW1hZ2UiKTsKKworICAgIGFzc2VydF9lcXVhbHMoY3MuYm9yZGVySW1hZ2VTb3VyY2UsICJ1cmwo
XCJcIikiLCAiQ29tcHV0ZWQgYm9yZGVyLWltYWdlLXNvdXJjZSIpOworICAgIGFzc2VydF9lcXVh
bHMoY3MuYm9yZGVySW1hZ2VTbGljZSwgIjUwJSIsICJDb21wdXRlZCBib3JkZXItaW1hZ2Utc2xp
Y2UiKTsKKyAgICBhc3NlcnRfZXF1YWxzKGNzLmJvcmRlckltYWdlV2lkdGgsICI1MHB4IiwgIkNv
bXB1dGVkIGJvcmRlci1pbWFnZS13aWR0aCIpOworICAgIGFzc2VydF9lcXVhbHMoY3MuYm9yZGVy
SW1hZ2VPdXRzZXQsICIwIiwgIkNvbXB1dGVkIGJvcmRlci1pbWFnZS1vdXRzZXQiKTsKKyAgICBh
c3NlcnRfZXF1YWxzKGNzLmJvcmRlckltYWdlUmVwZWF0LCAic3RyZXRjaCIsICJDb21wdXRlZCBi
b3JkZXItaW1hZ2UtcmVwZWF0Iik7CisgICAgYXNzZXJ0X2VxdWFscyhjcy5ib3JkZXJJbWFnZSwg
InVybChcIlwiKSA1MCUgLyA1MHB4IC8gMCBzdHJldGNoIiwgIkNvbXB1dGVkIGJvcmRlci1pbWFn
ZSIpOworICAgIGFzc2VydF9lcXVhbHMoY3Mud2Via2l0Qm9yZGVySW1hZ2UsICIiLCAiQ29tcHV0
ZWQgLXdlYmtpdC1ib3JkZXItaW1hZ2UiKTsKKworICAgIGFzc2VydF9lcXVhbHMoY3MuYm9yZGVy
V2lkdGgsICIxcHgiLCAiQ29tcHV0ZWQgYm9yZGVyLXdpZHRoIik7Cit9LCAiLS12OiA1MHB4OyBi
b3JkZXItaW1hZ2U6IHVybChcIlwiKSA1MCUgLyB2YXIoLS12KSIpOworCit0ZXN0KCgpID0+IHsK
KyAgICBzdHlsZS5jc3NUZXh0ID0gIi0tdjogNTBweDsgLXdlYmtpdC1ib3JkZXItaW1hZ2U6IHVy
bChcIlwiKSA1MCUgLyB2YXIoLS12KTsiOworCisgICAgYXNzZXJ0X2VxdWFscyhzdHlsZS5jc3NU
ZXh0LCAiLS12OiA1MHB4OyAtd2Via2l0LWJvcmRlci1pbWFnZTogdXJsKFwiXCIpIDUwJSAvIHZh
cigtLXYpOyIsICJjc3NUZXh0Iik7CisgICAgYXNzZXJ0X2FycmF5X2VxdWFscyhbLi4uc3R5bGVd
LCBbIi0tdiIsICJib3JkZXItaW1hZ2Utc291cmNlIiwgImJvcmRlci1pbWFnZS1zbGljZSIsICJi
b3JkZXItaW1hZ2Utd2lkdGgiLCAiYm9yZGVyLWltYWdlLW91dHNldCIsICJib3JkZXItaW1hZ2Ut
cmVwZWF0Il0pOworCisgICAgYXNzZXJ0X2VxdWFscyhzdHlsZS5ib3JkZXJJbWFnZVNvdXJjZSwg
IiIsICJTcGVjaWZpZWQgYm9yZGVyLWltYWdlLXNvdXJjZSIpOworICAgIGFzc2VydF9lcXVhbHMo
c3R5bGUuYm9yZGVySW1hZ2VTbGljZSwgIiIsICJTcGVjaWZpZWQgYm9yZGVyLWltYWdlLXNsaWNl
Iik7CisgICAgYXNzZXJ0X2VxdWFscyhzdHlsZS5ib3JkZXJJbWFnZVdpZHRoLCAiIiwgIlNwZWNp
ZmllZCBib3JkZXItaW1hZ2Utd2lkdGgiKTsKKyAgICBhc3NlcnRfZXF1YWxzKHN0eWxlLmJvcmRl
ckltYWdlT3V0c2V0LCAiIiwgIlNwZWNpZmllZCBib3JkZXItaW1hZ2Utb3V0c2V0Iik7CisgICAg
YXNzZXJ0X2VxdWFscyhzdHlsZS5ib3JkZXJJbWFnZVJlcGVhdCwgIiIsICJTcGVjaWZpZWQgYm9y
ZGVyLWltYWdlLXJlcGVhdCIpOworICAgIGFzc2VydF9lcXVhbHMoc3R5bGUuYm9yZGVySW1hZ2Us
ICIiLCAiU3BlY2lmaWVkIGJvcmRlci1pbWFnZSIpOworICAgIGFzc2VydF9lcXVhbHMoc3R5bGUu
d2Via2l0Qm9yZGVySW1hZ2UsICJ1cmwoXCJcIikgNTAlIC8gdmFyKC0tdikiLCAiU3BlY2lmaWVk
IC13ZWJraXQtYm9yZGVyLWltYWdlIik7CisKKyAgICBhc3NlcnRfZXF1YWxzKGNzLmJvcmRlcklt
YWdlU291cmNlLCAidXJsKFwiXCIpIiwgIkNvbXB1dGVkIGJvcmRlci1pbWFnZS1zb3VyY2UiKTsK
KyAgICBhc3NlcnRfZXF1YWxzKGNzLmJvcmRlckltYWdlU2xpY2UsICI1MCUgZmlsbCIsICJDb21w
dXRlZCBib3JkZXItaW1hZ2Utc2xpY2UiKTsKKyAgICBhc3NlcnRfZXF1YWxzKGNzLmJvcmRlcklt
YWdlV2lkdGgsICIiLCAiQ29tcHV0ZWQgYm9yZGVyLWltYWdlLXdpZHRoIik7CisgICAgYXNzZXJ0
X2VxdWFscyhjcy5ib3JkZXJJbWFnZU91dHNldCwgIjAiLCAiQ29tcHV0ZWQgYm9yZGVyLWltYWdl
LW91dHNldCIpOworICAgIGFzc2VydF9lcXVhbHMoY3MuYm9yZGVySW1hZ2VSZXBlYXQsICJzdHJl
dGNoIiwgIkNvbXB1dGVkIGJvcmRlci1pbWFnZS1yZXBlYXQiKTsKKyAgICBhc3NlcnRfZXF1YWxz
KGNzLmJvcmRlckltYWdlLCAiIiwgIkNvbXB1dGVkIGJvcmRlci1pbWFnZSIpOworICAgIGFzc2Vy
dF9lcXVhbHMoY3Mud2Via2l0Qm9yZGVySW1hZ2UsICJ1cmwoXCJcIikgNTAlIGZpbGwgLyA1MHB4
IC8gMCBzdHJldGNoIiwgIkNvbXB1dGVkIC13ZWJraXQtYm9yZGVyLWltYWdlIik7CisKKyAgICBh
c3NlcnRfZXF1YWxzKGNzLmJvcmRlcldpZHRoLCAiNTBweCIsICJDb21wdXRlZCBib3JkZXItd2lk
dGgiKTsKK30sICItLXY6IDUwcHg7IC13ZWJraXQtYm9yZGVyLWltYWdlOiB1cmwoXCJcIikgNTAl
IC8gdmFyKC0tdikiKTsKKzwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9j
c3MvYm9yZGVyLWltYWdlLXN0eWxlLWxlbmd0aC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9m
YXN0L2Nzcy9ib3JkZXItaW1hZ2Utc3R5bGUtbGVuZ3RoLWV4cGVjdGVkLnR4dAppbmRleCA2MjZl
YmZiNGYyMWYwMjQ5OTE1Y2RjN2I2ZmQyYTk3NTNkYmUyYWZhLi45ZGM3NmExNjUwZjEwN2U4NGMy
NzdhMjM0YmYyZWE0MGM0MDQ0OWQwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9i
b3JkZXItaW1hZ2Utc3R5bGUtbGVuZ3RoLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9m
YXN0L2Nzcy9ib3JkZXItaW1hZ2Utc3R5bGUtbGVuZ3RoLWV4cGVjdGVkLnR4dApAQCAtNSw3ICs1
LDcgQEAgT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdl
cywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUKIAogUEFTUyBlLnN0eWxlLmxlbmd0aCBpcyA1
CiBQQVNTIGUuc3R5bGUubGVuZ3RoIGlzIDAKLVBBU1MgZS5zdHlsZS5sZW5ndGggaXMgMQorUEFT
UyBlLnN0eWxlLmxlbmd0aCBpcyA1CiBQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCiAK
IFRFU1QgQ09NUExFVEUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL2JvcmRlci1p
bWFnZS1zdHlsZS1sZW5ndGguaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL2JvcmRlci1pbWFn
ZS1zdHlsZS1sZW5ndGguaHRtbAppbmRleCA0ZTQzNjkzMDQyMTA3N2YwMDhkN2M3ODEzOGI3OWI3
NmMyNzgwYzhlLi5hMjc5ZmRlYzdjOGYyMjg2MzcyOTE1M2U4Yjc2YzYwNTNhYmJiNjkwIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9ib3JkZXItaW1hZ2Utc3R5bGUtbGVuZ3RoLmh0
bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvYm9yZGVyLWltYWdlLXN0eWxlLWxlbmd0aC5o
dG1sCkBAIC0yMCw3ICsyMCw3IEBAIHNob3VsZEJlKCJlLnN0eWxlLmxlbmd0aCIsICI1Iik7CiBl
LnN0eWxlLmJvcmRlckltYWdlID0gIiI7CiBzaG91bGRCZSgiZS5zdHlsZS5sZW5ndGgiLCAiMCIp
OwogZS5zdHlsZS53ZWJraXRCb3JkZXJJbWFnZSA9ICJ1cmwoZHVtbXk6Ly90ZXN0LnBuZykgMCA3
IDAgMTMgLyAwIDcgMCAxMyBzdHJldGNoIHN0cmV0Y2giOwotc2hvdWxkQmUoImUuc3R5bGUubGVu
Z3RoIiwgIjEiKTsKK3Nob3VsZEJlKCJlLnN0eWxlLmxlbmd0aCIsICI1Iik7CiBkb2N1bWVudC5i
b2R5LnJlbW92ZUNoaWxkKHRlc3RDb250YWluZXIpOwogCiA8L3NjcmlwdD4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2Zhc3QvY3NzL2dldENvbXB1dGVkU3R5bGUvY29tcHV0ZWQtc3R5bGUtZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS9jb21wdXRl
ZC1zdHlsZS1leHBlY3RlZC50eHQKaW5kZXggNmU4ZWMzZDg1Y2QxZWM5MDc5YzRjMDExZTE5M2Jj
NmI0ZDE3NjM0ZS4uODQ2OGQxNjNlMTRiNzE5NWJiYjZmZGJmMzFkYTA1NzEwMTFjOWU3YyAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS9jb21wdXRlZC1z
dHlsZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvZ2V0Q29tcHV0ZWRT
dHlsZS9jb21wdXRlZC1zdHlsZS1leHBlY3RlZC50eHQKQEAgLTIxMCw3ICsyMTAsNiBAQCB6b29t
OiAxOwogLXdlYmtpdC1iYWNrZ3JvdW5kLW9yaWdpbjogcGFkZGluZy1ib3g7CiAtd2Via2l0LWJh
Y2tncm91bmQtc2l6ZTogYXV0bzsKIC13ZWJraXQtYm9yZGVyLWhvcml6b250YWwtc3BhY2luZzog
MHB4OwotLXdlYmtpdC1ib3JkZXItaW1hZ2U6IG5vbmU7CiAtd2Via2l0LWJvcmRlci12ZXJ0aWNh
bC1zcGFjaW5nOiAwcHg7CiAtd2Via2l0LWJveC1hbGlnbjogc3RyZXRjaDsKIC13ZWJraXQtYm94
LWRlY29yYXRpb24tYnJlYWs6IHNsaWNlOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9j
c3MvZ2V0Q29tcHV0ZWRTdHlsZS9jb21wdXRlZC1zdHlsZS13aXRob3V0LXJlbmRlcmVyLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL2dldENvbXB1dGVkU3R5bGUvY29tcHV0ZWQt
c3R5bGUtd2l0aG91dC1yZW5kZXJlci1leHBlY3RlZC50eHQKaW5kZXggMDllZTA1MmU4ZWEwZDg0
NDhmNzYwODY2M2JjZjY4YmI1YTA1NTk2ZS4uYzdmMWM5NzIyMmJiMDMxYjFjMWNmNTFjNzNmYzgx
YTM5NTZkY2U3ZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvZ2V0Q29tcHV0ZWRT
dHlsZS9jb21wdXRlZC1zdHlsZS13aXRob3V0LXJlbmRlcmVyLWV4cGVjdGVkLnR4dAorKysgYi9M
YXlvdXRUZXN0cy9mYXN0L2Nzcy9nZXRDb21wdXRlZFN0eWxlL2NvbXB1dGVkLXN0eWxlLXdpdGhv
dXQtcmVuZGVyZXItZXhwZWN0ZWQudHh0CkBAIC0yMDksNyArMjA5LDYgQEAgem9vbTogMQogLXdl
YmtpdC1iYWNrZ3JvdW5kLW9yaWdpbjogcGFkZGluZy1ib3gKIC13ZWJraXQtYmFja2dyb3VuZC1z
aXplOiBhdXRvCiAtd2Via2l0LWJvcmRlci1ob3Jpem9udGFsLXNwYWNpbmc6IDBweAotLXdlYmtp
dC1ib3JkZXItaW1hZ2U6IG5vbmUKIC13ZWJraXQtYm9yZGVyLXZlcnRpY2FsLXNwYWNpbmc6IDBw
eAogLXdlYmtpdC1ib3gtYWxpZ246IHN0cmV0Y2gKIC13ZWJraXQtYm94LWRlY29yYXRpb24tYnJl
YWs6IHNsaWNlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9nZXRDb21wdXRlZFN0
eWxlL3Jlc291cmNlcy9wcm9wZXJ0eS1uYW1lcy5qcyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL2dl
dENvbXB1dGVkU3R5bGUvcmVzb3VyY2VzL3Byb3BlcnR5LW5hbWVzLmpzCmluZGV4IGViMzRmZGU2
MWM2YzgzZDc3MzNhM2QzNjViYmExODAxYTlhYTYwOTQuLmYxZmY4ZjQwNmI2Yzk2OGJlNjI1NGJj
ZmQ3Y2Y0ODc1NzJlMzU4M2YgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL2dldENv
bXB1dGVkU3R5bGUvcmVzb3VyY2VzL3Byb3BlcnR5LW5hbWVzLmpzCisrKyBiL0xheW91dFRlc3Rz
L2Zhc3QvY3NzL2dldENvbXB1dGVkU3R5bGUvcmVzb3VyY2VzL3Byb3BlcnR5LW5hbWVzLmpzCkBA
IC0xNyw3ICsxNyw2IEBAIHZhciBwcm9wZXJ0aWVzVG9UZXN0ID0gewogICAgICItd2Via2l0LWJh
Y2tncm91bmQtb3JpZ2luIjogdHJ1ZSwKICAgICAiLXdlYmtpdC1iYWNrZ3JvdW5kLXNpemUiOiB0
cnVlLAogICAgICItd2Via2l0LWJvcmRlci1ob3Jpem9udGFsLXNwYWNpbmciOiB0cnVlLAotICAg
ICItd2Via2l0LWJvcmRlci1pbWFnZSI6IHRydWUsCiAgICAgIi13ZWJraXQtYm9yZGVyLXZlcnRp
Y2FsLXNwYWNpbmciOiB0cnVlLAogICAgICItd2Via2l0LWJveC1hbGlnbiI6IHRydWUsCiAgICAg
Ii13ZWJraXQtYm94LWRlY29yYXRpb24tYnJlYWsiOiB0cnVlLApkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZmFzdC9jc3MvaW1hZ2Utc2V0LXBhcnNpbmctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvZmFzdC9jc3MvaW1hZ2Utc2V0LXBhcnNpbmctZXhwZWN0ZWQudHh0CmluZGV4IDMwYWE2MTk1
OWM4NWFlODIzZGNkMWY1ZTg4M2E0ODY2OWQ5NDgwZmQuLmQ5YWQxMGZjNDVkMzdlM2RlYmRmYmY5
NDQwYTcwNWQ4YzkzYzEyNDEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL2ltYWdl
LXNldC1wYXJzaW5nLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9pbWFn
ZS1zZXQtcGFyc2luZy1leHBlY3RlZC50eHQKQEAgLTgwLDcgKzgwLDcgQEAgUEFTUyBzdWJSdWxl
LmNzc1RleHQgaXMgJzF4JwogUEFTUyBzdWJSdWxlIGlzICdiJwogUEFTUyBzdWJSdWxlLmNzc1Rl
eHQgaXMgJzJ4JwogCi1TaW5nbGUgdmFsdWUgZm9yIGJvcmRlci1pbWFnZSA6IHVybCgnI2EnKSAx
eAorU2luZ2xlIHZhbHVlIGZvciBib3JkZXItaW1hZ2Utc291cmNlIDogdXJsKCcjYScpIDF4CiBQ
QVNTIGpzV3JhcHBlckNsYXNzKGltYWdlU2V0UnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKIFBBU1Mg
anNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdCcK
IFBBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlLmNvbnN0cnVjdG9yKSBpcyAnRnVuY3Rp
b24nCkBAIC04OCw3ICs4OCw3IEBAIFBBU1MgaW1hZ2VTZXRSdWxlLmxlbmd0aCBpcyAyCiBQQVNT
IHN1YlJ1bGUgaXMgJ2EnCiBQQVNTIHN1YlJ1bGUuY3NzVGV4dCBpcyAnMXgnCiAKLU11bHRpcGxl
IHZhbHVlcyBmb3IgYm9yZGVyLWltYWdlIDogdXJsKCcjYScpIDF4LCB1cmwoJyNiJykgMngKK011
bHRpcGxlIHZhbHVlcyBmb3IgYm9yZGVyLWltYWdlLXNvdXJjZSA6IHVybCgnI2EnKSAxeCwgdXJs
KCcjYicpIDJ4CiBQQVNTIGpzV3JhcHBlckNsYXNzKGltYWdlU2V0UnVsZSkgaXMgJ0NTU1ZhbHVl
TGlzdCcKIFBBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlLl9fcHJvdG9fXykgaXMgJ0NT
U1ZhbHVlTGlzdCcKIFBBU1MganNXcmFwcGVyQ2xhc3MoaW1hZ2VTZXRSdWxlLmNvbnN0cnVjdG9y
KSBpcyAnRnVuY3Rpb24nCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9pbWFnZS1z
ZXQtcGFyc2luZy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvaW1hZ2Utc2V0LXBhcnNpbmcu
aHRtbAppbmRleCBjN2I4ZjI4OTUwM2M3YTI2MjJkZjRjYTM5OWU0MzUxNjlmNTgwZDU0Li44Yjgx
NzVjZjQ5MmYwNjYwOWYzODQ0YjQ2ODU3ZDUzZDM2YzJiNjMxIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9mYXN0L2Nzcy9pbWFnZS1zZXQtcGFyc2luZy5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zh
c3QvY3NzL2ltYWdlLXNldC1wYXJzaW5nLmh0bWwKQEAgLTEwNywxMyArMTA3LDEzIEBAIHRlc3RJ
bWFnZVNldFJ1bGUoIk11bHRpcGxlIHZhbHVlcyBmb3IgY29udGVudCIsCiAgICAgICAgICAgICAg
ICAgInVybCgnI2EnKSAxeCwgdXJsKCcjYicpIDJ4IiwgNCwKICAgICAgICAgICAgICAgICBbImEi
LCAiMXgiLCAiYiIsICIyeCJdKTsKIAotdGVzdEltYWdlU2V0UnVsZSgiU2luZ2xlIHZhbHVlIGZv
ciBib3JkZXItaW1hZ2UiLAotICAgICAgICAgICAgICAgICItd2Via2l0LWJvcmRlci1pbWFnZSIs
Cit0ZXN0SW1hZ2VTZXRSdWxlKCJTaW5nbGUgdmFsdWUgZm9yIGJvcmRlci1pbWFnZS1zb3VyY2Ui
LAorICAgICAgICAgICAgICAgICJib3JkZXItaW1hZ2Utc291cmNlIiwKICAgICAgICAgICAgICAg
ICAidXJsKCcjYScpIDF4IiwgMiwKICAgICAgICAgICAgICAgICBbImEiLCAiMXgiXSk7CiAKLXRl
c3RJbWFnZVNldFJ1bGUoIk11bHRpcGxlIHZhbHVlcyBmb3IgYm9yZGVyLWltYWdlIiwKLSAgICAg
ICAgICAgICAgICAiLXdlYmtpdC1ib3JkZXItaW1hZ2UiLAordGVzdEltYWdlU2V0UnVsZSgiTXVs
dGlwbGUgdmFsdWVzIGZvciBib3JkZXItaW1hZ2Utc291cmNlIiwKKyAgICAgICAgICAgICAgICAi
Ym9yZGVyLWltYWdlLXNvdXJjZSIsCiAgICAgICAgICAgICAgICAgInVybCgnI2EnKSAxeCwgdXJs
KCcjYicpIDJ4IiwgNCwKICAgICAgICAgICAgICAgICBbImEiLCAiMXgiLCAiYiIsICIyeCJdKTsK
IApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdXJpLXRva2VuLXBhcnNpbmctZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdXJpLXRva2VuLXBhcnNpbmctZXhwZWN0
ZWQudHh0CmluZGV4IDdlNmQ2MWRiYmU2MTk3ZjBiYjU4YWNlNjU3ZDRmNDY5MDFmNTM4NGUuLjg3
NWE4YTk2ZTBlNTM2MzI4NDE0Y2I3ZTBmNDUxNDAzNTkzNjJjNDAgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2Zhc3QvY3NzL3VyaS10b2tlbi1wYXJzaW5nLWV4cGVjdGVkLnR4dAorKysgYi9MYXlv
dXRUZXN0cy9mYXN0L2Nzcy91cmktdG9rZW4tcGFyc2luZy1leHBlY3RlZC50eHQKQEAgLTIyLDcg
KzIyLDcgQEAgUnVsZXMgZnJvbSB0aGUgc3R5bGVzaGVldDoKICNyIHsgbGlzdC1zdHlsZS1pbWFn
ZTogdXJsKCJ1cmwocikiKTsgfQogI3MgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoInVybChzKSIp
OyB9CiAjdCB7IG1hc2staW1hZ2U6IHVybCgidXJsKHQpIik7IH0KLSN1IHsgLXdlYmtpdC1ib3Jk
ZXItaW1hZ2U6IHVybCgidXJsKHUpIikgMSAyIDMgNCBmaWxsIHN0cmV0Y2ggcm91bmQ7IH0KKyN1
IHsgYm9yZGVyLWltYWdlOiB1cmwoInVybCh1KSIpIDEgMiAzIDQgZmlsbCBzdHJldGNoIHJvdW5k
OyB9CiAjdiB7IC13ZWJraXQtbWFzay1ib3gtaW1hZ2U6IHVybCgidXJsKHYpIikgMSAyIDMgNCBm
aWxsIHN0cmV0Y2ggcm91bmQ7IH0KICN3IHsgY29udGVudDogdXJsKCJ3XGQgdyIpOyB9CiAjeCB7
IGNvbnRlbnQ6IHVybCgiIHggeFw5IHggIik7IH0KQEAgLTQ3LDcgKzQ3LDcgQEAgRXhwZWN0ZWQg
cmVzdWx0OgogI3IgeyBsaXN0LXN0eWxlLWltYWdlOiB1cmwoInVybChyKSIpOyB9CiAjcyB7IGJh
Y2tncm91bmQtaW1hZ2U6IHVybCgidXJsKHMpIik7IH0KICN0IHsgbWFzay1pbWFnZTogdXJsKCJ1
cmwodCkiKTsgfQotI3UgeyAtd2Via2l0LWJvcmRlci1pbWFnZTogdXJsKCJ1cmwodSkiKSAxIDIg
MyA0IGZpbGwgc3RyZXRjaCByb3VuZDsgfQorI3UgeyBib3JkZXItaW1hZ2U6IHVybCgidXJsKHUp
IikgMSAyIDMgNCBmaWxsIHN0cmV0Y2ggcm91bmQ7IH0KICN2IHsgLXdlYmtpdC1tYXNrLWJveC1p
bWFnZTogdXJsKCJ1cmwodikiKSAxIDIgMyA0IGZpbGwgc3RyZXRjaCByb3VuZDsgfQogI3cgeyBj
b250ZW50OiB1cmwoIndcZCB3Iik7IH0KICN4IHsgY29udGVudDogdXJsKCIgeCB4XDkgeCAiKTsg
fQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdXJpLXRva2VuLXBhcnNpbmcuaHRt
bCBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3VyaS10b2tlbi1wYXJzaW5nLmh0bWwKaW5kZXggZTE0
OTZiMWE0ZmI0NjgxNzE2ODMyZGNlNjE3ZGM0NTVhNmQzMTg5MC4uZGE3YjcwNzRjZGU3ZTc3NzA0
NThiYjA5M2U2M2IxMjQzNDQ2YTE1OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jc3Mv
dXJpLXRva2VuLXBhcnNpbmcuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy91cmktdG9r
ZW4tcGFyc2luZy5odG1sCkBAIC05MCw3ICs5MCw3IEBAIGZ1bmN0aW9uIHJ1blRlc3QoKQogI3Ig
eyBsaXN0LXN0eWxlLWltYWdlOiB1cmwoInVybChyKSIpOyB9CiAjcyB7IGJhY2tncm91bmQtaW1h
Z2U6IHVybCgidXJsKHMpIik7IH0KICN0IHsgbWFzay1pbWFnZTogdXJsKCJ1cmwodCkiKTsgfQot
I3UgeyAtd2Via2l0LWJvcmRlci1pbWFnZTogdXJsKCJ1cmwodSkiKSAxIDIgMyA0IGZpbGwgc3Ry
ZXRjaCByb3VuZDsgfQorI3UgeyBib3JkZXItaW1hZ2U6IHVybCgidXJsKHUpIikgMSAyIDMgNCBm
aWxsIHN0cmV0Y2ggcm91bmQ7IH0KICN2IHsgLXdlYmtpdC1tYXNrLWJveC1pbWFnZTogdXJsKCJ1
cmwodikiKSAxIDIgMyA0IGZpbGwgc3RyZXRjaCByb3VuZDsgfQogI3cgeyBjb250ZW50OiB1cmwo
IndcZCB3Iik7IH0KICN4IHsgY29udGVudDogdXJsKCIgeCB4XDkgeCAiKTsgfQpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNh
c2NhZGUvYWxsLXByb3AtaW5pdGlhbC14bWwtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNhc2NhZGUvYWxsLXByb3AtaW5p
dGlhbC14bWwtZXhwZWN0ZWQudHh0CmluZGV4IDliMjU0NzE0MmQ4NTViMWQzOGRlMDQwMTNhZmFk
MDAzMmYwZDVmOTYuLjBmNzc4MWIwZWFlZTY1NzM3NjU1Y2ExZjU3ZWMxMDUyNTZmNDFiYzYgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3Nz
L2Nzcy1jYXNjYWRlL2FsbC1wcm9wLWluaXRpYWwteG1sLWV4cGVjdGVkLnR4dAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY2FzY2FkZS9h
bGwtcHJvcC1pbml0aWFsLXhtbC1leHBlY3RlZC50eHQKQEAgLTM0MSw3ICszNDEsNiBAQCBQQVNT
IC13ZWJraXQtYmFja2dyb3VuZC1jbGlwCiBQQVNTIC13ZWJraXQtYmFja2dyb3VuZC1vcmlnaW4K
IFBBU1MgLXdlYmtpdC1iYWNrZ3JvdW5kLXNpemUKIFBBU1MgLXdlYmtpdC1ib3JkZXItaG9yaXpv
bnRhbC1zcGFjaW5nCi1QQVNTIC13ZWJraXQtYm9yZGVyLWltYWdlCiBQQVNTIC13ZWJraXQtYm9y
ZGVyLXZlcnRpY2FsLXNwYWNpbmcKIFBBU1MgLXdlYmtpdC1ib3gtYWxpZ24KIFBBU1MgLXdlYmtp
dC1ib3gtZGVjb3JhdGlvbi1icmVhawpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nzb20vZ2V0Q29tcHV0ZWRTdHlsZS1kZXRhY2hl
ZC1zdWJ0cmVlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvY3NzL2Nzc29tL2dldENvbXB1dGVkU3R5bGUtZGV0YWNoZWQtc3VidHJlZS1l
eHBlY3RlZC50eHQKaW5kZXggOWM2YzJkNjk0OTZhOTdmNWRlYWQ3MGEyYzBhYTcwYjI2OGRlODNl
Zi4uYWZlM2RkYzIyMDAwYTBlNzc0MzhhZmIyY2ZmZDM5ZmE3NGZkNGRmOCAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nzb20vZ2V0
Q29tcHV0ZWRTdHlsZS1kZXRhY2hlZC1zdWJ0cmVlLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS9nZXRDb21wdXRl
ZFN0eWxlLWRldGFjaGVkLXN1YnRyZWUtZXhwZWN0ZWQudHh0CkBAIC0xLDggKzEsOCBAQAogCiBQ
QVNTIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZGV0YWNoZWQgZWxlbWVu
dAotRkFJTCBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIGVsZW1lbnQgaW4g
bm9uLXJlbmRlcmVkIGlmcmFtZSAoZGlzcGxheTogbm9uZSkgYXNzZXJ0X2VxdWFsczogZXhwZWN0
ZWQgMCBidXQgZ290IDM5NwotRkFJTCBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUg
Zm9yIGVsZW1lbnQgaW4gbm9uLXJlbmRlcmVkIGlmcmFtZSAoZGlzcGxheTogbm9uZSkgZnJvbSBp
ZnJhbWUncyB3aW5kb3cgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDM5NwotRkFJ
TCBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIGVsZW1lbnQgb3V0c2lkZSB0
aGUgZmxhdCB0cmVlIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTcKLUZBSUwg
Z2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBkZXNjZW5kYW50IG91dHNpZGUg
dGhlIGZsYXQgdHJlZSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk3CitGQUlM
IGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBpbiBub24tcmVu
ZGVyZWQgaWZyYW1lIChkaXNwbGF5OiBub25lKSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1
dCBnb3QgMzk2CitGQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxl
bWVudCBpbiBub24tcmVuZGVyZWQgaWZyYW1lIChkaXNwbGF5OiBub25lKSBmcm9tIGlmcmFtZSdz
IHdpbmRvdyBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk2CitGQUlMIGdldENv
bXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBvdXRzaWRlIHRoZSBmbGF0
IHRyZWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDM5NgorRkFJTCBnZXRDb21w
dXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIGRlc2NlbmRhbnQgb3V0c2lkZSB0aGUgZmxh
dCB0cmVlIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTYKIFBBU1MgZ2V0Q29t
cHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBzaGFkb3cgdHJlZSBvdXRzaWRlIG9mIGZs
YXR0ZW5lZCB0cmVlCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY2FzY2FkZS9hbGwtcHJvcC1pbml0
aWFsLXhtbC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNhc2NhZGUvYWxsLXByb3AtaW5pdGlhbC14
bWwtZXhwZWN0ZWQudHh0CmluZGV4IDdiMWIzYzY4NDRjNDQ5NzIxNDNmYTYwMzM3MWFiMzA1OWNi
MjA3N2YuLmEyNjEzNTA1NTBkOGI4N2UzNmMyY2RmYzlhY2JkYjFlMTE1YzdjOGYgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2Nzcy9jc3MtY2FzY2FkZS9hbGwtcHJvcC1pbml0aWFsLXhtbC1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvY3NzL2Nzcy1jYXNjYWRlL2FsbC1wcm9wLWluaXRpYWwteG1sLWV4cGVjdGVkLnR4dApAQCAt
MzM5LDcgKzMzOSw2IEBAIFBBU1MgLXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXAKIFBBU1MgLXdlYmtp
dC1iYWNrZ3JvdW5kLW9yaWdpbgogUEFTUyAtd2Via2l0LWJhY2tncm91bmQtc2l6ZQogUEFTUyAt
d2Via2l0LWJvcmRlci1ob3Jpem9udGFsLXNwYWNpbmcKLVBBU1MgLXdlYmtpdC1ib3JkZXItaW1h
Z2UKIFBBU1MgLXdlYmtpdC1ib3JkZXItdmVydGljYWwtc3BhY2luZwogUEFTUyAtd2Via2l0LWJv
eC1hbGlnbgogUEFTUyAtd2Via2l0LWJveC1kZWNvcmF0aW9uLWJyZWFrCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9j
c3MvY3Nzb20vZ2V0Q29tcHV0ZWRTdHlsZS1kZXRhY2hlZC1zdWJ0cmVlLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2Nzcy9jc3NvbS9nZXRDb21wdXRlZFN0eWxlLWRldGFjaGVkLXN1YnRyZWUtZXhwZWN0ZWQudHh0
CmluZGV4IGE1ZWVhNmM4NjhiMTRiMTE0YzljMjVjM2QzNTMxYmZmOWM4YTUxOWUuLjY4MzdlYTI2
ZmZkZDg3NGE5ZWNlMjI0NTk5ZGM5ZDU4ZTA4NmRiYzQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L3BsYXRmb3JtL2d0ay9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS9n
ZXRDb21wdXRlZFN0eWxlLWRldGFjaGVkLXN1YnRyZWUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL3BsYXRmb3JtL2d0ay9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9j
c3NvbS9nZXRDb21wdXRlZFN0eWxlLWRldGFjaGVkLXN1YnRyZWUtZXhwZWN0ZWQudHh0CkBAIC0x
LDggKzEsOCBAQAogCiBQQVNTIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3Ig
ZGV0YWNoZWQgZWxlbWVudAotRkFJTCBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUg
Zm9yIGVsZW1lbnQgaW4gbm9uLXJlbmRlcmVkIGlmcmFtZSAoZGlzcGxheTogbm9uZSkgYXNzZXJ0
X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDM5NQotRkFJTCBnZXRDb21wdXRlZFN0eWxlIHJl
dHVybnMgbm8gc3R5bGUgZm9yIGVsZW1lbnQgaW4gbm9uLXJlbmRlcmVkIGlmcmFtZSAoZGlzcGxh
eTogbm9uZSkgZnJvbSBpZnJhbWUncyB3aW5kb3cgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBi
dXQgZ290IDM5NQotRkFJTCBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIGVs
ZW1lbnQgb3V0c2lkZSB0aGUgZmxhdCB0cmVlIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0
IGdvdCAzOTUKLUZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBkZXNj
ZW5kYW50IG91dHNpZGUgdGhlIGZsYXQgdHJlZSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1
dCBnb3QgMzk1CitGQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxl
bWVudCBpbiBub24tcmVuZGVyZWQgaWZyYW1lIChkaXNwbGF5OiBub25lKSBhc3NlcnRfZXF1YWxz
OiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk0CitGQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBu
byBzdHlsZSBmb3IgZWxlbWVudCBpbiBub24tcmVuZGVyZWQgaWZyYW1lIChkaXNwbGF5OiBub25l
KSBmcm9tIGlmcmFtZSdzIHdpbmRvdyBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3Qg
Mzk0CitGQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBv
dXRzaWRlIHRoZSBmbGF0IHRyZWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDM5
NAorRkFJTCBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIGRlc2NlbmRhbnQg
b3V0c2lkZSB0aGUgZmxhdCB0cmVlIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAz
OTQKIFBBU1MgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBzaGFkb3cgdHJl
ZSBvdXRzaWRlIG9mIGZsYXR0ZW5lZCB0cmVlCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3Bs
YXRmb3JtL2lvcy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY2FzY2Fk
ZS9hbGwtcHJvcC1pbml0aWFsLXhtbC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS9pb3MvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNhc2NhZGUvYWxs
LXByb3AtaW5pdGlhbC14bWwtZXhwZWN0ZWQudHh0CmluZGV4IGJlM2RiOTBjZDA5MDAwMDNiZDgw
ODVhNTllYzA4ZGVhNzExMzdmYzEuLjQzMDk4NWU0NmNhMTI5OTJmZGJlODliZWQyNmUyNTNkYjAx
NWFlYmMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY2FzY2FkZS9hbGwtcHJvcC1pbml0aWFsLXhtbC1l
eHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jYXNjYWRlL2FsbC1wcm9wLWluaXRpYWwteG1sLWV4
cGVjdGVkLnR4dApAQCAtMzExLDcgKzMxMSw2IEBAIFBBU1MgLXdlYmtpdC1iYWNrZ3JvdW5kLWNs
aXAKIFBBU1MgLXdlYmtpdC1iYWNrZ3JvdW5kLW9yaWdpbgogUEFTUyAtd2Via2l0LWJhY2tncm91
bmQtc2l6ZQogUEFTUyAtd2Via2l0LWJvcmRlci1ob3Jpem9udGFsLXNwYWNpbmcKLVBBU1MgLXdl
YmtpdC1ib3JkZXItaW1hZ2UKIFBBU1MgLXdlYmtpdC1ib3JkZXItdmVydGljYWwtc3BhY2luZwog
UEFTUyAtd2Via2l0LWJveC1hbGlnbgogUEFTUyAtd2Via2l0LWJveC1kZWNvcmF0aW9uLWJyZWFr
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9jc3MvY3Nzb20vZ2V0Q29tcHV0ZWRTdHlsZS1kZXRhY2hlZC1zdWJ0cmVl
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS9nZXRDb21wdXRlZFN0eWxlLWRldGFjaGVkLXN1YnRy
ZWUtZXhwZWN0ZWQudHh0CmluZGV4IDkwM2JmYzZhN2U5YjI4MjcyNDhhYjA3M2I1MTA2NzdlNDE0
OWRmMzIuLmEyYjg0OWVkYzQ0YjVkNDliMTMwNzUzYjkxZmI3MzA1NGMzMjY0YmYgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2Nzcy9jc3NvbS9nZXRDb21wdXRlZFN0eWxlLWRldGFjaGVkLXN1YnRyZWUtZXhwZWN0ZWQu
dHh0CisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2Nzcy9jc3NvbS9nZXRDb21wdXRlZFN0eWxlLWRldGFjaGVkLXN1YnRyZWUtZXhw
ZWN0ZWQudHh0CkBAIC0xLDggKzEsOCBAQAogCiBQQVNTIGdldENvbXB1dGVkU3R5bGUgcmV0dXJu
cyBubyBzdHlsZSBmb3IgZGV0YWNoZWQgZWxlbWVudAotRkFJTCBnZXRDb21wdXRlZFN0eWxlIHJl
dHVybnMgbm8gc3R5bGUgZm9yIGVsZW1lbnQgaW4gbm9uLXJlbmRlcmVkIGlmcmFtZSAoZGlzcGxh
eTogbm9uZSkgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDM5OQotRkFJTCBnZXRD
b21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIGVsZW1lbnQgaW4gbm9uLXJlbmRlcmVk
IGlmcmFtZSAoZGlzcGxheTogbm9uZSkgZnJvbSBpZnJhbWUncyB3aW5kb3cgYXNzZXJ0X2VxdWFs
czogZXhwZWN0ZWQgMCBidXQgZ290IDM5OQotRkFJTCBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMg
bm8gc3R5bGUgZm9yIGVsZW1lbnQgb3V0c2lkZSB0aGUgZmxhdCB0cmVlIGFzc2VydF9lcXVhbHM6
IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTkKLUZBSUwgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5v
IHN0eWxlIGZvciBkZXNjZW5kYW50IG91dHNpZGUgdGhlIGZsYXQgdHJlZSBhc3NlcnRfZXF1YWxz
OiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk5CitGQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBu
byBzdHlsZSBmb3IgZWxlbWVudCBpbiBub24tcmVuZGVyZWQgaWZyYW1lIChkaXNwbGF5OiBub25l
KSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk4CitGQUlMIGdldENvbXB1dGVk
U3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBpbiBub24tcmVuZGVyZWQgaWZyYW1l
IChkaXNwbGF5OiBub25lKSBmcm9tIGlmcmFtZSdzIHdpbmRvdyBhc3NlcnRfZXF1YWxzOiBleHBl
Y3RlZCAwIGJ1dCBnb3QgMzk4CitGQUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHls
ZSBmb3IgZWxlbWVudCBvdXRzaWRlIHRoZSBmbGF0IHRyZWUgYXNzZXJ0X2VxdWFsczogZXhwZWN0
ZWQgMCBidXQgZ290IDM5OAorRkFJTCBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUg
Zm9yIGRlc2NlbmRhbnQgb3V0c2lkZSB0aGUgZmxhdCB0cmVlIGFzc2VydF9lcXVhbHM6IGV4cGVj
dGVkIDAgYnV0IGdvdCAzOTgKIFBBU1MgZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIG5vIHN0eWxl
IGZvciBzaGFkb3cgdHJlZSBvdXRzaWRlIG9mIGZsYXR0ZW5lZCB0cmVlCiAKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL3BsYXRmb3JtL3dwZS9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2Nzcy9jc3MtY2FzY2FkZS9hbGwtcHJvcC1pbml0aWFsLXhtbC1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9wbGF0Zm9ybS93cGUvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mv
Y3NzLWNhc2NhZGUvYWxsLXByb3AtaW5pdGlhbC14bWwtZXhwZWN0ZWQudHh0CmluZGV4IDhlMmQw
MTExZmExMTg2MGEzNTA0MDk0NDBiNDc1NGViNGEyNDE0M2UuLjkzOTU2MzJiOTkxOGY2YTM5MDkz
OTA0YjAyYWVkZjFmOGY5OTNhNDcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3dw
ZS9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY2FzY2FkZS9hbGwtcHJv
cC1pbml0aWFsLXhtbC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd3Bl
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jYXNjYWRlL2FsbC1wcm9w
LWluaXRpYWwteG1sLWV4cGVjdGVkLnR4dApAQCAtMzM5LDcgKzMzOSw2IEBAIFBBU1MgLXdlYmtp
dC1iYWNrZ3JvdW5kLWNsaXAKIFBBU1MgLXdlYmtpdC1iYWNrZ3JvdW5kLW9yaWdpbgogUEFTUyAt
d2Via2l0LWJhY2tncm91bmQtc2l6ZQogUEFTUyAtd2Via2l0LWJvcmRlci1ob3Jpem9udGFsLXNw
YWNpbmcKLVBBU1MgLXdlYmtpdC1ib3JkZXItaW1hZ2UKIFBBU1MgLXdlYmtpdC1ib3JkZXItdmVy
dGljYWwtc3BhY2luZwogUEFTUyAtd2Via2l0LWJveC1hbGlnbgogUEFTUyAtd2Via2l0LWJveC1k
ZWNvcmF0aW9uLWJyZWFrCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93cGUvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nzb20vZ2V0Q29tcHV0ZWRTdHlsZS1k
ZXRhY2hlZC1zdWJ0cmVlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3dwZS9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS9nZXRDb21wdXRlZFN0eWxl
LWRldGFjaGVkLXN1YnRyZWUtZXhwZWN0ZWQudHh0CmluZGV4IDY4MzdlYTI2ZmZkZDg3NGE5ZWNl
MjI0NTk5ZGM5ZDU4ZTA4NmRiYzQuLjg4N2NhNmM5MTlkZTNhMGFlMDBhN2Q3NWM2Nzc4M2VhZTFi
NWFkNDAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3dwZS9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS9nZXRDb21wdXRlZFN0eWxlLWRldGFjaGVkLXN1
YnRyZWUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3dwZS9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS9nZXRDb21wdXRlZFN0eWxlLWRldGFj
aGVkLXN1YnRyZWUtZXhwZWN0ZWQudHh0CkBAIC0xLDggKzEsOCBAQAogCiBQQVNTIGdldENvbXB1
dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZGV0YWNoZWQgZWxlbWVudAotRkFJTCBnZXRD
b21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIGVsZW1lbnQgaW4gbm9uLXJlbmRlcmVk
IGlmcmFtZSAoZGlzcGxheTogbm9uZSkgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290
IDM5NAotRkFJTCBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIGVsZW1lbnQg
aW4gbm9uLXJlbmRlcmVkIGlmcmFtZSAoZGlzcGxheTogbm9uZSkgZnJvbSBpZnJhbWUncyB3aW5k
b3cgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDM5NAotRkFJTCBnZXRDb21wdXRl
ZFN0eWxlIHJldHVybnMgbm8gc3R5bGUgZm9yIGVsZW1lbnQgb3V0c2lkZSB0aGUgZmxhdCB0cmVl
IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTQKLUZBSUwgZ2V0Q29tcHV0ZWRT
dHlsZSByZXR1cm5zIG5vIHN0eWxlIGZvciBkZXNjZW5kYW50IG91dHNpZGUgdGhlIGZsYXQgdHJl
ZSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzk0CitGQUlMIGdldENvbXB1dGVk
U3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBpbiBub24tcmVuZGVyZWQgaWZyYW1l
IChkaXNwbGF5OiBub25lKSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzkzCitG
QUlMIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBpbiBub24t
cmVuZGVyZWQgaWZyYW1lIChkaXNwbGF5OiBub25lKSBmcm9tIGlmcmFtZSdzIHdpbmRvdyBhc3Nl
cnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMzkzCitGQUlMIGdldENvbXB1dGVkU3R5bGUg
cmV0dXJucyBubyBzdHlsZSBmb3IgZWxlbWVudCBvdXRzaWRlIHRoZSBmbGF0IHRyZWUgYXNzZXJ0
X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDM5MworRkFJTCBnZXRDb21wdXRlZFN0eWxlIHJl
dHVybnMgbm8gc3R5bGUgZm9yIGRlc2NlbmRhbnQgb3V0c2lkZSB0aGUgZmxhdCB0cmVlIGFzc2Vy
dF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAzOTMKIFBBU1MgZ2V0Q29tcHV0ZWRTdHlsZSBy
ZXR1cm5zIG5vIHN0eWxlIGZvciBzaGFkb3cgdHJlZSBvdXRzaWRlIG9mIGZsYXR0ZW5lZCB0cmVl
CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N2Zy9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS1iYXNp
Yy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9zdmcvY3NzL2dldENvbXB1dGVkU3R5bGUtYmFz
aWMtZXhwZWN0ZWQudHh0CmluZGV4IDNmZTc3OGZjMDRkNWM2MDFmN2MwMzc2YmYzZTFmNjkyYmI4
ODQ0Y2UuLmM1NjQyODk5ZDYwN2EzNmQxNzk0YmFmZjliZmVlY2Y1MjUwMWRmMjUgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL3N2Zy9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS1iYXNpYy1leHBlY3RlZC50
eHQKKysrIGIvTGF5b3V0VGVzdHMvc3ZnL2Nzcy9nZXRDb21wdXRlZFN0eWxlLWJhc2ljLWV4cGVj
dGVkLnR4dApAQCAtNDE4LDggKzQxOCw2IEBAIHJlY3Q6IHN0eWxlLmdldFByb3BlcnR5VmFsdWUo
LXdlYmtpdC1iYWNrZ3JvdW5kLXNpemUpIDogYXV0bwogcmVjdDogc3R5bGUuZ2V0UHJvcGVydHlD
U1NWYWx1ZSgtd2Via2l0LWJhY2tncm91bmQtc2l6ZSkgOiBbb2JqZWN0IENTU1ByaW1pdGl2ZVZh
bHVlXQogcmVjdDogc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgtd2Via2l0LWJvcmRlci1ob3Jpem9u
dGFsLXNwYWNpbmcpIDogMHB4CiByZWN0OiBzdHlsZS5nZXRQcm9wZXJ0eUNTU1ZhbHVlKC13ZWJr
aXQtYm9yZGVyLWhvcml6b250YWwtc3BhY2luZykgOiBbb2JqZWN0IENTU1ByaW1pdGl2ZVZhbHVl
XQotcmVjdDogc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgtd2Via2l0LWJvcmRlci1pbWFnZSkgOiBu
b25lCi1yZWN0OiBzdHlsZS5nZXRQcm9wZXJ0eUNTU1ZhbHVlKC13ZWJraXQtYm9yZGVyLWltYWdl
KSA6IFtvYmplY3QgQ1NTUHJpbWl0aXZlVmFsdWVdCiByZWN0OiBzdHlsZS5nZXRQcm9wZXJ0eVZh
bHVlKC13ZWJraXQtYm9yZGVyLXZlcnRpY2FsLXNwYWNpbmcpIDogMHB4CiByZWN0OiBzdHlsZS5n
ZXRQcm9wZXJ0eUNTU1ZhbHVlKC13ZWJraXQtYm9yZGVyLXZlcnRpY2FsLXNwYWNpbmcpIDogW29i
amVjdCBDU1NQcmltaXRpdmVWYWx1ZV0KIHJlY3Q6IHN0eWxlLmdldFByb3BlcnR5VmFsdWUoLXdl
YmtpdC1ib3gtYWxpZ24pIDogc3RyZXRjaApAQCAtOTM0LDggKzkzMiw2IEBAIGc6IHN0eWxlLmdl
dFByb3BlcnR5VmFsdWUoLXdlYmtpdC1iYWNrZ3JvdW5kLXNpemUpIDogYXV0bwogZzogc3R5bGUu
Z2V0UHJvcGVydHlDU1NWYWx1ZSgtd2Via2l0LWJhY2tncm91bmQtc2l6ZSkgOiBbb2JqZWN0IENT
U1ByaW1pdGl2ZVZhbHVlXQogZzogc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgtd2Via2l0LWJvcmRl
ci1ob3Jpem9udGFsLXNwYWNpbmcpIDogMHB4CiBnOiBzdHlsZS5nZXRQcm9wZXJ0eUNTU1ZhbHVl
KC13ZWJraXQtYm9yZGVyLWhvcml6b250YWwtc3BhY2luZykgOiBbb2JqZWN0IENTU1ByaW1pdGl2
ZVZhbHVlXQotZzogc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgtd2Via2l0LWJvcmRlci1pbWFnZSkg
OiBub25lCi1nOiBzdHlsZS5nZXRQcm9wZXJ0eUNTU1ZhbHVlKC13ZWJraXQtYm9yZGVyLWltYWdl
KSA6IFtvYmplY3QgQ1NTUHJpbWl0aXZlVmFsdWVdCiBnOiBzdHlsZS5nZXRQcm9wZXJ0eVZhbHVl
KC13ZWJraXQtYm9yZGVyLXZlcnRpY2FsLXNwYWNpbmcpIDogMHB4CiBnOiBzdHlsZS5nZXRQcm9w
ZXJ0eUNTU1ZhbHVlKC13ZWJraXQtYm9yZGVyLXZlcnRpY2FsLXNwYWNpbmcpIDogW29iamVjdCBD
U1NQcmltaXRpdmVWYWx1ZV0KIGc6IHN0eWxlLmdldFByb3BlcnR5VmFsdWUoLXdlYmtpdC1ib3gt
YWxpZ24pIDogc3RyZXRjaAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>